<?xml version="1.0" encoding="UTF-8"?>
<otherdata xmlns="http://linux.duke.edu/metadata/other" packages="41835">
<package pkgid="97ee9b493d37f4a92cc4c4a6024cd52cbe04bb795cc7d15a79951840a852396094ec5fdbda09c6976dda03ede649b527eb1adec50ccadb0a15da1dd18988bb00" name="0ad" arch="src">
  <version epoch="0" ver="0.0.26" rel="6.0.2.1.sr20241103"/>
  <changelog author="Ferdinand Thiessen &lt;rpm@fthiessen.de&gt;" date="1615291200">- Update to version 0.0.24b:
  * See https://play0ad.com/new-release-0-a-d-alpha-24-xsayarsa/
  * Added upstream mozjs-rust_1_50.patch for Factory
- Dropped upstream merged patches:
  * 0001-fix-fcollada-error.patch
  * 0001-Fix-ODR-violation-for-ShaderModelRendererInternals.patch</changelog>
  <changelog author="Ferdinand Thiessen &lt;rpm@fthiessen.de&gt;" date="1617969600">- Install bundled mozjs if needed (boo#1184063)</changelog>
  <changelog author="Guillaume GARDET &lt;guillaume.gardet@opensuse.org&gt;" date="1619438400">- Enable nvidia-texture-tools only on supported archs</changelog>
  <changelog author="Guillaume GARDET &lt;guillaume.gardet@opensuse.org&gt;" date="1619524800">- BuildRequires nvidia-texture-tools only when needed</changelog>
  <changelog author="Simon Puchert &lt;simonpuchert@alice.de&gt;" date="1629115200">- Update to version 0.0.25:
  * See https://play0ad.com/new-release-0-a-d-alpha-25-yauna/
- Dropped mozjs-rust_1_50.patch, merged upstream</changelog>
  <changelog author="ecsos &lt;ecsos@opensuse.org&gt;" date="1630238400">- Update to version 0.0.25b:
  * Ranked matches did not longer grant points in the lobby.
  * Mod installation no longer require restart.
  * Mod installation no longer prints errors when installing mods by double-clicking
  * Mod installation now overwrites the existing mods to allow for easier updates.
  * Fishes are now easier to spot on lowest settings with the addition of seagulls.
  * See https://wildfiregames.com/forum/topic/53714-re-release-of-0-ad-alpha-25-yauna/
- Increase disk size in _constraints to fix build error
  "No space left on device" in Leap.</changelog>
  <changelog author="Simon Puchert &lt;simonpuchert@alice.de&gt;" date="1641556800">- Make 0ad compatible with Tumbleweed's version of mozjs78:
  * no-version-check.patch: Disable the minor version check. This
    is required for a successful build using mozjs78 &gt; 78.6.0.
  * PrepareZoneForGC.patch: This function got an additional
    parameter, change its usage accordingly. (boo#1187732)</changelog>
  <changelog author="Simon Puchert &lt;simonpuchert@alice.de&gt;" date="1641902400">- Get rid of Python 2 dependency.
- Disable tests. These require Python 2 to work, but also aren't
  executed or packaged anyway.
- Remove duplicate listing of %{_libdir}/%{name}.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1645358400">- Add glibc-2.35.patch: Fix build with glibc 2.35.
- Use system mozjs on Leap 15.4 as well.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1647000000">- Do not build on i586.</changelog>
  <changelog author="Bernhard Wiedemann &lt;bwiedemann@suse.com&gt;" date="1647172800">- Add fix-i586-build.patch to fix build on i586</changelog>
  <changelog author="Bernhard Wiedemann &lt;bwiedemann@suse.com&gt;" date="1648036800">- Drop fix-i586-build.patch after boo#1197065 was fixed</changelog>
  <changelog author="Berthold Gunreben &lt;azouhr@opensuse.org&gt;" date="1656244800">- s390x CPU not implemented.
  ExcludeArch: s390x</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1660132800">- Fix rpmlint by adding premake-no-automatic-rpath.patch: don't let
  premake automatically add RPATHs, these are unnecessary.
- Add distribution default link flags, especially -Wl,-z,now.</changelog>
  <changelog author="C J &lt;c.j@tuta.io&gt;" date="1664193600">- Update to 0.0.26
- Remove obsolete glibc-2.35.patch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1679745600">- Add fix-gcc13-build.patch to fix build with GCC 13.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1701777600">- Add fix-fmt10-build.patch to fix build with libfmt 10.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1709899200">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1714046400">- Add fix-boost-1.85-build.patch to fix build with boost 1.85.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1732276800">- Add 0ad-link-icu-76.patch: Fix build against ICU 76.x.</changelog>
</package>
<package pkgid="e3373d520347ad12d04a6180196340485e03245c8cadb06d9b882c349b90c2aadaf2110dcd09dea3206bf3e51d54360771975b5e1eb0e4aa5e389f4e558e4e7c" name="0ad" arch="x86_64">
  <version epoch="0" ver="0.0.26" rel="6.0.2.1.sr20241103"/>
  <changelog author="Ferdinand Thiessen &lt;rpm@fthiessen.de&gt;" date="1615291200">- Update to version 0.0.24b:
  * See https://play0ad.com/new-release-0-a-d-alpha-24-xsayarsa/
  * Added upstream mozjs-rust_1_50.patch for Factory
- Dropped upstream merged patches:
  * 0001-fix-fcollada-error.patch
  * 0001-Fix-ODR-violation-for-ShaderModelRendererInternals.patch</changelog>
  <changelog author="Ferdinand Thiessen &lt;rpm@fthiessen.de&gt;" date="1617969600">- Install bundled mozjs if needed (boo#1184063)</changelog>
  <changelog author="Guillaume GARDET &lt;guillaume.gardet@opensuse.org&gt;" date="1619438400">- Enable nvidia-texture-tools only on supported archs</changelog>
  <changelog author="Guillaume GARDET &lt;guillaume.gardet@opensuse.org&gt;" date="1619524800">- BuildRequires nvidia-texture-tools only when needed</changelog>
  <changelog author="Simon Puchert &lt;simonpuchert@alice.de&gt;" date="1629115200">- Update to version 0.0.25:
  * See https://play0ad.com/new-release-0-a-d-alpha-25-yauna/
- Dropped mozjs-rust_1_50.patch, merged upstream</changelog>
  <changelog author="ecsos &lt;ecsos@opensuse.org&gt;" date="1630238400">- Update to version 0.0.25b:
  * Ranked matches did not longer grant points in the lobby.
  * Mod installation no longer require restart.
  * Mod installation no longer prints errors when installing mods by double-clicking
  * Mod installation now overwrites the existing mods to allow for easier updates.
  * Fishes are now easier to spot on lowest settings with the addition of seagulls.
  * See https://wildfiregames.com/forum/topic/53714-re-release-of-0-ad-alpha-25-yauna/
- Increase disk size in _constraints to fix build error
  "No space left on device" in Leap.</changelog>
  <changelog author="Simon Puchert &lt;simonpuchert@alice.de&gt;" date="1641556800">- Make 0ad compatible with Tumbleweed's version of mozjs78:
  * no-version-check.patch: Disable the minor version check. This
    is required for a successful build using mozjs78 &gt; 78.6.0.
  * PrepareZoneForGC.patch: This function got an additional
    parameter, change its usage accordingly. (boo#1187732)</changelog>
  <changelog author="Simon Puchert &lt;simonpuchert@alice.de&gt;" date="1641902400">- Get rid of Python 2 dependency.
- Disable tests. These require Python 2 to work, but also aren't
  executed or packaged anyway.
- Remove duplicate listing of %{_libdir}/%{name}.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1645358400">- Add glibc-2.35.patch: Fix build with glibc 2.35.
- Use system mozjs on Leap 15.4 as well.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1647000000">- Do not build on i586.</changelog>
  <changelog author="Bernhard Wiedemann &lt;bwiedemann@suse.com&gt;" date="1647172800">- Add fix-i586-build.patch to fix build on i586</changelog>
  <changelog author="Bernhard Wiedemann &lt;bwiedemann@suse.com&gt;" date="1648036800">- Drop fix-i586-build.patch after boo#1197065 was fixed</changelog>
  <changelog author="Berthold Gunreben &lt;azouhr@opensuse.org&gt;" date="1656244800">- s390x CPU not implemented.
  ExcludeArch: s390x</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1660132800">- Fix rpmlint by adding premake-no-automatic-rpath.patch: don't let
  premake automatically add RPATHs, these are unnecessary.
- Add distribution default link flags, especially -Wl,-z,now.</changelog>
  <changelog author="C J &lt;c.j@tuta.io&gt;" date="1664193600">- Update to 0.0.26
- Remove obsolete glibc-2.35.patch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1679745600">- Add fix-gcc13-build.patch to fix build with GCC 13.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1701777600">- Add fix-fmt10-build.patch to fix build with libfmt 10.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1709899200">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1714046400">- Add fix-boost-1.85-build.patch to fix build with boost 1.85.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1732276800">- Add 0ad-link-icu-76.patch: Fix build against ICU 76.x.</changelog>
</package>
<package pkgid="56f077c23e596ef9424ad773aa8dd7329aeed120f422fd4c2d1255296780948112e37d9ed59ccee46e2c0d5b802938a298121072d75cb498e80235d80d067796" name="0ad-debuginfo" arch="x86_64">
  <version epoch="0" ver="0.0.26" rel="6.0.2.1.sr20241103"/>
  <changelog author="Ferdinand Thiessen &lt;rpm@fthiessen.de&gt;" date="1615291200">- Update to version 0.0.24b:
  * See https://play0ad.com/new-release-0-a-d-alpha-24-xsayarsa/
  * Added upstream mozjs-rust_1_50.patch for Factory
- Dropped upstream merged patches:
  * 0001-fix-fcollada-error.patch
  * 0001-Fix-ODR-violation-for-ShaderModelRendererInternals.patch</changelog>
  <changelog author="Ferdinand Thiessen &lt;rpm@fthiessen.de&gt;" date="1617969600">- Install bundled mozjs if needed (boo#1184063)</changelog>
  <changelog author="Guillaume GARDET &lt;guillaume.gardet@opensuse.org&gt;" date="1619438400">- Enable nvidia-texture-tools only on supported archs</changelog>
  <changelog author="Guillaume GARDET &lt;guillaume.gardet@opensuse.org&gt;" date="1619524800">- BuildRequires nvidia-texture-tools only when needed</changelog>
  <changelog author="Simon Puchert &lt;simonpuchert@alice.de&gt;" date="1629115200">- Update to version 0.0.25:
  * See https://play0ad.com/new-release-0-a-d-alpha-25-yauna/
- Dropped mozjs-rust_1_50.patch, merged upstream</changelog>
  <changelog author="ecsos &lt;ecsos@opensuse.org&gt;" date="1630238400">- Update to version 0.0.25b:
  * Ranked matches did not longer grant points in the lobby.
  * Mod installation no longer require restart.
  * Mod installation no longer prints errors when installing mods by double-clicking
  * Mod installation now overwrites the existing mods to allow for easier updates.
  * Fishes are now easier to spot on lowest settings with the addition of seagulls.
  * See https://wildfiregames.com/forum/topic/53714-re-release-of-0-ad-alpha-25-yauna/
- Increase disk size in _constraints to fix build error
  "No space left on device" in Leap.</changelog>
  <changelog author="Simon Puchert &lt;simonpuchert@alice.de&gt;" date="1641556800">- Make 0ad compatible with Tumbleweed's version of mozjs78:
  * no-version-check.patch: Disable the minor version check. This
    is required for a successful build using mozjs78 &gt; 78.6.0.
  * PrepareZoneForGC.patch: This function got an additional
    parameter, change its usage accordingly. (boo#1187732)</changelog>
  <changelog author="Simon Puchert &lt;simonpuchert@alice.de&gt;" date="1641902400">- Get rid of Python 2 dependency.
- Disable tests. These require Python 2 to work, but also aren't
  executed or packaged anyway.
- Remove duplicate listing of %{_libdir}/%{name}.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1645358400">- Add glibc-2.35.patch: Fix build with glibc 2.35.
- Use system mozjs on Leap 15.4 as well.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1647000000">- Do not build on i586.</changelog>
  <changelog author="Bernhard Wiedemann &lt;bwiedemann@suse.com&gt;" date="1647172800">- Add fix-i586-build.patch to fix build on i586</changelog>
  <changelog author="Bernhard Wiedemann &lt;bwiedemann@suse.com&gt;" date="1648036800">- Drop fix-i586-build.patch after boo#1197065 was fixed</changelog>
  <changelog author="Berthold Gunreben &lt;azouhr@opensuse.org&gt;" date="1656244800">- s390x CPU not implemented.
  ExcludeArch: s390x</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1660132800">- Fix rpmlint by adding premake-no-automatic-rpath.patch: don't let
  premake automatically add RPATHs, these are unnecessary.
- Add distribution default link flags, especially -Wl,-z,now.</changelog>
  <changelog author="C J &lt;c.j@tuta.io&gt;" date="1664193600">- Update to 0.0.26
- Remove obsolete glibc-2.35.patch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1679745600">- Add fix-gcc13-build.patch to fix build with GCC 13.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1701777600">- Add fix-fmt10-build.patch to fix build with libfmt 10.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1709899200">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1714046400">- Add fix-boost-1.85-build.patch to fix build with boost 1.85.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1732276800">- Add 0ad-link-icu-76.patch: Fix build against ICU 76.x.</changelog>
</package>
<package pkgid="1898e7143e5afddfb17fa2a6065ff51791566433663308833bfd4a3b08f727474357b08c5225dfb373b5e6732d47d2ca10a56a52ebc1e30e195d57b6ed0eb0c2" name="0ad-debugsource" arch="x86_64">
  <version epoch="0" ver="0.0.26" rel="6.0.2.1.sr20241103"/>
  <changelog author="Ferdinand Thiessen &lt;rpm@fthiessen.de&gt;" date="1615291200">- Update to version 0.0.24b:
  * See https://play0ad.com/new-release-0-a-d-alpha-24-xsayarsa/
  * Added upstream mozjs-rust_1_50.patch for Factory
- Dropped upstream merged patches:
  * 0001-fix-fcollada-error.patch
  * 0001-Fix-ODR-violation-for-ShaderModelRendererInternals.patch</changelog>
  <changelog author="Ferdinand Thiessen &lt;rpm@fthiessen.de&gt;" date="1617969600">- Install bundled mozjs if needed (boo#1184063)</changelog>
  <changelog author="Guillaume GARDET &lt;guillaume.gardet@opensuse.org&gt;" date="1619438400">- Enable nvidia-texture-tools only on supported archs</changelog>
  <changelog author="Guillaume GARDET &lt;guillaume.gardet@opensuse.org&gt;" date="1619524800">- BuildRequires nvidia-texture-tools only when needed</changelog>
  <changelog author="Simon Puchert &lt;simonpuchert@alice.de&gt;" date="1629115200">- Update to version 0.0.25:
  * See https://play0ad.com/new-release-0-a-d-alpha-25-yauna/
- Dropped mozjs-rust_1_50.patch, merged upstream</changelog>
  <changelog author="ecsos &lt;ecsos@opensuse.org&gt;" date="1630238400">- Update to version 0.0.25b:
  * Ranked matches did not longer grant points in the lobby.
  * Mod installation no longer require restart.
  * Mod installation no longer prints errors when installing mods by double-clicking
  * Mod installation now overwrites the existing mods to allow for easier updates.
  * Fishes are now easier to spot on lowest settings with the addition of seagulls.
  * See https://wildfiregames.com/forum/topic/53714-re-release-of-0-ad-alpha-25-yauna/
- Increase disk size in _constraints to fix build error
  "No space left on device" in Leap.</changelog>
  <changelog author="Simon Puchert &lt;simonpuchert@alice.de&gt;" date="1641556800">- Make 0ad compatible with Tumbleweed's version of mozjs78:
  * no-version-check.patch: Disable the minor version check. This
    is required for a successful build using mozjs78 &gt; 78.6.0.
  * PrepareZoneForGC.patch: This function got an additional
    parameter, change its usage accordingly. (boo#1187732)</changelog>
  <changelog author="Simon Puchert &lt;simonpuchert@alice.de&gt;" date="1641902400">- Get rid of Python 2 dependency.
- Disable tests. These require Python 2 to work, but also aren't
  executed or packaged anyway.
- Remove duplicate listing of %{_libdir}/%{name}.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1645358400">- Add glibc-2.35.patch: Fix build with glibc 2.35.
- Use system mozjs on Leap 15.4 as well.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1647000000">- Do not build on i586.</changelog>
  <changelog author="Bernhard Wiedemann &lt;bwiedemann@suse.com&gt;" date="1647172800">- Add fix-i586-build.patch to fix build on i586</changelog>
  <changelog author="Bernhard Wiedemann &lt;bwiedemann@suse.com&gt;" date="1648036800">- Drop fix-i586-build.patch after boo#1197065 was fixed</changelog>
  <changelog author="Berthold Gunreben &lt;azouhr@opensuse.org&gt;" date="1656244800">- s390x CPU not implemented.
  ExcludeArch: s390x</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1660132800">- Fix rpmlint by adding premake-no-automatic-rpath.patch: don't let
  premake automatically add RPATHs, these are unnecessary.
- Add distribution default link flags, especially -Wl,-z,now.</changelog>
  <changelog author="C J &lt;c.j@tuta.io&gt;" date="1664193600">- Update to 0.0.26
- Remove obsolete glibc-2.35.patch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1679745600">- Add fix-gcc13-build.patch to fix build with GCC 13.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1701777600">- Add fix-fmt10-build.patch to fix build with libfmt 10.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1709899200">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1714046400">- Add fix-boost-1.85-build.patch to fix build with boost 1.85.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1732276800">- Add 0ad-link-icu-76.patch: Fix build against ICU 76.x.</changelog>
</package>
<package pkgid="da31c22e98a0221093dc8c4dfb772b67dd3f264b4567888874fa829ad18d4e1dad5eab301b657f52944db8056e2f1f3cc8d1020d2a13e2acd9135cb58501fd26" name="389-ds" arch="src">
  <version epoch="0" ver="3.1.1~git13.a9c7ff9" rel="2.0.2.1.sr20241103"/>
  <changelog author="William Brown &lt;william.brown@suse.com&gt;" date="1660132800">- Update _constraints due to random build failures caused by OBS environmental
  issues that aren't out fault. (out of disk, systemic builder issues).
- Add debugging about the environment to assist with OBS randomly failing
  in the future.</changelog>
  <changelog author="william.brown@suse.com" date="1662552000">- Update to version 2.3.0~git0.3db81913e:
  * Bump version to 2.3.0
  * Issue 5012 - Migrate pcre to pcre2 - remove match limit
  * Update CI tests
  * Issue 5356 - Make Rust non-optional and update default password storage scheme
  * Issue 5012 - Migrate pcre to pcre2
  * Issue 5428 - Fix regression with nscpEntryWsi computation
  * Fix missing 'not' in description (closes #5423) (#5424)
  * Issue 5421 - CI - makes replication/acceptance_test.py::test_modify_entry more robust (#5422)
  * Issue 3903 - fix repl keep alive event interval
  * Issue 5418 - Sync_repl may crash while managing invalid cookie (#5420)</changelog>
  <changelog author="william.brown@suse.com" date="1666353600">- Update to version 2.3.0~git22.8fedec0:
  * Issue 5495 - RFE - skip dds during migration. (#5496)
  * Issue 5491 - UI - Add rework and finish jpegPhoto functionality (#5492)
  * Issue 5368 - Retro Changelog trimming does not work (#5486)
  * Issue 5487 - Fix various issues with logconv.pl
  * Issue 5476 - RFE - add memberUid read aci by default (#5477)
  * Issue 5482 - lib389 - Can not enable replication with a mixed case suffix
  * Issue 5478 - Random crash in connection code during server shutdown (#5479)
  * Issue 3061 - RFE - Add password policy debug log level
  * Issue 5302 - Release tarballs don't contain cockpit webapp
  * Issue 5262 - high contention in find_entry_internal_dn on mixed load (#5264)</changelog>
  <changelog author="william.brown@suse.com" date="1679486400">- Update to version 2.3.2~git44.5e4551e:
  * Issue 4812 - Listener thread does not scale with a high num of established connections (#5706)
  * Issue 4812 - Listener thread does not scale with a high num of established connections (#5681)
  * Bump webpack from 5.75.0 to 5.76.0 in /src/cockpit/389-console (#5699)
  * Issue 5598 - (3rd) In 2.x, SRCH throughput drops by 10% because of handling of referral (#5692)
  * Issue 5598 - (2nd) In 2.x, SRCH throughput drops by 10% because of handling of referral (#5691)
  * Issue 5687 - UI - sensitive information disclosure
  * Issue 5661 - LMDB hangs while Rebuilding the replication changelog RUV (#5676)
  * Issue 5554 - Add more tests to security_basic_test suite
  * Issue 4583 - Update specfile to skip checks of ASAN builds
  * Issue 4758 - Add tests for WebUI</changelog>
  <changelog author="william.brown@suse.com" date="1681214400">- bsc#1210027 - apply upstream fix for setuptools
- Update to version 2.3.2~git53.a01e230:
  * Issue 5705 - Add config parameter to close client conns on failed bind (#5712)
  * Issue 4758 - Add tests for WebUI
  * Issue 5643 - Memory leak in entryrdn during delete (#5717)
  * Issue 5714 - UI - fix typo, db settings, log settings, and LDAP editor paginations
  * Issue 5701 - CLI - Fix referral mode setting (#5708)
  * Bump openssl from 0.10.45 to 0.10.48 in /src (#5709)
  * Issue 5710 - subtree search statistics for index lookup does not report ancestorid/entryrdn lookups (#5711)
  * Issue 5697 - Obsolete nsslapd-ldapimaprootdn attribute (#5698)
  * Issue 1081 - Stop schema replication from overwriting x-origin
  * Issue 4812 - Listener thread does not scale with a high num of established connections (#5706)</changelog>
  <changelog author="pgajdos@suse.com" date="1681819200">- python-six is not required</changelog>
  <changelog author="william.brown@suse.com" date="1682510400">- Update to version 2.4.0~git0.87efeb2:
  * Bump version to 2.4.0
  * Issue 5156 - RFE that implement slapi_memberof (#5694)
  * Issue 5734 - RFE - Exclude pwdFailureTime and ContextCSN (#5735)
  * Issue 5726 - ns-slapd crashing in ldbm_back_upgradednformat (#5727)
  * Issue 4758 - Add tests for WebUI
  * Issue 5718 - Memory leak in connection table (#5719)
  * Issue 5705 - Add config parameter to close client conns on failed bind (#5712)
  * Issue 4758 - Add tests for WebUI
  * Issue 5643 - Memory leak in entryrdn during delete (#5717)
  * Issue 5714 - UI - fix typo, db settings, log settings, and LDAP editor paginations</changelog>
  <changelog author="william.brown@suse.com" date="1684929600">- Update to version 2.4.0~git18.37ec5cd:
  * Issue 5751 - Cleanallruv task crashes on consumer (#5775)
  * Bump version to 2.4.1
  * Issue 5770 - RFE - Extend Password Adminstrators to allow skipping password info updates
  * Issue 5768 - CLI/UI - cert checks are too strict, and other issues
  * Issue 5722 - fix compilation warnings (#5771)
  * Issue 5765 - Improve installer selinux handling
  * Issue 152 - RFE - Add support for LDAP alias entries
  * Issue 5052 - BUG - Custom filters prevented entry deletion (#5060)
  * Issue 5752 - RFE - Provide a history for LastLoginTime (#5753)
  * Issue 5722 - RFE When a filter contains 'nsrole', improve response time by rewriting the filter (#5723)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1691668800">- Update to version 2.4.0~git69.89c2de5:
  * Issue 4551 - Part 2 - Fix build warning of previous PR (#5888)
  * Issue 5834 - AccountPolicyPlugin erroring for some users (#5866)
  * Issue 5872 - part 2 - fix is_dbi regression (#5887)
  * Issue 4758 - Add tests for WebUI
  * Issue 5848 - dsconf should prevent setting the replicaID for hub and consumer roles (#5849)
  * Issue 5883 - Remove connection mutex contention risk on autobind (#5886)
  * Issue 5872 - `dbscan()` in lib389 can return bytes
  * Bump version to 2.4.3
  * Issue 5729 - Memory leak in factory_create_extension (#5814)
  * Issue 5870 - ns-slapd crashes at startup if a backend has no suffix (#5871)</changelog>
  <changelog author="william.brown@suse.com" date="1692014400">- Update to version 2.4.0~git74.4297d88:
  * issue 5890 part 2 - Need a tester for testing multiple listening thread feature (#5897)
  * Issue i5846 - Crash when lmdb import is aborted (#5881)
  * Issue 5894 - lmdb import error fails with Could not store the entry (#5895)
  * Issue 5890 - Need a tester for testing multiple listening thread feature (#5891)
  * Issue 5082 - slugify: ModuleNotFoundError when running test cases</changelog>
  <changelog author="william.brown@suse.com" date="1701259200">- Update to version 2.4.0~git113.84a845c:
  * Issue 5980 - Improve instance startup failure handling (#5991)
  * Issue 5976 - Fix freeipa install regression with lmdb (#5977)
  * Issue 5984 - Crash when paged result search are abandoned - fix2 (#5987)
  * Issue 5984 - Crash when paged result search are abandoned (#5985)
  * Issue 5947 - CI test_vlv_recreation_reindex fails on LMDB (#5979)
  * Bump version to 2.5.0
  * Issue 5971 - CLI - Fix password prompt for repl status (#5972)
  * Issue 5973 - Fix fedora cop RawHide builds (#5974)
  * Revert "Issue 5761 - Worker thread dynamic management (#5796)" (#5970)
  * Issue 5966 - CLI - Custom schema object is removed on a failed edit (#5967)
  * Issue 5786 - Update permissions for Release workflow
  * Issue 5960 - Subpackages should have more strict interdependencies
  * Issue 3555 - UI - Fix audit issue with npm - babel/traverse (#5959)
  * Issue 4843 - Fix dscreate create-template issue (#5950)
  * bugfix for --passwd-file not working on latest version (#5934)
  * Issue 5843 - dsconf / dscreate should be able to handle lmdb parameters (#5943)
  * Bump postcss from 8.4.24 to 8.4.31 in /src/cockpit/389-console (#5945)
  * Issue 5938 - Attribute Names changed to lowercase after adding the Attributes (#5940)
  * issue 5924 - ASAN server build crash when looping opening/closing connections (#5926)
  * Issue 1925 - Add a CI test (#5936)
  * Issue 5732 - Localizing Cockpit's 389ds Plugin using CockpitPoPlugin (#5764)
  * Issue 1870 - Add a CI test (#5929)
  * Issue 843 - Add a warning to slapi_valueset_add_value_ext (#5925)
  * Issue 5761 - Worker thread dynamic management (#5796)
  * Issue 1802 - Improve ldclt man page (#5928)
  * Issue 1456 - Add a CI test that verifies there is no issue (#5927)
  * Issue 1317 - Add a CI test (#5923)
  * Issue 1081 - CI - Add more tests for overwriting x-origin issue (#5815)
  * Issue 1115 - Add a CI test (#5913)
  * Issue 5848 - Fix condition and add a CI test (#5916)
  * Issue 5848 - Fix condition and add a CI test (#5916)
  * Issue 5914 - UI - server settings page validation improvements and db index fixes
  * Issue 5909 - Multi listener hang with 20k connections (#5917)
  * Issue 5902 - Fix previous commit regression (#5919)
  * pass instance correctly to ds_is_older (#5903)
  * Issue 5909 - Multi listener hang with 20k connections (#5910)
  * Issue 5722 - improve testcase (#5904)
  * Issue 5203 - outdated version in provided metadata for lib389
  * Bug Description:</changelog>
  <changelog author="William Brown &lt;william.brown@suse.com&gt;" date="1702468800">- Update to support newer obs-service-cargo-vendor</changelog>
  <changelog author="william.brown@suse.com" date="1705492800">- Update to version 2.4.0~git126.5936946:
  * Issue 6028 - vlv index keys inconsistencies (#6031)
  * Issue 5989 - RFE support of inChain Matching Rule (#5990)
  * Issue 6022 - lmdb inconsistency between vlv index and vlv cache names (#6026)
  * Issue 6015 - Fix typo remeber (#6014)
  * Issue 6016 - Pin upload/download artifacts action to v3
  * Issue 5939 - During an update, if the target entry is reverted in the entry cache, the server should not retry to lock it (#6007)
  * Issue 4673 - Update Rust crates
  * Issue 6004 - idletimeout may be ignored (#6005)
  * Issue 5954 - Disable Transparent Huge Pages
  * Issue 5997 - test_inactivty_and_expiration CI testcase is wrong (#5999)
  * Issue 5993 - Fix several race condition around CI tests (#5996)
  * Issue 5944 - Reversion of the entry cache should be limited to BETXN plugin failures (#5994)
  * Bump openssl from 0.10.55 to 0.10.60 in /src (#5995)</changelog>
  <changelog author="william.brown@suse.com" date="1706875200">- Update to version 3.0.1~git1.1f95b57:
  * Issue 6061 - Certificate lifetime displayed as NaN
  * Bump version to 3.0.1
  * Issue 6043, 6044 - Enhance Rust and JS bundling and add SPDX licenses for both (#6045)
  * Issue 3555 - Remove audit-ci from dependencies (#6056)
  * Issue 6052 - Paged results test sets hostname to `localhost` on test collection
  * Issue 6051 - Drop unused pytest markers
  * Issue 6049 - lmdb - changelog is wrongly recreated by reindex task (#6050)
  * Issue 6047 - Add a check for tagged commits
  * Issue 6041 - dscreate ds-root - accepts relative path (#6042)
  * Switch default backend to lmdb and bump version to 3.0 (#6013)
  * Issue 6032 - Replication broken after backup restore (#6035)
  * Issue 6037 - Server crash at startup in vlvIndex_delete (#6038)
  * Issue 6034 - Change replica_id from str to int</changelog>
  <changelog author="william.brown@suse.com" date="1713873600">- Update to version 3.0.1~git37.55529d1:
  * Issue 6082 - Remove explicit dependencies toward libdb - revert default (#6145)
  * Issue 6141 - freeipa test_topology_TestCASpecificRUVs is failing (#6144)
  * Issue 6142 - [RFE] Add LMDB configuration related checks into Healthcheck tool (#6143)
  * Issue 6136 - failure in freeipa tests (#6137)
  * Issue 6133 - Move slapi_pblock_set_flag_operation_notes() to slapi-plugin.h
  * Issue 5105 - lmdb - Cannot create entries with long rdn - fix covscan (#6131)
  * Issue i6057 - Fix3 - Fix covscan issues (#6127)
  * Issue 6105 - lmdb - Cannot create entries with long rdn (#6130)
  * Issue 6125 - dscreate interactive fails when chosing mdb backend (#6126)
  * Issue 6080 - ns-slapd crash in referint_get_config (#6081)
  * Issue 6110 - Typo in Account Policy plugin message
  * Issue 6057 - vlv search may result wrong result with lmdb - Fix 2 (#6121)
  * Issue 6119 - Synchronise accept_thread with slapd_daemon (#6120)
  * Issue 6117 - Fix the UTC offset print (#6118)
  * Issue 6112 - RFE - add new operation note for MFA authentications
  * Issue 5842 - Add log buffering to audit log
  * Issue 5305 - OpenLDAP version autodetection doesn't work
  * Issue 3527 - Support HAProxy and Instance on the same machine configuration (#6107)
  * Issue 6057 - vlv search may result wrong result with lmdb (#6091)
  * Issue 6103 - New connection timeout error breaks errormap (#6104)
  * Issue 6086 - Ambiguous warning about SELinux in dscreate for non-root user
  * Issue 6092 - passwordHistory is not updated with a pre-hashed password (#6093)
  * Issue 6067 - Improve dsidm CLI No Such Entry handling (#6079)
  * Issue 6096 - Improve connection timeout error logging (#6097)
  * Issue 5647 - covscan: memory leak in audit log when adding entries
  * Issue 6094 - Add coverity scan workflow
  * Issue 6067 - Add hidden -v and -j options to each CLI subcommand (#6088)
  * Issue 5487 - Fix various isses with logconv.pl (#6085)
  * Issue 5962 - Rearrange includes for 32-bit support logic
  * Issue 6046 - Make dscreate to work during kickstart installations
  * Issue 6082 - Remove explicit dependencies toward libdb (#6083)
  * Issue 6073 - Improve error log when running out of memory (#6084)
  * Issue 6071 - Instance creation/removal is slow
  * Issue 6010 - 389 ds ignores nsslapd-maxdescriptors (#6027)
  * Issue 6075 - Ignore build artifacts (#6076)
  * Issue 6068 - Add dscontainer stop function</changelog>
  <changelog author="william.brown@suse.com" date="1715688000">- Update to version 3.0.1~git39.e24615f:
  * Issue 6142 - Fix CI tests (#6161)
  * Issue 6157 - Cockipt crashes when getting replication status if topology contains an old 389ds version (#6158)</changelog>
  <changelog author="william.brown@suse.com" date="1722427200">- Update to version 3.1.1~git0.aef1668:
  * Bump version to 3.1.1
  * Issue 6256 - nsslapd-numlisteners limit is not enforced (#6257)
  * Issue 5327 - Fix test metadata
  * Security fix for CVE-2024-6237
  * Security fix for CVE-2024-5953
  * Security fix for CVE-2024-3657
  * Security fix for CVE-2024-2199
  * Issue 6256 - nsslapd-numlisteners limit is not enforced
  * Issue 6265 - lmdb - missing entries in range searches (#6266)
  * Issue 5853 - Update Cargo.lock
  * Bump openssl from 0.10.64 to 0.10.66 in /src
  * Issue 6245 - Revert __COVERITY__ ifndef (#6268)
  * Issue 6248 - fix fanalyzer warnings (#6253)
  * Issue 6238 - Fix test_audit_json_logging CI test regression (#6264)
  * Issue 6254 - Enabling replication for a sub suffix crashes browser (#6255)
  * Issue 6155 - ldap-agent fails to start because of permission error (#6179)
  * Issue 6238 - RFE - add option to write audit log in JSON format
  * Issue 6216 - CI test_fast_slow_import sometime fail (#6247)
  * Issue 6245 - covscan fixes (#6246)
  * Issue 6241 - Add support for CRYPT-YESCRYPT (#6242)
  * Issue 6229 - After an initial failure, subsequent online backups fail (#6230)
  * Issue 6236 - rpm: fix compatibility with RPM 4.20
  * Issue 6227 - dsconf schema does not show inChain matching rule (#6228)
  * Issue 6233 - CI test wait_for_async_feature_test sometime fails (#6234)
  * Bump ws from 7.5.9 to 7.5.10 in /src/cockpit/389-console
  * Issue 6224 - d2entry - Could not open id2entry err 0 - at startup when having sub-suffixes (#6225)
  * Issue 6222 - CI test acl/test_timeofday_keyword sometime fails (#6223)
  * Issue 6120 - /usr/lib64/dirsrv/plugins/libback-bdb.so has an invalid-looking DT_RPATH: /usr/lib/dirsrv
  * Issue 5772 - ONE LEVEL search fails to return sub-suffixes (#6219)
  * Issue 6183 - Slow ldif2db import on a newly created BDB backend (#6208)
  * Issue 6207 - Random crash in test_long_rdn CI test (#6215)
  * Bump braces from 3.0.2 to 3.0.3 in /src/cockpit/389-console
  * Issue 6191 - Node.js 16 actions are deprecated
  * Issue 6199 - unprotected search query during certificate based authentication (#6205)
  * Issue 6200 - Disable WebUI CI tests
  * Issue 6192 - Test failure: test_match_large_valueset
  * Issue 6181 - RFE - Allow system to manage uid/gid at startup
  * Issue 6188 - Add nsslapd-haproxy-trusted-ip to cn=schema (#6201)
  * Issue 6181 - RFE - Allow system to manage uid/gid at startup (#6182)
  * Issue 6170 - audit log buffering doesn't handle large updates
  * Issue 6193 - Test failure: test_tls_command_returns_error_text
  * Issue 6177 - Spec file cleanup
  * Issue 6189 - CI tests fail with `[Errno 2] No such file or directory: '/var/cache/dnf/metadata_lock.pid'`
  * Issue 6175 - Referential integrity plugin - in referint_thread_func does not handle null from ldap_utf8strtok (#6168)
  * Change default salt sizes generated in crypt_pwd (#6185)
  * Issue 6123 - Allow DNA plugin to reuse global config for bind method and connection protocol (#6124)
  * Issue 6159 - Add a test to check URP add and delete conflict (#6160)
  * Issue 6151 - Use %bcond macro for conditional builds in the spec file
  * Issue 6172 - RFE: improve the performance of evaluation of filter component when tested against a large valueset (like group members) (#6173)
  * Bump version to 3.1.0
  * fix issue6165 (#6167)</changelog>
  <changelog author="Thorsten Kukuk &lt;kukuk@suse.com&gt;" date="1722600000">- dirsrv-user.conf: Remove explicit dirsrv group definition, it's
  already specified implicit with "u dirsrv" and not all tools like
  duplicate group entries.</changelog>
  <changelog author="william.brown@suse.com" date="1725451200">- bsc#1229948 - CVE-2024-43806 - rustix::fs::Dir iterator with the linux_raw backend can cause memory explosion
- Update to version 3.1.1~git13.a9c7ff9:
  * Issue 2472 - Add a CI test (#6314)
  * Issue 6276 - Schema lib389 object is not keeping custom schema data upon editing (#6279)
  * Issue 3555 - UI - Fix audit issue with npm - micromatch (#6310)
  * Issue 5843 - Fix size formatting in dscreate output and enhance tests (#6309)
  * Issue 6301 - Fix long delay when setting replication agreement with dsconf (#6303)
  * Issue 6280 - Changelog trims updates from a given RID even if a consumer has not received any of them (#6281)
  * Issue 6296 - basic_test.py::test_conn_limits fails in main branch (#6300)
  * Issue 6295 - test_password_modify_non_utf8 should set default password storage scheme
  * Issue 6294 - Nightly copr builds are failing
  * Issue 6288 - dsidm crash with account policy when alt-state-attr is disabled (#6292)
  * Issue 2324 - Add a CI test (#6289)
  * Issue 6284 - BUG - freelist ordering causes high wtime (#6285)
  * Issue 6282 - BUG - out of tree build fails (#6283)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1732190400">- Add 389-ds-link-icu-uc.patch: properly link to icu-uc as well,
  which is no longer transparently added when linking icu-i18n
  (boo#1233578).</changelog>
</package>
<package pkgid="6a424a409223a79dc95b83a52823c8d840aa3746cb5a5d68d657c93761b0de6ba3a3dd21fb91193a08b1c63439fbf14ed81697dcf07752d8081938a2de8b8d07" name="389-ds" arch="x86_64">
  <version epoch="0" ver="3.1.1~git13.a9c7ff9" rel="2.0.2.1.sr20241103"/>
  <changelog author="William Brown &lt;william.brown@suse.com&gt;" date="1660132800">- Update _constraints due to random build failures caused by OBS environmental
  issues that aren't out fault. (out of disk, systemic builder issues).
- Add debugging about the environment to assist with OBS randomly failing
  in the future.</changelog>
  <changelog author="william.brown@suse.com" date="1662552000">- Update to version 2.3.0~git0.3db81913e:
  * Bump version to 2.3.0
  * Issue 5012 - Migrate pcre to pcre2 - remove match limit
  * Update CI tests
  * Issue 5356 - Make Rust non-optional and update default password storage scheme
  * Issue 5012 - Migrate pcre to pcre2
  * Issue 5428 - Fix regression with nscpEntryWsi computation
  * Fix missing 'not' in description (closes #5423) (#5424)
  * Issue 5421 - CI - makes replication/acceptance_test.py::test_modify_entry more robust (#5422)
  * Issue 3903 - fix repl keep alive event interval
  * Issue 5418 - Sync_repl may crash while managing invalid cookie (#5420)</changelog>
  <changelog author="william.brown@suse.com" date="1666353600">- Update to version 2.3.0~git22.8fedec0:
  * Issue 5495 - RFE - skip dds during migration. (#5496)
  * Issue 5491 - UI - Add rework and finish jpegPhoto functionality (#5492)
  * Issue 5368 - Retro Changelog trimming does not work (#5486)
  * Issue 5487 - Fix various issues with logconv.pl
  * Issue 5476 - RFE - add memberUid read aci by default (#5477)
  * Issue 5482 - lib389 - Can not enable replication with a mixed case suffix
  * Issue 5478 - Random crash in connection code during server shutdown (#5479)
  * Issue 3061 - RFE - Add password policy debug log level
  * Issue 5302 - Release tarballs don't contain cockpit webapp
  * Issue 5262 - high contention in find_entry_internal_dn on mixed load (#5264)</changelog>
  <changelog author="william.brown@suse.com" date="1679486400">- Update to version 2.3.2~git44.5e4551e:
  * Issue 4812 - Listener thread does not scale with a high num of established connections (#5706)
  * Issue 4812 - Listener thread does not scale with a high num of established connections (#5681)
  * Bump webpack from 5.75.0 to 5.76.0 in /src/cockpit/389-console (#5699)
  * Issue 5598 - (3rd) In 2.x, SRCH throughput drops by 10% because of handling of referral (#5692)
  * Issue 5598 - (2nd) In 2.x, SRCH throughput drops by 10% because of handling of referral (#5691)
  * Issue 5687 - UI - sensitive information disclosure
  * Issue 5661 - LMDB hangs while Rebuilding the replication changelog RUV (#5676)
  * Issue 5554 - Add more tests to security_basic_test suite
  * Issue 4583 - Update specfile to skip checks of ASAN builds
  * Issue 4758 - Add tests for WebUI</changelog>
  <changelog author="william.brown@suse.com" date="1681214400">- bsc#1210027 - apply upstream fix for setuptools
- Update to version 2.3.2~git53.a01e230:
  * Issue 5705 - Add config parameter to close client conns on failed bind (#5712)
  * Issue 4758 - Add tests for WebUI
  * Issue 5643 - Memory leak in entryrdn during delete (#5717)
  * Issue 5714 - UI - fix typo, db settings, log settings, and LDAP editor paginations
  * Issue 5701 - CLI - Fix referral mode setting (#5708)
  * Bump openssl from 0.10.45 to 0.10.48 in /src (#5709)
  * Issue 5710 - subtree search statistics for index lookup does not report ancestorid/entryrdn lookups (#5711)
  * Issue 5697 - Obsolete nsslapd-ldapimaprootdn attribute (#5698)
  * Issue 1081 - Stop schema replication from overwriting x-origin
  * Issue 4812 - Listener thread does not scale with a high num of established connections (#5706)</changelog>
  <changelog author="pgajdos@suse.com" date="1681819200">- python-six is not required</changelog>
  <changelog author="william.brown@suse.com" date="1682510400">- Update to version 2.4.0~git0.87efeb2:
  * Bump version to 2.4.0
  * Issue 5156 - RFE that implement slapi_memberof (#5694)
  * Issue 5734 - RFE - Exclude pwdFailureTime and ContextCSN (#5735)
  * Issue 5726 - ns-slapd crashing in ldbm_back_upgradednformat (#5727)
  * Issue 4758 - Add tests for WebUI
  * Issue 5718 - Memory leak in connection table (#5719)
  * Issue 5705 - Add config parameter to close client conns on failed bind (#5712)
  * Issue 4758 - Add tests for WebUI
  * Issue 5643 - Memory leak in entryrdn during delete (#5717)
  * Issue 5714 - UI - fix typo, db settings, log settings, and LDAP editor paginations</changelog>
  <changelog author="william.brown@suse.com" date="1684929600">- Update to version 2.4.0~git18.37ec5cd:
  * Issue 5751 - Cleanallruv task crashes on consumer (#5775)
  * Bump version to 2.4.1
  * Issue 5770 - RFE - Extend Password Adminstrators to allow skipping password info updates
  * Issue 5768 - CLI/UI - cert checks are too strict, and other issues
  * Issue 5722 - fix compilation warnings (#5771)
  * Issue 5765 - Improve installer selinux handling
  * Issue 152 - RFE - Add support for LDAP alias entries
  * Issue 5052 - BUG - Custom filters prevented entry deletion (#5060)
  * Issue 5752 - RFE - Provide a history for LastLoginTime (#5753)
  * Issue 5722 - RFE When a filter contains 'nsrole', improve response time by rewriting the filter (#5723)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1691668800">- Update to version 2.4.0~git69.89c2de5:
  * Issue 4551 - Part 2 - Fix build warning of previous PR (#5888)
  * Issue 5834 - AccountPolicyPlugin erroring for some users (#5866)
  * Issue 5872 - part 2 - fix is_dbi regression (#5887)
  * Issue 4758 - Add tests for WebUI
  * Issue 5848 - dsconf should prevent setting the replicaID for hub and consumer roles (#5849)
  * Issue 5883 - Remove connection mutex contention risk on autobind (#5886)
  * Issue 5872 - `dbscan()` in lib389 can return bytes
  * Bump version to 2.4.3
  * Issue 5729 - Memory leak in factory_create_extension (#5814)
  * Issue 5870 - ns-slapd crashes at startup if a backend has no suffix (#5871)</changelog>
  <changelog author="william.brown@suse.com" date="1692014400">- Update to version 2.4.0~git74.4297d88:
  * issue 5890 part 2 - Need a tester for testing multiple listening thread feature (#5897)
  * Issue i5846 - Crash when lmdb import is aborted (#5881)
  * Issue 5894 - lmdb import error fails with Could not store the entry (#5895)
  * Issue 5890 - Need a tester for testing multiple listening thread feature (#5891)
  * Issue 5082 - slugify: ModuleNotFoundError when running test cases</changelog>
  <changelog author="william.brown@suse.com" date="1701259200">- Update to version 2.4.0~git113.84a845c:
  * Issue 5980 - Improve instance startup failure handling (#5991)
  * Issue 5976 - Fix freeipa install regression with lmdb (#5977)
  * Issue 5984 - Crash when paged result search are abandoned - fix2 (#5987)
  * Issue 5984 - Crash when paged result search are abandoned (#5985)
  * Issue 5947 - CI test_vlv_recreation_reindex fails on LMDB (#5979)
  * Bump version to 2.5.0
  * Issue 5971 - CLI - Fix password prompt for repl status (#5972)
  * Issue 5973 - Fix fedora cop RawHide builds (#5974)
  * Revert "Issue 5761 - Worker thread dynamic management (#5796)" (#5970)
  * Issue 5966 - CLI - Custom schema object is removed on a failed edit (#5967)
  * Issue 5786 - Update permissions for Release workflow
  * Issue 5960 - Subpackages should have more strict interdependencies
  * Issue 3555 - UI - Fix audit issue with npm - babel/traverse (#5959)
  * Issue 4843 - Fix dscreate create-template issue (#5950)
  * bugfix for --passwd-file not working on latest version (#5934)
  * Issue 5843 - dsconf / dscreate should be able to handle lmdb parameters (#5943)
  * Bump postcss from 8.4.24 to 8.4.31 in /src/cockpit/389-console (#5945)
  * Issue 5938 - Attribute Names changed to lowercase after adding the Attributes (#5940)
  * issue 5924 - ASAN server build crash when looping opening/closing connections (#5926)
  * Issue 1925 - Add a CI test (#5936)
  * Issue 5732 - Localizing Cockpit's 389ds Plugin using CockpitPoPlugin (#5764)
  * Issue 1870 - Add a CI test (#5929)
  * Issue 843 - Add a warning to slapi_valueset_add_value_ext (#5925)
  * Issue 5761 - Worker thread dynamic management (#5796)
  * Issue 1802 - Improve ldclt man page (#5928)
  * Issue 1456 - Add a CI test that verifies there is no issue (#5927)
  * Issue 1317 - Add a CI test (#5923)
  * Issue 1081 - CI - Add more tests for overwriting x-origin issue (#5815)
  * Issue 1115 - Add a CI test (#5913)
  * Issue 5848 - Fix condition and add a CI test (#5916)
  * Issue 5848 - Fix condition and add a CI test (#5916)
  * Issue 5914 - UI - server settings page validation improvements and db index fixes
  * Issue 5909 - Multi listener hang with 20k connections (#5917)
  * Issue 5902 - Fix previous commit regression (#5919)
  * pass instance correctly to ds_is_older (#5903)
  * Issue 5909 - Multi listener hang with 20k connections (#5910)
  * Issue 5722 - improve testcase (#5904)
  * Issue 5203 - outdated version in provided metadata for lib389
  * Bug Description:</changelog>
  <changelog author="William Brown &lt;william.brown@suse.com&gt;" date="1702468800">- Update to support newer obs-service-cargo-vendor</changelog>
  <changelog author="william.brown@suse.com" date="1705492800">- Update to version 2.4.0~git126.5936946:
  * Issue 6028 - vlv index keys inconsistencies (#6031)
  * Issue 5989 - RFE support of inChain Matching Rule (#5990)
  * Issue 6022 - lmdb inconsistency between vlv index and vlv cache names (#6026)
  * Issue 6015 - Fix typo remeber (#6014)
  * Issue 6016 - Pin upload/download artifacts action to v3
  * Issue 5939 - During an update, if the target entry is reverted in the entry cache, the server should not retry to lock it (#6007)
  * Issue 4673 - Update Rust crates
  * Issue 6004 - idletimeout may be ignored (#6005)
  * Issue 5954 - Disable Transparent Huge Pages
  * Issue 5997 - test_inactivty_and_expiration CI testcase is wrong (#5999)
  * Issue 5993 - Fix several race condition around CI tests (#5996)
  * Issue 5944 - Reversion of the entry cache should be limited to BETXN plugin failures (#5994)
  * Bump openssl from 0.10.55 to 0.10.60 in /src (#5995)</changelog>
  <changelog author="william.brown@suse.com" date="1706875200">- Update to version 3.0.1~git1.1f95b57:
  * Issue 6061 - Certificate lifetime displayed as NaN
  * Bump version to 3.0.1
  * Issue 6043, 6044 - Enhance Rust and JS bundling and add SPDX licenses for both (#6045)
  * Issue 3555 - Remove audit-ci from dependencies (#6056)
  * Issue 6052 - Paged results test sets hostname to `localhost` on test collection
  * Issue 6051 - Drop unused pytest markers
  * Issue 6049 - lmdb - changelog is wrongly recreated by reindex task (#6050)
  * Issue 6047 - Add a check for tagged commits
  * Issue 6041 - dscreate ds-root - accepts relative path (#6042)
  * Switch default backend to lmdb and bump version to 3.0 (#6013)
  * Issue 6032 - Replication broken after backup restore (#6035)
  * Issue 6037 - Server crash at startup in vlvIndex_delete (#6038)
  * Issue 6034 - Change replica_id from str to int</changelog>
  <changelog author="william.brown@suse.com" date="1713873600">- Update to version 3.0.1~git37.55529d1:
  * Issue 6082 - Remove explicit dependencies toward libdb - revert default (#6145)
  * Issue 6141 - freeipa test_topology_TestCASpecificRUVs is failing (#6144)
  * Issue 6142 - [RFE] Add LMDB configuration related checks into Healthcheck tool (#6143)
  * Issue 6136 - failure in freeipa tests (#6137)
  * Issue 6133 - Move slapi_pblock_set_flag_operation_notes() to slapi-plugin.h
  * Issue 5105 - lmdb - Cannot create entries with long rdn - fix covscan (#6131)
  * Issue i6057 - Fix3 - Fix covscan issues (#6127)
  * Issue 6105 - lmdb - Cannot create entries with long rdn (#6130)
  * Issue 6125 - dscreate interactive fails when chosing mdb backend (#6126)
  * Issue 6080 - ns-slapd crash in referint_get_config (#6081)
  * Issue 6110 - Typo in Account Policy plugin message
  * Issue 6057 - vlv search may result wrong result with lmdb - Fix 2 (#6121)
  * Issue 6119 - Synchronise accept_thread with slapd_daemon (#6120)
  * Issue 6117 - Fix the UTC offset print (#6118)
  * Issue 6112 - RFE - add new operation note for MFA authentications
  * Issue 5842 - Add log buffering to audit log
  * Issue 5305 - OpenLDAP version autodetection doesn't work
  * Issue 3527 - Support HAProxy and Instance on the same machine configuration (#6107)
  * Issue 6057 - vlv search may result wrong result with lmdb (#6091)
  * Issue 6103 - New connection timeout error breaks errormap (#6104)
  * Issue 6086 - Ambiguous warning about SELinux in dscreate for non-root user
  * Issue 6092 - passwordHistory is not updated with a pre-hashed password (#6093)
  * Issue 6067 - Improve dsidm CLI No Such Entry handling (#6079)
  * Issue 6096 - Improve connection timeout error logging (#6097)
  * Issue 5647 - covscan: memory leak in audit log when adding entries
  * Issue 6094 - Add coverity scan workflow
  * Issue 6067 - Add hidden -v and -j options to each CLI subcommand (#6088)
  * Issue 5487 - Fix various isses with logconv.pl (#6085)
  * Issue 5962 - Rearrange includes for 32-bit support logic
  * Issue 6046 - Make dscreate to work during kickstart installations
  * Issue 6082 - Remove explicit dependencies toward libdb (#6083)
  * Issue 6073 - Improve error log when running out of memory (#6084)
  * Issue 6071 - Instance creation/removal is slow
  * Issue 6010 - 389 ds ignores nsslapd-maxdescriptors (#6027)
  * Issue 6075 - Ignore build artifacts (#6076)
  * Issue 6068 - Add dscontainer stop function</changelog>
  <changelog author="william.brown@suse.com" date="1715688000">- Update to version 3.0.1~git39.e24615f:
  * Issue 6142 - Fix CI tests (#6161)
  * Issue 6157 - Cockipt crashes when getting replication status if topology contains an old 389ds version (#6158)</changelog>
  <changelog author="william.brown@suse.com" date="1722427200">- Update to version 3.1.1~git0.aef1668:
  * Bump version to 3.1.1
  * Issue 6256 - nsslapd-numlisteners limit is not enforced (#6257)
  * Issue 5327 - Fix test metadata
  * Security fix for CVE-2024-6237
  * Security fix for CVE-2024-5953
  * Security fix for CVE-2024-3657
  * Security fix for CVE-2024-2199
  * Issue 6256 - nsslapd-numlisteners limit is not enforced
  * Issue 6265 - lmdb - missing entries in range searches (#6266)
  * Issue 5853 - Update Cargo.lock
  * Bump openssl from 0.10.64 to 0.10.66 in /src
  * Issue 6245 - Revert __COVERITY__ ifndef (#6268)
  * Issue 6248 - fix fanalyzer warnings (#6253)
  * Issue 6238 - Fix test_audit_json_logging CI test regression (#6264)
  * Issue 6254 - Enabling replication for a sub suffix crashes browser (#6255)
  * Issue 6155 - ldap-agent fails to start because of permission error (#6179)
  * Issue 6238 - RFE - add option to write audit log in JSON format
  * Issue 6216 - CI test_fast_slow_import sometime fail (#6247)
  * Issue 6245 - covscan fixes (#6246)
  * Issue 6241 - Add support for CRYPT-YESCRYPT (#6242)
  * Issue 6229 - After an initial failure, subsequent online backups fail (#6230)
  * Issue 6236 - rpm: fix compatibility with RPM 4.20
  * Issue 6227 - dsconf schema does not show inChain matching rule (#6228)
  * Issue 6233 - CI test wait_for_async_feature_test sometime fails (#6234)
  * Bump ws from 7.5.9 to 7.5.10 in /src/cockpit/389-console
  * Issue 6224 - d2entry - Could not open id2entry err 0 - at startup when having sub-suffixes (#6225)
  * Issue 6222 - CI test acl/test_timeofday_keyword sometime fails (#6223)
  * Issue 6120 - /usr/lib64/dirsrv/plugins/libback-bdb.so has an invalid-looking DT_RPATH: /usr/lib/dirsrv
  * Issue 5772 - ONE LEVEL search fails to return sub-suffixes (#6219)
  * Issue 6183 - Slow ldif2db import on a newly created BDB backend (#6208)
  * Issue 6207 - Random crash in test_long_rdn CI test (#6215)
  * Bump braces from 3.0.2 to 3.0.3 in /src/cockpit/389-console
  * Issue 6191 - Node.js 16 actions are deprecated
  * Issue 6199 - unprotected search query during certificate based authentication (#6205)
  * Issue 6200 - Disable WebUI CI tests
  * Issue 6192 - Test failure: test_match_large_valueset
  * Issue 6181 - RFE - Allow system to manage uid/gid at startup
  * Issue 6188 - Add nsslapd-haproxy-trusted-ip to cn=schema (#6201)
  * Issue 6181 - RFE - Allow system to manage uid/gid at startup (#6182)
  * Issue 6170 - audit log buffering doesn't handle large updates
  * Issue 6193 - Test failure: test_tls_command_returns_error_text
  * Issue 6177 - Spec file cleanup
  * Issue 6189 - CI tests fail with `[Errno 2] No such file or directory: '/var/cache/dnf/metadata_lock.pid'`
  * Issue 6175 - Referential integrity plugin - in referint_thread_func does not handle null from ldap_utf8strtok (#6168)
  * Change default salt sizes generated in crypt_pwd (#6185)
  * Issue 6123 - Allow DNA plugin to reuse global config for bind method and connection protocol (#6124)
  * Issue 6159 - Add a test to check URP add and delete conflict (#6160)
  * Issue 6151 - Use %bcond macro for conditional builds in the spec file
  * Issue 6172 - RFE: improve the performance of evaluation of filter component when tested against a large valueset (like group members) (#6173)
  * Bump version to 3.1.0
  * fix issue6165 (#6167)</changelog>
  <changelog author="Thorsten Kukuk &lt;kukuk@suse.com&gt;" date="1722600000">- dirsrv-user.conf: Remove explicit dirsrv group definition, it's
  already specified implicit with "u dirsrv" and not all tools like
  duplicate group entries.</changelog>
  <changelog author="william.brown@suse.com" date="1725451200">- bsc#1229948 - CVE-2024-43806 - rustix::fs::Dir iterator with the linux_raw backend can cause memory explosion
- Update to version 3.1.1~git13.a9c7ff9:
  * Issue 2472 - Add a CI test (#6314)
  * Issue 6276 - Schema lib389 object is not keeping custom schema data upon editing (#6279)
  * Issue 3555 - UI - Fix audit issue with npm - micromatch (#6310)
  * Issue 5843 - Fix size formatting in dscreate output and enhance tests (#6309)
  * Issue 6301 - Fix long delay when setting replication agreement with dsconf (#6303)
  * Issue 6280 - Changelog trims updates from a given RID even if a consumer has not received any of them (#6281)
  * Issue 6296 - basic_test.py::test_conn_limits fails in main branch (#6300)
  * Issue 6295 - test_password_modify_non_utf8 should set default password storage scheme
  * Issue 6294 - Nightly copr builds are failing
  * Issue 6288 - dsidm crash with account policy when alt-state-attr is disabled (#6292)
  * Issue 2324 - Add a CI test (#6289)
  * Issue 6284 - BUG - freelist ordering causes high wtime (#6285)
  * Issue 6282 - BUG - out of tree build fails (#6283)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1732190400">- Add 389-ds-link-icu-uc.patch: properly link to icu-uc as well,
  which is no longer transparently added when linking icu-i18n
  (boo#1233578).</changelog>
</package>
<package pkgid="5245573a95677f223bb336f975ff2ecc7d956de8213589feab1e306fb87e6aca49bec000e4648227a25092efdb40d2a5563e8b52937f16cc6a74092a62364af4" name="389-ds" arch="src">
  <version epoch="0" ver="3.1.1~git57.65773c3" rel="1.0.4.1.sr20241103"/>
  <changelog author="william.brown@suse.com" date="1662552000">- Update to version 2.3.0~git0.3db81913e:
  * Bump version to 2.3.0
  * Issue 5012 - Migrate pcre to pcre2 - remove match limit
  * Update CI tests
  * Issue 5356 - Make Rust non-optional and update default password storage scheme
  * Issue 5012 - Migrate pcre to pcre2
  * Issue 5428 - Fix regression with nscpEntryWsi computation
  * Fix missing 'not' in description (closes #5423) (#5424)
  * Issue 5421 - CI - makes replication/acceptance_test.py::test_modify_entry more robust (#5422)
  * Issue 3903 - fix repl keep alive event interval
  * Issue 5418 - Sync_repl may crash while managing invalid cookie (#5420)</changelog>
  <changelog author="william.brown@suse.com" date="1666353600">- Update to version 2.3.0~git22.8fedec0:
  * Issue 5495 - RFE - skip dds during migration. (#5496)
  * Issue 5491 - UI - Add rework and finish jpegPhoto functionality (#5492)
  * Issue 5368 - Retro Changelog trimming does not work (#5486)
  * Issue 5487 - Fix various issues with logconv.pl
  * Issue 5476 - RFE - add memberUid read aci by default (#5477)
  * Issue 5482 - lib389 - Can not enable replication with a mixed case suffix
  * Issue 5478 - Random crash in connection code during server shutdown (#5479)
  * Issue 3061 - RFE - Add password policy debug log level
  * Issue 5302 - Release tarballs don't contain cockpit webapp
  * Issue 5262 - high contention in find_entry_internal_dn on mixed load (#5264)</changelog>
  <changelog author="william.brown@suse.com" date="1679486400">- Update to version 2.3.2~git44.5e4551e:
  * Issue 4812 - Listener thread does not scale with a high num of established connections (#5706)
  * Issue 4812 - Listener thread does not scale with a high num of established connections (#5681)
  * Bump webpack from 5.75.0 to 5.76.0 in /src/cockpit/389-console (#5699)
  * Issue 5598 - (3rd) In 2.x, SRCH throughput drops by 10% because of handling of referral (#5692)
  * Issue 5598 - (2nd) In 2.x, SRCH throughput drops by 10% because of handling of referral (#5691)
  * Issue 5687 - UI - sensitive information disclosure
  * Issue 5661 - LMDB hangs while Rebuilding the replication changelog RUV (#5676)
  * Issue 5554 - Add more tests to security_basic_test suite
  * Issue 4583 - Update specfile to skip checks of ASAN builds
  * Issue 4758 - Add tests for WebUI</changelog>
  <changelog author="william.brown@suse.com" date="1681214400">- bsc#1210027 - apply upstream fix for setuptools
- Update to version 2.3.2~git53.a01e230:
  * Issue 5705 - Add config parameter to close client conns on failed bind (#5712)
  * Issue 4758 - Add tests for WebUI
  * Issue 5643 - Memory leak in entryrdn during delete (#5717)
  * Issue 5714 - UI - fix typo, db settings, log settings, and LDAP editor paginations
  * Issue 5701 - CLI - Fix referral mode setting (#5708)
  * Bump openssl from 0.10.45 to 0.10.48 in /src (#5709)
  * Issue 5710 - subtree search statistics for index lookup does not report ancestorid/entryrdn lookups (#5711)
  * Issue 5697 - Obsolete nsslapd-ldapimaprootdn attribute (#5698)
  * Issue 1081 - Stop schema replication from overwriting x-origin
  * Issue 4812 - Listener thread does not scale with a high num of established connections (#5706)</changelog>
  <changelog author="pgajdos@suse.com" date="1681819200">- python-six is not required</changelog>
  <changelog author="william.brown@suse.com" date="1682510400">- Update to version 2.4.0~git0.87efeb2:
  * Bump version to 2.4.0
  * Issue 5156 - RFE that implement slapi_memberof (#5694)
  * Issue 5734 - RFE - Exclude pwdFailureTime and ContextCSN (#5735)
  * Issue 5726 - ns-slapd crashing in ldbm_back_upgradednformat (#5727)
  * Issue 4758 - Add tests for WebUI
  * Issue 5718 - Memory leak in connection table (#5719)
  * Issue 5705 - Add config parameter to close client conns on failed bind (#5712)
  * Issue 4758 - Add tests for WebUI
  * Issue 5643 - Memory leak in entryrdn during delete (#5717)
  * Issue 5714 - UI - fix typo, db settings, log settings, and LDAP editor paginations</changelog>
  <changelog author="william.brown@suse.com" date="1684929600">- Update to version 2.4.0~git18.37ec5cd:
  * Issue 5751 - Cleanallruv task crashes on consumer (#5775)
  * Bump version to 2.4.1
  * Issue 5770 - RFE - Extend Password Adminstrators to allow skipping password info updates
  * Issue 5768 - CLI/UI - cert checks are too strict, and other issues
  * Issue 5722 - fix compilation warnings (#5771)
  * Issue 5765 - Improve installer selinux handling
  * Issue 152 - RFE - Add support for LDAP alias entries
  * Issue 5052 - BUG - Custom filters prevented entry deletion (#5060)
  * Issue 5752 - RFE - Provide a history for LastLoginTime (#5753)
  * Issue 5722 - RFE When a filter contains 'nsrole', improve response time by rewriting the filter (#5723)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1691668800">- Update to version 2.4.0~git69.89c2de5:
  * Issue 4551 - Part 2 - Fix build warning of previous PR (#5888)
  * Issue 5834 - AccountPolicyPlugin erroring for some users (#5866)
  * Issue 5872 - part 2 - fix is_dbi regression (#5887)
  * Issue 4758 - Add tests for WebUI
  * Issue 5848 - dsconf should prevent setting the replicaID for hub and consumer roles (#5849)
  * Issue 5883 - Remove connection mutex contention risk on autobind (#5886)
  * Issue 5872 - `dbscan()` in lib389 can return bytes
  * Bump version to 2.4.3
  * Issue 5729 - Memory leak in factory_create_extension (#5814)
  * Issue 5870 - ns-slapd crashes at startup if a backend has no suffix (#5871)</changelog>
  <changelog author="william.brown@suse.com" date="1692014400">- Update to version 2.4.0~git74.4297d88:
  * issue 5890 part 2 - Need a tester for testing multiple listening thread feature (#5897)
  * Issue i5846 - Crash when lmdb import is aborted (#5881)
  * Issue 5894 - lmdb import error fails with Could not store the entry (#5895)
  * Issue 5890 - Need a tester for testing multiple listening thread feature (#5891)
  * Issue 5082 - slugify: ModuleNotFoundError when running test cases</changelog>
  <changelog author="william.brown@suse.com" date="1701259200">- Update to version 2.4.0~git113.84a845c:
  * Issue 5980 - Improve instance startup failure handling (#5991)
  * Issue 5976 - Fix freeipa install regression with lmdb (#5977)
  * Issue 5984 - Crash when paged result search are abandoned - fix2 (#5987)
  * Issue 5984 - Crash when paged result search are abandoned (#5985)
  * Issue 5947 - CI test_vlv_recreation_reindex fails on LMDB (#5979)
  * Bump version to 2.5.0
  * Issue 5971 - CLI - Fix password prompt for repl status (#5972)
  * Issue 5973 - Fix fedora cop RawHide builds (#5974)
  * Revert "Issue 5761 - Worker thread dynamic management (#5796)" (#5970)
  * Issue 5966 - CLI - Custom schema object is removed on a failed edit (#5967)
  * Issue 5786 - Update permissions for Release workflow
  * Issue 5960 - Subpackages should have more strict interdependencies
  * Issue 3555 - UI - Fix audit issue with npm - babel/traverse (#5959)
  * Issue 4843 - Fix dscreate create-template issue (#5950)
  * bugfix for --passwd-file not working on latest version (#5934)
  * Issue 5843 - dsconf / dscreate should be able to handle lmdb parameters (#5943)
  * Bump postcss from 8.4.24 to 8.4.31 in /src/cockpit/389-console (#5945)
  * Issue 5938 - Attribute Names changed to lowercase after adding the Attributes (#5940)
  * issue 5924 - ASAN server build crash when looping opening/closing connections (#5926)
  * Issue 1925 - Add a CI test (#5936)
  * Issue 5732 - Localizing Cockpit's 389ds Plugin using CockpitPoPlugin (#5764)
  * Issue 1870 - Add a CI test (#5929)
  * Issue 843 - Add a warning to slapi_valueset_add_value_ext (#5925)
  * Issue 5761 - Worker thread dynamic management (#5796)
  * Issue 1802 - Improve ldclt man page (#5928)
  * Issue 1456 - Add a CI test that verifies there is no issue (#5927)
  * Issue 1317 - Add a CI test (#5923)
  * Issue 1081 - CI - Add more tests for overwriting x-origin issue (#5815)
  * Issue 1115 - Add a CI test (#5913)
  * Issue 5848 - Fix condition and add a CI test (#5916)
  * Issue 5848 - Fix condition and add a CI test (#5916)
  * Issue 5914 - UI - server settings page validation improvements and db index fixes
  * Issue 5909 - Multi listener hang with 20k connections (#5917)
  * Issue 5902 - Fix previous commit regression (#5919)
  * pass instance correctly to ds_is_older (#5903)
  * Issue 5909 - Multi listener hang with 20k connections (#5910)
  * Issue 5722 - improve testcase (#5904)
  * Issue 5203 - outdated version in provided metadata for lib389
  * Bug Description:</changelog>
  <changelog author="William Brown &lt;william.brown@suse.com&gt;" date="1702468800">- Update to support newer obs-service-cargo-vendor</changelog>
  <changelog author="william.brown@suse.com" date="1705492800">- Update to version 2.4.0~git126.5936946:
  * Issue 6028 - vlv index keys inconsistencies (#6031)
  * Issue 5989 - RFE support of inChain Matching Rule (#5990)
  * Issue 6022 - lmdb inconsistency between vlv index and vlv cache names (#6026)
  * Issue 6015 - Fix typo remeber (#6014)
  * Issue 6016 - Pin upload/download artifacts action to v3
  * Issue 5939 - During an update, if the target entry is reverted in the entry cache, the server should not retry to lock it (#6007)
  * Issue 4673 - Update Rust crates
  * Issue 6004 - idletimeout may be ignored (#6005)
  * Issue 5954 - Disable Transparent Huge Pages
  * Issue 5997 - test_inactivty_and_expiration CI testcase is wrong (#5999)
  * Issue 5993 - Fix several race condition around CI tests (#5996)
  * Issue 5944 - Reversion of the entry cache should be limited to BETXN plugin failures (#5994)
  * Bump openssl from 0.10.55 to 0.10.60 in /src (#5995)</changelog>
  <changelog author="william.brown@suse.com" date="1706875200">- Update to version 3.0.1~git1.1f95b57:
  * Issue 6061 - Certificate lifetime displayed as NaN
  * Bump version to 3.0.1
  * Issue 6043, 6044 - Enhance Rust and JS bundling and add SPDX licenses for both (#6045)
  * Issue 3555 - Remove audit-ci from dependencies (#6056)
  * Issue 6052 - Paged results test sets hostname to `localhost` on test collection
  * Issue 6051 - Drop unused pytest markers
  * Issue 6049 - lmdb - changelog is wrongly recreated by reindex task (#6050)
  * Issue 6047 - Add a check for tagged commits
  * Issue 6041 - dscreate ds-root - accepts relative path (#6042)
  * Switch default backend to lmdb and bump version to 3.0 (#6013)
  * Issue 6032 - Replication broken after backup restore (#6035)
  * Issue 6037 - Server crash at startup in vlvIndex_delete (#6038)
  * Issue 6034 - Change replica_id from str to int</changelog>
  <changelog author="william.brown@suse.com" date="1713873600">- Update to version 3.0.1~git37.55529d1:
  * Issue 6082 - Remove explicit dependencies toward libdb - revert default (#6145)
  * Issue 6141 - freeipa test_topology_TestCASpecificRUVs is failing (#6144)
  * Issue 6142 - [RFE] Add LMDB configuration related checks into Healthcheck tool (#6143)
  * Issue 6136 - failure in freeipa tests (#6137)
  * Issue 6133 - Move slapi_pblock_set_flag_operation_notes() to slapi-plugin.h
  * Issue 5105 - lmdb - Cannot create entries with long rdn - fix covscan (#6131)
  * Issue i6057 - Fix3 - Fix covscan issues (#6127)
  * Issue 6105 - lmdb - Cannot create entries with long rdn (#6130)
  * Issue 6125 - dscreate interactive fails when chosing mdb backend (#6126)
  * Issue 6080 - ns-slapd crash in referint_get_config (#6081)
  * Issue 6110 - Typo in Account Policy plugin message
  * Issue 6057 - vlv search may result wrong result with lmdb - Fix 2 (#6121)
  * Issue 6119 - Synchronise accept_thread with slapd_daemon (#6120)
  * Issue 6117 - Fix the UTC offset print (#6118)
  * Issue 6112 - RFE - add new operation note for MFA authentications
  * Issue 5842 - Add log buffering to audit log
  * Issue 5305 - OpenLDAP version autodetection doesn't work
  * Issue 3527 - Support HAProxy and Instance on the same machine configuration (#6107)
  * Issue 6057 - vlv search may result wrong result with lmdb (#6091)
  * Issue 6103 - New connection timeout error breaks errormap (#6104)
  * Issue 6086 - Ambiguous warning about SELinux in dscreate for non-root user
  * Issue 6092 - passwordHistory is not updated with a pre-hashed password (#6093)
  * Issue 6067 - Improve dsidm CLI No Such Entry handling (#6079)
  * Issue 6096 - Improve connection timeout error logging (#6097)
  * Issue 5647 - covscan: memory leak in audit log when adding entries
  * Issue 6094 - Add coverity scan workflow
  * Issue 6067 - Add hidden -v and -j options to each CLI subcommand (#6088)
  * Issue 5487 - Fix various isses with logconv.pl (#6085)
  * Issue 5962 - Rearrange includes for 32-bit support logic
  * Issue 6046 - Make dscreate to work during kickstart installations
  * Issue 6082 - Remove explicit dependencies toward libdb (#6083)
  * Issue 6073 - Improve error log when running out of memory (#6084)
  * Issue 6071 - Instance creation/removal is slow
  * Issue 6010 - 389 ds ignores nsslapd-maxdescriptors (#6027)
  * Issue 6075 - Ignore build artifacts (#6076)
  * Issue 6068 - Add dscontainer stop function</changelog>
  <changelog author="william.brown@suse.com" date="1715688000">- Update to version 3.0.1~git39.e24615f:
  * Issue 6142 - Fix CI tests (#6161)
  * Issue 6157 - Cockipt crashes when getting replication status if topology contains an old 389ds version (#6158)</changelog>
  <changelog author="william.brown@suse.com" date="1722427200">- Update to version 3.1.1~git0.aef1668:
  * Bump version to 3.1.1
  * Issue 6256 - nsslapd-numlisteners limit is not enforced (#6257)
  * Issue 5327 - Fix test metadata
  * Security fix for CVE-2024-6237
  * Security fix for CVE-2024-5953
  * Security fix for CVE-2024-3657
  * Security fix for CVE-2024-2199
  * Issue 6256 - nsslapd-numlisteners limit is not enforced
  * Issue 6265 - lmdb - missing entries in range searches (#6266)
  * Issue 5853 - Update Cargo.lock
  * Bump openssl from 0.10.64 to 0.10.66 in /src
  * Issue 6245 - Revert __COVERITY__ ifndef (#6268)
  * Issue 6248 - fix fanalyzer warnings (#6253)
  * Issue 6238 - Fix test_audit_json_logging CI test regression (#6264)
  * Issue 6254 - Enabling replication for a sub suffix crashes browser (#6255)
  * Issue 6155 - ldap-agent fails to start because of permission error (#6179)
  * Issue 6238 - RFE - add option to write audit log in JSON format
  * Issue 6216 - CI test_fast_slow_import sometime fail (#6247)
  * Issue 6245 - covscan fixes (#6246)
  * Issue 6241 - Add support for CRYPT-YESCRYPT (#6242)
  * Issue 6229 - After an initial failure, subsequent online backups fail (#6230)
  * Issue 6236 - rpm: fix compatibility with RPM 4.20
  * Issue 6227 - dsconf schema does not show inChain matching rule (#6228)
  * Issue 6233 - CI test wait_for_async_feature_test sometime fails (#6234)
  * Bump ws from 7.5.9 to 7.5.10 in /src/cockpit/389-console
  * Issue 6224 - d2entry - Could not open id2entry err 0 - at startup when having sub-suffixes (#6225)
  * Issue 6222 - CI test acl/test_timeofday_keyword sometime fails (#6223)
  * Issue 6120 - /usr/lib64/dirsrv/plugins/libback-bdb.so has an invalid-looking DT_RPATH: /usr/lib/dirsrv
  * Issue 5772 - ONE LEVEL search fails to return sub-suffixes (#6219)
  * Issue 6183 - Slow ldif2db import on a newly created BDB backend (#6208)
  * Issue 6207 - Random crash in test_long_rdn CI test (#6215)
  * Bump braces from 3.0.2 to 3.0.3 in /src/cockpit/389-console
  * Issue 6191 - Node.js 16 actions are deprecated
  * Issue 6199 - unprotected search query during certificate based authentication (#6205)
  * Issue 6200 - Disable WebUI CI tests
  * Issue 6192 - Test failure: test_match_large_valueset
  * Issue 6181 - RFE - Allow system to manage uid/gid at startup
  * Issue 6188 - Add nsslapd-haproxy-trusted-ip to cn=schema (#6201)
  * Issue 6181 - RFE - Allow system to manage uid/gid at startup (#6182)
  * Issue 6170 - audit log buffering doesn't handle large updates
  * Issue 6193 - Test failure: test_tls_command_returns_error_text
  * Issue 6177 - Spec file cleanup
  * Issue 6189 - CI tests fail with `[Errno 2] No such file or directory: '/var/cache/dnf/metadata_lock.pid'`
  * Issue 6175 - Referential integrity plugin - in referint_thread_func does not handle null from ldap_utf8strtok (#6168)
  * Change default salt sizes generated in crypt_pwd (#6185)
  * Issue 6123 - Allow DNA plugin to reuse global config for bind method and connection protocol (#6124)
  * Issue 6159 - Add a test to check URP add and delete conflict (#6160)
  * Issue 6151 - Use %bcond macro for conditional builds in the spec file
  * Issue 6172 - RFE: improve the performance of evaluation of filter component when tested against a large valueset (like group members) (#6173)
  * Bump version to 3.1.0
  * fix issue6165 (#6167)</changelog>
  <changelog author="Thorsten Kukuk &lt;kukuk@suse.com&gt;" date="1722600000">- dirsrv-user.conf: Remove explicit dirsrv group definition, it's
  already specified implicit with "u dirsrv" and not all tools like
  duplicate group entries.</changelog>
  <changelog author="william.brown@suse.com" date="1725451200">- bsc#1229948 - CVE-2024-43806 - rustix::fs::Dir iterator with the linux_raw backend can cause memory explosion
- Update to version 3.1.1~git13.a9c7ff9:
  * Issue 2472 - Add a CI test (#6314)
  * Issue 6276 - Schema lib389 object is not keeping custom schema data upon editing (#6279)
  * Issue 3555 - UI - Fix audit issue with npm - micromatch (#6310)
  * Issue 5843 - Fix size formatting in dscreate output and enhance tests (#6309)
  * Issue 6301 - Fix long delay when setting replication agreement with dsconf (#6303)
  * Issue 6280 - Changelog trims updates from a given RID even if a consumer has not received any of them (#6281)
  * Issue 6296 - basic_test.py::test_conn_limits fails in main branch (#6300)
  * Issue 6295 - test_password_modify_non_utf8 should set default password storage scheme
  * Issue 6294 - Nightly copr builds are failing
  * Issue 6288 - dsidm crash with account policy when alt-state-attr is disabled (#6292)
  * Issue 2324 - Add a CI test (#6289)
  * Issue 6284 - BUG - freelist ordering causes high wtime (#6285)
  * Issue 6282 - BUG - out of tree build fails (#6283)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1732190400">- Add 389-ds-link-icu-uc.patch: properly link to icu-uc as well,
  which is no longer transparently added when linking icu-i18n
  (boo#1233578).</changelog>
  <changelog author="william.brown@suse.com" date="1732881600">- Remove 389-ds-link-icu-uc.patch - upstreamed
- Update to version 3.1.1~git57.65773c3:
  * Issue 6340 - RFE - extract keys once (#6413)
  * Issue 6415 - BUG - Incorrect icu linking (#6416)
  * Issue 6420 - Update dsidm user get_dn test (#6421)
  * Issue 6258 - Resolve race condition for two tests in health_config.py
  * Bump cross-spawn from 7.0.3 to 7.0.6 in /src/cockpit/389-console (#6407)
  * Issue 6386 - backup/restore broken after db log rotation (#6406)
  * Issue 6401 - Remove logging macros
  * Issue 6404 - UI - Add npm pretter package
  * Issue 6374 - nsslapd-mdb-max-dbs autotuning doesn't work properly (#6400)
  * Issue 5842 - Add log buffering for error log
  * Issue 6397 - Remove deprecated setting for HR time stamps in logs
  * Issue 6390 - Adjust cleanAllRUV max per txn and interval limits
  * Issue 6349 - RFE - extract keys once (#6363) (#6394)
  * Issue 6387 - Use make macro in the spec file
  * Issue 6359 - Add exception to GPL license in license tag
  * Issue 6381 - CleanAllRUV - move changelog purging to the very end of the task
  * Issue 5920 - pamModuleIsThreadSafe is missing in the schema
  * Issue 6377 - syntax error in setup.py (#6378)
  * Issue 6349 - RFE - Use previously extracted key path (#6363)
  * Issue 6067 - Update dsidm to prioritize basedn from .dsrc over interactive input (#6362)
  * Issue 6347 - better fix for desyncronized vlv cache (#6358)
  * Issue 6243 - dsctl bdb2mdb should cleanly fail if bundled libdb is not available (#6351)
  * Issue 6331 - UI - Instance fails to load when DB backup directory doesn't exist (#6332)
  * Issue 6356 - On LMDB, after an update the impact VLV index, the vlv recno cache is not systematically cleared (#6357)
  * Issue 6056 - WebUI supports only instances with BDB (#6299)
  * Issue 6339 - Address Coverity scan issues in memberof and bdb_layer (#6353)
  * Issue 6328 - vlv control may not be logged (#6354)
  * Issue 6347 - VLV search sometime fails with operation error (#6349)
  * Issue 6343 - Improve online import robustness when the server is under load
  * Issue 6345 - Ensure all slapi_log_err calls end format strings with newline character \n (#6346)
  * Issue 6064 - bdb2mdb shows errors (#6341)
  * Issue 6336 - Fix failing CI tests (roles) due to slow import (#6337)
  * Fix duplicate detection logic by ensuring exact match on string length (#6333)
  * Issue 6304 - RFE when memberof is enabled, defer updates of members from the update of the group (#6305)
  * Issue 6329 - lmdb typo in error log notice message (#6330)
  * Issue 6324 - Provide more information in the error message during setup_ol_tls_conn() (#6325)
  * Issue 5965 - UI, CLI - Fix Account Policy Plugin functionality issues (#6323)
  * Issue 6188 - Check if nsslapd-haproxy-trusted-ip attribute is returned in default schema
  * Issue 6319 - bdb subpackage has `%description` in the wrong place
  * Issue 6321 - lib389 get_db_lib function may returns the wrong db type (#6322)
  * Issue 6245 - Fix some other coverity scan regressions (#6273)
  * Issue 6316 - lmdb reindex is broken if index type is specified (#6318)
  * Issue 6090 - Fix dbscan options and man pages (#6315)
  * Issue 6307 - Wrong set of entries returned for some search filters (#6308)</changelog>
</package>
<package pkgid="a91fcefd3b39cb641c757021858631829b49412627942235fc710dc2b4a9cfde8578f889e7acc451a5f6214a4664b031210661fc8e7ed7808aeae2e031970fca" name="389-ds" arch="x86_64">
  <version epoch="0" ver="3.1.1~git57.65773c3" rel="1.0.4.1.sr20241103"/>
  <changelog author="william.brown@suse.com" date="1662552000">- Update to version 2.3.0~git0.3db81913e:
  * Bump version to 2.3.0
  * Issue 5012 - Migrate pcre to pcre2 - remove match limit
  * Update CI tests
  * Issue 5356 - Make Rust non-optional and update default password storage scheme
  * Issue 5012 - Migrate pcre to pcre2
  * Issue 5428 - Fix regression with nscpEntryWsi computation
  * Fix missing 'not' in description (closes #5423) (#5424)
  * Issue 5421 - CI - makes replication/acceptance_test.py::test_modify_entry more robust (#5422)
  * Issue 3903 - fix repl keep alive event interval
  * Issue 5418 - Sync_repl may crash while managing invalid cookie (#5420)</changelog>
  <changelog author="william.brown@suse.com" date="1666353600">- Update to version 2.3.0~git22.8fedec0:
  * Issue 5495 - RFE - skip dds during migration. (#5496)
  * Issue 5491 - UI - Add rework and finish jpegPhoto functionality (#5492)
  * Issue 5368 - Retro Changelog trimming does not work (#5486)
  * Issue 5487 - Fix various issues with logconv.pl
  * Issue 5476 - RFE - add memberUid read aci by default (#5477)
  * Issue 5482 - lib389 - Can not enable replication with a mixed case suffix
  * Issue 5478 - Random crash in connection code during server shutdown (#5479)
  * Issue 3061 - RFE - Add password policy debug log level
  * Issue 5302 - Release tarballs don't contain cockpit webapp
  * Issue 5262 - high contention in find_entry_internal_dn on mixed load (#5264)</changelog>
  <changelog author="william.brown@suse.com" date="1679486400">- Update to version 2.3.2~git44.5e4551e:
  * Issue 4812 - Listener thread does not scale with a high num of established connections (#5706)
  * Issue 4812 - Listener thread does not scale with a high num of established connections (#5681)
  * Bump webpack from 5.75.0 to 5.76.0 in /src/cockpit/389-console (#5699)
  * Issue 5598 - (3rd) In 2.x, SRCH throughput drops by 10% because of handling of referral (#5692)
  * Issue 5598 - (2nd) In 2.x, SRCH throughput drops by 10% because of handling of referral (#5691)
  * Issue 5687 - UI - sensitive information disclosure
  * Issue 5661 - LMDB hangs while Rebuilding the replication changelog RUV (#5676)
  * Issue 5554 - Add more tests to security_basic_test suite
  * Issue 4583 - Update specfile to skip checks of ASAN builds
  * Issue 4758 - Add tests for WebUI</changelog>
  <changelog author="william.brown@suse.com" date="1681214400">- bsc#1210027 - apply upstream fix for setuptools
- Update to version 2.3.2~git53.a01e230:
  * Issue 5705 - Add config parameter to close client conns on failed bind (#5712)
  * Issue 4758 - Add tests for WebUI
  * Issue 5643 - Memory leak in entryrdn during delete (#5717)
  * Issue 5714 - UI - fix typo, db settings, log settings, and LDAP editor paginations
  * Issue 5701 - CLI - Fix referral mode setting (#5708)
  * Bump openssl from 0.10.45 to 0.10.48 in /src (#5709)
  * Issue 5710 - subtree search statistics for index lookup does not report ancestorid/entryrdn lookups (#5711)
  * Issue 5697 - Obsolete nsslapd-ldapimaprootdn attribute (#5698)
  * Issue 1081 - Stop schema replication from overwriting x-origin
  * Issue 4812 - Listener thread does not scale with a high num of established connections (#5706)</changelog>
  <changelog author="pgajdos@suse.com" date="1681819200">- python-six is not required</changelog>
  <changelog author="william.brown@suse.com" date="1682510400">- Update to version 2.4.0~git0.87efeb2:
  * Bump version to 2.4.0
  * Issue 5156 - RFE that implement slapi_memberof (#5694)
  * Issue 5734 - RFE - Exclude pwdFailureTime and ContextCSN (#5735)
  * Issue 5726 - ns-slapd crashing in ldbm_back_upgradednformat (#5727)
  * Issue 4758 - Add tests for WebUI
  * Issue 5718 - Memory leak in connection table (#5719)
  * Issue 5705 - Add config parameter to close client conns on failed bind (#5712)
  * Issue 4758 - Add tests for WebUI
  * Issue 5643 - Memory leak in entryrdn during delete (#5717)
  * Issue 5714 - UI - fix typo, db settings, log settings, and LDAP editor paginations</changelog>
  <changelog author="william.brown@suse.com" date="1684929600">- Update to version 2.4.0~git18.37ec5cd:
  * Issue 5751 - Cleanallruv task crashes on consumer (#5775)
  * Bump version to 2.4.1
  * Issue 5770 - RFE - Extend Password Adminstrators to allow skipping password info updates
  * Issue 5768 - CLI/UI - cert checks are too strict, and other issues
  * Issue 5722 - fix compilation warnings (#5771)
  * Issue 5765 - Improve installer selinux handling
  * Issue 152 - RFE - Add support for LDAP alias entries
  * Issue 5052 - BUG - Custom filters prevented entry deletion (#5060)
  * Issue 5752 - RFE - Provide a history for LastLoginTime (#5753)
  * Issue 5722 - RFE When a filter contains 'nsrole', improve response time by rewriting the filter (#5723)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1691668800">- Update to version 2.4.0~git69.89c2de5:
  * Issue 4551 - Part 2 - Fix build warning of previous PR (#5888)
  * Issue 5834 - AccountPolicyPlugin erroring for some users (#5866)
  * Issue 5872 - part 2 - fix is_dbi regression (#5887)
  * Issue 4758 - Add tests for WebUI
  * Issue 5848 - dsconf should prevent setting the replicaID for hub and consumer roles (#5849)
  * Issue 5883 - Remove connection mutex contention risk on autobind (#5886)
  * Issue 5872 - `dbscan()` in lib389 can return bytes
  * Bump version to 2.4.3
  * Issue 5729 - Memory leak in factory_create_extension (#5814)
  * Issue 5870 - ns-slapd crashes at startup if a backend has no suffix (#5871)</changelog>
  <changelog author="william.brown@suse.com" date="1692014400">- Update to version 2.4.0~git74.4297d88:
  * issue 5890 part 2 - Need a tester for testing multiple listening thread feature (#5897)
  * Issue i5846 - Crash when lmdb import is aborted (#5881)
  * Issue 5894 - lmdb import error fails with Could not store the entry (#5895)
  * Issue 5890 - Need a tester for testing multiple listening thread feature (#5891)
  * Issue 5082 - slugify: ModuleNotFoundError when running test cases</changelog>
  <changelog author="william.brown@suse.com" date="1701259200">- Update to version 2.4.0~git113.84a845c:
  * Issue 5980 - Improve instance startup failure handling (#5991)
  * Issue 5976 - Fix freeipa install regression with lmdb (#5977)
  * Issue 5984 - Crash when paged result search are abandoned - fix2 (#5987)
  * Issue 5984 - Crash when paged result search are abandoned (#5985)
  * Issue 5947 - CI test_vlv_recreation_reindex fails on LMDB (#5979)
  * Bump version to 2.5.0
  * Issue 5971 - CLI - Fix password prompt for repl status (#5972)
  * Issue 5973 - Fix fedora cop RawHide builds (#5974)
  * Revert "Issue 5761 - Worker thread dynamic management (#5796)" (#5970)
  * Issue 5966 - CLI - Custom schema object is removed on a failed edit (#5967)
  * Issue 5786 - Update permissions for Release workflow
  * Issue 5960 - Subpackages should have more strict interdependencies
  * Issue 3555 - UI - Fix audit issue with npm - babel/traverse (#5959)
  * Issue 4843 - Fix dscreate create-template issue (#5950)
  * bugfix for --passwd-file not working on latest version (#5934)
  * Issue 5843 - dsconf / dscreate should be able to handle lmdb parameters (#5943)
  * Bump postcss from 8.4.24 to 8.4.31 in /src/cockpit/389-console (#5945)
  * Issue 5938 - Attribute Names changed to lowercase after adding the Attributes (#5940)
  * issue 5924 - ASAN server build crash when looping opening/closing connections (#5926)
  * Issue 1925 - Add a CI test (#5936)
  * Issue 5732 - Localizing Cockpit's 389ds Plugin using CockpitPoPlugin (#5764)
  * Issue 1870 - Add a CI test (#5929)
  * Issue 843 - Add a warning to slapi_valueset_add_value_ext (#5925)
  * Issue 5761 - Worker thread dynamic management (#5796)
  * Issue 1802 - Improve ldclt man page (#5928)
  * Issue 1456 - Add a CI test that verifies there is no issue (#5927)
  * Issue 1317 - Add a CI test (#5923)
  * Issue 1081 - CI - Add more tests for overwriting x-origin issue (#5815)
  * Issue 1115 - Add a CI test (#5913)
  * Issue 5848 - Fix condition and add a CI test (#5916)
  * Issue 5848 - Fix condition and add a CI test (#5916)
  * Issue 5914 - UI - server settings page validation improvements and db index fixes
  * Issue 5909 - Multi listener hang with 20k connections (#5917)
  * Issue 5902 - Fix previous commit regression (#5919)
  * pass instance correctly to ds_is_older (#5903)
  * Issue 5909 - Multi listener hang with 20k connections (#5910)
  * Issue 5722 - improve testcase (#5904)
  * Issue 5203 - outdated version in provided metadata for lib389
  * Bug Description:</changelog>
  <changelog author="William Brown &lt;william.brown@suse.com&gt;" date="1702468800">- Update to support newer obs-service-cargo-vendor</changelog>
  <changelog author="william.brown@suse.com" date="1705492800">- Update to version 2.4.0~git126.5936946:
  * Issue 6028 - vlv index keys inconsistencies (#6031)
  * Issue 5989 - RFE support of inChain Matching Rule (#5990)
  * Issue 6022 - lmdb inconsistency between vlv index and vlv cache names (#6026)
  * Issue 6015 - Fix typo remeber (#6014)
  * Issue 6016 - Pin upload/download artifacts action to v3
  * Issue 5939 - During an update, if the target entry is reverted in the entry cache, the server should not retry to lock it (#6007)
  * Issue 4673 - Update Rust crates
  * Issue 6004 - idletimeout may be ignored (#6005)
  * Issue 5954 - Disable Transparent Huge Pages
  * Issue 5997 - test_inactivty_and_expiration CI testcase is wrong (#5999)
  * Issue 5993 - Fix several race condition around CI tests (#5996)
  * Issue 5944 - Reversion of the entry cache should be limited to BETXN plugin failures (#5994)
  * Bump openssl from 0.10.55 to 0.10.60 in /src (#5995)</changelog>
  <changelog author="william.brown@suse.com" date="1706875200">- Update to version 3.0.1~git1.1f95b57:
  * Issue 6061 - Certificate lifetime displayed as NaN
  * Bump version to 3.0.1
  * Issue 6043, 6044 - Enhance Rust and JS bundling and add SPDX licenses for both (#6045)
  * Issue 3555 - Remove audit-ci from dependencies (#6056)
  * Issue 6052 - Paged results test sets hostname to `localhost` on test collection
  * Issue 6051 - Drop unused pytest markers
  * Issue 6049 - lmdb - changelog is wrongly recreated by reindex task (#6050)
  * Issue 6047 - Add a check for tagged commits
  * Issue 6041 - dscreate ds-root - accepts relative path (#6042)
  * Switch default backend to lmdb and bump version to 3.0 (#6013)
  * Issue 6032 - Replication broken after backup restore (#6035)
  * Issue 6037 - Server crash at startup in vlvIndex_delete (#6038)
  * Issue 6034 - Change replica_id from str to int</changelog>
  <changelog author="william.brown@suse.com" date="1713873600">- Update to version 3.0.1~git37.55529d1:
  * Issue 6082 - Remove explicit dependencies toward libdb - revert default (#6145)
  * Issue 6141 - freeipa test_topology_TestCASpecificRUVs is failing (#6144)
  * Issue 6142 - [RFE] Add LMDB configuration related checks into Healthcheck tool (#6143)
  * Issue 6136 - failure in freeipa tests (#6137)
  * Issue 6133 - Move slapi_pblock_set_flag_operation_notes() to slapi-plugin.h
  * Issue 5105 - lmdb - Cannot create entries with long rdn - fix covscan (#6131)
  * Issue i6057 - Fix3 - Fix covscan issues (#6127)
  * Issue 6105 - lmdb - Cannot create entries with long rdn (#6130)
  * Issue 6125 - dscreate interactive fails when chosing mdb backend (#6126)
  * Issue 6080 - ns-slapd crash in referint_get_config (#6081)
  * Issue 6110 - Typo in Account Policy plugin message
  * Issue 6057 - vlv search may result wrong result with lmdb - Fix 2 (#6121)
  * Issue 6119 - Synchronise accept_thread with slapd_daemon (#6120)
  * Issue 6117 - Fix the UTC offset print (#6118)
  * Issue 6112 - RFE - add new operation note for MFA authentications
  * Issue 5842 - Add log buffering to audit log
  * Issue 5305 - OpenLDAP version autodetection doesn't work
  * Issue 3527 - Support HAProxy and Instance on the same machine configuration (#6107)
  * Issue 6057 - vlv search may result wrong result with lmdb (#6091)
  * Issue 6103 - New connection timeout error breaks errormap (#6104)
  * Issue 6086 - Ambiguous warning about SELinux in dscreate for non-root user
  * Issue 6092 - passwordHistory is not updated with a pre-hashed password (#6093)
  * Issue 6067 - Improve dsidm CLI No Such Entry handling (#6079)
  * Issue 6096 - Improve connection timeout error logging (#6097)
  * Issue 5647 - covscan: memory leak in audit log when adding entries
  * Issue 6094 - Add coverity scan workflow
  * Issue 6067 - Add hidden -v and -j options to each CLI subcommand (#6088)
  * Issue 5487 - Fix various isses with logconv.pl (#6085)
  * Issue 5962 - Rearrange includes for 32-bit support logic
  * Issue 6046 - Make dscreate to work during kickstart installations
  * Issue 6082 - Remove explicit dependencies toward libdb (#6083)
  * Issue 6073 - Improve error log when running out of memory (#6084)
  * Issue 6071 - Instance creation/removal is slow
  * Issue 6010 - 389 ds ignores nsslapd-maxdescriptors (#6027)
  * Issue 6075 - Ignore build artifacts (#6076)
  * Issue 6068 - Add dscontainer stop function</changelog>
  <changelog author="william.brown@suse.com" date="1715688000">- Update to version 3.0.1~git39.e24615f:
  * Issue 6142 - Fix CI tests (#6161)
  * Issue 6157 - Cockipt crashes when getting replication status if topology contains an old 389ds version (#6158)</changelog>
  <changelog author="william.brown@suse.com" date="1722427200">- Update to version 3.1.1~git0.aef1668:
  * Bump version to 3.1.1
  * Issue 6256 - nsslapd-numlisteners limit is not enforced (#6257)
  * Issue 5327 - Fix test metadata
  * Security fix for CVE-2024-6237
  * Security fix for CVE-2024-5953
  * Security fix for CVE-2024-3657
  * Security fix for CVE-2024-2199
  * Issue 6256 - nsslapd-numlisteners limit is not enforced
  * Issue 6265 - lmdb - missing entries in range searches (#6266)
  * Issue 5853 - Update Cargo.lock
  * Bump openssl from 0.10.64 to 0.10.66 in /src
  * Issue 6245 - Revert __COVERITY__ ifndef (#6268)
  * Issue 6248 - fix fanalyzer warnings (#6253)
  * Issue 6238 - Fix test_audit_json_logging CI test regression (#6264)
  * Issue 6254 - Enabling replication for a sub suffix crashes browser (#6255)
  * Issue 6155 - ldap-agent fails to start because of permission error (#6179)
  * Issue 6238 - RFE - add option to write audit log in JSON format
  * Issue 6216 - CI test_fast_slow_import sometime fail (#6247)
  * Issue 6245 - covscan fixes (#6246)
  * Issue 6241 - Add support for CRYPT-YESCRYPT (#6242)
  * Issue 6229 - After an initial failure, subsequent online backups fail (#6230)
  * Issue 6236 - rpm: fix compatibility with RPM 4.20
  * Issue 6227 - dsconf schema does not show inChain matching rule (#6228)
  * Issue 6233 - CI test wait_for_async_feature_test sometime fails (#6234)
  * Bump ws from 7.5.9 to 7.5.10 in /src/cockpit/389-console
  * Issue 6224 - d2entry - Could not open id2entry err 0 - at startup when having sub-suffixes (#6225)
  * Issue 6222 - CI test acl/test_timeofday_keyword sometime fails (#6223)
  * Issue 6120 - /usr/lib64/dirsrv/plugins/libback-bdb.so has an invalid-looking DT_RPATH: /usr/lib/dirsrv
  * Issue 5772 - ONE LEVEL search fails to return sub-suffixes (#6219)
  * Issue 6183 - Slow ldif2db import on a newly created BDB backend (#6208)
  * Issue 6207 - Random crash in test_long_rdn CI test (#6215)
  * Bump braces from 3.0.2 to 3.0.3 in /src/cockpit/389-console
  * Issue 6191 - Node.js 16 actions are deprecated
  * Issue 6199 - unprotected search query during certificate based authentication (#6205)
  * Issue 6200 - Disable WebUI CI tests
  * Issue 6192 - Test failure: test_match_large_valueset
  * Issue 6181 - RFE - Allow system to manage uid/gid at startup
  * Issue 6188 - Add nsslapd-haproxy-trusted-ip to cn=schema (#6201)
  * Issue 6181 - RFE - Allow system to manage uid/gid at startup (#6182)
  * Issue 6170 - audit log buffering doesn't handle large updates
  * Issue 6193 - Test failure: test_tls_command_returns_error_text
  * Issue 6177 - Spec file cleanup
  * Issue 6189 - CI tests fail with `[Errno 2] No such file or directory: '/var/cache/dnf/metadata_lock.pid'`
  * Issue 6175 - Referential integrity plugin - in referint_thread_func does not handle null from ldap_utf8strtok (#6168)
  * Change default salt sizes generated in crypt_pwd (#6185)
  * Issue 6123 - Allow DNA plugin to reuse global config for bind method and connection protocol (#6124)
  * Issue 6159 - Add a test to check URP add and delete conflict (#6160)
  * Issue 6151 - Use %bcond macro for conditional builds in the spec file
  * Issue 6172 - RFE: improve the performance of evaluation of filter component when tested against a large valueset (like group members) (#6173)
  * Bump version to 3.1.0
  * fix issue6165 (#6167)</changelog>
  <changelog author="Thorsten Kukuk &lt;kukuk@suse.com&gt;" date="1722600000">- dirsrv-user.conf: Remove explicit dirsrv group definition, it's
  already specified implicit with "u dirsrv" and not all tools like
  duplicate group entries.</changelog>
  <changelog author="william.brown@suse.com" date="1725451200">- bsc#1229948 - CVE-2024-43806 - rustix::fs::Dir iterator with the linux_raw backend can cause memory explosion
- Update to version 3.1.1~git13.a9c7ff9:
  * Issue 2472 - Add a CI test (#6314)
  * Issue 6276 - Schema lib389 object is not keeping custom schema data upon editing (#6279)
  * Issue 3555 - UI - Fix audit issue with npm - micromatch (#6310)
  * Issue 5843 - Fix size formatting in dscreate output and enhance tests (#6309)
  * Issue 6301 - Fix long delay when setting replication agreement with dsconf (#6303)
  * Issue 6280 - Changelog trims updates from a given RID even if a consumer has not received any of them (#6281)
  * Issue 6296 - basic_test.py::test_conn_limits fails in main branch (#6300)
  * Issue 6295 - test_password_modify_non_utf8 should set default password storage scheme
  * Issue 6294 - Nightly copr builds are failing
  * Issue 6288 - dsidm crash with account policy when alt-state-attr is disabled (#6292)
  * Issue 2324 - Add a CI test (#6289)
  * Issue 6284 - BUG - freelist ordering causes high wtime (#6285)
  * Issue 6282 - BUG - out of tree build fails (#6283)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1732190400">- Add 389-ds-link-icu-uc.patch: properly link to icu-uc as well,
  which is no longer transparently added when linking icu-i18n
  (boo#1233578).</changelog>
  <changelog author="william.brown@suse.com" date="1732881600">- Remove 389-ds-link-icu-uc.patch - upstreamed
- Update to version 3.1.1~git57.65773c3:
  * Issue 6340 - RFE - extract keys once (#6413)
  * Issue 6415 - BUG - Incorrect icu linking (#6416)
  * Issue 6420 - Update dsidm user get_dn test (#6421)
  * Issue 6258 - Resolve race condition for two tests in health_config.py
  * Bump cross-spawn from 7.0.3 to 7.0.6 in /src/cockpit/389-console (#6407)
  * Issue 6386 - backup/restore broken after db log rotation (#6406)
  * Issue 6401 - Remove logging macros
  * Issue 6404 - UI - Add npm pretter package
  * Issue 6374 - nsslapd-mdb-max-dbs autotuning doesn't work properly (#6400)
  * Issue 5842 - Add log buffering for error log
  * Issue 6397 - Remove deprecated setting for HR time stamps in logs
  * Issue 6390 - Adjust cleanAllRUV max per txn and interval limits
  * Issue 6349 - RFE - extract keys once (#6363) (#6394)
  * Issue 6387 - Use make macro in the spec file
  * Issue 6359 - Add exception to GPL license in license tag
  * Issue 6381 - CleanAllRUV - move changelog purging to the very end of the task
  * Issue 5920 - pamModuleIsThreadSafe is missing in the schema
  * Issue 6377 - syntax error in setup.py (#6378)
  * Issue 6349 - RFE - Use previously extracted key path (#6363)
  * Issue 6067 - Update dsidm to prioritize basedn from .dsrc over interactive input (#6362)
  * Issue 6347 - better fix for desyncronized vlv cache (#6358)
  * Issue 6243 - dsctl bdb2mdb should cleanly fail if bundled libdb is not available (#6351)
  * Issue 6331 - UI - Instance fails to load when DB backup directory doesn't exist (#6332)
  * Issue 6356 - On LMDB, after an update the impact VLV index, the vlv recno cache is not systematically cleared (#6357)
  * Issue 6056 - WebUI supports only instances with BDB (#6299)
  * Issue 6339 - Address Coverity scan issues in memberof and bdb_layer (#6353)
  * Issue 6328 - vlv control may not be logged (#6354)
  * Issue 6347 - VLV search sometime fails with operation error (#6349)
  * Issue 6343 - Improve online import robustness when the server is under load
  * Issue 6345 - Ensure all slapi_log_err calls end format strings with newline character \n (#6346)
  * Issue 6064 - bdb2mdb shows errors (#6341)
  * Issue 6336 - Fix failing CI tests (roles) due to slow import (#6337)
  * Fix duplicate detection logic by ensuring exact match on string length (#6333)
  * Issue 6304 - RFE when memberof is enabled, defer updates of members from the update of the group (#6305)
  * Issue 6329 - lmdb typo in error log notice message (#6330)
  * Issue 6324 - Provide more information in the error message during setup_ol_tls_conn() (#6325)
  * Issue 5965 - UI, CLI - Fix Account Policy Plugin functionality issues (#6323)
  * Issue 6188 - Check if nsslapd-haproxy-trusted-ip attribute is returned in default schema
  * Issue 6319 - bdb subpackage has `%description` in the wrong place
  * Issue 6321 - lib389 get_db_lib function may returns the wrong db type (#6322)
  * Issue 6245 - Fix some other coverity scan regressions (#6273)
  * Issue 6316 - lmdb reindex is broken if index type is specified (#6318)
  * Issue 6090 - Fix dbscan options and man pages (#6315)
  * Issue 6307 - Wrong set of entries returned for some search filters (#6308)</changelog>
</package>
<package pkgid="82a8e8d45b4ce2abd732524a8c318f88ecd07c0fa2423873eeb370bfe06075bbeaff2a7a024ab625655758ac961eb222fdcc1f5fc24034cdd935dca05636641b" name="389-ds-debuginfo" arch="x86_64">
  <version epoch="0" ver="3.1.1~git13.a9c7ff9" rel="2.0.2.1.sr20241103"/>
  <changelog author="William Brown &lt;william.brown@suse.com&gt;" date="1660132800">- Update _constraints due to random build failures caused by OBS environmental
  issues that aren't out fault. (out of disk, systemic builder issues).
- Add debugging about the environment to assist with OBS randomly failing
  in the future.</changelog>
  <changelog author="william.brown@suse.com" date="1662552000">- Update to version 2.3.0~git0.3db81913e:
  * Bump version to 2.3.0
  * Issue 5012 - Migrate pcre to pcre2 - remove match limit
  * Update CI tests
  * Issue 5356 - Make Rust non-optional and update default password storage scheme
  * Issue 5012 - Migrate pcre to pcre2
  * Issue 5428 - Fix regression with nscpEntryWsi computation
  * Fix missing 'not' in description (closes #5423) (#5424)
  * Issue 5421 - CI - makes replication/acceptance_test.py::test_modify_entry more robust (#5422)
  * Issue 3903 - fix repl keep alive event interval
  * Issue 5418 - Sync_repl may crash while managing invalid cookie (#5420)</changelog>
  <changelog author="william.brown@suse.com" date="1666353600">- Update to version 2.3.0~git22.8fedec0:
  * Issue 5495 - RFE - skip dds during migration. (#5496)
  * Issue 5491 - UI - Add rework and finish jpegPhoto functionality (#5492)
  * Issue 5368 - Retro Changelog trimming does not work (#5486)
  * Issue 5487 - Fix various issues with logconv.pl
  * Issue 5476 - RFE - add memberUid read aci by default (#5477)
  * Issue 5482 - lib389 - Can not enable replication with a mixed case suffix
  * Issue 5478 - Random crash in connection code during server shutdown (#5479)
  * Issue 3061 - RFE - Add password policy debug log level
  * Issue 5302 - Release tarballs don't contain cockpit webapp
  * Issue 5262 - high contention in find_entry_internal_dn on mixed load (#5264)</changelog>
  <changelog author="william.brown@suse.com" date="1679486400">- Update to version 2.3.2~git44.5e4551e:
  * Issue 4812 - Listener thread does not scale with a high num of established connections (#5706)
  * Issue 4812 - Listener thread does not scale with a high num of established connections (#5681)
  * Bump webpack from 5.75.0 to 5.76.0 in /src/cockpit/389-console (#5699)
  * Issue 5598 - (3rd) In 2.x, SRCH throughput drops by 10% because of handling of referral (#5692)
  * Issue 5598 - (2nd) In 2.x, SRCH throughput drops by 10% because of handling of referral (#5691)
  * Issue 5687 - UI - sensitive information disclosure
  * Issue 5661 - LMDB hangs while Rebuilding the replication changelog RUV (#5676)
  * Issue 5554 - Add more tests to security_basic_test suite
  * Issue 4583 - Update specfile to skip checks of ASAN builds
  * Issue 4758 - Add tests for WebUI</changelog>
  <changelog author="william.brown@suse.com" date="1681214400">- bsc#1210027 - apply upstream fix for setuptools
- Update to version 2.3.2~git53.a01e230:
  * Issue 5705 - Add config parameter to close client conns on failed bind (#5712)
  * Issue 4758 - Add tests for WebUI
  * Issue 5643 - Memory leak in entryrdn during delete (#5717)
  * Issue 5714 - UI - fix typo, db settings, log settings, and LDAP editor paginations
  * Issue 5701 - CLI - Fix referral mode setting (#5708)
  * Bump openssl from 0.10.45 to 0.10.48 in /src (#5709)
  * Issue 5710 - subtree search statistics for index lookup does not report ancestorid/entryrdn lookups (#5711)
  * Issue 5697 - Obsolete nsslapd-ldapimaprootdn attribute (#5698)
  * Issue 1081 - Stop schema replication from overwriting x-origin
  * Issue 4812 - Listener thread does not scale with a high num of established connections (#5706)</changelog>
  <changelog author="pgajdos@suse.com" date="1681819200">- python-six is not required</changelog>
  <changelog author="william.brown@suse.com" date="1682510400">- Update to version 2.4.0~git0.87efeb2:
  * Bump version to 2.4.0
  * Issue 5156 - RFE that implement slapi_memberof (#5694)
  * Issue 5734 - RFE - Exclude pwdFailureTime and ContextCSN (#5735)
  * Issue 5726 - ns-slapd crashing in ldbm_back_upgradednformat (#5727)
  * Issue 4758 - Add tests for WebUI
  * Issue 5718 - Memory leak in connection table (#5719)
  * Issue 5705 - Add config parameter to close client conns on failed bind (#5712)
  * Issue 4758 - Add tests for WebUI
  * Issue 5643 - Memory leak in entryrdn during delete (#5717)
  * Issue 5714 - UI - fix typo, db settings, log settings, and LDAP editor paginations</changelog>
  <changelog author="william.brown@suse.com" date="1684929600">- Update to version 2.4.0~git18.37ec5cd:
  * Issue 5751 - Cleanallruv task crashes on consumer (#5775)
  * Bump version to 2.4.1
  * Issue 5770 - RFE - Extend Password Adminstrators to allow skipping password info updates
  * Issue 5768 - CLI/UI - cert checks are too strict, and other issues
  * Issue 5722 - fix compilation warnings (#5771)
  * Issue 5765 - Improve installer selinux handling
  * Issue 152 - RFE - Add support for LDAP alias entries
  * Issue 5052 - BUG - Custom filters prevented entry deletion (#5060)
  * Issue 5752 - RFE - Provide a history for LastLoginTime (#5753)
  * Issue 5722 - RFE When a filter contains 'nsrole', improve response time by rewriting the filter (#5723)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1691668800">- Update to version 2.4.0~git69.89c2de5:
  * Issue 4551 - Part 2 - Fix build warning of previous PR (#5888)
  * Issue 5834 - AccountPolicyPlugin erroring for some users (#5866)
  * Issue 5872 - part 2 - fix is_dbi regression (#5887)
  * Issue 4758 - Add tests for WebUI
  * Issue 5848 - dsconf should prevent setting the replicaID for hub and consumer roles (#5849)
  * Issue 5883 - Remove connection mutex contention risk on autobind (#5886)
  * Issue 5872 - `dbscan()` in lib389 can return bytes
  * Bump version to 2.4.3
  * Issue 5729 - Memory leak in factory_create_extension (#5814)
  * Issue 5870 - ns-slapd crashes at startup if a backend has no suffix (#5871)</changelog>
  <changelog author="william.brown@suse.com" date="1692014400">- Update to version 2.4.0~git74.4297d88:
  * issue 5890 part 2 - Need a tester for testing multiple listening thread feature (#5897)
  * Issue i5846 - Crash when lmdb import is aborted (#5881)
  * Issue 5894 - lmdb import error fails with Could not store the entry (#5895)
  * Issue 5890 - Need a tester for testing multiple listening thread feature (#5891)
  * Issue 5082 - slugify: ModuleNotFoundError when running test cases</changelog>
  <changelog author="william.brown@suse.com" date="1701259200">- Update to version 2.4.0~git113.84a845c:
  * Issue 5980 - Improve instance startup failure handling (#5991)
  * Issue 5976 - Fix freeipa install regression with lmdb (#5977)
  * Issue 5984 - Crash when paged result search are abandoned - fix2 (#5987)
  * Issue 5984 - Crash when paged result search are abandoned (#5985)
  * Issue 5947 - CI test_vlv_recreation_reindex fails on LMDB (#5979)
  * Bump version to 2.5.0
  * Issue 5971 - CLI - Fix password prompt for repl status (#5972)
  * Issue 5973 - Fix fedora cop RawHide builds (#5974)
  * Revert "Issue 5761 - Worker thread dynamic management (#5796)" (#5970)
  * Issue 5966 - CLI - Custom schema object is removed on a failed edit (#5967)
  * Issue 5786 - Update permissions for Release workflow
  * Issue 5960 - Subpackages should have more strict interdependencies
  * Issue 3555 - UI - Fix audit issue with npm - babel/traverse (#5959)
  * Issue 4843 - Fix dscreate create-template issue (#5950)
  * bugfix for --passwd-file not working on latest version (#5934)
  * Issue 5843 - dsconf / dscreate should be able to handle lmdb parameters (#5943)
  * Bump postcss from 8.4.24 to 8.4.31 in /src/cockpit/389-console (#5945)
  * Issue 5938 - Attribute Names changed to lowercase after adding the Attributes (#5940)
  * issue 5924 - ASAN server build crash when looping opening/closing connections (#5926)
  * Issue 1925 - Add a CI test (#5936)
  * Issue 5732 - Localizing Cockpit's 389ds Plugin using CockpitPoPlugin (#5764)
  * Issue 1870 - Add a CI test (#5929)
  * Issue 843 - Add a warning to slapi_valueset_add_value_ext (#5925)
  * Issue 5761 - Worker thread dynamic management (#5796)
  * Issue 1802 - Improve ldclt man page (#5928)
  * Issue 1456 - Add a CI test that verifies there is no issue (#5927)
  * Issue 1317 - Add a CI test (#5923)
  * Issue 1081 - CI - Add more tests for overwriting x-origin issue (#5815)
  * Issue 1115 - Add a CI test (#5913)
  * Issue 5848 - Fix condition and add a CI test (#5916)
  * Issue 5848 - Fix condition and add a CI test (#5916)
  * Issue 5914 - UI - server settings page validation improvements and db index fixes
  * Issue 5909 - Multi listener hang with 20k connections (#5917)
  * Issue 5902 - Fix previous commit regression (#5919)
  * pass instance correctly to ds_is_older (#5903)
  * Issue 5909 - Multi listener hang with 20k connections (#5910)
  * Issue 5722 - improve testcase (#5904)
  * Issue 5203 - outdated version in provided metadata for lib389
  * Bug Description:</changelog>
  <changelog author="William Brown &lt;william.brown@suse.com&gt;" date="1702468800">- Update to support newer obs-service-cargo-vendor</changelog>
  <changelog author="william.brown@suse.com" date="1705492800">- Update to version 2.4.0~git126.5936946:
  * Issue 6028 - vlv index keys inconsistencies (#6031)
  * Issue 5989 - RFE support of inChain Matching Rule (#5990)
  * Issue 6022 - lmdb inconsistency between vlv index and vlv cache names (#6026)
  * Issue 6015 - Fix typo remeber (#6014)
  * Issue 6016 - Pin upload/download artifacts action to v3
  * Issue 5939 - During an update, if the target entry is reverted in the entry cache, the server should not retry to lock it (#6007)
  * Issue 4673 - Update Rust crates
  * Issue 6004 - idletimeout may be ignored (#6005)
  * Issue 5954 - Disable Transparent Huge Pages
  * Issue 5997 - test_inactivty_and_expiration CI testcase is wrong (#5999)
  * Issue 5993 - Fix several race condition around CI tests (#5996)
  * Issue 5944 - Reversion of the entry cache should be limited to BETXN plugin failures (#5994)
  * Bump openssl from 0.10.55 to 0.10.60 in /src (#5995)</changelog>
  <changelog author="william.brown@suse.com" date="1706875200">- Update to version 3.0.1~git1.1f95b57:
  * Issue 6061 - Certificate lifetime displayed as NaN
  * Bump version to 3.0.1
  * Issue 6043, 6044 - Enhance Rust and JS bundling and add SPDX licenses for both (#6045)
  * Issue 3555 - Remove audit-ci from dependencies (#6056)
  * Issue 6052 - Paged results test sets hostname to `localhost` on test collection
  * Issue 6051 - Drop unused pytest markers
  * Issue 6049 - lmdb - changelog is wrongly recreated by reindex task (#6050)
  * Issue 6047 - Add a check for tagged commits
  * Issue 6041 - dscreate ds-root - accepts relative path (#6042)
  * Switch default backend to lmdb and bump version to 3.0 (#6013)
  * Issue 6032 - Replication broken after backup restore (#6035)
  * Issue 6037 - Server crash at startup in vlvIndex_delete (#6038)
  * Issue 6034 - Change replica_id from str to int</changelog>
  <changelog author="william.brown@suse.com" date="1713873600">- Update to version 3.0.1~git37.55529d1:
  * Issue 6082 - Remove explicit dependencies toward libdb - revert default (#6145)
  * Issue 6141 - freeipa test_topology_TestCASpecificRUVs is failing (#6144)
  * Issue 6142 - [RFE] Add LMDB configuration related checks into Healthcheck tool (#6143)
  * Issue 6136 - failure in freeipa tests (#6137)
  * Issue 6133 - Move slapi_pblock_set_flag_operation_notes() to slapi-plugin.h
  * Issue 5105 - lmdb - Cannot create entries with long rdn - fix covscan (#6131)
  * Issue i6057 - Fix3 - Fix covscan issues (#6127)
  * Issue 6105 - lmdb - Cannot create entries with long rdn (#6130)
  * Issue 6125 - dscreate interactive fails when chosing mdb backend (#6126)
  * Issue 6080 - ns-slapd crash in referint_get_config (#6081)
  * Issue 6110 - Typo in Account Policy plugin message
  * Issue 6057 - vlv search may result wrong result with lmdb - Fix 2 (#6121)
  * Issue 6119 - Synchronise accept_thread with slapd_daemon (#6120)
  * Issue 6117 - Fix the UTC offset print (#6118)
  * Issue 6112 - RFE - add new operation note for MFA authentications
  * Issue 5842 - Add log buffering to audit log
  * Issue 5305 - OpenLDAP version autodetection doesn't work
  * Issue 3527 - Support HAProxy and Instance on the same machine configuration (#6107)
  * Issue 6057 - vlv search may result wrong result with lmdb (#6091)
  * Issue 6103 - New connection timeout error breaks errormap (#6104)
  * Issue 6086 - Ambiguous warning about SELinux in dscreate for non-root user
  * Issue 6092 - passwordHistory is not updated with a pre-hashed password (#6093)
  * Issue 6067 - Improve dsidm CLI No Such Entry handling (#6079)
  * Issue 6096 - Improve connection timeout error logging (#6097)
  * Issue 5647 - covscan: memory leak in audit log when adding entries
  * Issue 6094 - Add coverity scan workflow
  * Issue 6067 - Add hidden -v and -j options to each CLI subcommand (#6088)
  * Issue 5487 - Fix various isses with logconv.pl (#6085)
  * Issue 5962 - Rearrange includes for 32-bit support logic
  * Issue 6046 - Make dscreate to work during kickstart installations
  * Issue 6082 - Remove explicit dependencies toward libdb (#6083)
  * Issue 6073 - Improve error log when running out of memory (#6084)
  * Issue 6071 - Instance creation/removal is slow
  * Issue 6010 - 389 ds ignores nsslapd-maxdescriptors (#6027)
  * Issue 6075 - Ignore build artifacts (#6076)
  * Issue 6068 - Add dscontainer stop function</changelog>
  <changelog author="william.brown@suse.com" date="1715688000">- Update to version 3.0.1~git39.e24615f:
  * Issue 6142 - Fix CI tests (#6161)
  * Issue 6157 - Cockipt crashes when getting replication status if topology contains an old 389ds version (#6158)</changelog>
  <changelog author="william.brown@suse.com" date="1722427200">- Update to version 3.1.1~git0.aef1668:
  * Bump version to 3.1.1
  * Issue 6256 - nsslapd-numlisteners limit is not enforced (#6257)
  * Issue 5327 - Fix test metadata
  * Security fix for CVE-2024-6237
  * Security fix for CVE-2024-5953
  * Security fix for CVE-2024-3657
  * Security fix for CVE-2024-2199
  * Issue 6256 - nsslapd-numlisteners limit is not enforced
  * Issue 6265 - lmdb - missing entries in range searches (#6266)
  * Issue 5853 - Update Cargo.lock
  * Bump openssl from 0.10.64 to 0.10.66 in /src
  * Issue 6245 - Revert __COVERITY__ ifndef (#6268)
  * Issue 6248 - fix fanalyzer warnings (#6253)
  * Issue 6238 - Fix test_audit_json_logging CI test regression (#6264)
  * Issue 6254 - Enabling replication for a sub suffix crashes browser (#6255)
  * Issue 6155 - ldap-agent fails to start because of permission error (#6179)
  * Issue 6238 - RFE - add option to write audit log in JSON format
  * Issue 6216 - CI test_fast_slow_import sometime fail (#6247)
  * Issue 6245 - covscan fixes (#6246)
  * Issue 6241 - Add support for CRYPT-YESCRYPT (#6242)
  * Issue 6229 - After an initial failure, subsequent online backups fail (#6230)
  * Issue 6236 - rpm: fix compatibility with RPM 4.20
  * Issue 6227 - dsconf schema does not show inChain matching rule (#6228)
  * Issue 6233 - CI test wait_for_async_feature_test sometime fails (#6234)
  * Bump ws from 7.5.9 to 7.5.10 in /src/cockpit/389-console
  * Issue 6224 - d2entry - Could not open id2entry err 0 - at startup when having sub-suffixes (#6225)
  * Issue 6222 - CI test acl/test_timeofday_keyword sometime fails (#6223)
  * Issue 6120 - /usr/lib64/dirsrv/plugins/libback-bdb.so has an invalid-looking DT_RPATH: /usr/lib/dirsrv
  * Issue 5772 - ONE LEVEL search fails to return sub-suffixes (#6219)
  * Issue 6183 - Slow ldif2db import on a newly created BDB backend (#6208)
  * Issue 6207 - Random crash in test_long_rdn CI test (#6215)
  * Bump braces from 3.0.2 to 3.0.3 in /src/cockpit/389-console
  * Issue 6191 - Node.js 16 actions are deprecated
  * Issue 6199 - unprotected search query during certificate based authentication (#6205)
  * Issue 6200 - Disable WebUI CI tests
  * Issue 6192 - Test failure: test_match_large_valueset
  * Issue 6181 - RFE - Allow system to manage uid/gid at startup
  * Issue 6188 - Add nsslapd-haproxy-trusted-ip to cn=schema (#6201)
  * Issue 6181 - RFE - Allow system to manage uid/gid at startup (#6182)
  * Issue 6170 - audit log buffering doesn't handle large updates
  * Issue 6193 - Test failure: test_tls_command_returns_error_text
  * Issue 6177 - Spec file cleanup
  * Issue 6189 - CI tests fail with `[Errno 2] No such file or directory: '/var/cache/dnf/metadata_lock.pid'`
  * Issue 6175 - Referential integrity plugin - in referint_thread_func does not handle null from ldap_utf8strtok (#6168)
  * Change default salt sizes generated in crypt_pwd (#6185)
  * Issue 6123 - Allow DNA plugin to reuse global config for bind method and connection protocol (#6124)
  * Issue 6159 - Add a test to check URP add and delete conflict (#6160)
  * Issue 6151 - Use %bcond macro for conditional builds in the spec file
  * Issue 6172 - RFE: improve the performance of evaluation of filter component when tested against a large valueset (like group members) (#6173)
  * Bump version to 3.1.0
  * fix issue6165 (#6167)</changelog>
  <changelog author="Thorsten Kukuk &lt;kukuk@suse.com&gt;" date="1722600000">- dirsrv-user.conf: Remove explicit dirsrv group definition, it's
  already specified implicit with "u dirsrv" and not all tools like
  duplicate group entries.</changelog>
  <changelog author="william.brown@suse.com" date="1725451200">- bsc#1229948 - CVE-2024-43806 - rustix::fs::Dir iterator with the linux_raw backend can cause memory explosion
- Update to version 3.1.1~git13.a9c7ff9:
  * Issue 2472 - Add a CI test (#6314)
  * Issue 6276 - Schema lib389 object is not keeping custom schema data upon editing (#6279)
  * Issue 3555 - UI - Fix audit issue with npm - micromatch (#6310)
  * Issue 5843 - Fix size formatting in dscreate output and enhance tests (#6309)
  * Issue 6301 - Fix long delay when setting replication agreement with dsconf (#6303)
  * Issue 6280 - Changelog trims updates from a given RID even if a consumer has not received any of them (#6281)
  * Issue 6296 - basic_test.py::test_conn_limits fails in main branch (#6300)
  * Issue 6295 - test_password_modify_non_utf8 should set default password storage scheme
  * Issue 6294 - Nightly copr builds are failing
  * Issue 6288 - dsidm crash with account policy when alt-state-attr is disabled (#6292)
  * Issue 2324 - Add a CI test (#6289)
  * Issue 6284 - BUG - freelist ordering causes high wtime (#6285)
  * Issue 6282 - BUG - out of tree build fails (#6283)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1732190400">- Add 389-ds-link-icu-uc.patch: properly link to icu-uc as well,
  which is no longer transparently added when linking icu-i18n
  (boo#1233578).</changelog>
</package>
<package pkgid="ee32ddc9a52fb6a1c957278109b9fd2f26e38856f47b7340341d4afceb2101cc13d3ad0617a31cfe983381907547bbf95503099fa6594fc8a133a6953f718d1f" name="389-ds-debuginfo" arch="x86_64">
  <version epoch="0" ver="3.1.1~git57.65773c3" rel="1.0.4.1.sr20241103"/>
  <changelog author="william.brown@suse.com" date="1662552000">- Update to version 2.3.0~git0.3db81913e:
  * Bump version to 2.3.0
  * Issue 5012 - Migrate pcre to pcre2 - remove match limit
  * Update CI tests
  * Issue 5356 - Make Rust non-optional and update default password storage scheme
  * Issue 5012 - Migrate pcre to pcre2
  * Issue 5428 - Fix regression with nscpEntryWsi computation
  * Fix missing 'not' in description (closes #5423) (#5424)
  * Issue 5421 - CI - makes replication/acceptance_test.py::test_modify_entry more robust (#5422)
  * Issue 3903 - fix repl keep alive event interval
  * Issue 5418 - Sync_repl may crash while managing invalid cookie (#5420)</changelog>
  <changelog author="william.brown@suse.com" date="1666353600">- Update to version 2.3.0~git22.8fedec0:
  * Issue 5495 - RFE - skip dds during migration. (#5496)
  * Issue 5491 - UI - Add rework and finish jpegPhoto functionality (#5492)
  * Issue 5368 - Retro Changelog trimming does not work (#5486)
  * Issue 5487 - Fix various issues with logconv.pl
  * Issue 5476 - RFE - add memberUid read aci by default (#5477)
  * Issue 5482 - lib389 - Can not enable replication with a mixed case suffix
  * Issue 5478 - Random crash in connection code during server shutdown (#5479)
  * Issue 3061 - RFE - Add password policy debug log level
  * Issue 5302 - Release tarballs don't contain cockpit webapp
  * Issue 5262 - high contention in find_entry_internal_dn on mixed load (#5264)</changelog>
  <changelog author="william.brown@suse.com" date="1679486400">- Update to version 2.3.2~git44.5e4551e:
  * Issue 4812 - Listener thread does not scale with a high num of established connections (#5706)
  * Issue 4812 - Listener thread does not scale with a high num of established connections (#5681)
  * Bump webpack from 5.75.0 to 5.76.0 in /src/cockpit/389-console (#5699)
  * Issue 5598 - (3rd) In 2.x, SRCH throughput drops by 10% because of handling of referral (#5692)
  * Issue 5598 - (2nd) In 2.x, SRCH throughput drops by 10% because of handling of referral (#5691)
  * Issue 5687 - UI - sensitive information disclosure
  * Issue 5661 - LMDB hangs while Rebuilding the replication changelog RUV (#5676)
  * Issue 5554 - Add more tests to security_basic_test suite
  * Issue 4583 - Update specfile to skip checks of ASAN builds
  * Issue 4758 - Add tests for WebUI</changelog>
  <changelog author="william.brown@suse.com" date="1681214400">- bsc#1210027 - apply upstream fix for setuptools
- Update to version 2.3.2~git53.a01e230:
  * Issue 5705 - Add config parameter to close client conns on failed bind (#5712)
  * Issue 4758 - Add tests for WebUI
  * Issue 5643 - Memory leak in entryrdn during delete (#5717)
  * Issue 5714 - UI - fix typo, db settings, log settings, and LDAP editor paginations
  * Issue 5701 - CLI - Fix referral mode setting (#5708)
  * Bump openssl from 0.10.45 to 0.10.48 in /src (#5709)
  * Issue 5710 - subtree search statistics for index lookup does not report ancestorid/entryrdn lookups (#5711)
  * Issue 5697 - Obsolete nsslapd-ldapimaprootdn attribute (#5698)
  * Issue 1081 - Stop schema replication from overwriting x-origin
  * Issue 4812 - Listener thread does not scale with a high num of established connections (#5706)</changelog>
  <changelog author="pgajdos@suse.com" date="1681819200">- python-six is not required</changelog>
  <changelog author="william.brown@suse.com" date="1682510400">- Update to version 2.4.0~git0.87efeb2:
  * Bump version to 2.4.0
  * Issue 5156 - RFE that implement slapi_memberof (#5694)
  * Issue 5734 - RFE - Exclude pwdFailureTime and ContextCSN (#5735)
  * Issue 5726 - ns-slapd crashing in ldbm_back_upgradednformat (#5727)
  * Issue 4758 - Add tests for WebUI
  * Issue 5718 - Memory leak in connection table (#5719)
  * Issue 5705 - Add config parameter to close client conns on failed bind (#5712)
  * Issue 4758 - Add tests for WebUI
  * Issue 5643 - Memory leak in entryrdn during delete (#5717)
  * Issue 5714 - UI - fix typo, db settings, log settings, and LDAP editor paginations</changelog>
  <changelog author="william.brown@suse.com" date="1684929600">- Update to version 2.4.0~git18.37ec5cd:
  * Issue 5751 - Cleanallruv task crashes on consumer (#5775)
  * Bump version to 2.4.1
  * Issue 5770 - RFE - Extend Password Adminstrators to allow skipping password info updates
  * Issue 5768 - CLI/UI - cert checks are too strict, and other issues
  * Issue 5722 - fix compilation warnings (#5771)
  * Issue 5765 - Improve installer selinux handling
  * Issue 152 - RFE - Add support for LDAP alias entries
  * Issue 5052 - BUG - Custom filters prevented entry deletion (#5060)
  * Issue 5752 - RFE - Provide a history for LastLoginTime (#5753)
  * Issue 5722 - RFE When a filter contains 'nsrole', improve response time by rewriting the filter (#5723)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1691668800">- Update to version 2.4.0~git69.89c2de5:
  * Issue 4551 - Part 2 - Fix build warning of previous PR (#5888)
  * Issue 5834 - AccountPolicyPlugin erroring for some users (#5866)
  * Issue 5872 - part 2 - fix is_dbi regression (#5887)
  * Issue 4758 - Add tests for WebUI
  * Issue 5848 - dsconf should prevent setting the replicaID for hub and consumer roles (#5849)
  * Issue 5883 - Remove connection mutex contention risk on autobind (#5886)
  * Issue 5872 - `dbscan()` in lib389 can return bytes
  * Bump version to 2.4.3
  * Issue 5729 - Memory leak in factory_create_extension (#5814)
  * Issue 5870 - ns-slapd crashes at startup if a backend has no suffix (#5871)</changelog>
  <changelog author="william.brown@suse.com" date="1692014400">- Update to version 2.4.0~git74.4297d88:
  * issue 5890 part 2 - Need a tester for testing multiple listening thread feature (#5897)
  * Issue i5846 - Crash when lmdb import is aborted (#5881)
  * Issue 5894 - lmdb import error fails with Could not store the entry (#5895)
  * Issue 5890 - Need a tester for testing multiple listening thread feature (#5891)
  * Issue 5082 - slugify: ModuleNotFoundError when running test cases</changelog>
  <changelog author="william.brown@suse.com" date="1701259200">- Update to version 2.4.0~git113.84a845c:
  * Issue 5980 - Improve instance startup failure handling (#5991)
  * Issue 5976 - Fix freeipa install regression with lmdb (#5977)
  * Issue 5984 - Crash when paged result search are abandoned - fix2 (#5987)
  * Issue 5984 - Crash when paged result search are abandoned (#5985)
  * Issue 5947 - CI test_vlv_recreation_reindex fails on LMDB (#5979)
  * Bump version to 2.5.0
  * Issue 5971 - CLI - Fix password prompt for repl status (#5972)
  * Issue 5973 - Fix fedora cop RawHide builds (#5974)
  * Revert "Issue 5761 - Worker thread dynamic management (#5796)" (#5970)
  * Issue 5966 - CLI - Custom schema object is removed on a failed edit (#5967)
  * Issue 5786 - Update permissions for Release workflow
  * Issue 5960 - Subpackages should have more strict interdependencies
  * Issue 3555 - UI - Fix audit issue with npm - babel/traverse (#5959)
  * Issue 4843 - Fix dscreate create-template issue (#5950)
  * bugfix for --passwd-file not working on latest version (#5934)
  * Issue 5843 - dsconf / dscreate should be able to handle lmdb parameters (#5943)
  * Bump postcss from 8.4.24 to 8.4.31 in /src/cockpit/389-console (#5945)
  * Issue 5938 - Attribute Names changed to lowercase after adding the Attributes (#5940)
  * issue 5924 - ASAN server build crash when looping opening/closing connections (#5926)
  * Issue 1925 - Add a CI test (#5936)
  * Issue 5732 - Localizing Cockpit's 389ds Plugin using CockpitPoPlugin (#5764)
  * Issue 1870 - Add a CI test (#5929)
  * Issue 843 - Add a warning to slapi_valueset_add_value_ext (#5925)
  * Issue 5761 - Worker thread dynamic management (#5796)
  * Issue 1802 - Improve ldclt man page (#5928)
  * Issue 1456 - Add a CI test that verifies there is no issue (#5927)
  * Issue 1317 - Add a CI test (#5923)
  * Issue 1081 - CI - Add more tests for overwriting x-origin issue (#5815)
  * Issue 1115 - Add a CI test (#5913)
  * Issue 5848 - Fix condition and add a CI test (#5916)
  * Issue 5848 - Fix condition and add a CI test (#5916)
  * Issue 5914 - UI - server settings page validation improvements and db index fixes
  * Issue 5909 - Multi listener hang with 20k connections (#5917)
  * Issue 5902 - Fix previous commit regression (#5919)
  * pass instance correctly to ds_is_older (#5903)
  * Issue 5909 - Multi listener hang with 20k connections (#5910)
  * Issue 5722 - improve testcase (#5904)
  * Issue 5203 - outdated version in provided metadata for lib389
  * Bug Description:</changelog>
  <changelog author="William Brown &lt;william.brown@suse.com&gt;" date="1702468800">- Update to support newer obs-service-cargo-vendor</changelog>
  <changelog author="william.brown@suse.com" date="1705492800">- Update to version 2.4.0~git126.5936946:
  * Issue 6028 - vlv index keys inconsistencies (#6031)
  * Issue 5989 - RFE support of inChain Matching Rule (#5990)
  * Issue 6022 - lmdb inconsistency between vlv index and vlv cache names (#6026)
  * Issue 6015 - Fix typo remeber (#6014)
  * Issue 6016 - Pin upload/download artifacts action to v3
  * Issue 5939 - During an update, if the target entry is reverted in the entry cache, the server should not retry to lock it (#6007)
  * Issue 4673 - Update Rust crates
  * Issue 6004 - idletimeout may be ignored (#6005)
  * Issue 5954 - Disable Transparent Huge Pages
  * Issue 5997 - test_inactivty_and_expiration CI testcase is wrong (#5999)
  * Issue 5993 - Fix several race condition around CI tests (#5996)
  * Issue 5944 - Reversion of the entry cache should be limited to BETXN plugin failures (#5994)
  * Bump openssl from 0.10.55 to 0.10.60 in /src (#5995)</changelog>
  <changelog author="william.brown@suse.com" date="1706875200">- Update to version 3.0.1~git1.1f95b57:
  * Issue 6061 - Certificate lifetime displayed as NaN
  * Bump version to 3.0.1
  * Issue 6043, 6044 - Enhance Rust and JS bundling and add SPDX licenses for both (#6045)
  * Issue 3555 - Remove audit-ci from dependencies (#6056)
  * Issue 6052 - Paged results test sets hostname to `localhost` on test collection
  * Issue 6051 - Drop unused pytest markers
  * Issue 6049 - lmdb - changelog is wrongly recreated by reindex task (#6050)
  * Issue 6047 - Add a check for tagged commits
  * Issue 6041 - dscreate ds-root - accepts relative path (#6042)
  * Switch default backend to lmdb and bump version to 3.0 (#6013)
  * Issue 6032 - Replication broken after backup restore (#6035)
  * Issue 6037 - Server crash at startup in vlvIndex_delete (#6038)
  * Issue 6034 - Change replica_id from str to int</changelog>
  <changelog author="william.brown@suse.com" date="1713873600">- Update to version 3.0.1~git37.55529d1:
  * Issue 6082 - Remove explicit dependencies toward libdb - revert default (#6145)
  * Issue 6141 - freeipa test_topology_TestCASpecificRUVs is failing (#6144)
  * Issue 6142 - [RFE] Add LMDB configuration related checks into Healthcheck tool (#6143)
  * Issue 6136 - failure in freeipa tests (#6137)
  * Issue 6133 - Move slapi_pblock_set_flag_operation_notes() to slapi-plugin.h
  * Issue 5105 - lmdb - Cannot create entries with long rdn - fix covscan (#6131)
  * Issue i6057 - Fix3 - Fix covscan issues (#6127)
  * Issue 6105 - lmdb - Cannot create entries with long rdn (#6130)
  * Issue 6125 - dscreate interactive fails when chosing mdb backend (#6126)
  * Issue 6080 - ns-slapd crash in referint_get_config (#6081)
  * Issue 6110 - Typo in Account Policy plugin message
  * Issue 6057 - vlv search may result wrong result with lmdb - Fix 2 (#6121)
  * Issue 6119 - Synchronise accept_thread with slapd_daemon (#6120)
  * Issue 6117 - Fix the UTC offset print (#6118)
  * Issue 6112 - RFE - add new operation note for MFA authentications
  * Issue 5842 - Add log buffering to audit log
  * Issue 5305 - OpenLDAP version autodetection doesn't work
  * Issue 3527 - Support HAProxy and Instance on the same machine configuration (#6107)
  * Issue 6057 - vlv search may result wrong result with lmdb (#6091)
  * Issue 6103 - New connection timeout error breaks errormap (#6104)
  * Issue 6086 - Ambiguous warning about SELinux in dscreate for non-root user
  * Issue 6092 - passwordHistory is not updated with a pre-hashed password (#6093)
  * Issue 6067 - Improve dsidm CLI No Such Entry handling (#6079)
  * Issue 6096 - Improve connection timeout error logging (#6097)
  * Issue 5647 - covscan: memory leak in audit log when adding entries
  * Issue 6094 - Add coverity scan workflow
  * Issue 6067 - Add hidden -v and -j options to each CLI subcommand (#6088)
  * Issue 5487 - Fix various isses with logconv.pl (#6085)
  * Issue 5962 - Rearrange includes for 32-bit support logic
  * Issue 6046 - Make dscreate to work during kickstart installations
  * Issue 6082 - Remove explicit dependencies toward libdb (#6083)
  * Issue 6073 - Improve error log when running out of memory (#6084)
  * Issue 6071 - Instance creation/removal is slow
  * Issue 6010 - 389 ds ignores nsslapd-maxdescriptors (#6027)
  * Issue 6075 - Ignore build artifacts (#6076)
  * Issue 6068 - Add dscontainer stop function</changelog>
  <changelog author="william.brown@suse.com" date="1715688000">- Update to version 3.0.1~git39.e24615f:
  * Issue 6142 - Fix CI tests (#6161)
  * Issue 6157 - Cockipt crashes when getting replication status if topology contains an old 389ds version (#6158)</changelog>
  <changelog author="william.brown@suse.com" date="1722427200">- Update to version 3.1.1~git0.aef1668:
  * Bump version to 3.1.1
  * Issue 6256 - nsslapd-numlisteners limit is not enforced (#6257)
  * Issue 5327 - Fix test metadata
  * Security fix for CVE-2024-6237
  * Security fix for CVE-2024-5953
  * Security fix for CVE-2024-3657
  * Security fix for CVE-2024-2199
  * Issue 6256 - nsslapd-numlisteners limit is not enforced
  * Issue 6265 - lmdb - missing entries in range searches (#6266)
  * Issue 5853 - Update Cargo.lock
  * Bump openssl from 0.10.64 to 0.10.66 in /src
  * Issue 6245 - Revert __COVERITY__ ifndef (#6268)
  * Issue 6248 - fix fanalyzer warnings (#6253)
  * Issue 6238 - Fix test_audit_json_logging CI test regression (#6264)
  * Issue 6254 - Enabling replication for a sub suffix crashes browser (#6255)
  * Issue 6155 - ldap-agent fails to start because of permission error (#6179)
  * Issue 6238 - RFE - add option to write audit log in JSON format
  * Issue 6216 - CI test_fast_slow_import sometime fail (#6247)
  * Issue 6245 - covscan fixes (#6246)
  * Issue 6241 - Add support for CRYPT-YESCRYPT (#6242)
  * Issue 6229 - After an initial failure, subsequent online backups fail (#6230)
  * Issue 6236 - rpm: fix compatibility with RPM 4.20
  * Issue 6227 - dsconf schema does not show inChain matching rule (#6228)
  * Issue 6233 - CI test wait_for_async_feature_test sometime fails (#6234)
  * Bump ws from 7.5.9 to 7.5.10 in /src/cockpit/389-console
  * Issue 6224 - d2entry - Could not open id2entry err 0 - at startup when having sub-suffixes (#6225)
  * Issue 6222 - CI test acl/test_timeofday_keyword sometime fails (#6223)
  * Issue 6120 - /usr/lib64/dirsrv/plugins/libback-bdb.so has an invalid-looking DT_RPATH: /usr/lib/dirsrv
  * Issue 5772 - ONE LEVEL search fails to return sub-suffixes (#6219)
  * Issue 6183 - Slow ldif2db import on a newly created BDB backend (#6208)
  * Issue 6207 - Random crash in test_long_rdn CI test (#6215)
  * Bump braces from 3.0.2 to 3.0.3 in /src/cockpit/389-console
  * Issue 6191 - Node.js 16 actions are deprecated
  * Issue 6199 - unprotected search query during certificate based authentication (#6205)
  * Issue 6200 - Disable WebUI CI tests
  * Issue 6192 - Test failure: test_match_large_valueset
  * Issue 6181 - RFE - Allow system to manage uid/gid at startup
  * Issue 6188 - Add nsslapd-haproxy-trusted-ip to cn=schema (#6201)
  * Issue 6181 - RFE - Allow system to manage uid/gid at startup (#6182)
  * Issue 6170 - audit log buffering doesn't handle large updates
  * Issue 6193 - Test failure: test_tls_command_returns_error_text
  * Issue 6177 - Spec file cleanup
  * Issue 6189 - CI tests fail with `[Errno 2] No such file or directory: '/var/cache/dnf/metadata_lock.pid'`
  * Issue 6175 - Referential integrity plugin - in referint_thread_func does not handle null from ldap_utf8strtok (#6168)
  * Change default salt sizes generated in crypt_pwd (#6185)
  * Issue 6123 - Allow DNA plugin to reuse global config for bind method and connection protocol (#6124)
  * Issue 6159 - Add a test to check URP add and delete conflict (#6160)
  * Issue 6151 - Use %bcond macro for conditional builds in the spec file
  * Issue 6172 - RFE: improve the performance of evaluation of filter component when tested against a large valueset (like group members) (#6173)
  * Bump version to 3.1.0
  * fix issue6165 (#6167)</changelog>
  <changelog author="Thorsten Kukuk &lt;kukuk@suse.com&gt;" date="1722600000">- dirsrv-user.conf: Remove explicit dirsrv group definition, it's
  already specified implicit with "u dirsrv" and not all tools like
  duplicate group entries.</changelog>
  <changelog author="william.brown@suse.com" date="1725451200">- bsc#1229948 - CVE-2024-43806 - rustix::fs::Dir iterator with the linux_raw backend can cause memory explosion
- Update to version 3.1.1~git13.a9c7ff9:
  * Issue 2472 - Add a CI test (#6314)
  * Issue 6276 - Schema lib389 object is not keeping custom schema data upon editing (#6279)
  * Issue 3555 - UI - Fix audit issue with npm - micromatch (#6310)
  * Issue 5843 - Fix size formatting in dscreate output and enhance tests (#6309)
  * Issue 6301 - Fix long delay when setting replication agreement with dsconf (#6303)
  * Issue 6280 - Changelog trims updates from a given RID even if a consumer has not received any of them (#6281)
  * Issue 6296 - basic_test.py::test_conn_limits fails in main branch (#6300)
  * Issue 6295 - test_password_modify_non_utf8 should set default password storage scheme
  * Issue 6294 - Nightly copr builds are failing
  * Issue 6288 - dsidm crash with account policy when alt-state-attr is disabled (#6292)
  * Issue 2324 - Add a CI test (#6289)
  * Issue 6284 - BUG - freelist ordering causes high wtime (#6285)
  * Issue 6282 - BUG - out of tree build fails (#6283)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1732190400">- Add 389-ds-link-icu-uc.patch: properly link to icu-uc as well,
  which is no longer transparently added when linking icu-i18n
  (boo#1233578).</changelog>
  <changelog author="william.brown@suse.com" date="1732881600">- Remove 389-ds-link-icu-uc.patch - upstreamed
- Update to version 3.1.1~git57.65773c3:
  * Issue 6340 - RFE - extract keys once (#6413)
  * Issue 6415 - BUG - Incorrect icu linking (#6416)
  * Issue 6420 - Update dsidm user get_dn test (#6421)
  * Issue 6258 - Resolve race condition for two tests in health_config.py
  * Bump cross-spawn from 7.0.3 to 7.0.6 in /src/cockpit/389-console (#6407)
  * Issue 6386 - backup/restore broken after db log rotation (#6406)
  * Issue 6401 - Remove logging macros
  * Issue 6404 - UI - Add npm pretter package
  * Issue 6374 - nsslapd-mdb-max-dbs autotuning doesn't work properly (#6400)
  * Issue 5842 - Add log buffering for error log
  * Issue 6397 - Remove deprecated setting for HR time stamps in logs
  * Issue 6390 - Adjust cleanAllRUV max per txn and interval limits
  * Issue 6349 - RFE - extract keys once (#6363) (#6394)
  * Issue 6387 - Use make macro in the spec file
  * Issue 6359 - Add exception to GPL license in license tag
  * Issue 6381 - CleanAllRUV - move changelog purging to the very end of the task
  * Issue 5920 - pamModuleIsThreadSafe is missing in the schema
  * Issue 6377 - syntax error in setup.py (#6378)
  * Issue 6349 - RFE - Use previously extracted key path (#6363)
  * Issue 6067 - Update dsidm to prioritize basedn from .dsrc over interactive input (#6362)
  * Issue 6347 - better fix for desyncronized vlv cache (#6358)
  * Issue 6243 - dsctl bdb2mdb should cleanly fail if bundled libdb is not available (#6351)
  * Issue 6331 - UI - Instance fails to load when DB backup directory doesn't exist (#6332)
  * Issue 6356 - On LMDB, after an update the impact VLV index, the vlv recno cache is not systematically cleared (#6357)
  * Issue 6056 - WebUI supports only instances with BDB (#6299)
  * Issue 6339 - Address Coverity scan issues in memberof and bdb_layer (#6353)
  * Issue 6328 - vlv control may not be logged (#6354)
  * Issue 6347 - VLV search sometime fails with operation error (#6349)
  * Issue 6343 - Improve online import robustness when the server is under load
  * Issue 6345 - Ensure all slapi_log_err calls end format strings with newline character \n (#6346)
  * Issue 6064 - bdb2mdb shows errors (#6341)
  * Issue 6336 - Fix failing CI tests (roles) due to slow import (#6337)
  * Fix duplicate detection logic by ensuring exact match on string length (#6333)
  * Issue 6304 - RFE when memberof is enabled, defer updates of members from the update of the group (#6305)
  * Issue 6329 - lmdb typo in error log notice message (#6330)
  * Issue 6324 - Provide more information in the error message during setup_ol_tls_conn() (#6325)
  * Issue 5965 - UI, CLI - Fix Account Policy Plugin functionality issues (#6323)
  * Issue 6188 - Check if nsslapd-haproxy-trusted-ip attribute is returned in default schema
  * Issue 6319 - bdb subpackage has `%description` in the wrong place
  * Issue 6321 - lib389 get_db_lib function may returns the wrong db type (#6322)
  * Issue 6245 - Fix some other coverity scan regressions (#6273)
  * Issue 6316 - lmdb reindex is broken if index type is specified (#6318)
  * Issue 6090 - Fix dbscan options and man pages (#6315)
  * Issue 6307 - Wrong set of entries returned for some search filters (#6308)</changelog>
</package>
<package pkgid="5291b83f0a2fca156f67ea026382a3128f8f3a1359fdaeb4ecccde072e7df4ab2bd11df1b557351f85f4986be977e4441cc63c2c5a4550458858e57521aa6bdb" name="389-ds-debugsource" arch="x86_64">
  <version epoch="0" ver="3.1.1~git13.a9c7ff9" rel="2.0.2.1.sr20241103"/>
  <changelog author="William Brown &lt;william.brown@suse.com&gt;" date="1660132800">- Update _constraints due to random build failures caused by OBS environmental
  issues that aren't out fault. (out of disk, systemic builder issues).
- Add debugging about the environment to assist with OBS randomly failing
  in the future.</changelog>
  <changelog author="william.brown@suse.com" date="1662552000">- Update to version 2.3.0~git0.3db81913e:
  * Bump version to 2.3.0
  * Issue 5012 - Migrate pcre to pcre2 - remove match limit
  * Update CI tests
  * Issue 5356 - Make Rust non-optional and update default password storage scheme
  * Issue 5012 - Migrate pcre to pcre2
  * Issue 5428 - Fix regression with nscpEntryWsi computation
  * Fix missing 'not' in description (closes #5423) (#5424)
  * Issue 5421 - CI - makes replication/acceptance_test.py::test_modify_entry more robust (#5422)
  * Issue 3903 - fix repl keep alive event interval
  * Issue 5418 - Sync_repl may crash while managing invalid cookie (#5420)</changelog>
  <changelog author="william.brown@suse.com" date="1666353600">- Update to version 2.3.0~git22.8fedec0:
  * Issue 5495 - RFE - skip dds during migration. (#5496)
  * Issue 5491 - UI - Add rework and finish jpegPhoto functionality (#5492)
  * Issue 5368 - Retro Changelog trimming does not work (#5486)
  * Issue 5487 - Fix various issues with logconv.pl
  * Issue 5476 - RFE - add memberUid read aci by default (#5477)
  * Issue 5482 - lib389 - Can not enable replication with a mixed case suffix
  * Issue 5478 - Random crash in connection code during server shutdown (#5479)
  * Issue 3061 - RFE - Add password policy debug log level
  * Issue 5302 - Release tarballs don't contain cockpit webapp
  * Issue 5262 - high contention in find_entry_internal_dn on mixed load (#5264)</changelog>
  <changelog author="william.brown@suse.com" date="1679486400">- Update to version 2.3.2~git44.5e4551e:
  * Issue 4812 - Listener thread does not scale with a high num of established connections (#5706)
  * Issue 4812 - Listener thread does not scale with a high num of established connections (#5681)
  * Bump webpack from 5.75.0 to 5.76.0 in /src/cockpit/389-console (#5699)
  * Issue 5598 - (3rd) In 2.x, SRCH throughput drops by 10% because of handling of referral (#5692)
  * Issue 5598 - (2nd) In 2.x, SRCH throughput drops by 10% because of handling of referral (#5691)
  * Issue 5687 - UI - sensitive information disclosure
  * Issue 5661 - LMDB hangs while Rebuilding the replication changelog RUV (#5676)
  * Issue 5554 - Add more tests to security_basic_test suite
  * Issue 4583 - Update specfile to skip checks of ASAN builds
  * Issue 4758 - Add tests for WebUI</changelog>
  <changelog author="william.brown@suse.com" date="1681214400">- bsc#1210027 - apply upstream fix for setuptools
- Update to version 2.3.2~git53.a01e230:
  * Issue 5705 - Add config parameter to close client conns on failed bind (#5712)
  * Issue 4758 - Add tests for WebUI
  * Issue 5643 - Memory leak in entryrdn during delete (#5717)
  * Issue 5714 - UI - fix typo, db settings, log settings, and LDAP editor paginations
  * Issue 5701 - CLI - Fix referral mode setting (#5708)
  * Bump openssl from 0.10.45 to 0.10.48 in /src (#5709)
  * Issue 5710 - subtree search statistics for index lookup does not report ancestorid/entryrdn lookups (#5711)
  * Issue 5697 - Obsolete nsslapd-ldapimaprootdn attribute (#5698)
  * Issue 1081 - Stop schema replication from overwriting x-origin
  * Issue 4812 - Listener thread does not scale with a high num of established connections (#5706)</changelog>
  <changelog author="pgajdos@suse.com" date="1681819200">- python-six is not required</changelog>
  <changelog author="william.brown@suse.com" date="1682510400">- Update to version 2.4.0~git0.87efeb2:
  * Bump version to 2.4.0
  * Issue 5156 - RFE that implement slapi_memberof (#5694)
  * Issue 5734 - RFE - Exclude pwdFailureTime and ContextCSN (#5735)
  * Issue 5726 - ns-slapd crashing in ldbm_back_upgradednformat (#5727)
  * Issue 4758 - Add tests for WebUI
  * Issue 5718 - Memory leak in connection table (#5719)
  * Issue 5705 - Add config parameter to close client conns on failed bind (#5712)
  * Issue 4758 - Add tests for WebUI
  * Issue 5643 - Memory leak in entryrdn during delete (#5717)
  * Issue 5714 - UI - fix typo, db settings, log settings, and LDAP editor paginations</changelog>
  <changelog author="william.brown@suse.com" date="1684929600">- Update to version 2.4.0~git18.37ec5cd:
  * Issue 5751 - Cleanallruv task crashes on consumer (#5775)
  * Bump version to 2.4.1
  * Issue 5770 - RFE - Extend Password Adminstrators to allow skipping password info updates
  * Issue 5768 - CLI/UI - cert checks are too strict, and other issues
  * Issue 5722 - fix compilation warnings (#5771)
  * Issue 5765 - Improve installer selinux handling
  * Issue 152 - RFE - Add support for LDAP alias entries
  * Issue 5052 - BUG - Custom filters prevented entry deletion (#5060)
  * Issue 5752 - RFE - Provide a history for LastLoginTime (#5753)
  * Issue 5722 - RFE When a filter contains 'nsrole', improve response time by rewriting the filter (#5723)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1691668800">- Update to version 2.4.0~git69.89c2de5:
  * Issue 4551 - Part 2 - Fix build warning of previous PR (#5888)
  * Issue 5834 - AccountPolicyPlugin erroring for some users (#5866)
  * Issue 5872 - part 2 - fix is_dbi regression (#5887)
  * Issue 4758 - Add tests for WebUI
  * Issue 5848 - dsconf should prevent setting the replicaID for hub and consumer roles (#5849)
  * Issue 5883 - Remove connection mutex contention risk on autobind (#5886)
  * Issue 5872 - `dbscan()` in lib389 can return bytes
  * Bump version to 2.4.3
  * Issue 5729 - Memory leak in factory_create_extension (#5814)
  * Issue 5870 - ns-slapd crashes at startup if a backend has no suffix (#5871)</changelog>
  <changelog author="william.brown@suse.com" date="1692014400">- Update to version 2.4.0~git74.4297d88:
  * issue 5890 part 2 - Need a tester for testing multiple listening thread feature (#5897)
  * Issue i5846 - Crash when lmdb import is aborted (#5881)
  * Issue 5894 - lmdb import error fails with Could not store the entry (#5895)
  * Issue 5890 - Need a tester for testing multiple listening thread feature (#5891)
  * Issue 5082 - slugify: ModuleNotFoundError when running test cases</changelog>
  <changelog author="william.brown@suse.com" date="1701259200">- Update to version 2.4.0~git113.84a845c:
  * Issue 5980 - Improve instance startup failure handling (#5991)
  * Issue 5976 - Fix freeipa install regression with lmdb (#5977)
  * Issue 5984 - Crash when paged result search are abandoned - fix2 (#5987)
  * Issue 5984 - Crash when paged result search are abandoned (#5985)
  * Issue 5947 - CI test_vlv_recreation_reindex fails on LMDB (#5979)
  * Bump version to 2.5.0
  * Issue 5971 - CLI - Fix password prompt for repl status (#5972)
  * Issue 5973 - Fix fedora cop RawHide builds (#5974)
  * Revert "Issue 5761 - Worker thread dynamic management (#5796)" (#5970)
  * Issue 5966 - CLI - Custom schema object is removed on a failed edit (#5967)
  * Issue 5786 - Update permissions for Release workflow
  * Issue 5960 - Subpackages should have more strict interdependencies
  * Issue 3555 - UI - Fix audit issue with npm - babel/traverse (#5959)
  * Issue 4843 - Fix dscreate create-template issue (#5950)
  * bugfix for --passwd-file not working on latest version (#5934)
  * Issue 5843 - dsconf / dscreate should be able to handle lmdb parameters (#5943)
  * Bump postcss from 8.4.24 to 8.4.31 in /src/cockpit/389-console (#5945)
  * Issue 5938 - Attribute Names changed to lowercase after adding the Attributes (#5940)
  * issue 5924 - ASAN server build crash when looping opening/closing connections (#5926)
  * Issue 1925 - Add a CI test (#5936)
  * Issue 5732 - Localizing Cockpit's 389ds Plugin using CockpitPoPlugin (#5764)
  * Issue 1870 - Add a CI test (#5929)
  * Issue 843 - Add a warning to slapi_valueset_add_value_ext (#5925)
  * Issue 5761 - Worker thread dynamic management (#5796)
  * Issue 1802 - Improve ldclt man page (#5928)
  * Issue 1456 - Add a CI test that verifies there is no issue (#5927)
  * Issue 1317 - Add a CI test (#5923)
  * Issue 1081 - CI - Add more tests for overwriting x-origin issue (#5815)
  * Issue 1115 - Add a CI test (#5913)
  * Issue 5848 - Fix condition and add a CI test (#5916)
  * Issue 5848 - Fix condition and add a CI test (#5916)
  * Issue 5914 - UI - server settings page validation improvements and db index fixes
  * Issue 5909 - Multi listener hang with 20k connections (#5917)
  * Issue 5902 - Fix previous commit regression (#5919)
  * pass instance correctly to ds_is_older (#5903)
  * Issue 5909 - Multi listener hang with 20k connections (#5910)
  * Issue 5722 - improve testcase (#5904)
  * Issue 5203 - outdated version in provided metadata for lib389
  * Bug Description:</changelog>
  <changelog author="William Brown &lt;william.brown@suse.com&gt;" date="1702468800">- Update to support newer obs-service-cargo-vendor</changelog>
  <changelog author="william.brown@suse.com" date="1705492800">- Update to version 2.4.0~git126.5936946:
  * Issue 6028 - vlv index keys inconsistencies (#6031)
  * Issue 5989 - RFE support of inChain Matching Rule (#5990)
  * Issue 6022 - lmdb inconsistency between vlv index and vlv cache names (#6026)
  * Issue 6015 - Fix typo remeber (#6014)
  * Issue 6016 - Pin upload/download artifacts action to v3
  * Issue 5939 - During an update, if the target entry is reverted in the entry cache, the server should not retry to lock it (#6007)
  * Issue 4673 - Update Rust crates
  * Issue 6004 - idletimeout may be ignored (#6005)
  * Issue 5954 - Disable Transparent Huge Pages
  * Issue 5997 - test_inactivty_and_expiration CI testcase is wrong (#5999)
  * Issue 5993 - Fix several race condition around CI tests (#5996)
  * Issue 5944 - Reversion of the entry cache should be limited to BETXN plugin failures (#5994)
  * Bump openssl from 0.10.55 to 0.10.60 in /src (#5995)</changelog>
  <changelog author="william.brown@suse.com" date="1706875200">- Update to version 3.0.1~git1.1f95b57:
  * Issue 6061 - Certificate lifetime displayed as NaN
  * Bump version to 3.0.1
  * Issue 6043, 6044 - Enhance Rust and JS bundling and add SPDX licenses for both (#6045)
  * Issue 3555 - Remove audit-ci from dependencies (#6056)
  * Issue 6052 - Paged results test sets hostname to `localhost` on test collection
  * Issue 6051 - Drop unused pytest markers
  * Issue 6049 - lmdb - changelog is wrongly recreated by reindex task (#6050)
  * Issue 6047 - Add a check for tagged commits
  * Issue 6041 - dscreate ds-root - accepts relative path (#6042)
  * Switch default backend to lmdb and bump version to 3.0 (#6013)
  * Issue 6032 - Replication broken after backup restore (#6035)
  * Issue 6037 - Server crash at startup in vlvIndex_delete (#6038)
  * Issue 6034 - Change replica_id from str to int</changelog>
  <changelog author="william.brown@suse.com" date="1713873600">- Update to version 3.0.1~git37.55529d1:
  * Issue 6082 - Remove explicit dependencies toward libdb - revert default (#6145)
  * Issue 6141 - freeipa test_topology_TestCASpecificRUVs is failing (#6144)
  * Issue 6142 - [RFE] Add LMDB configuration related checks into Healthcheck tool (#6143)
  * Issue 6136 - failure in freeipa tests (#6137)
  * Issue 6133 - Move slapi_pblock_set_flag_operation_notes() to slapi-plugin.h
  * Issue 5105 - lmdb - Cannot create entries with long rdn - fix covscan (#6131)
  * Issue i6057 - Fix3 - Fix covscan issues (#6127)
  * Issue 6105 - lmdb - Cannot create entries with long rdn (#6130)
  * Issue 6125 - dscreate interactive fails when chosing mdb backend (#6126)
  * Issue 6080 - ns-slapd crash in referint_get_config (#6081)
  * Issue 6110 - Typo in Account Policy plugin message
  * Issue 6057 - vlv search may result wrong result with lmdb - Fix 2 (#6121)
  * Issue 6119 - Synchronise accept_thread with slapd_daemon (#6120)
  * Issue 6117 - Fix the UTC offset print (#6118)
  * Issue 6112 - RFE - add new operation note for MFA authentications
  * Issue 5842 - Add log buffering to audit log
  * Issue 5305 - OpenLDAP version autodetection doesn't work
  * Issue 3527 - Support HAProxy and Instance on the same machine configuration (#6107)
  * Issue 6057 - vlv search may result wrong result with lmdb (#6091)
  * Issue 6103 - New connection timeout error breaks errormap (#6104)
  * Issue 6086 - Ambiguous warning about SELinux in dscreate for non-root user
  * Issue 6092 - passwordHistory is not updated with a pre-hashed password (#6093)
  * Issue 6067 - Improve dsidm CLI No Such Entry handling (#6079)
  * Issue 6096 - Improve connection timeout error logging (#6097)
  * Issue 5647 - covscan: memory leak in audit log when adding entries
  * Issue 6094 - Add coverity scan workflow
  * Issue 6067 - Add hidden -v and -j options to each CLI subcommand (#6088)
  * Issue 5487 - Fix various isses with logconv.pl (#6085)
  * Issue 5962 - Rearrange includes for 32-bit support logic
  * Issue 6046 - Make dscreate to work during kickstart installations
  * Issue 6082 - Remove explicit dependencies toward libdb (#6083)
  * Issue 6073 - Improve error log when running out of memory (#6084)
  * Issue 6071 - Instance creation/removal is slow
  * Issue 6010 - 389 ds ignores nsslapd-maxdescriptors (#6027)
  * Issue 6075 - Ignore build artifacts (#6076)
  * Issue 6068 - Add dscontainer stop function</changelog>
  <changelog author="william.brown@suse.com" date="1715688000">- Update to version 3.0.1~git39.e24615f:
  * Issue 6142 - Fix CI tests (#6161)
  * Issue 6157 - Cockipt crashes when getting replication status if topology contains an old 389ds version (#6158)</changelog>
  <changelog author="william.brown@suse.com" date="1722427200">- Update to version 3.1.1~git0.aef1668:
  * Bump version to 3.1.1
  * Issue 6256 - nsslapd-numlisteners limit is not enforced (#6257)
  * Issue 5327 - Fix test metadata
  * Security fix for CVE-2024-6237
  * Security fix for CVE-2024-5953
  * Security fix for CVE-2024-3657
  * Security fix for CVE-2024-2199
  * Issue 6256 - nsslapd-numlisteners limit is not enforced
  * Issue 6265 - lmdb - missing entries in range searches (#6266)
  * Issue 5853 - Update Cargo.lock
  * Bump openssl from 0.10.64 to 0.10.66 in /src
  * Issue 6245 - Revert __COVERITY__ ifndef (#6268)
  * Issue 6248 - fix fanalyzer warnings (#6253)
  * Issue 6238 - Fix test_audit_json_logging CI test regression (#6264)
  * Issue 6254 - Enabling replication for a sub suffix crashes browser (#6255)
  * Issue 6155 - ldap-agent fails to start because of permission error (#6179)
  * Issue 6238 - RFE - add option to write audit log in JSON format
  * Issue 6216 - CI test_fast_slow_import sometime fail (#6247)
  * Issue 6245 - covscan fixes (#6246)
  * Issue 6241 - Add support for CRYPT-YESCRYPT (#6242)
  * Issue 6229 - After an initial failure, subsequent online backups fail (#6230)
  * Issue 6236 - rpm: fix compatibility with RPM 4.20
  * Issue 6227 - dsconf schema does not show inChain matching rule (#6228)
  * Issue 6233 - CI test wait_for_async_feature_test sometime fails (#6234)
  * Bump ws from 7.5.9 to 7.5.10 in /src/cockpit/389-console
  * Issue 6224 - d2entry - Could not open id2entry err 0 - at startup when having sub-suffixes (#6225)
  * Issue 6222 - CI test acl/test_timeofday_keyword sometime fails (#6223)
  * Issue 6120 - /usr/lib64/dirsrv/plugins/libback-bdb.so has an invalid-looking DT_RPATH: /usr/lib/dirsrv
  * Issue 5772 - ONE LEVEL search fails to return sub-suffixes (#6219)
  * Issue 6183 - Slow ldif2db import on a newly created BDB backend (#6208)
  * Issue 6207 - Random crash in test_long_rdn CI test (#6215)
  * Bump braces from 3.0.2 to 3.0.3 in /src/cockpit/389-console
  * Issue 6191 - Node.js 16 actions are deprecated
  * Issue 6199 - unprotected search query during certificate based authentication (#6205)
  * Issue 6200 - Disable WebUI CI tests
  * Issue 6192 - Test failure: test_match_large_valueset
  * Issue 6181 - RFE - Allow system to manage uid/gid at startup
  * Issue 6188 - Add nsslapd-haproxy-trusted-ip to cn=schema (#6201)
  * Issue 6181 - RFE - Allow system to manage uid/gid at startup (#6182)
  * Issue 6170 - audit log buffering doesn't handle large updates
  * Issue 6193 - Test failure: test_tls_command_returns_error_text
  * Issue 6177 - Spec file cleanup
  * Issue 6189 - CI tests fail with `[Errno 2] No such file or directory: '/var/cache/dnf/metadata_lock.pid'`
  * Issue 6175 - Referential integrity plugin - in referint_thread_func does not handle null from ldap_utf8strtok (#6168)
  * Change default salt sizes generated in crypt_pwd (#6185)
  * Issue 6123 - Allow DNA plugin to reuse global config for bind method and connection protocol (#6124)
  * Issue 6159 - Add a test to check URP add and delete conflict (#6160)
  * Issue 6151 - Use %bcond macro for conditional builds in the spec file
  * Issue 6172 - RFE: improve the performance of evaluation of filter component when tested against a large valueset (like group members) (#6173)
  * Bump version to 3.1.0
  * fix issue6165 (#6167)</changelog>
  <changelog author="Thorsten Kukuk &lt;kukuk@suse.com&gt;" date="1722600000">- dirsrv-user.conf: Remove explicit dirsrv group definition, it's
  already specified implicit with "u dirsrv" and not all tools like
  duplicate group entries.</changelog>
  <changelog author="william.brown@suse.com" date="1725451200">- bsc#1229948 - CVE-2024-43806 - rustix::fs::Dir iterator with the linux_raw backend can cause memory explosion
- Update to version 3.1.1~git13.a9c7ff9:
  * Issue 2472 - Add a CI test (#6314)
  * Issue 6276 - Schema lib389 object is not keeping custom schema data upon editing (#6279)
  * Issue 3555 - UI - Fix audit issue with npm - micromatch (#6310)
  * Issue 5843 - Fix size formatting in dscreate output and enhance tests (#6309)
  * Issue 6301 - Fix long delay when setting replication agreement with dsconf (#6303)
  * Issue 6280 - Changelog trims updates from a given RID even if a consumer has not received any of them (#6281)
  * Issue 6296 - basic_test.py::test_conn_limits fails in main branch (#6300)
  * Issue 6295 - test_password_modify_non_utf8 should set default password storage scheme
  * Issue 6294 - Nightly copr builds are failing
  * Issue 6288 - dsidm crash with account policy when alt-state-attr is disabled (#6292)
  * Issue 2324 - Add a CI test (#6289)
  * Issue 6284 - BUG - freelist ordering causes high wtime (#6285)
  * Issue 6282 - BUG - out of tree build fails (#6283)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1732190400">- Add 389-ds-link-icu-uc.patch: properly link to icu-uc as well,
  which is no longer transparently added when linking icu-i18n
  (boo#1233578).</changelog>
</package>
<package pkgid="a7d4ff65a843931d1e4657edf86e0348b637bdb10432355f3189487815e6e28fca5a1ab580b90d09d9d49809b4e28879e066689c60d2d8e391727c34f71860db" name="389-ds-debugsource" arch="x86_64">
  <version epoch="0" ver="3.1.1~git57.65773c3" rel="1.0.4.1.sr20241103"/>
  <changelog author="william.brown@suse.com" date="1662552000">- Update to version 2.3.0~git0.3db81913e:
  * Bump version to 2.3.0
  * Issue 5012 - Migrate pcre to pcre2 - remove match limit
  * Update CI tests
  * Issue 5356 - Make Rust non-optional and update default password storage scheme
  * Issue 5012 - Migrate pcre to pcre2
  * Issue 5428 - Fix regression with nscpEntryWsi computation
  * Fix missing 'not' in description (closes #5423) (#5424)
  * Issue 5421 - CI - makes replication/acceptance_test.py::test_modify_entry more robust (#5422)
  * Issue 3903 - fix repl keep alive event interval
  * Issue 5418 - Sync_repl may crash while managing invalid cookie (#5420)</changelog>
  <changelog author="william.brown@suse.com" date="1666353600">- Update to version 2.3.0~git22.8fedec0:
  * Issue 5495 - RFE - skip dds during migration. (#5496)
  * Issue 5491 - UI - Add rework and finish jpegPhoto functionality (#5492)
  * Issue 5368 - Retro Changelog trimming does not work (#5486)
  * Issue 5487 - Fix various issues with logconv.pl
  * Issue 5476 - RFE - add memberUid read aci by default (#5477)
  * Issue 5482 - lib389 - Can not enable replication with a mixed case suffix
  * Issue 5478 - Random crash in connection code during server shutdown (#5479)
  * Issue 3061 - RFE - Add password policy debug log level
  * Issue 5302 - Release tarballs don't contain cockpit webapp
  * Issue 5262 - high contention in find_entry_internal_dn on mixed load (#5264)</changelog>
  <changelog author="william.brown@suse.com" date="1679486400">- Update to version 2.3.2~git44.5e4551e:
  * Issue 4812 - Listener thread does not scale with a high num of established connections (#5706)
  * Issue 4812 - Listener thread does not scale with a high num of established connections (#5681)
  * Bump webpack from 5.75.0 to 5.76.0 in /src/cockpit/389-console (#5699)
  * Issue 5598 - (3rd) In 2.x, SRCH throughput drops by 10% because of handling of referral (#5692)
  * Issue 5598 - (2nd) In 2.x, SRCH throughput drops by 10% because of handling of referral (#5691)
  * Issue 5687 - UI - sensitive information disclosure
  * Issue 5661 - LMDB hangs while Rebuilding the replication changelog RUV (#5676)
  * Issue 5554 - Add more tests to security_basic_test suite
  * Issue 4583 - Update specfile to skip checks of ASAN builds
  * Issue 4758 - Add tests for WebUI</changelog>
  <changelog author="william.brown@suse.com" date="1681214400">- bsc#1210027 - apply upstream fix for setuptools
- Update to version 2.3.2~git53.a01e230:
  * Issue 5705 - Add config parameter to close client conns on failed bind (#5712)
  * Issue 4758 - Add tests for WebUI
  * Issue 5643 - Memory leak in entryrdn during delete (#5717)
  * Issue 5714 - UI - fix typo, db settings, log settings, and LDAP editor paginations
  * Issue 5701 - CLI - Fix referral mode setting (#5708)
  * Bump openssl from 0.10.45 to 0.10.48 in /src (#5709)
  * Issue 5710 - subtree search statistics for index lookup does not report ancestorid/entryrdn lookups (#5711)
  * Issue 5697 - Obsolete nsslapd-ldapimaprootdn attribute (#5698)
  * Issue 1081 - Stop schema replication from overwriting x-origin
  * Issue 4812 - Listener thread does not scale with a high num of established connections (#5706)</changelog>
  <changelog author="pgajdos@suse.com" date="1681819200">- python-six is not required</changelog>
  <changelog author="william.brown@suse.com" date="1682510400">- Update to version 2.4.0~git0.87efeb2:
  * Bump version to 2.4.0
  * Issue 5156 - RFE that implement slapi_memberof (#5694)
  * Issue 5734 - RFE - Exclude pwdFailureTime and ContextCSN (#5735)
  * Issue 5726 - ns-slapd crashing in ldbm_back_upgradednformat (#5727)
  * Issue 4758 - Add tests for WebUI
  * Issue 5718 - Memory leak in connection table (#5719)
  * Issue 5705 - Add config parameter to close client conns on failed bind (#5712)
  * Issue 4758 - Add tests for WebUI
  * Issue 5643 - Memory leak in entryrdn during delete (#5717)
  * Issue 5714 - UI - fix typo, db settings, log settings, and LDAP editor paginations</changelog>
  <changelog author="william.brown@suse.com" date="1684929600">- Update to version 2.4.0~git18.37ec5cd:
  * Issue 5751 - Cleanallruv task crashes on consumer (#5775)
  * Bump version to 2.4.1
  * Issue 5770 - RFE - Extend Password Adminstrators to allow skipping password info updates
  * Issue 5768 - CLI/UI - cert checks are too strict, and other issues
  * Issue 5722 - fix compilation warnings (#5771)
  * Issue 5765 - Improve installer selinux handling
  * Issue 152 - RFE - Add support for LDAP alias entries
  * Issue 5052 - BUG - Custom filters prevented entry deletion (#5060)
  * Issue 5752 - RFE - Provide a history for LastLoginTime (#5753)
  * Issue 5722 - RFE When a filter contains 'nsrole', improve response time by rewriting the filter (#5723)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1691668800">- Update to version 2.4.0~git69.89c2de5:
  * Issue 4551 - Part 2 - Fix build warning of previous PR (#5888)
  * Issue 5834 - AccountPolicyPlugin erroring for some users (#5866)
  * Issue 5872 - part 2 - fix is_dbi regression (#5887)
  * Issue 4758 - Add tests for WebUI
  * Issue 5848 - dsconf should prevent setting the replicaID for hub and consumer roles (#5849)
  * Issue 5883 - Remove connection mutex contention risk on autobind (#5886)
  * Issue 5872 - `dbscan()` in lib389 can return bytes
  * Bump version to 2.4.3
  * Issue 5729 - Memory leak in factory_create_extension (#5814)
  * Issue 5870 - ns-slapd crashes at startup if a backend has no suffix (#5871)</changelog>
  <changelog author="william.brown@suse.com" date="1692014400">- Update to version 2.4.0~git74.4297d88:
  * issue 5890 part 2 - Need a tester for testing multiple listening thread feature (#5897)
  * Issue i5846 - Crash when lmdb import is aborted (#5881)
  * Issue 5894 - lmdb import error fails with Could not store the entry (#5895)
  * Issue 5890 - Need a tester for testing multiple listening thread feature (#5891)
  * Issue 5082 - slugify: ModuleNotFoundError when running test cases</changelog>
  <changelog author="william.brown@suse.com" date="1701259200">- Update to version 2.4.0~git113.84a845c:
  * Issue 5980 - Improve instance startup failure handling (#5991)
  * Issue 5976 - Fix freeipa install regression with lmdb (#5977)
  * Issue 5984 - Crash when paged result search are abandoned - fix2 (#5987)
  * Issue 5984 - Crash when paged result search are abandoned (#5985)
  * Issue 5947 - CI test_vlv_recreation_reindex fails on LMDB (#5979)
  * Bump version to 2.5.0
  * Issue 5971 - CLI - Fix password prompt for repl status (#5972)
  * Issue 5973 - Fix fedora cop RawHide builds (#5974)
  * Revert "Issue 5761 - Worker thread dynamic management (#5796)" (#5970)
  * Issue 5966 - CLI - Custom schema object is removed on a failed edit (#5967)
  * Issue 5786 - Update permissions for Release workflow
  * Issue 5960 - Subpackages should have more strict interdependencies
  * Issue 3555 - UI - Fix audit issue with npm - babel/traverse (#5959)
  * Issue 4843 - Fix dscreate create-template issue (#5950)
  * bugfix for --passwd-file not working on latest version (#5934)
  * Issue 5843 - dsconf / dscreate should be able to handle lmdb parameters (#5943)
  * Bump postcss from 8.4.24 to 8.4.31 in /src/cockpit/389-console (#5945)
  * Issue 5938 - Attribute Names changed to lowercase after adding the Attributes (#5940)
  * issue 5924 - ASAN server build crash when looping opening/closing connections (#5926)
  * Issue 1925 - Add a CI test (#5936)
  * Issue 5732 - Localizing Cockpit's 389ds Plugin using CockpitPoPlugin (#5764)
  * Issue 1870 - Add a CI test (#5929)
  * Issue 843 - Add a warning to slapi_valueset_add_value_ext (#5925)
  * Issue 5761 - Worker thread dynamic management (#5796)
  * Issue 1802 - Improve ldclt man page (#5928)
  * Issue 1456 - Add a CI test that verifies there is no issue (#5927)
  * Issue 1317 - Add a CI test (#5923)
  * Issue 1081 - CI - Add more tests for overwriting x-origin issue (#5815)
  * Issue 1115 - Add a CI test (#5913)
  * Issue 5848 - Fix condition and add a CI test (#5916)
  * Issue 5848 - Fix condition and add a CI test (#5916)
  * Issue 5914 - UI - server settings page validation improvements and db index fixes
  * Issue 5909 - Multi listener hang with 20k connections (#5917)
  * Issue 5902 - Fix previous commit regression (#5919)
  * pass instance correctly to ds_is_older (#5903)
  * Issue 5909 - Multi listener hang with 20k connections (#5910)
  * Issue 5722 - improve testcase (#5904)
  * Issue 5203 - outdated version in provided metadata for lib389
  * Bug Description:</changelog>
  <changelog author="William Brown &lt;william.brown@suse.com&gt;" date="1702468800">- Update to support newer obs-service-cargo-vendor</changelog>
  <changelog author="william.brown@suse.com" date="1705492800">- Update to version 2.4.0~git126.5936946:
  * Issue 6028 - vlv index keys inconsistencies (#6031)
  * Issue 5989 - RFE support of inChain Matching Rule (#5990)
  * Issue 6022 - lmdb inconsistency between vlv index and vlv cache names (#6026)
  * Issue 6015 - Fix typo remeber (#6014)
  * Issue 6016 - Pin upload/download artifacts action to v3
  * Issue 5939 - During an update, if the target entry is reverted in the entry cache, the server should not retry to lock it (#6007)
  * Issue 4673 - Update Rust crates
  * Issue 6004 - idletimeout may be ignored (#6005)
  * Issue 5954 - Disable Transparent Huge Pages
  * Issue 5997 - test_inactivty_and_expiration CI testcase is wrong (#5999)
  * Issue 5993 - Fix several race condition around CI tests (#5996)
  * Issue 5944 - Reversion of the entry cache should be limited to BETXN plugin failures (#5994)
  * Bump openssl from 0.10.55 to 0.10.60 in /src (#5995)</changelog>
  <changelog author="william.brown@suse.com" date="1706875200">- Update to version 3.0.1~git1.1f95b57:
  * Issue 6061 - Certificate lifetime displayed as NaN
  * Bump version to 3.0.1
  * Issue 6043, 6044 - Enhance Rust and JS bundling and add SPDX licenses for both (#6045)
  * Issue 3555 - Remove audit-ci from dependencies (#6056)
  * Issue 6052 - Paged results test sets hostname to `localhost` on test collection
  * Issue 6051 - Drop unused pytest markers
  * Issue 6049 - lmdb - changelog is wrongly recreated by reindex task (#6050)
  * Issue 6047 - Add a check for tagged commits
  * Issue 6041 - dscreate ds-root - accepts relative path (#6042)
  * Switch default backend to lmdb and bump version to 3.0 (#6013)
  * Issue 6032 - Replication broken after backup restore (#6035)
  * Issue 6037 - Server crash at startup in vlvIndex_delete (#6038)
  * Issue 6034 - Change replica_id from str to int</changelog>
  <changelog author="william.brown@suse.com" date="1713873600">- Update to version 3.0.1~git37.55529d1:
  * Issue 6082 - Remove explicit dependencies toward libdb - revert default (#6145)
  * Issue 6141 - freeipa test_topology_TestCASpecificRUVs is failing (#6144)
  * Issue 6142 - [RFE] Add LMDB configuration related checks into Healthcheck tool (#6143)
  * Issue 6136 - failure in freeipa tests (#6137)
  * Issue 6133 - Move slapi_pblock_set_flag_operation_notes() to slapi-plugin.h
  * Issue 5105 - lmdb - Cannot create entries with long rdn - fix covscan (#6131)
  * Issue i6057 - Fix3 - Fix covscan issues (#6127)
  * Issue 6105 - lmdb - Cannot create entries with long rdn (#6130)
  * Issue 6125 - dscreate interactive fails when chosing mdb backend (#6126)
  * Issue 6080 - ns-slapd crash in referint_get_config (#6081)
  * Issue 6110 - Typo in Account Policy plugin message
  * Issue 6057 - vlv search may result wrong result with lmdb - Fix 2 (#6121)
  * Issue 6119 - Synchronise accept_thread with slapd_daemon (#6120)
  * Issue 6117 - Fix the UTC offset print (#6118)
  * Issue 6112 - RFE - add new operation note for MFA authentications
  * Issue 5842 - Add log buffering to audit log
  * Issue 5305 - OpenLDAP version autodetection doesn't work
  * Issue 3527 - Support HAProxy and Instance on the same machine configuration (#6107)
  * Issue 6057 - vlv search may result wrong result with lmdb (#6091)
  * Issue 6103 - New connection timeout error breaks errormap (#6104)
  * Issue 6086 - Ambiguous warning about SELinux in dscreate for non-root user
  * Issue 6092 - passwordHistory is not updated with a pre-hashed password (#6093)
  * Issue 6067 - Improve dsidm CLI No Such Entry handling (#6079)
  * Issue 6096 - Improve connection timeout error logging (#6097)
  * Issue 5647 - covscan: memory leak in audit log when adding entries
  * Issue 6094 - Add coverity scan workflow
  * Issue 6067 - Add hidden -v and -j options to each CLI subcommand (#6088)
  * Issue 5487 - Fix various isses with logconv.pl (#6085)
  * Issue 5962 - Rearrange includes for 32-bit support logic
  * Issue 6046 - Make dscreate to work during kickstart installations
  * Issue 6082 - Remove explicit dependencies toward libdb (#6083)
  * Issue 6073 - Improve error log when running out of memory (#6084)
  * Issue 6071 - Instance creation/removal is slow
  * Issue 6010 - 389 ds ignores nsslapd-maxdescriptors (#6027)
  * Issue 6075 - Ignore build artifacts (#6076)
  * Issue 6068 - Add dscontainer stop function</changelog>
  <changelog author="william.brown@suse.com" date="1715688000">- Update to version 3.0.1~git39.e24615f:
  * Issue 6142 - Fix CI tests (#6161)
  * Issue 6157 - Cockipt crashes when getting replication status if topology contains an old 389ds version (#6158)</changelog>
  <changelog author="william.brown@suse.com" date="1722427200">- Update to version 3.1.1~git0.aef1668:
  * Bump version to 3.1.1
  * Issue 6256 - nsslapd-numlisteners limit is not enforced (#6257)
  * Issue 5327 - Fix test metadata
  * Security fix for CVE-2024-6237
  * Security fix for CVE-2024-5953
  * Security fix for CVE-2024-3657
  * Security fix for CVE-2024-2199
  * Issue 6256 - nsslapd-numlisteners limit is not enforced
  * Issue 6265 - lmdb - missing entries in range searches (#6266)
  * Issue 5853 - Update Cargo.lock
  * Bump openssl from 0.10.64 to 0.10.66 in /src
  * Issue 6245 - Revert __COVERITY__ ifndef (#6268)
  * Issue 6248 - fix fanalyzer warnings (#6253)
  * Issue 6238 - Fix test_audit_json_logging CI test regression (#6264)
  * Issue 6254 - Enabling replication for a sub suffix crashes browser (#6255)
  * Issue 6155 - ldap-agent fails to start because of permission error (#6179)
  * Issue 6238 - RFE - add option to write audit log in JSON format
  * Issue 6216 - CI test_fast_slow_import sometime fail (#6247)
  * Issue 6245 - covscan fixes (#6246)
  * Issue 6241 - Add support for CRYPT-YESCRYPT (#6242)
  * Issue 6229 - After an initial failure, subsequent online backups fail (#6230)
  * Issue 6236 - rpm: fix compatibility with RPM 4.20
  * Issue 6227 - dsconf schema does not show inChain matching rule (#6228)
  * Issue 6233 - CI test wait_for_async_feature_test sometime fails (#6234)
  * Bump ws from 7.5.9 to 7.5.10 in /src/cockpit/389-console
  * Issue 6224 - d2entry - Could not open id2entry err 0 - at startup when having sub-suffixes (#6225)
  * Issue 6222 - CI test acl/test_timeofday_keyword sometime fails (#6223)
  * Issue 6120 - /usr/lib64/dirsrv/plugins/libback-bdb.so has an invalid-looking DT_RPATH: /usr/lib/dirsrv
  * Issue 5772 - ONE LEVEL search fails to return sub-suffixes (#6219)
  * Issue 6183 - Slow ldif2db import on a newly created BDB backend (#6208)
  * Issue 6207 - Random crash in test_long_rdn CI test (#6215)
  * Bump braces from 3.0.2 to 3.0.3 in /src/cockpit/389-console
  * Issue 6191 - Node.js 16 actions are deprecated
  * Issue 6199 - unprotected search query during certificate based authentication (#6205)
  * Issue 6200 - Disable WebUI CI tests
  * Issue 6192 - Test failure: test_match_large_valueset
  * Issue 6181 - RFE - Allow system to manage uid/gid at startup
  * Issue 6188 - Add nsslapd-haproxy-trusted-ip to cn=schema (#6201)
  * Issue 6181 - RFE - Allow system to manage uid/gid at startup (#6182)
  * Issue 6170 - audit log buffering doesn't handle large updates
  * Issue 6193 - Test failure: test_tls_command_returns_error_text
  * Issue 6177 - Spec file cleanup
  * Issue 6189 - CI tests fail with `[Errno 2] No such file or directory: '/var/cache/dnf/metadata_lock.pid'`
  * Issue 6175 - Referential integrity plugin - in referint_thread_func does not handle null from ldap_utf8strtok (#6168)
  * Change default salt sizes generated in crypt_pwd (#6185)
  * Issue 6123 - Allow DNA plugin to reuse global config for bind method and connection protocol (#6124)
  * Issue 6159 - Add a test to check URP add and delete conflict (#6160)
  * Issue 6151 - Use %bcond macro for conditional builds in the spec file
  * Issue 6172 - RFE: improve the performance of evaluation of filter component when tested against a large valueset (like group members) (#6173)
  * Bump version to 3.1.0
  * fix issue6165 (#6167)</changelog>
  <changelog author="Thorsten Kukuk &lt;kukuk@suse.com&gt;" date="1722600000">- dirsrv-user.conf: Remove explicit dirsrv group definition, it's
  already specified implicit with "u dirsrv" and not all tools like
  duplicate group entries.</changelog>
  <changelog author="william.brown@suse.com" date="1725451200">- bsc#1229948 - CVE-2024-43806 - rustix::fs::Dir iterator with the linux_raw backend can cause memory explosion
- Update to version 3.1.1~git13.a9c7ff9:
  * Issue 2472 - Add a CI test (#6314)
  * Issue 6276 - Schema lib389 object is not keeping custom schema data upon editing (#6279)
  * Issue 3555 - UI - Fix audit issue with npm - micromatch (#6310)
  * Issue 5843 - Fix size formatting in dscreate output and enhance tests (#6309)
  * Issue 6301 - Fix long delay when setting replication agreement with dsconf (#6303)
  * Issue 6280 - Changelog trims updates from a given RID even if a consumer has not received any of them (#6281)
  * Issue 6296 - basic_test.py::test_conn_limits fails in main branch (#6300)
  * Issue 6295 - test_password_modify_non_utf8 should set default password storage scheme
  * Issue 6294 - Nightly copr builds are failing
  * Issue 6288 - dsidm crash with account policy when alt-state-attr is disabled (#6292)
  * Issue 2324 - Add a CI test (#6289)
  * Issue 6284 - BUG - freelist ordering causes high wtime (#6285)
  * Issue 6282 - BUG - out of tree build fails (#6283)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1732190400">- Add 389-ds-link-icu-uc.patch: properly link to icu-uc as well,
  which is no longer transparently added when linking icu-i18n
  (boo#1233578).</changelog>
  <changelog author="william.brown@suse.com" date="1732881600">- Remove 389-ds-link-icu-uc.patch - upstreamed
- Update to version 3.1.1~git57.65773c3:
  * Issue 6340 - RFE - extract keys once (#6413)
  * Issue 6415 - BUG - Incorrect icu linking (#6416)
  * Issue 6420 - Update dsidm user get_dn test (#6421)
  * Issue 6258 - Resolve race condition for two tests in health_config.py
  * Bump cross-spawn from 7.0.3 to 7.0.6 in /src/cockpit/389-console (#6407)
  * Issue 6386 - backup/restore broken after db log rotation (#6406)
  * Issue 6401 - Remove logging macros
  * Issue 6404 - UI - Add npm pretter package
  * Issue 6374 - nsslapd-mdb-max-dbs autotuning doesn't work properly (#6400)
  * Issue 5842 - Add log buffering for error log
  * Issue 6397 - Remove deprecated setting for HR time stamps in logs
  * Issue 6390 - Adjust cleanAllRUV max per txn and interval limits
  * Issue 6349 - RFE - extract keys once (#6363) (#6394)
  * Issue 6387 - Use make macro in the spec file
  * Issue 6359 - Add exception to GPL license in license tag
  * Issue 6381 - CleanAllRUV - move changelog purging to the very end of the task
  * Issue 5920 - pamModuleIsThreadSafe is missing in the schema
  * Issue 6377 - syntax error in setup.py (#6378)
  * Issue 6349 - RFE - Use previously extracted key path (#6363)
  * Issue 6067 - Update dsidm to prioritize basedn from .dsrc over interactive input (#6362)
  * Issue 6347 - better fix for desyncronized vlv cache (#6358)
  * Issue 6243 - dsctl bdb2mdb should cleanly fail if bundled libdb is not available (#6351)
  * Issue 6331 - UI - Instance fails to load when DB backup directory doesn't exist (#6332)
  * Issue 6356 - On LMDB, after an update the impact VLV index, the vlv recno cache is not systematically cleared (#6357)
  * Issue 6056 - WebUI supports only instances with BDB (#6299)
  * Issue 6339 - Address Coverity scan issues in memberof and bdb_layer (#6353)
  * Issue 6328 - vlv control may not be logged (#6354)
  * Issue 6347 - VLV search sometime fails with operation error (#6349)
  * Issue 6343 - Improve online import robustness when the server is under load
  * Issue 6345 - Ensure all slapi_log_err calls end format strings with newline character \n (#6346)
  * Issue 6064 - bdb2mdb shows errors (#6341)
  * Issue 6336 - Fix failing CI tests (roles) due to slow import (#6337)
  * Fix duplicate detection logic by ensuring exact match on string length (#6333)
  * Issue 6304 - RFE when memberof is enabled, defer updates of members from the update of the group (#6305)
  * Issue 6329 - lmdb typo in error log notice message (#6330)
  * Issue 6324 - Provide more information in the error message during setup_ol_tls_conn() (#6325)
  * Issue 5965 - UI, CLI - Fix Account Policy Plugin functionality issues (#6323)
  * Issue 6188 - Check if nsslapd-haproxy-trusted-ip attribute is returned in default schema
  * Issue 6319 - bdb subpackage has `%description` in the wrong place
  * Issue 6321 - lib389 get_db_lib function may returns the wrong db type (#6322)
  * Issue 6245 - Fix some other coverity scan regressions (#6273)
  * Issue 6316 - lmdb reindex is broken if index type is specified (#6318)
  * Issue 6090 - Fix dbscan options and man pages (#6315)
  * Issue 6307 - Wrong set of entries returned for some search filters (#6308)</changelog>
</package>
<package pkgid="7805050b2b0e216b2f877b8f2bfa8234224eaba37cacc854f8a21fed807a1754965331f86667aae960756afb1b2858991ee7fe8c87c3786fd234f1c236597bd5" name="389-ds-devel" arch="x86_64">
  <version epoch="0" ver="3.1.1~git13.a9c7ff9" rel="2.0.2.1.sr20241103"/>
  <changelog author="William Brown &lt;william.brown@suse.com&gt;" date="1660132800">- Update _constraints due to random build failures caused by OBS environmental
  issues that aren't out fault. (out of disk, systemic builder issues).
- Add debugging about the environment to assist with OBS randomly failing
  in the future.</changelog>
  <changelog author="william.brown@suse.com" date="1662552000">- Update to version 2.3.0~git0.3db81913e:
  * Bump version to 2.3.0
  * Issue 5012 - Migrate pcre to pcre2 - remove match limit
  * Update CI tests
  * Issue 5356 - Make Rust non-optional and update default password storage scheme
  * Issue 5012 - Migrate pcre to pcre2
  * Issue 5428 - Fix regression with nscpEntryWsi computation
  * Fix missing 'not' in description (closes #5423) (#5424)
  * Issue 5421 - CI - makes replication/acceptance_test.py::test_modify_entry more robust (#5422)
  * Issue 3903 - fix repl keep alive event interval
  * Issue 5418 - Sync_repl may crash while managing invalid cookie (#5420)</changelog>
  <changelog author="william.brown@suse.com" date="1666353600">- Update to version 2.3.0~git22.8fedec0:
  * Issue 5495 - RFE - skip dds during migration. (#5496)
  * Issue 5491 - UI - Add rework and finish jpegPhoto functionality (#5492)
  * Issue 5368 - Retro Changelog trimming does not work (#5486)
  * Issue 5487 - Fix various issues with logconv.pl
  * Issue 5476 - RFE - add memberUid read aci by default (#5477)
  * Issue 5482 - lib389 - Can not enable replication with a mixed case suffix
  * Issue 5478 - Random crash in connection code during server shutdown (#5479)
  * Issue 3061 - RFE - Add password policy debug log level
  * Issue 5302 - Release tarballs don't contain cockpit webapp
  * Issue 5262 - high contention in find_entry_internal_dn on mixed load (#5264)</changelog>
  <changelog author="william.brown@suse.com" date="1679486400">- Update to version 2.3.2~git44.5e4551e:
  * Issue 4812 - Listener thread does not scale with a high num of established connections (#5706)
  * Issue 4812 - Listener thread does not scale with a high num of established connections (#5681)
  * Bump webpack from 5.75.0 to 5.76.0 in /src/cockpit/389-console (#5699)
  * Issue 5598 - (3rd) In 2.x, SRCH throughput drops by 10% because of handling of referral (#5692)
  * Issue 5598 - (2nd) In 2.x, SRCH throughput drops by 10% because of handling of referral (#5691)
  * Issue 5687 - UI - sensitive information disclosure
  * Issue 5661 - LMDB hangs while Rebuilding the replication changelog RUV (#5676)
  * Issue 5554 - Add more tests to security_basic_test suite
  * Issue 4583 - Update specfile to skip checks of ASAN builds
  * Issue 4758 - Add tests for WebUI</changelog>
  <changelog author="william.brown@suse.com" date="1681214400">- bsc#1210027 - apply upstream fix for setuptools
- Update to version 2.3.2~git53.a01e230:
  * Issue 5705 - Add config parameter to close client conns on failed bind (#5712)
  * Issue 4758 - Add tests for WebUI
  * Issue 5643 - Memory leak in entryrdn during delete (#5717)
  * Issue 5714 - UI - fix typo, db settings, log settings, and LDAP editor paginations
  * Issue 5701 - CLI - Fix referral mode setting (#5708)
  * Bump openssl from 0.10.45 to 0.10.48 in /src (#5709)
  * Issue 5710 - subtree search statistics for index lookup does not report ancestorid/entryrdn lookups (#5711)
  * Issue 5697 - Obsolete nsslapd-ldapimaprootdn attribute (#5698)
  * Issue 1081 - Stop schema replication from overwriting x-origin
  * Issue 4812 - Listener thread does not scale with a high num of established connections (#5706)</changelog>
  <changelog author="pgajdos@suse.com" date="1681819200">- python-six is not required</changelog>
  <changelog author="william.brown@suse.com" date="1682510400">- Update to version 2.4.0~git0.87efeb2:
  * Bump version to 2.4.0
  * Issue 5156 - RFE that implement slapi_memberof (#5694)
  * Issue 5734 - RFE - Exclude pwdFailureTime and ContextCSN (#5735)
  * Issue 5726 - ns-slapd crashing in ldbm_back_upgradednformat (#5727)
  * Issue 4758 - Add tests for WebUI
  * Issue 5718 - Memory leak in connection table (#5719)
  * Issue 5705 - Add config parameter to close client conns on failed bind (#5712)
  * Issue 4758 - Add tests for WebUI
  * Issue 5643 - Memory leak in entryrdn during delete (#5717)
  * Issue 5714 - UI - fix typo, db settings, log settings, and LDAP editor paginations</changelog>
  <changelog author="william.brown@suse.com" date="1684929600">- Update to version 2.4.0~git18.37ec5cd:
  * Issue 5751 - Cleanallruv task crashes on consumer (#5775)
  * Bump version to 2.4.1
  * Issue 5770 - RFE - Extend Password Adminstrators to allow skipping password info updates
  * Issue 5768 - CLI/UI - cert checks are too strict, and other issues
  * Issue 5722 - fix compilation warnings (#5771)
  * Issue 5765 - Improve installer selinux handling
  * Issue 152 - RFE - Add support for LDAP alias entries
  * Issue 5052 - BUG - Custom filters prevented entry deletion (#5060)
  * Issue 5752 - RFE - Provide a history for LastLoginTime (#5753)
  * Issue 5722 - RFE When a filter contains 'nsrole', improve response time by rewriting the filter (#5723)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1691668800">- Update to version 2.4.0~git69.89c2de5:
  * Issue 4551 - Part 2 - Fix build warning of previous PR (#5888)
  * Issue 5834 - AccountPolicyPlugin erroring for some users (#5866)
  * Issue 5872 - part 2 - fix is_dbi regression (#5887)
  * Issue 4758 - Add tests for WebUI
  * Issue 5848 - dsconf should prevent setting the replicaID for hub and consumer roles (#5849)
  * Issue 5883 - Remove connection mutex contention risk on autobind (#5886)
  * Issue 5872 - `dbscan()` in lib389 can return bytes
  * Bump version to 2.4.3
  * Issue 5729 - Memory leak in factory_create_extension (#5814)
  * Issue 5870 - ns-slapd crashes at startup if a backend has no suffix (#5871)</changelog>
  <changelog author="william.brown@suse.com" date="1692014400">- Update to version 2.4.0~git74.4297d88:
  * issue 5890 part 2 - Need a tester for testing multiple listening thread feature (#5897)
  * Issue i5846 - Crash when lmdb import is aborted (#5881)
  * Issue 5894 - lmdb import error fails with Could not store the entry (#5895)
  * Issue 5890 - Need a tester for testing multiple listening thread feature (#5891)
  * Issue 5082 - slugify: ModuleNotFoundError when running test cases</changelog>
  <changelog author="william.brown@suse.com" date="1701259200">- Update to version 2.4.0~git113.84a845c:
  * Issue 5980 - Improve instance startup failure handling (#5991)
  * Issue 5976 - Fix freeipa install regression with lmdb (#5977)
  * Issue 5984 - Crash when paged result search are abandoned - fix2 (#5987)
  * Issue 5984 - Crash when paged result search are abandoned (#5985)
  * Issue 5947 - CI test_vlv_recreation_reindex fails on LMDB (#5979)
  * Bump version to 2.5.0
  * Issue 5971 - CLI - Fix password prompt for repl status (#5972)
  * Issue 5973 - Fix fedora cop RawHide builds (#5974)
  * Revert "Issue 5761 - Worker thread dynamic management (#5796)" (#5970)
  * Issue 5966 - CLI - Custom schema object is removed on a failed edit (#5967)
  * Issue 5786 - Update permissions for Release workflow
  * Issue 5960 - Subpackages should have more strict interdependencies
  * Issue 3555 - UI - Fix audit issue with npm - babel/traverse (#5959)
  * Issue 4843 - Fix dscreate create-template issue (#5950)
  * bugfix for --passwd-file not working on latest version (#5934)
  * Issue 5843 - dsconf / dscreate should be able to handle lmdb parameters (#5943)
  * Bump postcss from 8.4.24 to 8.4.31 in /src/cockpit/389-console (#5945)
  * Issue 5938 - Attribute Names changed to lowercase after adding the Attributes (#5940)
  * issue 5924 - ASAN server build crash when looping opening/closing connections (#5926)
  * Issue 1925 - Add a CI test (#5936)
  * Issue 5732 - Localizing Cockpit's 389ds Plugin using CockpitPoPlugin (#5764)
  * Issue 1870 - Add a CI test (#5929)
  * Issue 843 - Add a warning to slapi_valueset_add_value_ext (#5925)
  * Issue 5761 - Worker thread dynamic management (#5796)
  * Issue 1802 - Improve ldclt man page (#5928)
  * Issue 1456 - Add a CI test that verifies there is no issue (#5927)
  * Issue 1317 - Add a CI test (#5923)
  * Issue 1081 - CI - Add more tests for overwriting x-origin issue (#5815)
  * Issue 1115 - Add a CI test (#5913)
  * Issue 5848 - Fix condition and add a CI test (#5916)
  * Issue 5848 - Fix condition and add a CI test (#5916)
  * Issue 5914 - UI - server settings page validation improvements and db index fixes
  * Issue 5909 - Multi listener hang with 20k connections (#5917)
  * Issue 5902 - Fix previous commit regression (#5919)
  * pass instance correctly to ds_is_older (#5903)
  * Issue 5909 - Multi listener hang with 20k connections (#5910)
  * Issue 5722 - improve testcase (#5904)
  * Issue 5203 - outdated version in provided metadata for lib389
  * Bug Description:</changelog>
  <changelog author="William Brown &lt;william.brown@suse.com&gt;" date="1702468800">- Update to support newer obs-service-cargo-vendor</changelog>
  <changelog author="william.brown@suse.com" date="1705492800">- Update to version 2.4.0~git126.5936946:
  * Issue 6028 - vlv index keys inconsistencies (#6031)
  * Issue 5989 - RFE support of inChain Matching Rule (#5990)
  * Issue 6022 - lmdb inconsistency between vlv index and vlv cache names (#6026)
  * Issue 6015 - Fix typo remeber (#6014)
  * Issue 6016 - Pin upload/download artifacts action to v3
  * Issue 5939 - During an update, if the target entry is reverted in the entry cache, the server should not retry to lock it (#6007)
  * Issue 4673 - Update Rust crates
  * Issue 6004 - idletimeout may be ignored (#6005)
  * Issue 5954 - Disable Transparent Huge Pages
  * Issue 5997 - test_inactivty_and_expiration CI testcase is wrong (#5999)
  * Issue 5993 - Fix several race condition around CI tests (#5996)
  * Issue 5944 - Reversion of the entry cache should be limited to BETXN plugin failures (#5994)
  * Bump openssl from 0.10.55 to 0.10.60 in /src (#5995)</changelog>
  <changelog author="william.brown@suse.com" date="1706875200">- Update to version 3.0.1~git1.1f95b57:
  * Issue 6061 - Certificate lifetime displayed as NaN
  * Bump version to 3.0.1
  * Issue 6043, 6044 - Enhance Rust and JS bundling and add SPDX licenses for both (#6045)
  * Issue 3555 - Remove audit-ci from dependencies (#6056)
  * Issue 6052 - Paged results test sets hostname to `localhost` on test collection
  * Issue 6051 - Drop unused pytest markers
  * Issue 6049 - lmdb - changelog is wrongly recreated by reindex task (#6050)
  * Issue 6047 - Add a check for tagged commits
  * Issue 6041 - dscreate ds-root - accepts relative path (#6042)
  * Switch default backend to lmdb and bump version to 3.0 (#6013)
  * Issue 6032 - Replication broken after backup restore (#6035)
  * Issue 6037 - Server crash at startup in vlvIndex_delete (#6038)
  * Issue 6034 - Change replica_id from str to int</changelog>
  <changelog author="william.brown@suse.com" date="1713873600">- Update to version 3.0.1~git37.55529d1:
  * Issue 6082 - Remove explicit dependencies toward libdb - revert default (#6145)
  * Issue 6141 - freeipa test_topology_TestCASpecificRUVs is failing (#6144)
  * Issue 6142 - [RFE] Add LMDB configuration related checks into Healthcheck tool (#6143)
  * Issue 6136 - failure in freeipa tests (#6137)
  * Issue 6133 - Move slapi_pblock_set_flag_operation_notes() to slapi-plugin.h
  * Issue 5105 - lmdb - Cannot create entries with long rdn - fix covscan (#6131)
  * Issue i6057 - Fix3 - Fix covscan issues (#6127)
  * Issue 6105 - lmdb - Cannot create entries with long rdn (#6130)
  * Issue 6125 - dscreate interactive fails when chosing mdb backend (#6126)
  * Issue 6080 - ns-slapd crash in referint_get_config (#6081)
  * Issue 6110 - Typo in Account Policy plugin message
  * Issue 6057 - vlv search may result wrong result with lmdb - Fix 2 (#6121)
  * Issue 6119 - Synchronise accept_thread with slapd_daemon (#6120)
  * Issue 6117 - Fix the UTC offset print (#6118)
  * Issue 6112 - RFE - add new operation note for MFA authentications
  * Issue 5842 - Add log buffering to audit log
  * Issue 5305 - OpenLDAP version autodetection doesn't work
  * Issue 3527 - Support HAProxy and Instance on the same machine configuration (#6107)
  * Issue 6057 - vlv search may result wrong result with lmdb (#6091)
  * Issue 6103 - New connection timeout error breaks errormap (#6104)
  * Issue 6086 - Ambiguous warning about SELinux in dscreate for non-root user
  * Issue 6092 - passwordHistory is not updated with a pre-hashed password (#6093)
  * Issue 6067 - Improve dsidm CLI No Such Entry handling (#6079)
  * Issue 6096 - Improve connection timeout error logging (#6097)
  * Issue 5647 - covscan: memory leak in audit log when adding entries
  * Issue 6094 - Add coverity scan workflow
  * Issue 6067 - Add hidden -v and -j options to each CLI subcommand (#6088)
  * Issue 5487 - Fix various isses with logconv.pl (#6085)
  * Issue 5962 - Rearrange includes for 32-bit support logic
  * Issue 6046 - Make dscreate to work during kickstart installations
  * Issue 6082 - Remove explicit dependencies toward libdb (#6083)
  * Issue 6073 - Improve error log when running out of memory (#6084)
  * Issue 6071 - Instance creation/removal is slow
  * Issue 6010 - 389 ds ignores nsslapd-maxdescriptors (#6027)
  * Issue 6075 - Ignore build artifacts (#6076)
  * Issue 6068 - Add dscontainer stop function</changelog>
  <changelog author="william.brown@suse.com" date="1715688000">- Update to version 3.0.1~git39.e24615f:
  * Issue 6142 - Fix CI tests (#6161)
  * Issue 6157 - Cockipt crashes when getting replication status if topology contains an old 389ds version (#6158)</changelog>
  <changelog author="william.brown@suse.com" date="1722427200">- Update to version 3.1.1~git0.aef1668:
  * Bump version to 3.1.1
  * Issue 6256 - nsslapd-numlisteners limit is not enforced (#6257)
  * Issue 5327 - Fix test metadata
  * Security fix for CVE-2024-6237
  * Security fix for CVE-2024-5953
  * Security fix for CVE-2024-3657
  * Security fix for CVE-2024-2199
  * Issue 6256 - nsslapd-numlisteners limit is not enforced
  * Issue 6265 - lmdb - missing entries in range searches (#6266)
  * Issue 5853 - Update Cargo.lock
  * Bump openssl from 0.10.64 to 0.10.66 in /src
  * Issue 6245 - Revert __COVERITY__ ifndef (#6268)
  * Issue 6248 - fix fanalyzer warnings (#6253)
  * Issue 6238 - Fix test_audit_json_logging CI test regression (#6264)
  * Issue 6254 - Enabling replication for a sub suffix crashes browser (#6255)
  * Issue 6155 - ldap-agent fails to start because of permission error (#6179)
  * Issue 6238 - RFE - add option to write audit log in JSON format
  * Issue 6216 - CI test_fast_slow_import sometime fail (#6247)
  * Issue 6245 - covscan fixes (#6246)
  * Issue 6241 - Add support for CRYPT-YESCRYPT (#6242)
  * Issue 6229 - After an initial failure, subsequent online backups fail (#6230)
  * Issue 6236 - rpm: fix compatibility with RPM 4.20
  * Issue 6227 - dsconf schema does not show inChain matching rule (#6228)
  * Issue 6233 - CI test wait_for_async_feature_test sometime fails (#6234)
  * Bump ws from 7.5.9 to 7.5.10 in /src/cockpit/389-console
  * Issue 6224 - d2entry - Could not open id2entry err 0 - at startup when having sub-suffixes (#6225)
  * Issue 6222 - CI test acl/test_timeofday_keyword sometime fails (#6223)
  * Issue 6120 - /usr/lib64/dirsrv/plugins/libback-bdb.so has an invalid-looking DT_RPATH: /usr/lib/dirsrv
  * Issue 5772 - ONE LEVEL search fails to return sub-suffixes (#6219)
  * Issue 6183 - Slow ldif2db import on a newly created BDB backend (#6208)
  * Issue 6207 - Random crash in test_long_rdn CI test (#6215)
  * Bump braces from 3.0.2 to 3.0.3 in /src/cockpit/389-console
  * Issue 6191 - Node.js 16 actions are deprecated
  * Issue 6199 - unprotected search query during certificate based authentication (#6205)
  * Issue 6200 - Disable WebUI CI tests
  * Issue 6192 - Test failure: test_match_large_valueset
  * Issue 6181 - RFE - Allow system to manage uid/gid at startup
  * Issue 6188 - Add nsslapd-haproxy-trusted-ip to cn=schema (#6201)
  * Issue 6181 - RFE - Allow system to manage uid/gid at startup (#6182)
  * Issue 6170 - audit log buffering doesn't handle large updates
  * Issue 6193 - Test failure: test_tls_command_returns_error_text
  * Issue 6177 - Spec file cleanup
  * Issue 6189 - CI tests fail with `[Errno 2] No such file or directory: '/var/cache/dnf/metadata_lock.pid'`
  * Issue 6175 - Referential integrity plugin - in referint_thread_func does not handle null from ldap_utf8strtok (#6168)
  * Change default salt sizes generated in crypt_pwd (#6185)
  * Issue 6123 - Allow DNA plugin to reuse global config for bind method and connection protocol (#6124)
  * Issue 6159 - Add a test to check URP add and delete conflict (#6160)
  * Issue 6151 - Use %bcond macro for conditional builds in the spec file
  * Issue 6172 - RFE: improve the performance of evaluation of filter component when tested against a large valueset (like group members) (#6173)
  * Bump version to 3.1.0
  * fix issue6165 (#6167)</changelog>
  <changelog author="Thorsten Kukuk &lt;kukuk@suse.com&gt;" date="1722600000">- dirsrv-user.conf: Remove explicit dirsrv group definition, it's
  already specified implicit with "u dirsrv" and not all tools like
  duplicate group entries.</changelog>
  <changelog author="william.brown@suse.com" date="1725451200">- bsc#1229948 - CVE-2024-43806 - rustix::fs::Dir iterator with the linux_raw backend can cause memory explosion
- Update to version 3.1.1~git13.a9c7ff9:
  * Issue 2472 - Add a CI test (#6314)
  * Issue 6276 - Schema lib389 object is not keeping custom schema data upon editing (#6279)
  * Issue 3555 - UI - Fix audit issue with npm - micromatch (#6310)
  * Issue 5843 - Fix size formatting in dscreate output and enhance tests (#6309)
  * Issue 6301 - Fix long delay when setting replication agreement with dsconf (#6303)
  * Issue 6280 - Changelog trims updates from a given RID even if a consumer has not received any of them (#6281)
  * Issue 6296 - basic_test.py::test_conn_limits fails in main branch (#6300)
  * Issue 6295 - test_password_modify_non_utf8 should set default password storage scheme
  * Issue 6294 - Nightly copr builds are failing
  * Issue 6288 - dsidm crash with account policy when alt-state-attr is disabled (#6292)
  * Issue 2324 - Add a CI test (#6289)
  * Issue 6284 - BUG - freelist ordering causes high wtime (#6285)
  * Issue 6282 - BUG - out of tree build fails (#6283)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1732190400">- Add 389-ds-link-icu-uc.patch: properly link to icu-uc as well,
  which is no longer transparently added when linking icu-i18n
  (boo#1233578).</changelog>
</package>
<package pkgid="fc4a7c396c6ffef51d170cbf9bc1f03ad3bc6f64327be4fc6a8566a9c95e90a1de9df9f94146ff7b83c40b4239ca8707d826f41a21786b5c7ace0ffa2ab006fd" name="389-ds-devel" arch="x86_64">
  <version epoch="0" ver="3.1.1~git57.65773c3" rel="1.0.4.1.sr20241103"/>
  <changelog author="william.brown@suse.com" date="1662552000">- Update to version 2.3.0~git0.3db81913e:
  * Bump version to 2.3.0
  * Issue 5012 - Migrate pcre to pcre2 - remove match limit
  * Update CI tests
  * Issue 5356 - Make Rust non-optional and update default password storage scheme
  * Issue 5012 - Migrate pcre to pcre2
  * Issue 5428 - Fix regression with nscpEntryWsi computation
  * Fix missing 'not' in description (closes #5423) (#5424)
  * Issue 5421 - CI - makes replication/acceptance_test.py::test_modify_entry more robust (#5422)
  * Issue 3903 - fix repl keep alive event interval
  * Issue 5418 - Sync_repl may crash while managing invalid cookie (#5420)</changelog>
  <changelog author="william.brown@suse.com" date="1666353600">- Update to version 2.3.0~git22.8fedec0:
  * Issue 5495 - RFE - skip dds during migration. (#5496)
  * Issue 5491 - UI - Add rework and finish jpegPhoto functionality (#5492)
  * Issue 5368 - Retro Changelog trimming does not work (#5486)
  * Issue 5487 - Fix various issues with logconv.pl
  * Issue 5476 - RFE - add memberUid read aci by default (#5477)
  * Issue 5482 - lib389 - Can not enable replication with a mixed case suffix
  * Issue 5478 - Random crash in connection code during server shutdown (#5479)
  * Issue 3061 - RFE - Add password policy debug log level
  * Issue 5302 - Release tarballs don't contain cockpit webapp
  * Issue 5262 - high contention in find_entry_internal_dn on mixed load (#5264)</changelog>
  <changelog author="william.brown@suse.com" date="1679486400">- Update to version 2.3.2~git44.5e4551e:
  * Issue 4812 - Listener thread does not scale with a high num of established connections (#5706)
  * Issue 4812 - Listener thread does not scale with a high num of established connections (#5681)
  * Bump webpack from 5.75.0 to 5.76.0 in /src/cockpit/389-console (#5699)
  * Issue 5598 - (3rd) In 2.x, SRCH throughput drops by 10% because of handling of referral (#5692)
  * Issue 5598 - (2nd) In 2.x, SRCH throughput drops by 10% because of handling of referral (#5691)
  * Issue 5687 - UI - sensitive information disclosure
  * Issue 5661 - LMDB hangs while Rebuilding the replication changelog RUV (#5676)
  * Issue 5554 - Add more tests to security_basic_test suite
  * Issue 4583 - Update specfile to skip checks of ASAN builds
  * Issue 4758 - Add tests for WebUI</changelog>
  <changelog author="william.brown@suse.com" date="1681214400">- bsc#1210027 - apply upstream fix for setuptools
- Update to version 2.3.2~git53.a01e230:
  * Issue 5705 - Add config parameter to close client conns on failed bind (#5712)
  * Issue 4758 - Add tests for WebUI
  * Issue 5643 - Memory leak in entryrdn during delete (#5717)
  * Issue 5714 - UI - fix typo, db settings, log settings, and LDAP editor paginations
  * Issue 5701 - CLI - Fix referral mode setting (#5708)
  * Bump openssl from 0.10.45 to 0.10.48 in /src (#5709)
  * Issue 5710 - subtree search statistics for index lookup does not report ancestorid/entryrdn lookups (#5711)
  * Issue 5697 - Obsolete nsslapd-ldapimaprootdn attribute (#5698)
  * Issue 1081 - Stop schema replication from overwriting x-origin
  * Issue 4812 - Listener thread does not scale with a high num of established connections (#5706)</changelog>
  <changelog author="pgajdos@suse.com" date="1681819200">- python-six is not required</changelog>
  <changelog author="william.brown@suse.com" date="1682510400">- Update to version 2.4.0~git0.87efeb2:
  * Bump version to 2.4.0
  * Issue 5156 - RFE that implement slapi_memberof (#5694)
  * Issue 5734 - RFE - Exclude pwdFailureTime and ContextCSN (#5735)
  * Issue 5726 - ns-slapd crashing in ldbm_back_upgradednformat (#5727)
  * Issue 4758 - Add tests for WebUI
  * Issue 5718 - Memory leak in connection table (#5719)
  * Issue 5705 - Add config parameter to close client conns on failed bind (#5712)
  * Issue 4758 - Add tests for WebUI
  * Issue 5643 - Memory leak in entryrdn during delete (#5717)
  * Issue 5714 - UI - fix typo, db settings, log settings, and LDAP editor paginations</changelog>
  <changelog author="william.brown@suse.com" date="1684929600">- Update to version 2.4.0~git18.37ec5cd:
  * Issue 5751 - Cleanallruv task crashes on consumer (#5775)
  * Bump version to 2.4.1
  * Issue 5770 - RFE - Extend Password Adminstrators to allow skipping password info updates
  * Issue 5768 - CLI/UI - cert checks are too strict, and other issues
  * Issue 5722 - fix compilation warnings (#5771)
  * Issue 5765 - Improve installer selinux handling
  * Issue 152 - RFE - Add support for LDAP alias entries
  * Issue 5052 - BUG - Custom filters prevented entry deletion (#5060)
  * Issue 5752 - RFE - Provide a history for LastLoginTime (#5753)
  * Issue 5722 - RFE When a filter contains 'nsrole', improve response time by rewriting the filter (#5723)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1691668800">- Update to version 2.4.0~git69.89c2de5:
  * Issue 4551 - Part 2 - Fix build warning of previous PR (#5888)
  * Issue 5834 - AccountPolicyPlugin erroring for some users (#5866)
  * Issue 5872 - part 2 - fix is_dbi regression (#5887)
  * Issue 4758 - Add tests for WebUI
  * Issue 5848 - dsconf should prevent setting the replicaID for hub and consumer roles (#5849)
  * Issue 5883 - Remove connection mutex contention risk on autobind (#5886)
  * Issue 5872 - `dbscan()` in lib389 can return bytes
  * Bump version to 2.4.3
  * Issue 5729 - Memory leak in factory_create_extension (#5814)
  * Issue 5870 - ns-slapd crashes at startup if a backend has no suffix (#5871)</changelog>
  <changelog author="william.brown@suse.com" date="1692014400">- Update to version 2.4.0~git74.4297d88:
  * issue 5890 part 2 - Need a tester for testing multiple listening thread feature (#5897)
  * Issue i5846 - Crash when lmdb import is aborted (#5881)
  * Issue 5894 - lmdb import error fails with Could not store the entry (#5895)
  * Issue 5890 - Need a tester for testing multiple listening thread feature (#5891)
  * Issue 5082 - slugify: ModuleNotFoundError when running test cases</changelog>
  <changelog author="william.brown@suse.com" date="1701259200">- Update to version 2.4.0~git113.84a845c:
  * Issue 5980 - Improve instance startup failure handling (#5991)
  * Issue 5976 - Fix freeipa install regression with lmdb (#5977)
  * Issue 5984 - Crash when paged result search are abandoned - fix2 (#5987)
  * Issue 5984 - Crash when paged result search are abandoned (#5985)
  * Issue 5947 - CI test_vlv_recreation_reindex fails on LMDB (#5979)
  * Bump version to 2.5.0
  * Issue 5971 - CLI - Fix password prompt for repl status (#5972)
  * Issue 5973 - Fix fedora cop RawHide builds (#5974)
  * Revert "Issue 5761 - Worker thread dynamic management (#5796)" (#5970)
  * Issue 5966 - CLI - Custom schema object is removed on a failed edit (#5967)
  * Issue 5786 - Update permissions for Release workflow
  * Issue 5960 - Subpackages should have more strict interdependencies
  * Issue 3555 - UI - Fix audit issue with npm - babel/traverse (#5959)
  * Issue 4843 - Fix dscreate create-template issue (#5950)
  * bugfix for --passwd-file not working on latest version (#5934)
  * Issue 5843 - dsconf / dscreate should be able to handle lmdb parameters (#5943)
  * Bump postcss from 8.4.24 to 8.4.31 in /src/cockpit/389-console (#5945)
  * Issue 5938 - Attribute Names changed to lowercase after adding the Attributes (#5940)
  * issue 5924 - ASAN server build crash when looping opening/closing connections (#5926)
  * Issue 1925 - Add a CI test (#5936)
  * Issue 5732 - Localizing Cockpit's 389ds Plugin using CockpitPoPlugin (#5764)
  * Issue 1870 - Add a CI test (#5929)
  * Issue 843 - Add a warning to slapi_valueset_add_value_ext (#5925)
  * Issue 5761 - Worker thread dynamic management (#5796)
  * Issue 1802 - Improve ldclt man page (#5928)
  * Issue 1456 - Add a CI test that verifies there is no issue (#5927)
  * Issue 1317 - Add a CI test (#5923)
  * Issue 1081 - CI - Add more tests for overwriting x-origin issue (#5815)
  * Issue 1115 - Add a CI test (#5913)
  * Issue 5848 - Fix condition and add a CI test (#5916)
  * Issue 5848 - Fix condition and add a CI test (#5916)
  * Issue 5914 - UI - server settings page validation improvements and db index fixes
  * Issue 5909 - Multi listener hang with 20k connections (#5917)
  * Issue 5902 - Fix previous commit regression (#5919)
  * pass instance correctly to ds_is_older (#5903)
  * Issue 5909 - Multi listener hang with 20k connections (#5910)
  * Issue 5722 - improve testcase (#5904)
  * Issue 5203 - outdated version in provided metadata for lib389
  * Bug Description:</changelog>
  <changelog author="William Brown &lt;william.brown@suse.com&gt;" date="1702468800">- Update to support newer obs-service-cargo-vendor</changelog>
  <changelog author="william.brown@suse.com" date="1705492800">- Update to version 2.4.0~git126.5936946:
  * Issue 6028 - vlv index keys inconsistencies (#6031)
  * Issue 5989 - RFE support of inChain Matching Rule (#5990)
  * Issue 6022 - lmdb inconsistency between vlv index and vlv cache names (#6026)
  * Issue 6015 - Fix typo remeber (#6014)
  * Issue 6016 - Pin upload/download artifacts action to v3
  * Issue 5939 - During an update, if the target entry is reverted in the entry cache, the server should not retry to lock it (#6007)
  * Issue 4673 - Update Rust crates
  * Issue 6004 - idletimeout may be ignored (#6005)
  * Issue 5954 - Disable Transparent Huge Pages
  * Issue 5997 - test_inactivty_and_expiration CI testcase is wrong (#5999)
  * Issue 5993 - Fix several race condition around CI tests (#5996)
  * Issue 5944 - Reversion of the entry cache should be limited to BETXN plugin failures (#5994)
  * Bump openssl from 0.10.55 to 0.10.60 in /src (#5995)</changelog>
  <changelog author="william.brown@suse.com" date="1706875200">- Update to version 3.0.1~git1.1f95b57:
  * Issue 6061 - Certificate lifetime displayed as NaN
  * Bump version to 3.0.1
  * Issue 6043, 6044 - Enhance Rust and JS bundling and add SPDX licenses for both (#6045)
  * Issue 3555 - Remove audit-ci from dependencies (#6056)
  * Issue 6052 - Paged results test sets hostname to `localhost` on test collection
  * Issue 6051 - Drop unused pytest markers
  * Issue 6049 - lmdb - changelog is wrongly recreated by reindex task (#6050)
  * Issue 6047 - Add a check for tagged commits
  * Issue 6041 - dscreate ds-root - accepts relative path (#6042)
  * Switch default backend to lmdb and bump version to 3.0 (#6013)
  * Issue 6032 - Replication broken after backup restore (#6035)
  * Issue 6037 - Server crash at startup in vlvIndex_delete (#6038)
  * Issue 6034 - Change replica_id from str to int</changelog>
  <changelog author="william.brown@suse.com" date="1713873600">- Update to version 3.0.1~git37.55529d1:
  * Issue 6082 - Remove explicit dependencies toward libdb - revert default (#6145)
  * Issue 6141 - freeipa test_topology_TestCASpecificRUVs is failing (#6144)
  * Issue 6142 - [RFE] Add LMDB configuration related checks into Healthcheck tool (#6143)
  * Issue 6136 - failure in freeipa tests (#6137)
  * Issue 6133 - Move slapi_pblock_set_flag_operation_notes() to slapi-plugin.h
  * Issue 5105 - lmdb - Cannot create entries with long rdn - fix covscan (#6131)
  * Issue i6057 - Fix3 - Fix covscan issues (#6127)
  * Issue 6105 - lmdb - Cannot create entries with long rdn (#6130)
  * Issue 6125 - dscreate interactive fails when chosing mdb backend (#6126)
  * Issue 6080 - ns-slapd crash in referint_get_config (#6081)
  * Issue 6110 - Typo in Account Policy plugin message
  * Issue 6057 - vlv search may result wrong result with lmdb - Fix 2 (#6121)
  * Issue 6119 - Synchronise accept_thread with slapd_daemon (#6120)
  * Issue 6117 - Fix the UTC offset print (#6118)
  * Issue 6112 - RFE - add new operation note for MFA authentications
  * Issue 5842 - Add log buffering to audit log
  * Issue 5305 - OpenLDAP version autodetection doesn't work
  * Issue 3527 - Support HAProxy and Instance on the same machine configuration (#6107)
  * Issue 6057 - vlv search may result wrong result with lmdb (#6091)
  * Issue 6103 - New connection timeout error breaks errormap (#6104)
  * Issue 6086 - Ambiguous warning about SELinux in dscreate for non-root user
  * Issue 6092 - passwordHistory is not updated with a pre-hashed password (#6093)
  * Issue 6067 - Improve dsidm CLI No Such Entry handling (#6079)
  * Issue 6096 - Improve connection timeout error logging (#6097)
  * Issue 5647 - covscan: memory leak in audit log when adding entries
  * Issue 6094 - Add coverity scan workflow
  * Issue 6067 - Add hidden -v and -j options to each CLI subcommand (#6088)
  * Issue 5487 - Fix various isses with logconv.pl (#6085)
  * Issue 5962 - Rearrange includes for 32-bit support logic
  * Issue 6046 - Make dscreate to work during kickstart installations
  * Issue 6082 - Remove explicit dependencies toward libdb (#6083)
  * Issue 6073 - Improve error log when running out of memory (#6084)
  * Issue 6071 - Instance creation/removal is slow
  * Issue 6010 - 389 ds ignores nsslapd-maxdescriptors (#6027)
  * Issue 6075 - Ignore build artifacts (#6076)
  * Issue 6068 - Add dscontainer stop function</changelog>
  <changelog author="william.brown@suse.com" date="1715688000">- Update to version 3.0.1~git39.e24615f:
  * Issue 6142 - Fix CI tests (#6161)
  * Issue 6157 - Cockipt crashes when getting replication status if topology contains an old 389ds version (#6158)</changelog>
  <changelog author="william.brown@suse.com" date="1722427200">- Update to version 3.1.1~git0.aef1668:
  * Bump version to 3.1.1
  * Issue 6256 - nsslapd-numlisteners limit is not enforced (#6257)
  * Issue 5327 - Fix test metadata
  * Security fix for CVE-2024-6237
  * Security fix for CVE-2024-5953
  * Security fix for CVE-2024-3657
  * Security fix for CVE-2024-2199
  * Issue 6256 - nsslapd-numlisteners limit is not enforced
  * Issue 6265 - lmdb - missing entries in range searches (#6266)
  * Issue 5853 - Update Cargo.lock
  * Bump openssl from 0.10.64 to 0.10.66 in /src
  * Issue 6245 - Revert __COVERITY__ ifndef (#6268)
  * Issue 6248 - fix fanalyzer warnings (#6253)
  * Issue 6238 - Fix test_audit_json_logging CI test regression (#6264)
  * Issue 6254 - Enabling replication for a sub suffix crashes browser (#6255)
  * Issue 6155 - ldap-agent fails to start because of permission error (#6179)
  * Issue 6238 - RFE - add option to write audit log in JSON format
  * Issue 6216 - CI test_fast_slow_import sometime fail (#6247)
  * Issue 6245 - covscan fixes (#6246)
  * Issue 6241 - Add support for CRYPT-YESCRYPT (#6242)
  * Issue 6229 - After an initial failure, subsequent online backups fail (#6230)
  * Issue 6236 - rpm: fix compatibility with RPM 4.20
  * Issue 6227 - dsconf schema does not show inChain matching rule (#6228)
  * Issue 6233 - CI test wait_for_async_feature_test sometime fails (#6234)
  * Bump ws from 7.5.9 to 7.5.10 in /src/cockpit/389-console
  * Issue 6224 - d2entry - Could not open id2entry err 0 - at startup when having sub-suffixes (#6225)
  * Issue 6222 - CI test acl/test_timeofday_keyword sometime fails (#6223)
  * Issue 6120 - /usr/lib64/dirsrv/plugins/libback-bdb.so has an invalid-looking DT_RPATH: /usr/lib/dirsrv
  * Issue 5772 - ONE LEVEL search fails to return sub-suffixes (#6219)
  * Issue 6183 - Slow ldif2db import on a newly created BDB backend (#6208)
  * Issue 6207 - Random crash in test_long_rdn CI test (#6215)
  * Bump braces from 3.0.2 to 3.0.3 in /src/cockpit/389-console
  * Issue 6191 - Node.js 16 actions are deprecated
  * Issue 6199 - unprotected search query during certificate based authentication (#6205)
  * Issue 6200 - Disable WebUI CI tests
  * Issue 6192 - Test failure: test_match_large_valueset
  * Issue 6181 - RFE - Allow system to manage uid/gid at startup
  * Issue 6188 - Add nsslapd-haproxy-trusted-ip to cn=schema (#6201)
  * Issue 6181 - RFE - Allow system to manage uid/gid at startup (#6182)
  * Issue 6170 - audit log buffering doesn't handle large updates
  * Issue 6193 - Test failure: test_tls_command_returns_error_text
  * Issue 6177 - Spec file cleanup
  * Issue 6189 - CI tests fail with `[Errno 2] No such file or directory: '/var/cache/dnf/metadata_lock.pid'`
  * Issue 6175 - Referential integrity plugin - in referint_thread_func does not handle null from ldap_utf8strtok (#6168)
  * Change default salt sizes generated in crypt_pwd (#6185)
  * Issue 6123 - Allow DNA plugin to reuse global config for bind method and connection protocol (#6124)
  * Issue 6159 - Add a test to check URP add and delete conflict (#6160)
  * Issue 6151 - Use %bcond macro for conditional builds in the spec file
  * Issue 6172 - RFE: improve the performance of evaluation of filter component when tested against a large valueset (like group members) (#6173)
  * Bump version to 3.1.0
  * fix issue6165 (#6167)</changelog>
  <changelog author="Thorsten Kukuk &lt;kukuk@suse.com&gt;" date="1722600000">- dirsrv-user.conf: Remove explicit dirsrv group definition, it's
  already specified implicit with "u dirsrv" and not all tools like
  duplicate group entries.</changelog>
  <changelog author="william.brown@suse.com" date="1725451200">- bsc#1229948 - CVE-2024-43806 - rustix::fs::Dir iterator with the linux_raw backend can cause memory explosion
- Update to version 3.1.1~git13.a9c7ff9:
  * Issue 2472 - Add a CI test (#6314)
  * Issue 6276 - Schema lib389 object is not keeping custom schema data upon editing (#6279)
  * Issue 3555 - UI - Fix audit issue with npm - micromatch (#6310)
  * Issue 5843 - Fix size formatting in dscreate output and enhance tests (#6309)
  * Issue 6301 - Fix long delay when setting replication agreement with dsconf (#6303)
  * Issue 6280 - Changelog trims updates from a given RID even if a consumer has not received any of them (#6281)
  * Issue 6296 - basic_test.py::test_conn_limits fails in main branch (#6300)
  * Issue 6295 - test_password_modify_non_utf8 should set default password storage scheme
  * Issue 6294 - Nightly copr builds are failing
  * Issue 6288 - dsidm crash with account policy when alt-state-attr is disabled (#6292)
  * Issue 2324 - Add a CI test (#6289)
  * Issue 6284 - BUG - freelist ordering causes high wtime (#6285)
  * Issue 6282 - BUG - out of tree build fails (#6283)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1732190400">- Add 389-ds-link-icu-uc.patch: properly link to icu-uc as well,
  which is no longer transparently added when linking icu-i18n
  (boo#1233578).</changelog>
  <changelog author="william.brown@suse.com" date="1732881600">- Remove 389-ds-link-icu-uc.patch - upstreamed
- Update to version 3.1.1~git57.65773c3:
  * Issue 6340 - RFE - extract keys once (#6413)
  * Issue 6415 - BUG - Incorrect icu linking (#6416)
  * Issue 6420 - Update dsidm user get_dn test (#6421)
  * Issue 6258 - Resolve race condition for two tests in health_config.py
  * Bump cross-spawn from 7.0.3 to 7.0.6 in /src/cockpit/389-console (#6407)
  * Issue 6386 - backup/restore broken after db log rotation (#6406)
  * Issue 6401 - Remove logging macros
  * Issue 6404 - UI - Add npm pretter package
  * Issue 6374 - nsslapd-mdb-max-dbs autotuning doesn't work properly (#6400)
  * Issue 5842 - Add log buffering for error log
  * Issue 6397 - Remove deprecated setting for HR time stamps in logs
  * Issue 6390 - Adjust cleanAllRUV max per txn and interval limits
  * Issue 6349 - RFE - extract keys once (#6363) (#6394)
  * Issue 6387 - Use make macro in the spec file
  * Issue 6359 - Add exception to GPL license in license tag
  * Issue 6381 - CleanAllRUV - move changelog purging to the very end of the task
  * Issue 5920 - pamModuleIsThreadSafe is missing in the schema
  * Issue 6377 - syntax error in setup.py (#6378)
  * Issue 6349 - RFE - Use previously extracted key path (#6363)
  * Issue 6067 - Update dsidm to prioritize basedn from .dsrc over interactive input (#6362)
  * Issue 6347 - better fix for desyncronized vlv cache (#6358)
  * Issue 6243 - dsctl bdb2mdb should cleanly fail if bundled libdb is not available (#6351)
  * Issue 6331 - UI - Instance fails to load when DB backup directory doesn't exist (#6332)
  * Issue 6356 - On LMDB, after an update the impact VLV index, the vlv recno cache is not systematically cleared (#6357)
  * Issue 6056 - WebUI supports only instances with BDB (#6299)
  * Issue 6339 - Address Coverity scan issues in memberof and bdb_layer (#6353)
  * Issue 6328 - vlv control may not be logged (#6354)
  * Issue 6347 - VLV search sometime fails with operation error (#6349)
  * Issue 6343 - Improve online import robustness when the server is under load
  * Issue 6345 - Ensure all slapi_log_err calls end format strings with newline character \n (#6346)
  * Issue 6064 - bdb2mdb shows errors (#6341)
  * Issue 6336 - Fix failing CI tests (roles) due to slow import (#6337)
  * Fix duplicate detection logic by ensuring exact match on string length (#6333)
  * Issue 6304 - RFE when memberof is enabled, defer updates of members from the update of the group (#6305)
  * Issue 6329 - lmdb typo in error log notice message (#6330)
  * Issue 6324 - Provide more information in the error message during setup_ol_tls_conn() (#6325)
  * Issue 5965 - UI, CLI - Fix Account Policy Plugin functionality issues (#6323)
  * Issue 6188 - Check if nsslapd-haproxy-trusted-ip attribute is returned in default schema
  * Issue 6319 - bdb subpackage has `%description` in the wrong place
  * Issue 6321 - lib389 get_db_lib function may returns the wrong db type (#6322)
  * Issue 6245 - Fix some other coverity scan regressions (#6273)
  * Issue 6316 - lmdb reindex is broken if index type is specified (#6318)
  * Issue 6090 - Fix dbscan options and man pages (#6315)
  * Issue 6307 - Wrong set of entries returned for some search filters (#6308)</changelog>
</package>
<package pkgid="e8b591e417739bf61837e24b7eff0f5e167cf16de6593a991c2f76003820c12c67dc65a901a41d2a70c58844f5bdf1040c84dcffd5b47c616dee54c72453d1bf" name="389-ds-snmp" arch="x86_64">
  <version epoch="0" ver="3.1.1~git13.a9c7ff9" rel="2.0.2.1.sr20241103"/>
  <changelog author="William Brown &lt;william.brown@suse.com&gt;" date="1660132800">- Update _constraints due to random build failures caused by OBS environmental
  issues that aren't out fault. (out of disk, systemic builder issues).
- Add debugging about the environment to assist with OBS randomly failing
  in the future.</changelog>
  <changelog author="william.brown@suse.com" date="1662552000">- Update to version 2.3.0~git0.3db81913e:
  * Bump version to 2.3.0
  * Issue 5012 - Migrate pcre to pcre2 - remove match limit
  * Update CI tests
  * Issue 5356 - Make Rust non-optional and update default password storage scheme
  * Issue 5012 - Migrate pcre to pcre2
  * Issue 5428 - Fix regression with nscpEntryWsi computation
  * Fix missing 'not' in description (closes #5423) (#5424)
  * Issue 5421 - CI - makes replication/acceptance_test.py::test_modify_entry more robust (#5422)
  * Issue 3903 - fix repl keep alive event interval
  * Issue 5418 - Sync_repl may crash while managing invalid cookie (#5420)</changelog>
  <changelog author="william.brown@suse.com" date="1666353600">- Update to version 2.3.0~git22.8fedec0:
  * Issue 5495 - RFE - skip dds during migration. (#5496)
  * Issue 5491 - UI - Add rework and finish jpegPhoto functionality (#5492)
  * Issue 5368 - Retro Changelog trimming does not work (#5486)
  * Issue 5487 - Fix various issues with logconv.pl
  * Issue 5476 - RFE - add memberUid read aci by default (#5477)
  * Issue 5482 - lib389 - Can not enable replication with a mixed case suffix
  * Issue 5478 - Random crash in connection code during server shutdown (#5479)
  * Issue 3061 - RFE - Add password policy debug log level
  * Issue 5302 - Release tarballs don't contain cockpit webapp
  * Issue 5262 - high contention in find_entry_internal_dn on mixed load (#5264)</changelog>
  <changelog author="william.brown@suse.com" date="1679486400">- Update to version 2.3.2~git44.5e4551e:
  * Issue 4812 - Listener thread does not scale with a high num of established connections (#5706)
  * Issue 4812 - Listener thread does not scale with a high num of established connections (#5681)
  * Bump webpack from 5.75.0 to 5.76.0 in /src/cockpit/389-console (#5699)
  * Issue 5598 - (3rd) In 2.x, SRCH throughput drops by 10% because of handling of referral (#5692)
  * Issue 5598 - (2nd) In 2.x, SRCH throughput drops by 10% because of handling of referral (#5691)
  * Issue 5687 - UI - sensitive information disclosure
  * Issue 5661 - LMDB hangs while Rebuilding the replication changelog RUV (#5676)
  * Issue 5554 - Add more tests to security_basic_test suite
  * Issue 4583 - Update specfile to skip checks of ASAN builds
  * Issue 4758 - Add tests for WebUI</changelog>
  <changelog author="william.brown@suse.com" date="1681214400">- bsc#1210027 - apply upstream fix for setuptools
- Update to version 2.3.2~git53.a01e230:
  * Issue 5705 - Add config parameter to close client conns on failed bind (#5712)
  * Issue 4758 - Add tests for WebUI
  * Issue 5643 - Memory leak in entryrdn during delete (#5717)
  * Issue 5714 - UI - fix typo, db settings, log settings, and LDAP editor paginations
  * Issue 5701 - CLI - Fix referral mode setting (#5708)
  * Bump openssl from 0.10.45 to 0.10.48 in /src (#5709)
  * Issue 5710 - subtree search statistics for index lookup does not report ancestorid/entryrdn lookups (#5711)
  * Issue 5697 - Obsolete nsslapd-ldapimaprootdn attribute (#5698)
  * Issue 1081 - Stop schema replication from overwriting x-origin
  * Issue 4812 - Listener thread does not scale with a high num of established connections (#5706)</changelog>
  <changelog author="pgajdos@suse.com" date="1681819200">- python-six is not required</changelog>
  <changelog author="william.brown@suse.com" date="1682510400">- Update to version 2.4.0~git0.87efeb2:
  * Bump version to 2.4.0
  * Issue 5156 - RFE that implement slapi_memberof (#5694)
  * Issue 5734 - RFE - Exclude pwdFailureTime and ContextCSN (#5735)
  * Issue 5726 - ns-slapd crashing in ldbm_back_upgradednformat (#5727)
  * Issue 4758 - Add tests for WebUI
  * Issue 5718 - Memory leak in connection table (#5719)
  * Issue 5705 - Add config parameter to close client conns on failed bind (#5712)
  * Issue 4758 - Add tests for WebUI
  * Issue 5643 - Memory leak in entryrdn during delete (#5717)
  * Issue 5714 - UI - fix typo, db settings, log settings, and LDAP editor paginations</changelog>
  <changelog author="william.brown@suse.com" date="1684929600">- Update to version 2.4.0~git18.37ec5cd:
  * Issue 5751 - Cleanallruv task crashes on consumer (#5775)
  * Bump version to 2.4.1
  * Issue 5770 - RFE - Extend Password Adminstrators to allow skipping password info updates
  * Issue 5768 - CLI/UI - cert checks are too strict, and other issues
  * Issue 5722 - fix compilation warnings (#5771)
  * Issue 5765 - Improve installer selinux handling
  * Issue 152 - RFE - Add support for LDAP alias entries
  * Issue 5052 - BUG - Custom filters prevented entry deletion (#5060)
  * Issue 5752 - RFE - Provide a history for LastLoginTime (#5753)
  * Issue 5722 - RFE When a filter contains 'nsrole', improve response time by rewriting the filter (#5723)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1691668800">- Update to version 2.4.0~git69.89c2de5:
  * Issue 4551 - Part 2 - Fix build warning of previous PR (#5888)
  * Issue 5834 - AccountPolicyPlugin erroring for some users (#5866)
  * Issue 5872 - part 2 - fix is_dbi regression (#5887)
  * Issue 4758 - Add tests for WebUI
  * Issue 5848 - dsconf should prevent setting the replicaID for hub and consumer roles (#5849)
  * Issue 5883 - Remove connection mutex contention risk on autobind (#5886)
  * Issue 5872 - `dbscan()` in lib389 can return bytes
  * Bump version to 2.4.3
  * Issue 5729 - Memory leak in factory_create_extension (#5814)
  * Issue 5870 - ns-slapd crashes at startup if a backend has no suffix (#5871)</changelog>
  <changelog author="william.brown@suse.com" date="1692014400">- Update to version 2.4.0~git74.4297d88:
  * issue 5890 part 2 - Need a tester for testing multiple listening thread feature (#5897)
  * Issue i5846 - Crash when lmdb import is aborted (#5881)
  * Issue 5894 - lmdb import error fails with Could not store the entry (#5895)
  * Issue 5890 - Need a tester for testing multiple listening thread feature (#5891)
  * Issue 5082 - slugify: ModuleNotFoundError when running test cases</changelog>
  <changelog author="william.brown@suse.com" date="1701259200">- Update to version 2.4.0~git113.84a845c:
  * Issue 5980 - Improve instance startup failure handling (#5991)
  * Issue 5976 - Fix freeipa install regression with lmdb (#5977)
  * Issue 5984 - Crash when paged result search are abandoned - fix2 (#5987)
  * Issue 5984 - Crash when paged result search are abandoned (#5985)
  * Issue 5947 - CI test_vlv_recreation_reindex fails on LMDB (#5979)
  * Bump version to 2.5.0
  * Issue 5971 - CLI - Fix password prompt for repl status (#5972)
  * Issue 5973 - Fix fedora cop RawHide builds (#5974)
  * Revert "Issue 5761 - Worker thread dynamic management (#5796)" (#5970)
  * Issue 5966 - CLI - Custom schema object is removed on a failed edit (#5967)
  * Issue 5786 - Update permissions for Release workflow
  * Issue 5960 - Subpackages should have more strict interdependencies
  * Issue 3555 - UI - Fix audit issue with npm - babel/traverse (#5959)
  * Issue 4843 - Fix dscreate create-template issue (#5950)
  * bugfix for --passwd-file not working on latest version (#5934)
  * Issue 5843 - dsconf / dscreate should be able to handle lmdb parameters (#5943)
  * Bump postcss from 8.4.24 to 8.4.31 in /src/cockpit/389-console (#5945)
  * Issue 5938 - Attribute Names changed to lowercase after adding the Attributes (#5940)
  * issue 5924 - ASAN server build crash when looping opening/closing connections (#5926)
  * Issue 1925 - Add a CI test (#5936)
  * Issue 5732 - Localizing Cockpit's 389ds Plugin using CockpitPoPlugin (#5764)
  * Issue 1870 - Add a CI test (#5929)
  * Issue 843 - Add a warning to slapi_valueset_add_value_ext (#5925)
  * Issue 5761 - Worker thread dynamic management (#5796)
  * Issue 1802 - Improve ldclt man page (#5928)
  * Issue 1456 - Add a CI test that verifies there is no issue (#5927)
  * Issue 1317 - Add a CI test (#5923)
  * Issue 1081 - CI - Add more tests for overwriting x-origin issue (#5815)
  * Issue 1115 - Add a CI test (#5913)
  * Issue 5848 - Fix condition and add a CI test (#5916)
  * Issue 5848 - Fix condition and add a CI test (#5916)
  * Issue 5914 - UI - server settings page validation improvements and db index fixes
  * Issue 5909 - Multi listener hang with 20k connections (#5917)
  * Issue 5902 - Fix previous commit regression (#5919)
  * pass instance correctly to ds_is_older (#5903)
  * Issue 5909 - Multi listener hang with 20k connections (#5910)
  * Issue 5722 - improve testcase (#5904)
  * Issue 5203 - outdated version in provided metadata for lib389
  * Bug Description:</changelog>
  <changelog author="William Brown &lt;william.brown@suse.com&gt;" date="1702468800">- Update to support newer obs-service-cargo-vendor</changelog>
  <changelog author="william.brown@suse.com" date="1705492800">- Update to version 2.4.0~git126.5936946:
  * Issue 6028 - vlv index keys inconsistencies (#6031)
  * Issue 5989 - RFE support of inChain Matching Rule (#5990)
  * Issue 6022 - lmdb inconsistency between vlv index and vlv cache names (#6026)
  * Issue 6015 - Fix typo remeber (#6014)
  * Issue 6016 - Pin upload/download artifacts action to v3
  * Issue 5939 - During an update, if the target entry is reverted in the entry cache, the server should not retry to lock it (#6007)
  * Issue 4673 - Update Rust crates
  * Issue 6004 - idletimeout may be ignored (#6005)
  * Issue 5954 - Disable Transparent Huge Pages
  * Issue 5997 - test_inactivty_and_expiration CI testcase is wrong (#5999)
  * Issue 5993 - Fix several race condition around CI tests (#5996)
  * Issue 5944 - Reversion of the entry cache should be limited to BETXN plugin failures (#5994)
  * Bump openssl from 0.10.55 to 0.10.60 in /src (#5995)</changelog>
  <changelog author="william.brown@suse.com" date="1706875200">- Update to version 3.0.1~git1.1f95b57:
  * Issue 6061 - Certificate lifetime displayed as NaN
  * Bump version to 3.0.1
  * Issue 6043, 6044 - Enhance Rust and JS bundling and add SPDX licenses for both (#6045)
  * Issue 3555 - Remove audit-ci from dependencies (#6056)
  * Issue 6052 - Paged results test sets hostname to `localhost` on test collection
  * Issue 6051 - Drop unused pytest markers
  * Issue 6049 - lmdb - changelog is wrongly recreated by reindex task (#6050)
  * Issue 6047 - Add a check for tagged commits
  * Issue 6041 - dscreate ds-root - accepts relative path (#6042)
  * Switch default backend to lmdb and bump version to 3.0 (#6013)
  * Issue 6032 - Replication broken after backup restore (#6035)
  * Issue 6037 - Server crash at startup in vlvIndex_delete (#6038)
  * Issue 6034 - Change replica_id from str to int</changelog>
  <changelog author="william.brown@suse.com" date="1713873600">- Update to version 3.0.1~git37.55529d1:
  * Issue 6082 - Remove explicit dependencies toward libdb - revert default (#6145)
  * Issue 6141 - freeipa test_topology_TestCASpecificRUVs is failing (#6144)
  * Issue 6142 - [RFE] Add LMDB configuration related checks into Healthcheck tool (#6143)
  * Issue 6136 - failure in freeipa tests (#6137)
  * Issue 6133 - Move slapi_pblock_set_flag_operation_notes() to slapi-plugin.h
  * Issue 5105 - lmdb - Cannot create entries with long rdn - fix covscan (#6131)
  * Issue i6057 - Fix3 - Fix covscan issues (#6127)
  * Issue 6105 - lmdb - Cannot create entries with long rdn (#6130)
  * Issue 6125 - dscreate interactive fails when chosing mdb backend (#6126)
  * Issue 6080 - ns-slapd crash in referint_get_config (#6081)
  * Issue 6110 - Typo in Account Policy plugin message
  * Issue 6057 - vlv search may result wrong result with lmdb - Fix 2 (#6121)
  * Issue 6119 - Synchronise accept_thread with slapd_daemon (#6120)
  * Issue 6117 - Fix the UTC offset print (#6118)
  * Issue 6112 - RFE - add new operation note for MFA authentications
  * Issue 5842 - Add log buffering to audit log
  * Issue 5305 - OpenLDAP version autodetection doesn't work
  * Issue 3527 - Support HAProxy and Instance on the same machine configuration (#6107)
  * Issue 6057 - vlv search may result wrong result with lmdb (#6091)
  * Issue 6103 - New connection timeout error breaks errormap (#6104)
  * Issue 6086 - Ambiguous warning about SELinux in dscreate for non-root user
  * Issue 6092 - passwordHistory is not updated with a pre-hashed password (#6093)
  * Issue 6067 - Improve dsidm CLI No Such Entry handling (#6079)
  * Issue 6096 - Improve connection timeout error logging (#6097)
  * Issue 5647 - covscan: memory leak in audit log when adding entries
  * Issue 6094 - Add coverity scan workflow
  * Issue 6067 - Add hidden -v and -j options to each CLI subcommand (#6088)
  * Issue 5487 - Fix various isses with logconv.pl (#6085)
  * Issue 5962 - Rearrange includes for 32-bit support logic
  * Issue 6046 - Make dscreate to work during kickstart installations
  * Issue 6082 - Remove explicit dependencies toward libdb (#6083)
  * Issue 6073 - Improve error log when running out of memory (#6084)
  * Issue 6071 - Instance creation/removal is slow
  * Issue 6010 - 389 ds ignores nsslapd-maxdescriptors (#6027)
  * Issue 6075 - Ignore build artifacts (#6076)
  * Issue 6068 - Add dscontainer stop function</changelog>
  <changelog author="william.brown@suse.com" date="1715688000">- Update to version 3.0.1~git39.e24615f:
  * Issue 6142 - Fix CI tests (#6161)
  * Issue 6157 - Cockipt crashes when getting replication status if topology contains an old 389ds version (#6158)</changelog>
  <changelog author="william.brown@suse.com" date="1722427200">- Update to version 3.1.1~git0.aef1668:
  * Bump version to 3.1.1
  * Issue 6256 - nsslapd-numlisteners limit is not enforced (#6257)
  * Issue 5327 - Fix test metadata
  * Security fix for CVE-2024-6237
  * Security fix for CVE-2024-5953
  * Security fix for CVE-2024-3657
  * Security fix for CVE-2024-2199
  * Issue 6256 - nsslapd-numlisteners limit is not enforced
  * Issue 6265 - lmdb - missing entries in range searches (#6266)
  * Issue 5853 - Update Cargo.lock
  * Bump openssl from 0.10.64 to 0.10.66 in /src
  * Issue 6245 - Revert __COVERITY__ ifndef (#6268)
  * Issue 6248 - fix fanalyzer warnings (#6253)
  * Issue 6238 - Fix test_audit_json_logging CI test regression (#6264)
  * Issue 6254 - Enabling replication for a sub suffix crashes browser (#6255)
  * Issue 6155 - ldap-agent fails to start because of permission error (#6179)
  * Issue 6238 - RFE - add option to write audit log in JSON format
  * Issue 6216 - CI test_fast_slow_import sometime fail (#6247)
  * Issue 6245 - covscan fixes (#6246)
  * Issue 6241 - Add support for CRYPT-YESCRYPT (#6242)
  * Issue 6229 - After an initial failure, subsequent online backups fail (#6230)
  * Issue 6236 - rpm: fix compatibility with RPM 4.20
  * Issue 6227 - dsconf schema does not show inChain matching rule (#6228)
  * Issue 6233 - CI test wait_for_async_feature_test sometime fails (#6234)
  * Bump ws from 7.5.9 to 7.5.10 in /src/cockpit/389-console
  * Issue 6224 - d2entry - Could not open id2entry err 0 - at startup when having sub-suffixes (#6225)
  * Issue 6222 - CI test acl/test_timeofday_keyword sometime fails (#6223)
  * Issue 6120 - /usr/lib64/dirsrv/plugins/libback-bdb.so has an invalid-looking DT_RPATH: /usr/lib/dirsrv
  * Issue 5772 - ONE LEVEL search fails to return sub-suffixes (#6219)
  * Issue 6183 - Slow ldif2db import on a newly created BDB backend (#6208)
  * Issue 6207 - Random crash in test_long_rdn CI test (#6215)
  * Bump braces from 3.0.2 to 3.0.3 in /src/cockpit/389-console
  * Issue 6191 - Node.js 16 actions are deprecated
  * Issue 6199 - unprotected search query during certificate based authentication (#6205)
  * Issue 6200 - Disable WebUI CI tests
  * Issue 6192 - Test failure: test_match_large_valueset
  * Issue 6181 - RFE - Allow system to manage uid/gid at startup
  * Issue 6188 - Add nsslapd-haproxy-trusted-ip to cn=schema (#6201)
  * Issue 6181 - RFE - Allow system to manage uid/gid at startup (#6182)
  * Issue 6170 - audit log buffering doesn't handle large updates
  * Issue 6193 - Test failure: test_tls_command_returns_error_text
  * Issue 6177 - Spec file cleanup
  * Issue 6189 - CI tests fail with `[Errno 2] No such file or directory: '/var/cache/dnf/metadata_lock.pid'`
  * Issue 6175 - Referential integrity plugin - in referint_thread_func does not handle null from ldap_utf8strtok (#6168)
  * Change default salt sizes generated in crypt_pwd (#6185)
  * Issue 6123 - Allow DNA plugin to reuse global config for bind method and connection protocol (#6124)
  * Issue 6159 - Add a test to check URP add and delete conflict (#6160)
  * Issue 6151 - Use %bcond macro for conditional builds in the spec file
  * Issue 6172 - RFE: improve the performance of evaluation of filter component when tested against a large valueset (like group members) (#6173)
  * Bump version to 3.1.0
  * fix issue6165 (#6167)</changelog>
  <changelog author="Thorsten Kukuk &lt;kukuk@suse.com&gt;" date="1722600000">- dirsrv-user.conf: Remove explicit dirsrv group definition, it's
  already specified implicit with "u dirsrv" and not all tools like
  duplicate group entries.</changelog>
  <changelog author="william.brown@suse.com" date="1725451200">- bsc#1229948 - CVE-2024-43806 - rustix::fs::Dir iterator with the linux_raw backend can cause memory explosion
- Update to version 3.1.1~git13.a9c7ff9:
  * Issue 2472 - Add a CI test (#6314)
  * Issue 6276 - Schema lib389 object is not keeping custom schema data upon editing (#6279)
  * Issue 3555 - UI - Fix audit issue with npm - micromatch (#6310)
  * Issue 5843 - Fix size formatting in dscreate output and enhance tests (#6309)
  * Issue 6301 - Fix long delay when setting replication agreement with dsconf (#6303)
  * Issue 6280 - Changelog trims updates from a given RID even if a consumer has not received any of them (#6281)
  * Issue 6296 - basic_test.py::test_conn_limits fails in main branch (#6300)
  * Issue 6295 - test_password_modify_non_utf8 should set default password storage scheme
  * Issue 6294 - Nightly copr builds are failing
  * Issue 6288 - dsidm crash with account policy when alt-state-attr is disabled (#6292)
  * Issue 2324 - Add a CI test (#6289)
  * Issue 6284 - BUG - freelist ordering causes high wtime (#6285)
  * Issue 6282 - BUG - out of tree build fails (#6283)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1732190400">- Add 389-ds-link-icu-uc.patch: properly link to icu-uc as well,
  which is no longer transparently added when linking icu-i18n
  (boo#1233578).</changelog>
</package>
<package pkgid="8cc56d89ec9afb46b89794faa6e768d82b18a5baf4bb48b4e22b9165bd03b64b3e0f985c11e72268c894434d1486452bb22ed72a6e37250334360e79a2d0b67c" name="389-ds-snmp" arch="x86_64">
  <version epoch="0" ver="3.1.1~git57.65773c3" rel="1.0.4.1.sr20241103"/>
  <changelog author="william.brown@suse.com" date="1662552000">- Update to version 2.3.0~git0.3db81913e:
  * Bump version to 2.3.0
  * Issue 5012 - Migrate pcre to pcre2 - remove match limit
  * Update CI tests
  * Issue 5356 - Make Rust non-optional and update default password storage scheme
  * Issue 5012 - Migrate pcre to pcre2
  * Issue 5428 - Fix regression with nscpEntryWsi computation
  * Fix missing 'not' in description (closes #5423) (#5424)
  * Issue 5421 - CI - makes replication/acceptance_test.py::test_modify_entry more robust (#5422)
  * Issue 3903 - fix repl keep alive event interval
  * Issue 5418 - Sync_repl may crash while managing invalid cookie (#5420)</changelog>
  <changelog author="william.brown@suse.com" date="1666353600">- Update to version 2.3.0~git22.8fedec0:
  * Issue 5495 - RFE - skip dds during migration. (#5496)
  * Issue 5491 - UI - Add rework and finish jpegPhoto functionality (#5492)
  * Issue 5368 - Retro Changelog trimming does not work (#5486)
  * Issue 5487 - Fix various issues with logconv.pl
  * Issue 5476 - RFE - add memberUid read aci by default (#5477)
  * Issue 5482 - lib389 - Can not enable replication with a mixed case suffix
  * Issue 5478 - Random crash in connection code during server shutdown (#5479)
  * Issue 3061 - RFE - Add password policy debug log level
  * Issue 5302 - Release tarballs don't contain cockpit webapp
  * Issue 5262 - high contention in find_entry_internal_dn on mixed load (#5264)</changelog>
  <changelog author="william.brown@suse.com" date="1679486400">- Update to version 2.3.2~git44.5e4551e:
  * Issue 4812 - Listener thread does not scale with a high num of established connections (#5706)
  * Issue 4812 - Listener thread does not scale with a high num of established connections (#5681)
  * Bump webpack from 5.75.0 to 5.76.0 in /src/cockpit/389-console (#5699)
  * Issue 5598 - (3rd) In 2.x, SRCH throughput drops by 10% because of handling of referral (#5692)
  * Issue 5598 - (2nd) In 2.x, SRCH throughput drops by 10% because of handling of referral (#5691)
  * Issue 5687 - UI - sensitive information disclosure
  * Issue 5661 - LMDB hangs while Rebuilding the replication changelog RUV (#5676)
  * Issue 5554 - Add more tests to security_basic_test suite
  * Issue 4583 - Update specfile to skip checks of ASAN builds
  * Issue 4758 - Add tests for WebUI</changelog>
  <changelog author="william.brown@suse.com" date="1681214400">- bsc#1210027 - apply upstream fix for setuptools
- Update to version 2.3.2~git53.a01e230:
  * Issue 5705 - Add config parameter to close client conns on failed bind (#5712)
  * Issue 4758 - Add tests for WebUI
  * Issue 5643 - Memory leak in entryrdn during delete (#5717)
  * Issue 5714 - UI - fix typo, db settings, log settings, and LDAP editor paginations
  * Issue 5701 - CLI - Fix referral mode setting (#5708)
  * Bump openssl from 0.10.45 to 0.10.48 in /src (#5709)
  * Issue 5710 - subtree search statistics for index lookup does not report ancestorid/entryrdn lookups (#5711)
  * Issue 5697 - Obsolete nsslapd-ldapimaprootdn attribute (#5698)
  * Issue 1081 - Stop schema replication from overwriting x-origin
  * Issue 4812 - Listener thread does not scale with a high num of established connections (#5706)</changelog>
  <changelog author="pgajdos@suse.com" date="1681819200">- python-six is not required</changelog>
  <changelog author="william.brown@suse.com" date="1682510400">- Update to version 2.4.0~git0.87efeb2:
  * Bump version to 2.4.0
  * Issue 5156 - RFE that implement slapi_memberof (#5694)
  * Issue 5734 - RFE - Exclude pwdFailureTime and ContextCSN (#5735)
  * Issue 5726 - ns-slapd crashing in ldbm_back_upgradednformat (#5727)
  * Issue 4758 - Add tests for WebUI
  * Issue 5718 - Memory leak in connection table (#5719)
  * Issue 5705 - Add config parameter to close client conns on failed bind (#5712)
  * Issue 4758 - Add tests for WebUI
  * Issue 5643 - Memory leak in entryrdn during delete (#5717)
  * Issue 5714 - UI - fix typo, db settings, log settings, and LDAP editor paginations</changelog>
  <changelog author="william.brown@suse.com" date="1684929600">- Update to version 2.4.0~git18.37ec5cd:
  * Issue 5751 - Cleanallruv task crashes on consumer (#5775)
  * Bump version to 2.4.1
  * Issue 5770 - RFE - Extend Password Adminstrators to allow skipping password info updates
  * Issue 5768 - CLI/UI - cert checks are too strict, and other issues
  * Issue 5722 - fix compilation warnings (#5771)
  * Issue 5765 - Improve installer selinux handling
  * Issue 152 - RFE - Add support for LDAP alias entries
  * Issue 5052 - BUG - Custom filters prevented entry deletion (#5060)
  * Issue 5752 - RFE - Provide a history for LastLoginTime (#5753)
  * Issue 5722 - RFE When a filter contains 'nsrole', improve response time by rewriting the filter (#5723)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1691668800">- Update to version 2.4.0~git69.89c2de5:
  * Issue 4551 - Part 2 - Fix build warning of previous PR (#5888)
  * Issue 5834 - AccountPolicyPlugin erroring for some users (#5866)
  * Issue 5872 - part 2 - fix is_dbi regression (#5887)
  * Issue 4758 - Add tests for WebUI
  * Issue 5848 - dsconf should prevent setting the replicaID for hub and consumer roles (#5849)
  * Issue 5883 - Remove connection mutex contention risk on autobind (#5886)
  * Issue 5872 - `dbscan()` in lib389 can return bytes
  * Bump version to 2.4.3
  * Issue 5729 - Memory leak in factory_create_extension (#5814)
  * Issue 5870 - ns-slapd crashes at startup if a backend has no suffix (#5871)</changelog>
  <changelog author="william.brown@suse.com" date="1692014400">- Update to version 2.4.0~git74.4297d88:
  * issue 5890 part 2 - Need a tester for testing multiple listening thread feature (#5897)
  * Issue i5846 - Crash when lmdb import is aborted (#5881)
  * Issue 5894 - lmdb import error fails with Could not store the entry (#5895)
  * Issue 5890 - Need a tester for testing multiple listening thread feature (#5891)
  * Issue 5082 - slugify: ModuleNotFoundError when running test cases</changelog>
  <changelog author="william.brown@suse.com" date="1701259200">- Update to version 2.4.0~git113.84a845c:
  * Issue 5980 - Improve instance startup failure handling (#5991)
  * Issue 5976 - Fix freeipa install regression with lmdb (#5977)
  * Issue 5984 - Crash when paged result search are abandoned - fix2 (#5987)
  * Issue 5984 - Crash when paged result search are abandoned (#5985)
  * Issue 5947 - CI test_vlv_recreation_reindex fails on LMDB (#5979)
  * Bump version to 2.5.0
  * Issue 5971 - CLI - Fix password prompt for repl status (#5972)
  * Issue 5973 - Fix fedora cop RawHide builds (#5974)
  * Revert "Issue 5761 - Worker thread dynamic management (#5796)" (#5970)
  * Issue 5966 - CLI - Custom schema object is removed on a failed edit (#5967)
  * Issue 5786 - Update permissions for Release workflow
  * Issue 5960 - Subpackages should have more strict interdependencies
  * Issue 3555 - UI - Fix audit issue with npm - babel/traverse (#5959)
  * Issue 4843 - Fix dscreate create-template issue (#5950)
  * bugfix for --passwd-file not working on latest version (#5934)
  * Issue 5843 - dsconf / dscreate should be able to handle lmdb parameters (#5943)
  * Bump postcss from 8.4.24 to 8.4.31 in /src/cockpit/389-console (#5945)
  * Issue 5938 - Attribute Names changed to lowercase after adding the Attributes (#5940)
  * issue 5924 - ASAN server build crash when looping opening/closing connections (#5926)
  * Issue 1925 - Add a CI test (#5936)
  * Issue 5732 - Localizing Cockpit's 389ds Plugin using CockpitPoPlugin (#5764)
  * Issue 1870 - Add a CI test (#5929)
  * Issue 843 - Add a warning to slapi_valueset_add_value_ext (#5925)
  * Issue 5761 - Worker thread dynamic management (#5796)
  * Issue 1802 - Improve ldclt man page (#5928)
  * Issue 1456 - Add a CI test that verifies there is no issue (#5927)
  * Issue 1317 - Add a CI test (#5923)
  * Issue 1081 - CI - Add more tests for overwriting x-origin issue (#5815)
  * Issue 1115 - Add a CI test (#5913)
  * Issue 5848 - Fix condition and add a CI test (#5916)
  * Issue 5848 - Fix condition and add a CI test (#5916)
  * Issue 5914 - UI - server settings page validation improvements and db index fixes
  * Issue 5909 - Multi listener hang with 20k connections (#5917)
  * Issue 5902 - Fix previous commit regression (#5919)
  * pass instance correctly to ds_is_older (#5903)
  * Issue 5909 - Multi listener hang with 20k connections (#5910)
  * Issue 5722 - improve testcase (#5904)
  * Issue 5203 - outdated version in provided metadata for lib389
  * Bug Description:</changelog>
  <changelog author="William Brown &lt;william.brown@suse.com&gt;" date="1702468800">- Update to support newer obs-service-cargo-vendor</changelog>
  <changelog author="william.brown@suse.com" date="1705492800">- Update to version 2.4.0~git126.5936946:
  * Issue 6028 - vlv index keys inconsistencies (#6031)
  * Issue 5989 - RFE support of inChain Matching Rule (#5990)
  * Issue 6022 - lmdb inconsistency between vlv index and vlv cache names (#6026)
  * Issue 6015 - Fix typo remeber (#6014)
  * Issue 6016 - Pin upload/download artifacts action to v3
  * Issue 5939 - During an update, if the target entry is reverted in the entry cache, the server should not retry to lock it (#6007)
  * Issue 4673 - Update Rust crates
  * Issue 6004 - idletimeout may be ignored (#6005)
  * Issue 5954 - Disable Transparent Huge Pages
  * Issue 5997 - test_inactivty_and_expiration CI testcase is wrong (#5999)
  * Issue 5993 - Fix several race condition around CI tests (#5996)
  * Issue 5944 - Reversion of the entry cache should be limited to BETXN plugin failures (#5994)
  * Bump openssl from 0.10.55 to 0.10.60 in /src (#5995)</changelog>
  <changelog author="william.brown@suse.com" date="1706875200">- Update to version 3.0.1~git1.1f95b57:
  * Issue 6061 - Certificate lifetime displayed as NaN
  * Bump version to 3.0.1
  * Issue 6043, 6044 - Enhance Rust and JS bundling and add SPDX licenses for both (#6045)
  * Issue 3555 - Remove audit-ci from dependencies (#6056)
  * Issue 6052 - Paged results test sets hostname to `localhost` on test collection
  * Issue 6051 - Drop unused pytest markers
  * Issue 6049 - lmdb - changelog is wrongly recreated by reindex task (#6050)
  * Issue 6047 - Add a check for tagged commits
  * Issue 6041 - dscreate ds-root - accepts relative path (#6042)
  * Switch default backend to lmdb and bump version to 3.0 (#6013)
  * Issue 6032 - Replication broken after backup restore (#6035)
  * Issue 6037 - Server crash at startup in vlvIndex_delete (#6038)
  * Issue 6034 - Change replica_id from str to int</changelog>
  <changelog author="william.brown@suse.com" date="1713873600">- Update to version 3.0.1~git37.55529d1:
  * Issue 6082 - Remove explicit dependencies toward libdb - revert default (#6145)
  * Issue 6141 - freeipa test_topology_TestCASpecificRUVs is failing (#6144)
  * Issue 6142 - [RFE] Add LMDB configuration related checks into Healthcheck tool (#6143)
  * Issue 6136 - failure in freeipa tests (#6137)
  * Issue 6133 - Move slapi_pblock_set_flag_operation_notes() to slapi-plugin.h
  * Issue 5105 - lmdb - Cannot create entries with long rdn - fix covscan (#6131)
  * Issue i6057 - Fix3 - Fix covscan issues (#6127)
  * Issue 6105 - lmdb - Cannot create entries with long rdn (#6130)
  * Issue 6125 - dscreate interactive fails when chosing mdb backend (#6126)
  * Issue 6080 - ns-slapd crash in referint_get_config (#6081)
  * Issue 6110 - Typo in Account Policy plugin message
  * Issue 6057 - vlv search may result wrong result with lmdb - Fix 2 (#6121)
  * Issue 6119 - Synchronise accept_thread with slapd_daemon (#6120)
  * Issue 6117 - Fix the UTC offset print (#6118)
  * Issue 6112 - RFE - add new operation note for MFA authentications
  * Issue 5842 - Add log buffering to audit log
  * Issue 5305 - OpenLDAP version autodetection doesn't work
  * Issue 3527 - Support HAProxy and Instance on the same machine configuration (#6107)
  * Issue 6057 - vlv search may result wrong result with lmdb (#6091)
  * Issue 6103 - New connection timeout error breaks errormap (#6104)
  * Issue 6086 - Ambiguous warning about SELinux in dscreate for non-root user
  * Issue 6092 - passwordHistory is not updated with a pre-hashed password (#6093)
  * Issue 6067 - Improve dsidm CLI No Such Entry handling (#6079)
  * Issue 6096 - Improve connection timeout error logging (#6097)
  * Issue 5647 - covscan: memory leak in audit log when adding entries
  * Issue 6094 - Add coverity scan workflow
  * Issue 6067 - Add hidden -v and -j options to each CLI subcommand (#6088)
  * Issue 5487 - Fix various isses with logconv.pl (#6085)
  * Issue 5962 - Rearrange includes for 32-bit support logic
  * Issue 6046 - Make dscreate to work during kickstart installations
  * Issue 6082 - Remove explicit dependencies toward libdb (#6083)
  * Issue 6073 - Improve error log when running out of memory (#6084)
  * Issue 6071 - Instance creation/removal is slow
  * Issue 6010 - 389 ds ignores nsslapd-maxdescriptors (#6027)
  * Issue 6075 - Ignore build artifacts (#6076)
  * Issue 6068 - Add dscontainer stop function</changelog>
  <changelog author="william.brown@suse.com" date="1715688000">- Update to version 3.0.1~git39.e24615f:
  * Issue 6142 - Fix CI tests (#6161)
  * Issue 6157 - Cockipt crashes when getting replication status if topology contains an old 389ds version (#6158)</changelog>
  <changelog author="william.brown@suse.com" date="1722427200">- Update to version 3.1.1~git0.aef1668:
  * Bump version to 3.1.1
  * Issue 6256 - nsslapd-numlisteners limit is not enforced (#6257)
  * Issue 5327 - Fix test metadata
  * Security fix for CVE-2024-6237
  * Security fix for CVE-2024-5953
  * Security fix for CVE-2024-3657
  * Security fix for CVE-2024-2199
  * Issue 6256 - nsslapd-numlisteners limit is not enforced
  * Issue 6265 - lmdb - missing entries in range searches (#6266)
  * Issue 5853 - Update Cargo.lock
  * Bump openssl from 0.10.64 to 0.10.66 in /src
  * Issue 6245 - Revert __COVERITY__ ifndef (#6268)
  * Issue 6248 - fix fanalyzer warnings (#6253)
  * Issue 6238 - Fix test_audit_json_logging CI test regression (#6264)
  * Issue 6254 - Enabling replication for a sub suffix crashes browser (#6255)
  * Issue 6155 - ldap-agent fails to start because of permission error (#6179)
  * Issue 6238 - RFE - add option to write audit log in JSON format
  * Issue 6216 - CI test_fast_slow_import sometime fail (#6247)
  * Issue 6245 - covscan fixes (#6246)
  * Issue 6241 - Add support for CRYPT-YESCRYPT (#6242)
  * Issue 6229 - After an initial failure, subsequent online backups fail (#6230)
  * Issue 6236 - rpm: fix compatibility with RPM 4.20
  * Issue 6227 - dsconf schema does not show inChain matching rule (#6228)
  * Issue 6233 - CI test wait_for_async_feature_test sometime fails (#6234)
  * Bump ws from 7.5.9 to 7.5.10 in /src/cockpit/389-console
  * Issue 6224 - d2entry - Could not open id2entry err 0 - at startup when having sub-suffixes (#6225)
  * Issue 6222 - CI test acl/test_timeofday_keyword sometime fails (#6223)
  * Issue 6120 - /usr/lib64/dirsrv/plugins/libback-bdb.so has an invalid-looking DT_RPATH: /usr/lib/dirsrv
  * Issue 5772 - ONE LEVEL search fails to return sub-suffixes (#6219)
  * Issue 6183 - Slow ldif2db import on a newly created BDB backend (#6208)
  * Issue 6207 - Random crash in test_long_rdn CI test (#6215)
  * Bump braces from 3.0.2 to 3.0.3 in /src/cockpit/389-console
  * Issue 6191 - Node.js 16 actions are deprecated
  * Issue 6199 - unprotected search query during certificate based authentication (#6205)
  * Issue 6200 - Disable WebUI CI tests
  * Issue 6192 - Test failure: test_match_large_valueset
  * Issue 6181 - RFE - Allow system to manage uid/gid at startup
  * Issue 6188 - Add nsslapd-haproxy-trusted-ip to cn=schema (#6201)
  * Issue 6181 - RFE - Allow system to manage uid/gid at startup (#6182)
  * Issue 6170 - audit log buffering doesn't handle large updates
  * Issue 6193 - Test failure: test_tls_command_returns_error_text
  * Issue 6177 - Spec file cleanup
  * Issue 6189 - CI tests fail with `[Errno 2] No such file or directory: '/var/cache/dnf/metadata_lock.pid'`
  * Issue 6175 - Referential integrity plugin - in referint_thread_func does not handle null from ldap_utf8strtok (#6168)
  * Change default salt sizes generated in crypt_pwd (#6185)
  * Issue 6123 - Allow DNA plugin to reuse global config for bind method and connection protocol (#6124)
  * Issue 6159 - Add a test to check URP add and delete conflict (#6160)
  * Issue 6151 - Use %bcond macro for conditional builds in the spec file
  * Issue 6172 - RFE: improve the performance of evaluation of filter component when tested against a large valueset (like group members) (#6173)
  * Bump version to 3.1.0
  * fix issue6165 (#6167)</changelog>
  <changelog author="Thorsten Kukuk &lt;kukuk@suse.com&gt;" date="1722600000">- dirsrv-user.conf: Remove explicit dirsrv group definition, it's
  already specified implicit with "u dirsrv" and not all tools like
  duplicate group entries.</changelog>
  <changelog author="william.brown@suse.com" date="1725451200">- bsc#1229948 - CVE-2024-43806 - rustix::fs::Dir iterator with the linux_raw backend can cause memory explosion
- Update to version 3.1.1~git13.a9c7ff9:
  * Issue 2472 - Add a CI test (#6314)
  * Issue 6276 - Schema lib389 object is not keeping custom schema data upon editing (#6279)
  * Issue 3555 - UI - Fix audit issue with npm - micromatch (#6310)
  * Issue 5843 - Fix size formatting in dscreate output and enhance tests (#6309)
  * Issue 6301 - Fix long delay when setting replication agreement with dsconf (#6303)
  * Issue 6280 - Changelog trims updates from a given RID even if a consumer has not received any of them (#6281)
  * Issue 6296 - basic_test.py::test_conn_limits fails in main branch (#6300)
  * Issue 6295 - test_password_modify_non_utf8 should set default password storage scheme
  * Issue 6294 - Nightly copr builds are failing
  * Issue 6288 - dsidm crash with account policy when alt-state-attr is disabled (#6292)
  * Issue 2324 - Add a CI test (#6289)
  * Issue 6284 - BUG - freelist ordering causes high wtime (#6285)
  * Issue 6282 - BUG - out of tree build fails (#6283)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1732190400">- Add 389-ds-link-icu-uc.patch: properly link to icu-uc as well,
  which is no longer transparently added when linking icu-i18n
  (boo#1233578).</changelog>
  <changelog author="william.brown@suse.com" date="1732881600">- Remove 389-ds-link-icu-uc.patch - upstreamed
- Update to version 3.1.1~git57.65773c3:
  * Issue 6340 - RFE - extract keys once (#6413)
  * Issue 6415 - BUG - Incorrect icu linking (#6416)
  * Issue 6420 - Update dsidm user get_dn test (#6421)
  * Issue 6258 - Resolve race condition for two tests in health_config.py
  * Bump cross-spawn from 7.0.3 to 7.0.6 in /src/cockpit/389-console (#6407)
  * Issue 6386 - backup/restore broken after db log rotation (#6406)
  * Issue 6401 - Remove logging macros
  * Issue 6404 - UI - Add npm pretter package
  * Issue 6374 - nsslapd-mdb-max-dbs autotuning doesn't work properly (#6400)
  * Issue 5842 - Add log buffering for error log
  * Issue 6397 - Remove deprecated setting for HR time stamps in logs
  * Issue 6390 - Adjust cleanAllRUV max per txn and interval limits
  * Issue 6349 - RFE - extract keys once (#6363) (#6394)
  * Issue 6387 - Use make macro in the spec file
  * Issue 6359 - Add exception to GPL license in license tag
  * Issue 6381 - CleanAllRUV - move changelog purging to the very end of the task
  * Issue 5920 - pamModuleIsThreadSafe is missing in the schema
  * Issue 6377 - syntax error in setup.py (#6378)
  * Issue 6349 - RFE - Use previously extracted key path (#6363)
  * Issue 6067 - Update dsidm to prioritize basedn from .dsrc over interactive input (#6362)
  * Issue 6347 - better fix for desyncronized vlv cache (#6358)
  * Issue 6243 - dsctl bdb2mdb should cleanly fail if bundled libdb is not available (#6351)
  * Issue 6331 - UI - Instance fails to load when DB backup directory doesn't exist (#6332)
  * Issue 6356 - On LMDB, after an update the impact VLV index, the vlv recno cache is not systematically cleared (#6357)
  * Issue 6056 - WebUI supports only instances with BDB (#6299)
  * Issue 6339 - Address Coverity scan issues in memberof and bdb_layer (#6353)
  * Issue 6328 - vlv control may not be logged (#6354)
  * Issue 6347 - VLV search sometime fails with operation error (#6349)
  * Issue 6343 - Improve online import robustness when the server is under load
  * Issue 6345 - Ensure all slapi_log_err calls end format strings with newline character \n (#6346)
  * Issue 6064 - bdb2mdb shows errors (#6341)
  * Issue 6336 - Fix failing CI tests (roles) due to slow import (#6337)
  * Fix duplicate detection logic by ensuring exact match on string length (#6333)
  * Issue 6304 - RFE when memberof is enabled, defer updates of members from the update of the group (#6305)
  * Issue 6329 - lmdb typo in error log notice message (#6330)
  * Issue 6324 - Provide more information in the error message during setup_ol_tls_conn() (#6325)
  * Issue 5965 - UI, CLI - Fix Account Policy Plugin functionality issues (#6323)
  * Issue 6188 - Check if nsslapd-haproxy-trusted-ip attribute is returned in default schema
  * Issue 6319 - bdb subpackage has `%description` in the wrong place
  * Issue 6321 - lib389 get_db_lib function may returns the wrong db type (#6322)
  * Issue 6245 - Fix some other coverity scan regressions (#6273)
  * Issue 6316 - lmdb reindex is broken if index type is specified (#6318)
  * Issue 6090 - Fix dbscan options and man pages (#6315)
  * Issue 6307 - Wrong set of entries returned for some search filters (#6308)</changelog>
</package>
<package pkgid="24145c66c727365aaf3139a189d5c3b1dfdf443e76d38e5dc43a9853386fffbc98ab1055842939b0d7cb242eca927bebc522b94402b1a2fa00245ad336199194" name="389-ds-snmp-debuginfo" arch="x86_64">
  <version epoch="0" ver="3.1.1~git13.a9c7ff9" rel="2.0.2.1.sr20241103"/>
  <changelog author="William Brown &lt;william.brown@suse.com&gt;" date="1660132800">- Update _constraints due to random build failures caused by OBS environmental
  issues that aren't out fault. (out of disk, systemic builder issues).
- Add debugging about the environment to assist with OBS randomly failing
  in the future.</changelog>
  <changelog author="william.brown@suse.com" date="1662552000">- Update to version 2.3.0~git0.3db81913e:
  * Bump version to 2.3.0
  * Issue 5012 - Migrate pcre to pcre2 - remove match limit
  * Update CI tests
  * Issue 5356 - Make Rust non-optional and update default password storage scheme
  * Issue 5012 - Migrate pcre to pcre2
  * Issue 5428 - Fix regression with nscpEntryWsi computation
  * Fix missing 'not' in description (closes #5423) (#5424)
  * Issue 5421 - CI - makes replication/acceptance_test.py::test_modify_entry more robust (#5422)
  * Issue 3903 - fix repl keep alive event interval
  * Issue 5418 - Sync_repl may crash while managing invalid cookie (#5420)</changelog>
  <changelog author="william.brown@suse.com" date="1666353600">- Update to version 2.3.0~git22.8fedec0:
  * Issue 5495 - RFE - skip dds during migration. (#5496)
  * Issue 5491 - UI - Add rework and finish jpegPhoto functionality (#5492)
  * Issue 5368 - Retro Changelog trimming does not work (#5486)
  * Issue 5487 - Fix various issues with logconv.pl
  * Issue 5476 - RFE - add memberUid read aci by default (#5477)
  * Issue 5482 - lib389 - Can not enable replication with a mixed case suffix
  * Issue 5478 - Random crash in connection code during server shutdown (#5479)
  * Issue 3061 - RFE - Add password policy debug log level
  * Issue 5302 - Release tarballs don't contain cockpit webapp
  * Issue 5262 - high contention in find_entry_internal_dn on mixed load (#5264)</changelog>
  <changelog author="william.brown@suse.com" date="1679486400">- Update to version 2.3.2~git44.5e4551e:
  * Issue 4812 - Listener thread does not scale with a high num of established connections (#5706)
  * Issue 4812 - Listener thread does not scale with a high num of established connections (#5681)
  * Bump webpack from 5.75.0 to 5.76.0 in /src/cockpit/389-console (#5699)
  * Issue 5598 - (3rd) In 2.x, SRCH throughput drops by 10% because of handling of referral (#5692)
  * Issue 5598 - (2nd) In 2.x, SRCH throughput drops by 10% because of handling of referral (#5691)
  * Issue 5687 - UI - sensitive information disclosure
  * Issue 5661 - LMDB hangs while Rebuilding the replication changelog RUV (#5676)
  * Issue 5554 - Add more tests to security_basic_test suite
  * Issue 4583 - Update specfile to skip checks of ASAN builds
  * Issue 4758 - Add tests for WebUI</changelog>
  <changelog author="william.brown@suse.com" date="1681214400">- bsc#1210027 - apply upstream fix for setuptools
- Update to version 2.3.2~git53.a01e230:
  * Issue 5705 - Add config parameter to close client conns on failed bind (#5712)
  * Issue 4758 - Add tests for WebUI
  * Issue 5643 - Memory leak in entryrdn during delete (#5717)
  * Issue 5714 - UI - fix typo, db settings, log settings, and LDAP editor paginations
  * Issue 5701 - CLI - Fix referral mode setting (#5708)
  * Bump openssl from 0.10.45 to 0.10.48 in /src (#5709)
  * Issue 5710 - subtree search statistics for index lookup does not report ancestorid/entryrdn lookups (#5711)
  * Issue 5697 - Obsolete nsslapd-ldapimaprootdn attribute (#5698)
  * Issue 1081 - Stop schema replication from overwriting x-origin
  * Issue 4812 - Listener thread does not scale with a high num of established connections (#5706)</changelog>
  <changelog author="pgajdos@suse.com" date="1681819200">- python-six is not required</changelog>
  <changelog author="william.brown@suse.com" date="1682510400">- Update to version 2.4.0~git0.87efeb2:
  * Bump version to 2.4.0
  * Issue 5156 - RFE that implement slapi_memberof (#5694)
  * Issue 5734 - RFE - Exclude pwdFailureTime and ContextCSN (#5735)
  * Issue 5726 - ns-slapd crashing in ldbm_back_upgradednformat (#5727)
  * Issue 4758 - Add tests for WebUI
  * Issue 5718 - Memory leak in connection table (#5719)
  * Issue 5705 - Add config parameter to close client conns on failed bind (#5712)
  * Issue 4758 - Add tests for WebUI
  * Issue 5643 - Memory leak in entryrdn during delete (#5717)
  * Issue 5714 - UI - fix typo, db settings, log settings, and LDAP editor paginations</changelog>
  <changelog author="william.brown@suse.com" date="1684929600">- Update to version 2.4.0~git18.37ec5cd:
  * Issue 5751 - Cleanallruv task crashes on consumer (#5775)
  * Bump version to 2.4.1
  * Issue 5770 - RFE - Extend Password Adminstrators to allow skipping password info updates
  * Issue 5768 - CLI/UI - cert checks are too strict, and other issues
  * Issue 5722 - fix compilation warnings (#5771)
  * Issue 5765 - Improve installer selinux handling
  * Issue 152 - RFE - Add support for LDAP alias entries
  * Issue 5052 - BUG - Custom filters prevented entry deletion (#5060)
  * Issue 5752 - RFE - Provide a history for LastLoginTime (#5753)
  * Issue 5722 - RFE When a filter contains 'nsrole', improve response time by rewriting the filter (#5723)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1691668800">- Update to version 2.4.0~git69.89c2de5:
  * Issue 4551 - Part 2 - Fix build warning of previous PR (#5888)
  * Issue 5834 - AccountPolicyPlugin erroring for some users (#5866)
  * Issue 5872 - part 2 - fix is_dbi regression (#5887)
  * Issue 4758 - Add tests for WebUI
  * Issue 5848 - dsconf should prevent setting the replicaID for hub and consumer roles (#5849)
  * Issue 5883 - Remove connection mutex contention risk on autobind (#5886)
  * Issue 5872 - `dbscan()` in lib389 can return bytes
  * Bump version to 2.4.3
  * Issue 5729 - Memory leak in factory_create_extension (#5814)
  * Issue 5870 - ns-slapd crashes at startup if a backend has no suffix (#5871)</changelog>
  <changelog author="william.brown@suse.com" date="1692014400">- Update to version 2.4.0~git74.4297d88:
  * issue 5890 part 2 - Need a tester for testing multiple listening thread feature (#5897)
  * Issue i5846 - Crash when lmdb import is aborted (#5881)
  * Issue 5894 - lmdb import error fails with Could not store the entry (#5895)
  * Issue 5890 - Need a tester for testing multiple listening thread feature (#5891)
  * Issue 5082 - slugify: ModuleNotFoundError when running test cases</changelog>
  <changelog author="william.brown@suse.com" date="1701259200">- Update to version 2.4.0~git113.84a845c:
  * Issue 5980 - Improve instance startup failure handling (#5991)
  * Issue 5976 - Fix freeipa install regression with lmdb (#5977)
  * Issue 5984 - Crash when paged result search are abandoned - fix2 (#5987)
  * Issue 5984 - Crash when paged result search are abandoned (#5985)
  * Issue 5947 - CI test_vlv_recreation_reindex fails on LMDB (#5979)
  * Bump version to 2.5.0
  * Issue 5971 - CLI - Fix password prompt for repl status (#5972)
  * Issue 5973 - Fix fedora cop RawHide builds (#5974)
  * Revert "Issue 5761 - Worker thread dynamic management (#5796)" (#5970)
  * Issue 5966 - CLI - Custom schema object is removed on a failed edit (#5967)
  * Issue 5786 - Update permissions for Release workflow
  * Issue 5960 - Subpackages should have more strict interdependencies
  * Issue 3555 - UI - Fix audit issue with npm - babel/traverse (#5959)
  * Issue 4843 - Fix dscreate create-template issue (#5950)
  * bugfix for --passwd-file not working on latest version (#5934)
  * Issue 5843 - dsconf / dscreate should be able to handle lmdb parameters (#5943)
  * Bump postcss from 8.4.24 to 8.4.31 in /src/cockpit/389-console (#5945)
  * Issue 5938 - Attribute Names changed to lowercase after adding the Attributes (#5940)
  * issue 5924 - ASAN server build crash when looping opening/closing connections (#5926)
  * Issue 1925 - Add a CI test (#5936)
  * Issue 5732 - Localizing Cockpit's 389ds Plugin using CockpitPoPlugin (#5764)
  * Issue 1870 - Add a CI test (#5929)
  * Issue 843 - Add a warning to slapi_valueset_add_value_ext (#5925)
  * Issue 5761 - Worker thread dynamic management (#5796)
  * Issue 1802 - Improve ldclt man page (#5928)
  * Issue 1456 - Add a CI test that verifies there is no issue (#5927)
  * Issue 1317 - Add a CI test (#5923)
  * Issue 1081 - CI - Add more tests for overwriting x-origin issue (#5815)
  * Issue 1115 - Add a CI test (#5913)
  * Issue 5848 - Fix condition and add a CI test (#5916)
  * Issue 5848 - Fix condition and add a CI test (#5916)
  * Issue 5914 - UI - server settings page validation improvements and db index fixes
  * Issue 5909 - Multi listener hang with 20k connections (#5917)
  * Issue 5902 - Fix previous commit regression (#5919)
  * pass instance correctly to ds_is_older (#5903)
  * Issue 5909 - Multi listener hang with 20k connections (#5910)
  * Issue 5722 - improve testcase (#5904)
  * Issue 5203 - outdated version in provided metadata for lib389
  * Bug Description:</changelog>
  <changelog author="William Brown &lt;william.brown@suse.com&gt;" date="1702468800">- Update to support newer obs-service-cargo-vendor</changelog>
  <changelog author="william.brown@suse.com" date="1705492800">- Update to version 2.4.0~git126.5936946:
  * Issue 6028 - vlv index keys inconsistencies (#6031)
  * Issue 5989 - RFE support of inChain Matching Rule (#5990)
  * Issue 6022 - lmdb inconsistency between vlv index and vlv cache names (#6026)
  * Issue 6015 - Fix typo remeber (#6014)
  * Issue 6016 - Pin upload/download artifacts action to v3
  * Issue 5939 - During an update, if the target entry is reverted in the entry cache, the server should not retry to lock it (#6007)
  * Issue 4673 - Update Rust crates
  * Issue 6004 - idletimeout may be ignored (#6005)
  * Issue 5954 - Disable Transparent Huge Pages
  * Issue 5997 - test_inactivty_and_expiration CI testcase is wrong (#5999)
  * Issue 5993 - Fix several race condition around CI tests (#5996)
  * Issue 5944 - Reversion of the entry cache should be limited to BETXN plugin failures (#5994)
  * Bump openssl from 0.10.55 to 0.10.60 in /src (#5995)</changelog>
  <changelog author="william.brown@suse.com" date="1706875200">- Update to version 3.0.1~git1.1f95b57:
  * Issue 6061 - Certificate lifetime displayed as NaN
  * Bump version to 3.0.1
  * Issue 6043, 6044 - Enhance Rust and JS bundling and add SPDX licenses for both (#6045)
  * Issue 3555 - Remove audit-ci from dependencies (#6056)
  * Issue 6052 - Paged results test sets hostname to `localhost` on test collection
  * Issue 6051 - Drop unused pytest markers
  * Issue 6049 - lmdb - changelog is wrongly recreated by reindex task (#6050)
  * Issue 6047 - Add a check for tagged commits
  * Issue 6041 - dscreate ds-root - accepts relative path (#6042)
  * Switch default backend to lmdb and bump version to 3.0 (#6013)
  * Issue 6032 - Replication broken after backup restore (#6035)
  * Issue 6037 - Server crash at startup in vlvIndex_delete (#6038)
  * Issue 6034 - Change replica_id from str to int</changelog>
  <changelog author="william.brown@suse.com" date="1713873600">- Update to version 3.0.1~git37.55529d1:
  * Issue 6082 - Remove explicit dependencies toward libdb - revert default (#6145)
  * Issue 6141 - freeipa test_topology_TestCASpecificRUVs is failing (#6144)
  * Issue 6142 - [RFE] Add LMDB configuration related checks into Healthcheck tool (#6143)
  * Issue 6136 - failure in freeipa tests (#6137)
  * Issue 6133 - Move slapi_pblock_set_flag_operation_notes() to slapi-plugin.h
  * Issue 5105 - lmdb - Cannot create entries with long rdn - fix covscan (#6131)
  * Issue i6057 - Fix3 - Fix covscan issues (#6127)
  * Issue 6105 - lmdb - Cannot create entries with long rdn (#6130)
  * Issue 6125 - dscreate interactive fails when chosing mdb backend (#6126)
  * Issue 6080 - ns-slapd crash in referint_get_config (#6081)
  * Issue 6110 - Typo in Account Policy plugin message
  * Issue 6057 - vlv search may result wrong result with lmdb - Fix 2 (#6121)
  * Issue 6119 - Synchronise accept_thread with slapd_daemon (#6120)
  * Issue 6117 - Fix the UTC offset print (#6118)
  * Issue 6112 - RFE - add new operation note for MFA authentications
  * Issue 5842 - Add log buffering to audit log
  * Issue 5305 - OpenLDAP version autodetection doesn't work
  * Issue 3527 - Support HAProxy and Instance on the same machine configuration (#6107)
  * Issue 6057 - vlv search may result wrong result with lmdb (#6091)
  * Issue 6103 - New connection timeout error breaks errormap (#6104)
  * Issue 6086 - Ambiguous warning about SELinux in dscreate for non-root user
  * Issue 6092 - passwordHistory is not updated with a pre-hashed password (#6093)
  * Issue 6067 - Improve dsidm CLI No Such Entry handling (#6079)
  * Issue 6096 - Improve connection timeout error logging (#6097)
  * Issue 5647 - covscan: memory leak in audit log when adding entries
  * Issue 6094 - Add coverity scan workflow
  * Issue 6067 - Add hidden -v and -j options to each CLI subcommand (#6088)
  * Issue 5487 - Fix various isses with logconv.pl (#6085)
  * Issue 5962 - Rearrange includes for 32-bit support logic
  * Issue 6046 - Make dscreate to work during kickstart installations
  * Issue 6082 - Remove explicit dependencies toward libdb (#6083)
  * Issue 6073 - Improve error log when running out of memory (#6084)
  * Issue 6071 - Instance creation/removal is slow
  * Issue 6010 - 389 ds ignores nsslapd-maxdescriptors (#6027)
  * Issue 6075 - Ignore build artifacts (#6076)
  * Issue 6068 - Add dscontainer stop function</changelog>
  <changelog author="william.brown@suse.com" date="1715688000">- Update to version 3.0.1~git39.e24615f:
  * Issue 6142 - Fix CI tests (#6161)
  * Issue 6157 - Cockipt crashes when getting replication status if topology contains an old 389ds version (#6158)</changelog>
  <changelog author="william.brown@suse.com" date="1722427200">- Update to version 3.1.1~git0.aef1668:
  * Bump version to 3.1.1
  * Issue 6256 - nsslapd-numlisteners limit is not enforced (#6257)
  * Issue 5327 - Fix test metadata
  * Security fix for CVE-2024-6237
  * Security fix for CVE-2024-5953
  * Security fix for CVE-2024-3657
  * Security fix for CVE-2024-2199
  * Issue 6256 - nsslapd-numlisteners limit is not enforced
  * Issue 6265 - lmdb - missing entries in range searches (#6266)
  * Issue 5853 - Update Cargo.lock
  * Bump openssl from 0.10.64 to 0.10.66 in /src
  * Issue 6245 - Revert __COVERITY__ ifndef (#6268)
  * Issue 6248 - fix fanalyzer warnings (#6253)
  * Issue 6238 - Fix test_audit_json_logging CI test regression (#6264)
  * Issue 6254 - Enabling replication for a sub suffix crashes browser (#6255)
  * Issue 6155 - ldap-agent fails to start because of permission error (#6179)
  * Issue 6238 - RFE - add option to write audit log in JSON format
  * Issue 6216 - CI test_fast_slow_import sometime fail (#6247)
  * Issue 6245 - covscan fixes (#6246)
  * Issue 6241 - Add support for CRYPT-YESCRYPT (#6242)
  * Issue 6229 - After an initial failure, subsequent online backups fail (#6230)
  * Issue 6236 - rpm: fix compatibility with RPM 4.20
  * Issue 6227 - dsconf schema does not show inChain matching rule (#6228)
  * Issue 6233 - CI test wait_for_async_feature_test sometime fails (#6234)
  * Bump ws from 7.5.9 to 7.5.10 in /src/cockpit/389-console
  * Issue 6224 - d2entry - Could not open id2entry err 0 - at startup when having sub-suffixes (#6225)
  * Issue 6222 - CI test acl/test_timeofday_keyword sometime fails (#6223)
  * Issue 6120 - /usr/lib64/dirsrv/plugins/libback-bdb.so has an invalid-looking DT_RPATH: /usr/lib/dirsrv
  * Issue 5772 - ONE LEVEL search fails to return sub-suffixes (#6219)
  * Issue 6183 - Slow ldif2db import on a newly created BDB backend (#6208)
  * Issue 6207 - Random crash in test_long_rdn CI test (#6215)
  * Bump braces from 3.0.2 to 3.0.3 in /src/cockpit/389-console
  * Issue 6191 - Node.js 16 actions are deprecated
  * Issue 6199 - unprotected search query during certificate based authentication (#6205)
  * Issue 6200 - Disable WebUI CI tests
  * Issue 6192 - Test failure: test_match_large_valueset
  * Issue 6181 - RFE - Allow system to manage uid/gid at startup
  * Issue 6188 - Add nsslapd-haproxy-trusted-ip to cn=schema (#6201)
  * Issue 6181 - RFE - Allow system to manage uid/gid at startup (#6182)
  * Issue 6170 - audit log buffering doesn't handle large updates
  * Issue 6193 - Test failure: test_tls_command_returns_error_text
  * Issue 6177 - Spec file cleanup
  * Issue 6189 - CI tests fail with `[Errno 2] No such file or directory: '/var/cache/dnf/metadata_lock.pid'`
  * Issue 6175 - Referential integrity plugin - in referint_thread_func does not handle null from ldap_utf8strtok (#6168)
  * Change default salt sizes generated in crypt_pwd (#6185)
  * Issue 6123 - Allow DNA plugin to reuse global config for bind method and connection protocol (#6124)
  * Issue 6159 - Add a test to check URP add and delete conflict (#6160)
  * Issue 6151 - Use %bcond macro for conditional builds in the spec file
  * Issue 6172 - RFE: improve the performance of evaluation of filter component when tested against a large valueset (like group members) (#6173)
  * Bump version to 3.1.0
  * fix issue6165 (#6167)</changelog>
  <changelog author="Thorsten Kukuk &lt;kukuk@suse.com&gt;" date="1722600000">- dirsrv-user.conf: Remove explicit dirsrv group definition, it's
  already specified implicit with "u dirsrv" and not all tools like
  duplicate group entries.</changelog>
  <changelog author="william.brown@suse.com" date="1725451200">- bsc#1229948 - CVE-2024-43806 - rustix::fs::Dir iterator with the linux_raw backend can cause memory explosion
- Update to version 3.1.1~git13.a9c7ff9:
  * Issue 2472 - Add a CI test (#6314)
  * Issue 6276 - Schema lib389 object is not keeping custom schema data upon editing (#6279)
  * Issue 3555 - UI - Fix audit issue with npm - micromatch (#6310)
  * Issue 5843 - Fix size formatting in dscreate output and enhance tests (#6309)
  * Issue 6301 - Fix long delay when setting replication agreement with dsconf (#6303)
  * Issue 6280 - Changelog trims updates from a given RID even if a consumer has not received any of them (#6281)
  * Issue 6296 - basic_test.py::test_conn_limits fails in main branch (#6300)
  * Issue 6295 - test_password_modify_non_utf8 should set default password storage scheme
  * Issue 6294 - Nightly copr builds are failing
  * Issue 6288 - dsidm crash with account policy when alt-state-attr is disabled (#6292)
  * Issue 2324 - Add a CI test (#6289)
  * Issue 6284 - BUG - freelist ordering causes high wtime (#6285)
  * Issue 6282 - BUG - out of tree build fails (#6283)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1732190400">- Add 389-ds-link-icu-uc.patch: properly link to icu-uc as well,
  which is no longer transparently added when linking icu-i18n
  (boo#1233578).</changelog>
</package>
<package pkgid="2deaf32d0eb5e0d3db6d07a93ebdbe46465646e09e3f6f4a826b9d0180e2a8e804559d72f5eac3302709985dc586e646737de0947e2fa2e15a1685c35a9a9e46" name="389-ds-snmp-debuginfo" arch="x86_64">
  <version epoch="0" ver="3.1.1~git57.65773c3" rel="1.0.4.1.sr20241103"/>
  <changelog author="william.brown@suse.com" date="1662552000">- Update to version 2.3.0~git0.3db81913e:
  * Bump version to 2.3.0
  * Issue 5012 - Migrate pcre to pcre2 - remove match limit
  * Update CI tests
  * Issue 5356 - Make Rust non-optional and update default password storage scheme
  * Issue 5012 - Migrate pcre to pcre2
  * Issue 5428 - Fix regression with nscpEntryWsi computation
  * Fix missing 'not' in description (closes #5423) (#5424)
  * Issue 5421 - CI - makes replication/acceptance_test.py::test_modify_entry more robust (#5422)
  * Issue 3903 - fix repl keep alive event interval
  * Issue 5418 - Sync_repl may crash while managing invalid cookie (#5420)</changelog>
  <changelog author="william.brown@suse.com" date="1666353600">- Update to version 2.3.0~git22.8fedec0:
  * Issue 5495 - RFE - skip dds during migration. (#5496)
  * Issue 5491 - UI - Add rework and finish jpegPhoto functionality (#5492)
  * Issue 5368 - Retro Changelog trimming does not work (#5486)
  * Issue 5487 - Fix various issues with logconv.pl
  * Issue 5476 - RFE - add memberUid read aci by default (#5477)
  * Issue 5482 - lib389 - Can not enable replication with a mixed case suffix
  * Issue 5478 - Random crash in connection code during server shutdown (#5479)
  * Issue 3061 - RFE - Add password policy debug log level
  * Issue 5302 - Release tarballs don't contain cockpit webapp
  * Issue 5262 - high contention in find_entry_internal_dn on mixed load (#5264)</changelog>
  <changelog author="william.brown@suse.com" date="1679486400">- Update to version 2.3.2~git44.5e4551e:
  * Issue 4812 - Listener thread does not scale with a high num of established connections (#5706)
  * Issue 4812 - Listener thread does not scale with a high num of established connections (#5681)
  * Bump webpack from 5.75.0 to 5.76.0 in /src/cockpit/389-console (#5699)
  * Issue 5598 - (3rd) In 2.x, SRCH throughput drops by 10% because of handling of referral (#5692)
  * Issue 5598 - (2nd) In 2.x, SRCH throughput drops by 10% because of handling of referral (#5691)
  * Issue 5687 - UI - sensitive information disclosure
  * Issue 5661 - LMDB hangs while Rebuilding the replication changelog RUV (#5676)
  * Issue 5554 - Add more tests to security_basic_test suite
  * Issue 4583 - Update specfile to skip checks of ASAN builds
  * Issue 4758 - Add tests for WebUI</changelog>
  <changelog author="william.brown@suse.com" date="1681214400">- bsc#1210027 - apply upstream fix for setuptools
- Update to version 2.3.2~git53.a01e230:
  * Issue 5705 - Add config parameter to close client conns on failed bind (#5712)
  * Issue 4758 - Add tests for WebUI
  * Issue 5643 - Memory leak in entryrdn during delete (#5717)
  * Issue 5714 - UI - fix typo, db settings, log settings, and LDAP editor paginations
  * Issue 5701 - CLI - Fix referral mode setting (#5708)
  * Bump openssl from 0.10.45 to 0.10.48 in /src (#5709)
  * Issue 5710 - subtree search statistics for index lookup does not report ancestorid/entryrdn lookups (#5711)
  * Issue 5697 - Obsolete nsslapd-ldapimaprootdn attribute (#5698)
  * Issue 1081 - Stop schema replication from overwriting x-origin
  * Issue 4812 - Listener thread does not scale with a high num of established connections (#5706)</changelog>
  <changelog author="pgajdos@suse.com" date="1681819200">- python-six is not required</changelog>
  <changelog author="william.brown@suse.com" date="1682510400">- Update to version 2.4.0~git0.87efeb2:
  * Bump version to 2.4.0
  * Issue 5156 - RFE that implement slapi_memberof (#5694)
  * Issue 5734 - RFE - Exclude pwdFailureTime and ContextCSN (#5735)
  * Issue 5726 - ns-slapd crashing in ldbm_back_upgradednformat (#5727)
  * Issue 4758 - Add tests for WebUI
  * Issue 5718 - Memory leak in connection table (#5719)
  * Issue 5705 - Add config parameter to close client conns on failed bind (#5712)
  * Issue 4758 - Add tests for WebUI
  * Issue 5643 - Memory leak in entryrdn during delete (#5717)
  * Issue 5714 - UI - fix typo, db settings, log settings, and LDAP editor paginations</changelog>
  <changelog author="william.brown@suse.com" date="1684929600">- Update to version 2.4.0~git18.37ec5cd:
  * Issue 5751 - Cleanallruv task crashes on consumer (#5775)
  * Bump version to 2.4.1
  * Issue 5770 - RFE - Extend Password Adminstrators to allow skipping password info updates
  * Issue 5768 - CLI/UI - cert checks are too strict, and other issues
  * Issue 5722 - fix compilation warnings (#5771)
  * Issue 5765 - Improve installer selinux handling
  * Issue 152 - RFE - Add support for LDAP alias entries
  * Issue 5052 - BUG - Custom filters prevented entry deletion (#5060)
  * Issue 5752 - RFE - Provide a history for LastLoginTime (#5753)
  * Issue 5722 - RFE When a filter contains 'nsrole', improve response time by rewriting the filter (#5723)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1691668800">- Update to version 2.4.0~git69.89c2de5:
  * Issue 4551 - Part 2 - Fix build warning of previous PR (#5888)
  * Issue 5834 - AccountPolicyPlugin erroring for some users (#5866)
  * Issue 5872 - part 2 - fix is_dbi regression (#5887)
  * Issue 4758 - Add tests for WebUI
  * Issue 5848 - dsconf should prevent setting the replicaID for hub and consumer roles (#5849)
  * Issue 5883 - Remove connection mutex contention risk on autobind (#5886)
  * Issue 5872 - `dbscan()` in lib389 can return bytes
  * Bump version to 2.4.3
  * Issue 5729 - Memory leak in factory_create_extension (#5814)
  * Issue 5870 - ns-slapd crashes at startup if a backend has no suffix (#5871)</changelog>
  <changelog author="william.brown@suse.com" date="1692014400">- Update to version 2.4.0~git74.4297d88:
  * issue 5890 part 2 - Need a tester for testing multiple listening thread feature (#5897)
  * Issue i5846 - Crash when lmdb import is aborted (#5881)
  * Issue 5894 - lmdb import error fails with Could not store the entry (#5895)
  * Issue 5890 - Need a tester for testing multiple listening thread feature (#5891)
  * Issue 5082 - slugify: ModuleNotFoundError when running test cases</changelog>
  <changelog author="william.brown@suse.com" date="1701259200">- Update to version 2.4.0~git113.84a845c:
  * Issue 5980 - Improve instance startup failure handling (#5991)
  * Issue 5976 - Fix freeipa install regression with lmdb (#5977)
  * Issue 5984 - Crash when paged result search are abandoned - fix2 (#5987)
  * Issue 5984 - Crash when paged result search are abandoned (#5985)
  * Issue 5947 - CI test_vlv_recreation_reindex fails on LMDB (#5979)
  * Bump version to 2.5.0
  * Issue 5971 - CLI - Fix password prompt for repl status (#5972)
  * Issue 5973 - Fix fedora cop RawHide builds (#5974)
  * Revert "Issue 5761 - Worker thread dynamic management (#5796)" (#5970)
  * Issue 5966 - CLI - Custom schema object is removed on a failed edit (#5967)
  * Issue 5786 - Update permissions for Release workflow
  * Issue 5960 - Subpackages should have more strict interdependencies
  * Issue 3555 - UI - Fix audit issue with npm - babel/traverse (#5959)
  * Issue 4843 - Fix dscreate create-template issue (#5950)
  * bugfix for --passwd-file not working on latest version (#5934)
  * Issue 5843 - dsconf / dscreate should be able to handle lmdb parameters (#5943)
  * Bump postcss from 8.4.24 to 8.4.31 in /src/cockpit/389-console (#5945)
  * Issue 5938 - Attribute Names changed to lowercase after adding the Attributes (#5940)
  * issue 5924 - ASAN server build crash when looping opening/closing connections (#5926)
  * Issue 1925 - Add a CI test (#5936)
  * Issue 5732 - Localizing Cockpit's 389ds Plugin using CockpitPoPlugin (#5764)
  * Issue 1870 - Add a CI test (#5929)
  * Issue 843 - Add a warning to slapi_valueset_add_value_ext (#5925)
  * Issue 5761 - Worker thread dynamic management (#5796)
  * Issue 1802 - Improve ldclt man page (#5928)
  * Issue 1456 - Add a CI test that verifies there is no issue (#5927)
  * Issue 1317 - Add a CI test (#5923)
  * Issue 1081 - CI - Add more tests for overwriting x-origin issue (#5815)
  * Issue 1115 - Add a CI test (#5913)
  * Issue 5848 - Fix condition and add a CI test (#5916)
  * Issue 5848 - Fix condition and add a CI test (#5916)
  * Issue 5914 - UI - server settings page validation improvements and db index fixes
  * Issue 5909 - Multi listener hang with 20k connections (#5917)
  * Issue 5902 - Fix previous commit regression (#5919)
  * pass instance correctly to ds_is_older (#5903)
  * Issue 5909 - Multi listener hang with 20k connections (#5910)
  * Issue 5722 - improve testcase (#5904)
  * Issue 5203 - outdated version in provided metadata for lib389
  * Bug Description:</changelog>
  <changelog author="William Brown &lt;william.brown@suse.com&gt;" date="1702468800">- Update to support newer obs-service-cargo-vendor</changelog>
  <changelog author="william.brown@suse.com" date="1705492800">- Update to version 2.4.0~git126.5936946:
  * Issue 6028 - vlv index keys inconsistencies (#6031)
  * Issue 5989 - RFE support of inChain Matching Rule (#5990)
  * Issue 6022 - lmdb inconsistency between vlv index and vlv cache names (#6026)
  * Issue 6015 - Fix typo remeber (#6014)
  * Issue 6016 - Pin upload/download artifacts action to v3
  * Issue 5939 - During an update, if the target entry is reverted in the entry cache, the server should not retry to lock it (#6007)
  * Issue 4673 - Update Rust crates
  * Issue 6004 - idletimeout may be ignored (#6005)
  * Issue 5954 - Disable Transparent Huge Pages
  * Issue 5997 - test_inactivty_and_expiration CI testcase is wrong (#5999)
  * Issue 5993 - Fix several race condition around CI tests (#5996)
  * Issue 5944 - Reversion of the entry cache should be limited to BETXN plugin failures (#5994)
  * Bump openssl from 0.10.55 to 0.10.60 in /src (#5995)</changelog>
  <changelog author="william.brown@suse.com" date="1706875200">- Update to version 3.0.1~git1.1f95b57:
  * Issue 6061 - Certificate lifetime displayed as NaN
  * Bump version to 3.0.1
  * Issue 6043, 6044 - Enhance Rust and JS bundling and add SPDX licenses for both (#6045)
  * Issue 3555 - Remove audit-ci from dependencies (#6056)
  * Issue 6052 - Paged results test sets hostname to `localhost` on test collection
  * Issue 6051 - Drop unused pytest markers
  * Issue 6049 - lmdb - changelog is wrongly recreated by reindex task (#6050)
  * Issue 6047 - Add a check for tagged commits
  * Issue 6041 - dscreate ds-root - accepts relative path (#6042)
  * Switch default backend to lmdb and bump version to 3.0 (#6013)
  * Issue 6032 - Replication broken after backup restore (#6035)
  * Issue 6037 - Server crash at startup in vlvIndex_delete (#6038)
  * Issue 6034 - Change replica_id from str to int</changelog>
  <changelog author="william.brown@suse.com" date="1713873600">- Update to version 3.0.1~git37.55529d1:
  * Issue 6082 - Remove explicit dependencies toward libdb - revert default (#6145)
  * Issue 6141 - freeipa test_topology_TestCASpecificRUVs is failing (#6144)
  * Issue 6142 - [RFE] Add LMDB configuration related checks into Healthcheck tool (#6143)
  * Issue 6136 - failure in freeipa tests (#6137)
  * Issue 6133 - Move slapi_pblock_set_flag_operation_notes() to slapi-plugin.h
  * Issue 5105 - lmdb - Cannot create entries with long rdn - fix covscan (#6131)
  * Issue i6057 - Fix3 - Fix covscan issues (#6127)
  * Issue 6105 - lmdb - Cannot create entries with long rdn (#6130)
  * Issue 6125 - dscreate interactive fails when chosing mdb backend (#6126)
  * Issue 6080 - ns-slapd crash in referint_get_config (#6081)
  * Issue 6110 - Typo in Account Policy plugin message
  * Issue 6057 - vlv search may result wrong result with lmdb - Fix 2 (#6121)
  * Issue 6119 - Synchronise accept_thread with slapd_daemon (#6120)
  * Issue 6117 - Fix the UTC offset print (#6118)
  * Issue 6112 - RFE - add new operation note for MFA authentications
  * Issue 5842 - Add log buffering to audit log
  * Issue 5305 - OpenLDAP version autodetection doesn't work
  * Issue 3527 - Support HAProxy and Instance on the same machine configuration (#6107)
  * Issue 6057 - vlv search may result wrong result with lmdb (#6091)
  * Issue 6103 - New connection timeout error breaks errormap (#6104)
  * Issue 6086 - Ambiguous warning about SELinux in dscreate for non-root user
  * Issue 6092 - passwordHistory is not updated with a pre-hashed password (#6093)
  * Issue 6067 - Improve dsidm CLI No Such Entry handling (#6079)
  * Issue 6096 - Improve connection timeout error logging (#6097)
  * Issue 5647 - covscan: memory leak in audit log when adding entries
  * Issue 6094 - Add coverity scan workflow
  * Issue 6067 - Add hidden -v and -j options to each CLI subcommand (#6088)
  * Issue 5487 - Fix various isses with logconv.pl (#6085)
  * Issue 5962 - Rearrange includes for 32-bit support logic
  * Issue 6046 - Make dscreate to work during kickstart installations
  * Issue 6082 - Remove explicit dependencies toward libdb (#6083)
  * Issue 6073 - Improve error log when running out of memory (#6084)
  * Issue 6071 - Instance creation/removal is slow
  * Issue 6010 - 389 ds ignores nsslapd-maxdescriptors (#6027)
  * Issue 6075 - Ignore build artifacts (#6076)
  * Issue 6068 - Add dscontainer stop function</changelog>
  <changelog author="william.brown@suse.com" date="1715688000">- Update to version 3.0.1~git39.e24615f:
  * Issue 6142 - Fix CI tests (#6161)
  * Issue 6157 - Cockipt crashes when getting replication status if topology contains an old 389ds version (#6158)</changelog>
  <changelog author="william.brown@suse.com" date="1722427200">- Update to version 3.1.1~git0.aef1668:
  * Bump version to 3.1.1
  * Issue 6256 - nsslapd-numlisteners limit is not enforced (#6257)
  * Issue 5327 - Fix test metadata
  * Security fix for CVE-2024-6237
  * Security fix for CVE-2024-5953
  * Security fix for CVE-2024-3657
  * Security fix for CVE-2024-2199
  * Issue 6256 - nsslapd-numlisteners limit is not enforced
  * Issue 6265 - lmdb - missing entries in range searches (#6266)
  * Issue 5853 - Update Cargo.lock
  * Bump openssl from 0.10.64 to 0.10.66 in /src
  * Issue 6245 - Revert __COVERITY__ ifndef (#6268)
  * Issue 6248 - fix fanalyzer warnings (#6253)
  * Issue 6238 - Fix test_audit_json_logging CI test regression (#6264)
  * Issue 6254 - Enabling replication for a sub suffix crashes browser (#6255)
  * Issue 6155 - ldap-agent fails to start because of permission error (#6179)
  * Issue 6238 - RFE - add option to write audit log in JSON format
  * Issue 6216 - CI test_fast_slow_import sometime fail (#6247)
  * Issue 6245 - covscan fixes (#6246)
  * Issue 6241 - Add support for CRYPT-YESCRYPT (#6242)
  * Issue 6229 - After an initial failure, subsequent online backups fail (#6230)
  * Issue 6236 - rpm: fix compatibility with RPM 4.20
  * Issue 6227 - dsconf schema does not show inChain matching rule (#6228)
  * Issue 6233 - CI test wait_for_async_feature_test sometime fails (#6234)
  * Bump ws from 7.5.9 to 7.5.10 in /src/cockpit/389-console
  * Issue 6224 - d2entry - Could not open id2entry err 0 - at startup when having sub-suffixes (#6225)
  * Issue 6222 - CI test acl/test_timeofday_keyword sometime fails (#6223)
  * Issue 6120 - /usr/lib64/dirsrv/plugins/libback-bdb.so has an invalid-looking DT_RPATH: /usr/lib/dirsrv
  * Issue 5772 - ONE LEVEL search fails to return sub-suffixes (#6219)
  * Issue 6183 - Slow ldif2db import on a newly created BDB backend (#6208)
  * Issue 6207 - Random crash in test_long_rdn CI test (#6215)
  * Bump braces from 3.0.2 to 3.0.3 in /src/cockpit/389-console
  * Issue 6191 - Node.js 16 actions are deprecated
  * Issue 6199 - unprotected search query during certificate based authentication (#6205)
  * Issue 6200 - Disable WebUI CI tests
  * Issue 6192 - Test failure: test_match_large_valueset
  * Issue 6181 - RFE - Allow system to manage uid/gid at startup
  * Issue 6188 - Add nsslapd-haproxy-trusted-ip to cn=schema (#6201)
  * Issue 6181 - RFE - Allow system to manage uid/gid at startup (#6182)
  * Issue 6170 - audit log buffering doesn't handle large updates
  * Issue 6193 - Test failure: test_tls_command_returns_error_text
  * Issue 6177 - Spec file cleanup
  * Issue 6189 - CI tests fail with `[Errno 2] No such file or directory: '/var/cache/dnf/metadata_lock.pid'`
  * Issue 6175 - Referential integrity plugin - in referint_thread_func does not handle null from ldap_utf8strtok (#6168)
  * Change default salt sizes generated in crypt_pwd (#6185)
  * Issue 6123 - Allow DNA plugin to reuse global config for bind method and connection protocol (#6124)
  * Issue 6159 - Add a test to check URP add and delete conflict (#6160)
  * Issue 6151 - Use %bcond macro for conditional builds in the spec file
  * Issue 6172 - RFE: improve the performance of evaluation of filter component when tested against a large valueset (like group members) (#6173)
  * Bump version to 3.1.0
  * fix issue6165 (#6167)</changelog>
  <changelog author="Thorsten Kukuk &lt;kukuk@suse.com&gt;" date="1722600000">- dirsrv-user.conf: Remove explicit dirsrv group definition, it's
  already specified implicit with "u dirsrv" and not all tools like
  duplicate group entries.</changelog>
  <changelog author="william.brown@suse.com" date="1725451200">- bsc#1229948 - CVE-2024-43806 - rustix::fs::Dir iterator with the linux_raw backend can cause memory explosion
- Update to version 3.1.1~git13.a9c7ff9:
  * Issue 2472 - Add a CI test (#6314)
  * Issue 6276 - Schema lib389 object is not keeping custom schema data upon editing (#6279)
  * Issue 3555 - UI - Fix audit issue with npm - micromatch (#6310)
  * Issue 5843 - Fix size formatting in dscreate output and enhance tests (#6309)
  * Issue 6301 - Fix long delay when setting replication agreement with dsconf (#6303)
  * Issue 6280 - Changelog trims updates from a given RID even if a consumer has not received any of them (#6281)
  * Issue 6296 - basic_test.py::test_conn_limits fails in main branch (#6300)
  * Issue 6295 - test_password_modify_non_utf8 should set default password storage scheme
  * Issue 6294 - Nightly copr builds are failing
  * Issue 6288 - dsidm crash with account policy when alt-state-attr is disabled (#6292)
  * Issue 2324 - Add a CI test (#6289)
  * Issue 6284 - BUG - freelist ordering causes high wtime (#6285)
  * Issue 6282 - BUG - out of tree build fails (#6283)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1732190400">- Add 389-ds-link-icu-uc.patch: properly link to icu-uc as well,
  which is no longer transparently added when linking icu-i18n
  (boo#1233578).</changelog>
  <changelog author="william.brown@suse.com" date="1732881600">- Remove 389-ds-link-icu-uc.patch - upstreamed
- Update to version 3.1.1~git57.65773c3:
  * Issue 6340 - RFE - extract keys once (#6413)
  * Issue 6415 - BUG - Incorrect icu linking (#6416)
  * Issue 6420 - Update dsidm user get_dn test (#6421)
  * Issue 6258 - Resolve race condition for two tests in health_config.py
  * Bump cross-spawn from 7.0.3 to 7.0.6 in /src/cockpit/389-console (#6407)
  * Issue 6386 - backup/restore broken after db log rotation (#6406)
  * Issue 6401 - Remove logging macros
  * Issue 6404 - UI - Add npm pretter package
  * Issue 6374 - nsslapd-mdb-max-dbs autotuning doesn't work properly (#6400)
  * Issue 5842 - Add log buffering for error log
  * Issue 6397 - Remove deprecated setting for HR time stamps in logs
  * Issue 6390 - Adjust cleanAllRUV max per txn and interval limits
  * Issue 6349 - RFE - extract keys once (#6363) (#6394)
  * Issue 6387 - Use make macro in the spec file
  * Issue 6359 - Add exception to GPL license in license tag
  * Issue 6381 - CleanAllRUV - move changelog purging to the very end of the task
  * Issue 5920 - pamModuleIsThreadSafe is missing in the schema
  * Issue 6377 - syntax error in setup.py (#6378)
  * Issue 6349 - RFE - Use previously extracted key path (#6363)
  * Issue 6067 - Update dsidm to prioritize basedn from .dsrc over interactive input (#6362)
  * Issue 6347 - better fix for desyncronized vlv cache (#6358)
  * Issue 6243 - dsctl bdb2mdb should cleanly fail if bundled libdb is not available (#6351)
  * Issue 6331 - UI - Instance fails to load when DB backup directory doesn't exist (#6332)
  * Issue 6356 - On LMDB, after an update the impact VLV index, the vlv recno cache is not systematically cleared (#6357)
  * Issue 6056 - WebUI supports only instances with BDB (#6299)
  * Issue 6339 - Address Coverity scan issues in memberof and bdb_layer (#6353)
  * Issue 6328 - vlv control may not be logged (#6354)
  * Issue 6347 - VLV search sometime fails with operation error (#6349)
  * Issue 6343 - Improve online import robustness when the server is under load
  * Issue 6345 - Ensure all slapi_log_err calls end format strings with newline character \n (#6346)
  * Issue 6064 - bdb2mdb shows errors (#6341)
  * Issue 6336 - Fix failing CI tests (roles) due to slow import (#6337)
  * Fix duplicate detection logic by ensuring exact match on string length (#6333)
  * Issue 6304 - RFE when memberof is enabled, defer updates of members from the update of the group (#6305)
  * Issue 6329 - lmdb typo in error log notice message (#6330)
  * Issue 6324 - Provide more information in the error message during setup_ol_tls_conn() (#6325)
  * Issue 5965 - UI, CLI - Fix Account Policy Plugin functionality issues (#6323)
  * Issue 6188 - Check if nsslapd-haproxy-trusted-ip attribute is returned in default schema
  * Issue 6319 - bdb subpackage has `%description` in the wrong place
  * Issue 6321 - lib389 get_db_lib function may returns the wrong db type (#6322)
  * Issue 6245 - Fix some other coverity scan regressions (#6273)
  * Issue 6316 - lmdb reindex is broken if index type is specified (#6318)
  * Issue 6090 - Fix dbscan options and man pages (#6315)
  * Issue 6307 - Wrong set of entries returned for some search filters (#6308)</changelog>
</package>
<package pkgid="07a2ff70a06367cf4265b89f4a96fe3dab8e17eed266fb5453d2ffcd0a7a34860423fdba7945e5e78ab42ce229028f3f5f68760139d27abc437fb7fd361fdbae" name="AMF" arch="src">
  <version epoch="0" ver="1.4.35" rel="1.1"/>
  <changelog author="Enrico Belleri &lt;idesmi@protonmail.com&gt;" date="1648036800">- initial package</changelog>
  <changelog author="Enrico Belleri &lt;idesmi@protonmail.com&gt;" date="1659009600">- Update to version 1.4.26:
  * New perceptual (PAQ) and temporal (TAQ) adaptive quantization modes
    for PreAnalysis
  * New high motion quality boost mode for PreAnalysis
  * New sharpness option for HQScaler
  * New low latency decoding option
  * New temporal SVC encoding options</changelog>
  <changelog author="Enrico Belleri &lt;idesmi@protonmail.com&gt;" date="1678276800">- Update to version 1.4.29:
  * Added Smart Access Video for decoder and AVC / HEVC / AV1 encoders
  * New options for VQEnhancer and AV1 encoder components
  * Switched to Markdown based API docs which enable easier open source
    developer contributions
  * Added AV1 encoding support
  * Added 12-bit AV1 decoding
  * New VQEnhancer component
  * New AVC / HEVC encoder rate control methods</changelog>
  <changelog author="Enrico Belleri &lt;idesmi@protonmail.com&gt;" date="1678449600">- Exclude pdf and images</changelog>
  <changelog author="ecsos@opensuse.org" date="1699876800">- Update to version 1.4.30:
  * AMF v1.4.30 release
  * Fix missing enum value in AMF_Video_Encode_HEVC_API docs
  * Fix VulkanAMF.h compile when using C (#388)
  * Fix typo in profile level string (#371)
  * Encode API doc corrections
  * Add SmartAccess Video documentation
  * Update Linux distro prereqs for AMF v1.4.29</changelog>
  <changelog author="Enrico Belleri &lt;kilgore.trout@idesmi.eu&gt;" date="1706011200">- Update to version 1.4.33:
  * Added native DX12 support for encoding and PreAnalysis
  * Vulkan encoder became independent from Vulkan driver
  * Switched to public Vulkan Khronos extensions for decoder
  * AMF on Linux can now be used with AMD Pro Vulkan, and experimentally with RADV drivers
  * Improvements to sample presenters
  * Added new FRC component and API doc
  * Added new VQEnhancer API doc
  * Improvements and cleanup to sample presenters
  * Updated FFmpeg to 6.0</changelog>
  <changelog author="andrea.manzini@suse.com" date="1728216000">- Update to version 1.4.35:
  * Define AMFPRI(d|ud|x)64 using the standard C++ format for C+11 and up
  * Define LPRI(d|ud|x)64 as Unicode (wide) versions of AMFPRI(d|ud|x)64
  * Move AMF_UNICODE into Platform.h
  * Add version to the directory and resulting file
  * Include root directory that matches file name
  * Create publish header action
  * Update VQ Enhancer API doc
  * Update HEVC API doc pdf
  * fix doc
  * Clarify PA LAB depth suggestion
  * Differentiate the AMF_NO_VTABLE based on the compiler
  * Fix const on return by value Variant values
  * Fix const on return by value AMF_DECLARE_IID()
  * Fix AMF string format sizes for 64-bit Linux
  * Don't cast amf_int64 when using a format string
  * Fix warning when _MSC_VER is not defined
  * Update PA Engine Type Documentation
  * Fix missing include (#276)</changelog>
</package>
<package pkgid="7f5f61399b6d604ffe0e8fc5e5d1fe1ad01ede32d76801202c053b54fca35b000e6f5863e2e1b7cbdcf330e2349606813a01bf4fb6ead4f95c4bd30b32dd21ed" name="AMF-devel" arch="noarch">
  <version epoch="0" ver="1.4.35" rel="1.1"/>
  <changelog author="Enrico Belleri &lt;idesmi@protonmail.com&gt;" date="1648036800">- initial package</changelog>
  <changelog author="Enrico Belleri &lt;idesmi@protonmail.com&gt;" date="1659009600">- Update to version 1.4.26:
  * New perceptual (PAQ) and temporal (TAQ) adaptive quantization modes
    for PreAnalysis
  * New high motion quality boost mode for PreAnalysis
  * New sharpness option for HQScaler
  * New low latency decoding option
  * New temporal SVC encoding options</changelog>
  <changelog author="Enrico Belleri &lt;idesmi@protonmail.com&gt;" date="1678276800">- Update to version 1.4.29:
  * Added Smart Access Video for decoder and AVC / HEVC / AV1 encoders
  * New options for VQEnhancer and AV1 encoder components
  * Switched to Markdown based API docs which enable easier open source
    developer contributions
  * Added AV1 encoding support
  * Added 12-bit AV1 decoding
  * New VQEnhancer component
  * New AVC / HEVC encoder rate control methods</changelog>
  <changelog author="Enrico Belleri &lt;idesmi@protonmail.com&gt;" date="1678449600">- Exclude pdf and images</changelog>
  <changelog author="ecsos@opensuse.org" date="1699876800">- Update to version 1.4.30:
  * AMF v1.4.30 release
  * Fix missing enum value in AMF_Video_Encode_HEVC_API docs
  * Fix VulkanAMF.h compile when using C (#388)
  * Fix typo in profile level string (#371)
  * Encode API doc corrections
  * Add SmartAccess Video documentation
  * Update Linux distro prereqs for AMF v1.4.29</changelog>
  <changelog author="Enrico Belleri &lt;kilgore.trout@idesmi.eu&gt;" date="1706011200">- Update to version 1.4.33:
  * Added native DX12 support for encoding and PreAnalysis
  * Vulkan encoder became independent from Vulkan driver
  * Switched to public Vulkan Khronos extensions for decoder
  * AMF on Linux can now be used with AMD Pro Vulkan, and experimentally with RADV drivers
  * Improvements to sample presenters
  * Added new FRC component and API doc
  * Added new VQEnhancer API doc
  * Improvements and cleanup to sample presenters
  * Updated FFmpeg to 6.0</changelog>
  <changelog author="andrea.manzini@suse.com" date="1728216000">- Update to version 1.4.35:
  * Define AMFPRI(d|ud|x)64 using the standard C++ format for C+11 and up
  * Define LPRI(d|ud|x)64 as Unicode (wide) versions of AMFPRI(d|ud|x)64
  * Move AMF_UNICODE into Platform.h
  * Add version to the directory and resulting file
  * Include root directory that matches file name
  * Create publish header action
  * Update VQ Enhancer API doc
  * Update HEVC API doc pdf
  * fix doc
  * Clarify PA LAB depth suggestion
  * Differentiate the AMF_NO_VTABLE based on the compiler
  * Fix const on return by value Variant values
  * Fix const on return by value AMF_DECLARE_IID()
  * Fix AMF string format sizes for 64-bit Linux
  * Don't cast amf_int64 when using a format string
  * Fix warning when _MSC_VER is not defined
  * Update PA Engine Type Documentation
  * Fix missing include (#276)</changelog>
</package>
<package pkgid="0b9b4cbb365f863625d007d5bfaac83ef7085a8eccf2a973c453d93ee91cfde9571916453e27033625556fac9be20bc6ba01984d9e7c3860ce945dc2188add28" name="AMF-docs" arch="noarch">
  <version epoch="0" ver="1.4.35" rel="1.1"/>
  <changelog author="Enrico Belleri &lt;idesmi@protonmail.com&gt;" date="1648036800">- initial package</changelog>
  <changelog author="Enrico Belleri &lt;idesmi@protonmail.com&gt;" date="1659009600">- Update to version 1.4.26:
  * New perceptual (PAQ) and temporal (TAQ) adaptive quantization modes
    for PreAnalysis
  * New high motion quality boost mode for PreAnalysis
  * New sharpness option for HQScaler
  * New low latency decoding option
  * New temporal SVC encoding options</changelog>
  <changelog author="Enrico Belleri &lt;idesmi@protonmail.com&gt;" date="1678276800">- Update to version 1.4.29:
  * Added Smart Access Video for decoder and AVC / HEVC / AV1 encoders
  * New options for VQEnhancer and AV1 encoder components
  * Switched to Markdown based API docs which enable easier open source
    developer contributions
  * Added AV1 encoding support
  * Added 12-bit AV1 decoding
  * New VQEnhancer component
  * New AVC / HEVC encoder rate control methods</changelog>
  <changelog author="Enrico Belleri &lt;idesmi@protonmail.com&gt;" date="1678449600">- Exclude pdf and images</changelog>
  <changelog author="ecsos@opensuse.org" date="1699876800">- Update to version 1.4.30:
  * AMF v1.4.30 release
  * Fix missing enum value in AMF_Video_Encode_HEVC_API docs
  * Fix VulkanAMF.h compile when using C (#388)
  * Fix typo in profile level string (#371)
  * Encode API doc corrections
  * Add SmartAccess Video documentation
  * Update Linux distro prereqs for AMF v1.4.29</changelog>
  <changelog author="Enrico Belleri &lt;kilgore.trout@idesmi.eu&gt;" date="1706011200">- Update to version 1.4.33:
  * Added native DX12 support for encoding and PreAnalysis
  * Vulkan encoder became independent from Vulkan driver
  * Switched to public Vulkan Khronos extensions for decoder
  * AMF on Linux can now be used with AMD Pro Vulkan, and experimentally with RADV drivers
  * Improvements to sample presenters
  * Added new FRC component and API doc
  * Added new VQEnhancer API doc
  * Improvements and cleanup to sample presenters
  * Updated FFmpeg to 6.0</changelog>
  <changelog author="andrea.manzini@suse.com" date="1728216000">- Update to version 1.4.35:
  * Define AMFPRI(d|ud|x)64 using the standard C++ format for C+11 and up
  * Define LPRI(d|ud|x)64 as Unicode (wide) versions of AMFPRI(d|ud|x)64
  * Move AMF_UNICODE into Platform.h
  * Add version to the directory and resulting file
  * Include root directory that matches file name
  * Create publish header action
  * Update VQ Enhancer API doc
  * Update HEVC API doc pdf
  * fix doc
  * Clarify PA LAB depth suggestion
  * Differentiate the AMF_NO_VTABLE based on the compiler
  * Fix const on return by value Variant values
  * Fix const on return by value AMF_DECLARE_IID()
  * Fix AMF string format sizes for 64-bit Linux
  * Don't cast amf_int64 when using a format string
  * Fix warning when _MSC_VER is not defined
  * Update PA Engine Type Documentation
  * Fix missing include (#276)</changelog>
</package>
<package pkgid="0e712e1451bdbf1ce90daa7d824f73786a031076c378bd70d4b281f924844be1d321f1d8269ffe2e2f9678a88a13eec598c73bf897c6eb75e0c5f0263d5a7de5" name="Aeon-release" arch="src">
  <version epoch="0" ver="20240605" rel="2939.4.2.sr20240605"/>
  <changelog author="openSUSE &lt;packaging@lists.opensuse.org&gt;" date="1717588800">- automatically generated by openSUSE-release-tools/pkglistgen</changelog>
</package>
<package pkgid="63992bf45fd164ce906a3fdaf51ca1cbd09814c57987a1e985db6ea3c9bbf0f71441e55104fd4aa26b6355a54c4fd501eaf3215a82a6ae6332f20e343ea38434" name="Aeon-release" arch="x86_64">
  <version epoch="0" ver="20240605" rel="2939.4.2.sr20240605"/>
  <changelog author="openSUSE &lt;packaging@lists.opensuse.org&gt;" date="1717588800">- automatically generated by openSUSE-release-tools/pkglistgen</changelog>
</package>
<package pkgid="a192ac8ff10c30e064b7de201a5928c80f0ff34d878fc1d561f46e17f6ae43880805ff54d7711326d0b7cce3bba64ed044a68347f7c69d773403799c62bb6bfc" name="Aeon-release" arch="src">
  <version epoch="0" ver="20240702" rel="2980.7.1.sr20240702"/>
  <changelog author="openSUSE &lt;packaging@lists.opensuse.org&gt;" date="1720008000">- automatically generated by openSUSE-release-tools/pkglistgen</changelog>
</package>
<package pkgid="15dc40951c0611270053a9a166515d441c46bcd0b77d99d7e3abd96b192b8f9211543ae56ffee9ef2482962edddc96d6d77b57aadb2becd8f0db8b0e604007d8" name="Aeon-release" arch="x86_64">
  <version epoch="0" ver="20240702" rel="2980.7.1.sr20240702"/>
  <changelog author="openSUSE &lt;packaging@lists.opensuse.org&gt;" date="1720008000">- automatically generated by openSUSE-release-tools/pkglistgen</changelog>
</package>
<package pkgid="5f958755e131aed35a1e4ae8d18de9d0d32ef455c59c1be2f775c37a65e0c653faf4340a7f7be422182fa5a498b31b530b549ee717f4182af6055b25d55d5e96" name="Aeon-release" arch="src">
  <version epoch="0" ver="20240803" rel="3030.9.1.sr20240803"/>
  <changelog author="openSUSE &lt;packaging@lists.opensuse.org&gt;" date="1722686400">- automatically generated by openSUSE-release-tools/pkglistgen</changelog>
</package>
<package pkgid="d1a056f86b3fcd6405f17321a86e324b8b2b75addc57f6d47f35f4af12beb3383ed9b9fbc010a647601814f850a753be616c623d8368003fee506df51547e42c" name="Aeon-release" arch="x86_64">
  <version epoch="0" ver="20240803" rel="3030.9.1.sr20240803"/>
  <changelog author="openSUSE &lt;packaging@lists.opensuse.org&gt;" date="1722686400">- automatically generated by openSUSE-release-tools/pkglistgen</changelog>
</package>
<package pkgid="4cde2459878e5fe7b41011490821591d3c6c28a16f0cf64d43d61f419f6483f17f73bdfa3d0e34847a62a94c1f6fa1f9014488c9c45ab6534a029db742deb15a" name="Aeon-release" arch="src">
  <version epoch="0" ver="20240901" rel="3079.12.1.sr20240901"/>
  <changelog author="openSUSE &lt;packaging@lists.opensuse.org&gt;" date="1725192000">- automatically generated by openSUSE-release-tools/pkglistgen</changelog>
</package>
<package pkgid="db9623ca45b7d8f0132e9add3eda82c813aacfa29591d4f82570cb0f338b75daca36710b839384e2ca54ddbab3e0d7a4660000bf80422ca8f25c8baac668cc61" name="Aeon-release" arch="x86_64">
  <version epoch="0" ver="20240901" rel="3079.12.1.sr20240901"/>
  <changelog author="openSUSE &lt;packaging@lists.opensuse.org&gt;" date="1725192000">- automatically generated by openSUSE-release-tools/pkglistgen</changelog>
</package>
<package pkgid="2ef754a1fa95d69b25b179e1f6a40b4e744ee69f3a102261905febb6f09e5fda99d690ab7ffc983d9ea78aea5991aa67c355d17eb2dc65b2632132831f60dd04" name="Aeon-release" arch="src">
  <version epoch="0" ver="20241002" rel="3134.11.1.sr20241002"/>
  <changelog author="openSUSE &lt;packaging@lists.opensuse.org&gt;" date="1727956800">- automatically generated by openSUSE-release-tools/pkglistgen</changelog>
</package>
<package pkgid="6d2db59b748e3a55e7d340eeb8a8ed104524e8dc31810f11c700560821e8f32ff41a5e5d7ba1bc0e9089b5e94cc232a0d2837728c6b24082ff205f003d3ac799" name="Aeon-release" arch="x86_64">
  <version epoch="0" ver="20241002" rel="3134.11.1.sr20241002"/>
  <changelog author="openSUSE &lt;packaging@lists.opensuse.org&gt;" date="1727956800">- automatically generated by openSUSE-release-tools/pkglistgen</changelog>
</package>
<package pkgid="6f9bb719fd48d151df414f305af02c765157d9aa299e1c8754b48fd7a56c3621cd96bb7f25d77a7274fd8f9831b268410ab912465222879e7346f2fc1ee3c3a0" name="Aeon-release" arch="src">
  <version epoch="0" ver="20241103" rel="3197.13.1.sr20241103"/>
  <changelog author="openSUSE &lt;packaging@lists.opensuse.org&gt;" date="1730635200">- automatically generated by openSUSE-release-tools/pkglistgen</changelog>
</package>
<package pkgid="bd518aa6305a4274843aec2ed95e3806274049fa4ee1585c0fc376d9e60ab58f63318f75ddc09f26262c223e3fbe50b5dc9326abab30b0a86a16ab3c268896b2" name="Aeon-release" arch="x86_64">
  <version epoch="0" ver="20241103" rel="3197.13.1.sr20241103"/>
  <changelog author="openSUSE &lt;packaging@lists.opensuse.org&gt;" date="1730635200">- automatically generated by openSUSE-release-tools/pkglistgen</changelog>
</package>
<package pkgid="f54ef960a97238d46133bbd0ddb96a9bbf4c02705c26c718f5152d52af84844a849b90561e6960202520e3c57abcd231973670994f815ade4fe743d418564063" name="Aeon-release-appliance" arch="x86_64">
  <version epoch="0" ver="20240605" rel="2939.4.2.sr20240605"/>
  <changelog author="openSUSE &lt;packaging@lists.opensuse.org&gt;" date="1717588800">- automatically generated by openSUSE-release-tools/pkglistgen</changelog>
</package>
<package pkgid="a8d9c401478f00cc415de477457227d296f4242aef69cc29f2e0d179ad6f192fcbf8633d4ccff48c60edf4290df55e0fe666ce90a1a785b1e0d82bd9b7f589d8" name="Aeon-release-appliance" arch="x86_64">
  <version epoch="0" ver="20240702" rel="2980.7.1.sr20240702"/>
  <changelog author="openSUSE &lt;packaging@lists.opensuse.org&gt;" date="1720008000">- automatically generated by openSUSE-release-tools/pkglistgen</changelog>
</package>
<package pkgid="8b6c746e24a1a8155a283b548569f7d2acfb75d945519575bf0384f79c1aca8681a8dfb2a6efbd85880dd20c2d999ec263d888cca5531bff3ae5863f4d3f42f4" name="Aeon-release-appliance" arch="x86_64">
  <version epoch="0" ver="20240803" rel="3030.9.1.sr20240803"/>
  <changelog author="openSUSE &lt;packaging@lists.opensuse.org&gt;" date="1722686400">- automatically generated by openSUSE-release-tools/pkglistgen</changelog>
</package>
<package pkgid="c0eec05583af4684825e97a24127aba2d0f2d09fc6a4c8a362bd2629fdab614eda8b8ad2055da50fee37ecfe711f1f9bbe85de305bb5b2c5519adecdd4dfb550" name="Aeon-release-appliance" arch="x86_64">
  <version epoch="0" ver="20240901" rel="3079.12.1.sr20240901"/>
  <changelog author="openSUSE &lt;packaging@lists.opensuse.org&gt;" date="1725192000">- automatically generated by openSUSE-release-tools/pkglistgen</changelog>
</package>
<package pkgid="3d451634e4d41ba775cea2907a4b19b84bd7fc183819efa3f25b385ea0bfe944dfb3b27cb5b8cd97db81c735eea596b6c104685ddbb37045cf1361e399c99ddb" name="Aeon-release-appliance" arch="x86_64">
  <version epoch="0" ver="20241002" rel="3134.11.1.sr20241002"/>
  <changelog author="openSUSE &lt;packaging@lists.opensuse.org&gt;" date="1727956800">- automatically generated by openSUSE-release-tools/pkglistgen</changelog>
</package>
<package pkgid="de8577f01f64aa81f1325dc0a35ea15e54113b1775d667061cb381638c860de871c6a9f33410b8c3e2ef5eaee2f72b4a2d33c717944fcbc6b683b6236d4e736f" name="Aeon-release-appliance" arch="x86_64">
  <version epoch="0" ver="20241103" rel="3197.13.1.sr20241103"/>
  <changelog author="openSUSE &lt;packaging@lists.opensuse.org&gt;" date="1730635200">- automatically generated by openSUSE-release-tools/pkglistgen</changelog>
</package>
<package pkgid="c37887b0ae6b7589f2be59b0f618a8534ba8f9f38cbeeb57bddce9017f780428c8ea1a3dd47b05a8799c2004fa3b42c742cee8bd1e1a280122bacad7c24df0bd" name="CoreFreq" arch="src">
  <version epoch="0" ver="1.97.1" rel="1.2"/>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1644667200">- Update to version 1.89.3
  * No changelog was made available by upstream</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1646654400">- removed non-working leap15_2.patch and leap15_3.patch:
  Leap 15.4 is the minimum supported version
- Update to version 1.90.1
  * support for Alder Lake architecture:
    in particular, specialized monitoring for Pcore and Ecore
  * more precise DDR5 and DDR4 timings from SKL to ADL:
    introduction of "Gear mode"
  * improvement using Power Limiters:
    zero W on PL1 &amp; PL2; DRAM clampig marked experimental
  * characteristics for Zen architecture:
    CPPC; C1E; MEM CLOCK in raw frequency
  * C-state Core for Ice Lake/X
  * various characteristics of C-state package for AMD/Zen and Intel (Lake)
  * various changes in UI
  * non-regression tests for kernels 5.16.12 and 5.17.rc6</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1655899200">- Update to version 1.91.3
  * No changelog was made available by upstream</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1661169600">- Update to version 1.91.6
  - [AMD/Zen][UMC] Fixed the Mem Clock and ECC regressions
  - Designate the Package identifier in Power consumed readings
  - [Intel/ADL/IMC] Guessing activated channel from the populated DIMM
  - [AMD][UMC, IOMMU] Adding missing DID of family 19h devices
  - [AMD_DataFabric_Cezanne] Removed the Experimental mode
  - Intel/ADL/IMC: Fixing the Memory Channels count
  - [AMD/Zen] Improved UMC mapping. Threadripper 3960X issue
  - Avoid some NULL pointer strings during SMBIOS decoding</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1667563200">- update to version 1.92.3
  - Export CPUID bits Intel Sierra Forest, Grand Ridge, Granite Rapids
    and completes AMD64 Fn0000_0007_ECX_x0
  - [Features] WBNOINVD and CLZERO instructions
  - Adding various Mitigation Mechanism aggregations:
    IPRED_DIS_U, IPRED_DIS_S, RRSBA_DIS_U, RRSBA_DIS_S, BHI_DIS_S, MCDT_NO
  - RDPID and UMIP capability fixed.
  - [AMD] Perf. Mon. version based on CPUID_0x80000022.EAX.PerfMonV2
  - [AMD][Zen3+][Rembrandt] Trigger UMC and IOMMU decoders
  - [AMD][Ryzen 5 6600H] Found voltage VID @ SMU 0x6f010 and 0x6f014
  - Introducing AMD Security Feature capabilities:
    SKINIT, SEV, GMET, SEV-ES, SEV-SNP
  - [AMD64] Non-architectural MSR: SPECULATIVE STORE BYPASS DISABLE
  - [Intel][2nd &amp; 3rd gen] Misc IMC optimizations
  - [AMD][Rembrandt] Provides Vcore from a new formula.
  - Dumping CPUID leaves from AMD64 Architecture Programmer’s Manual
  - [Intel][HSW &amp; BDW] Compute the DIMM banks
  - [UI] Re-assigned keys to move or resize windows.
  - [AMD][Zen] Uncore frequency: Improving the Memory Clock divisor
  - [Intel][HSW &amp; BDW][SKL] Make use of same function DimmWidthToRows
  - [AMD][Zen3+][Rembrandt] Provides the thermal sensor.
  - [AMD/Zen2 &amp; Zen3] Removed the HSMP capability.
  - [Intel][CML][RKL][TGL] Compute the DIMM Rows from CH_WIDTH
  - [AMD/EPYC] Adding the CPUID of Zen4 Genoa architecture
  - [AMD/Zen2] Introducing Mendocino architecture
  - Changed MeteorLake/N to CPUID 06_B5
  - [Intel] Computes BIOS DRAM frequency based on PLL_REF100
  - [Intel][SNB/IVB/HSW/BDW] Improved BIOS DRAM frequency
  - [Intel][SNB/IVB] DRAM frequency based on RAM_Select and FSB_Select
  - [Intel][IVB] IMC specifications and optimizations.
  - [Intel][SNB,IVB] Computes the DIMM A from DAS bit in MAD register
  - [Intel][SNB,IVB,HSW,BDW] Rolling back changes to the DIMM topology
  - [Intel][BDW][HSW] Query the IMC Power Down Mode
  - [Intel][IVB][SNB] Attempt to decode the IMC third timings
  - [AMD][Ryzen] Added AMD Ryzen 7 PRO 6860Z
  - [AMD][F17h-F19h] Can toggle ON and OFF the Instruction Cache Unit
  - [AMD] Checking the Ryzen "OEM Only" processors
  - [Intel] Specification of 12th Gen. MSR registers capability
  - [Intel] Adding Raptor Lake-S with CPUID 06_BF
  - [AMD] Introducing Zen 4 / Raphael architecture
  - [Intel][SNB,IVB,HSW] Attempt to assign the Rank per DIMM slot
  - [Intel][SNB,IVB,HSW] Attempt to fix the DIMM(s) topology layout
  - ClockSource: TSC udelay() asm implementation builtin as a default
  - [Intel][Alder Lake] Adding IMC entry for i5-12500 processor
  - [Intel][Alder Lake] Added default case if Processor has only Pcores
  - [Intel][Atom/Bonnell][IMC] Attempt to compute the DIMM geometry
  - [UI][Custom view] Show the Uncore unit in watt or joule
  - [UI] Display HWP or CPPC in footer for capable processors.
  - [CLI] Added HWP Capabilities and HWP Request to the JSON export
  - [CLI] Don't allow the HWP dialog box if feature is not available.
  - [CPPC][Firmware] allows (de)activation of the feature.
  - [CLI] Added CPU ratios to JSON export
  - [CPPC] Improved scaling
  - [CPPC] Build fixed down to Kernel version 3
  - [Kernel/ACPI] Attempt to write CPPC registers</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1667563201">- Repair deficient description grammar.</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1670241600">- update to 1.92.4:
  * [Intel/Skylake-X] Permits MSR_RING_PERF_LIMIT_REASONS</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1670932800">- removed modprobe_corefreqd.service.patch and harden_corefreqd.service.patch
  now included in new corefreqd.service file replacing stock one
- update to 1.93.1
  * [PRJ] CoreFreq version 1.93.1
  * [ACPI/CPPC/EPP] Preview of AMD/Zen Energy Preference (CONFIG_CACHY)
  * [UI] Changed the HWP or CPPC ratio bounds.
  * [FIX] Putting `corefreqd` in the root cgroup (issue #379) Thanks to gel-crabs
  * [DOC] Parameters to blacklist the amd_pstate since kernel 6.0.11
  * [AMD][Zen4] Apply a voltage formula based on Rembrandt's. (#378)
  * [AMD][Zen4/Raphael] Attempting temperature per CCD from TCTL+0x308
  * [AMD][Zen4] Changed Timer loop
  * [CR] CLI code review and UI optimizations
  * [UI] Auto refresh the Topology items when off/online
  * [CR] Conditionally build with additional PMC Counters
  * [Intel] Adding Z8000 System Memory Controller Registers
  * [CR] Transformed global variable in cells padding
  * [UI] Windows re-scaling fix
  * [UI] Apply color theming to the CPPC capabilities list.
  * [AMD][Raphael] Adding device DIDs to probe UMC and IOMMU
  * [CPPC/FMW] Computes value bounds while Enabling/Disabling firmware
  * [CR] CPPC lib errors are now raised to Debug level
  * [AMD][Zen4] Increased the UMC size to 12 channels.
  * [CPPC] Handles the OffLine CPU case.
  * [CLI] Refactoring HWP/CPPC to print all capabilities per CPU
  * [ACPI] Computes the CPPC Bounds
  * [Intel] Linear Address Masking (LAM)
  * [CLI] EFER: Left aligned labels
  * [AMD] Reports UAIE and AIBRSE bits from EFER system register
  * [CLI] Changed mitigation mechanisms incapability labels
  * [AMD][Zen2] Mitigation Mechanism BTC-NOBR * ACPI/OSPM documentation
  * [CR] Code review on bit masks
  * [CPPC][ACPI] Kernel may decode the Guaranteed Performance Register
  * [UI] Optimize the cycles to clear the time bar.
  * [CR] Code review for extra compiler warnings
  * [UI] Time of the day displayed in the right side of menu
  * [UI] Display the current date and time in menu bar
  * [Kernel] Introducing support of `CONFIG_SCHED_BORE`
  * [CLI] Fixing ambiguous CPPC report: hardware vs firmware
  * [CLI] Surrounds _CPC feature with square brackets
  * [CPPC] Provides the ACPI _CPC object state.
  * [UI] Colors the task being tracked in the tracking list
  * [UI] Display the current time in the menu bar
  * [CLI] Reserve the programmable TDP section to Intel processors.
  * [AMD/Zen3+] Improving the DIMM geometry of Rembrandt UMC</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1672747200">- update to 1.94.1:
  * [Intel] Gemini Lake
  * [AMD] Ryzen 5 6600 H SoC, UMC channels
  * [AMD] Rembrandt: maximum of two UMC channels
  * [AMD] Raphael: Decodes DIMM geometry from AddrCfg
  * [AMD] Zen: Aggregation refactored
  * [AMD] Improved DDR5 clock decoding
  * Optimized Idle Loop</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1673006400">- update to 1.94.3:
  * [AMD][RMB] If UMC is quad channels then unpopulate odd channels
  * [AMD][RPL] Provide Service Processor Vcore as workaround
  * [UI] Auto size and lay performance capabilities window
  * [UI] Adding comments to the EEO and R2H technologies
  * [AMD][Raphael] 7950X3D, 7900X3D. support</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1674475200">- update to 1.95.1:
  * [Intel] RPL: voltage of Pcore, Ecore, System Agent
  * [Intel] RPL and ADL Chipset device IDs
  * [Intel] Decode the RPL IMC and improve DDR5 support
  * [Build] Raise `MAX_FREQ_HZ` up to 7125000000 Hertz
  * [Intel] Mobile {Coffee Lake, Kaby Lake} codenames
  * [Intel] Braswell codename detection
  * [AMD] SYSCFG Register
  * [AMD] EPYC 9654
  * [AMD] Transparent SME
  * [AMD] DRAM Data Scrambling
  * [AMD] Adding "Barcelo R" and "Rembrandt R"</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1675944000">- update to 1.95.2:
  * Fixed the aggregation of the minimum ratio
  Intel:
  * [Airmont][Silvermont] Attempt to decode `tCKE` from DRMC
    register
  * [Airmont] Improve `tWTPr`, `B2B`, `tWWDR` timings
  * [Airmont] Provide a new IMC decoder
  * Add the Emerald Rapids architecture entry
  * [DDR5][DDR4] Add the `RCDw` IMC timing
  * [Raptor Lake ] De-activate the MSR Uncore counter
  AMD:
  * "Zen3/Barcelo-R" and "Zen3+ Rembrandt-R" codenames
  * [Zen] Thermal highest limit reset fix
  Misc:
  * Code review and Registers documentation:
    AMD HWCR, Intel HDC and DRP</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677067200">- update to 1.95.4
  * [Intel] [from 11th to 14th gen]
    Convert the DRAM Speed to MT/s unit
    Compute the Bus Rate based on the BIOS MC PLL
- update to 1.95.3
  * [Intel] [Airmont]
    Improved the IMC geometry
    Introducing the Spreadtrum architecture
    Fixed the Bus and DRAM frequency rates
  * [Intel] [from 11th to 13th gen] Attempt to probe the interleaved controllers
  * [Intel] [Alder Lake/H] Attempt to decode the TCO Watchdog</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677153600">- added leap_compile_fix.patch to fix compilation on Leap</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1683115200">- removed leap_compile_fix.patch no needed anymore
- update to 1.96.0
  * [AMD]
    [RPL/X3D] Disabling the turbo boosted P-states change
    [PHOENIX] Adding Z1, U and HS PRO series.
    [Genoa] DAC address at UMC BAR + 0x40
    [Zen4] Adding the PCI entries of Genoa
    [Zen2] Adding remaining PCI entries
    [Zen] Query DAC &amp; CFG with the right UMC base address register
    [Zen4] Dump the CPUID Extended CPU Topology leaves.
    [Zen][Embedded][Banded Kestrel] R1000 Processor Family
    [Zen][Embedded] "Great Horned Owl", "River Hawk", "Grey Hawk"
    Complete the "Raven Ridge" and "Picasso" lists
    [EPYC] Moved "Snowy Owl" Embedded processors to CPUID 8F_01
    [Zen4] introducing Phoenix and Dragon Range
    [RMB] adding the Ryzen Embedded V3000 processors
    [VMR] adding the "AMD Ryzen 9 PRO 5945"
  * [Intel]
    Adding Granite Rapids, Sierra Forest, Grand Ridge entries
    Adding "Lunar Lake" and "Arrow Lake" entries.
  * [UI]
    Optimized decimal to digits converter
    Allow task tracker to select up to pid_max
    Can trace the frozen states of Linux tasks.
    Only print HWP frequencies within bounds.
    Fix ruler's aggregation.
  * [CR]
    Check CPUID[HV_PARTITION_PRIVILEGE_MASK] for HV_X64_MSR_VP_RUNTIME
    Uninitialized variable fix.
    [CPPC] Build EPP with KERNEL_VERSION(6) rather than CONFIG_CACHY
    [KERNEL] Linux 6.3: Employ modifier calls with the vma-&gt;vm_flags</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1684065600">- update to 1.96.1
  * [Driver]
  - Postpone Clock Source registration during startup until the Base Clock is computed.
  - Change class_create() according to Linux Kernel 6.4
  - Clear interrupt flag (cli) after Halt in the Idle method
  * [AMD]
  - [PHOENIX] Adding Ryzen 7940H, 7840H, 7640H
  - [VERMEER] Adding Ryzen PRO and Embedded processors
  - Ryzen Z1 CPUID' brand fix
  - Adding EPYC Embedded 9004 Series as Genoa
  - Adding EPYC Embedded 7003 Series as Milan
  - Adding EPYC Embedded 7002 Series as Rome
  - Adding EPYC Embedded 7001 Series as Naples</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1685880000">- update to 1.96.2
  * [Driver]
  - Allows compilation to keep going without CONFIG_ACPI_CPPC_LIB
  * [Client]
  - Adding two command line arguments:
  - Op Show Package C-States
  - OW Toggle Energy units
  * [AMD]
  - Specification of some Configuration MSRs</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1686830400">- update to 1.96.4
  * [AMD]
  - Display CPUID state of new and legacy features:
    Fused Multiply Add [FMA4]
    Extended Operation Support [XOP]
    Translation Cache Extension [TCE]
    Trailing Bit Manipulation [TBM]
    OS Visible Work-around [OSVW]
    LOCK prefix to read CR8 [AltMov]
  * [Intel]
  - Advanced Matrix Extensions [AMX]
  - Bits and Features of Sierra Forest and Grand Ridge
  - Attempt to decode the Meteor Lake Memory Controller
- update to 1.96.3
  * [AMD]
  - [Zeppelin] Probe more than one UMC controllers on Ryzen Threadripper 1900X
  - [Zen4] Dump SMBE and BMEC sub-leaves of CPUID 0x80000020</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1688212800">- update to 1.96.5
  * [AMD]
    Adding the "AMD Ryzen 5 5600X3D"
    Introducing the Zen4c Bergamo architecture
    Specs fixing of Embedded V-series and 3000 Series Processors
    Adding MENDOCINO, RAPHAEL Pro, PHOENIX Pro among others</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1712318400">- added preamble file for %kernel_module_package macro
- update to 1.97.1
  * added aarch64 support
  * upstream did not provide a summary changelog. Full list of commits:
    https://github.com/cyring/CoreFreq/compare/1.96.5...1.97.1</changelog>
</package>
<package pkgid="15aabea2e527f763875363b7296410df8904c478d5d799f9e519b01f7fb7d7934dea3449fce4d29738c0f6ad75b1b80df80bec4bc4f261971859a954aac446e0" name="CoreFreq" arch="x86_64">
  <version epoch="0" ver="1.97.1" rel="1.2"/>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1644667200">- Update to version 1.89.3
  * No changelog was made available by upstream</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1646654400">- removed non-working leap15_2.patch and leap15_3.patch:
  Leap 15.4 is the minimum supported version
- Update to version 1.90.1
  * support for Alder Lake architecture:
    in particular, specialized monitoring for Pcore and Ecore
  * more precise DDR5 and DDR4 timings from SKL to ADL:
    introduction of "Gear mode"
  * improvement using Power Limiters:
    zero W on PL1 &amp; PL2; DRAM clampig marked experimental
  * characteristics for Zen architecture:
    CPPC; C1E; MEM CLOCK in raw frequency
  * C-state Core for Ice Lake/X
  * various characteristics of C-state package for AMD/Zen and Intel (Lake)
  * various changes in UI
  * non-regression tests for kernels 5.16.12 and 5.17.rc6</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1655899200">- Update to version 1.91.3
  * No changelog was made available by upstream</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1661169600">- Update to version 1.91.6
  - [AMD/Zen][UMC] Fixed the Mem Clock and ECC regressions
  - Designate the Package identifier in Power consumed readings
  - [Intel/ADL/IMC] Guessing activated channel from the populated DIMM
  - [AMD][UMC, IOMMU] Adding missing DID of family 19h devices
  - [AMD_DataFabric_Cezanne] Removed the Experimental mode
  - Intel/ADL/IMC: Fixing the Memory Channels count
  - [AMD/Zen] Improved UMC mapping. Threadripper 3960X issue
  - Avoid some NULL pointer strings during SMBIOS decoding</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1667563200">- update to version 1.92.3
  - Export CPUID bits Intel Sierra Forest, Grand Ridge, Granite Rapids
    and completes AMD64 Fn0000_0007_ECX_x0
  - [Features] WBNOINVD and CLZERO instructions
  - Adding various Mitigation Mechanism aggregations:
    IPRED_DIS_U, IPRED_DIS_S, RRSBA_DIS_U, RRSBA_DIS_S, BHI_DIS_S, MCDT_NO
  - RDPID and UMIP capability fixed.
  - [AMD] Perf. Mon. version based on CPUID_0x80000022.EAX.PerfMonV2
  - [AMD][Zen3+][Rembrandt] Trigger UMC and IOMMU decoders
  - [AMD][Ryzen 5 6600H] Found voltage VID @ SMU 0x6f010 and 0x6f014
  - Introducing AMD Security Feature capabilities:
    SKINIT, SEV, GMET, SEV-ES, SEV-SNP
  - [AMD64] Non-architectural MSR: SPECULATIVE STORE BYPASS DISABLE
  - [Intel][2nd &amp; 3rd gen] Misc IMC optimizations
  - [AMD][Rembrandt] Provides Vcore from a new formula.
  - Dumping CPUID leaves from AMD64 Architecture Programmer’s Manual
  - [Intel][HSW &amp; BDW] Compute the DIMM banks
  - [UI] Re-assigned keys to move or resize windows.
  - [AMD][Zen] Uncore frequency: Improving the Memory Clock divisor
  - [Intel][HSW &amp; BDW][SKL] Make use of same function DimmWidthToRows
  - [AMD][Zen3+][Rembrandt] Provides the thermal sensor.
  - [AMD/Zen2 &amp; Zen3] Removed the HSMP capability.
  - [Intel][CML][RKL][TGL] Compute the DIMM Rows from CH_WIDTH
  - [AMD/EPYC] Adding the CPUID of Zen4 Genoa architecture
  - [AMD/Zen2] Introducing Mendocino architecture
  - Changed MeteorLake/N to CPUID 06_B5
  - [Intel] Computes BIOS DRAM frequency based on PLL_REF100
  - [Intel][SNB/IVB/HSW/BDW] Improved BIOS DRAM frequency
  - [Intel][SNB/IVB] DRAM frequency based on RAM_Select and FSB_Select
  - [Intel][IVB] IMC specifications and optimizations.
  - [Intel][SNB,IVB] Computes the DIMM A from DAS bit in MAD register
  - [Intel][SNB,IVB,HSW,BDW] Rolling back changes to the DIMM topology
  - [Intel][BDW][HSW] Query the IMC Power Down Mode
  - [Intel][IVB][SNB] Attempt to decode the IMC third timings
  - [AMD][Ryzen] Added AMD Ryzen 7 PRO 6860Z
  - [AMD][F17h-F19h] Can toggle ON and OFF the Instruction Cache Unit
  - [AMD] Checking the Ryzen "OEM Only" processors
  - [Intel] Specification of 12th Gen. MSR registers capability
  - [Intel] Adding Raptor Lake-S with CPUID 06_BF
  - [AMD] Introducing Zen 4 / Raphael architecture
  - [Intel][SNB,IVB,HSW] Attempt to assign the Rank per DIMM slot
  - [Intel][SNB,IVB,HSW] Attempt to fix the DIMM(s) topology layout
  - ClockSource: TSC udelay() asm implementation builtin as a default
  - [Intel][Alder Lake] Adding IMC entry for i5-12500 processor
  - [Intel][Alder Lake] Added default case if Processor has only Pcores
  - [Intel][Atom/Bonnell][IMC] Attempt to compute the DIMM geometry
  - [UI][Custom view] Show the Uncore unit in watt or joule
  - [UI] Display HWP or CPPC in footer for capable processors.
  - [CLI] Added HWP Capabilities and HWP Request to the JSON export
  - [CLI] Don't allow the HWP dialog box if feature is not available.
  - [CPPC][Firmware] allows (de)activation of the feature.
  - [CLI] Added CPU ratios to JSON export
  - [CPPC] Improved scaling
  - [CPPC] Build fixed down to Kernel version 3
  - [Kernel/ACPI] Attempt to write CPPC registers</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1667563201">- Repair deficient description grammar.</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1670241600">- update to 1.92.4:
  * [Intel/Skylake-X] Permits MSR_RING_PERF_LIMIT_REASONS</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1670932800">- removed modprobe_corefreqd.service.patch and harden_corefreqd.service.patch
  now included in new corefreqd.service file replacing stock one
- update to 1.93.1
  * [PRJ] CoreFreq version 1.93.1
  * [ACPI/CPPC/EPP] Preview of AMD/Zen Energy Preference (CONFIG_CACHY)
  * [UI] Changed the HWP or CPPC ratio bounds.
  * [FIX] Putting `corefreqd` in the root cgroup (issue #379) Thanks to gel-crabs
  * [DOC] Parameters to blacklist the amd_pstate since kernel 6.0.11
  * [AMD][Zen4] Apply a voltage formula based on Rembrandt's. (#378)
  * [AMD][Zen4/Raphael] Attempting temperature per CCD from TCTL+0x308
  * [AMD][Zen4] Changed Timer loop
  * [CR] CLI code review and UI optimizations
  * [UI] Auto refresh the Topology items when off/online
  * [CR] Conditionally build with additional PMC Counters
  * [Intel] Adding Z8000 System Memory Controller Registers
  * [CR] Transformed global variable in cells padding
  * [UI] Windows re-scaling fix
  * [UI] Apply color theming to the CPPC capabilities list.
  * [AMD][Raphael] Adding device DIDs to probe UMC and IOMMU
  * [CPPC/FMW] Computes value bounds while Enabling/Disabling firmware
  * [CR] CPPC lib errors are now raised to Debug level
  * [AMD][Zen4] Increased the UMC size to 12 channels.
  * [CPPC] Handles the OffLine CPU case.
  * [CLI] Refactoring HWP/CPPC to print all capabilities per CPU
  * [ACPI] Computes the CPPC Bounds
  * [Intel] Linear Address Masking (LAM)
  * [CLI] EFER: Left aligned labels
  * [AMD] Reports UAIE and AIBRSE bits from EFER system register
  * [CLI] Changed mitigation mechanisms incapability labels
  * [AMD][Zen2] Mitigation Mechanism BTC-NOBR * ACPI/OSPM documentation
  * [CR] Code review on bit masks
  * [CPPC][ACPI] Kernel may decode the Guaranteed Performance Register
  * [UI] Optimize the cycles to clear the time bar.
  * [CR] Code review for extra compiler warnings
  * [UI] Time of the day displayed in the right side of menu
  * [UI] Display the current date and time in menu bar
  * [Kernel] Introducing support of `CONFIG_SCHED_BORE`
  * [CLI] Fixing ambiguous CPPC report: hardware vs firmware
  * [CLI] Surrounds _CPC feature with square brackets
  * [CPPC] Provides the ACPI _CPC object state.
  * [UI] Colors the task being tracked in the tracking list
  * [UI] Display the current time in the menu bar
  * [CLI] Reserve the programmable TDP section to Intel processors.
  * [AMD/Zen3+] Improving the DIMM geometry of Rembrandt UMC</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1672747200">- update to 1.94.1:
  * [Intel] Gemini Lake
  * [AMD] Ryzen 5 6600 H SoC, UMC channels
  * [AMD] Rembrandt: maximum of two UMC channels
  * [AMD] Raphael: Decodes DIMM geometry from AddrCfg
  * [AMD] Zen: Aggregation refactored
  * [AMD] Improved DDR5 clock decoding
  * Optimized Idle Loop</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1673006400">- update to 1.94.3:
  * [AMD][RMB] If UMC is quad channels then unpopulate odd channels
  * [AMD][RPL] Provide Service Processor Vcore as workaround
  * [UI] Auto size and lay performance capabilities window
  * [UI] Adding comments to the EEO and R2H technologies
  * [AMD][Raphael] 7950X3D, 7900X3D. support</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1674475200">- update to 1.95.1:
  * [Intel] RPL: voltage of Pcore, Ecore, System Agent
  * [Intel] RPL and ADL Chipset device IDs
  * [Intel] Decode the RPL IMC and improve DDR5 support
  * [Build] Raise `MAX_FREQ_HZ` up to 7125000000 Hertz
  * [Intel] Mobile {Coffee Lake, Kaby Lake} codenames
  * [Intel] Braswell codename detection
  * [AMD] SYSCFG Register
  * [AMD] EPYC 9654
  * [AMD] Transparent SME
  * [AMD] DRAM Data Scrambling
  * [AMD] Adding "Barcelo R" and "Rembrandt R"</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1675944000">- update to 1.95.2:
  * Fixed the aggregation of the minimum ratio
  Intel:
  * [Airmont][Silvermont] Attempt to decode `tCKE` from DRMC
    register
  * [Airmont] Improve `tWTPr`, `B2B`, `tWWDR` timings
  * [Airmont] Provide a new IMC decoder
  * Add the Emerald Rapids architecture entry
  * [DDR5][DDR4] Add the `RCDw` IMC timing
  * [Raptor Lake ] De-activate the MSR Uncore counter
  AMD:
  * "Zen3/Barcelo-R" and "Zen3+ Rembrandt-R" codenames
  * [Zen] Thermal highest limit reset fix
  Misc:
  * Code review and Registers documentation:
    AMD HWCR, Intel HDC and DRP</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677067200">- update to 1.95.4
  * [Intel] [from 11th to 14th gen]
    Convert the DRAM Speed to MT/s unit
    Compute the Bus Rate based on the BIOS MC PLL
- update to 1.95.3
  * [Intel] [Airmont]
    Improved the IMC geometry
    Introducing the Spreadtrum architecture
    Fixed the Bus and DRAM frequency rates
  * [Intel] [from 11th to 13th gen] Attempt to probe the interleaved controllers
  * [Intel] [Alder Lake/H] Attempt to decode the TCO Watchdog</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677153600">- added leap_compile_fix.patch to fix compilation on Leap</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1683115200">- removed leap_compile_fix.patch no needed anymore
- update to 1.96.0
  * [AMD]
    [RPL/X3D] Disabling the turbo boosted P-states change
    [PHOENIX] Adding Z1, U and HS PRO series.
    [Genoa] DAC address at UMC BAR + 0x40
    [Zen4] Adding the PCI entries of Genoa
    [Zen2] Adding remaining PCI entries
    [Zen] Query DAC &amp; CFG with the right UMC base address register
    [Zen4] Dump the CPUID Extended CPU Topology leaves.
    [Zen][Embedded][Banded Kestrel] R1000 Processor Family
    [Zen][Embedded] "Great Horned Owl", "River Hawk", "Grey Hawk"
    Complete the "Raven Ridge" and "Picasso" lists
    [EPYC] Moved "Snowy Owl" Embedded processors to CPUID 8F_01
    [Zen4] introducing Phoenix and Dragon Range
    [RMB] adding the Ryzen Embedded V3000 processors
    [VMR] adding the "AMD Ryzen 9 PRO 5945"
  * [Intel]
    Adding Granite Rapids, Sierra Forest, Grand Ridge entries
    Adding "Lunar Lake" and "Arrow Lake" entries.
  * [UI]
    Optimized decimal to digits converter
    Allow task tracker to select up to pid_max
    Can trace the frozen states of Linux tasks.
    Only print HWP frequencies within bounds.
    Fix ruler's aggregation.
  * [CR]
    Check CPUID[HV_PARTITION_PRIVILEGE_MASK] for HV_X64_MSR_VP_RUNTIME
    Uninitialized variable fix.
    [CPPC] Build EPP with KERNEL_VERSION(6) rather than CONFIG_CACHY
    [KERNEL] Linux 6.3: Employ modifier calls with the vma-&gt;vm_flags</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1684065600">- update to 1.96.1
  * [Driver]
  - Postpone Clock Source registration during startup until the Base Clock is computed.
  - Change class_create() according to Linux Kernel 6.4
  - Clear interrupt flag (cli) after Halt in the Idle method
  * [AMD]
  - [PHOENIX] Adding Ryzen 7940H, 7840H, 7640H
  - [VERMEER] Adding Ryzen PRO and Embedded processors
  - Ryzen Z1 CPUID' brand fix
  - Adding EPYC Embedded 9004 Series as Genoa
  - Adding EPYC Embedded 7003 Series as Milan
  - Adding EPYC Embedded 7002 Series as Rome
  - Adding EPYC Embedded 7001 Series as Naples</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1685880000">- update to 1.96.2
  * [Driver]
  - Allows compilation to keep going without CONFIG_ACPI_CPPC_LIB
  * [Client]
  - Adding two command line arguments:
  - Op Show Package C-States
  - OW Toggle Energy units
  * [AMD]
  - Specification of some Configuration MSRs</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1686830400">- update to 1.96.4
  * [AMD]
  - Display CPUID state of new and legacy features:
    Fused Multiply Add [FMA4]
    Extended Operation Support [XOP]
    Translation Cache Extension [TCE]
    Trailing Bit Manipulation [TBM]
    OS Visible Work-around [OSVW]
    LOCK prefix to read CR8 [AltMov]
  * [Intel]
  - Advanced Matrix Extensions [AMX]
  - Bits and Features of Sierra Forest and Grand Ridge
  - Attempt to decode the Meteor Lake Memory Controller
- update to 1.96.3
  * [AMD]
  - [Zeppelin] Probe more than one UMC controllers on Ryzen Threadripper 1900X
  - [Zen4] Dump SMBE and BMEC sub-leaves of CPUID 0x80000020</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1688212800">- update to 1.96.5
  * [AMD]
    Adding the "AMD Ryzen 5 5600X3D"
    Introducing the Zen4c Bergamo architecture
    Specs fixing of Embedded V-series and 3000 Series Processors
    Adding MENDOCINO, RAPHAEL Pro, PHOENIX Pro among others</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1712318400">- added preamble file for %kernel_module_package macro
- update to 1.97.1
  * added aarch64 support
  * upstream did not provide a summary changelog. Full list of commits:
    https://github.com/cyring/CoreFreq/compare/1.96.5...1.97.1</changelog>
</package>
<package pkgid="8b8ff542e49bcbe47f3e8a7d93df7513ee55d1605cc67010d1b55d9b65b4dd66922485e6cfe47fab266a516473bce0b8b2a31c699427169a922544e87c807286" name="CoreFreq" arch="src">
  <version epoch="0" ver="1.97.1" rel="1.3"/>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1644667200">- Update to version 1.89.3
  * No changelog was made available by upstream</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1646654400">- removed non-working leap15_2.patch and leap15_3.patch:
  Leap 15.4 is the minimum supported version
- Update to version 1.90.1
  * support for Alder Lake architecture:
    in particular, specialized monitoring for Pcore and Ecore
  * more precise DDR5 and DDR4 timings from SKL to ADL:
    introduction of "Gear mode"
  * improvement using Power Limiters:
    zero W on PL1 &amp; PL2; DRAM clampig marked experimental
  * characteristics for Zen architecture:
    CPPC; C1E; MEM CLOCK in raw frequency
  * C-state Core for Ice Lake/X
  * various characteristics of C-state package for AMD/Zen and Intel (Lake)
  * various changes in UI
  * non-regression tests for kernels 5.16.12 and 5.17.rc6</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1655899200">- Update to version 1.91.3
  * No changelog was made available by upstream</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1661169600">- Update to version 1.91.6
  - [AMD/Zen][UMC] Fixed the Mem Clock and ECC regressions
  - Designate the Package identifier in Power consumed readings
  - [Intel/ADL/IMC] Guessing activated channel from the populated DIMM
  - [AMD][UMC, IOMMU] Adding missing DID of family 19h devices
  - [AMD_DataFabric_Cezanne] Removed the Experimental mode
  - Intel/ADL/IMC: Fixing the Memory Channels count
  - [AMD/Zen] Improved UMC mapping. Threadripper 3960X issue
  - Avoid some NULL pointer strings during SMBIOS decoding</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1667563200">- update to version 1.92.3
  - Export CPUID bits Intel Sierra Forest, Grand Ridge, Granite Rapids
    and completes AMD64 Fn0000_0007_ECX_x0
  - [Features] WBNOINVD and CLZERO instructions
  - Adding various Mitigation Mechanism aggregations:
    IPRED_DIS_U, IPRED_DIS_S, RRSBA_DIS_U, RRSBA_DIS_S, BHI_DIS_S, MCDT_NO
  - RDPID and UMIP capability fixed.
  - [AMD] Perf. Mon. version based on CPUID_0x80000022.EAX.PerfMonV2
  - [AMD][Zen3+][Rembrandt] Trigger UMC and IOMMU decoders
  - [AMD][Ryzen 5 6600H] Found voltage VID @ SMU 0x6f010 and 0x6f014
  - Introducing AMD Security Feature capabilities:
    SKINIT, SEV, GMET, SEV-ES, SEV-SNP
  - [AMD64] Non-architectural MSR: SPECULATIVE STORE BYPASS DISABLE
  - [Intel][2nd &amp; 3rd gen] Misc IMC optimizations
  - [AMD][Rembrandt] Provides Vcore from a new formula.
  - Dumping CPUID leaves from AMD64 Architecture Programmer’s Manual
  - [Intel][HSW &amp; BDW] Compute the DIMM banks
  - [UI] Re-assigned keys to move or resize windows.
  - [AMD][Zen] Uncore frequency: Improving the Memory Clock divisor
  - [Intel][HSW &amp; BDW][SKL] Make use of same function DimmWidthToRows
  - [AMD][Zen3+][Rembrandt] Provides the thermal sensor.
  - [AMD/Zen2 &amp; Zen3] Removed the HSMP capability.
  - [Intel][CML][RKL][TGL] Compute the DIMM Rows from CH_WIDTH
  - [AMD/EPYC] Adding the CPUID of Zen4 Genoa architecture
  - [AMD/Zen2] Introducing Mendocino architecture
  - Changed MeteorLake/N to CPUID 06_B5
  - [Intel] Computes BIOS DRAM frequency based on PLL_REF100
  - [Intel][SNB/IVB/HSW/BDW] Improved BIOS DRAM frequency
  - [Intel][SNB/IVB] DRAM frequency based on RAM_Select and FSB_Select
  - [Intel][IVB] IMC specifications and optimizations.
  - [Intel][SNB,IVB] Computes the DIMM A from DAS bit in MAD register
  - [Intel][SNB,IVB,HSW,BDW] Rolling back changes to the DIMM topology
  - [Intel][BDW][HSW] Query the IMC Power Down Mode
  - [Intel][IVB][SNB] Attempt to decode the IMC third timings
  - [AMD][Ryzen] Added AMD Ryzen 7 PRO 6860Z
  - [AMD][F17h-F19h] Can toggle ON and OFF the Instruction Cache Unit
  - [AMD] Checking the Ryzen "OEM Only" processors
  - [Intel] Specification of 12th Gen. MSR registers capability
  - [Intel] Adding Raptor Lake-S with CPUID 06_BF
  - [AMD] Introducing Zen 4 / Raphael architecture
  - [Intel][SNB,IVB,HSW] Attempt to assign the Rank per DIMM slot
  - [Intel][SNB,IVB,HSW] Attempt to fix the DIMM(s) topology layout
  - ClockSource: TSC udelay() asm implementation builtin as a default
  - [Intel][Alder Lake] Adding IMC entry for i5-12500 processor
  - [Intel][Alder Lake] Added default case if Processor has only Pcores
  - [Intel][Atom/Bonnell][IMC] Attempt to compute the DIMM geometry
  - [UI][Custom view] Show the Uncore unit in watt or joule
  - [UI] Display HWP or CPPC in footer for capable processors.
  - [CLI] Added HWP Capabilities and HWP Request to the JSON export
  - [CLI] Don't allow the HWP dialog box if feature is not available.
  - [CPPC][Firmware] allows (de)activation of the feature.
  - [CLI] Added CPU ratios to JSON export
  - [CPPC] Improved scaling
  - [CPPC] Build fixed down to Kernel version 3
  - [Kernel/ACPI] Attempt to write CPPC registers</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1667563201">- Repair deficient description grammar.</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1670241600">- update to 1.92.4:
  * [Intel/Skylake-X] Permits MSR_RING_PERF_LIMIT_REASONS</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1670932800">- removed modprobe_corefreqd.service.patch and harden_corefreqd.service.patch
  now included in new corefreqd.service file replacing stock one
- update to 1.93.1
  * [PRJ] CoreFreq version 1.93.1
  * [ACPI/CPPC/EPP] Preview of AMD/Zen Energy Preference (CONFIG_CACHY)
  * [UI] Changed the HWP or CPPC ratio bounds.
  * [FIX] Putting `corefreqd` in the root cgroup (issue #379) Thanks to gel-crabs
  * [DOC] Parameters to blacklist the amd_pstate since kernel 6.0.11
  * [AMD][Zen4] Apply a voltage formula based on Rembrandt's. (#378)
  * [AMD][Zen4/Raphael] Attempting temperature per CCD from TCTL+0x308
  * [AMD][Zen4] Changed Timer loop
  * [CR] CLI code review and UI optimizations
  * [UI] Auto refresh the Topology items when off/online
  * [CR] Conditionally build with additional PMC Counters
  * [Intel] Adding Z8000 System Memory Controller Registers
  * [CR] Transformed global variable in cells padding
  * [UI] Windows re-scaling fix
  * [UI] Apply color theming to the CPPC capabilities list.
  * [AMD][Raphael] Adding device DIDs to probe UMC and IOMMU
  * [CPPC/FMW] Computes value bounds while Enabling/Disabling firmware
  * [CR] CPPC lib errors are now raised to Debug level
  * [AMD][Zen4] Increased the UMC size to 12 channels.
  * [CPPC] Handles the OffLine CPU case.
  * [CLI] Refactoring HWP/CPPC to print all capabilities per CPU
  * [ACPI] Computes the CPPC Bounds
  * [Intel] Linear Address Masking (LAM)
  * [CLI] EFER: Left aligned labels
  * [AMD] Reports UAIE and AIBRSE bits from EFER system register
  * [CLI] Changed mitigation mechanisms incapability labels
  * [AMD][Zen2] Mitigation Mechanism BTC-NOBR * ACPI/OSPM documentation
  * [CR] Code review on bit masks
  * [CPPC][ACPI] Kernel may decode the Guaranteed Performance Register
  * [UI] Optimize the cycles to clear the time bar.
  * [CR] Code review for extra compiler warnings
  * [UI] Time of the day displayed in the right side of menu
  * [UI] Display the current date and time in menu bar
  * [Kernel] Introducing support of `CONFIG_SCHED_BORE`
  * [CLI] Fixing ambiguous CPPC report: hardware vs firmware
  * [CLI] Surrounds _CPC feature with square brackets
  * [CPPC] Provides the ACPI _CPC object state.
  * [UI] Colors the task being tracked in the tracking list
  * [UI] Display the current time in the menu bar
  * [CLI] Reserve the programmable TDP section to Intel processors.
  * [AMD/Zen3+] Improving the DIMM geometry of Rembrandt UMC</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1672747200">- update to 1.94.1:
  * [Intel] Gemini Lake
  * [AMD] Ryzen 5 6600 H SoC, UMC channels
  * [AMD] Rembrandt: maximum of two UMC channels
  * [AMD] Raphael: Decodes DIMM geometry from AddrCfg
  * [AMD] Zen: Aggregation refactored
  * [AMD] Improved DDR5 clock decoding
  * Optimized Idle Loop</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1673006400">- update to 1.94.3:
  * [AMD][RMB] If UMC is quad channels then unpopulate odd channels
  * [AMD][RPL] Provide Service Processor Vcore as workaround
  * [UI] Auto size and lay performance capabilities window
  * [UI] Adding comments to the EEO and R2H technologies
  * [AMD][Raphael] 7950X3D, 7900X3D. support</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1674475200">- update to 1.95.1:
  * [Intel] RPL: voltage of Pcore, Ecore, System Agent
  * [Intel] RPL and ADL Chipset device IDs
  * [Intel] Decode the RPL IMC and improve DDR5 support
  * [Build] Raise `MAX_FREQ_HZ` up to 7125000000 Hertz
  * [Intel] Mobile {Coffee Lake, Kaby Lake} codenames
  * [Intel] Braswell codename detection
  * [AMD] SYSCFG Register
  * [AMD] EPYC 9654
  * [AMD] Transparent SME
  * [AMD] DRAM Data Scrambling
  * [AMD] Adding "Barcelo R" and "Rembrandt R"</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1675944000">- update to 1.95.2:
  * Fixed the aggregation of the minimum ratio
  Intel:
  * [Airmont][Silvermont] Attempt to decode `tCKE` from DRMC
    register
  * [Airmont] Improve `tWTPr`, `B2B`, `tWWDR` timings
  * [Airmont] Provide a new IMC decoder
  * Add the Emerald Rapids architecture entry
  * [DDR5][DDR4] Add the `RCDw` IMC timing
  * [Raptor Lake ] De-activate the MSR Uncore counter
  AMD:
  * "Zen3/Barcelo-R" and "Zen3+ Rembrandt-R" codenames
  * [Zen] Thermal highest limit reset fix
  Misc:
  * Code review and Registers documentation:
    AMD HWCR, Intel HDC and DRP</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677067200">- update to 1.95.4
  * [Intel] [from 11th to 14th gen]
    Convert the DRAM Speed to MT/s unit
    Compute the Bus Rate based on the BIOS MC PLL
- update to 1.95.3
  * [Intel] [Airmont]
    Improved the IMC geometry
    Introducing the Spreadtrum architecture
    Fixed the Bus and DRAM frequency rates
  * [Intel] [from 11th to 13th gen] Attempt to probe the interleaved controllers
  * [Intel] [Alder Lake/H] Attempt to decode the TCO Watchdog</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677153600">- added leap_compile_fix.patch to fix compilation on Leap</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1683115200">- removed leap_compile_fix.patch no needed anymore
- update to 1.96.0
  * [AMD]
    [RPL/X3D] Disabling the turbo boosted P-states change
    [PHOENIX] Adding Z1, U and HS PRO series.
    [Genoa] DAC address at UMC BAR + 0x40
    [Zen4] Adding the PCI entries of Genoa
    [Zen2] Adding remaining PCI entries
    [Zen] Query DAC &amp; CFG with the right UMC base address register
    [Zen4] Dump the CPUID Extended CPU Topology leaves.
    [Zen][Embedded][Banded Kestrel] R1000 Processor Family
    [Zen][Embedded] "Great Horned Owl", "River Hawk", "Grey Hawk"
    Complete the "Raven Ridge" and "Picasso" lists
    [EPYC] Moved "Snowy Owl" Embedded processors to CPUID 8F_01
    [Zen4] introducing Phoenix and Dragon Range
    [RMB] adding the Ryzen Embedded V3000 processors
    [VMR] adding the "AMD Ryzen 9 PRO 5945"
  * [Intel]
    Adding Granite Rapids, Sierra Forest, Grand Ridge entries
    Adding "Lunar Lake" and "Arrow Lake" entries.
  * [UI]
    Optimized decimal to digits converter
    Allow task tracker to select up to pid_max
    Can trace the frozen states of Linux tasks.
    Only print HWP frequencies within bounds.
    Fix ruler's aggregation.
  * [CR]
    Check CPUID[HV_PARTITION_PRIVILEGE_MASK] for HV_X64_MSR_VP_RUNTIME
    Uninitialized variable fix.
    [CPPC] Build EPP with KERNEL_VERSION(6) rather than CONFIG_CACHY
    [KERNEL] Linux 6.3: Employ modifier calls with the vma-&gt;vm_flags</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1684065600">- update to 1.96.1
  * [Driver]
  - Postpone Clock Source registration during startup until the Base Clock is computed.
  - Change class_create() according to Linux Kernel 6.4
  - Clear interrupt flag (cli) after Halt in the Idle method
  * [AMD]
  - [PHOENIX] Adding Ryzen 7940H, 7840H, 7640H
  - [VERMEER] Adding Ryzen PRO and Embedded processors
  - Ryzen Z1 CPUID' brand fix
  - Adding EPYC Embedded 9004 Series as Genoa
  - Adding EPYC Embedded 7003 Series as Milan
  - Adding EPYC Embedded 7002 Series as Rome
  - Adding EPYC Embedded 7001 Series as Naples</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1685880000">- update to 1.96.2
  * [Driver]
  - Allows compilation to keep going without CONFIG_ACPI_CPPC_LIB
  * [Client]
  - Adding two command line arguments:
  - Op Show Package C-States
  - OW Toggle Energy units
  * [AMD]
  - Specification of some Configuration MSRs</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1686830400">- update to 1.96.4
  * [AMD]
  - Display CPUID state of new and legacy features:
    Fused Multiply Add [FMA4]
    Extended Operation Support [XOP]
    Translation Cache Extension [TCE]
    Trailing Bit Manipulation [TBM]
    OS Visible Work-around [OSVW]
    LOCK prefix to read CR8 [AltMov]
  * [Intel]
  - Advanced Matrix Extensions [AMX]
  - Bits and Features of Sierra Forest and Grand Ridge
  - Attempt to decode the Meteor Lake Memory Controller
- update to 1.96.3
  * [AMD]
  - [Zeppelin] Probe more than one UMC controllers on Ryzen Threadripper 1900X
  - [Zen4] Dump SMBE and BMEC sub-leaves of CPUID 0x80000020</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1688212800">- update to 1.96.5
  * [AMD]
    Adding the "AMD Ryzen 5 5600X3D"
    Introducing the Zen4c Bergamo architecture
    Specs fixing of Embedded V-series and 3000 Series Processors
    Adding MENDOCINO, RAPHAEL Pro, PHOENIX Pro among others</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1712318400">- added preamble file for %kernel_module_package macro
- update to 1.97.1
  * added aarch64 support
  * upstream did not provide a summary changelog. Full list of commits:
    https://github.com/cyring/CoreFreq/compare/1.96.5...1.97.1</changelog>
</package>
<package pkgid="8fb2aa64206600f9f638a7a914d970d173bafb62d584c0122277378e414e07bcd4a6c9238900efadf0b94c140ee5062d08fcbf8ae4179659130170689e69f91b" name="CoreFreq" arch="x86_64">
  <version epoch="0" ver="1.97.1" rel="1.3"/>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1644667200">- Update to version 1.89.3
  * No changelog was made available by upstream</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1646654400">- removed non-working leap15_2.patch and leap15_3.patch:
  Leap 15.4 is the minimum supported version
- Update to version 1.90.1
  * support for Alder Lake architecture:
    in particular, specialized monitoring for Pcore and Ecore
  * more precise DDR5 and DDR4 timings from SKL to ADL:
    introduction of "Gear mode"
  * improvement using Power Limiters:
    zero W on PL1 &amp; PL2; DRAM clampig marked experimental
  * characteristics for Zen architecture:
    CPPC; C1E; MEM CLOCK in raw frequency
  * C-state Core for Ice Lake/X
  * various characteristics of C-state package for AMD/Zen and Intel (Lake)
  * various changes in UI
  * non-regression tests for kernels 5.16.12 and 5.17.rc6</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1655899200">- Update to version 1.91.3
  * No changelog was made available by upstream</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1661169600">- Update to version 1.91.6
  - [AMD/Zen][UMC] Fixed the Mem Clock and ECC regressions
  - Designate the Package identifier in Power consumed readings
  - [Intel/ADL/IMC] Guessing activated channel from the populated DIMM
  - [AMD][UMC, IOMMU] Adding missing DID of family 19h devices
  - [AMD_DataFabric_Cezanne] Removed the Experimental mode
  - Intel/ADL/IMC: Fixing the Memory Channels count
  - [AMD/Zen] Improved UMC mapping. Threadripper 3960X issue
  - Avoid some NULL pointer strings during SMBIOS decoding</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1667563200">- update to version 1.92.3
  - Export CPUID bits Intel Sierra Forest, Grand Ridge, Granite Rapids
    and completes AMD64 Fn0000_0007_ECX_x0
  - [Features] WBNOINVD and CLZERO instructions
  - Adding various Mitigation Mechanism aggregations:
    IPRED_DIS_U, IPRED_DIS_S, RRSBA_DIS_U, RRSBA_DIS_S, BHI_DIS_S, MCDT_NO
  - RDPID and UMIP capability fixed.
  - [AMD] Perf. Mon. version based on CPUID_0x80000022.EAX.PerfMonV2
  - [AMD][Zen3+][Rembrandt] Trigger UMC and IOMMU decoders
  - [AMD][Ryzen 5 6600H] Found voltage VID @ SMU 0x6f010 and 0x6f014
  - Introducing AMD Security Feature capabilities:
    SKINIT, SEV, GMET, SEV-ES, SEV-SNP
  - [AMD64] Non-architectural MSR: SPECULATIVE STORE BYPASS DISABLE
  - [Intel][2nd &amp; 3rd gen] Misc IMC optimizations
  - [AMD][Rembrandt] Provides Vcore from a new formula.
  - Dumping CPUID leaves from AMD64 Architecture Programmer’s Manual
  - [Intel][HSW &amp; BDW] Compute the DIMM banks
  - [UI] Re-assigned keys to move or resize windows.
  - [AMD][Zen] Uncore frequency: Improving the Memory Clock divisor
  - [Intel][HSW &amp; BDW][SKL] Make use of same function DimmWidthToRows
  - [AMD][Zen3+][Rembrandt] Provides the thermal sensor.
  - [AMD/Zen2 &amp; Zen3] Removed the HSMP capability.
  - [Intel][CML][RKL][TGL] Compute the DIMM Rows from CH_WIDTH
  - [AMD/EPYC] Adding the CPUID of Zen4 Genoa architecture
  - [AMD/Zen2] Introducing Mendocino architecture
  - Changed MeteorLake/N to CPUID 06_B5
  - [Intel] Computes BIOS DRAM frequency based on PLL_REF100
  - [Intel][SNB/IVB/HSW/BDW] Improved BIOS DRAM frequency
  - [Intel][SNB/IVB] DRAM frequency based on RAM_Select and FSB_Select
  - [Intel][IVB] IMC specifications and optimizations.
  - [Intel][SNB,IVB] Computes the DIMM A from DAS bit in MAD register
  - [Intel][SNB,IVB,HSW,BDW] Rolling back changes to the DIMM topology
  - [Intel][BDW][HSW] Query the IMC Power Down Mode
  - [Intel][IVB][SNB] Attempt to decode the IMC third timings
  - [AMD][Ryzen] Added AMD Ryzen 7 PRO 6860Z
  - [AMD][F17h-F19h] Can toggle ON and OFF the Instruction Cache Unit
  - [AMD] Checking the Ryzen "OEM Only" processors
  - [Intel] Specification of 12th Gen. MSR registers capability
  - [Intel] Adding Raptor Lake-S with CPUID 06_BF
  - [AMD] Introducing Zen 4 / Raphael architecture
  - [Intel][SNB,IVB,HSW] Attempt to assign the Rank per DIMM slot
  - [Intel][SNB,IVB,HSW] Attempt to fix the DIMM(s) topology layout
  - ClockSource: TSC udelay() asm implementation builtin as a default
  - [Intel][Alder Lake] Adding IMC entry for i5-12500 processor
  - [Intel][Alder Lake] Added default case if Processor has only Pcores
  - [Intel][Atom/Bonnell][IMC] Attempt to compute the DIMM geometry
  - [UI][Custom view] Show the Uncore unit in watt or joule
  - [UI] Display HWP or CPPC in footer for capable processors.
  - [CLI] Added HWP Capabilities and HWP Request to the JSON export
  - [CLI] Don't allow the HWP dialog box if feature is not available.
  - [CPPC][Firmware] allows (de)activation of the feature.
  - [CLI] Added CPU ratios to JSON export
  - [CPPC] Improved scaling
  - [CPPC] Build fixed down to Kernel version 3
  - [Kernel/ACPI] Attempt to write CPPC registers</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1667563201">- Repair deficient description grammar.</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1670241600">- update to 1.92.4:
  * [Intel/Skylake-X] Permits MSR_RING_PERF_LIMIT_REASONS</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1670932800">- removed modprobe_corefreqd.service.patch and harden_corefreqd.service.patch
  now included in new corefreqd.service file replacing stock one
- update to 1.93.1
  * [PRJ] CoreFreq version 1.93.1
  * [ACPI/CPPC/EPP] Preview of AMD/Zen Energy Preference (CONFIG_CACHY)
  * [UI] Changed the HWP or CPPC ratio bounds.
  * [FIX] Putting `corefreqd` in the root cgroup (issue #379) Thanks to gel-crabs
  * [DOC] Parameters to blacklist the amd_pstate since kernel 6.0.11
  * [AMD][Zen4] Apply a voltage formula based on Rembrandt's. (#378)
  * [AMD][Zen4/Raphael] Attempting temperature per CCD from TCTL+0x308
  * [AMD][Zen4] Changed Timer loop
  * [CR] CLI code review and UI optimizations
  * [UI] Auto refresh the Topology items when off/online
  * [CR] Conditionally build with additional PMC Counters
  * [Intel] Adding Z8000 System Memory Controller Registers
  * [CR] Transformed global variable in cells padding
  * [UI] Windows re-scaling fix
  * [UI] Apply color theming to the CPPC capabilities list.
  * [AMD][Raphael] Adding device DIDs to probe UMC and IOMMU
  * [CPPC/FMW] Computes value bounds while Enabling/Disabling firmware
  * [CR] CPPC lib errors are now raised to Debug level
  * [AMD][Zen4] Increased the UMC size to 12 channels.
  * [CPPC] Handles the OffLine CPU case.
  * [CLI] Refactoring HWP/CPPC to print all capabilities per CPU
  * [ACPI] Computes the CPPC Bounds
  * [Intel] Linear Address Masking (LAM)
  * [CLI] EFER: Left aligned labels
  * [AMD] Reports UAIE and AIBRSE bits from EFER system register
  * [CLI] Changed mitigation mechanisms incapability labels
  * [AMD][Zen2] Mitigation Mechanism BTC-NOBR * ACPI/OSPM documentation
  * [CR] Code review on bit masks
  * [CPPC][ACPI] Kernel may decode the Guaranteed Performance Register
  * [UI] Optimize the cycles to clear the time bar.
  * [CR] Code review for extra compiler warnings
  * [UI] Time of the day displayed in the right side of menu
  * [UI] Display the current date and time in menu bar
  * [Kernel] Introducing support of `CONFIG_SCHED_BORE`
  * [CLI] Fixing ambiguous CPPC report: hardware vs firmware
  * [CLI] Surrounds _CPC feature with square brackets
  * [CPPC] Provides the ACPI _CPC object state.
  * [UI] Colors the task being tracked in the tracking list
  * [UI] Display the current time in the menu bar
  * [CLI] Reserve the programmable TDP section to Intel processors.
  * [AMD/Zen3+] Improving the DIMM geometry of Rembrandt UMC</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1672747200">- update to 1.94.1:
  * [Intel] Gemini Lake
  * [AMD] Ryzen 5 6600 H SoC, UMC channels
  * [AMD] Rembrandt: maximum of two UMC channels
  * [AMD] Raphael: Decodes DIMM geometry from AddrCfg
  * [AMD] Zen: Aggregation refactored
  * [AMD] Improved DDR5 clock decoding
  * Optimized Idle Loop</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1673006400">- update to 1.94.3:
  * [AMD][RMB] If UMC is quad channels then unpopulate odd channels
  * [AMD][RPL] Provide Service Processor Vcore as workaround
  * [UI] Auto size and lay performance capabilities window
  * [UI] Adding comments to the EEO and R2H technologies
  * [AMD][Raphael] 7950X3D, 7900X3D. support</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1674475200">- update to 1.95.1:
  * [Intel] RPL: voltage of Pcore, Ecore, System Agent
  * [Intel] RPL and ADL Chipset device IDs
  * [Intel] Decode the RPL IMC and improve DDR5 support
  * [Build] Raise `MAX_FREQ_HZ` up to 7125000000 Hertz
  * [Intel] Mobile {Coffee Lake, Kaby Lake} codenames
  * [Intel] Braswell codename detection
  * [AMD] SYSCFG Register
  * [AMD] EPYC 9654
  * [AMD] Transparent SME
  * [AMD] DRAM Data Scrambling
  * [AMD] Adding "Barcelo R" and "Rembrandt R"</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1675944000">- update to 1.95.2:
  * Fixed the aggregation of the minimum ratio
  Intel:
  * [Airmont][Silvermont] Attempt to decode `tCKE` from DRMC
    register
  * [Airmont] Improve `tWTPr`, `B2B`, `tWWDR` timings
  * [Airmont] Provide a new IMC decoder
  * Add the Emerald Rapids architecture entry
  * [DDR5][DDR4] Add the `RCDw` IMC timing
  * [Raptor Lake ] De-activate the MSR Uncore counter
  AMD:
  * "Zen3/Barcelo-R" and "Zen3+ Rembrandt-R" codenames
  * [Zen] Thermal highest limit reset fix
  Misc:
  * Code review and Registers documentation:
    AMD HWCR, Intel HDC and DRP</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677067200">- update to 1.95.4
  * [Intel] [from 11th to 14th gen]
    Convert the DRAM Speed to MT/s unit
    Compute the Bus Rate based on the BIOS MC PLL
- update to 1.95.3
  * [Intel] [Airmont]
    Improved the IMC geometry
    Introducing the Spreadtrum architecture
    Fixed the Bus and DRAM frequency rates
  * [Intel] [from 11th to 13th gen] Attempt to probe the interleaved controllers
  * [Intel] [Alder Lake/H] Attempt to decode the TCO Watchdog</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677153600">- added leap_compile_fix.patch to fix compilation on Leap</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1683115200">- removed leap_compile_fix.patch no needed anymore
- update to 1.96.0
  * [AMD]
    [RPL/X3D] Disabling the turbo boosted P-states change
    [PHOENIX] Adding Z1, U and HS PRO series.
    [Genoa] DAC address at UMC BAR + 0x40
    [Zen4] Adding the PCI entries of Genoa
    [Zen2] Adding remaining PCI entries
    [Zen] Query DAC &amp; CFG with the right UMC base address register
    [Zen4] Dump the CPUID Extended CPU Topology leaves.
    [Zen][Embedded][Banded Kestrel] R1000 Processor Family
    [Zen][Embedded] "Great Horned Owl", "River Hawk", "Grey Hawk"
    Complete the "Raven Ridge" and "Picasso" lists
    [EPYC] Moved "Snowy Owl" Embedded processors to CPUID 8F_01
    [Zen4] introducing Phoenix and Dragon Range
    [RMB] adding the Ryzen Embedded V3000 processors
    [VMR] adding the "AMD Ryzen 9 PRO 5945"
  * [Intel]
    Adding Granite Rapids, Sierra Forest, Grand Ridge entries
    Adding "Lunar Lake" and "Arrow Lake" entries.
  * [UI]
    Optimized decimal to digits converter
    Allow task tracker to select up to pid_max
    Can trace the frozen states of Linux tasks.
    Only print HWP frequencies within bounds.
    Fix ruler's aggregation.
  * [CR]
    Check CPUID[HV_PARTITION_PRIVILEGE_MASK] for HV_X64_MSR_VP_RUNTIME
    Uninitialized variable fix.
    [CPPC] Build EPP with KERNEL_VERSION(6) rather than CONFIG_CACHY
    [KERNEL] Linux 6.3: Employ modifier calls with the vma-&gt;vm_flags</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1684065600">- update to 1.96.1
  * [Driver]
  - Postpone Clock Source registration during startup until the Base Clock is computed.
  - Change class_create() according to Linux Kernel 6.4
  - Clear interrupt flag (cli) after Halt in the Idle method
  * [AMD]
  - [PHOENIX] Adding Ryzen 7940H, 7840H, 7640H
  - [VERMEER] Adding Ryzen PRO and Embedded processors
  - Ryzen Z1 CPUID' brand fix
  - Adding EPYC Embedded 9004 Series as Genoa
  - Adding EPYC Embedded 7003 Series as Milan
  - Adding EPYC Embedded 7002 Series as Rome
  - Adding EPYC Embedded 7001 Series as Naples</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1685880000">- update to 1.96.2
  * [Driver]
  - Allows compilation to keep going without CONFIG_ACPI_CPPC_LIB
  * [Client]
  - Adding two command line arguments:
  - Op Show Package C-States
  - OW Toggle Energy units
  * [AMD]
  - Specification of some Configuration MSRs</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1686830400">- update to 1.96.4
  * [AMD]
  - Display CPUID state of new and legacy features:
    Fused Multiply Add [FMA4]
    Extended Operation Support [XOP]
    Translation Cache Extension [TCE]
    Trailing Bit Manipulation [TBM]
    OS Visible Work-around [OSVW]
    LOCK prefix to read CR8 [AltMov]
  * [Intel]
  - Advanced Matrix Extensions [AMX]
  - Bits and Features of Sierra Forest and Grand Ridge
  - Attempt to decode the Meteor Lake Memory Controller
- update to 1.96.3
  * [AMD]
  - [Zeppelin] Probe more than one UMC controllers on Ryzen Threadripper 1900X
  - [Zen4] Dump SMBE and BMEC sub-leaves of CPUID 0x80000020</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1688212800">- update to 1.96.5
  * [AMD]
    Adding the "AMD Ryzen 5 5600X3D"
    Introducing the Zen4c Bergamo architecture
    Specs fixing of Embedded V-series and 3000 Series Processors
    Adding MENDOCINO, RAPHAEL Pro, PHOENIX Pro among others</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1712318400">- added preamble file for %kernel_module_package macro
- update to 1.97.1
  * added aarch64 support
  * upstream did not provide a summary changelog. Full list of commits:
    https://github.com/cyring/CoreFreq/compare/1.96.5...1.97.1</changelog>
</package>
<package pkgid="d868fd592afe9130192ccd759362adb6ba8c988c9e0ebd0ecdf93598cc30d87505deab84bf94f6890ef3bc7e5b8a86f56098715c39ee26b2dc0844951c6a7855" name="CoreFreq" arch="src">
  <version epoch="0" ver="1.97.2" rel="2.2"/>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1655899200">- Update to version 1.91.3
  * No changelog was made available by upstream</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1661169600">- Update to version 1.91.6
  - [AMD/Zen][UMC] Fixed the Mem Clock and ECC regressions
  - Designate the Package identifier in Power consumed readings
  - [Intel/ADL/IMC] Guessing activated channel from the populated DIMM
  - [AMD][UMC, IOMMU] Adding missing DID of family 19h devices
  - [AMD_DataFabric_Cezanne] Removed the Experimental mode
  - Intel/ADL/IMC: Fixing the Memory Channels count
  - [AMD/Zen] Improved UMC mapping. Threadripper 3960X issue
  - Avoid some NULL pointer strings during SMBIOS decoding</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1667563200">- update to version 1.92.3
  - Export CPUID bits Intel Sierra Forest, Grand Ridge, Granite Rapids
    and completes AMD64 Fn0000_0007_ECX_x0
  - [Features] WBNOINVD and CLZERO instructions
  - Adding various Mitigation Mechanism aggregations:
    IPRED_DIS_U, IPRED_DIS_S, RRSBA_DIS_U, RRSBA_DIS_S, BHI_DIS_S, MCDT_NO
  - RDPID and UMIP capability fixed.
  - [AMD] Perf. Mon. version based on CPUID_0x80000022.EAX.PerfMonV2
  - [AMD][Zen3+][Rembrandt] Trigger UMC and IOMMU decoders
  - [AMD][Ryzen 5 6600H] Found voltage VID @ SMU 0x6f010 and 0x6f014
  - Introducing AMD Security Feature capabilities:
    SKINIT, SEV, GMET, SEV-ES, SEV-SNP
  - [AMD64] Non-architectural MSR: SPECULATIVE STORE BYPASS DISABLE
  - [Intel][2nd &amp; 3rd gen] Misc IMC optimizations
  - [AMD][Rembrandt] Provides Vcore from a new formula.
  - Dumping CPUID leaves from AMD64 Architecture Programmer’s Manual
  - [Intel][HSW &amp; BDW] Compute the DIMM banks
  - [UI] Re-assigned keys to move or resize windows.
  - [AMD][Zen] Uncore frequency: Improving the Memory Clock divisor
  - [Intel][HSW &amp; BDW][SKL] Make use of same function DimmWidthToRows
  - [AMD][Zen3+][Rembrandt] Provides the thermal sensor.
  - [AMD/Zen2 &amp; Zen3] Removed the HSMP capability.
  - [Intel][CML][RKL][TGL] Compute the DIMM Rows from CH_WIDTH
  - [AMD/EPYC] Adding the CPUID of Zen4 Genoa architecture
  - [AMD/Zen2] Introducing Mendocino architecture
  - Changed MeteorLake/N to CPUID 06_B5
  - [Intel] Computes BIOS DRAM frequency based on PLL_REF100
  - [Intel][SNB/IVB/HSW/BDW] Improved BIOS DRAM frequency
  - [Intel][SNB/IVB] DRAM frequency based on RAM_Select and FSB_Select
  - [Intel][IVB] IMC specifications and optimizations.
  - [Intel][SNB,IVB] Computes the DIMM A from DAS bit in MAD register
  - [Intel][SNB,IVB,HSW,BDW] Rolling back changes to the DIMM topology
  - [Intel][BDW][HSW] Query the IMC Power Down Mode
  - [Intel][IVB][SNB] Attempt to decode the IMC third timings
  - [AMD][Ryzen] Added AMD Ryzen 7 PRO 6860Z
  - [AMD][F17h-F19h] Can toggle ON and OFF the Instruction Cache Unit
  - [AMD] Checking the Ryzen "OEM Only" processors
  - [Intel] Specification of 12th Gen. MSR registers capability
  - [Intel] Adding Raptor Lake-S with CPUID 06_BF
  - [AMD] Introducing Zen 4 / Raphael architecture
  - [Intel][SNB,IVB,HSW] Attempt to assign the Rank per DIMM slot
  - [Intel][SNB,IVB,HSW] Attempt to fix the DIMM(s) topology layout
  - ClockSource: TSC udelay() asm implementation builtin as a default
  - [Intel][Alder Lake] Adding IMC entry for i5-12500 processor
  - [Intel][Alder Lake] Added default case if Processor has only Pcores
  - [Intel][Atom/Bonnell][IMC] Attempt to compute the DIMM geometry
  - [UI][Custom view] Show the Uncore unit in watt or joule
  - [UI] Display HWP or CPPC in footer for capable processors.
  - [CLI] Added HWP Capabilities and HWP Request to the JSON export
  - [CLI] Don't allow the HWP dialog box if feature is not available.
  - [CPPC][Firmware] allows (de)activation of the feature.
  - [CLI] Added CPU ratios to JSON export
  - [CPPC] Improved scaling
  - [CPPC] Build fixed down to Kernel version 3
  - [Kernel/ACPI] Attempt to write CPPC registers</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1667563201">- Repair deficient description grammar.</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1670241600">- update to 1.92.4:
  * [Intel/Skylake-X] Permits MSR_RING_PERF_LIMIT_REASONS</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1670932800">- removed modprobe_corefreqd.service.patch and harden_corefreqd.service.patch
  now included in new corefreqd.service file replacing stock one
- update to 1.93.1
  * [PRJ] CoreFreq version 1.93.1
  * [ACPI/CPPC/EPP] Preview of AMD/Zen Energy Preference (CONFIG_CACHY)
  * [UI] Changed the HWP or CPPC ratio bounds.
  * [FIX] Putting `corefreqd` in the root cgroup (issue #379) Thanks to gel-crabs
  * [DOC] Parameters to blacklist the amd_pstate since kernel 6.0.11
  * [AMD][Zen4] Apply a voltage formula based on Rembrandt's. (#378)
  * [AMD][Zen4/Raphael] Attempting temperature per CCD from TCTL+0x308
  * [AMD][Zen4] Changed Timer loop
  * [CR] CLI code review and UI optimizations
  * [UI] Auto refresh the Topology items when off/online
  * [CR] Conditionally build with additional PMC Counters
  * [Intel] Adding Z8000 System Memory Controller Registers
  * [CR] Transformed global variable in cells padding
  * [UI] Windows re-scaling fix
  * [UI] Apply color theming to the CPPC capabilities list.
  * [AMD][Raphael] Adding device DIDs to probe UMC and IOMMU
  * [CPPC/FMW] Computes value bounds while Enabling/Disabling firmware
  * [CR] CPPC lib errors are now raised to Debug level
  * [AMD][Zen4] Increased the UMC size to 12 channels.
  * [CPPC] Handles the OffLine CPU case.
  * [CLI] Refactoring HWP/CPPC to print all capabilities per CPU
  * [ACPI] Computes the CPPC Bounds
  * [Intel] Linear Address Masking (LAM)
  * [CLI] EFER: Left aligned labels
  * [AMD] Reports UAIE and AIBRSE bits from EFER system register
  * [CLI] Changed mitigation mechanisms incapability labels
  * [AMD][Zen2] Mitigation Mechanism BTC-NOBR * ACPI/OSPM documentation
  * [CR] Code review on bit masks
  * [CPPC][ACPI] Kernel may decode the Guaranteed Performance Register
  * [UI] Optimize the cycles to clear the time bar.
  * [CR] Code review for extra compiler warnings
  * [UI] Time of the day displayed in the right side of menu
  * [UI] Display the current date and time in menu bar
  * [Kernel] Introducing support of `CONFIG_SCHED_BORE`
  * [CLI] Fixing ambiguous CPPC report: hardware vs firmware
  * [CLI] Surrounds _CPC feature with square brackets
  * [CPPC] Provides the ACPI _CPC object state.
  * [UI] Colors the task being tracked in the tracking list
  * [UI] Display the current time in the menu bar
  * [CLI] Reserve the programmable TDP section to Intel processors.
  * [AMD/Zen3+] Improving the DIMM geometry of Rembrandt UMC</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1672747200">- update to 1.94.1:
  * [Intel] Gemini Lake
  * [AMD] Ryzen 5 6600 H SoC, UMC channels
  * [AMD] Rembrandt: maximum of two UMC channels
  * [AMD] Raphael: Decodes DIMM geometry from AddrCfg
  * [AMD] Zen: Aggregation refactored
  * [AMD] Improved DDR5 clock decoding
  * Optimized Idle Loop</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1673006400">- update to 1.94.3:
  * [AMD][RMB] If UMC is quad channels then unpopulate odd channels
  * [AMD][RPL] Provide Service Processor Vcore as workaround
  * [UI] Auto size and lay performance capabilities window
  * [UI] Adding comments to the EEO and R2H technologies
  * [AMD][Raphael] 7950X3D, 7900X3D. support</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1674475200">- update to 1.95.1:
  * [Intel] RPL: voltage of Pcore, Ecore, System Agent
  * [Intel] RPL and ADL Chipset device IDs
  * [Intel] Decode the RPL IMC and improve DDR5 support
  * [Build] Raise `MAX_FREQ_HZ` up to 7125000000 Hertz
  * [Intel] Mobile {Coffee Lake, Kaby Lake} codenames
  * [Intel] Braswell codename detection
  * [AMD] SYSCFG Register
  * [AMD] EPYC 9654
  * [AMD] Transparent SME
  * [AMD] DRAM Data Scrambling
  * [AMD] Adding "Barcelo R" and "Rembrandt R"</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1675944000">- update to 1.95.2:
  * Fixed the aggregation of the minimum ratio
  Intel:
  * [Airmont][Silvermont] Attempt to decode `tCKE` from DRMC
    register
  * [Airmont] Improve `tWTPr`, `B2B`, `tWWDR` timings
  * [Airmont] Provide a new IMC decoder
  * Add the Emerald Rapids architecture entry
  * [DDR5][DDR4] Add the `RCDw` IMC timing
  * [Raptor Lake ] De-activate the MSR Uncore counter
  AMD:
  * "Zen3/Barcelo-R" and "Zen3+ Rembrandt-R" codenames
  * [Zen] Thermal highest limit reset fix
  Misc:
  * Code review and Registers documentation:
    AMD HWCR, Intel HDC and DRP</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677067200">- update to 1.95.4
  * [Intel] [from 11th to 14th gen]
    Convert the DRAM Speed to MT/s unit
    Compute the Bus Rate based on the BIOS MC PLL
- update to 1.95.3
  * [Intel] [Airmont]
    Improved the IMC geometry
    Introducing the Spreadtrum architecture
    Fixed the Bus and DRAM frequency rates
  * [Intel] [from 11th to 13th gen] Attempt to probe the interleaved controllers
  * [Intel] [Alder Lake/H] Attempt to decode the TCO Watchdog</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677153600">- added leap_compile_fix.patch to fix compilation on Leap</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1683115200">- removed leap_compile_fix.patch no needed anymore
- update to 1.96.0
  * [AMD]
    [RPL/X3D] Disabling the turbo boosted P-states change
    [PHOENIX] Adding Z1, U and HS PRO series.
    [Genoa] DAC address at UMC BAR + 0x40
    [Zen4] Adding the PCI entries of Genoa
    [Zen2] Adding remaining PCI entries
    [Zen] Query DAC &amp; CFG with the right UMC base address register
    [Zen4] Dump the CPUID Extended CPU Topology leaves.
    [Zen][Embedded][Banded Kestrel] R1000 Processor Family
    [Zen][Embedded] "Great Horned Owl", "River Hawk", "Grey Hawk"
    Complete the "Raven Ridge" and "Picasso" lists
    [EPYC] Moved "Snowy Owl" Embedded processors to CPUID 8F_01
    [Zen4] introducing Phoenix and Dragon Range
    [RMB] adding the Ryzen Embedded V3000 processors
    [VMR] adding the "AMD Ryzen 9 PRO 5945"
  * [Intel]
    Adding Granite Rapids, Sierra Forest, Grand Ridge entries
    Adding "Lunar Lake" and "Arrow Lake" entries.
  * [UI]
    Optimized decimal to digits converter
    Allow task tracker to select up to pid_max
    Can trace the frozen states of Linux tasks.
    Only print HWP frequencies within bounds.
    Fix ruler's aggregation.
  * [CR]
    Check CPUID[HV_PARTITION_PRIVILEGE_MASK] for HV_X64_MSR_VP_RUNTIME
    Uninitialized variable fix.
    [CPPC] Build EPP with KERNEL_VERSION(6) rather than CONFIG_CACHY
    [KERNEL] Linux 6.3: Employ modifier calls with the vma-&gt;vm_flags</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1684065600">- update to 1.96.1
  * [Driver]
  - Postpone Clock Source registration during startup until the Base Clock is computed.
  - Change class_create() according to Linux Kernel 6.4
  - Clear interrupt flag (cli) after Halt in the Idle method
  * [AMD]
  - [PHOENIX] Adding Ryzen 7940H, 7840H, 7640H
  - [VERMEER] Adding Ryzen PRO and Embedded processors
  - Ryzen Z1 CPUID' brand fix
  - Adding EPYC Embedded 9004 Series as Genoa
  - Adding EPYC Embedded 7003 Series as Milan
  - Adding EPYC Embedded 7002 Series as Rome
  - Adding EPYC Embedded 7001 Series as Naples</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1685880000">- update to 1.96.2
  * [Driver]
  - Allows compilation to keep going without CONFIG_ACPI_CPPC_LIB
  * [Client]
  - Adding two command line arguments:
  - Op Show Package C-States
  - OW Toggle Energy units
  * [AMD]
  - Specification of some Configuration MSRs</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1686830400">- update to 1.96.4
  * [AMD]
  - Display CPUID state of new and legacy features:
    Fused Multiply Add [FMA4]
    Extended Operation Support [XOP]
    Translation Cache Extension [TCE]
    Trailing Bit Manipulation [TBM]
    OS Visible Work-around [OSVW]
    LOCK prefix to read CR8 [AltMov]
  * [Intel]
  - Advanced Matrix Extensions [AMX]
  - Bits and Features of Sierra Forest and Grand Ridge
  - Attempt to decode the Meteor Lake Memory Controller
- update to 1.96.3
  * [AMD]
  - [Zeppelin] Probe more than one UMC controllers on Ryzen Threadripper 1900X
  - [Zen4] Dump SMBE and BMEC sub-leaves of CPUID 0x80000020</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1688212800">- update to 1.96.5
  * [AMD]
    Adding the "AMD Ryzen 5 5600X3D"
    Introducing the Zen4c Bergamo architecture
    Specs fixing of Embedded V-series and 3000 Series Processors
    Adding MENDOCINO, RAPHAEL Pro, PHOENIX Pro among others</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1712318400">- added preamble file for %kernel_module_package macro
- update to 1.97.1
  * added aarch64 support
  * upstream did not provide a summary changelog. Full list of commits:
    https://github.com/cyring/CoreFreq/compare/1.96.5...1.97.1</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715860800">- update to 1.97.2
  * [AMD]
  - [Hawk Point] Adding Ryzen PRO processors
  - [Phoenix] Adding the unlocked Ryzen 8000 Series
  * [Intel]
  - [MeteorLake] New bits specified
  - EEO and R2H bits inversion fix in MSR_POWER_CTL (0x1fc)
  - Reverse specification of MSR UNCORE_PERF_STATUS
  - Prefetchers fix of L1 Scrubbing, L1 Next Page and L2 AMP
  * [AArch64]
  - Providing Exclusive Load/Store to atomic operations
  - Improved asm of various macro functions
  - Removed LEGACY macros
  - Optimized the CORE_COUNT macros
  - Marked the Tools feature as nominal: Stress functions available
  - Allow user access to Retired Instructions counter
  - Fix Instructions counter overflow
  - Other PMC enhancements
  * [CR]
  - Fix a building issue with AlmaLinux aka RHEL-9
  - Linux kernel 6.9: Avoid redefinition of Intel MSR macros
  * [Doc]
  - README section for AlmaLinux
  - CONFIG_TRIM_UNUSED_KSYMS kernel build config is forbidden</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715947200">- fix dependency on kernel module that was not versioned</changelog>
</package>
<package pkgid="ca7f953593dc60661b28284109b21cce9c77524c249fbd62adc106934da854930773c9836bc8bfeb99528892fc106791a651555a4214ef2b68d97bede5fa5464" name="CoreFreq" arch="x86_64">
  <version epoch="0" ver="1.97.2" rel="2.2"/>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1655899200">- Update to version 1.91.3
  * No changelog was made available by upstream</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1661169600">- Update to version 1.91.6
  - [AMD/Zen][UMC] Fixed the Mem Clock and ECC regressions
  - Designate the Package identifier in Power consumed readings
  - [Intel/ADL/IMC] Guessing activated channel from the populated DIMM
  - [AMD][UMC, IOMMU] Adding missing DID of family 19h devices
  - [AMD_DataFabric_Cezanne] Removed the Experimental mode
  - Intel/ADL/IMC: Fixing the Memory Channels count
  - [AMD/Zen] Improved UMC mapping. Threadripper 3960X issue
  - Avoid some NULL pointer strings during SMBIOS decoding</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1667563200">- update to version 1.92.3
  - Export CPUID bits Intel Sierra Forest, Grand Ridge, Granite Rapids
    and completes AMD64 Fn0000_0007_ECX_x0
  - [Features] WBNOINVD and CLZERO instructions
  - Adding various Mitigation Mechanism aggregations:
    IPRED_DIS_U, IPRED_DIS_S, RRSBA_DIS_U, RRSBA_DIS_S, BHI_DIS_S, MCDT_NO
  - RDPID and UMIP capability fixed.
  - [AMD] Perf. Mon. version based on CPUID_0x80000022.EAX.PerfMonV2
  - [AMD][Zen3+][Rembrandt] Trigger UMC and IOMMU decoders
  - [AMD][Ryzen 5 6600H] Found voltage VID @ SMU 0x6f010 and 0x6f014
  - Introducing AMD Security Feature capabilities:
    SKINIT, SEV, GMET, SEV-ES, SEV-SNP
  - [AMD64] Non-architectural MSR: SPECULATIVE STORE BYPASS DISABLE
  - [Intel][2nd &amp; 3rd gen] Misc IMC optimizations
  - [AMD][Rembrandt] Provides Vcore from a new formula.
  - Dumping CPUID leaves from AMD64 Architecture Programmer’s Manual
  - [Intel][HSW &amp; BDW] Compute the DIMM banks
  - [UI] Re-assigned keys to move or resize windows.
  - [AMD][Zen] Uncore frequency: Improving the Memory Clock divisor
  - [Intel][HSW &amp; BDW][SKL] Make use of same function DimmWidthToRows
  - [AMD][Zen3+][Rembrandt] Provides the thermal sensor.
  - [AMD/Zen2 &amp; Zen3] Removed the HSMP capability.
  - [Intel][CML][RKL][TGL] Compute the DIMM Rows from CH_WIDTH
  - [AMD/EPYC] Adding the CPUID of Zen4 Genoa architecture
  - [AMD/Zen2] Introducing Mendocino architecture
  - Changed MeteorLake/N to CPUID 06_B5
  - [Intel] Computes BIOS DRAM frequency based on PLL_REF100
  - [Intel][SNB/IVB/HSW/BDW] Improved BIOS DRAM frequency
  - [Intel][SNB/IVB] DRAM frequency based on RAM_Select and FSB_Select
  - [Intel][IVB] IMC specifications and optimizations.
  - [Intel][SNB,IVB] Computes the DIMM A from DAS bit in MAD register
  - [Intel][SNB,IVB,HSW,BDW] Rolling back changes to the DIMM topology
  - [Intel][BDW][HSW] Query the IMC Power Down Mode
  - [Intel][IVB][SNB] Attempt to decode the IMC third timings
  - [AMD][Ryzen] Added AMD Ryzen 7 PRO 6860Z
  - [AMD][F17h-F19h] Can toggle ON and OFF the Instruction Cache Unit
  - [AMD] Checking the Ryzen "OEM Only" processors
  - [Intel] Specification of 12th Gen. MSR registers capability
  - [Intel] Adding Raptor Lake-S with CPUID 06_BF
  - [AMD] Introducing Zen 4 / Raphael architecture
  - [Intel][SNB,IVB,HSW] Attempt to assign the Rank per DIMM slot
  - [Intel][SNB,IVB,HSW] Attempt to fix the DIMM(s) topology layout
  - ClockSource: TSC udelay() asm implementation builtin as a default
  - [Intel][Alder Lake] Adding IMC entry for i5-12500 processor
  - [Intel][Alder Lake] Added default case if Processor has only Pcores
  - [Intel][Atom/Bonnell][IMC] Attempt to compute the DIMM geometry
  - [UI][Custom view] Show the Uncore unit in watt or joule
  - [UI] Display HWP or CPPC in footer for capable processors.
  - [CLI] Added HWP Capabilities and HWP Request to the JSON export
  - [CLI] Don't allow the HWP dialog box if feature is not available.
  - [CPPC][Firmware] allows (de)activation of the feature.
  - [CLI] Added CPU ratios to JSON export
  - [CPPC] Improved scaling
  - [CPPC] Build fixed down to Kernel version 3
  - [Kernel/ACPI] Attempt to write CPPC registers</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1667563201">- Repair deficient description grammar.</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1670241600">- update to 1.92.4:
  * [Intel/Skylake-X] Permits MSR_RING_PERF_LIMIT_REASONS</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1670932800">- removed modprobe_corefreqd.service.patch and harden_corefreqd.service.patch
  now included in new corefreqd.service file replacing stock one
- update to 1.93.1
  * [PRJ] CoreFreq version 1.93.1
  * [ACPI/CPPC/EPP] Preview of AMD/Zen Energy Preference (CONFIG_CACHY)
  * [UI] Changed the HWP or CPPC ratio bounds.
  * [FIX] Putting `corefreqd` in the root cgroup (issue #379) Thanks to gel-crabs
  * [DOC] Parameters to blacklist the amd_pstate since kernel 6.0.11
  * [AMD][Zen4] Apply a voltage formula based on Rembrandt's. (#378)
  * [AMD][Zen4/Raphael] Attempting temperature per CCD from TCTL+0x308
  * [AMD][Zen4] Changed Timer loop
  * [CR] CLI code review and UI optimizations
  * [UI] Auto refresh the Topology items when off/online
  * [CR] Conditionally build with additional PMC Counters
  * [Intel] Adding Z8000 System Memory Controller Registers
  * [CR] Transformed global variable in cells padding
  * [UI] Windows re-scaling fix
  * [UI] Apply color theming to the CPPC capabilities list.
  * [AMD][Raphael] Adding device DIDs to probe UMC and IOMMU
  * [CPPC/FMW] Computes value bounds while Enabling/Disabling firmware
  * [CR] CPPC lib errors are now raised to Debug level
  * [AMD][Zen4] Increased the UMC size to 12 channels.
  * [CPPC] Handles the OffLine CPU case.
  * [CLI] Refactoring HWP/CPPC to print all capabilities per CPU
  * [ACPI] Computes the CPPC Bounds
  * [Intel] Linear Address Masking (LAM)
  * [CLI] EFER: Left aligned labels
  * [AMD] Reports UAIE and AIBRSE bits from EFER system register
  * [CLI] Changed mitigation mechanisms incapability labels
  * [AMD][Zen2] Mitigation Mechanism BTC-NOBR * ACPI/OSPM documentation
  * [CR] Code review on bit masks
  * [CPPC][ACPI] Kernel may decode the Guaranteed Performance Register
  * [UI] Optimize the cycles to clear the time bar.
  * [CR] Code review for extra compiler warnings
  * [UI] Time of the day displayed in the right side of menu
  * [UI] Display the current date and time in menu bar
  * [Kernel] Introducing support of `CONFIG_SCHED_BORE`
  * [CLI] Fixing ambiguous CPPC report: hardware vs firmware
  * [CLI] Surrounds _CPC feature with square brackets
  * [CPPC] Provides the ACPI _CPC object state.
  * [UI] Colors the task being tracked in the tracking list
  * [UI] Display the current time in the menu bar
  * [CLI] Reserve the programmable TDP section to Intel processors.
  * [AMD/Zen3+] Improving the DIMM geometry of Rembrandt UMC</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1672747200">- update to 1.94.1:
  * [Intel] Gemini Lake
  * [AMD] Ryzen 5 6600 H SoC, UMC channels
  * [AMD] Rembrandt: maximum of two UMC channels
  * [AMD] Raphael: Decodes DIMM geometry from AddrCfg
  * [AMD] Zen: Aggregation refactored
  * [AMD] Improved DDR5 clock decoding
  * Optimized Idle Loop</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1673006400">- update to 1.94.3:
  * [AMD][RMB] If UMC is quad channels then unpopulate odd channels
  * [AMD][RPL] Provide Service Processor Vcore as workaround
  * [UI] Auto size and lay performance capabilities window
  * [UI] Adding comments to the EEO and R2H technologies
  * [AMD][Raphael] 7950X3D, 7900X3D. support</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1674475200">- update to 1.95.1:
  * [Intel] RPL: voltage of Pcore, Ecore, System Agent
  * [Intel] RPL and ADL Chipset device IDs
  * [Intel] Decode the RPL IMC and improve DDR5 support
  * [Build] Raise `MAX_FREQ_HZ` up to 7125000000 Hertz
  * [Intel] Mobile {Coffee Lake, Kaby Lake} codenames
  * [Intel] Braswell codename detection
  * [AMD] SYSCFG Register
  * [AMD] EPYC 9654
  * [AMD] Transparent SME
  * [AMD] DRAM Data Scrambling
  * [AMD] Adding "Barcelo R" and "Rembrandt R"</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1675944000">- update to 1.95.2:
  * Fixed the aggregation of the minimum ratio
  Intel:
  * [Airmont][Silvermont] Attempt to decode `tCKE` from DRMC
    register
  * [Airmont] Improve `tWTPr`, `B2B`, `tWWDR` timings
  * [Airmont] Provide a new IMC decoder
  * Add the Emerald Rapids architecture entry
  * [DDR5][DDR4] Add the `RCDw` IMC timing
  * [Raptor Lake ] De-activate the MSR Uncore counter
  AMD:
  * "Zen3/Barcelo-R" and "Zen3+ Rembrandt-R" codenames
  * [Zen] Thermal highest limit reset fix
  Misc:
  * Code review and Registers documentation:
    AMD HWCR, Intel HDC and DRP</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677067200">- update to 1.95.4
  * [Intel] [from 11th to 14th gen]
    Convert the DRAM Speed to MT/s unit
    Compute the Bus Rate based on the BIOS MC PLL
- update to 1.95.3
  * [Intel] [Airmont]
    Improved the IMC geometry
    Introducing the Spreadtrum architecture
    Fixed the Bus and DRAM frequency rates
  * [Intel] [from 11th to 13th gen] Attempt to probe the interleaved controllers
  * [Intel] [Alder Lake/H] Attempt to decode the TCO Watchdog</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677153600">- added leap_compile_fix.patch to fix compilation on Leap</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1683115200">- removed leap_compile_fix.patch no needed anymore
- update to 1.96.0
  * [AMD]
    [RPL/X3D] Disabling the turbo boosted P-states change
    [PHOENIX] Adding Z1, U and HS PRO series.
    [Genoa] DAC address at UMC BAR + 0x40
    [Zen4] Adding the PCI entries of Genoa
    [Zen2] Adding remaining PCI entries
    [Zen] Query DAC &amp; CFG with the right UMC base address register
    [Zen4] Dump the CPUID Extended CPU Topology leaves.
    [Zen][Embedded][Banded Kestrel] R1000 Processor Family
    [Zen][Embedded] "Great Horned Owl", "River Hawk", "Grey Hawk"
    Complete the "Raven Ridge" and "Picasso" lists
    [EPYC] Moved "Snowy Owl" Embedded processors to CPUID 8F_01
    [Zen4] introducing Phoenix and Dragon Range
    [RMB] adding the Ryzen Embedded V3000 processors
    [VMR] adding the "AMD Ryzen 9 PRO 5945"
  * [Intel]
    Adding Granite Rapids, Sierra Forest, Grand Ridge entries
    Adding "Lunar Lake" and "Arrow Lake" entries.
  * [UI]
    Optimized decimal to digits converter
    Allow task tracker to select up to pid_max
    Can trace the frozen states of Linux tasks.
    Only print HWP frequencies within bounds.
    Fix ruler's aggregation.
  * [CR]
    Check CPUID[HV_PARTITION_PRIVILEGE_MASK] for HV_X64_MSR_VP_RUNTIME
    Uninitialized variable fix.
    [CPPC] Build EPP with KERNEL_VERSION(6) rather than CONFIG_CACHY
    [KERNEL] Linux 6.3: Employ modifier calls with the vma-&gt;vm_flags</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1684065600">- update to 1.96.1
  * [Driver]
  - Postpone Clock Source registration during startup until the Base Clock is computed.
  - Change class_create() according to Linux Kernel 6.4
  - Clear interrupt flag (cli) after Halt in the Idle method
  * [AMD]
  - [PHOENIX] Adding Ryzen 7940H, 7840H, 7640H
  - [VERMEER] Adding Ryzen PRO and Embedded processors
  - Ryzen Z1 CPUID' brand fix
  - Adding EPYC Embedded 9004 Series as Genoa
  - Adding EPYC Embedded 7003 Series as Milan
  - Adding EPYC Embedded 7002 Series as Rome
  - Adding EPYC Embedded 7001 Series as Naples</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1685880000">- update to 1.96.2
  * [Driver]
  - Allows compilation to keep going without CONFIG_ACPI_CPPC_LIB
  * [Client]
  - Adding two command line arguments:
  - Op Show Package C-States
  - OW Toggle Energy units
  * [AMD]
  - Specification of some Configuration MSRs</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1686830400">- update to 1.96.4
  * [AMD]
  - Display CPUID state of new and legacy features:
    Fused Multiply Add [FMA4]
    Extended Operation Support [XOP]
    Translation Cache Extension [TCE]
    Trailing Bit Manipulation [TBM]
    OS Visible Work-around [OSVW]
    LOCK prefix to read CR8 [AltMov]
  * [Intel]
  - Advanced Matrix Extensions [AMX]
  - Bits and Features of Sierra Forest and Grand Ridge
  - Attempt to decode the Meteor Lake Memory Controller
- update to 1.96.3
  * [AMD]
  - [Zeppelin] Probe more than one UMC controllers on Ryzen Threadripper 1900X
  - [Zen4] Dump SMBE and BMEC sub-leaves of CPUID 0x80000020</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1688212800">- update to 1.96.5
  * [AMD]
    Adding the "AMD Ryzen 5 5600X3D"
    Introducing the Zen4c Bergamo architecture
    Specs fixing of Embedded V-series and 3000 Series Processors
    Adding MENDOCINO, RAPHAEL Pro, PHOENIX Pro among others</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1712318400">- added preamble file for %kernel_module_package macro
- update to 1.97.1
  * added aarch64 support
  * upstream did not provide a summary changelog. Full list of commits:
    https://github.com/cyring/CoreFreq/compare/1.96.5...1.97.1</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715860800">- update to 1.97.2
  * [AMD]
  - [Hawk Point] Adding Ryzen PRO processors
  - [Phoenix] Adding the unlocked Ryzen 8000 Series
  * [Intel]
  - [MeteorLake] New bits specified
  - EEO and R2H bits inversion fix in MSR_POWER_CTL (0x1fc)
  - Reverse specification of MSR UNCORE_PERF_STATUS
  - Prefetchers fix of L1 Scrubbing, L1 Next Page and L2 AMP
  * [AArch64]
  - Providing Exclusive Load/Store to atomic operations
  - Improved asm of various macro functions
  - Removed LEGACY macros
  - Optimized the CORE_COUNT macros
  - Marked the Tools feature as nominal: Stress functions available
  - Allow user access to Retired Instructions counter
  - Fix Instructions counter overflow
  - Other PMC enhancements
  * [CR]
  - Fix a building issue with AlmaLinux aka RHEL-9
  - Linux kernel 6.9: Avoid redefinition of Intel MSR macros
  * [Doc]
  - README section for AlmaLinux
  - CONFIG_TRIM_UNUSED_KSYMS kernel build config is forbidden</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715947200">- fix dependency on kernel module that was not versioned</changelog>
</package>
<package pkgid="37d352e07f559e1f330b4482a131b83b55f523693e75208edbdce2fd1d4a723f2fa884e27c5199e7b5a8eeaf01ff9715b567de7be9ccf91ceb92b4db1d483c11" name="CoreFreq" arch="src">
  <version epoch="0" ver="1.97.2" rel="2.3"/>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1655899200">- Update to version 1.91.3
  * No changelog was made available by upstream</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1661169600">- Update to version 1.91.6
  - [AMD/Zen][UMC] Fixed the Mem Clock and ECC regressions
  - Designate the Package identifier in Power consumed readings
  - [Intel/ADL/IMC] Guessing activated channel from the populated DIMM
  - [AMD][UMC, IOMMU] Adding missing DID of family 19h devices
  - [AMD_DataFabric_Cezanne] Removed the Experimental mode
  - Intel/ADL/IMC: Fixing the Memory Channels count
  - [AMD/Zen] Improved UMC mapping. Threadripper 3960X issue
  - Avoid some NULL pointer strings during SMBIOS decoding</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1667563200">- update to version 1.92.3
  - Export CPUID bits Intel Sierra Forest, Grand Ridge, Granite Rapids
    and completes AMD64 Fn0000_0007_ECX_x0
  - [Features] WBNOINVD and CLZERO instructions
  - Adding various Mitigation Mechanism aggregations:
    IPRED_DIS_U, IPRED_DIS_S, RRSBA_DIS_U, RRSBA_DIS_S, BHI_DIS_S, MCDT_NO
  - RDPID and UMIP capability fixed.
  - [AMD] Perf. Mon. version based on CPUID_0x80000022.EAX.PerfMonV2
  - [AMD][Zen3+][Rembrandt] Trigger UMC and IOMMU decoders
  - [AMD][Ryzen 5 6600H] Found voltage VID @ SMU 0x6f010 and 0x6f014
  - Introducing AMD Security Feature capabilities:
    SKINIT, SEV, GMET, SEV-ES, SEV-SNP
  - [AMD64] Non-architectural MSR: SPECULATIVE STORE BYPASS DISABLE
  - [Intel][2nd &amp; 3rd gen] Misc IMC optimizations
  - [AMD][Rembrandt] Provides Vcore from a new formula.
  - Dumping CPUID leaves from AMD64 Architecture Programmer’s Manual
  - [Intel][HSW &amp; BDW] Compute the DIMM banks
  - [UI] Re-assigned keys to move or resize windows.
  - [AMD][Zen] Uncore frequency: Improving the Memory Clock divisor
  - [Intel][HSW &amp; BDW][SKL] Make use of same function DimmWidthToRows
  - [AMD][Zen3+][Rembrandt] Provides the thermal sensor.
  - [AMD/Zen2 &amp; Zen3] Removed the HSMP capability.
  - [Intel][CML][RKL][TGL] Compute the DIMM Rows from CH_WIDTH
  - [AMD/EPYC] Adding the CPUID of Zen4 Genoa architecture
  - [AMD/Zen2] Introducing Mendocino architecture
  - Changed MeteorLake/N to CPUID 06_B5
  - [Intel] Computes BIOS DRAM frequency based on PLL_REF100
  - [Intel][SNB/IVB/HSW/BDW] Improved BIOS DRAM frequency
  - [Intel][SNB/IVB] DRAM frequency based on RAM_Select and FSB_Select
  - [Intel][IVB] IMC specifications and optimizations.
  - [Intel][SNB,IVB] Computes the DIMM A from DAS bit in MAD register
  - [Intel][SNB,IVB,HSW,BDW] Rolling back changes to the DIMM topology
  - [Intel][BDW][HSW] Query the IMC Power Down Mode
  - [Intel][IVB][SNB] Attempt to decode the IMC third timings
  - [AMD][Ryzen] Added AMD Ryzen 7 PRO 6860Z
  - [AMD][F17h-F19h] Can toggle ON and OFF the Instruction Cache Unit
  - [AMD] Checking the Ryzen "OEM Only" processors
  - [Intel] Specification of 12th Gen. MSR registers capability
  - [Intel] Adding Raptor Lake-S with CPUID 06_BF
  - [AMD] Introducing Zen 4 / Raphael architecture
  - [Intel][SNB,IVB,HSW] Attempt to assign the Rank per DIMM slot
  - [Intel][SNB,IVB,HSW] Attempt to fix the DIMM(s) topology layout
  - ClockSource: TSC udelay() asm implementation builtin as a default
  - [Intel][Alder Lake] Adding IMC entry for i5-12500 processor
  - [Intel][Alder Lake] Added default case if Processor has only Pcores
  - [Intel][Atom/Bonnell][IMC] Attempt to compute the DIMM geometry
  - [UI][Custom view] Show the Uncore unit in watt or joule
  - [UI] Display HWP or CPPC in footer for capable processors.
  - [CLI] Added HWP Capabilities and HWP Request to the JSON export
  - [CLI] Don't allow the HWP dialog box if feature is not available.
  - [CPPC][Firmware] allows (de)activation of the feature.
  - [CLI] Added CPU ratios to JSON export
  - [CPPC] Improved scaling
  - [CPPC] Build fixed down to Kernel version 3
  - [Kernel/ACPI] Attempt to write CPPC registers</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1667563201">- Repair deficient description grammar.</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1670241600">- update to 1.92.4:
  * [Intel/Skylake-X] Permits MSR_RING_PERF_LIMIT_REASONS</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1670932800">- removed modprobe_corefreqd.service.patch and harden_corefreqd.service.patch
  now included in new corefreqd.service file replacing stock one
- update to 1.93.1
  * [PRJ] CoreFreq version 1.93.1
  * [ACPI/CPPC/EPP] Preview of AMD/Zen Energy Preference (CONFIG_CACHY)
  * [UI] Changed the HWP or CPPC ratio bounds.
  * [FIX] Putting `corefreqd` in the root cgroup (issue #379) Thanks to gel-crabs
  * [DOC] Parameters to blacklist the amd_pstate since kernel 6.0.11
  * [AMD][Zen4] Apply a voltage formula based on Rembrandt's. (#378)
  * [AMD][Zen4/Raphael] Attempting temperature per CCD from TCTL+0x308
  * [AMD][Zen4] Changed Timer loop
  * [CR] CLI code review and UI optimizations
  * [UI] Auto refresh the Topology items when off/online
  * [CR] Conditionally build with additional PMC Counters
  * [Intel] Adding Z8000 System Memory Controller Registers
  * [CR] Transformed global variable in cells padding
  * [UI] Windows re-scaling fix
  * [UI] Apply color theming to the CPPC capabilities list.
  * [AMD][Raphael] Adding device DIDs to probe UMC and IOMMU
  * [CPPC/FMW] Computes value bounds while Enabling/Disabling firmware
  * [CR] CPPC lib errors are now raised to Debug level
  * [AMD][Zen4] Increased the UMC size to 12 channels.
  * [CPPC] Handles the OffLine CPU case.
  * [CLI] Refactoring HWP/CPPC to print all capabilities per CPU
  * [ACPI] Computes the CPPC Bounds
  * [Intel] Linear Address Masking (LAM)
  * [CLI] EFER: Left aligned labels
  * [AMD] Reports UAIE and AIBRSE bits from EFER system register
  * [CLI] Changed mitigation mechanisms incapability labels
  * [AMD][Zen2] Mitigation Mechanism BTC-NOBR * ACPI/OSPM documentation
  * [CR] Code review on bit masks
  * [CPPC][ACPI] Kernel may decode the Guaranteed Performance Register
  * [UI] Optimize the cycles to clear the time bar.
  * [CR] Code review for extra compiler warnings
  * [UI] Time of the day displayed in the right side of menu
  * [UI] Display the current date and time in menu bar
  * [Kernel] Introducing support of `CONFIG_SCHED_BORE`
  * [CLI] Fixing ambiguous CPPC report: hardware vs firmware
  * [CLI] Surrounds _CPC feature with square brackets
  * [CPPC] Provides the ACPI _CPC object state.
  * [UI] Colors the task being tracked in the tracking list
  * [UI] Display the current time in the menu bar
  * [CLI] Reserve the programmable TDP section to Intel processors.
  * [AMD/Zen3+] Improving the DIMM geometry of Rembrandt UMC</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1672747200">- update to 1.94.1:
  * [Intel] Gemini Lake
  * [AMD] Ryzen 5 6600 H SoC, UMC channels
  * [AMD] Rembrandt: maximum of two UMC channels
  * [AMD] Raphael: Decodes DIMM geometry from AddrCfg
  * [AMD] Zen: Aggregation refactored
  * [AMD] Improved DDR5 clock decoding
  * Optimized Idle Loop</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1673006400">- update to 1.94.3:
  * [AMD][RMB] If UMC is quad channels then unpopulate odd channels
  * [AMD][RPL] Provide Service Processor Vcore as workaround
  * [UI] Auto size and lay performance capabilities window
  * [UI] Adding comments to the EEO and R2H technologies
  * [AMD][Raphael] 7950X3D, 7900X3D. support</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1674475200">- update to 1.95.1:
  * [Intel] RPL: voltage of Pcore, Ecore, System Agent
  * [Intel] RPL and ADL Chipset device IDs
  * [Intel] Decode the RPL IMC and improve DDR5 support
  * [Build] Raise `MAX_FREQ_HZ` up to 7125000000 Hertz
  * [Intel] Mobile {Coffee Lake, Kaby Lake} codenames
  * [Intel] Braswell codename detection
  * [AMD] SYSCFG Register
  * [AMD] EPYC 9654
  * [AMD] Transparent SME
  * [AMD] DRAM Data Scrambling
  * [AMD] Adding "Barcelo R" and "Rembrandt R"</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1675944000">- update to 1.95.2:
  * Fixed the aggregation of the minimum ratio
  Intel:
  * [Airmont][Silvermont] Attempt to decode `tCKE` from DRMC
    register
  * [Airmont] Improve `tWTPr`, `B2B`, `tWWDR` timings
  * [Airmont] Provide a new IMC decoder
  * Add the Emerald Rapids architecture entry
  * [DDR5][DDR4] Add the `RCDw` IMC timing
  * [Raptor Lake ] De-activate the MSR Uncore counter
  AMD:
  * "Zen3/Barcelo-R" and "Zen3+ Rembrandt-R" codenames
  * [Zen] Thermal highest limit reset fix
  Misc:
  * Code review and Registers documentation:
    AMD HWCR, Intel HDC and DRP</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677067200">- update to 1.95.4
  * [Intel] [from 11th to 14th gen]
    Convert the DRAM Speed to MT/s unit
    Compute the Bus Rate based on the BIOS MC PLL
- update to 1.95.3
  * [Intel] [Airmont]
    Improved the IMC geometry
    Introducing the Spreadtrum architecture
    Fixed the Bus and DRAM frequency rates
  * [Intel] [from 11th to 13th gen] Attempt to probe the interleaved controllers
  * [Intel] [Alder Lake/H] Attempt to decode the TCO Watchdog</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677153600">- added leap_compile_fix.patch to fix compilation on Leap</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1683115200">- removed leap_compile_fix.patch no needed anymore
- update to 1.96.0
  * [AMD]
    [RPL/X3D] Disabling the turbo boosted P-states change
    [PHOENIX] Adding Z1, U and HS PRO series.
    [Genoa] DAC address at UMC BAR + 0x40
    [Zen4] Adding the PCI entries of Genoa
    [Zen2] Adding remaining PCI entries
    [Zen] Query DAC &amp; CFG with the right UMC base address register
    [Zen4] Dump the CPUID Extended CPU Topology leaves.
    [Zen][Embedded][Banded Kestrel] R1000 Processor Family
    [Zen][Embedded] "Great Horned Owl", "River Hawk", "Grey Hawk"
    Complete the "Raven Ridge" and "Picasso" lists
    [EPYC] Moved "Snowy Owl" Embedded processors to CPUID 8F_01
    [Zen4] introducing Phoenix and Dragon Range
    [RMB] adding the Ryzen Embedded V3000 processors
    [VMR] adding the "AMD Ryzen 9 PRO 5945"
  * [Intel]
    Adding Granite Rapids, Sierra Forest, Grand Ridge entries
    Adding "Lunar Lake" and "Arrow Lake" entries.
  * [UI]
    Optimized decimal to digits converter
    Allow task tracker to select up to pid_max
    Can trace the frozen states of Linux tasks.
    Only print HWP frequencies within bounds.
    Fix ruler's aggregation.
  * [CR]
    Check CPUID[HV_PARTITION_PRIVILEGE_MASK] for HV_X64_MSR_VP_RUNTIME
    Uninitialized variable fix.
    [CPPC] Build EPP with KERNEL_VERSION(6) rather than CONFIG_CACHY
    [KERNEL] Linux 6.3: Employ modifier calls with the vma-&gt;vm_flags</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1684065600">- update to 1.96.1
  * [Driver]
  - Postpone Clock Source registration during startup until the Base Clock is computed.
  - Change class_create() according to Linux Kernel 6.4
  - Clear interrupt flag (cli) after Halt in the Idle method
  * [AMD]
  - [PHOENIX] Adding Ryzen 7940H, 7840H, 7640H
  - [VERMEER] Adding Ryzen PRO and Embedded processors
  - Ryzen Z1 CPUID' brand fix
  - Adding EPYC Embedded 9004 Series as Genoa
  - Adding EPYC Embedded 7003 Series as Milan
  - Adding EPYC Embedded 7002 Series as Rome
  - Adding EPYC Embedded 7001 Series as Naples</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1685880000">- update to 1.96.2
  * [Driver]
  - Allows compilation to keep going without CONFIG_ACPI_CPPC_LIB
  * [Client]
  - Adding two command line arguments:
  - Op Show Package C-States
  - OW Toggle Energy units
  * [AMD]
  - Specification of some Configuration MSRs</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1686830400">- update to 1.96.4
  * [AMD]
  - Display CPUID state of new and legacy features:
    Fused Multiply Add [FMA4]
    Extended Operation Support [XOP]
    Translation Cache Extension [TCE]
    Trailing Bit Manipulation [TBM]
    OS Visible Work-around [OSVW]
    LOCK prefix to read CR8 [AltMov]
  * [Intel]
  - Advanced Matrix Extensions [AMX]
  - Bits and Features of Sierra Forest and Grand Ridge
  - Attempt to decode the Meteor Lake Memory Controller
- update to 1.96.3
  * [AMD]
  - [Zeppelin] Probe more than one UMC controllers on Ryzen Threadripper 1900X
  - [Zen4] Dump SMBE and BMEC sub-leaves of CPUID 0x80000020</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1688212800">- update to 1.96.5
  * [AMD]
    Adding the "AMD Ryzen 5 5600X3D"
    Introducing the Zen4c Bergamo architecture
    Specs fixing of Embedded V-series and 3000 Series Processors
    Adding MENDOCINO, RAPHAEL Pro, PHOENIX Pro among others</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1712318400">- added preamble file for %kernel_module_package macro
- update to 1.97.1
  * added aarch64 support
  * upstream did not provide a summary changelog. Full list of commits:
    https://github.com/cyring/CoreFreq/compare/1.96.5...1.97.1</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715860800">- update to 1.97.2
  * [AMD]
  - [Hawk Point] Adding Ryzen PRO processors
  - [Phoenix] Adding the unlocked Ryzen 8000 Series
  * [Intel]
  - [MeteorLake] New bits specified
  - EEO and R2H bits inversion fix in MSR_POWER_CTL (0x1fc)
  - Reverse specification of MSR UNCORE_PERF_STATUS
  - Prefetchers fix of L1 Scrubbing, L1 Next Page and L2 AMP
  * [AArch64]
  - Providing Exclusive Load/Store to atomic operations
  - Improved asm of various macro functions
  - Removed LEGACY macros
  - Optimized the CORE_COUNT macros
  - Marked the Tools feature as nominal: Stress functions available
  - Allow user access to Retired Instructions counter
  - Fix Instructions counter overflow
  - Other PMC enhancements
  * [CR]
  - Fix a building issue with AlmaLinux aka RHEL-9
  - Linux kernel 6.9: Avoid redefinition of Intel MSR macros
  * [Doc]
  - README section for AlmaLinux
  - CONFIG_TRIM_UNUSED_KSYMS kernel build config is forbidden</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715947200">- fix dependency on kernel module that was not versioned</changelog>
</package>
<package pkgid="52fb0ca5448fe3852cfde011cec01f8f7d7f8efb19d2a3549620ca4efa991bc20f17a0c3ec4f976c0636e9bc333b1039af880a05e76e4f3ccae74c1797057c51" name="CoreFreq" arch="x86_64">
  <version epoch="0" ver="1.97.2" rel="2.3"/>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1655899200">- Update to version 1.91.3
  * No changelog was made available by upstream</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1661169600">- Update to version 1.91.6
  - [AMD/Zen][UMC] Fixed the Mem Clock and ECC regressions
  - Designate the Package identifier in Power consumed readings
  - [Intel/ADL/IMC] Guessing activated channel from the populated DIMM
  - [AMD][UMC, IOMMU] Adding missing DID of family 19h devices
  - [AMD_DataFabric_Cezanne] Removed the Experimental mode
  - Intel/ADL/IMC: Fixing the Memory Channels count
  - [AMD/Zen] Improved UMC mapping. Threadripper 3960X issue
  - Avoid some NULL pointer strings during SMBIOS decoding</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1667563200">- update to version 1.92.3
  - Export CPUID bits Intel Sierra Forest, Grand Ridge, Granite Rapids
    and completes AMD64 Fn0000_0007_ECX_x0
  - [Features] WBNOINVD and CLZERO instructions
  - Adding various Mitigation Mechanism aggregations:
    IPRED_DIS_U, IPRED_DIS_S, RRSBA_DIS_U, RRSBA_DIS_S, BHI_DIS_S, MCDT_NO
  - RDPID and UMIP capability fixed.
  - [AMD] Perf. Mon. version based on CPUID_0x80000022.EAX.PerfMonV2
  - [AMD][Zen3+][Rembrandt] Trigger UMC and IOMMU decoders
  - [AMD][Ryzen 5 6600H] Found voltage VID @ SMU 0x6f010 and 0x6f014
  - Introducing AMD Security Feature capabilities:
    SKINIT, SEV, GMET, SEV-ES, SEV-SNP
  - [AMD64] Non-architectural MSR: SPECULATIVE STORE BYPASS DISABLE
  - [Intel][2nd &amp; 3rd gen] Misc IMC optimizations
  - [AMD][Rembrandt] Provides Vcore from a new formula.
  - Dumping CPUID leaves from AMD64 Architecture Programmer’s Manual
  - [Intel][HSW &amp; BDW] Compute the DIMM banks
  - [UI] Re-assigned keys to move or resize windows.
  - [AMD][Zen] Uncore frequency: Improving the Memory Clock divisor
  - [Intel][HSW &amp; BDW][SKL] Make use of same function DimmWidthToRows
  - [AMD][Zen3+][Rembrandt] Provides the thermal sensor.
  - [AMD/Zen2 &amp; Zen3] Removed the HSMP capability.
  - [Intel][CML][RKL][TGL] Compute the DIMM Rows from CH_WIDTH
  - [AMD/EPYC] Adding the CPUID of Zen4 Genoa architecture
  - [AMD/Zen2] Introducing Mendocino architecture
  - Changed MeteorLake/N to CPUID 06_B5
  - [Intel] Computes BIOS DRAM frequency based on PLL_REF100
  - [Intel][SNB/IVB/HSW/BDW] Improved BIOS DRAM frequency
  - [Intel][SNB/IVB] DRAM frequency based on RAM_Select and FSB_Select
  - [Intel][IVB] IMC specifications and optimizations.
  - [Intel][SNB,IVB] Computes the DIMM A from DAS bit in MAD register
  - [Intel][SNB,IVB,HSW,BDW] Rolling back changes to the DIMM topology
  - [Intel][BDW][HSW] Query the IMC Power Down Mode
  - [Intel][IVB][SNB] Attempt to decode the IMC third timings
  - [AMD][Ryzen] Added AMD Ryzen 7 PRO 6860Z
  - [AMD][F17h-F19h] Can toggle ON and OFF the Instruction Cache Unit
  - [AMD] Checking the Ryzen "OEM Only" processors
  - [Intel] Specification of 12th Gen. MSR registers capability
  - [Intel] Adding Raptor Lake-S with CPUID 06_BF
  - [AMD] Introducing Zen 4 / Raphael architecture
  - [Intel][SNB,IVB,HSW] Attempt to assign the Rank per DIMM slot
  - [Intel][SNB,IVB,HSW] Attempt to fix the DIMM(s) topology layout
  - ClockSource: TSC udelay() asm implementation builtin as a default
  - [Intel][Alder Lake] Adding IMC entry for i5-12500 processor
  - [Intel][Alder Lake] Added default case if Processor has only Pcores
  - [Intel][Atom/Bonnell][IMC] Attempt to compute the DIMM geometry
  - [UI][Custom view] Show the Uncore unit in watt or joule
  - [UI] Display HWP or CPPC in footer for capable processors.
  - [CLI] Added HWP Capabilities and HWP Request to the JSON export
  - [CLI] Don't allow the HWP dialog box if feature is not available.
  - [CPPC][Firmware] allows (de)activation of the feature.
  - [CLI] Added CPU ratios to JSON export
  - [CPPC] Improved scaling
  - [CPPC] Build fixed down to Kernel version 3
  - [Kernel/ACPI] Attempt to write CPPC registers</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1667563201">- Repair deficient description grammar.</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1670241600">- update to 1.92.4:
  * [Intel/Skylake-X] Permits MSR_RING_PERF_LIMIT_REASONS</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1670932800">- removed modprobe_corefreqd.service.patch and harden_corefreqd.service.patch
  now included in new corefreqd.service file replacing stock one
- update to 1.93.1
  * [PRJ] CoreFreq version 1.93.1
  * [ACPI/CPPC/EPP] Preview of AMD/Zen Energy Preference (CONFIG_CACHY)
  * [UI] Changed the HWP or CPPC ratio bounds.
  * [FIX] Putting `corefreqd` in the root cgroup (issue #379) Thanks to gel-crabs
  * [DOC] Parameters to blacklist the amd_pstate since kernel 6.0.11
  * [AMD][Zen4] Apply a voltage formula based on Rembrandt's. (#378)
  * [AMD][Zen4/Raphael] Attempting temperature per CCD from TCTL+0x308
  * [AMD][Zen4] Changed Timer loop
  * [CR] CLI code review and UI optimizations
  * [UI] Auto refresh the Topology items when off/online
  * [CR] Conditionally build with additional PMC Counters
  * [Intel] Adding Z8000 System Memory Controller Registers
  * [CR] Transformed global variable in cells padding
  * [UI] Windows re-scaling fix
  * [UI] Apply color theming to the CPPC capabilities list.
  * [AMD][Raphael] Adding device DIDs to probe UMC and IOMMU
  * [CPPC/FMW] Computes value bounds while Enabling/Disabling firmware
  * [CR] CPPC lib errors are now raised to Debug level
  * [AMD][Zen4] Increased the UMC size to 12 channels.
  * [CPPC] Handles the OffLine CPU case.
  * [CLI] Refactoring HWP/CPPC to print all capabilities per CPU
  * [ACPI] Computes the CPPC Bounds
  * [Intel] Linear Address Masking (LAM)
  * [CLI] EFER: Left aligned labels
  * [AMD] Reports UAIE and AIBRSE bits from EFER system register
  * [CLI] Changed mitigation mechanisms incapability labels
  * [AMD][Zen2] Mitigation Mechanism BTC-NOBR * ACPI/OSPM documentation
  * [CR] Code review on bit masks
  * [CPPC][ACPI] Kernel may decode the Guaranteed Performance Register
  * [UI] Optimize the cycles to clear the time bar.
  * [CR] Code review for extra compiler warnings
  * [UI] Time of the day displayed in the right side of menu
  * [UI] Display the current date and time in menu bar
  * [Kernel] Introducing support of `CONFIG_SCHED_BORE`
  * [CLI] Fixing ambiguous CPPC report: hardware vs firmware
  * [CLI] Surrounds _CPC feature with square brackets
  * [CPPC] Provides the ACPI _CPC object state.
  * [UI] Colors the task being tracked in the tracking list
  * [UI] Display the current time in the menu bar
  * [CLI] Reserve the programmable TDP section to Intel processors.
  * [AMD/Zen3+] Improving the DIMM geometry of Rembrandt UMC</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1672747200">- update to 1.94.1:
  * [Intel] Gemini Lake
  * [AMD] Ryzen 5 6600 H SoC, UMC channels
  * [AMD] Rembrandt: maximum of two UMC channels
  * [AMD] Raphael: Decodes DIMM geometry from AddrCfg
  * [AMD] Zen: Aggregation refactored
  * [AMD] Improved DDR5 clock decoding
  * Optimized Idle Loop</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1673006400">- update to 1.94.3:
  * [AMD][RMB] If UMC is quad channels then unpopulate odd channels
  * [AMD][RPL] Provide Service Processor Vcore as workaround
  * [UI] Auto size and lay performance capabilities window
  * [UI] Adding comments to the EEO and R2H technologies
  * [AMD][Raphael] 7950X3D, 7900X3D. support</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1674475200">- update to 1.95.1:
  * [Intel] RPL: voltage of Pcore, Ecore, System Agent
  * [Intel] RPL and ADL Chipset device IDs
  * [Intel] Decode the RPL IMC and improve DDR5 support
  * [Build] Raise `MAX_FREQ_HZ` up to 7125000000 Hertz
  * [Intel] Mobile {Coffee Lake, Kaby Lake} codenames
  * [Intel] Braswell codename detection
  * [AMD] SYSCFG Register
  * [AMD] EPYC 9654
  * [AMD] Transparent SME
  * [AMD] DRAM Data Scrambling
  * [AMD] Adding "Barcelo R" and "Rembrandt R"</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1675944000">- update to 1.95.2:
  * Fixed the aggregation of the minimum ratio
  Intel:
  * [Airmont][Silvermont] Attempt to decode `tCKE` from DRMC
    register
  * [Airmont] Improve `tWTPr`, `B2B`, `tWWDR` timings
  * [Airmont] Provide a new IMC decoder
  * Add the Emerald Rapids architecture entry
  * [DDR5][DDR4] Add the `RCDw` IMC timing
  * [Raptor Lake ] De-activate the MSR Uncore counter
  AMD:
  * "Zen3/Barcelo-R" and "Zen3+ Rembrandt-R" codenames
  * [Zen] Thermal highest limit reset fix
  Misc:
  * Code review and Registers documentation:
    AMD HWCR, Intel HDC and DRP</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677067200">- update to 1.95.4
  * [Intel] [from 11th to 14th gen]
    Convert the DRAM Speed to MT/s unit
    Compute the Bus Rate based on the BIOS MC PLL
- update to 1.95.3
  * [Intel] [Airmont]
    Improved the IMC geometry
    Introducing the Spreadtrum architecture
    Fixed the Bus and DRAM frequency rates
  * [Intel] [from 11th to 13th gen] Attempt to probe the interleaved controllers
  * [Intel] [Alder Lake/H] Attempt to decode the TCO Watchdog</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677153600">- added leap_compile_fix.patch to fix compilation on Leap</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1683115200">- removed leap_compile_fix.patch no needed anymore
- update to 1.96.0
  * [AMD]
    [RPL/X3D] Disabling the turbo boosted P-states change
    [PHOENIX] Adding Z1, U and HS PRO series.
    [Genoa] DAC address at UMC BAR + 0x40
    [Zen4] Adding the PCI entries of Genoa
    [Zen2] Adding remaining PCI entries
    [Zen] Query DAC &amp; CFG with the right UMC base address register
    [Zen4] Dump the CPUID Extended CPU Topology leaves.
    [Zen][Embedded][Banded Kestrel] R1000 Processor Family
    [Zen][Embedded] "Great Horned Owl", "River Hawk", "Grey Hawk"
    Complete the "Raven Ridge" and "Picasso" lists
    [EPYC] Moved "Snowy Owl" Embedded processors to CPUID 8F_01
    [Zen4] introducing Phoenix and Dragon Range
    [RMB] adding the Ryzen Embedded V3000 processors
    [VMR] adding the "AMD Ryzen 9 PRO 5945"
  * [Intel]
    Adding Granite Rapids, Sierra Forest, Grand Ridge entries
    Adding "Lunar Lake" and "Arrow Lake" entries.
  * [UI]
    Optimized decimal to digits converter
    Allow task tracker to select up to pid_max
    Can trace the frozen states of Linux tasks.
    Only print HWP frequencies within bounds.
    Fix ruler's aggregation.
  * [CR]
    Check CPUID[HV_PARTITION_PRIVILEGE_MASK] for HV_X64_MSR_VP_RUNTIME
    Uninitialized variable fix.
    [CPPC] Build EPP with KERNEL_VERSION(6) rather than CONFIG_CACHY
    [KERNEL] Linux 6.3: Employ modifier calls with the vma-&gt;vm_flags</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1684065600">- update to 1.96.1
  * [Driver]
  - Postpone Clock Source registration during startup until the Base Clock is computed.
  - Change class_create() according to Linux Kernel 6.4
  - Clear interrupt flag (cli) after Halt in the Idle method
  * [AMD]
  - [PHOENIX] Adding Ryzen 7940H, 7840H, 7640H
  - [VERMEER] Adding Ryzen PRO and Embedded processors
  - Ryzen Z1 CPUID' brand fix
  - Adding EPYC Embedded 9004 Series as Genoa
  - Adding EPYC Embedded 7003 Series as Milan
  - Adding EPYC Embedded 7002 Series as Rome
  - Adding EPYC Embedded 7001 Series as Naples</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1685880000">- update to 1.96.2
  * [Driver]
  - Allows compilation to keep going without CONFIG_ACPI_CPPC_LIB
  * [Client]
  - Adding two command line arguments:
  - Op Show Package C-States
  - OW Toggle Energy units
  * [AMD]
  - Specification of some Configuration MSRs</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1686830400">- update to 1.96.4
  * [AMD]
  - Display CPUID state of new and legacy features:
    Fused Multiply Add [FMA4]
    Extended Operation Support [XOP]
    Translation Cache Extension [TCE]
    Trailing Bit Manipulation [TBM]
    OS Visible Work-around [OSVW]
    LOCK prefix to read CR8 [AltMov]
  * [Intel]
  - Advanced Matrix Extensions [AMX]
  - Bits and Features of Sierra Forest and Grand Ridge
  - Attempt to decode the Meteor Lake Memory Controller
- update to 1.96.3
  * [AMD]
  - [Zeppelin] Probe more than one UMC controllers on Ryzen Threadripper 1900X
  - [Zen4] Dump SMBE and BMEC sub-leaves of CPUID 0x80000020</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1688212800">- update to 1.96.5
  * [AMD]
    Adding the "AMD Ryzen 5 5600X3D"
    Introducing the Zen4c Bergamo architecture
    Specs fixing of Embedded V-series and 3000 Series Processors
    Adding MENDOCINO, RAPHAEL Pro, PHOENIX Pro among others</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1712318400">- added preamble file for %kernel_module_package macro
- update to 1.97.1
  * added aarch64 support
  * upstream did not provide a summary changelog. Full list of commits:
    https://github.com/cyring/CoreFreq/compare/1.96.5...1.97.1</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715860800">- update to 1.97.2
  * [AMD]
  - [Hawk Point] Adding Ryzen PRO processors
  - [Phoenix] Adding the unlocked Ryzen 8000 Series
  * [Intel]
  - [MeteorLake] New bits specified
  - EEO and R2H bits inversion fix in MSR_POWER_CTL (0x1fc)
  - Reverse specification of MSR UNCORE_PERF_STATUS
  - Prefetchers fix of L1 Scrubbing, L1 Next Page and L2 AMP
  * [AArch64]
  - Providing Exclusive Load/Store to atomic operations
  - Improved asm of various macro functions
  - Removed LEGACY macros
  - Optimized the CORE_COUNT macros
  - Marked the Tools feature as nominal: Stress functions available
  - Allow user access to Retired Instructions counter
  - Fix Instructions counter overflow
  - Other PMC enhancements
  * [CR]
  - Fix a building issue with AlmaLinux aka RHEL-9
  - Linux kernel 6.9: Avoid redefinition of Intel MSR macros
  * [Doc]
  - README section for AlmaLinux
  - CONFIG_TRIM_UNUSED_KSYMS kernel build config is forbidden</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715947200">- fix dependency on kernel module that was not versioned</changelog>
</package>
<package pkgid="104192f0bd942e5b07887c7fb229501d8a60877678b6a35c7a24c8b1b115534a0bdfb12b34592fc761ed879e7d85fe6f740fa4df7b357bee0be0e21047f4c431" name="CoreFreq" arch="src">
  <version epoch="0" ver="1.97.2" rel="2.4"/>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1655899200">- Update to version 1.91.3
  * No changelog was made available by upstream</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1661169600">- Update to version 1.91.6
  - [AMD/Zen][UMC] Fixed the Mem Clock and ECC regressions
  - Designate the Package identifier in Power consumed readings
  - [Intel/ADL/IMC] Guessing activated channel from the populated DIMM
  - [AMD][UMC, IOMMU] Adding missing DID of family 19h devices
  - [AMD_DataFabric_Cezanne] Removed the Experimental mode
  - Intel/ADL/IMC: Fixing the Memory Channels count
  - [AMD/Zen] Improved UMC mapping. Threadripper 3960X issue
  - Avoid some NULL pointer strings during SMBIOS decoding</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1667563200">- update to version 1.92.3
  - Export CPUID bits Intel Sierra Forest, Grand Ridge, Granite Rapids
    and completes AMD64 Fn0000_0007_ECX_x0
  - [Features] WBNOINVD and CLZERO instructions
  - Adding various Mitigation Mechanism aggregations:
    IPRED_DIS_U, IPRED_DIS_S, RRSBA_DIS_U, RRSBA_DIS_S, BHI_DIS_S, MCDT_NO
  - RDPID and UMIP capability fixed.
  - [AMD] Perf. Mon. version based on CPUID_0x80000022.EAX.PerfMonV2
  - [AMD][Zen3+][Rembrandt] Trigger UMC and IOMMU decoders
  - [AMD][Ryzen 5 6600H] Found voltage VID @ SMU 0x6f010 and 0x6f014
  - Introducing AMD Security Feature capabilities:
    SKINIT, SEV, GMET, SEV-ES, SEV-SNP
  - [AMD64] Non-architectural MSR: SPECULATIVE STORE BYPASS DISABLE
  - [Intel][2nd &amp; 3rd gen] Misc IMC optimizations
  - [AMD][Rembrandt] Provides Vcore from a new formula.
  - Dumping CPUID leaves from AMD64 Architecture Programmer’s Manual
  - [Intel][HSW &amp; BDW] Compute the DIMM banks
  - [UI] Re-assigned keys to move or resize windows.
  - [AMD][Zen] Uncore frequency: Improving the Memory Clock divisor
  - [Intel][HSW &amp; BDW][SKL] Make use of same function DimmWidthToRows
  - [AMD][Zen3+][Rembrandt] Provides the thermal sensor.
  - [AMD/Zen2 &amp; Zen3] Removed the HSMP capability.
  - [Intel][CML][RKL][TGL] Compute the DIMM Rows from CH_WIDTH
  - [AMD/EPYC] Adding the CPUID of Zen4 Genoa architecture
  - [AMD/Zen2] Introducing Mendocino architecture
  - Changed MeteorLake/N to CPUID 06_B5
  - [Intel] Computes BIOS DRAM frequency based on PLL_REF100
  - [Intel][SNB/IVB/HSW/BDW] Improved BIOS DRAM frequency
  - [Intel][SNB/IVB] DRAM frequency based on RAM_Select and FSB_Select
  - [Intel][IVB] IMC specifications and optimizations.
  - [Intel][SNB,IVB] Computes the DIMM A from DAS bit in MAD register
  - [Intel][SNB,IVB,HSW,BDW] Rolling back changes to the DIMM topology
  - [Intel][BDW][HSW] Query the IMC Power Down Mode
  - [Intel][IVB][SNB] Attempt to decode the IMC third timings
  - [AMD][Ryzen] Added AMD Ryzen 7 PRO 6860Z
  - [AMD][F17h-F19h] Can toggle ON and OFF the Instruction Cache Unit
  - [AMD] Checking the Ryzen "OEM Only" processors
  - [Intel] Specification of 12th Gen. MSR registers capability
  - [Intel] Adding Raptor Lake-S with CPUID 06_BF
  - [AMD] Introducing Zen 4 / Raphael architecture
  - [Intel][SNB,IVB,HSW] Attempt to assign the Rank per DIMM slot
  - [Intel][SNB,IVB,HSW] Attempt to fix the DIMM(s) topology layout
  - ClockSource: TSC udelay() asm implementation builtin as a default
  - [Intel][Alder Lake] Adding IMC entry for i5-12500 processor
  - [Intel][Alder Lake] Added default case if Processor has only Pcores
  - [Intel][Atom/Bonnell][IMC] Attempt to compute the DIMM geometry
  - [UI][Custom view] Show the Uncore unit in watt or joule
  - [UI] Display HWP or CPPC in footer for capable processors.
  - [CLI] Added HWP Capabilities and HWP Request to the JSON export
  - [CLI] Don't allow the HWP dialog box if feature is not available.
  - [CPPC][Firmware] allows (de)activation of the feature.
  - [CLI] Added CPU ratios to JSON export
  - [CPPC] Improved scaling
  - [CPPC] Build fixed down to Kernel version 3
  - [Kernel/ACPI] Attempt to write CPPC registers</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1667563201">- Repair deficient description grammar.</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1670241600">- update to 1.92.4:
  * [Intel/Skylake-X] Permits MSR_RING_PERF_LIMIT_REASONS</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1670932800">- removed modprobe_corefreqd.service.patch and harden_corefreqd.service.patch
  now included in new corefreqd.service file replacing stock one
- update to 1.93.1
  * [PRJ] CoreFreq version 1.93.1
  * [ACPI/CPPC/EPP] Preview of AMD/Zen Energy Preference (CONFIG_CACHY)
  * [UI] Changed the HWP or CPPC ratio bounds.
  * [FIX] Putting `corefreqd` in the root cgroup (issue #379) Thanks to gel-crabs
  * [DOC] Parameters to blacklist the amd_pstate since kernel 6.0.11
  * [AMD][Zen4] Apply a voltage formula based on Rembrandt's. (#378)
  * [AMD][Zen4/Raphael] Attempting temperature per CCD from TCTL+0x308
  * [AMD][Zen4] Changed Timer loop
  * [CR] CLI code review and UI optimizations
  * [UI] Auto refresh the Topology items when off/online
  * [CR] Conditionally build with additional PMC Counters
  * [Intel] Adding Z8000 System Memory Controller Registers
  * [CR] Transformed global variable in cells padding
  * [UI] Windows re-scaling fix
  * [UI] Apply color theming to the CPPC capabilities list.
  * [AMD][Raphael] Adding device DIDs to probe UMC and IOMMU
  * [CPPC/FMW] Computes value bounds while Enabling/Disabling firmware
  * [CR] CPPC lib errors are now raised to Debug level
  * [AMD][Zen4] Increased the UMC size to 12 channels.
  * [CPPC] Handles the OffLine CPU case.
  * [CLI] Refactoring HWP/CPPC to print all capabilities per CPU
  * [ACPI] Computes the CPPC Bounds
  * [Intel] Linear Address Masking (LAM)
  * [CLI] EFER: Left aligned labels
  * [AMD] Reports UAIE and AIBRSE bits from EFER system register
  * [CLI] Changed mitigation mechanisms incapability labels
  * [AMD][Zen2] Mitigation Mechanism BTC-NOBR * ACPI/OSPM documentation
  * [CR] Code review on bit masks
  * [CPPC][ACPI] Kernel may decode the Guaranteed Performance Register
  * [UI] Optimize the cycles to clear the time bar.
  * [CR] Code review for extra compiler warnings
  * [UI] Time of the day displayed in the right side of menu
  * [UI] Display the current date and time in menu bar
  * [Kernel] Introducing support of `CONFIG_SCHED_BORE`
  * [CLI] Fixing ambiguous CPPC report: hardware vs firmware
  * [CLI] Surrounds _CPC feature with square brackets
  * [CPPC] Provides the ACPI _CPC object state.
  * [UI] Colors the task being tracked in the tracking list
  * [UI] Display the current time in the menu bar
  * [CLI] Reserve the programmable TDP section to Intel processors.
  * [AMD/Zen3+] Improving the DIMM geometry of Rembrandt UMC</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1672747200">- update to 1.94.1:
  * [Intel] Gemini Lake
  * [AMD] Ryzen 5 6600 H SoC, UMC channels
  * [AMD] Rembrandt: maximum of two UMC channels
  * [AMD] Raphael: Decodes DIMM geometry from AddrCfg
  * [AMD] Zen: Aggregation refactored
  * [AMD] Improved DDR5 clock decoding
  * Optimized Idle Loop</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1673006400">- update to 1.94.3:
  * [AMD][RMB] If UMC is quad channels then unpopulate odd channels
  * [AMD][RPL] Provide Service Processor Vcore as workaround
  * [UI] Auto size and lay performance capabilities window
  * [UI] Adding comments to the EEO and R2H technologies
  * [AMD][Raphael] 7950X3D, 7900X3D. support</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1674475200">- update to 1.95.1:
  * [Intel] RPL: voltage of Pcore, Ecore, System Agent
  * [Intel] RPL and ADL Chipset device IDs
  * [Intel] Decode the RPL IMC and improve DDR5 support
  * [Build] Raise `MAX_FREQ_HZ` up to 7125000000 Hertz
  * [Intel] Mobile {Coffee Lake, Kaby Lake} codenames
  * [Intel] Braswell codename detection
  * [AMD] SYSCFG Register
  * [AMD] EPYC 9654
  * [AMD] Transparent SME
  * [AMD] DRAM Data Scrambling
  * [AMD] Adding "Barcelo R" and "Rembrandt R"</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1675944000">- update to 1.95.2:
  * Fixed the aggregation of the minimum ratio
  Intel:
  * [Airmont][Silvermont] Attempt to decode `tCKE` from DRMC
    register
  * [Airmont] Improve `tWTPr`, `B2B`, `tWWDR` timings
  * [Airmont] Provide a new IMC decoder
  * Add the Emerald Rapids architecture entry
  * [DDR5][DDR4] Add the `RCDw` IMC timing
  * [Raptor Lake ] De-activate the MSR Uncore counter
  AMD:
  * "Zen3/Barcelo-R" and "Zen3+ Rembrandt-R" codenames
  * [Zen] Thermal highest limit reset fix
  Misc:
  * Code review and Registers documentation:
    AMD HWCR, Intel HDC and DRP</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677067200">- update to 1.95.4
  * [Intel] [from 11th to 14th gen]
    Convert the DRAM Speed to MT/s unit
    Compute the Bus Rate based on the BIOS MC PLL
- update to 1.95.3
  * [Intel] [Airmont]
    Improved the IMC geometry
    Introducing the Spreadtrum architecture
    Fixed the Bus and DRAM frequency rates
  * [Intel] [from 11th to 13th gen] Attempt to probe the interleaved controllers
  * [Intel] [Alder Lake/H] Attempt to decode the TCO Watchdog</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677153600">- added leap_compile_fix.patch to fix compilation on Leap</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1683115200">- removed leap_compile_fix.patch no needed anymore
- update to 1.96.0
  * [AMD]
    [RPL/X3D] Disabling the turbo boosted P-states change
    [PHOENIX] Adding Z1, U and HS PRO series.
    [Genoa] DAC address at UMC BAR + 0x40
    [Zen4] Adding the PCI entries of Genoa
    [Zen2] Adding remaining PCI entries
    [Zen] Query DAC &amp; CFG with the right UMC base address register
    [Zen4] Dump the CPUID Extended CPU Topology leaves.
    [Zen][Embedded][Banded Kestrel] R1000 Processor Family
    [Zen][Embedded] "Great Horned Owl", "River Hawk", "Grey Hawk"
    Complete the "Raven Ridge" and "Picasso" lists
    [EPYC] Moved "Snowy Owl" Embedded processors to CPUID 8F_01
    [Zen4] introducing Phoenix and Dragon Range
    [RMB] adding the Ryzen Embedded V3000 processors
    [VMR] adding the "AMD Ryzen 9 PRO 5945"
  * [Intel]
    Adding Granite Rapids, Sierra Forest, Grand Ridge entries
    Adding "Lunar Lake" and "Arrow Lake" entries.
  * [UI]
    Optimized decimal to digits converter
    Allow task tracker to select up to pid_max
    Can trace the frozen states of Linux tasks.
    Only print HWP frequencies within bounds.
    Fix ruler's aggregation.
  * [CR]
    Check CPUID[HV_PARTITION_PRIVILEGE_MASK] for HV_X64_MSR_VP_RUNTIME
    Uninitialized variable fix.
    [CPPC] Build EPP with KERNEL_VERSION(6) rather than CONFIG_CACHY
    [KERNEL] Linux 6.3: Employ modifier calls with the vma-&gt;vm_flags</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1684065600">- update to 1.96.1
  * [Driver]
  - Postpone Clock Source registration during startup until the Base Clock is computed.
  - Change class_create() according to Linux Kernel 6.4
  - Clear interrupt flag (cli) after Halt in the Idle method
  * [AMD]
  - [PHOENIX] Adding Ryzen 7940H, 7840H, 7640H
  - [VERMEER] Adding Ryzen PRO and Embedded processors
  - Ryzen Z1 CPUID' brand fix
  - Adding EPYC Embedded 9004 Series as Genoa
  - Adding EPYC Embedded 7003 Series as Milan
  - Adding EPYC Embedded 7002 Series as Rome
  - Adding EPYC Embedded 7001 Series as Naples</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1685880000">- update to 1.96.2
  * [Driver]
  - Allows compilation to keep going without CONFIG_ACPI_CPPC_LIB
  * [Client]
  - Adding two command line arguments:
  - Op Show Package C-States
  - OW Toggle Energy units
  * [AMD]
  - Specification of some Configuration MSRs</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1686830400">- update to 1.96.4
  * [AMD]
  - Display CPUID state of new and legacy features:
    Fused Multiply Add [FMA4]
    Extended Operation Support [XOP]
    Translation Cache Extension [TCE]
    Trailing Bit Manipulation [TBM]
    OS Visible Work-around [OSVW]
    LOCK prefix to read CR8 [AltMov]
  * [Intel]
  - Advanced Matrix Extensions [AMX]
  - Bits and Features of Sierra Forest and Grand Ridge
  - Attempt to decode the Meteor Lake Memory Controller
- update to 1.96.3
  * [AMD]
  - [Zeppelin] Probe more than one UMC controllers on Ryzen Threadripper 1900X
  - [Zen4] Dump SMBE and BMEC sub-leaves of CPUID 0x80000020</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1688212800">- update to 1.96.5
  * [AMD]
    Adding the "AMD Ryzen 5 5600X3D"
    Introducing the Zen4c Bergamo architecture
    Specs fixing of Embedded V-series and 3000 Series Processors
    Adding MENDOCINO, RAPHAEL Pro, PHOENIX Pro among others</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1712318400">- added preamble file for %kernel_module_package macro
- update to 1.97.1
  * added aarch64 support
  * upstream did not provide a summary changelog. Full list of commits:
    https://github.com/cyring/CoreFreq/compare/1.96.5...1.97.1</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715860800">- update to 1.97.2
  * [AMD]
  - [Hawk Point] Adding Ryzen PRO processors
  - [Phoenix] Adding the unlocked Ryzen 8000 Series
  * [Intel]
  - [MeteorLake] New bits specified
  - EEO and R2H bits inversion fix in MSR_POWER_CTL (0x1fc)
  - Reverse specification of MSR UNCORE_PERF_STATUS
  - Prefetchers fix of L1 Scrubbing, L1 Next Page and L2 AMP
  * [AArch64]
  - Providing Exclusive Load/Store to atomic operations
  - Improved asm of various macro functions
  - Removed LEGACY macros
  - Optimized the CORE_COUNT macros
  - Marked the Tools feature as nominal: Stress functions available
  - Allow user access to Retired Instructions counter
  - Fix Instructions counter overflow
  - Other PMC enhancements
  * [CR]
  - Fix a building issue with AlmaLinux aka RHEL-9
  - Linux kernel 6.9: Avoid redefinition of Intel MSR macros
  * [Doc]
  - README section for AlmaLinux
  - CONFIG_TRIM_UNUSED_KSYMS kernel build config is forbidden</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715947200">- fix dependency on kernel module that was not versioned</changelog>
</package>
<package pkgid="fd548ad68f9c72a5369eb50a92c1f99cbc67ffdbcf9aa0f45a4aebc1dfab9a1574bb3b66f5fbb026b8f05193066396da6cb4ee96214980115baf5ec9c835aee7" name="CoreFreq" arch="x86_64">
  <version epoch="0" ver="1.97.2" rel="2.4"/>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1655899200">- Update to version 1.91.3
  * No changelog was made available by upstream</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1661169600">- Update to version 1.91.6
  - [AMD/Zen][UMC] Fixed the Mem Clock and ECC regressions
  - Designate the Package identifier in Power consumed readings
  - [Intel/ADL/IMC] Guessing activated channel from the populated DIMM
  - [AMD][UMC, IOMMU] Adding missing DID of family 19h devices
  - [AMD_DataFabric_Cezanne] Removed the Experimental mode
  - Intel/ADL/IMC: Fixing the Memory Channels count
  - [AMD/Zen] Improved UMC mapping. Threadripper 3960X issue
  - Avoid some NULL pointer strings during SMBIOS decoding</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1667563200">- update to version 1.92.3
  - Export CPUID bits Intel Sierra Forest, Grand Ridge, Granite Rapids
    and completes AMD64 Fn0000_0007_ECX_x0
  - [Features] WBNOINVD and CLZERO instructions
  - Adding various Mitigation Mechanism aggregations:
    IPRED_DIS_U, IPRED_DIS_S, RRSBA_DIS_U, RRSBA_DIS_S, BHI_DIS_S, MCDT_NO
  - RDPID and UMIP capability fixed.
  - [AMD] Perf. Mon. version based on CPUID_0x80000022.EAX.PerfMonV2
  - [AMD][Zen3+][Rembrandt] Trigger UMC and IOMMU decoders
  - [AMD][Ryzen 5 6600H] Found voltage VID @ SMU 0x6f010 and 0x6f014
  - Introducing AMD Security Feature capabilities:
    SKINIT, SEV, GMET, SEV-ES, SEV-SNP
  - [AMD64] Non-architectural MSR: SPECULATIVE STORE BYPASS DISABLE
  - [Intel][2nd &amp; 3rd gen] Misc IMC optimizations
  - [AMD][Rembrandt] Provides Vcore from a new formula.
  - Dumping CPUID leaves from AMD64 Architecture Programmer’s Manual
  - [Intel][HSW &amp; BDW] Compute the DIMM banks
  - [UI] Re-assigned keys to move or resize windows.
  - [AMD][Zen] Uncore frequency: Improving the Memory Clock divisor
  - [Intel][HSW &amp; BDW][SKL] Make use of same function DimmWidthToRows
  - [AMD][Zen3+][Rembrandt] Provides the thermal sensor.
  - [AMD/Zen2 &amp; Zen3] Removed the HSMP capability.
  - [Intel][CML][RKL][TGL] Compute the DIMM Rows from CH_WIDTH
  - [AMD/EPYC] Adding the CPUID of Zen4 Genoa architecture
  - [AMD/Zen2] Introducing Mendocino architecture
  - Changed MeteorLake/N to CPUID 06_B5
  - [Intel] Computes BIOS DRAM frequency based on PLL_REF100
  - [Intel][SNB/IVB/HSW/BDW] Improved BIOS DRAM frequency
  - [Intel][SNB/IVB] DRAM frequency based on RAM_Select and FSB_Select
  - [Intel][IVB] IMC specifications and optimizations.
  - [Intel][SNB,IVB] Computes the DIMM A from DAS bit in MAD register
  - [Intel][SNB,IVB,HSW,BDW] Rolling back changes to the DIMM topology
  - [Intel][BDW][HSW] Query the IMC Power Down Mode
  - [Intel][IVB][SNB] Attempt to decode the IMC third timings
  - [AMD][Ryzen] Added AMD Ryzen 7 PRO 6860Z
  - [AMD][F17h-F19h] Can toggle ON and OFF the Instruction Cache Unit
  - [AMD] Checking the Ryzen "OEM Only" processors
  - [Intel] Specification of 12th Gen. MSR registers capability
  - [Intel] Adding Raptor Lake-S with CPUID 06_BF
  - [AMD] Introducing Zen 4 / Raphael architecture
  - [Intel][SNB,IVB,HSW] Attempt to assign the Rank per DIMM slot
  - [Intel][SNB,IVB,HSW] Attempt to fix the DIMM(s) topology layout
  - ClockSource: TSC udelay() asm implementation builtin as a default
  - [Intel][Alder Lake] Adding IMC entry for i5-12500 processor
  - [Intel][Alder Lake] Added default case if Processor has only Pcores
  - [Intel][Atom/Bonnell][IMC] Attempt to compute the DIMM geometry
  - [UI][Custom view] Show the Uncore unit in watt or joule
  - [UI] Display HWP or CPPC in footer for capable processors.
  - [CLI] Added HWP Capabilities and HWP Request to the JSON export
  - [CLI] Don't allow the HWP dialog box if feature is not available.
  - [CPPC][Firmware] allows (de)activation of the feature.
  - [CLI] Added CPU ratios to JSON export
  - [CPPC] Improved scaling
  - [CPPC] Build fixed down to Kernel version 3
  - [Kernel/ACPI] Attempt to write CPPC registers</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1667563201">- Repair deficient description grammar.</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1670241600">- update to 1.92.4:
  * [Intel/Skylake-X] Permits MSR_RING_PERF_LIMIT_REASONS</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1670932800">- removed modprobe_corefreqd.service.patch and harden_corefreqd.service.patch
  now included in new corefreqd.service file replacing stock one
- update to 1.93.1
  * [PRJ] CoreFreq version 1.93.1
  * [ACPI/CPPC/EPP] Preview of AMD/Zen Energy Preference (CONFIG_CACHY)
  * [UI] Changed the HWP or CPPC ratio bounds.
  * [FIX] Putting `corefreqd` in the root cgroup (issue #379) Thanks to gel-crabs
  * [DOC] Parameters to blacklist the amd_pstate since kernel 6.0.11
  * [AMD][Zen4] Apply a voltage formula based on Rembrandt's. (#378)
  * [AMD][Zen4/Raphael] Attempting temperature per CCD from TCTL+0x308
  * [AMD][Zen4] Changed Timer loop
  * [CR] CLI code review and UI optimizations
  * [UI] Auto refresh the Topology items when off/online
  * [CR] Conditionally build with additional PMC Counters
  * [Intel] Adding Z8000 System Memory Controller Registers
  * [CR] Transformed global variable in cells padding
  * [UI] Windows re-scaling fix
  * [UI] Apply color theming to the CPPC capabilities list.
  * [AMD][Raphael] Adding device DIDs to probe UMC and IOMMU
  * [CPPC/FMW] Computes value bounds while Enabling/Disabling firmware
  * [CR] CPPC lib errors are now raised to Debug level
  * [AMD][Zen4] Increased the UMC size to 12 channels.
  * [CPPC] Handles the OffLine CPU case.
  * [CLI] Refactoring HWP/CPPC to print all capabilities per CPU
  * [ACPI] Computes the CPPC Bounds
  * [Intel] Linear Address Masking (LAM)
  * [CLI] EFER: Left aligned labels
  * [AMD] Reports UAIE and AIBRSE bits from EFER system register
  * [CLI] Changed mitigation mechanisms incapability labels
  * [AMD][Zen2] Mitigation Mechanism BTC-NOBR * ACPI/OSPM documentation
  * [CR] Code review on bit masks
  * [CPPC][ACPI] Kernel may decode the Guaranteed Performance Register
  * [UI] Optimize the cycles to clear the time bar.
  * [CR] Code review for extra compiler warnings
  * [UI] Time of the day displayed in the right side of menu
  * [UI] Display the current date and time in menu bar
  * [Kernel] Introducing support of `CONFIG_SCHED_BORE`
  * [CLI] Fixing ambiguous CPPC report: hardware vs firmware
  * [CLI] Surrounds _CPC feature with square brackets
  * [CPPC] Provides the ACPI _CPC object state.
  * [UI] Colors the task being tracked in the tracking list
  * [UI] Display the current time in the menu bar
  * [CLI] Reserve the programmable TDP section to Intel processors.
  * [AMD/Zen3+] Improving the DIMM geometry of Rembrandt UMC</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1672747200">- update to 1.94.1:
  * [Intel] Gemini Lake
  * [AMD] Ryzen 5 6600 H SoC, UMC channels
  * [AMD] Rembrandt: maximum of two UMC channels
  * [AMD] Raphael: Decodes DIMM geometry from AddrCfg
  * [AMD] Zen: Aggregation refactored
  * [AMD] Improved DDR5 clock decoding
  * Optimized Idle Loop</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1673006400">- update to 1.94.3:
  * [AMD][RMB] If UMC is quad channels then unpopulate odd channels
  * [AMD][RPL] Provide Service Processor Vcore as workaround
  * [UI] Auto size and lay performance capabilities window
  * [UI] Adding comments to the EEO and R2H technologies
  * [AMD][Raphael] 7950X3D, 7900X3D. support</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1674475200">- update to 1.95.1:
  * [Intel] RPL: voltage of Pcore, Ecore, System Agent
  * [Intel] RPL and ADL Chipset device IDs
  * [Intel] Decode the RPL IMC and improve DDR5 support
  * [Build] Raise `MAX_FREQ_HZ` up to 7125000000 Hertz
  * [Intel] Mobile {Coffee Lake, Kaby Lake} codenames
  * [Intel] Braswell codename detection
  * [AMD] SYSCFG Register
  * [AMD] EPYC 9654
  * [AMD] Transparent SME
  * [AMD] DRAM Data Scrambling
  * [AMD] Adding "Barcelo R" and "Rembrandt R"</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1675944000">- update to 1.95.2:
  * Fixed the aggregation of the minimum ratio
  Intel:
  * [Airmont][Silvermont] Attempt to decode `tCKE` from DRMC
    register
  * [Airmont] Improve `tWTPr`, `B2B`, `tWWDR` timings
  * [Airmont] Provide a new IMC decoder
  * Add the Emerald Rapids architecture entry
  * [DDR5][DDR4] Add the `RCDw` IMC timing
  * [Raptor Lake ] De-activate the MSR Uncore counter
  AMD:
  * "Zen3/Barcelo-R" and "Zen3+ Rembrandt-R" codenames
  * [Zen] Thermal highest limit reset fix
  Misc:
  * Code review and Registers documentation:
    AMD HWCR, Intel HDC and DRP</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677067200">- update to 1.95.4
  * [Intel] [from 11th to 14th gen]
    Convert the DRAM Speed to MT/s unit
    Compute the Bus Rate based on the BIOS MC PLL
- update to 1.95.3
  * [Intel] [Airmont]
    Improved the IMC geometry
    Introducing the Spreadtrum architecture
    Fixed the Bus and DRAM frequency rates
  * [Intel] [from 11th to 13th gen] Attempt to probe the interleaved controllers
  * [Intel] [Alder Lake/H] Attempt to decode the TCO Watchdog</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677153600">- added leap_compile_fix.patch to fix compilation on Leap</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1683115200">- removed leap_compile_fix.patch no needed anymore
- update to 1.96.0
  * [AMD]
    [RPL/X3D] Disabling the turbo boosted P-states change
    [PHOENIX] Adding Z1, U and HS PRO series.
    [Genoa] DAC address at UMC BAR + 0x40
    [Zen4] Adding the PCI entries of Genoa
    [Zen2] Adding remaining PCI entries
    [Zen] Query DAC &amp; CFG with the right UMC base address register
    [Zen4] Dump the CPUID Extended CPU Topology leaves.
    [Zen][Embedded][Banded Kestrel] R1000 Processor Family
    [Zen][Embedded] "Great Horned Owl", "River Hawk", "Grey Hawk"
    Complete the "Raven Ridge" and "Picasso" lists
    [EPYC] Moved "Snowy Owl" Embedded processors to CPUID 8F_01
    [Zen4] introducing Phoenix and Dragon Range
    [RMB] adding the Ryzen Embedded V3000 processors
    [VMR] adding the "AMD Ryzen 9 PRO 5945"
  * [Intel]
    Adding Granite Rapids, Sierra Forest, Grand Ridge entries
    Adding "Lunar Lake" and "Arrow Lake" entries.
  * [UI]
    Optimized decimal to digits converter
    Allow task tracker to select up to pid_max
    Can trace the frozen states of Linux tasks.
    Only print HWP frequencies within bounds.
    Fix ruler's aggregation.
  * [CR]
    Check CPUID[HV_PARTITION_PRIVILEGE_MASK] for HV_X64_MSR_VP_RUNTIME
    Uninitialized variable fix.
    [CPPC] Build EPP with KERNEL_VERSION(6) rather than CONFIG_CACHY
    [KERNEL] Linux 6.3: Employ modifier calls with the vma-&gt;vm_flags</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1684065600">- update to 1.96.1
  * [Driver]
  - Postpone Clock Source registration during startup until the Base Clock is computed.
  - Change class_create() according to Linux Kernel 6.4
  - Clear interrupt flag (cli) after Halt in the Idle method
  * [AMD]
  - [PHOENIX] Adding Ryzen 7940H, 7840H, 7640H
  - [VERMEER] Adding Ryzen PRO and Embedded processors
  - Ryzen Z1 CPUID' brand fix
  - Adding EPYC Embedded 9004 Series as Genoa
  - Adding EPYC Embedded 7003 Series as Milan
  - Adding EPYC Embedded 7002 Series as Rome
  - Adding EPYC Embedded 7001 Series as Naples</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1685880000">- update to 1.96.2
  * [Driver]
  - Allows compilation to keep going without CONFIG_ACPI_CPPC_LIB
  * [Client]
  - Adding two command line arguments:
  - Op Show Package C-States
  - OW Toggle Energy units
  * [AMD]
  - Specification of some Configuration MSRs</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1686830400">- update to 1.96.4
  * [AMD]
  - Display CPUID state of new and legacy features:
    Fused Multiply Add [FMA4]
    Extended Operation Support [XOP]
    Translation Cache Extension [TCE]
    Trailing Bit Manipulation [TBM]
    OS Visible Work-around [OSVW]
    LOCK prefix to read CR8 [AltMov]
  * [Intel]
  - Advanced Matrix Extensions [AMX]
  - Bits and Features of Sierra Forest and Grand Ridge
  - Attempt to decode the Meteor Lake Memory Controller
- update to 1.96.3
  * [AMD]
  - [Zeppelin] Probe more than one UMC controllers on Ryzen Threadripper 1900X
  - [Zen4] Dump SMBE and BMEC sub-leaves of CPUID 0x80000020</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1688212800">- update to 1.96.5
  * [AMD]
    Adding the "AMD Ryzen 5 5600X3D"
    Introducing the Zen4c Bergamo architecture
    Specs fixing of Embedded V-series and 3000 Series Processors
    Adding MENDOCINO, RAPHAEL Pro, PHOENIX Pro among others</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1712318400">- added preamble file for %kernel_module_package macro
- update to 1.97.1
  * added aarch64 support
  * upstream did not provide a summary changelog. Full list of commits:
    https://github.com/cyring/CoreFreq/compare/1.96.5...1.97.1</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715860800">- update to 1.97.2
  * [AMD]
  - [Hawk Point] Adding Ryzen PRO processors
  - [Phoenix] Adding the unlocked Ryzen 8000 Series
  * [Intel]
  - [MeteorLake] New bits specified
  - EEO and R2H bits inversion fix in MSR_POWER_CTL (0x1fc)
  - Reverse specification of MSR UNCORE_PERF_STATUS
  - Prefetchers fix of L1 Scrubbing, L1 Next Page and L2 AMP
  * [AArch64]
  - Providing Exclusive Load/Store to atomic operations
  - Improved asm of various macro functions
  - Removed LEGACY macros
  - Optimized the CORE_COUNT macros
  - Marked the Tools feature as nominal: Stress functions available
  - Allow user access to Retired Instructions counter
  - Fix Instructions counter overflow
  - Other PMC enhancements
  * [CR]
  - Fix a building issue with AlmaLinux aka RHEL-9
  - Linux kernel 6.9: Avoid redefinition of Intel MSR macros
  * [Doc]
  - README section for AlmaLinux
  - CONFIG_TRIM_UNUSED_KSYMS kernel build config is forbidden</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715947200">- fix dependency on kernel module that was not versioned</changelog>
</package>
<package pkgid="ceb05b6cf6d415c1f9c31e497582e84a0e3a34fc0b72425b2fcd07d6817ccb3f02dedb81eec15da7a3500737a3c6c53a3233e50677ef2e0976f2178d50434582" name="CoreFreq" arch="src">
  <version epoch="0" ver="1.97.2" rel="2.5"/>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1655899200">- Update to version 1.91.3
  * No changelog was made available by upstream</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1661169600">- Update to version 1.91.6
  - [AMD/Zen][UMC] Fixed the Mem Clock and ECC regressions
  - Designate the Package identifier in Power consumed readings
  - [Intel/ADL/IMC] Guessing activated channel from the populated DIMM
  - [AMD][UMC, IOMMU] Adding missing DID of family 19h devices
  - [AMD_DataFabric_Cezanne] Removed the Experimental mode
  - Intel/ADL/IMC: Fixing the Memory Channels count
  - [AMD/Zen] Improved UMC mapping. Threadripper 3960X issue
  - Avoid some NULL pointer strings during SMBIOS decoding</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1667563200">- update to version 1.92.3
  - Export CPUID bits Intel Sierra Forest, Grand Ridge, Granite Rapids
    and completes AMD64 Fn0000_0007_ECX_x0
  - [Features] WBNOINVD and CLZERO instructions
  - Adding various Mitigation Mechanism aggregations:
    IPRED_DIS_U, IPRED_DIS_S, RRSBA_DIS_U, RRSBA_DIS_S, BHI_DIS_S, MCDT_NO
  - RDPID and UMIP capability fixed.
  - [AMD] Perf. Mon. version based on CPUID_0x80000022.EAX.PerfMonV2
  - [AMD][Zen3+][Rembrandt] Trigger UMC and IOMMU decoders
  - [AMD][Ryzen 5 6600H] Found voltage VID @ SMU 0x6f010 and 0x6f014
  - Introducing AMD Security Feature capabilities:
    SKINIT, SEV, GMET, SEV-ES, SEV-SNP
  - [AMD64] Non-architectural MSR: SPECULATIVE STORE BYPASS DISABLE
  - [Intel][2nd &amp; 3rd gen] Misc IMC optimizations
  - [AMD][Rembrandt] Provides Vcore from a new formula.
  - Dumping CPUID leaves from AMD64 Architecture Programmer’s Manual
  - [Intel][HSW &amp; BDW] Compute the DIMM banks
  - [UI] Re-assigned keys to move or resize windows.
  - [AMD][Zen] Uncore frequency: Improving the Memory Clock divisor
  - [Intel][HSW &amp; BDW][SKL] Make use of same function DimmWidthToRows
  - [AMD][Zen3+][Rembrandt] Provides the thermal sensor.
  - [AMD/Zen2 &amp; Zen3] Removed the HSMP capability.
  - [Intel][CML][RKL][TGL] Compute the DIMM Rows from CH_WIDTH
  - [AMD/EPYC] Adding the CPUID of Zen4 Genoa architecture
  - [AMD/Zen2] Introducing Mendocino architecture
  - Changed MeteorLake/N to CPUID 06_B5
  - [Intel] Computes BIOS DRAM frequency based on PLL_REF100
  - [Intel][SNB/IVB/HSW/BDW] Improved BIOS DRAM frequency
  - [Intel][SNB/IVB] DRAM frequency based on RAM_Select and FSB_Select
  - [Intel][IVB] IMC specifications and optimizations.
  - [Intel][SNB,IVB] Computes the DIMM A from DAS bit in MAD register
  - [Intel][SNB,IVB,HSW,BDW] Rolling back changes to the DIMM topology
  - [Intel][BDW][HSW] Query the IMC Power Down Mode
  - [Intel][IVB][SNB] Attempt to decode the IMC third timings
  - [AMD][Ryzen] Added AMD Ryzen 7 PRO 6860Z
  - [AMD][F17h-F19h] Can toggle ON and OFF the Instruction Cache Unit
  - [AMD] Checking the Ryzen "OEM Only" processors
  - [Intel] Specification of 12th Gen. MSR registers capability
  - [Intel] Adding Raptor Lake-S with CPUID 06_BF
  - [AMD] Introducing Zen 4 / Raphael architecture
  - [Intel][SNB,IVB,HSW] Attempt to assign the Rank per DIMM slot
  - [Intel][SNB,IVB,HSW] Attempt to fix the DIMM(s) topology layout
  - ClockSource: TSC udelay() asm implementation builtin as a default
  - [Intel][Alder Lake] Adding IMC entry for i5-12500 processor
  - [Intel][Alder Lake] Added default case if Processor has only Pcores
  - [Intel][Atom/Bonnell][IMC] Attempt to compute the DIMM geometry
  - [UI][Custom view] Show the Uncore unit in watt or joule
  - [UI] Display HWP or CPPC in footer for capable processors.
  - [CLI] Added HWP Capabilities and HWP Request to the JSON export
  - [CLI] Don't allow the HWP dialog box if feature is not available.
  - [CPPC][Firmware] allows (de)activation of the feature.
  - [CLI] Added CPU ratios to JSON export
  - [CPPC] Improved scaling
  - [CPPC] Build fixed down to Kernel version 3
  - [Kernel/ACPI] Attempt to write CPPC registers</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1667563201">- Repair deficient description grammar.</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1670241600">- update to 1.92.4:
  * [Intel/Skylake-X] Permits MSR_RING_PERF_LIMIT_REASONS</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1670932800">- removed modprobe_corefreqd.service.patch and harden_corefreqd.service.patch
  now included in new corefreqd.service file replacing stock one
- update to 1.93.1
  * [PRJ] CoreFreq version 1.93.1
  * [ACPI/CPPC/EPP] Preview of AMD/Zen Energy Preference (CONFIG_CACHY)
  * [UI] Changed the HWP or CPPC ratio bounds.
  * [FIX] Putting `corefreqd` in the root cgroup (issue #379) Thanks to gel-crabs
  * [DOC] Parameters to blacklist the amd_pstate since kernel 6.0.11
  * [AMD][Zen4] Apply a voltage formula based on Rembrandt's. (#378)
  * [AMD][Zen4/Raphael] Attempting temperature per CCD from TCTL+0x308
  * [AMD][Zen4] Changed Timer loop
  * [CR] CLI code review and UI optimizations
  * [UI] Auto refresh the Topology items when off/online
  * [CR] Conditionally build with additional PMC Counters
  * [Intel] Adding Z8000 System Memory Controller Registers
  * [CR] Transformed global variable in cells padding
  * [UI] Windows re-scaling fix
  * [UI] Apply color theming to the CPPC capabilities list.
  * [AMD][Raphael] Adding device DIDs to probe UMC and IOMMU
  * [CPPC/FMW] Computes value bounds while Enabling/Disabling firmware
  * [CR] CPPC lib errors are now raised to Debug level
  * [AMD][Zen4] Increased the UMC size to 12 channels.
  * [CPPC] Handles the OffLine CPU case.
  * [CLI] Refactoring HWP/CPPC to print all capabilities per CPU
  * [ACPI] Computes the CPPC Bounds
  * [Intel] Linear Address Masking (LAM)
  * [CLI] EFER: Left aligned labels
  * [AMD] Reports UAIE and AIBRSE bits from EFER system register
  * [CLI] Changed mitigation mechanisms incapability labels
  * [AMD][Zen2] Mitigation Mechanism BTC-NOBR * ACPI/OSPM documentation
  * [CR] Code review on bit masks
  * [CPPC][ACPI] Kernel may decode the Guaranteed Performance Register
  * [UI] Optimize the cycles to clear the time bar.
  * [CR] Code review for extra compiler warnings
  * [UI] Time of the day displayed in the right side of menu
  * [UI] Display the current date and time in menu bar
  * [Kernel] Introducing support of `CONFIG_SCHED_BORE`
  * [CLI] Fixing ambiguous CPPC report: hardware vs firmware
  * [CLI] Surrounds _CPC feature with square brackets
  * [CPPC] Provides the ACPI _CPC object state.
  * [UI] Colors the task being tracked in the tracking list
  * [UI] Display the current time in the menu bar
  * [CLI] Reserve the programmable TDP section to Intel processors.
  * [AMD/Zen3+] Improving the DIMM geometry of Rembrandt UMC</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1672747200">- update to 1.94.1:
  * [Intel] Gemini Lake
  * [AMD] Ryzen 5 6600 H SoC, UMC channels
  * [AMD] Rembrandt: maximum of two UMC channels
  * [AMD] Raphael: Decodes DIMM geometry from AddrCfg
  * [AMD] Zen: Aggregation refactored
  * [AMD] Improved DDR5 clock decoding
  * Optimized Idle Loop</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1673006400">- update to 1.94.3:
  * [AMD][RMB] If UMC is quad channels then unpopulate odd channels
  * [AMD][RPL] Provide Service Processor Vcore as workaround
  * [UI] Auto size and lay performance capabilities window
  * [UI] Adding comments to the EEO and R2H technologies
  * [AMD][Raphael] 7950X3D, 7900X3D. support</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1674475200">- update to 1.95.1:
  * [Intel] RPL: voltage of Pcore, Ecore, System Agent
  * [Intel] RPL and ADL Chipset device IDs
  * [Intel] Decode the RPL IMC and improve DDR5 support
  * [Build] Raise `MAX_FREQ_HZ` up to 7125000000 Hertz
  * [Intel] Mobile {Coffee Lake, Kaby Lake} codenames
  * [Intel] Braswell codename detection
  * [AMD] SYSCFG Register
  * [AMD] EPYC 9654
  * [AMD] Transparent SME
  * [AMD] DRAM Data Scrambling
  * [AMD] Adding "Barcelo R" and "Rembrandt R"</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1675944000">- update to 1.95.2:
  * Fixed the aggregation of the minimum ratio
  Intel:
  * [Airmont][Silvermont] Attempt to decode `tCKE` from DRMC
    register
  * [Airmont] Improve `tWTPr`, `B2B`, `tWWDR` timings
  * [Airmont] Provide a new IMC decoder
  * Add the Emerald Rapids architecture entry
  * [DDR5][DDR4] Add the `RCDw` IMC timing
  * [Raptor Lake ] De-activate the MSR Uncore counter
  AMD:
  * "Zen3/Barcelo-R" and "Zen3+ Rembrandt-R" codenames
  * [Zen] Thermal highest limit reset fix
  Misc:
  * Code review and Registers documentation:
    AMD HWCR, Intel HDC and DRP</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677067200">- update to 1.95.4
  * [Intel] [from 11th to 14th gen]
    Convert the DRAM Speed to MT/s unit
    Compute the Bus Rate based on the BIOS MC PLL
- update to 1.95.3
  * [Intel] [Airmont]
    Improved the IMC geometry
    Introducing the Spreadtrum architecture
    Fixed the Bus and DRAM frequency rates
  * [Intel] [from 11th to 13th gen] Attempt to probe the interleaved controllers
  * [Intel] [Alder Lake/H] Attempt to decode the TCO Watchdog</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677153600">- added leap_compile_fix.patch to fix compilation on Leap</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1683115200">- removed leap_compile_fix.patch no needed anymore
- update to 1.96.0
  * [AMD]
    [RPL/X3D] Disabling the turbo boosted P-states change
    [PHOENIX] Adding Z1, U and HS PRO series.
    [Genoa] DAC address at UMC BAR + 0x40
    [Zen4] Adding the PCI entries of Genoa
    [Zen2] Adding remaining PCI entries
    [Zen] Query DAC &amp; CFG with the right UMC base address register
    [Zen4] Dump the CPUID Extended CPU Topology leaves.
    [Zen][Embedded][Banded Kestrel] R1000 Processor Family
    [Zen][Embedded] "Great Horned Owl", "River Hawk", "Grey Hawk"
    Complete the "Raven Ridge" and "Picasso" lists
    [EPYC] Moved "Snowy Owl" Embedded processors to CPUID 8F_01
    [Zen4] introducing Phoenix and Dragon Range
    [RMB] adding the Ryzen Embedded V3000 processors
    [VMR] adding the "AMD Ryzen 9 PRO 5945"
  * [Intel]
    Adding Granite Rapids, Sierra Forest, Grand Ridge entries
    Adding "Lunar Lake" and "Arrow Lake" entries.
  * [UI]
    Optimized decimal to digits converter
    Allow task tracker to select up to pid_max
    Can trace the frozen states of Linux tasks.
    Only print HWP frequencies within bounds.
    Fix ruler's aggregation.
  * [CR]
    Check CPUID[HV_PARTITION_PRIVILEGE_MASK] for HV_X64_MSR_VP_RUNTIME
    Uninitialized variable fix.
    [CPPC] Build EPP with KERNEL_VERSION(6) rather than CONFIG_CACHY
    [KERNEL] Linux 6.3: Employ modifier calls with the vma-&gt;vm_flags</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1684065600">- update to 1.96.1
  * [Driver]
  - Postpone Clock Source registration during startup until the Base Clock is computed.
  - Change class_create() according to Linux Kernel 6.4
  - Clear interrupt flag (cli) after Halt in the Idle method
  * [AMD]
  - [PHOENIX] Adding Ryzen 7940H, 7840H, 7640H
  - [VERMEER] Adding Ryzen PRO and Embedded processors
  - Ryzen Z1 CPUID' brand fix
  - Adding EPYC Embedded 9004 Series as Genoa
  - Adding EPYC Embedded 7003 Series as Milan
  - Adding EPYC Embedded 7002 Series as Rome
  - Adding EPYC Embedded 7001 Series as Naples</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1685880000">- update to 1.96.2
  * [Driver]
  - Allows compilation to keep going without CONFIG_ACPI_CPPC_LIB
  * [Client]
  - Adding two command line arguments:
  - Op Show Package C-States
  - OW Toggle Energy units
  * [AMD]
  - Specification of some Configuration MSRs</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1686830400">- update to 1.96.4
  * [AMD]
  - Display CPUID state of new and legacy features:
    Fused Multiply Add [FMA4]
    Extended Operation Support [XOP]
    Translation Cache Extension [TCE]
    Trailing Bit Manipulation [TBM]
    OS Visible Work-around [OSVW]
    LOCK prefix to read CR8 [AltMov]
  * [Intel]
  - Advanced Matrix Extensions [AMX]
  - Bits and Features of Sierra Forest and Grand Ridge
  - Attempt to decode the Meteor Lake Memory Controller
- update to 1.96.3
  * [AMD]
  - [Zeppelin] Probe more than one UMC controllers on Ryzen Threadripper 1900X
  - [Zen4] Dump SMBE and BMEC sub-leaves of CPUID 0x80000020</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1688212800">- update to 1.96.5
  * [AMD]
    Adding the "AMD Ryzen 5 5600X3D"
    Introducing the Zen4c Bergamo architecture
    Specs fixing of Embedded V-series and 3000 Series Processors
    Adding MENDOCINO, RAPHAEL Pro, PHOENIX Pro among others</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1712318400">- added preamble file for %kernel_module_package macro
- update to 1.97.1
  * added aarch64 support
  * upstream did not provide a summary changelog. Full list of commits:
    https://github.com/cyring/CoreFreq/compare/1.96.5...1.97.1</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715860800">- update to 1.97.2
  * [AMD]
  - [Hawk Point] Adding Ryzen PRO processors
  - [Phoenix] Adding the unlocked Ryzen 8000 Series
  * [Intel]
  - [MeteorLake] New bits specified
  - EEO and R2H bits inversion fix in MSR_POWER_CTL (0x1fc)
  - Reverse specification of MSR UNCORE_PERF_STATUS
  - Prefetchers fix of L1 Scrubbing, L1 Next Page and L2 AMP
  * [AArch64]
  - Providing Exclusive Load/Store to atomic operations
  - Improved asm of various macro functions
  - Removed LEGACY macros
  - Optimized the CORE_COUNT macros
  - Marked the Tools feature as nominal: Stress functions available
  - Allow user access to Retired Instructions counter
  - Fix Instructions counter overflow
  - Other PMC enhancements
  * [CR]
  - Fix a building issue with AlmaLinux aka RHEL-9
  - Linux kernel 6.9: Avoid redefinition of Intel MSR macros
  * [Doc]
  - README section for AlmaLinux
  - CONFIG_TRIM_UNUSED_KSYMS kernel build config is forbidden</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715947200">- fix dependency on kernel module that was not versioned</changelog>
</package>
<package pkgid="7c1ebb749ca77dc23a782ad06f8a525ddb51baf3fde3ead45d0b33295060af04ce6626f02c1e84c96e8b828cc9d32fb620e19a8ae47a2b2b053a6e3c73682f22" name="CoreFreq" arch="x86_64">
  <version epoch="0" ver="1.97.2" rel="2.5"/>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1655899200">- Update to version 1.91.3
  * No changelog was made available by upstream</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1661169600">- Update to version 1.91.6
  - [AMD/Zen][UMC] Fixed the Mem Clock and ECC regressions
  - Designate the Package identifier in Power consumed readings
  - [Intel/ADL/IMC] Guessing activated channel from the populated DIMM
  - [AMD][UMC, IOMMU] Adding missing DID of family 19h devices
  - [AMD_DataFabric_Cezanne] Removed the Experimental mode
  - Intel/ADL/IMC: Fixing the Memory Channels count
  - [AMD/Zen] Improved UMC mapping. Threadripper 3960X issue
  - Avoid some NULL pointer strings during SMBIOS decoding</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1667563200">- update to version 1.92.3
  - Export CPUID bits Intel Sierra Forest, Grand Ridge, Granite Rapids
    and completes AMD64 Fn0000_0007_ECX_x0
  - [Features] WBNOINVD and CLZERO instructions
  - Adding various Mitigation Mechanism aggregations:
    IPRED_DIS_U, IPRED_DIS_S, RRSBA_DIS_U, RRSBA_DIS_S, BHI_DIS_S, MCDT_NO
  - RDPID and UMIP capability fixed.
  - [AMD] Perf. Mon. version based on CPUID_0x80000022.EAX.PerfMonV2
  - [AMD][Zen3+][Rembrandt] Trigger UMC and IOMMU decoders
  - [AMD][Ryzen 5 6600H] Found voltage VID @ SMU 0x6f010 and 0x6f014
  - Introducing AMD Security Feature capabilities:
    SKINIT, SEV, GMET, SEV-ES, SEV-SNP
  - [AMD64] Non-architectural MSR: SPECULATIVE STORE BYPASS DISABLE
  - [Intel][2nd &amp; 3rd gen] Misc IMC optimizations
  - [AMD][Rembrandt] Provides Vcore from a new formula.
  - Dumping CPUID leaves from AMD64 Architecture Programmer’s Manual
  - [Intel][HSW &amp; BDW] Compute the DIMM banks
  - [UI] Re-assigned keys to move or resize windows.
  - [AMD][Zen] Uncore frequency: Improving the Memory Clock divisor
  - [Intel][HSW &amp; BDW][SKL] Make use of same function DimmWidthToRows
  - [AMD][Zen3+][Rembrandt] Provides the thermal sensor.
  - [AMD/Zen2 &amp; Zen3] Removed the HSMP capability.
  - [Intel][CML][RKL][TGL] Compute the DIMM Rows from CH_WIDTH
  - [AMD/EPYC] Adding the CPUID of Zen4 Genoa architecture
  - [AMD/Zen2] Introducing Mendocino architecture
  - Changed MeteorLake/N to CPUID 06_B5
  - [Intel] Computes BIOS DRAM frequency based on PLL_REF100
  - [Intel][SNB/IVB/HSW/BDW] Improved BIOS DRAM frequency
  - [Intel][SNB/IVB] DRAM frequency based on RAM_Select and FSB_Select
  - [Intel][IVB] IMC specifications and optimizations.
  - [Intel][SNB,IVB] Computes the DIMM A from DAS bit in MAD register
  - [Intel][SNB,IVB,HSW,BDW] Rolling back changes to the DIMM topology
  - [Intel][BDW][HSW] Query the IMC Power Down Mode
  - [Intel][IVB][SNB] Attempt to decode the IMC third timings
  - [AMD][Ryzen] Added AMD Ryzen 7 PRO 6860Z
  - [AMD][F17h-F19h] Can toggle ON and OFF the Instruction Cache Unit
  - [AMD] Checking the Ryzen "OEM Only" processors
  - [Intel] Specification of 12th Gen. MSR registers capability
  - [Intel] Adding Raptor Lake-S with CPUID 06_BF
  - [AMD] Introducing Zen 4 / Raphael architecture
  - [Intel][SNB,IVB,HSW] Attempt to assign the Rank per DIMM slot
  - [Intel][SNB,IVB,HSW] Attempt to fix the DIMM(s) topology layout
  - ClockSource: TSC udelay() asm implementation builtin as a default
  - [Intel][Alder Lake] Adding IMC entry for i5-12500 processor
  - [Intel][Alder Lake] Added default case if Processor has only Pcores
  - [Intel][Atom/Bonnell][IMC] Attempt to compute the DIMM geometry
  - [UI][Custom view] Show the Uncore unit in watt or joule
  - [UI] Display HWP or CPPC in footer for capable processors.
  - [CLI] Added HWP Capabilities and HWP Request to the JSON export
  - [CLI] Don't allow the HWP dialog box if feature is not available.
  - [CPPC][Firmware] allows (de)activation of the feature.
  - [CLI] Added CPU ratios to JSON export
  - [CPPC] Improved scaling
  - [CPPC] Build fixed down to Kernel version 3
  - [Kernel/ACPI] Attempt to write CPPC registers</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1667563201">- Repair deficient description grammar.</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1670241600">- update to 1.92.4:
  * [Intel/Skylake-X] Permits MSR_RING_PERF_LIMIT_REASONS</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1670932800">- removed modprobe_corefreqd.service.patch and harden_corefreqd.service.patch
  now included in new corefreqd.service file replacing stock one
- update to 1.93.1
  * [PRJ] CoreFreq version 1.93.1
  * [ACPI/CPPC/EPP] Preview of AMD/Zen Energy Preference (CONFIG_CACHY)
  * [UI] Changed the HWP or CPPC ratio bounds.
  * [FIX] Putting `corefreqd` in the root cgroup (issue #379) Thanks to gel-crabs
  * [DOC] Parameters to blacklist the amd_pstate since kernel 6.0.11
  * [AMD][Zen4] Apply a voltage formula based on Rembrandt's. (#378)
  * [AMD][Zen4/Raphael] Attempting temperature per CCD from TCTL+0x308
  * [AMD][Zen4] Changed Timer loop
  * [CR] CLI code review and UI optimizations
  * [UI] Auto refresh the Topology items when off/online
  * [CR] Conditionally build with additional PMC Counters
  * [Intel] Adding Z8000 System Memory Controller Registers
  * [CR] Transformed global variable in cells padding
  * [UI] Windows re-scaling fix
  * [UI] Apply color theming to the CPPC capabilities list.
  * [AMD][Raphael] Adding device DIDs to probe UMC and IOMMU
  * [CPPC/FMW] Computes value bounds while Enabling/Disabling firmware
  * [CR] CPPC lib errors are now raised to Debug level
  * [AMD][Zen4] Increased the UMC size to 12 channels.
  * [CPPC] Handles the OffLine CPU case.
  * [CLI] Refactoring HWP/CPPC to print all capabilities per CPU
  * [ACPI] Computes the CPPC Bounds
  * [Intel] Linear Address Masking (LAM)
  * [CLI] EFER: Left aligned labels
  * [AMD] Reports UAIE and AIBRSE bits from EFER system register
  * [CLI] Changed mitigation mechanisms incapability labels
  * [AMD][Zen2] Mitigation Mechanism BTC-NOBR * ACPI/OSPM documentation
  * [CR] Code review on bit masks
  * [CPPC][ACPI] Kernel may decode the Guaranteed Performance Register
  * [UI] Optimize the cycles to clear the time bar.
  * [CR] Code review for extra compiler warnings
  * [UI] Time of the day displayed in the right side of menu
  * [UI] Display the current date and time in menu bar
  * [Kernel] Introducing support of `CONFIG_SCHED_BORE`
  * [CLI] Fixing ambiguous CPPC report: hardware vs firmware
  * [CLI] Surrounds _CPC feature with square brackets
  * [CPPC] Provides the ACPI _CPC object state.
  * [UI] Colors the task being tracked in the tracking list
  * [UI] Display the current time in the menu bar
  * [CLI] Reserve the programmable TDP section to Intel processors.
  * [AMD/Zen3+] Improving the DIMM geometry of Rembrandt UMC</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1672747200">- update to 1.94.1:
  * [Intel] Gemini Lake
  * [AMD] Ryzen 5 6600 H SoC, UMC channels
  * [AMD] Rembrandt: maximum of two UMC channels
  * [AMD] Raphael: Decodes DIMM geometry from AddrCfg
  * [AMD] Zen: Aggregation refactored
  * [AMD] Improved DDR5 clock decoding
  * Optimized Idle Loop</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1673006400">- update to 1.94.3:
  * [AMD][RMB] If UMC is quad channels then unpopulate odd channels
  * [AMD][RPL] Provide Service Processor Vcore as workaround
  * [UI] Auto size and lay performance capabilities window
  * [UI] Adding comments to the EEO and R2H technologies
  * [AMD][Raphael] 7950X3D, 7900X3D. support</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1674475200">- update to 1.95.1:
  * [Intel] RPL: voltage of Pcore, Ecore, System Agent
  * [Intel] RPL and ADL Chipset device IDs
  * [Intel] Decode the RPL IMC and improve DDR5 support
  * [Build] Raise `MAX_FREQ_HZ` up to 7125000000 Hertz
  * [Intel] Mobile {Coffee Lake, Kaby Lake} codenames
  * [Intel] Braswell codename detection
  * [AMD] SYSCFG Register
  * [AMD] EPYC 9654
  * [AMD] Transparent SME
  * [AMD] DRAM Data Scrambling
  * [AMD] Adding "Barcelo R" and "Rembrandt R"</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1675944000">- update to 1.95.2:
  * Fixed the aggregation of the minimum ratio
  Intel:
  * [Airmont][Silvermont] Attempt to decode `tCKE` from DRMC
    register
  * [Airmont] Improve `tWTPr`, `B2B`, `tWWDR` timings
  * [Airmont] Provide a new IMC decoder
  * Add the Emerald Rapids architecture entry
  * [DDR5][DDR4] Add the `RCDw` IMC timing
  * [Raptor Lake ] De-activate the MSR Uncore counter
  AMD:
  * "Zen3/Barcelo-R" and "Zen3+ Rembrandt-R" codenames
  * [Zen] Thermal highest limit reset fix
  Misc:
  * Code review and Registers documentation:
    AMD HWCR, Intel HDC and DRP</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677067200">- update to 1.95.4
  * [Intel] [from 11th to 14th gen]
    Convert the DRAM Speed to MT/s unit
    Compute the Bus Rate based on the BIOS MC PLL
- update to 1.95.3
  * [Intel] [Airmont]
    Improved the IMC geometry
    Introducing the Spreadtrum architecture
    Fixed the Bus and DRAM frequency rates
  * [Intel] [from 11th to 13th gen] Attempt to probe the interleaved controllers
  * [Intel] [Alder Lake/H] Attempt to decode the TCO Watchdog</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677153600">- added leap_compile_fix.patch to fix compilation on Leap</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1683115200">- removed leap_compile_fix.patch no needed anymore
- update to 1.96.0
  * [AMD]
    [RPL/X3D] Disabling the turbo boosted P-states change
    [PHOENIX] Adding Z1, U and HS PRO series.
    [Genoa] DAC address at UMC BAR + 0x40
    [Zen4] Adding the PCI entries of Genoa
    [Zen2] Adding remaining PCI entries
    [Zen] Query DAC &amp; CFG with the right UMC base address register
    [Zen4] Dump the CPUID Extended CPU Topology leaves.
    [Zen][Embedded][Banded Kestrel] R1000 Processor Family
    [Zen][Embedded] "Great Horned Owl", "River Hawk", "Grey Hawk"
    Complete the "Raven Ridge" and "Picasso" lists
    [EPYC] Moved "Snowy Owl" Embedded processors to CPUID 8F_01
    [Zen4] introducing Phoenix and Dragon Range
    [RMB] adding the Ryzen Embedded V3000 processors
    [VMR] adding the "AMD Ryzen 9 PRO 5945"
  * [Intel]
    Adding Granite Rapids, Sierra Forest, Grand Ridge entries
    Adding "Lunar Lake" and "Arrow Lake" entries.
  * [UI]
    Optimized decimal to digits converter
    Allow task tracker to select up to pid_max
    Can trace the frozen states of Linux tasks.
    Only print HWP frequencies within bounds.
    Fix ruler's aggregation.
  * [CR]
    Check CPUID[HV_PARTITION_PRIVILEGE_MASK] for HV_X64_MSR_VP_RUNTIME
    Uninitialized variable fix.
    [CPPC] Build EPP with KERNEL_VERSION(6) rather than CONFIG_CACHY
    [KERNEL] Linux 6.3: Employ modifier calls with the vma-&gt;vm_flags</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1684065600">- update to 1.96.1
  * [Driver]
  - Postpone Clock Source registration during startup until the Base Clock is computed.
  - Change class_create() according to Linux Kernel 6.4
  - Clear interrupt flag (cli) after Halt in the Idle method
  * [AMD]
  - [PHOENIX] Adding Ryzen 7940H, 7840H, 7640H
  - [VERMEER] Adding Ryzen PRO and Embedded processors
  - Ryzen Z1 CPUID' brand fix
  - Adding EPYC Embedded 9004 Series as Genoa
  - Adding EPYC Embedded 7003 Series as Milan
  - Adding EPYC Embedded 7002 Series as Rome
  - Adding EPYC Embedded 7001 Series as Naples</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1685880000">- update to 1.96.2
  * [Driver]
  - Allows compilation to keep going without CONFIG_ACPI_CPPC_LIB
  * [Client]
  - Adding two command line arguments:
  - Op Show Package C-States
  - OW Toggle Energy units
  * [AMD]
  - Specification of some Configuration MSRs</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1686830400">- update to 1.96.4
  * [AMD]
  - Display CPUID state of new and legacy features:
    Fused Multiply Add [FMA4]
    Extended Operation Support [XOP]
    Translation Cache Extension [TCE]
    Trailing Bit Manipulation [TBM]
    OS Visible Work-around [OSVW]
    LOCK prefix to read CR8 [AltMov]
  * [Intel]
  - Advanced Matrix Extensions [AMX]
  - Bits and Features of Sierra Forest and Grand Ridge
  - Attempt to decode the Meteor Lake Memory Controller
- update to 1.96.3
  * [AMD]
  - [Zeppelin] Probe more than one UMC controllers on Ryzen Threadripper 1900X
  - [Zen4] Dump SMBE and BMEC sub-leaves of CPUID 0x80000020</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1688212800">- update to 1.96.5
  * [AMD]
    Adding the "AMD Ryzen 5 5600X3D"
    Introducing the Zen4c Bergamo architecture
    Specs fixing of Embedded V-series and 3000 Series Processors
    Adding MENDOCINO, RAPHAEL Pro, PHOENIX Pro among others</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1712318400">- added preamble file for %kernel_module_package macro
- update to 1.97.1
  * added aarch64 support
  * upstream did not provide a summary changelog. Full list of commits:
    https://github.com/cyring/CoreFreq/compare/1.96.5...1.97.1</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715860800">- update to 1.97.2
  * [AMD]
  - [Hawk Point] Adding Ryzen PRO processors
  - [Phoenix] Adding the unlocked Ryzen 8000 Series
  * [Intel]
  - [MeteorLake] New bits specified
  - EEO and R2H bits inversion fix in MSR_POWER_CTL (0x1fc)
  - Reverse specification of MSR UNCORE_PERF_STATUS
  - Prefetchers fix of L1 Scrubbing, L1 Next Page and L2 AMP
  * [AArch64]
  - Providing Exclusive Load/Store to atomic operations
  - Improved asm of various macro functions
  - Removed LEGACY macros
  - Optimized the CORE_COUNT macros
  - Marked the Tools feature as nominal: Stress functions available
  - Allow user access to Retired Instructions counter
  - Fix Instructions counter overflow
  - Other PMC enhancements
  * [CR]
  - Fix a building issue with AlmaLinux aka RHEL-9
  - Linux kernel 6.9: Avoid redefinition of Intel MSR macros
  * [Doc]
  - README section for AlmaLinux
  - CONFIG_TRIM_UNUSED_KSYMS kernel build config is forbidden</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715947200">- fix dependency on kernel module that was not versioned</changelog>
</package>
<package pkgid="71d3cdfad063d628b65a108334236063f293f6a77907cb0b3b1ef545712359a71042d1c6292af282fc9c36fa883acfffc8e18b08d09880d75043b56a79b0de77" name="CoreFreq" arch="src">
  <version epoch="0" ver="1.98.1" rel="1.1"/>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1667563200">- update to version 1.92.3
  - Export CPUID bits Intel Sierra Forest, Grand Ridge, Granite Rapids
    and completes AMD64 Fn0000_0007_ECX_x0
  - [Features] WBNOINVD and CLZERO instructions
  - Adding various Mitigation Mechanism aggregations:
    IPRED_DIS_U, IPRED_DIS_S, RRSBA_DIS_U, RRSBA_DIS_S, BHI_DIS_S, MCDT_NO
  - RDPID and UMIP capability fixed.
  - [AMD] Perf. Mon. version based on CPUID_0x80000022.EAX.PerfMonV2
  - [AMD][Zen3+][Rembrandt] Trigger UMC and IOMMU decoders
  - [AMD][Ryzen 5 6600H] Found voltage VID @ SMU 0x6f010 and 0x6f014
  - Introducing AMD Security Feature capabilities:
    SKINIT, SEV, GMET, SEV-ES, SEV-SNP
  - [AMD64] Non-architectural MSR: SPECULATIVE STORE BYPASS DISABLE
  - [Intel][2nd &amp; 3rd gen] Misc IMC optimizations
  - [AMD][Rembrandt] Provides Vcore from a new formula.
  - Dumping CPUID leaves from AMD64 Architecture Programmer’s Manual
  - [Intel][HSW &amp; BDW] Compute the DIMM banks
  - [UI] Re-assigned keys to move or resize windows.
  - [AMD][Zen] Uncore frequency: Improving the Memory Clock divisor
  - [Intel][HSW &amp; BDW][SKL] Make use of same function DimmWidthToRows
  - [AMD][Zen3+][Rembrandt] Provides the thermal sensor.
  - [AMD/Zen2 &amp; Zen3] Removed the HSMP capability.
  - [Intel][CML][RKL][TGL] Compute the DIMM Rows from CH_WIDTH
  - [AMD/EPYC] Adding the CPUID of Zen4 Genoa architecture
  - [AMD/Zen2] Introducing Mendocino architecture
  - Changed MeteorLake/N to CPUID 06_B5
  - [Intel] Computes BIOS DRAM frequency based on PLL_REF100
  - [Intel][SNB/IVB/HSW/BDW] Improved BIOS DRAM frequency
  - [Intel][SNB/IVB] DRAM frequency based on RAM_Select and FSB_Select
  - [Intel][IVB] IMC specifications and optimizations.
  - [Intel][SNB,IVB] Computes the DIMM A from DAS bit in MAD register
  - [Intel][SNB,IVB,HSW,BDW] Rolling back changes to the DIMM topology
  - [Intel][BDW][HSW] Query the IMC Power Down Mode
  - [Intel][IVB][SNB] Attempt to decode the IMC third timings
  - [AMD][Ryzen] Added AMD Ryzen 7 PRO 6860Z
  - [AMD][F17h-F19h] Can toggle ON and OFF the Instruction Cache Unit
  - [AMD] Checking the Ryzen "OEM Only" processors
  - [Intel] Specification of 12th Gen. MSR registers capability
  - [Intel] Adding Raptor Lake-S with CPUID 06_BF
  - [AMD] Introducing Zen 4 / Raphael architecture
  - [Intel][SNB,IVB,HSW] Attempt to assign the Rank per DIMM slot
  - [Intel][SNB,IVB,HSW] Attempt to fix the DIMM(s) topology layout
  - ClockSource: TSC udelay() asm implementation builtin as a default
  - [Intel][Alder Lake] Adding IMC entry for i5-12500 processor
  - [Intel][Alder Lake] Added default case if Processor has only Pcores
  - [Intel][Atom/Bonnell][IMC] Attempt to compute the DIMM geometry
  - [UI][Custom view] Show the Uncore unit in watt or joule
  - [UI] Display HWP or CPPC in footer for capable processors.
  - [CLI] Added HWP Capabilities and HWP Request to the JSON export
  - [CLI] Don't allow the HWP dialog box if feature is not available.
  - [CPPC][Firmware] allows (de)activation of the feature.
  - [CLI] Added CPU ratios to JSON export
  - [CPPC] Improved scaling
  - [CPPC] Build fixed down to Kernel version 3
  - [Kernel/ACPI] Attempt to write CPPC registers</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1667563201">- Repair deficient description grammar.</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1670241600">- update to 1.92.4:
  * [Intel/Skylake-X] Permits MSR_RING_PERF_LIMIT_REASONS</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1670932800">- removed modprobe_corefreqd.service.patch and harden_corefreqd.service.patch
  now included in new corefreqd.service file replacing stock one
- update to 1.93.1
  * [PRJ] CoreFreq version 1.93.1
  * [ACPI/CPPC/EPP] Preview of AMD/Zen Energy Preference (CONFIG_CACHY)
  * [UI] Changed the HWP or CPPC ratio bounds.
  * [FIX] Putting `corefreqd` in the root cgroup (issue #379) Thanks to gel-crabs
  * [DOC] Parameters to blacklist the amd_pstate since kernel 6.0.11
  * [AMD][Zen4] Apply a voltage formula based on Rembrandt's. (#378)
  * [AMD][Zen4/Raphael] Attempting temperature per CCD from TCTL+0x308
  * [AMD][Zen4] Changed Timer loop
  * [CR] CLI code review and UI optimizations
  * [UI] Auto refresh the Topology items when off/online
  * [CR] Conditionally build with additional PMC Counters
  * [Intel] Adding Z8000 System Memory Controller Registers
  * [CR] Transformed global variable in cells padding
  * [UI] Windows re-scaling fix
  * [UI] Apply color theming to the CPPC capabilities list.
  * [AMD][Raphael] Adding device DIDs to probe UMC and IOMMU
  * [CPPC/FMW] Computes value bounds while Enabling/Disabling firmware
  * [CR] CPPC lib errors are now raised to Debug level
  * [AMD][Zen4] Increased the UMC size to 12 channels.
  * [CPPC] Handles the OffLine CPU case.
  * [CLI] Refactoring HWP/CPPC to print all capabilities per CPU
  * [ACPI] Computes the CPPC Bounds
  * [Intel] Linear Address Masking (LAM)
  * [CLI] EFER: Left aligned labels
  * [AMD] Reports UAIE and AIBRSE bits from EFER system register
  * [CLI] Changed mitigation mechanisms incapability labels
  * [AMD][Zen2] Mitigation Mechanism BTC-NOBR * ACPI/OSPM documentation
  * [CR] Code review on bit masks
  * [CPPC][ACPI] Kernel may decode the Guaranteed Performance Register
  * [UI] Optimize the cycles to clear the time bar.
  * [CR] Code review for extra compiler warnings
  * [UI] Time of the day displayed in the right side of menu
  * [UI] Display the current date and time in menu bar
  * [Kernel] Introducing support of `CONFIG_SCHED_BORE`
  * [CLI] Fixing ambiguous CPPC report: hardware vs firmware
  * [CLI] Surrounds _CPC feature with square brackets
  * [CPPC] Provides the ACPI _CPC object state.
  * [UI] Colors the task being tracked in the tracking list
  * [UI] Display the current time in the menu bar
  * [CLI] Reserve the programmable TDP section to Intel processors.
  * [AMD/Zen3+] Improving the DIMM geometry of Rembrandt UMC</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1672747200">- update to 1.94.1:
  * [Intel] Gemini Lake
  * [AMD] Ryzen 5 6600 H SoC, UMC channels
  * [AMD] Rembrandt: maximum of two UMC channels
  * [AMD] Raphael: Decodes DIMM geometry from AddrCfg
  * [AMD] Zen: Aggregation refactored
  * [AMD] Improved DDR5 clock decoding
  * Optimized Idle Loop</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1673006400">- update to 1.94.3:
  * [AMD][RMB] If UMC is quad channels then unpopulate odd channels
  * [AMD][RPL] Provide Service Processor Vcore as workaround
  * [UI] Auto size and lay performance capabilities window
  * [UI] Adding comments to the EEO and R2H technologies
  * [AMD][Raphael] 7950X3D, 7900X3D. support</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1674475200">- update to 1.95.1:
  * [Intel] RPL: voltage of Pcore, Ecore, System Agent
  * [Intel] RPL and ADL Chipset device IDs
  * [Intel] Decode the RPL IMC and improve DDR5 support
  * [Build] Raise `MAX_FREQ_HZ` up to 7125000000 Hertz
  * [Intel] Mobile {Coffee Lake, Kaby Lake} codenames
  * [Intel] Braswell codename detection
  * [AMD] SYSCFG Register
  * [AMD] EPYC 9654
  * [AMD] Transparent SME
  * [AMD] DRAM Data Scrambling
  * [AMD] Adding "Barcelo R" and "Rembrandt R"</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1675944000">- update to 1.95.2:
  * Fixed the aggregation of the minimum ratio
  Intel:
  * [Airmont][Silvermont] Attempt to decode `tCKE` from DRMC
    register
  * [Airmont] Improve `tWTPr`, `B2B`, `tWWDR` timings
  * [Airmont] Provide a new IMC decoder
  * Add the Emerald Rapids architecture entry
  * [DDR5][DDR4] Add the `RCDw` IMC timing
  * [Raptor Lake ] De-activate the MSR Uncore counter
  AMD:
  * "Zen3/Barcelo-R" and "Zen3+ Rembrandt-R" codenames
  * [Zen] Thermal highest limit reset fix
  Misc:
  * Code review and Registers documentation:
    AMD HWCR, Intel HDC and DRP</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677067200">- update to 1.95.4
  * [Intel] [from 11th to 14th gen]
    Convert the DRAM Speed to MT/s unit
    Compute the Bus Rate based on the BIOS MC PLL
- update to 1.95.3
  * [Intel] [Airmont]
    Improved the IMC geometry
    Introducing the Spreadtrum architecture
    Fixed the Bus and DRAM frequency rates
  * [Intel] [from 11th to 13th gen] Attempt to probe the interleaved controllers
  * [Intel] [Alder Lake/H] Attempt to decode the TCO Watchdog</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677153600">- added leap_compile_fix.patch to fix compilation on Leap</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1683115200">- removed leap_compile_fix.patch no needed anymore
- update to 1.96.0
  * [AMD]
    [RPL/X3D] Disabling the turbo boosted P-states change
    [PHOENIX] Adding Z1, U and HS PRO series.
    [Genoa] DAC address at UMC BAR + 0x40
    [Zen4] Adding the PCI entries of Genoa
    [Zen2] Adding remaining PCI entries
    [Zen] Query DAC &amp; CFG with the right UMC base address register
    [Zen4] Dump the CPUID Extended CPU Topology leaves.
    [Zen][Embedded][Banded Kestrel] R1000 Processor Family
    [Zen][Embedded] "Great Horned Owl", "River Hawk", "Grey Hawk"
    Complete the "Raven Ridge" and "Picasso" lists
    [EPYC] Moved "Snowy Owl" Embedded processors to CPUID 8F_01
    [Zen4] introducing Phoenix and Dragon Range
    [RMB] adding the Ryzen Embedded V3000 processors
    [VMR] adding the "AMD Ryzen 9 PRO 5945"
  * [Intel]
    Adding Granite Rapids, Sierra Forest, Grand Ridge entries
    Adding "Lunar Lake" and "Arrow Lake" entries.
  * [UI]
    Optimized decimal to digits converter
    Allow task tracker to select up to pid_max
    Can trace the frozen states of Linux tasks.
    Only print HWP frequencies within bounds.
    Fix ruler's aggregation.
  * [CR]
    Check CPUID[HV_PARTITION_PRIVILEGE_MASK] for HV_X64_MSR_VP_RUNTIME
    Uninitialized variable fix.
    [CPPC] Build EPP with KERNEL_VERSION(6) rather than CONFIG_CACHY
    [KERNEL] Linux 6.3: Employ modifier calls with the vma-&gt;vm_flags</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1684065600">- update to 1.96.1
  * [Driver]
  - Postpone Clock Source registration during startup until the Base Clock is computed.
  - Change class_create() according to Linux Kernel 6.4
  - Clear interrupt flag (cli) after Halt in the Idle method
  * [AMD]
  - [PHOENIX] Adding Ryzen 7940H, 7840H, 7640H
  - [VERMEER] Adding Ryzen PRO and Embedded processors
  - Ryzen Z1 CPUID' brand fix
  - Adding EPYC Embedded 9004 Series as Genoa
  - Adding EPYC Embedded 7003 Series as Milan
  - Adding EPYC Embedded 7002 Series as Rome
  - Adding EPYC Embedded 7001 Series as Naples</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1685880000">- update to 1.96.2
  * [Driver]
  - Allows compilation to keep going without CONFIG_ACPI_CPPC_LIB
  * [Client]
  - Adding two command line arguments:
  - Op Show Package C-States
  - OW Toggle Energy units
  * [AMD]
  - Specification of some Configuration MSRs</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1686830400">- update to 1.96.4
  * [AMD]
  - Display CPUID state of new and legacy features:
    Fused Multiply Add [FMA4]
    Extended Operation Support [XOP]
    Translation Cache Extension [TCE]
    Trailing Bit Manipulation [TBM]
    OS Visible Work-around [OSVW]
    LOCK prefix to read CR8 [AltMov]
  * [Intel]
  - Advanced Matrix Extensions [AMX]
  - Bits and Features of Sierra Forest and Grand Ridge
  - Attempt to decode the Meteor Lake Memory Controller
- update to 1.96.3
  * [AMD]
  - [Zeppelin] Probe more than one UMC controllers on Ryzen Threadripper 1900X
  - [Zen4] Dump SMBE and BMEC sub-leaves of CPUID 0x80000020</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1688212800">- update to 1.96.5
  * [AMD]
    Adding the "AMD Ryzen 5 5600X3D"
    Introducing the Zen4c Bergamo architecture
    Specs fixing of Embedded V-series and 3000 Series Processors
    Adding MENDOCINO, RAPHAEL Pro, PHOENIX Pro among others</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1712318400">- added preamble file for %kernel_module_package macro
- update to 1.97.1
  * added aarch64 support
  * upstream did not provide a summary changelog. Full list of commits:
    https://github.com/cyring/CoreFreq/compare/1.96.5...1.97.1</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715860800">- update to 1.97.2
  * [AMD]
  - [Hawk Point] Adding Ryzen PRO processors
  - [Phoenix] Adding the unlocked Ryzen 8000 Series
  * [Intel]
  - [MeteorLake] New bits specified
  - EEO and R2H bits inversion fix in MSR_POWER_CTL (0x1fc)
  - Reverse specification of MSR UNCORE_PERF_STATUS
  - Prefetchers fix of L1 Scrubbing, L1 Next Page and L2 AMP
  * [AArch64]
  - Providing Exclusive Load/Store to atomic operations
  - Improved asm of various macro functions
  - Removed LEGACY macros
  - Optimized the CORE_COUNT macros
  - Marked the Tools feature as nominal: Stress functions available
  - Allow user access to Retired Instructions counter
  - Fix Instructions counter overflow
  - Other PMC enhancements
  * [CR]
  - Fix a building issue with AlmaLinux aka RHEL-9
  - Linux kernel 6.9: Avoid redefinition of Intel MSR macros
  * [Doc]
  - README section for AlmaLinux
  - CONFIG_TRIM_UNUSED_KSYMS kernel build config is forbidden</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715947200">- fix dependency on kernel module that was not versioned</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1722081600">- update to 1.98.0
  * [Build]
  - Change dkms configuration to install into /usr/bin/
  - Solved compilation with Fedora using RHEL MINOR version number 99
  - [CR] Fixed some compilation warnings
  - [CR] Fix memory allocation in kernel pages for the SysGate
  - Workaround to musl change in basename (#494)
  - aarch64: Build with Redhat RHEL version 9
  - [CR] x86_64: Prevent array size overflow
  - dkms and ckms configuration files upgraded to version 1.98
  * [Intel]
  - [Raptor Lake] Adding the HB DID of i7-14700K' IMC
  - Mitigation mechanism: GDS_NO; RFDS_NO; MONITOR_MITG_NO
  - Apply some SDM Documentation Changes
  - [MTL] Fix CMD Stretch bit range width
  - Added method CLOCK_FLEX_MAX with Xeon's Nehalem &amp; Core 2
  - Grants full MSR_FLEX_RATIO access to tested architectures:
  - Alder Lake/S
  - Tiger Lake/U
  - Westmere/Gulftown
  - Provides the overclocking bins with unlocked processors
  - Query the Overclocking bit (OC) from Capabilities
  - Adding technologies: VMD, HDCP, IPU and VPU
  - Volume Management Device
  - High-Bandwidth Digital Content Protection
  - Image Processing Unit
  - Vision Processing Unit
  - Gaussian &amp; Neural Accelerator - GNA technology
  - [CR] Renamed Gemini Lake structures
  - [Meteor Lake] Introducing memory controller decoder
  * [AArch64]
  - Optimizing the Vcore seek
  - Workaround to Package discrete voltage: the highest Vcore
  - Improving computation of Euclidean division
  - Adjust frequency division in CNTFRQ and PMU counters
  - Scale a frequency factor from the interval
  - Refactoring the frequency ratios for decimal precision
  - Compile dev_pm_opp_put if Kernel greater or equal 4.11
  - Get the voltage core of CPUs from OPP
  * [AMD]
  - [Zen4][Raphael] Adding the EPYC 4004 Series
  - [Zen4] Clarify Hawk Point and Phoenix-Refresh architectures
  - [Family 19h] New voltage formula assigned to model 61h
  - Vcore activated
  - Voltage SoC deactivated
  - [Zen] Prevent the calculation of negative temperature (issue #496)
  - [Family 18h] Documented Hygon C86 7375
  - [Family 19h] PStateDef specification: Adding VID[8] bit 32
  - Specification of MSR HW_PSTATE_STATUS
  * [CLI]
  - aarch64: Display the state of the Memory Management Unit (MMU)
  - aarch64: State of Instruction Cache Unit I$ and Data Cache Unit D$
  - Added UI_RULER_MINIMUM &amp; UI_RULER_MAXIMUM building constraints
  - Revert "[CLI] Responsive ruler to architectural context"
  - This reverts commit 4bc38d6.
  - x86_64: AMD Boost and P-States redesigned
  - [UI] Hardening missing console/terminal size
  - Responsive ruler to architectural context
  - x86_64: Make HDCP meaning string shorter
  * [Driver]
  - Created C2U_Enable as a parameter alias of C1U_Enable</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1723032000">- update to 1.98.1
  * [AMD]
  - [Zen] Inject threshold events when thermal is out of bounds
  - Generic Zen architectures renamed with their Family number
  - Added a generic entry for the 1A family
  - Configure TjMax for multiple Ryzen and Threadripper
  - [CR] Optimize AMD temperature filtering function
  - [Zen5] Introducing the Eldora architecture aka "Granite Ridge"
  - [Zen5] Adding entries for Strix Point
  * [Intel]
  - Feature-bits of Core Ultra architecture
  - [TGL][ADL][RPL] New devices to probe IMC and Watchdog
  - [Raptor Lake-E] Adding the IMC probing entries
  - Grant full MSR_FLEX_RATIO access to Raptor Lake (06_B7)
  - Added Host Bridge DIDs of Raptor Lake-E
  - [ADL ... MTL] Code review of IMC decoders
  - [ADL] Compute DIMM Bank and Columns on both channels
  - [ADL] Process channels differently depending on DDR4 or DDR5
  - 12th to 14th generation IMC decoder refactoring
  - [ADL ... MTL] Adding Memory Controller Virtual Channel Count
  - [ADL ... MTL] Channel count as a function of DDPCD DDR_TYPE
  - [ADL ... MTL] Keep all enabled memory controllers
  - [12th and superior] Compute tWR quantity as a function of DDR version
  * [Build]
  - Now leave version number in Makefile
  - Pretty print the build and the clean of outputs
    Allow the V=n option increase the verbose level (incl. kernel)
  - CPU-Freq build against Linux Kernel version 6.11
  * [Documentation]
  - Refreshed README and Makefile</changelog>
</package>
<package pkgid="faef559111a96b3121f0588078886d7bca84095d8b93f7f11e8d1041eca7dc5aed3f5aa8e568ed7f71e8c22441af82a2197d49fca8da67fcadcf5bce2a292da8" name="CoreFreq" arch="x86_64">
  <version epoch="0" ver="1.98.1" rel="1.1"/>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1667563200">- update to version 1.92.3
  - Export CPUID bits Intel Sierra Forest, Grand Ridge, Granite Rapids
    and completes AMD64 Fn0000_0007_ECX_x0
  - [Features] WBNOINVD and CLZERO instructions
  - Adding various Mitigation Mechanism aggregations:
    IPRED_DIS_U, IPRED_DIS_S, RRSBA_DIS_U, RRSBA_DIS_S, BHI_DIS_S, MCDT_NO
  - RDPID and UMIP capability fixed.
  - [AMD] Perf. Mon. version based on CPUID_0x80000022.EAX.PerfMonV2
  - [AMD][Zen3+][Rembrandt] Trigger UMC and IOMMU decoders
  - [AMD][Ryzen 5 6600H] Found voltage VID @ SMU 0x6f010 and 0x6f014
  - Introducing AMD Security Feature capabilities:
    SKINIT, SEV, GMET, SEV-ES, SEV-SNP
  - [AMD64] Non-architectural MSR: SPECULATIVE STORE BYPASS DISABLE
  - [Intel][2nd &amp; 3rd gen] Misc IMC optimizations
  - [AMD][Rembrandt] Provides Vcore from a new formula.
  - Dumping CPUID leaves from AMD64 Architecture Programmer’s Manual
  - [Intel][HSW &amp; BDW] Compute the DIMM banks
  - [UI] Re-assigned keys to move or resize windows.
  - [AMD][Zen] Uncore frequency: Improving the Memory Clock divisor
  - [Intel][HSW &amp; BDW][SKL] Make use of same function DimmWidthToRows
  - [AMD][Zen3+][Rembrandt] Provides the thermal sensor.
  - [AMD/Zen2 &amp; Zen3] Removed the HSMP capability.
  - [Intel][CML][RKL][TGL] Compute the DIMM Rows from CH_WIDTH
  - [AMD/EPYC] Adding the CPUID of Zen4 Genoa architecture
  - [AMD/Zen2] Introducing Mendocino architecture
  - Changed MeteorLake/N to CPUID 06_B5
  - [Intel] Computes BIOS DRAM frequency based on PLL_REF100
  - [Intel][SNB/IVB/HSW/BDW] Improved BIOS DRAM frequency
  - [Intel][SNB/IVB] DRAM frequency based on RAM_Select and FSB_Select
  - [Intel][IVB] IMC specifications and optimizations.
  - [Intel][SNB,IVB] Computes the DIMM A from DAS bit in MAD register
  - [Intel][SNB,IVB,HSW,BDW] Rolling back changes to the DIMM topology
  - [Intel][BDW][HSW] Query the IMC Power Down Mode
  - [Intel][IVB][SNB] Attempt to decode the IMC third timings
  - [AMD][Ryzen] Added AMD Ryzen 7 PRO 6860Z
  - [AMD][F17h-F19h] Can toggle ON and OFF the Instruction Cache Unit
  - [AMD] Checking the Ryzen "OEM Only" processors
  - [Intel] Specification of 12th Gen. MSR registers capability
  - [Intel] Adding Raptor Lake-S with CPUID 06_BF
  - [AMD] Introducing Zen 4 / Raphael architecture
  - [Intel][SNB,IVB,HSW] Attempt to assign the Rank per DIMM slot
  - [Intel][SNB,IVB,HSW] Attempt to fix the DIMM(s) topology layout
  - ClockSource: TSC udelay() asm implementation builtin as a default
  - [Intel][Alder Lake] Adding IMC entry for i5-12500 processor
  - [Intel][Alder Lake] Added default case if Processor has only Pcores
  - [Intel][Atom/Bonnell][IMC] Attempt to compute the DIMM geometry
  - [UI][Custom view] Show the Uncore unit in watt or joule
  - [UI] Display HWP or CPPC in footer for capable processors.
  - [CLI] Added HWP Capabilities and HWP Request to the JSON export
  - [CLI] Don't allow the HWP dialog box if feature is not available.
  - [CPPC][Firmware] allows (de)activation of the feature.
  - [CLI] Added CPU ratios to JSON export
  - [CPPC] Improved scaling
  - [CPPC] Build fixed down to Kernel version 3
  - [Kernel/ACPI] Attempt to write CPPC registers</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1667563201">- Repair deficient description grammar.</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1670241600">- update to 1.92.4:
  * [Intel/Skylake-X] Permits MSR_RING_PERF_LIMIT_REASONS</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1670932800">- removed modprobe_corefreqd.service.patch and harden_corefreqd.service.patch
  now included in new corefreqd.service file replacing stock one
- update to 1.93.1
  * [PRJ] CoreFreq version 1.93.1
  * [ACPI/CPPC/EPP] Preview of AMD/Zen Energy Preference (CONFIG_CACHY)
  * [UI] Changed the HWP or CPPC ratio bounds.
  * [FIX] Putting `corefreqd` in the root cgroup (issue #379) Thanks to gel-crabs
  * [DOC] Parameters to blacklist the amd_pstate since kernel 6.0.11
  * [AMD][Zen4] Apply a voltage formula based on Rembrandt's. (#378)
  * [AMD][Zen4/Raphael] Attempting temperature per CCD from TCTL+0x308
  * [AMD][Zen4] Changed Timer loop
  * [CR] CLI code review and UI optimizations
  * [UI] Auto refresh the Topology items when off/online
  * [CR] Conditionally build with additional PMC Counters
  * [Intel] Adding Z8000 System Memory Controller Registers
  * [CR] Transformed global variable in cells padding
  * [UI] Windows re-scaling fix
  * [UI] Apply color theming to the CPPC capabilities list.
  * [AMD][Raphael] Adding device DIDs to probe UMC and IOMMU
  * [CPPC/FMW] Computes value bounds while Enabling/Disabling firmware
  * [CR] CPPC lib errors are now raised to Debug level
  * [AMD][Zen4] Increased the UMC size to 12 channels.
  * [CPPC] Handles the OffLine CPU case.
  * [CLI] Refactoring HWP/CPPC to print all capabilities per CPU
  * [ACPI] Computes the CPPC Bounds
  * [Intel] Linear Address Masking (LAM)
  * [CLI] EFER: Left aligned labels
  * [AMD] Reports UAIE and AIBRSE bits from EFER system register
  * [CLI] Changed mitigation mechanisms incapability labels
  * [AMD][Zen2] Mitigation Mechanism BTC-NOBR * ACPI/OSPM documentation
  * [CR] Code review on bit masks
  * [CPPC][ACPI] Kernel may decode the Guaranteed Performance Register
  * [UI] Optimize the cycles to clear the time bar.
  * [CR] Code review for extra compiler warnings
  * [UI] Time of the day displayed in the right side of menu
  * [UI] Display the current date and time in menu bar
  * [Kernel] Introducing support of `CONFIG_SCHED_BORE`
  * [CLI] Fixing ambiguous CPPC report: hardware vs firmware
  * [CLI] Surrounds _CPC feature with square brackets
  * [CPPC] Provides the ACPI _CPC object state.
  * [UI] Colors the task being tracked in the tracking list
  * [UI] Display the current time in the menu bar
  * [CLI] Reserve the programmable TDP section to Intel processors.
  * [AMD/Zen3+] Improving the DIMM geometry of Rembrandt UMC</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1672747200">- update to 1.94.1:
  * [Intel] Gemini Lake
  * [AMD] Ryzen 5 6600 H SoC, UMC channels
  * [AMD] Rembrandt: maximum of two UMC channels
  * [AMD] Raphael: Decodes DIMM geometry from AddrCfg
  * [AMD] Zen: Aggregation refactored
  * [AMD] Improved DDR5 clock decoding
  * Optimized Idle Loop</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1673006400">- update to 1.94.3:
  * [AMD][RMB] If UMC is quad channels then unpopulate odd channels
  * [AMD][RPL] Provide Service Processor Vcore as workaround
  * [UI] Auto size and lay performance capabilities window
  * [UI] Adding comments to the EEO and R2H technologies
  * [AMD][Raphael] 7950X3D, 7900X3D. support</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1674475200">- update to 1.95.1:
  * [Intel] RPL: voltage of Pcore, Ecore, System Agent
  * [Intel] RPL and ADL Chipset device IDs
  * [Intel] Decode the RPL IMC and improve DDR5 support
  * [Build] Raise `MAX_FREQ_HZ` up to 7125000000 Hertz
  * [Intel] Mobile {Coffee Lake, Kaby Lake} codenames
  * [Intel] Braswell codename detection
  * [AMD] SYSCFG Register
  * [AMD] EPYC 9654
  * [AMD] Transparent SME
  * [AMD] DRAM Data Scrambling
  * [AMD] Adding "Barcelo R" and "Rembrandt R"</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1675944000">- update to 1.95.2:
  * Fixed the aggregation of the minimum ratio
  Intel:
  * [Airmont][Silvermont] Attempt to decode `tCKE` from DRMC
    register
  * [Airmont] Improve `tWTPr`, `B2B`, `tWWDR` timings
  * [Airmont] Provide a new IMC decoder
  * Add the Emerald Rapids architecture entry
  * [DDR5][DDR4] Add the `RCDw` IMC timing
  * [Raptor Lake ] De-activate the MSR Uncore counter
  AMD:
  * "Zen3/Barcelo-R" and "Zen3+ Rembrandt-R" codenames
  * [Zen] Thermal highest limit reset fix
  Misc:
  * Code review and Registers documentation:
    AMD HWCR, Intel HDC and DRP</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677067200">- update to 1.95.4
  * [Intel] [from 11th to 14th gen]
    Convert the DRAM Speed to MT/s unit
    Compute the Bus Rate based on the BIOS MC PLL
- update to 1.95.3
  * [Intel] [Airmont]
    Improved the IMC geometry
    Introducing the Spreadtrum architecture
    Fixed the Bus and DRAM frequency rates
  * [Intel] [from 11th to 13th gen] Attempt to probe the interleaved controllers
  * [Intel] [Alder Lake/H] Attempt to decode the TCO Watchdog</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677153600">- added leap_compile_fix.patch to fix compilation on Leap</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1683115200">- removed leap_compile_fix.patch no needed anymore
- update to 1.96.0
  * [AMD]
    [RPL/X3D] Disabling the turbo boosted P-states change
    [PHOENIX] Adding Z1, U and HS PRO series.
    [Genoa] DAC address at UMC BAR + 0x40
    [Zen4] Adding the PCI entries of Genoa
    [Zen2] Adding remaining PCI entries
    [Zen] Query DAC &amp; CFG with the right UMC base address register
    [Zen4] Dump the CPUID Extended CPU Topology leaves.
    [Zen][Embedded][Banded Kestrel] R1000 Processor Family
    [Zen][Embedded] "Great Horned Owl", "River Hawk", "Grey Hawk"
    Complete the "Raven Ridge" and "Picasso" lists
    [EPYC] Moved "Snowy Owl" Embedded processors to CPUID 8F_01
    [Zen4] introducing Phoenix and Dragon Range
    [RMB] adding the Ryzen Embedded V3000 processors
    [VMR] adding the "AMD Ryzen 9 PRO 5945"
  * [Intel]
    Adding Granite Rapids, Sierra Forest, Grand Ridge entries
    Adding "Lunar Lake" and "Arrow Lake" entries.
  * [UI]
    Optimized decimal to digits converter
    Allow task tracker to select up to pid_max
    Can trace the frozen states of Linux tasks.
    Only print HWP frequencies within bounds.
    Fix ruler's aggregation.
  * [CR]
    Check CPUID[HV_PARTITION_PRIVILEGE_MASK] for HV_X64_MSR_VP_RUNTIME
    Uninitialized variable fix.
    [CPPC] Build EPP with KERNEL_VERSION(6) rather than CONFIG_CACHY
    [KERNEL] Linux 6.3: Employ modifier calls with the vma-&gt;vm_flags</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1684065600">- update to 1.96.1
  * [Driver]
  - Postpone Clock Source registration during startup until the Base Clock is computed.
  - Change class_create() according to Linux Kernel 6.4
  - Clear interrupt flag (cli) after Halt in the Idle method
  * [AMD]
  - [PHOENIX] Adding Ryzen 7940H, 7840H, 7640H
  - [VERMEER] Adding Ryzen PRO and Embedded processors
  - Ryzen Z1 CPUID' brand fix
  - Adding EPYC Embedded 9004 Series as Genoa
  - Adding EPYC Embedded 7003 Series as Milan
  - Adding EPYC Embedded 7002 Series as Rome
  - Adding EPYC Embedded 7001 Series as Naples</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1685880000">- update to 1.96.2
  * [Driver]
  - Allows compilation to keep going without CONFIG_ACPI_CPPC_LIB
  * [Client]
  - Adding two command line arguments:
  - Op Show Package C-States
  - OW Toggle Energy units
  * [AMD]
  - Specification of some Configuration MSRs</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1686830400">- update to 1.96.4
  * [AMD]
  - Display CPUID state of new and legacy features:
    Fused Multiply Add [FMA4]
    Extended Operation Support [XOP]
    Translation Cache Extension [TCE]
    Trailing Bit Manipulation [TBM]
    OS Visible Work-around [OSVW]
    LOCK prefix to read CR8 [AltMov]
  * [Intel]
  - Advanced Matrix Extensions [AMX]
  - Bits and Features of Sierra Forest and Grand Ridge
  - Attempt to decode the Meteor Lake Memory Controller
- update to 1.96.3
  * [AMD]
  - [Zeppelin] Probe more than one UMC controllers on Ryzen Threadripper 1900X
  - [Zen4] Dump SMBE and BMEC sub-leaves of CPUID 0x80000020</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1688212800">- update to 1.96.5
  * [AMD]
    Adding the "AMD Ryzen 5 5600X3D"
    Introducing the Zen4c Bergamo architecture
    Specs fixing of Embedded V-series and 3000 Series Processors
    Adding MENDOCINO, RAPHAEL Pro, PHOENIX Pro among others</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1712318400">- added preamble file for %kernel_module_package macro
- update to 1.97.1
  * added aarch64 support
  * upstream did not provide a summary changelog. Full list of commits:
    https://github.com/cyring/CoreFreq/compare/1.96.5...1.97.1</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715860800">- update to 1.97.2
  * [AMD]
  - [Hawk Point] Adding Ryzen PRO processors
  - [Phoenix] Adding the unlocked Ryzen 8000 Series
  * [Intel]
  - [MeteorLake] New bits specified
  - EEO and R2H bits inversion fix in MSR_POWER_CTL (0x1fc)
  - Reverse specification of MSR UNCORE_PERF_STATUS
  - Prefetchers fix of L1 Scrubbing, L1 Next Page and L2 AMP
  * [AArch64]
  - Providing Exclusive Load/Store to atomic operations
  - Improved asm of various macro functions
  - Removed LEGACY macros
  - Optimized the CORE_COUNT macros
  - Marked the Tools feature as nominal: Stress functions available
  - Allow user access to Retired Instructions counter
  - Fix Instructions counter overflow
  - Other PMC enhancements
  * [CR]
  - Fix a building issue with AlmaLinux aka RHEL-9
  - Linux kernel 6.9: Avoid redefinition of Intel MSR macros
  * [Doc]
  - README section for AlmaLinux
  - CONFIG_TRIM_UNUSED_KSYMS kernel build config is forbidden</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715947200">- fix dependency on kernel module that was not versioned</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1722081600">- update to 1.98.0
  * [Build]
  - Change dkms configuration to install into /usr/bin/
  - Solved compilation with Fedora using RHEL MINOR version number 99
  - [CR] Fixed some compilation warnings
  - [CR] Fix memory allocation in kernel pages for the SysGate
  - Workaround to musl change in basename (#494)
  - aarch64: Build with Redhat RHEL version 9
  - [CR] x86_64: Prevent array size overflow
  - dkms and ckms configuration files upgraded to version 1.98
  * [Intel]
  - [Raptor Lake] Adding the HB DID of i7-14700K' IMC
  - Mitigation mechanism: GDS_NO; RFDS_NO; MONITOR_MITG_NO
  - Apply some SDM Documentation Changes
  - [MTL] Fix CMD Stretch bit range width
  - Added method CLOCK_FLEX_MAX with Xeon's Nehalem &amp; Core 2
  - Grants full MSR_FLEX_RATIO access to tested architectures:
  - Alder Lake/S
  - Tiger Lake/U
  - Westmere/Gulftown
  - Provides the overclocking bins with unlocked processors
  - Query the Overclocking bit (OC) from Capabilities
  - Adding technologies: VMD, HDCP, IPU and VPU
  - Volume Management Device
  - High-Bandwidth Digital Content Protection
  - Image Processing Unit
  - Vision Processing Unit
  - Gaussian &amp; Neural Accelerator - GNA technology
  - [CR] Renamed Gemini Lake structures
  - [Meteor Lake] Introducing memory controller decoder
  * [AArch64]
  - Optimizing the Vcore seek
  - Workaround to Package discrete voltage: the highest Vcore
  - Improving computation of Euclidean division
  - Adjust frequency division in CNTFRQ and PMU counters
  - Scale a frequency factor from the interval
  - Refactoring the frequency ratios for decimal precision
  - Compile dev_pm_opp_put if Kernel greater or equal 4.11
  - Get the voltage core of CPUs from OPP
  * [AMD]
  - [Zen4][Raphael] Adding the EPYC 4004 Series
  - [Zen4] Clarify Hawk Point and Phoenix-Refresh architectures
  - [Family 19h] New voltage formula assigned to model 61h
  - Vcore activated
  - Voltage SoC deactivated
  - [Zen] Prevent the calculation of negative temperature (issue #496)
  - [Family 18h] Documented Hygon C86 7375
  - [Family 19h] PStateDef specification: Adding VID[8] bit 32
  - Specification of MSR HW_PSTATE_STATUS
  * [CLI]
  - aarch64: Display the state of the Memory Management Unit (MMU)
  - aarch64: State of Instruction Cache Unit I$ and Data Cache Unit D$
  - Added UI_RULER_MINIMUM &amp; UI_RULER_MAXIMUM building constraints
  - Revert "[CLI] Responsive ruler to architectural context"
  - This reverts commit 4bc38d6.
  - x86_64: AMD Boost and P-States redesigned
  - [UI] Hardening missing console/terminal size
  - Responsive ruler to architectural context
  - x86_64: Make HDCP meaning string shorter
  * [Driver]
  - Created C2U_Enable as a parameter alias of C1U_Enable</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1723032000">- update to 1.98.1
  * [AMD]
  - [Zen] Inject threshold events when thermal is out of bounds
  - Generic Zen architectures renamed with their Family number
  - Added a generic entry for the 1A family
  - Configure TjMax for multiple Ryzen and Threadripper
  - [CR] Optimize AMD temperature filtering function
  - [Zen5] Introducing the Eldora architecture aka "Granite Ridge"
  - [Zen5] Adding entries for Strix Point
  * [Intel]
  - Feature-bits of Core Ultra architecture
  - [TGL][ADL][RPL] New devices to probe IMC and Watchdog
  - [Raptor Lake-E] Adding the IMC probing entries
  - Grant full MSR_FLEX_RATIO access to Raptor Lake (06_B7)
  - Added Host Bridge DIDs of Raptor Lake-E
  - [ADL ... MTL] Code review of IMC decoders
  - [ADL] Compute DIMM Bank and Columns on both channels
  - [ADL] Process channels differently depending on DDR4 or DDR5
  - 12th to 14th generation IMC decoder refactoring
  - [ADL ... MTL] Adding Memory Controller Virtual Channel Count
  - [ADL ... MTL] Channel count as a function of DDPCD DDR_TYPE
  - [ADL ... MTL] Keep all enabled memory controllers
  - [12th and superior] Compute tWR quantity as a function of DDR version
  * [Build]
  - Now leave version number in Makefile
  - Pretty print the build and the clean of outputs
    Allow the V=n option increase the verbose level (incl. kernel)
  - CPU-Freq build against Linux Kernel version 6.11
  * [Documentation]
  - Refreshed README and Makefile</changelog>
</package>
<package pkgid="832ad0fa5a3be73dd79540d793eb0b6be342beae0dc2b4fcb43e7ee0aaccf27b94f79f3547021a39e2714cd73b94a79115415c1f707c5595e5d5476f95f4f3b3" name="CoreFreq" arch="src">
  <version epoch="0" ver="1.98.2" rel="1.3"/>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1667563200">- Repair deficient description grammar.</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1670241600">- update to 1.92.4:
  * [Intel/Skylake-X] Permits MSR_RING_PERF_LIMIT_REASONS</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1670932800">- removed modprobe_corefreqd.service.patch and harden_corefreqd.service.patch
  now included in new corefreqd.service file replacing stock one
- update to 1.93.1
  * [PRJ] CoreFreq version 1.93.1
  * [ACPI/CPPC/EPP] Preview of AMD/Zen Energy Preference (CONFIG_CACHY)
  * [UI] Changed the HWP or CPPC ratio bounds.
  * [FIX] Putting `corefreqd` in the root cgroup (issue #379) Thanks to gel-crabs
  * [DOC] Parameters to blacklist the amd_pstate since kernel 6.0.11
  * [AMD][Zen4] Apply a voltage formula based on Rembrandt's. (#378)
  * [AMD][Zen4/Raphael] Attempting temperature per CCD from TCTL+0x308
  * [AMD][Zen4] Changed Timer loop
  * [CR] CLI code review and UI optimizations
  * [UI] Auto refresh the Topology items when off/online
  * [CR] Conditionally build with additional PMC Counters
  * [Intel] Adding Z8000 System Memory Controller Registers
  * [CR] Transformed global variable in cells padding
  * [UI] Windows re-scaling fix
  * [UI] Apply color theming to the CPPC capabilities list.
  * [AMD][Raphael] Adding device DIDs to probe UMC and IOMMU
  * [CPPC/FMW] Computes value bounds while Enabling/Disabling firmware
  * [CR] CPPC lib errors are now raised to Debug level
  * [AMD][Zen4] Increased the UMC size to 12 channels.
  * [CPPC] Handles the OffLine CPU case.
  * [CLI] Refactoring HWP/CPPC to print all capabilities per CPU
  * [ACPI] Computes the CPPC Bounds
  * [Intel] Linear Address Masking (LAM)
  * [CLI] EFER: Left aligned labels
  * [AMD] Reports UAIE and AIBRSE bits from EFER system register
  * [CLI] Changed mitigation mechanisms incapability labels
  * [AMD][Zen2] Mitigation Mechanism BTC-NOBR * ACPI/OSPM documentation
  * [CR] Code review on bit masks
  * [CPPC][ACPI] Kernel may decode the Guaranteed Performance Register
  * [UI] Optimize the cycles to clear the time bar.
  * [CR] Code review for extra compiler warnings
  * [UI] Time of the day displayed in the right side of menu
  * [UI] Display the current date and time in menu bar
  * [Kernel] Introducing support of `CONFIG_SCHED_BORE`
  * [CLI] Fixing ambiguous CPPC report: hardware vs firmware
  * [CLI] Surrounds _CPC feature with square brackets
  * [CPPC] Provides the ACPI _CPC object state.
  * [UI] Colors the task being tracked in the tracking list
  * [UI] Display the current time in the menu bar
  * [CLI] Reserve the programmable TDP section to Intel processors.
  * [AMD/Zen3+] Improving the DIMM geometry of Rembrandt UMC</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1672747200">- update to 1.94.1:
  * [Intel] Gemini Lake
  * [AMD] Ryzen 5 6600 H SoC, UMC channels
  * [AMD] Rembrandt: maximum of two UMC channels
  * [AMD] Raphael: Decodes DIMM geometry from AddrCfg
  * [AMD] Zen: Aggregation refactored
  * [AMD] Improved DDR5 clock decoding
  * Optimized Idle Loop</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1673006400">- update to 1.94.3:
  * [AMD][RMB] If UMC is quad channels then unpopulate odd channels
  * [AMD][RPL] Provide Service Processor Vcore as workaround
  * [UI] Auto size and lay performance capabilities window
  * [UI] Adding comments to the EEO and R2H technologies
  * [AMD][Raphael] 7950X3D, 7900X3D. support</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1674475200">- update to 1.95.1:
  * [Intel] RPL: voltage of Pcore, Ecore, System Agent
  * [Intel] RPL and ADL Chipset device IDs
  * [Intel] Decode the RPL IMC and improve DDR5 support
  * [Build] Raise `MAX_FREQ_HZ` up to 7125000000 Hertz
  * [Intel] Mobile {Coffee Lake, Kaby Lake} codenames
  * [Intel] Braswell codename detection
  * [AMD] SYSCFG Register
  * [AMD] EPYC 9654
  * [AMD] Transparent SME
  * [AMD] DRAM Data Scrambling
  * [AMD] Adding "Barcelo R" and "Rembrandt R"</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1675944000">- update to 1.95.2:
  * Fixed the aggregation of the minimum ratio
  Intel:
  * [Airmont][Silvermont] Attempt to decode `tCKE` from DRMC
    register
  * [Airmont] Improve `tWTPr`, `B2B`, `tWWDR` timings
  * [Airmont] Provide a new IMC decoder
  * Add the Emerald Rapids architecture entry
  * [DDR5][DDR4] Add the `RCDw` IMC timing
  * [Raptor Lake ] De-activate the MSR Uncore counter
  AMD:
  * "Zen3/Barcelo-R" and "Zen3+ Rembrandt-R" codenames
  * [Zen] Thermal highest limit reset fix
  Misc:
  * Code review and Registers documentation:
    AMD HWCR, Intel HDC and DRP</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677067200">- update to 1.95.4
  * [Intel] [from 11th to 14th gen]
    Convert the DRAM Speed to MT/s unit
    Compute the Bus Rate based on the BIOS MC PLL
- update to 1.95.3
  * [Intel] [Airmont]
    Improved the IMC geometry
    Introducing the Spreadtrum architecture
    Fixed the Bus and DRAM frequency rates
  * [Intel] [from 11th to 13th gen] Attempt to probe the interleaved controllers
  * [Intel] [Alder Lake/H] Attempt to decode the TCO Watchdog</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677153600">- added leap_compile_fix.patch to fix compilation on Leap</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1683115200">- removed leap_compile_fix.patch no needed anymore
- update to 1.96.0
  * [AMD]
    [RPL/X3D] Disabling the turbo boosted P-states change
    [PHOENIX] Adding Z1, U and HS PRO series.
    [Genoa] DAC address at UMC BAR + 0x40
    [Zen4] Adding the PCI entries of Genoa
    [Zen2] Adding remaining PCI entries
    [Zen] Query DAC &amp; CFG with the right UMC base address register
    [Zen4] Dump the CPUID Extended CPU Topology leaves.
    [Zen][Embedded][Banded Kestrel] R1000 Processor Family
    [Zen][Embedded] "Great Horned Owl", "River Hawk", "Grey Hawk"
    Complete the "Raven Ridge" and "Picasso" lists
    [EPYC] Moved "Snowy Owl" Embedded processors to CPUID 8F_01
    [Zen4] introducing Phoenix and Dragon Range
    [RMB] adding the Ryzen Embedded V3000 processors
    [VMR] adding the "AMD Ryzen 9 PRO 5945"
  * [Intel]
    Adding Granite Rapids, Sierra Forest, Grand Ridge entries
    Adding "Lunar Lake" and "Arrow Lake" entries.
  * [UI]
    Optimized decimal to digits converter
    Allow task tracker to select up to pid_max
    Can trace the frozen states of Linux tasks.
    Only print HWP frequencies within bounds.
    Fix ruler's aggregation.
  * [CR]
    Check CPUID[HV_PARTITION_PRIVILEGE_MASK] for HV_X64_MSR_VP_RUNTIME
    Uninitialized variable fix.
    [CPPC] Build EPP with KERNEL_VERSION(6) rather than CONFIG_CACHY
    [KERNEL] Linux 6.3: Employ modifier calls with the vma-&gt;vm_flags</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1684065600">- update to 1.96.1
  * [Driver]
  - Postpone Clock Source registration during startup until the Base Clock is computed.
  - Change class_create() according to Linux Kernel 6.4
  - Clear interrupt flag (cli) after Halt in the Idle method
  * [AMD]
  - [PHOENIX] Adding Ryzen 7940H, 7840H, 7640H
  - [VERMEER] Adding Ryzen PRO and Embedded processors
  - Ryzen Z1 CPUID' brand fix
  - Adding EPYC Embedded 9004 Series as Genoa
  - Adding EPYC Embedded 7003 Series as Milan
  - Adding EPYC Embedded 7002 Series as Rome
  - Adding EPYC Embedded 7001 Series as Naples</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1685880000">- update to 1.96.2
  * [Driver]
  - Allows compilation to keep going without CONFIG_ACPI_CPPC_LIB
  * [Client]
  - Adding two command line arguments:
  - Op Show Package C-States
  - OW Toggle Energy units
  * [AMD]
  - Specification of some Configuration MSRs</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1686830400">- update to 1.96.4
  * [AMD]
  - Display CPUID state of new and legacy features:
    Fused Multiply Add [FMA4]
    Extended Operation Support [XOP]
    Translation Cache Extension [TCE]
    Trailing Bit Manipulation [TBM]
    OS Visible Work-around [OSVW]
    LOCK prefix to read CR8 [AltMov]
  * [Intel]
  - Advanced Matrix Extensions [AMX]
  - Bits and Features of Sierra Forest and Grand Ridge
  - Attempt to decode the Meteor Lake Memory Controller
- update to 1.96.3
  * [AMD]
  - [Zeppelin] Probe more than one UMC controllers on Ryzen Threadripper 1900X
  - [Zen4] Dump SMBE and BMEC sub-leaves of CPUID 0x80000020</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1688212800">- update to 1.96.5
  * [AMD]
    Adding the "AMD Ryzen 5 5600X3D"
    Introducing the Zen4c Bergamo architecture
    Specs fixing of Embedded V-series and 3000 Series Processors
    Adding MENDOCINO, RAPHAEL Pro, PHOENIX Pro among others</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1712318400">- added preamble file for %kernel_module_package macro
- update to 1.97.1
  * added aarch64 support
  * upstream did not provide a summary changelog. Full list of commits:
    https://github.com/cyring/CoreFreq/compare/1.96.5...1.97.1</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715860800">- update to 1.97.2
  * [AMD]
  - [Hawk Point] Adding Ryzen PRO processors
  - [Phoenix] Adding the unlocked Ryzen 8000 Series
  * [Intel]
  - [MeteorLake] New bits specified
  - EEO and R2H bits inversion fix in MSR_POWER_CTL (0x1fc)
  - Reverse specification of MSR UNCORE_PERF_STATUS
  - Prefetchers fix of L1 Scrubbing, L1 Next Page and L2 AMP
  * [AArch64]
  - Providing Exclusive Load/Store to atomic operations
  - Improved asm of various macro functions
  - Removed LEGACY macros
  - Optimized the CORE_COUNT macros
  - Marked the Tools feature as nominal: Stress functions available
  - Allow user access to Retired Instructions counter
  - Fix Instructions counter overflow
  - Other PMC enhancements
  * [CR]
  - Fix a building issue with AlmaLinux aka RHEL-9
  - Linux kernel 6.9: Avoid redefinition of Intel MSR macros
  * [Doc]
  - README section for AlmaLinux
  - CONFIG_TRIM_UNUSED_KSYMS kernel build config is forbidden</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715947200">- fix dependency on kernel module that was not versioned</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1722081600">- update to 1.98.0
  * [Build]
  - Change dkms configuration to install into /usr/bin/
  - Solved compilation with Fedora using RHEL MINOR version number 99
  - [CR] Fixed some compilation warnings
  - [CR] Fix memory allocation in kernel pages for the SysGate
  - Workaround to musl change in basename (#494)
  - aarch64: Build with Redhat RHEL version 9
  - [CR] x86_64: Prevent array size overflow
  - dkms and ckms configuration files upgraded to version 1.98
  * [Intel]
  - [Raptor Lake] Adding the HB DID of i7-14700K' IMC
  - Mitigation mechanism: GDS_NO; RFDS_NO; MONITOR_MITG_NO
  - Apply some SDM Documentation Changes
  - [MTL] Fix CMD Stretch bit range width
  - Added method CLOCK_FLEX_MAX with Xeon's Nehalem &amp; Core 2
  - Grants full MSR_FLEX_RATIO access to tested architectures:
  - Alder Lake/S
  - Tiger Lake/U
  - Westmere/Gulftown
  - Provides the overclocking bins with unlocked processors
  - Query the Overclocking bit (OC) from Capabilities
  - Adding technologies: VMD, HDCP, IPU and VPU
  - Volume Management Device
  - High-Bandwidth Digital Content Protection
  - Image Processing Unit
  - Vision Processing Unit
  - Gaussian &amp; Neural Accelerator - GNA technology
  - [CR] Renamed Gemini Lake structures
  - [Meteor Lake] Introducing memory controller decoder
  * [AArch64]
  - Optimizing the Vcore seek
  - Workaround to Package discrete voltage: the highest Vcore
  - Improving computation of Euclidean division
  - Adjust frequency division in CNTFRQ and PMU counters
  - Scale a frequency factor from the interval
  - Refactoring the frequency ratios for decimal precision
  - Compile dev_pm_opp_put if Kernel greater or equal 4.11
  - Get the voltage core of CPUs from OPP
  * [AMD]
  - [Zen4][Raphael] Adding the EPYC 4004 Series
  - [Zen4] Clarify Hawk Point and Phoenix-Refresh architectures
  - [Family 19h] New voltage formula assigned to model 61h
  - Vcore activated
  - Voltage SoC deactivated
  - [Zen] Prevent the calculation of negative temperature (issue #496)
  - [Family 18h] Documented Hygon C86 7375
  - [Family 19h] PStateDef specification: Adding VID[8] bit 32
  - Specification of MSR HW_PSTATE_STATUS
  * [CLI]
  - aarch64: Display the state of the Memory Management Unit (MMU)
  - aarch64: State of Instruction Cache Unit I$ and Data Cache Unit D$
  - Added UI_RULER_MINIMUM &amp; UI_RULER_MAXIMUM building constraints
  - Revert "[CLI] Responsive ruler to architectural context"
  - This reverts commit 4bc38d6.
  - x86_64: AMD Boost and P-States redesigned
  - [UI] Hardening missing console/terminal size
  - Responsive ruler to architectural context
  - x86_64: Make HDCP meaning string shorter
  * [Driver]
  - Created C2U_Enable as a parameter alias of C1U_Enable</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1723032000">- update to 1.98.1
  * [AMD]
  - [Zen] Inject threshold events when thermal is out of bounds
  - Generic Zen architectures renamed with their Family number
  - Added a generic entry for the 1A family
  - Configure TjMax for multiple Ryzen and Threadripper
  - [CR] Optimize AMD temperature filtering function
  - [Zen5] Introducing the Eldora architecture aka "Granite Ridge"
  - [Zen5] Adding entries for Strix Point
  * [Intel]
  - Feature-bits of Core Ultra architecture
  - [TGL][ADL][RPL] New devices to probe IMC and Watchdog
  - [Raptor Lake-E] Adding the IMC probing entries
  - Grant full MSR_FLEX_RATIO access to Raptor Lake (06_B7)
  - Added Host Bridge DIDs of Raptor Lake-E
  - [ADL ... MTL] Code review of IMC decoders
  - [ADL] Compute DIMM Bank and Columns on both channels
  - [ADL] Process channels differently depending on DDR4 or DDR5
  - 12th to 14th generation IMC decoder refactoring
  - [ADL ... MTL] Adding Memory Controller Virtual Channel Count
  - [ADL ... MTL] Channel count as a function of DDPCD DDR_TYPE
  - [ADL ... MTL] Keep all enabled memory controllers
  - [12th and superior] Compute tWR quantity as a function of DDR version
  * [Build]
  - Now leave version number in Makefile
  - Pretty print the build and the clean of outputs
    Allow the V=n option increase the verbose level (incl. kernel)
  - CPU-Freq build against Linux Kernel version 6.11
  * [Documentation]
  - Refreshed README and Makefile</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1723464000">- Update to 1.98.2
  * [Intel]
  - [WDT] Adding multiple devices to probe TCO
    C620 Series Chipset Production SKUs (0xa1a3)
    C620 Series Chipset Super SKUs (0xa223)
    Sunrise Point/H (0xa123)
    Cannon Lake/LP (0x9da3)
    Comet Lake/H (0x06a3)
    Ice Lake/LP (0x34a3)
    Tiger Lake/H (0x43a3)
    Elkhart Lake (0x4b23)
    Kaby Lake/H (0xa2a3)
    Cannon Lake (0xa323)
    Comet Lake/V (0xa3a3)
    Ice Lake/NG (0x38a3)
    Alder lake/M (0x54a3)
    Arrow Lake/S (0x7f23)
    Jasper Lake SMBus (0x4da3)
    Sunrise Point-LP SMBus (0x9d23)
    Comet Lake PCH-LP SMBus (0x02a3)
  - MSR_FLEX_RATIO register
    Grant access to Alder Lake/H (06_9A)
    Deny access to Nehalem/Bloomfield (06_1A)
    Removed a condition in access function</changelog>
</package>
<package pkgid="8ac10fbb5de8cfafc1f74026b2f81ded30ca127e0bfec0eaaa793baad08602612a209c0dd809fbb7d25d9c5b956f38be777f643e8fdc732a8c4845849f535e58" name="CoreFreq" arch="x86_64">
  <version epoch="0" ver="1.98.2" rel="1.3"/>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1667563200">- Repair deficient description grammar.</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1670241600">- update to 1.92.4:
  * [Intel/Skylake-X] Permits MSR_RING_PERF_LIMIT_REASONS</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1670932800">- removed modprobe_corefreqd.service.patch and harden_corefreqd.service.patch
  now included in new corefreqd.service file replacing stock one
- update to 1.93.1
  * [PRJ] CoreFreq version 1.93.1
  * [ACPI/CPPC/EPP] Preview of AMD/Zen Energy Preference (CONFIG_CACHY)
  * [UI] Changed the HWP or CPPC ratio bounds.
  * [FIX] Putting `corefreqd` in the root cgroup (issue #379) Thanks to gel-crabs
  * [DOC] Parameters to blacklist the amd_pstate since kernel 6.0.11
  * [AMD][Zen4] Apply a voltage formula based on Rembrandt's. (#378)
  * [AMD][Zen4/Raphael] Attempting temperature per CCD from TCTL+0x308
  * [AMD][Zen4] Changed Timer loop
  * [CR] CLI code review and UI optimizations
  * [UI] Auto refresh the Topology items when off/online
  * [CR] Conditionally build with additional PMC Counters
  * [Intel] Adding Z8000 System Memory Controller Registers
  * [CR] Transformed global variable in cells padding
  * [UI] Windows re-scaling fix
  * [UI] Apply color theming to the CPPC capabilities list.
  * [AMD][Raphael] Adding device DIDs to probe UMC and IOMMU
  * [CPPC/FMW] Computes value bounds while Enabling/Disabling firmware
  * [CR] CPPC lib errors are now raised to Debug level
  * [AMD][Zen4] Increased the UMC size to 12 channels.
  * [CPPC] Handles the OffLine CPU case.
  * [CLI] Refactoring HWP/CPPC to print all capabilities per CPU
  * [ACPI] Computes the CPPC Bounds
  * [Intel] Linear Address Masking (LAM)
  * [CLI] EFER: Left aligned labels
  * [AMD] Reports UAIE and AIBRSE bits from EFER system register
  * [CLI] Changed mitigation mechanisms incapability labels
  * [AMD][Zen2] Mitigation Mechanism BTC-NOBR * ACPI/OSPM documentation
  * [CR] Code review on bit masks
  * [CPPC][ACPI] Kernel may decode the Guaranteed Performance Register
  * [UI] Optimize the cycles to clear the time bar.
  * [CR] Code review for extra compiler warnings
  * [UI] Time of the day displayed in the right side of menu
  * [UI] Display the current date and time in menu bar
  * [Kernel] Introducing support of `CONFIG_SCHED_BORE`
  * [CLI] Fixing ambiguous CPPC report: hardware vs firmware
  * [CLI] Surrounds _CPC feature with square brackets
  * [CPPC] Provides the ACPI _CPC object state.
  * [UI] Colors the task being tracked in the tracking list
  * [UI] Display the current time in the menu bar
  * [CLI] Reserve the programmable TDP section to Intel processors.
  * [AMD/Zen3+] Improving the DIMM geometry of Rembrandt UMC</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1672747200">- update to 1.94.1:
  * [Intel] Gemini Lake
  * [AMD] Ryzen 5 6600 H SoC, UMC channels
  * [AMD] Rembrandt: maximum of two UMC channels
  * [AMD] Raphael: Decodes DIMM geometry from AddrCfg
  * [AMD] Zen: Aggregation refactored
  * [AMD] Improved DDR5 clock decoding
  * Optimized Idle Loop</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1673006400">- update to 1.94.3:
  * [AMD][RMB] If UMC is quad channels then unpopulate odd channels
  * [AMD][RPL] Provide Service Processor Vcore as workaround
  * [UI] Auto size and lay performance capabilities window
  * [UI] Adding comments to the EEO and R2H technologies
  * [AMD][Raphael] 7950X3D, 7900X3D. support</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1674475200">- update to 1.95.1:
  * [Intel] RPL: voltage of Pcore, Ecore, System Agent
  * [Intel] RPL and ADL Chipset device IDs
  * [Intel] Decode the RPL IMC and improve DDR5 support
  * [Build] Raise `MAX_FREQ_HZ` up to 7125000000 Hertz
  * [Intel] Mobile {Coffee Lake, Kaby Lake} codenames
  * [Intel] Braswell codename detection
  * [AMD] SYSCFG Register
  * [AMD] EPYC 9654
  * [AMD] Transparent SME
  * [AMD] DRAM Data Scrambling
  * [AMD] Adding "Barcelo R" and "Rembrandt R"</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1675944000">- update to 1.95.2:
  * Fixed the aggregation of the minimum ratio
  Intel:
  * [Airmont][Silvermont] Attempt to decode `tCKE` from DRMC
    register
  * [Airmont] Improve `tWTPr`, `B2B`, `tWWDR` timings
  * [Airmont] Provide a new IMC decoder
  * Add the Emerald Rapids architecture entry
  * [DDR5][DDR4] Add the `RCDw` IMC timing
  * [Raptor Lake ] De-activate the MSR Uncore counter
  AMD:
  * "Zen3/Barcelo-R" and "Zen3+ Rembrandt-R" codenames
  * [Zen] Thermal highest limit reset fix
  Misc:
  * Code review and Registers documentation:
    AMD HWCR, Intel HDC and DRP</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677067200">- update to 1.95.4
  * [Intel] [from 11th to 14th gen]
    Convert the DRAM Speed to MT/s unit
    Compute the Bus Rate based on the BIOS MC PLL
- update to 1.95.3
  * [Intel] [Airmont]
    Improved the IMC geometry
    Introducing the Spreadtrum architecture
    Fixed the Bus and DRAM frequency rates
  * [Intel] [from 11th to 13th gen] Attempt to probe the interleaved controllers
  * [Intel] [Alder Lake/H] Attempt to decode the TCO Watchdog</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677153600">- added leap_compile_fix.patch to fix compilation on Leap</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1683115200">- removed leap_compile_fix.patch no needed anymore
- update to 1.96.0
  * [AMD]
    [RPL/X3D] Disabling the turbo boosted P-states change
    [PHOENIX] Adding Z1, U and HS PRO series.
    [Genoa] DAC address at UMC BAR + 0x40
    [Zen4] Adding the PCI entries of Genoa
    [Zen2] Adding remaining PCI entries
    [Zen] Query DAC &amp; CFG with the right UMC base address register
    [Zen4] Dump the CPUID Extended CPU Topology leaves.
    [Zen][Embedded][Banded Kestrel] R1000 Processor Family
    [Zen][Embedded] "Great Horned Owl", "River Hawk", "Grey Hawk"
    Complete the "Raven Ridge" and "Picasso" lists
    [EPYC] Moved "Snowy Owl" Embedded processors to CPUID 8F_01
    [Zen4] introducing Phoenix and Dragon Range
    [RMB] adding the Ryzen Embedded V3000 processors
    [VMR] adding the "AMD Ryzen 9 PRO 5945"
  * [Intel]
    Adding Granite Rapids, Sierra Forest, Grand Ridge entries
    Adding "Lunar Lake" and "Arrow Lake" entries.
  * [UI]
    Optimized decimal to digits converter
    Allow task tracker to select up to pid_max
    Can trace the frozen states of Linux tasks.
    Only print HWP frequencies within bounds.
    Fix ruler's aggregation.
  * [CR]
    Check CPUID[HV_PARTITION_PRIVILEGE_MASK] for HV_X64_MSR_VP_RUNTIME
    Uninitialized variable fix.
    [CPPC] Build EPP with KERNEL_VERSION(6) rather than CONFIG_CACHY
    [KERNEL] Linux 6.3: Employ modifier calls with the vma-&gt;vm_flags</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1684065600">- update to 1.96.1
  * [Driver]
  - Postpone Clock Source registration during startup until the Base Clock is computed.
  - Change class_create() according to Linux Kernel 6.4
  - Clear interrupt flag (cli) after Halt in the Idle method
  * [AMD]
  - [PHOENIX] Adding Ryzen 7940H, 7840H, 7640H
  - [VERMEER] Adding Ryzen PRO and Embedded processors
  - Ryzen Z1 CPUID' brand fix
  - Adding EPYC Embedded 9004 Series as Genoa
  - Adding EPYC Embedded 7003 Series as Milan
  - Adding EPYC Embedded 7002 Series as Rome
  - Adding EPYC Embedded 7001 Series as Naples</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1685880000">- update to 1.96.2
  * [Driver]
  - Allows compilation to keep going without CONFIG_ACPI_CPPC_LIB
  * [Client]
  - Adding two command line arguments:
  - Op Show Package C-States
  - OW Toggle Energy units
  * [AMD]
  - Specification of some Configuration MSRs</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1686830400">- update to 1.96.4
  * [AMD]
  - Display CPUID state of new and legacy features:
    Fused Multiply Add [FMA4]
    Extended Operation Support [XOP]
    Translation Cache Extension [TCE]
    Trailing Bit Manipulation [TBM]
    OS Visible Work-around [OSVW]
    LOCK prefix to read CR8 [AltMov]
  * [Intel]
  - Advanced Matrix Extensions [AMX]
  - Bits and Features of Sierra Forest and Grand Ridge
  - Attempt to decode the Meteor Lake Memory Controller
- update to 1.96.3
  * [AMD]
  - [Zeppelin] Probe more than one UMC controllers on Ryzen Threadripper 1900X
  - [Zen4] Dump SMBE and BMEC sub-leaves of CPUID 0x80000020</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1688212800">- update to 1.96.5
  * [AMD]
    Adding the "AMD Ryzen 5 5600X3D"
    Introducing the Zen4c Bergamo architecture
    Specs fixing of Embedded V-series and 3000 Series Processors
    Adding MENDOCINO, RAPHAEL Pro, PHOENIX Pro among others</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1712318400">- added preamble file for %kernel_module_package macro
- update to 1.97.1
  * added aarch64 support
  * upstream did not provide a summary changelog. Full list of commits:
    https://github.com/cyring/CoreFreq/compare/1.96.5...1.97.1</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715860800">- update to 1.97.2
  * [AMD]
  - [Hawk Point] Adding Ryzen PRO processors
  - [Phoenix] Adding the unlocked Ryzen 8000 Series
  * [Intel]
  - [MeteorLake] New bits specified
  - EEO and R2H bits inversion fix in MSR_POWER_CTL (0x1fc)
  - Reverse specification of MSR UNCORE_PERF_STATUS
  - Prefetchers fix of L1 Scrubbing, L1 Next Page and L2 AMP
  * [AArch64]
  - Providing Exclusive Load/Store to atomic operations
  - Improved asm of various macro functions
  - Removed LEGACY macros
  - Optimized the CORE_COUNT macros
  - Marked the Tools feature as nominal: Stress functions available
  - Allow user access to Retired Instructions counter
  - Fix Instructions counter overflow
  - Other PMC enhancements
  * [CR]
  - Fix a building issue with AlmaLinux aka RHEL-9
  - Linux kernel 6.9: Avoid redefinition of Intel MSR macros
  * [Doc]
  - README section for AlmaLinux
  - CONFIG_TRIM_UNUSED_KSYMS kernel build config is forbidden</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715947200">- fix dependency on kernel module that was not versioned</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1722081600">- update to 1.98.0
  * [Build]
  - Change dkms configuration to install into /usr/bin/
  - Solved compilation with Fedora using RHEL MINOR version number 99
  - [CR] Fixed some compilation warnings
  - [CR] Fix memory allocation in kernel pages for the SysGate
  - Workaround to musl change in basename (#494)
  - aarch64: Build with Redhat RHEL version 9
  - [CR] x86_64: Prevent array size overflow
  - dkms and ckms configuration files upgraded to version 1.98
  * [Intel]
  - [Raptor Lake] Adding the HB DID of i7-14700K' IMC
  - Mitigation mechanism: GDS_NO; RFDS_NO; MONITOR_MITG_NO
  - Apply some SDM Documentation Changes
  - [MTL] Fix CMD Stretch bit range width
  - Added method CLOCK_FLEX_MAX with Xeon's Nehalem &amp; Core 2
  - Grants full MSR_FLEX_RATIO access to tested architectures:
  - Alder Lake/S
  - Tiger Lake/U
  - Westmere/Gulftown
  - Provides the overclocking bins with unlocked processors
  - Query the Overclocking bit (OC) from Capabilities
  - Adding technologies: VMD, HDCP, IPU and VPU
  - Volume Management Device
  - High-Bandwidth Digital Content Protection
  - Image Processing Unit
  - Vision Processing Unit
  - Gaussian &amp; Neural Accelerator - GNA technology
  - [CR] Renamed Gemini Lake structures
  - [Meteor Lake] Introducing memory controller decoder
  * [AArch64]
  - Optimizing the Vcore seek
  - Workaround to Package discrete voltage: the highest Vcore
  - Improving computation of Euclidean division
  - Adjust frequency division in CNTFRQ and PMU counters
  - Scale a frequency factor from the interval
  - Refactoring the frequency ratios for decimal precision
  - Compile dev_pm_opp_put if Kernel greater or equal 4.11
  - Get the voltage core of CPUs from OPP
  * [AMD]
  - [Zen4][Raphael] Adding the EPYC 4004 Series
  - [Zen4] Clarify Hawk Point and Phoenix-Refresh architectures
  - [Family 19h] New voltage formula assigned to model 61h
  - Vcore activated
  - Voltage SoC deactivated
  - [Zen] Prevent the calculation of negative temperature (issue #496)
  - [Family 18h] Documented Hygon C86 7375
  - [Family 19h] PStateDef specification: Adding VID[8] bit 32
  - Specification of MSR HW_PSTATE_STATUS
  * [CLI]
  - aarch64: Display the state of the Memory Management Unit (MMU)
  - aarch64: State of Instruction Cache Unit I$ and Data Cache Unit D$
  - Added UI_RULER_MINIMUM &amp; UI_RULER_MAXIMUM building constraints
  - Revert "[CLI] Responsive ruler to architectural context"
  - This reverts commit 4bc38d6.
  - x86_64: AMD Boost and P-States redesigned
  - [UI] Hardening missing console/terminal size
  - Responsive ruler to architectural context
  - x86_64: Make HDCP meaning string shorter
  * [Driver]
  - Created C2U_Enable as a parameter alias of C1U_Enable</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1723032000">- update to 1.98.1
  * [AMD]
  - [Zen] Inject threshold events when thermal is out of bounds
  - Generic Zen architectures renamed with their Family number
  - Added a generic entry for the 1A family
  - Configure TjMax for multiple Ryzen and Threadripper
  - [CR] Optimize AMD temperature filtering function
  - [Zen5] Introducing the Eldora architecture aka "Granite Ridge"
  - [Zen5] Adding entries for Strix Point
  * [Intel]
  - Feature-bits of Core Ultra architecture
  - [TGL][ADL][RPL] New devices to probe IMC and Watchdog
  - [Raptor Lake-E] Adding the IMC probing entries
  - Grant full MSR_FLEX_RATIO access to Raptor Lake (06_B7)
  - Added Host Bridge DIDs of Raptor Lake-E
  - [ADL ... MTL] Code review of IMC decoders
  - [ADL] Compute DIMM Bank and Columns on both channels
  - [ADL] Process channels differently depending on DDR4 or DDR5
  - 12th to 14th generation IMC decoder refactoring
  - [ADL ... MTL] Adding Memory Controller Virtual Channel Count
  - [ADL ... MTL] Channel count as a function of DDPCD DDR_TYPE
  - [ADL ... MTL] Keep all enabled memory controllers
  - [12th and superior] Compute tWR quantity as a function of DDR version
  * [Build]
  - Now leave version number in Makefile
  - Pretty print the build and the clean of outputs
    Allow the V=n option increase the verbose level (incl. kernel)
  - CPU-Freq build against Linux Kernel version 6.11
  * [Documentation]
  - Refreshed README and Makefile</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1723464000">- Update to 1.98.2
  * [Intel]
  - [WDT] Adding multiple devices to probe TCO
    C620 Series Chipset Production SKUs (0xa1a3)
    C620 Series Chipset Super SKUs (0xa223)
    Sunrise Point/H (0xa123)
    Cannon Lake/LP (0x9da3)
    Comet Lake/H (0x06a3)
    Ice Lake/LP (0x34a3)
    Tiger Lake/H (0x43a3)
    Elkhart Lake (0x4b23)
    Kaby Lake/H (0xa2a3)
    Cannon Lake (0xa323)
    Comet Lake/V (0xa3a3)
    Ice Lake/NG (0x38a3)
    Alder lake/M (0x54a3)
    Arrow Lake/S (0x7f23)
    Jasper Lake SMBus (0x4da3)
    Sunrise Point-LP SMBus (0x9d23)
    Comet Lake PCH-LP SMBus (0x02a3)
  - MSR_FLEX_RATIO register
    Grant access to Alder Lake/H (06_9A)
    Deny access to Nehalem/Bloomfield (06_1A)
    Removed a condition in access function</changelog>
</package>
<package pkgid="bbdd66a0fec2dfbda3001dd77ea0b0811924e30715b2a629f3364da85a2cc1c91adca2bb4c8a2dc1975384b555a7b3233f01a01bc4a848d2217a5e097fb15d5d" name="CoreFreq" arch="src">
  <version epoch="0" ver="1.98.3" rel="1.1"/>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1670241600">- update to 1.92.4:
  * [Intel/Skylake-X] Permits MSR_RING_PERF_LIMIT_REASONS</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1670932800">- removed modprobe_corefreqd.service.patch and harden_corefreqd.service.patch
  now included in new corefreqd.service file replacing stock one
- update to 1.93.1
  * [PRJ] CoreFreq version 1.93.1
  * [ACPI/CPPC/EPP] Preview of AMD/Zen Energy Preference (CONFIG_CACHY)
  * [UI] Changed the HWP or CPPC ratio bounds.
  * [FIX] Putting `corefreqd` in the root cgroup (issue #379) Thanks to gel-crabs
  * [DOC] Parameters to blacklist the amd_pstate since kernel 6.0.11
  * [AMD][Zen4] Apply a voltage formula based on Rembrandt's. (#378)
  * [AMD][Zen4/Raphael] Attempting temperature per CCD from TCTL+0x308
  * [AMD][Zen4] Changed Timer loop
  * [CR] CLI code review and UI optimizations
  * [UI] Auto refresh the Topology items when off/online
  * [CR] Conditionally build with additional PMC Counters
  * [Intel] Adding Z8000 System Memory Controller Registers
  * [CR] Transformed global variable in cells padding
  * [UI] Windows re-scaling fix
  * [UI] Apply color theming to the CPPC capabilities list.
  * [AMD][Raphael] Adding device DIDs to probe UMC and IOMMU
  * [CPPC/FMW] Computes value bounds while Enabling/Disabling firmware
  * [CR] CPPC lib errors are now raised to Debug level
  * [AMD][Zen4] Increased the UMC size to 12 channels.
  * [CPPC] Handles the OffLine CPU case.
  * [CLI] Refactoring HWP/CPPC to print all capabilities per CPU
  * [ACPI] Computes the CPPC Bounds
  * [Intel] Linear Address Masking (LAM)
  * [CLI] EFER: Left aligned labels
  * [AMD] Reports UAIE and AIBRSE bits from EFER system register
  * [CLI] Changed mitigation mechanisms incapability labels
  * [AMD][Zen2] Mitigation Mechanism BTC-NOBR * ACPI/OSPM documentation
  * [CR] Code review on bit masks
  * [CPPC][ACPI] Kernel may decode the Guaranteed Performance Register
  * [UI] Optimize the cycles to clear the time bar.
  * [CR] Code review for extra compiler warnings
  * [UI] Time of the day displayed in the right side of menu
  * [UI] Display the current date and time in menu bar
  * [Kernel] Introducing support of `CONFIG_SCHED_BORE`
  * [CLI] Fixing ambiguous CPPC report: hardware vs firmware
  * [CLI] Surrounds _CPC feature with square brackets
  * [CPPC] Provides the ACPI _CPC object state.
  * [UI] Colors the task being tracked in the tracking list
  * [UI] Display the current time in the menu bar
  * [CLI] Reserve the programmable TDP section to Intel processors.
  * [AMD/Zen3+] Improving the DIMM geometry of Rembrandt UMC</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1672747200">- update to 1.94.1:
  * [Intel] Gemini Lake
  * [AMD] Ryzen 5 6600 H SoC, UMC channels
  * [AMD] Rembrandt: maximum of two UMC channels
  * [AMD] Raphael: Decodes DIMM geometry from AddrCfg
  * [AMD] Zen: Aggregation refactored
  * [AMD] Improved DDR5 clock decoding
  * Optimized Idle Loop</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1673006400">- update to 1.94.3:
  * [AMD][RMB] If UMC is quad channels then unpopulate odd channels
  * [AMD][RPL] Provide Service Processor Vcore as workaround
  * [UI] Auto size and lay performance capabilities window
  * [UI] Adding comments to the EEO and R2H technologies
  * [AMD][Raphael] 7950X3D, 7900X3D. support</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1674475200">- update to 1.95.1:
  * [Intel] RPL: voltage of Pcore, Ecore, System Agent
  * [Intel] RPL and ADL Chipset device IDs
  * [Intel] Decode the RPL IMC and improve DDR5 support
  * [Build] Raise `MAX_FREQ_HZ` up to 7125000000 Hertz
  * [Intel] Mobile {Coffee Lake, Kaby Lake} codenames
  * [Intel] Braswell codename detection
  * [AMD] SYSCFG Register
  * [AMD] EPYC 9654
  * [AMD] Transparent SME
  * [AMD] DRAM Data Scrambling
  * [AMD] Adding "Barcelo R" and "Rembrandt R"</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1675944000">- update to 1.95.2:
  * Fixed the aggregation of the minimum ratio
  Intel:
  * [Airmont][Silvermont] Attempt to decode `tCKE` from DRMC
    register
  * [Airmont] Improve `tWTPr`, `B2B`, `tWWDR` timings
  * [Airmont] Provide a new IMC decoder
  * Add the Emerald Rapids architecture entry
  * [DDR5][DDR4] Add the `RCDw` IMC timing
  * [Raptor Lake ] De-activate the MSR Uncore counter
  AMD:
  * "Zen3/Barcelo-R" and "Zen3+ Rembrandt-R" codenames
  * [Zen] Thermal highest limit reset fix
  Misc:
  * Code review and Registers documentation:
    AMD HWCR, Intel HDC and DRP</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677067200">- update to 1.95.4
  * [Intel] [from 11th to 14th gen]
    Convert the DRAM Speed to MT/s unit
    Compute the Bus Rate based on the BIOS MC PLL
- update to 1.95.3
  * [Intel] [Airmont]
    Improved the IMC geometry
    Introducing the Spreadtrum architecture
    Fixed the Bus and DRAM frequency rates
  * [Intel] [from 11th to 13th gen] Attempt to probe the interleaved controllers
  * [Intel] [Alder Lake/H] Attempt to decode the TCO Watchdog</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677153600">- added leap_compile_fix.patch to fix compilation on Leap</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1683115200">- removed leap_compile_fix.patch no needed anymore
- update to 1.96.0
  * [AMD]
    [RPL/X3D] Disabling the turbo boosted P-states change
    [PHOENIX] Adding Z1, U and HS PRO series.
    [Genoa] DAC address at UMC BAR + 0x40
    [Zen4] Adding the PCI entries of Genoa
    [Zen2] Adding remaining PCI entries
    [Zen] Query DAC &amp; CFG with the right UMC base address register
    [Zen4] Dump the CPUID Extended CPU Topology leaves.
    [Zen][Embedded][Banded Kestrel] R1000 Processor Family
    [Zen][Embedded] "Great Horned Owl", "River Hawk", "Grey Hawk"
    Complete the "Raven Ridge" and "Picasso" lists
    [EPYC] Moved "Snowy Owl" Embedded processors to CPUID 8F_01
    [Zen4] introducing Phoenix and Dragon Range
    [RMB] adding the Ryzen Embedded V3000 processors
    [VMR] adding the "AMD Ryzen 9 PRO 5945"
  * [Intel]
    Adding Granite Rapids, Sierra Forest, Grand Ridge entries
    Adding "Lunar Lake" and "Arrow Lake" entries.
  * [UI]
    Optimized decimal to digits converter
    Allow task tracker to select up to pid_max
    Can trace the frozen states of Linux tasks.
    Only print HWP frequencies within bounds.
    Fix ruler's aggregation.
  * [CR]
    Check CPUID[HV_PARTITION_PRIVILEGE_MASK] for HV_X64_MSR_VP_RUNTIME
    Uninitialized variable fix.
    [CPPC] Build EPP with KERNEL_VERSION(6) rather than CONFIG_CACHY
    [KERNEL] Linux 6.3: Employ modifier calls with the vma-&gt;vm_flags</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1684065600">- update to 1.96.1
  * [Driver]
  - Postpone Clock Source registration during startup until the Base Clock is computed.
  - Change class_create() according to Linux Kernel 6.4
  - Clear interrupt flag (cli) after Halt in the Idle method
  * [AMD]
  - [PHOENIX] Adding Ryzen 7940H, 7840H, 7640H
  - [VERMEER] Adding Ryzen PRO and Embedded processors
  - Ryzen Z1 CPUID' brand fix
  - Adding EPYC Embedded 9004 Series as Genoa
  - Adding EPYC Embedded 7003 Series as Milan
  - Adding EPYC Embedded 7002 Series as Rome
  - Adding EPYC Embedded 7001 Series as Naples</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1685880000">- update to 1.96.2
  * [Driver]
  - Allows compilation to keep going without CONFIG_ACPI_CPPC_LIB
  * [Client]
  - Adding two command line arguments:
  - Op Show Package C-States
  - OW Toggle Energy units
  * [AMD]
  - Specification of some Configuration MSRs</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1686830400">- update to 1.96.4
  * [AMD]
  - Display CPUID state of new and legacy features:
    Fused Multiply Add [FMA4]
    Extended Operation Support [XOP]
    Translation Cache Extension [TCE]
    Trailing Bit Manipulation [TBM]
    OS Visible Work-around [OSVW]
    LOCK prefix to read CR8 [AltMov]
  * [Intel]
  - Advanced Matrix Extensions [AMX]
  - Bits and Features of Sierra Forest and Grand Ridge
  - Attempt to decode the Meteor Lake Memory Controller
- update to 1.96.3
  * [AMD]
  - [Zeppelin] Probe more than one UMC controllers on Ryzen Threadripper 1900X
  - [Zen4] Dump SMBE and BMEC sub-leaves of CPUID 0x80000020</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1688212800">- update to 1.96.5
  * [AMD]
    Adding the "AMD Ryzen 5 5600X3D"
    Introducing the Zen4c Bergamo architecture
    Specs fixing of Embedded V-series and 3000 Series Processors
    Adding MENDOCINO, RAPHAEL Pro, PHOENIX Pro among others</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1712318400">- added preamble file for %kernel_module_package macro
- update to 1.97.1
  * added aarch64 support
  * upstream did not provide a summary changelog. Full list of commits:
    https://github.com/cyring/CoreFreq/compare/1.96.5...1.97.1</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715860800">- update to 1.97.2
  * [AMD]
  - [Hawk Point] Adding Ryzen PRO processors
  - [Phoenix] Adding the unlocked Ryzen 8000 Series
  * [Intel]
  - [MeteorLake] New bits specified
  - EEO and R2H bits inversion fix in MSR_POWER_CTL (0x1fc)
  - Reverse specification of MSR UNCORE_PERF_STATUS
  - Prefetchers fix of L1 Scrubbing, L1 Next Page and L2 AMP
  * [AArch64]
  - Providing Exclusive Load/Store to atomic operations
  - Improved asm of various macro functions
  - Removed LEGACY macros
  - Optimized the CORE_COUNT macros
  - Marked the Tools feature as nominal: Stress functions available
  - Allow user access to Retired Instructions counter
  - Fix Instructions counter overflow
  - Other PMC enhancements
  * [CR]
  - Fix a building issue with AlmaLinux aka RHEL-9
  - Linux kernel 6.9: Avoid redefinition of Intel MSR macros
  * [Doc]
  - README section for AlmaLinux
  - CONFIG_TRIM_UNUSED_KSYMS kernel build config is forbidden</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715947200">- fix dependency on kernel module that was not versioned</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1722081600">- update to 1.98.0
  * [Build]
  - Change dkms configuration to install into /usr/bin/
  - Solved compilation with Fedora using RHEL MINOR version number 99
  - [CR] Fixed some compilation warnings
  - [CR] Fix memory allocation in kernel pages for the SysGate
  - Workaround to musl change in basename (#494)
  - aarch64: Build with Redhat RHEL version 9
  - [CR] x86_64: Prevent array size overflow
  - dkms and ckms configuration files upgraded to version 1.98
  * [Intel]
  - [Raptor Lake] Adding the HB DID of i7-14700K' IMC
  - Mitigation mechanism: GDS_NO; RFDS_NO; MONITOR_MITG_NO
  - Apply some SDM Documentation Changes
  - [MTL] Fix CMD Stretch bit range width
  - Added method CLOCK_FLEX_MAX with Xeon's Nehalem &amp; Core 2
  - Grants full MSR_FLEX_RATIO access to tested architectures:
  - Alder Lake/S
  - Tiger Lake/U
  - Westmere/Gulftown
  - Provides the overclocking bins with unlocked processors
  - Query the Overclocking bit (OC) from Capabilities
  - Adding technologies: VMD, HDCP, IPU and VPU
  - Volume Management Device
  - High-Bandwidth Digital Content Protection
  - Image Processing Unit
  - Vision Processing Unit
  - Gaussian &amp; Neural Accelerator - GNA technology
  - [CR] Renamed Gemini Lake structures
  - [Meteor Lake] Introducing memory controller decoder
  * [AArch64]
  - Optimizing the Vcore seek
  - Workaround to Package discrete voltage: the highest Vcore
  - Improving computation of Euclidean division
  - Adjust frequency division in CNTFRQ and PMU counters
  - Scale a frequency factor from the interval
  - Refactoring the frequency ratios for decimal precision
  - Compile dev_pm_opp_put if Kernel greater or equal 4.11
  - Get the voltage core of CPUs from OPP
  * [AMD]
  - [Zen4][Raphael] Adding the EPYC 4004 Series
  - [Zen4] Clarify Hawk Point and Phoenix-Refresh architectures
  - [Family 19h] New voltage formula assigned to model 61h
  - Vcore activated
  - Voltage SoC deactivated
  - [Zen] Prevent the calculation of negative temperature (issue #496)
  - [Family 18h] Documented Hygon C86 7375
  - [Family 19h] PStateDef specification: Adding VID[8] bit 32
  - Specification of MSR HW_PSTATE_STATUS
  * [CLI]
  - aarch64: Display the state of the Memory Management Unit (MMU)
  - aarch64: State of Instruction Cache Unit I$ and Data Cache Unit D$
  - Added UI_RULER_MINIMUM &amp; UI_RULER_MAXIMUM building constraints
  - Revert "[CLI] Responsive ruler to architectural context"
  - This reverts commit 4bc38d6.
  - x86_64: AMD Boost and P-States redesigned
  - [UI] Hardening missing console/terminal size
  - Responsive ruler to architectural context
  - x86_64: Make HDCP meaning string shorter
  * [Driver]
  - Created C2U_Enable as a parameter alias of C1U_Enable</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1723032000">- update to 1.98.1
  * [AMD]
  - [Zen] Inject threshold events when thermal is out of bounds
  - Generic Zen architectures renamed with their Family number
  - Added a generic entry for the 1A family
  - Configure TjMax for multiple Ryzen and Threadripper
  - [CR] Optimize AMD temperature filtering function
  - [Zen5] Introducing the Eldora architecture aka "Granite Ridge"
  - [Zen5] Adding entries for Strix Point
  * [Intel]
  - Feature-bits of Core Ultra architecture
  - [TGL][ADL][RPL] New devices to probe IMC and Watchdog
  - [Raptor Lake-E] Adding the IMC probing entries
  - Grant full MSR_FLEX_RATIO access to Raptor Lake (06_B7)
  - Added Host Bridge DIDs of Raptor Lake-E
  - [ADL ... MTL] Code review of IMC decoders
  - [ADL] Compute DIMM Bank and Columns on both channels
  - [ADL] Process channels differently depending on DDR4 or DDR5
  - 12th to 14th generation IMC decoder refactoring
  - [ADL ... MTL] Adding Memory Controller Virtual Channel Count
  - [ADL ... MTL] Channel count as a function of DDPCD DDR_TYPE
  - [ADL ... MTL] Keep all enabled memory controllers
  - [12th and superior] Compute tWR quantity as a function of DDR version
  * [Build]
  - Now leave version number in Makefile
  - Pretty print the build and the clean of outputs
    Allow the V=n option increase the verbose level (incl. kernel)
  - CPU-Freq build against Linux Kernel version 6.11
  * [Documentation]
  - Refreshed README and Makefile</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1723464000">- Update to 1.98.2
  * [Intel]
  - [WDT] Adding multiple devices to probe TCO
    C620 Series Chipset Production SKUs (0xa1a3)
    C620 Series Chipset Super SKUs (0xa223)
    Sunrise Point/H (0xa123)
    Cannon Lake/LP (0x9da3)
    Comet Lake/H (0x06a3)
    Ice Lake/LP (0x34a3)
    Tiger Lake/H (0x43a3)
    Elkhart Lake (0x4b23)
    Kaby Lake/H (0xa2a3)
    Cannon Lake (0xa323)
    Comet Lake/V (0xa3a3)
    Ice Lake/NG (0x38a3)
    Alder lake/M (0x54a3)
    Arrow Lake/S (0x7f23)
    Jasper Lake SMBus (0x4da3)
    Sunrise Point-LP SMBus (0x9d23)
    Comet Lake PCH-LP SMBus (0x02a3)
  - MSR_FLEX_RATIO register
    Grant access to Alder Lake/H (06_9A)
    Deny access to Nehalem/Bloomfield (06_1A)
    Removed a condition in access function</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1725019200">- Update to 1.98.3
  * [AMD]
  - [VMR/RPL/GNR] Voltage Curve Optimizer (VCO)
  - Provide a specific VCO formula based on HWM_CHIPSET=AMD_VCO
    build parameter
  - The standard voltage formulas are restored to these architectures
  - Zen5: Guessed a new P-State MSR bits specification to fix the
    Coefficient Of Frequency (COF)</changelog>
</package>
<package pkgid="2be7fca548ab2d97f5b1f2fa24700920c0789bd913ad5f6f445d801320421e135d03d767340e58d00a3fc1674d44ccf74a2dbad97625ddb78bf7a2f27be9951e" name="CoreFreq" arch="x86_64">
  <version epoch="0" ver="1.98.3" rel="1.1"/>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1670241600">- update to 1.92.4:
  * [Intel/Skylake-X] Permits MSR_RING_PERF_LIMIT_REASONS</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1670932800">- removed modprobe_corefreqd.service.patch and harden_corefreqd.service.patch
  now included in new corefreqd.service file replacing stock one
- update to 1.93.1
  * [PRJ] CoreFreq version 1.93.1
  * [ACPI/CPPC/EPP] Preview of AMD/Zen Energy Preference (CONFIG_CACHY)
  * [UI] Changed the HWP or CPPC ratio bounds.
  * [FIX] Putting `corefreqd` in the root cgroup (issue #379) Thanks to gel-crabs
  * [DOC] Parameters to blacklist the amd_pstate since kernel 6.0.11
  * [AMD][Zen4] Apply a voltage formula based on Rembrandt's. (#378)
  * [AMD][Zen4/Raphael] Attempting temperature per CCD from TCTL+0x308
  * [AMD][Zen4] Changed Timer loop
  * [CR] CLI code review and UI optimizations
  * [UI] Auto refresh the Topology items when off/online
  * [CR] Conditionally build with additional PMC Counters
  * [Intel] Adding Z8000 System Memory Controller Registers
  * [CR] Transformed global variable in cells padding
  * [UI] Windows re-scaling fix
  * [UI] Apply color theming to the CPPC capabilities list.
  * [AMD][Raphael] Adding device DIDs to probe UMC and IOMMU
  * [CPPC/FMW] Computes value bounds while Enabling/Disabling firmware
  * [CR] CPPC lib errors are now raised to Debug level
  * [AMD][Zen4] Increased the UMC size to 12 channels.
  * [CPPC] Handles the OffLine CPU case.
  * [CLI] Refactoring HWP/CPPC to print all capabilities per CPU
  * [ACPI] Computes the CPPC Bounds
  * [Intel] Linear Address Masking (LAM)
  * [CLI] EFER: Left aligned labels
  * [AMD] Reports UAIE and AIBRSE bits from EFER system register
  * [CLI] Changed mitigation mechanisms incapability labels
  * [AMD][Zen2] Mitigation Mechanism BTC-NOBR * ACPI/OSPM documentation
  * [CR] Code review on bit masks
  * [CPPC][ACPI] Kernel may decode the Guaranteed Performance Register
  * [UI] Optimize the cycles to clear the time bar.
  * [CR] Code review for extra compiler warnings
  * [UI] Time of the day displayed in the right side of menu
  * [UI] Display the current date and time in menu bar
  * [Kernel] Introducing support of `CONFIG_SCHED_BORE`
  * [CLI] Fixing ambiguous CPPC report: hardware vs firmware
  * [CLI] Surrounds _CPC feature with square brackets
  * [CPPC] Provides the ACPI _CPC object state.
  * [UI] Colors the task being tracked in the tracking list
  * [UI] Display the current time in the menu bar
  * [CLI] Reserve the programmable TDP section to Intel processors.
  * [AMD/Zen3+] Improving the DIMM geometry of Rembrandt UMC</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1672747200">- update to 1.94.1:
  * [Intel] Gemini Lake
  * [AMD] Ryzen 5 6600 H SoC, UMC channels
  * [AMD] Rembrandt: maximum of two UMC channels
  * [AMD] Raphael: Decodes DIMM geometry from AddrCfg
  * [AMD] Zen: Aggregation refactored
  * [AMD] Improved DDR5 clock decoding
  * Optimized Idle Loop</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1673006400">- update to 1.94.3:
  * [AMD][RMB] If UMC is quad channels then unpopulate odd channels
  * [AMD][RPL] Provide Service Processor Vcore as workaround
  * [UI] Auto size and lay performance capabilities window
  * [UI] Adding comments to the EEO and R2H technologies
  * [AMD][Raphael] 7950X3D, 7900X3D. support</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1674475200">- update to 1.95.1:
  * [Intel] RPL: voltage of Pcore, Ecore, System Agent
  * [Intel] RPL and ADL Chipset device IDs
  * [Intel] Decode the RPL IMC and improve DDR5 support
  * [Build] Raise `MAX_FREQ_HZ` up to 7125000000 Hertz
  * [Intel] Mobile {Coffee Lake, Kaby Lake} codenames
  * [Intel] Braswell codename detection
  * [AMD] SYSCFG Register
  * [AMD] EPYC 9654
  * [AMD] Transparent SME
  * [AMD] DRAM Data Scrambling
  * [AMD] Adding "Barcelo R" and "Rembrandt R"</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1675944000">- update to 1.95.2:
  * Fixed the aggregation of the minimum ratio
  Intel:
  * [Airmont][Silvermont] Attempt to decode `tCKE` from DRMC
    register
  * [Airmont] Improve `tWTPr`, `B2B`, `tWWDR` timings
  * [Airmont] Provide a new IMC decoder
  * Add the Emerald Rapids architecture entry
  * [DDR5][DDR4] Add the `RCDw` IMC timing
  * [Raptor Lake ] De-activate the MSR Uncore counter
  AMD:
  * "Zen3/Barcelo-R" and "Zen3+ Rembrandt-R" codenames
  * [Zen] Thermal highest limit reset fix
  Misc:
  * Code review and Registers documentation:
    AMD HWCR, Intel HDC and DRP</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677067200">- update to 1.95.4
  * [Intel] [from 11th to 14th gen]
    Convert the DRAM Speed to MT/s unit
    Compute the Bus Rate based on the BIOS MC PLL
- update to 1.95.3
  * [Intel] [Airmont]
    Improved the IMC geometry
    Introducing the Spreadtrum architecture
    Fixed the Bus and DRAM frequency rates
  * [Intel] [from 11th to 13th gen] Attempt to probe the interleaved controllers
  * [Intel] [Alder Lake/H] Attempt to decode the TCO Watchdog</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677153600">- added leap_compile_fix.patch to fix compilation on Leap</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1683115200">- removed leap_compile_fix.patch no needed anymore
- update to 1.96.0
  * [AMD]
    [RPL/X3D] Disabling the turbo boosted P-states change
    [PHOENIX] Adding Z1, U and HS PRO series.
    [Genoa] DAC address at UMC BAR + 0x40
    [Zen4] Adding the PCI entries of Genoa
    [Zen2] Adding remaining PCI entries
    [Zen] Query DAC &amp; CFG with the right UMC base address register
    [Zen4] Dump the CPUID Extended CPU Topology leaves.
    [Zen][Embedded][Banded Kestrel] R1000 Processor Family
    [Zen][Embedded] "Great Horned Owl", "River Hawk", "Grey Hawk"
    Complete the "Raven Ridge" and "Picasso" lists
    [EPYC] Moved "Snowy Owl" Embedded processors to CPUID 8F_01
    [Zen4] introducing Phoenix and Dragon Range
    [RMB] adding the Ryzen Embedded V3000 processors
    [VMR] adding the "AMD Ryzen 9 PRO 5945"
  * [Intel]
    Adding Granite Rapids, Sierra Forest, Grand Ridge entries
    Adding "Lunar Lake" and "Arrow Lake" entries.
  * [UI]
    Optimized decimal to digits converter
    Allow task tracker to select up to pid_max
    Can trace the frozen states of Linux tasks.
    Only print HWP frequencies within bounds.
    Fix ruler's aggregation.
  * [CR]
    Check CPUID[HV_PARTITION_PRIVILEGE_MASK] for HV_X64_MSR_VP_RUNTIME
    Uninitialized variable fix.
    [CPPC] Build EPP with KERNEL_VERSION(6) rather than CONFIG_CACHY
    [KERNEL] Linux 6.3: Employ modifier calls with the vma-&gt;vm_flags</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1684065600">- update to 1.96.1
  * [Driver]
  - Postpone Clock Source registration during startup until the Base Clock is computed.
  - Change class_create() according to Linux Kernel 6.4
  - Clear interrupt flag (cli) after Halt in the Idle method
  * [AMD]
  - [PHOENIX] Adding Ryzen 7940H, 7840H, 7640H
  - [VERMEER] Adding Ryzen PRO and Embedded processors
  - Ryzen Z1 CPUID' brand fix
  - Adding EPYC Embedded 9004 Series as Genoa
  - Adding EPYC Embedded 7003 Series as Milan
  - Adding EPYC Embedded 7002 Series as Rome
  - Adding EPYC Embedded 7001 Series as Naples</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1685880000">- update to 1.96.2
  * [Driver]
  - Allows compilation to keep going without CONFIG_ACPI_CPPC_LIB
  * [Client]
  - Adding two command line arguments:
  - Op Show Package C-States
  - OW Toggle Energy units
  * [AMD]
  - Specification of some Configuration MSRs</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1686830400">- update to 1.96.4
  * [AMD]
  - Display CPUID state of new and legacy features:
    Fused Multiply Add [FMA4]
    Extended Operation Support [XOP]
    Translation Cache Extension [TCE]
    Trailing Bit Manipulation [TBM]
    OS Visible Work-around [OSVW]
    LOCK prefix to read CR8 [AltMov]
  * [Intel]
  - Advanced Matrix Extensions [AMX]
  - Bits and Features of Sierra Forest and Grand Ridge
  - Attempt to decode the Meteor Lake Memory Controller
- update to 1.96.3
  * [AMD]
  - [Zeppelin] Probe more than one UMC controllers on Ryzen Threadripper 1900X
  - [Zen4] Dump SMBE and BMEC sub-leaves of CPUID 0x80000020</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1688212800">- update to 1.96.5
  * [AMD]
    Adding the "AMD Ryzen 5 5600X3D"
    Introducing the Zen4c Bergamo architecture
    Specs fixing of Embedded V-series and 3000 Series Processors
    Adding MENDOCINO, RAPHAEL Pro, PHOENIX Pro among others</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1712318400">- added preamble file for %kernel_module_package macro
- update to 1.97.1
  * added aarch64 support
  * upstream did not provide a summary changelog. Full list of commits:
    https://github.com/cyring/CoreFreq/compare/1.96.5...1.97.1</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715860800">- update to 1.97.2
  * [AMD]
  - [Hawk Point] Adding Ryzen PRO processors
  - [Phoenix] Adding the unlocked Ryzen 8000 Series
  * [Intel]
  - [MeteorLake] New bits specified
  - EEO and R2H bits inversion fix in MSR_POWER_CTL (0x1fc)
  - Reverse specification of MSR UNCORE_PERF_STATUS
  - Prefetchers fix of L1 Scrubbing, L1 Next Page and L2 AMP
  * [AArch64]
  - Providing Exclusive Load/Store to atomic operations
  - Improved asm of various macro functions
  - Removed LEGACY macros
  - Optimized the CORE_COUNT macros
  - Marked the Tools feature as nominal: Stress functions available
  - Allow user access to Retired Instructions counter
  - Fix Instructions counter overflow
  - Other PMC enhancements
  * [CR]
  - Fix a building issue with AlmaLinux aka RHEL-9
  - Linux kernel 6.9: Avoid redefinition of Intel MSR macros
  * [Doc]
  - README section for AlmaLinux
  - CONFIG_TRIM_UNUSED_KSYMS kernel build config is forbidden</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715947200">- fix dependency on kernel module that was not versioned</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1722081600">- update to 1.98.0
  * [Build]
  - Change dkms configuration to install into /usr/bin/
  - Solved compilation with Fedora using RHEL MINOR version number 99
  - [CR] Fixed some compilation warnings
  - [CR] Fix memory allocation in kernel pages for the SysGate
  - Workaround to musl change in basename (#494)
  - aarch64: Build with Redhat RHEL version 9
  - [CR] x86_64: Prevent array size overflow
  - dkms and ckms configuration files upgraded to version 1.98
  * [Intel]
  - [Raptor Lake] Adding the HB DID of i7-14700K' IMC
  - Mitigation mechanism: GDS_NO; RFDS_NO; MONITOR_MITG_NO
  - Apply some SDM Documentation Changes
  - [MTL] Fix CMD Stretch bit range width
  - Added method CLOCK_FLEX_MAX with Xeon's Nehalem &amp; Core 2
  - Grants full MSR_FLEX_RATIO access to tested architectures:
  - Alder Lake/S
  - Tiger Lake/U
  - Westmere/Gulftown
  - Provides the overclocking bins with unlocked processors
  - Query the Overclocking bit (OC) from Capabilities
  - Adding technologies: VMD, HDCP, IPU and VPU
  - Volume Management Device
  - High-Bandwidth Digital Content Protection
  - Image Processing Unit
  - Vision Processing Unit
  - Gaussian &amp; Neural Accelerator - GNA technology
  - [CR] Renamed Gemini Lake structures
  - [Meteor Lake] Introducing memory controller decoder
  * [AArch64]
  - Optimizing the Vcore seek
  - Workaround to Package discrete voltage: the highest Vcore
  - Improving computation of Euclidean division
  - Adjust frequency division in CNTFRQ and PMU counters
  - Scale a frequency factor from the interval
  - Refactoring the frequency ratios for decimal precision
  - Compile dev_pm_opp_put if Kernel greater or equal 4.11
  - Get the voltage core of CPUs from OPP
  * [AMD]
  - [Zen4][Raphael] Adding the EPYC 4004 Series
  - [Zen4] Clarify Hawk Point and Phoenix-Refresh architectures
  - [Family 19h] New voltage formula assigned to model 61h
  - Vcore activated
  - Voltage SoC deactivated
  - [Zen] Prevent the calculation of negative temperature (issue #496)
  - [Family 18h] Documented Hygon C86 7375
  - [Family 19h] PStateDef specification: Adding VID[8] bit 32
  - Specification of MSR HW_PSTATE_STATUS
  * [CLI]
  - aarch64: Display the state of the Memory Management Unit (MMU)
  - aarch64: State of Instruction Cache Unit I$ and Data Cache Unit D$
  - Added UI_RULER_MINIMUM &amp; UI_RULER_MAXIMUM building constraints
  - Revert "[CLI] Responsive ruler to architectural context"
  - This reverts commit 4bc38d6.
  - x86_64: AMD Boost and P-States redesigned
  - [UI] Hardening missing console/terminal size
  - Responsive ruler to architectural context
  - x86_64: Make HDCP meaning string shorter
  * [Driver]
  - Created C2U_Enable as a parameter alias of C1U_Enable</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1723032000">- update to 1.98.1
  * [AMD]
  - [Zen] Inject threshold events when thermal is out of bounds
  - Generic Zen architectures renamed with their Family number
  - Added a generic entry for the 1A family
  - Configure TjMax for multiple Ryzen and Threadripper
  - [CR] Optimize AMD temperature filtering function
  - [Zen5] Introducing the Eldora architecture aka "Granite Ridge"
  - [Zen5] Adding entries for Strix Point
  * [Intel]
  - Feature-bits of Core Ultra architecture
  - [TGL][ADL][RPL] New devices to probe IMC and Watchdog
  - [Raptor Lake-E] Adding the IMC probing entries
  - Grant full MSR_FLEX_RATIO access to Raptor Lake (06_B7)
  - Added Host Bridge DIDs of Raptor Lake-E
  - [ADL ... MTL] Code review of IMC decoders
  - [ADL] Compute DIMM Bank and Columns on both channels
  - [ADL] Process channels differently depending on DDR4 or DDR5
  - 12th to 14th generation IMC decoder refactoring
  - [ADL ... MTL] Adding Memory Controller Virtual Channel Count
  - [ADL ... MTL] Channel count as a function of DDPCD DDR_TYPE
  - [ADL ... MTL] Keep all enabled memory controllers
  - [12th and superior] Compute tWR quantity as a function of DDR version
  * [Build]
  - Now leave version number in Makefile
  - Pretty print the build and the clean of outputs
    Allow the V=n option increase the verbose level (incl. kernel)
  - CPU-Freq build against Linux Kernel version 6.11
  * [Documentation]
  - Refreshed README and Makefile</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1723464000">- Update to 1.98.2
  * [Intel]
  - [WDT] Adding multiple devices to probe TCO
    C620 Series Chipset Production SKUs (0xa1a3)
    C620 Series Chipset Super SKUs (0xa223)
    Sunrise Point/H (0xa123)
    Cannon Lake/LP (0x9da3)
    Comet Lake/H (0x06a3)
    Ice Lake/LP (0x34a3)
    Tiger Lake/H (0x43a3)
    Elkhart Lake (0x4b23)
    Kaby Lake/H (0xa2a3)
    Cannon Lake (0xa323)
    Comet Lake/V (0xa3a3)
    Ice Lake/NG (0x38a3)
    Alder lake/M (0x54a3)
    Arrow Lake/S (0x7f23)
    Jasper Lake SMBus (0x4da3)
    Sunrise Point-LP SMBus (0x9d23)
    Comet Lake PCH-LP SMBus (0x02a3)
  - MSR_FLEX_RATIO register
    Grant access to Alder Lake/H (06_9A)
    Deny access to Nehalem/Bloomfield (06_1A)
    Removed a condition in access function</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1725019200">- Update to 1.98.3
  * [AMD]
  - [VMR/RPL/GNR] Voltage Curve Optimizer (VCO)
  - Provide a specific VCO formula based on HWM_CHIPSET=AMD_VCO
    build parameter
  - The standard voltage formulas are restored to these architectures
  - Zen5: Guessed a new P-State MSR bits specification to fix the
    Coefficient Of Frequency (COF)</changelog>
</package>
<package pkgid="e4bfd33e0e5746300bb565f6850f17de743fb65a13765ec1c0054aa3108384943efda4efaf6805240f1a0306e535db97d2013099ab052adc1e92720d05f61d33" name="CoreFreq" arch="src">
  <version epoch="0" ver="1.98.4" rel="1.11"/>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1670932800">- removed modprobe_corefreqd.service.patch and harden_corefreqd.service.patch
  now included in new corefreqd.service file replacing stock one
- update to 1.93.1
  * [PRJ] CoreFreq version 1.93.1
  * [ACPI/CPPC/EPP] Preview of AMD/Zen Energy Preference (CONFIG_CACHY)
  * [UI] Changed the HWP or CPPC ratio bounds.
  * [FIX] Putting `corefreqd` in the root cgroup (issue #379) Thanks to gel-crabs
  * [DOC] Parameters to blacklist the amd_pstate since kernel 6.0.11
  * [AMD][Zen4] Apply a voltage formula based on Rembrandt's. (#378)
  * [AMD][Zen4/Raphael] Attempting temperature per CCD from TCTL+0x308
  * [AMD][Zen4] Changed Timer loop
  * [CR] CLI code review and UI optimizations
  * [UI] Auto refresh the Topology items when off/online
  * [CR] Conditionally build with additional PMC Counters
  * [Intel] Adding Z8000 System Memory Controller Registers
  * [CR] Transformed global variable in cells padding
  * [UI] Windows re-scaling fix
  * [UI] Apply color theming to the CPPC capabilities list.
  * [AMD][Raphael] Adding device DIDs to probe UMC and IOMMU
  * [CPPC/FMW] Computes value bounds while Enabling/Disabling firmware
  * [CR] CPPC lib errors are now raised to Debug level
  * [AMD][Zen4] Increased the UMC size to 12 channels.
  * [CPPC] Handles the OffLine CPU case.
  * [CLI] Refactoring HWP/CPPC to print all capabilities per CPU
  * [ACPI] Computes the CPPC Bounds
  * [Intel] Linear Address Masking (LAM)
  * [CLI] EFER: Left aligned labels
  * [AMD] Reports UAIE and AIBRSE bits from EFER system register
  * [CLI] Changed mitigation mechanisms incapability labels
  * [AMD][Zen2] Mitigation Mechanism BTC-NOBR * ACPI/OSPM documentation
  * [CR] Code review on bit masks
  * [CPPC][ACPI] Kernel may decode the Guaranteed Performance Register
  * [UI] Optimize the cycles to clear the time bar.
  * [CR] Code review for extra compiler warnings
  * [UI] Time of the day displayed in the right side of menu
  * [UI] Display the current date and time in menu bar
  * [Kernel] Introducing support of `CONFIG_SCHED_BORE`
  * [CLI] Fixing ambiguous CPPC report: hardware vs firmware
  * [CLI] Surrounds _CPC feature with square brackets
  * [CPPC] Provides the ACPI _CPC object state.
  * [UI] Colors the task being tracked in the tracking list
  * [UI] Display the current time in the menu bar
  * [CLI] Reserve the programmable TDP section to Intel processors.
  * [AMD/Zen3+] Improving the DIMM geometry of Rembrandt UMC</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1672747200">- update to 1.94.1:
  * [Intel] Gemini Lake
  * [AMD] Ryzen 5 6600 H SoC, UMC channels
  * [AMD] Rembrandt: maximum of two UMC channels
  * [AMD] Raphael: Decodes DIMM geometry from AddrCfg
  * [AMD] Zen: Aggregation refactored
  * [AMD] Improved DDR5 clock decoding
  * Optimized Idle Loop</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1673006400">- update to 1.94.3:
  * [AMD][RMB] If UMC is quad channels then unpopulate odd channels
  * [AMD][RPL] Provide Service Processor Vcore as workaround
  * [UI] Auto size and lay performance capabilities window
  * [UI] Adding comments to the EEO and R2H technologies
  * [AMD][Raphael] 7950X3D, 7900X3D. support</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1674475200">- update to 1.95.1:
  * [Intel] RPL: voltage of Pcore, Ecore, System Agent
  * [Intel] RPL and ADL Chipset device IDs
  * [Intel] Decode the RPL IMC and improve DDR5 support
  * [Build] Raise `MAX_FREQ_HZ` up to 7125000000 Hertz
  * [Intel] Mobile {Coffee Lake, Kaby Lake} codenames
  * [Intel] Braswell codename detection
  * [AMD] SYSCFG Register
  * [AMD] EPYC 9654
  * [AMD] Transparent SME
  * [AMD] DRAM Data Scrambling
  * [AMD] Adding "Barcelo R" and "Rembrandt R"</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1675944000">- update to 1.95.2:
  * Fixed the aggregation of the minimum ratio
  Intel:
  * [Airmont][Silvermont] Attempt to decode `tCKE` from DRMC
    register
  * [Airmont] Improve `tWTPr`, `B2B`, `tWWDR` timings
  * [Airmont] Provide a new IMC decoder
  * Add the Emerald Rapids architecture entry
  * [DDR5][DDR4] Add the `RCDw` IMC timing
  * [Raptor Lake ] De-activate the MSR Uncore counter
  AMD:
  * "Zen3/Barcelo-R" and "Zen3+ Rembrandt-R" codenames
  * [Zen] Thermal highest limit reset fix
  Misc:
  * Code review and Registers documentation:
    AMD HWCR, Intel HDC and DRP</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677067200">- update to 1.95.4
  * [Intel] [from 11th to 14th gen]
    Convert the DRAM Speed to MT/s unit
    Compute the Bus Rate based on the BIOS MC PLL
- update to 1.95.3
  * [Intel] [Airmont]
    Improved the IMC geometry
    Introducing the Spreadtrum architecture
    Fixed the Bus and DRAM frequency rates
  * [Intel] [from 11th to 13th gen] Attempt to probe the interleaved controllers
  * [Intel] [Alder Lake/H] Attempt to decode the TCO Watchdog</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677153600">- added leap_compile_fix.patch to fix compilation on Leap</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1683115200">- removed leap_compile_fix.patch no needed anymore
- update to 1.96.0
  * [AMD]
    [RPL/X3D] Disabling the turbo boosted P-states change
    [PHOENIX] Adding Z1, U and HS PRO series.
    [Genoa] DAC address at UMC BAR + 0x40
    [Zen4] Adding the PCI entries of Genoa
    [Zen2] Adding remaining PCI entries
    [Zen] Query DAC &amp; CFG with the right UMC base address register
    [Zen4] Dump the CPUID Extended CPU Topology leaves.
    [Zen][Embedded][Banded Kestrel] R1000 Processor Family
    [Zen][Embedded] "Great Horned Owl", "River Hawk", "Grey Hawk"
    Complete the "Raven Ridge" and "Picasso" lists
    [EPYC] Moved "Snowy Owl" Embedded processors to CPUID 8F_01
    [Zen4] introducing Phoenix and Dragon Range
    [RMB] adding the Ryzen Embedded V3000 processors
    [VMR] adding the "AMD Ryzen 9 PRO 5945"
  * [Intel]
    Adding Granite Rapids, Sierra Forest, Grand Ridge entries
    Adding "Lunar Lake" and "Arrow Lake" entries.
  * [UI]
    Optimized decimal to digits converter
    Allow task tracker to select up to pid_max
    Can trace the frozen states of Linux tasks.
    Only print HWP frequencies within bounds.
    Fix ruler's aggregation.
  * [CR]
    Check CPUID[HV_PARTITION_PRIVILEGE_MASK] for HV_X64_MSR_VP_RUNTIME
    Uninitialized variable fix.
    [CPPC] Build EPP with KERNEL_VERSION(6) rather than CONFIG_CACHY
    [KERNEL] Linux 6.3: Employ modifier calls with the vma-&gt;vm_flags</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1684065600">- update to 1.96.1
  * [Driver]
  - Postpone Clock Source registration during startup until the Base Clock is computed.
  - Change class_create() according to Linux Kernel 6.4
  - Clear interrupt flag (cli) after Halt in the Idle method
  * [AMD]
  - [PHOENIX] Adding Ryzen 7940H, 7840H, 7640H
  - [VERMEER] Adding Ryzen PRO and Embedded processors
  - Ryzen Z1 CPUID' brand fix
  - Adding EPYC Embedded 9004 Series as Genoa
  - Adding EPYC Embedded 7003 Series as Milan
  - Adding EPYC Embedded 7002 Series as Rome
  - Adding EPYC Embedded 7001 Series as Naples</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1685880000">- update to 1.96.2
  * [Driver]
  - Allows compilation to keep going without CONFIG_ACPI_CPPC_LIB
  * [Client]
  - Adding two command line arguments:
  - Op Show Package C-States
  - OW Toggle Energy units
  * [AMD]
  - Specification of some Configuration MSRs</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1686830400">- update to 1.96.4
  * [AMD]
  - Display CPUID state of new and legacy features:
    Fused Multiply Add [FMA4]
    Extended Operation Support [XOP]
    Translation Cache Extension [TCE]
    Trailing Bit Manipulation [TBM]
    OS Visible Work-around [OSVW]
    LOCK prefix to read CR8 [AltMov]
  * [Intel]
  - Advanced Matrix Extensions [AMX]
  - Bits and Features of Sierra Forest and Grand Ridge
  - Attempt to decode the Meteor Lake Memory Controller
- update to 1.96.3
  * [AMD]
  - [Zeppelin] Probe more than one UMC controllers on Ryzen Threadripper 1900X
  - [Zen4] Dump SMBE and BMEC sub-leaves of CPUID 0x80000020</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1688212800">- update to 1.96.5
  * [AMD]
    Adding the "AMD Ryzen 5 5600X3D"
    Introducing the Zen4c Bergamo architecture
    Specs fixing of Embedded V-series and 3000 Series Processors
    Adding MENDOCINO, RAPHAEL Pro, PHOENIX Pro among others</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1712318400">- added preamble file for %kernel_module_package macro
- update to 1.97.1
  * added aarch64 support
  * upstream did not provide a summary changelog. Full list of commits:
    https://github.com/cyring/CoreFreq/compare/1.96.5...1.97.1</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715860800">- update to 1.97.2
  * [AMD]
  - [Hawk Point] Adding Ryzen PRO processors
  - [Phoenix] Adding the unlocked Ryzen 8000 Series
  * [Intel]
  - [MeteorLake] New bits specified
  - EEO and R2H bits inversion fix in MSR_POWER_CTL (0x1fc)
  - Reverse specification of MSR UNCORE_PERF_STATUS
  - Prefetchers fix of L1 Scrubbing, L1 Next Page and L2 AMP
  * [AArch64]
  - Providing Exclusive Load/Store to atomic operations
  - Improved asm of various macro functions
  - Removed LEGACY macros
  - Optimized the CORE_COUNT macros
  - Marked the Tools feature as nominal: Stress functions available
  - Allow user access to Retired Instructions counter
  - Fix Instructions counter overflow
  - Other PMC enhancements
  * [CR]
  - Fix a building issue with AlmaLinux aka RHEL-9
  - Linux kernel 6.9: Avoid redefinition of Intel MSR macros
  * [Doc]
  - README section for AlmaLinux
  - CONFIG_TRIM_UNUSED_KSYMS kernel build config is forbidden</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715947200">- fix dependency on kernel module that was not versioned</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1722081600">- update to 1.98.0
  * [Build]
  - Change dkms configuration to install into /usr/bin/
  - Solved compilation with Fedora using RHEL MINOR version number 99
  - [CR] Fixed some compilation warnings
  - [CR] Fix memory allocation in kernel pages for the SysGate
  - Workaround to musl change in basename (#494)
  - aarch64: Build with Redhat RHEL version 9
  - [CR] x86_64: Prevent array size overflow
  - dkms and ckms configuration files upgraded to version 1.98
  * [Intel]
  - [Raptor Lake] Adding the HB DID of i7-14700K' IMC
  - Mitigation mechanism: GDS_NO; RFDS_NO; MONITOR_MITG_NO
  - Apply some SDM Documentation Changes
  - [MTL] Fix CMD Stretch bit range width
  - Added method CLOCK_FLEX_MAX with Xeon's Nehalem &amp; Core 2
  - Grants full MSR_FLEX_RATIO access to tested architectures:
  - Alder Lake/S
  - Tiger Lake/U
  - Westmere/Gulftown
  - Provides the overclocking bins with unlocked processors
  - Query the Overclocking bit (OC) from Capabilities
  - Adding technologies: VMD, HDCP, IPU and VPU
  - Volume Management Device
  - High-Bandwidth Digital Content Protection
  - Image Processing Unit
  - Vision Processing Unit
  - Gaussian &amp; Neural Accelerator - GNA technology
  - [CR] Renamed Gemini Lake structures
  - [Meteor Lake] Introducing memory controller decoder
  * [AArch64]
  - Optimizing the Vcore seek
  - Workaround to Package discrete voltage: the highest Vcore
  - Improving computation of Euclidean division
  - Adjust frequency division in CNTFRQ and PMU counters
  - Scale a frequency factor from the interval
  - Refactoring the frequency ratios for decimal precision
  - Compile dev_pm_opp_put if Kernel greater or equal 4.11
  - Get the voltage core of CPUs from OPP
  * [AMD]
  - [Zen4][Raphael] Adding the EPYC 4004 Series
  - [Zen4] Clarify Hawk Point and Phoenix-Refresh architectures
  - [Family 19h] New voltage formula assigned to model 61h
  - Vcore activated
  - Voltage SoC deactivated
  - [Zen] Prevent the calculation of negative temperature (issue #496)
  - [Family 18h] Documented Hygon C86 7375
  - [Family 19h] PStateDef specification: Adding VID[8] bit 32
  - Specification of MSR HW_PSTATE_STATUS
  * [CLI]
  - aarch64: Display the state of the Memory Management Unit (MMU)
  - aarch64: State of Instruction Cache Unit I$ and Data Cache Unit D$
  - Added UI_RULER_MINIMUM &amp; UI_RULER_MAXIMUM building constraints
  - Revert "[CLI] Responsive ruler to architectural context"
  - This reverts commit 4bc38d6.
  - x86_64: AMD Boost and P-States redesigned
  - [UI] Hardening missing console/terminal size
  - Responsive ruler to architectural context
  - x86_64: Make HDCP meaning string shorter
  * [Driver]
  - Created C2U_Enable as a parameter alias of C1U_Enable</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1723032000">- update to 1.98.1
  * [AMD]
  - [Zen] Inject threshold events when thermal is out of bounds
  - Generic Zen architectures renamed with their Family number
  - Added a generic entry for the 1A family
  - Configure TjMax for multiple Ryzen and Threadripper
  - [CR] Optimize AMD temperature filtering function
  - [Zen5] Introducing the Eldora architecture aka "Granite Ridge"
  - [Zen5] Adding entries for Strix Point
  * [Intel]
  - Feature-bits of Core Ultra architecture
  - [TGL][ADL][RPL] New devices to probe IMC and Watchdog
  - [Raptor Lake-E] Adding the IMC probing entries
  - Grant full MSR_FLEX_RATIO access to Raptor Lake (06_B7)
  - Added Host Bridge DIDs of Raptor Lake-E
  - [ADL ... MTL] Code review of IMC decoders
  - [ADL] Compute DIMM Bank and Columns on both channels
  - [ADL] Process channels differently depending on DDR4 or DDR5
  - 12th to 14th generation IMC decoder refactoring
  - [ADL ... MTL] Adding Memory Controller Virtual Channel Count
  - [ADL ... MTL] Channel count as a function of DDPCD DDR_TYPE
  - [ADL ... MTL] Keep all enabled memory controllers
  - [12th and superior] Compute tWR quantity as a function of DDR version
  * [Build]
  - Now leave version number in Makefile
  - Pretty print the build and the clean of outputs
    Allow the V=n option increase the verbose level (incl. kernel)
  - CPU-Freq build against Linux Kernel version 6.11
  * [Documentation]
  - Refreshed README and Makefile</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1723464000">- Update to 1.98.2
  * [Intel]
  - [WDT] Adding multiple devices to probe TCO
    C620 Series Chipset Production SKUs (0xa1a3)
    C620 Series Chipset Super SKUs (0xa223)
    Sunrise Point/H (0xa123)
    Cannon Lake/LP (0x9da3)
    Comet Lake/H (0x06a3)
    Ice Lake/LP (0x34a3)
    Tiger Lake/H (0x43a3)
    Elkhart Lake (0x4b23)
    Kaby Lake/H (0xa2a3)
    Cannon Lake (0xa323)
    Comet Lake/V (0xa3a3)
    Ice Lake/NG (0x38a3)
    Alder lake/M (0x54a3)
    Arrow Lake/S (0x7f23)
    Jasper Lake SMBus (0x4da3)
    Sunrise Point-LP SMBus (0x9d23)
    Comet Lake PCH-LP SMBus (0x02a3)
  - MSR_FLEX_RATIO register
    Grant access to Alder Lake/H (06_9A)
    Deny access to Nehalem/Bloomfield (06_1A)
    Removed a condition in access function</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1725019200">- Update to 1.98.3
  * [AMD]
  - [VMR/RPL/GNR] Voltage Curve Optimizer (VCO)
  - Provide a specific VCO formula based on HWM_CHIPSET=AMD_VCO
    build parameter
  - The standard voltage formulas are restored to these architectures
  - Zen5: Guessed a new P-State MSR bits specification to fix the
    Coefficient Of Frequency (COF)</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1726833600">- Update to 1.98.4
  * [Build]
  - Prevent a collision with macro WRMSRNS within kernel 6.11
  * [x86_64]
  - [Virtualization] Switch to the HCF or VP_RUNTIME counters depending on the detected hypervisor</changelog>
</package>
<package pkgid="69fee17152ffbb216fe3cde4cf8088525948544554987bdddb7e2cd55040db54c1bc3dce93033ab4b692e8f2f591db36fc841f099aab5cf89b85ae9f65cfdbad" name="CoreFreq" arch="x86_64">
  <version epoch="0" ver="1.98.4" rel="1.11"/>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1670932800">- removed modprobe_corefreqd.service.patch and harden_corefreqd.service.patch
  now included in new corefreqd.service file replacing stock one
- update to 1.93.1
  * [PRJ] CoreFreq version 1.93.1
  * [ACPI/CPPC/EPP] Preview of AMD/Zen Energy Preference (CONFIG_CACHY)
  * [UI] Changed the HWP or CPPC ratio bounds.
  * [FIX] Putting `corefreqd` in the root cgroup (issue #379) Thanks to gel-crabs
  * [DOC] Parameters to blacklist the amd_pstate since kernel 6.0.11
  * [AMD][Zen4] Apply a voltage formula based on Rembrandt's. (#378)
  * [AMD][Zen4/Raphael] Attempting temperature per CCD from TCTL+0x308
  * [AMD][Zen4] Changed Timer loop
  * [CR] CLI code review and UI optimizations
  * [UI] Auto refresh the Topology items when off/online
  * [CR] Conditionally build with additional PMC Counters
  * [Intel] Adding Z8000 System Memory Controller Registers
  * [CR] Transformed global variable in cells padding
  * [UI] Windows re-scaling fix
  * [UI] Apply color theming to the CPPC capabilities list.
  * [AMD][Raphael] Adding device DIDs to probe UMC and IOMMU
  * [CPPC/FMW] Computes value bounds while Enabling/Disabling firmware
  * [CR] CPPC lib errors are now raised to Debug level
  * [AMD][Zen4] Increased the UMC size to 12 channels.
  * [CPPC] Handles the OffLine CPU case.
  * [CLI] Refactoring HWP/CPPC to print all capabilities per CPU
  * [ACPI] Computes the CPPC Bounds
  * [Intel] Linear Address Masking (LAM)
  * [CLI] EFER: Left aligned labels
  * [AMD] Reports UAIE and AIBRSE bits from EFER system register
  * [CLI] Changed mitigation mechanisms incapability labels
  * [AMD][Zen2] Mitigation Mechanism BTC-NOBR * ACPI/OSPM documentation
  * [CR] Code review on bit masks
  * [CPPC][ACPI] Kernel may decode the Guaranteed Performance Register
  * [UI] Optimize the cycles to clear the time bar.
  * [CR] Code review for extra compiler warnings
  * [UI] Time of the day displayed in the right side of menu
  * [UI] Display the current date and time in menu bar
  * [Kernel] Introducing support of `CONFIG_SCHED_BORE`
  * [CLI] Fixing ambiguous CPPC report: hardware vs firmware
  * [CLI] Surrounds _CPC feature with square brackets
  * [CPPC] Provides the ACPI _CPC object state.
  * [UI] Colors the task being tracked in the tracking list
  * [UI] Display the current time in the menu bar
  * [CLI] Reserve the programmable TDP section to Intel processors.
  * [AMD/Zen3+] Improving the DIMM geometry of Rembrandt UMC</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1672747200">- update to 1.94.1:
  * [Intel] Gemini Lake
  * [AMD] Ryzen 5 6600 H SoC, UMC channels
  * [AMD] Rembrandt: maximum of two UMC channels
  * [AMD] Raphael: Decodes DIMM geometry from AddrCfg
  * [AMD] Zen: Aggregation refactored
  * [AMD] Improved DDR5 clock decoding
  * Optimized Idle Loop</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1673006400">- update to 1.94.3:
  * [AMD][RMB] If UMC is quad channels then unpopulate odd channels
  * [AMD][RPL] Provide Service Processor Vcore as workaround
  * [UI] Auto size and lay performance capabilities window
  * [UI] Adding comments to the EEO and R2H technologies
  * [AMD][Raphael] 7950X3D, 7900X3D. support</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1674475200">- update to 1.95.1:
  * [Intel] RPL: voltage of Pcore, Ecore, System Agent
  * [Intel] RPL and ADL Chipset device IDs
  * [Intel] Decode the RPL IMC and improve DDR5 support
  * [Build] Raise `MAX_FREQ_HZ` up to 7125000000 Hertz
  * [Intel] Mobile {Coffee Lake, Kaby Lake} codenames
  * [Intel] Braswell codename detection
  * [AMD] SYSCFG Register
  * [AMD] EPYC 9654
  * [AMD] Transparent SME
  * [AMD] DRAM Data Scrambling
  * [AMD] Adding "Barcelo R" and "Rembrandt R"</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1675944000">- update to 1.95.2:
  * Fixed the aggregation of the minimum ratio
  Intel:
  * [Airmont][Silvermont] Attempt to decode `tCKE` from DRMC
    register
  * [Airmont] Improve `tWTPr`, `B2B`, `tWWDR` timings
  * [Airmont] Provide a new IMC decoder
  * Add the Emerald Rapids architecture entry
  * [DDR5][DDR4] Add the `RCDw` IMC timing
  * [Raptor Lake ] De-activate the MSR Uncore counter
  AMD:
  * "Zen3/Barcelo-R" and "Zen3+ Rembrandt-R" codenames
  * [Zen] Thermal highest limit reset fix
  Misc:
  * Code review and Registers documentation:
    AMD HWCR, Intel HDC and DRP</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677067200">- update to 1.95.4
  * [Intel] [from 11th to 14th gen]
    Convert the DRAM Speed to MT/s unit
    Compute the Bus Rate based on the BIOS MC PLL
- update to 1.95.3
  * [Intel] [Airmont]
    Improved the IMC geometry
    Introducing the Spreadtrum architecture
    Fixed the Bus and DRAM frequency rates
  * [Intel] [from 11th to 13th gen] Attempt to probe the interleaved controllers
  * [Intel] [Alder Lake/H] Attempt to decode the TCO Watchdog</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677153600">- added leap_compile_fix.patch to fix compilation on Leap</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1683115200">- removed leap_compile_fix.patch no needed anymore
- update to 1.96.0
  * [AMD]
    [RPL/X3D] Disabling the turbo boosted P-states change
    [PHOENIX] Adding Z1, U and HS PRO series.
    [Genoa] DAC address at UMC BAR + 0x40
    [Zen4] Adding the PCI entries of Genoa
    [Zen2] Adding remaining PCI entries
    [Zen] Query DAC &amp; CFG with the right UMC base address register
    [Zen4] Dump the CPUID Extended CPU Topology leaves.
    [Zen][Embedded][Banded Kestrel] R1000 Processor Family
    [Zen][Embedded] "Great Horned Owl", "River Hawk", "Grey Hawk"
    Complete the "Raven Ridge" and "Picasso" lists
    [EPYC] Moved "Snowy Owl" Embedded processors to CPUID 8F_01
    [Zen4] introducing Phoenix and Dragon Range
    [RMB] adding the Ryzen Embedded V3000 processors
    [VMR] adding the "AMD Ryzen 9 PRO 5945"
  * [Intel]
    Adding Granite Rapids, Sierra Forest, Grand Ridge entries
    Adding "Lunar Lake" and "Arrow Lake" entries.
  * [UI]
    Optimized decimal to digits converter
    Allow task tracker to select up to pid_max
    Can trace the frozen states of Linux tasks.
    Only print HWP frequencies within bounds.
    Fix ruler's aggregation.
  * [CR]
    Check CPUID[HV_PARTITION_PRIVILEGE_MASK] for HV_X64_MSR_VP_RUNTIME
    Uninitialized variable fix.
    [CPPC] Build EPP with KERNEL_VERSION(6) rather than CONFIG_CACHY
    [KERNEL] Linux 6.3: Employ modifier calls with the vma-&gt;vm_flags</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1684065600">- update to 1.96.1
  * [Driver]
  - Postpone Clock Source registration during startup until the Base Clock is computed.
  - Change class_create() according to Linux Kernel 6.4
  - Clear interrupt flag (cli) after Halt in the Idle method
  * [AMD]
  - [PHOENIX] Adding Ryzen 7940H, 7840H, 7640H
  - [VERMEER] Adding Ryzen PRO and Embedded processors
  - Ryzen Z1 CPUID' brand fix
  - Adding EPYC Embedded 9004 Series as Genoa
  - Adding EPYC Embedded 7003 Series as Milan
  - Adding EPYC Embedded 7002 Series as Rome
  - Adding EPYC Embedded 7001 Series as Naples</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1685880000">- update to 1.96.2
  * [Driver]
  - Allows compilation to keep going without CONFIG_ACPI_CPPC_LIB
  * [Client]
  - Adding two command line arguments:
  - Op Show Package C-States
  - OW Toggle Energy units
  * [AMD]
  - Specification of some Configuration MSRs</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1686830400">- update to 1.96.4
  * [AMD]
  - Display CPUID state of new and legacy features:
    Fused Multiply Add [FMA4]
    Extended Operation Support [XOP]
    Translation Cache Extension [TCE]
    Trailing Bit Manipulation [TBM]
    OS Visible Work-around [OSVW]
    LOCK prefix to read CR8 [AltMov]
  * [Intel]
  - Advanced Matrix Extensions [AMX]
  - Bits and Features of Sierra Forest and Grand Ridge
  - Attempt to decode the Meteor Lake Memory Controller
- update to 1.96.3
  * [AMD]
  - [Zeppelin] Probe more than one UMC controllers on Ryzen Threadripper 1900X
  - [Zen4] Dump SMBE and BMEC sub-leaves of CPUID 0x80000020</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1688212800">- update to 1.96.5
  * [AMD]
    Adding the "AMD Ryzen 5 5600X3D"
    Introducing the Zen4c Bergamo architecture
    Specs fixing of Embedded V-series and 3000 Series Processors
    Adding MENDOCINO, RAPHAEL Pro, PHOENIX Pro among others</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1712318400">- added preamble file for %kernel_module_package macro
- update to 1.97.1
  * added aarch64 support
  * upstream did not provide a summary changelog. Full list of commits:
    https://github.com/cyring/CoreFreq/compare/1.96.5...1.97.1</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715860800">- update to 1.97.2
  * [AMD]
  - [Hawk Point] Adding Ryzen PRO processors
  - [Phoenix] Adding the unlocked Ryzen 8000 Series
  * [Intel]
  - [MeteorLake] New bits specified
  - EEO and R2H bits inversion fix in MSR_POWER_CTL (0x1fc)
  - Reverse specification of MSR UNCORE_PERF_STATUS
  - Prefetchers fix of L1 Scrubbing, L1 Next Page and L2 AMP
  * [AArch64]
  - Providing Exclusive Load/Store to atomic operations
  - Improved asm of various macro functions
  - Removed LEGACY macros
  - Optimized the CORE_COUNT macros
  - Marked the Tools feature as nominal: Stress functions available
  - Allow user access to Retired Instructions counter
  - Fix Instructions counter overflow
  - Other PMC enhancements
  * [CR]
  - Fix a building issue with AlmaLinux aka RHEL-9
  - Linux kernel 6.9: Avoid redefinition of Intel MSR macros
  * [Doc]
  - README section for AlmaLinux
  - CONFIG_TRIM_UNUSED_KSYMS kernel build config is forbidden</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715947200">- fix dependency on kernel module that was not versioned</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1722081600">- update to 1.98.0
  * [Build]
  - Change dkms configuration to install into /usr/bin/
  - Solved compilation with Fedora using RHEL MINOR version number 99
  - [CR] Fixed some compilation warnings
  - [CR] Fix memory allocation in kernel pages for the SysGate
  - Workaround to musl change in basename (#494)
  - aarch64: Build with Redhat RHEL version 9
  - [CR] x86_64: Prevent array size overflow
  - dkms and ckms configuration files upgraded to version 1.98
  * [Intel]
  - [Raptor Lake] Adding the HB DID of i7-14700K' IMC
  - Mitigation mechanism: GDS_NO; RFDS_NO; MONITOR_MITG_NO
  - Apply some SDM Documentation Changes
  - [MTL] Fix CMD Stretch bit range width
  - Added method CLOCK_FLEX_MAX with Xeon's Nehalem &amp; Core 2
  - Grants full MSR_FLEX_RATIO access to tested architectures:
  - Alder Lake/S
  - Tiger Lake/U
  - Westmere/Gulftown
  - Provides the overclocking bins with unlocked processors
  - Query the Overclocking bit (OC) from Capabilities
  - Adding technologies: VMD, HDCP, IPU and VPU
  - Volume Management Device
  - High-Bandwidth Digital Content Protection
  - Image Processing Unit
  - Vision Processing Unit
  - Gaussian &amp; Neural Accelerator - GNA technology
  - [CR] Renamed Gemini Lake structures
  - [Meteor Lake] Introducing memory controller decoder
  * [AArch64]
  - Optimizing the Vcore seek
  - Workaround to Package discrete voltage: the highest Vcore
  - Improving computation of Euclidean division
  - Adjust frequency division in CNTFRQ and PMU counters
  - Scale a frequency factor from the interval
  - Refactoring the frequency ratios for decimal precision
  - Compile dev_pm_opp_put if Kernel greater or equal 4.11
  - Get the voltage core of CPUs from OPP
  * [AMD]
  - [Zen4][Raphael] Adding the EPYC 4004 Series
  - [Zen4] Clarify Hawk Point and Phoenix-Refresh architectures
  - [Family 19h] New voltage formula assigned to model 61h
  - Vcore activated
  - Voltage SoC deactivated
  - [Zen] Prevent the calculation of negative temperature (issue #496)
  - [Family 18h] Documented Hygon C86 7375
  - [Family 19h] PStateDef specification: Adding VID[8] bit 32
  - Specification of MSR HW_PSTATE_STATUS
  * [CLI]
  - aarch64: Display the state of the Memory Management Unit (MMU)
  - aarch64: State of Instruction Cache Unit I$ and Data Cache Unit D$
  - Added UI_RULER_MINIMUM &amp; UI_RULER_MAXIMUM building constraints
  - Revert "[CLI] Responsive ruler to architectural context"
  - This reverts commit 4bc38d6.
  - x86_64: AMD Boost and P-States redesigned
  - [UI] Hardening missing console/terminal size
  - Responsive ruler to architectural context
  - x86_64: Make HDCP meaning string shorter
  * [Driver]
  - Created C2U_Enable as a parameter alias of C1U_Enable</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1723032000">- update to 1.98.1
  * [AMD]
  - [Zen] Inject threshold events when thermal is out of bounds
  - Generic Zen architectures renamed with their Family number
  - Added a generic entry for the 1A family
  - Configure TjMax for multiple Ryzen and Threadripper
  - [CR] Optimize AMD temperature filtering function
  - [Zen5] Introducing the Eldora architecture aka "Granite Ridge"
  - [Zen5] Adding entries for Strix Point
  * [Intel]
  - Feature-bits of Core Ultra architecture
  - [TGL][ADL][RPL] New devices to probe IMC and Watchdog
  - [Raptor Lake-E] Adding the IMC probing entries
  - Grant full MSR_FLEX_RATIO access to Raptor Lake (06_B7)
  - Added Host Bridge DIDs of Raptor Lake-E
  - [ADL ... MTL] Code review of IMC decoders
  - [ADL] Compute DIMM Bank and Columns on both channels
  - [ADL] Process channels differently depending on DDR4 or DDR5
  - 12th to 14th generation IMC decoder refactoring
  - [ADL ... MTL] Adding Memory Controller Virtual Channel Count
  - [ADL ... MTL] Channel count as a function of DDPCD DDR_TYPE
  - [ADL ... MTL] Keep all enabled memory controllers
  - [12th and superior] Compute tWR quantity as a function of DDR version
  * [Build]
  - Now leave version number in Makefile
  - Pretty print the build and the clean of outputs
    Allow the V=n option increase the verbose level (incl. kernel)
  - CPU-Freq build against Linux Kernel version 6.11
  * [Documentation]
  - Refreshed README and Makefile</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1723464000">- Update to 1.98.2
  * [Intel]
  - [WDT] Adding multiple devices to probe TCO
    C620 Series Chipset Production SKUs (0xa1a3)
    C620 Series Chipset Super SKUs (0xa223)
    Sunrise Point/H (0xa123)
    Cannon Lake/LP (0x9da3)
    Comet Lake/H (0x06a3)
    Ice Lake/LP (0x34a3)
    Tiger Lake/H (0x43a3)
    Elkhart Lake (0x4b23)
    Kaby Lake/H (0xa2a3)
    Cannon Lake (0xa323)
    Comet Lake/V (0xa3a3)
    Ice Lake/NG (0x38a3)
    Alder lake/M (0x54a3)
    Arrow Lake/S (0x7f23)
    Jasper Lake SMBus (0x4da3)
    Sunrise Point-LP SMBus (0x9d23)
    Comet Lake PCH-LP SMBus (0x02a3)
  - MSR_FLEX_RATIO register
    Grant access to Alder Lake/H (06_9A)
    Deny access to Nehalem/Bloomfield (06_1A)
    Removed a condition in access function</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1725019200">- Update to 1.98.3
  * [AMD]
  - [VMR/RPL/GNR] Voltage Curve Optimizer (VCO)
  - Provide a specific VCO formula based on HWM_CHIPSET=AMD_VCO
    build parameter
  - The standard voltage formulas are restored to these architectures
  - Zen5: Guessed a new P-State MSR bits specification to fix the
    Coefficient Of Frequency (COF)</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1726833600">- Update to 1.98.4
  * [Build]
  - Prevent a collision with macro WRMSRNS within kernel 6.11
  * [x86_64]
  - [Virtualization] Switch to the HCF or VP_RUNTIME counters depending on the detected hypervisor</changelog>
</package>
<package pkgid="bafa2bf4726b6b3a8c01ca76949781e98cb93085268a400b9b32889a488ed35e0f24a29d3b2e3e8a9abe22603736f8bcdfdbfc8c33af819fb050a450e4a91aa7" name="CoreFreq" arch="src">
  <version epoch="0" ver="1.98.4" rel="1.4"/>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1670932800">- removed modprobe_corefreqd.service.patch and harden_corefreqd.service.patch
  now included in new corefreqd.service file replacing stock one
- update to 1.93.1
  * [PRJ] CoreFreq version 1.93.1
  * [ACPI/CPPC/EPP] Preview of AMD/Zen Energy Preference (CONFIG_CACHY)
  * [UI] Changed the HWP or CPPC ratio bounds.
  * [FIX] Putting `corefreqd` in the root cgroup (issue #379) Thanks to gel-crabs
  * [DOC] Parameters to blacklist the amd_pstate since kernel 6.0.11
  * [AMD][Zen4] Apply a voltage formula based on Rembrandt's. (#378)
  * [AMD][Zen4/Raphael] Attempting temperature per CCD from TCTL+0x308
  * [AMD][Zen4] Changed Timer loop
  * [CR] CLI code review and UI optimizations
  * [UI] Auto refresh the Topology items when off/online
  * [CR] Conditionally build with additional PMC Counters
  * [Intel] Adding Z8000 System Memory Controller Registers
  * [CR] Transformed global variable in cells padding
  * [UI] Windows re-scaling fix
  * [UI] Apply color theming to the CPPC capabilities list.
  * [AMD][Raphael] Adding device DIDs to probe UMC and IOMMU
  * [CPPC/FMW] Computes value bounds while Enabling/Disabling firmware
  * [CR] CPPC lib errors are now raised to Debug level
  * [AMD][Zen4] Increased the UMC size to 12 channels.
  * [CPPC] Handles the OffLine CPU case.
  * [CLI] Refactoring HWP/CPPC to print all capabilities per CPU
  * [ACPI] Computes the CPPC Bounds
  * [Intel] Linear Address Masking (LAM)
  * [CLI] EFER: Left aligned labels
  * [AMD] Reports UAIE and AIBRSE bits from EFER system register
  * [CLI] Changed mitigation mechanisms incapability labels
  * [AMD][Zen2] Mitigation Mechanism BTC-NOBR * ACPI/OSPM documentation
  * [CR] Code review on bit masks
  * [CPPC][ACPI] Kernel may decode the Guaranteed Performance Register
  * [UI] Optimize the cycles to clear the time bar.
  * [CR] Code review for extra compiler warnings
  * [UI] Time of the day displayed in the right side of menu
  * [UI] Display the current date and time in menu bar
  * [Kernel] Introducing support of `CONFIG_SCHED_BORE`
  * [CLI] Fixing ambiguous CPPC report: hardware vs firmware
  * [CLI] Surrounds _CPC feature with square brackets
  * [CPPC] Provides the ACPI _CPC object state.
  * [UI] Colors the task being tracked in the tracking list
  * [UI] Display the current time in the menu bar
  * [CLI] Reserve the programmable TDP section to Intel processors.
  * [AMD/Zen3+] Improving the DIMM geometry of Rembrandt UMC</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1672747200">- update to 1.94.1:
  * [Intel] Gemini Lake
  * [AMD] Ryzen 5 6600 H SoC, UMC channels
  * [AMD] Rembrandt: maximum of two UMC channels
  * [AMD] Raphael: Decodes DIMM geometry from AddrCfg
  * [AMD] Zen: Aggregation refactored
  * [AMD] Improved DDR5 clock decoding
  * Optimized Idle Loop</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1673006400">- update to 1.94.3:
  * [AMD][RMB] If UMC is quad channels then unpopulate odd channels
  * [AMD][RPL] Provide Service Processor Vcore as workaround
  * [UI] Auto size and lay performance capabilities window
  * [UI] Adding comments to the EEO and R2H technologies
  * [AMD][Raphael] 7950X3D, 7900X3D. support</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1674475200">- update to 1.95.1:
  * [Intel] RPL: voltage of Pcore, Ecore, System Agent
  * [Intel] RPL and ADL Chipset device IDs
  * [Intel] Decode the RPL IMC and improve DDR5 support
  * [Build] Raise `MAX_FREQ_HZ` up to 7125000000 Hertz
  * [Intel] Mobile {Coffee Lake, Kaby Lake} codenames
  * [Intel] Braswell codename detection
  * [AMD] SYSCFG Register
  * [AMD] EPYC 9654
  * [AMD] Transparent SME
  * [AMD] DRAM Data Scrambling
  * [AMD] Adding "Barcelo R" and "Rembrandt R"</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1675944000">- update to 1.95.2:
  * Fixed the aggregation of the minimum ratio
  Intel:
  * [Airmont][Silvermont] Attempt to decode `tCKE` from DRMC
    register
  * [Airmont] Improve `tWTPr`, `B2B`, `tWWDR` timings
  * [Airmont] Provide a new IMC decoder
  * Add the Emerald Rapids architecture entry
  * [DDR5][DDR4] Add the `RCDw` IMC timing
  * [Raptor Lake ] De-activate the MSR Uncore counter
  AMD:
  * "Zen3/Barcelo-R" and "Zen3+ Rembrandt-R" codenames
  * [Zen] Thermal highest limit reset fix
  Misc:
  * Code review and Registers documentation:
    AMD HWCR, Intel HDC and DRP</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677067200">- update to 1.95.4
  * [Intel] [from 11th to 14th gen]
    Convert the DRAM Speed to MT/s unit
    Compute the Bus Rate based on the BIOS MC PLL
- update to 1.95.3
  * [Intel] [Airmont]
    Improved the IMC geometry
    Introducing the Spreadtrum architecture
    Fixed the Bus and DRAM frequency rates
  * [Intel] [from 11th to 13th gen] Attempt to probe the interleaved controllers
  * [Intel] [Alder Lake/H] Attempt to decode the TCO Watchdog</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677153600">- added leap_compile_fix.patch to fix compilation on Leap</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1683115200">- removed leap_compile_fix.patch no needed anymore
- update to 1.96.0
  * [AMD]
    [RPL/X3D] Disabling the turbo boosted P-states change
    [PHOENIX] Adding Z1, U and HS PRO series.
    [Genoa] DAC address at UMC BAR + 0x40
    [Zen4] Adding the PCI entries of Genoa
    [Zen2] Adding remaining PCI entries
    [Zen] Query DAC &amp; CFG with the right UMC base address register
    [Zen4] Dump the CPUID Extended CPU Topology leaves.
    [Zen][Embedded][Banded Kestrel] R1000 Processor Family
    [Zen][Embedded] "Great Horned Owl", "River Hawk", "Grey Hawk"
    Complete the "Raven Ridge" and "Picasso" lists
    [EPYC] Moved "Snowy Owl" Embedded processors to CPUID 8F_01
    [Zen4] introducing Phoenix and Dragon Range
    [RMB] adding the Ryzen Embedded V3000 processors
    [VMR] adding the "AMD Ryzen 9 PRO 5945"
  * [Intel]
    Adding Granite Rapids, Sierra Forest, Grand Ridge entries
    Adding "Lunar Lake" and "Arrow Lake" entries.
  * [UI]
    Optimized decimal to digits converter
    Allow task tracker to select up to pid_max
    Can trace the frozen states of Linux tasks.
    Only print HWP frequencies within bounds.
    Fix ruler's aggregation.
  * [CR]
    Check CPUID[HV_PARTITION_PRIVILEGE_MASK] for HV_X64_MSR_VP_RUNTIME
    Uninitialized variable fix.
    [CPPC] Build EPP with KERNEL_VERSION(6) rather than CONFIG_CACHY
    [KERNEL] Linux 6.3: Employ modifier calls with the vma-&gt;vm_flags</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1684065600">- update to 1.96.1
  * [Driver]
  - Postpone Clock Source registration during startup until the Base Clock is computed.
  - Change class_create() according to Linux Kernel 6.4
  - Clear interrupt flag (cli) after Halt in the Idle method
  * [AMD]
  - [PHOENIX] Adding Ryzen 7940H, 7840H, 7640H
  - [VERMEER] Adding Ryzen PRO and Embedded processors
  - Ryzen Z1 CPUID' brand fix
  - Adding EPYC Embedded 9004 Series as Genoa
  - Adding EPYC Embedded 7003 Series as Milan
  - Adding EPYC Embedded 7002 Series as Rome
  - Adding EPYC Embedded 7001 Series as Naples</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1685880000">- update to 1.96.2
  * [Driver]
  - Allows compilation to keep going without CONFIG_ACPI_CPPC_LIB
  * [Client]
  - Adding two command line arguments:
  - Op Show Package C-States
  - OW Toggle Energy units
  * [AMD]
  - Specification of some Configuration MSRs</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1686830400">- update to 1.96.4
  * [AMD]
  - Display CPUID state of new and legacy features:
    Fused Multiply Add [FMA4]
    Extended Operation Support [XOP]
    Translation Cache Extension [TCE]
    Trailing Bit Manipulation [TBM]
    OS Visible Work-around [OSVW]
    LOCK prefix to read CR8 [AltMov]
  * [Intel]
  - Advanced Matrix Extensions [AMX]
  - Bits and Features of Sierra Forest and Grand Ridge
  - Attempt to decode the Meteor Lake Memory Controller
- update to 1.96.3
  * [AMD]
  - [Zeppelin] Probe more than one UMC controllers on Ryzen Threadripper 1900X
  - [Zen4] Dump SMBE and BMEC sub-leaves of CPUID 0x80000020</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1688212800">- update to 1.96.5
  * [AMD]
    Adding the "AMD Ryzen 5 5600X3D"
    Introducing the Zen4c Bergamo architecture
    Specs fixing of Embedded V-series and 3000 Series Processors
    Adding MENDOCINO, RAPHAEL Pro, PHOENIX Pro among others</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1712318400">- added preamble file for %kernel_module_package macro
- update to 1.97.1
  * added aarch64 support
  * upstream did not provide a summary changelog. Full list of commits:
    https://github.com/cyring/CoreFreq/compare/1.96.5...1.97.1</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715860800">- update to 1.97.2
  * [AMD]
  - [Hawk Point] Adding Ryzen PRO processors
  - [Phoenix] Adding the unlocked Ryzen 8000 Series
  * [Intel]
  - [MeteorLake] New bits specified
  - EEO and R2H bits inversion fix in MSR_POWER_CTL (0x1fc)
  - Reverse specification of MSR UNCORE_PERF_STATUS
  - Prefetchers fix of L1 Scrubbing, L1 Next Page and L2 AMP
  * [AArch64]
  - Providing Exclusive Load/Store to atomic operations
  - Improved asm of various macro functions
  - Removed LEGACY macros
  - Optimized the CORE_COUNT macros
  - Marked the Tools feature as nominal: Stress functions available
  - Allow user access to Retired Instructions counter
  - Fix Instructions counter overflow
  - Other PMC enhancements
  * [CR]
  - Fix a building issue with AlmaLinux aka RHEL-9
  - Linux kernel 6.9: Avoid redefinition of Intel MSR macros
  * [Doc]
  - README section for AlmaLinux
  - CONFIG_TRIM_UNUSED_KSYMS kernel build config is forbidden</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715947200">- fix dependency on kernel module that was not versioned</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1722081600">- update to 1.98.0
  * [Build]
  - Change dkms configuration to install into /usr/bin/
  - Solved compilation with Fedora using RHEL MINOR version number 99
  - [CR] Fixed some compilation warnings
  - [CR] Fix memory allocation in kernel pages for the SysGate
  - Workaround to musl change in basename (#494)
  - aarch64: Build with Redhat RHEL version 9
  - [CR] x86_64: Prevent array size overflow
  - dkms and ckms configuration files upgraded to version 1.98
  * [Intel]
  - [Raptor Lake] Adding the HB DID of i7-14700K' IMC
  - Mitigation mechanism: GDS_NO; RFDS_NO; MONITOR_MITG_NO
  - Apply some SDM Documentation Changes
  - [MTL] Fix CMD Stretch bit range width
  - Added method CLOCK_FLEX_MAX with Xeon's Nehalem &amp; Core 2
  - Grants full MSR_FLEX_RATIO access to tested architectures:
  - Alder Lake/S
  - Tiger Lake/U
  - Westmere/Gulftown
  - Provides the overclocking bins with unlocked processors
  - Query the Overclocking bit (OC) from Capabilities
  - Adding technologies: VMD, HDCP, IPU and VPU
  - Volume Management Device
  - High-Bandwidth Digital Content Protection
  - Image Processing Unit
  - Vision Processing Unit
  - Gaussian &amp; Neural Accelerator - GNA technology
  - [CR] Renamed Gemini Lake structures
  - [Meteor Lake] Introducing memory controller decoder
  * [AArch64]
  - Optimizing the Vcore seek
  - Workaround to Package discrete voltage: the highest Vcore
  - Improving computation of Euclidean division
  - Adjust frequency division in CNTFRQ and PMU counters
  - Scale a frequency factor from the interval
  - Refactoring the frequency ratios for decimal precision
  - Compile dev_pm_opp_put if Kernel greater or equal 4.11
  - Get the voltage core of CPUs from OPP
  * [AMD]
  - [Zen4][Raphael] Adding the EPYC 4004 Series
  - [Zen4] Clarify Hawk Point and Phoenix-Refresh architectures
  - [Family 19h] New voltage formula assigned to model 61h
  - Vcore activated
  - Voltage SoC deactivated
  - [Zen] Prevent the calculation of negative temperature (issue #496)
  - [Family 18h] Documented Hygon C86 7375
  - [Family 19h] PStateDef specification: Adding VID[8] bit 32
  - Specification of MSR HW_PSTATE_STATUS
  * [CLI]
  - aarch64: Display the state of the Memory Management Unit (MMU)
  - aarch64: State of Instruction Cache Unit I$ and Data Cache Unit D$
  - Added UI_RULER_MINIMUM &amp; UI_RULER_MAXIMUM building constraints
  - Revert "[CLI] Responsive ruler to architectural context"
  - This reverts commit 4bc38d6.
  - x86_64: AMD Boost and P-States redesigned
  - [UI] Hardening missing console/terminal size
  - Responsive ruler to architectural context
  - x86_64: Make HDCP meaning string shorter
  * [Driver]
  - Created C2U_Enable as a parameter alias of C1U_Enable</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1723032000">- update to 1.98.1
  * [AMD]
  - [Zen] Inject threshold events when thermal is out of bounds
  - Generic Zen architectures renamed with their Family number
  - Added a generic entry for the 1A family
  - Configure TjMax for multiple Ryzen and Threadripper
  - [CR] Optimize AMD temperature filtering function
  - [Zen5] Introducing the Eldora architecture aka "Granite Ridge"
  - [Zen5] Adding entries for Strix Point
  * [Intel]
  - Feature-bits of Core Ultra architecture
  - [TGL][ADL][RPL] New devices to probe IMC and Watchdog
  - [Raptor Lake-E] Adding the IMC probing entries
  - Grant full MSR_FLEX_RATIO access to Raptor Lake (06_B7)
  - Added Host Bridge DIDs of Raptor Lake-E
  - [ADL ... MTL] Code review of IMC decoders
  - [ADL] Compute DIMM Bank and Columns on both channels
  - [ADL] Process channels differently depending on DDR4 or DDR5
  - 12th to 14th generation IMC decoder refactoring
  - [ADL ... MTL] Adding Memory Controller Virtual Channel Count
  - [ADL ... MTL] Channel count as a function of DDPCD DDR_TYPE
  - [ADL ... MTL] Keep all enabled memory controllers
  - [12th and superior] Compute tWR quantity as a function of DDR version
  * [Build]
  - Now leave version number in Makefile
  - Pretty print the build and the clean of outputs
    Allow the V=n option increase the verbose level (incl. kernel)
  - CPU-Freq build against Linux Kernel version 6.11
  * [Documentation]
  - Refreshed README and Makefile</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1723464000">- Update to 1.98.2
  * [Intel]
  - [WDT] Adding multiple devices to probe TCO
    C620 Series Chipset Production SKUs (0xa1a3)
    C620 Series Chipset Super SKUs (0xa223)
    Sunrise Point/H (0xa123)
    Cannon Lake/LP (0x9da3)
    Comet Lake/H (0x06a3)
    Ice Lake/LP (0x34a3)
    Tiger Lake/H (0x43a3)
    Elkhart Lake (0x4b23)
    Kaby Lake/H (0xa2a3)
    Cannon Lake (0xa323)
    Comet Lake/V (0xa3a3)
    Ice Lake/NG (0x38a3)
    Alder lake/M (0x54a3)
    Arrow Lake/S (0x7f23)
    Jasper Lake SMBus (0x4da3)
    Sunrise Point-LP SMBus (0x9d23)
    Comet Lake PCH-LP SMBus (0x02a3)
  - MSR_FLEX_RATIO register
    Grant access to Alder Lake/H (06_9A)
    Deny access to Nehalem/Bloomfield (06_1A)
    Removed a condition in access function</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1725019200">- Update to 1.98.3
  * [AMD]
  - [VMR/RPL/GNR] Voltage Curve Optimizer (VCO)
  - Provide a specific VCO formula based on HWM_CHIPSET=AMD_VCO
    build parameter
  - The standard voltage formulas are restored to these architectures
  - Zen5: Guessed a new P-State MSR bits specification to fix the
    Coefficient Of Frequency (COF)</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1726833600">- Update to 1.98.4
  * [Build]
  - Prevent a collision with macro WRMSRNS within kernel 6.11
  * [x86_64]
  - [Virtualization] Switch to the HCF or VP_RUNTIME counters depending on the detected hypervisor</changelog>
</package>
<package pkgid="620c1592eccbca990e01363178680cb8e1440c26669d9c14ebf4cef1f4075fbba7b19e6c0c20e2404e188d90ee1ae44726a92cb6dfbfd991717d8a23abf3ba82" name="CoreFreq" arch="x86_64">
  <version epoch="0" ver="1.98.4" rel="1.4"/>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1670932800">- removed modprobe_corefreqd.service.patch and harden_corefreqd.service.patch
  now included in new corefreqd.service file replacing stock one
- update to 1.93.1
  * [PRJ] CoreFreq version 1.93.1
  * [ACPI/CPPC/EPP] Preview of AMD/Zen Energy Preference (CONFIG_CACHY)
  * [UI] Changed the HWP or CPPC ratio bounds.
  * [FIX] Putting `corefreqd` in the root cgroup (issue #379) Thanks to gel-crabs
  * [DOC] Parameters to blacklist the amd_pstate since kernel 6.0.11
  * [AMD][Zen4] Apply a voltage formula based on Rembrandt's. (#378)
  * [AMD][Zen4/Raphael] Attempting temperature per CCD from TCTL+0x308
  * [AMD][Zen4] Changed Timer loop
  * [CR] CLI code review and UI optimizations
  * [UI] Auto refresh the Topology items when off/online
  * [CR] Conditionally build with additional PMC Counters
  * [Intel] Adding Z8000 System Memory Controller Registers
  * [CR] Transformed global variable in cells padding
  * [UI] Windows re-scaling fix
  * [UI] Apply color theming to the CPPC capabilities list.
  * [AMD][Raphael] Adding device DIDs to probe UMC and IOMMU
  * [CPPC/FMW] Computes value bounds while Enabling/Disabling firmware
  * [CR] CPPC lib errors are now raised to Debug level
  * [AMD][Zen4] Increased the UMC size to 12 channels.
  * [CPPC] Handles the OffLine CPU case.
  * [CLI] Refactoring HWP/CPPC to print all capabilities per CPU
  * [ACPI] Computes the CPPC Bounds
  * [Intel] Linear Address Masking (LAM)
  * [CLI] EFER: Left aligned labels
  * [AMD] Reports UAIE and AIBRSE bits from EFER system register
  * [CLI] Changed mitigation mechanisms incapability labels
  * [AMD][Zen2] Mitigation Mechanism BTC-NOBR * ACPI/OSPM documentation
  * [CR] Code review on bit masks
  * [CPPC][ACPI] Kernel may decode the Guaranteed Performance Register
  * [UI] Optimize the cycles to clear the time bar.
  * [CR] Code review for extra compiler warnings
  * [UI] Time of the day displayed in the right side of menu
  * [UI] Display the current date and time in menu bar
  * [Kernel] Introducing support of `CONFIG_SCHED_BORE`
  * [CLI] Fixing ambiguous CPPC report: hardware vs firmware
  * [CLI] Surrounds _CPC feature with square brackets
  * [CPPC] Provides the ACPI _CPC object state.
  * [UI] Colors the task being tracked in the tracking list
  * [UI] Display the current time in the menu bar
  * [CLI] Reserve the programmable TDP section to Intel processors.
  * [AMD/Zen3+] Improving the DIMM geometry of Rembrandt UMC</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1672747200">- update to 1.94.1:
  * [Intel] Gemini Lake
  * [AMD] Ryzen 5 6600 H SoC, UMC channels
  * [AMD] Rembrandt: maximum of two UMC channels
  * [AMD] Raphael: Decodes DIMM geometry from AddrCfg
  * [AMD] Zen: Aggregation refactored
  * [AMD] Improved DDR5 clock decoding
  * Optimized Idle Loop</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1673006400">- update to 1.94.3:
  * [AMD][RMB] If UMC is quad channels then unpopulate odd channels
  * [AMD][RPL] Provide Service Processor Vcore as workaround
  * [UI] Auto size and lay performance capabilities window
  * [UI] Adding comments to the EEO and R2H technologies
  * [AMD][Raphael] 7950X3D, 7900X3D. support</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1674475200">- update to 1.95.1:
  * [Intel] RPL: voltage of Pcore, Ecore, System Agent
  * [Intel] RPL and ADL Chipset device IDs
  * [Intel] Decode the RPL IMC and improve DDR5 support
  * [Build] Raise `MAX_FREQ_HZ` up to 7125000000 Hertz
  * [Intel] Mobile {Coffee Lake, Kaby Lake} codenames
  * [Intel] Braswell codename detection
  * [AMD] SYSCFG Register
  * [AMD] EPYC 9654
  * [AMD] Transparent SME
  * [AMD] DRAM Data Scrambling
  * [AMD] Adding "Barcelo R" and "Rembrandt R"</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1675944000">- update to 1.95.2:
  * Fixed the aggregation of the minimum ratio
  Intel:
  * [Airmont][Silvermont] Attempt to decode `tCKE` from DRMC
    register
  * [Airmont] Improve `tWTPr`, `B2B`, `tWWDR` timings
  * [Airmont] Provide a new IMC decoder
  * Add the Emerald Rapids architecture entry
  * [DDR5][DDR4] Add the `RCDw` IMC timing
  * [Raptor Lake ] De-activate the MSR Uncore counter
  AMD:
  * "Zen3/Barcelo-R" and "Zen3+ Rembrandt-R" codenames
  * [Zen] Thermal highest limit reset fix
  Misc:
  * Code review and Registers documentation:
    AMD HWCR, Intel HDC and DRP</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677067200">- update to 1.95.4
  * [Intel] [from 11th to 14th gen]
    Convert the DRAM Speed to MT/s unit
    Compute the Bus Rate based on the BIOS MC PLL
- update to 1.95.3
  * [Intel] [Airmont]
    Improved the IMC geometry
    Introducing the Spreadtrum architecture
    Fixed the Bus and DRAM frequency rates
  * [Intel] [from 11th to 13th gen] Attempt to probe the interleaved controllers
  * [Intel] [Alder Lake/H] Attempt to decode the TCO Watchdog</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677153600">- added leap_compile_fix.patch to fix compilation on Leap</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1683115200">- removed leap_compile_fix.patch no needed anymore
- update to 1.96.0
  * [AMD]
    [RPL/X3D] Disabling the turbo boosted P-states change
    [PHOENIX] Adding Z1, U and HS PRO series.
    [Genoa] DAC address at UMC BAR + 0x40
    [Zen4] Adding the PCI entries of Genoa
    [Zen2] Adding remaining PCI entries
    [Zen] Query DAC &amp; CFG with the right UMC base address register
    [Zen4] Dump the CPUID Extended CPU Topology leaves.
    [Zen][Embedded][Banded Kestrel] R1000 Processor Family
    [Zen][Embedded] "Great Horned Owl", "River Hawk", "Grey Hawk"
    Complete the "Raven Ridge" and "Picasso" lists
    [EPYC] Moved "Snowy Owl" Embedded processors to CPUID 8F_01
    [Zen4] introducing Phoenix and Dragon Range
    [RMB] adding the Ryzen Embedded V3000 processors
    [VMR] adding the "AMD Ryzen 9 PRO 5945"
  * [Intel]
    Adding Granite Rapids, Sierra Forest, Grand Ridge entries
    Adding "Lunar Lake" and "Arrow Lake" entries.
  * [UI]
    Optimized decimal to digits converter
    Allow task tracker to select up to pid_max
    Can trace the frozen states of Linux tasks.
    Only print HWP frequencies within bounds.
    Fix ruler's aggregation.
  * [CR]
    Check CPUID[HV_PARTITION_PRIVILEGE_MASK] for HV_X64_MSR_VP_RUNTIME
    Uninitialized variable fix.
    [CPPC] Build EPP with KERNEL_VERSION(6) rather than CONFIG_CACHY
    [KERNEL] Linux 6.3: Employ modifier calls with the vma-&gt;vm_flags</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1684065600">- update to 1.96.1
  * [Driver]
  - Postpone Clock Source registration during startup until the Base Clock is computed.
  - Change class_create() according to Linux Kernel 6.4
  - Clear interrupt flag (cli) after Halt in the Idle method
  * [AMD]
  - [PHOENIX] Adding Ryzen 7940H, 7840H, 7640H
  - [VERMEER] Adding Ryzen PRO and Embedded processors
  - Ryzen Z1 CPUID' brand fix
  - Adding EPYC Embedded 9004 Series as Genoa
  - Adding EPYC Embedded 7003 Series as Milan
  - Adding EPYC Embedded 7002 Series as Rome
  - Adding EPYC Embedded 7001 Series as Naples</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1685880000">- update to 1.96.2
  * [Driver]
  - Allows compilation to keep going without CONFIG_ACPI_CPPC_LIB
  * [Client]
  - Adding two command line arguments:
  - Op Show Package C-States
  - OW Toggle Energy units
  * [AMD]
  - Specification of some Configuration MSRs</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1686830400">- update to 1.96.4
  * [AMD]
  - Display CPUID state of new and legacy features:
    Fused Multiply Add [FMA4]
    Extended Operation Support [XOP]
    Translation Cache Extension [TCE]
    Trailing Bit Manipulation [TBM]
    OS Visible Work-around [OSVW]
    LOCK prefix to read CR8 [AltMov]
  * [Intel]
  - Advanced Matrix Extensions [AMX]
  - Bits and Features of Sierra Forest and Grand Ridge
  - Attempt to decode the Meteor Lake Memory Controller
- update to 1.96.3
  * [AMD]
  - [Zeppelin] Probe more than one UMC controllers on Ryzen Threadripper 1900X
  - [Zen4] Dump SMBE and BMEC sub-leaves of CPUID 0x80000020</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1688212800">- update to 1.96.5
  * [AMD]
    Adding the "AMD Ryzen 5 5600X3D"
    Introducing the Zen4c Bergamo architecture
    Specs fixing of Embedded V-series and 3000 Series Processors
    Adding MENDOCINO, RAPHAEL Pro, PHOENIX Pro among others</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1712318400">- added preamble file for %kernel_module_package macro
- update to 1.97.1
  * added aarch64 support
  * upstream did not provide a summary changelog. Full list of commits:
    https://github.com/cyring/CoreFreq/compare/1.96.5...1.97.1</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715860800">- update to 1.97.2
  * [AMD]
  - [Hawk Point] Adding Ryzen PRO processors
  - [Phoenix] Adding the unlocked Ryzen 8000 Series
  * [Intel]
  - [MeteorLake] New bits specified
  - EEO and R2H bits inversion fix in MSR_POWER_CTL (0x1fc)
  - Reverse specification of MSR UNCORE_PERF_STATUS
  - Prefetchers fix of L1 Scrubbing, L1 Next Page and L2 AMP
  * [AArch64]
  - Providing Exclusive Load/Store to atomic operations
  - Improved asm of various macro functions
  - Removed LEGACY macros
  - Optimized the CORE_COUNT macros
  - Marked the Tools feature as nominal: Stress functions available
  - Allow user access to Retired Instructions counter
  - Fix Instructions counter overflow
  - Other PMC enhancements
  * [CR]
  - Fix a building issue with AlmaLinux aka RHEL-9
  - Linux kernel 6.9: Avoid redefinition of Intel MSR macros
  * [Doc]
  - README section for AlmaLinux
  - CONFIG_TRIM_UNUSED_KSYMS kernel build config is forbidden</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715947200">- fix dependency on kernel module that was not versioned</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1722081600">- update to 1.98.0
  * [Build]
  - Change dkms configuration to install into /usr/bin/
  - Solved compilation with Fedora using RHEL MINOR version number 99
  - [CR] Fixed some compilation warnings
  - [CR] Fix memory allocation in kernel pages for the SysGate
  - Workaround to musl change in basename (#494)
  - aarch64: Build with Redhat RHEL version 9
  - [CR] x86_64: Prevent array size overflow
  - dkms and ckms configuration files upgraded to version 1.98
  * [Intel]
  - [Raptor Lake] Adding the HB DID of i7-14700K' IMC
  - Mitigation mechanism: GDS_NO; RFDS_NO; MONITOR_MITG_NO
  - Apply some SDM Documentation Changes
  - [MTL] Fix CMD Stretch bit range width
  - Added method CLOCK_FLEX_MAX with Xeon's Nehalem &amp; Core 2
  - Grants full MSR_FLEX_RATIO access to tested architectures:
  - Alder Lake/S
  - Tiger Lake/U
  - Westmere/Gulftown
  - Provides the overclocking bins with unlocked processors
  - Query the Overclocking bit (OC) from Capabilities
  - Adding technologies: VMD, HDCP, IPU and VPU
  - Volume Management Device
  - High-Bandwidth Digital Content Protection
  - Image Processing Unit
  - Vision Processing Unit
  - Gaussian &amp; Neural Accelerator - GNA technology
  - [CR] Renamed Gemini Lake structures
  - [Meteor Lake] Introducing memory controller decoder
  * [AArch64]
  - Optimizing the Vcore seek
  - Workaround to Package discrete voltage: the highest Vcore
  - Improving computation of Euclidean division
  - Adjust frequency division in CNTFRQ and PMU counters
  - Scale a frequency factor from the interval
  - Refactoring the frequency ratios for decimal precision
  - Compile dev_pm_opp_put if Kernel greater or equal 4.11
  - Get the voltage core of CPUs from OPP
  * [AMD]
  - [Zen4][Raphael] Adding the EPYC 4004 Series
  - [Zen4] Clarify Hawk Point and Phoenix-Refresh architectures
  - [Family 19h] New voltage formula assigned to model 61h
  - Vcore activated
  - Voltage SoC deactivated
  - [Zen] Prevent the calculation of negative temperature (issue #496)
  - [Family 18h] Documented Hygon C86 7375
  - [Family 19h] PStateDef specification: Adding VID[8] bit 32
  - Specification of MSR HW_PSTATE_STATUS
  * [CLI]
  - aarch64: Display the state of the Memory Management Unit (MMU)
  - aarch64: State of Instruction Cache Unit I$ and Data Cache Unit D$
  - Added UI_RULER_MINIMUM &amp; UI_RULER_MAXIMUM building constraints
  - Revert "[CLI] Responsive ruler to architectural context"
  - This reverts commit 4bc38d6.
  - x86_64: AMD Boost and P-States redesigned
  - [UI] Hardening missing console/terminal size
  - Responsive ruler to architectural context
  - x86_64: Make HDCP meaning string shorter
  * [Driver]
  - Created C2U_Enable as a parameter alias of C1U_Enable</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1723032000">- update to 1.98.1
  * [AMD]
  - [Zen] Inject threshold events when thermal is out of bounds
  - Generic Zen architectures renamed with their Family number
  - Added a generic entry for the 1A family
  - Configure TjMax for multiple Ryzen and Threadripper
  - [CR] Optimize AMD temperature filtering function
  - [Zen5] Introducing the Eldora architecture aka "Granite Ridge"
  - [Zen5] Adding entries for Strix Point
  * [Intel]
  - Feature-bits of Core Ultra architecture
  - [TGL][ADL][RPL] New devices to probe IMC and Watchdog
  - [Raptor Lake-E] Adding the IMC probing entries
  - Grant full MSR_FLEX_RATIO access to Raptor Lake (06_B7)
  - Added Host Bridge DIDs of Raptor Lake-E
  - [ADL ... MTL] Code review of IMC decoders
  - [ADL] Compute DIMM Bank and Columns on both channels
  - [ADL] Process channels differently depending on DDR4 or DDR5
  - 12th to 14th generation IMC decoder refactoring
  - [ADL ... MTL] Adding Memory Controller Virtual Channel Count
  - [ADL ... MTL] Channel count as a function of DDPCD DDR_TYPE
  - [ADL ... MTL] Keep all enabled memory controllers
  - [12th and superior] Compute tWR quantity as a function of DDR version
  * [Build]
  - Now leave version number in Makefile
  - Pretty print the build and the clean of outputs
    Allow the V=n option increase the verbose level (incl. kernel)
  - CPU-Freq build against Linux Kernel version 6.11
  * [Documentation]
  - Refreshed README and Makefile</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1723464000">- Update to 1.98.2
  * [Intel]
  - [WDT] Adding multiple devices to probe TCO
    C620 Series Chipset Production SKUs (0xa1a3)
    C620 Series Chipset Super SKUs (0xa223)
    Sunrise Point/H (0xa123)
    Cannon Lake/LP (0x9da3)
    Comet Lake/H (0x06a3)
    Ice Lake/LP (0x34a3)
    Tiger Lake/H (0x43a3)
    Elkhart Lake (0x4b23)
    Kaby Lake/H (0xa2a3)
    Cannon Lake (0xa323)
    Comet Lake/V (0xa3a3)
    Ice Lake/NG (0x38a3)
    Alder lake/M (0x54a3)
    Arrow Lake/S (0x7f23)
    Jasper Lake SMBus (0x4da3)
    Sunrise Point-LP SMBus (0x9d23)
    Comet Lake PCH-LP SMBus (0x02a3)
  - MSR_FLEX_RATIO register
    Grant access to Alder Lake/H (06_9A)
    Deny access to Nehalem/Bloomfield (06_1A)
    Removed a condition in access function</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1725019200">- Update to 1.98.3
  * [AMD]
  - [VMR/RPL/GNR] Voltage Curve Optimizer (VCO)
  - Provide a specific VCO formula based on HWM_CHIPSET=AMD_VCO
    build parameter
  - The standard voltage formulas are restored to these architectures
  - Zen5: Guessed a new P-State MSR bits specification to fix the
    Coefficient Of Frequency (COF)</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1726833600">- Update to 1.98.4
  * [Build]
  - Prevent a collision with macro WRMSRNS within kernel 6.11
  * [x86_64]
  - [Virtualization] Switch to the HCF or VP_RUNTIME counters depending on the detected hypervisor</changelog>
</package>
<package pkgid="4154d81f3a29bc607dd21bc4aef9012572795062cc8543ac07674959a8215e4ea8b1d05a780aae9b6afe79e39cb2a49e313528e19f1c6bd2ce0b05f1d7ed8e77" name="CoreFreq" arch="src">
  <version epoch="0" ver="1.98.4" rel="1.8"/>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1670932800">- removed modprobe_corefreqd.service.patch and harden_corefreqd.service.patch
  now included in new corefreqd.service file replacing stock one
- update to 1.93.1
  * [PRJ] CoreFreq version 1.93.1
  * [ACPI/CPPC/EPP] Preview of AMD/Zen Energy Preference (CONFIG_CACHY)
  * [UI] Changed the HWP or CPPC ratio bounds.
  * [FIX] Putting `corefreqd` in the root cgroup (issue #379) Thanks to gel-crabs
  * [DOC] Parameters to blacklist the amd_pstate since kernel 6.0.11
  * [AMD][Zen4] Apply a voltage formula based on Rembrandt's. (#378)
  * [AMD][Zen4/Raphael] Attempting temperature per CCD from TCTL+0x308
  * [AMD][Zen4] Changed Timer loop
  * [CR] CLI code review and UI optimizations
  * [UI] Auto refresh the Topology items when off/online
  * [CR] Conditionally build with additional PMC Counters
  * [Intel] Adding Z8000 System Memory Controller Registers
  * [CR] Transformed global variable in cells padding
  * [UI] Windows re-scaling fix
  * [UI] Apply color theming to the CPPC capabilities list.
  * [AMD][Raphael] Adding device DIDs to probe UMC and IOMMU
  * [CPPC/FMW] Computes value bounds while Enabling/Disabling firmware
  * [CR] CPPC lib errors are now raised to Debug level
  * [AMD][Zen4] Increased the UMC size to 12 channels.
  * [CPPC] Handles the OffLine CPU case.
  * [CLI] Refactoring HWP/CPPC to print all capabilities per CPU
  * [ACPI] Computes the CPPC Bounds
  * [Intel] Linear Address Masking (LAM)
  * [CLI] EFER: Left aligned labels
  * [AMD] Reports UAIE and AIBRSE bits from EFER system register
  * [CLI] Changed mitigation mechanisms incapability labels
  * [AMD][Zen2] Mitigation Mechanism BTC-NOBR * ACPI/OSPM documentation
  * [CR] Code review on bit masks
  * [CPPC][ACPI] Kernel may decode the Guaranteed Performance Register
  * [UI] Optimize the cycles to clear the time bar.
  * [CR] Code review for extra compiler warnings
  * [UI] Time of the day displayed in the right side of menu
  * [UI] Display the current date and time in menu bar
  * [Kernel] Introducing support of `CONFIG_SCHED_BORE`
  * [CLI] Fixing ambiguous CPPC report: hardware vs firmware
  * [CLI] Surrounds _CPC feature with square brackets
  * [CPPC] Provides the ACPI _CPC object state.
  * [UI] Colors the task being tracked in the tracking list
  * [UI] Display the current time in the menu bar
  * [CLI] Reserve the programmable TDP section to Intel processors.
  * [AMD/Zen3+] Improving the DIMM geometry of Rembrandt UMC</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1672747200">- update to 1.94.1:
  * [Intel] Gemini Lake
  * [AMD] Ryzen 5 6600 H SoC, UMC channels
  * [AMD] Rembrandt: maximum of two UMC channels
  * [AMD] Raphael: Decodes DIMM geometry from AddrCfg
  * [AMD] Zen: Aggregation refactored
  * [AMD] Improved DDR5 clock decoding
  * Optimized Idle Loop</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1673006400">- update to 1.94.3:
  * [AMD][RMB] If UMC is quad channels then unpopulate odd channels
  * [AMD][RPL] Provide Service Processor Vcore as workaround
  * [UI] Auto size and lay performance capabilities window
  * [UI] Adding comments to the EEO and R2H technologies
  * [AMD][Raphael] 7950X3D, 7900X3D. support</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1674475200">- update to 1.95.1:
  * [Intel] RPL: voltage of Pcore, Ecore, System Agent
  * [Intel] RPL and ADL Chipset device IDs
  * [Intel] Decode the RPL IMC and improve DDR5 support
  * [Build] Raise `MAX_FREQ_HZ` up to 7125000000 Hertz
  * [Intel] Mobile {Coffee Lake, Kaby Lake} codenames
  * [Intel] Braswell codename detection
  * [AMD] SYSCFG Register
  * [AMD] EPYC 9654
  * [AMD] Transparent SME
  * [AMD] DRAM Data Scrambling
  * [AMD] Adding "Barcelo R" and "Rembrandt R"</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1675944000">- update to 1.95.2:
  * Fixed the aggregation of the minimum ratio
  Intel:
  * [Airmont][Silvermont] Attempt to decode `tCKE` from DRMC
    register
  * [Airmont] Improve `tWTPr`, `B2B`, `tWWDR` timings
  * [Airmont] Provide a new IMC decoder
  * Add the Emerald Rapids architecture entry
  * [DDR5][DDR4] Add the `RCDw` IMC timing
  * [Raptor Lake ] De-activate the MSR Uncore counter
  AMD:
  * "Zen3/Barcelo-R" and "Zen3+ Rembrandt-R" codenames
  * [Zen] Thermal highest limit reset fix
  Misc:
  * Code review and Registers documentation:
    AMD HWCR, Intel HDC and DRP</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677067200">- update to 1.95.4
  * [Intel] [from 11th to 14th gen]
    Convert the DRAM Speed to MT/s unit
    Compute the Bus Rate based on the BIOS MC PLL
- update to 1.95.3
  * [Intel] [Airmont]
    Improved the IMC geometry
    Introducing the Spreadtrum architecture
    Fixed the Bus and DRAM frequency rates
  * [Intel] [from 11th to 13th gen] Attempt to probe the interleaved controllers
  * [Intel] [Alder Lake/H] Attempt to decode the TCO Watchdog</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677153600">- added leap_compile_fix.patch to fix compilation on Leap</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1683115200">- removed leap_compile_fix.patch no needed anymore
- update to 1.96.0
  * [AMD]
    [RPL/X3D] Disabling the turbo boosted P-states change
    [PHOENIX] Adding Z1, U and HS PRO series.
    [Genoa] DAC address at UMC BAR + 0x40
    [Zen4] Adding the PCI entries of Genoa
    [Zen2] Adding remaining PCI entries
    [Zen] Query DAC &amp; CFG with the right UMC base address register
    [Zen4] Dump the CPUID Extended CPU Topology leaves.
    [Zen][Embedded][Banded Kestrel] R1000 Processor Family
    [Zen][Embedded] "Great Horned Owl", "River Hawk", "Grey Hawk"
    Complete the "Raven Ridge" and "Picasso" lists
    [EPYC] Moved "Snowy Owl" Embedded processors to CPUID 8F_01
    [Zen4] introducing Phoenix and Dragon Range
    [RMB] adding the Ryzen Embedded V3000 processors
    [VMR] adding the "AMD Ryzen 9 PRO 5945"
  * [Intel]
    Adding Granite Rapids, Sierra Forest, Grand Ridge entries
    Adding "Lunar Lake" and "Arrow Lake" entries.
  * [UI]
    Optimized decimal to digits converter
    Allow task tracker to select up to pid_max
    Can trace the frozen states of Linux tasks.
    Only print HWP frequencies within bounds.
    Fix ruler's aggregation.
  * [CR]
    Check CPUID[HV_PARTITION_PRIVILEGE_MASK] for HV_X64_MSR_VP_RUNTIME
    Uninitialized variable fix.
    [CPPC] Build EPP with KERNEL_VERSION(6) rather than CONFIG_CACHY
    [KERNEL] Linux 6.3: Employ modifier calls with the vma-&gt;vm_flags</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1684065600">- update to 1.96.1
  * [Driver]
  - Postpone Clock Source registration during startup until the Base Clock is computed.
  - Change class_create() according to Linux Kernel 6.4
  - Clear interrupt flag (cli) after Halt in the Idle method
  * [AMD]
  - [PHOENIX] Adding Ryzen 7940H, 7840H, 7640H
  - [VERMEER] Adding Ryzen PRO and Embedded processors
  - Ryzen Z1 CPUID' brand fix
  - Adding EPYC Embedded 9004 Series as Genoa
  - Adding EPYC Embedded 7003 Series as Milan
  - Adding EPYC Embedded 7002 Series as Rome
  - Adding EPYC Embedded 7001 Series as Naples</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1685880000">- update to 1.96.2
  * [Driver]
  - Allows compilation to keep going without CONFIG_ACPI_CPPC_LIB
  * [Client]
  - Adding two command line arguments:
  - Op Show Package C-States
  - OW Toggle Energy units
  * [AMD]
  - Specification of some Configuration MSRs</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1686830400">- update to 1.96.4
  * [AMD]
  - Display CPUID state of new and legacy features:
    Fused Multiply Add [FMA4]
    Extended Operation Support [XOP]
    Translation Cache Extension [TCE]
    Trailing Bit Manipulation [TBM]
    OS Visible Work-around [OSVW]
    LOCK prefix to read CR8 [AltMov]
  * [Intel]
  - Advanced Matrix Extensions [AMX]
  - Bits and Features of Sierra Forest and Grand Ridge
  - Attempt to decode the Meteor Lake Memory Controller
- update to 1.96.3
  * [AMD]
  - [Zeppelin] Probe more than one UMC controllers on Ryzen Threadripper 1900X
  - [Zen4] Dump SMBE and BMEC sub-leaves of CPUID 0x80000020</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1688212800">- update to 1.96.5
  * [AMD]
    Adding the "AMD Ryzen 5 5600X3D"
    Introducing the Zen4c Bergamo architecture
    Specs fixing of Embedded V-series and 3000 Series Processors
    Adding MENDOCINO, RAPHAEL Pro, PHOENIX Pro among others</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1712318400">- added preamble file for %kernel_module_package macro
- update to 1.97.1
  * added aarch64 support
  * upstream did not provide a summary changelog. Full list of commits:
    https://github.com/cyring/CoreFreq/compare/1.96.5...1.97.1</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715860800">- update to 1.97.2
  * [AMD]
  - [Hawk Point] Adding Ryzen PRO processors
  - [Phoenix] Adding the unlocked Ryzen 8000 Series
  * [Intel]
  - [MeteorLake] New bits specified
  - EEO and R2H bits inversion fix in MSR_POWER_CTL (0x1fc)
  - Reverse specification of MSR UNCORE_PERF_STATUS
  - Prefetchers fix of L1 Scrubbing, L1 Next Page and L2 AMP
  * [AArch64]
  - Providing Exclusive Load/Store to atomic operations
  - Improved asm of various macro functions
  - Removed LEGACY macros
  - Optimized the CORE_COUNT macros
  - Marked the Tools feature as nominal: Stress functions available
  - Allow user access to Retired Instructions counter
  - Fix Instructions counter overflow
  - Other PMC enhancements
  * [CR]
  - Fix a building issue with AlmaLinux aka RHEL-9
  - Linux kernel 6.9: Avoid redefinition of Intel MSR macros
  * [Doc]
  - README section for AlmaLinux
  - CONFIG_TRIM_UNUSED_KSYMS kernel build config is forbidden</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715947200">- fix dependency on kernel module that was not versioned</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1722081600">- update to 1.98.0
  * [Build]
  - Change dkms configuration to install into /usr/bin/
  - Solved compilation with Fedora using RHEL MINOR version number 99
  - [CR] Fixed some compilation warnings
  - [CR] Fix memory allocation in kernel pages for the SysGate
  - Workaround to musl change in basename (#494)
  - aarch64: Build with Redhat RHEL version 9
  - [CR] x86_64: Prevent array size overflow
  - dkms and ckms configuration files upgraded to version 1.98
  * [Intel]
  - [Raptor Lake] Adding the HB DID of i7-14700K' IMC
  - Mitigation mechanism: GDS_NO; RFDS_NO; MONITOR_MITG_NO
  - Apply some SDM Documentation Changes
  - [MTL] Fix CMD Stretch bit range width
  - Added method CLOCK_FLEX_MAX with Xeon's Nehalem &amp; Core 2
  - Grants full MSR_FLEX_RATIO access to tested architectures:
  - Alder Lake/S
  - Tiger Lake/U
  - Westmere/Gulftown
  - Provides the overclocking bins with unlocked processors
  - Query the Overclocking bit (OC) from Capabilities
  - Adding technologies: VMD, HDCP, IPU and VPU
  - Volume Management Device
  - High-Bandwidth Digital Content Protection
  - Image Processing Unit
  - Vision Processing Unit
  - Gaussian &amp; Neural Accelerator - GNA technology
  - [CR] Renamed Gemini Lake structures
  - [Meteor Lake] Introducing memory controller decoder
  * [AArch64]
  - Optimizing the Vcore seek
  - Workaround to Package discrete voltage: the highest Vcore
  - Improving computation of Euclidean division
  - Adjust frequency division in CNTFRQ and PMU counters
  - Scale a frequency factor from the interval
  - Refactoring the frequency ratios for decimal precision
  - Compile dev_pm_opp_put if Kernel greater or equal 4.11
  - Get the voltage core of CPUs from OPP
  * [AMD]
  - [Zen4][Raphael] Adding the EPYC 4004 Series
  - [Zen4] Clarify Hawk Point and Phoenix-Refresh architectures
  - [Family 19h] New voltage formula assigned to model 61h
  - Vcore activated
  - Voltage SoC deactivated
  - [Zen] Prevent the calculation of negative temperature (issue #496)
  - [Family 18h] Documented Hygon C86 7375
  - [Family 19h] PStateDef specification: Adding VID[8] bit 32
  - Specification of MSR HW_PSTATE_STATUS
  * [CLI]
  - aarch64: Display the state of the Memory Management Unit (MMU)
  - aarch64: State of Instruction Cache Unit I$ and Data Cache Unit D$
  - Added UI_RULER_MINIMUM &amp; UI_RULER_MAXIMUM building constraints
  - Revert "[CLI] Responsive ruler to architectural context"
  - This reverts commit 4bc38d6.
  - x86_64: AMD Boost and P-States redesigned
  - [UI] Hardening missing console/terminal size
  - Responsive ruler to architectural context
  - x86_64: Make HDCP meaning string shorter
  * [Driver]
  - Created C2U_Enable as a parameter alias of C1U_Enable</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1723032000">- update to 1.98.1
  * [AMD]
  - [Zen] Inject threshold events when thermal is out of bounds
  - Generic Zen architectures renamed with their Family number
  - Added a generic entry for the 1A family
  - Configure TjMax for multiple Ryzen and Threadripper
  - [CR] Optimize AMD temperature filtering function
  - [Zen5] Introducing the Eldora architecture aka "Granite Ridge"
  - [Zen5] Adding entries for Strix Point
  * [Intel]
  - Feature-bits of Core Ultra architecture
  - [TGL][ADL][RPL] New devices to probe IMC and Watchdog
  - [Raptor Lake-E] Adding the IMC probing entries
  - Grant full MSR_FLEX_RATIO access to Raptor Lake (06_B7)
  - Added Host Bridge DIDs of Raptor Lake-E
  - [ADL ... MTL] Code review of IMC decoders
  - [ADL] Compute DIMM Bank and Columns on both channels
  - [ADL] Process channels differently depending on DDR4 or DDR5
  - 12th to 14th generation IMC decoder refactoring
  - [ADL ... MTL] Adding Memory Controller Virtual Channel Count
  - [ADL ... MTL] Channel count as a function of DDPCD DDR_TYPE
  - [ADL ... MTL] Keep all enabled memory controllers
  - [12th and superior] Compute tWR quantity as a function of DDR version
  * [Build]
  - Now leave version number in Makefile
  - Pretty print the build and the clean of outputs
    Allow the V=n option increase the verbose level (incl. kernel)
  - CPU-Freq build against Linux Kernel version 6.11
  * [Documentation]
  - Refreshed README and Makefile</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1723464000">- Update to 1.98.2
  * [Intel]
  - [WDT] Adding multiple devices to probe TCO
    C620 Series Chipset Production SKUs (0xa1a3)
    C620 Series Chipset Super SKUs (0xa223)
    Sunrise Point/H (0xa123)
    Cannon Lake/LP (0x9da3)
    Comet Lake/H (0x06a3)
    Ice Lake/LP (0x34a3)
    Tiger Lake/H (0x43a3)
    Elkhart Lake (0x4b23)
    Kaby Lake/H (0xa2a3)
    Cannon Lake (0xa323)
    Comet Lake/V (0xa3a3)
    Ice Lake/NG (0x38a3)
    Alder lake/M (0x54a3)
    Arrow Lake/S (0x7f23)
    Jasper Lake SMBus (0x4da3)
    Sunrise Point-LP SMBus (0x9d23)
    Comet Lake PCH-LP SMBus (0x02a3)
  - MSR_FLEX_RATIO register
    Grant access to Alder Lake/H (06_9A)
    Deny access to Nehalem/Bloomfield (06_1A)
    Removed a condition in access function</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1725019200">- Update to 1.98.3
  * [AMD]
  - [VMR/RPL/GNR] Voltage Curve Optimizer (VCO)
  - Provide a specific VCO formula based on HWM_CHIPSET=AMD_VCO
    build parameter
  - The standard voltage formulas are restored to these architectures
  - Zen5: Guessed a new P-State MSR bits specification to fix the
    Coefficient Of Frequency (COF)</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1726833600">- Update to 1.98.4
  * [Build]
  - Prevent a collision with macro WRMSRNS within kernel 6.11
  * [x86_64]
  - [Virtualization] Switch to the HCF or VP_RUNTIME counters depending on the detected hypervisor</changelog>
</package>
<package pkgid="ffdba99282140e6dbd1b566b738b6e50ef96cce4fa6eae4a9f9fe19024ed2049da8753264d64a88cb31934f9e696faa633420a0c743c1ed52cfc68f8c9f9d4a1" name="CoreFreq" arch="x86_64">
  <version epoch="0" ver="1.98.4" rel="1.8"/>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1670932800">- removed modprobe_corefreqd.service.patch and harden_corefreqd.service.patch
  now included in new corefreqd.service file replacing stock one
- update to 1.93.1
  * [PRJ] CoreFreq version 1.93.1
  * [ACPI/CPPC/EPP] Preview of AMD/Zen Energy Preference (CONFIG_CACHY)
  * [UI] Changed the HWP or CPPC ratio bounds.
  * [FIX] Putting `corefreqd` in the root cgroup (issue #379) Thanks to gel-crabs
  * [DOC] Parameters to blacklist the amd_pstate since kernel 6.0.11
  * [AMD][Zen4] Apply a voltage formula based on Rembrandt's. (#378)
  * [AMD][Zen4/Raphael] Attempting temperature per CCD from TCTL+0x308
  * [AMD][Zen4] Changed Timer loop
  * [CR] CLI code review and UI optimizations
  * [UI] Auto refresh the Topology items when off/online
  * [CR] Conditionally build with additional PMC Counters
  * [Intel] Adding Z8000 System Memory Controller Registers
  * [CR] Transformed global variable in cells padding
  * [UI] Windows re-scaling fix
  * [UI] Apply color theming to the CPPC capabilities list.
  * [AMD][Raphael] Adding device DIDs to probe UMC and IOMMU
  * [CPPC/FMW] Computes value bounds while Enabling/Disabling firmware
  * [CR] CPPC lib errors are now raised to Debug level
  * [AMD][Zen4] Increased the UMC size to 12 channels.
  * [CPPC] Handles the OffLine CPU case.
  * [CLI] Refactoring HWP/CPPC to print all capabilities per CPU
  * [ACPI] Computes the CPPC Bounds
  * [Intel] Linear Address Masking (LAM)
  * [CLI] EFER: Left aligned labels
  * [AMD] Reports UAIE and AIBRSE bits from EFER system register
  * [CLI] Changed mitigation mechanisms incapability labels
  * [AMD][Zen2] Mitigation Mechanism BTC-NOBR * ACPI/OSPM documentation
  * [CR] Code review on bit masks
  * [CPPC][ACPI] Kernel may decode the Guaranteed Performance Register
  * [UI] Optimize the cycles to clear the time bar.
  * [CR] Code review for extra compiler warnings
  * [UI] Time of the day displayed in the right side of menu
  * [UI] Display the current date and time in menu bar
  * [Kernel] Introducing support of `CONFIG_SCHED_BORE`
  * [CLI] Fixing ambiguous CPPC report: hardware vs firmware
  * [CLI] Surrounds _CPC feature with square brackets
  * [CPPC] Provides the ACPI _CPC object state.
  * [UI] Colors the task being tracked in the tracking list
  * [UI] Display the current time in the menu bar
  * [CLI] Reserve the programmable TDP section to Intel processors.
  * [AMD/Zen3+] Improving the DIMM geometry of Rembrandt UMC</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1672747200">- update to 1.94.1:
  * [Intel] Gemini Lake
  * [AMD] Ryzen 5 6600 H SoC, UMC channels
  * [AMD] Rembrandt: maximum of two UMC channels
  * [AMD] Raphael: Decodes DIMM geometry from AddrCfg
  * [AMD] Zen: Aggregation refactored
  * [AMD] Improved DDR5 clock decoding
  * Optimized Idle Loop</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1673006400">- update to 1.94.3:
  * [AMD][RMB] If UMC is quad channels then unpopulate odd channels
  * [AMD][RPL] Provide Service Processor Vcore as workaround
  * [UI] Auto size and lay performance capabilities window
  * [UI] Adding comments to the EEO and R2H technologies
  * [AMD][Raphael] 7950X3D, 7900X3D. support</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1674475200">- update to 1.95.1:
  * [Intel] RPL: voltage of Pcore, Ecore, System Agent
  * [Intel] RPL and ADL Chipset device IDs
  * [Intel] Decode the RPL IMC and improve DDR5 support
  * [Build] Raise `MAX_FREQ_HZ` up to 7125000000 Hertz
  * [Intel] Mobile {Coffee Lake, Kaby Lake} codenames
  * [Intel] Braswell codename detection
  * [AMD] SYSCFG Register
  * [AMD] EPYC 9654
  * [AMD] Transparent SME
  * [AMD] DRAM Data Scrambling
  * [AMD] Adding "Barcelo R" and "Rembrandt R"</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1675944000">- update to 1.95.2:
  * Fixed the aggregation of the minimum ratio
  Intel:
  * [Airmont][Silvermont] Attempt to decode `tCKE` from DRMC
    register
  * [Airmont] Improve `tWTPr`, `B2B`, `tWWDR` timings
  * [Airmont] Provide a new IMC decoder
  * Add the Emerald Rapids architecture entry
  * [DDR5][DDR4] Add the `RCDw` IMC timing
  * [Raptor Lake ] De-activate the MSR Uncore counter
  AMD:
  * "Zen3/Barcelo-R" and "Zen3+ Rembrandt-R" codenames
  * [Zen] Thermal highest limit reset fix
  Misc:
  * Code review and Registers documentation:
    AMD HWCR, Intel HDC and DRP</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677067200">- update to 1.95.4
  * [Intel] [from 11th to 14th gen]
    Convert the DRAM Speed to MT/s unit
    Compute the Bus Rate based on the BIOS MC PLL
- update to 1.95.3
  * [Intel] [Airmont]
    Improved the IMC geometry
    Introducing the Spreadtrum architecture
    Fixed the Bus and DRAM frequency rates
  * [Intel] [from 11th to 13th gen] Attempt to probe the interleaved controllers
  * [Intel] [Alder Lake/H] Attempt to decode the TCO Watchdog</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677153600">- added leap_compile_fix.patch to fix compilation on Leap</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1683115200">- removed leap_compile_fix.patch no needed anymore
- update to 1.96.0
  * [AMD]
    [RPL/X3D] Disabling the turbo boosted P-states change
    [PHOENIX] Adding Z1, U and HS PRO series.
    [Genoa] DAC address at UMC BAR + 0x40
    [Zen4] Adding the PCI entries of Genoa
    [Zen2] Adding remaining PCI entries
    [Zen] Query DAC &amp; CFG with the right UMC base address register
    [Zen4] Dump the CPUID Extended CPU Topology leaves.
    [Zen][Embedded][Banded Kestrel] R1000 Processor Family
    [Zen][Embedded] "Great Horned Owl", "River Hawk", "Grey Hawk"
    Complete the "Raven Ridge" and "Picasso" lists
    [EPYC] Moved "Snowy Owl" Embedded processors to CPUID 8F_01
    [Zen4] introducing Phoenix and Dragon Range
    [RMB] adding the Ryzen Embedded V3000 processors
    [VMR] adding the "AMD Ryzen 9 PRO 5945"
  * [Intel]
    Adding Granite Rapids, Sierra Forest, Grand Ridge entries
    Adding "Lunar Lake" and "Arrow Lake" entries.
  * [UI]
    Optimized decimal to digits converter
    Allow task tracker to select up to pid_max
    Can trace the frozen states of Linux tasks.
    Only print HWP frequencies within bounds.
    Fix ruler's aggregation.
  * [CR]
    Check CPUID[HV_PARTITION_PRIVILEGE_MASK] for HV_X64_MSR_VP_RUNTIME
    Uninitialized variable fix.
    [CPPC] Build EPP with KERNEL_VERSION(6) rather than CONFIG_CACHY
    [KERNEL] Linux 6.3: Employ modifier calls with the vma-&gt;vm_flags</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1684065600">- update to 1.96.1
  * [Driver]
  - Postpone Clock Source registration during startup until the Base Clock is computed.
  - Change class_create() according to Linux Kernel 6.4
  - Clear interrupt flag (cli) after Halt in the Idle method
  * [AMD]
  - [PHOENIX] Adding Ryzen 7940H, 7840H, 7640H
  - [VERMEER] Adding Ryzen PRO and Embedded processors
  - Ryzen Z1 CPUID' brand fix
  - Adding EPYC Embedded 9004 Series as Genoa
  - Adding EPYC Embedded 7003 Series as Milan
  - Adding EPYC Embedded 7002 Series as Rome
  - Adding EPYC Embedded 7001 Series as Naples</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1685880000">- update to 1.96.2
  * [Driver]
  - Allows compilation to keep going without CONFIG_ACPI_CPPC_LIB
  * [Client]
  - Adding two command line arguments:
  - Op Show Package C-States
  - OW Toggle Energy units
  * [AMD]
  - Specification of some Configuration MSRs</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1686830400">- update to 1.96.4
  * [AMD]
  - Display CPUID state of new and legacy features:
    Fused Multiply Add [FMA4]
    Extended Operation Support [XOP]
    Translation Cache Extension [TCE]
    Trailing Bit Manipulation [TBM]
    OS Visible Work-around [OSVW]
    LOCK prefix to read CR8 [AltMov]
  * [Intel]
  - Advanced Matrix Extensions [AMX]
  - Bits and Features of Sierra Forest and Grand Ridge
  - Attempt to decode the Meteor Lake Memory Controller
- update to 1.96.3
  * [AMD]
  - [Zeppelin] Probe more than one UMC controllers on Ryzen Threadripper 1900X
  - [Zen4] Dump SMBE and BMEC sub-leaves of CPUID 0x80000020</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1688212800">- update to 1.96.5
  * [AMD]
    Adding the "AMD Ryzen 5 5600X3D"
    Introducing the Zen4c Bergamo architecture
    Specs fixing of Embedded V-series and 3000 Series Processors
    Adding MENDOCINO, RAPHAEL Pro, PHOENIX Pro among others</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1712318400">- added preamble file for %kernel_module_package macro
- update to 1.97.1
  * added aarch64 support
  * upstream did not provide a summary changelog. Full list of commits:
    https://github.com/cyring/CoreFreq/compare/1.96.5...1.97.1</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715860800">- update to 1.97.2
  * [AMD]
  - [Hawk Point] Adding Ryzen PRO processors
  - [Phoenix] Adding the unlocked Ryzen 8000 Series
  * [Intel]
  - [MeteorLake] New bits specified
  - EEO and R2H bits inversion fix in MSR_POWER_CTL (0x1fc)
  - Reverse specification of MSR UNCORE_PERF_STATUS
  - Prefetchers fix of L1 Scrubbing, L1 Next Page and L2 AMP
  * [AArch64]
  - Providing Exclusive Load/Store to atomic operations
  - Improved asm of various macro functions
  - Removed LEGACY macros
  - Optimized the CORE_COUNT macros
  - Marked the Tools feature as nominal: Stress functions available
  - Allow user access to Retired Instructions counter
  - Fix Instructions counter overflow
  - Other PMC enhancements
  * [CR]
  - Fix a building issue with AlmaLinux aka RHEL-9
  - Linux kernel 6.9: Avoid redefinition of Intel MSR macros
  * [Doc]
  - README section for AlmaLinux
  - CONFIG_TRIM_UNUSED_KSYMS kernel build config is forbidden</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715947200">- fix dependency on kernel module that was not versioned</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1722081600">- update to 1.98.0
  * [Build]
  - Change dkms configuration to install into /usr/bin/
  - Solved compilation with Fedora using RHEL MINOR version number 99
  - [CR] Fixed some compilation warnings
  - [CR] Fix memory allocation in kernel pages for the SysGate
  - Workaround to musl change in basename (#494)
  - aarch64: Build with Redhat RHEL version 9
  - [CR] x86_64: Prevent array size overflow
  - dkms and ckms configuration files upgraded to version 1.98
  * [Intel]
  - [Raptor Lake] Adding the HB DID of i7-14700K' IMC
  - Mitigation mechanism: GDS_NO; RFDS_NO; MONITOR_MITG_NO
  - Apply some SDM Documentation Changes
  - [MTL] Fix CMD Stretch bit range width
  - Added method CLOCK_FLEX_MAX with Xeon's Nehalem &amp; Core 2
  - Grants full MSR_FLEX_RATIO access to tested architectures:
  - Alder Lake/S
  - Tiger Lake/U
  - Westmere/Gulftown
  - Provides the overclocking bins with unlocked processors
  - Query the Overclocking bit (OC) from Capabilities
  - Adding technologies: VMD, HDCP, IPU and VPU
  - Volume Management Device
  - High-Bandwidth Digital Content Protection
  - Image Processing Unit
  - Vision Processing Unit
  - Gaussian &amp; Neural Accelerator - GNA technology
  - [CR] Renamed Gemini Lake structures
  - [Meteor Lake] Introducing memory controller decoder
  * [AArch64]
  - Optimizing the Vcore seek
  - Workaround to Package discrete voltage: the highest Vcore
  - Improving computation of Euclidean division
  - Adjust frequency division in CNTFRQ and PMU counters
  - Scale a frequency factor from the interval
  - Refactoring the frequency ratios for decimal precision
  - Compile dev_pm_opp_put if Kernel greater or equal 4.11
  - Get the voltage core of CPUs from OPP
  * [AMD]
  - [Zen4][Raphael] Adding the EPYC 4004 Series
  - [Zen4] Clarify Hawk Point and Phoenix-Refresh architectures
  - [Family 19h] New voltage formula assigned to model 61h
  - Vcore activated
  - Voltage SoC deactivated
  - [Zen] Prevent the calculation of negative temperature (issue #496)
  - [Family 18h] Documented Hygon C86 7375
  - [Family 19h] PStateDef specification: Adding VID[8] bit 32
  - Specification of MSR HW_PSTATE_STATUS
  * [CLI]
  - aarch64: Display the state of the Memory Management Unit (MMU)
  - aarch64: State of Instruction Cache Unit I$ and Data Cache Unit D$
  - Added UI_RULER_MINIMUM &amp; UI_RULER_MAXIMUM building constraints
  - Revert "[CLI] Responsive ruler to architectural context"
  - This reverts commit 4bc38d6.
  - x86_64: AMD Boost and P-States redesigned
  - [UI] Hardening missing console/terminal size
  - Responsive ruler to architectural context
  - x86_64: Make HDCP meaning string shorter
  * [Driver]
  - Created C2U_Enable as a parameter alias of C1U_Enable</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1723032000">- update to 1.98.1
  * [AMD]
  - [Zen] Inject threshold events when thermal is out of bounds
  - Generic Zen architectures renamed with their Family number
  - Added a generic entry for the 1A family
  - Configure TjMax for multiple Ryzen and Threadripper
  - [CR] Optimize AMD temperature filtering function
  - [Zen5] Introducing the Eldora architecture aka "Granite Ridge"
  - [Zen5] Adding entries for Strix Point
  * [Intel]
  - Feature-bits of Core Ultra architecture
  - [TGL][ADL][RPL] New devices to probe IMC and Watchdog
  - [Raptor Lake-E] Adding the IMC probing entries
  - Grant full MSR_FLEX_RATIO access to Raptor Lake (06_B7)
  - Added Host Bridge DIDs of Raptor Lake-E
  - [ADL ... MTL] Code review of IMC decoders
  - [ADL] Compute DIMM Bank and Columns on both channels
  - [ADL] Process channels differently depending on DDR4 or DDR5
  - 12th to 14th generation IMC decoder refactoring
  - [ADL ... MTL] Adding Memory Controller Virtual Channel Count
  - [ADL ... MTL] Channel count as a function of DDPCD DDR_TYPE
  - [ADL ... MTL] Keep all enabled memory controllers
  - [12th and superior] Compute tWR quantity as a function of DDR version
  * [Build]
  - Now leave version number in Makefile
  - Pretty print the build and the clean of outputs
    Allow the V=n option increase the verbose level (incl. kernel)
  - CPU-Freq build against Linux Kernel version 6.11
  * [Documentation]
  - Refreshed README and Makefile</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1723464000">- Update to 1.98.2
  * [Intel]
  - [WDT] Adding multiple devices to probe TCO
    C620 Series Chipset Production SKUs (0xa1a3)
    C620 Series Chipset Super SKUs (0xa223)
    Sunrise Point/H (0xa123)
    Cannon Lake/LP (0x9da3)
    Comet Lake/H (0x06a3)
    Ice Lake/LP (0x34a3)
    Tiger Lake/H (0x43a3)
    Elkhart Lake (0x4b23)
    Kaby Lake/H (0xa2a3)
    Cannon Lake (0xa323)
    Comet Lake/V (0xa3a3)
    Ice Lake/NG (0x38a3)
    Alder lake/M (0x54a3)
    Arrow Lake/S (0x7f23)
    Jasper Lake SMBus (0x4da3)
    Sunrise Point-LP SMBus (0x9d23)
    Comet Lake PCH-LP SMBus (0x02a3)
  - MSR_FLEX_RATIO register
    Grant access to Alder Lake/H (06_9A)
    Deny access to Nehalem/Bloomfield (06_1A)
    Removed a condition in access function</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1725019200">- Update to 1.98.3
  * [AMD]
  - [VMR/RPL/GNR] Voltage Curve Optimizer (VCO)
  - Provide a specific VCO formula based on HWM_CHIPSET=AMD_VCO
    build parameter
  - The standard voltage formulas are restored to these architectures
  - Zen5: Guessed a new P-State MSR bits specification to fix the
    Coefficient Of Frequency (COF)</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1726833600">- Update to 1.98.4
  * [Build]
  - Prevent a collision with macro WRMSRNS within kernel 6.11
  * [x86_64]
  - [Virtualization] Switch to the HCF or VP_RUNTIME counters depending on the detected hypervisor</changelog>
</package>
<package pkgid="864f6c988117a876f2c6dd3aefb659b4ef1a0a8529b32062936d2c53223d3dbc2fd8ef6f1b90680955a979f9a1d2f5a4fbb8329a98315861bf3c2ddcabf4d8b5" name="CoreFreq" arch="src">
  <version epoch="0" ver="1.98.5" rel="1.3"/>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1672747200">- update to 1.94.1:
  * [Intel] Gemini Lake
  * [AMD] Ryzen 5 6600 H SoC, UMC channels
  * [AMD] Rembrandt: maximum of two UMC channels
  * [AMD] Raphael: Decodes DIMM geometry from AddrCfg
  * [AMD] Zen: Aggregation refactored
  * [AMD] Improved DDR5 clock decoding
  * Optimized Idle Loop</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1673006400">- update to 1.94.3:
  * [AMD][RMB] If UMC is quad channels then unpopulate odd channels
  * [AMD][RPL] Provide Service Processor Vcore as workaround
  * [UI] Auto size and lay performance capabilities window
  * [UI] Adding comments to the EEO and R2H technologies
  * [AMD][Raphael] 7950X3D, 7900X3D. support</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1674475200">- update to 1.95.1:
  * [Intel] RPL: voltage of Pcore, Ecore, System Agent
  * [Intel] RPL and ADL Chipset device IDs
  * [Intel] Decode the RPL IMC and improve DDR5 support
  * [Build] Raise `MAX_FREQ_HZ` up to 7125000000 Hertz
  * [Intel] Mobile {Coffee Lake, Kaby Lake} codenames
  * [Intel] Braswell codename detection
  * [AMD] SYSCFG Register
  * [AMD] EPYC 9654
  * [AMD] Transparent SME
  * [AMD] DRAM Data Scrambling
  * [AMD] Adding "Barcelo R" and "Rembrandt R"</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1675944000">- update to 1.95.2:
  * Fixed the aggregation of the minimum ratio
  Intel:
  * [Airmont][Silvermont] Attempt to decode `tCKE` from DRMC
    register
  * [Airmont] Improve `tWTPr`, `B2B`, `tWWDR` timings
  * [Airmont] Provide a new IMC decoder
  * Add the Emerald Rapids architecture entry
  * [DDR5][DDR4] Add the `RCDw` IMC timing
  * [Raptor Lake ] De-activate the MSR Uncore counter
  AMD:
  * "Zen3/Barcelo-R" and "Zen3+ Rembrandt-R" codenames
  * [Zen] Thermal highest limit reset fix
  Misc:
  * Code review and Registers documentation:
    AMD HWCR, Intel HDC and DRP</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677067200">- update to 1.95.4
  * [Intel] [from 11th to 14th gen]
    Convert the DRAM Speed to MT/s unit
    Compute the Bus Rate based on the BIOS MC PLL
- update to 1.95.3
  * [Intel] [Airmont]
    Improved the IMC geometry
    Introducing the Spreadtrum architecture
    Fixed the Bus and DRAM frequency rates
  * [Intel] [from 11th to 13th gen] Attempt to probe the interleaved controllers
  * [Intel] [Alder Lake/H] Attempt to decode the TCO Watchdog</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677153600">- added leap_compile_fix.patch to fix compilation on Leap</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1683115200">- removed leap_compile_fix.patch no needed anymore
- update to 1.96.0
  * [AMD]
    [RPL/X3D] Disabling the turbo boosted P-states change
    [PHOENIX] Adding Z1, U and HS PRO series.
    [Genoa] DAC address at UMC BAR + 0x40
    [Zen4] Adding the PCI entries of Genoa
    [Zen2] Adding remaining PCI entries
    [Zen] Query DAC &amp; CFG with the right UMC base address register
    [Zen4] Dump the CPUID Extended CPU Topology leaves.
    [Zen][Embedded][Banded Kestrel] R1000 Processor Family
    [Zen][Embedded] "Great Horned Owl", "River Hawk", "Grey Hawk"
    Complete the "Raven Ridge" and "Picasso" lists
    [EPYC] Moved "Snowy Owl" Embedded processors to CPUID 8F_01
    [Zen4] introducing Phoenix and Dragon Range
    [RMB] adding the Ryzen Embedded V3000 processors
    [VMR] adding the "AMD Ryzen 9 PRO 5945"
  * [Intel]
    Adding Granite Rapids, Sierra Forest, Grand Ridge entries
    Adding "Lunar Lake" and "Arrow Lake" entries.
  * [UI]
    Optimized decimal to digits converter
    Allow task tracker to select up to pid_max
    Can trace the frozen states of Linux tasks.
    Only print HWP frequencies within bounds.
    Fix ruler's aggregation.
  * [CR]
    Check CPUID[HV_PARTITION_PRIVILEGE_MASK] for HV_X64_MSR_VP_RUNTIME
    Uninitialized variable fix.
    [CPPC] Build EPP with KERNEL_VERSION(6) rather than CONFIG_CACHY
    [KERNEL] Linux 6.3: Employ modifier calls with the vma-&gt;vm_flags</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1684065600">- update to 1.96.1
  * [Driver]
  - Postpone Clock Source registration during startup until the Base Clock is computed.
  - Change class_create() according to Linux Kernel 6.4
  - Clear interrupt flag (cli) after Halt in the Idle method
  * [AMD]
  - [PHOENIX] Adding Ryzen 7940H, 7840H, 7640H
  - [VERMEER] Adding Ryzen PRO and Embedded processors
  - Ryzen Z1 CPUID' brand fix
  - Adding EPYC Embedded 9004 Series as Genoa
  - Adding EPYC Embedded 7003 Series as Milan
  - Adding EPYC Embedded 7002 Series as Rome
  - Adding EPYC Embedded 7001 Series as Naples</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1685880000">- update to 1.96.2
  * [Driver]
  - Allows compilation to keep going without CONFIG_ACPI_CPPC_LIB
  * [Client]
  - Adding two command line arguments:
  - Op Show Package C-States
  - OW Toggle Energy units
  * [AMD]
  - Specification of some Configuration MSRs</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1686830400">- update to 1.96.4
  * [AMD]
  - Display CPUID state of new and legacy features:
    Fused Multiply Add [FMA4]
    Extended Operation Support [XOP]
    Translation Cache Extension [TCE]
    Trailing Bit Manipulation [TBM]
    OS Visible Work-around [OSVW]
    LOCK prefix to read CR8 [AltMov]
  * [Intel]
  - Advanced Matrix Extensions [AMX]
  - Bits and Features of Sierra Forest and Grand Ridge
  - Attempt to decode the Meteor Lake Memory Controller
- update to 1.96.3
  * [AMD]
  - [Zeppelin] Probe more than one UMC controllers on Ryzen Threadripper 1900X
  - [Zen4] Dump SMBE and BMEC sub-leaves of CPUID 0x80000020</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1688212800">- update to 1.96.5
  * [AMD]
    Adding the "AMD Ryzen 5 5600X3D"
    Introducing the Zen4c Bergamo architecture
    Specs fixing of Embedded V-series and 3000 Series Processors
    Adding MENDOCINO, RAPHAEL Pro, PHOENIX Pro among others</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1712318400">- added preamble file for %kernel_module_package macro
- update to 1.97.1
  * added aarch64 support
  * upstream did not provide a summary changelog. Full list of commits:
    https://github.com/cyring/CoreFreq/compare/1.96.5...1.97.1</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715860800">- update to 1.97.2
  * [AMD]
  - [Hawk Point] Adding Ryzen PRO processors
  - [Phoenix] Adding the unlocked Ryzen 8000 Series
  * [Intel]
  - [MeteorLake] New bits specified
  - EEO and R2H bits inversion fix in MSR_POWER_CTL (0x1fc)
  - Reverse specification of MSR UNCORE_PERF_STATUS
  - Prefetchers fix of L1 Scrubbing, L1 Next Page and L2 AMP
  * [AArch64]
  - Providing Exclusive Load/Store to atomic operations
  - Improved asm of various macro functions
  - Removed LEGACY macros
  - Optimized the CORE_COUNT macros
  - Marked the Tools feature as nominal: Stress functions available
  - Allow user access to Retired Instructions counter
  - Fix Instructions counter overflow
  - Other PMC enhancements
  * [CR]
  - Fix a building issue with AlmaLinux aka RHEL-9
  - Linux kernel 6.9: Avoid redefinition of Intel MSR macros
  * [Doc]
  - README section for AlmaLinux
  - CONFIG_TRIM_UNUSED_KSYMS kernel build config is forbidden</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715947200">- fix dependency on kernel module that was not versioned</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1722081600">- update to 1.98.0
  * [Build]
  - Change dkms configuration to install into /usr/bin/
  - Solved compilation with Fedora using RHEL MINOR version number 99
  - [CR] Fixed some compilation warnings
  - [CR] Fix memory allocation in kernel pages for the SysGate
  - Workaround to musl change in basename (#494)
  - aarch64: Build with Redhat RHEL version 9
  - [CR] x86_64: Prevent array size overflow
  - dkms and ckms configuration files upgraded to version 1.98
  * [Intel]
  - [Raptor Lake] Adding the HB DID of i7-14700K' IMC
  - Mitigation mechanism: GDS_NO; RFDS_NO; MONITOR_MITG_NO
  - Apply some SDM Documentation Changes
  - [MTL] Fix CMD Stretch bit range width
  - Added method CLOCK_FLEX_MAX with Xeon's Nehalem &amp; Core 2
  - Grants full MSR_FLEX_RATIO access to tested architectures:
  - Alder Lake/S
  - Tiger Lake/U
  - Westmere/Gulftown
  - Provides the overclocking bins with unlocked processors
  - Query the Overclocking bit (OC) from Capabilities
  - Adding technologies: VMD, HDCP, IPU and VPU
  - Volume Management Device
  - High-Bandwidth Digital Content Protection
  - Image Processing Unit
  - Vision Processing Unit
  - Gaussian &amp; Neural Accelerator - GNA technology
  - [CR] Renamed Gemini Lake structures
  - [Meteor Lake] Introducing memory controller decoder
  * [AArch64]
  - Optimizing the Vcore seek
  - Workaround to Package discrete voltage: the highest Vcore
  - Improving computation of Euclidean division
  - Adjust frequency division in CNTFRQ and PMU counters
  - Scale a frequency factor from the interval
  - Refactoring the frequency ratios for decimal precision
  - Compile dev_pm_opp_put if Kernel greater or equal 4.11
  - Get the voltage core of CPUs from OPP
  * [AMD]
  - [Zen4][Raphael] Adding the EPYC 4004 Series
  - [Zen4] Clarify Hawk Point and Phoenix-Refresh architectures
  - [Family 19h] New voltage formula assigned to model 61h
  - Vcore activated
  - Voltage SoC deactivated
  - [Zen] Prevent the calculation of negative temperature (issue #496)
  - [Family 18h] Documented Hygon C86 7375
  - [Family 19h] PStateDef specification: Adding VID[8] bit 32
  - Specification of MSR HW_PSTATE_STATUS
  * [CLI]
  - aarch64: Display the state of the Memory Management Unit (MMU)
  - aarch64: State of Instruction Cache Unit I$ and Data Cache Unit D$
  - Added UI_RULER_MINIMUM &amp; UI_RULER_MAXIMUM building constraints
  - Revert "[CLI] Responsive ruler to architectural context"
  - This reverts commit 4bc38d6.
  - x86_64: AMD Boost and P-States redesigned
  - [UI] Hardening missing console/terminal size
  - Responsive ruler to architectural context
  - x86_64: Make HDCP meaning string shorter
  * [Driver]
  - Created C2U_Enable as a parameter alias of C1U_Enable</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1723032000">- update to 1.98.1
  * [AMD]
  - [Zen] Inject threshold events when thermal is out of bounds
  - Generic Zen architectures renamed with their Family number
  - Added a generic entry for the 1A family
  - Configure TjMax for multiple Ryzen and Threadripper
  - [CR] Optimize AMD temperature filtering function
  - [Zen5] Introducing the Eldora architecture aka "Granite Ridge"
  - [Zen5] Adding entries for Strix Point
  * [Intel]
  - Feature-bits of Core Ultra architecture
  - [TGL][ADL][RPL] New devices to probe IMC and Watchdog
  - [Raptor Lake-E] Adding the IMC probing entries
  - Grant full MSR_FLEX_RATIO access to Raptor Lake (06_B7)
  - Added Host Bridge DIDs of Raptor Lake-E
  - [ADL ... MTL] Code review of IMC decoders
  - [ADL] Compute DIMM Bank and Columns on both channels
  - [ADL] Process channels differently depending on DDR4 or DDR5
  - 12th to 14th generation IMC decoder refactoring
  - [ADL ... MTL] Adding Memory Controller Virtual Channel Count
  - [ADL ... MTL] Channel count as a function of DDPCD DDR_TYPE
  - [ADL ... MTL] Keep all enabled memory controllers
  - [12th and superior] Compute tWR quantity as a function of DDR version
  * [Build]
  - Now leave version number in Makefile
  - Pretty print the build and the clean of outputs
    Allow the V=n option increase the verbose level (incl. kernel)
  - CPU-Freq build against Linux Kernel version 6.11
  * [Documentation]
  - Refreshed README and Makefile</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1723464000">- Update to 1.98.2
  * [Intel]
  - [WDT] Adding multiple devices to probe TCO
    C620 Series Chipset Production SKUs (0xa1a3)
    C620 Series Chipset Super SKUs (0xa223)
    Sunrise Point/H (0xa123)
    Cannon Lake/LP (0x9da3)
    Comet Lake/H (0x06a3)
    Ice Lake/LP (0x34a3)
    Tiger Lake/H (0x43a3)
    Elkhart Lake (0x4b23)
    Kaby Lake/H (0xa2a3)
    Cannon Lake (0xa323)
    Comet Lake/V (0xa3a3)
    Ice Lake/NG (0x38a3)
    Alder lake/M (0x54a3)
    Arrow Lake/S (0x7f23)
    Jasper Lake SMBus (0x4da3)
    Sunrise Point-LP SMBus (0x9d23)
    Comet Lake PCH-LP SMBus (0x02a3)
  - MSR_FLEX_RATIO register
    Grant access to Alder Lake/H (06_9A)
    Deny access to Nehalem/Bloomfield (06_1A)
    Removed a condition in access function</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1725019200">- Update to 1.98.3
  * [AMD]
  - [VMR/RPL/GNR] Voltage Curve Optimizer (VCO)
  - Provide a specific VCO formula based on HWM_CHIPSET=AMD_VCO
    build parameter
  - The standard voltage formulas are restored to these architectures
  - Zen5: Guessed a new P-State MSR bits specification to fix the
    Coefficient Of Frequency (COF)</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1726833600">- Update to 1.98.4
  * [Build]
  - Prevent a collision with macro WRMSRNS within kernel 6.11
  * [x86_64]
  - [Virtualization] Switch to the HCF or VP_RUNTIME counters depending on the detected hypervisor</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1731067200">- Update to 1.98.5
  * [UI]
  - Debugging a target clock ratio selector issue
  * [Build]
  - Makefile compliant with the -s silent option
  - [CI] Disable the unfound arm64v8/ubuntu:rolling
  * [AMD]
  - [Strix Point] Adding PRO series
  - [Zen5][Zen5c] Introducing the TURIN architecture
  - Supply a fallback thermal junction max to various Zen series
  - [Zen5] Mitigation mechanisms and Features bits
    SBPB,
    SRSO_NO,
    SRSO_USR_KNL_NO,
    ERMSB,
    FSRS,
    FSRC_CMPSB,
    PREFETCHI
  - [Zen] Added remaining X3D processor models
  - [PHOENIX2] Added the unlocked for overclocking Ryzen 5 8500GE
  - [PHOENIX2] Added the unlocked for overclocking Ryzen 3 8300GE
  - [SIENA] Added the EPYC Embedded 8004 Series
  - [GENOA] Added a left over EPYC Embedded 9534
  - [Turin] Employed the Genoa UMC decoder
  - [Family 1Ah] Updated the PStateDef MSR
  - [Zen] Completed CPUID leaf 0x80000021 from PPR 57238
  - [Zen5/Granite Ridge] Added Ryzen 7 9800X3D processor
  * [Intel]
  - [ARL] Declare PCI ids to probe the IMC as a MTL controller
  - [ARL][IMC] DDR5: tWR = tWRPRE - tCWL - 10
  - [ADL-X/ADL-N] Declare PCI ids to probe the memory controller
  - [LNL] Added PCI ids to probe any IMC and SMBUS
  - [ARL] Completed with SMBUS PCI id
  - [MTL-M] Declare PCI ids to probe the IMC and TCO
  - [MTL-M] Set PCI ids into Daemon
  - [RPL] Added remaining PX and H processor line platforms</changelog>
</package>
<package pkgid="08fb82ddd18bba2155f29586fa9f431cd25a94ccf27ecb9c5fa9dccd0f587fd17ff02047a081d2fe7f839b23f4e9bfbd368be441717e293f33d87347d960e701" name="CoreFreq" arch="x86_64">
  <version epoch="0" ver="1.98.5" rel="1.3"/>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1672747200">- update to 1.94.1:
  * [Intel] Gemini Lake
  * [AMD] Ryzen 5 6600 H SoC, UMC channels
  * [AMD] Rembrandt: maximum of two UMC channels
  * [AMD] Raphael: Decodes DIMM geometry from AddrCfg
  * [AMD] Zen: Aggregation refactored
  * [AMD] Improved DDR5 clock decoding
  * Optimized Idle Loop</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1673006400">- update to 1.94.3:
  * [AMD][RMB] If UMC is quad channels then unpopulate odd channels
  * [AMD][RPL] Provide Service Processor Vcore as workaround
  * [UI] Auto size and lay performance capabilities window
  * [UI] Adding comments to the EEO and R2H technologies
  * [AMD][Raphael] 7950X3D, 7900X3D. support</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1674475200">- update to 1.95.1:
  * [Intel] RPL: voltage of Pcore, Ecore, System Agent
  * [Intel] RPL and ADL Chipset device IDs
  * [Intel] Decode the RPL IMC and improve DDR5 support
  * [Build] Raise `MAX_FREQ_HZ` up to 7125000000 Hertz
  * [Intel] Mobile {Coffee Lake, Kaby Lake} codenames
  * [Intel] Braswell codename detection
  * [AMD] SYSCFG Register
  * [AMD] EPYC 9654
  * [AMD] Transparent SME
  * [AMD] DRAM Data Scrambling
  * [AMD] Adding "Barcelo R" and "Rembrandt R"</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1675944000">- update to 1.95.2:
  * Fixed the aggregation of the minimum ratio
  Intel:
  * [Airmont][Silvermont] Attempt to decode `tCKE` from DRMC
    register
  * [Airmont] Improve `tWTPr`, `B2B`, `tWWDR` timings
  * [Airmont] Provide a new IMC decoder
  * Add the Emerald Rapids architecture entry
  * [DDR5][DDR4] Add the `RCDw` IMC timing
  * [Raptor Lake ] De-activate the MSR Uncore counter
  AMD:
  * "Zen3/Barcelo-R" and "Zen3+ Rembrandt-R" codenames
  * [Zen] Thermal highest limit reset fix
  Misc:
  * Code review and Registers documentation:
    AMD HWCR, Intel HDC and DRP</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677067200">- update to 1.95.4
  * [Intel] [from 11th to 14th gen]
    Convert the DRAM Speed to MT/s unit
    Compute the Bus Rate based on the BIOS MC PLL
- update to 1.95.3
  * [Intel] [Airmont]
    Improved the IMC geometry
    Introducing the Spreadtrum architecture
    Fixed the Bus and DRAM frequency rates
  * [Intel] [from 11th to 13th gen] Attempt to probe the interleaved controllers
  * [Intel] [Alder Lake/H] Attempt to decode the TCO Watchdog</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677153600">- added leap_compile_fix.patch to fix compilation on Leap</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1683115200">- removed leap_compile_fix.patch no needed anymore
- update to 1.96.0
  * [AMD]
    [RPL/X3D] Disabling the turbo boosted P-states change
    [PHOENIX] Adding Z1, U and HS PRO series.
    [Genoa] DAC address at UMC BAR + 0x40
    [Zen4] Adding the PCI entries of Genoa
    [Zen2] Adding remaining PCI entries
    [Zen] Query DAC &amp; CFG with the right UMC base address register
    [Zen4] Dump the CPUID Extended CPU Topology leaves.
    [Zen][Embedded][Banded Kestrel] R1000 Processor Family
    [Zen][Embedded] "Great Horned Owl", "River Hawk", "Grey Hawk"
    Complete the "Raven Ridge" and "Picasso" lists
    [EPYC] Moved "Snowy Owl" Embedded processors to CPUID 8F_01
    [Zen4] introducing Phoenix and Dragon Range
    [RMB] adding the Ryzen Embedded V3000 processors
    [VMR] adding the "AMD Ryzen 9 PRO 5945"
  * [Intel]
    Adding Granite Rapids, Sierra Forest, Grand Ridge entries
    Adding "Lunar Lake" and "Arrow Lake" entries.
  * [UI]
    Optimized decimal to digits converter
    Allow task tracker to select up to pid_max
    Can trace the frozen states of Linux tasks.
    Only print HWP frequencies within bounds.
    Fix ruler's aggregation.
  * [CR]
    Check CPUID[HV_PARTITION_PRIVILEGE_MASK] for HV_X64_MSR_VP_RUNTIME
    Uninitialized variable fix.
    [CPPC] Build EPP with KERNEL_VERSION(6) rather than CONFIG_CACHY
    [KERNEL] Linux 6.3: Employ modifier calls with the vma-&gt;vm_flags</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1684065600">- update to 1.96.1
  * [Driver]
  - Postpone Clock Source registration during startup until the Base Clock is computed.
  - Change class_create() according to Linux Kernel 6.4
  - Clear interrupt flag (cli) after Halt in the Idle method
  * [AMD]
  - [PHOENIX] Adding Ryzen 7940H, 7840H, 7640H
  - [VERMEER] Adding Ryzen PRO and Embedded processors
  - Ryzen Z1 CPUID' brand fix
  - Adding EPYC Embedded 9004 Series as Genoa
  - Adding EPYC Embedded 7003 Series as Milan
  - Adding EPYC Embedded 7002 Series as Rome
  - Adding EPYC Embedded 7001 Series as Naples</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1685880000">- update to 1.96.2
  * [Driver]
  - Allows compilation to keep going without CONFIG_ACPI_CPPC_LIB
  * [Client]
  - Adding two command line arguments:
  - Op Show Package C-States
  - OW Toggle Energy units
  * [AMD]
  - Specification of some Configuration MSRs</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1686830400">- update to 1.96.4
  * [AMD]
  - Display CPUID state of new and legacy features:
    Fused Multiply Add [FMA4]
    Extended Operation Support [XOP]
    Translation Cache Extension [TCE]
    Trailing Bit Manipulation [TBM]
    OS Visible Work-around [OSVW]
    LOCK prefix to read CR8 [AltMov]
  * [Intel]
  - Advanced Matrix Extensions [AMX]
  - Bits and Features of Sierra Forest and Grand Ridge
  - Attempt to decode the Meteor Lake Memory Controller
- update to 1.96.3
  * [AMD]
  - [Zeppelin] Probe more than one UMC controllers on Ryzen Threadripper 1900X
  - [Zen4] Dump SMBE and BMEC sub-leaves of CPUID 0x80000020</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1688212800">- update to 1.96.5
  * [AMD]
    Adding the "AMD Ryzen 5 5600X3D"
    Introducing the Zen4c Bergamo architecture
    Specs fixing of Embedded V-series and 3000 Series Processors
    Adding MENDOCINO, RAPHAEL Pro, PHOENIX Pro among others</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1712318400">- added preamble file for %kernel_module_package macro
- update to 1.97.1
  * added aarch64 support
  * upstream did not provide a summary changelog. Full list of commits:
    https://github.com/cyring/CoreFreq/compare/1.96.5...1.97.1</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715860800">- update to 1.97.2
  * [AMD]
  - [Hawk Point] Adding Ryzen PRO processors
  - [Phoenix] Adding the unlocked Ryzen 8000 Series
  * [Intel]
  - [MeteorLake] New bits specified
  - EEO and R2H bits inversion fix in MSR_POWER_CTL (0x1fc)
  - Reverse specification of MSR UNCORE_PERF_STATUS
  - Prefetchers fix of L1 Scrubbing, L1 Next Page and L2 AMP
  * [AArch64]
  - Providing Exclusive Load/Store to atomic operations
  - Improved asm of various macro functions
  - Removed LEGACY macros
  - Optimized the CORE_COUNT macros
  - Marked the Tools feature as nominal: Stress functions available
  - Allow user access to Retired Instructions counter
  - Fix Instructions counter overflow
  - Other PMC enhancements
  * [CR]
  - Fix a building issue with AlmaLinux aka RHEL-9
  - Linux kernel 6.9: Avoid redefinition of Intel MSR macros
  * [Doc]
  - README section for AlmaLinux
  - CONFIG_TRIM_UNUSED_KSYMS kernel build config is forbidden</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715947200">- fix dependency on kernel module that was not versioned</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1722081600">- update to 1.98.0
  * [Build]
  - Change dkms configuration to install into /usr/bin/
  - Solved compilation with Fedora using RHEL MINOR version number 99
  - [CR] Fixed some compilation warnings
  - [CR] Fix memory allocation in kernel pages for the SysGate
  - Workaround to musl change in basename (#494)
  - aarch64: Build with Redhat RHEL version 9
  - [CR] x86_64: Prevent array size overflow
  - dkms and ckms configuration files upgraded to version 1.98
  * [Intel]
  - [Raptor Lake] Adding the HB DID of i7-14700K' IMC
  - Mitigation mechanism: GDS_NO; RFDS_NO; MONITOR_MITG_NO
  - Apply some SDM Documentation Changes
  - [MTL] Fix CMD Stretch bit range width
  - Added method CLOCK_FLEX_MAX with Xeon's Nehalem &amp; Core 2
  - Grants full MSR_FLEX_RATIO access to tested architectures:
  - Alder Lake/S
  - Tiger Lake/U
  - Westmere/Gulftown
  - Provides the overclocking bins with unlocked processors
  - Query the Overclocking bit (OC) from Capabilities
  - Adding technologies: VMD, HDCP, IPU and VPU
  - Volume Management Device
  - High-Bandwidth Digital Content Protection
  - Image Processing Unit
  - Vision Processing Unit
  - Gaussian &amp; Neural Accelerator - GNA technology
  - [CR] Renamed Gemini Lake structures
  - [Meteor Lake] Introducing memory controller decoder
  * [AArch64]
  - Optimizing the Vcore seek
  - Workaround to Package discrete voltage: the highest Vcore
  - Improving computation of Euclidean division
  - Adjust frequency division in CNTFRQ and PMU counters
  - Scale a frequency factor from the interval
  - Refactoring the frequency ratios for decimal precision
  - Compile dev_pm_opp_put if Kernel greater or equal 4.11
  - Get the voltage core of CPUs from OPP
  * [AMD]
  - [Zen4][Raphael] Adding the EPYC 4004 Series
  - [Zen4] Clarify Hawk Point and Phoenix-Refresh architectures
  - [Family 19h] New voltage formula assigned to model 61h
  - Vcore activated
  - Voltage SoC deactivated
  - [Zen] Prevent the calculation of negative temperature (issue #496)
  - [Family 18h] Documented Hygon C86 7375
  - [Family 19h] PStateDef specification: Adding VID[8] bit 32
  - Specification of MSR HW_PSTATE_STATUS
  * [CLI]
  - aarch64: Display the state of the Memory Management Unit (MMU)
  - aarch64: State of Instruction Cache Unit I$ and Data Cache Unit D$
  - Added UI_RULER_MINIMUM &amp; UI_RULER_MAXIMUM building constraints
  - Revert "[CLI] Responsive ruler to architectural context"
  - This reverts commit 4bc38d6.
  - x86_64: AMD Boost and P-States redesigned
  - [UI] Hardening missing console/terminal size
  - Responsive ruler to architectural context
  - x86_64: Make HDCP meaning string shorter
  * [Driver]
  - Created C2U_Enable as a parameter alias of C1U_Enable</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1723032000">- update to 1.98.1
  * [AMD]
  - [Zen] Inject threshold events when thermal is out of bounds
  - Generic Zen architectures renamed with their Family number
  - Added a generic entry for the 1A family
  - Configure TjMax for multiple Ryzen and Threadripper
  - [CR] Optimize AMD temperature filtering function
  - [Zen5] Introducing the Eldora architecture aka "Granite Ridge"
  - [Zen5] Adding entries for Strix Point
  * [Intel]
  - Feature-bits of Core Ultra architecture
  - [TGL][ADL][RPL] New devices to probe IMC and Watchdog
  - [Raptor Lake-E] Adding the IMC probing entries
  - Grant full MSR_FLEX_RATIO access to Raptor Lake (06_B7)
  - Added Host Bridge DIDs of Raptor Lake-E
  - [ADL ... MTL] Code review of IMC decoders
  - [ADL] Compute DIMM Bank and Columns on both channels
  - [ADL] Process channels differently depending on DDR4 or DDR5
  - 12th to 14th generation IMC decoder refactoring
  - [ADL ... MTL] Adding Memory Controller Virtual Channel Count
  - [ADL ... MTL] Channel count as a function of DDPCD DDR_TYPE
  - [ADL ... MTL] Keep all enabled memory controllers
  - [12th and superior] Compute tWR quantity as a function of DDR version
  * [Build]
  - Now leave version number in Makefile
  - Pretty print the build and the clean of outputs
    Allow the V=n option increase the verbose level (incl. kernel)
  - CPU-Freq build against Linux Kernel version 6.11
  * [Documentation]
  - Refreshed README and Makefile</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1723464000">- Update to 1.98.2
  * [Intel]
  - [WDT] Adding multiple devices to probe TCO
    C620 Series Chipset Production SKUs (0xa1a3)
    C620 Series Chipset Super SKUs (0xa223)
    Sunrise Point/H (0xa123)
    Cannon Lake/LP (0x9da3)
    Comet Lake/H (0x06a3)
    Ice Lake/LP (0x34a3)
    Tiger Lake/H (0x43a3)
    Elkhart Lake (0x4b23)
    Kaby Lake/H (0xa2a3)
    Cannon Lake (0xa323)
    Comet Lake/V (0xa3a3)
    Ice Lake/NG (0x38a3)
    Alder lake/M (0x54a3)
    Arrow Lake/S (0x7f23)
    Jasper Lake SMBus (0x4da3)
    Sunrise Point-LP SMBus (0x9d23)
    Comet Lake PCH-LP SMBus (0x02a3)
  - MSR_FLEX_RATIO register
    Grant access to Alder Lake/H (06_9A)
    Deny access to Nehalem/Bloomfield (06_1A)
    Removed a condition in access function</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1725019200">- Update to 1.98.3
  * [AMD]
  - [VMR/RPL/GNR] Voltage Curve Optimizer (VCO)
  - Provide a specific VCO formula based on HWM_CHIPSET=AMD_VCO
    build parameter
  - The standard voltage formulas are restored to these architectures
  - Zen5: Guessed a new P-State MSR bits specification to fix the
    Coefficient Of Frequency (COF)</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1726833600">- Update to 1.98.4
  * [Build]
  - Prevent a collision with macro WRMSRNS within kernel 6.11
  * [x86_64]
  - [Virtualization] Switch to the HCF or VP_RUNTIME counters depending on the detected hypervisor</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1731067200">- Update to 1.98.5
  * [UI]
  - Debugging a target clock ratio selector issue
  * [Build]
  - Makefile compliant with the -s silent option
  - [CI] Disable the unfound arm64v8/ubuntu:rolling
  * [AMD]
  - [Strix Point] Adding PRO series
  - [Zen5][Zen5c] Introducing the TURIN architecture
  - Supply a fallback thermal junction max to various Zen series
  - [Zen5] Mitigation mechanisms and Features bits
    SBPB,
    SRSO_NO,
    SRSO_USR_KNL_NO,
    ERMSB,
    FSRS,
    FSRC_CMPSB,
    PREFETCHI
  - [Zen] Added remaining X3D processor models
  - [PHOENIX2] Added the unlocked for overclocking Ryzen 5 8500GE
  - [PHOENIX2] Added the unlocked for overclocking Ryzen 3 8300GE
  - [SIENA] Added the EPYC Embedded 8004 Series
  - [GENOA] Added a left over EPYC Embedded 9534
  - [Turin] Employed the Genoa UMC decoder
  - [Family 1Ah] Updated the PStateDef MSR
  - [Zen] Completed CPUID leaf 0x80000021 from PPR 57238
  - [Zen5/Granite Ridge] Added Ryzen 7 9800X3D processor
  * [Intel]
  - [ARL] Declare PCI ids to probe the IMC as a MTL controller
  - [ARL][IMC] DDR5: tWR = tWRPRE - tCWL - 10
  - [ADL-X/ADL-N] Declare PCI ids to probe the memory controller
  - [LNL] Added PCI ids to probe any IMC and SMBUS
  - [ARL] Completed with SMBUS PCI id
  - [MTL-M] Declare PCI ids to probe the IMC and TCO
  - [MTL-M] Set PCI ids into Daemon
  - [RPL] Added remaining PX and H processor line platforms</changelog>
</package>
<package pkgid="db64b6558685fd64619e189540aa04737ff1e71910868289376842400a6ddf195179d9b1b5de0ed29f1e7ec93e8b6596fc453a7d7dadf22e0eec393630f4da57" name="CoreFreq-debuginfo" arch="x86_64">
  <version epoch="0" ver="1.97.1" rel="1.2"/>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1644667200">- Update to version 1.89.3
  * No changelog was made available by upstream</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1646654400">- removed non-working leap15_2.patch and leap15_3.patch:
  Leap 15.4 is the minimum supported version
- Update to version 1.90.1
  * support for Alder Lake architecture:
    in particular, specialized monitoring for Pcore and Ecore
  * more precise DDR5 and DDR4 timings from SKL to ADL:
    introduction of "Gear mode"
  * improvement using Power Limiters:
    zero W on PL1 &amp; PL2; DRAM clampig marked experimental
  * characteristics for Zen architecture:
    CPPC; C1E; MEM CLOCK in raw frequency
  * C-state Core for Ice Lake/X
  * various characteristics of C-state package for AMD/Zen and Intel (Lake)
  * various changes in UI
  * non-regression tests for kernels 5.16.12 and 5.17.rc6</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1655899200">- Update to version 1.91.3
  * No changelog was made available by upstream</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1661169600">- Update to version 1.91.6
  - [AMD/Zen][UMC] Fixed the Mem Clock and ECC regressions
  - Designate the Package identifier in Power consumed readings
  - [Intel/ADL/IMC] Guessing activated channel from the populated DIMM
  - [AMD][UMC, IOMMU] Adding missing DID of family 19h devices
  - [AMD_DataFabric_Cezanne] Removed the Experimental mode
  - Intel/ADL/IMC: Fixing the Memory Channels count
  - [AMD/Zen] Improved UMC mapping. Threadripper 3960X issue
  - Avoid some NULL pointer strings during SMBIOS decoding</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1667563200">- update to version 1.92.3
  - Export CPUID bits Intel Sierra Forest, Grand Ridge, Granite Rapids
    and completes AMD64 Fn0000_0007_ECX_x0
  - [Features] WBNOINVD and CLZERO instructions
  - Adding various Mitigation Mechanism aggregations:
    IPRED_DIS_U, IPRED_DIS_S, RRSBA_DIS_U, RRSBA_DIS_S, BHI_DIS_S, MCDT_NO
  - RDPID and UMIP capability fixed.
  - [AMD] Perf. Mon. version based on CPUID_0x80000022.EAX.PerfMonV2
  - [AMD][Zen3+][Rembrandt] Trigger UMC and IOMMU decoders
  - [AMD][Ryzen 5 6600H] Found voltage VID @ SMU 0x6f010 and 0x6f014
  - Introducing AMD Security Feature capabilities:
    SKINIT, SEV, GMET, SEV-ES, SEV-SNP
  - [AMD64] Non-architectural MSR: SPECULATIVE STORE BYPASS DISABLE
  - [Intel][2nd &amp; 3rd gen] Misc IMC optimizations
  - [AMD][Rembrandt] Provides Vcore from a new formula.
  - Dumping CPUID leaves from AMD64 Architecture Programmer’s Manual
  - [Intel][HSW &amp; BDW] Compute the DIMM banks
  - [UI] Re-assigned keys to move or resize windows.
  - [AMD][Zen] Uncore frequency: Improving the Memory Clock divisor
  - [Intel][HSW &amp; BDW][SKL] Make use of same function DimmWidthToRows
  - [AMD][Zen3+][Rembrandt] Provides the thermal sensor.
  - [AMD/Zen2 &amp; Zen3] Removed the HSMP capability.
  - [Intel][CML][RKL][TGL] Compute the DIMM Rows from CH_WIDTH
  - [AMD/EPYC] Adding the CPUID of Zen4 Genoa architecture
  - [AMD/Zen2] Introducing Mendocino architecture
  - Changed MeteorLake/N to CPUID 06_B5
  - [Intel] Computes BIOS DRAM frequency based on PLL_REF100
  - [Intel][SNB/IVB/HSW/BDW] Improved BIOS DRAM frequency
  - [Intel][SNB/IVB] DRAM frequency based on RAM_Select and FSB_Select
  - [Intel][IVB] IMC specifications and optimizations.
  - [Intel][SNB,IVB] Computes the DIMM A from DAS bit in MAD register
  - [Intel][SNB,IVB,HSW,BDW] Rolling back changes to the DIMM topology
  - [Intel][BDW][HSW] Query the IMC Power Down Mode
  - [Intel][IVB][SNB] Attempt to decode the IMC third timings
  - [AMD][Ryzen] Added AMD Ryzen 7 PRO 6860Z
  - [AMD][F17h-F19h] Can toggle ON and OFF the Instruction Cache Unit
  - [AMD] Checking the Ryzen "OEM Only" processors
  - [Intel] Specification of 12th Gen. MSR registers capability
  - [Intel] Adding Raptor Lake-S with CPUID 06_BF
  - [AMD] Introducing Zen 4 / Raphael architecture
  - [Intel][SNB,IVB,HSW] Attempt to assign the Rank per DIMM slot
  - [Intel][SNB,IVB,HSW] Attempt to fix the DIMM(s) topology layout
  - ClockSource: TSC udelay() asm implementation builtin as a default
  - [Intel][Alder Lake] Adding IMC entry for i5-12500 processor
  - [Intel][Alder Lake] Added default case if Processor has only Pcores
  - [Intel][Atom/Bonnell][IMC] Attempt to compute the DIMM geometry
  - [UI][Custom view] Show the Uncore unit in watt or joule
  - [UI] Display HWP or CPPC in footer for capable processors.
  - [CLI] Added HWP Capabilities and HWP Request to the JSON export
  - [CLI] Don't allow the HWP dialog box if feature is not available.
  - [CPPC][Firmware] allows (de)activation of the feature.
  - [CLI] Added CPU ratios to JSON export
  - [CPPC] Improved scaling
  - [CPPC] Build fixed down to Kernel version 3
  - [Kernel/ACPI] Attempt to write CPPC registers</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1667563201">- Repair deficient description grammar.</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1670241600">- update to 1.92.4:
  * [Intel/Skylake-X] Permits MSR_RING_PERF_LIMIT_REASONS</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1670932800">- removed modprobe_corefreqd.service.patch and harden_corefreqd.service.patch
  now included in new corefreqd.service file replacing stock one
- update to 1.93.1
  * [PRJ] CoreFreq version 1.93.1
  * [ACPI/CPPC/EPP] Preview of AMD/Zen Energy Preference (CONFIG_CACHY)
  * [UI] Changed the HWP or CPPC ratio bounds.
  * [FIX] Putting `corefreqd` in the root cgroup (issue #379) Thanks to gel-crabs
  * [DOC] Parameters to blacklist the amd_pstate since kernel 6.0.11
  * [AMD][Zen4] Apply a voltage formula based on Rembrandt's. (#378)
  * [AMD][Zen4/Raphael] Attempting temperature per CCD from TCTL+0x308
  * [AMD][Zen4] Changed Timer loop
  * [CR] CLI code review and UI optimizations
  * [UI] Auto refresh the Topology items when off/online
  * [CR] Conditionally build with additional PMC Counters
  * [Intel] Adding Z8000 System Memory Controller Registers
  * [CR] Transformed global variable in cells padding
  * [UI] Windows re-scaling fix
  * [UI] Apply color theming to the CPPC capabilities list.
  * [AMD][Raphael] Adding device DIDs to probe UMC and IOMMU
  * [CPPC/FMW] Computes value bounds while Enabling/Disabling firmware
  * [CR] CPPC lib errors are now raised to Debug level
  * [AMD][Zen4] Increased the UMC size to 12 channels.
  * [CPPC] Handles the OffLine CPU case.
  * [CLI] Refactoring HWP/CPPC to print all capabilities per CPU
  * [ACPI] Computes the CPPC Bounds
  * [Intel] Linear Address Masking (LAM)
  * [CLI] EFER: Left aligned labels
  * [AMD] Reports UAIE and AIBRSE bits from EFER system register
  * [CLI] Changed mitigation mechanisms incapability labels
  * [AMD][Zen2] Mitigation Mechanism BTC-NOBR * ACPI/OSPM documentation
  * [CR] Code review on bit masks
  * [CPPC][ACPI] Kernel may decode the Guaranteed Performance Register
  * [UI] Optimize the cycles to clear the time bar.
  * [CR] Code review for extra compiler warnings
  * [UI] Time of the day displayed in the right side of menu
  * [UI] Display the current date and time in menu bar
  * [Kernel] Introducing support of `CONFIG_SCHED_BORE`
  * [CLI] Fixing ambiguous CPPC report: hardware vs firmware
  * [CLI] Surrounds _CPC feature with square brackets
  * [CPPC] Provides the ACPI _CPC object state.
  * [UI] Colors the task being tracked in the tracking list
  * [UI] Display the current time in the menu bar
  * [CLI] Reserve the programmable TDP section to Intel processors.
  * [AMD/Zen3+] Improving the DIMM geometry of Rembrandt UMC</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1672747200">- update to 1.94.1:
  * [Intel] Gemini Lake
  * [AMD] Ryzen 5 6600 H SoC, UMC channels
  * [AMD] Rembrandt: maximum of two UMC channels
  * [AMD] Raphael: Decodes DIMM geometry from AddrCfg
  * [AMD] Zen: Aggregation refactored
  * [AMD] Improved DDR5 clock decoding
  * Optimized Idle Loop</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1673006400">- update to 1.94.3:
  * [AMD][RMB] If UMC is quad channels then unpopulate odd channels
  * [AMD][RPL] Provide Service Processor Vcore as workaround
  * [UI] Auto size and lay performance capabilities window
  * [UI] Adding comments to the EEO and R2H technologies
  * [AMD][Raphael] 7950X3D, 7900X3D. support</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1674475200">- update to 1.95.1:
  * [Intel] RPL: voltage of Pcore, Ecore, System Agent
  * [Intel] RPL and ADL Chipset device IDs
  * [Intel] Decode the RPL IMC and improve DDR5 support
  * [Build] Raise `MAX_FREQ_HZ` up to 7125000000 Hertz
  * [Intel] Mobile {Coffee Lake, Kaby Lake} codenames
  * [Intel] Braswell codename detection
  * [AMD] SYSCFG Register
  * [AMD] EPYC 9654
  * [AMD] Transparent SME
  * [AMD] DRAM Data Scrambling
  * [AMD] Adding "Barcelo R" and "Rembrandt R"</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1675944000">- update to 1.95.2:
  * Fixed the aggregation of the minimum ratio
  Intel:
  * [Airmont][Silvermont] Attempt to decode `tCKE` from DRMC
    register
  * [Airmont] Improve `tWTPr`, `B2B`, `tWWDR` timings
  * [Airmont] Provide a new IMC decoder
  * Add the Emerald Rapids architecture entry
  * [DDR5][DDR4] Add the `RCDw` IMC timing
  * [Raptor Lake ] De-activate the MSR Uncore counter
  AMD:
  * "Zen3/Barcelo-R" and "Zen3+ Rembrandt-R" codenames
  * [Zen] Thermal highest limit reset fix
  Misc:
  * Code review and Registers documentation:
    AMD HWCR, Intel HDC and DRP</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677067200">- update to 1.95.4
  * [Intel] [from 11th to 14th gen]
    Convert the DRAM Speed to MT/s unit
    Compute the Bus Rate based on the BIOS MC PLL
- update to 1.95.3
  * [Intel] [Airmont]
    Improved the IMC geometry
    Introducing the Spreadtrum architecture
    Fixed the Bus and DRAM frequency rates
  * [Intel] [from 11th to 13th gen] Attempt to probe the interleaved controllers
  * [Intel] [Alder Lake/H] Attempt to decode the TCO Watchdog</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677153600">- added leap_compile_fix.patch to fix compilation on Leap</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1683115200">- removed leap_compile_fix.patch no needed anymore
- update to 1.96.0
  * [AMD]
    [RPL/X3D] Disabling the turbo boosted P-states change
    [PHOENIX] Adding Z1, U and HS PRO series.
    [Genoa] DAC address at UMC BAR + 0x40
    [Zen4] Adding the PCI entries of Genoa
    [Zen2] Adding remaining PCI entries
    [Zen] Query DAC &amp; CFG with the right UMC base address register
    [Zen4] Dump the CPUID Extended CPU Topology leaves.
    [Zen][Embedded][Banded Kestrel] R1000 Processor Family
    [Zen][Embedded] "Great Horned Owl", "River Hawk", "Grey Hawk"
    Complete the "Raven Ridge" and "Picasso" lists
    [EPYC] Moved "Snowy Owl" Embedded processors to CPUID 8F_01
    [Zen4] introducing Phoenix and Dragon Range
    [RMB] adding the Ryzen Embedded V3000 processors
    [VMR] adding the "AMD Ryzen 9 PRO 5945"
  * [Intel]
    Adding Granite Rapids, Sierra Forest, Grand Ridge entries
    Adding "Lunar Lake" and "Arrow Lake" entries.
  * [UI]
    Optimized decimal to digits converter
    Allow task tracker to select up to pid_max
    Can trace the frozen states of Linux tasks.
    Only print HWP frequencies within bounds.
    Fix ruler's aggregation.
  * [CR]
    Check CPUID[HV_PARTITION_PRIVILEGE_MASK] for HV_X64_MSR_VP_RUNTIME
    Uninitialized variable fix.
    [CPPC] Build EPP with KERNEL_VERSION(6) rather than CONFIG_CACHY
    [KERNEL] Linux 6.3: Employ modifier calls with the vma-&gt;vm_flags</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1684065600">- update to 1.96.1
  * [Driver]
  - Postpone Clock Source registration during startup until the Base Clock is computed.
  - Change class_create() according to Linux Kernel 6.4
  - Clear interrupt flag (cli) after Halt in the Idle method
  * [AMD]
  - [PHOENIX] Adding Ryzen 7940H, 7840H, 7640H
  - [VERMEER] Adding Ryzen PRO and Embedded processors
  - Ryzen Z1 CPUID' brand fix
  - Adding EPYC Embedded 9004 Series as Genoa
  - Adding EPYC Embedded 7003 Series as Milan
  - Adding EPYC Embedded 7002 Series as Rome
  - Adding EPYC Embedded 7001 Series as Naples</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1685880000">- update to 1.96.2
  * [Driver]
  - Allows compilation to keep going without CONFIG_ACPI_CPPC_LIB
  * [Client]
  - Adding two command line arguments:
  - Op Show Package C-States
  - OW Toggle Energy units
  * [AMD]
  - Specification of some Configuration MSRs</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1686830400">- update to 1.96.4
  * [AMD]
  - Display CPUID state of new and legacy features:
    Fused Multiply Add [FMA4]
    Extended Operation Support [XOP]
    Translation Cache Extension [TCE]
    Trailing Bit Manipulation [TBM]
    OS Visible Work-around [OSVW]
    LOCK prefix to read CR8 [AltMov]
  * [Intel]
  - Advanced Matrix Extensions [AMX]
  - Bits and Features of Sierra Forest and Grand Ridge
  - Attempt to decode the Meteor Lake Memory Controller
- update to 1.96.3
  * [AMD]
  - [Zeppelin] Probe more than one UMC controllers on Ryzen Threadripper 1900X
  - [Zen4] Dump SMBE and BMEC sub-leaves of CPUID 0x80000020</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1688212800">- update to 1.96.5
  * [AMD]
    Adding the "AMD Ryzen 5 5600X3D"
    Introducing the Zen4c Bergamo architecture
    Specs fixing of Embedded V-series and 3000 Series Processors
    Adding MENDOCINO, RAPHAEL Pro, PHOENIX Pro among others</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1712318400">- added preamble file for %kernel_module_package macro
- update to 1.97.1
  * added aarch64 support
  * upstream did not provide a summary changelog. Full list of commits:
    https://github.com/cyring/CoreFreq/compare/1.96.5...1.97.1</changelog>
</package>
<package pkgid="152ddea2e67d9fd5170b1b13f27b1000fcca57537d7bfc434e0157c9175f42b855784455f4029ce45b09b1fd5dad56d8e031445c2cd0f6c5e708d72babde69ca" name="CoreFreq-debuginfo" arch="x86_64">
  <version epoch="0" ver="1.97.1" rel="1.3"/>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1644667200">- Update to version 1.89.3
  * No changelog was made available by upstream</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1646654400">- removed non-working leap15_2.patch and leap15_3.patch:
  Leap 15.4 is the minimum supported version
- Update to version 1.90.1
  * support for Alder Lake architecture:
    in particular, specialized monitoring for Pcore and Ecore
  * more precise DDR5 and DDR4 timings from SKL to ADL:
    introduction of "Gear mode"
  * improvement using Power Limiters:
    zero W on PL1 &amp; PL2; DRAM clampig marked experimental
  * characteristics for Zen architecture:
    CPPC; C1E; MEM CLOCK in raw frequency
  * C-state Core for Ice Lake/X
  * various characteristics of C-state package for AMD/Zen and Intel (Lake)
  * various changes in UI
  * non-regression tests for kernels 5.16.12 and 5.17.rc6</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1655899200">- Update to version 1.91.3
  * No changelog was made available by upstream</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1661169600">- Update to version 1.91.6
  - [AMD/Zen][UMC] Fixed the Mem Clock and ECC regressions
  - Designate the Package identifier in Power consumed readings
  - [Intel/ADL/IMC] Guessing activated channel from the populated DIMM
  - [AMD][UMC, IOMMU] Adding missing DID of family 19h devices
  - [AMD_DataFabric_Cezanne] Removed the Experimental mode
  - Intel/ADL/IMC: Fixing the Memory Channels count
  - [AMD/Zen] Improved UMC mapping. Threadripper 3960X issue
  - Avoid some NULL pointer strings during SMBIOS decoding</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1667563200">- update to version 1.92.3
  - Export CPUID bits Intel Sierra Forest, Grand Ridge, Granite Rapids
    and completes AMD64 Fn0000_0007_ECX_x0
  - [Features] WBNOINVD and CLZERO instructions
  - Adding various Mitigation Mechanism aggregations:
    IPRED_DIS_U, IPRED_DIS_S, RRSBA_DIS_U, RRSBA_DIS_S, BHI_DIS_S, MCDT_NO
  - RDPID and UMIP capability fixed.
  - [AMD] Perf. Mon. version based on CPUID_0x80000022.EAX.PerfMonV2
  - [AMD][Zen3+][Rembrandt] Trigger UMC and IOMMU decoders
  - [AMD][Ryzen 5 6600H] Found voltage VID @ SMU 0x6f010 and 0x6f014
  - Introducing AMD Security Feature capabilities:
    SKINIT, SEV, GMET, SEV-ES, SEV-SNP
  - [AMD64] Non-architectural MSR: SPECULATIVE STORE BYPASS DISABLE
  - [Intel][2nd &amp; 3rd gen] Misc IMC optimizations
  - [AMD][Rembrandt] Provides Vcore from a new formula.
  - Dumping CPUID leaves from AMD64 Architecture Programmer’s Manual
  - [Intel][HSW &amp; BDW] Compute the DIMM banks
  - [UI] Re-assigned keys to move or resize windows.
  - [AMD][Zen] Uncore frequency: Improving the Memory Clock divisor
  - [Intel][HSW &amp; BDW][SKL] Make use of same function DimmWidthToRows
  - [AMD][Zen3+][Rembrandt] Provides the thermal sensor.
  - [AMD/Zen2 &amp; Zen3] Removed the HSMP capability.
  - [Intel][CML][RKL][TGL] Compute the DIMM Rows from CH_WIDTH
  - [AMD/EPYC] Adding the CPUID of Zen4 Genoa architecture
  - [AMD/Zen2] Introducing Mendocino architecture
  - Changed MeteorLake/N to CPUID 06_B5
  - [Intel] Computes BIOS DRAM frequency based on PLL_REF100
  - [Intel][SNB/IVB/HSW/BDW] Improved BIOS DRAM frequency
  - [Intel][SNB/IVB] DRAM frequency based on RAM_Select and FSB_Select
  - [Intel][IVB] IMC specifications and optimizations.
  - [Intel][SNB,IVB] Computes the DIMM A from DAS bit in MAD register
  - [Intel][SNB,IVB,HSW,BDW] Rolling back changes to the DIMM topology
  - [Intel][BDW][HSW] Query the IMC Power Down Mode
  - [Intel][IVB][SNB] Attempt to decode the IMC third timings
  - [AMD][Ryzen] Added AMD Ryzen 7 PRO 6860Z
  - [AMD][F17h-F19h] Can toggle ON and OFF the Instruction Cache Unit
  - [AMD] Checking the Ryzen "OEM Only" processors
  - [Intel] Specification of 12th Gen. MSR registers capability
  - [Intel] Adding Raptor Lake-S with CPUID 06_BF
  - [AMD] Introducing Zen 4 / Raphael architecture
  - [Intel][SNB,IVB,HSW] Attempt to assign the Rank per DIMM slot
  - [Intel][SNB,IVB,HSW] Attempt to fix the DIMM(s) topology layout
  - ClockSource: TSC udelay() asm implementation builtin as a default
  - [Intel][Alder Lake] Adding IMC entry for i5-12500 processor
  - [Intel][Alder Lake] Added default case if Processor has only Pcores
  - [Intel][Atom/Bonnell][IMC] Attempt to compute the DIMM geometry
  - [UI][Custom view] Show the Uncore unit in watt or joule
  - [UI] Display HWP or CPPC in footer for capable processors.
  - [CLI] Added HWP Capabilities and HWP Request to the JSON export
  - [CLI] Don't allow the HWP dialog box if feature is not available.
  - [CPPC][Firmware] allows (de)activation of the feature.
  - [CLI] Added CPU ratios to JSON export
  - [CPPC] Improved scaling
  - [CPPC] Build fixed down to Kernel version 3
  - [Kernel/ACPI] Attempt to write CPPC registers</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1667563201">- Repair deficient description grammar.</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1670241600">- update to 1.92.4:
  * [Intel/Skylake-X] Permits MSR_RING_PERF_LIMIT_REASONS</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1670932800">- removed modprobe_corefreqd.service.patch and harden_corefreqd.service.patch
  now included in new corefreqd.service file replacing stock one
- update to 1.93.1
  * [PRJ] CoreFreq version 1.93.1
  * [ACPI/CPPC/EPP] Preview of AMD/Zen Energy Preference (CONFIG_CACHY)
  * [UI] Changed the HWP or CPPC ratio bounds.
  * [FIX] Putting `corefreqd` in the root cgroup (issue #379) Thanks to gel-crabs
  * [DOC] Parameters to blacklist the amd_pstate since kernel 6.0.11
  * [AMD][Zen4] Apply a voltage formula based on Rembrandt's. (#378)
  * [AMD][Zen4/Raphael] Attempting temperature per CCD from TCTL+0x308
  * [AMD][Zen4] Changed Timer loop
  * [CR] CLI code review and UI optimizations
  * [UI] Auto refresh the Topology items when off/online
  * [CR] Conditionally build with additional PMC Counters
  * [Intel] Adding Z8000 System Memory Controller Registers
  * [CR] Transformed global variable in cells padding
  * [UI] Windows re-scaling fix
  * [UI] Apply color theming to the CPPC capabilities list.
  * [AMD][Raphael] Adding device DIDs to probe UMC and IOMMU
  * [CPPC/FMW] Computes value bounds while Enabling/Disabling firmware
  * [CR] CPPC lib errors are now raised to Debug level
  * [AMD][Zen4] Increased the UMC size to 12 channels.
  * [CPPC] Handles the OffLine CPU case.
  * [CLI] Refactoring HWP/CPPC to print all capabilities per CPU
  * [ACPI] Computes the CPPC Bounds
  * [Intel] Linear Address Masking (LAM)
  * [CLI] EFER: Left aligned labels
  * [AMD] Reports UAIE and AIBRSE bits from EFER system register
  * [CLI] Changed mitigation mechanisms incapability labels
  * [AMD][Zen2] Mitigation Mechanism BTC-NOBR * ACPI/OSPM documentation
  * [CR] Code review on bit masks
  * [CPPC][ACPI] Kernel may decode the Guaranteed Performance Register
  * [UI] Optimize the cycles to clear the time bar.
  * [CR] Code review for extra compiler warnings
  * [UI] Time of the day displayed in the right side of menu
  * [UI] Display the current date and time in menu bar
  * [Kernel] Introducing support of `CONFIG_SCHED_BORE`
  * [CLI] Fixing ambiguous CPPC report: hardware vs firmware
  * [CLI] Surrounds _CPC feature with square brackets
  * [CPPC] Provides the ACPI _CPC object state.
  * [UI] Colors the task being tracked in the tracking list
  * [UI] Display the current time in the menu bar
  * [CLI] Reserve the programmable TDP section to Intel processors.
  * [AMD/Zen3+] Improving the DIMM geometry of Rembrandt UMC</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1672747200">- update to 1.94.1:
  * [Intel] Gemini Lake
  * [AMD] Ryzen 5 6600 H SoC, UMC channels
  * [AMD] Rembrandt: maximum of two UMC channels
  * [AMD] Raphael: Decodes DIMM geometry from AddrCfg
  * [AMD] Zen: Aggregation refactored
  * [AMD] Improved DDR5 clock decoding
  * Optimized Idle Loop</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1673006400">- update to 1.94.3:
  * [AMD][RMB] If UMC is quad channels then unpopulate odd channels
  * [AMD][RPL] Provide Service Processor Vcore as workaround
  * [UI] Auto size and lay performance capabilities window
  * [UI] Adding comments to the EEO and R2H technologies
  * [AMD][Raphael] 7950X3D, 7900X3D. support</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1674475200">- update to 1.95.1:
  * [Intel] RPL: voltage of Pcore, Ecore, System Agent
  * [Intel] RPL and ADL Chipset device IDs
  * [Intel] Decode the RPL IMC and improve DDR5 support
  * [Build] Raise `MAX_FREQ_HZ` up to 7125000000 Hertz
  * [Intel] Mobile {Coffee Lake, Kaby Lake} codenames
  * [Intel] Braswell codename detection
  * [AMD] SYSCFG Register
  * [AMD] EPYC 9654
  * [AMD] Transparent SME
  * [AMD] DRAM Data Scrambling
  * [AMD] Adding "Barcelo R" and "Rembrandt R"</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1675944000">- update to 1.95.2:
  * Fixed the aggregation of the minimum ratio
  Intel:
  * [Airmont][Silvermont] Attempt to decode `tCKE` from DRMC
    register
  * [Airmont] Improve `tWTPr`, `B2B`, `tWWDR` timings
  * [Airmont] Provide a new IMC decoder
  * Add the Emerald Rapids architecture entry
  * [DDR5][DDR4] Add the `RCDw` IMC timing
  * [Raptor Lake ] De-activate the MSR Uncore counter
  AMD:
  * "Zen3/Barcelo-R" and "Zen3+ Rembrandt-R" codenames
  * [Zen] Thermal highest limit reset fix
  Misc:
  * Code review and Registers documentation:
    AMD HWCR, Intel HDC and DRP</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677067200">- update to 1.95.4
  * [Intel] [from 11th to 14th gen]
    Convert the DRAM Speed to MT/s unit
    Compute the Bus Rate based on the BIOS MC PLL
- update to 1.95.3
  * [Intel] [Airmont]
    Improved the IMC geometry
    Introducing the Spreadtrum architecture
    Fixed the Bus and DRAM frequency rates
  * [Intel] [from 11th to 13th gen] Attempt to probe the interleaved controllers
  * [Intel] [Alder Lake/H] Attempt to decode the TCO Watchdog</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677153600">- added leap_compile_fix.patch to fix compilation on Leap</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1683115200">- removed leap_compile_fix.patch no needed anymore
- update to 1.96.0
  * [AMD]
    [RPL/X3D] Disabling the turbo boosted P-states change
    [PHOENIX] Adding Z1, U and HS PRO series.
    [Genoa] DAC address at UMC BAR + 0x40
    [Zen4] Adding the PCI entries of Genoa
    [Zen2] Adding remaining PCI entries
    [Zen] Query DAC &amp; CFG with the right UMC base address register
    [Zen4] Dump the CPUID Extended CPU Topology leaves.
    [Zen][Embedded][Banded Kestrel] R1000 Processor Family
    [Zen][Embedded] "Great Horned Owl", "River Hawk", "Grey Hawk"
    Complete the "Raven Ridge" and "Picasso" lists
    [EPYC] Moved "Snowy Owl" Embedded processors to CPUID 8F_01
    [Zen4] introducing Phoenix and Dragon Range
    [RMB] adding the Ryzen Embedded V3000 processors
    [VMR] adding the "AMD Ryzen 9 PRO 5945"
  * [Intel]
    Adding Granite Rapids, Sierra Forest, Grand Ridge entries
    Adding "Lunar Lake" and "Arrow Lake" entries.
  * [UI]
    Optimized decimal to digits converter
    Allow task tracker to select up to pid_max
    Can trace the frozen states of Linux tasks.
    Only print HWP frequencies within bounds.
    Fix ruler's aggregation.
  * [CR]
    Check CPUID[HV_PARTITION_PRIVILEGE_MASK] for HV_X64_MSR_VP_RUNTIME
    Uninitialized variable fix.
    [CPPC] Build EPP with KERNEL_VERSION(6) rather than CONFIG_CACHY
    [KERNEL] Linux 6.3: Employ modifier calls with the vma-&gt;vm_flags</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1684065600">- update to 1.96.1
  * [Driver]
  - Postpone Clock Source registration during startup until the Base Clock is computed.
  - Change class_create() according to Linux Kernel 6.4
  - Clear interrupt flag (cli) after Halt in the Idle method
  * [AMD]
  - [PHOENIX] Adding Ryzen 7940H, 7840H, 7640H
  - [VERMEER] Adding Ryzen PRO and Embedded processors
  - Ryzen Z1 CPUID' brand fix
  - Adding EPYC Embedded 9004 Series as Genoa
  - Adding EPYC Embedded 7003 Series as Milan
  - Adding EPYC Embedded 7002 Series as Rome
  - Adding EPYC Embedded 7001 Series as Naples</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1685880000">- update to 1.96.2
  * [Driver]
  - Allows compilation to keep going without CONFIG_ACPI_CPPC_LIB
  * [Client]
  - Adding two command line arguments:
  - Op Show Package C-States
  - OW Toggle Energy units
  * [AMD]
  - Specification of some Configuration MSRs</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1686830400">- update to 1.96.4
  * [AMD]
  - Display CPUID state of new and legacy features:
    Fused Multiply Add [FMA4]
    Extended Operation Support [XOP]
    Translation Cache Extension [TCE]
    Trailing Bit Manipulation [TBM]
    OS Visible Work-around [OSVW]
    LOCK prefix to read CR8 [AltMov]
  * [Intel]
  - Advanced Matrix Extensions [AMX]
  - Bits and Features of Sierra Forest and Grand Ridge
  - Attempt to decode the Meteor Lake Memory Controller
- update to 1.96.3
  * [AMD]
  - [Zeppelin] Probe more than one UMC controllers on Ryzen Threadripper 1900X
  - [Zen4] Dump SMBE and BMEC sub-leaves of CPUID 0x80000020</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1688212800">- update to 1.96.5
  * [AMD]
    Adding the "AMD Ryzen 5 5600X3D"
    Introducing the Zen4c Bergamo architecture
    Specs fixing of Embedded V-series and 3000 Series Processors
    Adding MENDOCINO, RAPHAEL Pro, PHOENIX Pro among others</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1712318400">- added preamble file for %kernel_module_package macro
- update to 1.97.1
  * added aarch64 support
  * upstream did not provide a summary changelog. Full list of commits:
    https://github.com/cyring/CoreFreq/compare/1.96.5...1.97.1</changelog>
</package>
<package pkgid="ead8e7eb2e677ae7887eaa8e26bd6ada20715777c500f8a3c0ca2bb8142df43142be2ea96df4e40907f9256d448cccd08dae55d314a22fdac06b875ccf3faaef" name="CoreFreq-debuginfo" arch="x86_64">
  <version epoch="0" ver="1.97.2" rel="2.2"/>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1655899200">- Update to version 1.91.3
  * No changelog was made available by upstream</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1661169600">- Update to version 1.91.6
  - [AMD/Zen][UMC] Fixed the Mem Clock and ECC regressions
  - Designate the Package identifier in Power consumed readings
  - [Intel/ADL/IMC] Guessing activated channel from the populated DIMM
  - [AMD][UMC, IOMMU] Adding missing DID of family 19h devices
  - [AMD_DataFabric_Cezanne] Removed the Experimental mode
  - Intel/ADL/IMC: Fixing the Memory Channels count
  - [AMD/Zen] Improved UMC mapping. Threadripper 3960X issue
  - Avoid some NULL pointer strings during SMBIOS decoding</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1667563200">- update to version 1.92.3
  - Export CPUID bits Intel Sierra Forest, Grand Ridge, Granite Rapids
    and completes AMD64 Fn0000_0007_ECX_x0
  - [Features] WBNOINVD and CLZERO instructions
  - Adding various Mitigation Mechanism aggregations:
    IPRED_DIS_U, IPRED_DIS_S, RRSBA_DIS_U, RRSBA_DIS_S, BHI_DIS_S, MCDT_NO
  - RDPID and UMIP capability fixed.
  - [AMD] Perf. Mon. version based on CPUID_0x80000022.EAX.PerfMonV2
  - [AMD][Zen3+][Rembrandt] Trigger UMC and IOMMU decoders
  - [AMD][Ryzen 5 6600H] Found voltage VID @ SMU 0x6f010 and 0x6f014
  - Introducing AMD Security Feature capabilities:
    SKINIT, SEV, GMET, SEV-ES, SEV-SNP
  - [AMD64] Non-architectural MSR: SPECULATIVE STORE BYPASS DISABLE
  - [Intel][2nd &amp; 3rd gen] Misc IMC optimizations
  - [AMD][Rembrandt] Provides Vcore from a new formula.
  - Dumping CPUID leaves from AMD64 Architecture Programmer’s Manual
  - [Intel][HSW &amp; BDW] Compute the DIMM banks
  - [UI] Re-assigned keys to move or resize windows.
  - [AMD][Zen] Uncore frequency: Improving the Memory Clock divisor
  - [Intel][HSW &amp; BDW][SKL] Make use of same function DimmWidthToRows
  - [AMD][Zen3+][Rembrandt] Provides the thermal sensor.
  - [AMD/Zen2 &amp; Zen3] Removed the HSMP capability.
  - [Intel][CML][RKL][TGL] Compute the DIMM Rows from CH_WIDTH
  - [AMD/EPYC] Adding the CPUID of Zen4 Genoa architecture
  - [AMD/Zen2] Introducing Mendocino architecture
  - Changed MeteorLake/N to CPUID 06_B5
  - [Intel] Computes BIOS DRAM frequency based on PLL_REF100
  - [Intel][SNB/IVB/HSW/BDW] Improved BIOS DRAM frequency
  - [Intel][SNB/IVB] DRAM frequency based on RAM_Select and FSB_Select
  - [Intel][IVB] IMC specifications and optimizations.
  - [Intel][SNB,IVB] Computes the DIMM A from DAS bit in MAD register
  - [Intel][SNB,IVB,HSW,BDW] Rolling back changes to the DIMM topology
  - [Intel][BDW][HSW] Query the IMC Power Down Mode
  - [Intel][IVB][SNB] Attempt to decode the IMC third timings
  - [AMD][Ryzen] Added AMD Ryzen 7 PRO 6860Z
  - [AMD][F17h-F19h] Can toggle ON and OFF the Instruction Cache Unit
  - [AMD] Checking the Ryzen "OEM Only" processors
  - [Intel] Specification of 12th Gen. MSR registers capability
  - [Intel] Adding Raptor Lake-S with CPUID 06_BF
  - [AMD] Introducing Zen 4 / Raphael architecture
  - [Intel][SNB,IVB,HSW] Attempt to assign the Rank per DIMM slot
  - [Intel][SNB,IVB,HSW] Attempt to fix the DIMM(s) topology layout
  - ClockSource: TSC udelay() asm implementation builtin as a default
  - [Intel][Alder Lake] Adding IMC entry for i5-12500 processor
  - [Intel][Alder Lake] Added default case if Processor has only Pcores
  - [Intel][Atom/Bonnell][IMC] Attempt to compute the DIMM geometry
  - [UI][Custom view] Show the Uncore unit in watt or joule
  - [UI] Display HWP or CPPC in footer for capable processors.
  - [CLI] Added HWP Capabilities and HWP Request to the JSON export
  - [CLI] Don't allow the HWP dialog box if feature is not available.
  - [CPPC][Firmware] allows (de)activation of the feature.
  - [CLI] Added CPU ratios to JSON export
  - [CPPC] Improved scaling
  - [CPPC] Build fixed down to Kernel version 3
  - [Kernel/ACPI] Attempt to write CPPC registers</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1667563201">- Repair deficient description grammar.</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1670241600">- update to 1.92.4:
  * [Intel/Skylake-X] Permits MSR_RING_PERF_LIMIT_REASONS</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1670932800">- removed modprobe_corefreqd.service.patch and harden_corefreqd.service.patch
  now included in new corefreqd.service file replacing stock one
- update to 1.93.1
  * [PRJ] CoreFreq version 1.93.1
  * [ACPI/CPPC/EPP] Preview of AMD/Zen Energy Preference (CONFIG_CACHY)
  * [UI] Changed the HWP or CPPC ratio bounds.
  * [FIX] Putting `corefreqd` in the root cgroup (issue #379) Thanks to gel-crabs
  * [DOC] Parameters to blacklist the amd_pstate since kernel 6.0.11
  * [AMD][Zen4] Apply a voltage formula based on Rembrandt's. (#378)
  * [AMD][Zen4/Raphael] Attempting temperature per CCD from TCTL+0x308
  * [AMD][Zen4] Changed Timer loop
  * [CR] CLI code review and UI optimizations
  * [UI] Auto refresh the Topology items when off/online
  * [CR] Conditionally build with additional PMC Counters
  * [Intel] Adding Z8000 System Memory Controller Registers
  * [CR] Transformed global variable in cells padding
  * [UI] Windows re-scaling fix
  * [UI] Apply color theming to the CPPC capabilities list.
  * [AMD][Raphael] Adding device DIDs to probe UMC and IOMMU
  * [CPPC/FMW] Computes value bounds while Enabling/Disabling firmware
  * [CR] CPPC lib errors are now raised to Debug level
  * [AMD][Zen4] Increased the UMC size to 12 channels.
  * [CPPC] Handles the OffLine CPU case.
  * [CLI] Refactoring HWP/CPPC to print all capabilities per CPU
  * [ACPI] Computes the CPPC Bounds
  * [Intel] Linear Address Masking (LAM)
  * [CLI] EFER: Left aligned labels
  * [AMD] Reports UAIE and AIBRSE bits from EFER system register
  * [CLI] Changed mitigation mechanisms incapability labels
  * [AMD][Zen2] Mitigation Mechanism BTC-NOBR * ACPI/OSPM documentation
  * [CR] Code review on bit masks
  * [CPPC][ACPI] Kernel may decode the Guaranteed Performance Register
  * [UI] Optimize the cycles to clear the time bar.
  * [CR] Code review for extra compiler warnings
  * [UI] Time of the day displayed in the right side of menu
  * [UI] Display the current date and time in menu bar
  * [Kernel] Introducing support of `CONFIG_SCHED_BORE`
  * [CLI] Fixing ambiguous CPPC report: hardware vs firmware
  * [CLI] Surrounds _CPC feature with square brackets
  * [CPPC] Provides the ACPI _CPC object state.
  * [UI] Colors the task being tracked in the tracking list
  * [UI] Display the current time in the menu bar
  * [CLI] Reserve the programmable TDP section to Intel processors.
  * [AMD/Zen3+] Improving the DIMM geometry of Rembrandt UMC</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1672747200">- update to 1.94.1:
  * [Intel] Gemini Lake
  * [AMD] Ryzen 5 6600 H SoC, UMC channels
  * [AMD] Rembrandt: maximum of two UMC channels
  * [AMD] Raphael: Decodes DIMM geometry from AddrCfg
  * [AMD] Zen: Aggregation refactored
  * [AMD] Improved DDR5 clock decoding
  * Optimized Idle Loop</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1673006400">- update to 1.94.3:
  * [AMD][RMB] If UMC is quad channels then unpopulate odd channels
  * [AMD][RPL] Provide Service Processor Vcore as workaround
  * [UI] Auto size and lay performance capabilities window
  * [UI] Adding comments to the EEO and R2H technologies
  * [AMD][Raphael] 7950X3D, 7900X3D. support</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1674475200">- update to 1.95.1:
  * [Intel] RPL: voltage of Pcore, Ecore, System Agent
  * [Intel] RPL and ADL Chipset device IDs
  * [Intel] Decode the RPL IMC and improve DDR5 support
  * [Build] Raise `MAX_FREQ_HZ` up to 7125000000 Hertz
  * [Intel] Mobile {Coffee Lake, Kaby Lake} codenames
  * [Intel] Braswell codename detection
  * [AMD] SYSCFG Register
  * [AMD] EPYC 9654
  * [AMD] Transparent SME
  * [AMD] DRAM Data Scrambling
  * [AMD] Adding "Barcelo R" and "Rembrandt R"</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1675944000">- update to 1.95.2:
  * Fixed the aggregation of the minimum ratio
  Intel:
  * [Airmont][Silvermont] Attempt to decode `tCKE` from DRMC
    register
  * [Airmont] Improve `tWTPr`, `B2B`, `tWWDR` timings
  * [Airmont] Provide a new IMC decoder
  * Add the Emerald Rapids architecture entry
  * [DDR5][DDR4] Add the `RCDw` IMC timing
  * [Raptor Lake ] De-activate the MSR Uncore counter
  AMD:
  * "Zen3/Barcelo-R" and "Zen3+ Rembrandt-R" codenames
  * [Zen] Thermal highest limit reset fix
  Misc:
  * Code review and Registers documentation:
    AMD HWCR, Intel HDC and DRP</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677067200">- update to 1.95.4
  * [Intel] [from 11th to 14th gen]
    Convert the DRAM Speed to MT/s unit
    Compute the Bus Rate based on the BIOS MC PLL
- update to 1.95.3
  * [Intel] [Airmont]
    Improved the IMC geometry
    Introducing the Spreadtrum architecture
    Fixed the Bus and DRAM frequency rates
  * [Intel] [from 11th to 13th gen] Attempt to probe the interleaved controllers
  * [Intel] [Alder Lake/H] Attempt to decode the TCO Watchdog</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677153600">- added leap_compile_fix.patch to fix compilation on Leap</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1683115200">- removed leap_compile_fix.patch no needed anymore
- update to 1.96.0
  * [AMD]
    [RPL/X3D] Disabling the turbo boosted P-states change
    [PHOENIX] Adding Z1, U and HS PRO series.
    [Genoa] DAC address at UMC BAR + 0x40
    [Zen4] Adding the PCI entries of Genoa
    [Zen2] Adding remaining PCI entries
    [Zen] Query DAC &amp; CFG with the right UMC base address register
    [Zen4] Dump the CPUID Extended CPU Topology leaves.
    [Zen][Embedded][Banded Kestrel] R1000 Processor Family
    [Zen][Embedded] "Great Horned Owl", "River Hawk", "Grey Hawk"
    Complete the "Raven Ridge" and "Picasso" lists
    [EPYC] Moved "Snowy Owl" Embedded processors to CPUID 8F_01
    [Zen4] introducing Phoenix and Dragon Range
    [RMB] adding the Ryzen Embedded V3000 processors
    [VMR] adding the "AMD Ryzen 9 PRO 5945"
  * [Intel]
    Adding Granite Rapids, Sierra Forest, Grand Ridge entries
    Adding "Lunar Lake" and "Arrow Lake" entries.
  * [UI]
    Optimized decimal to digits converter
    Allow task tracker to select up to pid_max
    Can trace the frozen states of Linux tasks.
    Only print HWP frequencies within bounds.
    Fix ruler's aggregation.
  * [CR]
    Check CPUID[HV_PARTITION_PRIVILEGE_MASK] for HV_X64_MSR_VP_RUNTIME
    Uninitialized variable fix.
    [CPPC] Build EPP with KERNEL_VERSION(6) rather than CONFIG_CACHY
    [KERNEL] Linux 6.3: Employ modifier calls with the vma-&gt;vm_flags</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1684065600">- update to 1.96.1
  * [Driver]
  - Postpone Clock Source registration during startup until the Base Clock is computed.
  - Change class_create() according to Linux Kernel 6.4
  - Clear interrupt flag (cli) after Halt in the Idle method
  * [AMD]
  - [PHOENIX] Adding Ryzen 7940H, 7840H, 7640H
  - [VERMEER] Adding Ryzen PRO and Embedded processors
  - Ryzen Z1 CPUID' brand fix
  - Adding EPYC Embedded 9004 Series as Genoa
  - Adding EPYC Embedded 7003 Series as Milan
  - Adding EPYC Embedded 7002 Series as Rome
  - Adding EPYC Embedded 7001 Series as Naples</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1685880000">- update to 1.96.2
  * [Driver]
  - Allows compilation to keep going without CONFIG_ACPI_CPPC_LIB
  * [Client]
  - Adding two command line arguments:
  - Op Show Package C-States
  - OW Toggle Energy units
  * [AMD]
  - Specification of some Configuration MSRs</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1686830400">- update to 1.96.4
  * [AMD]
  - Display CPUID state of new and legacy features:
    Fused Multiply Add [FMA4]
    Extended Operation Support [XOP]
    Translation Cache Extension [TCE]
    Trailing Bit Manipulation [TBM]
    OS Visible Work-around [OSVW]
    LOCK prefix to read CR8 [AltMov]
  * [Intel]
  - Advanced Matrix Extensions [AMX]
  - Bits and Features of Sierra Forest and Grand Ridge
  - Attempt to decode the Meteor Lake Memory Controller
- update to 1.96.3
  * [AMD]
  - [Zeppelin] Probe more than one UMC controllers on Ryzen Threadripper 1900X
  - [Zen4] Dump SMBE and BMEC sub-leaves of CPUID 0x80000020</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1688212800">- update to 1.96.5
  * [AMD]
    Adding the "AMD Ryzen 5 5600X3D"
    Introducing the Zen4c Bergamo architecture
    Specs fixing of Embedded V-series and 3000 Series Processors
    Adding MENDOCINO, RAPHAEL Pro, PHOENIX Pro among others</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1712318400">- added preamble file for %kernel_module_package macro
- update to 1.97.1
  * added aarch64 support
  * upstream did not provide a summary changelog. Full list of commits:
    https://github.com/cyring/CoreFreq/compare/1.96.5...1.97.1</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715860800">- update to 1.97.2
  * [AMD]
  - [Hawk Point] Adding Ryzen PRO processors
  - [Phoenix] Adding the unlocked Ryzen 8000 Series
  * [Intel]
  - [MeteorLake] New bits specified
  - EEO and R2H bits inversion fix in MSR_POWER_CTL (0x1fc)
  - Reverse specification of MSR UNCORE_PERF_STATUS
  - Prefetchers fix of L1 Scrubbing, L1 Next Page and L2 AMP
  * [AArch64]
  - Providing Exclusive Load/Store to atomic operations
  - Improved asm of various macro functions
  - Removed LEGACY macros
  - Optimized the CORE_COUNT macros
  - Marked the Tools feature as nominal: Stress functions available
  - Allow user access to Retired Instructions counter
  - Fix Instructions counter overflow
  - Other PMC enhancements
  * [CR]
  - Fix a building issue with AlmaLinux aka RHEL-9
  - Linux kernel 6.9: Avoid redefinition of Intel MSR macros
  * [Doc]
  - README section for AlmaLinux
  - CONFIG_TRIM_UNUSED_KSYMS kernel build config is forbidden</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715947200">- fix dependency on kernel module that was not versioned</changelog>
</package>
<package pkgid="84b872b2c24e8b218343ccdab6dfeb730772ed76d9b4a9770fef367f77ac0394d626e87a352eb612a8390aa329842d4e0e0f58c3525446dd7f95ff7e5ccdd9ea" name="CoreFreq-debuginfo" arch="x86_64">
  <version epoch="0" ver="1.97.2" rel="2.3"/>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1655899200">- Update to version 1.91.3
  * No changelog was made available by upstream</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1661169600">- Update to version 1.91.6
  - [AMD/Zen][UMC] Fixed the Mem Clock and ECC regressions
  - Designate the Package identifier in Power consumed readings
  - [Intel/ADL/IMC] Guessing activated channel from the populated DIMM
  - [AMD][UMC, IOMMU] Adding missing DID of family 19h devices
  - [AMD_DataFabric_Cezanne] Removed the Experimental mode
  - Intel/ADL/IMC: Fixing the Memory Channels count
  - [AMD/Zen] Improved UMC mapping. Threadripper 3960X issue
  - Avoid some NULL pointer strings during SMBIOS decoding</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1667563200">- update to version 1.92.3
  - Export CPUID bits Intel Sierra Forest, Grand Ridge, Granite Rapids
    and completes AMD64 Fn0000_0007_ECX_x0
  - [Features] WBNOINVD and CLZERO instructions
  - Adding various Mitigation Mechanism aggregations:
    IPRED_DIS_U, IPRED_DIS_S, RRSBA_DIS_U, RRSBA_DIS_S, BHI_DIS_S, MCDT_NO
  - RDPID and UMIP capability fixed.
  - [AMD] Perf. Mon. version based on CPUID_0x80000022.EAX.PerfMonV2
  - [AMD][Zen3+][Rembrandt] Trigger UMC and IOMMU decoders
  - [AMD][Ryzen 5 6600H] Found voltage VID @ SMU 0x6f010 and 0x6f014
  - Introducing AMD Security Feature capabilities:
    SKINIT, SEV, GMET, SEV-ES, SEV-SNP
  - [AMD64] Non-architectural MSR: SPECULATIVE STORE BYPASS DISABLE
  - [Intel][2nd &amp; 3rd gen] Misc IMC optimizations
  - [AMD][Rembrandt] Provides Vcore from a new formula.
  - Dumping CPUID leaves from AMD64 Architecture Programmer’s Manual
  - [Intel][HSW &amp; BDW] Compute the DIMM banks
  - [UI] Re-assigned keys to move or resize windows.
  - [AMD][Zen] Uncore frequency: Improving the Memory Clock divisor
  - [Intel][HSW &amp; BDW][SKL] Make use of same function DimmWidthToRows
  - [AMD][Zen3+][Rembrandt] Provides the thermal sensor.
  - [AMD/Zen2 &amp; Zen3] Removed the HSMP capability.
  - [Intel][CML][RKL][TGL] Compute the DIMM Rows from CH_WIDTH
  - [AMD/EPYC] Adding the CPUID of Zen4 Genoa architecture
  - [AMD/Zen2] Introducing Mendocino architecture
  - Changed MeteorLake/N to CPUID 06_B5
  - [Intel] Computes BIOS DRAM frequency based on PLL_REF100
  - [Intel][SNB/IVB/HSW/BDW] Improved BIOS DRAM frequency
  - [Intel][SNB/IVB] DRAM frequency based on RAM_Select and FSB_Select
  - [Intel][IVB] IMC specifications and optimizations.
  - [Intel][SNB,IVB] Computes the DIMM A from DAS bit in MAD register
  - [Intel][SNB,IVB,HSW,BDW] Rolling back changes to the DIMM topology
  - [Intel][BDW][HSW] Query the IMC Power Down Mode
  - [Intel][IVB][SNB] Attempt to decode the IMC third timings
  - [AMD][Ryzen] Added AMD Ryzen 7 PRO 6860Z
  - [AMD][F17h-F19h] Can toggle ON and OFF the Instruction Cache Unit
  - [AMD] Checking the Ryzen "OEM Only" processors
  - [Intel] Specification of 12th Gen. MSR registers capability
  - [Intel] Adding Raptor Lake-S with CPUID 06_BF
  - [AMD] Introducing Zen 4 / Raphael architecture
  - [Intel][SNB,IVB,HSW] Attempt to assign the Rank per DIMM slot
  - [Intel][SNB,IVB,HSW] Attempt to fix the DIMM(s) topology layout
  - ClockSource: TSC udelay() asm implementation builtin as a default
  - [Intel][Alder Lake] Adding IMC entry for i5-12500 processor
  - [Intel][Alder Lake] Added default case if Processor has only Pcores
  - [Intel][Atom/Bonnell][IMC] Attempt to compute the DIMM geometry
  - [UI][Custom view] Show the Uncore unit in watt or joule
  - [UI] Display HWP or CPPC in footer for capable processors.
  - [CLI] Added HWP Capabilities and HWP Request to the JSON export
  - [CLI] Don't allow the HWP dialog box if feature is not available.
  - [CPPC][Firmware] allows (de)activation of the feature.
  - [CLI] Added CPU ratios to JSON export
  - [CPPC] Improved scaling
  - [CPPC] Build fixed down to Kernel version 3
  - [Kernel/ACPI] Attempt to write CPPC registers</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1667563201">- Repair deficient description grammar.</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1670241600">- update to 1.92.4:
  * [Intel/Skylake-X] Permits MSR_RING_PERF_LIMIT_REASONS</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1670932800">- removed modprobe_corefreqd.service.patch and harden_corefreqd.service.patch
  now included in new corefreqd.service file replacing stock one
- update to 1.93.1
  * [PRJ] CoreFreq version 1.93.1
  * [ACPI/CPPC/EPP] Preview of AMD/Zen Energy Preference (CONFIG_CACHY)
  * [UI] Changed the HWP or CPPC ratio bounds.
  * [FIX] Putting `corefreqd` in the root cgroup (issue #379) Thanks to gel-crabs
  * [DOC] Parameters to blacklist the amd_pstate since kernel 6.0.11
  * [AMD][Zen4] Apply a voltage formula based on Rembrandt's. (#378)
  * [AMD][Zen4/Raphael] Attempting temperature per CCD from TCTL+0x308
  * [AMD][Zen4] Changed Timer loop
  * [CR] CLI code review and UI optimizations
  * [UI] Auto refresh the Topology items when off/online
  * [CR] Conditionally build with additional PMC Counters
  * [Intel] Adding Z8000 System Memory Controller Registers
  * [CR] Transformed global variable in cells padding
  * [UI] Windows re-scaling fix
  * [UI] Apply color theming to the CPPC capabilities list.
  * [AMD][Raphael] Adding device DIDs to probe UMC and IOMMU
  * [CPPC/FMW] Computes value bounds while Enabling/Disabling firmware
  * [CR] CPPC lib errors are now raised to Debug level
  * [AMD][Zen4] Increased the UMC size to 12 channels.
  * [CPPC] Handles the OffLine CPU case.
  * [CLI] Refactoring HWP/CPPC to print all capabilities per CPU
  * [ACPI] Computes the CPPC Bounds
  * [Intel] Linear Address Masking (LAM)
  * [CLI] EFER: Left aligned labels
  * [AMD] Reports UAIE and AIBRSE bits from EFER system register
  * [CLI] Changed mitigation mechanisms incapability labels
  * [AMD][Zen2] Mitigation Mechanism BTC-NOBR * ACPI/OSPM documentation
  * [CR] Code review on bit masks
  * [CPPC][ACPI] Kernel may decode the Guaranteed Performance Register
  * [UI] Optimize the cycles to clear the time bar.
  * [CR] Code review for extra compiler warnings
  * [UI] Time of the day displayed in the right side of menu
  * [UI] Display the current date and time in menu bar
  * [Kernel] Introducing support of `CONFIG_SCHED_BORE`
  * [CLI] Fixing ambiguous CPPC report: hardware vs firmware
  * [CLI] Surrounds _CPC feature with square brackets
  * [CPPC] Provides the ACPI _CPC object state.
  * [UI] Colors the task being tracked in the tracking list
  * [UI] Display the current time in the menu bar
  * [CLI] Reserve the programmable TDP section to Intel processors.
  * [AMD/Zen3+] Improving the DIMM geometry of Rembrandt UMC</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1672747200">- update to 1.94.1:
  * [Intel] Gemini Lake
  * [AMD] Ryzen 5 6600 H SoC, UMC channels
  * [AMD] Rembrandt: maximum of two UMC channels
  * [AMD] Raphael: Decodes DIMM geometry from AddrCfg
  * [AMD] Zen: Aggregation refactored
  * [AMD] Improved DDR5 clock decoding
  * Optimized Idle Loop</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1673006400">- update to 1.94.3:
  * [AMD][RMB] If UMC is quad channels then unpopulate odd channels
  * [AMD][RPL] Provide Service Processor Vcore as workaround
  * [UI] Auto size and lay performance capabilities window
  * [UI] Adding comments to the EEO and R2H technologies
  * [AMD][Raphael] 7950X3D, 7900X3D. support</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1674475200">- update to 1.95.1:
  * [Intel] RPL: voltage of Pcore, Ecore, System Agent
  * [Intel] RPL and ADL Chipset device IDs
  * [Intel] Decode the RPL IMC and improve DDR5 support
  * [Build] Raise `MAX_FREQ_HZ` up to 7125000000 Hertz
  * [Intel] Mobile {Coffee Lake, Kaby Lake} codenames
  * [Intel] Braswell codename detection
  * [AMD] SYSCFG Register
  * [AMD] EPYC 9654
  * [AMD] Transparent SME
  * [AMD] DRAM Data Scrambling
  * [AMD] Adding "Barcelo R" and "Rembrandt R"</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1675944000">- update to 1.95.2:
  * Fixed the aggregation of the minimum ratio
  Intel:
  * [Airmont][Silvermont] Attempt to decode `tCKE` from DRMC
    register
  * [Airmont] Improve `tWTPr`, `B2B`, `tWWDR` timings
  * [Airmont] Provide a new IMC decoder
  * Add the Emerald Rapids architecture entry
  * [DDR5][DDR4] Add the `RCDw` IMC timing
  * [Raptor Lake ] De-activate the MSR Uncore counter
  AMD:
  * "Zen3/Barcelo-R" and "Zen3+ Rembrandt-R" codenames
  * [Zen] Thermal highest limit reset fix
  Misc:
  * Code review and Registers documentation:
    AMD HWCR, Intel HDC and DRP</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677067200">- update to 1.95.4
  * [Intel] [from 11th to 14th gen]
    Convert the DRAM Speed to MT/s unit
    Compute the Bus Rate based on the BIOS MC PLL
- update to 1.95.3
  * [Intel] [Airmont]
    Improved the IMC geometry
    Introducing the Spreadtrum architecture
    Fixed the Bus and DRAM frequency rates
  * [Intel] [from 11th to 13th gen] Attempt to probe the interleaved controllers
  * [Intel] [Alder Lake/H] Attempt to decode the TCO Watchdog</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677153600">- added leap_compile_fix.patch to fix compilation on Leap</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1683115200">- removed leap_compile_fix.patch no needed anymore
- update to 1.96.0
  * [AMD]
    [RPL/X3D] Disabling the turbo boosted P-states change
    [PHOENIX] Adding Z1, U and HS PRO series.
    [Genoa] DAC address at UMC BAR + 0x40
    [Zen4] Adding the PCI entries of Genoa
    [Zen2] Adding remaining PCI entries
    [Zen] Query DAC &amp; CFG with the right UMC base address register
    [Zen4] Dump the CPUID Extended CPU Topology leaves.
    [Zen][Embedded][Banded Kestrel] R1000 Processor Family
    [Zen][Embedded] "Great Horned Owl", "River Hawk", "Grey Hawk"
    Complete the "Raven Ridge" and "Picasso" lists
    [EPYC] Moved "Snowy Owl" Embedded processors to CPUID 8F_01
    [Zen4] introducing Phoenix and Dragon Range
    [RMB] adding the Ryzen Embedded V3000 processors
    [VMR] adding the "AMD Ryzen 9 PRO 5945"
  * [Intel]
    Adding Granite Rapids, Sierra Forest, Grand Ridge entries
    Adding "Lunar Lake" and "Arrow Lake" entries.
  * [UI]
    Optimized decimal to digits converter
    Allow task tracker to select up to pid_max
    Can trace the frozen states of Linux tasks.
    Only print HWP frequencies within bounds.
    Fix ruler's aggregation.
  * [CR]
    Check CPUID[HV_PARTITION_PRIVILEGE_MASK] for HV_X64_MSR_VP_RUNTIME
    Uninitialized variable fix.
    [CPPC] Build EPP with KERNEL_VERSION(6) rather than CONFIG_CACHY
    [KERNEL] Linux 6.3: Employ modifier calls with the vma-&gt;vm_flags</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1684065600">- update to 1.96.1
  * [Driver]
  - Postpone Clock Source registration during startup until the Base Clock is computed.
  - Change class_create() according to Linux Kernel 6.4
  - Clear interrupt flag (cli) after Halt in the Idle method
  * [AMD]
  - [PHOENIX] Adding Ryzen 7940H, 7840H, 7640H
  - [VERMEER] Adding Ryzen PRO and Embedded processors
  - Ryzen Z1 CPUID' brand fix
  - Adding EPYC Embedded 9004 Series as Genoa
  - Adding EPYC Embedded 7003 Series as Milan
  - Adding EPYC Embedded 7002 Series as Rome
  - Adding EPYC Embedded 7001 Series as Naples</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1685880000">- update to 1.96.2
  * [Driver]
  - Allows compilation to keep going without CONFIG_ACPI_CPPC_LIB
  * [Client]
  - Adding two command line arguments:
  - Op Show Package C-States
  - OW Toggle Energy units
  * [AMD]
  - Specification of some Configuration MSRs</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1686830400">- update to 1.96.4
  * [AMD]
  - Display CPUID state of new and legacy features:
    Fused Multiply Add [FMA4]
    Extended Operation Support [XOP]
    Translation Cache Extension [TCE]
    Trailing Bit Manipulation [TBM]
    OS Visible Work-around [OSVW]
    LOCK prefix to read CR8 [AltMov]
  * [Intel]
  - Advanced Matrix Extensions [AMX]
  - Bits and Features of Sierra Forest and Grand Ridge
  - Attempt to decode the Meteor Lake Memory Controller
- update to 1.96.3
  * [AMD]
  - [Zeppelin] Probe more than one UMC controllers on Ryzen Threadripper 1900X
  - [Zen4] Dump SMBE and BMEC sub-leaves of CPUID 0x80000020</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1688212800">- update to 1.96.5
  * [AMD]
    Adding the "AMD Ryzen 5 5600X3D"
    Introducing the Zen4c Bergamo architecture
    Specs fixing of Embedded V-series and 3000 Series Processors
    Adding MENDOCINO, RAPHAEL Pro, PHOENIX Pro among others</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1712318400">- added preamble file for %kernel_module_package macro
- update to 1.97.1
  * added aarch64 support
  * upstream did not provide a summary changelog. Full list of commits:
    https://github.com/cyring/CoreFreq/compare/1.96.5...1.97.1</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715860800">- update to 1.97.2
  * [AMD]
  - [Hawk Point] Adding Ryzen PRO processors
  - [Phoenix] Adding the unlocked Ryzen 8000 Series
  * [Intel]
  - [MeteorLake] New bits specified
  - EEO and R2H bits inversion fix in MSR_POWER_CTL (0x1fc)
  - Reverse specification of MSR UNCORE_PERF_STATUS
  - Prefetchers fix of L1 Scrubbing, L1 Next Page and L2 AMP
  * [AArch64]
  - Providing Exclusive Load/Store to atomic operations
  - Improved asm of various macro functions
  - Removed LEGACY macros
  - Optimized the CORE_COUNT macros
  - Marked the Tools feature as nominal: Stress functions available
  - Allow user access to Retired Instructions counter
  - Fix Instructions counter overflow
  - Other PMC enhancements
  * [CR]
  - Fix a building issue with AlmaLinux aka RHEL-9
  - Linux kernel 6.9: Avoid redefinition of Intel MSR macros
  * [Doc]
  - README section for AlmaLinux
  - CONFIG_TRIM_UNUSED_KSYMS kernel build config is forbidden</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715947200">- fix dependency on kernel module that was not versioned</changelog>
</package>
<package pkgid="95f08356d78cf5bfc2464d22dabc362ac37dc1cb46bc11552bc8e3c5983dd8215f0b1b1d021a15b00c7908c61cb2995328354c99df4bb955885b8af53724019f" name="CoreFreq-debuginfo" arch="x86_64">
  <version epoch="0" ver="1.97.2" rel="2.4"/>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1655899200">- Update to version 1.91.3
  * No changelog was made available by upstream</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1661169600">- Update to version 1.91.6
  - [AMD/Zen][UMC] Fixed the Mem Clock and ECC regressions
  - Designate the Package identifier in Power consumed readings
  - [Intel/ADL/IMC] Guessing activated channel from the populated DIMM
  - [AMD][UMC, IOMMU] Adding missing DID of family 19h devices
  - [AMD_DataFabric_Cezanne] Removed the Experimental mode
  - Intel/ADL/IMC: Fixing the Memory Channels count
  - [AMD/Zen] Improved UMC mapping. Threadripper 3960X issue
  - Avoid some NULL pointer strings during SMBIOS decoding</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1667563200">- update to version 1.92.3
  - Export CPUID bits Intel Sierra Forest, Grand Ridge, Granite Rapids
    and completes AMD64 Fn0000_0007_ECX_x0
  - [Features] WBNOINVD and CLZERO instructions
  - Adding various Mitigation Mechanism aggregations:
    IPRED_DIS_U, IPRED_DIS_S, RRSBA_DIS_U, RRSBA_DIS_S, BHI_DIS_S, MCDT_NO
  - RDPID and UMIP capability fixed.
  - [AMD] Perf. Mon. version based on CPUID_0x80000022.EAX.PerfMonV2
  - [AMD][Zen3+][Rembrandt] Trigger UMC and IOMMU decoders
  - [AMD][Ryzen 5 6600H] Found voltage VID @ SMU 0x6f010 and 0x6f014
  - Introducing AMD Security Feature capabilities:
    SKINIT, SEV, GMET, SEV-ES, SEV-SNP
  - [AMD64] Non-architectural MSR: SPECULATIVE STORE BYPASS DISABLE
  - [Intel][2nd &amp; 3rd gen] Misc IMC optimizations
  - [AMD][Rembrandt] Provides Vcore from a new formula.
  - Dumping CPUID leaves from AMD64 Architecture Programmer’s Manual
  - [Intel][HSW &amp; BDW] Compute the DIMM banks
  - [UI] Re-assigned keys to move or resize windows.
  - [AMD][Zen] Uncore frequency: Improving the Memory Clock divisor
  - [Intel][HSW &amp; BDW][SKL] Make use of same function DimmWidthToRows
  - [AMD][Zen3+][Rembrandt] Provides the thermal sensor.
  - [AMD/Zen2 &amp; Zen3] Removed the HSMP capability.
  - [Intel][CML][RKL][TGL] Compute the DIMM Rows from CH_WIDTH
  - [AMD/EPYC] Adding the CPUID of Zen4 Genoa architecture
  - [AMD/Zen2] Introducing Mendocino architecture
  - Changed MeteorLake/N to CPUID 06_B5
  - [Intel] Computes BIOS DRAM frequency based on PLL_REF100
  - [Intel][SNB/IVB/HSW/BDW] Improved BIOS DRAM frequency
  - [Intel][SNB/IVB] DRAM frequency based on RAM_Select and FSB_Select
  - [Intel][IVB] IMC specifications and optimizations.
  - [Intel][SNB,IVB] Computes the DIMM A from DAS bit in MAD register
  - [Intel][SNB,IVB,HSW,BDW] Rolling back changes to the DIMM topology
  - [Intel][BDW][HSW] Query the IMC Power Down Mode
  - [Intel][IVB][SNB] Attempt to decode the IMC third timings
  - [AMD][Ryzen] Added AMD Ryzen 7 PRO 6860Z
  - [AMD][F17h-F19h] Can toggle ON and OFF the Instruction Cache Unit
  - [AMD] Checking the Ryzen "OEM Only" processors
  - [Intel] Specification of 12th Gen. MSR registers capability
  - [Intel] Adding Raptor Lake-S with CPUID 06_BF
  - [AMD] Introducing Zen 4 / Raphael architecture
  - [Intel][SNB,IVB,HSW] Attempt to assign the Rank per DIMM slot
  - [Intel][SNB,IVB,HSW] Attempt to fix the DIMM(s) topology layout
  - ClockSource: TSC udelay() asm implementation builtin as a default
  - [Intel][Alder Lake] Adding IMC entry for i5-12500 processor
  - [Intel][Alder Lake] Added default case if Processor has only Pcores
  - [Intel][Atom/Bonnell][IMC] Attempt to compute the DIMM geometry
  - [UI][Custom view] Show the Uncore unit in watt or joule
  - [UI] Display HWP or CPPC in footer for capable processors.
  - [CLI] Added HWP Capabilities and HWP Request to the JSON export
  - [CLI] Don't allow the HWP dialog box if feature is not available.
  - [CPPC][Firmware] allows (de)activation of the feature.
  - [CLI] Added CPU ratios to JSON export
  - [CPPC] Improved scaling
  - [CPPC] Build fixed down to Kernel version 3
  - [Kernel/ACPI] Attempt to write CPPC registers</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1667563201">- Repair deficient description grammar.</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1670241600">- update to 1.92.4:
  * [Intel/Skylake-X] Permits MSR_RING_PERF_LIMIT_REASONS</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1670932800">- removed modprobe_corefreqd.service.patch and harden_corefreqd.service.patch
  now included in new corefreqd.service file replacing stock one
- update to 1.93.1
  * [PRJ] CoreFreq version 1.93.1
  * [ACPI/CPPC/EPP] Preview of AMD/Zen Energy Preference (CONFIG_CACHY)
  * [UI] Changed the HWP or CPPC ratio bounds.
  * [FIX] Putting `corefreqd` in the root cgroup (issue #379) Thanks to gel-crabs
  * [DOC] Parameters to blacklist the amd_pstate since kernel 6.0.11
  * [AMD][Zen4] Apply a voltage formula based on Rembrandt's. (#378)
  * [AMD][Zen4/Raphael] Attempting temperature per CCD from TCTL+0x308
  * [AMD][Zen4] Changed Timer loop
  * [CR] CLI code review and UI optimizations
  * [UI] Auto refresh the Topology items when off/online
  * [CR] Conditionally build with additional PMC Counters
  * [Intel] Adding Z8000 System Memory Controller Registers
  * [CR] Transformed global variable in cells padding
  * [UI] Windows re-scaling fix
  * [UI] Apply color theming to the CPPC capabilities list.
  * [AMD][Raphael] Adding device DIDs to probe UMC and IOMMU
  * [CPPC/FMW] Computes value bounds while Enabling/Disabling firmware
  * [CR] CPPC lib errors are now raised to Debug level
  * [AMD][Zen4] Increased the UMC size to 12 channels.
  * [CPPC] Handles the OffLine CPU case.
  * [CLI] Refactoring HWP/CPPC to print all capabilities per CPU
  * [ACPI] Computes the CPPC Bounds
  * [Intel] Linear Address Masking (LAM)
  * [CLI] EFER: Left aligned labels
  * [AMD] Reports UAIE and AIBRSE bits from EFER system register
  * [CLI] Changed mitigation mechanisms incapability labels
  * [AMD][Zen2] Mitigation Mechanism BTC-NOBR * ACPI/OSPM documentation
  * [CR] Code review on bit masks
  * [CPPC][ACPI] Kernel may decode the Guaranteed Performance Register
  * [UI] Optimize the cycles to clear the time bar.
  * [CR] Code review for extra compiler warnings
  * [UI] Time of the day displayed in the right side of menu
  * [UI] Display the current date and time in menu bar
  * [Kernel] Introducing support of `CONFIG_SCHED_BORE`
  * [CLI] Fixing ambiguous CPPC report: hardware vs firmware
  * [CLI] Surrounds _CPC feature with square brackets
  * [CPPC] Provides the ACPI _CPC object state.
  * [UI] Colors the task being tracked in the tracking list
  * [UI] Display the current time in the menu bar
  * [CLI] Reserve the programmable TDP section to Intel processors.
  * [AMD/Zen3+] Improving the DIMM geometry of Rembrandt UMC</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1672747200">- update to 1.94.1:
  * [Intel] Gemini Lake
  * [AMD] Ryzen 5 6600 H SoC, UMC channels
  * [AMD] Rembrandt: maximum of two UMC channels
  * [AMD] Raphael: Decodes DIMM geometry from AddrCfg
  * [AMD] Zen: Aggregation refactored
  * [AMD] Improved DDR5 clock decoding
  * Optimized Idle Loop</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1673006400">- update to 1.94.3:
  * [AMD][RMB] If UMC is quad channels then unpopulate odd channels
  * [AMD][RPL] Provide Service Processor Vcore as workaround
  * [UI] Auto size and lay performance capabilities window
  * [UI] Adding comments to the EEO and R2H technologies
  * [AMD][Raphael] 7950X3D, 7900X3D. support</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1674475200">- update to 1.95.1:
  * [Intel] RPL: voltage of Pcore, Ecore, System Agent
  * [Intel] RPL and ADL Chipset device IDs
  * [Intel] Decode the RPL IMC and improve DDR5 support
  * [Build] Raise `MAX_FREQ_HZ` up to 7125000000 Hertz
  * [Intel] Mobile {Coffee Lake, Kaby Lake} codenames
  * [Intel] Braswell codename detection
  * [AMD] SYSCFG Register
  * [AMD] EPYC 9654
  * [AMD] Transparent SME
  * [AMD] DRAM Data Scrambling
  * [AMD] Adding "Barcelo R" and "Rembrandt R"</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1675944000">- update to 1.95.2:
  * Fixed the aggregation of the minimum ratio
  Intel:
  * [Airmont][Silvermont] Attempt to decode `tCKE` from DRMC
    register
  * [Airmont] Improve `tWTPr`, `B2B`, `tWWDR` timings
  * [Airmont] Provide a new IMC decoder
  * Add the Emerald Rapids architecture entry
  * [DDR5][DDR4] Add the `RCDw` IMC timing
  * [Raptor Lake ] De-activate the MSR Uncore counter
  AMD:
  * "Zen3/Barcelo-R" and "Zen3+ Rembrandt-R" codenames
  * [Zen] Thermal highest limit reset fix
  Misc:
  * Code review and Registers documentation:
    AMD HWCR, Intel HDC and DRP</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677067200">- update to 1.95.4
  * [Intel] [from 11th to 14th gen]
    Convert the DRAM Speed to MT/s unit
    Compute the Bus Rate based on the BIOS MC PLL
- update to 1.95.3
  * [Intel] [Airmont]
    Improved the IMC geometry
    Introducing the Spreadtrum architecture
    Fixed the Bus and DRAM frequency rates
  * [Intel] [from 11th to 13th gen] Attempt to probe the interleaved controllers
  * [Intel] [Alder Lake/H] Attempt to decode the TCO Watchdog</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677153600">- added leap_compile_fix.patch to fix compilation on Leap</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1683115200">- removed leap_compile_fix.patch no needed anymore
- update to 1.96.0
  * [AMD]
    [RPL/X3D] Disabling the turbo boosted P-states change
    [PHOENIX] Adding Z1, U and HS PRO series.
    [Genoa] DAC address at UMC BAR + 0x40
    [Zen4] Adding the PCI entries of Genoa
    [Zen2] Adding remaining PCI entries
    [Zen] Query DAC &amp; CFG with the right UMC base address register
    [Zen4] Dump the CPUID Extended CPU Topology leaves.
    [Zen][Embedded][Banded Kestrel] R1000 Processor Family
    [Zen][Embedded] "Great Horned Owl", "River Hawk", "Grey Hawk"
    Complete the "Raven Ridge" and "Picasso" lists
    [EPYC] Moved "Snowy Owl" Embedded processors to CPUID 8F_01
    [Zen4] introducing Phoenix and Dragon Range
    [RMB] adding the Ryzen Embedded V3000 processors
    [VMR] adding the "AMD Ryzen 9 PRO 5945"
  * [Intel]
    Adding Granite Rapids, Sierra Forest, Grand Ridge entries
    Adding "Lunar Lake" and "Arrow Lake" entries.
  * [UI]
    Optimized decimal to digits converter
    Allow task tracker to select up to pid_max
    Can trace the frozen states of Linux tasks.
    Only print HWP frequencies within bounds.
    Fix ruler's aggregation.
  * [CR]
    Check CPUID[HV_PARTITION_PRIVILEGE_MASK] for HV_X64_MSR_VP_RUNTIME
    Uninitialized variable fix.
    [CPPC] Build EPP with KERNEL_VERSION(6) rather than CONFIG_CACHY
    [KERNEL] Linux 6.3: Employ modifier calls with the vma-&gt;vm_flags</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1684065600">- update to 1.96.1
  * [Driver]
  - Postpone Clock Source registration during startup until the Base Clock is computed.
  - Change class_create() according to Linux Kernel 6.4
  - Clear interrupt flag (cli) after Halt in the Idle method
  * [AMD]
  - [PHOENIX] Adding Ryzen 7940H, 7840H, 7640H
  - [VERMEER] Adding Ryzen PRO and Embedded processors
  - Ryzen Z1 CPUID' brand fix
  - Adding EPYC Embedded 9004 Series as Genoa
  - Adding EPYC Embedded 7003 Series as Milan
  - Adding EPYC Embedded 7002 Series as Rome
  - Adding EPYC Embedded 7001 Series as Naples</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1685880000">- update to 1.96.2
  * [Driver]
  - Allows compilation to keep going without CONFIG_ACPI_CPPC_LIB
  * [Client]
  - Adding two command line arguments:
  - Op Show Package C-States
  - OW Toggle Energy units
  * [AMD]
  - Specification of some Configuration MSRs</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1686830400">- update to 1.96.4
  * [AMD]
  - Display CPUID state of new and legacy features:
    Fused Multiply Add [FMA4]
    Extended Operation Support [XOP]
    Translation Cache Extension [TCE]
    Trailing Bit Manipulation [TBM]
    OS Visible Work-around [OSVW]
    LOCK prefix to read CR8 [AltMov]
  * [Intel]
  - Advanced Matrix Extensions [AMX]
  - Bits and Features of Sierra Forest and Grand Ridge
  - Attempt to decode the Meteor Lake Memory Controller
- update to 1.96.3
  * [AMD]
  - [Zeppelin] Probe more than one UMC controllers on Ryzen Threadripper 1900X
  - [Zen4] Dump SMBE and BMEC sub-leaves of CPUID 0x80000020</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1688212800">- update to 1.96.5
  * [AMD]
    Adding the "AMD Ryzen 5 5600X3D"
    Introducing the Zen4c Bergamo architecture
    Specs fixing of Embedded V-series and 3000 Series Processors
    Adding MENDOCINO, RAPHAEL Pro, PHOENIX Pro among others</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1712318400">- added preamble file for %kernel_module_package macro
- update to 1.97.1
  * added aarch64 support
  * upstream did not provide a summary changelog. Full list of commits:
    https://github.com/cyring/CoreFreq/compare/1.96.5...1.97.1</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715860800">- update to 1.97.2
  * [AMD]
  - [Hawk Point] Adding Ryzen PRO processors
  - [Phoenix] Adding the unlocked Ryzen 8000 Series
  * [Intel]
  - [MeteorLake] New bits specified
  - EEO and R2H bits inversion fix in MSR_POWER_CTL (0x1fc)
  - Reverse specification of MSR UNCORE_PERF_STATUS
  - Prefetchers fix of L1 Scrubbing, L1 Next Page and L2 AMP
  * [AArch64]
  - Providing Exclusive Load/Store to atomic operations
  - Improved asm of various macro functions
  - Removed LEGACY macros
  - Optimized the CORE_COUNT macros
  - Marked the Tools feature as nominal: Stress functions available
  - Allow user access to Retired Instructions counter
  - Fix Instructions counter overflow
  - Other PMC enhancements
  * [CR]
  - Fix a building issue with AlmaLinux aka RHEL-9
  - Linux kernel 6.9: Avoid redefinition of Intel MSR macros
  * [Doc]
  - README section for AlmaLinux
  - CONFIG_TRIM_UNUSED_KSYMS kernel build config is forbidden</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715947200">- fix dependency on kernel module that was not versioned</changelog>
</package>
<package pkgid="09cdea595a1f64e348f6c6dbfd8902c1ea9dcd80bf186fb593f24d596fed7aa779f4e416b089a5aa8612be1a67683c3a8404128036e652fd9b197368e89e5a6d" name="CoreFreq-debuginfo" arch="x86_64">
  <version epoch="0" ver="1.97.2" rel="2.5"/>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1655899200">- Update to version 1.91.3
  * No changelog was made available by upstream</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1661169600">- Update to version 1.91.6
  - [AMD/Zen][UMC] Fixed the Mem Clock and ECC regressions
  - Designate the Package identifier in Power consumed readings
  - [Intel/ADL/IMC] Guessing activated channel from the populated DIMM
  - [AMD][UMC, IOMMU] Adding missing DID of family 19h devices
  - [AMD_DataFabric_Cezanne] Removed the Experimental mode
  - Intel/ADL/IMC: Fixing the Memory Channels count
  - [AMD/Zen] Improved UMC mapping. Threadripper 3960X issue
  - Avoid some NULL pointer strings during SMBIOS decoding</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1667563200">- update to version 1.92.3
  - Export CPUID bits Intel Sierra Forest, Grand Ridge, Granite Rapids
    and completes AMD64 Fn0000_0007_ECX_x0
  - [Features] WBNOINVD and CLZERO instructions
  - Adding various Mitigation Mechanism aggregations:
    IPRED_DIS_U, IPRED_DIS_S, RRSBA_DIS_U, RRSBA_DIS_S, BHI_DIS_S, MCDT_NO
  - RDPID and UMIP capability fixed.
  - [AMD] Perf. Mon. version based on CPUID_0x80000022.EAX.PerfMonV2
  - [AMD][Zen3+][Rembrandt] Trigger UMC and IOMMU decoders
  - [AMD][Ryzen 5 6600H] Found voltage VID @ SMU 0x6f010 and 0x6f014
  - Introducing AMD Security Feature capabilities:
    SKINIT, SEV, GMET, SEV-ES, SEV-SNP
  - [AMD64] Non-architectural MSR: SPECULATIVE STORE BYPASS DISABLE
  - [Intel][2nd &amp; 3rd gen] Misc IMC optimizations
  - [AMD][Rembrandt] Provides Vcore from a new formula.
  - Dumping CPUID leaves from AMD64 Architecture Programmer’s Manual
  - [Intel][HSW &amp; BDW] Compute the DIMM banks
  - [UI] Re-assigned keys to move or resize windows.
  - [AMD][Zen] Uncore frequency: Improving the Memory Clock divisor
  - [Intel][HSW &amp; BDW][SKL] Make use of same function DimmWidthToRows
  - [AMD][Zen3+][Rembrandt] Provides the thermal sensor.
  - [AMD/Zen2 &amp; Zen3] Removed the HSMP capability.
  - [Intel][CML][RKL][TGL] Compute the DIMM Rows from CH_WIDTH
  - [AMD/EPYC] Adding the CPUID of Zen4 Genoa architecture
  - [AMD/Zen2] Introducing Mendocino architecture
  - Changed MeteorLake/N to CPUID 06_B5
  - [Intel] Computes BIOS DRAM frequency based on PLL_REF100
  - [Intel][SNB/IVB/HSW/BDW] Improved BIOS DRAM frequency
  - [Intel][SNB/IVB] DRAM frequency based on RAM_Select and FSB_Select
  - [Intel][IVB] IMC specifications and optimizations.
  - [Intel][SNB,IVB] Computes the DIMM A from DAS bit in MAD register
  - [Intel][SNB,IVB,HSW,BDW] Rolling back changes to the DIMM topology
  - [Intel][BDW][HSW] Query the IMC Power Down Mode
  - [Intel][IVB][SNB] Attempt to decode the IMC third timings
  - [AMD][Ryzen] Added AMD Ryzen 7 PRO 6860Z
  - [AMD][F17h-F19h] Can toggle ON and OFF the Instruction Cache Unit
  - [AMD] Checking the Ryzen "OEM Only" processors
  - [Intel] Specification of 12th Gen. MSR registers capability
  - [Intel] Adding Raptor Lake-S with CPUID 06_BF
  - [AMD] Introducing Zen 4 / Raphael architecture
  - [Intel][SNB,IVB,HSW] Attempt to assign the Rank per DIMM slot
  - [Intel][SNB,IVB,HSW] Attempt to fix the DIMM(s) topology layout
  - ClockSource: TSC udelay() asm implementation builtin as a default
  - [Intel][Alder Lake] Adding IMC entry for i5-12500 processor
  - [Intel][Alder Lake] Added default case if Processor has only Pcores
  - [Intel][Atom/Bonnell][IMC] Attempt to compute the DIMM geometry
  - [UI][Custom view] Show the Uncore unit in watt or joule
  - [UI] Display HWP or CPPC in footer for capable processors.
  - [CLI] Added HWP Capabilities and HWP Request to the JSON export
  - [CLI] Don't allow the HWP dialog box if feature is not available.
  - [CPPC][Firmware] allows (de)activation of the feature.
  - [CLI] Added CPU ratios to JSON export
  - [CPPC] Improved scaling
  - [CPPC] Build fixed down to Kernel version 3
  - [Kernel/ACPI] Attempt to write CPPC registers</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1667563201">- Repair deficient description grammar.</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1670241600">- update to 1.92.4:
  * [Intel/Skylake-X] Permits MSR_RING_PERF_LIMIT_REASONS</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1670932800">- removed modprobe_corefreqd.service.patch and harden_corefreqd.service.patch
  now included in new corefreqd.service file replacing stock one
- update to 1.93.1
  * [PRJ] CoreFreq version 1.93.1
  * [ACPI/CPPC/EPP] Preview of AMD/Zen Energy Preference (CONFIG_CACHY)
  * [UI] Changed the HWP or CPPC ratio bounds.
  * [FIX] Putting `corefreqd` in the root cgroup (issue #379) Thanks to gel-crabs
  * [DOC] Parameters to blacklist the amd_pstate since kernel 6.0.11
  * [AMD][Zen4] Apply a voltage formula based on Rembrandt's. (#378)
  * [AMD][Zen4/Raphael] Attempting temperature per CCD from TCTL+0x308
  * [AMD][Zen4] Changed Timer loop
  * [CR] CLI code review and UI optimizations
  * [UI] Auto refresh the Topology items when off/online
  * [CR] Conditionally build with additional PMC Counters
  * [Intel] Adding Z8000 System Memory Controller Registers
  * [CR] Transformed global variable in cells padding
  * [UI] Windows re-scaling fix
  * [UI] Apply color theming to the CPPC capabilities list.
  * [AMD][Raphael] Adding device DIDs to probe UMC and IOMMU
  * [CPPC/FMW] Computes value bounds while Enabling/Disabling firmware
  * [CR] CPPC lib errors are now raised to Debug level
  * [AMD][Zen4] Increased the UMC size to 12 channels.
  * [CPPC] Handles the OffLine CPU case.
  * [CLI] Refactoring HWP/CPPC to print all capabilities per CPU
  * [ACPI] Computes the CPPC Bounds
  * [Intel] Linear Address Masking (LAM)
  * [CLI] EFER: Left aligned labels
  * [AMD] Reports UAIE and AIBRSE bits from EFER system register
  * [CLI] Changed mitigation mechanisms incapability labels
  * [AMD][Zen2] Mitigation Mechanism BTC-NOBR * ACPI/OSPM documentation
  * [CR] Code review on bit masks
  * [CPPC][ACPI] Kernel may decode the Guaranteed Performance Register
  * [UI] Optimize the cycles to clear the time bar.
  * [CR] Code review for extra compiler warnings
  * [UI] Time of the day displayed in the right side of menu
  * [UI] Display the current date and time in menu bar
  * [Kernel] Introducing support of `CONFIG_SCHED_BORE`
  * [CLI] Fixing ambiguous CPPC report: hardware vs firmware
  * [CLI] Surrounds _CPC feature with square brackets
  * [CPPC] Provides the ACPI _CPC object state.
  * [UI] Colors the task being tracked in the tracking list
  * [UI] Display the current time in the menu bar
  * [CLI] Reserve the programmable TDP section to Intel processors.
  * [AMD/Zen3+] Improving the DIMM geometry of Rembrandt UMC</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1672747200">- update to 1.94.1:
  * [Intel] Gemini Lake
  * [AMD] Ryzen 5 6600 H SoC, UMC channels
  * [AMD] Rembrandt: maximum of two UMC channels
  * [AMD] Raphael: Decodes DIMM geometry from AddrCfg
  * [AMD] Zen: Aggregation refactored
  * [AMD] Improved DDR5 clock decoding
  * Optimized Idle Loop</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1673006400">- update to 1.94.3:
  * [AMD][RMB] If UMC is quad channels then unpopulate odd channels
  * [AMD][RPL] Provide Service Processor Vcore as workaround
  * [UI] Auto size and lay performance capabilities window
  * [UI] Adding comments to the EEO and R2H technologies
  * [AMD][Raphael] 7950X3D, 7900X3D. support</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1674475200">- update to 1.95.1:
  * [Intel] RPL: voltage of Pcore, Ecore, System Agent
  * [Intel] RPL and ADL Chipset device IDs
  * [Intel] Decode the RPL IMC and improve DDR5 support
  * [Build] Raise `MAX_FREQ_HZ` up to 7125000000 Hertz
  * [Intel] Mobile {Coffee Lake, Kaby Lake} codenames
  * [Intel] Braswell codename detection
  * [AMD] SYSCFG Register
  * [AMD] EPYC 9654
  * [AMD] Transparent SME
  * [AMD] DRAM Data Scrambling
  * [AMD] Adding "Barcelo R" and "Rembrandt R"</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1675944000">- update to 1.95.2:
  * Fixed the aggregation of the minimum ratio
  Intel:
  * [Airmont][Silvermont] Attempt to decode `tCKE` from DRMC
    register
  * [Airmont] Improve `tWTPr`, `B2B`, `tWWDR` timings
  * [Airmont] Provide a new IMC decoder
  * Add the Emerald Rapids architecture entry
  * [DDR5][DDR4] Add the `RCDw` IMC timing
  * [Raptor Lake ] De-activate the MSR Uncore counter
  AMD:
  * "Zen3/Barcelo-R" and "Zen3+ Rembrandt-R" codenames
  * [Zen] Thermal highest limit reset fix
  Misc:
  * Code review and Registers documentation:
    AMD HWCR, Intel HDC and DRP</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677067200">- update to 1.95.4
  * [Intel] [from 11th to 14th gen]
    Convert the DRAM Speed to MT/s unit
    Compute the Bus Rate based on the BIOS MC PLL
- update to 1.95.3
  * [Intel] [Airmont]
    Improved the IMC geometry
    Introducing the Spreadtrum architecture
    Fixed the Bus and DRAM frequency rates
  * [Intel] [from 11th to 13th gen] Attempt to probe the interleaved controllers
  * [Intel] [Alder Lake/H] Attempt to decode the TCO Watchdog</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677153600">- added leap_compile_fix.patch to fix compilation on Leap</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1683115200">- removed leap_compile_fix.patch no needed anymore
- update to 1.96.0
  * [AMD]
    [RPL/X3D] Disabling the turbo boosted P-states change
    [PHOENIX] Adding Z1, U and HS PRO series.
    [Genoa] DAC address at UMC BAR + 0x40
    [Zen4] Adding the PCI entries of Genoa
    [Zen2] Adding remaining PCI entries
    [Zen] Query DAC &amp; CFG with the right UMC base address register
    [Zen4] Dump the CPUID Extended CPU Topology leaves.
    [Zen][Embedded][Banded Kestrel] R1000 Processor Family
    [Zen][Embedded] "Great Horned Owl", "River Hawk", "Grey Hawk"
    Complete the "Raven Ridge" and "Picasso" lists
    [EPYC] Moved "Snowy Owl" Embedded processors to CPUID 8F_01
    [Zen4] introducing Phoenix and Dragon Range
    [RMB] adding the Ryzen Embedded V3000 processors
    [VMR] adding the "AMD Ryzen 9 PRO 5945"
  * [Intel]
    Adding Granite Rapids, Sierra Forest, Grand Ridge entries
    Adding "Lunar Lake" and "Arrow Lake" entries.
  * [UI]
    Optimized decimal to digits converter
    Allow task tracker to select up to pid_max
    Can trace the frozen states of Linux tasks.
    Only print HWP frequencies within bounds.
    Fix ruler's aggregation.
  * [CR]
    Check CPUID[HV_PARTITION_PRIVILEGE_MASK] for HV_X64_MSR_VP_RUNTIME
    Uninitialized variable fix.
    [CPPC] Build EPP with KERNEL_VERSION(6) rather than CONFIG_CACHY
    [KERNEL] Linux 6.3: Employ modifier calls with the vma-&gt;vm_flags</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1684065600">- update to 1.96.1
  * [Driver]
  - Postpone Clock Source registration during startup until the Base Clock is computed.
  - Change class_create() according to Linux Kernel 6.4
  - Clear interrupt flag (cli) after Halt in the Idle method
  * [AMD]
  - [PHOENIX] Adding Ryzen 7940H, 7840H, 7640H
  - [VERMEER] Adding Ryzen PRO and Embedded processors
  - Ryzen Z1 CPUID' brand fix
  - Adding EPYC Embedded 9004 Series as Genoa
  - Adding EPYC Embedded 7003 Series as Milan
  - Adding EPYC Embedded 7002 Series as Rome
  - Adding EPYC Embedded 7001 Series as Naples</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1685880000">- update to 1.96.2
  * [Driver]
  - Allows compilation to keep going without CONFIG_ACPI_CPPC_LIB
  * [Client]
  - Adding two command line arguments:
  - Op Show Package C-States
  - OW Toggle Energy units
  * [AMD]
  - Specification of some Configuration MSRs</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1686830400">- update to 1.96.4
  * [AMD]
  - Display CPUID state of new and legacy features:
    Fused Multiply Add [FMA4]
    Extended Operation Support [XOP]
    Translation Cache Extension [TCE]
    Trailing Bit Manipulation [TBM]
    OS Visible Work-around [OSVW]
    LOCK prefix to read CR8 [AltMov]
  * [Intel]
  - Advanced Matrix Extensions [AMX]
  - Bits and Features of Sierra Forest and Grand Ridge
  - Attempt to decode the Meteor Lake Memory Controller
- update to 1.96.3
  * [AMD]
  - [Zeppelin] Probe more than one UMC controllers on Ryzen Threadripper 1900X
  - [Zen4] Dump SMBE and BMEC sub-leaves of CPUID 0x80000020</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1688212800">- update to 1.96.5
  * [AMD]
    Adding the "AMD Ryzen 5 5600X3D"
    Introducing the Zen4c Bergamo architecture
    Specs fixing of Embedded V-series and 3000 Series Processors
    Adding MENDOCINO, RAPHAEL Pro, PHOENIX Pro among others</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1712318400">- added preamble file for %kernel_module_package macro
- update to 1.97.1
  * added aarch64 support
  * upstream did not provide a summary changelog. Full list of commits:
    https://github.com/cyring/CoreFreq/compare/1.96.5...1.97.1</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715860800">- update to 1.97.2
  * [AMD]
  - [Hawk Point] Adding Ryzen PRO processors
  - [Phoenix] Adding the unlocked Ryzen 8000 Series
  * [Intel]
  - [MeteorLake] New bits specified
  - EEO and R2H bits inversion fix in MSR_POWER_CTL (0x1fc)
  - Reverse specification of MSR UNCORE_PERF_STATUS
  - Prefetchers fix of L1 Scrubbing, L1 Next Page and L2 AMP
  * [AArch64]
  - Providing Exclusive Load/Store to atomic operations
  - Improved asm of various macro functions
  - Removed LEGACY macros
  - Optimized the CORE_COUNT macros
  - Marked the Tools feature as nominal: Stress functions available
  - Allow user access to Retired Instructions counter
  - Fix Instructions counter overflow
  - Other PMC enhancements
  * [CR]
  - Fix a building issue with AlmaLinux aka RHEL-9
  - Linux kernel 6.9: Avoid redefinition of Intel MSR macros
  * [Doc]
  - README section for AlmaLinux
  - CONFIG_TRIM_UNUSED_KSYMS kernel build config is forbidden</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715947200">- fix dependency on kernel module that was not versioned</changelog>
</package>
<package pkgid="1c124c9524d3b8f335a9de70aa561263ef887c05409111d9433aebedc5efa1de7e5a560da4f396c0adc3218eccc50f0700661be836a5bf31f60d83d2ef227fea" name="CoreFreq-debuginfo" arch="x86_64">
  <version epoch="0" ver="1.98.1" rel="1.1"/>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1667563200">- update to version 1.92.3
  - Export CPUID bits Intel Sierra Forest, Grand Ridge, Granite Rapids
    and completes AMD64 Fn0000_0007_ECX_x0
  - [Features] WBNOINVD and CLZERO instructions
  - Adding various Mitigation Mechanism aggregations:
    IPRED_DIS_U, IPRED_DIS_S, RRSBA_DIS_U, RRSBA_DIS_S, BHI_DIS_S, MCDT_NO
  - RDPID and UMIP capability fixed.
  - [AMD] Perf. Mon. version based on CPUID_0x80000022.EAX.PerfMonV2
  - [AMD][Zen3+][Rembrandt] Trigger UMC and IOMMU decoders
  - [AMD][Ryzen 5 6600H] Found voltage VID @ SMU 0x6f010 and 0x6f014
  - Introducing AMD Security Feature capabilities:
    SKINIT, SEV, GMET, SEV-ES, SEV-SNP
  - [AMD64] Non-architectural MSR: SPECULATIVE STORE BYPASS DISABLE
  - [Intel][2nd &amp; 3rd gen] Misc IMC optimizations
  - [AMD][Rembrandt] Provides Vcore from a new formula.
  - Dumping CPUID leaves from AMD64 Architecture Programmer’s Manual
  - [Intel][HSW &amp; BDW] Compute the DIMM banks
  - [UI] Re-assigned keys to move or resize windows.
  - [AMD][Zen] Uncore frequency: Improving the Memory Clock divisor
  - [Intel][HSW &amp; BDW][SKL] Make use of same function DimmWidthToRows
  - [AMD][Zen3+][Rembrandt] Provides the thermal sensor.
  - [AMD/Zen2 &amp; Zen3] Removed the HSMP capability.
  - [Intel][CML][RKL][TGL] Compute the DIMM Rows from CH_WIDTH
  - [AMD/EPYC] Adding the CPUID of Zen4 Genoa architecture
  - [AMD/Zen2] Introducing Mendocino architecture
  - Changed MeteorLake/N to CPUID 06_B5
  - [Intel] Computes BIOS DRAM frequency based on PLL_REF100
  - [Intel][SNB/IVB/HSW/BDW] Improved BIOS DRAM frequency
  - [Intel][SNB/IVB] DRAM frequency based on RAM_Select and FSB_Select
  - [Intel][IVB] IMC specifications and optimizations.
  - [Intel][SNB,IVB] Computes the DIMM A from DAS bit in MAD register
  - [Intel][SNB,IVB,HSW,BDW] Rolling back changes to the DIMM topology
  - [Intel][BDW][HSW] Query the IMC Power Down Mode
  - [Intel][IVB][SNB] Attempt to decode the IMC third timings
  - [AMD][Ryzen] Added AMD Ryzen 7 PRO 6860Z
  - [AMD][F17h-F19h] Can toggle ON and OFF the Instruction Cache Unit
  - [AMD] Checking the Ryzen "OEM Only" processors
  - [Intel] Specification of 12th Gen. MSR registers capability
  - [Intel] Adding Raptor Lake-S with CPUID 06_BF
  - [AMD] Introducing Zen 4 / Raphael architecture
  - [Intel][SNB,IVB,HSW] Attempt to assign the Rank per DIMM slot
  - [Intel][SNB,IVB,HSW] Attempt to fix the DIMM(s) topology layout
  - ClockSource: TSC udelay() asm implementation builtin as a default
  - [Intel][Alder Lake] Adding IMC entry for i5-12500 processor
  - [Intel][Alder Lake] Added default case if Processor has only Pcores
  - [Intel][Atom/Bonnell][IMC] Attempt to compute the DIMM geometry
  - [UI][Custom view] Show the Uncore unit in watt or joule
  - [UI] Display HWP or CPPC in footer for capable processors.
  - [CLI] Added HWP Capabilities and HWP Request to the JSON export
  - [CLI] Don't allow the HWP dialog box if feature is not available.
  - [CPPC][Firmware] allows (de)activation of the feature.
  - [CLI] Added CPU ratios to JSON export
  - [CPPC] Improved scaling
  - [CPPC] Build fixed down to Kernel version 3
  - [Kernel/ACPI] Attempt to write CPPC registers</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1667563201">- Repair deficient description grammar.</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1670241600">- update to 1.92.4:
  * [Intel/Skylake-X] Permits MSR_RING_PERF_LIMIT_REASONS</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1670932800">- removed modprobe_corefreqd.service.patch and harden_corefreqd.service.patch
  now included in new corefreqd.service file replacing stock one
- update to 1.93.1
  * [PRJ] CoreFreq version 1.93.1
  * [ACPI/CPPC/EPP] Preview of AMD/Zen Energy Preference (CONFIG_CACHY)
  * [UI] Changed the HWP or CPPC ratio bounds.
  * [FIX] Putting `corefreqd` in the root cgroup (issue #379) Thanks to gel-crabs
  * [DOC] Parameters to blacklist the amd_pstate since kernel 6.0.11
  * [AMD][Zen4] Apply a voltage formula based on Rembrandt's. (#378)
  * [AMD][Zen4/Raphael] Attempting temperature per CCD from TCTL+0x308
  * [AMD][Zen4] Changed Timer loop
  * [CR] CLI code review and UI optimizations
  * [UI] Auto refresh the Topology items when off/online
  * [CR] Conditionally build with additional PMC Counters
  * [Intel] Adding Z8000 System Memory Controller Registers
  * [CR] Transformed global variable in cells padding
  * [UI] Windows re-scaling fix
  * [UI] Apply color theming to the CPPC capabilities list.
  * [AMD][Raphael] Adding device DIDs to probe UMC and IOMMU
  * [CPPC/FMW] Computes value bounds while Enabling/Disabling firmware
  * [CR] CPPC lib errors are now raised to Debug level
  * [AMD][Zen4] Increased the UMC size to 12 channels.
  * [CPPC] Handles the OffLine CPU case.
  * [CLI] Refactoring HWP/CPPC to print all capabilities per CPU
  * [ACPI] Computes the CPPC Bounds
  * [Intel] Linear Address Masking (LAM)
  * [CLI] EFER: Left aligned labels
  * [AMD] Reports UAIE and AIBRSE bits from EFER system register
  * [CLI] Changed mitigation mechanisms incapability labels
  * [AMD][Zen2] Mitigation Mechanism BTC-NOBR * ACPI/OSPM documentation
  * [CR] Code review on bit masks
  * [CPPC][ACPI] Kernel may decode the Guaranteed Performance Register
  * [UI] Optimize the cycles to clear the time bar.
  * [CR] Code review for extra compiler warnings
  * [UI] Time of the day displayed in the right side of menu
  * [UI] Display the current date and time in menu bar
  * [Kernel] Introducing support of `CONFIG_SCHED_BORE`
  * [CLI] Fixing ambiguous CPPC report: hardware vs firmware
  * [CLI] Surrounds _CPC feature with square brackets
  * [CPPC] Provides the ACPI _CPC object state.
  * [UI] Colors the task being tracked in the tracking list
  * [UI] Display the current time in the menu bar
  * [CLI] Reserve the programmable TDP section to Intel processors.
  * [AMD/Zen3+] Improving the DIMM geometry of Rembrandt UMC</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1672747200">- update to 1.94.1:
  * [Intel] Gemini Lake
  * [AMD] Ryzen 5 6600 H SoC, UMC channels
  * [AMD] Rembrandt: maximum of two UMC channels
  * [AMD] Raphael: Decodes DIMM geometry from AddrCfg
  * [AMD] Zen: Aggregation refactored
  * [AMD] Improved DDR5 clock decoding
  * Optimized Idle Loop</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1673006400">- update to 1.94.3:
  * [AMD][RMB] If UMC is quad channels then unpopulate odd channels
  * [AMD][RPL] Provide Service Processor Vcore as workaround
  * [UI] Auto size and lay performance capabilities window
  * [UI] Adding comments to the EEO and R2H technologies
  * [AMD][Raphael] 7950X3D, 7900X3D. support</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1674475200">- update to 1.95.1:
  * [Intel] RPL: voltage of Pcore, Ecore, System Agent
  * [Intel] RPL and ADL Chipset device IDs
  * [Intel] Decode the RPL IMC and improve DDR5 support
  * [Build] Raise `MAX_FREQ_HZ` up to 7125000000 Hertz
  * [Intel] Mobile {Coffee Lake, Kaby Lake} codenames
  * [Intel] Braswell codename detection
  * [AMD] SYSCFG Register
  * [AMD] EPYC 9654
  * [AMD] Transparent SME
  * [AMD] DRAM Data Scrambling
  * [AMD] Adding "Barcelo R" and "Rembrandt R"</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1675944000">- update to 1.95.2:
  * Fixed the aggregation of the minimum ratio
  Intel:
  * [Airmont][Silvermont] Attempt to decode `tCKE` from DRMC
    register
  * [Airmont] Improve `tWTPr`, `B2B`, `tWWDR` timings
  * [Airmont] Provide a new IMC decoder
  * Add the Emerald Rapids architecture entry
  * [DDR5][DDR4] Add the `RCDw` IMC timing
  * [Raptor Lake ] De-activate the MSR Uncore counter
  AMD:
  * "Zen3/Barcelo-R" and "Zen3+ Rembrandt-R" codenames
  * [Zen] Thermal highest limit reset fix
  Misc:
  * Code review and Registers documentation:
    AMD HWCR, Intel HDC and DRP</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677067200">- update to 1.95.4
  * [Intel] [from 11th to 14th gen]
    Convert the DRAM Speed to MT/s unit
    Compute the Bus Rate based on the BIOS MC PLL
- update to 1.95.3
  * [Intel] [Airmont]
    Improved the IMC geometry
    Introducing the Spreadtrum architecture
    Fixed the Bus and DRAM frequency rates
  * [Intel] [from 11th to 13th gen] Attempt to probe the interleaved controllers
  * [Intel] [Alder Lake/H] Attempt to decode the TCO Watchdog</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677153600">- added leap_compile_fix.patch to fix compilation on Leap</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1683115200">- removed leap_compile_fix.patch no needed anymore
- update to 1.96.0
  * [AMD]
    [RPL/X3D] Disabling the turbo boosted P-states change
    [PHOENIX] Adding Z1, U and HS PRO series.
    [Genoa] DAC address at UMC BAR + 0x40
    [Zen4] Adding the PCI entries of Genoa
    [Zen2] Adding remaining PCI entries
    [Zen] Query DAC &amp; CFG with the right UMC base address register
    [Zen4] Dump the CPUID Extended CPU Topology leaves.
    [Zen][Embedded][Banded Kestrel] R1000 Processor Family
    [Zen][Embedded] "Great Horned Owl", "River Hawk", "Grey Hawk"
    Complete the "Raven Ridge" and "Picasso" lists
    [EPYC] Moved "Snowy Owl" Embedded processors to CPUID 8F_01
    [Zen4] introducing Phoenix and Dragon Range
    [RMB] adding the Ryzen Embedded V3000 processors
    [VMR] adding the "AMD Ryzen 9 PRO 5945"
  * [Intel]
    Adding Granite Rapids, Sierra Forest, Grand Ridge entries
    Adding "Lunar Lake" and "Arrow Lake" entries.
  * [UI]
    Optimized decimal to digits converter
    Allow task tracker to select up to pid_max
    Can trace the frozen states of Linux tasks.
    Only print HWP frequencies within bounds.
    Fix ruler's aggregation.
  * [CR]
    Check CPUID[HV_PARTITION_PRIVILEGE_MASK] for HV_X64_MSR_VP_RUNTIME
    Uninitialized variable fix.
    [CPPC] Build EPP with KERNEL_VERSION(6) rather than CONFIG_CACHY
    [KERNEL] Linux 6.3: Employ modifier calls with the vma-&gt;vm_flags</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1684065600">- update to 1.96.1
  * [Driver]
  - Postpone Clock Source registration during startup until the Base Clock is computed.
  - Change class_create() according to Linux Kernel 6.4
  - Clear interrupt flag (cli) after Halt in the Idle method
  * [AMD]
  - [PHOENIX] Adding Ryzen 7940H, 7840H, 7640H
  - [VERMEER] Adding Ryzen PRO and Embedded processors
  - Ryzen Z1 CPUID' brand fix
  - Adding EPYC Embedded 9004 Series as Genoa
  - Adding EPYC Embedded 7003 Series as Milan
  - Adding EPYC Embedded 7002 Series as Rome
  - Adding EPYC Embedded 7001 Series as Naples</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1685880000">- update to 1.96.2
  * [Driver]
  - Allows compilation to keep going without CONFIG_ACPI_CPPC_LIB
  * [Client]
  - Adding two command line arguments:
  - Op Show Package C-States
  - OW Toggle Energy units
  * [AMD]
  - Specification of some Configuration MSRs</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1686830400">- update to 1.96.4
  * [AMD]
  - Display CPUID state of new and legacy features:
    Fused Multiply Add [FMA4]
    Extended Operation Support [XOP]
    Translation Cache Extension [TCE]
    Trailing Bit Manipulation [TBM]
    OS Visible Work-around [OSVW]
    LOCK prefix to read CR8 [AltMov]
  * [Intel]
  - Advanced Matrix Extensions [AMX]
  - Bits and Features of Sierra Forest and Grand Ridge
  - Attempt to decode the Meteor Lake Memory Controller
- update to 1.96.3
  * [AMD]
  - [Zeppelin] Probe more than one UMC controllers on Ryzen Threadripper 1900X
  - [Zen4] Dump SMBE and BMEC sub-leaves of CPUID 0x80000020</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1688212800">- update to 1.96.5
  * [AMD]
    Adding the "AMD Ryzen 5 5600X3D"
    Introducing the Zen4c Bergamo architecture
    Specs fixing of Embedded V-series and 3000 Series Processors
    Adding MENDOCINO, RAPHAEL Pro, PHOENIX Pro among others</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1712318400">- added preamble file for %kernel_module_package macro
- update to 1.97.1
  * added aarch64 support
  * upstream did not provide a summary changelog. Full list of commits:
    https://github.com/cyring/CoreFreq/compare/1.96.5...1.97.1</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715860800">- update to 1.97.2
  * [AMD]
  - [Hawk Point] Adding Ryzen PRO processors
  - [Phoenix] Adding the unlocked Ryzen 8000 Series
  * [Intel]
  - [MeteorLake] New bits specified
  - EEO and R2H bits inversion fix in MSR_POWER_CTL (0x1fc)
  - Reverse specification of MSR UNCORE_PERF_STATUS
  - Prefetchers fix of L1 Scrubbing, L1 Next Page and L2 AMP
  * [AArch64]
  - Providing Exclusive Load/Store to atomic operations
  - Improved asm of various macro functions
  - Removed LEGACY macros
  - Optimized the CORE_COUNT macros
  - Marked the Tools feature as nominal: Stress functions available
  - Allow user access to Retired Instructions counter
  - Fix Instructions counter overflow
  - Other PMC enhancements
  * [CR]
  - Fix a building issue with AlmaLinux aka RHEL-9
  - Linux kernel 6.9: Avoid redefinition of Intel MSR macros
  * [Doc]
  - README section for AlmaLinux
  - CONFIG_TRIM_UNUSED_KSYMS kernel build config is forbidden</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715947200">- fix dependency on kernel module that was not versioned</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1722081600">- update to 1.98.0
  * [Build]
  - Change dkms configuration to install into /usr/bin/
  - Solved compilation with Fedora using RHEL MINOR version number 99
  - [CR] Fixed some compilation warnings
  - [CR] Fix memory allocation in kernel pages for the SysGate
  - Workaround to musl change in basename (#494)
  - aarch64: Build with Redhat RHEL version 9
  - [CR] x86_64: Prevent array size overflow
  - dkms and ckms configuration files upgraded to version 1.98
  * [Intel]
  - [Raptor Lake] Adding the HB DID of i7-14700K' IMC
  - Mitigation mechanism: GDS_NO; RFDS_NO; MONITOR_MITG_NO
  - Apply some SDM Documentation Changes
  - [MTL] Fix CMD Stretch bit range width
  - Added method CLOCK_FLEX_MAX with Xeon's Nehalem &amp; Core 2
  - Grants full MSR_FLEX_RATIO access to tested architectures:
  - Alder Lake/S
  - Tiger Lake/U
  - Westmere/Gulftown
  - Provides the overclocking bins with unlocked processors
  - Query the Overclocking bit (OC) from Capabilities
  - Adding technologies: VMD, HDCP, IPU and VPU
  - Volume Management Device
  - High-Bandwidth Digital Content Protection
  - Image Processing Unit
  - Vision Processing Unit
  - Gaussian &amp; Neural Accelerator - GNA technology
  - [CR] Renamed Gemini Lake structures
  - [Meteor Lake] Introducing memory controller decoder
  * [AArch64]
  - Optimizing the Vcore seek
  - Workaround to Package discrete voltage: the highest Vcore
  - Improving computation of Euclidean division
  - Adjust frequency division in CNTFRQ and PMU counters
  - Scale a frequency factor from the interval
  - Refactoring the frequency ratios for decimal precision
  - Compile dev_pm_opp_put if Kernel greater or equal 4.11
  - Get the voltage core of CPUs from OPP
  * [AMD]
  - [Zen4][Raphael] Adding the EPYC 4004 Series
  - [Zen4] Clarify Hawk Point and Phoenix-Refresh architectures
  - [Family 19h] New voltage formula assigned to model 61h
  - Vcore activated
  - Voltage SoC deactivated
  - [Zen] Prevent the calculation of negative temperature (issue #496)
  - [Family 18h] Documented Hygon C86 7375
  - [Family 19h] PStateDef specification: Adding VID[8] bit 32
  - Specification of MSR HW_PSTATE_STATUS
  * [CLI]
  - aarch64: Display the state of the Memory Management Unit (MMU)
  - aarch64: State of Instruction Cache Unit I$ and Data Cache Unit D$
  - Added UI_RULER_MINIMUM &amp; UI_RULER_MAXIMUM building constraints
  - Revert "[CLI] Responsive ruler to architectural context"
  - This reverts commit 4bc38d6.
  - x86_64: AMD Boost and P-States redesigned
  - [UI] Hardening missing console/terminal size
  - Responsive ruler to architectural context
  - x86_64: Make HDCP meaning string shorter
  * [Driver]
  - Created C2U_Enable as a parameter alias of C1U_Enable</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1723032000">- update to 1.98.1
  * [AMD]
  - [Zen] Inject threshold events when thermal is out of bounds
  - Generic Zen architectures renamed with their Family number
  - Added a generic entry for the 1A family
  - Configure TjMax for multiple Ryzen and Threadripper
  - [CR] Optimize AMD temperature filtering function
  - [Zen5] Introducing the Eldora architecture aka "Granite Ridge"
  - [Zen5] Adding entries for Strix Point
  * [Intel]
  - Feature-bits of Core Ultra architecture
  - [TGL][ADL][RPL] New devices to probe IMC and Watchdog
  - [Raptor Lake-E] Adding the IMC probing entries
  - Grant full MSR_FLEX_RATIO access to Raptor Lake (06_B7)
  - Added Host Bridge DIDs of Raptor Lake-E
  - [ADL ... MTL] Code review of IMC decoders
  - [ADL] Compute DIMM Bank and Columns on both channels
  - [ADL] Process channels differently depending on DDR4 or DDR5
  - 12th to 14th generation IMC decoder refactoring
  - [ADL ... MTL] Adding Memory Controller Virtual Channel Count
  - [ADL ... MTL] Channel count as a function of DDPCD DDR_TYPE
  - [ADL ... MTL] Keep all enabled memory controllers
  - [12th and superior] Compute tWR quantity as a function of DDR version
  * [Build]
  - Now leave version number in Makefile
  - Pretty print the build and the clean of outputs
    Allow the V=n option increase the verbose level (incl. kernel)
  - CPU-Freq build against Linux Kernel version 6.11
  * [Documentation]
  - Refreshed README and Makefile</changelog>
</package>
<package pkgid="dc086677a20ca9c54412ce56b51419d79c4158445b9721d01611616aef610d250af263c617374569156076231bff5f73c9cfa35ec4576d1e55955c0979fd5723" name="CoreFreq-debuginfo" arch="x86_64">
  <version epoch="0" ver="1.98.2" rel="1.3"/>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1667563200">- Repair deficient description grammar.</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1670241600">- update to 1.92.4:
  * [Intel/Skylake-X] Permits MSR_RING_PERF_LIMIT_REASONS</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1670932800">- removed modprobe_corefreqd.service.patch and harden_corefreqd.service.patch
  now included in new corefreqd.service file replacing stock one
- update to 1.93.1
  * [PRJ] CoreFreq version 1.93.1
  * [ACPI/CPPC/EPP] Preview of AMD/Zen Energy Preference (CONFIG_CACHY)
  * [UI] Changed the HWP or CPPC ratio bounds.
  * [FIX] Putting `corefreqd` in the root cgroup (issue #379) Thanks to gel-crabs
  * [DOC] Parameters to blacklist the amd_pstate since kernel 6.0.11
  * [AMD][Zen4] Apply a voltage formula based on Rembrandt's. (#378)
  * [AMD][Zen4/Raphael] Attempting temperature per CCD from TCTL+0x308
  * [AMD][Zen4] Changed Timer loop
  * [CR] CLI code review and UI optimizations
  * [UI] Auto refresh the Topology items when off/online
  * [CR] Conditionally build with additional PMC Counters
  * [Intel] Adding Z8000 System Memory Controller Registers
  * [CR] Transformed global variable in cells padding
  * [UI] Windows re-scaling fix
  * [UI] Apply color theming to the CPPC capabilities list.
  * [AMD][Raphael] Adding device DIDs to probe UMC and IOMMU
  * [CPPC/FMW] Computes value bounds while Enabling/Disabling firmware
  * [CR] CPPC lib errors are now raised to Debug level
  * [AMD][Zen4] Increased the UMC size to 12 channels.
  * [CPPC] Handles the OffLine CPU case.
  * [CLI] Refactoring HWP/CPPC to print all capabilities per CPU
  * [ACPI] Computes the CPPC Bounds
  * [Intel] Linear Address Masking (LAM)
  * [CLI] EFER: Left aligned labels
  * [AMD] Reports UAIE and AIBRSE bits from EFER system register
  * [CLI] Changed mitigation mechanisms incapability labels
  * [AMD][Zen2] Mitigation Mechanism BTC-NOBR * ACPI/OSPM documentation
  * [CR] Code review on bit masks
  * [CPPC][ACPI] Kernel may decode the Guaranteed Performance Register
  * [UI] Optimize the cycles to clear the time bar.
  * [CR] Code review for extra compiler warnings
  * [UI] Time of the day displayed in the right side of menu
  * [UI] Display the current date and time in menu bar
  * [Kernel] Introducing support of `CONFIG_SCHED_BORE`
  * [CLI] Fixing ambiguous CPPC report: hardware vs firmware
  * [CLI] Surrounds _CPC feature with square brackets
  * [CPPC] Provides the ACPI _CPC object state.
  * [UI] Colors the task being tracked in the tracking list
  * [UI] Display the current time in the menu bar
  * [CLI] Reserve the programmable TDP section to Intel processors.
  * [AMD/Zen3+] Improving the DIMM geometry of Rembrandt UMC</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1672747200">- update to 1.94.1:
  * [Intel] Gemini Lake
  * [AMD] Ryzen 5 6600 H SoC, UMC channels
  * [AMD] Rembrandt: maximum of two UMC channels
  * [AMD] Raphael: Decodes DIMM geometry from AddrCfg
  * [AMD] Zen: Aggregation refactored
  * [AMD] Improved DDR5 clock decoding
  * Optimized Idle Loop</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1673006400">- update to 1.94.3:
  * [AMD][RMB] If UMC is quad channels then unpopulate odd channels
  * [AMD][RPL] Provide Service Processor Vcore as workaround
  * [UI] Auto size and lay performance capabilities window
  * [UI] Adding comments to the EEO and R2H technologies
  * [AMD][Raphael] 7950X3D, 7900X3D. support</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1674475200">- update to 1.95.1:
  * [Intel] RPL: voltage of Pcore, Ecore, System Agent
  * [Intel] RPL and ADL Chipset device IDs
  * [Intel] Decode the RPL IMC and improve DDR5 support
  * [Build] Raise `MAX_FREQ_HZ` up to 7125000000 Hertz
  * [Intel] Mobile {Coffee Lake, Kaby Lake} codenames
  * [Intel] Braswell codename detection
  * [AMD] SYSCFG Register
  * [AMD] EPYC 9654
  * [AMD] Transparent SME
  * [AMD] DRAM Data Scrambling
  * [AMD] Adding "Barcelo R" and "Rembrandt R"</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1675944000">- update to 1.95.2:
  * Fixed the aggregation of the minimum ratio
  Intel:
  * [Airmont][Silvermont] Attempt to decode `tCKE` from DRMC
    register
  * [Airmont] Improve `tWTPr`, `B2B`, `tWWDR` timings
  * [Airmont] Provide a new IMC decoder
  * Add the Emerald Rapids architecture entry
  * [DDR5][DDR4] Add the `RCDw` IMC timing
  * [Raptor Lake ] De-activate the MSR Uncore counter
  AMD:
  * "Zen3/Barcelo-R" and "Zen3+ Rembrandt-R" codenames
  * [Zen] Thermal highest limit reset fix
  Misc:
  * Code review and Registers documentation:
    AMD HWCR, Intel HDC and DRP</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677067200">- update to 1.95.4
  * [Intel] [from 11th to 14th gen]
    Convert the DRAM Speed to MT/s unit
    Compute the Bus Rate based on the BIOS MC PLL
- update to 1.95.3
  * [Intel] [Airmont]
    Improved the IMC geometry
    Introducing the Spreadtrum architecture
    Fixed the Bus and DRAM frequency rates
  * [Intel] [from 11th to 13th gen] Attempt to probe the interleaved controllers
  * [Intel] [Alder Lake/H] Attempt to decode the TCO Watchdog</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677153600">- added leap_compile_fix.patch to fix compilation on Leap</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1683115200">- removed leap_compile_fix.patch no needed anymore
- update to 1.96.0
  * [AMD]
    [RPL/X3D] Disabling the turbo boosted P-states change
    [PHOENIX] Adding Z1, U and HS PRO series.
    [Genoa] DAC address at UMC BAR + 0x40
    [Zen4] Adding the PCI entries of Genoa
    [Zen2] Adding remaining PCI entries
    [Zen] Query DAC &amp; CFG with the right UMC base address register
    [Zen4] Dump the CPUID Extended CPU Topology leaves.
    [Zen][Embedded][Banded Kestrel] R1000 Processor Family
    [Zen][Embedded] "Great Horned Owl", "River Hawk", "Grey Hawk"
    Complete the "Raven Ridge" and "Picasso" lists
    [EPYC] Moved "Snowy Owl" Embedded processors to CPUID 8F_01
    [Zen4] introducing Phoenix and Dragon Range
    [RMB] adding the Ryzen Embedded V3000 processors
    [VMR] adding the "AMD Ryzen 9 PRO 5945"
  * [Intel]
    Adding Granite Rapids, Sierra Forest, Grand Ridge entries
    Adding "Lunar Lake" and "Arrow Lake" entries.
  * [UI]
    Optimized decimal to digits converter
    Allow task tracker to select up to pid_max
    Can trace the frozen states of Linux tasks.
    Only print HWP frequencies within bounds.
    Fix ruler's aggregation.
  * [CR]
    Check CPUID[HV_PARTITION_PRIVILEGE_MASK] for HV_X64_MSR_VP_RUNTIME
    Uninitialized variable fix.
    [CPPC] Build EPP with KERNEL_VERSION(6) rather than CONFIG_CACHY
    [KERNEL] Linux 6.3: Employ modifier calls with the vma-&gt;vm_flags</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1684065600">- update to 1.96.1
  * [Driver]
  - Postpone Clock Source registration during startup until the Base Clock is computed.
  - Change class_create() according to Linux Kernel 6.4
  - Clear interrupt flag (cli) after Halt in the Idle method
  * [AMD]
  - [PHOENIX] Adding Ryzen 7940H, 7840H, 7640H
  - [VERMEER] Adding Ryzen PRO and Embedded processors
  - Ryzen Z1 CPUID' brand fix
  - Adding EPYC Embedded 9004 Series as Genoa
  - Adding EPYC Embedded 7003 Series as Milan
  - Adding EPYC Embedded 7002 Series as Rome
  - Adding EPYC Embedded 7001 Series as Naples</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1685880000">- update to 1.96.2
  * [Driver]
  - Allows compilation to keep going without CONFIG_ACPI_CPPC_LIB
  * [Client]
  - Adding two command line arguments:
  - Op Show Package C-States
  - OW Toggle Energy units
  * [AMD]
  - Specification of some Configuration MSRs</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1686830400">- update to 1.96.4
  * [AMD]
  - Display CPUID state of new and legacy features:
    Fused Multiply Add [FMA4]
    Extended Operation Support [XOP]
    Translation Cache Extension [TCE]
    Trailing Bit Manipulation [TBM]
    OS Visible Work-around [OSVW]
    LOCK prefix to read CR8 [AltMov]
  * [Intel]
  - Advanced Matrix Extensions [AMX]
  - Bits and Features of Sierra Forest and Grand Ridge
  - Attempt to decode the Meteor Lake Memory Controller
- update to 1.96.3
  * [AMD]
  - [Zeppelin] Probe more than one UMC controllers on Ryzen Threadripper 1900X
  - [Zen4] Dump SMBE and BMEC sub-leaves of CPUID 0x80000020</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1688212800">- update to 1.96.5
  * [AMD]
    Adding the "AMD Ryzen 5 5600X3D"
    Introducing the Zen4c Bergamo architecture
    Specs fixing of Embedded V-series and 3000 Series Processors
    Adding MENDOCINO, RAPHAEL Pro, PHOENIX Pro among others</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1712318400">- added preamble file for %kernel_module_package macro
- update to 1.97.1
  * added aarch64 support
  * upstream did not provide a summary changelog. Full list of commits:
    https://github.com/cyring/CoreFreq/compare/1.96.5...1.97.1</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715860800">- update to 1.97.2
  * [AMD]
  - [Hawk Point] Adding Ryzen PRO processors
  - [Phoenix] Adding the unlocked Ryzen 8000 Series
  * [Intel]
  - [MeteorLake] New bits specified
  - EEO and R2H bits inversion fix in MSR_POWER_CTL (0x1fc)
  - Reverse specification of MSR UNCORE_PERF_STATUS
  - Prefetchers fix of L1 Scrubbing, L1 Next Page and L2 AMP
  * [AArch64]
  - Providing Exclusive Load/Store to atomic operations
  - Improved asm of various macro functions
  - Removed LEGACY macros
  - Optimized the CORE_COUNT macros
  - Marked the Tools feature as nominal: Stress functions available
  - Allow user access to Retired Instructions counter
  - Fix Instructions counter overflow
  - Other PMC enhancements
  * [CR]
  - Fix a building issue with AlmaLinux aka RHEL-9
  - Linux kernel 6.9: Avoid redefinition of Intel MSR macros
  * [Doc]
  - README section for AlmaLinux
  - CONFIG_TRIM_UNUSED_KSYMS kernel build config is forbidden</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715947200">- fix dependency on kernel module that was not versioned</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1722081600">- update to 1.98.0
  * [Build]
  - Change dkms configuration to install into /usr/bin/
  - Solved compilation with Fedora using RHEL MINOR version number 99
  - [CR] Fixed some compilation warnings
  - [CR] Fix memory allocation in kernel pages for the SysGate
  - Workaround to musl change in basename (#494)
  - aarch64: Build with Redhat RHEL version 9
  - [CR] x86_64: Prevent array size overflow
  - dkms and ckms configuration files upgraded to version 1.98
  * [Intel]
  - [Raptor Lake] Adding the HB DID of i7-14700K' IMC
  - Mitigation mechanism: GDS_NO; RFDS_NO; MONITOR_MITG_NO
  - Apply some SDM Documentation Changes
  - [MTL] Fix CMD Stretch bit range width
  - Added method CLOCK_FLEX_MAX with Xeon's Nehalem &amp; Core 2
  - Grants full MSR_FLEX_RATIO access to tested architectures:
  - Alder Lake/S
  - Tiger Lake/U
  - Westmere/Gulftown
  - Provides the overclocking bins with unlocked processors
  - Query the Overclocking bit (OC) from Capabilities
  - Adding technologies: VMD, HDCP, IPU and VPU
  - Volume Management Device
  - High-Bandwidth Digital Content Protection
  - Image Processing Unit
  - Vision Processing Unit
  - Gaussian &amp; Neural Accelerator - GNA technology
  - [CR] Renamed Gemini Lake structures
  - [Meteor Lake] Introducing memory controller decoder
  * [AArch64]
  - Optimizing the Vcore seek
  - Workaround to Package discrete voltage: the highest Vcore
  - Improving computation of Euclidean division
  - Adjust frequency division in CNTFRQ and PMU counters
  - Scale a frequency factor from the interval
  - Refactoring the frequency ratios for decimal precision
  - Compile dev_pm_opp_put if Kernel greater or equal 4.11
  - Get the voltage core of CPUs from OPP
  * [AMD]
  - [Zen4][Raphael] Adding the EPYC 4004 Series
  - [Zen4] Clarify Hawk Point and Phoenix-Refresh architectures
  - [Family 19h] New voltage formula assigned to model 61h
  - Vcore activated
  - Voltage SoC deactivated
  - [Zen] Prevent the calculation of negative temperature (issue #496)
  - [Family 18h] Documented Hygon C86 7375
  - [Family 19h] PStateDef specification: Adding VID[8] bit 32
  - Specification of MSR HW_PSTATE_STATUS
  * [CLI]
  - aarch64: Display the state of the Memory Management Unit (MMU)
  - aarch64: State of Instruction Cache Unit I$ and Data Cache Unit D$
  - Added UI_RULER_MINIMUM &amp; UI_RULER_MAXIMUM building constraints
  - Revert "[CLI] Responsive ruler to architectural context"
  - This reverts commit 4bc38d6.
  - x86_64: AMD Boost and P-States redesigned
  - [UI] Hardening missing console/terminal size
  - Responsive ruler to architectural context
  - x86_64: Make HDCP meaning string shorter
  * [Driver]
  - Created C2U_Enable as a parameter alias of C1U_Enable</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1723032000">- update to 1.98.1
  * [AMD]
  - [Zen] Inject threshold events when thermal is out of bounds
  - Generic Zen architectures renamed with their Family number
  - Added a generic entry for the 1A family
  - Configure TjMax for multiple Ryzen and Threadripper
  - [CR] Optimize AMD temperature filtering function
  - [Zen5] Introducing the Eldora architecture aka "Granite Ridge"
  - [Zen5] Adding entries for Strix Point
  * [Intel]
  - Feature-bits of Core Ultra architecture
  - [TGL][ADL][RPL] New devices to probe IMC and Watchdog
  - [Raptor Lake-E] Adding the IMC probing entries
  - Grant full MSR_FLEX_RATIO access to Raptor Lake (06_B7)
  - Added Host Bridge DIDs of Raptor Lake-E
  - [ADL ... MTL] Code review of IMC decoders
  - [ADL] Compute DIMM Bank and Columns on both channels
  - [ADL] Process channels differently depending on DDR4 or DDR5
  - 12th to 14th generation IMC decoder refactoring
  - [ADL ... MTL] Adding Memory Controller Virtual Channel Count
  - [ADL ... MTL] Channel count as a function of DDPCD DDR_TYPE
  - [ADL ... MTL] Keep all enabled memory controllers
  - [12th and superior] Compute tWR quantity as a function of DDR version
  * [Build]
  - Now leave version number in Makefile
  - Pretty print the build and the clean of outputs
    Allow the V=n option increase the verbose level (incl. kernel)
  - CPU-Freq build against Linux Kernel version 6.11
  * [Documentation]
  - Refreshed README and Makefile</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1723464000">- Update to 1.98.2
  * [Intel]
  - [WDT] Adding multiple devices to probe TCO
    C620 Series Chipset Production SKUs (0xa1a3)
    C620 Series Chipset Super SKUs (0xa223)
    Sunrise Point/H (0xa123)
    Cannon Lake/LP (0x9da3)
    Comet Lake/H (0x06a3)
    Ice Lake/LP (0x34a3)
    Tiger Lake/H (0x43a3)
    Elkhart Lake (0x4b23)
    Kaby Lake/H (0xa2a3)
    Cannon Lake (0xa323)
    Comet Lake/V (0xa3a3)
    Ice Lake/NG (0x38a3)
    Alder lake/M (0x54a3)
    Arrow Lake/S (0x7f23)
    Jasper Lake SMBus (0x4da3)
    Sunrise Point-LP SMBus (0x9d23)
    Comet Lake PCH-LP SMBus (0x02a3)
  - MSR_FLEX_RATIO register
    Grant access to Alder Lake/H (06_9A)
    Deny access to Nehalem/Bloomfield (06_1A)
    Removed a condition in access function</changelog>
</package>
<package pkgid="c6d78869837e39b9fc1e4ca3884f00564282b919bd305f470f83473c46a896c1b602a6dd983cac14835086d6ad2da26cd3f1f594ce6a6200765976ebd0a5f990" name="CoreFreq-debuginfo" arch="x86_64">
  <version epoch="0" ver="1.98.3" rel="1.1"/>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1670241600">- update to 1.92.4:
  * [Intel/Skylake-X] Permits MSR_RING_PERF_LIMIT_REASONS</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1670932800">- removed modprobe_corefreqd.service.patch and harden_corefreqd.service.patch
  now included in new corefreqd.service file replacing stock one
- update to 1.93.1
  * [PRJ] CoreFreq version 1.93.1
  * [ACPI/CPPC/EPP] Preview of AMD/Zen Energy Preference (CONFIG_CACHY)
  * [UI] Changed the HWP or CPPC ratio bounds.
  * [FIX] Putting `corefreqd` in the root cgroup (issue #379) Thanks to gel-crabs
  * [DOC] Parameters to blacklist the amd_pstate since kernel 6.0.11
  * [AMD][Zen4] Apply a voltage formula based on Rembrandt's. (#378)
  * [AMD][Zen4/Raphael] Attempting temperature per CCD from TCTL+0x308
  * [AMD][Zen4] Changed Timer loop
  * [CR] CLI code review and UI optimizations
  * [UI] Auto refresh the Topology items when off/online
  * [CR] Conditionally build with additional PMC Counters
  * [Intel] Adding Z8000 System Memory Controller Registers
  * [CR] Transformed global variable in cells padding
  * [UI] Windows re-scaling fix
  * [UI] Apply color theming to the CPPC capabilities list.
  * [AMD][Raphael] Adding device DIDs to probe UMC and IOMMU
  * [CPPC/FMW] Computes value bounds while Enabling/Disabling firmware
  * [CR] CPPC lib errors are now raised to Debug level
  * [AMD][Zen4] Increased the UMC size to 12 channels.
  * [CPPC] Handles the OffLine CPU case.
  * [CLI] Refactoring HWP/CPPC to print all capabilities per CPU
  * [ACPI] Computes the CPPC Bounds
  * [Intel] Linear Address Masking (LAM)
  * [CLI] EFER: Left aligned labels
  * [AMD] Reports UAIE and AIBRSE bits from EFER system register
  * [CLI] Changed mitigation mechanisms incapability labels
  * [AMD][Zen2] Mitigation Mechanism BTC-NOBR * ACPI/OSPM documentation
  * [CR] Code review on bit masks
  * [CPPC][ACPI] Kernel may decode the Guaranteed Performance Register
  * [UI] Optimize the cycles to clear the time bar.
  * [CR] Code review for extra compiler warnings
  * [UI] Time of the day displayed in the right side of menu
  * [UI] Display the current date and time in menu bar
  * [Kernel] Introducing support of `CONFIG_SCHED_BORE`
  * [CLI] Fixing ambiguous CPPC report: hardware vs firmware
  * [CLI] Surrounds _CPC feature with square brackets
  * [CPPC] Provides the ACPI _CPC object state.
  * [UI] Colors the task being tracked in the tracking list
  * [UI] Display the current time in the menu bar
  * [CLI] Reserve the programmable TDP section to Intel processors.
  * [AMD/Zen3+] Improving the DIMM geometry of Rembrandt UMC</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1672747200">- update to 1.94.1:
  * [Intel] Gemini Lake
  * [AMD] Ryzen 5 6600 H SoC, UMC channels
  * [AMD] Rembrandt: maximum of two UMC channels
  * [AMD] Raphael: Decodes DIMM geometry from AddrCfg
  * [AMD] Zen: Aggregation refactored
  * [AMD] Improved DDR5 clock decoding
  * Optimized Idle Loop</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1673006400">- update to 1.94.3:
  * [AMD][RMB] If UMC is quad channels then unpopulate odd channels
  * [AMD][RPL] Provide Service Processor Vcore as workaround
  * [UI] Auto size and lay performance capabilities window
  * [UI] Adding comments to the EEO and R2H technologies
  * [AMD][Raphael] 7950X3D, 7900X3D. support</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1674475200">- update to 1.95.1:
  * [Intel] RPL: voltage of Pcore, Ecore, System Agent
  * [Intel] RPL and ADL Chipset device IDs
  * [Intel] Decode the RPL IMC and improve DDR5 support
  * [Build] Raise `MAX_FREQ_HZ` up to 7125000000 Hertz
  * [Intel] Mobile {Coffee Lake, Kaby Lake} codenames
  * [Intel] Braswell codename detection
  * [AMD] SYSCFG Register
  * [AMD] EPYC 9654
  * [AMD] Transparent SME
  * [AMD] DRAM Data Scrambling
  * [AMD] Adding "Barcelo R" and "Rembrandt R"</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1675944000">- update to 1.95.2:
  * Fixed the aggregation of the minimum ratio
  Intel:
  * [Airmont][Silvermont] Attempt to decode `tCKE` from DRMC
    register
  * [Airmont] Improve `tWTPr`, `B2B`, `tWWDR` timings
  * [Airmont] Provide a new IMC decoder
  * Add the Emerald Rapids architecture entry
  * [DDR5][DDR4] Add the `RCDw` IMC timing
  * [Raptor Lake ] De-activate the MSR Uncore counter
  AMD:
  * "Zen3/Barcelo-R" and "Zen3+ Rembrandt-R" codenames
  * [Zen] Thermal highest limit reset fix
  Misc:
  * Code review and Registers documentation:
    AMD HWCR, Intel HDC and DRP</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677067200">- update to 1.95.4
  * [Intel] [from 11th to 14th gen]
    Convert the DRAM Speed to MT/s unit
    Compute the Bus Rate based on the BIOS MC PLL
- update to 1.95.3
  * [Intel] [Airmont]
    Improved the IMC geometry
    Introducing the Spreadtrum architecture
    Fixed the Bus and DRAM frequency rates
  * [Intel] [from 11th to 13th gen] Attempt to probe the interleaved controllers
  * [Intel] [Alder Lake/H] Attempt to decode the TCO Watchdog</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677153600">- added leap_compile_fix.patch to fix compilation on Leap</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1683115200">- removed leap_compile_fix.patch no needed anymore
- update to 1.96.0
  * [AMD]
    [RPL/X3D] Disabling the turbo boosted P-states change
    [PHOENIX] Adding Z1, U and HS PRO series.
    [Genoa] DAC address at UMC BAR + 0x40
    [Zen4] Adding the PCI entries of Genoa
    [Zen2] Adding remaining PCI entries
    [Zen] Query DAC &amp; CFG with the right UMC base address register
    [Zen4] Dump the CPUID Extended CPU Topology leaves.
    [Zen][Embedded][Banded Kestrel] R1000 Processor Family
    [Zen][Embedded] "Great Horned Owl", "River Hawk", "Grey Hawk"
    Complete the "Raven Ridge" and "Picasso" lists
    [EPYC] Moved "Snowy Owl" Embedded processors to CPUID 8F_01
    [Zen4] introducing Phoenix and Dragon Range
    [RMB] adding the Ryzen Embedded V3000 processors
    [VMR] adding the "AMD Ryzen 9 PRO 5945"
  * [Intel]
    Adding Granite Rapids, Sierra Forest, Grand Ridge entries
    Adding "Lunar Lake" and "Arrow Lake" entries.
  * [UI]
    Optimized decimal to digits converter
    Allow task tracker to select up to pid_max
    Can trace the frozen states of Linux tasks.
    Only print HWP frequencies within bounds.
    Fix ruler's aggregation.
  * [CR]
    Check CPUID[HV_PARTITION_PRIVILEGE_MASK] for HV_X64_MSR_VP_RUNTIME
    Uninitialized variable fix.
    [CPPC] Build EPP with KERNEL_VERSION(6) rather than CONFIG_CACHY
    [KERNEL] Linux 6.3: Employ modifier calls with the vma-&gt;vm_flags</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1684065600">- update to 1.96.1
  * [Driver]
  - Postpone Clock Source registration during startup until the Base Clock is computed.
  - Change class_create() according to Linux Kernel 6.4
  - Clear interrupt flag (cli) after Halt in the Idle method
  * [AMD]
  - [PHOENIX] Adding Ryzen 7940H, 7840H, 7640H
  - [VERMEER] Adding Ryzen PRO and Embedded processors
  - Ryzen Z1 CPUID' brand fix
  - Adding EPYC Embedded 9004 Series as Genoa
  - Adding EPYC Embedded 7003 Series as Milan
  - Adding EPYC Embedded 7002 Series as Rome
  - Adding EPYC Embedded 7001 Series as Naples</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1685880000">- update to 1.96.2
  * [Driver]
  - Allows compilation to keep going without CONFIG_ACPI_CPPC_LIB
  * [Client]
  - Adding two command line arguments:
  - Op Show Package C-States
  - OW Toggle Energy units
  * [AMD]
  - Specification of some Configuration MSRs</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1686830400">- update to 1.96.4
  * [AMD]
  - Display CPUID state of new and legacy features:
    Fused Multiply Add [FMA4]
    Extended Operation Support [XOP]
    Translation Cache Extension [TCE]
    Trailing Bit Manipulation [TBM]
    OS Visible Work-around [OSVW]
    LOCK prefix to read CR8 [AltMov]
  * [Intel]
  - Advanced Matrix Extensions [AMX]
  - Bits and Features of Sierra Forest and Grand Ridge
  - Attempt to decode the Meteor Lake Memory Controller
- update to 1.96.3
  * [AMD]
  - [Zeppelin] Probe more than one UMC controllers on Ryzen Threadripper 1900X
  - [Zen4] Dump SMBE and BMEC sub-leaves of CPUID 0x80000020</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1688212800">- update to 1.96.5
  * [AMD]
    Adding the "AMD Ryzen 5 5600X3D"
    Introducing the Zen4c Bergamo architecture
    Specs fixing of Embedded V-series and 3000 Series Processors
    Adding MENDOCINO, RAPHAEL Pro, PHOENIX Pro among others</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1712318400">- added preamble file for %kernel_module_package macro
- update to 1.97.1
  * added aarch64 support
  * upstream did not provide a summary changelog. Full list of commits:
    https://github.com/cyring/CoreFreq/compare/1.96.5...1.97.1</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715860800">- update to 1.97.2
  * [AMD]
  - [Hawk Point] Adding Ryzen PRO processors
  - [Phoenix] Adding the unlocked Ryzen 8000 Series
  * [Intel]
  - [MeteorLake] New bits specified
  - EEO and R2H bits inversion fix in MSR_POWER_CTL (0x1fc)
  - Reverse specification of MSR UNCORE_PERF_STATUS
  - Prefetchers fix of L1 Scrubbing, L1 Next Page and L2 AMP
  * [AArch64]
  - Providing Exclusive Load/Store to atomic operations
  - Improved asm of various macro functions
  - Removed LEGACY macros
  - Optimized the CORE_COUNT macros
  - Marked the Tools feature as nominal: Stress functions available
  - Allow user access to Retired Instructions counter
  - Fix Instructions counter overflow
  - Other PMC enhancements
  * [CR]
  - Fix a building issue with AlmaLinux aka RHEL-9
  - Linux kernel 6.9: Avoid redefinition of Intel MSR macros
  * [Doc]
  - README section for AlmaLinux
  - CONFIG_TRIM_UNUSED_KSYMS kernel build config is forbidden</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715947200">- fix dependency on kernel module that was not versioned</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1722081600">- update to 1.98.0
  * [Build]
  - Change dkms configuration to install into /usr/bin/
  - Solved compilation with Fedora using RHEL MINOR version number 99
  - [CR] Fixed some compilation warnings
  - [CR] Fix memory allocation in kernel pages for the SysGate
  - Workaround to musl change in basename (#494)
  - aarch64: Build with Redhat RHEL version 9
  - [CR] x86_64: Prevent array size overflow
  - dkms and ckms configuration files upgraded to version 1.98
  * [Intel]
  - [Raptor Lake] Adding the HB DID of i7-14700K' IMC
  - Mitigation mechanism: GDS_NO; RFDS_NO; MONITOR_MITG_NO
  - Apply some SDM Documentation Changes
  - [MTL] Fix CMD Stretch bit range width
  - Added method CLOCK_FLEX_MAX with Xeon's Nehalem &amp; Core 2
  - Grants full MSR_FLEX_RATIO access to tested architectures:
  - Alder Lake/S
  - Tiger Lake/U
  - Westmere/Gulftown
  - Provides the overclocking bins with unlocked processors
  - Query the Overclocking bit (OC) from Capabilities
  - Adding technologies: VMD, HDCP, IPU and VPU
  - Volume Management Device
  - High-Bandwidth Digital Content Protection
  - Image Processing Unit
  - Vision Processing Unit
  - Gaussian &amp; Neural Accelerator - GNA technology
  - [CR] Renamed Gemini Lake structures
  - [Meteor Lake] Introducing memory controller decoder
  * [AArch64]
  - Optimizing the Vcore seek
  - Workaround to Package discrete voltage: the highest Vcore
  - Improving computation of Euclidean division
  - Adjust frequency division in CNTFRQ and PMU counters
  - Scale a frequency factor from the interval
  - Refactoring the frequency ratios for decimal precision
  - Compile dev_pm_opp_put if Kernel greater or equal 4.11
  - Get the voltage core of CPUs from OPP
  * [AMD]
  - [Zen4][Raphael] Adding the EPYC 4004 Series
  - [Zen4] Clarify Hawk Point and Phoenix-Refresh architectures
  - [Family 19h] New voltage formula assigned to model 61h
  - Vcore activated
  - Voltage SoC deactivated
  - [Zen] Prevent the calculation of negative temperature (issue #496)
  - [Family 18h] Documented Hygon C86 7375
  - [Family 19h] PStateDef specification: Adding VID[8] bit 32
  - Specification of MSR HW_PSTATE_STATUS
  * [CLI]
  - aarch64: Display the state of the Memory Management Unit (MMU)
  - aarch64: State of Instruction Cache Unit I$ and Data Cache Unit D$
  - Added UI_RULER_MINIMUM &amp; UI_RULER_MAXIMUM building constraints
  - Revert "[CLI] Responsive ruler to architectural context"
  - This reverts commit 4bc38d6.
  - x86_64: AMD Boost and P-States redesigned
  - [UI] Hardening missing console/terminal size
  - Responsive ruler to architectural context
  - x86_64: Make HDCP meaning string shorter
  * [Driver]
  - Created C2U_Enable as a parameter alias of C1U_Enable</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1723032000">- update to 1.98.1
  * [AMD]
  - [Zen] Inject threshold events when thermal is out of bounds
  - Generic Zen architectures renamed with their Family number
  - Added a generic entry for the 1A family
  - Configure TjMax for multiple Ryzen and Threadripper
  - [CR] Optimize AMD temperature filtering function
  - [Zen5] Introducing the Eldora architecture aka "Granite Ridge"
  - [Zen5] Adding entries for Strix Point
  * [Intel]
  - Feature-bits of Core Ultra architecture
  - [TGL][ADL][RPL] New devices to probe IMC and Watchdog
  - [Raptor Lake-E] Adding the IMC probing entries
  - Grant full MSR_FLEX_RATIO access to Raptor Lake (06_B7)
  - Added Host Bridge DIDs of Raptor Lake-E
  - [ADL ... MTL] Code review of IMC decoders
  - [ADL] Compute DIMM Bank and Columns on both channels
  - [ADL] Process channels differently depending on DDR4 or DDR5
  - 12th to 14th generation IMC decoder refactoring
  - [ADL ... MTL] Adding Memory Controller Virtual Channel Count
  - [ADL ... MTL] Channel count as a function of DDPCD DDR_TYPE
  - [ADL ... MTL] Keep all enabled memory controllers
  - [12th and superior] Compute tWR quantity as a function of DDR version
  * [Build]
  - Now leave version number in Makefile
  - Pretty print the build and the clean of outputs
    Allow the V=n option increase the verbose level (incl. kernel)
  - CPU-Freq build against Linux Kernel version 6.11
  * [Documentation]
  - Refreshed README and Makefile</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1723464000">- Update to 1.98.2
  * [Intel]
  - [WDT] Adding multiple devices to probe TCO
    C620 Series Chipset Production SKUs (0xa1a3)
    C620 Series Chipset Super SKUs (0xa223)
    Sunrise Point/H (0xa123)
    Cannon Lake/LP (0x9da3)
    Comet Lake/H (0x06a3)
    Ice Lake/LP (0x34a3)
    Tiger Lake/H (0x43a3)
    Elkhart Lake (0x4b23)
    Kaby Lake/H (0xa2a3)
    Cannon Lake (0xa323)
    Comet Lake/V (0xa3a3)
    Ice Lake/NG (0x38a3)
    Alder lake/M (0x54a3)
    Arrow Lake/S (0x7f23)
    Jasper Lake SMBus (0x4da3)
    Sunrise Point-LP SMBus (0x9d23)
    Comet Lake PCH-LP SMBus (0x02a3)
  - MSR_FLEX_RATIO register
    Grant access to Alder Lake/H (06_9A)
    Deny access to Nehalem/Bloomfield (06_1A)
    Removed a condition in access function</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1725019200">- Update to 1.98.3
  * [AMD]
  - [VMR/RPL/GNR] Voltage Curve Optimizer (VCO)
  - Provide a specific VCO formula based on HWM_CHIPSET=AMD_VCO
    build parameter
  - The standard voltage formulas are restored to these architectures
  - Zen5: Guessed a new P-State MSR bits specification to fix the
    Coefficient Of Frequency (COF)</changelog>
</package>
<package pkgid="18853b746d78a502ddab34dc9b2fbb9f345048768724f97dc67fe2a52d44d69dbdd6f046992f7fc1a6064a3c0be3a598c21b83edddda6d7d9fb63a3d79ba7f52" name="CoreFreq-debuginfo" arch="x86_64">
  <version epoch="0" ver="1.98.4" rel="1.11"/>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1670932800">- removed modprobe_corefreqd.service.patch and harden_corefreqd.service.patch
  now included in new corefreqd.service file replacing stock one
- update to 1.93.1
  * [PRJ] CoreFreq version 1.93.1
  * [ACPI/CPPC/EPP] Preview of AMD/Zen Energy Preference (CONFIG_CACHY)
  * [UI] Changed the HWP or CPPC ratio bounds.
  * [FIX] Putting `corefreqd` in the root cgroup (issue #379) Thanks to gel-crabs
  * [DOC] Parameters to blacklist the amd_pstate since kernel 6.0.11
  * [AMD][Zen4] Apply a voltage formula based on Rembrandt's. (#378)
  * [AMD][Zen4/Raphael] Attempting temperature per CCD from TCTL+0x308
  * [AMD][Zen4] Changed Timer loop
  * [CR] CLI code review and UI optimizations
  * [UI] Auto refresh the Topology items when off/online
  * [CR] Conditionally build with additional PMC Counters
  * [Intel] Adding Z8000 System Memory Controller Registers
  * [CR] Transformed global variable in cells padding
  * [UI] Windows re-scaling fix
  * [UI] Apply color theming to the CPPC capabilities list.
  * [AMD][Raphael] Adding device DIDs to probe UMC and IOMMU
  * [CPPC/FMW] Computes value bounds while Enabling/Disabling firmware
  * [CR] CPPC lib errors are now raised to Debug level
  * [AMD][Zen4] Increased the UMC size to 12 channels.
  * [CPPC] Handles the OffLine CPU case.
  * [CLI] Refactoring HWP/CPPC to print all capabilities per CPU
  * [ACPI] Computes the CPPC Bounds
  * [Intel] Linear Address Masking (LAM)
  * [CLI] EFER: Left aligned labels
  * [AMD] Reports UAIE and AIBRSE bits from EFER system register
  * [CLI] Changed mitigation mechanisms incapability labels
  * [AMD][Zen2] Mitigation Mechanism BTC-NOBR * ACPI/OSPM documentation
  * [CR] Code review on bit masks
  * [CPPC][ACPI] Kernel may decode the Guaranteed Performance Register
  * [UI] Optimize the cycles to clear the time bar.
  * [CR] Code review for extra compiler warnings
  * [UI] Time of the day displayed in the right side of menu
  * [UI] Display the current date and time in menu bar
  * [Kernel] Introducing support of `CONFIG_SCHED_BORE`
  * [CLI] Fixing ambiguous CPPC report: hardware vs firmware
  * [CLI] Surrounds _CPC feature with square brackets
  * [CPPC] Provides the ACPI _CPC object state.
  * [UI] Colors the task being tracked in the tracking list
  * [UI] Display the current time in the menu bar
  * [CLI] Reserve the programmable TDP section to Intel processors.
  * [AMD/Zen3+] Improving the DIMM geometry of Rembrandt UMC</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1672747200">- update to 1.94.1:
  * [Intel] Gemini Lake
  * [AMD] Ryzen 5 6600 H SoC, UMC channels
  * [AMD] Rembrandt: maximum of two UMC channels
  * [AMD] Raphael: Decodes DIMM geometry from AddrCfg
  * [AMD] Zen: Aggregation refactored
  * [AMD] Improved DDR5 clock decoding
  * Optimized Idle Loop</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1673006400">- update to 1.94.3:
  * [AMD][RMB] If UMC is quad channels then unpopulate odd channels
  * [AMD][RPL] Provide Service Processor Vcore as workaround
  * [UI] Auto size and lay performance capabilities window
  * [UI] Adding comments to the EEO and R2H technologies
  * [AMD][Raphael] 7950X3D, 7900X3D. support</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1674475200">- update to 1.95.1:
  * [Intel] RPL: voltage of Pcore, Ecore, System Agent
  * [Intel] RPL and ADL Chipset device IDs
  * [Intel] Decode the RPL IMC and improve DDR5 support
  * [Build] Raise `MAX_FREQ_HZ` up to 7125000000 Hertz
  * [Intel] Mobile {Coffee Lake, Kaby Lake} codenames
  * [Intel] Braswell codename detection
  * [AMD] SYSCFG Register
  * [AMD] EPYC 9654
  * [AMD] Transparent SME
  * [AMD] DRAM Data Scrambling
  * [AMD] Adding "Barcelo R" and "Rembrandt R"</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1675944000">- update to 1.95.2:
  * Fixed the aggregation of the minimum ratio
  Intel:
  * [Airmont][Silvermont] Attempt to decode `tCKE` from DRMC
    register
  * [Airmont] Improve `tWTPr`, `B2B`, `tWWDR` timings
  * [Airmont] Provide a new IMC decoder
  * Add the Emerald Rapids architecture entry
  * [DDR5][DDR4] Add the `RCDw` IMC timing
  * [Raptor Lake ] De-activate the MSR Uncore counter
  AMD:
  * "Zen3/Barcelo-R" and "Zen3+ Rembrandt-R" codenames
  * [Zen] Thermal highest limit reset fix
  Misc:
  * Code review and Registers documentation:
    AMD HWCR, Intel HDC and DRP</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677067200">- update to 1.95.4
  * [Intel] [from 11th to 14th gen]
    Convert the DRAM Speed to MT/s unit
    Compute the Bus Rate based on the BIOS MC PLL
- update to 1.95.3
  * [Intel] [Airmont]
    Improved the IMC geometry
    Introducing the Spreadtrum architecture
    Fixed the Bus and DRAM frequency rates
  * [Intel] [from 11th to 13th gen] Attempt to probe the interleaved controllers
  * [Intel] [Alder Lake/H] Attempt to decode the TCO Watchdog</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677153600">- added leap_compile_fix.patch to fix compilation on Leap</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1683115200">- removed leap_compile_fix.patch no needed anymore
- update to 1.96.0
  * [AMD]
    [RPL/X3D] Disabling the turbo boosted P-states change
    [PHOENIX] Adding Z1, U and HS PRO series.
    [Genoa] DAC address at UMC BAR + 0x40
    [Zen4] Adding the PCI entries of Genoa
    [Zen2] Adding remaining PCI entries
    [Zen] Query DAC &amp; CFG with the right UMC base address register
    [Zen4] Dump the CPUID Extended CPU Topology leaves.
    [Zen][Embedded][Banded Kestrel] R1000 Processor Family
    [Zen][Embedded] "Great Horned Owl", "River Hawk", "Grey Hawk"
    Complete the "Raven Ridge" and "Picasso" lists
    [EPYC] Moved "Snowy Owl" Embedded processors to CPUID 8F_01
    [Zen4] introducing Phoenix and Dragon Range
    [RMB] adding the Ryzen Embedded V3000 processors
    [VMR] adding the "AMD Ryzen 9 PRO 5945"
  * [Intel]
    Adding Granite Rapids, Sierra Forest, Grand Ridge entries
    Adding "Lunar Lake" and "Arrow Lake" entries.
  * [UI]
    Optimized decimal to digits converter
    Allow task tracker to select up to pid_max
    Can trace the frozen states of Linux tasks.
    Only print HWP frequencies within bounds.
    Fix ruler's aggregation.
  * [CR]
    Check CPUID[HV_PARTITION_PRIVILEGE_MASK] for HV_X64_MSR_VP_RUNTIME
    Uninitialized variable fix.
    [CPPC] Build EPP with KERNEL_VERSION(6) rather than CONFIG_CACHY
    [KERNEL] Linux 6.3: Employ modifier calls with the vma-&gt;vm_flags</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1684065600">- update to 1.96.1
  * [Driver]
  - Postpone Clock Source registration during startup until the Base Clock is computed.
  - Change class_create() according to Linux Kernel 6.4
  - Clear interrupt flag (cli) after Halt in the Idle method
  * [AMD]
  - [PHOENIX] Adding Ryzen 7940H, 7840H, 7640H
  - [VERMEER] Adding Ryzen PRO and Embedded processors
  - Ryzen Z1 CPUID' brand fix
  - Adding EPYC Embedded 9004 Series as Genoa
  - Adding EPYC Embedded 7003 Series as Milan
  - Adding EPYC Embedded 7002 Series as Rome
  - Adding EPYC Embedded 7001 Series as Naples</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1685880000">- update to 1.96.2
  * [Driver]
  - Allows compilation to keep going without CONFIG_ACPI_CPPC_LIB
  * [Client]
  - Adding two command line arguments:
  - Op Show Package C-States
  - OW Toggle Energy units
  * [AMD]
  - Specification of some Configuration MSRs</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1686830400">- update to 1.96.4
  * [AMD]
  - Display CPUID state of new and legacy features:
    Fused Multiply Add [FMA4]
    Extended Operation Support [XOP]
    Translation Cache Extension [TCE]
    Trailing Bit Manipulation [TBM]
    OS Visible Work-around [OSVW]
    LOCK prefix to read CR8 [AltMov]
  * [Intel]
  - Advanced Matrix Extensions [AMX]
  - Bits and Features of Sierra Forest and Grand Ridge
  - Attempt to decode the Meteor Lake Memory Controller
- update to 1.96.3
  * [AMD]
  - [Zeppelin] Probe more than one UMC controllers on Ryzen Threadripper 1900X
  - [Zen4] Dump SMBE and BMEC sub-leaves of CPUID 0x80000020</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1688212800">- update to 1.96.5
  * [AMD]
    Adding the "AMD Ryzen 5 5600X3D"
    Introducing the Zen4c Bergamo architecture
    Specs fixing of Embedded V-series and 3000 Series Processors
    Adding MENDOCINO, RAPHAEL Pro, PHOENIX Pro among others</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1712318400">- added preamble file for %kernel_module_package macro
- update to 1.97.1
  * added aarch64 support
  * upstream did not provide a summary changelog. Full list of commits:
    https://github.com/cyring/CoreFreq/compare/1.96.5...1.97.1</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715860800">- update to 1.97.2
  * [AMD]
  - [Hawk Point] Adding Ryzen PRO processors
  - [Phoenix] Adding the unlocked Ryzen 8000 Series
  * [Intel]
  - [MeteorLake] New bits specified
  - EEO and R2H bits inversion fix in MSR_POWER_CTL (0x1fc)
  - Reverse specification of MSR UNCORE_PERF_STATUS
  - Prefetchers fix of L1 Scrubbing, L1 Next Page and L2 AMP
  * [AArch64]
  - Providing Exclusive Load/Store to atomic operations
  - Improved asm of various macro functions
  - Removed LEGACY macros
  - Optimized the CORE_COUNT macros
  - Marked the Tools feature as nominal: Stress functions available
  - Allow user access to Retired Instructions counter
  - Fix Instructions counter overflow
  - Other PMC enhancements
  * [CR]
  - Fix a building issue with AlmaLinux aka RHEL-9
  - Linux kernel 6.9: Avoid redefinition of Intel MSR macros
  * [Doc]
  - README section for AlmaLinux
  - CONFIG_TRIM_UNUSED_KSYMS kernel build config is forbidden</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715947200">- fix dependency on kernel module that was not versioned</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1722081600">- update to 1.98.0
  * [Build]
  - Change dkms configuration to install into /usr/bin/
  - Solved compilation with Fedora using RHEL MINOR version number 99
  - [CR] Fixed some compilation warnings
  - [CR] Fix memory allocation in kernel pages for the SysGate
  - Workaround to musl change in basename (#494)
  - aarch64: Build with Redhat RHEL version 9
  - [CR] x86_64: Prevent array size overflow
  - dkms and ckms configuration files upgraded to version 1.98
  * [Intel]
  - [Raptor Lake] Adding the HB DID of i7-14700K' IMC
  - Mitigation mechanism: GDS_NO; RFDS_NO; MONITOR_MITG_NO
  - Apply some SDM Documentation Changes
  - [MTL] Fix CMD Stretch bit range width
  - Added method CLOCK_FLEX_MAX with Xeon's Nehalem &amp; Core 2
  - Grants full MSR_FLEX_RATIO access to tested architectures:
  - Alder Lake/S
  - Tiger Lake/U
  - Westmere/Gulftown
  - Provides the overclocking bins with unlocked processors
  - Query the Overclocking bit (OC) from Capabilities
  - Adding technologies: VMD, HDCP, IPU and VPU
  - Volume Management Device
  - High-Bandwidth Digital Content Protection
  - Image Processing Unit
  - Vision Processing Unit
  - Gaussian &amp; Neural Accelerator - GNA technology
  - [CR] Renamed Gemini Lake structures
  - [Meteor Lake] Introducing memory controller decoder
  * [AArch64]
  - Optimizing the Vcore seek
  - Workaround to Package discrete voltage: the highest Vcore
  - Improving computation of Euclidean division
  - Adjust frequency division in CNTFRQ and PMU counters
  - Scale a frequency factor from the interval
  - Refactoring the frequency ratios for decimal precision
  - Compile dev_pm_opp_put if Kernel greater or equal 4.11
  - Get the voltage core of CPUs from OPP
  * [AMD]
  - [Zen4][Raphael] Adding the EPYC 4004 Series
  - [Zen4] Clarify Hawk Point and Phoenix-Refresh architectures
  - [Family 19h] New voltage formula assigned to model 61h
  - Vcore activated
  - Voltage SoC deactivated
  - [Zen] Prevent the calculation of negative temperature (issue #496)
  - [Family 18h] Documented Hygon C86 7375
  - [Family 19h] PStateDef specification: Adding VID[8] bit 32
  - Specification of MSR HW_PSTATE_STATUS
  * [CLI]
  - aarch64: Display the state of the Memory Management Unit (MMU)
  - aarch64: State of Instruction Cache Unit I$ and Data Cache Unit D$
  - Added UI_RULER_MINIMUM &amp; UI_RULER_MAXIMUM building constraints
  - Revert "[CLI] Responsive ruler to architectural context"
  - This reverts commit 4bc38d6.
  - x86_64: AMD Boost and P-States redesigned
  - [UI] Hardening missing console/terminal size
  - Responsive ruler to architectural context
  - x86_64: Make HDCP meaning string shorter
  * [Driver]
  - Created C2U_Enable as a parameter alias of C1U_Enable</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1723032000">- update to 1.98.1
  * [AMD]
  - [Zen] Inject threshold events when thermal is out of bounds
  - Generic Zen architectures renamed with their Family number
  - Added a generic entry for the 1A family
  - Configure TjMax for multiple Ryzen and Threadripper
  - [CR] Optimize AMD temperature filtering function
  - [Zen5] Introducing the Eldora architecture aka "Granite Ridge"
  - [Zen5] Adding entries for Strix Point
  * [Intel]
  - Feature-bits of Core Ultra architecture
  - [TGL][ADL][RPL] New devices to probe IMC and Watchdog
  - [Raptor Lake-E] Adding the IMC probing entries
  - Grant full MSR_FLEX_RATIO access to Raptor Lake (06_B7)
  - Added Host Bridge DIDs of Raptor Lake-E
  - [ADL ... MTL] Code review of IMC decoders
  - [ADL] Compute DIMM Bank and Columns on both channels
  - [ADL] Process channels differently depending on DDR4 or DDR5
  - 12th to 14th generation IMC decoder refactoring
  - [ADL ... MTL] Adding Memory Controller Virtual Channel Count
  - [ADL ... MTL] Channel count as a function of DDPCD DDR_TYPE
  - [ADL ... MTL] Keep all enabled memory controllers
  - [12th and superior] Compute tWR quantity as a function of DDR version
  * [Build]
  - Now leave version number in Makefile
  - Pretty print the build and the clean of outputs
    Allow the V=n option increase the verbose level (incl. kernel)
  - CPU-Freq build against Linux Kernel version 6.11
  * [Documentation]
  - Refreshed README and Makefile</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1723464000">- Update to 1.98.2
  * [Intel]
  - [WDT] Adding multiple devices to probe TCO
    C620 Series Chipset Production SKUs (0xa1a3)
    C620 Series Chipset Super SKUs (0xa223)
    Sunrise Point/H (0xa123)
    Cannon Lake/LP (0x9da3)
    Comet Lake/H (0x06a3)
    Ice Lake/LP (0x34a3)
    Tiger Lake/H (0x43a3)
    Elkhart Lake (0x4b23)
    Kaby Lake/H (0xa2a3)
    Cannon Lake (0xa323)
    Comet Lake/V (0xa3a3)
    Ice Lake/NG (0x38a3)
    Alder lake/M (0x54a3)
    Arrow Lake/S (0x7f23)
    Jasper Lake SMBus (0x4da3)
    Sunrise Point-LP SMBus (0x9d23)
    Comet Lake PCH-LP SMBus (0x02a3)
  - MSR_FLEX_RATIO register
    Grant access to Alder Lake/H (06_9A)
    Deny access to Nehalem/Bloomfield (06_1A)
    Removed a condition in access function</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1725019200">- Update to 1.98.3
  * [AMD]
  - [VMR/RPL/GNR] Voltage Curve Optimizer (VCO)
  - Provide a specific VCO formula based on HWM_CHIPSET=AMD_VCO
    build parameter
  - The standard voltage formulas are restored to these architectures
  - Zen5: Guessed a new P-State MSR bits specification to fix the
    Coefficient Of Frequency (COF)</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1726833600">- Update to 1.98.4
  * [Build]
  - Prevent a collision with macro WRMSRNS within kernel 6.11
  * [x86_64]
  - [Virtualization] Switch to the HCF or VP_RUNTIME counters depending on the detected hypervisor</changelog>
</package>
<package pkgid="60ec75dbc5552eb9b88c39d6c0b9abee74bbda1a23b377bd200ed5b547f988ad908d9e7c1c4b93c0d02dd2503ad155e77e6dc1acc222be7a69462b13034477c5" name="CoreFreq-debuginfo" arch="x86_64">
  <version epoch="0" ver="1.98.4" rel="1.4"/>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1670932800">- removed modprobe_corefreqd.service.patch and harden_corefreqd.service.patch
  now included in new corefreqd.service file replacing stock one
- update to 1.93.1
  * [PRJ] CoreFreq version 1.93.1
  * [ACPI/CPPC/EPP] Preview of AMD/Zen Energy Preference (CONFIG_CACHY)
  * [UI] Changed the HWP or CPPC ratio bounds.
  * [FIX] Putting `corefreqd` in the root cgroup (issue #379) Thanks to gel-crabs
  * [DOC] Parameters to blacklist the amd_pstate since kernel 6.0.11
  * [AMD][Zen4] Apply a voltage formula based on Rembrandt's. (#378)
  * [AMD][Zen4/Raphael] Attempting temperature per CCD from TCTL+0x308
  * [AMD][Zen4] Changed Timer loop
  * [CR] CLI code review and UI optimizations
  * [UI] Auto refresh the Topology items when off/online
  * [CR] Conditionally build with additional PMC Counters
  * [Intel] Adding Z8000 System Memory Controller Registers
  * [CR] Transformed global variable in cells padding
  * [UI] Windows re-scaling fix
  * [UI] Apply color theming to the CPPC capabilities list.
  * [AMD][Raphael] Adding device DIDs to probe UMC and IOMMU
  * [CPPC/FMW] Computes value bounds while Enabling/Disabling firmware
  * [CR] CPPC lib errors are now raised to Debug level
  * [AMD][Zen4] Increased the UMC size to 12 channels.
  * [CPPC] Handles the OffLine CPU case.
  * [CLI] Refactoring HWP/CPPC to print all capabilities per CPU
  * [ACPI] Computes the CPPC Bounds
  * [Intel] Linear Address Masking (LAM)
  * [CLI] EFER: Left aligned labels
  * [AMD] Reports UAIE and AIBRSE bits from EFER system register
  * [CLI] Changed mitigation mechanisms incapability labels
  * [AMD][Zen2] Mitigation Mechanism BTC-NOBR * ACPI/OSPM documentation
  * [CR] Code review on bit masks
  * [CPPC][ACPI] Kernel may decode the Guaranteed Performance Register
  * [UI] Optimize the cycles to clear the time bar.
  * [CR] Code review for extra compiler warnings
  * [UI] Time of the day displayed in the right side of menu
  * [UI] Display the current date and time in menu bar
  * [Kernel] Introducing support of `CONFIG_SCHED_BORE`
  * [CLI] Fixing ambiguous CPPC report: hardware vs firmware
  * [CLI] Surrounds _CPC feature with square brackets
  * [CPPC] Provides the ACPI _CPC object state.
  * [UI] Colors the task being tracked in the tracking list
  * [UI] Display the current time in the menu bar
  * [CLI] Reserve the programmable TDP section to Intel processors.
  * [AMD/Zen3+] Improving the DIMM geometry of Rembrandt UMC</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1672747200">- update to 1.94.1:
  * [Intel] Gemini Lake
  * [AMD] Ryzen 5 6600 H SoC, UMC channels
  * [AMD] Rembrandt: maximum of two UMC channels
  * [AMD] Raphael: Decodes DIMM geometry from AddrCfg
  * [AMD] Zen: Aggregation refactored
  * [AMD] Improved DDR5 clock decoding
  * Optimized Idle Loop</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1673006400">- update to 1.94.3:
  * [AMD][RMB] If UMC is quad channels then unpopulate odd channels
  * [AMD][RPL] Provide Service Processor Vcore as workaround
  * [UI] Auto size and lay performance capabilities window
  * [UI] Adding comments to the EEO and R2H technologies
  * [AMD][Raphael] 7950X3D, 7900X3D. support</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1674475200">- update to 1.95.1:
  * [Intel] RPL: voltage of Pcore, Ecore, System Agent
  * [Intel] RPL and ADL Chipset device IDs
  * [Intel] Decode the RPL IMC and improve DDR5 support
  * [Build] Raise `MAX_FREQ_HZ` up to 7125000000 Hertz
  * [Intel] Mobile {Coffee Lake, Kaby Lake} codenames
  * [Intel] Braswell codename detection
  * [AMD] SYSCFG Register
  * [AMD] EPYC 9654
  * [AMD] Transparent SME
  * [AMD] DRAM Data Scrambling
  * [AMD] Adding "Barcelo R" and "Rembrandt R"</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1675944000">- update to 1.95.2:
  * Fixed the aggregation of the minimum ratio
  Intel:
  * [Airmont][Silvermont] Attempt to decode `tCKE` from DRMC
    register
  * [Airmont] Improve `tWTPr`, `B2B`, `tWWDR` timings
  * [Airmont] Provide a new IMC decoder
  * Add the Emerald Rapids architecture entry
  * [DDR5][DDR4] Add the `RCDw` IMC timing
  * [Raptor Lake ] De-activate the MSR Uncore counter
  AMD:
  * "Zen3/Barcelo-R" and "Zen3+ Rembrandt-R" codenames
  * [Zen] Thermal highest limit reset fix
  Misc:
  * Code review and Registers documentation:
    AMD HWCR, Intel HDC and DRP</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677067200">- update to 1.95.4
  * [Intel] [from 11th to 14th gen]
    Convert the DRAM Speed to MT/s unit
    Compute the Bus Rate based on the BIOS MC PLL
- update to 1.95.3
  * [Intel] [Airmont]
    Improved the IMC geometry
    Introducing the Spreadtrum architecture
    Fixed the Bus and DRAM frequency rates
  * [Intel] [from 11th to 13th gen] Attempt to probe the interleaved controllers
  * [Intel] [Alder Lake/H] Attempt to decode the TCO Watchdog</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677153600">- added leap_compile_fix.patch to fix compilation on Leap</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1683115200">- removed leap_compile_fix.patch no needed anymore
- update to 1.96.0
  * [AMD]
    [RPL/X3D] Disabling the turbo boosted P-states change
    [PHOENIX] Adding Z1, U and HS PRO series.
    [Genoa] DAC address at UMC BAR + 0x40
    [Zen4] Adding the PCI entries of Genoa
    [Zen2] Adding remaining PCI entries
    [Zen] Query DAC &amp; CFG with the right UMC base address register
    [Zen4] Dump the CPUID Extended CPU Topology leaves.
    [Zen][Embedded][Banded Kestrel] R1000 Processor Family
    [Zen][Embedded] "Great Horned Owl", "River Hawk", "Grey Hawk"
    Complete the "Raven Ridge" and "Picasso" lists
    [EPYC] Moved "Snowy Owl" Embedded processors to CPUID 8F_01
    [Zen4] introducing Phoenix and Dragon Range
    [RMB] adding the Ryzen Embedded V3000 processors
    [VMR] adding the "AMD Ryzen 9 PRO 5945"
  * [Intel]
    Adding Granite Rapids, Sierra Forest, Grand Ridge entries
    Adding "Lunar Lake" and "Arrow Lake" entries.
  * [UI]
    Optimized decimal to digits converter
    Allow task tracker to select up to pid_max
    Can trace the frozen states of Linux tasks.
    Only print HWP frequencies within bounds.
    Fix ruler's aggregation.
  * [CR]
    Check CPUID[HV_PARTITION_PRIVILEGE_MASK] for HV_X64_MSR_VP_RUNTIME
    Uninitialized variable fix.
    [CPPC] Build EPP with KERNEL_VERSION(6) rather than CONFIG_CACHY
    [KERNEL] Linux 6.3: Employ modifier calls with the vma-&gt;vm_flags</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1684065600">- update to 1.96.1
  * [Driver]
  - Postpone Clock Source registration during startup until the Base Clock is computed.
  - Change class_create() according to Linux Kernel 6.4
  - Clear interrupt flag (cli) after Halt in the Idle method
  * [AMD]
  - [PHOENIX] Adding Ryzen 7940H, 7840H, 7640H
  - [VERMEER] Adding Ryzen PRO and Embedded processors
  - Ryzen Z1 CPUID' brand fix
  - Adding EPYC Embedded 9004 Series as Genoa
  - Adding EPYC Embedded 7003 Series as Milan
  - Adding EPYC Embedded 7002 Series as Rome
  - Adding EPYC Embedded 7001 Series as Naples</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1685880000">- update to 1.96.2
  * [Driver]
  - Allows compilation to keep going without CONFIG_ACPI_CPPC_LIB
  * [Client]
  - Adding two command line arguments:
  - Op Show Package C-States
  - OW Toggle Energy units
  * [AMD]
  - Specification of some Configuration MSRs</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1686830400">- update to 1.96.4
  * [AMD]
  - Display CPUID state of new and legacy features:
    Fused Multiply Add [FMA4]
    Extended Operation Support [XOP]
    Translation Cache Extension [TCE]
    Trailing Bit Manipulation [TBM]
    OS Visible Work-around [OSVW]
    LOCK prefix to read CR8 [AltMov]
  * [Intel]
  - Advanced Matrix Extensions [AMX]
  - Bits and Features of Sierra Forest and Grand Ridge
  - Attempt to decode the Meteor Lake Memory Controller
- update to 1.96.3
  * [AMD]
  - [Zeppelin] Probe more than one UMC controllers on Ryzen Threadripper 1900X
  - [Zen4] Dump SMBE and BMEC sub-leaves of CPUID 0x80000020</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1688212800">- update to 1.96.5
  * [AMD]
    Adding the "AMD Ryzen 5 5600X3D"
    Introducing the Zen4c Bergamo architecture
    Specs fixing of Embedded V-series and 3000 Series Processors
    Adding MENDOCINO, RAPHAEL Pro, PHOENIX Pro among others</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1712318400">- added preamble file for %kernel_module_package macro
- update to 1.97.1
  * added aarch64 support
  * upstream did not provide a summary changelog. Full list of commits:
    https://github.com/cyring/CoreFreq/compare/1.96.5...1.97.1</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715860800">- update to 1.97.2
  * [AMD]
  - [Hawk Point] Adding Ryzen PRO processors
  - [Phoenix] Adding the unlocked Ryzen 8000 Series
  * [Intel]
  - [MeteorLake] New bits specified
  - EEO and R2H bits inversion fix in MSR_POWER_CTL (0x1fc)
  - Reverse specification of MSR UNCORE_PERF_STATUS
  - Prefetchers fix of L1 Scrubbing, L1 Next Page and L2 AMP
  * [AArch64]
  - Providing Exclusive Load/Store to atomic operations
  - Improved asm of various macro functions
  - Removed LEGACY macros
  - Optimized the CORE_COUNT macros
  - Marked the Tools feature as nominal: Stress functions available
  - Allow user access to Retired Instructions counter
  - Fix Instructions counter overflow
  - Other PMC enhancements
  * [CR]
  - Fix a building issue with AlmaLinux aka RHEL-9
  - Linux kernel 6.9: Avoid redefinition of Intel MSR macros
  * [Doc]
  - README section for AlmaLinux
  - CONFIG_TRIM_UNUSED_KSYMS kernel build config is forbidden</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715947200">- fix dependency on kernel module that was not versioned</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1722081600">- update to 1.98.0
  * [Build]
  - Change dkms configuration to install into /usr/bin/
  - Solved compilation with Fedora using RHEL MINOR version number 99
  - [CR] Fixed some compilation warnings
  - [CR] Fix memory allocation in kernel pages for the SysGate
  - Workaround to musl change in basename (#494)
  - aarch64: Build with Redhat RHEL version 9
  - [CR] x86_64: Prevent array size overflow
  - dkms and ckms configuration files upgraded to version 1.98
  * [Intel]
  - [Raptor Lake] Adding the HB DID of i7-14700K' IMC
  - Mitigation mechanism: GDS_NO; RFDS_NO; MONITOR_MITG_NO
  - Apply some SDM Documentation Changes
  - [MTL] Fix CMD Stretch bit range width
  - Added method CLOCK_FLEX_MAX with Xeon's Nehalem &amp; Core 2
  - Grants full MSR_FLEX_RATIO access to tested architectures:
  - Alder Lake/S
  - Tiger Lake/U
  - Westmere/Gulftown
  - Provides the overclocking bins with unlocked processors
  - Query the Overclocking bit (OC) from Capabilities
  - Adding technologies: VMD, HDCP, IPU and VPU
  - Volume Management Device
  - High-Bandwidth Digital Content Protection
  - Image Processing Unit
  - Vision Processing Unit
  - Gaussian &amp; Neural Accelerator - GNA technology
  - [CR] Renamed Gemini Lake structures
  - [Meteor Lake] Introducing memory controller decoder
  * [AArch64]
  - Optimizing the Vcore seek
  - Workaround to Package discrete voltage: the highest Vcore
  - Improving computation of Euclidean division
  - Adjust frequency division in CNTFRQ and PMU counters
  - Scale a frequency factor from the interval
  - Refactoring the frequency ratios for decimal precision
  - Compile dev_pm_opp_put if Kernel greater or equal 4.11
  - Get the voltage core of CPUs from OPP
  * [AMD]
  - [Zen4][Raphael] Adding the EPYC 4004 Series
  - [Zen4] Clarify Hawk Point and Phoenix-Refresh architectures
  - [Family 19h] New voltage formula assigned to model 61h
  - Vcore activated
  - Voltage SoC deactivated
  - [Zen] Prevent the calculation of negative temperature (issue #496)
  - [Family 18h] Documented Hygon C86 7375
  - [Family 19h] PStateDef specification: Adding VID[8] bit 32
  - Specification of MSR HW_PSTATE_STATUS
  * [CLI]
  - aarch64: Display the state of the Memory Management Unit (MMU)
  - aarch64: State of Instruction Cache Unit I$ and Data Cache Unit D$
  - Added UI_RULER_MINIMUM &amp; UI_RULER_MAXIMUM building constraints
  - Revert "[CLI] Responsive ruler to architectural context"
  - This reverts commit 4bc38d6.
  - x86_64: AMD Boost and P-States redesigned
  - [UI] Hardening missing console/terminal size
  - Responsive ruler to architectural context
  - x86_64: Make HDCP meaning string shorter
  * [Driver]
  - Created C2U_Enable as a parameter alias of C1U_Enable</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1723032000">- update to 1.98.1
  * [AMD]
  - [Zen] Inject threshold events when thermal is out of bounds
  - Generic Zen architectures renamed with their Family number
  - Added a generic entry for the 1A family
  - Configure TjMax for multiple Ryzen and Threadripper
  - [CR] Optimize AMD temperature filtering function
  - [Zen5] Introducing the Eldora architecture aka "Granite Ridge"
  - [Zen5] Adding entries for Strix Point
  * [Intel]
  - Feature-bits of Core Ultra architecture
  - [TGL][ADL][RPL] New devices to probe IMC and Watchdog
  - [Raptor Lake-E] Adding the IMC probing entries
  - Grant full MSR_FLEX_RATIO access to Raptor Lake (06_B7)
  - Added Host Bridge DIDs of Raptor Lake-E
  - [ADL ... MTL] Code review of IMC decoders
  - [ADL] Compute DIMM Bank and Columns on both channels
  - [ADL] Process channels differently depending on DDR4 or DDR5
  - 12th to 14th generation IMC decoder refactoring
  - [ADL ... MTL] Adding Memory Controller Virtual Channel Count
  - [ADL ... MTL] Channel count as a function of DDPCD DDR_TYPE
  - [ADL ... MTL] Keep all enabled memory controllers
  - [12th and superior] Compute tWR quantity as a function of DDR version
  * [Build]
  - Now leave version number in Makefile
  - Pretty print the build and the clean of outputs
    Allow the V=n option increase the verbose level (incl. kernel)
  - CPU-Freq build against Linux Kernel version 6.11
  * [Documentation]
  - Refreshed README and Makefile</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1723464000">- Update to 1.98.2
  * [Intel]
  - [WDT] Adding multiple devices to probe TCO
    C620 Series Chipset Production SKUs (0xa1a3)
    C620 Series Chipset Super SKUs (0xa223)
    Sunrise Point/H (0xa123)
    Cannon Lake/LP (0x9da3)
    Comet Lake/H (0x06a3)
    Ice Lake/LP (0x34a3)
    Tiger Lake/H (0x43a3)
    Elkhart Lake (0x4b23)
    Kaby Lake/H (0xa2a3)
    Cannon Lake (0xa323)
    Comet Lake/V (0xa3a3)
    Ice Lake/NG (0x38a3)
    Alder lake/M (0x54a3)
    Arrow Lake/S (0x7f23)
    Jasper Lake SMBus (0x4da3)
    Sunrise Point-LP SMBus (0x9d23)
    Comet Lake PCH-LP SMBus (0x02a3)
  - MSR_FLEX_RATIO register
    Grant access to Alder Lake/H (06_9A)
    Deny access to Nehalem/Bloomfield (06_1A)
    Removed a condition in access function</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1725019200">- Update to 1.98.3
  * [AMD]
  - [VMR/RPL/GNR] Voltage Curve Optimizer (VCO)
  - Provide a specific VCO formula based on HWM_CHIPSET=AMD_VCO
    build parameter
  - The standard voltage formulas are restored to these architectures
  - Zen5: Guessed a new P-State MSR bits specification to fix the
    Coefficient Of Frequency (COF)</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1726833600">- Update to 1.98.4
  * [Build]
  - Prevent a collision with macro WRMSRNS within kernel 6.11
  * [x86_64]
  - [Virtualization] Switch to the HCF or VP_RUNTIME counters depending on the detected hypervisor</changelog>
</package>
<package pkgid="b986efe7a632632e2b235dc58ee79632c0f078f4522eac54cb925e7f7131d8c8f2a140e202d10bb5a2a4a1ab28785ebd17ffb34a1ff3919f78b385c8765c7ac4" name="CoreFreq-debuginfo" arch="x86_64">
  <version epoch="0" ver="1.98.4" rel="1.8"/>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1670932800">- removed modprobe_corefreqd.service.patch and harden_corefreqd.service.patch
  now included in new corefreqd.service file replacing stock one
- update to 1.93.1
  * [PRJ] CoreFreq version 1.93.1
  * [ACPI/CPPC/EPP] Preview of AMD/Zen Energy Preference (CONFIG_CACHY)
  * [UI] Changed the HWP or CPPC ratio bounds.
  * [FIX] Putting `corefreqd` in the root cgroup (issue #379) Thanks to gel-crabs
  * [DOC] Parameters to blacklist the amd_pstate since kernel 6.0.11
  * [AMD][Zen4] Apply a voltage formula based on Rembrandt's. (#378)
  * [AMD][Zen4/Raphael] Attempting temperature per CCD from TCTL+0x308
  * [AMD][Zen4] Changed Timer loop
  * [CR] CLI code review and UI optimizations
  * [UI] Auto refresh the Topology items when off/online
  * [CR] Conditionally build with additional PMC Counters
  * [Intel] Adding Z8000 System Memory Controller Registers
  * [CR] Transformed global variable in cells padding
  * [UI] Windows re-scaling fix
  * [UI] Apply color theming to the CPPC capabilities list.
  * [AMD][Raphael] Adding device DIDs to probe UMC and IOMMU
  * [CPPC/FMW] Computes value bounds while Enabling/Disabling firmware
  * [CR] CPPC lib errors are now raised to Debug level
  * [AMD][Zen4] Increased the UMC size to 12 channels.
  * [CPPC] Handles the OffLine CPU case.
  * [CLI] Refactoring HWP/CPPC to print all capabilities per CPU
  * [ACPI] Computes the CPPC Bounds
  * [Intel] Linear Address Masking (LAM)
  * [CLI] EFER: Left aligned labels
  * [AMD] Reports UAIE and AIBRSE bits from EFER system register
  * [CLI] Changed mitigation mechanisms incapability labels
  * [AMD][Zen2] Mitigation Mechanism BTC-NOBR * ACPI/OSPM documentation
  * [CR] Code review on bit masks
  * [CPPC][ACPI] Kernel may decode the Guaranteed Performance Register
  * [UI] Optimize the cycles to clear the time bar.
  * [CR] Code review for extra compiler warnings
  * [UI] Time of the day displayed in the right side of menu
  * [UI] Display the current date and time in menu bar
  * [Kernel] Introducing support of `CONFIG_SCHED_BORE`
  * [CLI] Fixing ambiguous CPPC report: hardware vs firmware
  * [CLI] Surrounds _CPC feature with square brackets
  * [CPPC] Provides the ACPI _CPC object state.
  * [UI] Colors the task being tracked in the tracking list
  * [UI] Display the current time in the menu bar
  * [CLI] Reserve the programmable TDP section to Intel processors.
  * [AMD/Zen3+] Improving the DIMM geometry of Rembrandt UMC</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1672747200">- update to 1.94.1:
  * [Intel] Gemini Lake
  * [AMD] Ryzen 5 6600 H SoC, UMC channels
  * [AMD] Rembrandt: maximum of two UMC channels
  * [AMD] Raphael: Decodes DIMM geometry from AddrCfg
  * [AMD] Zen: Aggregation refactored
  * [AMD] Improved DDR5 clock decoding
  * Optimized Idle Loop</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1673006400">- update to 1.94.3:
  * [AMD][RMB] If UMC is quad channels then unpopulate odd channels
  * [AMD][RPL] Provide Service Processor Vcore as workaround
  * [UI] Auto size and lay performance capabilities window
  * [UI] Adding comments to the EEO and R2H technologies
  * [AMD][Raphael] 7950X3D, 7900X3D. support</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1674475200">- update to 1.95.1:
  * [Intel] RPL: voltage of Pcore, Ecore, System Agent
  * [Intel] RPL and ADL Chipset device IDs
  * [Intel] Decode the RPL IMC and improve DDR5 support
  * [Build] Raise `MAX_FREQ_HZ` up to 7125000000 Hertz
  * [Intel] Mobile {Coffee Lake, Kaby Lake} codenames
  * [Intel] Braswell codename detection
  * [AMD] SYSCFG Register
  * [AMD] EPYC 9654
  * [AMD] Transparent SME
  * [AMD] DRAM Data Scrambling
  * [AMD] Adding "Barcelo R" and "Rembrandt R"</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1675944000">- update to 1.95.2:
  * Fixed the aggregation of the minimum ratio
  Intel:
  * [Airmont][Silvermont] Attempt to decode `tCKE` from DRMC
    register
  * [Airmont] Improve `tWTPr`, `B2B`, `tWWDR` timings
  * [Airmont] Provide a new IMC decoder
  * Add the Emerald Rapids architecture entry
  * [DDR5][DDR4] Add the `RCDw` IMC timing
  * [Raptor Lake ] De-activate the MSR Uncore counter
  AMD:
  * "Zen3/Barcelo-R" and "Zen3+ Rembrandt-R" codenames
  * [Zen] Thermal highest limit reset fix
  Misc:
  * Code review and Registers documentation:
    AMD HWCR, Intel HDC and DRP</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677067200">- update to 1.95.4
  * [Intel] [from 11th to 14th gen]
    Convert the DRAM Speed to MT/s unit
    Compute the Bus Rate based on the BIOS MC PLL
- update to 1.95.3
  * [Intel] [Airmont]
    Improved the IMC geometry
    Introducing the Spreadtrum architecture
    Fixed the Bus and DRAM frequency rates
  * [Intel] [from 11th to 13th gen] Attempt to probe the interleaved controllers
  * [Intel] [Alder Lake/H] Attempt to decode the TCO Watchdog</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677153600">- added leap_compile_fix.patch to fix compilation on Leap</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1683115200">- removed leap_compile_fix.patch no needed anymore
- update to 1.96.0
  * [AMD]
    [RPL/X3D] Disabling the turbo boosted P-states change
    [PHOENIX] Adding Z1, U and HS PRO series.
    [Genoa] DAC address at UMC BAR + 0x40
    [Zen4] Adding the PCI entries of Genoa
    [Zen2] Adding remaining PCI entries
    [Zen] Query DAC &amp; CFG with the right UMC base address register
    [Zen4] Dump the CPUID Extended CPU Topology leaves.
    [Zen][Embedded][Banded Kestrel] R1000 Processor Family
    [Zen][Embedded] "Great Horned Owl", "River Hawk", "Grey Hawk"
    Complete the "Raven Ridge" and "Picasso" lists
    [EPYC] Moved "Snowy Owl" Embedded processors to CPUID 8F_01
    [Zen4] introducing Phoenix and Dragon Range
    [RMB] adding the Ryzen Embedded V3000 processors
    [VMR] adding the "AMD Ryzen 9 PRO 5945"
  * [Intel]
    Adding Granite Rapids, Sierra Forest, Grand Ridge entries
    Adding "Lunar Lake" and "Arrow Lake" entries.
  * [UI]
    Optimized decimal to digits converter
    Allow task tracker to select up to pid_max
    Can trace the frozen states of Linux tasks.
    Only print HWP frequencies within bounds.
    Fix ruler's aggregation.
  * [CR]
    Check CPUID[HV_PARTITION_PRIVILEGE_MASK] for HV_X64_MSR_VP_RUNTIME
    Uninitialized variable fix.
    [CPPC] Build EPP with KERNEL_VERSION(6) rather than CONFIG_CACHY
    [KERNEL] Linux 6.3: Employ modifier calls with the vma-&gt;vm_flags</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1684065600">- update to 1.96.1
  * [Driver]
  - Postpone Clock Source registration during startup until the Base Clock is computed.
  - Change class_create() according to Linux Kernel 6.4
  - Clear interrupt flag (cli) after Halt in the Idle method
  * [AMD]
  - [PHOENIX] Adding Ryzen 7940H, 7840H, 7640H
  - [VERMEER] Adding Ryzen PRO and Embedded processors
  - Ryzen Z1 CPUID' brand fix
  - Adding EPYC Embedded 9004 Series as Genoa
  - Adding EPYC Embedded 7003 Series as Milan
  - Adding EPYC Embedded 7002 Series as Rome
  - Adding EPYC Embedded 7001 Series as Naples</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1685880000">- update to 1.96.2
  * [Driver]
  - Allows compilation to keep going without CONFIG_ACPI_CPPC_LIB
  * [Client]
  - Adding two command line arguments:
  - Op Show Package C-States
  - OW Toggle Energy units
  * [AMD]
  - Specification of some Configuration MSRs</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1686830400">- update to 1.96.4
  * [AMD]
  - Display CPUID state of new and legacy features:
    Fused Multiply Add [FMA4]
    Extended Operation Support [XOP]
    Translation Cache Extension [TCE]
    Trailing Bit Manipulation [TBM]
    OS Visible Work-around [OSVW]
    LOCK prefix to read CR8 [AltMov]
  * [Intel]
  - Advanced Matrix Extensions [AMX]
  - Bits and Features of Sierra Forest and Grand Ridge
  - Attempt to decode the Meteor Lake Memory Controller
- update to 1.96.3
  * [AMD]
  - [Zeppelin] Probe more than one UMC controllers on Ryzen Threadripper 1900X
  - [Zen4] Dump SMBE and BMEC sub-leaves of CPUID 0x80000020</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1688212800">- update to 1.96.5
  * [AMD]
    Adding the "AMD Ryzen 5 5600X3D"
    Introducing the Zen4c Bergamo architecture
    Specs fixing of Embedded V-series and 3000 Series Processors
    Adding MENDOCINO, RAPHAEL Pro, PHOENIX Pro among others</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1712318400">- added preamble file for %kernel_module_package macro
- update to 1.97.1
  * added aarch64 support
  * upstream did not provide a summary changelog. Full list of commits:
    https://github.com/cyring/CoreFreq/compare/1.96.5...1.97.1</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715860800">- update to 1.97.2
  * [AMD]
  - [Hawk Point] Adding Ryzen PRO processors
  - [Phoenix] Adding the unlocked Ryzen 8000 Series
  * [Intel]
  - [MeteorLake] New bits specified
  - EEO and R2H bits inversion fix in MSR_POWER_CTL (0x1fc)
  - Reverse specification of MSR UNCORE_PERF_STATUS
  - Prefetchers fix of L1 Scrubbing, L1 Next Page and L2 AMP
  * [AArch64]
  - Providing Exclusive Load/Store to atomic operations
  - Improved asm of various macro functions
  - Removed LEGACY macros
  - Optimized the CORE_COUNT macros
  - Marked the Tools feature as nominal: Stress functions available
  - Allow user access to Retired Instructions counter
  - Fix Instructions counter overflow
  - Other PMC enhancements
  * [CR]
  - Fix a building issue with AlmaLinux aka RHEL-9
  - Linux kernel 6.9: Avoid redefinition of Intel MSR macros
  * [Doc]
  - README section for AlmaLinux
  - CONFIG_TRIM_UNUSED_KSYMS kernel build config is forbidden</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715947200">- fix dependency on kernel module that was not versioned</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1722081600">- update to 1.98.0
  * [Build]
  - Change dkms configuration to install into /usr/bin/
  - Solved compilation with Fedora using RHEL MINOR version number 99
  - [CR] Fixed some compilation warnings
  - [CR] Fix memory allocation in kernel pages for the SysGate
  - Workaround to musl change in basename (#494)
  - aarch64: Build with Redhat RHEL version 9
  - [CR] x86_64: Prevent array size overflow
  - dkms and ckms configuration files upgraded to version 1.98
  * [Intel]
  - [Raptor Lake] Adding the HB DID of i7-14700K' IMC
  - Mitigation mechanism: GDS_NO; RFDS_NO; MONITOR_MITG_NO
  - Apply some SDM Documentation Changes
  - [MTL] Fix CMD Stretch bit range width
  - Added method CLOCK_FLEX_MAX with Xeon's Nehalem &amp; Core 2
  - Grants full MSR_FLEX_RATIO access to tested architectures:
  - Alder Lake/S
  - Tiger Lake/U
  - Westmere/Gulftown
  - Provides the overclocking bins with unlocked processors
  - Query the Overclocking bit (OC) from Capabilities
  - Adding technologies: VMD, HDCP, IPU and VPU
  - Volume Management Device
  - High-Bandwidth Digital Content Protection
  - Image Processing Unit
  - Vision Processing Unit
  - Gaussian &amp; Neural Accelerator - GNA technology
  - [CR] Renamed Gemini Lake structures
  - [Meteor Lake] Introducing memory controller decoder
  * [AArch64]
  - Optimizing the Vcore seek
  - Workaround to Package discrete voltage: the highest Vcore
  - Improving computation of Euclidean division
  - Adjust frequency division in CNTFRQ and PMU counters
  - Scale a frequency factor from the interval
  - Refactoring the frequency ratios for decimal precision
  - Compile dev_pm_opp_put if Kernel greater or equal 4.11
  - Get the voltage core of CPUs from OPP
  * [AMD]
  - [Zen4][Raphael] Adding the EPYC 4004 Series
  - [Zen4] Clarify Hawk Point and Phoenix-Refresh architectures
  - [Family 19h] New voltage formula assigned to model 61h
  - Vcore activated
  - Voltage SoC deactivated
  - [Zen] Prevent the calculation of negative temperature (issue #496)
  - [Family 18h] Documented Hygon C86 7375
  - [Family 19h] PStateDef specification: Adding VID[8] bit 32
  - Specification of MSR HW_PSTATE_STATUS
  * [CLI]
  - aarch64: Display the state of the Memory Management Unit (MMU)
  - aarch64: State of Instruction Cache Unit I$ and Data Cache Unit D$
  - Added UI_RULER_MINIMUM &amp; UI_RULER_MAXIMUM building constraints
  - Revert "[CLI] Responsive ruler to architectural context"
  - This reverts commit 4bc38d6.
  - x86_64: AMD Boost and P-States redesigned
  - [UI] Hardening missing console/terminal size
  - Responsive ruler to architectural context
  - x86_64: Make HDCP meaning string shorter
  * [Driver]
  - Created C2U_Enable as a parameter alias of C1U_Enable</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1723032000">- update to 1.98.1
  * [AMD]
  - [Zen] Inject threshold events when thermal is out of bounds
  - Generic Zen architectures renamed with their Family number
  - Added a generic entry for the 1A family
  - Configure TjMax for multiple Ryzen and Threadripper
  - [CR] Optimize AMD temperature filtering function
  - [Zen5] Introducing the Eldora architecture aka "Granite Ridge"
  - [Zen5] Adding entries for Strix Point
  * [Intel]
  - Feature-bits of Core Ultra architecture
  - [TGL][ADL][RPL] New devices to probe IMC and Watchdog
  - [Raptor Lake-E] Adding the IMC probing entries
  - Grant full MSR_FLEX_RATIO access to Raptor Lake (06_B7)
  - Added Host Bridge DIDs of Raptor Lake-E
  - [ADL ... MTL] Code review of IMC decoders
  - [ADL] Compute DIMM Bank and Columns on both channels
  - [ADL] Process channels differently depending on DDR4 or DDR5
  - 12th to 14th generation IMC decoder refactoring
  - [ADL ... MTL] Adding Memory Controller Virtual Channel Count
  - [ADL ... MTL] Channel count as a function of DDPCD DDR_TYPE
  - [ADL ... MTL] Keep all enabled memory controllers
  - [12th and superior] Compute tWR quantity as a function of DDR version
  * [Build]
  - Now leave version number in Makefile
  - Pretty print the build and the clean of outputs
    Allow the V=n option increase the verbose level (incl. kernel)
  - CPU-Freq build against Linux Kernel version 6.11
  * [Documentation]
  - Refreshed README and Makefile</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1723464000">- Update to 1.98.2
  * [Intel]
  - [WDT] Adding multiple devices to probe TCO
    C620 Series Chipset Production SKUs (0xa1a3)
    C620 Series Chipset Super SKUs (0xa223)
    Sunrise Point/H (0xa123)
    Cannon Lake/LP (0x9da3)
    Comet Lake/H (0x06a3)
    Ice Lake/LP (0x34a3)
    Tiger Lake/H (0x43a3)
    Elkhart Lake (0x4b23)
    Kaby Lake/H (0xa2a3)
    Cannon Lake (0xa323)
    Comet Lake/V (0xa3a3)
    Ice Lake/NG (0x38a3)
    Alder lake/M (0x54a3)
    Arrow Lake/S (0x7f23)
    Jasper Lake SMBus (0x4da3)
    Sunrise Point-LP SMBus (0x9d23)
    Comet Lake PCH-LP SMBus (0x02a3)
  - MSR_FLEX_RATIO register
    Grant access to Alder Lake/H (06_9A)
    Deny access to Nehalem/Bloomfield (06_1A)
    Removed a condition in access function</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1725019200">- Update to 1.98.3
  * [AMD]
  - [VMR/RPL/GNR] Voltage Curve Optimizer (VCO)
  - Provide a specific VCO formula based on HWM_CHIPSET=AMD_VCO
    build parameter
  - The standard voltage formulas are restored to these architectures
  - Zen5: Guessed a new P-State MSR bits specification to fix the
    Coefficient Of Frequency (COF)</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1726833600">- Update to 1.98.4
  * [Build]
  - Prevent a collision with macro WRMSRNS within kernel 6.11
  * [x86_64]
  - [Virtualization] Switch to the HCF or VP_RUNTIME counters depending on the detected hypervisor</changelog>
</package>
<package pkgid="94fa663f5335f701240ffe7800fd3822473b7816fb147cac39a8afac7b11e7e38a86d784d59751a62cc1c3e83126ef4f6895b3522b746a09f1d947524ec869fd" name="CoreFreq-debuginfo" arch="x86_64">
  <version epoch="0" ver="1.98.5" rel="1.3"/>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1672747200">- update to 1.94.1:
  * [Intel] Gemini Lake
  * [AMD] Ryzen 5 6600 H SoC, UMC channels
  * [AMD] Rembrandt: maximum of two UMC channels
  * [AMD] Raphael: Decodes DIMM geometry from AddrCfg
  * [AMD] Zen: Aggregation refactored
  * [AMD] Improved DDR5 clock decoding
  * Optimized Idle Loop</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1673006400">- update to 1.94.3:
  * [AMD][RMB] If UMC is quad channels then unpopulate odd channels
  * [AMD][RPL] Provide Service Processor Vcore as workaround
  * [UI] Auto size and lay performance capabilities window
  * [UI] Adding comments to the EEO and R2H technologies
  * [AMD][Raphael] 7950X3D, 7900X3D. support</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1674475200">- update to 1.95.1:
  * [Intel] RPL: voltage of Pcore, Ecore, System Agent
  * [Intel] RPL and ADL Chipset device IDs
  * [Intel] Decode the RPL IMC and improve DDR5 support
  * [Build] Raise `MAX_FREQ_HZ` up to 7125000000 Hertz
  * [Intel] Mobile {Coffee Lake, Kaby Lake} codenames
  * [Intel] Braswell codename detection
  * [AMD] SYSCFG Register
  * [AMD] EPYC 9654
  * [AMD] Transparent SME
  * [AMD] DRAM Data Scrambling
  * [AMD] Adding "Barcelo R" and "Rembrandt R"</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1675944000">- update to 1.95.2:
  * Fixed the aggregation of the minimum ratio
  Intel:
  * [Airmont][Silvermont] Attempt to decode `tCKE` from DRMC
    register
  * [Airmont] Improve `tWTPr`, `B2B`, `tWWDR` timings
  * [Airmont] Provide a new IMC decoder
  * Add the Emerald Rapids architecture entry
  * [DDR5][DDR4] Add the `RCDw` IMC timing
  * [Raptor Lake ] De-activate the MSR Uncore counter
  AMD:
  * "Zen3/Barcelo-R" and "Zen3+ Rembrandt-R" codenames
  * [Zen] Thermal highest limit reset fix
  Misc:
  * Code review and Registers documentation:
    AMD HWCR, Intel HDC and DRP</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677067200">- update to 1.95.4
  * [Intel] [from 11th to 14th gen]
    Convert the DRAM Speed to MT/s unit
    Compute the Bus Rate based on the BIOS MC PLL
- update to 1.95.3
  * [Intel] [Airmont]
    Improved the IMC geometry
    Introducing the Spreadtrum architecture
    Fixed the Bus and DRAM frequency rates
  * [Intel] [from 11th to 13th gen] Attempt to probe the interleaved controllers
  * [Intel] [Alder Lake/H] Attempt to decode the TCO Watchdog</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677153600">- added leap_compile_fix.patch to fix compilation on Leap</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1683115200">- removed leap_compile_fix.patch no needed anymore
- update to 1.96.0
  * [AMD]
    [RPL/X3D] Disabling the turbo boosted P-states change
    [PHOENIX] Adding Z1, U and HS PRO series.
    [Genoa] DAC address at UMC BAR + 0x40
    [Zen4] Adding the PCI entries of Genoa
    [Zen2] Adding remaining PCI entries
    [Zen] Query DAC &amp; CFG with the right UMC base address register
    [Zen4] Dump the CPUID Extended CPU Topology leaves.
    [Zen][Embedded][Banded Kestrel] R1000 Processor Family
    [Zen][Embedded] "Great Horned Owl", "River Hawk", "Grey Hawk"
    Complete the "Raven Ridge" and "Picasso" lists
    [EPYC] Moved "Snowy Owl" Embedded processors to CPUID 8F_01
    [Zen4] introducing Phoenix and Dragon Range
    [RMB] adding the Ryzen Embedded V3000 processors
    [VMR] adding the "AMD Ryzen 9 PRO 5945"
  * [Intel]
    Adding Granite Rapids, Sierra Forest, Grand Ridge entries
    Adding "Lunar Lake" and "Arrow Lake" entries.
  * [UI]
    Optimized decimal to digits converter
    Allow task tracker to select up to pid_max
    Can trace the frozen states of Linux tasks.
    Only print HWP frequencies within bounds.
    Fix ruler's aggregation.
  * [CR]
    Check CPUID[HV_PARTITION_PRIVILEGE_MASK] for HV_X64_MSR_VP_RUNTIME
    Uninitialized variable fix.
    [CPPC] Build EPP with KERNEL_VERSION(6) rather than CONFIG_CACHY
    [KERNEL] Linux 6.3: Employ modifier calls with the vma-&gt;vm_flags</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1684065600">- update to 1.96.1
  * [Driver]
  - Postpone Clock Source registration during startup until the Base Clock is computed.
  - Change class_create() according to Linux Kernel 6.4
  - Clear interrupt flag (cli) after Halt in the Idle method
  * [AMD]
  - [PHOENIX] Adding Ryzen 7940H, 7840H, 7640H
  - [VERMEER] Adding Ryzen PRO and Embedded processors
  - Ryzen Z1 CPUID' brand fix
  - Adding EPYC Embedded 9004 Series as Genoa
  - Adding EPYC Embedded 7003 Series as Milan
  - Adding EPYC Embedded 7002 Series as Rome
  - Adding EPYC Embedded 7001 Series as Naples</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1685880000">- update to 1.96.2
  * [Driver]
  - Allows compilation to keep going without CONFIG_ACPI_CPPC_LIB
  * [Client]
  - Adding two command line arguments:
  - Op Show Package C-States
  - OW Toggle Energy units
  * [AMD]
  - Specification of some Configuration MSRs</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1686830400">- update to 1.96.4
  * [AMD]
  - Display CPUID state of new and legacy features:
    Fused Multiply Add [FMA4]
    Extended Operation Support [XOP]
    Translation Cache Extension [TCE]
    Trailing Bit Manipulation [TBM]
    OS Visible Work-around [OSVW]
    LOCK prefix to read CR8 [AltMov]
  * [Intel]
  - Advanced Matrix Extensions [AMX]
  - Bits and Features of Sierra Forest and Grand Ridge
  - Attempt to decode the Meteor Lake Memory Controller
- update to 1.96.3
  * [AMD]
  - [Zeppelin] Probe more than one UMC controllers on Ryzen Threadripper 1900X
  - [Zen4] Dump SMBE and BMEC sub-leaves of CPUID 0x80000020</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1688212800">- update to 1.96.5
  * [AMD]
    Adding the "AMD Ryzen 5 5600X3D"
    Introducing the Zen4c Bergamo architecture
    Specs fixing of Embedded V-series and 3000 Series Processors
    Adding MENDOCINO, RAPHAEL Pro, PHOENIX Pro among others</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1712318400">- added preamble file for %kernel_module_package macro
- update to 1.97.1
  * added aarch64 support
  * upstream did not provide a summary changelog. Full list of commits:
    https://github.com/cyring/CoreFreq/compare/1.96.5...1.97.1</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715860800">- update to 1.97.2
  * [AMD]
  - [Hawk Point] Adding Ryzen PRO processors
  - [Phoenix] Adding the unlocked Ryzen 8000 Series
  * [Intel]
  - [MeteorLake] New bits specified
  - EEO and R2H bits inversion fix in MSR_POWER_CTL (0x1fc)
  - Reverse specification of MSR UNCORE_PERF_STATUS
  - Prefetchers fix of L1 Scrubbing, L1 Next Page and L2 AMP
  * [AArch64]
  - Providing Exclusive Load/Store to atomic operations
  - Improved asm of various macro functions
  - Removed LEGACY macros
  - Optimized the CORE_COUNT macros
  - Marked the Tools feature as nominal: Stress functions available
  - Allow user access to Retired Instructions counter
  - Fix Instructions counter overflow
  - Other PMC enhancements
  * [CR]
  - Fix a building issue with AlmaLinux aka RHEL-9
  - Linux kernel 6.9: Avoid redefinition of Intel MSR macros
  * [Doc]
  - README section for AlmaLinux
  - CONFIG_TRIM_UNUSED_KSYMS kernel build config is forbidden</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715947200">- fix dependency on kernel module that was not versioned</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1722081600">- update to 1.98.0
  * [Build]
  - Change dkms configuration to install into /usr/bin/
  - Solved compilation with Fedora using RHEL MINOR version number 99
  - [CR] Fixed some compilation warnings
  - [CR] Fix memory allocation in kernel pages for the SysGate
  - Workaround to musl change in basename (#494)
  - aarch64: Build with Redhat RHEL version 9
  - [CR] x86_64: Prevent array size overflow
  - dkms and ckms configuration files upgraded to version 1.98
  * [Intel]
  - [Raptor Lake] Adding the HB DID of i7-14700K' IMC
  - Mitigation mechanism: GDS_NO; RFDS_NO; MONITOR_MITG_NO
  - Apply some SDM Documentation Changes
  - [MTL] Fix CMD Stretch bit range width
  - Added method CLOCK_FLEX_MAX with Xeon's Nehalem &amp; Core 2
  - Grants full MSR_FLEX_RATIO access to tested architectures:
  - Alder Lake/S
  - Tiger Lake/U
  - Westmere/Gulftown
  - Provides the overclocking bins with unlocked processors
  - Query the Overclocking bit (OC) from Capabilities
  - Adding technologies: VMD, HDCP, IPU and VPU
  - Volume Management Device
  - High-Bandwidth Digital Content Protection
  - Image Processing Unit
  - Vision Processing Unit
  - Gaussian &amp; Neural Accelerator - GNA technology
  - [CR] Renamed Gemini Lake structures
  - [Meteor Lake] Introducing memory controller decoder
  * [AArch64]
  - Optimizing the Vcore seek
  - Workaround to Package discrete voltage: the highest Vcore
  - Improving computation of Euclidean division
  - Adjust frequency division in CNTFRQ and PMU counters
  - Scale a frequency factor from the interval
  - Refactoring the frequency ratios for decimal precision
  - Compile dev_pm_opp_put if Kernel greater or equal 4.11
  - Get the voltage core of CPUs from OPP
  * [AMD]
  - [Zen4][Raphael] Adding the EPYC 4004 Series
  - [Zen4] Clarify Hawk Point and Phoenix-Refresh architectures
  - [Family 19h] New voltage formula assigned to model 61h
  - Vcore activated
  - Voltage SoC deactivated
  - [Zen] Prevent the calculation of negative temperature (issue #496)
  - [Family 18h] Documented Hygon C86 7375
  - [Family 19h] PStateDef specification: Adding VID[8] bit 32
  - Specification of MSR HW_PSTATE_STATUS
  * [CLI]
  - aarch64: Display the state of the Memory Management Unit (MMU)
  - aarch64: State of Instruction Cache Unit I$ and Data Cache Unit D$
  - Added UI_RULER_MINIMUM &amp; UI_RULER_MAXIMUM building constraints
  - Revert "[CLI] Responsive ruler to architectural context"
  - This reverts commit 4bc38d6.
  - x86_64: AMD Boost and P-States redesigned
  - [UI] Hardening missing console/terminal size
  - Responsive ruler to architectural context
  - x86_64: Make HDCP meaning string shorter
  * [Driver]
  - Created C2U_Enable as a parameter alias of C1U_Enable</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1723032000">- update to 1.98.1
  * [AMD]
  - [Zen] Inject threshold events when thermal is out of bounds
  - Generic Zen architectures renamed with their Family number
  - Added a generic entry for the 1A family
  - Configure TjMax for multiple Ryzen and Threadripper
  - [CR] Optimize AMD temperature filtering function
  - [Zen5] Introducing the Eldora architecture aka "Granite Ridge"
  - [Zen5] Adding entries for Strix Point
  * [Intel]
  - Feature-bits of Core Ultra architecture
  - [TGL][ADL][RPL] New devices to probe IMC and Watchdog
  - [Raptor Lake-E] Adding the IMC probing entries
  - Grant full MSR_FLEX_RATIO access to Raptor Lake (06_B7)
  - Added Host Bridge DIDs of Raptor Lake-E
  - [ADL ... MTL] Code review of IMC decoders
  - [ADL] Compute DIMM Bank and Columns on both channels
  - [ADL] Process channels differently depending on DDR4 or DDR5
  - 12th to 14th generation IMC decoder refactoring
  - [ADL ... MTL] Adding Memory Controller Virtual Channel Count
  - [ADL ... MTL] Channel count as a function of DDPCD DDR_TYPE
  - [ADL ... MTL] Keep all enabled memory controllers
  - [12th and superior] Compute tWR quantity as a function of DDR version
  * [Build]
  - Now leave version number in Makefile
  - Pretty print the build and the clean of outputs
    Allow the V=n option increase the verbose level (incl. kernel)
  - CPU-Freq build against Linux Kernel version 6.11
  * [Documentation]
  - Refreshed README and Makefile</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1723464000">- Update to 1.98.2
  * [Intel]
  - [WDT] Adding multiple devices to probe TCO
    C620 Series Chipset Production SKUs (0xa1a3)
    C620 Series Chipset Super SKUs (0xa223)
    Sunrise Point/H (0xa123)
    Cannon Lake/LP (0x9da3)
    Comet Lake/H (0x06a3)
    Ice Lake/LP (0x34a3)
    Tiger Lake/H (0x43a3)
    Elkhart Lake (0x4b23)
    Kaby Lake/H (0xa2a3)
    Cannon Lake (0xa323)
    Comet Lake/V (0xa3a3)
    Ice Lake/NG (0x38a3)
    Alder lake/M (0x54a3)
    Arrow Lake/S (0x7f23)
    Jasper Lake SMBus (0x4da3)
    Sunrise Point-LP SMBus (0x9d23)
    Comet Lake PCH-LP SMBus (0x02a3)
  - MSR_FLEX_RATIO register
    Grant access to Alder Lake/H (06_9A)
    Deny access to Nehalem/Bloomfield (06_1A)
    Removed a condition in access function</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1725019200">- Update to 1.98.3
  * [AMD]
  - [VMR/RPL/GNR] Voltage Curve Optimizer (VCO)
  - Provide a specific VCO formula based on HWM_CHIPSET=AMD_VCO
    build parameter
  - The standard voltage formulas are restored to these architectures
  - Zen5: Guessed a new P-State MSR bits specification to fix the
    Coefficient Of Frequency (COF)</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1726833600">- Update to 1.98.4
  * [Build]
  - Prevent a collision with macro WRMSRNS within kernel 6.11
  * [x86_64]
  - [Virtualization] Switch to the HCF or VP_RUNTIME counters depending on the detected hypervisor</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1731067200">- Update to 1.98.5
  * [UI]
  - Debugging a target clock ratio selector issue
  * [Build]
  - Makefile compliant with the -s silent option
  - [CI] Disable the unfound arm64v8/ubuntu:rolling
  * [AMD]
  - [Strix Point] Adding PRO series
  - [Zen5][Zen5c] Introducing the TURIN architecture
  - Supply a fallback thermal junction max to various Zen series
  - [Zen5] Mitigation mechanisms and Features bits
    SBPB,
    SRSO_NO,
    SRSO_USR_KNL_NO,
    ERMSB,
    FSRS,
    FSRC_CMPSB,
    PREFETCHI
  - [Zen] Added remaining X3D processor models
  - [PHOENIX2] Added the unlocked for overclocking Ryzen 5 8500GE
  - [PHOENIX2] Added the unlocked for overclocking Ryzen 3 8300GE
  - [SIENA] Added the EPYC Embedded 8004 Series
  - [GENOA] Added a left over EPYC Embedded 9534
  - [Turin] Employed the Genoa UMC decoder
  - [Family 1Ah] Updated the PStateDef MSR
  - [Zen] Completed CPUID leaf 0x80000021 from PPR 57238
  - [Zen5/Granite Ridge] Added Ryzen 7 9800X3D processor
  * [Intel]
  - [ARL] Declare PCI ids to probe the IMC as a MTL controller
  - [ARL][IMC] DDR5: tWR = tWRPRE - tCWL - 10
  - [ADL-X/ADL-N] Declare PCI ids to probe the memory controller
  - [LNL] Added PCI ids to probe any IMC and SMBUS
  - [ARL] Completed with SMBUS PCI id
  - [MTL-M] Declare PCI ids to probe the IMC and TCO
  - [MTL-M] Set PCI ids into Daemon
  - [RPL] Added remaining PX and H processor line platforms</changelog>
</package>
<package pkgid="52120748fb7c64ba720187194450d107f495beab2729694f42e3312ba8f3f48408af2a57887d3d9cef0ccf698e74d13f04ae3868fac6de6f6b62e7438da64f74" name="CoreFreq-debugsource" arch="x86_64">
  <version epoch="0" ver="1.97.1" rel="1.2"/>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1644667200">- Update to version 1.89.3
  * No changelog was made available by upstream</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1646654400">- removed non-working leap15_2.patch and leap15_3.patch:
  Leap 15.4 is the minimum supported version
- Update to version 1.90.1
  * support for Alder Lake architecture:
    in particular, specialized monitoring for Pcore and Ecore
  * more precise DDR5 and DDR4 timings from SKL to ADL:
    introduction of "Gear mode"
  * improvement using Power Limiters:
    zero W on PL1 &amp; PL2; DRAM clampig marked experimental
  * characteristics for Zen architecture:
    CPPC; C1E; MEM CLOCK in raw frequency
  * C-state Core for Ice Lake/X
  * various characteristics of C-state package for AMD/Zen and Intel (Lake)
  * various changes in UI
  * non-regression tests for kernels 5.16.12 and 5.17.rc6</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1655899200">- Update to version 1.91.3
  * No changelog was made available by upstream</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1661169600">- Update to version 1.91.6
  - [AMD/Zen][UMC] Fixed the Mem Clock and ECC regressions
  - Designate the Package identifier in Power consumed readings
  - [Intel/ADL/IMC] Guessing activated channel from the populated DIMM
  - [AMD][UMC, IOMMU] Adding missing DID of family 19h devices
  - [AMD_DataFabric_Cezanne] Removed the Experimental mode
  - Intel/ADL/IMC: Fixing the Memory Channels count
  - [AMD/Zen] Improved UMC mapping. Threadripper 3960X issue
  - Avoid some NULL pointer strings during SMBIOS decoding</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1667563200">- update to version 1.92.3
  - Export CPUID bits Intel Sierra Forest, Grand Ridge, Granite Rapids
    and completes AMD64 Fn0000_0007_ECX_x0
  - [Features] WBNOINVD and CLZERO instructions
  - Adding various Mitigation Mechanism aggregations:
    IPRED_DIS_U, IPRED_DIS_S, RRSBA_DIS_U, RRSBA_DIS_S, BHI_DIS_S, MCDT_NO
  - RDPID and UMIP capability fixed.
  - [AMD] Perf. Mon. version based on CPUID_0x80000022.EAX.PerfMonV2
  - [AMD][Zen3+][Rembrandt] Trigger UMC and IOMMU decoders
  - [AMD][Ryzen 5 6600H] Found voltage VID @ SMU 0x6f010 and 0x6f014
  - Introducing AMD Security Feature capabilities:
    SKINIT, SEV, GMET, SEV-ES, SEV-SNP
  - [AMD64] Non-architectural MSR: SPECULATIVE STORE BYPASS DISABLE
  - [Intel][2nd &amp; 3rd gen] Misc IMC optimizations
  - [AMD][Rembrandt] Provides Vcore from a new formula.
  - Dumping CPUID leaves from AMD64 Architecture Programmer’s Manual
  - [Intel][HSW &amp; BDW] Compute the DIMM banks
  - [UI] Re-assigned keys to move or resize windows.
  - [AMD][Zen] Uncore frequency: Improving the Memory Clock divisor
  - [Intel][HSW &amp; BDW][SKL] Make use of same function DimmWidthToRows
  - [AMD][Zen3+][Rembrandt] Provides the thermal sensor.
  - [AMD/Zen2 &amp; Zen3] Removed the HSMP capability.
  - [Intel][CML][RKL][TGL] Compute the DIMM Rows from CH_WIDTH
  - [AMD/EPYC] Adding the CPUID of Zen4 Genoa architecture
  - [AMD/Zen2] Introducing Mendocino architecture
  - Changed MeteorLake/N to CPUID 06_B5
  - [Intel] Computes BIOS DRAM frequency based on PLL_REF100
  - [Intel][SNB/IVB/HSW/BDW] Improved BIOS DRAM frequency
  - [Intel][SNB/IVB] DRAM frequency based on RAM_Select and FSB_Select
  - [Intel][IVB] IMC specifications and optimizations.
  - [Intel][SNB,IVB] Computes the DIMM A from DAS bit in MAD register
  - [Intel][SNB,IVB,HSW,BDW] Rolling back changes to the DIMM topology
  - [Intel][BDW][HSW] Query the IMC Power Down Mode
  - [Intel][IVB][SNB] Attempt to decode the IMC third timings
  - [AMD][Ryzen] Added AMD Ryzen 7 PRO 6860Z
  - [AMD][F17h-F19h] Can toggle ON and OFF the Instruction Cache Unit
  - [AMD] Checking the Ryzen "OEM Only" processors
  - [Intel] Specification of 12th Gen. MSR registers capability
  - [Intel] Adding Raptor Lake-S with CPUID 06_BF
  - [AMD] Introducing Zen 4 / Raphael architecture
  - [Intel][SNB,IVB,HSW] Attempt to assign the Rank per DIMM slot
  - [Intel][SNB,IVB,HSW] Attempt to fix the DIMM(s) topology layout
  - ClockSource: TSC udelay() asm implementation builtin as a default
  - [Intel][Alder Lake] Adding IMC entry for i5-12500 processor
  - [Intel][Alder Lake] Added default case if Processor has only Pcores
  - [Intel][Atom/Bonnell][IMC] Attempt to compute the DIMM geometry
  - [UI][Custom view] Show the Uncore unit in watt or joule
  - [UI] Display HWP or CPPC in footer for capable processors.
  - [CLI] Added HWP Capabilities and HWP Request to the JSON export
  - [CLI] Don't allow the HWP dialog box if feature is not available.
  - [CPPC][Firmware] allows (de)activation of the feature.
  - [CLI] Added CPU ratios to JSON export
  - [CPPC] Improved scaling
  - [CPPC] Build fixed down to Kernel version 3
  - [Kernel/ACPI] Attempt to write CPPC registers</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1667563201">- Repair deficient description grammar.</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1670241600">- update to 1.92.4:
  * [Intel/Skylake-X] Permits MSR_RING_PERF_LIMIT_REASONS</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1670932800">- removed modprobe_corefreqd.service.patch and harden_corefreqd.service.patch
  now included in new corefreqd.service file replacing stock one
- update to 1.93.1
  * [PRJ] CoreFreq version 1.93.1
  * [ACPI/CPPC/EPP] Preview of AMD/Zen Energy Preference (CONFIG_CACHY)
  * [UI] Changed the HWP or CPPC ratio bounds.
  * [FIX] Putting `corefreqd` in the root cgroup (issue #379) Thanks to gel-crabs
  * [DOC] Parameters to blacklist the amd_pstate since kernel 6.0.11
  * [AMD][Zen4] Apply a voltage formula based on Rembrandt's. (#378)
  * [AMD][Zen4/Raphael] Attempting temperature per CCD from TCTL+0x308
  * [AMD][Zen4] Changed Timer loop
  * [CR] CLI code review and UI optimizations
  * [UI] Auto refresh the Topology items when off/online
  * [CR] Conditionally build with additional PMC Counters
  * [Intel] Adding Z8000 System Memory Controller Registers
  * [CR] Transformed global variable in cells padding
  * [UI] Windows re-scaling fix
  * [UI] Apply color theming to the CPPC capabilities list.
  * [AMD][Raphael] Adding device DIDs to probe UMC and IOMMU
  * [CPPC/FMW] Computes value bounds while Enabling/Disabling firmware
  * [CR] CPPC lib errors are now raised to Debug level
  * [AMD][Zen4] Increased the UMC size to 12 channels.
  * [CPPC] Handles the OffLine CPU case.
  * [CLI] Refactoring HWP/CPPC to print all capabilities per CPU
  * [ACPI] Computes the CPPC Bounds
  * [Intel] Linear Address Masking (LAM)
  * [CLI] EFER: Left aligned labels
  * [AMD] Reports UAIE and AIBRSE bits from EFER system register
  * [CLI] Changed mitigation mechanisms incapability labels
  * [AMD][Zen2] Mitigation Mechanism BTC-NOBR * ACPI/OSPM documentation
  * [CR] Code review on bit masks
  * [CPPC][ACPI] Kernel may decode the Guaranteed Performance Register
  * [UI] Optimize the cycles to clear the time bar.
  * [CR] Code review for extra compiler warnings
  * [UI] Time of the day displayed in the right side of menu
  * [UI] Display the current date and time in menu bar
  * [Kernel] Introducing support of `CONFIG_SCHED_BORE`
  * [CLI] Fixing ambiguous CPPC report: hardware vs firmware
  * [CLI] Surrounds _CPC feature with square brackets
  * [CPPC] Provides the ACPI _CPC object state.
  * [UI] Colors the task being tracked in the tracking list
  * [UI] Display the current time in the menu bar
  * [CLI] Reserve the programmable TDP section to Intel processors.
  * [AMD/Zen3+] Improving the DIMM geometry of Rembrandt UMC</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1672747200">- update to 1.94.1:
  * [Intel] Gemini Lake
  * [AMD] Ryzen 5 6600 H SoC, UMC channels
  * [AMD] Rembrandt: maximum of two UMC channels
  * [AMD] Raphael: Decodes DIMM geometry from AddrCfg
  * [AMD] Zen: Aggregation refactored
  * [AMD] Improved DDR5 clock decoding
  * Optimized Idle Loop</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1673006400">- update to 1.94.3:
  * [AMD][RMB] If UMC is quad channels then unpopulate odd channels
  * [AMD][RPL] Provide Service Processor Vcore as workaround
  * [UI] Auto size and lay performance capabilities window
  * [UI] Adding comments to the EEO and R2H technologies
  * [AMD][Raphael] 7950X3D, 7900X3D. support</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1674475200">- update to 1.95.1:
  * [Intel] RPL: voltage of Pcore, Ecore, System Agent
  * [Intel] RPL and ADL Chipset device IDs
  * [Intel] Decode the RPL IMC and improve DDR5 support
  * [Build] Raise `MAX_FREQ_HZ` up to 7125000000 Hertz
  * [Intel] Mobile {Coffee Lake, Kaby Lake} codenames
  * [Intel] Braswell codename detection
  * [AMD] SYSCFG Register
  * [AMD] EPYC 9654
  * [AMD] Transparent SME
  * [AMD] DRAM Data Scrambling
  * [AMD] Adding "Barcelo R" and "Rembrandt R"</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1675944000">- update to 1.95.2:
  * Fixed the aggregation of the minimum ratio
  Intel:
  * [Airmont][Silvermont] Attempt to decode `tCKE` from DRMC
    register
  * [Airmont] Improve `tWTPr`, `B2B`, `tWWDR` timings
  * [Airmont] Provide a new IMC decoder
  * Add the Emerald Rapids architecture entry
  * [DDR5][DDR4] Add the `RCDw` IMC timing
  * [Raptor Lake ] De-activate the MSR Uncore counter
  AMD:
  * "Zen3/Barcelo-R" and "Zen3+ Rembrandt-R" codenames
  * [Zen] Thermal highest limit reset fix
  Misc:
  * Code review and Registers documentation:
    AMD HWCR, Intel HDC and DRP</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677067200">- update to 1.95.4
  * [Intel] [from 11th to 14th gen]
    Convert the DRAM Speed to MT/s unit
    Compute the Bus Rate based on the BIOS MC PLL
- update to 1.95.3
  * [Intel] [Airmont]
    Improved the IMC geometry
    Introducing the Spreadtrum architecture
    Fixed the Bus and DRAM frequency rates
  * [Intel] [from 11th to 13th gen] Attempt to probe the interleaved controllers
  * [Intel] [Alder Lake/H] Attempt to decode the TCO Watchdog</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677153600">- added leap_compile_fix.patch to fix compilation on Leap</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1683115200">- removed leap_compile_fix.patch no needed anymore
- update to 1.96.0
  * [AMD]
    [RPL/X3D] Disabling the turbo boosted P-states change
    [PHOENIX] Adding Z1, U and HS PRO series.
    [Genoa] DAC address at UMC BAR + 0x40
    [Zen4] Adding the PCI entries of Genoa
    [Zen2] Adding remaining PCI entries
    [Zen] Query DAC &amp; CFG with the right UMC base address register
    [Zen4] Dump the CPUID Extended CPU Topology leaves.
    [Zen][Embedded][Banded Kestrel] R1000 Processor Family
    [Zen][Embedded] "Great Horned Owl", "River Hawk", "Grey Hawk"
    Complete the "Raven Ridge" and "Picasso" lists
    [EPYC] Moved "Snowy Owl" Embedded processors to CPUID 8F_01
    [Zen4] introducing Phoenix and Dragon Range
    [RMB] adding the Ryzen Embedded V3000 processors
    [VMR] adding the "AMD Ryzen 9 PRO 5945"
  * [Intel]
    Adding Granite Rapids, Sierra Forest, Grand Ridge entries
    Adding "Lunar Lake" and "Arrow Lake" entries.
  * [UI]
    Optimized decimal to digits converter
    Allow task tracker to select up to pid_max
    Can trace the frozen states of Linux tasks.
    Only print HWP frequencies within bounds.
    Fix ruler's aggregation.
  * [CR]
    Check CPUID[HV_PARTITION_PRIVILEGE_MASK] for HV_X64_MSR_VP_RUNTIME
    Uninitialized variable fix.
    [CPPC] Build EPP with KERNEL_VERSION(6) rather than CONFIG_CACHY
    [KERNEL] Linux 6.3: Employ modifier calls with the vma-&gt;vm_flags</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1684065600">- update to 1.96.1
  * [Driver]
  - Postpone Clock Source registration during startup until the Base Clock is computed.
  - Change class_create() according to Linux Kernel 6.4
  - Clear interrupt flag (cli) after Halt in the Idle method
  * [AMD]
  - [PHOENIX] Adding Ryzen 7940H, 7840H, 7640H
  - [VERMEER] Adding Ryzen PRO and Embedded processors
  - Ryzen Z1 CPUID' brand fix
  - Adding EPYC Embedded 9004 Series as Genoa
  - Adding EPYC Embedded 7003 Series as Milan
  - Adding EPYC Embedded 7002 Series as Rome
  - Adding EPYC Embedded 7001 Series as Naples</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1685880000">- update to 1.96.2
  * [Driver]
  - Allows compilation to keep going without CONFIG_ACPI_CPPC_LIB
  * [Client]
  - Adding two command line arguments:
  - Op Show Package C-States
  - OW Toggle Energy units
  * [AMD]
  - Specification of some Configuration MSRs</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1686830400">- update to 1.96.4
  * [AMD]
  - Display CPUID state of new and legacy features:
    Fused Multiply Add [FMA4]
    Extended Operation Support [XOP]
    Translation Cache Extension [TCE]
    Trailing Bit Manipulation [TBM]
    OS Visible Work-around [OSVW]
    LOCK prefix to read CR8 [AltMov]
  * [Intel]
  - Advanced Matrix Extensions [AMX]
  - Bits and Features of Sierra Forest and Grand Ridge
  - Attempt to decode the Meteor Lake Memory Controller
- update to 1.96.3
  * [AMD]
  - [Zeppelin] Probe more than one UMC controllers on Ryzen Threadripper 1900X
  - [Zen4] Dump SMBE and BMEC sub-leaves of CPUID 0x80000020</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1688212800">- update to 1.96.5
  * [AMD]
    Adding the "AMD Ryzen 5 5600X3D"
    Introducing the Zen4c Bergamo architecture
    Specs fixing of Embedded V-series and 3000 Series Processors
    Adding MENDOCINO, RAPHAEL Pro, PHOENIX Pro among others</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1712318400">- added preamble file for %kernel_module_package macro
- update to 1.97.1
  * added aarch64 support
  * upstream did not provide a summary changelog. Full list of commits:
    https://github.com/cyring/CoreFreq/compare/1.96.5...1.97.1</changelog>
</package>
<package pkgid="e385665317909f017bce54dfbf4f9a1401c44f27de2a3b0bce6b0e9f24b3b97fa34a2e8b4f8a6b8b4f1c1aa1757e1238da4ba53958ed86f3f6d1dc8ba13ce10a" name="CoreFreq-debugsource" arch="x86_64">
  <version epoch="0" ver="1.97.1" rel="1.3"/>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1644667200">- Update to version 1.89.3
  * No changelog was made available by upstream</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1646654400">- removed non-working leap15_2.patch and leap15_3.patch:
  Leap 15.4 is the minimum supported version
- Update to version 1.90.1
  * support for Alder Lake architecture:
    in particular, specialized monitoring for Pcore and Ecore
  * more precise DDR5 and DDR4 timings from SKL to ADL:
    introduction of "Gear mode"
  * improvement using Power Limiters:
    zero W on PL1 &amp; PL2; DRAM clampig marked experimental
  * characteristics for Zen architecture:
    CPPC; C1E; MEM CLOCK in raw frequency
  * C-state Core for Ice Lake/X
  * various characteristics of C-state package for AMD/Zen and Intel (Lake)
  * various changes in UI
  * non-regression tests for kernels 5.16.12 and 5.17.rc6</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1655899200">- Update to version 1.91.3
  * No changelog was made available by upstream</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1661169600">- Update to version 1.91.6
  - [AMD/Zen][UMC] Fixed the Mem Clock and ECC regressions
  - Designate the Package identifier in Power consumed readings
  - [Intel/ADL/IMC] Guessing activated channel from the populated DIMM
  - [AMD][UMC, IOMMU] Adding missing DID of family 19h devices
  - [AMD_DataFabric_Cezanne] Removed the Experimental mode
  - Intel/ADL/IMC: Fixing the Memory Channels count
  - [AMD/Zen] Improved UMC mapping. Threadripper 3960X issue
  - Avoid some NULL pointer strings during SMBIOS decoding</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1667563200">- update to version 1.92.3
  - Export CPUID bits Intel Sierra Forest, Grand Ridge, Granite Rapids
    and completes AMD64 Fn0000_0007_ECX_x0
  - [Features] WBNOINVD and CLZERO instructions
  - Adding various Mitigation Mechanism aggregations:
    IPRED_DIS_U, IPRED_DIS_S, RRSBA_DIS_U, RRSBA_DIS_S, BHI_DIS_S, MCDT_NO
  - RDPID and UMIP capability fixed.
  - [AMD] Perf. Mon. version based on CPUID_0x80000022.EAX.PerfMonV2
  - [AMD][Zen3+][Rembrandt] Trigger UMC and IOMMU decoders
  - [AMD][Ryzen 5 6600H] Found voltage VID @ SMU 0x6f010 and 0x6f014
  - Introducing AMD Security Feature capabilities:
    SKINIT, SEV, GMET, SEV-ES, SEV-SNP
  - [AMD64] Non-architectural MSR: SPECULATIVE STORE BYPASS DISABLE
  - [Intel][2nd &amp; 3rd gen] Misc IMC optimizations
  - [AMD][Rembrandt] Provides Vcore from a new formula.
  - Dumping CPUID leaves from AMD64 Architecture Programmer’s Manual
  - [Intel][HSW &amp; BDW] Compute the DIMM banks
  - [UI] Re-assigned keys to move or resize windows.
  - [AMD][Zen] Uncore frequency: Improving the Memory Clock divisor
  - [Intel][HSW &amp; BDW][SKL] Make use of same function DimmWidthToRows
  - [AMD][Zen3+][Rembrandt] Provides the thermal sensor.
  - [AMD/Zen2 &amp; Zen3] Removed the HSMP capability.
  - [Intel][CML][RKL][TGL] Compute the DIMM Rows from CH_WIDTH
  - [AMD/EPYC] Adding the CPUID of Zen4 Genoa architecture
  - [AMD/Zen2] Introducing Mendocino architecture
  - Changed MeteorLake/N to CPUID 06_B5
  - [Intel] Computes BIOS DRAM frequency based on PLL_REF100
  - [Intel][SNB/IVB/HSW/BDW] Improved BIOS DRAM frequency
  - [Intel][SNB/IVB] DRAM frequency based on RAM_Select and FSB_Select
  - [Intel][IVB] IMC specifications and optimizations.
  - [Intel][SNB,IVB] Computes the DIMM A from DAS bit in MAD register
  - [Intel][SNB,IVB,HSW,BDW] Rolling back changes to the DIMM topology
  - [Intel][BDW][HSW] Query the IMC Power Down Mode
  - [Intel][IVB][SNB] Attempt to decode the IMC third timings
  - [AMD][Ryzen] Added AMD Ryzen 7 PRO 6860Z
  - [AMD][F17h-F19h] Can toggle ON and OFF the Instruction Cache Unit
  - [AMD] Checking the Ryzen "OEM Only" processors
  - [Intel] Specification of 12th Gen. MSR registers capability
  - [Intel] Adding Raptor Lake-S with CPUID 06_BF
  - [AMD] Introducing Zen 4 / Raphael architecture
  - [Intel][SNB,IVB,HSW] Attempt to assign the Rank per DIMM slot
  - [Intel][SNB,IVB,HSW] Attempt to fix the DIMM(s) topology layout
  - ClockSource: TSC udelay() asm implementation builtin as a default
  - [Intel][Alder Lake] Adding IMC entry for i5-12500 processor
  - [Intel][Alder Lake] Added default case if Processor has only Pcores
  - [Intel][Atom/Bonnell][IMC] Attempt to compute the DIMM geometry
  - [UI][Custom view] Show the Uncore unit in watt or joule
  - [UI] Display HWP or CPPC in footer for capable processors.
  - [CLI] Added HWP Capabilities and HWP Request to the JSON export
  - [CLI] Don't allow the HWP dialog box if feature is not available.
  - [CPPC][Firmware] allows (de)activation of the feature.
  - [CLI] Added CPU ratios to JSON export
  - [CPPC] Improved scaling
  - [CPPC] Build fixed down to Kernel version 3
  - [Kernel/ACPI] Attempt to write CPPC registers</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1667563201">- Repair deficient description grammar.</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1670241600">- update to 1.92.4:
  * [Intel/Skylake-X] Permits MSR_RING_PERF_LIMIT_REASONS</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1670932800">- removed modprobe_corefreqd.service.patch and harden_corefreqd.service.patch
  now included in new corefreqd.service file replacing stock one
- update to 1.93.1
  * [PRJ] CoreFreq version 1.93.1
  * [ACPI/CPPC/EPP] Preview of AMD/Zen Energy Preference (CONFIG_CACHY)
  * [UI] Changed the HWP or CPPC ratio bounds.
  * [FIX] Putting `corefreqd` in the root cgroup (issue #379) Thanks to gel-crabs
  * [DOC] Parameters to blacklist the amd_pstate since kernel 6.0.11
  * [AMD][Zen4] Apply a voltage formula based on Rembrandt's. (#378)
  * [AMD][Zen4/Raphael] Attempting temperature per CCD from TCTL+0x308
  * [AMD][Zen4] Changed Timer loop
  * [CR] CLI code review and UI optimizations
  * [UI] Auto refresh the Topology items when off/online
  * [CR] Conditionally build with additional PMC Counters
  * [Intel] Adding Z8000 System Memory Controller Registers
  * [CR] Transformed global variable in cells padding
  * [UI] Windows re-scaling fix
  * [UI] Apply color theming to the CPPC capabilities list.
  * [AMD][Raphael] Adding device DIDs to probe UMC and IOMMU
  * [CPPC/FMW] Computes value bounds while Enabling/Disabling firmware
  * [CR] CPPC lib errors are now raised to Debug level
  * [AMD][Zen4] Increased the UMC size to 12 channels.
  * [CPPC] Handles the OffLine CPU case.
  * [CLI] Refactoring HWP/CPPC to print all capabilities per CPU
  * [ACPI] Computes the CPPC Bounds
  * [Intel] Linear Address Masking (LAM)
  * [CLI] EFER: Left aligned labels
  * [AMD] Reports UAIE and AIBRSE bits from EFER system register
  * [CLI] Changed mitigation mechanisms incapability labels
  * [AMD][Zen2] Mitigation Mechanism BTC-NOBR * ACPI/OSPM documentation
  * [CR] Code review on bit masks
  * [CPPC][ACPI] Kernel may decode the Guaranteed Performance Register
  * [UI] Optimize the cycles to clear the time bar.
  * [CR] Code review for extra compiler warnings
  * [UI] Time of the day displayed in the right side of menu
  * [UI] Display the current date and time in menu bar
  * [Kernel] Introducing support of `CONFIG_SCHED_BORE`
  * [CLI] Fixing ambiguous CPPC report: hardware vs firmware
  * [CLI] Surrounds _CPC feature with square brackets
  * [CPPC] Provides the ACPI _CPC object state.
  * [UI] Colors the task being tracked in the tracking list
  * [UI] Display the current time in the menu bar
  * [CLI] Reserve the programmable TDP section to Intel processors.
  * [AMD/Zen3+] Improving the DIMM geometry of Rembrandt UMC</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1672747200">- update to 1.94.1:
  * [Intel] Gemini Lake
  * [AMD] Ryzen 5 6600 H SoC, UMC channels
  * [AMD] Rembrandt: maximum of two UMC channels
  * [AMD] Raphael: Decodes DIMM geometry from AddrCfg
  * [AMD] Zen: Aggregation refactored
  * [AMD] Improved DDR5 clock decoding
  * Optimized Idle Loop</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1673006400">- update to 1.94.3:
  * [AMD][RMB] If UMC is quad channels then unpopulate odd channels
  * [AMD][RPL] Provide Service Processor Vcore as workaround
  * [UI] Auto size and lay performance capabilities window
  * [UI] Adding comments to the EEO and R2H technologies
  * [AMD][Raphael] 7950X3D, 7900X3D. support</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1674475200">- update to 1.95.1:
  * [Intel] RPL: voltage of Pcore, Ecore, System Agent
  * [Intel] RPL and ADL Chipset device IDs
  * [Intel] Decode the RPL IMC and improve DDR5 support
  * [Build] Raise `MAX_FREQ_HZ` up to 7125000000 Hertz
  * [Intel] Mobile {Coffee Lake, Kaby Lake} codenames
  * [Intel] Braswell codename detection
  * [AMD] SYSCFG Register
  * [AMD] EPYC 9654
  * [AMD] Transparent SME
  * [AMD] DRAM Data Scrambling
  * [AMD] Adding "Barcelo R" and "Rembrandt R"</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1675944000">- update to 1.95.2:
  * Fixed the aggregation of the minimum ratio
  Intel:
  * [Airmont][Silvermont] Attempt to decode `tCKE` from DRMC
    register
  * [Airmont] Improve `tWTPr`, `B2B`, `tWWDR` timings
  * [Airmont] Provide a new IMC decoder
  * Add the Emerald Rapids architecture entry
  * [DDR5][DDR4] Add the `RCDw` IMC timing
  * [Raptor Lake ] De-activate the MSR Uncore counter
  AMD:
  * "Zen3/Barcelo-R" and "Zen3+ Rembrandt-R" codenames
  * [Zen] Thermal highest limit reset fix
  Misc:
  * Code review and Registers documentation:
    AMD HWCR, Intel HDC and DRP</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677067200">- update to 1.95.4
  * [Intel] [from 11th to 14th gen]
    Convert the DRAM Speed to MT/s unit
    Compute the Bus Rate based on the BIOS MC PLL
- update to 1.95.3
  * [Intel] [Airmont]
    Improved the IMC geometry
    Introducing the Spreadtrum architecture
    Fixed the Bus and DRAM frequency rates
  * [Intel] [from 11th to 13th gen] Attempt to probe the interleaved controllers
  * [Intel] [Alder Lake/H] Attempt to decode the TCO Watchdog</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677153600">- added leap_compile_fix.patch to fix compilation on Leap</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1683115200">- removed leap_compile_fix.patch no needed anymore
- update to 1.96.0
  * [AMD]
    [RPL/X3D] Disabling the turbo boosted P-states change
    [PHOENIX] Adding Z1, U and HS PRO series.
    [Genoa] DAC address at UMC BAR + 0x40
    [Zen4] Adding the PCI entries of Genoa
    [Zen2] Adding remaining PCI entries
    [Zen] Query DAC &amp; CFG with the right UMC base address register
    [Zen4] Dump the CPUID Extended CPU Topology leaves.
    [Zen][Embedded][Banded Kestrel] R1000 Processor Family
    [Zen][Embedded] "Great Horned Owl", "River Hawk", "Grey Hawk"
    Complete the "Raven Ridge" and "Picasso" lists
    [EPYC] Moved "Snowy Owl" Embedded processors to CPUID 8F_01
    [Zen4] introducing Phoenix and Dragon Range
    [RMB] adding the Ryzen Embedded V3000 processors
    [VMR] adding the "AMD Ryzen 9 PRO 5945"
  * [Intel]
    Adding Granite Rapids, Sierra Forest, Grand Ridge entries
    Adding "Lunar Lake" and "Arrow Lake" entries.
  * [UI]
    Optimized decimal to digits converter
    Allow task tracker to select up to pid_max
    Can trace the frozen states of Linux tasks.
    Only print HWP frequencies within bounds.
    Fix ruler's aggregation.
  * [CR]
    Check CPUID[HV_PARTITION_PRIVILEGE_MASK] for HV_X64_MSR_VP_RUNTIME
    Uninitialized variable fix.
    [CPPC] Build EPP with KERNEL_VERSION(6) rather than CONFIG_CACHY
    [KERNEL] Linux 6.3: Employ modifier calls with the vma-&gt;vm_flags</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1684065600">- update to 1.96.1
  * [Driver]
  - Postpone Clock Source registration during startup until the Base Clock is computed.
  - Change class_create() according to Linux Kernel 6.4
  - Clear interrupt flag (cli) after Halt in the Idle method
  * [AMD]
  - [PHOENIX] Adding Ryzen 7940H, 7840H, 7640H
  - [VERMEER] Adding Ryzen PRO and Embedded processors
  - Ryzen Z1 CPUID' brand fix
  - Adding EPYC Embedded 9004 Series as Genoa
  - Adding EPYC Embedded 7003 Series as Milan
  - Adding EPYC Embedded 7002 Series as Rome
  - Adding EPYC Embedded 7001 Series as Naples</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1685880000">- update to 1.96.2
  * [Driver]
  - Allows compilation to keep going without CONFIG_ACPI_CPPC_LIB
  * [Client]
  - Adding two command line arguments:
  - Op Show Package C-States
  - OW Toggle Energy units
  * [AMD]
  - Specification of some Configuration MSRs</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1686830400">- update to 1.96.4
  * [AMD]
  - Display CPUID state of new and legacy features:
    Fused Multiply Add [FMA4]
    Extended Operation Support [XOP]
    Translation Cache Extension [TCE]
    Trailing Bit Manipulation [TBM]
    OS Visible Work-around [OSVW]
    LOCK prefix to read CR8 [AltMov]
  * [Intel]
  - Advanced Matrix Extensions [AMX]
  - Bits and Features of Sierra Forest and Grand Ridge
  - Attempt to decode the Meteor Lake Memory Controller
- update to 1.96.3
  * [AMD]
  - [Zeppelin] Probe more than one UMC controllers on Ryzen Threadripper 1900X
  - [Zen4] Dump SMBE and BMEC sub-leaves of CPUID 0x80000020</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1688212800">- update to 1.96.5
  * [AMD]
    Adding the "AMD Ryzen 5 5600X3D"
    Introducing the Zen4c Bergamo architecture
    Specs fixing of Embedded V-series and 3000 Series Processors
    Adding MENDOCINO, RAPHAEL Pro, PHOENIX Pro among others</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1712318400">- added preamble file for %kernel_module_package macro
- update to 1.97.1
  * added aarch64 support
  * upstream did not provide a summary changelog. Full list of commits:
    https://github.com/cyring/CoreFreq/compare/1.96.5...1.97.1</changelog>
</package>
<package pkgid="ff071af94797ea2e308bfc2458929c01803de107ea1c0a8d3ec2c42f367661ec5a5ceca6a62f1cb6d7580bdf898761c4cd7c9fd2f2da562f836f014090c08785" name="CoreFreq-debugsource" arch="x86_64">
  <version epoch="0" ver="1.97.2" rel="2.2"/>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1655899200">- Update to version 1.91.3
  * No changelog was made available by upstream</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1661169600">- Update to version 1.91.6
  - [AMD/Zen][UMC] Fixed the Mem Clock and ECC regressions
  - Designate the Package identifier in Power consumed readings
  - [Intel/ADL/IMC] Guessing activated channel from the populated DIMM
  - [AMD][UMC, IOMMU] Adding missing DID of family 19h devices
  - [AMD_DataFabric_Cezanne] Removed the Experimental mode
  - Intel/ADL/IMC: Fixing the Memory Channels count
  - [AMD/Zen] Improved UMC mapping. Threadripper 3960X issue
  - Avoid some NULL pointer strings during SMBIOS decoding</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1667563200">- update to version 1.92.3
  - Export CPUID bits Intel Sierra Forest, Grand Ridge, Granite Rapids
    and completes AMD64 Fn0000_0007_ECX_x0
  - [Features] WBNOINVD and CLZERO instructions
  - Adding various Mitigation Mechanism aggregations:
    IPRED_DIS_U, IPRED_DIS_S, RRSBA_DIS_U, RRSBA_DIS_S, BHI_DIS_S, MCDT_NO
  - RDPID and UMIP capability fixed.
  - [AMD] Perf. Mon. version based on CPUID_0x80000022.EAX.PerfMonV2
  - [AMD][Zen3+][Rembrandt] Trigger UMC and IOMMU decoders
  - [AMD][Ryzen 5 6600H] Found voltage VID @ SMU 0x6f010 and 0x6f014
  - Introducing AMD Security Feature capabilities:
    SKINIT, SEV, GMET, SEV-ES, SEV-SNP
  - [AMD64] Non-architectural MSR: SPECULATIVE STORE BYPASS DISABLE
  - [Intel][2nd &amp; 3rd gen] Misc IMC optimizations
  - [AMD][Rembrandt] Provides Vcore from a new formula.
  - Dumping CPUID leaves from AMD64 Architecture Programmer’s Manual
  - [Intel][HSW &amp; BDW] Compute the DIMM banks
  - [UI] Re-assigned keys to move or resize windows.
  - [AMD][Zen] Uncore frequency: Improving the Memory Clock divisor
  - [Intel][HSW &amp; BDW][SKL] Make use of same function DimmWidthToRows
  - [AMD][Zen3+][Rembrandt] Provides the thermal sensor.
  - [AMD/Zen2 &amp; Zen3] Removed the HSMP capability.
  - [Intel][CML][RKL][TGL] Compute the DIMM Rows from CH_WIDTH
  - [AMD/EPYC] Adding the CPUID of Zen4 Genoa architecture
  - [AMD/Zen2] Introducing Mendocino architecture
  - Changed MeteorLake/N to CPUID 06_B5
  - [Intel] Computes BIOS DRAM frequency based on PLL_REF100
  - [Intel][SNB/IVB/HSW/BDW] Improved BIOS DRAM frequency
  - [Intel][SNB/IVB] DRAM frequency based on RAM_Select and FSB_Select
  - [Intel][IVB] IMC specifications and optimizations.
  - [Intel][SNB,IVB] Computes the DIMM A from DAS bit in MAD register
  - [Intel][SNB,IVB,HSW,BDW] Rolling back changes to the DIMM topology
  - [Intel][BDW][HSW] Query the IMC Power Down Mode
  - [Intel][IVB][SNB] Attempt to decode the IMC third timings
  - [AMD][Ryzen] Added AMD Ryzen 7 PRO 6860Z
  - [AMD][F17h-F19h] Can toggle ON and OFF the Instruction Cache Unit
  - [AMD] Checking the Ryzen "OEM Only" processors
  - [Intel] Specification of 12th Gen. MSR registers capability
  - [Intel] Adding Raptor Lake-S with CPUID 06_BF
  - [AMD] Introducing Zen 4 / Raphael architecture
  - [Intel][SNB,IVB,HSW] Attempt to assign the Rank per DIMM slot
  - [Intel][SNB,IVB,HSW] Attempt to fix the DIMM(s) topology layout
  - ClockSource: TSC udelay() asm implementation builtin as a default
  - [Intel][Alder Lake] Adding IMC entry for i5-12500 processor
  - [Intel][Alder Lake] Added default case if Processor has only Pcores
  - [Intel][Atom/Bonnell][IMC] Attempt to compute the DIMM geometry
  - [UI][Custom view] Show the Uncore unit in watt or joule
  - [UI] Display HWP or CPPC in footer for capable processors.
  - [CLI] Added HWP Capabilities and HWP Request to the JSON export
  - [CLI] Don't allow the HWP dialog box if feature is not available.
  - [CPPC][Firmware] allows (de)activation of the feature.
  - [CLI] Added CPU ratios to JSON export
  - [CPPC] Improved scaling
  - [CPPC] Build fixed down to Kernel version 3
  - [Kernel/ACPI] Attempt to write CPPC registers</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1667563201">- Repair deficient description grammar.</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1670241600">- update to 1.92.4:
  * [Intel/Skylake-X] Permits MSR_RING_PERF_LIMIT_REASONS</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1670932800">- removed modprobe_corefreqd.service.patch and harden_corefreqd.service.patch
  now included in new corefreqd.service file replacing stock one
- update to 1.93.1
  * [PRJ] CoreFreq version 1.93.1
  * [ACPI/CPPC/EPP] Preview of AMD/Zen Energy Preference (CONFIG_CACHY)
  * [UI] Changed the HWP or CPPC ratio bounds.
  * [FIX] Putting `corefreqd` in the root cgroup (issue #379) Thanks to gel-crabs
  * [DOC] Parameters to blacklist the amd_pstate since kernel 6.0.11
  * [AMD][Zen4] Apply a voltage formula based on Rembrandt's. (#378)
  * [AMD][Zen4/Raphael] Attempting temperature per CCD from TCTL+0x308
  * [AMD][Zen4] Changed Timer loop
  * [CR] CLI code review and UI optimizations
  * [UI] Auto refresh the Topology items when off/online
  * [CR] Conditionally build with additional PMC Counters
  * [Intel] Adding Z8000 System Memory Controller Registers
  * [CR] Transformed global variable in cells padding
  * [UI] Windows re-scaling fix
  * [UI] Apply color theming to the CPPC capabilities list.
  * [AMD][Raphael] Adding device DIDs to probe UMC and IOMMU
  * [CPPC/FMW] Computes value bounds while Enabling/Disabling firmware
  * [CR] CPPC lib errors are now raised to Debug level
  * [AMD][Zen4] Increased the UMC size to 12 channels.
  * [CPPC] Handles the OffLine CPU case.
  * [CLI] Refactoring HWP/CPPC to print all capabilities per CPU
  * [ACPI] Computes the CPPC Bounds
  * [Intel] Linear Address Masking (LAM)
  * [CLI] EFER: Left aligned labels
  * [AMD] Reports UAIE and AIBRSE bits from EFER system register
  * [CLI] Changed mitigation mechanisms incapability labels
  * [AMD][Zen2] Mitigation Mechanism BTC-NOBR * ACPI/OSPM documentation
  * [CR] Code review on bit masks
  * [CPPC][ACPI] Kernel may decode the Guaranteed Performance Register
  * [UI] Optimize the cycles to clear the time bar.
  * [CR] Code review for extra compiler warnings
  * [UI] Time of the day displayed in the right side of menu
  * [UI] Display the current date and time in menu bar
  * [Kernel] Introducing support of `CONFIG_SCHED_BORE`
  * [CLI] Fixing ambiguous CPPC report: hardware vs firmware
  * [CLI] Surrounds _CPC feature with square brackets
  * [CPPC] Provides the ACPI _CPC object state.
  * [UI] Colors the task being tracked in the tracking list
  * [UI] Display the current time in the menu bar
  * [CLI] Reserve the programmable TDP section to Intel processors.
  * [AMD/Zen3+] Improving the DIMM geometry of Rembrandt UMC</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1672747200">- update to 1.94.1:
  * [Intel] Gemini Lake
  * [AMD] Ryzen 5 6600 H SoC, UMC channels
  * [AMD] Rembrandt: maximum of two UMC channels
  * [AMD] Raphael: Decodes DIMM geometry from AddrCfg
  * [AMD] Zen: Aggregation refactored
  * [AMD] Improved DDR5 clock decoding
  * Optimized Idle Loop</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1673006400">- update to 1.94.3:
  * [AMD][RMB] If UMC is quad channels then unpopulate odd channels
  * [AMD][RPL] Provide Service Processor Vcore as workaround
  * [UI] Auto size and lay performance capabilities window
  * [UI] Adding comments to the EEO and R2H technologies
  * [AMD][Raphael] 7950X3D, 7900X3D. support</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1674475200">- update to 1.95.1:
  * [Intel] RPL: voltage of Pcore, Ecore, System Agent
  * [Intel] RPL and ADL Chipset device IDs
  * [Intel] Decode the RPL IMC and improve DDR5 support
  * [Build] Raise `MAX_FREQ_HZ` up to 7125000000 Hertz
  * [Intel] Mobile {Coffee Lake, Kaby Lake} codenames
  * [Intel] Braswell codename detection
  * [AMD] SYSCFG Register
  * [AMD] EPYC 9654
  * [AMD] Transparent SME
  * [AMD] DRAM Data Scrambling
  * [AMD] Adding "Barcelo R" and "Rembrandt R"</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1675944000">- update to 1.95.2:
  * Fixed the aggregation of the minimum ratio
  Intel:
  * [Airmont][Silvermont] Attempt to decode `tCKE` from DRMC
    register
  * [Airmont] Improve `tWTPr`, `B2B`, `tWWDR` timings
  * [Airmont] Provide a new IMC decoder
  * Add the Emerald Rapids architecture entry
  * [DDR5][DDR4] Add the `RCDw` IMC timing
  * [Raptor Lake ] De-activate the MSR Uncore counter
  AMD:
  * "Zen3/Barcelo-R" and "Zen3+ Rembrandt-R" codenames
  * [Zen] Thermal highest limit reset fix
  Misc:
  * Code review and Registers documentation:
    AMD HWCR, Intel HDC and DRP</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677067200">- update to 1.95.4
  * [Intel] [from 11th to 14th gen]
    Convert the DRAM Speed to MT/s unit
    Compute the Bus Rate based on the BIOS MC PLL
- update to 1.95.3
  * [Intel] [Airmont]
    Improved the IMC geometry
    Introducing the Spreadtrum architecture
    Fixed the Bus and DRAM frequency rates
  * [Intel] [from 11th to 13th gen] Attempt to probe the interleaved controllers
  * [Intel] [Alder Lake/H] Attempt to decode the TCO Watchdog</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677153600">- added leap_compile_fix.patch to fix compilation on Leap</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1683115200">- removed leap_compile_fix.patch no needed anymore
- update to 1.96.0
  * [AMD]
    [RPL/X3D] Disabling the turbo boosted P-states change
    [PHOENIX] Adding Z1, U and HS PRO series.
    [Genoa] DAC address at UMC BAR + 0x40
    [Zen4] Adding the PCI entries of Genoa
    [Zen2] Adding remaining PCI entries
    [Zen] Query DAC &amp; CFG with the right UMC base address register
    [Zen4] Dump the CPUID Extended CPU Topology leaves.
    [Zen][Embedded][Banded Kestrel] R1000 Processor Family
    [Zen][Embedded] "Great Horned Owl", "River Hawk", "Grey Hawk"
    Complete the "Raven Ridge" and "Picasso" lists
    [EPYC] Moved "Snowy Owl" Embedded processors to CPUID 8F_01
    [Zen4] introducing Phoenix and Dragon Range
    [RMB] adding the Ryzen Embedded V3000 processors
    [VMR] adding the "AMD Ryzen 9 PRO 5945"
  * [Intel]
    Adding Granite Rapids, Sierra Forest, Grand Ridge entries
    Adding "Lunar Lake" and "Arrow Lake" entries.
  * [UI]
    Optimized decimal to digits converter
    Allow task tracker to select up to pid_max
    Can trace the frozen states of Linux tasks.
    Only print HWP frequencies within bounds.
    Fix ruler's aggregation.
  * [CR]
    Check CPUID[HV_PARTITION_PRIVILEGE_MASK] for HV_X64_MSR_VP_RUNTIME
    Uninitialized variable fix.
    [CPPC] Build EPP with KERNEL_VERSION(6) rather than CONFIG_CACHY
    [KERNEL] Linux 6.3: Employ modifier calls with the vma-&gt;vm_flags</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1684065600">- update to 1.96.1
  * [Driver]
  - Postpone Clock Source registration during startup until the Base Clock is computed.
  - Change class_create() according to Linux Kernel 6.4
  - Clear interrupt flag (cli) after Halt in the Idle method
  * [AMD]
  - [PHOENIX] Adding Ryzen 7940H, 7840H, 7640H
  - [VERMEER] Adding Ryzen PRO and Embedded processors
  - Ryzen Z1 CPUID' brand fix
  - Adding EPYC Embedded 9004 Series as Genoa
  - Adding EPYC Embedded 7003 Series as Milan
  - Adding EPYC Embedded 7002 Series as Rome
  - Adding EPYC Embedded 7001 Series as Naples</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1685880000">- update to 1.96.2
  * [Driver]
  - Allows compilation to keep going without CONFIG_ACPI_CPPC_LIB
  * [Client]
  - Adding two command line arguments:
  - Op Show Package C-States
  - OW Toggle Energy units
  * [AMD]
  - Specification of some Configuration MSRs</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1686830400">- update to 1.96.4
  * [AMD]
  - Display CPUID state of new and legacy features:
    Fused Multiply Add [FMA4]
    Extended Operation Support [XOP]
    Translation Cache Extension [TCE]
    Trailing Bit Manipulation [TBM]
    OS Visible Work-around [OSVW]
    LOCK prefix to read CR8 [AltMov]
  * [Intel]
  - Advanced Matrix Extensions [AMX]
  - Bits and Features of Sierra Forest and Grand Ridge
  - Attempt to decode the Meteor Lake Memory Controller
- update to 1.96.3
  * [AMD]
  - [Zeppelin] Probe more than one UMC controllers on Ryzen Threadripper 1900X
  - [Zen4] Dump SMBE and BMEC sub-leaves of CPUID 0x80000020</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1688212800">- update to 1.96.5
  * [AMD]
    Adding the "AMD Ryzen 5 5600X3D"
    Introducing the Zen4c Bergamo architecture
    Specs fixing of Embedded V-series and 3000 Series Processors
    Adding MENDOCINO, RAPHAEL Pro, PHOENIX Pro among others</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1712318400">- added preamble file for %kernel_module_package macro
- update to 1.97.1
  * added aarch64 support
  * upstream did not provide a summary changelog. Full list of commits:
    https://github.com/cyring/CoreFreq/compare/1.96.5...1.97.1</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715860800">- update to 1.97.2
  * [AMD]
  - [Hawk Point] Adding Ryzen PRO processors
  - [Phoenix] Adding the unlocked Ryzen 8000 Series
  * [Intel]
  - [MeteorLake] New bits specified
  - EEO and R2H bits inversion fix in MSR_POWER_CTL (0x1fc)
  - Reverse specification of MSR UNCORE_PERF_STATUS
  - Prefetchers fix of L1 Scrubbing, L1 Next Page and L2 AMP
  * [AArch64]
  - Providing Exclusive Load/Store to atomic operations
  - Improved asm of various macro functions
  - Removed LEGACY macros
  - Optimized the CORE_COUNT macros
  - Marked the Tools feature as nominal: Stress functions available
  - Allow user access to Retired Instructions counter
  - Fix Instructions counter overflow
  - Other PMC enhancements
  * [CR]
  - Fix a building issue with AlmaLinux aka RHEL-9
  - Linux kernel 6.9: Avoid redefinition of Intel MSR macros
  * [Doc]
  - README section for AlmaLinux
  - CONFIG_TRIM_UNUSED_KSYMS kernel build config is forbidden</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715947200">- fix dependency on kernel module that was not versioned</changelog>
</package>
<package pkgid="e8f569a32fb69b609ff476dd620515553a220c5322d0b69a66a7d90b6e19b474a8556e279c3f9d3de9b7f2aa7b0523a7b5517d76d21095ddc48e82bfd2df243c" name="CoreFreq-debugsource" arch="x86_64">
  <version epoch="0" ver="1.97.2" rel="2.3"/>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1655899200">- Update to version 1.91.3
  * No changelog was made available by upstream</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1661169600">- Update to version 1.91.6
  - [AMD/Zen][UMC] Fixed the Mem Clock and ECC regressions
  - Designate the Package identifier in Power consumed readings
  - [Intel/ADL/IMC] Guessing activated channel from the populated DIMM
  - [AMD][UMC, IOMMU] Adding missing DID of family 19h devices
  - [AMD_DataFabric_Cezanne] Removed the Experimental mode
  - Intel/ADL/IMC: Fixing the Memory Channels count
  - [AMD/Zen] Improved UMC mapping. Threadripper 3960X issue
  - Avoid some NULL pointer strings during SMBIOS decoding</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1667563200">- update to version 1.92.3
  - Export CPUID bits Intel Sierra Forest, Grand Ridge, Granite Rapids
    and completes AMD64 Fn0000_0007_ECX_x0
  - [Features] WBNOINVD and CLZERO instructions
  - Adding various Mitigation Mechanism aggregations:
    IPRED_DIS_U, IPRED_DIS_S, RRSBA_DIS_U, RRSBA_DIS_S, BHI_DIS_S, MCDT_NO
  - RDPID and UMIP capability fixed.
  - [AMD] Perf. Mon. version based on CPUID_0x80000022.EAX.PerfMonV2
  - [AMD][Zen3+][Rembrandt] Trigger UMC and IOMMU decoders
  - [AMD][Ryzen 5 6600H] Found voltage VID @ SMU 0x6f010 and 0x6f014
  - Introducing AMD Security Feature capabilities:
    SKINIT, SEV, GMET, SEV-ES, SEV-SNP
  - [AMD64] Non-architectural MSR: SPECULATIVE STORE BYPASS DISABLE
  - [Intel][2nd &amp; 3rd gen] Misc IMC optimizations
  - [AMD][Rembrandt] Provides Vcore from a new formula.
  - Dumping CPUID leaves from AMD64 Architecture Programmer’s Manual
  - [Intel][HSW &amp; BDW] Compute the DIMM banks
  - [UI] Re-assigned keys to move or resize windows.
  - [AMD][Zen] Uncore frequency: Improving the Memory Clock divisor
  - [Intel][HSW &amp; BDW][SKL] Make use of same function DimmWidthToRows
  - [AMD][Zen3+][Rembrandt] Provides the thermal sensor.
  - [AMD/Zen2 &amp; Zen3] Removed the HSMP capability.
  - [Intel][CML][RKL][TGL] Compute the DIMM Rows from CH_WIDTH
  - [AMD/EPYC] Adding the CPUID of Zen4 Genoa architecture
  - [AMD/Zen2] Introducing Mendocino architecture
  - Changed MeteorLake/N to CPUID 06_B5
  - [Intel] Computes BIOS DRAM frequency based on PLL_REF100
  - [Intel][SNB/IVB/HSW/BDW] Improved BIOS DRAM frequency
  - [Intel][SNB/IVB] DRAM frequency based on RAM_Select and FSB_Select
  - [Intel][IVB] IMC specifications and optimizations.
  - [Intel][SNB,IVB] Computes the DIMM A from DAS bit in MAD register
  - [Intel][SNB,IVB,HSW,BDW] Rolling back changes to the DIMM topology
  - [Intel][BDW][HSW] Query the IMC Power Down Mode
  - [Intel][IVB][SNB] Attempt to decode the IMC third timings
  - [AMD][Ryzen] Added AMD Ryzen 7 PRO 6860Z
  - [AMD][F17h-F19h] Can toggle ON and OFF the Instruction Cache Unit
  - [AMD] Checking the Ryzen "OEM Only" processors
  - [Intel] Specification of 12th Gen. MSR registers capability
  - [Intel] Adding Raptor Lake-S with CPUID 06_BF
  - [AMD] Introducing Zen 4 / Raphael architecture
  - [Intel][SNB,IVB,HSW] Attempt to assign the Rank per DIMM slot
  - [Intel][SNB,IVB,HSW] Attempt to fix the DIMM(s) topology layout
  - ClockSource: TSC udelay() asm implementation builtin as a default
  - [Intel][Alder Lake] Adding IMC entry for i5-12500 processor
  - [Intel][Alder Lake] Added default case if Processor has only Pcores
  - [Intel][Atom/Bonnell][IMC] Attempt to compute the DIMM geometry
  - [UI][Custom view] Show the Uncore unit in watt or joule
  - [UI] Display HWP or CPPC in footer for capable processors.
  - [CLI] Added HWP Capabilities and HWP Request to the JSON export
  - [CLI] Don't allow the HWP dialog box if feature is not available.
  - [CPPC][Firmware] allows (de)activation of the feature.
  - [CLI] Added CPU ratios to JSON export
  - [CPPC] Improved scaling
  - [CPPC] Build fixed down to Kernel version 3
  - [Kernel/ACPI] Attempt to write CPPC registers</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1667563201">- Repair deficient description grammar.</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1670241600">- update to 1.92.4:
  * [Intel/Skylake-X] Permits MSR_RING_PERF_LIMIT_REASONS</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1670932800">- removed modprobe_corefreqd.service.patch and harden_corefreqd.service.patch
  now included in new corefreqd.service file replacing stock one
- update to 1.93.1
  * [PRJ] CoreFreq version 1.93.1
  * [ACPI/CPPC/EPP] Preview of AMD/Zen Energy Preference (CONFIG_CACHY)
  * [UI] Changed the HWP or CPPC ratio bounds.
  * [FIX] Putting `corefreqd` in the root cgroup (issue #379) Thanks to gel-crabs
  * [DOC] Parameters to blacklist the amd_pstate since kernel 6.0.11
  * [AMD][Zen4] Apply a voltage formula based on Rembrandt's. (#378)
  * [AMD][Zen4/Raphael] Attempting temperature per CCD from TCTL+0x308
  * [AMD][Zen4] Changed Timer loop
  * [CR] CLI code review and UI optimizations
  * [UI] Auto refresh the Topology items when off/online
  * [CR] Conditionally build with additional PMC Counters
  * [Intel] Adding Z8000 System Memory Controller Registers
  * [CR] Transformed global variable in cells padding
  * [UI] Windows re-scaling fix
  * [UI] Apply color theming to the CPPC capabilities list.
  * [AMD][Raphael] Adding device DIDs to probe UMC and IOMMU
  * [CPPC/FMW] Computes value bounds while Enabling/Disabling firmware
  * [CR] CPPC lib errors are now raised to Debug level
  * [AMD][Zen4] Increased the UMC size to 12 channels.
  * [CPPC] Handles the OffLine CPU case.
  * [CLI] Refactoring HWP/CPPC to print all capabilities per CPU
  * [ACPI] Computes the CPPC Bounds
  * [Intel] Linear Address Masking (LAM)
  * [CLI] EFER: Left aligned labels
  * [AMD] Reports UAIE and AIBRSE bits from EFER system register
  * [CLI] Changed mitigation mechanisms incapability labels
  * [AMD][Zen2] Mitigation Mechanism BTC-NOBR * ACPI/OSPM documentation
  * [CR] Code review on bit masks
  * [CPPC][ACPI] Kernel may decode the Guaranteed Performance Register
  * [UI] Optimize the cycles to clear the time bar.
  * [CR] Code review for extra compiler warnings
  * [UI] Time of the day displayed in the right side of menu
  * [UI] Display the current date and time in menu bar
  * [Kernel] Introducing support of `CONFIG_SCHED_BORE`
  * [CLI] Fixing ambiguous CPPC report: hardware vs firmware
  * [CLI] Surrounds _CPC feature with square brackets
  * [CPPC] Provides the ACPI _CPC object state.
  * [UI] Colors the task being tracked in the tracking list
  * [UI] Display the current time in the menu bar
  * [CLI] Reserve the programmable TDP section to Intel processors.
  * [AMD/Zen3+] Improving the DIMM geometry of Rembrandt UMC</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1672747200">- update to 1.94.1:
  * [Intel] Gemini Lake
  * [AMD] Ryzen 5 6600 H SoC, UMC channels
  * [AMD] Rembrandt: maximum of two UMC channels
  * [AMD] Raphael: Decodes DIMM geometry from AddrCfg
  * [AMD] Zen: Aggregation refactored
  * [AMD] Improved DDR5 clock decoding
  * Optimized Idle Loop</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1673006400">- update to 1.94.3:
  * [AMD][RMB] If UMC is quad channels then unpopulate odd channels
  * [AMD][RPL] Provide Service Processor Vcore as workaround
  * [UI] Auto size and lay performance capabilities window
  * [UI] Adding comments to the EEO and R2H technologies
  * [AMD][Raphael] 7950X3D, 7900X3D. support</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1674475200">- update to 1.95.1:
  * [Intel] RPL: voltage of Pcore, Ecore, System Agent
  * [Intel] RPL and ADL Chipset device IDs
  * [Intel] Decode the RPL IMC and improve DDR5 support
  * [Build] Raise `MAX_FREQ_HZ` up to 7125000000 Hertz
  * [Intel] Mobile {Coffee Lake, Kaby Lake} codenames
  * [Intel] Braswell codename detection
  * [AMD] SYSCFG Register
  * [AMD] EPYC 9654
  * [AMD] Transparent SME
  * [AMD] DRAM Data Scrambling
  * [AMD] Adding "Barcelo R" and "Rembrandt R"</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1675944000">- update to 1.95.2:
  * Fixed the aggregation of the minimum ratio
  Intel:
  * [Airmont][Silvermont] Attempt to decode `tCKE` from DRMC
    register
  * [Airmont] Improve `tWTPr`, `B2B`, `tWWDR` timings
  * [Airmont] Provide a new IMC decoder
  * Add the Emerald Rapids architecture entry
  * [DDR5][DDR4] Add the `RCDw` IMC timing
  * [Raptor Lake ] De-activate the MSR Uncore counter
  AMD:
  * "Zen3/Barcelo-R" and "Zen3+ Rembrandt-R" codenames
  * [Zen] Thermal highest limit reset fix
  Misc:
  * Code review and Registers documentation:
    AMD HWCR, Intel HDC and DRP</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677067200">- update to 1.95.4
  * [Intel] [from 11th to 14th gen]
    Convert the DRAM Speed to MT/s unit
    Compute the Bus Rate based on the BIOS MC PLL
- update to 1.95.3
  * [Intel] [Airmont]
    Improved the IMC geometry
    Introducing the Spreadtrum architecture
    Fixed the Bus and DRAM frequency rates
  * [Intel] [from 11th to 13th gen] Attempt to probe the interleaved controllers
  * [Intel] [Alder Lake/H] Attempt to decode the TCO Watchdog</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677153600">- added leap_compile_fix.patch to fix compilation on Leap</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1683115200">- removed leap_compile_fix.patch no needed anymore
- update to 1.96.0
  * [AMD]
    [RPL/X3D] Disabling the turbo boosted P-states change
    [PHOENIX] Adding Z1, U and HS PRO series.
    [Genoa] DAC address at UMC BAR + 0x40
    [Zen4] Adding the PCI entries of Genoa
    [Zen2] Adding remaining PCI entries
    [Zen] Query DAC &amp; CFG with the right UMC base address register
    [Zen4] Dump the CPUID Extended CPU Topology leaves.
    [Zen][Embedded][Banded Kestrel] R1000 Processor Family
    [Zen][Embedded] "Great Horned Owl", "River Hawk", "Grey Hawk"
    Complete the "Raven Ridge" and "Picasso" lists
    [EPYC] Moved "Snowy Owl" Embedded processors to CPUID 8F_01
    [Zen4] introducing Phoenix and Dragon Range
    [RMB] adding the Ryzen Embedded V3000 processors
    [VMR] adding the "AMD Ryzen 9 PRO 5945"
  * [Intel]
    Adding Granite Rapids, Sierra Forest, Grand Ridge entries
    Adding "Lunar Lake" and "Arrow Lake" entries.
  * [UI]
    Optimized decimal to digits converter
    Allow task tracker to select up to pid_max
    Can trace the frozen states of Linux tasks.
    Only print HWP frequencies within bounds.
    Fix ruler's aggregation.
  * [CR]
    Check CPUID[HV_PARTITION_PRIVILEGE_MASK] for HV_X64_MSR_VP_RUNTIME
    Uninitialized variable fix.
    [CPPC] Build EPP with KERNEL_VERSION(6) rather than CONFIG_CACHY
    [KERNEL] Linux 6.3: Employ modifier calls with the vma-&gt;vm_flags</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1684065600">- update to 1.96.1
  * [Driver]
  - Postpone Clock Source registration during startup until the Base Clock is computed.
  - Change class_create() according to Linux Kernel 6.4
  - Clear interrupt flag (cli) after Halt in the Idle method
  * [AMD]
  - [PHOENIX] Adding Ryzen 7940H, 7840H, 7640H
  - [VERMEER] Adding Ryzen PRO and Embedded processors
  - Ryzen Z1 CPUID' brand fix
  - Adding EPYC Embedded 9004 Series as Genoa
  - Adding EPYC Embedded 7003 Series as Milan
  - Adding EPYC Embedded 7002 Series as Rome
  - Adding EPYC Embedded 7001 Series as Naples</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1685880000">- update to 1.96.2
  * [Driver]
  - Allows compilation to keep going without CONFIG_ACPI_CPPC_LIB
  * [Client]
  - Adding two command line arguments:
  - Op Show Package C-States
  - OW Toggle Energy units
  * [AMD]
  - Specification of some Configuration MSRs</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1686830400">- update to 1.96.4
  * [AMD]
  - Display CPUID state of new and legacy features:
    Fused Multiply Add [FMA4]
    Extended Operation Support [XOP]
    Translation Cache Extension [TCE]
    Trailing Bit Manipulation [TBM]
    OS Visible Work-around [OSVW]
    LOCK prefix to read CR8 [AltMov]
  * [Intel]
  - Advanced Matrix Extensions [AMX]
  - Bits and Features of Sierra Forest and Grand Ridge
  - Attempt to decode the Meteor Lake Memory Controller
- update to 1.96.3
  * [AMD]
  - [Zeppelin] Probe more than one UMC controllers on Ryzen Threadripper 1900X
  - [Zen4] Dump SMBE and BMEC sub-leaves of CPUID 0x80000020</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1688212800">- update to 1.96.5
  * [AMD]
    Adding the "AMD Ryzen 5 5600X3D"
    Introducing the Zen4c Bergamo architecture
    Specs fixing of Embedded V-series and 3000 Series Processors
    Adding MENDOCINO, RAPHAEL Pro, PHOENIX Pro among others</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1712318400">- added preamble file for %kernel_module_package macro
- update to 1.97.1
  * added aarch64 support
  * upstream did not provide a summary changelog. Full list of commits:
    https://github.com/cyring/CoreFreq/compare/1.96.5...1.97.1</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715860800">- update to 1.97.2
  * [AMD]
  - [Hawk Point] Adding Ryzen PRO processors
  - [Phoenix] Adding the unlocked Ryzen 8000 Series
  * [Intel]
  - [MeteorLake] New bits specified
  - EEO and R2H bits inversion fix in MSR_POWER_CTL (0x1fc)
  - Reverse specification of MSR UNCORE_PERF_STATUS
  - Prefetchers fix of L1 Scrubbing, L1 Next Page and L2 AMP
  * [AArch64]
  - Providing Exclusive Load/Store to atomic operations
  - Improved asm of various macro functions
  - Removed LEGACY macros
  - Optimized the CORE_COUNT macros
  - Marked the Tools feature as nominal: Stress functions available
  - Allow user access to Retired Instructions counter
  - Fix Instructions counter overflow
  - Other PMC enhancements
  * [CR]
  - Fix a building issue with AlmaLinux aka RHEL-9
  - Linux kernel 6.9: Avoid redefinition of Intel MSR macros
  * [Doc]
  - README section for AlmaLinux
  - CONFIG_TRIM_UNUSED_KSYMS kernel build config is forbidden</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715947200">- fix dependency on kernel module that was not versioned</changelog>
</package>
<package pkgid="2b8be383cbf2a84490056c0fe146c4e41cc28497c0ba06370705aa1b3ef6c3dfa1ec92c6d7993d7f8bdb3cfb589648e5c28a1cd0226c4ff625d63224440450a3" name="CoreFreq-debugsource" arch="x86_64">
  <version epoch="0" ver="1.97.2" rel="2.4"/>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1655899200">- Update to version 1.91.3
  * No changelog was made available by upstream</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1661169600">- Update to version 1.91.6
  - [AMD/Zen][UMC] Fixed the Mem Clock and ECC regressions
  - Designate the Package identifier in Power consumed readings
  - [Intel/ADL/IMC] Guessing activated channel from the populated DIMM
  - [AMD][UMC, IOMMU] Adding missing DID of family 19h devices
  - [AMD_DataFabric_Cezanne] Removed the Experimental mode
  - Intel/ADL/IMC: Fixing the Memory Channels count
  - [AMD/Zen] Improved UMC mapping. Threadripper 3960X issue
  - Avoid some NULL pointer strings during SMBIOS decoding</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1667563200">- update to version 1.92.3
  - Export CPUID bits Intel Sierra Forest, Grand Ridge, Granite Rapids
    and completes AMD64 Fn0000_0007_ECX_x0
  - [Features] WBNOINVD and CLZERO instructions
  - Adding various Mitigation Mechanism aggregations:
    IPRED_DIS_U, IPRED_DIS_S, RRSBA_DIS_U, RRSBA_DIS_S, BHI_DIS_S, MCDT_NO
  - RDPID and UMIP capability fixed.
  - [AMD] Perf. Mon. version based on CPUID_0x80000022.EAX.PerfMonV2
  - [AMD][Zen3+][Rembrandt] Trigger UMC and IOMMU decoders
  - [AMD][Ryzen 5 6600H] Found voltage VID @ SMU 0x6f010 and 0x6f014
  - Introducing AMD Security Feature capabilities:
    SKINIT, SEV, GMET, SEV-ES, SEV-SNP
  - [AMD64] Non-architectural MSR: SPECULATIVE STORE BYPASS DISABLE
  - [Intel][2nd &amp; 3rd gen] Misc IMC optimizations
  - [AMD][Rembrandt] Provides Vcore from a new formula.
  - Dumping CPUID leaves from AMD64 Architecture Programmer’s Manual
  - [Intel][HSW &amp; BDW] Compute the DIMM banks
  - [UI] Re-assigned keys to move or resize windows.
  - [AMD][Zen] Uncore frequency: Improving the Memory Clock divisor
  - [Intel][HSW &amp; BDW][SKL] Make use of same function DimmWidthToRows
  - [AMD][Zen3+][Rembrandt] Provides the thermal sensor.
  - [AMD/Zen2 &amp; Zen3] Removed the HSMP capability.
  - [Intel][CML][RKL][TGL] Compute the DIMM Rows from CH_WIDTH
  - [AMD/EPYC] Adding the CPUID of Zen4 Genoa architecture
  - [AMD/Zen2] Introducing Mendocino architecture
  - Changed MeteorLake/N to CPUID 06_B5
  - [Intel] Computes BIOS DRAM frequency based on PLL_REF100
  - [Intel][SNB/IVB/HSW/BDW] Improved BIOS DRAM frequency
  - [Intel][SNB/IVB] DRAM frequency based on RAM_Select and FSB_Select
  - [Intel][IVB] IMC specifications and optimizations.
  - [Intel][SNB,IVB] Computes the DIMM A from DAS bit in MAD register
  - [Intel][SNB,IVB,HSW,BDW] Rolling back changes to the DIMM topology
  - [Intel][BDW][HSW] Query the IMC Power Down Mode
  - [Intel][IVB][SNB] Attempt to decode the IMC third timings
  - [AMD][Ryzen] Added AMD Ryzen 7 PRO 6860Z
  - [AMD][F17h-F19h] Can toggle ON and OFF the Instruction Cache Unit
  - [AMD] Checking the Ryzen "OEM Only" processors
  - [Intel] Specification of 12th Gen. MSR registers capability
  - [Intel] Adding Raptor Lake-S with CPUID 06_BF
  - [AMD] Introducing Zen 4 / Raphael architecture
  - [Intel][SNB,IVB,HSW] Attempt to assign the Rank per DIMM slot
  - [Intel][SNB,IVB,HSW] Attempt to fix the DIMM(s) topology layout
  - ClockSource: TSC udelay() asm implementation builtin as a default
  - [Intel][Alder Lake] Adding IMC entry for i5-12500 processor
  - [Intel][Alder Lake] Added default case if Processor has only Pcores
  - [Intel][Atom/Bonnell][IMC] Attempt to compute the DIMM geometry
  - [UI][Custom view] Show the Uncore unit in watt or joule
  - [UI] Display HWP or CPPC in footer for capable processors.
  - [CLI] Added HWP Capabilities and HWP Request to the JSON export
  - [CLI] Don't allow the HWP dialog box if feature is not available.
  - [CPPC][Firmware] allows (de)activation of the feature.
  - [CLI] Added CPU ratios to JSON export
  - [CPPC] Improved scaling
  - [CPPC] Build fixed down to Kernel version 3
  - [Kernel/ACPI] Attempt to write CPPC registers</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1667563201">- Repair deficient description grammar.</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1670241600">- update to 1.92.4:
  * [Intel/Skylake-X] Permits MSR_RING_PERF_LIMIT_REASONS</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1670932800">- removed modprobe_corefreqd.service.patch and harden_corefreqd.service.patch
  now included in new corefreqd.service file replacing stock one
- update to 1.93.1
  * [PRJ] CoreFreq version 1.93.1
  * [ACPI/CPPC/EPP] Preview of AMD/Zen Energy Preference (CONFIG_CACHY)
  * [UI] Changed the HWP or CPPC ratio bounds.
  * [FIX] Putting `corefreqd` in the root cgroup (issue #379) Thanks to gel-crabs
  * [DOC] Parameters to blacklist the amd_pstate since kernel 6.0.11
  * [AMD][Zen4] Apply a voltage formula based on Rembrandt's. (#378)
  * [AMD][Zen4/Raphael] Attempting temperature per CCD from TCTL+0x308
  * [AMD][Zen4] Changed Timer loop
  * [CR] CLI code review and UI optimizations
  * [UI] Auto refresh the Topology items when off/online
  * [CR] Conditionally build with additional PMC Counters
  * [Intel] Adding Z8000 System Memory Controller Registers
  * [CR] Transformed global variable in cells padding
  * [UI] Windows re-scaling fix
  * [UI] Apply color theming to the CPPC capabilities list.
  * [AMD][Raphael] Adding device DIDs to probe UMC and IOMMU
  * [CPPC/FMW] Computes value bounds while Enabling/Disabling firmware
  * [CR] CPPC lib errors are now raised to Debug level
  * [AMD][Zen4] Increased the UMC size to 12 channels.
  * [CPPC] Handles the OffLine CPU case.
  * [CLI] Refactoring HWP/CPPC to print all capabilities per CPU
  * [ACPI] Computes the CPPC Bounds
  * [Intel] Linear Address Masking (LAM)
  * [CLI] EFER: Left aligned labels
  * [AMD] Reports UAIE and AIBRSE bits from EFER system register
  * [CLI] Changed mitigation mechanisms incapability labels
  * [AMD][Zen2] Mitigation Mechanism BTC-NOBR * ACPI/OSPM documentation
  * [CR] Code review on bit masks
  * [CPPC][ACPI] Kernel may decode the Guaranteed Performance Register
  * [UI] Optimize the cycles to clear the time bar.
  * [CR] Code review for extra compiler warnings
  * [UI] Time of the day displayed in the right side of menu
  * [UI] Display the current date and time in menu bar
  * [Kernel] Introducing support of `CONFIG_SCHED_BORE`
  * [CLI] Fixing ambiguous CPPC report: hardware vs firmware
  * [CLI] Surrounds _CPC feature with square brackets
  * [CPPC] Provides the ACPI _CPC object state.
  * [UI] Colors the task being tracked in the tracking list
  * [UI] Display the current time in the menu bar
  * [CLI] Reserve the programmable TDP section to Intel processors.
  * [AMD/Zen3+] Improving the DIMM geometry of Rembrandt UMC</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1672747200">- update to 1.94.1:
  * [Intel] Gemini Lake
  * [AMD] Ryzen 5 6600 H SoC, UMC channels
  * [AMD] Rembrandt: maximum of two UMC channels
  * [AMD] Raphael: Decodes DIMM geometry from AddrCfg
  * [AMD] Zen: Aggregation refactored
  * [AMD] Improved DDR5 clock decoding
  * Optimized Idle Loop</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1673006400">- update to 1.94.3:
  * [AMD][RMB] If UMC is quad channels then unpopulate odd channels
  * [AMD][RPL] Provide Service Processor Vcore as workaround
  * [UI] Auto size and lay performance capabilities window
  * [UI] Adding comments to the EEO and R2H technologies
  * [AMD][Raphael] 7950X3D, 7900X3D. support</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1674475200">- update to 1.95.1:
  * [Intel] RPL: voltage of Pcore, Ecore, System Agent
  * [Intel] RPL and ADL Chipset device IDs
  * [Intel] Decode the RPL IMC and improve DDR5 support
  * [Build] Raise `MAX_FREQ_HZ` up to 7125000000 Hertz
  * [Intel] Mobile {Coffee Lake, Kaby Lake} codenames
  * [Intel] Braswell codename detection
  * [AMD] SYSCFG Register
  * [AMD] EPYC 9654
  * [AMD] Transparent SME
  * [AMD] DRAM Data Scrambling
  * [AMD] Adding "Barcelo R" and "Rembrandt R"</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1675944000">- update to 1.95.2:
  * Fixed the aggregation of the minimum ratio
  Intel:
  * [Airmont][Silvermont] Attempt to decode `tCKE` from DRMC
    register
  * [Airmont] Improve `tWTPr`, `B2B`, `tWWDR` timings
  * [Airmont] Provide a new IMC decoder
  * Add the Emerald Rapids architecture entry
  * [DDR5][DDR4] Add the `RCDw` IMC timing
  * [Raptor Lake ] De-activate the MSR Uncore counter
  AMD:
  * "Zen3/Barcelo-R" and "Zen3+ Rembrandt-R" codenames
  * [Zen] Thermal highest limit reset fix
  Misc:
  * Code review and Registers documentation:
    AMD HWCR, Intel HDC and DRP</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677067200">- update to 1.95.4
  * [Intel] [from 11th to 14th gen]
    Convert the DRAM Speed to MT/s unit
    Compute the Bus Rate based on the BIOS MC PLL
- update to 1.95.3
  * [Intel] [Airmont]
    Improved the IMC geometry
    Introducing the Spreadtrum architecture
    Fixed the Bus and DRAM frequency rates
  * [Intel] [from 11th to 13th gen] Attempt to probe the interleaved controllers
  * [Intel] [Alder Lake/H] Attempt to decode the TCO Watchdog</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677153600">- added leap_compile_fix.patch to fix compilation on Leap</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1683115200">- removed leap_compile_fix.patch no needed anymore
- update to 1.96.0
  * [AMD]
    [RPL/X3D] Disabling the turbo boosted P-states change
    [PHOENIX] Adding Z1, U and HS PRO series.
    [Genoa] DAC address at UMC BAR + 0x40
    [Zen4] Adding the PCI entries of Genoa
    [Zen2] Adding remaining PCI entries
    [Zen] Query DAC &amp; CFG with the right UMC base address register
    [Zen4] Dump the CPUID Extended CPU Topology leaves.
    [Zen][Embedded][Banded Kestrel] R1000 Processor Family
    [Zen][Embedded] "Great Horned Owl", "River Hawk", "Grey Hawk"
    Complete the "Raven Ridge" and "Picasso" lists
    [EPYC] Moved "Snowy Owl" Embedded processors to CPUID 8F_01
    [Zen4] introducing Phoenix and Dragon Range
    [RMB] adding the Ryzen Embedded V3000 processors
    [VMR] adding the "AMD Ryzen 9 PRO 5945"
  * [Intel]
    Adding Granite Rapids, Sierra Forest, Grand Ridge entries
    Adding "Lunar Lake" and "Arrow Lake" entries.
  * [UI]
    Optimized decimal to digits converter
    Allow task tracker to select up to pid_max
    Can trace the frozen states of Linux tasks.
    Only print HWP frequencies within bounds.
    Fix ruler's aggregation.
  * [CR]
    Check CPUID[HV_PARTITION_PRIVILEGE_MASK] for HV_X64_MSR_VP_RUNTIME
    Uninitialized variable fix.
    [CPPC] Build EPP with KERNEL_VERSION(6) rather than CONFIG_CACHY
    [KERNEL] Linux 6.3: Employ modifier calls with the vma-&gt;vm_flags</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1684065600">- update to 1.96.1
  * [Driver]
  - Postpone Clock Source registration during startup until the Base Clock is computed.
  - Change class_create() according to Linux Kernel 6.4
  - Clear interrupt flag (cli) after Halt in the Idle method
  * [AMD]
  - [PHOENIX] Adding Ryzen 7940H, 7840H, 7640H
  - [VERMEER] Adding Ryzen PRO and Embedded processors
  - Ryzen Z1 CPUID' brand fix
  - Adding EPYC Embedded 9004 Series as Genoa
  - Adding EPYC Embedded 7003 Series as Milan
  - Adding EPYC Embedded 7002 Series as Rome
  - Adding EPYC Embedded 7001 Series as Naples</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1685880000">- update to 1.96.2
  * [Driver]
  - Allows compilation to keep going without CONFIG_ACPI_CPPC_LIB
  * [Client]
  - Adding two command line arguments:
  - Op Show Package C-States
  - OW Toggle Energy units
  * [AMD]
  - Specification of some Configuration MSRs</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1686830400">- update to 1.96.4
  * [AMD]
  - Display CPUID state of new and legacy features:
    Fused Multiply Add [FMA4]
    Extended Operation Support [XOP]
    Translation Cache Extension [TCE]
    Trailing Bit Manipulation [TBM]
    OS Visible Work-around [OSVW]
    LOCK prefix to read CR8 [AltMov]
  * [Intel]
  - Advanced Matrix Extensions [AMX]
  - Bits and Features of Sierra Forest and Grand Ridge
  - Attempt to decode the Meteor Lake Memory Controller
- update to 1.96.3
  * [AMD]
  - [Zeppelin] Probe more than one UMC controllers on Ryzen Threadripper 1900X
  - [Zen4] Dump SMBE and BMEC sub-leaves of CPUID 0x80000020</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1688212800">- update to 1.96.5
  * [AMD]
    Adding the "AMD Ryzen 5 5600X3D"
    Introducing the Zen4c Bergamo architecture
    Specs fixing of Embedded V-series and 3000 Series Processors
    Adding MENDOCINO, RAPHAEL Pro, PHOENIX Pro among others</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1712318400">- added preamble file for %kernel_module_package macro
- update to 1.97.1
  * added aarch64 support
  * upstream did not provide a summary changelog. Full list of commits:
    https://github.com/cyring/CoreFreq/compare/1.96.5...1.97.1</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715860800">- update to 1.97.2
  * [AMD]
  - [Hawk Point] Adding Ryzen PRO processors
  - [Phoenix] Adding the unlocked Ryzen 8000 Series
  * [Intel]
  - [MeteorLake] New bits specified
  - EEO and R2H bits inversion fix in MSR_POWER_CTL (0x1fc)
  - Reverse specification of MSR UNCORE_PERF_STATUS
  - Prefetchers fix of L1 Scrubbing, L1 Next Page and L2 AMP
  * [AArch64]
  - Providing Exclusive Load/Store to atomic operations
  - Improved asm of various macro functions
  - Removed LEGACY macros
  - Optimized the CORE_COUNT macros
  - Marked the Tools feature as nominal: Stress functions available
  - Allow user access to Retired Instructions counter
  - Fix Instructions counter overflow
  - Other PMC enhancements
  * [CR]
  - Fix a building issue with AlmaLinux aka RHEL-9
  - Linux kernel 6.9: Avoid redefinition of Intel MSR macros
  * [Doc]
  - README section for AlmaLinux
  - CONFIG_TRIM_UNUSED_KSYMS kernel build config is forbidden</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715947200">- fix dependency on kernel module that was not versioned</changelog>
</package>
<package pkgid="f633fe97e7033904a24048f72022d4f87ca6594712a9f8757e8b3e3a4cc299cf0112729cd33c8fc793cf32f5e6a481be270ea7b86610aa300f61edada2944134" name="CoreFreq-debugsource" arch="x86_64">
  <version epoch="0" ver="1.97.2" rel="2.5"/>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1655899200">- Update to version 1.91.3
  * No changelog was made available by upstream</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1661169600">- Update to version 1.91.6
  - [AMD/Zen][UMC] Fixed the Mem Clock and ECC regressions
  - Designate the Package identifier in Power consumed readings
  - [Intel/ADL/IMC] Guessing activated channel from the populated DIMM
  - [AMD][UMC, IOMMU] Adding missing DID of family 19h devices
  - [AMD_DataFabric_Cezanne] Removed the Experimental mode
  - Intel/ADL/IMC: Fixing the Memory Channels count
  - [AMD/Zen] Improved UMC mapping. Threadripper 3960X issue
  - Avoid some NULL pointer strings during SMBIOS decoding</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1667563200">- update to version 1.92.3
  - Export CPUID bits Intel Sierra Forest, Grand Ridge, Granite Rapids
    and completes AMD64 Fn0000_0007_ECX_x0
  - [Features] WBNOINVD and CLZERO instructions
  - Adding various Mitigation Mechanism aggregations:
    IPRED_DIS_U, IPRED_DIS_S, RRSBA_DIS_U, RRSBA_DIS_S, BHI_DIS_S, MCDT_NO
  - RDPID and UMIP capability fixed.
  - [AMD] Perf. Mon. version based on CPUID_0x80000022.EAX.PerfMonV2
  - [AMD][Zen3+][Rembrandt] Trigger UMC and IOMMU decoders
  - [AMD][Ryzen 5 6600H] Found voltage VID @ SMU 0x6f010 and 0x6f014
  - Introducing AMD Security Feature capabilities:
    SKINIT, SEV, GMET, SEV-ES, SEV-SNP
  - [AMD64] Non-architectural MSR: SPECULATIVE STORE BYPASS DISABLE
  - [Intel][2nd &amp; 3rd gen] Misc IMC optimizations
  - [AMD][Rembrandt] Provides Vcore from a new formula.
  - Dumping CPUID leaves from AMD64 Architecture Programmer’s Manual
  - [Intel][HSW &amp; BDW] Compute the DIMM banks
  - [UI] Re-assigned keys to move or resize windows.
  - [AMD][Zen] Uncore frequency: Improving the Memory Clock divisor
  - [Intel][HSW &amp; BDW][SKL] Make use of same function DimmWidthToRows
  - [AMD][Zen3+][Rembrandt] Provides the thermal sensor.
  - [AMD/Zen2 &amp; Zen3] Removed the HSMP capability.
  - [Intel][CML][RKL][TGL] Compute the DIMM Rows from CH_WIDTH
  - [AMD/EPYC] Adding the CPUID of Zen4 Genoa architecture
  - [AMD/Zen2] Introducing Mendocino architecture
  - Changed MeteorLake/N to CPUID 06_B5
  - [Intel] Computes BIOS DRAM frequency based on PLL_REF100
  - [Intel][SNB/IVB/HSW/BDW] Improved BIOS DRAM frequency
  - [Intel][SNB/IVB] DRAM frequency based on RAM_Select and FSB_Select
  - [Intel][IVB] IMC specifications and optimizations.
  - [Intel][SNB,IVB] Computes the DIMM A from DAS bit in MAD register
  - [Intel][SNB,IVB,HSW,BDW] Rolling back changes to the DIMM topology
  - [Intel][BDW][HSW] Query the IMC Power Down Mode
  - [Intel][IVB][SNB] Attempt to decode the IMC third timings
  - [AMD][Ryzen] Added AMD Ryzen 7 PRO 6860Z
  - [AMD][F17h-F19h] Can toggle ON and OFF the Instruction Cache Unit
  - [AMD] Checking the Ryzen "OEM Only" processors
  - [Intel] Specification of 12th Gen. MSR registers capability
  - [Intel] Adding Raptor Lake-S with CPUID 06_BF
  - [AMD] Introducing Zen 4 / Raphael architecture
  - [Intel][SNB,IVB,HSW] Attempt to assign the Rank per DIMM slot
  - [Intel][SNB,IVB,HSW] Attempt to fix the DIMM(s) topology layout
  - ClockSource: TSC udelay() asm implementation builtin as a default
  - [Intel][Alder Lake] Adding IMC entry for i5-12500 processor
  - [Intel][Alder Lake] Added default case if Processor has only Pcores
  - [Intel][Atom/Bonnell][IMC] Attempt to compute the DIMM geometry
  - [UI][Custom view] Show the Uncore unit in watt or joule
  - [UI] Display HWP or CPPC in footer for capable processors.
  - [CLI] Added HWP Capabilities and HWP Request to the JSON export
  - [CLI] Don't allow the HWP dialog box if feature is not available.
  - [CPPC][Firmware] allows (de)activation of the feature.
  - [CLI] Added CPU ratios to JSON export
  - [CPPC] Improved scaling
  - [CPPC] Build fixed down to Kernel version 3
  - [Kernel/ACPI] Attempt to write CPPC registers</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1667563201">- Repair deficient description grammar.</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1670241600">- update to 1.92.4:
  * [Intel/Skylake-X] Permits MSR_RING_PERF_LIMIT_REASONS</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1670932800">- removed modprobe_corefreqd.service.patch and harden_corefreqd.service.patch
  now included in new corefreqd.service file replacing stock one
- update to 1.93.1
  * [PRJ] CoreFreq version 1.93.1
  * [ACPI/CPPC/EPP] Preview of AMD/Zen Energy Preference (CONFIG_CACHY)
  * [UI] Changed the HWP or CPPC ratio bounds.
  * [FIX] Putting `corefreqd` in the root cgroup (issue #379) Thanks to gel-crabs
  * [DOC] Parameters to blacklist the amd_pstate since kernel 6.0.11
  * [AMD][Zen4] Apply a voltage formula based on Rembrandt's. (#378)
  * [AMD][Zen4/Raphael] Attempting temperature per CCD from TCTL+0x308
  * [AMD][Zen4] Changed Timer loop
  * [CR] CLI code review and UI optimizations
  * [UI] Auto refresh the Topology items when off/online
  * [CR] Conditionally build with additional PMC Counters
  * [Intel] Adding Z8000 System Memory Controller Registers
  * [CR] Transformed global variable in cells padding
  * [UI] Windows re-scaling fix
  * [UI] Apply color theming to the CPPC capabilities list.
  * [AMD][Raphael] Adding device DIDs to probe UMC and IOMMU
  * [CPPC/FMW] Computes value bounds while Enabling/Disabling firmware
  * [CR] CPPC lib errors are now raised to Debug level
  * [AMD][Zen4] Increased the UMC size to 12 channels.
  * [CPPC] Handles the OffLine CPU case.
  * [CLI] Refactoring HWP/CPPC to print all capabilities per CPU
  * [ACPI] Computes the CPPC Bounds
  * [Intel] Linear Address Masking (LAM)
  * [CLI] EFER: Left aligned labels
  * [AMD] Reports UAIE and AIBRSE bits from EFER system register
  * [CLI] Changed mitigation mechanisms incapability labels
  * [AMD][Zen2] Mitigation Mechanism BTC-NOBR * ACPI/OSPM documentation
  * [CR] Code review on bit masks
  * [CPPC][ACPI] Kernel may decode the Guaranteed Performance Register
  * [UI] Optimize the cycles to clear the time bar.
  * [CR] Code review for extra compiler warnings
  * [UI] Time of the day displayed in the right side of menu
  * [UI] Display the current date and time in menu bar
  * [Kernel] Introducing support of `CONFIG_SCHED_BORE`
  * [CLI] Fixing ambiguous CPPC report: hardware vs firmware
  * [CLI] Surrounds _CPC feature with square brackets
  * [CPPC] Provides the ACPI _CPC object state.
  * [UI] Colors the task being tracked in the tracking list
  * [UI] Display the current time in the menu bar
  * [CLI] Reserve the programmable TDP section to Intel processors.
  * [AMD/Zen3+] Improving the DIMM geometry of Rembrandt UMC</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1672747200">- update to 1.94.1:
  * [Intel] Gemini Lake
  * [AMD] Ryzen 5 6600 H SoC, UMC channels
  * [AMD] Rembrandt: maximum of two UMC channels
  * [AMD] Raphael: Decodes DIMM geometry from AddrCfg
  * [AMD] Zen: Aggregation refactored
  * [AMD] Improved DDR5 clock decoding
  * Optimized Idle Loop</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1673006400">- update to 1.94.3:
  * [AMD][RMB] If UMC is quad channels then unpopulate odd channels
  * [AMD][RPL] Provide Service Processor Vcore as workaround
  * [UI] Auto size and lay performance capabilities window
  * [UI] Adding comments to the EEO and R2H technologies
  * [AMD][Raphael] 7950X3D, 7900X3D. support</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1674475200">- update to 1.95.1:
  * [Intel] RPL: voltage of Pcore, Ecore, System Agent
  * [Intel] RPL and ADL Chipset device IDs
  * [Intel] Decode the RPL IMC and improve DDR5 support
  * [Build] Raise `MAX_FREQ_HZ` up to 7125000000 Hertz
  * [Intel] Mobile {Coffee Lake, Kaby Lake} codenames
  * [Intel] Braswell codename detection
  * [AMD] SYSCFG Register
  * [AMD] EPYC 9654
  * [AMD] Transparent SME
  * [AMD] DRAM Data Scrambling
  * [AMD] Adding "Barcelo R" and "Rembrandt R"</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1675944000">- update to 1.95.2:
  * Fixed the aggregation of the minimum ratio
  Intel:
  * [Airmont][Silvermont] Attempt to decode `tCKE` from DRMC
    register
  * [Airmont] Improve `tWTPr`, `B2B`, `tWWDR` timings
  * [Airmont] Provide a new IMC decoder
  * Add the Emerald Rapids architecture entry
  * [DDR5][DDR4] Add the `RCDw` IMC timing
  * [Raptor Lake ] De-activate the MSR Uncore counter
  AMD:
  * "Zen3/Barcelo-R" and "Zen3+ Rembrandt-R" codenames
  * [Zen] Thermal highest limit reset fix
  Misc:
  * Code review and Registers documentation:
    AMD HWCR, Intel HDC and DRP</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677067200">- update to 1.95.4
  * [Intel] [from 11th to 14th gen]
    Convert the DRAM Speed to MT/s unit
    Compute the Bus Rate based on the BIOS MC PLL
- update to 1.95.3
  * [Intel] [Airmont]
    Improved the IMC geometry
    Introducing the Spreadtrum architecture
    Fixed the Bus and DRAM frequency rates
  * [Intel] [from 11th to 13th gen] Attempt to probe the interleaved controllers
  * [Intel] [Alder Lake/H] Attempt to decode the TCO Watchdog</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677153600">- added leap_compile_fix.patch to fix compilation on Leap</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1683115200">- removed leap_compile_fix.patch no needed anymore
- update to 1.96.0
  * [AMD]
    [RPL/X3D] Disabling the turbo boosted P-states change
    [PHOENIX] Adding Z1, U and HS PRO series.
    [Genoa] DAC address at UMC BAR + 0x40
    [Zen4] Adding the PCI entries of Genoa
    [Zen2] Adding remaining PCI entries
    [Zen] Query DAC &amp; CFG with the right UMC base address register
    [Zen4] Dump the CPUID Extended CPU Topology leaves.
    [Zen][Embedded][Banded Kestrel] R1000 Processor Family
    [Zen][Embedded] "Great Horned Owl", "River Hawk", "Grey Hawk"
    Complete the "Raven Ridge" and "Picasso" lists
    [EPYC] Moved "Snowy Owl" Embedded processors to CPUID 8F_01
    [Zen4] introducing Phoenix and Dragon Range
    [RMB] adding the Ryzen Embedded V3000 processors
    [VMR] adding the "AMD Ryzen 9 PRO 5945"
  * [Intel]
    Adding Granite Rapids, Sierra Forest, Grand Ridge entries
    Adding "Lunar Lake" and "Arrow Lake" entries.
  * [UI]
    Optimized decimal to digits converter
    Allow task tracker to select up to pid_max
    Can trace the frozen states of Linux tasks.
    Only print HWP frequencies within bounds.
    Fix ruler's aggregation.
  * [CR]
    Check CPUID[HV_PARTITION_PRIVILEGE_MASK] for HV_X64_MSR_VP_RUNTIME
    Uninitialized variable fix.
    [CPPC] Build EPP with KERNEL_VERSION(6) rather than CONFIG_CACHY
    [KERNEL] Linux 6.3: Employ modifier calls with the vma-&gt;vm_flags</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1684065600">- update to 1.96.1
  * [Driver]
  - Postpone Clock Source registration during startup until the Base Clock is computed.
  - Change class_create() according to Linux Kernel 6.4
  - Clear interrupt flag (cli) after Halt in the Idle method
  * [AMD]
  - [PHOENIX] Adding Ryzen 7940H, 7840H, 7640H
  - [VERMEER] Adding Ryzen PRO and Embedded processors
  - Ryzen Z1 CPUID' brand fix
  - Adding EPYC Embedded 9004 Series as Genoa
  - Adding EPYC Embedded 7003 Series as Milan
  - Adding EPYC Embedded 7002 Series as Rome
  - Adding EPYC Embedded 7001 Series as Naples</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1685880000">- update to 1.96.2
  * [Driver]
  - Allows compilation to keep going without CONFIG_ACPI_CPPC_LIB
  * [Client]
  - Adding two command line arguments:
  - Op Show Package C-States
  - OW Toggle Energy units
  * [AMD]
  - Specification of some Configuration MSRs</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1686830400">- update to 1.96.4
  * [AMD]
  - Display CPUID state of new and legacy features:
    Fused Multiply Add [FMA4]
    Extended Operation Support [XOP]
    Translation Cache Extension [TCE]
    Trailing Bit Manipulation [TBM]
    OS Visible Work-around [OSVW]
    LOCK prefix to read CR8 [AltMov]
  * [Intel]
  - Advanced Matrix Extensions [AMX]
  - Bits and Features of Sierra Forest and Grand Ridge
  - Attempt to decode the Meteor Lake Memory Controller
- update to 1.96.3
  * [AMD]
  - [Zeppelin] Probe more than one UMC controllers on Ryzen Threadripper 1900X
  - [Zen4] Dump SMBE and BMEC sub-leaves of CPUID 0x80000020</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1688212800">- update to 1.96.5
  * [AMD]
    Adding the "AMD Ryzen 5 5600X3D"
    Introducing the Zen4c Bergamo architecture
    Specs fixing of Embedded V-series and 3000 Series Processors
    Adding MENDOCINO, RAPHAEL Pro, PHOENIX Pro among others</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1712318400">- added preamble file for %kernel_module_package macro
- update to 1.97.1
  * added aarch64 support
  * upstream did not provide a summary changelog. Full list of commits:
    https://github.com/cyring/CoreFreq/compare/1.96.5...1.97.1</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715860800">- update to 1.97.2
  * [AMD]
  - [Hawk Point] Adding Ryzen PRO processors
  - [Phoenix] Adding the unlocked Ryzen 8000 Series
  * [Intel]
  - [MeteorLake] New bits specified
  - EEO and R2H bits inversion fix in MSR_POWER_CTL (0x1fc)
  - Reverse specification of MSR UNCORE_PERF_STATUS
  - Prefetchers fix of L1 Scrubbing, L1 Next Page and L2 AMP
  * [AArch64]
  - Providing Exclusive Load/Store to atomic operations
  - Improved asm of various macro functions
  - Removed LEGACY macros
  - Optimized the CORE_COUNT macros
  - Marked the Tools feature as nominal: Stress functions available
  - Allow user access to Retired Instructions counter
  - Fix Instructions counter overflow
  - Other PMC enhancements
  * [CR]
  - Fix a building issue with AlmaLinux aka RHEL-9
  - Linux kernel 6.9: Avoid redefinition of Intel MSR macros
  * [Doc]
  - README section for AlmaLinux
  - CONFIG_TRIM_UNUSED_KSYMS kernel build config is forbidden</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715947200">- fix dependency on kernel module that was not versioned</changelog>
</package>
<package pkgid="b8d12fd6ed4a7400de1f803ff2b8eb7b295a82be958567f9b59ff3276a3b0aaac27156eb46ed83275a1266a724a133b318075255ec0192e85009a1e1ab91df71" name="CoreFreq-debugsource" arch="x86_64">
  <version epoch="0" ver="1.98.1" rel="1.1"/>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1667563200">- update to version 1.92.3
  - Export CPUID bits Intel Sierra Forest, Grand Ridge, Granite Rapids
    and completes AMD64 Fn0000_0007_ECX_x0
  - [Features] WBNOINVD and CLZERO instructions
  - Adding various Mitigation Mechanism aggregations:
    IPRED_DIS_U, IPRED_DIS_S, RRSBA_DIS_U, RRSBA_DIS_S, BHI_DIS_S, MCDT_NO
  - RDPID and UMIP capability fixed.
  - [AMD] Perf. Mon. version based on CPUID_0x80000022.EAX.PerfMonV2
  - [AMD][Zen3+][Rembrandt] Trigger UMC and IOMMU decoders
  - [AMD][Ryzen 5 6600H] Found voltage VID @ SMU 0x6f010 and 0x6f014
  - Introducing AMD Security Feature capabilities:
    SKINIT, SEV, GMET, SEV-ES, SEV-SNP
  - [AMD64] Non-architectural MSR: SPECULATIVE STORE BYPASS DISABLE
  - [Intel][2nd &amp; 3rd gen] Misc IMC optimizations
  - [AMD][Rembrandt] Provides Vcore from a new formula.
  - Dumping CPUID leaves from AMD64 Architecture Programmer’s Manual
  - [Intel][HSW &amp; BDW] Compute the DIMM banks
  - [UI] Re-assigned keys to move or resize windows.
  - [AMD][Zen] Uncore frequency: Improving the Memory Clock divisor
  - [Intel][HSW &amp; BDW][SKL] Make use of same function DimmWidthToRows
  - [AMD][Zen3+][Rembrandt] Provides the thermal sensor.
  - [AMD/Zen2 &amp; Zen3] Removed the HSMP capability.
  - [Intel][CML][RKL][TGL] Compute the DIMM Rows from CH_WIDTH
  - [AMD/EPYC] Adding the CPUID of Zen4 Genoa architecture
  - [AMD/Zen2] Introducing Mendocino architecture
  - Changed MeteorLake/N to CPUID 06_B5
  - [Intel] Computes BIOS DRAM frequency based on PLL_REF100
  - [Intel][SNB/IVB/HSW/BDW] Improved BIOS DRAM frequency
  - [Intel][SNB/IVB] DRAM frequency based on RAM_Select and FSB_Select
  - [Intel][IVB] IMC specifications and optimizations.
  - [Intel][SNB,IVB] Computes the DIMM A from DAS bit in MAD register
  - [Intel][SNB,IVB,HSW,BDW] Rolling back changes to the DIMM topology
  - [Intel][BDW][HSW] Query the IMC Power Down Mode
  - [Intel][IVB][SNB] Attempt to decode the IMC third timings
  - [AMD][Ryzen] Added AMD Ryzen 7 PRO 6860Z
  - [AMD][F17h-F19h] Can toggle ON and OFF the Instruction Cache Unit
  - [AMD] Checking the Ryzen "OEM Only" processors
  - [Intel] Specification of 12th Gen. MSR registers capability
  - [Intel] Adding Raptor Lake-S with CPUID 06_BF
  - [AMD] Introducing Zen 4 / Raphael architecture
  - [Intel][SNB,IVB,HSW] Attempt to assign the Rank per DIMM slot
  - [Intel][SNB,IVB,HSW] Attempt to fix the DIMM(s) topology layout
  - ClockSource: TSC udelay() asm implementation builtin as a default
  - [Intel][Alder Lake] Adding IMC entry for i5-12500 processor
  - [Intel][Alder Lake] Added default case if Processor has only Pcores
  - [Intel][Atom/Bonnell][IMC] Attempt to compute the DIMM geometry
  - [UI][Custom view] Show the Uncore unit in watt or joule
  - [UI] Display HWP or CPPC in footer for capable processors.
  - [CLI] Added HWP Capabilities and HWP Request to the JSON export
  - [CLI] Don't allow the HWP dialog box if feature is not available.
  - [CPPC][Firmware] allows (de)activation of the feature.
  - [CLI] Added CPU ratios to JSON export
  - [CPPC] Improved scaling
  - [CPPC] Build fixed down to Kernel version 3
  - [Kernel/ACPI] Attempt to write CPPC registers</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1667563201">- Repair deficient description grammar.</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1670241600">- update to 1.92.4:
  * [Intel/Skylake-X] Permits MSR_RING_PERF_LIMIT_REASONS</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1670932800">- removed modprobe_corefreqd.service.patch and harden_corefreqd.service.patch
  now included in new corefreqd.service file replacing stock one
- update to 1.93.1
  * [PRJ] CoreFreq version 1.93.1
  * [ACPI/CPPC/EPP] Preview of AMD/Zen Energy Preference (CONFIG_CACHY)
  * [UI] Changed the HWP or CPPC ratio bounds.
  * [FIX] Putting `corefreqd` in the root cgroup (issue #379) Thanks to gel-crabs
  * [DOC] Parameters to blacklist the amd_pstate since kernel 6.0.11
  * [AMD][Zen4] Apply a voltage formula based on Rembrandt's. (#378)
  * [AMD][Zen4/Raphael] Attempting temperature per CCD from TCTL+0x308
  * [AMD][Zen4] Changed Timer loop
  * [CR] CLI code review and UI optimizations
  * [UI] Auto refresh the Topology items when off/online
  * [CR] Conditionally build with additional PMC Counters
  * [Intel] Adding Z8000 System Memory Controller Registers
  * [CR] Transformed global variable in cells padding
  * [UI] Windows re-scaling fix
  * [UI] Apply color theming to the CPPC capabilities list.
  * [AMD][Raphael] Adding device DIDs to probe UMC and IOMMU
  * [CPPC/FMW] Computes value bounds while Enabling/Disabling firmware
  * [CR] CPPC lib errors are now raised to Debug level
  * [AMD][Zen4] Increased the UMC size to 12 channels.
  * [CPPC] Handles the OffLine CPU case.
  * [CLI] Refactoring HWP/CPPC to print all capabilities per CPU
  * [ACPI] Computes the CPPC Bounds
  * [Intel] Linear Address Masking (LAM)
  * [CLI] EFER: Left aligned labels
  * [AMD] Reports UAIE and AIBRSE bits from EFER system register
  * [CLI] Changed mitigation mechanisms incapability labels
  * [AMD][Zen2] Mitigation Mechanism BTC-NOBR * ACPI/OSPM documentation
  * [CR] Code review on bit masks
  * [CPPC][ACPI] Kernel may decode the Guaranteed Performance Register
  * [UI] Optimize the cycles to clear the time bar.
  * [CR] Code review for extra compiler warnings
  * [UI] Time of the day displayed in the right side of menu
  * [UI] Display the current date and time in menu bar
  * [Kernel] Introducing support of `CONFIG_SCHED_BORE`
  * [CLI] Fixing ambiguous CPPC report: hardware vs firmware
  * [CLI] Surrounds _CPC feature with square brackets
  * [CPPC] Provides the ACPI _CPC object state.
  * [UI] Colors the task being tracked in the tracking list
  * [UI] Display the current time in the menu bar
  * [CLI] Reserve the programmable TDP section to Intel processors.
  * [AMD/Zen3+] Improving the DIMM geometry of Rembrandt UMC</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1672747200">- update to 1.94.1:
  * [Intel] Gemini Lake
  * [AMD] Ryzen 5 6600 H SoC, UMC channels
  * [AMD] Rembrandt: maximum of two UMC channels
  * [AMD] Raphael: Decodes DIMM geometry from AddrCfg
  * [AMD] Zen: Aggregation refactored
  * [AMD] Improved DDR5 clock decoding
  * Optimized Idle Loop</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1673006400">- update to 1.94.3:
  * [AMD][RMB] If UMC is quad channels then unpopulate odd channels
  * [AMD][RPL] Provide Service Processor Vcore as workaround
  * [UI] Auto size and lay performance capabilities window
  * [UI] Adding comments to the EEO and R2H technologies
  * [AMD][Raphael] 7950X3D, 7900X3D. support</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1674475200">- update to 1.95.1:
  * [Intel] RPL: voltage of Pcore, Ecore, System Agent
  * [Intel] RPL and ADL Chipset device IDs
  * [Intel] Decode the RPL IMC and improve DDR5 support
  * [Build] Raise `MAX_FREQ_HZ` up to 7125000000 Hertz
  * [Intel] Mobile {Coffee Lake, Kaby Lake} codenames
  * [Intel] Braswell codename detection
  * [AMD] SYSCFG Register
  * [AMD] EPYC 9654
  * [AMD] Transparent SME
  * [AMD] DRAM Data Scrambling
  * [AMD] Adding "Barcelo R" and "Rembrandt R"</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1675944000">- update to 1.95.2:
  * Fixed the aggregation of the minimum ratio
  Intel:
  * [Airmont][Silvermont] Attempt to decode `tCKE` from DRMC
    register
  * [Airmont] Improve `tWTPr`, `B2B`, `tWWDR` timings
  * [Airmont] Provide a new IMC decoder
  * Add the Emerald Rapids architecture entry
  * [DDR5][DDR4] Add the `RCDw` IMC timing
  * [Raptor Lake ] De-activate the MSR Uncore counter
  AMD:
  * "Zen3/Barcelo-R" and "Zen3+ Rembrandt-R" codenames
  * [Zen] Thermal highest limit reset fix
  Misc:
  * Code review and Registers documentation:
    AMD HWCR, Intel HDC and DRP</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677067200">- update to 1.95.4
  * [Intel] [from 11th to 14th gen]
    Convert the DRAM Speed to MT/s unit
    Compute the Bus Rate based on the BIOS MC PLL
- update to 1.95.3
  * [Intel] [Airmont]
    Improved the IMC geometry
    Introducing the Spreadtrum architecture
    Fixed the Bus and DRAM frequency rates
  * [Intel] [from 11th to 13th gen] Attempt to probe the interleaved controllers
  * [Intel] [Alder Lake/H] Attempt to decode the TCO Watchdog</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677153600">- added leap_compile_fix.patch to fix compilation on Leap</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1683115200">- removed leap_compile_fix.patch no needed anymore
- update to 1.96.0
  * [AMD]
    [RPL/X3D] Disabling the turbo boosted P-states change
    [PHOENIX] Adding Z1, U and HS PRO series.
    [Genoa] DAC address at UMC BAR + 0x40
    [Zen4] Adding the PCI entries of Genoa
    [Zen2] Adding remaining PCI entries
    [Zen] Query DAC &amp; CFG with the right UMC base address register
    [Zen4] Dump the CPUID Extended CPU Topology leaves.
    [Zen][Embedded][Banded Kestrel] R1000 Processor Family
    [Zen][Embedded] "Great Horned Owl", "River Hawk", "Grey Hawk"
    Complete the "Raven Ridge" and "Picasso" lists
    [EPYC] Moved "Snowy Owl" Embedded processors to CPUID 8F_01
    [Zen4] introducing Phoenix and Dragon Range
    [RMB] adding the Ryzen Embedded V3000 processors
    [VMR] adding the "AMD Ryzen 9 PRO 5945"
  * [Intel]
    Adding Granite Rapids, Sierra Forest, Grand Ridge entries
    Adding "Lunar Lake" and "Arrow Lake" entries.
  * [UI]
    Optimized decimal to digits converter
    Allow task tracker to select up to pid_max
    Can trace the frozen states of Linux tasks.
    Only print HWP frequencies within bounds.
    Fix ruler's aggregation.
  * [CR]
    Check CPUID[HV_PARTITION_PRIVILEGE_MASK] for HV_X64_MSR_VP_RUNTIME
    Uninitialized variable fix.
    [CPPC] Build EPP with KERNEL_VERSION(6) rather than CONFIG_CACHY
    [KERNEL] Linux 6.3: Employ modifier calls with the vma-&gt;vm_flags</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1684065600">- update to 1.96.1
  * [Driver]
  - Postpone Clock Source registration during startup until the Base Clock is computed.
  - Change class_create() according to Linux Kernel 6.4
  - Clear interrupt flag (cli) after Halt in the Idle method
  * [AMD]
  - [PHOENIX] Adding Ryzen 7940H, 7840H, 7640H
  - [VERMEER] Adding Ryzen PRO and Embedded processors
  - Ryzen Z1 CPUID' brand fix
  - Adding EPYC Embedded 9004 Series as Genoa
  - Adding EPYC Embedded 7003 Series as Milan
  - Adding EPYC Embedded 7002 Series as Rome
  - Adding EPYC Embedded 7001 Series as Naples</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1685880000">- update to 1.96.2
  * [Driver]
  - Allows compilation to keep going without CONFIG_ACPI_CPPC_LIB
  * [Client]
  - Adding two command line arguments:
  - Op Show Package C-States
  - OW Toggle Energy units
  * [AMD]
  - Specification of some Configuration MSRs</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1686830400">- update to 1.96.4
  * [AMD]
  - Display CPUID state of new and legacy features:
    Fused Multiply Add [FMA4]
    Extended Operation Support [XOP]
    Translation Cache Extension [TCE]
    Trailing Bit Manipulation [TBM]
    OS Visible Work-around [OSVW]
    LOCK prefix to read CR8 [AltMov]
  * [Intel]
  - Advanced Matrix Extensions [AMX]
  - Bits and Features of Sierra Forest and Grand Ridge
  - Attempt to decode the Meteor Lake Memory Controller
- update to 1.96.3
  * [AMD]
  - [Zeppelin] Probe more than one UMC controllers on Ryzen Threadripper 1900X
  - [Zen4] Dump SMBE and BMEC sub-leaves of CPUID 0x80000020</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1688212800">- update to 1.96.5
  * [AMD]
    Adding the "AMD Ryzen 5 5600X3D"
    Introducing the Zen4c Bergamo architecture
    Specs fixing of Embedded V-series and 3000 Series Processors
    Adding MENDOCINO, RAPHAEL Pro, PHOENIX Pro among others</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1712318400">- added preamble file for %kernel_module_package macro
- update to 1.97.1
  * added aarch64 support
  * upstream did not provide a summary changelog. Full list of commits:
    https://github.com/cyring/CoreFreq/compare/1.96.5...1.97.1</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715860800">- update to 1.97.2
  * [AMD]
  - [Hawk Point] Adding Ryzen PRO processors
  - [Phoenix] Adding the unlocked Ryzen 8000 Series
  * [Intel]
  - [MeteorLake] New bits specified
  - EEO and R2H bits inversion fix in MSR_POWER_CTL (0x1fc)
  - Reverse specification of MSR UNCORE_PERF_STATUS
  - Prefetchers fix of L1 Scrubbing, L1 Next Page and L2 AMP
  * [AArch64]
  - Providing Exclusive Load/Store to atomic operations
  - Improved asm of various macro functions
  - Removed LEGACY macros
  - Optimized the CORE_COUNT macros
  - Marked the Tools feature as nominal: Stress functions available
  - Allow user access to Retired Instructions counter
  - Fix Instructions counter overflow
  - Other PMC enhancements
  * [CR]
  - Fix a building issue with AlmaLinux aka RHEL-9
  - Linux kernel 6.9: Avoid redefinition of Intel MSR macros
  * [Doc]
  - README section for AlmaLinux
  - CONFIG_TRIM_UNUSED_KSYMS kernel build config is forbidden</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715947200">- fix dependency on kernel module that was not versioned</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1722081600">- update to 1.98.0
  * [Build]
  - Change dkms configuration to install into /usr/bin/
  - Solved compilation with Fedora using RHEL MINOR version number 99
  - [CR] Fixed some compilation warnings
  - [CR] Fix memory allocation in kernel pages for the SysGate
  - Workaround to musl change in basename (#494)
  - aarch64: Build with Redhat RHEL version 9
  - [CR] x86_64: Prevent array size overflow
  - dkms and ckms configuration files upgraded to version 1.98
  * [Intel]
  - [Raptor Lake] Adding the HB DID of i7-14700K' IMC
  - Mitigation mechanism: GDS_NO; RFDS_NO; MONITOR_MITG_NO
  - Apply some SDM Documentation Changes
  - [MTL] Fix CMD Stretch bit range width
  - Added method CLOCK_FLEX_MAX with Xeon's Nehalem &amp; Core 2
  - Grants full MSR_FLEX_RATIO access to tested architectures:
  - Alder Lake/S
  - Tiger Lake/U
  - Westmere/Gulftown
  - Provides the overclocking bins with unlocked processors
  - Query the Overclocking bit (OC) from Capabilities
  - Adding technologies: VMD, HDCP, IPU and VPU
  - Volume Management Device
  - High-Bandwidth Digital Content Protection
  - Image Processing Unit
  - Vision Processing Unit
  - Gaussian &amp; Neural Accelerator - GNA technology
  - [CR] Renamed Gemini Lake structures
  - [Meteor Lake] Introducing memory controller decoder
  * [AArch64]
  - Optimizing the Vcore seek
  - Workaround to Package discrete voltage: the highest Vcore
  - Improving computation of Euclidean division
  - Adjust frequency division in CNTFRQ and PMU counters
  - Scale a frequency factor from the interval
  - Refactoring the frequency ratios for decimal precision
  - Compile dev_pm_opp_put if Kernel greater or equal 4.11
  - Get the voltage core of CPUs from OPP
  * [AMD]
  - [Zen4][Raphael] Adding the EPYC 4004 Series
  - [Zen4] Clarify Hawk Point and Phoenix-Refresh architectures
  - [Family 19h] New voltage formula assigned to model 61h
  - Vcore activated
  - Voltage SoC deactivated
  - [Zen] Prevent the calculation of negative temperature (issue #496)
  - [Family 18h] Documented Hygon C86 7375
  - [Family 19h] PStateDef specification: Adding VID[8] bit 32
  - Specification of MSR HW_PSTATE_STATUS
  * [CLI]
  - aarch64: Display the state of the Memory Management Unit (MMU)
  - aarch64: State of Instruction Cache Unit I$ and Data Cache Unit D$
  - Added UI_RULER_MINIMUM &amp; UI_RULER_MAXIMUM building constraints
  - Revert "[CLI] Responsive ruler to architectural context"
  - This reverts commit 4bc38d6.
  - x86_64: AMD Boost and P-States redesigned
  - [UI] Hardening missing console/terminal size
  - Responsive ruler to architectural context
  - x86_64: Make HDCP meaning string shorter
  * [Driver]
  - Created C2U_Enable as a parameter alias of C1U_Enable</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1723032000">- update to 1.98.1
  * [AMD]
  - [Zen] Inject threshold events when thermal is out of bounds
  - Generic Zen architectures renamed with their Family number
  - Added a generic entry for the 1A family
  - Configure TjMax for multiple Ryzen and Threadripper
  - [CR] Optimize AMD temperature filtering function
  - [Zen5] Introducing the Eldora architecture aka "Granite Ridge"
  - [Zen5] Adding entries for Strix Point
  * [Intel]
  - Feature-bits of Core Ultra architecture
  - [TGL][ADL][RPL] New devices to probe IMC and Watchdog
  - [Raptor Lake-E] Adding the IMC probing entries
  - Grant full MSR_FLEX_RATIO access to Raptor Lake (06_B7)
  - Added Host Bridge DIDs of Raptor Lake-E
  - [ADL ... MTL] Code review of IMC decoders
  - [ADL] Compute DIMM Bank and Columns on both channels
  - [ADL] Process channels differently depending on DDR4 or DDR5
  - 12th to 14th generation IMC decoder refactoring
  - [ADL ... MTL] Adding Memory Controller Virtual Channel Count
  - [ADL ... MTL] Channel count as a function of DDPCD DDR_TYPE
  - [ADL ... MTL] Keep all enabled memory controllers
  - [12th and superior] Compute tWR quantity as a function of DDR version
  * [Build]
  - Now leave version number in Makefile
  - Pretty print the build and the clean of outputs
    Allow the V=n option increase the verbose level (incl. kernel)
  - CPU-Freq build against Linux Kernel version 6.11
  * [Documentation]
  - Refreshed README and Makefile</changelog>
</package>
<package pkgid="ba6bf510aab1a37b53fe43283193d2bfa2183a1d4b5987b33babfbf3d87d859712caeb5fa6206159e4de32abb81866980ef67c5e56f9cf128981dee207360417" name="CoreFreq-debugsource" arch="x86_64">
  <version epoch="0" ver="1.98.2" rel="1.3"/>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1667563200">- Repair deficient description grammar.</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1670241600">- update to 1.92.4:
  * [Intel/Skylake-X] Permits MSR_RING_PERF_LIMIT_REASONS</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1670932800">- removed modprobe_corefreqd.service.patch and harden_corefreqd.service.patch
  now included in new corefreqd.service file replacing stock one
- update to 1.93.1
  * [PRJ] CoreFreq version 1.93.1
  * [ACPI/CPPC/EPP] Preview of AMD/Zen Energy Preference (CONFIG_CACHY)
  * [UI] Changed the HWP or CPPC ratio bounds.
  * [FIX] Putting `corefreqd` in the root cgroup (issue #379) Thanks to gel-crabs
  * [DOC] Parameters to blacklist the amd_pstate since kernel 6.0.11
  * [AMD][Zen4] Apply a voltage formula based on Rembrandt's. (#378)
  * [AMD][Zen4/Raphael] Attempting temperature per CCD from TCTL+0x308
  * [AMD][Zen4] Changed Timer loop
  * [CR] CLI code review and UI optimizations
  * [UI] Auto refresh the Topology items when off/online
  * [CR] Conditionally build with additional PMC Counters
  * [Intel] Adding Z8000 System Memory Controller Registers
  * [CR] Transformed global variable in cells padding
  * [UI] Windows re-scaling fix
  * [UI] Apply color theming to the CPPC capabilities list.
  * [AMD][Raphael] Adding device DIDs to probe UMC and IOMMU
  * [CPPC/FMW] Computes value bounds while Enabling/Disabling firmware
  * [CR] CPPC lib errors are now raised to Debug level
  * [AMD][Zen4] Increased the UMC size to 12 channels.
  * [CPPC] Handles the OffLine CPU case.
  * [CLI] Refactoring HWP/CPPC to print all capabilities per CPU
  * [ACPI] Computes the CPPC Bounds
  * [Intel] Linear Address Masking (LAM)
  * [CLI] EFER: Left aligned labels
  * [AMD] Reports UAIE and AIBRSE bits from EFER system register
  * [CLI] Changed mitigation mechanisms incapability labels
  * [AMD][Zen2] Mitigation Mechanism BTC-NOBR * ACPI/OSPM documentation
  * [CR] Code review on bit masks
  * [CPPC][ACPI] Kernel may decode the Guaranteed Performance Register
  * [UI] Optimize the cycles to clear the time bar.
  * [CR] Code review for extra compiler warnings
  * [UI] Time of the day displayed in the right side of menu
  * [UI] Display the current date and time in menu bar
  * [Kernel] Introducing support of `CONFIG_SCHED_BORE`
  * [CLI] Fixing ambiguous CPPC report: hardware vs firmware
  * [CLI] Surrounds _CPC feature with square brackets
  * [CPPC] Provides the ACPI _CPC object state.
  * [UI] Colors the task being tracked in the tracking list
  * [UI] Display the current time in the menu bar
  * [CLI] Reserve the programmable TDP section to Intel processors.
  * [AMD/Zen3+] Improving the DIMM geometry of Rembrandt UMC</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1672747200">- update to 1.94.1:
  * [Intel] Gemini Lake
  * [AMD] Ryzen 5 6600 H SoC, UMC channels
  * [AMD] Rembrandt: maximum of two UMC channels
  * [AMD] Raphael: Decodes DIMM geometry from AddrCfg
  * [AMD] Zen: Aggregation refactored
  * [AMD] Improved DDR5 clock decoding
  * Optimized Idle Loop</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1673006400">- update to 1.94.3:
  * [AMD][RMB] If UMC is quad channels then unpopulate odd channels
  * [AMD][RPL] Provide Service Processor Vcore as workaround
  * [UI] Auto size and lay performance capabilities window
  * [UI] Adding comments to the EEO and R2H technologies
  * [AMD][Raphael] 7950X3D, 7900X3D. support</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1674475200">- update to 1.95.1:
  * [Intel] RPL: voltage of Pcore, Ecore, System Agent
  * [Intel] RPL and ADL Chipset device IDs
  * [Intel] Decode the RPL IMC and improve DDR5 support
  * [Build] Raise `MAX_FREQ_HZ` up to 7125000000 Hertz
  * [Intel] Mobile {Coffee Lake, Kaby Lake} codenames
  * [Intel] Braswell codename detection
  * [AMD] SYSCFG Register
  * [AMD] EPYC 9654
  * [AMD] Transparent SME
  * [AMD] DRAM Data Scrambling
  * [AMD] Adding "Barcelo R" and "Rembrandt R"</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1675944000">- update to 1.95.2:
  * Fixed the aggregation of the minimum ratio
  Intel:
  * [Airmont][Silvermont] Attempt to decode `tCKE` from DRMC
    register
  * [Airmont] Improve `tWTPr`, `B2B`, `tWWDR` timings
  * [Airmont] Provide a new IMC decoder
  * Add the Emerald Rapids architecture entry
  * [DDR5][DDR4] Add the `RCDw` IMC timing
  * [Raptor Lake ] De-activate the MSR Uncore counter
  AMD:
  * "Zen3/Barcelo-R" and "Zen3+ Rembrandt-R" codenames
  * [Zen] Thermal highest limit reset fix
  Misc:
  * Code review and Registers documentation:
    AMD HWCR, Intel HDC and DRP</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677067200">- update to 1.95.4
  * [Intel] [from 11th to 14th gen]
    Convert the DRAM Speed to MT/s unit
    Compute the Bus Rate based on the BIOS MC PLL
- update to 1.95.3
  * [Intel] [Airmont]
    Improved the IMC geometry
    Introducing the Spreadtrum architecture
    Fixed the Bus and DRAM frequency rates
  * [Intel] [from 11th to 13th gen] Attempt to probe the interleaved controllers
  * [Intel] [Alder Lake/H] Attempt to decode the TCO Watchdog</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677153600">- added leap_compile_fix.patch to fix compilation on Leap</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1683115200">- removed leap_compile_fix.patch no needed anymore
- update to 1.96.0
  * [AMD]
    [RPL/X3D] Disabling the turbo boosted P-states change
    [PHOENIX] Adding Z1, U and HS PRO series.
    [Genoa] DAC address at UMC BAR + 0x40
    [Zen4] Adding the PCI entries of Genoa
    [Zen2] Adding remaining PCI entries
    [Zen] Query DAC &amp; CFG with the right UMC base address register
    [Zen4] Dump the CPUID Extended CPU Topology leaves.
    [Zen][Embedded][Banded Kestrel] R1000 Processor Family
    [Zen][Embedded] "Great Horned Owl", "River Hawk", "Grey Hawk"
    Complete the "Raven Ridge" and "Picasso" lists
    [EPYC] Moved "Snowy Owl" Embedded processors to CPUID 8F_01
    [Zen4] introducing Phoenix and Dragon Range
    [RMB] adding the Ryzen Embedded V3000 processors
    [VMR] adding the "AMD Ryzen 9 PRO 5945"
  * [Intel]
    Adding Granite Rapids, Sierra Forest, Grand Ridge entries
    Adding "Lunar Lake" and "Arrow Lake" entries.
  * [UI]
    Optimized decimal to digits converter
    Allow task tracker to select up to pid_max
    Can trace the frozen states of Linux tasks.
    Only print HWP frequencies within bounds.
    Fix ruler's aggregation.
  * [CR]
    Check CPUID[HV_PARTITION_PRIVILEGE_MASK] for HV_X64_MSR_VP_RUNTIME
    Uninitialized variable fix.
    [CPPC] Build EPP with KERNEL_VERSION(6) rather than CONFIG_CACHY
    [KERNEL] Linux 6.3: Employ modifier calls with the vma-&gt;vm_flags</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1684065600">- update to 1.96.1
  * [Driver]
  - Postpone Clock Source registration during startup until the Base Clock is computed.
  - Change class_create() according to Linux Kernel 6.4
  - Clear interrupt flag (cli) after Halt in the Idle method
  * [AMD]
  - [PHOENIX] Adding Ryzen 7940H, 7840H, 7640H
  - [VERMEER] Adding Ryzen PRO and Embedded processors
  - Ryzen Z1 CPUID' brand fix
  - Adding EPYC Embedded 9004 Series as Genoa
  - Adding EPYC Embedded 7003 Series as Milan
  - Adding EPYC Embedded 7002 Series as Rome
  - Adding EPYC Embedded 7001 Series as Naples</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1685880000">- update to 1.96.2
  * [Driver]
  - Allows compilation to keep going without CONFIG_ACPI_CPPC_LIB
  * [Client]
  - Adding two command line arguments:
  - Op Show Package C-States
  - OW Toggle Energy units
  * [AMD]
  - Specification of some Configuration MSRs</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1686830400">- update to 1.96.4
  * [AMD]
  - Display CPUID state of new and legacy features:
    Fused Multiply Add [FMA4]
    Extended Operation Support [XOP]
    Translation Cache Extension [TCE]
    Trailing Bit Manipulation [TBM]
    OS Visible Work-around [OSVW]
    LOCK prefix to read CR8 [AltMov]
  * [Intel]
  - Advanced Matrix Extensions [AMX]
  - Bits and Features of Sierra Forest and Grand Ridge
  - Attempt to decode the Meteor Lake Memory Controller
- update to 1.96.3
  * [AMD]
  - [Zeppelin] Probe more than one UMC controllers on Ryzen Threadripper 1900X
  - [Zen4] Dump SMBE and BMEC sub-leaves of CPUID 0x80000020</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1688212800">- update to 1.96.5
  * [AMD]
    Adding the "AMD Ryzen 5 5600X3D"
    Introducing the Zen4c Bergamo architecture
    Specs fixing of Embedded V-series and 3000 Series Processors
    Adding MENDOCINO, RAPHAEL Pro, PHOENIX Pro among others</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1712318400">- added preamble file for %kernel_module_package macro
- update to 1.97.1
  * added aarch64 support
  * upstream did not provide a summary changelog. Full list of commits:
    https://github.com/cyring/CoreFreq/compare/1.96.5...1.97.1</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715860800">- update to 1.97.2
  * [AMD]
  - [Hawk Point] Adding Ryzen PRO processors
  - [Phoenix] Adding the unlocked Ryzen 8000 Series
  * [Intel]
  - [MeteorLake] New bits specified
  - EEO and R2H bits inversion fix in MSR_POWER_CTL (0x1fc)
  - Reverse specification of MSR UNCORE_PERF_STATUS
  - Prefetchers fix of L1 Scrubbing, L1 Next Page and L2 AMP
  * [AArch64]
  - Providing Exclusive Load/Store to atomic operations
  - Improved asm of various macro functions
  - Removed LEGACY macros
  - Optimized the CORE_COUNT macros
  - Marked the Tools feature as nominal: Stress functions available
  - Allow user access to Retired Instructions counter
  - Fix Instructions counter overflow
  - Other PMC enhancements
  * [CR]
  - Fix a building issue with AlmaLinux aka RHEL-9
  - Linux kernel 6.9: Avoid redefinition of Intel MSR macros
  * [Doc]
  - README section for AlmaLinux
  - CONFIG_TRIM_UNUSED_KSYMS kernel build config is forbidden</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715947200">- fix dependency on kernel module that was not versioned</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1722081600">- update to 1.98.0
  * [Build]
  - Change dkms configuration to install into /usr/bin/
  - Solved compilation with Fedora using RHEL MINOR version number 99
  - [CR] Fixed some compilation warnings
  - [CR] Fix memory allocation in kernel pages for the SysGate
  - Workaround to musl change in basename (#494)
  - aarch64: Build with Redhat RHEL version 9
  - [CR] x86_64: Prevent array size overflow
  - dkms and ckms configuration files upgraded to version 1.98
  * [Intel]
  - [Raptor Lake] Adding the HB DID of i7-14700K' IMC
  - Mitigation mechanism: GDS_NO; RFDS_NO; MONITOR_MITG_NO
  - Apply some SDM Documentation Changes
  - [MTL] Fix CMD Stretch bit range width
  - Added method CLOCK_FLEX_MAX with Xeon's Nehalem &amp; Core 2
  - Grants full MSR_FLEX_RATIO access to tested architectures:
  - Alder Lake/S
  - Tiger Lake/U
  - Westmere/Gulftown
  - Provides the overclocking bins with unlocked processors
  - Query the Overclocking bit (OC) from Capabilities
  - Adding technologies: VMD, HDCP, IPU and VPU
  - Volume Management Device
  - High-Bandwidth Digital Content Protection
  - Image Processing Unit
  - Vision Processing Unit
  - Gaussian &amp; Neural Accelerator - GNA technology
  - [CR] Renamed Gemini Lake structures
  - [Meteor Lake] Introducing memory controller decoder
  * [AArch64]
  - Optimizing the Vcore seek
  - Workaround to Package discrete voltage: the highest Vcore
  - Improving computation of Euclidean division
  - Adjust frequency division in CNTFRQ and PMU counters
  - Scale a frequency factor from the interval
  - Refactoring the frequency ratios for decimal precision
  - Compile dev_pm_opp_put if Kernel greater or equal 4.11
  - Get the voltage core of CPUs from OPP
  * [AMD]
  - [Zen4][Raphael] Adding the EPYC 4004 Series
  - [Zen4] Clarify Hawk Point and Phoenix-Refresh architectures
  - [Family 19h] New voltage formula assigned to model 61h
  - Vcore activated
  - Voltage SoC deactivated
  - [Zen] Prevent the calculation of negative temperature (issue #496)
  - [Family 18h] Documented Hygon C86 7375
  - [Family 19h] PStateDef specification: Adding VID[8] bit 32
  - Specification of MSR HW_PSTATE_STATUS
  * [CLI]
  - aarch64: Display the state of the Memory Management Unit (MMU)
  - aarch64: State of Instruction Cache Unit I$ and Data Cache Unit D$
  - Added UI_RULER_MINIMUM &amp; UI_RULER_MAXIMUM building constraints
  - Revert "[CLI] Responsive ruler to architectural context"
  - This reverts commit 4bc38d6.
  - x86_64: AMD Boost and P-States redesigned
  - [UI] Hardening missing console/terminal size
  - Responsive ruler to architectural context
  - x86_64: Make HDCP meaning string shorter
  * [Driver]
  - Created C2U_Enable as a parameter alias of C1U_Enable</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1723032000">- update to 1.98.1
  * [AMD]
  - [Zen] Inject threshold events when thermal is out of bounds
  - Generic Zen architectures renamed with their Family number
  - Added a generic entry for the 1A family
  - Configure TjMax for multiple Ryzen and Threadripper
  - [CR] Optimize AMD temperature filtering function
  - [Zen5] Introducing the Eldora architecture aka "Granite Ridge"
  - [Zen5] Adding entries for Strix Point
  * [Intel]
  - Feature-bits of Core Ultra architecture
  - [TGL][ADL][RPL] New devices to probe IMC and Watchdog
  - [Raptor Lake-E] Adding the IMC probing entries
  - Grant full MSR_FLEX_RATIO access to Raptor Lake (06_B7)
  - Added Host Bridge DIDs of Raptor Lake-E
  - [ADL ... MTL] Code review of IMC decoders
  - [ADL] Compute DIMM Bank and Columns on both channels
  - [ADL] Process channels differently depending on DDR4 or DDR5
  - 12th to 14th generation IMC decoder refactoring
  - [ADL ... MTL] Adding Memory Controller Virtual Channel Count
  - [ADL ... MTL] Channel count as a function of DDPCD DDR_TYPE
  - [ADL ... MTL] Keep all enabled memory controllers
  - [12th and superior] Compute tWR quantity as a function of DDR version
  * [Build]
  - Now leave version number in Makefile
  - Pretty print the build and the clean of outputs
    Allow the V=n option increase the verbose level (incl. kernel)
  - CPU-Freq build against Linux Kernel version 6.11
  * [Documentation]
  - Refreshed README and Makefile</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1723464000">- Update to 1.98.2
  * [Intel]
  - [WDT] Adding multiple devices to probe TCO
    C620 Series Chipset Production SKUs (0xa1a3)
    C620 Series Chipset Super SKUs (0xa223)
    Sunrise Point/H (0xa123)
    Cannon Lake/LP (0x9da3)
    Comet Lake/H (0x06a3)
    Ice Lake/LP (0x34a3)
    Tiger Lake/H (0x43a3)
    Elkhart Lake (0x4b23)
    Kaby Lake/H (0xa2a3)
    Cannon Lake (0xa323)
    Comet Lake/V (0xa3a3)
    Ice Lake/NG (0x38a3)
    Alder lake/M (0x54a3)
    Arrow Lake/S (0x7f23)
    Jasper Lake SMBus (0x4da3)
    Sunrise Point-LP SMBus (0x9d23)
    Comet Lake PCH-LP SMBus (0x02a3)
  - MSR_FLEX_RATIO register
    Grant access to Alder Lake/H (06_9A)
    Deny access to Nehalem/Bloomfield (06_1A)
    Removed a condition in access function</changelog>
</package>
<package pkgid="c3018a77e90c4667890fdab308bb8b4ad69887b2c61413133ae91bab11812cb05b5582cf84ef979b0e89c4264a9d1f2d72e2082819365a60d18b88e89756cd07" name="CoreFreq-debugsource" arch="x86_64">
  <version epoch="0" ver="1.98.3" rel="1.1"/>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1670241600">- update to 1.92.4:
  * [Intel/Skylake-X] Permits MSR_RING_PERF_LIMIT_REASONS</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1670932800">- removed modprobe_corefreqd.service.patch and harden_corefreqd.service.patch
  now included in new corefreqd.service file replacing stock one
- update to 1.93.1
  * [PRJ] CoreFreq version 1.93.1
  * [ACPI/CPPC/EPP] Preview of AMD/Zen Energy Preference (CONFIG_CACHY)
  * [UI] Changed the HWP or CPPC ratio bounds.
  * [FIX] Putting `corefreqd` in the root cgroup (issue #379) Thanks to gel-crabs
  * [DOC] Parameters to blacklist the amd_pstate since kernel 6.0.11
  * [AMD][Zen4] Apply a voltage formula based on Rembrandt's. (#378)
  * [AMD][Zen4/Raphael] Attempting temperature per CCD from TCTL+0x308
  * [AMD][Zen4] Changed Timer loop
  * [CR] CLI code review and UI optimizations
  * [UI] Auto refresh the Topology items when off/online
  * [CR] Conditionally build with additional PMC Counters
  * [Intel] Adding Z8000 System Memory Controller Registers
  * [CR] Transformed global variable in cells padding
  * [UI] Windows re-scaling fix
  * [UI] Apply color theming to the CPPC capabilities list.
  * [AMD][Raphael] Adding device DIDs to probe UMC and IOMMU
  * [CPPC/FMW] Computes value bounds while Enabling/Disabling firmware
  * [CR] CPPC lib errors are now raised to Debug level
  * [AMD][Zen4] Increased the UMC size to 12 channels.
  * [CPPC] Handles the OffLine CPU case.
  * [CLI] Refactoring HWP/CPPC to print all capabilities per CPU
  * [ACPI] Computes the CPPC Bounds
  * [Intel] Linear Address Masking (LAM)
  * [CLI] EFER: Left aligned labels
  * [AMD] Reports UAIE and AIBRSE bits from EFER system register
  * [CLI] Changed mitigation mechanisms incapability labels
  * [AMD][Zen2] Mitigation Mechanism BTC-NOBR * ACPI/OSPM documentation
  * [CR] Code review on bit masks
  * [CPPC][ACPI] Kernel may decode the Guaranteed Performance Register
  * [UI] Optimize the cycles to clear the time bar.
  * [CR] Code review for extra compiler warnings
  * [UI] Time of the day displayed in the right side of menu
  * [UI] Display the current date and time in menu bar
  * [Kernel] Introducing support of `CONFIG_SCHED_BORE`
  * [CLI] Fixing ambiguous CPPC report: hardware vs firmware
  * [CLI] Surrounds _CPC feature with square brackets
  * [CPPC] Provides the ACPI _CPC object state.
  * [UI] Colors the task being tracked in the tracking list
  * [UI] Display the current time in the menu bar
  * [CLI] Reserve the programmable TDP section to Intel processors.
  * [AMD/Zen3+] Improving the DIMM geometry of Rembrandt UMC</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1672747200">- update to 1.94.1:
  * [Intel] Gemini Lake
  * [AMD] Ryzen 5 6600 H SoC, UMC channels
  * [AMD] Rembrandt: maximum of two UMC channels
  * [AMD] Raphael: Decodes DIMM geometry from AddrCfg
  * [AMD] Zen: Aggregation refactored
  * [AMD] Improved DDR5 clock decoding
  * Optimized Idle Loop</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1673006400">- update to 1.94.3:
  * [AMD][RMB] If UMC is quad channels then unpopulate odd channels
  * [AMD][RPL] Provide Service Processor Vcore as workaround
  * [UI] Auto size and lay performance capabilities window
  * [UI] Adding comments to the EEO and R2H technologies
  * [AMD][Raphael] 7950X3D, 7900X3D. support</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1674475200">- update to 1.95.1:
  * [Intel] RPL: voltage of Pcore, Ecore, System Agent
  * [Intel] RPL and ADL Chipset device IDs
  * [Intel] Decode the RPL IMC and improve DDR5 support
  * [Build] Raise `MAX_FREQ_HZ` up to 7125000000 Hertz
  * [Intel] Mobile {Coffee Lake, Kaby Lake} codenames
  * [Intel] Braswell codename detection
  * [AMD] SYSCFG Register
  * [AMD] EPYC 9654
  * [AMD] Transparent SME
  * [AMD] DRAM Data Scrambling
  * [AMD] Adding "Barcelo R" and "Rembrandt R"</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1675944000">- update to 1.95.2:
  * Fixed the aggregation of the minimum ratio
  Intel:
  * [Airmont][Silvermont] Attempt to decode `tCKE` from DRMC
    register
  * [Airmont] Improve `tWTPr`, `B2B`, `tWWDR` timings
  * [Airmont] Provide a new IMC decoder
  * Add the Emerald Rapids architecture entry
  * [DDR5][DDR4] Add the `RCDw` IMC timing
  * [Raptor Lake ] De-activate the MSR Uncore counter
  AMD:
  * "Zen3/Barcelo-R" and "Zen3+ Rembrandt-R" codenames
  * [Zen] Thermal highest limit reset fix
  Misc:
  * Code review and Registers documentation:
    AMD HWCR, Intel HDC and DRP</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677067200">- update to 1.95.4
  * [Intel] [from 11th to 14th gen]
    Convert the DRAM Speed to MT/s unit
    Compute the Bus Rate based on the BIOS MC PLL
- update to 1.95.3
  * [Intel] [Airmont]
    Improved the IMC geometry
    Introducing the Spreadtrum architecture
    Fixed the Bus and DRAM frequency rates
  * [Intel] [from 11th to 13th gen] Attempt to probe the interleaved controllers
  * [Intel] [Alder Lake/H] Attempt to decode the TCO Watchdog</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677153600">- added leap_compile_fix.patch to fix compilation on Leap</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1683115200">- removed leap_compile_fix.patch no needed anymore
- update to 1.96.0
  * [AMD]
    [RPL/X3D] Disabling the turbo boosted P-states change
    [PHOENIX] Adding Z1, U and HS PRO series.
    [Genoa] DAC address at UMC BAR + 0x40
    [Zen4] Adding the PCI entries of Genoa
    [Zen2] Adding remaining PCI entries
    [Zen] Query DAC &amp; CFG with the right UMC base address register
    [Zen4] Dump the CPUID Extended CPU Topology leaves.
    [Zen][Embedded][Banded Kestrel] R1000 Processor Family
    [Zen][Embedded] "Great Horned Owl", "River Hawk", "Grey Hawk"
    Complete the "Raven Ridge" and "Picasso" lists
    [EPYC] Moved "Snowy Owl" Embedded processors to CPUID 8F_01
    [Zen4] introducing Phoenix and Dragon Range
    [RMB] adding the Ryzen Embedded V3000 processors
    [VMR] adding the "AMD Ryzen 9 PRO 5945"
  * [Intel]
    Adding Granite Rapids, Sierra Forest, Grand Ridge entries
    Adding "Lunar Lake" and "Arrow Lake" entries.
  * [UI]
    Optimized decimal to digits converter
    Allow task tracker to select up to pid_max
    Can trace the frozen states of Linux tasks.
    Only print HWP frequencies within bounds.
    Fix ruler's aggregation.
  * [CR]
    Check CPUID[HV_PARTITION_PRIVILEGE_MASK] for HV_X64_MSR_VP_RUNTIME
    Uninitialized variable fix.
    [CPPC] Build EPP with KERNEL_VERSION(6) rather than CONFIG_CACHY
    [KERNEL] Linux 6.3: Employ modifier calls with the vma-&gt;vm_flags</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1684065600">- update to 1.96.1
  * [Driver]
  - Postpone Clock Source registration during startup until the Base Clock is computed.
  - Change class_create() according to Linux Kernel 6.4
  - Clear interrupt flag (cli) after Halt in the Idle method
  * [AMD]
  - [PHOENIX] Adding Ryzen 7940H, 7840H, 7640H
  - [VERMEER] Adding Ryzen PRO and Embedded processors
  - Ryzen Z1 CPUID' brand fix
  - Adding EPYC Embedded 9004 Series as Genoa
  - Adding EPYC Embedded 7003 Series as Milan
  - Adding EPYC Embedded 7002 Series as Rome
  - Adding EPYC Embedded 7001 Series as Naples</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1685880000">- update to 1.96.2
  * [Driver]
  - Allows compilation to keep going without CONFIG_ACPI_CPPC_LIB
  * [Client]
  - Adding two command line arguments:
  - Op Show Package C-States
  - OW Toggle Energy units
  * [AMD]
  - Specification of some Configuration MSRs</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1686830400">- update to 1.96.4
  * [AMD]
  - Display CPUID state of new and legacy features:
    Fused Multiply Add [FMA4]
    Extended Operation Support [XOP]
    Translation Cache Extension [TCE]
    Trailing Bit Manipulation [TBM]
    OS Visible Work-around [OSVW]
    LOCK prefix to read CR8 [AltMov]
  * [Intel]
  - Advanced Matrix Extensions [AMX]
  - Bits and Features of Sierra Forest and Grand Ridge
  - Attempt to decode the Meteor Lake Memory Controller
- update to 1.96.3
  * [AMD]
  - [Zeppelin] Probe more than one UMC controllers on Ryzen Threadripper 1900X
  - [Zen4] Dump SMBE and BMEC sub-leaves of CPUID 0x80000020</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1688212800">- update to 1.96.5
  * [AMD]
    Adding the "AMD Ryzen 5 5600X3D"
    Introducing the Zen4c Bergamo architecture
    Specs fixing of Embedded V-series and 3000 Series Processors
    Adding MENDOCINO, RAPHAEL Pro, PHOENIX Pro among others</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1712318400">- added preamble file for %kernel_module_package macro
- update to 1.97.1
  * added aarch64 support
  * upstream did not provide a summary changelog. Full list of commits:
    https://github.com/cyring/CoreFreq/compare/1.96.5...1.97.1</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715860800">- update to 1.97.2
  * [AMD]
  - [Hawk Point] Adding Ryzen PRO processors
  - [Phoenix] Adding the unlocked Ryzen 8000 Series
  * [Intel]
  - [MeteorLake] New bits specified
  - EEO and R2H bits inversion fix in MSR_POWER_CTL (0x1fc)
  - Reverse specification of MSR UNCORE_PERF_STATUS
  - Prefetchers fix of L1 Scrubbing, L1 Next Page and L2 AMP
  * [AArch64]
  - Providing Exclusive Load/Store to atomic operations
  - Improved asm of various macro functions
  - Removed LEGACY macros
  - Optimized the CORE_COUNT macros
  - Marked the Tools feature as nominal: Stress functions available
  - Allow user access to Retired Instructions counter
  - Fix Instructions counter overflow
  - Other PMC enhancements
  * [CR]
  - Fix a building issue with AlmaLinux aka RHEL-9
  - Linux kernel 6.9: Avoid redefinition of Intel MSR macros
  * [Doc]
  - README section for AlmaLinux
  - CONFIG_TRIM_UNUSED_KSYMS kernel build config is forbidden</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715947200">- fix dependency on kernel module that was not versioned</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1722081600">- update to 1.98.0
  * [Build]
  - Change dkms configuration to install into /usr/bin/
  - Solved compilation with Fedora using RHEL MINOR version number 99
  - [CR] Fixed some compilation warnings
  - [CR] Fix memory allocation in kernel pages for the SysGate
  - Workaround to musl change in basename (#494)
  - aarch64: Build with Redhat RHEL version 9
  - [CR] x86_64: Prevent array size overflow
  - dkms and ckms configuration files upgraded to version 1.98
  * [Intel]
  - [Raptor Lake] Adding the HB DID of i7-14700K' IMC
  - Mitigation mechanism: GDS_NO; RFDS_NO; MONITOR_MITG_NO
  - Apply some SDM Documentation Changes
  - [MTL] Fix CMD Stretch bit range width
  - Added method CLOCK_FLEX_MAX with Xeon's Nehalem &amp; Core 2
  - Grants full MSR_FLEX_RATIO access to tested architectures:
  - Alder Lake/S
  - Tiger Lake/U
  - Westmere/Gulftown
  - Provides the overclocking bins with unlocked processors
  - Query the Overclocking bit (OC) from Capabilities
  - Adding technologies: VMD, HDCP, IPU and VPU
  - Volume Management Device
  - High-Bandwidth Digital Content Protection
  - Image Processing Unit
  - Vision Processing Unit
  - Gaussian &amp; Neural Accelerator - GNA technology
  - [CR] Renamed Gemini Lake structures
  - [Meteor Lake] Introducing memory controller decoder
  * [AArch64]
  - Optimizing the Vcore seek
  - Workaround to Package discrete voltage: the highest Vcore
  - Improving computation of Euclidean division
  - Adjust frequency division in CNTFRQ and PMU counters
  - Scale a frequency factor from the interval
  - Refactoring the frequency ratios for decimal precision
  - Compile dev_pm_opp_put if Kernel greater or equal 4.11
  - Get the voltage core of CPUs from OPP
  * [AMD]
  - [Zen4][Raphael] Adding the EPYC 4004 Series
  - [Zen4] Clarify Hawk Point and Phoenix-Refresh architectures
  - [Family 19h] New voltage formula assigned to model 61h
  - Vcore activated
  - Voltage SoC deactivated
  - [Zen] Prevent the calculation of negative temperature (issue #496)
  - [Family 18h] Documented Hygon C86 7375
  - [Family 19h] PStateDef specification: Adding VID[8] bit 32
  - Specification of MSR HW_PSTATE_STATUS
  * [CLI]
  - aarch64: Display the state of the Memory Management Unit (MMU)
  - aarch64: State of Instruction Cache Unit I$ and Data Cache Unit D$
  - Added UI_RULER_MINIMUM &amp; UI_RULER_MAXIMUM building constraints
  - Revert "[CLI] Responsive ruler to architectural context"
  - This reverts commit 4bc38d6.
  - x86_64: AMD Boost and P-States redesigned
  - [UI] Hardening missing console/terminal size
  - Responsive ruler to architectural context
  - x86_64: Make HDCP meaning string shorter
  * [Driver]
  - Created C2U_Enable as a parameter alias of C1U_Enable</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1723032000">- update to 1.98.1
  * [AMD]
  - [Zen] Inject threshold events when thermal is out of bounds
  - Generic Zen architectures renamed with their Family number
  - Added a generic entry for the 1A family
  - Configure TjMax for multiple Ryzen and Threadripper
  - [CR] Optimize AMD temperature filtering function
  - [Zen5] Introducing the Eldora architecture aka "Granite Ridge"
  - [Zen5] Adding entries for Strix Point
  * [Intel]
  - Feature-bits of Core Ultra architecture
  - [TGL][ADL][RPL] New devices to probe IMC and Watchdog
  - [Raptor Lake-E] Adding the IMC probing entries
  - Grant full MSR_FLEX_RATIO access to Raptor Lake (06_B7)
  - Added Host Bridge DIDs of Raptor Lake-E
  - [ADL ... MTL] Code review of IMC decoders
  - [ADL] Compute DIMM Bank and Columns on both channels
  - [ADL] Process channels differently depending on DDR4 or DDR5
  - 12th to 14th generation IMC decoder refactoring
  - [ADL ... MTL] Adding Memory Controller Virtual Channel Count
  - [ADL ... MTL] Channel count as a function of DDPCD DDR_TYPE
  - [ADL ... MTL] Keep all enabled memory controllers
  - [12th and superior] Compute tWR quantity as a function of DDR version
  * [Build]
  - Now leave version number in Makefile
  - Pretty print the build and the clean of outputs
    Allow the V=n option increase the verbose level (incl. kernel)
  - CPU-Freq build against Linux Kernel version 6.11
  * [Documentation]
  - Refreshed README and Makefile</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1723464000">- Update to 1.98.2
  * [Intel]
  - [WDT] Adding multiple devices to probe TCO
    C620 Series Chipset Production SKUs (0xa1a3)
    C620 Series Chipset Super SKUs (0xa223)
    Sunrise Point/H (0xa123)
    Cannon Lake/LP (0x9da3)
    Comet Lake/H (0x06a3)
    Ice Lake/LP (0x34a3)
    Tiger Lake/H (0x43a3)
    Elkhart Lake (0x4b23)
    Kaby Lake/H (0xa2a3)
    Cannon Lake (0xa323)
    Comet Lake/V (0xa3a3)
    Ice Lake/NG (0x38a3)
    Alder lake/M (0x54a3)
    Arrow Lake/S (0x7f23)
    Jasper Lake SMBus (0x4da3)
    Sunrise Point-LP SMBus (0x9d23)
    Comet Lake PCH-LP SMBus (0x02a3)
  - MSR_FLEX_RATIO register
    Grant access to Alder Lake/H (06_9A)
    Deny access to Nehalem/Bloomfield (06_1A)
    Removed a condition in access function</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1725019200">- Update to 1.98.3
  * [AMD]
  - [VMR/RPL/GNR] Voltage Curve Optimizer (VCO)
  - Provide a specific VCO formula based on HWM_CHIPSET=AMD_VCO
    build parameter
  - The standard voltage formulas are restored to these architectures
  - Zen5: Guessed a new P-State MSR bits specification to fix the
    Coefficient Of Frequency (COF)</changelog>
</package>
<package pkgid="0ee3a25e42b6df6b93e604cffd3fdd290ce5a81c5f26c25fc056b30abb1a99a86acd29bc7274a62e3ce10a36ec33ee27431dcb73a1a51af4ac62473c83ddbaa9" name="CoreFreq-debugsource" arch="x86_64">
  <version epoch="0" ver="1.98.4" rel="1.11"/>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1670932800">- removed modprobe_corefreqd.service.patch and harden_corefreqd.service.patch
  now included in new corefreqd.service file replacing stock one
- update to 1.93.1
  * [PRJ] CoreFreq version 1.93.1
  * [ACPI/CPPC/EPP] Preview of AMD/Zen Energy Preference (CONFIG_CACHY)
  * [UI] Changed the HWP or CPPC ratio bounds.
  * [FIX] Putting `corefreqd` in the root cgroup (issue #379) Thanks to gel-crabs
  * [DOC] Parameters to blacklist the amd_pstate since kernel 6.0.11
  * [AMD][Zen4] Apply a voltage formula based on Rembrandt's. (#378)
  * [AMD][Zen4/Raphael] Attempting temperature per CCD from TCTL+0x308
  * [AMD][Zen4] Changed Timer loop
  * [CR] CLI code review and UI optimizations
  * [UI] Auto refresh the Topology items when off/online
  * [CR] Conditionally build with additional PMC Counters
  * [Intel] Adding Z8000 System Memory Controller Registers
  * [CR] Transformed global variable in cells padding
  * [UI] Windows re-scaling fix
  * [UI] Apply color theming to the CPPC capabilities list.
  * [AMD][Raphael] Adding device DIDs to probe UMC and IOMMU
  * [CPPC/FMW] Computes value bounds while Enabling/Disabling firmware
  * [CR] CPPC lib errors are now raised to Debug level
  * [AMD][Zen4] Increased the UMC size to 12 channels.
  * [CPPC] Handles the OffLine CPU case.
  * [CLI] Refactoring HWP/CPPC to print all capabilities per CPU
  * [ACPI] Computes the CPPC Bounds
  * [Intel] Linear Address Masking (LAM)
  * [CLI] EFER: Left aligned labels
  * [AMD] Reports UAIE and AIBRSE bits from EFER system register
  * [CLI] Changed mitigation mechanisms incapability labels
  * [AMD][Zen2] Mitigation Mechanism BTC-NOBR * ACPI/OSPM documentation
  * [CR] Code review on bit masks
  * [CPPC][ACPI] Kernel may decode the Guaranteed Performance Register
  * [UI] Optimize the cycles to clear the time bar.
  * [CR] Code review for extra compiler warnings
  * [UI] Time of the day displayed in the right side of menu
  * [UI] Display the current date and time in menu bar
  * [Kernel] Introducing support of `CONFIG_SCHED_BORE`
  * [CLI] Fixing ambiguous CPPC report: hardware vs firmware
  * [CLI] Surrounds _CPC feature with square brackets
  * [CPPC] Provides the ACPI _CPC object state.
  * [UI] Colors the task being tracked in the tracking list
  * [UI] Display the current time in the menu bar
  * [CLI] Reserve the programmable TDP section to Intel processors.
  * [AMD/Zen3+] Improving the DIMM geometry of Rembrandt UMC</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1672747200">- update to 1.94.1:
  * [Intel] Gemini Lake
  * [AMD] Ryzen 5 6600 H SoC, UMC channels
  * [AMD] Rembrandt: maximum of two UMC channels
  * [AMD] Raphael: Decodes DIMM geometry from AddrCfg
  * [AMD] Zen: Aggregation refactored
  * [AMD] Improved DDR5 clock decoding
  * Optimized Idle Loop</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1673006400">- update to 1.94.3:
  * [AMD][RMB] If UMC is quad channels then unpopulate odd channels
  * [AMD][RPL] Provide Service Processor Vcore as workaround
  * [UI] Auto size and lay performance capabilities window
  * [UI] Adding comments to the EEO and R2H technologies
  * [AMD][Raphael] 7950X3D, 7900X3D. support</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1674475200">- update to 1.95.1:
  * [Intel] RPL: voltage of Pcore, Ecore, System Agent
  * [Intel] RPL and ADL Chipset device IDs
  * [Intel] Decode the RPL IMC and improve DDR5 support
  * [Build] Raise `MAX_FREQ_HZ` up to 7125000000 Hertz
  * [Intel] Mobile {Coffee Lake, Kaby Lake} codenames
  * [Intel] Braswell codename detection
  * [AMD] SYSCFG Register
  * [AMD] EPYC 9654
  * [AMD] Transparent SME
  * [AMD] DRAM Data Scrambling
  * [AMD] Adding "Barcelo R" and "Rembrandt R"</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1675944000">- update to 1.95.2:
  * Fixed the aggregation of the minimum ratio
  Intel:
  * [Airmont][Silvermont] Attempt to decode `tCKE` from DRMC
    register
  * [Airmont] Improve `tWTPr`, `B2B`, `tWWDR` timings
  * [Airmont] Provide a new IMC decoder
  * Add the Emerald Rapids architecture entry
  * [DDR5][DDR4] Add the `RCDw` IMC timing
  * [Raptor Lake ] De-activate the MSR Uncore counter
  AMD:
  * "Zen3/Barcelo-R" and "Zen3+ Rembrandt-R" codenames
  * [Zen] Thermal highest limit reset fix
  Misc:
  * Code review and Registers documentation:
    AMD HWCR, Intel HDC and DRP</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677067200">- update to 1.95.4
  * [Intel] [from 11th to 14th gen]
    Convert the DRAM Speed to MT/s unit
    Compute the Bus Rate based on the BIOS MC PLL
- update to 1.95.3
  * [Intel] [Airmont]
    Improved the IMC geometry
    Introducing the Spreadtrum architecture
    Fixed the Bus and DRAM frequency rates
  * [Intel] [from 11th to 13th gen] Attempt to probe the interleaved controllers
  * [Intel] [Alder Lake/H] Attempt to decode the TCO Watchdog</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677153600">- added leap_compile_fix.patch to fix compilation on Leap</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1683115200">- removed leap_compile_fix.patch no needed anymore
- update to 1.96.0
  * [AMD]
    [RPL/X3D] Disabling the turbo boosted P-states change
    [PHOENIX] Adding Z1, U and HS PRO series.
    [Genoa] DAC address at UMC BAR + 0x40
    [Zen4] Adding the PCI entries of Genoa
    [Zen2] Adding remaining PCI entries
    [Zen] Query DAC &amp; CFG with the right UMC base address register
    [Zen4] Dump the CPUID Extended CPU Topology leaves.
    [Zen][Embedded][Banded Kestrel] R1000 Processor Family
    [Zen][Embedded] "Great Horned Owl", "River Hawk", "Grey Hawk"
    Complete the "Raven Ridge" and "Picasso" lists
    [EPYC] Moved "Snowy Owl" Embedded processors to CPUID 8F_01
    [Zen4] introducing Phoenix and Dragon Range
    [RMB] adding the Ryzen Embedded V3000 processors
    [VMR] adding the "AMD Ryzen 9 PRO 5945"
  * [Intel]
    Adding Granite Rapids, Sierra Forest, Grand Ridge entries
    Adding "Lunar Lake" and "Arrow Lake" entries.
  * [UI]
    Optimized decimal to digits converter
    Allow task tracker to select up to pid_max
    Can trace the frozen states of Linux tasks.
    Only print HWP frequencies within bounds.
    Fix ruler's aggregation.
  * [CR]
    Check CPUID[HV_PARTITION_PRIVILEGE_MASK] for HV_X64_MSR_VP_RUNTIME
    Uninitialized variable fix.
    [CPPC] Build EPP with KERNEL_VERSION(6) rather than CONFIG_CACHY
    [KERNEL] Linux 6.3: Employ modifier calls with the vma-&gt;vm_flags</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1684065600">- update to 1.96.1
  * [Driver]
  - Postpone Clock Source registration during startup until the Base Clock is computed.
  - Change class_create() according to Linux Kernel 6.4
  - Clear interrupt flag (cli) after Halt in the Idle method
  * [AMD]
  - [PHOENIX] Adding Ryzen 7940H, 7840H, 7640H
  - [VERMEER] Adding Ryzen PRO and Embedded processors
  - Ryzen Z1 CPUID' brand fix
  - Adding EPYC Embedded 9004 Series as Genoa
  - Adding EPYC Embedded 7003 Series as Milan
  - Adding EPYC Embedded 7002 Series as Rome
  - Adding EPYC Embedded 7001 Series as Naples</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1685880000">- update to 1.96.2
  * [Driver]
  - Allows compilation to keep going without CONFIG_ACPI_CPPC_LIB
  * [Client]
  - Adding two command line arguments:
  - Op Show Package C-States
  - OW Toggle Energy units
  * [AMD]
  - Specification of some Configuration MSRs</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1686830400">- update to 1.96.4
  * [AMD]
  - Display CPUID state of new and legacy features:
    Fused Multiply Add [FMA4]
    Extended Operation Support [XOP]
    Translation Cache Extension [TCE]
    Trailing Bit Manipulation [TBM]
    OS Visible Work-around [OSVW]
    LOCK prefix to read CR8 [AltMov]
  * [Intel]
  - Advanced Matrix Extensions [AMX]
  - Bits and Features of Sierra Forest and Grand Ridge
  - Attempt to decode the Meteor Lake Memory Controller
- update to 1.96.3
  * [AMD]
  - [Zeppelin] Probe more than one UMC controllers on Ryzen Threadripper 1900X
  - [Zen4] Dump SMBE and BMEC sub-leaves of CPUID 0x80000020</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1688212800">- update to 1.96.5
  * [AMD]
    Adding the "AMD Ryzen 5 5600X3D"
    Introducing the Zen4c Bergamo architecture
    Specs fixing of Embedded V-series and 3000 Series Processors
    Adding MENDOCINO, RAPHAEL Pro, PHOENIX Pro among others</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1712318400">- added preamble file for %kernel_module_package macro
- update to 1.97.1
  * added aarch64 support
  * upstream did not provide a summary changelog. Full list of commits:
    https://github.com/cyring/CoreFreq/compare/1.96.5...1.97.1</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715860800">- update to 1.97.2
  * [AMD]
  - [Hawk Point] Adding Ryzen PRO processors
  - [Phoenix] Adding the unlocked Ryzen 8000 Series
  * [Intel]
  - [MeteorLake] New bits specified
  - EEO and R2H bits inversion fix in MSR_POWER_CTL (0x1fc)
  - Reverse specification of MSR UNCORE_PERF_STATUS
  - Prefetchers fix of L1 Scrubbing, L1 Next Page and L2 AMP
  * [AArch64]
  - Providing Exclusive Load/Store to atomic operations
  - Improved asm of various macro functions
  - Removed LEGACY macros
  - Optimized the CORE_COUNT macros
  - Marked the Tools feature as nominal: Stress functions available
  - Allow user access to Retired Instructions counter
  - Fix Instructions counter overflow
  - Other PMC enhancements
  * [CR]
  - Fix a building issue with AlmaLinux aka RHEL-9
  - Linux kernel 6.9: Avoid redefinition of Intel MSR macros
  * [Doc]
  - README section for AlmaLinux
  - CONFIG_TRIM_UNUSED_KSYMS kernel build config is forbidden</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715947200">- fix dependency on kernel module that was not versioned</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1722081600">- update to 1.98.0
  * [Build]
  - Change dkms configuration to install into /usr/bin/
  - Solved compilation with Fedora using RHEL MINOR version number 99
  - [CR] Fixed some compilation warnings
  - [CR] Fix memory allocation in kernel pages for the SysGate
  - Workaround to musl change in basename (#494)
  - aarch64: Build with Redhat RHEL version 9
  - [CR] x86_64: Prevent array size overflow
  - dkms and ckms configuration files upgraded to version 1.98
  * [Intel]
  - [Raptor Lake] Adding the HB DID of i7-14700K' IMC
  - Mitigation mechanism: GDS_NO; RFDS_NO; MONITOR_MITG_NO
  - Apply some SDM Documentation Changes
  - [MTL] Fix CMD Stretch bit range width
  - Added method CLOCK_FLEX_MAX with Xeon's Nehalem &amp; Core 2
  - Grants full MSR_FLEX_RATIO access to tested architectures:
  - Alder Lake/S
  - Tiger Lake/U
  - Westmere/Gulftown
  - Provides the overclocking bins with unlocked processors
  - Query the Overclocking bit (OC) from Capabilities
  - Adding technologies: VMD, HDCP, IPU and VPU
  - Volume Management Device
  - High-Bandwidth Digital Content Protection
  - Image Processing Unit
  - Vision Processing Unit
  - Gaussian &amp; Neural Accelerator - GNA technology
  - [CR] Renamed Gemini Lake structures
  - [Meteor Lake] Introducing memory controller decoder
  * [AArch64]
  - Optimizing the Vcore seek
  - Workaround to Package discrete voltage: the highest Vcore
  - Improving computation of Euclidean division
  - Adjust frequency division in CNTFRQ and PMU counters
  - Scale a frequency factor from the interval
  - Refactoring the frequency ratios for decimal precision
  - Compile dev_pm_opp_put if Kernel greater or equal 4.11
  - Get the voltage core of CPUs from OPP
  * [AMD]
  - [Zen4][Raphael] Adding the EPYC 4004 Series
  - [Zen4] Clarify Hawk Point and Phoenix-Refresh architectures
  - [Family 19h] New voltage formula assigned to model 61h
  - Vcore activated
  - Voltage SoC deactivated
  - [Zen] Prevent the calculation of negative temperature (issue #496)
  - [Family 18h] Documented Hygon C86 7375
  - [Family 19h] PStateDef specification: Adding VID[8] bit 32
  - Specification of MSR HW_PSTATE_STATUS
  * [CLI]
  - aarch64: Display the state of the Memory Management Unit (MMU)
  - aarch64: State of Instruction Cache Unit I$ and Data Cache Unit D$
  - Added UI_RULER_MINIMUM &amp; UI_RULER_MAXIMUM building constraints
  - Revert "[CLI] Responsive ruler to architectural context"
  - This reverts commit 4bc38d6.
  - x86_64: AMD Boost and P-States redesigned
  - [UI] Hardening missing console/terminal size
  - Responsive ruler to architectural context
  - x86_64: Make HDCP meaning string shorter
  * [Driver]
  - Created C2U_Enable as a parameter alias of C1U_Enable</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1723032000">- update to 1.98.1
  * [AMD]
  - [Zen] Inject threshold events when thermal is out of bounds
  - Generic Zen architectures renamed with their Family number
  - Added a generic entry for the 1A family
  - Configure TjMax for multiple Ryzen and Threadripper
  - [CR] Optimize AMD temperature filtering function
  - [Zen5] Introducing the Eldora architecture aka "Granite Ridge"
  - [Zen5] Adding entries for Strix Point
  * [Intel]
  - Feature-bits of Core Ultra architecture
  - [TGL][ADL][RPL] New devices to probe IMC and Watchdog
  - [Raptor Lake-E] Adding the IMC probing entries
  - Grant full MSR_FLEX_RATIO access to Raptor Lake (06_B7)
  - Added Host Bridge DIDs of Raptor Lake-E
  - [ADL ... MTL] Code review of IMC decoders
  - [ADL] Compute DIMM Bank and Columns on both channels
  - [ADL] Process channels differently depending on DDR4 or DDR5
  - 12th to 14th generation IMC decoder refactoring
  - [ADL ... MTL] Adding Memory Controller Virtual Channel Count
  - [ADL ... MTL] Channel count as a function of DDPCD DDR_TYPE
  - [ADL ... MTL] Keep all enabled memory controllers
  - [12th and superior] Compute tWR quantity as a function of DDR version
  * [Build]
  - Now leave version number in Makefile
  - Pretty print the build and the clean of outputs
    Allow the V=n option increase the verbose level (incl. kernel)
  - CPU-Freq build against Linux Kernel version 6.11
  * [Documentation]
  - Refreshed README and Makefile</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1723464000">- Update to 1.98.2
  * [Intel]
  - [WDT] Adding multiple devices to probe TCO
    C620 Series Chipset Production SKUs (0xa1a3)
    C620 Series Chipset Super SKUs (0xa223)
    Sunrise Point/H (0xa123)
    Cannon Lake/LP (0x9da3)
    Comet Lake/H (0x06a3)
    Ice Lake/LP (0x34a3)
    Tiger Lake/H (0x43a3)
    Elkhart Lake (0x4b23)
    Kaby Lake/H (0xa2a3)
    Cannon Lake (0xa323)
    Comet Lake/V (0xa3a3)
    Ice Lake/NG (0x38a3)
    Alder lake/M (0x54a3)
    Arrow Lake/S (0x7f23)
    Jasper Lake SMBus (0x4da3)
    Sunrise Point-LP SMBus (0x9d23)
    Comet Lake PCH-LP SMBus (0x02a3)
  - MSR_FLEX_RATIO register
    Grant access to Alder Lake/H (06_9A)
    Deny access to Nehalem/Bloomfield (06_1A)
    Removed a condition in access function</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1725019200">- Update to 1.98.3
  * [AMD]
  - [VMR/RPL/GNR] Voltage Curve Optimizer (VCO)
  - Provide a specific VCO formula based on HWM_CHIPSET=AMD_VCO
    build parameter
  - The standard voltage formulas are restored to these architectures
  - Zen5: Guessed a new P-State MSR bits specification to fix the
    Coefficient Of Frequency (COF)</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1726833600">- Update to 1.98.4
  * [Build]
  - Prevent a collision with macro WRMSRNS within kernel 6.11
  * [x86_64]
  - [Virtualization] Switch to the HCF or VP_RUNTIME counters depending on the detected hypervisor</changelog>
</package>
<package pkgid="fc2b130af805259bc2a2f7ed5fafeac157754182151cc348550d39e3873b2b1d029102d463f97aac4aa7b867fd624523a160f34a15dc4a4fd44ecb0706c933ea" name="CoreFreq-debugsource" arch="x86_64">
  <version epoch="0" ver="1.98.4" rel="1.4"/>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1670932800">- removed modprobe_corefreqd.service.patch and harden_corefreqd.service.patch
  now included in new corefreqd.service file replacing stock one
- update to 1.93.1
  * [PRJ] CoreFreq version 1.93.1
  * [ACPI/CPPC/EPP] Preview of AMD/Zen Energy Preference (CONFIG_CACHY)
  * [UI] Changed the HWP or CPPC ratio bounds.
  * [FIX] Putting `corefreqd` in the root cgroup (issue #379) Thanks to gel-crabs
  * [DOC] Parameters to blacklist the amd_pstate since kernel 6.0.11
  * [AMD][Zen4] Apply a voltage formula based on Rembrandt's. (#378)
  * [AMD][Zen4/Raphael] Attempting temperature per CCD from TCTL+0x308
  * [AMD][Zen4] Changed Timer loop
  * [CR] CLI code review and UI optimizations
  * [UI] Auto refresh the Topology items when off/online
  * [CR] Conditionally build with additional PMC Counters
  * [Intel] Adding Z8000 System Memory Controller Registers
  * [CR] Transformed global variable in cells padding
  * [UI] Windows re-scaling fix
  * [UI] Apply color theming to the CPPC capabilities list.
  * [AMD][Raphael] Adding device DIDs to probe UMC and IOMMU
  * [CPPC/FMW] Computes value bounds while Enabling/Disabling firmware
  * [CR] CPPC lib errors are now raised to Debug level
  * [AMD][Zen4] Increased the UMC size to 12 channels.
  * [CPPC] Handles the OffLine CPU case.
  * [CLI] Refactoring HWP/CPPC to print all capabilities per CPU
  * [ACPI] Computes the CPPC Bounds
  * [Intel] Linear Address Masking (LAM)
  * [CLI] EFER: Left aligned labels
  * [AMD] Reports UAIE and AIBRSE bits from EFER system register
  * [CLI] Changed mitigation mechanisms incapability labels
  * [AMD][Zen2] Mitigation Mechanism BTC-NOBR * ACPI/OSPM documentation
  * [CR] Code review on bit masks
  * [CPPC][ACPI] Kernel may decode the Guaranteed Performance Register
  * [UI] Optimize the cycles to clear the time bar.
  * [CR] Code review for extra compiler warnings
  * [UI] Time of the day displayed in the right side of menu
  * [UI] Display the current date and time in menu bar
  * [Kernel] Introducing support of `CONFIG_SCHED_BORE`
  * [CLI] Fixing ambiguous CPPC report: hardware vs firmware
  * [CLI] Surrounds _CPC feature with square brackets
  * [CPPC] Provides the ACPI _CPC object state.
  * [UI] Colors the task being tracked in the tracking list
  * [UI] Display the current time in the menu bar
  * [CLI] Reserve the programmable TDP section to Intel processors.
  * [AMD/Zen3+] Improving the DIMM geometry of Rembrandt UMC</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1672747200">- update to 1.94.1:
  * [Intel] Gemini Lake
  * [AMD] Ryzen 5 6600 H SoC, UMC channels
  * [AMD] Rembrandt: maximum of two UMC channels
  * [AMD] Raphael: Decodes DIMM geometry from AddrCfg
  * [AMD] Zen: Aggregation refactored
  * [AMD] Improved DDR5 clock decoding
  * Optimized Idle Loop</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1673006400">- update to 1.94.3:
  * [AMD][RMB] If UMC is quad channels then unpopulate odd channels
  * [AMD][RPL] Provide Service Processor Vcore as workaround
  * [UI] Auto size and lay performance capabilities window
  * [UI] Adding comments to the EEO and R2H technologies
  * [AMD][Raphael] 7950X3D, 7900X3D. support</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1674475200">- update to 1.95.1:
  * [Intel] RPL: voltage of Pcore, Ecore, System Agent
  * [Intel] RPL and ADL Chipset device IDs
  * [Intel] Decode the RPL IMC and improve DDR5 support
  * [Build] Raise `MAX_FREQ_HZ` up to 7125000000 Hertz
  * [Intel] Mobile {Coffee Lake, Kaby Lake} codenames
  * [Intel] Braswell codename detection
  * [AMD] SYSCFG Register
  * [AMD] EPYC 9654
  * [AMD] Transparent SME
  * [AMD] DRAM Data Scrambling
  * [AMD] Adding "Barcelo R" and "Rembrandt R"</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1675944000">- update to 1.95.2:
  * Fixed the aggregation of the minimum ratio
  Intel:
  * [Airmont][Silvermont] Attempt to decode `tCKE` from DRMC
    register
  * [Airmont] Improve `tWTPr`, `B2B`, `tWWDR` timings
  * [Airmont] Provide a new IMC decoder
  * Add the Emerald Rapids architecture entry
  * [DDR5][DDR4] Add the `RCDw` IMC timing
  * [Raptor Lake ] De-activate the MSR Uncore counter
  AMD:
  * "Zen3/Barcelo-R" and "Zen3+ Rembrandt-R" codenames
  * [Zen] Thermal highest limit reset fix
  Misc:
  * Code review and Registers documentation:
    AMD HWCR, Intel HDC and DRP</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677067200">- update to 1.95.4
  * [Intel] [from 11th to 14th gen]
    Convert the DRAM Speed to MT/s unit
    Compute the Bus Rate based on the BIOS MC PLL
- update to 1.95.3
  * [Intel] [Airmont]
    Improved the IMC geometry
    Introducing the Spreadtrum architecture
    Fixed the Bus and DRAM frequency rates
  * [Intel] [from 11th to 13th gen] Attempt to probe the interleaved controllers
  * [Intel] [Alder Lake/H] Attempt to decode the TCO Watchdog</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677153600">- added leap_compile_fix.patch to fix compilation on Leap</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1683115200">- removed leap_compile_fix.patch no needed anymore
- update to 1.96.0
  * [AMD]
    [RPL/X3D] Disabling the turbo boosted P-states change
    [PHOENIX] Adding Z1, U and HS PRO series.
    [Genoa] DAC address at UMC BAR + 0x40
    [Zen4] Adding the PCI entries of Genoa
    [Zen2] Adding remaining PCI entries
    [Zen] Query DAC &amp; CFG with the right UMC base address register
    [Zen4] Dump the CPUID Extended CPU Topology leaves.
    [Zen][Embedded][Banded Kestrel] R1000 Processor Family
    [Zen][Embedded] "Great Horned Owl", "River Hawk", "Grey Hawk"
    Complete the "Raven Ridge" and "Picasso" lists
    [EPYC] Moved "Snowy Owl" Embedded processors to CPUID 8F_01
    [Zen4] introducing Phoenix and Dragon Range
    [RMB] adding the Ryzen Embedded V3000 processors
    [VMR] adding the "AMD Ryzen 9 PRO 5945"
  * [Intel]
    Adding Granite Rapids, Sierra Forest, Grand Ridge entries
    Adding "Lunar Lake" and "Arrow Lake" entries.
  * [UI]
    Optimized decimal to digits converter
    Allow task tracker to select up to pid_max
    Can trace the frozen states of Linux tasks.
    Only print HWP frequencies within bounds.
    Fix ruler's aggregation.
  * [CR]
    Check CPUID[HV_PARTITION_PRIVILEGE_MASK] for HV_X64_MSR_VP_RUNTIME
    Uninitialized variable fix.
    [CPPC] Build EPP with KERNEL_VERSION(6) rather than CONFIG_CACHY
    [KERNEL] Linux 6.3: Employ modifier calls with the vma-&gt;vm_flags</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1684065600">- update to 1.96.1
  * [Driver]
  - Postpone Clock Source registration during startup until the Base Clock is computed.
  - Change class_create() according to Linux Kernel 6.4
  - Clear interrupt flag (cli) after Halt in the Idle method
  * [AMD]
  - [PHOENIX] Adding Ryzen 7940H, 7840H, 7640H
  - [VERMEER] Adding Ryzen PRO and Embedded processors
  - Ryzen Z1 CPUID' brand fix
  - Adding EPYC Embedded 9004 Series as Genoa
  - Adding EPYC Embedded 7003 Series as Milan
  - Adding EPYC Embedded 7002 Series as Rome
  - Adding EPYC Embedded 7001 Series as Naples</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1685880000">- update to 1.96.2
  * [Driver]
  - Allows compilation to keep going without CONFIG_ACPI_CPPC_LIB
  * [Client]
  - Adding two command line arguments:
  - Op Show Package C-States
  - OW Toggle Energy units
  * [AMD]
  - Specification of some Configuration MSRs</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1686830400">- update to 1.96.4
  * [AMD]
  - Display CPUID state of new and legacy features:
    Fused Multiply Add [FMA4]
    Extended Operation Support [XOP]
    Translation Cache Extension [TCE]
    Trailing Bit Manipulation [TBM]
    OS Visible Work-around [OSVW]
    LOCK prefix to read CR8 [AltMov]
  * [Intel]
  - Advanced Matrix Extensions [AMX]
  - Bits and Features of Sierra Forest and Grand Ridge
  - Attempt to decode the Meteor Lake Memory Controller
- update to 1.96.3
  * [AMD]
  - [Zeppelin] Probe more than one UMC controllers on Ryzen Threadripper 1900X
  - [Zen4] Dump SMBE and BMEC sub-leaves of CPUID 0x80000020</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1688212800">- update to 1.96.5
  * [AMD]
    Adding the "AMD Ryzen 5 5600X3D"
    Introducing the Zen4c Bergamo architecture
    Specs fixing of Embedded V-series and 3000 Series Processors
    Adding MENDOCINO, RAPHAEL Pro, PHOENIX Pro among others</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1712318400">- added preamble file for %kernel_module_package macro
- update to 1.97.1
  * added aarch64 support
  * upstream did not provide a summary changelog. Full list of commits:
    https://github.com/cyring/CoreFreq/compare/1.96.5...1.97.1</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715860800">- update to 1.97.2
  * [AMD]
  - [Hawk Point] Adding Ryzen PRO processors
  - [Phoenix] Adding the unlocked Ryzen 8000 Series
  * [Intel]
  - [MeteorLake] New bits specified
  - EEO and R2H bits inversion fix in MSR_POWER_CTL (0x1fc)
  - Reverse specification of MSR UNCORE_PERF_STATUS
  - Prefetchers fix of L1 Scrubbing, L1 Next Page and L2 AMP
  * [AArch64]
  - Providing Exclusive Load/Store to atomic operations
  - Improved asm of various macro functions
  - Removed LEGACY macros
  - Optimized the CORE_COUNT macros
  - Marked the Tools feature as nominal: Stress functions available
  - Allow user access to Retired Instructions counter
  - Fix Instructions counter overflow
  - Other PMC enhancements
  * [CR]
  - Fix a building issue with AlmaLinux aka RHEL-9
  - Linux kernel 6.9: Avoid redefinition of Intel MSR macros
  * [Doc]
  - README section for AlmaLinux
  - CONFIG_TRIM_UNUSED_KSYMS kernel build config is forbidden</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715947200">- fix dependency on kernel module that was not versioned</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1722081600">- update to 1.98.0
  * [Build]
  - Change dkms configuration to install into /usr/bin/
  - Solved compilation with Fedora using RHEL MINOR version number 99
  - [CR] Fixed some compilation warnings
  - [CR] Fix memory allocation in kernel pages for the SysGate
  - Workaround to musl change in basename (#494)
  - aarch64: Build with Redhat RHEL version 9
  - [CR] x86_64: Prevent array size overflow
  - dkms and ckms configuration files upgraded to version 1.98
  * [Intel]
  - [Raptor Lake] Adding the HB DID of i7-14700K' IMC
  - Mitigation mechanism: GDS_NO; RFDS_NO; MONITOR_MITG_NO
  - Apply some SDM Documentation Changes
  - [MTL] Fix CMD Stretch bit range width
  - Added method CLOCK_FLEX_MAX with Xeon's Nehalem &amp; Core 2
  - Grants full MSR_FLEX_RATIO access to tested architectures:
  - Alder Lake/S
  - Tiger Lake/U
  - Westmere/Gulftown
  - Provides the overclocking bins with unlocked processors
  - Query the Overclocking bit (OC) from Capabilities
  - Adding technologies: VMD, HDCP, IPU and VPU
  - Volume Management Device
  - High-Bandwidth Digital Content Protection
  - Image Processing Unit
  - Vision Processing Unit
  - Gaussian &amp; Neural Accelerator - GNA technology
  - [CR] Renamed Gemini Lake structures
  - [Meteor Lake] Introducing memory controller decoder
  * [AArch64]
  - Optimizing the Vcore seek
  - Workaround to Package discrete voltage: the highest Vcore
  - Improving computation of Euclidean division
  - Adjust frequency division in CNTFRQ and PMU counters
  - Scale a frequency factor from the interval
  - Refactoring the frequency ratios for decimal precision
  - Compile dev_pm_opp_put if Kernel greater or equal 4.11
  - Get the voltage core of CPUs from OPP
  * [AMD]
  - [Zen4][Raphael] Adding the EPYC 4004 Series
  - [Zen4] Clarify Hawk Point and Phoenix-Refresh architectures
  - [Family 19h] New voltage formula assigned to model 61h
  - Vcore activated
  - Voltage SoC deactivated
  - [Zen] Prevent the calculation of negative temperature (issue #496)
  - [Family 18h] Documented Hygon C86 7375
  - [Family 19h] PStateDef specification: Adding VID[8] bit 32
  - Specification of MSR HW_PSTATE_STATUS
  * [CLI]
  - aarch64: Display the state of the Memory Management Unit (MMU)
  - aarch64: State of Instruction Cache Unit I$ and Data Cache Unit D$
  - Added UI_RULER_MINIMUM &amp; UI_RULER_MAXIMUM building constraints
  - Revert "[CLI] Responsive ruler to architectural context"
  - This reverts commit 4bc38d6.
  - x86_64: AMD Boost and P-States redesigned
  - [UI] Hardening missing console/terminal size
  - Responsive ruler to architectural context
  - x86_64: Make HDCP meaning string shorter
  * [Driver]
  - Created C2U_Enable as a parameter alias of C1U_Enable</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1723032000">- update to 1.98.1
  * [AMD]
  - [Zen] Inject threshold events when thermal is out of bounds
  - Generic Zen architectures renamed with their Family number
  - Added a generic entry for the 1A family
  - Configure TjMax for multiple Ryzen and Threadripper
  - [CR] Optimize AMD temperature filtering function
  - [Zen5] Introducing the Eldora architecture aka "Granite Ridge"
  - [Zen5] Adding entries for Strix Point
  * [Intel]
  - Feature-bits of Core Ultra architecture
  - [TGL][ADL][RPL] New devices to probe IMC and Watchdog
  - [Raptor Lake-E] Adding the IMC probing entries
  - Grant full MSR_FLEX_RATIO access to Raptor Lake (06_B7)
  - Added Host Bridge DIDs of Raptor Lake-E
  - [ADL ... MTL] Code review of IMC decoders
  - [ADL] Compute DIMM Bank and Columns on both channels
  - [ADL] Process channels differently depending on DDR4 or DDR5
  - 12th to 14th generation IMC decoder refactoring
  - [ADL ... MTL] Adding Memory Controller Virtual Channel Count
  - [ADL ... MTL] Channel count as a function of DDPCD DDR_TYPE
  - [ADL ... MTL] Keep all enabled memory controllers
  - [12th and superior] Compute tWR quantity as a function of DDR version
  * [Build]
  - Now leave version number in Makefile
  - Pretty print the build and the clean of outputs
    Allow the V=n option increase the verbose level (incl. kernel)
  - CPU-Freq build against Linux Kernel version 6.11
  * [Documentation]
  - Refreshed README and Makefile</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1723464000">- Update to 1.98.2
  * [Intel]
  - [WDT] Adding multiple devices to probe TCO
    C620 Series Chipset Production SKUs (0xa1a3)
    C620 Series Chipset Super SKUs (0xa223)
    Sunrise Point/H (0xa123)
    Cannon Lake/LP (0x9da3)
    Comet Lake/H (0x06a3)
    Ice Lake/LP (0x34a3)
    Tiger Lake/H (0x43a3)
    Elkhart Lake (0x4b23)
    Kaby Lake/H (0xa2a3)
    Cannon Lake (0xa323)
    Comet Lake/V (0xa3a3)
    Ice Lake/NG (0x38a3)
    Alder lake/M (0x54a3)
    Arrow Lake/S (0x7f23)
    Jasper Lake SMBus (0x4da3)
    Sunrise Point-LP SMBus (0x9d23)
    Comet Lake PCH-LP SMBus (0x02a3)
  - MSR_FLEX_RATIO register
    Grant access to Alder Lake/H (06_9A)
    Deny access to Nehalem/Bloomfield (06_1A)
    Removed a condition in access function</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1725019200">- Update to 1.98.3
  * [AMD]
  - [VMR/RPL/GNR] Voltage Curve Optimizer (VCO)
  - Provide a specific VCO formula based on HWM_CHIPSET=AMD_VCO
    build parameter
  - The standard voltage formulas are restored to these architectures
  - Zen5: Guessed a new P-State MSR bits specification to fix the
    Coefficient Of Frequency (COF)</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1726833600">- Update to 1.98.4
  * [Build]
  - Prevent a collision with macro WRMSRNS within kernel 6.11
  * [x86_64]
  - [Virtualization] Switch to the HCF or VP_RUNTIME counters depending on the detected hypervisor</changelog>
</package>
<package pkgid="1c4fe7012ce78c35405f6d3603f90dae17bf69aedbb7f1c7ac307e05db3c947c1a3868233e8c4952152c99255867c5bc8ffffbac58bdaf54f17ee1b53daeca7c" name="CoreFreq-debugsource" arch="x86_64">
  <version epoch="0" ver="1.98.4" rel="1.8"/>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1670932800">- removed modprobe_corefreqd.service.patch and harden_corefreqd.service.patch
  now included in new corefreqd.service file replacing stock one
- update to 1.93.1
  * [PRJ] CoreFreq version 1.93.1
  * [ACPI/CPPC/EPP] Preview of AMD/Zen Energy Preference (CONFIG_CACHY)
  * [UI] Changed the HWP or CPPC ratio bounds.
  * [FIX] Putting `corefreqd` in the root cgroup (issue #379) Thanks to gel-crabs
  * [DOC] Parameters to blacklist the amd_pstate since kernel 6.0.11
  * [AMD][Zen4] Apply a voltage formula based on Rembrandt's. (#378)
  * [AMD][Zen4/Raphael] Attempting temperature per CCD from TCTL+0x308
  * [AMD][Zen4] Changed Timer loop
  * [CR] CLI code review and UI optimizations
  * [UI] Auto refresh the Topology items when off/online
  * [CR] Conditionally build with additional PMC Counters
  * [Intel] Adding Z8000 System Memory Controller Registers
  * [CR] Transformed global variable in cells padding
  * [UI] Windows re-scaling fix
  * [UI] Apply color theming to the CPPC capabilities list.
  * [AMD][Raphael] Adding device DIDs to probe UMC and IOMMU
  * [CPPC/FMW] Computes value bounds while Enabling/Disabling firmware
  * [CR] CPPC lib errors are now raised to Debug level
  * [AMD][Zen4] Increased the UMC size to 12 channels.
  * [CPPC] Handles the OffLine CPU case.
  * [CLI] Refactoring HWP/CPPC to print all capabilities per CPU
  * [ACPI] Computes the CPPC Bounds
  * [Intel] Linear Address Masking (LAM)
  * [CLI] EFER: Left aligned labels
  * [AMD] Reports UAIE and AIBRSE bits from EFER system register
  * [CLI] Changed mitigation mechanisms incapability labels
  * [AMD][Zen2] Mitigation Mechanism BTC-NOBR * ACPI/OSPM documentation
  * [CR] Code review on bit masks
  * [CPPC][ACPI] Kernel may decode the Guaranteed Performance Register
  * [UI] Optimize the cycles to clear the time bar.
  * [CR] Code review for extra compiler warnings
  * [UI] Time of the day displayed in the right side of menu
  * [UI] Display the current date and time in menu bar
  * [Kernel] Introducing support of `CONFIG_SCHED_BORE`
  * [CLI] Fixing ambiguous CPPC report: hardware vs firmware
  * [CLI] Surrounds _CPC feature with square brackets
  * [CPPC] Provides the ACPI _CPC object state.
  * [UI] Colors the task being tracked in the tracking list
  * [UI] Display the current time in the menu bar
  * [CLI] Reserve the programmable TDP section to Intel processors.
  * [AMD/Zen3+] Improving the DIMM geometry of Rembrandt UMC</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1672747200">- update to 1.94.1:
  * [Intel] Gemini Lake
  * [AMD] Ryzen 5 6600 H SoC, UMC channels
  * [AMD] Rembrandt: maximum of two UMC channels
  * [AMD] Raphael: Decodes DIMM geometry from AddrCfg
  * [AMD] Zen: Aggregation refactored
  * [AMD] Improved DDR5 clock decoding
  * Optimized Idle Loop</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1673006400">- update to 1.94.3:
  * [AMD][RMB] If UMC is quad channels then unpopulate odd channels
  * [AMD][RPL] Provide Service Processor Vcore as workaround
  * [UI] Auto size and lay performance capabilities window
  * [UI] Adding comments to the EEO and R2H technologies
  * [AMD][Raphael] 7950X3D, 7900X3D. support</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1674475200">- update to 1.95.1:
  * [Intel] RPL: voltage of Pcore, Ecore, System Agent
  * [Intel] RPL and ADL Chipset device IDs
  * [Intel] Decode the RPL IMC and improve DDR5 support
  * [Build] Raise `MAX_FREQ_HZ` up to 7125000000 Hertz
  * [Intel] Mobile {Coffee Lake, Kaby Lake} codenames
  * [Intel] Braswell codename detection
  * [AMD] SYSCFG Register
  * [AMD] EPYC 9654
  * [AMD] Transparent SME
  * [AMD] DRAM Data Scrambling
  * [AMD] Adding "Barcelo R" and "Rembrandt R"</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1675944000">- update to 1.95.2:
  * Fixed the aggregation of the minimum ratio
  Intel:
  * [Airmont][Silvermont] Attempt to decode `tCKE` from DRMC
    register
  * [Airmont] Improve `tWTPr`, `B2B`, `tWWDR` timings
  * [Airmont] Provide a new IMC decoder
  * Add the Emerald Rapids architecture entry
  * [DDR5][DDR4] Add the `RCDw` IMC timing
  * [Raptor Lake ] De-activate the MSR Uncore counter
  AMD:
  * "Zen3/Barcelo-R" and "Zen3+ Rembrandt-R" codenames
  * [Zen] Thermal highest limit reset fix
  Misc:
  * Code review and Registers documentation:
    AMD HWCR, Intel HDC and DRP</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677067200">- update to 1.95.4
  * [Intel] [from 11th to 14th gen]
    Convert the DRAM Speed to MT/s unit
    Compute the Bus Rate based on the BIOS MC PLL
- update to 1.95.3
  * [Intel] [Airmont]
    Improved the IMC geometry
    Introducing the Spreadtrum architecture
    Fixed the Bus and DRAM frequency rates
  * [Intel] [from 11th to 13th gen] Attempt to probe the interleaved controllers
  * [Intel] [Alder Lake/H] Attempt to decode the TCO Watchdog</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677153600">- added leap_compile_fix.patch to fix compilation on Leap</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1683115200">- removed leap_compile_fix.patch no needed anymore
- update to 1.96.0
  * [AMD]
    [RPL/X3D] Disabling the turbo boosted P-states change
    [PHOENIX] Adding Z1, U and HS PRO series.
    [Genoa] DAC address at UMC BAR + 0x40
    [Zen4] Adding the PCI entries of Genoa
    [Zen2] Adding remaining PCI entries
    [Zen] Query DAC &amp; CFG with the right UMC base address register
    [Zen4] Dump the CPUID Extended CPU Topology leaves.
    [Zen][Embedded][Banded Kestrel] R1000 Processor Family
    [Zen][Embedded] "Great Horned Owl", "River Hawk", "Grey Hawk"
    Complete the "Raven Ridge" and "Picasso" lists
    [EPYC] Moved "Snowy Owl" Embedded processors to CPUID 8F_01
    [Zen4] introducing Phoenix and Dragon Range
    [RMB] adding the Ryzen Embedded V3000 processors
    [VMR] adding the "AMD Ryzen 9 PRO 5945"
  * [Intel]
    Adding Granite Rapids, Sierra Forest, Grand Ridge entries
    Adding "Lunar Lake" and "Arrow Lake" entries.
  * [UI]
    Optimized decimal to digits converter
    Allow task tracker to select up to pid_max
    Can trace the frozen states of Linux tasks.
    Only print HWP frequencies within bounds.
    Fix ruler's aggregation.
  * [CR]
    Check CPUID[HV_PARTITION_PRIVILEGE_MASK] for HV_X64_MSR_VP_RUNTIME
    Uninitialized variable fix.
    [CPPC] Build EPP with KERNEL_VERSION(6) rather than CONFIG_CACHY
    [KERNEL] Linux 6.3: Employ modifier calls with the vma-&gt;vm_flags</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1684065600">- update to 1.96.1
  * [Driver]
  - Postpone Clock Source registration during startup until the Base Clock is computed.
  - Change class_create() according to Linux Kernel 6.4
  - Clear interrupt flag (cli) after Halt in the Idle method
  * [AMD]
  - [PHOENIX] Adding Ryzen 7940H, 7840H, 7640H
  - [VERMEER] Adding Ryzen PRO and Embedded processors
  - Ryzen Z1 CPUID' brand fix
  - Adding EPYC Embedded 9004 Series as Genoa
  - Adding EPYC Embedded 7003 Series as Milan
  - Adding EPYC Embedded 7002 Series as Rome
  - Adding EPYC Embedded 7001 Series as Naples</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1685880000">- update to 1.96.2
  * [Driver]
  - Allows compilation to keep going without CONFIG_ACPI_CPPC_LIB
  * [Client]
  - Adding two command line arguments:
  - Op Show Package C-States
  - OW Toggle Energy units
  * [AMD]
  - Specification of some Configuration MSRs</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1686830400">- update to 1.96.4
  * [AMD]
  - Display CPUID state of new and legacy features:
    Fused Multiply Add [FMA4]
    Extended Operation Support [XOP]
    Translation Cache Extension [TCE]
    Trailing Bit Manipulation [TBM]
    OS Visible Work-around [OSVW]
    LOCK prefix to read CR8 [AltMov]
  * [Intel]
  - Advanced Matrix Extensions [AMX]
  - Bits and Features of Sierra Forest and Grand Ridge
  - Attempt to decode the Meteor Lake Memory Controller
- update to 1.96.3
  * [AMD]
  - [Zeppelin] Probe more than one UMC controllers on Ryzen Threadripper 1900X
  - [Zen4] Dump SMBE and BMEC sub-leaves of CPUID 0x80000020</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1688212800">- update to 1.96.5
  * [AMD]
    Adding the "AMD Ryzen 5 5600X3D"
    Introducing the Zen4c Bergamo architecture
    Specs fixing of Embedded V-series and 3000 Series Processors
    Adding MENDOCINO, RAPHAEL Pro, PHOENIX Pro among others</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1712318400">- added preamble file for %kernel_module_package macro
- update to 1.97.1
  * added aarch64 support
  * upstream did not provide a summary changelog. Full list of commits:
    https://github.com/cyring/CoreFreq/compare/1.96.5...1.97.1</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715860800">- update to 1.97.2
  * [AMD]
  - [Hawk Point] Adding Ryzen PRO processors
  - [Phoenix] Adding the unlocked Ryzen 8000 Series
  * [Intel]
  - [MeteorLake] New bits specified
  - EEO and R2H bits inversion fix in MSR_POWER_CTL (0x1fc)
  - Reverse specification of MSR UNCORE_PERF_STATUS
  - Prefetchers fix of L1 Scrubbing, L1 Next Page and L2 AMP
  * [AArch64]
  - Providing Exclusive Load/Store to atomic operations
  - Improved asm of various macro functions
  - Removed LEGACY macros
  - Optimized the CORE_COUNT macros
  - Marked the Tools feature as nominal: Stress functions available
  - Allow user access to Retired Instructions counter
  - Fix Instructions counter overflow
  - Other PMC enhancements
  * [CR]
  - Fix a building issue with AlmaLinux aka RHEL-9
  - Linux kernel 6.9: Avoid redefinition of Intel MSR macros
  * [Doc]
  - README section for AlmaLinux
  - CONFIG_TRIM_UNUSED_KSYMS kernel build config is forbidden</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715947200">- fix dependency on kernel module that was not versioned</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1722081600">- update to 1.98.0
  * [Build]
  - Change dkms configuration to install into /usr/bin/
  - Solved compilation with Fedora using RHEL MINOR version number 99
  - [CR] Fixed some compilation warnings
  - [CR] Fix memory allocation in kernel pages for the SysGate
  - Workaround to musl change in basename (#494)
  - aarch64: Build with Redhat RHEL version 9
  - [CR] x86_64: Prevent array size overflow
  - dkms and ckms configuration files upgraded to version 1.98
  * [Intel]
  - [Raptor Lake] Adding the HB DID of i7-14700K' IMC
  - Mitigation mechanism: GDS_NO; RFDS_NO; MONITOR_MITG_NO
  - Apply some SDM Documentation Changes
  - [MTL] Fix CMD Stretch bit range width
  - Added method CLOCK_FLEX_MAX with Xeon's Nehalem &amp; Core 2
  - Grants full MSR_FLEX_RATIO access to tested architectures:
  - Alder Lake/S
  - Tiger Lake/U
  - Westmere/Gulftown
  - Provides the overclocking bins with unlocked processors
  - Query the Overclocking bit (OC) from Capabilities
  - Adding technologies: VMD, HDCP, IPU and VPU
  - Volume Management Device
  - High-Bandwidth Digital Content Protection
  - Image Processing Unit
  - Vision Processing Unit
  - Gaussian &amp; Neural Accelerator - GNA technology
  - [CR] Renamed Gemini Lake structures
  - [Meteor Lake] Introducing memory controller decoder
  * [AArch64]
  - Optimizing the Vcore seek
  - Workaround to Package discrete voltage: the highest Vcore
  - Improving computation of Euclidean division
  - Adjust frequency division in CNTFRQ and PMU counters
  - Scale a frequency factor from the interval
  - Refactoring the frequency ratios for decimal precision
  - Compile dev_pm_opp_put if Kernel greater or equal 4.11
  - Get the voltage core of CPUs from OPP
  * [AMD]
  - [Zen4][Raphael] Adding the EPYC 4004 Series
  - [Zen4] Clarify Hawk Point and Phoenix-Refresh architectures
  - [Family 19h] New voltage formula assigned to model 61h
  - Vcore activated
  - Voltage SoC deactivated
  - [Zen] Prevent the calculation of negative temperature (issue #496)
  - [Family 18h] Documented Hygon C86 7375
  - [Family 19h] PStateDef specification: Adding VID[8] bit 32
  - Specification of MSR HW_PSTATE_STATUS
  * [CLI]
  - aarch64: Display the state of the Memory Management Unit (MMU)
  - aarch64: State of Instruction Cache Unit I$ and Data Cache Unit D$
  - Added UI_RULER_MINIMUM &amp; UI_RULER_MAXIMUM building constraints
  - Revert "[CLI] Responsive ruler to architectural context"
  - This reverts commit 4bc38d6.
  - x86_64: AMD Boost and P-States redesigned
  - [UI] Hardening missing console/terminal size
  - Responsive ruler to architectural context
  - x86_64: Make HDCP meaning string shorter
  * [Driver]
  - Created C2U_Enable as a parameter alias of C1U_Enable</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1723032000">- update to 1.98.1
  * [AMD]
  - [Zen] Inject threshold events when thermal is out of bounds
  - Generic Zen architectures renamed with their Family number
  - Added a generic entry for the 1A family
  - Configure TjMax for multiple Ryzen and Threadripper
  - [CR] Optimize AMD temperature filtering function
  - [Zen5] Introducing the Eldora architecture aka "Granite Ridge"
  - [Zen5] Adding entries for Strix Point
  * [Intel]
  - Feature-bits of Core Ultra architecture
  - [TGL][ADL][RPL] New devices to probe IMC and Watchdog
  - [Raptor Lake-E] Adding the IMC probing entries
  - Grant full MSR_FLEX_RATIO access to Raptor Lake (06_B7)
  - Added Host Bridge DIDs of Raptor Lake-E
  - [ADL ... MTL] Code review of IMC decoders
  - [ADL] Compute DIMM Bank and Columns on both channels
  - [ADL] Process channels differently depending on DDR4 or DDR5
  - 12th to 14th generation IMC decoder refactoring
  - [ADL ... MTL] Adding Memory Controller Virtual Channel Count
  - [ADL ... MTL] Channel count as a function of DDPCD DDR_TYPE
  - [ADL ... MTL] Keep all enabled memory controllers
  - [12th and superior] Compute tWR quantity as a function of DDR version
  * [Build]
  - Now leave version number in Makefile
  - Pretty print the build and the clean of outputs
    Allow the V=n option increase the verbose level (incl. kernel)
  - CPU-Freq build against Linux Kernel version 6.11
  * [Documentation]
  - Refreshed README and Makefile</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1723464000">- Update to 1.98.2
  * [Intel]
  - [WDT] Adding multiple devices to probe TCO
    C620 Series Chipset Production SKUs (0xa1a3)
    C620 Series Chipset Super SKUs (0xa223)
    Sunrise Point/H (0xa123)
    Cannon Lake/LP (0x9da3)
    Comet Lake/H (0x06a3)
    Ice Lake/LP (0x34a3)
    Tiger Lake/H (0x43a3)
    Elkhart Lake (0x4b23)
    Kaby Lake/H (0xa2a3)
    Cannon Lake (0xa323)
    Comet Lake/V (0xa3a3)
    Ice Lake/NG (0x38a3)
    Alder lake/M (0x54a3)
    Arrow Lake/S (0x7f23)
    Jasper Lake SMBus (0x4da3)
    Sunrise Point-LP SMBus (0x9d23)
    Comet Lake PCH-LP SMBus (0x02a3)
  - MSR_FLEX_RATIO register
    Grant access to Alder Lake/H (06_9A)
    Deny access to Nehalem/Bloomfield (06_1A)
    Removed a condition in access function</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1725019200">- Update to 1.98.3
  * [AMD]
  - [VMR/RPL/GNR] Voltage Curve Optimizer (VCO)
  - Provide a specific VCO formula based on HWM_CHIPSET=AMD_VCO
    build parameter
  - The standard voltage formulas are restored to these architectures
  - Zen5: Guessed a new P-State MSR bits specification to fix the
    Coefficient Of Frequency (COF)</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1726833600">- Update to 1.98.4
  * [Build]
  - Prevent a collision with macro WRMSRNS within kernel 6.11
  * [x86_64]
  - [Virtualization] Switch to the HCF or VP_RUNTIME counters depending on the detected hypervisor</changelog>
</package>
<package pkgid="1893702cc8d1b6d96e73946d45511b4e80c207f67cf61b4fee5a7d26d5a5cd2e2b201d71675002ac1472671b141a550c7c179179737b143681dd90be2d91758e" name="CoreFreq-debugsource" arch="x86_64">
  <version epoch="0" ver="1.98.5" rel="1.3"/>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1672747200">- update to 1.94.1:
  * [Intel] Gemini Lake
  * [AMD] Ryzen 5 6600 H SoC, UMC channels
  * [AMD] Rembrandt: maximum of two UMC channels
  * [AMD] Raphael: Decodes DIMM geometry from AddrCfg
  * [AMD] Zen: Aggregation refactored
  * [AMD] Improved DDR5 clock decoding
  * Optimized Idle Loop</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1673006400">- update to 1.94.3:
  * [AMD][RMB] If UMC is quad channels then unpopulate odd channels
  * [AMD][RPL] Provide Service Processor Vcore as workaround
  * [UI] Auto size and lay performance capabilities window
  * [UI] Adding comments to the EEO and R2H technologies
  * [AMD][Raphael] 7950X3D, 7900X3D. support</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1674475200">- update to 1.95.1:
  * [Intel] RPL: voltage of Pcore, Ecore, System Agent
  * [Intel] RPL and ADL Chipset device IDs
  * [Intel] Decode the RPL IMC and improve DDR5 support
  * [Build] Raise `MAX_FREQ_HZ` up to 7125000000 Hertz
  * [Intel] Mobile {Coffee Lake, Kaby Lake} codenames
  * [Intel] Braswell codename detection
  * [AMD] SYSCFG Register
  * [AMD] EPYC 9654
  * [AMD] Transparent SME
  * [AMD] DRAM Data Scrambling
  * [AMD] Adding "Barcelo R" and "Rembrandt R"</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1675944000">- update to 1.95.2:
  * Fixed the aggregation of the minimum ratio
  Intel:
  * [Airmont][Silvermont] Attempt to decode `tCKE` from DRMC
    register
  * [Airmont] Improve `tWTPr`, `B2B`, `tWWDR` timings
  * [Airmont] Provide a new IMC decoder
  * Add the Emerald Rapids architecture entry
  * [DDR5][DDR4] Add the `RCDw` IMC timing
  * [Raptor Lake ] De-activate the MSR Uncore counter
  AMD:
  * "Zen3/Barcelo-R" and "Zen3+ Rembrandt-R" codenames
  * [Zen] Thermal highest limit reset fix
  Misc:
  * Code review and Registers documentation:
    AMD HWCR, Intel HDC and DRP</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677067200">- update to 1.95.4
  * [Intel] [from 11th to 14th gen]
    Convert the DRAM Speed to MT/s unit
    Compute the Bus Rate based on the BIOS MC PLL
- update to 1.95.3
  * [Intel] [Airmont]
    Improved the IMC geometry
    Introducing the Spreadtrum architecture
    Fixed the Bus and DRAM frequency rates
  * [Intel] [from 11th to 13th gen] Attempt to probe the interleaved controllers
  * [Intel] [Alder Lake/H] Attempt to decode the TCO Watchdog</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677153600">- added leap_compile_fix.patch to fix compilation on Leap</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1683115200">- removed leap_compile_fix.patch no needed anymore
- update to 1.96.0
  * [AMD]
    [RPL/X3D] Disabling the turbo boosted P-states change
    [PHOENIX] Adding Z1, U and HS PRO series.
    [Genoa] DAC address at UMC BAR + 0x40
    [Zen4] Adding the PCI entries of Genoa
    [Zen2] Adding remaining PCI entries
    [Zen] Query DAC &amp; CFG with the right UMC base address register
    [Zen4] Dump the CPUID Extended CPU Topology leaves.
    [Zen][Embedded][Banded Kestrel] R1000 Processor Family
    [Zen][Embedded] "Great Horned Owl", "River Hawk", "Grey Hawk"
    Complete the "Raven Ridge" and "Picasso" lists
    [EPYC] Moved "Snowy Owl" Embedded processors to CPUID 8F_01
    [Zen4] introducing Phoenix and Dragon Range
    [RMB] adding the Ryzen Embedded V3000 processors
    [VMR] adding the "AMD Ryzen 9 PRO 5945"
  * [Intel]
    Adding Granite Rapids, Sierra Forest, Grand Ridge entries
    Adding "Lunar Lake" and "Arrow Lake" entries.
  * [UI]
    Optimized decimal to digits converter
    Allow task tracker to select up to pid_max
    Can trace the frozen states of Linux tasks.
    Only print HWP frequencies within bounds.
    Fix ruler's aggregation.
  * [CR]
    Check CPUID[HV_PARTITION_PRIVILEGE_MASK] for HV_X64_MSR_VP_RUNTIME
    Uninitialized variable fix.
    [CPPC] Build EPP with KERNEL_VERSION(6) rather than CONFIG_CACHY
    [KERNEL] Linux 6.3: Employ modifier calls with the vma-&gt;vm_flags</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1684065600">- update to 1.96.1
  * [Driver]
  - Postpone Clock Source registration during startup until the Base Clock is computed.
  - Change class_create() according to Linux Kernel 6.4
  - Clear interrupt flag (cli) after Halt in the Idle method
  * [AMD]
  - [PHOENIX] Adding Ryzen 7940H, 7840H, 7640H
  - [VERMEER] Adding Ryzen PRO and Embedded processors
  - Ryzen Z1 CPUID' brand fix
  - Adding EPYC Embedded 9004 Series as Genoa
  - Adding EPYC Embedded 7003 Series as Milan
  - Adding EPYC Embedded 7002 Series as Rome
  - Adding EPYC Embedded 7001 Series as Naples</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1685880000">- update to 1.96.2
  * [Driver]
  - Allows compilation to keep going without CONFIG_ACPI_CPPC_LIB
  * [Client]
  - Adding two command line arguments:
  - Op Show Package C-States
  - OW Toggle Energy units
  * [AMD]
  - Specification of some Configuration MSRs</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1686830400">- update to 1.96.4
  * [AMD]
  - Display CPUID state of new and legacy features:
    Fused Multiply Add [FMA4]
    Extended Operation Support [XOP]
    Translation Cache Extension [TCE]
    Trailing Bit Manipulation [TBM]
    OS Visible Work-around [OSVW]
    LOCK prefix to read CR8 [AltMov]
  * [Intel]
  - Advanced Matrix Extensions [AMX]
  - Bits and Features of Sierra Forest and Grand Ridge
  - Attempt to decode the Meteor Lake Memory Controller
- update to 1.96.3
  * [AMD]
  - [Zeppelin] Probe more than one UMC controllers on Ryzen Threadripper 1900X
  - [Zen4] Dump SMBE and BMEC sub-leaves of CPUID 0x80000020</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1688212800">- update to 1.96.5
  * [AMD]
    Adding the "AMD Ryzen 5 5600X3D"
    Introducing the Zen4c Bergamo architecture
    Specs fixing of Embedded V-series and 3000 Series Processors
    Adding MENDOCINO, RAPHAEL Pro, PHOENIX Pro among others</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1712318400">- added preamble file for %kernel_module_package macro
- update to 1.97.1
  * added aarch64 support
  * upstream did not provide a summary changelog. Full list of commits:
    https://github.com/cyring/CoreFreq/compare/1.96.5...1.97.1</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715860800">- update to 1.97.2
  * [AMD]
  - [Hawk Point] Adding Ryzen PRO processors
  - [Phoenix] Adding the unlocked Ryzen 8000 Series
  * [Intel]
  - [MeteorLake] New bits specified
  - EEO and R2H bits inversion fix in MSR_POWER_CTL (0x1fc)
  - Reverse specification of MSR UNCORE_PERF_STATUS
  - Prefetchers fix of L1 Scrubbing, L1 Next Page and L2 AMP
  * [AArch64]
  - Providing Exclusive Load/Store to atomic operations
  - Improved asm of various macro functions
  - Removed LEGACY macros
  - Optimized the CORE_COUNT macros
  - Marked the Tools feature as nominal: Stress functions available
  - Allow user access to Retired Instructions counter
  - Fix Instructions counter overflow
  - Other PMC enhancements
  * [CR]
  - Fix a building issue with AlmaLinux aka RHEL-9
  - Linux kernel 6.9: Avoid redefinition of Intel MSR macros
  * [Doc]
  - README section for AlmaLinux
  - CONFIG_TRIM_UNUSED_KSYMS kernel build config is forbidden</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715947200">- fix dependency on kernel module that was not versioned</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1722081600">- update to 1.98.0
  * [Build]
  - Change dkms configuration to install into /usr/bin/
  - Solved compilation with Fedora using RHEL MINOR version number 99
  - [CR] Fixed some compilation warnings
  - [CR] Fix memory allocation in kernel pages for the SysGate
  - Workaround to musl change in basename (#494)
  - aarch64: Build with Redhat RHEL version 9
  - [CR] x86_64: Prevent array size overflow
  - dkms and ckms configuration files upgraded to version 1.98
  * [Intel]
  - [Raptor Lake] Adding the HB DID of i7-14700K' IMC
  - Mitigation mechanism: GDS_NO; RFDS_NO; MONITOR_MITG_NO
  - Apply some SDM Documentation Changes
  - [MTL] Fix CMD Stretch bit range width
  - Added method CLOCK_FLEX_MAX with Xeon's Nehalem &amp; Core 2
  - Grants full MSR_FLEX_RATIO access to tested architectures:
  - Alder Lake/S
  - Tiger Lake/U
  - Westmere/Gulftown
  - Provides the overclocking bins with unlocked processors
  - Query the Overclocking bit (OC) from Capabilities
  - Adding technologies: VMD, HDCP, IPU and VPU
  - Volume Management Device
  - High-Bandwidth Digital Content Protection
  - Image Processing Unit
  - Vision Processing Unit
  - Gaussian &amp; Neural Accelerator - GNA technology
  - [CR] Renamed Gemini Lake structures
  - [Meteor Lake] Introducing memory controller decoder
  * [AArch64]
  - Optimizing the Vcore seek
  - Workaround to Package discrete voltage: the highest Vcore
  - Improving computation of Euclidean division
  - Adjust frequency division in CNTFRQ and PMU counters
  - Scale a frequency factor from the interval
  - Refactoring the frequency ratios for decimal precision
  - Compile dev_pm_opp_put if Kernel greater or equal 4.11
  - Get the voltage core of CPUs from OPP
  * [AMD]
  - [Zen4][Raphael] Adding the EPYC 4004 Series
  - [Zen4] Clarify Hawk Point and Phoenix-Refresh architectures
  - [Family 19h] New voltage formula assigned to model 61h
  - Vcore activated
  - Voltage SoC deactivated
  - [Zen] Prevent the calculation of negative temperature (issue #496)
  - [Family 18h] Documented Hygon C86 7375
  - [Family 19h] PStateDef specification: Adding VID[8] bit 32
  - Specification of MSR HW_PSTATE_STATUS
  * [CLI]
  - aarch64: Display the state of the Memory Management Unit (MMU)
  - aarch64: State of Instruction Cache Unit I$ and Data Cache Unit D$
  - Added UI_RULER_MINIMUM &amp; UI_RULER_MAXIMUM building constraints
  - Revert "[CLI] Responsive ruler to architectural context"
  - This reverts commit 4bc38d6.
  - x86_64: AMD Boost and P-States redesigned
  - [UI] Hardening missing console/terminal size
  - Responsive ruler to architectural context
  - x86_64: Make HDCP meaning string shorter
  * [Driver]
  - Created C2U_Enable as a parameter alias of C1U_Enable</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1723032000">- update to 1.98.1
  * [AMD]
  - [Zen] Inject threshold events when thermal is out of bounds
  - Generic Zen architectures renamed with their Family number
  - Added a generic entry for the 1A family
  - Configure TjMax for multiple Ryzen and Threadripper
  - [CR] Optimize AMD temperature filtering function
  - [Zen5] Introducing the Eldora architecture aka "Granite Ridge"
  - [Zen5] Adding entries for Strix Point
  * [Intel]
  - Feature-bits of Core Ultra architecture
  - [TGL][ADL][RPL] New devices to probe IMC and Watchdog
  - [Raptor Lake-E] Adding the IMC probing entries
  - Grant full MSR_FLEX_RATIO access to Raptor Lake (06_B7)
  - Added Host Bridge DIDs of Raptor Lake-E
  - [ADL ... MTL] Code review of IMC decoders
  - [ADL] Compute DIMM Bank and Columns on both channels
  - [ADL] Process channels differently depending on DDR4 or DDR5
  - 12th to 14th generation IMC decoder refactoring
  - [ADL ... MTL] Adding Memory Controller Virtual Channel Count
  - [ADL ... MTL] Channel count as a function of DDPCD DDR_TYPE
  - [ADL ... MTL] Keep all enabled memory controllers
  - [12th and superior] Compute tWR quantity as a function of DDR version
  * [Build]
  - Now leave version number in Makefile
  - Pretty print the build and the clean of outputs
    Allow the V=n option increase the verbose level (incl. kernel)
  - CPU-Freq build against Linux Kernel version 6.11
  * [Documentation]
  - Refreshed README and Makefile</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1723464000">- Update to 1.98.2
  * [Intel]
  - [WDT] Adding multiple devices to probe TCO
    C620 Series Chipset Production SKUs (0xa1a3)
    C620 Series Chipset Super SKUs (0xa223)
    Sunrise Point/H (0xa123)
    Cannon Lake/LP (0x9da3)
    Comet Lake/H (0x06a3)
    Ice Lake/LP (0x34a3)
    Tiger Lake/H (0x43a3)
    Elkhart Lake (0x4b23)
    Kaby Lake/H (0xa2a3)
    Cannon Lake (0xa323)
    Comet Lake/V (0xa3a3)
    Ice Lake/NG (0x38a3)
    Alder lake/M (0x54a3)
    Arrow Lake/S (0x7f23)
    Jasper Lake SMBus (0x4da3)
    Sunrise Point-LP SMBus (0x9d23)
    Comet Lake PCH-LP SMBus (0x02a3)
  - MSR_FLEX_RATIO register
    Grant access to Alder Lake/H (06_9A)
    Deny access to Nehalem/Bloomfield (06_1A)
    Removed a condition in access function</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1725019200">- Update to 1.98.3
  * [AMD]
  - [VMR/RPL/GNR] Voltage Curve Optimizer (VCO)
  - Provide a specific VCO formula based on HWM_CHIPSET=AMD_VCO
    build parameter
  - The standard voltage formulas are restored to these architectures
  - Zen5: Guessed a new P-State MSR bits specification to fix the
    Coefficient Of Frequency (COF)</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1726833600">- Update to 1.98.4
  * [Build]
  - Prevent a collision with macro WRMSRNS within kernel 6.11
  * [x86_64]
  - [Virtualization] Switch to the HCF or VP_RUNTIME counters depending on the detected hypervisor</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1731067200">- Update to 1.98.5
  * [UI]
  - Debugging a target clock ratio selector issue
  * [Build]
  - Makefile compliant with the -s silent option
  - [CI] Disable the unfound arm64v8/ubuntu:rolling
  * [AMD]
  - [Strix Point] Adding PRO series
  - [Zen5][Zen5c] Introducing the TURIN architecture
  - Supply a fallback thermal junction max to various Zen series
  - [Zen5] Mitigation mechanisms and Features bits
    SBPB,
    SRSO_NO,
    SRSO_USR_KNL_NO,
    ERMSB,
    FSRS,
    FSRC_CMPSB,
    PREFETCHI
  - [Zen] Added remaining X3D processor models
  - [PHOENIX2] Added the unlocked for overclocking Ryzen 5 8500GE
  - [PHOENIX2] Added the unlocked for overclocking Ryzen 3 8300GE
  - [SIENA] Added the EPYC Embedded 8004 Series
  - [GENOA] Added a left over EPYC Embedded 9534
  - [Turin] Employed the Genoa UMC decoder
  - [Family 1Ah] Updated the PStateDef MSR
  - [Zen] Completed CPUID leaf 0x80000021 from PPR 57238
  - [Zen5/Granite Ridge] Added Ryzen 7 9800X3D processor
  * [Intel]
  - [ARL] Declare PCI ids to probe the IMC as a MTL controller
  - [ARL][IMC] DDR5: tWR = tWRPRE - tCWL - 10
  - [ADL-X/ADL-N] Declare PCI ids to probe the memory controller
  - [LNL] Added PCI ids to probe any IMC and SMBUS
  - [ARL] Completed with SMBUS PCI id
  - [MTL-M] Declare PCI ids to probe the IMC and TCO
  - [MTL-M] Set PCI ids into Daemon
  - [RPL] Added remaining PX and H processor line platforms</changelog>
</package>
<package pkgid="47b299f940de2cedad8fd7baa4c34445b23d01fe144156ac4d449951208927816fe863e8a83252f96cdad098b9f06ca489ee87a325acdfc8a19ddc54926a5191" name="CoreFreq-kmp-default" arch="x86_64">
  <version epoch="0" ver="1.97.1_k6.8.5_1" rel="1.2"/>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1644667200">- Update to version 1.89.3
  * No changelog was made available by upstream</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1646654400">- removed non-working leap15_2.patch and leap15_3.patch:
  Leap 15.4 is the minimum supported version
- Update to version 1.90.1
  * support for Alder Lake architecture:
    in particular, specialized monitoring for Pcore and Ecore
  * more precise DDR5 and DDR4 timings from SKL to ADL:
    introduction of "Gear mode"
  * improvement using Power Limiters:
    zero W on PL1 &amp; PL2; DRAM clampig marked experimental
  * characteristics for Zen architecture:
    CPPC; C1E; MEM CLOCK in raw frequency
  * C-state Core for Ice Lake/X
  * various characteristics of C-state package for AMD/Zen and Intel (Lake)
  * various changes in UI
  * non-regression tests for kernels 5.16.12 and 5.17.rc6</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1655899200">- Update to version 1.91.3
  * No changelog was made available by upstream</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1661169600">- Update to version 1.91.6
  - [AMD/Zen][UMC] Fixed the Mem Clock and ECC regressions
  - Designate the Package identifier in Power consumed readings
  - [Intel/ADL/IMC] Guessing activated channel from the populated DIMM
  - [AMD][UMC, IOMMU] Adding missing DID of family 19h devices
  - [AMD_DataFabric_Cezanne] Removed the Experimental mode
  - Intel/ADL/IMC: Fixing the Memory Channels count
  - [AMD/Zen] Improved UMC mapping. Threadripper 3960X issue
  - Avoid some NULL pointer strings during SMBIOS decoding</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1667563200">- update to version 1.92.3
  - Export CPUID bits Intel Sierra Forest, Grand Ridge, Granite Rapids
    and completes AMD64 Fn0000_0007_ECX_x0
  - [Features] WBNOINVD and CLZERO instructions
  - Adding various Mitigation Mechanism aggregations:
    IPRED_DIS_U, IPRED_DIS_S, RRSBA_DIS_U, RRSBA_DIS_S, BHI_DIS_S, MCDT_NO
  - RDPID and UMIP capability fixed.
  - [AMD] Perf. Mon. version based on CPUID_0x80000022.EAX.PerfMonV2
  - [AMD][Zen3+][Rembrandt] Trigger UMC and IOMMU decoders
  - [AMD][Ryzen 5 6600H] Found voltage VID @ SMU 0x6f010 and 0x6f014
  - Introducing AMD Security Feature capabilities:
    SKINIT, SEV, GMET, SEV-ES, SEV-SNP
  - [AMD64] Non-architectural MSR: SPECULATIVE STORE BYPASS DISABLE
  - [Intel][2nd &amp; 3rd gen] Misc IMC optimizations
  - [AMD][Rembrandt] Provides Vcore from a new formula.
  - Dumping CPUID leaves from AMD64 Architecture Programmer’s Manual
  - [Intel][HSW &amp; BDW] Compute the DIMM banks
  - [UI] Re-assigned keys to move or resize windows.
  - [AMD][Zen] Uncore frequency: Improving the Memory Clock divisor
  - [Intel][HSW &amp; BDW][SKL] Make use of same function DimmWidthToRows
  - [AMD][Zen3+][Rembrandt] Provides the thermal sensor.
  - [AMD/Zen2 &amp; Zen3] Removed the HSMP capability.
  - [Intel][CML][RKL][TGL] Compute the DIMM Rows from CH_WIDTH
  - [AMD/EPYC] Adding the CPUID of Zen4 Genoa architecture
  - [AMD/Zen2] Introducing Mendocino architecture
  - Changed MeteorLake/N to CPUID 06_B5
  - [Intel] Computes BIOS DRAM frequency based on PLL_REF100
  - [Intel][SNB/IVB/HSW/BDW] Improved BIOS DRAM frequency
  - [Intel][SNB/IVB] DRAM frequency based on RAM_Select and FSB_Select
  - [Intel][IVB] IMC specifications and optimizations.
  - [Intel][SNB,IVB] Computes the DIMM A from DAS bit in MAD register
  - [Intel][SNB,IVB,HSW,BDW] Rolling back changes to the DIMM topology
  - [Intel][BDW][HSW] Query the IMC Power Down Mode
  - [Intel][IVB][SNB] Attempt to decode the IMC third timings
  - [AMD][Ryzen] Added AMD Ryzen 7 PRO 6860Z
  - [AMD][F17h-F19h] Can toggle ON and OFF the Instruction Cache Unit
  - [AMD] Checking the Ryzen "OEM Only" processors
  - [Intel] Specification of 12th Gen. MSR registers capability
  - [Intel] Adding Raptor Lake-S with CPUID 06_BF
  - [AMD] Introducing Zen 4 / Raphael architecture
  - [Intel][SNB,IVB,HSW] Attempt to assign the Rank per DIMM slot
  - [Intel][SNB,IVB,HSW] Attempt to fix the DIMM(s) topology layout
  - ClockSource: TSC udelay() asm implementation builtin as a default
  - [Intel][Alder Lake] Adding IMC entry for i5-12500 processor
  - [Intel][Alder Lake] Added default case if Processor has only Pcores
  - [Intel][Atom/Bonnell][IMC] Attempt to compute the DIMM geometry
  - [UI][Custom view] Show the Uncore unit in watt or joule
  - [UI] Display HWP or CPPC in footer for capable processors.
  - [CLI] Added HWP Capabilities and HWP Request to the JSON export
  - [CLI] Don't allow the HWP dialog box if feature is not available.
  - [CPPC][Firmware] allows (de)activation of the feature.
  - [CLI] Added CPU ratios to JSON export
  - [CPPC] Improved scaling
  - [CPPC] Build fixed down to Kernel version 3
  - [Kernel/ACPI] Attempt to write CPPC registers</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1667563201">- Repair deficient description grammar.</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1670241600">- update to 1.92.4:
  * [Intel/Skylake-X] Permits MSR_RING_PERF_LIMIT_REASONS</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1670932800">- removed modprobe_corefreqd.service.patch and harden_corefreqd.service.patch
  now included in new corefreqd.service file replacing stock one
- update to 1.93.1
  * [PRJ] CoreFreq version 1.93.1
  * [ACPI/CPPC/EPP] Preview of AMD/Zen Energy Preference (CONFIG_CACHY)
  * [UI] Changed the HWP or CPPC ratio bounds.
  * [FIX] Putting `corefreqd` in the root cgroup (issue #379) Thanks to gel-crabs
  * [DOC] Parameters to blacklist the amd_pstate since kernel 6.0.11
  * [AMD][Zen4] Apply a voltage formula based on Rembrandt's. (#378)
  * [AMD][Zen4/Raphael] Attempting temperature per CCD from TCTL+0x308
  * [AMD][Zen4] Changed Timer loop
  * [CR] CLI code review and UI optimizations
  * [UI] Auto refresh the Topology items when off/online
  * [CR] Conditionally build with additional PMC Counters
  * [Intel] Adding Z8000 System Memory Controller Registers
  * [CR] Transformed global variable in cells padding
  * [UI] Windows re-scaling fix
  * [UI] Apply color theming to the CPPC capabilities list.
  * [AMD][Raphael] Adding device DIDs to probe UMC and IOMMU
  * [CPPC/FMW] Computes value bounds while Enabling/Disabling firmware
  * [CR] CPPC lib errors are now raised to Debug level
  * [AMD][Zen4] Increased the UMC size to 12 channels.
  * [CPPC] Handles the OffLine CPU case.
  * [CLI] Refactoring HWP/CPPC to print all capabilities per CPU
  * [ACPI] Computes the CPPC Bounds
  * [Intel] Linear Address Masking (LAM)
  * [CLI] EFER: Left aligned labels
  * [AMD] Reports UAIE and AIBRSE bits from EFER system register
  * [CLI] Changed mitigation mechanisms incapability labels
  * [AMD][Zen2] Mitigation Mechanism BTC-NOBR * ACPI/OSPM documentation
  * [CR] Code review on bit masks
  * [CPPC][ACPI] Kernel may decode the Guaranteed Performance Register
  * [UI] Optimize the cycles to clear the time bar.
  * [CR] Code review for extra compiler warnings
  * [UI] Time of the day displayed in the right side of menu
  * [UI] Display the current date and time in menu bar
  * [Kernel] Introducing support of `CONFIG_SCHED_BORE`
  * [CLI] Fixing ambiguous CPPC report: hardware vs firmware
  * [CLI] Surrounds _CPC feature with square brackets
  * [CPPC] Provides the ACPI _CPC object state.
  * [UI] Colors the task being tracked in the tracking list
  * [UI] Display the current time in the menu bar
  * [CLI] Reserve the programmable TDP section to Intel processors.
  * [AMD/Zen3+] Improving the DIMM geometry of Rembrandt UMC</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1672747200">- update to 1.94.1:
  * [Intel] Gemini Lake
  * [AMD] Ryzen 5 6600 H SoC, UMC channels
  * [AMD] Rembrandt: maximum of two UMC channels
  * [AMD] Raphael: Decodes DIMM geometry from AddrCfg
  * [AMD] Zen: Aggregation refactored
  * [AMD] Improved DDR5 clock decoding
  * Optimized Idle Loop</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1673006400">- update to 1.94.3:
  * [AMD][RMB] If UMC is quad channels then unpopulate odd channels
  * [AMD][RPL] Provide Service Processor Vcore as workaround
  * [UI] Auto size and lay performance capabilities window
  * [UI] Adding comments to the EEO and R2H technologies
  * [AMD][Raphael] 7950X3D, 7900X3D. support</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1674475200">- update to 1.95.1:
  * [Intel] RPL: voltage of Pcore, Ecore, System Agent
  * [Intel] RPL and ADL Chipset device IDs
  * [Intel] Decode the RPL IMC and improve DDR5 support
  * [Build] Raise `MAX_FREQ_HZ` up to 7125000000 Hertz
  * [Intel] Mobile {Coffee Lake, Kaby Lake} codenames
  * [Intel] Braswell codename detection
  * [AMD] SYSCFG Register
  * [AMD] EPYC 9654
  * [AMD] Transparent SME
  * [AMD] DRAM Data Scrambling
  * [AMD] Adding "Barcelo R" and "Rembrandt R"</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1675944000">- update to 1.95.2:
  * Fixed the aggregation of the minimum ratio
  Intel:
  * [Airmont][Silvermont] Attempt to decode `tCKE` from DRMC
    register
  * [Airmont] Improve `tWTPr`, `B2B`, `tWWDR` timings
  * [Airmont] Provide a new IMC decoder
  * Add the Emerald Rapids architecture entry
  * [DDR5][DDR4] Add the `RCDw` IMC timing
  * [Raptor Lake ] De-activate the MSR Uncore counter
  AMD:
  * "Zen3/Barcelo-R" and "Zen3+ Rembrandt-R" codenames
  * [Zen] Thermal highest limit reset fix
  Misc:
  * Code review and Registers documentation:
    AMD HWCR, Intel HDC and DRP</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677067200">- update to 1.95.4
  * [Intel] [from 11th to 14th gen]
    Convert the DRAM Speed to MT/s unit
    Compute the Bus Rate based on the BIOS MC PLL
- update to 1.95.3
  * [Intel] [Airmont]
    Improved the IMC geometry
    Introducing the Spreadtrum architecture
    Fixed the Bus and DRAM frequency rates
  * [Intel] [from 11th to 13th gen] Attempt to probe the interleaved controllers
  * [Intel] [Alder Lake/H] Attempt to decode the TCO Watchdog</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677153600">- added leap_compile_fix.patch to fix compilation on Leap</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1683115200">- removed leap_compile_fix.patch no needed anymore
- update to 1.96.0
  * [AMD]
    [RPL/X3D] Disabling the turbo boosted P-states change
    [PHOENIX] Adding Z1, U and HS PRO series.
    [Genoa] DAC address at UMC BAR + 0x40
    [Zen4] Adding the PCI entries of Genoa
    [Zen2] Adding remaining PCI entries
    [Zen] Query DAC &amp; CFG with the right UMC base address register
    [Zen4] Dump the CPUID Extended CPU Topology leaves.
    [Zen][Embedded][Banded Kestrel] R1000 Processor Family
    [Zen][Embedded] "Great Horned Owl", "River Hawk", "Grey Hawk"
    Complete the "Raven Ridge" and "Picasso" lists
    [EPYC] Moved "Snowy Owl" Embedded processors to CPUID 8F_01
    [Zen4] introducing Phoenix and Dragon Range
    [RMB] adding the Ryzen Embedded V3000 processors
    [VMR] adding the "AMD Ryzen 9 PRO 5945"
  * [Intel]
    Adding Granite Rapids, Sierra Forest, Grand Ridge entries
    Adding "Lunar Lake" and "Arrow Lake" entries.
  * [UI]
    Optimized decimal to digits converter
    Allow task tracker to select up to pid_max
    Can trace the frozen states of Linux tasks.
    Only print HWP frequencies within bounds.
    Fix ruler's aggregation.
  * [CR]
    Check CPUID[HV_PARTITION_PRIVILEGE_MASK] for HV_X64_MSR_VP_RUNTIME
    Uninitialized variable fix.
    [CPPC] Build EPP with KERNEL_VERSION(6) rather than CONFIG_CACHY
    [KERNEL] Linux 6.3: Employ modifier calls with the vma-&gt;vm_flags</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1684065600">- update to 1.96.1
  * [Driver]
  - Postpone Clock Source registration during startup until the Base Clock is computed.
  - Change class_create() according to Linux Kernel 6.4
  - Clear interrupt flag (cli) after Halt in the Idle method
  * [AMD]
  - [PHOENIX] Adding Ryzen 7940H, 7840H, 7640H
  - [VERMEER] Adding Ryzen PRO and Embedded processors
  - Ryzen Z1 CPUID' brand fix
  - Adding EPYC Embedded 9004 Series as Genoa
  - Adding EPYC Embedded 7003 Series as Milan
  - Adding EPYC Embedded 7002 Series as Rome
  - Adding EPYC Embedded 7001 Series as Naples</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1685880000">- update to 1.96.2
  * [Driver]
  - Allows compilation to keep going without CONFIG_ACPI_CPPC_LIB
  * [Client]
  - Adding two command line arguments:
  - Op Show Package C-States
  - OW Toggle Energy units
  * [AMD]
  - Specification of some Configuration MSRs</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1686830400">- update to 1.96.4
  * [AMD]
  - Display CPUID state of new and legacy features:
    Fused Multiply Add [FMA4]
    Extended Operation Support [XOP]
    Translation Cache Extension [TCE]
    Trailing Bit Manipulation [TBM]
    OS Visible Work-around [OSVW]
    LOCK prefix to read CR8 [AltMov]
  * [Intel]
  - Advanced Matrix Extensions [AMX]
  - Bits and Features of Sierra Forest and Grand Ridge
  - Attempt to decode the Meteor Lake Memory Controller
- update to 1.96.3
  * [AMD]
  - [Zeppelin] Probe more than one UMC controllers on Ryzen Threadripper 1900X
  - [Zen4] Dump SMBE and BMEC sub-leaves of CPUID 0x80000020</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1688212800">- update to 1.96.5
  * [AMD]
    Adding the "AMD Ryzen 5 5600X3D"
    Introducing the Zen4c Bergamo architecture
    Specs fixing of Embedded V-series and 3000 Series Processors
    Adding MENDOCINO, RAPHAEL Pro, PHOENIX Pro among others</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1712318400">- added preamble file for %kernel_module_package macro
- update to 1.97.1
  * added aarch64 support
  * upstream did not provide a summary changelog. Full list of commits:
    https://github.com/cyring/CoreFreq/compare/1.96.5...1.97.1</changelog>
</package>
<package pkgid="6c9d01ce9899bf95435e887d21c06edf5e4cc1abd1cf75ae320c8e06d270cfd9add59442230d88b90a5b0fa0412dc67afe5ff409b6c9f60b187d31a702217937" name="CoreFreq-kmp-default" arch="x86_64">
  <version epoch="0" ver="1.97.1_k6.8.6_1" rel="1.3"/>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1644667200">- Update to version 1.89.3
  * No changelog was made available by upstream</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1646654400">- removed non-working leap15_2.patch and leap15_3.patch:
  Leap 15.4 is the minimum supported version
- Update to version 1.90.1
  * support for Alder Lake architecture:
    in particular, specialized monitoring for Pcore and Ecore
  * more precise DDR5 and DDR4 timings from SKL to ADL:
    introduction of "Gear mode"
  * improvement using Power Limiters:
    zero W on PL1 &amp; PL2; DRAM clampig marked experimental
  * characteristics for Zen architecture:
    CPPC; C1E; MEM CLOCK in raw frequency
  * C-state Core for Ice Lake/X
  * various characteristics of C-state package for AMD/Zen and Intel (Lake)
  * various changes in UI
  * non-regression tests for kernels 5.16.12 and 5.17.rc6</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1655899200">- Update to version 1.91.3
  * No changelog was made available by upstream</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1661169600">- Update to version 1.91.6
  - [AMD/Zen][UMC] Fixed the Mem Clock and ECC regressions
  - Designate the Package identifier in Power consumed readings
  - [Intel/ADL/IMC] Guessing activated channel from the populated DIMM
  - [AMD][UMC, IOMMU] Adding missing DID of family 19h devices
  - [AMD_DataFabric_Cezanne] Removed the Experimental mode
  - Intel/ADL/IMC: Fixing the Memory Channels count
  - [AMD/Zen] Improved UMC mapping. Threadripper 3960X issue
  - Avoid some NULL pointer strings during SMBIOS decoding</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1667563200">- update to version 1.92.3
  - Export CPUID bits Intel Sierra Forest, Grand Ridge, Granite Rapids
    and completes AMD64 Fn0000_0007_ECX_x0
  - [Features] WBNOINVD and CLZERO instructions
  - Adding various Mitigation Mechanism aggregations:
    IPRED_DIS_U, IPRED_DIS_S, RRSBA_DIS_U, RRSBA_DIS_S, BHI_DIS_S, MCDT_NO
  - RDPID and UMIP capability fixed.
  - [AMD] Perf. Mon. version based on CPUID_0x80000022.EAX.PerfMonV2
  - [AMD][Zen3+][Rembrandt] Trigger UMC and IOMMU decoders
  - [AMD][Ryzen 5 6600H] Found voltage VID @ SMU 0x6f010 and 0x6f014
  - Introducing AMD Security Feature capabilities:
    SKINIT, SEV, GMET, SEV-ES, SEV-SNP
  - [AMD64] Non-architectural MSR: SPECULATIVE STORE BYPASS DISABLE
  - [Intel][2nd &amp; 3rd gen] Misc IMC optimizations
  - [AMD][Rembrandt] Provides Vcore from a new formula.
  - Dumping CPUID leaves from AMD64 Architecture Programmer’s Manual
  - [Intel][HSW &amp; BDW] Compute the DIMM banks
  - [UI] Re-assigned keys to move or resize windows.
  - [AMD][Zen] Uncore frequency: Improving the Memory Clock divisor
  - [Intel][HSW &amp; BDW][SKL] Make use of same function DimmWidthToRows
  - [AMD][Zen3+][Rembrandt] Provides the thermal sensor.
  - [AMD/Zen2 &amp; Zen3] Removed the HSMP capability.
  - [Intel][CML][RKL][TGL] Compute the DIMM Rows from CH_WIDTH
  - [AMD/EPYC] Adding the CPUID of Zen4 Genoa architecture
  - [AMD/Zen2] Introducing Mendocino architecture
  - Changed MeteorLake/N to CPUID 06_B5
  - [Intel] Computes BIOS DRAM frequency based on PLL_REF100
  - [Intel][SNB/IVB/HSW/BDW] Improved BIOS DRAM frequency
  - [Intel][SNB/IVB] DRAM frequency based on RAM_Select and FSB_Select
  - [Intel][IVB] IMC specifications and optimizations.
  - [Intel][SNB,IVB] Computes the DIMM A from DAS bit in MAD register
  - [Intel][SNB,IVB,HSW,BDW] Rolling back changes to the DIMM topology
  - [Intel][BDW][HSW] Query the IMC Power Down Mode
  - [Intel][IVB][SNB] Attempt to decode the IMC third timings
  - [AMD][Ryzen] Added AMD Ryzen 7 PRO 6860Z
  - [AMD][F17h-F19h] Can toggle ON and OFF the Instruction Cache Unit
  - [AMD] Checking the Ryzen "OEM Only" processors
  - [Intel] Specification of 12th Gen. MSR registers capability
  - [Intel] Adding Raptor Lake-S with CPUID 06_BF
  - [AMD] Introducing Zen 4 / Raphael architecture
  - [Intel][SNB,IVB,HSW] Attempt to assign the Rank per DIMM slot
  - [Intel][SNB,IVB,HSW] Attempt to fix the DIMM(s) topology layout
  - ClockSource: TSC udelay() asm implementation builtin as a default
  - [Intel][Alder Lake] Adding IMC entry for i5-12500 processor
  - [Intel][Alder Lake] Added default case if Processor has only Pcores
  - [Intel][Atom/Bonnell][IMC] Attempt to compute the DIMM geometry
  - [UI][Custom view] Show the Uncore unit in watt or joule
  - [UI] Display HWP or CPPC in footer for capable processors.
  - [CLI] Added HWP Capabilities and HWP Request to the JSON export
  - [CLI] Don't allow the HWP dialog box if feature is not available.
  - [CPPC][Firmware] allows (de)activation of the feature.
  - [CLI] Added CPU ratios to JSON export
  - [CPPC] Improved scaling
  - [CPPC] Build fixed down to Kernel version 3
  - [Kernel/ACPI] Attempt to write CPPC registers</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1667563201">- Repair deficient description grammar.</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1670241600">- update to 1.92.4:
  * [Intel/Skylake-X] Permits MSR_RING_PERF_LIMIT_REASONS</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1670932800">- removed modprobe_corefreqd.service.patch and harden_corefreqd.service.patch
  now included in new corefreqd.service file replacing stock one
- update to 1.93.1
  * [PRJ] CoreFreq version 1.93.1
  * [ACPI/CPPC/EPP] Preview of AMD/Zen Energy Preference (CONFIG_CACHY)
  * [UI] Changed the HWP or CPPC ratio bounds.
  * [FIX] Putting `corefreqd` in the root cgroup (issue #379) Thanks to gel-crabs
  * [DOC] Parameters to blacklist the amd_pstate since kernel 6.0.11
  * [AMD][Zen4] Apply a voltage formula based on Rembrandt's. (#378)
  * [AMD][Zen4/Raphael] Attempting temperature per CCD from TCTL+0x308
  * [AMD][Zen4] Changed Timer loop
  * [CR] CLI code review and UI optimizations
  * [UI] Auto refresh the Topology items when off/online
  * [CR] Conditionally build with additional PMC Counters
  * [Intel] Adding Z8000 System Memory Controller Registers
  * [CR] Transformed global variable in cells padding
  * [UI] Windows re-scaling fix
  * [UI] Apply color theming to the CPPC capabilities list.
  * [AMD][Raphael] Adding device DIDs to probe UMC and IOMMU
  * [CPPC/FMW] Computes value bounds while Enabling/Disabling firmware
  * [CR] CPPC lib errors are now raised to Debug level
  * [AMD][Zen4] Increased the UMC size to 12 channels.
  * [CPPC] Handles the OffLine CPU case.
  * [CLI] Refactoring HWP/CPPC to print all capabilities per CPU
  * [ACPI] Computes the CPPC Bounds
  * [Intel] Linear Address Masking (LAM)
  * [CLI] EFER: Left aligned labels
  * [AMD] Reports UAIE and AIBRSE bits from EFER system register
  * [CLI] Changed mitigation mechanisms incapability labels
  * [AMD][Zen2] Mitigation Mechanism BTC-NOBR * ACPI/OSPM documentation
  * [CR] Code review on bit masks
  * [CPPC][ACPI] Kernel may decode the Guaranteed Performance Register
  * [UI] Optimize the cycles to clear the time bar.
  * [CR] Code review for extra compiler warnings
  * [UI] Time of the day displayed in the right side of menu
  * [UI] Display the current date and time in menu bar
  * [Kernel] Introducing support of `CONFIG_SCHED_BORE`
  * [CLI] Fixing ambiguous CPPC report: hardware vs firmware
  * [CLI] Surrounds _CPC feature with square brackets
  * [CPPC] Provides the ACPI _CPC object state.
  * [UI] Colors the task being tracked in the tracking list
  * [UI] Display the current time in the menu bar
  * [CLI] Reserve the programmable TDP section to Intel processors.
  * [AMD/Zen3+] Improving the DIMM geometry of Rembrandt UMC</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1672747200">- update to 1.94.1:
  * [Intel] Gemini Lake
  * [AMD] Ryzen 5 6600 H SoC, UMC channels
  * [AMD] Rembrandt: maximum of two UMC channels
  * [AMD] Raphael: Decodes DIMM geometry from AddrCfg
  * [AMD] Zen: Aggregation refactored
  * [AMD] Improved DDR5 clock decoding
  * Optimized Idle Loop</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1673006400">- update to 1.94.3:
  * [AMD][RMB] If UMC is quad channels then unpopulate odd channels
  * [AMD][RPL] Provide Service Processor Vcore as workaround
  * [UI] Auto size and lay performance capabilities window
  * [UI] Adding comments to the EEO and R2H technologies
  * [AMD][Raphael] 7950X3D, 7900X3D. support</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1674475200">- update to 1.95.1:
  * [Intel] RPL: voltage of Pcore, Ecore, System Agent
  * [Intel] RPL and ADL Chipset device IDs
  * [Intel] Decode the RPL IMC and improve DDR5 support
  * [Build] Raise `MAX_FREQ_HZ` up to 7125000000 Hertz
  * [Intel] Mobile {Coffee Lake, Kaby Lake} codenames
  * [Intel] Braswell codename detection
  * [AMD] SYSCFG Register
  * [AMD] EPYC 9654
  * [AMD] Transparent SME
  * [AMD] DRAM Data Scrambling
  * [AMD] Adding "Barcelo R" and "Rembrandt R"</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1675944000">- update to 1.95.2:
  * Fixed the aggregation of the minimum ratio
  Intel:
  * [Airmont][Silvermont] Attempt to decode `tCKE` from DRMC
    register
  * [Airmont] Improve `tWTPr`, `B2B`, `tWWDR` timings
  * [Airmont] Provide a new IMC decoder
  * Add the Emerald Rapids architecture entry
  * [DDR5][DDR4] Add the `RCDw` IMC timing
  * [Raptor Lake ] De-activate the MSR Uncore counter
  AMD:
  * "Zen3/Barcelo-R" and "Zen3+ Rembrandt-R" codenames
  * [Zen] Thermal highest limit reset fix
  Misc:
  * Code review and Registers documentation:
    AMD HWCR, Intel HDC and DRP</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677067200">- update to 1.95.4
  * [Intel] [from 11th to 14th gen]
    Convert the DRAM Speed to MT/s unit
    Compute the Bus Rate based on the BIOS MC PLL
- update to 1.95.3
  * [Intel] [Airmont]
    Improved the IMC geometry
    Introducing the Spreadtrum architecture
    Fixed the Bus and DRAM frequency rates
  * [Intel] [from 11th to 13th gen] Attempt to probe the interleaved controllers
  * [Intel] [Alder Lake/H] Attempt to decode the TCO Watchdog</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677153600">- added leap_compile_fix.patch to fix compilation on Leap</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1683115200">- removed leap_compile_fix.patch no needed anymore
- update to 1.96.0
  * [AMD]
    [RPL/X3D] Disabling the turbo boosted P-states change
    [PHOENIX] Adding Z1, U and HS PRO series.
    [Genoa] DAC address at UMC BAR + 0x40
    [Zen4] Adding the PCI entries of Genoa
    [Zen2] Adding remaining PCI entries
    [Zen] Query DAC &amp; CFG with the right UMC base address register
    [Zen4] Dump the CPUID Extended CPU Topology leaves.
    [Zen][Embedded][Banded Kestrel] R1000 Processor Family
    [Zen][Embedded] "Great Horned Owl", "River Hawk", "Grey Hawk"
    Complete the "Raven Ridge" and "Picasso" lists
    [EPYC] Moved "Snowy Owl" Embedded processors to CPUID 8F_01
    [Zen4] introducing Phoenix and Dragon Range
    [RMB] adding the Ryzen Embedded V3000 processors
    [VMR] adding the "AMD Ryzen 9 PRO 5945"
  * [Intel]
    Adding Granite Rapids, Sierra Forest, Grand Ridge entries
    Adding "Lunar Lake" and "Arrow Lake" entries.
  * [UI]
    Optimized decimal to digits converter
    Allow task tracker to select up to pid_max
    Can trace the frozen states of Linux tasks.
    Only print HWP frequencies within bounds.
    Fix ruler's aggregation.
  * [CR]
    Check CPUID[HV_PARTITION_PRIVILEGE_MASK] for HV_X64_MSR_VP_RUNTIME
    Uninitialized variable fix.
    [CPPC] Build EPP with KERNEL_VERSION(6) rather than CONFIG_CACHY
    [KERNEL] Linux 6.3: Employ modifier calls with the vma-&gt;vm_flags</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1684065600">- update to 1.96.1
  * [Driver]
  - Postpone Clock Source registration during startup until the Base Clock is computed.
  - Change class_create() according to Linux Kernel 6.4
  - Clear interrupt flag (cli) after Halt in the Idle method
  * [AMD]
  - [PHOENIX] Adding Ryzen 7940H, 7840H, 7640H
  - [VERMEER] Adding Ryzen PRO and Embedded processors
  - Ryzen Z1 CPUID' brand fix
  - Adding EPYC Embedded 9004 Series as Genoa
  - Adding EPYC Embedded 7003 Series as Milan
  - Adding EPYC Embedded 7002 Series as Rome
  - Adding EPYC Embedded 7001 Series as Naples</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1685880000">- update to 1.96.2
  * [Driver]
  - Allows compilation to keep going without CONFIG_ACPI_CPPC_LIB
  * [Client]
  - Adding two command line arguments:
  - Op Show Package C-States
  - OW Toggle Energy units
  * [AMD]
  - Specification of some Configuration MSRs</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1686830400">- update to 1.96.4
  * [AMD]
  - Display CPUID state of new and legacy features:
    Fused Multiply Add [FMA4]
    Extended Operation Support [XOP]
    Translation Cache Extension [TCE]
    Trailing Bit Manipulation [TBM]
    OS Visible Work-around [OSVW]
    LOCK prefix to read CR8 [AltMov]
  * [Intel]
  - Advanced Matrix Extensions [AMX]
  - Bits and Features of Sierra Forest and Grand Ridge
  - Attempt to decode the Meteor Lake Memory Controller
- update to 1.96.3
  * [AMD]
  - [Zeppelin] Probe more than one UMC controllers on Ryzen Threadripper 1900X
  - [Zen4] Dump SMBE and BMEC sub-leaves of CPUID 0x80000020</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1688212800">- update to 1.96.5
  * [AMD]
    Adding the "AMD Ryzen 5 5600X3D"
    Introducing the Zen4c Bergamo architecture
    Specs fixing of Embedded V-series and 3000 Series Processors
    Adding MENDOCINO, RAPHAEL Pro, PHOENIX Pro among others</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1712318400">- added preamble file for %kernel_module_package macro
- update to 1.97.1
  * added aarch64 support
  * upstream did not provide a summary changelog. Full list of commits:
    https://github.com/cyring/CoreFreq/compare/1.96.5...1.97.1</changelog>
</package>
<package pkgid="b6d7362b35a0405c4cd2eeefddd08e34335522e056121862aae781672929df50e65d6d4bc88bd47076bd6e7260d285633bd08057392d686909b25ca53e02ea6d" name="CoreFreq-kmp-default" arch="x86_64">
  <version epoch="0" ver="1.97.2_k6.9.1_1" rel="2.2"/>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1655899200">- Update to version 1.91.3
  * No changelog was made available by upstream</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1661169600">- Update to version 1.91.6
  - [AMD/Zen][UMC] Fixed the Mem Clock and ECC regressions
  - Designate the Package identifier in Power consumed readings
  - [Intel/ADL/IMC] Guessing activated channel from the populated DIMM
  - [AMD][UMC, IOMMU] Adding missing DID of family 19h devices
  - [AMD_DataFabric_Cezanne] Removed the Experimental mode
  - Intel/ADL/IMC: Fixing the Memory Channels count
  - [AMD/Zen] Improved UMC mapping. Threadripper 3960X issue
  - Avoid some NULL pointer strings during SMBIOS decoding</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1667563200">- update to version 1.92.3
  - Export CPUID bits Intel Sierra Forest, Grand Ridge, Granite Rapids
    and completes AMD64 Fn0000_0007_ECX_x0
  - [Features] WBNOINVD and CLZERO instructions
  - Adding various Mitigation Mechanism aggregations:
    IPRED_DIS_U, IPRED_DIS_S, RRSBA_DIS_U, RRSBA_DIS_S, BHI_DIS_S, MCDT_NO
  - RDPID and UMIP capability fixed.
  - [AMD] Perf. Mon. version based on CPUID_0x80000022.EAX.PerfMonV2
  - [AMD][Zen3+][Rembrandt] Trigger UMC and IOMMU decoders
  - [AMD][Ryzen 5 6600H] Found voltage VID @ SMU 0x6f010 and 0x6f014
  - Introducing AMD Security Feature capabilities:
    SKINIT, SEV, GMET, SEV-ES, SEV-SNP
  - [AMD64] Non-architectural MSR: SPECULATIVE STORE BYPASS DISABLE
  - [Intel][2nd &amp; 3rd gen] Misc IMC optimizations
  - [AMD][Rembrandt] Provides Vcore from a new formula.
  - Dumping CPUID leaves from AMD64 Architecture Programmer’s Manual
  - [Intel][HSW &amp; BDW] Compute the DIMM banks
  - [UI] Re-assigned keys to move or resize windows.
  - [AMD][Zen] Uncore frequency: Improving the Memory Clock divisor
  - [Intel][HSW &amp; BDW][SKL] Make use of same function DimmWidthToRows
  - [AMD][Zen3+][Rembrandt] Provides the thermal sensor.
  - [AMD/Zen2 &amp; Zen3] Removed the HSMP capability.
  - [Intel][CML][RKL][TGL] Compute the DIMM Rows from CH_WIDTH
  - [AMD/EPYC] Adding the CPUID of Zen4 Genoa architecture
  - [AMD/Zen2] Introducing Mendocino architecture
  - Changed MeteorLake/N to CPUID 06_B5
  - [Intel] Computes BIOS DRAM frequency based on PLL_REF100
  - [Intel][SNB/IVB/HSW/BDW] Improved BIOS DRAM frequency
  - [Intel][SNB/IVB] DRAM frequency based on RAM_Select and FSB_Select
  - [Intel][IVB] IMC specifications and optimizations.
  - [Intel][SNB,IVB] Computes the DIMM A from DAS bit in MAD register
  - [Intel][SNB,IVB,HSW,BDW] Rolling back changes to the DIMM topology
  - [Intel][BDW][HSW] Query the IMC Power Down Mode
  - [Intel][IVB][SNB] Attempt to decode the IMC third timings
  - [AMD][Ryzen] Added AMD Ryzen 7 PRO 6860Z
  - [AMD][F17h-F19h] Can toggle ON and OFF the Instruction Cache Unit
  - [AMD] Checking the Ryzen "OEM Only" processors
  - [Intel] Specification of 12th Gen. MSR registers capability
  - [Intel] Adding Raptor Lake-S with CPUID 06_BF
  - [AMD] Introducing Zen 4 / Raphael architecture
  - [Intel][SNB,IVB,HSW] Attempt to assign the Rank per DIMM slot
  - [Intel][SNB,IVB,HSW] Attempt to fix the DIMM(s) topology layout
  - ClockSource: TSC udelay() asm implementation builtin as a default
  - [Intel][Alder Lake] Adding IMC entry for i5-12500 processor
  - [Intel][Alder Lake] Added default case if Processor has only Pcores
  - [Intel][Atom/Bonnell][IMC] Attempt to compute the DIMM geometry
  - [UI][Custom view] Show the Uncore unit in watt or joule
  - [UI] Display HWP or CPPC in footer for capable processors.
  - [CLI] Added HWP Capabilities and HWP Request to the JSON export
  - [CLI] Don't allow the HWP dialog box if feature is not available.
  - [CPPC][Firmware] allows (de)activation of the feature.
  - [CLI] Added CPU ratios to JSON export
  - [CPPC] Improved scaling
  - [CPPC] Build fixed down to Kernel version 3
  - [Kernel/ACPI] Attempt to write CPPC registers</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1667563201">- Repair deficient description grammar.</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1670241600">- update to 1.92.4:
  * [Intel/Skylake-X] Permits MSR_RING_PERF_LIMIT_REASONS</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1670932800">- removed modprobe_corefreqd.service.patch and harden_corefreqd.service.patch
  now included in new corefreqd.service file replacing stock one
- update to 1.93.1
  * [PRJ] CoreFreq version 1.93.1
  * [ACPI/CPPC/EPP] Preview of AMD/Zen Energy Preference (CONFIG_CACHY)
  * [UI] Changed the HWP or CPPC ratio bounds.
  * [FIX] Putting `corefreqd` in the root cgroup (issue #379) Thanks to gel-crabs
  * [DOC] Parameters to blacklist the amd_pstate since kernel 6.0.11
  * [AMD][Zen4] Apply a voltage formula based on Rembrandt's. (#378)
  * [AMD][Zen4/Raphael] Attempting temperature per CCD from TCTL+0x308
  * [AMD][Zen4] Changed Timer loop
  * [CR] CLI code review and UI optimizations
  * [UI] Auto refresh the Topology items when off/online
  * [CR] Conditionally build with additional PMC Counters
  * [Intel] Adding Z8000 System Memory Controller Registers
  * [CR] Transformed global variable in cells padding
  * [UI] Windows re-scaling fix
  * [UI] Apply color theming to the CPPC capabilities list.
  * [AMD][Raphael] Adding device DIDs to probe UMC and IOMMU
  * [CPPC/FMW] Computes value bounds while Enabling/Disabling firmware
  * [CR] CPPC lib errors are now raised to Debug level
  * [AMD][Zen4] Increased the UMC size to 12 channels.
  * [CPPC] Handles the OffLine CPU case.
  * [CLI] Refactoring HWP/CPPC to print all capabilities per CPU
  * [ACPI] Computes the CPPC Bounds
  * [Intel] Linear Address Masking (LAM)
  * [CLI] EFER: Left aligned labels
  * [AMD] Reports UAIE and AIBRSE bits from EFER system register
  * [CLI] Changed mitigation mechanisms incapability labels
  * [AMD][Zen2] Mitigation Mechanism BTC-NOBR * ACPI/OSPM documentation
  * [CR] Code review on bit masks
  * [CPPC][ACPI] Kernel may decode the Guaranteed Performance Register
  * [UI] Optimize the cycles to clear the time bar.
  * [CR] Code review for extra compiler warnings
  * [UI] Time of the day displayed in the right side of menu
  * [UI] Display the current date and time in menu bar
  * [Kernel] Introducing support of `CONFIG_SCHED_BORE`
  * [CLI] Fixing ambiguous CPPC report: hardware vs firmware
  * [CLI] Surrounds _CPC feature with square brackets
  * [CPPC] Provides the ACPI _CPC object state.
  * [UI] Colors the task being tracked in the tracking list
  * [UI] Display the current time in the menu bar
  * [CLI] Reserve the programmable TDP section to Intel processors.
  * [AMD/Zen3+] Improving the DIMM geometry of Rembrandt UMC</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1672747200">- update to 1.94.1:
  * [Intel] Gemini Lake
  * [AMD] Ryzen 5 6600 H SoC, UMC channels
  * [AMD] Rembrandt: maximum of two UMC channels
  * [AMD] Raphael: Decodes DIMM geometry from AddrCfg
  * [AMD] Zen: Aggregation refactored
  * [AMD] Improved DDR5 clock decoding
  * Optimized Idle Loop</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1673006400">- update to 1.94.3:
  * [AMD][RMB] If UMC is quad channels then unpopulate odd channels
  * [AMD][RPL] Provide Service Processor Vcore as workaround
  * [UI] Auto size and lay performance capabilities window
  * [UI] Adding comments to the EEO and R2H technologies
  * [AMD][Raphael] 7950X3D, 7900X3D. support</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1674475200">- update to 1.95.1:
  * [Intel] RPL: voltage of Pcore, Ecore, System Agent
  * [Intel] RPL and ADL Chipset device IDs
  * [Intel] Decode the RPL IMC and improve DDR5 support
  * [Build] Raise `MAX_FREQ_HZ` up to 7125000000 Hertz
  * [Intel] Mobile {Coffee Lake, Kaby Lake} codenames
  * [Intel] Braswell codename detection
  * [AMD] SYSCFG Register
  * [AMD] EPYC 9654
  * [AMD] Transparent SME
  * [AMD] DRAM Data Scrambling
  * [AMD] Adding "Barcelo R" and "Rembrandt R"</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1675944000">- update to 1.95.2:
  * Fixed the aggregation of the minimum ratio
  Intel:
  * [Airmont][Silvermont] Attempt to decode `tCKE` from DRMC
    register
  * [Airmont] Improve `tWTPr`, `B2B`, `tWWDR` timings
  * [Airmont] Provide a new IMC decoder
  * Add the Emerald Rapids architecture entry
  * [DDR5][DDR4] Add the `RCDw` IMC timing
  * [Raptor Lake ] De-activate the MSR Uncore counter
  AMD:
  * "Zen3/Barcelo-R" and "Zen3+ Rembrandt-R" codenames
  * [Zen] Thermal highest limit reset fix
  Misc:
  * Code review and Registers documentation:
    AMD HWCR, Intel HDC and DRP</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677067200">- update to 1.95.4
  * [Intel] [from 11th to 14th gen]
    Convert the DRAM Speed to MT/s unit
    Compute the Bus Rate based on the BIOS MC PLL
- update to 1.95.3
  * [Intel] [Airmont]
    Improved the IMC geometry
    Introducing the Spreadtrum architecture
    Fixed the Bus and DRAM frequency rates
  * [Intel] [from 11th to 13th gen] Attempt to probe the interleaved controllers
  * [Intel] [Alder Lake/H] Attempt to decode the TCO Watchdog</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677153600">- added leap_compile_fix.patch to fix compilation on Leap</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1683115200">- removed leap_compile_fix.patch no needed anymore
- update to 1.96.0
  * [AMD]
    [RPL/X3D] Disabling the turbo boosted P-states change
    [PHOENIX] Adding Z1, U and HS PRO series.
    [Genoa] DAC address at UMC BAR + 0x40
    [Zen4] Adding the PCI entries of Genoa
    [Zen2] Adding remaining PCI entries
    [Zen] Query DAC &amp; CFG with the right UMC base address register
    [Zen4] Dump the CPUID Extended CPU Topology leaves.
    [Zen][Embedded][Banded Kestrel] R1000 Processor Family
    [Zen][Embedded] "Great Horned Owl", "River Hawk", "Grey Hawk"
    Complete the "Raven Ridge" and "Picasso" lists
    [EPYC] Moved "Snowy Owl" Embedded processors to CPUID 8F_01
    [Zen4] introducing Phoenix and Dragon Range
    [RMB] adding the Ryzen Embedded V3000 processors
    [VMR] adding the "AMD Ryzen 9 PRO 5945"
  * [Intel]
    Adding Granite Rapids, Sierra Forest, Grand Ridge entries
    Adding "Lunar Lake" and "Arrow Lake" entries.
  * [UI]
    Optimized decimal to digits converter
    Allow task tracker to select up to pid_max
    Can trace the frozen states of Linux tasks.
    Only print HWP frequencies within bounds.
    Fix ruler's aggregation.
  * [CR]
    Check CPUID[HV_PARTITION_PRIVILEGE_MASK] for HV_X64_MSR_VP_RUNTIME
    Uninitialized variable fix.
    [CPPC] Build EPP with KERNEL_VERSION(6) rather than CONFIG_CACHY
    [KERNEL] Linux 6.3: Employ modifier calls with the vma-&gt;vm_flags</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1684065600">- update to 1.96.1
  * [Driver]
  - Postpone Clock Source registration during startup until the Base Clock is computed.
  - Change class_create() according to Linux Kernel 6.4
  - Clear interrupt flag (cli) after Halt in the Idle method
  * [AMD]
  - [PHOENIX] Adding Ryzen 7940H, 7840H, 7640H
  - [VERMEER] Adding Ryzen PRO and Embedded processors
  - Ryzen Z1 CPUID' brand fix
  - Adding EPYC Embedded 9004 Series as Genoa
  - Adding EPYC Embedded 7003 Series as Milan
  - Adding EPYC Embedded 7002 Series as Rome
  - Adding EPYC Embedded 7001 Series as Naples</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1685880000">- update to 1.96.2
  * [Driver]
  - Allows compilation to keep going without CONFIG_ACPI_CPPC_LIB
  * [Client]
  - Adding two command line arguments:
  - Op Show Package C-States
  - OW Toggle Energy units
  * [AMD]
  - Specification of some Configuration MSRs</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1686830400">- update to 1.96.4
  * [AMD]
  - Display CPUID state of new and legacy features:
    Fused Multiply Add [FMA4]
    Extended Operation Support [XOP]
    Translation Cache Extension [TCE]
    Trailing Bit Manipulation [TBM]
    OS Visible Work-around [OSVW]
    LOCK prefix to read CR8 [AltMov]
  * [Intel]
  - Advanced Matrix Extensions [AMX]
  - Bits and Features of Sierra Forest and Grand Ridge
  - Attempt to decode the Meteor Lake Memory Controller
- update to 1.96.3
  * [AMD]
  - [Zeppelin] Probe more than one UMC controllers on Ryzen Threadripper 1900X
  - [Zen4] Dump SMBE and BMEC sub-leaves of CPUID 0x80000020</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1688212800">- update to 1.96.5
  * [AMD]
    Adding the "AMD Ryzen 5 5600X3D"
    Introducing the Zen4c Bergamo architecture
    Specs fixing of Embedded V-series and 3000 Series Processors
    Adding MENDOCINO, RAPHAEL Pro, PHOENIX Pro among others</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1712318400">- added preamble file for %kernel_module_package macro
- update to 1.97.1
  * added aarch64 support
  * upstream did not provide a summary changelog. Full list of commits:
    https://github.com/cyring/CoreFreq/compare/1.96.5...1.97.1</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715860800">- update to 1.97.2
  * [AMD]
  - [Hawk Point] Adding Ryzen PRO processors
  - [Phoenix] Adding the unlocked Ryzen 8000 Series
  * [Intel]
  - [MeteorLake] New bits specified
  - EEO and R2H bits inversion fix in MSR_POWER_CTL (0x1fc)
  - Reverse specification of MSR UNCORE_PERF_STATUS
  - Prefetchers fix of L1 Scrubbing, L1 Next Page and L2 AMP
  * [AArch64]
  - Providing Exclusive Load/Store to atomic operations
  - Improved asm of various macro functions
  - Removed LEGACY macros
  - Optimized the CORE_COUNT macros
  - Marked the Tools feature as nominal: Stress functions available
  - Allow user access to Retired Instructions counter
  - Fix Instructions counter overflow
  - Other PMC enhancements
  * [CR]
  - Fix a building issue with AlmaLinux aka RHEL-9
  - Linux kernel 6.9: Avoid redefinition of Intel MSR macros
  * [Doc]
  - README section for AlmaLinux
  - CONFIG_TRIM_UNUSED_KSYMS kernel build config is forbidden</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715947200">- fix dependency on kernel module that was not versioned</changelog>
</package>
<package pkgid="105cec6a416646352975bfd4faaa00a2d89ba96f960ae686f29a93ccba8704bbb551ab9be93bfe01fd74ae90840e1b4da5175f87b08be7e51f196b15b6b59d4f" name="CoreFreq-kmp-default" arch="x86_64">
  <version epoch="0" ver="1.97.2_k6.9.4_1" rel="2.3"/>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1655899200">- Update to version 1.91.3
  * No changelog was made available by upstream</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1661169600">- Update to version 1.91.6
  - [AMD/Zen][UMC] Fixed the Mem Clock and ECC regressions
  - Designate the Package identifier in Power consumed readings
  - [Intel/ADL/IMC] Guessing activated channel from the populated DIMM
  - [AMD][UMC, IOMMU] Adding missing DID of family 19h devices
  - [AMD_DataFabric_Cezanne] Removed the Experimental mode
  - Intel/ADL/IMC: Fixing the Memory Channels count
  - [AMD/Zen] Improved UMC mapping. Threadripper 3960X issue
  - Avoid some NULL pointer strings during SMBIOS decoding</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1667563200">- update to version 1.92.3
  - Export CPUID bits Intel Sierra Forest, Grand Ridge, Granite Rapids
    and completes AMD64 Fn0000_0007_ECX_x0
  - [Features] WBNOINVD and CLZERO instructions
  - Adding various Mitigation Mechanism aggregations:
    IPRED_DIS_U, IPRED_DIS_S, RRSBA_DIS_U, RRSBA_DIS_S, BHI_DIS_S, MCDT_NO
  - RDPID and UMIP capability fixed.
  - [AMD] Perf. Mon. version based on CPUID_0x80000022.EAX.PerfMonV2
  - [AMD][Zen3+][Rembrandt] Trigger UMC and IOMMU decoders
  - [AMD][Ryzen 5 6600H] Found voltage VID @ SMU 0x6f010 and 0x6f014
  - Introducing AMD Security Feature capabilities:
    SKINIT, SEV, GMET, SEV-ES, SEV-SNP
  - [AMD64] Non-architectural MSR: SPECULATIVE STORE BYPASS DISABLE
  - [Intel][2nd &amp; 3rd gen] Misc IMC optimizations
  - [AMD][Rembrandt] Provides Vcore from a new formula.
  - Dumping CPUID leaves from AMD64 Architecture Programmer’s Manual
  - [Intel][HSW &amp; BDW] Compute the DIMM banks
  - [UI] Re-assigned keys to move or resize windows.
  - [AMD][Zen] Uncore frequency: Improving the Memory Clock divisor
  - [Intel][HSW &amp; BDW][SKL] Make use of same function DimmWidthToRows
  - [AMD][Zen3+][Rembrandt] Provides the thermal sensor.
  - [AMD/Zen2 &amp; Zen3] Removed the HSMP capability.
  - [Intel][CML][RKL][TGL] Compute the DIMM Rows from CH_WIDTH
  - [AMD/EPYC] Adding the CPUID of Zen4 Genoa architecture
  - [AMD/Zen2] Introducing Mendocino architecture
  - Changed MeteorLake/N to CPUID 06_B5
  - [Intel] Computes BIOS DRAM frequency based on PLL_REF100
  - [Intel][SNB/IVB/HSW/BDW] Improved BIOS DRAM frequency
  - [Intel][SNB/IVB] DRAM frequency based on RAM_Select and FSB_Select
  - [Intel][IVB] IMC specifications and optimizations.
  - [Intel][SNB,IVB] Computes the DIMM A from DAS bit in MAD register
  - [Intel][SNB,IVB,HSW,BDW] Rolling back changes to the DIMM topology
  - [Intel][BDW][HSW] Query the IMC Power Down Mode
  - [Intel][IVB][SNB] Attempt to decode the IMC third timings
  - [AMD][Ryzen] Added AMD Ryzen 7 PRO 6860Z
  - [AMD][F17h-F19h] Can toggle ON and OFF the Instruction Cache Unit
  - [AMD] Checking the Ryzen "OEM Only" processors
  - [Intel] Specification of 12th Gen. MSR registers capability
  - [Intel] Adding Raptor Lake-S with CPUID 06_BF
  - [AMD] Introducing Zen 4 / Raphael architecture
  - [Intel][SNB,IVB,HSW] Attempt to assign the Rank per DIMM slot
  - [Intel][SNB,IVB,HSW] Attempt to fix the DIMM(s) topology layout
  - ClockSource: TSC udelay() asm implementation builtin as a default
  - [Intel][Alder Lake] Adding IMC entry for i5-12500 processor
  - [Intel][Alder Lake] Added default case if Processor has only Pcores
  - [Intel][Atom/Bonnell][IMC] Attempt to compute the DIMM geometry
  - [UI][Custom view] Show the Uncore unit in watt or joule
  - [UI] Display HWP or CPPC in footer for capable processors.
  - [CLI] Added HWP Capabilities and HWP Request to the JSON export
  - [CLI] Don't allow the HWP dialog box if feature is not available.
  - [CPPC][Firmware] allows (de)activation of the feature.
  - [CLI] Added CPU ratios to JSON export
  - [CPPC] Improved scaling
  - [CPPC] Build fixed down to Kernel version 3
  - [Kernel/ACPI] Attempt to write CPPC registers</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1667563201">- Repair deficient description grammar.</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1670241600">- update to 1.92.4:
  * [Intel/Skylake-X] Permits MSR_RING_PERF_LIMIT_REASONS</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1670932800">- removed modprobe_corefreqd.service.patch and harden_corefreqd.service.patch
  now included in new corefreqd.service file replacing stock one
- update to 1.93.1
  * [PRJ] CoreFreq version 1.93.1
  * [ACPI/CPPC/EPP] Preview of AMD/Zen Energy Preference (CONFIG_CACHY)
  * [UI] Changed the HWP or CPPC ratio bounds.
  * [FIX] Putting `corefreqd` in the root cgroup (issue #379) Thanks to gel-crabs
  * [DOC] Parameters to blacklist the amd_pstate since kernel 6.0.11
  * [AMD][Zen4] Apply a voltage formula based on Rembrandt's. (#378)
  * [AMD][Zen4/Raphael] Attempting temperature per CCD from TCTL+0x308
  * [AMD][Zen4] Changed Timer loop
  * [CR] CLI code review and UI optimizations
  * [UI] Auto refresh the Topology items when off/online
  * [CR] Conditionally build with additional PMC Counters
  * [Intel] Adding Z8000 System Memory Controller Registers
  * [CR] Transformed global variable in cells padding
  * [UI] Windows re-scaling fix
  * [UI] Apply color theming to the CPPC capabilities list.
  * [AMD][Raphael] Adding device DIDs to probe UMC and IOMMU
  * [CPPC/FMW] Computes value bounds while Enabling/Disabling firmware
  * [CR] CPPC lib errors are now raised to Debug level
  * [AMD][Zen4] Increased the UMC size to 12 channels.
  * [CPPC] Handles the OffLine CPU case.
  * [CLI] Refactoring HWP/CPPC to print all capabilities per CPU
  * [ACPI] Computes the CPPC Bounds
  * [Intel] Linear Address Masking (LAM)
  * [CLI] EFER: Left aligned labels
  * [AMD] Reports UAIE and AIBRSE bits from EFER system register
  * [CLI] Changed mitigation mechanisms incapability labels
  * [AMD][Zen2] Mitigation Mechanism BTC-NOBR * ACPI/OSPM documentation
  * [CR] Code review on bit masks
  * [CPPC][ACPI] Kernel may decode the Guaranteed Performance Register
  * [UI] Optimize the cycles to clear the time bar.
  * [CR] Code review for extra compiler warnings
  * [UI] Time of the day displayed in the right side of menu
  * [UI] Display the current date and time in menu bar
  * [Kernel] Introducing support of `CONFIG_SCHED_BORE`
  * [CLI] Fixing ambiguous CPPC report: hardware vs firmware
  * [CLI] Surrounds _CPC feature with square brackets
  * [CPPC] Provides the ACPI _CPC object state.
  * [UI] Colors the task being tracked in the tracking list
  * [UI] Display the current time in the menu bar
  * [CLI] Reserve the programmable TDP section to Intel processors.
  * [AMD/Zen3+] Improving the DIMM geometry of Rembrandt UMC</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1672747200">- update to 1.94.1:
  * [Intel] Gemini Lake
  * [AMD] Ryzen 5 6600 H SoC, UMC channels
  * [AMD] Rembrandt: maximum of two UMC channels
  * [AMD] Raphael: Decodes DIMM geometry from AddrCfg
  * [AMD] Zen: Aggregation refactored
  * [AMD] Improved DDR5 clock decoding
  * Optimized Idle Loop</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1673006400">- update to 1.94.3:
  * [AMD][RMB] If UMC is quad channels then unpopulate odd channels
  * [AMD][RPL] Provide Service Processor Vcore as workaround
  * [UI] Auto size and lay performance capabilities window
  * [UI] Adding comments to the EEO and R2H technologies
  * [AMD][Raphael] 7950X3D, 7900X3D. support</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1674475200">- update to 1.95.1:
  * [Intel] RPL: voltage of Pcore, Ecore, System Agent
  * [Intel] RPL and ADL Chipset device IDs
  * [Intel] Decode the RPL IMC and improve DDR5 support
  * [Build] Raise `MAX_FREQ_HZ` up to 7125000000 Hertz
  * [Intel] Mobile {Coffee Lake, Kaby Lake} codenames
  * [Intel] Braswell codename detection
  * [AMD] SYSCFG Register
  * [AMD] EPYC 9654
  * [AMD] Transparent SME
  * [AMD] DRAM Data Scrambling
  * [AMD] Adding "Barcelo R" and "Rembrandt R"</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1675944000">- update to 1.95.2:
  * Fixed the aggregation of the minimum ratio
  Intel:
  * [Airmont][Silvermont] Attempt to decode `tCKE` from DRMC
    register
  * [Airmont] Improve `tWTPr`, `B2B`, `tWWDR` timings
  * [Airmont] Provide a new IMC decoder
  * Add the Emerald Rapids architecture entry
  * [DDR5][DDR4] Add the `RCDw` IMC timing
  * [Raptor Lake ] De-activate the MSR Uncore counter
  AMD:
  * "Zen3/Barcelo-R" and "Zen3+ Rembrandt-R" codenames
  * [Zen] Thermal highest limit reset fix
  Misc:
  * Code review and Registers documentation:
    AMD HWCR, Intel HDC and DRP</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677067200">- update to 1.95.4
  * [Intel] [from 11th to 14th gen]
    Convert the DRAM Speed to MT/s unit
    Compute the Bus Rate based on the BIOS MC PLL
- update to 1.95.3
  * [Intel] [Airmont]
    Improved the IMC geometry
    Introducing the Spreadtrum architecture
    Fixed the Bus and DRAM frequency rates
  * [Intel] [from 11th to 13th gen] Attempt to probe the interleaved controllers
  * [Intel] [Alder Lake/H] Attempt to decode the TCO Watchdog</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677153600">- added leap_compile_fix.patch to fix compilation on Leap</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1683115200">- removed leap_compile_fix.patch no needed anymore
- update to 1.96.0
  * [AMD]
    [RPL/X3D] Disabling the turbo boosted P-states change
    [PHOENIX] Adding Z1, U and HS PRO series.
    [Genoa] DAC address at UMC BAR + 0x40
    [Zen4] Adding the PCI entries of Genoa
    [Zen2] Adding remaining PCI entries
    [Zen] Query DAC &amp; CFG with the right UMC base address register
    [Zen4] Dump the CPUID Extended CPU Topology leaves.
    [Zen][Embedded][Banded Kestrel] R1000 Processor Family
    [Zen][Embedded] "Great Horned Owl", "River Hawk", "Grey Hawk"
    Complete the "Raven Ridge" and "Picasso" lists
    [EPYC] Moved "Snowy Owl" Embedded processors to CPUID 8F_01
    [Zen4] introducing Phoenix and Dragon Range
    [RMB] adding the Ryzen Embedded V3000 processors
    [VMR] adding the "AMD Ryzen 9 PRO 5945"
  * [Intel]
    Adding Granite Rapids, Sierra Forest, Grand Ridge entries
    Adding "Lunar Lake" and "Arrow Lake" entries.
  * [UI]
    Optimized decimal to digits converter
    Allow task tracker to select up to pid_max
    Can trace the frozen states of Linux tasks.
    Only print HWP frequencies within bounds.
    Fix ruler's aggregation.
  * [CR]
    Check CPUID[HV_PARTITION_PRIVILEGE_MASK] for HV_X64_MSR_VP_RUNTIME
    Uninitialized variable fix.
    [CPPC] Build EPP with KERNEL_VERSION(6) rather than CONFIG_CACHY
    [KERNEL] Linux 6.3: Employ modifier calls with the vma-&gt;vm_flags</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1684065600">- update to 1.96.1
  * [Driver]
  - Postpone Clock Source registration during startup until the Base Clock is computed.
  - Change class_create() according to Linux Kernel 6.4
  - Clear interrupt flag (cli) after Halt in the Idle method
  * [AMD]
  - [PHOENIX] Adding Ryzen 7940H, 7840H, 7640H
  - [VERMEER] Adding Ryzen PRO and Embedded processors
  - Ryzen Z1 CPUID' brand fix
  - Adding EPYC Embedded 9004 Series as Genoa
  - Adding EPYC Embedded 7003 Series as Milan
  - Adding EPYC Embedded 7002 Series as Rome
  - Adding EPYC Embedded 7001 Series as Naples</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1685880000">- update to 1.96.2
  * [Driver]
  - Allows compilation to keep going without CONFIG_ACPI_CPPC_LIB
  * [Client]
  - Adding two command line arguments:
  - Op Show Package C-States
  - OW Toggle Energy units
  * [AMD]
  - Specification of some Configuration MSRs</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1686830400">- update to 1.96.4
  * [AMD]
  - Display CPUID state of new and legacy features:
    Fused Multiply Add [FMA4]
    Extended Operation Support [XOP]
    Translation Cache Extension [TCE]
    Trailing Bit Manipulation [TBM]
    OS Visible Work-around [OSVW]
    LOCK prefix to read CR8 [AltMov]
  * [Intel]
  - Advanced Matrix Extensions [AMX]
  - Bits and Features of Sierra Forest and Grand Ridge
  - Attempt to decode the Meteor Lake Memory Controller
- update to 1.96.3
  * [AMD]
  - [Zeppelin] Probe more than one UMC controllers on Ryzen Threadripper 1900X
  - [Zen4] Dump SMBE and BMEC sub-leaves of CPUID 0x80000020</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1688212800">- update to 1.96.5
  * [AMD]
    Adding the "AMD Ryzen 5 5600X3D"
    Introducing the Zen4c Bergamo architecture
    Specs fixing of Embedded V-series and 3000 Series Processors
    Adding MENDOCINO, RAPHAEL Pro, PHOENIX Pro among others</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1712318400">- added preamble file for %kernel_module_package macro
- update to 1.97.1
  * added aarch64 support
  * upstream did not provide a summary changelog. Full list of commits:
    https://github.com/cyring/CoreFreq/compare/1.96.5...1.97.1</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715860800">- update to 1.97.2
  * [AMD]
  - [Hawk Point] Adding Ryzen PRO processors
  - [Phoenix] Adding the unlocked Ryzen 8000 Series
  * [Intel]
  - [MeteorLake] New bits specified
  - EEO and R2H bits inversion fix in MSR_POWER_CTL (0x1fc)
  - Reverse specification of MSR UNCORE_PERF_STATUS
  - Prefetchers fix of L1 Scrubbing, L1 Next Page and L2 AMP
  * [AArch64]
  - Providing Exclusive Load/Store to atomic operations
  - Improved asm of various macro functions
  - Removed LEGACY macros
  - Optimized the CORE_COUNT macros
  - Marked the Tools feature as nominal: Stress functions available
  - Allow user access to Retired Instructions counter
  - Fix Instructions counter overflow
  - Other PMC enhancements
  * [CR]
  - Fix a building issue with AlmaLinux aka RHEL-9
  - Linux kernel 6.9: Avoid redefinition of Intel MSR macros
  * [Doc]
  - README section for AlmaLinux
  - CONFIG_TRIM_UNUSED_KSYMS kernel build config is forbidden</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715947200">- fix dependency on kernel module that was not versioned</changelog>
</package>
<package pkgid="e3498ab7fe7adc7dedb2b9512b06f84a30a5c22cd4f5afbfe1f1860d5e3af34a436cb55f09b9b97cc3c0f1c62d40f3ddb280cee9f3f45a1a2292aa6980f9377b" name="CoreFreq-kmp-default" arch="x86_64">
  <version epoch="0" ver="1.97.2_k6.9.5_1" rel="2.4"/>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1655899200">- Update to version 1.91.3
  * No changelog was made available by upstream</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1661169600">- Update to version 1.91.6
  - [AMD/Zen][UMC] Fixed the Mem Clock and ECC regressions
  - Designate the Package identifier in Power consumed readings
  - [Intel/ADL/IMC] Guessing activated channel from the populated DIMM
  - [AMD][UMC, IOMMU] Adding missing DID of family 19h devices
  - [AMD_DataFabric_Cezanne] Removed the Experimental mode
  - Intel/ADL/IMC: Fixing the Memory Channels count
  - [AMD/Zen] Improved UMC mapping. Threadripper 3960X issue
  - Avoid some NULL pointer strings during SMBIOS decoding</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1667563200">- update to version 1.92.3
  - Export CPUID bits Intel Sierra Forest, Grand Ridge, Granite Rapids
    and completes AMD64 Fn0000_0007_ECX_x0
  - [Features] WBNOINVD and CLZERO instructions
  - Adding various Mitigation Mechanism aggregations:
    IPRED_DIS_U, IPRED_DIS_S, RRSBA_DIS_U, RRSBA_DIS_S, BHI_DIS_S, MCDT_NO
  - RDPID and UMIP capability fixed.
  - [AMD] Perf. Mon. version based on CPUID_0x80000022.EAX.PerfMonV2
  - [AMD][Zen3+][Rembrandt] Trigger UMC and IOMMU decoders
  - [AMD][Ryzen 5 6600H] Found voltage VID @ SMU 0x6f010 and 0x6f014
  - Introducing AMD Security Feature capabilities:
    SKINIT, SEV, GMET, SEV-ES, SEV-SNP
  - [AMD64] Non-architectural MSR: SPECULATIVE STORE BYPASS DISABLE
  - [Intel][2nd &amp; 3rd gen] Misc IMC optimizations
  - [AMD][Rembrandt] Provides Vcore from a new formula.
  - Dumping CPUID leaves from AMD64 Architecture Programmer’s Manual
  - [Intel][HSW &amp; BDW] Compute the DIMM banks
  - [UI] Re-assigned keys to move or resize windows.
  - [AMD][Zen] Uncore frequency: Improving the Memory Clock divisor
  - [Intel][HSW &amp; BDW][SKL] Make use of same function DimmWidthToRows
  - [AMD][Zen3+][Rembrandt] Provides the thermal sensor.
  - [AMD/Zen2 &amp; Zen3] Removed the HSMP capability.
  - [Intel][CML][RKL][TGL] Compute the DIMM Rows from CH_WIDTH
  - [AMD/EPYC] Adding the CPUID of Zen4 Genoa architecture
  - [AMD/Zen2] Introducing Mendocino architecture
  - Changed MeteorLake/N to CPUID 06_B5
  - [Intel] Computes BIOS DRAM frequency based on PLL_REF100
  - [Intel][SNB/IVB/HSW/BDW] Improved BIOS DRAM frequency
  - [Intel][SNB/IVB] DRAM frequency based on RAM_Select and FSB_Select
  - [Intel][IVB] IMC specifications and optimizations.
  - [Intel][SNB,IVB] Computes the DIMM A from DAS bit in MAD register
  - [Intel][SNB,IVB,HSW,BDW] Rolling back changes to the DIMM topology
  - [Intel][BDW][HSW] Query the IMC Power Down Mode
  - [Intel][IVB][SNB] Attempt to decode the IMC third timings
  - [AMD][Ryzen] Added AMD Ryzen 7 PRO 6860Z
  - [AMD][F17h-F19h] Can toggle ON and OFF the Instruction Cache Unit
  - [AMD] Checking the Ryzen "OEM Only" processors
  - [Intel] Specification of 12th Gen. MSR registers capability
  - [Intel] Adding Raptor Lake-S with CPUID 06_BF
  - [AMD] Introducing Zen 4 / Raphael architecture
  - [Intel][SNB,IVB,HSW] Attempt to assign the Rank per DIMM slot
  - [Intel][SNB,IVB,HSW] Attempt to fix the DIMM(s) topology layout
  - ClockSource: TSC udelay() asm implementation builtin as a default
  - [Intel][Alder Lake] Adding IMC entry for i5-12500 processor
  - [Intel][Alder Lake] Added default case if Processor has only Pcores
  - [Intel][Atom/Bonnell][IMC] Attempt to compute the DIMM geometry
  - [UI][Custom view] Show the Uncore unit in watt or joule
  - [UI] Display HWP or CPPC in footer for capable processors.
  - [CLI] Added HWP Capabilities and HWP Request to the JSON export
  - [CLI] Don't allow the HWP dialog box if feature is not available.
  - [CPPC][Firmware] allows (de)activation of the feature.
  - [CLI] Added CPU ratios to JSON export
  - [CPPC] Improved scaling
  - [CPPC] Build fixed down to Kernel version 3
  - [Kernel/ACPI] Attempt to write CPPC registers</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1667563201">- Repair deficient description grammar.</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1670241600">- update to 1.92.4:
  * [Intel/Skylake-X] Permits MSR_RING_PERF_LIMIT_REASONS</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1670932800">- removed modprobe_corefreqd.service.patch and harden_corefreqd.service.patch
  now included in new corefreqd.service file replacing stock one
- update to 1.93.1
  * [PRJ] CoreFreq version 1.93.1
  * [ACPI/CPPC/EPP] Preview of AMD/Zen Energy Preference (CONFIG_CACHY)
  * [UI] Changed the HWP or CPPC ratio bounds.
  * [FIX] Putting `corefreqd` in the root cgroup (issue #379) Thanks to gel-crabs
  * [DOC] Parameters to blacklist the amd_pstate since kernel 6.0.11
  * [AMD][Zen4] Apply a voltage formula based on Rembrandt's. (#378)
  * [AMD][Zen4/Raphael] Attempting temperature per CCD from TCTL+0x308
  * [AMD][Zen4] Changed Timer loop
  * [CR] CLI code review and UI optimizations
  * [UI] Auto refresh the Topology items when off/online
  * [CR] Conditionally build with additional PMC Counters
  * [Intel] Adding Z8000 System Memory Controller Registers
  * [CR] Transformed global variable in cells padding
  * [UI] Windows re-scaling fix
  * [UI] Apply color theming to the CPPC capabilities list.
  * [AMD][Raphael] Adding device DIDs to probe UMC and IOMMU
  * [CPPC/FMW] Computes value bounds while Enabling/Disabling firmware
  * [CR] CPPC lib errors are now raised to Debug level
  * [AMD][Zen4] Increased the UMC size to 12 channels.
  * [CPPC] Handles the OffLine CPU case.
  * [CLI] Refactoring HWP/CPPC to print all capabilities per CPU
  * [ACPI] Computes the CPPC Bounds
  * [Intel] Linear Address Masking (LAM)
  * [CLI] EFER: Left aligned labels
  * [AMD] Reports UAIE and AIBRSE bits from EFER system register
  * [CLI] Changed mitigation mechanisms incapability labels
  * [AMD][Zen2] Mitigation Mechanism BTC-NOBR * ACPI/OSPM documentation
  * [CR] Code review on bit masks
  * [CPPC][ACPI] Kernel may decode the Guaranteed Performance Register
  * [UI] Optimize the cycles to clear the time bar.
  * [CR] Code review for extra compiler warnings
  * [UI] Time of the day displayed in the right side of menu
  * [UI] Display the current date and time in menu bar
  * [Kernel] Introducing support of `CONFIG_SCHED_BORE`
  * [CLI] Fixing ambiguous CPPC report: hardware vs firmware
  * [CLI] Surrounds _CPC feature with square brackets
  * [CPPC] Provides the ACPI _CPC object state.
  * [UI] Colors the task being tracked in the tracking list
  * [UI] Display the current time in the menu bar
  * [CLI] Reserve the programmable TDP section to Intel processors.
  * [AMD/Zen3+] Improving the DIMM geometry of Rembrandt UMC</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1672747200">- update to 1.94.1:
  * [Intel] Gemini Lake
  * [AMD] Ryzen 5 6600 H SoC, UMC channels
  * [AMD] Rembrandt: maximum of two UMC channels
  * [AMD] Raphael: Decodes DIMM geometry from AddrCfg
  * [AMD] Zen: Aggregation refactored
  * [AMD] Improved DDR5 clock decoding
  * Optimized Idle Loop</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1673006400">- update to 1.94.3:
  * [AMD][RMB] If UMC is quad channels then unpopulate odd channels
  * [AMD][RPL] Provide Service Processor Vcore as workaround
  * [UI] Auto size and lay performance capabilities window
  * [UI] Adding comments to the EEO and R2H technologies
  * [AMD][Raphael] 7950X3D, 7900X3D. support</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1674475200">- update to 1.95.1:
  * [Intel] RPL: voltage of Pcore, Ecore, System Agent
  * [Intel] RPL and ADL Chipset device IDs
  * [Intel] Decode the RPL IMC and improve DDR5 support
  * [Build] Raise `MAX_FREQ_HZ` up to 7125000000 Hertz
  * [Intel] Mobile {Coffee Lake, Kaby Lake} codenames
  * [Intel] Braswell codename detection
  * [AMD] SYSCFG Register
  * [AMD] EPYC 9654
  * [AMD] Transparent SME
  * [AMD] DRAM Data Scrambling
  * [AMD] Adding "Barcelo R" and "Rembrandt R"</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1675944000">- update to 1.95.2:
  * Fixed the aggregation of the minimum ratio
  Intel:
  * [Airmont][Silvermont] Attempt to decode `tCKE` from DRMC
    register
  * [Airmont] Improve `tWTPr`, `B2B`, `tWWDR` timings
  * [Airmont] Provide a new IMC decoder
  * Add the Emerald Rapids architecture entry
  * [DDR5][DDR4] Add the `RCDw` IMC timing
  * [Raptor Lake ] De-activate the MSR Uncore counter
  AMD:
  * "Zen3/Barcelo-R" and "Zen3+ Rembrandt-R" codenames
  * [Zen] Thermal highest limit reset fix
  Misc:
  * Code review and Registers documentation:
    AMD HWCR, Intel HDC and DRP</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677067200">- update to 1.95.4
  * [Intel] [from 11th to 14th gen]
    Convert the DRAM Speed to MT/s unit
    Compute the Bus Rate based on the BIOS MC PLL
- update to 1.95.3
  * [Intel] [Airmont]
    Improved the IMC geometry
    Introducing the Spreadtrum architecture
    Fixed the Bus and DRAM frequency rates
  * [Intel] [from 11th to 13th gen] Attempt to probe the interleaved controllers
  * [Intel] [Alder Lake/H] Attempt to decode the TCO Watchdog</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677153600">- added leap_compile_fix.patch to fix compilation on Leap</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1683115200">- removed leap_compile_fix.patch no needed anymore
- update to 1.96.0
  * [AMD]
    [RPL/X3D] Disabling the turbo boosted P-states change
    [PHOENIX] Adding Z1, U and HS PRO series.
    [Genoa] DAC address at UMC BAR + 0x40
    [Zen4] Adding the PCI entries of Genoa
    [Zen2] Adding remaining PCI entries
    [Zen] Query DAC &amp; CFG with the right UMC base address register
    [Zen4] Dump the CPUID Extended CPU Topology leaves.
    [Zen][Embedded][Banded Kestrel] R1000 Processor Family
    [Zen][Embedded] "Great Horned Owl", "River Hawk", "Grey Hawk"
    Complete the "Raven Ridge" and "Picasso" lists
    [EPYC] Moved "Snowy Owl" Embedded processors to CPUID 8F_01
    [Zen4] introducing Phoenix and Dragon Range
    [RMB] adding the Ryzen Embedded V3000 processors
    [VMR] adding the "AMD Ryzen 9 PRO 5945"
  * [Intel]
    Adding Granite Rapids, Sierra Forest, Grand Ridge entries
    Adding "Lunar Lake" and "Arrow Lake" entries.
  * [UI]
    Optimized decimal to digits converter
    Allow task tracker to select up to pid_max
    Can trace the frozen states of Linux tasks.
    Only print HWP frequencies within bounds.
    Fix ruler's aggregation.
  * [CR]
    Check CPUID[HV_PARTITION_PRIVILEGE_MASK] for HV_X64_MSR_VP_RUNTIME
    Uninitialized variable fix.
    [CPPC] Build EPP with KERNEL_VERSION(6) rather than CONFIG_CACHY
    [KERNEL] Linux 6.3: Employ modifier calls with the vma-&gt;vm_flags</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1684065600">- update to 1.96.1
  * [Driver]
  - Postpone Clock Source registration during startup until the Base Clock is computed.
  - Change class_create() according to Linux Kernel 6.4
  - Clear interrupt flag (cli) after Halt in the Idle method
  * [AMD]
  - [PHOENIX] Adding Ryzen 7940H, 7840H, 7640H
  - [VERMEER] Adding Ryzen PRO and Embedded processors
  - Ryzen Z1 CPUID' brand fix
  - Adding EPYC Embedded 9004 Series as Genoa
  - Adding EPYC Embedded 7003 Series as Milan
  - Adding EPYC Embedded 7002 Series as Rome
  - Adding EPYC Embedded 7001 Series as Naples</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1685880000">- update to 1.96.2
  * [Driver]
  - Allows compilation to keep going without CONFIG_ACPI_CPPC_LIB
  * [Client]
  - Adding two command line arguments:
  - Op Show Package C-States
  - OW Toggle Energy units
  * [AMD]
  - Specification of some Configuration MSRs</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1686830400">- update to 1.96.4
  * [AMD]
  - Display CPUID state of new and legacy features:
    Fused Multiply Add [FMA4]
    Extended Operation Support [XOP]
    Translation Cache Extension [TCE]
    Trailing Bit Manipulation [TBM]
    OS Visible Work-around [OSVW]
    LOCK prefix to read CR8 [AltMov]
  * [Intel]
  - Advanced Matrix Extensions [AMX]
  - Bits and Features of Sierra Forest and Grand Ridge
  - Attempt to decode the Meteor Lake Memory Controller
- update to 1.96.3
  * [AMD]
  - [Zeppelin] Probe more than one UMC controllers on Ryzen Threadripper 1900X
  - [Zen4] Dump SMBE and BMEC sub-leaves of CPUID 0x80000020</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1688212800">- update to 1.96.5
  * [AMD]
    Adding the "AMD Ryzen 5 5600X3D"
    Introducing the Zen4c Bergamo architecture
    Specs fixing of Embedded V-series and 3000 Series Processors
    Adding MENDOCINO, RAPHAEL Pro, PHOENIX Pro among others</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1712318400">- added preamble file for %kernel_module_package macro
- update to 1.97.1
  * added aarch64 support
  * upstream did not provide a summary changelog. Full list of commits:
    https://github.com/cyring/CoreFreq/compare/1.96.5...1.97.1</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715860800">- update to 1.97.2
  * [AMD]
  - [Hawk Point] Adding Ryzen PRO processors
  - [Phoenix] Adding the unlocked Ryzen 8000 Series
  * [Intel]
  - [MeteorLake] New bits specified
  - EEO and R2H bits inversion fix in MSR_POWER_CTL (0x1fc)
  - Reverse specification of MSR UNCORE_PERF_STATUS
  - Prefetchers fix of L1 Scrubbing, L1 Next Page and L2 AMP
  * [AArch64]
  - Providing Exclusive Load/Store to atomic operations
  - Improved asm of various macro functions
  - Removed LEGACY macros
  - Optimized the CORE_COUNT macros
  - Marked the Tools feature as nominal: Stress functions available
  - Allow user access to Retired Instructions counter
  - Fix Instructions counter overflow
  - Other PMC enhancements
  * [CR]
  - Fix a building issue with AlmaLinux aka RHEL-9
  - Linux kernel 6.9: Avoid redefinition of Intel MSR macros
  * [Doc]
  - README section for AlmaLinux
  - CONFIG_TRIM_UNUSED_KSYMS kernel build config is forbidden</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715947200">- fix dependency on kernel module that was not versioned</changelog>
</package>
<package pkgid="f18beec6ed896e545543a430a85316bdde91d3658ef5ffe76ea946e3f434319207350a19abd3efe1238fce8413b79d535ae171f28a2b035b95cba52a69a10d05" name="CoreFreq-kmp-default" arch="x86_64">
  <version epoch="0" ver="1.97.2_k6.9.7_1" rel="2.5"/>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1655899200">- Update to version 1.91.3
  * No changelog was made available by upstream</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1661169600">- Update to version 1.91.6
  - [AMD/Zen][UMC] Fixed the Mem Clock and ECC regressions
  - Designate the Package identifier in Power consumed readings
  - [Intel/ADL/IMC] Guessing activated channel from the populated DIMM
  - [AMD][UMC, IOMMU] Adding missing DID of family 19h devices
  - [AMD_DataFabric_Cezanne] Removed the Experimental mode
  - Intel/ADL/IMC: Fixing the Memory Channels count
  - [AMD/Zen] Improved UMC mapping. Threadripper 3960X issue
  - Avoid some NULL pointer strings during SMBIOS decoding</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1667563200">- update to version 1.92.3
  - Export CPUID bits Intel Sierra Forest, Grand Ridge, Granite Rapids
    and completes AMD64 Fn0000_0007_ECX_x0
  - [Features] WBNOINVD and CLZERO instructions
  - Adding various Mitigation Mechanism aggregations:
    IPRED_DIS_U, IPRED_DIS_S, RRSBA_DIS_U, RRSBA_DIS_S, BHI_DIS_S, MCDT_NO
  - RDPID and UMIP capability fixed.
  - [AMD] Perf. Mon. version based on CPUID_0x80000022.EAX.PerfMonV2
  - [AMD][Zen3+][Rembrandt] Trigger UMC and IOMMU decoders
  - [AMD][Ryzen 5 6600H] Found voltage VID @ SMU 0x6f010 and 0x6f014
  - Introducing AMD Security Feature capabilities:
    SKINIT, SEV, GMET, SEV-ES, SEV-SNP
  - [AMD64] Non-architectural MSR: SPECULATIVE STORE BYPASS DISABLE
  - [Intel][2nd &amp; 3rd gen] Misc IMC optimizations
  - [AMD][Rembrandt] Provides Vcore from a new formula.
  - Dumping CPUID leaves from AMD64 Architecture Programmer’s Manual
  - [Intel][HSW &amp; BDW] Compute the DIMM banks
  - [UI] Re-assigned keys to move or resize windows.
  - [AMD][Zen] Uncore frequency: Improving the Memory Clock divisor
  - [Intel][HSW &amp; BDW][SKL] Make use of same function DimmWidthToRows
  - [AMD][Zen3+][Rembrandt] Provides the thermal sensor.
  - [AMD/Zen2 &amp; Zen3] Removed the HSMP capability.
  - [Intel][CML][RKL][TGL] Compute the DIMM Rows from CH_WIDTH
  - [AMD/EPYC] Adding the CPUID of Zen4 Genoa architecture
  - [AMD/Zen2] Introducing Mendocino architecture
  - Changed MeteorLake/N to CPUID 06_B5
  - [Intel] Computes BIOS DRAM frequency based on PLL_REF100
  - [Intel][SNB/IVB/HSW/BDW] Improved BIOS DRAM frequency
  - [Intel][SNB/IVB] DRAM frequency based on RAM_Select and FSB_Select
  - [Intel][IVB] IMC specifications and optimizations.
  - [Intel][SNB,IVB] Computes the DIMM A from DAS bit in MAD register
  - [Intel][SNB,IVB,HSW,BDW] Rolling back changes to the DIMM topology
  - [Intel][BDW][HSW] Query the IMC Power Down Mode
  - [Intel][IVB][SNB] Attempt to decode the IMC third timings
  - [AMD][Ryzen] Added AMD Ryzen 7 PRO 6860Z
  - [AMD][F17h-F19h] Can toggle ON and OFF the Instruction Cache Unit
  - [AMD] Checking the Ryzen "OEM Only" processors
  - [Intel] Specification of 12th Gen. MSR registers capability
  - [Intel] Adding Raptor Lake-S with CPUID 06_BF
  - [AMD] Introducing Zen 4 / Raphael architecture
  - [Intel][SNB,IVB,HSW] Attempt to assign the Rank per DIMM slot
  - [Intel][SNB,IVB,HSW] Attempt to fix the DIMM(s) topology layout
  - ClockSource: TSC udelay() asm implementation builtin as a default
  - [Intel][Alder Lake] Adding IMC entry for i5-12500 processor
  - [Intel][Alder Lake] Added default case if Processor has only Pcores
  - [Intel][Atom/Bonnell][IMC] Attempt to compute the DIMM geometry
  - [UI][Custom view] Show the Uncore unit in watt or joule
  - [UI] Display HWP or CPPC in footer for capable processors.
  - [CLI] Added HWP Capabilities and HWP Request to the JSON export
  - [CLI] Don't allow the HWP dialog box if feature is not available.
  - [CPPC][Firmware] allows (de)activation of the feature.
  - [CLI] Added CPU ratios to JSON export
  - [CPPC] Improved scaling
  - [CPPC] Build fixed down to Kernel version 3
  - [Kernel/ACPI] Attempt to write CPPC registers</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1667563201">- Repair deficient description grammar.</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1670241600">- update to 1.92.4:
  * [Intel/Skylake-X] Permits MSR_RING_PERF_LIMIT_REASONS</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1670932800">- removed modprobe_corefreqd.service.patch and harden_corefreqd.service.patch
  now included in new corefreqd.service file replacing stock one
- update to 1.93.1
  * [PRJ] CoreFreq version 1.93.1
  * [ACPI/CPPC/EPP] Preview of AMD/Zen Energy Preference (CONFIG_CACHY)
  * [UI] Changed the HWP or CPPC ratio bounds.
  * [FIX] Putting `corefreqd` in the root cgroup (issue #379) Thanks to gel-crabs
  * [DOC] Parameters to blacklist the amd_pstate since kernel 6.0.11
  * [AMD][Zen4] Apply a voltage formula based on Rembrandt's. (#378)
  * [AMD][Zen4/Raphael] Attempting temperature per CCD from TCTL+0x308
  * [AMD][Zen4] Changed Timer loop
  * [CR] CLI code review and UI optimizations
  * [UI] Auto refresh the Topology items when off/online
  * [CR] Conditionally build with additional PMC Counters
  * [Intel] Adding Z8000 System Memory Controller Registers
  * [CR] Transformed global variable in cells padding
  * [UI] Windows re-scaling fix
  * [UI] Apply color theming to the CPPC capabilities list.
  * [AMD][Raphael] Adding device DIDs to probe UMC and IOMMU
  * [CPPC/FMW] Computes value bounds while Enabling/Disabling firmware
  * [CR] CPPC lib errors are now raised to Debug level
  * [AMD][Zen4] Increased the UMC size to 12 channels.
  * [CPPC] Handles the OffLine CPU case.
  * [CLI] Refactoring HWP/CPPC to print all capabilities per CPU
  * [ACPI] Computes the CPPC Bounds
  * [Intel] Linear Address Masking (LAM)
  * [CLI] EFER: Left aligned labels
  * [AMD] Reports UAIE and AIBRSE bits from EFER system register
  * [CLI] Changed mitigation mechanisms incapability labels
  * [AMD][Zen2] Mitigation Mechanism BTC-NOBR * ACPI/OSPM documentation
  * [CR] Code review on bit masks
  * [CPPC][ACPI] Kernel may decode the Guaranteed Performance Register
  * [UI] Optimize the cycles to clear the time bar.
  * [CR] Code review for extra compiler warnings
  * [UI] Time of the day displayed in the right side of menu
  * [UI] Display the current date and time in menu bar
  * [Kernel] Introducing support of `CONFIG_SCHED_BORE`
  * [CLI] Fixing ambiguous CPPC report: hardware vs firmware
  * [CLI] Surrounds _CPC feature with square brackets
  * [CPPC] Provides the ACPI _CPC object state.
  * [UI] Colors the task being tracked in the tracking list
  * [UI] Display the current time in the menu bar
  * [CLI] Reserve the programmable TDP section to Intel processors.
  * [AMD/Zen3+] Improving the DIMM geometry of Rembrandt UMC</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1672747200">- update to 1.94.1:
  * [Intel] Gemini Lake
  * [AMD] Ryzen 5 6600 H SoC, UMC channels
  * [AMD] Rembrandt: maximum of two UMC channels
  * [AMD] Raphael: Decodes DIMM geometry from AddrCfg
  * [AMD] Zen: Aggregation refactored
  * [AMD] Improved DDR5 clock decoding
  * Optimized Idle Loop</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1673006400">- update to 1.94.3:
  * [AMD][RMB] If UMC is quad channels then unpopulate odd channels
  * [AMD][RPL] Provide Service Processor Vcore as workaround
  * [UI] Auto size and lay performance capabilities window
  * [UI] Adding comments to the EEO and R2H technologies
  * [AMD][Raphael] 7950X3D, 7900X3D. support</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1674475200">- update to 1.95.1:
  * [Intel] RPL: voltage of Pcore, Ecore, System Agent
  * [Intel] RPL and ADL Chipset device IDs
  * [Intel] Decode the RPL IMC and improve DDR5 support
  * [Build] Raise `MAX_FREQ_HZ` up to 7125000000 Hertz
  * [Intel] Mobile {Coffee Lake, Kaby Lake} codenames
  * [Intel] Braswell codename detection
  * [AMD] SYSCFG Register
  * [AMD] EPYC 9654
  * [AMD] Transparent SME
  * [AMD] DRAM Data Scrambling
  * [AMD] Adding "Barcelo R" and "Rembrandt R"</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1675944000">- update to 1.95.2:
  * Fixed the aggregation of the minimum ratio
  Intel:
  * [Airmont][Silvermont] Attempt to decode `tCKE` from DRMC
    register
  * [Airmont] Improve `tWTPr`, `B2B`, `tWWDR` timings
  * [Airmont] Provide a new IMC decoder
  * Add the Emerald Rapids architecture entry
  * [DDR5][DDR4] Add the `RCDw` IMC timing
  * [Raptor Lake ] De-activate the MSR Uncore counter
  AMD:
  * "Zen3/Barcelo-R" and "Zen3+ Rembrandt-R" codenames
  * [Zen] Thermal highest limit reset fix
  Misc:
  * Code review and Registers documentation:
    AMD HWCR, Intel HDC and DRP</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677067200">- update to 1.95.4
  * [Intel] [from 11th to 14th gen]
    Convert the DRAM Speed to MT/s unit
    Compute the Bus Rate based on the BIOS MC PLL
- update to 1.95.3
  * [Intel] [Airmont]
    Improved the IMC geometry
    Introducing the Spreadtrum architecture
    Fixed the Bus and DRAM frequency rates
  * [Intel] [from 11th to 13th gen] Attempt to probe the interleaved controllers
  * [Intel] [Alder Lake/H] Attempt to decode the TCO Watchdog</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677153600">- added leap_compile_fix.patch to fix compilation on Leap</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1683115200">- removed leap_compile_fix.patch no needed anymore
- update to 1.96.0
  * [AMD]
    [RPL/X3D] Disabling the turbo boosted P-states change
    [PHOENIX] Adding Z1, U and HS PRO series.
    [Genoa] DAC address at UMC BAR + 0x40
    [Zen4] Adding the PCI entries of Genoa
    [Zen2] Adding remaining PCI entries
    [Zen] Query DAC &amp; CFG with the right UMC base address register
    [Zen4] Dump the CPUID Extended CPU Topology leaves.
    [Zen][Embedded][Banded Kestrel] R1000 Processor Family
    [Zen][Embedded] "Great Horned Owl", "River Hawk", "Grey Hawk"
    Complete the "Raven Ridge" and "Picasso" lists
    [EPYC] Moved "Snowy Owl" Embedded processors to CPUID 8F_01
    [Zen4] introducing Phoenix and Dragon Range
    [RMB] adding the Ryzen Embedded V3000 processors
    [VMR] adding the "AMD Ryzen 9 PRO 5945"
  * [Intel]
    Adding Granite Rapids, Sierra Forest, Grand Ridge entries
    Adding "Lunar Lake" and "Arrow Lake" entries.
  * [UI]
    Optimized decimal to digits converter
    Allow task tracker to select up to pid_max
    Can trace the frozen states of Linux tasks.
    Only print HWP frequencies within bounds.
    Fix ruler's aggregation.
  * [CR]
    Check CPUID[HV_PARTITION_PRIVILEGE_MASK] for HV_X64_MSR_VP_RUNTIME
    Uninitialized variable fix.
    [CPPC] Build EPP with KERNEL_VERSION(6) rather than CONFIG_CACHY
    [KERNEL] Linux 6.3: Employ modifier calls with the vma-&gt;vm_flags</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1684065600">- update to 1.96.1
  * [Driver]
  - Postpone Clock Source registration during startup until the Base Clock is computed.
  - Change class_create() according to Linux Kernel 6.4
  - Clear interrupt flag (cli) after Halt in the Idle method
  * [AMD]
  - [PHOENIX] Adding Ryzen 7940H, 7840H, 7640H
  - [VERMEER] Adding Ryzen PRO and Embedded processors
  - Ryzen Z1 CPUID' brand fix
  - Adding EPYC Embedded 9004 Series as Genoa
  - Adding EPYC Embedded 7003 Series as Milan
  - Adding EPYC Embedded 7002 Series as Rome
  - Adding EPYC Embedded 7001 Series as Naples</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1685880000">- update to 1.96.2
  * [Driver]
  - Allows compilation to keep going without CONFIG_ACPI_CPPC_LIB
  * [Client]
  - Adding two command line arguments:
  - Op Show Package C-States
  - OW Toggle Energy units
  * [AMD]
  - Specification of some Configuration MSRs</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1686830400">- update to 1.96.4
  * [AMD]
  - Display CPUID state of new and legacy features:
    Fused Multiply Add [FMA4]
    Extended Operation Support [XOP]
    Translation Cache Extension [TCE]
    Trailing Bit Manipulation [TBM]
    OS Visible Work-around [OSVW]
    LOCK prefix to read CR8 [AltMov]
  * [Intel]
  - Advanced Matrix Extensions [AMX]
  - Bits and Features of Sierra Forest and Grand Ridge
  - Attempt to decode the Meteor Lake Memory Controller
- update to 1.96.3
  * [AMD]
  - [Zeppelin] Probe more than one UMC controllers on Ryzen Threadripper 1900X
  - [Zen4] Dump SMBE and BMEC sub-leaves of CPUID 0x80000020</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1688212800">- update to 1.96.5
  * [AMD]
    Adding the "AMD Ryzen 5 5600X3D"
    Introducing the Zen4c Bergamo architecture
    Specs fixing of Embedded V-series and 3000 Series Processors
    Adding MENDOCINO, RAPHAEL Pro, PHOENIX Pro among others</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1712318400">- added preamble file for %kernel_module_package macro
- update to 1.97.1
  * added aarch64 support
  * upstream did not provide a summary changelog. Full list of commits:
    https://github.com/cyring/CoreFreq/compare/1.96.5...1.97.1</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715860800">- update to 1.97.2
  * [AMD]
  - [Hawk Point] Adding Ryzen PRO processors
  - [Phoenix] Adding the unlocked Ryzen 8000 Series
  * [Intel]
  - [MeteorLake] New bits specified
  - EEO and R2H bits inversion fix in MSR_POWER_CTL (0x1fc)
  - Reverse specification of MSR UNCORE_PERF_STATUS
  - Prefetchers fix of L1 Scrubbing, L1 Next Page and L2 AMP
  * [AArch64]
  - Providing Exclusive Load/Store to atomic operations
  - Improved asm of various macro functions
  - Removed LEGACY macros
  - Optimized the CORE_COUNT macros
  - Marked the Tools feature as nominal: Stress functions available
  - Allow user access to Retired Instructions counter
  - Fix Instructions counter overflow
  - Other PMC enhancements
  * [CR]
  - Fix a building issue with AlmaLinux aka RHEL-9
  - Linux kernel 6.9: Avoid redefinition of Intel MSR macros
  * [Doc]
  - README section for AlmaLinux
  - CONFIG_TRIM_UNUSED_KSYMS kernel build config is forbidden</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715947200">- fix dependency on kernel module that was not versioned</changelog>
</package>
<package pkgid="ffbef02b4ba4e7901eedff3c5e509ef970117c569d05e9488407bf41a8b9985b13b8ef24a786e66ff6e02801c522997c464a30e12807135b5c1b0653c62a9b19" name="CoreFreq-kmp-default" arch="x86_64">
  <version epoch="0" ver="1.98.1_k6.10.3_1" rel="1.1"/>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1667563200">- update to version 1.92.3
  - Export CPUID bits Intel Sierra Forest, Grand Ridge, Granite Rapids
    and completes AMD64 Fn0000_0007_ECX_x0
  - [Features] WBNOINVD and CLZERO instructions
  - Adding various Mitigation Mechanism aggregations:
    IPRED_DIS_U, IPRED_DIS_S, RRSBA_DIS_U, RRSBA_DIS_S, BHI_DIS_S, MCDT_NO
  - RDPID and UMIP capability fixed.
  - [AMD] Perf. Mon. version based on CPUID_0x80000022.EAX.PerfMonV2
  - [AMD][Zen3+][Rembrandt] Trigger UMC and IOMMU decoders
  - [AMD][Ryzen 5 6600H] Found voltage VID @ SMU 0x6f010 and 0x6f014
  - Introducing AMD Security Feature capabilities:
    SKINIT, SEV, GMET, SEV-ES, SEV-SNP
  - [AMD64] Non-architectural MSR: SPECULATIVE STORE BYPASS DISABLE
  - [Intel][2nd &amp; 3rd gen] Misc IMC optimizations
  - [AMD][Rembrandt] Provides Vcore from a new formula.
  - Dumping CPUID leaves from AMD64 Architecture Programmer’s Manual
  - [Intel][HSW &amp; BDW] Compute the DIMM banks
  - [UI] Re-assigned keys to move or resize windows.
  - [AMD][Zen] Uncore frequency: Improving the Memory Clock divisor
  - [Intel][HSW &amp; BDW][SKL] Make use of same function DimmWidthToRows
  - [AMD][Zen3+][Rembrandt] Provides the thermal sensor.
  - [AMD/Zen2 &amp; Zen3] Removed the HSMP capability.
  - [Intel][CML][RKL][TGL] Compute the DIMM Rows from CH_WIDTH
  - [AMD/EPYC] Adding the CPUID of Zen4 Genoa architecture
  - [AMD/Zen2] Introducing Mendocino architecture
  - Changed MeteorLake/N to CPUID 06_B5
  - [Intel] Computes BIOS DRAM frequency based on PLL_REF100
  - [Intel][SNB/IVB/HSW/BDW] Improved BIOS DRAM frequency
  - [Intel][SNB/IVB] DRAM frequency based on RAM_Select and FSB_Select
  - [Intel][IVB] IMC specifications and optimizations.
  - [Intel][SNB,IVB] Computes the DIMM A from DAS bit in MAD register
  - [Intel][SNB,IVB,HSW,BDW] Rolling back changes to the DIMM topology
  - [Intel][BDW][HSW] Query the IMC Power Down Mode
  - [Intel][IVB][SNB] Attempt to decode the IMC third timings
  - [AMD][Ryzen] Added AMD Ryzen 7 PRO 6860Z
  - [AMD][F17h-F19h] Can toggle ON and OFF the Instruction Cache Unit
  - [AMD] Checking the Ryzen "OEM Only" processors
  - [Intel] Specification of 12th Gen. MSR registers capability
  - [Intel] Adding Raptor Lake-S with CPUID 06_BF
  - [AMD] Introducing Zen 4 / Raphael architecture
  - [Intel][SNB,IVB,HSW] Attempt to assign the Rank per DIMM slot
  - [Intel][SNB,IVB,HSW] Attempt to fix the DIMM(s) topology layout
  - ClockSource: TSC udelay() asm implementation builtin as a default
  - [Intel][Alder Lake] Adding IMC entry for i5-12500 processor
  - [Intel][Alder Lake] Added default case if Processor has only Pcores
  - [Intel][Atom/Bonnell][IMC] Attempt to compute the DIMM geometry
  - [UI][Custom view] Show the Uncore unit in watt or joule
  - [UI] Display HWP or CPPC in footer for capable processors.
  - [CLI] Added HWP Capabilities and HWP Request to the JSON export
  - [CLI] Don't allow the HWP dialog box if feature is not available.
  - [CPPC][Firmware] allows (de)activation of the feature.
  - [CLI] Added CPU ratios to JSON export
  - [CPPC] Improved scaling
  - [CPPC] Build fixed down to Kernel version 3
  - [Kernel/ACPI] Attempt to write CPPC registers</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1667563201">- Repair deficient description grammar.</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1670241600">- update to 1.92.4:
  * [Intel/Skylake-X] Permits MSR_RING_PERF_LIMIT_REASONS</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1670932800">- removed modprobe_corefreqd.service.patch and harden_corefreqd.service.patch
  now included in new corefreqd.service file replacing stock one
- update to 1.93.1
  * [PRJ] CoreFreq version 1.93.1
  * [ACPI/CPPC/EPP] Preview of AMD/Zen Energy Preference (CONFIG_CACHY)
  * [UI] Changed the HWP or CPPC ratio bounds.
  * [FIX] Putting `corefreqd` in the root cgroup (issue #379) Thanks to gel-crabs
  * [DOC] Parameters to blacklist the amd_pstate since kernel 6.0.11
  * [AMD][Zen4] Apply a voltage formula based on Rembrandt's. (#378)
  * [AMD][Zen4/Raphael] Attempting temperature per CCD from TCTL+0x308
  * [AMD][Zen4] Changed Timer loop
  * [CR] CLI code review and UI optimizations
  * [UI] Auto refresh the Topology items when off/online
  * [CR] Conditionally build with additional PMC Counters
  * [Intel] Adding Z8000 System Memory Controller Registers
  * [CR] Transformed global variable in cells padding
  * [UI] Windows re-scaling fix
  * [UI] Apply color theming to the CPPC capabilities list.
  * [AMD][Raphael] Adding device DIDs to probe UMC and IOMMU
  * [CPPC/FMW] Computes value bounds while Enabling/Disabling firmware
  * [CR] CPPC lib errors are now raised to Debug level
  * [AMD][Zen4] Increased the UMC size to 12 channels.
  * [CPPC] Handles the OffLine CPU case.
  * [CLI] Refactoring HWP/CPPC to print all capabilities per CPU
  * [ACPI] Computes the CPPC Bounds
  * [Intel] Linear Address Masking (LAM)
  * [CLI] EFER: Left aligned labels
  * [AMD] Reports UAIE and AIBRSE bits from EFER system register
  * [CLI] Changed mitigation mechanisms incapability labels
  * [AMD][Zen2] Mitigation Mechanism BTC-NOBR * ACPI/OSPM documentation
  * [CR] Code review on bit masks
  * [CPPC][ACPI] Kernel may decode the Guaranteed Performance Register
  * [UI] Optimize the cycles to clear the time bar.
  * [CR] Code review for extra compiler warnings
  * [UI] Time of the day displayed in the right side of menu
  * [UI] Display the current date and time in menu bar
  * [Kernel] Introducing support of `CONFIG_SCHED_BORE`
  * [CLI] Fixing ambiguous CPPC report: hardware vs firmware
  * [CLI] Surrounds _CPC feature with square brackets
  * [CPPC] Provides the ACPI _CPC object state.
  * [UI] Colors the task being tracked in the tracking list
  * [UI] Display the current time in the menu bar
  * [CLI] Reserve the programmable TDP section to Intel processors.
  * [AMD/Zen3+] Improving the DIMM geometry of Rembrandt UMC</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1672747200">- update to 1.94.1:
  * [Intel] Gemini Lake
  * [AMD] Ryzen 5 6600 H SoC, UMC channels
  * [AMD] Rembrandt: maximum of two UMC channels
  * [AMD] Raphael: Decodes DIMM geometry from AddrCfg
  * [AMD] Zen: Aggregation refactored
  * [AMD] Improved DDR5 clock decoding
  * Optimized Idle Loop</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1673006400">- update to 1.94.3:
  * [AMD][RMB] If UMC is quad channels then unpopulate odd channels
  * [AMD][RPL] Provide Service Processor Vcore as workaround
  * [UI] Auto size and lay performance capabilities window
  * [UI] Adding comments to the EEO and R2H technologies
  * [AMD][Raphael] 7950X3D, 7900X3D. support</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1674475200">- update to 1.95.1:
  * [Intel] RPL: voltage of Pcore, Ecore, System Agent
  * [Intel] RPL and ADL Chipset device IDs
  * [Intel] Decode the RPL IMC and improve DDR5 support
  * [Build] Raise `MAX_FREQ_HZ` up to 7125000000 Hertz
  * [Intel] Mobile {Coffee Lake, Kaby Lake} codenames
  * [Intel] Braswell codename detection
  * [AMD] SYSCFG Register
  * [AMD] EPYC 9654
  * [AMD] Transparent SME
  * [AMD] DRAM Data Scrambling
  * [AMD] Adding "Barcelo R" and "Rembrandt R"</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1675944000">- update to 1.95.2:
  * Fixed the aggregation of the minimum ratio
  Intel:
  * [Airmont][Silvermont] Attempt to decode `tCKE` from DRMC
    register
  * [Airmont] Improve `tWTPr`, `B2B`, `tWWDR` timings
  * [Airmont] Provide a new IMC decoder
  * Add the Emerald Rapids architecture entry
  * [DDR5][DDR4] Add the `RCDw` IMC timing
  * [Raptor Lake ] De-activate the MSR Uncore counter
  AMD:
  * "Zen3/Barcelo-R" and "Zen3+ Rembrandt-R" codenames
  * [Zen] Thermal highest limit reset fix
  Misc:
  * Code review and Registers documentation:
    AMD HWCR, Intel HDC and DRP</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677067200">- update to 1.95.4
  * [Intel] [from 11th to 14th gen]
    Convert the DRAM Speed to MT/s unit
    Compute the Bus Rate based on the BIOS MC PLL
- update to 1.95.3
  * [Intel] [Airmont]
    Improved the IMC geometry
    Introducing the Spreadtrum architecture
    Fixed the Bus and DRAM frequency rates
  * [Intel] [from 11th to 13th gen] Attempt to probe the interleaved controllers
  * [Intel] [Alder Lake/H] Attempt to decode the TCO Watchdog</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677153600">- added leap_compile_fix.patch to fix compilation on Leap</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1683115200">- removed leap_compile_fix.patch no needed anymore
- update to 1.96.0
  * [AMD]
    [RPL/X3D] Disabling the turbo boosted P-states change
    [PHOENIX] Adding Z1, U and HS PRO series.
    [Genoa] DAC address at UMC BAR + 0x40
    [Zen4] Adding the PCI entries of Genoa
    [Zen2] Adding remaining PCI entries
    [Zen] Query DAC &amp; CFG with the right UMC base address register
    [Zen4] Dump the CPUID Extended CPU Topology leaves.
    [Zen][Embedded][Banded Kestrel] R1000 Processor Family
    [Zen][Embedded] "Great Horned Owl", "River Hawk", "Grey Hawk"
    Complete the "Raven Ridge" and "Picasso" lists
    [EPYC] Moved "Snowy Owl" Embedded processors to CPUID 8F_01
    [Zen4] introducing Phoenix and Dragon Range
    [RMB] adding the Ryzen Embedded V3000 processors
    [VMR] adding the "AMD Ryzen 9 PRO 5945"
  * [Intel]
    Adding Granite Rapids, Sierra Forest, Grand Ridge entries
    Adding "Lunar Lake" and "Arrow Lake" entries.
  * [UI]
    Optimized decimal to digits converter
    Allow task tracker to select up to pid_max
    Can trace the frozen states of Linux tasks.
    Only print HWP frequencies within bounds.
    Fix ruler's aggregation.
  * [CR]
    Check CPUID[HV_PARTITION_PRIVILEGE_MASK] for HV_X64_MSR_VP_RUNTIME
    Uninitialized variable fix.
    [CPPC] Build EPP with KERNEL_VERSION(6) rather than CONFIG_CACHY
    [KERNEL] Linux 6.3: Employ modifier calls with the vma-&gt;vm_flags</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1684065600">- update to 1.96.1
  * [Driver]
  - Postpone Clock Source registration during startup until the Base Clock is computed.
  - Change class_create() according to Linux Kernel 6.4
  - Clear interrupt flag (cli) after Halt in the Idle method
  * [AMD]
  - [PHOENIX] Adding Ryzen 7940H, 7840H, 7640H
  - [VERMEER] Adding Ryzen PRO and Embedded processors
  - Ryzen Z1 CPUID' brand fix
  - Adding EPYC Embedded 9004 Series as Genoa
  - Adding EPYC Embedded 7003 Series as Milan
  - Adding EPYC Embedded 7002 Series as Rome
  - Adding EPYC Embedded 7001 Series as Naples</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1685880000">- update to 1.96.2
  * [Driver]
  - Allows compilation to keep going without CONFIG_ACPI_CPPC_LIB
  * [Client]
  - Adding two command line arguments:
  - Op Show Package C-States
  - OW Toggle Energy units
  * [AMD]
  - Specification of some Configuration MSRs</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1686830400">- update to 1.96.4
  * [AMD]
  - Display CPUID state of new and legacy features:
    Fused Multiply Add [FMA4]
    Extended Operation Support [XOP]
    Translation Cache Extension [TCE]
    Trailing Bit Manipulation [TBM]
    OS Visible Work-around [OSVW]
    LOCK prefix to read CR8 [AltMov]
  * [Intel]
  - Advanced Matrix Extensions [AMX]
  - Bits and Features of Sierra Forest and Grand Ridge
  - Attempt to decode the Meteor Lake Memory Controller
- update to 1.96.3
  * [AMD]
  - [Zeppelin] Probe more than one UMC controllers on Ryzen Threadripper 1900X
  - [Zen4] Dump SMBE and BMEC sub-leaves of CPUID 0x80000020</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1688212800">- update to 1.96.5
  * [AMD]
    Adding the "AMD Ryzen 5 5600X3D"
    Introducing the Zen4c Bergamo architecture
    Specs fixing of Embedded V-series and 3000 Series Processors
    Adding MENDOCINO, RAPHAEL Pro, PHOENIX Pro among others</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1712318400">- added preamble file for %kernel_module_package macro
- update to 1.97.1
  * added aarch64 support
  * upstream did not provide a summary changelog. Full list of commits:
    https://github.com/cyring/CoreFreq/compare/1.96.5...1.97.1</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715860800">- update to 1.97.2
  * [AMD]
  - [Hawk Point] Adding Ryzen PRO processors
  - [Phoenix] Adding the unlocked Ryzen 8000 Series
  * [Intel]
  - [MeteorLake] New bits specified
  - EEO and R2H bits inversion fix in MSR_POWER_CTL (0x1fc)
  - Reverse specification of MSR UNCORE_PERF_STATUS
  - Prefetchers fix of L1 Scrubbing, L1 Next Page and L2 AMP
  * [AArch64]
  - Providing Exclusive Load/Store to atomic operations
  - Improved asm of various macro functions
  - Removed LEGACY macros
  - Optimized the CORE_COUNT macros
  - Marked the Tools feature as nominal: Stress functions available
  - Allow user access to Retired Instructions counter
  - Fix Instructions counter overflow
  - Other PMC enhancements
  * [CR]
  - Fix a building issue with AlmaLinux aka RHEL-9
  - Linux kernel 6.9: Avoid redefinition of Intel MSR macros
  * [Doc]
  - README section for AlmaLinux
  - CONFIG_TRIM_UNUSED_KSYMS kernel build config is forbidden</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715947200">- fix dependency on kernel module that was not versioned</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1722081600">- update to 1.98.0
  * [Build]
  - Change dkms configuration to install into /usr/bin/
  - Solved compilation with Fedora using RHEL MINOR version number 99
  - [CR] Fixed some compilation warnings
  - [CR] Fix memory allocation in kernel pages for the SysGate
  - Workaround to musl change in basename (#494)
  - aarch64: Build with Redhat RHEL version 9
  - [CR] x86_64: Prevent array size overflow
  - dkms and ckms configuration files upgraded to version 1.98
  * [Intel]
  - [Raptor Lake] Adding the HB DID of i7-14700K' IMC
  - Mitigation mechanism: GDS_NO; RFDS_NO; MONITOR_MITG_NO
  - Apply some SDM Documentation Changes
  - [MTL] Fix CMD Stretch bit range width
  - Added method CLOCK_FLEX_MAX with Xeon's Nehalem &amp; Core 2
  - Grants full MSR_FLEX_RATIO access to tested architectures:
  - Alder Lake/S
  - Tiger Lake/U
  - Westmere/Gulftown
  - Provides the overclocking bins with unlocked processors
  - Query the Overclocking bit (OC) from Capabilities
  - Adding technologies: VMD, HDCP, IPU and VPU
  - Volume Management Device
  - High-Bandwidth Digital Content Protection
  - Image Processing Unit
  - Vision Processing Unit
  - Gaussian &amp; Neural Accelerator - GNA technology
  - [CR] Renamed Gemini Lake structures
  - [Meteor Lake] Introducing memory controller decoder
  * [AArch64]
  - Optimizing the Vcore seek
  - Workaround to Package discrete voltage: the highest Vcore
  - Improving computation of Euclidean division
  - Adjust frequency division in CNTFRQ and PMU counters
  - Scale a frequency factor from the interval
  - Refactoring the frequency ratios for decimal precision
  - Compile dev_pm_opp_put if Kernel greater or equal 4.11
  - Get the voltage core of CPUs from OPP
  * [AMD]
  - [Zen4][Raphael] Adding the EPYC 4004 Series
  - [Zen4] Clarify Hawk Point and Phoenix-Refresh architectures
  - [Family 19h] New voltage formula assigned to model 61h
  - Vcore activated
  - Voltage SoC deactivated
  - [Zen] Prevent the calculation of negative temperature (issue #496)
  - [Family 18h] Documented Hygon C86 7375
  - [Family 19h] PStateDef specification: Adding VID[8] bit 32
  - Specification of MSR HW_PSTATE_STATUS
  * [CLI]
  - aarch64: Display the state of the Memory Management Unit (MMU)
  - aarch64: State of Instruction Cache Unit I$ and Data Cache Unit D$
  - Added UI_RULER_MINIMUM &amp; UI_RULER_MAXIMUM building constraints
  - Revert "[CLI] Responsive ruler to architectural context"
  - This reverts commit 4bc38d6.
  - x86_64: AMD Boost and P-States redesigned
  - [UI] Hardening missing console/terminal size
  - Responsive ruler to architectural context
  - x86_64: Make HDCP meaning string shorter
  * [Driver]
  - Created C2U_Enable as a parameter alias of C1U_Enable</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1723032000">- update to 1.98.1
  * [AMD]
  - [Zen] Inject threshold events when thermal is out of bounds
  - Generic Zen architectures renamed with their Family number
  - Added a generic entry for the 1A family
  - Configure TjMax for multiple Ryzen and Threadripper
  - [CR] Optimize AMD temperature filtering function
  - [Zen5] Introducing the Eldora architecture aka "Granite Ridge"
  - [Zen5] Adding entries for Strix Point
  * [Intel]
  - Feature-bits of Core Ultra architecture
  - [TGL][ADL][RPL] New devices to probe IMC and Watchdog
  - [Raptor Lake-E] Adding the IMC probing entries
  - Grant full MSR_FLEX_RATIO access to Raptor Lake (06_B7)
  - Added Host Bridge DIDs of Raptor Lake-E
  - [ADL ... MTL] Code review of IMC decoders
  - [ADL] Compute DIMM Bank and Columns on both channels
  - [ADL] Process channels differently depending on DDR4 or DDR5
  - 12th to 14th generation IMC decoder refactoring
  - [ADL ... MTL] Adding Memory Controller Virtual Channel Count
  - [ADL ... MTL] Channel count as a function of DDPCD DDR_TYPE
  - [ADL ... MTL] Keep all enabled memory controllers
  - [12th and superior] Compute tWR quantity as a function of DDR version
  * [Build]
  - Now leave version number in Makefile
  - Pretty print the build and the clean of outputs
    Allow the V=n option increase the verbose level (incl. kernel)
  - CPU-Freq build against Linux Kernel version 6.11
  * [Documentation]
  - Refreshed README and Makefile</changelog>
</package>
<package pkgid="b6c428f06b89cfc93f597be7940f539d2a02f533396fd0f2a1f2bb663051c9030159bcca67eaf34f26514176d8ba1bf9906dfbd53d56dd5706650739de91f49e" name="CoreFreq-kmp-default" arch="x86_64">
  <version epoch="0" ver="1.98.2_k6.10.5_1" rel="1.3"/>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1667563200">- Repair deficient description grammar.</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1670241600">- update to 1.92.4:
  * [Intel/Skylake-X] Permits MSR_RING_PERF_LIMIT_REASONS</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1670932800">- removed modprobe_corefreqd.service.patch and harden_corefreqd.service.patch
  now included in new corefreqd.service file replacing stock one
- update to 1.93.1
  * [PRJ] CoreFreq version 1.93.1
  * [ACPI/CPPC/EPP] Preview of AMD/Zen Energy Preference (CONFIG_CACHY)
  * [UI] Changed the HWP or CPPC ratio bounds.
  * [FIX] Putting `corefreqd` in the root cgroup (issue #379) Thanks to gel-crabs
  * [DOC] Parameters to blacklist the amd_pstate since kernel 6.0.11
  * [AMD][Zen4] Apply a voltage formula based on Rembrandt's. (#378)
  * [AMD][Zen4/Raphael] Attempting temperature per CCD from TCTL+0x308
  * [AMD][Zen4] Changed Timer loop
  * [CR] CLI code review and UI optimizations
  * [UI] Auto refresh the Topology items when off/online
  * [CR] Conditionally build with additional PMC Counters
  * [Intel] Adding Z8000 System Memory Controller Registers
  * [CR] Transformed global variable in cells padding
  * [UI] Windows re-scaling fix
  * [UI] Apply color theming to the CPPC capabilities list.
  * [AMD][Raphael] Adding device DIDs to probe UMC and IOMMU
  * [CPPC/FMW] Computes value bounds while Enabling/Disabling firmware
  * [CR] CPPC lib errors are now raised to Debug level
  * [AMD][Zen4] Increased the UMC size to 12 channels.
  * [CPPC] Handles the OffLine CPU case.
  * [CLI] Refactoring HWP/CPPC to print all capabilities per CPU
  * [ACPI] Computes the CPPC Bounds
  * [Intel] Linear Address Masking (LAM)
  * [CLI] EFER: Left aligned labels
  * [AMD] Reports UAIE and AIBRSE bits from EFER system register
  * [CLI] Changed mitigation mechanisms incapability labels
  * [AMD][Zen2] Mitigation Mechanism BTC-NOBR * ACPI/OSPM documentation
  * [CR] Code review on bit masks
  * [CPPC][ACPI] Kernel may decode the Guaranteed Performance Register
  * [UI] Optimize the cycles to clear the time bar.
  * [CR] Code review for extra compiler warnings
  * [UI] Time of the day displayed in the right side of menu
  * [UI] Display the current date and time in menu bar
  * [Kernel] Introducing support of `CONFIG_SCHED_BORE`
  * [CLI] Fixing ambiguous CPPC report: hardware vs firmware
  * [CLI] Surrounds _CPC feature with square brackets
  * [CPPC] Provides the ACPI _CPC object state.
  * [UI] Colors the task being tracked in the tracking list
  * [UI] Display the current time in the menu bar
  * [CLI] Reserve the programmable TDP section to Intel processors.
  * [AMD/Zen3+] Improving the DIMM geometry of Rembrandt UMC</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1672747200">- update to 1.94.1:
  * [Intel] Gemini Lake
  * [AMD] Ryzen 5 6600 H SoC, UMC channels
  * [AMD] Rembrandt: maximum of two UMC channels
  * [AMD] Raphael: Decodes DIMM geometry from AddrCfg
  * [AMD] Zen: Aggregation refactored
  * [AMD] Improved DDR5 clock decoding
  * Optimized Idle Loop</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1673006400">- update to 1.94.3:
  * [AMD][RMB] If UMC is quad channels then unpopulate odd channels
  * [AMD][RPL] Provide Service Processor Vcore as workaround
  * [UI] Auto size and lay performance capabilities window
  * [UI] Adding comments to the EEO and R2H technologies
  * [AMD][Raphael] 7950X3D, 7900X3D. support</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1674475200">- update to 1.95.1:
  * [Intel] RPL: voltage of Pcore, Ecore, System Agent
  * [Intel] RPL and ADL Chipset device IDs
  * [Intel] Decode the RPL IMC and improve DDR5 support
  * [Build] Raise `MAX_FREQ_HZ` up to 7125000000 Hertz
  * [Intel] Mobile {Coffee Lake, Kaby Lake} codenames
  * [Intel] Braswell codename detection
  * [AMD] SYSCFG Register
  * [AMD] EPYC 9654
  * [AMD] Transparent SME
  * [AMD] DRAM Data Scrambling
  * [AMD] Adding "Barcelo R" and "Rembrandt R"</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1675944000">- update to 1.95.2:
  * Fixed the aggregation of the minimum ratio
  Intel:
  * [Airmont][Silvermont] Attempt to decode `tCKE` from DRMC
    register
  * [Airmont] Improve `tWTPr`, `B2B`, `tWWDR` timings
  * [Airmont] Provide a new IMC decoder
  * Add the Emerald Rapids architecture entry
  * [DDR5][DDR4] Add the `RCDw` IMC timing
  * [Raptor Lake ] De-activate the MSR Uncore counter
  AMD:
  * "Zen3/Barcelo-R" and "Zen3+ Rembrandt-R" codenames
  * [Zen] Thermal highest limit reset fix
  Misc:
  * Code review and Registers documentation:
    AMD HWCR, Intel HDC and DRP</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677067200">- update to 1.95.4
  * [Intel] [from 11th to 14th gen]
    Convert the DRAM Speed to MT/s unit
    Compute the Bus Rate based on the BIOS MC PLL
- update to 1.95.3
  * [Intel] [Airmont]
    Improved the IMC geometry
    Introducing the Spreadtrum architecture
    Fixed the Bus and DRAM frequency rates
  * [Intel] [from 11th to 13th gen] Attempt to probe the interleaved controllers
  * [Intel] [Alder Lake/H] Attempt to decode the TCO Watchdog</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677153600">- added leap_compile_fix.patch to fix compilation on Leap</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1683115200">- removed leap_compile_fix.patch no needed anymore
- update to 1.96.0
  * [AMD]
    [RPL/X3D] Disabling the turbo boosted P-states change
    [PHOENIX] Adding Z1, U and HS PRO series.
    [Genoa] DAC address at UMC BAR + 0x40
    [Zen4] Adding the PCI entries of Genoa
    [Zen2] Adding remaining PCI entries
    [Zen] Query DAC &amp; CFG with the right UMC base address register
    [Zen4] Dump the CPUID Extended CPU Topology leaves.
    [Zen][Embedded][Banded Kestrel] R1000 Processor Family
    [Zen][Embedded] "Great Horned Owl", "River Hawk", "Grey Hawk"
    Complete the "Raven Ridge" and "Picasso" lists
    [EPYC] Moved "Snowy Owl" Embedded processors to CPUID 8F_01
    [Zen4] introducing Phoenix and Dragon Range
    [RMB] adding the Ryzen Embedded V3000 processors
    [VMR] adding the "AMD Ryzen 9 PRO 5945"
  * [Intel]
    Adding Granite Rapids, Sierra Forest, Grand Ridge entries
    Adding "Lunar Lake" and "Arrow Lake" entries.
  * [UI]
    Optimized decimal to digits converter
    Allow task tracker to select up to pid_max
    Can trace the frozen states of Linux tasks.
    Only print HWP frequencies within bounds.
    Fix ruler's aggregation.
  * [CR]
    Check CPUID[HV_PARTITION_PRIVILEGE_MASK] for HV_X64_MSR_VP_RUNTIME
    Uninitialized variable fix.
    [CPPC] Build EPP with KERNEL_VERSION(6) rather than CONFIG_CACHY
    [KERNEL] Linux 6.3: Employ modifier calls with the vma-&gt;vm_flags</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1684065600">- update to 1.96.1
  * [Driver]
  - Postpone Clock Source registration during startup until the Base Clock is computed.
  - Change class_create() according to Linux Kernel 6.4
  - Clear interrupt flag (cli) after Halt in the Idle method
  * [AMD]
  - [PHOENIX] Adding Ryzen 7940H, 7840H, 7640H
  - [VERMEER] Adding Ryzen PRO and Embedded processors
  - Ryzen Z1 CPUID' brand fix
  - Adding EPYC Embedded 9004 Series as Genoa
  - Adding EPYC Embedded 7003 Series as Milan
  - Adding EPYC Embedded 7002 Series as Rome
  - Adding EPYC Embedded 7001 Series as Naples</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1685880000">- update to 1.96.2
  * [Driver]
  - Allows compilation to keep going without CONFIG_ACPI_CPPC_LIB
  * [Client]
  - Adding two command line arguments:
  - Op Show Package C-States
  - OW Toggle Energy units
  * [AMD]
  - Specification of some Configuration MSRs</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1686830400">- update to 1.96.4
  * [AMD]
  - Display CPUID state of new and legacy features:
    Fused Multiply Add [FMA4]
    Extended Operation Support [XOP]
    Translation Cache Extension [TCE]
    Trailing Bit Manipulation [TBM]
    OS Visible Work-around [OSVW]
    LOCK prefix to read CR8 [AltMov]
  * [Intel]
  - Advanced Matrix Extensions [AMX]
  - Bits and Features of Sierra Forest and Grand Ridge
  - Attempt to decode the Meteor Lake Memory Controller
- update to 1.96.3
  * [AMD]
  - [Zeppelin] Probe more than one UMC controllers on Ryzen Threadripper 1900X
  - [Zen4] Dump SMBE and BMEC sub-leaves of CPUID 0x80000020</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1688212800">- update to 1.96.5
  * [AMD]
    Adding the "AMD Ryzen 5 5600X3D"
    Introducing the Zen4c Bergamo architecture
    Specs fixing of Embedded V-series and 3000 Series Processors
    Adding MENDOCINO, RAPHAEL Pro, PHOENIX Pro among others</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1712318400">- added preamble file for %kernel_module_package macro
- update to 1.97.1
  * added aarch64 support
  * upstream did not provide a summary changelog. Full list of commits:
    https://github.com/cyring/CoreFreq/compare/1.96.5...1.97.1</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715860800">- update to 1.97.2
  * [AMD]
  - [Hawk Point] Adding Ryzen PRO processors
  - [Phoenix] Adding the unlocked Ryzen 8000 Series
  * [Intel]
  - [MeteorLake] New bits specified
  - EEO and R2H bits inversion fix in MSR_POWER_CTL (0x1fc)
  - Reverse specification of MSR UNCORE_PERF_STATUS
  - Prefetchers fix of L1 Scrubbing, L1 Next Page and L2 AMP
  * [AArch64]
  - Providing Exclusive Load/Store to atomic operations
  - Improved asm of various macro functions
  - Removed LEGACY macros
  - Optimized the CORE_COUNT macros
  - Marked the Tools feature as nominal: Stress functions available
  - Allow user access to Retired Instructions counter
  - Fix Instructions counter overflow
  - Other PMC enhancements
  * [CR]
  - Fix a building issue with AlmaLinux aka RHEL-9
  - Linux kernel 6.9: Avoid redefinition of Intel MSR macros
  * [Doc]
  - README section for AlmaLinux
  - CONFIG_TRIM_UNUSED_KSYMS kernel build config is forbidden</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715947200">- fix dependency on kernel module that was not versioned</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1722081600">- update to 1.98.0
  * [Build]
  - Change dkms configuration to install into /usr/bin/
  - Solved compilation with Fedora using RHEL MINOR version number 99
  - [CR] Fixed some compilation warnings
  - [CR] Fix memory allocation in kernel pages for the SysGate
  - Workaround to musl change in basename (#494)
  - aarch64: Build with Redhat RHEL version 9
  - [CR] x86_64: Prevent array size overflow
  - dkms and ckms configuration files upgraded to version 1.98
  * [Intel]
  - [Raptor Lake] Adding the HB DID of i7-14700K' IMC
  - Mitigation mechanism: GDS_NO; RFDS_NO; MONITOR_MITG_NO
  - Apply some SDM Documentation Changes
  - [MTL] Fix CMD Stretch bit range width
  - Added method CLOCK_FLEX_MAX with Xeon's Nehalem &amp; Core 2
  - Grants full MSR_FLEX_RATIO access to tested architectures:
  - Alder Lake/S
  - Tiger Lake/U
  - Westmere/Gulftown
  - Provides the overclocking bins with unlocked processors
  - Query the Overclocking bit (OC) from Capabilities
  - Adding technologies: VMD, HDCP, IPU and VPU
  - Volume Management Device
  - High-Bandwidth Digital Content Protection
  - Image Processing Unit
  - Vision Processing Unit
  - Gaussian &amp; Neural Accelerator - GNA technology
  - [CR] Renamed Gemini Lake structures
  - [Meteor Lake] Introducing memory controller decoder
  * [AArch64]
  - Optimizing the Vcore seek
  - Workaround to Package discrete voltage: the highest Vcore
  - Improving computation of Euclidean division
  - Adjust frequency division in CNTFRQ and PMU counters
  - Scale a frequency factor from the interval
  - Refactoring the frequency ratios for decimal precision
  - Compile dev_pm_opp_put if Kernel greater or equal 4.11
  - Get the voltage core of CPUs from OPP
  * [AMD]
  - [Zen4][Raphael] Adding the EPYC 4004 Series
  - [Zen4] Clarify Hawk Point and Phoenix-Refresh architectures
  - [Family 19h] New voltage formula assigned to model 61h
  - Vcore activated
  - Voltage SoC deactivated
  - [Zen] Prevent the calculation of negative temperature (issue #496)
  - [Family 18h] Documented Hygon C86 7375
  - [Family 19h] PStateDef specification: Adding VID[8] bit 32
  - Specification of MSR HW_PSTATE_STATUS
  * [CLI]
  - aarch64: Display the state of the Memory Management Unit (MMU)
  - aarch64: State of Instruction Cache Unit I$ and Data Cache Unit D$
  - Added UI_RULER_MINIMUM &amp; UI_RULER_MAXIMUM building constraints
  - Revert "[CLI] Responsive ruler to architectural context"
  - This reverts commit 4bc38d6.
  - x86_64: AMD Boost and P-States redesigned
  - [UI] Hardening missing console/terminal size
  - Responsive ruler to architectural context
  - x86_64: Make HDCP meaning string shorter
  * [Driver]
  - Created C2U_Enable as a parameter alias of C1U_Enable</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1723032000">- update to 1.98.1
  * [AMD]
  - [Zen] Inject threshold events when thermal is out of bounds
  - Generic Zen architectures renamed with their Family number
  - Added a generic entry for the 1A family
  - Configure TjMax for multiple Ryzen and Threadripper
  - [CR] Optimize AMD temperature filtering function
  - [Zen5] Introducing the Eldora architecture aka "Granite Ridge"
  - [Zen5] Adding entries for Strix Point
  * [Intel]
  - Feature-bits of Core Ultra architecture
  - [TGL][ADL][RPL] New devices to probe IMC and Watchdog
  - [Raptor Lake-E] Adding the IMC probing entries
  - Grant full MSR_FLEX_RATIO access to Raptor Lake (06_B7)
  - Added Host Bridge DIDs of Raptor Lake-E
  - [ADL ... MTL] Code review of IMC decoders
  - [ADL] Compute DIMM Bank and Columns on both channels
  - [ADL] Process channels differently depending on DDR4 or DDR5
  - 12th to 14th generation IMC decoder refactoring
  - [ADL ... MTL] Adding Memory Controller Virtual Channel Count
  - [ADL ... MTL] Channel count as a function of DDPCD DDR_TYPE
  - [ADL ... MTL] Keep all enabled memory controllers
  - [12th and superior] Compute tWR quantity as a function of DDR version
  * [Build]
  - Now leave version number in Makefile
  - Pretty print the build and the clean of outputs
    Allow the V=n option increase the verbose level (incl. kernel)
  - CPU-Freq build against Linux Kernel version 6.11
  * [Documentation]
  - Refreshed README and Makefile</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1723464000">- Update to 1.98.2
  * [Intel]
  - [WDT] Adding multiple devices to probe TCO
    C620 Series Chipset Production SKUs (0xa1a3)
    C620 Series Chipset Super SKUs (0xa223)
    Sunrise Point/H (0xa123)
    Cannon Lake/LP (0x9da3)
    Comet Lake/H (0x06a3)
    Ice Lake/LP (0x34a3)
    Tiger Lake/H (0x43a3)
    Elkhart Lake (0x4b23)
    Kaby Lake/H (0xa2a3)
    Cannon Lake (0xa323)
    Comet Lake/V (0xa3a3)
    Ice Lake/NG (0x38a3)
    Alder lake/M (0x54a3)
    Arrow Lake/S (0x7f23)
    Jasper Lake SMBus (0x4da3)
    Sunrise Point-LP SMBus (0x9d23)
    Comet Lake PCH-LP SMBus (0x02a3)
  - MSR_FLEX_RATIO register
    Grant access to Alder Lake/H (06_9A)
    Deny access to Nehalem/Bloomfield (06_1A)
    Removed a condition in access function</changelog>
</package>
<package pkgid="063de16c69ca112f5341c83f251cd02bf4034165afe28dd60aadbe136515e957f86326a097bef2dc35e4ed44918b992af07a951698e908cc14be6fc4c013ac91" name="CoreFreq-kmp-default" arch="x86_64">
  <version epoch="0" ver="1.98.3_k6.10.5_1" rel="1.1"/>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1670241600">- update to 1.92.4:
  * [Intel/Skylake-X] Permits MSR_RING_PERF_LIMIT_REASONS</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1670932800">- removed modprobe_corefreqd.service.patch and harden_corefreqd.service.patch
  now included in new corefreqd.service file replacing stock one
- update to 1.93.1
  * [PRJ] CoreFreq version 1.93.1
  * [ACPI/CPPC/EPP] Preview of AMD/Zen Energy Preference (CONFIG_CACHY)
  * [UI] Changed the HWP or CPPC ratio bounds.
  * [FIX] Putting `corefreqd` in the root cgroup (issue #379) Thanks to gel-crabs
  * [DOC] Parameters to blacklist the amd_pstate since kernel 6.0.11
  * [AMD][Zen4] Apply a voltage formula based on Rembrandt's. (#378)
  * [AMD][Zen4/Raphael] Attempting temperature per CCD from TCTL+0x308
  * [AMD][Zen4] Changed Timer loop
  * [CR] CLI code review and UI optimizations
  * [UI] Auto refresh the Topology items when off/online
  * [CR] Conditionally build with additional PMC Counters
  * [Intel] Adding Z8000 System Memory Controller Registers
  * [CR] Transformed global variable in cells padding
  * [UI] Windows re-scaling fix
  * [UI] Apply color theming to the CPPC capabilities list.
  * [AMD][Raphael] Adding device DIDs to probe UMC and IOMMU
  * [CPPC/FMW] Computes value bounds while Enabling/Disabling firmware
  * [CR] CPPC lib errors are now raised to Debug level
  * [AMD][Zen4] Increased the UMC size to 12 channels.
  * [CPPC] Handles the OffLine CPU case.
  * [CLI] Refactoring HWP/CPPC to print all capabilities per CPU
  * [ACPI] Computes the CPPC Bounds
  * [Intel] Linear Address Masking (LAM)
  * [CLI] EFER: Left aligned labels
  * [AMD] Reports UAIE and AIBRSE bits from EFER system register
  * [CLI] Changed mitigation mechanisms incapability labels
  * [AMD][Zen2] Mitigation Mechanism BTC-NOBR * ACPI/OSPM documentation
  * [CR] Code review on bit masks
  * [CPPC][ACPI] Kernel may decode the Guaranteed Performance Register
  * [UI] Optimize the cycles to clear the time bar.
  * [CR] Code review for extra compiler warnings
  * [UI] Time of the day displayed in the right side of menu
  * [UI] Display the current date and time in menu bar
  * [Kernel] Introducing support of `CONFIG_SCHED_BORE`
  * [CLI] Fixing ambiguous CPPC report: hardware vs firmware
  * [CLI] Surrounds _CPC feature with square brackets
  * [CPPC] Provides the ACPI _CPC object state.
  * [UI] Colors the task being tracked in the tracking list
  * [UI] Display the current time in the menu bar
  * [CLI] Reserve the programmable TDP section to Intel processors.
  * [AMD/Zen3+] Improving the DIMM geometry of Rembrandt UMC</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1672747200">- update to 1.94.1:
  * [Intel] Gemini Lake
  * [AMD] Ryzen 5 6600 H SoC, UMC channels
  * [AMD] Rembrandt: maximum of two UMC channels
  * [AMD] Raphael: Decodes DIMM geometry from AddrCfg
  * [AMD] Zen: Aggregation refactored
  * [AMD] Improved DDR5 clock decoding
  * Optimized Idle Loop</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1673006400">- update to 1.94.3:
  * [AMD][RMB] If UMC is quad channels then unpopulate odd channels
  * [AMD][RPL] Provide Service Processor Vcore as workaround
  * [UI] Auto size and lay performance capabilities window
  * [UI] Adding comments to the EEO and R2H technologies
  * [AMD][Raphael] 7950X3D, 7900X3D. support</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1674475200">- update to 1.95.1:
  * [Intel] RPL: voltage of Pcore, Ecore, System Agent
  * [Intel] RPL and ADL Chipset device IDs
  * [Intel] Decode the RPL IMC and improve DDR5 support
  * [Build] Raise `MAX_FREQ_HZ` up to 7125000000 Hertz
  * [Intel] Mobile {Coffee Lake, Kaby Lake} codenames
  * [Intel] Braswell codename detection
  * [AMD] SYSCFG Register
  * [AMD] EPYC 9654
  * [AMD] Transparent SME
  * [AMD] DRAM Data Scrambling
  * [AMD] Adding "Barcelo R" and "Rembrandt R"</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1675944000">- update to 1.95.2:
  * Fixed the aggregation of the minimum ratio
  Intel:
  * [Airmont][Silvermont] Attempt to decode `tCKE` from DRMC
    register
  * [Airmont] Improve `tWTPr`, `B2B`, `tWWDR` timings
  * [Airmont] Provide a new IMC decoder
  * Add the Emerald Rapids architecture entry
  * [DDR5][DDR4] Add the `RCDw` IMC timing
  * [Raptor Lake ] De-activate the MSR Uncore counter
  AMD:
  * "Zen3/Barcelo-R" and "Zen3+ Rembrandt-R" codenames
  * [Zen] Thermal highest limit reset fix
  Misc:
  * Code review and Registers documentation:
    AMD HWCR, Intel HDC and DRP</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677067200">- update to 1.95.4
  * [Intel] [from 11th to 14th gen]
    Convert the DRAM Speed to MT/s unit
    Compute the Bus Rate based on the BIOS MC PLL
- update to 1.95.3
  * [Intel] [Airmont]
    Improved the IMC geometry
    Introducing the Spreadtrum architecture
    Fixed the Bus and DRAM frequency rates
  * [Intel] [from 11th to 13th gen] Attempt to probe the interleaved controllers
  * [Intel] [Alder Lake/H] Attempt to decode the TCO Watchdog</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677153600">- added leap_compile_fix.patch to fix compilation on Leap</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1683115200">- removed leap_compile_fix.patch no needed anymore
- update to 1.96.0
  * [AMD]
    [RPL/X3D] Disabling the turbo boosted P-states change
    [PHOENIX] Adding Z1, U and HS PRO series.
    [Genoa] DAC address at UMC BAR + 0x40
    [Zen4] Adding the PCI entries of Genoa
    [Zen2] Adding remaining PCI entries
    [Zen] Query DAC &amp; CFG with the right UMC base address register
    [Zen4] Dump the CPUID Extended CPU Topology leaves.
    [Zen][Embedded][Banded Kestrel] R1000 Processor Family
    [Zen][Embedded] "Great Horned Owl", "River Hawk", "Grey Hawk"
    Complete the "Raven Ridge" and "Picasso" lists
    [EPYC] Moved "Snowy Owl" Embedded processors to CPUID 8F_01
    [Zen4] introducing Phoenix and Dragon Range
    [RMB] adding the Ryzen Embedded V3000 processors
    [VMR] adding the "AMD Ryzen 9 PRO 5945"
  * [Intel]
    Adding Granite Rapids, Sierra Forest, Grand Ridge entries
    Adding "Lunar Lake" and "Arrow Lake" entries.
  * [UI]
    Optimized decimal to digits converter
    Allow task tracker to select up to pid_max
    Can trace the frozen states of Linux tasks.
    Only print HWP frequencies within bounds.
    Fix ruler's aggregation.
  * [CR]
    Check CPUID[HV_PARTITION_PRIVILEGE_MASK] for HV_X64_MSR_VP_RUNTIME
    Uninitialized variable fix.
    [CPPC] Build EPP with KERNEL_VERSION(6) rather than CONFIG_CACHY
    [KERNEL] Linux 6.3: Employ modifier calls with the vma-&gt;vm_flags</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1684065600">- update to 1.96.1
  * [Driver]
  - Postpone Clock Source registration during startup until the Base Clock is computed.
  - Change class_create() according to Linux Kernel 6.4
  - Clear interrupt flag (cli) after Halt in the Idle method
  * [AMD]
  - [PHOENIX] Adding Ryzen 7940H, 7840H, 7640H
  - [VERMEER] Adding Ryzen PRO and Embedded processors
  - Ryzen Z1 CPUID' brand fix
  - Adding EPYC Embedded 9004 Series as Genoa
  - Adding EPYC Embedded 7003 Series as Milan
  - Adding EPYC Embedded 7002 Series as Rome
  - Adding EPYC Embedded 7001 Series as Naples</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1685880000">- update to 1.96.2
  * [Driver]
  - Allows compilation to keep going without CONFIG_ACPI_CPPC_LIB
  * [Client]
  - Adding two command line arguments:
  - Op Show Package C-States
  - OW Toggle Energy units
  * [AMD]
  - Specification of some Configuration MSRs</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1686830400">- update to 1.96.4
  * [AMD]
  - Display CPUID state of new and legacy features:
    Fused Multiply Add [FMA4]
    Extended Operation Support [XOP]
    Translation Cache Extension [TCE]
    Trailing Bit Manipulation [TBM]
    OS Visible Work-around [OSVW]
    LOCK prefix to read CR8 [AltMov]
  * [Intel]
  - Advanced Matrix Extensions [AMX]
  - Bits and Features of Sierra Forest and Grand Ridge
  - Attempt to decode the Meteor Lake Memory Controller
- update to 1.96.3
  * [AMD]
  - [Zeppelin] Probe more than one UMC controllers on Ryzen Threadripper 1900X
  - [Zen4] Dump SMBE and BMEC sub-leaves of CPUID 0x80000020</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1688212800">- update to 1.96.5
  * [AMD]
    Adding the "AMD Ryzen 5 5600X3D"
    Introducing the Zen4c Bergamo architecture
    Specs fixing of Embedded V-series and 3000 Series Processors
    Adding MENDOCINO, RAPHAEL Pro, PHOENIX Pro among others</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1712318400">- added preamble file for %kernel_module_package macro
- update to 1.97.1
  * added aarch64 support
  * upstream did not provide a summary changelog. Full list of commits:
    https://github.com/cyring/CoreFreq/compare/1.96.5...1.97.1</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715860800">- update to 1.97.2
  * [AMD]
  - [Hawk Point] Adding Ryzen PRO processors
  - [Phoenix] Adding the unlocked Ryzen 8000 Series
  * [Intel]
  - [MeteorLake] New bits specified
  - EEO and R2H bits inversion fix in MSR_POWER_CTL (0x1fc)
  - Reverse specification of MSR UNCORE_PERF_STATUS
  - Prefetchers fix of L1 Scrubbing, L1 Next Page and L2 AMP
  * [AArch64]
  - Providing Exclusive Load/Store to atomic operations
  - Improved asm of various macro functions
  - Removed LEGACY macros
  - Optimized the CORE_COUNT macros
  - Marked the Tools feature as nominal: Stress functions available
  - Allow user access to Retired Instructions counter
  - Fix Instructions counter overflow
  - Other PMC enhancements
  * [CR]
  - Fix a building issue with AlmaLinux aka RHEL-9
  - Linux kernel 6.9: Avoid redefinition of Intel MSR macros
  * [Doc]
  - README section for AlmaLinux
  - CONFIG_TRIM_UNUSED_KSYMS kernel build config is forbidden</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715947200">- fix dependency on kernel module that was not versioned</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1722081600">- update to 1.98.0
  * [Build]
  - Change dkms configuration to install into /usr/bin/
  - Solved compilation with Fedora using RHEL MINOR version number 99
  - [CR] Fixed some compilation warnings
  - [CR] Fix memory allocation in kernel pages for the SysGate
  - Workaround to musl change in basename (#494)
  - aarch64: Build with Redhat RHEL version 9
  - [CR] x86_64: Prevent array size overflow
  - dkms and ckms configuration files upgraded to version 1.98
  * [Intel]
  - [Raptor Lake] Adding the HB DID of i7-14700K' IMC
  - Mitigation mechanism: GDS_NO; RFDS_NO; MONITOR_MITG_NO
  - Apply some SDM Documentation Changes
  - [MTL] Fix CMD Stretch bit range width
  - Added method CLOCK_FLEX_MAX with Xeon's Nehalem &amp; Core 2
  - Grants full MSR_FLEX_RATIO access to tested architectures:
  - Alder Lake/S
  - Tiger Lake/U
  - Westmere/Gulftown
  - Provides the overclocking bins with unlocked processors
  - Query the Overclocking bit (OC) from Capabilities
  - Adding technologies: VMD, HDCP, IPU and VPU
  - Volume Management Device
  - High-Bandwidth Digital Content Protection
  - Image Processing Unit
  - Vision Processing Unit
  - Gaussian &amp; Neural Accelerator - GNA technology
  - [CR] Renamed Gemini Lake structures
  - [Meteor Lake] Introducing memory controller decoder
  * [AArch64]
  - Optimizing the Vcore seek
  - Workaround to Package discrete voltage: the highest Vcore
  - Improving computation of Euclidean division
  - Adjust frequency division in CNTFRQ and PMU counters
  - Scale a frequency factor from the interval
  - Refactoring the frequency ratios for decimal precision
  - Compile dev_pm_opp_put if Kernel greater or equal 4.11
  - Get the voltage core of CPUs from OPP
  * [AMD]
  - [Zen4][Raphael] Adding the EPYC 4004 Series
  - [Zen4] Clarify Hawk Point and Phoenix-Refresh architectures
  - [Family 19h] New voltage formula assigned to model 61h
  - Vcore activated
  - Voltage SoC deactivated
  - [Zen] Prevent the calculation of negative temperature (issue #496)
  - [Family 18h] Documented Hygon C86 7375
  - [Family 19h] PStateDef specification: Adding VID[8] bit 32
  - Specification of MSR HW_PSTATE_STATUS
  * [CLI]
  - aarch64: Display the state of the Memory Management Unit (MMU)
  - aarch64: State of Instruction Cache Unit I$ and Data Cache Unit D$
  - Added UI_RULER_MINIMUM &amp; UI_RULER_MAXIMUM building constraints
  - Revert "[CLI] Responsive ruler to architectural context"
  - This reverts commit 4bc38d6.
  - x86_64: AMD Boost and P-States redesigned
  - [UI] Hardening missing console/terminal size
  - Responsive ruler to architectural context
  - x86_64: Make HDCP meaning string shorter
  * [Driver]
  - Created C2U_Enable as a parameter alias of C1U_Enable</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1723032000">- update to 1.98.1
  * [AMD]
  - [Zen] Inject threshold events when thermal is out of bounds
  - Generic Zen architectures renamed with their Family number
  - Added a generic entry for the 1A family
  - Configure TjMax for multiple Ryzen and Threadripper
  - [CR] Optimize AMD temperature filtering function
  - [Zen5] Introducing the Eldora architecture aka "Granite Ridge"
  - [Zen5] Adding entries for Strix Point
  * [Intel]
  - Feature-bits of Core Ultra architecture
  - [TGL][ADL][RPL] New devices to probe IMC and Watchdog
  - [Raptor Lake-E] Adding the IMC probing entries
  - Grant full MSR_FLEX_RATIO access to Raptor Lake (06_B7)
  - Added Host Bridge DIDs of Raptor Lake-E
  - [ADL ... MTL] Code review of IMC decoders
  - [ADL] Compute DIMM Bank and Columns on both channels
  - [ADL] Process channels differently depending on DDR4 or DDR5
  - 12th to 14th generation IMC decoder refactoring
  - [ADL ... MTL] Adding Memory Controller Virtual Channel Count
  - [ADL ... MTL] Channel count as a function of DDPCD DDR_TYPE
  - [ADL ... MTL] Keep all enabled memory controllers
  - [12th and superior] Compute tWR quantity as a function of DDR version
  * [Build]
  - Now leave version number in Makefile
  - Pretty print the build and the clean of outputs
    Allow the V=n option increase the verbose level (incl. kernel)
  - CPU-Freq build against Linux Kernel version 6.11
  * [Documentation]
  - Refreshed README and Makefile</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1723464000">- Update to 1.98.2
  * [Intel]
  - [WDT] Adding multiple devices to probe TCO
    C620 Series Chipset Production SKUs (0xa1a3)
    C620 Series Chipset Super SKUs (0xa223)
    Sunrise Point/H (0xa123)
    Cannon Lake/LP (0x9da3)
    Comet Lake/H (0x06a3)
    Ice Lake/LP (0x34a3)
    Tiger Lake/H (0x43a3)
    Elkhart Lake (0x4b23)
    Kaby Lake/H (0xa2a3)
    Cannon Lake (0xa323)
    Comet Lake/V (0xa3a3)
    Ice Lake/NG (0x38a3)
    Alder lake/M (0x54a3)
    Arrow Lake/S (0x7f23)
    Jasper Lake SMBus (0x4da3)
    Sunrise Point-LP SMBus (0x9d23)
    Comet Lake PCH-LP SMBus (0x02a3)
  - MSR_FLEX_RATIO register
    Grant access to Alder Lake/H (06_9A)
    Deny access to Nehalem/Bloomfield (06_1A)
    Removed a condition in access function</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1725019200">- Update to 1.98.3
  * [AMD]
  - [VMR/RPL/GNR] Voltage Curve Optimizer (VCO)
  - Provide a specific VCO formula based on HWM_CHIPSET=AMD_VCO
    build parameter
  - The standard voltage formulas are restored to these architectures
  - Zen5: Guessed a new P-State MSR bits specification to fix the
    Coefficient Of Frequency (COF)</changelog>
</package>
<package pkgid="b92e62f6ec88b0a36d7ec976b63ecdf5046cc6dc327a0e6257c59c12342c7259c26dcca3bf43b9bb1e81199134d38650563b7592cfc83fcdc3a9c1e52f6272e4" name="CoreFreq-kmp-default" arch="x86_64">
  <version epoch="0" ver="1.98.4_k6.11.2_1" rel="1.4"/>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1670932800">- removed modprobe_corefreqd.service.patch and harden_corefreqd.service.patch
  now included in new corefreqd.service file replacing stock one
- update to 1.93.1
  * [PRJ] CoreFreq version 1.93.1
  * [ACPI/CPPC/EPP] Preview of AMD/Zen Energy Preference (CONFIG_CACHY)
  * [UI] Changed the HWP or CPPC ratio bounds.
  * [FIX] Putting `corefreqd` in the root cgroup (issue #379) Thanks to gel-crabs
  * [DOC] Parameters to blacklist the amd_pstate since kernel 6.0.11
  * [AMD][Zen4] Apply a voltage formula based on Rembrandt's. (#378)
  * [AMD][Zen4/Raphael] Attempting temperature per CCD from TCTL+0x308
  * [AMD][Zen4] Changed Timer loop
  * [CR] CLI code review and UI optimizations
  * [UI] Auto refresh the Topology items when off/online
  * [CR] Conditionally build with additional PMC Counters
  * [Intel] Adding Z8000 System Memory Controller Registers
  * [CR] Transformed global variable in cells padding
  * [UI] Windows re-scaling fix
  * [UI] Apply color theming to the CPPC capabilities list.
  * [AMD][Raphael] Adding device DIDs to probe UMC and IOMMU
  * [CPPC/FMW] Computes value bounds while Enabling/Disabling firmware
  * [CR] CPPC lib errors are now raised to Debug level
  * [AMD][Zen4] Increased the UMC size to 12 channels.
  * [CPPC] Handles the OffLine CPU case.
  * [CLI] Refactoring HWP/CPPC to print all capabilities per CPU
  * [ACPI] Computes the CPPC Bounds
  * [Intel] Linear Address Masking (LAM)
  * [CLI] EFER: Left aligned labels
  * [AMD] Reports UAIE and AIBRSE bits from EFER system register
  * [CLI] Changed mitigation mechanisms incapability labels
  * [AMD][Zen2] Mitigation Mechanism BTC-NOBR * ACPI/OSPM documentation
  * [CR] Code review on bit masks
  * [CPPC][ACPI] Kernel may decode the Guaranteed Performance Register
  * [UI] Optimize the cycles to clear the time bar.
  * [CR] Code review for extra compiler warnings
  * [UI] Time of the day displayed in the right side of menu
  * [UI] Display the current date and time in menu bar
  * [Kernel] Introducing support of `CONFIG_SCHED_BORE`
  * [CLI] Fixing ambiguous CPPC report: hardware vs firmware
  * [CLI] Surrounds _CPC feature with square brackets
  * [CPPC] Provides the ACPI _CPC object state.
  * [UI] Colors the task being tracked in the tracking list
  * [UI] Display the current time in the menu bar
  * [CLI] Reserve the programmable TDP section to Intel processors.
  * [AMD/Zen3+] Improving the DIMM geometry of Rembrandt UMC</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1672747200">- update to 1.94.1:
  * [Intel] Gemini Lake
  * [AMD] Ryzen 5 6600 H SoC, UMC channels
  * [AMD] Rembrandt: maximum of two UMC channels
  * [AMD] Raphael: Decodes DIMM geometry from AddrCfg
  * [AMD] Zen: Aggregation refactored
  * [AMD] Improved DDR5 clock decoding
  * Optimized Idle Loop</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1673006400">- update to 1.94.3:
  * [AMD][RMB] If UMC is quad channels then unpopulate odd channels
  * [AMD][RPL] Provide Service Processor Vcore as workaround
  * [UI] Auto size and lay performance capabilities window
  * [UI] Adding comments to the EEO and R2H technologies
  * [AMD][Raphael] 7950X3D, 7900X3D. support</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1674475200">- update to 1.95.1:
  * [Intel] RPL: voltage of Pcore, Ecore, System Agent
  * [Intel] RPL and ADL Chipset device IDs
  * [Intel] Decode the RPL IMC and improve DDR5 support
  * [Build] Raise `MAX_FREQ_HZ` up to 7125000000 Hertz
  * [Intel] Mobile {Coffee Lake, Kaby Lake} codenames
  * [Intel] Braswell codename detection
  * [AMD] SYSCFG Register
  * [AMD] EPYC 9654
  * [AMD] Transparent SME
  * [AMD] DRAM Data Scrambling
  * [AMD] Adding "Barcelo R" and "Rembrandt R"</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1675944000">- update to 1.95.2:
  * Fixed the aggregation of the minimum ratio
  Intel:
  * [Airmont][Silvermont] Attempt to decode `tCKE` from DRMC
    register
  * [Airmont] Improve `tWTPr`, `B2B`, `tWWDR` timings
  * [Airmont] Provide a new IMC decoder
  * Add the Emerald Rapids architecture entry
  * [DDR5][DDR4] Add the `RCDw` IMC timing
  * [Raptor Lake ] De-activate the MSR Uncore counter
  AMD:
  * "Zen3/Barcelo-R" and "Zen3+ Rembrandt-R" codenames
  * [Zen] Thermal highest limit reset fix
  Misc:
  * Code review and Registers documentation:
    AMD HWCR, Intel HDC and DRP</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677067200">- update to 1.95.4
  * [Intel] [from 11th to 14th gen]
    Convert the DRAM Speed to MT/s unit
    Compute the Bus Rate based on the BIOS MC PLL
- update to 1.95.3
  * [Intel] [Airmont]
    Improved the IMC geometry
    Introducing the Spreadtrum architecture
    Fixed the Bus and DRAM frequency rates
  * [Intel] [from 11th to 13th gen] Attempt to probe the interleaved controllers
  * [Intel] [Alder Lake/H] Attempt to decode the TCO Watchdog</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677153600">- added leap_compile_fix.patch to fix compilation on Leap</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1683115200">- removed leap_compile_fix.patch no needed anymore
- update to 1.96.0
  * [AMD]
    [RPL/X3D] Disabling the turbo boosted P-states change
    [PHOENIX] Adding Z1, U and HS PRO series.
    [Genoa] DAC address at UMC BAR + 0x40
    [Zen4] Adding the PCI entries of Genoa
    [Zen2] Adding remaining PCI entries
    [Zen] Query DAC &amp; CFG with the right UMC base address register
    [Zen4] Dump the CPUID Extended CPU Topology leaves.
    [Zen][Embedded][Banded Kestrel] R1000 Processor Family
    [Zen][Embedded] "Great Horned Owl", "River Hawk", "Grey Hawk"
    Complete the "Raven Ridge" and "Picasso" lists
    [EPYC] Moved "Snowy Owl" Embedded processors to CPUID 8F_01
    [Zen4] introducing Phoenix and Dragon Range
    [RMB] adding the Ryzen Embedded V3000 processors
    [VMR] adding the "AMD Ryzen 9 PRO 5945"
  * [Intel]
    Adding Granite Rapids, Sierra Forest, Grand Ridge entries
    Adding "Lunar Lake" and "Arrow Lake" entries.
  * [UI]
    Optimized decimal to digits converter
    Allow task tracker to select up to pid_max
    Can trace the frozen states of Linux tasks.
    Only print HWP frequencies within bounds.
    Fix ruler's aggregation.
  * [CR]
    Check CPUID[HV_PARTITION_PRIVILEGE_MASK] for HV_X64_MSR_VP_RUNTIME
    Uninitialized variable fix.
    [CPPC] Build EPP with KERNEL_VERSION(6) rather than CONFIG_CACHY
    [KERNEL] Linux 6.3: Employ modifier calls with the vma-&gt;vm_flags</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1684065600">- update to 1.96.1
  * [Driver]
  - Postpone Clock Source registration during startup until the Base Clock is computed.
  - Change class_create() according to Linux Kernel 6.4
  - Clear interrupt flag (cli) after Halt in the Idle method
  * [AMD]
  - [PHOENIX] Adding Ryzen 7940H, 7840H, 7640H
  - [VERMEER] Adding Ryzen PRO and Embedded processors
  - Ryzen Z1 CPUID' brand fix
  - Adding EPYC Embedded 9004 Series as Genoa
  - Adding EPYC Embedded 7003 Series as Milan
  - Adding EPYC Embedded 7002 Series as Rome
  - Adding EPYC Embedded 7001 Series as Naples</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1685880000">- update to 1.96.2
  * [Driver]
  - Allows compilation to keep going without CONFIG_ACPI_CPPC_LIB
  * [Client]
  - Adding two command line arguments:
  - Op Show Package C-States
  - OW Toggle Energy units
  * [AMD]
  - Specification of some Configuration MSRs</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1686830400">- update to 1.96.4
  * [AMD]
  - Display CPUID state of new and legacy features:
    Fused Multiply Add [FMA4]
    Extended Operation Support [XOP]
    Translation Cache Extension [TCE]
    Trailing Bit Manipulation [TBM]
    OS Visible Work-around [OSVW]
    LOCK prefix to read CR8 [AltMov]
  * [Intel]
  - Advanced Matrix Extensions [AMX]
  - Bits and Features of Sierra Forest and Grand Ridge
  - Attempt to decode the Meteor Lake Memory Controller
- update to 1.96.3
  * [AMD]
  - [Zeppelin] Probe more than one UMC controllers on Ryzen Threadripper 1900X
  - [Zen4] Dump SMBE and BMEC sub-leaves of CPUID 0x80000020</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1688212800">- update to 1.96.5
  * [AMD]
    Adding the "AMD Ryzen 5 5600X3D"
    Introducing the Zen4c Bergamo architecture
    Specs fixing of Embedded V-series and 3000 Series Processors
    Adding MENDOCINO, RAPHAEL Pro, PHOENIX Pro among others</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1712318400">- added preamble file for %kernel_module_package macro
- update to 1.97.1
  * added aarch64 support
  * upstream did not provide a summary changelog. Full list of commits:
    https://github.com/cyring/CoreFreq/compare/1.96.5...1.97.1</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715860800">- update to 1.97.2
  * [AMD]
  - [Hawk Point] Adding Ryzen PRO processors
  - [Phoenix] Adding the unlocked Ryzen 8000 Series
  * [Intel]
  - [MeteorLake] New bits specified
  - EEO and R2H bits inversion fix in MSR_POWER_CTL (0x1fc)
  - Reverse specification of MSR UNCORE_PERF_STATUS
  - Prefetchers fix of L1 Scrubbing, L1 Next Page and L2 AMP
  * [AArch64]
  - Providing Exclusive Load/Store to atomic operations
  - Improved asm of various macro functions
  - Removed LEGACY macros
  - Optimized the CORE_COUNT macros
  - Marked the Tools feature as nominal: Stress functions available
  - Allow user access to Retired Instructions counter
  - Fix Instructions counter overflow
  - Other PMC enhancements
  * [CR]
  - Fix a building issue with AlmaLinux aka RHEL-9
  - Linux kernel 6.9: Avoid redefinition of Intel MSR macros
  * [Doc]
  - README section for AlmaLinux
  - CONFIG_TRIM_UNUSED_KSYMS kernel build config is forbidden</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715947200">- fix dependency on kernel module that was not versioned</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1722081600">- update to 1.98.0
  * [Build]
  - Change dkms configuration to install into /usr/bin/
  - Solved compilation with Fedora using RHEL MINOR version number 99
  - [CR] Fixed some compilation warnings
  - [CR] Fix memory allocation in kernel pages for the SysGate
  - Workaround to musl change in basename (#494)
  - aarch64: Build with Redhat RHEL version 9
  - [CR] x86_64: Prevent array size overflow
  - dkms and ckms configuration files upgraded to version 1.98
  * [Intel]
  - [Raptor Lake] Adding the HB DID of i7-14700K' IMC
  - Mitigation mechanism: GDS_NO; RFDS_NO; MONITOR_MITG_NO
  - Apply some SDM Documentation Changes
  - [MTL] Fix CMD Stretch bit range width
  - Added method CLOCK_FLEX_MAX with Xeon's Nehalem &amp; Core 2
  - Grants full MSR_FLEX_RATIO access to tested architectures:
  - Alder Lake/S
  - Tiger Lake/U
  - Westmere/Gulftown
  - Provides the overclocking bins with unlocked processors
  - Query the Overclocking bit (OC) from Capabilities
  - Adding technologies: VMD, HDCP, IPU and VPU
  - Volume Management Device
  - High-Bandwidth Digital Content Protection
  - Image Processing Unit
  - Vision Processing Unit
  - Gaussian &amp; Neural Accelerator - GNA technology
  - [CR] Renamed Gemini Lake structures
  - [Meteor Lake] Introducing memory controller decoder
  * [AArch64]
  - Optimizing the Vcore seek
  - Workaround to Package discrete voltage: the highest Vcore
  - Improving computation of Euclidean division
  - Adjust frequency division in CNTFRQ and PMU counters
  - Scale a frequency factor from the interval
  - Refactoring the frequency ratios for decimal precision
  - Compile dev_pm_opp_put if Kernel greater or equal 4.11
  - Get the voltage core of CPUs from OPP
  * [AMD]
  - [Zen4][Raphael] Adding the EPYC 4004 Series
  - [Zen4] Clarify Hawk Point and Phoenix-Refresh architectures
  - [Family 19h] New voltage formula assigned to model 61h
  - Vcore activated
  - Voltage SoC deactivated
  - [Zen] Prevent the calculation of negative temperature (issue #496)
  - [Family 18h] Documented Hygon C86 7375
  - [Family 19h] PStateDef specification: Adding VID[8] bit 32
  - Specification of MSR HW_PSTATE_STATUS
  * [CLI]
  - aarch64: Display the state of the Memory Management Unit (MMU)
  - aarch64: State of Instruction Cache Unit I$ and Data Cache Unit D$
  - Added UI_RULER_MINIMUM &amp; UI_RULER_MAXIMUM building constraints
  - Revert "[CLI] Responsive ruler to architectural context"
  - This reverts commit 4bc38d6.
  - x86_64: AMD Boost and P-States redesigned
  - [UI] Hardening missing console/terminal size
  - Responsive ruler to architectural context
  - x86_64: Make HDCP meaning string shorter
  * [Driver]
  - Created C2U_Enable as a parameter alias of C1U_Enable</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1723032000">- update to 1.98.1
  * [AMD]
  - [Zen] Inject threshold events when thermal is out of bounds
  - Generic Zen architectures renamed with their Family number
  - Added a generic entry for the 1A family
  - Configure TjMax for multiple Ryzen and Threadripper
  - [CR] Optimize AMD temperature filtering function
  - [Zen5] Introducing the Eldora architecture aka "Granite Ridge"
  - [Zen5] Adding entries for Strix Point
  * [Intel]
  - Feature-bits of Core Ultra architecture
  - [TGL][ADL][RPL] New devices to probe IMC and Watchdog
  - [Raptor Lake-E] Adding the IMC probing entries
  - Grant full MSR_FLEX_RATIO access to Raptor Lake (06_B7)
  - Added Host Bridge DIDs of Raptor Lake-E
  - [ADL ... MTL] Code review of IMC decoders
  - [ADL] Compute DIMM Bank and Columns on both channels
  - [ADL] Process channels differently depending on DDR4 or DDR5
  - 12th to 14th generation IMC decoder refactoring
  - [ADL ... MTL] Adding Memory Controller Virtual Channel Count
  - [ADL ... MTL] Channel count as a function of DDPCD DDR_TYPE
  - [ADL ... MTL] Keep all enabled memory controllers
  - [12th and superior] Compute tWR quantity as a function of DDR version
  * [Build]
  - Now leave version number in Makefile
  - Pretty print the build and the clean of outputs
    Allow the V=n option increase the verbose level (incl. kernel)
  - CPU-Freq build against Linux Kernel version 6.11
  * [Documentation]
  - Refreshed README and Makefile</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1723464000">- Update to 1.98.2
  * [Intel]
  - [WDT] Adding multiple devices to probe TCO
    C620 Series Chipset Production SKUs (0xa1a3)
    C620 Series Chipset Super SKUs (0xa223)
    Sunrise Point/H (0xa123)
    Cannon Lake/LP (0x9da3)
    Comet Lake/H (0x06a3)
    Ice Lake/LP (0x34a3)
    Tiger Lake/H (0x43a3)
    Elkhart Lake (0x4b23)
    Kaby Lake/H (0xa2a3)
    Cannon Lake (0xa323)
    Comet Lake/V (0xa3a3)
    Ice Lake/NG (0x38a3)
    Alder lake/M (0x54a3)
    Arrow Lake/S (0x7f23)
    Jasper Lake SMBus (0x4da3)
    Sunrise Point-LP SMBus (0x9d23)
    Comet Lake PCH-LP SMBus (0x02a3)
  - MSR_FLEX_RATIO register
    Grant access to Alder Lake/H (06_9A)
    Deny access to Nehalem/Bloomfield (06_1A)
    Removed a condition in access function</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1725019200">- Update to 1.98.3
  * [AMD]
  - [VMR/RPL/GNR] Voltage Curve Optimizer (VCO)
  - Provide a specific VCO formula based on HWM_CHIPSET=AMD_VCO
    build parameter
  - The standard voltage formulas are restored to these architectures
  - Zen5: Guessed a new P-State MSR bits specification to fix the
    Coefficient Of Frequency (COF)</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1726833600">- Update to 1.98.4
  * [Build]
  - Prevent a collision with macro WRMSRNS within kernel 6.11
  * [x86_64]
  - [Virtualization] Switch to the HCF or VP_RUNTIME counters depending on the detected hypervisor</changelog>
</package>
<package pkgid="95bcf3c9745b3d2560e8583cd543095913c3159a78124e40d421775be55425f99f54ed0cfd834f66f343ba3d5da0f089f8a1029f0ee6693493b54424a5348a2e" name="CoreFreq-kmp-default" arch="x86_64">
  <version epoch="0" ver="1.98.4_k6.11.5_1" rel="1.8"/>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1670932800">- removed modprobe_corefreqd.service.patch and harden_corefreqd.service.patch
  now included in new corefreqd.service file replacing stock one
- update to 1.93.1
  * [PRJ] CoreFreq version 1.93.1
  * [ACPI/CPPC/EPP] Preview of AMD/Zen Energy Preference (CONFIG_CACHY)
  * [UI] Changed the HWP or CPPC ratio bounds.
  * [FIX] Putting `corefreqd` in the root cgroup (issue #379) Thanks to gel-crabs
  * [DOC] Parameters to blacklist the amd_pstate since kernel 6.0.11
  * [AMD][Zen4] Apply a voltage formula based on Rembrandt's. (#378)
  * [AMD][Zen4/Raphael] Attempting temperature per CCD from TCTL+0x308
  * [AMD][Zen4] Changed Timer loop
  * [CR] CLI code review and UI optimizations
  * [UI] Auto refresh the Topology items when off/online
  * [CR] Conditionally build with additional PMC Counters
  * [Intel] Adding Z8000 System Memory Controller Registers
  * [CR] Transformed global variable in cells padding
  * [UI] Windows re-scaling fix
  * [UI] Apply color theming to the CPPC capabilities list.
  * [AMD][Raphael] Adding device DIDs to probe UMC and IOMMU
  * [CPPC/FMW] Computes value bounds while Enabling/Disabling firmware
  * [CR] CPPC lib errors are now raised to Debug level
  * [AMD][Zen4] Increased the UMC size to 12 channels.
  * [CPPC] Handles the OffLine CPU case.
  * [CLI] Refactoring HWP/CPPC to print all capabilities per CPU
  * [ACPI] Computes the CPPC Bounds
  * [Intel] Linear Address Masking (LAM)
  * [CLI] EFER: Left aligned labels
  * [AMD] Reports UAIE and AIBRSE bits from EFER system register
  * [CLI] Changed mitigation mechanisms incapability labels
  * [AMD][Zen2] Mitigation Mechanism BTC-NOBR * ACPI/OSPM documentation
  * [CR] Code review on bit masks
  * [CPPC][ACPI] Kernel may decode the Guaranteed Performance Register
  * [UI] Optimize the cycles to clear the time bar.
  * [CR] Code review for extra compiler warnings
  * [UI] Time of the day displayed in the right side of menu
  * [UI] Display the current date and time in menu bar
  * [Kernel] Introducing support of `CONFIG_SCHED_BORE`
  * [CLI] Fixing ambiguous CPPC report: hardware vs firmware
  * [CLI] Surrounds _CPC feature with square brackets
  * [CPPC] Provides the ACPI _CPC object state.
  * [UI] Colors the task being tracked in the tracking list
  * [UI] Display the current time in the menu bar
  * [CLI] Reserve the programmable TDP section to Intel processors.
  * [AMD/Zen3+] Improving the DIMM geometry of Rembrandt UMC</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1672747200">- update to 1.94.1:
  * [Intel] Gemini Lake
  * [AMD] Ryzen 5 6600 H SoC, UMC channels
  * [AMD] Rembrandt: maximum of two UMC channels
  * [AMD] Raphael: Decodes DIMM geometry from AddrCfg
  * [AMD] Zen: Aggregation refactored
  * [AMD] Improved DDR5 clock decoding
  * Optimized Idle Loop</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1673006400">- update to 1.94.3:
  * [AMD][RMB] If UMC is quad channels then unpopulate odd channels
  * [AMD][RPL] Provide Service Processor Vcore as workaround
  * [UI] Auto size and lay performance capabilities window
  * [UI] Adding comments to the EEO and R2H technologies
  * [AMD][Raphael] 7950X3D, 7900X3D. support</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1674475200">- update to 1.95.1:
  * [Intel] RPL: voltage of Pcore, Ecore, System Agent
  * [Intel] RPL and ADL Chipset device IDs
  * [Intel] Decode the RPL IMC and improve DDR5 support
  * [Build] Raise `MAX_FREQ_HZ` up to 7125000000 Hertz
  * [Intel] Mobile {Coffee Lake, Kaby Lake} codenames
  * [Intel] Braswell codename detection
  * [AMD] SYSCFG Register
  * [AMD] EPYC 9654
  * [AMD] Transparent SME
  * [AMD] DRAM Data Scrambling
  * [AMD] Adding "Barcelo R" and "Rembrandt R"</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1675944000">- update to 1.95.2:
  * Fixed the aggregation of the minimum ratio
  Intel:
  * [Airmont][Silvermont] Attempt to decode `tCKE` from DRMC
    register
  * [Airmont] Improve `tWTPr`, `B2B`, `tWWDR` timings
  * [Airmont] Provide a new IMC decoder
  * Add the Emerald Rapids architecture entry
  * [DDR5][DDR4] Add the `RCDw` IMC timing
  * [Raptor Lake ] De-activate the MSR Uncore counter
  AMD:
  * "Zen3/Barcelo-R" and "Zen3+ Rembrandt-R" codenames
  * [Zen] Thermal highest limit reset fix
  Misc:
  * Code review and Registers documentation:
    AMD HWCR, Intel HDC and DRP</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677067200">- update to 1.95.4
  * [Intel] [from 11th to 14th gen]
    Convert the DRAM Speed to MT/s unit
    Compute the Bus Rate based on the BIOS MC PLL
- update to 1.95.3
  * [Intel] [Airmont]
    Improved the IMC geometry
    Introducing the Spreadtrum architecture
    Fixed the Bus and DRAM frequency rates
  * [Intel] [from 11th to 13th gen] Attempt to probe the interleaved controllers
  * [Intel] [Alder Lake/H] Attempt to decode the TCO Watchdog</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677153600">- added leap_compile_fix.patch to fix compilation on Leap</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1683115200">- removed leap_compile_fix.patch no needed anymore
- update to 1.96.0
  * [AMD]
    [RPL/X3D] Disabling the turbo boosted P-states change
    [PHOENIX] Adding Z1, U and HS PRO series.
    [Genoa] DAC address at UMC BAR + 0x40
    [Zen4] Adding the PCI entries of Genoa
    [Zen2] Adding remaining PCI entries
    [Zen] Query DAC &amp; CFG with the right UMC base address register
    [Zen4] Dump the CPUID Extended CPU Topology leaves.
    [Zen][Embedded][Banded Kestrel] R1000 Processor Family
    [Zen][Embedded] "Great Horned Owl", "River Hawk", "Grey Hawk"
    Complete the "Raven Ridge" and "Picasso" lists
    [EPYC] Moved "Snowy Owl" Embedded processors to CPUID 8F_01
    [Zen4] introducing Phoenix and Dragon Range
    [RMB] adding the Ryzen Embedded V3000 processors
    [VMR] adding the "AMD Ryzen 9 PRO 5945"
  * [Intel]
    Adding Granite Rapids, Sierra Forest, Grand Ridge entries
    Adding "Lunar Lake" and "Arrow Lake" entries.
  * [UI]
    Optimized decimal to digits converter
    Allow task tracker to select up to pid_max
    Can trace the frozen states of Linux tasks.
    Only print HWP frequencies within bounds.
    Fix ruler's aggregation.
  * [CR]
    Check CPUID[HV_PARTITION_PRIVILEGE_MASK] for HV_X64_MSR_VP_RUNTIME
    Uninitialized variable fix.
    [CPPC] Build EPP with KERNEL_VERSION(6) rather than CONFIG_CACHY
    [KERNEL] Linux 6.3: Employ modifier calls with the vma-&gt;vm_flags</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1684065600">- update to 1.96.1
  * [Driver]
  - Postpone Clock Source registration during startup until the Base Clock is computed.
  - Change class_create() according to Linux Kernel 6.4
  - Clear interrupt flag (cli) after Halt in the Idle method
  * [AMD]
  - [PHOENIX] Adding Ryzen 7940H, 7840H, 7640H
  - [VERMEER] Adding Ryzen PRO and Embedded processors
  - Ryzen Z1 CPUID' brand fix
  - Adding EPYC Embedded 9004 Series as Genoa
  - Adding EPYC Embedded 7003 Series as Milan
  - Adding EPYC Embedded 7002 Series as Rome
  - Adding EPYC Embedded 7001 Series as Naples</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1685880000">- update to 1.96.2
  * [Driver]
  - Allows compilation to keep going without CONFIG_ACPI_CPPC_LIB
  * [Client]
  - Adding two command line arguments:
  - Op Show Package C-States
  - OW Toggle Energy units
  * [AMD]
  - Specification of some Configuration MSRs</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1686830400">- update to 1.96.4
  * [AMD]
  - Display CPUID state of new and legacy features:
    Fused Multiply Add [FMA4]
    Extended Operation Support [XOP]
    Translation Cache Extension [TCE]
    Trailing Bit Manipulation [TBM]
    OS Visible Work-around [OSVW]
    LOCK prefix to read CR8 [AltMov]
  * [Intel]
  - Advanced Matrix Extensions [AMX]
  - Bits and Features of Sierra Forest and Grand Ridge
  - Attempt to decode the Meteor Lake Memory Controller
- update to 1.96.3
  * [AMD]
  - [Zeppelin] Probe more than one UMC controllers on Ryzen Threadripper 1900X
  - [Zen4] Dump SMBE and BMEC sub-leaves of CPUID 0x80000020</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1688212800">- update to 1.96.5
  * [AMD]
    Adding the "AMD Ryzen 5 5600X3D"
    Introducing the Zen4c Bergamo architecture
    Specs fixing of Embedded V-series and 3000 Series Processors
    Adding MENDOCINO, RAPHAEL Pro, PHOENIX Pro among others</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1712318400">- added preamble file for %kernel_module_package macro
- update to 1.97.1
  * added aarch64 support
  * upstream did not provide a summary changelog. Full list of commits:
    https://github.com/cyring/CoreFreq/compare/1.96.5...1.97.1</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715860800">- update to 1.97.2
  * [AMD]
  - [Hawk Point] Adding Ryzen PRO processors
  - [Phoenix] Adding the unlocked Ryzen 8000 Series
  * [Intel]
  - [MeteorLake] New bits specified
  - EEO and R2H bits inversion fix in MSR_POWER_CTL (0x1fc)
  - Reverse specification of MSR UNCORE_PERF_STATUS
  - Prefetchers fix of L1 Scrubbing, L1 Next Page and L2 AMP
  * [AArch64]
  - Providing Exclusive Load/Store to atomic operations
  - Improved asm of various macro functions
  - Removed LEGACY macros
  - Optimized the CORE_COUNT macros
  - Marked the Tools feature as nominal: Stress functions available
  - Allow user access to Retired Instructions counter
  - Fix Instructions counter overflow
  - Other PMC enhancements
  * [CR]
  - Fix a building issue with AlmaLinux aka RHEL-9
  - Linux kernel 6.9: Avoid redefinition of Intel MSR macros
  * [Doc]
  - README section for AlmaLinux
  - CONFIG_TRIM_UNUSED_KSYMS kernel build config is forbidden</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715947200">- fix dependency on kernel module that was not versioned</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1722081600">- update to 1.98.0
  * [Build]
  - Change dkms configuration to install into /usr/bin/
  - Solved compilation with Fedora using RHEL MINOR version number 99
  - [CR] Fixed some compilation warnings
  - [CR] Fix memory allocation in kernel pages for the SysGate
  - Workaround to musl change in basename (#494)
  - aarch64: Build with Redhat RHEL version 9
  - [CR] x86_64: Prevent array size overflow
  - dkms and ckms configuration files upgraded to version 1.98
  * [Intel]
  - [Raptor Lake] Adding the HB DID of i7-14700K' IMC
  - Mitigation mechanism: GDS_NO; RFDS_NO; MONITOR_MITG_NO
  - Apply some SDM Documentation Changes
  - [MTL] Fix CMD Stretch bit range width
  - Added method CLOCK_FLEX_MAX with Xeon's Nehalem &amp; Core 2
  - Grants full MSR_FLEX_RATIO access to tested architectures:
  - Alder Lake/S
  - Tiger Lake/U
  - Westmere/Gulftown
  - Provides the overclocking bins with unlocked processors
  - Query the Overclocking bit (OC) from Capabilities
  - Adding technologies: VMD, HDCP, IPU and VPU
  - Volume Management Device
  - High-Bandwidth Digital Content Protection
  - Image Processing Unit
  - Vision Processing Unit
  - Gaussian &amp; Neural Accelerator - GNA technology
  - [CR] Renamed Gemini Lake structures
  - [Meteor Lake] Introducing memory controller decoder
  * [AArch64]
  - Optimizing the Vcore seek
  - Workaround to Package discrete voltage: the highest Vcore
  - Improving computation of Euclidean division
  - Adjust frequency division in CNTFRQ and PMU counters
  - Scale a frequency factor from the interval
  - Refactoring the frequency ratios for decimal precision
  - Compile dev_pm_opp_put if Kernel greater or equal 4.11
  - Get the voltage core of CPUs from OPP
  * [AMD]
  - [Zen4][Raphael] Adding the EPYC 4004 Series
  - [Zen4] Clarify Hawk Point and Phoenix-Refresh architectures
  - [Family 19h] New voltage formula assigned to model 61h
  - Vcore activated
  - Voltage SoC deactivated
  - [Zen] Prevent the calculation of negative temperature (issue #496)
  - [Family 18h] Documented Hygon C86 7375
  - [Family 19h] PStateDef specification: Adding VID[8] bit 32
  - Specification of MSR HW_PSTATE_STATUS
  * [CLI]
  - aarch64: Display the state of the Memory Management Unit (MMU)
  - aarch64: State of Instruction Cache Unit I$ and Data Cache Unit D$
  - Added UI_RULER_MINIMUM &amp; UI_RULER_MAXIMUM building constraints
  - Revert "[CLI] Responsive ruler to architectural context"
  - This reverts commit 4bc38d6.
  - x86_64: AMD Boost and P-States redesigned
  - [UI] Hardening missing console/terminal size
  - Responsive ruler to architectural context
  - x86_64: Make HDCP meaning string shorter
  * [Driver]
  - Created C2U_Enable as a parameter alias of C1U_Enable</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1723032000">- update to 1.98.1
  * [AMD]
  - [Zen] Inject threshold events when thermal is out of bounds
  - Generic Zen architectures renamed with their Family number
  - Added a generic entry for the 1A family
  - Configure TjMax for multiple Ryzen and Threadripper
  - [CR] Optimize AMD temperature filtering function
  - [Zen5] Introducing the Eldora architecture aka "Granite Ridge"
  - [Zen5] Adding entries for Strix Point
  * [Intel]
  - Feature-bits of Core Ultra architecture
  - [TGL][ADL][RPL] New devices to probe IMC and Watchdog
  - [Raptor Lake-E] Adding the IMC probing entries
  - Grant full MSR_FLEX_RATIO access to Raptor Lake (06_B7)
  - Added Host Bridge DIDs of Raptor Lake-E
  - [ADL ... MTL] Code review of IMC decoders
  - [ADL] Compute DIMM Bank and Columns on both channels
  - [ADL] Process channels differently depending on DDR4 or DDR5
  - 12th to 14th generation IMC decoder refactoring
  - [ADL ... MTL] Adding Memory Controller Virtual Channel Count
  - [ADL ... MTL] Channel count as a function of DDPCD DDR_TYPE
  - [ADL ... MTL] Keep all enabled memory controllers
  - [12th and superior] Compute tWR quantity as a function of DDR version
  * [Build]
  - Now leave version number in Makefile
  - Pretty print the build and the clean of outputs
    Allow the V=n option increase the verbose level (incl. kernel)
  - CPU-Freq build against Linux Kernel version 6.11
  * [Documentation]
  - Refreshed README and Makefile</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1723464000">- Update to 1.98.2
  * [Intel]
  - [WDT] Adding multiple devices to probe TCO
    C620 Series Chipset Production SKUs (0xa1a3)
    C620 Series Chipset Super SKUs (0xa223)
    Sunrise Point/H (0xa123)
    Cannon Lake/LP (0x9da3)
    Comet Lake/H (0x06a3)
    Ice Lake/LP (0x34a3)
    Tiger Lake/H (0x43a3)
    Elkhart Lake (0x4b23)
    Kaby Lake/H (0xa2a3)
    Cannon Lake (0xa323)
    Comet Lake/V (0xa3a3)
    Ice Lake/NG (0x38a3)
    Alder lake/M (0x54a3)
    Arrow Lake/S (0x7f23)
    Jasper Lake SMBus (0x4da3)
    Sunrise Point-LP SMBus (0x9d23)
    Comet Lake PCH-LP SMBus (0x02a3)
  - MSR_FLEX_RATIO register
    Grant access to Alder Lake/H (06_9A)
    Deny access to Nehalem/Bloomfield (06_1A)
    Removed a condition in access function</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1725019200">- Update to 1.98.3
  * [AMD]
  - [VMR/RPL/GNR] Voltage Curve Optimizer (VCO)
  - Provide a specific VCO formula based on HWM_CHIPSET=AMD_VCO
    build parameter
  - The standard voltage formulas are restored to these architectures
  - Zen5: Guessed a new P-State MSR bits specification to fix the
    Coefficient Of Frequency (COF)</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1726833600">- Update to 1.98.4
  * [Build]
  - Prevent a collision with macro WRMSRNS within kernel 6.11
  * [x86_64]
  - [Virtualization] Switch to the HCF or VP_RUNTIME counters depending on the detected hypervisor</changelog>
</package>
<package pkgid="aa93a2963a366556281713074e9738b3d0f79028fcf6163191669400ed7afb1a3228e3f378f052017ff41736a173d989c2d472e3c52744133ca9337171d4d93e" name="CoreFreq-kmp-default" arch="x86_64">
  <version epoch="0" ver="1.98.4_k6.11.6_2" rel="1.11"/>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1670932800">- removed modprobe_corefreqd.service.patch and harden_corefreqd.service.patch
  now included in new corefreqd.service file replacing stock one
- update to 1.93.1
  * [PRJ] CoreFreq version 1.93.1
  * [ACPI/CPPC/EPP] Preview of AMD/Zen Energy Preference (CONFIG_CACHY)
  * [UI] Changed the HWP or CPPC ratio bounds.
  * [FIX] Putting `corefreqd` in the root cgroup (issue #379) Thanks to gel-crabs
  * [DOC] Parameters to blacklist the amd_pstate since kernel 6.0.11
  * [AMD][Zen4] Apply a voltage formula based on Rembrandt's. (#378)
  * [AMD][Zen4/Raphael] Attempting temperature per CCD from TCTL+0x308
  * [AMD][Zen4] Changed Timer loop
  * [CR] CLI code review and UI optimizations
  * [UI] Auto refresh the Topology items when off/online
  * [CR] Conditionally build with additional PMC Counters
  * [Intel] Adding Z8000 System Memory Controller Registers
  * [CR] Transformed global variable in cells padding
  * [UI] Windows re-scaling fix
  * [UI] Apply color theming to the CPPC capabilities list.
  * [AMD][Raphael] Adding device DIDs to probe UMC and IOMMU
  * [CPPC/FMW] Computes value bounds while Enabling/Disabling firmware
  * [CR] CPPC lib errors are now raised to Debug level
  * [AMD][Zen4] Increased the UMC size to 12 channels.
  * [CPPC] Handles the OffLine CPU case.
  * [CLI] Refactoring HWP/CPPC to print all capabilities per CPU
  * [ACPI] Computes the CPPC Bounds
  * [Intel] Linear Address Masking (LAM)
  * [CLI] EFER: Left aligned labels
  * [AMD] Reports UAIE and AIBRSE bits from EFER system register
  * [CLI] Changed mitigation mechanisms incapability labels
  * [AMD][Zen2] Mitigation Mechanism BTC-NOBR * ACPI/OSPM documentation
  * [CR] Code review on bit masks
  * [CPPC][ACPI] Kernel may decode the Guaranteed Performance Register
  * [UI] Optimize the cycles to clear the time bar.
  * [CR] Code review for extra compiler warnings
  * [UI] Time of the day displayed in the right side of menu
  * [UI] Display the current date and time in menu bar
  * [Kernel] Introducing support of `CONFIG_SCHED_BORE`
  * [CLI] Fixing ambiguous CPPC report: hardware vs firmware
  * [CLI] Surrounds _CPC feature with square brackets
  * [CPPC] Provides the ACPI _CPC object state.
  * [UI] Colors the task being tracked in the tracking list
  * [UI] Display the current time in the menu bar
  * [CLI] Reserve the programmable TDP section to Intel processors.
  * [AMD/Zen3+] Improving the DIMM geometry of Rembrandt UMC</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1672747200">- update to 1.94.1:
  * [Intel] Gemini Lake
  * [AMD] Ryzen 5 6600 H SoC, UMC channels
  * [AMD] Rembrandt: maximum of two UMC channels
  * [AMD] Raphael: Decodes DIMM geometry from AddrCfg
  * [AMD] Zen: Aggregation refactored
  * [AMD] Improved DDR5 clock decoding
  * Optimized Idle Loop</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1673006400">- update to 1.94.3:
  * [AMD][RMB] If UMC is quad channels then unpopulate odd channels
  * [AMD][RPL] Provide Service Processor Vcore as workaround
  * [UI] Auto size and lay performance capabilities window
  * [UI] Adding comments to the EEO and R2H technologies
  * [AMD][Raphael] 7950X3D, 7900X3D. support</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1674475200">- update to 1.95.1:
  * [Intel] RPL: voltage of Pcore, Ecore, System Agent
  * [Intel] RPL and ADL Chipset device IDs
  * [Intel] Decode the RPL IMC and improve DDR5 support
  * [Build] Raise `MAX_FREQ_HZ` up to 7125000000 Hertz
  * [Intel] Mobile {Coffee Lake, Kaby Lake} codenames
  * [Intel] Braswell codename detection
  * [AMD] SYSCFG Register
  * [AMD] EPYC 9654
  * [AMD] Transparent SME
  * [AMD] DRAM Data Scrambling
  * [AMD] Adding "Barcelo R" and "Rembrandt R"</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1675944000">- update to 1.95.2:
  * Fixed the aggregation of the minimum ratio
  Intel:
  * [Airmont][Silvermont] Attempt to decode `tCKE` from DRMC
    register
  * [Airmont] Improve `tWTPr`, `B2B`, `tWWDR` timings
  * [Airmont] Provide a new IMC decoder
  * Add the Emerald Rapids architecture entry
  * [DDR5][DDR4] Add the `RCDw` IMC timing
  * [Raptor Lake ] De-activate the MSR Uncore counter
  AMD:
  * "Zen3/Barcelo-R" and "Zen3+ Rembrandt-R" codenames
  * [Zen] Thermal highest limit reset fix
  Misc:
  * Code review and Registers documentation:
    AMD HWCR, Intel HDC and DRP</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677067200">- update to 1.95.4
  * [Intel] [from 11th to 14th gen]
    Convert the DRAM Speed to MT/s unit
    Compute the Bus Rate based on the BIOS MC PLL
- update to 1.95.3
  * [Intel] [Airmont]
    Improved the IMC geometry
    Introducing the Spreadtrum architecture
    Fixed the Bus and DRAM frequency rates
  * [Intel] [from 11th to 13th gen] Attempt to probe the interleaved controllers
  * [Intel] [Alder Lake/H] Attempt to decode the TCO Watchdog</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677153600">- added leap_compile_fix.patch to fix compilation on Leap</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1683115200">- removed leap_compile_fix.patch no needed anymore
- update to 1.96.0
  * [AMD]
    [RPL/X3D] Disabling the turbo boosted P-states change
    [PHOENIX] Adding Z1, U and HS PRO series.
    [Genoa] DAC address at UMC BAR + 0x40
    [Zen4] Adding the PCI entries of Genoa
    [Zen2] Adding remaining PCI entries
    [Zen] Query DAC &amp; CFG with the right UMC base address register
    [Zen4] Dump the CPUID Extended CPU Topology leaves.
    [Zen][Embedded][Banded Kestrel] R1000 Processor Family
    [Zen][Embedded] "Great Horned Owl", "River Hawk", "Grey Hawk"
    Complete the "Raven Ridge" and "Picasso" lists
    [EPYC] Moved "Snowy Owl" Embedded processors to CPUID 8F_01
    [Zen4] introducing Phoenix and Dragon Range
    [RMB] adding the Ryzen Embedded V3000 processors
    [VMR] adding the "AMD Ryzen 9 PRO 5945"
  * [Intel]
    Adding Granite Rapids, Sierra Forest, Grand Ridge entries
    Adding "Lunar Lake" and "Arrow Lake" entries.
  * [UI]
    Optimized decimal to digits converter
    Allow task tracker to select up to pid_max
    Can trace the frozen states of Linux tasks.
    Only print HWP frequencies within bounds.
    Fix ruler's aggregation.
  * [CR]
    Check CPUID[HV_PARTITION_PRIVILEGE_MASK] for HV_X64_MSR_VP_RUNTIME
    Uninitialized variable fix.
    [CPPC] Build EPP with KERNEL_VERSION(6) rather than CONFIG_CACHY
    [KERNEL] Linux 6.3: Employ modifier calls with the vma-&gt;vm_flags</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1684065600">- update to 1.96.1
  * [Driver]
  - Postpone Clock Source registration during startup until the Base Clock is computed.
  - Change class_create() according to Linux Kernel 6.4
  - Clear interrupt flag (cli) after Halt in the Idle method
  * [AMD]
  - [PHOENIX] Adding Ryzen 7940H, 7840H, 7640H
  - [VERMEER] Adding Ryzen PRO and Embedded processors
  - Ryzen Z1 CPUID' brand fix
  - Adding EPYC Embedded 9004 Series as Genoa
  - Adding EPYC Embedded 7003 Series as Milan
  - Adding EPYC Embedded 7002 Series as Rome
  - Adding EPYC Embedded 7001 Series as Naples</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1685880000">- update to 1.96.2
  * [Driver]
  - Allows compilation to keep going without CONFIG_ACPI_CPPC_LIB
  * [Client]
  - Adding two command line arguments:
  - Op Show Package C-States
  - OW Toggle Energy units
  * [AMD]
  - Specification of some Configuration MSRs</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1686830400">- update to 1.96.4
  * [AMD]
  - Display CPUID state of new and legacy features:
    Fused Multiply Add [FMA4]
    Extended Operation Support [XOP]
    Translation Cache Extension [TCE]
    Trailing Bit Manipulation [TBM]
    OS Visible Work-around [OSVW]
    LOCK prefix to read CR8 [AltMov]
  * [Intel]
  - Advanced Matrix Extensions [AMX]
  - Bits and Features of Sierra Forest and Grand Ridge
  - Attempt to decode the Meteor Lake Memory Controller
- update to 1.96.3
  * [AMD]
  - [Zeppelin] Probe more than one UMC controllers on Ryzen Threadripper 1900X
  - [Zen4] Dump SMBE and BMEC sub-leaves of CPUID 0x80000020</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1688212800">- update to 1.96.5
  * [AMD]
    Adding the "AMD Ryzen 5 5600X3D"
    Introducing the Zen4c Bergamo architecture
    Specs fixing of Embedded V-series and 3000 Series Processors
    Adding MENDOCINO, RAPHAEL Pro, PHOENIX Pro among others</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1712318400">- added preamble file for %kernel_module_package macro
- update to 1.97.1
  * added aarch64 support
  * upstream did not provide a summary changelog. Full list of commits:
    https://github.com/cyring/CoreFreq/compare/1.96.5...1.97.1</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715860800">- update to 1.97.2
  * [AMD]
  - [Hawk Point] Adding Ryzen PRO processors
  - [Phoenix] Adding the unlocked Ryzen 8000 Series
  * [Intel]
  - [MeteorLake] New bits specified
  - EEO and R2H bits inversion fix in MSR_POWER_CTL (0x1fc)
  - Reverse specification of MSR UNCORE_PERF_STATUS
  - Prefetchers fix of L1 Scrubbing, L1 Next Page and L2 AMP
  * [AArch64]
  - Providing Exclusive Load/Store to atomic operations
  - Improved asm of various macro functions
  - Removed LEGACY macros
  - Optimized the CORE_COUNT macros
  - Marked the Tools feature as nominal: Stress functions available
  - Allow user access to Retired Instructions counter
  - Fix Instructions counter overflow
  - Other PMC enhancements
  * [CR]
  - Fix a building issue with AlmaLinux aka RHEL-9
  - Linux kernel 6.9: Avoid redefinition of Intel MSR macros
  * [Doc]
  - README section for AlmaLinux
  - CONFIG_TRIM_UNUSED_KSYMS kernel build config is forbidden</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715947200">- fix dependency on kernel module that was not versioned</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1722081600">- update to 1.98.0
  * [Build]
  - Change dkms configuration to install into /usr/bin/
  - Solved compilation with Fedora using RHEL MINOR version number 99
  - [CR] Fixed some compilation warnings
  - [CR] Fix memory allocation in kernel pages for the SysGate
  - Workaround to musl change in basename (#494)
  - aarch64: Build with Redhat RHEL version 9
  - [CR] x86_64: Prevent array size overflow
  - dkms and ckms configuration files upgraded to version 1.98
  * [Intel]
  - [Raptor Lake] Adding the HB DID of i7-14700K' IMC
  - Mitigation mechanism: GDS_NO; RFDS_NO; MONITOR_MITG_NO
  - Apply some SDM Documentation Changes
  - [MTL] Fix CMD Stretch bit range width
  - Added method CLOCK_FLEX_MAX with Xeon's Nehalem &amp; Core 2
  - Grants full MSR_FLEX_RATIO access to tested architectures:
  - Alder Lake/S
  - Tiger Lake/U
  - Westmere/Gulftown
  - Provides the overclocking bins with unlocked processors
  - Query the Overclocking bit (OC) from Capabilities
  - Adding technologies: VMD, HDCP, IPU and VPU
  - Volume Management Device
  - High-Bandwidth Digital Content Protection
  - Image Processing Unit
  - Vision Processing Unit
  - Gaussian &amp; Neural Accelerator - GNA technology
  - [CR] Renamed Gemini Lake structures
  - [Meteor Lake] Introducing memory controller decoder
  * [AArch64]
  - Optimizing the Vcore seek
  - Workaround to Package discrete voltage: the highest Vcore
  - Improving computation of Euclidean division
  - Adjust frequency division in CNTFRQ and PMU counters
  - Scale a frequency factor from the interval
  - Refactoring the frequency ratios for decimal precision
  - Compile dev_pm_opp_put if Kernel greater or equal 4.11
  - Get the voltage core of CPUs from OPP
  * [AMD]
  - [Zen4][Raphael] Adding the EPYC 4004 Series
  - [Zen4] Clarify Hawk Point and Phoenix-Refresh architectures
  - [Family 19h] New voltage formula assigned to model 61h
  - Vcore activated
  - Voltage SoC deactivated
  - [Zen] Prevent the calculation of negative temperature (issue #496)
  - [Family 18h] Documented Hygon C86 7375
  - [Family 19h] PStateDef specification: Adding VID[8] bit 32
  - Specification of MSR HW_PSTATE_STATUS
  * [CLI]
  - aarch64: Display the state of the Memory Management Unit (MMU)
  - aarch64: State of Instruction Cache Unit I$ and Data Cache Unit D$
  - Added UI_RULER_MINIMUM &amp; UI_RULER_MAXIMUM building constraints
  - Revert "[CLI] Responsive ruler to architectural context"
  - This reverts commit 4bc38d6.
  - x86_64: AMD Boost and P-States redesigned
  - [UI] Hardening missing console/terminal size
  - Responsive ruler to architectural context
  - x86_64: Make HDCP meaning string shorter
  * [Driver]
  - Created C2U_Enable as a parameter alias of C1U_Enable</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1723032000">- update to 1.98.1
  * [AMD]
  - [Zen] Inject threshold events when thermal is out of bounds
  - Generic Zen architectures renamed with their Family number
  - Added a generic entry for the 1A family
  - Configure TjMax for multiple Ryzen and Threadripper
  - [CR] Optimize AMD temperature filtering function
  - [Zen5] Introducing the Eldora architecture aka "Granite Ridge"
  - [Zen5] Adding entries for Strix Point
  * [Intel]
  - Feature-bits of Core Ultra architecture
  - [TGL][ADL][RPL] New devices to probe IMC and Watchdog
  - [Raptor Lake-E] Adding the IMC probing entries
  - Grant full MSR_FLEX_RATIO access to Raptor Lake (06_B7)
  - Added Host Bridge DIDs of Raptor Lake-E
  - [ADL ... MTL] Code review of IMC decoders
  - [ADL] Compute DIMM Bank and Columns on both channels
  - [ADL] Process channels differently depending on DDR4 or DDR5
  - 12th to 14th generation IMC decoder refactoring
  - [ADL ... MTL] Adding Memory Controller Virtual Channel Count
  - [ADL ... MTL] Channel count as a function of DDPCD DDR_TYPE
  - [ADL ... MTL] Keep all enabled memory controllers
  - [12th and superior] Compute tWR quantity as a function of DDR version
  * [Build]
  - Now leave version number in Makefile
  - Pretty print the build and the clean of outputs
    Allow the V=n option increase the verbose level (incl. kernel)
  - CPU-Freq build against Linux Kernel version 6.11
  * [Documentation]
  - Refreshed README and Makefile</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1723464000">- Update to 1.98.2
  * [Intel]
  - [WDT] Adding multiple devices to probe TCO
    C620 Series Chipset Production SKUs (0xa1a3)
    C620 Series Chipset Super SKUs (0xa223)
    Sunrise Point/H (0xa123)
    Cannon Lake/LP (0x9da3)
    Comet Lake/H (0x06a3)
    Ice Lake/LP (0x34a3)
    Tiger Lake/H (0x43a3)
    Elkhart Lake (0x4b23)
    Kaby Lake/H (0xa2a3)
    Cannon Lake (0xa323)
    Comet Lake/V (0xa3a3)
    Ice Lake/NG (0x38a3)
    Alder lake/M (0x54a3)
    Arrow Lake/S (0x7f23)
    Jasper Lake SMBus (0x4da3)
    Sunrise Point-LP SMBus (0x9d23)
    Comet Lake PCH-LP SMBus (0x02a3)
  - MSR_FLEX_RATIO register
    Grant access to Alder Lake/H (06_9A)
    Deny access to Nehalem/Bloomfield (06_1A)
    Removed a condition in access function</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1725019200">- Update to 1.98.3
  * [AMD]
  - [VMR/RPL/GNR] Voltage Curve Optimizer (VCO)
  - Provide a specific VCO formula based on HWM_CHIPSET=AMD_VCO
    build parameter
  - The standard voltage formulas are restored to these architectures
  - Zen5: Guessed a new P-State MSR bits specification to fix the
    Coefficient Of Frequency (COF)</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1726833600">- Update to 1.98.4
  * [Build]
  - Prevent a collision with macro WRMSRNS within kernel 6.11
  * [x86_64]
  - [Virtualization] Switch to the HCF or VP_RUNTIME counters depending on the detected hypervisor</changelog>
</package>
<package pkgid="1fe557c8e3d164ae6c89038eaccc8d7d97b019832cfbbe055da79f82197623109cbbcd694ee938737a0e236b198f9d34d93f69b84357670de5046f6af79aae52" name="CoreFreq-kmp-default" arch="x86_64">
  <version epoch="0" ver="1.98.5_k6.11.8_1" rel="1.3"/>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1672747200">- update to 1.94.1:
  * [Intel] Gemini Lake
  * [AMD] Ryzen 5 6600 H SoC, UMC channels
  * [AMD] Rembrandt: maximum of two UMC channels
  * [AMD] Raphael: Decodes DIMM geometry from AddrCfg
  * [AMD] Zen: Aggregation refactored
  * [AMD] Improved DDR5 clock decoding
  * Optimized Idle Loop</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1673006400">- update to 1.94.3:
  * [AMD][RMB] If UMC is quad channels then unpopulate odd channels
  * [AMD][RPL] Provide Service Processor Vcore as workaround
  * [UI] Auto size and lay performance capabilities window
  * [UI] Adding comments to the EEO and R2H technologies
  * [AMD][Raphael] 7950X3D, 7900X3D. support</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1674475200">- update to 1.95.1:
  * [Intel] RPL: voltage of Pcore, Ecore, System Agent
  * [Intel] RPL and ADL Chipset device IDs
  * [Intel] Decode the RPL IMC and improve DDR5 support
  * [Build] Raise `MAX_FREQ_HZ` up to 7125000000 Hertz
  * [Intel] Mobile {Coffee Lake, Kaby Lake} codenames
  * [Intel] Braswell codename detection
  * [AMD] SYSCFG Register
  * [AMD] EPYC 9654
  * [AMD] Transparent SME
  * [AMD] DRAM Data Scrambling
  * [AMD] Adding "Barcelo R" and "Rembrandt R"</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1675944000">- update to 1.95.2:
  * Fixed the aggregation of the minimum ratio
  Intel:
  * [Airmont][Silvermont] Attempt to decode `tCKE` from DRMC
    register
  * [Airmont] Improve `tWTPr`, `B2B`, `tWWDR` timings
  * [Airmont] Provide a new IMC decoder
  * Add the Emerald Rapids architecture entry
  * [DDR5][DDR4] Add the `RCDw` IMC timing
  * [Raptor Lake ] De-activate the MSR Uncore counter
  AMD:
  * "Zen3/Barcelo-R" and "Zen3+ Rembrandt-R" codenames
  * [Zen] Thermal highest limit reset fix
  Misc:
  * Code review and Registers documentation:
    AMD HWCR, Intel HDC and DRP</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677067200">- update to 1.95.4
  * [Intel] [from 11th to 14th gen]
    Convert the DRAM Speed to MT/s unit
    Compute the Bus Rate based on the BIOS MC PLL
- update to 1.95.3
  * [Intel] [Airmont]
    Improved the IMC geometry
    Introducing the Spreadtrum architecture
    Fixed the Bus and DRAM frequency rates
  * [Intel] [from 11th to 13th gen] Attempt to probe the interleaved controllers
  * [Intel] [Alder Lake/H] Attempt to decode the TCO Watchdog</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677153600">- added leap_compile_fix.patch to fix compilation on Leap</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1683115200">- removed leap_compile_fix.patch no needed anymore
- update to 1.96.0
  * [AMD]
    [RPL/X3D] Disabling the turbo boosted P-states change
    [PHOENIX] Adding Z1, U and HS PRO series.
    [Genoa] DAC address at UMC BAR + 0x40
    [Zen4] Adding the PCI entries of Genoa
    [Zen2] Adding remaining PCI entries
    [Zen] Query DAC &amp; CFG with the right UMC base address register
    [Zen4] Dump the CPUID Extended CPU Topology leaves.
    [Zen][Embedded][Banded Kestrel] R1000 Processor Family
    [Zen][Embedded] "Great Horned Owl", "River Hawk", "Grey Hawk"
    Complete the "Raven Ridge" and "Picasso" lists
    [EPYC] Moved "Snowy Owl" Embedded processors to CPUID 8F_01
    [Zen4] introducing Phoenix and Dragon Range
    [RMB] adding the Ryzen Embedded V3000 processors
    [VMR] adding the "AMD Ryzen 9 PRO 5945"
  * [Intel]
    Adding Granite Rapids, Sierra Forest, Grand Ridge entries
    Adding "Lunar Lake" and "Arrow Lake" entries.
  * [UI]
    Optimized decimal to digits converter
    Allow task tracker to select up to pid_max
    Can trace the frozen states of Linux tasks.
    Only print HWP frequencies within bounds.
    Fix ruler's aggregation.
  * [CR]
    Check CPUID[HV_PARTITION_PRIVILEGE_MASK] for HV_X64_MSR_VP_RUNTIME
    Uninitialized variable fix.
    [CPPC] Build EPP with KERNEL_VERSION(6) rather than CONFIG_CACHY
    [KERNEL] Linux 6.3: Employ modifier calls with the vma-&gt;vm_flags</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1684065600">- update to 1.96.1
  * [Driver]
  - Postpone Clock Source registration during startup until the Base Clock is computed.
  - Change class_create() according to Linux Kernel 6.4
  - Clear interrupt flag (cli) after Halt in the Idle method
  * [AMD]
  - [PHOENIX] Adding Ryzen 7940H, 7840H, 7640H
  - [VERMEER] Adding Ryzen PRO and Embedded processors
  - Ryzen Z1 CPUID' brand fix
  - Adding EPYC Embedded 9004 Series as Genoa
  - Adding EPYC Embedded 7003 Series as Milan
  - Adding EPYC Embedded 7002 Series as Rome
  - Adding EPYC Embedded 7001 Series as Naples</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1685880000">- update to 1.96.2
  * [Driver]
  - Allows compilation to keep going without CONFIG_ACPI_CPPC_LIB
  * [Client]
  - Adding two command line arguments:
  - Op Show Package C-States
  - OW Toggle Energy units
  * [AMD]
  - Specification of some Configuration MSRs</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1686830400">- update to 1.96.4
  * [AMD]
  - Display CPUID state of new and legacy features:
    Fused Multiply Add [FMA4]
    Extended Operation Support [XOP]
    Translation Cache Extension [TCE]
    Trailing Bit Manipulation [TBM]
    OS Visible Work-around [OSVW]
    LOCK prefix to read CR8 [AltMov]
  * [Intel]
  - Advanced Matrix Extensions [AMX]
  - Bits and Features of Sierra Forest and Grand Ridge
  - Attempt to decode the Meteor Lake Memory Controller
- update to 1.96.3
  * [AMD]
  - [Zeppelin] Probe more than one UMC controllers on Ryzen Threadripper 1900X
  - [Zen4] Dump SMBE and BMEC sub-leaves of CPUID 0x80000020</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1688212800">- update to 1.96.5
  * [AMD]
    Adding the "AMD Ryzen 5 5600X3D"
    Introducing the Zen4c Bergamo architecture
    Specs fixing of Embedded V-series and 3000 Series Processors
    Adding MENDOCINO, RAPHAEL Pro, PHOENIX Pro among others</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1712318400">- added preamble file for %kernel_module_package macro
- update to 1.97.1
  * added aarch64 support
  * upstream did not provide a summary changelog. Full list of commits:
    https://github.com/cyring/CoreFreq/compare/1.96.5...1.97.1</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715860800">- update to 1.97.2
  * [AMD]
  - [Hawk Point] Adding Ryzen PRO processors
  - [Phoenix] Adding the unlocked Ryzen 8000 Series
  * [Intel]
  - [MeteorLake] New bits specified
  - EEO and R2H bits inversion fix in MSR_POWER_CTL (0x1fc)
  - Reverse specification of MSR UNCORE_PERF_STATUS
  - Prefetchers fix of L1 Scrubbing, L1 Next Page and L2 AMP
  * [AArch64]
  - Providing Exclusive Load/Store to atomic operations
  - Improved asm of various macro functions
  - Removed LEGACY macros
  - Optimized the CORE_COUNT macros
  - Marked the Tools feature as nominal: Stress functions available
  - Allow user access to Retired Instructions counter
  - Fix Instructions counter overflow
  - Other PMC enhancements
  * [CR]
  - Fix a building issue with AlmaLinux aka RHEL-9
  - Linux kernel 6.9: Avoid redefinition of Intel MSR macros
  * [Doc]
  - README section for AlmaLinux
  - CONFIG_TRIM_UNUSED_KSYMS kernel build config is forbidden</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715947200">- fix dependency on kernel module that was not versioned</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1722081600">- update to 1.98.0
  * [Build]
  - Change dkms configuration to install into /usr/bin/
  - Solved compilation with Fedora using RHEL MINOR version number 99
  - [CR] Fixed some compilation warnings
  - [CR] Fix memory allocation in kernel pages for the SysGate
  - Workaround to musl change in basename (#494)
  - aarch64: Build with Redhat RHEL version 9
  - [CR] x86_64: Prevent array size overflow
  - dkms and ckms configuration files upgraded to version 1.98
  * [Intel]
  - [Raptor Lake] Adding the HB DID of i7-14700K' IMC
  - Mitigation mechanism: GDS_NO; RFDS_NO; MONITOR_MITG_NO
  - Apply some SDM Documentation Changes
  - [MTL] Fix CMD Stretch bit range width
  - Added method CLOCK_FLEX_MAX with Xeon's Nehalem &amp; Core 2
  - Grants full MSR_FLEX_RATIO access to tested architectures:
  - Alder Lake/S
  - Tiger Lake/U
  - Westmere/Gulftown
  - Provides the overclocking bins with unlocked processors
  - Query the Overclocking bit (OC) from Capabilities
  - Adding technologies: VMD, HDCP, IPU and VPU
  - Volume Management Device
  - High-Bandwidth Digital Content Protection
  - Image Processing Unit
  - Vision Processing Unit
  - Gaussian &amp; Neural Accelerator - GNA technology
  - [CR] Renamed Gemini Lake structures
  - [Meteor Lake] Introducing memory controller decoder
  * [AArch64]
  - Optimizing the Vcore seek
  - Workaround to Package discrete voltage: the highest Vcore
  - Improving computation of Euclidean division
  - Adjust frequency division in CNTFRQ and PMU counters
  - Scale a frequency factor from the interval
  - Refactoring the frequency ratios for decimal precision
  - Compile dev_pm_opp_put if Kernel greater or equal 4.11
  - Get the voltage core of CPUs from OPP
  * [AMD]
  - [Zen4][Raphael] Adding the EPYC 4004 Series
  - [Zen4] Clarify Hawk Point and Phoenix-Refresh architectures
  - [Family 19h] New voltage formula assigned to model 61h
  - Vcore activated
  - Voltage SoC deactivated
  - [Zen] Prevent the calculation of negative temperature (issue #496)
  - [Family 18h] Documented Hygon C86 7375
  - [Family 19h] PStateDef specification: Adding VID[8] bit 32
  - Specification of MSR HW_PSTATE_STATUS
  * [CLI]
  - aarch64: Display the state of the Memory Management Unit (MMU)
  - aarch64: State of Instruction Cache Unit I$ and Data Cache Unit D$
  - Added UI_RULER_MINIMUM &amp; UI_RULER_MAXIMUM building constraints
  - Revert "[CLI] Responsive ruler to architectural context"
  - This reverts commit 4bc38d6.
  - x86_64: AMD Boost and P-States redesigned
  - [UI] Hardening missing console/terminal size
  - Responsive ruler to architectural context
  - x86_64: Make HDCP meaning string shorter
  * [Driver]
  - Created C2U_Enable as a parameter alias of C1U_Enable</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1723032000">- update to 1.98.1
  * [AMD]
  - [Zen] Inject threshold events when thermal is out of bounds
  - Generic Zen architectures renamed with their Family number
  - Added a generic entry for the 1A family
  - Configure TjMax for multiple Ryzen and Threadripper
  - [CR] Optimize AMD temperature filtering function
  - [Zen5] Introducing the Eldora architecture aka "Granite Ridge"
  - [Zen5] Adding entries for Strix Point
  * [Intel]
  - Feature-bits of Core Ultra architecture
  - [TGL][ADL][RPL] New devices to probe IMC and Watchdog
  - [Raptor Lake-E] Adding the IMC probing entries
  - Grant full MSR_FLEX_RATIO access to Raptor Lake (06_B7)
  - Added Host Bridge DIDs of Raptor Lake-E
  - [ADL ... MTL] Code review of IMC decoders
  - [ADL] Compute DIMM Bank and Columns on both channels
  - [ADL] Process channels differently depending on DDR4 or DDR5
  - 12th to 14th generation IMC decoder refactoring
  - [ADL ... MTL] Adding Memory Controller Virtual Channel Count
  - [ADL ... MTL] Channel count as a function of DDPCD DDR_TYPE
  - [ADL ... MTL] Keep all enabled memory controllers
  - [12th and superior] Compute tWR quantity as a function of DDR version
  * [Build]
  - Now leave version number in Makefile
  - Pretty print the build and the clean of outputs
    Allow the V=n option increase the verbose level (incl. kernel)
  - CPU-Freq build against Linux Kernel version 6.11
  * [Documentation]
  - Refreshed README and Makefile</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1723464000">- Update to 1.98.2
  * [Intel]
  - [WDT] Adding multiple devices to probe TCO
    C620 Series Chipset Production SKUs (0xa1a3)
    C620 Series Chipset Super SKUs (0xa223)
    Sunrise Point/H (0xa123)
    Cannon Lake/LP (0x9da3)
    Comet Lake/H (0x06a3)
    Ice Lake/LP (0x34a3)
    Tiger Lake/H (0x43a3)
    Elkhart Lake (0x4b23)
    Kaby Lake/H (0xa2a3)
    Cannon Lake (0xa323)
    Comet Lake/V (0xa3a3)
    Ice Lake/NG (0x38a3)
    Alder lake/M (0x54a3)
    Arrow Lake/S (0x7f23)
    Jasper Lake SMBus (0x4da3)
    Sunrise Point-LP SMBus (0x9d23)
    Comet Lake PCH-LP SMBus (0x02a3)
  - MSR_FLEX_RATIO register
    Grant access to Alder Lake/H (06_9A)
    Deny access to Nehalem/Bloomfield (06_1A)
    Removed a condition in access function</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1725019200">- Update to 1.98.3
  * [AMD]
  - [VMR/RPL/GNR] Voltage Curve Optimizer (VCO)
  - Provide a specific VCO formula based on HWM_CHIPSET=AMD_VCO
    build parameter
  - The standard voltage formulas are restored to these architectures
  - Zen5: Guessed a new P-State MSR bits specification to fix the
    Coefficient Of Frequency (COF)</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1726833600">- Update to 1.98.4
  * [Build]
  - Prevent a collision with macro WRMSRNS within kernel 6.11
  * [x86_64]
  - [Virtualization] Switch to the HCF or VP_RUNTIME counters depending on the detected hypervisor</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1731067200">- Update to 1.98.5
  * [UI]
  - Debugging a target clock ratio selector issue
  * [Build]
  - Makefile compliant with the -s silent option
  - [CI] Disable the unfound arm64v8/ubuntu:rolling
  * [AMD]
  - [Strix Point] Adding PRO series
  - [Zen5][Zen5c] Introducing the TURIN architecture
  - Supply a fallback thermal junction max to various Zen series
  - [Zen5] Mitigation mechanisms and Features bits
    SBPB,
    SRSO_NO,
    SRSO_USR_KNL_NO,
    ERMSB,
    FSRS,
    FSRC_CMPSB,
    PREFETCHI
  - [Zen] Added remaining X3D processor models
  - [PHOENIX2] Added the unlocked for overclocking Ryzen 5 8500GE
  - [PHOENIX2] Added the unlocked for overclocking Ryzen 3 8300GE
  - [SIENA] Added the EPYC Embedded 8004 Series
  - [GENOA] Added a left over EPYC Embedded 9534
  - [Turin] Employed the Genoa UMC decoder
  - [Family 1Ah] Updated the PStateDef MSR
  - [Zen] Completed CPUID leaf 0x80000021 from PPR 57238
  - [Zen5/Granite Ridge] Added Ryzen 7 9800X3D processor
  * [Intel]
  - [ARL] Declare PCI ids to probe the IMC as a MTL controller
  - [ARL][IMC] DDR5: tWR = tWRPRE - tCWL - 10
  - [ADL-X/ADL-N] Declare PCI ids to probe the memory controller
  - [LNL] Added PCI ids to probe any IMC and SMBUS
  - [ARL] Completed with SMBUS PCI id
  - [MTL-M] Declare PCI ids to probe the IMC and TCO
  - [MTL-M] Set PCI ids into Daemon
  - [RPL] Added remaining PX and H processor line platforms</changelog>
</package>
<package pkgid="1563c0243223444a2fd31c059aab7958a7b2eddcd73f4eaee4db3d2e08f8868eaa6cda1ba67259eaa82a47029343d72b3b2475f189a724b3d194369ab39fefdb" name="CoreFreq-kmp-default-debuginfo" arch="x86_64">
  <version epoch="0" ver="1.97.1_k6.8.5_1" rel="1.2"/>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1644667200">- Update to version 1.89.3
  * No changelog was made available by upstream</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1646654400">- removed non-working leap15_2.patch and leap15_3.patch:
  Leap 15.4 is the minimum supported version
- Update to version 1.90.1
  * support for Alder Lake architecture:
    in particular, specialized monitoring for Pcore and Ecore
  * more precise DDR5 and DDR4 timings from SKL to ADL:
    introduction of "Gear mode"
  * improvement using Power Limiters:
    zero W on PL1 &amp; PL2; DRAM clampig marked experimental
  * characteristics for Zen architecture:
    CPPC; C1E; MEM CLOCK in raw frequency
  * C-state Core for Ice Lake/X
  * various characteristics of C-state package for AMD/Zen and Intel (Lake)
  * various changes in UI
  * non-regression tests for kernels 5.16.12 and 5.17.rc6</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1655899200">- Update to version 1.91.3
  * No changelog was made available by upstream</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1661169600">- Update to version 1.91.6
  - [AMD/Zen][UMC] Fixed the Mem Clock and ECC regressions
  - Designate the Package identifier in Power consumed readings
  - [Intel/ADL/IMC] Guessing activated channel from the populated DIMM
  - [AMD][UMC, IOMMU] Adding missing DID of family 19h devices
  - [AMD_DataFabric_Cezanne] Removed the Experimental mode
  - Intel/ADL/IMC: Fixing the Memory Channels count
  - [AMD/Zen] Improved UMC mapping. Threadripper 3960X issue
  - Avoid some NULL pointer strings during SMBIOS decoding</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1667563200">- update to version 1.92.3
  - Export CPUID bits Intel Sierra Forest, Grand Ridge, Granite Rapids
    and completes AMD64 Fn0000_0007_ECX_x0
  - [Features] WBNOINVD and CLZERO instructions
  - Adding various Mitigation Mechanism aggregations:
    IPRED_DIS_U, IPRED_DIS_S, RRSBA_DIS_U, RRSBA_DIS_S, BHI_DIS_S, MCDT_NO
  - RDPID and UMIP capability fixed.
  - [AMD] Perf. Mon. version based on CPUID_0x80000022.EAX.PerfMonV2
  - [AMD][Zen3+][Rembrandt] Trigger UMC and IOMMU decoders
  - [AMD][Ryzen 5 6600H] Found voltage VID @ SMU 0x6f010 and 0x6f014
  - Introducing AMD Security Feature capabilities:
    SKINIT, SEV, GMET, SEV-ES, SEV-SNP
  - [AMD64] Non-architectural MSR: SPECULATIVE STORE BYPASS DISABLE
  - [Intel][2nd &amp; 3rd gen] Misc IMC optimizations
  - [AMD][Rembrandt] Provides Vcore from a new formula.
  - Dumping CPUID leaves from AMD64 Architecture Programmer’s Manual
  - [Intel][HSW &amp; BDW] Compute the DIMM banks
  - [UI] Re-assigned keys to move or resize windows.
  - [AMD][Zen] Uncore frequency: Improving the Memory Clock divisor
  - [Intel][HSW &amp; BDW][SKL] Make use of same function DimmWidthToRows
  - [AMD][Zen3+][Rembrandt] Provides the thermal sensor.
  - [AMD/Zen2 &amp; Zen3] Removed the HSMP capability.
  - [Intel][CML][RKL][TGL] Compute the DIMM Rows from CH_WIDTH
  - [AMD/EPYC] Adding the CPUID of Zen4 Genoa architecture
  - [AMD/Zen2] Introducing Mendocino architecture
  - Changed MeteorLake/N to CPUID 06_B5
  - [Intel] Computes BIOS DRAM frequency based on PLL_REF100
  - [Intel][SNB/IVB/HSW/BDW] Improved BIOS DRAM frequency
  - [Intel][SNB/IVB] DRAM frequency based on RAM_Select and FSB_Select
  - [Intel][IVB] IMC specifications and optimizations.
  - [Intel][SNB,IVB] Computes the DIMM A from DAS bit in MAD register
  - [Intel][SNB,IVB,HSW,BDW] Rolling back changes to the DIMM topology
  - [Intel][BDW][HSW] Query the IMC Power Down Mode
  - [Intel][IVB][SNB] Attempt to decode the IMC third timings
  - [AMD][Ryzen] Added AMD Ryzen 7 PRO 6860Z
  - [AMD][F17h-F19h] Can toggle ON and OFF the Instruction Cache Unit
  - [AMD] Checking the Ryzen "OEM Only" processors
  - [Intel] Specification of 12th Gen. MSR registers capability
  - [Intel] Adding Raptor Lake-S with CPUID 06_BF
  - [AMD] Introducing Zen 4 / Raphael architecture
  - [Intel][SNB,IVB,HSW] Attempt to assign the Rank per DIMM slot
  - [Intel][SNB,IVB,HSW] Attempt to fix the DIMM(s) topology layout
  - ClockSource: TSC udelay() asm implementation builtin as a default
  - [Intel][Alder Lake] Adding IMC entry for i5-12500 processor
  - [Intel][Alder Lake] Added default case if Processor has only Pcores
  - [Intel][Atom/Bonnell][IMC] Attempt to compute the DIMM geometry
  - [UI][Custom view] Show the Uncore unit in watt or joule
  - [UI] Display HWP or CPPC in footer for capable processors.
  - [CLI] Added HWP Capabilities and HWP Request to the JSON export
  - [CLI] Don't allow the HWP dialog box if feature is not available.
  - [CPPC][Firmware] allows (de)activation of the feature.
  - [CLI] Added CPU ratios to JSON export
  - [CPPC] Improved scaling
  - [CPPC] Build fixed down to Kernel version 3
  - [Kernel/ACPI] Attempt to write CPPC registers</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1667563201">- Repair deficient description grammar.</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1670241600">- update to 1.92.4:
  * [Intel/Skylake-X] Permits MSR_RING_PERF_LIMIT_REASONS</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1670932800">- removed modprobe_corefreqd.service.patch and harden_corefreqd.service.patch
  now included in new corefreqd.service file replacing stock one
- update to 1.93.1
  * [PRJ] CoreFreq version 1.93.1
  * [ACPI/CPPC/EPP] Preview of AMD/Zen Energy Preference (CONFIG_CACHY)
  * [UI] Changed the HWP or CPPC ratio bounds.
  * [FIX] Putting `corefreqd` in the root cgroup (issue #379) Thanks to gel-crabs
  * [DOC] Parameters to blacklist the amd_pstate since kernel 6.0.11
  * [AMD][Zen4] Apply a voltage formula based on Rembrandt's. (#378)
  * [AMD][Zen4/Raphael] Attempting temperature per CCD from TCTL+0x308
  * [AMD][Zen4] Changed Timer loop
  * [CR] CLI code review and UI optimizations
  * [UI] Auto refresh the Topology items when off/online
  * [CR] Conditionally build with additional PMC Counters
  * [Intel] Adding Z8000 System Memory Controller Registers
  * [CR] Transformed global variable in cells padding
  * [UI] Windows re-scaling fix
  * [UI] Apply color theming to the CPPC capabilities list.
  * [AMD][Raphael] Adding device DIDs to probe UMC and IOMMU
  * [CPPC/FMW] Computes value bounds while Enabling/Disabling firmware
  * [CR] CPPC lib errors are now raised to Debug level
  * [AMD][Zen4] Increased the UMC size to 12 channels.
  * [CPPC] Handles the OffLine CPU case.
  * [CLI] Refactoring HWP/CPPC to print all capabilities per CPU
  * [ACPI] Computes the CPPC Bounds
  * [Intel] Linear Address Masking (LAM)
  * [CLI] EFER: Left aligned labels
  * [AMD] Reports UAIE and AIBRSE bits from EFER system register
  * [CLI] Changed mitigation mechanisms incapability labels
  * [AMD][Zen2] Mitigation Mechanism BTC-NOBR * ACPI/OSPM documentation
  * [CR] Code review on bit masks
  * [CPPC][ACPI] Kernel may decode the Guaranteed Performance Register
  * [UI] Optimize the cycles to clear the time bar.
  * [CR] Code review for extra compiler warnings
  * [UI] Time of the day displayed in the right side of menu
  * [UI] Display the current date and time in menu bar
  * [Kernel] Introducing support of `CONFIG_SCHED_BORE`
  * [CLI] Fixing ambiguous CPPC report: hardware vs firmware
  * [CLI] Surrounds _CPC feature with square brackets
  * [CPPC] Provides the ACPI _CPC object state.
  * [UI] Colors the task being tracked in the tracking list
  * [UI] Display the current time in the menu bar
  * [CLI] Reserve the programmable TDP section to Intel processors.
  * [AMD/Zen3+] Improving the DIMM geometry of Rembrandt UMC</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1672747200">- update to 1.94.1:
  * [Intel] Gemini Lake
  * [AMD] Ryzen 5 6600 H SoC, UMC channels
  * [AMD] Rembrandt: maximum of two UMC channels
  * [AMD] Raphael: Decodes DIMM geometry from AddrCfg
  * [AMD] Zen: Aggregation refactored
  * [AMD] Improved DDR5 clock decoding
  * Optimized Idle Loop</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1673006400">- update to 1.94.3:
  * [AMD][RMB] If UMC is quad channels then unpopulate odd channels
  * [AMD][RPL] Provide Service Processor Vcore as workaround
  * [UI] Auto size and lay performance capabilities window
  * [UI] Adding comments to the EEO and R2H technologies
  * [AMD][Raphael] 7950X3D, 7900X3D. support</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1674475200">- update to 1.95.1:
  * [Intel] RPL: voltage of Pcore, Ecore, System Agent
  * [Intel] RPL and ADL Chipset device IDs
  * [Intel] Decode the RPL IMC and improve DDR5 support
  * [Build] Raise `MAX_FREQ_HZ` up to 7125000000 Hertz
  * [Intel] Mobile {Coffee Lake, Kaby Lake} codenames
  * [Intel] Braswell codename detection
  * [AMD] SYSCFG Register
  * [AMD] EPYC 9654
  * [AMD] Transparent SME
  * [AMD] DRAM Data Scrambling
  * [AMD] Adding "Barcelo R" and "Rembrandt R"</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1675944000">- update to 1.95.2:
  * Fixed the aggregation of the minimum ratio
  Intel:
  * [Airmont][Silvermont] Attempt to decode `tCKE` from DRMC
    register
  * [Airmont] Improve `tWTPr`, `B2B`, `tWWDR` timings
  * [Airmont] Provide a new IMC decoder
  * Add the Emerald Rapids architecture entry
  * [DDR5][DDR4] Add the `RCDw` IMC timing
  * [Raptor Lake ] De-activate the MSR Uncore counter
  AMD:
  * "Zen3/Barcelo-R" and "Zen3+ Rembrandt-R" codenames
  * [Zen] Thermal highest limit reset fix
  Misc:
  * Code review and Registers documentation:
    AMD HWCR, Intel HDC and DRP</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677067200">- update to 1.95.4
  * [Intel] [from 11th to 14th gen]
    Convert the DRAM Speed to MT/s unit
    Compute the Bus Rate based on the BIOS MC PLL
- update to 1.95.3
  * [Intel] [Airmont]
    Improved the IMC geometry
    Introducing the Spreadtrum architecture
    Fixed the Bus and DRAM frequency rates
  * [Intel] [from 11th to 13th gen] Attempt to probe the interleaved controllers
  * [Intel] [Alder Lake/H] Attempt to decode the TCO Watchdog</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677153600">- added leap_compile_fix.patch to fix compilation on Leap</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1683115200">- removed leap_compile_fix.patch no needed anymore
- update to 1.96.0
  * [AMD]
    [RPL/X3D] Disabling the turbo boosted P-states change
    [PHOENIX] Adding Z1, U and HS PRO series.
    [Genoa] DAC address at UMC BAR + 0x40
    [Zen4] Adding the PCI entries of Genoa
    [Zen2] Adding remaining PCI entries
    [Zen] Query DAC &amp; CFG with the right UMC base address register
    [Zen4] Dump the CPUID Extended CPU Topology leaves.
    [Zen][Embedded][Banded Kestrel] R1000 Processor Family
    [Zen][Embedded] "Great Horned Owl", "River Hawk", "Grey Hawk"
    Complete the "Raven Ridge" and "Picasso" lists
    [EPYC] Moved "Snowy Owl" Embedded processors to CPUID 8F_01
    [Zen4] introducing Phoenix and Dragon Range
    [RMB] adding the Ryzen Embedded V3000 processors
    [VMR] adding the "AMD Ryzen 9 PRO 5945"
  * [Intel]
    Adding Granite Rapids, Sierra Forest, Grand Ridge entries
    Adding "Lunar Lake" and "Arrow Lake" entries.
  * [UI]
    Optimized decimal to digits converter
    Allow task tracker to select up to pid_max
    Can trace the frozen states of Linux tasks.
    Only print HWP frequencies within bounds.
    Fix ruler's aggregation.
  * [CR]
    Check CPUID[HV_PARTITION_PRIVILEGE_MASK] for HV_X64_MSR_VP_RUNTIME
    Uninitialized variable fix.
    [CPPC] Build EPP with KERNEL_VERSION(6) rather than CONFIG_CACHY
    [KERNEL] Linux 6.3: Employ modifier calls with the vma-&gt;vm_flags</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1684065600">- update to 1.96.1
  * [Driver]
  - Postpone Clock Source registration during startup until the Base Clock is computed.
  - Change class_create() according to Linux Kernel 6.4
  - Clear interrupt flag (cli) after Halt in the Idle method
  * [AMD]
  - [PHOENIX] Adding Ryzen 7940H, 7840H, 7640H
  - [VERMEER] Adding Ryzen PRO and Embedded processors
  - Ryzen Z1 CPUID' brand fix
  - Adding EPYC Embedded 9004 Series as Genoa
  - Adding EPYC Embedded 7003 Series as Milan
  - Adding EPYC Embedded 7002 Series as Rome
  - Adding EPYC Embedded 7001 Series as Naples</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1685880000">- update to 1.96.2
  * [Driver]
  - Allows compilation to keep going without CONFIG_ACPI_CPPC_LIB
  * [Client]
  - Adding two command line arguments:
  - Op Show Package C-States
  - OW Toggle Energy units
  * [AMD]
  - Specification of some Configuration MSRs</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1686830400">- update to 1.96.4
  * [AMD]
  - Display CPUID state of new and legacy features:
    Fused Multiply Add [FMA4]
    Extended Operation Support [XOP]
    Translation Cache Extension [TCE]
    Trailing Bit Manipulation [TBM]
    OS Visible Work-around [OSVW]
    LOCK prefix to read CR8 [AltMov]
  * [Intel]
  - Advanced Matrix Extensions [AMX]
  - Bits and Features of Sierra Forest and Grand Ridge
  - Attempt to decode the Meteor Lake Memory Controller
- update to 1.96.3
  * [AMD]
  - [Zeppelin] Probe more than one UMC controllers on Ryzen Threadripper 1900X
  - [Zen4] Dump SMBE and BMEC sub-leaves of CPUID 0x80000020</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1688212800">- update to 1.96.5
  * [AMD]
    Adding the "AMD Ryzen 5 5600X3D"
    Introducing the Zen4c Bergamo architecture
    Specs fixing of Embedded V-series and 3000 Series Processors
    Adding MENDOCINO, RAPHAEL Pro, PHOENIX Pro among others</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1712318400">- added preamble file for %kernel_module_package macro
- update to 1.97.1
  * added aarch64 support
  * upstream did not provide a summary changelog. Full list of commits:
    https://github.com/cyring/CoreFreq/compare/1.96.5...1.97.1</changelog>
</package>
<package pkgid="33d3eeee37b0bacde71086ac8c4c85325ad369c143b12b66ae391d28df70304a9d403bd15f67a709f71891a99637687cafaf8b49704f86e8cb62b39ff5b1a555" name="CoreFreq-kmp-default-debuginfo" arch="x86_64">
  <version epoch="0" ver="1.97.1_k6.8.6_1" rel="1.3"/>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1644667200">- Update to version 1.89.3
  * No changelog was made available by upstream</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1646654400">- removed non-working leap15_2.patch and leap15_3.patch:
  Leap 15.4 is the minimum supported version
- Update to version 1.90.1
  * support for Alder Lake architecture:
    in particular, specialized monitoring for Pcore and Ecore
  * more precise DDR5 and DDR4 timings from SKL to ADL:
    introduction of "Gear mode"
  * improvement using Power Limiters:
    zero W on PL1 &amp; PL2; DRAM clampig marked experimental
  * characteristics for Zen architecture:
    CPPC; C1E; MEM CLOCK in raw frequency
  * C-state Core for Ice Lake/X
  * various characteristics of C-state package for AMD/Zen and Intel (Lake)
  * various changes in UI
  * non-regression tests for kernels 5.16.12 and 5.17.rc6</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1655899200">- Update to version 1.91.3
  * No changelog was made available by upstream</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1661169600">- Update to version 1.91.6
  - [AMD/Zen][UMC] Fixed the Mem Clock and ECC regressions
  - Designate the Package identifier in Power consumed readings
  - [Intel/ADL/IMC] Guessing activated channel from the populated DIMM
  - [AMD][UMC, IOMMU] Adding missing DID of family 19h devices
  - [AMD_DataFabric_Cezanne] Removed the Experimental mode
  - Intel/ADL/IMC: Fixing the Memory Channels count
  - [AMD/Zen] Improved UMC mapping. Threadripper 3960X issue
  - Avoid some NULL pointer strings during SMBIOS decoding</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1667563200">- update to version 1.92.3
  - Export CPUID bits Intel Sierra Forest, Grand Ridge, Granite Rapids
    and completes AMD64 Fn0000_0007_ECX_x0
  - [Features] WBNOINVD and CLZERO instructions
  - Adding various Mitigation Mechanism aggregations:
    IPRED_DIS_U, IPRED_DIS_S, RRSBA_DIS_U, RRSBA_DIS_S, BHI_DIS_S, MCDT_NO
  - RDPID and UMIP capability fixed.
  - [AMD] Perf. Mon. version based on CPUID_0x80000022.EAX.PerfMonV2
  - [AMD][Zen3+][Rembrandt] Trigger UMC and IOMMU decoders
  - [AMD][Ryzen 5 6600H] Found voltage VID @ SMU 0x6f010 and 0x6f014
  - Introducing AMD Security Feature capabilities:
    SKINIT, SEV, GMET, SEV-ES, SEV-SNP
  - [AMD64] Non-architectural MSR: SPECULATIVE STORE BYPASS DISABLE
  - [Intel][2nd &amp; 3rd gen] Misc IMC optimizations
  - [AMD][Rembrandt] Provides Vcore from a new formula.
  - Dumping CPUID leaves from AMD64 Architecture Programmer’s Manual
  - [Intel][HSW &amp; BDW] Compute the DIMM banks
  - [UI] Re-assigned keys to move or resize windows.
  - [AMD][Zen] Uncore frequency: Improving the Memory Clock divisor
  - [Intel][HSW &amp; BDW][SKL] Make use of same function DimmWidthToRows
  - [AMD][Zen3+][Rembrandt] Provides the thermal sensor.
  - [AMD/Zen2 &amp; Zen3] Removed the HSMP capability.
  - [Intel][CML][RKL][TGL] Compute the DIMM Rows from CH_WIDTH
  - [AMD/EPYC] Adding the CPUID of Zen4 Genoa architecture
  - [AMD/Zen2] Introducing Mendocino architecture
  - Changed MeteorLake/N to CPUID 06_B5
  - [Intel] Computes BIOS DRAM frequency based on PLL_REF100
  - [Intel][SNB/IVB/HSW/BDW] Improved BIOS DRAM frequency
  - [Intel][SNB/IVB] DRAM frequency based on RAM_Select and FSB_Select
  - [Intel][IVB] IMC specifications and optimizations.
  - [Intel][SNB,IVB] Computes the DIMM A from DAS bit in MAD register
  - [Intel][SNB,IVB,HSW,BDW] Rolling back changes to the DIMM topology
  - [Intel][BDW][HSW] Query the IMC Power Down Mode
  - [Intel][IVB][SNB] Attempt to decode the IMC third timings
  - [AMD][Ryzen] Added AMD Ryzen 7 PRO 6860Z
  - [AMD][F17h-F19h] Can toggle ON and OFF the Instruction Cache Unit
  - [AMD] Checking the Ryzen "OEM Only" processors
  - [Intel] Specification of 12th Gen. MSR registers capability
  - [Intel] Adding Raptor Lake-S with CPUID 06_BF
  - [AMD] Introducing Zen 4 / Raphael architecture
  - [Intel][SNB,IVB,HSW] Attempt to assign the Rank per DIMM slot
  - [Intel][SNB,IVB,HSW] Attempt to fix the DIMM(s) topology layout
  - ClockSource: TSC udelay() asm implementation builtin as a default
  - [Intel][Alder Lake] Adding IMC entry for i5-12500 processor
  - [Intel][Alder Lake] Added default case if Processor has only Pcores
  - [Intel][Atom/Bonnell][IMC] Attempt to compute the DIMM geometry
  - [UI][Custom view] Show the Uncore unit in watt or joule
  - [UI] Display HWP or CPPC in footer for capable processors.
  - [CLI] Added HWP Capabilities and HWP Request to the JSON export
  - [CLI] Don't allow the HWP dialog box if feature is not available.
  - [CPPC][Firmware] allows (de)activation of the feature.
  - [CLI] Added CPU ratios to JSON export
  - [CPPC] Improved scaling
  - [CPPC] Build fixed down to Kernel version 3
  - [Kernel/ACPI] Attempt to write CPPC registers</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1667563201">- Repair deficient description grammar.</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1670241600">- update to 1.92.4:
  * [Intel/Skylake-X] Permits MSR_RING_PERF_LIMIT_REASONS</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1670932800">- removed modprobe_corefreqd.service.patch and harden_corefreqd.service.patch
  now included in new corefreqd.service file replacing stock one
- update to 1.93.1
  * [PRJ] CoreFreq version 1.93.1
  * [ACPI/CPPC/EPP] Preview of AMD/Zen Energy Preference (CONFIG_CACHY)
  * [UI] Changed the HWP or CPPC ratio bounds.
  * [FIX] Putting `corefreqd` in the root cgroup (issue #379) Thanks to gel-crabs
  * [DOC] Parameters to blacklist the amd_pstate since kernel 6.0.11
  * [AMD][Zen4] Apply a voltage formula based on Rembrandt's. (#378)
  * [AMD][Zen4/Raphael] Attempting temperature per CCD from TCTL+0x308
  * [AMD][Zen4] Changed Timer loop
  * [CR] CLI code review and UI optimizations
  * [UI] Auto refresh the Topology items when off/online
  * [CR] Conditionally build with additional PMC Counters
  * [Intel] Adding Z8000 System Memory Controller Registers
  * [CR] Transformed global variable in cells padding
  * [UI] Windows re-scaling fix
  * [UI] Apply color theming to the CPPC capabilities list.
  * [AMD][Raphael] Adding device DIDs to probe UMC and IOMMU
  * [CPPC/FMW] Computes value bounds while Enabling/Disabling firmware
  * [CR] CPPC lib errors are now raised to Debug level
  * [AMD][Zen4] Increased the UMC size to 12 channels.
  * [CPPC] Handles the OffLine CPU case.
  * [CLI] Refactoring HWP/CPPC to print all capabilities per CPU
  * [ACPI] Computes the CPPC Bounds
  * [Intel] Linear Address Masking (LAM)
  * [CLI] EFER: Left aligned labels
  * [AMD] Reports UAIE and AIBRSE bits from EFER system register
  * [CLI] Changed mitigation mechanisms incapability labels
  * [AMD][Zen2] Mitigation Mechanism BTC-NOBR * ACPI/OSPM documentation
  * [CR] Code review on bit masks
  * [CPPC][ACPI] Kernel may decode the Guaranteed Performance Register
  * [UI] Optimize the cycles to clear the time bar.
  * [CR] Code review for extra compiler warnings
  * [UI] Time of the day displayed in the right side of menu
  * [UI] Display the current date and time in menu bar
  * [Kernel] Introducing support of `CONFIG_SCHED_BORE`
  * [CLI] Fixing ambiguous CPPC report: hardware vs firmware
  * [CLI] Surrounds _CPC feature with square brackets
  * [CPPC] Provides the ACPI _CPC object state.
  * [UI] Colors the task being tracked in the tracking list
  * [UI] Display the current time in the menu bar
  * [CLI] Reserve the programmable TDP section to Intel processors.
  * [AMD/Zen3+] Improving the DIMM geometry of Rembrandt UMC</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1672747200">- update to 1.94.1:
  * [Intel] Gemini Lake
  * [AMD] Ryzen 5 6600 H SoC, UMC channels
  * [AMD] Rembrandt: maximum of two UMC channels
  * [AMD] Raphael: Decodes DIMM geometry from AddrCfg
  * [AMD] Zen: Aggregation refactored
  * [AMD] Improved DDR5 clock decoding
  * Optimized Idle Loop</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1673006400">- update to 1.94.3:
  * [AMD][RMB] If UMC is quad channels then unpopulate odd channels
  * [AMD][RPL] Provide Service Processor Vcore as workaround
  * [UI] Auto size and lay performance capabilities window
  * [UI] Adding comments to the EEO and R2H technologies
  * [AMD][Raphael] 7950X3D, 7900X3D. support</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1674475200">- update to 1.95.1:
  * [Intel] RPL: voltage of Pcore, Ecore, System Agent
  * [Intel] RPL and ADL Chipset device IDs
  * [Intel] Decode the RPL IMC and improve DDR5 support
  * [Build] Raise `MAX_FREQ_HZ` up to 7125000000 Hertz
  * [Intel] Mobile {Coffee Lake, Kaby Lake} codenames
  * [Intel] Braswell codename detection
  * [AMD] SYSCFG Register
  * [AMD] EPYC 9654
  * [AMD] Transparent SME
  * [AMD] DRAM Data Scrambling
  * [AMD] Adding "Barcelo R" and "Rembrandt R"</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1675944000">- update to 1.95.2:
  * Fixed the aggregation of the minimum ratio
  Intel:
  * [Airmont][Silvermont] Attempt to decode `tCKE` from DRMC
    register
  * [Airmont] Improve `tWTPr`, `B2B`, `tWWDR` timings
  * [Airmont] Provide a new IMC decoder
  * Add the Emerald Rapids architecture entry
  * [DDR5][DDR4] Add the `RCDw` IMC timing
  * [Raptor Lake ] De-activate the MSR Uncore counter
  AMD:
  * "Zen3/Barcelo-R" and "Zen3+ Rembrandt-R" codenames
  * [Zen] Thermal highest limit reset fix
  Misc:
  * Code review and Registers documentation:
    AMD HWCR, Intel HDC and DRP</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677067200">- update to 1.95.4
  * [Intel] [from 11th to 14th gen]
    Convert the DRAM Speed to MT/s unit
    Compute the Bus Rate based on the BIOS MC PLL
- update to 1.95.3
  * [Intel] [Airmont]
    Improved the IMC geometry
    Introducing the Spreadtrum architecture
    Fixed the Bus and DRAM frequency rates
  * [Intel] [from 11th to 13th gen] Attempt to probe the interleaved controllers
  * [Intel] [Alder Lake/H] Attempt to decode the TCO Watchdog</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677153600">- added leap_compile_fix.patch to fix compilation on Leap</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1683115200">- removed leap_compile_fix.patch no needed anymore
- update to 1.96.0
  * [AMD]
    [RPL/X3D] Disabling the turbo boosted P-states change
    [PHOENIX] Adding Z1, U and HS PRO series.
    [Genoa] DAC address at UMC BAR + 0x40
    [Zen4] Adding the PCI entries of Genoa
    [Zen2] Adding remaining PCI entries
    [Zen] Query DAC &amp; CFG with the right UMC base address register
    [Zen4] Dump the CPUID Extended CPU Topology leaves.
    [Zen][Embedded][Banded Kestrel] R1000 Processor Family
    [Zen][Embedded] "Great Horned Owl", "River Hawk", "Grey Hawk"
    Complete the "Raven Ridge" and "Picasso" lists
    [EPYC] Moved "Snowy Owl" Embedded processors to CPUID 8F_01
    [Zen4] introducing Phoenix and Dragon Range
    [RMB] adding the Ryzen Embedded V3000 processors
    [VMR] adding the "AMD Ryzen 9 PRO 5945"
  * [Intel]
    Adding Granite Rapids, Sierra Forest, Grand Ridge entries
    Adding "Lunar Lake" and "Arrow Lake" entries.
  * [UI]
    Optimized decimal to digits converter
    Allow task tracker to select up to pid_max
    Can trace the frozen states of Linux tasks.
    Only print HWP frequencies within bounds.
    Fix ruler's aggregation.
  * [CR]
    Check CPUID[HV_PARTITION_PRIVILEGE_MASK] for HV_X64_MSR_VP_RUNTIME
    Uninitialized variable fix.
    [CPPC] Build EPP with KERNEL_VERSION(6) rather than CONFIG_CACHY
    [KERNEL] Linux 6.3: Employ modifier calls with the vma-&gt;vm_flags</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1684065600">- update to 1.96.1
  * [Driver]
  - Postpone Clock Source registration during startup until the Base Clock is computed.
  - Change class_create() according to Linux Kernel 6.4
  - Clear interrupt flag (cli) after Halt in the Idle method
  * [AMD]
  - [PHOENIX] Adding Ryzen 7940H, 7840H, 7640H
  - [VERMEER] Adding Ryzen PRO and Embedded processors
  - Ryzen Z1 CPUID' brand fix
  - Adding EPYC Embedded 9004 Series as Genoa
  - Adding EPYC Embedded 7003 Series as Milan
  - Adding EPYC Embedded 7002 Series as Rome
  - Adding EPYC Embedded 7001 Series as Naples</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1685880000">- update to 1.96.2
  * [Driver]
  - Allows compilation to keep going without CONFIG_ACPI_CPPC_LIB
  * [Client]
  - Adding two command line arguments:
  - Op Show Package C-States
  - OW Toggle Energy units
  * [AMD]
  - Specification of some Configuration MSRs</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1686830400">- update to 1.96.4
  * [AMD]
  - Display CPUID state of new and legacy features:
    Fused Multiply Add [FMA4]
    Extended Operation Support [XOP]
    Translation Cache Extension [TCE]
    Trailing Bit Manipulation [TBM]
    OS Visible Work-around [OSVW]
    LOCK prefix to read CR8 [AltMov]
  * [Intel]
  - Advanced Matrix Extensions [AMX]
  - Bits and Features of Sierra Forest and Grand Ridge
  - Attempt to decode the Meteor Lake Memory Controller
- update to 1.96.3
  * [AMD]
  - [Zeppelin] Probe more than one UMC controllers on Ryzen Threadripper 1900X
  - [Zen4] Dump SMBE and BMEC sub-leaves of CPUID 0x80000020</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1688212800">- update to 1.96.5
  * [AMD]
    Adding the "AMD Ryzen 5 5600X3D"
    Introducing the Zen4c Bergamo architecture
    Specs fixing of Embedded V-series and 3000 Series Processors
    Adding MENDOCINO, RAPHAEL Pro, PHOENIX Pro among others</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1712318400">- added preamble file for %kernel_module_package macro
- update to 1.97.1
  * added aarch64 support
  * upstream did not provide a summary changelog. Full list of commits:
    https://github.com/cyring/CoreFreq/compare/1.96.5...1.97.1</changelog>
</package>
<package pkgid="a17546520ba0a13ba7447f48fc261fecfa7cd7ec959c2bbcb5de54028ac463c467f45ea2cab374bbc70b9677735b3a1305f07d226c00c04d5d6760c8baeaa034" name="CoreFreq-kmp-default-debuginfo" arch="x86_64">
  <version epoch="0" ver="1.97.2_k6.9.1_1" rel="2.2"/>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1655899200">- Update to version 1.91.3
  * No changelog was made available by upstream</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1661169600">- Update to version 1.91.6
  - [AMD/Zen][UMC] Fixed the Mem Clock and ECC regressions
  - Designate the Package identifier in Power consumed readings
  - [Intel/ADL/IMC] Guessing activated channel from the populated DIMM
  - [AMD][UMC, IOMMU] Adding missing DID of family 19h devices
  - [AMD_DataFabric_Cezanne] Removed the Experimental mode
  - Intel/ADL/IMC: Fixing the Memory Channels count
  - [AMD/Zen] Improved UMC mapping. Threadripper 3960X issue
  - Avoid some NULL pointer strings during SMBIOS decoding</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1667563200">- update to version 1.92.3
  - Export CPUID bits Intel Sierra Forest, Grand Ridge, Granite Rapids
    and completes AMD64 Fn0000_0007_ECX_x0
  - [Features] WBNOINVD and CLZERO instructions
  - Adding various Mitigation Mechanism aggregations:
    IPRED_DIS_U, IPRED_DIS_S, RRSBA_DIS_U, RRSBA_DIS_S, BHI_DIS_S, MCDT_NO
  - RDPID and UMIP capability fixed.
  - [AMD] Perf. Mon. version based on CPUID_0x80000022.EAX.PerfMonV2
  - [AMD][Zen3+][Rembrandt] Trigger UMC and IOMMU decoders
  - [AMD][Ryzen 5 6600H] Found voltage VID @ SMU 0x6f010 and 0x6f014
  - Introducing AMD Security Feature capabilities:
    SKINIT, SEV, GMET, SEV-ES, SEV-SNP
  - [AMD64] Non-architectural MSR: SPECULATIVE STORE BYPASS DISABLE
  - [Intel][2nd &amp; 3rd gen] Misc IMC optimizations
  - [AMD][Rembrandt] Provides Vcore from a new formula.
  - Dumping CPUID leaves from AMD64 Architecture Programmer’s Manual
  - [Intel][HSW &amp; BDW] Compute the DIMM banks
  - [UI] Re-assigned keys to move or resize windows.
  - [AMD][Zen] Uncore frequency: Improving the Memory Clock divisor
  - [Intel][HSW &amp; BDW][SKL] Make use of same function DimmWidthToRows
  - [AMD][Zen3+][Rembrandt] Provides the thermal sensor.
  - [AMD/Zen2 &amp; Zen3] Removed the HSMP capability.
  - [Intel][CML][RKL][TGL] Compute the DIMM Rows from CH_WIDTH
  - [AMD/EPYC] Adding the CPUID of Zen4 Genoa architecture
  - [AMD/Zen2] Introducing Mendocino architecture
  - Changed MeteorLake/N to CPUID 06_B5
  - [Intel] Computes BIOS DRAM frequency based on PLL_REF100
  - [Intel][SNB/IVB/HSW/BDW] Improved BIOS DRAM frequency
  - [Intel][SNB/IVB] DRAM frequency based on RAM_Select and FSB_Select
  - [Intel][IVB] IMC specifications and optimizations.
  - [Intel][SNB,IVB] Computes the DIMM A from DAS bit in MAD register
  - [Intel][SNB,IVB,HSW,BDW] Rolling back changes to the DIMM topology
  - [Intel][BDW][HSW] Query the IMC Power Down Mode
  - [Intel][IVB][SNB] Attempt to decode the IMC third timings
  - [AMD][Ryzen] Added AMD Ryzen 7 PRO 6860Z
  - [AMD][F17h-F19h] Can toggle ON and OFF the Instruction Cache Unit
  - [AMD] Checking the Ryzen "OEM Only" processors
  - [Intel] Specification of 12th Gen. MSR registers capability
  - [Intel] Adding Raptor Lake-S with CPUID 06_BF
  - [AMD] Introducing Zen 4 / Raphael architecture
  - [Intel][SNB,IVB,HSW] Attempt to assign the Rank per DIMM slot
  - [Intel][SNB,IVB,HSW] Attempt to fix the DIMM(s) topology layout
  - ClockSource: TSC udelay() asm implementation builtin as a default
  - [Intel][Alder Lake] Adding IMC entry for i5-12500 processor
  - [Intel][Alder Lake] Added default case if Processor has only Pcores
  - [Intel][Atom/Bonnell][IMC] Attempt to compute the DIMM geometry
  - [UI][Custom view] Show the Uncore unit in watt or joule
  - [UI] Display HWP or CPPC in footer for capable processors.
  - [CLI] Added HWP Capabilities and HWP Request to the JSON export
  - [CLI] Don't allow the HWP dialog box if feature is not available.
  - [CPPC][Firmware] allows (de)activation of the feature.
  - [CLI] Added CPU ratios to JSON export
  - [CPPC] Improved scaling
  - [CPPC] Build fixed down to Kernel version 3
  - [Kernel/ACPI] Attempt to write CPPC registers</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1667563201">- Repair deficient description grammar.</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1670241600">- update to 1.92.4:
  * [Intel/Skylake-X] Permits MSR_RING_PERF_LIMIT_REASONS</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1670932800">- removed modprobe_corefreqd.service.patch and harden_corefreqd.service.patch
  now included in new corefreqd.service file replacing stock one
- update to 1.93.1
  * [PRJ] CoreFreq version 1.93.1
  * [ACPI/CPPC/EPP] Preview of AMD/Zen Energy Preference (CONFIG_CACHY)
  * [UI] Changed the HWP or CPPC ratio bounds.
  * [FIX] Putting `corefreqd` in the root cgroup (issue #379) Thanks to gel-crabs
  * [DOC] Parameters to blacklist the amd_pstate since kernel 6.0.11
  * [AMD][Zen4] Apply a voltage formula based on Rembrandt's. (#378)
  * [AMD][Zen4/Raphael] Attempting temperature per CCD from TCTL+0x308
  * [AMD][Zen4] Changed Timer loop
  * [CR] CLI code review and UI optimizations
  * [UI] Auto refresh the Topology items when off/online
  * [CR] Conditionally build with additional PMC Counters
  * [Intel] Adding Z8000 System Memory Controller Registers
  * [CR] Transformed global variable in cells padding
  * [UI] Windows re-scaling fix
  * [UI] Apply color theming to the CPPC capabilities list.
  * [AMD][Raphael] Adding device DIDs to probe UMC and IOMMU
  * [CPPC/FMW] Computes value bounds while Enabling/Disabling firmware
  * [CR] CPPC lib errors are now raised to Debug level
  * [AMD][Zen4] Increased the UMC size to 12 channels.
  * [CPPC] Handles the OffLine CPU case.
  * [CLI] Refactoring HWP/CPPC to print all capabilities per CPU
  * [ACPI] Computes the CPPC Bounds
  * [Intel] Linear Address Masking (LAM)
  * [CLI] EFER: Left aligned labels
  * [AMD] Reports UAIE and AIBRSE bits from EFER system register
  * [CLI] Changed mitigation mechanisms incapability labels
  * [AMD][Zen2] Mitigation Mechanism BTC-NOBR * ACPI/OSPM documentation
  * [CR] Code review on bit masks
  * [CPPC][ACPI] Kernel may decode the Guaranteed Performance Register
  * [UI] Optimize the cycles to clear the time bar.
  * [CR] Code review for extra compiler warnings
  * [UI] Time of the day displayed in the right side of menu
  * [UI] Display the current date and time in menu bar
  * [Kernel] Introducing support of `CONFIG_SCHED_BORE`
  * [CLI] Fixing ambiguous CPPC report: hardware vs firmware
  * [CLI] Surrounds _CPC feature with square brackets
  * [CPPC] Provides the ACPI _CPC object state.
  * [UI] Colors the task being tracked in the tracking list
  * [UI] Display the current time in the menu bar
  * [CLI] Reserve the programmable TDP section to Intel processors.
  * [AMD/Zen3+] Improving the DIMM geometry of Rembrandt UMC</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1672747200">- update to 1.94.1:
  * [Intel] Gemini Lake
  * [AMD] Ryzen 5 6600 H SoC, UMC channels
  * [AMD] Rembrandt: maximum of two UMC channels
  * [AMD] Raphael: Decodes DIMM geometry from AddrCfg
  * [AMD] Zen: Aggregation refactored
  * [AMD] Improved DDR5 clock decoding
  * Optimized Idle Loop</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1673006400">- update to 1.94.3:
  * [AMD][RMB] If UMC is quad channels then unpopulate odd channels
  * [AMD][RPL] Provide Service Processor Vcore as workaround
  * [UI] Auto size and lay performance capabilities window
  * [UI] Adding comments to the EEO and R2H technologies
  * [AMD][Raphael] 7950X3D, 7900X3D. support</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1674475200">- update to 1.95.1:
  * [Intel] RPL: voltage of Pcore, Ecore, System Agent
  * [Intel] RPL and ADL Chipset device IDs
  * [Intel] Decode the RPL IMC and improve DDR5 support
  * [Build] Raise `MAX_FREQ_HZ` up to 7125000000 Hertz
  * [Intel] Mobile {Coffee Lake, Kaby Lake} codenames
  * [Intel] Braswell codename detection
  * [AMD] SYSCFG Register
  * [AMD] EPYC 9654
  * [AMD] Transparent SME
  * [AMD] DRAM Data Scrambling
  * [AMD] Adding "Barcelo R" and "Rembrandt R"</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1675944000">- update to 1.95.2:
  * Fixed the aggregation of the minimum ratio
  Intel:
  * [Airmont][Silvermont] Attempt to decode `tCKE` from DRMC
    register
  * [Airmont] Improve `tWTPr`, `B2B`, `tWWDR` timings
  * [Airmont] Provide a new IMC decoder
  * Add the Emerald Rapids architecture entry
  * [DDR5][DDR4] Add the `RCDw` IMC timing
  * [Raptor Lake ] De-activate the MSR Uncore counter
  AMD:
  * "Zen3/Barcelo-R" and "Zen3+ Rembrandt-R" codenames
  * [Zen] Thermal highest limit reset fix
  Misc:
  * Code review and Registers documentation:
    AMD HWCR, Intel HDC and DRP</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677067200">- update to 1.95.4
  * [Intel] [from 11th to 14th gen]
    Convert the DRAM Speed to MT/s unit
    Compute the Bus Rate based on the BIOS MC PLL
- update to 1.95.3
  * [Intel] [Airmont]
    Improved the IMC geometry
    Introducing the Spreadtrum architecture
    Fixed the Bus and DRAM frequency rates
  * [Intel] [from 11th to 13th gen] Attempt to probe the interleaved controllers
  * [Intel] [Alder Lake/H] Attempt to decode the TCO Watchdog</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677153600">- added leap_compile_fix.patch to fix compilation on Leap</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1683115200">- removed leap_compile_fix.patch no needed anymore
- update to 1.96.0
  * [AMD]
    [RPL/X3D] Disabling the turbo boosted P-states change
    [PHOENIX] Adding Z1, U and HS PRO series.
    [Genoa] DAC address at UMC BAR + 0x40
    [Zen4] Adding the PCI entries of Genoa
    [Zen2] Adding remaining PCI entries
    [Zen] Query DAC &amp; CFG with the right UMC base address register
    [Zen4] Dump the CPUID Extended CPU Topology leaves.
    [Zen][Embedded][Banded Kestrel] R1000 Processor Family
    [Zen][Embedded] "Great Horned Owl", "River Hawk", "Grey Hawk"
    Complete the "Raven Ridge" and "Picasso" lists
    [EPYC] Moved "Snowy Owl" Embedded processors to CPUID 8F_01
    [Zen4] introducing Phoenix and Dragon Range
    [RMB] adding the Ryzen Embedded V3000 processors
    [VMR] adding the "AMD Ryzen 9 PRO 5945"
  * [Intel]
    Adding Granite Rapids, Sierra Forest, Grand Ridge entries
    Adding "Lunar Lake" and "Arrow Lake" entries.
  * [UI]
    Optimized decimal to digits converter
    Allow task tracker to select up to pid_max
    Can trace the frozen states of Linux tasks.
    Only print HWP frequencies within bounds.
    Fix ruler's aggregation.
  * [CR]
    Check CPUID[HV_PARTITION_PRIVILEGE_MASK] for HV_X64_MSR_VP_RUNTIME
    Uninitialized variable fix.
    [CPPC] Build EPP with KERNEL_VERSION(6) rather than CONFIG_CACHY
    [KERNEL] Linux 6.3: Employ modifier calls with the vma-&gt;vm_flags</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1684065600">- update to 1.96.1
  * [Driver]
  - Postpone Clock Source registration during startup until the Base Clock is computed.
  - Change class_create() according to Linux Kernel 6.4
  - Clear interrupt flag (cli) after Halt in the Idle method
  * [AMD]
  - [PHOENIX] Adding Ryzen 7940H, 7840H, 7640H
  - [VERMEER] Adding Ryzen PRO and Embedded processors
  - Ryzen Z1 CPUID' brand fix
  - Adding EPYC Embedded 9004 Series as Genoa
  - Adding EPYC Embedded 7003 Series as Milan
  - Adding EPYC Embedded 7002 Series as Rome
  - Adding EPYC Embedded 7001 Series as Naples</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1685880000">- update to 1.96.2
  * [Driver]
  - Allows compilation to keep going without CONFIG_ACPI_CPPC_LIB
  * [Client]
  - Adding two command line arguments:
  - Op Show Package C-States
  - OW Toggle Energy units
  * [AMD]
  - Specification of some Configuration MSRs</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1686830400">- update to 1.96.4
  * [AMD]
  - Display CPUID state of new and legacy features:
    Fused Multiply Add [FMA4]
    Extended Operation Support [XOP]
    Translation Cache Extension [TCE]
    Trailing Bit Manipulation [TBM]
    OS Visible Work-around [OSVW]
    LOCK prefix to read CR8 [AltMov]
  * [Intel]
  - Advanced Matrix Extensions [AMX]
  - Bits and Features of Sierra Forest and Grand Ridge
  - Attempt to decode the Meteor Lake Memory Controller
- update to 1.96.3
  * [AMD]
  - [Zeppelin] Probe more than one UMC controllers on Ryzen Threadripper 1900X
  - [Zen4] Dump SMBE and BMEC sub-leaves of CPUID 0x80000020</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1688212800">- update to 1.96.5
  * [AMD]
    Adding the "AMD Ryzen 5 5600X3D"
    Introducing the Zen4c Bergamo architecture
    Specs fixing of Embedded V-series and 3000 Series Processors
    Adding MENDOCINO, RAPHAEL Pro, PHOENIX Pro among others</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1712318400">- added preamble file for %kernel_module_package macro
- update to 1.97.1
  * added aarch64 support
  * upstream did not provide a summary changelog. Full list of commits:
    https://github.com/cyring/CoreFreq/compare/1.96.5...1.97.1</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715860800">- update to 1.97.2
  * [AMD]
  - [Hawk Point] Adding Ryzen PRO processors
  - [Phoenix] Adding the unlocked Ryzen 8000 Series
  * [Intel]
  - [MeteorLake] New bits specified
  - EEO and R2H bits inversion fix in MSR_POWER_CTL (0x1fc)
  - Reverse specification of MSR UNCORE_PERF_STATUS
  - Prefetchers fix of L1 Scrubbing, L1 Next Page and L2 AMP
  * [AArch64]
  - Providing Exclusive Load/Store to atomic operations
  - Improved asm of various macro functions
  - Removed LEGACY macros
  - Optimized the CORE_COUNT macros
  - Marked the Tools feature as nominal: Stress functions available
  - Allow user access to Retired Instructions counter
  - Fix Instructions counter overflow
  - Other PMC enhancements
  * [CR]
  - Fix a building issue with AlmaLinux aka RHEL-9
  - Linux kernel 6.9: Avoid redefinition of Intel MSR macros
  * [Doc]
  - README section for AlmaLinux
  - CONFIG_TRIM_UNUSED_KSYMS kernel build config is forbidden</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715947200">- fix dependency on kernel module that was not versioned</changelog>
</package>
<package pkgid="dcfd7a3fd041c412f55fa94679b11276bb955fb3dbbb3a2c35c6d7966892219d93a06fd3f1bf7ec33a5357ab74662facb46513f5cdf9201148bacb2c8c3246cd" name="CoreFreq-kmp-default-debuginfo" arch="x86_64">
  <version epoch="0" ver="1.97.2_k6.9.4_1" rel="2.3"/>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1655899200">- Update to version 1.91.3
  * No changelog was made available by upstream</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1661169600">- Update to version 1.91.6
  - [AMD/Zen][UMC] Fixed the Mem Clock and ECC regressions
  - Designate the Package identifier in Power consumed readings
  - [Intel/ADL/IMC] Guessing activated channel from the populated DIMM
  - [AMD][UMC, IOMMU] Adding missing DID of family 19h devices
  - [AMD_DataFabric_Cezanne] Removed the Experimental mode
  - Intel/ADL/IMC: Fixing the Memory Channels count
  - [AMD/Zen] Improved UMC mapping. Threadripper 3960X issue
  - Avoid some NULL pointer strings during SMBIOS decoding</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1667563200">- update to version 1.92.3
  - Export CPUID bits Intel Sierra Forest, Grand Ridge, Granite Rapids
    and completes AMD64 Fn0000_0007_ECX_x0
  - [Features] WBNOINVD and CLZERO instructions
  - Adding various Mitigation Mechanism aggregations:
    IPRED_DIS_U, IPRED_DIS_S, RRSBA_DIS_U, RRSBA_DIS_S, BHI_DIS_S, MCDT_NO
  - RDPID and UMIP capability fixed.
  - [AMD] Perf. Mon. version based on CPUID_0x80000022.EAX.PerfMonV2
  - [AMD][Zen3+][Rembrandt] Trigger UMC and IOMMU decoders
  - [AMD][Ryzen 5 6600H] Found voltage VID @ SMU 0x6f010 and 0x6f014
  - Introducing AMD Security Feature capabilities:
    SKINIT, SEV, GMET, SEV-ES, SEV-SNP
  - [AMD64] Non-architectural MSR: SPECULATIVE STORE BYPASS DISABLE
  - [Intel][2nd &amp; 3rd gen] Misc IMC optimizations
  - [AMD][Rembrandt] Provides Vcore from a new formula.
  - Dumping CPUID leaves from AMD64 Architecture Programmer’s Manual
  - [Intel][HSW &amp; BDW] Compute the DIMM banks
  - [UI] Re-assigned keys to move or resize windows.
  - [AMD][Zen] Uncore frequency: Improving the Memory Clock divisor
  - [Intel][HSW &amp; BDW][SKL] Make use of same function DimmWidthToRows
  - [AMD][Zen3+][Rembrandt] Provides the thermal sensor.
  - [AMD/Zen2 &amp; Zen3] Removed the HSMP capability.
  - [Intel][CML][RKL][TGL] Compute the DIMM Rows from CH_WIDTH
  - [AMD/EPYC] Adding the CPUID of Zen4 Genoa architecture
  - [AMD/Zen2] Introducing Mendocino architecture
  - Changed MeteorLake/N to CPUID 06_B5
  - [Intel] Computes BIOS DRAM frequency based on PLL_REF100
  - [Intel][SNB/IVB/HSW/BDW] Improved BIOS DRAM frequency
  - [Intel][SNB/IVB] DRAM frequency based on RAM_Select and FSB_Select
  - [Intel][IVB] IMC specifications and optimizations.
  - [Intel][SNB,IVB] Computes the DIMM A from DAS bit in MAD register
  - [Intel][SNB,IVB,HSW,BDW] Rolling back changes to the DIMM topology
  - [Intel][BDW][HSW] Query the IMC Power Down Mode
  - [Intel][IVB][SNB] Attempt to decode the IMC third timings
  - [AMD][Ryzen] Added AMD Ryzen 7 PRO 6860Z
  - [AMD][F17h-F19h] Can toggle ON and OFF the Instruction Cache Unit
  - [AMD] Checking the Ryzen "OEM Only" processors
  - [Intel] Specification of 12th Gen. MSR registers capability
  - [Intel] Adding Raptor Lake-S with CPUID 06_BF
  - [AMD] Introducing Zen 4 / Raphael architecture
  - [Intel][SNB,IVB,HSW] Attempt to assign the Rank per DIMM slot
  - [Intel][SNB,IVB,HSW] Attempt to fix the DIMM(s) topology layout
  - ClockSource: TSC udelay() asm implementation builtin as a default
  - [Intel][Alder Lake] Adding IMC entry for i5-12500 processor
  - [Intel][Alder Lake] Added default case if Processor has only Pcores
  - [Intel][Atom/Bonnell][IMC] Attempt to compute the DIMM geometry
  - [UI][Custom view] Show the Uncore unit in watt or joule
  - [UI] Display HWP or CPPC in footer for capable processors.
  - [CLI] Added HWP Capabilities and HWP Request to the JSON export
  - [CLI] Don't allow the HWP dialog box if feature is not available.
  - [CPPC][Firmware] allows (de)activation of the feature.
  - [CLI] Added CPU ratios to JSON export
  - [CPPC] Improved scaling
  - [CPPC] Build fixed down to Kernel version 3
  - [Kernel/ACPI] Attempt to write CPPC registers</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1667563201">- Repair deficient description grammar.</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1670241600">- update to 1.92.4:
  * [Intel/Skylake-X] Permits MSR_RING_PERF_LIMIT_REASONS</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1670932800">- removed modprobe_corefreqd.service.patch and harden_corefreqd.service.patch
  now included in new corefreqd.service file replacing stock one
- update to 1.93.1
  * [PRJ] CoreFreq version 1.93.1
  * [ACPI/CPPC/EPP] Preview of AMD/Zen Energy Preference (CONFIG_CACHY)
  * [UI] Changed the HWP or CPPC ratio bounds.
  * [FIX] Putting `corefreqd` in the root cgroup (issue #379) Thanks to gel-crabs
  * [DOC] Parameters to blacklist the amd_pstate since kernel 6.0.11
  * [AMD][Zen4] Apply a voltage formula based on Rembrandt's. (#378)
  * [AMD][Zen4/Raphael] Attempting temperature per CCD from TCTL+0x308
  * [AMD][Zen4] Changed Timer loop
  * [CR] CLI code review and UI optimizations
  * [UI] Auto refresh the Topology items when off/online
  * [CR] Conditionally build with additional PMC Counters
  * [Intel] Adding Z8000 System Memory Controller Registers
  * [CR] Transformed global variable in cells padding
  * [UI] Windows re-scaling fix
  * [UI] Apply color theming to the CPPC capabilities list.
  * [AMD][Raphael] Adding device DIDs to probe UMC and IOMMU
  * [CPPC/FMW] Computes value bounds while Enabling/Disabling firmware
  * [CR] CPPC lib errors are now raised to Debug level
  * [AMD][Zen4] Increased the UMC size to 12 channels.
  * [CPPC] Handles the OffLine CPU case.
  * [CLI] Refactoring HWP/CPPC to print all capabilities per CPU
  * [ACPI] Computes the CPPC Bounds
  * [Intel] Linear Address Masking (LAM)
  * [CLI] EFER: Left aligned labels
  * [AMD] Reports UAIE and AIBRSE bits from EFER system register
  * [CLI] Changed mitigation mechanisms incapability labels
  * [AMD][Zen2] Mitigation Mechanism BTC-NOBR * ACPI/OSPM documentation
  * [CR] Code review on bit masks
  * [CPPC][ACPI] Kernel may decode the Guaranteed Performance Register
  * [UI] Optimize the cycles to clear the time bar.
  * [CR] Code review for extra compiler warnings
  * [UI] Time of the day displayed in the right side of menu
  * [UI] Display the current date and time in menu bar
  * [Kernel] Introducing support of `CONFIG_SCHED_BORE`
  * [CLI] Fixing ambiguous CPPC report: hardware vs firmware
  * [CLI] Surrounds _CPC feature with square brackets
  * [CPPC] Provides the ACPI _CPC object state.
  * [UI] Colors the task being tracked in the tracking list
  * [UI] Display the current time in the menu bar
  * [CLI] Reserve the programmable TDP section to Intel processors.
  * [AMD/Zen3+] Improving the DIMM geometry of Rembrandt UMC</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1672747200">- update to 1.94.1:
  * [Intel] Gemini Lake
  * [AMD] Ryzen 5 6600 H SoC, UMC channels
  * [AMD] Rembrandt: maximum of two UMC channels
  * [AMD] Raphael: Decodes DIMM geometry from AddrCfg
  * [AMD] Zen: Aggregation refactored
  * [AMD] Improved DDR5 clock decoding
  * Optimized Idle Loop</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1673006400">- update to 1.94.3:
  * [AMD][RMB] If UMC is quad channels then unpopulate odd channels
  * [AMD][RPL] Provide Service Processor Vcore as workaround
  * [UI] Auto size and lay performance capabilities window
  * [UI] Adding comments to the EEO and R2H technologies
  * [AMD][Raphael] 7950X3D, 7900X3D. support</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1674475200">- update to 1.95.1:
  * [Intel] RPL: voltage of Pcore, Ecore, System Agent
  * [Intel] RPL and ADL Chipset device IDs
  * [Intel] Decode the RPL IMC and improve DDR5 support
  * [Build] Raise `MAX_FREQ_HZ` up to 7125000000 Hertz
  * [Intel] Mobile {Coffee Lake, Kaby Lake} codenames
  * [Intel] Braswell codename detection
  * [AMD] SYSCFG Register
  * [AMD] EPYC 9654
  * [AMD] Transparent SME
  * [AMD] DRAM Data Scrambling
  * [AMD] Adding "Barcelo R" and "Rembrandt R"</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1675944000">- update to 1.95.2:
  * Fixed the aggregation of the minimum ratio
  Intel:
  * [Airmont][Silvermont] Attempt to decode `tCKE` from DRMC
    register
  * [Airmont] Improve `tWTPr`, `B2B`, `tWWDR` timings
  * [Airmont] Provide a new IMC decoder
  * Add the Emerald Rapids architecture entry
  * [DDR5][DDR4] Add the `RCDw` IMC timing
  * [Raptor Lake ] De-activate the MSR Uncore counter
  AMD:
  * "Zen3/Barcelo-R" and "Zen3+ Rembrandt-R" codenames
  * [Zen] Thermal highest limit reset fix
  Misc:
  * Code review and Registers documentation:
    AMD HWCR, Intel HDC and DRP</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677067200">- update to 1.95.4
  * [Intel] [from 11th to 14th gen]
    Convert the DRAM Speed to MT/s unit
    Compute the Bus Rate based on the BIOS MC PLL
- update to 1.95.3
  * [Intel] [Airmont]
    Improved the IMC geometry
    Introducing the Spreadtrum architecture
    Fixed the Bus and DRAM frequency rates
  * [Intel] [from 11th to 13th gen] Attempt to probe the interleaved controllers
  * [Intel] [Alder Lake/H] Attempt to decode the TCO Watchdog</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677153600">- added leap_compile_fix.patch to fix compilation on Leap</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1683115200">- removed leap_compile_fix.patch no needed anymore
- update to 1.96.0
  * [AMD]
    [RPL/X3D] Disabling the turbo boosted P-states change
    [PHOENIX] Adding Z1, U and HS PRO series.
    [Genoa] DAC address at UMC BAR + 0x40
    [Zen4] Adding the PCI entries of Genoa
    [Zen2] Adding remaining PCI entries
    [Zen] Query DAC &amp; CFG with the right UMC base address register
    [Zen4] Dump the CPUID Extended CPU Topology leaves.
    [Zen][Embedded][Banded Kestrel] R1000 Processor Family
    [Zen][Embedded] "Great Horned Owl", "River Hawk", "Grey Hawk"
    Complete the "Raven Ridge" and "Picasso" lists
    [EPYC] Moved "Snowy Owl" Embedded processors to CPUID 8F_01
    [Zen4] introducing Phoenix and Dragon Range
    [RMB] adding the Ryzen Embedded V3000 processors
    [VMR] adding the "AMD Ryzen 9 PRO 5945"
  * [Intel]
    Adding Granite Rapids, Sierra Forest, Grand Ridge entries
    Adding "Lunar Lake" and "Arrow Lake" entries.
  * [UI]
    Optimized decimal to digits converter
    Allow task tracker to select up to pid_max
    Can trace the frozen states of Linux tasks.
    Only print HWP frequencies within bounds.
    Fix ruler's aggregation.
  * [CR]
    Check CPUID[HV_PARTITION_PRIVILEGE_MASK] for HV_X64_MSR_VP_RUNTIME
    Uninitialized variable fix.
    [CPPC] Build EPP with KERNEL_VERSION(6) rather than CONFIG_CACHY
    [KERNEL] Linux 6.3: Employ modifier calls with the vma-&gt;vm_flags</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1684065600">- update to 1.96.1
  * [Driver]
  - Postpone Clock Source registration during startup until the Base Clock is computed.
  - Change class_create() according to Linux Kernel 6.4
  - Clear interrupt flag (cli) after Halt in the Idle method
  * [AMD]
  - [PHOENIX] Adding Ryzen 7940H, 7840H, 7640H
  - [VERMEER] Adding Ryzen PRO and Embedded processors
  - Ryzen Z1 CPUID' brand fix
  - Adding EPYC Embedded 9004 Series as Genoa
  - Adding EPYC Embedded 7003 Series as Milan
  - Adding EPYC Embedded 7002 Series as Rome
  - Adding EPYC Embedded 7001 Series as Naples</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1685880000">- update to 1.96.2
  * [Driver]
  - Allows compilation to keep going without CONFIG_ACPI_CPPC_LIB
  * [Client]
  - Adding two command line arguments:
  - Op Show Package C-States
  - OW Toggle Energy units
  * [AMD]
  - Specification of some Configuration MSRs</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1686830400">- update to 1.96.4
  * [AMD]
  - Display CPUID state of new and legacy features:
    Fused Multiply Add [FMA4]
    Extended Operation Support [XOP]
    Translation Cache Extension [TCE]
    Trailing Bit Manipulation [TBM]
    OS Visible Work-around [OSVW]
    LOCK prefix to read CR8 [AltMov]
  * [Intel]
  - Advanced Matrix Extensions [AMX]
  - Bits and Features of Sierra Forest and Grand Ridge
  - Attempt to decode the Meteor Lake Memory Controller
- update to 1.96.3
  * [AMD]
  - [Zeppelin] Probe more than one UMC controllers on Ryzen Threadripper 1900X
  - [Zen4] Dump SMBE and BMEC sub-leaves of CPUID 0x80000020</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1688212800">- update to 1.96.5
  * [AMD]
    Adding the "AMD Ryzen 5 5600X3D"
    Introducing the Zen4c Bergamo architecture
    Specs fixing of Embedded V-series and 3000 Series Processors
    Adding MENDOCINO, RAPHAEL Pro, PHOENIX Pro among others</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1712318400">- added preamble file for %kernel_module_package macro
- update to 1.97.1
  * added aarch64 support
  * upstream did not provide a summary changelog. Full list of commits:
    https://github.com/cyring/CoreFreq/compare/1.96.5...1.97.1</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715860800">- update to 1.97.2
  * [AMD]
  - [Hawk Point] Adding Ryzen PRO processors
  - [Phoenix] Adding the unlocked Ryzen 8000 Series
  * [Intel]
  - [MeteorLake] New bits specified
  - EEO and R2H bits inversion fix in MSR_POWER_CTL (0x1fc)
  - Reverse specification of MSR UNCORE_PERF_STATUS
  - Prefetchers fix of L1 Scrubbing, L1 Next Page and L2 AMP
  * [AArch64]
  - Providing Exclusive Load/Store to atomic operations
  - Improved asm of various macro functions
  - Removed LEGACY macros
  - Optimized the CORE_COUNT macros
  - Marked the Tools feature as nominal: Stress functions available
  - Allow user access to Retired Instructions counter
  - Fix Instructions counter overflow
  - Other PMC enhancements
  * [CR]
  - Fix a building issue with AlmaLinux aka RHEL-9
  - Linux kernel 6.9: Avoid redefinition of Intel MSR macros
  * [Doc]
  - README section for AlmaLinux
  - CONFIG_TRIM_UNUSED_KSYMS kernel build config is forbidden</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715947200">- fix dependency on kernel module that was not versioned</changelog>
</package>
<package pkgid="957aff2af24ef60ac1debb0235054306ac3cc066b9b6f1d3c4afd53f716e28ed08dc0ca0e6e77778902f0f86099c338d8e27451138baee56125627d50724ec7c" name="CoreFreq-kmp-default-debuginfo" arch="x86_64">
  <version epoch="0" ver="1.97.2_k6.9.5_1" rel="2.4"/>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1655899200">- Update to version 1.91.3
  * No changelog was made available by upstream</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1661169600">- Update to version 1.91.6
  - [AMD/Zen][UMC] Fixed the Mem Clock and ECC regressions
  - Designate the Package identifier in Power consumed readings
  - [Intel/ADL/IMC] Guessing activated channel from the populated DIMM
  - [AMD][UMC, IOMMU] Adding missing DID of family 19h devices
  - [AMD_DataFabric_Cezanne] Removed the Experimental mode
  - Intel/ADL/IMC: Fixing the Memory Channels count
  - [AMD/Zen] Improved UMC mapping. Threadripper 3960X issue
  - Avoid some NULL pointer strings during SMBIOS decoding</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1667563200">- update to version 1.92.3
  - Export CPUID bits Intel Sierra Forest, Grand Ridge, Granite Rapids
    and completes AMD64 Fn0000_0007_ECX_x0
  - [Features] WBNOINVD and CLZERO instructions
  - Adding various Mitigation Mechanism aggregations:
    IPRED_DIS_U, IPRED_DIS_S, RRSBA_DIS_U, RRSBA_DIS_S, BHI_DIS_S, MCDT_NO
  - RDPID and UMIP capability fixed.
  - [AMD] Perf. Mon. version based on CPUID_0x80000022.EAX.PerfMonV2
  - [AMD][Zen3+][Rembrandt] Trigger UMC and IOMMU decoders
  - [AMD][Ryzen 5 6600H] Found voltage VID @ SMU 0x6f010 and 0x6f014
  - Introducing AMD Security Feature capabilities:
    SKINIT, SEV, GMET, SEV-ES, SEV-SNP
  - [AMD64] Non-architectural MSR: SPECULATIVE STORE BYPASS DISABLE
  - [Intel][2nd &amp; 3rd gen] Misc IMC optimizations
  - [AMD][Rembrandt] Provides Vcore from a new formula.
  - Dumping CPUID leaves from AMD64 Architecture Programmer’s Manual
  - [Intel][HSW &amp; BDW] Compute the DIMM banks
  - [UI] Re-assigned keys to move or resize windows.
  - [AMD][Zen] Uncore frequency: Improving the Memory Clock divisor
  - [Intel][HSW &amp; BDW][SKL] Make use of same function DimmWidthToRows
  - [AMD][Zen3+][Rembrandt] Provides the thermal sensor.
  - [AMD/Zen2 &amp; Zen3] Removed the HSMP capability.
  - [Intel][CML][RKL][TGL] Compute the DIMM Rows from CH_WIDTH
  - [AMD/EPYC] Adding the CPUID of Zen4 Genoa architecture
  - [AMD/Zen2] Introducing Mendocino architecture
  - Changed MeteorLake/N to CPUID 06_B5
  - [Intel] Computes BIOS DRAM frequency based on PLL_REF100
  - [Intel][SNB/IVB/HSW/BDW] Improved BIOS DRAM frequency
  - [Intel][SNB/IVB] DRAM frequency based on RAM_Select and FSB_Select
  - [Intel][IVB] IMC specifications and optimizations.
  - [Intel][SNB,IVB] Computes the DIMM A from DAS bit in MAD register
  - [Intel][SNB,IVB,HSW,BDW] Rolling back changes to the DIMM topology
  - [Intel][BDW][HSW] Query the IMC Power Down Mode
  - [Intel][IVB][SNB] Attempt to decode the IMC third timings
  - [AMD][Ryzen] Added AMD Ryzen 7 PRO 6860Z
  - [AMD][F17h-F19h] Can toggle ON and OFF the Instruction Cache Unit
  - [AMD] Checking the Ryzen "OEM Only" processors
  - [Intel] Specification of 12th Gen. MSR registers capability
  - [Intel] Adding Raptor Lake-S with CPUID 06_BF
  - [AMD] Introducing Zen 4 / Raphael architecture
  - [Intel][SNB,IVB,HSW] Attempt to assign the Rank per DIMM slot
  - [Intel][SNB,IVB,HSW] Attempt to fix the DIMM(s) topology layout
  - ClockSource: TSC udelay() asm implementation builtin as a default
  - [Intel][Alder Lake] Adding IMC entry for i5-12500 processor
  - [Intel][Alder Lake] Added default case if Processor has only Pcores
  - [Intel][Atom/Bonnell][IMC] Attempt to compute the DIMM geometry
  - [UI][Custom view] Show the Uncore unit in watt or joule
  - [UI] Display HWP or CPPC in footer for capable processors.
  - [CLI] Added HWP Capabilities and HWP Request to the JSON export
  - [CLI] Don't allow the HWP dialog box if feature is not available.
  - [CPPC][Firmware] allows (de)activation of the feature.
  - [CLI] Added CPU ratios to JSON export
  - [CPPC] Improved scaling
  - [CPPC] Build fixed down to Kernel version 3
  - [Kernel/ACPI] Attempt to write CPPC registers</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1667563201">- Repair deficient description grammar.</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1670241600">- update to 1.92.4:
  * [Intel/Skylake-X] Permits MSR_RING_PERF_LIMIT_REASONS</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1670932800">- removed modprobe_corefreqd.service.patch and harden_corefreqd.service.patch
  now included in new corefreqd.service file replacing stock one
- update to 1.93.1
  * [PRJ] CoreFreq version 1.93.1
  * [ACPI/CPPC/EPP] Preview of AMD/Zen Energy Preference (CONFIG_CACHY)
  * [UI] Changed the HWP or CPPC ratio bounds.
  * [FIX] Putting `corefreqd` in the root cgroup (issue #379) Thanks to gel-crabs
  * [DOC] Parameters to blacklist the amd_pstate since kernel 6.0.11
  * [AMD][Zen4] Apply a voltage formula based on Rembrandt's. (#378)
  * [AMD][Zen4/Raphael] Attempting temperature per CCD from TCTL+0x308
  * [AMD][Zen4] Changed Timer loop
  * [CR] CLI code review and UI optimizations
  * [UI] Auto refresh the Topology items when off/online
  * [CR] Conditionally build with additional PMC Counters
  * [Intel] Adding Z8000 System Memory Controller Registers
  * [CR] Transformed global variable in cells padding
  * [UI] Windows re-scaling fix
  * [UI] Apply color theming to the CPPC capabilities list.
  * [AMD][Raphael] Adding device DIDs to probe UMC and IOMMU
  * [CPPC/FMW] Computes value bounds while Enabling/Disabling firmware
  * [CR] CPPC lib errors are now raised to Debug level
  * [AMD][Zen4] Increased the UMC size to 12 channels.
  * [CPPC] Handles the OffLine CPU case.
  * [CLI] Refactoring HWP/CPPC to print all capabilities per CPU
  * [ACPI] Computes the CPPC Bounds
  * [Intel] Linear Address Masking (LAM)
  * [CLI] EFER: Left aligned labels
  * [AMD] Reports UAIE and AIBRSE bits from EFER system register
  * [CLI] Changed mitigation mechanisms incapability labels
  * [AMD][Zen2] Mitigation Mechanism BTC-NOBR * ACPI/OSPM documentation
  * [CR] Code review on bit masks
  * [CPPC][ACPI] Kernel may decode the Guaranteed Performance Register
  * [UI] Optimize the cycles to clear the time bar.
  * [CR] Code review for extra compiler warnings
  * [UI] Time of the day displayed in the right side of menu
  * [UI] Display the current date and time in menu bar
  * [Kernel] Introducing support of `CONFIG_SCHED_BORE`
  * [CLI] Fixing ambiguous CPPC report: hardware vs firmware
  * [CLI] Surrounds _CPC feature with square brackets
  * [CPPC] Provides the ACPI _CPC object state.
  * [UI] Colors the task being tracked in the tracking list
  * [UI] Display the current time in the menu bar
  * [CLI] Reserve the programmable TDP section to Intel processors.
  * [AMD/Zen3+] Improving the DIMM geometry of Rembrandt UMC</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1672747200">- update to 1.94.1:
  * [Intel] Gemini Lake
  * [AMD] Ryzen 5 6600 H SoC, UMC channels
  * [AMD] Rembrandt: maximum of two UMC channels
  * [AMD] Raphael: Decodes DIMM geometry from AddrCfg
  * [AMD] Zen: Aggregation refactored
  * [AMD] Improved DDR5 clock decoding
  * Optimized Idle Loop</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1673006400">- update to 1.94.3:
  * [AMD][RMB] If UMC is quad channels then unpopulate odd channels
  * [AMD][RPL] Provide Service Processor Vcore as workaround
  * [UI] Auto size and lay performance capabilities window
  * [UI] Adding comments to the EEO and R2H technologies
  * [AMD][Raphael] 7950X3D, 7900X3D. support</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1674475200">- update to 1.95.1:
  * [Intel] RPL: voltage of Pcore, Ecore, System Agent
  * [Intel] RPL and ADL Chipset device IDs
  * [Intel] Decode the RPL IMC and improve DDR5 support
  * [Build] Raise `MAX_FREQ_HZ` up to 7125000000 Hertz
  * [Intel] Mobile {Coffee Lake, Kaby Lake} codenames
  * [Intel] Braswell codename detection
  * [AMD] SYSCFG Register
  * [AMD] EPYC 9654
  * [AMD] Transparent SME
  * [AMD] DRAM Data Scrambling
  * [AMD] Adding "Barcelo R" and "Rembrandt R"</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1675944000">- update to 1.95.2:
  * Fixed the aggregation of the minimum ratio
  Intel:
  * [Airmont][Silvermont] Attempt to decode `tCKE` from DRMC
    register
  * [Airmont] Improve `tWTPr`, `B2B`, `tWWDR` timings
  * [Airmont] Provide a new IMC decoder
  * Add the Emerald Rapids architecture entry
  * [DDR5][DDR4] Add the `RCDw` IMC timing
  * [Raptor Lake ] De-activate the MSR Uncore counter
  AMD:
  * "Zen3/Barcelo-R" and "Zen3+ Rembrandt-R" codenames
  * [Zen] Thermal highest limit reset fix
  Misc:
  * Code review and Registers documentation:
    AMD HWCR, Intel HDC and DRP</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677067200">- update to 1.95.4
  * [Intel] [from 11th to 14th gen]
    Convert the DRAM Speed to MT/s unit
    Compute the Bus Rate based on the BIOS MC PLL
- update to 1.95.3
  * [Intel] [Airmont]
    Improved the IMC geometry
    Introducing the Spreadtrum architecture
    Fixed the Bus and DRAM frequency rates
  * [Intel] [from 11th to 13th gen] Attempt to probe the interleaved controllers
  * [Intel] [Alder Lake/H] Attempt to decode the TCO Watchdog</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677153600">- added leap_compile_fix.patch to fix compilation on Leap</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1683115200">- removed leap_compile_fix.patch no needed anymore
- update to 1.96.0
  * [AMD]
    [RPL/X3D] Disabling the turbo boosted P-states change
    [PHOENIX] Adding Z1, U and HS PRO series.
    [Genoa] DAC address at UMC BAR + 0x40
    [Zen4] Adding the PCI entries of Genoa
    [Zen2] Adding remaining PCI entries
    [Zen] Query DAC &amp; CFG with the right UMC base address register
    [Zen4] Dump the CPUID Extended CPU Topology leaves.
    [Zen][Embedded][Banded Kestrel] R1000 Processor Family
    [Zen][Embedded] "Great Horned Owl", "River Hawk", "Grey Hawk"
    Complete the "Raven Ridge" and "Picasso" lists
    [EPYC] Moved "Snowy Owl" Embedded processors to CPUID 8F_01
    [Zen4] introducing Phoenix and Dragon Range
    [RMB] adding the Ryzen Embedded V3000 processors
    [VMR] adding the "AMD Ryzen 9 PRO 5945"
  * [Intel]
    Adding Granite Rapids, Sierra Forest, Grand Ridge entries
    Adding "Lunar Lake" and "Arrow Lake" entries.
  * [UI]
    Optimized decimal to digits converter
    Allow task tracker to select up to pid_max
    Can trace the frozen states of Linux tasks.
    Only print HWP frequencies within bounds.
    Fix ruler's aggregation.
  * [CR]
    Check CPUID[HV_PARTITION_PRIVILEGE_MASK] for HV_X64_MSR_VP_RUNTIME
    Uninitialized variable fix.
    [CPPC] Build EPP with KERNEL_VERSION(6) rather than CONFIG_CACHY
    [KERNEL] Linux 6.3: Employ modifier calls with the vma-&gt;vm_flags</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1684065600">- update to 1.96.1
  * [Driver]
  - Postpone Clock Source registration during startup until the Base Clock is computed.
  - Change class_create() according to Linux Kernel 6.4
  - Clear interrupt flag (cli) after Halt in the Idle method
  * [AMD]
  - [PHOENIX] Adding Ryzen 7940H, 7840H, 7640H
  - [VERMEER] Adding Ryzen PRO and Embedded processors
  - Ryzen Z1 CPUID' brand fix
  - Adding EPYC Embedded 9004 Series as Genoa
  - Adding EPYC Embedded 7003 Series as Milan
  - Adding EPYC Embedded 7002 Series as Rome
  - Adding EPYC Embedded 7001 Series as Naples</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1685880000">- update to 1.96.2
  * [Driver]
  - Allows compilation to keep going without CONFIG_ACPI_CPPC_LIB
  * [Client]
  - Adding two command line arguments:
  - Op Show Package C-States
  - OW Toggle Energy units
  * [AMD]
  - Specification of some Configuration MSRs</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1686830400">- update to 1.96.4
  * [AMD]
  - Display CPUID state of new and legacy features:
    Fused Multiply Add [FMA4]
    Extended Operation Support [XOP]
    Translation Cache Extension [TCE]
    Trailing Bit Manipulation [TBM]
    OS Visible Work-around [OSVW]
    LOCK prefix to read CR8 [AltMov]
  * [Intel]
  - Advanced Matrix Extensions [AMX]
  - Bits and Features of Sierra Forest and Grand Ridge
  - Attempt to decode the Meteor Lake Memory Controller
- update to 1.96.3
  * [AMD]
  - [Zeppelin] Probe more than one UMC controllers on Ryzen Threadripper 1900X
  - [Zen4] Dump SMBE and BMEC sub-leaves of CPUID 0x80000020</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1688212800">- update to 1.96.5
  * [AMD]
    Adding the "AMD Ryzen 5 5600X3D"
    Introducing the Zen4c Bergamo architecture
    Specs fixing of Embedded V-series and 3000 Series Processors
    Adding MENDOCINO, RAPHAEL Pro, PHOENIX Pro among others</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1712318400">- added preamble file for %kernel_module_package macro
- update to 1.97.1
  * added aarch64 support
  * upstream did not provide a summary changelog. Full list of commits:
    https://github.com/cyring/CoreFreq/compare/1.96.5...1.97.1</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715860800">- update to 1.97.2
  * [AMD]
  - [Hawk Point] Adding Ryzen PRO processors
  - [Phoenix] Adding the unlocked Ryzen 8000 Series
  * [Intel]
  - [MeteorLake] New bits specified
  - EEO and R2H bits inversion fix in MSR_POWER_CTL (0x1fc)
  - Reverse specification of MSR UNCORE_PERF_STATUS
  - Prefetchers fix of L1 Scrubbing, L1 Next Page and L2 AMP
  * [AArch64]
  - Providing Exclusive Load/Store to atomic operations
  - Improved asm of various macro functions
  - Removed LEGACY macros
  - Optimized the CORE_COUNT macros
  - Marked the Tools feature as nominal: Stress functions available
  - Allow user access to Retired Instructions counter
  - Fix Instructions counter overflow
  - Other PMC enhancements
  * [CR]
  - Fix a building issue with AlmaLinux aka RHEL-9
  - Linux kernel 6.9: Avoid redefinition of Intel MSR macros
  * [Doc]
  - README section for AlmaLinux
  - CONFIG_TRIM_UNUSED_KSYMS kernel build config is forbidden</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715947200">- fix dependency on kernel module that was not versioned</changelog>
</package>
<package pkgid="dce6601f2ed860e91ceb1e8508d6c7d72aeae866ea6ff2da76d70540203ac8f62bbeee8508da4c759b3bfcd55df7abb80d12ea2f3027eaf9474d76f3e36744b3" name="CoreFreq-kmp-default-debuginfo" arch="x86_64">
  <version epoch="0" ver="1.97.2_k6.9.7_1" rel="2.5"/>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1655899200">- Update to version 1.91.3
  * No changelog was made available by upstream</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1661169600">- Update to version 1.91.6
  - [AMD/Zen][UMC] Fixed the Mem Clock and ECC regressions
  - Designate the Package identifier in Power consumed readings
  - [Intel/ADL/IMC] Guessing activated channel from the populated DIMM
  - [AMD][UMC, IOMMU] Adding missing DID of family 19h devices
  - [AMD_DataFabric_Cezanne] Removed the Experimental mode
  - Intel/ADL/IMC: Fixing the Memory Channels count
  - [AMD/Zen] Improved UMC mapping. Threadripper 3960X issue
  - Avoid some NULL pointer strings during SMBIOS decoding</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1667563200">- update to version 1.92.3
  - Export CPUID bits Intel Sierra Forest, Grand Ridge, Granite Rapids
    and completes AMD64 Fn0000_0007_ECX_x0
  - [Features] WBNOINVD and CLZERO instructions
  - Adding various Mitigation Mechanism aggregations:
    IPRED_DIS_U, IPRED_DIS_S, RRSBA_DIS_U, RRSBA_DIS_S, BHI_DIS_S, MCDT_NO
  - RDPID and UMIP capability fixed.
  - [AMD] Perf. Mon. version based on CPUID_0x80000022.EAX.PerfMonV2
  - [AMD][Zen3+][Rembrandt] Trigger UMC and IOMMU decoders
  - [AMD][Ryzen 5 6600H] Found voltage VID @ SMU 0x6f010 and 0x6f014
  - Introducing AMD Security Feature capabilities:
    SKINIT, SEV, GMET, SEV-ES, SEV-SNP
  - [AMD64] Non-architectural MSR: SPECULATIVE STORE BYPASS DISABLE
  - [Intel][2nd &amp; 3rd gen] Misc IMC optimizations
  - [AMD][Rembrandt] Provides Vcore from a new formula.
  - Dumping CPUID leaves from AMD64 Architecture Programmer’s Manual
  - [Intel][HSW &amp; BDW] Compute the DIMM banks
  - [UI] Re-assigned keys to move or resize windows.
  - [AMD][Zen] Uncore frequency: Improving the Memory Clock divisor
  - [Intel][HSW &amp; BDW][SKL] Make use of same function DimmWidthToRows
  - [AMD][Zen3+][Rembrandt] Provides the thermal sensor.
  - [AMD/Zen2 &amp; Zen3] Removed the HSMP capability.
  - [Intel][CML][RKL][TGL] Compute the DIMM Rows from CH_WIDTH
  - [AMD/EPYC] Adding the CPUID of Zen4 Genoa architecture
  - [AMD/Zen2] Introducing Mendocino architecture
  - Changed MeteorLake/N to CPUID 06_B5
  - [Intel] Computes BIOS DRAM frequency based on PLL_REF100
  - [Intel][SNB/IVB/HSW/BDW] Improved BIOS DRAM frequency
  - [Intel][SNB/IVB] DRAM frequency based on RAM_Select and FSB_Select
  - [Intel][IVB] IMC specifications and optimizations.
  - [Intel][SNB,IVB] Computes the DIMM A from DAS bit in MAD register
  - [Intel][SNB,IVB,HSW,BDW] Rolling back changes to the DIMM topology
  - [Intel][BDW][HSW] Query the IMC Power Down Mode
  - [Intel][IVB][SNB] Attempt to decode the IMC third timings
  - [AMD][Ryzen] Added AMD Ryzen 7 PRO 6860Z
  - [AMD][F17h-F19h] Can toggle ON and OFF the Instruction Cache Unit
  - [AMD] Checking the Ryzen "OEM Only" processors
  - [Intel] Specification of 12th Gen. MSR registers capability
  - [Intel] Adding Raptor Lake-S with CPUID 06_BF
  - [AMD] Introducing Zen 4 / Raphael architecture
  - [Intel][SNB,IVB,HSW] Attempt to assign the Rank per DIMM slot
  - [Intel][SNB,IVB,HSW] Attempt to fix the DIMM(s) topology layout
  - ClockSource: TSC udelay() asm implementation builtin as a default
  - [Intel][Alder Lake] Adding IMC entry for i5-12500 processor
  - [Intel][Alder Lake] Added default case if Processor has only Pcores
  - [Intel][Atom/Bonnell][IMC] Attempt to compute the DIMM geometry
  - [UI][Custom view] Show the Uncore unit in watt or joule
  - [UI] Display HWP or CPPC in footer for capable processors.
  - [CLI] Added HWP Capabilities and HWP Request to the JSON export
  - [CLI] Don't allow the HWP dialog box if feature is not available.
  - [CPPC][Firmware] allows (de)activation of the feature.
  - [CLI] Added CPU ratios to JSON export
  - [CPPC] Improved scaling
  - [CPPC] Build fixed down to Kernel version 3
  - [Kernel/ACPI] Attempt to write CPPC registers</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1667563201">- Repair deficient description grammar.</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1670241600">- update to 1.92.4:
  * [Intel/Skylake-X] Permits MSR_RING_PERF_LIMIT_REASONS</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1670932800">- removed modprobe_corefreqd.service.patch and harden_corefreqd.service.patch
  now included in new corefreqd.service file replacing stock one
- update to 1.93.1
  * [PRJ] CoreFreq version 1.93.1
  * [ACPI/CPPC/EPP] Preview of AMD/Zen Energy Preference (CONFIG_CACHY)
  * [UI] Changed the HWP or CPPC ratio bounds.
  * [FIX] Putting `corefreqd` in the root cgroup (issue #379) Thanks to gel-crabs
  * [DOC] Parameters to blacklist the amd_pstate since kernel 6.0.11
  * [AMD][Zen4] Apply a voltage formula based on Rembrandt's. (#378)
  * [AMD][Zen4/Raphael] Attempting temperature per CCD from TCTL+0x308
  * [AMD][Zen4] Changed Timer loop
  * [CR] CLI code review and UI optimizations
  * [UI] Auto refresh the Topology items when off/online
  * [CR] Conditionally build with additional PMC Counters
  * [Intel] Adding Z8000 System Memory Controller Registers
  * [CR] Transformed global variable in cells padding
  * [UI] Windows re-scaling fix
  * [UI] Apply color theming to the CPPC capabilities list.
  * [AMD][Raphael] Adding device DIDs to probe UMC and IOMMU
  * [CPPC/FMW] Computes value bounds while Enabling/Disabling firmware
  * [CR] CPPC lib errors are now raised to Debug level
  * [AMD][Zen4] Increased the UMC size to 12 channels.
  * [CPPC] Handles the OffLine CPU case.
  * [CLI] Refactoring HWP/CPPC to print all capabilities per CPU
  * [ACPI] Computes the CPPC Bounds
  * [Intel] Linear Address Masking (LAM)
  * [CLI] EFER: Left aligned labels
  * [AMD] Reports UAIE and AIBRSE bits from EFER system register
  * [CLI] Changed mitigation mechanisms incapability labels
  * [AMD][Zen2] Mitigation Mechanism BTC-NOBR * ACPI/OSPM documentation
  * [CR] Code review on bit masks
  * [CPPC][ACPI] Kernel may decode the Guaranteed Performance Register
  * [UI] Optimize the cycles to clear the time bar.
  * [CR] Code review for extra compiler warnings
  * [UI] Time of the day displayed in the right side of menu
  * [UI] Display the current date and time in menu bar
  * [Kernel] Introducing support of `CONFIG_SCHED_BORE`
  * [CLI] Fixing ambiguous CPPC report: hardware vs firmware
  * [CLI] Surrounds _CPC feature with square brackets
  * [CPPC] Provides the ACPI _CPC object state.
  * [UI] Colors the task being tracked in the tracking list
  * [UI] Display the current time in the menu bar
  * [CLI] Reserve the programmable TDP section to Intel processors.
  * [AMD/Zen3+] Improving the DIMM geometry of Rembrandt UMC</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1672747200">- update to 1.94.1:
  * [Intel] Gemini Lake
  * [AMD] Ryzen 5 6600 H SoC, UMC channels
  * [AMD] Rembrandt: maximum of two UMC channels
  * [AMD] Raphael: Decodes DIMM geometry from AddrCfg
  * [AMD] Zen: Aggregation refactored
  * [AMD] Improved DDR5 clock decoding
  * Optimized Idle Loop</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1673006400">- update to 1.94.3:
  * [AMD][RMB] If UMC is quad channels then unpopulate odd channels
  * [AMD][RPL] Provide Service Processor Vcore as workaround
  * [UI] Auto size and lay performance capabilities window
  * [UI] Adding comments to the EEO and R2H technologies
  * [AMD][Raphael] 7950X3D, 7900X3D. support</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1674475200">- update to 1.95.1:
  * [Intel] RPL: voltage of Pcore, Ecore, System Agent
  * [Intel] RPL and ADL Chipset device IDs
  * [Intel] Decode the RPL IMC and improve DDR5 support
  * [Build] Raise `MAX_FREQ_HZ` up to 7125000000 Hertz
  * [Intel] Mobile {Coffee Lake, Kaby Lake} codenames
  * [Intel] Braswell codename detection
  * [AMD] SYSCFG Register
  * [AMD] EPYC 9654
  * [AMD] Transparent SME
  * [AMD] DRAM Data Scrambling
  * [AMD] Adding "Barcelo R" and "Rembrandt R"</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1675944000">- update to 1.95.2:
  * Fixed the aggregation of the minimum ratio
  Intel:
  * [Airmont][Silvermont] Attempt to decode `tCKE` from DRMC
    register
  * [Airmont] Improve `tWTPr`, `B2B`, `tWWDR` timings
  * [Airmont] Provide a new IMC decoder
  * Add the Emerald Rapids architecture entry
  * [DDR5][DDR4] Add the `RCDw` IMC timing
  * [Raptor Lake ] De-activate the MSR Uncore counter
  AMD:
  * "Zen3/Barcelo-R" and "Zen3+ Rembrandt-R" codenames
  * [Zen] Thermal highest limit reset fix
  Misc:
  * Code review and Registers documentation:
    AMD HWCR, Intel HDC and DRP</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677067200">- update to 1.95.4
  * [Intel] [from 11th to 14th gen]
    Convert the DRAM Speed to MT/s unit
    Compute the Bus Rate based on the BIOS MC PLL
- update to 1.95.3
  * [Intel] [Airmont]
    Improved the IMC geometry
    Introducing the Spreadtrum architecture
    Fixed the Bus and DRAM frequency rates
  * [Intel] [from 11th to 13th gen] Attempt to probe the interleaved controllers
  * [Intel] [Alder Lake/H] Attempt to decode the TCO Watchdog</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677153600">- added leap_compile_fix.patch to fix compilation on Leap</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1683115200">- removed leap_compile_fix.patch no needed anymore
- update to 1.96.0
  * [AMD]
    [RPL/X3D] Disabling the turbo boosted P-states change
    [PHOENIX] Adding Z1, U and HS PRO series.
    [Genoa] DAC address at UMC BAR + 0x40
    [Zen4] Adding the PCI entries of Genoa
    [Zen2] Adding remaining PCI entries
    [Zen] Query DAC &amp; CFG with the right UMC base address register
    [Zen4] Dump the CPUID Extended CPU Topology leaves.
    [Zen][Embedded][Banded Kestrel] R1000 Processor Family
    [Zen][Embedded] "Great Horned Owl", "River Hawk", "Grey Hawk"
    Complete the "Raven Ridge" and "Picasso" lists
    [EPYC] Moved "Snowy Owl" Embedded processors to CPUID 8F_01
    [Zen4] introducing Phoenix and Dragon Range
    [RMB] adding the Ryzen Embedded V3000 processors
    [VMR] adding the "AMD Ryzen 9 PRO 5945"
  * [Intel]
    Adding Granite Rapids, Sierra Forest, Grand Ridge entries
    Adding "Lunar Lake" and "Arrow Lake" entries.
  * [UI]
    Optimized decimal to digits converter
    Allow task tracker to select up to pid_max
    Can trace the frozen states of Linux tasks.
    Only print HWP frequencies within bounds.
    Fix ruler's aggregation.
  * [CR]
    Check CPUID[HV_PARTITION_PRIVILEGE_MASK] for HV_X64_MSR_VP_RUNTIME
    Uninitialized variable fix.
    [CPPC] Build EPP with KERNEL_VERSION(6) rather than CONFIG_CACHY
    [KERNEL] Linux 6.3: Employ modifier calls with the vma-&gt;vm_flags</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1684065600">- update to 1.96.1
  * [Driver]
  - Postpone Clock Source registration during startup until the Base Clock is computed.
  - Change class_create() according to Linux Kernel 6.4
  - Clear interrupt flag (cli) after Halt in the Idle method
  * [AMD]
  - [PHOENIX] Adding Ryzen 7940H, 7840H, 7640H
  - [VERMEER] Adding Ryzen PRO and Embedded processors
  - Ryzen Z1 CPUID' brand fix
  - Adding EPYC Embedded 9004 Series as Genoa
  - Adding EPYC Embedded 7003 Series as Milan
  - Adding EPYC Embedded 7002 Series as Rome
  - Adding EPYC Embedded 7001 Series as Naples</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1685880000">- update to 1.96.2
  * [Driver]
  - Allows compilation to keep going without CONFIG_ACPI_CPPC_LIB
  * [Client]
  - Adding two command line arguments:
  - Op Show Package C-States
  - OW Toggle Energy units
  * [AMD]
  - Specification of some Configuration MSRs</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1686830400">- update to 1.96.4
  * [AMD]
  - Display CPUID state of new and legacy features:
    Fused Multiply Add [FMA4]
    Extended Operation Support [XOP]
    Translation Cache Extension [TCE]
    Trailing Bit Manipulation [TBM]
    OS Visible Work-around [OSVW]
    LOCK prefix to read CR8 [AltMov]
  * [Intel]
  - Advanced Matrix Extensions [AMX]
  - Bits and Features of Sierra Forest and Grand Ridge
  - Attempt to decode the Meteor Lake Memory Controller
- update to 1.96.3
  * [AMD]
  - [Zeppelin] Probe more than one UMC controllers on Ryzen Threadripper 1900X
  - [Zen4] Dump SMBE and BMEC sub-leaves of CPUID 0x80000020</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1688212800">- update to 1.96.5
  * [AMD]
    Adding the "AMD Ryzen 5 5600X3D"
    Introducing the Zen4c Bergamo architecture
    Specs fixing of Embedded V-series and 3000 Series Processors
    Adding MENDOCINO, RAPHAEL Pro, PHOENIX Pro among others</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1712318400">- added preamble file for %kernel_module_package macro
- update to 1.97.1
  * added aarch64 support
  * upstream did not provide a summary changelog. Full list of commits:
    https://github.com/cyring/CoreFreq/compare/1.96.5...1.97.1</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715860800">- update to 1.97.2
  * [AMD]
  - [Hawk Point] Adding Ryzen PRO processors
  - [Phoenix] Adding the unlocked Ryzen 8000 Series
  * [Intel]
  - [MeteorLake] New bits specified
  - EEO and R2H bits inversion fix in MSR_POWER_CTL (0x1fc)
  - Reverse specification of MSR UNCORE_PERF_STATUS
  - Prefetchers fix of L1 Scrubbing, L1 Next Page and L2 AMP
  * [AArch64]
  - Providing Exclusive Load/Store to atomic operations
  - Improved asm of various macro functions
  - Removed LEGACY macros
  - Optimized the CORE_COUNT macros
  - Marked the Tools feature as nominal: Stress functions available
  - Allow user access to Retired Instructions counter
  - Fix Instructions counter overflow
  - Other PMC enhancements
  * [CR]
  - Fix a building issue with AlmaLinux aka RHEL-9
  - Linux kernel 6.9: Avoid redefinition of Intel MSR macros
  * [Doc]
  - README section for AlmaLinux
  - CONFIG_TRIM_UNUSED_KSYMS kernel build config is forbidden</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715947200">- fix dependency on kernel module that was not versioned</changelog>
</package>
<package pkgid="1e8cae8e0f00716293bbf24226737c45e8707c06052ca2b0b9628adff66229bddea00ca40a468180227621fac3ba0335069b729811c6595b896acee86c55be35" name="CoreFreq-kmp-default-debuginfo" arch="x86_64">
  <version epoch="0" ver="1.98.1_k6.10.3_1" rel="1.1"/>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1667563200">- update to version 1.92.3
  - Export CPUID bits Intel Sierra Forest, Grand Ridge, Granite Rapids
    and completes AMD64 Fn0000_0007_ECX_x0
  - [Features] WBNOINVD and CLZERO instructions
  - Adding various Mitigation Mechanism aggregations:
    IPRED_DIS_U, IPRED_DIS_S, RRSBA_DIS_U, RRSBA_DIS_S, BHI_DIS_S, MCDT_NO
  - RDPID and UMIP capability fixed.
  - [AMD] Perf. Mon. version based on CPUID_0x80000022.EAX.PerfMonV2
  - [AMD][Zen3+][Rembrandt] Trigger UMC and IOMMU decoders
  - [AMD][Ryzen 5 6600H] Found voltage VID @ SMU 0x6f010 and 0x6f014
  - Introducing AMD Security Feature capabilities:
    SKINIT, SEV, GMET, SEV-ES, SEV-SNP
  - [AMD64] Non-architectural MSR: SPECULATIVE STORE BYPASS DISABLE
  - [Intel][2nd &amp; 3rd gen] Misc IMC optimizations
  - [AMD][Rembrandt] Provides Vcore from a new formula.
  - Dumping CPUID leaves from AMD64 Architecture Programmer’s Manual
  - [Intel][HSW &amp; BDW] Compute the DIMM banks
  - [UI] Re-assigned keys to move or resize windows.
  - [AMD][Zen] Uncore frequency: Improving the Memory Clock divisor
  - [Intel][HSW &amp; BDW][SKL] Make use of same function DimmWidthToRows
  - [AMD][Zen3+][Rembrandt] Provides the thermal sensor.
  - [AMD/Zen2 &amp; Zen3] Removed the HSMP capability.
  - [Intel][CML][RKL][TGL] Compute the DIMM Rows from CH_WIDTH
  - [AMD/EPYC] Adding the CPUID of Zen4 Genoa architecture
  - [AMD/Zen2] Introducing Mendocino architecture
  - Changed MeteorLake/N to CPUID 06_B5
  - [Intel] Computes BIOS DRAM frequency based on PLL_REF100
  - [Intel][SNB/IVB/HSW/BDW] Improved BIOS DRAM frequency
  - [Intel][SNB/IVB] DRAM frequency based on RAM_Select and FSB_Select
  - [Intel][IVB] IMC specifications and optimizations.
  - [Intel][SNB,IVB] Computes the DIMM A from DAS bit in MAD register
  - [Intel][SNB,IVB,HSW,BDW] Rolling back changes to the DIMM topology
  - [Intel][BDW][HSW] Query the IMC Power Down Mode
  - [Intel][IVB][SNB] Attempt to decode the IMC third timings
  - [AMD][Ryzen] Added AMD Ryzen 7 PRO 6860Z
  - [AMD][F17h-F19h] Can toggle ON and OFF the Instruction Cache Unit
  - [AMD] Checking the Ryzen "OEM Only" processors
  - [Intel] Specification of 12th Gen. MSR registers capability
  - [Intel] Adding Raptor Lake-S with CPUID 06_BF
  - [AMD] Introducing Zen 4 / Raphael architecture
  - [Intel][SNB,IVB,HSW] Attempt to assign the Rank per DIMM slot
  - [Intel][SNB,IVB,HSW] Attempt to fix the DIMM(s) topology layout
  - ClockSource: TSC udelay() asm implementation builtin as a default
  - [Intel][Alder Lake] Adding IMC entry for i5-12500 processor
  - [Intel][Alder Lake] Added default case if Processor has only Pcores
  - [Intel][Atom/Bonnell][IMC] Attempt to compute the DIMM geometry
  - [UI][Custom view] Show the Uncore unit in watt or joule
  - [UI] Display HWP or CPPC in footer for capable processors.
  - [CLI] Added HWP Capabilities and HWP Request to the JSON export
  - [CLI] Don't allow the HWP dialog box if feature is not available.
  - [CPPC][Firmware] allows (de)activation of the feature.
  - [CLI] Added CPU ratios to JSON export
  - [CPPC] Improved scaling
  - [CPPC] Build fixed down to Kernel version 3
  - [Kernel/ACPI] Attempt to write CPPC registers</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1667563201">- Repair deficient description grammar.</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1670241600">- update to 1.92.4:
  * [Intel/Skylake-X] Permits MSR_RING_PERF_LIMIT_REASONS</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1670932800">- removed modprobe_corefreqd.service.patch and harden_corefreqd.service.patch
  now included in new corefreqd.service file replacing stock one
- update to 1.93.1
  * [PRJ] CoreFreq version 1.93.1
  * [ACPI/CPPC/EPP] Preview of AMD/Zen Energy Preference (CONFIG_CACHY)
  * [UI] Changed the HWP or CPPC ratio bounds.
  * [FIX] Putting `corefreqd` in the root cgroup (issue #379) Thanks to gel-crabs
  * [DOC] Parameters to blacklist the amd_pstate since kernel 6.0.11
  * [AMD][Zen4] Apply a voltage formula based on Rembrandt's. (#378)
  * [AMD][Zen4/Raphael] Attempting temperature per CCD from TCTL+0x308
  * [AMD][Zen4] Changed Timer loop
  * [CR] CLI code review and UI optimizations
  * [UI] Auto refresh the Topology items when off/online
  * [CR] Conditionally build with additional PMC Counters
  * [Intel] Adding Z8000 System Memory Controller Registers
  * [CR] Transformed global variable in cells padding
  * [UI] Windows re-scaling fix
  * [UI] Apply color theming to the CPPC capabilities list.
  * [AMD][Raphael] Adding device DIDs to probe UMC and IOMMU
  * [CPPC/FMW] Computes value bounds while Enabling/Disabling firmware
  * [CR] CPPC lib errors are now raised to Debug level
  * [AMD][Zen4] Increased the UMC size to 12 channels.
  * [CPPC] Handles the OffLine CPU case.
  * [CLI] Refactoring HWP/CPPC to print all capabilities per CPU
  * [ACPI] Computes the CPPC Bounds
  * [Intel] Linear Address Masking (LAM)
  * [CLI] EFER: Left aligned labels
  * [AMD] Reports UAIE and AIBRSE bits from EFER system register
  * [CLI] Changed mitigation mechanisms incapability labels
  * [AMD][Zen2] Mitigation Mechanism BTC-NOBR * ACPI/OSPM documentation
  * [CR] Code review on bit masks
  * [CPPC][ACPI] Kernel may decode the Guaranteed Performance Register
  * [UI] Optimize the cycles to clear the time bar.
  * [CR] Code review for extra compiler warnings
  * [UI] Time of the day displayed in the right side of menu
  * [UI] Display the current date and time in menu bar
  * [Kernel] Introducing support of `CONFIG_SCHED_BORE`
  * [CLI] Fixing ambiguous CPPC report: hardware vs firmware
  * [CLI] Surrounds _CPC feature with square brackets
  * [CPPC] Provides the ACPI _CPC object state.
  * [UI] Colors the task being tracked in the tracking list
  * [UI] Display the current time in the menu bar
  * [CLI] Reserve the programmable TDP section to Intel processors.
  * [AMD/Zen3+] Improving the DIMM geometry of Rembrandt UMC</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1672747200">- update to 1.94.1:
  * [Intel] Gemini Lake
  * [AMD] Ryzen 5 6600 H SoC, UMC channels
  * [AMD] Rembrandt: maximum of two UMC channels
  * [AMD] Raphael: Decodes DIMM geometry from AddrCfg
  * [AMD] Zen: Aggregation refactored
  * [AMD] Improved DDR5 clock decoding
  * Optimized Idle Loop</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1673006400">- update to 1.94.3:
  * [AMD][RMB] If UMC is quad channels then unpopulate odd channels
  * [AMD][RPL] Provide Service Processor Vcore as workaround
  * [UI] Auto size and lay performance capabilities window
  * [UI] Adding comments to the EEO and R2H technologies
  * [AMD][Raphael] 7950X3D, 7900X3D. support</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1674475200">- update to 1.95.1:
  * [Intel] RPL: voltage of Pcore, Ecore, System Agent
  * [Intel] RPL and ADL Chipset device IDs
  * [Intel] Decode the RPL IMC and improve DDR5 support
  * [Build] Raise `MAX_FREQ_HZ` up to 7125000000 Hertz
  * [Intel] Mobile {Coffee Lake, Kaby Lake} codenames
  * [Intel] Braswell codename detection
  * [AMD] SYSCFG Register
  * [AMD] EPYC 9654
  * [AMD] Transparent SME
  * [AMD] DRAM Data Scrambling
  * [AMD] Adding "Barcelo R" and "Rembrandt R"</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1675944000">- update to 1.95.2:
  * Fixed the aggregation of the minimum ratio
  Intel:
  * [Airmont][Silvermont] Attempt to decode `tCKE` from DRMC
    register
  * [Airmont] Improve `tWTPr`, `B2B`, `tWWDR` timings
  * [Airmont] Provide a new IMC decoder
  * Add the Emerald Rapids architecture entry
  * [DDR5][DDR4] Add the `RCDw` IMC timing
  * [Raptor Lake ] De-activate the MSR Uncore counter
  AMD:
  * "Zen3/Barcelo-R" and "Zen3+ Rembrandt-R" codenames
  * [Zen] Thermal highest limit reset fix
  Misc:
  * Code review and Registers documentation:
    AMD HWCR, Intel HDC and DRP</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677067200">- update to 1.95.4
  * [Intel] [from 11th to 14th gen]
    Convert the DRAM Speed to MT/s unit
    Compute the Bus Rate based on the BIOS MC PLL
- update to 1.95.3
  * [Intel] [Airmont]
    Improved the IMC geometry
    Introducing the Spreadtrum architecture
    Fixed the Bus and DRAM frequency rates
  * [Intel] [from 11th to 13th gen] Attempt to probe the interleaved controllers
  * [Intel] [Alder Lake/H] Attempt to decode the TCO Watchdog</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677153600">- added leap_compile_fix.patch to fix compilation on Leap</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1683115200">- removed leap_compile_fix.patch no needed anymore
- update to 1.96.0
  * [AMD]
    [RPL/X3D] Disabling the turbo boosted P-states change
    [PHOENIX] Adding Z1, U and HS PRO series.
    [Genoa] DAC address at UMC BAR + 0x40
    [Zen4] Adding the PCI entries of Genoa
    [Zen2] Adding remaining PCI entries
    [Zen] Query DAC &amp; CFG with the right UMC base address register
    [Zen4] Dump the CPUID Extended CPU Topology leaves.
    [Zen][Embedded][Banded Kestrel] R1000 Processor Family
    [Zen][Embedded] "Great Horned Owl", "River Hawk", "Grey Hawk"
    Complete the "Raven Ridge" and "Picasso" lists
    [EPYC] Moved "Snowy Owl" Embedded processors to CPUID 8F_01
    [Zen4] introducing Phoenix and Dragon Range
    [RMB] adding the Ryzen Embedded V3000 processors
    [VMR] adding the "AMD Ryzen 9 PRO 5945"
  * [Intel]
    Adding Granite Rapids, Sierra Forest, Grand Ridge entries
    Adding "Lunar Lake" and "Arrow Lake" entries.
  * [UI]
    Optimized decimal to digits converter
    Allow task tracker to select up to pid_max
    Can trace the frozen states of Linux tasks.
    Only print HWP frequencies within bounds.
    Fix ruler's aggregation.
  * [CR]
    Check CPUID[HV_PARTITION_PRIVILEGE_MASK] for HV_X64_MSR_VP_RUNTIME
    Uninitialized variable fix.
    [CPPC] Build EPP with KERNEL_VERSION(6) rather than CONFIG_CACHY
    [KERNEL] Linux 6.3: Employ modifier calls with the vma-&gt;vm_flags</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1684065600">- update to 1.96.1
  * [Driver]
  - Postpone Clock Source registration during startup until the Base Clock is computed.
  - Change class_create() according to Linux Kernel 6.4
  - Clear interrupt flag (cli) after Halt in the Idle method
  * [AMD]
  - [PHOENIX] Adding Ryzen 7940H, 7840H, 7640H
  - [VERMEER] Adding Ryzen PRO and Embedded processors
  - Ryzen Z1 CPUID' brand fix
  - Adding EPYC Embedded 9004 Series as Genoa
  - Adding EPYC Embedded 7003 Series as Milan
  - Adding EPYC Embedded 7002 Series as Rome
  - Adding EPYC Embedded 7001 Series as Naples</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1685880000">- update to 1.96.2
  * [Driver]
  - Allows compilation to keep going without CONFIG_ACPI_CPPC_LIB
  * [Client]
  - Adding two command line arguments:
  - Op Show Package C-States
  - OW Toggle Energy units
  * [AMD]
  - Specification of some Configuration MSRs</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1686830400">- update to 1.96.4
  * [AMD]
  - Display CPUID state of new and legacy features:
    Fused Multiply Add [FMA4]
    Extended Operation Support [XOP]
    Translation Cache Extension [TCE]
    Trailing Bit Manipulation [TBM]
    OS Visible Work-around [OSVW]
    LOCK prefix to read CR8 [AltMov]
  * [Intel]
  - Advanced Matrix Extensions [AMX]
  - Bits and Features of Sierra Forest and Grand Ridge
  - Attempt to decode the Meteor Lake Memory Controller
- update to 1.96.3
  * [AMD]
  - [Zeppelin] Probe more than one UMC controllers on Ryzen Threadripper 1900X
  - [Zen4] Dump SMBE and BMEC sub-leaves of CPUID 0x80000020</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1688212800">- update to 1.96.5
  * [AMD]
    Adding the "AMD Ryzen 5 5600X3D"
    Introducing the Zen4c Bergamo architecture
    Specs fixing of Embedded V-series and 3000 Series Processors
    Adding MENDOCINO, RAPHAEL Pro, PHOENIX Pro among others</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1712318400">- added preamble file for %kernel_module_package macro
- update to 1.97.1
  * added aarch64 support
  * upstream did not provide a summary changelog. Full list of commits:
    https://github.com/cyring/CoreFreq/compare/1.96.5...1.97.1</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715860800">- update to 1.97.2
  * [AMD]
  - [Hawk Point] Adding Ryzen PRO processors
  - [Phoenix] Adding the unlocked Ryzen 8000 Series
  * [Intel]
  - [MeteorLake] New bits specified
  - EEO and R2H bits inversion fix in MSR_POWER_CTL (0x1fc)
  - Reverse specification of MSR UNCORE_PERF_STATUS
  - Prefetchers fix of L1 Scrubbing, L1 Next Page and L2 AMP
  * [AArch64]
  - Providing Exclusive Load/Store to atomic operations
  - Improved asm of various macro functions
  - Removed LEGACY macros
  - Optimized the CORE_COUNT macros
  - Marked the Tools feature as nominal: Stress functions available
  - Allow user access to Retired Instructions counter
  - Fix Instructions counter overflow
  - Other PMC enhancements
  * [CR]
  - Fix a building issue with AlmaLinux aka RHEL-9
  - Linux kernel 6.9: Avoid redefinition of Intel MSR macros
  * [Doc]
  - README section for AlmaLinux
  - CONFIG_TRIM_UNUSED_KSYMS kernel build config is forbidden</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715947200">- fix dependency on kernel module that was not versioned</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1722081600">- update to 1.98.0
  * [Build]
  - Change dkms configuration to install into /usr/bin/
  - Solved compilation with Fedora using RHEL MINOR version number 99
  - [CR] Fixed some compilation warnings
  - [CR] Fix memory allocation in kernel pages for the SysGate
  - Workaround to musl change in basename (#494)
  - aarch64: Build with Redhat RHEL version 9
  - [CR] x86_64: Prevent array size overflow
  - dkms and ckms configuration files upgraded to version 1.98
  * [Intel]
  - [Raptor Lake] Adding the HB DID of i7-14700K' IMC
  - Mitigation mechanism: GDS_NO; RFDS_NO; MONITOR_MITG_NO
  - Apply some SDM Documentation Changes
  - [MTL] Fix CMD Stretch bit range width
  - Added method CLOCK_FLEX_MAX with Xeon's Nehalem &amp; Core 2
  - Grants full MSR_FLEX_RATIO access to tested architectures:
  - Alder Lake/S
  - Tiger Lake/U
  - Westmere/Gulftown
  - Provides the overclocking bins with unlocked processors
  - Query the Overclocking bit (OC) from Capabilities
  - Adding technologies: VMD, HDCP, IPU and VPU
  - Volume Management Device
  - High-Bandwidth Digital Content Protection
  - Image Processing Unit
  - Vision Processing Unit
  - Gaussian &amp; Neural Accelerator - GNA technology
  - [CR] Renamed Gemini Lake structures
  - [Meteor Lake] Introducing memory controller decoder
  * [AArch64]
  - Optimizing the Vcore seek
  - Workaround to Package discrete voltage: the highest Vcore
  - Improving computation of Euclidean division
  - Adjust frequency division in CNTFRQ and PMU counters
  - Scale a frequency factor from the interval
  - Refactoring the frequency ratios for decimal precision
  - Compile dev_pm_opp_put if Kernel greater or equal 4.11
  - Get the voltage core of CPUs from OPP
  * [AMD]
  - [Zen4][Raphael] Adding the EPYC 4004 Series
  - [Zen4] Clarify Hawk Point and Phoenix-Refresh architectures
  - [Family 19h] New voltage formula assigned to model 61h
  - Vcore activated
  - Voltage SoC deactivated
  - [Zen] Prevent the calculation of negative temperature (issue #496)
  - [Family 18h] Documented Hygon C86 7375
  - [Family 19h] PStateDef specification: Adding VID[8] bit 32
  - Specification of MSR HW_PSTATE_STATUS
  * [CLI]
  - aarch64: Display the state of the Memory Management Unit (MMU)
  - aarch64: State of Instruction Cache Unit I$ and Data Cache Unit D$
  - Added UI_RULER_MINIMUM &amp; UI_RULER_MAXIMUM building constraints
  - Revert "[CLI] Responsive ruler to architectural context"
  - This reverts commit 4bc38d6.
  - x86_64: AMD Boost and P-States redesigned
  - [UI] Hardening missing console/terminal size
  - Responsive ruler to architectural context
  - x86_64: Make HDCP meaning string shorter
  * [Driver]
  - Created C2U_Enable as a parameter alias of C1U_Enable</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1723032000">- update to 1.98.1
  * [AMD]
  - [Zen] Inject threshold events when thermal is out of bounds
  - Generic Zen architectures renamed with their Family number
  - Added a generic entry for the 1A family
  - Configure TjMax for multiple Ryzen and Threadripper
  - [CR] Optimize AMD temperature filtering function
  - [Zen5] Introducing the Eldora architecture aka "Granite Ridge"
  - [Zen5] Adding entries for Strix Point
  * [Intel]
  - Feature-bits of Core Ultra architecture
  - [TGL][ADL][RPL] New devices to probe IMC and Watchdog
  - [Raptor Lake-E] Adding the IMC probing entries
  - Grant full MSR_FLEX_RATIO access to Raptor Lake (06_B7)
  - Added Host Bridge DIDs of Raptor Lake-E
  - [ADL ... MTL] Code review of IMC decoders
  - [ADL] Compute DIMM Bank and Columns on both channels
  - [ADL] Process channels differently depending on DDR4 or DDR5
  - 12th to 14th generation IMC decoder refactoring
  - [ADL ... MTL] Adding Memory Controller Virtual Channel Count
  - [ADL ... MTL] Channel count as a function of DDPCD DDR_TYPE
  - [ADL ... MTL] Keep all enabled memory controllers
  - [12th and superior] Compute tWR quantity as a function of DDR version
  * [Build]
  - Now leave version number in Makefile
  - Pretty print the build and the clean of outputs
    Allow the V=n option increase the verbose level (incl. kernel)
  - CPU-Freq build against Linux Kernel version 6.11
  * [Documentation]
  - Refreshed README and Makefile</changelog>
</package>
<package pkgid="3bcc52a79967109c795bca8a05bf4d88a5cecd350f3483153b6f13805defc909ec55eb60d03731c2776ff069872091c979367f9726aa7940c823d0d8ddfe71ff" name="CoreFreq-kmp-default-debuginfo" arch="x86_64">
  <version epoch="0" ver="1.98.2_k6.10.5_1" rel="1.3"/>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1667563200">- Repair deficient description grammar.</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1670241600">- update to 1.92.4:
  * [Intel/Skylake-X] Permits MSR_RING_PERF_LIMIT_REASONS</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1670932800">- removed modprobe_corefreqd.service.patch and harden_corefreqd.service.patch
  now included in new corefreqd.service file replacing stock one
- update to 1.93.1
  * [PRJ] CoreFreq version 1.93.1
  * [ACPI/CPPC/EPP] Preview of AMD/Zen Energy Preference (CONFIG_CACHY)
  * [UI] Changed the HWP or CPPC ratio bounds.
  * [FIX] Putting `corefreqd` in the root cgroup (issue #379) Thanks to gel-crabs
  * [DOC] Parameters to blacklist the amd_pstate since kernel 6.0.11
  * [AMD][Zen4] Apply a voltage formula based on Rembrandt's. (#378)
  * [AMD][Zen4/Raphael] Attempting temperature per CCD from TCTL+0x308
  * [AMD][Zen4] Changed Timer loop
  * [CR] CLI code review and UI optimizations
  * [UI] Auto refresh the Topology items when off/online
  * [CR] Conditionally build with additional PMC Counters
  * [Intel] Adding Z8000 System Memory Controller Registers
  * [CR] Transformed global variable in cells padding
  * [UI] Windows re-scaling fix
  * [UI] Apply color theming to the CPPC capabilities list.
  * [AMD][Raphael] Adding device DIDs to probe UMC and IOMMU
  * [CPPC/FMW] Computes value bounds while Enabling/Disabling firmware
  * [CR] CPPC lib errors are now raised to Debug level
  * [AMD][Zen4] Increased the UMC size to 12 channels.
  * [CPPC] Handles the OffLine CPU case.
  * [CLI] Refactoring HWP/CPPC to print all capabilities per CPU
  * [ACPI] Computes the CPPC Bounds
  * [Intel] Linear Address Masking (LAM)
  * [CLI] EFER: Left aligned labels
  * [AMD] Reports UAIE and AIBRSE bits from EFER system register
  * [CLI] Changed mitigation mechanisms incapability labels
  * [AMD][Zen2] Mitigation Mechanism BTC-NOBR * ACPI/OSPM documentation
  * [CR] Code review on bit masks
  * [CPPC][ACPI] Kernel may decode the Guaranteed Performance Register
  * [UI] Optimize the cycles to clear the time bar.
  * [CR] Code review for extra compiler warnings
  * [UI] Time of the day displayed in the right side of menu
  * [UI] Display the current date and time in menu bar
  * [Kernel] Introducing support of `CONFIG_SCHED_BORE`
  * [CLI] Fixing ambiguous CPPC report: hardware vs firmware
  * [CLI] Surrounds _CPC feature with square brackets
  * [CPPC] Provides the ACPI _CPC object state.
  * [UI] Colors the task being tracked in the tracking list
  * [UI] Display the current time in the menu bar
  * [CLI] Reserve the programmable TDP section to Intel processors.
  * [AMD/Zen3+] Improving the DIMM geometry of Rembrandt UMC</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1672747200">- update to 1.94.1:
  * [Intel] Gemini Lake
  * [AMD] Ryzen 5 6600 H SoC, UMC channels
  * [AMD] Rembrandt: maximum of two UMC channels
  * [AMD] Raphael: Decodes DIMM geometry from AddrCfg
  * [AMD] Zen: Aggregation refactored
  * [AMD] Improved DDR5 clock decoding
  * Optimized Idle Loop</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1673006400">- update to 1.94.3:
  * [AMD][RMB] If UMC is quad channels then unpopulate odd channels
  * [AMD][RPL] Provide Service Processor Vcore as workaround
  * [UI] Auto size and lay performance capabilities window
  * [UI] Adding comments to the EEO and R2H technologies
  * [AMD][Raphael] 7950X3D, 7900X3D. support</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1674475200">- update to 1.95.1:
  * [Intel] RPL: voltage of Pcore, Ecore, System Agent
  * [Intel] RPL and ADL Chipset device IDs
  * [Intel] Decode the RPL IMC and improve DDR5 support
  * [Build] Raise `MAX_FREQ_HZ` up to 7125000000 Hertz
  * [Intel] Mobile {Coffee Lake, Kaby Lake} codenames
  * [Intel] Braswell codename detection
  * [AMD] SYSCFG Register
  * [AMD] EPYC 9654
  * [AMD] Transparent SME
  * [AMD] DRAM Data Scrambling
  * [AMD] Adding "Barcelo R" and "Rembrandt R"</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1675944000">- update to 1.95.2:
  * Fixed the aggregation of the minimum ratio
  Intel:
  * [Airmont][Silvermont] Attempt to decode `tCKE` from DRMC
    register
  * [Airmont] Improve `tWTPr`, `B2B`, `tWWDR` timings
  * [Airmont] Provide a new IMC decoder
  * Add the Emerald Rapids architecture entry
  * [DDR5][DDR4] Add the `RCDw` IMC timing
  * [Raptor Lake ] De-activate the MSR Uncore counter
  AMD:
  * "Zen3/Barcelo-R" and "Zen3+ Rembrandt-R" codenames
  * [Zen] Thermal highest limit reset fix
  Misc:
  * Code review and Registers documentation:
    AMD HWCR, Intel HDC and DRP</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677067200">- update to 1.95.4
  * [Intel] [from 11th to 14th gen]
    Convert the DRAM Speed to MT/s unit
    Compute the Bus Rate based on the BIOS MC PLL
- update to 1.95.3
  * [Intel] [Airmont]
    Improved the IMC geometry
    Introducing the Spreadtrum architecture
    Fixed the Bus and DRAM frequency rates
  * [Intel] [from 11th to 13th gen] Attempt to probe the interleaved controllers
  * [Intel] [Alder Lake/H] Attempt to decode the TCO Watchdog</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677153600">- added leap_compile_fix.patch to fix compilation on Leap</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1683115200">- removed leap_compile_fix.patch no needed anymore
- update to 1.96.0
  * [AMD]
    [RPL/X3D] Disabling the turbo boosted P-states change
    [PHOENIX] Adding Z1, U and HS PRO series.
    [Genoa] DAC address at UMC BAR + 0x40
    [Zen4] Adding the PCI entries of Genoa
    [Zen2] Adding remaining PCI entries
    [Zen] Query DAC &amp; CFG with the right UMC base address register
    [Zen4] Dump the CPUID Extended CPU Topology leaves.
    [Zen][Embedded][Banded Kestrel] R1000 Processor Family
    [Zen][Embedded] "Great Horned Owl", "River Hawk", "Grey Hawk"
    Complete the "Raven Ridge" and "Picasso" lists
    [EPYC] Moved "Snowy Owl" Embedded processors to CPUID 8F_01
    [Zen4] introducing Phoenix and Dragon Range
    [RMB] adding the Ryzen Embedded V3000 processors
    [VMR] adding the "AMD Ryzen 9 PRO 5945"
  * [Intel]
    Adding Granite Rapids, Sierra Forest, Grand Ridge entries
    Adding "Lunar Lake" and "Arrow Lake" entries.
  * [UI]
    Optimized decimal to digits converter
    Allow task tracker to select up to pid_max
    Can trace the frozen states of Linux tasks.
    Only print HWP frequencies within bounds.
    Fix ruler's aggregation.
  * [CR]
    Check CPUID[HV_PARTITION_PRIVILEGE_MASK] for HV_X64_MSR_VP_RUNTIME
    Uninitialized variable fix.
    [CPPC] Build EPP with KERNEL_VERSION(6) rather than CONFIG_CACHY
    [KERNEL] Linux 6.3: Employ modifier calls with the vma-&gt;vm_flags</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1684065600">- update to 1.96.1
  * [Driver]
  - Postpone Clock Source registration during startup until the Base Clock is computed.
  - Change class_create() according to Linux Kernel 6.4
  - Clear interrupt flag (cli) after Halt in the Idle method
  * [AMD]
  - [PHOENIX] Adding Ryzen 7940H, 7840H, 7640H
  - [VERMEER] Adding Ryzen PRO and Embedded processors
  - Ryzen Z1 CPUID' brand fix
  - Adding EPYC Embedded 9004 Series as Genoa
  - Adding EPYC Embedded 7003 Series as Milan
  - Adding EPYC Embedded 7002 Series as Rome
  - Adding EPYC Embedded 7001 Series as Naples</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1685880000">- update to 1.96.2
  * [Driver]
  - Allows compilation to keep going without CONFIG_ACPI_CPPC_LIB
  * [Client]
  - Adding two command line arguments:
  - Op Show Package C-States
  - OW Toggle Energy units
  * [AMD]
  - Specification of some Configuration MSRs</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1686830400">- update to 1.96.4
  * [AMD]
  - Display CPUID state of new and legacy features:
    Fused Multiply Add [FMA4]
    Extended Operation Support [XOP]
    Translation Cache Extension [TCE]
    Trailing Bit Manipulation [TBM]
    OS Visible Work-around [OSVW]
    LOCK prefix to read CR8 [AltMov]
  * [Intel]
  - Advanced Matrix Extensions [AMX]
  - Bits and Features of Sierra Forest and Grand Ridge
  - Attempt to decode the Meteor Lake Memory Controller
- update to 1.96.3
  * [AMD]
  - [Zeppelin] Probe more than one UMC controllers on Ryzen Threadripper 1900X
  - [Zen4] Dump SMBE and BMEC sub-leaves of CPUID 0x80000020</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1688212800">- update to 1.96.5
  * [AMD]
    Adding the "AMD Ryzen 5 5600X3D"
    Introducing the Zen4c Bergamo architecture
    Specs fixing of Embedded V-series and 3000 Series Processors
    Adding MENDOCINO, RAPHAEL Pro, PHOENIX Pro among others</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1712318400">- added preamble file for %kernel_module_package macro
- update to 1.97.1
  * added aarch64 support
  * upstream did not provide a summary changelog. Full list of commits:
    https://github.com/cyring/CoreFreq/compare/1.96.5...1.97.1</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715860800">- update to 1.97.2
  * [AMD]
  - [Hawk Point] Adding Ryzen PRO processors
  - [Phoenix] Adding the unlocked Ryzen 8000 Series
  * [Intel]
  - [MeteorLake] New bits specified
  - EEO and R2H bits inversion fix in MSR_POWER_CTL (0x1fc)
  - Reverse specification of MSR UNCORE_PERF_STATUS
  - Prefetchers fix of L1 Scrubbing, L1 Next Page and L2 AMP
  * [AArch64]
  - Providing Exclusive Load/Store to atomic operations
  - Improved asm of various macro functions
  - Removed LEGACY macros
  - Optimized the CORE_COUNT macros
  - Marked the Tools feature as nominal: Stress functions available
  - Allow user access to Retired Instructions counter
  - Fix Instructions counter overflow
  - Other PMC enhancements
  * [CR]
  - Fix a building issue with AlmaLinux aka RHEL-9
  - Linux kernel 6.9: Avoid redefinition of Intel MSR macros
  * [Doc]
  - README section for AlmaLinux
  - CONFIG_TRIM_UNUSED_KSYMS kernel build config is forbidden</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715947200">- fix dependency on kernel module that was not versioned</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1722081600">- update to 1.98.0
  * [Build]
  - Change dkms configuration to install into /usr/bin/
  - Solved compilation with Fedora using RHEL MINOR version number 99
  - [CR] Fixed some compilation warnings
  - [CR] Fix memory allocation in kernel pages for the SysGate
  - Workaround to musl change in basename (#494)
  - aarch64: Build with Redhat RHEL version 9
  - [CR] x86_64: Prevent array size overflow
  - dkms and ckms configuration files upgraded to version 1.98
  * [Intel]
  - [Raptor Lake] Adding the HB DID of i7-14700K' IMC
  - Mitigation mechanism: GDS_NO; RFDS_NO; MONITOR_MITG_NO
  - Apply some SDM Documentation Changes
  - [MTL] Fix CMD Stretch bit range width
  - Added method CLOCK_FLEX_MAX with Xeon's Nehalem &amp; Core 2
  - Grants full MSR_FLEX_RATIO access to tested architectures:
  - Alder Lake/S
  - Tiger Lake/U
  - Westmere/Gulftown
  - Provides the overclocking bins with unlocked processors
  - Query the Overclocking bit (OC) from Capabilities
  - Adding technologies: VMD, HDCP, IPU and VPU
  - Volume Management Device
  - High-Bandwidth Digital Content Protection
  - Image Processing Unit
  - Vision Processing Unit
  - Gaussian &amp; Neural Accelerator - GNA technology
  - [CR] Renamed Gemini Lake structures
  - [Meteor Lake] Introducing memory controller decoder
  * [AArch64]
  - Optimizing the Vcore seek
  - Workaround to Package discrete voltage: the highest Vcore
  - Improving computation of Euclidean division
  - Adjust frequency division in CNTFRQ and PMU counters
  - Scale a frequency factor from the interval
  - Refactoring the frequency ratios for decimal precision
  - Compile dev_pm_opp_put if Kernel greater or equal 4.11
  - Get the voltage core of CPUs from OPP
  * [AMD]
  - [Zen4][Raphael] Adding the EPYC 4004 Series
  - [Zen4] Clarify Hawk Point and Phoenix-Refresh architectures
  - [Family 19h] New voltage formula assigned to model 61h
  - Vcore activated
  - Voltage SoC deactivated
  - [Zen] Prevent the calculation of negative temperature (issue #496)
  - [Family 18h] Documented Hygon C86 7375
  - [Family 19h] PStateDef specification: Adding VID[8] bit 32
  - Specification of MSR HW_PSTATE_STATUS
  * [CLI]
  - aarch64: Display the state of the Memory Management Unit (MMU)
  - aarch64: State of Instruction Cache Unit I$ and Data Cache Unit D$
  - Added UI_RULER_MINIMUM &amp; UI_RULER_MAXIMUM building constraints
  - Revert "[CLI] Responsive ruler to architectural context"
  - This reverts commit 4bc38d6.
  - x86_64: AMD Boost and P-States redesigned
  - [UI] Hardening missing console/terminal size
  - Responsive ruler to architectural context
  - x86_64: Make HDCP meaning string shorter
  * [Driver]
  - Created C2U_Enable as a parameter alias of C1U_Enable</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1723032000">- update to 1.98.1
  * [AMD]
  - [Zen] Inject threshold events when thermal is out of bounds
  - Generic Zen architectures renamed with their Family number
  - Added a generic entry for the 1A family
  - Configure TjMax for multiple Ryzen and Threadripper
  - [CR] Optimize AMD temperature filtering function
  - [Zen5] Introducing the Eldora architecture aka "Granite Ridge"
  - [Zen5] Adding entries for Strix Point
  * [Intel]
  - Feature-bits of Core Ultra architecture
  - [TGL][ADL][RPL] New devices to probe IMC and Watchdog
  - [Raptor Lake-E] Adding the IMC probing entries
  - Grant full MSR_FLEX_RATIO access to Raptor Lake (06_B7)
  - Added Host Bridge DIDs of Raptor Lake-E
  - [ADL ... MTL] Code review of IMC decoders
  - [ADL] Compute DIMM Bank and Columns on both channels
  - [ADL] Process channels differently depending on DDR4 or DDR5
  - 12th to 14th generation IMC decoder refactoring
  - [ADL ... MTL] Adding Memory Controller Virtual Channel Count
  - [ADL ... MTL] Channel count as a function of DDPCD DDR_TYPE
  - [ADL ... MTL] Keep all enabled memory controllers
  - [12th and superior] Compute tWR quantity as a function of DDR version
  * [Build]
  - Now leave version number in Makefile
  - Pretty print the build and the clean of outputs
    Allow the V=n option increase the verbose level (incl. kernel)
  - CPU-Freq build against Linux Kernel version 6.11
  * [Documentation]
  - Refreshed README and Makefile</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1723464000">- Update to 1.98.2
  * [Intel]
  - [WDT] Adding multiple devices to probe TCO
    C620 Series Chipset Production SKUs (0xa1a3)
    C620 Series Chipset Super SKUs (0xa223)
    Sunrise Point/H (0xa123)
    Cannon Lake/LP (0x9da3)
    Comet Lake/H (0x06a3)
    Ice Lake/LP (0x34a3)
    Tiger Lake/H (0x43a3)
    Elkhart Lake (0x4b23)
    Kaby Lake/H (0xa2a3)
    Cannon Lake (0xa323)
    Comet Lake/V (0xa3a3)
    Ice Lake/NG (0x38a3)
    Alder lake/M (0x54a3)
    Arrow Lake/S (0x7f23)
    Jasper Lake SMBus (0x4da3)
    Sunrise Point-LP SMBus (0x9d23)
    Comet Lake PCH-LP SMBus (0x02a3)
  - MSR_FLEX_RATIO register
    Grant access to Alder Lake/H (06_9A)
    Deny access to Nehalem/Bloomfield (06_1A)
    Removed a condition in access function</changelog>
</package>
<package pkgid="4e9d7c9a3dd223842b742f619122cc91f4d1ae315694ea3addd31a7fb7d7914762e5b3a6c60e25e67c91a0b0166e38c06a33a33472c53a0b7c8543586f41ad12" name="CoreFreq-kmp-default-debuginfo" arch="x86_64">
  <version epoch="0" ver="1.98.3_k6.10.5_1" rel="1.1"/>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1670241600">- update to 1.92.4:
  * [Intel/Skylake-X] Permits MSR_RING_PERF_LIMIT_REASONS</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1670932800">- removed modprobe_corefreqd.service.patch and harden_corefreqd.service.patch
  now included in new corefreqd.service file replacing stock one
- update to 1.93.1
  * [PRJ] CoreFreq version 1.93.1
  * [ACPI/CPPC/EPP] Preview of AMD/Zen Energy Preference (CONFIG_CACHY)
  * [UI] Changed the HWP or CPPC ratio bounds.
  * [FIX] Putting `corefreqd` in the root cgroup (issue #379) Thanks to gel-crabs
  * [DOC] Parameters to blacklist the amd_pstate since kernel 6.0.11
  * [AMD][Zen4] Apply a voltage formula based on Rembrandt's. (#378)
  * [AMD][Zen4/Raphael] Attempting temperature per CCD from TCTL+0x308
  * [AMD][Zen4] Changed Timer loop
  * [CR] CLI code review and UI optimizations
  * [UI] Auto refresh the Topology items when off/online
  * [CR] Conditionally build with additional PMC Counters
  * [Intel] Adding Z8000 System Memory Controller Registers
  * [CR] Transformed global variable in cells padding
  * [UI] Windows re-scaling fix
  * [UI] Apply color theming to the CPPC capabilities list.
  * [AMD][Raphael] Adding device DIDs to probe UMC and IOMMU
  * [CPPC/FMW] Computes value bounds while Enabling/Disabling firmware
  * [CR] CPPC lib errors are now raised to Debug level
  * [AMD][Zen4] Increased the UMC size to 12 channels.
  * [CPPC] Handles the OffLine CPU case.
  * [CLI] Refactoring HWP/CPPC to print all capabilities per CPU
  * [ACPI] Computes the CPPC Bounds
  * [Intel] Linear Address Masking (LAM)
  * [CLI] EFER: Left aligned labels
  * [AMD] Reports UAIE and AIBRSE bits from EFER system register
  * [CLI] Changed mitigation mechanisms incapability labels
  * [AMD][Zen2] Mitigation Mechanism BTC-NOBR * ACPI/OSPM documentation
  * [CR] Code review on bit masks
  * [CPPC][ACPI] Kernel may decode the Guaranteed Performance Register
  * [UI] Optimize the cycles to clear the time bar.
  * [CR] Code review for extra compiler warnings
  * [UI] Time of the day displayed in the right side of menu
  * [UI] Display the current date and time in menu bar
  * [Kernel] Introducing support of `CONFIG_SCHED_BORE`
  * [CLI] Fixing ambiguous CPPC report: hardware vs firmware
  * [CLI] Surrounds _CPC feature with square brackets
  * [CPPC] Provides the ACPI _CPC object state.
  * [UI] Colors the task being tracked in the tracking list
  * [UI] Display the current time in the menu bar
  * [CLI] Reserve the programmable TDP section to Intel processors.
  * [AMD/Zen3+] Improving the DIMM geometry of Rembrandt UMC</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1672747200">- update to 1.94.1:
  * [Intel] Gemini Lake
  * [AMD] Ryzen 5 6600 H SoC, UMC channels
  * [AMD] Rembrandt: maximum of two UMC channels
  * [AMD] Raphael: Decodes DIMM geometry from AddrCfg
  * [AMD] Zen: Aggregation refactored
  * [AMD] Improved DDR5 clock decoding
  * Optimized Idle Loop</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1673006400">- update to 1.94.3:
  * [AMD][RMB] If UMC is quad channels then unpopulate odd channels
  * [AMD][RPL] Provide Service Processor Vcore as workaround
  * [UI] Auto size and lay performance capabilities window
  * [UI] Adding comments to the EEO and R2H technologies
  * [AMD][Raphael] 7950X3D, 7900X3D. support</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1674475200">- update to 1.95.1:
  * [Intel] RPL: voltage of Pcore, Ecore, System Agent
  * [Intel] RPL and ADL Chipset device IDs
  * [Intel] Decode the RPL IMC and improve DDR5 support
  * [Build] Raise `MAX_FREQ_HZ` up to 7125000000 Hertz
  * [Intel] Mobile {Coffee Lake, Kaby Lake} codenames
  * [Intel] Braswell codename detection
  * [AMD] SYSCFG Register
  * [AMD] EPYC 9654
  * [AMD] Transparent SME
  * [AMD] DRAM Data Scrambling
  * [AMD] Adding "Barcelo R" and "Rembrandt R"</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1675944000">- update to 1.95.2:
  * Fixed the aggregation of the minimum ratio
  Intel:
  * [Airmont][Silvermont] Attempt to decode `tCKE` from DRMC
    register
  * [Airmont] Improve `tWTPr`, `B2B`, `tWWDR` timings
  * [Airmont] Provide a new IMC decoder
  * Add the Emerald Rapids architecture entry
  * [DDR5][DDR4] Add the `RCDw` IMC timing
  * [Raptor Lake ] De-activate the MSR Uncore counter
  AMD:
  * "Zen3/Barcelo-R" and "Zen3+ Rembrandt-R" codenames
  * [Zen] Thermal highest limit reset fix
  Misc:
  * Code review and Registers documentation:
    AMD HWCR, Intel HDC and DRP</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677067200">- update to 1.95.4
  * [Intel] [from 11th to 14th gen]
    Convert the DRAM Speed to MT/s unit
    Compute the Bus Rate based on the BIOS MC PLL
- update to 1.95.3
  * [Intel] [Airmont]
    Improved the IMC geometry
    Introducing the Spreadtrum architecture
    Fixed the Bus and DRAM frequency rates
  * [Intel] [from 11th to 13th gen] Attempt to probe the interleaved controllers
  * [Intel] [Alder Lake/H] Attempt to decode the TCO Watchdog</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677153600">- added leap_compile_fix.patch to fix compilation on Leap</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1683115200">- removed leap_compile_fix.patch no needed anymore
- update to 1.96.0
  * [AMD]
    [RPL/X3D] Disabling the turbo boosted P-states change
    [PHOENIX] Adding Z1, U and HS PRO series.
    [Genoa] DAC address at UMC BAR + 0x40
    [Zen4] Adding the PCI entries of Genoa
    [Zen2] Adding remaining PCI entries
    [Zen] Query DAC &amp; CFG with the right UMC base address register
    [Zen4] Dump the CPUID Extended CPU Topology leaves.
    [Zen][Embedded][Banded Kestrel] R1000 Processor Family
    [Zen][Embedded] "Great Horned Owl", "River Hawk", "Grey Hawk"
    Complete the "Raven Ridge" and "Picasso" lists
    [EPYC] Moved "Snowy Owl" Embedded processors to CPUID 8F_01
    [Zen4] introducing Phoenix and Dragon Range
    [RMB] adding the Ryzen Embedded V3000 processors
    [VMR] adding the "AMD Ryzen 9 PRO 5945"
  * [Intel]
    Adding Granite Rapids, Sierra Forest, Grand Ridge entries
    Adding "Lunar Lake" and "Arrow Lake" entries.
  * [UI]
    Optimized decimal to digits converter
    Allow task tracker to select up to pid_max
    Can trace the frozen states of Linux tasks.
    Only print HWP frequencies within bounds.
    Fix ruler's aggregation.
  * [CR]
    Check CPUID[HV_PARTITION_PRIVILEGE_MASK] for HV_X64_MSR_VP_RUNTIME
    Uninitialized variable fix.
    [CPPC] Build EPP with KERNEL_VERSION(6) rather than CONFIG_CACHY
    [KERNEL] Linux 6.3: Employ modifier calls with the vma-&gt;vm_flags</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1684065600">- update to 1.96.1
  * [Driver]
  - Postpone Clock Source registration during startup until the Base Clock is computed.
  - Change class_create() according to Linux Kernel 6.4
  - Clear interrupt flag (cli) after Halt in the Idle method
  * [AMD]
  - [PHOENIX] Adding Ryzen 7940H, 7840H, 7640H
  - [VERMEER] Adding Ryzen PRO and Embedded processors
  - Ryzen Z1 CPUID' brand fix
  - Adding EPYC Embedded 9004 Series as Genoa
  - Adding EPYC Embedded 7003 Series as Milan
  - Adding EPYC Embedded 7002 Series as Rome
  - Adding EPYC Embedded 7001 Series as Naples</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1685880000">- update to 1.96.2
  * [Driver]
  - Allows compilation to keep going without CONFIG_ACPI_CPPC_LIB
  * [Client]
  - Adding two command line arguments:
  - Op Show Package C-States
  - OW Toggle Energy units
  * [AMD]
  - Specification of some Configuration MSRs</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1686830400">- update to 1.96.4
  * [AMD]
  - Display CPUID state of new and legacy features:
    Fused Multiply Add [FMA4]
    Extended Operation Support [XOP]
    Translation Cache Extension [TCE]
    Trailing Bit Manipulation [TBM]
    OS Visible Work-around [OSVW]
    LOCK prefix to read CR8 [AltMov]
  * [Intel]
  - Advanced Matrix Extensions [AMX]
  - Bits and Features of Sierra Forest and Grand Ridge
  - Attempt to decode the Meteor Lake Memory Controller
- update to 1.96.3
  * [AMD]
  - [Zeppelin] Probe more than one UMC controllers on Ryzen Threadripper 1900X
  - [Zen4] Dump SMBE and BMEC sub-leaves of CPUID 0x80000020</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1688212800">- update to 1.96.5
  * [AMD]
    Adding the "AMD Ryzen 5 5600X3D"
    Introducing the Zen4c Bergamo architecture
    Specs fixing of Embedded V-series and 3000 Series Processors
    Adding MENDOCINO, RAPHAEL Pro, PHOENIX Pro among others</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1712318400">- added preamble file for %kernel_module_package macro
- update to 1.97.1
  * added aarch64 support
  * upstream did not provide a summary changelog. Full list of commits:
    https://github.com/cyring/CoreFreq/compare/1.96.5...1.97.1</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715860800">- update to 1.97.2
  * [AMD]
  - [Hawk Point] Adding Ryzen PRO processors
  - [Phoenix] Adding the unlocked Ryzen 8000 Series
  * [Intel]
  - [MeteorLake] New bits specified
  - EEO and R2H bits inversion fix in MSR_POWER_CTL (0x1fc)
  - Reverse specification of MSR UNCORE_PERF_STATUS
  - Prefetchers fix of L1 Scrubbing, L1 Next Page and L2 AMP
  * [AArch64]
  - Providing Exclusive Load/Store to atomic operations
  - Improved asm of various macro functions
  - Removed LEGACY macros
  - Optimized the CORE_COUNT macros
  - Marked the Tools feature as nominal: Stress functions available
  - Allow user access to Retired Instructions counter
  - Fix Instructions counter overflow
  - Other PMC enhancements
  * [CR]
  - Fix a building issue with AlmaLinux aka RHEL-9
  - Linux kernel 6.9: Avoid redefinition of Intel MSR macros
  * [Doc]
  - README section for AlmaLinux
  - CONFIG_TRIM_UNUSED_KSYMS kernel build config is forbidden</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715947200">- fix dependency on kernel module that was not versioned</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1722081600">- update to 1.98.0
  * [Build]
  - Change dkms configuration to install into /usr/bin/
  - Solved compilation with Fedora using RHEL MINOR version number 99
  - [CR] Fixed some compilation warnings
  - [CR] Fix memory allocation in kernel pages for the SysGate
  - Workaround to musl change in basename (#494)
  - aarch64: Build with Redhat RHEL version 9
  - [CR] x86_64: Prevent array size overflow
  - dkms and ckms configuration files upgraded to version 1.98
  * [Intel]
  - [Raptor Lake] Adding the HB DID of i7-14700K' IMC
  - Mitigation mechanism: GDS_NO; RFDS_NO; MONITOR_MITG_NO
  - Apply some SDM Documentation Changes
  - [MTL] Fix CMD Stretch bit range width
  - Added method CLOCK_FLEX_MAX with Xeon's Nehalem &amp; Core 2
  - Grants full MSR_FLEX_RATIO access to tested architectures:
  - Alder Lake/S
  - Tiger Lake/U
  - Westmere/Gulftown
  - Provides the overclocking bins with unlocked processors
  - Query the Overclocking bit (OC) from Capabilities
  - Adding technologies: VMD, HDCP, IPU and VPU
  - Volume Management Device
  - High-Bandwidth Digital Content Protection
  - Image Processing Unit
  - Vision Processing Unit
  - Gaussian &amp; Neural Accelerator - GNA technology
  - [CR] Renamed Gemini Lake structures
  - [Meteor Lake] Introducing memory controller decoder
  * [AArch64]
  - Optimizing the Vcore seek
  - Workaround to Package discrete voltage: the highest Vcore
  - Improving computation of Euclidean division
  - Adjust frequency division in CNTFRQ and PMU counters
  - Scale a frequency factor from the interval
  - Refactoring the frequency ratios for decimal precision
  - Compile dev_pm_opp_put if Kernel greater or equal 4.11
  - Get the voltage core of CPUs from OPP
  * [AMD]
  - [Zen4][Raphael] Adding the EPYC 4004 Series
  - [Zen4] Clarify Hawk Point and Phoenix-Refresh architectures
  - [Family 19h] New voltage formula assigned to model 61h
  - Vcore activated
  - Voltage SoC deactivated
  - [Zen] Prevent the calculation of negative temperature (issue #496)
  - [Family 18h] Documented Hygon C86 7375
  - [Family 19h] PStateDef specification: Adding VID[8] bit 32
  - Specification of MSR HW_PSTATE_STATUS
  * [CLI]
  - aarch64: Display the state of the Memory Management Unit (MMU)
  - aarch64: State of Instruction Cache Unit I$ and Data Cache Unit D$
  - Added UI_RULER_MINIMUM &amp; UI_RULER_MAXIMUM building constraints
  - Revert "[CLI] Responsive ruler to architectural context"
  - This reverts commit 4bc38d6.
  - x86_64: AMD Boost and P-States redesigned
  - [UI] Hardening missing console/terminal size
  - Responsive ruler to architectural context
  - x86_64: Make HDCP meaning string shorter
  * [Driver]
  - Created C2U_Enable as a parameter alias of C1U_Enable</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1723032000">- update to 1.98.1
  * [AMD]
  - [Zen] Inject threshold events when thermal is out of bounds
  - Generic Zen architectures renamed with their Family number
  - Added a generic entry for the 1A family
  - Configure TjMax for multiple Ryzen and Threadripper
  - [CR] Optimize AMD temperature filtering function
  - [Zen5] Introducing the Eldora architecture aka "Granite Ridge"
  - [Zen5] Adding entries for Strix Point
  * [Intel]
  - Feature-bits of Core Ultra architecture
  - [TGL][ADL][RPL] New devices to probe IMC and Watchdog
  - [Raptor Lake-E] Adding the IMC probing entries
  - Grant full MSR_FLEX_RATIO access to Raptor Lake (06_B7)
  - Added Host Bridge DIDs of Raptor Lake-E
  - [ADL ... MTL] Code review of IMC decoders
  - [ADL] Compute DIMM Bank and Columns on both channels
  - [ADL] Process channels differently depending on DDR4 or DDR5
  - 12th to 14th generation IMC decoder refactoring
  - [ADL ... MTL] Adding Memory Controller Virtual Channel Count
  - [ADL ... MTL] Channel count as a function of DDPCD DDR_TYPE
  - [ADL ... MTL] Keep all enabled memory controllers
  - [12th and superior] Compute tWR quantity as a function of DDR version
  * [Build]
  - Now leave version number in Makefile
  - Pretty print the build and the clean of outputs
    Allow the V=n option increase the verbose level (incl. kernel)
  - CPU-Freq build against Linux Kernel version 6.11
  * [Documentation]
  - Refreshed README and Makefile</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1723464000">- Update to 1.98.2
  * [Intel]
  - [WDT] Adding multiple devices to probe TCO
    C620 Series Chipset Production SKUs (0xa1a3)
    C620 Series Chipset Super SKUs (0xa223)
    Sunrise Point/H (0xa123)
    Cannon Lake/LP (0x9da3)
    Comet Lake/H (0x06a3)
    Ice Lake/LP (0x34a3)
    Tiger Lake/H (0x43a3)
    Elkhart Lake (0x4b23)
    Kaby Lake/H (0xa2a3)
    Cannon Lake (0xa323)
    Comet Lake/V (0xa3a3)
    Ice Lake/NG (0x38a3)
    Alder lake/M (0x54a3)
    Arrow Lake/S (0x7f23)
    Jasper Lake SMBus (0x4da3)
    Sunrise Point-LP SMBus (0x9d23)
    Comet Lake PCH-LP SMBus (0x02a3)
  - MSR_FLEX_RATIO register
    Grant access to Alder Lake/H (06_9A)
    Deny access to Nehalem/Bloomfield (06_1A)
    Removed a condition in access function</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1725019200">- Update to 1.98.3
  * [AMD]
  - [VMR/RPL/GNR] Voltage Curve Optimizer (VCO)
  - Provide a specific VCO formula based on HWM_CHIPSET=AMD_VCO
    build parameter
  - The standard voltage formulas are restored to these architectures
  - Zen5: Guessed a new P-State MSR bits specification to fix the
    Coefficient Of Frequency (COF)</changelog>
</package>
<package pkgid="7ee1cfa627499d32f95d726b6115552ebcc6d9cd26e048efd75e58c6fc0469f97863c8e5524687c1d911478bb61551859dac9ef8fc7c641c03c0a68bbb607aaa" name="CoreFreq-kmp-default-debuginfo" arch="x86_64">
  <version epoch="0" ver="1.98.4_k6.11.2_1" rel="1.4"/>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1670932800">- removed modprobe_corefreqd.service.patch and harden_corefreqd.service.patch
  now included in new corefreqd.service file replacing stock one
- update to 1.93.1
  * [PRJ] CoreFreq version 1.93.1
  * [ACPI/CPPC/EPP] Preview of AMD/Zen Energy Preference (CONFIG_CACHY)
  * [UI] Changed the HWP or CPPC ratio bounds.
  * [FIX] Putting `corefreqd` in the root cgroup (issue #379) Thanks to gel-crabs
  * [DOC] Parameters to blacklist the amd_pstate since kernel 6.0.11
  * [AMD][Zen4] Apply a voltage formula based on Rembrandt's. (#378)
  * [AMD][Zen4/Raphael] Attempting temperature per CCD from TCTL+0x308
  * [AMD][Zen4] Changed Timer loop
  * [CR] CLI code review and UI optimizations
  * [UI] Auto refresh the Topology items when off/online
  * [CR] Conditionally build with additional PMC Counters
  * [Intel] Adding Z8000 System Memory Controller Registers
  * [CR] Transformed global variable in cells padding
  * [UI] Windows re-scaling fix
  * [UI] Apply color theming to the CPPC capabilities list.
  * [AMD][Raphael] Adding device DIDs to probe UMC and IOMMU
  * [CPPC/FMW] Computes value bounds while Enabling/Disabling firmware
  * [CR] CPPC lib errors are now raised to Debug level
  * [AMD][Zen4] Increased the UMC size to 12 channels.
  * [CPPC] Handles the OffLine CPU case.
  * [CLI] Refactoring HWP/CPPC to print all capabilities per CPU
  * [ACPI] Computes the CPPC Bounds
  * [Intel] Linear Address Masking (LAM)
  * [CLI] EFER: Left aligned labels
  * [AMD] Reports UAIE and AIBRSE bits from EFER system register
  * [CLI] Changed mitigation mechanisms incapability labels
  * [AMD][Zen2] Mitigation Mechanism BTC-NOBR * ACPI/OSPM documentation
  * [CR] Code review on bit masks
  * [CPPC][ACPI] Kernel may decode the Guaranteed Performance Register
  * [UI] Optimize the cycles to clear the time bar.
  * [CR] Code review for extra compiler warnings
  * [UI] Time of the day displayed in the right side of menu
  * [UI] Display the current date and time in menu bar
  * [Kernel] Introducing support of `CONFIG_SCHED_BORE`
  * [CLI] Fixing ambiguous CPPC report: hardware vs firmware
  * [CLI] Surrounds _CPC feature with square brackets
  * [CPPC] Provides the ACPI _CPC object state.
  * [UI] Colors the task being tracked in the tracking list
  * [UI] Display the current time in the menu bar
  * [CLI] Reserve the programmable TDP section to Intel processors.
  * [AMD/Zen3+] Improving the DIMM geometry of Rembrandt UMC</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1672747200">- update to 1.94.1:
  * [Intel] Gemini Lake
  * [AMD] Ryzen 5 6600 H SoC, UMC channels
  * [AMD] Rembrandt: maximum of two UMC channels
  * [AMD] Raphael: Decodes DIMM geometry from AddrCfg
  * [AMD] Zen: Aggregation refactored
  * [AMD] Improved DDR5 clock decoding
  * Optimized Idle Loop</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1673006400">- update to 1.94.3:
  * [AMD][RMB] If UMC is quad channels then unpopulate odd channels
  * [AMD][RPL] Provide Service Processor Vcore as workaround
  * [UI] Auto size and lay performance capabilities window
  * [UI] Adding comments to the EEO and R2H technologies
  * [AMD][Raphael] 7950X3D, 7900X3D. support</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1674475200">- update to 1.95.1:
  * [Intel] RPL: voltage of Pcore, Ecore, System Agent
  * [Intel] RPL and ADL Chipset device IDs
  * [Intel] Decode the RPL IMC and improve DDR5 support
  * [Build] Raise `MAX_FREQ_HZ` up to 7125000000 Hertz
  * [Intel] Mobile {Coffee Lake, Kaby Lake} codenames
  * [Intel] Braswell codename detection
  * [AMD] SYSCFG Register
  * [AMD] EPYC 9654
  * [AMD] Transparent SME
  * [AMD] DRAM Data Scrambling
  * [AMD] Adding "Barcelo R" and "Rembrandt R"</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1675944000">- update to 1.95.2:
  * Fixed the aggregation of the minimum ratio
  Intel:
  * [Airmont][Silvermont] Attempt to decode `tCKE` from DRMC
    register
  * [Airmont] Improve `tWTPr`, `B2B`, `tWWDR` timings
  * [Airmont] Provide a new IMC decoder
  * Add the Emerald Rapids architecture entry
  * [DDR5][DDR4] Add the `RCDw` IMC timing
  * [Raptor Lake ] De-activate the MSR Uncore counter
  AMD:
  * "Zen3/Barcelo-R" and "Zen3+ Rembrandt-R" codenames
  * [Zen] Thermal highest limit reset fix
  Misc:
  * Code review and Registers documentation:
    AMD HWCR, Intel HDC and DRP</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677067200">- update to 1.95.4
  * [Intel] [from 11th to 14th gen]
    Convert the DRAM Speed to MT/s unit
    Compute the Bus Rate based on the BIOS MC PLL
- update to 1.95.3
  * [Intel] [Airmont]
    Improved the IMC geometry
    Introducing the Spreadtrum architecture
    Fixed the Bus and DRAM frequency rates
  * [Intel] [from 11th to 13th gen] Attempt to probe the interleaved controllers
  * [Intel] [Alder Lake/H] Attempt to decode the TCO Watchdog</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677153600">- added leap_compile_fix.patch to fix compilation on Leap</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1683115200">- removed leap_compile_fix.patch no needed anymore
- update to 1.96.0
  * [AMD]
    [RPL/X3D] Disabling the turbo boosted P-states change
    [PHOENIX] Adding Z1, U and HS PRO series.
    [Genoa] DAC address at UMC BAR + 0x40
    [Zen4] Adding the PCI entries of Genoa
    [Zen2] Adding remaining PCI entries
    [Zen] Query DAC &amp; CFG with the right UMC base address register
    [Zen4] Dump the CPUID Extended CPU Topology leaves.
    [Zen][Embedded][Banded Kestrel] R1000 Processor Family
    [Zen][Embedded] "Great Horned Owl", "River Hawk", "Grey Hawk"
    Complete the "Raven Ridge" and "Picasso" lists
    [EPYC] Moved "Snowy Owl" Embedded processors to CPUID 8F_01
    [Zen4] introducing Phoenix and Dragon Range
    [RMB] adding the Ryzen Embedded V3000 processors
    [VMR] adding the "AMD Ryzen 9 PRO 5945"
  * [Intel]
    Adding Granite Rapids, Sierra Forest, Grand Ridge entries
    Adding "Lunar Lake" and "Arrow Lake" entries.
  * [UI]
    Optimized decimal to digits converter
    Allow task tracker to select up to pid_max
    Can trace the frozen states of Linux tasks.
    Only print HWP frequencies within bounds.
    Fix ruler's aggregation.
  * [CR]
    Check CPUID[HV_PARTITION_PRIVILEGE_MASK] for HV_X64_MSR_VP_RUNTIME
    Uninitialized variable fix.
    [CPPC] Build EPP with KERNEL_VERSION(6) rather than CONFIG_CACHY
    [KERNEL] Linux 6.3: Employ modifier calls with the vma-&gt;vm_flags</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1684065600">- update to 1.96.1
  * [Driver]
  - Postpone Clock Source registration during startup until the Base Clock is computed.
  - Change class_create() according to Linux Kernel 6.4
  - Clear interrupt flag (cli) after Halt in the Idle method
  * [AMD]
  - [PHOENIX] Adding Ryzen 7940H, 7840H, 7640H
  - [VERMEER] Adding Ryzen PRO and Embedded processors
  - Ryzen Z1 CPUID' brand fix
  - Adding EPYC Embedded 9004 Series as Genoa
  - Adding EPYC Embedded 7003 Series as Milan
  - Adding EPYC Embedded 7002 Series as Rome
  - Adding EPYC Embedded 7001 Series as Naples</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1685880000">- update to 1.96.2
  * [Driver]
  - Allows compilation to keep going without CONFIG_ACPI_CPPC_LIB
  * [Client]
  - Adding two command line arguments:
  - Op Show Package C-States
  - OW Toggle Energy units
  * [AMD]
  - Specification of some Configuration MSRs</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1686830400">- update to 1.96.4
  * [AMD]
  - Display CPUID state of new and legacy features:
    Fused Multiply Add [FMA4]
    Extended Operation Support [XOP]
    Translation Cache Extension [TCE]
    Trailing Bit Manipulation [TBM]
    OS Visible Work-around [OSVW]
    LOCK prefix to read CR8 [AltMov]
  * [Intel]
  - Advanced Matrix Extensions [AMX]
  - Bits and Features of Sierra Forest and Grand Ridge
  - Attempt to decode the Meteor Lake Memory Controller
- update to 1.96.3
  * [AMD]
  - [Zeppelin] Probe more than one UMC controllers on Ryzen Threadripper 1900X
  - [Zen4] Dump SMBE and BMEC sub-leaves of CPUID 0x80000020</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1688212800">- update to 1.96.5
  * [AMD]
    Adding the "AMD Ryzen 5 5600X3D"
    Introducing the Zen4c Bergamo architecture
    Specs fixing of Embedded V-series and 3000 Series Processors
    Adding MENDOCINO, RAPHAEL Pro, PHOENIX Pro among others</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1712318400">- added preamble file for %kernel_module_package macro
- update to 1.97.1
  * added aarch64 support
  * upstream did not provide a summary changelog. Full list of commits:
    https://github.com/cyring/CoreFreq/compare/1.96.5...1.97.1</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715860800">- update to 1.97.2
  * [AMD]
  - [Hawk Point] Adding Ryzen PRO processors
  - [Phoenix] Adding the unlocked Ryzen 8000 Series
  * [Intel]
  - [MeteorLake] New bits specified
  - EEO and R2H bits inversion fix in MSR_POWER_CTL (0x1fc)
  - Reverse specification of MSR UNCORE_PERF_STATUS
  - Prefetchers fix of L1 Scrubbing, L1 Next Page and L2 AMP
  * [AArch64]
  - Providing Exclusive Load/Store to atomic operations
  - Improved asm of various macro functions
  - Removed LEGACY macros
  - Optimized the CORE_COUNT macros
  - Marked the Tools feature as nominal: Stress functions available
  - Allow user access to Retired Instructions counter
  - Fix Instructions counter overflow
  - Other PMC enhancements
  * [CR]
  - Fix a building issue with AlmaLinux aka RHEL-9
  - Linux kernel 6.9: Avoid redefinition of Intel MSR macros
  * [Doc]
  - README section for AlmaLinux
  - CONFIG_TRIM_UNUSED_KSYMS kernel build config is forbidden</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715947200">- fix dependency on kernel module that was not versioned</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1722081600">- update to 1.98.0
  * [Build]
  - Change dkms configuration to install into /usr/bin/
  - Solved compilation with Fedora using RHEL MINOR version number 99
  - [CR] Fixed some compilation warnings
  - [CR] Fix memory allocation in kernel pages for the SysGate
  - Workaround to musl change in basename (#494)
  - aarch64: Build with Redhat RHEL version 9
  - [CR] x86_64: Prevent array size overflow
  - dkms and ckms configuration files upgraded to version 1.98
  * [Intel]
  - [Raptor Lake] Adding the HB DID of i7-14700K' IMC
  - Mitigation mechanism: GDS_NO; RFDS_NO; MONITOR_MITG_NO
  - Apply some SDM Documentation Changes
  - [MTL] Fix CMD Stretch bit range width
  - Added method CLOCK_FLEX_MAX with Xeon's Nehalem &amp; Core 2
  - Grants full MSR_FLEX_RATIO access to tested architectures:
  - Alder Lake/S
  - Tiger Lake/U
  - Westmere/Gulftown
  - Provides the overclocking bins with unlocked processors
  - Query the Overclocking bit (OC) from Capabilities
  - Adding technologies: VMD, HDCP, IPU and VPU
  - Volume Management Device
  - High-Bandwidth Digital Content Protection
  - Image Processing Unit
  - Vision Processing Unit
  - Gaussian &amp; Neural Accelerator - GNA technology
  - [CR] Renamed Gemini Lake structures
  - [Meteor Lake] Introducing memory controller decoder
  * [AArch64]
  - Optimizing the Vcore seek
  - Workaround to Package discrete voltage: the highest Vcore
  - Improving computation of Euclidean division
  - Adjust frequency division in CNTFRQ and PMU counters
  - Scale a frequency factor from the interval
  - Refactoring the frequency ratios for decimal precision
  - Compile dev_pm_opp_put if Kernel greater or equal 4.11
  - Get the voltage core of CPUs from OPP
  * [AMD]
  - [Zen4][Raphael] Adding the EPYC 4004 Series
  - [Zen4] Clarify Hawk Point and Phoenix-Refresh architectures
  - [Family 19h] New voltage formula assigned to model 61h
  - Vcore activated
  - Voltage SoC deactivated
  - [Zen] Prevent the calculation of negative temperature (issue #496)
  - [Family 18h] Documented Hygon C86 7375
  - [Family 19h] PStateDef specification: Adding VID[8] bit 32
  - Specification of MSR HW_PSTATE_STATUS
  * [CLI]
  - aarch64: Display the state of the Memory Management Unit (MMU)
  - aarch64: State of Instruction Cache Unit I$ and Data Cache Unit D$
  - Added UI_RULER_MINIMUM &amp; UI_RULER_MAXIMUM building constraints
  - Revert "[CLI] Responsive ruler to architectural context"
  - This reverts commit 4bc38d6.
  - x86_64: AMD Boost and P-States redesigned
  - [UI] Hardening missing console/terminal size
  - Responsive ruler to architectural context
  - x86_64: Make HDCP meaning string shorter
  * [Driver]
  - Created C2U_Enable as a parameter alias of C1U_Enable</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1723032000">- update to 1.98.1
  * [AMD]
  - [Zen] Inject threshold events when thermal is out of bounds
  - Generic Zen architectures renamed with their Family number
  - Added a generic entry for the 1A family
  - Configure TjMax for multiple Ryzen and Threadripper
  - [CR] Optimize AMD temperature filtering function
  - [Zen5] Introducing the Eldora architecture aka "Granite Ridge"
  - [Zen5] Adding entries for Strix Point
  * [Intel]
  - Feature-bits of Core Ultra architecture
  - [TGL][ADL][RPL] New devices to probe IMC and Watchdog
  - [Raptor Lake-E] Adding the IMC probing entries
  - Grant full MSR_FLEX_RATIO access to Raptor Lake (06_B7)
  - Added Host Bridge DIDs of Raptor Lake-E
  - [ADL ... MTL] Code review of IMC decoders
  - [ADL] Compute DIMM Bank and Columns on both channels
  - [ADL] Process channels differently depending on DDR4 or DDR5
  - 12th to 14th generation IMC decoder refactoring
  - [ADL ... MTL] Adding Memory Controller Virtual Channel Count
  - [ADL ... MTL] Channel count as a function of DDPCD DDR_TYPE
  - [ADL ... MTL] Keep all enabled memory controllers
  - [12th and superior] Compute tWR quantity as a function of DDR version
  * [Build]
  - Now leave version number in Makefile
  - Pretty print the build and the clean of outputs
    Allow the V=n option increase the verbose level (incl. kernel)
  - CPU-Freq build against Linux Kernel version 6.11
  * [Documentation]
  - Refreshed README and Makefile</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1723464000">- Update to 1.98.2
  * [Intel]
  - [WDT] Adding multiple devices to probe TCO
    C620 Series Chipset Production SKUs (0xa1a3)
    C620 Series Chipset Super SKUs (0xa223)
    Sunrise Point/H (0xa123)
    Cannon Lake/LP (0x9da3)
    Comet Lake/H (0x06a3)
    Ice Lake/LP (0x34a3)
    Tiger Lake/H (0x43a3)
    Elkhart Lake (0x4b23)
    Kaby Lake/H (0xa2a3)
    Cannon Lake (0xa323)
    Comet Lake/V (0xa3a3)
    Ice Lake/NG (0x38a3)
    Alder lake/M (0x54a3)
    Arrow Lake/S (0x7f23)
    Jasper Lake SMBus (0x4da3)
    Sunrise Point-LP SMBus (0x9d23)
    Comet Lake PCH-LP SMBus (0x02a3)
  - MSR_FLEX_RATIO register
    Grant access to Alder Lake/H (06_9A)
    Deny access to Nehalem/Bloomfield (06_1A)
    Removed a condition in access function</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1725019200">- Update to 1.98.3
  * [AMD]
  - [VMR/RPL/GNR] Voltage Curve Optimizer (VCO)
  - Provide a specific VCO formula based on HWM_CHIPSET=AMD_VCO
    build parameter
  - The standard voltage formulas are restored to these architectures
  - Zen5: Guessed a new P-State MSR bits specification to fix the
    Coefficient Of Frequency (COF)</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1726833600">- Update to 1.98.4
  * [Build]
  - Prevent a collision with macro WRMSRNS within kernel 6.11
  * [x86_64]
  - [Virtualization] Switch to the HCF or VP_RUNTIME counters depending on the detected hypervisor</changelog>
</package>
<package pkgid="67162bc6ae7394533ba2a67fb10c364aa903812fea2389f37df0b705dfbee6443eed550180e83ba8b594d219ef0386a339d98a9c2112f066dfc9e66997efbcd0" name="CoreFreq-kmp-default-debuginfo" arch="x86_64">
  <version epoch="0" ver="1.98.4_k6.11.5_1" rel="1.8"/>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1670932800">- removed modprobe_corefreqd.service.patch and harden_corefreqd.service.patch
  now included in new corefreqd.service file replacing stock one
- update to 1.93.1
  * [PRJ] CoreFreq version 1.93.1
  * [ACPI/CPPC/EPP] Preview of AMD/Zen Energy Preference (CONFIG_CACHY)
  * [UI] Changed the HWP or CPPC ratio bounds.
  * [FIX] Putting `corefreqd` in the root cgroup (issue #379) Thanks to gel-crabs
  * [DOC] Parameters to blacklist the amd_pstate since kernel 6.0.11
  * [AMD][Zen4] Apply a voltage formula based on Rembrandt's. (#378)
  * [AMD][Zen4/Raphael] Attempting temperature per CCD from TCTL+0x308
  * [AMD][Zen4] Changed Timer loop
  * [CR] CLI code review and UI optimizations
  * [UI] Auto refresh the Topology items when off/online
  * [CR] Conditionally build with additional PMC Counters
  * [Intel] Adding Z8000 System Memory Controller Registers
  * [CR] Transformed global variable in cells padding
  * [UI] Windows re-scaling fix
  * [UI] Apply color theming to the CPPC capabilities list.
  * [AMD][Raphael] Adding device DIDs to probe UMC and IOMMU
  * [CPPC/FMW] Computes value bounds while Enabling/Disabling firmware
  * [CR] CPPC lib errors are now raised to Debug level
  * [AMD][Zen4] Increased the UMC size to 12 channels.
  * [CPPC] Handles the OffLine CPU case.
  * [CLI] Refactoring HWP/CPPC to print all capabilities per CPU
  * [ACPI] Computes the CPPC Bounds
  * [Intel] Linear Address Masking (LAM)
  * [CLI] EFER: Left aligned labels
  * [AMD] Reports UAIE and AIBRSE bits from EFER system register
  * [CLI] Changed mitigation mechanisms incapability labels
  * [AMD][Zen2] Mitigation Mechanism BTC-NOBR * ACPI/OSPM documentation
  * [CR] Code review on bit masks
  * [CPPC][ACPI] Kernel may decode the Guaranteed Performance Register
  * [UI] Optimize the cycles to clear the time bar.
  * [CR] Code review for extra compiler warnings
  * [UI] Time of the day displayed in the right side of menu
  * [UI] Display the current date and time in menu bar
  * [Kernel] Introducing support of `CONFIG_SCHED_BORE`
  * [CLI] Fixing ambiguous CPPC report: hardware vs firmware
  * [CLI] Surrounds _CPC feature with square brackets
  * [CPPC] Provides the ACPI _CPC object state.
  * [UI] Colors the task being tracked in the tracking list
  * [UI] Display the current time in the menu bar
  * [CLI] Reserve the programmable TDP section to Intel processors.
  * [AMD/Zen3+] Improving the DIMM geometry of Rembrandt UMC</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1672747200">- update to 1.94.1:
  * [Intel] Gemini Lake
  * [AMD] Ryzen 5 6600 H SoC, UMC channels
  * [AMD] Rembrandt: maximum of two UMC channels
  * [AMD] Raphael: Decodes DIMM geometry from AddrCfg
  * [AMD] Zen: Aggregation refactored
  * [AMD] Improved DDR5 clock decoding
  * Optimized Idle Loop</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1673006400">- update to 1.94.3:
  * [AMD][RMB] If UMC is quad channels then unpopulate odd channels
  * [AMD][RPL] Provide Service Processor Vcore as workaround
  * [UI] Auto size and lay performance capabilities window
  * [UI] Adding comments to the EEO and R2H technologies
  * [AMD][Raphael] 7950X3D, 7900X3D. support</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1674475200">- update to 1.95.1:
  * [Intel] RPL: voltage of Pcore, Ecore, System Agent
  * [Intel] RPL and ADL Chipset device IDs
  * [Intel] Decode the RPL IMC and improve DDR5 support
  * [Build] Raise `MAX_FREQ_HZ` up to 7125000000 Hertz
  * [Intel] Mobile {Coffee Lake, Kaby Lake} codenames
  * [Intel] Braswell codename detection
  * [AMD] SYSCFG Register
  * [AMD] EPYC 9654
  * [AMD] Transparent SME
  * [AMD] DRAM Data Scrambling
  * [AMD] Adding "Barcelo R" and "Rembrandt R"</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1675944000">- update to 1.95.2:
  * Fixed the aggregation of the minimum ratio
  Intel:
  * [Airmont][Silvermont] Attempt to decode `tCKE` from DRMC
    register
  * [Airmont] Improve `tWTPr`, `B2B`, `tWWDR` timings
  * [Airmont] Provide a new IMC decoder
  * Add the Emerald Rapids architecture entry
  * [DDR5][DDR4] Add the `RCDw` IMC timing
  * [Raptor Lake ] De-activate the MSR Uncore counter
  AMD:
  * "Zen3/Barcelo-R" and "Zen3+ Rembrandt-R" codenames
  * [Zen] Thermal highest limit reset fix
  Misc:
  * Code review and Registers documentation:
    AMD HWCR, Intel HDC and DRP</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677067200">- update to 1.95.4
  * [Intel] [from 11th to 14th gen]
    Convert the DRAM Speed to MT/s unit
    Compute the Bus Rate based on the BIOS MC PLL
- update to 1.95.3
  * [Intel] [Airmont]
    Improved the IMC geometry
    Introducing the Spreadtrum architecture
    Fixed the Bus and DRAM frequency rates
  * [Intel] [from 11th to 13th gen] Attempt to probe the interleaved controllers
  * [Intel] [Alder Lake/H] Attempt to decode the TCO Watchdog</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677153600">- added leap_compile_fix.patch to fix compilation on Leap</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1683115200">- removed leap_compile_fix.patch no needed anymore
- update to 1.96.0
  * [AMD]
    [RPL/X3D] Disabling the turbo boosted P-states change
    [PHOENIX] Adding Z1, U and HS PRO series.
    [Genoa] DAC address at UMC BAR + 0x40
    [Zen4] Adding the PCI entries of Genoa
    [Zen2] Adding remaining PCI entries
    [Zen] Query DAC &amp; CFG with the right UMC base address register
    [Zen4] Dump the CPUID Extended CPU Topology leaves.
    [Zen][Embedded][Banded Kestrel] R1000 Processor Family
    [Zen][Embedded] "Great Horned Owl", "River Hawk", "Grey Hawk"
    Complete the "Raven Ridge" and "Picasso" lists
    [EPYC] Moved "Snowy Owl" Embedded processors to CPUID 8F_01
    [Zen4] introducing Phoenix and Dragon Range
    [RMB] adding the Ryzen Embedded V3000 processors
    [VMR] adding the "AMD Ryzen 9 PRO 5945"
  * [Intel]
    Adding Granite Rapids, Sierra Forest, Grand Ridge entries
    Adding "Lunar Lake" and "Arrow Lake" entries.
  * [UI]
    Optimized decimal to digits converter
    Allow task tracker to select up to pid_max
    Can trace the frozen states of Linux tasks.
    Only print HWP frequencies within bounds.
    Fix ruler's aggregation.
  * [CR]
    Check CPUID[HV_PARTITION_PRIVILEGE_MASK] for HV_X64_MSR_VP_RUNTIME
    Uninitialized variable fix.
    [CPPC] Build EPP with KERNEL_VERSION(6) rather than CONFIG_CACHY
    [KERNEL] Linux 6.3: Employ modifier calls with the vma-&gt;vm_flags</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1684065600">- update to 1.96.1
  * [Driver]
  - Postpone Clock Source registration during startup until the Base Clock is computed.
  - Change class_create() according to Linux Kernel 6.4
  - Clear interrupt flag (cli) after Halt in the Idle method
  * [AMD]
  - [PHOENIX] Adding Ryzen 7940H, 7840H, 7640H
  - [VERMEER] Adding Ryzen PRO and Embedded processors
  - Ryzen Z1 CPUID' brand fix
  - Adding EPYC Embedded 9004 Series as Genoa
  - Adding EPYC Embedded 7003 Series as Milan
  - Adding EPYC Embedded 7002 Series as Rome
  - Adding EPYC Embedded 7001 Series as Naples</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1685880000">- update to 1.96.2
  * [Driver]
  - Allows compilation to keep going without CONFIG_ACPI_CPPC_LIB
  * [Client]
  - Adding two command line arguments:
  - Op Show Package C-States
  - OW Toggle Energy units
  * [AMD]
  - Specification of some Configuration MSRs</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1686830400">- update to 1.96.4
  * [AMD]
  - Display CPUID state of new and legacy features:
    Fused Multiply Add [FMA4]
    Extended Operation Support [XOP]
    Translation Cache Extension [TCE]
    Trailing Bit Manipulation [TBM]
    OS Visible Work-around [OSVW]
    LOCK prefix to read CR8 [AltMov]
  * [Intel]
  - Advanced Matrix Extensions [AMX]
  - Bits and Features of Sierra Forest and Grand Ridge
  - Attempt to decode the Meteor Lake Memory Controller
- update to 1.96.3
  * [AMD]
  - [Zeppelin] Probe more than one UMC controllers on Ryzen Threadripper 1900X
  - [Zen4] Dump SMBE and BMEC sub-leaves of CPUID 0x80000020</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1688212800">- update to 1.96.5
  * [AMD]
    Adding the "AMD Ryzen 5 5600X3D"
    Introducing the Zen4c Bergamo architecture
    Specs fixing of Embedded V-series and 3000 Series Processors
    Adding MENDOCINO, RAPHAEL Pro, PHOENIX Pro among others</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1712318400">- added preamble file for %kernel_module_package macro
- update to 1.97.1
  * added aarch64 support
  * upstream did not provide a summary changelog. Full list of commits:
    https://github.com/cyring/CoreFreq/compare/1.96.5...1.97.1</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715860800">- update to 1.97.2
  * [AMD]
  - [Hawk Point] Adding Ryzen PRO processors
  - [Phoenix] Adding the unlocked Ryzen 8000 Series
  * [Intel]
  - [MeteorLake] New bits specified
  - EEO and R2H bits inversion fix in MSR_POWER_CTL (0x1fc)
  - Reverse specification of MSR UNCORE_PERF_STATUS
  - Prefetchers fix of L1 Scrubbing, L1 Next Page and L2 AMP
  * [AArch64]
  - Providing Exclusive Load/Store to atomic operations
  - Improved asm of various macro functions
  - Removed LEGACY macros
  - Optimized the CORE_COUNT macros
  - Marked the Tools feature as nominal: Stress functions available
  - Allow user access to Retired Instructions counter
  - Fix Instructions counter overflow
  - Other PMC enhancements
  * [CR]
  - Fix a building issue with AlmaLinux aka RHEL-9
  - Linux kernel 6.9: Avoid redefinition of Intel MSR macros
  * [Doc]
  - README section for AlmaLinux
  - CONFIG_TRIM_UNUSED_KSYMS kernel build config is forbidden</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715947200">- fix dependency on kernel module that was not versioned</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1722081600">- update to 1.98.0
  * [Build]
  - Change dkms configuration to install into /usr/bin/
  - Solved compilation with Fedora using RHEL MINOR version number 99
  - [CR] Fixed some compilation warnings
  - [CR] Fix memory allocation in kernel pages for the SysGate
  - Workaround to musl change in basename (#494)
  - aarch64: Build with Redhat RHEL version 9
  - [CR] x86_64: Prevent array size overflow
  - dkms and ckms configuration files upgraded to version 1.98
  * [Intel]
  - [Raptor Lake] Adding the HB DID of i7-14700K' IMC
  - Mitigation mechanism: GDS_NO; RFDS_NO; MONITOR_MITG_NO
  - Apply some SDM Documentation Changes
  - [MTL] Fix CMD Stretch bit range width
  - Added method CLOCK_FLEX_MAX with Xeon's Nehalem &amp; Core 2
  - Grants full MSR_FLEX_RATIO access to tested architectures:
  - Alder Lake/S
  - Tiger Lake/U
  - Westmere/Gulftown
  - Provides the overclocking bins with unlocked processors
  - Query the Overclocking bit (OC) from Capabilities
  - Adding technologies: VMD, HDCP, IPU and VPU
  - Volume Management Device
  - High-Bandwidth Digital Content Protection
  - Image Processing Unit
  - Vision Processing Unit
  - Gaussian &amp; Neural Accelerator - GNA technology
  - [CR] Renamed Gemini Lake structures
  - [Meteor Lake] Introducing memory controller decoder
  * [AArch64]
  - Optimizing the Vcore seek
  - Workaround to Package discrete voltage: the highest Vcore
  - Improving computation of Euclidean division
  - Adjust frequency division in CNTFRQ and PMU counters
  - Scale a frequency factor from the interval
  - Refactoring the frequency ratios for decimal precision
  - Compile dev_pm_opp_put if Kernel greater or equal 4.11
  - Get the voltage core of CPUs from OPP
  * [AMD]
  - [Zen4][Raphael] Adding the EPYC 4004 Series
  - [Zen4] Clarify Hawk Point and Phoenix-Refresh architectures
  - [Family 19h] New voltage formula assigned to model 61h
  - Vcore activated
  - Voltage SoC deactivated
  - [Zen] Prevent the calculation of negative temperature (issue #496)
  - [Family 18h] Documented Hygon C86 7375
  - [Family 19h] PStateDef specification: Adding VID[8] bit 32
  - Specification of MSR HW_PSTATE_STATUS
  * [CLI]
  - aarch64: Display the state of the Memory Management Unit (MMU)
  - aarch64: State of Instruction Cache Unit I$ and Data Cache Unit D$
  - Added UI_RULER_MINIMUM &amp; UI_RULER_MAXIMUM building constraints
  - Revert "[CLI] Responsive ruler to architectural context"
  - This reverts commit 4bc38d6.
  - x86_64: AMD Boost and P-States redesigned
  - [UI] Hardening missing console/terminal size
  - Responsive ruler to architectural context
  - x86_64: Make HDCP meaning string shorter
  * [Driver]
  - Created C2U_Enable as a parameter alias of C1U_Enable</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1723032000">- update to 1.98.1
  * [AMD]
  - [Zen] Inject threshold events when thermal is out of bounds
  - Generic Zen architectures renamed with their Family number
  - Added a generic entry for the 1A family
  - Configure TjMax for multiple Ryzen and Threadripper
  - [CR] Optimize AMD temperature filtering function
  - [Zen5] Introducing the Eldora architecture aka "Granite Ridge"
  - [Zen5] Adding entries for Strix Point
  * [Intel]
  - Feature-bits of Core Ultra architecture
  - [TGL][ADL][RPL] New devices to probe IMC and Watchdog
  - [Raptor Lake-E] Adding the IMC probing entries
  - Grant full MSR_FLEX_RATIO access to Raptor Lake (06_B7)
  - Added Host Bridge DIDs of Raptor Lake-E
  - [ADL ... MTL] Code review of IMC decoders
  - [ADL] Compute DIMM Bank and Columns on both channels
  - [ADL] Process channels differently depending on DDR4 or DDR5
  - 12th to 14th generation IMC decoder refactoring
  - [ADL ... MTL] Adding Memory Controller Virtual Channel Count
  - [ADL ... MTL] Channel count as a function of DDPCD DDR_TYPE
  - [ADL ... MTL] Keep all enabled memory controllers
  - [12th and superior] Compute tWR quantity as a function of DDR version
  * [Build]
  - Now leave version number in Makefile
  - Pretty print the build and the clean of outputs
    Allow the V=n option increase the verbose level (incl. kernel)
  - CPU-Freq build against Linux Kernel version 6.11
  * [Documentation]
  - Refreshed README and Makefile</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1723464000">- Update to 1.98.2
  * [Intel]
  - [WDT] Adding multiple devices to probe TCO
    C620 Series Chipset Production SKUs (0xa1a3)
    C620 Series Chipset Super SKUs (0xa223)
    Sunrise Point/H (0xa123)
    Cannon Lake/LP (0x9da3)
    Comet Lake/H (0x06a3)
    Ice Lake/LP (0x34a3)
    Tiger Lake/H (0x43a3)
    Elkhart Lake (0x4b23)
    Kaby Lake/H (0xa2a3)
    Cannon Lake (0xa323)
    Comet Lake/V (0xa3a3)
    Ice Lake/NG (0x38a3)
    Alder lake/M (0x54a3)
    Arrow Lake/S (0x7f23)
    Jasper Lake SMBus (0x4da3)
    Sunrise Point-LP SMBus (0x9d23)
    Comet Lake PCH-LP SMBus (0x02a3)
  - MSR_FLEX_RATIO register
    Grant access to Alder Lake/H (06_9A)
    Deny access to Nehalem/Bloomfield (06_1A)
    Removed a condition in access function</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1725019200">- Update to 1.98.3
  * [AMD]
  - [VMR/RPL/GNR] Voltage Curve Optimizer (VCO)
  - Provide a specific VCO formula based on HWM_CHIPSET=AMD_VCO
    build parameter
  - The standard voltage formulas are restored to these architectures
  - Zen5: Guessed a new P-State MSR bits specification to fix the
    Coefficient Of Frequency (COF)</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1726833600">- Update to 1.98.4
  * [Build]
  - Prevent a collision with macro WRMSRNS within kernel 6.11
  * [x86_64]
  - [Virtualization] Switch to the HCF or VP_RUNTIME counters depending on the detected hypervisor</changelog>
</package>
<package pkgid="ccb385ef986ca69ec064df47d3c79b12d843fa23ba6c04352c4d394b1f1e45f5382168d14f0da31f2fea5e6f2d3609950d37566f14b06f4272434c41ec54bcde" name="CoreFreq-kmp-default-debuginfo" arch="x86_64">
  <version epoch="0" ver="1.98.4_k6.11.6_2" rel="1.11"/>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1670932800">- removed modprobe_corefreqd.service.patch and harden_corefreqd.service.patch
  now included in new corefreqd.service file replacing stock one
- update to 1.93.1
  * [PRJ] CoreFreq version 1.93.1
  * [ACPI/CPPC/EPP] Preview of AMD/Zen Energy Preference (CONFIG_CACHY)
  * [UI] Changed the HWP or CPPC ratio bounds.
  * [FIX] Putting `corefreqd` in the root cgroup (issue #379) Thanks to gel-crabs
  * [DOC] Parameters to blacklist the amd_pstate since kernel 6.0.11
  * [AMD][Zen4] Apply a voltage formula based on Rembrandt's. (#378)
  * [AMD][Zen4/Raphael] Attempting temperature per CCD from TCTL+0x308
  * [AMD][Zen4] Changed Timer loop
  * [CR] CLI code review and UI optimizations
  * [UI] Auto refresh the Topology items when off/online
  * [CR] Conditionally build with additional PMC Counters
  * [Intel] Adding Z8000 System Memory Controller Registers
  * [CR] Transformed global variable in cells padding
  * [UI] Windows re-scaling fix
  * [UI] Apply color theming to the CPPC capabilities list.
  * [AMD][Raphael] Adding device DIDs to probe UMC and IOMMU
  * [CPPC/FMW] Computes value bounds while Enabling/Disabling firmware
  * [CR] CPPC lib errors are now raised to Debug level
  * [AMD][Zen4] Increased the UMC size to 12 channels.
  * [CPPC] Handles the OffLine CPU case.
  * [CLI] Refactoring HWP/CPPC to print all capabilities per CPU
  * [ACPI] Computes the CPPC Bounds
  * [Intel] Linear Address Masking (LAM)
  * [CLI] EFER: Left aligned labels
  * [AMD] Reports UAIE and AIBRSE bits from EFER system register
  * [CLI] Changed mitigation mechanisms incapability labels
  * [AMD][Zen2] Mitigation Mechanism BTC-NOBR * ACPI/OSPM documentation
  * [CR] Code review on bit masks
  * [CPPC][ACPI] Kernel may decode the Guaranteed Performance Register
  * [UI] Optimize the cycles to clear the time bar.
  * [CR] Code review for extra compiler warnings
  * [UI] Time of the day displayed in the right side of menu
  * [UI] Display the current date and time in menu bar
  * [Kernel] Introducing support of `CONFIG_SCHED_BORE`
  * [CLI] Fixing ambiguous CPPC report: hardware vs firmware
  * [CLI] Surrounds _CPC feature with square brackets
  * [CPPC] Provides the ACPI _CPC object state.
  * [UI] Colors the task being tracked in the tracking list
  * [UI] Display the current time in the menu bar
  * [CLI] Reserve the programmable TDP section to Intel processors.
  * [AMD/Zen3+] Improving the DIMM geometry of Rembrandt UMC</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1672747200">- update to 1.94.1:
  * [Intel] Gemini Lake
  * [AMD] Ryzen 5 6600 H SoC, UMC channels
  * [AMD] Rembrandt: maximum of two UMC channels
  * [AMD] Raphael: Decodes DIMM geometry from AddrCfg
  * [AMD] Zen: Aggregation refactored
  * [AMD] Improved DDR5 clock decoding
  * Optimized Idle Loop</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1673006400">- update to 1.94.3:
  * [AMD][RMB] If UMC is quad channels then unpopulate odd channels
  * [AMD][RPL] Provide Service Processor Vcore as workaround
  * [UI] Auto size and lay performance capabilities window
  * [UI] Adding comments to the EEO and R2H technologies
  * [AMD][Raphael] 7950X3D, 7900X3D. support</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1674475200">- update to 1.95.1:
  * [Intel] RPL: voltage of Pcore, Ecore, System Agent
  * [Intel] RPL and ADL Chipset device IDs
  * [Intel] Decode the RPL IMC and improve DDR5 support
  * [Build] Raise `MAX_FREQ_HZ` up to 7125000000 Hertz
  * [Intel] Mobile {Coffee Lake, Kaby Lake} codenames
  * [Intel] Braswell codename detection
  * [AMD] SYSCFG Register
  * [AMD] EPYC 9654
  * [AMD] Transparent SME
  * [AMD] DRAM Data Scrambling
  * [AMD] Adding "Barcelo R" and "Rembrandt R"</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1675944000">- update to 1.95.2:
  * Fixed the aggregation of the minimum ratio
  Intel:
  * [Airmont][Silvermont] Attempt to decode `tCKE` from DRMC
    register
  * [Airmont] Improve `tWTPr`, `B2B`, `tWWDR` timings
  * [Airmont] Provide a new IMC decoder
  * Add the Emerald Rapids architecture entry
  * [DDR5][DDR4] Add the `RCDw` IMC timing
  * [Raptor Lake ] De-activate the MSR Uncore counter
  AMD:
  * "Zen3/Barcelo-R" and "Zen3+ Rembrandt-R" codenames
  * [Zen] Thermal highest limit reset fix
  Misc:
  * Code review and Registers documentation:
    AMD HWCR, Intel HDC and DRP</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677067200">- update to 1.95.4
  * [Intel] [from 11th to 14th gen]
    Convert the DRAM Speed to MT/s unit
    Compute the Bus Rate based on the BIOS MC PLL
- update to 1.95.3
  * [Intel] [Airmont]
    Improved the IMC geometry
    Introducing the Spreadtrum architecture
    Fixed the Bus and DRAM frequency rates
  * [Intel] [from 11th to 13th gen] Attempt to probe the interleaved controllers
  * [Intel] [Alder Lake/H] Attempt to decode the TCO Watchdog</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677153600">- added leap_compile_fix.patch to fix compilation on Leap</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1683115200">- removed leap_compile_fix.patch no needed anymore
- update to 1.96.0
  * [AMD]
    [RPL/X3D] Disabling the turbo boosted P-states change
    [PHOENIX] Adding Z1, U and HS PRO series.
    [Genoa] DAC address at UMC BAR + 0x40
    [Zen4] Adding the PCI entries of Genoa
    [Zen2] Adding remaining PCI entries
    [Zen] Query DAC &amp; CFG with the right UMC base address register
    [Zen4] Dump the CPUID Extended CPU Topology leaves.
    [Zen][Embedded][Banded Kestrel] R1000 Processor Family
    [Zen][Embedded] "Great Horned Owl", "River Hawk", "Grey Hawk"
    Complete the "Raven Ridge" and "Picasso" lists
    [EPYC] Moved "Snowy Owl" Embedded processors to CPUID 8F_01
    [Zen4] introducing Phoenix and Dragon Range
    [RMB] adding the Ryzen Embedded V3000 processors
    [VMR] adding the "AMD Ryzen 9 PRO 5945"
  * [Intel]
    Adding Granite Rapids, Sierra Forest, Grand Ridge entries
    Adding "Lunar Lake" and "Arrow Lake" entries.
  * [UI]
    Optimized decimal to digits converter
    Allow task tracker to select up to pid_max
    Can trace the frozen states of Linux tasks.
    Only print HWP frequencies within bounds.
    Fix ruler's aggregation.
  * [CR]
    Check CPUID[HV_PARTITION_PRIVILEGE_MASK] for HV_X64_MSR_VP_RUNTIME
    Uninitialized variable fix.
    [CPPC] Build EPP with KERNEL_VERSION(6) rather than CONFIG_CACHY
    [KERNEL] Linux 6.3: Employ modifier calls with the vma-&gt;vm_flags</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1684065600">- update to 1.96.1
  * [Driver]
  - Postpone Clock Source registration during startup until the Base Clock is computed.
  - Change class_create() according to Linux Kernel 6.4
  - Clear interrupt flag (cli) after Halt in the Idle method
  * [AMD]
  - [PHOENIX] Adding Ryzen 7940H, 7840H, 7640H
  - [VERMEER] Adding Ryzen PRO and Embedded processors
  - Ryzen Z1 CPUID' brand fix
  - Adding EPYC Embedded 9004 Series as Genoa
  - Adding EPYC Embedded 7003 Series as Milan
  - Adding EPYC Embedded 7002 Series as Rome
  - Adding EPYC Embedded 7001 Series as Naples</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1685880000">- update to 1.96.2
  * [Driver]
  - Allows compilation to keep going without CONFIG_ACPI_CPPC_LIB
  * [Client]
  - Adding two command line arguments:
  - Op Show Package C-States
  - OW Toggle Energy units
  * [AMD]
  - Specification of some Configuration MSRs</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1686830400">- update to 1.96.4
  * [AMD]
  - Display CPUID state of new and legacy features:
    Fused Multiply Add [FMA4]
    Extended Operation Support [XOP]
    Translation Cache Extension [TCE]
    Trailing Bit Manipulation [TBM]
    OS Visible Work-around [OSVW]
    LOCK prefix to read CR8 [AltMov]
  * [Intel]
  - Advanced Matrix Extensions [AMX]
  - Bits and Features of Sierra Forest and Grand Ridge
  - Attempt to decode the Meteor Lake Memory Controller
- update to 1.96.3
  * [AMD]
  - [Zeppelin] Probe more than one UMC controllers on Ryzen Threadripper 1900X
  - [Zen4] Dump SMBE and BMEC sub-leaves of CPUID 0x80000020</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1688212800">- update to 1.96.5
  * [AMD]
    Adding the "AMD Ryzen 5 5600X3D"
    Introducing the Zen4c Bergamo architecture
    Specs fixing of Embedded V-series and 3000 Series Processors
    Adding MENDOCINO, RAPHAEL Pro, PHOENIX Pro among others</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1712318400">- added preamble file for %kernel_module_package macro
- update to 1.97.1
  * added aarch64 support
  * upstream did not provide a summary changelog. Full list of commits:
    https://github.com/cyring/CoreFreq/compare/1.96.5...1.97.1</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715860800">- update to 1.97.2
  * [AMD]
  - [Hawk Point] Adding Ryzen PRO processors
  - [Phoenix] Adding the unlocked Ryzen 8000 Series
  * [Intel]
  - [MeteorLake] New bits specified
  - EEO and R2H bits inversion fix in MSR_POWER_CTL (0x1fc)
  - Reverse specification of MSR UNCORE_PERF_STATUS
  - Prefetchers fix of L1 Scrubbing, L1 Next Page and L2 AMP
  * [AArch64]
  - Providing Exclusive Load/Store to atomic operations
  - Improved asm of various macro functions
  - Removed LEGACY macros
  - Optimized the CORE_COUNT macros
  - Marked the Tools feature as nominal: Stress functions available
  - Allow user access to Retired Instructions counter
  - Fix Instructions counter overflow
  - Other PMC enhancements
  * [CR]
  - Fix a building issue with AlmaLinux aka RHEL-9
  - Linux kernel 6.9: Avoid redefinition of Intel MSR macros
  * [Doc]
  - README section for AlmaLinux
  - CONFIG_TRIM_UNUSED_KSYMS kernel build config is forbidden</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715947200">- fix dependency on kernel module that was not versioned</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1722081600">- update to 1.98.0
  * [Build]
  - Change dkms configuration to install into /usr/bin/
  - Solved compilation with Fedora using RHEL MINOR version number 99
  - [CR] Fixed some compilation warnings
  - [CR] Fix memory allocation in kernel pages for the SysGate
  - Workaround to musl change in basename (#494)
  - aarch64: Build with Redhat RHEL version 9
  - [CR] x86_64: Prevent array size overflow
  - dkms and ckms configuration files upgraded to version 1.98
  * [Intel]
  - [Raptor Lake] Adding the HB DID of i7-14700K' IMC
  - Mitigation mechanism: GDS_NO; RFDS_NO; MONITOR_MITG_NO
  - Apply some SDM Documentation Changes
  - [MTL] Fix CMD Stretch bit range width
  - Added method CLOCK_FLEX_MAX with Xeon's Nehalem &amp; Core 2
  - Grants full MSR_FLEX_RATIO access to tested architectures:
  - Alder Lake/S
  - Tiger Lake/U
  - Westmere/Gulftown
  - Provides the overclocking bins with unlocked processors
  - Query the Overclocking bit (OC) from Capabilities
  - Adding technologies: VMD, HDCP, IPU and VPU
  - Volume Management Device
  - High-Bandwidth Digital Content Protection
  - Image Processing Unit
  - Vision Processing Unit
  - Gaussian &amp; Neural Accelerator - GNA technology
  - [CR] Renamed Gemini Lake structures
  - [Meteor Lake] Introducing memory controller decoder
  * [AArch64]
  - Optimizing the Vcore seek
  - Workaround to Package discrete voltage: the highest Vcore
  - Improving computation of Euclidean division
  - Adjust frequency division in CNTFRQ and PMU counters
  - Scale a frequency factor from the interval
  - Refactoring the frequency ratios for decimal precision
  - Compile dev_pm_opp_put if Kernel greater or equal 4.11
  - Get the voltage core of CPUs from OPP
  * [AMD]
  - [Zen4][Raphael] Adding the EPYC 4004 Series
  - [Zen4] Clarify Hawk Point and Phoenix-Refresh architectures
  - [Family 19h] New voltage formula assigned to model 61h
  - Vcore activated
  - Voltage SoC deactivated
  - [Zen] Prevent the calculation of negative temperature (issue #496)
  - [Family 18h] Documented Hygon C86 7375
  - [Family 19h] PStateDef specification: Adding VID[8] bit 32
  - Specification of MSR HW_PSTATE_STATUS
  * [CLI]
  - aarch64: Display the state of the Memory Management Unit (MMU)
  - aarch64: State of Instruction Cache Unit I$ and Data Cache Unit D$
  - Added UI_RULER_MINIMUM &amp; UI_RULER_MAXIMUM building constraints
  - Revert "[CLI] Responsive ruler to architectural context"
  - This reverts commit 4bc38d6.
  - x86_64: AMD Boost and P-States redesigned
  - [UI] Hardening missing console/terminal size
  - Responsive ruler to architectural context
  - x86_64: Make HDCP meaning string shorter
  * [Driver]
  - Created C2U_Enable as a parameter alias of C1U_Enable</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1723032000">- update to 1.98.1
  * [AMD]
  - [Zen] Inject threshold events when thermal is out of bounds
  - Generic Zen architectures renamed with their Family number
  - Added a generic entry for the 1A family
  - Configure TjMax for multiple Ryzen and Threadripper
  - [CR] Optimize AMD temperature filtering function
  - [Zen5] Introducing the Eldora architecture aka "Granite Ridge"
  - [Zen5] Adding entries for Strix Point
  * [Intel]
  - Feature-bits of Core Ultra architecture
  - [TGL][ADL][RPL] New devices to probe IMC and Watchdog
  - [Raptor Lake-E] Adding the IMC probing entries
  - Grant full MSR_FLEX_RATIO access to Raptor Lake (06_B7)
  - Added Host Bridge DIDs of Raptor Lake-E
  - [ADL ... MTL] Code review of IMC decoders
  - [ADL] Compute DIMM Bank and Columns on both channels
  - [ADL] Process channels differently depending on DDR4 or DDR5
  - 12th to 14th generation IMC decoder refactoring
  - [ADL ... MTL] Adding Memory Controller Virtual Channel Count
  - [ADL ... MTL] Channel count as a function of DDPCD DDR_TYPE
  - [ADL ... MTL] Keep all enabled memory controllers
  - [12th and superior] Compute tWR quantity as a function of DDR version
  * [Build]
  - Now leave version number in Makefile
  - Pretty print the build and the clean of outputs
    Allow the V=n option increase the verbose level (incl. kernel)
  - CPU-Freq build against Linux Kernel version 6.11
  * [Documentation]
  - Refreshed README and Makefile</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1723464000">- Update to 1.98.2
  * [Intel]
  - [WDT] Adding multiple devices to probe TCO
    C620 Series Chipset Production SKUs (0xa1a3)
    C620 Series Chipset Super SKUs (0xa223)
    Sunrise Point/H (0xa123)
    Cannon Lake/LP (0x9da3)
    Comet Lake/H (0x06a3)
    Ice Lake/LP (0x34a3)
    Tiger Lake/H (0x43a3)
    Elkhart Lake (0x4b23)
    Kaby Lake/H (0xa2a3)
    Cannon Lake (0xa323)
    Comet Lake/V (0xa3a3)
    Ice Lake/NG (0x38a3)
    Alder lake/M (0x54a3)
    Arrow Lake/S (0x7f23)
    Jasper Lake SMBus (0x4da3)
    Sunrise Point-LP SMBus (0x9d23)
    Comet Lake PCH-LP SMBus (0x02a3)
  - MSR_FLEX_RATIO register
    Grant access to Alder Lake/H (06_9A)
    Deny access to Nehalem/Bloomfield (06_1A)
    Removed a condition in access function</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1725019200">- Update to 1.98.3
  * [AMD]
  - [VMR/RPL/GNR] Voltage Curve Optimizer (VCO)
  - Provide a specific VCO formula based on HWM_CHIPSET=AMD_VCO
    build parameter
  - The standard voltage formulas are restored to these architectures
  - Zen5: Guessed a new P-State MSR bits specification to fix the
    Coefficient Of Frequency (COF)</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1726833600">- Update to 1.98.4
  * [Build]
  - Prevent a collision with macro WRMSRNS within kernel 6.11
  * [x86_64]
  - [Virtualization] Switch to the HCF or VP_RUNTIME counters depending on the detected hypervisor</changelog>
</package>
<package pkgid="54177292ce64afe4c7b2ebb8cfc1753ed68b3641be34768a25db3d53ed0df9f63904a89bf2802ca48cbb0988f2e713163b103a85d7ff73345c9fb2c8257dc60a" name="CoreFreq-kmp-default-debuginfo" arch="x86_64">
  <version epoch="0" ver="1.98.5_k6.11.8_1" rel="1.3"/>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1672747200">- update to 1.94.1:
  * [Intel] Gemini Lake
  * [AMD] Ryzen 5 6600 H SoC, UMC channels
  * [AMD] Rembrandt: maximum of two UMC channels
  * [AMD] Raphael: Decodes DIMM geometry from AddrCfg
  * [AMD] Zen: Aggregation refactored
  * [AMD] Improved DDR5 clock decoding
  * Optimized Idle Loop</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1673006400">- update to 1.94.3:
  * [AMD][RMB] If UMC is quad channels then unpopulate odd channels
  * [AMD][RPL] Provide Service Processor Vcore as workaround
  * [UI] Auto size and lay performance capabilities window
  * [UI] Adding comments to the EEO and R2H technologies
  * [AMD][Raphael] 7950X3D, 7900X3D. support</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1674475200">- update to 1.95.1:
  * [Intel] RPL: voltage of Pcore, Ecore, System Agent
  * [Intel] RPL and ADL Chipset device IDs
  * [Intel] Decode the RPL IMC and improve DDR5 support
  * [Build] Raise `MAX_FREQ_HZ` up to 7125000000 Hertz
  * [Intel] Mobile {Coffee Lake, Kaby Lake} codenames
  * [Intel] Braswell codename detection
  * [AMD] SYSCFG Register
  * [AMD] EPYC 9654
  * [AMD] Transparent SME
  * [AMD] DRAM Data Scrambling
  * [AMD] Adding "Barcelo R" and "Rembrandt R"</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1675944000">- update to 1.95.2:
  * Fixed the aggregation of the minimum ratio
  Intel:
  * [Airmont][Silvermont] Attempt to decode `tCKE` from DRMC
    register
  * [Airmont] Improve `tWTPr`, `B2B`, `tWWDR` timings
  * [Airmont] Provide a new IMC decoder
  * Add the Emerald Rapids architecture entry
  * [DDR5][DDR4] Add the `RCDw` IMC timing
  * [Raptor Lake ] De-activate the MSR Uncore counter
  AMD:
  * "Zen3/Barcelo-R" and "Zen3+ Rembrandt-R" codenames
  * [Zen] Thermal highest limit reset fix
  Misc:
  * Code review and Registers documentation:
    AMD HWCR, Intel HDC and DRP</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677067200">- update to 1.95.4
  * [Intel] [from 11th to 14th gen]
    Convert the DRAM Speed to MT/s unit
    Compute the Bus Rate based on the BIOS MC PLL
- update to 1.95.3
  * [Intel] [Airmont]
    Improved the IMC geometry
    Introducing the Spreadtrum architecture
    Fixed the Bus and DRAM frequency rates
  * [Intel] [from 11th to 13th gen] Attempt to probe the interleaved controllers
  * [Intel] [Alder Lake/H] Attempt to decode the TCO Watchdog</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1677153600">- added leap_compile_fix.patch to fix compilation on Leap</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1683115200">- removed leap_compile_fix.patch no needed anymore
- update to 1.96.0
  * [AMD]
    [RPL/X3D] Disabling the turbo boosted P-states change
    [PHOENIX] Adding Z1, U and HS PRO series.
    [Genoa] DAC address at UMC BAR + 0x40
    [Zen4] Adding the PCI entries of Genoa
    [Zen2] Adding remaining PCI entries
    [Zen] Query DAC &amp; CFG with the right UMC base address register
    [Zen4] Dump the CPUID Extended CPU Topology leaves.
    [Zen][Embedded][Banded Kestrel] R1000 Processor Family
    [Zen][Embedded] "Great Horned Owl", "River Hawk", "Grey Hawk"
    Complete the "Raven Ridge" and "Picasso" lists
    [EPYC] Moved "Snowy Owl" Embedded processors to CPUID 8F_01
    [Zen4] introducing Phoenix and Dragon Range
    [RMB] adding the Ryzen Embedded V3000 processors
    [VMR] adding the "AMD Ryzen 9 PRO 5945"
  * [Intel]
    Adding Granite Rapids, Sierra Forest, Grand Ridge entries
    Adding "Lunar Lake" and "Arrow Lake" entries.
  * [UI]
    Optimized decimal to digits converter
    Allow task tracker to select up to pid_max
    Can trace the frozen states of Linux tasks.
    Only print HWP frequencies within bounds.
    Fix ruler's aggregation.
  * [CR]
    Check CPUID[HV_PARTITION_PRIVILEGE_MASK] for HV_X64_MSR_VP_RUNTIME
    Uninitialized variable fix.
    [CPPC] Build EPP with KERNEL_VERSION(6) rather than CONFIG_CACHY
    [KERNEL] Linux 6.3: Employ modifier calls with the vma-&gt;vm_flags</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1684065600">- update to 1.96.1
  * [Driver]
  - Postpone Clock Source registration during startup until the Base Clock is computed.
  - Change class_create() according to Linux Kernel 6.4
  - Clear interrupt flag (cli) after Halt in the Idle method
  * [AMD]
  - [PHOENIX] Adding Ryzen 7940H, 7840H, 7640H
  - [VERMEER] Adding Ryzen PRO and Embedded processors
  - Ryzen Z1 CPUID' brand fix
  - Adding EPYC Embedded 9004 Series as Genoa
  - Adding EPYC Embedded 7003 Series as Milan
  - Adding EPYC Embedded 7002 Series as Rome
  - Adding EPYC Embedded 7001 Series as Naples</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1685880000">- update to 1.96.2
  * [Driver]
  - Allows compilation to keep going without CONFIG_ACPI_CPPC_LIB
  * [Client]
  - Adding two command line arguments:
  - Op Show Package C-States
  - OW Toggle Energy units
  * [AMD]
  - Specification of some Configuration MSRs</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1686830400">- update to 1.96.4
  * [AMD]
  - Display CPUID state of new and legacy features:
    Fused Multiply Add [FMA4]
    Extended Operation Support [XOP]
    Translation Cache Extension [TCE]
    Trailing Bit Manipulation [TBM]
    OS Visible Work-around [OSVW]
    LOCK prefix to read CR8 [AltMov]
  * [Intel]
  - Advanced Matrix Extensions [AMX]
  - Bits and Features of Sierra Forest and Grand Ridge
  - Attempt to decode the Meteor Lake Memory Controller
- update to 1.96.3
  * [AMD]
  - [Zeppelin] Probe more than one UMC controllers on Ryzen Threadripper 1900X
  - [Zen4] Dump SMBE and BMEC sub-leaves of CPUID 0x80000020</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1688212800">- update to 1.96.5
  * [AMD]
    Adding the "AMD Ryzen 5 5600X3D"
    Introducing the Zen4c Bergamo architecture
    Specs fixing of Embedded V-series and 3000 Series Processors
    Adding MENDOCINO, RAPHAEL Pro, PHOENIX Pro among others</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1712318400">- added preamble file for %kernel_module_package macro
- update to 1.97.1
  * added aarch64 support
  * upstream did not provide a summary changelog. Full list of commits:
    https://github.com/cyring/CoreFreq/compare/1.96.5...1.97.1</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715860800">- update to 1.97.2
  * [AMD]
  - [Hawk Point] Adding Ryzen PRO processors
  - [Phoenix] Adding the unlocked Ryzen 8000 Series
  * [Intel]
  - [MeteorLake] New bits specified
  - EEO and R2H bits inversion fix in MSR_POWER_CTL (0x1fc)
  - Reverse specification of MSR UNCORE_PERF_STATUS
  - Prefetchers fix of L1 Scrubbing, L1 Next Page and L2 AMP
  * [AArch64]
  - Providing Exclusive Load/Store to atomic operations
  - Improved asm of various macro functions
  - Removed LEGACY macros
  - Optimized the CORE_COUNT macros
  - Marked the Tools feature as nominal: Stress functions available
  - Allow user access to Retired Instructions counter
  - Fix Instructions counter overflow
  - Other PMC enhancements
  * [CR]
  - Fix a building issue with AlmaLinux aka RHEL-9
  - Linux kernel 6.9: Avoid redefinition of Intel MSR macros
  * [Doc]
  - README section for AlmaLinux
  - CONFIG_TRIM_UNUSED_KSYMS kernel build config is forbidden</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1715947200">- fix dependency on kernel module that was not versioned</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1722081600">- update to 1.98.0
  * [Build]
  - Change dkms configuration to install into /usr/bin/
  - Solved compilation with Fedora using RHEL MINOR version number 99
  - [CR] Fixed some compilation warnings
  - [CR] Fix memory allocation in kernel pages for the SysGate
  - Workaround to musl change in basename (#494)
  - aarch64: Build with Redhat RHEL version 9
  - [CR] x86_64: Prevent array size overflow
  - dkms and ckms configuration files upgraded to version 1.98
  * [Intel]
  - [Raptor Lake] Adding the HB DID of i7-14700K' IMC
  - Mitigation mechanism: GDS_NO; RFDS_NO; MONITOR_MITG_NO
  - Apply some SDM Documentation Changes
  - [MTL] Fix CMD Stretch bit range width
  - Added method CLOCK_FLEX_MAX with Xeon's Nehalem &amp; Core 2
  - Grants full MSR_FLEX_RATIO access to tested architectures:
  - Alder Lake/S
  - Tiger Lake/U
  - Westmere/Gulftown
  - Provides the overclocking bins with unlocked processors
  - Query the Overclocking bit (OC) from Capabilities
  - Adding technologies: VMD, HDCP, IPU and VPU
  - Volume Management Device
  - High-Bandwidth Digital Content Protection
  - Image Processing Unit
  - Vision Processing Unit
  - Gaussian &amp; Neural Accelerator - GNA technology
  - [CR] Renamed Gemini Lake structures
  - [Meteor Lake] Introducing memory controller decoder
  * [AArch64]
  - Optimizing the Vcore seek
  - Workaround to Package discrete voltage: the highest Vcore
  - Improving computation of Euclidean division
  - Adjust frequency division in CNTFRQ and PMU counters
  - Scale a frequency factor from the interval
  - Refactoring the frequency ratios for decimal precision
  - Compile dev_pm_opp_put if Kernel greater or equal 4.11
  - Get the voltage core of CPUs from OPP
  * [AMD]
  - [Zen4][Raphael] Adding the EPYC 4004 Series
  - [Zen4] Clarify Hawk Point and Phoenix-Refresh architectures
  - [Family 19h] New voltage formula assigned to model 61h
  - Vcore activated
  - Voltage SoC deactivated
  - [Zen] Prevent the calculation of negative temperature (issue #496)
  - [Family 18h] Documented Hygon C86 7375
  - [Family 19h] PStateDef specification: Adding VID[8] bit 32
  - Specification of MSR HW_PSTATE_STATUS
  * [CLI]
  - aarch64: Display the state of the Memory Management Unit (MMU)
  - aarch64: State of Instruction Cache Unit I$ and Data Cache Unit D$
  - Added UI_RULER_MINIMUM &amp; UI_RULER_MAXIMUM building constraints
  - Revert "[CLI] Responsive ruler to architectural context"
  - This reverts commit 4bc38d6.
  - x86_64: AMD Boost and P-States redesigned
  - [UI] Hardening missing console/terminal size
  - Responsive ruler to architectural context
  - x86_64: Make HDCP meaning string shorter
  * [Driver]
  - Created C2U_Enable as a parameter alias of C1U_Enable</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1723032000">- update to 1.98.1
  * [AMD]
  - [Zen] Inject threshold events when thermal is out of bounds
  - Generic Zen architectures renamed with their Family number
  - Added a generic entry for the 1A family
  - Configure TjMax for multiple Ryzen and Threadripper
  - [CR] Optimize AMD temperature filtering function
  - [Zen5] Introducing the Eldora architecture aka "Granite Ridge"
  - [Zen5] Adding entries for Strix Point
  * [Intel]
  - Feature-bits of Core Ultra architecture
  - [TGL][ADL][RPL] New devices to probe IMC and Watchdog
  - [Raptor Lake-E] Adding the IMC probing entries
  - Grant full MSR_FLEX_RATIO access to Raptor Lake (06_B7)
  - Added Host Bridge DIDs of Raptor Lake-E
  - [ADL ... MTL] Code review of IMC decoders
  - [ADL] Compute DIMM Bank and Columns on both channels
  - [ADL] Process channels differently depending on DDR4 or DDR5
  - 12th to 14th generation IMC decoder refactoring
  - [ADL ... MTL] Adding Memory Controller Virtual Channel Count
  - [ADL ... MTL] Channel count as a function of DDPCD DDR_TYPE
  - [ADL ... MTL] Keep all enabled memory controllers
  - [12th and superior] Compute tWR quantity as a function of DDR version
  * [Build]
  - Now leave version number in Makefile
  - Pretty print the build and the clean of outputs
    Allow the V=n option increase the verbose level (incl. kernel)
  - CPU-Freq build against Linux Kernel version 6.11
  * [Documentation]
  - Refreshed README and Makefile</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1723464000">- Update to 1.98.2
  * [Intel]
  - [WDT] Adding multiple devices to probe TCO
    C620 Series Chipset Production SKUs (0xa1a3)
    C620 Series Chipset Super SKUs (0xa223)
    Sunrise Point/H (0xa123)
    Cannon Lake/LP (0x9da3)
    Comet Lake/H (0x06a3)
    Ice Lake/LP (0x34a3)
    Tiger Lake/H (0x43a3)
    Elkhart Lake (0x4b23)
    Kaby Lake/H (0xa2a3)
    Cannon Lake (0xa323)
    Comet Lake/V (0xa3a3)
    Ice Lake/NG (0x38a3)
    Alder lake/M (0x54a3)
    Arrow Lake/S (0x7f23)
    Jasper Lake SMBus (0x4da3)
    Sunrise Point-LP SMBus (0x9d23)
    Comet Lake PCH-LP SMBus (0x02a3)
  - MSR_FLEX_RATIO register
    Grant access to Alder Lake/H (06_9A)
    Deny access to Nehalem/Bloomfield (06_1A)
    Removed a condition in access function</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1725019200">- Update to 1.98.3
  * [AMD]
  - [VMR/RPL/GNR] Voltage Curve Optimizer (VCO)
  - Provide a specific VCO formula based on HWM_CHIPSET=AMD_VCO
    build parameter
  - The standard voltage formulas are restored to these architectures
  - Zen5: Guessed a new P-State MSR bits specification to fix the
    Coefficient Of Frequency (COF)</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1726833600">- Update to 1.98.4
  * [Build]
  - Prevent a collision with macro WRMSRNS within kernel 6.11
  * [x86_64]
  - [Virtualization] Switch to the HCF or VP_RUNTIME counters depending on the detected hypervisor</changelog>
  <changelog author="Michael Pujos &lt;pujos.michael@gmail.com&gt;" date="1731067200">- Update to 1.98.5
  * [UI]
  - Debugging a target clock ratio selector issue
  * [Build]
  - Makefile compliant with the -s silent option
  - [CI] Disable the unfound arm64v8/ubuntu:rolling
  * [AMD]
  - [Strix Point] Adding PRO series
  - [Zen5][Zen5c] Introducing the TURIN architecture
  - Supply a fallback thermal junction max to various Zen series
  - [Zen5] Mitigation mechanisms and Features bits
    SBPB,
    SRSO_NO,
    SRSO_USR_KNL_NO,
    ERMSB,
    FSRS,
    FSRC_CMPSB,
    PREFETCHI
  - [Zen] Added remaining X3D processor models
  - [PHOENIX2] Added the unlocked for overclocking Ryzen 5 8500GE
  - [PHOENIX2] Added the unlocked for overclocking Ryzen 3 8300GE
  - [SIENA] Added the EPYC Embedded 8004 Series
  - [GENOA] Added a left over EPYC Embedded 9534
  - [Turin] Employed the Genoa UMC decoder
  - [Family 1Ah] Updated the PStateDef MSR
  - [Zen] Completed CPUID leaf 0x80000021 from PPR 57238
  - [Zen5/Granite Ridge] Added Ryzen 7 9800X3D processor
  * [Intel]
  - [ARL] Declare PCI ids to probe the IMC as a MTL controller
  - [ARL][IMC] DDR5: tWR = tWRPRE - tCWL - 10
  - [ADL-X/ADL-N] Declare PCI ids to probe the memory controller
  - [LNL] Added PCI ids to probe any IMC and SMBUS
  - [ARL] Completed with SMBUS PCI id
  - [MTL-M] Declare PCI ids to probe the IMC and TCO
  - [MTL-M] Set PCI ids into Daemon
  - [RPL] Added remaining PX and H processor line platforms</changelog>
</package>
<package pkgid="a595707d29712dca7aee606a01b57427ab5f1b047c9c23a37379b23aedcf6755593a56e287de62b4b6df732dc17d22e878a2d8a06c9217fd0ce4c5b678ecb49c" name="DirectX-Headers" arch="i586">
  <version epoch="0" ver="1.614.1" rel="1.1"/>
  <changelog author="Scott Bradnick &lt;scott.bradnick@suse.com&gt;" date="1629892800">- Fixing file conflict for /usr/lib64/pkgconfig.</changelog>
  <changelog author="Scott Bradnick &lt;scott.bradnick@suse.com&gt;" date="1629892801">- Adding rpmlintrc for addFilter 'lto-no-text-in-archive'.</changelog>
  <changelog author="Scott Bradnick &lt;scott.bradnick@suse.com&gt;" date="1636632000">* Prepping for inclusion in X11:XOrg project:
  - General cleanup of .spec file
  - Adjusting to use proper naming of rpmlintrc.
  - Pre-0.57.0 version of 'meson install' does not support
    '--destdir', using ENV var for all but TW.</changelog>
  <changelog author="Scott Bradnick &lt;scott.bradnick@suse.com&gt;" date="1651147200">- Update to upstream version 1.600.10</changelog>
  <changelog author="Scott Bradnick &lt;scott.bradnick@suse.com&gt;" date="1652356800">- Renamed project/file references from 'directx-headers' to
  'DirectX-Headers' (as is upstream).</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1653480000">- fixed 32bit build</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1653480001">- build exclusively on %{ix86} x86_64, since DirectX ia only
  relevant on these platforms</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1653480002">- added missing %changelog section to specfile</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1653480003">- Clean spec file
  * Fix description
  * Use %autosetup
  * Use meson macros
  * Use fdupes for duplicate files
  * Use a better URL</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1660651200">- Update to 1.606.3:
  * Support Shader Model 6.7</changelog>
  <changelog author="Scott Bradnick &lt;scott.bradnick@suse.com&gt;" date="1661860800">- Update to 1.606.4:
  * Update D3DX12.H to support new ABI for MinGW (#73)
  * dxguids: Add new GUIDs from the last several releases</changelog>
  <changelog author="Scott Bradnick &lt;scott.bradnick@suse.com&gt;" date="1669032000">- Update to 1.608.0:
  * This release matches the content provided in the DirectX12
    Agility SDK and the 1.608.0 NuGet package.</changelog>
  <changelog author="Scott Bradnick &lt;scott.bradnick@suse.com&gt;" date="1680177600">- Update to 1.608.2:
  * This release matches the content provided in the DirectX12
    Agility SDK and the 1.608.2 NuGet package.
  - https://devblogs.microsoft.com/directx/directx12agility/
  - https://www.nuget.org/packages/Microsoft.Direct3D.D3D12/1.608.2</changelog>
  <changelog author="Scott Bradnick &lt;scott.bradnick@suse.com&gt;" date="1681387200">- Update to 1.610.0:
  * This release matches the content provided in the DirectX12
    Agility SDK and the 1.610.0 NuGet package.
  - https://devblogs.microsoft.com/directx/directx12agility/
  - https://www.nuget.org/packages/Microsoft.Direct3D.D3D12/1.610.0</changelog>
  <changelog author="Martin Pluskal &lt;mpluskal@suse.com&gt;" date="1686916800">- Install license
- Use -ffat-lto-objects for static libraries</changelog>
  <changelog author="Scott Bradnick &lt;scott.bradnick@suse.com&gt;" date="1701777600">- Update to 1.611.0:
  * This release matches the content provided in the DirectX12
    Agility SDK and the 1.611.0 NuGet package.
  - https://devblogs.microsoft.com/directx/directx12agility/
  - https://www.nuget.org/packages/Microsoft.Direct3D.D3D12/1.611.0</changelog>
  <changelog author="Scott Bradnick &lt;scott.bradnick@suse.com&gt;" date="1710158400">- Update to 1.613.0:
  * This release matches the content provided in the DirectX12
    Agility SDK and the 1.613.0 NuGet package.
  - https://devblogs.microsoft.com/directx/directx12agility/
  - https://www.nuget.org/packages/Microsoft.Direct3D.D3D12/1.613.0</changelog>
  <changelog author="Scott Bradnick &lt;scott.bradnick@suse.com&gt;" date="1710849600">- Update to 1.613.1:
  * This release matches the content provided in the DirectX12
    Agility SDK and the 1.613.1 NuGet package.
  - https://devblogs.microsoft.com/directx/directx12agility/
  - https://www.nuget.org/packages/Microsoft.Direct3D.D3D12/1.613.1</changelog>
  <changelog author="Scott Bradnick &lt;scott.bradnick@suse.com&gt;" date="1715947200">- Adding version-fixup.diff to account for leftover 1.613.1 references
- Update to 1.614.0:
  * This release matches the content provided in the DirectX12
    Agility SDK and the 1.614.0 NuGet package.
  - https://devblogs.microsoft.com/directx/directx12agility/
  - https://www.nuget.org/packages/Microsoft.Direct3D.D3D12/1.614.0</changelog>
  <changelog author="Scott Bradnick &lt;scott.bradnick@suse.com&gt;" date="1725883200">- Removing version-fixup.diff as it was fixed upstream
- Update to 1.614.1:
  * Several warning fixes and a DML update on top of v1.614.0. Importantly,
    the CMake/meson build systems actually report a v1.614 version number.
    That change was missed from the previous release. No new D3D APIs are
    present relative to v1.614.0.</changelog>
</package>
<package pkgid="df4cda48f2df1ee81019901efe8064c67285f32a2f4b0069d3c242173c14ae69bacf429aac0ad7f0891bcf27ac88b265c034b4cc216e29ddfa22137574cb8fe3" name="DirectX-Headers" arch="src">
  <version epoch="0" ver="1.614.1" rel="1.1"/>
  <changelog author="Scott Bradnick &lt;scott.bradnick@suse.com&gt;" date="1629892800">- Fixing file conflict for /usr/lib64/pkgconfig.</changelog>
  <changelog author="Scott Bradnick &lt;scott.bradnick@suse.com&gt;" date="1629892801">- Adding rpmlintrc for addFilter 'lto-no-text-in-archive'.</changelog>
  <changelog author="Scott Bradnick &lt;scott.bradnick@suse.com&gt;" date="1636632000">* Prepping for inclusion in X11:XOrg project:
  - General cleanup of .spec file
  - Adjusting to use proper naming of rpmlintrc.
  - Pre-0.57.0 version of 'meson install' does not support
    '--destdir', using ENV var for all but TW.</changelog>
  <changelog author="Scott Bradnick &lt;scott.bradnick@suse.com&gt;" date="1651147200">- Update to upstream version 1.600.10</changelog>
  <changelog author="Scott Bradnick &lt;scott.bradnick@suse.com&gt;" date="1652356800">- Renamed project/file references from 'directx-headers' to
  'DirectX-Headers' (as is upstream).</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1653480000">- fixed 32bit build</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1653480001">- build exclusively on %{ix86} x86_64, since DirectX ia only
  relevant on these platforms</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1653480002">- added missing %changelog section to specfile</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1653480003">- Clean spec file
  * Fix description
  * Use %autosetup
  * Use meson macros
  * Use fdupes for duplicate files
  * Use a better URL</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1660651200">- Update to 1.606.3:
  * Support Shader Model 6.7</changelog>
  <changelog author="Scott Bradnick &lt;scott.bradnick@suse.com&gt;" date="1661860800">- Update to 1.606.4:
  * Update D3DX12.H to support new ABI for MinGW (#73)
  * dxguids: Add new GUIDs from the last several releases</changelog>
  <changelog author="Scott Bradnick &lt;scott.bradnick@suse.com&gt;" date="1669032000">- Update to 1.608.0:
  * This release matches the content provided in the DirectX12
    Agility SDK and the 1.608.0 NuGet package.</changelog>
  <changelog author="Scott Bradnick &lt;scott.bradnick@suse.com&gt;" date="1680177600">- Update to 1.608.2:
  * This release matches the content provided in the DirectX12
    Agility SDK and the 1.608.2 NuGet package.
  - https://devblogs.microsoft.com/directx/directx12agility/
  - https://www.nuget.org/packages/Microsoft.Direct3D.D3D12/1.608.2</changelog>
  <changelog author="Scott Bradnick &lt;scott.bradnick@suse.com&gt;" date="1681387200">- Update to 1.610.0:
  * This release matches the content provided in the DirectX12
    Agility SDK and the 1.610.0 NuGet package.
  - https://devblogs.microsoft.com/directx/directx12agility/
  - https://www.nuget.org/packages/Microsoft.Direct3D.D3D12/1.610.0</changelog>
  <changelog author="Martin Pluskal &lt;mpluskal@suse.com&gt;" date="1686916800">- Install license
- Use -ffat-lto-objects for static libraries</changelog>
  <changelog author="Scott Bradnick &lt;scott.bradnick@suse.com&gt;" date="1701777600">- Update to 1.611.0:
  * This release matches the content provided in the DirectX12
    Agility SDK and the 1.611.0 NuGet package.
  - https://devblogs.microsoft.com/directx/directx12agility/
  - https://www.nuget.org/packages/Microsoft.Direct3D.D3D12/1.611.0</changelog>
  <changelog author="Scott Bradnick &lt;scott.bradnick@suse.com&gt;" date="1710158400">- Update to 1.613.0:
  * This release matches the content provided in the DirectX12
    Agility SDK and the 1.613.0 NuGet package.
  - https://devblogs.microsoft.com/directx/directx12agility/
  - https://www.nuget.org/packages/Microsoft.Direct3D.D3D12/1.613.0</changelog>
  <changelog author="Scott Bradnick &lt;scott.bradnick@suse.com&gt;" date="1710849600">- Update to 1.613.1:
  * This release matches the content provided in the DirectX12
    Agility SDK and the 1.613.1 NuGet package.
  - https://devblogs.microsoft.com/directx/directx12agility/
  - https://www.nuget.org/packages/Microsoft.Direct3D.D3D12/1.613.1</changelog>
  <changelog author="Scott Bradnick &lt;scott.bradnick@suse.com&gt;" date="1715947200">- Adding version-fixup.diff to account for leftover 1.613.1 references
- Update to 1.614.0:
  * This release matches the content provided in the DirectX12
    Agility SDK and the 1.614.0 NuGet package.
  - https://devblogs.microsoft.com/directx/directx12agility/
  - https://www.nuget.org/packages/Microsoft.Direct3D.D3D12/1.614.0</changelog>
  <changelog author="Scott Bradnick &lt;scott.bradnick@suse.com&gt;" date="1725883200">- Removing version-fixup.diff as it was fixed upstream
- Update to 1.614.1:
  * Several warning fixes and a DML update on top of v1.614.0. Importantly,
    the CMake/meson build systems actually report a v1.614 version number.
    That change was missed from the previous release. No new D3D APIs are
    present relative to v1.614.0.</changelog>
</package>
<package pkgid="5be738cbebd72a0cde09619351f1a2b85bcc862b8c478c81e08a3dc270ee686618fd6c91d1b924be511f0bfbef364b0bb5e502cdcb0351198fc5310cbc9a0799" name="DirectX-Headers" arch="x86_64">
  <version epoch="0" ver="1.614.1" rel="1.1"/>
  <changelog author="Scott Bradnick &lt;scott.bradnick@suse.com&gt;" date="1629892800">- Fixing file conflict for /usr/lib64/pkgconfig.</changelog>
  <changelog author="Scott Bradnick &lt;scott.bradnick@suse.com&gt;" date="1629892801">- Adding rpmlintrc for addFilter 'lto-no-text-in-archive'.</changelog>
  <changelog author="Scott Bradnick &lt;scott.bradnick@suse.com&gt;" date="1636632000">* Prepping for inclusion in X11:XOrg project:
  - General cleanup of .spec file
  - Adjusting to use proper naming of rpmlintrc.
  - Pre-0.57.0 version of 'meson install' does not support
    '--destdir', using ENV var for all but TW.</changelog>
  <changelog author="Scott Bradnick &lt;scott.bradnick@suse.com&gt;" date="1651147200">- Update to upstream version 1.600.10</changelog>
  <changelog author="Scott Bradnick &lt;scott.bradnick@suse.com&gt;" date="1652356800">- Renamed project/file references from 'directx-headers' to
  'DirectX-Headers' (as is upstream).</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1653480000">- fixed 32bit build</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1653480001">- build exclusively on %{ix86} x86_64, since DirectX ia only
  relevant on these platforms</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1653480002">- added missing %changelog section to specfile</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1653480003">- Clean spec file
  * Fix description
  * Use %autosetup
  * Use meson macros
  * Use fdupes for duplicate files
  * Use a better URL</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1660651200">- Update to 1.606.3:
  * Support Shader Model 6.7</changelog>
  <changelog author="Scott Bradnick &lt;scott.bradnick@suse.com&gt;" date="1661860800">- Update to 1.606.4:
  * Update D3DX12.H to support new ABI for MinGW (#73)
  * dxguids: Add new GUIDs from the last several releases</changelog>
  <changelog author="Scott Bradnick &lt;scott.bradnick@suse.com&gt;" date="1669032000">- Update to 1.608.0:
  * This release matches the content provided in the DirectX12
    Agility SDK and the 1.608.0 NuGet package.</changelog>
  <changelog author="Scott Bradnick &lt;scott.bradnick@suse.com&gt;" date="1680177600">- Update to 1.608.2:
  * This release matches the content provided in the DirectX12
    Agility SDK and the 1.608.2 NuGet package.
  - https://devblogs.microsoft.com/directx/directx12agility/
  - https://www.nuget.org/packages/Microsoft.Direct3D.D3D12/1.608.2</changelog>
  <changelog author="Scott Bradnick &lt;scott.bradnick@suse.com&gt;" date="1681387200">- Update to 1.610.0:
  * This release matches the content provided in the DirectX12
    Agility SDK and the 1.610.0 NuGet package.
  - https://devblogs.microsoft.com/directx/directx12agility/
  - https://www.nuget.org/packages/Microsoft.Direct3D.D3D12/1.610.0</changelog>
  <changelog author="Martin Pluskal &lt;mpluskal@suse.com&gt;" date="1686916800">- Install license
- Use -ffat-lto-objects for static libraries</changelog>
  <changelog author="Scott Bradnick &lt;scott.bradnick@suse.com&gt;" date="1701777600">- Update to 1.611.0:
  * This release matches the content provided in the DirectX12
    Agility SDK and the 1.611.0 NuGet package.
  - https://devblogs.microsoft.com/directx/directx12agility/
  - https://www.nuget.org/packages/Microsoft.Direct3D.D3D12/1.611.0</changelog>
  <changelog author="Scott Bradnick &lt;scott.bradnick@suse.com&gt;" date="1710158400">- Update to 1.613.0:
  * This release matches the content provided in the DirectX12
    Agility SDK and the 1.613.0 NuGet package.
  - https://devblogs.microsoft.com/directx/directx12agility/
  - https://www.nuget.org/packages/Microsoft.Direct3D.D3D12/1.613.0</changelog>
  <changelog author="Scott Bradnick &lt;scott.bradnick@suse.com&gt;" date="1710849600">- Update to 1.613.1:
  * This release matches the content provided in the DirectX12
    Agility SDK and the 1.613.1 NuGet package.
  - https://devblogs.microsoft.com/directx/directx12agility/
  - https://www.nuget.org/packages/Microsoft.Direct3D.D3D12/1.613.1</changelog>
  <changelog author="Scott Bradnick &lt;scott.bradnick@suse.com&gt;" date="1715947200">- Adding version-fixup.diff to account for leftover 1.613.1 references
- Update to 1.614.0:
  * This release matches the content provided in the DirectX12
    Agility SDK and the 1.614.0 NuGet package.
  - https://devblogs.microsoft.com/directx/directx12agility/
  - https://www.nuget.org/packages/Microsoft.Direct3D.D3D12/1.614.0</changelog>
  <changelog author="Scott Bradnick &lt;scott.bradnick@suse.com&gt;" date="1725883200">- Removing version-fixup.diff as it was fixed upstream
- Update to 1.614.1:
  * Several warning fixes and a DML update on top of v1.614.0. Importantly,
    the CMake/meson build systems actually report a v1.614 version number.
    That change was missed from the previous release. No new D3D APIs are
    present relative to v1.614.0.</changelog>
</package>
<package pkgid="79fa7110e40b033df69296a462ac38870f38a90bde75c8978d0400b22c57c2ed506633d09980fea2543a32f30f91f2b7db68f4a16aa6f101060e0f560ede2749" name="HyperKitty" arch="noarch">
  <version epoch="0" ver="1.3.12" rel="2.1.2.1.sr20241103"/>
  <changelog author="Andreas Schneider &lt;asn@cryptomilk.org&gt;" date="1688644800">- Add missing dependency to whoosh</changelog>
  <changelog author="Georg Pfuetzenreuter &lt;georg.pfuetzenreuter@suse.com&gt;" date="1690718400">- Add upstream patch gl-mr300-add-opengraph-metadata.patch:
  * Add OpenGraph Metadata (https://gitlab.com/mailman/hyperkitty/-/merge_requests/300)
- Add upstream patch gl-mr470-introduce-feed-filtering.patch:
  * Introduce feed filtering (https://gitlab.com/mailman/hyperkitty/-/merge_requests/470)</changelog>
  <changelog author="Mark&#xE9;ta Machov&#xE1; &lt;mmachova@suse.com&gt;" date="1696507200">- Add mistune3.patch to fix compatibility with mistune 3.0</changelog>
  <changelog author="Andreas Schneider &lt;asn@cryptomilk.org&gt;" date="1698926400">- Update to version 1.3.8
  * See https://gitlab.com/mailman/hyperkitty/-/blob/v1.3.8/doc/news.rst
    or the file news.ret included in this package
- Removed fix-elasticsearch8.patch
- Updated mistune3.patch</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1699185600">- refresh gl-mr300-add-opengraph-metadata.patch for version update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1699272000">- make it easier to notice to keep buildrequires and runtime
  requires version limits in sync. This will also help us to notice
  early when the version of other libraries do not match the
  requires encoded in the source code.</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1699272001">- make user and group creation verbose so we actually see errors</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1699272002">- ensure that we can create the user and group</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1699272003">- make it easy to run a build without testsuite
  osc build --without=testsuite</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1699272004">- forgot to use 2 defined variables:
  %{django_haystack_min_version}
  %{django_extensions_min_version}</changelog>
  <changelog author="Georg Pfuetzenreuter &lt;mail+rpm@georg-pfuetzenreuter.net&gt;" date="1708689600">- Build for Python 3.12</changelog>
  <changelog author="Georg Pfuetzenreuter &lt;mail+rpm@georg-pfuetzenreuter.net&gt;" date="1708776000">- Split out system user</changelog>
  <changelog author="Andreas Schneider &lt;asn@cryptomilk.org&gt;" date="1709121600">- Fix building on SLE15 based distributions</changelog>
  <changelog author="Ben Greiner &lt;code@bnavigator.de&gt;" date="1709208000">- Simplify python flavor selection
  * Go back to primary python3 on Tumbleweed
  * Use SLE15 python module pythons on 15.x
- Build PEP517 wheel</changelog>
  <changelog author="Andreas Schneider &lt;asn@cryptomilk.org&gt;" date="1709380800">- Update to version 1.3.9
  * https://gitlab.com/mailman/hyperkitty/-/releases/1.3.9
- Removed mistune3.patch</changelog>
  <changelog author="Andreas Schneider &lt;asn@cryptomilk.org&gt;" date="1719144000">- Update to version 1.3.10
  * https://gitlab.com/mailman/hyperkitty/-/releases/1.3.10</changelog>
  <changelog author="Georg Pfuetzenreuter &lt;mail+rpm@georg-pfuetzenreuter.net&gt;" date="1721304000">- Add gl-mr635-empty_attachment.patch to resolve corrupted archive
  downloads on mails with empty attachments</changelog>
  <changelog author="Andreas Schneider &lt;asn@cryptomilk.org&gt;" date="1726056000">- Update to version 1.3.11
  * https://gitlab.com/mailman/hyperkitty/-/blob/1.3.11/doc/news.rst
- Removed GPG signature as the download links don't work
- Removed requirement for pytz</changelog>
  <changelog author="Andreas Schneider &lt;asn@cryptomilk.org&gt;" date="1726920000">- Update to version 1.3.12
  * https://gitlab.com/mailman/hyperkitty/-/blob/1.3.12/doc/news.rst
    or packaged news.rst
- Removed gl-mr635-empty_attachment.patch</changelog>
  <changelog author="Mark&#xE9;ta Machov&#xE1; &lt;mmachova@suse.com&gt;" date="1730980800">- Minor tweaks in spec to fix build</changelog>
</package>
<package pkgid="af7f54da7a3c9eaa029040e283be48a51a651a3990394b784cec54074a0fe124efcd7160e9803e9757419d4b8a0cbb72125379c3c15b2bc9848a80decd09d35e" name="HyperKitty-web" arch="noarch">
  <version epoch="0" ver="1.3.12" rel="2.1.2.1.sr20241103"/>
  <changelog author="Andreas Schneider &lt;asn@cryptomilk.org&gt;" date="1688644800">- Add missing dependency to whoosh</changelog>
  <changelog author="Georg Pfuetzenreuter &lt;georg.pfuetzenreuter@suse.com&gt;" date="1690718400">- Add upstream patch gl-mr300-add-opengraph-metadata.patch:
  * Add OpenGraph Metadata (https://gitlab.com/mailman/hyperkitty/-/merge_requests/300)
- Add upstream patch gl-mr470-introduce-feed-filtering.patch:
  * Introduce feed filtering (https://gitlab.com/mailman/hyperkitty/-/merge_requests/470)</changelog>
  <changelog author="Mark&#xE9;ta Machov&#xE1; &lt;mmachova@suse.com&gt;" date="1696507200">- Add mistune3.patch to fix compatibility with mistune 3.0</changelog>
  <changelog author="Andreas Schneider &lt;asn@cryptomilk.org&gt;" date="1698926400">- Update to version 1.3.8
  * See https://gitlab.com/mailman/hyperkitty/-/blob/v1.3.8/doc/news.rst
    or the file news.ret included in this package
- Removed fix-elasticsearch8.patch
- Updated mistune3.patch</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1699185600">- refresh gl-mr300-add-opengraph-metadata.patch for version update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1699272000">- make it easier to notice to keep buildrequires and runtime
  requires version limits in sync. This will also help us to notice
  early when the version of other libraries do not match the
  requires encoded in the source code.</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1699272001">- make user and group creation verbose so we actually see errors</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1699272002">- ensure that we can create the user and group</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1699272003">- make it easy to run a build without testsuite
  osc build --without=testsuite</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1699272004">- forgot to use 2 defined variables:
  %{django_haystack_min_version}
  %{django_extensions_min_version}</changelog>
  <changelog author="Georg Pfuetzenreuter &lt;mail+rpm@georg-pfuetzenreuter.net&gt;" date="1708689600">- Build for Python 3.12</changelog>
  <changelog author="Georg Pfuetzenreuter &lt;mail+rpm@georg-pfuetzenreuter.net&gt;" date="1708776000">- Split out system user</changelog>
  <changelog author="Andreas Schneider &lt;asn@cryptomilk.org&gt;" date="1709121600">- Fix building on SLE15 based distributions</changelog>
  <changelog author="Ben Greiner &lt;code@bnavigator.de&gt;" date="1709208000">- Simplify python flavor selection
  * Go back to primary python3 on Tumbleweed
  * Use SLE15 python module pythons on 15.x
- Build PEP517 wheel</changelog>
  <changelog author="Andreas Schneider &lt;asn@cryptomilk.org&gt;" date="1709380800">- Update to version 1.3.9
  * https://gitlab.com/mailman/hyperkitty/-/releases/1.3.9
- Removed mistune3.patch</changelog>
  <changelog author="Andreas Schneider &lt;asn@cryptomilk.org&gt;" date="1719144000">- Update to version 1.3.10
  * https://gitlab.com/mailman/hyperkitty/-/releases/1.3.10</changelog>
  <changelog author="Georg Pfuetzenreuter &lt;mail+rpm@georg-pfuetzenreuter.net&gt;" date="1721304000">- Add gl-mr635-empty_attachment.patch to resolve corrupted archive
  downloads on mails with empty attachments</changelog>
  <changelog author="Andreas Schneider &lt;asn@cryptomilk.org&gt;" date="1726056000">- Update to version 1.3.11
  * https://gitlab.com/mailman/hyperkitty/-/blob/1.3.11/doc/news.rst
- Removed GPG signature as the download links don't work
- Removed requirement for pytz</changelog>
  <changelog author="Andreas Schneider &lt;asn@cryptomilk.org&gt;" date="1726920000">- Update to version 1.3.12
  * https://gitlab.com/mailman/hyperkitty/-/blob/1.3.12/doc/news.rst
    or packaged news.rst
- Removed gl-mr635-empty_attachment.patch</changelog>
  <changelog author="Mark&#xE9;ta Machov&#xE1; &lt;mmachova@suse.com&gt;" date="1730980800">- Minor tweaks in spec to fix build</changelog>
</package>
<package pkgid="68cc623fb9a5200840de57c97f07807fd92917f20554cf541144db0149789b807590da5e286dc6e0d44bd844cbff1007f669b39a7cbefc8ecd34b47da07fc075" name="HyperKitty-web-uwsgi" arch="noarch">
  <version epoch="0" ver="1.3.12" rel="2.1.2.1.sr20241103"/>
  <changelog author="Andreas Schneider &lt;asn@cryptomilk.org&gt;" date="1688644800">- Add missing dependency to whoosh</changelog>
  <changelog author="Georg Pfuetzenreuter &lt;georg.pfuetzenreuter@suse.com&gt;" date="1690718400">- Add upstream patch gl-mr300-add-opengraph-metadata.patch:
  * Add OpenGraph Metadata (https://gitlab.com/mailman/hyperkitty/-/merge_requests/300)
- Add upstream patch gl-mr470-introduce-feed-filtering.patch:
  * Introduce feed filtering (https://gitlab.com/mailman/hyperkitty/-/merge_requests/470)</changelog>
  <changelog author="Mark&#xE9;ta Machov&#xE1; &lt;mmachova@suse.com&gt;" date="1696507200">- Add mistune3.patch to fix compatibility with mistune 3.0</changelog>
  <changelog author="Andreas Schneider &lt;asn@cryptomilk.org&gt;" date="1698926400">- Update to version 1.3.8
  * See https://gitlab.com/mailman/hyperkitty/-/blob/v1.3.8/doc/news.rst
    or the file news.ret included in this package
- Removed fix-elasticsearch8.patch
- Updated mistune3.patch</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1699185600">- refresh gl-mr300-add-opengraph-metadata.patch for version update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1699272000">- make it easier to notice to keep buildrequires and runtime
  requires version limits in sync. This will also help us to notice
  early when the version of other libraries do not match the
  requires encoded in the source code.</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1699272001">- make user and group creation verbose so we actually see errors</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1699272002">- ensure that we can create the user and group</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1699272003">- make it easy to run a build without testsuite
  osc build --without=testsuite</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1699272004">- forgot to use 2 defined variables:
  %{django_haystack_min_version}
  %{django_extensions_min_version}</changelog>
  <changelog author="Georg Pfuetzenreuter &lt;mail+rpm@georg-pfuetzenreuter.net&gt;" date="1708689600">- Build for Python 3.12</changelog>
  <changelog author="Georg Pfuetzenreuter &lt;mail+rpm@georg-pfuetzenreuter.net&gt;" date="1708776000">- Split out system user</changelog>
  <changelog author="Andreas Schneider &lt;asn@cryptomilk.org&gt;" date="1709121600">- Fix building on SLE15 based distributions</changelog>
  <changelog author="Ben Greiner &lt;code@bnavigator.de&gt;" date="1709208000">- Simplify python flavor selection
  * Go back to primary python3 on Tumbleweed
  * Use SLE15 python module pythons on 15.x
- Build PEP517 wheel</changelog>
  <changelog author="Andreas Schneider &lt;asn@cryptomilk.org&gt;" date="1709380800">- Update to version 1.3.9
  * https://gitlab.com/mailman/hyperkitty/-/releases/1.3.9
- Removed mistune3.patch</changelog>
  <changelog author="Andreas Schneider &lt;asn@cryptomilk.org&gt;" date="1719144000">- Update to version 1.3.10
  * https://gitlab.com/mailman/hyperkitty/-/releases/1.3.10</changelog>
  <changelog author="Georg Pfuetzenreuter &lt;mail+rpm@georg-pfuetzenreuter.net&gt;" date="1721304000">- Add gl-mr635-empty_attachment.patch to resolve corrupted archive
  downloads on mails with empty attachments</changelog>
  <changelog author="Andreas Schneider &lt;asn@cryptomilk.org&gt;" date="1726056000">- Update to version 1.3.11
  * https://gitlab.com/mailman/hyperkitty/-/blob/1.3.11/doc/news.rst
- Removed GPG signature as the download links don't work
- Removed requirement for pytz</changelog>
  <changelog author="Andreas Schneider &lt;asn@cryptomilk.org&gt;" date="1726920000">- Update to version 1.3.12
  * https://gitlab.com/mailman/hyperkitty/-/blob/1.3.12/doc/news.rst
    or packaged news.rst
- Removed gl-mr635-empty_attachment.patch</changelog>
  <changelog author="Mark&#xE9;ta Machov&#xE1; &lt;mmachova@suse.com&gt;" date="1730980800">- Minor tweaks in spec to fix build</changelog>
</package>
<package pkgid="4a6995ac5a7ca95d87ef77add19e68df43cd2d2abbe237e85c690144be38ee6d22522ac0f8d76c714fe0d8e4cb118f5acf34246cfb4917a6df4854d0e210b153" name="IPAddress" arch="noarch">
  <version epoch="0" ver="5.5.1" rel="1.0.2.1.sr20241103"/>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1646654400">- Initial packaging of IPAddress 5.3.3</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1694606400">- Reproducible builds: produce reproducible manifest with bnd</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1708516800">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1730980800">- Upgrade to version 5.5.1
  * Fixes of 5.3.4:
    + a fix to avoid ClassCastException when converting IPv4-mapped
    address to java.net.Inet6Address (#73)
    + fixed the creation of HostName from an unresolved
    compressed-IPv6 socket address (#74)
    + added IPAddressString.isIPv4Mapped for issue #75
    + fixed a class-loading issue with string parsing (#79)
    + removed AddressDivision.getDivisionValueCount() and
    AddressDivision.getDivisionPrefixCount(int) because of
    potential overflow with divisions 63 or 64 bits long. If you
    have a segment, use getValueCount(), or with IPAddressSegment
    use getPrefixValueCount(int), which both return int.
    Otherwise, use getPrefixCount(int) or getCount() which return
    BigInteger
    + fixed issues with comparing non-standard division groupings
    with address comparators
    + added verification when host-masking multiple-valued segments
    + added verification when splitting IPv6AddressSegment
    + fixed check when reversing per-byte multiple-valued division
    + fixed trie-printing method option withNonAddedKeys
    + fixed an issue with serialization of parsed hosts with
    qualifiers
    + added control over parsing empty zones (a zone specifier
    followed by no zone)
    + added a small fix to host name parsing some unusual host names
    + a fix to IPv4AddressSection.toMaxHost
    + fixed a rare synchronization issue when generating division
    strings in AddressDivisionBase
  * Fixes of 5.4.0:
    + added PrefixBlockAllocator for automatic CIDR prefix block
    allocation
    + added AddedTree and AssociativeAddedTree classes for expanded
    constructAddedNodesTree methods
    + added getBlockSize and getBitsForCount in AddressItem
    + added matchUnordered and matchOrdered in Address
    + eliminated invalid AddressValueException when joining a range
    with the IPv4 max value to an IPv6 range (#86)
    + fix to generation of strings from parsed address data (#87)
    + fix to IPv4 address primitive int upper value generation (#96)
  * Fix of 5.4.1:
    + fix to invalid radix argument infinite loop
    (#118, CVE-2023-50570)
  * Fixes of 5.4.2:
    + removed unnecessary SDK dependency incompatible with Java 8
    that was introduced with version 5.4.1 (#121)
  * Fixes of 5.5.0:
    + added collection types for dual IPv4/v6 tries and for dual
    IPv4/v6 associative tries, issue #103
    + trie performance improvements for all trie operations
    + added shortestPrefixMatch trie methods
    + added enumerate methods, the inverse of the increment methods,
    to find the position of an address in a subnet, or to find
    the distance between two addresses
    + added an increment method accepting a BigInteger argument to
    IPv6Address and IPv6AddressSection
    + added the ability to construct an IPv6Address from two longs
    + added replace methods with address section parameter to
    address classes
    + added overlaps methods to check for overlapping subnets, and
    for checking sequential range overlap with a subnet
    + added floor/lower/ceiling/higher methods to the address trie
    types, these methods previously accessible only from trie sets
    + added the extraneous digits IPv4 parsing option
    allow_inet_aton_extraneous_digits (#105)
  * Fixes of 5.5.1:
    + added new merge functions mergeToDualPrefixBlocks and
    mergeToDualSequentialBlocks for combined IPv4/IPv6 merging
    + added public constructors accepting message strings to
    AddressValueException and IncompatibleAddressException (#127)
    + removed caching functionality from containingFirstIterator,
    use all-node containingFirstAllNodeIterator instead</changelog>
</package>
<package pkgid="a37675c7689c43c1b50402f568948f673c97c1429c1fb380b0819f08e3b0cd6a61b826e32dad27701657e7c7c19bc6eae5cc3be896e5db14bea2d7098bf2f655" name="IPAddress" arch="src">
  <version epoch="0" ver="5.5.1" rel="1.0.2.1.sr20241103"/>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1646654400">- Initial packaging of IPAddress 5.3.3</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1694606400">- Reproducible builds: produce reproducible manifest with bnd</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1708516800">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1730980800">- Upgrade to version 5.5.1
  * Fixes of 5.3.4:
    + a fix to avoid ClassCastException when converting IPv4-mapped
    address to java.net.Inet6Address (#73)
    + fixed the creation of HostName from an unresolved
    compressed-IPv6 socket address (#74)
    + added IPAddressString.isIPv4Mapped for issue #75
    + fixed a class-loading issue with string parsing (#79)
    + removed AddressDivision.getDivisionValueCount() and
    AddressDivision.getDivisionPrefixCount(int) because of
    potential overflow with divisions 63 or 64 bits long. If you
    have a segment, use getValueCount(), or with IPAddressSegment
    use getPrefixValueCount(int), which both return int.
    Otherwise, use getPrefixCount(int) or getCount() which return
    BigInteger
    + fixed issues with comparing non-standard division groupings
    with address comparators
    + added verification when host-masking multiple-valued segments
    + added verification when splitting IPv6AddressSegment
    + fixed check when reversing per-byte multiple-valued division
    + fixed trie-printing method option withNonAddedKeys
    + fixed an issue with serialization of parsed hosts with
    qualifiers
    + added control over parsing empty zones (a zone specifier
    followed by no zone)
    + added a small fix to host name parsing some unusual host names
    + a fix to IPv4AddressSection.toMaxHost
    + fixed a rare synchronization issue when generating division
    strings in AddressDivisionBase
  * Fixes of 5.4.0:
    + added PrefixBlockAllocator for automatic CIDR prefix block
    allocation
    + added AddedTree and AssociativeAddedTree classes for expanded
    constructAddedNodesTree methods
    + added getBlockSize and getBitsForCount in AddressItem
    + added matchUnordered and matchOrdered in Address
    + eliminated invalid AddressValueException when joining a range
    with the IPv4 max value to an IPv6 range (#86)
    + fix to generation of strings from parsed address data (#87)
    + fix to IPv4 address primitive int upper value generation (#96)
  * Fix of 5.4.1:
    + fix to invalid radix argument infinite loop
    (#118, CVE-2023-50570)
  * Fixes of 5.4.2:
    + removed unnecessary SDK dependency incompatible with Java 8
    that was introduced with version 5.4.1 (#121)
  * Fixes of 5.5.0:
    + added collection types for dual IPv4/v6 tries and for dual
    IPv4/v6 associative tries, issue #103
    + trie performance improvements for all trie operations
    + added shortestPrefixMatch trie methods
    + added enumerate methods, the inverse of the increment methods,
    to find the position of an address in a subnet, or to find
    the distance between two addresses
    + added an increment method accepting a BigInteger argument to
    IPv6Address and IPv6AddressSection
    + added the ability to construct an IPv6Address from two longs
    + added replace methods with address section parameter to
    address classes
    + added overlaps methods to check for overlapping subnets, and
    for checking sequential range overlap with a subnet
    + added floor/lower/ceiling/higher methods to the address trie
    types, these methods previously accessible only from trie sets
    + added the extraneous digits IPv4 parsing option
    allow_inet_aton_extraneous_digits (#105)
  * Fixes of 5.5.1:
    + added new merge functions mergeToDualPrefixBlocks and
    mergeToDualSequentialBlocks for combined IPv4/IPv6 merging
    + added public constructors accepting message strings to
    AddressValueException and IncompatibleAddressException (#127)
    + removed caching functionality from containingFirstIterator,
    use all-node containingFirstAllNodeIterator instead</changelog>
</package>
<package pkgid="d28f451f820abb3e1c367b2a1cb19d32f9cb5e9552bbac13341e1a69319b62eb403dff8b35532bcd47ff9257acdf2b8bf1dbc73e31f500b27e9214984ef8c0ec" name="IPAddress-javadoc" arch="noarch">
  <version epoch="0" ver="5.5.1" rel="1.0.2.1.sr20241103"/>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1646654400">- Initial packaging of IPAddress 5.3.3</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1694606400">- Reproducible builds: produce reproducible manifest with bnd</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1708516800">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1730980800">- Upgrade to version 5.5.1
  * Fixes of 5.3.4:
    + a fix to avoid ClassCastException when converting IPv4-mapped
    address to java.net.Inet6Address (#73)
    + fixed the creation of HostName from an unresolved
    compressed-IPv6 socket address (#74)
    + added IPAddressString.isIPv4Mapped for issue #75
    + fixed a class-loading issue with string parsing (#79)
    + removed AddressDivision.getDivisionValueCount() and
    AddressDivision.getDivisionPrefixCount(int) because of
    potential overflow with divisions 63 or 64 bits long. If you
    have a segment, use getValueCount(), or with IPAddressSegment
    use getPrefixValueCount(int), which both return int.
    Otherwise, use getPrefixCount(int) or getCount() which return
    BigInteger
    + fixed issues with comparing non-standard division groupings
    with address comparators
    + added verification when host-masking multiple-valued segments
    + added verification when splitting IPv6AddressSegment
    + fixed check when reversing per-byte multiple-valued division
    + fixed trie-printing method option withNonAddedKeys
    + fixed an issue with serialization of parsed hosts with
    qualifiers
    + added control over parsing empty zones (a zone specifier
    followed by no zone)
    + added a small fix to host name parsing some unusual host names
    + a fix to IPv4AddressSection.toMaxHost
    + fixed a rare synchronization issue when generating division
    strings in AddressDivisionBase
  * Fixes of 5.4.0:
    + added PrefixBlockAllocator for automatic CIDR prefix block
    allocation
    + added AddedTree and AssociativeAddedTree classes for expanded
    constructAddedNodesTree methods
    + added getBlockSize and getBitsForCount in AddressItem
    + added matchUnordered and matchOrdered in Address
    + eliminated invalid AddressValueException when joining a range
    with the IPv4 max value to an IPv6 range (#86)
    + fix to generation of strings from parsed address data (#87)
    + fix to IPv4 address primitive int upper value generation (#96)
  * Fix of 5.4.1:
    + fix to invalid radix argument infinite loop
    (#118, CVE-2023-50570)
  * Fixes of 5.4.2:
    + removed unnecessary SDK dependency incompatible with Java 8
    that was introduced with version 5.4.1 (#121)
  * Fixes of 5.5.0:
    + added collection types for dual IPv4/v6 tries and for dual
    IPv4/v6 associative tries, issue #103
    + trie performance improvements for all trie operations
    + added shortestPrefixMatch trie methods
    + added enumerate methods, the inverse of the increment methods,
    to find the position of an address in a subnet, or to find
    the distance between two addresses
    + added an increment method accepting a BigInteger argument to
    IPv6Address and IPv6AddressSection
    + added the ability to construct an IPv6Address from two longs
    + added replace methods with address section parameter to
    address classes
    + added overlaps methods to check for overlapping subnets, and
    for checking sequential range overlap with a subnet
    + added floor/lower/ceiling/higher methods to the address trie
    types, these methods previously accessible only from trie sets
    + added the extraneous digits IPv4 parsing option
    allow_inet_aton_extraneous_digits (#105)
  * Fixes of 5.5.1:
    + added new merge functions mergeToDualPrefixBlocks and
    mergeToDualSequentialBlocks for combined IPv4/IPv6 merging
    + added public constructors accepting message strings to
    AddressValueException and IncompatibleAddressException (#127)
    + removed caching functionality from containingFirstIterator,
    use all-node containingFirstAllNodeIterator instead</changelog>
</package>
<package pkgid="47e42bfebdc21a65afbbee96977b9f77c9d2b3f3f882d919b507fa018ce98dbf0362a00667d4dea13834d7a157055701ae870b150bf1d105012ff79319aac364" name="ImageMagick" arch="i586">
  <version epoch="0" ver="7.1.1.36" rel="1.1"/>
  <changelog author="munix9@googlemail.com" date="1705233600">- Fix incomplete removal of update-alternatives for config
- Replace obsolete 'otherproviders(imagick-%{config_spec})' with
  'Conflicts: imagick-%{config_spec}'</changelog>
  <changelog author="pgajdos@suse.com" date="1705320000">- use correct policy.xml</changelog>
  <changelog author="pgajdos@suse.com" date="1705406400">- only one configuration again, based on upstream 'secure' policy
- other upstream policies packaged in documentation</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1705838400">- version update to 7.1.1.27
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1707652800">- version update to 7.1.1.28
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Michael Vetter &lt;mvetter@suse.com&gt;" date="1708603200">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1709035200">- version update to 7.1.1.29
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709380800">- We can not replace a symlink with a directory on the directly
  Unregister the whole group manually in %pre with
  update-alternatives. (boo#1220818)
  Restore Requires(pre) on update-alternatives for the mean time.</changelog>
  <changelog author="pgajdos@suse.com" date="1709553600">- enable SVG again
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711022400">- allow delegates to be executed, was disabled by default policy
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711108800">- allow stdin/stdout
- modified patches
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1712577600">- version update to 7.1.1.30
  * install perl module into user-specified prefix by @bugfood in #7192
  * Fix bmp option to bypass file size check by @OnTheList-1 in #7194
  * add support for encoding/decoding ultrahdr images by @aayushsoni111 in #7198
  * Updates to uhdr.c by @aayushsoni111 in #7217
- added patches
  fix https://github.com/ImageMagick/ImageMagick/issues/7230
  + ImageMagick-wmflite-detection.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713182400">- relax list-length resource limit, fixes build of python-Wand
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713787200">- version update to 7.1.1.31
  * Convert big PDF documents is slow #7263
  * Update release.yml #7258
  * Update README.md #7245
  * uhdr.c: verify the availability of error message before accessing it #7229
- removed patches
  - ImageMagick-wmflite-detection.patch (upstreamed)
  `</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1714910400">- version update to 7.1.1.32
  * Fix GIF ICC profile reading #7282
  * uhdr.c: add support for rgb inputs #7273</changelog>
  <changelog author="pgajdos@suse.com" date="1715860800">- reverted update-alternatives usage removal [bsc#1122033][bsc#1220818]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1716638400">- version update to 7.1.1.33
  * Fix typo in #7294
  * Bump azure/trusted-signing-action from 0.3.16 to 0.3.18 in #7325
  * Bump caphyon/advinst-github-action from 1.1 to 2.0 in #7326
- added patch
  + ImageMagick-update-image-signature.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1719144000">- version update to 7.1.1.34
  * Bump azure/trusted-signing-action from 0.3.18 to 0.3.19 in #7348
  * Fix a typo in convert deprecation warning in #7383
  * Bump azure/trusted-signing-action from 0.3.19 to 0.3.20 in #7388
  * Updated FontConfig query to include font index, fixing (#7374) in #7409
- removed patch (upstreamed)
  - ImageMagick-update-image-signature.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1721908800">- version update to 7.1.1.35
  * Also set dpi-x and dpi-y when running rsvg-convert. eac001f
  * convert sub-command is deprecated d67039e
  * only operators should disable "identify ping" (ImageMagick/ImageMagick#7441) a262192
  * fix compiler error ecc21c7
  * -outdir deprecated 9980efa
  * Get the correct width and height when heic:preserve-orientation is set to true. ed3a0dd
  * Set heic image orientation using transform information. ba470aa
  * Exit earlier when the symlink could not be created when invoking the svg:decode delegate. 8a48edd
  * Fixed MSYS2 build error. 3b22378
  * Also set the DNG properties when pinging the image. fc1c61b
  * Silence warning when lqr delegate is disabled. ae0d69a
  * Added version check for the heif_properties.h include. 656b4d2
  * Make sure we always use the i64 version of the "file methods" on Windows. b3e8a78
  * Changed defines to use method instead of a define. 75b66c4
  * Changes due to upgrade of libheif. 841f033
  * smooth the rendering of an ellipse (ImageMagick/ImageMagick#7465) 1bfce2a</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- version update to 7.1.1.36
  * uhdr.c: default initialize range field for hdr/sdr intent inputs to
    enc by @aayushsoni111 in #7482
  * Fixed typo in documentation of MagickAdaptiveBlurImage by @JonahEMorgan
    in #7500
  * Silence warning when freetype delegate is disabled. by @niclet in #7515</changelog>
</package>
<package pkgid="737564230b2c0f1b2503294f186cb1c16120991a12a2919bc1ece7cd98df7e32b0a7035b1f352c72aaaa45bf9c5e13f36a2f29a88964c6b96c7a57b666c6dfd8" name="ImageMagick" arch="src">
  <version epoch="0" ver="7.1.1.36" rel="1.1"/>
  <changelog author="munix9@googlemail.com" date="1705233600">- Fix incomplete removal of update-alternatives for config
- Replace obsolete 'otherproviders(imagick-%{config_spec})' with
  'Conflicts: imagick-%{config_spec}'</changelog>
  <changelog author="pgajdos@suse.com" date="1705320000">- use correct policy.xml</changelog>
  <changelog author="pgajdos@suse.com" date="1705406400">- only one configuration again, based on upstream 'secure' policy
- other upstream policies packaged in documentation</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1705838400">- version update to 7.1.1.27
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1707652800">- version update to 7.1.1.28
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Michael Vetter &lt;mvetter@suse.com&gt;" date="1708603200">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1709035200">- version update to 7.1.1.29
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709380800">- We can not replace a symlink with a directory on the directly
  Unregister the whole group manually in %pre with
  update-alternatives. (boo#1220818)
  Restore Requires(pre) on update-alternatives for the mean time.</changelog>
  <changelog author="pgajdos@suse.com" date="1709553600">- enable SVG again
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711022400">- allow delegates to be executed, was disabled by default policy
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711108800">- allow stdin/stdout
- modified patches
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1712577600">- version update to 7.1.1.30
  * install perl module into user-specified prefix by @bugfood in #7192
  * Fix bmp option to bypass file size check by @OnTheList-1 in #7194
  * add support for encoding/decoding ultrahdr images by @aayushsoni111 in #7198
  * Updates to uhdr.c by @aayushsoni111 in #7217
- added patches
  fix https://github.com/ImageMagick/ImageMagick/issues/7230
  + ImageMagick-wmflite-detection.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713182400">- relax list-length resource limit, fixes build of python-Wand
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713787200">- version update to 7.1.1.31
  * Convert big PDF documents is slow #7263
  * Update release.yml #7258
  * Update README.md #7245
  * uhdr.c: verify the availability of error message before accessing it #7229
- removed patches
  - ImageMagick-wmflite-detection.patch (upstreamed)
  `</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1714910400">- version update to 7.1.1.32
  * Fix GIF ICC profile reading #7282
  * uhdr.c: add support for rgb inputs #7273</changelog>
  <changelog author="pgajdos@suse.com" date="1715860800">- reverted update-alternatives usage removal [bsc#1122033][bsc#1220818]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1716638400">- version update to 7.1.1.33
  * Fix typo in #7294
  * Bump azure/trusted-signing-action from 0.3.16 to 0.3.18 in #7325
  * Bump caphyon/advinst-github-action from 1.1 to 2.0 in #7326
- added patch
  + ImageMagick-update-image-signature.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1719144000">- version update to 7.1.1.34
  * Bump azure/trusted-signing-action from 0.3.18 to 0.3.19 in #7348
  * Fix a typo in convert deprecation warning in #7383
  * Bump azure/trusted-signing-action from 0.3.19 to 0.3.20 in #7388
  * Updated FontConfig query to include font index, fixing (#7374) in #7409
- removed patch (upstreamed)
  - ImageMagick-update-image-signature.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1721908800">- version update to 7.1.1.35
  * Also set dpi-x and dpi-y when running rsvg-convert. eac001f
  * convert sub-command is deprecated d67039e
  * only operators should disable "identify ping" (ImageMagick/ImageMagick#7441) a262192
  * fix compiler error ecc21c7
  * -outdir deprecated 9980efa
  * Get the correct width and height when heic:preserve-orientation is set to true. ed3a0dd
  * Set heic image orientation using transform information. ba470aa
  * Exit earlier when the symlink could not be created when invoking the svg:decode delegate. 8a48edd
  * Fixed MSYS2 build error. 3b22378
  * Also set the DNG properties when pinging the image. fc1c61b
  * Silence warning when lqr delegate is disabled. ae0d69a
  * Added version check for the heif_properties.h include. 656b4d2
  * Make sure we always use the i64 version of the "file methods" on Windows. b3e8a78
  * Changed defines to use method instead of a define. 75b66c4
  * Changes due to upgrade of libheif. 841f033
  * smooth the rendering of an ellipse (ImageMagick/ImageMagick#7465) 1bfce2a</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- version update to 7.1.1.36
  * uhdr.c: default initialize range field for hdr/sdr intent inputs to
    enc by @aayushsoni111 in #7482
  * Fixed typo in documentation of MagickAdaptiveBlurImage by @JonahEMorgan
    in #7500
  * Silence warning when freetype delegate is disabled. by @niclet in #7515</changelog>
</package>
<package pkgid="0c6971a79185be9e47cd5b5ab25f3a84e6064b57be084a98efb8805082a3d0b5e667c15e81f972b3906e0ad92711b8138ed938e10a2234c75e86acf7a72cf947" name="ImageMagick" arch="x86_64">
  <version epoch="0" ver="7.1.1.36" rel="1.1"/>
  <changelog author="munix9@googlemail.com" date="1705233600">- Fix incomplete removal of update-alternatives for config
- Replace obsolete 'otherproviders(imagick-%{config_spec})' with
  'Conflicts: imagick-%{config_spec}'</changelog>
  <changelog author="pgajdos@suse.com" date="1705320000">- use correct policy.xml</changelog>
  <changelog author="pgajdos@suse.com" date="1705406400">- only one configuration again, based on upstream 'secure' policy
- other upstream policies packaged in documentation</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1705838400">- version update to 7.1.1.27
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1707652800">- version update to 7.1.1.28
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Michael Vetter &lt;mvetter@suse.com&gt;" date="1708603200">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1709035200">- version update to 7.1.1.29
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709380800">- We can not replace a symlink with a directory on the directly
  Unregister the whole group manually in %pre with
  update-alternatives. (boo#1220818)
  Restore Requires(pre) on update-alternatives for the mean time.</changelog>
  <changelog author="pgajdos@suse.com" date="1709553600">- enable SVG again
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711022400">- allow delegates to be executed, was disabled by default policy
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711108800">- allow stdin/stdout
- modified patches
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1712577600">- version update to 7.1.1.30
  * install perl module into user-specified prefix by @bugfood in #7192
  * Fix bmp option to bypass file size check by @OnTheList-1 in #7194
  * add support for encoding/decoding ultrahdr images by @aayushsoni111 in #7198
  * Updates to uhdr.c by @aayushsoni111 in #7217
- added patches
  fix https://github.com/ImageMagick/ImageMagick/issues/7230
  + ImageMagick-wmflite-detection.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713182400">- relax list-length resource limit, fixes build of python-Wand
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713787200">- version update to 7.1.1.31
  * Convert big PDF documents is slow #7263
  * Update release.yml #7258
  * Update README.md #7245
  * uhdr.c: verify the availability of error message before accessing it #7229
- removed patches
  - ImageMagick-wmflite-detection.patch (upstreamed)
  `</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1714910400">- version update to 7.1.1.32
  * Fix GIF ICC profile reading #7282
  * uhdr.c: add support for rgb inputs #7273</changelog>
  <changelog author="pgajdos@suse.com" date="1715860800">- reverted update-alternatives usage removal [bsc#1122033][bsc#1220818]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1716638400">- version update to 7.1.1.33
  * Fix typo in #7294
  * Bump azure/trusted-signing-action from 0.3.16 to 0.3.18 in #7325
  * Bump caphyon/advinst-github-action from 1.1 to 2.0 in #7326
- added patch
  + ImageMagick-update-image-signature.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1719144000">- version update to 7.1.1.34
  * Bump azure/trusted-signing-action from 0.3.18 to 0.3.19 in #7348
  * Fix a typo in convert deprecation warning in #7383
  * Bump azure/trusted-signing-action from 0.3.19 to 0.3.20 in #7388
  * Updated FontConfig query to include font index, fixing (#7374) in #7409
- removed patch (upstreamed)
  - ImageMagick-update-image-signature.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1721908800">- version update to 7.1.1.35
  * Also set dpi-x and dpi-y when running rsvg-convert. eac001f
  * convert sub-command is deprecated d67039e
  * only operators should disable "identify ping" (ImageMagick/ImageMagick#7441) a262192
  * fix compiler error ecc21c7
  * -outdir deprecated 9980efa
  * Get the correct width and height when heic:preserve-orientation is set to true. ed3a0dd
  * Set heic image orientation using transform information. ba470aa
  * Exit earlier when the symlink could not be created when invoking the svg:decode delegate. 8a48edd
  * Fixed MSYS2 build error. 3b22378
  * Also set the DNG properties when pinging the image. fc1c61b
  * Silence warning when lqr delegate is disabled. ae0d69a
  * Added version check for the heif_properties.h include. 656b4d2
  * Make sure we always use the i64 version of the "file methods" on Windows. b3e8a78
  * Changed defines to use method instead of a define. 75b66c4
  * Changes due to upgrade of libheif. 841f033
  * smooth the rendering of an ellipse (ImageMagick/ImageMagick#7465) 1bfce2a</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- version update to 7.1.1.36
  * uhdr.c: default initialize range field for hdr/sdr intent inputs to
    enc by @aayushsoni111 in #7482
  * Fixed typo in documentation of MagickAdaptiveBlurImage by @JonahEMorgan
    in #7500
  * Silence warning when freetype delegate is disabled. by @niclet in #7515</changelog>
</package>
<package pkgid="116b866a9a9211d28dae077af5e08ba44a4ac50e392e2d32de0bfef8ae8030a105b7e04d4b42c8d4fe282d26f4ef4c4f38f2f57a9ea63d72ebb16972ad33f33d" name="ImageMagick" arch="i586">
  <version epoch="0" ver="7.1.1.37" rel="1.0.4.1.sr20240803"/>
  <changelog author="pgajdos@suse.com" date="1705320000">- use correct policy.xml</changelog>
  <changelog author="pgajdos@suse.com" date="1705406400">- only one configuration again, based on upstream 'secure' policy
- other upstream policies packaged in documentation</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1705838400">- version update to 7.1.1.27
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1707652800">- version update to 7.1.1.28
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Michael Vetter &lt;mvetter@suse.com&gt;" date="1708603200">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1709035200">- version update to 7.1.1.29
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709380800">- We can not replace a symlink with a directory on the directly
  Unregister the whole group manually in %pre with
  update-alternatives. (boo#1220818)
  Restore Requires(pre) on update-alternatives for the mean time.</changelog>
  <changelog author="pgajdos@suse.com" date="1709553600">- enable SVG again
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711022400">- allow delegates to be executed, was disabled by default policy
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711108800">- allow stdin/stdout
- modified patches
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1712577600">- version update to 7.1.1.30
  * install perl module into user-specified prefix by @bugfood in #7192
  * Fix bmp option to bypass file size check by @OnTheList-1 in #7194
  * add support for encoding/decoding ultrahdr images by @aayushsoni111 in #7198
  * Updates to uhdr.c by @aayushsoni111 in #7217
- added patches
  fix https://github.com/ImageMagick/ImageMagick/issues/7230
  + ImageMagick-wmflite-detection.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713182400">- relax list-length resource limit, fixes build of python-Wand
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713787200">- version update to 7.1.1.31
  * Convert big PDF documents is slow #7263
  * Update release.yml #7258
  * Update README.md #7245
  * uhdr.c: verify the availability of error message before accessing it #7229
- removed patches
  - ImageMagick-wmflite-detection.patch (upstreamed)
  `</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1714910400">- version update to 7.1.1.32
  * Fix GIF ICC profile reading #7282
  * uhdr.c: add support for rgb inputs #7273</changelog>
  <changelog author="pgajdos@suse.com" date="1715860800">- reverted update-alternatives usage removal [bsc#1122033][bsc#1220818]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1716638400">- version update to 7.1.1.33
  * Fix typo in #7294
  * Bump azure/trusted-signing-action from 0.3.16 to 0.3.18 in #7325
  * Bump caphyon/advinst-github-action from 1.1 to 2.0 in #7326
- added patch
  + ImageMagick-update-image-signature.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1719144000">- version update to 7.1.1.34
  * Bump azure/trusted-signing-action from 0.3.18 to 0.3.19 in #7348
  * Fix a typo in convert deprecation warning in #7383
  * Bump azure/trusted-signing-action from 0.3.19 to 0.3.20 in #7388
  * Updated FontConfig query to include font index, fixing (#7374) in #7409
- removed patch (upstreamed)
  - ImageMagick-update-image-signature.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1721908800">- version update to 7.1.1.35
  * Also set dpi-x and dpi-y when running rsvg-convert. eac001f
  * convert sub-command is deprecated d67039e
  * only operators should disable "identify ping" (ImageMagick/ImageMagick#7441) a262192
  * fix compiler error ecc21c7
  * -outdir deprecated 9980efa
  * Get the correct width and height when heic:preserve-orientation is set to true. ed3a0dd
  * Set heic image orientation using transform information. ba470aa
  * Exit earlier when the symlink could not be created when invoking the svg:decode delegate. 8a48edd
  * Fixed MSYS2 build error. 3b22378
  * Also set the DNG properties when pinging the image. fc1c61b
  * Silence warning when lqr delegate is disabled. ae0d69a
  * Added version check for the heif_properties.h include. 656b4d2
  * Make sure we always use the i64 version of the "file methods" on Windows. b3e8a78
  * Changed defines to use method instead of a define. 75b66c4
  * Changes due to upgrade of libheif. 841f033
  * smooth the rendering of an ellipse (ImageMagick/ImageMagick#7465) 1bfce2a</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- version update to 7.1.1.36
  * uhdr.c: default initialize range field for hdr/sdr intent inputs to
    enc by @aayushsoni111 in #7482
  * Fixed typo in documentation of MagickAdaptiveBlurImage by @JonahEMorgan
    in #7500
  * Silence warning when freetype delegate is disabled. by @niclet in #7515</changelog>
  <changelog author="pgajdos@suse.com" date="1724760000">- version update to 7.1.1.37
  * Bump azure/trusted-signing-action from 0.3.20 to 0.4.0 #7518
  * Silence warning and fix HEIC_COMPUTE_NUMERIC_VERSION definition when heic delegate is disabled. #7516
  * protect macro arguments with parens 86cb2b1
  * eliminate compiler warnings d90d8b4
  * correct copyright year 115271e
  * Ignore multiple exif and xmp profiles for the same jxl frame and fix reading those profiles per frame. c301208
  * read/write in chunks fff3058
  * optimize fwrite() arguments ada6785
  * Renamed Output folder to Artifacts. 2a69677
  * cancel interactive window selection with right button press ea2a2db
  * cosmetic 712bde4
  * eliminate compiler warning 9a9a25c
  * eliminate compiler warning 0bd1687
  * Make images mandatory in the issue template. c01fd37
  * Added extra header detection for avif files. 9fc0590
  * allow SeekBlob() to set an offset beyond the end of the blob 27c3f99
  * be less forgiving for invalid image indexes 25db2e5
  * Fixed problem with empty macros (#7562) 9fda5f2
  * Added missing null checks for RequestOpenCLDevice. f85448e
  * Added missing null check for AcquireOpenCLCommandQueue. 295e9c8
  * persist app1 jpeg profile (ImageMagick/ImageMagick#4713) f0357c7
  * Fixed build error. b3dd431
  * Remove some of the dependencies for the macos-13 build. d0bce95
  * parentheses is the plural of parenthesis 1fac80a
  * distribute quantization error for -dither FloydSteinberg -depth 5b2825b
  * release 8a0da9f
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565</changelog>
</package>
<package pkgid="7a2b12a782d4aca9f4e157fd44627adfebc0fc597bfd020acf27a6b1f7c61ad3a1fd8048bff098e891810eec6dee1a4c9e72fbcb2ddd5c930843beb242d04b73" name="ImageMagick" arch="src">
  <version epoch="0" ver="7.1.1.37" rel="1.0.4.1.sr20240803"/>
  <changelog author="pgajdos@suse.com" date="1705320000">- use correct policy.xml</changelog>
  <changelog author="pgajdos@suse.com" date="1705406400">- only one configuration again, based on upstream 'secure' policy
- other upstream policies packaged in documentation</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1705838400">- version update to 7.1.1.27
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1707652800">- version update to 7.1.1.28
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Michael Vetter &lt;mvetter@suse.com&gt;" date="1708603200">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1709035200">- version update to 7.1.1.29
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709380800">- We can not replace a symlink with a directory on the directly
  Unregister the whole group manually in %pre with
  update-alternatives. (boo#1220818)
  Restore Requires(pre) on update-alternatives for the mean time.</changelog>
  <changelog author="pgajdos@suse.com" date="1709553600">- enable SVG again
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711022400">- allow delegates to be executed, was disabled by default policy
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711108800">- allow stdin/stdout
- modified patches
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1712577600">- version update to 7.1.1.30
  * install perl module into user-specified prefix by @bugfood in #7192
  * Fix bmp option to bypass file size check by @OnTheList-1 in #7194
  * add support for encoding/decoding ultrahdr images by @aayushsoni111 in #7198
  * Updates to uhdr.c by @aayushsoni111 in #7217
- added patches
  fix https://github.com/ImageMagick/ImageMagick/issues/7230
  + ImageMagick-wmflite-detection.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713182400">- relax list-length resource limit, fixes build of python-Wand
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713787200">- version update to 7.1.1.31
  * Convert big PDF documents is slow #7263
  * Update release.yml #7258
  * Update README.md #7245
  * uhdr.c: verify the availability of error message before accessing it #7229
- removed patches
  - ImageMagick-wmflite-detection.patch (upstreamed)
  `</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1714910400">- version update to 7.1.1.32
  * Fix GIF ICC profile reading #7282
  * uhdr.c: add support for rgb inputs #7273</changelog>
  <changelog author="pgajdos@suse.com" date="1715860800">- reverted update-alternatives usage removal [bsc#1122033][bsc#1220818]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1716638400">- version update to 7.1.1.33
  * Fix typo in #7294
  * Bump azure/trusted-signing-action from 0.3.16 to 0.3.18 in #7325
  * Bump caphyon/advinst-github-action from 1.1 to 2.0 in #7326
- added patch
  + ImageMagick-update-image-signature.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1719144000">- version update to 7.1.1.34
  * Bump azure/trusted-signing-action from 0.3.18 to 0.3.19 in #7348
  * Fix a typo in convert deprecation warning in #7383
  * Bump azure/trusted-signing-action from 0.3.19 to 0.3.20 in #7388
  * Updated FontConfig query to include font index, fixing (#7374) in #7409
- removed patch (upstreamed)
  - ImageMagick-update-image-signature.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1721908800">- version update to 7.1.1.35
  * Also set dpi-x and dpi-y when running rsvg-convert. eac001f
  * convert sub-command is deprecated d67039e
  * only operators should disable "identify ping" (ImageMagick/ImageMagick#7441) a262192
  * fix compiler error ecc21c7
  * -outdir deprecated 9980efa
  * Get the correct width and height when heic:preserve-orientation is set to true. ed3a0dd
  * Set heic image orientation using transform information. ba470aa
  * Exit earlier when the symlink could not be created when invoking the svg:decode delegate. 8a48edd
  * Fixed MSYS2 build error. 3b22378
  * Also set the DNG properties when pinging the image. fc1c61b
  * Silence warning when lqr delegate is disabled. ae0d69a
  * Added version check for the heif_properties.h include. 656b4d2
  * Make sure we always use the i64 version of the "file methods" on Windows. b3e8a78
  * Changed defines to use method instead of a define. 75b66c4
  * Changes due to upgrade of libheif. 841f033
  * smooth the rendering of an ellipse (ImageMagick/ImageMagick#7465) 1bfce2a</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- version update to 7.1.1.36
  * uhdr.c: default initialize range field for hdr/sdr intent inputs to
    enc by @aayushsoni111 in #7482
  * Fixed typo in documentation of MagickAdaptiveBlurImage by @JonahEMorgan
    in #7500
  * Silence warning when freetype delegate is disabled. by @niclet in #7515</changelog>
  <changelog author="pgajdos@suse.com" date="1724760000">- version update to 7.1.1.37
  * Bump azure/trusted-signing-action from 0.3.20 to 0.4.0 #7518
  * Silence warning and fix HEIC_COMPUTE_NUMERIC_VERSION definition when heic delegate is disabled. #7516
  * protect macro arguments with parens 86cb2b1
  * eliminate compiler warnings d90d8b4
  * correct copyright year 115271e
  * Ignore multiple exif and xmp profiles for the same jxl frame and fix reading those profiles per frame. c301208
  * read/write in chunks fff3058
  * optimize fwrite() arguments ada6785
  * Renamed Output folder to Artifacts. 2a69677
  * cancel interactive window selection with right button press ea2a2db
  * cosmetic 712bde4
  * eliminate compiler warning 9a9a25c
  * eliminate compiler warning 0bd1687
  * Make images mandatory in the issue template. c01fd37
  * Added extra header detection for avif files. 9fc0590
  * allow SeekBlob() to set an offset beyond the end of the blob 27c3f99
  * be less forgiving for invalid image indexes 25db2e5
  * Fixed problem with empty macros (#7562) 9fda5f2
  * Added missing null checks for RequestOpenCLDevice. f85448e
  * Added missing null check for AcquireOpenCLCommandQueue. 295e9c8
  * persist app1 jpeg profile (ImageMagick/ImageMagick#4713) f0357c7
  * Fixed build error. b3dd431
  * Remove some of the dependencies for the macos-13 build. d0bce95
  * parentheses is the plural of parenthesis 1fac80a
  * distribute quantization error for -dither FloydSteinberg -depth 5b2825b
  * release 8a0da9f
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565</changelog>
</package>
<package pkgid="0102134b68eabb93f495771ef408cc0e2ec85d3ba81b97b3c6203851818cde1d3385d5653ee7876d6102bd16e5d9e231ac1446be57e2f0096db80c27876f014f" name="ImageMagick" arch="x86_64">
  <version epoch="0" ver="7.1.1.37" rel="1.0.4.1.sr20240803"/>
  <changelog author="pgajdos@suse.com" date="1705320000">- use correct policy.xml</changelog>
  <changelog author="pgajdos@suse.com" date="1705406400">- only one configuration again, based on upstream 'secure' policy
- other upstream policies packaged in documentation</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1705838400">- version update to 7.1.1.27
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1707652800">- version update to 7.1.1.28
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Michael Vetter &lt;mvetter@suse.com&gt;" date="1708603200">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1709035200">- version update to 7.1.1.29
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709380800">- We can not replace a symlink with a directory on the directly
  Unregister the whole group manually in %pre with
  update-alternatives. (boo#1220818)
  Restore Requires(pre) on update-alternatives for the mean time.</changelog>
  <changelog author="pgajdos@suse.com" date="1709553600">- enable SVG again
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711022400">- allow delegates to be executed, was disabled by default policy
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711108800">- allow stdin/stdout
- modified patches
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1712577600">- version update to 7.1.1.30
  * install perl module into user-specified prefix by @bugfood in #7192
  * Fix bmp option to bypass file size check by @OnTheList-1 in #7194
  * add support for encoding/decoding ultrahdr images by @aayushsoni111 in #7198
  * Updates to uhdr.c by @aayushsoni111 in #7217
- added patches
  fix https://github.com/ImageMagick/ImageMagick/issues/7230
  + ImageMagick-wmflite-detection.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713182400">- relax list-length resource limit, fixes build of python-Wand
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713787200">- version update to 7.1.1.31
  * Convert big PDF documents is slow #7263
  * Update release.yml #7258
  * Update README.md #7245
  * uhdr.c: verify the availability of error message before accessing it #7229
- removed patches
  - ImageMagick-wmflite-detection.patch (upstreamed)
  `</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1714910400">- version update to 7.1.1.32
  * Fix GIF ICC profile reading #7282
  * uhdr.c: add support for rgb inputs #7273</changelog>
  <changelog author="pgajdos@suse.com" date="1715860800">- reverted update-alternatives usage removal [bsc#1122033][bsc#1220818]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1716638400">- version update to 7.1.1.33
  * Fix typo in #7294
  * Bump azure/trusted-signing-action from 0.3.16 to 0.3.18 in #7325
  * Bump caphyon/advinst-github-action from 1.1 to 2.0 in #7326
- added patch
  + ImageMagick-update-image-signature.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1719144000">- version update to 7.1.1.34
  * Bump azure/trusted-signing-action from 0.3.18 to 0.3.19 in #7348
  * Fix a typo in convert deprecation warning in #7383
  * Bump azure/trusted-signing-action from 0.3.19 to 0.3.20 in #7388
  * Updated FontConfig query to include font index, fixing (#7374) in #7409
- removed patch (upstreamed)
  - ImageMagick-update-image-signature.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1721908800">- version update to 7.1.1.35
  * Also set dpi-x and dpi-y when running rsvg-convert. eac001f
  * convert sub-command is deprecated d67039e
  * only operators should disable "identify ping" (ImageMagick/ImageMagick#7441) a262192
  * fix compiler error ecc21c7
  * -outdir deprecated 9980efa
  * Get the correct width and height when heic:preserve-orientation is set to true. ed3a0dd
  * Set heic image orientation using transform information. ba470aa
  * Exit earlier when the symlink could not be created when invoking the svg:decode delegate. 8a48edd
  * Fixed MSYS2 build error. 3b22378
  * Also set the DNG properties when pinging the image. fc1c61b
  * Silence warning when lqr delegate is disabled. ae0d69a
  * Added version check for the heif_properties.h include. 656b4d2
  * Make sure we always use the i64 version of the "file methods" on Windows. b3e8a78
  * Changed defines to use method instead of a define. 75b66c4
  * Changes due to upgrade of libheif. 841f033
  * smooth the rendering of an ellipse (ImageMagick/ImageMagick#7465) 1bfce2a</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- version update to 7.1.1.36
  * uhdr.c: default initialize range field for hdr/sdr intent inputs to
    enc by @aayushsoni111 in #7482
  * Fixed typo in documentation of MagickAdaptiveBlurImage by @JonahEMorgan
    in #7500
  * Silence warning when freetype delegate is disabled. by @niclet in #7515</changelog>
  <changelog author="pgajdos@suse.com" date="1724760000">- version update to 7.1.1.37
  * Bump azure/trusted-signing-action from 0.3.20 to 0.4.0 #7518
  * Silence warning and fix HEIC_COMPUTE_NUMERIC_VERSION definition when heic delegate is disabled. #7516
  * protect macro arguments with parens 86cb2b1
  * eliminate compiler warnings d90d8b4
  * correct copyright year 115271e
  * Ignore multiple exif and xmp profiles for the same jxl frame and fix reading those profiles per frame. c301208
  * read/write in chunks fff3058
  * optimize fwrite() arguments ada6785
  * Renamed Output folder to Artifacts. 2a69677
  * cancel interactive window selection with right button press ea2a2db
  * cosmetic 712bde4
  * eliminate compiler warning 9a9a25c
  * eliminate compiler warning 0bd1687
  * Make images mandatory in the issue template. c01fd37
  * Added extra header detection for avif files. 9fc0590
  * allow SeekBlob() to set an offset beyond the end of the blob 27c3f99
  * be less forgiving for invalid image indexes 25db2e5
  * Fixed problem with empty macros (#7562) 9fda5f2
  * Added missing null checks for RequestOpenCLDevice. f85448e
  * Added missing null check for AcquireOpenCLCommandQueue. 295e9c8
  * persist app1 jpeg profile (ImageMagick/ImageMagick#4713) f0357c7
  * Fixed build error. b3dd431
  * Remove some of the dependencies for the macos-13 build. d0bce95
  * parentheses is the plural of parenthesis 1fac80a
  * distribute quantization error for -dither FloydSteinberg -depth 5b2825b
  * release 8a0da9f
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565</changelog>
</package>
<package pkgid="f32bd310aba5b22f4147df9b27ad7eb9c0f757ad5c46c54367622d2e43b7b3e6079da916e38a9e2aac3171ce19c461d5163a632b7271b6fabc86e06e6081c572" name="ImageMagick" arch="i586">
  <version epoch="0" ver="7.1.1.37" rel="1.1"/>
  <changelog author="pgajdos@suse.com" date="1705320000">- use correct policy.xml</changelog>
  <changelog author="pgajdos@suse.com" date="1705406400">- only one configuration again, based on upstream 'secure' policy
- other upstream policies packaged in documentation</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1705838400">- version update to 7.1.1.27
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1707652800">- version update to 7.1.1.28
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Michael Vetter &lt;mvetter@suse.com&gt;" date="1708603200">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1709035200">- version update to 7.1.1.29
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709380800">- We can not replace a symlink with a directory on the directly
  Unregister the whole group manually in %pre with
  update-alternatives. (boo#1220818)
  Restore Requires(pre) on update-alternatives for the mean time.</changelog>
  <changelog author="pgajdos@suse.com" date="1709553600">- enable SVG again
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711022400">- allow delegates to be executed, was disabled by default policy
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711108800">- allow stdin/stdout
- modified patches
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1712577600">- version update to 7.1.1.30
  * install perl module into user-specified prefix by @bugfood in #7192
  * Fix bmp option to bypass file size check by @OnTheList-1 in #7194
  * add support for encoding/decoding ultrahdr images by @aayushsoni111 in #7198
  * Updates to uhdr.c by @aayushsoni111 in #7217
- added patches
  fix https://github.com/ImageMagick/ImageMagick/issues/7230
  + ImageMagick-wmflite-detection.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713182400">- relax list-length resource limit, fixes build of python-Wand
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713787200">- version update to 7.1.1.31
  * Convert big PDF documents is slow #7263
  * Update release.yml #7258
  * Update README.md #7245
  * uhdr.c: verify the availability of error message before accessing it #7229
- removed patches
  - ImageMagick-wmflite-detection.patch (upstreamed)
  `</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1714910400">- version update to 7.1.1.32
  * Fix GIF ICC profile reading #7282
  * uhdr.c: add support for rgb inputs #7273</changelog>
  <changelog author="pgajdos@suse.com" date="1715860800">- reverted update-alternatives usage removal [bsc#1122033][bsc#1220818]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1716638400">- version update to 7.1.1.33
  * Fix typo in #7294
  * Bump azure/trusted-signing-action from 0.3.16 to 0.3.18 in #7325
  * Bump caphyon/advinst-github-action from 1.1 to 2.0 in #7326
- added patch
  + ImageMagick-update-image-signature.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1719144000">- version update to 7.1.1.34
  * Bump azure/trusted-signing-action from 0.3.18 to 0.3.19 in #7348
  * Fix a typo in convert deprecation warning in #7383
  * Bump azure/trusted-signing-action from 0.3.19 to 0.3.20 in #7388
  * Updated FontConfig query to include font index, fixing (#7374) in #7409
- removed patch (upstreamed)
  - ImageMagick-update-image-signature.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1721908800">- version update to 7.1.1.35
  * Also set dpi-x and dpi-y when running rsvg-convert. eac001f
  * convert sub-command is deprecated d67039e
  * only operators should disable "identify ping" (ImageMagick/ImageMagick#7441) a262192
  * fix compiler error ecc21c7
  * -outdir deprecated 9980efa
  * Get the correct width and height when heic:preserve-orientation is set to true. ed3a0dd
  * Set heic image orientation using transform information. ba470aa
  * Exit earlier when the symlink could not be created when invoking the svg:decode delegate. 8a48edd
  * Fixed MSYS2 build error. 3b22378
  * Also set the DNG properties when pinging the image. fc1c61b
  * Silence warning when lqr delegate is disabled. ae0d69a
  * Added version check for the heif_properties.h include. 656b4d2
  * Make sure we always use the i64 version of the "file methods" on Windows. b3e8a78
  * Changed defines to use method instead of a define. 75b66c4
  * Changes due to upgrade of libheif. 841f033
  * smooth the rendering of an ellipse (ImageMagick/ImageMagick#7465) 1bfce2a</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- version update to 7.1.1.36
  * uhdr.c: default initialize range field for hdr/sdr intent inputs to
    enc by @aayushsoni111 in #7482
  * Fixed typo in documentation of MagickAdaptiveBlurImage by @JonahEMorgan
    in #7500
  * Silence warning when freetype delegate is disabled. by @niclet in #7515</changelog>
  <changelog author="pgajdos@suse.com" date="1724760000">- version update to 7.1.1.37
  * Bump azure/trusted-signing-action from 0.3.20 to 0.4.0 #7518
  * Silence warning and fix HEIC_COMPUTE_NUMERIC_VERSION definition when heic delegate is disabled. #7516
  * protect macro arguments with parens 86cb2b1
  * eliminate compiler warnings d90d8b4
  * correct copyright year 115271e
  * Ignore multiple exif and xmp profiles for the same jxl frame and fix reading those profiles per frame. c301208
  * read/write in chunks fff3058
  * optimize fwrite() arguments ada6785
  * Renamed Output folder to Artifacts. 2a69677
  * cancel interactive window selection with right button press ea2a2db
  * cosmetic 712bde4
  * eliminate compiler warning 9a9a25c
  * eliminate compiler warning 0bd1687
  * Make images mandatory in the issue template. c01fd37
  * Added extra header detection for avif files. 9fc0590
  * allow SeekBlob() to set an offset beyond the end of the blob 27c3f99
  * be less forgiving for invalid image indexes 25db2e5
  * Fixed problem with empty macros (#7562) 9fda5f2
  * Added missing null checks for RequestOpenCLDevice. f85448e
  * Added missing null check for AcquireOpenCLCommandQueue. 295e9c8
  * persist app1 jpeg profile (ImageMagick/ImageMagick#4713) f0357c7
  * Fixed build error. b3dd431
  * Remove some of the dependencies for the macos-13 build. d0bce95
  * parentheses is the plural of parenthesis 1fac80a
  * distribute quantization error for -dither FloydSteinberg -depth 5b2825b
  * release 8a0da9f
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565</changelog>
</package>
<package pkgid="0c5b4cad3755e28bed0ed209da7a0a41778092b8a5fcc9485132f1b9a69ae32b41ffb3688f10659a2b9c4f8398e3f7f0da3310fe5099a991a35867b3db235b8a" name="ImageMagick" arch="src">
  <version epoch="0" ver="7.1.1.37" rel="1.1"/>
  <changelog author="pgajdos@suse.com" date="1705320000">- use correct policy.xml</changelog>
  <changelog author="pgajdos@suse.com" date="1705406400">- only one configuration again, based on upstream 'secure' policy
- other upstream policies packaged in documentation</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1705838400">- version update to 7.1.1.27
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1707652800">- version update to 7.1.1.28
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Michael Vetter &lt;mvetter@suse.com&gt;" date="1708603200">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1709035200">- version update to 7.1.1.29
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709380800">- We can not replace a symlink with a directory on the directly
  Unregister the whole group manually in %pre with
  update-alternatives. (boo#1220818)
  Restore Requires(pre) on update-alternatives for the mean time.</changelog>
  <changelog author="pgajdos@suse.com" date="1709553600">- enable SVG again
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711022400">- allow delegates to be executed, was disabled by default policy
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711108800">- allow stdin/stdout
- modified patches
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1712577600">- version update to 7.1.1.30
  * install perl module into user-specified prefix by @bugfood in #7192
  * Fix bmp option to bypass file size check by @OnTheList-1 in #7194
  * add support for encoding/decoding ultrahdr images by @aayushsoni111 in #7198
  * Updates to uhdr.c by @aayushsoni111 in #7217
- added patches
  fix https://github.com/ImageMagick/ImageMagick/issues/7230
  + ImageMagick-wmflite-detection.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713182400">- relax list-length resource limit, fixes build of python-Wand
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713787200">- version update to 7.1.1.31
  * Convert big PDF documents is slow #7263
  * Update release.yml #7258
  * Update README.md #7245
  * uhdr.c: verify the availability of error message before accessing it #7229
- removed patches
  - ImageMagick-wmflite-detection.patch (upstreamed)
  `</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1714910400">- version update to 7.1.1.32
  * Fix GIF ICC profile reading #7282
  * uhdr.c: add support for rgb inputs #7273</changelog>
  <changelog author="pgajdos@suse.com" date="1715860800">- reverted update-alternatives usage removal [bsc#1122033][bsc#1220818]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1716638400">- version update to 7.1.1.33
  * Fix typo in #7294
  * Bump azure/trusted-signing-action from 0.3.16 to 0.3.18 in #7325
  * Bump caphyon/advinst-github-action from 1.1 to 2.0 in #7326
- added patch
  + ImageMagick-update-image-signature.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1719144000">- version update to 7.1.1.34
  * Bump azure/trusted-signing-action from 0.3.18 to 0.3.19 in #7348
  * Fix a typo in convert deprecation warning in #7383
  * Bump azure/trusted-signing-action from 0.3.19 to 0.3.20 in #7388
  * Updated FontConfig query to include font index, fixing (#7374) in #7409
- removed patch (upstreamed)
  - ImageMagick-update-image-signature.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1721908800">- version update to 7.1.1.35
  * Also set dpi-x and dpi-y when running rsvg-convert. eac001f
  * convert sub-command is deprecated d67039e
  * only operators should disable "identify ping" (ImageMagick/ImageMagick#7441) a262192
  * fix compiler error ecc21c7
  * -outdir deprecated 9980efa
  * Get the correct width and height when heic:preserve-orientation is set to true. ed3a0dd
  * Set heic image orientation using transform information. ba470aa
  * Exit earlier when the symlink could not be created when invoking the svg:decode delegate. 8a48edd
  * Fixed MSYS2 build error. 3b22378
  * Also set the DNG properties when pinging the image. fc1c61b
  * Silence warning when lqr delegate is disabled. ae0d69a
  * Added version check for the heif_properties.h include. 656b4d2
  * Make sure we always use the i64 version of the "file methods" on Windows. b3e8a78
  * Changed defines to use method instead of a define. 75b66c4
  * Changes due to upgrade of libheif. 841f033
  * smooth the rendering of an ellipse (ImageMagick/ImageMagick#7465) 1bfce2a</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- version update to 7.1.1.36
  * uhdr.c: default initialize range field for hdr/sdr intent inputs to
    enc by @aayushsoni111 in #7482
  * Fixed typo in documentation of MagickAdaptiveBlurImage by @JonahEMorgan
    in #7500
  * Silence warning when freetype delegate is disabled. by @niclet in #7515</changelog>
  <changelog author="pgajdos@suse.com" date="1724760000">- version update to 7.1.1.37
  * Bump azure/trusted-signing-action from 0.3.20 to 0.4.0 #7518
  * Silence warning and fix HEIC_COMPUTE_NUMERIC_VERSION definition when heic delegate is disabled. #7516
  * protect macro arguments with parens 86cb2b1
  * eliminate compiler warnings d90d8b4
  * correct copyright year 115271e
  * Ignore multiple exif and xmp profiles for the same jxl frame and fix reading those profiles per frame. c301208
  * read/write in chunks fff3058
  * optimize fwrite() arguments ada6785
  * Renamed Output folder to Artifacts. 2a69677
  * cancel interactive window selection with right button press ea2a2db
  * cosmetic 712bde4
  * eliminate compiler warning 9a9a25c
  * eliminate compiler warning 0bd1687
  * Make images mandatory in the issue template. c01fd37
  * Added extra header detection for avif files. 9fc0590
  * allow SeekBlob() to set an offset beyond the end of the blob 27c3f99
  * be less forgiving for invalid image indexes 25db2e5
  * Fixed problem with empty macros (#7562) 9fda5f2
  * Added missing null checks for RequestOpenCLDevice. f85448e
  * Added missing null check for AcquireOpenCLCommandQueue. 295e9c8
  * persist app1 jpeg profile (ImageMagick/ImageMagick#4713) f0357c7
  * Fixed build error. b3dd431
  * Remove some of the dependencies for the macos-13 build. d0bce95
  * parentheses is the plural of parenthesis 1fac80a
  * distribute quantization error for -dither FloydSteinberg -depth 5b2825b
  * release 8a0da9f
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565</changelog>
</package>
<package pkgid="1c7da03af643d6dfca68d9125d1840b51ac381e5fe5a7ae35b32d8a6fa6fd00de9db6e940a9e4941bd6bdffa8d394a912c261b8b8a01a6c1bc496266adc95a33" name="ImageMagick" arch="x86_64">
  <version epoch="0" ver="7.1.1.37" rel="1.1"/>
  <changelog author="pgajdos@suse.com" date="1705320000">- use correct policy.xml</changelog>
  <changelog author="pgajdos@suse.com" date="1705406400">- only one configuration again, based on upstream 'secure' policy
- other upstream policies packaged in documentation</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1705838400">- version update to 7.1.1.27
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1707652800">- version update to 7.1.1.28
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Michael Vetter &lt;mvetter@suse.com&gt;" date="1708603200">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1709035200">- version update to 7.1.1.29
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709380800">- We can not replace a symlink with a directory on the directly
  Unregister the whole group manually in %pre with
  update-alternatives. (boo#1220818)
  Restore Requires(pre) on update-alternatives for the mean time.</changelog>
  <changelog author="pgajdos@suse.com" date="1709553600">- enable SVG again
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711022400">- allow delegates to be executed, was disabled by default policy
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711108800">- allow stdin/stdout
- modified patches
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1712577600">- version update to 7.1.1.30
  * install perl module into user-specified prefix by @bugfood in #7192
  * Fix bmp option to bypass file size check by @OnTheList-1 in #7194
  * add support for encoding/decoding ultrahdr images by @aayushsoni111 in #7198
  * Updates to uhdr.c by @aayushsoni111 in #7217
- added patches
  fix https://github.com/ImageMagick/ImageMagick/issues/7230
  + ImageMagick-wmflite-detection.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713182400">- relax list-length resource limit, fixes build of python-Wand
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713787200">- version update to 7.1.1.31
  * Convert big PDF documents is slow #7263
  * Update release.yml #7258
  * Update README.md #7245
  * uhdr.c: verify the availability of error message before accessing it #7229
- removed patches
  - ImageMagick-wmflite-detection.patch (upstreamed)
  `</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1714910400">- version update to 7.1.1.32
  * Fix GIF ICC profile reading #7282
  * uhdr.c: add support for rgb inputs #7273</changelog>
  <changelog author="pgajdos@suse.com" date="1715860800">- reverted update-alternatives usage removal [bsc#1122033][bsc#1220818]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1716638400">- version update to 7.1.1.33
  * Fix typo in #7294
  * Bump azure/trusted-signing-action from 0.3.16 to 0.3.18 in #7325
  * Bump caphyon/advinst-github-action from 1.1 to 2.0 in #7326
- added patch
  + ImageMagick-update-image-signature.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1719144000">- version update to 7.1.1.34
  * Bump azure/trusted-signing-action from 0.3.18 to 0.3.19 in #7348
  * Fix a typo in convert deprecation warning in #7383
  * Bump azure/trusted-signing-action from 0.3.19 to 0.3.20 in #7388
  * Updated FontConfig query to include font index, fixing (#7374) in #7409
- removed patch (upstreamed)
  - ImageMagick-update-image-signature.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1721908800">- version update to 7.1.1.35
  * Also set dpi-x and dpi-y when running rsvg-convert. eac001f
  * convert sub-command is deprecated d67039e
  * only operators should disable "identify ping" (ImageMagick/ImageMagick#7441) a262192
  * fix compiler error ecc21c7
  * -outdir deprecated 9980efa
  * Get the correct width and height when heic:preserve-orientation is set to true. ed3a0dd
  * Set heic image orientation using transform information. ba470aa
  * Exit earlier when the symlink could not be created when invoking the svg:decode delegate. 8a48edd
  * Fixed MSYS2 build error. 3b22378
  * Also set the DNG properties when pinging the image. fc1c61b
  * Silence warning when lqr delegate is disabled. ae0d69a
  * Added version check for the heif_properties.h include. 656b4d2
  * Make sure we always use the i64 version of the "file methods" on Windows. b3e8a78
  * Changed defines to use method instead of a define. 75b66c4
  * Changes due to upgrade of libheif. 841f033
  * smooth the rendering of an ellipse (ImageMagick/ImageMagick#7465) 1bfce2a</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- version update to 7.1.1.36
  * uhdr.c: default initialize range field for hdr/sdr intent inputs to
    enc by @aayushsoni111 in #7482
  * Fixed typo in documentation of MagickAdaptiveBlurImage by @JonahEMorgan
    in #7500
  * Silence warning when freetype delegate is disabled. by @niclet in #7515</changelog>
  <changelog author="pgajdos@suse.com" date="1724760000">- version update to 7.1.1.37
  * Bump azure/trusted-signing-action from 0.3.20 to 0.4.0 #7518
  * Silence warning and fix HEIC_COMPUTE_NUMERIC_VERSION definition when heic delegate is disabled. #7516
  * protect macro arguments with parens 86cb2b1
  * eliminate compiler warnings d90d8b4
  * correct copyright year 115271e
  * Ignore multiple exif and xmp profiles for the same jxl frame and fix reading those profiles per frame. c301208
  * read/write in chunks fff3058
  * optimize fwrite() arguments ada6785
  * Renamed Output folder to Artifacts. 2a69677
  * cancel interactive window selection with right button press ea2a2db
  * cosmetic 712bde4
  * eliminate compiler warning 9a9a25c
  * eliminate compiler warning 0bd1687
  * Make images mandatory in the issue template. c01fd37
  * Added extra header detection for avif files. 9fc0590
  * allow SeekBlob() to set an offset beyond the end of the blob 27c3f99
  * be less forgiving for invalid image indexes 25db2e5
  * Fixed problem with empty macros (#7562) 9fda5f2
  * Added missing null checks for RequestOpenCLDevice. f85448e
  * Added missing null check for AcquireOpenCLCommandQueue. 295e9c8
  * persist app1 jpeg profile (ImageMagick/ImageMagick#4713) f0357c7
  * Fixed build error. b3dd431
  * Remove some of the dependencies for the macos-13 build. d0bce95
  * parentheses is the plural of parenthesis 1fac80a
  * distribute quantization error for -dither FloydSteinberg -depth 5b2825b
  * release 8a0da9f
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565</changelog>
</package>
<package pkgid="b07bc90c9675097b10c7ca24a7cd31a2202a73880dde80444b497d9ea31b28a58cb10b39901bde3576da75dad283cf4f08094dd61b1c6a9feba03c110af15ab5" name="ImageMagick" arch="i586">
  <version epoch="0" ver="7.1.1.39" rel="1.1"/>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1705838400">- version update to 7.1.1.27
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1707652800">- version update to 7.1.1.28
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Michael Vetter &lt;mvetter@suse.com&gt;" date="1708603200">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1709035200">- version update to 7.1.1.29
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709380800">- We can not replace a symlink with a directory on the directly
  Unregister the whole group manually in %pre with
  update-alternatives. (boo#1220818)
  Restore Requires(pre) on update-alternatives for the mean time.</changelog>
  <changelog author="pgajdos@suse.com" date="1709553600">- enable SVG again
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711022400">- allow delegates to be executed, was disabled by default policy
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711108800">- allow stdin/stdout
- modified patches
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1712577600">- version update to 7.1.1.30
  * install perl module into user-specified prefix by @bugfood in #7192
  * Fix bmp option to bypass file size check by @OnTheList-1 in #7194
  * add support for encoding/decoding ultrahdr images by @aayushsoni111 in #7198
  * Updates to uhdr.c by @aayushsoni111 in #7217
- added patches
  fix https://github.com/ImageMagick/ImageMagick/issues/7230
  + ImageMagick-wmflite-detection.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713182400">- relax list-length resource limit, fixes build of python-Wand
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713787200">- version update to 7.1.1.31
  * Convert big PDF documents is slow #7263
  * Update release.yml #7258
  * Update README.md #7245
  * uhdr.c: verify the availability of error message before accessing it #7229
- removed patches
  - ImageMagick-wmflite-detection.patch (upstreamed)
  `</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1714910400">- version update to 7.1.1.32
  * Fix GIF ICC profile reading #7282
  * uhdr.c: add support for rgb inputs #7273</changelog>
  <changelog author="pgajdos@suse.com" date="1715860800">- reverted update-alternatives usage removal [bsc#1122033][bsc#1220818]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1716638400">- version update to 7.1.1.33
  * Fix typo in #7294
  * Bump azure/trusted-signing-action from 0.3.16 to 0.3.18 in #7325
  * Bump caphyon/advinst-github-action from 1.1 to 2.0 in #7326
- added patch
  + ImageMagick-update-image-signature.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1719144000">- version update to 7.1.1.34
  * Bump azure/trusted-signing-action from 0.3.18 to 0.3.19 in #7348
  * Fix a typo in convert deprecation warning in #7383
  * Bump azure/trusted-signing-action from 0.3.19 to 0.3.20 in #7388
  * Updated FontConfig query to include font index, fixing (#7374) in #7409
- removed patch (upstreamed)
  - ImageMagick-update-image-signature.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1721908800">- version update to 7.1.1.35
  * Also set dpi-x and dpi-y when running rsvg-convert. eac001f
  * convert sub-command is deprecated d67039e
  * only operators should disable "identify ping" (ImageMagick/ImageMagick#7441) a262192
  * fix compiler error ecc21c7
  * -outdir deprecated 9980efa
  * Get the correct width and height when heic:preserve-orientation is set to true. ed3a0dd
  * Set heic image orientation using transform information. ba470aa
  * Exit earlier when the symlink could not be created when invoking the svg:decode delegate. 8a48edd
  * Fixed MSYS2 build error. 3b22378
  * Also set the DNG properties when pinging the image. fc1c61b
  * Silence warning when lqr delegate is disabled. ae0d69a
  * Added version check for the heif_properties.h include. 656b4d2
  * Make sure we always use the i64 version of the "file methods" on Windows. b3e8a78
  * Changed defines to use method instead of a define. 75b66c4
  * Changes due to upgrade of libheif. 841f033
  * smooth the rendering of an ellipse (ImageMagick/ImageMagick#7465) 1bfce2a</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- version update to 7.1.1.36
  * uhdr.c: default initialize range field for hdr/sdr intent inputs to
    enc by @aayushsoni111 in #7482
  * Fixed typo in documentation of MagickAdaptiveBlurImage by @JonahEMorgan
    in #7500
  * Silence warning when freetype delegate is disabled. by @niclet in #7515</changelog>
  <changelog author="pgajdos@suse.com" date="1724760000">- version update to 7.1.1.37
  * Bump azure/trusted-signing-action from 0.3.20 to 0.4.0 #7518
  * Silence warning and fix HEIC_COMPUTE_NUMERIC_VERSION definition when heic delegate is disabled. #7516
  * protect macro arguments with parens 86cb2b1
  * eliminate compiler warnings d90d8b4
  * correct copyright year 115271e
  * Ignore multiple exif and xmp profiles for the same jxl frame and fix reading those profiles per frame. c301208
  * read/write in chunks fff3058
  * optimize fwrite() arguments ada6785
  * Renamed Output folder to Artifacts. 2a69677
  * cancel interactive window selection with right button press ea2a2db
  * cosmetic 712bde4
  * eliminate compiler warning 9a9a25c
  * eliminate compiler warning 0bd1687
  * Make images mandatory in the issue template. c01fd37
  * Added extra header detection for avif files. 9fc0590
  * allow SeekBlob() to set an offset beyond the end of the blob 27c3f99
  * be less forgiving for invalid image indexes 25db2e5
  * Fixed problem with empty macros (#7562) 9fda5f2
  * Added missing null checks for RequestOpenCLDevice. f85448e
  * Added missing null check for AcquireOpenCLCommandQueue. 295e9c8
  * persist app1 jpeg profile (ImageMagick/ImageMagick#4713) f0357c7
  * Fixed build error. b3dd431
  * Remove some of the dependencies for the macos-13 build. d0bce95
  * parentheses is the plural of parenthesis 1fac80a
  * distribute quantization error for -dither FloydSteinberg -depth 5b2825b
  * release 8a0da9f
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565</changelog>
  <changelog author="pgajdos@suse.com" date="1726228800">- version update to 7.1.1.38
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565
  * beta release 250b748
  * deprecate the -respect-paranthesis option 4e7d789
  * Build fixes. b80c509
  * save IPTC + ICC profiles are profiles, not properties 25d5335
  * update copyright year 4caf7d1
  * Patch to fix reading of the ICC profile. 18377f9
  * prepping framework to interact with X11 clipboard b20dda3
  * Build fix. 20a5af3
  * More build fixes. c36fdf0
  * Another attempt to silence the warnings. 600708c
  * Use SetImageProfilePrivate to avoid duplicate allocations. f246eab
  * support clipboard delegate 39a135a
  * restore clipboard.c 1070b17
  * improved rounding 27a0a9c
  * don't allow negative scenes 8fda05a
  * eliminate compiler warnings 878daf9
- modified patches
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1728216000">- version update to 7.1.1.39
  * Add missing Threshold command to command array of Region of Interest mode #7606
  * uhdr.c: update uhdr coder for gainmap metadata configuration #7635
  * uhdr: fix language choice in autoconf #7663</changelog>
</package>
<package pkgid="7c6bff453ea8e22614665731b23b64d6c417e9c4e3bd934b194249d6c6bd24140b933633d634ac6d9499e96c39d76958e02f88d2d1eeb1f1e9e3f5756be9293f" name="ImageMagick" arch="src">
  <version epoch="0" ver="7.1.1.39" rel="1.1"/>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1705838400">- version update to 7.1.1.27
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1707652800">- version update to 7.1.1.28
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Michael Vetter &lt;mvetter@suse.com&gt;" date="1708603200">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1709035200">- version update to 7.1.1.29
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709380800">- We can not replace a symlink with a directory on the directly
  Unregister the whole group manually in %pre with
  update-alternatives. (boo#1220818)
  Restore Requires(pre) on update-alternatives for the mean time.</changelog>
  <changelog author="pgajdos@suse.com" date="1709553600">- enable SVG again
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711022400">- allow delegates to be executed, was disabled by default policy
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711108800">- allow stdin/stdout
- modified patches
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1712577600">- version update to 7.1.1.30
  * install perl module into user-specified prefix by @bugfood in #7192
  * Fix bmp option to bypass file size check by @OnTheList-1 in #7194
  * add support for encoding/decoding ultrahdr images by @aayushsoni111 in #7198
  * Updates to uhdr.c by @aayushsoni111 in #7217
- added patches
  fix https://github.com/ImageMagick/ImageMagick/issues/7230
  + ImageMagick-wmflite-detection.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713182400">- relax list-length resource limit, fixes build of python-Wand
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713787200">- version update to 7.1.1.31
  * Convert big PDF documents is slow #7263
  * Update release.yml #7258
  * Update README.md #7245
  * uhdr.c: verify the availability of error message before accessing it #7229
- removed patches
  - ImageMagick-wmflite-detection.patch (upstreamed)
  `</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1714910400">- version update to 7.1.1.32
  * Fix GIF ICC profile reading #7282
  * uhdr.c: add support for rgb inputs #7273</changelog>
  <changelog author="pgajdos@suse.com" date="1715860800">- reverted update-alternatives usage removal [bsc#1122033][bsc#1220818]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1716638400">- version update to 7.1.1.33
  * Fix typo in #7294
  * Bump azure/trusted-signing-action from 0.3.16 to 0.3.18 in #7325
  * Bump caphyon/advinst-github-action from 1.1 to 2.0 in #7326
- added patch
  + ImageMagick-update-image-signature.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1719144000">- version update to 7.1.1.34
  * Bump azure/trusted-signing-action from 0.3.18 to 0.3.19 in #7348
  * Fix a typo in convert deprecation warning in #7383
  * Bump azure/trusted-signing-action from 0.3.19 to 0.3.20 in #7388
  * Updated FontConfig query to include font index, fixing (#7374) in #7409
- removed patch (upstreamed)
  - ImageMagick-update-image-signature.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1721908800">- version update to 7.1.1.35
  * Also set dpi-x and dpi-y when running rsvg-convert. eac001f
  * convert sub-command is deprecated d67039e
  * only operators should disable "identify ping" (ImageMagick/ImageMagick#7441) a262192
  * fix compiler error ecc21c7
  * -outdir deprecated 9980efa
  * Get the correct width and height when heic:preserve-orientation is set to true. ed3a0dd
  * Set heic image orientation using transform information. ba470aa
  * Exit earlier when the symlink could not be created when invoking the svg:decode delegate. 8a48edd
  * Fixed MSYS2 build error. 3b22378
  * Also set the DNG properties when pinging the image. fc1c61b
  * Silence warning when lqr delegate is disabled. ae0d69a
  * Added version check for the heif_properties.h include. 656b4d2
  * Make sure we always use the i64 version of the "file methods" on Windows. b3e8a78
  * Changed defines to use method instead of a define. 75b66c4
  * Changes due to upgrade of libheif. 841f033
  * smooth the rendering of an ellipse (ImageMagick/ImageMagick#7465) 1bfce2a</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- version update to 7.1.1.36
  * uhdr.c: default initialize range field for hdr/sdr intent inputs to
    enc by @aayushsoni111 in #7482
  * Fixed typo in documentation of MagickAdaptiveBlurImage by @JonahEMorgan
    in #7500
  * Silence warning when freetype delegate is disabled. by @niclet in #7515</changelog>
  <changelog author="pgajdos@suse.com" date="1724760000">- version update to 7.1.1.37
  * Bump azure/trusted-signing-action from 0.3.20 to 0.4.0 #7518
  * Silence warning and fix HEIC_COMPUTE_NUMERIC_VERSION definition when heic delegate is disabled. #7516
  * protect macro arguments with parens 86cb2b1
  * eliminate compiler warnings d90d8b4
  * correct copyright year 115271e
  * Ignore multiple exif and xmp profiles for the same jxl frame and fix reading those profiles per frame. c301208
  * read/write in chunks fff3058
  * optimize fwrite() arguments ada6785
  * Renamed Output folder to Artifacts. 2a69677
  * cancel interactive window selection with right button press ea2a2db
  * cosmetic 712bde4
  * eliminate compiler warning 9a9a25c
  * eliminate compiler warning 0bd1687
  * Make images mandatory in the issue template. c01fd37
  * Added extra header detection for avif files. 9fc0590
  * allow SeekBlob() to set an offset beyond the end of the blob 27c3f99
  * be less forgiving for invalid image indexes 25db2e5
  * Fixed problem with empty macros (#7562) 9fda5f2
  * Added missing null checks for RequestOpenCLDevice. f85448e
  * Added missing null check for AcquireOpenCLCommandQueue. 295e9c8
  * persist app1 jpeg profile (ImageMagick/ImageMagick#4713) f0357c7
  * Fixed build error. b3dd431
  * Remove some of the dependencies for the macos-13 build. d0bce95
  * parentheses is the plural of parenthesis 1fac80a
  * distribute quantization error for -dither FloydSteinberg -depth 5b2825b
  * release 8a0da9f
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565</changelog>
  <changelog author="pgajdos@suse.com" date="1726228800">- version update to 7.1.1.38
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565
  * beta release 250b748
  * deprecate the -respect-paranthesis option 4e7d789
  * Build fixes. b80c509
  * save IPTC + ICC profiles are profiles, not properties 25d5335
  * update copyright year 4caf7d1
  * Patch to fix reading of the ICC profile. 18377f9
  * prepping framework to interact with X11 clipboard b20dda3
  * Build fix. 20a5af3
  * More build fixes. c36fdf0
  * Another attempt to silence the warnings. 600708c
  * Use SetImageProfilePrivate to avoid duplicate allocations. f246eab
  * support clipboard delegate 39a135a
  * restore clipboard.c 1070b17
  * improved rounding 27a0a9c
  * don't allow negative scenes 8fda05a
  * eliminate compiler warnings 878daf9
- modified patches
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1728216000">- version update to 7.1.1.39
  * Add missing Threshold command to command array of Region of Interest mode #7606
  * uhdr.c: update uhdr coder for gainmap metadata configuration #7635
  * uhdr: fix language choice in autoconf #7663</changelog>
</package>
<package pkgid="896a24364a130f0e2646471a97485981ba768549872f270b4ba40ab44a2eb0d823bb01fbf593813a6495f4b4c22ff832248837d4a5ce60e1a47427e4c5344580" name="ImageMagick" arch="x86_64">
  <version epoch="0" ver="7.1.1.39" rel="1.1"/>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1705838400">- version update to 7.1.1.27
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1707652800">- version update to 7.1.1.28
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Michael Vetter &lt;mvetter@suse.com&gt;" date="1708603200">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1709035200">- version update to 7.1.1.29
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709380800">- We can not replace a symlink with a directory on the directly
  Unregister the whole group manually in %pre with
  update-alternatives. (boo#1220818)
  Restore Requires(pre) on update-alternatives for the mean time.</changelog>
  <changelog author="pgajdos@suse.com" date="1709553600">- enable SVG again
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711022400">- allow delegates to be executed, was disabled by default policy
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711108800">- allow stdin/stdout
- modified patches
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1712577600">- version update to 7.1.1.30
  * install perl module into user-specified prefix by @bugfood in #7192
  * Fix bmp option to bypass file size check by @OnTheList-1 in #7194
  * add support for encoding/decoding ultrahdr images by @aayushsoni111 in #7198
  * Updates to uhdr.c by @aayushsoni111 in #7217
- added patches
  fix https://github.com/ImageMagick/ImageMagick/issues/7230
  + ImageMagick-wmflite-detection.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713182400">- relax list-length resource limit, fixes build of python-Wand
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713787200">- version update to 7.1.1.31
  * Convert big PDF documents is slow #7263
  * Update release.yml #7258
  * Update README.md #7245
  * uhdr.c: verify the availability of error message before accessing it #7229
- removed patches
  - ImageMagick-wmflite-detection.patch (upstreamed)
  `</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1714910400">- version update to 7.1.1.32
  * Fix GIF ICC profile reading #7282
  * uhdr.c: add support for rgb inputs #7273</changelog>
  <changelog author="pgajdos@suse.com" date="1715860800">- reverted update-alternatives usage removal [bsc#1122033][bsc#1220818]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1716638400">- version update to 7.1.1.33
  * Fix typo in #7294
  * Bump azure/trusted-signing-action from 0.3.16 to 0.3.18 in #7325
  * Bump caphyon/advinst-github-action from 1.1 to 2.0 in #7326
- added patch
  + ImageMagick-update-image-signature.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1719144000">- version update to 7.1.1.34
  * Bump azure/trusted-signing-action from 0.3.18 to 0.3.19 in #7348
  * Fix a typo in convert deprecation warning in #7383
  * Bump azure/trusted-signing-action from 0.3.19 to 0.3.20 in #7388
  * Updated FontConfig query to include font index, fixing (#7374) in #7409
- removed patch (upstreamed)
  - ImageMagick-update-image-signature.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1721908800">- version update to 7.1.1.35
  * Also set dpi-x and dpi-y when running rsvg-convert. eac001f
  * convert sub-command is deprecated d67039e
  * only operators should disable "identify ping" (ImageMagick/ImageMagick#7441) a262192
  * fix compiler error ecc21c7
  * -outdir deprecated 9980efa
  * Get the correct width and height when heic:preserve-orientation is set to true. ed3a0dd
  * Set heic image orientation using transform information. ba470aa
  * Exit earlier when the symlink could not be created when invoking the svg:decode delegate. 8a48edd
  * Fixed MSYS2 build error. 3b22378
  * Also set the DNG properties when pinging the image. fc1c61b
  * Silence warning when lqr delegate is disabled. ae0d69a
  * Added version check for the heif_properties.h include. 656b4d2
  * Make sure we always use the i64 version of the "file methods" on Windows. b3e8a78
  * Changed defines to use method instead of a define. 75b66c4
  * Changes due to upgrade of libheif. 841f033
  * smooth the rendering of an ellipse (ImageMagick/ImageMagick#7465) 1bfce2a</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- version update to 7.1.1.36
  * uhdr.c: default initialize range field for hdr/sdr intent inputs to
    enc by @aayushsoni111 in #7482
  * Fixed typo in documentation of MagickAdaptiveBlurImage by @JonahEMorgan
    in #7500
  * Silence warning when freetype delegate is disabled. by @niclet in #7515</changelog>
  <changelog author="pgajdos@suse.com" date="1724760000">- version update to 7.1.1.37
  * Bump azure/trusted-signing-action from 0.3.20 to 0.4.0 #7518
  * Silence warning and fix HEIC_COMPUTE_NUMERIC_VERSION definition when heic delegate is disabled. #7516
  * protect macro arguments with parens 86cb2b1
  * eliminate compiler warnings d90d8b4
  * correct copyright year 115271e
  * Ignore multiple exif and xmp profiles for the same jxl frame and fix reading those profiles per frame. c301208
  * read/write in chunks fff3058
  * optimize fwrite() arguments ada6785
  * Renamed Output folder to Artifacts. 2a69677
  * cancel interactive window selection with right button press ea2a2db
  * cosmetic 712bde4
  * eliminate compiler warning 9a9a25c
  * eliminate compiler warning 0bd1687
  * Make images mandatory in the issue template. c01fd37
  * Added extra header detection for avif files. 9fc0590
  * allow SeekBlob() to set an offset beyond the end of the blob 27c3f99
  * be less forgiving for invalid image indexes 25db2e5
  * Fixed problem with empty macros (#7562) 9fda5f2
  * Added missing null checks for RequestOpenCLDevice. f85448e
  * Added missing null check for AcquireOpenCLCommandQueue. 295e9c8
  * persist app1 jpeg profile (ImageMagick/ImageMagick#4713) f0357c7
  * Fixed build error. b3dd431
  * Remove some of the dependencies for the macos-13 build. d0bce95
  * parentheses is the plural of parenthesis 1fac80a
  * distribute quantization error for -dither FloydSteinberg -depth 5b2825b
  * release 8a0da9f
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565</changelog>
  <changelog author="pgajdos@suse.com" date="1726228800">- version update to 7.1.1.38
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565
  * beta release 250b748
  * deprecate the -respect-paranthesis option 4e7d789
  * Build fixes. b80c509
  * save IPTC + ICC profiles are profiles, not properties 25d5335
  * update copyright year 4caf7d1
  * Patch to fix reading of the ICC profile. 18377f9
  * prepping framework to interact with X11 clipboard b20dda3
  * Build fix. 20a5af3
  * More build fixes. c36fdf0
  * Another attempt to silence the warnings. 600708c
  * Use SetImageProfilePrivate to avoid duplicate allocations. f246eab
  * support clipboard delegate 39a135a
  * restore clipboard.c 1070b17
  * improved rounding 27a0a9c
  * don't allow negative scenes 8fda05a
  * eliminate compiler warnings 878daf9
- modified patches
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1728216000">- version update to 7.1.1.39
  * Add missing Threshold command to command array of Region of Interest mode #7606
  * uhdr.c: update uhdr coder for gainmap metadata configuration #7635
  * uhdr: fix language choice in autoconf #7663</changelog>
</package>
<package pkgid="5dc0aaae94caabcd3db49c87b6a819b6a9a78164e18b0c23d82ac5d54472c061b0fa4eb7fd4e8a170b0a1cf8e050b4e143bdf03e75781b265612fd7ab65d0542" name="ImageMagick" arch="i586">
  <version epoch="0" ver="7.1.1.41" rel="1.0.2.1.sr20241103"/>
  <changelog author="Michael Vetter &lt;mvetter@suse.com&gt;" date="1708603200">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1709035200">- version update to 7.1.1.29
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709380800">- We can not replace a symlink with a directory on the directly
  Unregister the whole group manually in %pre with
  update-alternatives. (boo#1220818)
  Restore Requires(pre) on update-alternatives for the mean time.</changelog>
  <changelog author="pgajdos@suse.com" date="1709553600">- enable SVG again
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711022400">- allow delegates to be executed, was disabled by default policy
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711108800">- allow stdin/stdout
- modified patches
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1712577600">- version update to 7.1.1.30
  * install perl module into user-specified prefix by @bugfood in #7192
  * Fix bmp option to bypass file size check by @OnTheList-1 in #7194
  * add support for encoding/decoding ultrahdr images by @aayushsoni111 in #7198
  * Updates to uhdr.c by @aayushsoni111 in #7217
- added patches
  fix https://github.com/ImageMagick/ImageMagick/issues/7230
  + ImageMagick-wmflite-detection.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713182400">- relax list-length resource limit, fixes build of python-Wand
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713787200">- version update to 7.1.1.31
  * Convert big PDF documents is slow #7263
  * Update release.yml #7258
  * Update README.md #7245
  * uhdr.c: verify the availability of error message before accessing it #7229
- removed patches
  - ImageMagick-wmflite-detection.patch (upstreamed)
  `</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1714910400">- version update to 7.1.1.32
  * Fix GIF ICC profile reading #7282
  * uhdr.c: add support for rgb inputs #7273</changelog>
  <changelog author="pgajdos@suse.com" date="1715860800">- reverted update-alternatives usage removal [bsc#1122033][bsc#1220818]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1716638400">- version update to 7.1.1.33
  * Fix typo in #7294
  * Bump azure/trusted-signing-action from 0.3.16 to 0.3.18 in #7325
  * Bump caphyon/advinst-github-action from 1.1 to 2.0 in #7326
- added patch
  + ImageMagick-update-image-signature.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1719144000">- version update to 7.1.1.34
  * Bump azure/trusted-signing-action from 0.3.18 to 0.3.19 in #7348
  * Fix a typo in convert deprecation warning in #7383
  * Bump azure/trusted-signing-action from 0.3.19 to 0.3.20 in #7388
  * Updated FontConfig query to include font index, fixing (#7374) in #7409
- removed patch (upstreamed)
  - ImageMagick-update-image-signature.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1721908800">- version update to 7.1.1.35
  * Also set dpi-x and dpi-y when running rsvg-convert. eac001f
  * convert sub-command is deprecated d67039e
  * only operators should disable "identify ping" (ImageMagick/ImageMagick#7441) a262192
  * fix compiler error ecc21c7
  * -outdir deprecated 9980efa
  * Get the correct width and height when heic:preserve-orientation is set to true. ed3a0dd
  * Set heic image orientation using transform information. ba470aa
  * Exit earlier when the symlink could not be created when invoking the svg:decode delegate. 8a48edd
  * Fixed MSYS2 build error. 3b22378
  * Also set the DNG properties when pinging the image. fc1c61b
  * Silence warning when lqr delegate is disabled. ae0d69a
  * Added version check for the heif_properties.h include. 656b4d2
  * Make sure we always use the i64 version of the "file methods" on Windows. b3e8a78
  * Changed defines to use method instead of a define. 75b66c4
  * Changes due to upgrade of libheif. 841f033
  * smooth the rendering of an ellipse (ImageMagick/ImageMagick#7465) 1bfce2a</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- version update to 7.1.1.36
  * uhdr.c: default initialize range field for hdr/sdr intent inputs to
    enc by @aayushsoni111 in #7482
  * Fixed typo in documentation of MagickAdaptiveBlurImage by @JonahEMorgan
    in #7500
  * Silence warning when freetype delegate is disabled. by @niclet in #7515</changelog>
  <changelog author="pgajdos@suse.com" date="1724760000">- version update to 7.1.1.37
  * Bump azure/trusted-signing-action from 0.3.20 to 0.4.0 #7518
  * Silence warning and fix HEIC_COMPUTE_NUMERIC_VERSION definition when heic delegate is disabled. #7516
  * protect macro arguments with parens 86cb2b1
  * eliminate compiler warnings d90d8b4
  * correct copyright year 115271e
  * Ignore multiple exif and xmp profiles for the same jxl frame and fix reading those profiles per frame. c301208
  * read/write in chunks fff3058
  * optimize fwrite() arguments ada6785
  * Renamed Output folder to Artifacts. 2a69677
  * cancel interactive window selection with right button press ea2a2db
  * cosmetic 712bde4
  * eliminate compiler warning 9a9a25c
  * eliminate compiler warning 0bd1687
  * Make images mandatory in the issue template. c01fd37
  * Added extra header detection for avif files. 9fc0590
  * allow SeekBlob() to set an offset beyond the end of the blob 27c3f99
  * be less forgiving for invalid image indexes 25db2e5
  * Fixed problem with empty macros (#7562) 9fda5f2
  * Added missing null checks for RequestOpenCLDevice. f85448e
  * Added missing null check for AcquireOpenCLCommandQueue. 295e9c8
  * persist app1 jpeg profile (ImageMagick/ImageMagick#4713) f0357c7
  * Fixed build error. b3dd431
  * Remove some of the dependencies for the macos-13 build. d0bce95
  * parentheses is the plural of parenthesis 1fac80a
  * distribute quantization error for -dither FloydSteinberg -depth 5b2825b
  * release 8a0da9f
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565</changelog>
  <changelog author="pgajdos@suse.com" date="1726228800">- version update to 7.1.1.38
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565
  * beta release 250b748
  * deprecate the -respect-paranthesis option 4e7d789
  * Build fixes. b80c509
  * save IPTC + ICC profiles are profiles, not properties 25d5335
  * update copyright year 4caf7d1
  * Patch to fix reading of the ICC profile. 18377f9
  * prepping framework to interact with X11 clipboard b20dda3
  * Build fix. 20a5af3
  * More build fixes. c36fdf0
  * Another attempt to silence the warnings. 600708c
  * Use SetImageProfilePrivate to avoid duplicate allocations. f246eab
  * support clipboard delegate 39a135a
  * restore clipboard.c 1070b17
  * improved rounding 27a0a9c
  * don't allow negative scenes 8fda05a
  * eliminate compiler warnings 878daf9
- modified patches
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1728216000">- version update to 7.1.1.39
  * Add missing Threshold command to command array of Region of Interest mode #7606
  * uhdr.c: update uhdr coder for gainmap metadata configuration #7635
  * uhdr: fix language choice in autoconf #7663</changelog>
  <changelog author="Yann BOYER &lt;yann.boyer742@gmail.com&gt;" date="1731326400">- version update to 7.1.1.40
  * .cut (Dr Halo) reading when run count in header #7734
  * Bump azure/trusted-signing-action from 0.4.0 to 0.5.0 #7725
  * Implement Magic Kernel Sharp 2013 and 2021 #7701
  * don't process TIFF image if there is an exception
  * Corrected check for indexed channels in PSD files.
  * export exception when undo resource limit exceeded</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1731844800">- version update to 7.1.1.41
  * Fix compiler identification with Clang on Darwin in #7773
  * revert map changes breaking ABI in #7768</changelog>
</package>
<package pkgid="b0c4e9f7f2a49edd7a791ae046983053f05e2e7dd63a4a54786d8303db9ecd267a15dcc8e1b5e6fb20e385a3e0898068b4bf8a83e7b6b4021b56c7a142c1b965" name="ImageMagick" arch="src">
  <version epoch="0" ver="7.1.1.41" rel="1.0.2.1.sr20241103"/>
  <changelog author="Michael Vetter &lt;mvetter@suse.com&gt;" date="1708603200">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1709035200">- version update to 7.1.1.29
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709380800">- We can not replace a symlink with a directory on the directly
  Unregister the whole group manually in %pre with
  update-alternatives. (boo#1220818)
  Restore Requires(pre) on update-alternatives for the mean time.</changelog>
  <changelog author="pgajdos@suse.com" date="1709553600">- enable SVG again
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711022400">- allow delegates to be executed, was disabled by default policy
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711108800">- allow stdin/stdout
- modified patches
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1712577600">- version update to 7.1.1.30
  * install perl module into user-specified prefix by @bugfood in #7192
  * Fix bmp option to bypass file size check by @OnTheList-1 in #7194
  * add support for encoding/decoding ultrahdr images by @aayushsoni111 in #7198
  * Updates to uhdr.c by @aayushsoni111 in #7217
- added patches
  fix https://github.com/ImageMagick/ImageMagick/issues/7230
  + ImageMagick-wmflite-detection.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713182400">- relax list-length resource limit, fixes build of python-Wand
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713787200">- version update to 7.1.1.31
  * Convert big PDF documents is slow #7263
  * Update release.yml #7258
  * Update README.md #7245
  * uhdr.c: verify the availability of error message before accessing it #7229
- removed patches
  - ImageMagick-wmflite-detection.patch (upstreamed)
  `</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1714910400">- version update to 7.1.1.32
  * Fix GIF ICC profile reading #7282
  * uhdr.c: add support for rgb inputs #7273</changelog>
  <changelog author="pgajdos@suse.com" date="1715860800">- reverted update-alternatives usage removal [bsc#1122033][bsc#1220818]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1716638400">- version update to 7.1.1.33
  * Fix typo in #7294
  * Bump azure/trusted-signing-action from 0.3.16 to 0.3.18 in #7325
  * Bump caphyon/advinst-github-action from 1.1 to 2.0 in #7326
- added patch
  + ImageMagick-update-image-signature.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1719144000">- version update to 7.1.1.34
  * Bump azure/trusted-signing-action from 0.3.18 to 0.3.19 in #7348
  * Fix a typo in convert deprecation warning in #7383
  * Bump azure/trusted-signing-action from 0.3.19 to 0.3.20 in #7388
  * Updated FontConfig query to include font index, fixing (#7374) in #7409
- removed patch (upstreamed)
  - ImageMagick-update-image-signature.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1721908800">- version update to 7.1.1.35
  * Also set dpi-x and dpi-y when running rsvg-convert. eac001f
  * convert sub-command is deprecated d67039e
  * only operators should disable "identify ping" (ImageMagick/ImageMagick#7441) a262192
  * fix compiler error ecc21c7
  * -outdir deprecated 9980efa
  * Get the correct width and height when heic:preserve-orientation is set to true. ed3a0dd
  * Set heic image orientation using transform information. ba470aa
  * Exit earlier when the symlink could not be created when invoking the svg:decode delegate. 8a48edd
  * Fixed MSYS2 build error. 3b22378
  * Also set the DNG properties when pinging the image. fc1c61b
  * Silence warning when lqr delegate is disabled. ae0d69a
  * Added version check for the heif_properties.h include. 656b4d2
  * Make sure we always use the i64 version of the "file methods" on Windows. b3e8a78
  * Changed defines to use method instead of a define. 75b66c4
  * Changes due to upgrade of libheif. 841f033
  * smooth the rendering of an ellipse (ImageMagick/ImageMagick#7465) 1bfce2a</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- version update to 7.1.1.36
  * uhdr.c: default initialize range field for hdr/sdr intent inputs to
    enc by @aayushsoni111 in #7482
  * Fixed typo in documentation of MagickAdaptiveBlurImage by @JonahEMorgan
    in #7500
  * Silence warning when freetype delegate is disabled. by @niclet in #7515</changelog>
  <changelog author="pgajdos@suse.com" date="1724760000">- version update to 7.1.1.37
  * Bump azure/trusted-signing-action from 0.3.20 to 0.4.0 #7518
  * Silence warning and fix HEIC_COMPUTE_NUMERIC_VERSION definition when heic delegate is disabled. #7516
  * protect macro arguments with parens 86cb2b1
  * eliminate compiler warnings d90d8b4
  * correct copyright year 115271e
  * Ignore multiple exif and xmp profiles for the same jxl frame and fix reading those profiles per frame. c301208
  * read/write in chunks fff3058
  * optimize fwrite() arguments ada6785
  * Renamed Output folder to Artifacts. 2a69677
  * cancel interactive window selection with right button press ea2a2db
  * cosmetic 712bde4
  * eliminate compiler warning 9a9a25c
  * eliminate compiler warning 0bd1687
  * Make images mandatory in the issue template. c01fd37
  * Added extra header detection for avif files. 9fc0590
  * allow SeekBlob() to set an offset beyond the end of the blob 27c3f99
  * be less forgiving for invalid image indexes 25db2e5
  * Fixed problem with empty macros (#7562) 9fda5f2
  * Added missing null checks for RequestOpenCLDevice. f85448e
  * Added missing null check for AcquireOpenCLCommandQueue. 295e9c8
  * persist app1 jpeg profile (ImageMagick/ImageMagick#4713) f0357c7
  * Fixed build error. b3dd431
  * Remove some of the dependencies for the macos-13 build. d0bce95
  * parentheses is the plural of parenthesis 1fac80a
  * distribute quantization error for -dither FloydSteinberg -depth 5b2825b
  * release 8a0da9f
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565</changelog>
  <changelog author="pgajdos@suse.com" date="1726228800">- version update to 7.1.1.38
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565
  * beta release 250b748
  * deprecate the -respect-paranthesis option 4e7d789
  * Build fixes. b80c509
  * save IPTC + ICC profiles are profiles, not properties 25d5335
  * update copyright year 4caf7d1
  * Patch to fix reading of the ICC profile. 18377f9
  * prepping framework to interact with X11 clipboard b20dda3
  * Build fix. 20a5af3
  * More build fixes. c36fdf0
  * Another attempt to silence the warnings. 600708c
  * Use SetImageProfilePrivate to avoid duplicate allocations. f246eab
  * support clipboard delegate 39a135a
  * restore clipboard.c 1070b17
  * improved rounding 27a0a9c
  * don't allow negative scenes 8fda05a
  * eliminate compiler warnings 878daf9
- modified patches
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1728216000">- version update to 7.1.1.39
  * Add missing Threshold command to command array of Region of Interest mode #7606
  * uhdr.c: update uhdr coder for gainmap metadata configuration #7635
  * uhdr: fix language choice in autoconf #7663</changelog>
  <changelog author="Yann BOYER &lt;yann.boyer742@gmail.com&gt;" date="1731326400">- version update to 7.1.1.40
  * .cut (Dr Halo) reading when run count in header #7734
  * Bump azure/trusted-signing-action from 0.4.0 to 0.5.0 #7725
  * Implement Magic Kernel Sharp 2013 and 2021 #7701
  * don't process TIFF image if there is an exception
  * Corrected check for indexed channels in PSD files.
  * export exception when undo resource limit exceeded</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1731844800">- version update to 7.1.1.41
  * Fix compiler identification with Clang on Darwin in #7773
  * revert map changes breaking ABI in #7768</changelog>
</package>
<package pkgid="11b9499cff06b1c20348c7257098afb912820223b58cc206a898e9ef87e753bff2a94fcb8e012cb227621279097193c6d522eeb9608ea73bc501af3031cec57a" name="ImageMagick" arch="x86_64">
  <version epoch="0" ver="7.1.1.41" rel="1.0.2.1.sr20241103"/>
  <changelog author="Michael Vetter &lt;mvetter@suse.com&gt;" date="1708603200">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1709035200">- version update to 7.1.1.29
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709380800">- We can not replace a symlink with a directory on the directly
  Unregister the whole group manually in %pre with
  update-alternatives. (boo#1220818)
  Restore Requires(pre) on update-alternatives for the mean time.</changelog>
  <changelog author="pgajdos@suse.com" date="1709553600">- enable SVG again
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711022400">- allow delegates to be executed, was disabled by default policy
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711108800">- allow stdin/stdout
- modified patches
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1712577600">- version update to 7.1.1.30
  * install perl module into user-specified prefix by @bugfood in #7192
  * Fix bmp option to bypass file size check by @OnTheList-1 in #7194
  * add support for encoding/decoding ultrahdr images by @aayushsoni111 in #7198
  * Updates to uhdr.c by @aayushsoni111 in #7217
- added patches
  fix https://github.com/ImageMagick/ImageMagick/issues/7230
  + ImageMagick-wmflite-detection.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713182400">- relax list-length resource limit, fixes build of python-Wand
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713787200">- version update to 7.1.1.31
  * Convert big PDF documents is slow #7263
  * Update release.yml #7258
  * Update README.md #7245
  * uhdr.c: verify the availability of error message before accessing it #7229
- removed patches
  - ImageMagick-wmflite-detection.patch (upstreamed)
  `</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1714910400">- version update to 7.1.1.32
  * Fix GIF ICC profile reading #7282
  * uhdr.c: add support for rgb inputs #7273</changelog>
  <changelog author="pgajdos@suse.com" date="1715860800">- reverted update-alternatives usage removal [bsc#1122033][bsc#1220818]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1716638400">- version update to 7.1.1.33
  * Fix typo in #7294
  * Bump azure/trusted-signing-action from 0.3.16 to 0.3.18 in #7325
  * Bump caphyon/advinst-github-action from 1.1 to 2.0 in #7326
- added patch
  + ImageMagick-update-image-signature.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1719144000">- version update to 7.1.1.34
  * Bump azure/trusted-signing-action from 0.3.18 to 0.3.19 in #7348
  * Fix a typo in convert deprecation warning in #7383
  * Bump azure/trusted-signing-action from 0.3.19 to 0.3.20 in #7388
  * Updated FontConfig query to include font index, fixing (#7374) in #7409
- removed patch (upstreamed)
  - ImageMagick-update-image-signature.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1721908800">- version update to 7.1.1.35
  * Also set dpi-x and dpi-y when running rsvg-convert. eac001f
  * convert sub-command is deprecated d67039e
  * only operators should disable "identify ping" (ImageMagick/ImageMagick#7441) a262192
  * fix compiler error ecc21c7
  * -outdir deprecated 9980efa
  * Get the correct width and height when heic:preserve-orientation is set to true. ed3a0dd
  * Set heic image orientation using transform information. ba470aa
  * Exit earlier when the symlink could not be created when invoking the svg:decode delegate. 8a48edd
  * Fixed MSYS2 build error. 3b22378
  * Also set the DNG properties when pinging the image. fc1c61b
  * Silence warning when lqr delegate is disabled. ae0d69a
  * Added version check for the heif_properties.h include. 656b4d2
  * Make sure we always use the i64 version of the "file methods" on Windows. b3e8a78
  * Changed defines to use method instead of a define. 75b66c4
  * Changes due to upgrade of libheif. 841f033
  * smooth the rendering of an ellipse (ImageMagick/ImageMagick#7465) 1bfce2a</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- version update to 7.1.1.36
  * uhdr.c: default initialize range field for hdr/sdr intent inputs to
    enc by @aayushsoni111 in #7482
  * Fixed typo in documentation of MagickAdaptiveBlurImage by @JonahEMorgan
    in #7500
  * Silence warning when freetype delegate is disabled. by @niclet in #7515</changelog>
  <changelog author="pgajdos@suse.com" date="1724760000">- version update to 7.1.1.37
  * Bump azure/trusted-signing-action from 0.3.20 to 0.4.0 #7518
  * Silence warning and fix HEIC_COMPUTE_NUMERIC_VERSION definition when heic delegate is disabled. #7516
  * protect macro arguments with parens 86cb2b1
  * eliminate compiler warnings d90d8b4
  * correct copyright year 115271e
  * Ignore multiple exif and xmp profiles for the same jxl frame and fix reading those profiles per frame. c301208
  * read/write in chunks fff3058
  * optimize fwrite() arguments ada6785
  * Renamed Output folder to Artifacts. 2a69677
  * cancel interactive window selection with right button press ea2a2db
  * cosmetic 712bde4
  * eliminate compiler warning 9a9a25c
  * eliminate compiler warning 0bd1687
  * Make images mandatory in the issue template. c01fd37
  * Added extra header detection for avif files. 9fc0590
  * allow SeekBlob() to set an offset beyond the end of the blob 27c3f99
  * be less forgiving for invalid image indexes 25db2e5
  * Fixed problem with empty macros (#7562) 9fda5f2
  * Added missing null checks for RequestOpenCLDevice. f85448e
  * Added missing null check for AcquireOpenCLCommandQueue. 295e9c8
  * persist app1 jpeg profile (ImageMagick/ImageMagick#4713) f0357c7
  * Fixed build error. b3dd431
  * Remove some of the dependencies for the macos-13 build. d0bce95
  * parentheses is the plural of parenthesis 1fac80a
  * distribute quantization error for -dither FloydSteinberg -depth 5b2825b
  * release 8a0da9f
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565</changelog>
  <changelog author="pgajdos@suse.com" date="1726228800">- version update to 7.1.1.38
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565
  * beta release 250b748
  * deprecate the -respect-paranthesis option 4e7d789
  * Build fixes. b80c509
  * save IPTC + ICC profiles are profiles, not properties 25d5335
  * update copyright year 4caf7d1
  * Patch to fix reading of the ICC profile. 18377f9
  * prepping framework to interact with X11 clipboard b20dda3
  * Build fix. 20a5af3
  * More build fixes. c36fdf0
  * Another attempt to silence the warnings. 600708c
  * Use SetImageProfilePrivate to avoid duplicate allocations. f246eab
  * support clipboard delegate 39a135a
  * restore clipboard.c 1070b17
  * improved rounding 27a0a9c
  * don't allow negative scenes 8fda05a
  * eliminate compiler warnings 878daf9
- modified patches
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1728216000">- version update to 7.1.1.39
  * Add missing Threshold command to command array of Region of Interest mode #7606
  * uhdr.c: update uhdr coder for gainmap metadata configuration #7635
  * uhdr: fix language choice in autoconf #7663</changelog>
  <changelog author="Yann BOYER &lt;yann.boyer742@gmail.com&gt;" date="1731326400">- version update to 7.1.1.40
  * .cut (Dr Halo) reading when run count in header #7734
  * Bump azure/trusted-signing-action from 0.4.0 to 0.5.0 #7725
  * Implement Magic Kernel Sharp 2013 and 2021 #7701
  * don't process TIFF image if there is an exception
  * Corrected check for indexed channels in PSD files.
  * export exception when undo resource limit exceeded</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1731844800">- version update to 7.1.1.41
  * Fix compiler identification with Clang on Darwin in #7773
  * revert map changes breaking ABI in #7768</changelog>
</package>
<package pkgid="c124ca47e2e0efc096d3d7c6820d83d15af25a1b9b8732db56dcc7e8ce0d1978fd784c7c6f741090dc226b710685211ef9aa506290cf843bd3c08fc70831f427" name="ImageMagick-config-7-SUSE" arch="i586">
  <version epoch="0" ver="7.1.1.36" rel="1.1"/>
  <changelog author="munix9@googlemail.com" date="1705233600">- Fix incomplete removal of update-alternatives for config
- Replace obsolete 'otherproviders(imagick-%{config_spec})' with
  'Conflicts: imagick-%{config_spec}'</changelog>
  <changelog author="pgajdos@suse.com" date="1705320000">- use correct policy.xml</changelog>
  <changelog author="pgajdos@suse.com" date="1705406400">- only one configuration again, based on upstream 'secure' policy
- other upstream policies packaged in documentation</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1705838400">- version update to 7.1.1.27
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1707652800">- version update to 7.1.1.28
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Michael Vetter &lt;mvetter@suse.com&gt;" date="1708603200">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1709035200">- version update to 7.1.1.29
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709380800">- We can not replace a symlink with a directory on the directly
  Unregister the whole group manually in %pre with
  update-alternatives. (boo#1220818)
  Restore Requires(pre) on update-alternatives for the mean time.</changelog>
  <changelog author="pgajdos@suse.com" date="1709553600">- enable SVG again
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711022400">- allow delegates to be executed, was disabled by default policy
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711108800">- allow stdin/stdout
- modified patches
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1712577600">- version update to 7.1.1.30
  * install perl module into user-specified prefix by @bugfood in #7192
  * Fix bmp option to bypass file size check by @OnTheList-1 in #7194
  * add support for encoding/decoding ultrahdr images by @aayushsoni111 in #7198
  * Updates to uhdr.c by @aayushsoni111 in #7217
- added patches
  fix https://github.com/ImageMagick/ImageMagick/issues/7230
  + ImageMagick-wmflite-detection.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713182400">- relax list-length resource limit, fixes build of python-Wand
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713787200">- version update to 7.1.1.31
  * Convert big PDF documents is slow #7263
  * Update release.yml #7258
  * Update README.md #7245
  * uhdr.c: verify the availability of error message before accessing it #7229
- removed patches
  - ImageMagick-wmflite-detection.patch (upstreamed)
  `</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1714910400">- version update to 7.1.1.32
  * Fix GIF ICC profile reading #7282
  * uhdr.c: add support for rgb inputs #7273</changelog>
  <changelog author="pgajdos@suse.com" date="1715860800">- reverted update-alternatives usage removal [bsc#1122033][bsc#1220818]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1716638400">- version update to 7.1.1.33
  * Fix typo in #7294
  * Bump azure/trusted-signing-action from 0.3.16 to 0.3.18 in #7325
  * Bump caphyon/advinst-github-action from 1.1 to 2.0 in #7326
- added patch
  + ImageMagick-update-image-signature.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1719144000">- version update to 7.1.1.34
  * Bump azure/trusted-signing-action from 0.3.18 to 0.3.19 in #7348
  * Fix a typo in convert deprecation warning in #7383
  * Bump azure/trusted-signing-action from 0.3.19 to 0.3.20 in #7388
  * Updated FontConfig query to include font index, fixing (#7374) in #7409
- removed patch (upstreamed)
  - ImageMagick-update-image-signature.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1721908800">- version update to 7.1.1.35
  * Also set dpi-x and dpi-y when running rsvg-convert. eac001f
  * convert sub-command is deprecated d67039e
  * only operators should disable "identify ping" (ImageMagick/ImageMagick#7441) a262192
  * fix compiler error ecc21c7
  * -outdir deprecated 9980efa
  * Get the correct width and height when heic:preserve-orientation is set to true. ed3a0dd
  * Set heic image orientation using transform information. ba470aa
  * Exit earlier when the symlink could not be created when invoking the svg:decode delegate. 8a48edd
  * Fixed MSYS2 build error. 3b22378
  * Also set the DNG properties when pinging the image. fc1c61b
  * Silence warning when lqr delegate is disabled. ae0d69a
  * Added version check for the heif_properties.h include. 656b4d2
  * Make sure we always use the i64 version of the "file methods" on Windows. b3e8a78
  * Changed defines to use method instead of a define. 75b66c4
  * Changes due to upgrade of libheif. 841f033
  * smooth the rendering of an ellipse (ImageMagick/ImageMagick#7465) 1bfce2a</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- version update to 7.1.1.36
  * uhdr.c: default initialize range field for hdr/sdr intent inputs to
    enc by @aayushsoni111 in #7482
  * Fixed typo in documentation of MagickAdaptiveBlurImage by @JonahEMorgan
    in #7500
  * Silence warning when freetype delegate is disabled. by @niclet in #7515</changelog>
</package>
<package pkgid="e5c9cca400b49ac3ce70dc549cf13a64f76dcd1c27612a7e518c2d621221f0afee396aeb69aa6883f726abd5c0c46b296f8332aa34b2b98bc2f391470d72943d" name="ImageMagick-config-7-SUSE" arch="x86_64">
  <version epoch="0" ver="7.1.1.36" rel="1.1"/>
  <changelog author="munix9@googlemail.com" date="1705233600">- Fix incomplete removal of update-alternatives for config
- Replace obsolete 'otherproviders(imagick-%{config_spec})' with
  'Conflicts: imagick-%{config_spec}'</changelog>
  <changelog author="pgajdos@suse.com" date="1705320000">- use correct policy.xml</changelog>
  <changelog author="pgajdos@suse.com" date="1705406400">- only one configuration again, based on upstream 'secure' policy
- other upstream policies packaged in documentation</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1705838400">- version update to 7.1.1.27
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1707652800">- version update to 7.1.1.28
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Michael Vetter &lt;mvetter@suse.com&gt;" date="1708603200">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1709035200">- version update to 7.1.1.29
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709380800">- We can not replace a symlink with a directory on the directly
  Unregister the whole group manually in %pre with
  update-alternatives. (boo#1220818)
  Restore Requires(pre) on update-alternatives for the mean time.</changelog>
  <changelog author="pgajdos@suse.com" date="1709553600">- enable SVG again
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711022400">- allow delegates to be executed, was disabled by default policy
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711108800">- allow stdin/stdout
- modified patches
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1712577600">- version update to 7.1.1.30
  * install perl module into user-specified prefix by @bugfood in #7192
  * Fix bmp option to bypass file size check by @OnTheList-1 in #7194
  * add support for encoding/decoding ultrahdr images by @aayushsoni111 in #7198
  * Updates to uhdr.c by @aayushsoni111 in #7217
- added patches
  fix https://github.com/ImageMagick/ImageMagick/issues/7230
  + ImageMagick-wmflite-detection.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713182400">- relax list-length resource limit, fixes build of python-Wand
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713787200">- version update to 7.1.1.31
  * Convert big PDF documents is slow #7263
  * Update release.yml #7258
  * Update README.md #7245
  * uhdr.c: verify the availability of error message before accessing it #7229
- removed patches
  - ImageMagick-wmflite-detection.patch (upstreamed)
  `</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1714910400">- version update to 7.1.1.32
  * Fix GIF ICC profile reading #7282
  * uhdr.c: add support for rgb inputs #7273</changelog>
  <changelog author="pgajdos@suse.com" date="1715860800">- reverted update-alternatives usage removal [bsc#1122033][bsc#1220818]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1716638400">- version update to 7.1.1.33
  * Fix typo in #7294
  * Bump azure/trusted-signing-action from 0.3.16 to 0.3.18 in #7325
  * Bump caphyon/advinst-github-action from 1.1 to 2.0 in #7326
- added patch
  + ImageMagick-update-image-signature.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1719144000">- version update to 7.1.1.34
  * Bump azure/trusted-signing-action from 0.3.18 to 0.3.19 in #7348
  * Fix a typo in convert deprecation warning in #7383
  * Bump azure/trusted-signing-action from 0.3.19 to 0.3.20 in #7388
  * Updated FontConfig query to include font index, fixing (#7374) in #7409
- removed patch (upstreamed)
  - ImageMagick-update-image-signature.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1721908800">- version update to 7.1.1.35
  * Also set dpi-x and dpi-y when running rsvg-convert. eac001f
  * convert sub-command is deprecated d67039e
  * only operators should disable "identify ping" (ImageMagick/ImageMagick#7441) a262192
  * fix compiler error ecc21c7
  * -outdir deprecated 9980efa
  * Get the correct width and height when heic:preserve-orientation is set to true. ed3a0dd
  * Set heic image orientation using transform information. ba470aa
  * Exit earlier when the symlink could not be created when invoking the svg:decode delegate. 8a48edd
  * Fixed MSYS2 build error. 3b22378
  * Also set the DNG properties when pinging the image. fc1c61b
  * Silence warning when lqr delegate is disabled. ae0d69a
  * Added version check for the heif_properties.h include. 656b4d2
  * Make sure we always use the i64 version of the "file methods" on Windows. b3e8a78
  * Changed defines to use method instead of a define. 75b66c4
  * Changes due to upgrade of libheif. 841f033
  * smooth the rendering of an ellipse (ImageMagick/ImageMagick#7465) 1bfce2a</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- version update to 7.1.1.36
  * uhdr.c: default initialize range field for hdr/sdr intent inputs to
    enc by @aayushsoni111 in #7482
  * Fixed typo in documentation of MagickAdaptiveBlurImage by @JonahEMorgan
    in #7500
  * Silence warning when freetype delegate is disabled. by @niclet in #7515</changelog>
</package>
<package pkgid="88fd9f98fa389b665e2cacb7f71fae0acd1027f5f56a01ee7925b47431e43978e9af5b31fc9b390341c73051ee914c906cf5d401a4321fb6b4b12968f640e02f" name="ImageMagick-config-7-SUSE" arch="i586">
  <version epoch="0" ver="7.1.1.37" rel="1.0.4.1.sr20240803"/>
  <changelog author="pgajdos@suse.com" date="1705320000">- use correct policy.xml</changelog>
  <changelog author="pgajdos@suse.com" date="1705406400">- only one configuration again, based on upstream 'secure' policy
- other upstream policies packaged in documentation</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1705838400">- version update to 7.1.1.27
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1707652800">- version update to 7.1.1.28
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Michael Vetter &lt;mvetter@suse.com&gt;" date="1708603200">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1709035200">- version update to 7.1.1.29
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709380800">- We can not replace a symlink with a directory on the directly
  Unregister the whole group manually in %pre with
  update-alternatives. (boo#1220818)
  Restore Requires(pre) on update-alternatives for the mean time.</changelog>
  <changelog author="pgajdos@suse.com" date="1709553600">- enable SVG again
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711022400">- allow delegates to be executed, was disabled by default policy
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711108800">- allow stdin/stdout
- modified patches
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1712577600">- version update to 7.1.1.30
  * install perl module into user-specified prefix by @bugfood in #7192
  * Fix bmp option to bypass file size check by @OnTheList-1 in #7194
  * add support for encoding/decoding ultrahdr images by @aayushsoni111 in #7198
  * Updates to uhdr.c by @aayushsoni111 in #7217
- added patches
  fix https://github.com/ImageMagick/ImageMagick/issues/7230
  + ImageMagick-wmflite-detection.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713182400">- relax list-length resource limit, fixes build of python-Wand
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713787200">- version update to 7.1.1.31
  * Convert big PDF documents is slow #7263
  * Update release.yml #7258
  * Update README.md #7245
  * uhdr.c: verify the availability of error message before accessing it #7229
- removed patches
  - ImageMagick-wmflite-detection.patch (upstreamed)
  `</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1714910400">- version update to 7.1.1.32
  * Fix GIF ICC profile reading #7282
  * uhdr.c: add support for rgb inputs #7273</changelog>
  <changelog author="pgajdos@suse.com" date="1715860800">- reverted update-alternatives usage removal [bsc#1122033][bsc#1220818]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1716638400">- version update to 7.1.1.33
  * Fix typo in #7294
  * Bump azure/trusted-signing-action from 0.3.16 to 0.3.18 in #7325
  * Bump caphyon/advinst-github-action from 1.1 to 2.0 in #7326
- added patch
  + ImageMagick-update-image-signature.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1719144000">- version update to 7.1.1.34
  * Bump azure/trusted-signing-action from 0.3.18 to 0.3.19 in #7348
  * Fix a typo in convert deprecation warning in #7383
  * Bump azure/trusted-signing-action from 0.3.19 to 0.3.20 in #7388
  * Updated FontConfig query to include font index, fixing (#7374) in #7409
- removed patch (upstreamed)
  - ImageMagick-update-image-signature.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1721908800">- version update to 7.1.1.35
  * Also set dpi-x and dpi-y when running rsvg-convert. eac001f
  * convert sub-command is deprecated d67039e
  * only operators should disable "identify ping" (ImageMagick/ImageMagick#7441) a262192
  * fix compiler error ecc21c7
  * -outdir deprecated 9980efa
  * Get the correct width and height when heic:preserve-orientation is set to true. ed3a0dd
  * Set heic image orientation using transform information. ba470aa
  * Exit earlier when the symlink could not be created when invoking the svg:decode delegate. 8a48edd
  * Fixed MSYS2 build error. 3b22378
  * Also set the DNG properties when pinging the image. fc1c61b
  * Silence warning when lqr delegate is disabled. ae0d69a
  * Added version check for the heif_properties.h include. 656b4d2
  * Make sure we always use the i64 version of the "file methods" on Windows. b3e8a78
  * Changed defines to use method instead of a define. 75b66c4
  * Changes due to upgrade of libheif. 841f033
  * smooth the rendering of an ellipse (ImageMagick/ImageMagick#7465) 1bfce2a</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- version update to 7.1.1.36
  * uhdr.c: default initialize range field for hdr/sdr intent inputs to
    enc by @aayushsoni111 in #7482
  * Fixed typo in documentation of MagickAdaptiveBlurImage by @JonahEMorgan
    in #7500
  * Silence warning when freetype delegate is disabled. by @niclet in #7515</changelog>
  <changelog author="pgajdos@suse.com" date="1724760000">- version update to 7.1.1.37
  * Bump azure/trusted-signing-action from 0.3.20 to 0.4.0 #7518
  * Silence warning and fix HEIC_COMPUTE_NUMERIC_VERSION definition when heic delegate is disabled. #7516
  * protect macro arguments with parens 86cb2b1
  * eliminate compiler warnings d90d8b4
  * correct copyright year 115271e
  * Ignore multiple exif and xmp profiles for the same jxl frame and fix reading those profiles per frame. c301208
  * read/write in chunks fff3058
  * optimize fwrite() arguments ada6785
  * Renamed Output folder to Artifacts. 2a69677
  * cancel interactive window selection with right button press ea2a2db
  * cosmetic 712bde4
  * eliminate compiler warning 9a9a25c
  * eliminate compiler warning 0bd1687
  * Make images mandatory in the issue template. c01fd37
  * Added extra header detection for avif files. 9fc0590
  * allow SeekBlob() to set an offset beyond the end of the blob 27c3f99
  * be less forgiving for invalid image indexes 25db2e5
  * Fixed problem with empty macros (#7562) 9fda5f2
  * Added missing null checks for RequestOpenCLDevice. f85448e
  * Added missing null check for AcquireOpenCLCommandQueue. 295e9c8
  * persist app1 jpeg profile (ImageMagick/ImageMagick#4713) f0357c7
  * Fixed build error. b3dd431
  * Remove some of the dependencies for the macos-13 build. d0bce95
  * parentheses is the plural of parenthesis 1fac80a
  * distribute quantization error for -dither FloydSteinberg -depth 5b2825b
  * release 8a0da9f
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565</changelog>
</package>
<package pkgid="a4a2b781f5c4dc6680893762732ab4d39b78774b0692c3aa64b339202a53df110c1985f9f0f0d48bf760e7a3858332f79077177b0716d5d9c9cd616fca1ccc92" name="ImageMagick-config-7-SUSE" arch="x86_64">
  <version epoch="0" ver="7.1.1.37" rel="1.0.4.1.sr20240803"/>
  <changelog author="pgajdos@suse.com" date="1705320000">- use correct policy.xml</changelog>
  <changelog author="pgajdos@suse.com" date="1705406400">- only one configuration again, based on upstream 'secure' policy
- other upstream policies packaged in documentation</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1705838400">- version update to 7.1.1.27
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1707652800">- version update to 7.1.1.28
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Michael Vetter &lt;mvetter@suse.com&gt;" date="1708603200">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1709035200">- version update to 7.1.1.29
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709380800">- We can not replace a symlink with a directory on the directly
  Unregister the whole group manually in %pre with
  update-alternatives. (boo#1220818)
  Restore Requires(pre) on update-alternatives for the mean time.</changelog>
  <changelog author="pgajdos@suse.com" date="1709553600">- enable SVG again
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711022400">- allow delegates to be executed, was disabled by default policy
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711108800">- allow stdin/stdout
- modified patches
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1712577600">- version update to 7.1.1.30
  * install perl module into user-specified prefix by @bugfood in #7192
  * Fix bmp option to bypass file size check by @OnTheList-1 in #7194
  * add support for encoding/decoding ultrahdr images by @aayushsoni111 in #7198
  * Updates to uhdr.c by @aayushsoni111 in #7217
- added patches
  fix https://github.com/ImageMagick/ImageMagick/issues/7230
  + ImageMagick-wmflite-detection.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713182400">- relax list-length resource limit, fixes build of python-Wand
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713787200">- version update to 7.1.1.31
  * Convert big PDF documents is slow #7263
  * Update release.yml #7258
  * Update README.md #7245
  * uhdr.c: verify the availability of error message before accessing it #7229
- removed patches
  - ImageMagick-wmflite-detection.patch (upstreamed)
  `</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1714910400">- version update to 7.1.1.32
  * Fix GIF ICC profile reading #7282
  * uhdr.c: add support for rgb inputs #7273</changelog>
  <changelog author="pgajdos@suse.com" date="1715860800">- reverted update-alternatives usage removal [bsc#1122033][bsc#1220818]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1716638400">- version update to 7.1.1.33
  * Fix typo in #7294
  * Bump azure/trusted-signing-action from 0.3.16 to 0.3.18 in #7325
  * Bump caphyon/advinst-github-action from 1.1 to 2.0 in #7326
- added patch
  + ImageMagick-update-image-signature.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1719144000">- version update to 7.1.1.34
  * Bump azure/trusted-signing-action from 0.3.18 to 0.3.19 in #7348
  * Fix a typo in convert deprecation warning in #7383
  * Bump azure/trusted-signing-action from 0.3.19 to 0.3.20 in #7388
  * Updated FontConfig query to include font index, fixing (#7374) in #7409
- removed patch (upstreamed)
  - ImageMagick-update-image-signature.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1721908800">- version update to 7.1.1.35
  * Also set dpi-x and dpi-y when running rsvg-convert. eac001f
  * convert sub-command is deprecated d67039e
  * only operators should disable "identify ping" (ImageMagick/ImageMagick#7441) a262192
  * fix compiler error ecc21c7
  * -outdir deprecated 9980efa
  * Get the correct width and height when heic:preserve-orientation is set to true. ed3a0dd
  * Set heic image orientation using transform information. ba470aa
  * Exit earlier when the symlink could not be created when invoking the svg:decode delegate. 8a48edd
  * Fixed MSYS2 build error. 3b22378
  * Also set the DNG properties when pinging the image. fc1c61b
  * Silence warning when lqr delegate is disabled. ae0d69a
  * Added version check for the heif_properties.h include. 656b4d2
  * Make sure we always use the i64 version of the "file methods" on Windows. b3e8a78
  * Changed defines to use method instead of a define. 75b66c4
  * Changes due to upgrade of libheif. 841f033
  * smooth the rendering of an ellipse (ImageMagick/ImageMagick#7465) 1bfce2a</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- version update to 7.1.1.36
  * uhdr.c: default initialize range field for hdr/sdr intent inputs to
    enc by @aayushsoni111 in #7482
  * Fixed typo in documentation of MagickAdaptiveBlurImage by @JonahEMorgan
    in #7500
  * Silence warning when freetype delegate is disabled. by @niclet in #7515</changelog>
  <changelog author="pgajdos@suse.com" date="1724760000">- version update to 7.1.1.37
  * Bump azure/trusted-signing-action from 0.3.20 to 0.4.0 #7518
  * Silence warning and fix HEIC_COMPUTE_NUMERIC_VERSION definition when heic delegate is disabled. #7516
  * protect macro arguments with parens 86cb2b1
  * eliminate compiler warnings d90d8b4
  * correct copyright year 115271e
  * Ignore multiple exif and xmp profiles for the same jxl frame and fix reading those profiles per frame. c301208
  * read/write in chunks fff3058
  * optimize fwrite() arguments ada6785
  * Renamed Output folder to Artifacts. 2a69677
  * cancel interactive window selection with right button press ea2a2db
  * cosmetic 712bde4
  * eliminate compiler warning 9a9a25c
  * eliminate compiler warning 0bd1687
  * Make images mandatory in the issue template. c01fd37
  * Added extra header detection for avif files. 9fc0590
  * allow SeekBlob() to set an offset beyond the end of the blob 27c3f99
  * be less forgiving for invalid image indexes 25db2e5
  * Fixed problem with empty macros (#7562) 9fda5f2
  * Added missing null checks for RequestOpenCLDevice. f85448e
  * Added missing null check for AcquireOpenCLCommandQueue. 295e9c8
  * persist app1 jpeg profile (ImageMagick/ImageMagick#4713) f0357c7
  * Fixed build error. b3dd431
  * Remove some of the dependencies for the macos-13 build. d0bce95
  * parentheses is the plural of parenthesis 1fac80a
  * distribute quantization error for -dither FloydSteinberg -depth 5b2825b
  * release 8a0da9f
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565</changelog>
</package>
<package pkgid="99bd81572c3b58db4504e5146b6473ca9df2078fe0334c3031cc9414d973f46e4fb7070b32b4138f5b2a611e0b4c5af40800c3f919a8759a48ee7f9fd2c41304" name="ImageMagick-config-7-SUSE" arch="i586">
  <version epoch="0" ver="7.1.1.37" rel="1.1"/>
  <changelog author="pgajdos@suse.com" date="1705320000">- use correct policy.xml</changelog>
  <changelog author="pgajdos@suse.com" date="1705406400">- only one configuration again, based on upstream 'secure' policy
- other upstream policies packaged in documentation</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1705838400">- version update to 7.1.1.27
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1707652800">- version update to 7.1.1.28
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Michael Vetter &lt;mvetter@suse.com&gt;" date="1708603200">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1709035200">- version update to 7.1.1.29
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709380800">- We can not replace a symlink with a directory on the directly
  Unregister the whole group manually in %pre with
  update-alternatives. (boo#1220818)
  Restore Requires(pre) on update-alternatives for the mean time.</changelog>
  <changelog author="pgajdos@suse.com" date="1709553600">- enable SVG again
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711022400">- allow delegates to be executed, was disabled by default policy
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711108800">- allow stdin/stdout
- modified patches
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1712577600">- version update to 7.1.1.30
  * install perl module into user-specified prefix by @bugfood in #7192
  * Fix bmp option to bypass file size check by @OnTheList-1 in #7194
  * add support for encoding/decoding ultrahdr images by @aayushsoni111 in #7198
  * Updates to uhdr.c by @aayushsoni111 in #7217
- added patches
  fix https://github.com/ImageMagick/ImageMagick/issues/7230
  + ImageMagick-wmflite-detection.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713182400">- relax list-length resource limit, fixes build of python-Wand
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713787200">- version update to 7.1.1.31
  * Convert big PDF documents is slow #7263
  * Update release.yml #7258
  * Update README.md #7245
  * uhdr.c: verify the availability of error message before accessing it #7229
- removed patches
  - ImageMagick-wmflite-detection.patch (upstreamed)
  `</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1714910400">- version update to 7.1.1.32
  * Fix GIF ICC profile reading #7282
  * uhdr.c: add support for rgb inputs #7273</changelog>
  <changelog author="pgajdos@suse.com" date="1715860800">- reverted update-alternatives usage removal [bsc#1122033][bsc#1220818]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1716638400">- version update to 7.1.1.33
  * Fix typo in #7294
  * Bump azure/trusted-signing-action from 0.3.16 to 0.3.18 in #7325
  * Bump caphyon/advinst-github-action from 1.1 to 2.0 in #7326
- added patch
  + ImageMagick-update-image-signature.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1719144000">- version update to 7.1.1.34
  * Bump azure/trusted-signing-action from 0.3.18 to 0.3.19 in #7348
  * Fix a typo in convert deprecation warning in #7383
  * Bump azure/trusted-signing-action from 0.3.19 to 0.3.20 in #7388
  * Updated FontConfig query to include font index, fixing (#7374) in #7409
- removed patch (upstreamed)
  - ImageMagick-update-image-signature.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1721908800">- version update to 7.1.1.35
  * Also set dpi-x and dpi-y when running rsvg-convert. eac001f
  * convert sub-command is deprecated d67039e
  * only operators should disable "identify ping" (ImageMagick/ImageMagick#7441) a262192
  * fix compiler error ecc21c7
  * -outdir deprecated 9980efa
  * Get the correct width and height when heic:preserve-orientation is set to true. ed3a0dd
  * Set heic image orientation using transform information. ba470aa
  * Exit earlier when the symlink could not be created when invoking the svg:decode delegate. 8a48edd
  * Fixed MSYS2 build error. 3b22378
  * Also set the DNG properties when pinging the image. fc1c61b
  * Silence warning when lqr delegate is disabled. ae0d69a
  * Added version check for the heif_properties.h include. 656b4d2
  * Make sure we always use the i64 version of the "file methods" on Windows. b3e8a78
  * Changed defines to use method instead of a define. 75b66c4
  * Changes due to upgrade of libheif. 841f033
  * smooth the rendering of an ellipse (ImageMagick/ImageMagick#7465) 1bfce2a</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- version update to 7.1.1.36
  * uhdr.c: default initialize range field for hdr/sdr intent inputs to
    enc by @aayushsoni111 in #7482
  * Fixed typo in documentation of MagickAdaptiveBlurImage by @JonahEMorgan
    in #7500
  * Silence warning when freetype delegate is disabled. by @niclet in #7515</changelog>
  <changelog author="pgajdos@suse.com" date="1724760000">- version update to 7.1.1.37
  * Bump azure/trusted-signing-action from 0.3.20 to 0.4.0 #7518
  * Silence warning and fix HEIC_COMPUTE_NUMERIC_VERSION definition when heic delegate is disabled. #7516
  * protect macro arguments with parens 86cb2b1
  * eliminate compiler warnings d90d8b4
  * correct copyright year 115271e
  * Ignore multiple exif and xmp profiles for the same jxl frame and fix reading those profiles per frame. c301208
  * read/write in chunks fff3058
  * optimize fwrite() arguments ada6785
  * Renamed Output folder to Artifacts. 2a69677
  * cancel interactive window selection with right button press ea2a2db
  * cosmetic 712bde4
  * eliminate compiler warning 9a9a25c
  * eliminate compiler warning 0bd1687
  * Make images mandatory in the issue template. c01fd37
  * Added extra header detection for avif files. 9fc0590
  * allow SeekBlob() to set an offset beyond the end of the blob 27c3f99
  * be less forgiving for invalid image indexes 25db2e5
  * Fixed problem with empty macros (#7562) 9fda5f2
  * Added missing null checks for RequestOpenCLDevice. f85448e
  * Added missing null check for AcquireOpenCLCommandQueue. 295e9c8
  * persist app1 jpeg profile (ImageMagick/ImageMagick#4713) f0357c7
  * Fixed build error. b3dd431
  * Remove some of the dependencies for the macos-13 build. d0bce95
  * parentheses is the plural of parenthesis 1fac80a
  * distribute quantization error for -dither FloydSteinberg -depth 5b2825b
  * release 8a0da9f
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565</changelog>
</package>
<package pkgid="a53c815c9b02ec4787c365c326c881596d6031f5c4ff664d82173873cfad38ee505be9cdf96a855a6be3d02dcdd24ce5251b24865feb18ab222de09a9fb352a5" name="ImageMagick-config-7-SUSE" arch="x86_64">
  <version epoch="0" ver="7.1.1.37" rel="1.1"/>
  <changelog author="pgajdos@suse.com" date="1705320000">- use correct policy.xml</changelog>
  <changelog author="pgajdos@suse.com" date="1705406400">- only one configuration again, based on upstream 'secure' policy
- other upstream policies packaged in documentation</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1705838400">- version update to 7.1.1.27
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1707652800">- version update to 7.1.1.28
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Michael Vetter &lt;mvetter@suse.com&gt;" date="1708603200">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1709035200">- version update to 7.1.1.29
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709380800">- We can not replace a symlink with a directory on the directly
  Unregister the whole group manually in %pre with
  update-alternatives. (boo#1220818)
  Restore Requires(pre) on update-alternatives for the mean time.</changelog>
  <changelog author="pgajdos@suse.com" date="1709553600">- enable SVG again
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711022400">- allow delegates to be executed, was disabled by default policy
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711108800">- allow stdin/stdout
- modified patches
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1712577600">- version update to 7.1.1.30
  * install perl module into user-specified prefix by @bugfood in #7192
  * Fix bmp option to bypass file size check by @OnTheList-1 in #7194
  * add support for encoding/decoding ultrahdr images by @aayushsoni111 in #7198
  * Updates to uhdr.c by @aayushsoni111 in #7217
- added patches
  fix https://github.com/ImageMagick/ImageMagick/issues/7230
  + ImageMagick-wmflite-detection.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713182400">- relax list-length resource limit, fixes build of python-Wand
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713787200">- version update to 7.1.1.31
  * Convert big PDF documents is slow #7263
  * Update release.yml #7258
  * Update README.md #7245
  * uhdr.c: verify the availability of error message before accessing it #7229
- removed patches
  - ImageMagick-wmflite-detection.patch (upstreamed)
  `</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1714910400">- version update to 7.1.1.32
  * Fix GIF ICC profile reading #7282
  * uhdr.c: add support for rgb inputs #7273</changelog>
  <changelog author="pgajdos@suse.com" date="1715860800">- reverted update-alternatives usage removal [bsc#1122033][bsc#1220818]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1716638400">- version update to 7.1.1.33
  * Fix typo in #7294
  * Bump azure/trusted-signing-action from 0.3.16 to 0.3.18 in #7325
  * Bump caphyon/advinst-github-action from 1.1 to 2.0 in #7326
- added patch
  + ImageMagick-update-image-signature.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1719144000">- version update to 7.1.1.34
  * Bump azure/trusted-signing-action from 0.3.18 to 0.3.19 in #7348
  * Fix a typo in convert deprecation warning in #7383
  * Bump azure/trusted-signing-action from 0.3.19 to 0.3.20 in #7388
  * Updated FontConfig query to include font index, fixing (#7374) in #7409
- removed patch (upstreamed)
  - ImageMagick-update-image-signature.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1721908800">- version update to 7.1.1.35
  * Also set dpi-x and dpi-y when running rsvg-convert. eac001f
  * convert sub-command is deprecated d67039e
  * only operators should disable "identify ping" (ImageMagick/ImageMagick#7441) a262192
  * fix compiler error ecc21c7
  * -outdir deprecated 9980efa
  * Get the correct width and height when heic:preserve-orientation is set to true. ed3a0dd
  * Set heic image orientation using transform information. ba470aa
  * Exit earlier when the symlink could not be created when invoking the svg:decode delegate. 8a48edd
  * Fixed MSYS2 build error. 3b22378
  * Also set the DNG properties when pinging the image. fc1c61b
  * Silence warning when lqr delegate is disabled. ae0d69a
  * Added version check for the heif_properties.h include. 656b4d2
  * Make sure we always use the i64 version of the "file methods" on Windows. b3e8a78
  * Changed defines to use method instead of a define. 75b66c4
  * Changes due to upgrade of libheif. 841f033
  * smooth the rendering of an ellipse (ImageMagick/ImageMagick#7465) 1bfce2a</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- version update to 7.1.1.36
  * uhdr.c: default initialize range field for hdr/sdr intent inputs to
    enc by @aayushsoni111 in #7482
  * Fixed typo in documentation of MagickAdaptiveBlurImage by @JonahEMorgan
    in #7500
  * Silence warning when freetype delegate is disabled. by @niclet in #7515</changelog>
  <changelog author="pgajdos@suse.com" date="1724760000">- version update to 7.1.1.37
  * Bump azure/trusted-signing-action from 0.3.20 to 0.4.0 #7518
  * Silence warning and fix HEIC_COMPUTE_NUMERIC_VERSION definition when heic delegate is disabled. #7516
  * protect macro arguments with parens 86cb2b1
  * eliminate compiler warnings d90d8b4
  * correct copyright year 115271e
  * Ignore multiple exif and xmp profiles for the same jxl frame and fix reading those profiles per frame. c301208
  * read/write in chunks fff3058
  * optimize fwrite() arguments ada6785
  * Renamed Output folder to Artifacts. 2a69677
  * cancel interactive window selection with right button press ea2a2db
  * cosmetic 712bde4
  * eliminate compiler warning 9a9a25c
  * eliminate compiler warning 0bd1687
  * Make images mandatory in the issue template. c01fd37
  * Added extra header detection for avif files. 9fc0590
  * allow SeekBlob() to set an offset beyond the end of the blob 27c3f99
  * be less forgiving for invalid image indexes 25db2e5
  * Fixed problem with empty macros (#7562) 9fda5f2
  * Added missing null checks for RequestOpenCLDevice. f85448e
  * Added missing null check for AcquireOpenCLCommandQueue. 295e9c8
  * persist app1 jpeg profile (ImageMagick/ImageMagick#4713) f0357c7
  * Fixed build error. b3dd431
  * Remove some of the dependencies for the macos-13 build. d0bce95
  * parentheses is the plural of parenthesis 1fac80a
  * distribute quantization error for -dither FloydSteinberg -depth 5b2825b
  * release 8a0da9f
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565</changelog>
</package>
<package pkgid="b84d616742a368e58470cd6111710bd91be3e60511d6a8f4a7d37c5ba0de8d8acd4714c0fac4912dd1bd6bac2e2efde3615da42539ccfd69ec83ea925efa3e56" name="ImageMagick-config-7-SUSE" arch="i586">
  <version epoch="0" ver="7.1.1.39" rel="1.1"/>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1705838400">- version update to 7.1.1.27
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1707652800">- version update to 7.1.1.28
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Michael Vetter &lt;mvetter@suse.com&gt;" date="1708603200">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1709035200">- version update to 7.1.1.29
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709380800">- We can not replace a symlink with a directory on the directly
  Unregister the whole group manually in %pre with
  update-alternatives. (boo#1220818)
  Restore Requires(pre) on update-alternatives for the mean time.</changelog>
  <changelog author="pgajdos@suse.com" date="1709553600">- enable SVG again
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711022400">- allow delegates to be executed, was disabled by default policy
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711108800">- allow stdin/stdout
- modified patches
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1712577600">- version update to 7.1.1.30
  * install perl module into user-specified prefix by @bugfood in #7192
  * Fix bmp option to bypass file size check by @OnTheList-1 in #7194
  * add support for encoding/decoding ultrahdr images by @aayushsoni111 in #7198
  * Updates to uhdr.c by @aayushsoni111 in #7217
- added patches
  fix https://github.com/ImageMagick/ImageMagick/issues/7230
  + ImageMagick-wmflite-detection.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713182400">- relax list-length resource limit, fixes build of python-Wand
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713787200">- version update to 7.1.1.31
  * Convert big PDF documents is slow #7263
  * Update release.yml #7258
  * Update README.md #7245
  * uhdr.c: verify the availability of error message before accessing it #7229
- removed patches
  - ImageMagick-wmflite-detection.patch (upstreamed)
  `</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1714910400">- version update to 7.1.1.32
  * Fix GIF ICC profile reading #7282
  * uhdr.c: add support for rgb inputs #7273</changelog>
  <changelog author="pgajdos@suse.com" date="1715860800">- reverted update-alternatives usage removal [bsc#1122033][bsc#1220818]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1716638400">- version update to 7.1.1.33
  * Fix typo in #7294
  * Bump azure/trusted-signing-action from 0.3.16 to 0.3.18 in #7325
  * Bump caphyon/advinst-github-action from 1.1 to 2.0 in #7326
- added patch
  + ImageMagick-update-image-signature.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1719144000">- version update to 7.1.1.34
  * Bump azure/trusted-signing-action from 0.3.18 to 0.3.19 in #7348
  * Fix a typo in convert deprecation warning in #7383
  * Bump azure/trusted-signing-action from 0.3.19 to 0.3.20 in #7388
  * Updated FontConfig query to include font index, fixing (#7374) in #7409
- removed patch (upstreamed)
  - ImageMagick-update-image-signature.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1721908800">- version update to 7.1.1.35
  * Also set dpi-x and dpi-y when running rsvg-convert. eac001f
  * convert sub-command is deprecated d67039e
  * only operators should disable "identify ping" (ImageMagick/ImageMagick#7441) a262192
  * fix compiler error ecc21c7
  * -outdir deprecated 9980efa
  * Get the correct width and height when heic:preserve-orientation is set to true. ed3a0dd
  * Set heic image orientation using transform information. ba470aa
  * Exit earlier when the symlink could not be created when invoking the svg:decode delegate. 8a48edd
  * Fixed MSYS2 build error. 3b22378
  * Also set the DNG properties when pinging the image. fc1c61b
  * Silence warning when lqr delegate is disabled. ae0d69a
  * Added version check for the heif_properties.h include. 656b4d2
  * Make sure we always use the i64 version of the "file methods" on Windows. b3e8a78
  * Changed defines to use method instead of a define. 75b66c4
  * Changes due to upgrade of libheif. 841f033
  * smooth the rendering of an ellipse (ImageMagick/ImageMagick#7465) 1bfce2a</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- version update to 7.1.1.36
  * uhdr.c: default initialize range field for hdr/sdr intent inputs to
    enc by @aayushsoni111 in #7482
  * Fixed typo in documentation of MagickAdaptiveBlurImage by @JonahEMorgan
    in #7500
  * Silence warning when freetype delegate is disabled. by @niclet in #7515</changelog>
  <changelog author="pgajdos@suse.com" date="1724760000">- version update to 7.1.1.37
  * Bump azure/trusted-signing-action from 0.3.20 to 0.4.0 #7518
  * Silence warning and fix HEIC_COMPUTE_NUMERIC_VERSION definition when heic delegate is disabled. #7516
  * protect macro arguments with parens 86cb2b1
  * eliminate compiler warnings d90d8b4
  * correct copyright year 115271e
  * Ignore multiple exif and xmp profiles for the same jxl frame and fix reading those profiles per frame. c301208
  * read/write in chunks fff3058
  * optimize fwrite() arguments ada6785
  * Renamed Output folder to Artifacts. 2a69677
  * cancel interactive window selection with right button press ea2a2db
  * cosmetic 712bde4
  * eliminate compiler warning 9a9a25c
  * eliminate compiler warning 0bd1687
  * Make images mandatory in the issue template. c01fd37
  * Added extra header detection for avif files. 9fc0590
  * allow SeekBlob() to set an offset beyond the end of the blob 27c3f99
  * be less forgiving for invalid image indexes 25db2e5
  * Fixed problem with empty macros (#7562) 9fda5f2
  * Added missing null checks for RequestOpenCLDevice. f85448e
  * Added missing null check for AcquireOpenCLCommandQueue. 295e9c8
  * persist app1 jpeg profile (ImageMagick/ImageMagick#4713) f0357c7
  * Fixed build error. b3dd431
  * Remove some of the dependencies for the macos-13 build. d0bce95
  * parentheses is the plural of parenthesis 1fac80a
  * distribute quantization error for -dither FloydSteinberg -depth 5b2825b
  * release 8a0da9f
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565</changelog>
  <changelog author="pgajdos@suse.com" date="1726228800">- version update to 7.1.1.38
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565
  * beta release 250b748
  * deprecate the -respect-paranthesis option 4e7d789
  * Build fixes. b80c509
  * save IPTC + ICC profiles are profiles, not properties 25d5335
  * update copyright year 4caf7d1
  * Patch to fix reading of the ICC profile. 18377f9
  * prepping framework to interact with X11 clipboard b20dda3
  * Build fix. 20a5af3
  * More build fixes. c36fdf0
  * Another attempt to silence the warnings. 600708c
  * Use SetImageProfilePrivate to avoid duplicate allocations. f246eab
  * support clipboard delegate 39a135a
  * restore clipboard.c 1070b17
  * improved rounding 27a0a9c
  * don't allow negative scenes 8fda05a
  * eliminate compiler warnings 878daf9
- modified patches
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1728216000">- version update to 7.1.1.39
  * Add missing Threshold command to command array of Region of Interest mode #7606
  * uhdr.c: update uhdr coder for gainmap metadata configuration #7635
  * uhdr: fix language choice in autoconf #7663</changelog>
</package>
<package pkgid="594660768a665521f6d2144ca88a26e9249762877745a11210bcf80cccf339574ebf033a748c76c609cee869ab25a3a936675c69e3599bd94af1d0315e71cbf8" name="ImageMagick-config-7-SUSE" arch="x86_64">
  <version epoch="0" ver="7.1.1.39" rel="1.1"/>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1705838400">- version update to 7.1.1.27
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1707652800">- version update to 7.1.1.28
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Michael Vetter &lt;mvetter@suse.com&gt;" date="1708603200">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1709035200">- version update to 7.1.1.29
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709380800">- We can not replace a symlink with a directory on the directly
  Unregister the whole group manually in %pre with
  update-alternatives. (boo#1220818)
  Restore Requires(pre) on update-alternatives for the mean time.</changelog>
  <changelog author="pgajdos@suse.com" date="1709553600">- enable SVG again
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711022400">- allow delegates to be executed, was disabled by default policy
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711108800">- allow stdin/stdout
- modified patches
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1712577600">- version update to 7.1.1.30
  * install perl module into user-specified prefix by @bugfood in #7192
  * Fix bmp option to bypass file size check by @OnTheList-1 in #7194
  * add support for encoding/decoding ultrahdr images by @aayushsoni111 in #7198
  * Updates to uhdr.c by @aayushsoni111 in #7217
- added patches
  fix https://github.com/ImageMagick/ImageMagick/issues/7230
  + ImageMagick-wmflite-detection.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713182400">- relax list-length resource limit, fixes build of python-Wand
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713787200">- version update to 7.1.1.31
  * Convert big PDF documents is slow #7263
  * Update release.yml #7258
  * Update README.md #7245
  * uhdr.c: verify the availability of error message before accessing it #7229
- removed patches
  - ImageMagick-wmflite-detection.patch (upstreamed)
  `</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1714910400">- version update to 7.1.1.32
  * Fix GIF ICC profile reading #7282
  * uhdr.c: add support for rgb inputs #7273</changelog>
  <changelog author="pgajdos@suse.com" date="1715860800">- reverted update-alternatives usage removal [bsc#1122033][bsc#1220818]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1716638400">- version update to 7.1.1.33
  * Fix typo in #7294
  * Bump azure/trusted-signing-action from 0.3.16 to 0.3.18 in #7325
  * Bump caphyon/advinst-github-action from 1.1 to 2.0 in #7326
- added patch
  + ImageMagick-update-image-signature.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1719144000">- version update to 7.1.1.34
  * Bump azure/trusted-signing-action from 0.3.18 to 0.3.19 in #7348
  * Fix a typo in convert deprecation warning in #7383
  * Bump azure/trusted-signing-action from 0.3.19 to 0.3.20 in #7388
  * Updated FontConfig query to include font index, fixing (#7374) in #7409
- removed patch (upstreamed)
  - ImageMagick-update-image-signature.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1721908800">- version update to 7.1.1.35
  * Also set dpi-x and dpi-y when running rsvg-convert. eac001f
  * convert sub-command is deprecated d67039e
  * only operators should disable "identify ping" (ImageMagick/ImageMagick#7441) a262192
  * fix compiler error ecc21c7
  * -outdir deprecated 9980efa
  * Get the correct width and height when heic:preserve-orientation is set to true. ed3a0dd
  * Set heic image orientation using transform information. ba470aa
  * Exit earlier when the symlink could not be created when invoking the svg:decode delegate. 8a48edd
  * Fixed MSYS2 build error. 3b22378
  * Also set the DNG properties when pinging the image. fc1c61b
  * Silence warning when lqr delegate is disabled. ae0d69a
  * Added version check for the heif_properties.h include. 656b4d2
  * Make sure we always use the i64 version of the "file methods" on Windows. b3e8a78
  * Changed defines to use method instead of a define. 75b66c4
  * Changes due to upgrade of libheif. 841f033
  * smooth the rendering of an ellipse (ImageMagick/ImageMagick#7465) 1bfce2a</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- version update to 7.1.1.36
  * uhdr.c: default initialize range field for hdr/sdr intent inputs to
    enc by @aayushsoni111 in #7482
  * Fixed typo in documentation of MagickAdaptiveBlurImage by @JonahEMorgan
    in #7500
  * Silence warning when freetype delegate is disabled. by @niclet in #7515</changelog>
  <changelog author="pgajdos@suse.com" date="1724760000">- version update to 7.1.1.37
  * Bump azure/trusted-signing-action from 0.3.20 to 0.4.0 #7518
  * Silence warning and fix HEIC_COMPUTE_NUMERIC_VERSION definition when heic delegate is disabled. #7516
  * protect macro arguments with parens 86cb2b1
  * eliminate compiler warnings d90d8b4
  * correct copyright year 115271e
  * Ignore multiple exif and xmp profiles for the same jxl frame and fix reading those profiles per frame. c301208
  * read/write in chunks fff3058
  * optimize fwrite() arguments ada6785
  * Renamed Output folder to Artifacts. 2a69677
  * cancel interactive window selection with right button press ea2a2db
  * cosmetic 712bde4
  * eliminate compiler warning 9a9a25c
  * eliminate compiler warning 0bd1687
  * Make images mandatory in the issue template. c01fd37
  * Added extra header detection for avif files. 9fc0590
  * allow SeekBlob() to set an offset beyond the end of the blob 27c3f99
  * be less forgiving for invalid image indexes 25db2e5
  * Fixed problem with empty macros (#7562) 9fda5f2
  * Added missing null checks for RequestOpenCLDevice. f85448e
  * Added missing null check for AcquireOpenCLCommandQueue. 295e9c8
  * persist app1 jpeg profile (ImageMagick/ImageMagick#4713) f0357c7
  * Fixed build error. b3dd431
  * Remove some of the dependencies for the macos-13 build. d0bce95
  * parentheses is the plural of parenthesis 1fac80a
  * distribute quantization error for -dither FloydSteinberg -depth 5b2825b
  * release 8a0da9f
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565</changelog>
  <changelog author="pgajdos@suse.com" date="1726228800">- version update to 7.1.1.38
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565
  * beta release 250b748
  * deprecate the -respect-paranthesis option 4e7d789
  * Build fixes. b80c509
  * save IPTC + ICC profiles are profiles, not properties 25d5335
  * update copyright year 4caf7d1
  * Patch to fix reading of the ICC profile. 18377f9
  * prepping framework to interact with X11 clipboard b20dda3
  * Build fix. 20a5af3
  * More build fixes. c36fdf0
  * Another attempt to silence the warnings. 600708c
  * Use SetImageProfilePrivate to avoid duplicate allocations. f246eab
  * support clipboard delegate 39a135a
  * restore clipboard.c 1070b17
  * improved rounding 27a0a9c
  * don't allow negative scenes 8fda05a
  * eliminate compiler warnings 878daf9
- modified patches
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1728216000">- version update to 7.1.1.39
  * Add missing Threshold command to command array of Region of Interest mode #7606
  * uhdr.c: update uhdr coder for gainmap metadata configuration #7635
  * uhdr: fix language choice in autoconf #7663</changelog>
</package>
<package pkgid="21219a3f109e837adab8e5faefc4033d0bbad934d28aae7496917512553548d477aa1a0cb6c9d4f21e0bb2bb0cb571228b807b5be168f2274f1e6bb0398491cd" name="ImageMagick-config-7-SUSE" arch="i586">
  <version epoch="0" ver="7.1.1.41" rel="1.0.2.1.sr20241103"/>
  <changelog author="Michael Vetter &lt;mvetter@suse.com&gt;" date="1708603200">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1709035200">- version update to 7.1.1.29
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709380800">- We can not replace a symlink with a directory on the directly
  Unregister the whole group manually in %pre with
  update-alternatives. (boo#1220818)
  Restore Requires(pre) on update-alternatives for the mean time.</changelog>
  <changelog author="pgajdos@suse.com" date="1709553600">- enable SVG again
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711022400">- allow delegates to be executed, was disabled by default policy
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711108800">- allow stdin/stdout
- modified patches
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1712577600">- version update to 7.1.1.30
  * install perl module into user-specified prefix by @bugfood in #7192
  * Fix bmp option to bypass file size check by @OnTheList-1 in #7194
  * add support for encoding/decoding ultrahdr images by @aayushsoni111 in #7198
  * Updates to uhdr.c by @aayushsoni111 in #7217
- added patches
  fix https://github.com/ImageMagick/ImageMagick/issues/7230
  + ImageMagick-wmflite-detection.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713182400">- relax list-length resource limit, fixes build of python-Wand
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713787200">- version update to 7.1.1.31
  * Convert big PDF documents is slow #7263
  * Update release.yml #7258
  * Update README.md #7245
  * uhdr.c: verify the availability of error message before accessing it #7229
- removed patches
  - ImageMagick-wmflite-detection.patch (upstreamed)
  `</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1714910400">- version update to 7.1.1.32
  * Fix GIF ICC profile reading #7282
  * uhdr.c: add support for rgb inputs #7273</changelog>
  <changelog author="pgajdos@suse.com" date="1715860800">- reverted update-alternatives usage removal [bsc#1122033][bsc#1220818]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1716638400">- version update to 7.1.1.33
  * Fix typo in #7294
  * Bump azure/trusted-signing-action from 0.3.16 to 0.3.18 in #7325
  * Bump caphyon/advinst-github-action from 1.1 to 2.0 in #7326
- added patch
  + ImageMagick-update-image-signature.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1719144000">- version update to 7.1.1.34
  * Bump azure/trusted-signing-action from 0.3.18 to 0.3.19 in #7348
  * Fix a typo in convert deprecation warning in #7383
  * Bump azure/trusted-signing-action from 0.3.19 to 0.3.20 in #7388
  * Updated FontConfig query to include font index, fixing (#7374) in #7409
- removed patch (upstreamed)
  - ImageMagick-update-image-signature.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1721908800">- version update to 7.1.1.35
  * Also set dpi-x and dpi-y when running rsvg-convert. eac001f
  * convert sub-command is deprecated d67039e
  * only operators should disable "identify ping" (ImageMagick/ImageMagick#7441) a262192
  * fix compiler error ecc21c7
  * -outdir deprecated 9980efa
  * Get the correct width and height when heic:preserve-orientation is set to true. ed3a0dd
  * Set heic image orientation using transform information. ba470aa
  * Exit earlier when the symlink could not be created when invoking the svg:decode delegate. 8a48edd
  * Fixed MSYS2 build error. 3b22378
  * Also set the DNG properties when pinging the image. fc1c61b
  * Silence warning when lqr delegate is disabled. ae0d69a
  * Added version check for the heif_properties.h include. 656b4d2
  * Make sure we always use the i64 version of the "file methods" on Windows. b3e8a78
  * Changed defines to use method instead of a define. 75b66c4
  * Changes due to upgrade of libheif. 841f033
  * smooth the rendering of an ellipse (ImageMagick/ImageMagick#7465) 1bfce2a</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- version update to 7.1.1.36
  * uhdr.c: default initialize range field for hdr/sdr intent inputs to
    enc by @aayushsoni111 in #7482
  * Fixed typo in documentation of MagickAdaptiveBlurImage by @JonahEMorgan
    in #7500
  * Silence warning when freetype delegate is disabled. by @niclet in #7515</changelog>
  <changelog author="pgajdos@suse.com" date="1724760000">- version update to 7.1.1.37
  * Bump azure/trusted-signing-action from 0.3.20 to 0.4.0 #7518
  * Silence warning and fix HEIC_COMPUTE_NUMERIC_VERSION definition when heic delegate is disabled. #7516
  * protect macro arguments with parens 86cb2b1
  * eliminate compiler warnings d90d8b4
  * correct copyright year 115271e
  * Ignore multiple exif and xmp profiles for the same jxl frame and fix reading those profiles per frame. c301208
  * read/write in chunks fff3058
  * optimize fwrite() arguments ada6785
  * Renamed Output folder to Artifacts. 2a69677
  * cancel interactive window selection with right button press ea2a2db
  * cosmetic 712bde4
  * eliminate compiler warning 9a9a25c
  * eliminate compiler warning 0bd1687
  * Make images mandatory in the issue template. c01fd37
  * Added extra header detection for avif files. 9fc0590
  * allow SeekBlob() to set an offset beyond the end of the blob 27c3f99
  * be less forgiving for invalid image indexes 25db2e5
  * Fixed problem with empty macros (#7562) 9fda5f2
  * Added missing null checks for RequestOpenCLDevice. f85448e
  * Added missing null check for AcquireOpenCLCommandQueue. 295e9c8
  * persist app1 jpeg profile (ImageMagick/ImageMagick#4713) f0357c7
  * Fixed build error. b3dd431
  * Remove some of the dependencies for the macos-13 build. d0bce95
  * parentheses is the plural of parenthesis 1fac80a
  * distribute quantization error for -dither FloydSteinberg -depth 5b2825b
  * release 8a0da9f
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565</changelog>
  <changelog author="pgajdos@suse.com" date="1726228800">- version update to 7.1.1.38
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565
  * beta release 250b748
  * deprecate the -respect-paranthesis option 4e7d789
  * Build fixes. b80c509
  * save IPTC + ICC profiles are profiles, not properties 25d5335
  * update copyright year 4caf7d1
  * Patch to fix reading of the ICC profile. 18377f9
  * prepping framework to interact with X11 clipboard b20dda3
  * Build fix. 20a5af3
  * More build fixes. c36fdf0
  * Another attempt to silence the warnings. 600708c
  * Use SetImageProfilePrivate to avoid duplicate allocations. f246eab
  * support clipboard delegate 39a135a
  * restore clipboard.c 1070b17
  * improved rounding 27a0a9c
  * don't allow negative scenes 8fda05a
  * eliminate compiler warnings 878daf9
- modified patches
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1728216000">- version update to 7.1.1.39
  * Add missing Threshold command to command array of Region of Interest mode #7606
  * uhdr.c: update uhdr coder for gainmap metadata configuration #7635
  * uhdr: fix language choice in autoconf #7663</changelog>
  <changelog author="Yann BOYER &lt;yann.boyer742@gmail.com&gt;" date="1731326400">- version update to 7.1.1.40
  * .cut (Dr Halo) reading when run count in header #7734
  * Bump azure/trusted-signing-action from 0.4.0 to 0.5.0 #7725
  * Implement Magic Kernel Sharp 2013 and 2021 #7701
  * don't process TIFF image if there is an exception
  * Corrected check for indexed channels in PSD files.
  * export exception when undo resource limit exceeded</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1731844800">- version update to 7.1.1.41
  * Fix compiler identification with Clang on Darwin in #7773
  * revert map changes breaking ABI in #7768</changelog>
</package>
<package pkgid="53678c97b5117bbb54e302fb89b7137794a0534d30e221ebaac3c33da2ad1f0602575e2799b1d822e0c2b773781360a3aee43f23e62ba0fbfc8202e9313ef61e" name="ImageMagick-config-7-SUSE" arch="x86_64">
  <version epoch="0" ver="7.1.1.41" rel="1.0.2.1.sr20241103"/>
  <changelog author="Michael Vetter &lt;mvetter@suse.com&gt;" date="1708603200">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1709035200">- version update to 7.1.1.29
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709380800">- We can not replace a symlink with a directory on the directly
  Unregister the whole group manually in %pre with
  update-alternatives. (boo#1220818)
  Restore Requires(pre) on update-alternatives for the mean time.</changelog>
  <changelog author="pgajdos@suse.com" date="1709553600">- enable SVG again
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711022400">- allow delegates to be executed, was disabled by default policy
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711108800">- allow stdin/stdout
- modified patches
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1712577600">- version update to 7.1.1.30
  * install perl module into user-specified prefix by @bugfood in #7192
  * Fix bmp option to bypass file size check by @OnTheList-1 in #7194
  * add support for encoding/decoding ultrahdr images by @aayushsoni111 in #7198
  * Updates to uhdr.c by @aayushsoni111 in #7217
- added patches
  fix https://github.com/ImageMagick/ImageMagick/issues/7230
  + ImageMagick-wmflite-detection.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713182400">- relax list-length resource limit, fixes build of python-Wand
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713787200">- version update to 7.1.1.31
  * Convert big PDF documents is slow #7263
  * Update release.yml #7258
  * Update README.md #7245
  * uhdr.c: verify the availability of error message before accessing it #7229
- removed patches
  - ImageMagick-wmflite-detection.patch (upstreamed)
  `</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1714910400">- version update to 7.1.1.32
  * Fix GIF ICC profile reading #7282
  * uhdr.c: add support for rgb inputs #7273</changelog>
  <changelog author="pgajdos@suse.com" date="1715860800">- reverted update-alternatives usage removal [bsc#1122033][bsc#1220818]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1716638400">- version update to 7.1.1.33
  * Fix typo in #7294
  * Bump azure/trusted-signing-action from 0.3.16 to 0.3.18 in #7325
  * Bump caphyon/advinst-github-action from 1.1 to 2.0 in #7326
- added patch
  + ImageMagick-update-image-signature.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1719144000">- version update to 7.1.1.34
  * Bump azure/trusted-signing-action from 0.3.18 to 0.3.19 in #7348
  * Fix a typo in convert deprecation warning in #7383
  * Bump azure/trusted-signing-action from 0.3.19 to 0.3.20 in #7388
  * Updated FontConfig query to include font index, fixing (#7374) in #7409
- removed patch (upstreamed)
  - ImageMagick-update-image-signature.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1721908800">- version update to 7.1.1.35
  * Also set dpi-x and dpi-y when running rsvg-convert. eac001f
  * convert sub-command is deprecated d67039e
  * only operators should disable "identify ping" (ImageMagick/ImageMagick#7441) a262192
  * fix compiler error ecc21c7
  * -outdir deprecated 9980efa
  * Get the correct width and height when heic:preserve-orientation is set to true. ed3a0dd
  * Set heic image orientation using transform information. ba470aa
  * Exit earlier when the symlink could not be created when invoking the svg:decode delegate. 8a48edd
  * Fixed MSYS2 build error. 3b22378
  * Also set the DNG properties when pinging the image. fc1c61b
  * Silence warning when lqr delegate is disabled. ae0d69a
  * Added version check for the heif_properties.h include. 656b4d2
  * Make sure we always use the i64 version of the "file methods" on Windows. b3e8a78
  * Changed defines to use method instead of a define. 75b66c4
  * Changes due to upgrade of libheif. 841f033
  * smooth the rendering of an ellipse (ImageMagick/ImageMagick#7465) 1bfce2a</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- version update to 7.1.1.36
  * uhdr.c: default initialize range field for hdr/sdr intent inputs to
    enc by @aayushsoni111 in #7482
  * Fixed typo in documentation of MagickAdaptiveBlurImage by @JonahEMorgan
    in #7500
  * Silence warning when freetype delegate is disabled. by @niclet in #7515</changelog>
  <changelog author="pgajdos@suse.com" date="1724760000">- version update to 7.1.1.37
  * Bump azure/trusted-signing-action from 0.3.20 to 0.4.0 #7518
  * Silence warning and fix HEIC_COMPUTE_NUMERIC_VERSION definition when heic delegate is disabled. #7516
  * protect macro arguments with parens 86cb2b1
  * eliminate compiler warnings d90d8b4
  * correct copyright year 115271e
  * Ignore multiple exif and xmp profiles for the same jxl frame and fix reading those profiles per frame. c301208
  * read/write in chunks fff3058
  * optimize fwrite() arguments ada6785
  * Renamed Output folder to Artifacts. 2a69677
  * cancel interactive window selection with right button press ea2a2db
  * cosmetic 712bde4
  * eliminate compiler warning 9a9a25c
  * eliminate compiler warning 0bd1687
  * Make images mandatory in the issue template. c01fd37
  * Added extra header detection for avif files. 9fc0590
  * allow SeekBlob() to set an offset beyond the end of the blob 27c3f99
  * be less forgiving for invalid image indexes 25db2e5
  * Fixed problem with empty macros (#7562) 9fda5f2
  * Added missing null checks for RequestOpenCLDevice. f85448e
  * Added missing null check for AcquireOpenCLCommandQueue. 295e9c8
  * persist app1 jpeg profile (ImageMagick/ImageMagick#4713) f0357c7
  * Fixed build error. b3dd431
  * Remove some of the dependencies for the macos-13 build. d0bce95
  * parentheses is the plural of parenthesis 1fac80a
  * distribute quantization error for -dither FloydSteinberg -depth 5b2825b
  * release 8a0da9f
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565</changelog>
  <changelog author="pgajdos@suse.com" date="1726228800">- version update to 7.1.1.38
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565
  * beta release 250b748
  * deprecate the -respect-paranthesis option 4e7d789
  * Build fixes. b80c509
  * save IPTC + ICC profiles are profiles, not properties 25d5335
  * update copyright year 4caf7d1
  * Patch to fix reading of the ICC profile. 18377f9
  * prepping framework to interact with X11 clipboard b20dda3
  * Build fix. 20a5af3
  * More build fixes. c36fdf0
  * Another attempt to silence the warnings. 600708c
  * Use SetImageProfilePrivate to avoid duplicate allocations. f246eab
  * support clipboard delegate 39a135a
  * restore clipboard.c 1070b17
  * improved rounding 27a0a9c
  * don't allow negative scenes 8fda05a
  * eliminate compiler warnings 878daf9
- modified patches
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1728216000">- version update to 7.1.1.39
  * Add missing Threshold command to command array of Region of Interest mode #7606
  * uhdr.c: update uhdr coder for gainmap metadata configuration #7635
  * uhdr: fix language choice in autoconf #7663</changelog>
  <changelog author="Yann BOYER &lt;yann.boyer742@gmail.com&gt;" date="1731326400">- version update to 7.1.1.40
  * .cut (Dr Halo) reading when run count in header #7734
  * Bump azure/trusted-signing-action from 0.4.0 to 0.5.0 #7725
  * Implement Magic Kernel Sharp 2013 and 2021 #7701
  * don't process TIFF image if there is an exception
  * Corrected check for indexed channels in PSD files.
  * export exception when undo resource limit exceeded</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1731844800">- version update to 7.1.1.41
  * Fix compiler identification with Clang on Darwin in #7773
  * revert map changes breaking ABI in #7768</changelog>
</package>
<package pkgid="c764f60403c9704501b8b506edc41595c717a9d2e82b2818970f7123a6ff619bd8e2fea93ae9a74ea5c2a5c9ddf263e089de41069a392098956224d0174d89e1" name="ImageMagick-config-7-upstream-limited" arch="i586">
  <version epoch="0" ver="7.1.1.36" rel="1.1"/>
  <changelog author="munix9@googlemail.com" date="1705233600">- Fix incomplete removal of update-alternatives for config
- Replace obsolete 'otherproviders(imagick-%{config_spec})' with
  'Conflicts: imagick-%{config_spec}'</changelog>
  <changelog author="pgajdos@suse.com" date="1705320000">- use correct policy.xml</changelog>
  <changelog author="pgajdos@suse.com" date="1705406400">- only one configuration again, based on upstream 'secure' policy
- other upstream policies packaged in documentation</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1705838400">- version update to 7.1.1.27
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1707652800">- version update to 7.1.1.28
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Michael Vetter &lt;mvetter@suse.com&gt;" date="1708603200">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1709035200">- version update to 7.1.1.29
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709380800">- We can not replace a symlink with a directory on the directly
  Unregister the whole group manually in %pre with
  update-alternatives. (boo#1220818)
  Restore Requires(pre) on update-alternatives for the mean time.</changelog>
  <changelog author="pgajdos@suse.com" date="1709553600">- enable SVG again
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711022400">- allow delegates to be executed, was disabled by default policy
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711108800">- allow stdin/stdout
- modified patches
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1712577600">- version update to 7.1.1.30
  * install perl module into user-specified prefix by @bugfood in #7192
  * Fix bmp option to bypass file size check by @OnTheList-1 in #7194
  * add support for encoding/decoding ultrahdr images by @aayushsoni111 in #7198
  * Updates to uhdr.c by @aayushsoni111 in #7217
- added patches
  fix https://github.com/ImageMagick/ImageMagick/issues/7230
  + ImageMagick-wmflite-detection.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713182400">- relax list-length resource limit, fixes build of python-Wand
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713787200">- version update to 7.1.1.31
  * Convert big PDF documents is slow #7263
  * Update release.yml #7258
  * Update README.md #7245
  * uhdr.c: verify the availability of error message before accessing it #7229
- removed patches
  - ImageMagick-wmflite-detection.patch (upstreamed)
  `</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1714910400">- version update to 7.1.1.32
  * Fix GIF ICC profile reading #7282
  * uhdr.c: add support for rgb inputs #7273</changelog>
  <changelog author="pgajdos@suse.com" date="1715860800">- reverted update-alternatives usage removal [bsc#1122033][bsc#1220818]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1716638400">- version update to 7.1.1.33
  * Fix typo in #7294
  * Bump azure/trusted-signing-action from 0.3.16 to 0.3.18 in #7325
  * Bump caphyon/advinst-github-action from 1.1 to 2.0 in #7326
- added patch
  + ImageMagick-update-image-signature.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1719144000">- version update to 7.1.1.34
  * Bump azure/trusted-signing-action from 0.3.18 to 0.3.19 in #7348
  * Fix a typo in convert deprecation warning in #7383
  * Bump azure/trusted-signing-action from 0.3.19 to 0.3.20 in #7388
  * Updated FontConfig query to include font index, fixing (#7374) in #7409
- removed patch (upstreamed)
  - ImageMagick-update-image-signature.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1721908800">- version update to 7.1.1.35
  * Also set dpi-x and dpi-y when running rsvg-convert. eac001f
  * convert sub-command is deprecated d67039e
  * only operators should disable "identify ping" (ImageMagick/ImageMagick#7441) a262192
  * fix compiler error ecc21c7
  * -outdir deprecated 9980efa
  * Get the correct width and height when heic:preserve-orientation is set to true. ed3a0dd
  * Set heic image orientation using transform information. ba470aa
  * Exit earlier when the symlink could not be created when invoking the svg:decode delegate. 8a48edd
  * Fixed MSYS2 build error. 3b22378
  * Also set the DNG properties when pinging the image. fc1c61b
  * Silence warning when lqr delegate is disabled. ae0d69a
  * Added version check for the heif_properties.h include. 656b4d2
  * Make sure we always use the i64 version of the "file methods" on Windows. b3e8a78
  * Changed defines to use method instead of a define. 75b66c4
  * Changes due to upgrade of libheif. 841f033
  * smooth the rendering of an ellipse (ImageMagick/ImageMagick#7465) 1bfce2a</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- version update to 7.1.1.36
  * uhdr.c: default initialize range field for hdr/sdr intent inputs to
    enc by @aayushsoni111 in #7482
  * Fixed typo in documentation of MagickAdaptiveBlurImage by @JonahEMorgan
    in #7500
  * Silence warning when freetype delegate is disabled. by @niclet in #7515</changelog>
</package>
<package pkgid="817ae594eec1aec619633c3df9fb0a9da70bd33fdae561ce17f3ba11aaa1fb2e514230a823d38890459af29080f8a88488b5e893493f97dda5ad9df4a8be25b9" name="ImageMagick-config-7-upstream-limited" arch="x86_64">
  <version epoch="0" ver="7.1.1.36" rel="1.1"/>
  <changelog author="munix9@googlemail.com" date="1705233600">- Fix incomplete removal of update-alternatives for config
- Replace obsolete 'otherproviders(imagick-%{config_spec})' with
  'Conflicts: imagick-%{config_spec}'</changelog>
  <changelog author="pgajdos@suse.com" date="1705320000">- use correct policy.xml</changelog>
  <changelog author="pgajdos@suse.com" date="1705406400">- only one configuration again, based on upstream 'secure' policy
- other upstream policies packaged in documentation</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1705838400">- version update to 7.1.1.27
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1707652800">- version update to 7.1.1.28
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Michael Vetter &lt;mvetter@suse.com&gt;" date="1708603200">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1709035200">- version update to 7.1.1.29
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709380800">- We can not replace a symlink with a directory on the directly
  Unregister the whole group manually in %pre with
  update-alternatives. (boo#1220818)
  Restore Requires(pre) on update-alternatives for the mean time.</changelog>
  <changelog author="pgajdos@suse.com" date="1709553600">- enable SVG again
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711022400">- allow delegates to be executed, was disabled by default policy
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711108800">- allow stdin/stdout
- modified patches
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1712577600">- version update to 7.1.1.30
  * install perl module into user-specified prefix by @bugfood in #7192
  * Fix bmp option to bypass file size check by @OnTheList-1 in #7194
  * add support for encoding/decoding ultrahdr images by @aayushsoni111 in #7198
  * Updates to uhdr.c by @aayushsoni111 in #7217
- added patches
  fix https://github.com/ImageMagick/ImageMagick/issues/7230
  + ImageMagick-wmflite-detection.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713182400">- relax list-length resource limit, fixes build of python-Wand
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713787200">- version update to 7.1.1.31
  * Convert big PDF documents is slow #7263
  * Update release.yml #7258
  * Update README.md #7245
  * uhdr.c: verify the availability of error message before accessing it #7229
- removed patches
  - ImageMagick-wmflite-detection.patch (upstreamed)
  `</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1714910400">- version update to 7.1.1.32
  * Fix GIF ICC profile reading #7282
  * uhdr.c: add support for rgb inputs #7273</changelog>
  <changelog author="pgajdos@suse.com" date="1715860800">- reverted update-alternatives usage removal [bsc#1122033][bsc#1220818]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1716638400">- version update to 7.1.1.33
  * Fix typo in #7294
  * Bump azure/trusted-signing-action from 0.3.16 to 0.3.18 in #7325
  * Bump caphyon/advinst-github-action from 1.1 to 2.0 in #7326
- added patch
  + ImageMagick-update-image-signature.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1719144000">- version update to 7.1.1.34
  * Bump azure/trusted-signing-action from 0.3.18 to 0.3.19 in #7348
  * Fix a typo in convert deprecation warning in #7383
  * Bump azure/trusted-signing-action from 0.3.19 to 0.3.20 in #7388
  * Updated FontConfig query to include font index, fixing (#7374) in #7409
- removed patch (upstreamed)
  - ImageMagick-update-image-signature.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1721908800">- version update to 7.1.1.35
  * Also set dpi-x and dpi-y when running rsvg-convert. eac001f
  * convert sub-command is deprecated d67039e
  * only operators should disable "identify ping" (ImageMagick/ImageMagick#7441) a262192
  * fix compiler error ecc21c7
  * -outdir deprecated 9980efa
  * Get the correct width and height when heic:preserve-orientation is set to true. ed3a0dd
  * Set heic image orientation using transform information. ba470aa
  * Exit earlier when the symlink could not be created when invoking the svg:decode delegate. 8a48edd
  * Fixed MSYS2 build error. 3b22378
  * Also set the DNG properties when pinging the image. fc1c61b
  * Silence warning when lqr delegate is disabled. ae0d69a
  * Added version check for the heif_properties.h include. 656b4d2
  * Make sure we always use the i64 version of the "file methods" on Windows. b3e8a78
  * Changed defines to use method instead of a define. 75b66c4
  * Changes due to upgrade of libheif. 841f033
  * smooth the rendering of an ellipse (ImageMagick/ImageMagick#7465) 1bfce2a</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- version update to 7.1.1.36
  * uhdr.c: default initialize range field for hdr/sdr intent inputs to
    enc by @aayushsoni111 in #7482
  * Fixed typo in documentation of MagickAdaptiveBlurImage by @JonahEMorgan
    in #7500
  * Silence warning when freetype delegate is disabled. by @niclet in #7515</changelog>
</package>
<package pkgid="e256487881b65d19768d353ae2f18189f8b87f563ae1508e3e03e568c2b29daa96e0a185715cf8bc34df4f92168c28b3faa505fabad30070c1a75649e9590a78" name="ImageMagick-config-7-upstream-limited" arch="i586">
  <version epoch="0" ver="7.1.1.37" rel="1.0.4.1.sr20240803"/>
  <changelog author="pgajdos@suse.com" date="1705320000">- use correct policy.xml</changelog>
  <changelog author="pgajdos@suse.com" date="1705406400">- only one configuration again, based on upstream 'secure' policy
- other upstream policies packaged in documentation</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1705838400">- version update to 7.1.1.27
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1707652800">- version update to 7.1.1.28
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Michael Vetter &lt;mvetter@suse.com&gt;" date="1708603200">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1709035200">- version update to 7.1.1.29
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709380800">- We can not replace a symlink with a directory on the directly
  Unregister the whole group manually in %pre with
  update-alternatives. (boo#1220818)
  Restore Requires(pre) on update-alternatives for the mean time.</changelog>
  <changelog author="pgajdos@suse.com" date="1709553600">- enable SVG again
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711022400">- allow delegates to be executed, was disabled by default policy
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711108800">- allow stdin/stdout
- modified patches
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1712577600">- version update to 7.1.1.30
  * install perl module into user-specified prefix by @bugfood in #7192
  * Fix bmp option to bypass file size check by @OnTheList-1 in #7194
  * add support for encoding/decoding ultrahdr images by @aayushsoni111 in #7198
  * Updates to uhdr.c by @aayushsoni111 in #7217
- added patches
  fix https://github.com/ImageMagick/ImageMagick/issues/7230
  + ImageMagick-wmflite-detection.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713182400">- relax list-length resource limit, fixes build of python-Wand
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713787200">- version update to 7.1.1.31
  * Convert big PDF documents is slow #7263
  * Update release.yml #7258
  * Update README.md #7245
  * uhdr.c: verify the availability of error message before accessing it #7229
- removed patches
  - ImageMagick-wmflite-detection.patch (upstreamed)
  `</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1714910400">- version update to 7.1.1.32
  * Fix GIF ICC profile reading #7282
  * uhdr.c: add support for rgb inputs #7273</changelog>
  <changelog author="pgajdos@suse.com" date="1715860800">- reverted update-alternatives usage removal [bsc#1122033][bsc#1220818]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1716638400">- version update to 7.1.1.33
  * Fix typo in #7294
  * Bump azure/trusted-signing-action from 0.3.16 to 0.3.18 in #7325
  * Bump caphyon/advinst-github-action from 1.1 to 2.0 in #7326
- added patch
  + ImageMagick-update-image-signature.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1719144000">- version update to 7.1.1.34
  * Bump azure/trusted-signing-action from 0.3.18 to 0.3.19 in #7348
  * Fix a typo in convert deprecation warning in #7383
  * Bump azure/trusted-signing-action from 0.3.19 to 0.3.20 in #7388
  * Updated FontConfig query to include font index, fixing (#7374) in #7409
- removed patch (upstreamed)
  - ImageMagick-update-image-signature.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1721908800">- version update to 7.1.1.35
  * Also set dpi-x and dpi-y when running rsvg-convert. eac001f
  * convert sub-command is deprecated d67039e
  * only operators should disable "identify ping" (ImageMagick/ImageMagick#7441) a262192
  * fix compiler error ecc21c7
  * -outdir deprecated 9980efa
  * Get the correct width and height when heic:preserve-orientation is set to true. ed3a0dd
  * Set heic image orientation using transform information. ba470aa
  * Exit earlier when the symlink could not be created when invoking the svg:decode delegate. 8a48edd
  * Fixed MSYS2 build error. 3b22378
  * Also set the DNG properties when pinging the image. fc1c61b
  * Silence warning when lqr delegate is disabled. ae0d69a
  * Added version check for the heif_properties.h include. 656b4d2
  * Make sure we always use the i64 version of the "file methods" on Windows. b3e8a78
  * Changed defines to use method instead of a define. 75b66c4
  * Changes due to upgrade of libheif. 841f033
  * smooth the rendering of an ellipse (ImageMagick/ImageMagick#7465) 1bfce2a</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- version update to 7.1.1.36
  * uhdr.c: default initialize range field for hdr/sdr intent inputs to
    enc by @aayushsoni111 in #7482
  * Fixed typo in documentation of MagickAdaptiveBlurImage by @JonahEMorgan
    in #7500
  * Silence warning when freetype delegate is disabled. by @niclet in #7515</changelog>
  <changelog author="pgajdos@suse.com" date="1724760000">- version update to 7.1.1.37
  * Bump azure/trusted-signing-action from 0.3.20 to 0.4.0 #7518
  * Silence warning and fix HEIC_COMPUTE_NUMERIC_VERSION definition when heic delegate is disabled. #7516
  * protect macro arguments with parens 86cb2b1
  * eliminate compiler warnings d90d8b4
  * correct copyright year 115271e
  * Ignore multiple exif and xmp profiles for the same jxl frame and fix reading those profiles per frame. c301208
  * read/write in chunks fff3058
  * optimize fwrite() arguments ada6785
  * Renamed Output folder to Artifacts. 2a69677
  * cancel interactive window selection with right button press ea2a2db
  * cosmetic 712bde4
  * eliminate compiler warning 9a9a25c
  * eliminate compiler warning 0bd1687
  * Make images mandatory in the issue template. c01fd37
  * Added extra header detection for avif files. 9fc0590
  * allow SeekBlob() to set an offset beyond the end of the blob 27c3f99
  * be less forgiving for invalid image indexes 25db2e5
  * Fixed problem with empty macros (#7562) 9fda5f2
  * Added missing null checks for RequestOpenCLDevice. f85448e
  * Added missing null check for AcquireOpenCLCommandQueue. 295e9c8
  * persist app1 jpeg profile (ImageMagick/ImageMagick#4713) f0357c7
  * Fixed build error. b3dd431
  * Remove some of the dependencies for the macos-13 build. d0bce95
  * parentheses is the plural of parenthesis 1fac80a
  * distribute quantization error for -dither FloydSteinberg -depth 5b2825b
  * release 8a0da9f
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565</changelog>
</package>
<package pkgid="a74770e28d42e5aa9f7e02ef2c7196bfaae73f2660dc6538cc64c81e424f3972c0ad51661df9c115919828bebd74a55536a380f1f18ecfeb02269f489736ee13" name="ImageMagick-config-7-upstream-limited" arch="x86_64">
  <version epoch="0" ver="7.1.1.37" rel="1.0.4.1.sr20240803"/>
  <changelog author="pgajdos@suse.com" date="1705320000">- use correct policy.xml</changelog>
  <changelog author="pgajdos@suse.com" date="1705406400">- only one configuration again, based on upstream 'secure' policy
- other upstream policies packaged in documentation</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1705838400">- version update to 7.1.1.27
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1707652800">- version update to 7.1.1.28
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Michael Vetter &lt;mvetter@suse.com&gt;" date="1708603200">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1709035200">- version update to 7.1.1.29
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709380800">- We can not replace a symlink with a directory on the directly
  Unregister the whole group manually in %pre with
  update-alternatives. (boo#1220818)
  Restore Requires(pre) on update-alternatives for the mean time.</changelog>
  <changelog author="pgajdos@suse.com" date="1709553600">- enable SVG again
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711022400">- allow delegates to be executed, was disabled by default policy
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711108800">- allow stdin/stdout
- modified patches
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1712577600">- version update to 7.1.1.30
  * install perl module into user-specified prefix by @bugfood in #7192
  * Fix bmp option to bypass file size check by @OnTheList-1 in #7194
  * add support for encoding/decoding ultrahdr images by @aayushsoni111 in #7198
  * Updates to uhdr.c by @aayushsoni111 in #7217
- added patches
  fix https://github.com/ImageMagick/ImageMagick/issues/7230
  + ImageMagick-wmflite-detection.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713182400">- relax list-length resource limit, fixes build of python-Wand
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713787200">- version update to 7.1.1.31
  * Convert big PDF documents is slow #7263
  * Update release.yml #7258
  * Update README.md #7245
  * uhdr.c: verify the availability of error message before accessing it #7229
- removed patches
  - ImageMagick-wmflite-detection.patch (upstreamed)
  `</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1714910400">- version update to 7.1.1.32
  * Fix GIF ICC profile reading #7282
  * uhdr.c: add support for rgb inputs #7273</changelog>
  <changelog author="pgajdos@suse.com" date="1715860800">- reverted update-alternatives usage removal [bsc#1122033][bsc#1220818]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1716638400">- version update to 7.1.1.33
  * Fix typo in #7294
  * Bump azure/trusted-signing-action from 0.3.16 to 0.3.18 in #7325
  * Bump caphyon/advinst-github-action from 1.1 to 2.0 in #7326
- added patch
  + ImageMagick-update-image-signature.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1719144000">- version update to 7.1.1.34
  * Bump azure/trusted-signing-action from 0.3.18 to 0.3.19 in #7348
  * Fix a typo in convert deprecation warning in #7383
  * Bump azure/trusted-signing-action from 0.3.19 to 0.3.20 in #7388
  * Updated FontConfig query to include font index, fixing (#7374) in #7409
- removed patch (upstreamed)
  - ImageMagick-update-image-signature.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1721908800">- version update to 7.1.1.35
  * Also set dpi-x and dpi-y when running rsvg-convert. eac001f
  * convert sub-command is deprecated d67039e
  * only operators should disable "identify ping" (ImageMagick/ImageMagick#7441) a262192
  * fix compiler error ecc21c7
  * -outdir deprecated 9980efa
  * Get the correct width and height when heic:preserve-orientation is set to true. ed3a0dd
  * Set heic image orientation using transform information. ba470aa
  * Exit earlier when the symlink could not be created when invoking the svg:decode delegate. 8a48edd
  * Fixed MSYS2 build error. 3b22378
  * Also set the DNG properties when pinging the image. fc1c61b
  * Silence warning when lqr delegate is disabled. ae0d69a
  * Added version check for the heif_properties.h include. 656b4d2
  * Make sure we always use the i64 version of the "file methods" on Windows. b3e8a78
  * Changed defines to use method instead of a define. 75b66c4
  * Changes due to upgrade of libheif. 841f033
  * smooth the rendering of an ellipse (ImageMagick/ImageMagick#7465) 1bfce2a</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- version update to 7.1.1.36
  * uhdr.c: default initialize range field for hdr/sdr intent inputs to
    enc by @aayushsoni111 in #7482
  * Fixed typo in documentation of MagickAdaptiveBlurImage by @JonahEMorgan
    in #7500
  * Silence warning when freetype delegate is disabled. by @niclet in #7515</changelog>
  <changelog author="pgajdos@suse.com" date="1724760000">- version update to 7.1.1.37
  * Bump azure/trusted-signing-action from 0.3.20 to 0.4.0 #7518
  * Silence warning and fix HEIC_COMPUTE_NUMERIC_VERSION definition when heic delegate is disabled. #7516
  * protect macro arguments with parens 86cb2b1
  * eliminate compiler warnings d90d8b4
  * correct copyright year 115271e
  * Ignore multiple exif and xmp profiles for the same jxl frame and fix reading those profiles per frame. c301208
  * read/write in chunks fff3058
  * optimize fwrite() arguments ada6785
  * Renamed Output folder to Artifacts. 2a69677
  * cancel interactive window selection with right button press ea2a2db
  * cosmetic 712bde4
  * eliminate compiler warning 9a9a25c
  * eliminate compiler warning 0bd1687
  * Make images mandatory in the issue template. c01fd37
  * Added extra header detection for avif files. 9fc0590
  * allow SeekBlob() to set an offset beyond the end of the blob 27c3f99
  * be less forgiving for invalid image indexes 25db2e5
  * Fixed problem with empty macros (#7562) 9fda5f2
  * Added missing null checks for RequestOpenCLDevice. f85448e
  * Added missing null check for AcquireOpenCLCommandQueue. 295e9c8
  * persist app1 jpeg profile (ImageMagick/ImageMagick#4713) f0357c7
  * Fixed build error. b3dd431
  * Remove some of the dependencies for the macos-13 build. d0bce95
  * parentheses is the plural of parenthesis 1fac80a
  * distribute quantization error for -dither FloydSteinberg -depth 5b2825b
  * release 8a0da9f
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565</changelog>
</package>
<package pkgid="60a98ded8ade38929dad1d88fe13ccf0622b08319587b795adae9235bf772f9c35cfeb67fd1435abdd26f46a2706120843fb4fc36454ba585f65233ebfc22945" name="ImageMagick-config-7-upstream-limited" arch="i586">
  <version epoch="0" ver="7.1.1.37" rel="1.1"/>
  <changelog author="pgajdos@suse.com" date="1705320000">- use correct policy.xml</changelog>
  <changelog author="pgajdos@suse.com" date="1705406400">- only one configuration again, based on upstream 'secure' policy
- other upstream policies packaged in documentation</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1705838400">- version update to 7.1.1.27
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1707652800">- version update to 7.1.1.28
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Michael Vetter &lt;mvetter@suse.com&gt;" date="1708603200">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1709035200">- version update to 7.1.1.29
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709380800">- We can not replace a symlink with a directory on the directly
  Unregister the whole group manually in %pre with
  update-alternatives. (boo#1220818)
  Restore Requires(pre) on update-alternatives for the mean time.</changelog>
  <changelog author="pgajdos@suse.com" date="1709553600">- enable SVG again
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711022400">- allow delegates to be executed, was disabled by default policy
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711108800">- allow stdin/stdout
- modified patches
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1712577600">- version update to 7.1.1.30
  * install perl module into user-specified prefix by @bugfood in #7192
  * Fix bmp option to bypass file size check by @OnTheList-1 in #7194
  * add support for encoding/decoding ultrahdr images by @aayushsoni111 in #7198
  * Updates to uhdr.c by @aayushsoni111 in #7217
- added patches
  fix https://github.com/ImageMagick/ImageMagick/issues/7230
  + ImageMagick-wmflite-detection.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713182400">- relax list-length resource limit, fixes build of python-Wand
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713787200">- version update to 7.1.1.31
  * Convert big PDF documents is slow #7263
  * Update release.yml #7258
  * Update README.md #7245
  * uhdr.c: verify the availability of error message before accessing it #7229
- removed patches
  - ImageMagick-wmflite-detection.patch (upstreamed)
  `</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1714910400">- version update to 7.1.1.32
  * Fix GIF ICC profile reading #7282
  * uhdr.c: add support for rgb inputs #7273</changelog>
  <changelog author="pgajdos@suse.com" date="1715860800">- reverted update-alternatives usage removal [bsc#1122033][bsc#1220818]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1716638400">- version update to 7.1.1.33
  * Fix typo in #7294
  * Bump azure/trusted-signing-action from 0.3.16 to 0.3.18 in #7325
  * Bump caphyon/advinst-github-action from 1.1 to 2.0 in #7326
- added patch
  + ImageMagick-update-image-signature.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1719144000">- version update to 7.1.1.34
  * Bump azure/trusted-signing-action from 0.3.18 to 0.3.19 in #7348
  * Fix a typo in convert deprecation warning in #7383
  * Bump azure/trusted-signing-action from 0.3.19 to 0.3.20 in #7388
  * Updated FontConfig query to include font index, fixing (#7374) in #7409
- removed patch (upstreamed)
  - ImageMagick-update-image-signature.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1721908800">- version update to 7.1.1.35
  * Also set dpi-x and dpi-y when running rsvg-convert. eac001f
  * convert sub-command is deprecated d67039e
  * only operators should disable "identify ping" (ImageMagick/ImageMagick#7441) a262192
  * fix compiler error ecc21c7
  * -outdir deprecated 9980efa
  * Get the correct width and height when heic:preserve-orientation is set to true. ed3a0dd
  * Set heic image orientation using transform information. ba470aa
  * Exit earlier when the symlink could not be created when invoking the svg:decode delegate. 8a48edd
  * Fixed MSYS2 build error. 3b22378
  * Also set the DNG properties when pinging the image. fc1c61b
  * Silence warning when lqr delegate is disabled. ae0d69a
  * Added version check for the heif_properties.h include. 656b4d2
  * Make sure we always use the i64 version of the "file methods" on Windows. b3e8a78
  * Changed defines to use method instead of a define. 75b66c4
  * Changes due to upgrade of libheif. 841f033
  * smooth the rendering of an ellipse (ImageMagick/ImageMagick#7465) 1bfce2a</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- version update to 7.1.1.36
  * uhdr.c: default initialize range field for hdr/sdr intent inputs to
    enc by @aayushsoni111 in #7482
  * Fixed typo in documentation of MagickAdaptiveBlurImage by @JonahEMorgan
    in #7500
  * Silence warning when freetype delegate is disabled. by @niclet in #7515</changelog>
  <changelog author="pgajdos@suse.com" date="1724760000">- version update to 7.1.1.37
  * Bump azure/trusted-signing-action from 0.3.20 to 0.4.0 #7518
  * Silence warning and fix HEIC_COMPUTE_NUMERIC_VERSION definition when heic delegate is disabled. #7516
  * protect macro arguments with parens 86cb2b1
  * eliminate compiler warnings d90d8b4
  * correct copyright year 115271e
  * Ignore multiple exif and xmp profiles for the same jxl frame and fix reading those profiles per frame. c301208
  * read/write in chunks fff3058
  * optimize fwrite() arguments ada6785
  * Renamed Output folder to Artifacts. 2a69677
  * cancel interactive window selection with right button press ea2a2db
  * cosmetic 712bde4
  * eliminate compiler warning 9a9a25c
  * eliminate compiler warning 0bd1687
  * Make images mandatory in the issue template. c01fd37
  * Added extra header detection for avif files. 9fc0590
  * allow SeekBlob() to set an offset beyond the end of the blob 27c3f99
  * be less forgiving for invalid image indexes 25db2e5
  * Fixed problem with empty macros (#7562) 9fda5f2
  * Added missing null checks for RequestOpenCLDevice. f85448e
  * Added missing null check for AcquireOpenCLCommandQueue. 295e9c8
  * persist app1 jpeg profile (ImageMagick/ImageMagick#4713) f0357c7
  * Fixed build error. b3dd431
  * Remove some of the dependencies for the macos-13 build. d0bce95
  * parentheses is the plural of parenthesis 1fac80a
  * distribute quantization error for -dither FloydSteinberg -depth 5b2825b
  * release 8a0da9f
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565</changelog>
</package>
<package pkgid="ff6d3bf09319b2c4b5efc3cc0e3829105ea06f9d58af1d52cd615d936ea99f4f2772c46c186483e06499fad0bb52346baa22c0b84c295bfc5ce2213fdef2906a" name="ImageMagick-config-7-upstream-limited" arch="x86_64">
  <version epoch="0" ver="7.1.1.37" rel="1.1"/>
  <changelog author="pgajdos@suse.com" date="1705320000">- use correct policy.xml</changelog>
  <changelog author="pgajdos@suse.com" date="1705406400">- only one configuration again, based on upstream 'secure' policy
- other upstream policies packaged in documentation</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1705838400">- version update to 7.1.1.27
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1707652800">- version update to 7.1.1.28
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Michael Vetter &lt;mvetter@suse.com&gt;" date="1708603200">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1709035200">- version update to 7.1.1.29
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709380800">- We can not replace a symlink with a directory on the directly
  Unregister the whole group manually in %pre with
  update-alternatives. (boo#1220818)
  Restore Requires(pre) on update-alternatives for the mean time.</changelog>
  <changelog author="pgajdos@suse.com" date="1709553600">- enable SVG again
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711022400">- allow delegates to be executed, was disabled by default policy
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711108800">- allow stdin/stdout
- modified patches
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1712577600">- version update to 7.1.1.30
  * install perl module into user-specified prefix by @bugfood in #7192
  * Fix bmp option to bypass file size check by @OnTheList-1 in #7194
  * add support for encoding/decoding ultrahdr images by @aayushsoni111 in #7198
  * Updates to uhdr.c by @aayushsoni111 in #7217
- added patches
  fix https://github.com/ImageMagick/ImageMagick/issues/7230
  + ImageMagick-wmflite-detection.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713182400">- relax list-length resource limit, fixes build of python-Wand
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713787200">- version update to 7.1.1.31
  * Convert big PDF documents is slow #7263
  * Update release.yml #7258
  * Update README.md #7245
  * uhdr.c: verify the availability of error message before accessing it #7229
- removed patches
  - ImageMagick-wmflite-detection.patch (upstreamed)
  `</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1714910400">- version update to 7.1.1.32
  * Fix GIF ICC profile reading #7282
  * uhdr.c: add support for rgb inputs #7273</changelog>
  <changelog author="pgajdos@suse.com" date="1715860800">- reverted update-alternatives usage removal [bsc#1122033][bsc#1220818]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1716638400">- version update to 7.1.1.33
  * Fix typo in #7294
  * Bump azure/trusted-signing-action from 0.3.16 to 0.3.18 in #7325
  * Bump caphyon/advinst-github-action from 1.1 to 2.0 in #7326
- added patch
  + ImageMagick-update-image-signature.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1719144000">- version update to 7.1.1.34
  * Bump azure/trusted-signing-action from 0.3.18 to 0.3.19 in #7348
  * Fix a typo in convert deprecation warning in #7383
  * Bump azure/trusted-signing-action from 0.3.19 to 0.3.20 in #7388
  * Updated FontConfig query to include font index, fixing (#7374) in #7409
- removed patch (upstreamed)
  - ImageMagick-update-image-signature.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1721908800">- version update to 7.1.1.35
  * Also set dpi-x and dpi-y when running rsvg-convert. eac001f
  * convert sub-command is deprecated d67039e
  * only operators should disable "identify ping" (ImageMagick/ImageMagick#7441) a262192
  * fix compiler error ecc21c7
  * -outdir deprecated 9980efa
  * Get the correct width and height when heic:preserve-orientation is set to true. ed3a0dd
  * Set heic image orientation using transform information. ba470aa
  * Exit earlier when the symlink could not be created when invoking the svg:decode delegate. 8a48edd
  * Fixed MSYS2 build error. 3b22378
  * Also set the DNG properties when pinging the image. fc1c61b
  * Silence warning when lqr delegate is disabled. ae0d69a
  * Added version check for the heif_properties.h include. 656b4d2
  * Make sure we always use the i64 version of the "file methods" on Windows. b3e8a78
  * Changed defines to use method instead of a define. 75b66c4
  * Changes due to upgrade of libheif. 841f033
  * smooth the rendering of an ellipse (ImageMagick/ImageMagick#7465) 1bfce2a</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- version update to 7.1.1.36
  * uhdr.c: default initialize range field for hdr/sdr intent inputs to
    enc by @aayushsoni111 in #7482
  * Fixed typo in documentation of MagickAdaptiveBlurImage by @JonahEMorgan
    in #7500
  * Silence warning when freetype delegate is disabled. by @niclet in #7515</changelog>
  <changelog author="pgajdos@suse.com" date="1724760000">- version update to 7.1.1.37
  * Bump azure/trusted-signing-action from 0.3.20 to 0.4.0 #7518
  * Silence warning and fix HEIC_COMPUTE_NUMERIC_VERSION definition when heic delegate is disabled. #7516
  * protect macro arguments with parens 86cb2b1
  * eliminate compiler warnings d90d8b4
  * correct copyright year 115271e
  * Ignore multiple exif and xmp profiles for the same jxl frame and fix reading those profiles per frame. c301208
  * read/write in chunks fff3058
  * optimize fwrite() arguments ada6785
  * Renamed Output folder to Artifacts. 2a69677
  * cancel interactive window selection with right button press ea2a2db
  * cosmetic 712bde4
  * eliminate compiler warning 9a9a25c
  * eliminate compiler warning 0bd1687
  * Make images mandatory in the issue template. c01fd37
  * Added extra header detection for avif files. 9fc0590
  * allow SeekBlob() to set an offset beyond the end of the blob 27c3f99
  * be less forgiving for invalid image indexes 25db2e5
  * Fixed problem with empty macros (#7562) 9fda5f2
  * Added missing null checks for RequestOpenCLDevice. f85448e
  * Added missing null check for AcquireOpenCLCommandQueue. 295e9c8
  * persist app1 jpeg profile (ImageMagick/ImageMagick#4713) f0357c7
  * Fixed build error. b3dd431
  * Remove some of the dependencies for the macos-13 build. d0bce95
  * parentheses is the plural of parenthesis 1fac80a
  * distribute quantization error for -dither FloydSteinberg -depth 5b2825b
  * release 8a0da9f
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565</changelog>
</package>
<package pkgid="24e1189b56171eaa7fa3e877f0dcf0d19fd3c853203738a1bf6d7130891cc43c540e8c523b67307db978f66ee389d96bf71f40db2be8f0dadf61d22813677aaf" name="ImageMagick-config-7-upstream-limited" arch="i586">
  <version epoch="0" ver="7.1.1.39" rel="1.1"/>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1705838400">- version update to 7.1.1.27
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1707652800">- version update to 7.1.1.28
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Michael Vetter &lt;mvetter@suse.com&gt;" date="1708603200">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1709035200">- version update to 7.1.1.29
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709380800">- We can not replace a symlink with a directory on the directly
  Unregister the whole group manually in %pre with
  update-alternatives. (boo#1220818)
  Restore Requires(pre) on update-alternatives for the mean time.</changelog>
  <changelog author="pgajdos@suse.com" date="1709553600">- enable SVG again
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711022400">- allow delegates to be executed, was disabled by default policy
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711108800">- allow stdin/stdout
- modified patches
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1712577600">- version update to 7.1.1.30
  * install perl module into user-specified prefix by @bugfood in #7192
  * Fix bmp option to bypass file size check by @OnTheList-1 in #7194
  * add support for encoding/decoding ultrahdr images by @aayushsoni111 in #7198
  * Updates to uhdr.c by @aayushsoni111 in #7217
- added patches
  fix https://github.com/ImageMagick/ImageMagick/issues/7230
  + ImageMagick-wmflite-detection.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713182400">- relax list-length resource limit, fixes build of python-Wand
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713787200">- version update to 7.1.1.31
  * Convert big PDF documents is slow #7263
  * Update release.yml #7258
  * Update README.md #7245
  * uhdr.c: verify the availability of error message before accessing it #7229
- removed patches
  - ImageMagick-wmflite-detection.patch (upstreamed)
  `</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1714910400">- version update to 7.1.1.32
  * Fix GIF ICC profile reading #7282
  * uhdr.c: add support for rgb inputs #7273</changelog>
  <changelog author="pgajdos@suse.com" date="1715860800">- reverted update-alternatives usage removal [bsc#1122033][bsc#1220818]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1716638400">- version update to 7.1.1.33
  * Fix typo in #7294
  * Bump azure/trusted-signing-action from 0.3.16 to 0.3.18 in #7325
  * Bump caphyon/advinst-github-action from 1.1 to 2.0 in #7326
- added patch
  + ImageMagick-update-image-signature.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1719144000">- version update to 7.1.1.34
  * Bump azure/trusted-signing-action from 0.3.18 to 0.3.19 in #7348
  * Fix a typo in convert deprecation warning in #7383
  * Bump azure/trusted-signing-action from 0.3.19 to 0.3.20 in #7388
  * Updated FontConfig query to include font index, fixing (#7374) in #7409
- removed patch (upstreamed)
  - ImageMagick-update-image-signature.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1721908800">- version update to 7.1.1.35
  * Also set dpi-x and dpi-y when running rsvg-convert. eac001f
  * convert sub-command is deprecated d67039e
  * only operators should disable "identify ping" (ImageMagick/ImageMagick#7441) a262192
  * fix compiler error ecc21c7
  * -outdir deprecated 9980efa
  * Get the correct width and height when heic:preserve-orientation is set to true. ed3a0dd
  * Set heic image orientation using transform information. ba470aa
  * Exit earlier when the symlink could not be created when invoking the svg:decode delegate. 8a48edd
  * Fixed MSYS2 build error. 3b22378
  * Also set the DNG properties when pinging the image. fc1c61b
  * Silence warning when lqr delegate is disabled. ae0d69a
  * Added version check for the heif_properties.h include. 656b4d2
  * Make sure we always use the i64 version of the "file methods" on Windows. b3e8a78
  * Changed defines to use method instead of a define. 75b66c4
  * Changes due to upgrade of libheif. 841f033
  * smooth the rendering of an ellipse (ImageMagick/ImageMagick#7465) 1bfce2a</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- version update to 7.1.1.36
  * uhdr.c: default initialize range field for hdr/sdr intent inputs to
    enc by @aayushsoni111 in #7482
  * Fixed typo in documentation of MagickAdaptiveBlurImage by @JonahEMorgan
    in #7500
  * Silence warning when freetype delegate is disabled. by @niclet in #7515</changelog>
  <changelog author="pgajdos@suse.com" date="1724760000">- version update to 7.1.1.37
  * Bump azure/trusted-signing-action from 0.3.20 to 0.4.0 #7518
  * Silence warning and fix HEIC_COMPUTE_NUMERIC_VERSION definition when heic delegate is disabled. #7516
  * protect macro arguments with parens 86cb2b1
  * eliminate compiler warnings d90d8b4
  * correct copyright year 115271e
  * Ignore multiple exif and xmp profiles for the same jxl frame and fix reading those profiles per frame. c301208
  * read/write in chunks fff3058
  * optimize fwrite() arguments ada6785
  * Renamed Output folder to Artifacts. 2a69677
  * cancel interactive window selection with right button press ea2a2db
  * cosmetic 712bde4
  * eliminate compiler warning 9a9a25c
  * eliminate compiler warning 0bd1687
  * Make images mandatory in the issue template. c01fd37
  * Added extra header detection for avif files. 9fc0590
  * allow SeekBlob() to set an offset beyond the end of the blob 27c3f99
  * be less forgiving for invalid image indexes 25db2e5
  * Fixed problem with empty macros (#7562) 9fda5f2
  * Added missing null checks for RequestOpenCLDevice. f85448e
  * Added missing null check for AcquireOpenCLCommandQueue. 295e9c8
  * persist app1 jpeg profile (ImageMagick/ImageMagick#4713) f0357c7
  * Fixed build error. b3dd431
  * Remove some of the dependencies for the macos-13 build. d0bce95
  * parentheses is the plural of parenthesis 1fac80a
  * distribute quantization error for -dither FloydSteinberg -depth 5b2825b
  * release 8a0da9f
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565</changelog>
  <changelog author="pgajdos@suse.com" date="1726228800">- version update to 7.1.1.38
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565
  * beta release 250b748
  * deprecate the -respect-paranthesis option 4e7d789
  * Build fixes. b80c509
  * save IPTC + ICC profiles are profiles, not properties 25d5335
  * update copyright year 4caf7d1
  * Patch to fix reading of the ICC profile. 18377f9
  * prepping framework to interact with X11 clipboard b20dda3
  * Build fix. 20a5af3
  * More build fixes. c36fdf0
  * Another attempt to silence the warnings. 600708c
  * Use SetImageProfilePrivate to avoid duplicate allocations. f246eab
  * support clipboard delegate 39a135a
  * restore clipboard.c 1070b17
  * improved rounding 27a0a9c
  * don't allow negative scenes 8fda05a
  * eliminate compiler warnings 878daf9
- modified patches
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1728216000">- version update to 7.1.1.39
  * Add missing Threshold command to command array of Region of Interest mode #7606
  * uhdr.c: update uhdr coder for gainmap metadata configuration #7635
  * uhdr: fix language choice in autoconf #7663</changelog>
</package>
<package pkgid="1901b228143214c5ee639732954b40187194b2e72af777d344959cd1145a3e61d25e8b4534efe7e045b6b092ec0afc18d7f8ab012d6c1d73010eb48cc8689104" name="ImageMagick-config-7-upstream-limited" arch="x86_64">
  <version epoch="0" ver="7.1.1.39" rel="1.1"/>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1705838400">- version update to 7.1.1.27
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1707652800">- version update to 7.1.1.28
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Michael Vetter &lt;mvetter@suse.com&gt;" date="1708603200">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1709035200">- version update to 7.1.1.29
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709380800">- We can not replace a symlink with a directory on the directly
  Unregister the whole group manually in %pre with
  update-alternatives. (boo#1220818)
  Restore Requires(pre) on update-alternatives for the mean time.</changelog>
  <changelog author="pgajdos@suse.com" date="1709553600">- enable SVG again
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711022400">- allow delegates to be executed, was disabled by default policy
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711108800">- allow stdin/stdout
- modified patches
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1712577600">- version update to 7.1.1.30
  * install perl module into user-specified prefix by @bugfood in #7192
  * Fix bmp option to bypass file size check by @OnTheList-1 in #7194
  * add support for encoding/decoding ultrahdr images by @aayushsoni111 in #7198
  * Updates to uhdr.c by @aayushsoni111 in #7217
- added patches
  fix https://github.com/ImageMagick/ImageMagick/issues/7230
  + ImageMagick-wmflite-detection.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713182400">- relax list-length resource limit, fixes build of python-Wand
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713787200">- version update to 7.1.1.31
  * Convert big PDF documents is slow #7263
  * Update release.yml #7258
  * Update README.md #7245
  * uhdr.c: verify the availability of error message before accessing it #7229
- removed patches
  - ImageMagick-wmflite-detection.patch (upstreamed)
  `</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1714910400">- version update to 7.1.1.32
  * Fix GIF ICC profile reading #7282
  * uhdr.c: add support for rgb inputs #7273</changelog>
  <changelog author="pgajdos@suse.com" date="1715860800">- reverted update-alternatives usage removal [bsc#1122033][bsc#1220818]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1716638400">- version update to 7.1.1.33
  * Fix typo in #7294
  * Bump azure/trusted-signing-action from 0.3.16 to 0.3.18 in #7325
  * Bump caphyon/advinst-github-action from 1.1 to 2.0 in #7326
- added patch
  + ImageMagick-update-image-signature.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1719144000">- version update to 7.1.1.34
  * Bump azure/trusted-signing-action from 0.3.18 to 0.3.19 in #7348
  * Fix a typo in convert deprecation warning in #7383
  * Bump azure/trusted-signing-action from 0.3.19 to 0.3.20 in #7388
  * Updated FontConfig query to include font index, fixing (#7374) in #7409
- removed patch (upstreamed)
  - ImageMagick-update-image-signature.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1721908800">- version update to 7.1.1.35
  * Also set dpi-x and dpi-y when running rsvg-convert. eac001f
  * convert sub-command is deprecated d67039e
  * only operators should disable "identify ping" (ImageMagick/ImageMagick#7441) a262192
  * fix compiler error ecc21c7
  * -outdir deprecated 9980efa
  * Get the correct width and height when heic:preserve-orientation is set to true. ed3a0dd
  * Set heic image orientation using transform information. ba470aa
  * Exit earlier when the symlink could not be created when invoking the svg:decode delegate. 8a48edd
  * Fixed MSYS2 build error. 3b22378
  * Also set the DNG properties when pinging the image. fc1c61b
  * Silence warning when lqr delegate is disabled. ae0d69a
  * Added version check for the heif_properties.h include. 656b4d2
  * Make sure we always use the i64 version of the "file methods" on Windows. b3e8a78
  * Changed defines to use method instead of a define. 75b66c4
  * Changes due to upgrade of libheif. 841f033
  * smooth the rendering of an ellipse (ImageMagick/ImageMagick#7465) 1bfce2a</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- version update to 7.1.1.36
  * uhdr.c: default initialize range field for hdr/sdr intent inputs to
    enc by @aayushsoni111 in #7482
  * Fixed typo in documentation of MagickAdaptiveBlurImage by @JonahEMorgan
    in #7500
  * Silence warning when freetype delegate is disabled. by @niclet in #7515</changelog>
  <changelog author="pgajdos@suse.com" date="1724760000">- version update to 7.1.1.37
  * Bump azure/trusted-signing-action from 0.3.20 to 0.4.0 #7518
  * Silence warning and fix HEIC_COMPUTE_NUMERIC_VERSION definition when heic delegate is disabled. #7516
  * protect macro arguments with parens 86cb2b1
  * eliminate compiler warnings d90d8b4
  * correct copyright year 115271e
  * Ignore multiple exif and xmp profiles for the same jxl frame and fix reading those profiles per frame. c301208
  * read/write in chunks fff3058
  * optimize fwrite() arguments ada6785
  * Renamed Output folder to Artifacts. 2a69677
  * cancel interactive window selection with right button press ea2a2db
  * cosmetic 712bde4
  * eliminate compiler warning 9a9a25c
  * eliminate compiler warning 0bd1687
  * Make images mandatory in the issue template. c01fd37
  * Added extra header detection for avif files. 9fc0590
  * allow SeekBlob() to set an offset beyond the end of the blob 27c3f99
  * be less forgiving for invalid image indexes 25db2e5
  * Fixed problem with empty macros (#7562) 9fda5f2
  * Added missing null checks for RequestOpenCLDevice. f85448e
  * Added missing null check for AcquireOpenCLCommandQueue. 295e9c8
  * persist app1 jpeg profile (ImageMagick/ImageMagick#4713) f0357c7
  * Fixed build error. b3dd431
  * Remove some of the dependencies for the macos-13 build. d0bce95
  * parentheses is the plural of parenthesis 1fac80a
  * distribute quantization error for -dither FloydSteinberg -depth 5b2825b
  * release 8a0da9f
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565</changelog>
  <changelog author="pgajdos@suse.com" date="1726228800">- version update to 7.1.1.38
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565
  * beta release 250b748
  * deprecate the -respect-paranthesis option 4e7d789
  * Build fixes. b80c509
  * save IPTC + ICC profiles are profiles, not properties 25d5335
  * update copyright year 4caf7d1
  * Patch to fix reading of the ICC profile. 18377f9
  * prepping framework to interact with X11 clipboard b20dda3
  * Build fix. 20a5af3
  * More build fixes. c36fdf0
  * Another attempt to silence the warnings. 600708c
  * Use SetImageProfilePrivate to avoid duplicate allocations. f246eab
  * support clipboard delegate 39a135a
  * restore clipboard.c 1070b17
  * improved rounding 27a0a9c
  * don't allow negative scenes 8fda05a
  * eliminate compiler warnings 878daf9
- modified patches
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1728216000">- version update to 7.1.1.39
  * Add missing Threshold command to command array of Region of Interest mode #7606
  * uhdr.c: update uhdr coder for gainmap metadata configuration #7635
  * uhdr: fix language choice in autoconf #7663</changelog>
</package>
<package pkgid="ee82c17e86b916b9e95798b24b612f386ce756cb14a251ceeeef93be1537425c637de2e854cb665dfa6fbe4812a02e0d562e1a026c4777ba32f6c96a0a9b6714" name="ImageMagick-config-7-upstream-limited" arch="i586">
  <version epoch="0" ver="7.1.1.41" rel="1.0.2.1.sr20241103"/>
  <changelog author="Michael Vetter &lt;mvetter@suse.com&gt;" date="1708603200">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1709035200">- version update to 7.1.1.29
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709380800">- We can not replace a symlink with a directory on the directly
  Unregister the whole group manually in %pre with
  update-alternatives. (boo#1220818)
  Restore Requires(pre) on update-alternatives for the mean time.</changelog>
  <changelog author="pgajdos@suse.com" date="1709553600">- enable SVG again
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711022400">- allow delegates to be executed, was disabled by default policy
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711108800">- allow stdin/stdout
- modified patches
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1712577600">- version update to 7.1.1.30
  * install perl module into user-specified prefix by @bugfood in #7192
  * Fix bmp option to bypass file size check by @OnTheList-1 in #7194
  * add support for encoding/decoding ultrahdr images by @aayushsoni111 in #7198
  * Updates to uhdr.c by @aayushsoni111 in #7217
- added patches
  fix https://github.com/ImageMagick/ImageMagick/issues/7230
  + ImageMagick-wmflite-detection.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713182400">- relax list-length resource limit, fixes build of python-Wand
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713787200">- version update to 7.1.1.31
  * Convert big PDF documents is slow #7263
  * Update release.yml #7258
  * Update README.md #7245
  * uhdr.c: verify the availability of error message before accessing it #7229
- removed patches
  - ImageMagick-wmflite-detection.patch (upstreamed)
  `</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1714910400">- version update to 7.1.1.32
  * Fix GIF ICC profile reading #7282
  * uhdr.c: add support for rgb inputs #7273</changelog>
  <changelog author="pgajdos@suse.com" date="1715860800">- reverted update-alternatives usage removal [bsc#1122033][bsc#1220818]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1716638400">- version update to 7.1.1.33
  * Fix typo in #7294
  * Bump azure/trusted-signing-action from 0.3.16 to 0.3.18 in #7325
  * Bump caphyon/advinst-github-action from 1.1 to 2.0 in #7326
- added patch
  + ImageMagick-update-image-signature.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1719144000">- version update to 7.1.1.34
  * Bump azure/trusted-signing-action from 0.3.18 to 0.3.19 in #7348
  * Fix a typo in convert deprecation warning in #7383
  * Bump azure/trusted-signing-action from 0.3.19 to 0.3.20 in #7388
  * Updated FontConfig query to include font index, fixing (#7374) in #7409
- removed patch (upstreamed)
  - ImageMagick-update-image-signature.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1721908800">- version update to 7.1.1.35
  * Also set dpi-x and dpi-y when running rsvg-convert. eac001f
  * convert sub-command is deprecated d67039e
  * only operators should disable "identify ping" (ImageMagick/ImageMagick#7441) a262192
  * fix compiler error ecc21c7
  * -outdir deprecated 9980efa
  * Get the correct width and height when heic:preserve-orientation is set to true. ed3a0dd
  * Set heic image orientation using transform information. ba470aa
  * Exit earlier when the symlink could not be created when invoking the svg:decode delegate. 8a48edd
  * Fixed MSYS2 build error. 3b22378
  * Also set the DNG properties when pinging the image. fc1c61b
  * Silence warning when lqr delegate is disabled. ae0d69a
  * Added version check for the heif_properties.h include. 656b4d2
  * Make sure we always use the i64 version of the "file methods" on Windows. b3e8a78
  * Changed defines to use method instead of a define. 75b66c4
  * Changes due to upgrade of libheif. 841f033
  * smooth the rendering of an ellipse (ImageMagick/ImageMagick#7465) 1bfce2a</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- version update to 7.1.1.36
  * uhdr.c: default initialize range field for hdr/sdr intent inputs to
    enc by @aayushsoni111 in #7482
  * Fixed typo in documentation of MagickAdaptiveBlurImage by @JonahEMorgan
    in #7500
  * Silence warning when freetype delegate is disabled. by @niclet in #7515</changelog>
  <changelog author="pgajdos@suse.com" date="1724760000">- version update to 7.1.1.37
  * Bump azure/trusted-signing-action from 0.3.20 to 0.4.0 #7518
  * Silence warning and fix HEIC_COMPUTE_NUMERIC_VERSION definition when heic delegate is disabled. #7516
  * protect macro arguments with parens 86cb2b1
  * eliminate compiler warnings d90d8b4
  * correct copyright year 115271e
  * Ignore multiple exif and xmp profiles for the same jxl frame and fix reading those profiles per frame. c301208
  * read/write in chunks fff3058
  * optimize fwrite() arguments ada6785
  * Renamed Output folder to Artifacts. 2a69677
  * cancel interactive window selection with right button press ea2a2db
  * cosmetic 712bde4
  * eliminate compiler warning 9a9a25c
  * eliminate compiler warning 0bd1687
  * Make images mandatory in the issue template. c01fd37
  * Added extra header detection for avif files. 9fc0590
  * allow SeekBlob() to set an offset beyond the end of the blob 27c3f99
  * be less forgiving for invalid image indexes 25db2e5
  * Fixed problem with empty macros (#7562) 9fda5f2
  * Added missing null checks for RequestOpenCLDevice. f85448e
  * Added missing null check for AcquireOpenCLCommandQueue. 295e9c8
  * persist app1 jpeg profile (ImageMagick/ImageMagick#4713) f0357c7
  * Fixed build error. b3dd431
  * Remove some of the dependencies for the macos-13 build. d0bce95
  * parentheses is the plural of parenthesis 1fac80a
  * distribute quantization error for -dither FloydSteinberg -depth 5b2825b
  * release 8a0da9f
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565</changelog>
  <changelog author="pgajdos@suse.com" date="1726228800">- version update to 7.1.1.38
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565
  * beta release 250b748
  * deprecate the -respect-paranthesis option 4e7d789
  * Build fixes. b80c509
  * save IPTC + ICC profiles are profiles, not properties 25d5335
  * update copyright year 4caf7d1
  * Patch to fix reading of the ICC profile. 18377f9
  * prepping framework to interact with X11 clipboard b20dda3
  * Build fix. 20a5af3
  * More build fixes. c36fdf0
  * Another attempt to silence the warnings. 600708c
  * Use SetImageProfilePrivate to avoid duplicate allocations. f246eab
  * support clipboard delegate 39a135a
  * restore clipboard.c 1070b17
  * improved rounding 27a0a9c
  * don't allow negative scenes 8fda05a
  * eliminate compiler warnings 878daf9
- modified patches
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1728216000">- version update to 7.1.1.39
  * Add missing Threshold command to command array of Region of Interest mode #7606
  * uhdr.c: update uhdr coder for gainmap metadata configuration #7635
  * uhdr: fix language choice in autoconf #7663</changelog>
  <changelog author="Yann BOYER &lt;yann.boyer742@gmail.com&gt;" date="1731326400">- version update to 7.1.1.40
  * .cut (Dr Halo) reading when run count in header #7734
  * Bump azure/trusted-signing-action from 0.4.0 to 0.5.0 #7725
  * Implement Magic Kernel Sharp 2013 and 2021 #7701
  * don't process TIFF image if there is an exception
  * Corrected check for indexed channels in PSD files.
  * export exception when undo resource limit exceeded</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1731844800">- version update to 7.1.1.41
  * Fix compiler identification with Clang on Darwin in #7773
  * revert map changes breaking ABI in #7768</changelog>
</package>
<package pkgid="a3372e957d1f8b9492aed9accbd46a347b7c50ea643f3077afc9d138b0d01eeee04463ad9b553cf2af44d3cf56e6c407c8fc5fa9415919a89e8a036a9625c3e6" name="ImageMagick-config-7-upstream-limited" arch="x86_64">
  <version epoch="0" ver="7.1.1.41" rel="1.0.2.1.sr20241103"/>
  <changelog author="Michael Vetter &lt;mvetter@suse.com&gt;" date="1708603200">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1709035200">- version update to 7.1.1.29
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709380800">- We can not replace a symlink with a directory on the directly
  Unregister the whole group manually in %pre with
  update-alternatives. (boo#1220818)
  Restore Requires(pre) on update-alternatives for the mean time.</changelog>
  <changelog author="pgajdos@suse.com" date="1709553600">- enable SVG again
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711022400">- allow delegates to be executed, was disabled by default policy
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711108800">- allow stdin/stdout
- modified patches
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1712577600">- version update to 7.1.1.30
  * install perl module into user-specified prefix by @bugfood in #7192
  * Fix bmp option to bypass file size check by @OnTheList-1 in #7194
  * add support for encoding/decoding ultrahdr images by @aayushsoni111 in #7198
  * Updates to uhdr.c by @aayushsoni111 in #7217
- added patches
  fix https://github.com/ImageMagick/ImageMagick/issues/7230
  + ImageMagick-wmflite-detection.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713182400">- relax list-length resource limit, fixes build of python-Wand
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713787200">- version update to 7.1.1.31
  * Convert big PDF documents is slow #7263
  * Update release.yml #7258
  * Update README.md #7245
  * uhdr.c: verify the availability of error message before accessing it #7229
- removed patches
  - ImageMagick-wmflite-detection.patch (upstreamed)
  `</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1714910400">- version update to 7.1.1.32
  * Fix GIF ICC profile reading #7282
  * uhdr.c: add support for rgb inputs #7273</changelog>
  <changelog author="pgajdos@suse.com" date="1715860800">- reverted update-alternatives usage removal [bsc#1122033][bsc#1220818]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1716638400">- version update to 7.1.1.33
  * Fix typo in #7294
  * Bump azure/trusted-signing-action from 0.3.16 to 0.3.18 in #7325
  * Bump caphyon/advinst-github-action from 1.1 to 2.0 in #7326
- added patch
  + ImageMagick-update-image-signature.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1719144000">- version update to 7.1.1.34
  * Bump azure/trusted-signing-action from 0.3.18 to 0.3.19 in #7348
  * Fix a typo in convert deprecation warning in #7383
  * Bump azure/trusted-signing-action from 0.3.19 to 0.3.20 in #7388
  * Updated FontConfig query to include font index, fixing (#7374) in #7409
- removed patch (upstreamed)
  - ImageMagick-update-image-signature.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1721908800">- version update to 7.1.1.35
  * Also set dpi-x and dpi-y when running rsvg-convert. eac001f
  * convert sub-command is deprecated d67039e
  * only operators should disable "identify ping" (ImageMagick/ImageMagick#7441) a262192
  * fix compiler error ecc21c7
  * -outdir deprecated 9980efa
  * Get the correct width and height when heic:preserve-orientation is set to true. ed3a0dd
  * Set heic image orientation using transform information. ba470aa
  * Exit earlier when the symlink could not be created when invoking the svg:decode delegate. 8a48edd
  * Fixed MSYS2 build error. 3b22378
  * Also set the DNG properties when pinging the image. fc1c61b
  * Silence warning when lqr delegate is disabled. ae0d69a
  * Added version check for the heif_properties.h include. 656b4d2
  * Make sure we always use the i64 version of the "file methods" on Windows. b3e8a78
  * Changed defines to use method instead of a define. 75b66c4
  * Changes due to upgrade of libheif. 841f033
  * smooth the rendering of an ellipse (ImageMagick/ImageMagick#7465) 1bfce2a</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- version update to 7.1.1.36
  * uhdr.c: default initialize range field for hdr/sdr intent inputs to
    enc by @aayushsoni111 in #7482
  * Fixed typo in documentation of MagickAdaptiveBlurImage by @JonahEMorgan
    in #7500
  * Silence warning when freetype delegate is disabled. by @niclet in #7515</changelog>
  <changelog author="pgajdos@suse.com" date="1724760000">- version update to 7.1.1.37
  * Bump azure/trusted-signing-action from 0.3.20 to 0.4.0 #7518
  * Silence warning and fix HEIC_COMPUTE_NUMERIC_VERSION definition when heic delegate is disabled. #7516
  * protect macro arguments with parens 86cb2b1
  * eliminate compiler warnings d90d8b4
  * correct copyright year 115271e
  * Ignore multiple exif and xmp profiles for the same jxl frame and fix reading those profiles per frame. c301208
  * read/write in chunks fff3058
  * optimize fwrite() arguments ada6785
  * Renamed Output folder to Artifacts. 2a69677
  * cancel interactive window selection with right button press ea2a2db
  * cosmetic 712bde4
  * eliminate compiler warning 9a9a25c
  * eliminate compiler warning 0bd1687
  * Make images mandatory in the issue template. c01fd37
  * Added extra header detection for avif files. 9fc0590
  * allow SeekBlob() to set an offset beyond the end of the blob 27c3f99
  * be less forgiving for invalid image indexes 25db2e5
  * Fixed problem with empty macros (#7562) 9fda5f2
  * Added missing null checks for RequestOpenCLDevice. f85448e
  * Added missing null check for AcquireOpenCLCommandQueue. 295e9c8
  * persist app1 jpeg profile (ImageMagick/ImageMagick#4713) f0357c7
  * Fixed build error. b3dd431
  * Remove some of the dependencies for the macos-13 build. d0bce95
  * parentheses is the plural of parenthesis 1fac80a
  * distribute quantization error for -dither FloydSteinberg -depth 5b2825b
  * release 8a0da9f
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565</changelog>
  <changelog author="pgajdos@suse.com" date="1726228800">- version update to 7.1.1.38
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565
  * beta release 250b748
  * deprecate the -respect-paranthesis option 4e7d789
  * Build fixes. b80c509
  * save IPTC + ICC profiles are profiles, not properties 25d5335
  * update copyright year 4caf7d1
  * Patch to fix reading of the ICC profile. 18377f9
  * prepping framework to interact with X11 clipboard b20dda3
  * Build fix. 20a5af3
  * More build fixes. c36fdf0
  * Another attempt to silence the warnings. 600708c
  * Use SetImageProfilePrivate to avoid duplicate allocations. f246eab
  * support clipboard delegate 39a135a
  * restore clipboard.c 1070b17
  * improved rounding 27a0a9c
  * don't allow negative scenes 8fda05a
  * eliminate compiler warnings 878daf9
- modified patches
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1728216000">- version update to 7.1.1.39
  * Add missing Threshold command to command array of Region of Interest mode #7606
  * uhdr.c: update uhdr coder for gainmap metadata configuration #7635
  * uhdr: fix language choice in autoconf #7663</changelog>
  <changelog author="Yann BOYER &lt;yann.boyer742@gmail.com&gt;" date="1731326400">- version update to 7.1.1.40
  * .cut (Dr Halo) reading when run count in header #7734
  * Bump azure/trusted-signing-action from 0.4.0 to 0.5.0 #7725
  * Implement Magic Kernel Sharp 2013 and 2021 #7701
  * don't process TIFF image if there is an exception
  * Corrected check for indexed channels in PSD files.
  * export exception when undo resource limit exceeded</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1731844800">- version update to 7.1.1.41
  * Fix compiler identification with Clang on Darwin in #7773
  * revert map changes breaking ABI in #7768</changelog>
</package>
<package pkgid="0470f75d7ea9da6ac70b70d7656b0ef47f1e2b1c0812937c9a25dd734c45011d98021618763be111d6963206f7d83188fd31e3668e5b420e72f0bcdb8aa1b68d" name="ImageMagick-config-7-upstream-open" arch="i586">
  <version epoch="0" ver="7.1.1.36" rel="1.1"/>
  <changelog author="munix9@googlemail.com" date="1705233600">- Fix incomplete removal of update-alternatives for config
- Replace obsolete 'otherproviders(imagick-%{config_spec})' with
  'Conflicts: imagick-%{config_spec}'</changelog>
  <changelog author="pgajdos@suse.com" date="1705320000">- use correct policy.xml</changelog>
  <changelog author="pgajdos@suse.com" date="1705406400">- only one configuration again, based on upstream 'secure' policy
- other upstream policies packaged in documentation</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1705838400">- version update to 7.1.1.27
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1707652800">- version update to 7.1.1.28
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Michael Vetter &lt;mvetter@suse.com&gt;" date="1708603200">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1709035200">- version update to 7.1.1.29
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709380800">- We can not replace a symlink with a directory on the directly
  Unregister the whole group manually in %pre with
  update-alternatives. (boo#1220818)
  Restore Requires(pre) on update-alternatives for the mean time.</changelog>
  <changelog author="pgajdos@suse.com" date="1709553600">- enable SVG again
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711022400">- allow delegates to be executed, was disabled by default policy
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711108800">- allow stdin/stdout
- modified patches
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1712577600">- version update to 7.1.1.30
  * install perl module into user-specified prefix by @bugfood in #7192
  * Fix bmp option to bypass file size check by @OnTheList-1 in #7194
  * add support for encoding/decoding ultrahdr images by @aayushsoni111 in #7198
  * Updates to uhdr.c by @aayushsoni111 in #7217
- added patches
  fix https://github.com/ImageMagick/ImageMagick/issues/7230
  + ImageMagick-wmflite-detection.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713182400">- relax list-length resource limit, fixes build of python-Wand
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713787200">- version update to 7.1.1.31
  * Convert big PDF documents is slow #7263
  * Update release.yml #7258
  * Update README.md #7245
  * uhdr.c: verify the availability of error message before accessing it #7229
- removed patches
  - ImageMagick-wmflite-detection.patch (upstreamed)
  `</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1714910400">- version update to 7.1.1.32
  * Fix GIF ICC profile reading #7282
  * uhdr.c: add support for rgb inputs #7273</changelog>
  <changelog author="pgajdos@suse.com" date="1715860800">- reverted update-alternatives usage removal [bsc#1122033][bsc#1220818]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1716638400">- version update to 7.1.1.33
  * Fix typo in #7294
  * Bump azure/trusted-signing-action from 0.3.16 to 0.3.18 in #7325
  * Bump caphyon/advinst-github-action from 1.1 to 2.0 in #7326
- added patch
  + ImageMagick-update-image-signature.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1719144000">- version update to 7.1.1.34
  * Bump azure/trusted-signing-action from 0.3.18 to 0.3.19 in #7348
  * Fix a typo in convert deprecation warning in #7383
  * Bump azure/trusted-signing-action from 0.3.19 to 0.3.20 in #7388
  * Updated FontConfig query to include font index, fixing (#7374) in #7409
- removed patch (upstreamed)
  - ImageMagick-update-image-signature.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1721908800">- version update to 7.1.1.35
  * Also set dpi-x and dpi-y when running rsvg-convert. eac001f
  * convert sub-command is deprecated d67039e
  * only operators should disable "identify ping" (ImageMagick/ImageMagick#7441) a262192
  * fix compiler error ecc21c7
  * -outdir deprecated 9980efa
  * Get the correct width and height when heic:preserve-orientation is set to true. ed3a0dd
  * Set heic image orientation using transform information. ba470aa
  * Exit earlier when the symlink could not be created when invoking the svg:decode delegate. 8a48edd
  * Fixed MSYS2 build error. 3b22378
  * Also set the DNG properties when pinging the image. fc1c61b
  * Silence warning when lqr delegate is disabled. ae0d69a
  * Added version check for the heif_properties.h include. 656b4d2
  * Make sure we always use the i64 version of the "file methods" on Windows. b3e8a78
  * Changed defines to use method instead of a define. 75b66c4
  * Changes due to upgrade of libheif. 841f033
  * smooth the rendering of an ellipse (ImageMagick/ImageMagick#7465) 1bfce2a</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- version update to 7.1.1.36
  * uhdr.c: default initialize range field for hdr/sdr intent inputs to
    enc by @aayushsoni111 in #7482
  * Fixed typo in documentation of MagickAdaptiveBlurImage by @JonahEMorgan
    in #7500
  * Silence warning when freetype delegate is disabled. by @niclet in #7515</changelog>
</package>
<package pkgid="aef978a13d969499aad9a445891169be62b93c3151a27ef655e29d11327007a360167e9c480973a0f1cdaf159ef21d991014b0fc2e0b9d61c99d85b2e252fe38" name="ImageMagick-config-7-upstream-open" arch="x86_64">
  <version epoch="0" ver="7.1.1.36" rel="1.1"/>
  <changelog author="munix9@googlemail.com" date="1705233600">- Fix incomplete removal of update-alternatives for config
- Replace obsolete 'otherproviders(imagick-%{config_spec})' with
  'Conflicts: imagick-%{config_spec}'</changelog>
  <changelog author="pgajdos@suse.com" date="1705320000">- use correct policy.xml</changelog>
  <changelog author="pgajdos@suse.com" date="1705406400">- only one configuration again, based on upstream 'secure' policy
- other upstream policies packaged in documentation</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1705838400">- version update to 7.1.1.27
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1707652800">- version update to 7.1.1.28
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Michael Vetter &lt;mvetter@suse.com&gt;" date="1708603200">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1709035200">- version update to 7.1.1.29
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709380800">- We can not replace a symlink with a directory on the directly
  Unregister the whole group manually in %pre with
  update-alternatives. (boo#1220818)
  Restore Requires(pre) on update-alternatives for the mean time.</changelog>
  <changelog author="pgajdos@suse.com" date="1709553600">- enable SVG again
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711022400">- allow delegates to be executed, was disabled by default policy
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711108800">- allow stdin/stdout
- modified patches
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1712577600">- version update to 7.1.1.30
  * install perl module into user-specified prefix by @bugfood in #7192
  * Fix bmp option to bypass file size check by @OnTheList-1 in #7194
  * add support for encoding/decoding ultrahdr images by @aayushsoni111 in #7198
  * Updates to uhdr.c by @aayushsoni111 in #7217
- added patches
  fix https://github.com/ImageMagick/ImageMagick/issues/7230
  + ImageMagick-wmflite-detection.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713182400">- relax list-length resource limit, fixes build of python-Wand
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713787200">- version update to 7.1.1.31
  * Convert big PDF documents is slow #7263
  * Update release.yml #7258
  * Update README.md #7245
  * uhdr.c: verify the availability of error message before accessing it #7229
- removed patches
  - ImageMagick-wmflite-detection.patch (upstreamed)
  `</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1714910400">- version update to 7.1.1.32
  * Fix GIF ICC profile reading #7282
  * uhdr.c: add support for rgb inputs #7273</changelog>
  <changelog author="pgajdos@suse.com" date="1715860800">- reverted update-alternatives usage removal [bsc#1122033][bsc#1220818]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1716638400">- version update to 7.1.1.33
  * Fix typo in #7294
  * Bump azure/trusted-signing-action from 0.3.16 to 0.3.18 in #7325
  * Bump caphyon/advinst-github-action from 1.1 to 2.0 in #7326
- added patch
  + ImageMagick-update-image-signature.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1719144000">- version update to 7.1.1.34
  * Bump azure/trusted-signing-action from 0.3.18 to 0.3.19 in #7348
  * Fix a typo in convert deprecation warning in #7383
  * Bump azure/trusted-signing-action from 0.3.19 to 0.3.20 in #7388
  * Updated FontConfig query to include font index, fixing (#7374) in #7409
- removed patch (upstreamed)
  - ImageMagick-update-image-signature.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1721908800">- version update to 7.1.1.35
  * Also set dpi-x and dpi-y when running rsvg-convert. eac001f
  * convert sub-command is deprecated d67039e
  * only operators should disable "identify ping" (ImageMagick/ImageMagick#7441) a262192
  * fix compiler error ecc21c7
  * -outdir deprecated 9980efa
  * Get the correct width and height when heic:preserve-orientation is set to true. ed3a0dd
  * Set heic image orientation using transform information. ba470aa
  * Exit earlier when the symlink could not be created when invoking the svg:decode delegate. 8a48edd
  * Fixed MSYS2 build error. 3b22378
  * Also set the DNG properties when pinging the image. fc1c61b
  * Silence warning when lqr delegate is disabled. ae0d69a
  * Added version check for the heif_properties.h include. 656b4d2
  * Make sure we always use the i64 version of the "file methods" on Windows. b3e8a78
  * Changed defines to use method instead of a define. 75b66c4
  * Changes due to upgrade of libheif. 841f033
  * smooth the rendering of an ellipse (ImageMagick/ImageMagick#7465) 1bfce2a</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- version update to 7.1.1.36
  * uhdr.c: default initialize range field for hdr/sdr intent inputs to
    enc by @aayushsoni111 in #7482
  * Fixed typo in documentation of MagickAdaptiveBlurImage by @JonahEMorgan
    in #7500
  * Silence warning when freetype delegate is disabled. by @niclet in #7515</changelog>
</package>
<package pkgid="041cf72940d23cbbf212725ca6313b6872f4839d861047e3cd695e144399f956c62bd4d2b8fdd709e211756c26688b6251995d60016c07187febdd87757664c3" name="ImageMagick-config-7-upstream-open" arch="i586">
  <version epoch="0" ver="7.1.1.37" rel="1.0.4.1.sr20240803"/>
  <changelog author="pgajdos@suse.com" date="1705320000">- use correct policy.xml</changelog>
  <changelog author="pgajdos@suse.com" date="1705406400">- only one configuration again, based on upstream 'secure' policy
- other upstream policies packaged in documentation</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1705838400">- version update to 7.1.1.27
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1707652800">- version update to 7.1.1.28
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Michael Vetter &lt;mvetter@suse.com&gt;" date="1708603200">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1709035200">- version update to 7.1.1.29
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709380800">- We can not replace a symlink with a directory on the directly
  Unregister the whole group manually in %pre with
  update-alternatives. (boo#1220818)
  Restore Requires(pre) on update-alternatives for the mean time.</changelog>
  <changelog author="pgajdos@suse.com" date="1709553600">- enable SVG again
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711022400">- allow delegates to be executed, was disabled by default policy
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711108800">- allow stdin/stdout
- modified patches
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1712577600">- version update to 7.1.1.30
  * install perl module into user-specified prefix by @bugfood in #7192
  * Fix bmp option to bypass file size check by @OnTheList-1 in #7194
  * add support for encoding/decoding ultrahdr images by @aayushsoni111 in #7198
  * Updates to uhdr.c by @aayushsoni111 in #7217
- added patches
  fix https://github.com/ImageMagick/ImageMagick/issues/7230
  + ImageMagick-wmflite-detection.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713182400">- relax list-length resource limit, fixes build of python-Wand
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713787200">- version update to 7.1.1.31
  * Convert big PDF documents is slow #7263
  * Update release.yml #7258
  * Update README.md #7245
  * uhdr.c: verify the availability of error message before accessing it #7229
- removed patches
  - ImageMagick-wmflite-detection.patch (upstreamed)
  `</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1714910400">- version update to 7.1.1.32
  * Fix GIF ICC profile reading #7282
  * uhdr.c: add support for rgb inputs #7273</changelog>
  <changelog author="pgajdos@suse.com" date="1715860800">- reverted update-alternatives usage removal [bsc#1122033][bsc#1220818]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1716638400">- version update to 7.1.1.33
  * Fix typo in #7294
  * Bump azure/trusted-signing-action from 0.3.16 to 0.3.18 in #7325
  * Bump caphyon/advinst-github-action from 1.1 to 2.0 in #7326
- added patch
  + ImageMagick-update-image-signature.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1719144000">- version update to 7.1.1.34
  * Bump azure/trusted-signing-action from 0.3.18 to 0.3.19 in #7348
  * Fix a typo in convert deprecation warning in #7383
  * Bump azure/trusted-signing-action from 0.3.19 to 0.3.20 in #7388
  * Updated FontConfig query to include font index, fixing (#7374) in #7409
- removed patch (upstreamed)
  - ImageMagick-update-image-signature.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1721908800">- version update to 7.1.1.35
  * Also set dpi-x and dpi-y when running rsvg-convert. eac001f
  * convert sub-command is deprecated d67039e
  * only operators should disable "identify ping" (ImageMagick/ImageMagick#7441) a262192
  * fix compiler error ecc21c7
  * -outdir deprecated 9980efa
  * Get the correct width and height when heic:preserve-orientation is set to true. ed3a0dd
  * Set heic image orientation using transform information. ba470aa
  * Exit earlier when the symlink could not be created when invoking the svg:decode delegate. 8a48edd
  * Fixed MSYS2 build error. 3b22378
  * Also set the DNG properties when pinging the image. fc1c61b
  * Silence warning when lqr delegate is disabled. ae0d69a
  * Added version check for the heif_properties.h include. 656b4d2
  * Make sure we always use the i64 version of the "file methods" on Windows. b3e8a78
  * Changed defines to use method instead of a define. 75b66c4
  * Changes due to upgrade of libheif. 841f033
  * smooth the rendering of an ellipse (ImageMagick/ImageMagick#7465) 1bfce2a</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- version update to 7.1.1.36
  * uhdr.c: default initialize range field for hdr/sdr intent inputs to
    enc by @aayushsoni111 in #7482
  * Fixed typo in documentation of MagickAdaptiveBlurImage by @JonahEMorgan
    in #7500
  * Silence warning when freetype delegate is disabled. by @niclet in #7515</changelog>
  <changelog author="pgajdos@suse.com" date="1724760000">- version update to 7.1.1.37
  * Bump azure/trusted-signing-action from 0.3.20 to 0.4.0 #7518
  * Silence warning and fix HEIC_COMPUTE_NUMERIC_VERSION definition when heic delegate is disabled. #7516
  * protect macro arguments with parens 86cb2b1
  * eliminate compiler warnings d90d8b4
  * correct copyright year 115271e
  * Ignore multiple exif and xmp profiles for the same jxl frame and fix reading those profiles per frame. c301208
  * read/write in chunks fff3058
  * optimize fwrite() arguments ada6785
  * Renamed Output folder to Artifacts. 2a69677
  * cancel interactive window selection with right button press ea2a2db
  * cosmetic 712bde4
  * eliminate compiler warning 9a9a25c
  * eliminate compiler warning 0bd1687
  * Make images mandatory in the issue template. c01fd37
  * Added extra header detection for avif files. 9fc0590
  * allow SeekBlob() to set an offset beyond the end of the blob 27c3f99
  * be less forgiving for invalid image indexes 25db2e5
  * Fixed problem with empty macros (#7562) 9fda5f2
  * Added missing null checks for RequestOpenCLDevice. f85448e
  * Added missing null check for AcquireOpenCLCommandQueue. 295e9c8
  * persist app1 jpeg profile (ImageMagick/ImageMagick#4713) f0357c7
  * Fixed build error. b3dd431
  * Remove some of the dependencies for the macos-13 build. d0bce95
  * parentheses is the plural of parenthesis 1fac80a
  * distribute quantization error for -dither FloydSteinberg -depth 5b2825b
  * release 8a0da9f
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565</changelog>
</package>
<package pkgid="9bf3372ffef29079d9afe6e48a2950f04d62e8ace78e78511902e797810d9419441622e8c75db2f3d5f434ca0d07726c0e11b13f44cfea98f170e4e684134063" name="ImageMagick-config-7-upstream-open" arch="x86_64">
  <version epoch="0" ver="7.1.1.37" rel="1.0.4.1.sr20240803"/>
  <changelog author="pgajdos@suse.com" date="1705320000">- use correct policy.xml</changelog>
  <changelog author="pgajdos@suse.com" date="1705406400">- only one configuration again, based on upstream 'secure' policy
- other upstream policies packaged in documentation</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1705838400">- version update to 7.1.1.27
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1707652800">- version update to 7.1.1.28
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Michael Vetter &lt;mvetter@suse.com&gt;" date="1708603200">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1709035200">- version update to 7.1.1.29
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709380800">- We can not replace a symlink with a directory on the directly
  Unregister the whole group manually in %pre with
  update-alternatives. (boo#1220818)
  Restore Requires(pre) on update-alternatives for the mean time.</changelog>
  <changelog author="pgajdos@suse.com" date="1709553600">- enable SVG again
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711022400">- allow delegates to be executed, was disabled by default policy
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711108800">- allow stdin/stdout
- modified patches
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1712577600">- version update to 7.1.1.30
  * install perl module into user-specified prefix by @bugfood in #7192
  * Fix bmp option to bypass file size check by @OnTheList-1 in #7194
  * add support for encoding/decoding ultrahdr images by @aayushsoni111 in #7198
  * Updates to uhdr.c by @aayushsoni111 in #7217
- added patches
  fix https://github.com/ImageMagick/ImageMagick/issues/7230
  + ImageMagick-wmflite-detection.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713182400">- relax list-length resource limit, fixes build of python-Wand
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713787200">- version update to 7.1.1.31
  * Convert big PDF documents is slow #7263
  * Update release.yml #7258
  * Update README.md #7245
  * uhdr.c: verify the availability of error message before accessing it #7229
- removed patches
  - ImageMagick-wmflite-detection.patch (upstreamed)
  `</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1714910400">- version update to 7.1.1.32
  * Fix GIF ICC profile reading #7282
  * uhdr.c: add support for rgb inputs #7273</changelog>
  <changelog author="pgajdos@suse.com" date="1715860800">- reverted update-alternatives usage removal [bsc#1122033][bsc#1220818]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1716638400">- version update to 7.1.1.33
  * Fix typo in #7294
  * Bump azure/trusted-signing-action from 0.3.16 to 0.3.18 in #7325
  * Bump caphyon/advinst-github-action from 1.1 to 2.0 in #7326
- added patch
  + ImageMagick-update-image-signature.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1719144000">- version update to 7.1.1.34
  * Bump azure/trusted-signing-action from 0.3.18 to 0.3.19 in #7348
  * Fix a typo in convert deprecation warning in #7383
  * Bump azure/trusted-signing-action from 0.3.19 to 0.3.20 in #7388
  * Updated FontConfig query to include font index, fixing (#7374) in #7409
- removed patch (upstreamed)
  - ImageMagick-update-image-signature.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1721908800">- version update to 7.1.1.35
  * Also set dpi-x and dpi-y when running rsvg-convert. eac001f
  * convert sub-command is deprecated d67039e
  * only operators should disable "identify ping" (ImageMagick/ImageMagick#7441) a262192
  * fix compiler error ecc21c7
  * -outdir deprecated 9980efa
  * Get the correct width and height when heic:preserve-orientation is set to true. ed3a0dd
  * Set heic image orientation using transform information. ba470aa
  * Exit earlier when the symlink could not be created when invoking the svg:decode delegate. 8a48edd
  * Fixed MSYS2 build error. 3b22378
  * Also set the DNG properties when pinging the image. fc1c61b
  * Silence warning when lqr delegate is disabled. ae0d69a
  * Added version check for the heif_properties.h include. 656b4d2
  * Make sure we always use the i64 version of the "file methods" on Windows. b3e8a78
  * Changed defines to use method instead of a define. 75b66c4
  * Changes due to upgrade of libheif. 841f033
  * smooth the rendering of an ellipse (ImageMagick/ImageMagick#7465) 1bfce2a</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- version update to 7.1.1.36
  * uhdr.c: default initialize range field for hdr/sdr intent inputs to
    enc by @aayushsoni111 in #7482
  * Fixed typo in documentation of MagickAdaptiveBlurImage by @JonahEMorgan
    in #7500
  * Silence warning when freetype delegate is disabled. by @niclet in #7515</changelog>
  <changelog author="pgajdos@suse.com" date="1724760000">- version update to 7.1.1.37
  * Bump azure/trusted-signing-action from 0.3.20 to 0.4.0 #7518
  * Silence warning and fix HEIC_COMPUTE_NUMERIC_VERSION definition when heic delegate is disabled. #7516
  * protect macro arguments with parens 86cb2b1
  * eliminate compiler warnings d90d8b4
  * correct copyright year 115271e
  * Ignore multiple exif and xmp profiles for the same jxl frame and fix reading those profiles per frame. c301208
  * read/write in chunks fff3058
  * optimize fwrite() arguments ada6785
  * Renamed Output folder to Artifacts. 2a69677
  * cancel interactive window selection with right button press ea2a2db
  * cosmetic 712bde4
  * eliminate compiler warning 9a9a25c
  * eliminate compiler warning 0bd1687
  * Make images mandatory in the issue template. c01fd37
  * Added extra header detection for avif files. 9fc0590
  * allow SeekBlob() to set an offset beyond the end of the blob 27c3f99
  * be less forgiving for invalid image indexes 25db2e5
  * Fixed problem with empty macros (#7562) 9fda5f2
  * Added missing null checks for RequestOpenCLDevice. f85448e
  * Added missing null check for AcquireOpenCLCommandQueue. 295e9c8
  * persist app1 jpeg profile (ImageMagick/ImageMagick#4713) f0357c7
  * Fixed build error. b3dd431
  * Remove some of the dependencies for the macos-13 build. d0bce95
  * parentheses is the plural of parenthesis 1fac80a
  * distribute quantization error for -dither FloydSteinberg -depth 5b2825b
  * release 8a0da9f
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565</changelog>
</package>
<package pkgid="57a5fea2f25902226849bab6496b0bae6149f0f79c900ac80ca1f501bf350c59fd65b1f505e2020a3e05398414c6b71d80bde99db63e63eadcf2642a72670288" name="ImageMagick-config-7-upstream-open" arch="i586">
  <version epoch="0" ver="7.1.1.37" rel="1.1"/>
  <changelog author="pgajdos@suse.com" date="1705320000">- use correct policy.xml</changelog>
  <changelog author="pgajdos@suse.com" date="1705406400">- only one configuration again, based on upstream 'secure' policy
- other upstream policies packaged in documentation</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1705838400">- version update to 7.1.1.27
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1707652800">- version update to 7.1.1.28
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Michael Vetter &lt;mvetter@suse.com&gt;" date="1708603200">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1709035200">- version update to 7.1.1.29
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709380800">- We can not replace a symlink with a directory on the directly
  Unregister the whole group manually in %pre with
  update-alternatives. (boo#1220818)
  Restore Requires(pre) on update-alternatives for the mean time.</changelog>
  <changelog author="pgajdos@suse.com" date="1709553600">- enable SVG again
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711022400">- allow delegates to be executed, was disabled by default policy
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711108800">- allow stdin/stdout
- modified patches
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1712577600">- version update to 7.1.1.30
  * install perl module into user-specified prefix by @bugfood in #7192
  * Fix bmp option to bypass file size check by @OnTheList-1 in #7194
  * add support for encoding/decoding ultrahdr images by @aayushsoni111 in #7198
  * Updates to uhdr.c by @aayushsoni111 in #7217
- added patches
  fix https://github.com/ImageMagick/ImageMagick/issues/7230
  + ImageMagick-wmflite-detection.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713182400">- relax list-length resource limit, fixes build of python-Wand
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713787200">- version update to 7.1.1.31
  * Convert big PDF documents is slow #7263
  * Update release.yml #7258
  * Update README.md #7245
  * uhdr.c: verify the availability of error message before accessing it #7229
- removed patches
  - ImageMagick-wmflite-detection.patch (upstreamed)
  `</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1714910400">- version update to 7.1.1.32
  * Fix GIF ICC profile reading #7282
  * uhdr.c: add support for rgb inputs #7273</changelog>
  <changelog author="pgajdos@suse.com" date="1715860800">- reverted update-alternatives usage removal [bsc#1122033][bsc#1220818]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1716638400">- version update to 7.1.1.33
  * Fix typo in #7294
  * Bump azure/trusted-signing-action from 0.3.16 to 0.3.18 in #7325
  * Bump caphyon/advinst-github-action from 1.1 to 2.0 in #7326
- added patch
  + ImageMagick-update-image-signature.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1719144000">- version update to 7.1.1.34
  * Bump azure/trusted-signing-action from 0.3.18 to 0.3.19 in #7348
  * Fix a typo in convert deprecation warning in #7383
  * Bump azure/trusted-signing-action from 0.3.19 to 0.3.20 in #7388
  * Updated FontConfig query to include font index, fixing (#7374) in #7409
- removed patch (upstreamed)
  - ImageMagick-update-image-signature.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1721908800">- version update to 7.1.1.35
  * Also set dpi-x and dpi-y when running rsvg-convert. eac001f
  * convert sub-command is deprecated d67039e
  * only operators should disable "identify ping" (ImageMagick/ImageMagick#7441) a262192
  * fix compiler error ecc21c7
  * -outdir deprecated 9980efa
  * Get the correct width and height when heic:preserve-orientation is set to true. ed3a0dd
  * Set heic image orientation using transform information. ba470aa
  * Exit earlier when the symlink could not be created when invoking the svg:decode delegate. 8a48edd
  * Fixed MSYS2 build error. 3b22378
  * Also set the DNG properties when pinging the image. fc1c61b
  * Silence warning when lqr delegate is disabled. ae0d69a
  * Added version check for the heif_properties.h include. 656b4d2
  * Make sure we always use the i64 version of the "file methods" on Windows. b3e8a78
  * Changed defines to use method instead of a define. 75b66c4
  * Changes due to upgrade of libheif. 841f033
  * smooth the rendering of an ellipse (ImageMagick/ImageMagick#7465) 1bfce2a</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- version update to 7.1.1.36
  * uhdr.c: default initialize range field for hdr/sdr intent inputs to
    enc by @aayushsoni111 in #7482
  * Fixed typo in documentation of MagickAdaptiveBlurImage by @JonahEMorgan
    in #7500
  * Silence warning when freetype delegate is disabled. by @niclet in #7515</changelog>
  <changelog author="pgajdos@suse.com" date="1724760000">- version update to 7.1.1.37
  * Bump azure/trusted-signing-action from 0.3.20 to 0.4.0 #7518
  * Silence warning and fix HEIC_COMPUTE_NUMERIC_VERSION definition when heic delegate is disabled. #7516
  * protect macro arguments with parens 86cb2b1
  * eliminate compiler warnings d90d8b4
  * correct copyright year 115271e
  * Ignore multiple exif and xmp profiles for the same jxl frame and fix reading those profiles per frame. c301208
  * read/write in chunks fff3058
  * optimize fwrite() arguments ada6785
  * Renamed Output folder to Artifacts. 2a69677
  * cancel interactive window selection with right button press ea2a2db
  * cosmetic 712bde4
  * eliminate compiler warning 9a9a25c
  * eliminate compiler warning 0bd1687
  * Make images mandatory in the issue template. c01fd37
  * Added extra header detection for avif files. 9fc0590
  * allow SeekBlob() to set an offset beyond the end of the blob 27c3f99
  * be less forgiving for invalid image indexes 25db2e5
  * Fixed problem with empty macros (#7562) 9fda5f2
  * Added missing null checks for RequestOpenCLDevice. f85448e
  * Added missing null check for AcquireOpenCLCommandQueue. 295e9c8
  * persist app1 jpeg profile (ImageMagick/ImageMagick#4713) f0357c7
  * Fixed build error. b3dd431
  * Remove some of the dependencies for the macos-13 build. d0bce95
  * parentheses is the plural of parenthesis 1fac80a
  * distribute quantization error for -dither FloydSteinberg -depth 5b2825b
  * release 8a0da9f
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565</changelog>
</package>
<package pkgid="9ef75d0657b76894d47d71adb47d2bd94758cc74ed4e2e9bda5f5e6b2c4814381a880f7e024c97eea17a7022423d8684e724b5d83693e09aa2b7e5141ac6020c" name="ImageMagick-config-7-upstream-open" arch="x86_64">
  <version epoch="0" ver="7.1.1.37" rel="1.1"/>
  <changelog author="pgajdos@suse.com" date="1705320000">- use correct policy.xml</changelog>
  <changelog author="pgajdos@suse.com" date="1705406400">- only one configuration again, based on upstream 'secure' policy
- other upstream policies packaged in documentation</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1705838400">- version update to 7.1.1.27
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1707652800">- version update to 7.1.1.28
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Michael Vetter &lt;mvetter@suse.com&gt;" date="1708603200">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1709035200">- version update to 7.1.1.29
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709380800">- We can not replace a symlink with a directory on the directly
  Unregister the whole group manually in %pre with
  update-alternatives. (boo#1220818)
  Restore Requires(pre) on update-alternatives for the mean time.</changelog>
  <changelog author="pgajdos@suse.com" date="1709553600">- enable SVG again
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711022400">- allow delegates to be executed, was disabled by default policy
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711108800">- allow stdin/stdout
- modified patches
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1712577600">- version update to 7.1.1.30
  * install perl module into user-specified prefix by @bugfood in #7192
  * Fix bmp option to bypass file size check by @OnTheList-1 in #7194
  * add support for encoding/decoding ultrahdr images by @aayushsoni111 in #7198
  * Updates to uhdr.c by @aayushsoni111 in #7217
- added patches
  fix https://github.com/ImageMagick/ImageMagick/issues/7230
  + ImageMagick-wmflite-detection.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713182400">- relax list-length resource limit, fixes build of python-Wand
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713787200">- version update to 7.1.1.31
  * Convert big PDF documents is slow #7263
  * Update release.yml #7258
  * Update README.md #7245
  * uhdr.c: verify the availability of error message before accessing it #7229
- removed patches
  - ImageMagick-wmflite-detection.patch (upstreamed)
  `</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1714910400">- version update to 7.1.1.32
  * Fix GIF ICC profile reading #7282
  * uhdr.c: add support for rgb inputs #7273</changelog>
  <changelog author="pgajdos@suse.com" date="1715860800">- reverted update-alternatives usage removal [bsc#1122033][bsc#1220818]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1716638400">- version update to 7.1.1.33
  * Fix typo in #7294
  * Bump azure/trusted-signing-action from 0.3.16 to 0.3.18 in #7325
  * Bump caphyon/advinst-github-action from 1.1 to 2.0 in #7326
- added patch
  + ImageMagick-update-image-signature.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1719144000">- version update to 7.1.1.34
  * Bump azure/trusted-signing-action from 0.3.18 to 0.3.19 in #7348
  * Fix a typo in convert deprecation warning in #7383
  * Bump azure/trusted-signing-action from 0.3.19 to 0.3.20 in #7388
  * Updated FontConfig query to include font index, fixing (#7374) in #7409
- removed patch (upstreamed)
  - ImageMagick-update-image-signature.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1721908800">- version update to 7.1.1.35
  * Also set dpi-x and dpi-y when running rsvg-convert. eac001f
  * convert sub-command is deprecated d67039e
  * only operators should disable "identify ping" (ImageMagick/ImageMagick#7441) a262192
  * fix compiler error ecc21c7
  * -outdir deprecated 9980efa
  * Get the correct width and height when heic:preserve-orientation is set to true. ed3a0dd
  * Set heic image orientation using transform information. ba470aa
  * Exit earlier when the symlink could not be created when invoking the svg:decode delegate. 8a48edd
  * Fixed MSYS2 build error. 3b22378
  * Also set the DNG properties when pinging the image. fc1c61b
  * Silence warning when lqr delegate is disabled. ae0d69a
  * Added version check for the heif_properties.h include. 656b4d2
  * Make sure we always use the i64 version of the "file methods" on Windows. b3e8a78
  * Changed defines to use method instead of a define. 75b66c4
  * Changes due to upgrade of libheif. 841f033
  * smooth the rendering of an ellipse (ImageMagick/ImageMagick#7465) 1bfce2a</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- version update to 7.1.1.36
  * uhdr.c: default initialize range field for hdr/sdr intent inputs to
    enc by @aayushsoni111 in #7482
  * Fixed typo in documentation of MagickAdaptiveBlurImage by @JonahEMorgan
    in #7500
  * Silence warning when freetype delegate is disabled. by @niclet in #7515</changelog>
  <changelog author="pgajdos@suse.com" date="1724760000">- version update to 7.1.1.37
  * Bump azure/trusted-signing-action from 0.3.20 to 0.4.0 #7518
  * Silence warning and fix HEIC_COMPUTE_NUMERIC_VERSION definition when heic delegate is disabled. #7516
  * protect macro arguments with parens 86cb2b1
  * eliminate compiler warnings d90d8b4
  * correct copyright year 115271e
  * Ignore multiple exif and xmp profiles for the same jxl frame and fix reading those profiles per frame. c301208
  * read/write in chunks fff3058
  * optimize fwrite() arguments ada6785
  * Renamed Output folder to Artifacts. 2a69677
  * cancel interactive window selection with right button press ea2a2db
  * cosmetic 712bde4
  * eliminate compiler warning 9a9a25c
  * eliminate compiler warning 0bd1687
  * Make images mandatory in the issue template. c01fd37
  * Added extra header detection for avif files. 9fc0590
  * allow SeekBlob() to set an offset beyond the end of the blob 27c3f99
  * be less forgiving for invalid image indexes 25db2e5
  * Fixed problem with empty macros (#7562) 9fda5f2
  * Added missing null checks for RequestOpenCLDevice. f85448e
  * Added missing null check for AcquireOpenCLCommandQueue. 295e9c8
  * persist app1 jpeg profile (ImageMagick/ImageMagick#4713) f0357c7
  * Fixed build error. b3dd431
  * Remove some of the dependencies for the macos-13 build. d0bce95
  * parentheses is the plural of parenthesis 1fac80a
  * distribute quantization error for -dither FloydSteinberg -depth 5b2825b
  * release 8a0da9f
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565</changelog>
</package>
<package pkgid="21e5d9b9eccb439cdf2951b09159706226cf0aaebafd719475af2ebc2d8f419c87bcfcad37bda25b7db2e3d53b995700b0466ec85d2cc595ebec9c2babdf3c11" name="ImageMagick-config-7-upstream-open" arch="i586">
  <version epoch="0" ver="7.1.1.39" rel="1.1"/>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1705838400">- version update to 7.1.1.27
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1707652800">- version update to 7.1.1.28
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Michael Vetter &lt;mvetter@suse.com&gt;" date="1708603200">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1709035200">- version update to 7.1.1.29
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709380800">- We can not replace a symlink with a directory on the directly
  Unregister the whole group manually in %pre with
  update-alternatives. (boo#1220818)
  Restore Requires(pre) on update-alternatives for the mean time.</changelog>
  <changelog author="pgajdos@suse.com" date="1709553600">- enable SVG again
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711022400">- allow delegates to be executed, was disabled by default policy
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711108800">- allow stdin/stdout
- modified patches
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1712577600">- version update to 7.1.1.30
  * install perl module into user-specified prefix by @bugfood in #7192
  * Fix bmp option to bypass file size check by @OnTheList-1 in #7194
  * add support for encoding/decoding ultrahdr images by @aayushsoni111 in #7198
  * Updates to uhdr.c by @aayushsoni111 in #7217
- added patches
  fix https://github.com/ImageMagick/ImageMagick/issues/7230
  + ImageMagick-wmflite-detection.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713182400">- relax list-length resource limit, fixes build of python-Wand
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713787200">- version update to 7.1.1.31
  * Convert big PDF documents is slow #7263
  * Update release.yml #7258
  * Update README.md #7245
  * uhdr.c: verify the availability of error message before accessing it #7229
- removed patches
  - ImageMagick-wmflite-detection.patch (upstreamed)
  `</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1714910400">- version update to 7.1.1.32
  * Fix GIF ICC profile reading #7282
  * uhdr.c: add support for rgb inputs #7273</changelog>
  <changelog author="pgajdos@suse.com" date="1715860800">- reverted update-alternatives usage removal [bsc#1122033][bsc#1220818]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1716638400">- version update to 7.1.1.33
  * Fix typo in #7294
  * Bump azure/trusted-signing-action from 0.3.16 to 0.3.18 in #7325
  * Bump caphyon/advinst-github-action from 1.1 to 2.0 in #7326
- added patch
  + ImageMagick-update-image-signature.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1719144000">- version update to 7.1.1.34
  * Bump azure/trusted-signing-action from 0.3.18 to 0.3.19 in #7348
  * Fix a typo in convert deprecation warning in #7383
  * Bump azure/trusted-signing-action from 0.3.19 to 0.3.20 in #7388
  * Updated FontConfig query to include font index, fixing (#7374) in #7409
- removed patch (upstreamed)
  - ImageMagick-update-image-signature.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1721908800">- version update to 7.1.1.35
  * Also set dpi-x and dpi-y when running rsvg-convert. eac001f
  * convert sub-command is deprecated d67039e
  * only operators should disable "identify ping" (ImageMagick/ImageMagick#7441) a262192
  * fix compiler error ecc21c7
  * -outdir deprecated 9980efa
  * Get the correct width and height when heic:preserve-orientation is set to true. ed3a0dd
  * Set heic image orientation using transform information. ba470aa
  * Exit earlier when the symlink could not be created when invoking the svg:decode delegate. 8a48edd
  * Fixed MSYS2 build error. 3b22378
  * Also set the DNG properties when pinging the image. fc1c61b
  * Silence warning when lqr delegate is disabled. ae0d69a
  * Added version check for the heif_properties.h include. 656b4d2
  * Make sure we always use the i64 version of the "file methods" on Windows. b3e8a78
  * Changed defines to use method instead of a define. 75b66c4
  * Changes due to upgrade of libheif. 841f033
  * smooth the rendering of an ellipse (ImageMagick/ImageMagick#7465) 1bfce2a</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- version update to 7.1.1.36
  * uhdr.c: default initialize range field for hdr/sdr intent inputs to
    enc by @aayushsoni111 in #7482
  * Fixed typo in documentation of MagickAdaptiveBlurImage by @JonahEMorgan
    in #7500
  * Silence warning when freetype delegate is disabled. by @niclet in #7515</changelog>
  <changelog author="pgajdos@suse.com" date="1724760000">- version update to 7.1.1.37
  * Bump azure/trusted-signing-action from 0.3.20 to 0.4.0 #7518
  * Silence warning and fix HEIC_COMPUTE_NUMERIC_VERSION definition when heic delegate is disabled. #7516
  * protect macro arguments with parens 86cb2b1
  * eliminate compiler warnings d90d8b4
  * correct copyright year 115271e
  * Ignore multiple exif and xmp profiles for the same jxl frame and fix reading those profiles per frame. c301208
  * read/write in chunks fff3058
  * optimize fwrite() arguments ada6785
  * Renamed Output folder to Artifacts. 2a69677
  * cancel interactive window selection with right button press ea2a2db
  * cosmetic 712bde4
  * eliminate compiler warning 9a9a25c
  * eliminate compiler warning 0bd1687
  * Make images mandatory in the issue template. c01fd37
  * Added extra header detection for avif files. 9fc0590
  * allow SeekBlob() to set an offset beyond the end of the blob 27c3f99
  * be less forgiving for invalid image indexes 25db2e5
  * Fixed problem with empty macros (#7562) 9fda5f2
  * Added missing null checks for RequestOpenCLDevice. f85448e
  * Added missing null check for AcquireOpenCLCommandQueue. 295e9c8
  * persist app1 jpeg profile (ImageMagick/ImageMagick#4713) f0357c7
  * Fixed build error. b3dd431
  * Remove some of the dependencies for the macos-13 build. d0bce95
  * parentheses is the plural of parenthesis 1fac80a
  * distribute quantization error for -dither FloydSteinberg -depth 5b2825b
  * release 8a0da9f
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565</changelog>
  <changelog author="pgajdos@suse.com" date="1726228800">- version update to 7.1.1.38
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565
  * beta release 250b748
  * deprecate the -respect-paranthesis option 4e7d789
  * Build fixes. b80c509
  * save IPTC + ICC profiles are profiles, not properties 25d5335
  * update copyright year 4caf7d1
  * Patch to fix reading of the ICC profile. 18377f9
  * prepping framework to interact with X11 clipboard b20dda3
  * Build fix. 20a5af3
  * More build fixes. c36fdf0
  * Another attempt to silence the warnings. 600708c
  * Use SetImageProfilePrivate to avoid duplicate allocations. f246eab
  * support clipboard delegate 39a135a
  * restore clipboard.c 1070b17
  * improved rounding 27a0a9c
  * don't allow negative scenes 8fda05a
  * eliminate compiler warnings 878daf9
- modified patches
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1728216000">- version update to 7.1.1.39
  * Add missing Threshold command to command array of Region of Interest mode #7606
  * uhdr.c: update uhdr coder for gainmap metadata configuration #7635
  * uhdr: fix language choice in autoconf #7663</changelog>
</package>
<package pkgid="3568a3977b98f9e6e8bf60ca9e163d43e51e9a20ee53ac15371ded5080735af8aba50771142d9311f7db74f4086d0544e7c054dd05ad83e3d6ce3596e0e9d60e" name="ImageMagick-config-7-upstream-open" arch="x86_64">
  <version epoch="0" ver="7.1.1.39" rel="1.1"/>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1705838400">- version update to 7.1.1.27
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1707652800">- version update to 7.1.1.28
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Michael Vetter &lt;mvetter@suse.com&gt;" date="1708603200">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1709035200">- version update to 7.1.1.29
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709380800">- We can not replace a symlink with a directory on the directly
  Unregister the whole group manually in %pre with
  update-alternatives. (boo#1220818)
  Restore Requires(pre) on update-alternatives for the mean time.</changelog>
  <changelog author="pgajdos@suse.com" date="1709553600">- enable SVG again
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711022400">- allow delegates to be executed, was disabled by default policy
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711108800">- allow stdin/stdout
- modified patches
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1712577600">- version update to 7.1.1.30
  * install perl module into user-specified prefix by @bugfood in #7192
  * Fix bmp option to bypass file size check by @OnTheList-1 in #7194
  * add support for encoding/decoding ultrahdr images by @aayushsoni111 in #7198
  * Updates to uhdr.c by @aayushsoni111 in #7217
- added patches
  fix https://github.com/ImageMagick/ImageMagick/issues/7230
  + ImageMagick-wmflite-detection.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713182400">- relax list-length resource limit, fixes build of python-Wand
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713787200">- version update to 7.1.1.31
  * Convert big PDF documents is slow #7263
  * Update release.yml #7258
  * Update README.md #7245
  * uhdr.c: verify the availability of error message before accessing it #7229
- removed patches
  - ImageMagick-wmflite-detection.patch (upstreamed)
  `</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1714910400">- version update to 7.1.1.32
  * Fix GIF ICC profile reading #7282
  * uhdr.c: add support for rgb inputs #7273</changelog>
  <changelog author="pgajdos@suse.com" date="1715860800">- reverted update-alternatives usage removal [bsc#1122033][bsc#1220818]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1716638400">- version update to 7.1.1.33
  * Fix typo in #7294
  * Bump azure/trusted-signing-action from 0.3.16 to 0.3.18 in #7325
  * Bump caphyon/advinst-github-action from 1.1 to 2.0 in #7326
- added patch
  + ImageMagick-update-image-signature.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1719144000">- version update to 7.1.1.34
  * Bump azure/trusted-signing-action from 0.3.18 to 0.3.19 in #7348
  * Fix a typo in convert deprecation warning in #7383
  * Bump azure/trusted-signing-action from 0.3.19 to 0.3.20 in #7388
  * Updated FontConfig query to include font index, fixing (#7374) in #7409
- removed patch (upstreamed)
  - ImageMagick-update-image-signature.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1721908800">- version update to 7.1.1.35
  * Also set dpi-x and dpi-y when running rsvg-convert. eac001f
  * convert sub-command is deprecated d67039e
  * only operators should disable "identify ping" (ImageMagick/ImageMagick#7441) a262192
  * fix compiler error ecc21c7
  * -outdir deprecated 9980efa
  * Get the correct width and height when heic:preserve-orientation is set to true. ed3a0dd
  * Set heic image orientation using transform information. ba470aa
  * Exit earlier when the symlink could not be created when invoking the svg:decode delegate. 8a48edd
  * Fixed MSYS2 build error. 3b22378
  * Also set the DNG properties when pinging the image. fc1c61b
  * Silence warning when lqr delegate is disabled. ae0d69a
  * Added version check for the heif_properties.h include. 656b4d2
  * Make sure we always use the i64 version of the "file methods" on Windows. b3e8a78
  * Changed defines to use method instead of a define. 75b66c4
  * Changes due to upgrade of libheif. 841f033
  * smooth the rendering of an ellipse (ImageMagick/ImageMagick#7465) 1bfce2a</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- version update to 7.1.1.36
  * uhdr.c: default initialize range field for hdr/sdr intent inputs to
    enc by @aayushsoni111 in #7482
  * Fixed typo in documentation of MagickAdaptiveBlurImage by @JonahEMorgan
    in #7500
  * Silence warning when freetype delegate is disabled. by @niclet in #7515</changelog>
  <changelog author="pgajdos@suse.com" date="1724760000">- version update to 7.1.1.37
  * Bump azure/trusted-signing-action from 0.3.20 to 0.4.0 #7518
  * Silence warning and fix HEIC_COMPUTE_NUMERIC_VERSION definition when heic delegate is disabled. #7516
  * protect macro arguments with parens 86cb2b1
  * eliminate compiler warnings d90d8b4
  * correct copyright year 115271e
  * Ignore multiple exif and xmp profiles for the same jxl frame and fix reading those profiles per frame. c301208
  * read/write in chunks fff3058
  * optimize fwrite() arguments ada6785
  * Renamed Output folder to Artifacts. 2a69677
  * cancel interactive window selection with right button press ea2a2db
  * cosmetic 712bde4
  * eliminate compiler warning 9a9a25c
  * eliminate compiler warning 0bd1687
  * Make images mandatory in the issue template. c01fd37
  * Added extra header detection for avif files. 9fc0590
  * allow SeekBlob() to set an offset beyond the end of the blob 27c3f99
  * be less forgiving for invalid image indexes 25db2e5
  * Fixed problem with empty macros (#7562) 9fda5f2
  * Added missing null checks for RequestOpenCLDevice. f85448e
  * Added missing null check for AcquireOpenCLCommandQueue. 295e9c8
  * persist app1 jpeg profile (ImageMagick/ImageMagick#4713) f0357c7
  * Fixed build error. b3dd431
  * Remove some of the dependencies for the macos-13 build. d0bce95
  * parentheses is the plural of parenthesis 1fac80a
  * distribute quantization error for -dither FloydSteinberg -depth 5b2825b
  * release 8a0da9f
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565</changelog>
  <changelog author="pgajdos@suse.com" date="1726228800">- version update to 7.1.1.38
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565
  * beta release 250b748
  * deprecate the -respect-paranthesis option 4e7d789
  * Build fixes. b80c509
  * save IPTC + ICC profiles are profiles, not properties 25d5335
  * update copyright year 4caf7d1
  * Patch to fix reading of the ICC profile. 18377f9
  * prepping framework to interact with X11 clipboard b20dda3
  * Build fix. 20a5af3
  * More build fixes. c36fdf0
  * Another attempt to silence the warnings. 600708c
  * Use SetImageProfilePrivate to avoid duplicate allocations. f246eab
  * support clipboard delegate 39a135a
  * restore clipboard.c 1070b17
  * improved rounding 27a0a9c
  * don't allow negative scenes 8fda05a
  * eliminate compiler warnings 878daf9
- modified patches
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1728216000">- version update to 7.1.1.39
  * Add missing Threshold command to command array of Region of Interest mode #7606
  * uhdr.c: update uhdr coder for gainmap metadata configuration #7635
  * uhdr: fix language choice in autoconf #7663</changelog>
</package>
<package pkgid="08e403606195319390450e2dc0a7acfbc908d3b61ab285328f32e06b146859e91c2a60169a1ca06e582925e31f0735bb94e60c6ff59feb3e9144923ab4931f71" name="ImageMagick-config-7-upstream-open" arch="i586">
  <version epoch="0" ver="7.1.1.41" rel="1.0.2.1.sr20241103"/>
  <changelog author="Michael Vetter &lt;mvetter@suse.com&gt;" date="1708603200">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1709035200">- version update to 7.1.1.29
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709380800">- We can not replace a symlink with a directory on the directly
  Unregister the whole group manually in %pre with
  update-alternatives. (boo#1220818)
  Restore Requires(pre) on update-alternatives for the mean time.</changelog>
  <changelog author="pgajdos@suse.com" date="1709553600">- enable SVG again
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711022400">- allow delegates to be executed, was disabled by default policy
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711108800">- allow stdin/stdout
- modified patches
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1712577600">- version update to 7.1.1.30
  * install perl module into user-specified prefix by @bugfood in #7192
  * Fix bmp option to bypass file size check by @OnTheList-1 in #7194
  * add support for encoding/decoding ultrahdr images by @aayushsoni111 in #7198
  * Updates to uhdr.c by @aayushsoni111 in #7217
- added patches
  fix https://github.com/ImageMagick/ImageMagick/issues/7230
  + ImageMagick-wmflite-detection.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713182400">- relax list-length resource limit, fixes build of python-Wand
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713787200">- version update to 7.1.1.31
  * Convert big PDF documents is slow #7263
  * Update release.yml #7258
  * Update README.md #7245
  * uhdr.c: verify the availability of error message before accessing it #7229
- removed patches
  - ImageMagick-wmflite-detection.patch (upstreamed)
  `</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1714910400">- version update to 7.1.1.32
  * Fix GIF ICC profile reading #7282
  * uhdr.c: add support for rgb inputs #7273</changelog>
  <changelog author="pgajdos@suse.com" date="1715860800">- reverted update-alternatives usage removal [bsc#1122033][bsc#1220818]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1716638400">- version update to 7.1.1.33
  * Fix typo in #7294
  * Bump azure/trusted-signing-action from 0.3.16 to 0.3.18 in #7325
  * Bump caphyon/advinst-github-action from 1.1 to 2.0 in #7326
- added patch
  + ImageMagick-update-image-signature.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1719144000">- version update to 7.1.1.34
  * Bump azure/trusted-signing-action from 0.3.18 to 0.3.19 in #7348
  * Fix a typo in convert deprecation warning in #7383
  * Bump azure/trusted-signing-action from 0.3.19 to 0.3.20 in #7388
  * Updated FontConfig query to include font index, fixing (#7374) in #7409
- removed patch (upstreamed)
  - ImageMagick-update-image-signature.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1721908800">- version update to 7.1.1.35
  * Also set dpi-x and dpi-y when running rsvg-convert. eac001f
  * convert sub-command is deprecated d67039e
  * only operators should disable "identify ping" (ImageMagick/ImageMagick#7441) a262192
  * fix compiler error ecc21c7
  * -outdir deprecated 9980efa
  * Get the correct width and height when heic:preserve-orientation is set to true. ed3a0dd
  * Set heic image orientation using transform information. ba470aa
  * Exit earlier when the symlink could not be created when invoking the svg:decode delegate. 8a48edd
  * Fixed MSYS2 build error. 3b22378
  * Also set the DNG properties when pinging the image. fc1c61b
  * Silence warning when lqr delegate is disabled. ae0d69a
  * Added version check for the heif_properties.h include. 656b4d2
  * Make sure we always use the i64 version of the "file methods" on Windows. b3e8a78
  * Changed defines to use method instead of a define. 75b66c4
  * Changes due to upgrade of libheif. 841f033
  * smooth the rendering of an ellipse (ImageMagick/ImageMagick#7465) 1bfce2a</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- version update to 7.1.1.36
  * uhdr.c: default initialize range field for hdr/sdr intent inputs to
    enc by @aayushsoni111 in #7482
  * Fixed typo in documentation of MagickAdaptiveBlurImage by @JonahEMorgan
    in #7500
  * Silence warning when freetype delegate is disabled. by @niclet in #7515</changelog>
  <changelog author="pgajdos@suse.com" date="1724760000">- version update to 7.1.1.37
  * Bump azure/trusted-signing-action from 0.3.20 to 0.4.0 #7518
  * Silence warning and fix HEIC_COMPUTE_NUMERIC_VERSION definition when heic delegate is disabled. #7516
  * protect macro arguments with parens 86cb2b1
  * eliminate compiler warnings d90d8b4
  * correct copyright year 115271e
  * Ignore multiple exif and xmp profiles for the same jxl frame and fix reading those profiles per frame. c301208
  * read/write in chunks fff3058
  * optimize fwrite() arguments ada6785
  * Renamed Output folder to Artifacts. 2a69677
  * cancel interactive window selection with right button press ea2a2db
  * cosmetic 712bde4
  * eliminate compiler warning 9a9a25c
  * eliminate compiler warning 0bd1687
  * Make images mandatory in the issue template. c01fd37
  * Added extra header detection for avif files. 9fc0590
  * allow SeekBlob() to set an offset beyond the end of the blob 27c3f99
  * be less forgiving for invalid image indexes 25db2e5
  * Fixed problem with empty macros (#7562) 9fda5f2
  * Added missing null checks for RequestOpenCLDevice. f85448e
  * Added missing null check for AcquireOpenCLCommandQueue. 295e9c8
  * persist app1 jpeg profile (ImageMagick/ImageMagick#4713) f0357c7
  * Fixed build error. b3dd431
  * Remove some of the dependencies for the macos-13 build. d0bce95
  * parentheses is the plural of parenthesis 1fac80a
  * distribute quantization error for -dither FloydSteinberg -depth 5b2825b
  * release 8a0da9f
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565</changelog>
  <changelog author="pgajdos@suse.com" date="1726228800">- version update to 7.1.1.38
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565
  * beta release 250b748
  * deprecate the -respect-paranthesis option 4e7d789
  * Build fixes. b80c509
  * save IPTC + ICC profiles are profiles, not properties 25d5335
  * update copyright year 4caf7d1
  * Patch to fix reading of the ICC profile. 18377f9
  * prepping framework to interact with X11 clipboard b20dda3
  * Build fix. 20a5af3
  * More build fixes. c36fdf0
  * Another attempt to silence the warnings. 600708c
  * Use SetImageProfilePrivate to avoid duplicate allocations. f246eab
  * support clipboard delegate 39a135a
  * restore clipboard.c 1070b17
  * improved rounding 27a0a9c
  * don't allow negative scenes 8fda05a
  * eliminate compiler warnings 878daf9
- modified patches
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1728216000">- version update to 7.1.1.39
  * Add missing Threshold command to command array of Region of Interest mode #7606
  * uhdr.c: update uhdr coder for gainmap metadata configuration #7635
  * uhdr: fix language choice in autoconf #7663</changelog>
  <changelog author="Yann BOYER &lt;yann.boyer742@gmail.com&gt;" date="1731326400">- version update to 7.1.1.40
  * .cut (Dr Halo) reading when run count in header #7734
  * Bump azure/trusted-signing-action from 0.4.0 to 0.5.0 #7725
  * Implement Magic Kernel Sharp 2013 and 2021 #7701
  * don't process TIFF image if there is an exception
  * Corrected check for indexed channels in PSD files.
  * export exception when undo resource limit exceeded</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1731844800">- version update to 7.1.1.41
  * Fix compiler identification with Clang on Darwin in #7773
  * revert map changes breaking ABI in #7768</changelog>
</package>
<package pkgid="3267fecc5737593bba808f1f4b99f9ab373ba8d01600de3252b2cf193a98da9d68583825cecd0c45ada1aa2c6034d1da3f3007975f46be99fd847f635b8f2f99" name="ImageMagick-config-7-upstream-open" arch="x86_64">
  <version epoch="0" ver="7.1.1.41" rel="1.0.2.1.sr20241103"/>
  <changelog author="Michael Vetter &lt;mvetter@suse.com&gt;" date="1708603200">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1709035200">- version update to 7.1.1.29
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709380800">- We can not replace a symlink with a directory on the directly
  Unregister the whole group manually in %pre with
  update-alternatives. (boo#1220818)
  Restore Requires(pre) on update-alternatives for the mean time.</changelog>
  <changelog author="pgajdos@suse.com" date="1709553600">- enable SVG again
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711022400">- allow delegates to be executed, was disabled by default policy
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711108800">- allow stdin/stdout
- modified patches
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1712577600">- version update to 7.1.1.30
  * install perl module into user-specified prefix by @bugfood in #7192
  * Fix bmp option to bypass file size check by @OnTheList-1 in #7194
  * add support for encoding/decoding ultrahdr images by @aayushsoni111 in #7198
  * Updates to uhdr.c by @aayushsoni111 in #7217
- added patches
  fix https://github.com/ImageMagick/ImageMagick/issues/7230
  + ImageMagick-wmflite-detection.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713182400">- relax list-length resource limit, fixes build of python-Wand
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713787200">- version update to 7.1.1.31
  * Convert big PDF documents is slow #7263
  * Update release.yml #7258
  * Update README.md #7245
  * uhdr.c: verify the availability of error message before accessing it #7229
- removed patches
  - ImageMagick-wmflite-detection.patch (upstreamed)
  `</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1714910400">- version update to 7.1.1.32
  * Fix GIF ICC profile reading #7282
  * uhdr.c: add support for rgb inputs #7273</changelog>
  <changelog author="pgajdos@suse.com" date="1715860800">- reverted update-alternatives usage removal [bsc#1122033][bsc#1220818]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1716638400">- version update to 7.1.1.33
  * Fix typo in #7294
  * Bump azure/trusted-signing-action from 0.3.16 to 0.3.18 in #7325
  * Bump caphyon/advinst-github-action from 1.1 to 2.0 in #7326
- added patch
  + ImageMagick-update-image-signature.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1719144000">- version update to 7.1.1.34
  * Bump azure/trusted-signing-action from 0.3.18 to 0.3.19 in #7348
  * Fix a typo in convert deprecation warning in #7383
  * Bump azure/trusted-signing-action from 0.3.19 to 0.3.20 in #7388
  * Updated FontConfig query to include font index, fixing (#7374) in #7409
- removed patch (upstreamed)
  - ImageMagick-update-image-signature.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1721908800">- version update to 7.1.1.35
  * Also set dpi-x and dpi-y when running rsvg-convert. eac001f
  * convert sub-command is deprecated d67039e
  * only operators should disable "identify ping" (ImageMagick/ImageMagick#7441) a262192
  * fix compiler error ecc21c7
  * -outdir deprecated 9980efa
  * Get the correct width and height when heic:preserve-orientation is set to true. ed3a0dd
  * Set heic image orientation using transform information. ba470aa
  * Exit earlier when the symlink could not be created when invoking the svg:decode delegate. 8a48edd
  * Fixed MSYS2 build error. 3b22378
  * Also set the DNG properties when pinging the image. fc1c61b
  * Silence warning when lqr delegate is disabled. ae0d69a
  * Added version check for the heif_properties.h include. 656b4d2
  * Make sure we always use the i64 version of the "file methods" on Windows. b3e8a78
  * Changed defines to use method instead of a define. 75b66c4
  * Changes due to upgrade of libheif. 841f033
  * smooth the rendering of an ellipse (ImageMagick/ImageMagick#7465) 1bfce2a</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- version update to 7.1.1.36
  * uhdr.c: default initialize range field for hdr/sdr intent inputs to
    enc by @aayushsoni111 in #7482
  * Fixed typo in documentation of MagickAdaptiveBlurImage by @JonahEMorgan
    in #7500
  * Silence warning when freetype delegate is disabled. by @niclet in #7515</changelog>
  <changelog author="pgajdos@suse.com" date="1724760000">- version update to 7.1.1.37
  * Bump azure/trusted-signing-action from 0.3.20 to 0.4.0 #7518
  * Silence warning and fix HEIC_COMPUTE_NUMERIC_VERSION definition when heic delegate is disabled. #7516
  * protect macro arguments with parens 86cb2b1
  * eliminate compiler warnings d90d8b4
  * correct copyright year 115271e
  * Ignore multiple exif and xmp profiles for the same jxl frame and fix reading those profiles per frame. c301208
  * read/write in chunks fff3058
  * optimize fwrite() arguments ada6785
  * Renamed Output folder to Artifacts. 2a69677
  * cancel interactive window selection with right button press ea2a2db
  * cosmetic 712bde4
  * eliminate compiler warning 9a9a25c
  * eliminate compiler warning 0bd1687
  * Make images mandatory in the issue template. c01fd37
  * Added extra header detection for avif files. 9fc0590
  * allow SeekBlob() to set an offset beyond the end of the blob 27c3f99
  * be less forgiving for invalid image indexes 25db2e5
  * Fixed problem with empty macros (#7562) 9fda5f2
  * Added missing null checks for RequestOpenCLDevice. f85448e
  * Added missing null check for AcquireOpenCLCommandQueue. 295e9c8
  * persist app1 jpeg profile (ImageMagick/ImageMagick#4713) f0357c7
  * Fixed build error. b3dd431
  * Remove some of the dependencies for the macos-13 build. d0bce95
  * parentheses is the plural of parenthesis 1fac80a
  * distribute quantization error for -dither FloydSteinberg -depth 5b2825b
  * release 8a0da9f
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565</changelog>
  <changelog author="pgajdos@suse.com" date="1726228800">- version update to 7.1.1.38
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565
  * beta release 250b748
  * deprecate the -respect-paranthesis option 4e7d789
  * Build fixes. b80c509
  * save IPTC + ICC profiles are profiles, not properties 25d5335
  * update copyright year 4caf7d1
  * Patch to fix reading of the ICC profile. 18377f9
  * prepping framework to interact with X11 clipboard b20dda3
  * Build fix. 20a5af3
  * More build fixes. c36fdf0
  * Another attempt to silence the warnings. 600708c
  * Use SetImageProfilePrivate to avoid duplicate allocations. f246eab
  * support clipboard delegate 39a135a
  * restore clipboard.c 1070b17
  * improved rounding 27a0a9c
  * don't allow negative scenes 8fda05a
  * eliminate compiler warnings 878daf9
- modified patches
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1728216000">- version update to 7.1.1.39
  * Add missing Threshold command to command array of Region of Interest mode #7606
  * uhdr.c: update uhdr coder for gainmap metadata configuration #7635
  * uhdr: fix language choice in autoconf #7663</changelog>
  <changelog author="Yann BOYER &lt;yann.boyer742@gmail.com&gt;" date="1731326400">- version update to 7.1.1.40
  * .cut (Dr Halo) reading when run count in header #7734
  * Bump azure/trusted-signing-action from 0.4.0 to 0.5.0 #7725
  * Implement Magic Kernel Sharp 2013 and 2021 #7701
  * don't process TIFF image if there is an exception
  * Corrected check for indexed channels in PSD files.
  * export exception when undo resource limit exceeded</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1731844800">- version update to 7.1.1.41
  * Fix compiler identification with Clang on Darwin in #7773
  * revert map changes breaking ABI in #7768</changelog>
</package>
<package pkgid="2dba6b14c2138a36aaf1a2431ae5d3b59f659d500ba79cbe2f66888476db65a78baaa685ae8e27eceb111da20582238d996e43f34ba545411da2d43387d806f6" name="ImageMagick-config-7-upstream-secure" arch="i586">
  <version epoch="0" ver="7.1.1.36" rel="1.1"/>
  <changelog author="munix9@googlemail.com" date="1705233600">- Fix incomplete removal of update-alternatives for config
- Replace obsolete 'otherproviders(imagick-%{config_spec})' with
  'Conflicts: imagick-%{config_spec}'</changelog>
  <changelog author="pgajdos@suse.com" date="1705320000">- use correct policy.xml</changelog>
  <changelog author="pgajdos@suse.com" date="1705406400">- only one configuration again, based on upstream 'secure' policy
- other upstream policies packaged in documentation</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1705838400">- version update to 7.1.1.27
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1707652800">- version update to 7.1.1.28
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Michael Vetter &lt;mvetter@suse.com&gt;" date="1708603200">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1709035200">- version update to 7.1.1.29
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709380800">- We can not replace a symlink with a directory on the directly
  Unregister the whole group manually in %pre with
  update-alternatives. (boo#1220818)
  Restore Requires(pre) on update-alternatives for the mean time.</changelog>
  <changelog author="pgajdos@suse.com" date="1709553600">- enable SVG again
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711022400">- allow delegates to be executed, was disabled by default policy
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711108800">- allow stdin/stdout
- modified patches
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1712577600">- version update to 7.1.1.30
  * install perl module into user-specified prefix by @bugfood in #7192
  * Fix bmp option to bypass file size check by @OnTheList-1 in #7194
  * add support for encoding/decoding ultrahdr images by @aayushsoni111 in #7198
  * Updates to uhdr.c by @aayushsoni111 in #7217
- added patches
  fix https://github.com/ImageMagick/ImageMagick/issues/7230
  + ImageMagick-wmflite-detection.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713182400">- relax list-length resource limit, fixes build of python-Wand
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713787200">- version update to 7.1.1.31
  * Convert big PDF documents is slow #7263
  * Update release.yml #7258
  * Update README.md #7245
  * uhdr.c: verify the availability of error message before accessing it #7229
- removed patches
  - ImageMagick-wmflite-detection.patch (upstreamed)
  `</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1714910400">- version update to 7.1.1.32
  * Fix GIF ICC profile reading #7282
  * uhdr.c: add support for rgb inputs #7273</changelog>
  <changelog author="pgajdos@suse.com" date="1715860800">- reverted update-alternatives usage removal [bsc#1122033][bsc#1220818]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1716638400">- version update to 7.1.1.33
  * Fix typo in #7294
  * Bump azure/trusted-signing-action from 0.3.16 to 0.3.18 in #7325
  * Bump caphyon/advinst-github-action from 1.1 to 2.0 in #7326
- added patch
  + ImageMagick-update-image-signature.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1719144000">- version update to 7.1.1.34
  * Bump azure/trusted-signing-action from 0.3.18 to 0.3.19 in #7348
  * Fix a typo in convert deprecation warning in #7383
  * Bump azure/trusted-signing-action from 0.3.19 to 0.3.20 in #7388
  * Updated FontConfig query to include font index, fixing (#7374) in #7409
- removed patch (upstreamed)
  - ImageMagick-update-image-signature.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1721908800">- version update to 7.1.1.35
  * Also set dpi-x and dpi-y when running rsvg-convert. eac001f
  * convert sub-command is deprecated d67039e
  * only operators should disable "identify ping" (ImageMagick/ImageMagick#7441) a262192
  * fix compiler error ecc21c7
  * -outdir deprecated 9980efa
  * Get the correct width and height when heic:preserve-orientation is set to true. ed3a0dd
  * Set heic image orientation using transform information. ba470aa
  * Exit earlier when the symlink could not be created when invoking the svg:decode delegate. 8a48edd
  * Fixed MSYS2 build error. 3b22378
  * Also set the DNG properties when pinging the image. fc1c61b
  * Silence warning when lqr delegate is disabled. ae0d69a
  * Added version check for the heif_properties.h include. 656b4d2
  * Make sure we always use the i64 version of the "file methods" on Windows. b3e8a78
  * Changed defines to use method instead of a define. 75b66c4
  * Changes due to upgrade of libheif. 841f033
  * smooth the rendering of an ellipse (ImageMagick/ImageMagick#7465) 1bfce2a</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- version update to 7.1.1.36
  * uhdr.c: default initialize range field for hdr/sdr intent inputs to
    enc by @aayushsoni111 in #7482
  * Fixed typo in documentation of MagickAdaptiveBlurImage by @JonahEMorgan
    in #7500
  * Silence warning when freetype delegate is disabled. by @niclet in #7515</changelog>
</package>
<package pkgid="27d83a190bbb57bf0f32d27921cbfab4db190f0fa0defc270519d56c505c500db21348546bb0a52d25f987e425eb76863420f822ae628df79d3795d8783c26d2" name="ImageMagick-config-7-upstream-secure" arch="x86_64">
  <version epoch="0" ver="7.1.1.36" rel="1.1"/>
  <changelog author="munix9@googlemail.com" date="1705233600">- Fix incomplete removal of update-alternatives for config
- Replace obsolete 'otherproviders(imagick-%{config_spec})' with
  'Conflicts: imagick-%{config_spec}'</changelog>
  <changelog author="pgajdos@suse.com" date="1705320000">- use correct policy.xml</changelog>
  <changelog author="pgajdos@suse.com" date="1705406400">- only one configuration again, based on upstream 'secure' policy
- other upstream policies packaged in documentation</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1705838400">- version update to 7.1.1.27
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1707652800">- version update to 7.1.1.28
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Michael Vetter &lt;mvetter@suse.com&gt;" date="1708603200">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1709035200">- version update to 7.1.1.29
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709380800">- We can not replace a symlink with a directory on the directly
  Unregister the whole group manually in %pre with
  update-alternatives. (boo#1220818)
  Restore Requires(pre) on update-alternatives for the mean time.</changelog>
  <changelog author="pgajdos@suse.com" date="1709553600">- enable SVG again
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711022400">- allow delegates to be executed, was disabled by default policy
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711108800">- allow stdin/stdout
- modified patches
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1712577600">- version update to 7.1.1.30
  * install perl module into user-specified prefix by @bugfood in #7192
  * Fix bmp option to bypass file size check by @OnTheList-1 in #7194
  * add support for encoding/decoding ultrahdr images by @aayushsoni111 in #7198
  * Updates to uhdr.c by @aayushsoni111 in #7217
- added patches
  fix https://github.com/ImageMagick/ImageMagick/issues/7230
  + ImageMagick-wmflite-detection.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713182400">- relax list-length resource limit, fixes build of python-Wand
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713787200">- version update to 7.1.1.31
  * Convert big PDF documents is slow #7263
  * Update release.yml #7258
  * Update README.md #7245
  * uhdr.c: verify the availability of error message before accessing it #7229
- removed patches
  - ImageMagick-wmflite-detection.patch (upstreamed)
  `</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1714910400">- version update to 7.1.1.32
  * Fix GIF ICC profile reading #7282
  * uhdr.c: add support for rgb inputs #7273</changelog>
  <changelog author="pgajdos@suse.com" date="1715860800">- reverted update-alternatives usage removal [bsc#1122033][bsc#1220818]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1716638400">- version update to 7.1.1.33
  * Fix typo in #7294
  * Bump azure/trusted-signing-action from 0.3.16 to 0.3.18 in #7325
  * Bump caphyon/advinst-github-action from 1.1 to 2.0 in #7326
- added patch
  + ImageMagick-update-image-signature.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1719144000">- version update to 7.1.1.34
  * Bump azure/trusted-signing-action from 0.3.18 to 0.3.19 in #7348
  * Fix a typo in convert deprecation warning in #7383
  * Bump azure/trusted-signing-action from 0.3.19 to 0.3.20 in #7388
  * Updated FontConfig query to include font index, fixing (#7374) in #7409
- removed patch (upstreamed)
  - ImageMagick-update-image-signature.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1721908800">- version update to 7.1.1.35
  * Also set dpi-x and dpi-y when running rsvg-convert. eac001f
  * convert sub-command is deprecated d67039e
  * only operators should disable "identify ping" (ImageMagick/ImageMagick#7441) a262192
  * fix compiler error ecc21c7
  * -outdir deprecated 9980efa
  * Get the correct width and height when heic:preserve-orientation is set to true. ed3a0dd
  * Set heic image orientation using transform information. ba470aa
  * Exit earlier when the symlink could not be created when invoking the svg:decode delegate. 8a48edd
  * Fixed MSYS2 build error. 3b22378
  * Also set the DNG properties when pinging the image. fc1c61b
  * Silence warning when lqr delegate is disabled. ae0d69a
  * Added version check for the heif_properties.h include. 656b4d2
  * Make sure we always use the i64 version of the "file methods" on Windows. b3e8a78
  * Changed defines to use method instead of a define. 75b66c4
  * Changes due to upgrade of libheif. 841f033
  * smooth the rendering of an ellipse (ImageMagick/ImageMagick#7465) 1bfce2a</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- version update to 7.1.1.36
  * uhdr.c: default initialize range field for hdr/sdr intent inputs to
    enc by @aayushsoni111 in #7482
  * Fixed typo in documentation of MagickAdaptiveBlurImage by @JonahEMorgan
    in #7500
  * Silence warning when freetype delegate is disabled. by @niclet in #7515</changelog>
</package>
<package pkgid="94e9a48c477c91761f3e8da66faa44531a1044e758a7a29d19d5c074a17737f17a672ccf87d8151cb1543b5c8121ce29c18520c1edd541dbf03ab8f7499e9b76" name="ImageMagick-config-7-upstream-secure" arch="i586">
  <version epoch="0" ver="7.1.1.37" rel="1.0.4.1.sr20240803"/>
  <changelog author="pgajdos@suse.com" date="1705320000">- use correct policy.xml</changelog>
  <changelog author="pgajdos@suse.com" date="1705406400">- only one configuration again, based on upstream 'secure' policy
- other upstream policies packaged in documentation</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1705838400">- version update to 7.1.1.27
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1707652800">- version update to 7.1.1.28
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Michael Vetter &lt;mvetter@suse.com&gt;" date="1708603200">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1709035200">- version update to 7.1.1.29
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709380800">- We can not replace a symlink with a directory on the directly
  Unregister the whole group manually in %pre with
  update-alternatives. (boo#1220818)
  Restore Requires(pre) on update-alternatives for the mean time.</changelog>
  <changelog author="pgajdos@suse.com" date="1709553600">- enable SVG again
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711022400">- allow delegates to be executed, was disabled by default policy
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711108800">- allow stdin/stdout
- modified patches
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1712577600">- version update to 7.1.1.30
  * install perl module into user-specified prefix by @bugfood in #7192
  * Fix bmp option to bypass file size check by @OnTheList-1 in #7194
  * add support for encoding/decoding ultrahdr images by @aayushsoni111 in #7198
  * Updates to uhdr.c by @aayushsoni111 in #7217
- added patches
  fix https://github.com/ImageMagick/ImageMagick/issues/7230
  + ImageMagick-wmflite-detection.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713182400">- relax list-length resource limit, fixes build of python-Wand
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713787200">- version update to 7.1.1.31
  * Convert big PDF documents is slow #7263
  * Update release.yml #7258
  * Update README.md #7245
  * uhdr.c: verify the availability of error message before accessing it #7229
- removed patches
  - ImageMagick-wmflite-detection.patch (upstreamed)
  `</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1714910400">- version update to 7.1.1.32
  * Fix GIF ICC profile reading #7282
  * uhdr.c: add support for rgb inputs #7273</changelog>
  <changelog author="pgajdos@suse.com" date="1715860800">- reverted update-alternatives usage removal [bsc#1122033][bsc#1220818]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1716638400">- version update to 7.1.1.33
  * Fix typo in #7294
  * Bump azure/trusted-signing-action from 0.3.16 to 0.3.18 in #7325
  * Bump caphyon/advinst-github-action from 1.1 to 2.0 in #7326
- added patch
  + ImageMagick-update-image-signature.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1719144000">- version update to 7.1.1.34
  * Bump azure/trusted-signing-action from 0.3.18 to 0.3.19 in #7348
  * Fix a typo in convert deprecation warning in #7383
  * Bump azure/trusted-signing-action from 0.3.19 to 0.3.20 in #7388
  * Updated FontConfig query to include font index, fixing (#7374) in #7409
- removed patch (upstreamed)
  - ImageMagick-update-image-signature.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1721908800">- version update to 7.1.1.35
  * Also set dpi-x and dpi-y when running rsvg-convert. eac001f
  * convert sub-command is deprecated d67039e
  * only operators should disable "identify ping" (ImageMagick/ImageMagick#7441) a262192
  * fix compiler error ecc21c7
  * -outdir deprecated 9980efa
  * Get the correct width and height when heic:preserve-orientation is set to true. ed3a0dd
  * Set heic image orientation using transform information. ba470aa
  * Exit earlier when the symlink could not be created when invoking the svg:decode delegate. 8a48edd
  * Fixed MSYS2 build error. 3b22378
  * Also set the DNG properties when pinging the image. fc1c61b
  * Silence warning when lqr delegate is disabled. ae0d69a
  * Added version check for the heif_properties.h include. 656b4d2
  * Make sure we always use the i64 version of the "file methods" on Windows. b3e8a78
  * Changed defines to use method instead of a define. 75b66c4
  * Changes due to upgrade of libheif. 841f033
  * smooth the rendering of an ellipse (ImageMagick/ImageMagick#7465) 1bfce2a</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- version update to 7.1.1.36
  * uhdr.c: default initialize range field for hdr/sdr intent inputs to
    enc by @aayushsoni111 in #7482
  * Fixed typo in documentation of MagickAdaptiveBlurImage by @JonahEMorgan
    in #7500
  * Silence warning when freetype delegate is disabled. by @niclet in #7515</changelog>
  <changelog author="pgajdos@suse.com" date="1724760000">- version update to 7.1.1.37
  * Bump azure/trusted-signing-action from 0.3.20 to 0.4.0 #7518
  * Silence warning and fix HEIC_COMPUTE_NUMERIC_VERSION definition when heic delegate is disabled. #7516
  * protect macro arguments with parens 86cb2b1
  * eliminate compiler warnings d90d8b4
  * correct copyright year 115271e
  * Ignore multiple exif and xmp profiles for the same jxl frame and fix reading those profiles per frame. c301208
  * read/write in chunks fff3058
  * optimize fwrite() arguments ada6785
  * Renamed Output folder to Artifacts. 2a69677
  * cancel interactive window selection with right button press ea2a2db
  * cosmetic 712bde4
  * eliminate compiler warning 9a9a25c
  * eliminate compiler warning 0bd1687
  * Make images mandatory in the issue template. c01fd37
  * Added extra header detection for avif files. 9fc0590
  * allow SeekBlob() to set an offset beyond the end of the blob 27c3f99
  * be less forgiving for invalid image indexes 25db2e5
  * Fixed problem with empty macros (#7562) 9fda5f2
  * Added missing null checks for RequestOpenCLDevice. f85448e
  * Added missing null check for AcquireOpenCLCommandQueue. 295e9c8
  * persist app1 jpeg profile (ImageMagick/ImageMagick#4713) f0357c7
  * Fixed build error. b3dd431
  * Remove some of the dependencies for the macos-13 build. d0bce95
  * parentheses is the plural of parenthesis 1fac80a
  * distribute quantization error for -dither FloydSteinberg -depth 5b2825b
  * release 8a0da9f
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565</changelog>
</package>
<package pkgid="3dfa5efe5d81fc570d8cf2085ce7271fee4a6daaa3a4c8df12e2d6a937fbb0ca91225108e18bdfdda5629676b7143111e904c628f0c636748712d01483e8d92a" name="ImageMagick-config-7-upstream-secure" arch="x86_64">
  <version epoch="0" ver="7.1.1.37" rel="1.0.4.1.sr20240803"/>
  <changelog author="pgajdos@suse.com" date="1705320000">- use correct policy.xml</changelog>
  <changelog author="pgajdos@suse.com" date="1705406400">- only one configuration again, based on upstream 'secure' policy
- other upstream policies packaged in documentation</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1705838400">- version update to 7.1.1.27
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1707652800">- version update to 7.1.1.28
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Michael Vetter &lt;mvetter@suse.com&gt;" date="1708603200">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1709035200">- version update to 7.1.1.29
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709380800">- We can not replace a symlink with a directory on the directly
  Unregister the whole group manually in %pre with
  update-alternatives. (boo#1220818)
  Restore Requires(pre) on update-alternatives for the mean time.</changelog>
  <changelog author="pgajdos@suse.com" date="1709553600">- enable SVG again
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711022400">- allow delegates to be executed, was disabled by default policy
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711108800">- allow stdin/stdout
- modified patches
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1712577600">- version update to 7.1.1.30
  * install perl module into user-specified prefix by @bugfood in #7192
  * Fix bmp option to bypass file size check by @OnTheList-1 in #7194
  * add support for encoding/decoding ultrahdr images by @aayushsoni111 in #7198
  * Updates to uhdr.c by @aayushsoni111 in #7217
- added patches
  fix https://github.com/ImageMagick/ImageMagick/issues/7230
  + ImageMagick-wmflite-detection.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713182400">- relax list-length resource limit, fixes build of python-Wand
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713787200">- version update to 7.1.1.31
  * Convert big PDF documents is slow #7263
  * Update release.yml #7258
  * Update README.md #7245
  * uhdr.c: verify the availability of error message before accessing it #7229
- removed patches
  - ImageMagick-wmflite-detection.patch (upstreamed)
  `</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1714910400">- version update to 7.1.1.32
  * Fix GIF ICC profile reading #7282
  * uhdr.c: add support for rgb inputs #7273</changelog>
  <changelog author="pgajdos@suse.com" date="1715860800">- reverted update-alternatives usage removal [bsc#1122033][bsc#1220818]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1716638400">- version update to 7.1.1.33
  * Fix typo in #7294
  * Bump azure/trusted-signing-action from 0.3.16 to 0.3.18 in #7325
  * Bump caphyon/advinst-github-action from 1.1 to 2.0 in #7326
- added patch
  + ImageMagick-update-image-signature.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1719144000">- version update to 7.1.1.34
  * Bump azure/trusted-signing-action from 0.3.18 to 0.3.19 in #7348
  * Fix a typo in convert deprecation warning in #7383
  * Bump azure/trusted-signing-action from 0.3.19 to 0.3.20 in #7388
  * Updated FontConfig query to include font index, fixing (#7374) in #7409
- removed patch (upstreamed)
  - ImageMagick-update-image-signature.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1721908800">- version update to 7.1.1.35
  * Also set dpi-x and dpi-y when running rsvg-convert. eac001f
  * convert sub-command is deprecated d67039e
  * only operators should disable "identify ping" (ImageMagick/ImageMagick#7441) a262192
  * fix compiler error ecc21c7
  * -outdir deprecated 9980efa
  * Get the correct width and height when heic:preserve-orientation is set to true. ed3a0dd
  * Set heic image orientation using transform information. ba470aa
  * Exit earlier when the symlink could not be created when invoking the svg:decode delegate. 8a48edd
  * Fixed MSYS2 build error. 3b22378
  * Also set the DNG properties when pinging the image. fc1c61b
  * Silence warning when lqr delegate is disabled. ae0d69a
  * Added version check for the heif_properties.h include. 656b4d2
  * Make sure we always use the i64 version of the "file methods" on Windows. b3e8a78
  * Changed defines to use method instead of a define. 75b66c4
  * Changes due to upgrade of libheif. 841f033
  * smooth the rendering of an ellipse (ImageMagick/ImageMagick#7465) 1bfce2a</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- version update to 7.1.1.36
  * uhdr.c: default initialize range field for hdr/sdr intent inputs to
    enc by @aayushsoni111 in #7482
  * Fixed typo in documentation of MagickAdaptiveBlurImage by @JonahEMorgan
    in #7500
  * Silence warning when freetype delegate is disabled. by @niclet in #7515</changelog>
  <changelog author="pgajdos@suse.com" date="1724760000">- version update to 7.1.1.37
  * Bump azure/trusted-signing-action from 0.3.20 to 0.4.0 #7518
  * Silence warning and fix HEIC_COMPUTE_NUMERIC_VERSION definition when heic delegate is disabled. #7516
  * protect macro arguments with parens 86cb2b1
  * eliminate compiler warnings d90d8b4
  * correct copyright year 115271e
  * Ignore multiple exif and xmp profiles for the same jxl frame and fix reading those profiles per frame. c301208
  * read/write in chunks fff3058
  * optimize fwrite() arguments ada6785
  * Renamed Output folder to Artifacts. 2a69677
  * cancel interactive window selection with right button press ea2a2db
  * cosmetic 712bde4
  * eliminate compiler warning 9a9a25c
  * eliminate compiler warning 0bd1687
  * Make images mandatory in the issue template. c01fd37
  * Added extra header detection for avif files. 9fc0590
  * allow SeekBlob() to set an offset beyond the end of the blob 27c3f99
  * be less forgiving for invalid image indexes 25db2e5
  * Fixed problem with empty macros (#7562) 9fda5f2
  * Added missing null checks for RequestOpenCLDevice. f85448e
  * Added missing null check for AcquireOpenCLCommandQueue. 295e9c8
  * persist app1 jpeg profile (ImageMagick/ImageMagick#4713) f0357c7
  * Fixed build error. b3dd431
  * Remove some of the dependencies for the macos-13 build. d0bce95
  * parentheses is the plural of parenthesis 1fac80a
  * distribute quantization error for -dither FloydSteinberg -depth 5b2825b
  * release 8a0da9f
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565</changelog>
</package>
<package pkgid="7d76dc83eccf60d17ae567bb59e9c49df0120deb7b99d704e1aebebd4cc496a425cc4355bd07da942d4b94335132930ce900e9eb91d91be6a70d7116c9c18f6b" name="ImageMagick-config-7-upstream-secure" arch="i586">
  <version epoch="0" ver="7.1.1.37" rel="1.1"/>
  <changelog author="pgajdos@suse.com" date="1705320000">- use correct policy.xml</changelog>
  <changelog author="pgajdos@suse.com" date="1705406400">- only one configuration again, based on upstream 'secure' policy
- other upstream policies packaged in documentation</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1705838400">- version update to 7.1.1.27
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1707652800">- version update to 7.1.1.28
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Michael Vetter &lt;mvetter@suse.com&gt;" date="1708603200">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1709035200">- version update to 7.1.1.29
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709380800">- We can not replace a symlink with a directory on the directly
  Unregister the whole group manually in %pre with
  update-alternatives. (boo#1220818)
  Restore Requires(pre) on update-alternatives for the mean time.</changelog>
  <changelog author="pgajdos@suse.com" date="1709553600">- enable SVG again
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711022400">- allow delegates to be executed, was disabled by default policy
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711108800">- allow stdin/stdout
- modified patches
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1712577600">- version update to 7.1.1.30
  * install perl module into user-specified prefix by @bugfood in #7192
  * Fix bmp option to bypass file size check by @OnTheList-1 in #7194
  * add support for encoding/decoding ultrahdr images by @aayushsoni111 in #7198
  * Updates to uhdr.c by @aayushsoni111 in #7217
- added patches
  fix https://github.com/ImageMagick/ImageMagick/issues/7230
  + ImageMagick-wmflite-detection.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713182400">- relax list-length resource limit, fixes build of python-Wand
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713787200">- version update to 7.1.1.31
  * Convert big PDF documents is slow #7263
  * Update release.yml #7258
  * Update README.md #7245
  * uhdr.c: verify the availability of error message before accessing it #7229
- removed patches
  - ImageMagick-wmflite-detection.patch (upstreamed)
  `</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1714910400">- version update to 7.1.1.32
  * Fix GIF ICC profile reading #7282
  * uhdr.c: add support for rgb inputs #7273</changelog>
  <changelog author="pgajdos@suse.com" date="1715860800">- reverted update-alternatives usage removal [bsc#1122033][bsc#1220818]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1716638400">- version update to 7.1.1.33
  * Fix typo in #7294
  * Bump azure/trusted-signing-action from 0.3.16 to 0.3.18 in #7325
  * Bump caphyon/advinst-github-action from 1.1 to 2.0 in #7326
- added patch
  + ImageMagick-update-image-signature.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1719144000">- version update to 7.1.1.34
  * Bump azure/trusted-signing-action from 0.3.18 to 0.3.19 in #7348
  * Fix a typo in convert deprecation warning in #7383
  * Bump azure/trusted-signing-action from 0.3.19 to 0.3.20 in #7388
  * Updated FontConfig query to include font index, fixing (#7374) in #7409
- removed patch (upstreamed)
  - ImageMagick-update-image-signature.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1721908800">- version update to 7.1.1.35
  * Also set dpi-x and dpi-y when running rsvg-convert. eac001f
  * convert sub-command is deprecated d67039e
  * only operators should disable "identify ping" (ImageMagick/ImageMagick#7441) a262192
  * fix compiler error ecc21c7
  * -outdir deprecated 9980efa
  * Get the correct width and height when heic:preserve-orientation is set to true. ed3a0dd
  * Set heic image orientation using transform information. ba470aa
  * Exit earlier when the symlink could not be created when invoking the svg:decode delegate. 8a48edd
  * Fixed MSYS2 build error. 3b22378
  * Also set the DNG properties when pinging the image. fc1c61b
  * Silence warning when lqr delegate is disabled. ae0d69a
  * Added version check for the heif_properties.h include. 656b4d2
  * Make sure we always use the i64 version of the "file methods" on Windows. b3e8a78
  * Changed defines to use method instead of a define. 75b66c4
  * Changes due to upgrade of libheif. 841f033
  * smooth the rendering of an ellipse (ImageMagick/ImageMagick#7465) 1bfce2a</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- version update to 7.1.1.36
  * uhdr.c: default initialize range field for hdr/sdr intent inputs to
    enc by @aayushsoni111 in #7482
  * Fixed typo in documentation of MagickAdaptiveBlurImage by @JonahEMorgan
    in #7500
  * Silence warning when freetype delegate is disabled. by @niclet in #7515</changelog>
  <changelog author="pgajdos@suse.com" date="1724760000">- version update to 7.1.1.37
  * Bump azure/trusted-signing-action from 0.3.20 to 0.4.0 #7518
  * Silence warning and fix HEIC_COMPUTE_NUMERIC_VERSION definition when heic delegate is disabled. #7516
  * protect macro arguments with parens 86cb2b1
  * eliminate compiler warnings d90d8b4
  * correct copyright year 115271e
  * Ignore multiple exif and xmp profiles for the same jxl frame and fix reading those profiles per frame. c301208
  * read/write in chunks fff3058
  * optimize fwrite() arguments ada6785
  * Renamed Output folder to Artifacts. 2a69677
  * cancel interactive window selection with right button press ea2a2db
  * cosmetic 712bde4
  * eliminate compiler warning 9a9a25c
  * eliminate compiler warning 0bd1687
  * Make images mandatory in the issue template. c01fd37
  * Added extra header detection for avif files. 9fc0590
  * allow SeekBlob() to set an offset beyond the end of the blob 27c3f99
  * be less forgiving for invalid image indexes 25db2e5
  * Fixed problem with empty macros (#7562) 9fda5f2
  * Added missing null checks for RequestOpenCLDevice. f85448e
  * Added missing null check for AcquireOpenCLCommandQueue. 295e9c8
  * persist app1 jpeg profile (ImageMagick/ImageMagick#4713) f0357c7
  * Fixed build error. b3dd431
  * Remove some of the dependencies for the macos-13 build. d0bce95
  * parentheses is the plural of parenthesis 1fac80a
  * distribute quantization error for -dither FloydSteinberg -depth 5b2825b
  * release 8a0da9f
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565</changelog>
</package>
<package pkgid="fced6316300a5b6828cb16079ff3c2fd55fe52876a246eb56efbf139dcd885894ddcb83de689d3af4b435fb33c9e7f15761844c9838705f6a52758d008de8131" name="ImageMagick-config-7-upstream-secure" arch="x86_64">
  <version epoch="0" ver="7.1.1.37" rel="1.1"/>
  <changelog author="pgajdos@suse.com" date="1705320000">- use correct policy.xml</changelog>
  <changelog author="pgajdos@suse.com" date="1705406400">- only one configuration again, based on upstream 'secure' policy
- other upstream policies packaged in documentation</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1705838400">- version update to 7.1.1.27
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1707652800">- version update to 7.1.1.28
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Michael Vetter &lt;mvetter@suse.com&gt;" date="1708603200">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1709035200">- version update to 7.1.1.29
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709380800">- We can not replace a symlink with a directory on the directly
  Unregister the whole group manually in %pre with
  update-alternatives. (boo#1220818)
  Restore Requires(pre) on update-alternatives for the mean time.</changelog>
  <changelog author="pgajdos@suse.com" date="1709553600">- enable SVG again
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711022400">- allow delegates to be executed, was disabled by default policy
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711108800">- allow stdin/stdout
- modified patches
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1712577600">- version update to 7.1.1.30
  * install perl module into user-specified prefix by @bugfood in #7192
  * Fix bmp option to bypass file size check by @OnTheList-1 in #7194
  * add support for encoding/decoding ultrahdr images by @aayushsoni111 in #7198
  * Updates to uhdr.c by @aayushsoni111 in #7217
- added patches
  fix https://github.com/ImageMagick/ImageMagick/issues/7230
  + ImageMagick-wmflite-detection.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713182400">- relax list-length resource limit, fixes build of python-Wand
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713787200">- version update to 7.1.1.31
  * Convert big PDF documents is slow #7263
  * Update release.yml #7258
  * Update README.md #7245
  * uhdr.c: verify the availability of error message before accessing it #7229
- removed patches
  - ImageMagick-wmflite-detection.patch (upstreamed)
  `</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1714910400">- version update to 7.1.1.32
  * Fix GIF ICC profile reading #7282
  * uhdr.c: add support for rgb inputs #7273</changelog>
  <changelog author="pgajdos@suse.com" date="1715860800">- reverted update-alternatives usage removal [bsc#1122033][bsc#1220818]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1716638400">- version update to 7.1.1.33
  * Fix typo in #7294
  * Bump azure/trusted-signing-action from 0.3.16 to 0.3.18 in #7325
  * Bump caphyon/advinst-github-action from 1.1 to 2.0 in #7326
- added patch
  + ImageMagick-update-image-signature.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1719144000">- version update to 7.1.1.34
  * Bump azure/trusted-signing-action from 0.3.18 to 0.3.19 in #7348
  * Fix a typo in convert deprecation warning in #7383
  * Bump azure/trusted-signing-action from 0.3.19 to 0.3.20 in #7388
  * Updated FontConfig query to include font index, fixing (#7374) in #7409
- removed patch (upstreamed)
  - ImageMagick-update-image-signature.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1721908800">- version update to 7.1.1.35
  * Also set dpi-x and dpi-y when running rsvg-convert. eac001f
  * convert sub-command is deprecated d67039e
  * only operators should disable "identify ping" (ImageMagick/ImageMagick#7441) a262192
  * fix compiler error ecc21c7
  * -outdir deprecated 9980efa
  * Get the correct width and height when heic:preserve-orientation is set to true. ed3a0dd
  * Set heic image orientation using transform information. ba470aa
  * Exit earlier when the symlink could not be created when invoking the svg:decode delegate. 8a48edd
  * Fixed MSYS2 build error. 3b22378
  * Also set the DNG properties when pinging the image. fc1c61b
  * Silence warning when lqr delegate is disabled. ae0d69a
  * Added version check for the heif_properties.h include. 656b4d2
  * Make sure we always use the i64 version of the "file methods" on Windows. b3e8a78
  * Changed defines to use method instead of a define. 75b66c4
  * Changes due to upgrade of libheif. 841f033
  * smooth the rendering of an ellipse (ImageMagick/ImageMagick#7465) 1bfce2a</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- version update to 7.1.1.36
  * uhdr.c: default initialize range field for hdr/sdr intent inputs to
    enc by @aayushsoni111 in #7482
  * Fixed typo in documentation of MagickAdaptiveBlurImage by @JonahEMorgan
    in #7500
  * Silence warning when freetype delegate is disabled. by @niclet in #7515</changelog>
  <changelog author="pgajdos@suse.com" date="1724760000">- version update to 7.1.1.37
  * Bump azure/trusted-signing-action from 0.3.20 to 0.4.0 #7518
  * Silence warning and fix HEIC_COMPUTE_NUMERIC_VERSION definition when heic delegate is disabled. #7516
  * protect macro arguments with parens 86cb2b1
  * eliminate compiler warnings d90d8b4
  * correct copyright year 115271e
  * Ignore multiple exif and xmp profiles for the same jxl frame and fix reading those profiles per frame. c301208
  * read/write in chunks fff3058
  * optimize fwrite() arguments ada6785
  * Renamed Output folder to Artifacts. 2a69677
  * cancel interactive window selection with right button press ea2a2db
  * cosmetic 712bde4
  * eliminate compiler warning 9a9a25c
  * eliminate compiler warning 0bd1687
  * Make images mandatory in the issue template. c01fd37
  * Added extra header detection for avif files. 9fc0590
  * allow SeekBlob() to set an offset beyond the end of the blob 27c3f99
  * be less forgiving for invalid image indexes 25db2e5
  * Fixed problem with empty macros (#7562) 9fda5f2
  * Added missing null checks for RequestOpenCLDevice. f85448e
  * Added missing null check for AcquireOpenCLCommandQueue. 295e9c8
  * persist app1 jpeg profile (ImageMagick/ImageMagick#4713) f0357c7
  * Fixed build error. b3dd431
  * Remove some of the dependencies for the macos-13 build. d0bce95
  * parentheses is the plural of parenthesis 1fac80a
  * distribute quantization error for -dither FloydSteinberg -depth 5b2825b
  * release 8a0da9f
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565</changelog>
</package>
<package pkgid="64d3d726e907db4221ee5d2af8e4d63f34d6427603e1f7e4bd6a8eea3421e7fa9dd4934d79f99be40176e093e8b0399c3d9a69fceed31e20ce7eb58666fc67dc" name="ImageMagick-config-7-upstream-secure" arch="i586">
  <version epoch="0" ver="7.1.1.39" rel="1.1"/>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1705838400">- version update to 7.1.1.27
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1707652800">- version update to 7.1.1.28
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Michael Vetter &lt;mvetter@suse.com&gt;" date="1708603200">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1709035200">- version update to 7.1.1.29
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709380800">- We can not replace a symlink with a directory on the directly
  Unregister the whole group manually in %pre with
  update-alternatives. (boo#1220818)
  Restore Requires(pre) on update-alternatives for the mean time.</changelog>
  <changelog author="pgajdos@suse.com" date="1709553600">- enable SVG again
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711022400">- allow delegates to be executed, was disabled by default policy
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711108800">- allow stdin/stdout
- modified patches
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1712577600">- version update to 7.1.1.30
  * install perl module into user-specified prefix by @bugfood in #7192
  * Fix bmp option to bypass file size check by @OnTheList-1 in #7194
  * add support for encoding/decoding ultrahdr images by @aayushsoni111 in #7198
  * Updates to uhdr.c by @aayushsoni111 in #7217
- added patches
  fix https://github.com/ImageMagick/ImageMagick/issues/7230
  + ImageMagick-wmflite-detection.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713182400">- relax list-length resource limit, fixes build of python-Wand
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713787200">- version update to 7.1.1.31
  * Convert big PDF documents is slow #7263
  * Update release.yml #7258
  * Update README.md #7245
  * uhdr.c: verify the availability of error message before accessing it #7229
- removed patches
  - ImageMagick-wmflite-detection.patch (upstreamed)
  `</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1714910400">- version update to 7.1.1.32
  * Fix GIF ICC profile reading #7282
  * uhdr.c: add support for rgb inputs #7273</changelog>
  <changelog author="pgajdos@suse.com" date="1715860800">- reverted update-alternatives usage removal [bsc#1122033][bsc#1220818]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1716638400">- version update to 7.1.1.33
  * Fix typo in #7294
  * Bump azure/trusted-signing-action from 0.3.16 to 0.3.18 in #7325
  * Bump caphyon/advinst-github-action from 1.1 to 2.0 in #7326
- added patch
  + ImageMagick-update-image-signature.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1719144000">- version update to 7.1.1.34
  * Bump azure/trusted-signing-action from 0.3.18 to 0.3.19 in #7348
  * Fix a typo in convert deprecation warning in #7383
  * Bump azure/trusted-signing-action from 0.3.19 to 0.3.20 in #7388
  * Updated FontConfig query to include font index, fixing (#7374) in #7409
- removed patch (upstreamed)
  - ImageMagick-update-image-signature.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1721908800">- version update to 7.1.1.35
  * Also set dpi-x and dpi-y when running rsvg-convert. eac001f
  * convert sub-command is deprecated d67039e
  * only operators should disable "identify ping" (ImageMagick/ImageMagick#7441) a262192
  * fix compiler error ecc21c7
  * -outdir deprecated 9980efa
  * Get the correct width and height when heic:preserve-orientation is set to true. ed3a0dd
  * Set heic image orientation using transform information. ba470aa
  * Exit earlier when the symlink could not be created when invoking the svg:decode delegate. 8a48edd
  * Fixed MSYS2 build error. 3b22378
  * Also set the DNG properties when pinging the image. fc1c61b
  * Silence warning when lqr delegate is disabled. ae0d69a
  * Added version check for the heif_properties.h include. 656b4d2
  * Make sure we always use the i64 version of the "file methods" on Windows. b3e8a78
  * Changed defines to use method instead of a define. 75b66c4
  * Changes due to upgrade of libheif. 841f033
  * smooth the rendering of an ellipse (ImageMagick/ImageMagick#7465) 1bfce2a</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- version update to 7.1.1.36
  * uhdr.c: default initialize range field for hdr/sdr intent inputs to
    enc by @aayushsoni111 in #7482
  * Fixed typo in documentation of MagickAdaptiveBlurImage by @JonahEMorgan
    in #7500
  * Silence warning when freetype delegate is disabled. by @niclet in #7515</changelog>
  <changelog author="pgajdos@suse.com" date="1724760000">- version update to 7.1.1.37
  * Bump azure/trusted-signing-action from 0.3.20 to 0.4.0 #7518
  * Silence warning and fix HEIC_COMPUTE_NUMERIC_VERSION definition when heic delegate is disabled. #7516
  * protect macro arguments with parens 86cb2b1
  * eliminate compiler warnings d90d8b4
  * correct copyright year 115271e
  * Ignore multiple exif and xmp profiles for the same jxl frame and fix reading those profiles per frame. c301208
  * read/write in chunks fff3058
  * optimize fwrite() arguments ada6785
  * Renamed Output folder to Artifacts. 2a69677
  * cancel interactive window selection with right button press ea2a2db
  * cosmetic 712bde4
  * eliminate compiler warning 9a9a25c
  * eliminate compiler warning 0bd1687
  * Make images mandatory in the issue template. c01fd37
  * Added extra header detection for avif files. 9fc0590
  * allow SeekBlob() to set an offset beyond the end of the blob 27c3f99
  * be less forgiving for invalid image indexes 25db2e5
  * Fixed problem with empty macros (#7562) 9fda5f2
  * Added missing null checks for RequestOpenCLDevice. f85448e
  * Added missing null check for AcquireOpenCLCommandQueue. 295e9c8
  * persist app1 jpeg profile (ImageMagick/ImageMagick#4713) f0357c7
  * Fixed build error. b3dd431
  * Remove some of the dependencies for the macos-13 build. d0bce95
  * parentheses is the plural of parenthesis 1fac80a
  * distribute quantization error for -dither FloydSteinberg -depth 5b2825b
  * release 8a0da9f
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565</changelog>
  <changelog author="pgajdos@suse.com" date="1726228800">- version update to 7.1.1.38
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565
  * beta release 250b748
  * deprecate the -respect-paranthesis option 4e7d789
  * Build fixes. b80c509
  * save IPTC + ICC profiles are profiles, not properties 25d5335
  * update copyright year 4caf7d1
  * Patch to fix reading of the ICC profile. 18377f9
  * prepping framework to interact with X11 clipboard b20dda3
  * Build fix. 20a5af3
  * More build fixes. c36fdf0
  * Another attempt to silence the warnings. 600708c
  * Use SetImageProfilePrivate to avoid duplicate allocations. f246eab
  * support clipboard delegate 39a135a
  * restore clipboard.c 1070b17
  * improved rounding 27a0a9c
  * don't allow negative scenes 8fda05a
  * eliminate compiler warnings 878daf9
- modified patches
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1728216000">- version update to 7.1.1.39
  * Add missing Threshold command to command array of Region of Interest mode #7606
  * uhdr.c: update uhdr coder for gainmap metadata configuration #7635
  * uhdr: fix language choice in autoconf #7663</changelog>
</package>
<package pkgid="ac005b8bf346f941fcb80b36a12b32d816673eb0ba6ec697006f6afa58a6f15d75e5f8adba75b4477a0157f2771be2f60f750afef026272791f75fefc4859435" name="ImageMagick-config-7-upstream-secure" arch="x86_64">
  <version epoch="0" ver="7.1.1.39" rel="1.1"/>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1705838400">- version update to 7.1.1.27
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1707652800">- version update to 7.1.1.28
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Michael Vetter &lt;mvetter@suse.com&gt;" date="1708603200">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1709035200">- version update to 7.1.1.29
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709380800">- We can not replace a symlink with a directory on the directly
  Unregister the whole group manually in %pre with
  update-alternatives. (boo#1220818)
  Restore Requires(pre) on update-alternatives for the mean time.</changelog>
  <changelog author="pgajdos@suse.com" date="1709553600">- enable SVG again
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711022400">- allow delegates to be executed, was disabled by default policy
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711108800">- allow stdin/stdout
- modified patches
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1712577600">- version update to 7.1.1.30
  * install perl module into user-specified prefix by @bugfood in #7192
  * Fix bmp option to bypass file size check by @OnTheList-1 in #7194
  * add support for encoding/decoding ultrahdr images by @aayushsoni111 in #7198
  * Updates to uhdr.c by @aayushsoni111 in #7217
- added patches
  fix https://github.com/ImageMagick/ImageMagick/issues/7230
  + ImageMagick-wmflite-detection.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713182400">- relax list-length resource limit, fixes build of python-Wand
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713787200">- version update to 7.1.1.31
  * Convert big PDF documents is slow #7263
  * Update release.yml #7258
  * Update README.md #7245
  * uhdr.c: verify the availability of error message before accessing it #7229
- removed patches
  - ImageMagick-wmflite-detection.patch (upstreamed)
  `</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1714910400">- version update to 7.1.1.32
  * Fix GIF ICC profile reading #7282
  * uhdr.c: add support for rgb inputs #7273</changelog>
  <changelog author="pgajdos@suse.com" date="1715860800">- reverted update-alternatives usage removal [bsc#1122033][bsc#1220818]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1716638400">- version update to 7.1.1.33
  * Fix typo in #7294
  * Bump azure/trusted-signing-action from 0.3.16 to 0.3.18 in #7325
  * Bump caphyon/advinst-github-action from 1.1 to 2.0 in #7326
- added patch
  + ImageMagick-update-image-signature.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1719144000">- version update to 7.1.1.34
  * Bump azure/trusted-signing-action from 0.3.18 to 0.3.19 in #7348
  * Fix a typo in convert deprecation warning in #7383
  * Bump azure/trusted-signing-action from 0.3.19 to 0.3.20 in #7388
  * Updated FontConfig query to include font index, fixing (#7374) in #7409
- removed patch (upstreamed)
  - ImageMagick-update-image-signature.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1721908800">- version update to 7.1.1.35
  * Also set dpi-x and dpi-y when running rsvg-convert. eac001f
  * convert sub-command is deprecated d67039e
  * only operators should disable "identify ping" (ImageMagick/ImageMagick#7441) a262192
  * fix compiler error ecc21c7
  * -outdir deprecated 9980efa
  * Get the correct width and height when heic:preserve-orientation is set to true. ed3a0dd
  * Set heic image orientation using transform information. ba470aa
  * Exit earlier when the symlink could not be created when invoking the svg:decode delegate. 8a48edd
  * Fixed MSYS2 build error. 3b22378
  * Also set the DNG properties when pinging the image. fc1c61b
  * Silence warning when lqr delegate is disabled. ae0d69a
  * Added version check for the heif_properties.h include. 656b4d2
  * Make sure we always use the i64 version of the "file methods" on Windows. b3e8a78
  * Changed defines to use method instead of a define. 75b66c4
  * Changes due to upgrade of libheif. 841f033
  * smooth the rendering of an ellipse (ImageMagick/ImageMagick#7465) 1bfce2a</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- version update to 7.1.1.36
  * uhdr.c: default initialize range field for hdr/sdr intent inputs to
    enc by @aayushsoni111 in #7482
  * Fixed typo in documentation of MagickAdaptiveBlurImage by @JonahEMorgan
    in #7500
  * Silence warning when freetype delegate is disabled. by @niclet in #7515</changelog>
  <changelog author="pgajdos@suse.com" date="1724760000">- version update to 7.1.1.37
  * Bump azure/trusted-signing-action from 0.3.20 to 0.4.0 #7518
  * Silence warning and fix HEIC_COMPUTE_NUMERIC_VERSION definition when heic delegate is disabled. #7516
  * protect macro arguments with parens 86cb2b1
  * eliminate compiler warnings d90d8b4
  * correct copyright year 115271e
  * Ignore multiple exif and xmp profiles for the same jxl frame and fix reading those profiles per frame. c301208
  * read/write in chunks fff3058
  * optimize fwrite() arguments ada6785
  * Renamed Output folder to Artifacts. 2a69677
  * cancel interactive window selection with right button press ea2a2db
  * cosmetic 712bde4
  * eliminate compiler warning 9a9a25c
  * eliminate compiler warning 0bd1687
  * Make images mandatory in the issue template. c01fd37
  * Added extra header detection for avif files. 9fc0590
  * allow SeekBlob() to set an offset beyond the end of the blob 27c3f99
  * be less forgiving for invalid image indexes 25db2e5
  * Fixed problem with empty macros (#7562) 9fda5f2
  * Added missing null checks for RequestOpenCLDevice. f85448e
  * Added missing null check for AcquireOpenCLCommandQueue. 295e9c8
  * persist app1 jpeg profile (ImageMagick/ImageMagick#4713) f0357c7
  * Fixed build error. b3dd431
  * Remove some of the dependencies for the macos-13 build. d0bce95
  * parentheses is the plural of parenthesis 1fac80a
  * distribute quantization error for -dither FloydSteinberg -depth 5b2825b
  * release 8a0da9f
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565</changelog>
  <changelog author="pgajdos@suse.com" date="1726228800">- version update to 7.1.1.38
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565
  * beta release 250b748
  * deprecate the -respect-paranthesis option 4e7d789
  * Build fixes. b80c509
  * save IPTC + ICC profiles are profiles, not properties 25d5335
  * update copyright year 4caf7d1
  * Patch to fix reading of the ICC profile. 18377f9
  * prepping framework to interact with X11 clipboard b20dda3
  * Build fix. 20a5af3
  * More build fixes. c36fdf0
  * Another attempt to silence the warnings. 600708c
  * Use SetImageProfilePrivate to avoid duplicate allocations. f246eab
  * support clipboard delegate 39a135a
  * restore clipboard.c 1070b17
  * improved rounding 27a0a9c
  * don't allow negative scenes 8fda05a
  * eliminate compiler warnings 878daf9
- modified patches
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1728216000">- version update to 7.1.1.39
  * Add missing Threshold command to command array of Region of Interest mode #7606
  * uhdr.c: update uhdr coder for gainmap metadata configuration #7635
  * uhdr: fix language choice in autoconf #7663</changelog>
</package>
<package pkgid="c06d02f0d752e31e4d610a423886599bc685810542938ceb87d10409a63ae6611ff1c2d703acab1d2d6a4d98a96b2d4aa2c5a463331c130b38c509123647ae0b" name="ImageMagick-config-7-upstream-secure" arch="i586">
  <version epoch="0" ver="7.1.1.41" rel="1.0.2.1.sr20241103"/>
  <changelog author="Michael Vetter &lt;mvetter@suse.com&gt;" date="1708603200">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1709035200">- version update to 7.1.1.29
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709380800">- We can not replace a symlink with a directory on the directly
  Unregister the whole group manually in %pre with
  update-alternatives. (boo#1220818)
  Restore Requires(pre) on update-alternatives for the mean time.</changelog>
  <changelog author="pgajdos@suse.com" date="1709553600">- enable SVG again
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711022400">- allow delegates to be executed, was disabled by default policy
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711108800">- allow stdin/stdout
- modified patches
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1712577600">- version update to 7.1.1.30
  * install perl module into user-specified prefix by @bugfood in #7192
  * Fix bmp option to bypass file size check by @OnTheList-1 in #7194
  * add support for encoding/decoding ultrahdr images by @aayushsoni111 in #7198
  * Updates to uhdr.c by @aayushsoni111 in #7217
- added patches
  fix https://github.com/ImageMagick/ImageMagick/issues/7230
  + ImageMagick-wmflite-detection.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713182400">- relax list-length resource limit, fixes build of python-Wand
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713787200">- version update to 7.1.1.31
  * Convert big PDF documents is slow #7263
  * Update release.yml #7258
  * Update README.md #7245
  * uhdr.c: verify the availability of error message before accessing it #7229
- removed patches
  - ImageMagick-wmflite-detection.patch (upstreamed)
  `</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1714910400">- version update to 7.1.1.32
  * Fix GIF ICC profile reading #7282
  * uhdr.c: add support for rgb inputs #7273</changelog>
  <changelog author="pgajdos@suse.com" date="1715860800">- reverted update-alternatives usage removal [bsc#1122033][bsc#1220818]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1716638400">- version update to 7.1.1.33
  * Fix typo in #7294
  * Bump azure/trusted-signing-action from 0.3.16 to 0.3.18 in #7325
  * Bump caphyon/advinst-github-action from 1.1 to 2.0 in #7326
- added patch
  + ImageMagick-update-image-signature.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1719144000">- version update to 7.1.1.34
  * Bump azure/trusted-signing-action from 0.3.18 to 0.3.19 in #7348
  * Fix a typo in convert deprecation warning in #7383
  * Bump azure/trusted-signing-action from 0.3.19 to 0.3.20 in #7388
  * Updated FontConfig query to include font index, fixing (#7374) in #7409
- removed patch (upstreamed)
  - ImageMagick-update-image-signature.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1721908800">- version update to 7.1.1.35
  * Also set dpi-x and dpi-y when running rsvg-convert. eac001f
  * convert sub-command is deprecated d67039e
  * only operators should disable "identify ping" (ImageMagick/ImageMagick#7441) a262192
  * fix compiler error ecc21c7
  * -outdir deprecated 9980efa
  * Get the correct width and height when heic:preserve-orientation is set to true. ed3a0dd
  * Set heic image orientation using transform information. ba470aa
  * Exit earlier when the symlink could not be created when invoking the svg:decode delegate. 8a48edd
  * Fixed MSYS2 build error. 3b22378
  * Also set the DNG properties when pinging the image. fc1c61b
  * Silence warning when lqr delegate is disabled. ae0d69a
  * Added version check for the heif_properties.h include. 656b4d2
  * Make sure we always use the i64 version of the "file methods" on Windows. b3e8a78
  * Changed defines to use method instead of a define. 75b66c4
  * Changes due to upgrade of libheif. 841f033
  * smooth the rendering of an ellipse (ImageMagick/ImageMagick#7465) 1bfce2a</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- version update to 7.1.1.36
  * uhdr.c: default initialize range field for hdr/sdr intent inputs to
    enc by @aayushsoni111 in #7482
  * Fixed typo in documentation of MagickAdaptiveBlurImage by @JonahEMorgan
    in #7500
  * Silence warning when freetype delegate is disabled. by @niclet in #7515</changelog>
  <changelog author="pgajdos@suse.com" date="1724760000">- version update to 7.1.1.37
  * Bump azure/trusted-signing-action from 0.3.20 to 0.4.0 #7518
  * Silence warning and fix HEIC_COMPUTE_NUMERIC_VERSION definition when heic delegate is disabled. #7516
  * protect macro arguments with parens 86cb2b1
  * eliminate compiler warnings d90d8b4
  * correct copyright year 115271e
  * Ignore multiple exif and xmp profiles for the same jxl frame and fix reading those profiles per frame. c301208
  * read/write in chunks fff3058
  * optimize fwrite() arguments ada6785
  * Renamed Output folder to Artifacts. 2a69677
  * cancel interactive window selection with right button press ea2a2db
  * cosmetic 712bde4
  * eliminate compiler warning 9a9a25c
  * eliminate compiler warning 0bd1687
  * Make images mandatory in the issue template. c01fd37
  * Added extra header detection for avif files. 9fc0590
  * allow SeekBlob() to set an offset beyond the end of the blob 27c3f99
  * be less forgiving for invalid image indexes 25db2e5
  * Fixed problem with empty macros (#7562) 9fda5f2
  * Added missing null checks for RequestOpenCLDevice. f85448e
  * Added missing null check for AcquireOpenCLCommandQueue. 295e9c8
  * persist app1 jpeg profile (ImageMagick/ImageMagick#4713) f0357c7
  * Fixed build error. b3dd431
  * Remove some of the dependencies for the macos-13 build. d0bce95
  * parentheses is the plural of parenthesis 1fac80a
  * distribute quantization error for -dither FloydSteinberg -depth 5b2825b
  * release 8a0da9f
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565</changelog>
  <changelog author="pgajdos@suse.com" date="1726228800">- version update to 7.1.1.38
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565
  * beta release 250b748
  * deprecate the -respect-paranthesis option 4e7d789
  * Build fixes. b80c509
  * save IPTC + ICC profiles are profiles, not properties 25d5335
  * update copyright year 4caf7d1
  * Patch to fix reading of the ICC profile. 18377f9
  * prepping framework to interact with X11 clipboard b20dda3
  * Build fix. 20a5af3
  * More build fixes. c36fdf0
  * Another attempt to silence the warnings. 600708c
  * Use SetImageProfilePrivate to avoid duplicate allocations. f246eab
  * support clipboard delegate 39a135a
  * restore clipboard.c 1070b17
  * improved rounding 27a0a9c
  * don't allow negative scenes 8fda05a
  * eliminate compiler warnings 878daf9
- modified patches
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1728216000">- version update to 7.1.1.39
  * Add missing Threshold command to command array of Region of Interest mode #7606
  * uhdr.c: update uhdr coder for gainmap metadata configuration #7635
  * uhdr: fix language choice in autoconf #7663</changelog>
  <changelog author="Yann BOYER &lt;yann.boyer742@gmail.com&gt;" date="1731326400">- version update to 7.1.1.40
  * .cut (Dr Halo) reading when run count in header #7734
  * Bump azure/trusted-signing-action from 0.4.0 to 0.5.0 #7725
  * Implement Magic Kernel Sharp 2013 and 2021 #7701
  * don't process TIFF image if there is an exception
  * Corrected check for indexed channels in PSD files.
  * export exception when undo resource limit exceeded</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1731844800">- version update to 7.1.1.41
  * Fix compiler identification with Clang on Darwin in #7773
  * revert map changes breaking ABI in #7768</changelog>
</package>
<package pkgid="f342e8e747c6d1884e9d4251f866bfad0ba36c36b6607bdbda534823e884790ae9bfff52880a76431b83e2c7ae9ed1812d3c0235d21e741e6e4d540553eb23a9" name="ImageMagick-config-7-upstream-secure" arch="x86_64">
  <version epoch="0" ver="7.1.1.41" rel="1.0.2.1.sr20241103"/>
  <changelog author="Michael Vetter &lt;mvetter@suse.com&gt;" date="1708603200">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1709035200">- version update to 7.1.1.29
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709380800">- We can not replace a symlink with a directory on the directly
  Unregister the whole group manually in %pre with
  update-alternatives. (boo#1220818)
  Restore Requires(pre) on update-alternatives for the mean time.</changelog>
  <changelog author="pgajdos@suse.com" date="1709553600">- enable SVG again
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711022400">- allow delegates to be executed, was disabled by default policy
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711108800">- allow stdin/stdout
- modified patches
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1712577600">- version update to 7.1.1.30
  * install perl module into user-specified prefix by @bugfood in #7192
  * Fix bmp option to bypass file size check by @OnTheList-1 in #7194
  * add support for encoding/decoding ultrahdr images by @aayushsoni111 in #7198
  * Updates to uhdr.c by @aayushsoni111 in #7217
- added patches
  fix https://github.com/ImageMagick/ImageMagick/issues/7230
  + ImageMagick-wmflite-detection.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713182400">- relax list-length resource limit, fixes build of python-Wand
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713787200">- version update to 7.1.1.31
  * Convert big PDF documents is slow #7263
  * Update release.yml #7258
  * Update README.md #7245
  * uhdr.c: verify the availability of error message before accessing it #7229
- removed patches
  - ImageMagick-wmflite-detection.patch (upstreamed)
  `</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1714910400">- version update to 7.1.1.32
  * Fix GIF ICC profile reading #7282
  * uhdr.c: add support for rgb inputs #7273</changelog>
  <changelog author="pgajdos@suse.com" date="1715860800">- reverted update-alternatives usage removal [bsc#1122033][bsc#1220818]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1716638400">- version update to 7.1.1.33
  * Fix typo in #7294
  * Bump azure/trusted-signing-action from 0.3.16 to 0.3.18 in #7325
  * Bump caphyon/advinst-github-action from 1.1 to 2.0 in #7326
- added patch
  + ImageMagick-update-image-signature.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1719144000">- version update to 7.1.1.34
  * Bump azure/trusted-signing-action from 0.3.18 to 0.3.19 in #7348
  * Fix a typo in convert deprecation warning in #7383
  * Bump azure/trusted-signing-action from 0.3.19 to 0.3.20 in #7388
  * Updated FontConfig query to include font index, fixing (#7374) in #7409
- removed patch (upstreamed)
  - ImageMagick-update-image-signature.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1721908800">- version update to 7.1.1.35
  * Also set dpi-x and dpi-y when running rsvg-convert. eac001f
  * convert sub-command is deprecated d67039e
  * only operators should disable "identify ping" (ImageMagick/ImageMagick#7441) a262192
  * fix compiler error ecc21c7
  * -outdir deprecated 9980efa
  * Get the correct width and height when heic:preserve-orientation is set to true. ed3a0dd
  * Set heic image orientation using transform information. ba470aa
  * Exit earlier when the symlink could not be created when invoking the svg:decode delegate. 8a48edd
  * Fixed MSYS2 build error. 3b22378
  * Also set the DNG properties when pinging the image. fc1c61b
  * Silence warning when lqr delegate is disabled. ae0d69a
  * Added version check for the heif_properties.h include. 656b4d2
  * Make sure we always use the i64 version of the "file methods" on Windows. b3e8a78
  * Changed defines to use method instead of a define. 75b66c4
  * Changes due to upgrade of libheif. 841f033
  * smooth the rendering of an ellipse (ImageMagick/ImageMagick#7465) 1bfce2a</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- version update to 7.1.1.36
  * uhdr.c: default initialize range field for hdr/sdr intent inputs to
    enc by @aayushsoni111 in #7482
  * Fixed typo in documentation of MagickAdaptiveBlurImage by @JonahEMorgan
    in #7500
  * Silence warning when freetype delegate is disabled. by @niclet in #7515</changelog>
  <changelog author="pgajdos@suse.com" date="1724760000">- version update to 7.1.1.37
  * Bump azure/trusted-signing-action from 0.3.20 to 0.4.0 #7518
  * Silence warning and fix HEIC_COMPUTE_NUMERIC_VERSION definition when heic delegate is disabled. #7516
  * protect macro arguments with parens 86cb2b1
  * eliminate compiler warnings d90d8b4
  * correct copyright year 115271e
  * Ignore multiple exif and xmp profiles for the same jxl frame and fix reading those profiles per frame. c301208
  * read/write in chunks fff3058
  * optimize fwrite() arguments ada6785
  * Renamed Output folder to Artifacts. 2a69677
  * cancel interactive window selection with right button press ea2a2db
  * cosmetic 712bde4
  * eliminate compiler warning 9a9a25c
  * eliminate compiler warning 0bd1687
  * Make images mandatory in the issue template. c01fd37
  * Added extra header detection for avif files. 9fc0590
  * allow SeekBlob() to set an offset beyond the end of the blob 27c3f99
  * be less forgiving for invalid image indexes 25db2e5
  * Fixed problem with empty macros (#7562) 9fda5f2
  * Added missing null checks for RequestOpenCLDevice. f85448e
  * Added missing null check for AcquireOpenCLCommandQueue. 295e9c8
  * persist app1 jpeg profile (ImageMagick/ImageMagick#4713) f0357c7
  * Fixed build error. b3dd431
  * Remove some of the dependencies for the macos-13 build. d0bce95
  * parentheses is the plural of parenthesis 1fac80a
  * distribute quantization error for -dither FloydSteinberg -depth 5b2825b
  * release 8a0da9f
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565</changelog>
  <changelog author="pgajdos@suse.com" date="1726228800">- version update to 7.1.1.38
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565
  * beta release 250b748
  * deprecate the -respect-paranthesis option 4e7d789
  * Build fixes. b80c509
  * save IPTC + ICC profiles are profiles, not properties 25d5335
  * update copyright year 4caf7d1
  * Patch to fix reading of the ICC profile. 18377f9
  * prepping framework to interact with X11 clipboard b20dda3
  * Build fix. 20a5af3
  * More build fixes. c36fdf0
  * Another attempt to silence the warnings. 600708c
  * Use SetImageProfilePrivate to avoid duplicate allocations. f246eab
  * support clipboard delegate 39a135a
  * restore clipboard.c 1070b17
  * improved rounding 27a0a9c
  * don't allow negative scenes 8fda05a
  * eliminate compiler warnings 878daf9
- modified patches
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1728216000">- version update to 7.1.1.39
  * Add missing Threshold command to command array of Region of Interest mode #7606
  * uhdr.c: update uhdr coder for gainmap metadata configuration #7635
  * uhdr: fix language choice in autoconf #7663</changelog>
  <changelog author="Yann BOYER &lt;yann.boyer742@gmail.com&gt;" date="1731326400">- version update to 7.1.1.40
  * .cut (Dr Halo) reading when run count in header #7734
  * Bump azure/trusted-signing-action from 0.4.0 to 0.5.0 #7725
  * Implement Magic Kernel Sharp 2013 and 2021 #7701
  * don't process TIFF image if there is an exception
  * Corrected check for indexed channels in PSD files.
  * export exception when undo resource limit exceeded</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1731844800">- version update to 7.1.1.41
  * Fix compiler identification with Clang on Darwin in #7773
  * revert map changes breaking ABI in #7768</changelog>
</package>
<package pkgid="892c16152a59edf38bbd72cad9964fbc009e2bddfe7a11acd67162faac30271922fafc1f38bc09730212de03b778659beff77187096e360f6de0658f1e009d18" name="ImageMagick-config-7-upstream-websafe" arch="i586">
  <version epoch="0" ver="7.1.1.36" rel="1.1"/>
  <changelog author="munix9@googlemail.com" date="1705233600">- Fix incomplete removal of update-alternatives for config
- Replace obsolete 'otherproviders(imagick-%{config_spec})' with
  'Conflicts: imagick-%{config_spec}'</changelog>
  <changelog author="pgajdos@suse.com" date="1705320000">- use correct policy.xml</changelog>
  <changelog author="pgajdos@suse.com" date="1705406400">- only one configuration again, based on upstream 'secure' policy
- other upstream policies packaged in documentation</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1705838400">- version update to 7.1.1.27
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1707652800">- version update to 7.1.1.28
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Michael Vetter &lt;mvetter@suse.com&gt;" date="1708603200">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1709035200">- version update to 7.1.1.29
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709380800">- We can not replace a symlink with a directory on the directly
  Unregister the whole group manually in %pre with
  update-alternatives. (boo#1220818)
  Restore Requires(pre) on update-alternatives for the mean time.</changelog>
  <changelog author="pgajdos@suse.com" date="1709553600">- enable SVG again
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711022400">- allow delegates to be executed, was disabled by default policy
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711108800">- allow stdin/stdout
- modified patches
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1712577600">- version update to 7.1.1.30
  * install perl module into user-specified prefix by @bugfood in #7192
  * Fix bmp option to bypass file size check by @OnTheList-1 in #7194
  * add support for encoding/decoding ultrahdr images by @aayushsoni111 in #7198
  * Updates to uhdr.c by @aayushsoni111 in #7217
- added patches
  fix https://github.com/ImageMagick/ImageMagick/issues/7230
  + ImageMagick-wmflite-detection.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713182400">- relax list-length resource limit, fixes build of python-Wand
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713787200">- version update to 7.1.1.31
  * Convert big PDF documents is slow #7263
  * Update release.yml #7258
  * Update README.md #7245
  * uhdr.c: verify the availability of error message before accessing it #7229
- removed patches
  - ImageMagick-wmflite-detection.patch (upstreamed)
  `</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1714910400">- version update to 7.1.1.32
  * Fix GIF ICC profile reading #7282
  * uhdr.c: add support for rgb inputs #7273</changelog>
  <changelog author="pgajdos@suse.com" date="1715860800">- reverted update-alternatives usage removal [bsc#1122033][bsc#1220818]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1716638400">- version update to 7.1.1.33
  * Fix typo in #7294
  * Bump azure/trusted-signing-action from 0.3.16 to 0.3.18 in #7325
  * Bump caphyon/advinst-github-action from 1.1 to 2.0 in #7326
- added patch
  + ImageMagick-update-image-signature.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1719144000">- version update to 7.1.1.34
  * Bump azure/trusted-signing-action from 0.3.18 to 0.3.19 in #7348
  * Fix a typo in convert deprecation warning in #7383
  * Bump azure/trusted-signing-action from 0.3.19 to 0.3.20 in #7388
  * Updated FontConfig query to include font index, fixing (#7374) in #7409
- removed patch (upstreamed)
  - ImageMagick-update-image-signature.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1721908800">- version update to 7.1.1.35
  * Also set dpi-x and dpi-y when running rsvg-convert. eac001f
  * convert sub-command is deprecated d67039e
  * only operators should disable "identify ping" (ImageMagick/ImageMagick#7441) a262192
  * fix compiler error ecc21c7
  * -outdir deprecated 9980efa
  * Get the correct width and height when heic:preserve-orientation is set to true. ed3a0dd
  * Set heic image orientation using transform information. ba470aa
  * Exit earlier when the symlink could not be created when invoking the svg:decode delegate. 8a48edd
  * Fixed MSYS2 build error. 3b22378
  * Also set the DNG properties when pinging the image. fc1c61b
  * Silence warning when lqr delegate is disabled. ae0d69a
  * Added version check for the heif_properties.h include. 656b4d2
  * Make sure we always use the i64 version of the "file methods" on Windows. b3e8a78
  * Changed defines to use method instead of a define. 75b66c4
  * Changes due to upgrade of libheif. 841f033
  * smooth the rendering of an ellipse (ImageMagick/ImageMagick#7465) 1bfce2a</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- version update to 7.1.1.36
  * uhdr.c: default initialize range field for hdr/sdr intent inputs to
    enc by @aayushsoni111 in #7482
  * Fixed typo in documentation of MagickAdaptiveBlurImage by @JonahEMorgan
    in #7500
  * Silence warning when freetype delegate is disabled. by @niclet in #7515</changelog>
</package>
<package pkgid="a0ce6fe3fcd8c8bc5c7a34dc1dba767304da426fd93a7d0868eef7aec8d5ac4eddbf061bb38f9bdbcaa90fbb684e13dfedf57b8e873147dda9c37ec3e7b0cb07" name="ImageMagick-config-7-upstream-websafe" arch="x86_64">
  <version epoch="0" ver="7.1.1.36" rel="1.1"/>
  <changelog author="munix9@googlemail.com" date="1705233600">- Fix incomplete removal of update-alternatives for config
- Replace obsolete 'otherproviders(imagick-%{config_spec})' with
  'Conflicts: imagick-%{config_spec}'</changelog>
  <changelog author="pgajdos@suse.com" date="1705320000">- use correct policy.xml</changelog>
  <changelog author="pgajdos@suse.com" date="1705406400">- only one configuration again, based on upstream 'secure' policy
- other upstream policies packaged in documentation</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1705838400">- version update to 7.1.1.27
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1707652800">- version update to 7.1.1.28
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Michael Vetter &lt;mvetter@suse.com&gt;" date="1708603200">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1709035200">- version update to 7.1.1.29
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709380800">- We can not replace a symlink with a directory on the directly
  Unregister the whole group manually in %pre with
  update-alternatives. (boo#1220818)
  Restore Requires(pre) on update-alternatives for the mean time.</changelog>
  <changelog author="pgajdos@suse.com" date="1709553600">- enable SVG again
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711022400">- allow delegates to be executed, was disabled by default policy
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711108800">- allow stdin/stdout
- modified patches
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1712577600">- version update to 7.1.1.30
  * install perl module into user-specified prefix by @bugfood in #7192
  * Fix bmp option to bypass file size check by @OnTheList-1 in #7194
  * add support for encoding/decoding ultrahdr images by @aayushsoni111 in #7198
  * Updates to uhdr.c by @aayushsoni111 in #7217
- added patches
  fix https://github.com/ImageMagick/ImageMagick/issues/7230
  + ImageMagick-wmflite-detection.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713182400">- relax list-length resource limit, fixes build of python-Wand
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713787200">- version update to 7.1.1.31
  * Convert big PDF documents is slow #7263
  * Update release.yml #7258
  * Update README.md #7245
  * uhdr.c: verify the availability of error message before accessing it #7229
- removed patches
  - ImageMagick-wmflite-detection.patch (upstreamed)
  `</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1714910400">- version update to 7.1.1.32
  * Fix GIF ICC profile reading #7282
  * uhdr.c: add support for rgb inputs #7273</changelog>
  <changelog author="pgajdos@suse.com" date="1715860800">- reverted update-alternatives usage removal [bsc#1122033][bsc#1220818]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1716638400">- version update to 7.1.1.33
  * Fix typo in #7294
  * Bump azure/trusted-signing-action from 0.3.16 to 0.3.18 in #7325
  * Bump caphyon/advinst-github-action from 1.1 to 2.0 in #7326
- added patch
  + ImageMagick-update-image-signature.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1719144000">- version update to 7.1.1.34
  * Bump azure/trusted-signing-action from 0.3.18 to 0.3.19 in #7348
  * Fix a typo in convert deprecation warning in #7383
  * Bump azure/trusted-signing-action from 0.3.19 to 0.3.20 in #7388
  * Updated FontConfig query to include font index, fixing (#7374) in #7409
- removed patch (upstreamed)
  - ImageMagick-update-image-signature.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1721908800">- version update to 7.1.1.35
  * Also set dpi-x and dpi-y when running rsvg-convert. eac001f
  * convert sub-command is deprecated d67039e
  * only operators should disable "identify ping" (ImageMagick/ImageMagick#7441) a262192
  * fix compiler error ecc21c7
  * -outdir deprecated 9980efa
  * Get the correct width and height when heic:preserve-orientation is set to true. ed3a0dd
  * Set heic image orientation using transform information. ba470aa
  * Exit earlier when the symlink could not be created when invoking the svg:decode delegate. 8a48edd
  * Fixed MSYS2 build error. 3b22378
  * Also set the DNG properties when pinging the image. fc1c61b
  * Silence warning when lqr delegate is disabled. ae0d69a
  * Added version check for the heif_properties.h include. 656b4d2
  * Make sure we always use the i64 version of the "file methods" on Windows. b3e8a78
  * Changed defines to use method instead of a define. 75b66c4
  * Changes due to upgrade of libheif. 841f033
  * smooth the rendering of an ellipse (ImageMagick/ImageMagick#7465) 1bfce2a</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- version update to 7.1.1.36
  * uhdr.c: default initialize range field for hdr/sdr intent inputs to
    enc by @aayushsoni111 in #7482
  * Fixed typo in documentation of MagickAdaptiveBlurImage by @JonahEMorgan
    in #7500
  * Silence warning when freetype delegate is disabled. by @niclet in #7515</changelog>
</package>
<package pkgid="e7f603653f225fd613eead048118ff39959b6a1342b78c2aeebd6fd5a1fc1445cf20c98eb1eb3b19976629212d130d9f0be787ee3c33e025f9ae34238a0189e6" name="ImageMagick-config-7-upstream-websafe" arch="i586">
  <version epoch="0" ver="7.1.1.37" rel="1.0.4.1.sr20240803"/>
  <changelog author="pgajdos@suse.com" date="1705320000">- use correct policy.xml</changelog>
  <changelog author="pgajdos@suse.com" date="1705406400">- only one configuration again, based on upstream 'secure' policy
- other upstream policies packaged in documentation</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1705838400">- version update to 7.1.1.27
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1707652800">- version update to 7.1.1.28
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Michael Vetter &lt;mvetter@suse.com&gt;" date="1708603200">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1709035200">- version update to 7.1.1.29
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709380800">- We can not replace a symlink with a directory on the directly
  Unregister the whole group manually in %pre with
  update-alternatives. (boo#1220818)
  Restore Requires(pre) on update-alternatives for the mean time.</changelog>
  <changelog author="pgajdos@suse.com" date="1709553600">- enable SVG again
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711022400">- allow delegates to be executed, was disabled by default policy
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711108800">- allow stdin/stdout
- modified patches
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1712577600">- version update to 7.1.1.30
  * install perl module into user-specified prefix by @bugfood in #7192
  * Fix bmp option to bypass file size check by @OnTheList-1 in #7194
  * add support for encoding/decoding ultrahdr images by @aayushsoni111 in #7198
  * Updates to uhdr.c by @aayushsoni111 in #7217
- added patches
  fix https://github.com/ImageMagick/ImageMagick/issues/7230
  + ImageMagick-wmflite-detection.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713182400">- relax list-length resource limit, fixes build of python-Wand
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713787200">- version update to 7.1.1.31
  * Convert big PDF documents is slow #7263
  * Update release.yml #7258
  * Update README.md #7245
  * uhdr.c: verify the availability of error message before accessing it #7229
- removed patches
  - ImageMagick-wmflite-detection.patch (upstreamed)
  `</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1714910400">- version update to 7.1.1.32
  * Fix GIF ICC profile reading #7282
  * uhdr.c: add support for rgb inputs #7273</changelog>
  <changelog author="pgajdos@suse.com" date="1715860800">- reverted update-alternatives usage removal [bsc#1122033][bsc#1220818]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1716638400">- version update to 7.1.1.33
  * Fix typo in #7294
  * Bump azure/trusted-signing-action from 0.3.16 to 0.3.18 in #7325
  * Bump caphyon/advinst-github-action from 1.1 to 2.0 in #7326
- added patch
  + ImageMagick-update-image-signature.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1719144000">- version update to 7.1.1.34
  * Bump azure/trusted-signing-action from 0.3.18 to 0.3.19 in #7348
  * Fix a typo in convert deprecation warning in #7383
  * Bump azure/trusted-signing-action from 0.3.19 to 0.3.20 in #7388
  * Updated FontConfig query to include font index, fixing (#7374) in #7409
- removed patch (upstreamed)
  - ImageMagick-update-image-signature.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1721908800">- version update to 7.1.1.35
  * Also set dpi-x and dpi-y when running rsvg-convert. eac001f
  * convert sub-command is deprecated d67039e
  * only operators should disable "identify ping" (ImageMagick/ImageMagick#7441) a262192
  * fix compiler error ecc21c7
  * -outdir deprecated 9980efa
  * Get the correct width and height when heic:preserve-orientation is set to true. ed3a0dd
  * Set heic image orientation using transform information. ba470aa
  * Exit earlier when the symlink could not be created when invoking the svg:decode delegate. 8a48edd
  * Fixed MSYS2 build error. 3b22378
  * Also set the DNG properties when pinging the image. fc1c61b
  * Silence warning when lqr delegate is disabled. ae0d69a
  * Added version check for the heif_properties.h include. 656b4d2
  * Make sure we always use the i64 version of the "file methods" on Windows. b3e8a78
  * Changed defines to use method instead of a define. 75b66c4
  * Changes due to upgrade of libheif. 841f033
  * smooth the rendering of an ellipse (ImageMagick/ImageMagick#7465) 1bfce2a</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- version update to 7.1.1.36
  * uhdr.c: default initialize range field for hdr/sdr intent inputs to
    enc by @aayushsoni111 in #7482
  * Fixed typo in documentation of MagickAdaptiveBlurImage by @JonahEMorgan
    in #7500
  * Silence warning when freetype delegate is disabled. by @niclet in #7515</changelog>
  <changelog author="pgajdos@suse.com" date="1724760000">- version update to 7.1.1.37
  * Bump azure/trusted-signing-action from 0.3.20 to 0.4.0 #7518
  * Silence warning and fix HEIC_COMPUTE_NUMERIC_VERSION definition when heic delegate is disabled. #7516
  * protect macro arguments with parens 86cb2b1
  * eliminate compiler warnings d90d8b4
  * correct copyright year 115271e
  * Ignore multiple exif and xmp profiles for the same jxl frame and fix reading those profiles per frame. c301208
  * read/write in chunks fff3058
  * optimize fwrite() arguments ada6785
  * Renamed Output folder to Artifacts. 2a69677
  * cancel interactive window selection with right button press ea2a2db
  * cosmetic 712bde4
  * eliminate compiler warning 9a9a25c
  * eliminate compiler warning 0bd1687
  * Make images mandatory in the issue template. c01fd37
  * Added extra header detection for avif files. 9fc0590
  * allow SeekBlob() to set an offset beyond the end of the blob 27c3f99
  * be less forgiving for invalid image indexes 25db2e5
  * Fixed problem with empty macros (#7562) 9fda5f2
  * Added missing null checks for RequestOpenCLDevice. f85448e
  * Added missing null check for AcquireOpenCLCommandQueue. 295e9c8
  * persist app1 jpeg profile (ImageMagick/ImageMagick#4713) f0357c7
  * Fixed build error. b3dd431
  * Remove some of the dependencies for the macos-13 build. d0bce95
  * parentheses is the plural of parenthesis 1fac80a
  * distribute quantization error for -dither FloydSteinberg -depth 5b2825b
  * release 8a0da9f
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565</changelog>
</package>
<package pkgid="621b9612e0b5dd548cd83247ea01c4ad597ee848ba46e2e973634dfd6d2a699682af621e87317ea9460c4cbfd552332c2f7a20d9a6b319373e64e81669e242ab" name="ImageMagick-config-7-upstream-websafe" arch="x86_64">
  <version epoch="0" ver="7.1.1.37" rel="1.0.4.1.sr20240803"/>
  <changelog author="pgajdos@suse.com" date="1705320000">- use correct policy.xml</changelog>
  <changelog author="pgajdos@suse.com" date="1705406400">- only one configuration again, based on upstream 'secure' policy
- other upstream policies packaged in documentation</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1705838400">- version update to 7.1.1.27
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1707652800">- version update to 7.1.1.28
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Michael Vetter &lt;mvetter@suse.com&gt;" date="1708603200">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1709035200">- version update to 7.1.1.29
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709380800">- We can not replace a symlink with a directory on the directly
  Unregister the whole group manually in %pre with
  update-alternatives. (boo#1220818)
  Restore Requires(pre) on update-alternatives for the mean time.</changelog>
  <changelog author="pgajdos@suse.com" date="1709553600">- enable SVG again
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711022400">- allow delegates to be executed, was disabled by default policy
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711108800">- allow stdin/stdout
- modified patches
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1712577600">- version update to 7.1.1.30
  * install perl module into user-specified prefix by @bugfood in #7192
  * Fix bmp option to bypass file size check by @OnTheList-1 in #7194
  * add support for encoding/decoding ultrahdr images by @aayushsoni111 in #7198
  * Updates to uhdr.c by @aayushsoni111 in #7217
- added patches
  fix https://github.com/ImageMagick/ImageMagick/issues/7230
  + ImageMagick-wmflite-detection.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713182400">- relax list-length resource limit, fixes build of python-Wand
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713787200">- version update to 7.1.1.31
  * Convert big PDF documents is slow #7263
  * Update release.yml #7258
  * Update README.md #7245
  * uhdr.c: verify the availability of error message before accessing it #7229
- removed patches
  - ImageMagick-wmflite-detection.patch (upstreamed)
  `</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1714910400">- version update to 7.1.1.32
  * Fix GIF ICC profile reading #7282
  * uhdr.c: add support for rgb inputs #7273</changelog>
  <changelog author="pgajdos@suse.com" date="1715860800">- reverted update-alternatives usage removal [bsc#1122033][bsc#1220818]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1716638400">- version update to 7.1.1.33
  * Fix typo in #7294
  * Bump azure/trusted-signing-action from 0.3.16 to 0.3.18 in #7325
  * Bump caphyon/advinst-github-action from 1.1 to 2.0 in #7326
- added patch
  + ImageMagick-update-image-signature.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1719144000">- version update to 7.1.1.34
  * Bump azure/trusted-signing-action from 0.3.18 to 0.3.19 in #7348
  * Fix a typo in convert deprecation warning in #7383
  * Bump azure/trusted-signing-action from 0.3.19 to 0.3.20 in #7388
  * Updated FontConfig query to include font index, fixing (#7374) in #7409
- removed patch (upstreamed)
  - ImageMagick-update-image-signature.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1721908800">- version update to 7.1.1.35
  * Also set dpi-x and dpi-y when running rsvg-convert. eac001f
  * convert sub-command is deprecated d67039e
  * only operators should disable "identify ping" (ImageMagick/ImageMagick#7441) a262192
  * fix compiler error ecc21c7
  * -outdir deprecated 9980efa
  * Get the correct width and height when heic:preserve-orientation is set to true. ed3a0dd
  * Set heic image orientation using transform information. ba470aa
  * Exit earlier when the symlink could not be created when invoking the svg:decode delegate. 8a48edd
  * Fixed MSYS2 build error. 3b22378
  * Also set the DNG properties when pinging the image. fc1c61b
  * Silence warning when lqr delegate is disabled. ae0d69a
  * Added version check for the heif_properties.h include. 656b4d2
  * Make sure we always use the i64 version of the "file methods" on Windows. b3e8a78
  * Changed defines to use method instead of a define. 75b66c4
  * Changes due to upgrade of libheif. 841f033
  * smooth the rendering of an ellipse (ImageMagick/ImageMagick#7465) 1bfce2a</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- version update to 7.1.1.36
  * uhdr.c: default initialize range field for hdr/sdr intent inputs to
    enc by @aayushsoni111 in #7482
  * Fixed typo in documentation of MagickAdaptiveBlurImage by @JonahEMorgan
    in #7500
  * Silence warning when freetype delegate is disabled. by @niclet in #7515</changelog>
  <changelog author="pgajdos@suse.com" date="1724760000">- version update to 7.1.1.37
  * Bump azure/trusted-signing-action from 0.3.20 to 0.4.0 #7518
  * Silence warning and fix HEIC_COMPUTE_NUMERIC_VERSION definition when heic delegate is disabled. #7516
  * protect macro arguments with parens 86cb2b1
  * eliminate compiler warnings d90d8b4
  * correct copyright year 115271e
  * Ignore multiple exif and xmp profiles for the same jxl frame and fix reading those profiles per frame. c301208
  * read/write in chunks fff3058
  * optimize fwrite() arguments ada6785
  * Renamed Output folder to Artifacts. 2a69677
  * cancel interactive window selection with right button press ea2a2db
  * cosmetic 712bde4
  * eliminate compiler warning 9a9a25c
  * eliminate compiler warning 0bd1687
  * Make images mandatory in the issue template. c01fd37
  * Added extra header detection for avif files. 9fc0590
  * allow SeekBlob() to set an offset beyond the end of the blob 27c3f99
  * be less forgiving for invalid image indexes 25db2e5
  * Fixed problem with empty macros (#7562) 9fda5f2
  * Added missing null checks for RequestOpenCLDevice. f85448e
  * Added missing null check for AcquireOpenCLCommandQueue. 295e9c8
  * persist app1 jpeg profile (ImageMagick/ImageMagick#4713) f0357c7
  * Fixed build error. b3dd431
  * Remove some of the dependencies for the macos-13 build. d0bce95
  * parentheses is the plural of parenthesis 1fac80a
  * distribute quantization error for -dither FloydSteinberg -depth 5b2825b
  * release 8a0da9f
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565</changelog>
</package>
<package pkgid="440f504a80fd38f3ac4ee183f406c41790508536536142d051979aecf0e151f57c483e032f9fc5d7e827109fb1254a974885507b779d50b7563c9dbf749f650f" name="ImageMagick-config-7-upstream-websafe" arch="i586">
  <version epoch="0" ver="7.1.1.37" rel="1.1"/>
  <changelog author="pgajdos@suse.com" date="1705320000">- use correct policy.xml</changelog>
  <changelog author="pgajdos@suse.com" date="1705406400">- only one configuration again, based on upstream 'secure' policy
- other upstream policies packaged in documentation</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1705838400">- version update to 7.1.1.27
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1707652800">- version update to 7.1.1.28
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Michael Vetter &lt;mvetter@suse.com&gt;" date="1708603200">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1709035200">- version update to 7.1.1.29
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709380800">- We can not replace a symlink with a directory on the directly
  Unregister the whole group manually in %pre with
  update-alternatives. (boo#1220818)
  Restore Requires(pre) on update-alternatives for the mean time.</changelog>
  <changelog author="pgajdos@suse.com" date="1709553600">- enable SVG again
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711022400">- allow delegates to be executed, was disabled by default policy
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711108800">- allow stdin/stdout
- modified patches
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1712577600">- version update to 7.1.1.30
  * install perl module into user-specified prefix by @bugfood in #7192
  * Fix bmp option to bypass file size check by @OnTheList-1 in #7194
  * add support for encoding/decoding ultrahdr images by @aayushsoni111 in #7198
  * Updates to uhdr.c by @aayushsoni111 in #7217
- added patches
  fix https://github.com/ImageMagick/ImageMagick/issues/7230
  + ImageMagick-wmflite-detection.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713182400">- relax list-length resource limit, fixes build of python-Wand
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713787200">- version update to 7.1.1.31
  * Convert big PDF documents is slow #7263
  * Update release.yml #7258
  * Update README.md #7245
  * uhdr.c: verify the availability of error message before accessing it #7229
- removed patches
  - ImageMagick-wmflite-detection.patch (upstreamed)
  `</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1714910400">- version update to 7.1.1.32
  * Fix GIF ICC profile reading #7282
  * uhdr.c: add support for rgb inputs #7273</changelog>
  <changelog author="pgajdos@suse.com" date="1715860800">- reverted update-alternatives usage removal [bsc#1122033][bsc#1220818]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1716638400">- version update to 7.1.1.33
  * Fix typo in #7294
  * Bump azure/trusted-signing-action from 0.3.16 to 0.3.18 in #7325
  * Bump caphyon/advinst-github-action from 1.1 to 2.0 in #7326
- added patch
  + ImageMagick-update-image-signature.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1719144000">- version update to 7.1.1.34
  * Bump azure/trusted-signing-action from 0.3.18 to 0.3.19 in #7348
  * Fix a typo in convert deprecation warning in #7383
  * Bump azure/trusted-signing-action from 0.3.19 to 0.3.20 in #7388
  * Updated FontConfig query to include font index, fixing (#7374) in #7409
- removed patch (upstreamed)
  - ImageMagick-update-image-signature.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1721908800">- version update to 7.1.1.35
  * Also set dpi-x and dpi-y when running rsvg-convert. eac001f
  * convert sub-command is deprecated d67039e
  * only operators should disable "identify ping" (ImageMagick/ImageMagick#7441) a262192
  * fix compiler error ecc21c7
  * -outdir deprecated 9980efa
  * Get the correct width and height when heic:preserve-orientation is set to true. ed3a0dd
  * Set heic image orientation using transform information. ba470aa
  * Exit earlier when the symlink could not be created when invoking the svg:decode delegate. 8a48edd
  * Fixed MSYS2 build error. 3b22378
  * Also set the DNG properties when pinging the image. fc1c61b
  * Silence warning when lqr delegate is disabled. ae0d69a
  * Added version check for the heif_properties.h include. 656b4d2
  * Make sure we always use the i64 version of the "file methods" on Windows. b3e8a78
  * Changed defines to use method instead of a define. 75b66c4
  * Changes due to upgrade of libheif. 841f033
  * smooth the rendering of an ellipse (ImageMagick/ImageMagick#7465) 1bfce2a</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- version update to 7.1.1.36
  * uhdr.c: default initialize range field for hdr/sdr intent inputs to
    enc by @aayushsoni111 in #7482
  * Fixed typo in documentation of MagickAdaptiveBlurImage by @JonahEMorgan
    in #7500
  * Silence warning when freetype delegate is disabled. by @niclet in #7515</changelog>
  <changelog author="pgajdos@suse.com" date="1724760000">- version update to 7.1.1.37
  * Bump azure/trusted-signing-action from 0.3.20 to 0.4.0 #7518
  * Silence warning and fix HEIC_COMPUTE_NUMERIC_VERSION definition when heic delegate is disabled. #7516
  * protect macro arguments with parens 86cb2b1
  * eliminate compiler warnings d90d8b4
  * correct copyright year 115271e
  * Ignore multiple exif and xmp profiles for the same jxl frame and fix reading those profiles per frame. c301208
  * read/write in chunks fff3058
  * optimize fwrite() arguments ada6785
  * Renamed Output folder to Artifacts. 2a69677
  * cancel interactive window selection with right button press ea2a2db
  * cosmetic 712bde4
  * eliminate compiler warning 9a9a25c
  * eliminate compiler warning 0bd1687
  * Make images mandatory in the issue template. c01fd37
  * Added extra header detection for avif files. 9fc0590
  * allow SeekBlob() to set an offset beyond the end of the blob 27c3f99
  * be less forgiving for invalid image indexes 25db2e5
  * Fixed problem with empty macros (#7562) 9fda5f2
  * Added missing null checks for RequestOpenCLDevice. f85448e
  * Added missing null check for AcquireOpenCLCommandQueue. 295e9c8
  * persist app1 jpeg profile (ImageMagick/ImageMagick#4713) f0357c7
  * Fixed build error. b3dd431
  * Remove some of the dependencies for the macos-13 build. d0bce95
  * parentheses is the plural of parenthesis 1fac80a
  * distribute quantization error for -dither FloydSteinberg -depth 5b2825b
  * release 8a0da9f
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565</changelog>
</package>
<package pkgid="03c8a05dd8952382cf64a1455aa401f4f038f2eeb525de1c82df8dad436cdaa96bcea6ed472cf9644c4c33f925971e300fe6339406020c781fe513ec1f9fbcfd" name="ImageMagick-config-7-upstream-websafe" arch="x86_64">
  <version epoch="0" ver="7.1.1.37" rel="1.1"/>
  <changelog author="pgajdos@suse.com" date="1705320000">- use correct policy.xml</changelog>
  <changelog author="pgajdos@suse.com" date="1705406400">- only one configuration again, based on upstream 'secure' policy
- other upstream policies packaged in documentation</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1705838400">- version update to 7.1.1.27
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1707652800">- version update to 7.1.1.28
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Michael Vetter &lt;mvetter@suse.com&gt;" date="1708603200">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1709035200">- version update to 7.1.1.29
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709380800">- We can not replace a symlink with a directory on the directly
  Unregister the whole group manually in %pre with
  update-alternatives. (boo#1220818)
  Restore Requires(pre) on update-alternatives for the mean time.</changelog>
  <changelog author="pgajdos@suse.com" date="1709553600">- enable SVG again
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711022400">- allow delegates to be executed, was disabled by default policy
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711108800">- allow stdin/stdout
- modified patches
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1712577600">- version update to 7.1.1.30
  * install perl module into user-specified prefix by @bugfood in #7192
  * Fix bmp option to bypass file size check by @OnTheList-1 in #7194
  * add support for encoding/decoding ultrahdr images by @aayushsoni111 in #7198
  * Updates to uhdr.c by @aayushsoni111 in #7217
- added patches
  fix https://github.com/ImageMagick/ImageMagick/issues/7230
  + ImageMagick-wmflite-detection.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713182400">- relax list-length resource limit, fixes build of python-Wand
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713787200">- version update to 7.1.1.31
  * Convert big PDF documents is slow #7263
  * Update release.yml #7258
  * Update README.md #7245
  * uhdr.c: verify the availability of error message before accessing it #7229
- removed patches
  - ImageMagick-wmflite-detection.patch (upstreamed)
  `</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1714910400">- version update to 7.1.1.32
  * Fix GIF ICC profile reading #7282
  * uhdr.c: add support for rgb inputs #7273</changelog>
  <changelog author="pgajdos@suse.com" date="1715860800">- reverted update-alternatives usage removal [bsc#1122033][bsc#1220818]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1716638400">- version update to 7.1.1.33
  * Fix typo in #7294
  * Bump azure/trusted-signing-action from 0.3.16 to 0.3.18 in #7325
  * Bump caphyon/advinst-github-action from 1.1 to 2.0 in #7326
- added patch
  + ImageMagick-update-image-signature.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1719144000">- version update to 7.1.1.34
  * Bump azure/trusted-signing-action from 0.3.18 to 0.3.19 in #7348
  * Fix a typo in convert deprecation warning in #7383
  * Bump azure/trusted-signing-action from 0.3.19 to 0.3.20 in #7388
  * Updated FontConfig query to include font index, fixing (#7374) in #7409
- removed patch (upstreamed)
  - ImageMagick-update-image-signature.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1721908800">- version update to 7.1.1.35
  * Also set dpi-x and dpi-y when running rsvg-convert. eac001f
  * convert sub-command is deprecated d67039e
  * only operators should disable "identify ping" (ImageMagick/ImageMagick#7441) a262192
  * fix compiler error ecc21c7
  * -outdir deprecated 9980efa
  * Get the correct width and height when heic:preserve-orientation is set to true. ed3a0dd
  * Set heic image orientation using transform information. ba470aa
  * Exit earlier when the symlink could not be created when invoking the svg:decode delegate. 8a48edd
  * Fixed MSYS2 build error. 3b22378
  * Also set the DNG properties when pinging the image. fc1c61b
  * Silence warning when lqr delegate is disabled. ae0d69a
  * Added version check for the heif_properties.h include. 656b4d2
  * Make sure we always use the i64 version of the "file methods" on Windows. b3e8a78
  * Changed defines to use method instead of a define. 75b66c4
  * Changes due to upgrade of libheif. 841f033
  * smooth the rendering of an ellipse (ImageMagick/ImageMagick#7465) 1bfce2a</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- version update to 7.1.1.36
  * uhdr.c: default initialize range field for hdr/sdr intent inputs to
    enc by @aayushsoni111 in #7482
  * Fixed typo in documentation of MagickAdaptiveBlurImage by @JonahEMorgan
    in #7500
  * Silence warning when freetype delegate is disabled. by @niclet in #7515</changelog>
  <changelog author="pgajdos@suse.com" date="1724760000">- version update to 7.1.1.37
  * Bump azure/trusted-signing-action from 0.3.20 to 0.4.0 #7518
  * Silence warning and fix HEIC_COMPUTE_NUMERIC_VERSION definition when heic delegate is disabled. #7516
  * protect macro arguments with parens 86cb2b1
  * eliminate compiler warnings d90d8b4
  * correct copyright year 115271e
  * Ignore multiple exif and xmp profiles for the same jxl frame and fix reading those profiles per frame. c301208
  * read/write in chunks fff3058
  * optimize fwrite() arguments ada6785
  * Renamed Output folder to Artifacts. 2a69677
  * cancel interactive window selection with right button press ea2a2db
  * cosmetic 712bde4
  * eliminate compiler warning 9a9a25c
  * eliminate compiler warning 0bd1687
  * Make images mandatory in the issue template. c01fd37
  * Added extra header detection for avif files. 9fc0590
  * allow SeekBlob() to set an offset beyond the end of the blob 27c3f99
  * be less forgiving for invalid image indexes 25db2e5
  * Fixed problem with empty macros (#7562) 9fda5f2
  * Added missing null checks for RequestOpenCLDevice. f85448e
  * Added missing null check for AcquireOpenCLCommandQueue. 295e9c8
  * persist app1 jpeg profile (ImageMagick/ImageMagick#4713) f0357c7
  * Fixed build error. b3dd431
  * Remove some of the dependencies for the macos-13 build. d0bce95
  * parentheses is the plural of parenthesis 1fac80a
  * distribute quantization error for -dither FloydSteinberg -depth 5b2825b
  * release 8a0da9f
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565</changelog>
</package>
<package pkgid="3f24d47d6b56d0fee8302adfa4fc7c8135e13c95ddfb5d2d68d2475a9cf539bf4362005d466405bd01dcafa9fe212445b060f4efe6a8fbecfaf23c5dbcb327e5" name="ImageMagick-config-7-upstream-websafe" arch="i586">
  <version epoch="0" ver="7.1.1.39" rel="1.1"/>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1705838400">- version update to 7.1.1.27
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1707652800">- version update to 7.1.1.28
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Michael Vetter &lt;mvetter@suse.com&gt;" date="1708603200">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1709035200">- version update to 7.1.1.29
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709380800">- We can not replace a symlink with a directory on the directly
  Unregister the whole group manually in %pre with
  update-alternatives. (boo#1220818)
  Restore Requires(pre) on update-alternatives for the mean time.</changelog>
  <changelog author="pgajdos@suse.com" date="1709553600">- enable SVG again
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711022400">- allow delegates to be executed, was disabled by default policy
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711108800">- allow stdin/stdout
- modified patches
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1712577600">- version update to 7.1.1.30
  * install perl module into user-specified prefix by @bugfood in #7192
  * Fix bmp option to bypass file size check by @OnTheList-1 in #7194
  * add support for encoding/decoding ultrahdr images by @aayushsoni111 in #7198
  * Updates to uhdr.c by @aayushsoni111 in #7217
- added patches
  fix https://github.com/ImageMagick/ImageMagick/issues/7230
  + ImageMagick-wmflite-detection.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713182400">- relax list-length resource limit, fixes build of python-Wand
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713787200">- version update to 7.1.1.31
  * Convert big PDF documents is slow #7263
  * Update release.yml #7258
  * Update README.md #7245
  * uhdr.c: verify the availability of error message before accessing it #7229
- removed patches
  - ImageMagick-wmflite-detection.patch (upstreamed)
  `</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1714910400">- version update to 7.1.1.32
  * Fix GIF ICC profile reading #7282
  * uhdr.c: add support for rgb inputs #7273</changelog>
  <changelog author="pgajdos@suse.com" date="1715860800">- reverted update-alternatives usage removal [bsc#1122033][bsc#1220818]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1716638400">- version update to 7.1.1.33
  * Fix typo in #7294
  * Bump azure/trusted-signing-action from 0.3.16 to 0.3.18 in #7325
  * Bump caphyon/advinst-github-action from 1.1 to 2.0 in #7326
- added patch
  + ImageMagick-update-image-signature.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1719144000">- version update to 7.1.1.34
  * Bump azure/trusted-signing-action from 0.3.18 to 0.3.19 in #7348
  * Fix a typo in convert deprecation warning in #7383
  * Bump azure/trusted-signing-action from 0.3.19 to 0.3.20 in #7388
  * Updated FontConfig query to include font index, fixing (#7374) in #7409
- removed patch (upstreamed)
  - ImageMagick-update-image-signature.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1721908800">- version update to 7.1.1.35
  * Also set dpi-x and dpi-y when running rsvg-convert. eac001f
  * convert sub-command is deprecated d67039e
  * only operators should disable "identify ping" (ImageMagick/ImageMagick#7441) a262192
  * fix compiler error ecc21c7
  * -outdir deprecated 9980efa
  * Get the correct width and height when heic:preserve-orientation is set to true. ed3a0dd
  * Set heic image orientation using transform information. ba470aa
  * Exit earlier when the symlink could not be created when invoking the svg:decode delegate. 8a48edd
  * Fixed MSYS2 build error. 3b22378
  * Also set the DNG properties when pinging the image. fc1c61b
  * Silence warning when lqr delegate is disabled. ae0d69a
  * Added version check for the heif_properties.h include. 656b4d2
  * Make sure we always use the i64 version of the "file methods" on Windows. b3e8a78
  * Changed defines to use method instead of a define. 75b66c4
  * Changes due to upgrade of libheif. 841f033
  * smooth the rendering of an ellipse (ImageMagick/ImageMagick#7465) 1bfce2a</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- version update to 7.1.1.36
  * uhdr.c: default initialize range field for hdr/sdr intent inputs to
    enc by @aayushsoni111 in #7482
  * Fixed typo in documentation of MagickAdaptiveBlurImage by @JonahEMorgan
    in #7500
  * Silence warning when freetype delegate is disabled. by @niclet in #7515</changelog>
  <changelog author="pgajdos@suse.com" date="1724760000">- version update to 7.1.1.37
  * Bump azure/trusted-signing-action from 0.3.20 to 0.4.0 #7518
  * Silence warning and fix HEIC_COMPUTE_NUMERIC_VERSION definition when heic delegate is disabled. #7516
  * protect macro arguments with parens 86cb2b1
  * eliminate compiler warnings d90d8b4
  * correct copyright year 115271e
  * Ignore multiple exif and xmp profiles for the same jxl frame and fix reading those profiles per frame. c301208
  * read/write in chunks fff3058
  * optimize fwrite() arguments ada6785
  * Renamed Output folder to Artifacts. 2a69677
  * cancel interactive window selection with right button press ea2a2db
  * cosmetic 712bde4
  * eliminate compiler warning 9a9a25c
  * eliminate compiler warning 0bd1687
  * Make images mandatory in the issue template. c01fd37
  * Added extra header detection for avif files. 9fc0590
  * allow SeekBlob() to set an offset beyond the end of the blob 27c3f99
  * be less forgiving for invalid image indexes 25db2e5
  * Fixed problem with empty macros (#7562) 9fda5f2
  * Added missing null checks for RequestOpenCLDevice. f85448e
  * Added missing null check for AcquireOpenCLCommandQueue. 295e9c8
  * persist app1 jpeg profile (ImageMagick/ImageMagick#4713) f0357c7
  * Fixed build error. b3dd431
  * Remove some of the dependencies for the macos-13 build. d0bce95
  * parentheses is the plural of parenthesis 1fac80a
  * distribute quantization error for -dither FloydSteinberg -depth 5b2825b
  * release 8a0da9f
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565</changelog>
  <changelog author="pgajdos@suse.com" date="1726228800">- version update to 7.1.1.38
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565
  * beta release 250b748
  * deprecate the -respect-paranthesis option 4e7d789
  * Build fixes. b80c509
  * save IPTC + ICC profiles are profiles, not properties 25d5335
  * update copyright year 4caf7d1
  * Patch to fix reading of the ICC profile. 18377f9
  * prepping framework to interact with X11 clipboard b20dda3
  * Build fix. 20a5af3
  * More build fixes. c36fdf0
  * Another attempt to silence the warnings. 600708c
  * Use SetImageProfilePrivate to avoid duplicate allocations. f246eab
  * support clipboard delegate 39a135a
  * restore clipboard.c 1070b17
  * improved rounding 27a0a9c
  * don't allow negative scenes 8fda05a
  * eliminate compiler warnings 878daf9
- modified patches
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1728216000">- version update to 7.1.1.39
  * Add missing Threshold command to command array of Region of Interest mode #7606
  * uhdr.c: update uhdr coder for gainmap metadata configuration #7635
  * uhdr: fix language choice in autoconf #7663</changelog>
</package>
<package pkgid="bf5910c25ffb5d56b01a8ae70373f6ed03ffa31d2dd02547bf3bcf492c6ff04206cc2967e68f76d6b8d1cf1610adbbcad07a9678b06987c3c491418267528d3d" name="ImageMagick-config-7-upstream-websafe" arch="x86_64">
  <version epoch="0" ver="7.1.1.39" rel="1.1"/>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1705838400">- version update to 7.1.1.27
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1707652800">- version update to 7.1.1.28
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Michael Vetter &lt;mvetter@suse.com&gt;" date="1708603200">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1709035200">- version update to 7.1.1.29
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709380800">- We can not replace a symlink with a directory on the directly
  Unregister the whole group manually in %pre with
  update-alternatives. (boo#1220818)
  Restore Requires(pre) on update-alternatives for the mean time.</changelog>
  <changelog author="pgajdos@suse.com" date="1709553600">- enable SVG again
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711022400">- allow delegates to be executed, was disabled by default policy
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711108800">- allow stdin/stdout
- modified patches
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1712577600">- version update to 7.1.1.30
  * install perl module into user-specified prefix by @bugfood in #7192
  * Fix bmp option to bypass file size check by @OnTheList-1 in #7194
  * add support for encoding/decoding ultrahdr images by @aayushsoni111 in #7198
  * Updates to uhdr.c by @aayushsoni111 in #7217
- added patches
  fix https://github.com/ImageMagick/ImageMagick/issues/7230
  + ImageMagick-wmflite-detection.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713182400">- relax list-length resource limit, fixes build of python-Wand
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713787200">- version update to 7.1.1.31
  * Convert big PDF documents is slow #7263
  * Update release.yml #7258
  * Update README.md #7245
  * uhdr.c: verify the availability of error message before accessing it #7229
- removed patches
  - ImageMagick-wmflite-detection.patch (upstreamed)
  `</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1714910400">- version update to 7.1.1.32
  * Fix GIF ICC profile reading #7282
  * uhdr.c: add support for rgb inputs #7273</changelog>
  <changelog author="pgajdos@suse.com" date="1715860800">- reverted update-alternatives usage removal [bsc#1122033][bsc#1220818]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1716638400">- version update to 7.1.1.33
  * Fix typo in #7294
  * Bump azure/trusted-signing-action from 0.3.16 to 0.3.18 in #7325
  * Bump caphyon/advinst-github-action from 1.1 to 2.0 in #7326
- added patch
  + ImageMagick-update-image-signature.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1719144000">- version update to 7.1.1.34
  * Bump azure/trusted-signing-action from 0.3.18 to 0.3.19 in #7348
  * Fix a typo in convert deprecation warning in #7383
  * Bump azure/trusted-signing-action from 0.3.19 to 0.3.20 in #7388
  * Updated FontConfig query to include font index, fixing (#7374) in #7409
- removed patch (upstreamed)
  - ImageMagick-update-image-signature.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1721908800">- version update to 7.1.1.35
  * Also set dpi-x and dpi-y when running rsvg-convert. eac001f
  * convert sub-command is deprecated d67039e
  * only operators should disable "identify ping" (ImageMagick/ImageMagick#7441) a262192
  * fix compiler error ecc21c7
  * -outdir deprecated 9980efa
  * Get the correct width and height when heic:preserve-orientation is set to true. ed3a0dd
  * Set heic image orientation using transform information. ba470aa
  * Exit earlier when the symlink could not be created when invoking the svg:decode delegate. 8a48edd
  * Fixed MSYS2 build error. 3b22378
  * Also set the DNG properties when pinging the image. fc1c61b
  * Silence warning when lqr delegate is disabled. ae0d69a
  * Added version check for the heif_properties.h include. 656b4d2
  * Make sure we always use the i64 version of the "file methods" on Windows. b3e8a78
  * Changed defines to use method instead of a define. 75b66c4
  * Changes due to upgrade of libheif. 841f033
  * smooth the rendering of an ellipse (ImageMagick/ImageMagick#7465) 1bfce2a</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- version update to 7.1.1.36
  * uhdr.c: default initialize range field for hdr/sdr intent inputs to
    enc by @aayushsoni111 in #7482
  * Fixed typo in documentation of MagickAdaptiveBlurImage by @JonahEMorgan
    in #7500
  * Silence warning when freetype delegate is disabled. by @niclet in #7515</changelog>
  <changelog author="pgajdos@suse.com" date="1724760000">- version update to 7.1.1.37
  * Bump azure/trusted-signing-action from 0.3.20 to 0.4.0 #7518
  * Silence warning and fix HEIC_COMPUTE_NUMERIC_VERSION definition when heic delegate is disabled. #7516
  * protect macro arguments with parens 86cb2b1
  * eliminate compiler warnings d90d8b4
  * correct copyright year 115271e
  * Ignore multiple exif and xmp profiles for the same jxl frame and fix reading those profiles per frame. c301208
  * read/write in chunks fff3058
  * optimize fwrite() arguments ada6785
  * Renamed Output folder to Artifacts. 2a69677
  * cancel interactive window selection with right button press ea2a2db
  * cosmetic 712bde4
  * eliminate compiler warning 9a9a25c
  * eliminate compiler warning 0bd1687
  * Make images mandatory in the issue template. c01fd37
  * Added extra header detection for avif files. 9fc0590
  * allow SeekBlob() to set an offset beyond the end of the blob 27c3f99
  * be less forgiving for invalid image indexes 25db2e5
  * Fixed problem with empty macros (#7562) 9fda5f2
  * Added missing null checks for RequestOpenCLDevice. f85448e
  * Added missing null check for AcquireOpenCLCommandQueue. 295e9c8
  * persist app1 jpeg profile (ImageMagick/ImageMagick#4713) f0357c7
  * Fixed build error. b3dd431
  * Remove some of the dependencies for the macos-13 build. d0bce95
  * parentheses is the plural of parenthesis 1fac80a
  * distribute quantization error for -dither FloydSteinberg -depth 5b2825b
  * release 8a0da9f
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565</changelog>
  <changelog author="pgajdos@suse.com" date="1726228800">- version update to 7.1.1.38
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565
  * beta release 250b748
  * deprecate the -respect-paranthesis option 4e7d789
  * Build fixes. b80c509
  * save IPTC + ICC profiles are profiles, not properties 25d5335
  * update copyright year 4caf7d1
  * Patch to fix reading of the ICC profile. 18377f9
  * prepping framework to interact with X11 clipboard b20dda3
  * Build fix. 20a5af3
  * More build fixes. c36fdf0
  * Another attempt to silence the warnings. 600708c
  * Use SetImageProfilePrivate to avoid duplicate allocations. f246eab
  * support clipboard delegate 39a135a
  * restore clipboard.c 1070b17
  * improved rounding 27a0a9c
  * don't allow negative scenes 8fda05a
  * eliminate compiler warnings 878daf9
- modified patches
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1728216000">- version update to 7.1.1.39
  * Add missing Threshold command to command array of Region of Interest mode #7606
  * uhdr.c: update uhdr coder for gainmap metadata configuration #7635
  * uhdr: fix language choice in autoconf #7663</changelog>
</package>
<package pkgid="19cc4c33009c16ba2afae6e87914ebc820f0547a653a332fcec0dfec60bbbc32240fc2f6f6f54c73b7b93aac5eae4ef15c01d5d252bec63e085cc0b448edb8c0" name="ImageMagick-config-7-upstream-websafe" arch="i586">
  <version epoch="0" ver="7.1.1.41" rel="1.0.2.1.sr20241103"/>
  <changelog author="Michael Vetter &lt;mvetter@suse.com&gt;" date="1708603200">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1709035200">- version update to 7.1.1.29
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709380800">- We can not replace a symlink with a directory on the directly
  Unregister the whole group manually in %pre with
  update-alternatives. (boo#1220818)
  Restore Requires(pre) on update-alternatives for the mean time.</changelog>
  <changelog author="pgajdos@suse.com" date="1709553600">- enable SVG again
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711022400">- allow delegates to be executed, was disabled by default policy
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711108800">- allow stdin/stdout
- modified patches
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1712577600">- version update to 7.1.1.30
  * install perl module into user-specified prefix by @bugfood in #7192
  * Fix bmp option to bypass file size check by @OnTheList-1 in #7194
  * add support for encoding/decoding ultrahdr images by @aayushsoni111 in #7198
  * Updates to uhdr.c by @aayushsoni111 in #7217
- added patches
  fix https://github.com/ImageMagick/ImageMagick/issues/7230
  + ImageMagick-wmflite-detection.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713182400">- relax list-length resource limit, fixes build of python-Wand
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713787200">- version update to 7.1.1.31
  * Convert big PDF documents is slow #7263
  * Update release.yml #7258
  * Update README.md #7245
  * uhdr.c: verify the availability of error message before accessing it #7229
- removed patches
  - ImageMagick-wmflite-detection.patch (upstreamed)
  `</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1714910400">- version update to 7.1.1.32
  * Fix GIF ICC profile reading #7282
  * uhdr.c: add support for rgb inputs #7273</changelog>
  <changelog author="pgajdos@suse.com" date="1715860800">- reverted update-alternatives usage removal [bsc#1122033][bsc#1220818]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1716638400">- version update to 7.1.1.33
  * Fix typo in #7294
  * Bump azure/trusted-signing-action from 0.3.16 to 0.3.18 in #7325
  * Bump caphyon/advinst-github-action from 1.1 to 2.0 in #7326
- added patch
  + ImageMagick-update-image-signature.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1719144000">- version update to 7.1.1.34
  * Bump azure/trusted-signing-action from 0.3.18 to 0.3.19 in #7348
  * Fix a typo in convert deprecation warning in #7383
  * Bump azure/trusted-signing-action from 0.3.19 to 0.3.20 in #7388
  * Updated FontConfig query to include font index, fixing (#7374) in #7409
- removed patch (upstreamed)
  - ImageMagick-update-image-signature.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1721908800">- version update to 7.1.1.35
  * Also set dpi-x and dpi-y when running rsvg-convert. eac001f
  * convert sub-command is deprecated d67039e
  * only operators should disable "identify ping" (ImageMagick/ImageMagick#7441) a262192
  * fix compiler error ecc21c7
  * -outdir deprecated 9980efa
  * Get the correct width and height when heic:preserve-orientation is set to true. ed3a0dd
  * Set heic image orientation using transform information. ba470aa
  * Exit earlier when the symlink could not be created when invoking the svg:decode delegate. 8a48edd
  * Fixed MSYS2 build error. 3b22378
  * Also set the DNG properties when pinging the image. fc1c61b
  * Silence warning when lqr delegate is disabled. ae0d69a
  * Added version check for the heif_properties.h include. 656b4d2
  * Make sure we always use the i64 version of the "file methods" on Windows. b3e8a78
  * Changed defines to use method instead of a define. 75b66c4
  * Changes due to upgrade of libheif. 841f033
  * smooth the rendering of an ellipse (ImageMagick/ImageMagick#7465) 1bfce2a</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- version update to 7.1.1.36
  * uhdr.c: default initialize range field for hdr/sdr intent inputs to
    enc by @aayushsoni111 in #7482
  * Fixed typo in documentation of MagickAdaptiveBlurImage by @JonahEMorgan
    in #7500
  * Silence warning when freetype delegate is disabled. by @niclet in #7515</changelog>
  <changelog author="pgajdos@suse.com" date="1724760000">- version update to 7.1.1.37
  * Bump azure/trusted-signing-action from 0.3.20 to 0.4.0 #7518
  * Silence warning and fix HEIC_COMPUTE_NUMERIC_VERSION definition when heic delegate is disabled. #7516
  * protect macro arguments with parens 86cb2b1
  * eliminate compiler warnings d90d8b4
  * correct copyright year 115271e
  * Ignore multiple exif and xmp profiles for the same jxl frame and fix reading those profiles per frame. c301208
  * read/write in chunks fff3058
  * optimize fwrite() arguments ada6785
  * Renamed Output folder to Artifacts. 2a69677
  * cancel interactive window selection with right button press ea2a2db
  * cosmetic 712bde4
  * eliminate compiler warning 9a9a25c
  * eliminate compiler warning 0bd1687
  * Make images mandatory in the issue template. c01fd37
  * Added extra header detection for avif files. 9fc0590
  * allow SeekBlob() to set an offset beyond the end of the blob 27c3f99
  * be less forgiving for invalid image indexes 25db2e5
  * Fixed problem with empty macros (#7562) 9fda5f2
  * Added missing null checks for RequestOpenCLDevice. f85448e
  * Added missing null check for AcquireOpenCLCommandQueue. 295e9c8
  * persist app1 jpeg profile (ImageMagick/ImageMagick#4713) f0357c7
  * Fixed build error. b3dd431
  * Remove some of the dependencies for the macos-13 build. d0bce95
  * parentheses is the plural of parenthesis 1fac80a
  * distribute quantization error for -dither FloydSteinberg -depth 5b2825b
  * release 8a0da9f
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565</changelog>
  <changelog author="pgajdos@suse.com" date="1726228800">- version update to 7.1.1.38
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565
  * beta release 250b748
  * deprecate the -respect-paranthesis option 4e7d789
  * Build fixes. b80c509
  * save IPTC + ICC profiles are profiles, not properties 25d5335
  * update copyright year 4caf7d1
  * Patch to fix reading of the ICC profile. 18377f9
  * prepping framework to interact with X11 clipboard b20dda3
  * Build fix. 20a5af3
  * More build fixes. c36fdf0
  * Another attempt to silence the warnings. 600708c
  * Use SetImageProfilePrivate to avoid duplicate allocations. f246eab
  * support clipboard delegate 39a135a
  * restore clipboard.c 1070b17
  * improved rounding 27a0a9c
  * don't allow negative scenes 8fda05a
  * eliminate compiler warnings 878daf9
- modified patches
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1728216000">- version update to 7.1.1.39
  * Add missing Threshold command to command array of Region of Interest mode #7606
  * uhdr.c: update uhdr coder for gainmap metadata configuration #7635
  * uhdr: fix language choice in autoconf #7663</changelog>
  <changelog author="Yann BOYER &lt;yann.boyer742@gmail.com&gt;" date="1731326400">- version update to 7.1.1.40
  * .cut (Dr Halo) reading when run count in header #7734
  * Bump azure/trusted-signing-action from 0.4.0 to 0.5.0 #7725
  * Implement Magic Kernel Sharp 2013 and 2021 #7701
  * don't process TIFF image if there is an exception
  * Corrected check for indexed channels in PSD files.
  * export exception when undo resource limit exceeded</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1731844800">- version update to 7.1.1.41
  * Fix compiler identification with Clang on Darwin in #7773
  * revert map changes breaking ABI in #7768</changelog>
</package>
<package pkgid="7f58a93a996d78b7224750770e7514ec06e15faa11221099e83c39b2f16a1b9c7fe4a0176e78633c586e0e0f6cf4c79065e0f95256a0ef14dbab31f5a2514bcc" name="ImageMagick-config-7-upstream-websafe" arch="x86_64">
  <version epoch="0" ver="7.1.1.41" rel="1.0.2.1.sr20241103"/>
  <changelog author="Michael Vetter &lt;mvetter@suse.com&gt;" date="1708603200">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1709035200">- version update to 7.1.1.29
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709380800">- We can not replace a symlink with a directory on the directly
  Unregister the whole group manually in %pre with
  update-alternatives. (boo#1220818)
  Restore Requires(pre) on update-alternatives for the mean time.</changelog>
  <changelog author="pgajdos@suse.com" date="1709553600">- enable SVG again
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711022400">- allow delegates to be executed, was disabled by default policy
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711108800">- allow stdin/stdout
- modified patches
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1712577600">- version update to 7.1.1.30
  * install perl module into user-specified prefix by @bugfood in #7192
  * Fix bmp option to bypass file size check by @OnTheList-1 in #7194
  * add support for encoding/decoding ultrahdr images by @aayushsoni111 in #7198
  * Updates to uhdr.c by @aayushsoni111 in #7217
- added patches
  fix https://github.com/ImageMagick/ImageMagick/issues/7230
  + ImageMagick-wmflite-detection.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713182400">- relax list-length resource limit, fixes build of python-Wand
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713787200">- version update to 7.1.1.31
  * Convert big PDF documents is slow #7263
  * Update release.yml #7258
  * Update README.md #7245
  * uhdr.c: verify the availability of error message before accessing it #7229
- removed patches
  - ImageMagick-wmflite-detection.patch (upstreamed)
  `</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1714910400">- version update to 7.1.1.32
  * Fix GIF ICC profile reading #7282
  * uhdr.c: add support for rgb inputs #7273</changelog>
  <changelog author="pgajdos@suse.com" date="1715860800">- reverted update-alternatives usage removal [bsc#1122033][bsc#1220818]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1716638400">- version update to 7.1.1.33
  * Fix typo in #7294
  * Bump azure/trusted-signing-action from 0.3.16 to 0.3.18 in #7325
  * Bump caphyon/advinst-github-action from 1.1 to 2.0 in #7326
- added patch
  + ImageMagick-update-image-signature.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1719144000">- version update to 7.1.1.34
  * Bump azure/trusted-signing-action from 0.3.18 to 0.3.19 in #7348
  * Fix a typo in convert deprecation warning in #7383
  * Bump azure/trusted-signing-action from 0.3.19 to 0.3.20 in #7388
  * Updated FontConfig query to include font index, fixing (#7374) in #7409
- removed patch (upstreamed)
  - ImageMagick-update-image-signature.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1721908800">- version update to 7.1.1.35
  * Also set dpi-x and dpi-y when running rsvg-convert. eac001f
  * convert sub-command is deprecated d67039e
  * only operators should disable "identify ping" (ImageMagick/ImageMagick#7441) a262192
  * fix compiler error ecc21c7
  * -outdir deprecated 9980efa
  * Get the correct width and height when heic:preserve-orientation is set to true. ed3a0dd
  * Set heic image orientation using transform information. ba470aa
  * Exit earlier when the symlink could not be created when invoking the svg:decode delegate. 8a48edd
  * Fixed MSYS2 build error. 3b22378
  * Also set the DNG properties when pinging the image. fc1c61b
  * Silence warning when lqr delegate is disabled. ae0d69a
  * Added version check for the heif_properties.h include. 656b4d2
  * Make sure we always use the i64 version of the "file methods" on Windows. b3e8a78
  * Changed defines to use method instead of a define. 75b66c4
  * Changes due to upgrade of libheif. 841f033
  * smooth the rendering of an ellipse (ImageMagick/ImageMagick#7465) 1bfce2a</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- version update to 7.1.1.36
  * uhdr.c: default initialize range field for hdr/sdr intent inputs to
    enc by @aayushsoni111 in #7482
  * Fixed typo in documentation of MagickAdaptiveBlurImage by @JonahEMorgan
    in #7500
  * Silence warning when freetype delegate is disabled. by @niclet in #7515</changelog>
  <changelog author="pgajdos@suse.com" date="1724760000">- version update to 7.1.1.37
  * Bump azure/trusted-signing-action from 0.3.20 to 0.4.0 #7518
  * Silence warning and fix HEIC_COMPUTE_NUMERIC_VERSION definition when heic delegate is disabled. #7516
  * protect macro arguments with parens 86cb2b1
  * eliminate compiler warnings d90d8b4
  * correct copyright year 115271e
  * Ignore multiple exif and xmp profiles for the same jxl frame and fix reading those profiles per frame. c301208
  * read/write in chunks fff3058
  * optimize fwrite() arguments ada6785
  * Renamed Output folder to Artifacts. 2a69677
  * cancel interactive window selection with right button press ea2a2db
  * cosmetic 712bde4
  * eliminate compiler warning 9a9a25c
  * eliminate compiler warning 0bd1687
  * Make images mandatory in the issue template. c01fd37
  * Added extra header detection for avif files. 9fc0590
  * allow SeekBlob() to set an offset beyond the end of the blob 27c3f99
  * be less forgiving for invalid image indexes 25db2e5
  * Fixed problem with empty macros (#7562) 9fda5f2
  * Added missing null checks for RequestOpenCLDevice. f85448e
  * Added missing null check for AcquireOpenCLCommandQueue. 295e9c8
  * persist app1 jpeg profile (ImageMagick/ImageMagick#4713) f0357c7
  * Fixed build error. b3dd431
  * Remove some of the dependencies for the macos-13 build. d0bce95
  * parentheses is the plural of parenthesis 1fac80a
  * distribute quantization error for -dither FloydSteinberg -depth 5b2825b
  * release 8a0da9f
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565</changelog>
  <changelog author="pgajdos@suse.com" date="1726228800">- version update to 7.1.1.38
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565
  * beta release 250b748
  * deprecate the -respect-paranthesis option 4e7d789
  * Build fixes. b80c509
  * save IPTC + ICC profiles are profiles, not properties 25d5335
  * update copyright year 4caf7d1
  * Patch to fix reading of the ICC profile. 18377f9
  * prepping framework to interact with X11 clipboard b20dda3
  * Build fix. 20a5af3
  * More build fixes. c36fdf0
  * Another attempt to silence the warnings. 600708c
  * Use SetImageProfilePrivate to avoid duplicate allocations. f246eab
  * support clipboard delegate 39a135a
  * restore clipboard.c 1070b17
  * improved rounding 27a0a9c
  * don't allow negative scenes 8fda05a
  * eliminate compiler warnings 878daf9
- modified patches
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1728216000">- version update to 7.1.1.39
  * Add missing Threshold command to command array of Region of Interest mode #7606
  * uhdr.c: update uhdr coder for gainmap metadata configuration #7635
  * uhdr: fix language choice in autoconf #7663</changelog>
  <changelog author="Yann BOYER &lt;yann.boyer742@gmail.com&gt;" date="1731326400">- version update to 7.1.1.40
  * .cut (Dr Halo) reading when run count in header #7734
  * Bump azure/trusted-signing-action from 0.4.0 to 0.5.0 #7725
  * Implement Magic Kernel Sharp 2013 and 2021 #7701
  * don't process TIFF image if there is an exception
  * Corrected check for indexed channels in PSD files.
  * export exception when undo resource limit exceeded</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1731844800">- version update to 7.1.1.41
  * Fix compiler identification with Clang on Darwin in #7773
  * revert map changes breaking ABI in #7768</changelog>
</package>
<package pkgid="4e777a0cae869fcf03312b6872fc2b49ee3a05cfce4ea7d84a57bf69ad23eab19e0168e005263973e1f843db9843a3d36ba4283b6bbaab5bd1af99bdaff8c0d2" name="ImageMagick-debuginfo" arch="i586">
  <version epoch="0" ver="7.1.1.36" rel="1.1"/>
  <changelog author="munix9@googlemail.com" date="1705233600">- Fix incomplete removal of update-alternatives for config
- Replace obsolete 'otherproviders(imagick-%{config_spec})' with
  'Conflicts: imagick-%{config_spec}'</changelog>
  <changelog author="pgajdos@suse.com" date="1705320000">- use correct policy.xml</changelog>
  <changelog author="pgajdos@suse.com" date="1705406400">- only one configuration again, based on upstream 'secure' policy
- other upstream policies packaged in documentation</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1705838400">- version update to 7.1.1.27
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1707652800">- version update to 7.1.1.28
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Michael Vetter &lt;mvetter@suse.com&gt;" date="1708603200">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1709035200">- version update to 7.1.1.29
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709380800">- We can not replace a symlink with a directory on the directly
  Unregister the whole group manually in %pre with
  update-alternatives. (boo#1220818)
  Restore Requires(pre) on update-alternatives for the mean time.</changelog>
  <changelog author="pgajdos@suse.com" date="1709553600">- enable SVG again
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711022400">- allow delegates to be executed, was disabled by default policy
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711108800">- allow stdin/stdout
- modified patches
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1712577600">- version update to 7.1.1.30
  * install perl module into user-specified prefix by @bugfood in #7192
  * Fix bmp option to bypass file size check by @OnTheList-1 in #7194
  * add support for encoding/decoding ultrahdr images by @aayushsoni111 in #7198
  * Updates to uhdr.c by @aayushsoni111 in #7217
- added patches
  fix https://github.com/ImageMagick/ImageMagick/issues/7230
  + ImageMagick-wmflite-detection.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713182400">- relax list-length resource limit, fixes build of python-Wand
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713787200">- version update to 7.1.1.31
  * Convert big PDF documents is slow #7263
  * Update release.yml #7258
  * Update README.md #7245
  * uhdr.c: verify the availability of error message before accessing it #7229
- removed patches
  - ImageMagick-wmflite-detection.patch (upstreamed)
  `</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1714910400">- version update to 7.1.1.32
  * Fix GIF ICC profile reading #7282
  * uhdr.c: add support for rgb inputs #7273</changelog>
  <changelog author="pgajdos@suse.com" date="1715860800">- reverted update-alternatives usage removal [bsc#1122033][bsc#1220818]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1716638400">- version update to 7.1.1.33
  * Fix typo in #7294
  * Bump azure/trusted-signing-action from 0.3.16 to 0.3.18 in #7325
  * Bump caphyon/advinst-github-action from 1.1 to 2.0 in #7326
- added patch
  + ImageMagick-update-image-signature.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1719144000">- version update to 7.1.1.34
  * Bump azure/trusted-signing-action from 0.3.18 to 0.3.19 in #7348
  * Fix a typo in convert deprecation warning in #7383
  * Bump azure/trusted-signing-action from 0.3.19 to 0.3.20 in #7388
  * Updated FontConfig query to include font index, fixing (#7374) in #7409
- removed patch (upstreamed)
  - ImageMagick-update-image-signature.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1721908800">- version update to 7.1.1.35
  * Also set dpi-x and dpi-y when running rsvg-convert. eac001f
  * convert sub-command is deprecated d67039e
  * only operators should disable "identify ping" (ImageMagick/ImageMagick#7441) a262192
  * fix compiler error ecc21c7
  * -outdir deprecated 9980efa
  * Get the correct width and height when heic:preserve-orientation is set to true. ed3a0dd
  * Set heic image orientation using transform information. ba470aa
  * Exit earlier when the symlink could not be created when invoking the svg:decode delegate. 8a48edd
  * Fixed MSYS2 build error. 3b22378
  * Also set the DNG properties when pinging the image. fc1c61b
  * Silence warning when lqr delegate is disabled. ae0d69a
  * Added version check for the heif_properties.h include. 656b4d2
  * Make sure we always use the i64 version of the "file methods" on Windows. b3e8a78
  * Changed defines to use method instead of a define. 75b66c4
  * Changes due to upgrade of libheif. 841f033
  * smooth the rendering of an ellipse (ImageMagick/ImageMagick#7465) 1bfce2a</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- version update to 7.1.1.36
  * uhdr.c: default initialize range field for hdr/sdr intent inputs to
    enc by @aayushsoni111 in #7482
  * Fixed typo in documentation of MagickAdaptiveBlurImage by @JonahEMorgan
    in #7500
  * Silence warning when freetype delegate is disabled. by @niclet in #7515</changelog>
</package>
<package pkgid="b3ecf11c40eeec22690ac76da0b2fb3ef0bc4d9d426dd436b8cfd192f10e038038e6d54b688978de532aa0405faa63cb269154be8cf378313b48907cae0142d3" name="ImageMagick-debuginfo" arch="x86_64">
  <version epoch="0" ver="7.1.1.36" rel="1.1"/>
  <changelog author="munix9@googlemail.com" date="1705233600">- Fix incomplete removal of update-alternatives for config
- Replace obsolete 'otherproviders(imagick-%{config_spec})' with
  'Conflicts: imagick-%{config_spec}'</changelog>
  <changelog author="pgajdos@suse.com" date="1705320000">- use correct policy.xml</changelog>
  <changelog author="pgajdos@suse.com" date="1705406400">- only one configuration again, based on upstream 'secure' policy
- other upstream policies packaged in documentation</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1705838400">- version update to 7.1.1.27
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1707652800">- version update to 7.1.1.28
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Michael Vetter &lt;mvetter@suse.com&gt;" date="1708603200">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1709035200">- version update to 7.1.1.29
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709380800">- We can not replace a symlink with a directory on the directly
  Unregister the whole group manually in %pre with
  update-alternatives. (boo#1220818)
  Restore Requires(pre) on update-alternatives for the mean time.</changelog>
  <changelog author="pgajdos@suse.com" date="1709553600">- enable SVG again
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711022400">- allow delegates to be executed, was disabled by default policy
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711108800">- allow stdin/stdout
- modified patches
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1712577600">- version update to 7.1.1.30
  * install perl module into user-specified prefix by @bugfood in #7192
  * Fix bmp option to bypass file size check by @OnTheList-1 in #7194
  * add support for encoding/decoding ultrahdr images by @aayushsoni111 in #7198
  * Updates to uhdr.c by @aayushsoni111 in #7217
- added patches
  fix https://github.com/ImageMagick/ImageMagick/issues/7230
  + ImageMagick-wmflite-detection.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713182400">- relax list-length resource limit, fixes build of python-Wand
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713787200">- version update to 7.1.1.31
  * Convert big PDF documents is slow #7263
  * Update release.yml #7258
  * Update README.md #7245
  * uhdr.c: verify the availability of error message before accessing it #7229
- removed patches
  - ImageMagick-wmflite-detection.patch (upstreamed)
  `</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1714910400">- version update to 7.1.1.32
  * Fix GIF ICC profile reading #7282
  * uhdr.c: add support for rgb inputs #7273</changelog>
  <changelog author="pgajdos@suse.com" date="1715860800">- reverted update-alternatives usage removal [bsc#1122033][bsc#1220818]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1716638400">- version update to 7.1.1.33
  * Fix typo in #7294
  * Bump azure/trusted-signing-action from 0.3.16 to 0.3.18 in #7325
  * Bump caphyon/advinst-github-action from 1.1 to 2.0 in #7326
- added patch
  + ImageMagick-update-image-signature.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1719144000">- version update to 7.1.1.34
  * Bump azure/trusted-signing-action from 0.3.18 to 0.3.19 in #7348
  * Fix a typo in convert deprecation warning in #7383
  * Bump azure/trusted-signing-action from 0.3.19 to 0.3.20 in #7388
  * Updated FontConfig query to include font index, fixing (#7374) in #7409
- removed patch (upstreamed)
  - ImageMagick-update-image-signature.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1721908800">- version update to 7.1.1.35
  * Also set dpi-x and dpi-y when running rsvg-convert. eac001f
  * convert sub-command is deprecated d67039e
  * only operators should disable "identify ping" (ImageMagick/ImageMagick#7441) a262192
  * fix compiler error ecc21c7
  * -outdir deprecated 9980efa
  * Get the correct width and height when heic:preserve-orientation is set to true. ed3a0dd
  * Set heic image orientation using transform information. ba470aa
  * Exit earlier when the symlink could not be created when invoking the svg:decode delegate. 8a48edd
  * Fixed MSYS2 build error. 3b22378
  * Also set the DNG properties when pinging the image. fc1c61b
  * Silence warning when lqr delegate is disabled. ae0d69a
  * Added version check for the heif_properties.h include. 656b4d2
  * Make sure we always use the i64 version of the "file methods" on Windows. b3e8a78
  * Changed defines to use method instead of a define. 75b66c4
  * Changes due to upgrade of libheif. 841f033
  * smooth the rendering of an ellipse (ImageMagick/ImageMagick#7465) 1bfce2a</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- version update to 7.1.1.36
  * uhdr.c: default initialize range field for hdr/sdr intent inputs to
    enc by @aayushsoni111 in #7482
  * Fixed typo in documentation of MagickAdaptiveBlurImage by @JonahEMorgan
    in #7500
  * Silence warning when freetype delegate is disabled. by @niclet in #7515</changelog>
</package>
<package pkgid="bd0da55a709ebcfa591caa8c96d1cbdfa8a8bd90bba7479153482b6d849addeba1b7fadb898dbc73abb51b284f43c28cbce0790cd5264de5026345001131261a" name="ImageMagick-debuginfo" arch="i586">
  <version epoch="0" ver="7.1.1.37" rel="1.0.4.1.sr20240803"/>
  <changelog author="pgajdos@suse.com" date="1705320000">- use correct policy.xml</changelog>
  <changelog author="pgajdos@suse.com" date="1705406400">- only one configuration again, based on upstream 'secure' policy
- other upstream policies packaged in documentation</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1705838400">- version update to 7.1.1.27
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1707652800">- version update to 7.1.1.28
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Michael Vetter &lt;mvetter@suse.com&gt;" date="1708603200">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1709035200">- version update to 7.1.1.29
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709380800">- We can not replace a symlink with a directory on the directly
  Unregister the whole group manually in %pre with
  update-alternatives. (boo#1220818)
  Restore Requires(pre) on update-alternatives for the mean time.</changelog>
  <changelog author="pgajdos@suse.com" date="1709553600">- enable SVG again
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711022400">- allow delegates to be executed, was disabled by default policy
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711108800">- allow stdin/stdout
- modified patches
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1712577600">- version update to 7.1.1.30
  * install perl module into user-specified prefix by @bugfood in #7192
  * Fix bmp option to bypass file size check by @OnTheList-1 in #7194
  * add support for encoding/decoding ultrahdr images by @aayushsoni111 in #7198
  * Updates to uhdr.c by @aayushsoni111 in #7217
- added patches
  fix https://github.com/ImageMagick/ImageMagick/issues/7230
  + ImageMagick-wmflite-detection.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713182400">- relax list-length resource limit, fixes build of python-Wand
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713787200">- version update to 7.1.1.31
  * Convert big PDF documents is slow #7263
  * Update release.yml #7258
  * Update README.md #7245
  * uhdr.c: verify the availability of error message before accessing it #7229
- removed patches
  - ImageMagick-wmflite-detection.patch (upstreamed)
  `</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1714910400">- version update to 7.1.1.32
  * Fix GIF ICC profile reading #7282
  * uhdr.c: add support for rgb inputs #7273</changelog>
  <changelog author="pgajdos@suse.com" date="1715860800">- reverted update-alternatives usage removal [bsc#1122033][bsc#1220818]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1716638400">- version update to 7.1.1.33
  * Fix typo in #7294
  * Bump azure/trusted-signing-action from 0.3.16 to 0.3.18 in #7325
  * Bump caphyon/advinst-github-action from 1.1 to 2.0 in #7326
- added patch
  + ImageMagick-update-image-signature.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1719144000">- version update to 7.1.1.34
  * Bump azure/trusted-signing-action from 0.3.18 to 0.3.19 in #7348
  * Fix a typo in convert deprecation warning in #7383
  * Bump azure/trusted-signing-action from 0.3.19 to 0.3.20 in #7388
  * Updated FontConfig query to include font index, fixing (#7374) in #7409
- removed patch (upstreamed)
  - ImageMagick-update-image-signature.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1721908800">- version update to 7.1.1.35
  * Also set dpi-x and dpi-y when running rsvg-convert. eac001f
  * convert sub-command is deprecated d67039e
  * only operators should disable "identify ping" (ImageMagick/ImageMagick#7441) a262192
  * fix compiler error ecc21c7
  * -outdir deprecated 9980efa
  * Get the correct width and height when heic:preserve-orientation is set to true. ed3a0dd
  * Set heic image orientation using transform information. ba470aa
  * Exit earlier when the symlink could not be created when invoking the svg:decode delegate. 8a48edd
  * Fixed MSYS2 build error. 3b22378
  * Also set the DNG properties when pinging the image. fc1c61b
  * Silence warning when lqr delegate is disabled. ae0d69a
  * Added version check for the heif_properties.h include. 656b4d2
  * Make sure we always use the i64 version of the "file methods" on Windows. b3e8a78
  * Changed defines to use method instead of a define. 75b66c4
  * Changes due to upgrade of libheif. 841f033
  * smooth the rendering of an ellipse (ImageMagick/ImageMagick#7465) 1bfce2a</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- version update to 7.1.1.36
  * uhdr.c: default initialize range field for hdr/sdr intent inputs to
    enc by @aayushsoni111 in #7482
  * Fixed typo in documentation of MagickAdaptiveBlurImage by @JonahEMorgan
    in #7500
  * Silence warning when freetype delegate is disabled. by @niclet in #7515</changelog>
  <changelog author="pgajdos@suse.com" date="1724760000">- version update to 7.1.1.37
  * Bump azure/trusted-signing-action from 0.3.20 to 0.4.0 #7518
  * Silence warning and fix HEIC_COMPUTE_NUMERIC_VERSION definition when heic delegate is disabled. #7516
  * protect macro arguments with parens 86cb2b1
  * eliminate compiler warnings d90d8b4
  * correct copyright year 115271e
  * Ignore multiple exif and xmp profiles for the same jxl frame and fix reading those profiles per frame. c301208
  * read/write in chunks fff3058
  * optimize fwrite() arguments ada6785
  * Renamed Output folder to Artifacts. 2a69677
  * cancel interactive window selection with right button press ea2a2db
  * cosmetic 712bde4
  * eliminate compiler warning 9a9a25c
  * eliminate compiler warning 0bd1687
  * Make images mandatory in the issue template. c01fd37
  * Added extra header detection for avif files. 9fc0590
  * allow SeekBlob() to set an offset beyond the end of the blob 27c3f99
  * be less forgiving for invalid image indexes 25db2e5
  * Fixed problem with empty macros (#7562) 9fda5f2
  * Added missing null checks for RequestOpenCLDevice. f85448e
  * Added missing null check for AcquireOpenCLCommandQueue. 295e9c8
  * persist app1 jpeg profile (ImageMagick/ImageMagick#4713) f0357c7
  * Fixed build error. b3dd431
  * Remove some of the dependencies for the macos-13 build. d0bce95
  * parentheses is the plural of parenthesis 1fac80a
  * distribute quantization error for -dither FloydSteinberg -depth 5b2825b
  * release 8a0da9f
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565</changelog>
</package>
<package pkgid="23f6d494bc24def23a8ab284aac99395aaae948cbffef61436fdc403a04c98b63ae58f6eaa899b7d8771d356d9120a6f46e7e93e9e3bba6251742d1a7f7b3d68" name="ImageMagick-debuginfo" arch="x86_64">
  <version epoch="0" ver="7.1.1.37" rel="1.0.4.1.sr20240803"/>
  <changelog author="pgajdos@suse.com" date="1705320000">- use correct policy.xml</changelog>
  <changelog author="pgajdos@suse.com" date="1705406400">- only one configuration again, based on upstream 'secure' policy
- other upstream policies packaged in documentation</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1705838400">- version update to 7.1.1.27
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1707652800">- version update to 7.1.1.28
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Michael Vetter &lt;mvetter@suse.com&gt;" date="1708603200">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1709035200">- version update to 7.1.1.29
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709380800">- We can not replace a symlink with a directory on the directly
  Unregister the whole group manually in %pre with
  update-alternatives. (boo#1220818)
  Restore Requires(pre) on update-alternatives for the mean time.</changelog>
  <changelog author="pgajdos@suse.com" date="1709553600">- enable SVG again
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711022400">- allow delegates to be executed, was disabled by default policy
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711108800">- allow stdin/stdout
- modified patches
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1712577600">- version update to 7.1.1.30
  * install perl module into user-specified prefix by @bugfood in #7192
  * Fix bmp option to bypass file size check by @OnTheList-1 in #7194
  * add support for encoding/decoding ultrahdr images by @aayushsoni111 in #7198
  * Updates to uhdr.c by @aayushsoni111 in #7217
- added patches
  fix https://github.com/ImageMagick/ImageMagick/issues/7230
  + ImageMagick-wmflite-detection.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713182400">- relax list-length resource limit, fixes build of python-Wand
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713787200">- version update to 7.1.1.31
  * Convert big PDF documents is slow #7263
  * Update release.yml #7258
  * Update README.md #7245
  * uhdr.c: verify the availability of error message before accessing it #7229
- removed patches
  - ImageMagick-wmflite-detection.patch (upstreamed)
  `</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1714910400">- version update to 7.1.1.32
  * Fix GIF ICC profile reading #7282
  * uhdr.c: add support for rgb inputs #7273</changelog>
  <changelog author="pgajdos@suse.com" date="1715860800">- reverted update-alternatives usage removal [bsc#1122033][bsc#1220818]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1716638400">- version update to 7.1.1.33
  * Fix typo in #7294
  * Bump azure/trusted-signing-action from 0.3.16 to 0.3.18 in #7325
  * Bump caphyon/advinst-github-action from 1.1 to 2.0 in #7326
- added patch
  + ImageMagick-update-image-signature.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1719144000">- version update to 7.1.1.34
  * Bump azure/trusted-signing-action from 0.3.18 to 0.3.19 in #7348
  * Fix a typo in convert deprecation warning in #7383
  * Bump azure/trusted-signing-action from 0.3.19 to 0.3.20 in #7388
  * Updated FontConfig query to include font index, fixing (#7374) in #7409
- removed patch (upstreamed)
  - ImageMagick-update-image-signature.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1721908800">- version update to 7.1.1.35
  * Also set dpi-x and dpi-y when running rsvg-convert. eac001f
  * convert sub-command is deprecated d67039e
  * only operators should disable "identify ping" (ImageMagick/ImageMagick#7441) a262192
  * fix compiler error ecc21c7
  * -outdir deprecated 9980efa
  * Get the correct width and height when heic:preserve-orientation is set to true. ed3a0dd
  * Set heic image orientation using transform information. ba470aa
  * Exit earlier when the symlink could not be created when invoking the svg:decode delegate. 8a48edd
  * Fixed MSYS2 build error. 3b22378
  * Also set the DNG properties when pinging the image. fc1c61b
  * Silence warning when lqr delegate is disabled. ae0d69a
  * Added version check for the heif_properties.h include. 656b4d2
  * Make sure we always use the i64 version of the "file methods" on Windows. b3e8a78
  * Changed defines to use method instead of a define. 75b66c4
  * Changes due to upgrade of libheif. 841f033
  * smooth the rendering of an ellipse (ImageMagick/ImageMagick#7465) 1bfce2a</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- version update to 7.1.1.36
  * uhdr.c: default initialize range field for hdr/sdr intent inputs to
    enc by @aayushsoni111 in #7482
  * Fixed typo in documentation of MagickAdaptiveBlurImage by @JonahEMorgan
    in #7500
  * Silence warning when freetype delegate is disabled. by @niclet in #7515</changelog>
  <changelog author="pgajdos@suse.com" date="1724760000">- version update to 7.1.1.37
  * Bump azure/trusted-signing-action from 0.3.20 to 0.4.0 #7518
  * Silence warning and fix HEIC_COMPUTE_NUMERIC_VERSION definition when heic delegate is disabled. #7516
  * protect macro arguments with parens 86cb2b1
  * eliminate compiler warnings d90d8b4
  * correct copyright year 115271e
  * Ignore multiple exif and xmp profiles for the same jxl frame and fix reading those profiles per frame. c301208
  * read/write in chunks fff3058
  * optimize fwrite() arguments ada6785
  * Renamed Output folder to Artifacts. 2a69677
  * cancel interactive window selection with right button press ea2a2db
  * cosmetic 712bde4
  * eliminate compiler warning 9a9a25c
  * eliminate compiler warning 0bd1687
  * Make images mandatory in the issue template. c01fd37
  * Added extra header detection for avif files. 9fc0590
  * allow SeekBlob() to set an offset beyond the end of the blob 27c3f99
  * be less forgiving for invalid image indexes 25db2e5
  * Fixed problem with empty macros (#7562) 9fda5f2
  * Added missing null checks for RequestOpenCLDevice. f85448e
  * Added missing null check for AcquireOpenCLCommandQueue. 295e9c8
  * persist app1 jpeg profile (ImageMagick/ImageMagick#4713) f0357c7
  * Fixed build error. b3dd431
  * Remove some of the dependencies for the macos-13 build. d0bce95
  * parentheses is the plural of parenthesis 1fac80a
  * distribute quantization error for -dither FloydSteinberg -depth 5b2825b
  * release 8a0da9f
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565</changelog>
</package>
<package pkgid="014f5b8ae81ba66ba59250decab0185a90e369388313755011b4a8869eafb466dbfb636408e80d24653b32663e12a9ccb3fe11e83beeb21e0da53ef91726cbf2" name="ImageMagick-debuginfo" arch="i586">
  <version epoch="0" ver="7.1.1.37" rel="1.1"/>
  <changelog author="pgajdos@suse.com" date="1705320000">- use correct policy.xml</changelog>
  <changelog author="pgajdos@suse.com" date="1705406400">- only one configuration again, based on upstream 'secure' policy
- other upstream policies packaged in documentation</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1705838400">- version update to 7.1.1.27
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1707652800">- version update to 7.1.1.28
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Michael Vetter &lt;mvetter@suse.com&gt;" date="1708603200">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1709035200">- version update to 7.1.1.29
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709380800">- We can not replace a symlink with a directory on the directly
  Unregister the whole group manually in %pre with
  update-alternatives. (boo#1220818)
  Restore Requires(pre) on update-alternatives for the mean time.</changelog>
  <changelog author="pgajdos@suse.com" date="1709553600">- enable SVG again
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711022400">- allow delegates to be executed, was disabled by default policy
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711108800">- allow stdin/stdout
- modified patches
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1712577600">- version update to 7.1.1.30
  * install perl module into user-specified prefix by @bugfood in #7192
  * Fix bmp option to bypass file size check by @OnTheList-1 in #7194
  * add support for encoding/decoding ultrahdr images by @aayushsoni111 in #7198
  * Updates to uhdr.c by @aayushsoni111 in #7217
- added patches
  fix https://github.com/ImageMagick/ImageMagick/issues/7230
  + ImageMagick-wmflite-detection.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713182400">- relax list-length resource limit, fixes build of python-Wand
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713787200">- version update to 7.1.1.31
  * Convert big PDF documents is slow #7263
  * Update release.yml #7258
  * Update README.md #7245
  * uhdr.c: verify the availability of error message before accessing it #7229
- removed patches
  - ImageMagick-wmflite-detection.patch (upstreamed)
  `</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1714910400">- version update to 7.1.1.32
  * Fix GIF ICC profile reading #7282
  * uhdr.c: add support for rgb inputs #7273</changelog>
  <changelog author="pgajdos@suse.com" date="1715860800">- reverted update-alternatives usage removal [bsc#1122033][bsc#1220818]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1716638400">- version update to 7.1.1.33
  * Fix typo in #7294
  * Bump azure/trusted-signing-action from 0.3.16 to 0.3.18 in #7325
  * Bump caphyon/advinst-github-action from 1.1 to 2.0 in #7326
- added patch
  + ImageMagick-update-image-signature.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1719144000">- version update to 7.1.1.34
  * Bump azure/trusted-signing-action from 0.3.18 to 0.3.19 in #7348
  * Fix a typo in convert deprecation warning in #7383
  * Bump azure/trusted-signing-action from 0.3.19 to 0.3.20 in #7388
  * Updated FontConfig query to include font index, fixing (#7374) in #7409
- removed patch (upstreamed)
  - ImageMagick-update-image-signature.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1721908800">- version update to 7.1.1.35
  * Also set dpi-x and dpi-y when running rsvg-convert. eac001f
  * convert sub-command is deprecated d67039e
  * only operators should disable "identify ping" (ImageMagick/ImageMagick#7441) a262192
  * fix compiler error ecc21c7
  * -outdir deprecated 9980efa
  * Get the correct width and height when heic:preserve-orientation is set to true. ed3a0dd
  * Set heic image orientation using transform information. ba470aa
  * Exit earlier when the symlink could not be created when invoking the svg:decode delegate. 8a48edd
  * Fixed MSYS2 build error. 3b22378
  * Also set the DNG properties when pinging the image. fc1c61b
  * Silence warning when lqr delegate is disabled. ae0d69a
  * Added version check for the heif_properties.h include. 656b4d2
  * Make sure we always use the i64 version of the "file methods" on Windows. b3e8a78
  * Changed defines to use method instead of a define. 75b66c4
  * Changes due to upgrade of libheif. 841f033
  * smooth the rendering of an ellipse (ImageMagick/ImageMagick#7465) 1bfce2a</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- version update to 7.1.1.36
  * uhdr.c: default initialize range field for hdr/sdr intent inputs to
    enc by @aayushsoni111 in #7482
  * Fixed typo in documentation of MagickAdaptiveBlurImage by @JonahEMorgan
    in #7500
  * Silence warning when freetype delegate is disabled. by @niclet in #7515</changelog>
  <changelog author="pgajdos@suse.com" date="1724760000">- version update to 7.1.1.37
  * Bump azure/trusted-signing-action from 0.3.20 to 0.4.0 #7518
  * Silence warning and fix HEIC_COMPUTE_NUMERIC_VERSION definition when heic delegate is disabled. #7516
  * protect macro arguments with parens 86cb2b1
  * eliminate compiler warnings d90d8b4
  * correct copyright year 115271e
  * Ignore multiple exif and xmp profiles for the same jxl frame and fix reading those profiles per frame. c301208
  * read/write in chunks fff3058
  * optimize fwrite() arguments ada6785
  * Renamed Output folder to Artifacts. 2a69677
  * cancel interactive window selection with right button press ea2a2db
  * cosmetic 712bde4
  * eliminate compiler warning 9a9a25c
  * eliminate compiler warning 0bd1687
  * Make images mandatory in the issue template. c01fd37
  * Added extra header detection for avif files. 9fc0590
  * allow SeekBlob() to set an offset beyond the end of the blob 27c3f99
  * be less forgiving for invalid image indexes 25db2e5
  * Fixed problem with empty macros (#7562) 9fda5f2
  * Added missing null checks for RequestOpenCLDevice. f85448e
  * Added missing null check for AcquireOpenCLCommandQueue. 295e9c8
  * persist app1 jpeg profile (ImageMagick/ImageMagick#4713) f0357c7
  * Fixed build error. b3dd431
  * Remove some of the dependencies for the macos-13 build. d0bce95
  * parentheses is the plural of parenthesis 1fac80a
  * distribute quantization error for -dither FloydSteinberg -depth 5b2825b
  * release 8a0da9f
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565</changelog>
</package>
<package pkgid="18d9994fee398440ca5cccb56b0802d43a10de8b55b92122e93eb76ba7873cc0269c8edb06fc39f1a1505095778b969ca58a53626cf76da9fa3f277e1107ddac" name="ImageMagick-debuginfo" arch="x86_64">
  <version epoch="0" ver="7.1.1.37" rel="1.1"/>
  <changelog author="pgajdos@suse.com" date="1705320000">- use correct policy.xml</changelog>
  <changelog author="pgajdos@suse.com" date="1705406400">- only one configuration again, based on upstream 'secure' policy
- other upstream policies packaged in documentation</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1705838400">- version update to 7.1.1.27
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1707652800">- version update to 7.1.1.28
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Michael Vetter &lt;mvetter@suse.com&gt;" date="1708603200">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1709035200">- version update to 7.1.1.29
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709380800">- We can not replace a symlink with a directory on the directly
  Unregister the whole group manually in %pre with
  update-alternatives. (boo#1220818)
  Restore Requires(pre) on update-alternatives for the mean time.</changelog>
  <changelog author="pgajdos@suse.com" date="1709553600">- enable SVG again
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711022400">- allow delegates to be executed, was disabled by default policy
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711108800">- allow stdin/stdout
- modified patches
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1712577600">- version update to 7.1.1.30
  * install perl module into user-specified prefix by @bugfood in #7192
  * Fix bmp option to bypass file size check by @OnTheList-1 in #7194
  * add support for encoding/decoding ultrahdr images by @aayushsoni111 in #7198
  * Updates to uhdr.c by @aayushsoni111 in #7217
- added patches
  fix https://github.com/ImageMagick/ImageMagick/issues/7230
  + ImageMagick-wmflite-detection.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713182400">- relax list-length resource limit, fixes build of python-Wand
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713787200">- version update to 7.1.1.31
  * Convert big PDF documents is slow #7263
  * Update release.yml #7258
  * Update README.md #7245
  * uhdr.c: verify the availability of error message before accessing it #7229
- removed patches
  - ImageMagick-wmflite-detection.patch (upstreamed)
  `</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1714910400">- version update to 7.1.1.32
  * Fix GIF ICC profile reading #7282
  * uhdr.c: add support for rgb inputs #7273</changelog>
  <changelog author="pgajdos@suse.com" date="1715860800">- reverted update-alternatives usage removal [bsc#1122033][bsc#1220818]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1716638400">- version update to 7.1.1.33
  * Fix typo in #7294
  * Bump azure/trusted-signing-action from 0.3.16 to 0.3.18 in #7325
  * Bump caphyon/advinst-github-action from 1.1 to 2.0 in #7326
- added patch
  + ImageMagick-update-image-signature.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1719144000">- version update to 7.1.1.34
  * Bump azure/trusted-signing-action from 0.3.18 to 0.3.19 in #7348
  * Fix a typo in convert deprecation warning in #7383
  * Bump azure/trusted-signing-action from 0.3.19 to 0.3.20 in #7388
  * Updated FontConfig query to include font index, fixing (#7374) in #7409
- removed patch (upstreamed)
  - ImageMagick-update-image-signature.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1721908800">- version update to 7.1.1.35
  * Also set dpi-x and dpi-y when running rsvg-convert. eac001f
  * convert sub-command is deprecated d67039e
  * only operators should disable "identify ping" (ImageMagick/ImageMagick#7441) a262192
  * fix compiler error ecc21c7
  * -outdir deprecated 9980efa
  * Get the correct width and height when heic:preserve-orientation is set to true. ed3a0dd
  * Set heic image orientation using transform information. ba470aa
  * Exit earlier when the symlink could not be created when invoking the svg:decode delegate. 8a48edd
  * Fixed MSYS2 build error. 3b22378
  * Also set the DNG properties when pinging the image. fc1c61b
  * Silence warning when lqr delegate is disabled. ae0d69a
  * Added version check for the heif_properties.h include. 656b4d2
  * Make sure we always use the i64 version of the "file methods" on Windows. b3e8a78
  * Changed defines to use method instead of a define. 75b66c4
  * Changes due to upgrade of libheif. 841f033
  * smooth the rendering of an ellipse (ImageMagick/ImageMagick#7465) 1bfce2a</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- version update to 7.1.1.36
  * uhdr.c: default initialize range field for hdr/sdr intent inputs to
    enc by @aayushsoni111 in #7482
  * Fixed typo in documentation of MagickAdaptiveBlurImage by @JonahEMorgan
    in #7500
  * Silence warning when freetype delegate is disabled. by @niclet in #7515</changelog>
  <changelog author="pgajdos@suse.com" date="1724760000">- version update to 7.1.1.37
  * Bump azure/trusted-signing-action from 0.3.20 to 0.4.0 #7518
  * Silence warning and fix HEIC_COMPUTE_NUMERIC_VERSION definition when heic delegate is disabled. #7516
  * protect macro arguments with parens 86cb2b1
  * eliminate compiler warnings d90d8b4
  * correct copyright year 115271e
  * Ignore multiple exif and xmp profiles for the same jxl frame and fix reading those profiles per frame. c301208
  * read/write in chunks fff3058
  * optimize fwrite() arguments ada6785
  * Renamed Output folder to Artifacts. 2a69677
  * cancel interactive window selection with right button press ea2a2db
  * cosmetic 712bde4
  * eliminate compiler warning 9a9a25c
  * eliminate compiler warning 0bd1687
  * Make images mandatory in the issue template. c01fd37
  * Added extra header detection for avif files. 9fc0590
  * allow SeekBlob() to set an offset beyond the end of the blob 27c3f99
  * be less forgiving for invalid image indexes 25db2e5
  * Fixed problem with empty macros (#7562) 9fda5f2
  * Added missing null checks for RequestOpenCLDevice. f85448e
  * Added missing null check for AcquireOpenCLCommandQueue. 295e9c8
  * persist app1 jpeg profile (ImageMagick/ImageMagick#4713) f0357c7
  * Fixed build error. b3dd431
  * Remove some of the dependencies for the macos-13 build. d0bce95
  * parentheses is the plural of parenthesis 1fac80a
  * distribute quantization error for -dither FloydSteinberg -depth 5b2825b
  * release 8a0da9f
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565</changelog>
</package>
<package pkgid="487aa368ad5cb2617e1dc5b0f3a25bbcc47e26d15be5a957545fab3bd88ccc49c65fe0122035a62237940e96e79e10eba04b7ca796ebd32cce11e90a229b2654" name="ImageMagick-debuginfo" arch="i586">
  <version epoch="0" ver="7.1.1.39" rel="1.1"/>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1705838400">- version update to 7.1.1.27
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1707652800">- version update to 7.1.1.28
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Michael Vetter &lt;mvetter@suse.com&gt;" date="1708603200">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1709035200">- version update to 7.1.1.29
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709380800">- We can not replace a symlink with a directory on the directly
  Unregister the whole group manually in %pre with
  update-alternatives. (boo#1220818)
  Restore Requires(pre) on update-alternatives for the mean time.</changelog>
  <changelog author="pgajdos@suse.com" date="1709553600">- enable SVG again
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711022400">- allow delegates to be executed, was disabled by default policy
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711108800">- allow stdin/stdout
- modified patches
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1712577600">- version update to 7.1.1.30
  * install perl module into user-specified prefix by @bugfood in #7192
  * Fix bmp option to bypass file size check by @OnTheList-1 in #7194
  * add support for encoding/decoding ultrahdr images by @aayushsoni111 in #7198
  * Updates to uhdr.c by @aayushsoni111 in #7217
- added patches
  fix https://github.com/ImageMagick/ImageMagick/issues/7230
  + ImageMagick-wmflite-detection.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713182400">- relax list-length resource limit, fixes build of python-Wand
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713787200">- version update to 7.1.1.31
  * Convert big PDF documents is slow #7263
  * Update release.yml #7258
  * Update README.md #7245
  * uhdr.c: verify the availability of error message before accessing it #7229
- removed patches
  - ImageMagick-wmflite-detection.patch (upstreamed)
  `</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1714910400">- version update to 7.1.1.32
  * Fix GIF ICC profile reading #7282
  * uhdr.c: add support for rgb inputs #7273</changelog>
  <changelog author="pgajdos@suse.com" date="1715860800">- reverted update-alternatives usage removal [bsc#1122033][bsc#1220818]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1716638400">- version update to 7.1.1.33
  * Fix typo in #7294
  * Bump azure/trusted-signing-action from 0.3.16 to 0.3.18 in #7325
  * Bump caphyon/advinst-github-action from 1.1 to 2.0 in #7326
- added patch
  + ImageMagick-update-image-signature.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1719144000">- version update to 7.1.1.34
  * Bump azure/trusted-signing-action from 0.3.18 to 0.3.19 in #7348
  * Fix a typo in convert deprecation warning in #7383
  * Bump azure/trusted-signing-action from 0.3.19 to 0.3.20 in #7388
  * Updated FontConfig query to include font index, fixing (#7374) in #7409
- removed patch (upstreamed)
  - ImageMagick-update-image-signature.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1721908800">- version update to 7.1.1.35
  * Also set dpi-x and dpi-y when running rsvg-convert. eac001f
  * convert sub-command is deprecated d67039e
  * only operators should disable "identify ping" (ImageMagick/ImageMagick#7441) a262192
  * fix compiler error ecc21c7
  * -outdir deprecated 9980efa
  * Get the correct width and height when heic:preserve-orientation is set to true. ed3a0dd
  * Set heic image orientation using transform information. ba470aa
  * Exit earlier when the symlink could not be created when invoking the svg:decode delegate. 8a48edd
  * Fixed MSYS2 build error. 3b22378
  * Also set the DNG properties when pinging the image. fc1c61b
  * Silence warning when lqr delegate is disabled. ae0d69a
  * Added version check for the heif_properties.h include. 656b4d2
  * Make sure we always use the i64 version of the "file methods" on Windows. b3e8a78
  * Changed defines to use method instead of a define. 75b66c4
  * Changes due to upgrade of libheif. 841f033
  * smooth the rendering of an ellipse (ImageMagick/ImageMagick#7465) 1bfce2a</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- version update to 7.1.1.36
  * uhdr.c: default initialize range field for hdr/sdr intent inputs to
    enc by @aayushsoni111 in #7482
  * Fixed typo in documentation of MagickAdaptiveBlurImage by @JonahEMorgan
    in #7500
  * Silence warning when freetype delegate is disabled. by @niclet in #7515</changelog>
  <changelog author="pgajdos@suse.com" date="1724760000">- version update to 7.1.1.37
  * Bump azure/trusted-signing-action from 0.3.20 to 0.4.0 #7518
  * Silence warning and fix HEIC_COMPUTE_NUMERIC_VERSION definition when heic delegate is disabled. #7516
  * protect macro arguments with parens 86cb2b1
  * eliminate compiler warnings d90d8b4
  * correct copyright year 115271e
  * Ignore multiple exif and xmp profiles for the same jxl frame and fix reading those profiles per frame. c301208
  * read/write in chunks fff3058
  * optimize fwrite() arguments ada6785
  * Renamed Output folder to Artifacts. 2a69677
  * cancel interactive window selection with right button press ea2a2db
  * cosmetic 712bde4
  * eliminate compiler warning 9a9a25c
  * eliminate compiler warning 0bd1687
  * Make images mandatory in the issue template. c01fd37
  * Added extra header detection for avif files. 9fc0590
  * allow SeekBlob() to set an offset beyond the end of the blob 27c3f99
  * be less forgiving for invalid image indexes 25db2e5
  * Fixed problem with empty macros (#7562) 9fda5f2
  * Added missing null checks for RequestOpenCLDevice. f85448e
  * Added missing null check for AcquireOpenCLCommandQueue. 295e9c8
  * persist app1 jpeg profile (ImageMagick/ImageMagick#4713) f0357c7
  * Fixed build error. b3dd431
  * Remove some of the dependencies for the macos-13 build. d0bce95
  * parentheses is the plural of parenthesis 1fac80a
  * distribute quantization error for -dither FloydSteinberg -depth 5b2825b
  * release 8a0da9f
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565</changelog>
  <changelog author="pgajdos@suse.com" date="1726228800">- version update to 7.1.1.38
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565
  * beta release 250b748
  * deprecate the -respect-paranthesis option 4e7d789
  * Build fixes. b80c509
  * save IPTC + ICC profiles are profiles, not properties 25d5335
  * update copyright year 4caf7d1
  * Patch to fix reading of the ICC profile. 18377f9
  * prepping framework to interact with X11 clipboard b20dda3
  * Build fix. 20a5af3
  * More build fixes. c36fdf0
  * Another attempt to silence the warnings. 600708c
  * Use SetImageProfilePrivate to avoid duplicate allocations. f246eab
  * support clipboard delegate 39a135a
  * restore clipboard.c 1070b17
  * improved rounding 27a0a9c
  * don't allow negative scenes 8fda05a
  * eliminate compiler warnings 878daf9
- modified patches
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1728216000">- version update to 7.1.1.39
  * Add missing Threshold command to command array of Region of Interest mode #7606
  * uhdr.c: update uhdr coder for gainmap metadata configuration #7635
  * uhdr: fix language choice in autoconf #7663</changelog>
</package>
<package pkgid="d7f7cad2b0951381cfc48c1702ed6db5890c89d9b10f96e79405753f0282a600d0925fd000c59d9395421897044eda5789499cc5412f05ec8e29fea0f4d3f8f2" name="ImageMagick-debuginfo" arch="x86_64">
  <version epoch="0" ver="7.1.1.39" rel="1.1"/>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1705838400">- version update to 7.1.1.27
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1707652800">- version update to 7.1.1.28
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Michael Vetter &lt;mvetter@suse.com&gt;" date="1708603200">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1709035200">- version update to 7.1.1.29
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709380800">- We can not replace a symlink with a directory on the directly
  Unregister the whole group manually in %pre with
  update-alternatives. (boo#1220818)
  Restore Requires(pre) on update-alternatives for the mean time.</changelog>
  <changelog author="pgajdos@suse.com" date="1709553600">- enable SVG again
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711022400">- allow delegates to be executed, was disabled by default policy
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711108800">- allow stdin/stdout
- modified patches
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1712577600">- version update to 7.1.1.30
  * install perl module into user-specified prefix by @bugfood in #7192
  * Fix bmp option to bypass file size check by @OnTheList-1 in #7194
  * add support for encoding/decoding ultrahdr images by @aayushsoni111 in #7198
  * Updates to uhdr.c by @aayushsoni111 in #7217
- added patches
  fix https://github.com/ImageMagick/ImageMagick/issues/7230
  + ImageMagick-wmflite-detection.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713182400">- relax list-length resource limit, fixes build of python-Wand
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713787200">- version update to 7.1.1.31
  * Convert big PDF documents is slow #7263
  * Update release.yml #7258
  * Update README.md #7245
  * uhdr.c: verify the availability of error message before accessing it #7229
- removed patches
  - ImageMagick-wmflite-detection.patch (upstreamed)
  `</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1714910400">- version update to 7.1.1.32
  * Fix GIF ICC profile reading #7282
  * uhdr.c: add support for rgb inputs #7273</changelog>
  <changelog author="pgajdos@suse.com" date="1715860800">- reverted update-alternatives usage removal [bsc#1122033][bsc#1220818]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1716638400">- version update to 7.1.1.33
  * Fix typo in #7294
  * Bump azure/trusted-signing-action from 0.3.16 to 0.3.18 in #7325
  * Bump caphyon/advinst-github-action from 1.1 to 2.0 in #7326
- added patch
  + ImageMagick-update-image-signature.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1719144000">- version update to 7.1.1.34
  * Bump azure/trusted-signing-action from 0.3.18 to 0.3.19 in #7348
  * Fix a typo in convert deprecation warning in #7383
  * Bump azure/trusted-signing-action from 0.3.19 to 0.3.20 in #7388
  * Updated FontConfig query to include font index, fixing (#7374) in #7409
- removed patch (upstreamed)
  - ImageMagick-update-image-signature.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1721908800">- version update to 7.1.1.35
  * Also set dpi-x and dpi-y when running rsvg-convert. eac001f
  * convert sub-command is deprecated d67039e
  * only operators should disable "identify ping" (ImageMagick/ImageMagick#7441) a262192
  * fix compiler error ecc21c7
  * -outdir deprecated 9980efa
  * Get the correct width and height when heic:preserve-orientation is set to true. ed3a0dd
  * Set heic image orientation using transform information. ba470aa
  * Exit earlier when the symlink could not be created when invoking the svg:decode delegate. 8a48edd
  * Fixed MSYS2 build error. 3b22378
  * Also set the DNG properties when pinging the image. fc1c61b
  * Silence warning when lqr delegate is disabled. ae0d69a
  * Added version check for the heif_properties.h include. 656b4d2
  * Make sure we always use the i64 version of the "file methods" on Windows. b3e8a78
  * Changed defines to use method instead of a define. 75b66c4
  * Changes due to upgrade of libheif. 841f033
  * smooth the rendering of an ellipse (ImageMagick/ImageMagick#7465) 1bfce2a</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- version update to 7.1.1.36
  * uhdr.c: default initialize range field for hdr/sdr intent inputs to
    enc by @aayushsoni111 in #7482
  * Fixed typo in documentation of MagickAdaptiveBlurImage by @JonahEMorgan
    in #7500
  * Silence warning when freetype delegate is disabled. by @niclet in #7515</changelog>
  <changelog author="pgajdos@suse.com" date="1724760000">- version update to 7.1.1.37
  * Bump azure/trusted-signing-action from 0.3.20 to 0.4.0 #7518
  * Silence warning and fix HEIC_COMPUTE_NUMERIC_VERSION definition when heic delegate is disabled. #7516
  * protect macro arguments with parens 86cb2b1
  * eliminate compiler warnings d90d8b4
  * correct copyright year 115271e
  * Ignore multiple exif and xmp profiles for the same jxl frame and fix reading those profiles per frame. c301208
  * read/write in chunks fff3058
  * optimize fwrite() arguments ada6785
  * Renamed Output folder to Artifacts. 2a69677
  * cancel interactive window selection with right button press ea2a2db
  * cosmetic 712bde4
  * eliminate compiler warning 9a9a25c
  * eliminate compiler warning 0bd1687
  * Make images mandatory in the issue template. c01fd37
  * Added extra header detection for avif files. 9fc0590
  * allow SeekBlob() to set an offset beyond the end of the blob 27c3f99
  * be less forgiving for invalid image indexes 25db2e5
  * Fixed problem with empty macros (#7562) 9fda5f2
  * Added missing null checks for RequestOpenCLDevice. f85448e
  * Added missing null check for AcquireOpenCLCommandQueue. 295e9c8
  * persist app1 jpeg profile (ImageMagick/ImageMagick#4713) f0357c7
  * Fixed build error. b3dd431
  * Remove some of the dependencies for the macos-13 build. d0bce95
  * parentheses is the plural of parenthesis 1fac80a
  * distribute quantization error for -dither FloydSteinberg -depth 5b2825b
  * release 8a0da9f
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565</changelog>
  <changelog author="pgajdos@suse.com" date="1726228800">- version update to 7.1.1.38
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565
  * beta release 250b748
  * deprecate the -respect-paranthesis option 4e7d789
  * Build fixes. b80c509
  * save IPTC + ICC profiles are profiles, not properties 25d5335
  * update copyright year 4caf7d1
  * Patch to fix reading of the ICC profile. 18377f9
  * prepping framework to interact with X11 clipboard b20dda3
  * Build fix. 20a5af3
  * More build fixes. c36fdf0
  * Another attempt to silence the warnings. 600708c
  * Use SetImageProfilePrivate to avoid duplicate allocations. f246eab
  * support clipboard delegate 39a135a
  * restore clipboard.c 1070b17
  * improved rounding 27a0a9c
  * don't allow negative scenes 8fda05a
  * eliminate compiler warnings 878daf9
- modified patches
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1728216000">- version update to 7.1.1.39
  * Add missing Threshold command to command array of Region of Interest mode #7606
  * uhdr.c: update uhdr coder for gainmap metadata configuration #7635
  * uhdr: fix language choice in autoconf #7663</changelog>
</package>
<package pkgid="9dc79f1bb53239fc5826c9e08cdb0d3b7814738604574732effcfa7db039e91d93136422166d7c7536bcfb375b4b2317239a8b336d6227080b10cfba3a30db8b" name="ImageMagick-debuginfo" arch="i586">
  <version epoch="0" ver="7.1.1.41" rel="1.0.2.1.sr20241103"/>
  <changelog author="Michael Vetter &lt;mvetter@suse.com&gt;" date="1708603200">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1709035200">- version update to 7.1.1.29
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709380800">- We can not replace a symlink with a directory on the directly
  Unregister the whole group manually in %pre with
  update-alternatives. (boo#1220818)
  Restore Requires(pre) on update-alternatives for the mean time.</changelog>
  <changelog author="pgajdos@suse.com" date="1709553600">- enable SVG again
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711022400">- allow delegates to be executed, was disabled by default policy
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711108800">- allow stdin/stdout
- modified patches
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1712577600">- version update to 7.1.1.30
  * install perl module into user-specified prefix by @bugfood in #7192
  * Fix bmp option to bypass file size check by @OnTheList-1 in #7194
  * add support for encoding/decoding ultrahdr images by @aayushsoni111 in #7198
  * Updates to uhdr.c by @aayushsoni111 in #7217
- added patches
  fix https://github.com/ImageMagick/ImageMagick/issues/7230
  + ImageMagick-wmflite-detection.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713182400">- relax list-length resource limit, fixes build of python-Wand
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713787200">- version update to 7.1.1.31
  * Convert big PDF documents is slow #7263
  * Update release.yml #7258
  * Update README.md #7245
  * uhdr.c: verify the availability of error message before accessing it #7229
- removed patches
  - ImageMagick-wmflite-detection.patch (upstreamed)
  `</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1714910400">- version update to 7.1.1.32
  * Fix GIF ICC profile reading #7282
  * uhdr.c: add support for rgb inputs #7273</changelog>
  <changelog author="pgajdos@suse.com" date="1715860800">- reverted update-alternatives usage removal [bsc#1122033][bsc#1220818]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1716638400">- version update to 7.1.1.33
  * Fix typo in #7294
  * Bump azure/trusted-signing-action from 0.3.16 to 0.3.18 in #7325
  * Bump caphyon/advinst-github-action from 1.1 to 2.0 in #7326
- added patch
  + ImageMagick-update-image-signature.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1719144000">- version update to 7.1.1.34
  * Bump azure/trusted-signing-action from 0.3.18 to 0.3.19 in #7348
  * Fix a typo in convert deprecation warning in #7383
  * Bump azure/trusted-signing-action from 0.3.19 to 0.3.20 in #7388
  * Updated FontConfig query to include font index, fixing (#7374) in #7409
- removed patch (upstreamed)
  - ImageMagick-update-image-signature.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1721908800">- version update to 7.1.1.35
  * Also set dpi-x and dpi-y when running rsvg-convert. eac001f
  * convert sub-command is deprecated d67039e
  * only operators should disable "identify ping" (ImageMagick/ImageMagick#7441) a262192
  * fix compiler error ecc21c7
  * -outdir deprecated 9980efa
  * Get the correct width and height when heic:preserve-orientation is set to true. ed3a0dd
  * Set heic image orientation using transform information. ba470aa
  * Exit earlier when the symlink could not be created when invoking the svg:decode delegate. 8a48edd
  * Fixed MSYS2 build error. 3b22378
  * Also set the DNG properties when pinging the image. fc1c61b
  * Silence warning when lqr delegate is disabled. ae0d69a
  * Added version check for the heif_properties.h include. 656b4d2
  * Make sure we always use the i64 version of the "file methods" on Windows. b3e8a78
  * Changed defines to use method instead of a define. 75b66c4
  * Changes due to upgrade of libheif. 841f033
  * smooth the rendering of an ellipse (ImageMagick/ImageMagick#7465) 1bfce2a</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- version update to 7.1.1.36
  * uhdr.c: default initialize range field for hdr/sdr intent inputs to
    enc by @aayushsoni111 in #7482
  * Fixed typo in documentation of MagickAdaptiveBlurImage by @JonahEMorgan
    in #7500
  * Silence warning when freetype delegate is disabled. by @niclet in #7515</changelog>
  <changelog author="pgajdos@suse.com" date="1724760000">- version update to 7.1.1.37
  * Bump azure/trusted-signing-action from 0.3.20 to 0.4.0 #7518
  * Silence warning and fix HEIC_COMPUTE_NUMERIC_VERSION definition when heic delegate is disabled. #7516
  * protect macro arguments with parens 86cb2b1
  * eliminate compiler warnings d90d8b4
  * correct copyright year 115271e
  * Ignore multiple exif and xmp profiles for the same jxl frame and fix reading those profiles per frame. c301208
  * read/write in chunks fff3058
  * optimize fwrite() arguments ada6785
  * Renamed Output folder to Artifacts. 2a69677
  * cancel interactive window selection with right button press ea2a2db
  * cosmetic 712bde4
  * eliminate compiler warning 9a9a25c
  * eliminate compiler warning 0bd1687
  * Make images mandatory in the issue template. c01fd37
  * Added extra header detection for avif files. 9fc0590
  * allow SeekBlob() to set an offset beyond the end of the blob 27c3f99
  * be less forgiving for invalid image indexes 25db2e5
  * Fixed problem with empty macros (#7562) 9fda5f2
  * Added missing null checks for RequestOpenCLDevice. f85448e
  * Added missing null check for AcquireOpenCLCommandQueue. 295e9c8
  * persist app1 jpeg profile (ImageMagick/ImageMagick#4713) f0357c7
  * Fixed build error. b3dd431
  * Remove some of the dependencies for the macos-13 build. d0bce95
  * parentheses is the plural of parenthesis 1fac80a
  * distribute quantization error for -dither FloydSteinberg -depth 5b2825b
  * release 8a0da9f
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565</changelog>
  <changelog author="pgajdos@suse.com" date="1726228800">- version update to 7.1.1.38
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565
  * beta release 250b748
  * deprecate the -respect-paranthesis option 4e7d789
  * Build fixes. b80c509
  * save IPTC + ICC profiles are profiles, not properties 25d5335
  * update copyright year 4caf7d1
  * Patch to fix reading of the ICC profile. 18377f9
  * prepping framework to interact with X11 clipboard b20dda3
  * Build fix. 20a5af3
  * More build fixes. c36fdf0
  * Another attempt to silence the warnings. 600708c
  * Use SetImageProfilePrivate to avoid duplicate allocations. f246eab
  * support clipboard delegate 39a135a
  * restore clipboard.c 1070b17
  * improved rounding 27a0a9c
  * don't allow negative scenes 8fda05a
  * eliminate compiler warnings 878daf9
- modified patches
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1728216000">- version update to 7.1.1.39
  * Add missing Threshold command to command array of Region of Interest mode #7606
  * uhdr.c: update uhdr coder for gainmap metadata configuration #7635
  * uhdr: fix language choice in autoconf #7663</changelog>
  <changelog author="Yann BOYER &lt;yann.boyer742@gmail.com&gt;" date="1731326400">- version update to 7.1.1.40
  * .cut (Dr Halo) reading when run count in header #7734
  * Bump azure/trusted-signing-action from 0.4.0 to 0.5.0 #7725
  * Implement Magic Kernel Sharp 2013 and 2021 #7701
  * don't process TIFF image if there is an exception
  * Corrected check for indexed channels in PSD files.
  * export exception when undo resource limit exceeded</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1731844800">- version update to 7.1.1.41
  * Fix compiler identification with Clang on Darwin in #7773
  * revert map changes breaking ABI in #7768</changelog>
</package>
<package pkgid="9f80f1c73b9fec4f9f08408b66df1161e00035c6a1ebd6739a63a26a137acc0e3031459aa5a67e6c1a96497a8025dbd4c02630dc86ef423ad22f8294fb5bb54a" name="ImageMagick-debuginfo" arch="x86_64">
  <version epoch="0" ver="7.1.1.41" rel="1.0.2.1.sr20241103"/>
  <changelog author="Michael Vetter &lt;mvetter@suse.com&gt;" date="1708603200">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1709035200">- version update to 7.1.1.29
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709380800">- We can not replace a symlink with a directory on the directly
  Unregister the whole group manually in %pre with
  update-alternatives. (boo#1220818)
  Restore Requires(pre) on update-alternatives for the mean time.</changelog>
  <changelog author="pgajdos@suse.com" date="1709553600">- enable SVG again
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711022400">- allow delegates to be executed, was disabled by default policy
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711108800">- allow stdin/stdout
- modified patches
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1712577600">- version update to 7.1.1.30
  * install perl module into user-specified prefix by @bugfood in #7192
  * Fix bmp option to bypass file size check by @OnTheList-1 in #7194
  * add support for encoding/decoding ultrahdr images by @aayushsoni111 in #7198
  * Updates to uhdr.c by @aayushsoni111 in #7217
- added patches
  fix https://github.com/ImageMagick/ImageMagick/issues/7230
  + ImageMagick-wmflite-detection.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713182400">- relax list-length resource limit, fixes build of python-Wand
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713787200">- version update to 7.1.1.31
  * Convert big PDF documents is slow #7263
  * Update release.yml #7258
  * Update README.md #7245
  * uhdr.c: verify the availability of error message before accessing it #7229
- removed patches
  - ImageMagick-wmflite-detection.patch (upstreamed)
  `</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1714910400">- version update to 7.1.1.32
  * Fix GIF ICC profile reading #7282
  * uhdr.c: add support for rgb inputs #7273</changelog>
  <changelog author="pgajdos@suse.com" date="1715860800">- reverted update-alternatives usage removal [bsc#1122033][bsc#1220818]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1716638400">- version update to 7.1.1.33
  * Fix typo in #7294
  * Bump azure/trusted-signing-action from 0.3.16 to 0.3.18 in #7325
  * Bump caphyon/advinst-github-action from 1.1 to 2.0 in #7326
- added patch
  + ImageMagick-update-image-signature.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1719144000">- version update to 7.1.1.34
  * Bump azure/trusted-signing-action from 0.3.18 to 0.3.19 in #7348
  * Fix a typo in convert deprecation warning in #7383
  * Bump azure/trusted-signing-action from 0.3.19 to 0.3.20 in #7388
  * Updated FontConfig query to include font index, fixing (#7374) in #7409
- removed patch (upstreamed)
  - ImageMagick-update-image-signature.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1721908800">- version update to 7.1.1.35
  * Also set dpi-x and dpi-y when running rsvg-convert. eac001f
  * convert sub-command is deprecated d67039e
  * only operators should disable "identify ping" (ImageMagick/ImageMagick#7441) a262192
  * fix compiler error ecc21c7
  * -outdir deprecated 9980efa
  * Get the correct width and height when heic:preserve-orientation is set to true. ed3a0dd
  * Set heic image orientation using transform information. ba470aa
  * Exit earlier when the symlink could not be created when invoking the svg:decode delegate. 8a48edd
  * Fixed MSYS2 build error. 3b22378
  * Also set the DNG properties when pinging the image. fc1c61b
  * Silence warning when lqr delegate is disabled. ae0d69a
  * Added version check for the heif_properties.h include. 656b4d2
  * Make sure we always use the i64 version of the "file methods" on Windows. b3e8a78
  * Changed defines to use method instead of a define. 75b66c4
  * Changes due to upgrade of libheif. 841f033
  * smooth the rendering of an ellipse (ImageMagick/ImageMagick#7465) 1bfce2a</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- version update to 7.1.1.36
  * uhdr.c: default initialize range field for hdr/sdr intent inputs to
    enc by @aayushsoni111 in #7482
  * Fixed typo in documentation of MagickAdaptiveBlurImage by @JonahEMorgan
    in #7500
  * Silence warning when freetype delegate is disabled. by @niclet in #7515</changelog>
  <changelog author="pgajdos@suse.com" date="1724760000">- version update to 7.1.1.37
  * Bump azure/trusted-signing-action from 0.3.20 to 0.4.0 #7518
  * Silence warning and fix HEIC_COMPUTE_NUMERIC_VERSION definition when heic delegate is disabled. #7516
  * protect macro arguments with parens 86cb2b1
  * eliminate compiler warnings d90d8b4
  * correct copyright year 115271e
  * Ignore multiple exif and xmp profiles for the same jxl frame and fix reading those profiles per frame. c301208
  * read/write in chunks fff3058
  * optimize fwrite() arguments ada6785
  * Renamed Output folder to Artifacts. 2a69677
  * cancel interactive window selection with right button press ea2a2db
  * cosmetic 712bde4
  * eliminate compiler warning 9a9a25c
  * eliminate compiler warning 0bd1687
  * Make images mandatory in the issue template. c01fd37
  * Added extra header detection for avif files. 9fc0590
  * allow SeekBlob() to set an offset beyond the end of the blob 27c3f99
  * be less forgiving for invalid image indexes 25db2e5
  * Fixed problem with empty macros (#7562) 9fda5f2
  * Added missing null checks for RequestOpenCLDevice. f85448e
  * Added missing null check for AcquireOpenCLCommandQueue. 295e9c8
  * persist app1 jpeg profile (ImageMagick/ImageMagick#4713) f0357c7
  * Fixed build error. b3dd431
  * Remove some of the dependencies for the macos-13 build. d0bce95
  * parentheses is the plural of parenthesis 1fac80a
  * distribute quantization error for -dither FloydSteinberg -depth 5b2825b
  * release 8a0da9f
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565</changelog>
  <changelog author="pgajdos@suse.com" date="1726228800">- version update to 7.1.1.38
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565
  * beta release 250b748
  * deprecate the -respect-paranthesis option 4e7d789
  * Build fixes. b80c509
  * save IPTC + ICC profiles are profiles, not properties 25d5335
  * update copyright year 4caf7d1
  * Patch to fix reading of the ICC profile. 18377f9
  * prepping framework to interact with X11 clipboard b20dda3
  * Build fix. 20a5af3
  * More build fixes. c36fdf0
  * Another attempt to silence the warnings. 600708c
  * Use SetImageProfilePrivate to avoid duplicate allocations. f246eab
  * support clipboard delegate 39a135a
  * restore clipboard.c 1070b17
  * improved rounding 27a0a9c
  * don't allow negative scenes 8fda05a
  * eliminate compiler warnings 878daf9
- modified patches
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1728216000">- version update to 7.1.1.39
  * Add missing Threshold command to command array of Region of Interest mode #7606
  * uhdr.c: update uhdr coder for gainmap metadata configuration #7635
  * uhdr: fix language choice in autoconf #7663</changelog>
  <changelog author="Yann BOYER &lt;yann.boyer742@gmail.com&gt;" date="1731326400">- version update to 7.1.1.40
  * .cut (Dr Halo) reading when run count in header #7734
  * Bump azure/trusted-signing-action from 0.4.0 to 0.5.0 #7725
  * Implement Magic Kernel Sharp 2013 and 2021 #7701
  * don't process TIFF image if there is an exception
  * Corrected check for indexed channels in PSD files.
  * export exception when undo resource limit exceeded</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1731844800">- version update to 7.1.1.41
  * Fix compiler identification with Clang on Darwin in #7773
  * revert map changes breaking ABI in #7768</changelog>
</package>
<package pkgid="9155e71ff7c01899c8d6a8bccd3b3a9565115389e19315e64a84678cc540479ae72c76c81ca52fc2a8385500fbfecbd7307e361a7a662ed6f2a33dbdb282abac" name="ImageMagick-debugsource" arch="i586">
  <version epoch="0" ver="7.1.1.36" rel="1.1"/>
  <changelog author="munix9@googlemail.com" date="1705233600">- Fix incomplete removal of update-alternatives for config
- Replace obsolete 'otherproviders(imagick-%{config_spec})' with
  'Conflicts: imagick-%{config_spec}'</changelog>
  <changelog author="pgajdos@suse.com" date="1705320000">- use correct policy.xml</changelog>
  <changelog author="pgajdos@suse.com" date="1705406400">- only one configuration again, based on upstream 'secure' policy
- other upstream policies packaged in documentation</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1705838400">- version update to 7.1.1.27
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1707652800">- version update to 7.1.1.28
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Michael Vetter &lt;mvetter@suse.com&gt;" date="1708603200">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1709035200">- version update to 7.1.1.29
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709380800">- We can not replace a symlink with a directory on the directly
  Unregister the whole group manually in %pre with
  update-alternatives. (boo#1220818)
  Restore Requires(pre) on update-alternatives for the mean time.</changelog>
  <changelog author="pgajdos@suse.com" date="1709553600">- enable SVG again
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711022400">- allow delegates to be executed, was disabled by default policy
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711108800">- allow stdin/stdout
- modified patches
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1712577600">- version update to 7.1.1.30
  * install perl module into user-specified prefix by @bugfood in #7192
  * Fix bmp option to bypass file size check by @OnTheList-1 in #7194
  * add support for encoding/decoding ultrahdr images by @aayushsoni111 in #7198
  * Updates to uhdr.c by @aayushsoni111 in #7217
- added patches
  fix https://github.com/ImageMagick/ImageMagick/issues/7230
  + ImageMagick-wmflite-detection.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713182400">- relax list-length resource limit, fixes build of python-Wand
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713787200">- version update to 7.1.1.31
  * Convert big PDF documents is slow #7263
  * Update release.yml #7258
  * Update README.md #7245
  * uhdr.c: verify the availability of error message before accessing it #7229
- removed patches
  - ImageMagick-wmflite-detection.patch (upstreamed)
  `</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1714910400">- version update to 7.1.1.32
  * Fix GIF ICC profile reading #7282
  * uhdr.c: add support for rgb inputs #7273</changelog>
  <changelog author="pgajdos@suse.com" date="1715860800">- reverted update-alternatives usage removal [bsc#1122033][bsc#1220818]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1716638400">- version update to 7.1.1.33
  * Fix typo in #7294
  * Bump azure/trusted-signing-action from 0.3.16 to 0.3.18 in #7325
  * Bump caphyon/advinst-github-action from 1.1 to 2.0 in #7326
- added patch
  + ImageMagick-update-image-signature.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1719144000">- version update to 7.1.1.34
  * Bump azure/trusted-signing-action from 0.3.18 to 0.3.19 in #7348
  * Fix a typo in convert deprecation warning in #7383
  * Bump azure/trusted-signing-action from 0.3.19 to 0.3.20 in #7388
  * Updated FontConfig query to include font index, fixing (#7374) in #7409
- removed patch (upstreamed)
  - ImageMagick-update-image-signature.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1721908800">- version update to 7.1.1.35
  * Also set dpi-x and dpi-y when running rsvg-convert. eac001f
  * convert sub-command is deprecated d67039e
  * only operators should disable "identify ping" (ImageMagick/ImageMagick#7441) a262192
  * fix compiler error ecc21c7
  * -outdir deprecated 9980efa
  * Get the correct width and height when heic:preserve-orientation is set to true. ed3a0dd
  * Set heic image orientation using transform information. ba470aa
  * Exit earlier when the symlink could not be created when invoking the svg:decode delegate. 8a48edd
  * Fixed MSYS2 build error. 3b22378
  * Also set the DNG properties when pinging the image. fc1c61b
  * Silence warning when lqr delegate is disabled. ae0d69a
  * Added version check for the heif_properties.h include. 656b4d2
  * Make sure we always use the i64 version of the "file methods" on Windows. b3e8a78
  * Changed defines to use method instead of a define. 75b66c4
  * Changes due to upgrade of libheif. 841f033
  * smooth the rendering of an ellipse (ImageMagick/ImageMagick#7465) 1bfce2a</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- version update to 7.1.1.36
  * uhdr.c: default initialize range field for hdr/sdr intent inputs to
    enc by @aayushsoni111 in #7482
  * Fixed typo in documentation of MagickAdaptiveBlurImage by @JonahEMorgan
    in #7500
  * Silence warning when freetype delegate is disabled. by @niclet in #7515</changelog>
</package>
<package pkgid="012ff666347207f1463f6837dacaa2670a057147f65538d1e2883121ed04e06f8f02a708a5e3c32f82cffab17ba0ee9342e3bee6d0884c6522958b884d12ab24" name="ImageMagick-debugsource" arch="x86_64">
  <version epoch="0" ver="7.1.1.36" rel="1.1"/>
  <changelog author="munix9@googlemail.com" date="1705233600">- Fix incomplete removal of update-alternatives for config
- Replace obsolete 'otherproviders(imagick-%{config_spec})' with
  'Conflicts: imagick-%{config_spec}'</changelog>
  <changelog author="pgajdos@suse.com" date="1705320000">- use correct policy.xml</changelog>
  <changelog author="pgajdos@suse.com" date="1705406400">- only one configuration again, based on upstream 'secure' policy
- other upstream policies packaged in documentation</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1705838400">- version update to 7.1.1.27
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1707652800">- version update to 7.1.1.28
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Michael Vetter &lt;mvetter@suse.com&gt;" date="1708603200">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1709035200">- version update to 7.1.1.29
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709380800">- We can not replace a symlink with a directory on the directly
  Unregister the whole group manually in %pre with
  update-alternatives. (boo#1220818)
  Restore Requires(pre) on update-alternatives for the mean time.</changelog>
  <changelog author="pgajdos@suse.com" date="1709553600">- enable SVG again
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711022400">- allow delegates to be executed, was disabled by default policy
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711108800">- allow stdin/stdout
- modified patches
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1712577600">- version update to 7.1.1.30
  * install perl module into user-specified prefix by @bugfood in #7192
  * Fix bmp option to bypass file size check by @OnTheList-1 in #7194
  * add support for encoding/decoding ultrahdr images by @aayushsoni111 in #7198
  * Updates to uhdr.c by @aayushsoni111 in #7217
- added patches
  fix https://github.com/ImageMagick/ImageMagick/issues/7230
  + ImageMagick-wmflite-detection.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713182400">- relax list-length resource limit, fixes build of python-Wand
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713787200">- version update to 7.1.1.31
  * Convert big PDF documents is slow #7263
  * Update release.yml #7258
  * Update README.md #7245
  * uhdr.c: verify the availability of error message before accessing it #7229
- removed patches
  - ImageMagick-wmflite-detection.patch (upstreamed)
  `</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1714910400">- version update to 7.1.1.32
  * Fix GIF ICC profile reading #7282
  * uhdr.c: add support for rgb inputs #7273</changelog>
  <changelog author="pgajdos@suse.com" date="1715860800">- reverted update-alternatives usage removal [bsc#1122033][bsc#1220818]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1716638400">- version update to 7.1.1.33
  * Fix typo in #7294
  * Bump azure/trusted-signing-action from 0.3.16 to 0.3.18 in #7325
  * Bump caphyon/advinst-github-action from 1.1 to 2.0 in #7326
- added patch
  + ImageMagick-update-image-signature.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1719144000">- version update to 7.1.1.34
  * Bump azure/trusted-signing-action from 0.3.18 to 0.3.19 in #7348
  * Fix a typo in convert deprecation warning in #7383
  * Bump azure/trusted-signing-action from 0.3.19 to 0.3.20 in #7388
  * Updated FontConfig query to include font index, fixing (#7374) in #7409
- removed patch (upstreamed)
  - ImageMagick-update-image-signature.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1721908800">- version update to 7.1.1.35
  * Also set dpi-x and dpi-y when running rsvg-convert. eac001f
  * convert sub-command is deprecated d67039e
  * only operators should disable "identify ping" (ImageMagick/ImageMagick#7441) a262192
  * fix compiler error ecc21c7
  * -outdir deprecated 9980efa
  * Get the correct width and height when heic:preserve-orientation is set to true. ed3a0dd
  * Set heic image orientation using transform information. ba470aa
  * Exit earlier when the symlink could not be created when invoking the svg:decode delegate. 8a48edd
  * Fixed MSYS2 build error. 3b22378
  * Also set the DNG properties when pinging the image. fc1c61b
  * Silence warning when lqr delegate is disabled. ae0d69a
  * Added version check for the heif_properties.h include. 656b4d2
  * Make sure we always use the i64 version of the "file methods" on Windows. b3e8a78
  * Changed defines to use method instead of a define. 75b66c4
  * Changes due to upgrade of libheif. 841f033
  * smooth the rendering of an ellipse (ImageMagick/ImageMagick#7465) 1bfce2a</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- version update to 7.1.1.36
  * uhdr.c: default initialize range field for hdr/sdr intent inputs to
    enc by @aayushsoni111 in #7482
  * Fixed typo in documentation of MagickAdaptiveBlurImage by @JonahEMorgan
    in #7500
  * Silence warning when freetype delegate is disabled. by @niclet in #7515</changelog>
</package>
<package pkgid="1df97064856e1f69f1dcd23c83ffc70d86ab37efab4f5697f5789b41ef0b37124b49d589dda34d963c93a6affea20a7c67b3eb2a5f48c2b40ba920af4fc8c830" name="ImageMagick-debugsource" arch="i586">
  <version epoch="0" ver="7.1.1.37" rel="1.0.4.1.sr20240803"/>
  <changelog author="pgajdos@suse.com" date="1705320000">- use correct policy.xml</changelog>
  <changelog author="pgajdos@suse.com" date="1705406400">- only one configuration again, based on upstream 'secure' policy
- other upstream policies packaged in documentation</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1705838400">- version update to 7.1.1.27
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1707652800">- version update to 7.1.1.28
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Michael Vetter &lt;mvetter@suse.com&gt;" date="1708603200">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1709035200">- version update to 7.1.1.29
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709380800">- We can not replace a symlink with a directory on the directly
  Unregister the whole group manually in %pre with
  update-alternatives. (boo#1220818)
  Restore Requires(pre) on update-alternatives for the mean time.</changelog>
  <changelog author="pgajdos@suse.com" date="1709553600">- enable SVG again
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711022400">- allow delegates to be executed, was disabled by default policy
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711108800">- allow stdin/stdout
- modified patches
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1712577600">- version update to 7.1.1.30
  * install perl module into user-specified prefix by @bugfood in #7192
  * Fix bmp option to bypass file size check by @OnTheList-1 in #7194
  * add support for encoding/decoding ultrahdr images by @aayushsoni111 in #7198
  * Updates to uhdr.c by @aayushsoni111 in #7217
- added patches
  fix https://github.com/ImageMagick/ImageMagick/issues/7230
  + ImageMagick-wmflite-detection.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713182400">- relax list-length resource limit, fixes build of python-Wand
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713787200">- version update to 7.1.1.31
  * Convert big PDF documents is slow #7263
  * Update release.yml #7258
  * Update README.md #7245
  * uhdr.c: verify the availability of error message before accessing it #7229
- removed patches
  - ImageMagick-wmflite-detection.patch (upstreamed)
  `</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1714910400">- version update to 7.1.1.32
  * Fix GIF ICC profile reading #7282
  * uhdr.c: add support for rgb inputs #7273</changelog>
  <changelog author="pgajdos@suse.com" date="1715860800">- reverted update-alternatives usage removal [bsc#1122033][bsc#1220818]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1716638400">- version update to 7.1.1.33
  * Fix typo in #7294
  * Bump azure/trusted-signing-action from 0.3.16 to 0.3.18 in #7325
  * Bump caphyon/advinst-github-action from 1.1 to 2.0 in #7326
- added patch
  + ImageMagick-update-image-signature.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1719144000">- version update to 7.1.1.34
  * Bump azure/trusted-signing-action from 0.3.18 to 0.3.19 in #7348
  * Fix a typo in convert deprecation warning in #7383
  * Bump azure/trusted-signing-action from 0.3.19 to 0.3.20 in #7388
  * Updated FontConfig query to include font index, fixing (#7374) in #7409
- removed patch (upstreamed)
  - ImageMagick-update-image-signature.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1721908800">- version update to 7.1.1.35
  * Also set dpi-x and dpi-y when running rsvg-convert. eac001f
  * convert sub-command is deprecated d67039e
  * only operators should disable "identify ping" (ImageMagick/ImageMagick#7441) a262192
  * fix compiler error ecc21c7
  * -outdir deprecated 9980efa
  * Get the correct width and height when heic:preserve-orientation is set to true. ed3a0dd
  * Set heic image orientation using transform information. ba470aa
  * Exit earlier when the symlink could not be created when invoking the svg:decode delegate. 8a48edd
  * Fixed MSYS2 build error. 3b22378
  * Also set the DNG properties when pinging the image. fc1c61b
  * Silence warning when lqr delegate is disabled. ae0d69a
  * Added version check for the heif_properties.h include. 656b4d2
  * Make sure we always use the i64 version of the "file methods" on Windows. b3e8a78
  * Changed defines to use method instead of a define. 75b66c4
  * Changes due to upgrade of libheif. 841f033
  * smooth the rendering of an ellipse (ImageMagick/ImageMagick#7465) 1bfce2a</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- version update to 7.1.1.36
  * uhdr.c: default initialize range field for hdr/sdr intent inputs to
    enc by @aayushsoni111 in #7482
  * Fixed typo in documentation of MagickAdaptiveBlurImage by @JonahEMorgan
    in #7500
  * Silence warning when freetype delegate is disabled. by @niclet in #7515</changelog>
  <changelog author="pgajdos@suse.com" date="1724760000">- version update to 7.1.1.37
  * Bump azure/trusted-signing-action from 0.3.20 to 0.4.0 #7518
  * Silence warning and fix HEIC_COMPUTE_NUMERIC_VERSION definition when heic delegate is disabled. #7516
  * protect macro arguments with parens 86cb2b1
  * eliminate compiler warnings d90d8b4
  * correct copyright year 115271e
  * Ignore multiple exif and xmp profiles for the same jxl frame and fix reading those profiles per frame. c301208
  * read/write in chunks fff3058
  * optimize fwrite() arguments ada6785
  * Renamed Output folder to Artifacts. 2a69677
  * cancel interactive window selection with right button press ea2a2db
  * cosmetic 712bde4
  * eliminate compiler warning 9a9a25c
  * eliminate compiler warning 0bd1687
  * Make images mandatory in the issue template. c01fd37
  * Added extra header detection for avif files. 9fc0590
  * allow SeekBlob() to set an offset beyond the end of the blob 27c3f99
  * be less forgiving for invalid image indexes 25db2e5
  * Fixed problem with empty macros (#7562) 9fda5f2
  * Added missing null checks for RequestOpenCLDevice. f85448e
  * Added missing null check for AcquireOpenCLCommandQueue. 295e9c8
  * persist app1 jpeg profile (ImageMagick/ImageMagick#4713) f0357c7
  * Fixed build error. b3dd431
  * Remove some of the dependencies for the macos-13 build. d0bce95
  * parentheses is the plural of parenthesis 1fac80a
  * distribute quantization error for -dither FloydSteinberg -depth 5b2825b
  * release 8a0da9f
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565</changelog>
</package>
<package pkgid="ffa0142536edc959dd76237f982f9b2e7ca6e3e215704f5b0915d0fe95cf1f9ced1a2ed94c4431bf47468cf277ad8f71b536702adfe5e2656b291988383aa596" name="ImageMagick-debugsource" arch="x86_64">
  <version epoch="0" ver="7.1.1.37" rel="1.0.4.1.sr20240803"/>
  <changelog author="pgajdos@suse.com" date="1705320000">- use correct policy.xml</changelog>
  <changelog author="pgajdos@suse.com" date="1705406400">- only one configuration again, based on upstream 'secure' policy
- other upstream policies packaged in documentation</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1705838400">- version update to 7.1.1.27
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1707652800">- version update to 7.1.1.28
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Michael Vetter &lt;mvetter@suse.com&gt;" date="1708603200">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1709035200">- version update to 7.1.1.29
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709380800">- We can not replace a symlink with a directory on the directly
  Unregister the whole group manually in %pre with
  update-alternatives. (boo#1220818)
  Restore Requires(pre) on update-alternatives for the mean time.</changelog>
  <changelog author="pgajdos@suse.com" date="1709553600">- enable SVG again
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711022400">- allow delegates to be executed, was disabled by default policy
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711108800">- allow stdin/stdout
- modified patches
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1712577600">- version update to 7.1.1.30
  * install perl module into user-specified prefix by @bugfood in #7192
  * Fix bmp option to bypass file size check by @OnTheList-1 in #7194
  * add support for encoding/decoding ultrahdr images by @aayushsoni111 in #7198
  * Updates to uhdr.c by @aayushsoni111 in #7217
- added patches
  fix https://github.com/ImageMagick/ImageMagick/issues/7230
  + ImageMagick-wmflite-detection.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713182400">- relax list-length resource limit, fixes build of python-Wand
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713787200">- version update to 7.1.1.31
  * Convert big PDF documents is slow #7263
  * Update release.yml #7258
  * Update README.md #7245
  * uhdr.c: verify the availability of error message before accessing it #7229
- removed patches
  - ImageMagick-wmflite-detection.patch (upstreamed)
  `</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1714910400">- version update to 7.1.1.32
  * Fix GIF ICC profile reading #7282
  * uhdr.c: add support for rgb inputs #7273</changelog>
  <changelog author="pgajdos@suse.com" date="1715860800">- reverted update-alternatives usage removal [bsc#1122033][bsc#1220818]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1716638400">- version update to 7.1.1.33
  * Fix typo in #7294
  * Bump azure/trusted-signing-action from 0.3.16 to 0.3.18 in #7325
  * Bump caphyon/advinst-github-action from 1.1 to 2.0 in #7326
- added patch
  + ImageMagick-update-image-signature.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1719144000">- version update to 7.1.1.34
  * Bump azure/trusted-signing-action from 0.3.18 to 0.3.19 in #7348
  * Fix a typo in convert deprecation warning in #7383
  * Bump azure/trusted-signing-action from 0.3.19 to 0.3.20 in #7388
  * Updated FontConfig query to include font index, fixing (#7374) in #7409
- removed patch (upstreamed)
  - ImageMagick-update-image-signature.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1721908800">- version update to 7.1.1.35
  * Also set dpi-x and dpi-y when running rsvg-convert. eac001f
  * convert sub-command is deprecated d67039e
  * only operators should disable "identify ping" (ImageMagick/ImageMagick#7441) a262192
  * fix compiler error ecc21c7
  * -outdir deprecated 9980efa
  * Get the correct width and height when heic:preserve-orientation is set to true. ed3a0dd
  * Set heic image orientation using transform information. ba470aa
  * Exit earlier when the symlink could not be created when invoking the svg:decode delegate. 8a48edd
  * Fixed MSYS2 build error. 3b22378
  * Also set the DNG properties when pinging the image. fc1c61b
  * Silence warning when lqr delegate is disabled. ae0d69a
  * Added version check for the heif_properties.h include. 656b4d2
  * Make sure we always use the i64 version of the "file methods" on Windows. b3e8a78
  * Changed defines to use method instead of a define. 75b66c4
  * Changes due to upgrade of libheif. 841f033
  * smooth the rendering of an ellipse (ImageMagick/ImageMagick#7465) 1bfce2a</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- version update to 7.1.1.36
  * uhdr.c: default initialize range field for hdr/sdr intent inputs to
    enc by @aayushsoni111 in #7482
  * Fixed typo in documentation of MagickAdaptiveBlurImage by @JonahEMorgan
    in #7500
  * Silence warning when freetype delegate is disabled. by @niclet in #7515</changelog>
  <changelog author="pgajdos@suse.com" date="1724760000">- version update to 7.1.1.37
  * Bump azure/trusted-signing-action from 0.3.20 to 0.4.0 #7518
  * Silence warning and fix HEIC_COMPUTE_NUMERIC_VERSION definition when heic delegate is disabled. #7516
  * protect macro arguments with parens 86cb2b1
  * eliminate compiler warnings d90d8b4
  * correct copyright year 115271e
  * Ignore multiple exif and xmp profiles for the same jxl frame and fix reading those profiles per frame. c301208
  * read/write in chunks fff3058
  * optimize fwrite() arguments ada6785
  * Renamed Output folder to Artifacts. 2a69677
  * cancel interactive window selection with right button press ea2a2db
  * cosmetic 712bde4
  * eliminate compiler warning 9a9a25c
  * eliminate compiler warning 0bd1687
  * Make images mandatory in the issue template. c01fd37
  * Added extra header detection for avif files. 9fc0590
  * allow SeekBlob() to set an offset beyond the end of the blob 27c3f99
  * be less forgiving for invalid image indexes 25db2e5
  * Fixed problem with empty macros (#7562) 9fda5f2
  * Added missing null checks for RequestOpenCLDevice. f85448e
  * Added missing null check for AcquireOpenCLCommandQueue. 295e9c8
  * persist app1 jpeg profile (ImageMagick/ImageMagick#4713) f0357c7
  * Fixed build error. b3dd431
  * Remove some of the dependencies for the macos-13 build. d0bce95
  * parentheses is the plural of parenthesis 1fac80a
  * distribute quantization error for -dither FloydSteinberg -depth 5b2825b
  * release 8a0da9f
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565</changelog>
</package>
<package pkgid="3589c512c7e2bc6ab10de7375c8459af2d1a38d67e9b32d8700a19f3a02de05ac5a35425b5d951500a1a245d41686f3b30a6d8b0c3e1ab4328cdcd7b61a4baec" name="ImageMagick-debugsource" arch="i586">
  <version epoch="0" ver="7.1.1.37" rel="1.1"/>
  <changelog author="pgajdos@suse.com" date="1705320000">- use correct policy.xml</changelog>
  <changelog author="pgajdos@suse.com" date="1705406400">- only one configuration again, based on upstream 'secure' policy
- other upstream policies packaged in documentation</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1705838400">- version update to 7.1.1.27
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1707652800">- version update to 7.1.1.28
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Michael Vetter &lt;mvetter@suse.com&gt;" date="1708603200">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1709035200">- version update to 7.1.1.29
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709380800">- We can not replace a symlink with a directory on the directly
  Unregister the whole group manually in %pre with
  update-alternatives. (boo#1220818)
  Restore Requires(pre) on update-alternatives for the mean time.</changelog>
  <changelog author="pgajdos@suse.com" date="1709553600">- enable SVG again
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711022400">- allow delegates to be executed, was disabled by default policy
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711108800">- allow stdin/stdout
- modified patches
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1712577600">- version update to 7.1.1.30
  * install perl module into user-specified prefix by @bugfood in #7192
  * Fix bmp option to bypass file size check by @OnTheList-1 in #7194
  * add support for encoding/decoding ultrahdr images by @aayushsoni111 in #7198
  * Updates to uhdr.c by @aayushsoni111 in #7217
- added patches
  fix https://github.com/ImageMagick/ImageMagick/issues/7230
  + ImageMagick-wmflite-detection.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713182400">- relax list-length resource limit, fixes build of python-Wand
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713787200">- version update to 7.1.1.31
  * Convert big PDF documents is slow #7263
  * Update release.yml #7258
  * Update README.md #7245
  * uhdr.c: verify the availability of error message before accessing it #7229
- removed patches
  - ImageMagick-wmflite-detection.patch (upstreamed)
  `</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1714910400">- version update to 7.1.1.32
  * Fix GIF ICC profile reading #7282
  * uhdr.c: add support for rgb inputs #7273</changelog>
  <changelog author="pgajdos@suse.com" date="1715860800">- reverted update-alternatives usage removal [bsc#1122033][bsc#1220818]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1716638400">- version update to 7.1.1.33
  * Fix typo in #7294
  * Bump azure/trusted-signing-action from 0.3.16 to 0.3.18 in #7325
  * Bump caphyon/advinst-github-action from 1.1 to 2.0 in #7326
- added patch
  + ImageMagick-update-image-signature.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1719144000">- version update to 7.1.1.34
  * Bump azure/trusted-signing-action from 0.3.18 to 0.3.19 in #7348
  * Fix a typo in convert deprecation warning in #7383
  * Bump azure/trusted-signing-action from 0.3.19 to 0.3.20 in #7388
  * Updated FontConfig query to include font index, fixing (#7374) in #7409
- removed patch (upstreamed)
  - ImageMagick-update-image-signature.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1721908800">- version update to 7.1.1.35
  * Also set dpi-x and dpi-y when running rsvg-convert. eac001f
  * convert sub-command is deprecated d67039e
  * only operators should disable "identify ping" (ImageMagick/ImageMagick#7441) a262192
  * fix compiler error ecc21c7
  * -outdir deprecated 9980efa
  * Get the correct width and height when heic:preserve-orientation is set to true. ed3a0dd
  * Set heic image orientation using transform information. ba470aa
  * Exit earlier when the symlink could not be created when invoking the svg:decode delegate. 8a48edd
  * Fixed MSYS2 build error. 3b22378
  * Also set the DNG properties when pinging the image. fc1c61b
  * Silence warning when lqr delegate is disabled. ae0d69a
  * Added version check for the heif_properties.h include. 656b4d2
  * Make sure we always use the i64 version of the "file methods" on Windows. b3e8a78
  * Changed defines to use method instead of a define. 75b66c4
  * Changes due to upgrade of libheif. 841f033
  * smooth the rendering of an ellipse (ImageMagick/ImageMagick#7465) 1bfce2a</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- version update to 7.1.1.36
  * uhdr.c: default initialize range field for hdr/sdr intent inputs to
    enc by @aayushsoni111 in #7482
  * Fixed typo in documentation of MagickAdaptiveBlurImage by @JonahEMorgan
    in #7500
  * Silence warning when freetype delegate is disabled. by @niclet in #7515</changelog>
  <changelog author="pgajdos@suse.com" date="1724760000">- version update to 7.1.1.37
  * Bump azure/trusted-signing-action from 0.3.20 to 0.4.0 #7518
  * Silence warning and fix HEIC_COMPUTE_NUMERIC_VERSION definition when heic delegate is disabled. #7516
  * protect macro arguments with parens 86cb2b1
  * eliminate compiler warnings d90d8b4
  * correct copyright year 115271e
  * Ignore multiple exif and xmp profiles for the same jxl frame and fix reading those profiles per frame. c301208
  * read/write in chunks fff3058
  * optimize fwrite() arguments ada6785
  * Renamed Output folder to Artifacts. 2a69677
  * cancel interactive window selection with right button press ea2a2db
  * cosmetic 712bde4
  * eliminate compiler warning 9a9a25c
  * eliminate compiler warning 0bd1687
  * Make images mandatory in the issue template. c01fd37
  * Added extra header detection for avif files. 9fc0590
  * allow SeekBlob() to set an offset beyond the end of the blob 27c3f99
  * be less forgiving for invalid image indexes 25db2e5
  * Fixed problem with empty macros (#7562) 9fda5f2
  * Added missing null checks for RequestOpenCLDevice. f85448e
  * Added missing null check for AcquireOpenCLCommandQueue. 295e9c8
  * persist app1 jpeg profile (ImageMagick/ImageMagick#4713) f0357c7
  * Fixed build error. b3dd431
  * Remove some of the dependencies for the macos-13 build. d0bce95
  * parentheses is the plural of parenthesis 1fac80a
  * distribute quantization error for -dither FloydSteinberg -depth 5b2825b
  * release 8a0da9f
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565</changelog>
</package>
<package pkgid="a8d6b866396fcaba3fe6605b95cd6651cada47c920536fe1a58d575f725ec29ea796907996bf935e1993d22212f368c5d80386be7f7af0e7cca01e36017c3687" name="ImageMagick-debugsource" arch="x86_64">
  <version epoch="0" ver="7.1.1.37" rel="1.1"/>
  <changelog author="pgajdos@suse.com" date="1705320000">- use correct policy.xml</changelog>
  <changelog author="pgajdos@suse.com" date="1705406400">- only one configuration again, based on upstream 'secure' policy
- other upstream policies packaged in documentation</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1705838400">- version update to 7.1.1.27
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1707652800">- version update to 7.1.1.28
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Michael Vetter &lt;mvetter@suse.com&gt;" date="1708603200">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1709035200">- version update to 7.1.1.29
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709380800">- We can not replace a symlink with a directory on the directly
  Unregister the whole group manually in %pre with
  update-alternatives. (boo#1220818)
  Restore Requires(pre) on update-alternatives for the mean time.</changelog>
  <changelog author="pgajdos@suse.com" date="1709553600">- enable SVG again
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711022400">- allow delegates to be executed, was disabled by default policy
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711108800">- allow stdin/stdout
- modified patches
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1712577600">- version update to 7.1.1.30
  * install perl module into user-specified prefix by @bugfood in #7192
  * Fix bmp option to bypass file size check by @OnTheList-1 in #7194
  * add support for encoding/decoding ultrahdr images by @aayushsoni111 in #7198
  * Updates to uhdr.c by @aayushsoni111 in #7217
- added patches
  fix https://github.com/ImageMagick/ImageMagick/issues/7230
  + ImageMagick-wmflite-detection.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713182400">- relax list-length resource limit, fixes build of python-Wand
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713787200">- version update to 7.1.1.31
  * Convert big PDF documents is slow #7263
  * Update release.yml #7258
  * Update README.md #7245
  * uhdr.c: verify the availability of error message before accessing it #7229
- removed patches
  - ImageMagick-wmflite-detection.patch (upstreamed)
  `</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1714910400">- version update to 7.1.1.32
  * Fix GIF ICC profile reading #7282
  * uhdr.c: add support for rgb inputs #7273</changelog>
  <changelog author="pgajdos@suse.com" date="1715860800">- reverted update-alternatives usage removal [bsc#1122033][bsc#1220818]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1716638400">- version update to 7.1.1.33
  * Fix typo in #7294
  * Bump azure/trusted-signing-action from 0.3.16 to 0.3.18 in #7325
  * Bump caphyon/advinst-github-action from 1.1 to 2.0 in #7326
- added patch
  + ImageMagick-update-image-signature.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1719144000">- version update to 7.1.1.34
  * Bump azure/trusted-signing-action from 0.3.18 to 0.3.19 in #7348
  * Fix a typo in convert deprecation warning in #7383
  * Bump azure/trusted-signing-action from 0.3.19 to 0.3.20 in #7388
  * Updated FontConfig query to include font index, fixing (#7374) in #7409
- removed patch (upstreamed)
  - ImageMagick-update-image-signature.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1721908800">- version update to 7.1.1.35
  * Also set dpi-x and dpi-y when running rsvg-convert. eac001f
  * convert sub-command is deprecated d67039e
  * only operators should disable "identify ping" (ImageMagick/ImageMagick#7441) a262192
  * fix compiler error ecc21c7
  * -outdir deprecated 9980efa
  * Get the correct width and height when heic:preserve-orientation is set to true. ed3a0dd
  * Set heic image orientation using transform information. ba470aa
  * Exit earlier when the symlink could not be created when invoking the svg:decode delegate. 8a48edd
  * Fixed MSYS2 build error. 3b22378
  * Also set the DNG properties when pinging the image. fc1c61b
  * Silence warning when lqr delegate is disabled. ae0d69a
  * Added version check for the heif_properties.h include. 656b4d2
  * Make sure we always use the i64 version of the "file methods" on Windows. b3e8a78
  * Changed defines to use method instead of a define. 75b66c4
  * Changes due to upgrade of libheif. 841f033
  * smooth the rendering of an ellipse (ImageMagick/ImageMagick#7465) 1bfce2a</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- version update to 7.1.1.36
  * uhdr.c: default initialize range field for hdr/sdr intent inputs to
    enc by @aayushsoni111 in #7482
  * Fixed typo in documentation of MagickAdaptiveBlurImage by @JonahEMorgan
    in #7500
  * Silence warning when freetype delegate is disabled. by @niclet in #7515</changelog>
  <changelog author="pgajdos@suse.com" date="1724760000">- version update to 7.1.1.37
  * Bump azure/trusted-signing-action from 0.3.20 to 0.4.0 #7518
  * Silence warning and fix HEIC_COMPUTE_NUMERIC_VERSION definition when heic delegate is disabled. #7516
  * protect macro arguments with parens 86cb2b1
  * eliminate compiler warnings d90d8b4
  * correct copyright year 115271e
  * Ignore multiple exif and xmp profiles for the same jxl frame and fix reading those profiles per frame. c301208
  * read/write in chunks fff3058
  * optimize fwrite() arguments ada6785
  * Renamed Output folder to Artifacts. 2a69677
  * cancel interactive window selection with right button press ea2a2db
  * cosmetic 712bde4
  * eliminate compiler warning 9a9a25c
  * eliminate compiler warning 0bd1687
  * Make images mandatory in the issue template. c01fd37
  * Added extra header detection for avif files. 9fc0590
  * allow SeekBlob() to set an offset beyond the end of the blob 27c3f99
  * be less forgiving for invalid image indexes 25db2e5
  * Fixed problem with empty macros (#7562) 9fda5f2
  * Added missing null checks for RequestOpenCLDevice. f85448e
  * Added missing null check for AcquireOpenCLCommandQueue. 295e9c8
  * persist app1 jpeg profile (ImageMagick/ImageMagick#4713) f0357c7
  * Fixed build error. b3dd431
  * Remove some of the dependencies for the macos-13 build. d0bce95
  * parentheses is the plural of parenthesis 1fac80a
  * distribute quantization error for -dither FloydSteinberg -depth 5b2825b
  * release 8a0da9f
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565</changelog>
</package>
<package pkgid="9f1cff0f8787bc77e88befe7ac3af6256382fb44788f0a4dafadfa15aaef25da981ad42d9f77b9954345713ef166a019bb248f78f2a2ed7306b79be4a7fd2934" name="ImageMagick-debugsource" arch="i586">
  <version epoch="0" ver="7.1.1.39" rel="1.1"/>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1705838400">- version update to 7.1.1.27
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1707652800">- version update to 7.1.1.28
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Michael Vetter &lt;mvetter@suse.com&gt;" date="1708603200">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1709035200">- version update to 7.1.1.29
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709380800">- We can not replace a symlink with a directory on the directly
  Unregister the whole group manually in %pre with
  update-alternatives. (boo#1220818)
  Restore Requires(pre) on update-alternatives for the mean time.</changelog>
  <changelog author="pgajdos@suse.com" date="1709553600">- enable SVG again
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711022400">- allow delegates to be executed, was disabled by default policy
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711108800">- allow stdin/stdout
- modified patches
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1712577600">- version update to 7.1.1.30
  * install perl module into user-specified prefix by @bugfood in #7192
  * Fix bmp option to bypass file size check by @OnTheList-1 in #7194
  * add support for encoding/decoding ultrahdr images by @aayushsoni111 in #7198
  * Updates to uhdr.c by @aayushsoni111 in #7217
- added patches
  fix https://github.com/ImageMagick/ImageMagick/issues/7230
  + ImageMagick-wmflite-detection.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713182400">- relax list-length resource limit, fixes build of python-Wand
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713787200">- version update to 7.1.1.31
  * Convert big PDF documents is slow #7263
  * Update release.yml #7258
  * Update README.md #7245
  * uhdr.c: verify the availability of error message before accessing it #7229
- removed patches
  - ImageMagick-wmflite-detection.patch (upstreamed)
  `</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1714910400">- version update to 7.1.1.32
  * Fix GIF ICC profile reading #7282
  * uhdr.c: add support for rgb inputs #7273</changelog>
  <changelog author="pgajdos@suse.com" date="1715860800">- reverted update-alternatives usage removal [bsc#1122033][bsc#1220818]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1716638400">- version update to 7.1.1.33
  * Fix typo in #7294
  * Bump azure/trusted-signing-action from 0.3.16 to 0.3.18 in #7325
  * Bump caphyon/advinst-github-action from 1.1 to 2.0 in #7326
- added patch
  + ImageMagick-update-image-signature.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1719144000">- version update to 7.1.1.34
  * Bump azure/trusted-signing-action from 0.3.18 to 0.3.19 in #7348
  * Fix a typo in convert deprecation warning in #7383
  * Bump azure/trusted-signing-action from 0.3.19 to 0.3.20 in #7388
  * Updated FontConfig query to include font index, fixing (#7374) in #7409
- removed patch (upstreamed)
  - ImageMagick-update-image-signature.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1721908800">- version update to 7.1.1.35
  * Also set dpi-x and dpi-y when running rsvg-convert. eac001f
  * convert sub-command is deprecated d67039e
  * only operators should disable "identify ping" (ImageMagick/ImageMagick#7441) a262192
  * fix compiler error ecc21c7
  * -outdir deprecated 9980efa
  * Get the correct width and height when heic:preserve-orientation is set to true. ed3a0dd
  * Set heic image orientation using transform information. ba470aa
  * Exit earlier when the symlink could not be created when invoking the svg:decode delegate. 8a48edd
  * Fixed MSYS2 build error. 3b22378
  * Also set the DNG properties when pinging the image. fc1c61b
  * Silence warning when lqr delegate is disabled. ae0d69a
  * Added version check for the heif_properties.h include. 656b4d2
  * Make sure we always use the i64 version of the "file methods" on Windows. b3e8a78
  * Changed defines to use method instead of a define. 75b66c4
  * Changes due to upgrade of libheif. 841f033
  * smooth the rendering of an ellipse (ImageMagick/ImageMagick#7465) 1bfce2a</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- version update to 7.1.1.36
  * uhdr.c: default initialize range field for hdr/sdr intent inputs to
    enc by @aayushsoni111 in #7482
  * Fixed typo in documentation of MagickAdaptiveBlurImage by @JonahEMorgan
    in #7500
  * Silence warning when freetype delegate is disabled. by @niclet in #7515</changelog>
  <changelog author="pgajdos@suse.com" date="1724760000">- version update to 7.1.1.37
  * Bump azure/trusted-signing-action from 0.3.20 to 0.4.0 #7518
  * Silence warning and fix HEIC_COMPUTE_NUMERIC_VERSION definition when heic delegate is disabled. #7516
  * protect macro arguments with parens 86cb2b1
  * eliminate compiler warnings d90d8b4
  * correct copyright year 115271e
  * Ignore multiple exif and xmp profiles for the same jxl frame and fix reading those profiles per frame. c301208
  * read/write in chunks fff3058
  * optimize fwrite() arguments ada6785
  * Renamed Output folder to Artifacts. 2a69677
  * cancel interactive window selection with right button press ea2a2db
  * cosmetic 712bde4
  * eliminate compiler warning 9a9a25c
  * eliminate compiler warning 0bd1687
  * Make images mandatory in the issue template. c01fd37
  * Added extra header detection for avif files. 9fc0590
  * allow SeekBlob() to set an offset beyond the end of the blob 27c3f99
  * be less forgiving for invalid image indexes 25db2e5
  * Fixed problem with empty macros (#7562) 9fda5f2
  * Added missing null checks for RequestOpenCLDevice. f85448e
  * Added missing null check for AcquireOpenCLCommandQueue. 295e9c8
  * persist app1 jpeg profile (ImageMagick/ImageMagick#4713) f0357c7
  * Fixed build error. b3dd431
  * Remove some of the dependencies for the macos-13 build. d0bce95
  * parentheses is the plural of parenthesis 1fac80a
  * distribute quantization error for -dither FloydSteinberg -depth 5b2825b
  * release 8a0da9f
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565</changelog>
  <changelog author="pgajdos@suse.com" date="1726228800">- version update to 7.1.1.38
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565
  * beta release 250b748
  * deprecate the -respect-paranthesis option 4e7d789
  * Build fixes. b80c509
  * save IPTC + ICC profiles are profiles, not properties 25d5335
  * update copyright year 4caf7d1
  * Patch to fix reading of the ICC profile. 18377f9
  * prepping framework to interact with X11 clipboard b20dda3
  * Build fix. 20a5af3
  * More build fixes. c36fdf0
  * Another attempt to silence the warnings. 600708c
  * Use SetImageProfilePrivate to avoid duplicate allocations. f246eab
  * support clipboard delegate 39a135a
  * restore clipboard.c 1070b17
  * improved rounding 27a0a9c
  * don't allow negative scenes 8fda05a
  * eliminate compiler warnings 878daf9
- modified patches
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1728216000">- version update to 7.1.1.39
  * Add missing Threshold command to command array of Region of Interest mode #7606
  * uhdr.c: update uhdr coder for gainmap metadata configuration #7635
  * uhdr: fix language choice in autoconf #7663</changelog>
</package>
<package pkgid="c5a8db10f5647864f44d51fcea0878c4173c3f4093ef1d8db6fdaaecfd619639f09442f39903e4da6f49b23de60f1bcba830754689fb7c4a631807f3738b83f5" name="ImageMagick-debugsource" arch="x86_64">
  <version epoch="0" ver="7.1.1.39" rel="1.1"/>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1705838400">- version update to 7.1.1.27
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1707652800">- version update to 7.1.1.28
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Michael Vetter &lt;mvetter@suse.com&gt;" date="1708603200">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1709035200">- version update to 7.1.1.29
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709380800">- We can not replace a symlink with a directory on the directly
  Unregister the whole group manually in %pre with
  update-alternatives. (boo#1220818)
  Restore Requires(pre) on update-alternatives for the mean time.</changelog>
  <changelog author="pgajdos@suse.com" date="1709553600">- enable SVG again
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711022400">- allow delegates to be executed, was disabled by default policy
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711108800">- allow stdin/stdout
- modified patches
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1712577600">- version update to 7.1.1.30
  * install perl module into user-specified prefix by @bugfood in #7192
  * Fix bmp option to bypass file size check by @OnTheList-1 in #7194
  * add support for encoding/decoding ultrahdr images by @aayushsoni111 in #7198
  * Updates to uhdr.c by @aayushsoni111 in #7217
- added patches
  fix https://github.com/ImageMagick/ImageMagick/issues/7230
  + ImageMagick-wmflite-detection.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713182400">- relax list-length resource limit, fixes build of python-Wand
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713787200">- version update to 7.1.1.31
  * Convert big PDF documents is slow #7263
  * Update release.yml #7258
  * Update README.md #7245
  * uhdr.c: verify the availability of error message before accessing it #7229
- removed patches
  - ImageMagick-wmflite-detection.patch (upstreamed)
  `</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1714910400">- version update to 7.1.1.32
  * Fix GIF ICC profile reading #7282
  * uhdr.c: add support for rgb inputs #7273</changelog>
  <changelog author="pgajdos@suse.com" date="1715860800">- reverted update-alternatives usage removal [bsc#1122033][bsc#1220818]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1716638400">- version update to 7.1.1.33
  * Fix typo in #7294
  * Bump azure/trusted-signing-action from 0.3.16 to 0.3.18 in #7325
  * Bump caphyon/advinst-github-action from 1.1 to 2.0 in #7326
- added patch
  + ImageMagick-update-image-signature.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1719144000">- version update to 7.1.1.34
  * Bump azure/trusted-signing-action from 0.3.18 to 0.3.19 in #7348
  * Fix a typo in convert deprecation warning in #7383
  * Bump azure/trusted-signing-action from 0.3.19 to 0.3.20 in #7388
  * Updated FontConfig query to include font index, fixing (#7374) in #7409
- removed patch (upstreamed)
  - ImageMagick-update-image-signature.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1721908800">- version update to 7.1.1.35
  * Also set dpi-x and dpi-y when running rsvg-convert. eac001f
  * convert sub-command is deprecated d67039e
  * only operators should disable "identify ping" (ImageMagick/ImageMagick#7441) a262192
  * fix compiler error ecc21c7
  * -outdir deprecated 9980efa
  * Get the correct width and height when heic:preserve-orientation is set to true. ed3a0dd
  * Set heic image orientation using transform information. ba470aa
  * Exit earlier when the symlink could not be created when invoking the svg:decode delegate. 8a48edd
  * Fixed MSYS2 build error. 3b22378
  * Also set the DNG properties when pinging the image. fc1c61b
  * Silence warning when lqr delegate is disabled. ae0d69a
  * Added version check for the heif_properties.h include. 656b4d2
  * Make sure we always use the i64 version of the "file methods" on Windows. b3e8a78
  * Changed defines to use method instead of a define. 75b66c4
  * Changes due to upgrade of libheif. 841f033
  * smooth the rendering of an ellipse (ImageMagick/ImageMagick#7465) 1bfce2a</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- version update to 7.1.1.36
  * uhdr.c: default initialize range field for hdr/sdr intent inputs to
    enc by @aayushsoni111 in #7482
  * Fixed typo in documentation of MagickAdaptiveBlurImage by @JonahEMorgan
    in #7500
  * Silence warning when freetype delegate is disabled. by @niclet in #7515</changelog>
  <changelog author="pgajdos@suse.com" date="1724760000">- version update to 7.1.1.37
  * Bump azure/trusted-signing-action from 0.3.20 to 0.4.0 #7518
  * Silence warning and fix HEIC_COMPUTE_NUMERIC_VERSION definition when heic delegate is disabled. #7516
  * protect macro arguments with parens 86cb2b1
  * eliminate compiler warnings d90d8b4
  * correct copyright year 115271e
  * Ignore multiple exif and xmp profiles for the same jxl frame and fix reading those profiles per frame. c301208
  * read/write in chunks fff3058
  * optimize fwrite() arguments ada6785
  * Renamed Output folder to Artifacts. 2a69677
  * cancel interactive window selection with right button press ea2a2db
  * cosmetic 712bde4
  * eliminate compiler warning 9a9a25c
  * eliminate compiler warning 0bd1687
  * Make images mandatory in the issue template. c01fd37
  * Added extra header detection for avif files. 9fc0590
  * allow SeekBlob() to set an offset beyond the end of the blob 27c3f99
  * be less forgiving for invalid image indexes 25db2e5
  * Fixed problem with empty macros (#7562) 9fda5f2
  * Added missing null checks for RequestOpenCLDevice. f85448e
  * Added missing null check for AcquireOpenCLCommandQueue. 295e9c8
  * persist app1 jpeg profile (ImageMagick/ImageMagick#4713) f0357c7
  * Fixed build error. b3dd431
  * Remove some of the dependencies for the macos-13 build. d0bce95
  * parentheses is the plural of parenthesis 1fac80a
  * distribute quantization error for -dither FloydSteinberg -depth 5b2825b
  * release 8a0da9f
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565</changelog>
  <changelog author="pgajdos@suse.com" date="1726228800">- version update to 7.1.1.38
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565
  * beta release 250b748
  * deprecate the -respect-paranthesis option 4e7d789
  * Build fixes. b80c509
  * save IPTC + ICC profiles are profiles, not properties 25d5335
  * update copyright year 4caf7d1
  * Patch to fix reading of the ICC profile. 18377f9
  * prepping framework to interact with X11 clipboard b20dda3
  * Build fix. 20a5af3
  * More build fixes. c36fdf0
  * Another attempt to silence the warnings. 600708c
  * Use SetImageProfilePrivate to avoid duplicate allocations. f246eab
  * support clipboard delegate 39a135a
  * restore clipboard.c 1070b17
  * improved rounding 27a0a9c
  * don't allow negative scenes 8fda05a
  * eliminate compiler warnings 878daf9
- modified patches
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1728216000">- version update to 7.1.1.39
  * Add missing Threshold command to command array of Region of Interest mode #7606
  * uhdr.c: update uhdr coder for gainmap metadata configuration #7635
  * uhdr: fix language choice in autoconf #7663</changelog>
</package>
<package pkgid="54a6900d797d45069f638737dda3c072c8c6a9607537d84dd090714459372fbf0a0540d67d7c8360ff4f8ee9d47fd0a9befc1089f00cd7298277416055708a7e" name="ImageMagick-debugsource" arch="i586">
  <version epoch="0" ver="7.1.1.41" rel="1.0.2.1.sr20241103"/>
  <changelog author="Michael Vetter &lt;mvetter@suse.com&gt;" date="1708603200">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1709035200">- version update to 7.1.1.29
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709380800">- We can not replace a symlink with a directory on the directly
  Unregister the whole group manually in %pre with
  update-alternatives. (boo#1220818)
  Restore Requires(pre) on update-alternatives for the mean time.</changelog>
  <changelog author="pgajdos@suse.com" date="1709553600">- enable SVG again
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711022400">- allow delegates to be executed, was disabled by default policy
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711108800">- allow stdin/stdout
- modified patches
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1712577600">- version update to 7.1.1.30
  * install perl module into user-specified prefix by @bugfood in #7192
  * Fix bmp option to bypass file size check by @OnTheList-1 in #7194
  * add support for encoding/decoding ultrahdr images by @aayushsoni111 in #7198
  * Updates to uhdr.c by @aayushsoni111 in #7217
- added patches
  fix https://github.com/ImageMagick/ImageMagick/issues/7230
  + ImageMagick-wmflite-detection.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713182400">- relax list-length resource limit, fixes build of python-Wand
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713787200">- version update to 7.1.1.31
  * Convert big PDF documents is slow #7263
  * Update release.yml #7258
  * Update README.md #7245
  * uhdr.c: verify the availability of error message before accessing it #7229
- removed patches
  - ImageMagick-wmflite-detection.patch (upstreamed)
  `</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1714910400">- version update to 7.1.1.32
  * Fix GIF ICC profile reading #7282
  * uhdr.c: add support for rgb inputs #7273</changelog>
  <changelog author="pgajdos@suse.com" date="1715860800">- reverted update-alternatives usage removal [bsc#1122033][bsc#1220818]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1716638400">- version update to 7.1.1.33
  * Fix typo in #7294
  * Bump azure/trusted-signing-action from 0.3.16 to 0.3.18 in #7325
  * Bump caphyon/advinst-github-action from 1.1 to 2.0 in #7326
- added patch
  + ImageMagick-update-image-signature.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1719144000">- version update to 7.1.1.34
  * Bump azure/trusted-signing-action from 0.3.18 to 0.3.19 in #7348
  * Fix a typo in convert deprecation warning in #7383
  * Bump azure/trusted-signing-action from 0.3.19 to 0.3.20 in #7388
  * Updated FontConfig query to include font index, fixing (#7374) in #7409
- removed patch (upstreamed)
  - ImageMagick-update-image-signature.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1721908800">- version update to 7.1.1.35
  * Also set dpi-x and dpi-y when running rsvg-convert. eac001f
  * convert sub-command is deprecated d67039e
  * only operators should disable "identify ping" (ImageMagick/ImageMagick#7441) a262192
  * fix compiler error ecc21c7
  * -outdir deprecated 9980efa
  * Get the correct width and height when heic:preserve-orientation is set to true. ed3a0dd
  * Set heic image orientation using transform information. ba470aa
  * Exit earlier when the symlink could not be created when invoking the svg:decode delegate. 8a48edd
  * Fixed MSYS2 build error. 3b22378
  * Also set the DNG properties when pinging the image. fc1c61b
  * Silence warning when lqr delegate is disabled. ae0d69a
  * Added version check for the heif_properties.h include. 656b4d2
  * Make sure we always use the i64 version of the "file methods" on Windows. b3e8a78
  * Changed defines to use method instead of a define. 75b66c4
  * Changes due to upgrade of libheif. 841f033
  * smooth the rendering of an ellipse (ImageMagick/ImageMagick#7465) 1bfce2a</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- version update to 7.1.1.36
  * uhdr.c: default initialize range field for hdr/sdr intent inputs to
    enc by @aayushsoni111 in #7482
  * Fixed typo in documentation of MagickAdaptiveBlurImage by @JonahEMorgan
    in #7500
  * Silence warning when freetype delegate is disabled. by @niclet in #7515</changelog>
  <changelog author="pgajdos@suse.com" date="1724760000">- version update to 7.1.1.37
  * Bump azure/trusted-signing-action from 0.3.20 to 0.4.0 #7518
  * Silence warning and fix HEIC_COMPUTE_NUMERIC_VERSION definition when heic delegate is disabled. #7516
  * protect macro arguments with parens 86cb2b1
  * eliminate compiler warnings d90d8b4
  * correct copyright year 115271e
  * Ignore multiple exif and xmp profiles for the same jxl frame and fix reading those profiles per frame. c301208
  * read/write in chunks fff3058
  * optimize fwrite() arguments ada6785
  * Renamed Output folder to Artifacts. 2a69677
  * cancel interactive window selection with right button press ea2a2db
  * cosmetic 712bde4
  * eliminate compiler warning 9a9a25c
  * eliminate compiler warning 0bd1687
  * Make images mandatory in the issue template. c01fd37
  * Added extra header detection for avif files. 9fc0590
  * allow SeekBlob() to set an offset beyond the end of the blob 27c3f99
  * be less forgiving for invalid image indexes 25db2e5
  * Fixed problem with empty macros (#7562) 9fda5f2
  * Added missing null checks for RequestOpenCLDevice. f85448e
  * Added missing null check for AcquireOpenCLCommandQueue. 295e9c8
  * persist app1 jpeg profile (ImageMagick/ImageMagick#4713) f0357c7
  * Fixed build error. b3dd431
  * Remove some of the dependencies for the macos-13 build. d0bce95
  * parentheses is the plural of parenthesis 1fac80a
  * distribute quantization error for -dither FloydSteinberg -depth 5b2825b
  * release 8a0da9f
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565</changelog>
  <changelog author="pgajdos@suse.com" date="1726228800">- version update to 7.1.1.38
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565
  * beta release 250b748
  * deprecate the -respect-paranthesis option 4e7d789
  * Build fixes. b80c509
  * save IPTC + ICC profiles are profiles, not properties 25d5335
  * update copyright year 4caf7d1
  * Patch to fix reading of the ICC profile. 18377f9
  * prepping framework to interact with X11 clipboard b20dda3
  * Build fix. 20a5af3
  * More build fixes. c36fdf0
  * Another attempt to silence the warnings. 600708c
  * Use SetImageProfilePrivate to avoid duplicate allocations. f246eab
  * support clipboard delegate 39a135a
  * restore clipboard.c 1070b17
  * improved rounding 27a0a9c
  * don't allow negative scenes 8fda05a
  * eliminate compiler warnings 878daf9
- modified patches
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1728216000">- version update to 7.1.1.39
  * Add missing Threshold command to command array of Region of Interest mode #7606
  * uhdr.c: update uhdr coder for gainmap metadata configuration #7635
  * uhdr: fix language choice in autoconf #7663</changelog>
  <changelog author="Yann BOYER &lt;yann.boyer742@gmail.com&gt;" date="1731326400">- version update to 7.1.1.40
  * .cut (Dr Halo) reading when run count in header #7734
  * Bump azure/trusted-signing-action from 0.4.0 to 0.5.0 #7725
  * Implement Magic Kernel Sharp 2013 and 2021 #7701
  * don't process TIFF image if there is an exception
  * Corrected check for indexed channels in PSD files.
  * export exception when undo resource limit exceeded</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1731844800">- version update to 7.1.1.41
  * Fix compiler identification with Clang on Darwin in #7773
  * revert map changes breaking ABI in #7768</changelog>
</package>
<package pkgid="62ce16f09925d00b9f0693ae4199252c52edf19fbefdd9e87c2e5d0fe77925e8e75c325ed098be5fab480d9002a1df4bc3a80e8ea8609d551e38fcb7970450a0" name="ImageMagick-debugsource" arch="x86_64">
  <version epoch="0" ver="7.1.1.41" rel="1.0.2.1.sr20241103"/>
  <changelog author="Michael Vetter &lt;mvetter@suse.com&gt;" date="1708603200">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1709035200">- version update to 7.1.1.29
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709380800">- We can not replace a symlink with a directory on the directly
  Unregister the whole group manually in %pre with
  update-alternatives. (boo#1220818)
  Restore Requires(pre) on update-alternatives for the mean time.</changelog>
  <changelog author="pgajdos@suse.com" date="1709553600">- enable SVG again
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711022400">- allow delegates to be executed, was disabled by default policy
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711108800">- allow stdin/stdout
- modified patches
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1712577600">- version update to 7.1.1.30
  * install perl module into user-specified prefix by @bugfood in #7192
  * Fix bmp option to bypass file size check by @OnTheList-1 in #7194
  * add support for encoding/decoding ultrahdr images by @aayushsoni111 in #7198
  * Updates to uhdr.c by @aayushsoni111 in #7217
- added patches
  fix https://github.com/ImageMagick/ImageMagick/issues/7230
  + ImageMagick-wmflite-detection.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713182400">- relax list-length resource limit, fixes build of python-Wand
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713787200">- version update to 7.1.1.31
  * Convert big PDF documents is slow #7263
  * Update release.yml #7258
  * Update README.md #7245
  * uhdr.c: verify the availability of error message before accessing it #7229
- removed patches
  - ImageMagick-wmflite-detection.patch (upstreamed)
  `</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1714910400">- version update to 7.1.1.32
  * Fix GIF ICC profile reading #7282
  * uhdr.c: add support for rgb inputs #7273</changelog>
  <changelog author="pgajdos@suse.com" date="1715860800">- reverted update-alternatives usage removal [bsc#1122033][bsc#1220818]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1716638400">- version update to 7.1.1.33
  * Fix typo in #7294
  * Bump azure/trusted-signing-action from 0.3.16 to 0.3.18 in #7325
  * Bump caphyon/advinst-github-action from 1.1 to 2.0 in #7326
- added patch
  + ImageMagick-update-image-signature.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1719144000">- version update to 7.1.1.34
  * Bump azure/trusted-signing-action from 0.3.18 to 0.3.19 in #7348
  * Fix a typo in convert deprecation warning in #7383
  * Bump azure/trusted-signing-action from 0.3.19 to 0.3.20 in #7388
  * Updated FontConfig query to include font index, fixing (#7374) in #7409
- removed patch (upstreamed)
  - ImageMagick-update-image-signature.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1721908800">- version update to 7.1.1.35
  * Also set dpi-x and dpi-y when running rsvg-convert. eac001f
  * convert sub-command is deprecated d67039e
  * only operators should disable "identify ping" (ImageMagick/ImageMagick#7441) a262192
  * fix compiler error ecc21c7
  * -outdir deprecated 9980efa
  * Get the correct width and height when heic:preserve-orientation is set to true. ed3a0dd
  * Set heic image orientation using transform information. ba470aa
  * Exit earlier when the symlink could not be created when invoking the svg:decode delegate. 8a48edd
  * Fixed MSYS2 build error. 3b22378
  * Also set the DNG properties when pinging the image. fc1c61b
  * Silence warning when lqr delegate is disabled. ae0d69a
  * Added version check for the heif_properties.h include. 656b4d2
  * Make sure we always use the i64 version of the "file methods" on Windows. b3e8a78
  * Changed defines to use method instead of a define. 75b66c4
  * Changes due to upgrade of libheif. 841f033
  * smooth the rendering of an ellipse (ImageMagick/ImageMagick#7465) 1bfce2a</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- version update to 7.1.1.36
  * uhdr.c: default initialize range field for hdr/sdr intent inputs to
    enc by @aayushsoni111 in #7482
  * Fixed typo in documentation of MagickAdaptiveBlurImage by @JonahEMorgan
    in #7500
  * Silence warning when freetype delegate is disabled. by @niclet in #7515</changelog>
  <changelog author="pgajdos@suse.com" date="1724760000">- version update to 7.1.1.37
  * Bump azure/trusted-signing-action from 0.3.20 to 0.4.0 #7518
  * Silence warning and fix HEIC_COMPUTE_NUMERIC_VERSION definition when heic delegate is disabled. #7516
  * protect macro arguments with parens 86cb2b1
  * eliminate compiler warnings d90d8b4
  * correct copyright year 115271e
  * Ignore multiple exif and xmp profiles for the same jxl frame and fix reading those profiles per frame. c301208
  * read/write in chunks fff3058
  * optimize fwrite() arguments ada6785
  * Renamed Output folder to Artifacts. 2a69677
  * cancel interactive window selection with right button press ea2a2db
  * cosmetic 712bde4
  * eliminate compiler warning 9a9a25c
  * eliminate compiler warning 0bd1687
  * Make images mandatory in the issue template. c01fd37
  * Added extra header detection for avif files. 9fc0590
  * allow SeekBlob() to set an offset beyond the end of the blob 27c3f99
  * be less forgiving for invalid image indexes 25db2e5
  * Fixed problem with empty macros (#7562) 9fda5f2
  * Added missing null checks for RequestOpenCLDevice. f85448e
  * Added missing null check for AcquireOpenCLCommandQueue. 295e9c8
  * persist app1 jpeg profile (ImageMagick/ImageMagick#4713) f0357c7
  * Fixed build error. b3dd431
  * Remove some of the dependencies for the macos-13 build. d0bce95
  * parentheses is the plural of parenthesis 1fac80a
  * distribute quantization error for -dither FloydSteinberg -depth 5b2825b
  * release 8a0da9f
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565</changelog>
  <changelog author="pgajdos@suse.com" date="1726228800">- version update to 7.1.1.38
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565
  * beta release 250b748
  * deprecate the -respect-paranthesis option 4e7d789
  * Build fixes. b80c509
  * save IPTC + ICC profiles are profiles, not properties 25d5335
  * update copyright year 4caf7d1
  * Patch to fix reading of the ICC profile. 18377f9
  * prepping framework to interact with X11 clipboard b20dda3
  * Build fix. 20a5af3
  * More build fixes. c36fdf0
  * Another attempt to silence the warnings. 600708c
  * Use SetImageProfilePrivate to avoid duplicate allocations. f246eab
  * support clipboard delegate 39a135a
  * restore clipboard.c 1070b17
  * improved rounding 27a0a9c
  * don't allow negative scenes 8fda05a
  * eliminate compiler warnings 878daf9
- modified patches
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1728216000">- version update to 7.1.1.39
  * Add missing Threshold command to command array of Region of Interest mode #7606
  * uhdr.c: update uhdr coder for gainmap metadata configuration #7635
  * uhdr: fix language choice in autoconf #7663</changelog>
  <changelog author="Yann BOYER &lt;yann.boyer742@gmail.com&gt;" date="1731326400">- version update to 7.1.1.40
  * .cut (Dr Halo) reading when run count in header #7734
  * Bump azure/trusted-signing-action from 0.4.0 to 0.5.0 #7725
  * Implement Magic Kernel Sharp 2013 and 2021 #7701
  * don't process TIFF image if there is an exception
  * Corrected check for indexed channels in PSD files.
  * export exception when undo resource limit exceeded</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1731844800">- version update to 7.1.1.41
  * Fix compiler identification with Clang on Darwin in #7773
  * revert map changes breaking ABI in #7768</changelog>
</package>
<package pkgid="be877d0d1db74a4fdb2ca7331052100ac369450f09e33553a9403b94d0b2a6d4f31e8e4129818f21e70da3da5c07bdc902d1cb4479be28ab0a6b18c42e87f4d5" name="ImageMagick-devel-32bit" arch="x86_64">
  <version epoch="0" ver="7.1.1.36" rel="1.1"/>
  <changelog author="munix9@googlemail.com" date="1705233600">- Fix incomplete removal of update-alternatives for config
- Replace obsolete 'otherproviders(imagick-%{config_spec})' with
  'Conflicts: imagick-%{config_spec}'</changelog>
  <changelog author="pgajdos@suse.com" date="1705320000">- use correct policy.xml</changelog>
  <changelog author="pgajdos@suse.com" date="1705406400">- only one configuration again, based on upstream 'secure' policy
- other upstream policies packaged in documentation</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1705838400">- version update to 7.1.1.27
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1707652800">- version update to 7.1.1.28
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Michael Vetter &lt;mvetter@suse.com&gt;" date="1708603200">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1709035200">- version update to 7.1.1.29
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709380800">- We can not replace a symlink with a directory on the directly
  Unregister the whole group manually in %pre with
  update-alternatives. (boo#1220818)
  Restore Requires(pre) on update-alternatives for the mean time.</changelog>
  <changelog author="pgajdos@suse.com" date="1709553600">- enable SVG again
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711022400">- allow delegates to be executed, was disabled by default policy
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711108800">- allow stdin/stdout
- modified patches
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1712577600">- version update to 7.1.1.30
  * install perl module into user-specified prefix by @bugfood in #7192
  * Fix bmp option to bypass file size check by @OnTheList-1 in #7194
  * add support for encoding/decoding ultrahdr images by @aayushsoni111 in #7198
  * Updates to uhdr.c by @aayushsoni111 in #7217
- added patches
  fix https://github.com/ImageMagick/ImageMagick/issues/7230
  + ImageMagick-wmflite-detection.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713182400">- relax list-length resource limit, fixes build of python-Wand
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713787200">- version update to 7.1.1.31
  * Convert big PDF documents is slow #7263
  * Update release.yml #7258
  * Update README.md #7245
  * uhdr.c: verify the availability of error message before accessing it #7229
- removed patches
  - ImageMagick-wmflite-detection.patch (upstreamed)
  `</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1714910400">- version update to 7.1.1.32
  * Fix GIF ICC profile reading #7282
  * uhdr.c: add support for rgb inputs #7273</changelog>
  <changelog author="pgajdos@suse.com" date="1715860800">- reverted update-alternatives usage removal [bsc#1122033][bsc#1220818]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1716638400">- version update to 7.1.1.33
  * Fix typo in #7294
  * Bump azure/trusted-signing-action from 0.3.16 to 0.3.18 in #7325
  * Bump caphyon/advinst-github-action from 1.1 to 2.0 in #7326
- added patch
  + ImageMagick-update-image-signature.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1719144000">- version update to 7.1.1.34
  * Bump azure/trusted-signing-action from 0.3.18 to 0.3.19 in #7348
  * Fix a typo in convert deprecation warning in #7383
  * Bump azure/trusted-signing-action from 0.3.19 to 0.3.20 in #7388
  * Updated FontConfig query to include font index, fixing (#7374) in #7409
- removed patch (upstreamed)
  - ImageMagick-update-image-signature.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1721908800">- version update to 7.1.1.35
  * Also set dpi-x and dpi-y when running rsvg-convert. eac001f
  * convert sub-command is deprecated d67039e
  * only operators should disable "identify ping" (ImageMagick/ImageMagick#7441) a262192
  * fix compiler error ecc21c7
  * -outdir deprecated 9980efa
  * Get the correct width and height when heic:preserve-orientation is set to true. ed3a0dd
  * Set heic image orientation using transform information. ba470aa
  * Exit earlier when the symlink could not be created when invoking the svg:decode delegate. 8a48edd
  * Fixed MSYS2 build error. 3b22378
  * Also set the DNG properties when pinging the image. fc1c61b
  * Silence warning when lqr delegate is disabled. ae0d69a
  * Added version check for the heif_properties.h include. 656b4d2
  * Make sure we always use the i64 version of the "file methods" on Windows. b3e8a78
  * Changed defines to use method instead of a define. 75b66c4
  * Changes due to upgrade of libheif. 841f033
  * smooth the rendering of an ellipse (ImageMagick/ImageMagick#7465) 1bfce2a</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- version update to 7.1.1.36
  * uhdr.c: default initialize range field for hdr/sdr intent inputs to
    enc by @aayushsoni111 in #7482
  * Fixed typo in documentation of MagickAdaptiveBlurImage by @JonahEMorgan
    in #7500
  * Silence warning when freetype delegate is disabled. by @niclet in #7515</changelog>
</package>
<package pkgid="246e9bbd723e9a984d1a533c265d78abbc3040d66b59cf09ce318cdf4e0dee201a890158633b35f60c0e1bf001e3da6ccdda24c1f00835a9cca36d737cc4030f" name="ImageMagick-devel-32bit" arch="x86_64">
  <version epoch="0" ver="7.1.1.37" rel="1.0.4.1.sr20240803"/>
  <changelog author="pgajdos@suse.com" date="1705320000">- use correct policy.xml</changelog>
  <changelog author="pgajdos@suse.com" date="1705406400">- only one configuration again, based on upstream 'secure' policy
- other upstream policies packaged in documentation</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1705838400">- version update to 7.1.1.27
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1707652800">- version update to 7.1.1.28
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Michael Vetter &lt;mvetter@suse.com&gt;" date="1708603200">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1709035200">- version update to 7.1.1.29
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709380800">- We can not replace a symlink with a directory on the directly
  Unregister the whole group manually in %pre with
  update-alternatives. (boo#1220818)
  Restore Requires(pre) on update-alternatives for the mean time.</changelog>
  <changelog author="pgajdos@suse.com" date="1709553600">- enable SVG again
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711022400">- allow delegates to be executed, was disabled by default policy
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711108800">- allow stdin/stdout
- modified patches
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1712577600">- version update to 7.1.1.30
  * install perl module into user-specified prefix by @bugfood in #7192
  * Fix bmp option to bypass file size check by @OnTheList-1 in #7194
  * add support for encoding/decoding ultrahdr images by @aayushsoni111 in #7198
  * Updates to uhdr.c by @aayushsoni111 in #7217
- added patches
  fix https://github.com/ImageMagick/ImageMagick/issues/7230
  + ImageMagick-wmflite-detection.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713182400">- relax list-length resource limit, fixes build of python-Wand
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713787200">- version update to 7.1.1.31
  * Convert big PDF documents is slow #7263
  * Update release.yml #7258
  * Update README.md #7245
  * uhdr.c: verify the availability of error message before accessing it #7229
- removed patches
  - ImageMagick-wmflite-detection.patch (upstreamed)
  `</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1714910400">- version update to 7.1.1.32
  * Fix GIF ICC profile reading #7282
  * uhdr.c: add support for rgb inputs #7273</changelog>
  <changelog author="pgajdos@suse.com" date="1715860800">- reverted update-alternatives usage removal [bsc#1122033][bsc#1220818]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1716638400">- version update to 7.1.1.33
  * Fix typo in #7294
  * Bump azure/trusted-signing-action from 0.3.16 to 0.3.18 in #7325
  * Bump caphyon/advinst-github-action from 1.1 to 2.0 in #7326
- added patch
  + ImageMagick-update-image-signature.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1719144000">- version update to 7.1.1.34
  * Bump azure/trusted-signing-action from 0.3.18 to 0.3.19 in #7348
  * Fix a typo in convert deprecation warning in #7383
  * Bump azure/trusted-signing-action from 0.3.19 to 0.3.20 in #7388
  * Updated FontConfig query to include font index, fixing (#7374) in #7409
- removed patch (upstreamed)
  - ImageMagick-update-image-signature.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1721908800">- version update to 7.1.1.35
  * Also set dpi-x and dpi-y when running rsvg-convert. eac001f
  * convert sub-command is deprecated d67039e
  * only operators should disable "identify ping" (ImageMagick/ImageMagick#7441) a262192
  * fix compiler error ecc21c7
  * -outdir deprecated 9980efa
  * Get the correct width and height when heic:preserve-orientation is set to true. ed3a0dd
  * Set heic image orientation using transform information. ba470aa
  * Exit earlier when the symlink could not be created when invoking the svg:decode delegate. 8a48edd
  * Fixed MSYS2 build error. 3b22378
  * Also set the DNG properties when pinging the image. fc1c61b
  * Silence warning when lqr delegate is disabled. ae0d69a
  * Added version check for the heif_properties.h include. 656b4d2
  * Make sure we always use the i64 version of the "file methods" on Windows. b3e8a78
  * Changed defines to use method instead of a define. 75b66c4
  * Changes due to upgrade of libheif. 841f033
  * smooth the rendering of an ellipse (ImageMagick/ImageMagick#7465) 1bfce2a</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- version update to 7.1.1.36
  * uhdr.c: default initialize range field for hdr/sdr intent inputs to
    enc by @aayushsoni111 in #7482
  * Fixed typo in documentation of MagickAdaptiveBlurImage by @JonahEMorgan
    in #7500
  * Silence warning when freetype delegate is disabled. by @niclet in #7515</changelog>
  <changelog author="pgajdos@suse.com" date="1724760000">- version update to 7.1.1.37
  * Bump azure/trusted-signing-action from 0.3.20 to 0.4.0 #7518
  * Silence warning and fix HEIC_COMPUTE_NUMERIC_VERSION definition when heic delegate is disabled. #7516
  * protect macro arguments with parens 86cb2b1
  * eliminate compiler warnings d90d8b4
  * correct copyright year 115271e
  * Ignore multiple exif and xmp profiles for the same jxl frame and fix reading those profiles per frame. c301208
  * read/write in chunks fff3058
  * optimize fwrite() arguments ada6785
  * Renamed Output folder to Artifacts. 2a69677
  * cancel interactive window selection with right button press ea2a2db
  * cosmetic 712bde4
  * eliminate compiler warning 9a9a25c
  * eliminate compiler warning 0bd1687
  * Make images mandatory in the issue template. c01fd37
  * Added extra header detection for avif files. 9fc0590
  * allow SeekBlob() to set an offset beyond the end of the blob 27c3f99
  * be less forgiving for invalid image indexes 25db2e5
  * Fixed problem with empty macros (#7562) 9fda5f2
  * Added missing null checks for RequestOpenCLDevice. f85448e
  * Added missing null check for AcquireOpenCLCommandQueue. 295e9c8
  * persist app1 jpeg profile (ImageMagick/ImageMagick#4713) f0357c7
  * Fixed build error. b3dd431
  * Remove some of the dependencies for the macos-13 build. d0bce95
  * parentheses is the plural of parenthesis 1fac80a
  * distribute quantization error for -dither FloydSteinberg -depth 5b2825b
  * release 8a0da9f
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565</changelog>
</package>
<package pkgid="bb8915d8f25963c03e9e681990cde99560c42a8f4e797896574be0ea4e478ae60afb761b3a4561958ebb64d88ea6e076de30bac642dbc0e56c10869a98143de5" name="ImageMagick-devel-32bit" arch="x86_64">
  <version epoch="0" ver="7.1.1.37" rel="1.1"/>
  <changelog author="pgajdos@suse.com" date="1705320000">- use correct policy.xml</changelog>
  <changelog author="pgajdos@suse.com" date="1705406400">- only one configuration again, based on upstream 'secure' policy
- other upstream policies packaged in documentation</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1705838400">- version update to 7.1.1.27
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1707652800">- version update to 7.1.1.28
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Michael Vetter &lt;mvetter@suse.com&gt;" date="1708603200">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1709035200">- version update to 7.1.1.29
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709380800">- We can not replace a symlink with a directory on the directly
  Unregister the whole group manually in %pre with
  update-alternatives. (boo#1220818)
  Restore Requires(pre) on update-alternatives for the mean time.</changelog>
  <changelog author="pgajdos@suse.com" date="1709553600">- enable SVG again
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711022400">- allow delegates to be executed, was disabled by default policy
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711108800">- allow stdin/stdout
- modified patches
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1712577600">- version update to 7.1.1.30
  * install perl module into user-specified prefix by @bugfood in #7192
  * Fix bmp option to bypass file size check by @OnTheList-1 in #7194
  * add support for encoding/decoding ultrahdr images by @aayushsoni111 in #7198
  * Updates to uhdr.c by @aayushsoni111 in #7217
- added patches
  fix https://github.com/ImageMagick/ImageMagick/issues/7230
  + ImageMagick-wmflite-detection.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713182400">- relax list-length resource limit, fixes build of python-Wand
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713787200">- version update to 7.1.1.31
  * Convert big PDF documents is slow #7263
  * Update release.yml #7258
  * Update README.md #7245
  * uhdr.c: verify the availability of error message before accessing it #7229
- removed patches
  - ImageMagick-wmflite-detection.patch (upstreamed)
  `</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1714910400">- version update to 7.1.1.32
  * Fix GIF ICC profile reading #7282
  * uhdr.c: add support for rgb inputs #7273</changelog>
  <changelog author="pgajdos@suse.com" date="1715860800">- reverted update-alternatives usage removal [bsc#1122033][bsc#1220818]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1716638400">- version update to 7.1.1.33
  * Fix typo in #7294
  * Bump azure/trusted-signing-action from 0.3.16 to 0.3.18 in #7325
  * Bump caphyon/advinst-github-action from 1.1 to 2.0 in #7326
- added patch
  + ImageMagick-update-image-signature.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1719144000">- version update to 7.1.1.34
  * Bump azure/trusted-signing-action from 0.3.18 to 0.3.19 in #7348
  * Fix a typo in convert deprecation warning in #7383
  * Bump azure/trusted-signing-action from 0.3.19 to 0.3.20 in #7388
  * Updated FontConfig query to include font index, fixing (#7374) in #7409
- removed patch (upstreamed)
  - ImageMagick-update-image-signature.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1721908800">- version update to 7.1.1.35
  * Also set dpi-x and dpi-y when running rsvg-convert. eac001f
  * convert sub-command is deprecated d67039e
  * only operators should disable "identify ping" (ImageMagick/ImageMagick#7441) a262192
  * fix compiler error ecc21c7
  * -outdir deprecated 9980efa
  * Get the correct width and height when heic:preserve-orientation is set to true. ed3a0dd
  * Set heic image orientation using transform information. ba470aa
  * Exit earlier when the symlink could not be created when invoking the svg:decode delegate. 8a48edd
  * Fixed MSYS2 build error. 3b22378
  * Also set the DNG properties when pinging the image. fc1c61b
  * Silence warning when lqr delegate is disabled. ae0d69a
  * Added version check for the heif_properties.h include. 656b4d2
  * Make sure we always use the i64 version of the "file methods" on Windows. b3e8a78
  * Changed defines to use method instead of a define. 75b66c4
  * Changes due to upgrade of libheif. 841f033
  * smooth the rendering of an ellipse (ImageMagick/ImageMagick#7465) 1bfce2a</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- version update to 7.1.1.36
  * uhdr.c: default initialize range field for hdr/sdr intent inputs to
    enc by @aayushsoni111 in #7482
  * Fixed typo in documentation of MagickAdaptiveBlurImage by @JonahEMorgan
    in #7500
  * Silence warning when freetype delegate is disabled. by @niclet in #7515</changelog>
  <changelog author="pgajdos@suse.com" date="1724760000">- version update to 7.1.1.37
  * Bump azure/trusted-signing-action from 0.3.20 to 0.4.0 #7518
  * Silence warning and fix HEIC_COMPUTE_NUMERIC_VERSION definition when heic delegate is disabled. #7516
  * protect macro arguments with parens 86cb2b1
  * eliminate compiler warnings d90d8b4
  * correct copyright year 115271e
  * Ignore multiple exif and xmp profiles for the same jxl frame and fix reading those profiles per frame. c301208
  * read/write in chunks fff3058
  * optimize fwrite() arguments ada6785
  * Renamed Output folder to Artifacts. 2a69677
  * cancel interactive window selection with right button press ea2a2db
  * cosmetic 712bde4
  * eliminate compiler warning 9a9a25c
  * eliminate compiler warning 0bd1687
  * Make images mandatory in the issue template. c01fd37
  * Added extra header detection for avif files. 9fc0590
  * allow SeekBlob() to set an offset beyond the end of the blob 27c3f99
  * be less forgiving for invalid image indexes 25db2e5
  * Fixed problem with empty macros (#7562) 9fda5f2
  * Added missing null checks for RequestOpenCLDevice. f85448e
  * Added missing null check for AcquireOpenCLCommandQueue. 295e9c8
  * persist app1 jpeg profile (ImageMagick/ImageMagick#4713) f0357c7
  * Fixed build error. b3dd431
  * Remove some of the dependencies for the macos-13 build. d0bce95
  * parentheses is the plural of parenthesis 1fac80a
  * distribute quantization error for -dither FloydSteinberg -depth 5b2825b
  * release 8a0da9f
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565</changelog>
</package>
<package pkgid="31a318ced0583cc6d2e36cd8baf5671532b00439f02f384e63ac2ad17e267d8acde7ed32bdeb49f0f7948413b6c6ca7dd72af6d5622099798138c796ddfce968" name="ImageMagick-devel-32bit" arch="x86_64">
  <version epoch="0" ver="7.1.1.39" rel="1.1"/>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1705838400">- version update to 7.1.1.27
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1707652800">- version update to 7.1.1.28
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Michael Vetter &lt;mvetter@suse.com&gt;" date="1708603200">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1709035200">- version update to 7.1.1.29
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709380800">- We can not replace a symlink with a directory on the directly
  Unregister the whole group manually in %pre with
  update-alternatives. (boo#1220818)
  Restore Requires(pre) on update-alternatives for the mean time.</changelog>
  <changelog author="pgajdos@suse.com" date="1709553600">- enable SVG again
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711022400">- allow delegates to be executed, was disabled by default policy
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711108800">- allow stdin/stdout
- modified patches
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1712577600">- version update to 7.1.1.30
  * install perl module into user-specified prefix by @bugfood in #7192
  * Fix bmp option to bypass file size check by @OnTheList-1 in #7194
  * add support for encoding/decoding ultrahdr images by @aayushsoni111 in #7198
  * Updates to uhdr.c by @aayushsoni111 in #7217
- added patches
  fix https://github.com/ImageMagick/ImageMagick/issues/7230
  + ImageMagick-wmflite-detection.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713182400">- relax list-length resource limit, fixes build of python-Wand
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713787200">- version update to 7.1.1.31
  * Convert big PDF documents is slow #7263
  * Update release.yml #7258
  * Update README.md #7245
  * uhdr.c: verify the availability of error message before accessing it #7229
- removed patches
  - ImageMagick-wmflite-detection.patch (upstreamed)
  `</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1714910400">- version update to 7.1.1.32
  * Fix GIF ICC profile reading #7282
  * uhdr.c: add support for rgb inputs #7273</changelog>
  <changelog author="pgajdos@suse.com" date="1715860800">- reverted update-alternatives usage removal [bsc#1122033][bsc#1220818]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1716638400">- version update to 7.1.1.33
  * Fix typo in #7294
  * Bump azure/trusted-signing-action from 0.3.16 to 0.3.18 in #7325
  * Bump caphyon/advinst-github-action from 1.1 to 2.0 in #7326
- added patch
  + ImageMagick-update-image-signature.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1719144000">- version update to 7.1.1.34
  * Bump azure/trusted-signing-action from 0.3.18 to 0.3.19 in #7348
  * Fix a typo in convert deprecation warning in #7383
  * Bump azure/trusted-signing-action from 0.3.19 to 0.3.20 in #7388
  * Updated FontConfig query to include font index, fixing (#7374) in #7409
- removed patch (upstreamed)
  - ImageMagick-update-image-signature.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1721908800">- version update to 7.1.1.35
  * Also set dpi-x and dpi-y when running rsvg-convert. eac001f
  * convert sub-command is deprecated d67039e
  * only operators should disable "identify ping" (ImageMagick/ImageMagick#7441) a262192
  * fix compiler error ecc21c7
  * -outdir deprecated 9980efa
  * Get the correct width and height when heic:preserve-orientation is set to true. ed3a0dd
  * Set heic image orientation using transform information. ba470aa
  * Exit earlier when the symlink could not be created when invoking the svg:decode delegate. 8a48edd
  * Fixed MSYS2 build error. 3b22378
  * Also set the DNG properties when pinging the image. fc1c61b
  * Silence warning when lqr delegate is disabled. ae0d69a
  * Added version check for the heif_properties.h include. 656b4d2
  * Make sure we always use the i64 version of the "file methods" on Windows. b3e8a78
  * Changed defines to use method instead of a define. 75b66c4
  * Changes due to upgrade of libheif. 841f033
  * smooth the rendering of an ellipse (ImageMagick/ImageMagick#7465) 1bfce2a</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- version update to 7.1.1.36
  * uhdr.c: default initialize range field for hdr/sdr intent inputs to
    enc by @aayushsoni111 in #7482
  * Fixed typo in documentation of MagickAdaptiveBlurImage by @JonahEMorgan
    in #7500
  * Silence warning when freetype delegate is disabled. by @niclet in #7515</changelog>
  <changelog author="pgajdos@suse.com" date="1724760000">- version update to 7.1.1.37
  * Bump azure/trusted-signing-action from 0.3.20 to 0.4.0 #7518
  * Silence warning and fix HEIC_COMPUTE_NUMERIC_VERSION definition when heic delegate is disabled. #7516
  * protect macro arguments with parens 86cb2b1
  * eliminate compiler warnings d90d8b4
  * correct copyright year 115271e
  * Ignore multiple exif and xmp profiles for the same jxl frame and fix reading those profiles per frame. c301208
  * read/write in chunks fff3058
  * optimize fwrite() arguments ada6785
  * Renamed Output folder to Artifacts. 2a69677
  * cancel interactive window selection with right button press ea2a2db
  * cosmetic 712bde4
  * eliminate compiler warning 9a9a25c
  * eliminate compiler warning 0bd1687
  * Make images mandatory in the issue template. c01fd37
  * Added extra header detection for avif files. 9fc0590
  * allow SeekBlob() to set an offset beyond the end of the blob 27c3f99
  * be less forgiving for invalid image indexes 25db2e5
  * Fixed problem with empty macros (#7562) 9fda5f2
  * Added missing null checks for RequestOpenCLDevice. f85448e
  * Added missing null check for AcquireOpenCLCommandQueue. 295e9c8
  * persist app1 jpeg profile (ImageMagick/ImageMagick#4713) f0357c7
  * Fixed build error. b3dd431
  * Remove some of the dependencies for the macos-13 build. d0bce95
  * parentheses is the plural of parenthesis 1fac80a
  * distribute quantization error for -dither FloydSteinberg -depth 5b2825b
  * release 8a0da9f
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565</changelog>
  <changelog author="pgajdos@suse.com" date="1726228800">- version update to 7.1.1.38
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565
  * beta release 250b748
  * deprecate the -respect-paranthesis option 4e7d789
  * Build fixes. b80c509
  * save IPTC + ICC profiles are profiles, not properties 25d5335
  * update copyright year 4caf7d1
  * Patch to fix reading of the ICC profile. 18377f9
  * prepping framework to interact with X11 clipboard b20dda3
  * Build fix. 20a5af3
  * More build fixes. c36fdf0
  * Another attempt to silence the warnings. 600708c
  * Use SetImageProfilePrivate to avoid duplicate allocations. f246eab
  * support clipboard delegate 39a135a
  * restore clipboard.c 1070b17
  * improved rounding 27a0a9c
  * don't allow negative scenes 8fda05a
  * eliminate compiler warnings 878daf9
- modified patches
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1728216000">- version update to 7.1.1.39
  * Add missing Threshold command to command array of Region of Interest mode #7606
  * uhdr.c: update uhdr coder for gainmap metadata configuration #7635
  * uhdr: fix language choice in autoconf #7663</changelog>
</package>
<package pkgid="7247b83ba5a5c955a8471041c478e1fcc3b9c952a087c66818ad5dc988f2ee31509496a655936b850c46392087ad2568ab0fe47717d0a7a56330bff26934b1a6" name="ImageMagick-devel-32bit" arch="x86_64">
  <version epoch="0" ver="7.1.1.41" rel="1.0.2.1.sr20241103"/>
  <changelog author="Michael Vetter &lt;mvetter@suse.com&gt;" date="1708603200">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1709035200">- version update to 7.1.1.29
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709380800">- We can not replace a symlink with a directory on the directly
  Unregister the whole group manually in %pre with
  update-alternatives. (boo#1220818)
  Restore Requires(pre) on update-alternatives for the mean time.</changelog>
  <changelog author="pgajdos@suse.com" date="1709553600">- enable SVG again
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711022400">- allow delegates to be executed, was disabled by default policy
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711108800">- allow stdin/stdout
- modified patches
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1712577600">- version update to 7.1.1.30
  * install perl module into user-specified prefix by @bugfood in #7192
  * Fix bmp option to bypass file size check by @OnTheList-1 in #7194
  * add support for encoding/decoding ultrahdr images by @aayushsoni111 in #7198
  * Updates to uhdr.c by @aayushsoni111 in #7217
- added patches
  fix https://github.com/ImageMagick/ImageMagick/issues/7230
  + ImageMagick-wmflite-detection.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713182400">- relax list-length resource limit, fixes build of python-Wand
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713787200">- version update to 7.1.1.31
  * Convert big PDF documents is slow #7263
  * Update release.yml #7258
  * Update README.md #7245
  * uhdr.c: verify the availability of error message before accessing it #7229
- removed patches
  - ImageMagick-wmflite-detection.patch (upstreamed)
  `</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1714910400">- version update to 7.1.1.32
  * Fix GIF ICC profile reading #7282
  * uhdr.c: add support for rgb inputs #7273</changelog>
  <changelog author="pgajdos@suse.com" date="1715860800">- reverted update-alternatives usage removal [bsc#1122033][bsc#1220818]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1716638400">- version update to 7.1.1.33
  * Fix typo in #7294
  * Bump azure/trusted-signing-action from 0.3.16 to 0.3.18 in #7325
  * Bump caphyon/advinst-github-action from 1.1 to 2.0 in #7326
- added patch
  + ImageMagick-update-image-signature.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1719144000">- version update to 7.1.1.34
  * Bump azure/trusted-signing-action from 0.3.18 to 0.3.19 in #7348
  * Fix a typo in convert deprecation warning in #7383
  * Bump azure/trusted-signing-action from 0.3.19 to 0.3.20 in #7388
  * Updated FontConfig query to include font index, fixing (#7374) in #7409
- removed patch (upstreamed)
  - ImageMagick-update-image-signature.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1721908800">- version update to 7.1.1.35
  * Also set dpi-x and dpi-y when running rsvg-convert. eac001f
  * convert sub-command is deprecated d67039e
  * only operators should disable "identify ping" (ImageMagick/ImageMagick#7441) a262192
  * fix compiler error ecc21c7
  * -outdir deprecated 9980efa
  * Get the correct width and height when heic:preserve-orientation is set to true. ed3a0dd
  * Set heic image orientation using transform information. ba470aa
  * Exit earlier when the symlink could not be created when invoking the svg:decode delegate. 8a48edd
  * Fixed MSYS2 build error. 3b22378
  * Also set the DNG properties when pinging the image. fc1c61b
  * Silence warning when lqr delegate is disabled. ae0d69a
  * Added version check for the heif_properties.h include. 656b4d2
  * Make sure we always use the i64 version of the "file methods" on Windows. b3e8a78
  * Changed defines to use method instead of a define. 75b66c4
  * Changes due to upgrade of libheif. 841f033
  * smooth the rendering of an ellipse (ImageMagick/ImageMagick#7465) 1bfce2a</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- version update to 7.1.1.36
  * uhdr.c: default initialize range field for hdr/sdr intent inputs to
    enc by @aayushsoni111 in #7482
  * Fixed typo in documentation of MagickAdaptiveBlurImage by @JonahEMorgan
    in #7500
  * Silence warning when freetype delegate is disabled. by @niclet in #7515</changelog>
  <changelog author="pgajdos@suse.com" date="1724760000">- version update to 7.1.1.37
  * Bump azure/trusted-signing-action from 0.3.20 to 0.4.0 #7518
  * Silence warning and fix HEIC_COMPUTE_NUMERIC_VERSION definition when heic delegate is disabled. #7516
  * protect macro arguments with parens 86cb2b1
  * eliminate compiler warnings d90d8b4
  * correct copyright year 115271e
  * Ignore multiple exif and xmp profiles for the same jxl frame and fix reading those profiles per frame. c301208
  * read/write in chunks fff3058
  * optimize fwrite() arguments ada6785
  * Renamed Output folder to Artifacts. 2a69677
  * cancel interactive window selection with right button press ea2a2db
  * cosmetic 712bde4
  * eliminate compiler warning 9a9a25c
  * eliminate compiler warning 0bd1687
  * Make images mandatory in the issue template. c01fd37
  * Added extra header detection for avif files. 9fc0590
  * allow SeekBlob() to set an offset beyond the end of the blob 27c3f99
  * be less forgiving for invalid image indexes 25db2e5
  * Fixed problem with empty macros (#7562) 9fda5f2
  * Added missing null checks for RequestOpenCLDevice. f85448e
  * Added missing null check for AcquireOpenCLCommandQueue. 295e9c8
  * persist app1 jpeg profile (ImageMagick/ImageMagick#4713) f0357c7
  * Fixed build error. b3dd431
  * Remove some of the dependencies for the macos-13 build. d0bce95
  * parentheses is the plural of parenthesis 1fac80a
  * distribute quantization error for -dither FloydSteinberg -depth 5b2825b
  * release 8a0da9f
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565</changelog>
  <changelog author="pgajdos@suse.com" date="1726228800">- version update to 7.1.1.38
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565
  * beta release 250b748
  * deprecate the -respect-paranthesis option 4e7d789
  * Build fixes. b80c509
  * save IPTC + ICC profiles are profiles, not properties 25d5335
  * update copyright year 4caf7d1
  * Patch to fix reading of the ICC profile. 18377f9
  * prepping framework to interact with X11 clipboard b20dda3
  * Build fix. 20a5af3
  * More build fixes. c36fdf0
  * Another attempt to silence the warnings. 600708c
  * Use SetImageProfilePrivate to avoid duplicate allocations. f246eab
  * support clipboard delegate 39a135a
  * restore clipboard.c 1070b17
  * improved rounding 27a0a9c
  * don't allow negative scenes 8fda05a
  * eliminate compiler warnings 878daf9
- modified patches
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1728216000">- version update to 7.1.1.39
  * Add missing Threshold command to command array of Region of Interest mode #7606
  * uhdr.c: update uhdr coder for gainmap metadata configuration #7635
  * uhdr: fix language choice in autoconf #7663</changelog>
  <changelog author="Yann BOYER &lt;yann.boyer742@gmail.com&gt;" date="1731326400">- version update to 7.1.1.40
  * .cut (Dr Halo) reading when run count in header #7734
  * Bump azure/trusted-signing-action from 0.4.0 to 0.5.0 #7725
  * Implement Magic Kernel Sharp 2013 and 2021 #7701
  * don't process TIFF image if there is an exception
  * Corrected check for indexed channels in PSD files.
  * export exception when undo resource limit exceeded</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1731844800">- version update to 7.1.1.41
  * Fix compiler identification with Clang on Darwin in #7773
  * revert map changes breaking ABI in #7768</changelog>
</package>
<package pkgid="824da8cce20cf2e07b173418754a7d889a07f296d1a7f46d6d717fd50a95040c6593c6e060754e3551bdb8ed7d05dc328850ffcd6d8633998d3df8362be4ad19" name="ImageMagick-devel" arch="i586">
  <version epoch="0" ver="7.1.1.36" rel="1.1"/>
  <changelog author="munix9@googlemail.com" date="1705233600">- Fix incomplete removal of update-alternatives for config
- Replace obsolete 'otherproviders(imagick-%{config_spec})' with
  'Conflicts: imagick-%{config_spec}'</changelog>
  <changelog author="pgajdos@suse.com" date="1705320000">- use correct policy.xml</changelog>
  <changelog author="pgajdos@suse.com" date="1705406400">- only one configuration again, based on upstream 'secure' policy
- other upstream policies packaged in documentation</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1705838400">- version update to 7.1.1.27
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1707652800">- version update to 7.1.1.28
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Michael Vetter &lt;mvetter@suse.com&gt;" date="1708603200">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1709035200">- version update to 7.1.1.29
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709380800">- We can not replace a symlink with a directory on the directly
  Unregister the whole group manually in %pre with
  update-alternatives. (boo#1220818)
  Restore Requires(pre) on update-alternatives for the mean time.</changelog>
  <changelog author="pgajdos@suse.com" date="1709553600">- enable SVG again
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711022400">- allow delegates to be executed, was disabled by default policy
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711108800">- allow stdin/stdout
- modified patches
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1712577600">- version update to 7.1.1.30
  * install perl module into user-specified prefix by @bugfood in #7192
  * Fix bmp option to bypass file size check by @OnTheList-1 in #7194
  * add support for encoding/decoding ultrahdr images by @aayushsoni111 in #7198
  * Updates to uhdr.c by @aayushsoni111 in #7217
- added patches
  fix https://github.com/ImageMagick/ImageMagick/issues/7230
  + ImageMagick-wmflite-detection.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713182400">- relax list-length resource limit, fixes build of python-Wand
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713787200">- version update to 7.1.1.31
  * Convert big PDF documents is slow #7263
  * Update release.yml #7258
  * Update README.md #7245
  * uhdr.c: verify the availability of error message before accessing it #7229
- removed patches
  - ImageMagick-wmflite-detection.patch (upstreamed)
  `</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1714910400">- version update to 7.1.1.32
  * Fix GIF ICC profile reading #7282
  * uhdr.c: add support for rgb inputs #7273</changelog>
  <changelog author="pgajdos@suse.com" date="1715860800">- reverted update-alternatives usage removal [bsc#1122033][bsc#1220818]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1716638400">- version update to 7.1.1.33
  * Fix typo in #7294
  * Bump azure/trusted-signing-action from 0.3.16 to 0.3.18 in #7325
  * Bump caphyon/advinst-github-action from 1.1 to 2.0 in #7326
- added patch
  + ImageMagick-update-image-signature.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1719144000">- version update to 7.1.1.34
  * Bump azure/trusted-signing-action from 0.3.18 to 0.3.19 in #7348
  * Fix a typo in convert deprecation warning in #7383
  * Bump azure/trusted-signing-action from 0.3.19 to 0.3.20 in #7388
  * Updated FontConfig query to include font index, fixing (#7374) in #7409
- removed patch (upstreamed)
  - ImageMagick-update-image-signature.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1721908800">- version update to 7.1.1.35
  * Also set dpi-x and dpi-y when running rsvg-convert. eac001f
  * convert sub-command is deprecated d67039e
  * only operators should disable "identify ping" (ImageMagick/ImageMagick#7441) a262192
  * fix compiler error ecc21c7
  * -outdir deprecated 9980efa
  * Get the correct width and height when heic:preserve-orientation is set to true. ed3a0dd
  * Set heic image orientation using transform information. ba470aa
  * Exit earlier when the symlink could not be created when invoking the svg:decode delegate. 8a48edd
  * Fixed MSYS2 build error. 3b22378
  * Also set the DNG properties when pinging the image. fc1c61b
  * Silence warning when lqr delegate is disabled. ae0d69a
  * Added version check for the heif_properties.h include. 656b4d2
  * Make sure we always use the i64 version of the "file methods" on Windows. b3e8a78
  * Changed defines to use method instead of a define. 75b66c4
  * Changes due to upgrade of libheif. 841f033
  * smooth the rendering of an ellipse (ImageMagick/ImageMagick#7465) 1bfce2a</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- version update to 7.1.1.36
  * uhdr.c: default initialize range field for hdr/sdr intent inputs to
    enc by @aayushsoni111 in #7482
  * Fixed typo in documentation of MagickAdaptiveBlurImage by @JonahEMorgan
    in #7500
  * Silence warning when freetype delegate is disabled. by @niclet in #7515</changelog>
</package>
<package pkgid="133da792d4f0aa8c2e7cabf90796b0c4132c5d29175bb9b536a1551969145704ead9927e4f2c6ac862aa9662e530550c3154275a874fb4d33f7d6dc6c689f578" name="ImageMagick-devel" arch="x86_64">
  <version epoch="0" ver="7.1.1.36" rel="1.1"/>
  <changelog author="munix9@googlemail.com" date="1705233600">- Fix incomplete removal of update-alternatives for config
- Replace obsolete 'otherproviders(imagick-%{config_spec})' with
  'Conflicts: imagick-%{config_spec}'</changelog>
  <changelog author="pgajdos@suse.com" date="1705320000">- use correct policy.xml</changelog>
  <changelog author="pgajdos@suse.com" date="1705406400">- only one configuration again, based on upstream 'secure' policy
- other upstream policies packaged in documentation</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1705838400">- version update to 7.1.1.27
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1707652800">- version update to 7.1.1.28
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Michael Vetter &lt;mvetter@suse.com&gt;" date="1708603200">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1709035200">- version update to 7.1.1.29
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709380800">- We can not replace a symlink with a directory on the directly
  Unregister the whole group manually in %pre with
  update-alternatives. (boo#1220818)
  Restore Requires(pre) on update-alternatives for the mean time.</changelog>
  <changelog author="pgajdos@suse.com" date="1709553600">- enable SVG again
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711022400">- allow delegates to be executed, was disabled by default policy
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711108800">- allow stdin/stdout
- modified patches
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1712577600">- version update to 7.1.1.30
  * install perl module into user-specified prefix by @bugfood in #7192
  * Fix bmp option to bypass file size check by @OnTheList-1 in #7194
  * add support for encoding/decoding ultrahdr images by @aayushsoni111 in #7198
  * Updates to uhdr.c by @aayushsoni111 in #7217
- added patches
  fix https://github.com/ImageMagick/ImageMagick/issues/7230
  + ImageMagick-wmflite-detection.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713182400">- relax list-length resource limit, fixes build of python-Wand
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713787200">- version update to 7.1.1.31
  * Convert big PDF documents is slow #7263
  * Update release.yml #7258
  * Update README.md #7245
  * uhdr.c: verify the availability of error message before accessing it #7229
- removed patches
  - ImageMagick-wmflite-detection.patch (upstreamed)
  `</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1714910400">- version update to 7.1.1.32
  * Fix GIF ICC profile reading #7282
  * uhdr.c: add support for rgb inputs #7273</changelog>
  <changelog author="pgajdos@suse.com" date="1715860800">- reverted update-alternatives usage removal [bsc#1122033][bsc#1220818]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1716638400">- version update to 7.1.1.33
  * Fix typo in #7294
  * Bump azure/trusted-signing-action from 0.3.16 to 0.3.18 in #7325
  * Bump caphyon/advinst-github-action from 1.1 to 2.0 in #7326
- added patch
  + ImageMagick-update-image-signature.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1719144000">- version update to 7.1.1.34
  * Bump azure/trusted-signing-action from 0.3.18 to 0.3.19 in #7348
  * Fix a typo in convert deprecation warning in #7383
  * Bump azure/trusted-signing-action from 0.3.19 to 0.3.20 in #7388
  * Updated FontConfig query to include font index, fixing (#7374) in #7409
- removed patch (upstreamed)
  - ImageMagick-update-image-signature.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1721908800">- version update to 7.1.1.35
  * Also set dpi-x and dpi-y when running rsvg-convert. eac001f
  * convert sub-command is deprecated d67039e
  * only operators should disable "identify ping" (ImageMagick/ImageMagick#7441) a262192
  * fix compiler error ecc21c7
  * -outdir deprecated 9980efa
  * Get the correct width and height when heic:preserve-orientation is set to true. ed3a0dd
  * Set heic image orientation using transform information. ba470aa
  * Exit earlier when the symlink could not be created when invoking the svg:decode delegate. 8a48edd
  * Fixed MSYS2 build error. 3b22378
  * Also set the DNG properties when pinging the image. fc1c61b
  * Silence warning when lqr delegate is disabled. ae0d69a
  * Added version check for the heif_properties.h include. 656b4d2
  * Make sure we always use the i64 version of the "file methods" on Windows. b3e8a78
  * Changed defines to use method instead of a define. 75b66c4
  * Changes due to upgrade of libheif. 841f033
  * smooth the rendering of an ellipse (ImageMagick/ImageMagick#7465) 1bfce2a</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- version update to 7.1.1.36
  * uhdr.c: default initialize range field for hdr/sdr intent inputs to
    enc by @aayushsoni111 in #7482
  * Fixed typo in documentation of MagickAdaptiveBlurImage by @JonahEMorgan
    in #7500
  * Silence warning when freetype delegate is disabled. by @niclet in #7515</changelog>
</package>
<package pkgid="d6ffe5c46c701917455059e60aa3a7616bc10cbb2d4fe71f14dfc920fda6156a14b43dc0ed30d190c84ea6aa27cc92a62f41109bcacb4ee556d6109bc4da1a57" name="ImageMagick-devel" arch="i586">
  <version epoch="0" ver="7.1.1.37" rel="1.0.4.1.sr20240803"/>
  <changelog author="pgajdos@suse.com" date="1705320000">- use correct policy.xml</changelog>
  <changelog author="pgajdos@suse.com" date="1705406400">- only one configuration again, based on upstream 'secure' policy
- other upstream policies packaged in documentation</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1705838400">- version update to 7.1.1.27
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1707652800">- version update to 7.1.1.28
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Michael Vetter &lt;mvetter@suse.com&gt;" date="1708603200">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1709035200">- version update to 7.1.1.29
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709380800">- We can not replace a symlink with a directory on the directly
  Unregister the whole group manually in %pre with
  update-alternatives. (boo#1220818)
  Restore Requires(pre) on update-alternatives for the mean time.</changelog>
  <changelog author="pgajdos@suse.com" date="1709553600">- enable SVG again
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711022400">- allow delegates to be executed, was disabled by default policy
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711108800">- allow stdin/stdout
- modified patches
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1712577600">- version update to 7.1.1.30
  * install perl module into user-specified prefix by @bugfood in #7192
  * Fix bmp option to bypass file size check by @OnTheList-1 in #7194
  * add support for encoding/decoding ultrahdr images by @aayushsoni111 in #7198
  * Updates to uhdr.c by @aayushsoni111 in #7217
- added patches
  fix https://github.com/ImageMagick/ImageMagick/issues/7230
  + ImageMagick-wmflite-detection.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713182400">- relax list-length resource limit, fixes build of python-Wand
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713787200">- version update to 7.1.1.31
  * Convert big PDF documents is slow #7263
  * Update release.yml #7258
  * Update README.md #7245
  * uhdr.c: verify the availability of error message before accessing it #7229
- removed patches
  - ImageMagick-wmflite-detection.patch (upstreamed)
  `</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1714910400">- version update to 7.1.1.32
  * Fix GIF ICC profile reading #7282
  * uhdr.c: add support for rgb inputs #7273</changelog>
  <changelog author="pgajdos@suse.com" date="1715860800">- reverted update-alternatives usage removal [bsc#1122033][bsc#1220818]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1716638400">- version update to 7.1.1.33
  * Fix typo in #7294
  * Bump azure/trusted-signing-action from 0.3.16 to 0.3.18 in #7325
  * Bump caphyon/advinst-github-action from 1.1 to 2.0 in #7326
- added patch
  + ImageMagick-update-image-signature.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1719144000">- version update to 7.1.1.34
  * Bump azure/trusted-signing-action from 0.3.18 to 0.3.19 in #7348
  * Fix a typo in convert deprecation warning in #7383
  * Bump azure/trusted-signing-action from 0.3.19 to 0.3.20 in #7388
  * Updated FontConfig query to include font index, fixing (#7374) in #7409
- removed patch (upstreamed)
  - ImageMagick-update-image-signature.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1721908800">- version update to 7.1.1.35
  * Also set dpi-x and dpi-y when running rsvg-convert. eac001f
  * convert sub-command is deprecated d67039e
  * only operators should disable "identify ping" (ImageMagick/ImageMagick#7441) a262192
  * fix compiler error ecc21c7
  * -outdir deprecated 9980efa
  * Get the correct width and height when heic:preserve-orientation is set to true. ed3a0dd
  * Set heic image orientation using transform information. ba470aa
  * Exit earlier when the symlink could not be created when invoking the svg:decode delegate. 8a48edd
  * Fixed MSYS2 build error. 3b22378
  * Also set the DNG properties when pinging the image. fc1c61b
  * Silence warning when lqr delegate is disabled. ae0d69a
  * Added version check for the heif_properties.h include. 656b4d2
  * Make sure we always use the i64 version of the "file methods" on Windows. b3e8a78
  * Changed defines to use method instead of a define. 75b66c4
  * Changes due to upgrade of libheif. 841f033
  * smooth the rendering of an ellipse (ImageMagick/ImageMagick#7465) 1bfce2a</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- version update to 7.1.1.36
  * uhdr.c: default initialize range field for hdr/sdr intent inputs to
    enc by @aayushsoni111 in #7482
  * Fixed typo in documentation of MagickAdaptiveBlurImage by @JonahEMorgan
    in #7500
  * Silence warning when freetype delegate is disabled. by @niclet in #7515</changelog>
  <changelog author="pgajdos@suse.com" date="1724760000">- version update to 7.1.1.37
  * Bump azure/trusted-signing-action from 0.3.20 to 0.4.0 #7518
  * Silence warning and fix HEIC_COMPUTE_NUMERIC_VERSION definition when heic delegate is disabled. #7516
  * protect macro arguments with parens 86cb2b1
  * eliminate compiler warnings d90d8b4
  * correct copyright year 115271e
  * Ignore multiple exif and xmp profiles for the same jxl frame and fix reading those profiles per frame. c301208
  * read/write in chunks fff3058
  * optimize fwrite() arguments ada6785
  * Renamed Output folder to Artifacts. 2a69677
  * cancel interactive window selection with right button press ea2a2db
  * cosmetic 712bde4
  * eliminate compiler warning 9a9a25c
  * eliminate compiler warning 0bd1687
  * Make images mandatory in the issue template. c01fd37
  * Added extra header detection for avif files. 9fc0590
  * allow SeekBlob() to set an offset beyond the end of the blob 27c3f99
  * be less forgiving for invalid image indexes 25db2e5
  * Fixed problem with empty macros (#7562) 9fda5f2
  * Added missing null checks for RequestOpenCLDevice. f85448e
  * Added missing null check for AcquireOpenCLCommandQueue. 295e9c8
  * persist app1 jpeg profile (ImageMagick/ImageMagick#4713) f0357c7
  * Fixed build error. b3dd431
  * Remove some of the dependencies for the macos-13 build. d0bce95
  * parentheses is the plural of parenthesis 1fac80a
  * distribute quantization error for -dither FloydSteinberg -depth 5b2825b
  * release 8a0da9f
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565</changelog>
</package>
<package pkgid="0deb746c0fee6e122266b73b917ecbc43e1d3b439c291e2731cc3ce0ac4b2a56cf8cd66f3a30cf371d76b18bb932d7a946a3b03359ac1b48c48483f4302a0ef8" name="ImageMagick-devel" arch="x86_64">
  <version epoch="0" ver="7.1.1.37" rel="1.0.4.1.sr20240803"/>
  <changelog author="pgajdos@suse.com" date="1705320000">- use correct policy.xml</changelog>
  <changelog author="pgajdos@suse.com" date="1705406400">- only one configuration again, based on upstream 'secure' policy
- other upstream policies packaged in documentation</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1705838400">- version update to 7.1.1.27
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1707652800">- version update to 7.1.1.28
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Michael Vetter &lt;mvetter@suse.com&gt;" date="1708603200">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1709035200">- version update to 7.1.1.29
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709380800">- We can not replace a symlink with a directory on the directly
  Unregister the whole group manually in %pre with
  update-alternatives. (boo#1220818)
  Restore Requires(pre) on update-alternatives for the mean time.</changelog>
  <changelog author="pgajdos@suse.com" date="1709553600">- enable SVG again
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711022400">- allow delegates to be executed, was disabled by default policy
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711108800">- allow stdin/stdout
- modified patches
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1712577600">- version update to 7.1.1.30
  * install perl module into user-specified prefix by @bugfood in #7192
  * Fix bmp option to bypass file size check by @OnTheList-1 in #7194
  * add support for encoding/decoding ultrahdr images by @aayushsoni111 in #7198
  * Updates to uhdr.c by @aayushsoni111 in #7217
- added patches
  fix https://github.com/ImageMagick/ImageMagick/issues/7230
  + ImageMagick-wmflite-detection.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713182400">- relax list-length resource limit, fixes build of python-Wand
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713787200">- version update to 7.1.1.31
  * Convert big PDF documents is slow #7263
  * Update release.yml #7258
  * Update README.md #7245
  * uhdr.c: verify the availability of error message before accessing it #7229
- removed patches
  - ImageMagick-wmflite-detection.patch (upstreamed)
  `</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1714910400">- version update to 7.1.1.32
  * Fix GIF ICC profile reading #7282
  * uhdr.c: add support for rgb inputs #7273</changelog>
  <changelog author="pgajdos@suse.com" date="1715860800">- reverted update-alternatives usage removal [bsc#1122033][bsc#1220818]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1716638400">- version update to 7.1.1.33
  * Fix typo in #7294
  * Bump azure/trusted-signing-action from 0.3.16 to 0.3.18 in #7325
  * Bump caphyon/advinst-github-action from 1.1 to 2.0 in #7326
- added patch
  + ImageMagick-update-image-signature.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1719144000">- version update to 7.1.1.34
  * Bump azure/trusted-signing-action from 0.3.18 to 0.3.19 in #7348
  * Fix a typo in convert deprecation warning in #7383
  * Bump azure/trusted-signing-action from 0.3.19 to 0.3.20 in #7388
  * Updated FontConfig query to include font index, fixing (#7374) in #7409
- removed patch (upstreamed)
  - ImageMagick-update-image-signature.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1721908800">- version update to 7.1.1.35
  * Also set dpi-x and dpi-y when running rsvg-convert. eac001f
  * convert sub-command is deprecated d67039e
  * only operators should disable "identify ping" (ImageMagick/ImageMagick#7441) a262192
  * fix compiler error ecc21c7
  * -outdir deprecated 9980efa
  * Get the correct width and height when heic:preserve-orientation is set to true. ed3a0dd
  * Set heic image orientation using transform information. ba470aa
  * Exit earlier when the symlink could not be created when invoking the svg:decode delegate. 8a48edd
  * Fixed MSYS2 build error. 3b22378
  * Also set the DNG properties when pinging the image. fc1c61b
  * Silence warning when lqr delegate is disabled. ae0d69a
  * Added version check for the heif_properties.h include. 656b4d2
  * Make sure we always use the i64 version of the "file methods" on Windows. b3e8a78
  * Changed defines to use method instead of a define. 75b66c4
  * Changes due to upgrade of libheif. 841f033
  * smooth the rendering of an ellipse (ImageMagick/ImageMagick#7465) 1bfce2a</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- version update to 7.1.1.36
  * uhdr.c: default initialize range field for hdr/sdr intent inputs to
    enc by @aayushsoni111 in #7482
  * Fixed typo in documentation of MagickAdaptiveBlurImage by @JonahEMorgan
    in #7500
  * Silence warning when freetype delegate is disabled. by @niclet in #7515</changelog>
  <changelog author="pgajdos@suse.com" date="1724760000">- version update to 7.1.1.37
  * Bump azure/trusted-signing-action from 0.3.20 to 0.4.0 #7518
  * Silence warning and fix HEIC_COMPUTE_NUMERIC_VERSION definition when heic delegate is disabled. #7516
  * protect macro arguments with parens 86cb2b1
  * eliminate compiler warnings d90d8b4
  * correct copyright year 115271e
  * Ignore multiple exif and xmp profiles for the same jxl frame and fix reading those profiles per frame. c301208
  * read/write in chunks fff3058
  * optimize fwrite() arguments ada6785
  * Renamed Output folder to Artifacts. 2a69677
  * cancel interactive window selection with right button press ea2a2db
  * cosmetic 712bde4
  * eliminate compiler warning 9a9a25c
  * eliminate compiler warning 0bd1687
  * Make images mandatory in the issue template. c01fd37
  * Added extra header detection for avif files. 9fc0590
  * allow SeekBlob() to set an offset beyond the end of the blob 27c3f99
  * be less forgiving for invalid image indexes 25db2e5
  * Fixed problem with empty macros (#7562) 9fda5f2
  * Added missing null checks for RequestOpenCLDevice. f85448e
  * Added missing null check for AcquireOpenCLCommandQueue. 295e9c8
  * persist app1 jpeg profile (ImageMagick/ImageMagick#4713) f0357c7
  * Fixed build error. b3dd431
  * Remove some of the dependencies for the macos-13 build. d0bce95
  * parentheses is the plural of parenthesis 1fac80a
  * distribute quantization error for -dither FloydSteinberg -depth 5b2825b
  * release 8a0da9f
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565</changelog>
</package>
<package pkgid="4bf8df17bbcfa319b7fdb1e210ff208707d202c4d3579450b5e194be801c9cfc89a418633027758596f55fc536428febeb1bfe9683a5a91a9f0cc1b37afa3f03" name="ImageMagick-devel" arch="i586">
  <version epoch="0" ver="7.1.1.37" rel="1.1"/>
  <changelog author="pgajdos@suse.com" date="1705320000">- use correct policy.xml</changelog>
  <changelog author="pgajdos@suse.com" date="1705406400">- only one configuration again, based on upstream 'secure' policy
- other upstream policies packaged in documentation</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1705838400">- version update to 7.1.1.27
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1707652800">- version update to 7.1.1.28
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Michael Vetter &lt;mvetter@suse.com&gt;" date="1708603200">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1709035200">- version update to 7.1.1.29
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709380800">- We can not replace a symlink with a directory on the directly
  Unregister the whole group manually in %pre with
  update-alternatives. (boo#1220818)
  Restore Requires(pre) on update-alternatives for the mean time.</changelog>
  <changelog author="pgajdos@suse.com" date="1709553600">- enable SVG again
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711022400">- allow delegates to be executed, was disabled by default policy
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711108800">- allow stdin/stdout
- modified patches
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1712577600">- version update to 7.1.1.30
  * install perl module into user-specified prefix by @bugfood in #7192
  * Fix bmp option to bypass file size check by @OnTheList-1 in #7194
  * add support for encoding/decoding ultrahdr images by @aayushsoni111 in #7198
  * Updates to uhdr.c by @aayushsoni111 in #7217
- added patches
  fix https://github.com/ImageMagick/ImageMagick/issues/7230
  + ImageMagick-wmflite-detection.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713182400">- relax list-length resource limit, fixes build of python-Wand
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713787200">- version update to 7.1.1.31
  * Convert big PDF documents is slow #7263
  * Update release.yml #7258
  * Update README.md #7245
  * uhdr.c: verify the availability of error message before accessing it #7229
- removed patches
  - ImageMagick-wmflite-detection.patch (upstreamed)
  `</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1714910400">- version update to 7.1.1.32
  * Fix GIF ICC profile reading #7282
  * uhdr.c: add support for rgb inputs #7273</changelog>
  <changelog author="pgajdos@suse.com" date="1715860800">- reverted update-alternatives usage removal [bsc#1122033][bsc#1220818]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1716638400">- version update to 7.1.1.33
  * Fix typo in #7294
  * Bump azure/trusted-signing-action from 0.3.16 to 0.3.18 in #7325
  * Bump caphyon/advinst-github-action from 1.1 to 2.0 in #7326
- added patch
  + ImageMagick-update-image-signature.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1719144000">- version update to 7.1.1.34
  * Bump azure/trusted-signing-action from 0.3.18 to 0.3.19 in #7348
  * Fix a typo in convert deprecation warning in #7383
  * Bump azure/trusted-signing-action from 0.3.19 to 0.3.20 in #7388
  * Updated FontConfig query to include font index, fixing (#7374) in #7409
- removed patch (upstreamed)
  - ImageMagick-update-image-signature.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1721908800">- version update to 7.1.1.35
  * Also set dpi-x and dpi-y when running rsvg-convert. eac001f
  * convert sub-command is deprecated d67039e
  * only operators should disable "identify ping" (ImageMagick/ImageMagick#7441) a262192
  * fix compiler error ecc21c7
  * -outdir deprecated 9980efa
  * Get the correct width and height when heic:preserve-orientation is set to true. ed3a0dd
  * Set heic image orientation using transform information. ba470aa
  * Exit earlier when the symlink could not be created when invoking the svg:decode delegate. 8a48edd
  * Fixed MSYS2 build error. 3b22378
  * Also set the DNG properties when pinging the image. fc1c61b
  * Silence warning when lqr delegate is disabled. ae0d69a
  * Added version check for the heif_properties.h include. 656b4d2
  * Make sure we always use the i64 version of the "file methods" on Windows. b3e8a78
  * Changed defines to use method instead of a define. 75b66c4
  * Changes due to upgrade of libheif. 841f033
  * smooth the rendering of an ellipse (ImageMagick/ImageMagick#7465) 1bfce2a</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- version update to 7.1.1.36
  * uhdr.c: default initialize range field for hdr/sdr intent inputs to
    enc by @aayushsoni111 in #7482
  * Fixed typo in documentation of MagickAdaptiveBlurImage by @JonahEMorgan
    in #7500
  * Silence warning when freetype delegate is disabled. by @niclet in #7515</changelog>
  <changelog author="pgajdos@suse.com" date="1724760000">- version update to 7.1.1.37
  * Bump azure/trusted-signing-action from 0.3.20 to 0.4.0 #7518
  * Silence warning and fix HEIC_COMPUTE_NUMERIC_VERSION definition when heic delegate is disabled. #7516
  * protect macro arguments with parens 86cb2b1
  * eliminate compiler warnings d90d8b4
  * correct copyright year 115271e
  * Ignore multiple exif and xmp profiles for the same jxl frame and fix reading those profiles per frame. c301208
  * read/write in chunks fff3058
  * optimize fwrite() arguments ada6785
  * Renamed Output folder to Artifacts. 2a69677
  * cancel interactive window selection with right button press ea2a2db
  * cosmetic 712bde4
  * eliminate compiler warning 9a9a25c
  * eliminate compiler warning 0bd1687
  * Make images mandatory in the issue template. c01fd37
  * Added extra header detection for avif files. 9fc0590
  * allow SeekBlob() to set an offset beyond the end of the blob 27c3f99
  * be less forgiving for invalid image indexes 25db2e5
  * Fixed problem with empty macros (#7562) 9fda5f2
  * Added missing null checks for RequestOpenCLDevice. f85448e
  * Added missing null check for AcquireOpenCLCommandQueue. 295e9c8
  * persist app1 jpeg profile (ImageMagick/ImageMagick#4713) f0357c7
  * Fixed build error. b3dd431
  * Remove some of the dependencies for the macos-13 build. d0bce95
  * parentheses is the plural of parenthesis 1fac80a
  * distribute quantization error for -dither FloydSteinberg -depth 5b2825b
  * release 8a0da9f
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565</changelog>
</package>
<package pkgid="34789a90a8d785dade8991697fde42c141d409799a5a720e6b8d1fa63033c924da0e2a9baff8344a12ecaec1d89d9ff874f83cc6ffd9cebbdbbdef1888f9ec8b" name="ImageMagick-devel" arch="x86_64">
  <version epoch="0" ver="7.1.1.37" rel="1.1"/>
  <changelog author="pgajdos@suse.com" date="1705320000">- use correct policy.xml</changelog>
  <changelog author="pgajdos@suse.com" date="1705406400">- only one configuration again, based on upstream 'secure' policy
- other upstream policies packaged in documentation</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1705838400">- version update to 7.1.1.27
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1707652800">- version update to 7.1.1.28
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Michael Vetter &lt;mvetter@suse.com&gt;" date="1708603200">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1709035200">- version update to 7.1.1.29
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709380800">- We can not replace a symlink with a directory on the directly
  Unregister the whole group manually in %pre with
  update-alternatives. (boo#1220818)
  Restore Requires(pre) on update-alternatives for the mean time.</changelog>
  <changelog author="pgajdos@suse.com" date="1709553600">- enable SVG again
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711022400">- allow delegates to be executed, was disabled by default policy
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711108800">- allow stdin/stdout
- modified patches
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1712577600">- version update to 7.1.1.30
  * install perl module into user-specified prefix by @bugfood in #7192
  * Fix bmp option to bypass file size check by @OnTheList-1 in #7194
  * add support for encoding/decoding ultrahdr images by @aayushsoni111 in #7198
  * Updates to uhdr.c by @aayushsoni111 in #7217
- added patches
  fix https://github.com/ImageMagick/ImageMagick/issues/7230
  + ImageMagick-wmflite-detection.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713182400">- relax list-length resource limit, fixes build of python-Wand
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713787200">- version update to 7.1.1.31
  * Convert big PDF documents is slow #7263
  * Update release.yml #7258
  * Update README.md #7245
  * uhdr.c: verify the availability of error message before accessing it #7229
- removed patches
  - ImageMagick-wmflite-detection.patch (upstreamed)
  `</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1714910400">- version update to 7.1.1.32
  * Fix GIF ICC profile reading #7282
  * uhdr.c: add support for rgb inputs #7273</changelog>
  <changelog author="pgajdos@suse.com" date="1715860800">- reverted update-alternatives usage removal [bsc#1122033][bsc#1220818]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1716638400">- version update to 7.1.1.33
  * Fix typo in #7294
  * Bump azure/trusted-signing-action from 0.3.16 to 0.3.18 in #7325
  * Bump caphyon/advinst-github-action from 1.1 to 2.0 in #7326
- added patch
  + ImageMagick-update-image-signature.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1719144000">- version update to 7.1.1.34
  * Bump azure/trusted-signing-action from 0.3.18 to 0.3.19 in #7348
  * Fix a typo in convert deprecation warning in #7383
  * Bump azure/trusted-signing-action from 0.3.19 to 0.3.20 in #7388
  * Updated FontConfig query to include font index, fixing (#7374) in #7409
- removed patch (upstreamed)
  - ImageMagick-update-image-signature.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1721908800">- version update to 7.1.1.35
  * Also set dpi-x and dpi-y when running rsvg-convert. eac001f
  * convert sub-command is deprecated d67039e
  * only operators should disable "identify ping" (ImageMagick/ImageMagick#7441) a262192
  * fix compiler error ecc21c7
  * -outdir deprecated 9980efa
  * Get the correct width and height when heic:preserve-orientation is set to true. ed3a0dd
  * Set heic image orientation using transform information. ba470aa
  * Exit earlier when the symlink could not be created when invoking the svg:decode delegate. 8a48edd
  * Fixed MSYS2 build error. 3b22378
  * Also set the DNG properties when pinging the image. fc1c61b
  * Silence warning when lqr delegate is disabled. ae0d69a
  * Added version check for the heif_properties.h include. 656b4d2
  * Make sure we always use the i64 version of the "file methods" on Windows. b3e8a78
  * Changed defines to use method instead of a define. 75b66c4
  * Changes due to upgrade of libheif. 841f033
  * smooth the rendering of an ellipse (ImageMagick/ImageMagick#7465) 1bfce2a</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- version update to 7.1.1.36
  * uhdr.c: default initialize range field for hdr/sdr intent inputs to
    enc by @aayushsoni111 in #7482
  * Fixed typo in documentation of MagickAdaptiveBlurImage by @JonahEMorgan
    in #7500
  * Silence warning when freetype delegate is disabled. by @niclet in #7515</changelog>
  <changelog author="pgajdos@suse.com" date="1724760000">- version update to 7.1.1.37
  * Bump azure/trusted-signing-action from 0.3.20 to 0.4.0 #7518
  * Silence warning and fix HEIC_COMPUTE_NUMERIC_VERSION definition when heic delegate is disabled. #7516
  * protect macro arguments with parens 86cb2b1
  * eliminate compiler warnings d90d8b4
  * correct copyright year 115271e
  * Ignore multiple exif and xmp profiles for the same jxl frame and fix reading those profiles per frame. c301208
  * read/write in chunks fff3058
  * optimize fwrite() arguments ada6785
  * Renamed Output folder to Artifacts. 2a69677
  * cancel interactive window selection with right button press ea2a2db
  * cosmetic 712bde4
  * eliminate compiler warning 9a9a25c
  * eliminate compiler warning 0bd1687
  * Make images mandatory in the issue template. c01fd37
  * Added extra header detection for avif files. 9fc0590
  * allow SeekBlob() to set an offset beyond the end of the blob 27c3f99
  * be less forgiving for invalid image indexes 25db2e5
  * Fixed problem with empty macros (#7562) 9fda5f2
  * Added missing null checks for RequestOpenCLDevice. f85448e
  * Added missing null check for AcquireOpenCLCommandQueue. 295e9c8
  * persist app1 jpeg profile (ImageMagick/ImageMagick#4713) f0357c7
  * Fixed build error. b3dd431
  * Remove some of the dependencies for the macos-13 build. d0bce95
  * parentheses is the plural of parenthesis 1fac80a
  * distribute quantization error for -dither FloydSteinberg -depth 5b2825b
  * release 8a0da9f
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565</changelog>
</package>
<package pkgid="8d860fdf78580299419f96741579dce57cd3a6736465cc9b4080e142176f210baea33f2558f05addf9e965a717cae227e2b932168ce765708bda1107739d92f2" name="ImageMagick-devel" arch="i586">
  <version epoch="0" ver="7.1.1.39" rel="1.1"/>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1705838400">- version update to 7.1.1.27
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1707652800">- version update to 7.1.1.28
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Michael Vetter &lt;mvetter@suse.com&gt;" date="1708603200">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1709035200">- version update to 7.1.1.29
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709380800">- We can not replace a symlink with a directory on the directly
  Unregister the whole group manually in %pre with
  update-alternatives. (boo#1220818)
  Restore Requires(pre) on update-alternatives for the mean time.</changelog>
  <changelog author="pgajdos@suse.com" date="1709553600">- enable SVG again
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711022400">- allow delegates to be executed, was disabled by default policy
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711108800">- allow stdin/stdout
- modified patches
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1712577600">- version update to 7.1.1.30
  * install perl module into user-specified prefix by @bugfood in #7192
  * Fix bmp option to bypass file size check by @OnTheList-1 in #7194
  * add support for encoding/decoding ultrahdr images by @aayushsoni111 in #7198
  * Updates to uhdr.c by @aayushsoni111 in #7217
- added patches
  fix https://github.com/ImageMagick/ImageMagick/issues/7230
  + ImageMagick-wmflite-detection.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713182400">- relax list-length resource limit, fixes build of python-Wand
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713787200">- version update to 7.1.1.31
  * Convert big PDF documents is slow #7263
  * Update release.yml #7258
  * Update README.md #7245
  * uhdr.c: verify the availability of error message before accessing it #7229
- removed patches
  - ImageMagick-wmflite-detection.patch (upstreamed)
  `</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1714910400">- version update to 7.1.1.32
  * Fix GIF ICC profile reading #7282
  * uhdr.c: add support for rgb inputs #7273</changelog>
  <changelog author="pgajdos@suse.com" date="1715860800">- reverted update-alternatives usage removal [bsc#1122033][bsc#1220818]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1716638400">- version update to 7.1.1.33
  * Fix typo in #7294
  * Bump azure/trusted-signing-action from 0.3.16 to 0.3.18 in #7325
  * Bump caphyon/advinst-github-action from 1.1 to 2.0 in #7326
- added patch
  + ImageMagick-update-image-signature.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1719144000">- version update to 7.1.1.34
  * Bump azure/trusted-signing-action from 0.3.18 to 0.3.19 in #7348
  * Fix a typo in convert deprecation warning in #7383
  * Bump azure/trusted-signing-action from 0.3.19 to 0.3.20 in #7388
  * Updated FontConfig query to include font index, fixing (#7374) in #7409
- removed patch (upstreamed)
  - ImageMagick-update-image-signature.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1721908800">- version update to 7.1.1.35
  * Also set dpi-x and dpi-y when running rsvg-convert. eac001f
  * convert sub-command is deprecated d67039e
  * only operators should disable "identify ping" (ImageMagick/ImageMagick#7441) a262192
  * fix compiler error ecc21c7
  * -outdir deprecated 9980efa
  * Get the correct width and height when heic:preserve-orientation is set to true. ed3a0dd
  * Set heic image orientation using transform information. ba470aa
  * Exit earlier when the symlink could not be created when invoking the svg:decode delegate. 8a48edd
  * Fixed MSYS2 build error. 3b22378
  * Also set the DNG properties when pinging the image. fc1c61b
  * Silence warning when lqr delegate is disabled. ae0d69a
  * Added version check for the heif_properties.h include. 656b4d2
  * Make sure we always use the i64 version of the "file methods" on Windows. b3e8a78
  * Changed defines to use method instead of a define. 75b66c4
  * Changes due to upgrade of libheif. 841f033
  * smooth the rendering of an ellipse (ImageMagick/ImageMagick#7465) 1bfce2a</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- version update to 7.1.1.36
  * uhdr.c: default initialize range field for hdr/sdr intent inputs to
    enc by @aayushsoni111 in #7482
  * Fixed typo in documentation of MagickAdaptiveBlurImage by @JonahEMorgan
    in #7500
  * Silence warning when freetype delegate is disabled. by @niclet in #7515</changelog>
  <changelog author="pgajdos@suse.com" date="1724760000">- version update to 7.1.1.37
  * Bump azure/trusted-signing-action from 0.3.20 to 0.4.0 #7518
  * Silence warning and fix HEIC_COMPUTE_NUMERIC_VERSION definition when heic delegate is disabled. #7516
  * protect macro arguments with parens 86cb2b1
  * eliminate compiler warnings d90d8b4
  * correct copyright year 115271e
  * Ignore multiple exif and xmp profiles for the same jxl frame and fix reading those profiles per frame. c301208
  * read/write in chunks fff3058
  * optimize fwrite() arguments ada6785
  * Renamed Output folder to Artifacts. 2a69677
  * cancel interactive window selection with right button press ea2a2db
  * cosmetic 712bde4
  * eliminate compiler warning 9a9a25c
  * eliminate compiler warning 0bd1687
  * Make images mandatory in the issue template. c01fd37
  * Added extra header detection for avif files. 9fc0590
  * allow SeekBlob() to set an offset beyond the end of the blob 27c3f99
  * be less forgiving for invalid image indexes 25db2e5
  * Fixed problem with empty macros (#7562) 9fda5f2
  * Added missing null checks for RequestOpenCLDevice. f85448e
  * Added missing null check for AcquireOpenCLCommandQueue. 295e9c8
  * persist app1 jpeg profile (ImageMagick/ImageMagick#4713) f0357c7
  * Fixed build error. b3dd431
  * Remove some of the dependencies for the macos-13 build. d0bce95
  * parentheses is the plural of parenthesis 1fac80a
  * distribute quantization error for -dither FloydSteinberg -depth 5b2825b
  * release 8a0da9f
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565</changelog>
  <changelog author="pgajdos@suse.com" date="1726228800">- version update to 7.1.1.38
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565
  * beta release 250b748
  * deprecate the -respect-paranthesis option 4e7d789
  * Build fixes. b80c509
  * save IPTC + ICC profiles are profiles, not properties 25d5335
  * update copyright year 4caf7d1
  * Patch to fix reading of the ICC profile. 18377f9
  * prepping framework to interact with X11 clipboard b20dda3
  * Build fix. 20a5af3
  * More build fixes. c36fdf0
  * Another attempt to silence the warnings. 600708c
  * Use SetImageProfilePrivate to avoid duplicate allocations. f246eab
  * support clipboard delegate 39a135a
  * restore clipboard.c 1070b17
  * improved rounding 27a0a9c
  * don't allow negative scenes 8fda05a
  * eliminate compiler warnings 878daf9
- modified patches
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1728216000">- version update to 7.1.1.39
  * Add missing Threshold command to command array of Region of Interest mode #7606
  * uhdr.c: update uhdr coder for gainmap metadata configuration #7635
  * uhdr: fix language choice in autoconf #7663</changelog>
</package>
<package pkgid="2590285f041b20723e505d9a3b9e93f428f0b0a9a9641e8da6b751cf1abd8fa278c752ffa8e1c4ea3bfd52a900110d38ea0ca492f2b269e5dcff5342b0f8a470" name="ImageMagick-devel" arch="x86_64">
  <version epoch="0" ver="7.1.1.39" rel="1.1"/>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1705838400">- version update to 7.1.1.27
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1707652800">- version update to 7.1.1.28
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Michael Vetter &lt;mvetter@suse.com&gt;" date="1708603200">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1709035200">- version update to 7.1.1.29
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709380800">- We can not replace a symlink with a directory on the directly
  Unregister the whole group manually in %pre with
  update-alternatives. (boo#1220818)
  Restore Requires(pre) on update-alternatives for the mean time.</changelog>
  <changelog author="pgajdos@suse.com" date="1709553600">- enable SVG again
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711022400">- allow delegates to be executed, was disabled by default policy
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711108800">- allow stdin/stdout
- modified patches
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1712577600">- version update to 7.1.1.30
  * install perl module into user-specified prefix by @bugfood in #7192
  * Fix bmp option to bypass file size check by @OnTheList-1 in #7194
  * add support for encoding/decoding ultrahdr images by @aayushsoni111 in #7198
  * Updates to uhdr.c by @aayushsoni111 in #7217
- added patches
  fix https://github.com/ImageMagick/ImageMagick/issues/7230
  + ImageMagick-wmflite-detection.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713182400">- relax list-length resource limit, fixes build of python-Wand
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713787200">- version update to 7.1.1.31
  * Convert big PDF documents is slow #7263
  * Update release.yml #7258
  * Update README.md #7245
  * uhdr.c: verify the availability of error message before accessing it #7229
- removed patches
  - ImageMagick-wmflite-detection.patch (upstreamed)
  `</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1714910400">- version update to 7.1.1.32
  * Fix GIF ICC profile reading #7282
  * uhdr.c: add support for rgb inputs #7273</changelog>
  <changelog author="pgajdos@suse.com" date="1715860800">- reverted update-alternatives usage removal [bsc#1122033][bsc#1220818]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1716638400">- version update to 7.1.1.33
  * Fix typo in #7294
  * Bump azure/trusted-signing-action from 0.3.16 to 0.3.18 in #7325
  * Bump caphyon/advinst-github-action from 1.1 to 2.0 in #7326
- added patch
  + ImageMagick-update-image-signature.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1719144000">- version update to 7.1.1.34
  * Bump azure/trusted-signing-action from 0.3.18 to 0.3.19 in #7348
  * Fix a typo in convert deprecation warning in #7383
  * Bump azure/trusted-signing-action from 0.3.19 to 0.3.20 in #7388
  * Updated FontConfig query to include font index, fixing (#7374) in #7409
- removed patch (upstreamed)
  - ImageMagick-update-image-signature.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1721908800">- version update to 7.1.1.35
  * Also set dpi-x and dpi-y when running rsvg-convert. eac001f
  * convert sub-command is deprecated d67039e
  * only operators should disable "identify ping" (ImageMagick/ImageMagick#7441) a262192
  * fix compiler error ecc21c7
  * -outdir deprecated 9980efa
  * Get the correct width and height when heic:preserve-orientation is set to true. ed3a0dd
  * Set heic image orientation using transform information. ba470aa
  * Exit earlier when the symlink could not be created when invoking the svg:decode delegate. 8a48edd
  * Fixed MSYS2 build error. 3b22378
  * Also set the DNG properties when pinging the image. fc1c61b
  * Silence warning when lqr delegate is disabled. ae0d69a
  * Added version check for the heif_properties.h include. 656b4d2
  * Make sure we always use the i64 version of the "file methods" on Windows. b3e8a78
  * Changed defines to use method instead of a define. 75b66c4
  * Changes due to upgrade of libheif. 841f033
  * smooth the rendering of an ellipse (ImageMagick/ImageMagick#7465) 1bfce2a</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- version update to 7.1.1.36
  * uhdr.c: default initialize range field for hdr/sdr intent inputs to
    enc by @aayushsoni111 in #7482
  * Fixed typo in documentation of MagickAdaptiveBlurImage by @JonahEMorgan
    in #7500
  * Silence warning when freetype delegate is disabled. by @niclet in #7515</changelog>
  <changelog author="pgajdos@suse.com" date="1724760000">- version update to 7.1.1.37
  * Bump azure/trusted-signing-action from 0.3.20 to 0.4.0 #7518
  * Silence warning and fix HEIC_COMPUTE_NUMERIC_VERSION definition when heic delegate is disabled. #7516
  * protect macro arguments with parens 86cb2b1
  * eliminate compiler warnings d90d8b4
  * correct copyright year 115271e
  * Ignore multiple exif and xmp profiles for the same jxl frame and fix reading those profiles per frame. c301208
  * read/write in chunks fff3058
  * optimize fwrite() arguments ada6785
  * Renamed Output folder to Artifacts. 2a69677
  * cancel interactive window selection with right button press ea2a2db
  * cosmetic 712bde4
  * eliminate compiler warning 9a9a25c
  * eliminate compiler warning 0bd1687
  * Make images mandatory in the issue template. c01fd37
  * Added extra header detection for avif files. 9fc0590
  * allow SeekBlob() to set an offset beyond the end of the blob 27c3f99
  * be less forgiving for invalid image indexes 25db2e5
  * Fixed problem with empty macros (#7562) 9fda5f2
  * Added missing null checks for RequestOpenCLDevice. f85448e
  * Added missing null check for AcquireOpenCLCommandQueue. 295e9c8
  * persist app1 jpeg profile (ImageMagick/ImageMagick#4713) f0357c7
  * Fixed build error. b3dd431
  * Remove some of the dependencies for the macos-13 build. d0bce95
  * parentheses is the plural of parenthesis 1fac80a
  * distribute quantization error for -dither FloydSteinberg -depth 5b2825b
  * release 8a0da9f
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565</changelog>
  <changelog author="pgajdos@suse.com" date="1726228800">- version update to 7.1.1.38
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565
  * beta release 250b748
  * deprecate the -respect-paranthesis option 4e7d789
  * Build fixes. b80c509
  * save IPTC + ICC profiles are profiles, not properties 25d5335
  * update copyright year 4caf7d1
  * Patch to fix reading of the ICC profile. 18377f9
  * prepping framework to interact with X11 clipboard b20dda3
  * Build fix. 20a5af3
  * More build fixes. c36fdf0
  * Another attempt to silence the warnings. 600708c
  * Use SetImageProfilePrivate to avoid duplicate allocations. f246eab
  * support clipboard delegate 39a135a
  * restore clipboard.c 1070b17
  * improved rounding 27a0a9c
  * don't allow negative scenes 8fda05a
  * eliminate compiler warnings 878daf9
- modified patches
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1728216000">- version update to 7.1.1.39
  * Add missing Threshold command to command array of Region of Interest mode #7606
  * uhdr.c: update uhdr coder for gainmap metadata configuration #7635
  * uhdr: fix language choice in autoconf #7663</changelog>
</package>
<package pkgid="d1103b1dd34b6ae2fa29d7f2f388b16b33bab69e2e6c984dfe140f3e79fcc0d2df09bb853433fca7542db86d2f5ca92d5fb6bf4176258b5d69fbe5c5f555ef75" name="ImageMagick-devel" arch="i586">
  <version epoch="0" ver="7.1.1.41" rel="1.0.2.1.sr20241103"/>
  <changelog author="Michael Vetter &lt;mvetter@suse.com&gt;" date="1708603200">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1709035200">- version update to 7.1.1.29
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709380800">- We can not replace a symlink with a directory on the directly
  Unregister the whole group manually in %pre with
  update-alternatives. (boo#1220818)
  Restore Requires(pre) on update-alternatives for the mean time.</changelog>
  <changelog author="pgajdos@suse.com" date="1709553600">- enable SVG again
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711022400">- allow delegates to be executed, was disabled by default policy
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711108800">- allow stdin/stdout
- modified patches
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1712577600">- version update to 7.1.1.30
  * install perl module into user-specified prefix by @bugfood in #7192
  * Fix bmp option to bypass file size check by @OnTheList-1 in #7194
  * add support for encoding/decoding ultrahdr images by @aayushsoni111 in #7198
  * Updates to uhdr.c by @aayushsoni111 in #7217
- added patches
  fix https://github.com/ImageMagick/ImageMagick/issues/7230
  + ImageMagick-wmflite-detection.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713182400">- relax list-length resource limit, fixes build of python-Wand
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713787200">- version update to 7.1.1.31
  * Convert big PDF documents is slow #7263
  * Update release.yml #7258
  * Update README.md #7245
  * uhdr.c: verify the availability of error message before accessing it #7229
- removed patches
  - ImageMagick-wmflite-detection.patch (upstreamed)
  `</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1714910400">- version update to 7.1.1.32
  * Fix GIF ICC profile reading #7282
  * uhdr.c: add support for rgb inputs #7273</changelog>
  <changelog author="pgajdos@suse.com" date="1715860800">- reverted update-alternatives usage removal [bsc#1122033][bsc#1220818]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1716638400">- version update to 7.1.1.33
  * Fix typo in #7294
  * Bump azure/trusted-signing-action from 0.3.16 to 0.3.18 in #7325
  * Bump caphyon/advinst-github-action from 1.1 to 2.0 in #7326
- added patch
  + ImageMagick-update-image-signature.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1719144000">- version update to 7.1.1.34
  * Bump azure/trusted-signing-action from 0.3.18 to 0.3.19 in #7348
  * Fix a typo in convert deprecation warning in #7383
  * Bump azure/trusted-signing-action from 0.3.19 to 0.3.20 in #7388
  * Updated FontConfig query to include font index, fixing (#7374) in #7409
- removed patch (upstreamed)
  - ImageMagick-update-image-signature.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1721908800">- version update to 7.1.1.35
  * Also set dpi-x and dpi-y when running rsvg-convert. eac001f
  * convert sub-command is deprecated d67039e
  * only operators should disable "identify ping" (ImageMagick/ImageMagick#7441) a262192
  * fix compiler error ecc21c7
  * -outdir deprecated 9980efa
  * Get the correct width and height when heic:preserve-orientation is set to true. ed3a0dd
  * Set heic image orientation using transform information. ba470aa
  * Exit earlier when the symlink could not be created when invoking the svg:decode delegate. 8a48edd
  * Fixed MSYS2 build error. 3b22378
  * Also set the DNG properties when pinging the image. fc1c61b
  * Silence warning when lqr delegate is disabled. ae0d69a
  * Added version check for the heif_properties.h include. 656b4d2
  * Make sure we always use the i64 version of the "file methods" on Windows. b3e8a78
  * Changed defines to use method instead of a define. 75b66c4
  * Changes due to upgrade of libheif. 841f033
  * smooth the rendering of an ellipse (ImageMagick/ImageMagick#7465) 1bfce2a</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- version update to 7.1.1.36
  * uhdr.c: default initialize range field for hdr/sdr intent inputs to
    enc by @aayushsoni111 in #7482
  * Fixed typo in documentation of MagickAdaptiveBlurImage by @JonahEMorgan
    in #7500
  * Silence warning when freetype delegate is disabled. by @niclet in #7515</changelog>
  <changelog author="pgajdos@suse.com" date="1724760000">- version update to 7.1.1.37
  * Bump azure/trusted-signing-action from 0.3.20 to 0.4.0 #7518
  * Silence warning and fix HEIC_COMPUTE_NUMERIC_VERSION definition when heic delegate is disabled. #7516
  * protect macro arguments with parens 86cb2b1
  * eliminate compiler warnings d90d8b4
  * correct copyright year 115271e
  * Ignore multiple exif and xmp profiles for the same jxl frame and fix reading those profiles per frame. c301208
  * read/write in chunks fff3058
  * optimize fwrite() arguments ada6785
  * Renamed Output folder to Artifacts. 2a69677
  * cancel interactive window selection with right button press ea2a2db
  * cosmetic 712bde4
  * eliminate compiler warning 9a9a25c
  * eliminate compiler warning 0bd1687
  * Make images mandatory in the issue template. c01fd37
  * Added extra header detection for avif files. 9fc0590
  * allow SeekBlob() to set an offset beyond the end of the blob 27c3f99
  * be less forgiving for invalid image indexes 25db2e5
  * Fixed problem with empty macros (#7562) 9fda5f2
  * Added missing null checks for RequestOpenCLDevice. f85448e
  * Added missing null check for AcquireOpenCLCommandQueue. 295e9c8
  * persist app1 jpeg profile (ImageMagick/ImageMagick#4713) f0357c7
  * Fixed build error. b3dd431
  * Remove some of the dependencies for the macos-13 build. d0bce95
  * parentheses is the plural of parenthesis 1fac80a
  * distribute quantization error for -dither FloydSteinberg -depth 5b2825b
  * release 8a0da9f
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565</changelog>
  <changelog author="pgajdos@suse.com" date="1726228800">- version update to 7.1.1.38
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565
  * beta release 250b748
  * deprecate the -respect-paranthesis option 4e7d789
  * Build fixes. b80c509
  * save IPTC + ICC profiles are profiles, not properties 25d5335
  * update copyright year 4caf7d1
  * Patch to fix reading of the ICC profile. 18377f9
  * prepping framework to interact with X11 clipboard b20dda3
  * Build fix. 20a5af3
  * More build fixes. c36fdf0
  * Another attempt to silence the warnings. 600708c
  * Use SetImageProfilePrivate to avoid duplicate allocations. f246eab
  * support clipboard delegate 39a135a
  * restore clipboard.c 1070b17
  * improved rounding 27a0a9c
  * don't allow negative scenes 8fda05a
  * eliminate compiler warnings 878daf9
- modified patches
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1728216000">- version update to 7.1.1.39
  * Add missing Threshold command to command array of Region of Interest mode #7606
  * uhdr.c: update uhdr coder for gainmap metadata configuration #7635
  * uhdr: fix language choice in autoconf #7663</changelog>
  <changelog author="Yann BOYER &lt;yann.boyer742@gmail.com&gt;" date="1731326400">- version update to 7.1.1.40
  * .cut (Dr Halo) reading when run count in header #7734
  * Bump azure/trusted-signing-action from 0.4.0 to 0.5.0 #7725
  * Implement Magic Kernel Sharp 2013 and 2021 #7701
  * don't process TIFF image if there is an exception
  * Corrected check for indexed channels in PSD files.
  * export exception when undo resource limit exceeded</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1731844800">- version update to 7.1.1.41
  * Fix compiler identification with Clang on Darwin in #7773
  * revert map changes breaking ABI in #7768</changelog>
</package>
<package pkgid="883a86e84862a27cfabfe567d39bbd4eccdf1ccc7221e61c425697ac3fbf53a23ba5479ba392f76f00d41c5b0decad18821dbd96d2c15b972062f65668d2bde0" name="ImageMagick-devel" arch="x86_64">
  <version epoch="0" ver="7.1.1.41" rel="1.0.2.1.sr20241103"/>
  <changelog author="Michael Vetter &lt;mvetter@suse.com&gt;" date="1708603200">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1709035200">- version update to 7.1.1.29
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709380800">- We can not replace a symlink with a directory on the directly
  Unregister the whole group manually in %pre with
  update-alternatives. (boo#1220818)
  Restore Requires(pre) on update-alternatives for the mean time.</changelog>
  <changelog author="pgajdos@suse.com" date="1709553600">- enable SVG again
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711022400">- allow delegates to be executed, was disabled by default policy
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711108800">- allow stdin/stdout
- modified patches
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1712577600">- version update to 7.1.1.30
  * install perl module into user-specified prefix by @bugfood in #7192
  * Fix bmp option to bypass file size check by @OnTheList-1 in #7194
  * add support for encoding/decoding ultrahdr images by @aayushsoni111 in #7198
  * Updates to uhdr.c by @aayushsoni111 in #7217
- added patches
  fix https://github.com/ImageMagick/ImageMagick/issues/7230
  + ImageMagick-wmflite-detection.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713182400">- relax list-length resource limit, fixes build of python-Wand
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713787200">- version update to 7.1.1.31
  * Convert big PDF documents is slow #7263
  * Update release.yml #7258
  * Update README.md #7245
  * uhdr.c: verify the availability of error message before accessing it #7229
- removed patches
  - ImageMagick-wmflite-detection.patch (upstreamed)
  `</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1714910400">- version update to 7.1.1.32
  * Fix GIF ICC profile reading #7282
  * uhdr.c: add support for rgb inputs #7273</changelog>
  <changelog author="pgajdos@suse.com" date="1715860800">- reverted update-alternatives usage removal [bsc#1122033][bsc#1220818]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1716638400">- version update to 7.1.1.33
  * Fix typo in #7294
  * Bump azure/trusted-signing-action from 0.3.16 to 0.3.18 in #7325
  * Bump caphyon/advinst-github-action from 1.1 to 2.0 in #7326
- added patch
  + ImageMagick-update-image-signature.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1719144000">- version update to 7.1.1.34
  * Bump azure/trusted-signing-action from 0.3.18 to 0.3.19 in #7348
  * Fix a typo in convert deprecation warning in #7383
  * Bump azure/trusted-signing-action from 0.3.19 to 0.3.20 in #7388
  * Updated FontConfig query to include font index, fixing (#7374) in #7409
- removed patch (upstreamed)
  - ImageMagick-update-image-signature.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1721908800">- version update to 7.1.1.35
  * Also set dpi-x and dpi-y when running rsvg-convert. eac001f
  * convert sub-command is deprecated d67039e
  * only operators should disable "identify ping" (ImageMagick/ImageMagick#7441) a262192
  * fix compiler error ecc21c7
  * -outdir deprecated 9980efa
  * Get the correct width and height when heic:preserve-orientation is set to true. ed3a0dd
  * Set heic image orientation using transform information. ba470aa
  * Exit earlier when the symlink could not be created when invoking the svg:decode delegate. 8a48edd
  * Fixed MSYS2 build error. 3b22378
  * Also set the DNG properties when pinging the image. fc1c61b
  * Silence warning when lqr delegate is disabled. ae0d69a
  * Added version check for the heif_properties.h include. 656b4d2
  * Make sure we always use the i64 version of the "file methods" on Windows. b3e8a78
  * Changed defines to use method instead of a define. 75b66c4
  * Changes due to upgrade of libheif. 841f033
  * smooth the rendering of an ellipse (ImageMagick/ImageMagick#7465) 1bfce2a</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- version update to 7.1.1.36
  * uhdr.c: default initialize range field for hdr/sdr intent inputs to
    enc by @aayushsoni111 in #7482
  * Fixed typo in documentation of MagickAdaptiveBlurImage by @JonahEMorgan
    in #7500
  * Silence warning when freetype delegate is disabled. by @niclet in #7515</changelog>
  <changelog author="pgajdos@suse.com" date="1724760000">- version update to 7.1.1.37
  * Bump azure/trusted-signing-action from 0.3.20 to 0.4.0 #7518
  * Silence warning and fix HEIC_COMPUTE_NUMERIC_VERSION definition when heic delegate is disabled. #7516
  * protect macro arguments with parens 86cb2b1
  * eliminate compiler warnings d90d8b4
  * correct copyright year 115271e
  * Ignore multiple exif and xmp profiles for the same jxl frame and fix reading those profiles per frame. c301208
  * read/write in chunks fff3058
  * optimize fwrite() arguments ada6785
  * Renamed Output folder to Artifacts. 2a69677
  * cancel interactive window selection with right button press ea2a2db
  * cosmetic 712bde4
  * eliminate compiler warning 9a9a25c
  * eliminate compiler warning 0bd1687
  * Make images mandatory in the issue template. c01fd37
  * Added extra header detection for avif files. 9fc0590
  * allow SeekBlob() to set an offset beyond the end of the blob 27c3f99
  * be less forgiving for invalid image indexes 25db2e5
  * Fixed problem with empty macros (#7562) 9fda5f2
  * Added missing null checks for RequestOpenCLDevice. f85448e
  * Added missing null check for AcquireOpenCLCommandQueue. 295e9c8
  * persist app1 jpeg profile (ImageMagick/ImageMagick#4713) f0357c7
  * Fixed build error. b3dd431
  * Remove some of the dependencies for the macos-13 build. d0bce95
  * parentheses is the plural of parenthesis 1fac80a
  * distribute quantization error for -dither FloydSteinberg -depth 5b2825b
  * release 8a0da9f
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565</changelog>
  <changelog author="pgajdos@suse.com" date="1726228800">- version update to 7.1.1.38
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565
  * beta release 250b748
  * deprecate the -respect-paranthesis option 4e7d789
  * Build fixes. b80c509
  * save IPTC + ICC profiles are profiles, not properties 25d5335
  * update copyright year 4caf7d1
  * Patch to fix reading of the ICC profile. 18377f9
  * prepping framework to interact with X11 clipboard b20dda3
  * Build fix. 20a5af3
  * More build fixes. c36fdf0
  * Another attempt to silence the warnings. 600708c
  * Use SetImageProfilePrivate to avoid duplicate allocations. f246eab
  * support clipboard delegate 39a135a
  * restore clipboard.c 1070b17
  * improved rounding 27a0a9c
  * don't allow negative scenes 8fda05a
  * eliminate compiler warnings 878daf9
- modified patches
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1728216000">- version update to 7.1.1.39
  * Add missing Threshold command to command array of Region of Interest mode #7606
  * uhdr.c: update uhdr coder for gainmap metadata configuration #7635
  * uhdr: fix language choice in autoconf #7663</changelog>
  <changelog author="Yann BOYER &lt;yann.boyer742@gmail.com&gt;" date="1731326400">- version update to 7.1.1.40
  * .cut (Dr Halo) reading when run count in header #7734
  * Bump azure/trusted-signing-action from 0.4.0 to 0.5.0 #7725
  * Implement Magic Kernel Sharp 2013 and 2021 #7701
  * don't process TIFF image if there is an exception
  * Corrected check for indexed channels in PSD files.
  * export exception when undo resource limit exceeded</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1731844800">- version update to 7.1.1.41
  * Fix compiler identification with Clang on Darwin in #7773
  * revert map changes breaking ABI in #7768</changelog>
</package>
<package pkgid="867812a00ca3de63c6ba28ffd3b9e060afce6e13f9114a676aa92183e85a2c9893c625fcce62976dd4b72575a8d0e080e299ea65e0c96a68b27883c2c54c6045" name="ImageMagick-doc" arch="noarch">
  <version epoch="0" ver="7.1.1.36" rel="1.1"/>
  <changelog author="munix9@googlemail.com" date="1705233600">- Fix incomplete removal of update-alternatives for config
- Replace obsolete 'otherproviders(imagick-%{config_spec})' with
  'Conflicts: imagick-%{config_spec}'</changelog>
  <changelog author="pgajdos@suse.com" date="1705320000">- use correct policy.xml</changelog>
  <changelog author="pgajdos@suse.com" date="1705406400">- only one configuration again, based on upstream 'secure' policy
- other upstream policies packaged in documentation</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1705838400">- version update to 7.1.1.27
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1707652800">- version update to 7.1.1.28
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Michael Vetter &lt;mvetter@suse.com&gt;" date="1708603200">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1709035200">- version update to 7.1.1.29
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709380800">- We can not replace a symlink with a directory on the directly
  Unregister the whole group manually in %pre with
  update-alternatives. (boo#1220818)
  Restore Requires(pre) on update-alternatives for the mean time.</changelog>
  <changelog author="pgajdos@suse.com" date="1709553600">- enable SVG again
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711022400">- allow delegates to be executed, was disabled by default policy
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711108800">- allow stdin/stdout
- modified patches
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1712577600">- version update to 7.1.1.30
  * install perl module into user-specified prefix by @bugfood in #7192
  * Fix bmp option to bypass file size check by @OnTheList-1 in #7194
  * add support for encoding/decoding ultrahdr images by @aayushsoni111 in #7198
  * Updates to uhdr.c by @aayushsoni111 in #7217
- added patches
  fix https://github.com/ImageMagick/ImageMagick/issues/7230
  + ImageMagick-wmflite-detection.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713182400">- relax list-length resource limit, fixes build of python-Wand
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713787200">- version update to 7.1.1.31
  * Convert big PDF documents is slow #7263
  * Update release.yml #7258
  * Update README.md #7245
  * uhdr.c: verify the availability of error message before accessing it #7229
- removed patches
  - ImageMagick-wmflite-detection.patch (upstreamed)
  `</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1714910400">- version update to 7.1.1.32
  * Fix GIF ICC profile reading #7282
  * uhdr.c: add support for rgb inputs #7273</changelog>
  <changelog author="pgajdos@suse.com" date="1715860800">- reverted update-alternatives usage removal [bsc#1122033][bsc#1220818]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1716638400">- version update to 7.1.1.33
  * Fix typo in #7294
  * Bump azure/trusted-signing-action from 0.3.16 to 0.3.18 in #7325
  * Bump caphyon/advinst-github-action from 1.1 to 2.0 in #7326
- added patch
  + ImageMagick-update-image-signature.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1719144000">- version update to 7.1.1.34
  * Bump azure/trusted-signing-action from 0.3.18 to 0.3.19 in #7348
  * Fix a typo in convert deprecation warning in #7383
  * Bump azure/trusted-signing-action from 0.3.19 to 0.3.20 in #7388
  * Updated FontConfig query to include font index, fixing (#7374) in #7409
- removed patch (upstreamed)
  - ImageMagick-update-image-signature.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1721908800">- version update to 7.1.1.35
  * Also set dpi-x and dpi-y when running rsvg-convert. eac001f
  * convert sub-command is deprecated d67039e
  * only operators should disable "identify ping" (ImageMagick/ImageMagick#7441) a262192
  * fix compiler error ecc21c7
  * -outdir deprecated 9980efa
  * Get the correct width and height when heic:preserve-orientation is set to true. ed3a0dd
  * Set heic image orientation using transform information. ba470aa
  * Exit earlier when the symlink could not be created when invoking the svg:decode delegate. 8a48edd
  * Fixed MSYS2 build error. 3b22378
  * Also set the DNG properties when pinging the image. fc1c61b
  * Silence warning when lqr delegate is disabled. ae0d69a
  * Added version check for the heif_properties.h include. 656b4d2
  * Make sure we always use the i64 version of the "file methods" on Windows. b3e8a78
  * Changed defines to use method instead of a define. 75b66c4
  * Changes due to upgrade of libheif. 841f033
  * smooth the rendering of an ellipse (ImageMagick/ImageMagick#7465) 1bfce2a</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- version update to 7.1.1.36
  * uhdr.c: default initialize range field for hdr/sdr intent inputs to
    enc by @aayushsoni111 in #7482
  * Fixed typo in documentation of MagickAdaptiveBlurImage by @JonahEMorgan
    in #7500
  * Silence warning when freetype delegate is disabled. by @niclet in #7515</changelog>
</package>
<package pkgid="086bfde0c6f583fbfccbca160fc53f0fced0615fa4761592a5df4b31657e63c6ce48ae92d0800bb69d2fbe72c180caf7fa4aec4cbff54562cb362a82a80658b4" name="ImageMagick-doc" arch="noarch">
  <version epoch="0" ver="7.1.1.37" rel="1.0.4.1.sr20240803"/>
  <changelog author="pgajdos@suse.com" date="1705320000">- use correct policy.xml</changelog>
  <changelog author="pgajdos@suse.com" date="1705406400">- only one configuration again, based on upstream 'secure' policy
- other upstream policies packaged in documentation</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1705838400">- version update to 7.1.1.27
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1707652800">- version update to 7.1.1.28
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Michael Vetter &lt;mvetter@suse.com&gt;" date="1708603200">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1709035200">- version update to 7.1.1.29
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709380800">- We can not replace a symlink with a directory on the directly
  Unregister the whole group manually in %pre with
  update-alternatives. (boo#1220818)
  Restore Requires(pre) on update-alternatives for the mean time.</changelog>
  <changelog author="pgajdos@suse.com" date="1709553600">- enable SVG again
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711022400">- allow delegates to be executed, was disabled by default policy
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711108800">- allow stdin/stdout
- modified patches
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1712577600">- version update to 7.1.1.30
  * install perl module into user-specified prefix by @bugfood in #7192
  * Fix bmp option to bypass file size check by @OnTheList-1 in #7194
  * add support for encoding/decoding ultrahdr images by @aayushsoni111 in #7198
  * Updates to uhdr.c by @aayushsoni111 in #7217
- added patches
  fix https://github.com/ImageMagick/ImageMagick/issues/7230
  + ImageMagick-wmflite-detection.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713182400">- relax list-length resource limit, fixes build of python-Wand
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713787200">- version update to 7.1.1.31
  * Convert big PDF documents is slow #7263
  * Update release.yml #7258
  * Update README.md #7245
  * uhdr.c: verify the availability of error message before accessing it #7229
- removed patches
  - ImageMagick-wmflite-detection.patch (upstreamed)
  `</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1714910400">- version update to 7.1.1.32
  * Fix GIF ICC profile reading #7282
  * uhdr.c: add support for rgb inputs #7273</changelog>
  <changelog author="pgajdos@suse.com" date="1715860800">- reverted update-alternatives usage removal [bsc#1122033][bsc#1220818]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1716638400">- version update to 7.1.1.33
  * Fix typo in #7294
  * Bump azure/trusted-signing-action from 0.3.16 to 0.3.18 in #7325
  * Bump caphyon/advinst-github-action from 1.1 to 2.0 in #7326
- added patch
  + ImageMagick-update-image-signature.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1719144000">- version update to 7.1.1.34
  * Bump azure/trusted-signing-action from 0.3.18 to 0.3.19 in #7348
  * Fix a typo in convert deprecation warning in #7383
  * Bump azure/trusted-signing-action from 0.3.19 to 0.3.20 in #7388
  * Updated FontConfig query to include font index, fixing (#7374) in #7409
- removed patch (upstreamed)
  - ImageMagick-update-image-signature.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1721908800">- version update to 7.1.1.35
  * Also set dpi-x and dpi-y when running rsvg-convert. eac001f
  * convert sub-command is deprecated d67039e
  * only operators should disable "identify ping" (ImageMagick/ImageMagick#7441) a262192
  * fix compiler error ecc21c7
  * -outdir deprecated 9980efa
  * Get the correct width and height when heic:preserve-orientation is set to true. ed3a0dd
  * Set heic image orientation using transform information. ba470aa
  * Exit earlier when the symlink could not be created when invoking the svg:decode delegate. 8a48edd
  * Fixed MSYS2 build error. 3b22378
  * Also set the DNG properties when pinging the image. fc1c61b
  * Silence warning when lqr delegate is disabled. ae0d69a
  * Added version check for the heif_properties.h include. 656b4d2
  * Make sure we always use the i64 version of the "file methods" on Windows. b3e8a78
  * Changed defines to use method instead of a define. 75b66c4
  * Changes due to upgrade of libheif. 841f033
  * smooth the rendering of an ellipse (ImageMagick/ImageMagick#7465) 1bfce2a</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- version update to 7.1.1.36
  * uhdr.c: default initialize range field for hdr/sdr intent inputs to
    enc by @aayushsoni111 in #7482
  * Fixed typo in documentation of MagickAdaptiveBlurImage by @JonahEMorgan
    in #7500
  * Silence warning when freetype delegate is disabled. by @niclet in #7515</changelog>
  <changelog author="pgajdos@suse.com" date="1724760000">- version update to 7.1.1.37
  * Bump azure/trusted-signing-action from 0.3.20 to 0.4.0 #7518
  * Silence warning and fix HEIC_COMPUTE_NUMERIC_VERSION definition when heic delegate is disabled. #7516
  * protect macro arguments with parens 86cb2b1
  * eliminate compiler warnings d90d8b4
  * correct copyright year 115271e
  * Ignore multiple exif and xmp profiles for the same jxl frame and fix reading those profiles per frame. c301208
  * read/write in chunks fff3058
  * optimize fwrite() arguments ada6785
  * Renamed Output folder to Artifacts. 2a69677
  * cancel interactive window selection with right button press ea2a2db
  * cosmetic 712bde4
  * eliminate compiler warning 9a9a25c
  * eliminate compiler warning 0bd1687
  * Make images mandatory in the issue template. c01fd37
  * Added extra header detection for avif files. 9fc0590
  * allow SeekBlob() to set an offset beyond the end of the blob 27c3f99
  * be less forgiving for invalid image indexes 25db2e5
  * Fixed problem with empty macros (#7562) 9fda5f2
  * Added missing null checks for RequestOpenCLDevice. f85448e
  * Added missing null check for AcquireOpenCLCommandQueue. 295e9c8
  * persist app1 jpeg profile (ImageMagick/ImageMagick#4713) f0357c7
  * Fixed build error. b3dd431
  * Remove some of the dependencies for the macos-13 build. d0bce95
  * parentheses is the plural of parenthesis 1fac80a
  * distribute quantization error for -dither FloydSteinberg -depth 5b2825b
  * release 8a0da9f
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565</changelog>
</package>
<package pkgid="da12dec1e73c66e7cbe049ebd698c28b0b9ffd20bdf4165fac93ca53ecd3de3ffe9d053bc34cb05f7f19362e4c7d7beaa115bf645593a6bf27187340dd051c21" name="ImageMagick-doc" arch="noarch">
  <version epoch="0" ver="7.1.1.37" rel="1.1"/>
  <changelog author="pgajdos@suse.com" date="1705320000">- use correct policy.xml</changelog>
  <changelog author="pgajdos@suse.com" date="1705406400">- only one configuration again, based on upstream 'secure' policy
- other upstream policies packaged in documentation</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1705838400">- version update to 7.1.1.27
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1707652800">- version update to 7.1.1.28
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Michael Vetter &lt;mvetter@suse.com&gt;" date="1708603200">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1709035200">- version update to 7.1.1.29
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709380800">- We can not replace a symlink with a directory on the directly
  Unregister the whole group manually in %pre with
  update-alternatives. (boo#1220818)
  Restore Requires(pre) on update-alternatives for the mean time.</changelog>
  <changelog author="pgajdos@suse.com" date="1709553600">- enable SVG again
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711022400">- allow delegates to be executed, was disabled by default policy
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711108800">- allow stdin/stdout
- modified patches
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1712577600">- version update to 7.1.1.30
  * install perl module into user-specified prefix by @bugfood in #7192
  * Fix bmp option to bypass file size check by @OnTheList-1 in #7194
  * add support for encoding/decoding ultrahdr images by @aayushsoni111 in #7198
  * Updates to uhdr.c by @aayushsoni111 in #7217
- added patches
  fix https://github.com/ImageMagick/ImageMagick/issues/7230
  + ImageMagick-wmflite-detection.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713182400">- relax list-length resource limit, fixes build of python-Wand
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713787200">- version update to 7.1.1.31
  * Convert big PDF documents is slow #7263
  * Update release.yml #7258
  * Update README.md #7245
  * uhdr.c: verify the availability of error message before accessing it #7229
- removed patches
  - ImageMagick-wmflite-detection.patch (upstreamed)
  `</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1714910400">- version update to 7.1.1.32
  * Fix GIF ICC profile reading #7282
  * uhdr.c: add support for rgb inputs #7273</changelog>
  <changelog author="pgajdos@suse.com" date="1715860800">- reverted update-alternatives usage removal [bsc#1122033][bsc#1220818]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1716638400">- version update to 7.1.1.33
  * Fix typo in #7294
  * Bump azure/trusted-signing-action from 0.3.16 to 0.3.18 in #7325
  * Bump caphyon/advinst-github-action from 1.1 to 2.0 in #7326
- added patch
  + ImageMagick-update-image-signature.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1719144000">- version update to 7.1.1.34
  * Bump azure/trusted-signing-action from 0.3.18 to 0.3.19 in #7348
  * Fix a typo in convert deprecation warning in #7383
  * Bump azure/trusted-signing-action from 0.3.19 to 0.3.20 in #7388
  * Updated FontConfig query to include font index, fixing (#7374) in #7409
- removed patch (upstreamed)
  - ImageMagick-update-image-signature.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1721908800">- version update to 7.1.1.35
  * Also set dpi-x and dpi-y when running rsvg-convert. eac001f
  * convert sub-command is deprecated d67039e
  * only operators should disable "identify ping" (ImageMagick/ImageMagick#7441) a262192
  * fix compiler error ecc21c7
  * -outdir deprecated 9980efa
  * Get the correct width and height when heic:preserve-orientation is set to true. ed3a0dd
  * Set heic image orientation using transform information. ba470aa
  * Exit earlier when the symlink could not be created when invoking the svg:decode delegate. 8a48edd
  * Fixed MSYS2 build error. 3b22378
  * Also set the DNG properties when pinging the image. fc1c61b
  * Silence warning when lqr delegate is disabled. ae0d69a
  * Added version check for the heif_properties.h include. 656b4d2
  * Make sure we always use the i64 version of the "file methods" on Windows. b3e8a78
  * Changed defines to use method instead of a define. 75b66c4
  * Changes due to upgrade of libheif. 841f033
  * smooth the rendering of an ellipse (ImageMagick/ImageMagick#7465) 1bfce2a</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- version update to 7.1.1.36
  * uhdr.c: default initialize range field for hdr/sdr intent inputs to
    enc by @aayushsoni111 in #7482
  * Fixed typo in documentation of MagickAdaptiveBlurImage by @JonahEMorgan
    in #7500
  * Silence warning when freetype delegate is disabled. by @niclet in #7515</changelog>
  <changelog author="pgajdos@suse.com" date="1724760000">- version update to 7.1.1.37
  * Bump azure/trusted-signing-action from 0.3.20 to 0.4.0 #7518
  * Silence warning and fix HEIC_COMPUTE_NUMERIC_VERSION definition when heic delegate is disabled. #7516
  * protect macro arguments with parens 86cb2b1
  * eliminate compiler warnings d90d8b4
  * correct copyright year 115271e
  * Ignore multiple exif and xmp profiles for the same jxl frame and fix reading those profiles per frame. c301208
  * read/write in chunks fff3058
  * optimize fwrite() arguments ada6785
  * Renamed Output folder to Artifacts. 2a69677
  * cancel interactive window selection with right button press ea2a2db
  * cosmetic 712bde4
  * eliminate compiler warning 9a9a25c
  * eliminate compiler warning 0bd1687
  * Make images mandatory in the issue template. c01fd37
  * Added extra header detection for avif files. 9fc0590
  * allow SeekBlob() to set an offset beyond the end of the blob 27c3f99
  * be less forgiving for invalid image indexes 25db2e5
  * Fixed problem with empty macros (#7562) 9fda5f2
  * Added missing null checks for RequestOpenCLDevice. f85448e
  * Added missing null check for AcquireOpenCLCommandQueue. 295e9c8
  * persist app1 jpeg profile (ImageMagick/ImageMagick#4713) f0357c7
  * Fixed build error. b3dd431
  * Remove some of the dependencies for the macos-13 build. d0bce95
  * parentheses is the plural of parenthesis 1fac80a
  * distribute quantization error for -dither FloydSteinberg -depth 5b2825b
  * release 8a0da9f
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565</changelog>
</package>
<package pkgid="a404083783671b93b42115b81c0cae948547ba160cd73c85d313fd449b166e02b570560786141e830df980d9f6ed743ed155d2dfbb45d9b788e31cd53c2ba5c6" name="ImageMagick-doc" arch="noarch">
  <version epoch="0" ver="7.1.1.39" rel="1.1"/>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1705838400">- version update to 7.1.1.27
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1707652800">- version update to 7.1.1.28
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Michael Vetter &lt;mvetter@suse.com&gt;" date="1708603200">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1709035200">- version update to 7.1.1.29
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709380800">- We can not replace a symlink with a directory on the directly
  Unregister the whole group manually in %pre with
  update-alternatives. (boo#1220818)
  Restore Requires(pre) on update-alternatives for the mean time.</changelog>
  <changelog author="pgajdos@suse.com" date="1709553600">- enable SVG again
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711022400">- allow delegates to be executed, was disabled by default policy
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711108800">- allow stdin/stdout
- modified patches
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1712577600">- version update to 7.1.1.30
  * install perl module into user-specified prefix by @bugfood in #7192
  * Fix bmp option to bypass file size check by @OnTheList-1 in #7194
  * add support for encoding/decoding ultrahdr images by @aayushsoni111 in #7198
  * Updates to uhdr.c by @aayushsoni111 in #7217
- added patches
  fix https://github.com/ImageMagick/ImageMagick/issues/7230
  + ImageMagick-wmflite-detection.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713182400">- relax list-length resource limit, fixes build of python-Wand
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713787200">- version update to 7.1.1.31
  * Convert big PDF documents is slow #7263
  * Update release.yml #7258
  * Update README.md #7245
  * uhdr.c: verify the availability of error message before accessing it #7229
- removed patches
  - ImageMagick-wmflite-detection.patch (upstreamed)
  `</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1714910400">- version update to 7.1.1.32
  * Fix GIF ICC profile reading #7282
  * uhdr.c: add support for rgb inputs #7273</changelog>
  <changelog author="pgajdos@suse.com" date="1715860800">- reverted update-alternatives usage removal [bsc#1122033][bsc#1220818]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1716638400">- version update to 7.1.1.33
  * Fix typo in #7294
  * Bump azure/trusted-signing-action from 0.3.16 to 0.3.18 in #7325
  * Bump caphyon/advinst-github-action from 1.1 to 2.0 in #7326
- added patch
  + ImageMagick-update-image-signature.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1719144000">- version update to 7.1.1.34
  * Bump azure/trusted-signing-action from 0.3.18 to 0.3.19 in #7348
  * Fix a typo in convert deprecation warning in #7383
  * Bump azure/trusted-signing-action from 0.3.19 to 0.3.20 in #7388
  * Updated FontConfig query to include font index, fixing (#7374) in #7409
- removed patch (upstreamed)
  - ImageMagick-update-image-signature.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1721908800">- version update to 7.1.1.35
  * Also set dpi-x and dpi-y when running rsvg-convert. eac001f
  * convert sub-command is deprecated d67039e
  * only operators should disable "identify ping" (ImageMagick/ImageMagick#7441) a262192
  * fix compiler error ecc21c7
  * -outdir deprecated 9980efa
  * Get the correct width and height when heic:preserve-orientation is set to true. ed3a0dd
  * Set heic image orientation using transform information. ba470aa
  * Exit earlier when the symlink could not be created when invoking the svg:decode delegate. 8a48edd
  * Fixed MSYS2 build error. 3b22378
  * Also set the DNG properties when pinging the image. fc1c61b
  * Silence warning when lqr delegate is disabled. ae0d69a
  * Added version check for the heif_properties.h include. 656b4d2
  * Make sure we always use the i64 version of the "file methods" on Windows. b3e8a78
  * Changed defines to use method instead of a define. 75b66c4
  * Changes due to upgrade of libheif. 841f033
  * smooth the rendering of an ellipse (ImageMagick/ImageMagick#7465) 1bfce2a</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- version update to 7.1.1.36
  * uhdr.c: default initialize range field for hdr/sdr intent inputs to
    enc by @aayushsoni111 in #7482
  * Fixed typo in documentation of MagickAdaptiveBlurImage by @JonahEMorgan
    in #7500
  * Silence warning when freetype delegate is disabled. by @niclet in #7515</changelog>
  <changelog author="pgajdos@suse.com" date="1724760000">- version update to 7.1.1.37
  * Bump azure/trusted-signing-action from 0.3.20 to 0.4.0 #7518
  * Silence warning and fix HEIC_COMPUTE_NUMERIC_VERSION definition when heic delegate is disabled. #7516
  * protect macro arguments with parens 86cb2b1
  * eliminate compiler warnings d90d8b4
  * correct copyright year 115271e
  * Ignore multiple exif and xmp profiles for the same jxl frame and fix reading those profiles per frame. c301208
  * read/write in chunks fff3058
  * optimize fwrite() arguments ada6785
  * Renamed Output folder to Artifacts. 2a69677
  * cancel interactive window selection with right button press ea2a2db
  * cosmetic 712bde4
  * eliminate compiler warning 9a9a25c
  * eliminate compiler warning 0bd1687
  * Make images mandatory in the issue template. c01fd37
  * Added extra header detection for avif files. 9fc0590
  * allow SeekBlob() to set an offset beyond the end of the blob 27c3f99
  * be less forgiving for invalid image indexes 25db2e5
  * Fixed problem with empty macros (#7562) 9fda5f2
  * Added missing null checks for RequestOpenCLDevice. f85448e
  * Added missing null check for AcquireOpenCLCommandQueue. 295e9c8
  * persist app1 jpeg profile (ImageMagick/ImageMagick#4713) f0357c7
  * Fixed build error. b3dd431
  * Remove some of the dependencies for the macos-13 build. d0bce95
  * parentheses is the plural of parenthesis 1fac80a
  * distribute quantization error for -dither FloydSteinberg -depth 5b2825b
  * release 8a0da9f
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565</changelog>
  <changelog author="pgajdos@suse.com" date="1726228800">- version update to 7.1.1.38
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565
  * beta release 250b748
  * deprecate the -respect-paranthesis option 4e7d789
  * Build fixes. b80c509
  * save IPTC + ICC profiles are profiles, not properties 25d5335
  * update copyright year 4caf7d1
  * Patch to fix reading of the ICC profile. 18377f9
  * prepping framework to interact with X11 clipboard b20dda3
  * Build fix. 20a5af3
  * More build fixes. c36fdf0
  * Another attempt to silence the warnings. 600708c
  * Use SetImageProfilePrivate to avoid duplicate allocations. f246eab
  * support clipboard delegate 39a135a
  * restore clipboard.c 1070b17
  * improved rounding 27a0a9c
  * don't allow negative scenes 8fda05a
  * eliminate compiler warnings 878daf9
- modified patches
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1728216000">- version update to 7.1.1.39
  * Add missing Threshold command to command array of Region of Interest mode #7606
  * uhdr.c: update uhdr coder for gainmap metadata configuration #7635
  * uhdr: fix language choice in autoconf #7663</changelog>
</package>
<package pkgid="1373cd20c5dad43b5f416ae05d06a3925202e436239a97efddce8ba35be0f28ba78a9a01f62dea9a65b0f78af2a854fcce24e64d463cae51a09b506e878c10ab" name="ImageMagick-doc" arch="noarch">
  <version epoch="0" ver="7.1.1.41" rel="1.0.2.1.sr20241103"/>
  <changelog author="Michael Vetter &lt;mvetter@suse.com&gt;" date="1708603200">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1709035200">- version update to 7.1.1.29
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709380800">- We can not replace a symlink with a directory on the directly
  Unregister the whole group manually in %pre with
  update-alternatives. (boo#1220818)
  Restore Requires(pre) on update-alternatives for the mean time.</changelog>
  <changelog author="pgajdos@suse.com" date="1709553600">- enable SVG again
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711022400">- allow delegates to be executed, was disabled by default policy
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711108800">- allow stdin/stdout
- modified patches
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1712577600">- version update to 7.1.1.30
  * install perl module into user-specified prefix by @bugfood in #7192
  * Fix bmp option to bypass file size check by @OnTheList-1 in #7194
  * add support for encoding/decoding ultrahdr images by @aayushsoni111 in #7198
  * Updates to uhdr.c by @aayushsoni111 in #7217
- added patches
  fix https://github.com/ImageMagick/ImageMagick/issues/7230
  + ImageMagick-wmflite-detection.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713182400">- relax list-length resource limit, fixes build of python-Wand
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713787200">- version update to 7.1.1.31
  * Convert big PDF documents is slow #7263
  * Update release.yml #7258
  * Update README.md #7245
  * uhdr.c: verify the availability of error message before accessing it #7229
- removed patches
  - ImageMagick-wmflite-detection.patch (upstreamed)
  `</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1714910400">- version update to 7.1.1.32
  * Fix GIF ICC profile reading #7282
  * uhdr.c: add support for rgb inputs #7273</changelog>
  <changelog author="pgajdos@suse.com" date="1715860800">- reverted update-alternatives usage removal [bsc#1122033][bsc#1220818]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1716638400">- version update to 7.1.1.33
  * Fix typo in #7294
  * Bump azure/trusted-signing-action from 0.3.16 to 0.3.18 in #7325
  * Bump caphyon/advinst-github-action from 1.1 to 2.0 in #7326
- added patch
  + ImageMagick-update-image-signature.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1719144000">- version update to 7.1.1.34
  * Bump azure/trusted-signing-action from 0.3.18 to 0.3.19 in #7348
  * Fix a typo in convert deprecation warning in #7383
  * Bump azure/trusted-signing-action from 0.3.19 to 0.3.20 in #7388
  * Updated FontConfig query to include font index, fixing (#7374) in #7409
- removed patch (upstreamed)
  - ImageMagick-update-image-signature.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1721908800">- version update to 7.1.1.35
  * Also set dpi-x and dpi-y when running rsvg-convert. eac001f
  * convert sub-command is deprecated d67039e
  * only operators should disable "identify ping" (ImageMagick/ImageMagick#7441) a262192
  * fix compiler error ecc21c7
  * -outdir deprecated 9980efa
  * Get the correct width and height when heic:preserve-orientation is set to true. ed3a0dd
  * Set heic image orientation using transform information. ba470aa
  * Exit earlier when the symlink could not be created when invoking the svg:decode delegate. 8a48edd
  * Fixed MSYS2 build error. 3b22378
  * Also set the DNG properties when pinging the image. fc1c61b
  * Silence warning when lqr delegate is disabled. ae0d69a
  * Added version check for the heif_properties.h include. 656b4d2
  * Make sure we always use the i64 version of the "file methods" on Windows. b3e8a78
  * Changed defines to use method instead of a define. 75b66c4
  * Changes due to upgrade of libheif. 841f033
  * smooth the rendering of an ellipse (ImageMagick/ImageMagick#7465) 1bfce2a</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- version update to 7.1.1.36
  * uhdr.c: default initialize range field for hdr/sdr intent inputs to
    enc by @aayushsoni111 in #7482
  * Fixed typo in documentation of MagickAdaptiveBlurImage by @JonahEMorgan
    in #7500
  * Silence warning when freetype delegate is disabled. by @niclet in #7515</changelog>
  <changelog author="pgajdos@suse.com" date="1724760000">- version update to 7.1.1.37
  * Bump azure/trusted-signing-action from 0.3.20 to 0.4.0 #7518
  * Silence warning and fix HEIC_COMPUTE_NUMERIC_VERSION definition when heic delegate is disabled. #7516
  * protect macro arguments with parens 86cb2b1
  * eliminate compiler warnings d90d8b4
  * correct copyright year 115271e
  * Ignore multiple exif and xmp profiles for the same jxl frame and fix reading those profiles per frame. c301208
  * read/write in chunks fff3058
  * optimize fwrite() arguments ada6785
  * Renamed Output folder to Artifacts. 2a69677
  * cancel interactive window selection with right button press ea2a2db
  * cosmetic 712bde4
  * eliminate compiler warning 9a9a25c
  * eliminate compiler warning 0bd1687
  * Make images mandatory in the issue template. c01fd37
  * Added extra header detection for avif files. 9fc0590
  * allow SeekBlob() to set an offset beyond the end of the blob 27c3f99
  * be less forgiving for invalid image indexes 25db2e5
  * Fixed problem with empty macros (#7562) 9fda5f2
  * Added missing null checks for RequestOpenCLDevice. f85448e
  * Added missing null check for AcquireOpenCLCommandQueue. 295e9c8
  * persist app1 jpeg profile (ImageMagick/ImageMagick#4713) f0357c7
  * Fixed build error. b3dd431
  * Remove some of the dependencies for the macos-13 build. d0bce95
  * parentheses is the plural of parenthesis 1fac80a
  * distribute quantization error for -dither FloydSteinberg -depth 5b2825b
  * release 8a0da9f
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565</changelog>
  <changelog author="pgajdos@suse.com" date="1726228800">- version update to 7.1.1.38
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565
  * beta release 250b748
  * deprecate the -respect-paranthesis option 4e7d789
  * Build fixes. b80c509
  * save IPTC + ICC profiles are profiles, not properties 25d5335
  * update copyright year 4caf7d1
  * Patch to fix reading of the ICC profile. 18377f9
  * prepping framework to interact with X11 clipboard b20dda3
  * Build fix. 20a5af3
  * More build fixes. c36fdf0
  * Another attempt to silence the warnings. 600708c
  * Use SetImageProfilePrivate to avoid duplicate allocations. f246eab
  * support clipboard delegate 39a135a
  * restore clipboard.c 1070b17
  * improved rounding 27a0a9c
  * don't allow negative scenes 8fda05a
  * eliminate compiler warnings 878daf9
- modified patches
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1728216000">- version update to 7.1.1.39
  * Add missing Threshold command to command array of Region of Interest mode #7606
  * uhdr.c: update uhdr coder for gainmap metadata configuration #7635
  * uhdr: fix language choice in autoconf #7663</changelog>
  <changelog author="Yann BOYER &lt;yann.boyer742@gmail.com&gt;" date="1731326400">- version update to 7.1.1.40
  * .cut (Dr Halo) reading when run count in header #7734
  * Bump azure/trusted-signing-action from 0.4.0 to 0.5.0 #7725
  * Implement Magic Kernel Sharp 2013 and 2021 #7701
  * don't process TIFF image if there is an exception
  * Corrected check for indexed channels in PSD files.
  * export exception when undo resource limit exceeded</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1731844800">- version update to 7.1.1.41
  * Fix compiler identification with Clang on Darwin in #7773
  * revert map changes breaking ABI in #7768</changelog>
</package>
<package pkgid="7aea56acf6ed66fb10346e82f76ca7da01853fb319688eb727d52c3281dada132b4dfc8aed952597a61a50379e61559a94ba81c4c2939131ec2f1bfdf820903c" name="ImageMagick-extra" arch="i586">
  <version epoch="0" ver="7.1.1.36" rel="1.1"/>
  <changelog author="munix9@googlemail.com" date="1705233600">- Fix incomplete removal of update-alternatives for config
- Replace obsolete 'otherproviders(imagick-%{config_spec})' with
  'Conflicts: imagick-%{config_spec}'</changelog>
  <changelog author="pgajdos@suse.com" date="1705320000">- use correct policy.xml</changelog>
  <changelog author="pgajdos@suse.com" date="1705406400">- only one configuration again, based on upstream 'secure' policy
- other upstream policies packaged in documentation</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1705838400">- version update to 7.1.1.27
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1707652800">- version update to 7.1.1.28
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Michael Vetter &lt;mvetter@suse.com&gt;" date="1708603200">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1709035200">- version update to 7.1.1.29
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709380800">- We can not replace a symlink with a directory on the directly
  Unregister the whole group manually in %pre with
  update-alternatives. (boo#1220818)
  Restore Requires(pre) on update-alternatives for the mean time.</changelog>
  <changelog author="pgajdos@suse.com" date="1709553600">- enable SVG again
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711022400">- allow delegates to be executed, was disabled by default policy
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711108800">- allow stdin/stdout
- modified patches
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1712577600">- version update to 7.1.1.30
  * install perl module into user-specified prefix by @bugfood in #7192
  * Fix bmp option to bypass file size check by @OnTheList-1 in #7194
  * add support for encoding/decoding ultrahdr images by @aayushsoni111 in #7198
  * Updates to uhdr.c by @aayushsoni111 in #7217
- added patches
  fix https://github.com/ImageMagick/ImageMagick/issues/7230
  + ImageMagick-wmflite-detection.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713182400">- relax list-length resource limit, fixes build of python-Wand
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713787200">- version update to 7.1.1.31
  * Convert big PDF documents is slow #7263
  * Update release.yml #7258
  * Update README.md #7245
  * uhdr.c: verify the availability of error message before accessing it #7229
- removed patches
  - ImageMagick-wmflite-detection.patch (upstreamed)
  `</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1714910400">- version update to 7.1.1.32
  * Fix GIF ICC profile reading #7282
  * uhdr.c: add support for rgb inputs #7273</changelog>
  <changelog author="pgajdos@suse.com" date="1715860800">- reverted update-alternatives usage removal [bsc#1122033][bsc#1220818]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1716638400">- version update to 7.1.1.33
  * Fix typo in #7294
  * Bump azure/trusted-signing-action from 0.3.16 to 0.3.18 in #7325
  * Bump caphyon/advinst-github-action from 1.1 to 2.0 in #7326
- added patch
  + ImageMagick-update-image-signature.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1719144000">- version update to 7.1.1.34
  * Bump azure/trusted-signing-action from 0.3.18 to 0.3.19 in #7348
  * Fix a typo in convert deprecation warning in #7383
  * Bump azure/trusted-signing-action from 0.3.19 to 0.3.20 in #7388
  * Updated FontConfig query to include font index, fixing (#7374) in #7409
- removed patch (upstreamed)
  - ImageMagick-update-image-signature.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1721908800">- version update to 7.1.1.35
  * Also set dpi-x and dpi-y when running rsvg-convert. eac001f
  * convert sub-command is deprecated d67039e
  * only operators should disable "identify ping" (ImageMagick/ImageMagick#7441) a262192
  * fix compiler error ecc21c7
  * -outdir deprecated 9980efa
  * Get the correct width and height when heic:preserve-orientation is set to true. ed3a0dd
  * Set heic image orientation using transform information. ba470aa
  * Exit earlier when the symlink could not be created when invoking the svg:decode delegate. 8a48edd
  * Fixed MSYS2 build error. 3b22378
  * Also set the DNG properties when pinging the image. fc1c61b
  * Silence warning when lqr delegate is disabled. ae0d69a
  * Added version check for the heif_properties.h include. 656b4d2
  * Make sure we always use the i64 version of the "file methods" on Windows. b3e8a78
  * Changed defines to use method instead of a define. 75b66c4
  * Changes due to upgrade of libheif. 841f033
  * smooth the rendering of an ellipse (ImageMagick/ImageMagick#7465) 1bfce2a</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- version update to 7.1.1.36
  * uhdr.c: default initialize range field for hdr/sdr intent inputs to
    enc by @aayushsoni111 in #7482
  * Fixed typo in documentation of MagickAdaptiveBlurImage by @JonahEMorgan
    in #7500
  * Silence warning when freetype delegate is disabled. by @niclet in #7515</changelog>
</package>
<package pkgid="158ee8d25a0f92ba9b1037ae3a73145769feb960a9eb9ff2ea921fbcf08eddf7ec13c4a8106c271d70a199f07495118dcc80d5116785832245a4b395a71b2574" name="ImageMagick-extra" arch="x86_64">
  <version epoch="0" ver="7.1.1.36" rel="1.1"/>
  <changelog author="munix9@googlemail.com" date="1705233600">- Fix incomplete removal of update-alternatives for config
- Replace obsolete 'otherproviders(imagick-%{config_spec})' with
  'Conflicts: imagick-%{config_spec}'</changelog>
  <changelog author="pgajdos@suse.com" date="1705320000">- use correct policy.xml</changelog>
  <changelog author="pgajdos@suse.com" date="1705406400">- only one configuration again, based on upstream 'secure' policy
- other upstream policies packaged in documentation</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1705838400">- version update to 7.1.1.27
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1707652800">- version update to 7.1.1.28
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Michael Vetter &lt;mvetter@suse.com&gt;" date="1708603200">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1709035200">- version update to 7.1.1.29
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709380800">- We can not replace a symlink with a directory on the directly
  Unregister the whole group manually in %pre with
  update-alternatives. (boo#1220818)
  Restore Requires(pre) on update-alternatives for the mean time.</changelog>
  <changelog author="pgajdos@suse.com" date="1709553600">- enable SVG again
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711022400">- allow delegates to be executed, was disabled by default policy
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711108800">- allow stdin/stdout
- modified patches
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1712577600">- version update to 7.1.1.30
  * install perl module into user-specified prefix by @bugfood in #7192
  * Fix bmp option to bypass file size check by @OnTheList-1 in #7194
  * add support for encoding/decoding ultrahdr images by @aayushsoni111 in #7198
  * Updates to uhdr.c by @aayushsoni111 in #7217
- added patches
  fix https://github.com/ImageMagick/ImageMagick/issues/7230
  + ImageMagick-wmflite-detection.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713182400">- relax list-length resource limit, fixes build of python-Wand
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713787200">- version update to 7.1.1.31
  * Convert big PDF documents is slow #7263
  * Update release.yml #7258
  * Update README.md #7245
  * uhdr.c: verify the availability of error message before accessing it #7229
- removed patches
  - ImageMagick-wmflite-detection.patch (upstreamed)
  `</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1714910400">- version update to 7.1.1.32
  * Fix GIF ICC profile reading #7282
  * uhdr.c: add support for rgb inputs #7273</changelog>
  <changelog author="pgajdos@suse.com" date="1715860800">- reverted update-alternatives usage removal [bsc#1122033][bsc#1220818]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1716638400">- version update to 7.1.1.33
  * Fix typo in #7294
  * Bump azure/trusted-signing-action from 0.3.16 to 0.3.18 in #7325
  * Bump caphyon/advinst-github-action from 1.1 to 2.0 in #7326
- added patch
  + ImageMagick-update-image-signature.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1719144000">- version update to 7.1.1.34
  * Bump azure/trusted-signing-action from 0.3.18 to 0.3.19 in #7348
  * Fix a typo in convert deprecation warning in #7383
  * Bump azure/trusted-signing-action from 0.3.19 to 0.3.20 in #7388
  * Updated FontConfig query to include font index, fixing (#7374) in #7409
- removed patch (upstreamed)
  - ImageMagick-update-image-signature.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1721908800">- version update to 7.1.1.35
  * Also set dpi-x and dpi-y when running rsvg-convert. eac001f
  * convert sub-command is deprecated d67039e
  * only operators should disable "identify ping" (ImageMagick/ImageMagick#7441) a262192
  * fix compiler error ecc21c7
  * -outdir deprecated 9980efa
  * Get the correct width and height when heic:preserve-orientation is set to true. ed3a0dd
  * Set heic image orientation using transform information. ba470aa
  * Exit earlier when the symlink could not be created when invoking the svg:decode delegate. 8a48edd
  * Fixed MSYS2 build error. 3b22378
  * Also set the DNG properties when pinging the image. fc1c61b
  * Silence warning when lqr delegate is disabled. ae0d69a
  * Added version check for the heif_properties.h include. 656b4d2
  * Make sure we always use the i64 version of the "file methods" on Windows. b3e8a78
  * Changed defines to use method instead of a define. 75b66c4
  * Changes due to upgrade of libheif. 841f033
  * smooth the rendering of an ellipse (ImageMagick/ImageMagick#7465) 1bfce2a</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- version update to 7.1.1.36
  * uhdr.c: default initialize range field for hdr/sdr intent inputs to
    enc by @aayushsoni111 in #7482
  * Fixed typo in documentation of MagickAdaptiveBlurImage by @JonahEMorgan
    in #7500
  * Silence warning when freetype delegate is disabled. by @niclet in #7515</changelog>
</package>
<package pkgid="ce536a863425bce2d9c812a28da1296015ba2bd5a85e33d7870619971a41b153d471d8bae1f928db0e8d91129559337796d4d6b603775bd2e5b7654f86538451" name="ImageMagick-extra" arch="i586">
  <version epoch="0" ver="7.1.1.37" rel="1.0.4.1.sr20240803"/>
  <changelog author="pgajdos@suse.com" date="1705320000">- use correct policy.xml</changelog>
  <changelog author="pgajdos@suse.com" date="1705406400">- only one configuration again, based on upstream 'secure' policy
- other upstream policies packaged in documentation</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1705838400">- version update to 7.1.1.27
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1707652800">- version update to 7.1.1.28
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Michael Vetter &lt;mvetter@suse.com&gt;" date="1708603200">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1709035200">- version update to 7.1.1.29
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709380800">- We can not replace a symlink with a directory on the directly
  Unregister the whole group manually in %pre with
  update-alternatives. (boo#1220818)
  Restore Requires(pre) on update-alternatives for the mean time.</changelog>
  <changelog author="pgajdos@suse.com" date="1709553600">- enable SVG again
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711022400">- allow delegates to be executed, was disabled by default policy
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711108800">- allow stdin/stdout
- modified patches
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1712577600">- version update to 7.1.1.30
  * install perl module into user-specified prefix by @bugfood in #7192
  * Fix bmp option to bypass file size check by @OnTheList-1 in #7194
  * add support for encoding/decoding ultrahdr images by @aayushsoni111 in #7198
  * Updates to uhdr.c by @aayushsoni111 in #7217
- added patches
  fix https://github.com/ImageMagick/ImageMagick/issues/7230
  + ImageMagick-wmflite-detection.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713182400">- relax list-length resource limit, fixes build of python-Wand
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713787200">- version update to 7.1.1.31
  * Convert big PDF documents is slow #7263
  * Update release.yml #7258
  * Update README.md #7245
  * uhdr.c: verify the availability of error message before accessing it #7229
- removed patches
  - ImageMagick-wmflite-detection.patch (upstreamed)
  `</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1714910400">- version update to 7.1.1.32
  * Fix GIF ICC profile reading #7282
  * uhdr.c: add support for rgb inputs #7273</changelog>
  <changelog author="pgajdos@suse.com" date="1715860800">- reverted update-alternatives usage removal [bsc#1122033][bsc#1220818]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1716638400">- version update to 7.1.1.33
  * Fix typo in #7294
  * Bump azure/trusted-signing-action from 0.3.16 to 0.3.18 in #7325
  * Bump caphyon/advinst-github-action from 1.1 to 2.0 in #7326
- added patch
  + ImageMagick-update-image-signature.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1719144000">- version update to 7.1.1.34
  * Bump azure/trusted-signing-action from 0.3.18 to 0.3.19 in #7348
  * Fix a typo in convert deprecation warning in #7383
  * Bump azure/trusted-signing-action from 0.3.19 to 0.3.20 in #7388
  * Updated FontConfig query to include font index, fixing (#7374) in #7409
- removed patch (upstreamed)
  - ImageMagick-update-image-signature.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1721908800">- version update to 7.1.1.35
  * Also set dpi-x and dpi-y when running rsvg-convert. eac001f
  * convert sub-command is deprecated d67039e
  * only operators should disable "identify ping" (ImageMagick/ImageMagick#7441) a262192
  * fix compiler error ecc21c7
  * -outdir deprecated 9980efa
  * Get the correct width and height when heic:preserve-orientation is set to true. ed3a0dd
  * Set heic image orientation using transform information. ba470aa
  * Exit earlier when the symlink could not be created when invoking the svg:decode delegate. 8a48edd
  * Fixed MSYS2 build error. 3b22378
  * Also set the DNG properties when pinging the image. fc1c61b
  * Silence warning when lqr delegate is disabled. ae0d69a
  * Added version check for the heif_properties.h include. 656b4d2
  * Make sure we always use the i64 version of the "file methods" on Windows. b3e8a78
  * Changed defines to use method instead of a define. 75b66c4
  * Changes due to upgrade of libheif. 841f033
  * smooth the rendering of an ellipse (ImageMagick/ImageMagick#7465) 1bfce2a</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- version update to 7.1.1.36
  * uhdr.c: default initialize range field for hdr/sdr intent inputs to
    enc by @aayushsoni111 in #7482
  * Fixed typo in documentation of MagickAdaptiveBlurImage by @JonahEMorgan
    in #7500
  * Silence warning when freetype delegate is disabled. by @niclet in #7515</changelog>
  <changelog author="pgajdos@suse.com" date="1724760000">- version update to 7.1.1.37
  * Bump azure/trusted-signing-action from 0.3.20 to 0.4.0 #7518
  * Silence warning and fix HEIC_COMPUTE_NUMERIC_VERSION definition when heic delegate is disabled. #7516
  * protect macro arguments with parens 86cb2b1
  * eliminate compiler warnings d90d8b4
  * correct copyright year 115271e
  * Ignore multiple exif and xmp profiles for the same jxl frame and fix reading those profiles per frame. c301208
  * read/write in chunks fff3058
  * optimize fwrite() arguments ada6785
  * Renamed Output folder to Artifacts. 2a69677
  * cancel interactive window selection with right button press ea2a2db
  * cosmetic 712bde4
  * eliminate compiler warning 9a9a25c
  * eliminate compiler warning 0bd1687
  * Make images mandatory in the issue template. c01fd37
  * Added extra header detection for avif files. 9fc0590
  * allow SeekBlob() to set an offset beyond the end of the blob 27c3f99
  * be less forgiving for invalid image indexes 25db2e5
  * Fixed problem with empty macros (#7562) 9fda5f2
  * Added missing null checks for RequestOpenCLDevice. f85448e
  * Added missing null check for AcquireOpenCLCommandQueue. 295e9c8
  * persist app1 jpeg profile (ImageMagick/ImageMagick#4713) f0357c7
  * Fixed build error. b3dd431
  * Remove some of the dependencies for the macos-13 build. d0bce95
  * parentheses is the plural of parenthesis 1fac80a
  * distribute quantization error for -dither FloydSteinberg -depth 5b2825b
  * release 8a0da9f
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565</changelog>
</package>
<package pkgid="bb3a1fa30acaae8101a08eebe906bdafacd3cd73b90809db826baa32668cf6a938c4e72aac4eaee489080d74495f740e0295aa6e7d7b40bb1cd3c1ea6f78f765" name="ImageMagick-extra" arch="x86_64">
  <version epoch="0" ver="7.1.1.37" rel="1.0.4.1.sr20240803"/>
  <changelog author="pgajdos@suse.com" date="1705320000">- use correct policy.xml</changelog>
  <changelog author="pgajdos@suse.com" date="1705406400">- only one configuration again, based on upstream 'secure' policy
- other upstream policies packaged in documentation</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1705838400">- version update to 7.1.1.27
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1707652800">- version update to 7.1.1.28
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Michael Vetter &lt;mvetter@suse.com&gt;" date="1708603200">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1709035200">- version update to 7.1.1.29
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709380800">- We can not replace a symlink with a directory on the directly
  Unregister the whole group manually in %pre with
  update-alternatives. (boo#1220818)
  Restore Requires(pre) on update-alternatives for the mean time.</changelog>
  <changelog author="pgajdos@suse.com" date="1709553600">- enable SVG again
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711022400">- allow delegates to be executed, was disabled by default policy
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711108800">- allow stdin/stdout
- modified patches
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1712577600">- version update to 7.1.1.30
  * install perl module into user-specified prefix by @bugfood in #7192
  * Fix bmp option to bypass file size check by @OnTheList-1 in #7194
  * add support for encoding/decoding ultrahdr images by @aayushsoni111 in #7198
  * Updates to uhdr.c by @aayushsoni111 in #7217
- added patches
  fix https://github.com/ImageMagick/ImageMagick/issues/7230
  + ImageMagick-wmflite-detection.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713182400">- relax list-length resource limit, fixes build of python-Wand
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713787200">- version update to 7.1.1.31
  * Convert big PDF documents is slow #7263
  * Update release.yml #7258
  * Update README.md #7245
  * uhdr.c: verify the availability of error message before accessing it #7229
- removed patches
  - ImageMagick-wmflite-detection.patch (upstreamed)
  `</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1714910400">- version update to 7.1.1.32
  * Fix GIF ICC profile reading #7282
  * uhdr.c: add support for rgb inputs #7273</changelog>
  <changelog author="pgajdos@suse.com" date="1715860800">- reverted update-alternatives usage removal [bsc#1122033][bsc#1220818]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1716638400">- version update to 7.1.1.33
  * Fix typo in #7294
  * Bump azure/trusted-signing-action from 0.3.16 to 0.3.18 in #7325
  * Bump caphyon/advinst-github-action from 1.1 to 2.0 in #7326
- added patch
  + ImageMagick-update-image-signature.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1719144000">- version update to 7.1.1.34
  * Bump azure/trusted-signing-action from 0.3.18 to 0.3.19 in #7348
  * Fix a typo in convert deprecation warning in #7383
  * Bump azure/trusted-signing-action from 0.3.19 to 0.3.20 in #7388
  * Updated FontConfig query to include font index, fixing (#7374) in #7409
- removed patch (upstreamed)
  - ImageMagick-update-image-signature.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1721908800">- version update to 7.1.1.35
  * Also set dpi-x and dpi-y when running rsvg-convert. eac001f
  * convert sub-command is deprecated d67039e
  * only operators should disable "identify ping" (ImageMagick/ImageMagick#7441) a262192
  * fix compiler error ecc21c7
  * -outdir deprecated 9980efa
  * Get the correct width and height when heic:preserve-orientation is set to true. ed3a0dd
  * Set heic image orientation using transform information. ba470aa
  * Exit earlier when the symlink could not be created when invoking the svg:decode delegate. 8a48edd
  * Fixed MSYS2 build error. 3b22378
  * Also set the DNG properties when pinging the image. fc1c61b
  * Silence warning when lqr delegate is disabled. ae0d69a
  * Added version check for the heif_properties.h include. 656b4d2
  * Make sure we always use the i64 version of the "file methods" on Windows. b3e8a78
  * Changed defines to use method instead of a define. 75b66c4
  * Changes due to upgrade of libheif. 841f033
  * smooth the rendering of an ellipse (ImageMagick/ImageMagick#7465) 1bfce2a</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- version update to 7.1.1.36
  * uhdr.c: default initialize range field for hdr/sdr intent inputs to
    enc by @aayushsoni111 in #7482
  * Fixed typo in documentation of MagickAdaptiveBlurImage by @JonahEMorgan
    in #7500
  * Silence warning when freetype delegate is disabled. by @niclet in #7515</changelog>
  <changelog author="pgajdos@suse.com" date="1724760000">- version update to 7.1.1.37
  * Bump azure/trusted-signing-action from 0.3.20 to 0.4.0 #7518
  * Silence warning and fix HEIC_COMPUTE_NUMERIC_VERSION definition when heic delegate is disabled. #7516
  * protect macro arguments with parens 86cb2b1
  * eliminate compiler warnings d90d8b4
  * correct copyright year 115271e
  * Ignore multiple exif and xmp profiles for the same jxl frame and fix reading those profiles per frame. c301208
  * read/write in chunks fff3058
  * optimize fwrite() arguments ada6785
  * Renamed Output folder to Artifacts. 2a69677
  * cancel interactive window selection with right button press ea2a2db
  * cosmetic 712bde4
  * eliminate compiler warning 9a9a25c
  * eliminate compiler warning 0bd1687
  * Make images mandatory in the issue template. c01fd37
  * Added extra header detection for avif files. 9fc0590
  * allow SeekBlob() to set an offset beyond the end of the blob 27c3f99
  * be less forgiving for invalid image indexes 25db2e5
  * Fixed problem with empty macros (#7562) 9fda5f2
  * Added missing null checks for RequestOpenCLDevice. f85448e
  * Added missing null check for AcquireOpenCLCommandQueue. 295e9c8
  * persist app1 jpeg profile (ImageMagick/ImageMagick#4713) f0357c7
  * Fixed build error. b3dd431
  * Remove some of the dependencies for the macos-13 build. d0bce95
  * parentheses is the plural of parenthesis 1fac80a
  * distribute quantization error for -dither FloydSteinberg -depth 5b2825b
  * release 8a0da9f
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565</changelog>
</package>
<package pkgid="a9cd7385c958db272996cf1fd9f45ad08f46b573c4e1f8dbb8b6fcef151d9c60bb00d56e8c931dff7c388ba7e56238b042c504cf89fb3a5c4f9f4f5542ea7170" name="ImageMagick-extra" arch="i586">
  <version epoch="0" ver="7.1.1.37" rel="1.1"/>
  <changelog author="pgajdos@suse.com" date="1705320000">- use correct policy.xml</changelog>
  <changelog author="pgajdos@suse.com" date="1705406400">- only one configuration again, based on upstream 'secure' policy
- other upstream policies packaged in documentation</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1705838400">- version update to 7.1.1.27
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1707652800">- version update to 7.1.1.28
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Michael Vetter &lt;mvetter@suse.com&gt;" date="1708603200">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1709035200">- version update to 7.1.1.29
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709380800">- We can not replace a symlink with a directory on the directly
  Unregister the whole group manually in %pre with
  update-alternatives. (boo#1220818)
  Restore Requires(pre) on update-alternatives for the mean time.</changelog>
  <changelog author="pgajdos@suse.com" date="1709553600">- enable SVG again
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711022400">- allow delegates to be executed, was disabled by default policy
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711108800">- allow stdin/stdout
- modified patches
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1712577600">- version update to 7.1.1.30
  * install perl module into user-specified prefix by @bugfood in #7192
  * Fix bmp option to bypass file size check by @OnTheList-1 in #7194
  * add support for encoding/decoding ultrahdr images by @aayushsoni111 in #7198
  * Updates to uhdr.c by @aayushsoni111 in #7217
- added patches
  fix https://github.com/ImageMagick/ImageMagick/issues/7230
  + ImageMagick-wmflite-detection.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713182400">- relax list-length resource limit, fixes build of python-Wand
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713787200">- version update to 7.1.1.31
  * Convert big PDF documents is slow #7263
  * Update release.yml #7258
  * Update README.md #7245
  * uhdr.c: verify the availability of error message before accessing it #7229
- removed patches
  - ImageMagick-wmflite-detection.patch (upstreamed)
  `</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1714910400">- version update to 7.1.1.32
  * Fix GIF ICC profile reading #7282
  * uhdr.c: add support for rgb inputs #7273</changelog>
  <changelog author="pgajdos@suse.com" date="1715860800">- reverted update-alternatives usage removal [bsc#1122033][bsc#1220818]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1716638400">- version update to 7.1.1.33
  * Fix typo in #7294
  * Bump azure/trusted-signing-action from 0.3.16 to 0.3.18 in #7325
  * Bump caphyon/advinst-github-action from 1.1 to 2.0 in #7326
- added patch
  + ImageMagick-update-image-signature.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1719144000">- version update to 7.1.1.34
  * Bump azure/trusted-signing-action from 0.3.18 to 0.3.19 in #7348
  * Fix a typo in convert deprecation warning in #7383
  * Bump azure/trusted-signing-action from 0.3.19 to 0.3.20 in #7388
  * Updated FontConfig query to include font index, fixing (#7374) in #7409
- removed patch (upstreamed)
  - ImageMagick-update-image-signature.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1721908800">- version update to 7.1.1.35
  * Also set dpi-x and dpi-y when running rsvg-convert. eac001f
  * convert sub-command is deprecated d67039e
  * only operators should disable "identify ping" (ImageMagick/ImageMagick#7441) a262192
  * fix compiler error ecc21c7
  * -outdir deprecated 9980efa
  * Get the correct width and height when heic:preserve-orientation is set to true. ed3a0dd
  * Set heic image orientation using transform information. ba470aa
  * Exit earlier when the symlink could not be created when invoking the svg:decode delegate. 8a48edd
  * Fixed MSYS2 build error. 3b22378
  * Also set the DNG properties when pinging the image. fc1c61b
  * Silence warning when lqr delegate is disabled. ae0d69a
  * Added version check for the heif_properties.h include. 656b4d2
  * Make sure we always use the i64 version of the "file methods" on Windows. b3e8a78
  * Changed defines to use method instead of a define. 75b66c4
  * Changes due to upgrade of libheif. 841f033
  * smooth the rendering of an ellipse (ImageMagick/ImageMagick#7465) 1bfce2a</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- version update to 7.1.1.36
  * uhdr.c: default initialize range field for hdr/sdr intent inputs to
    enc by @aayushsoni111 in #7482
  * Fixed typo in documentation of MagickAdaptiveBlurImage by @JonahEMorgan
    in #7500
  * Silence warning when freetype delegate is disabled. by @niclet in #7515</changelog>
  <changelog author="pgajdos@suse.com" date="1724760000">- version update to 7.1.1.37
  * Bump azure/trusted-signing-action from 0.3.20 to 0.4.0 #7518
  * Silence warning and fix HEIC_COMPUTE_NUMERIC_VERSION definition when heic delegate is disabled. #7516
  * protect macro arguments with parens 86cb2b1
  * eliminate compiler warnings d90d8b4
  * correct copyright year 115271e
  * Ignore multiple exif and xmp profiles for the same jxl frame and fix reading those profiles per frame. c301208
  * read/write in chunks fff3058
  * optimize fwrite() arguments ada6785
  * Renamed Output folder to Artifacts. 2a69677
  * cancel interactive window selection with right button press ea2a2db
  * cosmetic 712bde4
  * eliminate compiler warning 9a9a25c
  * eliminate compiler warning 0bd1687
  * Make images mandatory in the issue template. c01fd37
  * Added extra header detection for avif files. 9fc0590
  * allow SeekBlob() to set an offset beyond the end of the blob 27c3f99
  * be less forgiving for invalid image indexes 25db2e5
  * Fixed problem with empty macros (#7562) 9fda5f2
  * Added missing null checks for RequestOpenCLDevice. f85448e
  * Added missing null check for AcquireOpenCLCommandQueue. 295e9c8
  * persist app1 jpeg profile (ImageMagick/ImageMagick#4713) f0357c7
  * Fixed build error. b3dd431
  * Remove some of the dependencies for the macos-13 build. d0bce95
  * parentheses is the plural of parenthesis 1fac80a
  * distribute quantization error for -dither FloydSteinberg -depth 5b2825b
  * release 8a0da9f
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565</changelog>
</package>
<package pkgid="8fa3efa1476dc3763212faecfeef81a41175c5aef420857cc63fa6b2cc25daa196dee295e653fdddf7a97a2680b3ce934cf9ae57b5d596986a1e1e30ce5f6b9b" name="ImageMagick-extra" arch="x86_64">
  <version epoch="0" ver="7.1.1.37" rel="1.1"/>
  <changelog author="pgajdos@suse.com" date="1705320000">- use correct policy.xml</changelog>
  <changelog author="pgajdos@suse.com" date="1705406400">- only one configuration again, based on upstream 'secure' policy
- other upstream policies packaged in documentation</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1705838400">- version update to 7.1.1.27
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1707652800">- version update to 7.1.1.28
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Michael Vetter &lt;mvetter@suse.com&gt;" date="1708603200">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1709035200">- version update to 7.1.1.29
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709380800">- We can not replace a symlink with a directory on the directly
  Unregister the whole group manually in %pre with
  update-alternatives. (boo#1220818)
  Restore Requires(pre) on update-alternatives for the mean time.</changelog>
  <changelog author="pgajdos@suse.com" date="1709553600">- enable SVG again
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711022400">- allow delegates to be executed, was disabled by default policy
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711108800">- allow stdin/stdout
- modified patches
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1712577600">- version update to 7.1.1.30
  * install perl module into user-specified prefix by @bugfood in #7192
  * Fix bmp option to bypass file size check by @OnTheList-1 in #7194
  * add support for encoding/decoding ultrahdr images by @aayushsoni111 in #7198
  * Updates to uhdr.c by @aayushsoni111 in #7217
- added patches
  fix https://github.com/ImageMagick/ImageMagick/issues/7230
  + ImageMagick-wmflite-detection.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713182400">- relax list-length resource limit, fixes build of python-Wand
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713787200">- version update to 7.1.1.31
  * Convert big PDF documents is slow #7263
  * Update release.yml #7258
  * Update README.md #7245
  * uhdr.c: verify the availability of error message before accessing it #7229
- removed patches
  - ImageMagick-wmflite-detection.patch (upstreamed)
  `</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1714910400">- version update to 7.1.1.32
  * Fix GIF ICC profile reading #7282
  * uhdr.c: add support for rgb inputs #7273</changelog>
  <changelog author="pgajdos@suse.com" date="1715860800">- reverted update-alternatives usage removal [bsc#1122033][bsc#1220818]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1716638400">- version update to 7.1.1.33
  * Fix typo in #7294
  * Bump azure/trusted-signing-action from 0.3.16 to 0.3.18 in #7325
  * Bump caphyon/advinst-github-action from 1.1 to 2.0 in #7326
- added patch
  + ImageMagick-update-image-signature.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1719144000">- version update to 7.1.1.34
  * Bump azure/trusted-signing-action from 0.3.18 to 0.3.19 in #7348
  * Fix a typo in convert deprecation warning in #7383
  * Bump azure/trusted-signing-action from 0.3.19 to 0.3.20 in #7388
  * Updated FontConfig query to include font index, fixing (#7374) in #7409
- removed patch (upstreamed)
  - ImageMagick-update-image-signature.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1721908800">- version update to 7.1.1.35
  * Also set dpi-x and dpi-y when running rsvg-convert. eac001f
  * convert sub-command is deprecated d67039e
  * only operators should disable "identify ping" (ImageMagick/ImageMagick#7441) a262192
  * fix compiler error ecc21c7
  * -outdir deprecated 9980efa
  * Get the correct width and height when heic:preserve-orientation is set to true. ed3a0dd
  * Set heic image orientation using transform information. ba470aa
  * Exit earlier when the symlink could not be created when invoking the svg:decode delegate. 8a48edd
  * Fixed MSYS2 build error. 3b22378
  * Also set the DNG properties when pinging the image. fc1c61b
  * Silence warning when lqr delegate is disabled. ae0d69a
  * Added version check for the heif_properties.h include. 656b4d2
  * Make sure we always use the i64 version of the "file methods" on Windows. b3e8a78
  * Changed defines to use method instead of a define. 75b66c4
  * Changes due to upgrade of libheif. 841f033
  * smooth the rendering of an ellipse (ImageMagick/ImageMagick#7465) 1bfce2a</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- version update to 7.1.1.36
  * uhdr.c: default initialize range field for hdr/sdr intent inputs to
    enc by @aayushsoni111 in #7482
  * Fixed typo in documentation of MagickAdaptiveBlurImage by @JonahEMorgan
    in #7500
  * Silence warning when freetype delegate is disabled. by @niclet in #7515</changelog>
  <changelog author="pgajdos@suse.com" date="1724760000">- version update to 7.1.1.37
  * Bump azure/trusted-signing-action from 0.3.20 to 0.4.0 #7518
  * Silence warning and fix HEIC_COMPUTE_NUMERIC_VERSION definition when heic delegate is disabled. #7516
  * protect macro arguments with parens 86cb2b1
  * eliminate compiler warnings d90d8b4
  * correct copyright year 115271e
  * Ignore multiple exif and xmp profiles for the same jxl frame and fix reading those profiles per frame. c301208
  * read/write in chunks fff3058
  * optimize fwrite() arguments ada6785
  * Renamed Output folder to Artifacts. 2a69677
  * cancel interactive window selection with right button press ea2a2db
  * cosmetic 712bde4
  * eliminate compiler warning 9a9a25c
  * eliminate compiler warning 0bd1687
  * Make images mandatory in the issue template. c01fd37
  * Added extra header detection for avif files. 9fc0590
  * allow SeekBlob() to set an offset beyond the end of the blob 27c3f99
  * be less forgiving for invalid image indexes 25db2e5
  * Fixed problem with empty macros (#7562) 9fda5f2
  * Added missing null checks for RequestOpenCLDevice. f85448e
  * Added missing null check for AcquireOpenCLCommandQueue. 295e9c8
  * persist app1 jpeg profile (ImageMagick/ImageMagick#4713) f0357c7
  * Fixed build error. b3dd431
  * Remove some of the dependencies for the macos-13 build. d0bce95
  * parentheses is the plural of parenthesis 1fac80a
  * distribute quantization error for -dither FloydSteinberg -depth 5b2825b
  * release 8a0da9f
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565</changelog>
</package>
<package pkgid="dcfbb4a9bd78af63d5b4d66584e92d1fe31cad1dea0e08a67a1e21740acee564d847ea0e2af986b6680d5bdf822ae09564892c452a1081c303e09c09a911c9cb" name="ImageMagick-extra" arch="i586">
  <version epoch="0" ver="7.1.1.39" rel="1.1"/>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1705838400">- version update to 7.1.1.27
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1707652800">- version update to 7.1.1.28
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Michael Vetter &lt;mvetter@suse.com&gt;" date="1708603200">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1709035200">- version update to 7.1.1.29
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709380800">- We can not replace a symlink with a directory on the directly
  Unregister the whole group manually in %pre with
  update-alternatives. (boo#1220818)
  Restore Requires(pre) on update-alternatives for the mean time.</changelog>
  <changelog author="pgajdos@suse.com" date="1709553600">- enable SVG again
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711022400">- allow delegates to be executed, was disabled by default policy
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711108800">- allow stdin/stdout
- modified patches
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1712577600">- version update to 7.1.1.30
  * install perl module into user-specified prefix by @bugfood in #7192
  * Fix bmp option to bypass file size check by @OnTheList-1 in #7194
  * add support for encoding/decoding ultrahdr images by @aayushsoni111 in #7198
  * Updates to uhdr.c by @aayushsoni111 in #7217
- added patches
  fix https://github.com/ImageMagick/ImageMagick/issues/7230
  + ImageMagick-wmflite-detection.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713182400">- relax list-length resource limit, fixes build of python-Wand
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713787200">- version update to 7.1.1.31
  * Convert big PDF documents is slow #7263
  * Update release.yml #7258
  * Update README.md #7245
  * uhdr.c: verify the availability of error message before accessing it #7229
- removed patches
  - ImageMagick-wmflite-detection.patch (upstreamed)
  `</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1714910400">- version update to 7.1.1.32
  * Fix GIF ICC profile reading #7282
  * uhdr.c: add support for rgb inputs #7273</changelog>
  <changelog author="pgajdos@suse.com" date="1715860800">- reverted update-alternatives usage removal [bsc#1122033][bsc#1220818]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1716638400">- version update to 7.1.1.33
  * Fix typo in #7294
  * Bump azure/trusted-signing-action from 0.3.16 to 0.3.18 in #7325
  * Bump caphyon/advinst-github-action from 1.1 to 2.0 in #7326
- added patch
  + ImageMagick-update-image-signature.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1719144000">- version update to 7.1.1.34
  * Bump azure/trusted-signing-action from 0.3.18 to 0.3.19 in #7348
  * Fix a typo in convert deprecation warning in #7383
  * Bump azure/trusted-signing-action from 0.3.19 to 0.3.20 in #7388
  * Updated FontConfig query to include font index, fixing (#7374) in #7409
- removed patch (upstreamed)
  - ImageMagick-update-image-signature.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1721908800">- version update to 7.1.1.35
  * Also set dpi-x and dpi-y when running rsvg-convert. eac001f
  * convert sub-command is deprecated d67039e
  * only operators should disable "identify ping" (ImageMagick/ImageMagick#7441) a262192
  * fix compiler error ecc21c7
  * -outdir deprecated 9980efa
  * Get the correct width and height when heic:preserve-orientation is set to true. ed3a0dd
  * Set heic image orientation using transform information. ba470aa
  * Exit earlier when the symlink could not be created when invoking the svg:decode delegate. 8a48edd
  * Fixed MSYS2 build error. 3b22378
  * Also set the DNG properties when pinging the image. fc1c61b
  * Silence warning when lqr delegate is disabled. ae0d69a
  * Added version check for the heif_properties.h include. 656b4d2
  * Make sure we always use the i64 version of the "file methods" on Windows. b3e8a78
  * Changed defines to use method instead of a define. 75b66c4
  * Changes due to upgrade of libheif. 841f033
  * smooth the rendering of an ellipse (ImageMagick/ImageMagick#7465) 1bfce2a</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- version update to 7.1.1.36
  * uhdr.c: default initialize range field for hdr/sdr intent inputs to
    enc by @aayushsoni111 in #7482
  * Fixed typo in documentation of MagickAdaptiveBlurImage by @JonahEMorgan
    in #7500
  * Silence warning when freetype delegate is disabled. by @niclet in #7515</changelog>
  <changelog author="pgajdos@suse.com" date="1724760000">- version update to 7.1.1.37
  * Bump azure/trusted-signing-action from 0.3.20 to 0.4.0 #7518
  * Silence warning and fix HEIC_COMPUTE_NUMERIC_VERSION definition when heic delegate is disabled. #7516
  * protect macro arguments with parens 86cb2b1
  * eliminate compiler warnings d90d8b4
  * correct copyright year 115271e
  * Ignore multiple exif and xmp profiles for the same jxl frame and fix reading those profiles per frame. c301208
  * read/write in chunks fff3058
  * optimize fwrite() arguments ada6785
  * Renamed Output folder to Artifacts. 2a69677
  * cancel interactive window selection with right button press ea2a2db
  * cosmetic 712bde4
  * eliminate compiler warning 9a9a25c
  * eliminate compiler warning 0bd1687
  * Make images mandatory in the issue template. c01fd37
  * Added extra header detection for avif files. 9fc0590
  * allow SeekBlob() to set an offset beyond the end of the blob 27c3f99
  * be less forgiving for invalid image indexes 25db2e5
  * Fixed problem with empty macros (#7562) 9fda5f2
  * Added missing null checks for RequestOpenCLDevice. f85448e
  * Added missing null check for AcquireOpenCLCommandQueue. 295e9c8
  * persist app1 jpeg profile (ImageMagick/ImageMagick#4713) f0357c7
  * Fixed build error. b3dd431
  * Remove some of the dependencies for the macos-13 build. d0bce95
  * parentheses is the plural of parenthesis 1fac80a
  * distribute quantization error for -dither FloydSteinberg -depth 5b2825b
  * release 8a0da9f
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565</changelog>
  <changelog author="pgajdos@suse.com" date="1726228800">- version update to 7.1.1.38
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565
  * beta release 250b748
  * deprecate the -respect-paranthesis option 4e7d789
  * Build fixes. b80c509
  * save IPTC + ICC profiles are profiles, not properties 25d5335
  * update copyright year 4caf7d1
  * Patch to fix reading of the ICC profile. 18377f9
  * prepping framework to interact with X11 clipboard b20dda3
  * Build fix. 20a5af3
  * More build fixes. c36fdf0
  * Another attempt to silence the warnings. 600708c
  * Use SetImageProfilePrivate to avoid duplicate allocations. f246eab
  * support clipboard delegate 39a135a
  * restore clipboard.c 1070b17
  * improved rounding 27a0a9c
  * don't allow negative scenes 8fda05a
  * eliminate compiler warnings 878daf9
- modified patches
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1728216000">- version update to 7.1.1.39
  * Add missing Threshold command to command array of Region of Interest mode #7606
  * uhdr.c: update uhdr coder for gainmap metadata configuration #7635
  * uhdr: fix language choice in autoconf #7663</changelog>
</package>
<package pkgid="13101d72c8ba8402b0479bc6783aaf5bbe2a94f63c2361339fa81ec82c92c07fbdc9c7d0f592b619526997ea71a939c14ec44d155da4ca1dad4b9544e55173c3" name="ImageMagick-extra" arch="x86_64">
  <version epoch="0" ver="7.1.1.39" rel="1.1"/>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1705838400">- version update to 7.1.1.27
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1707652800">- version update to 7.1.1.28
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Michael Vetter &lt;mvetter@suse.com&gt;" date="1708603200">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1709035200">- version update to 7.1.1.29
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709380800">- We can not replace a symlink with a directory on the directly
  Unregister the whole group manually in %pre with
  update-alternatives. (boo#1220818)
  Restore Requires(pre) on update-alternatives for the mean time.</changelog>
  <changelog author="pgajdos@suse.com" date="1709553600">- enable SVG again
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711022400">- allow delegates to be executed, was disabled by default policy
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711108800">- allow stdin/stdout
- modified patches
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1712577600">- version update to 7.1.1.30
  * install perl module into user-specified prefix by @bugfood in #7192
  * Fix bmp option to bypass file size check by @OnTheList-1 in #7194
  * add support for encoding/decoding ultrahdr images by @aayushsoni111 in #7198
  * Updates to uhdr.c by @aayushsoni111 in #7217
- added patches
  fix https://github.com/ImageMagick/ImageMagick/issues/7230
  + ImageMagick-wmflite-detection.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713182400">- relax list-length resource limit, fixes build of python-Wand
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713787200">- version update to 7.1.1.31
  * Convert big PDF documents is slow #7263
  * Update release.yml #7258
  * Update README.md #7245
  * uhdr.c: verify the availability of error message before accessing it #7229
- removed patches
  - ImageMagick-wmflite-detection.patch (upstreamed)
  `</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1714910400">- version update to 7.1.1.32
  * Fix GIF ICC profile reading #7282
  * uhdr.c: add support for rgb inputs #7273</changelog>
  <changelog author="pgajdos@suse.com" date="1715860800">- reverted update-alternatives usage removal [bsc#1122033][bsc#1220818]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1716638400">- version update to 7.1.1.33
  * Fix typo in #7294
  * Bump azure/trusted-signing-action from 0.3.16 to 0.3.18 in #7325
  * Bump caphyon/advinst-github-action from 1.1 to 2.0 in #7326
- added patch
  + ImageMagick-update-image-signature.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1719144000">- version update to 7.1.1.34
  * Bump azure/trusted-signing-action from 0.3.18 to 0.3.19 in #7348
  * Fix a typo in convert deprecation warning in #7383
  * Bump azure/trusted-signing-action from 0.3.19 to 0.3.20 in #7388
  * Updated FontConfig query to include font index, fixing (#7374) in #7409
- removed patch (upstreamed)
  - ImageMagick-update-image-signature.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1721908800">- version update to 7.1.1.35
  * Also set dpi-x and dpi-y when running rsvg-convert. eac001f
  * convert sub-command is deprecated d67039e
  * only operators should disable "identify ping" (ImageMagick/ImageMagick#7441) a262192
  * fix compiler error ecc21c7
  * -outdir deprecated 9980efa
  * Get the correct width and height when heic:preserve-orientation is set to true. ed3a0dd
  * Set heic image orientation using transform information. ba470aa
  * Exit earlier when the symlink could not be created when invoking the svg:decode delegate. 8a48edd
  * Fixed MSYS2 build error. 3b22378
  * Also set the DNG properties when pinging the image. fc1c61b
  * Silence warning when lqr delegate is disabled. ae0d69a
  * Added version check for the heif_properties.h include. 656b4d2
  * Make sure we always use the i64 version of the "file methods" on Windows. b3e8a78
  * Changed defines to use method instead of a define. 75b66c4
  * Changes due to upgrade of libheif. 841f033
  * smooth the rendering of an ellipse (ImageMagick/ImageMagick#7465) 1bfce2a</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- version update to 7.1.1.36
  * uhdr.c: default initialize range field for hdr/sdr intent inputs to
    enc by @aayushsoni111 in #7482
  * Fixed typo in documentation of MagickAdaptiveBlurImage by @JonahEMorgan
    in #7500
  * Silence warning when freetype delegate is disabled. by @niclet in #7515</changelog>
  <changelog author="pgajdos@suse.com" date="1724760000">- version update to 7.1.1.37
  * Bump azure/trusted-signing-action from 0.3.20 to 0.4.0 #7518
  * Silence warning and fix HEIC_COMPUTE_NUMERIC_VERSION definition when heic delegate is disabled. #7516
  * protect macro arguments with parens 86cb2b1
  * eliminate compiler warnings d90d8b4
  * correct copyright year 115271e
  * Ignore multiple exif and xmp profiles for the same jxl frame and fix reading those profiles per frame. c301208
  * read/write in chunks fff3058
  * optimize fwrite() arguments ada6785
  * Renamed Output folder to Artifacts. 2a69677
  * cancel interactive window selection with right button press ea2a2db
  * cosmetic 712bde4
  * eliminate compiler warning 9a9a25c
  * eliminate compiler warning 0bd1687
  * Make images mandatory in the issue template. c01fd37
  * Added extra header detection for avif files. 9fc0590
  * allow SeekBlob() to set an offset beyond the end of the blob 27c3f99
  * be less forgiving for invalid image indexes 25db2e5
  * Fixed problem with empty macros (#7562) 9fda5f2
  * Added missing null checks for RequestOpenCLDevice. f85448e
  * Added missing null check for AcquireOpenCLCommandQueue. 295e9c8
  * persist app1 jpeg profile (ImageMagick/ImageMagick#4713) f0357c7
  * Fixed build error. b3dd431
  * Remove some of the dependencies for the macos-13 build. d0bce95
  * parentheses is the plural of parenthesis 1fac80a
  * distribute quantization error for -dither FloydSteinberg -depth 5b2825b
  * release 8a0da9f
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565</changelog>
  <changelog author="pgajdos@suse.com" date="1726228800">- version update to 7.1.1.38
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565
  * beta release 250b748
  * deprecate the -respect-paranthesis option 4e7d789
  * Build fixes. b80c509
  * save IPTC + ICC profiles are profiles, not properties 25d5335
  * update copyright year 4caf7d1
  * Patch to fix reading of the ICC profile. 18377f9
  * prepping framework to interact with X11 clipboard b20dda3
  * Build fix. 20a5af3
  * More build fixes. c36fdf0
  * Another attempt to silence the warnings. 600708c
  * Use SetImageProfilePrivate to avoid duplicate allocations. f246eab
  * support clipboard delegate 39a135a
  * restore clipboard.c 1070b17
  * improved rounding 27a0a9c
  * don't allow negative scenes 8fda05a
  * eliminate compiler warnings 878daf9
- modified patches
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1728216000">- version update to 7.1.1.39
  * Add missing Threshold command to command array of Region of Interest mode #7606
  * uhdr.c: update uhdr coder for gainmap metadata configuration #7635
  * uhdr: fix language choice in autoconf #7663</changelog>
</package>
<package pkgid="fa1b5a73311f590ca6191c6ae7421ab4017fbabb9551e95f81d3b7c5b5a25cc181332f2c2fc760259aedfb4ef86ca77a564b388d55a1198741920c1357e078e0" name="ImageMagick-extra" arch="i586">
  <version epoch="0" ver="7.1.1.41" rel="1.0.2.1.sr20241103"/>
  <changelog author="Michael Vetter &lt;mvetter@suse.com&gt;" date="1708603200">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1709035200">- version update to 7.1.1.29
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709380800">- We can not replace a symlink with a directory on the directly
  Unregister the whole group manually in %pre with
  update-alternatives. (boo#1220818)
  Restore Requires(pre) on update-alternatives for the mean time.</changelog>
  <changelog author="pgajdos@suse.com" date="1709553600">- enable SVG again
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711022400">- allow delegates to be executed, was disabled by default policy
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711108800">- allow stdin/stdout
- modified patches
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1712577600">- version update to 7.1.1.30
  * install perl module into user-specified prefix by @bugfood in #7192
  * Fix bmp option to bypass file size check by @OnTheList-1 in #7194
  * add support for encoding/decoding ultrahdr images by @aayushsoni111 in #7198
  * Updates to uhdr.c by @aayushsoni111 in #7217
- added patches
  fix https://github.com/ImageMagick/ImageMagick/issues/7230
  + ImageMagick-wmflite-detection.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713182400">- relax list-length resource limit, fixes build of python-Wand
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713787200">- version update to 7.1.1.31
  * Convert big PDF documents is slow #7263
  * Update release.yml #7258
  * Update README.md #7245
  * uhdr.c: verify the availability of error message before accessing it #7229
- removed patches
  - ImageMagick-wmflite-detection.patch (upstreamed)
  `</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1714910400">- version update to 7.1.1.32
  * Fix GIF ICC profile reading #7282
  * uhdr.c: add support for rgb inputs #7273</changelog>
  <changelog author="pgajdos@suse.com" date="1715860800">- reverted update-alternatives usage removal [bsc#1122033][bsc#1220818]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1716638400">- version update to 7.1.1.33
  * Fix typo in #7294
  * Bump azure/trusted-signing-action from 0.3.16 to 0.3.18 in #7325
  * Bump caphyon/advinst-github-action from 1.1 to 2.0 in #7326
- added patch
  + ImageMagick-update-image-signature.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1719144000">- version update to 7.1.1.34
  * Bump azure/trusted-signing-action from 0.3.18 to 0.3.19 in #7348
  * Fix a typo in convert deprecation warning in #7383
  * Bump azure/trusted-signing-action from 0.3.19 to 0.3.20 in #7388
  * Updated FontConfig query to include font index, fixing (#7374) in #7409
- removed patch (upstreamed)
  - ImageMagick-update-image-signature.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1721908800">- version update to 7.1.1.35
  * Also set dpi-x and dpi-y when running rsvg-convert. eac001f
  * convert sub-command is deprecated d67039e
  * only operators should disable "identify ping" (ImageMagick/ImageMagick#7441) a262192
  * fix compiler error ecc21c7
  * -outdir deprecated 9980efa
  * Get the correct width and height when heic:preserve-orientation is set to true. ed3a0dd
  * Set heic image orientation using transform information. ba470aa
  * Exit earlier when the symlink could not be created when invoking the svg:decode delegate. 8a48edd
  * Fixed MSYS2 build error. 3b22378
  * Also set the DNG properties when pinging the image. fc1c61b
  * Silence warning when lqr delegate is disabled. ae0d69a
  * Added version check for the heif_properties.h include. 656b4d2
  * Make sure we always use the i64 version of the "file methods" on Windows. b3e8a78
  * Changed defines to use method instead of a define. 75b66c4
  * Changes due to upgrade of libheif. 841f033
  * smooth the rendering of an ellipse (ImageMagick/ImageMagick#7465) 1bfce2a</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- version update to 7.1.1.36
  * uhdr.c: default initialize range field for hdr/sdr intent inputs to
    enc by @aayushsoni111 in #7482
  * Fixed typo in documentation of MagickAdaptiveBlurImage by @JonahEMorgan
    in #7500
  * Silence warning when freetype delegate is disabled. by @niclet in #7515</changelog>
  <changelog author="pgajdos@suse.com" date="1724760000">- version update to 7.1.1.37
  * Bump azure/trusted-signing-action from 0.3.20 to 0.4.0 #7518
  * Silence warning and fix HEIC_COMPUTE_NUMERIC_VERSION definition when heic delegate is disabled. #7516
  * protect macro arguments with parens 86cb2b1
  * eliminate compiler warnings d90d8b4
  * correct copyright year 115271e
  * Ignore multiple exif and xmp profiles for the same jxl frame and fix reading those profiles per frame. c301208
  * read/write in chunks fff3058
  * optimize fwrite() arguments ada6785
  * Renamed Output folder to Artifacts. 2a69677
  * cancel interactive window selection with right button press ea2a2db
  * cosmetic 712bde4
  * eliminate compiler warning 9a9a25c
  * eliminate compiler warning 0bd1687
  * Make images mandatory in the issue template. c01fd37
  * Added extra header detection for avif files. 9fc0590
  * allow SeekBlob() to set an offset beyond the end of the blob 27c3f99
  * be less forgiving for invalid image indexes 25db2e5
  * Fixed problem with empty macros (#7562) 9fda5f2
  * Added missing null checks for RequestOpenCLDevice. f85448e
  * Added missing null check for AcquireOpenCLCommandQueue. 295e9c8
  * persist app1 jpeg profile (ImageMagick/ImageMagick#4713) f0357c7
  * Fixed build error. b3dd431
  * Remove some of the dependencies for the macos-13 build. d0bce95
  * parentheses is the plural of parenthesis 1fac80a
  * distribute quantization error for -dither FloydSteinberg -depth 5b2825b
  * release 8a0da9f
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565</changelog>
  <changelog author="pgajdos@suse.com" date="1726228800">- version update to 7.1.1.38
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565
  * beta release 250b748
  * deprecate the -respect-paranthesis option 4e7d789
  * Build fixes. b80c509
  * save IPTC + ICC profiles are profiles, not properties 25d5335
  * update copyright year 4caf7d1
  * Patch to fix reading of the ICC profile. 18377f9
  * prepping framework to interact with X11 clipboard b20dda3
  * Build fix. 20a5af3
  * More build fixes. c36fdf0
  * Another attempt to silence the warnings. 600708c
  * Use SetImageProfilePrivate to avoid duplicate allocations. f246eab
  * support clipboard delegate 39a135a
  * restore clipboard.c 1070b17
  * improved rounding 27a0a9c
  * don't allow negative scenes 8fda05a
  * eliminate compiler warnings 878daf9
- modified patches
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1728216000">- version update to 7.1.1.39
  * Add missing Threshold command to command array of Region of Interest mode #7606
  * uhdr.c: update uhdr coder for gainmap metadata configuration #7635
  * uhdr: fix language choice in autoconf #7663</changelog>
  <changelog author="Yann BOYER &lt;yann.boyer742@gmail.com&gt;" date="1731326400">- version update to 7.1.1.40
  * .cut (Dr Halo) reading when run count in header #7734
  * Bump azure/trusted-signing-action from 0.4.0 to 0.5.0 #7725
  * Implement Magic Kernel Sharp 2013 and 2021 #7701
  * don't process TIFF image if there is an exception
  * Corrected check for indexed channels in PSD files.
  * export exception when undo resource limit exceeded</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1731844800">- version update to 7.1.1.41
  * Fix compiler identification with Clang on Darwin in #7773
  * revert map changes breaking ABI in #7768</changelog>
</package>
<package pkgid="685cf881a91df9ac627098454cc132f47ae0693d31df7274fff4fca911c3e2d8fd1ee14d20411f4f37bcdf00d7f16f09b73564aef6cb751129cc901a20f4a22d" name="ImageMagick-extra" arch="x86_64">
  <version epoch="0" ver="7.1.1.41" rel="1.0.2.1.sr20241103"/>
  <changelog author="Michael Vetter &lt;mvetter@suse.com&gt;" date="1708603200">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1709035200">- version update to 7.1.1.29
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709380800">- We can not replace a symlink with a directory on the directly
  Unregister the whole group manually in %pre with
  update-alternatives. (boo#1220818)
  Restore Requires(pre) on update-alternatives for the mean time.</changelog>
  <changelog author="pgajdos@suse.com" date="1709553600">- enable SVG again
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711022400">- allow delegates to be executed, was disabled by default policy
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711108800">- allow stdin/stdout
- modified patches
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1712577600">- version update to 7.1.1.30
  * install perl module into user-specified prefix by @bugfood in #7192
  * Fix bmp option to bypass file size check by @OnTheList-1 in #7194
  * add support for encoding/decoding ultrahdr images by @aayushsoni111 in #7198
  * Updates to uhdr.c by @aayushsoni111 in #7217
- added patches
  fix https://github.com/ImageMagick/ImageMagick/issues/7230
  + ImageMagick-wmflite-detection.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713182400">- relax list-length resource limit, fixes build of python-Wand
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713787200">- version update to 7.1.1.31
  * Convert big PDF documents is slow #7263
  * Update release.yml #7258
  * Update README.md #7245
  * uhdr.c: verify the availability of error message before accessing it #7229
- removed patches
  - ImageMagick-wmflite-detection.patch (upstreamed)
  `</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1714910400">- version update to 7.1.1.32
  * Fix GIF ICC profile reading #7282
  * uhdr.c: add support for rgb inputs #7273</changelog>
  <changelog author="pgajdos@suse.com" date="1715860800">- reverted update-alternatives usage removal [bsc#1122033][bsc#1220818]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1716638400">- version update to 7.1.1.33
  * Fix typo in #7294
  * Bump azure/trusted-signing-action from 0.3.16 to 0.3.18 in #7325
  * Bump caphyon/advinst-github-action from 1.1 to 2.0 in #7326
- added patch
  + ImageMagick-update-image-signature.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1719144000">- version update to 7.1.1.34
  * Bump azure/trusted-signing-action from 0.3.18 to 0.3.19 in #7348
  * Fix a typo in convert deprecation warning in #7383
  * Bump azure/trusted-signing-action from 0.3.19 to 0.3.20 in #7388
  * Updated FontConfig query to include font index, fixing (#7374) in #7409
- removed patch (upstreamed)
  - ImageMagick-update-image-signature.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1721908800">- version update to 7.1.1.35
  * Also set dpi-x and dpi-y when running rsvg-convert. eac001f
  * convert sub-command is deprecated d67039e
  * only operators should disable "identify ping" (ImageMagick/ImageMagick#7441) a262192
  * fix compiler error ecc21c7
  * -outdir deprecated 9980efa
  * Get the correct width and height when heic:preserve-orientation is set to true. ed3a0dd
  * Set heic image orientation using transform information. ba470aa
  * Exit earlier when the symlink could not be created when invoking the svg:decode delegate. 8a48edd
  * Fixed MSYS2 build error. 3b22378
  * Also set the DNG properties when pinging the image. fc1c61b
  * Silence warning when lqr delegate is disabled. ae0d69a
  * Added version check for the heif_properties.h include. 656b4d2
  * Make sure we always use the i64 version of the "file methods" on Windows. b3e8a78
  * Changed defines to use method instead of a define. 75b66c4
  * Changes due to upgrade of libheif. 841f033
  * smooth the rendering of an ellipse (ImageMagick/ImageMagick#7465) 1bfce2a</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- version update to 7.1.1.36
  * uhdr.c: default initialize range field for hdr/sdr intent inputs to
    enc by @aayushsoni111 in #7482
  * Fixed typo in documentation of MagickAdaptiveBlurImage by @JonahEMorgan
    in #7500
  * Silence warning when freetype delegate is disabled. by @niclet in #7515</changelog>
  <changelog author="pgajdos@suse.com" date="1724760000">- version update to 7.1.1.37
  * Bump azure/trusted-signing-action from 0.3.20 to 0.4.0 #7518
  * Silence warning and fix HEIC_COMPUTE_NUMERIC_VERSION definition when heic delegate is disabled. #7516
  * protect macro arguments with parens 86cb2b1
  * eliminate compiler warnings d90d8b4
  * correct copyright year 115271e
  * Ignore multiple exif and xmp profiles for the same jxl frame and fix reading those profiles per frame. c301208
  * read/write in chunks fff3058
  * optimize fwrite() arguments ada6785
  * Renamed Output folder to Artifacts. 2a69677
  * cancel interactive window selection with right button press ea2a2db
  * cosmetic 712bde4
  * eliminate compiler warning 9a9a25c
  * eliminate compiler warning 0bd1687
  * Make images mandatory in the issue template. c01fd37
  * Added extra header detection for avif files. 9fc0590
  * allow SeekBlob() to set an offset beyond the end of the blob 27c3f99
  * be less forgiving for invalid image indexes 25db2e5
  * Fixed problem with empty macros (#7562) 9fda5f2
  * Added missing null checks for RequestOpenCLDevice. f85448e
  * Added missing null check for AcquireOpenCLCommandQueue. 295e9c8
  * persist app1 jpeg profile (ImageMagick/ImageMagick#4713) f0357c7
  * Fixed build error. b3dd431
  * Remove some of the dependencies for the macos-13 build. d0bce95
  * parentheses is the plural of parenthesis 1fac80a
  * distribute quantization error for -dither FloydSteinberg -depth 5b2825b
  * release 8a0da9f
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565</changelog>
  <changelog author="pgajdos@suse.com" date="1726228800">- version update to 7.1.1.38
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565
  * beta release 250b748
  * deprecate the -respect-paranthesis option 4e7d789
  * Build fixes. b80c509
  * save IPTC + ICC profiles are profiles, not properties 25d5335
  * update copyright year 4caf7d1
  * Patch to fix reading of the ICC profile. 18377f9
  * prepping framework to interact with X11 clipboard b20dda3
  * Build fix. 20a5af3
  * More build fixes. c36fdf0
  * Another attempt to silence the warnings. 600708c
  * Use SetImageProfilePrivate to avoid duplicate allocations. f246eab
  * support clipboard delegate 39a135a
  * restore clipboard.c 1070b17
  * improved rounding 27a0a9c
  * don't allow negative scenes 8fda05a
  * eliminate compiler warnings 878daf9
- modified patches
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1728216000">- version update to 7.1.1.39
  * Add missing Threshold command to command array of Region of Interest mode #7606
  * uhdr.c: update uhdr coder for gainmap metadata configuration #7635
  * uhdr: fix language choice in autoconf #7663</changelog>
  <changelog author="Yann BOYER &lt;yann.boyer742@gmail.com&gt;" date="1731326400">- version update to 7.1.1.40
  * .cut (Dr Halo) reading when run count in header #7734
  * Bump azure/trusted-signing-action from 0.4.0 to 0.5.0 #7725
  * Implement Magic Kernel Sharp 2013 and 2021 #7701
  * don't process TIFF image if there is an exception
  * Corrected check for indexed channels in PSD files.
  * export exception when undo resource limit exceeded</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1731844800">- version update to 7.1.1.41
  * Fix compiler identification with Clang on Darwin in #7773
  * revert map changes breaking ABI in #7768</changelog>
</package>
<package pkgid="5d3179b02da789d9bdf8d13a1d110b65796858ae8bfccad7827a9179196564e3afdbb994304aad52a47a8cda7851b5c877c1d000d3e1876b63dfbba6ff093307" name="ImageMagick-extra-debuginfo" arch="i586">
  <version epoch="0" ver="7.1.1.36" rel="1.1"/>
  <changelog author="munix9@googlemail.com" date="1705233600">- Fix incomplete removal of update-alternatives for config
- Replace obsolete 'otherproviders(imagick-%{config_spec})' with
  'Conflicts: imagick-%{config_spec}'</changelog>
  <changelog author="pgajdos@suse.com" date="1705320000">- use correct policy.xml</changelog>
  <changelog author="pgajdos@suse.com" date="1705406400">- only one configuration again, based on upstream 'secure' policy
- other upstream policies packaged in documentation</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1705838400">- version update to 7.1.1.27
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1707652800">- version update to 7.1.1.28
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Michael Vetter &lt;mvetter@suse.com&gt;" date="1708603200">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1709035200">- version update to 7.1.1.29
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709380800">- We can not replace a symlink with a directory on the directly
  Unregister the whole group manually in %pre with
  update-alternatives. (boo#1220818)
  Restore Requires(pre) on update-alternatives for the mean time.</changelog>
  <changelog author="pgajdos@suse.com" date="1709553600">- enable SVG again
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711022400">- allow delegates to be executed, was disabled by default policy
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711108800">- allow stdin/stdout
- modified patches
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1712577600">- version update to 7.1.1.30
  * install perl module into user-specified prefix by @bugfood in #7192
  * Fix bmp option to bypass file size check by @OnTheList-1 in #7194
  * add support for encoding/decoding ultrahdr images by @aayushsoni111 in #7198
  * Updates to uhdr.c by @aayushsoni111 in #7217
- added patches
  fix https://github.com/ImageMagick/ImageMagick/issues/7230
  + ImageMagick-wmflite-detection.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713182400">- relax list-length resource limit, fixes build of python-Wand
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713787200">- version update to 7.1.1.31
  * Convert big PDF documents is slow #7263
  * Update release.yml #7258
  * Update README.md #7245
  * uhdr.c: verify the availability of error message before accessing it #7229
- removed patches
  - ImageMagick-wmflite-detection.patch (upstreamed)
  `</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1714910400">- version update to 7.1.1.32
  * Fix GIF ICC profile reading #7282
  * uhdr.c: add support for rgb inputs #7273</changelog>
  <changelog author="pgajdos@suse.com" date="1715860800">- reverted update-alternatives usage removal [bsc#1122033][bsc#1220818]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1716638400">- version update to 7.1.1.33
  * Fix typo in #7294
  * Bump azure/trusted-signing-action from 0.3.16 to 0.3.18 in #7325
  * Bump caphyon/advinst-github-action from 1.1 to 2.0 in #7326
- added patch
  + ImageMagick-update-image-signature.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1719144000">- version update to 7.1.1.34
  * Bump azure/trusted-signing-action from 0.3.18 to 0.3.19 in #7348
  * Fix a typo in convert deprecation warning in #7383
  * Bump azure/trusted-signing-action from 0.3.19 to 0.3.20 in #7388
  * Updated FontConfig query to include font index, fixing (#7374) in #7409
- removed patch (upstreamed)
  - ImageMagick-update-image-signature.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1721908800">- version update to 7.1.1.35
  * Also set dpi-x and dpi-y when running rsvg-convert. eac001f
  * convert sub-command is deprecated d67039e
  * only operators should disable "identify ping" (ImageMagick/ImageMagick#7441) a262192
  * fix compiler error ecc21c7
  * -outdir deprecated 9980efa
  * Get the correct width and height when heic:preserve-orientation is set to true. ed3a0dd
  * Set heic image orientation using transform information. ba470aa
  * Exit earlier when the symlink could not be created when invoking the svg:decode delegate. 8a48edd
  * Fixed MSYS2 build error. 3b22378
  * Also set the DNG properties when pinging the image. fc1c61b
  * Silence warning when lqr delegate is disabled. ae0d69a
  * Added version check for the heif_properties.h include. 656b4d2
  * Make sure we always use the i64 version of the "file methods" on Windows. b3e8a78
  * Changed defines to use method instead of a define. 75b66c4
  * Changes due to upgrade of libheif. 841f033
  * smooth the rendering of an ellipse (ImageMagick/ImageMagick#7465) 1bfce2a</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- version update to 7.1.1.36
  * uhdr.c: default initialize range field for hdr/sdr intent inputs to
    enc by @aayushsoni111 in #7482
  * Fixed typo in documentation of MagickAdaptiveBlurImage by @JonahEMorgan
    in #7500
  * Silence warning when freetype delegate is disabled. by @niclet in #7515</changelog>
</package>
<package pkgid="dd9a5b9f1ea0f262ac3b807466c7aafb8c26754580c52d86db8fa783b6994899bfdb4fed92df9f75e1f29f3c9a340ca5a9d23ebbfb548515316cd8afd4c6fd1a" name="ImageMagick-extra-debuginfo" arch="x86_64">
  <version epoch="0" ver="7.1.1.36" rel="1.1"/>
  <changelog author="munix9@googlemail.com" date="1705233600">- Fix incomplete removal of update-alternatives for config
- Replace obsolete 'otherproviders(imagick-%{config_spec})' with
  'Conflicts: imagick-%{config_spec}'</changelog>
  <changelog author="pgajdos@suse.com" date="1705320000">- use correct policy.xml</changelog>
  <changelog author="pgajdos@suse.com" date="1705406400">- only one configuration again, based on upstream 'secure' policy
- other upstream policies packaged in documentation</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1705838400">- version update to 7.1.1.27
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1707652800">- version update to 7.1.1.28
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Michael Vetter &lt;mvetter@suse.com&gt;" date="1708603200">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1709035200">- version update to 7.1.1.29
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709380800">- We can not replace a symlink with a directory on the directly
  Unregister the whole group manually in %pre with
  update-alternatives. (boo#1220818)
  Restore Requires(pre) on update-alternatives for the mean time.</changelog>
  <changelog author="pgajdos@suse.com" date="1709553600">- enable SVG again
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711022400">- allow delegates to be executed, was disabled by default policy
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711108800">- allow stdin/stdout
- modified patches
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1712577600">- version update to 7.1.1.30
  * install perl module into user-specified prefix by @bugfood in #7192
  * Fix bmp option to bypass file size check by @OnTheList-1 in #7194
  * add support for encoding/decoding ultrahdr images by @aayushsoni111 in #7198
  * Updates to uhdr.c by @aayushsoni111 in #7217
- added patches
  fix https://github.com/ImageMagick/ImageMagick/issues/7230
  + ImageMagick-wmflite-detection.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713182400">- relax list-length resource limit, fixes build of python-Wand
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713787200">- version update to 7.1.1.31
  * Convert big PDF documents is slow #7263
  * Update release.yml #7258
  * Update README.md #7245
  * uhdr.c: verify the availability of error message before accessing it #7229
- removed patches
  - ImageMagick-wmflite-detection.patch (upstreamed)
  `</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1714910400">- version update to 7.1.1.32
  * Fix GIF ICC profile reading #7282
  * uhdr.c: add support for rgb inputs #7273</changelog>
  <changelog author="pgajdos@suse.com" date="1715860800">- reverted update-alternatives usage removal [bsc#1122033][bsc#1220818]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1716638400">- version update to 7.1.1.33
  * Fix typo in #7294
  * Bump azure/trusted-signing-action from 0.3.16 to 0.3.18 in #7325
  * Bump caphyon/advinst-github-action from 1.1 to 2.0 in #7326
- added patch
  + ImageMagick-update-image-signature.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1719144000">- version update to 7.1.1.34
  * Bump azure/trusted-signing-action from 0.3.18 to 0.3.19 in #7348
  * Fix a typo in convert deprecation warning in #7383
  * Bump azure/trusted-signing-action from 0.3.19 to 0.3.20 in #7388
  * Updated FontConfig query to include font index, fixing (#7374) in #7409
- removed patch (upstreamed)
  - ImageMagick-update-image-signature.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1721908800">- version update to 7.1.1.35
  * Also set dpi-x and dpi-y when running rsvg-convert. eac001f
  * convert sub-command is deprecated d67039e
  * only operators should disable "identify ping" (ImageMagick/ImageMagick#7441) a262192
  * fix compiler error ecc21c7
  * -outdir deprecated 9980efa
  * Get the correct width and height when heic:preserve-orientation is set to true. ed3a0dd
  * Set heic image orientation using transform information. ba470aa
  * Exit earlier when the symlink could not be created when invoking the svg:decode delegate. 8a48edd
  * Fixed MSYS2 build error. 3b22378
  * Also set the DNG properties when pinging the image. fc1c61b
  * Silence warning when lqr delegate is disabled. ae0d69a
  * Added version check for the heif_properties.h include. 656b4d2
  * Make sure we always use the i64 version of the "file methods" on Windows. b3e8a78
  * Changed defines to use method instead of a define. 75b66c4
  * Changes due to upgrade of libheif. 841f033
  * smooth the rendering of an ellipse (ImageMagick/ImageMagick#7465) 1bfce2a</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- version update to 7.1.1.36
  * uhdr.c: default initialize range field for hdr/sdr intent inputs to
    enc by @aayushsoni111 in #7482
  * Fixed typo in documentation of MagickAdaptiveBlurImage by @JonahEMorgan
    in #7500
  * Silence warning when freetype delegate is disabled. by @niclet in #7515</changelog>
</package>
<package pkgid="6a626a1183d927744f4e8019ce2d91fcaedbb73fc36e0591290342c50cca4ab043d777178faa1663f89c40fad9de9ccb32be98050e87c2a72bb28c8e2e46c83f" name="ImageMagick-extra-debuginfo" arch="i586">
  <version epoch="0" ver="7.1.1.37" rel="1.0.4.1.sr20240803"/>
  <changelog author="pgajdos@suse.com" date="1705320000">- use correct policy.xml</changelog>
  <changelog author="pgajdos@suse.com" date="1705406400">- only one configuration again, based on upstream 'secure' policy
- other upstream policies packaged in documentation</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1705838400">- version update to 7.1.1.27
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1707652800">- version update to 7.1.1.28
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Michael Vetter &lt;mvetter@suse.com&gt;" date="1708603200">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1709035200">- version update to 7.1.1.29
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709380800">- We can not replace a symlink with a directory on the directly
  Unregister the whole group manually in %pre with
  update-alternatives. (boo#1220818)
  Restore Requires(pre) on update-alternatives for the mean time.</changelog>
  <changelog author="pgajdos@suse.com" date="1709553600">- enable SVG again
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711022400">- allow delegates to be executed, was disabled by default policy
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711108800">- allow stdin/stdout
- modified patches
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1712577600">- version update to 7.1.1.30
  * install perl module into user-specified prefix by @bugfood in #7192
  * Fix bmp option to bypass file size check by @OnTheList-1 in #7194
  * add support for encoding/decoding ultrahdr images by @aayushsoni111 in #7198
  * Updates to uhdr.c by @aayushsoni111 in #7217
- added patches
  fix https://github.com/ImageMagick/ImageMagick/issues/7230
  + ImageMagick-wmflite-detection.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713182400">- relax list-length resource limit, fixes build of python-Wand
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713787200">- version update to 7.1.1.31
  * Convert big PDF documents is slow #7263
  * Update release.yml #7258
  * Update README.md #7245
  * uhdr.c: verify the availability of error message before accessing it #7229
- removed patches
  - ImageMagick-wmflite-detection.patch (upstreamed)
  `</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1714910400">- version update to 7.1.1.32
  * Fix GIF ICC profile reading #7282
  * uhdr.c: add support for rgb inputs #7273</changelog>
  <changelog author="pgajdos@suse.com" date="1715860800">- reverted update-alternatives usage removal [bsc#1122033][bsc#1220818]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1716638400">- version update to 7.1.1.33
  * Fix typo in #7294
  * Bump azure/trusted-signing-action from 0.3.16 to 0.3.18 in #7325
  * Bump caphyon/advinst-github-action from 1.1 to 2.0 in #7326
- added patch
  + ImageMagick-update-image-signature.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1719144000">- version update to 7.1.1.34
  * Bump azure/trusted-signing-action from 0.3.18 to 0.3.19 in #7348
  * Fix a typo in convert deprecation warning in #7383
  * Bump azure/trusted-signing-action from 0.3.19 to 0.3.20 in #7388
  * Updated FontConfig query to include font index, fixing (#7374) in #7409
- removed patch (upstreamed)
  - ImageMagick-update-image-signature.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1721908800">- version update to 7.1.1.35
  * Also set dpi-x and dpi-y when running rsvg-convert. eac001f
  * convert sub-command is deprecated d67039e
  * only operators should disable "identify ping" (ImageMagick/ImageMagick#7441) a262192
  * fix compiler error ecc21c7
  * -outdir deprecated 9980efa
  * Get the correct width and height when heic:preserve-orientation is set to true. ed3a0dd
  * Set heic image orientation using transform information. ba470aa
  * Exit earlier when the symlink could not be created when invoking the svg:decode delegate. 8a48edd
  * Fixed MSYS2 build error. 3b22378
  * Also set the DNG properties when pinging the image. fc1c61b
  * Silence warning when lqr delegate is disabled. ae0d69a
  * Added version check for the heif_properties.h include. 656b4d2
  * Make sure we always use the i64 version of the "file methods" on Windows. b3e8a78
  * Changed defines to use method instead of a define. 75b66c4
  * Changes due to upgrade of libheif. 841f033
  * smooth the rendering of an ellipse (ImageMagick/ImageMagick#7465) 1bfce2a</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- version update to 7.1.1.36
  * uhdr.c: default initialize range field for hdr/sdr intent inputs to
    enc by @aayushsoni111 in #7482
  * Fixed typo in documentation of MagickAdaptiveBlurImage by @JonahEMorgan
    in #7500
  * Silence warning when freetype delegate is disabled. by @niclet in #7515</changelog>
  <changelog author="pgajdos@suse.com" date="1724760000">- version update to 7.1.1.37
  * Bump azure/trusted-signing-action from 0.3.20 to 0.4.0 #7518
  * Silence warning and fix HEIC_COMPUTE_NUMERIC_VERSION definition when heic delegate is disabled. #7516
  * protect macro arguments with parens 86cb2b1
  * eliminate compiler warnings d90d8b4
  * correct copyright year 115271e
  * Ignore multiple exif and xmp profiles for the same jxl frame and fix reading those profiles per frame. c301208
  * read/write in chunks fff3058
  * optimize fwrite() arguments ada6785
  * Renamed Output folder to Artifacts. 2a69677
  * cancel interactive window selection with right button press ea2a2db
  * cosmetic 712bde4
  * eliminate compiler warning 9a9a25c
  * eliminate compiler warning 0bd1687
  * Make images mandatory in the issue template. c01fd37
  * Added extra header detection for avif files. 9fc0590
  * allow SeekBlob() to set an offset beyond the end of the blob 27c3f99
  * be less forgiving for invalid image indexes 25db2e5
  * Fixed problem with empty macros (#7562) 9fda5f2
  * Added missing null checks for RequestOpenCLDevice. f85448e
  * Added missing null check for AcquireOpenCLCommandQueue. 295e9c8
  * persist app1 jpeg profile (ImageMagick/ImageMagick#4713) f0357c7
  * Fixed build error. b3dd431
  * Remove some of the dependencies for the macos-13 build. d0bce95
  * parentheses is the plural of parenthesis 1fac80a
  * distribute quantization error for -dither FloydSteinberg -depth 5b2825b
  * release 8a0da9f
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565</changelog>
</package>
<package pkgid="9bacb47b9e9098be19483b114d2393c4aa938a7541c9558889ec77a86c48ff572794d46b82bea4b4af0e3c08ac6494b920464e82132536f059ccd9c10d9ee418" name="ImageMagick-extra-debuginfo" arch="x86_64">
  <version epoch="0" ver="7.1.1.37" rel="1.0.4.1.sr20240803"/>
  <changelog author="pgajdos@suse.com" date="1705320000">- use correct policy.xml</changelog>
  <changelog author="pgajdos@suse.com" date="1705406400">- only one configuration again, based on upstream 'secure' policy
- other upstream policies packaged in documentation</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1705838400">- version update to 7.1.1.27
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1707652800">- version update to 7.1.1.28
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Michael Vetter &lt;mvetter@suse.com&gt;" date="1708603200">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1709035200">- version update to 7.1.1.29
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709380800">- We can not replace a symlink with a directory on the directly
  Unregister the whole group manually in %pre with
  update-alternatives. (boo#1220818)
  Restore Requires(pre) on update-alternatives for the mean time.</changelog>
  <changelog author="pgajdos@suse.com" date="1709553600">- enable SVG again
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711022400">- allow delegates to be executed, was disabled by default policy
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711108800">- allow stdin/stdout
- modified patches
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1712577600">- version update to 7.1.1.30
  * install perl module into user-specified prefix by @bugfood in #7192
  * Fix bmp option to bypass file size check by @OnTheList-1 in #7194
  * add support for encoding/decoding ultrahdr images by @aayushsoni111 in #7198
  * Updates to uhdr.c by @aayushsoni111 in #7217
- added patches
  fix https://github.com/ImageMagick/ImageMagick/issues/7230
  + ImageMagick-wmflite-detection.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713182400">- relax list-length resource limit, fixes build of python-Wand
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713787200">- version update to 7.1.1.31
  * Convert big PDF documents is slow #7263
  * Update release.yml #7258
  * Update README.md #7245
  * uhdr.c: verify the availability of error message before accessing it #7229
- removed patches
  - ImageMagick-wmflite-detection.patch (upstreamed)
  `</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1714910400">- version update to 7.1.1.32
  * Fix GIF ICC profile reading #7282
  * uhdr.c: add support for rgb inputs #7273</changelog>
  <changelog author="pgajdos@suse.com" date="1715860800">- reverted update-alternatives usage removal [bsc#1122033][bsc#1220818]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1716638400">- version update to 7.1.1.33
  * Fix typo in #7294
  * Bump azure/trusted-signing-action from 0.3.16 to 0.3.18 in #7325
  * Bump caphyon/advinst-github-action from 1.1 to 2.0 in #7326
- added patch
  + ImageMagick-update-image-signature.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1719144000">- version update to 7.1.1.34
  * Bump azure/trusted-signing-action from 0.3.18 to 0.3.19 in #7348
  * Fix a typo in convert deprecation warning in #7383
  * Bump azure/trusted-signing-action from 0.3.19 to 0.3.20 in #7388
  * Updated FontConfig query to include font index, fixing (#7374) in #7409
- removed patch (upstreamed)
  - ImageMagick-update-image-signature.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1721908800">- version update to 7.1.1.35
  * Also set dpi-x and dpi-y when running rsvg-convert. eac001f
  * convert sub-command is deprecated d67039e
  * only operators should disable "identify ping" (ImageMagick/ImageMagick#7441) a262192
  * fix compiler error ecc21c7
  * -outdir deprecated 9980efa
  * Get the correct width and height when heic:preserve-orientation is set to true. ed3a0dd
  * Set heic image orientation using transform information. ba470aa
  * Exit earlier when the symlink could not be created when invoking the svg:decode delegate. 8a48edd
  * Fixed MSYS2 build error. 3b22378
  * Also set the DNG properties when pinging the image. fc1c61b
  * Silence warning when lqr delegate is disabled. ae0d69a
  * Added version check for the heif_properties.h include. 656b4d2
  * Make sure we always use the i64 version of the "file methods" on Windows. b3e8a78
  * Changed defines to use method instead of a define. 75b66c4
  * Changes due to upgrade of libheif. 841f033
  * smooth the rendering of an ellipse (ImageMagick/ImageMagick#7465) 1bfce2a</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- version update to 7.1.1.36
  * uhdr.c: default initialize range field for hdr/sdr intent inputs to
    enc by @aayushsoni111 in #7482
  * Fixed typo in documentation of MagickAdaptiveBlurImage by @JonahEMorgan
    in #7500
  * Silence warning when freetype delegate is disabled. by @niclet in #7515</changelog>
  <changelog author="pgajdos@suse.com" date="1724760000">- version update to 7.1.1.37
  * Bump azure/trusted-signing-action from 0.3.20 to 0.4.0 #7518
  * Silence warning and fix HEIC_COMPUTE_NUMERIC_VERSION definition when heic delegate is disabled. #7516
  * protect macro arguments with parens 86cb2b1
  * eliminate compiler warnings d90d8b4
  * correct copyright year 115271e
  * Ignore multiple exif and xmp profiles for the same jxl frame and fix reading those profiles per frame. c301208
  * read/write in chunks fff3058
  * optimize fwrite() arguments ada6785
  * Renamed Output folder to Artifacts. 2a69677
  * cancel interactive window selection with right button press ea2a2db
  * cosmetic 712bde4
  * eliminate compiler warning 9a9a25c
  * eliminate compiler warning 0bd1687
  * Make images mandatory in the issue template. c01fd37
  * Added extra header detection for avif files. 9fc0590
  * allow SeekBlob() to set an offset beyond the end of the blob 27c3f99
  * be less forgiving for invalid image indexes 25db2e5
  * Fixed problem with empty macros (#7562) 9fda5f2
  * Added missing null checks for RequestOpenCLDevice. f85448e
  * Added missing null check for AcquireOpenCLCommandQueue. 295e9c8
  * persist app1 jpeg profile (ImageMagick/ImageMagick#4713) f0357c7
  * Fixed build error. b3dd431
  * Remove some of the dependencies for the macos-13 build. d0bce95
  * parentheses is the plural of parenthesis 1fac80a
  * distribute quantization error for -dither FloydSteinberg -depth 5b2825b
  * release 8a0da9f
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565</changelog>
</package>
<package pkgid="8775736c9342b4080203d0fe9d668ac748d6069f5ba808c82d481dacb50637687cd99a23c75e090d28e8bb8b94a373378790efa4dfaf1834a627ee18dcfbbfd6" name="ImageMagick-extra-debuginfo" arch="i586">
  <version epoch="0" ver="7.1.1.37" rel="1.1"/>
  <changelog author="pgajdos@suse.com" date="1705320000">- use correct policy.xml</changelog>
  <changelog author="pgajdos@suse.com" date="1705406400">- only one configuration again, based on upstream 'secure' policy
- other upstream policies packaged in documentation</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1705838400">- version update to 7.1.1.27
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1707652800">- version update to 7.1.1.28
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Michael Vetter &lt;mvetter@suse.com&gt;" date="1708603200">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1709035200">- version update to 7.1.1.29
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709380800">- We can not replace a symlink with a directory on the directly
  Unregister the whole group manually in %pre with
  update-alternatives. (boo#1220818)
  Restore Requires(pre) on update-alternatives for the mean time.</changelog>
  <changelog author="pgajdos@suse.com" date="1709553600">- enable SVG again
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711022400">- allow delegates to be executed, was disabled by default policy
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711108800">- allow stdin/stdout
- modified patches
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1712577600">- version update to 7.1.1.30
  * install perl module into user-specified prefix by @bugfood in #7192
  * Fix bmp option to bypass file size check by @OnTheList-1 in #7194
  * add support for encoding/decoding ultrahdr images by @aayushsoni111 in #7198
  * Updates to uhdr.c by @aayushsoni111 in #7217
- added patches
  fix https://github.com/ImageMagick/ImageMagick/issues/7230
  + ImageMagick-wmflite-detection.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713182400">- relax list-length resource limit, fixes build of python-Wand
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713787200">- version update to 7.1.1.31
  * Convert big PDF documents is slow #7263
  * Update release.yml #7258
  * Update README.md #7245
  * uhdr.c: verify the availability of error message before accessing it #7229
- removed patches
  - ImageMagick-wmflite-detection.patch (upstreamed)
  `</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1714910400">- version update to 7.1.1.32
  * Fix GIF ICC profile reading #7282
  * uhdr.c: add support for rgb inputs #7273</changelog>
  <changelog author="pgajdos@suse.com" date="1715860800">- reverted update-alternatives usage removal [bsc#1122033][bsc#1220818]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1716638400">- version update to 7.1.1.33
  * Fix typo in #7294
  * Bump azure/trusted-signing-action from 0.3.16 to 0.3.18 in #7325
  * Bump caphyon/advinst-github-action from 1.1 to 2.0 in #7326
- added patch
  + ImageMagick-update-image-signature.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1719144000">- version update to 7.1.1.34
  * Bump azure/trusted-signing-action from 0.3.18 to 0.3.19 in #7348
  * Fix a typo in convert deprecation warning in #7383
  * Bump azure/trusted-signing-action from 0.3.19 to 0.3.20 in #7388
  * Updated FontConfig query to include font index, fixing (#7374) in #7409
- removed patch (upstreamed)
  - ImageMagick-update-image-signature.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1721908800">- version update to 7.1.1.35
  * Also set dpi-x and dpi-y when running rsvg-convert. eac001f
  * convert sub-command is deprecated d67039e
  * only operators should disable "identify ping" (ImageMagick/ImageMagick#7441) a262192
  * fix compiler error ecc21c7
  * -outdir deprecated 9980efa
  * Get the correct width and height when heic:preserve-orientation is set to true. ed3a0dd
  * Set heic image orientation using transform information. ba470aa
  * Exit earlier when the symlink could not be created when invoking the svg:decode delegate. 8a48edd
  * Fixed MSYS2 build error. 3b22378
  * Also set the DNG properties when pinging the image. fc1c61b
  * Silence warning when lqr delegate is disabled. ae0d69a
  * Added version check for the heif_properties.h include. 656b4d2
  * Make sure we always use the i64 version of the "file methods" on Windows. b3e8a78
  * Changed defines to use method instead of a define. 75b66c4
  * Changes due to upgrade of libheif. 841f033
  * smooth the rendering of an ellipse (ImageMagick/ImageMagick#7465) 1bfce2a</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- version update to 7.1.1.36
  * uhdr.c: default initialize range field for hdr/sdr intent inputs to
    enc by @aayushsoni111 in #7482
  * Fixed typo in documentation of MagickAdaptiveBlurImage by @JonahEMorgan
    in #7500
  * Silence warning when freetype delegate is disabled. by @niclet in #7515</changelog>
  <changelog author="pgajdos@suse.com" date="1724760000">- version update to 7.1.1.37
  * Bump azure/trusted-signing-action from 0.3.20 to 0.4.0 #7518
  * Silence warning and fix HEIC_COMPUTE_NUMERIC_VERSION definition when heic delegate is disabled. #7516
  * protect macro arguments with parens 86cb2b1
  * eliminate compiler warnings d90d8b4
  * correct copyright year 115271e
  * Ignore multiple exif and xmp profiles for the same jxl frame and fix reading those profiles per frame. c301208
  * read/write in chunks fff3058
  * optimize fwrite() arguments ada6785
  * Renamed Output folder to Artifacts. 2a69677
  * cancel interactive window selection with right button press ea2a2db
  * cosmetic 712bde4
  * eliminate compiler warning 9a9a25c
  * eliminate compiler warning 0bd1687
  * Make images mandatory in the issue template. c01fd37
  * Added extra header detection for avif files. 9fc0590
  * allow SeekBlob() to set an offset beyond the end of the blob 27c3f99
  * be less forgiving for invalid image indexes 25db2e5
  * Fixed problem with empty macros (#7562) 9fda5f2
  * Added missing null checks for RequestOpenCLDevice. f85448e
  * Added missing null check for AcquireOpenCLCommandQueue. 295e9c8
  * persist app1 jpeg profile (ImageMagick/ImageMagick#4713) f0357c7
  * Fixed build error. b3dd431
  * Remove some of the dependencies for the macos-13 build. d0bce95
  * parentheses is the plural of parenthesis 1fac80a
  * distribute quantization error for -dither FloydSteinberg -depth 5b2825b
  * release 8a0da9f
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565</changelog>
</package>
<package pkgid="d24faba9a2920d742cd05a2ff3d81f1a5c995db2a9f1434d8900453454ff25d4c7197bf04e937fa31ead97ae6cb055a1aa76f215d7980b6f4be2b17a33485597" name="ImageMagick-extra-debuginfo" arch="x86_64">
  <version epoch="0" ver="7.1.1.37" rel="1.1"/>
  <changelog author="pgajdos@suse.com" date="1705320000">- use correct policy.xml</changelog>
  <changelog author="pgajdos@suse.com" date="1705406400">- only one configuration again, based on upstream 'secure' policy
- other upstream policies packaged in documentation</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1705838400">- version update to 7.1.1.27
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1707652800">- version update to 7.1.1.28
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Michael Vetter &lt;mvetter@suse.com&gt;" date="1708603200">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1709035200">- version update to 7.1.1.29
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709380800">- We can not replace a symlink with a directory on the directly
  Unregister the whole group manually in %pre with
  update-alternatives. (boo#1220818)
  Restore Requires(pre) on update-alternatives for the mean time.</changelog>
  <changelog author="pgajdos@suse.com" date="1709553600">- enable SVG again
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711022400">- allow delegates to be executed, was disabled by default policy
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711108800">- allow stdin/stdout
- modified patches
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1712577600">- version update to 7.1.1.30
  * install perl module into user-specified prefix by @bugfood in #7192
  * Fix bmp option to bypass file size check by @OnTheList-1 in #7194
  * add support for encoding/decoding ultrahdr images by @aayushsoni111 in #7198
  * Updates to uhdr.c by @aayushsoni111 in #7217
- added patches
  fix https://github.com/ImageMagick/ImageMagick/issues/7230
  + ImageMagick-wmflite-detection.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713182400">- relax list-length resource limit, fixes build of python-Wand
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713787200">- version update to 7.1.1.31
  * Convert big PDF documents is slow #7263
  * Update release.yml #7258
  * Update README.md #7245
  * uhdr.c: verify the availability of error message before accessing it #7229
- removed patches
  - ImageMagick-wmflite-detection.patch (upstreamed)
  `</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1714910400">- version update to 7.1.1.32
  * Fix GIF ICC profile reading #7282
  * uhdr.c: add support for rgb inputs #7273</changelog>
  <changelog author="pgajdos@suse.com" date="1715860800">- reverted update-alternatives usage removal [bsc#1122033][bsc#1220818]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1716638400">- version update to 7.1.1.33
  * Fix typo in #7294
  * Bump azure/trusted-signing-action from 0.3.16 to 0.3.18 in #7325
  * Bump caphyon/advinst-github-action from 1.1 to 2.0 in #7326
- added patch
  + ImageMagick-update-image-signature.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1719144000">- version update to 7.1.1.34
  * Bump azure/trusted-signing-action from 0.3.18 to 0.3.19 in #7348
  * Fix a typo in convert deprecation warning in #7383
  * Bump azure/trusted-signing-action from 0.3.19 to 0.3.20 in #7388
  * Updated FontConfig query to include font index, fixing (#7374) in #7409
- removed patch (upstreamed)
  - ImageMagick-update-image-signature.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1721908800">- version update to 7.1.1.35
  * Also set dpi-x and dpi-y when running rsvg-convert. eac001f
  * convert sub-command is deprecated d67039e
  * only operators should disable "identify ping" (ImageMagick/ImageMagick#7441) a262192
  * fix compiler error ecc21c7
  * -outdir deprecated 9980efa
  * Get the correct width and height when heic:preserve-orientation is set to true. ed3a0dd
  * Set heic image orientation using transform information. ba470aa
  * Exit earlier when the symlink could not be created when invoking the svg:decode delegate. 8a48edd
  * Fixed MSYS2 build error. 3b22378
  * Also set the DNG properties when pinging the image. fc1c61b
  * Silence warning when lqr delegate is disabled. ae0d69a
  * Added version check for the heif_properties.h include. 656b4d2
  * Make sure we always use the i64 version of the "file methods" on Windows. b3e8a78
  * Changed defines to use method instead of a define. 75b66c4
  * Changes due to upgrade of libheif. 841f033
  * smooth the rendering of an ellipse (ImageMagick/ImageMagick#7465) 1bfce2a</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- version update to 7.1.1.36
  * uhdr.c: default initialize range field for hdr/sdr intent inputs to
    enc by @aayushsoni111 in #7482
  * Fixed typo in documentation of MagickAdaptiveBlurImage by @JonahEMorgan
    in #7500
  * Silence warning when freetype delegate is disabled. by @niclet in #7515</changelog>
  <changelog author="pgajdos@suse.com" date="1724760000">- version update to 7.1.1.37
  * Bump azure/trusted-signing-action from 0.3.20 to 0.4.0 #7518
  * Silence warning and fix HEIC_COMPUTE_NUMERIC_VERSION definition when heic delegate is disabled. #7516
  * protect macro arguments with parens 86cb2b1
  * eliminate compiler warnings d90d8b4
  * correct copyright year 115271e
  * Ignore multiple exif and xmp profiles for the same jxl frame and fix reading those profiles per frame. c301208
  * read/write in chunks fff3058
  * optimize fwrite() arguments ada6785
  * Renamed Output folder to Artifacts. 2a69677
  * cancel interactive window selection with right button press ea2a2db
  * cosmetic 712bde4
  * eliminate compiler warning 9a9a25c
  * eliminate compiler warning 0bd1687
  * Make images mandatory in the issue template. c01fd37
  * Added extra header detection for avif files. 9fc0590
  * allow SeekBlob() to set an offset beyond the end of the blob 27c3f99
  * be less forgiving for invalid image indexes 25db2e5
  * Fixed problem with empty macros (#7562) 9fda5f2
  * Added missing null checks for RequestOpenCLDevice. f85448e
  * Added missing null check for AcquireOpenCLCommandQueue. 295e9c8
  * persist app1 jpeg profile (ImageMagick/ImageMagick#4713) f0357c7
  * Fixed build error. b3dd431
  * Remove some of the dependencies for the macos-13 build. d0bce95
  * parentheses is the plural of parenthesis 1fac80a
  * distribute quantization error for -dither FloydSteinberg -depth 5b2825b
  * release 8a0da9f
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565</changelog>
</package>
<package pkgid="1d00cb3d3adae790d994f9631fe4eb489e40a3f1e6ff83fc598f3ec46b0de11a58754b60e68662476bbae775cd1e98e335e3a9bf0742ad643a4c792c887bd2f9" name="ImageMagick-extra-debuginfo" arch="i586">
  <version epoch="0" ver="7.1.1.39" rel="1.1"/>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1705838400">- version update to 7.1.1.27
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1707652800">- version update to 7.1.1.28
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Michael Vetter &lt;mvetter@suse.com&gt;" date="1708603200">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1709035200">- version update to 7.1.1.29
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709380800">- We can not replace a symlink with a directory on the directly
  Unregister the whole group manually in %pre with
  update-alternatives. (boo#1220818)
  Restore Requires(pre) on update-alternatives for the mean time.</changelog>
  <changelog author="pgajdos@suse.com" date="1709553600">- enable SVG again
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711022400">- allow delegates to be executed, was disabled by default policy
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711108800">- allow stdin/stdout
- modified patches
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1712577600">- version update to 7.1.1.30
  * install perl module into user-specified prefix by @bugfood in #7192
  * Fix bmp option to bypass file size check by @OnTheList-1 in #7194
  * add support for encoding/decoding ultrahdr images by @aayushsoni111 in #7198
  * Updates to uhdr.c by @aayushsoni111 in #7217
- added patches
  fix https://github.com/ImageMagick/ImageMagick/issues/7230
  + ImageMagick-wmflite-detection.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713182400">- relax list-length resource limit, fixes build of python-Wand
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713787200">- version update to 7.1.1.31
  * Convert big PDF documents is slow #7263
  * Update release.yml #7258
  * Update README.md #7245
  * uhdr.c: verify the availability of error message before accessing it #7229
- removed patches
  - ImageMagick-wmflite-detection.patch (upstreamed)
  `</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1714910400">- version update to 7.1.1.32
  * Fix GIF ICC profile reading #7282
  * uhdr.c: add support for rgb inputs #7273</changelog>
  <changelog author="pgajdos@suse.com" date="1715860800">- reverted update-alternatives usage removal [bsc#1122033][bsc#1220818]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1716638400">- version update to 7.1.1.33
  * Fix typo in #7294
  * Bump azure/trusted-signing-action from 0.3.16 to 0.3.18 in #7325
  * Bump caphyon/advinst-github-action from 1.1 to 2.0 in #7326
- added patch
  + ImageMagick-update-image-signature.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1719144000">- version update to 7.1.1.34
  * Bump azure/trusted-signing-action from 0.3.18 to 0.3.19 in #7348
  * Fix a typo in convert deprecation warning in #7383
  * Bump azure/trusted-signing-action from 0.3.19 to 0.3.20 in #7388
  * Updated FontConfig query to include font index, fixing (#7374) in #7409
- removed patch (upstreamed)
  - ImageMagick-update-image-signature.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1721908800">- version update to 7.1.1.35
  * Also set dpi-x and dpi-y when running rsvg-convert. eac001f
  * convert sub-command is deprecated d67039e
  * only operators should disable "identify ping" (ImageMagick/ImageMagick#7441) a262192
  * fix compiler error ecc21c7
  * -outdir deprecated 9980efa
  * Get the correct width and height when heic:preserve-orientation is set to true. ed3a0dd
  * Set heic image orientation using transform information. ba470aa
  * Exit earlier when the symlink could not be created when invoking the svg:decode delegate. 8a48edd
  * Fixed MSYS2 build error. 3b22378
  * Also set the DNG properties when pinging the image. fc1c61b
  * Silence warning when lqr delegate is disabled. ae0d69a
  * Added version check for the heif_properties.h include. 656b4d2
  * Make sure we always use the i64 version of the "file methods" on Windows. b3e8a78
  * Changed defines to use method instead of a define. 75b66c4
  * Changes due to upgrade of libheif. 841f033
  * smooth the rendering of an ellipse (ImageMagick/ImageMagick#7465) 1bfce2a</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- version update to 7.1.1.36
  * uhdr.c: default initialize range field for hdr/sdr intent inputs to
    enc by @aayushsoni111 in #7482
  * Fixed typo in documentation of MagickAdaptiveBlurImage by @JonahEMorgan
    in #7500
  * Silence warning when freetype delegate is disabled. by @niclet in #7515</changelog>
  <changelog author="pgajdos@suse.com" date="1724760000">- version update to 7.1.1.37
  * Bump azure/trusted-signing-action from 0.3.20 to 0.4.0 #7518
  * Silence warning and fix HEIC_COMPUTE_NUMERIC_VERSION definition when heic delegate is disabled. #7516
  * protect macro arguments with parens 86cb2b1
  * eliminate compiler warnings d90d8b4
  * correct copyright year 115271e
  * Ignore multiple exif and xmp profiles for the same jxl frame and fix reading those profiles per frame. c301208
  * read/write in chunks fff3058
  * optimize fwrite() arguments ada6785
  * Renamed Output folder to Artifacts. 2a69677
  * cancel interactive window selection with right button press ea2a2db
  * cosmetic 712bde4
  * eliminate compiler warning 9a9a25c
  * eliminate compiler warning 0bd1687
  * Make images mandatory in the issue template. c01fd37
  * Added extra header detection for avif files. 9fc0590
  * allow SeekBlob() to set an offset beyond the end of the blob 27c3f99
  * be less forgiving for invalid image indexes 25db2e5
  * Fixed problem with empty macros (#7562) 9fda5f2
  * Added missing null checks for RequestOpenCLDevice. f85448e
  * Added missing null check for AcquireOpenCLCommandQueue. 295e9c8
  * persist app1 jpeg profile (ImageMagick/ImageMagick#4713) f0357c7
  * Fixed build error. b3dd431
  * Remove some of the dependencies for the macos-13 build. d0bce95
  * parentheses is the plural of parenthesis 1fac80a
  * distribute quantization error for -dither FloydSteinberg -depth 5b2825b
  * release 8a0da9f
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565</changelog>
  <changelog author="pgajdos@suse.com" date="1726228800">- version update to 7.1.1.38
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565
  * beta release 250b748
  * deprecate the -respect-paranthesis option 4e7d789
  * Build fixes. b80c509
  * save IPTC + ICC profiles are profiles, not properties 25d5335
  * update copyright year 4caf7d1
  * Patch to fix reading of the ICC profile. 18377f9
  * prepping framework to interact with X11 clipboard b20dda3
  * Build fix. 20a5af3
  * More build fixes. c36fdf0
  * Another attempt to silence the warnings. 600708c
  * Use SetImageProfilePrivate to avoid duplicate allocations. f246eab
  * support clipboard delegate 39a135a
  * restore clipboard.c 1070b17
  * improved rounding 27a0a9c
  * don't allow negative scenes 8fda05a
  * eliminate compiler warnings 878daf9
- modified patches
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1728216000">- version update to 7.1.1.39
  * Add missing Threshold command to command array of Region of Interest mode #7606
  * uhdr.c: update uhdr coder for gainmap metadata configuration #7635
  * uhdr: fix language choice in autoconf #7663</changelog>
</package>
<package pkgid="c181dc0be1ed8bfa785c4960a51cd211e1e980731936dd82685c3c60a0258d886664fe15080535c8b4d9ec0b13ff2e88a7f1dbfc7cee27ecef7d0a1a474a1af6" name="ImageMagick-extra-debuginfo" arch="x86_64">
  <version epoch="0" ver="7.1.1.39" rel="1.1"/>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1705838400">- version update to 7.1.1.27
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1707652800">- version update to 7.1.1.28
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Michael Vetter &lt;mvetter@suse.com&gt;" date="1708603200">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1709035200">- version update to 7.1.1.29
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709380800">- We can not replace a symlink with a directory on the directly
  Unregister the whole group manually in %pre with
  update-alternatives. (boo#1220818)
  Restore Requires(pre) on update-alternatives for the mean time.</changelog>
  <changelog author="pgajdos@suse.com" date="1709553600">- enable SVG again
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711022400">- allow delegates to be executed, was disabled by default policy
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711108800">- allow stdin/stdout
- modified patches
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1712577600">- version update to 7.1.1.30
  * install perl module into user-specified prefix by @bugfood in #7192
  * Fix bmp option to bypass file size check by @OnTheList-1 in #7194
  * add support for encoding/decoding ultrahdr images by @aayushsoni111 in #7198
  * Updates to uhdr.c by @aayushsoni111 in #7217
- added patches
  fix https://github.com/ImageMagick/ImageMagick/issues/7230
  + ImageMagick-wmflite-detection.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713182400">- relax list-length resource limit, fixes build of python-Wand
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713787200">- version update to 7.1.1.31
  * Convert big PDF documents is slow #7263
  * Update release.yml #7258
  * Update README.md #7245
  * uhdr.c: verify the availability of error message before accessing it #7229
- removed patches
  - ImageMagick-wmflite-detection.patch (upstreamed)
  `</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1714910400">- version update to 7.1.1.32
  * Fix GIF ICC profile reading #7282
  * uhdr.c: add support for rgb inputs #7273</changelog>
  <changelog author="pgajdos@suse.com" date="1715860800">- reverted update-alternatives usage removal [bsc#1122033][bsc#1220818]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1716638400">- version update to 7.1.1.33
  * Fix typo in #7294
  * Bump azure/trusted-signing-action from 0.3.16 to 0.3.18 in #7325
  * Bump caphyon/advinst-github-action from 1.1 to 2.0 in #7326
- added patch
  + ImageMagick-update-image-signature.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1719144000">- version update to 7.1.1.34
  * Bump azure/trusted-signing-action from 0.3.18 to 0.3.19 in #7348
  * Fix a typo in convert deprecation warning in #7383
  * Bump azure/trusted-signing-action from 0.3.19 to 0.3.20 in #7388
  * Updated FontConfig query to include font index, fixing (#7374) in #7409
- removed patch (upstreamed)
  - ImageMagick-update-image-signature.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1721908800">- version update to 7.1.1.35
  * Also set dpi-x and dpi-y when running rsvg-convert. eac001f
  * convert sub-command is deprecated d67039e
  * only operators should disable "identify ping" (ImageMagick/ImageMagick#7441) a262192
  * fix compiler error ecc21c7
  * -outdir deprecated 9980efa
  * Get the correct width and height when heic:preserve-orientation is set to true. ed3a0dd
  * Set heic image orientation using transform information. ba470aa
  * Exit earlier when the symlink could not be created when invoking the svg:decode delegate. 8a48edd
  * Fixed MSYS2 build error. 3b22378
  * Also set the DNG properties when pinging the image. fc1c61b
  * Silence warning when lqr delegate is disabled. ae0d69a
  * Added version check for the heif_properties.h include. 656b4d2
  * Make sure we always use the i64 version of the "file methods" on Windows. b3e8a78
  * Changed defines to use method instead of a define. 75b66c4
  * Changes due to upgrade of libheif. 841f033
  * smooth the rendering of an ellipse (ImageMagick/ImageMagick#7465) 1bfce2a</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- version update to 7.1.1.36
  * uhdr.c: default initialize range field for hdr/sdr intent inputs to
    enc by @aayushsoni111 in #7482
  * Fixed typo in documentation of MagickAdaptiveBlurImage by @JonahEMorgan
    in #7500
  * Silence warning when freetype delegate is disabled. by @niclet in #7515</changelog>
  <changelog author="pgajdos@suse.com" date="1724760000">- version update to 7.1.1.37
  * Bump azure/trusted-signing-action from 0.3.20 to 0.4.0 #7518
  * Silence warning and fix HEIC_COMPUTE_NUMERIC_VERSION definition when heic delegate is disabled. #7516
  * protect macro arguments with parens 86cb2b1
  * eliminate compiler warnings d90d8b4
  * correct copyright year 115271e
  * Ignore multiple exif and xmp profiles for the same jxl frame and fix reading those profiles per frame. c301208
  * read/write in chunks fff3058
  * optimize fwrite() arguments ada6785
  * Renamed Output folder to Artifacts. 2a69677
  * cancel interactive window selection with right button press ea2a2db
  * cosmetic 712bde4
  * eliminate compiler warning 9a9a25c
  * eliminate compiler warning 0bd1687
  * Make images mandatory in the issue template. c01fd37
  * Added extra header detection for avif files. 9fc0590
  * allow SeekBlob() to set an offset beyond the end of the blob 27c3f99
  * be less forgiving for invalid image indexes 25db2e5
  * Fixed problem with empty macros (#7562) 9fda5f2
  * Added missing null checks for RequestOpenCLDevice. f85448e
  * Added missing null check for AcquireOpenCLCommandQueue. 295e9c8
  * persist app1 jpeg profile (ImageMagick/ImageMagick#4713) f0357c7
  * Fixed build error. b3dd431
  * Remove some of the dependencies for the macos-13 build. d0bce95
  * parentheses is the plural of parenthesis 1fac80a
  * distribute quantization error for -dither FloydSteinberg -depth 5b2825b
  * release 8a0da9f
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565</changelog>
  <changelog author="pgajdos@suse.com" date="1726228800">- version update to 7.1.1.38
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565
  * beta release 250b748
  * deprecate the -respect-paranthesis option 4e7d789
  * Build fixes. b80c509
  * save IPTC + ICC profiles are profiles, not properties 25d5335
  * update copyright year 4caf7d1
  * Patch to fix reading of the ICC profile. 18377f9
  * prepping framework to interact with X11 clipboard b20dda3
  * Build fix. 20a5af3
  * More build fixes. c36fdf0
  * Another attempt to silence the warnings. 600708c
  * Use SetImageProfilePrivate to avoid duplicate allocations. f246eab
  * support clipboard delegate 39a135a
  * restore clipboard.c 1070b17
  * improved rounding 27a0a9c
  * don't allow negative scenes 8fda05a
  * eliminate compiler warnings 878daf9
- modified patches
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1728216000">- version update to 7.1.1.39
  * Add missing Threshold command to command array of Region of Interest mode #7606
  * uhdr.c: update uhdr coder for gainmap metadata configuration #7635
  * uhdr: fix language choice in autoconf #7663</changelog>
</package>
<package pkgid="e1500816f4da19cd2cca9262d00aaecdde476fcaf72a714819bce5fe84ce0c35144912ce33e9183be91758a2c6f592c1885bb8ee32f6794a5ca7ab177b7e5b59" name="ImageMagick-extra-debuginfo" arch="i586">
  <version epoch="0" ver="7.1.1.41" rel="1.0.2.1.sr20241103"/>
  <changelog author="Michael Vetter &lt;mvetter@suse.com&gt;" date="1708603200">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1709035200">- version update to 7.1.1.29
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709380800">- We can not replace a symlink with a directory on the directly
  Unregister the whole group manually in %pre with
  update-alternatives. (boo#1220818)
  Restore Requires(pre) on update-alternatives for the mean time.</changelog>
  <changelog author="pgajdos@suse.com" date="1709553600">- enable SVG again
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711022400">- allow delegates to be executed, was disabled by default policy
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711108800">- allow stdin/stdout
- modified patches
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1712577600">- version update to 7.1.1.30
  * install perl module into user-specified prefix by @bugfood in #7192
  * Fix bmp option to bypass file size check by @OnTheList-1 in #7194
  * add support for encoding/decoding ultrahdr images by @aayushsoni111 in #7198
  * Updates to uhdr.c by @aayushsoni111 in #7217
- added patches
  fix https://github.com/ImageMagick/ImageMagick/issues/7230
  + ImageMagick-wmflite-detection.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713182400">- relax list-length resource limit, fixes build of python-Wand
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713787200">- version update to 7.1.1.31
  * Convert big PDF documents is slow #7263
  * Update release.yml #7258
  * Update README.md #7245
  * uhdr.c: verify the availability of error message before accessing it #7229
- removed patches
  - ImageMagick-wmflite-detection.patch (upstreamed)
  `</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1714910400">- version update to 7.1.1.32
  * Fix GIF ICC profile reading #7282
  * uhdr.c: add support for rgb inputs #7273</changelog>
  <changelog author="pgajdos@suse.com" date="1715860800">- reverted update-alternatives usage removal [bsc#1122033][bsc#1220818]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1716638400">- version update to 7.1.1.33
  * Fix typo in #7294
  * Bump azure/trusted-signing-action from 0.3.16 to 0.3.18 in #7325
  * Bump caphyon/advinst-github-action from 1.1 to 2.0 in #7326
- added patch
  + ImageMagick-update-image-signature.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1719144000">- version update to 7.1.1.34
  * Bump azure/trusted-signing-action from 0.3.18 to 0.3.19 in #7348
  * Fix a typo in convert deprecation warning in #7383
  * Bump azure/trusted-signing-action from 0.3.19 to 0.3.20 in #7388
  * Updated FontConfig query to include font index, fixing (#7374) in #7409
- removed patch (upstreamed)
  - ImageMagick-update-image-signature.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1721908800">- version update to 7.1.1.35
  * Also set dpi-x and dpi-y when running rsvg-convert. eac001f
  * convert sub-command is deprecated d67039e
  * only operators should disable "identify ping" (ImageMagick/ImageMagick#7441) a262192
  * fix compiler error ecc21c7
  * -outdir deprecated 9980efa
  * Get the correct width and height when heic:preserve-orientation is set to true. ed3a0dd
  * Set heic image orientation using transform information. ba470aa
  * Exit earlier when the symlink could not be created when invoking the svg:decode delegate. 8a48edd
  * Fixed MSYS2 build error. 3b22378
  * Also set the DNG properties when pinging the image. fc1c61b
  * Silence warning when lqr delegate is disabled. ae0d69a
  * Added version check for the heif_properties.h include. 656b4d2
  * Make sure we always use the i64 version of the "file methods" on Windows. b3e8a78
  * Changed defines to use method instead of a define. 75b66c4
  * Changes due to upgrade of libheif. 841f033
  * smooth the rendering of an ellipse (ImageMagick/ImageMagick#7465) 1bfce2a</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- version update to 7.1.1.36
  * uhdr.c: default initialize range field for hdr/sdr intent inputs to
    enc by @aayushsoni111 in #7482
  * Fixed typo in documentation of MagickAdaptiveBlurImage by @JonahEMorgan
    in #7500
  * Silence warning when freetype delegate is disabled. by @niclet in #7515</changelog>
  <changelog author="pgajdos@suse.com" date="1724760000">- version update to 7.1.1.37
  * Bump azure/trusted-signing-action from 0.3.20 to 0.4.0 #7518
  * Silence warning and fix HEIC_COMPUTE_NUMERIC_VERSION definition when heic delegate is disabled. #7516
  * protect macro arguments with parens 86cb2b1
  * eliminate compiler warnings d90d8b4
  * correct copyright year 115271e
  * Ignore multiple exif and xmp profiles for the same jxl frame and fix reading those profiles per frame. c301208
  * read/write in chunks fff3058
  * optimize fwrite() arguments ada6785
  * Renamed Output folder to Artifacts. 2a69677
  * cancel interactive window selection with right button press ea2a2db
  * cosmetic 712bde4
  * eliminate compiler warning 9a9a25c
  * eliminate compiler warning 0bd1687
  * Make images mandatory in the issue template. c01fd37
  * Added extra header detection for avif files. 9fc0590
  * allow SeekBlob() to set an offset beyond the end of the blob 27c3f99
  * be less forgiving for invalid image indexes 25db2e5
  * Fixed problem with empty macros (#7562) 9fda5f2
  * Added missing null checks for RequestOpenCLDevice. f85448e
  * Added missing null check for AcquireOpenCLCommandQueue. 295e9c8
  * persist app1 jpeg profile (ImageMagick/ImageMagick#4713) f0357c7
  * Fixed build error. b3dd431
  * Remove some of the dependencies for the macos-13 build. d0bce95
  * parentheses is the plural of parenthesis 1fac80a
  * distribute quantization error for -dither FloydSteinberg -depth 5b2825b
  * release 8a0da9f
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565</changelog>
  <changelog author="pgajdos@suse.com" date="1726228800">- version update to 7.1.1.38
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565
  * beta release 250b748
  * deprecate the -respect-paranthesis option 4e7d789
  * Build fixes. b80c509
  * save IPTC + ICC profiles are profiles, not properties 25d5335
  * update copyright year 4caf7d1
  * Patch to fix reading of the ICC profile. 18377f9
  * prepping framework to interact with X11 clipboard b20dda3
  * Build fix. 20a5af3
  * More build fixes. c36fdf0
  * Another attempt to silence the warnings. 600708c
  * Use SetImageProfilePrivate to avoid duplicate allocations. f246eab
  * support clipboard delegate 39a135a
  * restore clipboard.c 1070b17
  * improved rounding 27a0a9c
  * don't allow negative scenes 8fda05a
  * eliminate compiler warnings 878daf9
- modified patches
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1728216000">- version update to 7.1.1.39
  * Add missing Threshold command to command array of Region of Interest mode #7606
  * uhdr.c: update uhdr coder for gainmap metadata configuration #7635
  * uhdr: fix language choice in autoconf #7663</changelog>
  <changelog author="Yann BOYER &lt;yann.boyer742@gmail.com&gt;" date="1731326400">- version update to 7.1.1.40
  * .cut (Dr Halo) reading when run count in header #7734
  * Bump azure/trusted-signing-action from 0.4.0 to 0.5.0 #7725
  * Implement Magic Kernel Sharp 2013 and 2021 #7701
  * don't process TIFF image if there is an exception
  * Corrected check for indexed channels in PSD files.
  * export exception when undo resource limit exceeded</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1731844800">- version update to 7.1.1.41
  * Fix compiler identification with Clang on Darwin in #7773
  * revert map changes breaking ABI in #7768</changelog>
</package>
<package pkgid="49d493ebff906eb6f589c9cac77220422d3c6e5563a17643beaffad23f428d526bdf12fac84376f0f129830186065110c91f0e7b32a74597ca75a17107987ec4" name="ImageMagick-extra-debuginfo" arch="x86_64">
  <version epoch="0" ver="7.1.1.41" rel="1.0.2.1.sr20241103"/>
  <changelog author="Michael Vetter &lt;mvetter@suse.com&gt;" date="1708603200">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1709035200">- version update to 7.1.1.29
  https://github.com/ImageMagick/Website/blob/main/ChangeLog.md</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709380800">- We can not replace a symlink with a directory on the directly
  Unregister the whole group manually in %pre with
  update-alternatives. (boo#1220818)
  Restore Requires(pre) on update-alternatives for the mean time.</changelog>
  <changelog author="pgajdos@suse.com" date="1709553600">- enable SVG again
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711022400">- allow delegates to be executed, was disabled by default policy
- modified patches
  % ImageMagick-configuration-SUSE.patch (refreshed)
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1711108800">- allow stdin/stdout
- modified patches
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1712577600">- version update to 7.1.1.30
  * install perl module into user-specified prefix by @bugfood in #7192
  * Fix bmp option to bypass file size check by @OnTheList-1 in #7194
  * add support for encoding/decoding ultrahdr images by @aayushsoni111 in #7198
  * Updates to uhdr.c by @aayushsoni111 in #7217
- added patches
  fix https://github.com/ImageMagick/ImageMagick/issues/7230
  + ImageMagick-wmflite-detection.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713182400">- relax list-length resource limit, fixes build of python-Wand
  % ImageMagick-configuration-SUSE.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1713787200">- version update to 7.1.1.31
  * Convert big PDF documents is slow #7263
  * Update release.yml #7258
  * Update README.md #7245
  * uhdr.c: verify the availability of error message before accessing it #7229
- removed patches
  - ImageMagick-wmflite-detection.patch (upstreamed)
  `</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1714910400">- version update to 7.1.1.32
  * Fix GIF ICC profile reading #7282
  * uhdr.c: add support for rgb inputs #7273</changelog>
  <changelog author="pgajdos@suse.com" date="1715860800">- reverted update-alternatives usage removal [bsc#1122033][bsc#1220818]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1716638400">- version update to 7.1.1.33
  * Fix typo in #7294
  * Bump azure/trusted-signing-action from 0.3.16 to 0.3.18 in #7325
  * Bump caphyon/advinst-github-action from 1.1 to 2.0 in #7326
- added patch
  + ImageMagick-update-image-signature.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1719144000">- version update to 7.1.1.34
  * Bump azure/trusted-signing-action from 0.3.18 to 0.3.19 in #7348
  * Fix a typo in convert deprecation warning in #7383
  * Bump azure/trusted-signing-action from 0.3.19 to 0.3.20 in #7388
  * Updated FontConfig query to include font index, fixing (#7374) in #7409
- removed patch (upstreamed)
  - ImageMagick-update-image-signature.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1721908800">- version update to 7.1.1.35
  * Also set dpi-x and dpi-y when running rsvg-convert. eac001f
  * convert sub-command is deprecated d67039e
  * only operators should disable "identify ping" (ImageMagick/ImageMagick#7441) a262192
  * fix compiler error ecc21c7
  * -outdir deprecated 9980efa
  * Get the correct width and height when heic:preserve-orientation is set to true. ed3a0dd
  * Set heic image orientation using transform information. ba470aa
  * Exit earlier when the symlink could not be created when invoking the svg:decode delegate. 8a48edd
  * Fixed MSYS2 build error. 3b22378
  * Also set the DNG properties when pinging the image. fc1c61b
  * Silence warning when lqr delegate is disabled. ae0d69a
  * Added version check for the heif_properties.h include. 656b4d2
  * Make sure we always use the i64 version of the "file methods" on Windows. b3e8a78
  * Changed defines to use method instead of a define. 75b66c4
  * Changes due to upgrade of libheif. 841f033
  * smooth the rendering of an ellipse (ImageMagick/ImageMagick#7465) 1bfce2a</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- version update to 7.1.1.36
  * uhdr.c: default initialize range field for hdr/sdr intent inputs to
    enc by @aayushsoni111 in #7482
  * Fixed typo in documentation of MagickAdaptiveBlurImage by @JonahEMorgan
    in #7500
  * Silence warning when freetype delegate is disabled. by @niclet in #7515</changelog>
  <changelog author="pgajdos@suse.com" date="1724760000">- version update to 7.1.1.37
  * Bump azure/trusted-signing-action from 0.3.20 to 0.4.0 #7518
  * Silence warning and fix HEIC_COMPUTE_NUMERIC_VERSION definition when heic delegate is disabled. #7516
  * protect macro arguments with parens 86cb2b1
  * eliminate compiler warnings d90d8b4
  * correct copyright year 115271e
  * Ignore multiple exif and xmp profiles for the same jxl frame and fix reading those profiles per frame. c301208
  * read/write in chunks fff3058
  * optimize fwrite() arguments ada6785
  * Renamed Output folder to Artifacts. 2a69677
  * cancel interactive window selection with right button press ea2a2db
  * cosmetic 712bde4
  * eliminate compiler warning 9a9a25c
  * eliminate compiler warning 0bd1687
  * Make images mandatory in the issue template. c01fd37
  * Added extra header detection for avif files. 9fc0590
  * allow SeekBlob() to set an offset beyond the end of the blob 27c3f99
  * be less forgiving for invalid image indexes 25db2e5
  * Fixed problem with empty macros (#7562) 9fda5f2
  * Added missing null checks for RequestOpenCLDevice. f85448e
  * Added missing null check for AcquireOpenCLCommandQueue. 295e9c8
  * persist app1 jpeg profile (ImageMagick/ImageMagick#4713) f0357c7
  * Fixed build error. b3dd431
  * Remove some of the dependencies for the macos-13 build. d0bce95
  * parentheses is the plural of parenthesis 1fac80a
  * distribute quantization error for -dither FloydSteinberg -depth 5b2825b
  * release 8a0da9f
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565</changelog>
  <changelog author="pgajdos@suse.com" date="1726228800">- version update to 7.1.1.38
  * properly set image byte order 40f6599
  * set max colormap size for remap 1ffe565
  * beta release 250b748
  * deprecate the -respect-paranthesis option 4e7d789
  * Build fixes. b80c509
  * save IPTC + ICC profiles are profiles, not properties 25d5335
  * update copyright year 4caf7d1
  * Patch to fix reading of the ICC profile. 18377f9
  * prepping framework to interact with X11 clipboard b20dda3
  * Build fix. 20a5af3
  * More build fixes. c36fdf0
  * Another attempt to silence the warnings. 600708c
  * Use SetImageProfilePrivate to avoid duplicate allocations. f246eab
  * support clipboard delegate 39a135a
  * restore clipboard.c 1070b17
  * improved rounding 27a0a9c
  * don't allow negative scenes 8fda05a
  * eliminate compiler warnings 878daf9
- modified patches
  % ImageMagick-library-installable-in-parallel.patch (refreshed)</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1728216000">- version update to 7.1.1.39
  * Add missing Threshold command to command array of Region of Interest mode #7606
  * uhdr.c: update uhdr coder for gainmap metadata configuration #7635
  * uhdr: fix language choice in autoconf #7663</changelog>
  <changelog author="Yann BOYER &lt;yann.boyer742@gmail.com&gt;" date="1731326400">- version update to 7.1.1.40
  * .cut (Dr Halo) reading when run count in header #7734
  * Bump azure/trusted-signing-action from 0.4.0 to 0.5.0 #7725
  * Implement Magic Kernel Sharp 2013 and 2021 #7701
  * don't process TIFF image if there is an exception
  * Corrected check for indexed channels in PSD files.
  * export exception when undo resource limit exceeded</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1731844800">- version update to 7.1.1.41
  * Fix compiler identification with Clang on Darwin in #7773
  * revert map changes breaking ABI in #7768</changelog>
</package>
<package pkgid="d9cb56a4201f711462cf172c655f92d9df462ae97da995a6b3c691518c61ffebe331e3a5dda7bddc26dca0867ca4700d039ca569c498498b64f46859f0a19e91" name="Kalpa-release" arch="src">
  <version epoch="0" ver="20240605" rel="2939.4.2.sr20240605"/>
  <changelog author="openSUSE &lt;packaging@lists.opensuse.org&gt;" date="1717588800">- automatically generated by openSUSE-release-tools/pkglistgen</changelog>
</package>
<package pkgid="35c881a604685aca2f9f0be293a7526eeddd6808acfb867c97d114210f83254bbc4090e43511f2645cc79f2a7d6c7de2ce993dca17fb1b2351061689991be43b" name="Kalpa-release" arch="x86_64">
  <version epoch="0" ver="20240605" rel="2939.4.2.sr20240605"/>
  <changelog author="openSUSE &lt;packaging@lists.opensuse.org&gt;" date="1717588800">- automatically generated by openSUSE-release-tools/pkglistgen</changelog>
</package>
<package pkgid="c40f71f794865ab6c3f5787f24218383691b7faca90e794a81dc62165e070535d25db96d33188366bcf987f21745abdebe4bcb38e52856a0966127df795a50f2" name="Kalpa-release" arch="src">
  <version epoch="0" ver="20240702" rel="2980.7.1.sr20240702"/>
  <changelog author="openSUSE &lt;packaging@lists.opensuse.org&gt;" date="1720008000">- automatically generated by openSUSE-release-tools/pkglistgen</changelog>
</package>
<package pkgid="7bdb1249fe960d5ead853556ba81e01ec4c6b526b3c74ca1f39515fbe0254ae9f52469697500b900f4866185b41c62f9c988d59034016184fe3680979ab860ea" name="Kalpa-release" arch="x86_64">
  <version epoch="0" ver="20240702" rel="2980.7.1.sr20240702"/>
  <changelog author="openSUSE &lt;packaging@lists.opensuse.org&gt;" date="1720008000">- automatically generated by openSUSE-release-tools/pkglistgen</changelog>
</package>
<package pkgid="40fadf8b05d9758268971fda777fb4969d1960a57fdbdcdf649cbed323327e0a7a361bccbed3b4d2ad74976ef5a5a4376983100a9f3ff8c100e7c43650f66da8" name="Kalpa-release" arch="src">
  <version epoch="0" ver="20240803" rel="3030.9.1.sr20240803"/>
  <changelog author="openSUSE &lt;packaging@lists.opensuse.org&gt;" date="1722686400">- automatically generated by openSUSE-release-tools/pkglistgen</changelog>
</package>
<package pkgid="96136a603eb46220511527e11888a1079800bd71c498e0a75ae6546365a811b620589076048efabfe933167847ab55114ef832044993d3e27706294b547e9998" name="Kalpa-release" arch="x86_64">
  <version epoch="0" ver="20240803" rel="3030.9.1.sr20240803"/>
  <changelog author="openSUSE &lt;packaging@lists.opensuse.org&gt;" date="1722686400">- automatically generated by openSUSE-release-tools/pkglistgen</changelog>
</package>
<package pkgid="978a34f2419c76cd53fc6fdfa864286e7e5dea04d4ca24e6f35d121bd9d7d47630b75a6056ee3f20d29cc0b4e6aff6d41214841210f6bf4b9cb5070ba9e1fd3c" name="Kalpa-release" arch="src">
  <version epoch="0" ver="20240901" rel="3079.12.1.sr20240901"/>
  <changelog author="openSUSE &lt;packaging@lists.opensuse.org&gt;" date="1725192000">- automatically generated by openSUSE-release-tools/pkglistgen</changelog>
</package>
<package pkgid="34bfc73f478bf304fd70605d7525d1f7df6721d780becb4ad52f0391d01c76c916cbf66c1e372ef707bcc291664dcf653b1d34ce79e9236f9b71b78775514355" name="Kalpa-release" arch="x86_64">
  <version epoch="0" ver="20240901" rel="3079.12.1.sr20240901"/>
  <changelog author="openSUSE &lt;packaging@lists.opensuse.org&gt;" date="1725192000">- automatically generated by openSUSE-release-tools/pkglistgen</changelog>
</package>
<package pkgid="4b06ced0a52e7d45794380564c371d640257ecf2fd6a0e0e1fb5ee22d8d78fb1c7f349bd3d4911ac2e383ddc411ab802a436245587c9ac0e2ef6dda30741cfd6" name="Kalpa-release" arch="src">
  <version epoch="0" ver="20241002" rel="3134.11.1.sr20241002"/>
  <changelog author="openSUSE &lt;packaging@lists.opensuse.org&gt;" date="1727956800">- automatically generated by openSUSE-release-tools/pkglistgen</changelog>
</package>
<package pkgid="ba6f7d75b5ed882d157dbe341b97c75ee0990291b15db205cac2f50be4c17c8597ef601f3a822bff441cbd78525995f085f4298e4f327ab0b758592167cc24ba" name="Kalpa-release" arch="x86_64">
  <version epoch="0" ver="20241002" rel="3134.11.1.sr20241002"/>
  <changelog author="openSUSE &lt;packaging@lists.opensuse.org&gt;" date="1727956800">- automatically generated by openSUSE-release-tools/pkglistgen</changelog>
</package>
<package pkgid="c4f661c549eaff1d68b70403016d2162f658683f8b2722d404393806f046c1450f673808ae0d34bc1c0a65e64676879d49edc2e09b9e88608755be72cec80315" name="Kalpa-release" arch="src">
  <version epoch="0" ver="20241103" rel="3197.13.1.sr20241103"/>
  <changelog author="openSUSE &lt;packaging@lists.opensuse.org&gt;" date="1730635200">- automatically generated by openSUSE-release-tools/pkglistgen</changelog>
</package>
<package pkgid="507c1122acfa5eb0788a2400715bbd1aba99c3ed089c4cea8768e3f958f736a24a6815fc59d9b1f7410a757c2725b276c42bb41e17a1c8976e37266c879ea932" name="Kalpa-release" arch="x86_64">
  <version epoch="0" ver="20241103" rel="3197.13.1.sr20241103"/>
  <changelog author="openSUSE &lt;packaging@lists.opensuse.org&gt;" date="1730635200">- automatically generated by openSUSE-release-tools/pkglistgen</changelog>
</package>
<package pkgid="3791a0510bb8b691a6d897e62cc2abfadc05b394b2db611fe6b0b202e919407f95a634a42afe54fef1fcd13ec024fe9154d3e06ceebe5644149c8b436cb04815" name="Kalpa-release-appliance" arch="x86_64">
  <version epoch="0" ver="20240605" rel="2939.4.2.sr20240605"/>
  <changelog author="openSUSE &lt;packaging@lists.opensuse.org&gt;" date="1717588800">- automatically generated by openSUSE-release-tools/pkglistgen</changelog>
</package>
<package pkgid="6fbb0d47d88a9df5f36652531df9910b672644a5beabd6b5a67a033786df2b6d295dc9cea930e3e5a0c24235a7725f1d23986c1cb39e05603eb4f1b81c7b0cde" name="Kalpa-release-appliance" arch="x86_64">
  <version epoch="0" ver="20240702" rel="2980.7.1.sr20240702"/>
  <changelog author="openSUSE &lt;packaging@lists.opensuse.org&gt;" date="1720008000">- automatically generated by openSUSE-release-tools/pkglistgen</changelog>
</package>
<package pkgid="60813120f358d7f2eb041b9ee6191b53120b2df8ecbf61971e0d89dbb176bc8a1c4bcca4a32e17cc576f6da4a772a49131f89fa8dd0bfccb43c8f282dd20899d" name="Kalpa-release-appliance" arch="x86_64">
  <version epoch="0" ver="20240803" rel="3030.9.1.sr20240803"/>
  <changelog author="openSUSE &lt;packaging@lists.opensuse.org&gt;" date="1722686400">- automatically generated by openSUSE-release-tools/pkglistgen</changelog>
</package>
<package pkgid="ccb220f249023ccd6cba2ea9b6e2c4d4337ba40be4aa13bdeb2d5aaccc19c1933bc0921ca8587db7c3d885f505b18a871b98437f9ef22bb8b37af5ff4bc2a70a" name="Kalpa-release-appliance" arch="x86_64">
  <version epoch="0" ver="20240901" rel="3079.12.1.sr20240901"/>
  <changelog author="openSUSE &lt;packaging@lists.opensuse.org&gt;" date="1725192000">- automatically generated by openSUSE-release-tools/pkglistgen</changelog>
</package>
<package pkgid="fc6bca0cb18b880abd22474bcc5a59daac5b4197e7f728ca2ec2f99e8f1fbd4fef2ab5622665f3579f67baacce08bf13b334c1ea8a8399e81c5bace986528ca0" name="Kalpa-release-appliance" arch="x86_64">
  <version epoch="0" ver="20241002" rel="3134.11.1.sr20241002"/>
  <changelog author="openSUSE &lt;packaging@lists.opensuse.org&gt;" date="1727956800">- automatically generated by openSUSE-release-tools/pkglistgen</changelog>
</package>
<package pkgid="102d5b0c19fc95497f20848a32142a2a83e2382e8c81ba5df9f71d19ec65ca985f87d1999d2c2aed12562e5b55eac0dcda26259d30953f233bc31e30b9f5aea9" name="Kalpa-release-appliance" arch="x86_64">
  <version epoch="0" ver="20241103" rel="3197.13.1.sr20241103"/>
  <changelog author="openSUSE &lt;packaging@lists.opensuse.org&gt;" date="1730635200">- automatically generated by openSUSE-release-tools/pkglistgen</changelog>
</package>
<package pkgid="f2147e76acd0080aa45782c1c4218b1ea20e3e6807a661ba3b2385d694e55e6adf809269be69ab95ecbec951372ca40ea4112100f89d501046148ae688e6a788" name="LiE" arch="i586">
  <version epoch="0" ver="2.2.2" rel="8.0.2.2.sr20241103"/>
  <changelog author="badshah400@gmail.com" date="1386849600">- Initial version</changelog>
  <changelog author="andreas.stieger@gmx.de" date="1398859200">- add LiE-2.2.2-date-time.patch to fix file-contains-date-and-time
  warning and prevent unneccessary rebuilds</changelog>
  <changelog author="dimstar@opensuse.org" date="1489492800">- Explicitly package files copied into _docdir: rpm 4.13 no longer
  implicitly packages those files.</changelog>
  <changelog author="bwiedemann@suse.com" date="1506945600">- Add LiE-2.2.2-memory-init.patch to make build more reproducible
  (boo#1061220)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1715774400">- Use %autosetup macro: allows us to eliminate usage of deprecated
  %patchN syntax.</changelog>
  <changelog author="Bernhard Wiedemann &lt;bwiedemann@suse.com&gt;" date="1732363200">- Add reproducible-noaslr.patch (boo#1231626)</changelog>
</package>
<package pkgid="77bd2fdc5231a4cba6014345dde5f366070550e8514759a0cc8dee0c6bf2e8a79205d42cf88a1fcf2174aa5e3fa9ffd9e8ac5a7ab1a1c34cd56652a71424852d" name="LiE" arch="src">
  <version epoch="0" ver="2.2.2" rel="8.0.2.2.sr20241103"/>
  <changelog author="badshah400@gmail.com" date="1386849600">- Initial version</changelog>
  <changelog author="andreas.stieger@gmx.de" date="1398859200">- add LiE-2.2.2-date-time.patch to fix file-contains-date-and-time
  warning and prevent unneccessary rebuilds</changelog>
  <changelog author="dimstar@opensuse.org" date="1489492800">- Explicitly package files copied into _docdir: rpm 4.13 no longer
  implicitly packages those files.</changelog>
  <changelog author="bwiedemann@suse.com" date="1506945600">- Add LiE-2.2.2-memory-init.patch to make build more reproducible
  (boo#1061220)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1715774400">- Use %autosetup macro: allows us to eliminate usage of deprecated
  %patchN syntax.</changelog>
  <changelog author="Bernhard Wiedemann &lt;bwiedemann@suse.com&gt;" date="1732363200">- Add reproducible-noaslr.patch (boo#1231626)</changelog>
</package>
<package pkgid="0f675165f5d989c76c844346f69c4f17dcfdd2861b0a06e4053a29853404247a43dc606d439f8f6006f1fafbf877a0b85f9ea54b11cf7a3ece1491c2f6873936" name="LiE" arch="x86_64">
  <version epoch="0" ver="2.2.2" rel="8.0.2.2.sr20241103"/>
  <changelog author="badshah400@gmail.com" date="1386849600">- Initial version</changelog>
  <changelog author="andreas.stieger@gmx.de" date="1398859200">- add LiE-2.2.2-date-time.patch to fix file-contains-date-and-time
  warning and prevent unneccessary rebuilds</changelog>
  <changelog author="dimstar@opensuse.org" date="1489492800">- Explicitly package files copied into _docdir: rpm 4.13 no longer
  implicitly packages those files.</changelog>
  <changelog author="bwiedemann@suse.com" date="1506945600">- Add LiE-2.2.2-memory-init.patch to make build more reproducible
  (boo#1061220)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1715774400">- Use %autosetup macro: allows us to eliminate usage of deprecated
  %patchN syntax.</changelog>
  <changelog author="Bernhard Wiedemann &lt;bwiedemann@suse.com&gt;" date="1732363200">- Add reproducible-noaslr.patch (boo#1231626)</changelog>
</package>
<package pkgid="4b1423054d4231a4721764f13cac84c872cc8b5aebffac6fd2847774dcd9ac8d32e52997a246a84a9678cebbeb338fd7845812a0c7852aab7e49dd6f61a34056" name="LiE-debuginfo" arch="i586">
  <version epoch="0" ver="2.2.2" rel="8.0.2.2.sr20241103"/>
  <changelog author="badshah400@gmail.com" date="1386849600">- Initial version</changelog>
  <changelog author="andreas.stieger@gmx.de" date="1398859200">- add LiE-2.2.2-date-time.patch to fix file-contains-date-and-time
  warning and prevent unneccessary rebuilds</changelog>
  <changelog author="dimstar@opensuse.org" date="1489492800">- Explicitly package files copied into _docdir: rpm 4.13 no longer
  implicitly packages those files.</changelog>
  <changelog author="bwiedemann@suse.com" date="1506945600">- Add LiE-2.2.2-memory-init.patch to make build more reproducible
  (boo#1061220)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1715774400">- Use %autosetup macro: allows us to eliminate usage of deprecated
  %patchN syntax.</changelog>
  <changelog author="Bernhard Wiedemann &lt;bwiedemann@suse.com&gt;" date="1732363200">- Add reproducible-noaslr.patch (boo#1231626)</changelog>
</package>
<package pkgid="e206a9c542ff74f9dddc5ff2fe18158eccc5f06a7c245aca95e3912b68ca173e41442d753fda47dc7bc77681749a4250fb8b733baede912ff2e118164e43b224" name="LiE-debuginfo" arch="x86_64">
  <version epoch="0" ver="2.2.2" rel="8.0.2.2.sr20241103"/>
  <changelog author="badshah400@gmail.com" date="1386849600">- Initial version</changelog>
  <changelog author="andreas.stieger@gmx.de" date="1398859200">- add LiE-2.2.2-date-time.patch to fix file-contains-date-and-time
  warning and prevent unneccessary rebuilds</changelog>
  <changelog author="dimstar@opensuse.org" date="1489492800">- Explicitly package files copied into _docdir: rpm 4.13 no longer
  implicitly packages those files.</changelog>
  <changelog author="bwiedemann@suse.com" date="1506945600">- Add LiE-2.2.2-memory-init.patch to make build more reproducible
  (boo#1061220)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1715774400">- Use %autosetup macro: allows us to eliminate usage of deprecated
  %patchN syntax.</changelog>
  <changelog author="Bernhard Wiedemann &lt;bwiedemann@suse.com&gt;" date="1732363200">- Add reproducible-noaslr.patch (boo#1231626)</changelog>
</package>
<package pkgid="36c3818c119a3b9514a18d6dd54c6f6452b735d77e924b132bc24786f259fcb43aa93b5dd49bd213d5273b4225d96a16fb40227063df8cece8ebe7e85f7b3aaf" name="LiE-doc" arch="i586">
  <version epoch="0" ver="2.2.2" rel="8.0.2.2.sr20241103"/>
  <changelog author="badshah400@gmail.com" date="1386849600">- Initial version</changelog>
  <changelog author="andreas.stieger@gmx.de" date="1398859200">- add LiE-2.2.2-date-time.patch to fix file-contains-date-and-time
  warning and prevent unneccessary rebuilds</changelog>
  <changelog author="dimstar@opensuse.org" date="1489492800">- Explicitly package files copied into _docdir: rpm 4.13 no longer
  implicitly packages those files.</changelog>
  <changelog author="bwiedemann@suse.com" date="1506945600">- Add LiE-2.2.2-memory-init.patch to make build more reproducible
  (boo#1061220)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1715774400">- Use %autosetup macro: allows us to eliminate usage of deprecated
  %patchN syntax.</changelog>
  <changelog author="Bernhard Wiedemann &lt;bwiedemann@suse.com&gt;" date="1732363200">- Add reproducible-noaslr.patch (boo#1231626)</changelog>
</package>
<package pkgid="12825ce12b0b46f4536902aeeea57eb4c3fe478f88bc0c4dcd18c524d93fcf96cafd3c27112f82acbc403e0e3addd4bd7f6ce5faff6c129a5e2a2e4de7df32f9" name="LiE-doc" arch="x86_64">
  <version epoch="0" ver="2.2.2" rel="8.0.2.2.sr20241103"/>
  <changelog author="badshah400@gmail.com" date="1386849600">- Initial version</changelog>
  <changelog author="andreas.stieger@gmx.de" date="1398859200">- add LiE-2.2.2-date-time.patch to fix file-contains-date-and-time
  warning and prevent unneccessary rebuilds</changelog>
  <changelog author="dimstar@opensuse.org" date="1489492800">- Explicitly package files copied into _docdir: rpm 4.13 no longer
  implicitly packages those files.</changelog>
  <changelog author="bwiedemann@suse.com" date="1506945600">- Add LiE-2.2.2-memory-init.patch to make build more reproducible
  (boo#1061220)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1715774400">- Use %autosetup macro: allows us to eliminate usage of deprecated
  %patchN syntax.</changelog>
  <changelog author="Bernhard Wiedemann &lt;bwiedemann@suse.com&gt;" date="1732363200">- Add reproducible-noaslr.patch (boo#1231626)</changelog>
</package>
<package pkgid="126cbfa95997c3385b4018ecdb4df2354a4ecc94242b7b362f33a154641030fa9ee8eef8397ad73fed680dd1e69dab75a4b9515ce45f84c5569442bffffb0385" name="Mesa" arch="i586">
  <version epoch="0" ver="24.1.3" rel="390.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860800">- Update to bugfix release 24.0.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.6.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860801">-  Update to bugfix release 24.0.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.7.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
</package>
<package pkgid="d6a9d55d4e1b594798a2f6bd199194ac568526d0246f66436dfcb72276e8b7c1da31e44399d413002a1d7c7571598615576dfe61b9a7e3d926688c5e24785a6b" name="Mesa" arch="src">
  <version epoch="0" ver="24.1.3" rel="390.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860800">- Update to bugfix release 24.0.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.6.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860801">-  Update to bugfix release 24.0.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.7.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
</package>
<package pkgid="50fd7d0c07cea20d87f4f16769ae5c04b754fbe27b5c7b54eec371e9d23989adc27cd835e2fc6848c39cbe0ddf8ececcd5edd06e87b12b5f32d49bdb4c03c648" name="Mesa" arch="x86_64">
  <version epoch="0" ver="24.1.3" rel="390.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860800">- Update to bugfix release 24.0.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.6.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860801">-  Update to bugfix release 24.0.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.7.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
</package>
<package pkgid="b7cb80132e81e0563372c8dcbb528e65897ac4855de62af6ab7fbdabd93f6a36c90ec5aba5f30cdee9a4d63d40d81abc7967485178cd384f0135c9b76222ace5" name="Mesa" arch="i586">
  <version epoch="0" ver="24.1.7" rel="391.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="b12d3480d12e9baf3e492d1d1f36632d9e3dbee8f83ee52d6e518f2408cf9c4b922e547da3720868a8a424ce5eba9a027eb25266db114d4053e557e9e1a38373" name="Mesa" arch="src">
  <version epoch="0" ver="24.1.7" rel="391.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="d8020f7794884660e85874e023840815de445deb663f1e2654396eb0be590420be0dfb3c7f4f3970b409d8c7233bc032ef1bdc33e64d10aac2a6bbcf188e0f54" name="Mesa" arch="x86_64">
  <version epoch="0" ver="24.1.7" rel="391.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="89c6542af7953f565af260f748ba49a6f028c831affea59bd94a3c46fff8357d346414be19cfaac60424a356f736a94da86221cc7c463a83e22a32080fb37e17" name="Mesa" arch="i586">
  <version epoch="0" ver="24.2.6" rel="392.1"/>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1725796800">- Update to release 24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.0
- refreshed the following patches with quilt:
  * U_fix-mpeg1_2-decode-mesa-20.2.patch
  * n_add-Mesa-headers-again.patch
  * n_stop-iris-flicker.patch
  * u_dep_xcb.patch
  * u_fix_rust_bindgen.patch
- dropped U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- New BuildRequires:
  * python3-PyYAML
- enable llvm also for non-driver build to fix:
  "llvmpipe requires LLVM and is enabled, but LLVM is disabled".</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
</package>
<package pkgid="e44cbbded836b7400cb1b447b19b080c82f3b92b99abc1fe0a747626ad37fee1a33e772244ee6738eb42ce1301342587c03d8eca5815f1b3ff37738429f4b2bb" name="Mesa" arch="src">
  <version epoch="0" ver="24.2.6" rel="392.1"/>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1725796800">- Update to release 24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.0
- refreshed the following patches with quilt:
  * U_fix-mpeg1_2-decode-mesa-20.2.patch
  * n_add-Mesa-headers-again.patch
  * n_stop-iris-flicker.patch
  * u_dep_xcb.patch
  * u_fix_rust_bindgen.patch
- dropped U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- New BuildRequires:
  * python3-PyYAML
- enable llvm also for non-driver build to fix:
  "llvmpipe requires LLVM and is enabled, but LLVM is disabled".</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
</package>
<package pkgid="938471df1d4580bf8c83c04e7b862a678215401bdfc6642f69bfe31b9a094d2566534d9f4387c7d7fae574c2165e5ddb886eeff393db867c99c3451fe0555426" name="Mesa" arch="x86_64">
  <version epoch="0" ver="24.2.6" rel="392.1"/>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1725796800">- Update to release 24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.0
- refreshed the following patches with quilt:
  * U_fix-mpeg1_2-decode-mesa-20.2.patch
  * n_add-Mesa-headers-again.patch
  * n_stop-iris-flicker.patch
  * u_dep_xcb.patch
  * u_fix_rust_bindgen.patch
- dropped U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- New BuildRequires:
  * python3-PyYAML
- enable llvm also for non-driver build to fix:
  "llvmpipe requires LLVM and is enabled, but LLVM is disabled".</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
</package>
<package pkgid="28cb4997b6c0ebeeb42d1f28d2b60751bc2b982f28cef6724ac9b96222cd551d568aa6ae735c8b4c96674dd732604b4f6b4cba8f172b66be5d4eea3f5b9f189d" name="Mesa" arch="i586">
  <version epoch="0" ver="24.2.7" rel="393.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1732017600">- Update to release 24.2.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.7
- supersedes 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch</changelog>
</package>
<package pkgid="9ca34f3bb80c7f012ffad37fd7b2684717494de8044483242404d5616038c867f7d8315668966319bc764f512435ef142ef1f2574e5238ce610e6a93fd691b76" name="Mesa" arch="src">
  <version epoch="0" ver="24.2.7" rel="393.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1732017600">- Update to release 24.2.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.7
- supersedes 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch</changelog>
</package>
<package pkgid="55cfba982f698fdd5645e9dc1dc38dc6dcf11b1dd82a74391d16d27c298f3ea764dded38468c45a7955949dac4c61c61efeff399017b99aed7854cbdd8887a0a" name="Mesa" arch="x86_64">
  <version epoch="0" ver="24.2.7" rel="393.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1732017600">- Update to release 24.2.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.7
- supersedes 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch</changelog>
</package>
<package pkgid="d4c56bbf4550b4cc3d7cb635d574d5222803663ca344ce18ee2d087e0cdd4034a2e406b72e8aaf10f06c23946e469cdb5bf9f7e088baaf27aefb42c744087a95" name="Mesa-32bit" arch="x86_64">
  <version epoch="0" ver="24.1.3" rel="390.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860800">- Update to bugfix release 24.0.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.6.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860801">-  Update to bugfix release 24.0.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.7.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
</package>
<package pkgid="b544ec85b5cd5636e51e40dc525dc2a527f94ba18881a9f751b648f79d7168e04004e6928ebb8b9505c07cc8602adaca1c20edac50eeb90514d7d142d9b46532" name="Mesa-32bit" arch="x86_64">
  <version epoch="0" ver="24.1.7" rel="391.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="73157ccb87dc01c1065b99531d5396dd8a8b3845cc448886dbcaf9bc26c04de1757aaa187c90ff1badd5a8faa92317bc75a3a70b2b5dac5b91d87815b6ab515c" name="Mesa-32bit" arch="x86_64">
  <version epoch="0" ver="24.2.6" rel="392.1"/>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1725796800">- Update to release 24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.0
- refreshed the following patches with quilt:
  * U_fix-mpeg1_2-decode-mesa-20.2.patch
  * n_add-Mesa-headers-again.patch
  * n_stop-iris-flicker.patch
  * u_dep_xcb.patch
  * u_fix_rust_bindgen.patch
- dropped U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- New BuildRequires:
  * python3-PyYAML
- enable llvm also for non-driver build to fix:
  "llvmpipe requires LLVM and is enabled, but LLVM is disabled".</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
</package>
<package pkgid="9f6ca5a0a5ef0cfccf9f2bb3369cf10e33cd2c484031d1e4af0f46391eb06a99bc5579320e7e5164e35191a30d1518f18f04647f8bb59517e4a648d6dd2830d4" name="Mesa-32bit" arch="x86_64">
  <version epoch="0" ver="24.2.7" rel="393.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1732017600">- Update to release 24.2.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.7
- supersedes 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch</changelog>
</package>
<package pkgid="da77bfcbc76bfa5efdbe96273a230b6afa8c9b0ab07dd1c1a827261ceff662db5fb186627c6eebfd6787e39f61bbf1ea241df6c850aba038584cd71cb472c76b" name="Mesa-KHR-devel" arch="i586">
  <version epoch="0" ver="24.1.3" rel="390.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860800">- Update to bugfix release 24.0.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.6.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860801">-  Update to bugfix release 24.0.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.7.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
</package>
<package pkgid="65097932912bf36269b063ff75509e41d3b2091fb653e5e34a249554e7763c427470f7951106931ae817f833d0cc4e36fc558bb73adba8c01016068bd8606ead" name="Mesa-KHR-devel" arch="x86_64">
  <version epoch="0" ver="24.1.3" rel="390.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860800">- Update to bugfix release 24.0.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.6.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860801">-  Update to bugfix release 24.0.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.7.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
</package>
<package pkgid="abfbcf77b0bcf258222b2427709e5a05ad5dc70cecd7a6eacd5af2a93e52dc129bee1337f1ffd5178c6b071fed21c9082749970a82e39063403657c07530f811" name="Mesa-KHR-devel" arch="i586">
  <version epoch="0" ver="24.1.7" rel="391.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="498a9f0cacae48307005ee6012b2a06612be00e2299c56c31c6e3de983641801346e893f4327521f86097c638b6e85ad701f4942eb36088ea18360062cf88744" name="Mesa-KHR-devel" arch="x86_64">
  <version epoch="0" ver="24.1.7" rel="391.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="e9f2f5f24082cd43c988f5195558feb14df5d9a5aa28c34a03b4488761fb72662ed1e0887deb06d0053cb155a02c5bc970d81f4a86b856ecda23f727af2a115b" name="Mesa-KHR-devel" arch="i586">
  <version epoch="0" ver="24.2.6" rel="392.1"/>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1725796800">- Update to release 24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.0
- refreshed the following patches with quilt:
  * U_fix-mpeg1_2-decode-mesa-20.2.patch
  * n_add-Mesa-headers-again.patch
  * n_stop-iris-flicker.patch
  * u_dep_xcb.patch
  * u_fix_rust_bindgen.patch
- dropped U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- New BuildRequires:
  * python3-PyYAML
- enable llvm also for non-driver build to fix:
  "llvmpipe requires LLVM and is enabled, but LLVM is disabled".</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
</package>
<package pkgid="87611763fa32d94c8f530573a77adb1c72b175cdac36b9bd0e0c287b63cd9cb93f9bc21c3765c707f5dc104a864242c6522cb4d93aa4545f89d730346593f1f6" name="Mesa-KHR-devel" arch="x86_64">
  <version epoch="0" ver="24.2.6" rel="392.1"/>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1725796800">- Update to release 24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.0
- refreshed the following patches with quilt:
  * U_fix-mpeg1_2-decode-mesa-20.2.patch
  * n_add-Mesa-headers-again.patch
  * n_stop-iris-flicker.patch
  * u_dep_xcb.patch
  * u_fix_rust_bindgen.patch
- dropped U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- New BuildRequires:
  * python3-PyYAML
- enable llvm also for non-driver build to fix:
  "llvmpipe requires LLVM and is enabled, but LLVM is disabled".</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
</package>
<package pkgid="1c4d8730aa43e73d11a4f66181a9b9acbe47bc51b2572f324f36e7a68a96cddfcdc2d1df40ee9c01440a208b90b5a4dba50bf1e10769c4c61b42a99ae2d4b7fc" name="Mesa-KHR-devel" arch="i586">
  <version epoch="0" ver="24.2.7" rel="393.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1732017600">- Update to release 24.2.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.7
- supersedes 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch</changelog>
</package>
<package pkgid="dbf0957ceffa2aa2dfaa261a65ac617bbbe9b4d78e8905d116c39fa12357f41c408297b800d769032899a01269e47e5773afe25f39014c92f560479135d40250" name="Mesa-KHR-devel" arch="x86_64">
  <version epoch="0" ver="24.2.7" rel="393.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1732017600">- Update to release 24.2.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.7
- supersedes 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch</changelog>
</package>
<package pkgid="3d724da55c4ff297ab08267a96efa6c98c9d9ca6fc1029d257e6fe66bedbd47852daf4649bab7140c04471e9223e3b78598b82178a52406c9e68bae102374aae" name="Mesa-debugsource" arch="i586">
  <version epoch="0" ver="24.1.3" rel="390.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860800">- Update to bugfix release 24.0.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.6.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860801">-  Update to bugfix release 24.0.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.7.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
</package>
<package pkgid="a993dc3c21094da9453c28863760315f7c5778635d27a245f6ce29c8b4dd3696fe9abe02b5249df59e86716252150322459bbf0f5307d40b930c914787a72c53" name="Mesa-debugsource" arch="x86_64">
  <version epoch="0" ver="24.1.3" rel="390.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860800">- Update to bugfix release 24.0.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.6.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860801">-  Update to bugfix release 24.0.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.7.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
</package>
<package pkgid="a1f6776aa64c1f633bc1c54c3dcc4deb8beb51e6d9ee34f97ea325e295dcba61df23127af37dd3ae5781de7eecb4a9e73cd3bcd333fea968f9963a7054350175" name="Mesa-debugsource" arch="i586">
  <version epoch="0" ver="24.1.7" rel="391.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="f28cb929b4d13602fa4293cc8d01052ab5524db6a3ae0b6e015144062bb973d500eff20a2d0611997227ec09588442b2531402125ae00790e22f7f34e3fa06b3" name="Mesa-debugsource" arch="x86_64">
  <version epoch="0" ver="24.1.7" rel="391.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="455203c72887a1ba1483f872a1a2f653a3fde10a2bae4db8e4e8280a8b5d5a1b313fe011ded1e12db1d49be174bc9f7b3f70f109ff84ca63bf57941053369b68" name="Mesa-debugsource" arch="i586">
  <version epoch="0" ver="24.2.6" rel="392.1"/>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1725796800">- Update to release 24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.0
- refreshed the following patches with quilt:
  * U_fix-mpeg1_2-decode-mesa-20.2.patch
  * n_add-Mesa-headers-again.patch
  * n_stop-iris-flicker.patch
  * u_dep_xcb.patch
  * u_fix_rust_bindgen.patch
- dropped U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- New BuildRequires:
  * python3-PyYAML
- enable llvm also for non-driver build to fix:
  "llvmpipe requires LLVM and is enabled, but LLVM is disabled".</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
</package>
<package pkgid="78499d0a9879cf3865ccffe6e1380b6d771d6f0266bf104383f11581897546a5e06f6df0eae998da35f25d2836dbe93f15a0f3741c23194391365c0a642c8cc1" name="Mesa-debugsource" arch="x86_64">
  <version epoch="0" ver="24.2.6" rel="392.1"/>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1725796800">- Update to release 24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.0
- refreshed the following patches with quilt:
  * U_fix-mpeg1_2-decode-mesa-20.2.patch
  * n_add-Mesa-headers-again.patch
  * n_stop-iris-flicker.patch
  * u_dep_xcb.patch
  * u_fix_rust_bindgen.patch
- dropped U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- New BuildRequires:
  * python3-PyYAML
- enable llvm also for non-driver build to fix:
  "llvmpipe requires LLVM and is enabled, but LLVM is disabled".</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
</package>
<package pkgid="c8f59d269ad0ef149216977da513f510d757391351e2f4d291730fd1cfdd4ecb458a82d03913ddbb8b31643b8867430b50a8b0411c3735f45408b5423989be69" name="Mesa-debugsource" arch="i586">
  <version epoch="0" ver="24.2.7" rel="393.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1732017600">- Update to release 24.2.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.7
- supersedes 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch</changelog>
</package>
<package pkgid="6cf3d6eec81931ebcfac4b227cca1b7fa068af5538f85499f6e417be33d85e796f388c585f945dd44e8d5239646ddac2c7dfc191497e24c7d6b7d28f6e0c3882" name="Mesa-debugsource" arch="x86_64">
  <version epoch="0" ver="24.2.7" rel="393.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1732017600">- Update to release 24.2.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.7
- supersedes 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch</changelog>
</package>
<package pkgid="5c5b55f374491f0441f9332a8bc053cdabe9a2f82c8a30db5a568b4d960c4363fffe1bacf482db4f3f7179916e9817cdb778a43d2ae936a75d090f2f35cd0715" name="Mesa-devel" arch="i586">
  <version epoch="0" ver="24.1.3" rel="390.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860800">- Update to bugfix release 24.0.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.6.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860801">-  Update to bugfix release 24.0.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.7.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
</package>
<package pkgid="e950ff60fcb7404e85ed41d5c2571ecdc478eb5757d753763b4be5bfd2e1937d738d1d96674d8a150f77542c2ab40046d32191b90e0442d89d0b8ca15c2648b9" name="Mesa-devel" arch="x86_64">
  <version epoch="0" ver="24.1.3" rel="390.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860800">- Update to bugfix release 24.0.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.6.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860801">-  Update to bugfix release 24.0.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.7.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
</package>
<package pkgid="b090f834272d915b66f26a0b2e8f8ebadfbdcc08f9c8bed337336cf102514d726959eb6844989ad2d67ef8a0fac0eacc4aa3df1858b4c1784b58f66b6f3f166f" name="Mesa-devel" arch="i586">
  <version epoch="0" ver="24.1.7" rel="391.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="df165dd39bedab83b88c717f34df0ca26ad6dcda8fc942b830e1498a2e13eeb98637bb23435441738f50cde3aed26cd330a9349a12d464f160b3b5b9657cc3a0" name="Mesa-devel" arch="x86_64">
  <version epoch="0" ver="24.1.7" rel="391.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="98ce9701f05da21d4e193858b27a71061dda32be4317755245dd31fecc2776fe27ec2bc900b2751ca84a2a63cd304482959d79752d47d98a97926c3abeb84fb1" name="Mesa-devel" arch="i586">
  <version epoch="0" ver="24.2.6" rel="392.1"/>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1725796800">- Update to release 24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.0
- refreshed the following patches with quilt:
  * U_fix-mpeg1_2-decode-mesa-20.2.patch
  * n_add-Mesa-headers-again.patch
  * n_stop-iris-flicker.patch
  * u_dep_xcb.patch
  * u_fix_rust_bindgen.patch
- dropped U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- New BuildRequires:
  * python3-PyYAML
- enable llvm also for non-driver build to fix:
  "llvmpipe requires LLVM and is enabled, but LLVM is disabled".</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
</package>
<package pkgid="97345d591255b0d2555f577d4dd7e6221d6a054f35ad2cdc8fc2c3b892569c7423f1e0f7291dfe45a2e46b77713eabedc98d3caebc3c5697e31a52f2c7b9012d" name="Mesa-devel" arch="x86_64">
  <version epoch="0" ver="24.2.6" rel="392.1"/>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1725796800">- Update to release 24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.0
- refreshed the following patches with quilt:
  * U_fix-mpeg1_2-decode-mesa-20.2.patch
  * n_add-Mesa-headers-again.patch
  * n_stop-iris-flicker.patch
  * u_dep_xcb.patch
  * u_fix_rust_bindgen.patch
- dropped U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- New BuildRequires:
  * python3-PyYAML
- enable llvm also for non-driver build to fix:
  "llvmpipe requires LLVM and is enabled, but LLVM is disabled".</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
</package>
<package pkgid="a163597ee4381f6c2df7e1e0270eaf61ea02dc52acfaa8537dcbc7e70e679245dd4ca571b6ba90f72508360c1f483e8834bb80164ac7a95781cb57c0c5e2af26" name="Mesa-devel" arch="i586">
  <version epoch="0" ver="24.2.7" rel="393.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1732017600">- Update to release 24.2.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.7
- supersedes 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch</changelog>
</package>
<package pkgid="02aa0df4f45c4f59646aaabd088e1443cbf1cbee97a1c1527f3a2950f3b1877d644456d3a1f5664a8a3da4a4afa1ea342c26ff43dfd5c272fea78321fd3238b5" name="Mesa-devel" arch="x86_64">
  <version epoch="0" ver="24.2.7" rel="393.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1732017600">- Update to release 24.2.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.7
- supersedes 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch</changelog>
</package>
<package pkgid="191cbaf7ab80c989ce62e9add118120bebf0cae1e951d95fd18870bf76123b0ca1ed6d8d9883652022141a9b8bdedd269cce750e666518f209645f1ab51b2f7d" name="Mesa-dri" arch="i586">
  <version epoch="0" ver="24.1.3" rel="390.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860800">- Update to bugfix release 24.0.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.6.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860801">-  Update to bugfix release 24.0.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.7.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
</package>
<package pkgid="a7426ae0e40c59978790cf2fc2eb14dffc823c0437487d82ad11f2b9d31c2209d01c834656fa61131b888f6558a93c2259ea47128c6b15d137ac9e1ae57f02aa" name="Mesa-dri" arch="x86_64">
  <version epoch="0" ver="24.1.3" rel="390.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860800">- Update to bugfix release 24.0.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.6.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860801">-  Update to bugfix release 24.0.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.7.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
</package>
<package pkgid="b002a7f7476529a58de63af8c71c3341a9dc89937a19a49efc0bae65806d7d4302a50acd0029451afe13c153f088a02bd282dd738ae4631d6554b53520e83426" name="Mesa-dri" arch="i586">
  <version epoch="0" ver="24.1.7" rel="391.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="9c4f55e0ac1cc1d431e34807f2772ba1f1ee4d7520d6f7f1cc8c6066948a193b7c91ac9baf66c199a6d8603bb2bb930ea48410ed2bda86233696c254979e0b0d" name="Mesa-dri" arch="x86_64">
  <version epoch="0" ver="24.1.7" rel="391.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="7c227262eea3560eb126bc318e1d9212618b65b0f9e8dffc41e9df8bb2e86ed93dd33c6fda7ad2de3b6b949a7d0972dd4aed4d786fc8ef7c7a506f1623729b4c" name="Mesa-dri" arch="i586">
  <version epoch="0" ver="24.1.7" rel="391.2"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="bf697a1b8e7a8019f09eafc183eb17ffd489100960273e440ca3a220416cbbc7cae1a0d2360882deeea797bbfc62da3a8bc77e9910d3fe0ccf14c326f14f8f41" name="Mesa-dri" arch="x86_64">
  <version epoch="0" ver="24.1.7" rel="391.2"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="10c332ce093beb6492a81cdd0ca570f64feb7f9e2cb9926e3fdf9adc483533d98e117225f82b325deaba0d638127861bbe3c794904d03622c35ac94877a80824" name="Mesa-dri" arch="i586">
  <version epoch="0" ver="24.2.6" rel="392.1"/>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1725796800">- Update to release 24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.0
- refreshed the following patches with quilt:
  * U_fix-mpeg1_2-decode-mesa-20.2.patch
  * n_add-Mesa-headers-again.patch
  * n_stop-iris-flicker.patch
  * u_dep_xcb.patch
  * u_fix_rust_bindgen.patch
- dropped U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- New BuildRequires:
  * python3-PyYAML
- enable llvm also for non-driver build to fix:
  "llvmpipe requires LLVM and is enabled, but LLVM is disabled".</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
</package>
<package pkgid="1219399056288b115110eeb7360b23a330e869ab9d14b3be369d20260ddd50a4da69eece93ec1617d209f9538606d41c6264bdeedc69142bbffb56ec196bbf4c" name="Mesa-dri" arch="x86_64">
  <version epoch="0" ver="24.2.6" rel="392.1"/>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1725796800">- Update to release 24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.0
- refreshed the following patches with quilt:
  * U_fix-mpeg1_2-decode-mesa-20.2.patch
  * n_add-Mesa-headers-again.patch
  * n_stop-iris-flicker.patch
  * u_dep_xcb.patch
  * u_fix_rust_bindgen.patch
- dropped U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- New BuildRequires:
  * python3-PyYAML
- enable llvm also for non-driver build to fix:
  "llvmpipe requires LLVM and is enabled, but LLVM is disabled".</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
</package>
<package pkgid="a250d55bf6f4de6e96b51094c634f54dad8448020d63fd837e44bb7c2ab2ba41d7e0928bdf04dee58a25e79c30bd75a3668a885734948eee3a36d65034b05d6a" name="Mesa-dri" arch="i586">
  <version epoch="0" ver="24.2.7" rel="393.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1732017600">- Update to release 24.2.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.7
- supersedes 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch</changelog>
</package>
<package pkgid="b74a0603fd5bb14399a8ce3cefdf0b745f02c411165a35891d23fe39ebbf2f9f4e1576bab2b6cd09eac410c213826d80da13b4fbcb84785c7d0c1f82dc02d0aa" name="Mesa-dri" arch="x86_64">
  <version epoch="0" ver="24.2.7" rel="393.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1732017600">- Update to release 24.2.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.7
- supersedes 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch</changelog>
</package>
<package pkgid="88e69e489271922395fed8e0546cdcbfa3b5a463dfef3f8b75fbd8dbde8334e106be344fa0b39f84bc9afbf599461e7defde26572db738c276efeff261e0910b" name="Mesa-dri-32bit" arch="x86_64">
  <version epoch="0" ver="24.1.3" rel="390.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860800">- Update to bugfix release 24.0.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.6.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860801">-  Update to bugfix release 24.0.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.7.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
</package>
<package pkgid="6ba281d37872e983c02f14311ce4d984ee446a303535b1249def3c40e14905707a9c9fc942d6a1bac06bd156cab385ec273ba82ee791f6108cdbc7674eb2f295" name="Mesa-dri-32bit" arch="x86_64">
  <version epoch="0" ver="24.1.7" rel="391.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="5aba699efab8fad5cf2de08d0121d76ecbabc628827e223b938e756761bcbe1f20cc0bb39c106b0ac1a0c0394ccaa302b9736d26bcf791a448cc92a7c0c56926" name="Mesa-dri-32bit" arch="x86_64">
  <version epoch="0" ver="24.1.7" rel="391.2"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="77fd4b1414384834db2a3dd95b92368d53935089b3ba6d1342143fa9164bd7ae73ab4940a7729e026dd6ac7f6d4349ae0c0e670fb460cd586a01261a1d9b2b4d" name="Mesa-dri-32bit" arch="x86_64">
  <version epoch="0" ver="24.2.6" rel="392.1"/>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1725796800">- Update to release 24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.0
- refreshed the following patches with quilt:
  * U_fix-mpeg1_2-decode-mesa-20.2.patch
  * n_add-Mesa-headers-again.patch
  * n_stop-iris-flicker.patch
  * u_dep_xcb.patch
  * u_fix_rust_bindgen.patch
- dropped U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- New BuildRequires:
  * python3-PyYAML
- enable llvm also for non-driver build to fix:
  "llvmpipe requires LLVM and is enabled, but LLVM is disabled".</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
</package>
<package pkgid="42bda1100a796d2c48d29c975ba7c7dd1500166c6ae01aca8112737081e0a27b18e8768899ad351a5668dca15bb3c14ac6d60f579f390f9f5ba527cc0aacc3f9" name="Mesa-dri-32bit" arch="x86_64">
  <version epoch="0" ver="24.2.7" rel="393.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1732017600">- Update to release 24.2.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.7
- supersedes 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch</changelog>
</package>
<package pkgid="acbbc1b6cf5b7daceddf6fd5c4f593b41df0455c4bfb39c527b494600db810e3b09fd643cabcb008004f01b4997242e9da2a089e809248064f1188f0b4e22c3e" name="Mesa-dri-32bit-debuginfo" arch="x86_64">
  <version epoch="0" ver="24.1.3" rel="390.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860800">- Update to bugfix release 24.0.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.6.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860801">-  Update to bugfix release 24.0.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.7.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
</package>
<package pkgid="8627a6d2cdbabe0b33f552b308542fc8134d4cec89800ccd11e35c852a4db990aa2d0149062741c490ea34b58e2e4a7ea9fa3e124681be28abecf08b5677ac05" name="Mesa-dri-32bit-debuginfo" arch="x86_64">
  <version epoch="0" ver="24.1.7" rel="391.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="e02a545c260a65be2bfac9e564bdbc4f83192f29ae4eb58afcd9166cc13e9c5cf39f092fc2c4d1cc2cb94bc5d8429b68c3f9a3d42f5e10e4873f235b5f142dae" name="Mesa-dri-32bit-debuginfo" arch="x86_64">
  <version epoch="0" ver="24.1.7" rel="391.2"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="fefccc9ee0ea2b15bc1553642ba789098e689443ef006b272ed9246225afadba1074d4bcb1448144615b96378ecb2ae67e6d9853c71310fcaf27882aa1059f56" name="Mesa-dri-32bit-debuginfo" arch="x86_64">
  <version epoch="0" ver="24.2.6" rel="392.1"/>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1725796800">- Update to release 24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.0
- refreshed the following patches with quilt:
  * U_fix-mpeg1_2-decode-mesa-20.2.patch
  * n_add-Mesa-headers-again.patch
  * n_stop-iris-flicker.patch
  * u_dep_xcb.patch
  * u_fix_rust_bindgen.patch
- dropped U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- New BuildRequires:
  * python3-PyYAML
- enable llvm also for non-driver build to fix:
  "llvmpipe requires LLVM and is enabled, but LLVM is disabled".</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
</package>
<package pkgid="20f76a854c2cc56ef60b54b6262c24fafd2ab5a35c396a4daf58b5b86ca394a830d4bd38956ee3eac6e7f1c962a55a3db39c387772e4be8a38d9c7700c54aa81" name="Mesa-dri-32bit-debuginfo" arch="x86_64">
  <version epoch="0" ver="24.2.7" rel="393.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1732017600">- Update to release 24.2.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.7
- supersedes 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch</changelog>
</package>
<package pkgid="1271cd45afeb7fda79db99ad8a51943b027ad2371678f5291bee698ed8e9bd0e19c6823b35b33021f7161ad0d1c96d4b5714f8f5e62cec81ba9425683e47f3c6" name="Mesa-dri-debuginfo" arch="i586">
  <version epoch="0" ver="24.1.3" rel="390.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860800">- Update to bugfix release 24.0.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.6.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860801">-  Update to bugfix release 24.0.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.7.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
</package>
<package pkgid="ecfe2ff34dce5787f357318b19725d7a5742a1dbfb122493c8bab55f2017d1ca68c0758261132ce8d7002b057fef59a328bcebb73c0a0ea2a9ac40b75c66fa22" name="Mesa-dri-debuginfo" arch="x86_64">
  <version epoch="0" ver="24.1.3" rel="390.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860800">- Update to bugfix release 24.0.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.6.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860801">-  Update to bugfix release 24.0.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.7.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
</package>
<package pkgid="3c7a36aeb797890c157675d5b6b044eb01f1dc3eb2d2b9259cc8da41252994fcacdf2e4020c4331baee1977d9e526211cafcb44a391664f9a983038c4d467602" name="Mesa-dri-debuginfo" arch="i586">
  <version epoch="0" ver="24.1.7" rel="391.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="f1f5fd65fe7ce30951298be32a2efb4d3266b550e3edba8615f8c42505b6eba4dd4257c2df24838d91207d5b6c0cb1cb384eb3bdd44a467874899e5d06c3a90b" name="Mesa-dri-debuginfo" arch="x86_64">
  <version epoch="0" ver="24.1.7" rel="391.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="372acddf6f1d66e00f4bfad7eff7ecf6f9dedaca756d3e249a43073f1f3d09d022765552c69eaef9daa5d08f1c035a5d66e559667ad6df7e5ac1813bd618c49f" name="Mesa-dri-debuginfo" arch="i586">
  <version epoch="0" ver="24.1.7" rel="391.2"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="828193dcbc81589db1266c89ff622a2f7666a846da844eca00c40e09bae9b75bca7b6b05661dda251be14f3f95fbd4483d71feb111a452061abbb38c6f4450ea" name="Mesa-dri-debuginfo" arch="x86_64">
  <version epoch="0" ver="24.1.7" rel="391.2"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="a6cab51d4fa468c8bd7ef5185f92480b5e99b2f48855b4ec124575d5c8ac97883ddfec44c4b6956da2adb7738d1ba6c42933aa8619af0563fce1e9df5447e30f" name="Mesa-dri-debuginfo" arch="i586">
  <version epoch="0" ver="24.2.6" rel="392.1"/>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1725796800">- Update to release 24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.0
- refreshed the following patches with quilt:
  * U_fix-mpeg1_2-decode-mesa-20.2.patch
  * n_add-Mesa-headers-again.patch
  * n_stop-iris-flicker.patch
  * u_dep_xcb.patch
  * u_fix_rust_bindgen.patch
- dropped U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- New BuildRequires:
  * python3-PyYAML
- enable llvm also for non-driver build to fix:
  "llvmpipe requires LLVM and is enabled, but LLVM is disabled".</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
</package>
<package pkgid="507ba067d811017eecb1c426984392f87e1bef0ba9a809bf50273e4aa8856eb92de07151cf2df5075b638ff3a2b55548734ea73b96fbf511470ad6f67c16b28a" name="Mesa-dri-debuginfo" arch="x86_64">
  <version epoch="0" ver="24.2.6" rel="392.1"/>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1725796800">- Update to release 24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.0
- refreshed the following patches with quilt:
  * U_fix-mpeg1_2-decode-mesa-20.2.patch
  * n_add-Mesa-headers-again.patch
  * n_stop-iris-flicker.patch
  * u_dep_xcb.patch
  * u_fix_rust_bindgen.patch
- dropped U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- New BuildRequires:
  * python3-PyYAML
- enable llvm also for non-driver build to fix:
  "llvmpipe requires LLVM and is enabled, but LLVM is disabled".</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
</package>
<package pkgid="49dc56b0189de8bb6e027f9817b5c8e85783d348e59cc79e228d1d90edef631b1234a7f79198203e620465a1859c2baec4f0be91d254487ed16eefb3cab27c71" name="Mesa-dri-debuginfo" arch="i586">
  <version epoch="0" ver="24.2.7" rel="393.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1732017600">- Update to release 24.2.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.7
- supersedes 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch</changelog>
</package>
<package pkgid="e4ba04ed115ec77ef927db9f091c1d451884c356117e9339526ae5ca4088680e919d3864463fefd91b62028b286a0808265ee815dd656dacc9885d849a6fed9f" name="Mesa-dri-debuginfo" arch="x86_64">
  <version epoch="0" ver="24.2.7" rel="393.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1732017600">- Update to release 24.2.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.7
- supersedes 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch</changelog>
</package>
<package pkgid="12ae28b5d0f28f3d583c19173879cd3eb3fb9a7fd66071619bb819d3ed4094950fbd7998841b479c8e540302ae8655060eb13e469c8c145ee011ac771f86183a" name="Mesa-dri-devel" arch="i586">
  <version epoch="0" ver="24.1.3" rel="390.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860800">- Update to bugfix release 24.0.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.6.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860801">-  Update to bugfix release 24.0.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.7.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
</package>
<package pkgid="71519c7780e3529b4b29a7a296124d1ccafb827c9762e4b369097045fefa1cca2d95293423ed5433fe850ad99faeb8cb86152b4f9ba007dc7b9fc5ee8e124183" name="Mesa-dri-devel" arch="x86_64">
  <version epoch="0" ver="24.1.3" rel="390.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860800">- Update to bugfix release 24.0.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.6.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860801">-  Update to bugfix release 24.0.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.7.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
</package>
<package pkgid="01f449c4639068e49fc555051ccafd93a2bf73a228e2a7c4ab75eb661be0de8bf672253a8223b68393fa25155c718f51c40f18b43689de10696d76f99bb7c1c0" name="Mesa-dri-devel" arch="i586">
  <version epoch="0" ver="24.1.7" rel="391.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="a5681185524e4a6080b1c93dc927b5d4c34b605be5577d45cee4af5440d897620e77dd2a4ac92e841ff6720a50da456e1ed4a9b0ce0d7af4a1c729d5f350faf1" name="Mesa-dri-devel" arch="x86_64">
  <version epoch="0" ver="24.1.7" rel="391.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="d2924c84b695e25b3560463e120e6c6d1a19cc2545a0e3315c1db89097376dd8dc184ad09f85fdfddfbf989a433df6e354a76ceb083dcff2d1af860e4f7f658e" name="Mesa-dri-devel" arch="i586">
  <version epoch="0" ver="24.2.6" rel="392.1"/>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1725796800">- Update to release 24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.0
- refreshed the following patches with quilt:
  * U_fix-mpeg1_2-decode-mesa-20.2.patch
  * n_add-Mesa-headers-again.patch
  * n_stop-iris-flicker.patch
  * u_dep_xcb.patch
  * u_fix_rust_bindgen.patch
- dropped U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- New BuildRequires:
  * python3-PyYAML
- enable llvm also for non-driver build to fix:
  "llvmpipe requires LLVM and is enabled, but LLVM is disabled".</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
</package>
<package pkgid="180c39cd8c6c583e323398462d7fee8b562fdf948f6fafa04fad7b6c4c31b968bfd335a376c3dc9cee4bc309590e8cb17d951cac6a9db8f8023510926c121210" name="Mesa-dri-devel" arch="x86_64">
  <version epoch="0" ver="24.2.6" rel="392.1"/>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1725796800">- Update to release 24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.0
- refreshed the following patches with quilt:
  * U_fix-mpeg1_2-decode-mesa-20.2.patch
  * n_add-Mesa-headers-again.patch
  * n_stop-iris-flicker.patch
  * u_dep_xcb.patch
  * u_fix_rust_bindgen.patch
- dropped U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- New BuildRequires:
  * python3-PyYAML
- enable llvm also for non-driver build to fix:
  "llvmpipe requires LLVM and is enabled, but LLVM is disabled".</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
</package>
<package pkgid="851266b63496a0e6faa555e265daec7bbdfacf244560bb17fff362140c76693a00cdcc9d951630ef21cbfdf169efbbee0837fca0204f60e9bb9a447c3222bc9e" name="Mesa-dri-devel" arch="i586">
  <version epoch="0" ver="24.2.7" rel="393.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1732017600">- Update to release 24.2.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.7
- supersedes 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch</changelog>
</package>
<package pkgid="e8b5a3d331ba412b3f1d8cb0fe350a599ba24e5b251792252ffa1213144157b95c8805c224e200f7af215267b2dfc5e8ed8697b512b0d3c13b1ec014e19771fa" name="Mesa-dri-devel" arch="x86_64">
  <version epoch="0" ver="24.2.7" rel="393.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1732017600">- Update to release 24.2.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.7
- supersedes 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch</changelog>
</package>
<package pkgid="122d0e438742d24f5a20f3a7da02d80fa1150d14b95a52f9abc04853e854abd4ae2ffdb6d05f7a3ae29f4eb1ca3c0dec3df95a9d94ba7d34a8bcaf6939006dee" name="Mesa-dri-nouveau" arch="i586">
  <version epoch="0" ver="24.1.3" rel="390.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860800">- Update to bugfix release 24.0.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.6.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860801">-  Update to bugfix release 24.0.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.7.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
</package>
<package pkgid="4fe63e1c70769e18912f19927fba1235ade7259826507382584c9e385fab4a63c7dc16d3fd7ee67485bca03f5fa4f3d8d092ce63cca3e4c132aedb85b608ca51" name="Mesa-dri-nouveau" arch="x86_64">
  <version epoch="0" ver="24.1.3" rel="390.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860800">- Update to bugfix release 24.0.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.6.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860801">-  Update to bugfix release 24.0.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.7.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
</package>
<package pkgid="522779c7841da13e0dde05d1b1bd25dac4867116ca492cce0d1811cd7097d895465309ccc7bfeb54a62649377f428596848077bb2e91710cc9832b8125421b03" name="Mesa-dri-nouveau" arch="i586">
  <version epoch="0" ver="24.1.7" rel="391.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="b708fa627c5a2bbe25e6b1155bfb8955c4b4439eb3dfc5c683e75a6a85afcb3c048559f4e56618368b76e6d3a6284b1951fc8e3577ecfad1aa34ccacbacbf581" name="Mesa-dri-nouveau" arch="x86_64">
  <version epoch="0" ver="24.1.7" rel="391.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="0264c5bb4f8e40f0da5cfc26039e5e5e9b9b384ad4e997c56376ddd17825a54a4de3d719edd9b762a00ea955e189b22c555feaa2fcf13a9134c568c298930458" name="Mesa-dri-nouveau" arch="i586">
  <version epoch="0" ver="24.1.7" rel="391.2"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="fdf6a536a19163138a3e8dec4bfe7f0cbb0eb6fc3d567f34b8197043bb3edd1938f22d30e68cf1462be5399fae3dc618ab49ce571544dca594125bfd5e000fd3" name="Mesa-dri-nouveau" arch="x86_64">
  <version epoch="0" ver="24.1.7" rel="391.2"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="5de3167f3942933c0302de08bbbe5f9d401595b4a7f9b880b76222549a770ed8d082ef3513e5105e0d9bbc27f30bac7ccb37379ba3023d4fafa379e3089a322a" name="Mesa-dri-nouveau" arch="i586">
  <version epoch="0" ver="24.2.6" rel="392.1"/>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1725796800">- Update to release 24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.0
- refreshed the following patches with quilt:
  * U_fix-mpeg1_2-decode-mesa-20.2.patch
  * n_add-Mesa-headers-again.patch
  * n_stop-iris-flicker.patch
  * u_dep_xcb.patch
  * u_fix_rust_bindgen.patch
- dropped U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- New BuildRequires:
  * python3-PyYAML
- enable llvm also for non-driver build to fix:
  "llvmpipe requires LLVM and is enabled, but LLVM is disabled".</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
</package>
<package pkgid="30152c17766526ece297325e8a8fad075ab45d31adb3a965f81c6e720b0d4f59633abf44cc3831b1f85ac6fa1c2a2984d5df1dcc28c7c0ef7dfdbed11a687818" name="Mesa-dri-nouveau" arch="x86_64">
  <version epoch="0" ver="24.2.6" rel="392.1"/>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1725796800">- Update to release 24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.0
- refreshed the following patches with quilt:
  * U_fix-mpeg1_2-decode-mesa-20.2.patch
  * n_add-Mesa-headers-again.patch
  * n_stop-iris-flicker.patch
  * u_dep_xcb.patch
  * u_fix_rust_bindgen.patch
- dropped U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- New BuildRequires:
  * python3-PyYAML
- enable llvm also for non-driver build to fix:
  "llvmpipe requires LLVM and is enabled, but LLVM is disabled".</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
</package>
<package pkgid="673d09e29340d2606b19c709ff6976ae0e76a34c96cf892feb5f1a091a75c9174139cbbdaeb6ee68c555dd5b980fcbfd2e54407f14662d4767449996b205d67c" name="Mesa-dri-nouveau" arch="i586">
  <version epoch="0" ver="24.2.7" rel="393.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1732017600">- Update to release 24.2.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.7
- supersedes 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch</changelog>
</package>
<package pkgid="c93d026181ebdde171d8e599401028ba15efff28b65f4ba96a63e8a2aa505ea1845c7a9139442be4f8a6a42ff53b274c3d3ffa382ea285f2dbbc072751926640" name="Mesa-dri-nouveau" arch="x86_64">
  <version epoch="0" ver="24.2.7" rel="393.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1732017600">- Update to release 24.2.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.7
- supersedes 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch</changelog>
</package>
<package pkgid="de72d2fee9ef8686830ba46c03393c106b23d822f4fa835e5705d34ac4582907edace3cd7311cbbdb7e8c5116e05edbdd3af3a6b48bcc8476d32465c4d3cdd69" name="Mesa-dri-nouveau-32bit" arch="x86_64">
  <version epoch="0" ver="24.1.3" rel="390.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860800">- Update to bugfix release 24.0.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.6.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860801">-  Update to bugfix release 24.0.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.7.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
</package>
<package pkgid="f3d44078b215ce481a229c8a3c22b0842fc51fd69e12003416b76599ead4af506f64feab42ff354a268ec578b00a297bc8c59b2f8d5a669e1bf0bdb74adf8452" name="Mesa-dri-nouveau-32bit" arch="x86_64">
  <version epoch="0" ver="24.1.7" rel="391.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="1e79514cc9c4ef24f8df6f60518bbd1f5842962810c226f05ad46140d7d4846161a585cdc0427566c98ac48ed032f2dd398dc78eeceb12c765c6d24a072c772e" name="Mesa-dri-nouveau-32bit" arch="x86_64">
  <version epoch="0" ver="24.1.7" rel="391.2"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="dfc1a14a1efbd08011a00e28a510b4ec5b9c0524927e3983972226691153387387b1cf66d9dd3633353ceea26ea9714cfc0e59d0482860b8dfe2e4c0b7078179" name="Mesa-dri-nouveau-32bit" arch="x86_64">
  <version epoch="0" ver="24.2.6" rel="392.1"/>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1725796800">- Update to release 24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.0
- refreshed the following patches with quilt:
  * U_fix-mpeg1_2-decode-mesa-20.2.patch
  * n_add-Mesa-headers-again.patch
  * n_stop-iris-flicker.patch
  * u_dep_xcb.patch
  * u_fix_rust_bindgen.patch
- dropped U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- New BuildRequires:
  * python3-PyYAML
- enable llvm also for non-driver build to fix:
  "llvmpipe requires LLVM and is enabled, but LLVM is disabled".</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
</package>
<package pkgid="329ec03851d7e2b6e4693ad7b554b61a7d20fb41184882619fa276bb09a93f0c0d497709e510cfcbbbd28fa23db29875501bc8bf136f17567f8e44e7eab3ad5d" name="Mesa-dri-nouveau-32bit" arch="x86_64">
  <version epoch="0" ver="24.2.7" rel="393.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1732017600">- Update to release 24.2.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.7
- supersedes 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch</changelog>
</package>
<package pkgid="2d54b4acf807ae9c15213ddfc5cb22f8b0ec534b8bbe9fe111c4785e80c604e35d3b448680e0ad26de0ae6ddd3fec30928c5efa74a205b4c89855e4f30774496" name="Mesa-dri-nouveau-32bit-debuginfo" arch="x86_64">
  <version epoch="0" ver="24.1.3" rel="390.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860800">- Update to bugfix release 24.0.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.6.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860801">-  Update to bugfix release 24.0.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.7.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
</package>
<package pkgid="2200d067937ef728bdcb285eff64290c3f4eae42562d46b080c12a33c46689cc8dda1bad6f8fd4e45965645fbbeacc2740fa57a29d479b5893aa39614527d73c" name="Mesa-dri-nouveau-32bit-debuginfo" arch="x86_64">
  <version epoch="0" ver="24.1.7" rel="391.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="1ad315b7da86cf40fdff68159ffecebd85fbf40ee35dc9190608bd65197dc91f57518bf2a097dcb83d8bb386baa53f051f81d7e7e1bbd01ed42c97dfe46230ec" name="Mesa-dri-nouveau-32bit-debuginfo" arch="x86_64">
  <version epoch="0" ver="24.1.7" rel="391.2"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="ae4145845f804e484dd6d86e33dad7361055243d5b79944fe14f09d55268779af3b15ba1b6f8c1f97cb6077f5806a6e3e0925fc75b37501817353bd51b467d5b" name="Mesa-dri-nouveau-debuginfo" arch="i586">
  <version epoch="0" ver="24.1.3" rel="390.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860800">- Update to bugfix release 24.0.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.6.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860801">-  Update to bugfix release 24.0.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.7.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
</package>
<package pkgid="e1abf1037a3af881d9d7302a6c21f90ba99901c74a5bb137f190f9febba9835606257b8888ab9acdb5d31e2a48b132f243a03a7f02ab2ea2083ec792b22b481f" name="Mesa-dri-nouveau-debuginfo" arch="x86_64">
  <version epoch="0" ver="24.1.3" rel="390.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860800">- Update to bugfix release 24.0.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.6.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860801">-  Update to bugfix release 24.0.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.7.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
</package>
<package pkgid="b6d934dc019bf9d38e3f36ebdf3ba7b98656c324565a53c3dc4f12965d37c1253caac650bc72ff3c5f939c73b685e3df313e8e4588221f452e18a874bab3ce2a" name="Mesa-dri-nouveau-debuginfo" arch="i586">
  <version epoch="0" ver="24.1.7" rel="391.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="3ff257ac4feec8635972e35a6c5017e2b7b41d17664cdcfaf6e6ffb863851ec7d2f1745226329193fca71d5f7661f30eb6d88c3dbf0002b11511d5365d47b887" name="Mesa-dri-nouveau-debuginfo" arch="x86_64">
  <version epoch="0" ver="24.1.7" rel="391.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="61bca40ee88d614bbb74691b094476dd00a473e01325014d488324954b93d2b5adac057c4045c27ac1a5c2bdec5f886b0aedd9db20126e7531d51554d6e9b03d" name="Mesa-dri-nouveau-debuginfo" arch="i586">
  <version epoch="0" ver="24.1.7" rel="391.2"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="e227b60426b9bf7ead0882d4aa2eed05373168107a10bc55be3d004b7e338f42b760c4690e244a454911253a125a4b576647888d49f9f29d27d85ac1f8803a86" name="Mesa-dri-nouveau-debuginfo" arch="x86_64">
  <version epoch="0" ver="24.1.7" rel="391.2"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="0a0d9ab585d61003ae1d6caaf2c0ae29990da14bb1df7ea49d34cf484f146c5ccf4c16c649a066645a399162ff04024aa0439c7096de0331c3ea8c26ca1fb9dc" name="Mesa-drivers" arch="src">
  <version epoch="0" ver="24.1.3" rel="390.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860800">- Update to bugfix release 24.0.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.6.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860801">-  Update to bugfix release 24.0.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.7.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
</package>
<package pkgid="c557422c195487ca0ae4448882761861bd49fdd28a33f0d47e561d8ea16158b915b1e717cea147a7a80d41acb9b7f8b32a944d80116146fe0cad4a05cd850708" name="Mesa-drivers" arch="src">
  <version epoch="0" ver="24.1.7" rel="391.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="ae69c7ceef59bed9e1b80fbc04e2978133af82ae9d3ee4d4014d092009dfd7ca83c798361eaae467f728c4565da54ac40a8f43f64c929bea4b02af83ec4b2694" name="Mesa-drivers" arch="src">
  <version epoch="0" ver="24.1.7" rel="391.2"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="520571997cdeceec885f80933586e2ff1af5e36a26f19c0b63183f89c71e2aea531d8ccb62afa91c106002706337ca28ed068567f43295e62f1789f9247fc9ca" name="Mesa-drivers" arch="src">
  <version epoch="0" ver="24.2.6" rel="392.1"/>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1725796800">- Update to release 24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.0
- refreshed the following patches with quilt:
  * U_fix-mpeg1_2-decode-mesa-20.2.patch
  * n_add-Mesa-headers-again.patch
  * n_stop-iris-flicker.patch
  * u_dep_xcb.patch
  * u_fix_rust_bindgen.patch
- dropped U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- New BuildRequires:
  * python3-PyYAML
- enable llvm also for non-driver build to fix:
  "llvmpipe requires LLVM and is enabled, but LLVM is disabled".</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
</package>
<package pkgid="a91821decc628eddb8e7ea23b1991a3e847a104bfe1a029a7fe7e026dd6025091fb96b1f5a4a2c0fad7aa38ffff56e107135b1007781e0e9f226849b98cc40ed" name="Mesa-drivers" arch="src">
  <version epoch="0" ver="24.2.7" rel="393.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1732017600">- Update to release 24.2.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.7
- supersedes 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch</changelog>
</package>
<package pkgid="bff75be7bbe4ede65de4f5185ecc7f672097a83fc13d6b51714d7a82b2002dfc23e149e7cb27547bd95d73405c3303f48653b058627b64d31b9296fda7ddd812" name="Mesa-drivers-debugsource" arch="i586">
  <version epoch="0" ver="24.1.3" rel="390.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860800">- Update to bugfix release 24.0.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.6.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860801">-  Update to bugfix release 24.0.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.7.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
</package>
<package pkgid="217f24ed4d80cad089c126762b0f014ec3a9313f13bebe3be9c90c810e21eb952f39378ebb6a9707eb860a6940adfa7e3cca49245f066de6b3834b1e2cd1b2a2" name="Mesa-drivers-debugsource" arch="x86_64">
  <version epoch="0" ver="24.1.3" rel="390.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860800">- Update to bugfix release 24.0.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.6.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860801">-  Update to bugfix release 24.0.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.7.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
</package>
<package pkgid="311c38a8adadfc19ded4a7a6fd0b75696cf6c4a4238c42410a83abc6f9f110da1be86426b2ae430276a5d75656ae7bd5fcde007f4ba8df47e3f474ee6e1f435a" name="Mesa-drivers-debugsource" arch="i586">
  <version epoch="0" ver="24.1.7" rel="391.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="cc5fd278408dffb6eeeb9187cdb6201945ffa49115043daa79b6def583330196535d8d31cffb8b0e526d2ee87c05170965310b3177385a78625fc6349f5973e2" name="Mesa-drivers-debugsource" arch="x86_64">
  <version epoch="0" ver="24.1.7" rel="391.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="89e339be60d52b47a06d10fd00daeb4f9347fdc24b1e7d85f2a2a8dd73d7a6aae23aecfedc97edaaabeeded8a92450066710d90a5867802e44d5cf09c8a01b3d" name="Mesa-drivers-debugsource" arch="i586">
  <version epoch="0" ver="24.1.7" rel="391.2"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="f3f63950beb891c65c538f3181877cc2014bbb4d6a7f5d70be62f99bd82a14a23ed37861a733f388be661c3ac7a25957e342181278a4446169b56c2707a02089" name="Mesa-drivers-debugsource" arch="x86_64">
  <version epoch="0" ver="24.1.7" rel="391.2"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="3388d3a18ed425d452a4d9cad4c0ce67fe9876410cff51f14f4cdf695945a700382942d7c1f1325f5adda11c45c1818abc0a6779857ba51fb6f1a4534e49fcb5" name="Mesa-drivers-debugsource" arch="i586">
  <version epoch="0" ver="24.2.6" rel="392.1"/>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1725796800">- Update to release 24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.0
- refreshed the following patches with quilt:
  * U_fix-mpeg1_2-decode-mesa-20.2.patch
  * n_add-Mesa-headers-again.patch
  * n_stop-iris-flicker.patch
  * u_dep_xcb.patch
  * u_fix_rust_bindgen.patch
- dropped U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- New BuildRequires:
  * python3-PyYAML
- enable llvm also for non-driver build to fix:
  "llvmpipe requires LLVM and is enabled, but LLVM is disabled".</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
</package>
<package pkgid="8332b8f459ce07024d5d59013969072da62fc4ed4c3a7c559d050177b72b738d345f7386b58465b7dd07009dfefb60fc0f70dc27fb1a4de532d4341e084cfe3a" name="Mesa-drivers-debugsource" arch="x86_64">
  <version epoch="0" ver="24.2.6" rel="392.1"/>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1725796800">- Update to release 24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.0
- refreshed the following patches with quilt:
  * U_fix-mpeg1_2-decode-mesa-20.2.patch
  * n_add-Mesa-headers-again.patch
  * n_stop-iris-flicker.patch
  * u_dep_xcb.patch
  * u_fix_rust_bindgen.patch
- dropped U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- New BuildRequires:
  * python3-PyYAML
- enable llvm also for non-driver build to fix:
  "llvmpipe requires LLVM and is enabled, but LLVM is disabled".</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
</package>
<package pkgid="ff718a87842a987c5954faf6347ae47bcd62373b05a4b215a6202389349c07b8c6459e9db4a8fbe4cb7fec49a5e21927f0ddfc61ba16e7e9ef6b12ece407a883" name="Mesa-drivers-debugsource" arch="i586">
  <version epoch="0" ver="24.2.7" rel="393.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1732017600">- Update to release 24.2.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.7
- supersedes 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch</changelog>
</package>
<package pkgid="e065f5dd37e914bb2bead62d83e3a364d88894ede6c075e06823c45d1cf586f4cac18893e2399a9f696ddf17774d546c84ed65e864ef4d029f6eb5ba0738c986" name="Mesa-drivers-debugsource" arch="x86_64">
  <version epoch="0" ver="24.2.7" rel="393.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1732017600">- Update to release 24.2.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.7
- supersedes 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch</changelog>
</package>
<package pkgid="c14f3d139ff28de1551a20d4ccec76e67f0556ab1911a608bc7f948af5c87b040db19b316dc12eaed07380ebed90e1a919e9dd2422e180a755cf1dbacd492529" name="Mesa-gallium" arch="i586">
  <version epoch="0" ver="24.1.3" rel="390.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860800">- Update to bugfix release 24.0.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.6.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860801">-  Update to bugfix release 24.0.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.7.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
</package>
<package pkgid="775f31088869a7997c12c55be849bb6e54e6645ca0c1b88122db1ef3097e114c9d20aed5704026a5afa67e68aada35c9c71a82b7795176b841bea18cdd42eaca" name="Mesa-gallium" arch="x86_64">
  <version epoch="0" ver="24.1.3" rel="390.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860800">- Update to bugfix release 24.0.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.6.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860801">-  Update to bugfix release 24.0.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.7.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
</package>
<package pkgid="b3fad9be7fe2c685002312ce1130d8fb47de1880c0535d2d427e31dd28c17610c8f1807326344aa3f37f50148c246b4c105070a2f6c44e0b24582f4ef429aa7d" name="Mesa-gallium" arch="i586">
  <version epoch="0" ver="24.1.7" rel="391.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="6adf5938f2b5a9b9f597f9775047086ddc68e4a2090dd5b7ab079f6ab8f3d9ff77dfb1cbc27e25a1c70f7c305390d3997136026b22ee2b2850571b1d5883ebfb" name="Mesa-gallium" arch="x86_64">
  <version epoch="0" ver="24.1.7" rel="391.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="836e10f4cb1c943f8512cbcacc4cb5d434940f292b09ff8ec4024f93155727261f4b209492d45f9e272dd5d8c404de9eae3f47748b54fa7d9f8e97d617ab547f" name="Mesa-gallium" arch="i586">
  <version epoch="0" ver="24.1.7" rel="391.2"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="d0a45de6db358b1a50e8c5cc0338af99eb2a12ff0cbba6eef4834ad510da34547356de41688140b8cda89949876aaaec0db250adeba0d85049379d63e5202934" name="Mesa-gallium" arch="x86_64">
  <version epoch="0" ver="24.1.7" rel="391.2"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="97bb9fbba115dc2787449fde646eadcb556877dc32cfb9df8fc89a5650c1d8f70ba63086e685d9c6c879f836631d00d8842eba6a6c1a8f8a798f34de679a39e2" name="Mesa-gallium" arch="i586">
  <version epoch="0" ver="24.2.6" rel="392.1"/>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1725796800">- Update to release 24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.0
- refreshed the following patches with quilt:
  * U_fix-mpeg1_2-decode-mesa-20.2.patch
  * n_add-Mesa-headers-again.patch
  * n_stop-iris-flicker.patch
  * u_dep_xcb.patch
  * u_fix_rust_bindgen.patch
- dropped U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- New BuildRequires:
  * python3-PyYAML
- enable llvm also for non-driver build to fix:
  "llvmpipe requires LLVM and is enabled, but LLVM is disabled".</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
</package>
<package pkgid="01b4c69dd28c56d113eeae8cc9344af7466ad6115856e3cce289b20347ed3d733b9fac89979fb1a80bca9415e04ccbfea591811d6101bfe0da3d9338e71a118d" name="Mesa-gallium" arch="x86_64">
  <version epoch="0" ver="24.2.6" rel="392.1"/>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1725796800">- Update to release 24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.0
- refreshed the following patches with quilt:
  * U_fix-mpeg1_2-decode-mesa-20.2.patch
  * n_add-Mesa-headers-again.patch
  * n_stop-iris-flicker.patch
  * u_dep_xcb.patch
  * u_fix_rust_bindgen.patch
- dropped U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- New BuildRequires:
  * python3-PyYAML
- enable llvm also for non-driver build to fix:
  "llvmpipe requires LLVM and is enabled, but LLVM is disabled".</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
</package>
<package pkgid="48dd3aa0ad0216d0a9aedb19d31338ab4691ca52d6ca2557a37d140f8e69555a2afdd1a3fcedfb365992913cb4d072f3317b6e9c4bfc031077d81ea9146cce92" name="Mesa-gallium" arch="i586">
  <version epoch="0" ver="24.2.7" rel="393.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1732017600">- Update to release 24.2.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.7
- supersedes 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch</changelog>
</package>
<package pkgid="6de8886de2909cc36ae89f993c1a168606606a3621a8a44fe3173a37c6dc40e433d77ff19d91a196cf741a2388a24c4fe21215957ba3355beaace34f860a2173" name="Mesa-gallium" arch="x86_64">
  <version epoch="0" ver="24.2.7" rel="393.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1732017600">- Update to release 24.2.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.7
- supersedes 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch</changelog>
</package>
<package pkgid="66fd745ed8b5893c5840bc478c07cd0271a2889a8b4285c753865bb6a2aae5e9e4923a0ce4bfa7b1557027eeef19949475ff6129d20195082a0dd1e98bafd051" name="Mesa-gallium-32bit" arch="x86_64">
  <version epoch="0" ver="24.1.3" rel="390.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860800">- Update to bugfix release 24.0.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.6.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860801">-  Update to bugfix release 24.0.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.7.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
</package>
<package pkgid="87f04249efeac8b6c2795252632d33866d04b392fed07166123d9dcdefa494aca1ec921d9eb7f23071abbec194c472d878e2df4591ad3b6f1e9ed118884eabbf" name="Mesa-gallium-32bit" arch="x86_64">
  <version epoch="0" ver="24.1.7" rel="391.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="fd738bc58734f46d1f8df62e2ea01763176be9e2d33cf7039cd08ef7f6160ab478255e9bb9c7734010bb61369f2c3f03bf3392918c3f0e5e6321842efefde760" name="Mesa-gallium-32bit" arch="x86_64">
  <version epoch="0" ver="24.1.7" rel="391.2"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="c6898995355ed6258e6a71ff913d47bbeb8b329e32bf6ccdedbabaa229dbb7d99dd6274ac7d8e1d9634e15ae2a39e9bb304cd658ad55ae5f2a06531145a3f700" name="Mesa-gallium-32bit" arch="x86_64">
  <version epoch="0" ver="24.2.6" rel="392.1"/>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1725796800">- Update to release 24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.0
- refreshed the following patches with quilt:
  * U_fix-mpeg1_2-decode-mesa-20.2.patch
  * n_add-Mesa-headers-again.patch
  * n_stop-iris-flicker.patch
  * u_dep_xcb.patch
  * u_fix_rust_bindgen.patch
- dropped U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- New BuildRequires:
  * python3-PyYAML
- enable llvm also for non-driver build to fix:
  "llvmpipe requires LLVM and is enabled, but LLVM is disabled".</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
</package>
<package pkgid="089052b58610090094649bb7808f33f4d180f8c73322cc7c5983303cb4659d39dc940bb09ac657d11668f79500c51ddd489f7143f0a45b80db4d18ddc7660087" name="Mesa-gallium-32bit" arch="x86_64">
  <version epoch="0" ver="24.2.7" rel="393.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1732017600">- Update to release 24.2.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.7
- supersedes 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch</changelog>
</package>
<package pkgid="980ac494a4052dc262143ddd30d8bc818ae4b48858d8116edc6691f906357379ed35f5165d634c93cc2b4804c2f4724b883f3551c9819be37cc7ba4163558981" name="Mesa-gallium-32bit-debuginfo" arch="x86_64">
  <version epoch="0" ver="24.1.3" rel="390.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860800">- Update to bugfix release 24.0.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.6.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860801">-  Update to bugfix release 24.0.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.7.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
</package>
<package pkgid="9f09285eb2a0e6f580b31f984c0c9cc7c5eb2d441e9dddea7f7c976d3bb8d79bf42297a6526a4c072d17abebd28b4bd382a05e187be2612305fefb980489fa22" name="Mesa-gallium-32bit-debuginfo" arch="x86_64">
  <version epoch="0" ver="24.1.7" rel="391.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="b8617cc250a21638c3447e1ebaa265886a9a9cffe8ed3a1b49263f272fdd65643996aa28984a292223a44bf5b966d8344115c9c6f28a6452d8ded163a52d9a32" name="Mesa-gallium-32bit-debuginfo" arch="x86_64">
  <version epoch="0" ver="24.1.7" rel="391.2"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="56a2cc281da08298e7dbdb8c0bdcfb34fbde5c9c052e52bf4c0d2c4e8cf5566aecfc4fefcbfef87ef1e0e8c76bd82c80fb5157e37717b89288505aabd2b78fc9" name="Mesa-gallium-32bit-debuginfo" arch="x86_64">
  <version epoch="0" ver="24.2.6" rel="392.1"/>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1725796800">- Update to release 24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.0
- refreshed the following patches with quilt:
  * U_fix-mpeg1_2-decode-mesa-20.2.patch
  * n_add-Mesa-headers-again.patch
  * n_stop-iris-flicker.patch
  * u_dep_xcb.patch
  * u_fix_rust_bindgen.patch
- dropped U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- New BuildRequires:
  * python3-PyYAML
- enable llvm also for non-driver build to fix:
  "llvmpipe requires LLVM and is enabled, but LLVM is disabled".</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
</package>
<package pkgid="1b3f25df518c0c5e00773088f5cff4166333f77b4651370cf56a90caac94bf61c840c246c5ec81e818ea23677a64d75f7c75a3c4c349f1cf553a7b531ffc553f" name="Mesa-gallium-32bit-debuginfo" arch="x86_64">
  <version epoch="0" ver="24.2.7" rel="393.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1732017600">- Update to release 24.2.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.7
- supersedes 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch</changelog>
</package>
<package pkgid="d6717ae61aebddcf67a32bdeec76c8100f5116f890e8cf5fc9c23920b1d48e2673cfe0abe24fabead22bebf3b7bf79423d796c02cd09586f5098bfa672a6c76c" name="Mesa-gallium-debuginfo" arch="i586">
  <version epoch="0" ver="24.1.3" rel="390.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860800">- Update to bugfix release 24.0.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.6.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860801">-  Update to bugfix release 24.0.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.7.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
</package>
<package pkgid="b7328628526ce90a992dddc1de2eeed619074d27696eda5ce73c5d54141cb13a4d7800c33ba3aa9ecf737e32310cbad01646771355360eb9a2defaf7e0111deb" name="Mesa-gallium-debuginfo" arch="x86_64">
  <version epoch="0" ver="24.1.3" rel="390.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860800">- Update to bugfix release 24.0.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.6.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860801">-  Update to bugfix release 24.0.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.7.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
</package>
<package pkgid="e99b1aa534ddac3df44485273074ecd2450c324db57d2c3d50e991405861a68d95e46a47831ff9e3c8be46daa212cdf628f26dea957536f6af9625b75c9d5c25" name="Mesa-gallium-debuginfo" arch="i586">
  <version epoch="0" ver="24.1.7" rel="391.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="a4b8cbb5581dceec9692b596e884cafe6a010e298ba58b10c296ae58c20048c0a442e7e52eecf97836fda2f8600525f38a9f8a80a75ce9c2bc3d4cc6770520b2" name="Mesa-gallium-debuginfo" arch="x86_64">
  <version epoch="0" ver="24.1.7" rel="391.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="db79057ca15faa09f6ec60b2ca62d7f296f85e13d30d0c0098c97c92535cc6a1ab7a02b2453893bd2da73898fecf19186c1dbc7d8c42c9e03b2912b678ad816a" name="Mesa-gallium-debuginfo" arch="i586">
  <version epoch="0" ver="24.1.7" rel="391.2"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="2d73c3564524723a0f37a7d9ecb26c68bfd00cabbcc160a5ac4742e0611f0955556e704c7b594c59dc728aeae9e37eecb015e56283b53131ca7f12b0c6e59b06" name="Mesa-gallium-debuginfo" arch="x86_64">
  <version epoch="0" ver="24.1.7" rel="391.2"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="953a8da808d95f8c2daf3e8c3ad15247e9485abc97032682f38106e7101b7e4da180dc98c5e7fc3c4090efe6e6316a6ca83fd9ba38cea29b8e57f9ad2208e128" name="Mesa-gallium-debuginfo" arch="i586">
  <version epoch="0" ver="24.2.6" rel="392.1"/>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1725796800">- Update to release 24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.0
- refreshed the following patches with quilt:
  * U_fix-mpeg1_2-decode-mesa-20.2.patch
  * n_add-Mesa-headers-again.patch
  * n_stop-iris-flicker.patch
  * u_dep_xcb.patch
  * u_fix_rust_bindgen.patch
- dropped U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- New BuildRequires:
  * python3-PyYAML
- enable llvm also for non-driver build to fix:
  "llvmpipe requires LLVM and is enabled, but LLVM is disabled".</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
</package>
<package pkgid="e2d871683d465def5640490d89e983224575adb124b807b8dbfa9e901c6ee26200e8f55a6b4f8d768bfb7136953eb85fab8049054b71b73932f654c4b0224e08" name="Mesa-gallium-debuginfo" arch="x86_64">
  <version epoch="0" ver="24.2.6" rel="392.1"/>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1725796800">- Update to release 24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.0
- refreshed the following patches with quilt:
  * U_fix-mpeg1_2-decode-mesa-20.2.patch
  * n_add-Mesa-headers-again.patch
  * n_stop-iris-flicker.patch
  * u_dep_xcb.patch
  * u_fix_rust_bindgen.patch
- dropped U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- New BuildRequires:
  * python3-PyYAML
- enable llvm also for non-driver build to fix:
  "llvmpipe requires LLVM and is enabled, but LLVM is disabled".</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
</package>
<package pkgid="1e1f5e659e7b2acaf981356c2dd02fd0a561763d2464a79becb570501ab8fc2a050da18400238506ed09b11e2acf1a3b51e7b132a5a0033f3751cfe615200e3b" name="Mesa-gallium-debuginfo" arch="i586">
  <version epoch="0" ver="24.2.7" rel="393.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1732017600">- Update to release 24.2.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.7
- supersedes 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch</changelog>
</package>
<package pkgid="6c81bdbde383ee7665b098af556c23f33c1bd700656d4283a00ef006f11a956389ed1c4d01e619e8bfc7d6cd3d0d663ac7fc00d899d6b4502c50bf4fd9b76f35" name="Mesa-gallium-debuginfo" arch="x86_64">
  <version epoch="0" ver="24.2.7" rel="393.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1732017600">- Update to release 24.2.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.7
- supersedes 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch</changelog>
</package>
<package pkgid="0f42d9bc940c2aed787052f9cfb6fc677cbd6bb96998852e6d5abea370978676833e076b49b6a3959c83f21ec499f13983f09f7a844f84dd8c65b4b9d5149c44" name="Mesa-libEGL-devel" arch="i586">
  <version epoch="0" ver="24.1.3" rel="390.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860800">- Update to bugfix release 24.0.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.6.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860801">-  Update to bugfix release 24.0.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.7.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
</package>
<package pkgid="50f6ac90db94202916d6746d569ffb93709336563690e8f4d5da6455fe7fee35179f53ef8612a5462ad858e5fa4ff53643296048af23e11409b7f07fdf459434" name="Mesa-libEGL-devel" arch="x86_64">
  <version epoch="0" ver="24.1.3" rel="390.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860800">- Update to bugfix release 24.0.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.6.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860801">-  Update to bugfix release 24.0.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.7.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
</package>
<package pkgid="1cf31732f18119a9178d06a8173f21e37fa52d67518c02e1f1e6df77a9310e5893e8497da0ef385ce70827aa9d82f6a87960281d89246dba9924f953efd48a6a" name="Mesa-libEGL-devel" arch="i586">
  <version epoch="0" ver="24.1.7" rel="391.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="17c4a0563ad374f509983694b46fc749538729293268d0b86867ee99d1068610565fd314f5a93824f0cebb0fa23bac23e227dc42e791f38e10f9e32a4641cdbf" name="Mesa-libEGL-devel" arch="x86_64">
  <version epoch="0" ver="24.1.7" rel="391.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="3ef71d6663c003a64660d3a970c056b3f17700a88e554240a7f01cfe638167ac6b893b9a0773f1f0d1d8bce2dd1310e05bd24bd33f1662b885113dfd5cdbd038" name="Mesa-libEGL-devel" arch="i586">
  <version epoch="0" ver="24.2.6" rel="392.1"/>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1725796800">- Update to release 24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.0
- refreshed the following patches with quilt:
  * U_fix-mpeg1_2-decode-mesa-20.2.patch
  * n_add-Mesa-headers-again.patch
  * n_stop-iris-flicker.patch
  * u_dep_xcb.patch
  * u_fix_rust_bindgen.patch
- dropped U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- New BuildRequires:
  * python3-PyYAML
- enable llvm also for non-driver build to fix:
  "llvmpipe requires LLVM and is enabled, but LLVM is disabled".</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
</package>
<package pkgid="489bc8a997c2ac9a67a3f8b1073be57d901cd521bfb73afc7c148577d4b822f16540b1fc2069f8ef9dfc5a601428eca98f82d598b14ea79b1aab37ace56d9948" name="Mesa-libEGL-devel" arch="x86_64">
  <version epoch="0" ver="24.2.6" rel="392.1"/>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1725796800">- Update to release 24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.0
- refreshed the following patches with quilt:
  * U_fix-mpeg1_2-decode-mesa-20.2.patch
  * n_add-Mesa-headers-again.patch
  * n_stop-iris-flicker.patch
  * u_dep_xcb.patch
  * u_fix_rust_bindgen.patch
- dropped U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- New BuildRequires:
  * python3-PyYAML
- enable llvm also for non-driver build to fix:
  "llvmpipe requires LLVM and is enabled, but LLVM is disabled".</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
</package>
<package pkgid="f581b561561cd56d26c98f30f95d92aee6b40629b683760bc9923bd9a5afa5eac4763f0f859130c7c019fd106c3644c9c0134245ec7de53a3475160a6bd8efeb" name="Mesa-libEGL-devel" arch="i586">
  <version epoch="0" ver="24.2.7" rel="393.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1732017600">- Update to release 24.2.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.7
- supersedes 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch</changelog>
</package>
<package pkgid="17b7339e3d3b04801491982bd250dc7468609f2f6920371424b35b1d5100e2e62129c2c43fee6aee27de4ab584b8526e094650b0fdcfe08b4ad809b8406f4537" name="Mesa-libEGL-devel" arch="x86_64">
  <version epoch="0" ver="24.2.7" rel="393.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1732017600">- Update to release 24.2.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.7
- supersedes 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch</changelog>
</package>
<package pkgid="0a3251c97baa7a6b15045fd77b13c01b9ba08ab080c89cdd3e6e26a546038236f9bcf88969b5655b7a7c9f2a7ebdbb1d23f606c824032fc1d1e5e499432dd790" name="Mesa-libEGL-devel-32bit" arch="x86_64">
  <version epoch="0" ver="24.1.3" rel="390.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860800">- Update to bugfix release 24.0.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.6.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860801">-  Update to bugfix release 24.0.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.7.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
</package>
<package pkgid="7a0be9464fa2a1b6aa1fbdf182f64630b75094954040358a5e8b5d9f8756f12cd446b721b5caf77e4236a74414a59bb60cab70f8357f28bd8ecd981ab8d644ec" name="Mesa-libEGL-devel-32bit" arch="x86_64">
  <version epoch="0" ver="24.1.7" rel="391.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="b6bdcdf68adc4c4a5ff968c6b13450aec870517d4a0ad2d5d9d8623e1b8468f5fcb9759124f7039228e70d9a8cb7438da1ad1a422669171e0d2dbaf06d0cbf6d" name="Mesa-libEGL-devel-32bit" arch="x86_64">
  <version epoch="0" ver="24.2.6" rel="392.1"/>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1725796800">- Update to release 24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.0
- refreshed the following patches with quilt:
  * U_fix-mpeg1_2-decode-mesa-20.2.patch
  * n_add-Mesa-headers-again.patch
  * n_stop-iris-flicker.patch
  * u_dep_xcb.patch
  * u_fix_rust_bindgen.patch
- dropped U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- New BuildRequires:
  * python3-PyYAML
- enable llvm also for non-driver build to fix:
  "llvmpipe requires LLVM and is enabled, but LLVM is disabled".</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
</package>
<package pkgid="49c7d3713bbf0b2a192f776a833dcd389adea8ba1f2e7f60534d4f17052cb913451ed4ad1cc838512dfdf8faab4adba3c11269c7d647cd7bee86829c00226f09" name="Mesa-libEGL-devel-32bit" arch="x86_64">
  <version epoch="0" ver="24.2.7" rel="393.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1732017600">- Update to release 24.2.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.7
- supersedes 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch</changelog>
</package>
<package pkgid="5d5307eb6a1ec8666a54b8461258d58ab3b9a36bf15fb0296bbb8e7c138bed675ce7c1714f422326d90ffabcf65941651b66b7a2d149cad6e40fc539551b1ba8" name="Mesa-libEGL1" arch="i586">
  <version epoch="0" ver="24.1.3" rel="390.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860800">- Update to bugfix release 24.0.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.6.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860801">-  Update to bugfix release 24.0.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.7.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
</package>
<package pkgid="d245c8691820ecb362b60b1085399d7219a1c6c23ba23ecb50076900ef7f5001814217cce17bb8fc0eb311dafb15b3d75d5a8bffe0a525b16035b1dbd71cfe85" name="Mesa-libEGL1" arch="x86_64">
  <version epoch="0" ver="24.1.3" rel="390.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860800">- Update to bugfix release 24.0.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.6.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860801">-  Update to bugfix release 24.0.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.7.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
</package>
<package pkgid="63c51fe0fd0ddd49cd6ab0ee7b9fb749acf8293f0e2d40c49b273ce538fedb3554cc047e649f0969666fe2df940cb89aa731f452f28d1f38ec7292c7ce16ad3d" name="Mesa-libEGL1" arch="i586">
  <version epoch="0" ver="24.1.7" rel="391.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="091eb5054cf6c053acedbf5a25af9413da0d00b6bf2a78b9e0111604b9e8b3a4c648811727bd5688e113dc4297b79dfd4532f8e9fd93a97794a1bed8062a3b2d" name="Mesa-libEGL1" arch="x86_64">
  <version epoch="0" ver="24.1.7" rel="391.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="e579ddf34ad7482e8546bf687cb53a961f177203179a004f2c6dc47436041e65d238793739344d9a6eb0fb7d84054e0884282efb95f9f6ab3af0eabc8dcc7575" name="Mesa-libEGL1" arch="i586">
  <version epoch="0" ver="24.2.6" rel="392.1"/>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1725796800">- Update to release 24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.0
- refreshed the following patches with quilt:
  * U_fix-mpeg1_2-decode-mesa-20.2.patch
  * n_add-Mesa-headers-again.patch
  * n_stop-iris-flicker.patch
  * u_dep_xcb.patch
  * u_fix_rust_bindgen.patch
- dropped U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- New BuildRequires:
  * python3-PyYAML
- enable llvm also for non-driver build to fix:
  "llvmpipe requires LLVM and is enabled, but LLVM is disabled".</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
</package>
<package pkgid="bee9d8fe170c73e29f6f86327d5be2b0d99a22a4058a4596fc497e53f68beb5787a943a8de8fea2dc6d225660d4024a3f5e39a79ee43198252c3c5d4b54fed71" name="Mesa-libEGL1" arch="x86_64">
  <version epoch="0" ver="24.2.6" rel="392.1"/>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1725796800">- Update to release 24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.0
- refreshed the following patches with quilt:
  * U_fix-mpeg1_2-decode-mesa-20.2.patch
  * n_add-Mesa-headers-again.patch
  * n_stop-iris-flicker.patch
  * u_dep_xcb.patch
  * u_fix_rust_bindgen.patch
- dropped U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- New BuildRequires:
  * python3-PyYAML
- enable llvm also for non-driver build to fix:
  "llvmpipe requires LLVM and is enabled, but LLVM is disabled".</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
</package>
<package pkgid="bcc2ffa1c8aa4f465354c027e58a995d806e31ef89e80939762a66898019ac6c85023f9c60b86f39b418f48589a83cef936154e1d8a7458e0e7f66568d5fd586" name="Mesa-libEGL1" arch="i586">
  <version epoch="0" ver="24.2.7" rel="393.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1732017600">- Update to release 24.2.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.7
- supersedes 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch</changelog>
</package>
<package pkgid="33980e91c0d8a3acf8835ba63a0c6741e6f6c7bf6c687dff88c774443023b51cbbf1af485a64057e4ba130c448847439b9c66249ef116be0d313e788c2e85931" name="Mesa-libEGL1" arch="x86_64">
  <version epoch="0" ver="24.2.7" rel="393.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1732017600">- Update to release 24.2.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.7
- supersedes 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch</changelog>
</package>
<package pkgid="4679bed515f1414b0bf483b0e240cb26c9b3fcd7fbd7933f7384bc277f336069297549b7343110e0debef7af04418202d0e9702ac04c65c10346ed4d0a669e3b" name="Mesa-libEGL1-32bit" arch="x86_64">
  <version epoch="0" ver="24.1.3" rel="390.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860800">- Update to bugfix release 24.0.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.6.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860801">-  Update to bugfix release 24.0.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.7.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
</package>
<package pkgid="30900c9cba0f8465e304126ab86d08ba29f898d1e3e36a000702d1c0debf0c44d3a7805e80d01a4cedb9918ec52521798c76fde6d748dd9e609886890bac39b3" name="Mesa-libEGL1-32bit" arch="x86_64">
  <version epoch="0" ver="24.1.7" rel="391.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="0a815ca19f52c53a69f36b08d6c0b245d71e21600f4acc0e3aa798b3a4967a414b0d3e9a4cf761e2d14041325a12e4bfde6881042dfa606561f029e8eeee3a6d" name="Mesa-libEGL1-32bit" arch="x86_64">
  <version epoch="0" ver="24.2.6" rel="392.1"/>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1725796800">- Update to release 24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.0
- refreshed the following patches with quilt:
  * U_fix-mpeg1_2-decode-mesa-20.2.patch
  * n_add-Mesa-headers-again.patch
  * n_stop-iris-flicker.patch
  * u_dep_xcb.patch
  * u_fix_rust_bindgen.patch
- dropped U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- New BuildRequires:
  * python3-PyYAML
- enable llvm also for non-driver build to fix:
  "llvmpipe requires LLVM and is enabled, but LLVM is disabled".</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
</package>
<package pkgid="6857c6c85ced264397cf179f708969f6999d1a8f31df4eca0dd77e82917d2dac38f43d8dc95d269ddf5fdc0bf12d7991aeb2526eeb583c6eba8bd78899cffe18" name="Mesa-libEGL1-32bit" arch="x86_64">
  <version epoch="0" ver="24.2.7" rel="393.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1732017600">- Update to release 24.2.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.7
- supersedes 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch</changelog>
</package>
<package pkgid="e221ae90b993630e5128ed9fceb8d6379fe0c456618c4b719f91b1ee3ab683dccf70304f1ca27f309bad2560bdd87ca01d8623f8415b88586160b6821ec4f7bf" name="Mesa-libEGL1-32bit-debuginfo" arch="x86_64">
  <version epoch="0" ver="24.1.3" rel="390.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860800">- Update to bugfix release 24.0.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.6.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860801">-  Update to bugfix release 24.0.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.7.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
</package>
<package pkgid="a5c08e6dadd9e6c48f111342b7b72b23ade9ab6773713effb10975ac18bc6660fd45d3db8c5c68df3fdf5a5624c04987ad26a6e8e115ebd90d1b04d610befc6c" name="Mesa-libEGL1-32bit-debuginfo" arch="x86_64">
  <version epoch="0" ver="24.1.7" rel="391.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="4fd6cdbffa6876aff78f429843ed1b688463760da258ca7493e2afc984cf7e24f4cb0f394b98b8ecef6e7c21ff69fc8d48862d127e1c116150c8f9f86f8813ae" name="Mesa-libEGL1-32bit-debuginfo" arch="x86_64">
  <version epoch="0" ver="24.2.6" rel="392.1"/>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1725796800">- Update to release 24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.0
- refreshed the following patches with quilt:
  * U_fix-mpeg1_2-decode-mesa-20.2.patch
  * n_add-Mesa-headers-again.patch
  * n_stop-iris-flicker.patch
  * u_dep_xcb.patch
  * u_fix_rust_bindgen.patch
- dropped U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- New BuildRequires:
  * python3-PyYAML
- enable llvm also for non-driver build to fix:
  "llvmpipe requires LLVM and is enabled, but LLVM is disabled".</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
</package>
<package pkgid="8ad93a4acc917cbc84d7529974c5773447913c97f742104bd62edb2a3119b43eb1acd5abccd64bc76598519aea1e2f0bbe5176f57fc42ac45619e4189c9d1d0a" name="Mesa-libEGL1-32bit-debuginfo" arch="x86_64">
  <version epoch="0" ver="24.2.7" rel="393.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1732017600">- Update to release 24.2.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.7
- supersedes 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch</changelog>
</package>
<package pkgid="b9e698b304797bb370de8a40bd36df479ea895b6b15a96fadc411df9506fbe03fbaf04f30e8ec4aae02cf0cba48bbad18dd823d793543b4bca91da07618a1cbc" name="Mesa-libEGL1-debuginfo" arch="i586">
  <version epoch="0" ver="24.1.3" rel="390.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860800">- Update to bugfix release 24.0.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.6.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860801">-  Update to bugfix release 24.0.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.7.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
</package>
<package pkgid="f20a7c54ebd0aca21dd34d505be65d9514287f37002e5b4ef9face1360044b595987a5269c71ca993e14d6b989db0545f3924ed0b7210af2fe760ff511f0f1fb" name="Mesa-libEGL1-debuginfo" arch="x86_64">
  <version epoch="0" ver="24.1.3" rel="390.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860800">- Update to bugfix release 24.0.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.6.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860801">-  Update to bugfix release 24.0.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.7.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
</package>
<package pkgid="9a965d1f8922c7ddc65870c626a28fda0481e7b061c08edbb3e84860e110fa1c156599e28860b3fd951b1aae08d7ff46452e4836f502d9db6ed0127a1996775e" name="Mesa-libEGL1-debuginfo" arch="i586">
  <version epoch="0" ver="24.1.7" rel="391.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="7850ac3f21191b1a95a7c99af94c22c6bdd89fe68461aee9e9f68bdc08ec6497cb5f11a8c42256d1aa439ebf9a6235f91381bb4d05bf985b0456d03f5ef8c24b" name="Mesa-libEGL1-debuginfo" arch="x86_64">
  <version epoch="0" ver="24.1.7" rel="391.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="d5294823b30eee25883c771f5cb15742692c073237ce1e597f97681012befc8e3af1fd776561bb39139a91fec5a08b90c2777b4e215cd805429e42765bddb00a" name="Mesa-libEGL1-debuginfo" arch="i586">
  <version epoch="0" ver="24.2.6" rel="392.1"/>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1725796800">- Update to release 24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.0
- refreshed the following patches with quilt:
  * U_fix-mpeg1_2-decode-mesa-20.2.patch
  * n_add-Mesa-headers-again.patch
  * n_stop-iris-flicker.patch
  * u_dep_xcb.patch
  * u_fix_rust_bindgen.patch
- dropped U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- New BuildRequires:
  * python3-PyYAML
- enable llvm also for non-driver build to fix:
  "llvmpipe requires LLVM and is enabled, but LLVM is disabled".</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
</package>
<package pkgid="96ffddc23bef40447cadee92d73e580a34a6e44b623b7a5fa571b04a08fe46970f26f037c940072e81ea9d40658c44c712ff5cb61ea1620313f9592b7b94c664" name="Mesa-libEGL1-debuginfo" arch="x86_64">
  <version epoch="0" ver="24.2.6" rel="392.1"/>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1725796800">- Update to release 24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.0
- refreshed the following patches with quilt:
  * U_fix-mpeg1_2-decode-mesa-20.2.patch
  * n_add-Mesa-headers-again.patch
  * n_stop-iris-flicker.patch
  * u_dep_xcb.patch
  * u_fix_rust_bindgen.patch
- dropped U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- New BuildRequires:
  * python3-PyYAML
- enable llvm also for non-driver build to fix:
  "llvmpipe requires LLVM and is enabled, but LLVM is disabled".</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
</package>
<package pkgid="c8fba3170d38fd055cdee87eaa3a5f4bb40c1412ebc3f39aac30e2c1e2b52ade9b42b0c115670ce573be9ce56c5304d81674b14157c49accbacc5591a4cedb57" name="Mesa-libEGL1-debuginfo" arch="i586">
  <version epoch="0" ver="24.2.7" rel="393.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1732017600">- Update to release 24.2.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.7
- supersedes 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch</changelog>
</package>
<package pkgid="c7e2e4bcf783f9390502ce61cb4910982d60d9407c7864adb0851c3262a667052181fab610b52ec331b753fcf04825fe95b7b7901e5c7621a4d521d44118e17e" name="Mesa-libEGL1-debuginfo" arch="x86_64">
  <version epoch="0" ver="24.2.7" rel="393.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1732017600">- Update to release 24.2.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.7
- supersedes 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch</changelog>
</package>
<package pkgid="010224a8583baec83f51864fb69ba2678c1002ead5063764ff270a4a3b04cf7a948c52e050d70c2cd75e91bde991e2b674dce64522394c094847bd947877ce12" name="Mesa-libGL-devel" arch="i586">
  <version epoch="0" ver="24.1.3" rel="390.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860800">- Update to bugfix release 24.0.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.6.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860801">-  Update to bugfix release 24.0.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.7.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
</package>
<package pkgid="a37bb11cc5e6b6b232a510254fa75bfa43baa18e9fcb4a65bff117dfc5606211c7a1b08fda4d2f0ee063d64e8f90273e017a29a8e11a088fdc8f79addfb4a939" name="Mesa-libGL-devel" arch="x86_64">
  <version epoch="0" ver="24.1.3" rel="390.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860800">- Update to bugfix release 24.0.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.6.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860801">-  Update to bugfix release 24.0.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.7.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
</package>
<package pkgid="b7822fb34740d273aa6ce358b537ed9c75cfac3517c2196c5a21f2f513379531e828393a8cae761432c7acdb444611f60f86bf70c849789315fb6d1bee0b73fd" name="Mesa-libGL-devel" arch="i586">
  <version epoch="0" ver="24.1.7" rel="391.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="f18806e81b491c00236712c8e48eb1d7882a4cf279cd494ad5b7940dcd110366a1ab7abf2558bb058cc10128383fc9f12a9606253660fad6f6142bc3c61726a9" name="Mesa-libGL-devel" arch="x86_64">
  <version epoch="0" ver="24.1.7" rel="391.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="253eec42cb9990a65696b49d5d7330de20b4acb7b9225374bbb7879155482a64915148ca07b264a2896199de156dcc21fc3c2a09bea374f0aac197c6a3af1ae5" name="Mesa-libGL-devel" arch="i586">
  <version epoch="0" ver="24.2.6" rel="392.1"/>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1725796800">- Update to release 24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.0
- refreshed the following patches with quilt:
  * U_fix-mpeg1_2-decode-mesa-20.2.patch
  * n_add-Mesa-headers-again.patch
  * n_stop-iris-flicker.patch
  * u_dep_xcb.patch
  * u_fix_rust_bindgen.patch
- dropped U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- New BuildRequires:
  * python3-PyYAML
- enable llvm also for non-driver build to fix:
  "llvmpipe requires LLVM and is enabled, but LLVM is disabled".</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
</package>
<package pkgid="b963492f0d6674a1b56b6338028ff9628842c13c1b825ec0ca634b7e7ad562abd9fc27d66f297fac9a3c80309eba2ca0c9af8b3d6becaabedd170078f0b78ecb" name="Mesa-libGL-devel" arch="x86_64">
  <version epoch="0" ver="24.2.6" rel="392.1"/>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1725796800">- Update to release 24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.0
- refreshed the following patches with quilt:
  * U_fix-mpeg1_2-decode-mesa-20.2.patch
  * n_add-Mesa-headers-again.patch
  * n_stop-iris-flicker.patch
  * u_dep_xcb.patch
  * u_fix_rust_bindgen.patch
- dropped U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- New BuildRequires:
  * python3-PyYAML
- enable llvm also for non-driver build to fix:
  "llvmpipe requires LLVM and is enabled, but LLVM is disabled".</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
</package>
<package pkgid="8881e53dad65850b0e3226eeb3a3f926b1cac1783ae264fe3cadb463ce1a3e27e04f7222ca67a53564c9eca01e959c316211d59f198951a83d529f489cbec0c6" name="Mesa-libGL-devel" arch="i586">
  <version epoch="0" ver="24.2.7" rel="393.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1732017600">- Update to release 24.2.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.7
- supersedes 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch</changelog>
</package>
<package pkgid="e8694a9d4350d7a604df9767e1fe801301f24036507d617c44229734be342c0153fa5648b8def40fc7cac4500010e0d9007343fdccf56f82765fe61d9375e739" name="Mesa-libGL-devel" arch="x86_64">
  <version epoch="0" ver="24.2.7" rel="393.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1732017600">- Update to release 24.2.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.7
- supersedes 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch</changelog>
</package>
<package pkgid="e352e9c979bc97cf9e6936cf61b9ef12985c25e9c8424f74b2155495f1fd55cdd947782569089c0d9d1ef12c602c5392bdc162774895b6f4467150dad17bba68" name="Mesa-libGL-devel-32bit" arch="x86_64">
  <version epoch="0" ver="24.1.3" rel="390.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860800">- Update to bugfix release 24.0.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.6.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860801">-  Update to bugfix release 24.0.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.7.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
</package>
<package pkgid="150a04ba387272164120a6c19b1d3d5cee5919dadb105669419f36bf05fdc59bb2a2e32f5bfdf8a3334100342d8322c2ea4ae80bb1276fe42a9e22405a1765a2" name="Mesa-libGL-devel-32bit" arch="x86_64">
  <version epoch="0" ver="24.1.7" rel="391.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="2608e6602119687775f81f1487c3e7b18f01d68adfc1f20140060459e530bc91d9dd0925f1ee2e4ae642a478aff7074250285d039538786b800cb3d407a3a358" name="Mesa-libGL-devel-32bit" arch="x86_64">
  <version epoch="0" ver="24.2.6" rel="392.1"/>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1725796800">- Update to release 24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.0
- refreshed the following patches with quilt:
  * U_fix-mpeg1_2-decode-mesa-20.2.patch
  * n_add-Mesa-headers-again.patch
  * n_stop-iris-flicker.patch
  * u_dep_xcb.patch
  * u_fix_rust_bindgen.patch
- dropped U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- New BuildRequires:
  * python3-PyYAML
- enable llvm also for non-driver build to fix:
  "llvmpipe requires LLVM and is enabled, but LLVM is disabled".</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
</package>
<package pkgid="0eb9f140f3f5fe857f9aabf811e71c15094a03a498eda9afe3049d5f4439a78949610db56210947f4dd5ea6b663d61f208f28b0a7fd20274a65997eee4c65b56" name="Mesa-libGL-devel-32bit" arch="x86_64">
  <version epoch="0" ver="24.2.7" rel="393.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1732017600">- Update to release 24.2.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.7
- supersedes 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch</changelog>
</package>
<package pkgid="6b460641958c98b4e0443001611e5f84c41b93b94e6915c0dc7769002f9098b8e217e74b6ca37730b96c9f468008e318f0207c9322320381ea228ea6936e910b" name="Mesa-libGL1" arch="i586">
  <version epoch="0" ver="24.1.3" rel="390.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860800">- Update to bugfix release 24.0.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.6.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860801">-  Update to bugfix release 24.0.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.7.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
</package>
<package pkgid="a8467a7850060381e151e5a06bb604c70b12afdc7a708fec29e5114170be7e7adce4f98ad8aaaacd86491cac679a71307cc76f90f5ce64659474bb9c9c1977b9" name="Mesa-libGL1" arch="x86_64">
  <version epoch="0" ver="24.1.3" rel="390.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860800">- Update to bugfix release 24.0.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.6.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860801">-  Update to bugfix release 24.0.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.7.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
</package>
<package pkgid="784c66f0d8495d13c60d768b40eed90c57ae665d6d828e620803dc03176ef7222cfda4ee906320452ec96cb97777699d9ded3aa642053edee8abdc935e993f48" name="Mesa-libGL1" arch="i586">
  <version epoch="0" ver="24.1.7" rel="391.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="0a01406966b28c4ff7e73a75dd3ef86e8da1a68e42809368820d96e934541b6b5581d8356e8a7c3380c68b70b5c57bce69218e25ce3ee7e84230ae296f25bdb5" name="Mesa-libGL1" arch="x86_64">
  <version epoch="0" ver="24.1.7" rel="391.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="ec4ddbbbeeb11d093ad6ced1d83c1d43fd48507288c1e4eff1d66a65f2e3116ff563a2db03d718e218a8235daf25e69a1a1827e2ec71bdfec08d06ec6cde42aa" name="Mesa-libGL1" arch="i586">
  <version epoch="0" ver="24.2.6" rel="392.1"/>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1725796800">- Update to release 24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.0
- refreshed the following patches with quilt:
  * U_fix-mpeg1_2-decode-mesa-20.2.patch
  * n_add-Mesa-headers-again.patch
  * n_stop-iris-flicker.patch
  * u_dep_xcb.patch
  * u_fix_rust_bindgen.patch
- dropped U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- New BuildRequires:
  * python3-PyYAML
- enable llvm also for non-driver build to fix:
  "llvmpipe requires LLVM and is enabled, but LLVM is disabled".</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
</package>
<package pkgid="ed27a730fd7b38b6dffb7e95db12e5a0989809692147044fccc0fd24711b2fe457671c7e5d2619535b4f8b246085bcee6f840da9d7df5191fb510391fb842c6f" name="Mesa-libGL1" arch="x86_64">
  <version epoch="0" ver="24.2.6" rel="392.1"/>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1725796800">- Update to release 24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.0
- refreshed the following patches with quilt:
  * U_fix-mpeg1_2-decode-mesa-20.2.patch
  * n_add-Mesa-headers-again.patch
  * n_stop-iris-flicker.patch
  * u_dep_xcb.patch
  * u_fix_rust_bindgen.patch
- dropped U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- New BuildRequires:
  * python3-PyYAML
- enable llvm also for non-driver build to fix:
  "llvmpipe requires LLVM and is enabled, but LLVM is disabled".</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
</package>
<package pkgid="984cb2069ba672b8744f4ed58141657b5cd83ab76e3f10a9463b90a5c35db47a0a7bc5ec193a44d366c0b81dc99d4cf022c95556c87e64b1a7c72da2f99a35d7" name="Mesa-libGL1" arch="i586">
  <version epoch="0" ver="24.2.7" rel="393.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1732017600">- Update to release 24.2.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.7
- supersedes 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch</changelog>
</package>
<package pkgid="4cec4095c17f99810909973dc8628646c50fa37f9bd90aec6d0246f9d2e22cad0deb17181f64f99569fa3932eda9f4e84f6b678445bd40c01ec0592719516ec2" name="Mesa-libGL1" arch="x86_64">
  <version epoch="0" ver="24.2.7" rel="393.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1732017600">- Update to release 24.2.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.7
- supersedes 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch</changelog>
</package>
<package pkgid="088fdda9bd75b331d065f1157bebe2d4531607791ccbb3a21eb5af9181fd515eaf6fccfd14e37c271a2295d8db74d09e37d25c083607f2dac8a08a7a9ad7828a" name="Mesa-libGL1-32bit" arch="x86_64">
  <version epoch="0" ver="24.1.3" rel="390.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860800">- Update to bugfix release 24.0.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.6.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860801">-  Update to bugfix release 24.0.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.7.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
</package>
<package pkgid="f768bfc360e40663816969be3b514d01043d8914fbcd490d02599ba400f642b3e01a73266da9043588dded29593103e7ceeeb5ae0c48fc3010f86420a7417b04" name="Mesa-libGL1-32bit" arch="x86_64">
  <version epoch="0" ver="24.1.7" rel="391.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="30ba71f417f22293341071ace9cb9ad14b4bfb0cdce50df78e2055a4f90e56db05d97ec7e17121fe172e87a60877650649ebe5affbfad4762ce04be84af5e85a" name="Mesa-libGL1-32bit" arch="x86_64">
  <version epoch="0" ver="24.2.6" rel="392.1"/>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1725796800">- Update to release 24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.0
- refreshed the following patches with quilt:
  * U_fix-mpeg1_2-decode-mesa-20.2.patch
  * n_add-Mesa-headers-again.patch
  * n_stop-iris-flicker.patch
  * u_dep_xcb.patch
  * u_fix_rust_bindgen.patch
- dropped U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- New BuildRequires:
  * python3-PyYAML
- enable llvm also for non-driver build to fix:
  "llvmpipe requires LLVM and is enabled, but LLVM is disabled".</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
</package>
<package pkgid="1f25aa9fc82da3a22df672db71cf45179d8f154f5cf5aee03076ed01a6fe4daf46dc7b0a2f6c445b8de8182ba139a4252de8f6a5ee9a6273c845f65cc3ea1592" name="Mesa-libGL1-32bit" arch="x86_64">
  <version epoch="0" ver="24.2.7" rel="393.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1732017600">- Update to release 24.2.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.7
- supersedes 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch</changelog>
</package>
<package pkgid="f4920ec880fc78522d84560891bb39ca4ecbb2b4b3e391a9c2bb9bdd67209d71a3e828b2c417269c7b1de47c78b1f6aa6b5253c518d13a0927407756d00fa8a8" name="Mesa-libGL1-32bit-debuginfo" arch="x86_64">
  <version epoch="0" ver="24.1.3" rel="390.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860800">- Update to bugfix release 24.0.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.6.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860801">-  Update to bugfix release 24.0.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.7.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
</package>
<package pkgid="6b59a8d7b8c2b49158c669b2a27184d9ecc84182c549d174580b443ca83814750a583c4b7a84996f144e898d2048ccc0c79090ff0788c5bfa6ebe26589fc5952" name="Mesa-libGL1-32bit-debuginfo" arch="x86_64">
  <version epoch="0" ver="24.1.7" rel="391.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="8a4ff31131dba89f0b6445fa6a4ff09b65e52d0d6a638dd94bf244fe8ae250db4ef6ae947003334d1cecc4d8b03a449fc80e09871258e52ba91a354e901b3e5b" name="Mesa-libGL1-32bit-debuginfo" arch="x86_64">
  <version epoch="0" ver="24.2.6" rel="392.1"/>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1725796800">- Update to release 24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.0
- refreshed the following patches with quilt:
  * U_fix-mpeg1_2-decode-mesa-20.2.patch
  * n_add-Mesa-headers-again.patch
  * n_stop-iris-flicker.patch
  * u_dep_xcb.patch
  * u_fix_rust_bindgen.patch
- dropped U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- New BuildRequires:
  * python3-PyYAML
- enable llvm also for non-driver build to fix:
  "llvmpipe requires LLVM and is enabled, but LLVM is disabled".</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
</package>
<package pkgid="bf9110fcd0779bfedf6a3fa0263643fa313a0503930cc6cbc5eb71fa7ba502776f08ff0ccfa75c5817d84e2813a9f93593cafc6c2dfe3e2892d88be7840ecf7b" name="Mesa-libGL1-32bit-debuginfo" arch="x86_64">
  <version epoch="0" ver="24.2.7" rel="393.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1732017600">- Update to release 24.2.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.7
- supersedes 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch</changelog>
</package>
<package pkgid="9d65e20c169b9a00a59e81784e52fe19c0593f71f702eba011c28f0b950034c005f1725efa3297580927bd4cb2546bbd2eb57fc7f9b5493f4c2f899aad47fb1f" name="Mesa-libGL1-debuginfo" arch="i586">
  <version epoch="0" ver="24.1.3" rel="390.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860800">- Update to bugfix release 24.0.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.6.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860801">-  Update to bugfix release 24.0.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.7.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
</package>
<package pkgid="d6020a987f7dc12a3009e66a727a7d9279e94ac5b2374095ce44383a6918cddd24c8c6e00275e61f522d9741762ba972b559b116af0a783d111422cc6a920cee" name="Mesa-libGL1-debuginfo" arch="x86_64">
  <version epoch="0" ver="24.1.3" rel="390.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860800">- Update to bugfix release 24.0.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.6.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860801">-  Update to bugfix release 24.0.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.7.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
</package>
<package pkgid="330c41d69091fe833a1a635b684a619e04fdca270a48bd4e232e14b4bb4b2c6a9bae6b1d2ae33e5576f0108752d12412f806efd5b4049606ffe2b84834decebe" name="Mesa-libGL1-debuginfo" arch="i586">
  <version epoch="0" ver="24.1.7" rel="391.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="7221c4656230d0fa158e346705331d87f94de26138b85bf34d183fc3bbc5ca7c07ae42d409ad68f48f3fcb7685a15e3411a6462272ab20ffeb5b63fd1bef9028" name="Mesa-libGL1-debuginfo" arch="x86_64">
  <version epoch="0" ver="24.1.7" rel="391.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="b8a2ede08f33c1871e2bdef4d10f3e38eb0936016c9f5c0793898675a54db96f67fa38543b59f423f796fe8b8acf8348a13b913999810a9da5dc9cadd5586803" name="Mesa-libGL1-debuginfo" arch="i586">
  <version epoch="0" ver="24.2.6" rel="392.1"/>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1725796800">- Update to release 24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.0
- refreshed the following patches with quilt:
  * U_fix-mpeg1_2-decode-mesa-20.2.patch
  * n_add-Mesa-headers-again.patch
  * n_stop-iris-flicker.patch
  * u_dep_xcb.patch
  * u_fix_rust_bindgen.patch
- dropped U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- New BuildRequires:
  * python3-PyYAML
- enable llvm also for non-driver build to fix:
  "llvmpipe requires LLVM and is enabled, but LLVM is disabled".</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
</package>
<package pkgid="9bfd4347f5845b4a8ef262410d40f199344f667292edb382613e2068f5e732053c9206625d023fb31c127d9a57f5de6f7039fe12a6b05a270b94d3830de1f047" name="Mesa-libGL1-debuginfo" arch="x86_64">
  <version epoch="0" ver="24.2.6" rel="392.1"/>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1725796800">- Update to release 24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.0
- refreshed the following patches with quilt:
  * U_fix-mpeg1_2-decode-mesa-20.2.patch
  * n_add-Mesa-headers-again.patch
  * n_stop-iris-flicker.patch
  * u_dep_xcb.patch
  * u_fix_rust_bindgen.patch
- dropped U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- New BuildRequires:
  * python3-PyYAML
- enable llvm also for non-driver build to fix:
  "llvmpipe requires LLVM and is enabled, but LLVM is disabled".</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
</package>
<package pkgid="d73e6a2fe5b78e65678b5dfa9c777c81aea7b8fc97d0cf2e6a01ee6cba58d55ac4c815b9b9eda2217bb45ce04713008bd3325145b0c934bbb0b9ac18ab2bd2a2" name="Mesa-libGL1-debuginfo" arch="i586">
  <version epoch="0" ver="24.2.7" rel="393.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1732017600">- Update to release 24.2.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.7
- supersedes 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch</changelog>
</package>
<package pkgid="decaefcfa0e16853f371552022ee17e83a82ce7a053137acb0b15b96694da9a007a90e2b740705b154deef06f51d0721fb6e1824db6885c2b02020f3f190d083" name="Mesa-libGL1-debuginfo" arch="x86_64">
  <version epoch="0" ver="24.2.7" rel="393.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1732017600">- Update to release 24.2.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.7
- supersedes 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch</changelog>
</package>
<package pkgid="b9d88b378e27af29a2c75570cceba9128a0504f85e17e49888ba8d62fe17689f0a2c637484ea15a1e83fa1c0bfad070e43a5cccd48b4f154a7bf9b5d4a651321" name="Mesa-libGLESv1_CM-devel" arch="i586">
  <version epoch="0" ver="24.1.3" rel="390.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860800">- Update to bugfix release 24.0.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.6.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860801">-  Update to bugfix release 24.0.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.7.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
</package>
<package pkgid="d1e9466c3850372ad032ff06167c6113500e4ac43683858f2853e24fefdad419bfc6303f2da23cd215e18c5f0c25933e2133a4c0f7b23e06ef02928a8ae7e1a4" name="Mesa-libGLESv1_CM-devel" arch="x86_64">
  <version epoch="0" ver="24.1.3" rel="390.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860800">- Update to bugfix release 24.0.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.6.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860801">-  Update to bugfix release 24.0.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.7.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
</package>
<package pkgid="bbcc4d5a3a84e2375ea6af7dbc6b8d5417ca1a69b7d2b31bd478d8feac6a43e582ea2b0b975342fdd80e3503e71dec3a0f701f00d6da1118647024fd88ee00da" name="Mesa-libGLESv1_CM-devel" arch="i586">
  <version epoch="0" ver="24.1.7" rel="391.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="12c17669497244519203a34acff64dc882075428c310fb6ccdd12d9a8431a53d4cf0371151fb718bab3b9ac2b411a4908ce3c50fb82f9007cdc286a0fe342679" name="Mesa-libGLESv1_CM-devel" arch="x86_64">
  <version epoch="0" ver="24.1.7" rel="391.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="d455e5d4a3f6e7ee71b319d2812848d4121d944488f449484156bbd183aec0a4433856d4ac5bb1eb22434e505e9a481d2aa8d50853b748812afaa28004ef492f" name="Mesa-libGLESv1_CM-devel" arch="i586">
  <version epoch="0" ver="24.2.6" rel="392.1"/>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1725796800">- Update to release 24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.0
- refreshed the following patches with quilt:
  * U_fix-mpeg1_2-decode-mesa-20.2.patch
  * n_add-Mesa-headers-again.patch
  * n_stop-iris-flicker.patch
  * u_dep_xcb.patch
  * u_fix_rust_bindgen.patch
- dropped U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- New BuildRequires:
  * python3-PyYAML
- enable llvm also for non-driver build to fix:
  "llvmpipe requires LLVM and is enabled, but LLVM is disabled".</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
</package>
<package pkgid="587a68c760e644a68c0d7a1897448ef5c83a270bf1d97c156c0117255f8604b734d36c03c354e4dffc4079a5ec9dd8543513d214543b92268f959fb1967b884c" name="Mesa-libGLESv1_CM-devel" arch="x86_64">
  <version epoch="0" ver="24.2.6" rel="392.1"/>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1725796800">- Update to release 24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.0
- refreshed the following patches with quilt:
  * U_fix-mpeg1_2-decode-mesa-20.2.patch
  * n_add-Mesa-headers-again.patch
  * n_stop-iris-flicker.patch
  * u_dep_xcb.patch
  * u_fix_rust_bindgen.patch
- dropped U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- New BuildRequires:
  * python3-PyYAML
- enable llvm also for non-driver build to fix:
  "llvmpipe requires LLVM and is enabled, but LLVM is disabled".</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
</package>
<package pkgid="e25df3d5746e99071930442670d0638c61e1ef85c8eeace3e2b2be9d9507c3f7e71ca46bbb56792492320129d7c4c860cb60835cb08986d582eb6c91ccc2b25f" name="Mesa-libGLESv1_CM-devel" arch="i586">
  <version epoch="0" ver="24.2.7" rel="393.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1732017600">- Update to release 24.2.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.7
- supersedes 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch</changelog>
</package>
<package pkgid="d3afa32ea4eb50d50f81922dd7eab19ec31009a3aa13a7794ce3feda09f99daee6bedd665cf7ae4b8cd30376f37bf356f316afcb8eb4ca33cd6c452da3219bc5" name="Mesa-libGLESv1_CM-devel" arch="x86_64">
  <version epoch="0" ver="24.2.7" rel="393.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1732017600">- Update to release 24.2.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.7
- supersedes 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch</changelog>
</package>
<package pkgid="0746842350e07768c331f6d8bbea2e4b4613c9dba0300bbc32e62369b2f72285ccb8b0d57932d73ded84f5f5c03ca21db227f43256a3100959b5de94669dda7e" name="Mesa-libGLESv1_CM-devel-32bit" arch="x86_64">
  <version epoch="0" ver="24.1.3" rel="390.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860800">- Update to bugfix release 24.0.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.6.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860801">-  Update to bugfix release 24.0.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.7.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
</package>
<package pkgid="f37fc9a9b233d3ddfbde65d02b6dc9338eeca05fc9bd664cd3ac2d9048e3205b0b127413a217c6d583ef655fd73ef68a32e049a94944d3783df27bcada86590a" name="Mesa-libGLESv1_CM-devel-32bit" arch="x86_64">
  <version epoch="0" ver="24.1.7" rel="391.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="fbffccc80eaf2f2151296e99d7d52393f33ed924205f469388ff8b33277c285296db7a9cc3dbbe400f9850e2f2383d9a5b740b28e322fc092530fa7d62939cf9" name="Mesa-libGLESv1_CM-devel-32bit" arch="x86_64">
  <version epoch="0" ver="24.2.6" rel="392.1"/>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1725796800">- Update to release 24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.0
- refreshed the following patches with quilt:
  * U_fix-mpeg1_2-decode-mesa-20.2.patch
  * n_add-Mesa-headers-again.patch
  * n_stop-iris-flicker.patch
  * u_dep_xcb.patch
  * u_fix_rust_bindgen.patch
- dropped U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- New BuildRequires:
  * python3-PyYAML
- enable llvm also for non-driver build to fix:
  "llvmpipe requires LLVM and is enabled, but LLVM is disabled".</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
</package>
<package pkgid="e001e0ad5e54c771a942096eefa40de9c3f51867e929a9d4570448291ffbd46db4ecf4012decb486aedb8a6fe56ab8cb34f2326d120a6905b96b33326f68d764" name="Mesa-libGLESv1_CM-devel-32bit" arch="x86_64">
  <version epoch="0" ver="24.2.7" rel="393.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1732017600">- Update to release 24.2.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.7
- supersedes 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch</changelog>
</package>
<package pkgid="69d7d6848cc96503855894623bd39b98b71ccfdc77f0a74c59bb0e067069bd6d55decc9e83607cd018b143d968702963f673e194aa71b965b5a73b3979c6e13b" name="Mesa-libGLESv2-devel" arch="i586">
  <version epoch="0" ver="24.1.3" rel="390.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860800">- Update to bugfix release 24.0.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.6.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860801">-  Update to bugfix release 24.0.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.7.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
</package>
<package pkgid="7b78d7c404d61d673d0368da93464f4fc44b74a03daea951bfa8771e33600dbc052be6c0f7713c1ff942bb0d0316a28bc9462508a73d9bebf9c51d9cba7153cd" name="Mesa-libGLESv2-devel" arch="x86_64">
  <version epoch="0" ver="24.1.3" rel="390.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860800">- Update to bugfix release 24.0.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.6.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860801">-  Update to bugfix release 24.0.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.7.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
</package>
<package pkgid="1fad4646f6fdf8722caddae0e2915d8d1d9c7c6f2f7a128ecc1c4e318aa176dc1d09f7f609b513b88d0da4df820255bc860170835959c26175102b73b4ba59ea" name="Mesa-libGLESv2-devel" arch="i586">
  <version epoch="0" ver="24.1.7" rel="391.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="b1619e9ee64414ea2ed92ac546198a1e8169551a85819b890d10db195aa1d5b0b65a63f214b40eb14e498682efa806a7f873e4fc16ea69d16f4ea6875360ad10" name="Mesa-libGLESv2-devel" arch="x86_64">
  <version epoch="0" ver="24.1.7" rel="391.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="312332d069ea33bd78d88dd4f4669ae9c43291079d6902eb2bc6d06ef80e66602c0749938b0da66087919c35d54d69703acd6205ce6f274c4969014bbc878b0a" name="Mesa-libGLESv2-devel" arch="i586">
  <version epoch="0" ver="24.2.6" rel="392.1"/>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1725796800">- Update to release 24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.0
- refreshed the following patches with quilt:
  * U_fix-mpeg1_2-decode-mesa-20.2.patch
  * n_add-Mesa-headers-again.patch
  * n_stop-iris-flicker.patch
  * u_dep_xcb.patch
  * u_fix_rust_bindgen.patch
- dropped U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- New BuildRequires:
  * python3-PyYAML
- enable llvm also for non-driver build to fix:
  "llvmpipe requires LLVM and is enabled, but LLVM is disabled".</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
</package>
<package pkgid="2c68d14e28b603efd7166dc2b6563b2092bfeae3a3d6e3e8422e777fa8baf58be3a84a90bb2f912bc67780f71ccefdf0c57e039260c29364a5d2c11faff13960" name="Mesa-libGLESv2-devel" arch="x86_64">
  <version epoch="0" ver="24.2.6" rel="392.1"/>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1725796800">- Update to release 24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.0
- refreshed the following patches with quilt:
  * U_fix-mpeg1_2-decode-mesa-20.2.patch
  * n_add-Mesa-headers-again.patch
  * n_stop-iris-flicker.patch
  * u_dep_xcb.patch
  * u_fix_rust_bindgen.patch
- dropped U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- New BuildRequires:
  * python3-PyYAML
- enable llvm also for non-driver build to fix:
  "llvmpipe requires LLVM and is enabled, but LLVM is disabled".</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
</package>
<package pkgid="260b88fa9230c48ff0a7278b27f2c699d3b359173da4e972a6dbd6861f60430a6b8f32433be8f66e57a12dc8f6f505f37928d06faa1083c89bcf6892c7e7cae1" name="Mesa-libGLESv2-devel" arch="i586">
  <version epoch="0" ver="24.2.7" rel="393.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1732017600">- Update to release 24.2.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.7
- supersedes 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch</changelog>
</package>
<package pkgid="e1dcae9986ac9f49e449e8f7ea7d3f38a1a0cbd302b4269b3f39694ec02044c6a749cfd70d63cbc6d7d4fd28afe143f5c154ace19e7e00b2a9f9b34a0508b7d4" name="Mesa-libGLESv2-devel" arch="x86_64">
  <version epoch="0" ver="24.2.7" rel="393.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1732017600">- Update to release 24.2.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.7
- supersedes 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch</changelog>
</package>
<package pkgid="860a22af221e5480605758237715359a7f6d0d5165c9a25b4f3e828ea5db6ca6a05c43d6bb6fd91fdd8bed179f8f888eff58f64b3d15320f3cf9f6c273a75652" name="Mesa-libGLESv2-devel-32bit" arch="x86_64">
  <version epoch="0" ver="24.1.3" rel="390.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860800">- Update to bugfix release 24.0.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.6.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860801">-  Update to bugfix release 24.0.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.7.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
</package>
<package pkgid="2505c764a03bd6a8cb44b4081175f7e7b2fc7ab5d9620d0fed015a4c0a50203d2629637f7e29cb13e860443067c107e3eb5d72c588ce614f8e426b1121c9d39a" name="Mesa-libGLESv2-devel-32bit" arch="x86_64">
  <version epoch="0" ver="24.1.7" rel="391.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="7b2fd2ab111f92eaba1964595108af2a15803a37423c972aa22c46445d0f9c513cd1fb4f606f092e3bada77871eb0094459229749e50f072994344f0fe1a6171" name="Mesa-libGLESv2-devel-32bit" arch="x86_64">
  <version epoch="0" ver="24.2.6" rel="392.1"/>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1725796800">- Update to release 24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.0
- refreshed the following patches with quilt:
  * U_fix-mpeg1_2-decode-mesa-20.2.patch
  * n_add-Mesa-headers-again.patch
  * n_stop-iris-flicker.patch
  * u_dep_xcb.patch
  * u_fix_rust_bindgen.patch
- dropped U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- New BuildRequires:
  * python3-PyYAML
- enable llvm also for non-driver build to fix:
  "llvmpipe requires LLVM and is enabled, but LLVM is disabled".</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
</package>
<package pkgid="dd69eaf9ca6a0705b0e98409a6f7d44106d8e9f545c261f776c4f4ab2551e92bf4d839e866d50bd41082108ea439c06573c1e16522a5b546ac4d465c626c73e3" name="Mesa-libGLESv2-devel-32bit" arch="x86_64">
  <version epoch="0" ver="24.2.7" rel="393.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1732017600">- Update to release 24.2.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.7
- supersedes 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch</changelog>
</package>
<package pkgid="421e1ab64cbdd9806f25ef397ca6b5b872697f6fe1e10d0de8237fb26000332240f755f67e974328bd75bbbd7b90dbf30f5fb4964c345057885bc993b6fb5b50" name="Mesa-libGLESv3-devel" arch="i586">
  <version epoch="0" ver="24.1.3" rel="390.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860800">- Update to bugfix release 24.0.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.6.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860801">-  Update to bugfix release 24.0.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.7.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
</package>
<package pkgid="8213e08f1dfc9f6be672721a161510446099a1168cc0bebdf23083e7ac00708b310e401e6a2ee97f520b41222dc2004686f8e419bd4755d123ff632f641e80dc" name="Mesa-libGLESv3-devel" arch="x86_64">
  <version epoch="0" ver="24.1.3" rel="390.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860800">- Update to bugfix release 24.0.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.6.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860801">-  Update to bugfix release 24.0.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.7.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
</package>
<package pkgid="279bc1bfc14038b4972d0b4c97ee40fe9ea924dc40972914476ac45ea3f694aeb50302ca40877968faa13098803954e11dbde9f5691c218a73c5a82c30807a74" name="Mesa-libGLESv3-devel" arch="i586">
  <version epoch="0" ver="24.1.7" rel="391.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="db73f2a080ec9512c27808bcb2a92df29d0499460bf6d1d009aafcc4fdc4fd350d8158d8dad3f3c10976c41f8c8af8585a7f4caf85b34ea77e3f33ae43939cda" name="Mesa-libGLESv3-devel" arch="x86_64">
  <version epoch="0" ver="24.1.7" rel="391.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="b68cfef7dcc4add370e03ea3e9996da25f898b4a8c3a7a4cbee09623191f0d8c0319b30d6387409eaa75d1d064508c380c943bdafaefd5435d72b5df1544f63c" name="Mesa-libGLESv3-devel" arch="i586">
  <version epoch="0" ver="24.2.6" rel="392.1"/>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1725796800">- Update to release 24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.0
- refreshed the following patches with quilt:
  * U_fix-mpeg1_2-decode-mesa-20.2.patch
  * n_add-Mesa-headers-again.patch
  * n_stop-iris-flicker.patch
  * u_dep_xcb.patch
  * u_fix_rust_bindgen.patch
- dropped U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- New BuildRequires:
  * python3-PyYAML
- enable llvm also for non-driver build to fix:
  "llvmpipe requires LLVM and is enabled, but LLVM is disabled".</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
</package>
<package pkgid="875128ebf94d19252e50546bcb431ef3d526771abc746057a06361d3794018080a82256a182580806fd8a0e15b767463fd380205b4d6c93a21e1c5f2f17e004f" name="Mesa-libGLESv3-devel" arch="x86_64">
  <version epoch="0" ver="24.2.6" rel="392.1"/>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1725796800">- Update to release 24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.0
- refreshed the following patches with quilt:
  * U_fix-mpeg1_2-decode-mesa-20.2.patch
  * n_add-Mesa-headers-again.patch
  * n_stop-iris-flicker.patch
  * u_dep_xcb.patch
  * u_fix_rust_bindgen.patch
- dropped U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- New BuildRequires:
  * python3-PyYAML
- enable llvm also for non-driver build to fix:
  "llvmpipe requires LLVM and is enabled, but LLVM is disabled".</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
</package>
<package pkgid="db15467fe974881a4733009b537b7ef3f781fc6f49aba7b81656836ff92ee9e8c6e0aef41f6e3a6bb180a0ac57618ab08619e792ebf368829f8aace4806c9947" name="Mesa-libGLESv3-devel" arch="i586">
  <version epoch="0" ver="24.2.7" rel="393.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1732017600">- Update to release 24.2.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.7
- supersedes 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch</changelog>
</package>
<package pkgid="186786fe3cc770c8530ca78b142887f2325cf2d45116f69c7089c2ce510b3525a5a1a1923e02449e9e70a6528358b6fea29a029d77844b0c111897d73f4c3cf5" name="Mesa-libGLESv3-devel" arch="x86_64">
  <version epoch="0" ver="24.2.7" rel="393.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1732017600">- Update to release 24.2.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.7
- supersedes 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch</changelog>
</package>
<package pkgid="3d63189e0dadc10a52c44de9e533b4ff36db7a65cf440ea718c35891bb33d6736d785ddcf11f28502b4034321a98690b84aaac2ac78f886fa0be65c73c630199" name="Mesa-libOpenCL" arch="i586">
  <version epoch="0" ver="24.1.3" rel="390.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860800">- Update to bugfix release 24.0.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.6.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860801">-  Update to bugfix release 24.0.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.7.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
</package>
<package pkgid="79945881daa5b5e78e4765e58c5d575184e96af8414e59e8785680ffc273d6d061186a99fdb86183e740db3527a8f2258ad6de6bc2eaabb0712c55fadffa168d" name="Mesa-libOpenCL" arch="x86_64">
  <version epoch="0" ver="24.1.3" rel="390.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860800">- Update to bugfix release 24.0.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.6.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860801">-  Update to bugfix release 24.0.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.7.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
</package>
<package pkgid="c168afef108b71ef75c8c33a1bcc200a4ac9c562fd490efe6208acd569b7a7fa4874d0ed7d736204af319370cf19824a1a1c170fcbcc0f4b1c14538e5e4435d3" name="Mesa-libOpenCL" arch="i586">
  <version epoch="0" ver="24.1.7" rel="391.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="bf55a43aeec44839f894c45ee832ba6c439cbc2216f0661c531bdec0cdb40bdb502dcd3b250fb021343c63f9a701420dd5627e616b1b748e3923c38cec8adb8b" name="Mesa-libOpenCL" arch="x86_64">
  <version epoch="0" ver="24.1.7" rel="391.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="86ac284823d70c1e034482c5194945ccc095750c77f848821a3785e01bc27789126183c3571148ce16493a27379295fca0958ed40db51e5319a72c2ada6b3e0e" name="Mesa-libOpenCL" arch="i586">
  <version epoch="0" ver="24.1.7" rel="391.2"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="eaaa2724cf2999f0bc6c0ba0c038a062f86182e459b950514a78650efb451e75c2926ce412496d5d6ca5da690b378eae38e912fc2c4fe65c364d275100cf4646" name="Mesa-libOpenCL" arch="x86_64">
  <version epoch="0" ver="24.1.7" rel="391.2"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="c3696e71fea0d57ddcde8ebefaa55fe36ff8124d29930bf85ae227ac602c961772aef4c07cd7022757722ef5f2f21fc9844d860df32da9193b866b7eee69988a" name="Mesa-libOpenCL" arch="i586">
  <version epoch="0" ver="24.2.6" rel="392.1"/>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1725796800">- Update to release 24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.0
- refreshed the following patches with quilt:
  * U_fix-mpeg1_2-decode-mesa-20.2.patch
  * n_add-Mesa-headers-again.patch
  * n_stop-iris-flicker.patch
  * u_dep_xcb.patch
  * u_fix_rust_bindgen.patch
- dropped U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- New BuildRequires:
  * python3-PyYAML
- enable llvm also for non-driver build to fix:
  "llvmpipe requires LLVM and is enabled, but LLVM is disabled".</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
</package>
<package pkgid="3f050d8a08a2a8b0b6868c3a8a465bb67efc7c08e308645e66c974b7cca453158ee9224429a63f871b276feffa71c8b30126baa2b49cfa465c0fdfccecd67b93" name="Mesa-libOpenCL" arch="x86_64">
  <version epoch="0" ver="24.2.6" rel="392.1"/>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1725796800">- Update to release 24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.0
- refreshed the following patches with quilt:
  * U_fix-mpeg1_2-decode-mesa-20.2.patch
  * n_add-Mesa-headers-again.patch
  * n_stop-iris-flicker.patch
  * u_dep_xcb.patch
  * u_fix_rust_bindgen.patch
- dropped U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- New BuildRequires:
  * python3-PyYAML
- enable llvm also for non-driver build to fix:
  "llvmpipe requires LLVM and is enabled, but LLVM is disabled".</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
</package>
<package pkgid="0ba5d6712d96ec3392dcceed70b36e86afb8fd44b264e1f8aec56ba55ecd8dbd654c6e2ef54bf36d5831d6be248a914087345116ac326c40dbe2e5678c813c3a" name="Mesa-libOpenCL" arch="i586">
  <version epoch="0" ver="24.2.7" rel="393.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1732017600">- Update to release 24.2.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.7
- supersedes 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch</changelog>
</package>
<package pkgid="7405948896da60936648fafea4a484f74b11dd461011ab7a3390cd726e32e21550f1e8d4917dd838b04fa746a08aff86781fe7070bca6aec00566396510574a6" name="Mesa-libOpenCL" arch="x86_64">
  <version epoch="0" ver="24.2.7" rel="393.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1732017600">- Update to release 24.2.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.7
- supersedes 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch</changelog>
</package>
<package pkgid="67d54a1f6952e3a2dad9f7734c7c0d3745aca2ca5c48a0770600c694e8a304305281091eb1f667cd47b82874734e217ceb4fcfccca5e82b83b50037301dc2698" name="Mesa-libOpenCL-debuginfo" arch="i586">
  <version epoch="0" ver="24.1.3" rel="390.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860800">- Update to bugfix release 24.0.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.6.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860801">-  Update to bugfix release 24.0.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.7.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
</package>
<package pkgid="dde4d3e29ef9d9d25c0331e2663dded3a20b71b60fc913f6c245580db8cf50f7968962bfbfd92ab80751dfb80c90d9f9785e406bf480b106d93875202d2b9717" name="Mesa-libOpenCL-debuginfo" arch="x86_64">
  <version epoch="0" ver="24.1.3" rel="390.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860800">- Update to bugfix release 24.0.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.6.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860801">-  Update to bugfix release 24.0.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.7.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
</package>
<package pkgid="41faf95d3332f626c1989d3549130c4d8381865a2d415a493bf8b219012a5a4c4cd763c7cbb90a31a2304b005c09e36612e3b3525add47f377d8e5e764bf5175" name="Mesa-libOpenCL-debuginfo" arch="i586">
  <version epoch="0" ver="24.1.7" rel="391.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="e44c2988bfb18e7cccae3bd71ea7ad109b3215179b5ac45267fb6a6a6822dcb0ffc59f6d7aae27efa7ebb66757684947ecb32870f4bf5d2bf49521c728309d7c" name="Mesa-libOpenCL-debuginfo" arch="x86_64">
  <version epoch="0" ver="24.1.7" rel="391.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="82620f57ac04efbe819d6838b265f4eddb68fd271fc47f69a3a0d61cd60acbff0031649c9c6c125afc9b220b0e613ffa50164789b742d3d176f3d3b706ded29c" name="Mesa-libOpenCL-debuginfo" arch="i586">
  <version epoch="0" ver="24.1.7" rel="391.2"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="ad703d448160dc6fda0741bcb2aa3febb7761e8157cef3bcc8b9d8988ddf5ab09817ce22f9996913482ac8d8ec6bf33a042ba6e83f04fd3e4c4cdea785bd7ba8" name="Mesa-libOpenCL-debuginfo" arch="x86_64">
  <version epoch="0" ver="24.1.7" rel="391.2"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="e21b91de11d9e286801b4b46153aeebc0ecb1c5e7f8dfb55c3cbd2e93d0890e48de47ca4c3661637596a9cea48ef8ebc419ca16d2b19db7e28f2eb6deab29c1d" name="Mesa-libOpenCL-debuginfo" arch="i586">
  <version epoch="0" ver="24.2.6" rel="392.1"/>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1725796800">- Update to release 24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.0
- refreshed the following patches with quilt:
  * U_fix-mpeg1_2-decode-mesa-20.2.patch
  * n_add-Mesa-headers-again.patch
  * n_stop-iris-flicker.patch
  * u_dep_xcb.patch
  * u_fix_rust_bindgen.patch
- dropped U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- New BuildRequires:
  * python3-PyYAML
- enable llvm also for non-driver build to fix:
  "llvmpipe requires LLVM and is enabled, but LLVM is disabled".</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
</package>
<package pkgid="035c91272cdc8d834bfb70d58096c1cd3c7417a944970644e40a5b5902b013b3f1bd40aecc443ddf3d92a259d6d8cb37b1daae8e0170ecc6591dad9d6025050a" name="Mesa-libOpenCL-debuginfo" arch="x86_64">
  <version epoch="0" ver="24.2.6" rel="392.1"/>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1725796800">- Update to release 24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.0
- refreshed the following patches with quilt:
  * U_fix-mpeg1_2-decode-mesa-20.2.patch
  * n_add-Mesa-headers-again.patch
  * n_stop-iris-flicker.patch
  * u_dep_xcb.patch
  * u_fix_rust_bindgen.patch
- dropped U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- New BuildRequires:
  * python3-PyYAML
- enable llvm also for non-driver build to fix:
  "llvmpipe requires LLVM and is enabled, but LLVM is disabled".</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
</package>
<package pkgid="549638d57cf721e2daf4586f6727469e6e568bed9ee1e8b63c311163340e4a25762bb515616b40851d8b32d64782099d9ce727c0b6e44316a8508fa6bfcb40fd" name="Mesa-libOpenCL-debuginfo" arch="i586">
  <version epoch="0" ver="24.2.7" rel="393.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1732017600">- Update to release 24.2.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.7
- supersedes 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch</changelog>
</package>
<package pkgid="800ec349c259e409f40534609edc9ab6baa612d8ee1c9a0912f9474f26fca47d908028aadfb2cad5a1327e6ce33bf262a6e2d14b864f6fb92be29266a77ff359" name="Mesa-libOpenCL-debuginfo" arch="x86_64">
  <version epoch="0" ver="24.2.7" rel="393.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1732017600">- Update to release 24.2.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.7
- supersedes 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch</changelog>
</package>
<package pkgid="1db934b822ca0687ab03fda25eb250edd327d8b3b198ce23de55c4b964099a7d4e6b0fa7c9136da4b520d93f447864fd5231f7445bc8e3c82beab3a3a63a52fc" name="Mesa-libRusticlOpenCL" arch="i586">
  <version epoch="0" ver="24.1.3" rel="390.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860800">- Update to bugfix release 24.0.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.6.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860801">-  Update to bugfix release 24.0.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.7.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
</package>
<package pkgid="6b66a55322bf8e4538955595f943dd2ac71a6b5525e5d9de2e78689be387df03b67cc646acf768631bf7e479d0783e30f7ed9e93c97ae3565adf121ae3972304" name="Mesa-libRusticlOpenCL" arch="x86_64">
  <version epoch="0" ver="24.1.3" rel="390.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860800">- Update to bugfix release 24.0.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.6.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860801">-  Update to bugfix release 24.0.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.7.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
</package>
<package pkgid="5d54a2cd4b0590a57bf247e7ccaec4d5ac27e5dc2e512214595bff07572bc32dd4071a162c4f83291b89d78ef0ed4bc20f3fb450a06a49e101fd6a9e71192d64" name="Mesa-libRusticlOpenCL" arch="i586">
  <version epoch="0" ver="24.1.7" rel="391.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="bd0b2c8ac48f7eec16c7cec90fcc4a09c645d43760f280f8b8d68248ae9980f9ae30185c42b0257b44941c96e35e926ad45a494461964022a75077d7730d88a3" name="Mesa-libRusticlOpenCL" arch="x86_64">
  <version epoch="0" ver="24.1.7" rel="391.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="d9eb72c75ccc314ab0bd0ab2d0b1bcb0dc1276e7540e488e365566d05a8a21bc02803410ef68fa6eeade09645e3a63a1693bb8aa3ca87409c79182a99955c92c" name="Mesa-libRusticlOpenCL" arch="i586">
  <version epoch="0" ver="24.1.7" rel="391.2"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="06ac3795a9d5dca5a0cc2256e21a66a97e6522a1be9ce932ad65ca9f959f28129ed5f7862b594ef92f599f321b17592c51b466420a3ebddd53c22b63ed3ed634" name="Mesa-libRusticlOpenCL" arch="x86_64">
  <version epoch="0" ver="24.1.7" rel="391.2"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="02528a8764e8372ad84da171e1a5c61c9f540c313957946ad10c81b062e27c9adc52d0caa9b0693d661b36d63852f72191de0df3de8e5101d5a22b884c6601c0" name="Mesa-libRusticlOpenCL" arch="i586">
  <version epoch="0" ver="24.2.6" rel="392.1"/>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1725796800">- Update to release 24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.0
- refreshed the following patches with quilt:
  * U_fix-mpeg1_2-decode-mesa-20.2.patch
  * n_add-Mesa-headers-again.patch
  * n_stop-iris-flicker.patch
  * u_dep_xcb.patch
  * u_fix_rust_bindgen.patch
- dropped U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- New BuildRequires:
  * python3-PyYAML
- enable llvm also for non-driver build to fix:
  "llvmpipe requires LLVM and is enabled, but LLVM is disabled".</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
</package>
<package pkgid="ce5bac657f51114830a0a201a78494444c83126687b24649d0eb2c4b24cf647c602ae1fcd8f4c001a5e85772b68f59975839387156dc6d8b4971ee9f7a247d6e" name="Mesa-libRusticlOpenCL" arch="x86_64">
  <version epoch="0" ver="24.2.6" rel="392.1"/>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1725796800">- Update to release 24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.0
- refreshed the following patches with quilt:
  * U_fix-mpeg1_2-decode-mesa-20.2.patch
  * n_add-Mesa-headers-again.patch
  * n_stop-iris-flicker.patch
  * u_dep_xcb.patch
  * u_fix_rust_bindgen.patch
- dropped U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- New BuildRequires:
  * python3-PyYAML
- enable llvm also for non-driver build to fix:
  "llvmpipe requires LLVM and is enabled, but LLVM is disabled".</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
</package>
<package pkgid="4b29fb494e4eee29ed2ab061479737510632d508faeb7190e44c9d8e30ea9e7f5d17cad0d3b9510c0e4a8009ddd48ced4baf2d411410fcd107da72f585412fa8" name="Mesa-libRusticlOpenCL" arch="i586">
  <version epoch="0" ver="24.2.7" rel="393.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1732017600">- Update to release 24.2.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.7
- supersedes 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch</changelog>
</package>
<package pkgid="5543fe410bdc6b51c23156732a885323663dfad7ecc9e4827dd621ef53fb81512962919e5668cfb4fd55a7d3a1c22dbe20b89d72dc40bc259eb105386f196ee3" name="Mesa-libRusticlOpenCL" arch="x86_64">
  <version epoch="0" ver="24.2.7" rel="393.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1732017600">- Update to release 24.2.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.7
- supersedes 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch</changelog>
</package>
<package pkgid="b68f8199c7981ba43595419d7f6b1ea85e8382340b17211e71f66ce77a502f57bbc822d9cc729c0596f3a5c2e7994619b074952343c061b7ee878c63aebb4aa2" name="Mesa-libRusticlOpenCL-debuginfo" arch="i586">
  <version epoch="0" ver="24.1.3" rel="390.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860800">- Update to bugfix release 24.0.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.6.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860801">-  Update to bugfix release 24.0.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.7.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
</package>
<package pkgid="00565edad1b188ac4c93179588ce3b66331b1f3af141211211b6cc9ef4d168a2855565413058cafb3bd308f4a32411a99c88b87266422af41369251781799fa5" name="Mesa-libRusticlOpenCL-debuginfo" arch="x86_64">
  <version epoch="0" ver="24.1.3" rel="390.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860800">- Update to bugfix release 24.0.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.6.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860801">-  Update to bugfix release 24.0.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.7.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
</package>
<package pkgid="f1df9107b5d8780be280b66f0a9e709057c3772a1c45a68514c9982248a2c0c25b6b0d1a66a42f35fac119647fc103ee2419ba68664f5d3a0a04c37a953e7d40" name="Mesa-libRusticlOpenCL-debuginfo" arch="i586">
  <version epoch="0" ver="24.1.7" rel="391.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="6962421b2564b97ee1ec18e823dcbf5569d950f061cd71770998950b7d475e5f17e58e86653e3c20e71aeb4317a7cb6028c9340ae4472ef63e083181746280b1" name="Mesa-libRusticlOpenCL-debuginfo" arch="x86_64">
  <version epoch="0" ver="24.1.7" rel="391.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="789fc3e479b6880581a64ed2142f2fb3919f1c29dca4bc73ee10ac6dcc7b48ab2adbac3ec5214220231387b5a9f38879c26c81184238c67753469dab12223a28" name="Mesa-libRusticlOpenCL-debuginfo" arch="i586">
  <version epoch="0" ver="24.1.7" rel="391.2"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="a9ea99eeeb94d5eebe904ce3001d48e7848a70e4e2453972584b4b1b8100f5913201175ef13b3d0306282d3702256d2117e2dd81aaff0cf23b305588e4ef73ca" name="Mesa-libRusticlOpenCL-debuginfo" arch="x86_64">
  <version epoch="0" ver="24.1.7" rel="391.2"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="3a7b69c2f55238d007d489b24face714b9f8aef934a712f19fe01ca1166678e71ede17e8b12d4891a1916a164214ce2aef87c3ceef71fccd59afd512181db24d" name="Mesa-libRusticlOpenCL-debuginfo" arch="i586">
  <version epoch="0" ver="24.2.6" rel="392.1"/>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1725796800">- Update to release 24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.0
- refreshed the following patches with quilt:
  * U_fix-mpeg1_2-decode-mesa-20.2.patch
  * n_add-Mesa-headers-again.patch
  * n_stop-iris-flicker.patch
  * u_dep_xcb.patch
  * u_fix_rust_bindgen.patch
- dropped U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- New BuildRequires:
  * python3-PyYAML
- enable llvm also for non-driver build to fix:
  "llvmpipe requires LLVM and is enabled, but LLVM is disabled".</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
</package>
<package pkgid="815cc9f72346e61ed8e34362346006a810fe786f0e4eb47eac164d849c863ef191fbf2e5b666bedeac0c4aeadfc84c51132f5913cd4535f19bea26f623e40e2d" name="Mesa-libRusticlOpenCL-debuginfo" arch="x86_64">
  <version epoch="0" ver="24.2.6" rel="392.1"/>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1725796800">- Update to release 24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.0
- refreshed the following patches with quilt:
  * U_fix-mpeg1_2-decode-mesa-20.2.patch
  * n_add-Mesa-headers-again.patch
  * n_stop-iris-flicker.patch
  * u_dep_xcb.patch
  * u_fix_rust_bindgen.patch
- dropped U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- New BuildRequires:
  * python3-PyYAML
- enable llvm also for non-driver build to fix:
  "llvmpipe requires LLVM and is enabled, but LLVM is disabled".</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
</package>
<package pkgid="937588b2c51d4f3dc3d6401147a8dd6362684ecf1252fd5fa4d32dbed796e5dea9ec1252078f218432f371360b65ff2f42002a6a0d88575c59096f58170a714f" name="Mesa-libRusticlOpenCL-debuginfo" arch="i586">
  <version epoch="0" ver="24.2.7" rel="393.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1732017600">- Update to release 24.2.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.7
- supersedes 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch</changelog>
</package>
<package pkgid="d7fede831f6eddd2bf0d5fee506ce39981ef727d111c3b7ed781099280a944ed4598d578d74dd3e6cf86da80dc3f0db1d6db64192efe72e73ad3bb70692d7057" name="Mesa-libRusticlOpenCL-debuginfo" arch="x86_64">
  <version epoch="0" ver="24.2.7" rel="393.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1732017600">- Update to release 24.2.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.7
- supersedes 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch</changelog>
</package>
<package pkgid="6fe0dca6bf6483a16a9d3bf0f6bc637a234421d63a4f770ca2bd86ba228f7ea917982a93e086a1cf51e1a934728eeaf85a61dcabf7d903eadf6169493bac2922" name="Mesa-libd3d" arch="i586">
  <version epoch="0" ver="24.1.3" rel="390.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860800">- Update to bugfix release 24.0.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.6.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860801">-  Update to bugfix release 24.0.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.7.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
</package>
<package pkgid="655ad66385ab83841652cc0ca8997320db6f90906920ad77044fc5276ec294c3c5a609f476f1808b982d963d4d89b6f023dec613029b9c21f1b6ec3d85e63500" name="Mesa-libd3d" arch="x86_64">
  <version epoch="0" ver="24.1.3" rel="390.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860800">- Update to bugfix release 24.0.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.6.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860801">-  Update to bugfix release 24.0.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.7.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
</package>
<package pkgid="63a712148bfc628f89ca83ad545383485bbbce9ee72bf2c40e35ba6d96bd9ae7173e35ffa7c1ee35415d195dfa58ea5babdfdefa5a4079c9ce3ec799c9943058" name="Mesa-libd3d" arch="i586">
  <version epoch="0" ver="24.1.7" rel="391.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="cacf242eb15008dbdd3550f0e0eec94a79c0d816b3b3c522f8607caabe84b83f95551491596f5d3455b80615e964287e78a442f2d1e8b5847ec39e476f5c621d" name="Mesa-libd3d" arch="x86_64">
  <version epoch="0" ver="24.1.7" rel="391.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="0e78779c981c70a41520fc9239a2f85aaae5f6651152e144284f8eaafaba7e7a2f52d9782ce596f701816177a68544a666a20c7b9b142acc226276af89406a83" name="Mesa-libd3d" arch="i586">
  <version epoch="0" ver="24.1.7" rel="391.2"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="522fd835ea46b2e182943d70aa09f03cb88649ee0eecee16e1faac1da916c99f24a4b75915d07a669c3caab0839f76a961e55c08ddaf1aaa0c16840a15c4f8d1" name="Mesa-libd3d" arch="x86_64">
  <version epoch="0" ver="24.1.7" rel="391.2"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="ce82944edb962a014dcb54f5ff815a4f6a316516eeb8751ca69419b2221ec52e4a27c81921877de89eb20f15c55ba3fbcaec7e3285fa7a58327c765580d9aa8f" name="Mesa-libd3d" arch="i586">
  <version epoch="0" ver="24.2.6" rel="392.1"/>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1725796800">- Update to release 24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.0
- refreshed the following patches with quilt:
  * U_fix-mpeg1_2-decode-mesa-20.2.patch
  * n_add-Mesa-headers-again.patch
  * n_stop-iris-flicker.patch
  * u_dep_xcb.patch
  * u_fix_rust_bindgen.patch
- dropped U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- New BuildRequires:
  * python3-PyYAML
- enable llvm also for non-driver build to fix:
  "llvmpipe requires LLVM and is enabled, but LLVM is disabled".</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
</package>
<package pkgid="39e4c98a3a1d6019b66d1922ef3247acf60b579d84de2f410467dc771e4cc9f2dc70523abcbc732157b26179b7c4511e6c753430b116de550c485ee4a76e396a" name="Mesa-libd3d" arch="x86_64">
  <version epoch="0" ver="24.2.6" rel="392.1"/>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1725796800">- Update to release 24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.0
- refreshed the following patches with quilt:
  * U_fix-mpeg1_2-decode-mesa-20.2.patch
  * n_add-Mesa-headers-again.patch
  * n_stop-iris-flicker.patch
  * u_dep_xcb.patch
  * u_fix_rust_bindgen.patch
- dropped U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- New BuildRequires:
  * python3-PyYAML
- enable llvm also for non-driver build to fix:
  "llvmpipe requires LLVM and is enabled, but LLVM is disabled".</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
</package>
<package pkgid="f5340a0fa3e4db1acd4349680def8ae8550ed9f0bf55eda827ff74f7e5af66ae4156fd1167ac8102fa5f0470a09fb2314e74df6f4788b064bc1d6962e0cca0bd" name="Mesa-libd3d" arch="i586">
  <version epoch="0" ver="24.2.7" rel="393.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1732017600">- Update to release 24.2.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.7
- supersedes 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch</changelog>
</package>
<package pkgid="6ce74655e8383c3e109561030927cc494aa302a0861102becb52bca6aa2a33798fb19cb562a5238c03a468f84d3f345f5278548b72b7da5565e96a3b217673f5" name="Mesa-libd3d" arch="x86_64">
  <version epoch="0" ver="24.2.7" rel="393.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1732017600">- Update to release 24.2.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.7
- supersedes 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch</changelog>
</package>
<package pkgid="c48ed58aaa0209200b08e104c01298cedf1e5f1eaded8431e7ed15cfab7062f6ffd34f8f8533d0991fe2bc0d14ab32e89bec3470f41ec8168bcd16e789a5cde5" name="Mesa-libd3d-32bit" arch="x86_64">
  <version epoch="0" ver="24.1.3" rel="390.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860800">- Update to bugfix release 24.0.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.6.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860801">-  Update to bugfix release 24.0.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.7.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
</package>
<package pkgid="764ce4266d067369ac3cd504ce649c01a15d6e91a94d9d460ca8a5dd621832c46f4c4cf6cc0b2bb99485bed73551db48c412b925d310a6178aca71ae767bdf92" name="Mesa-libd3d-32bit" arch="x86_64">
  <version epoch="0" ver="24.1.7" rel="391.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="791e260098d85c332dc2479508c0a38d6a832c8c177173f132960b0f2a1c9e414748c5025cec4a99cf91bf3e37e8013be2dfd6573894faff6c89ebf86b1e00ba" name="Mesa-libd3d-32bit" arch="x86_64">
  <version epoch="0" ver="24.1.7" rel="391.2"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="43e1b92c6e3ea75267bd478596cbf5017b1f46d0f752461a5a2b8b0033bab49a296e40f4d5897e1b6a723ba72b01a6fab5131bc8ca2eb0803275dcd5a317c8b7" name="Mesa-libd3d-32bit" arch="x86_64">
  <version epoch="0" ver="24.2.6" rel="392.1"/>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1725796800">- Update to release 24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.0
- refreshed the following patches with quilt:
  * U_fix-mpeg1_2-decode-mesa-20.2.patch
  * n_add-Mesa-headers-again.patch
  * n_stop-iris-flicker.patch
  * u_dep_xcb.patch
  * u_fix_rust_bindgen.patch
- dropped U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- New BuildRequires:
  * python3-PyYAML
- enable llvm also for non-driver build to fix:
  "llvmpipe requires LLVM and is enabled, but LLVM is disabled".</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
</package>
<package pkgid="85e3e0ca9eb7e0dd887b86a0f71a5ce7cb8688521a27c4a32a7d80be6055aff747f60e73e0d9f037aa295716b15f00df6823ac4bb10777b759eefe15624cf0c0" name="Mesa-libd3d-32bit" arch="x86_64">
  <version epoch="0" ver="24.2.7" rel="393.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1732017600">- Update to release 24.2.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.7
- supersedes 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch</changelog>
</package>
<package pkgid="ad71d1b532335e51f0430467b94628017ec79910452dab6d1a354b59e12f3d5c7a7d0a40ced5c9842834c1ed67632dbf69182cc3db092b0944947bfdf62d3935" name="Mesa-libd3d-32bit-debuginfo" arch="x86_64">
  <version epoch="0" ver="24.1.3" rel="390.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860800">- Update to bugfix release 24.0.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.6.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860801">-  Update to bugfix release 24.0.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.7.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
</package>
<package pkgid="547b6aa630e21efd08245c88235730069a2cb3c802ef381b68ffc5105c33363fcee0c5b19068b25a3a19f907623978d7039e7c00c7b4faafac615557716f28af" name="Mesa-libd3d-32bit-debuginfo" arch="x86_64">
  <version epoch="0" ver="24.1.7" rel="391.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="34637c7abfcdc5a538afa7f35674aa11e462f486bb50cc17b3518301e81aa9651a6455891f9a4c02d68f632dae1b1191dbed56f1ecb3ca2e7bf9c81a9ad4a9ae" name="Mesa-libd3d-32bit-debuginfo" arch="x86_64">
  <version epoch="0" ver="24.1.7" rel="391.2"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="d28bd77f194330af1cc4bf6e4463160cddd3d1b3e7b598c8bf11df1db2a8004e45beb3446ae81ecfa7a864f2d63cbac5aba63bc5487c618c6590e4984a925e59" name="Mesa-libd3d-32bit-debuginfo" arch="x86_64">
  <version epoch="0" ver="24.2.6" rel="392.1"/>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1725796800">- Update to release 24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.0
- refreshed the following patches with quilt:
  * U_fix-mpeg1_2-decode-mesa-20.2.patch
  * n_add-Mesa-headers-again.patch
  * n_stop-iris-flicker.patch
  * u_dep_xcb.patch
  * u_fix_rust_bindgen.patch
- dropped U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- New BuildRequires:
  * python3-PyYAML
- enable llvm also for non-driver build to fix:
  "llvmpipe requires LLVM and is enabled, but LLVM is disabled".</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
</package>
<package pkgid="3e1410251802ad0fe8b9057cc61ba727abc56e30c44eba2011dbdc3f791e23d4394f6455d5cb1d4ea19396e36f00d6ba045487ecf5ba043654289a6aa2743f1e" name="Mesa-libd3d-32bit-debuginfo" arch="x86_64">
  <version epoch="0" ver="24.2.7" rel="393.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1732017600">- Update to release 24.2.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.7
- supersedes 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch</changelog>
</package>
<package pkgid="23fb666220ddfa677df33e800b26e8ad2de6cb6ac1a728ae2d8d3e3b2444fba87e1763f93b9f34f263f2cb8d6910d6931b3b8bab9ef3b769ed3e5b178a7b2800" name="Mesa-libd3d-debuginfo" arch="i586">
  <version epoch="0" ver="24.1.3" rel="390.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860800">- Update to bugfix release 24.0.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.6.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860801">-  Update to bugfix release 24.0.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.7.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
</package>
<package pkgid="7965c63109d3128a028b29b5c5de2963349a660a48a03662edeb34ef10b601a6b43f33cda4f67891a2d84d4dbdf4d9b668f0a907f3f8ca8d63212222cf18fb9a" name="Mesa-libd3d-debuginfo" arch="x86_64">
  <version epoch="0" ver="24.1.3" rel="390.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860800">- Update to bugfix release 24.0.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.6.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860801">-  Update to bugfix release 24.0.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.7.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
</package>
<package pkgid="c5e5abada3af4a1a09ed5e194c816f0784d45282d7727d7b21a9f5fe77b2bcc4c74399f865742d86870d01ce27a38886239233c21917c57b7778d182a05ca1e7" name="Mesa-libd3d-debuginfo" arch="i586">
  <version epoch="0" ver="24.1.7" rel="391.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="bab32215df9bf354e64defe6217e18ad44368b4258905fb9e2b07c3fccd7e14793a014a6da3af19d177024a6e19e83da0d45f8cc2aa125dd7c3f58514f84def2" name="Mesa-libd3d-debuginfo" arch="x86_64">
  <version epoch="0" ver="24.1.7" rel="391.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="7f1dff89f406760cd75a8f6579cf667e305828ec97122d9a5560cd89c3c351f8207b26a147ea2bef3ce47ce2b9da9cea5ea803ef8d34b877f79afda28e2289eb" name="Mesa-libd3d-debuginfo" arch="i586">
  <version epoch="0" ver="24.1.7" rel="391.2"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="098e46589246f78343a8587aa6f4d8c59153aff2374a6229b7ed31be8db8b40e552c0cb7e3af2d98236686b13a96f8a6f93d23320176a07e12bcefa15efd3bbd" name="Mesa-libd3d-debuginfo" arch="x86_64">
  <version epoch="0" ver="24.1.7" rel="391.2"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="f762c6e5a1da77865ada347bbd83a3c05c642c77ce1b2b811f0a6062f0d3b6c40a769dbaf28c79d945293e32b8844ad5e9f55bebeb68c53882f5aad2c267a0d1" name="Mesa-libd3d-debuginfo" arch="i586">
  <version epoch="0" ver="24.2.6" rel="392.1"/>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1725796800">- Update to release 24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.0
- refreshed the following patches with quilt:
  * U_fix-mpeg1_2-decode-mesa-20.2.patch
  * n_add-Mesa-headers-again.patch
  * n_stop-iris-flicker.patch
  * u_dep_xcb.patch
  * u_fix_rust_bindgen.patch
- dropped U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- New BuildRequires:
  * python3-PyYAML
- enable llvm also for non-driver build to fix:
  "llvmpipe requires LLVM and is enabled, but LLVM is disabled".</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
</package>
<package pkgid="e3cada4899c69cb625ebde9cc795c9bf6994788aa25ac229136397d054712d066ce536a7f469f48de52ab18ab682acd221d1871631ac7dbda091176f8c13010a" name="Mesa-libd3d-debuginfo" arch="x86_64">
  <version epoch="0" ver="24.2.6" rel="392.1"/>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1725796800">- Update to release 24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.0
- refreshed the following patches with quilt:
  * U_fix-mpeg1_2-decode-mesa-20.2.patch
  * n_add-Mesa-headers-again.patch
  * n_stop-iris-flicker.patch
  * u_dep_xcb.patch
  * u_fix_rust_bindgen.patch
- dropped U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- New BuildRequires:
  * python3-PyYAML
- enable llvm also for non-driver build to fix:
  "llvmpipe requires LLVM and is enabled, but LLVM is disabled".</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
</package>
<package pkgid="b7998dd9e1e4fb245b75841777a21f66062d368a7faeead46888c21974f9ea686d52668ca156ed15a79f3cc3fefb676679bc38e7dfd4963dd470f78e1b97c11f" name="Mesa-libd3d-debuginfo" arch="i586">
  <version epoch="0" ver="24.2.7" rel="393.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1732017600">- Update to release 24.2.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.7
- supersedes 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch</changelog>
</package>
<package pkgid="c5e27850af66f792ebffd526895ef2d182171bc8cc9cb99f5d203265bcb1a2074b1a69ff426741a2928092ad140e2069fb5888948b165e62f11a376b790cd3dd" name="Mesa-libd3d-debuginfo" arch="x86_64">
  <version epoch="0" ver="24.2.7" rel="393.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1732017600">- Update to release 24.2.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.7
- supersedes 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch</changelog>
</package>
<package pkgid="08e576a0e1d37514b8d4eb9bfa1ba6ebcd9d8e5a43a3393659a414e6922abd00ce3532405666d3162538087c82666421e9cc0a9a9dd665c356821da0a08aaa11" name="Mesa-libd3d-devel" arch="i586">
  <version epoch="0" ver="24.1.3" rel="390.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860800">- Update to bugfix release 24.0.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.6.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860801">-  Update to bugfix release 24.0.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.7.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
</package>
<package pkgid="8992c5bfdcd599cf0e4d5775287fe618c2164dde45ae53fd0b35aad67187deefbea68f0a8eb2824cf64032eeed89c3a099c85e6c44a352be41900d5c6ed53c96" name="Mesa-libd3d-devel" arch="x86_64">
  <version epoch="0" ver="24.1.3" rel="390.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860800">- Update to bugfix release 24.0.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.6.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860801">-  Update to bugfix release 24.0.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.7.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
</package>
<package pkgid="2a4b5b03e9afc92d82246bff90d7b4d5f4333d108d6053619c1cf2a2c5823644985a21b2750d67dbb3dee74f1d278ba5f6fec3870dec2b88b0691f3c9a491139" name="Mesa-libd3d-devel" arch="i586">
  <version epoch="0" ver="24.1.7" rel="391.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="e81162a5fa9c42ff13d4816dc5b91c17f85e445891a6daddf52f227312e6984b540bb24a6aa955cdd3d8514e660477cfc8efa740fa650d981ba5effef975385e" name="Mesa-libd3d-devel" arch="x86_64">
  <version epoch="0" ver="24.1.7" rel="391.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="18a53ad38bf498d3a00894d802955f0789041723105e9444533b0fa4306c9e3008ae0e6509e4fa29e104752c514c5ded133e666ed7fec8d116c9993916ce9e6e" name="Mesa-libd3d-devel" arch="i586">
  <version epoch="0" ver="24.1.7" rel="391.2"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="3d22cd840272146ba2b64247e43c00aa38b374273f5739793454a21396d35928ff51f7c005c82065359dbf99312cba42c0fe31956a13ab542b7aebeb0f3ef4eb" name="Mesa-libd3d-devel" arch="x86_64">
  <version epoch="0" ver="24.1.7" rel="391.2"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="63a077c439535ca6f2842344ee6a5890c2f515d076986c1cb37414d17b7af455f69f8da87a1a0016322befa7aeb65ccdc85e91e217a9f7f5be52fe5849537a22" name="Mesa-libd3d-devel" arch="i586">
  <version epoch="0" ver="24.2.6" rel="392.1"/>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1725796800">- Update to release 24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.0
- refreshed the following patches with quilt:
  * U_fix-mpeg1_2-decode-mesa-20.2.patch
  * n_add-Mesa-headers-again.patch
  * n_stop-iris-flicker.patch
  * u_dep_xcb.patch
  * u_fix_rust_bindgen.patch
- dropped U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- New BuildRequires:
  * python3-PyYAML
- enable llvm also for non-driver build to fix:
  "llvmpipe requires LLVM and is enabled, but LLVM is disabled".</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
</package>
<package pkgid="c459f6bb12ab5a3c21394226ba1253bb543e3b9aa2bc2de92c7fa1f5519b0049804de58ca6fbfd5039aac5209b283d7913f7db8119b504c7028e51ba52cb535c" name="Mesa-libd3d-devel" arch="x86_64">
  <version epoch="0" ver="24.2.6" rel="392.1"/>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1725796800">- Update to release 24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.0
- refreshed the following patches with quilt:
  * U_fix-mpeg1_2-decode-mesa-20.2.patch
  * n_add-Mesa-headers-again.patch
  * n_stop-iris-flicker.patch
  * u_dep_xcb.patch
  * u_fix_rust_bindgen.patch
- dropped U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- New BuildRequires:
  * python3-PyYAML
- enable llvm also for non-driver build to fix:
  "llvmpipe requires LLVM and is enabled, but LLVM is disabled".</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
</package>
<package pkgid="abe58144da7ef72ca46a907d0e0d0517d9bd55aa2c2c442b45ed5d32852088f947e00752c9209dc1396b428b4f945c19b39d0c5fd1fc508db1b0e7f319a5b665" name="Mesa-libd3d-devel" arch="i586">
  <version epoch="0" ver="24.2.7" rel="393.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1732017600">- Update to release 24.2.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.7
- supersedes 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch</changelog>
</package>
<package pkgid="c63c47ba6d918af40fb34c16c0a0b8a66a90c366cddf88dfe6e39175333afc8111aa219c40f601e5f499ec6593c4dac60191d7b20f1cf6884eed1dc0a5a24f0d" name="Mesa-libd3d-devel" arch="x86_64">
  <version epoch="0" ver="24.2.7" rel="393.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1732017600">- Update to release 24.2.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.7
- supersedes 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch</changelog>
</package>
<package pkgid="9112cfe010863a8c97c3cc1d8b2c70c39ab925e91a41b3dd432ade40704e84a1c054f000a32fb13c642a96775fec4d7ff56f9fa4e5a68561f309acb2f041fe93" name="Mesa-libd3d-devel-32bit" arch="x86_64">
  <version epoch="0" ver="24.1.3" rel="390.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860800">- Update to bugfix release 24.0.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.6.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860801">-  Update to bugfix release 24.0.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.7.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
</package>
<package pkgid="6c37f3537c5c19ab832e06460c01e538f92b09d09aad1c587d7798216c97318f4b44f43cfa15e8f92adf7c8103d2b1f361e22ca2a1ac6b69aac753ed9d7de215" name="Mesa-libd3d-devel-32bit" arch="x86_64">
  <version epoch="0" ver="24.1.7" rel="391.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="362b8d441ad5ee3267572e8441431a53fddbffc039d37d5f6c39c4caf0215c28391b8263037c65f7599a2ba072731c045559c7fa03f97923dd33ee4b02ad70b6" name="Mesa-libd3d-devel-32bit" arch="x86_64">
  <version epoch="0" ver="24.1.7" rel="391.2"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="1d60a26128db298ff2215fd22b9074e6eb8701864b82df4f16390cb5d1e3d7fa18d5869ec2e06f1cf73b13a2f6b35c8f9367400164071c259f6215508354bafe" name="Mesa-libd3d-devel-32bit" arch="x86_64">
  <version epoch="0" ver="24.2.6" rel="392.1"/>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1725796800">- Update to release 24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.0
- refreshed the following patches with quilt:
  * U_fix-mpeg1_2-decode-mesa-20.2.patch
  * n_add-Mesa-headers-again.patch
  * n_stop-iris-flicker.patch
  * u_dep_xcb.patch
  * u_fix_rust_bindgen.patch
- dropped U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- New BuildRequires:
  * python3-PyYAML
- enable llvm also for non-driver build to fix:
  "llvmpipe requires LLVM and is enabled, but LLVM is disabled".</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
</package>
<package pkgid="146ece240fce341a27dc99db7df68329e48a98cc026b2df3dcea4a535e35a68e1aa9559585450f2cee8a1d3b25033030fa129ec25870f9246fff868b96dc1b16" name="Mesa-libd3d-devel-32bit" arch="x86_64">
  <version epoch="0" ver="24.2.7" rel="393.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1732017600">- Update to release 24.2.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.7
- supersedes 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch</changelog>
</package>
<package pkgid="fc5c0bb037e152363b31d65e94d8b56aad86d1cbcca52faed0b11af1db8c7b21b3db36e0e3ca1fb7a39707cdeab75b5a23d3a8cad6f76b543b5beb57489493b0" name="Mesa-libglapi-devel" arch="i586">
  <version epoch="0" ver="24.1.3" rel="390.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860800">- Update to bugfix release 24.0.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.6.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860801">-  Update to bugfix release 24.0.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.7.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
</package>
<package pkgid="4e96c404cb74397fa54806aff21403045787fbb6d396840f0aafe0720aed71b7117fc3394e7d1b42108b28d2603c72dacaf0905ddaac5b0d15875dda9d3920ec" name="Mesa-libglapi-devel" arch="x86_64">
  <version epoch="0" ver="24.1.3" rel="390.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860800">- Update to bugfix release 24.0.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.6.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860801">-  Update to bugfix release 24.0.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.7.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
</package>
<package pkgid="6b54936cf60f392a15b1580cb446cbaa5789bfd768061309356f456fbbd0c3be7eff9057de7893e003443097ae215da3f1977779b0b30dcd599053b398564e7d" name="Mesa-libglapi-devel" arch="i586">
  <version epoch="0" ver="24.1.7" rel="391.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="87a4e21c9acd4fc37f6ae61344a64a05b5e11891d289a37a475bc5c2009c6624530f8785a641d14aec4033a29f5bc87788994731bf45bc3a19c587ce8c089cdf" name="Mesa-libglapi-devel" arch="x86_64">
  <version epoch="0" ver="24.1.7" rel="391.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="11b17bc2df93c87cf7fa9f65a9d7f1e6546e2cf1926107dfac1f52c19fea7ff4734b9e323ff8318ce5516fd0281eb19d56ffc141ab999bf5cd156fefbe822964" name="Mesa-libglapi-devel" arch="i586">
  <version epoch="0" ver="24.2.6" rel="392.1"/>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1725796800">- Update to release 24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.0
- refreshed the following patches with quilt:
  * U_fix-mpeg1_2-decode-mesa-20.2.patch
  * n_add-Mesa-headers-again.patch
  * n_stop-iris-flicker.patch
  * u_dep_xcb.patch
  * u_fix_rust_bindgen.patch
- dropped U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- New BuildRequires:
  * python3-PyYAML
- enable llvm also for non-driver build to fix:
  "llvmpipe requires LLVM and is enabled, but LLVM is disabled".</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
</package>
<package pkgid="4dab6133ac312643c8d485e5b7f720c802a7f0eeb28f5e4e1c9c0b3bd35729e8b451b993e05d0f9138bb12f4521c5447e694c3d0c18e01c7022dff12056e05e3" name="Mesa-libglapi-devel" arch="x86_64">
  <version epoch="0" ver="24.2.6" rel="392.1"/>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1725796800">- Update to release 24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.0
- refreshed the following patches with quilt:
  * U_fix-mpeg1_2-decode-mesa-20.2.patch
  * n_add-Mesa-headers-again.patch
  * n_stop-iris-flicker.patch
  * u_dep_xcb.patch
  * u_fix_rust_bindgen.patch
- dropped U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- New BuildRequires:
  * python3-PyYAML
- enable llvm also for non-driver build to fix:
  "llvmpipe requires LLVM and is enabled, but LLVM is disabled".</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
</package>
<package pkgid="c8d05c69762c21b95dceb210fa21baa533f89783fcc8872f5fdb1f03b89a93728374df3770e31473238b889118cb1fec1ddcfc6aebdb27a443c6c4c9a605fa03" name="Mesa-libglapi-devel" arch="i586">
  <version epoch="0" ver="24.2.7" rel="393.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1732017600">- Update to release 24.2.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.7
- supersedes 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch</changelog>
</package>
<package pkgid="0783d7911b03685a91390a2b4995e2d424d1388abfa2f6f64d84a1a69eb53a2acf7d679127931ce3f8050709b34f88c464483152fd43b30b2c93f9dac078d1b0" name="Mesa-libglapi-devel" arch="x86_64">
  <version epoch="0" ver="24.2.7" rel="393.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1732017600">- Update to release 24.2.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.7
- supersedes 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch</changelog>
</package>
<package pkgid="58f852453aa8f724c6e9600499e2bc8be0b0ca5bd68376c688f84046a72dd44a92d7fbbdfd1537422579fc88c2036809f4edae7ba727c4deec119ea09ac11f6f" name="Mesa-libglapi-devel-32bit" arch="x86_64">
  <version epoch="0" ver="24.1.3" rel="390.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860800">- Update to bugfix release 24.0.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.6.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860801">-  Update to bugfix release 24.0.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.7.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
</package>
<package pkgid="f5556378378dcdebcfa2c076b8c3028bc7a30a826426e26901320c7685a07da75611f224e61a6753f4930bfcfe5cdd5c4f2eaa100c3828d3f3c37e9878e7354c" name="Mesa-libglapi-devel-32bit" arch="x86_64">
  <version epoch="0" ver="24.1.7" rel="391.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="92c16e03bb431eaa684906773917c8481d56743437831c2e930ff8cefb764f0a2837d5aee2b6df13586d26b246ea52a61d63cffc43b73c25a0c3104b3c9efffe" name="Mesa-libglapi-devel-32bit" arch="x86_64">
  <version epoch="0" ver="24.2.6" rel="392.1"/>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1725796800">- Update to release 24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.0
- refreshed the following patches with quilt:
  * U_fix-mpeg1_2-decode-mesa-20.2.patch
  * n_add-Mesa-headers-again.patch
  * n_stop-iris-flicker.patch
  * u_dep_xcb.patch
  * u_fix_rust_bindgen.patch
- dropped U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- New BuildRequires:
  * python3-PyYAML
- enable llvm also for non-driver build to fix:
  "llvmpipe requires LLVM and is enabled, but LLVM is disabled".</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
</package>
<package pkgid="14018dcca8914f7886f65713cd149c69983bd3e5b9a735285389302d3eb33f538c34dd10441d3cee0633cb6336cd799079710d3cfd937e797770f86c45a58d01" name="Mesa-libglapi-devel-32bit" arch="x86_64">
  <version epoch="0" ver="24.2.7" rel="393.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1732017600">- Update to release 24.2.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.7
- supersedes 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch</changelog>
</package>
<package pkgid="d18eae59662e4248e3b91a2ce39129f1f3fa101dbffcaf606da0f93232deeabc8dc970144f1f174a9a7bc424c909d40147a10cf6f23334ca3ceff7acf19435cd" name="Mesa-libglapi0" arch="i586">
  <version epoch="0" ver="24.1.3" rel="390.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860800">- Update to bugfix release 24.0.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.6.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860801">-  Update to bugfix release 24.0.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.7.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
</package>
<package pkgid="d506b10e79c5a30156d2fb34e3c64898c27a5fa930fe62a515a03855ace9bcb16ead3608e72b16c265c894e5bbecf1f2bd6e8f0f3cfe25ccb93ea62921edd8e0" name="Mesa-libglapi0" arch="x86_64">
  <version epoch="0" ver="24.1.3" rel="390.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860800">- Update to bugfix release 24.0.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.6.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860801">-  Update to bugfix release 24.0.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.7.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
</package>
<package pkgid="f84c5f5c1137d8a4cced378aae3ca4f754e5413b9e6d49f75ea658dbb6045b94451ee7637bce8e11b284f555c085bca445b930de99d879e6de436585ca0f7e41" name="Mesa-libglapi0" arch="i586">
  <version epoch="0" ver="24.1.7" rel="391.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="9f8b061641059682f3e9f2784efc3a4aa655219decae1ac8c699552dbdfb3dc2252a18656579160ae68683a8dc40d87a6fa95812aaf50a286d308b929953ab7f" name="Mesa-libglapi0" arch="x86_64">
  <version epoch="0" ver="24.1.7" rel="391.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="8afdccff03163bf09b51cca8d11f6ad81b03505014c274c14e2ef7a2c0c3eece2d2b72588a9b59a480efa9395dae63fc0ea179d89838f167eabb2de20560c1d4" name="Mesa-libglapi0" arch="i586">
  <version epoch="0" ver="24.2.6" rel="392.1"/>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1725796800">- Update to release 24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.0
- refreshed the following patches with quilt:
  * U_fix-mpeg1_2-decode-mesa-20.2.patch
  * n_add-Mesa-headers-again.patch
  * n_stop-iris-flicker.patch
  * u_dep_xcb.patch
  * u_fix_rust_bindgen.patch
- dropped U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- New BuildRequires:
  * python3-PyYAML
- enable llvm also for non-driver build to fix:
  "llvmpipe requires LLVM and is enabled, but LLVM is disabled".</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
</package>
<package pkgid="6859f84e8df0209d2525a6c94a5e714eb56ded94df4a8f35ee4bbb62f2bb77021955be040b24f739bebb5e9cd69bce58eaea907fdf4545e5859c05d1c3535dc9" name="Mesa-libglapi0" arch="x86_64">
  <version epoch="0" ver="24.2.6" rel="392.1"/>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1725796800">- Update to release 24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.0
- refreshed the following patches with quilt:
  * U_fix-mpeg1_2-decode-mesa-20.2.patch
  * n_add-Mesa-headers-again.patch
  * n_stop-iris-flicker.patch
  * u_dep_xcb.patch
  * u_fix_rust_bindgen.patch
- dropped U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- New BuildRequires:
  * python3-PyYAML
- enable llvm also for non-driver build to fix:
  "llvmpipe requires LLVM and is enabled, but LLVM is disabled".</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
</package>
<package pkgid="9e33f636dcf0a03ed038284fad1cebdb174b8f41f33c48867c351d188624358a1e6c12df0ba373090c526e7190e3f50c34991b18bcfbfe9f1bfc9bf1c1904980" name="Mesa-libglapi0" arch="i586">
  <version epoch="0" ver="24.2.7" rel="393.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1732017600">- Update to release 24.2.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.7
- supersedes 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch</changelog>
</package>
<package pkgid="285c4f10a5e33a01faade90bd81949faaebf0cda5af5edd5313abc94b15bf42c46276c8ba4b1cb695232577f0a19734071271842521d793511c4665a7e492e8f" name="Mesa-libglapi0" arch="x86_64">
  <version epoch="0" ver="24.2.7" rel="393.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1732017600">- Update to release 24.2.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.7
- supersedes 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch</changelog>
</package>
<package pkgid="a697c77cc404e1134992bad65f2550392594d0103e922e7495fb62e3ec36d6f6cbdc4a298475fead2a01e0a71ef0f35c51c53ea6a519587d9b212d2ada0505aa" name="Mesa-libglapi0-32bit" arch="x86_64">
  <version epoch="0" ver="24.1.3" rel="390.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860800">- Update to bugfix release 24.0.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.6.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860801">-  Update to bugfix release 24.0.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.7.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
</package>
<package pkgid="f82400f8814acbcb3d834d5d1fa8f817f4b996e3617794e9f8b9885b63044028c9478351adcf17e27f54a92c97492680ccf58b067ca01a41d9706941b88b49fc" name="Mesa-libglapi0-32bit" arch="x86_64">
  <version epoch="0" ver="24.1.7" rel="391.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="cfef8f41beeb776051f7adf5d87286f3aeca316bd2e90ad5b2b0f254eaca34f26c6a82693098d570ba04e580789a693a0daa5220c4fcc1fe9f843fcf847f3645" name="Mesa-libglapi0-32bit" arch="x86_64">
  <version epoch="0" ver="24.2.6" rel="392.1"/>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1725796800">- Update to release 24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.0
- refreshed the following patches with quilt:
  * U_fix-mpeg1_2-decode-mesa-20.2.patch
  * n_add-Mesa-headers-again.patch
  * n_stop-iris-flicker.patch
  * u_dep_xcb.patch
  * u_fix_rust_bindgen.patch
- dropped U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- New BuildRequires:
  * python3-PyYAML
- enable llvm also for non-driver build to fix:
  "llvmpipe requires LLVM and is enabled, but LLVM is disabled".</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
</package>
<package pkgid="8534a2c06461edf15836d2dc50f1323906b5fc58081e72cc3d156c9b3abb9acebe2a2a9f83198a6f334ea020a1167d57fb90209ad3ad7b588d20ecb39916a058" name="Mesa-libglapi0-32bit" arch="x86_64">
  <version epoch="0" ver="24.2.7" rel="393.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1732017600">- Update to release 24.2.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.7
- supersedes 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch</changelog>
</package>
<package pkgid="18238460d1b411bf89639fdb480dceb5b00baf5e0c7081e40c37654718cd5650a2a2eebe648c456534b7594ed6713c21dd8ec0a9d8782dbae8cdb2f4ef099035" name="Mesa-libglapi0-32bit-debuginfo" arch="x86_64">
  <version epoch="0" ver="24.1.3" rel="390.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860800">- Update to bugfix release 24.0.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.6.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860801">-  Update to bugfix release 24.0.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.7.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
</package>
<package pkgid="2fce32f0d63fc3d0b710476da2a07bd5a48af4e6272f752a563a09fd5a7a9b29e05950623bdafbd0ccfb65fa9d1a2686843f2af55edcc5d27582f916d96c33e3" name="Mesa-libglapi0-32bit-debuginfo" arch="x86_64">
  <version epoch="0" ver="24.1.7" rel="391.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="f7e796e06dc6aec3638e92379ba38ad62e2ccfc5e695013062041f2c2af9fdc0c48977ee3fae1f5594f9d3ff6e7e4f494d9a0df8484412b7eece47515e627b5e" name="Mesa-libglapi0-32bit-debuginfo" arch="x86_64">
  <version epoch="0" ver="24.2.6" rel="392.1"/>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1725796800">- Update to release 24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.0
- refreshed the following patches with quilt:
  * U_fix-mpeg1_2-decode-mesa-20.2.patch
  * n_add-Mesa-headers-again.patch
  * n_stop-iris-flicker.patch
  * u_dep_xcb.patch
  * u_fix_rust_bindgen.patch
- dropped U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- New BuildRequires:
  * python3-PyYAML
- enable llvm also for non-driver build to fix:
  "llvmpipe requires LLVM and is enabled, but LLVM is disabled".</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
</package>
<package pkgid="993b6a09d7093a6aa3beb9db120de8f40f3e5d6cacb2bc56f1627512c1b93f8560609bd51a83317775b399949a0361f4e473daa1b1a3ba8c4a102c3d5c96905c" name="Mesa-libglapi0-32bit-debuginfo" arch="x86_64">
  <version epoch="0" ver="24.2.7" rel="393.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1732017600">- Update to release 24.2.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.7
- supersedes 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch</changelog>
</package>
<package pkgid="e6d1cd37fc1ac4efca37e070e52d8497ccdd45fac55250de751aeda86fb19b9def5451c407e828e3119e64f65c6378e0eb4e49fac1a2d57bd7e817dc655b850d" name="Mesa-libglapi0-debuginfo" arch="i586">
  <version epoch="0" ver="24.1.3" rel="390.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860800">- Update to bugfix release 24.0.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.6.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860801">-  Update to bugfix release 24.0.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.7.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
</package>
<package pkgid="ee0e6628fd293f5710440a82fc04bbf3f64791c073076c076f170a0c6cedfd48a74b1a1684678a5ccfa90f3189dbcc26c8346b082a4c776c551e2e1703726f71" name="Mesa-libglapi0-debuginfo" arch="x86_64">
  <version epoch="0" ver="24.1.3" rel="390.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860800">- Update to bugfix release 24.0.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.6.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860801">-  Update to bugfix release 24.0.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.7.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
</package>
<package pkgid="12f50882458917b659c0e7424a7c2aba9f30231732d5185d86901f90cbbdf2b976209eb2f6926c517a8931a49765d05cb66a69fcc00f1c89d4baeeec6dbf65d4" name="Mesa-libglapi0-debuginfo" arch="i586">
  <version epoch="0" ver="24.1.7" rel="391.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="c9f634cead115243f0c8b741a71e67bed79c1b931d8e15d8bf6cce007cf8b57bac6297ca0316ad8f4c633f1a30ef12ad1dd2e4fce87c28509e61513c88de2c4d" name="Mesa-libglapi0-debuginfo" arch="x86_64">
  <version epoch="0" ver="24.1.7" rel="391.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="8638392d68807b0b626e8d6586262149da6a6603f626bd8cd1830bf130a803ca26f1f7a322dcee8c1b0d7d6b6de5bc3c172fa2793deefe6ceebcefa19ff049e1" name="Mesa-libglapi0-debuginfo" arch="i586">
  <version epoch="0" ver="24.2.6" rel="392.1"/>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1725796800">- Update to release 24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.0
- refreshed the following patches with quilt:
  * U_fix-mpeg1_2-decode-mesa-20.2.patch
  * n_add-Mesa-headers-again.patch
  * n_stop-iris-flicker.patch
  * u_dep_xcb.patch
  * u_fix_rust_bindgen.patch
- dropped U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- New BuildRequires:
  * python3-PyYAML
- enable llvm also for non-driver build to fix:
  "llvmpipe requires LLVM and is enabled, but LLVM is disabled".</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
</package>
<package pkgid="24b79e4affa4d01f5e09c98462ebec46d74b4d495bf0f8846ed9365a96e3ecb85dba80e833af9e9a261b937589edeade29d18a6e13a1decb6aeb86dc8f896811" name="Mesa-libglapi0-debuginfo" arch="x86_64">
  <version epoch="0" ver="24.2.6" rel="392.1"/>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1725796800">- Update to release 24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.0
- refreshed the following patches with quilt:
  * U_fix-mpeg1_2-decode-mesa-20.2.patch
  * n_add-Mesa-headers-again.patch
  * n_stop-iris-flicker.patch
  * u_dep_xcb.patch
  * u_fix_rust_bindgen.patch
- dropped U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- New BuildRequires:
  * python3-PyYAML
- enable llvm also for non-driver build to fix:
  "llvmpipe requires LLVM and is enabled, but LLVM is disabled".</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
</package>
<package pkgid="56420debc90599ceacc08b67b952e2f60ec8b92ed77bcc0ea79e0792bc9c2a534d517aa5a8402c97158dfb9f437c9c14921a8190783ff62182eaf84e0c71841c" name="Mesa-libglapi0-debuginfo" arch="i586">
  <version epoch="0" ver="24.2.7" rel="393.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1732017600">- Update to release 24.2.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.7
- supersedes 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch</changelog>
</package>
<package pkgid="af89e8455d8ac73eb89d8e9aada091fb92aab212b41170c3de39c88893e1fb1e9b31a7b3b1daf5bed2ae02fad8e3e7345082f3fae011442785df5412f9e515d3" name="Mesa-libglapi0-debuginfo" arch="x86_64">
  <version epoch="0" ver="24.2.7" rel="393.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1732017600">- Update to release 24.2.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.7
- supersedes 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch</changelog>
</package>
<package pkgid="7c0e731bb622c2d021b74157f0e99c5b00749455ed6a44085b18f7901b413c6412f76361616f4e0ecbf812c729e5a80825c6820825f54fb6e6ef9b1b3a6cbc26" name="Mesa-libva" arch="i586">
  <version epoch="0" ver="24.1.3" rel="390.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860800">- Update to bugfix release 24.0.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.6.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860801">-  Update to bugfix release 24.0.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.7.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
</package>
<package pkgid="9c675cbc29e6ce12de75156d5ee213599175d64fa9ee534d146179d086e4519b11e225e678655f7458df8147e75c00c5222e7c90d59437a137dab02e9374a839" name="Mesa-libva" arch="x86_64">
  <version epoch="0" ver="24.1.3" rel="390.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860800">- Update to bugfix release 24.0.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.6.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860801">-  Update to bugfix release 24.0.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.7.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
</package>
<package pkgid="3ebf3dead8295139fb6b60159e26adf3e7fed3897bb5e86e39597101529d63e166fd2a635a0bcc2b1a6217996b7580ccb04ad47402f9fba3ed42d103d3647176" name="Mesa-libva" arch="i586">
  <version epoch="0" ver="24.1.7" rel="391.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="bbc7416cfb735ae31d76fe053cf0966a564f6959c266329f5d7d7f950dcf9b70fe0295d0f75f2b2ae28d269f5c01036efb8b1ed99c530994a5ba1ef306fef4db" name="Mesa-libva" arch="x86_64">
  <version epoch="0" ver="24.1.7" rel="391.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="38ac1ec901f5d983c56020d8823770afb56315dc71c14328f85183a2ad702c46ffb508694a561f83c973fb80dccfe972d83944d87ee0a32980c4bb8c96046c4e" name="Mesa-libva" arch="i586">
  <version epoch="0" ver="24.1.7" rel="391.2"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="c55d7602a33a2cb146440574ed8554a501bd0eda26c739afeb9cee08ef7c122a1566c9e835f5c157c1e8fb67fb3266f2ea513dcd796c59997eb98a7874c9bf73" name="Mesa-libva" arch="x86_64">
  <version epoch="0" ver="24.1.7" rel="391.2"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="ed79726b31d2918c7b08a7afe8af187820f201ff00f6b545c305b139edb593ef8e9ae9767907c45ad5963ddefe0d534d235112815ae0a81fd6884c8eaf6aae7d" name="Mesa-libva" arch="i586">
  <version epoch="0" ver="24.2.6" rel="392.1"/>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1725796800">- Update to release 24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.0
- refreshed the following patches with quilt:
  * U_fix-mpeg1_2-decode-mesa-20.2.patch
  * n_add-Mesa-headers-again.patch
  * n_stop-iris-flicker.patch
  * u_dep_xcb.patch
  * u_fix_rust_bindgen.patch
- dropped U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- New BuildRequires:
  * python3-PyYAML
- enable llvm also for non-driver build to fix:
  "llvmpipe requires LLVM and is enabled, but LLVM is disabled".</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
</package>
<package pkgid="de2e95c856849e03177599ab24fbd335c3ac3a018b7d310556382a0473db45e7798df2fb778f6aaaf2f27ef5a46882ac827f85c4d70e663d5a096fca7c2098ab" name="Mesa-libva" arch="x86_64">
  <version epoch="0" ver="24.2.6" rel="392.1"/>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1725796800">- Update to release 24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.0
- refreshed the following patches with quilt:
  * U_fix-mpeg1_2-decode-mesa-20.2.patch
  * n_add-Mesa-headers-again.patch
  * n_stop-iris-flicker.patch
  * u_dep_xcb.patch
  * u_fix_rust_bindgen.patch
- dropped U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- New BuildRequires:
  * python3-PyYAML
- enable llvm also for non-driver build to fix:
  "llvmpipe requires LLVM and is enabled, but LLVM is disabled".</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
</package>
<package pkgid="5aca27f9a35cb2ca67ee1daf3aa75e18d9b3ef14033ced200df7eab73e6df1aadcb7894956a660260348705ca16209a8b916cf6ffb2c904c9c98256f9d7a7117" name="Mesa-libva" arch="i586">
  <version epoch="0" ver="24.2.7" rel="393.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1732017600">- Update to release 24.2.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.7
- supersedes 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch</changelog>
</package>
<package pkgid="60e2dbf6da52ee9c01cdee65f710b1650e48158de334bcdd93380d82159bd98b1d4a378c78d9891fd4185884f677a4f15a23128df470755dadd137b26130b479" name="Mesa-libva" arch="x86_64">
  <version epoch="0" ver="24.2.7" rel="393.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1732017600">- Update to release 24.2.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.7
- supersedes 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch</changelog>
</package>
<package pkgid="d31d5c8ad44672076ef6fd002adf0c20c9401f12297078d8f2fac9585ff1bafb5f97f904255acdcd631a3cb8896aee4e58491be93e6a8e14e477d9116379a2c3" name="Mesa-libva-32bit" arch="x86_64">
  <version epoch="0" ver="24.2.6" rel="392.1"/>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1725796800">- Update to release 24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.0
- refreshed the following patches with quilt:
  * U_fix-mpeg1_2-decode-mesa-20.2.patch
  * n_add-Mesa-headers-again.patch
  * n_stop-iris-flicker.patch
  * u_dep_xcb.patch
  * u_fix_rust_bindgen.patch
- dropped U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- New BuildRequires:
  * python3-PyYAML
- enable llvm also for non-driver build to fix:
  "llvmpipe requires LLVM and is enabled, but LLVM is disabled".</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
</package>
<package pkgid="fd5a5377b917683da169960430c79dc57003695c776b4f947cd0fb8a0ee083bf8e905d31a934940e681ea5456d01173fd62cb1614d96d10dbeedfac7fe4253a7" name="Mesa-libva-32bit" arch="x86_64">
  <version epoch="0" ver="24.2.7" rel="393.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1732017600">- Update to release 24.2.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.7
- supersedes 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch</changelog>
</package>
<package pkgid="a440a5defd015b773baaf2bec9852af20ab98b607c8256781a99f9984c9b52ef6ca3624b611ff0e43b451f2b2c6e2a8c56003f960cd75780d7441292bd236110" name="Mesa-libva-debuginfo" arch="i586">
  <version epoch="0" ver="24.1.3" rel="390.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860800">- Update to bugfix release 24.0.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.6.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860801">-  Update to bugfix release 24.0.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.7.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
</package>
<package pkgid="e37ca4d0a427eb00e633de02ec44a8349000f16301a30cf1c54dcfb2f637217d1c8b431d8ad226a0156a7e027bf9cafc730e2d057fc790380301a38dc714180a" name="Mesa-libva-debuginfo" arch="x86_64">
  <version epoch="0" ver="24.1.3" rel="390.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860800">- Update to bugfix release 24.0.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.6.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860801">-  Update to bugfix release 24.0.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.7.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
</package>
<package pkgid="e0dcc1b06f93c5b388b555a215ce3ecefbd5ef2b7a9eec921cd2522e130c1dea80b5f5d74d34cdb6f1a23f9a62e97bf846a9f45e4fccd0ddec6a0f78b96846a0" name="Mesa-libva-debuginfo" arch="i586">
  <version epoch="0" ver="24.1.7" rel="391.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="f6866e15462c788f1982b463cfdac2bfbcfa7add3a7dde4cf8d2b9a4dd856794d439c04c321623a30444dbf4d214f4eeab1d0e5c5af06f2a9d225236cbd00e3e" name="Mesa-libva-debuginfo" arch="x86_64">
  <version epoch="0" ver="24.1.7" rel="391.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="a276ca4781582e62a64e58c083a455dbf856a2b4f5a10c80a7949368a6b47d1a038ddd59725cb7dd88662a2c645eda60f8491fe9bbf4f205b35b4cd0b574ee46" name="Mesa-libva-debuginfo" arch="i586">
  <version epoch="0" ver="24.1.7" rel="391.2"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="5e259422e81cf28817431203dc66cffed5efe5ebd3d20264850cdefeb6c4c5c0d56b0815eb17451f96170011701cc4e3f41952fa6b6f41bc51e6fe29fd62b721" name="Mesa-libva-debuginfo" arch="x86_64">
  <version epoch="0" ver="24.1.7" rel="391.2"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="a271ff4e6aff94e6fdf3fd86e1111308de6ecc01974dd86e09d053be0637bba2373107964ceb0e936cba9020aa30758c1885246114b9f6be17e46ba0afa86ae2" name="Mesa-vulkan-device-select" arch="i586">
  <version epoch="0" ver="24.1.3" rel="390.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860800">- Update to bugfix release 24.0.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.6.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860801">-  Update to bugfix release 24.0.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.7.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
</package>
<package pkgid="8864528d075d14b36b0df404528c3c00027a2431d74700e00c2e975d09022470cf60171af499d2a9424197123ff7f65a880725059d7ae647dce64029bdef2296" name="Mesa-vulkan-device-select" arch="x86_64">
  <version epoch="0" ver="24.1.3" rel="390.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860800">- Update to bugfix release 24.0.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.6.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860801">-  Update to bugfix release 24.0.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.7.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
</package>
<package pkgid="43c1bcca34c34570ed89128050ef6d9677510164315dac6ffa34ac9fc31356f9215e2a0f73300835eb1539edacf2f7fd26791d172ecdf9b47092f81b147ae695" name="Mesa-vulkan-device-select" arch="i586">
  <version epoch="0" ver="24.1.7" rel="391.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="56dc1dcd4049c12c425c2d26c8d7f54e5d00647deeaa4d891ffda6c1a0a465ca1da345839d207f70821153e7776f3004d63ced3e7d4350816c9fe057416e029b" name="Mesa-vulkan-device-select" arch="x86_64">
  <version epoch="0" ver="24.1.7" rel="391.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="866892259b2df23667689289d48b567fbafd265187317bbc096b37a540ec924072703ac9edcedf9ca0a75be424d6e805459c17358243037092f3efb7e93892b9" name="Mesa-vulkan-device-select" arch="i586">
  <version epoch="0" ver="24.1.7" rel="391.2"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="bf24b78668d2b84111c681046300709ab67fc900afd579fa5cc675e98281e9926ed9b97c32fca9d0ce95990917ae859a4c76c8dc02390aa5151c54acb9ac3a30" name="Mesa-vulkan-device-select" arch="x86_64">
  <version epoch="0" ver="24.1.7" rel="391.2"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="0a893caa9e5d93417fcbbdcdfd072a72197084548d3c926c139a01c59f7b1f36dd8ea3992193423ea3b4c42294e62e1cfd0c9d7c6a3a218fadf7c4eb6eb74a5a" name="Mesa-vulkan-device-select" arch="i586">
  <version epoch="0" ver="24.2.6" rel="392.1"/>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1725796800">- Update to release 24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.0
- refreshed the following patches with quilt:
  * U_fix-mpeg1_2-decode-mesa-20.2.patch
  * n_add-Mesa-headers-again.patch
  * n_stop-iris-flicker.patch
  * u_dep_xcb.patch
  * u_fix_rust_bindgen.patch
- dropped U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- New BuildRequires:
  * python3-PyYAML
- enable llvm also for non-driver build to fix:
  "llvmpipe requires LLVM and is enabled, but LLVM is disabled".</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
</package>
<package pkgid="66a1efd57c5876068394fa746395ccaa7d2d9c669a243bac5220d2e544d8a796814bf23c18e75ae0638164b824f75aed2a879082f2df1f28e324721431a90bf9" name="Mesa-vulkan-device-select" arch="x86_64">
  <version epoch="0" ver="24.2.6" rel="392.1"/>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1725796800">- Update to release 24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.0
- refreshed the following patches with quilt:
  * U_fix-mpeg1_2-decode-mesa-20.2.patch
  * n_add-Mesa-headers-again.patch
  * n_stop-iris-flicker.patch
  * u_dep_xcb.patch
  * u_fix_rust_bindgen.patch
- dropped U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- New BuildRequires:
  * python3-PyYAML
- enable llvm also for non-driver build to fix:
  "llvmpipe requires LLVM and is enabled, but LLVM is disabled".</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
</package>
<package pkgid="37a86a83c4d33ffb77067eaec3d0e5669fe7567b13662e02c3b650edbdca66e93e9248f4baa0b0db1c9a76835f9fbfde896339ab3dff7921f0a107e88a17d747" name="Mesa-vulkan-device-select" arch="i586">
  <version epoch="0" ver="24.2.7" rel="393.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1732017600">- Update to release 24.2.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.7
- supersedes 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch</changelog>
</package>
<package pkgid="19b26d10ce0279576d76733063c4b225dccdad9bae59f6a9781a5be163d653455ec430852cab96d691950261acae955ed43acbf448785b46954913a82c730eb3" name="Mesa-vulkan-device-select" arch="x86_64">
  <version epoch="0" ver="24.2.7" rel="393.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1732017600">- Update to release 24.2.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.7
- supersedes 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch</changelog>
</package>
<package pkgid="d8c535bda447c94e9c9846e740d5e21f432706d5288d3ef1fd1f3c485d4f8fd6071308779306ea91a3ccb669097fd41eac181a19f16b87f644bf23be038d84c1" name="Mesa-vulkan-device-select-32bit" arch="x86_64">
  <version epoch="0" ver="24.1.3" rel="390.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860800">- Update to bugfix release 24.0.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.6.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860801">-  Update to bugfix release 24.0.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.7.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
</package>
<package pkgid="2e6441618ac6fab87bc7444a26f9b1ebff01e6f373bc37137581e2b0c9893d53bd2755112448086ae4b1360bd7f0c9df1561ac33f913c470160cdc2ed7a8a3e4" name="Mesa-vulkan-device-select-32bit" arch="x86_64">
  <version epoch="0" ver="24.1.7" rel="391.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="1aee1ecdfbd02d775e9da1b1666e97bd66e69c1a9da493d9feb2ff7d5188008ba9f86031bd0fe84f424d4ba4280b85e541642f1c10d7fb2fe8490850749be0f1" name="Mesa-vulkan-device-select-32bit" arch="x86_64">
  <version epoch="0" ver="24.1.7" rel="391.2"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="cbdb624dd392d43f6bf52e9441404600aa4406161348906217735f2035242735c184198fbaa7765a805a9e18ca9442436f974c6daaf63347fb9b69bdc784b79d" name="Mesa-vulkan-device-select-32bit" arch="x86_64">
  <version epoch="0" ver="24.2.6" rel="392.1"/>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1725796800">- Update to release 24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.0
- refreshed the following patches with quilt:
  * U_fix-mpeg1_2-decode-mesa-20.2.patch
  * n_add-Mesa-headers-again.patch
  * n_stop-iris-flicker.patch
  * u_dep_xcb.patch
  * u_fix_rust_bindgen.patch
- dropped U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- New BuildRequires:
  * python3-PyYAML
- enable llvm also for non-driver build to fix:
  "llvmpipe requires LLVM and is enabled, but LLVM is disabled".</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
</package>
<package pkgid="261c36956a008f1e50509f946c81cb7e750833f76fe99f2c98d73bf9259887d40c4f82b53e17faf9e2a1ef071443fbc044db238d60aab127f7c17609f9be8347" name="Mesa-vulkan-device-select-32bit" arch="x86_64">
  <version epoch="0" ver="24.2.7" rel="393.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1732017600">- Update to release 24.2.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.7
- supersedes 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch</changelog>
</package>
<package pkgid="54632dc60a7c3d01eaec564e5bad588470052e7589e0e8c67512e62cb470b5839a13820a0154725e244cf334dcbef23ada90ada51de9ef6c457140c3a6d57a25" name="Mesa-vulkan-device-select-32bit-debuginfo" arch="x86_64">
  <version epoch="0" ver="24.1.3" rel="390.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860800">- Update to bugfix release 24.0.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.6.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860801">-  Update to bugfix release 24.0.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.7.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
</package>
<package pkgid="a16e32894a4a6a33e291c83d843fd3c0a8352f5bb3bbda36499c65da5ee9686ea161cdd6e8bfbdde9059a10c41fff3562dbc4491c383c30e6e343ba543767678" name="Mesa-vulkan-device-select-32bit-debuginfo" arch="x86_64">
  <version epoch="0" ver="24.1.7" rel="391.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="2abd39ccb39badf15bbf6cdc564fbbf16b009c72df6e3d6d4e81d882ee0ac209bc748c928504035c33fec66e655da8336c51d7fc6142ecd8bd6c1807b799fc08" name="Mesa-vulkan-device-select-32bit-debuginfo" arch="x86_64">
  <version epoch="0" ver="24.1.7" rel="391.2"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="8c9ac1ea87f7e980aade0bbbca0ade094181c67bacc83a61db33c1c2ab1249c538addd07ad018215c8f07471d0acb052c720740f655e431ae584b2ad60f43877" name="Mesa-vulkan-device-select-32bit-debuginfo" arch="x86_64">
  <version epoch="0" ver="24.2.6" rel="392.1"/>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1725796800">- Update to release 24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.0
- refreshed the following patches with quilt:
  * U_fix-mpeg1_2-decode-mesa-20.2.patch
  * n_add-Mesa-headers-again.patch
  * n_stop-iris-flicker.patch
  * u_dep_xcb.patch
  * u_fix_rust_bindgen.patch
- dropped U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- New BuildRequires:
  * python3-PyYAML
- enable llvm also for non-driver build to fix:
  "llvmpipe requires LLVM and is enabled, but LLVM is disabled".</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
</package>
<package pkgid="26fbcebd4e53d671f6bc78da9bb3caace65a2973781c01899e328403016ffaffe9a6714de2538fb0f64dda961cf6d672b8d55bb8bdeab39b9b3082613ef653df" name="Mesa-vulkan-device-select-32bit-debuginfo" arch="x86_64">
  <version epoch="0" ver="24.2.7" rel="393.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1732017600">- Update to release 24.2.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.7
- supersedes 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch</changelog>
</package>
<package pkgid="459fe57f1bca3936dc12c514012a99969a5b78396fa9bbe8af5ce95fa4e5240eb7d4c2e9cc21bd01645675b4dd56076ea6ae01da95ed46a08f1b125b9a58c98e" name="Mesa-vulkan-device-select-debuginfo" arch="i586">
  <version epoch="0" ver="24.1.3" rel="390.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860800">- Update to bugfix release 24.0.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.6.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860801">-  Update to bugfix release 24.0.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.7.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
</package>
<package pkgid="b5b1bd109d7abcb2a8a46459308124d796b0e4333f3a3d536f227f2ad7459e088c23b9f7fa44abaab9de7a9cf59c2a50ab314aa31df1e2fdc38f970d1147fec1" name="Mesa-vulkan-device-select-debuginfo" arch="x86_64">
  <version epoch="0" ver="24.1.3" rel="390.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860800">- Update to bugfix release 24.0.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.6.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860801">-  Update to bugfix release 24.0.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.7.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
</package>
<package pkgid="94676d00266c4df1ef63f5628600c74f374eb362a046aad43a18ed54bf95f43e43aefa889cf79190b6bbbc29aa39cb41a17b94abc0c8cbd0a7194c3d550d280b" name="Mesa-vulkan-device-select-debuginfo" arch="i586">
  <version epoch="0" ver="24.1.7" rel="391.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="1c625d6ff5a755f53d9b40c3560e077d6f5d413597271d3026d6f8e38ae06f9fbd6cb894160a7af03fa7e7d11d6ccfd416c5c997d0c6f05c31f6d25ab3721107" name="Mesa-vulkan-device-select-debuginfo" arch="x86_64">
  <version epoch="0" ver="24.1.7" rel="391.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="93dca9fc3acf44f163f9bb9029ae9dd21f0e7121b69550e7033fd339789a5931bc4016745d0df93e6360d7f2276823fc340a7aa8c5ae04a32b9b39cd84905216" name="Mesa-vulkan-device-select-debuginfo" arch="i586">
  <version epoch="0" ver="24.1.7" rel="391.2"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="9ed5d49f7aa5402f7be376cfe5ec9fe606cf0bd4e15a86cc4f22d6c2e9344465be9cb40fea63238718887a7f2a869279f45968c4ae7991bc97eaa087ac6a0e22" name="Mesa-vulkan-device-select-debuginfo" arch="x86_64">
  <version epoch="0" ver="24.1.7" rel="391.2"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="14cb638825d3eddead3b7dfcfbdb1c4a0ad8cc9037e9a197656badb56be851af37d2a92f6d5280e957bddfa67366401a9fd3094665758e5c39a02490047efcdb" name="Mesa-vulkan-device-select-debuginfo" arch="i586">
  <version epoch="0" ver="24.2.6" rel="392.1"/>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1725796800">- Update to release 24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.0
- refreshed the following patches with quilt:
  * U_fix-mpeg1_2-decode-mesa-20.2.patch
  * n_add-Mesa-headers-again.patch
  * n_stop-iris-flicker.patch
  * u_dep_xcb.patch
  * u_fix_rust_bindgen.patch
- dropped U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- New BuildRequires:
  * python3-PyYAML
- enable llvm also for non-driver build to fix:
  "llvmpipe requires LLVM and is enabled, but LLVM is disabled".</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
</package>
<package pkgid="44506413f05fcd57ec11b847feff7243a10d17ab177b2193b97f12453288d970de30804433184da1eeeec77f479becd3231adb2adb29a536ebe2e5e496034d06" name="Mesa-vulkan-device-select-debuginfo" arch="x86_64">
  <version epoch="0" ver="24.2.6" rel="392.1"/>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1725796800">- Update to release 24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.0
- refreshed the following patches with quilt:
  * U_fix-mpeg1_2-decode-mesa-20.2.patch
  * n_add-Mesa-headers-again.patch
  * n_stop-iris-flicker.patch
  * u_dep_xcb.patch
  * u_fix_rust_bindgen.patch
- dropped U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- New BuildRequires:
  * python3-PyYAML
- enable llvm also for non-driver build to fix:
  "llvmpipe requires LLVM and is enabled, but LLVM is disabled".</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
</package>
<package pkgid="006481e493ec65808b953e9d78a7a9a2ac479de493d9ed17957c22475272db0e487bf035dd0830701a3626349029ee87606826e2b5f63c4d4fda91783f5f2fa5" name="Mesa-vulkan-device-select-debuginfo" arch="i586">
  <version epoch="0" ver="24.2.7" rel="393.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1732017600">- Update to release 24.2.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.7
- supersedes 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch</changelog>
</package>
<package pkgid="811408619d081e774f8b2dfc466ff1f6375b538da3f1c542ab1c175481cc460ce3a9d28d4b85ca0301259d1b0515c9a66c4285eb892427b3f8eef067c044fa43" name="Mesa-vulkan-device-select-debuginfo" arch="x86_64">
  <version epoch="0" ver="24.2.7" rel="393.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1732017600">- Update to release 24.2.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.7
- supersedes 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch</changelog>
</package>
<package pkgid="0794d1a28d1c15ae49babc7baff2512bff9d4cb1e29c89d3c20eb25da01ec2168ca8201944de31589280e8e702190dcaff338c03efe867c5f8dba6519c95f601" name="Mesa-vulkan-overlay" arch="i586">
  <version epoch="0" ver="24.1.3" rel="390.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860800">- Update to bugfix release 24.0.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.6.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860801">-  Update to bugfix release 24.0.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.7.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
</package>
<package pkgid="5c51460302d8429144c61a9fc4609bd9b7e51353be0fa16b27273b722381b0666e770deaf166f87acebcc60350af2fe51d37c0b808ded9e131f3aab65b4b21fd" name="Mesa-vulkan-overlay" arch="x86_64">
  <version epoch="0" ver="24.1.3" rel="390.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860800">- Update to bugfix release 24.0.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.6.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860801">-  Update to bugfix release 24.0.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.7.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
</package>
<package pkgid="bb17570bcc14b0ad2f5366a1a98bf5c62a4accda72f1a81adf1fe96536f2a2dfb4f11dcb47efa7837429613b29efe32222617a260b468237234e279cf236b8bf" name="Mesa-vulkan-overlay" arch="i586">
  <version epoch="0" ver="24.1.7" rel="391.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="8e2e936de6879be01342a4e6e39d85b0b6ed370f53e268c24f45b635b42abf2e727e1d40d74a19bf8d867b71446e0a18ddfccb7cff104588bceb38d89fdb4c25" name="Mesa-vulkan-overlay" arch="x86_64">
  <version epoch="0" ver="24.1.7" rel="391.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="f6c111f84ce0f6c32daeed31b02cbf27bb82a42c2d5fa490d8f344c93cff4ca3b6332d21252544c3f62a82661ecce20b1e91152d7b11b6d3d950a1b1e6dbcd58" name="Mesa-vulkan-overlay" arch="i586">
  <version epoch="0" ver="24.1.7" rel="391.2"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="495f96669b9901df30b7078209b64c650f6a01eb050d3f9a37d602087600166fce0bc1e42366f6bfdca9d9a0e744fe0c2bc6d9096be70d2dad3efe4821529cce" name="Mesa-vulkan-overlay" arch="x86_64">
  <version epoch="0" ver="24.1.7" rel="391.2"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="d074b7e54c5a4306bf8274245d3ace81b9ecddeaf13a95a3fa0b98ebd6c095db347629532e80e57d3078492be4d25966e46257194c67b971eb7400fc51becaf6" name="Mesa-vulkan-overlay" arch="i586">
  <version epoch="0" ver="24.2.6" rel="392.1"/>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1725796800">- Update to release 24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.0
- refreshed the following patches with quilt:
  * U_fix-mpeg1_2-decode-mesa-20.2.patch
  * n_add-Mesa-headers-again.patch
  * n_stop-iris-flicker.patch
  * u_dep_xcb.patch
  * u_fix_rust_bindgen.patch
- dropped U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- New BuildRequires:
  * python3-PyYAML
- enable llvm also for non-driver build to fix:
  "llvmpipe requires LLVM and is enabled, but LLVM is disabled".</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
</package>
<package pkgid="6db422e94fa2cd19df549f8825422ae67478264ccfe8cce423038a3fb93a8931d48637f2a3235256df00504a36485b501e7e37fba59ba87990b7b252174602ee" name="Mesa-vulkan-overlay" arch="x86_64">
  <version epoch="0" ver="24.2.6" rel="392.1"/>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1725796800">- Update to release 24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.0
- refreshed the following patches with quilt:
  * U_fix-mpeg1_2-decode-mesa-20.2.patch
  * n_add-Mesa-headers-again.patch
  * n_stop-iris-flicker.patch
  * u_dep_xcb.patch
  * u_fix_rust_bindgen.patch
- dropped U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- New BuildRequires:
  * python3-PyYAML
- enable llvm also for non-driver build to fix:
  "llvmpipe requires LLVM and is enabled, but LLVM is disabled".</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
</package>
<package pkgid="0fceef24a861333172b384194e972904d0066c058e24a7ae2ffd7b135370b58121f08e6e2786d0a8f5bf8d611ce607b38b9b06d4446a956423039d4bc72a7d95" name="Mesa-vulkan-overlay" arch="i586">
  <version epoch="0" ver="24.2.7" rel="393.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1732017600">- Update to release 24.2.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.7
- supersedes 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch</changelog>
</package>
<package pkgid="48b1dd86e2e23aa05276ec701c1adf9e1262f8ef0cd199ed15079533963c674ab9c96c0840cd117fa1092e676545fd719db8f63bd1f551aa99bf0c9ff6f5c78d" name="Mesa-vulkan-overlay" arch="x86_64">
  <version epoch="0" ver="24.2.7" rel="393.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1732017600">- Update to release 24.2.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.7
- supersedes 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch</changelog>
</package>
<package pkgid="171e3ca8c30f88fc64dc6033290bede37bb47efee93f9b551612b3505aaf2d87884d0260e58abcd9551ce09a93c925bc8deeacb7b0b7593ba960e0442e5eef40" name="Mesa-vulkan-overlay-32bit" arch="x86_64">
  <version epoch="0" ver="24.1.3" rel="390.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860800">- Update to bugfix release 24.0.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.6.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860801">-  Update to bugfix release 24.0.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.7.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
</package>
<package pkgid="7c03eff2ef3023e6cd8361f7dea0ce7d2debdec220adc5de09c67a2c103dfcd1bdf3a519a84f3c867d89549c3e2e2d28e9f528e2c577d32c65789e5c9662d68f" name="Mesa-vulkan-overlay-32bit" arch="x86_64">
  <version epoch="0" ver="24.1.7" rel="391.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="83894b8bdbd72b9bba18aa3c2fb5aadb3b3bc9f07876e8a7c8a4b653448f3cef103aa9392b0acb2a07dff351f7fbfa7574591ae1442655023d7936e804b6ed49" name="Mesa-vulkan-overlay-32bit" arch="x86_64">
  <version epoch="0" ver="24.1.7" rel="391.2"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="6255e80510e113d48cf2160d7531575d3f609f36b35575c39da42d7231d9f46cf20afc921de1d67d1318bcc406534b5398020ab4a1d7c58da47834801e1743a4" name="Mesa-vulkan-overlay-32bit" arch="x86_64">
  <version epoch="0" ver="24.2.6" rel="392.1"/>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1725796800">- Update to release 24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.0
- refreshed the following patches with quilt:
  * U_fix-mpeg1_2-decode-mesa-20.2.patch
  * n_add-Mesa-headers-again.patch
  * n_stop-iris-flicker.patch
  * u_dep_xcb.patch
  * u_fix_rust_bindgen.patch
- dropped U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- New BuildRequires:
  * python3-PyYAML
- enable llvm also for non-driver build to fix:
  "llvmpipe requires LLVM and is enabled, but LLVM is disabled".</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
</package>
<package pkgid="0907c85d465cbb180e17235990cd4cb8772549389898718cf0312664ee678c5ad31c364ed9277b1268a929e6a75041b561425d7e8620ea3f00125a2c7dc494b6" name="Mesa-vulkan-overlay-32bit" arch="x86_64">
  <version epoch="0" ver="24.2.7" rel="393.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1732017600">- Update to release 24.2.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.7
- supersedes 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch</changelog>
</package>
<package pkgid="1d181623e30535b71482c160b1ecfb7462793c1fd31d6de3c1d733fbd818cd84b9a6cf8203b1474eed309e35f2923f59b838ddcd477d0bab54c710bd80fdadbd" name="Mesa-vulkan-overlay-32bit-debuginfo" arch="x86_64">
  <version epoch="0" ver="24.1.3" rel="390.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860800">- Update to bugfix release 24.0.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.6.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860801">-  Update to bugfix release 24.0.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.7.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
</package>
<package pkgid="0ccee77402b44037e37c3669b12bc027c38eb94aa233588d1a0da39a07016255c47d4ce682e3f4c6b73b840b808b8ea636ee2d36d701ab924475de4ed5405b12" name="Mesa-vulkan-overlay-32bit-debuginfo" arch="x86_64">
  <version epoch="0" ver="24.1.7" rel="391.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="cbc6241d0d7ee6c410e49302d2c44635aae46ea3112fb727739bc379cf2d124b0bf4bc403c149810e8bb11900268b9a83b4e02ad7a5304310d952332abb13fca" name="Mesa-vulkan-overlay-32bit-debuginfo" arch="x86_64">
  <version epoch="0" ver="24.1.7" rel="391.2"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="f269ceeeb1320fb79a25e1ad53b619dbd3a00463c50c30738085364c48e9f924b86fb3f7652b2a5e31630419736cf8a0e53a3854dfcffa542121a2d03a61ffc8" name="Mesa-vulkan-overlay-32bit-debuginfo" arch="x86_64">
  <version epoch="0" ver="24.2.6" rel="392.1"/>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1725796800">- Update to release 24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.0
- refreshed the following patches with quilt:
  * U_fix-mpeg1_2-decode-mesa-20.2.patch
  * n_add-Mesa-headers-again.patch
  * n_stop-iris-flicker.patch
  * u_dep_xcb.patch
  * u_fix_rust_bindgen.patch
- dropped U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- New BuildRequires:
  * python3-PyYAML
- enable llvm also for non-driver build to fix:
  "llvmpipe requires LLVM and is enabled, but LLVM is disabled".</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
</package>
<package pkgid="1935769ac5cf8c6ebb356ee63e7d178187d4eacbe8cab48c54e23a714ffe1afc13b66c4d4399c8c1818d808d7630003ba6abd3e83971e1142fa61fa67b29baaf" name="Mesa-vulkan-overlay-32bit-debuginfo" arch="x86_64">
  <version epoch="0" ver="24.2.7" rel="393.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1732017600">- Update to release 24.2.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.7
- supersedes 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch</changelog>
</package>
<package pkgid="207dd744f194292daf1d82a00d054581030adbf33238fa54ccb2a017296228640e97b4f4834e4e8f134a70298805f082f4b7cc574b05e92dc820b1f385acfa81" name="Mesa-vulkan-overlay-debuginfo" arch="i586">
  <version epoch="0" ver="24.1.3" rel="390.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860800">- Update to bugfix release 24.0.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.6.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860801">-  Update to bugfix release 24.0.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.7.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
</package>
<package pkgid="f67e0c38634987ba359125b211d4f5cabc6b4fb17b4b96c22fceb8cf781cf29f967aabea9167e4ddb58b0868ad216b07e72872520bb4da81da9168dcaee0a5b1" name="Mesa-vulkan-overlay-debuginfo" arch="x86_64">
  <version epoch="0" ver="24.1.3" rel="390.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860800">- Update to bugfix release 24.0.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.6.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1715860801">-  Update to bugfix release 24.0.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.7.html</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
</package>
<package pkgid="e01635ab5b04f6fec0db40958248e4ee7697632b27e1e769c504becfb2589f4d4f6c9c311111aae639e0f4eb238eb3cd506ab66eaa44d204bc80c5056e43f554" name="Mesa-vulkan-overlay-debuginfo" arch="i586">
  <version epoch="0" ver="24.1.7" rel="391.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="0103ebe2cd119655bb714a663157d879546c28964a1d86034c5bb68680ffe2827e4be0f47dcdf46575ff530f208f9a0565f27a85b09cb206b34b4bf53bddff1b" name="Mesa-vulkan-overlay-debuginfo" arch="x86_64">
  <version epoch="0" ver="24.1.7" rel="391.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="2f37947bd768bcaf8d6db0d77963dc0577623a4b008ef76bc88d9c3ca43b08ddd789d8f7d7c6b21611727249e05ac5683c3590337475865e4a9b8b568b858281" name="Mesa-vulkan-overlay-debuginfo" arch="i586">
  <version epoch="0" ver="24.1.7" rel="391.2"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="a613be47aef5225c752f69f45e722230c48b38ef76daa24b78dfa3b7ee9be5f07ffed346a41c252fa05df6d6d26bfeb57ce3075952418c917d8091c495dc5653" name="Mesa-vulkan-overlay-debuginfo" arch="x86_64">
  <version epoch="0" ver="24.1.7" rel="391.2"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1716465600">- Update to bugfix release 24.0.8
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch</changelog>
  <changelog author="Yunhe Guo &lt;i@guoyunhe.me&gt;" date="1717329600">- Restrict all internal depencency version to match the exact Mesa build,
  so that users won't install Mesa packages partly from other repos and
  make the system broken.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718280000">- Update to bugfix release 24.0.9
  - -&gt; https://docs.mesa3d.org/relnotes/24.0.9.html
  * This is the last release of the 24.0 series. Users are encouraged
    to switch to the 24.1 series to continue receiving bugfixes.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366400">- Update to new feature release 24.1.0
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
  * NVIDIA Vulkan driver NVK is now considered ready for prime time.
    Distro packagers are now recommended to include `nouveau` in the
    `vulkan-drivers` list so that their users can have the option of using it
    instead of the proprietary NVIDIA driver.
  * Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
    support for error dump to debug GPU hangs was added.
  * Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
    support.
  * Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
  * Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
    Vulkan driver PanVK was modernised for better Midgard (Txxx) and
    Bifrost (Gxxx) support.
  * All Vulkan drivers have gained support for explicit synchronisation on
    Wayland and X11.
- adjusted patches:
  * n_stop-iris-flicker.patch
  * python36-buildfix1.patch
- supersedes patches:
  * 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
  * 0002-glx-fix-some-indentation.patch
  * 0003-glx-add-an-implicit-param-to-createScreen.patch
  * 0004-glx-pass-implicit-load-param-through-allocation.patch
  * 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
  * 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
  * 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
  * 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
  * 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
  * 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718366401">- Update to bugfix release 24.1.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.1</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718712000">- BuildRequire python3-pycparser when building drivers on ARM:
  etnaviv drm module requires this module to build.</changelog>
  <changelog author="Mikhail Paulyshka &lt;me@mixaill.net&gt;" date="1718798400">- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
  graphics (boo#1226462)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1718884800">- Update to bugfix release 24.1.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.2</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1718971200">- Update baselibs.conf
- Build requires rust-cbindgen &gt;= 0.25. However, this means
  we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
  * add rust crate paste-1.0.14.tar.gz
  * add rust crate proc-macro2-1.0.70.tar.gz
  * add rust crate quote-1.0.33.tar.gz
  * add rust crate syn-2.0.39.tar.gz
  * add rust crate unicode-ident-1.0.12.tar.gz</changelog>
  <changelog author="Soc Virnyl Estela &lt;obs@uncomfyhalomacro.pl&gt;" date="1719144000">- Specfile cleanup
  * copy rust crate sources into subprojects folder
  * remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
  * Since Rust crates are not installed or discouraged to be installed
    as system dependencies because of the maintenance burden of being the
    next crates.io, we will have to download the following crates as vendored
    dependencies. Hence, do not be scared if the dependencies are done like
    this To check new crates or update the versions, just go to the subprojects
    folder and run `grep -r crates .` then set versions appropriately.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719316800">- u_dri-Fix-BGR-format-exclusion.patch
  * fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719403200">- u_egl-gbm-Enable-RGBA-configs.patch,
  u_egl-surfaceless-Enable-RGBA-configs.patch
  * these are needed now after applying previous patch
    u_dri-Fix-BGR-format-exclusion.patch also on other platforms
    than s390x? (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719489600">- apply patches below to get GL on s390x working again only on
  s390x, because they break colors during YaST installation
  also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1719576000">- boo1226725-test-fix1.patch
  * another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
  on all platforms again</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094400">- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
  go to "Friedrich Haubensak" &lt;hsk17@mail.de&gt; to figure this out!</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1720094401">- Update to bugfix release 24.1.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
  * u_dri-Fix-BGR-format-exclusion.patch
  * u_egl-gbm-Enable-RGBA-configs.patch
  * u_egl-surfaceless-Enable-RGBA-configs.patch
  * boo1226725-test-fix1.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1724241600">- fix build with current rust-bindgen
  * u_fix_rust_bindgen.patch</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1724587200">- Fix random GPU crash with AMDGPU (bsc#1229050):
  U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
  (credits go to Takashi Iwai!)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725537600">- Update to bugfix release 24.1.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
  * U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
</package>
<package pkgid="9ef993ee0339322218566503765a604ff28d9e9357de9aa9204f3cd2614718d6e627501679b14623590e84837552f21b607a1df07dbed7a4b18fad847754c96f" name="Mesa-vulkan-overlay-debuginfo" arch="i586">
  <version epoch="0" ver="24.2.6" rel="392.1"/>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1725796800">- Update to release 24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.0
- refreshed the following patches with quilt:
  * U_fix-mpeg1_2-decode-mesa-20.2.patch
  * n_add-Mesa-headers-again.patch
  * n_stop-iris-flicker.patch
  * u_dep_xcb.patch
  * u_fix_rust_bindgen.patch
- dropped U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- New BuildRequires:
  * python3-PyYAML
- enable llvm also for non-driver build to fix:
  "llvmpipe requires LLVM and is enabled, but LLVM is disabled".</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
</package>
<package pkgid="bd5f449cd0ff19589900e334e133aad48bd1393316366d36a44175b582a45b1b847b6507295eedfa147f147bbca3b81fe695de42cf32f8973ba92f73bf7fe4ee" name="Mesa-vulkan-overlay-debuginfo" arch="x86_64">
  <version epoch="0" ver="24.2.6" rel="392.1"/>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1725796800">- Update to release 24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.2
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.1
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.0
- refreshed the following patches with quilt:
  * U_fix-mpeg1_2-decode-mesa-20.2.patch
  * n_add-Mesa-headers-again.patch
  * n_stop-iris-flicker.patch
  * u_dep_xcb.patch
  * u_fix_rust_bindgen.patch
- dropped U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- New BuildRequires:
  * python3-PyYAML
- enable llvm also for non-driver build to fix:
  "llvmpipe requires LLVM and is enabled, but LLVM is disabled".</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
</package>
<package pkgid="dcf6a25aa8117dc6efbded49b8ed0b23dae624e00f5fb00251b44bcb84d9adc588e02e1d3c922fefc4a66178ea9f90baa613e48f82af87f428bdb42cdb6906be" name="Mesa-vulkan-overlay-debuginfo" arch="i586">
  <version epoch="0" ver="24.2.7" rel="393.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1732017600">- Update to release 24.2.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.7
- supersedes 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch</changelog>
</package>
<package pkgid="6b1bad408ae79cdc69b3ab35c73c1d53fab57c523507d03622c74a4564f645ca1780ed324d944a21142d59d5a5a4254f8c541b756e23520bb54fa79b4d4944ee" name="Mesa-vulkan-overlay-debuginfo" arch="x86_64">
  <version epoch="0" ver="24.2.7" rel="393.1"/>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969600">- re-disable llvm for non-driver build by switching from "swrast"
  to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1725969601">- integrated changes by Andreas Schwab &lt;schwab@suse.de&gt;
  * enable glamor also for driver build
  * update rust crates
    + syn 2.0.39
    + proc_macro2 1.0.86
  * enable valgrind also on riscv64
  * added libvdpau_gallium package for generic VDPAU state tracker
  * switch from "swrast" to "softpipe,llvmpipe" drivers
  * use "-Dllvm-orcjit=true" for riscv64 build
  * added libgallium to Mesa-dri package</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1726228800">- U_egl-x11-sw-fix-partial-image-uploads.patch
  * culprit for the regression in 24.1.4; reverse apply this for
    now (boo#1228164)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1726228801">- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
  the code in the function saw further fixes later on in the 24.2
  branch.</changelog>
  <changelog author="Aaron Puchert &lt;aaronpuchert@alice-dsl.net&gt;" date="1727006400">- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092800">- buildrequire llvm19-devel/clang19-devel on sle15-sp7</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092801">- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
  relaxation (patch by Andreas Schwab &lt;schwab@suse.de&gt;); see also
  https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092802">- buildrequires: rusticl needs mesa &gt;= 1.4.0</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727092803">- disable build of rusticl on sle15; meson is just too old ...</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092804">- Update to release 24.2.3
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.3</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092805">- drop u_fix_rust_bindgen.patch
  included in update</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727092806">- libvdpau_gallium was linked directly into libgallium-*.so.*.
  Drop the subpackage and provides/obsolete it via Mesa-dri which
  ships libgallium-*.so.*.</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1727784000">- u_mesa-CVE-2023-45913.patch
  * NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
    (CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
  * buffer over-read in glXQueryServerString()
    (CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
  * segmentation violation in __glXGetDrawableAttribute()
    (CVE-2023-45922, bsc#1222042)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727956800">- Update to release 24.2.4
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.4</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1729166400">- Update to release 24.2.5
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
  included in upstream</changelog>
  <changelog author="Andreas F&#xE4;rber &lt;afaerber@suse.de&gt;" date="1729252800">- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730376000">- added -32bit package for Mesa-libva since it's needed by Steam;
  reported on packman ML:
  https://lists.links2linux.de/pipermail/packman/2024-October/017985.html</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730376001">- Update to release 24.2.6
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.6</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1730894400">- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
  * fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)</changelog>
  <changelog author="Stefan Dirsch &lt;sndirsch@suse.com&gt;" date="1732017600">- Update to release 24.2.7
  - -&gt; https://docs.mesa3d.org/relnotes/24.2.7
- supersedes 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch</changelog>
</package>
<package pkgid="6e8159206fc14cc811149cdb69397a1fc9ad5c6a725779626d067c558570a229dfc9dbc329bac43f48922bcb9357686d852362b6c09d739e72d88355b8fb1edc" name="MicroOS-release" arch="src">
  <version epoch="0" ver="20240605" rel="2939.4.2.sr20240605"/>
  <changelog author="openSUSE &lt;packaging@lists.opensuse.org&gt;" date="1717588800">- automatically generated by openSUSE-release-tools/pkglistgen</changelog>
</package>
<package pkgid="46b821b29b7a7d068d8fb31f519fd5b4888c2bc1f4fe4d07377d081e18900951daaf92fd2f9eac2f377aed64680f98387c315f57601530e1ac94c942feee9262" name="MicroOS-release" arch="x86_64">
  <version epoch="0" ver="20240605" rel="2939.4.2.sr20240605"/>
  <changelog author="openSUSE &lt;packaging@lists.opensuse.org&gt;" date="1717588800">- automatically generated by openSUSE-release-tools/pkglistgen</changelog>
</package>
<package pkgid="77e5c2bb21054e2db79b7bc57203d4de3ea160c94238e0dd97b611f887b1e00ddc4354ea4333d0b8f14728378f26bc3d76e82f1bf38b482108fd91ff321416fe" name="MicroOS-release" arch="src">
  <version epoch="0" ver="20240702" rel="2980.7.1.sr20240702"/>
  <changelog author="openSUSE &lt;packaging@lists.opensuse.org&gt;" date="1720008000">- automatically generated by openSUSE-release-tools/pkglistgen</changelog>
</package>
<package pkgid="2eb9c9615c7ff5e1446b94c0a490fb0ab74e349cd347b2b46fe40b39978945a34bf4da940dc4063149efbddb7572dd6d672a2ee38b47dbd8c74a93ec15fec3a7" name="MicroOS-release" arch="x86_64">
  <version epoch="0" ver="20240702" rel="2980.7.1.sr20240702"/>
  <changelog author="openSUSE &lt;packaging@lists.opensuse.org&gt;" date="1720008000">- automatically generated by openSUSE-release-tools/pkglistgen</changelog>
</package>
<package pkgid="9e1f1efc2b49354e179d5df7df0028ce9a14aad7b41690ab2f709ec73201dd3d4cb9222780a49f600b753516dd5e6e04d50c9d53dcd8f48d39719dfb70cbc2f6" name="MicroOS-release" arch="src">
  <version epoch="0" ver="20240803" rel="3030.9.1.sr20240803"/>
  <changelog author="openSUSE &lt;packaging@lists.opensuse.org&gt;" date="1722686400">- automatically generated by openSUSE-release-tools/pkglistgen</changelog>
</package>
<package pkgid="2943ca83b8e1cfad48f4570799963ec9c9bcda2da8ba6e405c95e7c36d2275cc5628d7ebb366ce437c6cb6ec8709039f566eb2ceb7ffd4794386fb873ea3074c" name="MicroOS-release" arch="x86_64">
  <version epoch="0" ver="20240803" rel="3030.9.1.sr20240803"/>
  <changelog author="openSUSE &lt;packaging@lists.opensuse.org&gt;" date="1722686400">- automatically generated by openSUSE-release-tools/pkglistgen</changelog>
</package>
<package pkgid="08da1a20f6ee11fdb700e40bb7202ec311806d1101db9187c10454c14b924aa0834dba4cd36ae0908afe84e0dc4308bfcb19bd3b970993ec62a6cce00f6115b2" name="MicroOS-release" arch="src">
  <version epoch="0" ver="20240901" rel="3079.12.1.sr20240901"/>
  <changelog author="openSUSE &lt;packaging@lists.opensuse.org&gt;" date="1725192000">- automatically generated by openSUSE-release-tools/pkglistgen</changelog>
</package>
<package pkgid="7733e031165f0db395df3ede41d1c32af7ffc6f257e8451df6364c920f54780d9c7c4c01d942dd0a8d3bb3481117205ef5475ddbb94a0d19fa028c178ff31804" name="MicroOS-release" arch="x86_64">
  <version epoch="0" ver="20240901" rel="3079.12.1.sr20240901"/>
  <changelog author="openSUSE &lt;packaging@lists.opensuse.org&gt;" date="1725192000">- automatically generated by openSUSE-release-tools/pkglistgen</changelog>
</package>
<package pkgid="65b3600064cda91c5180feac58913414b15c56526134557f8543cf49df37b62275310beb5a6b57bf5492688109b44c896cde4bb8ded78b355a8695533549f25b" name="MicroOS-release" arch="src">
  <version epoch="0" ver="20241002" rel="3134.11.1.sr20241002"/>
  <changelog author="openSUSE &lt;packaging@lists.opensuse.org&gt;" date="1727956800">- automatically generated by openSUSE-release-tools/pkglistgen</changelog>
</package>
<package pkgid="ef94512d2a9d097a10dd56368094a4118f9f83e25de16b49e45ff7b44dcbca21edfbcc784466fcdf88625500271d84dd6c97c40bb8b838b1fba16790b9adf6aa" name="MicroOS-release" arch="x86_64">
  <version epoch="0" ver="20241002" rel="3134.11.1.sr20241002"/>
  <changelog author="openSUSE &lt;packaging@lists.opensuse.org&gt;" date="1727956800">- automatically generated by openSUSE-release-tools/pkglistgen</changelog>
</package>
<package pkgid="3cd0a763756125b7088a54dc6eada80954b6cdbdef405a63ac272bee2f55eba5825d9fd31efbcfc4ede6a675c286e793f662b3c6cbabe483d579e839227d0778" name="MicroOS-release" arch="src">
  <version epoch="0" ver="20241103" rel="3197.13.1.sr20241103"/>
  <changelog author="openSUSE &lt;packaging@lists.opensuse.org&gt;" date="1730635200">- automatically generated by openSUSE-release-tools/pkglistgen</changelog>
</package>
<package pkgid="3310215a69cd26a11b63d4d4cf0254a808041bc29f6db71e62a60d17099bab77794bac19b8a0e260b59ac25db8afa947ef56560f60edcbb8588d8431f168e8c5" name="MicroOS-release" arch="x86_64">
  <version epoch="0" ver="20241103" rel="3197.13.1.sr20241103"/>
  <changelog author="openSUSE &lt;packaging@lists.opensuse.org&gt;" date="1730635200">- automatically generated by openSUSE-release-tools/pkglistgen</changelog>
</package>
<package pkgid="8301d5f41fb76f480e4ab15fbd8355750e1e3d889266cb290ee72d9be25d6f17d27222abb50a383e477d3794b1d6371f3ab4d64b5be479a4e73cb84bf3afb334" name="MicroOS-release-appliance" arch="x86_64">
  <version epoch="0" ver="20240605" rel="2939.4.2.sr20240605"/>
  <changelog author="openSUSE &lt;packaging@lists.opensuse.org&gt;" date="1717588800">- automatically generated by openSUSE-release-tools/pkglistgen</changelog>
</package>
<package pkgid="2b6ab8d6a0a74a362231cfc2c7e9f5fc3bde561b35a944587283ae3b687f8e8c68786e6295c1ad64c2313fa1a26f2509fa29557230678503e8d149ee25a3106f" name="MicroOS-release-appliance" arch="x86_64">
  <version epoch="0" ver="20240702" rel="2980.7.1.sr20240702"/>
  <changelog author="openSUSE &lt;packaging@lists.opensuse.org&gt;" date="1720008000">- automatically generated by openSUSE-release-tools/pkglistgen</changelog>
</package>
<package pkgid="85e7616e3c7d7e2e8a9c5ac9a577c52f86ea975c7e021f623dc34cc78bc89ca3f83eae7b38a580f16f020a7f52781737f03f9edd791f19a1db607637738e3536" name="MicroOS-release-appliance" arch="x86_64">
  <version epoch="0" ver="20240803" rel="3030.9.1.sr20240803"/>
  <changelog author="openSUSE &lt;packaging@lists.opensuse.org&gt;" date="1722686400">- automatically generated by openSUSE-release-tools/pkglistgen</changelog>
</package>
<package pkgid="fe5667426c806e6c14ef445653f8fb6631dfc24431205d85992233de580f725a4fb31d0bf9bca906ed6ea4c1932422e56d17fd945b74db85bd726948e768bb3f" name="MicroOS-release-appliance" arch="x86_64">
  <version epoch="0" ver="20240901" rel="3079.12.1.sr20240901"/>
  <changelog author="openSUSE &lt;packaging@lists.opensuse.org&gt;" date="1725192000">- automatically generated by openSUSE-release-tools/pkglistgen</changelog>
</package>
<package pkgid="78278bb988e0c42a43d9e7faf1feb6c85472ff6331532025bf965d36360d19c873a25e15c98ec0c4ca5856e12250645bbf765c120d1de2ac41166f5f2166ad53" name="MicroOS-release-appliance" arch="x86_64">
  <version epoch="0" ver="20241002" rel="3134.11.1.sr20241002"/>
  <changelog author="openSUSE &lt;packaging@lists.opensuse.org&gt;" date="1727956800">- automatically generated by openSUSE-release-tools/pkglistgen</changelog>
</package>
<package pkgid="f999fa5f1f7ca95e3d8835f4f49a0f9031e37656a9445b4645e05cec3283b03a650f0086bb5d78e41311e573551a5255e46686336b0cd3e5f4697973e4abc6de" name="MicroOS-release-appliance" arch="x86_64">
  <version epoch="0" ver="20241103" rel="3197.13.1.sr20241103"/>
  <changelog author="openSUSE &lt;packaging@lists.opensuse.org&gt;" date="1730635200">- automatically generated by openSUSE-release-tools/pkglistgen</changelog>
</package>
<package pkgid="541c79e0a4870a084057e3bbe3a60bb46fa0f14266663cc3d223063e344a854771d5ed211fd0057918b8886c1a6f01a85ceefc671671a40e704b341492687a1a" name="MicroOS-release-dvd" arch="x86_64">
  <version epoch="0" ver="20240605" rel="2939.4.2.sr20240605"/>
  <changelog author="openSUSE &lt;packaging@lists.opensuse.org&gt;" date="1717588800">- automatically generated by openSUSE-release-tools/pkglistgen</changelog>
</package>
<package pkgid="372d7cede95139e1e5946990642cb2431a023ee7fdd4f433af207a8f70724d0eec505b45c1a9f06ceb19785184688223b0465f73c74fa27517f20a0e2637bc99" name="MicroOS-release-dvd" arch="x86_64">
  <version epoch="0" ver="20240702" rel="2980.7.1.sr20240702"/>
  <changelog author="openSUSE &lt;packaging@lists.opensuse.org&gt;" date="1720008000">- automatically generated by openSUSE-release-tools/pkglistgen</changelog>
</package>
<package pkgid="4cea672ed1e2efbbfd66899b596056cf693044732e642fd541adb484e01ac6c6c84d2bb0dba8e7e46e5113313427002373e234ea61911ff05247c2bce9a6a89f" name="MicroOS-release-dvd" arch="x86_64">
  <version epoch="0" ver="20240803" rel="3030.9.1.sr20240803"/>
  <changelog author="openSUSE &lt;packaging@lists.opensuse.org&gt;" date="1722686400">- automatically generated by openSUSE-release-tools/pkglistgen</changelog>
</package>
<package pkgid="e70ff0b43d8fc8c59749112ba00728424bf875554ac4331d9edb0e0197c23d606fe4931e4d1d15fa471544925b63cfb1663bc396e42913c4f17c99f65e7ba82a" name="MicroOS-release-dvd" arch="x86_64">
  <version epoch="0" ver="20240901" rel="3079.12.1.sr20240901"/>
  <changelog author="openSUSE &lt;packaging@lists.opensuse.org&gt;" date="1725192000">- automatically generated by openSUSE-release-tools/pkglistgen</changelog>
</package>
<package pkgid="2b57cbf2e0e9d7118be1bbc7290c26e9c308f47a8f2de9f594d8ef28c9a180512d87d2747c6c8283bd08737dbbf58d441457b0d1e104454f8ec9417ac911edbc" name="MicroOS-release-dvd" arch="x86_64">
  <version epoch="0" ver="20241002" rel="3134.11.1.sr20241002"/>
  <changelog author="openSUSE &lt;packaging@lists.opensuse.org&gt;" date="1727956800">- automatically generated by openSUSE-release-tools/pkglistgen</changelog>
</package>
<package pkgid="fec58907fdbcbad0d5195d44f61a3f3f2b7c8ccbad5ec16b484e77e2a3cde7890738eb7d5c6a85834f023126b9354d8a9651ede7b4f5488e0277cb5828a874c1" name="MicroOS-release-dvd" arch="x86_64">
  <version epoch="0" ver="20241103" rel="3197.13.1.sr20241103"/>
  <changelog author="openSUSE &lt;packaging@lists.opensuse.org&gt;" date="1730635200">- automatically generated by openSUSE-release-tools/pkglistgen</changelog>
</package>
<package pkgid="b010df6625d6d0f97cbe16ef5206c127c8d5e0964dc33afec78edec5735ccee6275275604183f72b542638812ed05384313d3555d42dcbee43a0ecc15057b222" name="MozillaFirefox" arch="src">
  <version epoch="0" ver="132.0.1" rel="1.1"/>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1718107200">- Mozilla Firefox 127.0
  https://www.mozilla.org/en-US/firefox/127.0/releasenotes
  MFSA 2024-25 (bsc#1226027)
  * CVE-2024-5687 (bmo#1889066)
    An incorrect principal could have been used when opening new tabs
  * CVE-2024-5688 (bmo#1895086)
    Use-after-free in JavaScript object transplant
  * CVE-2024-5689 (bmo#1389707)
    User confusion and possible phishing vector via Firefox Screenshots
  * CVE-2024-5690 (bmo#1883693)
    External protocol handlers leaked by timing attack
  * CVE-2024-5691 (bmo#1888695)
    Sandboxed iframes were able to bypass sandbox restrictions to
    open a new window
  * CVE-2024-5692 (bmo#1837514, bmo#1891234)
    Bypass of file name restrictions during saving
  * CVE-2024-5693 (bmo#1891319)
    Cross-Origin Image leak via Offscreen Canvas
  * CVE-2024-5694 (bmo#1895055)
    Use-after-free in JavaScript Strings
  * CVE-2024-5695 (bmo#1895579)
    Memory Corruption using allocation using out-of-memory conditions
  * CVE-2024-5696 (bmo#1896555)
    Memory Corruption in Text Fragments
  * CVE-2024-5697 (bmo#1414937)
    Website was able to detect when Firefox was taking a
    screenshot of them
  * CVE-2024-5698 (bmo#1828259)
    Data-list could have overlaid address bar
  * CVE-2024-5699 (bmo#1891349)
    Cookie prefixes not treated as case-sensitive
  * CVE-2024-5700 (bmo#1862809, bmo#1889355, bmo#1893388, bmo#1895123)
    Memory safety bugs fixed in Firefox 127, Firefox ESR 115.12,
    and Thunderbird 115.12
  * CVE-2024-5701 (bmo#1890909, bmo#1891422, bmo#1893915,
    bmo#1894047, bmo#1896024)
    Memory safety bugs fixed in Firefox 127
- removed obsolete mozilla-bmo1886378.patch</changelog>
  <changelog author="Martin Sirringhaus &lt;martin.sirringhaus@suse.com&gt;" date="1719576000">- Fix GNOME search provider (boo#1225278)</changelog>
  <changelog author="Andrei Dziahel &lt;develop7@develop7.info&gt;" date="1719835200">- Mozilla Firefox 127.0.2
  * Fixed an issue where YouTube playback may experience stalling under
    certain conditions (bmo#1900191, bmo#1878510).
  * Fixed an issue where the Private Window icon was displayed in the taskbar
    on Windows when browser.privateWindowSeparation.enabled was
    set to false (bmo#1901840).
- Mozilla Firefox 127.0.1
  * Fixed an issue where users with a primary password set on their profile
    could lose their previous session of tabs upon upgrading if they dismissed
    the primary password prompt (bmo#1901899).
  * Fixed an issue where Linux users with accessibility.monoaudio.enable set
    to true were experiencing slow audio speeds (bmo#1900972).
  * Fixed an issue where, in some circumstances, the Firefox installer
    on Windows failed to complete the installation (bmo#1896868).
  * Fixed an issue causing Firefox to incorrectly reject cookies
    for certain websites (bmo#1901325).</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1720440000">- Mozilla Firefox 128.0
  https://www.mozilla.org/en-US/firefox/128.0/releasenotes
  MFSA 2024-29 (bsc#1226316)
  * CVE-2024-6605 (bmo#1836786)
    Firefox Android missed activation delay to prevent tapjacking
  * CVE-2024-6606 (bmo#1902305)
    Out-of-bounds read in clipboard component
  * CVE-2024-6607 (bmo#1694513)
    Leaving pointerlock by pressing the escape key could be
    prevented
  * CVE-2024-6608 (bmo#1743329)
    Cursor could be moved out of the viewport using pointerlock.
  * CVE-2024-6609 (bmo#1839258)
    Memory corruption in NSS
  * CVE-2024-6610 (bmo#1883396)
    Form validation popups could block exiting full-screen mode
  * CVE-2024-6600 (bmo#1888340)
    Memory corruption in WebGL API
  * CVE-2024-6601 (bmo#1890748)
    Race condition in permission assignment
  * CVE-2024-6602 (bmo#1895032)
    Memory corruption in NSS
  * CVE-2024-6603 (bmo#1895081)
    Memory corruption in thread creation
  * CVE-2024-6611 (bmo#1844827)
    Incorrect handling of SameSite cookies
  * CVE-2024-6612 (bmo#1880374)
    CSP violation leakage when using devtools
  * CVE-2024-6613 (bmo#1900523)
    Incorrect listing of stack frames
  * CVE-2024-6614 (bmo#1902983)
    Incorrect listing of stack frames
  * CVE-2024-6604 (bmo#1748105, bmo#1837550, bmo#1884266)
    Memory safety bugs fixed in Firefox 128, Firefox ESR 115.13,
    and Thunderbird 115.13
  * CVE-2024-6615 (bmo#1892875, bmo#1894428, bmo#1898364)
    Memory safety bugs fixed in Firefox 128
- requires
  NSS 3.101.1
  rust &gt;= 1.78
- update create-tar.sh
- add wayland upstream fixes (bmo#1907511, bmo#1898476)
  (mozilla-bmo1898476.patch and mozilla-bmo1907511.patch)</changelog>
  <changelog author="Martin Jambor &lt;mjambor@suse.com&gt;" date="1721304000">- Add firefox-3781e3117706.patch to fix boo#1227856 aka bmo#1905018
  where an incompatible pointer assignment is not accepted in C by
  GCC 14.</changelog>
  <changelog author="Manfred Hollstein &lt;manfred.h@gmx.net&gt;" date="1722168000">- Firefox 128.0.3 Release
  * Fixed: Fixed an issue causing some sites to not load when
    connecting via HTTP/2. (bmo#1908161, bmo#1909666)
  * Fixed: Fixed collapsed table rows not appearing when expected
    in some situations. (bmo#1907789)
  * Fixed: Fixed the Windows on-screen keyboard potentially
    concealing the webpage when displayed. (bmo#1907766)
- Firefox 128.0.2 Release
  * Fixed: Fixed an audio echo in video calls on macOS under
    certain conditions. (bmo#1908539)
  * Fixed: Fixed an issue where the Adguard extension popup was
    not displaying. (bmo#1906132)
  * Fixed: Fixed an issue causing some screen readers to fail to
    read when navigating by character in rich text editors. (Bug
    1905021)
  * Fixed: Fixed visual glitches when dark mode is enabled in
    Windows ARM devices. (bmo#1897444)
  * Fixed: Fixed an issue causing NTLM authentication failure.
    (bmo#1908115)
  * Fixed: Fixed an issue where content displayed on mouseover
    was not captured in a screenshot. (bmo#1905468)
  * Fixed: Various stability fixes.
- renamed firefox-3781e3117706.patch to mozilla-bmo1905018.patch
  to conform with patch structure and naming for the package</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1723118400">- Mozilla Firefox 129.0
  https://www.mozilla.org/en-US/firefox/129.0/releasenotes
  MFSA 2024-33 (bsc#1228648))
  * CVE-2024-7518 (bmo#1875354)
    Fullscreen notification dialog can be obscured by document content
  * CVE-2024-7519 (bmo#1902307)
    Out of bounds memory access in graphics shared memory handling
  * CVE-2024-7520 (bmo#1903041)
    Type confusion in WebAssembly
  * CVE-2024-7521 (bmo#1904644)
    Incomplete WebAssembly exception handing
  * CVE-2024-7522 (bmo#1906727)
    Out of bounds read in editor component
  * CVE-2024-7523 (bmo#1908344)
    Document content could partially obscure security prompts
  * CVE-2024-7524 (bmo#1909241)
    CSP strict-dynamic bypass using web-compatibility shims
  * CVE-2024-7525 (bmo#1909298)
    Missing permission check when creating a StreamFilter
  * CVE-2024-7526 (bmo#1910306)
    Uninitialized memory used by WebGL
  * CVE-2024-7527 (bmo#1871303)
    Use-after-free in JavaScript garbage collection
  * CVE-2024-7528 (bmo#1895951)
    Use-after-free in IndexedDB
  * CVE-2024-7529 (bmo#1903187)
    Document content could partially obscure security prompts
  * CVE-2024-7530 (bmo#1904011)
    Use-after-free in JavaScript code coverage collection
  * CVE-2024-7531 (bmo#1905691)
    PK11_Encrypt using CKM_CHACHA20 can reveal plaintext on Intel
    Sandy Bridge machines
- removed obsolete patches
  mozilla-bmo1905018.patch
  mozilla-bmo1504834-part3.patch
  mozilla-bmo1512162.patch
  mozilla-bmo1822730.patch
  mozilla-fix-aarch64-libopus.patch
  mozilla-partial-revert-1768632.patch
- requires NSS 3.102.1
- extended mozilla-silence-no-return-type.patch</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1723809600">- Mozilla Firefox 129.0.1
  * Fixed playback issues on some websites with copyrighted video
    served via digital rights management. (bmo#1911283)
  * Fixed a crash when dragging a video file onto some websites
    (bmo#1910990)</changelog>
  <changelog author="Christian Boltz &lt;suse-beta@cboltz.de&gt;" date="1724500800">- _constraints: increase RAM on s390x to fix the build</changelog>
  <changelog author="pallas wept &lt;pallaswept@proton.me&gt;" date="1725451200">- Added mozilla-bmo1746799.patch to fix incorrect audio volume scaling</changelog>
  <changelog author="Marvin Friedrich &lt;contact@marvinf.com&gt;" date="1725624000">- Update dependency on clang-devel from LLVM15 to LLVM18</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1725710400">- Mozilla Firefox 130.0
  https://www.mozilla.org/en-US/firefox/130.0/releasenotes
  MFSA 2024-39 (bsc#1229821)
  * CVE-2024-8385 (bmo#1911909)
    WASM type confusion involving ArrayTypes
  * CVE-2024-8381 (bmo#1912715)
    Type confusion when looking up a property name in a "with" block
  * CVE-2024-8388 (bmo#1902996, bmo#1839074, bmo#1865413, bmo#1868970,
    bmo#1873367, bmo#1877820, bmo#1884642, bmo#1886469, bmo#1894326,
    bmo#1894891, bmo#1897648)
    Fullscreen notice on Android could be hidden under various
    panels and OS prompts
  * CVE-2024-8382 (bmo#1906744)
    Internal event interfaces were exposed to web content when
    browser EventHandler listener callbacks ran
  * CVE-2024-8383 (bmo#1908496)
    Firefox did not ask before openings news: links in an
    external application
  * CVE-2024-8384 (bmo#1911288)
    Garbage collection could mis-color cross-compartment objects
    in OOM conditions
  * CVE-2024-8386 (bmo#1907032, bmo#1909163, bmo#1909529)
    SelectElements could be shown over another site if popups are
    allowed
  * CVE-2024-8387 (bmo#1857607, bmo#1911858, bmo#1914009)
    Memory safety bugs fixed in Firefox 130, Firefox ESR 128.2,
    and Thunderbird 128.2
  * CVE-2024-8389 (bmo#1907230, bmo#1909367)
    Memory safety bugs fixed in Firefox 130
- requires NSS 3.103
- removed obsolete patches
  mozilla-bmo1898476.patch
  mozilla-bmo1907511.patch
- added mozilla-bmo1916038.patch to fix AVIF decoding (bsc#1230500)</changelog>
  <changelog author="Manfred Hollstein &lt;manfred.h@gmx.net&gt;" date="1726660800">- Firefox 130.0.1 Release
  https://www.mozilla.org/en-US/firefox/130.0.1/releasenotes
  * Enterprise: Added an enterprise policy to disable the
  * Firefox Labs* section in *Settings*. (bmo#1911826)
  * Fixed a recent regression causing some UI elements to
    be rendered as left-to-right instead of right-to-left for
    users of our Saraiki localization. (bmo#1917175)
  * Linux: Fixed black rendering of AVIF images when
    Firefox is built with GCC. (bmo#1916038)
- removed obsolete patches
  mozilla-bmo1916038.patch</changelog>
  <changelog author="Manfred Hollstein &lt;manfred.h@gmx.net&gt;" date="1726920000">- Don't use clang18-devel on Leap as they don't have that version.</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1727611200">- Firefox 131.0
  https://www.mozilla.org/en-US/firefox/131.0/releasenotes/
  MFSA 2024-46 (bsc#1230979)
  * CVE-2024-9391 (bmo#1892407)
    Prevent users from exiting full-screen mode in Firefox Focus
    for Android
  * CVE-2024-9392 (bmo#1899154, bmo#1905843)
    Compromised content process can bypass site isolation
  * CVE-2024-9393 (bmo#1918301)
    Cross-origin access to PDF contents through multipart responses
  * CVE-2024-9394 (bmo#1918874)
    Cross-origin access to JSON contents through multipart responses
  * CVE-2024-9395 (bmo#1906024)
    Specially crafted filename could be used to obscure download type
  * CVE-2024-9396 (bmo#1912471)
    Potential memory corruption may occur when cloning certain objects
  * CVE-2024-9397 (bmo#1916659)
    Potential directory upload bypass via clickjacking
  * CVE-2024-9398 (bmo#1881037)
    External protocol handlers could be enumerated via popups
  * CVE-2024-9399 (bmo#1907726)
    Specially crafted WebTransport requests could lead to denial
    of service
  * CVE-2024-9400 (bmo#1915249)
    Potential memory corruption during JIT compilation
  * CVE-2024-9401 (bmo#1872744, bmo#1897792, bmo#1911317, bmo#1916476)
    Memory safety bugs fixed in Firefox 131, Firefox ESR 115.16,
    Firefox ESR 128.3, Thunderbird 131, and Thunderbird 128.3
  * CVE-2024-9402 (bmo#1872744, bmo#1897792, bmo#1911317, bmo#1913445,
    bmo#1914106, bmo#1914475, bmo#1914963, bmo#1915008, bmo#1916476)
    Memory safety bugs fixed in Firefox 131, Firefox ESR 128.3,
    Thunderbird 131, and Thunderbird 128.3
  * CVE-2024-9403 (bmo#1917807)
    Memory safety bugs fixed in Firefox 131 and Thunderbird 131
- requires NSS 3.104
- rebased patches</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1728475200">- Mozilla Firefox 131.0.2
  MFSA 2024-51 (bsc#1231413)
  * CVE-2024-9680 (bmo#1923344)
    Use-after-free in Animation timeline</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1729166400">- Mozilla Firefox 131.0.3
  * some users could not access the Bill Pay portion of their
    bank's site (bmo#1923500)
  * some VR180 and 360 videos were not properly rendering on YouTube
    (bmo#1922278)
  * Fixed a crash that Windows users with Avast or AVG security
    software were experiencing when visiting certain sites. (bmo#1919678)
  * "List all tabs" button was not able to be moved from the toolbar
    (bmo#1918681)
  NFSA 2024-53
  * CVE-2024-9936 (bmo#1920381)
    Undefined behavior in selection node cache
- remove obsolete mozilla-rust-disable-future-incompat.patch</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1730116800">- Mozilla Firefox 132.0
  https://www.mozilla.org/en-US/firefox/132.0/releasenotes
  MFSA 2024-55 (bsc#1231879)
  * CVE-2024-10458 (bmo#1921733)
    Permission leak via embed or object elements
  * CVE-2024-10459 (bmo#1919087)
    Use-after-free in layout with accessibility
  * CVE-2024-10460 (bmo#1912537)
    Confusing display of origin for external protocol handler prompt
  * CVE-2024-10461 (bmo#1914521)
    XSS due to Content-Disposition being ignored in
    multipart/x-mixed-replace response
  * CVE-2024-10462 (bmo#1920423)
    Origin of permission prompt could be spoofed by long URL
  * CVE-2024-10463 (bmo#1920800)
    Cross origin video frame leak
  * CVE-2024-10468 (bmo#1914982)
    Race conditions in IndexedDB
  * CVE-2024-10464 (bmo#1913000)
    History interface could have been used to cause a Denial of
    Service condition in the browser
  * CVE-2024-10465 (bmo#1918853)
    Clipboard "paste" button persisted across tabs
  * CVE-2024-10466 (bmo#1924154)
    DOM push subscription message could hang Firefox
  * CVE-2024-10467 (bmo#1829029, bmo#1888538, bmo#1900394, bmo#1904059,
    bmo#1917742, bmo#1919809, bmo#1923706)
    Memory safety bugs fixed in Firefox 132, Thunderbird 132,
    Firefox ESR 128.4, and Thunderbird 128.4
- requires NSS 3.105
- rebased patches</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1730808000">- Mozilla Firefox 132.0.1
  * Fixed issues causing intermittent video playback problems on
    some sites. (bmo#1928484, bmo#1928798)
- remove KDE integration patches
  - mozilla-kde.patch
  - firefox-kde.patch
  on KDE use these settings instead
  widget.use-xdg-desktop-portal.file-picker=1
  widget.use-xdg-desktop-portal.mime-handler=1
  (those are set by the latest branding package as well)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1731240000">- require xdg-desktop-portal (boo#1233166)</changelog>
</package>
<package pkgid="ae3883e040bda346cb19f5cbefbddf6e65d0de1caeda818f214d8ac32471b6383c6d8237180b8292958fa85ae1063e51c44d30aa7033323c40c1b63ae108169e" name="MozillaFirefox" arch="x86_64">
  <version epoch="0" ver="132.0.1" rel="1.1"/>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1718107200">- Mozilla Firefox 127.0
  https://www.mozilla.org/en-US/firefox/127.0/releasenotes
  MFSA 2024-25 (bsc#1226027)
  * CVE-2024-5687 (bmo#1889066)
    An incorrect principal could have been used when opening new tabs
  * CVE-2024-5688 (bmo#1895086)
    Use-after-free in JavaScript object transplant
  * CVE-2024-5689 (bmo#1389707)
    User confusion and possible phishing vector via Firefox Screenshots
  * CVE-2024-5690 (bmo#1883693)
    External protocol handlers leaked by timing attack
  * CVE-2024-5691 (bmo#1888695)
    Sandboxed iframes were able to bypass sandbox restrictions to
    open a new window
  * CVE-2024-5692 (bmo#1837514, bmo#1891234)
    Bypass of file name restrictions during saving
  * CVE-2024-5693 (bmo#1891319)
    Cross-Origin Image leak via Offscreen Canvas
  * CVE-2024-5694 (bmo#1895055)
    Use-after-free in JavaScript Strings
  * CVE-2024-5695 (bmo#1895579)
    Memory Corruption using allocation using out-of-memory conditions
  * CVE-2024-5696 (bmo#1896555)
    Memory Corruption in Text Fragments
  * CVE-2024-5697 (bmo#1414937)
    Website was able to detect when Firefox was taking a
    screenshot of them
  * CVE-2024-5698 (bmo#1828259)
    Data-list could have overlaid address bar
  * CVE-2024-5699 (bmo#1891349)
    Cookie prefixes not treated as case-sensitive
  * CVE-2024-5700 (bmo#1862809, bmo#1889355, bmo#1893388, bmo#1895123)
    Memory safety bugs fixed in Firefox 127, Firefox ESR 115.12,
    and Thunderbird 115.12
  * CVE-2024-5701 (bmo#1890909, bmo#1891422, bmo#1893915,
    bmo#1894047, bmo#1896024)
    Memory safety bugs fixed in Firefox 127
- removed obsolete mozilla-bmo1886378.patch</changelog>
  <changelog author="Martin Sirringhaus &lt;martin.sirringhaus@suse.com&gt;" date="1719576000">- Fix GNOME search provider (boo#1225278)</changelog>
  <changelog author="Andrei Dziahel &lt;develop7@develop7.info&gt;" date="1719835200">- Mozilla Firefox 127.0.2
  * Fixed an issue where YouTube playback may experience stalling under
    certain conditions (bmo#1900191, bmo#1878510).
  * Fixed an issue where the Private Window icon was displayed in the taskbar
    on Windows when browser.privateWindowSeparation.enabled was
    set to false (bmo#1901840).
- Mozilla Firefox 127.0.1
  * Fixed an issue where users with a primary password set on their profile
    could lose their previous session of tabs upon upgrading if they dismissed
    the primary password prompt (bmo#1901899).
  * Fixed an issue where Linux users with accessibility.monoaudio.enable set
    to true were experiencing slow audio speeds (bmo#1900972).
  * Fixed an issue where, in some circumstances, the Firefox installer
    on Windows failed to complete the installation (bmo#1896868).
  * Fixed an issue causing Firefox to incorrectly reject cookies
    for certain websites (bmo#1901325).</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1720440000">- Mozilla Firefox 128.0
  https://www.mozilla.org/en-US/firefox/128.0/releasenotes
  MFSA 2024-29 (bsc#1226316)
  * CVE-2024-6605 (bmo#1836786)
    Firefox Android missed activation delay to prevent tapjacking
  * CVE-2024-6606 (bmo#1902305)
    Out-of-bounds read in clipboard component
  * CVE-2024-6607 (bmo#1694513)
    Leaving pointerlock by pressing the escape key could be
    prevented
  * CVE-2024-6608 (bmo#1743329)
    Cursor could be moved out of the viewport using pointerlock.
  * CVE-2024-6609 (bmo#1839258)
    Memory corruption in NSS
  * CVE-2024-6610 (bmo#1883396)
    Form validation popups could block exiting full-screen mode
  * CVE-2024-6600 (bmo#1888340)
    Memory corruption in WebGL API
  * CVE-2024-6601 (bmo#1890748)
    Race condition in permission assignment
  * CVE-2024-6602 (bmo#1895032)
    Memory corruption in NSS
  * CVE-2024-6603 (bmo#1895081)
    Memory corruption in thread creation
  * CVE-2024-6611 (bmo#1844827)
    Incorrect handling of SameSite cookies
  * CVE-2024-6612 (bmo#1880374)
    CSP violation leakage when using devtools
  * CVE-2024-6613 (bmo#1900523)
    Incorrect listing of stack frames
  * CVE-2024-6614 (bmo#1902983)
    Incorrect listing of stack frames
  * CVE-2024-6604 (bmo#1748105, bmo#1837550, bmo#1884266)
    Memory safety bugs fixed in Firefox 128, Firefox ESR 115.13,
    and Thunderbird 115.13
  * CVE-2024-6615 (bmo#1892875, bmo#1894428, bmo#1898364)
    Memory safety bugs fixed in Firefox 128
- requires
  NSS 3.101.1
  rust &gt;= 1.78
- update create-tar.sh
- add wayland upstream fixes (bmo#1907511, bmo#1898476)
  (mozilla-bmo1898476.patch and mozilla-bmo1907511.patch)</changelog>
  <changelog author="Martin Jambor &lt;mjambor@suse.com&gt;" date="1721304000">- Add firefox-3781e3117706.patch to fix boo#1227856 aka bmo#1905018
  where an incompatible pointer assignment is not accepted in C by
  GCC 14.</changelog>
  <changelog author="Manfred Hollstein &lt;manfred.h@gmx.net&gt;" date="1722168000">- Firefox 128.0.3 Release
  * Fixed: Fixed an issue causing some sites to not load when
    connecting via HTTP/2. (bmo#1908161, bmo#1909666)
  * Fixed: Fixed collapsed table rows not appearing when expected
    in some situations. (bmo#1907789)
  * Fixed: Fixed the Windows on-screen keyboard potentially
    concealing the webpage when displayed. (bmo#1907766)
- Firefox 128.0.2 Release
  * Fixed: Fixed an audio echo in video calls on macOS under
    certain conditions. (bmo#1908539)
  * Fixed: Fixed an issue where the Adguard extension popup was
    not displaying. (bmo#1906132)
  * Fixed: Fixed an issue causing some screen readers to fail to
    read when navigating by character in rich text editors. (Bug
    1905021)
  * Fixed: Fixed visual glitches when dark mode is enabled in
    Windows ARM devices. (bmo#1897444)
  * Fixed: Fixed an issue causing NTLM authentication failure.
    (bmo#1908115)
  * Fixed: Fixed an issue where content displayed on mouseover
    was not captured in a screenshot. (bmo#1905468)
  * Fixed: Various stability fixes.
- renamed firefox-3781e3117706.patch to mozilla-bmo1905018.patch
  to conform with patch structure and naming for the package</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1723118400">- Mozilla Firefox 129.0
  https://www.mozilla.org/en-US/firefox/129.0/releasenotes
  MFSA 2024-33 (bsc#1228648))
  * CVE-2024-7518 (bmo#1875354)
    Fullscreen notification dialog can be obscured by document content
  * CVE-2024-7519 (bmo#1902307)
    Out of bounds memory access in graphics shared memory handling
  * CVE-2024-7520 (bmo#1903041)
    Type confusion in WebAssembly
  * CVE-2024-7521 (bmo#1904644)
    Incomplete WebAssembly exception handing
  * CVE-2024-7522 (bmo#1906727)
    Out of bounds read in editor component
  * CVE-2024-7523 (bmo#1908344)
    Document content could partially obscure security prompts
  * CVE-2024-7524 (bmo#1909241)
    CSP strict-dynamic bypass using web-compatibility shims
  * CVE-2024-7525 (bmo#1909298)
    Missing permission check when creating a StreamFilter
  * CVE-2024-7526 (bmo#1910306)
    Uninitialized memory used by WebGL
  * CVE-2024-7527 (bmo#1871303)
    Use-after-free in JavaScript garbage collection
  * CVE-2024-7528 (bmo#1895951)
    Use-after-free in IndexedDB
  * CVE-2024-7529 (bmo#1903187)
    Document content could partially obscure security prompts
  * CVE-2024-7530 (bmo#1904011)
    Use-after-free in JavaScript code coverage collection
  * CVE-2024-7531 (bmo#1905691)
    PK11_Encrypt using CKM_CHACHA20 can reveal plaintext on Intel
    Sandy Bridge machines
- removed obsolete patches
  mozilla-bmo1905018.patch
  mozilla-bmo1504834-part3.patch
  mozilla-bmo1512162.patch
  mozilla-bmo1822730.patch
  mozilla-fix-aarch64-libopus.patch
  mozilla-partial-revert-1768632.patch
- requires NSS 3.102.1
- extended mozilla-silence-no-return-type.patch</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1723809600">- Mozilla Firefox 129.0.1
  * Fixed playback issues on some websites with copyrighted video
    served via digital rights management. (bmo#1911283)
  * Fixed a crash when dragging a video file onto some websites
    (bmo#1910990)</changelog>
  <changelog author="Christian Boltz &lt;suse-beta@cboltz.de&gt;" date="1724500800">- _constraints: increase RAM on s390x to fix the build</changelog>
  <changelog author="pallas wept &lt;pallaswept@proton.me&gt;" date="1725451200">- Added mozilla-bmo1746799.patch to fix incorrect audio volume scaling</changelog>
  <changelog author="Marvin Friedrich &lt;contact@marvinf.com&gt;" date="1725624000">- Update dependency on clang-devel from LLVM15 to LLVM18</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1725710400">- Mozilla Firefox 130.0
  https://www.mozilla.org/en-US/firefox/130.0/releasenotes
  MFSA 2024-39 (bsc#1229821)
  * CVE-2024-8385 (bmo#1911909)
    WASM type confusion involving ArrayTypes
  * CVE-2024-8381 (bmo#1912715)
    Type confusion when looking up a property name in a "with" block
  * CVE-2024-8388 (bmo#1902996, bmo#1839074, bmo#1865413, bmo#1868970,
    bmo#1873367, bmo#1877820, bmo#1884642, bmo#1886469, bmo#1894326,
    bmo#1894891, bmo#1897648)
    Fullscreen notice on Android could be hidden under various
    panels and OS prompts
  * CVE-2024-8382 (bmo#1906744)
    Internal event interfaces were exposed to web content when
    browser EventHandler listener callbacks ran
  * CVE-2024-8383 (bmo#1908496)
    Firefox did not ask before openings news: links in an
    external application
  * CVE-2024-8384 (bmo#1911288)
    Garbage collection could mis-color cross-compartment objects
    in OOM conditions
  * CVE-2024-8386 (bmo#1907032, bmo#1909163, bmo#1909529)
    SelectElements could be shown over another site if popups are
    allowed
  * CVE-2024-8387 (bmo#1857607, bmo#1911858, bmo#1914009)
    Memory safety bugs fixed in Firefox 130, Firefox ESR 128.2,
    and Thunderbird 128.2
  * CVE-2024-8389 (bmo#1907230, bmo#1909367)
    Memory safety bugs fixed in Firefox 130
- requires NSS 3.103
- removed obsolete patches
  mozilla-bmo1898476.patch
  mozilla-bmo1907511.patch
- added mozilla-bmo1916038.patch to fix AVIF decoding (bsc#1230500)</changelog>
  <changelog author="Manfred Hollstein &lt;manfred.h@gmx.net&gt;" date="1726660800">- Firefox 130.0.1 Release
  https://www.mozilla.org/en-US/firefox/130.0.1/releasenotes
  * Enterprise: Added an enterprise policy to disable the
  * Firefox Labs* section in *Settings*. (bmo#1911826)
  * Fixed a recent regression causing some UI elements to
    be rendered as left-to-right instead of right-to-left for
    users of our Saraiki localization. (bmo#1917175)
  * Linux: Fixed black rendering of AVIF images when
    Firefox is built with GCC. (bmo#1916038)
- removed obsolete patches
  mozilla-bmo1916038.patch</changelog>
  <changelog author="Manfred Hollstein &lt;manfred.h@gmx.net&gt;" date="1726920000">- Don't use clang18-devel on Leap as they don't have that version.</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1727611200">- Firefox 131.0
  https://www.mozilla.org/en-US/firefox/131.0/releasenotes/
  MFSA 2024-46 (bsc#1230979)
  * CVE-2024-9391 (bmo#1892407)
    Prevent users from exiting full-screen mode in Firefox Focus
    for Android
  * CVE-2024-9392 (bmo#1899154, bmo#1905843)
    Compromised content process can bypass site isolation
  * CVE-2024-9393 (bmo#1918301)
    Cross-origin access to PDF contents through multipart responses
  * CVE-2024-9394 (bmo#1918874)
    Cross-origin access to JSON contents through multipart responses
  * CVE-2024-9395 (bmo#1906024)
    Specially crafted filename could be used to obscure download type
  * CVE-2024-9396 (bmo#1912471)
    Potential memory corruption may occur when cloning certain objects
  * CVE-2024-9397 (bmo#1916659)
    Potential directory upload bypass via clickjacking
  * CVE-2024-9398 (bmo#1881037)
    External protocol handlers could be enumerated via popups
  * CVE-2024-9399 (bmo#1907726)
    Specially crafted WebTransport requests could lead to denial
    of service
  * CVE-2024-9400 (bmo#1915249)
    Potential memory corruption during JIT compilation
  * CVE-2024-9401 (bmo#1872744, bmo#1897792, bmo#1911317, bmo#1916476)
    Memory safety bugs fixed in Firefox 131, Firefox ESR 115.16,
    Firefox ESR 128.3, Thunderbird 131, and Thunderbird 128.3
  * CVE-2024-9402 (bmo#1872744, bmo#1897792, bmo#1911317, bmo#1913445,
    bmo#1914106, bmo#1914475, bmo#1914963, bmo#1915008, bmo#1916476)
    Memory safety bugs fixed in Firefox 131, Firefox ESR 128.3,
    Thunderbird 131, and Thunderbird 128.3
  * CVE-2024-9403 (bmo#1917807)
    Memory safety bugs fixed in Firefox 131 and Thunderbird 131
- requires NSS 3.104
- rebased patches</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1728475200">- Mozilla Firefox 131.0.2
  MFSA 2024-51 (bsc#1231413)
  * CVE-2024-9680 (bmo#1923344)
    Use-after-free in Animation timeline</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1729166400">- Mozilla Firefox 131.0.3
  * some users could not access the Bill Pay portion of their
    bank's site (bmo#1923500)
  * some VR180 and 360 videos were not properly rendering on YouTube
    (bmo#1922278)
  * Fixed a crash that Windows users with Avast or AVG security
    software were experiencing when visiting certain sites. (bmo#1919678)
  * "List all tabs" button was not able to be moved from the toolbar
    (bmo#1918681)
  NFSA 2024-53
  * CVE-2024-9936 (bmo#1920381)
    Undefined behavior in selection node cache
- remove obsolete mozilla-rust-disable-future-incompat.patch</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1730116800">- Mozilla Firefox 132.0
  https://www.mozilla.org/en-US/firefox/132.0/releasenotes
  MFSA 2024-55 (bsc#1231879)
  * CVE-2024-10458 (bmo#1921733)
    Permission leak via embed or object elements
  * CVE-2024-10459 (bmo#1919087)
    Use-after-free in layout with accessibility
  * CVE-2024-10460 (bmo#1912537)
    Confusing display of origin for external protocol handler prompt
  * CVE-2024-10461 (bmo#1914521)
    XSS due to Content-Disposition being ignored in
    multipart/x-mixed-replace response
  * CVE-2024-10462 (bmo#1920423)
    Origin of permission prompt could be spoofed by long URL
  * CVE-2024-10463 (bmo#1920800)
    Cross origin video frame leak
  * CVE-2024-10468 (bmo#1914982)
    Race conditions in IndexedDB
  * CVE-2024-10464 (bmo#1913000)
    History interface could have been used to cause a Denial of
    Service condition in the browser
  * CVE-2024-10465 (bmo#1918853)
    Clipboard "paste" button persisted across tabs
  * CVE-2024-10466 (bmo#1924154)
    DOM push subscription message could hang Firefox
  * CVE-2024-10467 (bmo#1829029, bmo#1888538, bmo#1900394, bmo#1904059,
    bmo#1917742, bmo#1919809, bmo#1923706)
    Memory safety bugs fixed in Firefox 132, Thunderbird 132,
    Firefox ESR 128.4, and Thunderbird 128.4
- requires NSS 3.105
- rebased patches</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1730808000">- Mozilla Firefox 132.0.1
  * Fixed issues causing intermittent video playback problems on
    some sites. (bmo#1928484, bmo#1928798)
- remove KDE integration patches
  - mozilla-kde.patch
  - firefox-kde.patch
  on KDE use these settings instead
  widget.use-xdg-desktop-portal.file-picker=1
  widget.use-xdg-desktop-portal.mime-handler=1
  (those are set by the latest branding package as well)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1731240000">- require xdg-desktop-portal (boo#1233166)</changelog>
</package>
<package pkgid="2828b6ee1ce1696dacb08b4359811ad6c2ca1391a90db56fd8b3ee84c3cc13d68f2c0b50d6a718ba29b7feee7254a0df633d8837d8a6841a4042be43d9e52a49" name="MozillaFirefox" arch="src">
  <version epoch="0" ver="132.0.2" rel="1.1"/>
  <changelog author="Martin Sirringhaus &lt;martin.sirringhaus@suse.com&gt;" date="1719576000">- Fix GNOME search provider (boo#1225278)</changelog>
  <changelog author="Andrei Dziahel &lt;develop7@develop7.info&gt;" date="1719835200">- Mozilla Firefox 127.0.2
  * Fixed an issue where YouTube playback may experience stalling under
    certain conditions (bmo#1900191, bmo#1878510).
  * Fixed an issue where the Private Window icon was displayed in the taskbar
    on Windows when browser.privateWindowSeparation.enabled was
    set to false (bmo#1901840).
- Mozilla Firefox 127.0.1
  * Fixed an issue where users with a primary password set on their profile
    could lose their previous session of tabs upon upgrading if they dismissed
    the primary password prompt (bmo#1901899).
  * Fixed an issue where Linux users with accessibility.monoaudio.enable set
    to true were experiencing slow audio speeds (bmo#1900972).
  * Fixed an issue where, in some circumstances, the Firefox installer
    on Windows failed to complete the installation (bmo#1896868).
  * Fixed an issue causing Firefox to incorrectly reject cookies
    for certain websites (bmo#1901325).</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1720440000">- Mozilla Firefox 128.0
  https://www.mozilla.org/en-US/firefox/128.0/releasenotes
  MFSA 2024-29 (bsc#1226316)
  * CVE-2024-6605 (bmo#1836786)
    Firefox Android missed activation delay to prevent tapjacking
  * CVE-2024-6606 (bmo#1902305)
    Out-of-bounds read in clipboard component
  * CVE-2024-6607 (bmo#1694513)
    Leaving pointerlock by pressing the escape key could be
    prevented
  * CVE-2024-6608 (bmo#1743329)
    Cursor could be moved out of the viewport using pointerlock.
  * CVE-2024-6609 (bmo#1839258)
    Memory corruption in NSS
  * CVE-2024-6610 (bmo#1883396)
    Form validation popups could block exiting full-screen mode
  * CVE-2024-6600 (bmo#1888340)
    Memory corruption in WebGL API
  * CVE-2024-6601 (bmo#1890748)
    Race condition in permission assignment
  * CVE-2024-6602 (bmo#1895032)
    Memory corruption in NSS
  * CVE-2024-6603 (bmo#1895081)
    Memory corruption in thread creation
  * CVE-2024-6611 (bmo#1844827)
    Incorrect handling of SameSite cookies
  * CVE-2024-6612 (bmo#1880374)
    CSP violation leakage when using devtools
  * CVE-2024-6613 (bmo#1900523)
    Incorrect listing of stack frames
  * CVE-2024-6614 (bmo#1902983)
    Incorrect listing of stack frames
  * CVE-2024-6604 (bmo#1748105, bmo#1837550, bmo#1884266)
    Memory safety bugs fixed in Firefox 128, Firefox ESR 115.13,
    and Thunderbird 115.13
  * CVE-2024-6615 (bmo#1892875, bmo#1894428, bmo#1898364)
    Memory safety bugs fixed in Firefox 128
- requires
  NSS 3.101.1
  rust &gt;= 1.78
- update create-tar.sh
- add wayland upstream fixes (bmo#1907511, bmo#1898476)
  (mozilla-bmo1898476.patch and mozilla-bmo1907511.patch)</changelog>
  <changelog author="Martin Jambor &lt;mjambor@suse.com&gt;" date="1721304000">- Add firefox-3781e3117706.patch to fix boo#1227856 aka bmo#1905018
  where an incompatible pointer assignment is not accepted in C by
  GCC 14.</changelog>
  <changelog author="Manfred Hollstein &lt;manfred.h@gmx.net&gt;" date="1722168000">- Firefox 128.0.3 Release
  * Fixed: Fixed an issue causing some sites to not load when
    connecting via HTTP/2. (bmo#1908161, bmo#1909666)
  * Fixed: Fixed collapsed table rows not appearing when expected
    in some situations. (bmo#1907789)
  * Fixed: Fixed the Windows on-screen keyboard potentially
    concealing the webpage when displayed. (bmo#1907766)
- Firefox 128.0.2 Release
  * Fixed: Fixed an audio echo in video calls on macOS under
    certain conditions. (bmo#1908539)
  * Fixed: Fixed an issue where the Adguard extension popup was
    not displaying. (bmo#1906132)
  * Fixed: Fixed an issue causing some screen readers to fail to
    read when navigating by character in rich text editors. (Bug
    1905021)
  * Fixed: Fixed visual glitches when dark mode is enabled in
    Windows ARM devices. (bmo#1897444)
  * Fixed: Fixed an issue causing NTLM authentication failure.
    (bmo#1908115)
  * Fixed: Fixed an issue where content displayed on mouseover
    was not captured in a screenshot. (bmo#1905468)
  * Fixed: Various stability fixes.
- renamed firefox-3781e3117706.patch to mozilla-bmo1905018.patch
  to conform with patch structure and naming for the package</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1723118400">- Mozilla Firefox 129.0
  https://www.mozilla.org/en-US/firefox/129.0/releasenotes
  MFSA 2024-33 (bsc#1228648))
  * CVE-2024-7518 (bmo#1875354)
    Fullscreen notification dialog can be obscured by document content
  * CVE-2024-7519 (bmo#1902307)
    Out of bounds memory access in graphics shared memory handling
  * CVE-2024-7520 (bmo#1903041)
    Type confusion in WebAssembly
  * CVE-2024-7521 (bmo#1904644)
    Incomplete WebAssembly exception handing
  * CVE-2024-7522 (bmo#1906727)
    Out of bounds read in editor component
  * CVE-2024-7523 (bmo#1908344)
    Document content could partially obscure security prompts
  * CVE-2024-7524 (bmo#1909241)
    CSP strict-dynamic bypass using web-compatibility shims
  * CVE-2024-7525 (bmo#1909298)
    Missing permission check when creating a StreamFilter
  * CVE-2024-7526 (bmo#1910306)
    Uninitialized memory used by WebGL
  * CVE-2024-7527 (bmo#1871303)
    Use-after-free in JavaScript garbage collection
  * CVE-2024-7528 (bmo#1895951)
    Use-after-free in IndexedDB
  * CVE-2024-7529 (bmo#1903187)
    Document content could partially obscure security prompts
  * CVE-2024-7530 (bmo#1904011)
    Use-after-free in JavaScript code coverage collection
  * CVE-2024-7531 (bmo#1905691)
    PK11_Encrypt using CKM_CHACHA20 can reveal plaintext on Intel
    Sandy Bridge machines
- removed obsolete patches
  mozilla-bmo1905018.patch
  mozilla-bmo1504834-part3.patch
  mozilla-bmo1512162.patch
  mozilla-bmo1822730.patch
  mozilla-fix-aarch64-libopus.patch
  mozilla-partial-revert-1768632.patch
- requires NSS 3.102.1
- extended mozilla-silence-no-return-type.patch</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1723809600">- Mozilla Firefox 129.0.1
  * Fixed playback issues on some websites with copyrighted video
    served via digital rights management. (bmo#1911283)
  * Fixed a crash when dragging a video file onto some websites
    (bmo#1910990)</changelog>
  <changelog author="Christian Boltz &lt;suse-beta@cboltz.de&gt;" date="1724500800">- _constraints: increase RAM on s390x to fix the build</changelog>
  <changelog author="pallas wept &lt;pallaswept@proton.me&gt;" date="1725451200">- Added mozilla-bmo1746799.patch to fix incorrect audio volume scaling</changelog>
  <changelog author="Marvin Friedrich &lt;contact@marvinf.com&gt;" date="1725624000">- Update dependency on clang-devel from LLVM15 to LLVM18</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1725710400">- Mozilla Firefox 130.0
  https://www.mozilla.org/en-US/firefox/130.0/releasenotes
  MFSA 2024-39 (bsc#1229821)
  * CVE-2024-8385 (bmo#1911909)
    WASM type confusion involving ArrayTypes
  * CVE-2024-8381 (bmo#1912715)
    Type confusion when looking up a property name in a "with" block
  * CVE-2024-8388 (bmo#1902996, bmo#1839074, bmo#1865413, bmo#1868970,
    bmo#1873367, bmo#1877820, bmo#1884642, bmo#1886469, bmo#1894326,
    bmo#1894891, bmo#1897648)
    Fullscreen notice on Android could be hidden under various
    panels and OS prompts
  * CVE-2024-8382 (bmo#1906744)
    Internal event interfaces were exposed to web content when
    browser EventHandler listener callbacks ran
  * CVE-2024-8383 (bmo#1908496)
    Firefox did not ask before openings news: links in an
    external application
  * CVE-2024-8384 (bmo#1911288)
    Garbage collection could mis-color cross-compartment objects
    in OOM conditions
  * CVE-2024-8386 (bmo#1907032, bmo#1909163, bmo#1909529)
    SelectElements could be shown over another site if popups are
    allowed
  * CVE-2024-8387 (bmo#1857607, bmo#1911858, bmo#1914009)
    Memory safety bugs fixed in Firefox 130, Firefox ESR 128.2,
    and Thunderbird 128.2
  * CVE-2024-8389 (bmo#1907230, bmo#1909367)
    Memory safety bugs fixed in Firefox 130
- requires NSS 3.103
- removed obsolete patches
  mozilla-bmo1898476.patch
  mozilla-bmo1907511.patch
- added mozilla-bmo1916038.patch to fix AVIF decoding (bsc#1230500)</changelog>
  <changelog author="Manfred Hollstein &lt;manfred.h@gmx.net&gt;" date="1726660800">- Firefox 130.0.1 Release
  https://www.mozilla.org/en-US/firefox/130.0.1/releasenotes
  * Enterprise: Added an enterprise policy to disable the
  * Firefox Labs* section in *Settings*. (bmo#1911826)
  * Fixed a recent regression causing some UI elements to
    be rendered as left-to-right instead of right-to-left for
    users of our Saraiki localization. (bmo#1917175)
  * Linux: Fixed black rendering of AVIF images when
    Firefox is built with GCC. (bmo#1916038)
- removed obsolete patches
  mozilla-bmo1916038.patch</changelog>
  <changelog author="Manfred Hollstein &lt;manfred.h@gmx.net&gt;" date="1726920000">- Don't use clang18-devel on Leap as they don't have that version.</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1727611200">- Firefox 131.0
  https://www.mozilla.org/en-US/firefox/131.0/releasenotes/
  MFSA 2024-46 (bsc#1230979)
  * CVE-2024-9391 (bmo#1892407)
    Prevent users from exiting full-screen mode in Firefox Focus
    for Android
  * CVE-2024-9392 (bmo#1899154, bmo#1905843)
    Compromised content process can bypass site isolation
  * CVE-2024-9393 (bmo#1918301)
    Cross-origin access to PDF contents through multipart responses
  * CVE-2024-9394 (bmo#1918874)
    Cross-origin access to JSON contents through multipart responses
  * CVE-2024-9395 (bmo#1906024)
    Specially crafted filename could be used to obscure download type
  * CVE-2024-9396 (bmo#1912471)
    Potential memory corruption may occur when cloning certain objects
  * CVE-2024-9397 (bmo#1916659)
    Potential directory upload bypass via clickjacking
  * CVE-2024-9398 (bmo#1881037)
    External protocol handlers could be enumerated via popups
  * CVE-2024-9399 (bmo#1907726)
    Specially crafted WebTransport requests could lead to denial
    of service
  * CVE-2024-9400 (bmo#1915249)
    Potential memory corruption during JIT compilation
  * CVE-2024-9401 (bmo#1872744, bmo#1897792, bmo#1911317, bmo#1916476)
    Memory safety bugs fixed in Firefox 131, Firefox ESR 115.16,
    Firefox ESR 128.3, Thunderbird 131, and Thunderbird 128.3
  * CVE-2024-9402 (bmo#1872744, bmo#1897792, bmo#1911317, bmo#1913445,
    bmo#1914106, bmo#1914475, bmo#1914963, bmo#1915008, bmo#1916476)
    Memory safety bugs fixed in Firefox 131, Firefox ESR 128.3,
    Thunderbird 131, and Thunderbird 128.3
  * CVE-2024-9403 (bmo#1917807)
    Memory safety bugs fixed in Firefox 131 and Thunderbird 131
- requires NSS 3.104
- rebased patches</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1728475200">- Mozilla Firefox 131.0.2
  MFSA 2024-51 (bsc#1231413)
  * CVE-2024-9680 (bmo#1923344)
    Use-after-free in Animation timeline</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1729166400">- Mozilla Firefox 131.0.3
  * some users could not access the Bill Pay portion of their
    bank's site (bmo#1923500)
  * some VR180 and 360 videos were not properly rendering on YouTube
    (bmo#1922278)
  * Fixed a crash that Windows users with Avast or AVG security
    software were experiencing when visiting certain sites. (bmo#1919678)
  * "List all tabs" button was not able to be moved from the toolbar
    (bmo#1918681)
  NFSA 2024-53
  * CVE-2024-9936 (bmo#1920381)
    Undefined behavior in selection node cache
- remove obsolete mozilla-rust-disable-future-incompat.patch</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1730116800">- Mozilla Firefox 132.0
  https://www.mozilla.org/en-US/firefox/132.0/releasenotes
  MFSA 2024-55 (bsc#1231879)
  * CVE-2024-10458 (bmo#1921733)
    Permission leak via embed or object elements
  * CVE-2024-10459 (bmo#1919087)
    Use-after-free in layout with accessibility
  * CVE-2024-10460 (bmo#1912537)
    Confusing display of origin for external protocol handler prompt
  * CVE-2024-10461 (bmo#1914521)
    XSS due to Content-Disposition being ignored in
    multipart/x-mixed-replace response
  * CVE-2024-10462 (bmo#1920423)
    Origin of permission prompt could be spoofed by long URL
  * CVE-2024-10463 (bmo#1920800)
    Cross origin video frame leak
  * CVE-2024-10468 (bmo#1914982)
    Race conditions in IndexedDB
  * CVE-2024-10464 (bmo#1913000)
    History interface could have been used to cause a Denial of
    Service condition in the browser
  * CVE-2024-10465 (bmo#1918853)
    Clipboard "paste" button persisted across tabs
  * CVE-2024-10466 (bmo#1924154)
    DOM push subscription message could hang Firefox
  * CVE-2024-10467 (bmo#1829029, bmo#1888538, bmo#1900394, bmo#1904059,
    bmo#1917742, bmo#1919809, bmo#1923706)
    Memory safety bugs fixed in Firefox 132, Thunderbird 132,
    Firefox ESR 128.4, and Thunderbird 128.4
- requires NSS 3.105
- rebased patches</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1730808000">- Mozilla Firefox 132.0.1
  * Fixed issues causing intermittent video playback problems on
    some sites. (bmo#1928484, bmo#1928798)
- remove KDE integration patches
  - mozilla-kde.patch
  - firefox-kde.patch
  on KDE use these settings instead
  widget.use-xdg-desktop-portal.file-picker=1
  widget.use-xdg-desktop-portal.mime-handler=1
  (those are set by the latest branding package as well)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1731240000">- require xdg-desktop-portal (boo#1233166)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1731672000">- Mozilla Firefox 132.0.2
  * Fixed possible errors when playing encrypted media content
    through some streaming providers. (bmo#1929491)
  * Added a mitigation to help reduce the frequency of duplicated
    push notifications reported by some users. (bmo#1928868)
  * Fixed hangs when printing from some sites when using the system
    print dialog. (bmo#1898184)
  * Fixed a crash which could occur when using Microsoft SSO on macOS
    (bmo#1929622)
  * Fixed a crash in the Network Monitor developer tool which could
    occur in some circumstances. (bmo#1924882)</changelog>
</package>
<package pkgid="a54f1e5dca43147abad53d9797509d963034bb6a6decd592ea64929b7e75a82ce1df71a817d6aba36c8ecea6f3fe97e58da67a94cdffb7c1bfe7fb185a53baa7" name="MozillaFirefox" arch="x86_64">
  <version epoch="0" ver="132.0.2" rel="1.1"/>
  <changelog author="Martin Sirringhaus &lt;martin.sirringhaus@suse.com&gt;" date="1719576000">- Fix GNOME search provider (boo#1225278)</changelog>
  <changelog author="Andrei Dziahel &lt;develop7@develop7.info&gt;" date="1719835200">- Mozilla Firefox 127.0.2
  * Fixed an issue where YouTube playback may experience stalling under
    certain conditions (bmo#1900191, bmo#1878510).
  * Fixed an issue where the Private Window icon was displayed in the taskbar
    on Windows when browser.privateWindowSeparation.enabled was
    set to false (bmo#1901840).
- Mozilla Firefox 127.0.1
  * Fixed an issue where users with a primary password set on their profile
    could lose their previous session of tabs upon upgrading if they dismissed
    the primary password prompt (bmo#1901899).
  * Fixed an issue where Linux users with accessibility.monoaudio.enable set
    to true were experiencing slow audio speeds (bmo#1900972).
  * Fixed an issue where, in some circumstances, the Firefox installer
    on Windows failed to complete the installation (bmo#1896868).
  * Fixed an issue causing Firefox to incorrectly reject cookies
    for certain websites (bmo#1901325).</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1720440000">- Mozilla Firefox 128.0
  https://www.mozilla.org/en-US/firefox/128.0/releasenotes
  MFSA 2024-29 (bsc#1226316)
  * CVE-2024-6605 (bmo#1836786)
    Firefox Android missed activation delay to prevent tapjacking
  * CVE-2024-6606 (bmo#1902305)
    Out-of-bounds read in clipboard component
  * CVE-2024-6607 (bmo#1694513)
    Leaving pointerlock by pressing the escape key could be
    prevented
  * CVE-2024-6608 (bmo#1743329)
    Cursor could be moved out of the viewport using pointerlock.
  * CVE-2024-6609 (bmo#1839258)
    Memory corruption in NSS
  * CVE-2024-6610 (bmo#1883396)
    Form validation popups could block exiting full-screen mode
  * CVE-2024-6600 (bmo#1888340)
    Memory corruption in WebGL API
  * CVE-2024-6601 (bmo#1890748)
    Race condition in permission assignment
  * CVE-2024-6602 (bmo#1895032)
    Memory corruption in NSS
  * CVE-2024-6603 (bmo#1895081)
    Memory corruption in thread creation
  * CVE-2024-6611 (bmo#1844827)
    Incorrect handling of SameSite cookies
  * CVE-2024-6612 (bmo#1880374)
    CSP violation leakage when using devtools
  * CVE-2024-6613 (bmo#1900523)
    Incorrect listing of stack frames
  * CVE-2024-6614 (bmo#1902983)
    Incorrect listing of stack frames
  * CVE-2024-6604 (bmo#1748105, bmo#1837550, bmo#1884266)
    Memory safety bugs fixed in Firefox 128, Firefox ESR 115.13,
    and Thunderbird 115.13
  * CVE-2024-6615 (bmo#1892875, bmo#1894428, bmo#1898364)
    Memory safety bugs fixed in Firefox 128
- requires
  NSS 3.101.1
  rust &gt;= 1.78
- update create-tar.sh
- add wayland upstream fixes (bmo#1907511, bmo#1898476)
  (mozilla-bmo1898476.patch and mozilla-bmo1907511.patch)</changelog>
  <changelog author="Martin Jambor &lt;mjambor@suse.com&gt;" date="1721304000">- Add firefox-3781e3117706.patch to fix boo#1227856 aka bmo#1905018
  where an incompatible pointer assignment is not accepted in C by
  GCC 14.</changelog>
  <changelog author="Manfred Hollstein &lt;manfred.h@gmx.net&gt;" date="1722168000">- Firefox 128.0.3 Release
  * Fixed: Fixed an issue causing some sites to not load when
    connecting via HTTP/2. (bmo#1908161, bmo#1909666)
  * Fixed: Fixed collapsed table rows not appearing when expected
    in some situations. (bmo#1907789)
  * Fixed: Fixed the Windows on-screen keyboard potentially
    concealing the webpage when displayed. (bmo#1907766)
- Firefox 128.0.2 Release
  * Fixed: Fixed an audio echo in video calls on macOS under
    certain conditions. (bmo#1908539)
  * Fixed: Fixed an issue where the Adguard extension popup was
    not displaying. (bmo#1906132)
  * Fixed: Fixed an issue causing some screen readers to fail to
    read when navigating by character in rich text editors. (Bug
    1905021)
  * Fixed: Fixed visual glitches when dark mode is enabled in
    Windows ARM devices. (bmo#1897444)
  * Fixed: Fixed an issue causing NTLM authentication failure.
    (bmo#1908115)
  * Fixed: Fixed an issue where content displayed on mouseover
    was not captured in a screenshot. (bmo#1905468)
  * Fixed: Various stability fixes.
- renamed firefox-3781e3117706.patch to mozilla-bmo1905018.patch
  to conform with patch structure and naming for the package</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1723118400">- Mozilla Firefox 129.0
  https://www.mozilla.org/en-US/firefox/129.0/releasenotes
  MFSA 2024-33 (bsc#1228648))
  * CVE-2024-7518 (bmo#1875354)
    Fullscreen notification dialog can be obscured by document content
  * CVE-2024-7519 (bmo#1902307)
    Out of bounds memory access in graphics shared memory handling
  * CVE-2024-7520 (bmo#1903041)
    Type confusion in WebAssembly
  * CVE-2024-7521 (bmo#1904644)
    Incomplete WebAssembly exception handing
  * CVE-2024-7522 (bmo#1906727)
    Out of bounds read in editor component
  * CVE-2024-7523 (bmo#1908344)
    Document content could partially obscure security prompts
  * CVE-2024-7524 (bmo#1909241)
    CSP strict-dynamic bypass using web-compatibility shims
  * CVE-2024-7525 (bmo#1909298)
    Missing permission check when creating a StreamFilter
  * CVE-2024-7526 (bmo#1910306)
    Uninitialized memory used by WebGL
  * CVE-2024-7527 (bmo#1871303)
    Use-after-free in JavaScript garbage collection
  * CVE-2024-7528 (bmo#1895951)
    Use-after-free in IndexedDB
  * CVE-2024-7529 (bmo#1903187)
    Document content could partially obscure security prompts
  * CVE-2024-7530 (bmo#1904011)
    Use-after-free in JavaScript code coverage collection
  * CVE-2024-7531 (bmo#1905691)
    PK11_Encrypt using CKM_CHACHA20 can reveal plaintext on Intel
    Sandy Bridge machines
- removed obsolete patches
  mozilla-bmo1905018.patch
  mozilla-bmo1504834-part3.patch
  mozilla-bmo1512162.patch
  mozilla-bmo1822730.patch
  mozilla-fix-aarch64-libopus.patch
  mozilla-partial-revert-1768632.patch
- requires NSS 3.102.1
- extended mozilla-silence-no-return-type.patch</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1723809600">- Mozilla Firefox 129.0.1
  * Fixed playback issues on some websites with copyrighted video
    served via digital rights management. (bmo#1911283)
  * Fixed a crash when dragging a video file onto some websites
    (bmo#1910990)</changelog>
  <changelog author="Christian Boltz &lt;suse-beta@cboltz.de&gt;" date="1724500800">- _constraints: increase RAM on s390x to fix the build</changelog>
  <changelog author="pallas wept &lt;pallaswept@proton.me&gt;" date="1725451200">- Added mozilla-bmo1746799.patch to fix incorrect audio volume scaling</changelog>
  <changelog author="Marvin Friedrich &lt;contact@marvinf.com&gt;" date="1725624000">- Update dependency on clang-devel from LLVM15 to LLVM18</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1725710400">- Mozilla Firefox 130.0
  https://www.mozilla.org/en-US/firefox/130.0/releasenotes
  MFSA 2024-39 (bsc#1229821)
  * CVE-2024-8385 (bmo#1911909)
    WASM type confusion involving ArrayTypes
  * CVE-2024-8381 (bmo#1912715)
    Type confusion when looking up a property name in a "with" block
  * CVE-2024-8388 (bmo#1902996, bmo#1839074, bmo#1865413, bmo#1868970,
    bmo#1873367, bmo#1877820, bmo#1884642, bmo#1886469, bmo#1894326,
    bmo#1894891, bmo#1897648)
    Fullscreen notice on Android could be hidden under various
    panels and OS prompts
  * CVE-2024-8382 (bmo#1906744)
    Internal event interfaces were exposed to web content when
    browser EventHandler listener callbacks ran
  * CVE-2024-8383 (bmo#1908496)
    Firefox did not ask before openings news: links in an
    external application
  * CVE-2024-8384 (bmo#1911288)
    Garbage collection could mis-color cross-compartment objects
    in OOM conditions
  * CVE-2024-8386 (bmo#1907032, bmo#1909163, bmo#1909529)
    SelectElements could be shown over another site if popups are
    allowed
  * CVE-2024-8387 (bmo#1857607, bmo#1911858, bmo#1914009)
    Memory safety bugs fixed in Firefox 130, Firefox ESR 128.2,
    and Thunderbird 128.2
  * CVE-2024-8389 (bmo#1907230, bmo#1909367)
    Memory safety bugs fixed in Firefox 130
- requires NSS 3.103
- removed obsolete patches
  mozilla-bmo1898476.patch
  mozilla-bmo1907511.patch
- added mozilla-bmo1916038.patch to fix AVIF decoding (bsc#1230500)</changelog>
  <changelog author="Manfred Hollstein &lt;manfred.h@gmx.net&gt;" date="1726660800">- Firefox 130.0.1 Release
  https://www.mozilla.org/en-US/firefox/130.0.1/releasenotes
  * Enterprise: Added an enterprise policy to disable the
  * Firefox Labs* section in *Settings*. (bmo#1911826)
  * Fixed a recent regression causing some UI elements to
    be rendered as left-to-right instead of right-to-left for
    users of our Saraiki localization. (bmo#1917175)
  * Linux: Fixed black rendering of AVIF images when
    Firefox is built with GCC. (bmo#1916038)
- removed obsolete patches
  mozilla-bmo1916038.patch</changelog>
  <changelog author="Manfred Hollstein &lt;manfred.h@gmx.net&gt;" date="1726920000">- Don't use clang18-devel on Leap as they don't have that version.</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1727611200">- Firefox 131.0
  https://www.mozilla.org/en-US/firefox/131.0/releasenotes/
  MFSA 2024-46 (bsc#1230979)
  * CVE-2024-9391 (bmo#1892407)
    Prevent users from exiting full-screen mode in Firefox Focus
    for Android
  * CVE-2024-9392 (bmo#1899154, bmo#1905843)
    Compromised content process can bypass site isolation
  * CVE-2024-9393 (bmo#1918301)
    Cross-origin access to PDF contents through multipart responses
  * CVE-2024-9394 (bmo#1918874)
    Cross-origin access to JSON contents through multipart responses
  * CVE-2024-9395 (bmo#1906024)
    Specially crafted filename could be used to obscure download type
  * CVE-2024-9396 (bmo#1912471)
    Potential memory corruption may occur when cloning certain objects
  * CVE-2024-9397 (bmo#1916659)
    Potential directory upload bypass via clickjacking
  * CVE-2024-9398 (bmo#1881037)
    External protocol handlers could be enumerated via popups
  * CVE-2024-9399 (bmo#1907726)
    Specially crafted WebTransport requests could lead to denial
    of service
  * CVE-2024-9400 (bmo#1915249)
    Potential memory corruption during JIT compilation
  * CVE-2024-9401 (bmo#1872744, bmo#1897792, bmo#1911317, bmo#1916476)
    Memory safety bugs fixed in Firefox 131, Firefox ESR 115.16,
    Firefox ESR 128.3, Thunderbird 131, and Thunderbird 128.3
  * CVE-2024-9402 (bmo#1872744, bmo#1897792, bmo#1911317, bmo#1913445,
    bmo#1914106, bmo#1914475, bmo#1914963, bmo#1915008, bmo#1916476)
    Memory safety bugs fixed in Firefox 131, Firefox ESR 128.3,
    Thunderbird 131, and Thunderbird 128.3
  * CVE-2024-9403 (bmo#1917807)
    Memory safety bugs fixed in Firefox 131 and Thunderbird 131
- requires NSS 3.104
- rebased patches</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1728475200">- Mozilla Firefox 131.0.2
  MFSA 2024-51 (bsc#1231413)
  * CVE-2024-9680 (bmo#1923344)
    Use-after-free in Animation timeline</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1729166400">- Mozilla Firefox 131.0.3
  * some users could not access the Bill Pay portion of their
    bank's site (bmo#1923500)
  * some VR180 and 360 videos were not properly rendering on YouTube
    (bmo#1922278)
  * Fixed a crash that Windows users with Avast or AVG security
    software were experiencing when visiting certain sites. (bmo#1919678)
  * "List all tabs" button was not able to be moved from the toolbar
    (bmo#1918681)
  NFSA 2024-53
  * CVE-2024-9936 (bmo#1920381)
    Undefined behavior in selection node cache
- remove obsolete mozilla-rust-disable-future-incompat.patch</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1730116800">- Mozilla Firefox 132.0
  https://www.mozilla.org/en-US/firefox/132.0/releasenotes
  MFSA 2024-55 (bsc#1231879)
  * CVE-2024-10458 (bmo#1921733)
    Permission leak via embed or object elements
  * CVE-2024-10459 (bmo#1919087)
    Use-after-free in layout with accessibility
  * CVE-2024-10460 (bmo#1912537)
    Confusing display of origin for external protocol handler prompt
  * CVE-2024-10461 (bmo#1914521)
    XSS due to Content-Disposition being ignored in
    multipart/x-mixed-replace response
  * CVE-2024-10462 (bmo#1920423)
    Origin of permission prompt could be spoofed by long URL
  * CVE-2024-10463 (bmo#1920800)
    Cross origin video frame leak
  * CVE-2024-10468 (bmo#1914982)
    Race conditions in IndexedDB
  * CVE-2024-10464 (bmo#1913000)
    History interface could have been used to cause a Denial of
    Service condition in the browser
  * CVE-2024-10465 (bmo#1918853)
    Clipboard "paste" button persisted across tabs
  * CVE-2024-10466 (bmo#1924154)
    DOM push subscription message could hang Firefox
  * CVE-2024-10467 (bmo#1829029, bmo#1888538, bmo#1900394, bmo#1904059,
    bmo#1917742, bmo#1919809, bmo#1923706)
    Memory safety bugs fixed in Firefox 132, Thunderbird 132,
    Firefox ESR 128.4, and Thunderbird 128.4
- requires NSS 3.105
- rebased patches</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1730808000">- Mozilla Firefox 132.0.1
  * Fixed issues causing intermittent video playback problems on
    some sites. (bmo#1928484, bmo#1928798)
- remove KDE integration patches
  - mozilla-kde.patch
  - firefox-kde.patch
  on KDE use these settings instead
  widget.use-xdg-desktop-portal.file-picker=1
  widget.use-xdg-desktop-portal.mime-handler=1
  (those are set by the latest branding package as well)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1731240000">- require xdg-desktop-portal (boo#1233166)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1731672000">- Mozilla Firefox 132.0.2
  * Fixed possible errors when playing encrypted media content
    through some streaming providers. (bmo#1929491)
  * Added a mitigation to help reduce the frequency of duplicated
    push notifications reported by some users. (bmo#1928868)
  * Fixed hangs when printing from some sites when using the system
    print dialog. (bmo#1898184)
  * Fixed a crash which could occur when using Microsoft SSO on macOS
    (bmo#1929622)
  * Fixed a crash in the Network Monitor developer tool which could
    occur in some circumstances. (bmo#1924882)</changelog>
</package>
<package pkgid="97e27d491423a425a0012babba66d8f50fb0d28306270fd9f82f0097b5ecd0b808394689663c569216f8f3784c5f5c232b9109756580c121e977f1772c270c1f" name="MozillaFirefox-branding-openSUSE" arch="i586">
  <version epoch="0" ver="68" rel="5.0.2.1.sr20241103"/>
  <changelog author="Lubos Kocman &lt;Lubos.Kocman+factory@suse.de&gt;" date="1563364800">- recognize Leap 15.2 via sle_version</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1568030400">- layout.word_select.stop_at_punctuation -&gt; true (boo#1133163)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1570190400">- removed extensions preferences (moved to core package)
- use multibuild to provide branding package for
  MozillaFirefox and firefox-esr</changelog>
  <changelog author="Stasiek Michalski &lt;stasiek@michalski.cc&gt;" date="1584619200">- Update the default homepage and the bookmark icons</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1632484800">- use HTTPS for software search plugin</changelog>
  <changelog author="Yuchen Lin &lt;mlin+factory@suse.de&gt;" date="1639742400">- add sle_version 150300 and 150400 check</changelog>
  <changelog author="Rischio Cinico &lt;rischiocinico@gmail.com&gt;" date="1645876800">- add some useful links about openSUSE in the about:newtab page</changelog>
  <changelog author="Yuchen Lin &lt;mlin+factory@suse.de&gt;" date="1660046400">- add sle_version 150500 check</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1730721600">- add properties to use xdg-desktop-portal (boo#1226112)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1731240000">- do not use XDG for mime-handler as it does not handle the default
  browser check correctly</changelog>
</package>
<package pkgid="151e2fd0d6472c9ebf931bd4d931554a622d9317ca0ce34ed751326e0dafbfd54e7d85991f0749b5c4534b45cfce94c74fe1366122c3bdc1bad823fd8c6fcef4" name="MozillaFirefox-branding-openSUSE" arch="src">
  <version epoch="0" ver="68" rel="5.0.2.1.sr20241103"/>
  <changelog author="wr@rosenauer.org" date="1445256000">- change homepage to https://www.opensuse.org/searchPage/
  (boo#950948, boo#950949)</changelog>
  <changelog author="wr@rosenauer.org" date="1450440000">- identify Tumbleweed correctly</changelog>
  <changelog author="dimstar@opensuse.org" date="1468238400">- Identify the different Leap versions correctly (up to Leap 42.2)
  (boo#987969).</changelog>
  <changelog author="qantas94heavy@gmail.com" date="1481284800">- Fix openSUSE bookmarks not added to default profile (boo#1014292)
  * Move openSUSE bookmarks from toolbar to menu
  * Use local favicon for all bookmarks (Firefox 45+)
  * Fix links to "openSUSE Documentation" and "How to Participate"
    (boo#704121, boo#953164)
- Remove DuckDuckGo search plugin (included upstream)
- Clean up spec file
  * Change $RPM_BUILD_ROOT to %{buildroot}
  * Remove %clean section
  * Escape % symbols</changelog>
  <changelog author="wr@rosenauer.org" date="1493380800">- recognize Leap 42.3 (boo#1036679)</changelog>
  <changelog author="wr@rosenauer.org" date="1496664000">- really fix boo#1036679 (recognize Leap 42.3)</changelog>
  <changelog author="wr@rosenauer.org" date="1522584000">- recognize Leap 15.0 (boo#1087713)</changelog>
  <changelog author="wr@rosenauer.org" date="1535198400">- removed intl.locale.matchOS
  * it's not used in recent versions and it was set in the general
    openSUSE Firefox package since 2011</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1556020800">- bump version to 60 for SLE compatibility (bsc#1128316)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1557057600">- recognize Leap 15 via sle_version (required for &gt;= 15.1)</changelog>
  <changelog author="Lubos Kocman &lt;Lubos.Kocman+factory@suse.de&gt;" date="1563364800">- recognize Leap 15.2 via sle_version</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1568030400">- layout.word_select.stop_at_punctuation -&gt; true (boo#1133163)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1570190400">- removed extensions preferences (moved to core package)
- use multibuild to provide branding package for
  MozillaFirefox and firefox-esr</changelog>
  <changelog author="Stasiek Michalski &lt;stasiek@michalski.cc&gt;" date="1584619200">- Update the default homepage and the bookmark icons</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1632484800">- use HTTPS for software search plugin</changelog>
  <changelog author="Yuchen Lin &lt;mlin+factory@suse.de&gt;" date="1639742400">- add sle_version 150300 and 150400 check</changelog>
  <changelog author="Rischio Cinico &lt;rischiocinico@gmail.com&gt;" date="1645876800">- add some useful links about openSUSE in the about:newtab page</changelog>
  <changelog author="Yuchen Lin &lt;mlin+factory@suse.de&gt;" date="1660046400">- add sle_version 150500 check</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1730721600">- add properties to use xdg-desktop-portal (boo#1226112)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1731240000">- do not use XDG for mime-handler as it does not handle the default
  browser check correctly</changelog>
</package>
<package pkgid="76985bf4e61b4e834e5546e378687f7ba1ed9c6e6b43bdc564cffc3ae233ee2e357824e348cd989775d138142db438e1d9aedbd0276cd7c48b3fa2e2f8bf6728" name="MozillaFirefox-branding-openSUSE" arch="x86_64">
  <version epoch="0" ver="68" rel="5.0.2.1.sr20241103"/>
  <changelog author="Lubos Kocman &lt;Lubos.Kocman+factory@suse.de&gt;" date="1563364800">- recognize Leap 15.2 via sle_version</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1568030400">- layout.word_select.stop_at_punctuation -&gt; true (boo#1133163)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1570190400">- removed extensions preferences (moved to core package)
- use multibuild to provide branding package for
  MozillaFirefox and firefox-esr</changelog>
  <changelog author="Stasiek Michalski &lt;stasiek@michalski.cc&gt;" date="1584619200">- Update the default homepage and the bookmark icons</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1632484800">- use HTTPS for software search plugin</changelog>
  <changelog author="Yuchen Lin &lt;mlin+factory@suse.de&gt;" date="1639742400">- add sle_version 150300 and 150400 check</changelog>
  <changelog author="Rischio Cinico &lt;rischiocinico@gmail.com&gt;" date="1645876800">- add some useful links about openSUSE in the about:newtab page</changelog>
  <changelog author="Yuchen Lin &lt;mlin+factory@suse.de&gt;" date="1660046400">- add sle_version 150500 check</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1730721600">- add properties to use xdg-desktop-portal (boo#1226112)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1731240000">- do not use XDG for mime-handler as it does not handle the default
  browser check correctly</changelog>
</package>
<package pkgid="c77b56194c0b0196575318a427e500fd85d306263e3532ab9ab42cd6c6e4f9fff8bc64da5e2dac5faf2387a7899f8ede985824f0757458073b063770191cc991" name="MozillaFirefox-branding-upstream" arch="x86_64">
  <version epoch="0" ver="132.0.1" rel="1.1"/>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1718107200">- Mozilla Firefox 127.0
  https://www.mozilla.org/en-US/firefox/127.0/releasenotes
  MFSA 2024-25 (bsc#1226027)
  * CVE-2024-5687 (bmo#1889066)
    An incorrect principal could have been used when opening new tabs
  * CVE-2024-5688 (bmo#1895086)
    Use-after-free in JavaScript object transplant
  * CVE-2024-5689 (bmo#1389707)
    User confusion and possible phishing vector via Firefox Screenshots
  * CVE-2024-5690 (bmo#1883693)
    External protocol handlers leaked by timing attack
  * CVE-2024-5691 (bmo#1888695)
    Sandboxed iframes were able to bypass sandbox restrictions to
    open a new window
  * CVE-2024-5692 (bmo#1837514, bmo#1891234)
    Bypass of file name restrictions during saving
  * CVE-2024-5693 (bmo#1891319)
    Cross-Origin Image leak via Offscreen Canvas
  * CVE-2024-5694 (bmo#1895055)
    Use-after-free in JavaScript Strings
  * CVE-2024-5695 (bmo#1895579)
    Memory Corruption using allocation using out-of-memory conditions
  * CVE-2024-5696 (bmo#1896555)
    Memory Corruption in Text Fragments
  * CVE-2024-5697 (bmo#1414937)
    Website was able to detect when Firefox was taking a
    screenshot of them
  * CVE-2024-5698 (bmo#1828259)
    Data-list could have overlaid address bar
  * CVE-2024-5699 (bmo#1891349)
    Cookie prefixes not treated as case-sensitive
  * CVE-2024-5700 (bmo#1862809, bmo#1889355, bmo#1893388, bmo#1895123)
    Memory safety bugs fixed in Firefox 127, Firefox ESR 115.12,
    and Thunderbird 115.12
  * CVE-2024-5701 (bmo#1890909, bmo#1891422, bmo#1893915,
    bmo#1894047, bmo#1896024)
    Memory safety bugs fixed in Firefox 127
- removed obsolete mozilla-bmo1886378.patch</changelog>
  <changelog author="Martin Sirringhaus &lt;martin.sirringhaus@suse.com&gt;" date="1719576000">- Fix GNOME search provider (boo#1225278)</changelog>
  <changelog author="Andrei Dziahel &lt;develop7@develop7.info&gt;" date="1719835200">- Mozilla Firefox 127.0.2
  * Fixed an issue where YouTube playback may experience stalling under
    certain conditions (bmo#1900191, bmo#1878510).
  * Fixed an issue where the Private Window icon was displayed in the taskbar
    on Windows when browser.privateWindowSeparation.enabled was
    set to false (bmo#1901840).
- Mozilla Firefox 127.0.1
  * Fixed an issue where users with a primary password set on their profile
    could lose their previous session of tabs upon upgrading if they dismissed
    the primary password prompt (bmo#1901899).
  * Fixed an issue where Linux users with accessibility.monoaudio.enable set
    to true were experiencing slow audio speeds (bmo#1900972).
  * Fixed an issue where, in some circumstances, the Firefox installer
    on Windows failed to complete the installation (bmo#1896868).
  * Fixed an issue causing Firefox to incorrectly reject cookies
    for certain websites (bmo#1901325).</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1720440000">- Mozilla Firefox 128.0
  https://www.mozilla.org/en-US/firefox/128.0/releasenotes
  MFSA 2024-29 (bsc#1226316)
  * CVE-2024-6605 (bmo#1836786)
    Firefox Android missed activation delay to prevent tapjacking
  * CVE-2024-6606 (bmo#1902305)
    Out-of-bounds read in clipboard component
  * CVE-2024-6607 (bmo#1694513)
    Leaving pointerlock by pressing the escape key could be
    prevented
  * CVE-2024-6608 (bmo#1743329)
    Cursor could be moved out of the viewport using pointerlock.
  * CVE-2024-6609 (bmo#1839258)
    Memory corruption in NSS
  * CVE-2024-6610 (bmo#1883396)
    Form validation popups could block exiting full-screen mode
  * CVE-2024-6600 (bmo#1888340)
    Memory corruption in WebGL API
  * CVE-2024-6601 (bmo#1890748)
    Race condition in permission assignment
  * CVE-2024-6602 (bmo#1895032)
    Memory corruption in NSS
  * CVE-2024-6603 (bmo#1895081)
    Memory corruption in thread creation
  * CVE-2024-6611 (bmo#1844827)
    Incorrect handling of SameSite cookies
  * CVE-2024-6612 (bmo#1880374)
    CSP violation leakage when using devtools
  * CVE-2024-6613 (bmo#1900523)
    Incorrect listing of stack frames
  * CVE-2024-6614 (bmo#1902983)
    Incorrect listing of stack frames
  * CVE-2024-6604 (bmo#1748105, bmo#1837550, bmo#1884266)
    Memory safety bugs fixed in Firefox 128, Firefox ESR 115.13,
    and Thunderbird 115.13
  * CVE-2024-6615 (bmo#1892875, bmo#1894428, bmo#1898364)
    Memory safety bugs fixed in Firefox 128
- requires
  NSS 3.101.1
  rust &gt;= 1.78
- update create-tar.sh
- add wayland upstream fixes (bmo#1907511, bmo#1898476)
  (mozilla-bmo1898476.patch and mozilla-bmo1907511.patch)</changelog>
  <changelog author="Martin Jambor &lt;mjambor@suse.com&gt;" date="1721304000">- Add firefox-3781e3117706.patch to fix boo#1227856 aka bmo#1905018
  where an incompatible pointer assignment is not accepted in C by
  GCC 14.</changelog>
  <changelog author="Manfred Hollstein &lt;manfred.h@gmx.net&gt;" date="1722168000">- Firefox 128.0.3 Release
  * Fixed: Fixed an issue causing some sites to not load when
    connecting via HTTP/2. (bmo#1908161, bmo#1909666)
  * Fixed: Fixed collapsed table rows not appearing when expected
    in some situations. (bmo#1907789)
  * Fixed: Fixed the Windows on-screen keyboard potentially
    concealing the webpage when displayed. (bmo#1907766)
- Firefox 128.0.2 Release
  * Fixed: Fixed an audio echo in video calls on macOS under
    certain conditions. (bmo#1908539)
  * Fixed: Fixed an issue where the Adguard extension popup was
    not displaying. (bmo#1906132)
  * Fixed: Fixed an issue causing some screen readers to fail to
    read when navigating by character in rich text editors. (Bug
    1905021)
  * Fixed: Fixed visual glitches when dark mode is enabled in
    Windows ARM devices. (bmo#1897444)
  * Fixed: Fixed an issue causing NTLM authentication failure.
    (bmo#1908115)
  * Fixed: Fixed an issue where content displayed on mouseover
    was not captured in a screenshot. (bmo#1905468)
  * Fixed: Various stability fixes.
- renamed firefox-3781e3117706.patch to mozilla-bmo1905018.patch
  to conform with patch structure and naming for the package</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1723118400">- Mozilla Firefox 129.0
  https://www.mozilla.org/en-US/firefox/129.0/releasenotes
  MFSA 2024-33 (bsc#1228648))
  * CVE-2024-7518 (bmo#1875354)
    Fullscreen notification dialog can be obscured by document content
  * CVE-2024-7519 (bmo#1902307)
    Out of bounds memory access in graphics shared memory handling
  * CVE-2024-7520 (bmo#1903041)
    Type confusion in WebAssembly
  * CVE-2024-7521 (bmo#1904644)
    Incomplete WebAssembly exception handing
  * CVE-2024-7522 (bmo#1906727)
    Out of bounds read in editor component
  * CVE-2024-7523 (bmo#1908344)
    Document content could partially obscure security prompts
  * CVE-2024-7524 (bmo#1909241)
    CSP strict-dynamic bypass using web-compatibility shims
  * CVE-2024-7525 (bmo#1909298)
    Missing permission check when creating a StreamFilter
  * CVE-2024-7526 (bmo#1910306)
    Uninitialized memory used by WebGL
  * CVE-2024-7527 (bmo#1871303)
    Use-after-free in JavaScript garbage collection
  * CVE-2024-7528 (bmo#1895951)
    Use-after-free in IndexedDB
  * CVE-2024-7529 (bmo#1903187)
    Document content could partially obscure security prompts
  * CVE-2024-7530 (bmo#1904011)
    Use-after-free in JavaScript code coverage collection
  * CVE-2024-7531 (bmo#1905691)
    PK11_Encrypt using CKM_CHACHA20 can reveal plaintext on Intel
    Sandy Bridge machines
- removed obsolete patches
  mozilla-bmo1905018.patch
  mozilla-bmo1504834-part3.patch
  mozilla-bmo1512162.patch
  mozilla-bmo1822730.patch
  mozilla-fix-aarch64-libopus.patch
  mozilla-partial-revert-1768632.patch
- requires NSS 3.102.1
- extended mozilla-silence-no-return-type.patch</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1723809600">- Mozilla Firefox 129.0.1
  * Fixed playback issues on some websites with copyrighted video
    served via digital rights management. (bmo#1911283)
  * Fixed a crash when dragging a video file onto some websites
    (bmo#1910990)</changelog>
  <changelog author="Christian Boltz &lt;suse-beta@cboltz.de&gt;" date="1724500800">- _constraints: increase RAM on s390x to fix the build</changelog>
  <changelog author="pallas wept &lt;pallaswept@proton.me&gt;" date="1725451200">- Added mozilla-bmo1746799.patch to fix incorrect audio volume scaling</changelog>
  <changelog author="Marvin Friedrich &lt;contact@marvinf.com&gt;" date="1725624000">- Update dependency on clang-devel from LLVM15 to LLVM18</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1725710400">- Mozilla Firefox 130.0
  https://www.mozilla.org/en-US/firefox/130.0/releasenotes
  MFSA 2024-39 (bsc#1229821)
  * CVE-2024-8385 (bmo#1911909)
    WASM type confusion involving ArrayTypes
  * CVE-2024-8381 (bmo#1912715)
    Type confusion when looking up a property name in a "with" block
  * CVE-2024-8388 (bmo#1902996, bmo#1839074, bmo#1865413, bmo#1868970,
    bmo#1873367, bmo#1877820, bmo#1884642, bmo#1886469, bmo#1894326,
    bmo#1894891, bmo#1897648)
    Fullscreen notice on Android could be hidden under various
    panels and OS prompts
  * CVE-2024-8382 (bmo#1906744)
    Internal event interfaces were exposed to web content when
    browser EventHandler listener callbacks ran
  * CVE-2024-8383 (bmo#1908496)
    Firefox did not ask before openings news: links in an
    external application
  * CVE-2024-8384 (bmo#1911288)
    Garbage collection could mis-color cross-compartment objects
    in OOM conditions
  * CVE-2024-8386 (bmo#1907032, bmo#1909163, bmo#1909529)
    SelectElements could be shown over another site if popups are
    allowed
  * CVE-2024-8387 (bmo#1857607, bmo#1911858, bmo#1914009)
    Memory safety bugs fixed in Firefox 130, Firefox ESR 128.2,
    and Thunderbird 128.2
  * CVE-2024-8389 (bmo#1907230, bmo#1909367)
    Memory safety bugs fixed in Firefox 130
- requires NSS 3.103
- removed obsolete patches
  mozilla-bmo1898476.patch
  mozilla-bmo1907511.patch
- added mozilla-bmo1916038.patch to fix AVIF decoding (bsc#1230500)</changelog>
  <changelog author="Manfred Hollstein &lt;manfred.h@gmx.net&gt;" date="1726660800">- Firefox 130.0.1 Release
  https://www.mozilla.org/en-US/firefox/130.0.1/releasenotes
  * Enterprise: Added an enterprise policy to disable the
  * Firefox Labs* section in *Settings*. (bmo#1911826)
  * Fixed a recent regression causing some UI elements to
    be rendered as left-to-right instead of right-to-left for
    users of our Saraiki localization. (bmo#1917175)
  * Linux: Fixed black rendering of AVIF images when
    Firefox is built with GCC. (bmo#1916038)
- removed obsolete patches
  mozilla-bmo1916038.patch</changelog>
  <changelog author="Manfred Hollstein &lt;manfred.h@gmx.net&gt;" date="1726920000">- Don't use clang18-devel on Leap as they don't have that version.</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1727611200">- Firefox 131.0
  https://www.mozilla.org/en-US/firefox/131.0/releasenotes/
  MFSA 2024-46 (bsc#1230979)
  * CVE-2024-9391 (bmo#1892407)
    Prevent users from exiting full-screen mode in Firefox Focus
    for Android
  * CVE-2024-9392 (bmo#1899154, bmo#1905843)
    Compromised content process can bypass site isolation
  * CVE-2024-9393 (bmo#1918301)
    Cross-origin access to PDF contents through multipart responses
  * CVE-2024-9394 (bmo#1918874)
    Cross-origin access to JSON contents through multipart responses
  * CVE-2024-9395 (bmo#1906024)
    Specially crafted filename could be used to obscure download type
  * CVE-2024-9396 (bmo#1912471)
    Potential memory corruption may occur when cloning certain objects
  * CVE-2024-9397 (bmo#1916659)
    Potential directory upload bypass via clickjacking
  * CVE-2024-9398 (bmo#1881037)
    External protocol handlers could be enumerated via popups
  * CVE-2024-9399 (bmo#1907726)
    Specially crafted WebTransport requests could lead to denial
    of service
  * CVE-2024-9400 (bmo#1915249)
    Potential memory corruption during JIT compilation
  * CVE-2024-9401 (bmo#1872744, bmo#1897792, bmo#1911317, bmo#1916476)
    Memory safety bugs fixed in Firefox 131, Firefox ESR 115.16,
    Firefox ESR 128.3, Thunderbird 131, and Thunderbird 128.3
  * CVE-2024-9402 (bmo#1872744, bmo#1897792, bmo#1911317, bmo#1913445,
    bmo#1914106, bmo#1914475, bmo#1914963, bmo#1915008, bmo#1916476)
    Memory safety bugs fixed in Firefox 131, Firefox ESR 128.3,
    Thunderbird 131, and Thunderbird 128.3
  * CVE-2024-9403 (bmo#1917807)
    Memory safety bugs fixed in Firefox 131 and Thunderbird 131
- requires NSS 3.104
- rebased patches</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1728475200">- Mozilla Firefox 131.0.2
  MFSA 2024-51 (bsc#1231413)
  * CVE-2024-9680 (bmo#1923344)
    Use-after-free in Animation timeline</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1729166400">- Mozilla Firefox 131.0.3
  * some users could not access the Bill Pay portion of their
    bank's site (bmo#1923500)
  * some VR180 and 360 videos were not properly rendering on YouTube
    (bmo#1922278)
  * Fixed a crash that Windows users with Avast or AVG security
    software were experiencing when visiting certain sites. (bmo#1919678)
  * "List all tabs" button was not able to be moved from the toolbar
    (bmo#1918681)
  NFSA 2024-53
  * CVE-2024-9936 (bmo#1920381)
    Undefined behavior in selection node cache
- remove obsolete mozilla-rust-disable-future-incompat.patch</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1730116800">- Mozilla Firefox 132.0
  https://www.mozilla.org/en-US/firefox/132.0/releasenotes
  MFSA 2024-55 (bsc#1231879)
  * CVE-2024-10458 (bmo#1921733)
    Permission leak via embed or object elements
  * CVE-2024-10459 (bmo#1919087)
    Use-after-free in layout with accessibility
  * CVE-2024-10460 (bmo#1912537)
    Confusing display of origin for external protocol handler prompt
  * CVE-2024-10461 (bmo#1914521)
    XSS due to Content-Disposition being ignored in
    multipart/x-mixed-replace response
  * CVE-2024-10462 (bmo#1920423)
    Origin of permission prompt could be spoofed by long URL
  * CVE-2024-10463 (bmo#1920800)
    Cross origin video frame leak
  * CVE-2024-10468 (bmo#1914982)
    Race conditions in IndexedDB
  * CVE-2024-10464 (bmo#1913000)
    History interface could have been used to cause a Denial of
    Service condition in the browser
  * CVE-2024-10465 (bmo#1918853)
    Clipboard "paste" button persisted across tabs
  * CVE-2024-10466 (bmo#1924154)
    DOM push subscription message could hang Firefox
  * CVE-2024-10467 (bmo#1829029, bmo#1888538, bmo#1900394, bmo#1904059,
    bmo#1917742, bmo#1919809, bmo#1923706)
    Memory safety bugs fixed in Firefox 132, Thunderbird 132,
    Firefox ESR 128.4, and Thunderbird 128.4
- requires NSS 3.105
- rebased patches</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1730808000">- Mozilla Firefox 132.0.1
  * Fixed issues causing intermittent video playback problems on
    some sites. (bmo#1928484, bmo#1928798)
- remove KDE integration patches
  - mozilla-kde.patch
  - firefox-kde.patch
  on KDE use these settings instead
  widget.use-xdg-desktop-portal.file-picker=1
  widget.use-xdg-desktop-portal.mime-handler=1
  (those are set by the latest branding package as well)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1731240000">- require xdg-desktop-portal (boo#1233166)</changelog>
</package>
<package pkgid="c4f196be7082c97c2820dc07632b4cbac0f2490bd0cd906d02481ea490dc6423a5299e68b0664045b490d17a40ccda9f98a67a6a0dee0c8be5ce9702bbe1d99d" name="MozillaFirefox-branding-upstream" arch="x86_64">
  <version epoch="0" ver="132.0.2" rel="1.1"/>
  <changelog author="Martin Sirringhaus &lt;martin.sirringhaus@suse.com&gt;" date="1719576000">- Fix GNOME search provider (boo#1225278)</changelog>
  <changelog author="Andrei Dziahel &lt;develop7@develop7.info&gt;" date="1719835200">- Mozilla Firefox 127.0.2
  * Fixed an issue where YouTube playback may experience stalling under
    certain conditions (bmo#1900191, bmo#1878510).
  * Fixed an issue where the Private Window icon was displayed in the taskbar
    on Windows when browser.privateWindowSeparation.enabled was
    set to false (bmo#1901840).
- Mozilla Firefox 127.0.1
  * Fixed an issue where users with a primary password set on their profile
    could lose their previous session of tabs upon upgrading if they dismissed
    the primary password prompt (bmo#1901899).
  * Fixed an issue where Linux users with accessibility.monoaudio.enable set
    to true were experiencing slow audio speeds (bmo#1900972).
  * Fixed an issue where, in some circumstances, the Firefox installer
    on Windows failed to complete the installation (bmo#1896868).
  * Fixed an issue causing Firefox to incorrectly reject cookies
    for certain websites (bmo#1901325).</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1720440000">- Mozilla Firefox 128.0
  https://www.mozilla.org/en-US/firefox/128.0/releasenotes
  MFSA 2024-29 (bsc#1226316)
  * CVE-2024-6605 (bmo#1836786)
    Firefox Android missed activation delay to prevent tapjacking
  * CVE-2024-6606 (bmo#1902305)
    Out-of-bounds read in clipboard component
  * CVE-2024-6607 (bmo#1694513)
    Leaving pointerlock by pressing the escape key could be
    prevented
  * CVE-2024-6608 (bmo#1743329)
    Cursor could be moved out of the viewport using pointerlock.
  * CVE-2024-6609 (bmo#1839258)
    Memory corruption in NSS
  * CVE-2024-6610 (bmo#1883396)
    Form validation popups could block exiting full-screen mode
  * CVE-2024-6600 (bmo#1888340)
    Memory corruption in WebGL API
  * CVE-2024-6601 (bmo#1890748)
    Race condition in permission assignment
  * CVE-2024-6602 (bmo#1895032)
    Memory corruption in NSS
  * CVE-2024-6603 (bmo#1895081)
    Memory corruption in thread creation
  * CVE-2024-6611 (bmo#1844827)
    Incorrect handling of SameSite cookies
  * CVE-2024-6612 (bmo#1880374)
    CSP violation leakage when using devtools
  * CVE-2024-6613 (bmo#1900523)
    Incorrect listing of stack frames
  * CVE-2024-6614 (bmo#1902983)
    Incorrect listing of stack frames
  * CVE-2024-6604 (bmo#1748105, bmo#1837550, bmo#1884266)
    Memory safety bugs fixed in Firefox 128, Firefox ESR 115.13,
    and Thunderbird 115.13
  * CVE-2024-6615 (bmo#1892875, bmo#1894428, bmo#1898364)
    Memory safety bugs fixed in Firefox 128
- requires
  NSS 3.101.1
  rust &gt;= 1.78
- update create-tar.sh
- add wayland upstream fixes (bmo#1907511, bmo#1898476)
  (mozilla-bmo1898476.patch and mozilla-bmo1907511.patch)</changelog>
  <changelog author="Martin Jambor &lt;mjambor@suse.com&gt;" date="1721304000">- Add firefox-3781e3117706.patch to fix boo#1227856 aka bmo#1905018
  where an incompatible pointer assignment is not accepted in C by
  GCC 14.</changelog>
  <changelog author="Manfred Hollstein &lt;manfred.h@gmx.net&gt;" date="1722168000">- Firefox 128.0.3 Release
  * Fixed: Fixed an issue causing some sites to not load when
    connecting via HTTP/2. (bmo#1908161, bmo#1909666)
  * Fixed: Fixed collapsed table rows not appearing when expected
    in some situations. (bmo#1907789)
  * Fixed: Fixed the Windows on-screen keyboard potentially
    concealing the webpage when displayed. (bmo#1907766)
- Firefox 128.0.2 Release
  * Fixed: Fixed an audio echo in video calls on macOS under
    certain conditions. (bmo#1908539)
  * Fixed: Fixed an issue where the Adguard extension popup was
    not displaying. (bmo#1906132)
  * Fixed: Fixed an issue causing some screen readers to fail to
    read when navigating by character in rich text editors. (Bug
    1905021)
  * Fixed: Fixed visual glitches when dark mode is enabled in
    Windows ARM devices. (bmo#1897444)
  * Fixed: Fixed an issue causing NTLM authentication failure.
    (bmo#1908115)
  * Fixed: Fixed an issue where content displayed on mouseover
    was not captured in a screenshot. (bmo#1905468)
  * Fixed: Various stability fixes.
- renamed firefox-3781e3117706.patch to mozilla-bmo1905018.patch
  to conform with patch structure and naming for the package</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1723118400">- Mozilla Firefox 129.0
  https://www.mozilla.org/en-US/firefox/129.0/releasenotes
  MFSA 2024-33 (bsc#1228648))
  * CVE-2024-7518 (bmo#1875354)
    Fullscreen notification dialog can be obscured by document content
  * CVE-2024-7519 (bmo#1902307)
    Out of bounds memory access in graphics shared memory handling
  * CVE-2024-7520 (bmo#1903041)
    Type confusion in WebAssembly
  * CVE-2024-7521 (bmo#1904644)
    Incomplete WebAssembly exception handing
  * CVE-2024-7522 (bmo#1906727)
    Out of bounds read in editor component
  * CVE-2024-7523 (bmo#1908344)
    Document content could partially obscure security prompts
  * CVE-2024-7524 (bmo#1909241)
    CSP strict-dynamic bypass using web-compatibility shims
  * CVE-2024-7525 (bmo#1909298)
    Missing permission check when creating a StreamFilter
  * CVE-2024-7526 (bmo#1910306)
    Uninitialized memory used by WebGL
  * CVE-2024-7527 (bmo#1871303)
    Use-after-free in JavaScript garbage collection
  * CVE-2024-7528 (bmo#1895951)
    Use-after-free in IndexedDB
  * CVE-2024-7529 (bmo#1903187)
    Document content could partially obscure security prompts
  * CVE-2024-7530 (bmo#1904011)
    Use-after-free in JavaScript code coverage collection
  * CVE-2024-7531 (bmo#1905691)
    PK11_Encrypt using CKM_CHACHA20 can reveal plaintext on Intel
    Sandy Bridge machines
- removed obsolete patches
  mozilla-bmo1905018.patch
  mozilla-bmo1504834-part3.patch
  mozilla-bmo1512162.patch
  mozilla-bmo1822730.patch
  mozilla-fix-aarch64-libopus.patch
  mozilla-partial-revert-1768632.patch
- requires NSS 3.102.1
- extended mozilla-silence-no-return-type.patch</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1723809600">- Mozilla Firefox 129.0.1
  * Fixed playback issues on some websites with copyrighted video
    served via digital rights management. (bmo#1911283)
  * Fixed a crash when dragging a video file onto some websites
    (bmo#1910990)</changelog>
  <changelog author="Christian Boltz &lt;suse-beta@cboltz.de&gt;" date="1724500800">- _constraints: increase RAM on s390x to fix the build</changelog>
  <changelog author="pallas wept &lt;pallaswept@proton.me&gt;" date="1725451200">- Added mozilla-bmo1746799.patch to fix incorrect audio volume scaling</changelog>
  <changelog author="Marvin Friedrich &lt;contact@marvinf.com&gt;" date="1725624000">- Update dependency on clang-devel from LLVM15 to LLVM18</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1725710400">- Mozilla Firefox 130.0
  https://www.mozilla.org/en-US/firefox/130.0/releasenotes
  MFSA 2024-39 (bsc#1229821)
  * CVE-2024-8385 (bmo#1911909)
    WASM type confusion involving ArrayTypes
  * CVE-2024-8381 (bmo#1912715)
    Type confusion when looking up a property name in a "with" block
  * CVE-2024-8388 (bmo#1902996, bmo#1839074, bmo#1865413, bmo#1868970,
    bmo#1873367, bmo#1877820, bmo#1884642, bmo#1886469, bmo#1894326,
    bmo#1894891, bmo#1897648)
    Fullscreen notice on Android could be hidden under various
    panels and OS prompts
  * CVE-2024-8382 (bmo#1906744)
    Internal event interfaces were exposed to web content when
    browser EventHandler listener callbacks ran
  * CVE-2024-8383 (bmo#1908496)
    Firefox did not ask before openings news: links in an
    external application
  * CVE-2024-8384 (bmo#1911288)
    Garbage collection could mis-color cross-compartment objects
    in OOM conditions
  * CVE-2024-8386 (bmo#1907032, bmo#1909163, bmo#1909529)
    SelectElements could be shown over another site if popups are
    allowed
  * CVE-2024-8387 (bmo#1857607, bmo#1911858, bmo#1914009)
    Memory safety bugs fixed in Firefox 130, Firefox ESR 128.2,
    and Thunderbird 128.2
  * CVE-2024-8389 (bmo#1907230, bmo#1909367)
    Memory safety bugs fixed in Firefox 130
- requires NSS 3.103
- removed obsolete patches
  mozilla-bmo1898476.patch
  mozilla-bmo1907511.patch
- added mozilla-bmo1916038.patch to fix AVIF decoding (bsc#1230500)</changelog>
  <changelog author="Manfred Hollstein &lt;manfred.h@gmx.net&gt;" date="1726660800">- Firefox 130.0.1 Release
  https://www.mozilla.org/en-US/firefox/130.0.1/releasenotes
  * Enterprise: Added an enterprise policy to disable the
  * Firefox Labs* section in *Settings*. (bmo#1911826)
  * Fixed a recent regression causing some UI elements to
    be rendered as left-to-right instead of right-to-left for
    users of our Saraiki localization. (bmo#1917175)
  * Linux: Fixed black rendering of AVIF images when
    Firefox is built with GCC. (bmo#1916038)
- removed obsolete patches
  mozilla-bmo1916038.patch</changelog>
  <changelog author="Manfred Hollstein &lt;manfred.h@gmx.net&gt;" date="1726920000">- Don't use clang18-devel on Leap as they don't have that version.</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1727611200">- Firefox 131.0
  https://www.mozilla.org/en-US/firefox/131.0/releasenotes/
  MFSA 2024-46 (bsc#1230979)
  * CVE-2024-9391 (bmo#1892407)
    Prevent users from exiting full-screen mode in Firefox Focus
    for Android
  * CVE-2024-9392 (bmo#1899154, bmo#1905843)
    Compromised content process can bypass site isolation
  * CVE-2024-9393 (bmo#1918301)
    Cross-origin access to PDF contents through multipart responses
  * CVE-2024-9394 (bmo#1918874)
    Cross-origin access to JSON contents through multipart responses
  * CVE-2024-9395 (bmo#1906024)
    Specially crafted filename could be used to obscure download type
  * CVE-2024-9396 (bmo#1912471)
    Potential memory corruption may occur when cloning certain objects
  * CVE-2024-9397 (bmo#1916659)
    Potential directory upload bypass via clickjacking
  * CVE-2024-9398 (bmo#1881037)
    External protocol handlers could be enumerated via popups
  * CVE-2024-9399 (bmo#1907726)
    Specially crafted WebTransport requests could lead to denial
    of service
  * CVE-2024-9400 (bmo#1915249)
    Potential memory corruption during JIT compilation
  * CVE-2024-9401 (bmo#1872744, bmo#1897792, bmo#1911317, bmo#1916476)
    Memory safety bugs fixed in Firefox 131, Firefox ESR 115.16,
    Firefox ESR 128.3, Thunderbird 131, and Thunderbird 128.3
  * CVE-2024-9402 (bmo#1872744, bmo#1897792, bmo#1911317, bmo#1913445,
    bmo#1914106, bmo#1914475, bmo#1914963, bmo#1915008, bmo#1916476)
    Memory safety bugs fixed in Firefox 131, Firefox ESR 128.3,
    Thunderbird 131, and Thunderbird 128.3
  * CVE-2024-9403 (bmo#1917807)
    Memory safety bugs fixed in Firefox 131 and Thunderbird 131
- requires NSS 3.104
- rebased patches</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1728475200">- Mozilla Firefox 131.0.2
  MFSA 2024-51 (bsc#1231413)
  * CVE-2024-9680 (bmo#1923344)
    Use-after-free in Animation timeline</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1729166400">- Mozilla Firefox 131.0.3
  * some users could not access the Bill Pay portion of their
    bank's site (bmo#1923500)
  * some VR180 and 360 videos were not properly rendering on YouTube
    (bmo#1922278)
  * Fixed a crash that Windows users with Avast or AVG security
    software were experiencing when visiting certain sites. (bmo#1919678)
  * "List all tabs" button was not able to be moved from the toolbar
    (bmo#1918681)
  NFSA 2024-53
  * CVE-2024-9936 (bmo#1920381)
    Undefined behavior in selection node cache
- remove obsolete mozilla-rust-disable-future-incompat.patch</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1730116800">- Mozilla Firefox 132.0
  https://www.mozilla.org/en-US/firefox/132.0/releasenotes
  MFSA 2024-55 (bsc#1231879)
  * CVE-2024-10458 (bmo#1921733)
    Permission leak via embed or object elements
  * CVE-2024-10459 (bmo#1919087)
    Use-after-free in layout with accessibility
  * CVE-2024-10460 (bmo#1912537)
    Confusing display of origin for external protocol handler prompt
  * CVE-2024-10461 (bmo#1914521)
    XSS due to Content-Disposition being ignored in
    multipart/x-mixed-replace response
  * CVE-2024-10462 (bmo#1920423)
    Origin of permission prompt could be spoofed by long URL
  * CVE-2024-10463 (bmo#1920800)
    Cross origin video frame leak
  * CVE-2024-10468 (bmo#1914982)
    Race conditions in IndexedDB
  * CVE-2024-10464 (bmo#1913000)
    History interface could have been used to cause a Denial of
    Service condition in the browser
  * CVE-2024-10465 (bmo#1918853)
    Clipboard "paste" button persisted across tabs
  * CVE-2024-10466 (bmo#1924154)
    DOM push subscription message could hang Firefox
  * CVE-2024-10467 (bmo#1829029, bmo#1888538, bmo#1900394, bmo#1904059,
    bmo#1917742, bmo#1919809, bmo#1923706)
    Memory safety bugs fixed in Firefox 132, Thunderbird 132,
    Firefox ESR 128.4, and Thunderbird 128.4
- requires NSS 3.105
- rebased patches</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1730808000">- Mozilla Firefox 132.0.1
  * Fixed issues causing intermittent video playback problems on
    some sites. (bmo#1928484, bmo#1928798)
- remove KDE integration patches
  - mozilla-kde.patch
  - firefox-kde.patch
  on KDE use these settings instead
  widget.use-xdg-desktop-portal.file-picker=1
  widget.use-xdg-desktop-portal.mime-handler=1
  (those are set by the latest branding package as well)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1731240000">- require xdg-desktop-portal (boo#1233166)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1731672000">- Mozilla Firefox 132.0.2
  * Fixed possible errors when playing encrypted media content
    through some streaming providers. (bmo#1929491)
  * Added a mitigation to help reduce the frequency of duplicated
    push notifications reported by some users. (bmo#1928868)
  * Fixed hangs when printing from some sites when using the system
    print dialog. (bmo#1898184)
  * Fixed a crash which could occur when using Microsoft SSO on macOS
    (bmo#1929622)
  * Fixed a crash in the Network Monitor developer tool which could
    occur in some circumstances. (bmo#1924882)</changelog>
</package>
<package pkgid="7ab788a3a03b3ea7d5bc154dacc6866e6cd959b1fdaee7c9a7676fb07a45d9abc204ca9624903d1d1b2696ec7d6301478a3812497cbed27b10e3eaeee78e2c49" name="MozillaFirefox-debuginfo" arch="x86_64">
  <version epoch="0" ver="132.0.1" rel="1.1"/>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1718107200">- Mozilla Firefox 127.0
  https://www.mozilla.org/en-US/firefox/127.0/releasenotes
  MFSA 2024-25 (bsc#1226027)
  * CVE-2024-5687 (bmo#1889066)
    An incorrect principal could have been used when opening new tabs
  * CVE-2024-5688 (bmo#1895086)
    Use-after-free in JavaScript object transplant
  * CVE-2024-5689 (bmo#1389707)
    User confusion and possible phishing vector via Firefox Screenshots
  * CVE-2024-5690 (bmo#1883693)
    External protocol handlers leaked by timing attack
  * CVE-2024-5691 (bmo#1888695)
    Sandboxed iframes were able to bypass sandbox restrictions to
    open a new window
  * CVE-2024-5692 (bmo#1837514, bmo#1891234)
    Bypass of file name restrictions during saving
  * CVE-2024-5693 (bmo#1891319)
    Cross-Origin Image leak via Offscreen Canvas
  * CVE-2024-5694 (bmo#1895055)
    Use-after-free in JavaScript Strings
  * CVE-2024-5695 (bmo#1895579)
    Memory Corruption using allocation using out-of-memory conditions
  * CVE-2024-5696 (bmo#1896555)
    Memory Corruption in Text Fragments
  * CVE-2024-5697 (bmo#1414937)
    Website was able to detect when Firefox was taking a
    screenshot of them
  * CVE-2024-5698 (bmo#1828259)
    Data-list could have overlaid address bar
  * CVE-2024-5699 (bmo#1891349)
    Cookie prefixes not treated as case-sensitive
  * CVE-2024-5700 (bmo#1862809, bmo#1889355, bmo#1893388, bmo#1895123)
    Memory safety bugs fixed in Firefox 127, Firefox ESR 115.12,
    and Thunderbird 115.12
  * CVE-2024-5701 (bmo#1890909, bmo#1891422, bmo#1893915,
    bmo#1894047, bmo#1896024)
    Memory safety bugs fixed in Firefox 127
- removed obsolete mozilla-bmo1886378.patch</changelog>
  <changelog author="Martin Sirringhaus &lt;martin.sirringhaus@suse.com&gt;" date="1719576000">- Fix GNOME search provider (boo#1225278)</changelog>
  <changelog author="Andrei Dziahel &lt;develop7@develop7.info&gt;" date="1719835200">- Mozilla Firefox 127.0.2
  * Fixed an issue where YouTube playback may experience stalling under
    certain conditions (bmo#1900191, bmo#1878510).
  * Fixed an issue where the Private Window icon was displayed in the taskbar
    on Windows when browser.privateWindowSeparation.enabled was
    set to false (bmo#1901840).
- Mozilla Firefox 127.0.1
  * Fixed an issue where users with a primary password set on their profile
    could lose their previous session of tabs upon upgrading if they dismissed
    the primary password prompt (bmo#1901899).
  * Fixed an issue where Linux users with accessibility.monoaudio.enable set
    to true were experiencing slow audio speeds (bmo#1900972).
  * Fixed an issue where, in some circumstances, the Firefox installer
    on Windows failed to complete the installation (bmo#1896868).
  * Fixed an issue causing Firefox to incorrectly reject cookies
    for certain websites (bmo#1901325).</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1720440000">- Mozilla Firefox 128.0
  https://www.mozilla.org/en-US/firefox/128.0/releasenotes
  MFSA 2024-29 (bsc#1226316)
  * CVE-2024-6605 (bmo#1836786)
    Firefox Android missed activation delay to prevent tapjacking
  * CVE-2024-6606 (bmo#1902305)
    Out-of-bounds read in clipboard component
  * CVE-2024-6607 (bmo#1694513)
    Leaving pointerlock by pressing the escape key could be
    prevented
  * CVE-2024-6608 (bmo#1743329)
    Cursor could be moved out of the viewport using pointerlock.
  * CVE-2024-6609 (bmo#1839258)
    Memory corruption in NSS
  * CVE-2024-6610 (bmo#1883396)
    Form validation popups could block exiting full-screen mode
  * CVE-2024-6600 (bmo#1888340)
    Memory corruption in WebGL API
  * CVE-2024-6601 (bmo#1890748)
    Race condition in permission assignment
  * CVE-2024-6602 (bmo#1895032)
    Memory corruption in NSS
  * CVE-2024-6603 (bmo#1895081)
    Memory corruption in thread creation
  * CVE-2024-6611 (bmo#1844827)
    Incorrect handling of SameSite cookies
  * CVE-2024-6612 (bmo#1880374)
    CSP violation leakage when using devtools
  * CVE-2024-6613 (bmo#1900523)
    Incorrect listing of stack frames
  * CVE-2024-6614 (bmo#1902983)
    Incorrect listing of stack frames
  * CVE-2024-6604 (bmo#1748105, bmo#1837550, bmo#1884266)
    Memory safety bugs fixed in Firefox 128, Firefox ESR 115.13,
    and Thunderbird 115.13
  * CVE-2024-6615 (bmo#1892875, bmo#1894428, bmo#1898364)
    Memory safety bugs fixed in Firefox 128
- requires
  NSS 3.101.1
  rust &gt;= 1.78
- update create-tar.sh
- add wayland upstream fixes (bmo#1907511, bmo#1898476)
  (mozilla-bmo1898476.patch and mozilla-bmo1907511.patch)</changelog>
  <changelog author="Martin Jambor &lt;mjambor@suse.com&gt;" date="1721304000">- Add firefox-3781e3117706.patch to fix boo#1227856 aka bmo#1905018
  where an incompatible pointer assignment is not accepted in C by
  GCC 14.</changelog>
  <changelog author="Manfred Hollstein &lt;manfred.h@gmx.net&gt;" date="1722168000">- Firefox 128.0.3 Release
  * Fixed: Fixed an issue causing some sites to not load when
    connecting via HTTP/2. (bmo#1908161, bmo#1909666)
  * Fixed: Fixed collapsed table rows not appearing when expected
    in some situations. (bmo#1907789)
  * Fixed: Fixed the Windows on-screen keyboard potentially
    concealing the webpage when displayed. (bmo#1907766)
- Firefox 128.0.2 Release
  * Fixed: Fixed an audio echo in video calls on macOS under
    certain conditions. (bmo#1908539)
  * Fixed: Fixed an issue where the Adguard extension popup was
    not displaying. (bmo#1906132)
  * Fixed: Fixed an issue causing some screen readers to fail to
    read when navigating by character in rich text editors. (Bug
    1905021)
  * Fixed: Fixed visual glitches when dark mode is enabled in
    Windows ARM devices. (bmo#1897444)
  * Fixed: Fixed an issue causing NTLM authentication failure.
    (bmo#1908115)
  * Fixed: Fixed an issue where content displayed on mouseover
    was not captured in a screenshot. (bmo#1905468)
  * Fixed: Various stability fixes.
- renamed firefox-3781e3117706.patch to mozilla-bmo1905018.patch
  to conform with patch structure and naming for the package</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1723118400">- Mozilla Firefox 129.0
  https://www.mozilla.org/en-US/firefox/129.0/releasenotes
  MFSA 2024-33 (bsc#1228648))
  * CVE-2024-7518 (bmo#1875354)
    Fullscreen notification dialog can be obscured by document content
  * CVE-2024-7519 (bmo#1902307)
    Out of bounds memory access in graphics shared memory handling
  * CVE-2024-7520 (bmo#1903041)
    Type confusion in WebAssembly
  * CVE-2024-7521 (bmo#1904644)
    Incomplete WebAssembly exception handing
  * CVE-2024-7522 (bmo#1906727)
    Out of bounds read in editor component
  * CVE-2024-7523 (bmo#1908344)
    Document content could partially obscure security prompts
  * CVE-2024-7524 (bmo#1909241)
    CSP strict-dynamic bypass using web-compatibility shims
  * CVE-2024-7525 (bmo#1909298)
    Missing permission check when creating a StreamFilter
  * CVE-2024-7526 (bmo#1910306)
    Uninitialized memory used by WebGL
  * CVE-2024-7527 (bmo#1871303)
    Use-after-free in JavaScript garbage collection
  * CVE-2024-7528 (bmo#1895951)
    Use-after-free in IndexedDB
  * CVE-2024-7529 (bmo#1903187)
    Document content could partially obscure security prompts
  * CVE-2024-7530 (bmo#1904011)
    Use-after-free in JavaScript code coverage collection
  * CVE-2024-7531 (bmo#1905691)
    PK11_Encrypt using CKM_CHACHA20 can reveal plaintext on Intel
    Sandy Bridge machines
- removed obsolete patches
  mozilla-bmo1905018.patch
  mozilla-bmo1504834-part3.patch
  mozilla-bmo1512162.patch
  mozilla-bmo1822730.patch
  mozilla-fix-aarch64-libopus.patch
  mozilla-partial-revert-1768632.patch
- requires NSS 3.102.1
- extended mozilla-silence-no-return-type.patch</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1723809600">- Mozilla Firefox 129.0.1
  * Fixed playback issues on some websites with copyrighted video
    served via digital rights management. (bmo#1911283)
  * Fixed a crash when dragging a video file onto some websites
    (bmo#1910990)</changelog>
  <changelog author="Christian Boltz &lt;suse-beta@cboltz.de&gt;" date="1724500800">- _constraints: increase RAM on s390x to fix the build</changelog>
  <changelog author="pallas wept &lt;pallaswept@proton.me&gt;" date="1725451200">- Added mozilla-bmo1746799.patch to fix incorrect audio volume scaling</changelog>
  <changelog author="Marvin Friedrich &lt;contact@marvinf.com&gt;" date="1725624000">- Update dependency on clang-devel from LLVM15 to LLVM18</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1725710400">- Mozilla Firefox 130.0
  https://www.mozilla.org/en-US/firefox/130.0/releasenotes
  MFSA 2024-39 (bsc#1229821)
  * CVE-2024-8385 (bmo#1911909)
    WASM type confusion involving ArrayTypes
  * CVE-2024-8381 (bmo#1912715)
    Type confusion when looking up a property name in a "with" block
  * CVE-2024-8388 (bmo#1902996, bmo#1839074, bmo#1865413, bmo#1868970,
    bmo#1873367, bmo#1877820, bmo#1884642, bmo#1886469, bmo#1894326,
    bmo#1894891, bmo#1897648)
    Fullscreen notice on Android could be hidden under various
    panels and OS prompts
  * CVE-2024-8382 (bmo#1906744)
    Internal event interfaces were exposed to web content when
    browser EventHandler listener callbacks ran
  * CVE-2024-8383 (bmo#1908496)
    Firefox did not ask before openings news: links in an
    external application
  * CVE-2024-8384 (bmo#1911288)
    Garbage collection could mis-color cross-compartment objects
    in OOM conditions
  * CVE-2024-8386 (bmo#1907032, bmo#1909163, bmo#1909529)
    SelectElements could be shown over another site if popups are
    allowed
  * CVE-2024-8387 (bmo#1857607, bmo#1911858, bmo#1914009)
    Memory safety bugs fixed in Firefox 130, Firefox ESR 128.2,
    and Thunderbird 128.2
  * CVE-2024-8389 (bmo#1907230, bmo#1909367)
    Memory safety bugs fixed in Firefox 130
- requires NSS 3.103
- removed obsolete patches
  mozilla-bmo1898476.patch
  mozilla-bmo1907511.patch
- added mozilla-bmo1916038.patch to fix AVIF decoding (bsc#1230500)</changelog>
  <changelog author="Manfred Hollstein &lt;manfred.h@gmx.net&gt;" date="1726660800">- Firefox 130.0.1 Release
  https://www.mozilla.org/en-US/firefox/130.0.1/releasenotes
  * Enterprise: Added an enterprise policy to disable the
  * Firefox Labs* section in *Settings*. (bmo#1911826)
  * Fixed a recent regression causing some UI elements to
    be rendered as left-to-right instead of right-to-left for
    users of our Saraiki localization. (bmo#1917175)
  * Linux: Fixed black rendering of AVIF images when
    Firefox is built with GCC. (bmo#1916038)
- removed obsolete patches
  mozilla-bmo1916038.patch</changelog>
  <changelog author="Manfred Hollstein &lt;manfred.h@gmx.net&gt;" date="1726920000">- Don't use clang18-devel on Leap as they don't have that version.</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1727611200">- Firefox 131.0
  https://www.mozilla.org/en-US/firefox/131.0/releasenotes/
  MFSA 2024-46 (bsc#1230979)
  * CVE-2024-9391 (bmo#1892407)
    Prevent users from exiting full-screen mode in Firefox Focus
    for Android
  * CVE-2024-9392 (bmo#1899154, bmo#1905843)
    Compromised content process can bypass site isolation
  * CVE-2024-9393 (bmo#1918301)
    Cross-origin access to PDF contents through multipart responses
  * CVE-2024-9394 (bmo#1918874)
    Cross-origin access to JSON contents through multipart responses
  * CVE-2024-9395 (bmo#1906024)
    Specially crafted filename could be used to obscure download type
  * CVE-2024-9396 (bmo#1912471)
    Potential memory corruption may occur when cloning certain objects
  * CVE-2024-9397 (bmo#1916659)
    Potential directory upload bypass via clickjacking
  * CVE-2024-9398 (bmo#1881037)
    External protocol handlers could be enumerated via popups
  * CVE-2024-9399 (bmo#1907726)
    Specially crafted WebTransport requests could lead to denial
    of service
  * CVE-2024-9400 (bmo#1915249)
    Potential memory corruption during JIT compilation
  * CVE-2024-9401 (bmo#1872744, bmo#1897792, bmo#1911317, bmo#1916476)
    Memory safety bugs fixed in Firefox 131, Firefox ESR 115.16,
    Firefox ESR 128.3, Thunderbird 131, and Thunderbird 128.3
  * CVE-2024-9402 (bmo#1872744, bmo#1897792, bmo#1911317, bmo#1913445,
    bmo#1914106, bmo#1914475, bmo#1914963, bmo#1915008, bmo#1916476)
    Memory safety bugs fixed in Firefox 131, Firefox ESR 128.3,
    Thunderbird 131, and Thunderbird 128.3
  * CVE-2024-9403 (bmo#1917807)
    Memory safety bugs fixed in Firefox 131 and Thunderbird 131
- requires NSS 3.104
- rebased patches</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1728475200">- Mozilla Firefox 131.0.2
  MFSA 2024-51 (bsc#1231413)
  * CVE-2024-9680 (bmo#1923344)
    Use-after-free in Animation timeline</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1729166400">- Mozilla Firefox 131.0.3
  * some users could not access the Bill Pay portion of their
    bank's site (bmo#1923500)
  * some VR180 and 360 videos were not properly rendering on YouTube
    (bmo#1922278)
  * Fixed a crash that Windows users with Avast or AVG security
    software were experiencing when visiting certain sites. (bmo#1919678)
  * "List all tabs" button was not able to be moved from the toolbar
    (bmo#1918681)
  NFSA 2024-53
  * CVE-2024-9936 (bmo#1920381)
    Undefined behavior in selection node cache
- remove obsolete mozilla-rust-disable-future-incompat.patch</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1730116800">- Mozilla Firefox 132.0
  https://www.mozilla.org/en-US/firefox/132.0/releasenotes
  MFSA 2024-55 (bsc#1231879)
  * CVE-2024-10458 (bmo#1921733)
    Permission leak via embed or object elements
  * CVE-2024-10459 (bmo#1919087)
    Use-after-free in layout with accessibility
  * CVE-2024-10460 (bmo#1912537)
    Confusing display of origin for external protocol handler prompt
  * CVE-2024-10461 (bmo#1914521)
    XSS due to Content-Disposition being ignored in
    multipart/x-mixed-replace response
  * CVE-2024-10462 (bmo#1920423)
    Origin of permission prompt could be spoofed by long URL
  * CVE-2024-10463 (bmo#1920800)
    Cross origin video frame leak
  * CVE-2024-10468 (bmo#1914982)
    Race conditions in IndexedDB
  * CVE-2024-10464 (bmo#1913000)
    History interface could have been used to cause a Denial of
    Service condition in the browser
  * CVE-2024-10465 (bmo#1918853)
    Clipboard "paste" button persisted across tabs
  * CVE-2024-10466 (bmo#1924154)
    DOM push subscription message could hang Firefox
  * CVE-2024-10467 (bmo#1829029, bmo#1888538, bmo#1900394, bmo#1904059,
    bmo#1917742, bmo#1919809, bmo#1923706)
    Memory safety bugs fixed in Firefox 132, Thunderbird 132,
    Firefox ESR 128.4, and Thunderbird 128.4
- requires NSS 3.105
- rebased patches</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1730808000">- Mozilla Firefox 132.0.1
  * Fixed issues causing intermittent video playback problems on
    some sites. (bmo#1928484, bmo#1928798)
- remove KDE integration patches
  - mozilla-kde.patch
  - firefox-kde.patch
  on KDE use these settings instead
  widget.use-xdg-desktop-portal.file-picker=1
  widget.use-xdg-desktop-portal.mime-handler=1
  (those are set by the latest branding package as well)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1731240000">- require xdg-desktop-portal (boo#1233166)</changelog>
</package>
<package pkgid="a1eea2b9d5616722d0581504b56652f3b62c1e5b0aa8300e88111fa6499ca3eb10baa4924e6cbe9e30d7b34bac30bf2683d575baca6c475de9528959197421c2" name="MozillaFirefox-debuginfo" arch="x86_64">
  <version epoch="0" ver="132.0.2" rel="1.1"/>
  <changelog author="Martin Sirringhaus &lt;martin.sirringhaus@suse.com&gt;" date="1719576000">- Fix GNOME search provider (boo#1225278)</changelog>
  <changelog author="Andrei Dziahel &lt;develop7@develop7.info&gt;" date="1719835200">- Mozilla Firefox 127.0.2
  * Fixed an issue where YouTube playback may experience stalling under
    certain conditions (bmo#1900191, bmo#1878510).
  * Fixed an issue where the Private Window icon was displayed in the taskbar
    on Windows when browser.privateWindowSeparation.enabled was
    set to false (bmo#1901840).
- Mozilla Firefox 127.0.1
  * Fixed an issue where users with a primary password set on their profile
    could lose their previous session of tabs upon upgrading if they dismissed
    the primary password prompt (bmo#1901899).
  * Fixed an issue where Linux users with accessibility.monoaudio.enable set
    to true were experiencing slow audio speeds (bmo#1900972).
  * Fixed an issue where, in some circumstances, the Firefox installer
    on Windows failed to complete the installation (bmo#1896868).
  * Fixed an issue causing Firefox to incorrectly reject cookies
    for certain websites (bmo#1901325).</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1720440000">- Mozilla Firefox 128.0
  https://www.mozilla.org/en-US/firefox/128.0/releasenotes
  MFSA 2024-29 (bsc#1226316)
  * CVE-2024-6605 (bmo#1836786)
    Firefox Android missed activation delay to prevent tapjacking
  * CVE-2024-6606 (bmo#1902305)
    Out-of-bounds read in clipboard component
  * CVE-2024-6607 (bmo#1694513)
    Leaving pointerlock by pressing the escape key could be
    prevented
  * CVE-2024-6608 (bmo#1743329)
    Cursor could be moved out of the viewport using pointerlock.
  * CVE-2024-6609 (bmo#1839258)
    Memory corruption in NSS
  * CVE-2024-6610 (bmo#1883396)
    Form validation popups could block exiting full-screen mode
  * CVE-2024-6600 (bmo#1888340)
    Memory corruption in WebGL API
  * CVE-2024-6601 (bmo#1890748)
    Race condition in permission assignment
  * CVE-2024-6602 (bmo#1895032)
    Memory corruption in NSS
  * CVE-2024-6603 (bmo#1895081)
    Memory corruption in thread creation
  * CVE-2024-6611 (bmo#1844827)
    Incorrect handling of SameSite cookies
  * CVE-2024-6612 (bmo#1880374)
    CSP violation leakage when using devtools
  * CVE-2024-6613 (bmo#1900523)
    Incorrect listing of stack frames
  * CVE-2024-6614 (bmo#1902983)
    Incorrect listing of stack frames
  * CVE-2024-6604 (bmo#1748105, bmo#1837550, bmo#1884266)
    Memory safety bugs fixed in Firefox 128, Firefox ESR 115.13,
    and Thunderbird 115.13
  * CVE-2024-6615 (bmo#1892875, bmo#1894428, bmo#1898364)
    Memory safety bugs fixed in Firefox 128
- requires
  NSS 3.101.1
  rust &gt;= 1.78
- update create-tar.sh
- add wayland upstream fixes (bmo#1907511, bmo#1898476)
  (mozilla-bmo1898476.patch and mozilla-bmo1907511.patch)</changelog>
  <changelog author="Martin Jambor &lt;mjambor@suse.com&gt;" date="1721304000">- Add firefox-3781e3117706.patch to fix boo#1227856 aka bmo#1905018
  where an incompatible pointer assignment is not accepted in C by
  GCC 14.</changelog>
  <changelog author="Manfred Hollstein &lt;manfred.h@gmx.net&gt;" date="1722168000">- Firefox 128.0.3 Release
  * Fixed: Fixed an issue causing some sites to not load when
    connecting via HTTP/2. (bmo#1908161, bmo#1909666)
  * Fixed: Fixed collapsed table rows not appearing when expected
    in some situations. (bmo#1907789)
  * Fixed: Fixed the Windows on-screen keyboard potentially
    concealing the webpage when displayed. (bmo#1907766)
- Firefox 128.0.2 Release
  * Fixed: Fixed an audio echo in video calls on macOS under
    certain conditions. (bmo#1908539)
  * Fixed: Fixed an issue where the Adguard extension popup was
    not displaying. (bmo#1906132)
  * Fixed: Fixed an issue causing some screen readers to fail to
    read when navigating by character in rich text editors. (Bug
    1905021)
  * Fixed: Fixed visual glitches when dark mode is enabled in
    Windows ARM devices. (bmo#1897444)
  * Fixed: Fixed an issue causing NTLM authentication failure.
    (bmo#1908115)
  * Fixed: Fixed an issue where content displayed on mouseover
    was not captured in a screenshot. (bmo#1905468)
  * Fixed: Various stability fixes.
- renamed firefox-3781e3117706.patch to mozilla-bmo1905018.patch
  to conform with patch structure and naming for the package</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1723118400">- Mozilla Firefox 129.0
  https://www.mozilla.org/en-US/firefox/129.0/releasenotes
  MFSA 2024-33 (bsc#1228648))
  * CVE-2024-7518 (bmo#1875354)
    Fullscreen notification dialog can be obscured by document content
  * CVE-2024-7519 (bmo#1902307)
    Out of bounds memory access in graphics shared memory handling
  * CVE-2024-7520 (bmo#1903041)
    Type confusion in WebAssembly
  * CVE-2024-7521 (bmo#1904644)
    Incomplete WebAssembly exception handing
  * CVE-2024-7522 (bmo#1906727)
    Out of bounds read in editor component
  * CVE-2024-7523 (bmo#1908344)
    Document content could partially obscure security prompts
  * CVE-2024-7524 (bmo#1909241)
    CSP strict-dynamic bypass using web-compatibility shims
  * CVE-2024-7525 (bmo#1909298)
    Missing permission check when creating a StreamFilter
  * CVE-2024-7526 (bmo#1910306)
    Uninitialized memory used by WebGL
  * CVE-2024-7527 (bmo#1871303)
    Use-after-free in JavaScript garbage collection
  * CVE-2024-7528 (bmo#1895951)
    Use-after-free in IndexedDB
  * CVE-2024-7529 (bmo#1903187)
    Document content could partially obscure security prompts
  * CVE-2024-7530 (bmo#1904011)
    Use-after-free in JavaScript code coverage collection
  * CVE-2024-7531 (bmo#1905691)
    PK11_Encrypt using CKM_CHACHA20 can reveal plaintext on Intel
    Sandy Bridge machines
- removed obsolete patches
  mozilla-bmo1905018.patch
  mozilla-bmo1504834-part3.patch
  mozilla-bmo1512162.patch
  mozilla-bmo1822730.patch
  mozilla-fix-aarch64-libopus.patch
  mozilla-partial-revert-1768632.patch
- requires NSS 3.102.1
- extended mozilla-silence-no-return-type.patch</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1723809600">- Mozilla Firefox 129.0.1
  * Fixed playback issues on some websites with copyrighted video
    served via digital rights management. (bmo#1911283)
  * Fixed a crash when dragging a video file onto some websites
    (bmo#1910990)</changelog>
  <changelog author="Christian Boltz &lt;suse-beta@cboltz.de&gt;" date="1724500800">- _constraints: increase RAM on s390x to fix the build</changelog>
  <changelog author="pallas wept &lt;pallaswept@proton.me&gt;" date="1725451200">- Added mozilla-bmo1746799.patch to fix incorrect audio volume scaling</changelog>
  <changelog author="Marvin Friedrich &lt;contact@marvinf.com&gt;" date="1725624000">- Update dependency on clang-devel from LLVM15 to LLVM18</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1725710400">- Mozilla Firefox 130.0
  https://www.mozilla.org/en-US/firefox/130.0/releasenotes
  MFSA 2024-39 (bsc#1229821)
  * CVE-2024-8385 (bmo#1911909)
    WASM type confusion involving ArrayTypes
  * CVE-2024-8381 (bmo#1912715)
    Type confusion when looking up a property name in a "with" block
  * CVE-2024-8388 (bmo#1902996, bmo#1839074, bmo#1865413, bmo#1868970,
    bmo#1873367, bmo#1877820, bmo#1884642, bmo#1886469, bmo#1894326,
    bmo#1894891, bmo#1897648)
    Fullscreen notice on Android could be hidden under various
    panels and OS prompts
  * CVE-2024-8382 (bmo#1906744)
    Internal event interfaces were exposed to web content when
    browser EventHandler listener callbacks ran
  * CVE-2024-8383 (bmo#1908496)
    Firefox did not ask before openings news: links in an
    external application
  * CVE-2024-8384 (bmo#1911288)
    Garbage collection could mis-color cross-compartment objects
    in OOM conditions
  * CVE-2024-8386 (bmo#1907032, bmo#1909163, bmo#1909529)
    SelectElements could be shown over another site if popups are
    allowed
  * CVE-2024-8387 (bmo#1857607, bmo#1911858, bmo#1914009)
    Memory safety bugs fixed in Firefox 130, Firefox ESR 128.2,
    and Thunderbird 128.2
  * CVE-2024-8389 (bmo#1907230, bmo#1909367)
    Memory safety bugs fixed in Firefox 130
- requires NSS 3.103
- removed obsolete patches
  mozilla-bmo1898476.patch
  mozilla-bmo1907511.patch
- added mozilla-bmo1916038.patch to fix AVIF decoding (bsc#1230500)</changelog>
  <changelog author="Manfred Hollstein &lt;manfred.h@gmx.net&gt;" date="1726660800">- Firefox 130.0.1 Release
  https://www.mozilla.org/en-US/firefox/130.0.1/releasenotes
  * Enterprise: Added an enterprise policy to disable the
  * Firefox Labs* section in *Settings*. (bmo#1911826)
  * Fixed a recent regression causing some UI elements to
    be rendered as left-to-right instead of right-to-left for
    users of our Saraiki localization. (bmo#1917175)
  * Linux: Fixed black rendering of AVIF images when
    Firefox is built with GCC. (bmo#1916038)
- removed obsolete patches
  mozilla-bmo1916038.patch</changelog>
  <changelog author="Manfred Hollstein &lt;manfred.h@gmx.net&gt;" date="1726920000">- Don't use clang18-devel on Leap as they don't have that version.</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1727611200">- Firefox 131.0
  https://www.mozilla.org/en-US/firefox/131.0/releasenotes/
  MFSA 2024-46 (bsc#1230979)
  * CVE-2024-9391 (bmo#1892407)
    Prevent users from exiting full-screen mode in Firefox Focus
    for Android
  * CVE-2024-9392 (bmo#1899154, bmo#1905843)
    Compromised content process can bypass site isolation
  * CVE-2024-9393 (bmo#1918301)
    Cross-origin access to PDF contents through multipart responses
  * CVE-2024-9394 (bmo#1918874)
    Cross-origin access to JSON contents through multipart responses
  * CVE-2024-9395 (bmo#1906024)
    Specially crafted filename could be used to obscure download type
  * CVE-2024-9396 (bmo#1912471)
    Potential memory corruption may occur when cloning certain objects
  * CVE-2024-9397 (bmo#1916659)
    Potential directory upload bypass via clickjacking
  * CVE-2024-9398 (bmo#1881037)
    External protocol handlers could be enumerated via popups
  * CVE-2024-9399 (bmo#1907726)
    Specially crafted WebTransport requests could lead to denial
    of service
  * CVE-2024-9400 (bmo#1915249)
    Potential memory corruption during JIT compilation
  * CVE-2024-9401 (bmo#1872744, bmo#1897792, bmo#1911317, bmo#1916476)
    Memory safety bugs fixed in Firefox 131, Firefox ESR 115.16,
    Firefox ESR 128.3, Thunderbird 131, and Thunderbird 128.3
  * CVE-2024-9402 (bmo#1872744, bmo#1897792, bmo#1911317, bmo#1913445,
    bmo#1914106, bmo#1914475, bmo#1914963, bmo#1915008, bmo#1916476)
    Memory safety bugs fixed in Firefox 131, Firefox ESR 128.3,
    Thunderbird 131, and Thunderbird 128.3
  * CVE-2024-9403 (bmo#1917807)
    Memory safety bugs fixed in Firefox 131 and Thunderbird 131
- requires NSS 3.104
- rebased patches</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1728475200">- Mozilla Firefox 131.0.2
  MFSA 2024-51 (bsc#1231413)
  * CVE-2024-9680 (bmo#1923344)
    Use-after-free in Animation timeline</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1729166400">- Mozilla Firefox 131.0.3
  * some users could not access the Bill Pay portion of their
    bank's site (bmo#1923500)
  * some VR180 and 360 videos were not properly rendering on YouTube
    (bmo#1922278)
  * Fixed a crash that Windows users with Avast or AVG security
    software were experiencing when visiting certain sites. (bmo#1919678)
  * "List all tabs" button was not able to be moved from the toolbar
    (bmo#1918681)
  NFSA 2024-53
  * CVE-2024-9936 (bmo#1920381)
    Undefined behavior in selection node cache
- remove obsolete mozilla-rust-disable-future-incompat.patch</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1730116800">- Mozilla Firefox 132.0
  https://www.mozilla.org/en-US/firefox/132.0/releasenotes
  MFSA 2024-55 (bsc#1231879)
  * CVE-2024-10458 (bmo#1921733)
    Permission leak via embed or object elements
  * CVE-2024-10459 (bmo#1919087)
    Use-after-free in layout with accessibility
  * CVE-2024-10460 (bmo#1912537)
    Confusing display of origin for external protocol handler prompt
  * CVE-2024-10461 (bmo#1914521)
    XSS due to Content-Disposition being ignored in
    multipart/x-mixed-replace response
  * CVE-2024-10462 (bmo#1920423)
    Origin of permission prompt could be spoofed by long URL
  * CVE-2024-10463 (bmo#1920800)
    Cross origin video frame leak
  * CVE-2024-10468 (bmo#1914982)
    Race conditions in IndexedDB
  * CVE-2024-10464 (bmo#1913000)
    History interface could have been used to cause a Denial of
    Service condition in the browser
  * CVE-2024-10465 (bmo#1918853)
    Clipboard "paste" button persisted across tabs
  * CVE-2024-10466 (bmo#1924154)
    DOM push subscription message could hang Firefox
  * CVE-2024-10467 (bmo#1829029, bmo#1888538, bmo#1900394, bmo#1904059,
    bmo#1917742, bmo#1919809, bmo#1923706)
    Memory safety bugs fixed in Firefox 132, Thunderbird 132,
    Firefox ESR 128.4, and Thunderbird 128.4
- requires NSS 3.105
- rebased patches</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1730808000">- Mozilla Firefox 132.0.1
  * Fixed issues causing intermittent video playback problems on
    some sites. (bmo#1928484, bmo#1928798)
- remove KDE integration patches
  - mozilla-kde.patch
  - firefox-kde.patch
  on KDE use these settings instead
  widget.use-xdg-desktop-portal.file-picker=1
  widget.use-xdg-desktop-portal.mime-handler=1
  (those are set by the latest branding package as well)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1731240000">- require xdg-desktop-portal (boo#1233166)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1731672000">- Mozilla Firefox 132.0.2
  * Fixed possible errors when playing encrypted media content
    through some streaming providers. (bmo#1929491)
  * Added a mitigation to help reduce the frequency of duplicated
    push notifications reported by some users. (bmo#1928868)
  * Fixed hangs when printing from some sites when using the system
    print dialog. (bmo#1898184)
  * Fixed a crash which could occur when using Microsoft SSO on macOS
    (bmo#1929622)
  * Fixed a crash in the Network Monitor developer tool which could
    occur in some circumstances. (bmo#1924882)</changelog>
</package>
<package pkgid="0a91737b6b1f5c7934b01fd951224c64967481759b9e1ba35d3682c858c4486318eb1c1bb615ad6756bf96b22bbd960bfb09467933af0a04c73615f923da8c83" name="MozillaFirefox-debugsource" arch="x86_64">
  <version epoch="0" ver="132.0.1" rel="1.1"/>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1718107200">- Mozilla Firefox 127.0
  https://www.mozilla.org/en-US/firefox/127.0/releasenotes
  MFSA 2024-25 (bsc#1226027)
  * CVE-2024-5687 (bmo#1889066)
    An incorrect principal could have been used when opening new tabs
  * CVE-2024-5688 (bmo#1895086)
    Use-after-free in JavaScript object transplant
  * CVE-2024-5689 (bmo#1389707)
    User confusion and possible phishing vector via Firefox Screenshots
  * CVE-2024-5690 (bmo#1883693)
    External protocol handlers leaked by timing attack
  * CVE-2024-5691 (bmo#1888695)
    Sandboxed iframes were able to bypass sandbox restrictions to
    open a new window
  * CVE-2024-5692 (bmo#1837514, bmo#1891234)
    Bypass of file name restrictions during saving
  * CVE-2024-5693 (bmo#1891319)
    Cross-Origin Image leak via Offscreen Canvas
  * CVE-2024-5694 (bmo#1895055)
    Use-after-free in JavaScript Strings
  * CVE-2024-5695 (bmo#1895579)
    Memory Corruption using allocation using out-of-memory conditions
  * CVE-2024-5696 (bmo#1896555)
    Memory Corruption in Text Fragments
  * CVE-2024-5697 (bmo#1414937)
    Website was able to detect when Firefox was taking a
    screenshot of them
  * CVE-2024-5698 (bmo#1828259)
    Data-list could have overlaid address bar
  * CVE-2024-5699 (bmo#1891349)
    Cookie prefixes not treated as case-sensitive
  * CVE-2024-5700 (bmo#1862809, bmo#1889355, bmo#1893388, bmo#1895123)
    Memory safety bugs fixed in Firefox 127, Firefox ESR 115.12,
    and Thunderbird 115.12
  * CVE-2024-5701 (bmo#1890909, bmo#1891422, bmo#1893915,
    bmo#1894047, bmo#1896024)
    Memory safety bugs fixed in Firefox 127
- removed obsolete mozilla-bmo1886378.patch</changelog>
  <changelog author="Martin Sirringhaus &lt;martin.sirringhaus@suse.com&gt;" date="1719576000">- Fix GNOME search provider (boo#1225278)</changelog>
  <changelog author="Andrei Dziahel &lt;develop7@develop7.info&gt;" date="1719835200">- Mozilla Firefox 127.0.2
  * Fixed an issue where YouTube playback may experience stalling under
    certain conditions (bmo#1900191, bmo#1878510).
  * Fixed an issue where the Private Window icon was displayed in the taskbar
    on Windows when browser.privateWindowSeparation.enabled was
    set to false (bmo#1901840).
- Mozilla Firefox 127.0.1
  * Fixed an issue where users with a primary password set on their profile
    could lose their previous session of tabs upon upgrading if they dismissed
    the primary password prompt (bmo#1901899).
  * Fixed an issue where Linux users with accessibility.monoaudio.enable set
    to true were experiencing slow audio speeds (bmo#1900972).
  * Fixed an issue where, in some circumstances, the Firefox installer
    on Windows failed to complete the installation (bmo#1896868).
  * Fixed an issue causing Firefox to incorrectly reject cookies
    for certain websites (bmo#1901325).</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1720440000">- Mozilla Firefox 128.0
  https://www.mozilla.org/en-US/firefox/128.0/releasenotes
  MFSA 2024-29 (bsc#1226316)
  * CVE-2024-6605 (bmo#1836786)
    Firefox Android missed activation delay to prevent tapjacking
  * CVE-2024-6606 (bmo#1902305)
    Out-of-bounds read in clipboard component
  * CVE-2024-6607 (bmo#1694513)
    Leaving pointerlock by pressing the escape key could be
    prevented
  * CVE-2024-6608 (bmo#1743329)
    Cursor could be moved out of the viewport using pointerlock.
  * CVE-2024-6609 (bmo#1839258)
    Memory corruption in NSS
  * CVE-2024-6610 (bmo#1883396)
    Form validation popups could block exiting full-screen mode
  * CVE-2024-6600 (bmo#1888340)
    Memory corruption in WebGL API
  * CVE-2024-6601 (bmo#1890748)
    Race condition in permission assignment
  * CVE-2024-6602 (bmo#1895032)
    Memory corruption in NSS
  * CVE-2024-6603 (bmo#1895081)
    Memory corruption in thread creation
  * CVE-2024-6611 (bmo#1844827)
    Incorrect handling of SameSite cookies
  * CVE-2024-6612 (bmo#1880374)
    CSP violation leakage when using devtools
  * CVE-2024-6613 (bmo#1900523)
    Incorrect listing of stack frames
  * CVE-2024-6614 (bmo#1902983)
    Incorrect listing of stack frames
  * CVE-2024-6604 (bmo#1748105, bmo#1837550, bmo#1884266)
    Memory safety bugs fixed in Firefox 128, Firefox ESR 115.13,
    and Thunderbird 115.13
  * CVE-2024-6615 (bmo#1892875, bmo#1894428, bmo#1898364)
    Memory safety bugs fixed in Firefox 128
- requires
  NSS 3.101.1
  rust &gt;= 1.78
- update create-tar.sh
- add wayland upstream fixes (bmo#1907511, bmo#1898476)
  (mozilla-bmo1898476.patch and mozilla-bmo1907511.patch)</changelog>
  <changelog author="Martin Jambor &lt;mjambor@suse.com&gt;" date="1721304000">- Add firefox-3781e3117706.patch to fix boo#1227856 aka bmo#1905018
  where an incompatible pointer assignment is not accepted in C by
  GCC 14.</changelog>
  <changelog author="Manfred Hollstein &lt;manfred.h@gmx.net&gt;" date="1722168000">- Firefox 128.0.3 Release
  * Fixed: Fixed an issue causing some sites to not load when
    connecting via HTTP/2. (bmo#1908161, bmo#1909666)
  * Fixed: Fixed collapsed table rows not appearing when expected
    in some situations. (bmo#1907789)
  * Fixed: Fixed the Windows on-screen keyboard potentially
    concealing the webpage when displayed. (bmo#1907766)
- Firefox 128.0.2 Release
  * Fixed: Fixed an audio echo in video calls on macOS under
    certain conditions. (bmo#1908539)
  * Fixed: Fixed an issue where the Adguard extension popup was
    not displaying. (bmo#1906132)
  * Fixed: Fixed an issue causing some screen readers to fail to
    read when navigating by character in rich text editors. (Bug
    1905021)
  * Fixed: Fixed visual glitches when dark mode is enabled in
    Windows ARM devices. (bmo#1897444)
  * Fixed: Fixed an issue causing NTLM authentication failure.
    (bmo#1908115)
  * Fixed: Fixed an issue where content displayed on mouseover
    was not captured in a screenshot. (bmo#1905468)
  * Fixed: Various stability fixes.
- renamed firefox-3781e3117706.patch to mozilla-bmo1905018.patch
  to conform with patch structure and naming for the package</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1723118400">- Mozilla Firefox 129.0
  https://www.mozilla.org/en-US/firefox/129.0/releasenotes
  MFSA 2024-33 (bsc#1228648))
  * CVE-2024-7518 (bmo#1875354)
    Fullscreen notification dialog can be obscured by document content
  * CVE-2024-7519 (bmo#1902307)
    Out of bounds memory access in graphics shared memory handling
  * CVE-2024-7520 (bmo#1903041)
    Type confusion in WebAssembly
  * CVE-2024-7521 (bmo#1904644)
    Incomplete WebAssembly exception handing
  * CVE-2024-7522 (bmo#1906727)
    Out of bounds read in editor component
  * CVE-2024-7523 (bmo#1908344)
    Document content could partially obscure security prompts
  * CVE-2024-7524 (bmo#1909241)
    CSP strict-dynamic bypass using web-compatibility shims
  * CVE-2024-7525 (bmo#1909298)
    Missing permission check when creating a StreamFilter
  * CVE-2024-7526 (bmo#1910306)
    Uninitialized memory used by WebGL
  * CVE-2024-7527 (bmo#1871303)
    Use-after-free in JavaScript garbage collection
  * CVE-2024-7528 (bmo#1895951)
    Use-after-free in IndexedDB
  * CVE-2024-7529 (bmo#1903187)
    Document content could partially obscure security prompts
  * CVE-2024-7530 (bmo#1904011)
    Use-after-free in JavaScript code coverage collection
  * CVE-2024-7531 (bmo#1905691)
    PK11_Encrypt using CKM_CHACHA20 can reveal plaintext on Intel
    Sandy Bridge machines
- removed obsolete patches
  mozilla-bmo1905018.patch
  mozilla-bmo1504834-part3.patch
  mozilla-bmo1512162.patch
  mozilla-bmo1822730.patch
  mozilla-fix-aarch64-libopus.patch
  mozilla-partial-revert-1768632.patch
- requires NSS 3.102.1
- extended mozilla-silence-no-return-type.patch</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1723809600">- Mozilla Firefox 129.0.1
  * Fixed playback issues on some websites with copyrighted video
    served via digital rights management. (bmo#1911283)
  * Fixed a crash when dragging a video file onto some websites
    (bmo#1910990)</changelog>
  <changelog author="Christian Boltz &lt;suse-beta@cboltz.de&gt;" date="1724500800">- _constraints: increase RAM on s390x to fix the build</changelog>
  <changelog author="pallas wept &lt;pallaswept@proton.me&gt;" date="1725451200">- Added mozilla-bmo1746799.patch to fix incorrect audio volume scaling</changelog>
  <changelog author="Marvin Friedrich &lt;contact@marvinf.com&gt;" date="1725624000">- Update dependency on clang-devel from LLVM15 to LLVM18</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1725710400">- Mozilla Firefox 130.0
  https://www.mozilla.org/en-US/firefox/130.0/releasenotes
  MFSA 2024-39 (bsc#1229821)
  * CVE-2024-8385 (bmo#1911909)
    WASM type confusion involving ArrayTypes
  * CVE-2024-8381 (bmo#1912715)
    Type confusion when looking up a property name in a "with" block
  * CVE-2024-8388 (bmo#1902996, bmo#1839074, bmo#1865413, bmo#1868970,
    bmo#1873367, bmo#1877820, bmo#1884642, bmo#1886469, bmo#1894326,
    bmo#1894891, bmo#1897648)
    Fullscreen notice on Android could be hidden under various
    panels and OS prompts
  * CVE-2024-8382 (bmo#1906744)
    Internal event interfaces were exposed to web content when
    browser EventHandler listener callbacks ran
  * CVE-2024-8383 (bmo#1908496)
    Firefox did not ask before openings news: links in an
    external application
  * CVE-2024-8384 (bmo#1911288)
    Garbage collection could mis-color cross-compartment objects
    in OOM conditions
  * CVE-2024-8386 (bmo#1907032, bmo#1909163, bmo#1909529)
    SelectElements could be shown over another site if popups are
    allowed
  * CVE-2024-8387 (bmo#1857607, bmo#1911858, bmo#1914009)
    Memory safety bugs fixed in Firefox 130, Firefox ESR 128.2,
    and Thunderbird 128.2
  * CVE-2024-8389 (bmo#1907230, bmo#1909367)
    Memory safety bugs fixed in Firefox 130
- requires NSS 3.103
- removed obsolete patches
  mozilla-bmo1898476.patch
  mozilla-bmo1907511.patch
- added mozilla-bmo1916038.patch to fix AVIF decoding (bsc#1230500)</changelog>
  <changelog author="Manfred Hollstein &lt;manfred.h@gmx.net&gt;" date="1726660800">- Firefox 130.0.1 Release
  https://www.mozilla.org/en-US/firefox/130.0.1/releasenotes
  * Enterprise: Added an enterprise policy to disable the
  * Firefox Labs* section in *Settings*. (bmo#1911826)
  * Fixed a recent regression causing some UI elements to
    be rendered as left-to-right instead of right-to-left for
    users of our Saraiki localization. (bmo#1917175)
  * Linux: Fixed black rendering of AVIF images when
    Firefox is built with GCC. (bmo#1916038)
- removed obsolete patches
  mozilla-bmo1916038.patch</changelog>
  <changelog author="Manfred Hollstein &lt;manfred.h@gmx.net&gt;" date="1726920000">- Don't use clang18-devel on Leap as they don't have that version.</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1727611200">- Firefox 131.0
  https://www.mozilla.org/en-US/firefox/131.0/releasenotes/
  MFSA 2024-46 (bsc#1230979)
  * CVE-2024-9391 (bmo#1892407)
    Prevent users from exiting full-screen mode in Firefox Focus
    for Android
  * CVE-2024-9392 (bmo#1899154, bmo#1905843)
    Compromised content process can bypass site isolation
  * CVE-2024-9393 (bmo#1918301)
    Cross-origin access to PDF contents through multipart responses
  * CVE-2024-9394 (bmo#1918874)
    Cross-origin access to JSON contents through multipart responses
  * CVE-2024-9395 (bmo#1906024)
    Specially crafted filename could be used to obscure download type
  * CVE-2024-9396 (bmo#1912471)
    Potential memory corruption may occur when cloning certain objects
  * CVE-2024-9397 (bmo#1916659)
    Potential directory upload bypass via clickjacking
  * CVE-2024-9398 (bmo#1881037)
    External protocol handlers could be enumerated via popups
  * CVE-2024-9399 (bmo#1907726)
    Specially crafted WebTransport requests could lead to denial
    of service
  * CVE-2024-9400 (bmo#1915249)
    Potential memory corruption during JIT compilation
  * CVE-2024-9401 (bmo#1872744, bmo#1897792, bmo#1911317, bmo#1916476)
    Memory safety bugs fixed in Firefox 131, Firefox ESR 115.16,
    Firefox ESR 128.3, Thunderbird 131, and Thunderbird 128.3
  * CVE-2024-9402 (bmo#1872744, bmo#1897792, bmo#1911317, bmo#1913445,
    bmo#1914106, bmo#1914475, bmo#1914963, bmo#1915008, bmo#1916476)
    Memory safety bugs fixed in Firefox 131, Firefox ESR 128.3,
    Thunderbird 131, and Thunderbird 128.3
  * CVE-2024-9403 (bmo#1917807)
    Memory safety bugs fixed in Firefox 131 and Thunderbird 131
- requires NSS 3.104
- rebased patches</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1728475200">- Mozilla Firefox 131.0.2
  MFSA 2024-51 (bsc#1231413)
  * CVE-2024-9680 (bmo#1923344)
    Use-after-free in Animation timeline</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1729166400">- Mozilla Firefox 131.0.3
  * some users could not access the Bill Pay portion of their
    bank's site (bmo#1923500)
  * some VR180 and 360 videos were not properly rendering on YouTube
    (bmo#1922278)
  * Fixed a crash that Windows users with Avast or AVG security
    software were experiencing when visiting certain sites. (bmo#1919678)
  * "List all tabs" button was not able to be moved from the toolbar
    (bmo#1918681)
  NFSA 2024-53
  * CVE-2024-9936 (bmo#1920381)
    Undefined behavior in selection node cache
- remove obsolete mozilla-rust-disable-future-incompat.patch</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1730116800">- Mozilla Firefox 132.0
  https://www.mozilla.org/en-US/firefox/132.0/releasenotes
  MFSA 2024-55 (bsc#1231879)
  * CVE-2024-10458 (bmo#1921733)
    Permission leak via embed or object elements
  * CVE-2024-10459 (bmo#1919087)
    Use-after-free in layout with accessibility
  * CVE-2024-10460 (bmo#1912537)
    Confusing display of origin for external protocol handler prompt
  * CVE-2024-10461 (bmo#1914521)
    XSS due to Content-Disposition being ignored in
    multipart/x-mixed-replace response
  * CVE-2024-10462 (bmo#1920423)
    Origin of permission prompt could be spoofed by long URL
  * CVE-2024-10463 (bmo#1920800)
    Cross origin video frame leak
  * CVE-2024-10468 (bmo#1914982)
    Race conditions in IndexedDB
  * CVE-2024-10464 (bmo#1913000)
    History interface could have been used to cause a Denial of
    Service condition in the browser
  * CVE-2024-10465 (bmo#1918853)
    Clipboard "paste" button persisted across tabs
  * CVE-2024-10466 (bmo#1924154)
    DOM push subscription message could hang Firefox
  * CVE-2024-10467 (bmo#1829029, bmo#1888538, bmo#1900394, bmo#1904059,
    bmo#1917742, bmo#1919809, bmo#1923706)
    Memory safety bugs fixed in Firefox 132, Thunderbird 132,
    Firefox ESR 128.4, and Thunderbird 128.4
- requires NSS 3.105
- rebased patches</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1730808000">- Mozilla Firefox 132.0.1
  * Fixed issues causing intermittent video playback problems on
    some sites. (bmo#1928484, bmo#1928798)
- remove KDE integration patches
  - mozilla-kde.patch
  - firefox-kde.patch
  on KDE use these settings instead
  widget.use-xdg-desktop-portal.file-picker=1
  widget.use-xdg-desktop-portal.mime-handler=1
  (those are set by the latest branding package as well)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1731240000">- require xdg-desktop-portal (boo#1233166)</changelog>
</package>
<package pkgid="c4358eecbbd4b8488dbf94ab0e7d2c6c943ee985c565262e359f4d5775379c658970e4624ca21a5cc5df69bb6bb6f6319dc7956add89c0b81c696dfb507a3c65" name="MozillaFirefox-debugsource" arch="x86_64">
  <version epoch="0" ver="132.0.2" rel="1.1"/>
  <changelog author="Martin Sirringhaus &lt;martin.sirringhaus@suse.com&gt;" date="1719576000">- Fix GNOME search provider (boo#1225278)</changelog>
  <changelog author="Andrei Dziahel &lt;develop7@develop7.info&gt;" date="1719835200">- Mozilla Firefox 127.0.2
  * Fixed an issue where YouTube playback may experience stalling under
    certain conditions (bmo#1900191, bmo#1878510).
  * Fixed an issue where the Private Window icon was displayed in the taskbar
    on Windows when browser.privateWindowSeparation.enabled was
    set to false (bmo#1901840).
- Mozilla Firefox 127.0.1
  * Fixed an issue where users with a primary password set on their profile
    could lose their previous session of tabs upon upgrading if they dismissed
    the primary password prompt (bmo#1901899).
  * Fixed an issue where Linux users with accessibility.monoaudio.enable set
    to true were experiencing slow audio speeds (bmo#1900972).
  * Fixed an issue where, in some circumstances, the Firefox installer
    on Windows failed to complete the installation (bmo#1896868).
  * Fixed an issue causing Firefox to incorrectly reject cookies
    for certain websites (bmo#1901325).</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1720440000">- Mozilla Firefox 128.0
  https://www.mozilla.org/en-US/firefox/128.0/releasenotes
  MFSA 2024-29 (bsc#1226316)
  * CVE-2024-6605 (bmo#1836786)
    Firefox Android missed activation delay to prevent tapjacking
  * CVE-2024-6606 (bmo#1902305)
    Out-of-bounds read in clipboard component
  * CVE-2024-6607 (bmo#1694513)
    Leaving pointerlock by pressing the escape key could be
    prevented
  * CVE-2024-6608 (bmo#1743329)
    Cursor could be moved out of the viewport using pointerlock.
  * CVE-2024-6609 (bmo#1839258)
    Memory corruption in NSS
  * CVE-2024-6610 (bmo#1883396)
    Form validation popups could block exiting full-screen mode
  * CVE-2024-6600 (bmo#1888340)
    Memory corruption in WebGL API
  * CVE-2024-6601 (bmo#1890748)
    Race condition in permission assignment
  * CVE-2024-6602 (bmo#1895032)
    Memory corruption in NSS
  * CVE-2024-6603 (bmo#1895081)
    Memory corruption in thread creation
  * CVE-2024-6611 (bmo#1844827)
    Incorrect handling of SameSite cookies
  * CVE-2024-6612 (bmo#1880374)
    CSP violation leakage when using devtools
  * CVE-2024-6613 (bmo#1900523)
    Incorrect listing of stack frames
  * CVE-2024-6614 (bmo#1902983)
    Incorrect listing of stack frames
  * CVE-2024-6604 (bmo#1748105, bmo#1837550, bmo#1884266)
    Memory safety bugs fixed in Firefox 128, Firefox ESR 115.13,
    and Thunderbird 115.13
  * CVE-2024-6615 (bmo#1892875, bmo#1894428, bmo#1898364)
    Memory safety bugs fixed in Firefox 128
- requires
  NSS 3.101.1
  rust &gt;= 1.78
- update create-tar.sh
- add wayland upstream fixes (bmo#1907511, bmo#1898476)
  (mozilla-bmo1898476.patch and mozilla-bmo1907511.patch)</changelog>
  <changelog author="Martin Jambor &lt;mjambor@suse.com&gt;" date="1721304000">- Add firefox-3781e3117706.patch to fix boo#1227856 aka bmo#1905018
  where an incompatible pointer assignment is not accepted in C by
  GCC 14.</changelog>
  <changelog author="Manfred Hollstein &lt;manfred.h@gmx.net&gt;" date="1722168000">- Firefox 128.0.3 Release
  * Fixed: Fixed an issue causing some sites to not load when
    connecting via HTTP/2. (bmo#1908161, bmo#1909666)
  * Fixed: Fixed collapsed table rows not appearing when expected
    in some situations. (bmo#1907789)
  * Fixed: Fixed the Windows on-screen keyboard potentially
    concealing the webpage when displayed. (bmo#1907766)
- Firefox 128.0.2 Release
  * Fixed: Fixed an audio echo in video calls on macOS under
    certain conditions. (bmo#1908539)
  * Fixed: Fixed an issue where the Adguard extension popup was
    not displaying. (bmo#1906132)
  * Fixed: Fixed an issue causing some screen readers to fail to
    read when navigating by character in rich text editors. (Bug
    1905021)
  * Fixed: Fixed visual glitches when dark mode is enabled in
    Windows ARM devices. (bmo#1897444)
  * Fixed: Fixed an issue causing NTLM authentication failure.
    (bmo#1908115)
  * Fixed: Fixed an issue where content displayed on mouseover
    was not captured in a screenshot. (bmo#1905468)
  * Fixed: Various stability fixes.
- renamed firefox-3781e3117706.patch to mozilla-bmo1905018.patch
  to conform with patch structure and naming for the package</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1723118400">- Mozilla Firefox 129.0
  https://www.mozilla.org/en-US/firefox/129.0/releasenotes
  MFSA 2024-33 (bsc#1228648))
  * CVE-2024-7518 (bmo#1875354)
    Fullscreen notification dialog can be obscured by document content
  * CVE-2024-7519 (bmo#1902307)
    Out of bounds memory access in graphics shared memory handling
  * CVE-2024-7520 (bmo#1903041)
    Type confusion in WebAssembly
  * CVE-2024-7521 (bmo#1904644)
    Incomplete WebAssembly exception handing
  * CVE-2024-7522 (bmo#1906727)
    Out of bounds read in editor component
  * CVE-2024-7523 (bmo#1908344)
    Document content could partially obscure security prompts
  * CVE-2024-7524 (bmo#1909241)
    CSP strict-dynamic bypass using web-compatibility shims
  * CVE-2024-7525 (bmo#1909298)
    Missing permission check when creating a StreamFilter
  * CVE-2024-7526 (bmo#1910306)
    Uninitialized memory used by WebGL
  * CVE-2024-7527 (bmo#1871303)
    Use-after-free in JavaScript garbage collection
  * CVE-2024-7528 (bmo#1895951)
    Use-after-free in IndexedDB
  * CVE-2024-7529 (bmo#1903187)
    Document content could partially obscure security prompts
  * CVE-2024-7530 (bmo#1904011)
    Use-after-free in JavaScript code coverage collection
  * CVE-2024-7531 (bmo#1905691)
    PK11_Encrypt using CKM_CHACHA20 can reveal plaintext on Intel
    Sandy Bridge machines
- removed obsolete patches
  mozilla-bmo1905018.patch
  mozilla-bmo1504834-part3.patch
  mozilla-bmo1512162.patch
  mozilla-bmo1822730.patch
  mozilla-fix-aarch64-libopus.patch
  mozilla-partial-revert-1768632.patch
- requires NSS 3.102.1
- extended mozilla-silence-no-return-type.patch</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1723809600">- Mozilla Firefox 129.0.1
  * Fixed playback issues on some websites with copyrighted video
    served via digital rights management. (bmo#1911283)
  * Fixed a crash when dragging a video file onto some websites
    (bmo#1910990)</changelog>
  <changelog author="Christian Boltz &lt;suse-beta@cboltz.de&gt;" date="1724500800">- _constraints: increase RAM on s390x to fix the build</changelog>
  <changelog author="pallas wept &lt;pallaswept@proton.me&gt;" date="1725451200">- Added mozilla-bmo1746799.patch to fix incorrect audio volume scaling</changelog>
  <changelog author="Marvin Friedrich &lt;contact@marvinf.com&gt;" date="1725624000">- Update dependency on clang-devel from LLVM15 to LLVM18</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1725710400">- Mozilla Firefox 130.0
  https://www.mozilla.org/en-US/firefox/130.0/releasenotes
  MFSA 2024-39 (bsc#1229821)
  * CVE-2024-8385 (bmo#1911909)
    WASM type confusion involving ArrayTypes
  * CVE-2024-8381 (bmo#1912715)
    Type confusion when looking up a property name in a "with" block
  * CVE-2024-8388 (bmo#1902996, bmo#1839074, bmo#1865413, bmo#1868970,
    bmo#1873367, bmo#1877820, bmo#1884642, bmo#1886469, bmo#1894326,
    bmo#1894891, bmo#1897648)
    Fullscreen notice on Android could be hidden under various
    panels and OS prompts
  * CVE-2024-8382 (bmo#1906744)
    Internal event interfaces were exposed to web content when
    browser EventHandler listener callbacks ran
  * CVE-2024-8383 (bmo#1908496)
    Firefox did not ask before openings news: links in an
    external application
  * CVE-2024-8384 (bmo#1911288)
    Garbage collection could mis-color cross-compartment objects
    in OOM conditions
  * CVE-2024-8386 (bmo#1907032, bmo#1909163, bmo#1909529)
    SelectElements could be shown over another site if popups are
    allowed
  * CVE-2024-8387 (bmo#1857607, bmo#1911858, bmo#1914009)
    Memory safety bugs fixed in Firefox 130, Firefox ESR 128.2,
    and Thunderbird 128.2
  * CVE-2024-8389 (bmo#1907230, bmo#1909367)
    Memory safety bugs fixed in Firefox 130
- requires NSS 3.103
- removed obsolete patches
  mozilla-bmo1898476.patch
  mozilla-bmo1907511.patch
- added mozilla-bmo1916038.patch to fix AVIF decoding (bsc#1230500)</changelog>
  <changelog author="Manfred Hollstein &lt;manfred.h@gmx.net&gt;" date="1726660800">- Firefox 130.0.1 Release
  https://www.mozilla.org/en-US/firefox/130.0.1/releasenotes
  * Enterprise: Added an enterprise policy to disable the
  * Firefox Labs* section in *Settings*. (bmo#1911826)
  * Fixed a recent regression causing some UI elements to
    be rendered as left-to-right instead of right-to-left for
    users of our Saraiki localization. (bmo#1917175)
  * Linux: Fixed black rendering of AVIF images when
    Firefox is built with GCC. (bmo#1916038)
- removed obsolete patches
  mozilla-bmo1916038.patch</changelog>
  <changelog author="Manfred Hollstein &lt;manfred.h@gmx.net&gt;" date="1726920000">- Don't use clang18-devel on Leap as they don't have that version.</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1727611200">- Firefox 131.0
  https://www.mozilla.org/en-US/firefox/131.0/releasenotes/
  MFSA 2024-46 (bsc#1230979)
  * CVE-2024-9391 (bmo#1892407)
    Prevent users from exiting full-screen mode in Firefox Focus
    for Android
  * CVE-2024-9392 (bmo#1899154, bmo#1905843)
    Compromised content process can bypass site isolation
  * CVE-2024-9393 (bmo#1918301)
    Cross-origin access to PDF contents through multipart responses
  * CVE-2024-9394 (bmo#1918874)
    Cross-origin access to JSON contents through multipart responses
  * CVE-2024-9395 (bmo#1906024)
    Specially crafted filename could be used to obscure download type
  * CVE-2024-9396 (bmo#1912471)
    Potential memory corruption may occur when cloning certain objects
  * CVE-2024-9397 (bmo#1916659)
    Potential directory upload bypass via clickjacking
  * CVE-2024-9398 (bmo#1881037)
    External protocol handlers could be enumerated via popups
  * CVE-2024-9399 (bmo#1907726)
    Specially crafted WebTransport requests could lead to denial
    of service
  * CVE-2024-9400 (bmo#1915249)
    Potential memory corruption during JIT compilation
  * CVE-2024-9401 (bmo#1872744, bmo#1897792, bmo#1911317, bmo#1916476)
    Memory safety bugs fixed in Firefox 131, Firefox ESR 115.16,
    Firefox ESR 128.3, Thunderbird 131, and Thunderbird 128.3
  * CVE-2024-9402 (bmo#1872744, bmo#1897792, bmo#1911317, bmo#1913445,
    bmo#1914106, bmo#1914475, bmo#1914963, bmo#1915008, bmo#1916476)
    Memory safety bugs fixed in Firefox 131, Firefox ESR 128.3,
    Thunderbird 131, and Thunderbird 128.3
  * CVE-2024-9403 (bmo#1917807)
    Memory safety bugs fixed in Firefox 131 and Thunderbird 131
- requires NSS 3.104
- rebased patches</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1728475200">- Mozilla Firefox 131.0.2
  MFSA 2024-51 (bsc#1231413)
  * CVE-2024-9680 (bmo#1923344)
    Use-after-free in Animation timeline</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1729166400">- Mozilla Firefox 131.0.3
  * some users could not access the Bill Pay portion of their
    bank's site (bmo#1923500)
  * some VR180 and 360 videos were not properly rendering on YouTube
    (bmo#1922278)
  * Fixed a crash that Windows users with Avast or AVG security
    software were experiencing when visiting certain sites. (bmo#1919678)
  * "List all tabs" button was not able to be moved from the toolbar
    (bmo#1918681)
  NFSA 2024-53
  * CVE-2024-9936 (bmo#1920381)
    Undefined behavior in selection node cache
- remove obsolete mozilla-rust-disable-future-incompat.patch</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1730116800">- Mozilla Firefox 132.0
  https://www.mozilla.org/en-US/firefox/132.0/releasenotes
  MFSA 2024-55 (bsc#1231879)
  * CVE-2024-10458 (bmo#1921733)
    Permission leak via embed or object elements
  * CVE-2024-10459 (bmo#1919087)
    Use-after-free in layout with accessibility
  * CVE-2024-10460 (bmo#1912537)
    Confusing display of origin for external protocol handler prompt
  * CVE-2024-10461 (bmo#1914521)
    XSS due to Content-Disposition being ignored in
    multipart/x-mixed-replace response
  * CVE-2024-10462 (bmo#1920423)
    Origin of permission prompt could be spoofed by long URL
  * CVE-2024-10463 (bmo#1920800)
    Cross origin video frame leak
  * CVE-2024-10468 (bmo#1914982)
    Race conditions in IndexedDB
  * CVE-2024-10464 (bmo#1913000)
    History interface could have been used to cause a Denial of
    Service condition in the browser
  * CVE-2024-10465 (bmo#1918853)
    Clipboard "paste" button persisted across tabs
  * CVE-2024-10466 (bmo#1924154)
    DOM push subscription message could hang Firefox
  * CVE-2024-10467 (bmo#1829029, bmo#1888538, bmo#1900394, bmo#1904059,
    bmo#1917742, bmo#1919809, bmo#1923706)
    Memory safety bugs fixed in Firefox 132, Thunderbird 132,
    Firefox ESR 128.4, and Thunderbird 128.4
- requires NSS 3.105
- rebased patches</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1730808000">- Mozilla Firefox 132.0.1
  * Fixed issues causing intermittent video playback problems on
    some sites. (bmo#1928484, bmo#1928798)
- remove KDE integration patches
  - mozilla-kde.patch
  - firefox-kde.patch
  on KDE use these settings instead
  widget.use-xdg-desktop-portal.file-picker=1
  widget.use-xdg-desktop-portal.mime-handler=1
  (those are set by the latest branding package as well)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1731240000">- require xdg-desktop-portal (boo#1233166)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1731672000">- Mozilla Firefox 132.0.2
  * Fixed possible errors when playing encrypted media content
    through some streaming providers. (bmo#1929491)
  * Added a mitigation to help reduce the frequency of duplicated
    push notifications reported by some users. (bmo#1928868)
  * Fixed hangs when printing from some sites when using the system
    print dialog. (bmo#1898184)
  * Fixed a crash which could occur when using Microsoft SSO on macOS
    (bmo#1929622)
  * Fixed a crash in the Network Monitor developer tool which could
    occur in some circumstances. (bmo#1924882)</changelog>
</package>
<package pkgid="0f69f815a1d52fb36e3f7c01f0f945b063984144bb786063f9d94e4a70c2de08bc0275b6a43b26ffe7d25ad181c69aef282b07d48dcae13082c155c0008b7555" name="MozillaFirefox-devel" arch="noarch">
  <version epoch="0" ver="132.0.1" rel="1.1"/>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1718107200">- Mozilla Firefox 127.0
  https://www.mozilla.org/en-US/firefox/127.0/releasenotes
  MFSA 2024-25 (bsc#1226027)
  * CVE-2024-5687 (bmo#1889066)
    An incorrect principal could have been used when opening new tabs
  * CVE-2024-5688 (bmo#1895086)
    Use-after-free in JavaScript object transplant
  * CVE-2024-5689 (bmo#1389707)
    User confusion and possible phishing vector via Firefox Screenshots
  * CVE-2024-5690 (bmo#1883693)
    External protocol handlers leaked by timing attack
  * CVE-2024-5691 (bmo#1888695)
    Sandboxed iframes were able to bypass sandbox restrictions to
    open a new window
  * CVE-2024-5692 (bmo#1837514, bmo#1891234)
    Bypass of file name restrictions during saving
  * CVE-2024-5693 (bmo#1891319)
    Cross-Origin Image leak via Offscreen Canvas
  * CVE-2024-5694 (bmo#1895055)
    Use-after-free in JavaScript Strings
  * CVE-2024-5695 (bmo#1895579)
    Memory Corruption using allocation using out-of-memory conditions
  * CVE-2024-5696 (bmo#1896555)
    Memory Corruption in Text Fragments
  * CVE-2024-5697 (bmo#1414937)
    Website was able to detect when Firefox was taking a
    screenshot of them
  * CVE-2024-5698 (bmo#1828259)
    Data-list could have overlaid address bar
  * CVE-2024-5699 (bmo#1891349)
    Cookie prefixes not treated as case-sensitive
  * CVE-2024-5700 (bmo#1862809, bmo#1889355, bmo#1893388, bmo#1895123)
    Memory safety bugs fixed in Firefox 127, Firefox ESR 115.12,
    and Thunderbird 115.12
  * CVE-2024-5701 (bmo#1890909, bmo#1891422, bmo#1893915,
    bmo#1894047, bmo#1896024)
    Memory safety bugs fixed in Firefox 127
- removed obsolete mozilla-bmo1886378.patch</changelog>
  <changelog author="Martin Sirringhaus &lt;martin.sirringhaus@suse.com&gt;" date="1719576000">- Fix GNOME search provider (boo#1225278)</changelog>
  <changelog author="Andrei Dziahel &lt;develop7@develop7.info&gt;" date="1719835200">- Mozilla Firefox 127.0.2
  * Fixed an issue where YouTube playback may experience stalling under
    certain conditions (bmo#1900191, bmo#1878510).
  * Fixed an issue where the Private Window icon was displayed in the taskbar
    on Windows when browser.privateWindowSeparation.enabled was
    set to false (bmo#1901840).
- Mozilla Firefox 127.0.1
  * Fixed an issue where users with a primary password set on their profile
    could lose their previous session of tabs upon upgrading if they dismissed
    the primary password prompt (bmo#1901899).
  * Fixed an issue where Linux users with accessibility.monoaudio.enable set
    to true were experiencing slow audio speeds (bmo#1900972).
  * Fixed an issue where, in some circumstances, the Firefox installer
    on Windows failed to complete the installation (bmo#1896868).
  * Fixed an issue causing Firefox to incorrectly reject cookies
    for certain websites (bmo#1901325).</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1720440000">- Mozilla Firefox 128.0
  https://www.mozilla.org/en-US/firefox/128.0/releasenotes
  MFSA 2024-29 (bsc#1226316)
  * CVE-2024-6605 (bmo#1836786)
    Firefox Android missed activation delay to prevent tapjacking
  * CVE-2024-6606 (bmo#1902305)
    Out-of-bounds read in clipboard component
  * CVE-2024-6607 (bmo#1694513)
    Leaving pointerlock by pressing the escape key could be
    prevented
  * CVE-2024-6608 (bmo#1743329)
    Cursor could be moved out of the viewport using pointerlock.
  * CVE-2024-6609 (bmo#1839258)
    Memory corruption in NSS
  * CVE-2024-6610 (bmo#1883396)
    Form validation popups could block exiting full-screen mode
  * CVE-2024-6600 (bmo#1888340)
    Memory corruption in WebGL API
  * CVE-2024-6601 (bmo#1890748)
    Race condition in permission assignment
  * CVE-2024-6602 (bmo#1895032)
    Memory corruption in NSS
  * CVE-2024-6603 (bmo#1895081)
    Memory corruption in thread creation
  * CVE-2024-6611 (bmo#1844827)
    Incorrect handling of SameSite cookies
  * CVE-2024-6612 (bmo#1880374)
    CSP violation leakage when using devtools
  * CVE-2024-6613 (bmo#1900523)
    Incorrect listing of stack frames
  * CVE-2024-6614 (bmo#1902983)
    Incorrect listing of stack frames
  * CVE-2024-6604 (bmo#1748105, bmo#1837550, bmo#1884266)
    Memory safety bugs fixed in Firefox 128, Firefox ESR 115.13,
    and Thunderbird 115.13
  * CVE-2024-6615 (bmo#1892875, bmo#1894428, bmo#1898364)
    Memory safety bugs fixed in Firefox 128
- requires
  NSS 3.101.1
  rust &gt;= 1.78
- update create-tar.sh
- add wayland upstream fixes (bmo#1907511, bmo#1898476)
  (mozilla-bmo1898476.patch and mozilla-bmo1907511.patch)</changelog>
  <changelog author="Martin Jambor &lt;mjambor@suse.com&gt;" date="1721304000">- Add firefox-3781e3117706.patch to fix boo#1227856 aka bmo#1905018
  where an incompatible pointer assignment is not accepted in C by
  GCC 14.</changelog>
  <changelog author="Manfred Hollstein &lt;manfred.h@gmx.net&gt;" date="1722168000">- Firefox 128.0.3 Release
  * Fixed: Fixed an issue causing some sites to not load when
    connecting via HTTP/2. (bmo#1908161, bmo#1909666)
  * Fixed: Fixed collapsed table rows not appearing when expected
    in some situations. (bmo#1907789)
  * Fixed: Fixed the Windows on-screen keyboard potentially
    concealing the webpage when displayed. (bmo#1907766)
- Firefox 128.0.2 Release
  * Fixed: Fixed an audio echo in video calls on macOS under
    certain conditions. (bmo#1908539)
  * Fixed: Fixed an issue where the Adguard extension popup was
    not displaying. (bmo#1906132)
  * Fixed: Fixed an issue causing some screen readers to fail to
    read when navigating by character in rich text editors. (Bug
    1905021)
  * Fixed: Fixed visual glitches when dark mode is enabled in
    Windows ARM devices. (bmo#1897444)
  * Fixed: Fixed an issue causing NTLM authentication failure.
    (bmo#1908115)
  * Fixed: Fixed an issue where content displayed on mouseover
    was not captured in a screenshot. (bmo#1905468)
  * Fixed: Various stability fixes.
- renamed firefox-3781e3117706.patch to mozilla-bmo1905018.patch
  to conform with patch structure and naming for the package</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1723118400">- Mozilla Firefox 129.0
  https://www.mozilla.org/en-US/firefox/129.0/releasenotes
  MFSA 2024-33 (bsc#1228648))
  * CVE-2024-7518 (bmo#1875354)
    Fullscreen notification dialog can be obscured by document content
  * CVE-2024-7519 (bmo#1902307)
    Out of bounds memory access in graphics shared memory handling
  * CVE-2024-7520 (bmo#1903041)
    Type confusion in WebAssembly
  * CVE-2024-7521 (bmo#1904644)
    Incomplete WebAssembly exception handing
  * CVE-2024-7522 (bmo#1906727)
    Out of bounds read in editor component
  * CVE-2024-7523 (bmo#1908344)
    Document content could partially obscure security prompts
  * CVE-2024-7524 (bmo#1909241)
    CSP strict-dynamic bypass using web-compatibility shims
  * CVE-2024-7525 (bmo#1909298)
    Missing permission check when creating a StreamFilter
  * CVE-2024-7526 (bmo#1910306)
    Uninitialized memory used by WebGL
  * CVE-2024-7527 (bmo#1871303)
    Use-after-free in JavaScript garbage collection
  * CVE-2024-7528 (bmo#1895951)
    Use-after-free in IndexedDB
  * CVE-2024-7529 (bmo#1903187)
    Document content could partially obscure security prompts
  * CVE-2024-7530 (bmo#1904011)
    Use-after-free in JavaScript code coverage collection
  * CVE-2024-7531 (bmo#1905691)
    PK11_Encrypt using CKM_CHACHA20 can reveal plaintext on Intel
    Sandy Bridge machines
- removed obsolete patches
  mozilla-bmo1905018.patch
  mozilla-bmo1504834-part3.patch
  mozilla-bmo1512162.patch
  mozilla-bmo1822730.patch
  mozilla-fix-aarch64-libopus.patch
  mozilla-partial-revert-1768632.patch
- requires NSS 3.102.1
- extended mozilla-silence-no-return-type.patch</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1723809600">- Mozilla Firefox 129.0.1
  * Fixed playback issues on some websites with copyrighted video
    served via digital rights management. (bmo#1911283)
  * Fixed a crash when dragging a video file onto some websites
    (bmo#1910990)</changelog>
  <changelog author="Christian Boltz &lt;suse-beta@cboltz.de&gt;" date="1724500800">- _constraints: increase RAM on s390x to fix the build</changelog>
  <changelog author="pallas wept &lt;pallaswept@proton.me&gt;" date="1725451200">- Added mozilla-bmo1746799.patch to fix incorrect audio volume scaling</changelog>
  <changelog author="Marvin Friedrich &lt;contact@marvinf.com&gt;" date="1725624000">- Update dependency on clang-devel from LLVM15 to LLVM18</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1725710400">- Mozilla Firefox 130.0
  https://www.mozilla.org/en-US/firefox/130.0/releasenotes
  MFSA 2024-39 (bsc#1229821)
  * CVE-2024-8385 (bmo#1911909)
    WASM type confusion involving ArrayTypes
  * CVE-2024-8381 (bmo#1912715)
    Type confusion when looking up a property name in a "with" block
  * CVE-2024-8388 (bmo#1902996, bmo#1839074, bmo#1865413, bmo#1868970,
    bmo#1873367, bmo#1877820, bmo#1884642, bmo#1886469, bmo#1894326,
    bmo#1894891, bmo#1897648)
    Fullscreen notice on Android could be hidden under various
    panels and OS prompts
  * CVE-2024-8382 (bmo#1906744)
    Internal event interfaces were exposed to web content when
    browser EventHandler listener callbacks ran
  * CVE-2024-8383 (bmo#1908496)
    Firefox did not ask before openings news: links in an
    external application
  * CVE-2024-8384 (bmo#1911288)
    Garbage collection could mis-color cross-compartment objects
    in OOM conditions
  * CVE-2024-8386 (bmo#1907032, bmo#1909163, bmo#1909529)
    SelectElements could be shown over another site if popups are
    allowed
  * CVE-2024-8387 (bmo#1857607, bmo#1911858, bmo#1914009)
    Memory safety bugs fixed in Firefox 130, Firefox ESR 128.2,
    and Thunderbird 128.2
  * CVE-2024-8389 (bmo#1907230, bmo#1909367)
    Memory safety bugs fixed in Firefox 130
- requires NSS 3.103
- removed obsolete patches
  mozilla-bmo1898476.patch
  mozilla-bmo1907511.patch
- added mozilla-bmo1916038.patch to fix AVIF decoding (bsc#1230500)</changelog>
  <changelog author="Manfred Hollstein &lt;manfred.h@gmx.net&gt;" date="1726660800">- Firefox 130.0.1 Release
  https://www.mozilla.org/en-US/firefox/130.0.1/releasenotes
  * Enterprise: Added an enterprise policy to disable the
  * Firefox Labs* section in *Settings*. (bmo#1911826)
  * Fixed a recent regression causing some UI elements to
    be rendered as left-to-right instead of right-to-left for
    users of our Saraiki localization. (bmo#1917175)
  * Linux: Fixed black rendering of AVIF images when
    Firefox is built with GCC. (bmo#1916038)
- removed obsolete patches
  mozilla-bmo1916038.patch</changelog>
  <changelog author="Manfred Hollstein &lt;manfred.h@gmx.net&gt;" date="1726920000">- Don't use clang18-devel on Leap as they don't have that version.</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1727611200">- Firefox 131.0
  https://www.mozilla.org/en-US/firefox/131.0/releasenotes/
  MFSA 2024-46 (bsc#1230979)
  * CVE-2024-9391 (bmo#1892407)
    Prevent users from exiting full-screen mode in Firefox Focus
    for Android
  * CVE-2024-9392 (bmo#1899154, bmo#1905843)
    Compromised content process can bypass site isolation
  * CVE-2024-9393 (bmo#1918301)
    Cross-origin access to PDF contents through multipart responses
  * CVE-2024-9394 (bmo#1918874)
    Cross-origin access to JSON contents through multipart responses
  * CVE-2024-9395 (bmo#1906024)
    Specially crafted filename could be used to obscure download type
  * CVE-2024-9396 (bmo#1912471)
    Potential memory corruption may occur when cloning certain objects
  * CVE-2024-9397 (bmo#1916659)
    Potential directory upload bypass via clickjacking
  * CVE-2024-9398 (bmo#1881037)
    External protocol handlers could be enumerated via popups
  * CVE-2024-9399 (bmo#1907726)
    Specially crafted WebTransport requests could lead to denial
    of service
  * CVE-2024-9400 (bmo#1915249)
    Potential memory corruption during JIT compilation
  * CVE-2024-9401 (bmo#1872744, bmo#1897792, bmo#1911317, bmo#1916476)
    Memory safety bugs fixed in Firefox 131, Firefox ESR 115.16,
    Firefox ESR 128.3, Thunderbird 131, and Thunderbird 128.3
  * CVE-2024-9402 (bmo#1872744, bmo#1897792, bmo#1911317, bmo#1913445,
    bmo#1914106, bmo#1914475, bmo#1914963, bmo#1915008, bmo#1916476)
    Memory safety bugs fixed in Firefox 131, Firefox ESR 128.3,
    Thunderbird 131, and Thunderbird 128.3
  * CVE-2024-9403 (bmo#1917807)
    Memory safety bugs fixed in Firefox 131 and Thunderbird 131
- requires NSS 3.104
- rebased patches</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1728475200">- Mozilla Firefox 131.0.2
  MFSA 2024-51 (bsc#1231413)
  * CVE-2024-9680 (bmo#1923344)
    Use-after-free in Animation timeline</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1729166400">- Mozilla Firefox 131.0.3
  * some users could not access the Bill Pay portion of their
    bank's site (bmo#1923500)
  * some VR180 and 360 videos were not properly rendering on YouTube
    (bmo#1922278)
  * Fixed a crash that Windows users with Avast or AVG security
    software were experiencing when visiting certain sites. (bmo#1919678)
  * "List all tabs" button was not able to be moved from the toolbar
    (bmo#1918681)
  NFSA 2024-53
  * CVE-2024-9936 (bmo#1920381)
    Undefined behavior in selection node cache
- remove obsolete mozilla-rust-disable-future-incompat.patch</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1730116800">- Mozilla Firefox 132.0
  https://www.mozilla.org/en-US/firefox/132.0/releasenotes
  MFSA 2024-55 (bsc#1231879)
  * CVE-2024-10458 (bmo#1921733)
    Permission leak via embed or object elements
  * CVE-2024-10459 (bmo#1919087)
    Use-after-free in layout with accessibility
  * CVE-2024-10460 (bmo#1912537)
    Confusing display of origin for external protocol handler prompt
  * CVE-2024-10461 (bmo#1914521)
    XSS due to Content-Disposition being ignored in
    multipart/x-mixed-replace response
  * CVE-2024-10462 (bmo#1920423)
    Origin of permission prompt could be spoofed by long URL
  * CVE-2024-10463 (bmo#1920800)
    Cross origin video frame leak
  * CVE-2024-10468 (bmo#1914982)
    Race conditions in IndexedDB
  * CVE-2024-10464 (bmo#1913000)
    History interface could have been used to cause a Denial of
    Service condition in the browser
  * CVE-2024-10465 (bmo#1918853)
    Clipboard "paste" button persisted across tabs
  * CVE-2024-10466 (bmo#1924154)
    DOM push subscription message could hang Firefox
  * CVE-2024-10467 (bmo#1829029, bmo#1888538, bmo#1900394, bmo#1904059,
    bmo#1917742, bmo#1919809, bmo#1923706)
    Memory safety bugs fixed in Firefox 132, Thunderbird 132,
    Firefox ESR 128.4, and Thunderbird 128.4
- requires NSS 3.105
- rebased patches</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1730808000">- Mozilla Firefox 132.0.1
  * Fixed issues causing intermittent video playback problems on
    some sites. (bmo#1928484, bmo#1928798)
- remove KDE integration patches
  - mozilla-kde.patch
  - firefox-kde.patch
  on KDE use these settings instead
  widget.use-xdg-desktop-portal.file-picker=1
  widget.use-xdg-desktop-portal.mime-handler=1
  (those are set by the latest branding package as well)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1731240000">- require xdg-desktop-portal (boo#1233166)</changelog>
</package>
<package pkgid="e953ab66cbf7411e868a11e91e87d6434161c414fa36d2aad1e1a6f4c16ee9546a53de1f391840f98c1ee5d153cd66041d814f25128f962e8355e7a8ef2cdaa2" name="MozillaFirefox-devel" arch="noarch">
  <version epoch="0" ver="132.0.2" rel="1.1"/>
  <changelog author="Martin Sirringhaus &lt;martin.sirringhaus@suse.com&gt;" date="1719576000">- Fix GNOME search provider (boo#1225278)</changelog>
  <changelog author="Andrei Dziahel &lt;develop7@develop7.info&gt;" date="1719835200">- Mozilla Firefox 127.0.2
  * Fixed an issue where YouTube playback may experience stalling under
    certain conditions (bmo#1900191, bmo#1878510).
  * Fixed an issue where the Private Window icon was displayed in the taskbar
    on Windows when browser.privateWindowSeparation.enabled was
    set to false (bmo#1901840).
- Mozilla Firefox 127.0.1
  * Fixed an issue where users with a primary password set on their profile
    could lose their previous session of tabs upon upgrading if they dismissed
    the primary password prompt (bmo#1901899).
  * Fixed an issue where Linux users with accessibility.monoaudio.enable set
    to true were experiencing slow audio speeds (bmo#1900972).
  * Fixed an issue where, in some circumstances, the Firefox installer
    on Windows failed to complete the installation (bmo#1896868).
  * Fixed an issue causing Firefox to incorrectly reject cookies
    for certain websites (bmo#1901325).</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1720440000">- Mozilla Firefox 128.0
  https://www.mozilla.org/en-US/firefox/128.0/releasenotes
  MFSA 2024-29 (bsc#1226316)
  * CVE-2024-6605 (bmo#1836786)
    Firefox Android missed activation delay to prevent tapjacking
  * CVE-2024-6606 (bmo#1902305)
    Out-of-bounds read in clipboard component
  * CVE-2024-6607 (bmo#1694513)
    Leaving pointerlock by pressing the escape key could be
    prevented
  * CVE-2024-6608 (bmo#1743329)
    Cursor could be moved out of the viewport using pointerlock.
  * CVE-2024-6609 (bmo#1839258)
    Memory corruption in NSS
  * CVE-2024-6610 (bmo#1883396)
    Form validation popups could block exiting full-screen mode
  * CVE-2024-6600 (bmo#1888340)
    Memory corruption in WebGL API
  * CVE-2024-6601 (bmo#1890748)
    Race condition in permission assignment
  * CVE-2024-6602 (bmo#1895032)
    Memory corruption in NSS
  * CVE-2024-6603 (bmo#1895081)
    Memory corruption in thread creation
  * CVE-2024-6611 (bmo#1844827)
    Incorrect handling of SameSite cookies
  * CVE-2024-6612 (bmo#1880374)
    CSP violation leakage when using devtools
  * CVE-2024-6613 (bmo#1900523)
    Incorrect listing of stack frames
  * CVE-2024-6614 (bmo#1902983)
    Incorrect listing of stack frames
  * CVE-2024-6604 (bmo#1748105, bmo#1837550, bmo#1884266)
    Memory safety bugs fixed in Firefox 128, Firefox ESR 115.13,
    and Thunderbird 115.13
  * CVE-2024-6615 (bmo#1892875, bmo#1894428, bmo#1898364)
    Memory safety bugs fixed in Firefox 128
- requires
  NSS 3.101.1
  rust &gt;= 1.78
- update create-tar.sh
- add wayland upstream fixes (bmo#1907511, bmo#1898476)
  (mozilla-bmo1898476.patch and mozilla-bmo1907511.patch)</changelog>
  <changelog author="Martin Jambor &lt;mjambor@suse.com&gt;" date="1721304000">- Add firefox-3781e3117706.patch to fix boo#1227856 aka bmo#1905018
  where an incompatible pointer assignment is not accepted in C by
  GCC 14.</changelog>
  <changelog author="Manfred Hollstein &lt;manfred.h@gmx.net&gt;" date="1722168000">- Firefox 128.0.3 Release
  * Fixed: Fixed an issue causing some sites to not load when
    connecting via HTTP/2. (bmo#1908161, bmo#1909666)
  * Fixed: Fixed collapsed table rows not appearing when expected
    in some situations. (bmo#1907789)
  * Fixed: Fixed the Windows on-screen keyboard potentially
    concealing the webpage when displayed. (bmo#1907766)
- Firefox 128.0.2 Release
  * Fixed: Fixed an audio echo in video calls on macOS under
    certain conditions. (bmo#1908539)
  * Fixed: Fixed an issue where the Adguard extension popup was
    not displaying. (bmo#1906132)
  * Fixed: Fixed an issue causing some screen readers to fail to
    read when navigating by character in rich text editors. (Bug
    1905021)
  * Fixed: Fixed visual glitches when dark mode is enabled in
    Windows ARM devices. (bmo#1897444)
  * Fixed: Fixed an issue causing NTLM authentication failure.
    (bmo#1908115)
  * Fixed: Fixed an issue where content displayed on mouseover
    was not captured in a screenshot. (bmo#1905468)
  * Fixed: Various stability fixes.
- renamed firefox-3781e3117706.patch to mozilla-bmo1905018.patch
  to conform with patch structure and naming for the package</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1723118400">- Mozilla Firefox 129.0
  https://www.mozilla.org/en-US/firefox/129.0/releasenotes
  MFSA 2024-33 (bsc#1228648))
  * CVE-2024-7518 (bmo#1875354)
    Fullscreen notification dialog can be obscured by document content
  * CVE-2024-7519 (bmo#1902307)
    Out of bounds memory access in graphics shared memory handling
  * CVE-2024-7520 (bmo#1903041)
    Type confusion in WebAssembly
  * CVE-2024-7521 (bmo#1904644)
    Incomplete WebAssembly exception handing
  * CVE-2024-7522 (bmo#1906727)
    Out of bounds read in editor component
  * CVE-2024-7523 (bmo#1908344)
    Document content could partially obscure security prompts
  * CVE-2024-7524 (bmo#1909241)
    CSP strict-dynamic bypass using web-compatibility shims
  * CVE-2024-7525 (bmo#1909298)
    Missing permission check when creating a StreamFilter
  * CVE-2024-7526 (bmo#1910306)
    Uninitialized memory used by WebGL
  * CVE-2024-7527 (bmo#1871303)
    Use-after-free in JavaScript garbage collection
  * CVE-2024-7528 (bmo#1895951)
    Use-after-free in IndexedDB
  * CVE-2024-7529 (bmo#1903187)
    Document content could partially obscure security prompts
  * CVE-2024-7530 (bmo#1904011)
    Use-after-free in JavaScript code coverage collection
  * CVE-2024-7531 (bmo#1905691)
    PK11_Encrypt using CKM_CHACHA20 can reveal plaintext on Intel
    Sandy Bridge machines
- removed obsolete patches
  mozilla-bmo1905018.patch
  mozilla-bmo1504834-part3.patch
  mozilla-bmo1512162.patch
  mozilla-bmo1822730.patch
  mozilla-fix-aarch64-libopus.patch
  mozilla-partial-revert-1768632.patch
- requires NSS 3.102.1
- extended mozilla-silence-no-return-type.patch</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1723809600">- Mozilla Firefox 129.0.1
  * Fixed playback issues on some websites with copyrighted video
    served via digital rights management. (bmo#1911283)
  * Fixed a crash when dragging a video file onto some websites
    (bmo#1910990)</changelog>
  <changelog author="Christian Boltz &lt;suse-beta@cboltz.de&gt;" date="1724500800">- _constraints: increase RAM on s390x to fix the build</changelog>
  <changelog author="pallas wept &lt;pallaswept@proton.me&gt;" date="1725451200">- Added mozilla-bmo1746799.patch to fix incorrect audio volume scaling</changelog>
  <changelog author="Marvin Friedrich &lt;contact@marvinf.com&gt;" date="1725624000">- Update dependency on clang-devel from LLVM15 to LLVM18</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1725710400">- Mozilla Firefox 130.0
  https://www.mozilla.org/en-US/firefox/130.0/releasenotes
  MFSA 2024-39 (bsc#1229821)
  * CVE-2024-8385 (bmo#1911909)
    WASM type confusion involving ArrayTypes
  * CVE-2024-8381 (bmo#1912715)
    Type confusion when looking up a property name in a "with" block
  * CVE-2024-8388 (bmo#1902996, bmo#1839074, bmo#1865413, bmo#1868970,
    bmo#1873367, bmo#1877820, bmo#1884642, bmo#1886469, bmo#1894326,
    bmo#1894891, bmo#1897648)
    Fullscreen notice on Android could be hidden under various
    panels and OS prompts
  * CVE-2024-8382 (bmo#1906744)
    Internal event interfaces were exposed to web content when
    browser EventHandler listener callbacks ran
  * CVE-2024-8383 (bmo#1908496)
    Firefox did not ask before openings news: links in an
    external application
  * CVE-2024-8384 (bmo#1911288)
    Garbage collection could mis-color cross-compartment objects
    in OOM conditions
  * CVE-2024-8386 (bmo#1907032, bmo#1909163, bmo#1909529)
    SelectElements could be shown over another site if popups are
    allowed
  * CVE-2024-8387 (bmo#1857607, bmo#1911858, bmo#1914009)
    Memory safety bugs fixed in Firefox 130, Firefox ESR 128.2,
    and Thunderbird 128.2
  * CVE-2024-8389 (bmo#1907230, bmo#1909367)
    Memory safety bugs fixed in Firefox 130
- requires NSS 3.103
- removed obsolete patches
  mozilla-bmo1898476.patch
  mozilla-bmo1907511.patch
- added mozilla-bmo1916038.patch to fix AVIF decoding (bsc#1230500)</changelog>
  <changelog author="Manfred Hollstein &lt;manfred.h@gmx.net&gt;" date="1726660800">- Firefox 130.0.1 Release
  https://www.mozilla.org/en-US/firefox/130.0.1/releasenotes
  * Enterprise: Added an enterprise policy to disable the
  * Firefox Labs* section in *Settings*. (bmo#1911826)
  * Fixed a recent regression causing some UI elements to
    be rendered as left-to-right instead of right-to-left for
    users of our Saraiki localization. (bmo#1917175)
  * Linux: Fixed black rendering of AVIF images when
    Firefox is built with GCC. (bmo#1916038)
- removed obsolete patches
  mozilla-bmo1916038.patch</changelog>
  <changelog author="Manfred Hollstein &lt;manfred.h@gmx.net&gt;" date="1726920000">- Don't use clang18-devel on Leap as they don't have that version.</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1727611200">- Firefox 131.0
  https://www.mozilla.org/en-US/firefox/131.0/releasenotes/
  MFSA 2024-46 (bsc#1230979)
  * CVE-2024-9391 (bmo#1892407)
    Prevent users from exiting full-screen mode in Firefox Focus
    for Android
  * CVE-2024-9392 (bmo#1899154, bmo#1905843)
    Compromised content process can bypass site isolation
  * CVE-2024-9393 (bmo#1918301)
    Cross-origin access to PDF contents through multipart responses
  * CVE-2024-9394 (bmo#1918874)
    Cross-origin access to JSON contents through multipart responses
  * CVE-2024-9395 (bmo#1906024)
    Specially crafted filename could be used to obscure download type
  * CVE-2024-9396 (bmo#1912471)
    Potential memory corruption may occur when cloning certain objects
  * CVE-2024-9397 (bmo#1916659)
    Potential directory upload bypass via clickjacking
  * CVE-2024-9398 (bmo#1881037)
    External protocol handlers could be enumerated via popups
  * CVE-2024-9399 (bmo#1907726)
    Specially crafted WebTransport requests could lead to denial
    of service
  * CVE-2024-9400 (bmo#1915249)
    Potential memory corruption during JIT compilation
  * CVE-2024-9401 (bmo#1872744, bmo#1897792, bmo#1911317, bmo#1916476)
    Memory safety bugs fixed in Firefox 131, Firefox ESR 115.16,
    Firefox ESR 128.3, Thunderbird 131, and Thunderbird 128.3
  * CVE-2024-9402 (bmo#1872744, bmo#1897792, bmo#1911317, bmo#1913445,
    bmo#1914106, bmo#1914475, bmo#1914963, bmo#1915008, bmo#1916476)
    Memory safety bugs fixed in Firefox 131, Firefox ESR 128.3,
    Thunderbird 131, and Thunderbird 128.3
  * CVE-2024-9403 (bmo#1917807)
    Memory safety bugs fixed in Firefox 131 and Thunderbird 131
- requires NSS 3.104
- rebased patches</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1728475200">- Mozilla Firefox 131.0.2
  MFSA 2024-51 (bsc#1231413)
  * CVE-2024-9680 (bmo#1923344)
    Use-after-free in Animation timeline</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1729166400">- Mozilla Firefox 131.0.3
  * some users could not access the Bill Pay portion of their
    bank's site (bmo#1923500)
  * some VR180 and 360 videos were not properly rendering on YouTube
    (bmo#1922278)
  * Fixed a crash that Windows users with Avast or AVG security
    software were experiencing when visiting certain sites. (bmo#1919678)
  * "List all tabs" button was not able to be moved from the toolbar
    (bmo#1918681)
  NFSA 2024-53
  * CVE-2024-9936 (bmo#1920381)
    Undefined behavior in selection node cache
- remove obsolete mozilla-rust-disable-future-incompat.patch</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1730116800">- Mozilla Firefox 132.0
  https://www.mozilla.org/en-US/firefox/132.0/releasenotes
  MFSA 2024-55 (bsc#1231879)
  * CVE-2024-10458 (bmo#1921733)
    Permission leak via embed or object elements
  * CVE-2024-10459 (bmo#1919087)
    Use-after-free in layout with accessibility
  * CVE-2024-10460 (bmo#1912537)
    Confusing display of origin for external protocol handler prompt
  * CVE-2024-10461 (bmo#1914521)
    XSS due to Content-Disposition being ignored in
    multipart/x-mixed-replace response
  * CVE-2024-10462 (bmo#1920423)
    Origin of permission prompt could be spoofed by long URL
  * CVE-2024-10463 (bmo#1920800)
    Cross origin video frame leak
  * CVE-2024-10468 (bmo#1914982)
    Race conditions in IndexedDB
  * CVE-2024-10464 (bmo#1913000)
    History interface could have been used to cause a Denial of
    Service condition in the browser
  * CVE-2024-10465 (bmo#1918853)
    Clipboard "paste" button persisted across tabs
  * CVE-2024-10466 (bmo#1924154)
    DOM push subscription message could hang Firefox
  * CVE-2024-10467 (bmo#1829029, bmo#1888538, bmo#1900394, bmo#1904059,
    bmo#1917742, bmo#1919809, bmo#1923706)
    Memory safety bugs fixed in Firefox 132, Thunderbird 132,
    Firefox ESR 128.4, and Thunderbird 128.4
- requires NSS 3.105
- rebased patches</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1730808000">- Mozilla Firefox 132.0.1
  * Fixed issues causing intermittent video playback problems on
    some sites. (bmo#1928484, bmo#1928798)
- remove KDE integration patches
  - mozilla-kde.patch
  - firefox-kde.patch
  on KDE use these settings instead
  widget.use-xdg-desktop-portal.file-picker=1
  widget.use-xdg-desktop-portal.mime-handler=1
  (those are set by the latest branding package as well)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1731240000">- require xdg-desktop-portal (boo#1233166)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1731672000">- Mozilla Firefox 132.0.2
  * Fixed possible errors when playing encrypted media content
    through some streaming providers. (bmo#1929491)
  * Added a mitigation to help reduce the frequency of duplicated
    push notifications reported by some users. (bmo#1928868)
  * Fixed hangs when printing from some sites when using the system
    print dialog. (bmo#1898184)
  * Fixed a crash which could occur when using Microsoft SSO on macOS
    (bmo#1929622)
  * Fixed a crash in the Network Monitor developer tool which could
    occur in some circumstances. (bmo#1924882)</changelog>
</package>
<package pkgid="a99f13a51128071278b0ad978adb4ac3424a25c8d3e8d579d98371ff333e0ee6205ce005f6ec5063bbaf62336c7783fbeca7befaa08fa917a3a9cacb80cf6a23" name="MozillaFirefox-translations-common" arch="x86_64">
  <version epoch="0" ver="132.0.1" rel="1.1"/>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1718107200">- Mozilla Firefox 127.0
  https://www.mozilla.org/en-US/firefox/127.0/releasenotes
  MFSA 2024-25 (bsc#1226027)
  * CVE-2024-5687 (bmo#1889066)
    An incorrect principal could have been used when opening new tabs
  * CVE-2024-5688 (bmo#1895086)
    Use-after-free in JavaScript object transplant
  * CVE-2024-5689 (bmo#1389707)
    User confusion and possible phishing vector via Firefox Screenshots
  * CVE-2024-5690 (bmo#1883693)
    External protocol handlers leaked by timing attack
  * CVE-2024-5691 (bmo#1888695)
    Sandboxed iframes were able to bypass sandbox restrictions to
    open a new window
  * CVE-2024-5692 (bmo#1837514, bmo#1891234)
    Bypass of file name restrictions during saving
  * CVE-2024-5693 (bmo#1891319)
    Cross-Origin Image leak via Offscreen Canvas
  * CVE-2024-5694 (bmo#1895055)
    Use-after-free in JavaScript Strings
  * CVE-2024-5695 (bmo#1895579)
    Memory Corruption using allocation using out-of-memory conditions
  * CVE-2024-5696 (bmo#1896555)
    Memory Corruption in Text Fragments
  * CVE-2024-5697 (bmo#1414937)
    Website was able to detect when Firefox was taking a
    screenshot of them
  * CVE-2024-5698 (bmo#1828259)
    Data-list could have overlaid address bar
  * CVE-2024-5699 (bmo#1891349)
    Cookie prefixes not treated as case-sensitive
  * CVE-2024-5700 (bmo#1862809, bmo#1889355, bmo#1893388, bmo#1895123)
    Memory safety bugs fixed in Firefox 127, Firefox ESR 115.12,
    and Thunderbird 115.12
  * CVE-2024-5701 (bmo#1890909, bmo#1891422, bmo#1893915,
    bmo#1894047, bmo#1896024)
    Memory safety bugs fixed in Firefox 127
- removed obsolete mozilla-bmo1886378.patch</changelog>
  <changelog author="Martin Sirringhaus &lt;martin.sirringhaus@suse.com&gt;" date="1719576000">- Fix GNOME search provider (boo#1225278)</changelog>
  <changelog author="Andrei Dziahel &lt;develop7@develop7.info&gt;" date="1719835200">- Mozilla Firefox 127.0.2
  * Fixed an issue where YouTube playback may experience stalling under
    certain conditions (bmo#1900191, bmo#1878510).
  * Fixed an issue where the Private Window icon was displayed in the taskbar
    on Windows when browser.privateWindowSeparation.enabled was
    set to false (bmo#1901840).
- Mozilla Firefox 127.0.1
  * Fixed an issue where users with a primary password set on their profile
    could lose their previous session of tabs upon upgrading if they dismissed
    the primary password prompt (bmo#1901899).
  * Fixed an issue where Linux users with accessibility.monoaudio.enable set
    to true were experiencing slow audio speeds (bmo#1900972).
  * Fixed an issue where, in some circumstances, the Firefox installer
    on Windows failed to complete the installation (bmo#1896868).
  * Fixed an issue causing Firefox to incorrectly reject cookies
    for certain websites (bmo#1901325).</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1720440000">- Mozilla Firefox 128.0
  https://www.mozilla.org/en-US/firefox/128.0/releasenotes
  MFSA 2024-29 (bsc#1226316)
  * CVE-2024-6605 (bmo#1836786)
    Firefox Android missed activation delay to prevent tapjacking
  * CVE-2024-6606 (bmo#1902305)
    Out-of-bounds read in clipboard component
  * CVE-2024-6607 (bmo#1694513)
    Leaving pointerlock by pressing the escape key could be
    prevented
  * CVE-2024-6608 (bmo#1743329)
    Cursor could be moved out of the viewport using pointerlock.
  * CVE-2024-6609 (bmo#1839258)
    Memory corruption in NSS
  * CVE-2024-6610 (bmo#1883396)
    Form validation popups could block exiting full-screen mode
  * CVE-2024-6600 (bmo#1888340)
    Memory corruption in WebGL API
  * CVE-2024-6601 (bmo#1890748)
    Race condition in permission assignment
  * CVE-2024-6602 (bmo#1895032)
    Memory corruption in NSS
  * CVE-2024-6603 (bmo#1895081)
    Memory corruption in thread creation
  * CVE-2024-6611 (bmo#1844827)
    Incorrect handling of SameSite cookies
  * CVE-2024-6612 (bmo#1880374)
    CSP violation leakage when using devtools
  * CVE-2024-6613 (bmo#1900523)
    Incorrect listing of stack frames
  * CVE-2024-6614 (bmo#1902983)
    Incorrect listing of stack frames
  * CVE-2024-6604 (bmo#1748105, bmo#1837550, bmo#1884266)
    Memory safety bugs fixed in Firefox 128, Firefox ESR 115.13,
    and Thunderbird 115.13
  * CVE-2024-6615 (bmo#1892875, bmo#1894428, bmo#1898364)
    Memory safety bugs fixed in Firefox 128
- requires
  NSS 3.101.1
  rust &gt;= 1.78
- update create-tar.sh
- add wayland upstream fixes (bmo#1907511, bmo#1898476)
  (mozilla-bmo1898476.patch and mozilla-bmo1907511.patch)</changelog>
  <changelog author="Martin Jambor &lt;mjambor@suse.com&gt;" date="1721304000">- Add firefox-3781e3117706.patch to fix boo#1227856 aka bmo#1905018
  where an incompatible pointer assignment is not accepted in C by
  GCC 14.</changelog>
  <changelog author="Manfred Hollstein &lt;manfred.h@gmx.net&gt;" date="1722168000">- Firefox 128.0.3 Release
  * Fixed: Fixed an issue causing some sites to not load when
    connecting via HTTP/2. (bmo#1908161, bmo#1909666)
  * Fixed: Fixed collapsed table rows not appearing when expected
    in some situations. (bmo#1907789)
  * Fixed: Fixed the Windows on-screen keyboard potentially
    concealing the webpage when displayed. (bmo#1907766)
- Firefox 128.0.2 Release
  * Fixed: Fixed an audio echo in video calls on macOS under
    certain conditions. (bmo#1908539)
  * Fixed: Fixed an issue where the Adguard extension popup was
    not displaying. (bmo#1906132)
  * Fixed: Fixed an issue causing some screen readers to fail to
    read when navigating by character in rich text editors. (Bug
    1905021)
  * Fixed: Fixed visual glitches when dark mode is enabled in
    Windows ARM devices. (bmo#1897444)
  * Fixed: Fixed an issue causing NTLM authentication failure.
    (bmo#1908115)
  * Fixed: Fixed an issue where content displayed on mouseover
    was not captured in a screenshot. (bmo#1905468)
  * Fixed: Various stability fixes.
- renamed firefox-3781e3117706.patch to mozilla-bmo1905018.patch
  to conform with patch structure and naming for the package</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1723118400">- Mozilla Firefox 129.0
  https://www.mozilla.org/en-US/firefox/129.0/releasenotes
  MFSA 2024-33 (bsc#1228648))
  * CVE-2024-7518 (bmo#1875354)
    Fullscreen notification dialog can be obscured by document content
  * CVE-2024-7519 (bmo#1902307)
    Out of bounds memory access in graphics shared memory handling
  * CVE-2024-7520 (bmo#1903041)
    Type confusion in WebAssembly
  * CVE-2024-7521 (bmo#1904644)
    Incomplete WebAssembly exception handing
  * CVE-2024-7522 (bmo#1906727)
    Out of bounds read in editor component
  * CVE-2024-7523 (bmo#1908344)
    Document content could partially obscure security prompts
  * CVE-2024-7524 (bmo#1909241)
    CSP strict-dynamic bypass using web-compatibility shims
  * CVE-2024-7525 (bmo#1909298)
    Missing permission check when creating a StreamFilter
  * CVE-2024-7526 (bmo#1910306)
    Uninitialized memory used by WebGL
  * CVE-2024-7527 (bmo#1871303)
    Use-after-free in JavaScript garbage collection
  * CVE-2024-7528 (bmo#1895951)
    Use-after-free in IndexedDB
  * CVE-2024-7529 (bmo#1903187)
    Document content could partially obscure security prompts
  * CVE-2024-7530 (bmo#1904011)
    Use-after-free in JavaScript code coverage collection
  * CVE-2024-7531 (bmo#1905691)
    PK11_Encrypt using CKM_CHACHA20 can reveal plaintext on Intel
    Sandy Bridge machines
- removed obsolete patches
  mozilla-bmo1905018.patch
  mozilla-bmo1504834-part3.patch
  mozilla-bmo1512162.patch
  mozilla-bmo1822730.patch
  mozilla-fix-aarch64-libopus.patch
  mozilla-partial-revert-1768632.patch
- requires NSS 3.102.1
- extended mozilla-silence-no-return-type.patch</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1723809600">- Mozilla Firefox 129.0.1
  * Fixed playback issues on some websites with copyrighted video
    served via digital rights management. (bmo#1911283)
  * Fixed a crash when dragging a video file onto some websites
    (bmo#1910990)</changelog>
  <changelog author="Christian Boltz &lt;suse-beta@cboltz.de&gt;" date="1724500800">- _constraints: increase RAM on s390x to fix the build</changelog>
  <changelog author="pallas wept &lt;pallaswept@proton.me&gt;" date="1725451200">- Added mozilla-bmo1746799.patch to fix incorrect audio volume scaling</changelog>
  <changelog author="Marvin Friedrich &lt;contact@marvinf.com&gt;" date="1725624000">- Update dependency on clang-devel from LLVM15 to LLVM18</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1725710400">- Mozilla Firefox 130.0
  https://www.mozilla.org/en-US/firefox/130.0/releasenotes
  MFSA 2024-39 (bsc#1229821)
  * CVE-2024-8385 (bmo#1911909)
    WASM type confusion involving ArrayTypes
  * CVE-2024-8381 (bmo#1912715)
    Type confusion when looking up a property name in a "with" block
  * CVE-2024-8388 (bmo#1902996, bmo#1839074, bmo#1865413, bmo#1868970,
    bmo#1873367, bmo#1877820, bmo#1884642, bmo#1886469, bmo#1894326,
    bmo#1894891, bmo#1897648)
    Fullscreen notice on Android could be hidden under various
    panels and OS prompts
  * CVE-2024-8382 (bmo#1906744)
    Internal event interfaces were exposed to web content when
    browser EventHandler listener callbacks ran
  * CVE-2024-8383 (bmo#1908496)
    Firefox did not ask before openings news: links in an
    external application
  * CVE-2024-8384 (bmo#1911288)
    Garbage collection could mis-color cross-compartment objects
    in OOM conditions
  * CVE-2024-8386 (bmo#1907032, bmo#1909163, bmo#1909529)
    SelectElements could be shown over another site if popups are
    allowed
  * CVE-2024-8387 (bmo#1857607, bmo#1911858, bmo#1914009)
    Memory safety bugs fixed in Firefox 130, Firefox ESR 128.2,
    and Thunderbird 128.2
  * CVE-2024-8389 (bmo#1907230, bmo#1909367)
    Memory safety bugs fixed in Firefox 130
- requires NSS 3.103
- removed obsolete patches
  mozilla-bmo1898476.patch
  mozilla-bmo1907511.patch
- added mozilla-bmo1916038.patch to fix AVIF decoding (bsc#1230500)</changelog>
  <changelog author="Manfred Hollstein &lt;manfred.h@gmx.net&gt;" date="1726660800">- Firefox 130.0.1 Release
  https://www.mozilla.org/en-US/firefox/130.0.1/releasenotes
  * Enterprise: Added an enterprise policy to disable the
  * Firefox Labs* section in *Settings*. (bmo#1911826)
  * Fixed a recent regression causing some UI elements to
    be rendered as left-to-right instead of right-to-left for
    users of our Saraiki localization. (bmo#1917175)
  * Linux: Fixed black rendering of AVIF images when
    Firefox is built with GCC. (bmo#1916038)
- removed obsolete patches
  mozilla-bmo1916038.patch</changelog>
  <changelog author="Manfred Hollstein &lt;manfred.h@gmx.net&gt;" date="1726920000">- Don't use clang18-devel on Leap as they don't have that version.</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1727611200">- Firefox 131.0
  https://www.mozilla.org/en-US/firefox/131.0/releasenotes/
  MFSA 2024-46 (bsc#1230979)
  * CVE-2024-9391 (bmo#1892407)
    Prevent users from exiting full-screen mode in Firefox Focus
    for Android
  * CVE-2024-9392 (bmo#1899154, bmo#1905843)
    Compromised content process can bypass site isolation
  * CVE-2024-9393 (bmo#1918301)
    Cross-origin access to PDF contents through multipart responses
  * CVE-2024-9394 (bmo#1918874)
    Cross-origin access to JSON contents through multipart responses
  * CVE-2024-9395 (bmo#1906024)
    Specially crafted filename could be used to obscure download type
  * CVE-2024-9396 (bmo#1912471)
    Potential memory corruption may occur when cloning certain objects
  * CVE-2024-9397 (bmo#1916659)
    Potential directory upload bypass via clickjacking
  * CVE-2024-9398 (bmo#1881037)
    External protocol handlers could be enumerated via popups
  * CVE-2024-9399 (bmo#1907726)
    Specially crafted WebTransport requests could lead to denial
    of service
  * CVE-2024-9400 (bmo#1915249)
    Potential memory corruption during JIT compilation
  * CVE-2024-9401 (bmo#1872744, bmo#1897792, bmo#1911317, bmo#1916476)
    Memory safety bugs fixed in Firefox 131, Firefox ESR 115.16,
    Firefox ESR 128.3, Thunderbird 131, and Thunderbird 128.3
  * CVE-2024-9402 (bmo#1872744, bmo#1897792, bmo#1911317, bmo#1913445,
    bmo#1914106, bmo#1914475, bmo#1914963, bmo#1915008, bmo#1916476)
    Memory safety bugs fixed in Firefox 131, Firefox ESR 128.3,
    Thunderbird 131, and Thunderbird 128.3
  * CVE-2024-9403 (bmo#1917807)
    Memory safety bugs fixed in Firefox 131 and Thunderbird 131
- requires NSS 3.104
- rebased patches</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1728475200">- Mozilla Firefox 131.0.2
  MFSA 2024-51 (bsc#1231413)
  * CVE-2024-9680 (bmo#1923344)
    Use-after-free in Animation timeline</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1729166400">- Mozilla Firefox 131.0.3
  * some users could not access the Bill Pay portion of their
    bank's site (bmo#1923500)
  * some VR180 and 360 videos were not properly rendering on YouTube
    (bmo#1922278)
  * Fixed a crash that Windows users with Avast or AVG security
    software were experiencing when visiting certain sites. (bmo#1919678)
  * "List all tabs" button was not able to be moved from the toolbar
    (bmo#1918681)
  NFSA 2024-53
  * CVE-2024-9936 (bmo#1920381)
    Undefined behavior in selection node cache
- remove obsolete mozilla-rust-disable-future-incompat.patch</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1730116800">- Mozilla Firefox 132.0
  https://www.mozilla.org/en-US/firefox/132.0/releasenotes
  MFSA 2024-55 (bsc#1231879)
  * CVE-2024-10458 (bmo#1921733)
    Permission leak via embed or object elements
  * CVE-2024-10459 (bmo#1919087)
    Use-after-free in layout with accessibility
  * CVE-2024-10460 (bmo#1912537)
    Confusing display of origin for external protocol handler prompt
  * CVE-2024-10461 (bmo#1914521)
    XSS due to Content-Disposition being ignored in
    multipart/x-mixed-replace response
  * CVE-2024-10462 (bmo#1920423)
    Origin of permission prompt could be spoofed by long URL
  * CVE-2024-10463 (bmo#1920800)
    Cross origin video frame leak
  * CVE-2024-10468 (bmo#1914982)
    Race conditions in IndexedDB
  * CVE-2024-10464 (bmo#1913000)
    History interface could have been used to cause a Denial of
    Service condition in the browser
  * CVE-2024-10465 (bmo#1918853)
    Clipboard "paste" button persisted across tabs
  * CVE-2024-10466 (bmo#1924154)
    DOM push subscription message could hang Firefox
  * CVE-2024-10467 (bmo#1829029, bmo#1888538, bmo#1900394, bmo#1904059,
    bmo#1917742, bmo#1919809, bmo#1923706)
    Memory safety bugs fixed in Firefox 132, Thunderbird 132,
    Firefox ESR 128.4, and Thunderbird 128.4
- requires NSS 3.105
- rebased patches</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1730808000">- Mozilla Firefox 132.0.1
  * Fixed issues causing intermittent video playback problems on
    some sites. (bmo#1928484, bmo#1928798)
- remove KDE integration patches
  - mozilla-kde.patch
  - firefox-kde.patch
  on KDE use these settings instead
  widget.use-xdg-desktop-portal.file-picker=1
  widget.use-xdg-desktop-portal.mime-handler=1
  (those are set by the latest branding package as well)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1731240000">- require xdg-desktop-portal (boo#1233166)</changelog>
</package>
<package pkgid="8c356e20aed8c5c08cc6658a29a9dd12a71e3abd973e710a73284a6c670e5ecf9d799b2e76931d26b3919e0bec9e1d7518f0557d5ddb494b93f359e336769f5b" name="MozillaFirefox-translations-common" arch="x86_64">
  <version epoch="0" ver="132.0.2" rel="1.1"/>
  <changelog author="Martin Sirringhaus &lt;martin.sirringhaus@suse.com&gt;" date="1719576000">- Fix GNOME search provider (boo#1225278)</changelog>
  <changelog author="Andrei Dziahel &lt;develop7@develop7.info&gt;" date="1719835200">- Mozilla Firefox 127.0.2
  * Fixed an issue where YouTube playback may experience stalling under
    certain conditions (bmo#1900191, bmo#1878510).
  * Fixed an issue where the Private Window icon was displayed in the taskbar
    on Windows when browser.privateWindowSeparation.enabled was
    set to false (bmo#1901840).
- Mozilla Firefox 127.0.1
  * Fixed an issue where users with a primary password set on their profile
    could lose their previous session of tabs upon upgrading if they dismissed
    the primary password prompt (bmo#1901899).
  * Fixed an issue where Linux users with accessibility.monoaudio.enable set
    to true were experiencing slow audio speeds (bmo#1900972).
  * Fixed an issue where, in some circumstances, the Firefox installer
    on Windows failed to complete the installation (bmo#1896868).
  * Fixed an issue causing Firefox to incorrectly reject cookies
    for certain websites (bmo#1901325).</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1720440000">- Mozilla Firefox 128.0
  https://www.mozilla.org/en-US/firefox/128.0/releasenotes
  MFSA 2024-29 (bsc#1226316)
  * CVE-2024-6605 (bmo#1836786)
    Firefox Android missed activation delay to prevent tapjacking
  * CVE-2024-6606 (bmo#1902305)
    Out-of-bounds read in clipboard component
  * CVE-2024-6607 (bmo#1694513)
    Leaving pointerlock by pressing the escape key could be
    prevented
  * CVE-2024-6608 (bmo#1743329)
    Cursor could be moved out of the viewport using pointerlock.
  * CVE-2024-6609 (bmo#1839258)
    Memory corruption in NSS
  * CVE-2024-6610 (bmo#1883396)
    Form validation popups could block exiting full-screen mode
  * CVE-2024-6600 (bmo#1888340)
    Memory corruption in WebGL API
  * CVE-2024-6601 (bmo#1890748)
    Race condition in permission assignment
  * CVE-2024-6602 (bmo#1895032)
    Memory corruption in NSS
  * CVE-2024-6603 (bmo#1895081)
    Memory corruption in thread creation
  * CVE-2024-6611 (bmo#1844827)
    Incorrect handling of SameSite cookies
  * CVE-2024-6612 (bmo#1880374)
    CSP violation leakage when using devtools
  * CVE-2024-6613 (bmo#1900523)
    Incorrect listing of stack frames
  * CVE-2024-6614 (bmo#1902983)
    Incorrect listing of stack frames
  * CVE-2024-6604 (bmo#1748105, bmo#1837550, bmo#1884266)
    Memory safety bugs fixed in Firefox 128, Firefox ESR 115.13,
    and Thunderbird 115.13
  * CVE-2024-6615 (bmo#1892875, bmo#1894428, bmo#1898364)
    Memory safety bugs fixed in Firefox 128
- requires
  NSS 3.101.1
  rust &gt;= 1.78
- update create-tar.sh
- add wayland upstream fixes (bmo#1907511, bmo#1898476)
  (mozilla-bmo1898476.patch and mozilla-bmo1907511.patch)</changelog>
  <changelog author="Martin Jambor &lt;mjambor@suse.com&gt;" date="1721304000">- Add firefox-3781e3117706.patch to fix boo#1227856 aka bmo#1905018
  where an incompatible pointer assignment is not accepted in C by
  GCC 14.</changelog>
  <changelog author="Manfred Hollstein &lt;manfred.h@gmx.net&gt;" date="1722168000">- Firefox 128.0.3 Release
  * Fixed: Fixed an issue causing some sites to not load when
    connecting via HTTP/2. (bmo#1908161, bmo#1909666)
  * Fixed: Fixed collapsed table rows not appearing when expected
    in some situations. (bmo#1907789)
  * Fixed: Fixed the Windows on-screen keyboard potentially
    concealing the webpage when displayed. (bmo#1907766)
- Firefox 128.0.2 Release
  * Fixed: Fixed an audio echo in video calls on macOS under
    certain conditions. (bmo#1908539)
  * Fixed: Fixed an issue where the Adguard extension popup was
    not displaying. (bmo#1906132)
  * Fixed: Fixed an issue causing some screen readers to fail to
    read when navigating by character in rich text editors. (Bug
    1905021)
  * Fixed: Fixed visual glitches when dark mode is enabled in
    Windows ARM devices. (bmo#1897444)
  * Fixed: Fixed an issue causing NTLM authentication failure.
    (bmo#1908115)
  * Fixed: Fixed an issue where content displayed on mouseover
    was not captured in a screenshot. (bmo#1905468)
  * Fixed: Various stability fixes.
- renamed firefox-3781e3117706.patch to mozilla-bmo1905018.patch
  to conform with patch structure and naming for the package</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1723118400">- Mozilla Firefox 129.0
  https://www.mozilla.org/en-US/firefox/129.0/releasenotes
  MFSA 2024-33 (bsc#1228648))
  * CVE-2024-7518 (bmo#1875354)
    Fullscreen notification dialog can be obscured by document content
  * CVE-2024-7519 (bmo#1902307)
    Out of bounds memory access in graphics shared memory handling
  * CVE-2024-7520 (bmo#1903041)
    Type confusion in WebAssembly
  * CVE-2024-7521 (bmo#1904644)
    Incomplete WebAssembly exception handing
  * CVE-2024-7522 (bmo#1906727)
    Out of bounds read in editor component
  * CVE-2024-7523 (bmo#1908344)
    Document content could partially obscure security prompts
  * CVE-2024-7524 (bmo#1909241)
    CSP strict-dynamic bypass using web-compatibility shims
  * CVE-2024-7525 (bmo#1909298)
    Missing permission check when creating a StreamFilter
  * CVE-2024-7526 (bmo#1910306)
    Uninitialized memory used by WebGL
  * CVE-2024-7527 (bmo#1871303)
    Use-after-free in JavaScript garbage collection
  * CVE-2024-7528 (bmo#1895951)
    Use-after-free in IndexedDB
  * CVE-2024-7529 (bmo#1903187)
    Document content could partially obscure security prompts
  * CVE-2024-7530 (bmo#1904011)
    Use-after-free in JavaScript code coverage collection
  * CVE-2024-7531 (bmo#1905691)
    PK11_Encrypt using CKM_CHACHA20 can reveal plaintext on Intel
    Sandy Bridge machines
- removed obsolete patches
  mozilla-bmo1905018.patch
  mozilla-bmo1504834-part3.patch
  mozilla-bmo1512162.patch
  mozilla-bmo1822730.patch
  mozilla-fix-aarch64-libopus.patch
  mozilla-partial-revert-1768632.patch
- requires NSS 3.102.1
- extended mozilla-silence-no-return-type.patch</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1723809600">- Mozilla Firefox 129.0.1
  * Fixed playback issues on some websites with copyrighted video
    served via digital rights management. (bmo#1911283)
  * Fixed a crash when dragging a video file onto some websites
    (bmo#1910990)</changelog>
  <changelog author="Christian Boltz &lt;suse-beta@cboltz.de&gt;" date="1724500800">- _constraints: increase RAM on s390x to fix the build</changelog>
  <changelog author="pallas wept &lt;pallaswept@proton.me&gt;" date="1725451200">- Added mozilla-bmo1746799.patch to fix incorrect audio volume scaling</changelog>
  <changelog author="Marvin Friedrich &lt;contact@marvinf.com&gt;" date="1725624000">- Update dependency on clang-devel from LLVM15 to LLVM18</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1725710400">- Mozilla Firefox 130.0
  https://www.mozilla.org/en-US/firefox/130.0/releasenotes
  MFSA 2024-39 (bsc#1229821)
  * CVE-2024-8385 (bmo#1911909)
    WASM type confusion involving ArrayTypes
  * CVE-2024-8381 (bmo#1912715)
    Type confusion when looking up a property name in a "with" block
  * CVE-2024-8388 (bmo#1902996, bmo#1839074, bmo#1865413, bmo#1868970,
    bmo#1873367, bmo#1877820, bmo#1884642, bmo#1886469, bmo#1894326,
    bmo#1894891, bmo#1897648)
    Fullscreen notice on Android could be hidden under various
    panels and OS prompts
  * CVE-2024-8382 (bmo#1906744)
    Internal event interfaces were exposed to web content when
    browser EventHandler listener callbacks ran
  * CVE-2024-8383 (bmo#1908496)
    Firefox did not ask before openings news: links in an
    external application
  * CVE-2024-8384 (bmo#1911288)
    Garbage collection could mis-color cross-compartment objects
    in OOM conditions
  * CVE-2024-8386 (bmo#1907032, bmo#1909163, bmo#1909529)
    SelectElements could be shown over another site if popups are
    allowed
  * CVE-2024-8387 (bmo#1857607, bmo#1911858, bmo#1914009)
    Memory safety bugs fixed in Firefox 130, Firefox ESR 128.2,
    and Thunderbird 128.2
  * CVE-2024-8389 (bmo#1907230, bmo#1909367)
    Memory safety bugs fixed in Firefox 130
- requires NSS 3.103
- removed obsolete patches
  mozilla-bmo1898476.patch
  mozilla-bmo1907511.patch
- added mozilla-bmo1916038.patch to fix AVIF decoding (bsc#1230500)</changelog>
  <changelog author="Manfred Hollstein &lt;manfred.h@gmx.net&gt;" date="1726660800">- Firefox 130.0.1 Release
  https://www.mozilla.org/en-US/firefox/130.0.1/releasenotes
  * Enterprise: Added an enterprise policy to disable the
  * Firefox Labs* section in *Settings*. (bmo#1911826)
  * Fixed a recent regression causing some UI elements to
    be rendered as left-to-right instead of right-to-left for
    users of our Saraiki localization. (bmo#1917175)
  * Linux: Fixed black rendering of AVIF images when
    Firefox is built with GCC. (bmo#1916038)
- removed obsolete patches
  mozilla-bmo1916038.patch</changelog>
  <changelog author="Manfred Hollstein &lt;manfred.h@gmx.net&gt;" date="1726920000">- Don't use clang18-devel on Leap as they don't have that version.</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1727611200">- Firefox 131.0
  https://www.mozilla.org/en-US/firefox/131.0/releasenotes/
  MFSA 2024-46 (bsc#1230979)
  * CVE-2024-9391 (bmo#1892407)
    Prevent users from exiting full-screen mode in Firefox Focus
    for Android
  * CVE-2024-9392 (bmo#1899154, bmo#1905843)
    Compromised content process can bypass site isolation
  * CVE-2024-9393 (bmo#1918301)
    Cross-origin access to PDF contents through multipart responses
  * CVE-2024-9394 (bmo#1918874)
    Cross-origin access to JSON contents through multipart responses
  * CVE-2024-9395 (bmo#1906024)
    Specially crafted filename could be used to obscure download type
  * CVE-2024-9396 (bmo#1912471)
    Potential memory corruption may occur when cloning certain objects
  * CVE-2024-9397 (bmo#1916659)
    Potential directory upload bypass via clickjacking
  * CVE-2024-9398 (bmo#1881037)
    External protocol handlers could be enumerated via popups
  * CVE-2024-9399 (bmo#1907726)
    Specially crafted WebTransport requests could lead to denial
    of service
  * CVE-2024-9400 (bmo#1915249)
    Potential memory corruption during JIT compilation
  * CVE-2024-9401 (bmo#1872744, bmo#1897792, bmo#1911317, bmo#1916476)
    Memory safety bugs fixed in Firefox 131, Firefox ESR 115.16,
    Firefox ESR 128.3, Thunderbird 131, and Thunderbird 128.3
  * CVE-2024-9402 (bmo#1872744, bmo#1897792, bmo#1911317, bmo#1913445,
    bmo#1914106, bmo#1914475, bmo#1914963, bmo#1915008, bmo#1916476)
    Memory safety bugs fixed in Firefox 131, Firefox ESR 128.3,
    Thunderbird 131, and Thunderbird 128.3
  * CVE-2024-9403 (bmo#1917807)
    Memory safety bugs fixed in Firefox 131 and Thunderbird 131
- requires NSS 3.104
- rebased patches</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1728475200">- Mozilla Firefox 131.0.2
  MFSA 2024-51 (bsc#1231413)
  * CVE-2024-9680 (bmo#1923344)
    Use-after-free in Animation timeline</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1729166400">- Mozilla Firefox 131.0.3
  * some users could not access the Bill Pay portion of their
    bank's site (bmo#1923500)
  * some VR180 and 360 videos were not properly rendering on YouTube
    (bmo#1922278)
  * Fixed a crash that Windows users with Avast or AVG security
    software were experiencing when visiting certain sites. (bmo#1919678)
  * "List all tabs" button was not able to be moved from the toolbar
    (bmo#1918681)
  NFSA 2024-53
  * CVE-2024-9936 (bmo#1920381)
    Undefined behavior in selection node cache
- remove obsolete mozilla-rust-disable-future-incompat.patch</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1730116800">- Mozilla Firefox 132.0
  https://www.mozilla.org/en-US/firefox/132.0/releasenotes
  MFSA 2024-55 (bsc#1231879)
  * CVE-2024-10458 (bmo#1921733)
    Permission leak via embed or object elements
  * CVE-2024-10459 (bmo#1919087)
    Use-after-free in layout with accessibility
  * CVE-2024-10460 (bmo#1912537)
    Confusing display of origin for external protocol handler prompt
  * CVE-2024-10461 (bmo#1914521)
    XSS due to Content-Disposition being ignored in
    multipart/x-mixed-replace response
  * CVE-2024-10462 (bmo#1920423)
    Origin of permission prompt could be spoofed by long URL
  * CVE-2024-10463 (bmo#1920800)
    Cross origin video frame leak
  * CVE-2024-10468 (bmo#1914982)
    Race conditions in IndexedDB
  * CVE-2024-10464 (bmo#1913000)
    History interface could have been used to cause a Denial of
    Service condition in the browser
  * CVE-2024-10465 (bmo#1918853)
    Clipboard "paste" button persisted across tabs
  * CVE-2024-10466 (bmo#1924154)
    DOM push subscription message could hang Firefox
  * CVE-2024-10467 (bmo#1829029, bmo#1888538, bmo#1900394, bmo#1904059,
    bmo#1917742, bmo#1919809, bmo#1923706)
    Memory safety bugs fixed in Firefox 132, Thunderbird 132,
    Firefox ESR 128.4, and Thunderbird 128.4
- requires NSS 3.105
- rebased patches</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1730808000">- Mozilla Firefox 132.0.1
  * Fixed issues causing intermittent video playback problems on
    some sites. (bmo#1928484, bmo#1928798)
- remove KDE integration patches
  - mozilla-kde.patch
  - firefox-kde.patch
  on KDE use these settings instead
  widget.use-xdg-desktop-portal.file-picker=1
  widget.use-xdg-desktop-portal.mime-handler=1
  (those are set by the latest branding package as well)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1731240000">- require xdg-desktop-portal (boo#1233166)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1731672000">- Mozilla Firefox 132.0.2
  * Fixed possible errors when playing encrypted media content
    through some streaming providers. (bmo#1929491)
  * Added a mitigation to help reduce the frequency of duplicated
    push notifications reported by some users. (bmo#1928868)
  * Fixed hangs when printing from some sites when using the system
    print dialog. (bmo#1898184)
  * Fixed a crash which could occur when using Microsoft SSO on macOS
    (bmo#1929622)
  * Fixed a crash in the Network Monitor developer tool which could
    occur in some circumstances. (bmo#1924882)</changelog>
</package>
<package pkgid="8b927b7eff40478ce751f62d9591e6c756aa45e56e123df714fd9fe74836bdbaadf485c539ed71f3ea3b5c67266efe50181c1dca9259faf9616286b2c8e8d86d" name="MozillaFirefox-translations-other" arch="x86_64">
  <version epoch="0" ver="132.0.1" rel="1.1"/>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1718107200">- Mozilla Firefox 127.0
  https://www.mozilla.org/en-US/firefox/127.0/releasenotes
  MFSA 2024-25 (bsc#1226027)
  * CVE-2024-5687 (bmo#1889066)
    An incorrect principal could have been used when opening new tabs
  * CVE-2024-5688 (bmo#1895086)
    Use-after-free in JavaScript object transplant
  * CVE-2024-5689 (bmo#1389707)
    User confusion and possible phishing vector via Firefox Screenshots
  * CVE-2024-5690 (bmo#1883693)
    External protocol handlers leaked by timing attack
  * CVE-2024-5691 (bmo#1888695)
    Sandboxed iframes were able to bypass sandbox restrictions to
    open a new window
  * CVE-2024-5692 (bmo#1837514, bmo#1891234)
    Bypass of file name restrictions during saving
  * CVE-2024-5693 (bmo#1891319)
    Cross-Origin Image leak via Offscreen Canvas
  * CVE-2024-5694 (bmo#1895055)
    Use-after-free in JavaScript Strings
  * CVE-2024-5695 (bmo#1895579)
    Memory Corruption using allocation using out-of-memory conditions
  * CVE-2024-5696 (bmo#1896555)
    Memory Corruption in Text Fragments
  * CVE-2024-5697 (bmo#1414937)
    Website was able to detect when Firefox was taking a
    screenshot of them
  * CVE-2024-5698 (bmo#1828259)
    Data-list could have overlaid address bar
  * CVE-2024-5699 (bmo#1891349)
    Cookie prefixes not treated as case-sensitive
  * CVE-2024-5700 (bmo#1862809, bmo#1889355, bmo#1893388, bmo#1895123)
    Memory safety bugs fixed in Firefox 127, Firefox ESR 115.12,
    and Thunderbird 115.12
  * CVE-2024-5701 (bmo#1890909, bmo#1891422, bmo#1893915,
    bmo#1894047, bmo#1896024)
    Memory safety bugs fixed in Firefox 127
- removed obsolete mozilla-bmo1886378.patch</changelog>
  <changelog author="Martin Sirringhaus &lt;martin.sirringhaus@suse.com&gt;" date="1719576000">- Fix GNOME search provider (boo#1225278)</changelog>
  <changelog author="Andrei Dziahel &lt;develop7@develop7.info&gt;" date="1719835200">- Mozilla Firefox 127.0.2
  * Fixed an issue where YouTube playback may experience stalling under
    certain conditions (bmo#1900191, bmo#1878510).
  * Fixed an issue where the Private Window icon was displayed in the taskbar
    on Windows when browser.privateWindowSeparation.enabled was
    set to false (bmo#1901840).
- Mozilla Firefox 127.0.1
  * Fixed an issue where users with a primary password set on their profile
    could lose their previous session of tabs upon upgrading if they dismissed
    the primary password prompt (bmo#1901899).
  * Fixed an issue where Linux users with accessibility.monoaudio.enable set
    to true were experiencing slow audio speeds (bmo#1900972).
  * Fixed an issue where, in some circumstances, the Firefox installer
    on Windows failed to complete the installation (bmo#1896868).
  * Fixed an issue causing Firefox to incorrectly reject cookies
    for certain websites (bmo#1901325).</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1720440000">- Mozilla Firefox 128.0
  https://www.mozilla.org/en-US/firefox/128.0/releasenotes
  MFSA 2024-29 (bsc#1226316)
  * CVE-2024-6605 (bmo#1836786)
    Firefox Android missed activation delay to prevent tapjacking
  * CVE-2024-6606 (bmo#1902305)
    Out-of-bounds read in clipboard component
  * CVE-2024-6607 (bmo#1694513)
    Leaving pointerlock by pressing the escape key could be
    prevented
  * CVE-2024-6608 (bmo#1743329)
    Cursor could be moved out of the viewport using pointerlock.
  * CVE-2024-6609 (bmo#1839258)
    Memory corruption in NSS
  * CVE-2024-6610 (bmo#1883396)
    Form validation popups could block exiting full-screen mode
  * CVE-2024-6600 (bmo#1888340)
    Memory corruption in WebGL API
  * CVE-2024-6601 (bmo#1890748)
    Race condition in permission assignment
  * CVE-2024-6602 (bmo#1895032)
    Memory corruption in NSS
  * CVE-2024-6603 (bmo#1895081)
    Memory corruption in thread creation
  * CVE-2024-6611 (bmo#1844827)
    Incorrect handling of SameSite cookies
  * CVE-2024-6612 (bmo#1880374)
    CSP violation leakage when using devtools
  * CVE-2024-6613 (bmo#1900523)
    Incorrect listing of stack frames
  * CVE-2024-6614 (bmo#1902983)
    Incorrect listing of stack frames
  * CVE-2024-6604 (bmo#1748105, bmo#1837550, bmo#1884266)
    Memory safety bugs fixed in Firefox 128, Firefox ESR 115.13,
    and Thunderbird 115.13
  * CVE-2024-6615 (bmo#1892875, bmo#1894428, bmo#1898364)
    Memory safety bugs fixed in Firefox 128
- requires
  NSS 3.101.1
  rust &gt;= 1.78
- update create-tar.sh
- add wayland upstream fixes (bmo#1907511, bmo#1898476)
  (mozilla-bmo1898476.patch and mozilla-bmo1907511.patch)</changelog>
  <changelog author="Martin Jambor &lt;mjambor@suse.com&gt;" date="1721304000">- Add firefox-3781e3117706.patch to fix boo#1227856 aka bmo#1905018
  where an incompatible pointer assignment is not accepted in C by
  GCC 14.</changelog>
  <changelog author="Manfred Hollstein &lt;manfred.h@gmx.net&gt;" date="1722168000">- Firefox 128.0.3 Release
  * Fixed: Fixed an issue causing some sites to not load when
    connecting via HTTP/2. (bmo#1908161, bmo#1909666)
  * Fixed: Fixed collapsed table rows not appearing when expected
    in some situations. (bmo#1907789)
  * Fixed: Fixed the Windows on-screen keyboard potentially
    concealing the webpage when displayed. (bmo#1907766)
- Firefox 128.0.2 Release
  * Fixed: Fixed an audio echo in video calls on macOS under
    certain conditions. (bmo#1908539)
  * Fixed: Fixed an issue where the Adguard extension popup was
    not displaying. (bmo#1906132)
  * Fixed: Fixed an issue causing some screen readers to fail to
    read when navigating by character in rich text editors. (Bug
    1905021)
  * Fixed: Fixed visual glitches when dark mode is enabled in
    Windows ARM devices. (bmo#1897444)
  * Fixed: Fixed an issue causing NTLM authentication failure.
    (bmo#1908115)
  * Fixed: Fixed an issue where content displayed on mouseover
    was not captured in a screenshot. (bmo#1905468)
  * Fixed: Various stability fixes.
- renamed firefox-3781e3117706.patch to mozilla-bmo1905018.patch
  to conform with patch structure and naming for the package</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1723118400">- Mozilla Firefox 129.0
  https://www.mozilla.org/en-US/firefox/129.0/releasenotes
  MFSA 2024-33 (bsc#1228648))
  * CVE-2024-7518 (bmo#1875354)
    Fullscreen notification dialog can be obscured by document content
  * CVE-2024-7519 (bmo#1902307)
    Out of bounds memory access in graphics shared memory handling
  * CVE-2024-7520 (bmo#1903041)
    Type confusion in WebAssembly
  * CVE-2024-7521 (bmo#1904644)
    Incomplete WebAssembly exception handing
  * CVE-2024-7522 (bmo#1906727)
    Out of bounds read in editor component
  * CVE-2024-7523 (bmo#1908344)
    Document content could partially obscure security prompts
  * CVE-2024-7524 (bmo#1909241)
    CSP strict-dynamic bypass using web-compatibility shims
  * CVE-2024-7525 (bmo#1909298)
    Missing permission check when creating a StreamFilter
  * CVE-2024-7526 (bmo#1910306)
    Uninitialized memory used by WebGL
  * CVE-2024-7527 (bmo#1871303)
    Use-after-free in JavaScript garbage collection
  * CVE-2024-7528 (bmo#1895951)
    Use-after-free in IndexedDB
  * CVE-2024-7529 (bmo#1903187)
    Document content could partially obscure security prompts
  * CVE-2024-7530 (bmo#1904011)
    Use-after-free in JavaScript code coverage collection
  * CVE-2024-7531 (bmo#1905691)
    PK11_Encrypt using CKM_CHACHA20 can reveal plaintext on Intel
    Sandy Bridge machines
- removed obsolete patches
  mozilla-bmo1905018.patch
  mozilla-bmo1504834-part3.patch
  mozilla-bmo1512162.patch
  mozilla-bmo1822730.patch
  mozilla-fix-aarch64-libopus.patch
  mozilla-partial-revert-1768632.patch
- requires NSS 3.102.1
- extended mozilla-silence-no-return-type.patch</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1723809600">- Mozilla Firefox 129.0.1
  * Fixed playback issues on some websites with copyrighted video
    served via digital rights management. (bmo#1911283)
  * Fixed a crash when dragging a video file onto some websites
    (bmo#1910990)</changelog>
  <changelog author="Christian Boltz &lt;suse-beta@cboltz.de&gt;" date="1724500800">- _constraints: increase RAM on s390x to fix the build</changelog>
  <changelog author="pallas wept &lt;pallaswept@proton.me&gt;" date="1725451200">- Added mozilla-bmo1746799.patch to fix incorrect audio volume scaling</changelog>
  <changelog author="Marvin Friedrich &lt;contact@marvinf.com&gt;" date="1725624000">- Update dependency on clang-devel from LLVM15 to LLVM18</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1725710400">- Mozilla Firefox 130.0
  https://www.mozilla.org/en-US/firefox/130.0/releasenotes
  MFSA 2024-39 (bsc#1229821)
  * CVE-2024-8385 (bmo#1911909)
    WASM type confusion involving ArrayTypes
  * CVE-2024-8381 (bmo#1912715)
    Type confusion when looking up a property name in a "with" block
  * CVE-2024-8388 (bmo#1902996, bmo#1839074, bmo#1865413, bmo#1868970,
    bmo#1873367, bmo#1877820, bmo#1884642, bmo#1886469, bmo#1894326,
    bmo#1894891, bmo#1897648)
    Fullscreen notice on Android could be hidden under various
    panels and OS prompts
  * CVE-2024-8382 (bmo#1906744)
    Internal event interfaces were exposed to web content when
    browser EventHandler listener callbacks ran
  * CVE-2024-8383 (bmo#1908496)
    Firefox did not ask before openings news: links in an
    external application
  * CVE-2024-8384 (bmo#1911288)
    Garbage collection could mis-color cross-compartment objects
    in OOM conditions
  * CVE-2024-8386 (bmo#1907032, bmo#1909163, bmo#1909529)
    SelectElements could be shown over another site if popups are
    allowed
  * CVE-2024-8387 (bmo#1857607, bmo#1911858, bmo#1914009)
    Memory safety bugs fixed in Firefox 130, Firefox ESR 128.2,
    and Thunderbird 128.2
  * CVE-2024-8389 (bmo#1907230, bmo#1909367)
    Memory safety bugs fixed in Firefox 130
- requires NSS 3.103
- removed obsolete patches
  mozilla-bmo1898476.patch
  mozilla-bmo1907511.patch
- added mozilla-bmo1916038.patch to fix AVIF decoding (bsc#1230500)</changelog>
  <changelog author="Manfred Hollstein &lt;manfred.h@gmx.net&gt;" date="1726660800">- Firefox 130.0.1 Release
  https://www.mozilla.org/en-US/firefox/130.0.1/releasenotes
  * Enterprise: Added an enterprise policy to disable the
  * Firefox Labs* section in *Settings*. (bmo#1911826)
  * Fixed a recent regression causing some UI elements to
    be rendered as left-to-right instead of right-to-left for
    users of our Saraiki localization. (bmo#1917175)
  * Linux: Fixed black rendering of AVIF images when
    Firefox is built with GCC. (bmo#1916038)
- removed obsolete patches
  mozilla-bmo1916038.patch</changelog>
  <changelog author="Manfred Hollstein &lt;manfred.h@gmx.net&gt;" date="1726920000">- Don't use clang18-devel on Leap as they don't have that version.</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1727611200">- Firefox 131.0
  https://www.mozilla.org/en-US/firefox/131.0/releasenotes/
  MFSA 2024-46 (bsc#1230979)
  * CVE-2024-9391 (bmo#1892407)
    Prevent users from exiting full-screen mode in Firefox Focus
    for Android
  * CVE-2024-9392 (bmo#1899154, bmo#1905843)
    Compromised content process can bypass site isolation
  * CVE-2024-9393 (bmo#1918301)
    Cross-origin access to PDF contents through multipart responses
  * CVE-2024-9394 (bmo#1918874)
    Cross-origin access to JSON contents through multipart responses
  * CVE-2024-9395 (bmo#1906024)
    Specially crafted filename could be used to obscure download type
  * CVE-2024-9396 (bmo#1912471)
    Potential memory corruption may occur when cloning certain objects
  * CVE-2024-9397 (bmo#1916659)
    Potential directory upload bypass via clickjacking
  * CVE-2024-9398 (bmo#1881037)
    External protocol handlers could be enumerated via popups
  * CVE-2024-9399 (bmo#1907726)
    Specially crafted WebTransport requests could lead to denial
    of service
  * CVE-2024-9400 (bmo#1915249)
    Potential memory corruption during JIT compilation
  * CVE-2024-9401 (bmo#1872744, bmo#1897792, bmo#1911317, bmo#1916476)
    Memory safety bugs fixed in Firefox 131, Firefox ESR 115.16,
    Firefox ESR 128.3, Thunderbird 131, and Thunderbird 128.3
  * CVE-2024-9402 (bmo#1872744, bmo#1897792, bmo#1911317, bmo#1913445,
    bmo#1914106, bmo#1914475, bmo#1914963, bmo#1915008, bmo#1916476)
    Memory safety bugs fixed in Firefox 131, Firefox ESR 128.3,
    Thunderbird 131, and Thunderbird 128.3
  * CVE-2024-9403 (bmo#1917807)
    Memory safety bugs fixed in Firefox 131 and Thunderbird 131
- requires NSS 3.104
- rebased patches</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1728475200">- Mozilla Firefox 131.0.2
  MFSA 2024-51 (bsc#1231413)
  * CVE-2024-9680 (bmo#1923344)
    Use-after-free in Animation timeline</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1729166400">- Mozilla Firefox 131.0.3
  * some users could not access the Bill Pay portion of their
    bank's site (bmo#1923500)
  * some VR180 and 360 videos were not properly rendering on YouTube
    (bmo#1922278)
  * Fixed a crash that Windows users with Avast or AVG security
    software were experiencing when visiting certain sites. (bmo#1919678)
  * "List all tabs" button was not able to be moved from the toolbar
    (bmo#1918681)
  NFSA 2024-53
  * CVE-2024-9936 (bmo#1920381)
    Undefined behavior in selection node cache
- remove obsolete mozilla-rust-disable-future-incompat.patch</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1730116800">- Mozilla Firefox 132.0
  https://www.mozilla.org/en-US/firefox/132.0/releasenotes
  MFSA 2024-55 (bsc#1231879)
  * CVE-2024-10458 (bmo#1921733)
    Permission leak via embed or object elements
  * CVE-2024-10459 (bmo#1919087)
    Use-after-free in layout with accessibility
  * CVE-2024-10460 (bmo#1912537)
    Confusing display of origin for external protocol handler prompt
  * CVE-2024-10461 (bmo#1914521)
    XSS due to Content-Disposition being ignored in
    multipart/x-mixed-replace response
  * CVE-2024-10462 (bmo#1920423)
    Origin of permission prompt could be spoofed by long URL
  * CVE-2024-10463 (bmo#1920800)
    Cross origin video frame leak
  * CVE-2024-10468 (bmo#1914982)
    Race conditions in IndexedDB
  * CVE-2024-10464 (bmo#1913000)
    History interface could have been used to cause a Denial of
    Service condition in the browser
  * CVE-2024-10465 (bmo#1918853)
    Clipboard "paste" button persisted across tabs
  * CVE-2024-10466 (bmo#1924154)
    DOM push subscription message could hang Firefox
  * CVE-2024-10467 (bmo#1829029, bmo#1888538, bmo#1900394, bmo#1904059,
    bmo#1917742, bmo#1919809, bmo#1923706)
    Memory safety bugs fixed in Firefox 132, Thunderbird 132,
    Firefox ESR 128.4, and Thunderbird 128.4
- requires NSS 3.105
- rebased patches</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1730808000">- Mozilla Firefox 132.0.1
  * Fixed issues causing intermittent video playback problems on
    some sites. (bmo#1928484, bmo#1928798)
- remove KDE integration patches
  - mozilla-kde.patch
  - firefox-kde.patch
  on KDE use these settings instead
  widget.use-xdg-desktop-portal.file-picker=1
  widget.use-xdg-desktop-portal.mime-handler=1
  (those are set by the latest branding package as well)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1731240000">- require xdg-desktop-portal (boo#1233166)</changelog>
</package>
<package pkgid="6d77ff9d421994dae3f349ffaabbe6af336783f5b7ea551a00edfbd8426963b9ff540143fde70176e4f5636b7a724af41ee09214f314b0f3ffa1209a977de83c" name="MozillaFirefox-translations-other" arch="x86_64">
  <version epoch="0" ver="132.0.2" rel="1.1"/>
  <changelog author="Martin Sirringhaus &lt;martin.sirringhaus@suse.com&gt;" date="1719576000">- Fix GNOME search provider (boo#1225278)</changelog>
  <changelog author="Andrei Dziahel &lt;develop7@develop7.info&gt;" date="1719835200">- Mozilla Firefox 127.0.2
  * Fixed an issue where YouTube playback may experience stalling under
    certain conditions (bmo#1900191, bmo#1878510).
  * Fixed an issue where the Private Window icon was displayed in the taskbar
    on Windows when browser.privateWindowSeparation.enabled was
    set to false (bmo#1901840).
- Mozilla Firefox 127.0.1
  * Fixed an issue where users with a primary password set on their profile
    could lose their previous session of tabs upon upgrading if they dismissed
    the primary password prompt (bmo#1901899).
  * Fixed an issue where Linux users with accessibility.monoaudio.enable set
    to true were experiencing slow audio speeds (bmo#1900972).
  * Fixed an issue where, in some circumstances, the Firefox installer
    on Windows failed to complete the installation (bmo#1896868).
  * Fixed an issue causing Firefox to incorrectly reject cookies
    for certain websites (bmo#1901325).</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1720440000">- Mozilla Firefox 128.0
  https://www.mozilla.org/en-US/firefox/128.0/releasenotes
  MFSA 2024-29 (bsc#1226316)
  * CVE-2024-6605 (bmo#1836786)
    Firefox Android missed activation delay to prevent tapjacking
  * CVE-2024-6606 (bmo#1902305)
    Out-of-bounds read in clipboard component
  * CVE-2024-6607 (bmo#1694513)
    Leaving pointerlock by pressing the escape key could be
    prevented
  * CVE-2024-6608 (bmo#1743329)
    Cursor could be moved out of the viewport using pointerlock.
  * CVE-2024-6609 (bmo#1839258)
    Memory corruption in NSS
  * CVE-2024-6610 (bmo#1883396)
    Form validation popups could block exiting full-screen mode
  * CVE-2024-6600 (bmo#1888340)
    Memory corruption in WebGL API
  * CVE-2024-6601 (bmo#1890748)
    Race condition in permission assignment
  * CVE-2024-6602 (bmo#1895032)
    Memory corruption in NSS
  * CVE-2024-6603 (bmo#1895081)
    Memory corruption in thread creation
  * CVE-2024-6611 (bmo#1844827)
    Incorrect handling of SameSite cookies
  * CVE-2024-6612 (bmo#1880374)
    CSP violation leakage when using devtools
  * CVE-2024-6613 (bmo#1900523)
    Incorrect listing of stack frames
  * CVE-2024-6614 (bmo#1902983)
    Incorrect listing of stack frames
  * CVE-2024-6604 (bmo#1748105, bmo#1837550, bmo#1884266)
    Memory safety bugs fixed in Firefox 128, Firefox ESR 115.13,
    and Thunderbird 115.13
  * CVE-2024-6615 (bmo#1892875, bmo#1894428, bmo#1898364)
    Memory safety bugs fixed in Firefox 128
- requires
  NSS 3.101.1
  rust &gt;= 1.78
- update create-tar.sh
- add wayland upstream fixes (bmo#1907511, bmo#1898476)
  (mozilla-bmo1898476.patch and mozilla-bmo1907511.patch)</changelog>
  <changelog author="Martin Jambor &lt;mjambor@suse.com&gt;" date="1721304000">- Add firefox-3781e3117706.patch to fix boo#1227856 aka bmo#1905018
  where an incompatible pointer assignment is not accepted in C by
  GCC 14.</changelog>
  <changelog author="Manfred Hollstein &lt;manfred.h@gmx.net&gt;" date="1722168000">- Firefox 128.0.3 Release
  * Fixed: Fixed an issue causing some sites to not load when
    connecting via HTTP/2. (bmo#1908161, bmo#1909666)
  * Fixed: Fixed collapsed table rows not appearing when expected
    in some situations. (bmo#1907789)
  * Fixed: Fixed the Windows on-screen keyboard potentially
    concealing the webpage when displayed. (bmo#1907766)
- Firefox 128.0.2 Release
  * Fixed: Fixed an audio echo in video calls on macOS under
    certain conditions. (bmo#1908539)
  * Fixed: Fixed an issue where the Adguard extension popup was
    not displaying. (bmo#1906132)
  * Fixed: Fixed an issue causing some screen readers to fail to
    read when navigating by character in rich text editors. (Bug
    1905021)
  * Fixed: Fixed visual glitches when dark mode is enabled in
    Windows ARM devices. (bmo#1897444)
  * Fixed: Fixed an issue causing NTLM authentication failure.
    (bmo#1908115)
  * Fixed: Fixed an issue where content displayed on mouseover
    was not captured in a screenshot. (bmo#1905468)
  * Fixed: Various stability fixes.
- renamed firefox-3781e3117706.patch to mozilla-bmo1905018.patch
  to conform with patch structure and naming for the package</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1723118400">- Mozilla Firefox 129.0
  https://www.mozilla.org/en-US/firefox/129.0/releasenotes
  MFSA 2024-33 (bsc#1228648))
  * CVE-2024-7518 (bmo#1875354)
    Fullscreen notification dialog can be obscured by document content
  * CVE-2024-7519 (bmo#1902307)
    Out of bounds memory access in graphics shared memory handling
  * CVE-2024-7520 (bmo#1903041)
    Type confusion in WebAssembly
  * CVE-2024-7521 (bmo#1904644)
    Incomplete WebAssembly exception handing
  * CVE-2024-7522 (bmo#1906727)
    Out of bounds read in editor component
  * CVE-2024-7523 (bmo#1908344)
    Document content could partially obscure security prompts
  * CVE-2024-7524 (bmo#1909241)
    CSP strict-dynamic bypass using web-compatibility shims
  * CVE-2024-7525 (bmo#1909298)
    Missing permission check when creating a StreamFilter
  * CVE-2024-7526 (bmo#1910306)
    Uninitialized memory used by WebGL
  * CVE-2024-7527 (bmo#1871303)
    Use-after-free in JavaScript garbage collection
  * CVE-2024-7528 (bmo#1895951)
    Use-after-free in IndexedDB
  * CVE-2024-7529 (bmo#1903187)
    Document content could partially obscure security prompts
  * CVE-2024-7530 (bmo#1904011)
    Use-after-free in JavaScript code coverage collection
  * CVE-2024-7531 (bmo#1905691)
    PK11_Encrypt using CKM_CHACHA20 can reveal plaintext on Intel
    Sandy Bridge machines
- removed obsolete patches
  mozilla-bmo1905018.patch
  mozilla-bmo1504834-part3.patch
  mozilla-bmo1512162.patch
  mozilla-bmo1822730.patch
  mozilla-fix-aarch64-libopus.patch
  mozilla-partial-revert-1768632.patch
- requires NSS 3.102.1
- extended mozilla-silence-no-return-type.patch</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1723809600">- Mozilla Firefox 129.0.1
  * Fixed playback issues on some websites with copyrighted video
    served via digital rights management. (bmo#1911283)
  * Fixed a crash when dragging a video file onto some websites
    (bmo#1910990)</changelog>
  <changelog author="Christian Boltz &lt;suse-beta@cboltz.de&gt;" date="1724500800">- _constraints: increase RAM on s390x to fix the build</changelog>
  <changelog author="pallas wept &lt;pallaswept@proton.me&gt;" date="1725451200">- Added mozilla-bmo1746799.patch to fix incorrect audio volume scaling</changelog>
  <changelog author="Marvin Friedrich &lt;contact@marvinf.com&gt;" date="1725624000">- Update dependency on clang-devel from LLVM15 to LLVM18</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1725710400">- Mozilla Firefox 130.0
  https://www.mozilla.org/en-US/firefox/130.0/releasenotes
  MFSA 2024-39 (bsc#1229821)
  * CVE-2024-8385 (bmo#1911909)
    WASM type confusion involving ArrayTypes
  * CVE-2024-8381 (bmo#1912715)
    Type confusion when looking up a property name in a "with" block
  * CVE-2024-8388 (bmo#1902996, bmo#1839074, bmo#1865413, bmo#1868970,
    bmo#1873367, bmo#1877820, bmo#1884642, bmo#1886469, bmo#1894326,
    bmo#1894891, bmo#1897648)
    Fullscreen notice on Android could be hidden under various
    panels and OS prompts
  * CVE-2024-8382 (bmo#1906744)
    Internal event interfaces were exposed to web content when
    browser EventHandler listener callbacks ran
  * CVE-2024-8383 (bmo#1908496)
    Firefox did not ask before openings news: links in an
    external application
  * CVE-2024-8384 (bmo#1911288)
    Garbage collection could mis-color cross-compartment objects
    in OOM conditions
  * CVE-2024-8386 (bmo#1907032, bmo#1909163, bmo#1909529)
    SelectElements could be shown over another site if popups are
    allowed
  * CVE-2024-8387 (bmo#1857607, bmo#1911858, bmo#1914009)
    Memory safety bugs fixed in Firefox 130, Firefox ESR 128.2,
    and Thunderbird 128.2
  * CVE-2024-8389 (bmo#1907230, bmo#1909367)
    Memory safety bugs fixed in Firefox 130
- requires NSS 3.103
- removed obsolete patches
  mozilla-bmo1898476.patch
  mozilla-bmo1907511.patch
- added mozilla-bmo1916038.patch to fix AVIF decoding (bsc#1230500)</changelog>
  <changelog author="Manfred Hollstein &lt;manfred.h@gmx.net&gt;" date="1726660800">- Firefox 130.0.1 Release
  https://www.mozilla.org/en-US/firefox/130.0.1/releasenotes
  * Enterprise: Added an enterprise policy to disable the
  * Firefox Labs* section in *Settings*. (bmo#1911826)
  * Fixed a recent regression causing some UI elements to
    be rendered as left-to-right instead of right-to-left for
    users of our Saraiki localization. (bmo#1917175)
  * Linux: Fixed black rendering of AVIF images when
    Firefox is built with GCC. (bmo#1916038)
- removed obsolete patches
  mozilla-bmo1916038.patch</changelog>
  <changelog author="Manfred Hollstein &lt;manfred.h@gmx.net&gt;" date="1726920000">- Don't use clang18-devel on Leap as they don't have that version.</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1727611200">- Firefox 131.0
  https://www.mozilla.org/en-US/firefox/131.0/releasenotes/
  MFSA 2024-46 (bsc#1230979)
  * CVE-2024-9391 (bmo#1892407)
    Prevent users from exiting full-screen mode in Firefox Focus
    for Android
  * CVE-2024-9392 (bmo#1899154, bmo#1905843)
    Compromised content process can bypass site isolation
  * CVE-2024-9393 (bmo#1918301)
    Cross-origin access to PDF contents through multipart responses
  * CVE-2024-9394 (bmo#1918874)
    Cross-origin access to JSON contents through multipart responses
  * CVE-2024-9395 (bmo#1906024)
    Specially crafted filename could be used to obscure download type
  * CVE-2024-9396 (bmo#1912471)
    Potential memory corruption may occur when cloning certain objects
  * CVE-2024-9397 (bmo#1916659)
    Potential directory upload bypass via clickjacking
  * CVE-2024-9398 (bmo#1881037)
    External protocol handlers could be enumerated via popups
  * CVE-2024-9399 (bmo#1907726)
    Specially crafted WebTransport requests could lead to denial
    of service
  * CVE-2024-9400 (bmo#1915249)
    Potential memory corruption during JIT compilation
  * CVE-2024-9401 (bmo#1872744, bmo#1897792, bmo#1911317, bmo#1916476)
    Memory safety bugs fixed in Firefox 131, Firefox ESR 115.16,
    Firefox ESR 128.3, Thunderbird 131, and Thunderbird 128.3
  * CVE-2024-9402 (bmo#1872744, bmo#1897792, bmo#1911317, bmo#1913445,
    bmo#1914106, bmo#1914475, bmo#1914963, bmo#1915008, bmo#1916476)
    Memory safety bugs fixed in Firefox 131, Firefox ESR 128.3,
    Thunderbird 131, and Thunderbird 128.3
  * CVE-2024-9403 (bmo#1917807)
    Memory safety bugs fixed in Firefox 131 and Thunderbird 131
- requires NSS 3.104
- rebased patches</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1728475200">- Mozilla Firefox 131.0.2
  MFSA 2024-51 (bsc#1231413)
  * CVE-2024-9680 (bmo#1923344)
    Use-after-free in Animation timeline</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1729166400">- Mozilla Firefox 131.0.3
  * some users could not access the Bill Pay portion of their
    bank's site (bmo#1923500)
  * some VR180 and 360 videos were not properly rendering on YouTube
    (bmo#1922278)
  * Fixed a crash that Windows users with Avast or AVG security
    software were experiencing when visiting certain sites. (bmo#1919678)
  * "List all tabs" button was not able to be moved from the toolbar
    (bmo#1918681)
  NFSA 2024-53
  * CVE-2024-9936 (bmo#1920381)
    Undefined behavior in selection node cache
- remove obsolete mozilla-rust-disable-future-incompat.patch</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1730116800">- Mozilla Firefox 132.0
  https://www.mozilla.org/en-US/firefox/132.0/releasenotes
  MFSA 2024-55 (bsc#1231879)
  * CVE-2024-10458 (bmo#1921733)
    Permission leak via embed or object elements
  * CVE-2024-10459 (bmo#1919087)
    Use-after-free in layout with accessibility
  * CVE-2024-10460 (bmo#1912537)
    Confusing display of origin for external protocol handler prompt
  * CVE-2024-10461 (bmo#1914521)
    XSS due to Content-Disposition being ignored in
    multipart/x-mixed-replace response
  * CVE-2024-10462 (bmo#1920423)
    Origin of permission prompt could be spoofed by long URL
  * CVE-2024-10463 (bmo#1920800)
    Cross origin video frame leak
  * CVE-2024-10468 (bmo#1914982)
    Race conditions in IndexedDB
  * CVE-2024-10464 (bmo#1913000)
    History interface could have been used to cause a Denial of
    Service condition in the browser
  * CVE-2024-10465 (bmo#1918853)
    Clipboard "paste" button persisted across tabs
  * CVE-2024-10466 (bmo#1924154)
    DOM push subscription message could hang Firefox
  * CVE-2024-10467 (bmo#1829029, bmo#1888538, bmo#1900394, bmo#1904059,
    bmo#1917742, bmo#1919809, bmo#1923706)
    Memory safety bugs fixed in Firefox 132, Thunderbird 132,
    Firefox ESR 128.4, and Thunderbird 128.4
- requires NSS 3.105
- rebased patches</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1730808000">- Mozilla Firefox 132.0.1
  * Fixed issues causing intermittent video playback problems on
    some sites. (bmo#1928484, bmo#1928798)
- remove KDE integration patches
  - mozilla-kde.patch
  - firefox-kde.patch
  on KDE use these settings instead
  widget.use-xdg-desktop-portal.file-picker=1
  widget.use-xdg-desktop-portal.mime-handler=1
  (those are set by the latest branding package as well)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1731240000">- require xdg-desktop-portal (boo#1233166)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1731672000">- Mozilla Firefox 132.0.2
  * Fixed possible errors when playing encrypted media content
    through some streaming providers. (bmo#1929491)
  * Added a mitigation to help reduce the frequency of duplicated
    push notifications reported by some users. (bmo#1928868)
  * Fixed hangs when printing from some sites when using the system
    print dialog. (bmo#1898184)
  * Fixed a crash which could occur when using Microsoft SSO on macOS
    (bmo#1929622)
  * Fixed a crash in the Network Monitor developer tool which could
    occur in some circumstances. (bmo#1924882)</changelog>
</package>
<package pkgid="01d9bb224bfbe983064722b13644ec6048d213d3941647ace44d44e1c0901f69105f47602191ebb02da583c024c9bcab50121da6eff5999eed1cd28714ed9e84" name="MozillaThunderbird" arch="src">
  <version epoch="0" ver="128.4.2" rel="1.0.2.1.sr20241103"/>
  <changelog author="Adam Mizerski &lt;adam@mizerski.pl&gt;" date="1709640000">- Create subpackage MozillaThunderbird-openpgp-librnp</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1710590400">- Mozilla Thunderbird 115.9.0
  https://www.thunderbird.net/en-US/thunderbird/115.9.0/releasenotes/
  MFSA 2024-14 (bsc#1221327)
  * CVE-2024-0743 (bmo#1867408)
    Crash in NSS TLS method
  * CVE-2024-2605 (bmo#1872920)
    Windows Error Reporter could be used as a Sandbox escape vector
  * CVE-2024-2607 (bmo#1879939)
    JIT code failed to save return registers on Armv7-A
  * CVE-2024-2608 (bmo#1880692)
    Integer overflow could have led to out of bounds write
  * CVE-2024-2616 (bmo#1846197)
    Improve handling of out-of-memory conditions in ICU
  * CVE-2023-5388 (bmo#1780432)
    NSS susceptible to timing attack against RSA decryption
  * CVE-2024-2610 (bmo#1871112)
    Improper handling of html and body tags enabled CSP nonce leakage
  * CVE-2024-2611 (bmo#1876675)
    Clickjacking vulnerability could have led to a user accidentally
    granting permissions
  * CVE-2024-2612 (bmo#1879444)
    Self referencing object could have potentially led to a use-
    after-free
  * CVE-2024-2614 (bmo#1685358, bmo#1861016, bmo#1880405, bmo#1881093)
    Memory safety bugs fixed in Firefox 124, Firefox ESR 115.9,
    and Thunderbird 115.9</changelog>
  <changelog author="Manfred Hollstein &lt;manfred.h@gmx.net&gt;" date="1710936000">- LLVM18 breaks building Thunderbird on Tumbleweed; add
  * mozilla-fix-issues-with-llvm18.patch</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1713096000">- Mozilla Thunderbird 115.10.0
  https://www.thunderbird.net/en-US/thunderbird/115.10.0/releasenotes/
  MFSA 2024-20 (bsc#1222535)
  * CVE-2024-3852 (bmo#1883542)
    GetBoundName in the JIT returned the wrong object
  * CVE-2024-3854 (bmo#1884552)
    Out-of-bounds-read after mis-optimized switch statement
  * CVE-2024-3857 (bmo#1886683)
    Incorrect JITting of arguments led to use-after-free during
    garbage collection
  * CVE-2024-2609 (bmo#1866100)
    Permission prompt input delay could expire when not in focus
  * CVE-2024-3859 (bmo#1874489)
    Integer-overflow led to out-of-bounds-read in the OpenType sanitizer
  * CVE-2024-3861 (bmo#1883158)
    Potential use-after-free due to AlignedBuffer self-move
  * CVE-2024-3863 (bmo#1885855)
    Download Protections were bypassed by .xrm-ms files on Windows
  * CVE-2024-3302 (bmo#1881183)
    Denial of Service using HTTP/2 CONTINUATION frames
  * CVE-2024-3864 (bmo#1888333)
    Memory safety bug fixed in Firefox 125, Firefox ESR 115.10,
    and Thunderbird 115.10</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1713528000">- Mozilla Thunderbird 115.10.1
  https://www.thunderbird.net/en-US/thunderbird/115.10.1/releasenotes/
  * fixed hangup introduced with 115.10.0 (bmo#1891889)</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1714824000">- Mozilla Thunderbird 115.10.2:
  https://www.thunderbird.net/en-US/thunderbird/115.10.2/releasenotes/
  This release is identical to 115.10.1, other than changing the
  Update channel for self-updating builds to ESR. (bmo#1893271)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1715688000">- Mozilla Thunderbird 115.11.0
  MFSA 2024-23 (bsc#1224056)
  * CVE-2024-4367 (bmo#1893645)
    Arbitrary JavaScript execution in PDF.js
  * CVE-2024-4767 (bmo#1878577)
    IndexedDB files retained in private browsing mode
  * CVE-2024-4768 (bmo#1886082)
    Potential permissions request bypass via clickjacking
  * CVE-2024-4769 (bmo#1886108)
    Cross-origin responses could be distinguished between script
    and non-script content-types
  * CVE-2024-4770 (bmo#1893270)
    Use-after-free could occur when printing to PDF
  * CVE-2024-4777 (bmo#1878199, bmo#1893340)
    Memory safety bugs fixed in Firefox 126, Firefox ESR 115.11,
    and Thunderbird 115.11</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1716984000">- Mozilla Thunderbird 115.11.1
  * Added a short anonymous survey that a small number of users will
    be randomly asked to complete</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1718625600">- Mozilla Thunderbird 115.12.0
  https://www.thunderbird.net/en-US/thunderbird/115.12.0/releasenotes
  MFSA 2024-28 (bsc#1226027)
  * CVE-2024-5702 (bmo#1193389)
    Use-after-free in networking
  * CVE-2024-5688 (bmo#1895086)
    Use-after-free in JavaScript object transplant
  * CVE-2024-5690 (bmo#1883693)
    External protocol handlers leaked by timing attack
  * CVE-2024-5691 (bmo#1888695)
    Sandboxed iframes were able to bypass sandbox restrictions to
    open a new window
  * CVE-2024-5692 (bmo#1891234)
    Bypass of file name restrictions during saving
  * CVE-2024-5693 (bmo#1891319)
    Cross-Origin Image leak via Offscreen Canvas
  * CVE-2024-5696 (bmo#1896555)
    Memory Corruption in Text Fragments
  * CVE-2024-5700 (bmo#1862809, bmo#1889355, bmo#1893388, bmo#1895123)
    Memory safety bugs fixed in Firefox 127, Firefox ESR 115.12,
    and Thunderbird 115.12</changelog>
  <changelog author="Martin Sirringhaus &lt;martin.sirringhaus@suse.com&gt;" date="1719921600">- Mozilla Thunderbird 115.12.2
  * fixed: Annual Thunderbird Beta appeal intended for
    Thunderbird 115.12.0 did not open as expected (bmo#1898084)
- Mozilla Thunderbird 115.12.1
  * 115.12.0 got pulled because of upstream automation process errors
    and Windows installer signing changes.
    No code changes, changelog is the same as 115.12.0 (bsc#1226495)
- Added thunderbird-fix-CVE-2024-34703.patch (bsc#1227239)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1720612800">- Mozilla Thunderbird 115.13.0
  * After starting Thunderbird, the message list position was
    sometimes set to an incorrect position
  MFSA 2024-30 (bsc#1226316)
  * CVE-2024-6600 (bmo#1888340)
    Memory corruption in WebGL API
  * CVE-2024-6601 (bmo#1890748)
    Race condition in permission assignment
  * CVE-2024-6602 (bmo#1895032)
    Memory corruption in NSS
  * CVE-2024-6603 (bmo#1895081)
    Memory corruption in thread creation
  * CVE-2024-6604 (bmo#1748105, bmo#1837550, bmo#1884266)
    Memory safety bugs fixed in Firefox 128, Firefox ESR 115.13,
    and Thunderbird 115.13</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1722600000">- Mozilla Thunderbird 115.14.0
  * When using an external installation of GnuPG, Thunderbird
    occassionally sent/received corrupted messages (bmo#1898832)
  * Users of external GnuPG were unable to decrypt incorrectly
    encoded messages (bmo#1906903)
  MFSA 2024-38 (bsc#1228648)
  * CVE-2024-7519 (bmo#1902307)
    Out of bounds memory access in graphics shared memory handling
  * CVE-2024-7521 (bmo#1904644)
    Incomplete WebAssembly exception handing
  * CVE-2024-7522 (bmo#1906727)
    Out of bounds read in editor component
  * CVE-2024-7525 (bmo#1909298)
    Missing permission check when creating a StreamFilter
  * CVE-2024-7526 (bmo#1910306)
    Uninitialized memory used by WebGL
  * CVE-2024-7527 (bmo#1871303)
    Use-after-free in JavaScript garbage collection
  * CVE-2024-7529 (bmo#1903187)
    Document content could partially obscure security prompts</changelog>
  <changelog author="Manfred Hollstein &lt;manfred.h@gmx.net&gt;" date="1724932800">- Use gcc13 on Tumbleweed and where it is available.
- Don't use gcc14 as sources don't compile.</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1725624000">- Mozilla Thunderbird 115.15.0
  MFSA 2024-44 (bsc#1229821)
  * CVE-2024-8381 (bmo#1912715)
    Type confusion when looking up a property name in a "with"
    block
  * CVE-2024-8382 (bmo#1906744)
    Internal event interfaces were exposed to web content when
    browser EventHandler listener callbacks ran
  * CVE-2024-8384 (bmo#1911288)
    Garbage collection could mis-color cross-compartment objects
    in OOM conditions</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1728561600">- Mozilla Thunderbird 128.3.1
  https://www.thunderbird.net/en-US/thunderbird/128.0esr/releasenotes/
  and following release notes for minor version updates
  MFSA 2024-52  (bsc#1231413)
  * CVE-2024-9680 (bmo#1923344)
    Use-after-free in Animation timeline
  Mozilla Thunderbird 128.3.0
  MFSA 2024-32 (128.0)
  MFSA 2024-37 (128.1)
  MFSA 2024-43 (128.2)
  MFSA 2024-49 (128.3) (bsc#1230979)
  * CVE-2024-9392 (bmo#1899154, bmo#1905843)
    Compromised content process can bypass site isolation
  * CVE-2024-9393 (bmo#1918301)
    Cross-origin access to PDF contents through multipart responses
  * CVE-2024-9394 (bmo#1918874)
    Cross-origin access to JSON contents through multipart responses
  * CVE-2024-8900 (bmo#1872841)
    Clipboard write permission bypass
  * CVE-2024-9396 (bmo#1912471)
    Potential memory corruption may occur when cloning certain objects
  * CVE-2024-9397 (bmo#1916659)
    Potential directory upload bypass via clickjacking
  * CVE-2024-9398 (bmo#1881037)
    External protocol handlers could be enumerated via popups
  * CVE-2024-9399 (bmo#1907726)
    Specially crafted WebTransport requests could lead to denial
    of service
  * CVE-2024-9400 (bmo#1915249)
    Potential memory corruption during JIT compilation
  * CVE-2024-9401 (bmo#1872744, bmo#1897792, bmo#1911317, bmo#1916476)
    Memory safety bugs fixed in Firefox 131, Firefox ESR 115.16,
    Firefox ESR 128.3, Thunderbird 131, and Thunderbird 128.3
  * CVE-2024-9402 (bmo#1872744, bmo#1897792, bmo#1911317, bmo#1913445,
    bmo#1914106, bmo#1914475, bmo#1914963, bmo#1915008, bmo#1916476)
    Memory safety bugs fixed in Firefox 131, Firefox ESR 128.3,
    Thunderbird 131, and Thunderbird 128.3
- removed obsolete patches
  mozilla-bmo1504834-part3.patch
  mozilla-bmo1512162.patch
  mozilla-bmo1775202.patch
  mozilla-bmo531915.patch
  mozilla-fix-aarch64-libopus.patch
  mozilla-fix-issues-with-llvm18.patch
  mozilla-fix-top-level-asm.patch
  mozilla-partial-revert-1768632.patch
  mozilla-rust-disable-future-incompat.patch
  thunderbird-fix-CVE-2024-34703.patch
- new patch thunderbird-silence-no-return.patch
- rebased
  mozilla-bmo1504834-part1.patch
  mozilla-kde.patch
  mozilla-libavcodec58_91.patch
  mozilla-silence-no-return-type.patch</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1729080000">- Mozilla Thunderbird 128.3.2
  bugfix release:
  https://www.thunderbird.net/en-US/thunderbird/128.3.2esr/releasenotes
- bring back mozilla-bmo531915.patch to fix x86</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1729684800">- Mozilla Thunderbird 128.3.3
  * Files left over from failed folder compactions could use up
    disk space (bmo#1878541)
  * Message list returned to selected message after action on
    another message (bmo#1917485)
  * Some faulty messages were downloaded and never stored
    (bmo#1923765)
  * Messages could become corrupted during folder compaction
    (bmo#1923747,bmo#1923541,bmo#1720047)
  * Searching events by Location, Description, or URL failed
    (bmo#1912710)
  * "Remove All Shown" saved passwords deleted all logins if
    filtered without results (bmo#601447)
  * Calendar event updates were not always sent to attendees
    (bmo#1877640)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1730289600">- Mozilla Thunderbird 128.4.0
  * Export Thunderbird account settings to Thunderbird Mobile via QRCode
  Bugfixes:
  * Unable to send an unencrypted response to an OpenPGP encrypted message
  MFSA 2024-58 (bsc#1231879)
  * CVE-2024-10458 (bmo#1921733)
    Permission leak via embed or object elements
  * CVE-2024-10459 (bmo#1919087)
    Use-after-free in layout with accessibility
  * CVE-2024-10460 (bmo#1912537)
    Confusing display of origin for external protocol handler prompt
  * CVE-2024-10461 (bmo#1914521)
    XSS due to Content-Disposition being ignored in
    multipart/x-mixed-replace response
  * CVE-2024-10462 (bmo#1920423)
    Origin of permission prompt could be spoofed by long URL
  * CVE-2024-10463 (bmo#1920800)
    Cross origin video frame leak
  * CVE-2024-10464 (bmo#1913000)
    History interface could have been used to cause a Denial of
    Service condition in the browser
  * CVE-2024-10465 (bmo#1918853)
    Clipboard "paste" button persisted across tabs
  * CVE-2024-10466 (bmo#1924154)
    DOM push subscription message could hang Firefox
  * CVE-2024-10467 (bmo#1829029, bmo#1888538, bmo#1900394, bmo#1904059,
    bmo#1917742, bmo#1919809, bmo#1923706)
    Memory safety bugs fixed in Firefox 132, Thunderbird 132,
    Firefox ESR 128.4, and Thunderbird 128.4</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1730548800">- Mozilla Thunderbird 128.4.1
  * Add the 20 year donation appeal (bmo#192538)</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1730894400">- Mozilla Thunderbird 128.4.2
  * Increased the auto-compaction threshold to reduce the frequency
    of compaction (bmo#1927656)
  * fixed: New profile creation caused console errors (bmo#1912675)
  * fixed: Repair folder could result in older messages showing
    wrong date and time (bmo#1911916)
  * fixed: Recently deleted messages could become undeleted if
    message compaction failed (bmo#1924927)
  * fixed: Visual and UX improvements
    (bmo#1857413,bmo#1922934,bmo#1924437)
  * fixed: Clicking on an HTML button could cause Thunderbird to
    freeze (bmo#1879355)
  * fixed: Messages could not be selected for dragging
    (bmo#1887518)
  * fixed: Could not open attached file in a MIME encrypted
    message (bmo#1924637)
  * fixed: Account creation "Setup Documentation" link was broken
    (bmo#1925493)
  * fixed: Unable to generate QR codes when exporting to mobile
    in some cases (bmo#1928114)
  * fixed: Operating system reauthentication was missing when
    exporting QR codes for mobile (bmo#1928232)
  * fixed: Could not drag all-day events from one day to another
    in week view (bmo#1922944)</changelog>
</package>
<package pkgid="a0da3484a7217ed2143c574c3aa4427791135cc1ceb5031d5343b14971089ccf0fed50ec6a4bb786bf264816503d371f8c2b49c53cce6e0b4d3640a95be41d01" name="MozillaThunderbird" arch="x86_64">
  <version epoch="0" ver="128.4.2" rel="1.0.2.1.sr20241103"/>
  <changelog author="Adam Mizerski &lt;adam@mizerski.pl&gt;" date="1709640000">- Create subpackage MozillaThunderbird-openpgp-librnp</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1710590400">- Mozilla Thunderbird 115.9.0
  https://www.thunderbird.net/en-US/thunderbird/115.9.0/releasenotes/
  MFSA 2024-14 (bsc#1221327)
  * CVE-2024-0743 (bmo#1867408)
    Crash in NSS TLS method
  * CVE-2024-2605 (bmo#1872920)
    Windows Error Reporter could be used as a Sandbox escape vector
  * CVE-2024-2607 (bmo#1879939)
    JIT code failed to save return registers on Armv7-A
  * CVE-2024-2608 (bmo#1880692)
    Integer overflow could have led to out of bounds write
  * CVE-2024-2616 (bmo#1846197)
    Improve handling of out-of-memory conditions in ICU
  * CVE-2023-5388 (bmo#1780432)
    NSS susceptible to timing attack against RSA decryption
  * CVE-2024-2610 (bmo#1871112)
    Improper handling of html and body tags enabled CSP nonce leakage
  * CVE-2024-2611 (bmo#1876675)
    Clickjacking vulnerability could have led to a user accidentally
    granting permissions
  * CVE-2024-2612 (bmo#1879444)
    Self referencing object could have potentially led to a use-
    after-free
  * CVE-2024-2614 (bmo#1685358, bmo#1861016, bmo#1880405, bmo#1881093)
    Memory safety bugs fixed in Firefox 124, Firefox ESR 115.9,
    and Thunderbird 115.9</changelog>
  <changelog author="Manfred Hollstein &lt;manfred.h@gmx.net&gt;" date="1710936000">- LLVM18 breaks building Thunderbird on Tumbleweed; add
  * mozilla-fix-issues-with-llvm18.patch</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1713096000">- Mozilla Thunderbird 115.10.0
  https://www.thunderbird.net/en-US/thunderbird/115.10.0/releasenotes/
  MFSA 2024-20 (bsc#1222535)
  * CVE-2024-3852 (bmo#1883542)
    GetBoundName in the JIT returned the wrong object
  * CVE-2024-3854 (bmo#1884552)
    Out-of-bounds-read after mis-optimized switch statement
  * CVE-2024-3857 (bmo#1886683)
    Incorrect JITting of arguments led to use-after-free during
    garbage collection
  * CVE-2024-2609 (bmo#1866100)
    Permission prompt input delay could expire when not in focus
  * CVE-2024-3859 (bmo#1874489)
    Integer-overflow led to out-of-bounds-read in the OpenType sanitizer
  * CVE-2024-3861 (bmo#1883158)
    Potential use-after-free due to AlignedBuffer self-move
  * CVE-2024-3863 (bmo#1885855)
    Download Protections were bypassed by .xrm-ms files on Windows
  * CVE-2024-3302 (bmo#1881183)
    Denial of Service using HTTP/2 CONTINUATION frames
  * CVE-2024-3864 (bmo#1888333)
    Memory safety bug fixed in Firefox 125, Firefox ESR 115.10,
    and Thunderbird 115.10</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1713528000">- Mozilla Thunderbird 115.10.1
  https://www.thunderbird.net/en-US/thunderbird/115.10.1/releasenotes/
  * fixed hangup introduced with 115.10.0 (bmo#1891889)</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1714824000">- Mozilla Thunderbird 115.10.2:
  https://www.thunderbird.net/en-US/thunderbird/115.10.2/releasenotes/
  This release is identical to 115.10.1, other than changing the
  Update channel for self-updating builds to ESR. (bmo#1893271)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1715688000">- Mozilla Thunderbird 115.11.0
  MFSA 2024-23 (bsc#1224056)
  * CVE-2024-4367 (bmo#1893645)
    Arbitrary JavaScript execution in PDF.js
  * CVE-2024-4767 (bmo#1878577)
    IndexedDB files retained in private browsing mode
  * CVE-2024-4768 (bmo#1886082)
    Potential permissions request bypass via clickjacking
  * CVE-2024-4769 (bmo#1886108)
    Cross-origin responses could be distinguished between script
    and non-script content-types
  * CVE-2024-4770 (bmo#1893270)
    Use-after-free could occur when printing to PDF
  * CVE-2024-4777 (bmo#1878199, bmo#1893340)
    Memory safety bugs fixed in Firefox 126, Firefox ESR 115.11,
    and Thunderbird 115.11</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1716984000">- Mozilla Thunderbird 115.11.1
  * Added a short anonymous survey that a small number of users will
    be randomly asked to complete</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1718625600">- Mozilla Thunderbird 115.12.0
  https://www.thunderbird.net/en-US/thunderbird/115.12.0/releasenotes
  MFSA 2024-28 (bsc#1226027)
  * CVE-2024-5702 (bmo#1193389)
    Use-after-free in networking
  * CVE-2024-5688 (bmo#1895086)
    Use-after-free in JavaScript object transplant
  * CVE-2024-5690 (bmo#1883693)
    External protocol handlers leaked by timing attack
  * CVE-2024-5691 (bmo#1888695)
    Sandboxed iframes were able to bypass sandbox restrictions to
    open a new window
  * CVE-2024-5692 (bmo#1891234)
    Bypass of file name restrictions during saving
  * CVE-2024-5693 (bmo#1891319)
    Cross-Origin Image leak via Offscreen Canvas
  * CVE-2024-5696 (bmo#1896555)
    Memory Corruption in Text Fragments
  * CVE-2024-5700 (bmo#1862809, bmo#1889355, bmo#1893388, bmo#1895123)
    Memory safety bugs fixed in Firefox 127, Firefox ESR 115.12,
    and Thunderbird 115.12</changelog>
  <changelog author="Martin Sirringhaus &lt;martin.sirringhaus@suse.com&gt;" date="1719921600">- Mozilla Thunderbird 115.12.2
  * fixed: Annual Thunderbird Beta appeal intended for
    Thunderbird 115.12.0 did not open as expected (bmo#1898084)
- Mozilla Thunderbird 115.12.1
  * 115.12.0 got pulled because of upstream automation process errors
    and Windows installer signing changes.
    No code changes, changelog is the same as 115.12.0 (bsc#1226495)
- Added thunderbird-fix-CVE-2024-34703.patch (bsc#1227239)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1720612800">- Mozilla Thunderbird 115.13.0
  * After starting Thunderbird, the message list position was
    sometimes set to an incorrect position
  MFSA 2024-30 (bsc#1226316)
  * CVE-2024-6600 (bmo#1888340)
    Memory corruption in WebGL API
  * CVE-2024-6601 (bmo#1890748)
    Race condition in permission assignment
  * CVE-2024-6602 (bmo#1895032)
    Memory corruption in NSS
  * CVE-2024-6603 (bmo#1895081)
    Memory corruption in thread creation
  * CVE-2024-6604 (bmo#1748105, bmo#1837550, bmo#1884266)
    Memory safety bugs fixed in Firefox 128, Firefox ESR 115.13,
    and Thunderbird 115.13</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1722600000">- Mozilla Thunderbird 115.14.0
  * When using an external installation of GnuPG, Thunderbird
    occassionally sent/received corrupted messages (bmo#1898832)
  * Users of external GnuPG were unable to decrypt incorrectly
    encoded messages (bmo#1906903)
  MFSA 2024-38 (bsc#1228648)
  * CVE-2024-7519 (bmo#1902307)
    Out of bounds memory access in graphics shared memory handling
  * CVE-2024-7521 (bmo#1904644)
    Incomplete WebAssembly exception handing
  * CVE-2024-7522 (bmo#1906727)
    Out of bounds read in editor component
  * CVE-2024-7525 (bmo#1909298)
    Missing permission check when creating a StreamFilter
  * CVE-2024-7526 (bmo#1910306)
    Uninitialized memory used by WebGL
  * CVE-2024-7527 (bmo#1871303)
    Use-after-free in JavaScript garbage collection
  * CVE-2024-7529 (bmo#1903187)
    Document content could partially obscure security prompts</changelog>
  <changelog author="Manfred Hollstein &lt;manfred.h@gmx.net&gt;" date="1724932800">- Use gcc13 on Tumbleweed and where it is available.
- Don't use gcc14 as sources don't compile.</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1725624000">- Mozilla Thunderbird 115.15.0
  MFSA 2024-44 (bsc#1229821)
  * CVE-2024-8381 (bmo#1912715)
    Type confusion when looking up a property name in a "with"
    block
  * CVE-2024-8382 (bmo#1906744)
    Internal event interfaces were exposed to web content when
    browser EventHandler listener callbacks ran
  * CVE-2024-8384 (bmo#1911288)
    Garbage collection could mis-color cross-compartment objects
    in OOM conditions</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1728561600">- Mozilla Thunderbird 128.3.1
  https://www.thunderbird.net/en-US/thunderbird/128.0esr/releasenotes/
  and following release notes for minor version updates
  MFSA 2024-52  (bsc#1231413)
  * CVE-2024-9680 (bmo#1923344)
    Use-after-free in Animation timeline
  Mozilla Thunderbird 128.3.0
  MFSA 2024-32 (128.0)
  MFSA 2024-37 (128.1)
  MFSA 2024-43 (128.2)
  MFSA 2024-49 (128.3) (bsc#1230979)
  * CVE-2024-9392 (bmo#1899154, bmo#1905843)
    Compromised content process can bypass site isolation
  * CVE-2024-9393 (bmo#1918301)
    Cross-origin access to PDF contents through multipart responses
  * CVE-2024-9394 (bmo#1918874)
    Cross-origin access to JSON contents through multipart responses
  * CVE-2024-8900 (bmo#1872841)
    Clipboard write permission bypass
  * CVE-2024-9396 (bmo#1912471)
    Potential memory corruption may occur when cloning certain objects
  * CVE-2024-9397 (bmo#1916659)
    Potential directory upload bypass via clickjacking
  * CVE-2024-9398 (bmo#1881037)
    External protocol handlers could be enumerated via popups
  * CVE-2024-9399 (bmo#1907726)
    Specially crafted WebTransport requests could lead to denial
    of service
  * CVE-2024-9400 (bmo#1915249)
    Potential memory corruption during JIT compilation
  * CVE-2024-9401 (bmo#1872744, bmo#1897792, bmo#1911317, bmo#1916476)
    Memory safety bugs fixed in Firefox 131, Firefox ESR 115.16,
    Firefox ESR 128.3, Thunderbird 131, and Thunderbird 128.3
  * CVE-2024-9402 (bmo#1872744, bmo#1897792, bmo#1911317, bmo#1913445,
    bmo#1914106, bmo#1914475, bmo#1914963, bmo#1915008, bmo#1916476)
    Memory safety bugs fixed in Firefox 131, Firefox ESR 128.3,
    Thunderbird 131, and Thunderbird 128.3
- removed obsolete patches
  mozilla-bmo1504834-part3.patch
  mozilla-bmo1512162.patch
  mozilla-bmo1775202.patch
  mozilla-bmo531915.patch
  mozilla-fix-aarch64-libopus.patch
  mozilla-fix-issues-with-llvm18.patch
  mozilla-fix-top-level-asm.patch
  mozilla-partial-revert-1768632.patch
  mozilla-rust-disable-future-incompat.patch
  thunderbird-fix-CVE-2024-34703.patch
- new patch thunderbird-silence-no-return.patch
- rebased
  mozilla-bmo1504834-part1.patch
  mozilla-kde.patch
  mozilla-libavcodec58_91.patch
  mozilla-silence-no-return-type.patch</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1729080000">- Mozilla Thunderbird 128.3.2
  bugfix release:
  https://www.thunderbird.net/en-US/thunderbird/128.3.2esr/releasenotes
- bring back mozilla-bmo531915.patch to fix x86</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1729684800">- Mozilla Thunderbird 128.3.3
  * Files left over from failed folder compactions could use up
    disk space (bmo#1878541)
  * Message list returned to selected message after action on
    another message (bmo#1917485)
  * Some faulty messages were downloaded and never stored
    (bmo#1923765)
  * Messages could become corrupted during folder compaction
    (bmo#1923747,bmo#1923541,bmo#1720047)
  * Searching events by Location, Description, or URL failed
    (bmo#1912710)
  * "Remove All Shown" saved passwords deleted all logins if
    filtered without results (bmo#601447)
  * Calendar event updates were not always sent to attendees
    (bmo#1877640)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1730289600">- Mozilla Thunderbird 128.4.0
  * Export Thunderbird account settings to Thunderbird Mobile via QRCode
  Bugfixes:
  * Unable to send an unencrypted response to an OpenPGP encrypted message
  MFSA 2024-58 (bsc#1231879)
  * CVE-2024-10458 (bmo#1921733)
    Permission leak via embed or object elements
  * CVE-2024-10459 (bmo#1919087)
    Use-after-free in layout with accessibility
  * CVE-2024-10460 (bmo#1912537)
    Confusing display of origin for external protocol handler prompt
  * CVE-2024-10461 (bmo#1914521)
    XSS due to Content-Disposition being ignored in
    multipart/x-mixed-replace response
  * CVE-2024-10462 (bmo#1920423)
    Origin of permission prompt could be spoofed by long URL
  * CVE-2024-10463 (bmo#1920800)
    Cross origin video frame leak
  * CVE-2024-10464 (bmo#1913000)
    History interface could have been used to cause a Denial of
    Service condition in the browser
  * CVE-2024-10465 (bmo#1918853)
    Clipboard "paste" button persisted across tabs
  * CVE-2024-10466 (bmo#1924154)
    DOM push subscription message could hang Firefox
  * CVE-2024-10467 (bmo#1829029, bmo#1888538, bmo#1900394, bmo#1904059,
    bmo#1917742, bmo#1919809, bmo#1923706)
    Memory safety bugs fixed in Firefox 132, Thunderbird 132,
    Firefox ESR 128.4, and Thunderbird 128.4</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1730548800">- Mozilla Thunderbird 128.4.1
  * Add the 20 year donation appeal (bmo#192538)</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1730894400">- Mozilla Thunderbird 128.4.2
  * Increased the auto-compaction threshold to reduce the frequency
    of compaction (bmo#1927656)
  * fixed: New profile creation caused console errors (bmo#1912675)
  * fixed: Repair folder could result in older messages showing
    wrong date and time (bmo#1911916)
  * fixed: Recently deleted messages could become undeleted if
    message compaction failed (bmo#1924927)
  * fixed: Visual and UX improvements
    (bmo#1857413,bmo#1922934,bmo#1924437)
  * fixed: Clicking on an HTML button could cause Thunderbird to
    freeze (bmo#1879355)
  * fixed: Messages could not be selected for dragging
    (bmo#1887518)
  * fixed: Could not open attached file in a MIME encrypted
    message (bmo#1924637)
  * fixed: Account creation "Setup Documentation" link was broken
    (bmo#1925493)
  * fixed: Unable to generate QR codes when exporting to mobile
    in some cases (bmo#1928114)
  * fixed: Operating system reauthentication was missing when
    exporting QR codes for mobile (bmo#1928232)
  * fixed: Could not drag all-day events from one day to another
    in week view (bmo#1922944)</changelog>
</package>
<package pkgid="d853a3c255c16d509faf95d194d985249848ae2bf3ca00ee6cd23a4fd62a5de6646ff856bf7b5516740cf06834e9d9f20c20ad4d5b42fb8c272566713de087ca" name="MozillaThunderbird" arch="src">
  <version epoch="0" ver="128.4.3" rel="1.1"/>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1710590400">- Mozilla Thunderbird 115.9.0
  https://www.thunderbird.net/en-US/thunderbird/115.9.0/releasenotes/
  MFSA 2024-14 (bsc#1221327)
  * CVE-2024-0743 (bmo#1867408)
    Crash in NSS TLS method
  * CVE-2024-2605 (bmo#1872920)
    Windows Error Reporter could be used as a Sandbox escape vector
  * CVE-2024-2607 (bmo#1879939)
    JIT code failed to save return registers on Armv7-A
  * CVE-2024-2608 (bmo#1880692)
    Integer overflow could have led to out of bounds write
  * CVE-2024-2616 (bmo#1846197)
    Improve handling of out-of-memory conditions in ICU
  * CVE-2023-5388 (bmo#1780432)
    NSS susceptible to timing attack against RSA decryption
  * CVE-2024-2610 (bmo#1871112)
    Improper handling of html and body tags enabled CSP nonce leakage
  * CVE-2024-2611 (bmo#1876675)
    Clickjacking vulnerability could have led to a user accidentally
    granting permissions
  * CVE-2024-2612 (bmo#1879444)
    Self referencing object could have potentially led to a use-
    after-free
  * CVE-2024-2614 (bmo#1685358, bmo#1861016, bmo#1880405, bmo#1881093)
    Memory safety bugs fixed in Firefox 124, Firefox ESR 115.9,
    and Thunderbird 115.9</changelog>
  <changelog author="Manfred Hollstein &lt;manfred.h@gmx.net&gt;" date="1710936000">- LLVM18 breaks building Thunderbird on Tumbleweed; add
  * mozilla-fix-issues-with-llvm18.patch</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1713096000">- Mozilla Thunderbird 115.10.0
  https://www.thunderbird.net/en-US/thunderbird/115.10.0/releasenotes/
  MFSA 2024-20 (bsc#1222535)
  * CVE-2024-3852 (bmo#1883542)
    GetBoundName in the JIT returned the wrong object
  * CVE-2024-3854 (bmo#1884552)
    Out-of-bounds-read after mis-optimized switch statement
  * CVE-2024-3857 (bmo#1886683)
    Incorrect JITting of arguments led to use-after-free during
    garbage collection
  * CVE-2024-2609 (bmo#1866100)
    Permission prompt input delay could expire when not in focus
  * CVE-2024-3859 (bmo#1874489)
    Integer-overflow led to out-of-bounds-read in the OpenType sanitizer
  * CVE-2024-3861 (bmo#1883158)
    Potential use-after-free due to AlignedBuffer self-move
  * CVE-2024-3863 (bmo#1885855)
    Download Protections were bypassed by .xrm-ms files on Windows
  * CVE-2024-3302 (bmo#1881183)
    Denial of Service using HTTP/2 CONTINUATION frames
  * CVE-2024-3864 (bmo#1888333)
    Memory safety bug fixed in Firefox 125, Firefox ESR 115.10,
    and Thunderbird 115.10</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1713528000">- Mozilla Thunderbird 115.10.1
  https://www.thunderbird.net/en-US/thunderbird/115.10.1/releasenotes/
  * fixed hangup introduced with 115.10.0 (bmo#1891889)</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1714824000">- Mozilla Thunderbird 115.10.2:
  https://www.thunderbird.net/en-US/thunderbird/115.10.2/releasenotes/
  This release is identical to 115.10.1, other than changing the
  Update channel for self-updating builds to ESR. (bmo#1893271)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1715688000">- Mozilla Thunderbird 115.11.0
  MFSA 2024-23 (bsc#1224056)
  * CVE-2024-4367 (bmo#1893645)
    Arbitrary JavaScript execution in PDF.js
  * CVE-2024-4767 (bmo#1878577)
    IndexedDB files retained in private browsing mode
  * CVE-2024-4768 (bmo#1886082)
    Potential permissions request bypass via clickjacking
  * CVE-2024-4769 (bmo#1886108)
    Cross-origin responses could be distinguished between script
    and non-script content-types
  * CVE-2024-4770 (bmo#1893270)
    Use-after-free could occur when printing to PDF
  * CVE-2024-4777 (bmo#1878199, bmo#1893340)
    Memory safety bugs fixed in Firefox 126, Firefox ESR 115.11,
    and Thunderbird 115.11</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1716984000">- Mozilla Thunderbird 115.11.1
  * Added a short anonymous survey that a small number of users will
    be randomly asked to complete</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1718625600">- Mozilla Thunderbird 115.12.0
  https://www.thunderbird.net/en-US/thunderbird/115.12.0/releasenotes
  MFSA 2024-28 (bsc#1226027)
  * CVE-2024-5702 (bmo#1193389)
    Use-after-free in networking
  * CVE-2024-5688 (bmo#1895086)
    Use-after-free in JavaScript object transplant
  * CVE-2024-5690 (bmo#1883693)
    External protocol handlers leaked by timing attack
  * CVE-2024-5691 (bmo#1888695)
    Sandboxed iframes were able to bypass sandbox restrictions to
    open a new window
  * CVE-2024-5692 (bmo#1891234)
    Bypass of file name restrictions during saving
  * CVE-2024-5693 (bmo#1891319)
    Cross-Origin Image leak via Offscreen Canvas
  * CVE-2024-5696 (bmo#1896555)
    Memory Corruption in Text Fragments
  * CVE-2024-5700 (bmo#1862809, bmo#1889355, bmo#1893388, bmo#1895123)
    Memory safety bugs fixed in Firefox 127, Firefox ESR 115.12,
    and Thunderbird 115.12</changelog>
  <changelog author="Martin Sirringhaus &lt;martin.sirringhaus@suse.com&gt;" date="1719921600">- Mozilla Thunderbird 115.12.2
  * fixed: Annual Thunderbird Beta appeal intended for
    Thunderbird 115.12.0 did not open as expected (bmo#1898084)
- Mozilla Thunderbird 115.12.1
  * 115.12.0 got pulled because of upstream automation process errors
    and Windows installer signing changes.
    No code changes, changelog is the same as 115.12.0 (bsc#1226495)
- Added thunderbird-fix-CVE-2024-34703.patch (bsc#1227239)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1720612800">- Mozilla Thunderbird 115.13.0
  * After starting Thunderbird, the message list position was
    sometimes set to an incorrect position
  MFSA 2024-30 (bsc#1226316)
  * CVE-2024-6600 (bmo#1888340)
    Memory corruption in WebGL API
  * CVE-2024-6601 (bmo#1890748)
    Race condition in permission assignment
  * CVE-2024-6602 (bmo#1895032)
    Memory corruption in NSS
  * CVE-2024-6603 (bmo#1895081)
    Memory corruption in thread creation
  * CVE-2024-6604 (bmo#1748105, bmo#1837550, bmo#1884266)
    Memory safety bugs fixed in Firefox 128, Firefox ESR 115.13,
    and Thunderbird 115.13</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1722600000">- Mozilla Thunderbird 115.14.0
  * When using an external installation of GnuPG, Thunderbird
    occassionally sent/received corrupted messages (bmo#1898832)
  * Users of external GnuPG were unable to decrypt incorrectly
    encoded messages (bmo#1906903)
  MFSA 2024-38 (bsc#1228648)
  * CVE-2024-7519 (bmo#1902307)
    Out of bounds memory access in graphics shared memory handling
  * CVE-2024-7521 (bmo#1904644)
    Incomplete WebAssembly exception handing
  * CVE-2024-7522 (bmo#1906727)
    Out of bounds read in editor component
  * CVE-2024-7525 (bmo#1909298)
    Missing permission check when creating a StreamFilter
  * CVE-2024-7526 (bmo#1910306)
    Uninitialized memory used by WebGL
  * CVE-2024-7527 (bmo#1871303)
    Use-after-free in JavaScript garbage collection
  * CVE-2024-7529 (bmo#1903187)
    Document content could partially obscure security prompts</changelog>
  <changelog author="Manfred Hollstein &lt;manfred.h@gmx.net&gt;" date="1724932800">- Use gcc13 on Tumbleweed and where it is available.
- Don't use gcc14 as sources don't compile.</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1725624000">- Mozilla Thunderbird 115.15.0
  MFSA 2024-44 (bsc#1229821)
  * CVE-2024-8381 (bmo#1912715)
    Type confusion when looking up a property name in a "with"
    block
  * CVE-2024-8382 (bmo#1906744)
    Internal event interfaces were exposed to web content when
    browser EventHandler listener callbacks ran
  * CVE-2024-8384 (bmo#1911288)
    Garbage collection could mis-color cross-compartment objects
    in OOM conditions</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1728561600">- Mozilla Thunderbird 128.3.1
  https://www.thunderbird.net/en-US/thunderbird/128.0esr/releasenotes/
  and following release notes for minor version updates
  MFSA 2024-52  (bsc#1231413)
  * CVE-2024-9680 (bmo#1923344)
    Use-after-free in Animation timeline
  Mozilla Thunderbird 128.3.0
  MFSA 2024-32 (128.0)
  MFSA 2024-37 (128.1)
  MFSA 2024-43 (128.2)
  MFSA 2024-49 (128.3) (bsc#1230979)
  * CVE-2024-9392 (bmo#1899154, bmo#1905843)
    Compromised content process can bypass site isolation
  * CVE-2024-9393 (bmo#1918301)
    Cross-origin access to PDF contents through multipart responses
  * CVE-2024-9394 (bmo#1918874)
    Cross-origin access to JSON contents through multipart responses
  * CVE-2024-8900 (bmo#1872841)
    Clipboard write permission bypass
  * CVE-2024-9396 (bmo#1912471)
    Potential memory corruption may occur when cloning certain objects
  * CVE-2024-9397 (bmo#1916659)
    Potential directory upload bypass via clickjacking
  * CVE-2024-9398 (bmo#1881037)
    External protocol handlers could be enumerated via popups
  * CVE-2024-9399 (bmo#1907726)
    Specially crafted WebTransport requests could lead to denial
    of service
  * CVE-2024-9400 (bmo#1915249)
    Potential memory corruption during JIT compilation
  * CVE-2024-9401 (bmo#1872744, bmo#1897792, bmo#1911317, bmo#1916476)
    Memory safety bugs fixed in Firefox 131, Firefox ESR 115.16,
    Firefox ESR 128.3, Thunderbird 131, and Thunderbird 128.3
  * CVE-2024-9402 (bmo#1872744, bmo#1897792, bmo#1911317, bmo#1913445,
    bmo#1914106, bmo#1914475, bmo#1914963, bmo#1915008, bmo#1916476)
    Memory safety bugs fixed in Firefox 131, Firefox ESR 128.3,
    Thunderbird 131, and Thunderbird 128.3
- removed obsolete patches
  mozilla-bmo1504834-part3.patch
  mozilla-bmo1512162.patch
  mozilla-bmo1775202.patch
  mozilla-bmo531915.patch
  mozilla-fix-aarch64-libopus.patch
  mozilla-fix-issues-with-llvm18.patch
  mozilla-fix-top-level-asm.patch
  mozilla-partial-revert-1768632.patch
  mozilla-rust-disable-future-incompat.patch
  thunderbird-fix-CVE-2024-34703.patch
- new patch thunderbird-silence-no-return.patch
- rebased
  mozilla-bmo1504834-part1.patch
  mozilla-kde.patch
  mozilla-libavcodec58_91.patch
  mozilla-silence-no-return-type.patch</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1729080000">- Mozilla Thunderbird 128.3.2
  bugfix release:
  https://www.thunderbird.net/en-US/thunderbird/128.3.2esr/releasenotes
- bring back mozilla-bmo531915.patch to fix x86</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1729684800">- Mozilla Thunderbird 128.3.3
  * Files left over from failed folder compactions could use up
    disk space (bmo#1878541)
  * Message list returned to selected message after action on
    another message (bmo#1917485)
  * Some faulty messages were downloaded and never stored
    (bmo#1923765)
  * Messages could become corrupted during folder compaction
    (bmo#1923747,bmo#1923541,bmo#1720047)
  * Searching events by Location, Description, or URL failed
    (bmo#1912710)
  * "Remove All Shown" saved passwords deleted all logins if
    filtered without results (bmo#601447)
  * Calendar event updates were not always sent to attendees
    (bmo#1877640)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1730289600">- Mozilla Thunderbird 128.4.0
  * Export Thunderbird account settings to Thunderbird Mobile via QRCode
  Bugfixes:
  * Unable to send an unencrypted response to an OpenPGP encrypted message
  MFSA 2024-58 (bsc#1231879)
  * CVE-2024-10458 (bmo#1921733)
    Permission leak via embed or object elements
  * CVE-2024-10459 (bmo#1919087)
    Use-after-free in layout with accessibility
  * CVE-2024-10460 (bmo#1912537)
    Confusing display of origin for external protocol handler prompt
  * CVE-2024-10461 (bmo#1914521)
    XSS due to Content-Disposition being ignored in
    multipart/x-mixed-replace response
  * CVE-2024-10462 (bmo#1920423)
    Origin of permission prompt could be spoofed by long URL
  * CVE-2024-10463 (bmo#1920800)
    Cross origin video frame leak
  * CVE-2024-10464 (bmo#1913000)
    History interface could have been used to cause a Denial of
    Service condition in the browser
  * CVE-2024-10465 (bmo#1918853)
    Clipboard "paste" button persisted across tabs
  * CVE-2024-10466 (bmo#1924154)
    DOM push subscription message could hang Firefox
  * CVE-2024-10467 (bmo#1829029, bmo#1888538, bmo#1900394, bmo#1904059,
    bmo#1917742, bmo#1919809, bmo#1923706)
    Memory safety bugs fixed in Firefox 132, Thunderbird 132,
    Firefox ESR 128.4, and Thunderbird 128.4</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1730548800">- Mozilla Thunderbird 128.4.1
  * Add the 20 year donation appeal (bmo#192538)</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1730894400">- Mozilla Thunderbird 128.4.2
  * Increased the auto-compaction threshold to reduce the frequency
    of compaction (bmo#1927656)
  * fixed: New profile creation caused console errors (bmo#1912675)
  * fixed: Repair folder could result in older messages showing
    wrong date and time (bmo#1911916)
  * fixed: Recently deleted messages could become undeleted if
    message compaction failed (bmo#1924927)
  * fixed: Visual and UX improvements
    (bmo#1857413,bmo#1922934,bmo#1924437)
  * fixed: Clicking on an HTML button could cause Thunderbird to
    freeze (bmo#1879355)
  * fixed: Messages could not be selected for dragging
    (bmo#1887518)
  * fixed: Could not open attached file in a MIME encrypted
    message (bmo#1924637)
  * fixed: Account creation "Setup Documentation" link was broken
    (bmo#1925493)
  * fixed: Unable to generate QR codes when exporting to mobile
    in some cases (bmo#1928114)
  * fixed: Operating system reauthentication was missing when
    exporting QR codes for mobile (bmo#1928232)
  * fixed: Could not drag all-day events from one day to another
    in week view (bmo#1922944)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1731153600">- Mozilla Thunderbird 128.4.3
  Fixes:
  * Folder corruption could cause Thunderbird to freeze and become unusable
  * Message corruption could be propagated when reading mbox
  * Folder compaction was not abandoned on shutdown
  * Folder compaction did not clean up on failure
  * Collapsed NNTP thread incorrectly indicated there were unread messages
  * Navigating to next unread message did not wait for all messages
    to be loaded
  * Applying column view to folder and children could break if folder
    error occurred
  * Remote content notifications were broken with encrypted messages
  * Updating criteria of a saved search resulted in poor search performance
  * Drop-downs may not work in some places
  MFSA 2024-61
  * CVE-2024-11159 (bmo#1925929)
    Potential disclosure of plaintext in OpenPGP encrypted message
- remove kmozillahelper support (boo#1226112)
  * removed mozilla-kde.patch
  * requires xdg-desktop-portal instead</changelog>
</package>
<package pkgid="f6d38f8e39b11c8767cc1efa3993e0be600ba474ccc78a82d80dba4456af28d468923a60fdbcb057330f6aad47c6526e0c630f095c6e0ef17b5c46382dae2f16" name="MozillaThunderbird" arch="x86_64">
  <version epoch="0" ver="128.4.3" rel="1.1"/>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1710590400">- Mozilla Thunderbird 115.9.0
  https://www.thunderbird.net/en-US/thunderbird/115.9.0/releasenotes/
  MFSA 2024-14 (bsc#1221327)
  * CVE-2024-0743 (bmo#1867408)
    Crash in NSS TLS method
  * CVE-2024-2605 (bmo#1872920)
    Windows Error Reporter could be used as a Sandbox escape vector
  * CVE-2024-2607 (bmo#1879939)
    JIT code failed to save return registers on Armv7-A
  * CVE-2024-2608 (bmo#1880692)
    Integer overflow could have led to out of bounds write
  * CVE-2024-2616 (bmo#1846197)
    Improve handling of out-of-memory conditions in ICU
  * CVE-2023-5388 (bmo#1780432)
    NSS susceptible to timing attack against RSA decryption
  * CVE-2024-2610 (bmo#1871112)
    Improper handling of html and body tags enabled CSP nonce leakage
  * CVE-2024-2611 (bmo#1876675)
    Clickjacking vulnerability could have led to a user accidentally
    granting permissions
  * CVE-2024-2612 (bmo#1879444)
    Self referencing object could have potentially led to a use-
    after-free
  * CVE-2024-2614 (bmo#1685358, bmo#1861016, bmo#1880405, bmo#1881093)
    Memory safety bugs fixed in Firefox 124, Firefox ESR 115.9,
    and Thunderbird 115.9</changelog>
  <changelog author="Manfred Hollstein &lt;manfred.h@gmx.net&gt;" date="1710936000">- LLVM18 breaks building Thunderbird on Tumbleweed; add
  * mozilla-fix-issues-with-llvm18.patch</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1713096000">- Mozilla Thunderbird 115.10.0
  https://www.thunderbird.net/en-US/thunderbird/115.10.0/releasenotes/
  MFSA 2024-20 (bsc#1222535)
  * CVE-2024-3852 (bmo#1883542)
    GetBoundName in the JIT returned the wrong object
  * CVE-2024-3854 (bmo#1884552)
    Out-of-bounds-read after mis-optimized switch statement
  * CVE-2024-3857 (bmo#1886683)
    Incorrect JITting of arguments led to use-after-free during
    garbage collection
  * CVE-2024-2609 (bmo#1866100)
    Permission prompt input delay could expire when not in focus
  * CVE-2024-3859 (bmo#1874489)
    Integer-overflow led to out-of-bounds-read in the OpenType sanitizer
  * CVE-2024-3861 (bmo#1883158)
    Potential use-after-free due to AlignedBuffer self-move
  * CVE-2024-3863 (bmo#1885855)
    Download Protections were bypassed by .xrm-ms files on Windows
  * CVE-2024-3302 (bmo#1881183)
    Denial of Service using HTTP/2 CONTINUATION frames
  * CVE-2024-3864 (bmo#1888333)
    Memory safety bug fixed in Firefox 125, Firefox ESR 115.10,
    and Thunderbird 115.10</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1713528000">- Mozilla Thunderbird 115.10.1
  https://www.thunderbird.net/en-US/thunderbird/115.10.1/releasenotes/
  * fixed hangup introduced with 115.10.0 (bmo#1891889)</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1714824000">- Mozilla Thunderbird 115.10.2:
  https://www.thunderbird.net/en-US/thunderbird/115.10.2/releasenotes/
  This release is identical to 115.10.1, other than changing the
  Update channel for self-updating builds to ESR. (bmo#1893271)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1715688000">- Mozilla Thunderbird 115.11.0
  MFSA 2024-23 (bsc#1224056)
  * CVE-2024-4367 (bmo#1893645)
    Arbitrary JavaScript execution in PDF.js
  * CVE-2024-4767 (bmo#1878577)
    IndexedDB files retained in private browsing mode
  * CVE-2024-4768 (bmo#1886082)
    Potential permissions request bypass via clickjacking
  * CVE-2024-4769 (bmo#1886108)
    Cross-origin responses could be distinguished between script
    and non-script content-types
  * CVE-2024-4770 (bmo#1893270)
    Use-after-free could occur when printing to PDF
  * CVE-2024-4777 (bmo#1878199, bmo#1893340)
    Memory safety bugs fixed in Firefox 126, Firefox ESR 115.11,
    and Thunderbird 115.11</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1716984000">- Mozilla Thunderbird 115.11.1
  * Added a short anonymous survey that a small number of users will
    be randomly asked to complete</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1718625600">- Mozilla Thunderbird 115.12.0
  https://www.thunderbird.net/en-US/thunderbird/115.12.0/releasenotes
  MFSA 2024-28 (bsc#1226027)
  * CVE-2024-5702 (bmo#1193389)
    Use-after-free in networking
  * CVE-2024-5688 (bmo#1895086)
    Use-after-free in JavaScript object transplant
  * CVE-2024-5690 (bmo#1883693)
    External protocol handlers leaked by timing attack
  * CVE-2024-5691 (bmo#1888695)
    Sandboxed iframes were able to bypass sandbox restrictions to
    open a new window
  * CVE-2024-5692 (bmo#1891234)
    Bypass of file name restrictions during saving
  * CVE-2024-5693 (bmo#1891319)
    Cross-Origin Image leak via Offscreen Canvas
  * CVE-2024-5696 (bmo#1896555)
    Memory Corruption in Text Fragments
  * CVE-2024-5700 (bmo#1862809, bmo#1889355, bmo#1893388, bmo#1895123)
    Memory safety bugs fixed in Firefox 127, Firefox ESR 115.12,
    and Thunderbird 115.12</changelog>
  <changelog author="Martin Sirringhaus &lt;martin.sirringhaus@suse.com&gt;" date="1719921600">- Mozilla Thunderbird 115.12.2
  * fixed: Annual Thunderbird Beta appeal intended for
    Thunderbird 115.12.0 did not open as expected (bmo#1898084)
- Mozilla Thunderbird 115.12.1
  * 115.12.0 got pulled because of upstream automation process errors
    and Windows installer signing changes.
    No code changes, changelog is the same as 115.12.0 (bsc#1226495)
- Added thunderbird-fix-CVE-2024-34703.patch (bsc#1227239)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1720612800">- Mozilla Thunderbird 115.13.0
  * After starting Thunderbird, the message list position was
    sometimes set to an incorrect position
  MFSA 2024-30 (bsc#1226316)
  * CVE-2024-6600 (bmo#1888340)
    Memory corruption in WebGL API
  * CVE-2024-6601 (bmo#1890748)
    Race condition in permission assignment
  * CVE-2024-6602 (bmo#1895032)
    Memory corruption in NSS
  * CVE-2024-6603 (bmo#1895081)
    Memory corruption in thread creation
  * CVE-2024-6604 (bmo#1748105, bmo#1837550, bmo#1884266)
    Memory safety bugs fixed in Firefox 128, Firefox ESR 115.13,
    and Thunderbird 115.13</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1722600000">- Mozilla Thunderbird 115.14.0
  * When using an external installation of GnuPG, Thunderbird
    occassionally sent/received corrupted messages (bmo#1898832)
  * Users of external GnuPG were unable to decrypt incorrectly
    encoded messages (bmo#1906903)
  MFSA 2024-38 (bsc#1228648)
  * CVE-2024-7519 (bmo#1902307)
    Out of bounds memory access in graphics shared memory handling
  * CVE-2024-7521 (bmo#1904644)
    Incomplete WebAssembly exception handing
  * CVE-2024-7522 (bmo#1906727)
    Out of bounds read in editor component
  * CVE-2024-7525 (bmo#1909298)
    Missing permission check when creating a StreamFilter
  * CVE-2024-7526 (bmo#1910306)
    Uninitialized memory used by WebGL
  * CVE-2024-7527 (bmo#1871303)
    Use-after-free in JavaScript garbage collection
  * CVE-2024-7529 (bmo#1903187)
    Document content could partially obscure security prompts</changelog>
  <changelog author="Manfred Hollstein &lt;manfred.h@gmx.net&gt;" date="1724932800">- Use gcc13 on Tumbleweed and where it is available.
- Don't use gcc14 as sources don't compile.</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1725624000">- Mozilla Thunderbird 115.15.0
  MFSA 2024-44 (bsc#1229821)
  * CVE-2024-8381 (bmo#1912715)
    Type confusion when looking up a property name in a "with"
    block
  * CVE-2024-8382 (bmo#1906744)
    Internal event interfaces were exposed to web content when
    browser EventHandler listener callbacks ran
  * CVE-2024-8384 (bmo#1911288)
    Garbage collection could mis-color cross-compartment objects
    in OOM conditions</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1728561600">- Mozilla Thunderbird 128.3.1
  https://www.thunderbird.net/en-US/thunderbird/128.0esr/releasenotes/
  and following release notes for minor version updates
  MFSA 2024-52  (bsc#1231413)
  * CVE-2024-9680 (bmo#1923344)
    Use-after-free in Animation timeline
  Mozilla Thunderbird 128.3.0
  MFSA 2024-32 (128.0)
  MFSA 2024-37 (128.1)
  MFSA 2024-43 (128.2)
  MFSA 2024-49 (128.3) (bsc#1230979)
  * CVE-2024-9392 (bmo#1899154, bmo#1905843)
    Compromised content process can bypass site isolation
  * CVE-2024-9393 (bmo#1918301)
    Cross-origin access to PDF contents through multipart responses
  * CVE-2024-9394 (bmo#1918874)
    Cross-origin access to JSON contents through multipart responses
  * CVE-2024-8900 (bmo#1872841)
    Clipboard write permission bypass
  * CVE-2024-9396 (bmo#1912471)
    Potential memory corruption may occur when cloning certain objects
  * CVE-2024-9397 (bmo#1916659)
    Potential directory upload bypass via clickjacking
  * CVE-2024-9398 (bmo#1881037)
    External protocol handlers could be enumerated via popups
  * CVE-2024-9399 (bmo#1907726)
    Specially crafted WebTransport requests could lead to denial
    of service
  * CVE-2024-9400 (bmo#1915249)
    Potential memory corruption during JIT compilation
  * CVE-2024-9401 (bmo#1872744, bmo#1897792, bmo#1911317, bmo#1916476)
    Memory safety bugs fixed in Firefox 131, Firefox ESR 115.16,
    Firefox ESR 128.3, Thunderbird 131, and Thunderbird 128.3
  * CVE-2024-9402 (bmo#1872744, bmo#1897792, bmo#1911317, bmo#1913445,
    bmo#1914106, bmo#1914475, bmo#1914963, bmo#1915008, bmo#1916476)
    Memory safety bugs fixed in Firefox 131, Firefox ESR 128.3,
    Thunderbird 131, and Thunderbird 128.3
- removed obsolete patches
  mozilla-bmo1504834-part3.patch
  mozilla-bmo1512162.patch
  mozilla-bmo1775202.patch
  mozilla-bmo531915.patch
  mozilla-fix-aarch64-libopus.patch
  mozilla-fix-issues-with-llvm18.patch
  mozilla-fix-top-level-asm.patch
  mozilla-partial-revert-1768632.patch
  mozilla-rust-disable-future-incompat.patch
  thunderbird-fix-CVE-2024-34703.patch
- new patch thunderbird-silence-no-return.patch
- rebased
  mozilla-bmo1504834-part1.patch
  mozilla-kde.patch
  mozilla-libavcodec58_91.patch
  mozilla-silence-no-return-type.patch</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1729080000">- Mozilla Thunderbird 128.3.2
  bugfix release:
  https://www.thunderbird.net/en-US/thunderbird/128.3.2esr/releasenotes
- bring back mozilla-bmo531915.patch to fix x86</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1729684800">- Mozilla Thunderbird 128.3.3
  * Files left over from failed folder compactions could use up
    disk space (bmo#1878541)
  * Message list returned to selected message after action on
    another message (bmo#1917485)
  * Some faulty messages were downloaded and never stored
    (bmo#1923765)
  * Messages could become corrupted during folder compaction
    (bmo#1923747,bmo#1923541,bmo#1720047)
  * Searching events by Location, Description, or URL failed
    (bmo#1912710)
  * "Remove All Shown" saved passwords deleted all logins if
    filtered without results (bmo#601447)
  * Calendar event updates were not always sent to attendees
    (bmo#1877640)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1730289600">- Mozilla Thunderbird 128.4.0
  * Export Thunderbird account settings to Thunderbird Mobile via QRCode
  Bugfixes:
  * Unable to send an unencrypted response to an OpenPGP encrypted message
  MFSA 2024-58 (bsc#1231879)
  * CVE-2024-10458 (bmo#1921733)
    Permission leak via embed or object elements
  * CVE-2024-10459 (bmo#1919087)
    Use-after-free in layout with accessibility
  * CVE-2024-10460 (bmo#1912537)
    Confusing display of origin for external protocol handler prompt
  * CVE-2024-10461 (bmo#1914521)
    XSS due to Content-Disposition being ignored in
    multipart/x-mixed-replace response
  * CVE-2024-10462 (bmo#1920423)
    Origin of permission prompt could be spoofed by long URL
  * CVE-2024-10463 (bmo#1920800)
    Cross origin video frame leak
  * CVE-2024-10464 (bmo#1913000)
    History interface could have been used to cause a Denial of
    Service condition in the browser
  * CVE-2024-10465 (bmo#1918853)
    Clipboard "paste" button persisted across tabs
  * CVE-2024-10466 (bmo#1924154)
    DOM push subscription message could hang Firefox
  * CVE-2024-10467 (bmo#1829029, bmo#1888538, bmo#1900394, bmo#1904059,
    bmo#1917742, bmo#1919809, bmo#1923706)
    Memory safety bugs fixed in Firefox 132, Thunderbird 132,
    Firefox ESR 128.4, and Thunderbird 128.4</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1730548800">- Mozilla Thunderbird 128.4.1
  * Add the 20 year donation appeal (bmo#192538)</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1730894400">- Mozilla Thunderbird 128.4.2
  * Increased the auto-compaction threshold to reduce the frequency
    of compaction (bmo#1927656)
  * fixed: New profile creation caused console errors (bmo#1912675)
  * fixed: Repair folder could result in older messages showing
    wrong date and time (bmo#1911916)
  * fixed: Recently deleted messages could become undeleted if
    message compaction failed (bmo#1924927)
  * fixed: Visual and UX improvements
    (bmo#1857413,bmo#1922934,bmo#1924437)
  * fixed: Clicking on an HTML button could cause Thunderbird to
    freeze (bmo#1879355)
  * fixed: Messages could not be selected for dragging
    (bmo#1887518)
  * fixed: Could not open attached file in a MIME encrypted
    message (bmo#1924637)
  * fixed: Account creation "Setup Documentation" link was broken
    (bmo#1925493)
  * fixed: Unable to generate QR codes when exporting to mobile
    in some cases (bmo#1928114)
  * fixed: Operating system reauthentication was missing when
    exporting QR codes for mobile (bmo#1928232)
  * fixed: Could not drag all-day events from one day to another
    in week view (bmo#1922944)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1731153600">- Mozilla Thunderbird 128.4.3
  Fixes:
  * Folder corruption could cause Thunderbird to freeze and become unusable
  * Message corruption could be propagated when reading mbox
  * Folder compaction was not abandoned on shutdown
  * Folder compaction did not clean up on failure
  * Collapsed NNTP thread incorrectly indicated there were unread messages
  * Navigating to next unread message did not wait for all messages
    to be loaded
  * Applying column view to folder and children could break if folder
    error occurred
  * Remote content notifications were broken with encrypted messages
  * Updating criteria of a saved search resulted in poor search performance
  * Drop-downs may not work in some places
  MFSA 2024-61
  * CVE-2024-11159 (bmo#1925929)
    Potential disclosure of plaintext in OpenPGP encrypted message
- remove kmozillahelper support (boo#1226112)
  * removed mozilla-kde.patch
  * requires xdg-desktop-portal instead</changelog>
</package>
<package pkgid="b96354509e0330da148898e0a97327d6e4a616942c134454bdcbdc5b78a365a38d0f5487cb98ab66e359fe20ab39af2539f00e81c5ae8e4431199b17669eb9cd" name="MozillaThunderbird" arch="src">
  <version epoch="0" ver="128.4.4" rel="1.1"/>
  <changelog author="Manfred Hollstein &lt;manfred.h@gmx.net&gt;" date="1710936000">- LLVM18 breaks building Thunderbird on Tumbleweed; add
  * mozilla-fix-issues-with-llvm18.patch</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1713096000">- Mozilla Thunderbird 115.10.0
  https://www.thunderbird.net/en-US/thunderbird/115.10.0/releasenotes/
  MFSA 2024-20 (bsc#1222535)
  * CVE-2024-3852 (bmo#1883542)
    GetBoundName in the JIT returned the wrong object
  * CVE-2024-3854 (bmo#1884552)
    Out-of-bounds-read after mis-optimized switch statement
  * CVE-2024-3857 (bmo#1886683)
    Incorrect JITting of arguments led to use-after-free during
    garbage collection
  * CVE-2024-2609 (bmo#1866100)
    Permission prompt input delay could expire when not in focus
  * CVE-2024-3859 (bmo#1874489)
    Integer-overflow led to out-of-bounds-read in the OpenType sanitizer
  * CVE-2024-3861 (bmo#1883158)
    Potential use-after-free due to AlignedBuffer self-move
  * CVE-2024-3863 (bmo#1885855)
    Download Protections were bypassed by .xrm-ms files on Windows
  * CVE-2024-3302 (bmo#1881183)
    Denial of Service using HTTP/2 CONTINUATION frames
  * CVE-2024-3864 (bmo#1888333)
    Memory safety bug fixed in Firefox 125, Firefox ESR 115.10,
    and Thunderbird 115.10</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1713528000">- Mozilla Thunderbird 115.10.1
  https://www.thunderbird.net/en-US/thunderbird/115.10.1/releasenotes/
  * fixed hangup introduced with 115.10.0 (bmo#1891889)</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1714824000">- Mozilla Thunderbird 115.10.2:
  https://www.thunderbird.net/en-US/thunderbird/115.10.2/releasenotes/
  This release is identical to 115.10.1, other than changing the
  Update channel for self-updating builds to ESR. (bmo#1893271)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1715688000">- Mozilla Thunderbird 115.11.0
  MFSA 2024-23 (bsc#1224056)
  * CVE-2024-4367 (bmo#1893645)
    Arbitrary JavaScript execution in PDF.js
  * CVE-2024-4767 (bmo#1878577)
    IndexedDB files retained in private browsing mode
  * CVE-2024-4768 (bmo#1886082)
    Potential permissions request bypass via clickjacking
  * CVE-2024-4769 (bmo#1886108)
    Cross-origin responses could be distinguished between script
    and non-script content-types
  * CVE-2024-4770 (bmo#1893270)
    Use-after-free could occur when printing to PDF
  * CVE-2024-4777 (bmo#1878199, bmo#1893340)
    Memory safety bugs fixed in Firefox 126, Firefox ESR 115.11,
    and Thunderbird 115.11</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1716984000">- Mozilla Thunderbird 115.11.1
  * Added a short anonymous survey that a small number of users will
    be randomly asked to complete</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1718625600">- Mozilla Thunderbird 115.12.0
  https://www.thunderbird.net/en-US/thunderbird/115.12.0/releasenotes
  MFSA 2024-28 (bsc#1226027)
  * CVE-2024-5702 (bmo#1193389)
    Use-after-free in networking
  * CVE-2024-5688 (bmo#1895086)
    Use-after-free in JavaScript object transplant
  * CVE-2024-5690 (bmo#1883693)
    External protocol handlers leaked by timing attack
  * CVE-2024-5691 (bmo#1888695)
    Sandboxed iframes were able to bypass sandbox restrictions to
    open a new window
  * CVE-2024-5692 (bmo#1891234)
    Bypass of file name restrictions during saving
  * CVE-2024-5693 (bmo#1891319)
    Cross-Origin Image leak via Offscreen Canvas
  * CVE-2024-5696 (bmo#1896555)
    Memory Corruption in Text Fragments
  * CVE-2024-5700 (bmo#1862809, bmo#1889355, bmo#1893388, bmo#1895123)
    Memory safety bugs fixed in Firefox 127, Firefox ESR 115.12,
    and Thunderbird 115.12</changelog>
  <changelog author="Martin Sirringhaus &lt;martin.sirringhaus@suse.com&gt;" date="1719921600">- Mozilla Thunderbird 115.12.2
  * fixed: Annual Thunderbird Beta appeal intended for
    Thunderbird 115.12.0 did not open as expected (bmo#1898084)
- Mozilla Thunderbird 115.12.1
  * 115.12.0 got pulled because of upstream automation process errors
    and Windows installer signing changes.
    No code changes, changelog is the same as 115.12.0 (bsc#1226495)
- Added thunderbird-fix-CVE-2024-34703.patch (bsc#1227239)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1720612800">- Mozilla Thunderbird 115.13.0
  * After starting Thunderbird, the message list position was
    sometimes set to an incorrect position
  MFSA 2024-30 (bsc#1226316)
  * CVE-2024-6600 (bmo#1888340)
    Memory corruption in WebGL API
  * CVE-2024-6601 (bmo#1890748)
    Race condition in permission assignment
  * CVE-2024-6602 (bmo#1895032)
    Memory corruption in NSS
  * CVE-2024-6603 (bmo#1895081)
    Memory corruption in thread creation
  * CVE-2024-6604 (bmo#1748105, bmo#1837550, bmo#1884266)
    Memory safety bugs fixed in Firefox 128, Firefox ESR 115.13,
    and Thunderbird 115.13</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1722600000">- Mozilla Thunderbird 115.14.0
  * When using an external installation of GnuPG, Thunderbird
    occassionally sent/received corrupted messages (bmo#1898832)
  * Users of external GnuPG were unable to decrypt incorrectly
    encoded messages (bmo#1906903)
  MFSA 2024-38 (bsc#1228648)
  * CVE-2024-7519 (bmo#1902307)
    Out of bounds memory access in graphics shared memory handling
  * CVE-2024-7521 (bmo#1904644)
    Incomplete WebAssembly exception handing
  * CVE-2024-7522 (bmo#1906727)
    Out of bounds read in editor component
  * CVE-2024-7525 (bmo#1909298)
    Missing permission check when creating a StreamFilter
  * CVE-2024-7526 (bmo#1910306)
    Uninitialized memory used by WebGL
  * CVE-2024-7527 (bmo#1871303)
    Use-after-free in JavaScript garbage collection
  * CVE-2024-7529 (bmo#1903187)
    Document content could partially obscure security prompts</changelog>
  <changelog author="Manfred Hollstein &lt;manfred.h@gmx.net&gt;" date="1724932800">- Use gcc13 on Tumbleweed and where it is available.
- Don't use gcc14 as sources don't compile.</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1725624000">- Mozilla Thunderbird 115.15.0
  MFSA 2024-44 (bsc#1229821)
  * CVE-2024-8381 (bmo#1912715)
    Type confusion when looking up a property name in a "with"
    block
  * CVE-2024-8382 (bmo#1906744)
    Internal event interfaces were exposed to web content when
    browser EventHandler listener callbacks ran
  * CVE-2024-8384 (bmo#1911288)
    Garbage collection could mis-color cross-compartment objects
    in OOM conditions</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1728561600">- Mozilla Thunderbird 128.3.1
  https://www.thunderbird.net/en-US/thunderbird/128.0esr/releasenotes/
  and following release notes for minor version updates
  MFSA 2024-52  (bsc#1231413)
  * CVE-2024-9680 (bmo#1923344)
    Use-after-free in Animation timeline
  Mozilla Thunderbird 128.3.0
  MFSA 2024-32 (128.0)
  MFSA 2024-37 (128.1)
  MFSA 2024-43 (128.2)
  MFSA 2024-49 (128.3) (bsc#1230979)
  * CVE-2024-9392 (bmo#1899154, bmo#1905843)
    Compromised content process can bypass site isolation
  * CVE-2024-9393 (bmo#1918301)
    Cross-origin access to PDF contents through multipart responses
  * CVE-2024-9394 (bmo#1918874)
    Cross-origin access to JSON contents through multipart responses
  * CVE-2024-8900 (bmo#1872841)
    Clipboard write permission bypass
  * CVE-2024-9396 (bmo#1912471)
    Potential memory corruption may occur when cloning certain objects
  * CVE-2024-9397 (bmo#1916659)
    Potential directory upload bypass via clickjacking
  * CVE-2024-9398 (bmo#1881037)
    External protocol handlers could be enumerated via popups
  * CVE-2024-9399 (bmo#1907726)
    Specially crafted WebTransport requests could lead to denial
    of service
  * CVE-2024-9400 (bmo#1915249)
    Potential memory corruption during JIT compilation
  * CVE-2024-9401 (bmo#1872744, bmo#1897792, bmo#1911317, bmo#1916476)
    Memory safety bugs fixed in Firefox 131, Firefox ESR 115.16,
    Firefox ESR 128.3, Thunderbird 131, and Thunderbird 128.3
  * CVE-2024-9402 (bmo#1872744, bmo#1897792, bmo#1911317, bmo#1913445,
    bmo#1914106, bmo#1914475, bmo#1914963, bmo#1915008, bmo#1916476)
    Memory safety bugs fixed in Firefox 131, Firefox ESR 128.3,
    Thunderbird 131, and Thunderbird 128.3
- removed obsolete patches
  mozilla-bmo1504834-part3.patch
  mozilla-bmo1512162.patch
  mozilla-bmo1775202.patch
  mozilla-bmo531915.patch
  mozilla-fix-aarch64-libopus.patch
  mozilla-fix-issues-with-llvm18.patch
  mozilla-fix-top-level-asm.patch
  mozilla-partial-revert-1768632.patch
  mozilla-rust-disable-future-incompat.patch
  thunderbird-fix-CVE-2024-34703.patch
- new patch thunderbird-silence-no-return.patch
- rebased
  mozilla-bmo1504834-part1.patch
  mozilla-kde.patch
  mozilla-libavcodec58_91.patch
  mozilla-silence-no-return-type.patch</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1729080000">- Mozilla Thunderbird 128.3.2
  bugfix release:
  https://www.thunderbird.net/en-US/thunderbird/128.3.2esr/releasenotes
- bring back mozilla-bmo531915.patch to fix x86</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1729684800">- Mozilla Thunderbird 128.3.3
  * Files left over from failed folder compactions could use up
    disk space (bmo#1878541)
  * Message list returned to selected message after action on
    another message (bmo#1917485)
  * Some faulty messages were downloaded and never stored
    (bmo#1923765)
  * Messages could become corrupted during folder compaction
    (bmo#1923747,bmo#1923541,bmo#1720047)
  * Searching events by Location, Description, or URL failed
    (bmo#1912710)
  * "Remove All Shown" saved passwords deleted all logins if
    filtered without results (bmo#601447)
  * Calendar event updates were not always sent to attendees
    (bmo#1877640)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1730289600">- Mozilla Thunderbird 128.4.0
  * Export Thunderbird account settings to Thunderbird Mobile via QRCode
  Bugfixes:
  * Unable to send an unencrypted response to an OpenPGP encrypted message
  MFSA 2024-58 (bsc#1231879)
  * CVE-2024-10458 (bmo#1921733)
    Permission leak via embed or object elements
  * CVE-2024-10459 (bmo#1919087)
    Use-after-free in layout with accessibility
  * CVE-2024-10460 (bmo#1912537)
    Confusing display of origin for external protocol handler prompt
  * CVE-2024-10461 (bmo#1914521)
    XSS due to Content-Disposition being ignored in
    multipart/x-mixed-replace response
  * CVE-2024-10462 (bmo#1920423)
    Origin of permission prompt could be spoofed by long URL
  * CVE-2024-10463 (bmo#1920800)
    Cross origin video frame leak
  * CVE-2024-10464 (bmo#1913000)
    History interface could have been used to cause a Denial of
    Service condition in the browser
  * CVE-2024-10465 (bmo#1918853)
    Clipboard "paste" button persisted across tabs
  * CVE-2024-10466 (bmo#1924154)
    DOM push subscription message could hang Firefox
  * CVE-2024-10467 (bmo#1829029, bmo#1888538, bmo#1900394, bmo#1904059,
    bmo#1917742, bmo#1919809, bmo#1923706)
    Memory safety bugs fixed in Firefox 132, Thunderbird 132,
    Firefox ESR 128.4, and Thunderbird 128.4</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1730548800">- Mozilla Thunderbird 128.4.1
  * Add the 20 year donation appeal (bmo#192538)</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1730894400">- Mozilla Thunderbird 128.4.2
  * Increased the auto-compaction threshold to reduce the frequency
    of compaction (bmo#1927656)
  * fixed: New profile creation caused console errors (bmo#1912675)
  * fixed: Repair folder could result in older messages showing
    wrong date and time (bmo#1911916)
  * fixed: Recently deleted messages could become undeleted if
    message compaction failed (bmo#1924927)
  * fixed: Visual and UX improvements
    (bmo#1857413,bmo#1922934,bmo#1924437)
  * fixed: Clicking on an HTML button could cause Thunderbird to
    freeze (bmo#1879355)
  * fixed: Messages could not be selected for dragging
    (bmo#1887518)
  * fixed: Could not open attached file in a MIME encrypted
    message (bmo#1924637)
  * fixed: Account creation "Setup Documentation" link was broken
    (bmo#1925493)
  * fixed: Unable to generate QR codes when exporting to mobile
    in some cases (bmo#1928114)
  * fixed: Operating system reauthentication was missing when
    exporting QR codes for mobile (bmo#1928232)
  * fixed: Could not drag all-day events from one day to another
    in week view (bmo#1922944)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1731153600">- Mozilla Thunderbird 128.4.3
  Fixes:
  * Folder corruption could cause Thunderbird to freeze and become unusable
  * Message corruption could be propagated when reading mbox
  * Folder compaction was not abandoned on shutdown
  * Folder compaction did not clean up on failure
  * Collapsed NNTP thread incorrectly indicated there were unread messages
  * Navigating to next unread message did not wait for all messages
    to be loaded
  * Applying column view to folder and children could break if folder
    error occurred
  * Remote content notifications were broken with encrypted messages
  * Updating criteria of a saved search resulted in poor search performance
  * Drop-downs may not work in some places
  MFSA 2024-61
  * CVE-2024-11159 (bmo#1925929)
    Potential disclosure of plaintext in OpenPGP encrypted message
- remove kmozillahelper support (boo#1226112)
  * removed mozilla-kde.patch
  * requires xdg-desktop-portal instead</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1732104000">- Mozilla Thunderbird 128.4.4
  * QR codes were not scannable by Android app when using most
    high-contrast themes
  * Primary password prompt cancellation during mobile export was
    confusing
- revert using xdg-desktop-portal as some desktops have limited
  support</changelog>
</package>
<package pkgid="8d743e9bd3acc6c4eba7df60e82fed889d6c490990d93d69519d6114850955ca5c0aad797456c89933f28ebab6a5e7a3f095827c18ae934094dce2859bec6d75" name="MozillaThunderbird" arch="x86_64">
  <version epoch="0" ver="128.4.4" rel="1.1"/>
  <changelog author="Manfred Hollstein &lt;manfred.h@gmx.net&gt;" date="1710936000">- LLVM18 breaks building Thunderbird on Tumbleweed; add
  * mozilla-fix-issues-with-llvm18.patch</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1713096000">- Mozilla Thunderbird 115.10.0
  https://www.thunderbird.net/en-US/thunderbird/115.10.0/releasenotes/
  MFSA 2024-20 (bsc#1222535)
  * CVE-2024-3852 (bmo#1883542)
    GetBoundName in the JIT returned the wrong object
  * CVE-2024-3854 (bmo#1884552)
    Out-of-bounds-read after mis-optimized switch statement
  * CVE-2024-3857 (bmo#1886683)
    Incorrect JITting of arguments led to use-after-free during
    garbage collection
  * CVE-2024-2609 (bmo#1866100)
    Permission prompt input delay could expire when not in focus
  * CVE-2024-3859 (bmo#1874489)
    Integer-overflow led to out-of-bounds-read in the OpenType sanitizer
  * CVE-2024-3861 (bmo#1883158)
    Potential use-after-free due to AlignedBuffer self-move
  * CVE-2024-3863 (bmo#1885855)
    Download Protections were bypassed by .xrm-ms files on Windows
  * CVE-2024-3302 (bmo#1881183)
    Denial of Service using HTTP/2 CONTINUATION frames
  * CVE-2024-3864 (bmo#1888333)
    Memory safety bug fixed in Firefox 125, Firefox ESR 115.10,
    and Thunderbird 115.10</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1713528000">- Mozilla Thunderbird 115.10.1
  https://www.thunderbird.net/en-US/thunderbird/115.10.1/releasenotes/
  * fixed hangup introduced with 115.10.0 (bmo#1891889)</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1714824000">- Mozilla Thunderbird 115.10.2:
  https://www.thunderbird.net/en-US/thunderbird/115.10.2/releasenotes/
  This release is identical to 115.10.1, other than changing the
  Update channel for self-updating builds to ESR. (bmo#1893271)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1715688000">- Mozilla Thunderbird 115.11.0
  MFSA 2024-23 (bsc#1224056)
  * CVE-2024-4367 (bmo#1893645)
    Arbitrary JavaScript execution in PDF.js
  * CVE-2024-4767 (bmo#1878577)
    IndexedDB files retained in private browsing mode
  * CVE-2024-4768 (bmo#1886082)
    Potential permissions request bypass via clickjacking
  * CVE-2024-4769 (bmo#1886108)
    Cross-origin responses could be distinguished between script
    and non-script content-types
  * CVE-2024-4770 (bmo#1893270)
    Use-after-free could occur when printing to PDF
  * CVE-2024-4777 (bmo#1878199, bmo#1893340)
    Memory safety bugs fixed in Firefox 126, Firefox ESR 115.11,
    and Thunderbird 115.11</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1716984000">- Mozilla Thunderbird 115.11.1
  * Added a short anonymous survey that a small number of users will
    be randomly asked to complete</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1718625600">- Mozilla Thunderbird 115.12.0
  https://www.thunderbird.net/en-US/thunderbird/115.12.0/releasenotes
  MFSA 2024-28 (bsc#1226027)
  * CVE-2024-5702 (bmo#1193389)
    Use-after-free in networking
  * CVE-2024-5688 (bmo#1895086)
    Use-after-free in JavaScript object transplant
  * CVE-2024-5690 (bmo#1883693)
    External protocol handlers leaked by timing attack
  * CVE-2024-5691 (bmo#1888695)
    Sandboxed iframes were able to bypass sandbox restrictions to
    open a new window
  * CVE-2024-5692 (bmo#1891234)
    Bypass of file name restrictions during saving
  * CVE-2024-5693 (bmo#1891319)
    Cross-Origin Image leak via Offscreen Canvas
  * CVE-2024-5696 (bmo#1896555)
    Memory Corruption in Text Fragments
  * CVE-2024-5700 (bmo#1862809, bmo#1889355, bmo#1893388, bmo#1895123)
    Memory safety bugs fixed in Firefox 127, Firefox ESR 115.12,
    and Thunderbird 115.12</changelog>
  <changelog author="Martin Sirringhaus &lt;martin.sirringhaus@suse.com&gt;" date="1719921600">- Mozilla Thunderbird 115.12.2
  * fixed: Annual Thunderbird Beta appeal intended for
    Thunderbird 115.12.0 did not open as expected (bmo#1898084)
- Mozilla Thunderbird 115.12.1
  * 115.12.0 got pulled because of upstream automation process errors
    and Windows installer signing changes.
    No code changes, changelog is the same as 115.12.0 (bsc#1226495)
- Added thunderbird-fix-CVE-2024-34703.patch (bsc#1227239)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1720612800">- Mozilla Thunderbird 115.13.0
  * After starting Thunderbird, the message list position was
    sometimes set to an incorrect position
  MFSA 2024-30 (bsc#1226316)
  * CVE-2024-6600 (bmo#1888340)
    Memory corruption in WebGL API
  * CVE-2024-6601 (bmo#1890748)
    Race condition in permission assignment
  * CVE-2024-6602 (bmo#1895032)
    Memory corruption in NSS
  * CVE-2024-6603 (bmo#1895081)
    Memory corruption in thread creation
  * CVE-2024-6604 (bmo#1748105, bmo#1837550, bmo#1884266)
    Memory safety bugs fixed in Firefox 128, Firefox ESR 115.13,
    and Thunderbird 115.13</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1722600000">- Mozilla Thunderbird 115.14.0
  * When using an external installation of GnuPG, Thunderbird
    occassionally sent/received corrupted messages (bmo#1898832)
  * Users of external GnuPG were unable to decrypt incorrectly
    encoded messages (bmo#1906903)
  MFSA 2024-38 (bsc#1228648)
  * CVE-2024-7519 (bmo#1902307)
    Out of bounds memory access in graphics shared memory handling
  * CVE-2024-7521 (bmo#1904644)
    Incomplete WebAssembly exception handing
  * CVE-2024-7522 (bmo#1906727)
    Out of bounds read in editor component
  * CVE-2024-7525 (bmo#1909298)
    Missing permission check when creating a StreamFilter
  * CVE-2024-7526 (bmo#1910306)
    Uninitialized memory used by WebGL
  * CVE-2024-7527 (bmo#1871303)
    Use-after-free in JavaScript garbage collection
  * CVE-2024-7529 (bmo#1903187)
    Document content could partially obscure security prompts</changelog>
  <changelog author="Manfred Hollstein &lt;manfred.h@gmx.net&gt;" date="1724932800">- Use gcc13 on Tumbleweed and where it is available.
- Don't use gcc14 as sources don't compile.</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1725624000">- Mozilla Thunderbird 115.15.0
  MFSA 2024-44 (bsc#1229821)
  * CVE-2024-8381 (bmo#1912715)
    Type confusion when looking up a property name in a "with"
    block
  * CVE-2024-8382 (bmo#1906744)
    Internal event interfaces were exposed to web content when
    browser EventHandler listener callbacks ran
  * CVE-2024-8384 (bmo#1911288)
    Garbage collection could mis-color cross-compartment objects
    in OOM conditions</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1728561600">- Mozilla Thunderbird 128.3.1
  https://www.thunderbird.net/en-US/thunderbird/128.0esr/releasenotes/
  and following release notes for minor version updates
  MFSA 2024-52  (bsc#1231413)
  * CVE-2024-9680 (bmo#1923344)
    Use-after-free in Animation timeline
  Mozilla Thunderbird 128.3.0
  MFSA 2024-32 (128.0)
  MFSA 2024-37 (128.1)
  MFSA 2024-43 (128.2)
  MFSA 2024-49 (128.3) (bsc#1230979)
  * CVE-2024-9392 (bmo#1899154, bmo#1905843)
    Compromised content process can bypass site isolation
  * CVE-2024-9393 (bmo#1918301)
    Cross-origin access to PDF contents through multipart responses
  * CVE-2024-9394 (bmo#1918874)
    Cross-origin access to JSON contents through multipart responses
  * CVE-2024-8900 (bmo#1872841)
    Clipboard write permission bypass
  * CVE-2024-9396 (bmo#1912471)
    Potential memory corruption may occur when cloning certain objects
  * CVE-2024-9397 (bmo#1916659)
    Potential directory upload bypass via clickjacking
  * CVE-2024-9398 (bmo#1881037)
    External protocol handlers could be enumerated via popups
  * CVE-2024-9399 (bmo#1907726)
    Specially crafted WebTransport requests could lead to denial
    of service
  * CVE-2024-9400 (bmo#1915249)
    Potential memory corruption during JIT compilation
  * CVE-2024-9401 (bmo#1872744, bmo#1897792, bmo#1911317, bmo#1916476)
    Memory safety bugs fixed in Firefox 131, Firefox ESR 115.16,
    Firefox ESR 128.3, Thunderbird 131, and Thunderbird 128.3
  * CVE-2024-9402 (bmo#1872744, bmo#1897792, bmo#1911317, bmo#1913445,
    bmo#1914106, bmo#1914475, bmo#1914963, bmo#1915008, bmo#1916476)
    Memory safety bugs fixed in Firefox 131, Firefox ESR 128.3,
    Thunderbird 131, and Thunderbird 128.3
- removed obsolete patches
  mozilla-bmo1504834-part3.patch
  mozilla-bmo1512162.patch
  mozilla-bmo1775202.patch
  mozilla-bmo531915.patch
  mozilla-fix-aarch64-libopus.patch
  mozilla-fix-issues-with-llvm18.patch
  mozilla-fix-top-level-asm.patch
  mozilla-partial-revert-1768632.patch
  mozilla-rust-disable-future-incompat.patch
  thunderbird-fix-CVE-2024-34703.patch
- new patch thunderbird-silence-no-return.patch
- rebased
  mozilla-bmo1504834-part1.patch
  mozilla-kde.patch
  mozilla-libavcodec58_91.patch
  mozilla-silence-no-return-type.patch</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1729080000">- Mozilla Thunderbird 128.3.2
  bugfix release:
  https://www.thunderbird.net/en-US/thunderbird/128.3.2esr/releasenotes
- bring back mozilla-bmo531915.patch to fix x86</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1729684800">- Mozilla Thunderbird 128.3.3
  * Files left over from failed folder compactions could use up
    disk space (bmo#1878541)
  * Message list returned to selected message after action on
    another message (bmo#1917485)
  * Some faulty messages were downloaded and never stored
    (bmo#1923765)
  * Messages could become corrupted during folder compaction
    (bmo#1923747,bmo#1923541,bmo#1720047)
  * Searching events by Location, Description, or URL failed
    (bmo#1912710)
  * "Remove All Shown" saved passwords deleted all logins if
    filtered without results (bmo#601447)
  * Calendar event updates were not always sent to attendees
    (bmo#1877640)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1730289600">- Mozilla Thunderbird 128.4.0
  * Export Thunderbird account settings to Thunderbird Mobile via QRCode
  Bugfixes:
  * Unable to send an unencrypted response to an OpenPGP encrypted message
  MFSA 2024-58 (bsc#1231879)
  * CVE-2024-10458 (bmo#1921733)
    Permission leak via embed or object elements
  * CVE-2024-10459 (bmo#1919087)
    Use-after-free in layout with accessibility
  * CVE-2024-10460 (bmo#1912537)
    Confusing display of origin for external protocol handler prompt
  * CVE-2024-10461 (bmo#1914521)
    XSS due to Content-Disposition being ignored in
    multipart/x-mixed-replace response
  * CVE-2024-10462 (bmo#1920423)
    Origin of permission prompt could be spoofed by long URL
  * CVE-2024-10463 (bmo#1920800)
    Cross origin video frame leak
  * CVE-2024-10464 (bmo#1913000)
    History interface could have been used to cause a Denial of
    Service condition in the browser
  * CVE-2024-10465 (bmo#1918853)
    Clipboard "paste" button persisted across tabs
  * CVE-2024-10466 (bmo#1924154)
    DOM push subscription message could hang Firefox
  * CVE-2024-10467 (bmo#1829029, bmo#1888538, bmo#1900394, bmo#1904059,
    bmo#1917742, bmo#1919809, bmo#1923706)
    Memory safety bugs fixed in Firefox 132, Thunderbird 132,
    Firefox ESR 128.4, and Thunderbird 128.4</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1730548800">- Mozilla Thunderbird 128.4.1
  * Add the 20 year donation appeal (bmo#192538)</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1730894400">- Mozilla Thunderbird 128.4.2
  * Increased the auto-compaction threshold to reduce the frequency
    of compaction (bmo#1927656)
  * fixed: New profile creation caused console errors (bmo#1912675)
  * fixed: Repair folder could result in older messages showing
    wrong date and time (bmo#1911916)
  * fixed: Recently deleted messages could become undeleted if
    message compaction failed (bmo#1924927)
  * fixed: Visual and UX improvements
    (bmo#1857413,bmo#1922934,bmo#1924437)
  * fixed: Clicking on an HTML button could cause Thunderbird to
    freeze (bmo#1879355)
  * fixed: Messages could not be selected for dragging
    (bmo#1887518)
  * fixed: Could not open attached file in a MIME encrypted
    message (bmo#1924637)
  * fixed: Account creation "Setup Documentation" link was broken
    (bmo#1925493)
  * fixed: Unable to generate QR codes when exporting to mobile
    in some cases (bmo#1928114)
  * fixed: Operating system reauthentication was missing when
    exporting QR codes for mobile (bmo#1928232)
  * fixed: Could not drag all-day events from one day to another
    in week view (bmo#1922944)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1731153600">- Mozilla Thunderbird 128.4.3
  Fixes:
  * Folder corruption could cause Thunderbird to freeze and become unusable
  * Message corruption could be propagated when reading mbox
  * Folder compaction was not abandoned on shutdown
  * Folder compaction did not clean up on failure
  * Collapsed NNTP thread incorrectly indicated there were unread messages
  * Navigating to next unread message did not wait for all messages
    to be loaded
  * Applying column view to folder and children could break if folder
    error occurred
  * Remote content notifications were broken with encrypted messages
  * Updating criteria of a saved search resulted in poor search performance
  * Drop-downs may not work in some places
  MFSA 2024-61
  * CVE-2024-11159 (bmo#1925929)
    Potential disclosure of plaintext in OpenPGP encrypted message
- remove kmozillahelper support (boo#1226112)
  * removed mozilla-kde.patch
  * requires xdg-desktop-portal instead</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1732104000">- Mozilla Thunderbird 128.4.4
  * QR codes were not scannable by Android app when using most
    high-contrast themes
  * Primary password prompt cancellation during mobile export was
    confusing
- revert using xdg-desktop-portal as some desktops have limited
  support</changelog>
</package>
<package pkgid="c3d4b2fa7bf86236aa274ca80efd078b76b2ea00de17e7f94e0bb18761cd2ba8054268797565898a552a6daa43089931c4331458fce16e667aee44a6a245a52d" name="MozillaThunderbird" arch="src">
  <version epoch="0" ver="128.5.0" rel="1.0.8.1.sr20241103"/>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1713096000">- Mozilla Thunderbird 115.10.0
  https://www.thunderbird.net/en-US/thunderbird/115.10.0/releasenotes/
  MFSA 2024-20 (bsc#1222535)
  * CVE-2024-3852 (bmo#1883542)
    GetBoundName in the JIT returned the wrong object
  * CVE-2024-3854 (bmo#1884552)
    Out-of-bounds-read after mis-optimized switch statement
  * CVE-2024-3857 (bmo#1886683)
    Incorrect JITting of arguments led to use-after-free during
    garbage collection
  * CVE-2024-2609 (bmo#1866100)
    Permission prompt input delay could expire when not in focus
  * CVE-2024-3859 (bmo#1874489)
    Integer-overflow led to out-of-bounds-read in the OpenType sanitizer
  * CVE-2024-3861 (bmo#1883158)
    Potential use-after-free due to AlignedBuffer self-move
  * CVE-2024-3863 (bmo#1885855)
    Download Protections were bypassed by .xrm-ms files on Windows
  * CVE-2024-3302 (bmo#1881183)
    Denial of Service using HTTP/2 CONTINUATION frames
  * CVE-2024-3864 (bmo#1888333)
    Memory safety bug fixed in Firefox 125, Firefox ESR 115.10,
    and Thunderbird 115.10</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1713528000">- Mozilla Thunderbird 115.10.1
  https://www.thunderbird.net/en-US/thunderbird/115.10.1/releasenotes/
  * fixed hangup introduced with 115.10.0 (bmo#1891889)</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1714824000">- Mozilla Thunderbird 115.10.2:
  https://www.thunderbird.net/en-US/thunderbird/115.10.2/releasenotes/
  This release is identical to 115.10.1, other than changing the
  Update channel for self-updating builds to ESR. (bmo#1893271)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1715688000">- Mozilla Thunderbird 115.11.0
  MFSA 2024-23 (bsc#1224056)
  * CVE-2024-4367 (bmo#1893645)
    Arbitrary JavaScript execution in PDF.js
  * CVE-2024-4767 (bmo#1878577)
    IndexedDB files retained in private browsing mode
  * CVE-2024-4768 (bmo#1886082)
    Potential permissions request bypass via clickjacking
  * CVE-2024-4769 (bmo#1886108)
    Cross-origin responses could be distinguished between script
    and non-script content-types
  * CVE-2024-4770 (bmo#1893270)
    Use-after-free could occur when printing to PDF
  * CVE-2024-4777 (bmo#1878199, bmo#1893340)
    Memory safety bugs fixed in Firefox 126, Firefox ESR 115.11,
    and Thunderbird 115.11</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1716984000">- Mozilla Thunderbird 115.11.1
  * Added a short anonymous survey that a small number of users will
    be randomly asked to complete</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1718625600">- Mozilla Thunderbird 115.12.0
  https://www.thunderbird.net/en-US/thunderbird/115.12.0/releasenotes
  MFSA 2024-28 (bsc#1226027)
  * CVE-2024-5702 (bmo#1193389)
    Use-after-free in networking
  * CVE-2024-5688 (bmo#1895086)
    Use-after-free in JavaScript object transplant
  * CVE-2024-5690 (bmo#1883693)
    External protocol handlers leaked by timing attack
  * CVE-2024-5691 (bmo#1888695)
    Sandboxed iframes were able to bypass sandbox restrictions to
    open a new window
  * CVE-2024-5692 (bmo#1891234)
    Bypass of file name restrictions during saving
  * CVE-2024-5693 (bmo#1891319)
    Cross-Origin Image leak via Offscreen Canvas
  * CVE-2024-5696 (bmo#1896555)
    Memory Corruption in Text Fragments
  * CVE-2024-5700 (bmo#1862809, bmo#1889355, bmo#1893388, bmo#1895123)
    Memory safety bugs fixed in Firefox 127, Firefox ESR 115.12,
    and Thunderbird 115.12</changelog>
  <changelog author="Martin Sirringhaus &lt;martin.sirringhaus@suse.com&gt;" date="1719921600">- Mozilla Thunderbird 115.12.2
  * fixed: Annual Thunderbird Beta appeal intended for
    Thunderbird 115.12.0 did not open as expected (bmo#1898084)
- Mozilla Thunderbird 115.12.1
  * 115.12.0 got pulled because of upstream automation process errors
    and Windows installer signing changes.
    No code changes, changelog is the same as 115.12.0 (bsc#1226495)
- Added thunderbird-fix-CVE-2024-34703.patch (bsc#1227239)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1720612800">- Mozilla Thunderbird 115.13.0
  * After starting Thunderbird, the message list position was
    sometimes set to an incorrect position
  MFSA 2024-30 (bsc#1226316)
  * CVE-2024-6600 (bmo#1888340)
    Memory corruption in WebGL API
  * CVE-2024-6601 (bmo#1890748)
    Race condition in permission assignment
  * CVE-2024-6602 (bmo#1895032)
    Memory corruption in NSS
  * CVE-2024-6603 (bmo#1895081)
    Memory corruption in thread creation
  * CVE-2024-6604 (bmo#1748105, bmo#1837550, bmo#1884266)
    Memory safety bugs fixed in Firefox 128, Firefox ESR 115.13,
    and Thunderbird 115.13</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1722600000">- Mozilla Thunderbird 115.14.0
  * When using an external installation of GnuPG, Thunderbird
    occassionally sent/received corrupted messages (bmo#1898832)
  * Users of external GnuPG were unable to decrypt incorrectly
    encoded messages (bmo#1906903)
  MFSA 2024-38 (bsc#1228648)
  * CVE-2024-7519 (bmo#1902307)
    Out of bounds memory access in graphics shared memory handling
  * CVE-2024-7521 (bmo#1904644)
    Incomplete WebAssembly exception handing
  * CVE-2024-7522 (bmo#1906727)
    Out of bounds read in editor component
  * CVE-2024-7525 (bmo#1909298)
    Missing permission check when creating a StreamFilter
  * CVE-2024-7526 (bmo#1910306)
    Uninitialized memory used by WebGL
  * CVE-2024-7527 (bmo#1871303)
    Use-after-free in JavaScript garbage collection
  * CVE-2024-7529 (bmo#1903187)
    Document content could partially obscure security prompts</changelog>
  <changelog author="Manfred Hollstein &lt;manfred.h@gmx.net&gt;" date="1724932800">- Use gcc13 on Tumbleweed and where it is available.
- Don't use gcc14 as sources don't compile.</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1725624000">- Mozilla Thunderbird 115.15.0
  MFSA 2024-44 (bsc#1229821)
  * CVE-2024-8381 (bmo#1912715)
    Type confusion when looking up a property name in a "with"
    block
  * CVE-2024-8382 (bmo#1906744)
    Internal event interfaces were exposed to web content when
    browser EventHandler listener callbacks ran
  * CVE-2024-8384 (bmo#1911288)
    Garbage collection could mis-color cross-compartment objects
    in OOM conditions</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1728561600">- Mozilla Thunderbird 128.3.1
  https://www.thunderbird.net/en-US/thunderbird/128.0esr/releasenotes/
  and following release notes for minor version updates
  MFSA 2024-52  (bsc#1231413)
  * CVE-2024-9680 (bmo#1923344)
    Use-after-free in Animation timeline
  Mozilla Thunderbird 128.3.0
  MFSA 2024-32 (128.0)
  MFSA 2024-37 (128.1)
  MFSA 2024-43 (128.2)
  MFSA 2024-49 (128.3) (bsc#1230979)
  * CVE-2024-9392 (bmo#1899154, bmo#1905843)
    Compromised content process can bypass site isolation
  * CVE-2024-9393 (bmo#1918301)
    Cross-origin access to PDF contents through multipart responses
  * CVE-2024-9394 (bmo#1918874)
    Cross-origin access to JSON contents through multipart responses
  * CVE-2024-8900 (bmo#1872841)
    Clipboard write permission bypass
  * CVE-2024-9396 (bmo#1912471)
    Potential memory corruption may occur when cloning certain objects
  * CVE-2024-9397 (bmo#1916659)
    Potential directory upload bypass via clickjacking
  * CVE-2024-9398 (bmo#1881037)
    External protocol handlers could be enumerated via popups
  * CVE-2024-9399 (bmo#1907726)
    Specially crafted WebTransport requests could lead to denial
    of service
  * CVE-2024-9400 (bmo#1915249)
    Potential memory corruption during JIT compilation
  * CVE-2024-9401 (bmo#1872744, bmo#1897792, bmo#1911317, bmo#1916476)
    Memory safety bugs fixed in Firefox 131, Firefox ESR 115.16,
    Firefox ESR 128.3, Thunderbird 131, and Thunderbird 128.3
  * CVE-2024-9402 (bmo#1872744, bmo#1897792, bmo#1911317, bmo#1913445,
    bmo#1914106, bmo#1914475, bmo#1914963, bmo#1915008, bmo#1916476)
    Memory safety bugs fixed in Firefox 131, Firefox ESR 128.3,
    Thunderbird 131, and Thunderbird 128.3
- removed obsolete patches
  mozilla-bmo1504834-part3.patch
  mozilla-bmo1512162.patch
  mozilla-bmo1775202.patch
  mozilla-bmo531915.patch
  mozilla-fix-aarch64-libopus.patch
  mozilla-fix-issues-with-llvm18.patch
  mozilla-fix-top-level-asm.patch
  mozilla-partial-revert-1768632.patch
  mozilla-rust-disable-future-incompat.patch
  thunderbird-fix-CVE-2024-34703.patch
- new patch thunderbird-silence-no-return.patch
- rebased
  mozilla-bmo1504834-part1.patch
  mozilla-kde.patch
  mozilla-libavcodec58_91.patch
  mozilla-silence-no-return-type.patch</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1729080000">- Mozilla Thunderbird 128.3.2
  bugfix release:
  https://www.thunderbird.net/en-US/thunderbird/128.3.2esr/releasenotes
- bring back mozilla-bmo531915.patch to fix x86</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1729684800">- Mozilla Thunderbird 128.3.3
  * Files left over from failed folder compactions could use up
    disk space (bmo#1878541)
  * Message list returned to selected message after action on
    another message (bmo#1917485)
  * Some faulty messages were downloaded and never stored
    (bmo#1923765)
  * Messages could become corrupted during folder compaction
    (bmo#1923747,bmo#1923541,bmo#1720047)
  * Searching events by Location, Description, or URL failed
    (bmo#1912710)
  * "Remove All Shown" saved passwords deleted all logins if
    filtered without results (bmo#601447)
  * Calendar event updates were not always sent to attendees
    (bmo#1877640)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1730289600">- Mozilla Thunderbird 128.4.0
  * Export Thunderbird account settings to Thunderbird Mobile via QRCode
  Bugfixes:
  * Unable to send an unencrypted response to an OpenPGP encrypted message
  MFSA 2024-58 (bsc#1231879)
  * CVE-2024-10458 (bmo#1921733)
    Permission leak via embed or object elements
  * CVE-2024-10459 (bmo#1919087)
    Use-after-free in layout with accessibility
  * CVE-2024-10460 (bmo#1912537)
    Confusing display of origin for external protocol handler prompt
  * CVE-2024-10461 (bmo#1914521)
    XSS due to Content-Disposition being ignored in
    multipart/x-mixed-replace response
  * CVE-2024-10462 (bmo#1920423)
    Origin of permission prompt could be spoofed by long URL
  * CVE-2024-10463 (bmo#1920800)
    Cross origin video frame leak
  * CVE-2024-10464 (bmo#1913000)
    History interface could have been used to cause a Denial of
    Service condition in the browser
  * CVE-2024-10465 (bmo#1918853)
    Clipboard "paste" button persisted across tabs
  * CVE-2024-10466 (bmo#1924154)
    DOM push subscription message could hang Firefox
  * CVE-2024-10467 (bmo#1829029, bmo#1888538, bmo#1900394, bmo#1904059,
    bmo#1917742, bmo#1919809, bmo#1923706)
    Memory safety bugs fixed in Firefox 132, Thunderbird 132,
    Firefox ESR 128.4, and Thunderbird 128.4</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1730548800">- Mozilla Thunderbird 128.4.1
  * Add the 20 year donation appeal (bmo#192538)</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1730894400">- Mozilla Thunderbird 128.4.2
  * Increased the auto-compaction threshold to reduce the frequency
    of compaction (bmo#1927656)
  * fixed: New profile creation caused console errors (bmo#1912675)
  * fixed: Repair folder could result in older messages showing
    wrong date and time (bmo#1911916)
  * fixed: Recently deleted messages could become undeleted if
    message compaction failed (bmo#1924927)
  * fixed: Visual and UX improvements
    (bmo#1857413,bmo#1922934,bmo#1924437)
  * fixed: Clicking on an HTML button could cause Thunderbird to
    freeze (bmo#1879355)
  * fixed: Messages could not be selected for dragging
    (bmo#1887518)
  * fixed: Could not open attached file in a MIME encrypted
    message (bmo#1924637)
  * fixed: Account creation "Setup Documentation" link was broken
    (bmo#1925493)
  * fixed: Unable to generate QR codes when exporting to mobile
    in some cases (bmo#1928114)
  * fixed: Operating system reauthentication was missing when
    exporting QR codes for mobile (bmo#1928232)
  * fixed: Could not drag all-day events from one day to another
    in week view (bmo#1922944)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1731153600">- Mozilla Thunderbird 128.4.3
  Fixes:
  * Folder corruption could cause Thunderbird to freeze and become unusable
  * Message corruption could be propagated when reading mbox
  * Folder compaction was not abandoned on shutdown
  * Folder compaction did not clean up on failure
  * Collapsed NNTP thread incorrectly indicated there were unread messages
  * Navigating to next unread message did not wait for all messages
    to be loaded
  * Applying column view to folder and children could break if folder
    error occurred
  * Remote content notifications were broken with encrypted messages
  * Updating criteria of a saved search resulted in poor search performance
  * Drop-downs may not work in some places
  MFSA 2024-61
  * CVE-2024-11159 (bmo#1925929)
    Potential disclosure of plaintext in OpenPGP encrypted message
- remove kmozillahelper support (boo#1226112)
  * removed mozilla-kde.patch
  * requires xdg-desktop-portal instead</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1732104000">- Mozilla Thunderbird 128.4.4
  * QR codes were not scannable by Android app when using most
    high-contrast themes
  * Primary password prompt cancellation during mobile export was
    confusing
- revert using xdg-desktop-portal as some desktops have limited
  support</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1732622400">- Mozilla Thunderbird 128.5.0
  * IMAP could crash when reading cached messages
  * Enabling "Show Folder Size" on Maildir profile could render
    Thunderbird unusable
  * Messages corrupted by folder compaction were only fixed by user
    intervention
  * Reading a message from past the end of an mbox file did not
    cause an error
  * View -&gt; Folders had duplicate F access keys
  * Add-ons adding columns to the message list could fail and cause
    display issue
  * "Empty trash on exit" and "Expunge inbox on exit" did not
    always work
  * Selecting a display option in View -&gt; Tasks did not apply in
    the Task interface
  MFSA 2024-68 (bsc#1233695)
  * CVE-2024-11691 (bmo#1914707, bmo#1924184)
    Memory corruption in Apple GPU drivers
  * CVE-2024-11692 (bmo#1909535)
    Select list elements could be shown over another site
  * CVE-2024-11693 (bmo#1921458)
    Download Protections were bypassed by .library-ms files on Windows
  * CVE-2024-11694 (bmo#1924167)
    CSP Bypass and XSS Exposure via Web Compatibility Shims
  * CVE-2024-11695 (bmo#1925496)
    URL Bar Spoofing via Manipulated Punycode and Whitespace Characters
  * CVE-2024-11696 (bmo#1929600)
    Unhandled Exception in Add-on Signature Verification
  * CVE-2024-11697 (bmo#1842187)
    Improper Keypress Handling in Executable File Confirmation Dialog
  * CVE-2024-11698 (bmo#1916152)
    Fullscreen Lock-Up When Modal Dialog Interrupts Transition on macOS
  * CVE-2024-11699 (bmo#1880582, bmo#1929911)
    Memory safety bugs fixed in Firefox 133, Thunderbird 133,
    Firefox ESR 128.5, and Thunderbird 128.5
- appid is thunderbird-esr currently; use the matching desktop
  file name (boo#1233650)</changelog>
</package>
<package pkgid="5696efc431705401348c4768c7e634f770c59aa82172e0a05a27d142030f50199a4b19989179300f43c8aafd733cf05c9ca4386aac07a0d35f163923aa2c9c63" name="MozillaThunderbird" arch="x86_64">
  <version epoch="0" ver="128.5.0" rel="1.0.8.1.sr20241103"/>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1713096000">- Mozilla Thunderbird 115.10.0
  https://www.thunderbird.net/en-US/thunderbird/115.10.0/releasenotes/
  MFSA 2024-20 (bsc#1222535)
  * CVE-2024-3852 (bmo#1883542)
    GetBoundName in the JIT returned the wrong object
  * CVE-2024-3854 (bmo#1884552)
    Out-of-bounds-read after mis-optimized switch statement
  * CVE-2024-3857 (bmo#1886683)
    Incorrect JITting of arguments led to use-after-free during
    garbage collection
  * CVE-2024-2609 (bmo#1866100)
    Permission prompt input delay could expire when not in focus
  * CVE-2024-3859 (bmo#1874489)
    Integer-overflow led to out-of-bounds-read in the OpenType sanitizer
  * CVE-2024-3861 (bmo#1883158)
    Potential use-after-free due to AlignedBuffer self-move
  * CVE-2024-3863 (bmo#1885855)
    Download Protections were bypassed by .xrm-ms files on Windows
  * CVE-2024-3302 (bmo#1881183)
    Denial of Service using HTTP/2 CONTINUATION frames
  * CVE-2024-3864 (bmo#1888333)
    Memory safety bug fixed in Firefox 125, Firefox ESR 115.10,
    and Thunderbird 115.10</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1713528000">- Mozilla Thunderbird 115.10.1
  https://www.thunderbird.net/en-US/thunderbird/115.10.1/releasenotes/
  * fixed hangup introduced with 115.10.0 (bmo#1891889)</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1714824000">- Mozilla Thunderbird 115.10.2:
  https://www.thunderbird.net/en-US/thunderbird/115.10.2/releasenotes/
  This release is identical to 115.10.1, other than changing the
  Update channel for self-updating builds to ESR. (bmo#1893271)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1715688000">- Mozilla Thunderbird 115.11.0
  MFSA 2024-23 (bsc#1224056)
  * CVE-2024-4367 (bmo#1893645)
    Arbitrary JavaScript execution in PDF.js
  * CVE-2024-4767 (bmo#1878577)
    IndexedDB files retained in private browsing mode
  * CVE-2024-4768 (bmo#1886082)
    Potential permissions request bypass via clickjacking
  * CVE-2024-4769 (bmo#1886108)
    Cross-origin responses could be distinguished between script
    and non-script content-types
  * CVE-2024-4770 (bmo#1893270)
    Use-after-free could occur when printing to PDF
  * CVE-2024-4777 (bmo#1878199, bmo#1893340)
    Memory safety bugs fixed in Firefox 126, Firefox ESR 115.11,
    and Thunderbird 115.11</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1716984000">- Mozilla Thunderbird 115.11.1
  * Added a short anonymous survey that a small number of users will
    be randomly asked to complete</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1718625600">- Mozilla Thunderbird 115.12.0
  https://www.thunderbird.net/en-US/thunderbird/115.12.0/releasenotes
  MFSA 2024-28 (bsc#1226027)
  * CVE-2024-5702 (bmo#1193389)
    Use-after-free in networking
  * CVE-2024-5688 (bmo#1895086)
    Use-after-free in JavaScript object transplant
  * CVE-2024-5690 (bmo#1883693)
    External protocol handlers leaked by timing attack
  * CVE-2024-5691 (bmo#1888695)
    Sandboxed iframes were able to bypass sandbox restrictions to
    open a new window
  * CVE-2024-5692 (bmo#1891234)
    Bypass of file name restrictions during saving
  * CVE-2024-5693 (bmo#1891319)
    Cross-Origin Image leak via Offscreen Canvas
  * CVE-2024-5696 (bmo#1896555)
    Memory Corruption in Text Fragments
  * CVE-2024-5700 (bmo#1862809, bmo#1889355, bmo#1893388, bmo#1895123)
    Memory safety bugs fixed in Firefox 127, Firefox ESR 115.12,
    and Thunderbird 115.12</changelog>
  <changelog author="Martin Sirringhaus &lt;martin.sirringhaus@suse.com&gt;" date="1719921600">- Mozilla Thunderbird 115.12.2
  * fixed: Annual Thunderbird Beta appeal intended for
    Thunderbird 115.12.0 did not open as expected (bmo#1898084)
- Mozilla Thunderbird 115.12.1
  * 115.12.0 got pulled because of upstream automation process errors
    and Windows installer signing changes.
    No code changes, changelog is the same as 115.12.0 (bsc#1226495)
- Added thunderbird-fix-CVE-2024-34703.patch (bsc#1227239)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1720612800">- Mozilla Thunderbird 115.13.0
  * After starting Thunderbird, the message list position was
    sometimes set to an incorrect position
  MFSA 2024-30 (bsc#1226316)
  * CVE-2024-6600 (bmo#1888340)
    Memory corruption in WebGL API
  * CVE-2024-6601 (bmo#1890748)
    Race condition in permission assignment
  * CVE-2024-6602 (bmo#1895032)
    Memory corruption in NSS
  * CVE-2024-6603 (bmo#1895081)
    Memory corruption in thread creation
  * CVE-2024-6604 (bmo#1748105, bmo#1837550, bmo#1884266)
    Memory safety bugs fixed in Firefox 128, Firefox ESR 115.13,
    and Thunderbird 115.13</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1722600000">- Mozilla Thunderbird 115.14.0
  * When using an external installation of GnuPG, Thunderbird
    occassionally sent/received corrupted messages (bmo#1898832)
  * Users of external GnuPG were unable to decrypt incorrectly
    encoded messages (bmo#1906903)
  MFSA 2024-38 (bsc#1228648)
  * CVE-2024-7519 (bmo#1902307)
    Out of bounds memory access in graphics shared memory handling
  * CVE-2024-7521 (bmo#1904644)
    Incomplete WebAssembly exception handing
  * CVE-2024-7522 (bmo#1906727)
    Out of bounds read in editor component
  * CVE-2024-7525 (bmo#1909298)
    Missing permission check when creating a StreamFilter
  * CVE-2024-7526 (bmo#1910306)
    Uninitialized memory used by WebGL
  * CVE-2024-7527 (bmo#1871303)
    Use-after-free in JavaScript garbage collection
  * CVE-2024-7529 (bmo#1903187)
    Document content could partially obscure security prompts</changelog>
  <changelog author="Manfred Hollstein &lt;manfred.h@gmx.net&gt;" date="1724932800">- Use gcc13 on Tumbleweed and where it is available.
- Don't use gcc14 as sources don't compile.</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1725624000">- Mozilla Thunderbird 115.15.0
  MFSA 2024-44 (bsc#1229821)
  * CVE-2024-8381 (bmo#1912715)
    Type confusion when looking up a property name in a "with"
    block
  * CVE-2024-8382 (bmo#1906744)
    Internal event interfaces were exposed to web content when
    browser EventHandler listener callbacks ran
  * CVE-2024-8384 (bmo#1911288)
    Garbage collection could mis-color cross-compartment objects
    in OOM conditions</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1728561600">- Mozilla Thunderbird 128.3.1
  https://www.thunderbird.net/en-US/thunderbird/128.0esr/releasenotes/
  and following release notes for minor version updates
  MFSA 2024-52  (bsc#1231413)
  * CVE-2024-9680 (bmo#1923344)
    Use-after-free in Animation timeline
  Mozilla Thunderbird 128.3.0
  MFSA 2024-32 (128.0)
  MFSA 2024-37 (128.1)
  MFSA 2024-43 (128.2)
  MFSA 2024-49 (128.3) (bsc#1230979)
  * CVE-2024-9392 (bmo#1899154, bmo#1905843)
    Compromised content process can bypass site isolation
  * CVE-2024-9393 (bmo#1918301)
    Cross-origin access to PDF contents through multipart responses
  * CVE-2024-9394 (bmo#1918874)
    Cross-origin access to JSON contents through multipart responses
  * CVE-2024-8900 (bmo#1872841)
    Clipboard write permission bypass
  * CVE-2024-9396 (bmo#1912471)
    Potential memory corruption may occur when cloning certain objects
  * CVE-2024-9397 (bmo#1916659)
    Potential directory upload bypass via clickjacking
  * CVE-2024-9398 (bmo#1881037)
    External protocol handlers could be enumerated via popups
  * CVE-2024-9399 (bmo#1907726)
    Specially crafted WebTransport requests could lead to denial
    of service
  * CVE-2024-9400 (bmo#1915249)
    Potential memory corruption during JIT compilation
  * CVE-2024-9401 (bmo#1872744, bmo#1897792, bmo#1911317, bmo#1916476)
    Memory safety bugs fixed in Firefox 131, Firefox ESR 115.16,
    Firefox ESR 128.3, Thunderbird 131, and Thunderbird 128.3
  * CVE-2024-9402 (bmo#1872744, bmo#1897792, bmo#1911317, bmo#1913445,
    bmo#1914106, bmo#1914475, bmo#1914963, bmo#1915008, bmo#1916476)
    Memory safety bugs fixed in Firefox 131, Firefox ESR 128.3,
    Thunderbird 131, and Thunderbird 128.3
- removed obsolete patches
  mozilla-bmo1504834-part3.patch
  mozilla-bmo1512162.patch
  mozilla-bmo1775202.patch
  mozilla-bmo531915.patch
  mozilla-fix-aarch64-libopus.patch
  mozilla-fix-issues-with-llvm18.patch
  mozilla-fix-top-level-asm.patch
  mozilla-partial-revert-1768632.patch
  mozilla-rust-disable-future-incompat.patch
  thunderbird-fix-CVE-2024-34703.patch
- new patch thunderbird-silence-no-return.patch
- rebased
  mozilla-bmo1504834-part1.patch
  mozilla-kde.patch
  mozilla-libavcodec58_91.patch
  mozilla-silence-no-return-type.patch</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1729080000">- Mozilla Thunderbird 128.3.2
  bugfix release:
  https://www.thunderbird.net/en-US/thunderbird/128.3.2esr/releasenotes
- bring back mozilla-bmo531915.patch to fix x86</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1729684800">- Mozilla Thunderbird 128.3.3
  * Files left over from failed folder compactions could use up
    disk space (bmo#1878541)
  * Message list returned to selected message after action on
    another message (bmo#1917485)
  * Some faulty messages were downloaded and never stored
    (bmo#1923765)
  * Messages could become corrupted during folder compaction
    (bmo#1923747,bmo#1923541,bmo#1720047)
  * Searching events by Location, Description, or URL failed
    (bmo#1912710)
  * "Remove All Shown" saved passwords deleted all logins if
    filtered without results (bmo#601447)
  * Calendar event updates were not always sent to attendees
    (bmo#1877640)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1730289600">- Mozilla Thunderbird 128.4.0
  * Export Thunderbird account settings to Thunderbird Mobile via QRCode
  Bugfixes:
  * Unable to send an unencrypted response to an OpenPGP encrypted message
  MFSA 2024-58 (bsc#1231879)
  * CVE-2024-10458 (bmo#1921733)
    Permission leak via embed or object elements
  * CVE-2024-10459 (bmo#1919087)
    Use-after-free in layout with accessibility
  * CVE-2024-10460 (bmo#1912537)
    Confusing display of origin for external protocol handler prompt
  * CVE-2024-10461 (bmo#1914521)
    XSS due to Content-Disposition being ignored in
    multipart/x-mixed-replace response
  * CVE-2024-10462 (bmo#1920423)
    Origin of permission prompt could be spoofed by long URL
  * CVE-2024-10463 (bmo#1920800)
    Cross origin video frame leak
  * CVE-2024-10464 (bmo#1913000)
    History interface could have been used to cause a Denial of
    Service condition in the browser
  * CVE-2024-10465 (bmo#1918853)
    Clipboard "paste" button persisted across tabs
  * CVE-2024-10466 (bmo#1924154)
    DOM push subscription message could hang Firefox
  * CVE-2024-10467 (bmo#1829029, bmo#1888538, bmo#1900394, bmo#1904059,
    bmo#1917742, bmo#1919809, bmo#1923706)
    Memory safety bugs fixed in Firefox 132, Thunderbird 132,
    Firefox ESR 128.4, and Thunderbird 128.4</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1730548800">- Mozilla Thunderbird 128.4.1
  * Add the 20 year donation appeal (bmo#192538)</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1730894400">- Mozilla Thunderbird 128.4.2
  * Increased the auto-compaction threshold to reduce the frequency
    of compaction (bmo#1927656)
  * fixed: New profile creation caused console errors (bmo#1912675)
  * fixed: Repair folder could result in older messages showing
    wrong date and time (bmo#1911916)
  * fixed: Recently deleted messages could become undeleted if
    message compaction failed (bmo#1924927)
  * fixed: Visual and UX improvements
    (bmo#1857413,bmo#1922934,bmo#1924437)
  * fixed: Clicking on an HTML button could cause Thunderbird to
    freeze (bmo#1879355)
  * fixed: Messages could not be selected for dragging
    (bmo#1887518)
  * fixed: Could not open attached file in a MIME encrypted
    message (bmo#1924637)
  * fixed: Account creation "Setup Documentation" link was broken
    (bmo#1925493)
  * fixed: Unable to generate QR codes when exporting to mobile
    in some cases (bmo#1928114)
  * fixed: Operating system reauthentication was missing when
    exporting QR codes for mobile (bmo#1928232)
  * fixed: Could not drag all-day events from one day to another
    in week view (bmo#1922944)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1731153600">- Mozilla Thunderbird 128.4.3
  Fixes:
  * Folder corruption could cause Thunderbird to freeze and become unusable
  * Message corruption could be propagated when reading mbox
  * Folder compaction was not abandoned on shutdown
  * Folder compaction did not clean up on failure
  * Collapsed NNTP thread incorrectly indicated there were unread messages
  * Navigating to next unread message did not wait for all messages
    to be loaded
  * Applying column view to folder and children could break if folder
    error occurred
  * Remote content notifications were broken with encrypted messages
  * Updating criteria of a saved search resulted in poor search performance
  * Drop-downs may not work in some places
  MFSA 2024-61
  * CVE-2024-11159 (bmo#1925929)
    Potential disclosure of plaintext in OpenPGP encrypted message
- remove kmozillahelper support (boo#1226112)
  * removed mozilla-kde.patch
  * requires xdg-desktop-portal instead</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1732104000">- Mozilla Thunderbird 128.4.4
  * QR codes were not scannable by Android app when using most
    high-contrast themes
  * Primary password prompt cancellation during mobile export was
    confusing
- revert using xdg-desktop-portal as some desktops have limited
  support</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1732622400">- Mozilla Thunderbird 128.5.0
  * IMAP could crash when reading cached messages
  * Enabling "Show Folder Size" on Maildir profile could render
    Thunderbird unusable
  * Messages corrupted by folder compaction were only fixed by user
    intervention
  * Reading a message from past the end of an mbox file did not
    cause an error
  * View -&gt; Folders had duplicate F access keys
  * Add-ons adding columns to the message list could fail and cause
    display issue
  * "Empty trash on exit" and "Expunge inbox on exit" did not
    always work
  * Selecting a display option in View -&gt; Tasks did not apply in
    the Task interface
  MFSA 2024-68 (bsc#1233695)
  * CVE-2024-11691 (bmo#1914707, bmo#1924184)
    Memory corruption in Apple GPU drivers
  * CVE-2024-11692 (bmo#1909535)
    Select list elements could be shown over another site
  * CVE-2024-11693 (bmo#1921458)
    Download Protections were bypassed by .library-ms files on Windows
  * CVE-2024-11694 (bmo#1924167)
    CSP Bypass and XSS Exposure via Web Compatibility Shims
  * CVE-2024-11695 (bmo#1925496)
    URL Bar Spoofing via Manipulated Punycode and Whitespace Characters
  * CVE-2024-11696 (bmo#1929600)
    Unhandled Exception in Add-on Signature Verification
  * CVE-2024-11697 (bmo#1842187)
    Improper Keypress Handling in Executable File Confirmation Dialog
  * CVE-2024-11698 (bmo#1916152)
    Fullscreen Lock-Up When Modal Dialog Interrupts Transition on macOS
  * CVE-2024-11699 (bmo#1880582, bmo#1929911)
    Memory safety bugs fixed in Firefox 133, Thunderbird 133,
    Firefox ESR 128.5, and Thunderbird 128.5
- appid is thunderbird-esr currently; use the matching desktop
  file name (boo#1233650)</changelog>
</package>
<package pkgid="cda10f6db6a0b144cf00abe2f9f539648c66d5b84632b3cc084ef2cb0fd2f60460692aeae5af1182ae3c78e22ae6bff10db1820d1fc62daaaa062bc74a5a355c" name="MozillaThunderbird" arch="src">
  <version epoch="0" ver="128.5.1" rel="1.0.10.1.sr20241103"/>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1714824000">- Mozilla Thunderbird 115.10.2:
  https://www.thunderbird.net/en-US/thunderbird/115.10.2/releasenotes/
  This release is identical to 115.10.1, other than changing the
  Update channel for self-updating builds to ESR. (bmo#1893271)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1715688000">- Mozilla Thunderbird 115.11.0
  MFSA 2024-23 (bsc#1224056)
  * CVE-2024-4367 (bmo#1893645)
    Arbitrary JavaScript execution in PDF.js
  * CVE-2024-4767 (bmo#1878577)
    IndexedDB files retained in private browsing mode
  * CVE-2024-4768 (bmo#1886082)
    Potential permissions request bypass via clickjacking
  * CVE-2024-4769 (bmo#1886108)
    Cross-origin responses could be distinguished between script
    and non-script content-types
  * CVE-2024-4770 (bmo#1893270)
    Use-after-free could occur when printing to PDF
  * CVE-2024-4777 (bmo#1878199, bmo#1893340)
    Memory safety bugs fixed in Firefox 126, Firefox ESR 115.11,
    and Thunderbird 115.11</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1716984000">- Mozilla Thunderbird 115.11.1
  * Added a short anonymous survey that a small number of users will
    be randomly asked to complete</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1718625600">- Mozilla Thunderbird 115.12.0
  https://www.thunderbird.net/en-US/thunderbird/115.12.0/releasenotes
  MFSA 2024-28 (bsc#1226027)
  * CVE-2024-5702 (bmo#1193389)
    Use-after-free in networking
  * CVE-2024-5688 (bmo#1895086)
    Use-after-free in JavaScript object transplant
  * CVE-2024-5690 (bmo#1883693)
    External protocol handlers leaked by timing attack
  * CVE-2024-5691 (bmo#1888695)
    Sandboxed iframes were able to bypass sandbox restrictions to
    open a new window
  * CVE-2024-5692 (bmo#1891234)
    Bypass of file name restrictions during saving
  * CVE-2024-5693 (bmo#1891319)
    Cross-Origin Image leak via Offscreen Canvas
  * CVE-2024-5696 (bmo#1896555)
    Memory Corruption in Text Fragments
  * CVE-2024-5700 (bmo#1862809, bmo#1889355, bmo#1893388, bmo#1895123)
    Memory safety bugs fixed in Firefox 127, Firefox ESR 115.12,
    and Thunderbird 115.12</changelog>
  <changelog author="Martin Sirringhaus &lt;martin.sirringhaus@suse.com&gt;" date="1719921600">- Mozilla Thunderbird 115.12.2
  * fixed: Annual Thunderbird Beta appeal intended for
    Thunderbird 115.12.0 did not open as expected (bmo#1898084)
- Mozilla Thunderbird 115.12.1
  * 115.12.0 got pulled because of upstream automation process errors
    and Windows installer signing changes.
    No code changes, changelog is the same as 115.12.0 (bsc#1226495)
- Added thunderbird-fix-CVE-2024-34703.patch (bsc#1227239)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1720612800">- Mozilla Thunderbird 115.13.0
  * After starting Thunderbird, the message list position was
    sometimes set to an incorrect position
  MFSA 2024-30 (bsc#1226316)
  * CVE-2024-6600 (bmo#1888340)
    Memory corruption in WebGL API
  * CVE-2024-6601 (bmo#1890748)
    Race condition in permission assignment
  * CVE-2024-6602 (bmo#1895032)
    Memory corruption in NSS
  * CVE-2024-6603 (bmo#1895081)
    Memory corruption in thread creation
  * CVE-2024-6604 (bmo#1748105, bmo#1837550, bmo#1884266)
    Memory safety bugs fixed in Firefox 128, Firefox ESR 115.13,
    and Thunderbird 115.13</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1722600000">- Mozilla Thunderbird 115.14.0
  * When using an external installation of GnuPG, Thunderbird
    occassionally sent/received corrupted messages (bmo#1898832)
  * Users of external GnuPG were unable to decrypt incorrectly
    encoded messages (bmo#1906903)
  MFSA 2024-38 (bsc#1228648)
  * CVE-2024-7519 (bmo#1902307)
    Out of bounds memory access in graphics shared memory handling
  * CVE-2024-7521 (bmo#1904644)
    Incomplete WebAssembly exception handing
  * CVE-2024-7522 (bmo#1906727)
    Out of bounds read in editor component
  * CVE-2024-7525 (bmo#1909298)
    Missing permission check when creating a StreamFilter
  * CVE-2024-7526 (bmo#1910306)
    Uninitialized memory used by WebGL
  * CVE-2024-7527 (bmo#1871303)
    Use-after-free in JavaScript garbage collection
  * CVE-2024-7529 (bmo#1903187)
    Document content could partially obscure security prompts</changelog>
  <changelog author="Manfred Hollstein &lt;manfred.h@gmx.net&gt;" date="1724932800">- Use gcc13 on Tumbleweed and where it is available.
- Don't use gcc14 as sources don't compile.</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1725624000">- Mozilla Thunderbird 115.15.0
  MFSA 2024-44 (bsc#1229821)
  * CVE-2024-8381 (bmo#1912715)
    Type confusion when looking up a property name in a "with"
    block
  * CVE-2024-8382 (bmo#1906744)
    Internal event interfaces were exposed to web content when
    browser EventHandler listener callbacks ran
  * CVE-2024-8384 (bmo#1911288)
    Garbage collection could mis-color cross-compartment objects
    in OOM conditions</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1728561600">- Mozilla Thunderbird 128.3.1
  https://www.thunderbird.net/en-US/thunderbird/128.0esr/releasenotes/
  and following release notes for minor version updates
  MFSA 2024-52  (bsc#1231413)
  * CVE-2024-9680 (bmo#1923344)
    Use-after-free in Animation timeline
  Mozilla Thunderbird 128.3.0
  MFSA 2024-32 (128.0)
  MFSA 2024-37 (128.1)
  MFSA 2024-43 (128.2)
  MFSA 2024-49 (128.3) (bsc#1230979)
  * CVE-2024-9392 (bmo#1899154, bmo#1905843)
    Compromised content process can bypass site isolation
  * CVE-2024-9393 (bmo#1918301)
    Cross-origin access to PDF contents through multipart responses
  * CVE-2024-9394 (bmo#1918874)
    Cross-origin access to JSON contents through multipart responses
  * CVE-2024-8900 (bmo#1872841)
    Clipboard write permission bypass
  * CVE-2024-9396 (bmo#1912471)
    Potential memory corruption may occur when cloning certain objects
  * CVE-2024-9397 (bmo#1916659)
    Potential directory upload bypass via clickjacking
  * CVE-2024-9398 (bmo#1881037)
    External protocol handlers could be enumerated via popups
  * CVE-2024-9399 (bmo#1907726)
    Specially crafted WebTransport requests could lead to denial
    of service
  * CVE-2024-9400 (bmo#1915249)
    Potential memory corruption during JIT compilation
  * CVE-2024-9401 (bmo#1872744, bmo#1897792, bmo#1911317, bmo#1916476)
    Memory safety bugs fixed in Firefox 131, Firefox ESR 115.16,
    Firefox ESR 128.3, Thunderbird 131, and Thunderbird 128.3
  * CVE-2024-9402 (bmo#1872744, bmo#1897792, bmo#1911317, bmo#1913445,
    bmo#1914106, bmo#1914475, bmo#1914963, bmo#1915008, bmo#1916476)
    Memory safety bugs fixed in Firefox 131, Firefox ESR 128.3,
    Thunderbird 131, and Thunderbird 128.3
- removed obsolete patches
  mozilla-bmo1504834-part3.patch
  mozilla-bmo1512162.patch
  mozilla-bmo1775202.patch
  mozilla-bmo531915.patch
  mozilla-fix-aarch64-libopus.patch
  mozilla-fix-issues-with-llvm18.patch
  mozilla-fix-top-level-asm.patch
  mozilla-partial-revert-1768632.patch
  mozilla-rust-disable-future-incompat.patch
  thunderbird-fix-CVE-2024-34703.patch
- new patch thunderbird-silence-no-return.patch
- rebased
  mozilla-bmo1504834-part1.patch
  mozilla-kde.patch
  mozilla-libavcodec58_91.patch
  mozilla-silence-no-return-type.patch</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1729080000">- Mozilla Thunderbird 128.3.2
  bugfix release:
  https://www.thunderbird.net/en-US/thunderbird/128.3.2esr/releasenotes
- bring back mozilla-bmo531915.patch to fix x86</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1729684800">- Mozilla Thunderbird 128.3.3
  * Files left over from failed folder compactions could use up
    disk space (bmo#1878541)
  * Message list returned to selected message after action on
    another message (bmo#1917485)
  * Some faulty messages were downloaded and never stored
    (bmo#1923765)
  * Messages could become corrupted during folder compaction
    (bmo#1923747,bmo#1923541,bmo#1720047)
  * Searching events by Location, Description, or URL failed
    (bmo#1912710)
  * "Remove All Shown" saved passwords deleted all logins if
    filtered without results (bmo#601447)
  * Calendar event updates were not always sent to attendees
    (bmo#1877640)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1730289600">- Mozilla Thunderbird 128.4.0
  * Export Thunderbird account settings to Thunderbird Mobile via QRCode
  Bugfixes:
  * Unable to send an unencrypted response to an OpenPGP encrypted message
  MFSA 2024-58 (bsc#1231879)
  * CVE-2024-10458 (bmo#1921733)
    Permission leak via embed or object elements
  * CVE-2024-10459 (bmo#1919087)
    Use-after-free in layout with accessibility
  * CVE-2024-10460 (bmo#1912537)
    Confusing display of origin for external protocol handler prompt
  * CVE-2024-10461 (bmo#1914521)
    XSS due to Content-Disposition being ignored in
    multipart/x-mixed-replace response
  * CVE-2024-10462 (bmo#1920423)
    Origin of permission prompt could be spoofed by long URL
  * CVE-2024-10463 (bmo#1920800)
    Cross origin video frame leak
  * CVE-2024-10464 (bmo#1913000)
    History interface could have been used to cause a Denial of
    Service condition in the browser
  * CVE-2024-10465 (bmo#1918853)
    Clipboard "paste" button persisted across tabs
  * CVE-2024-10466 (bmo#1924154)
    DOM push subscription message could hang Firefox
  * CVE-2024-10467 (bmo#1829029, bmo#1888538, bmo#1900394, bmo#1904059,
    bmo#1917742, bmo#1919809, bmo#1923706)
    Memory safety bugs fixed in Firefox 132, Thunderbird 132,
    Firefox ESR 128.4, and Thunderbird 128.4</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1730548800">- Mozilla Thunderbird 128.4.1
  * Add the 20 year donation appeal (bmo#192538)</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1730894400">- Mozilla Thunderbird 128.4.2
  * Increased the auto-compaction threshold to reduce the frequency
    of compaction (bmo#1927656)
  * fixed: New profile creation caused console errors (bmo#1912675)
  * fixed: Repair folder could result in older messages showing
    wrong date and time (bmo#1911916)
  * fixed: Recently deleted messages could become undeleted if
    message compaction failed (bmo#1924927)
  * fixed: Visual and UX improvements
    (bmo#1857413,bmo#1922934,bmo#1924437)
  * fixed: Clicking on an HTML button could cause Thunderbird to
    freeze (bmo#1879355)
  * fixed: Messages could not be selected for dragging
    (bmo#1887518)
  * fixed: Could not open attached file in a MIME encrypted
    message (bmo#1924637)
  * fixed: Account creation "Setup Documentation" link was broken
    (bmo#1925493)
  * fixed: Unable to generate QR codes when exporting to mobile
    in some cases (bmo#1928114)
  * fixed: Operating system reauthentication was missing when
    exporting QR codes for mobile (bmo#1928232)
  * fixed: Could not drag all-day events from one day to another
    in week view (bmo#1922944)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1731153600">- Mozilla Thunderbird 128.4.3
  Fixes:
  * Folder corruption could cause Thunderbird to freeze and become unusable
  * Message corruption could be propagated when reading mbox
  * Folder compaction was not abandoned on shutdown
  * Folder compaction did not clean up on failure
  * Collapsed NNTP thread incorrectly indicated there were unread messages
  * Navigating to next unread message did not wait for all messages
    to be loaded
  * Applying column view to folder and children could break if folder
    error occurred
  * Remote content notifications were broken with encrypted messages
  * Updating criteria of a saved search resulted in poor search performance
  * Drop-downs may not work in some places
  MFSA 2024-61
  * CVE-2024-11159 (bmo#1925929)
    Potential disclosure of plaintext in OpenPGP encrypted message
- remove kmozillahelper support (boo#1226112)
  * removed mozilla-kde.patch
  * requires xdg-desktop-portal instead</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1732104000">- Mozilla Thunderbird 128.4.4
  * QR codes were not scannable by Android app when using most
    high-contrast themes
  * Primary password prompt cancellation during mobile export was
    confusing
- revert using xdg-desktop-portal as some desktops have limited
  support</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1732622400">- Mozilla Thunderbird 128.5.0
  * IMAP could crash when reading cached messages
  * Enabling "Show Folder Size" on Maildir profile could render
    Thunderbird unusable
  * Messages corrupted by folder compaction were only fixed by user
    intervention
  * Reading a message from past the end of an mbox file did not
    cause an error
  * View -&gt; Folders had duplicate F access keys
  * Add-ons adding columns to the message list could fail and cause
    display issue
  * "Empty trash on exit" and "Expunge inbox on exit" did not
    always work
  * Selecting a display option in View -&gt; Tasks did not apply in
    the Task interface
  MFSA 2024-68 (bsc#1233695)
  * CVE-2024-11691 (bmo#1914707, bmo#1924184)
    Memory corruption in Apple GPU drivers
  * CVE-2024-11692 (bmo#1909535)
    Select list elements could be shown over another site
  * CVE-2024-11693 (bmo#1921458)
    Download Protections were bypassed by .library-ms files on Windows
  * CVE-2024-11694 (bmo#1924167)
    CSP Bypass and XSS Exposure via Web Compatibility Shims
  * CVE-2024-11695 (bmo#1925496)
    URL Bar Spoofing via Manipulated Punycode and Whitespace Characters
  * CVE-2024-11696 (bmo#1929600)
    Unhandled Exception in Add-on Signature Verification
  * CVE-2024-11697 (bmo#1842187)
    Improper Keypress Handling in Executable File Confirmation Dialog
  * CVE-2024-11698 (bmo#1916152)
    Fullscreen Lock-Up When Modal Dialog Interrupts Transition on macOS
  * CVE-2024-11699 (bmo#1880582, bmo#1929911)
    Memory safety bugs fixed in Firefox 133, Thunderbird 133,
    Firefox ESR 128.5, and Thunderbird 128.5
- appid is thunderbird-esr currently; use the matching desktop
  file name (boo#1233650)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1732795200">- make spec compatible with rpm &lt; 4.17 again
- correct appdata for different desktop filename</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1733227200">- Mozilla Thunderbird 128.5.1
  * Add end of year donation appeal
  * Total message count for favorite folders did not work consistently</changelog>
</package>
<package pkgid="2ce2a652503ed130066a49266a9c8fc5ea1d96c63acdffbf541808a1604a876935eae565a67c4c69b69107c80096d213d2475709290d70a914b083dcca4997fe" name="MozillaThunderbird" arch="x86_64">
  <version epoch="0" ver="128.5.1" rel="1.0.10.1.sr20241103"/>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1714824000">- Mozilla Thunderbird 115.10.2:
  https://www.thunderbird.net/en-US/thunderbird/115.10.2/releasenotes/
  This release is identical to 115.10.1, other than changing the
  Update channel for self-updating builds to ESR. (bmo#1893271)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1715688000">- Mozilla Thunderbird 115.11.0
  MFSA 2024-23 (bsc#1224056)
  * CVE-2024-4367 (bmo#1893645)
    Arbitrary JavaScript execution in PDF.js
  * CVE-2024-4767 (bmo#1878577)
    IndexedDB files retained in private browsing mode
  * CVE-2024-4768 (bmo#1886082)
    Potential permissions request bypass via clickjacking
  * CVE-2024-4769 (bmo#1886108)
    Cross-origin responses could be distinguished between script
    and non-script content-types
  * CVE-2024-4770 (bmo#1893270)
    Use-after-free could occur when printing to PDF
  * CVE-2024-4777 (bmo#1878199, bmo#1893340)
    Memory safety bugs fixed in Firefox 126, Firefox ESR 115.11,
    and Thunderbird 115.11</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1716984000">- Mozilla Thunderbird 115.11.1
  * Added a short anonymous survey that a small number of users will
    be randomly asked to complete</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1718625600">- Mozilla Thunderbird 115.12.0
  https://www.thunderbird.net/en-US/thunderbird/115.12.0/releasenotes
  MFSA 2024-28 (bsc#1226027)
  * CVE-2024-5702 (bmo#1193389)
    Use-after-free in networking
  * CVE-2024-5688 (bmo#1895086)
    Use-after-free in JavaScript object transplant
  * CVE-2024-5690 (bmo#1883693)
    External protocol handlers leaked by timing attack
  * CVE-2024-5691 (bmo#1888695)
    Sandboxed iframes were able to bypass sandbox restrictions to
    open a new window
  * CVE-2024-5692 (bmo#1891234)
    Bypass of file name restrictions during saving
  * CVE-2024-5693 (bmo#1891319)
    Cross-Origin Image leak via Offscreen Canvas
  * CVE-2024-5696 (bmo#1896555)
    Memory Corruption in Text Fragments
  * CVE-2024-5700 (bmo#1862809, bmo#1889355, bmo#1893388, bmo#1895123)
    Memory safety bugs fixed in Firefox 127, Firefox ESR 115.12,
    and Thunderbird 115.12</changelog>
  <changelog author="Martin Sirringhaus &lt;martin.sirringhaus@suse.com&gt;" date="1719921600">- Mozilla Thunderbird 115.12.2
  * fixed: Annual Thunderbird Beta appeal intended for
    Thunderbird 115.12.0 did not open as expected (bmo#1898084)
- Mozilla Thunderbird 115.12.1
  * 115.12.0 got pulled because of upstream automation process errors
    and Windows installer signing changes.
    No code changes, changelog is the same as 115.12.0 (bsc#1226495)
- Added thunderbird-fix-CVE-2024-34703.patch (bsc#1227239)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1720612800">- Mozilla Thunderbird 115.13.0
  * After starting Thunderbird, the message list position was
    sometimes set to an incorrect position
  MFSA 2024-30 (bsc#1226316)
  * CVE-2024-6600 (bmo#1888340)
    Memory corruption in WebGL API
  * CVE-2024-6601 (bmo#1890748)
    Race condition in permission assignment
  * CVE-2024-6602 (bmo#1895032)
    Memory corruption in NSS
  * CVE-2024-6603 (bmo#1895081)
    Memory corruption in thread creation
  * CVE-2024-6604 (bmo#1748105, bmo#1837550, bmo#1884266)
    Memory safety bugs fixed in Firefox 128, Firefox ESR 115.13,
    and Thunderbird 115.13</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1722600000">- Mozilla Thunderbird 115.14.0
  * When using an external installation of GnuPG, Thunderbird
    occassionally sent/received corrupted messages (bmo#1898832)
  * Users of external GnuPG were unable to decrypt incorrectly
    encoded messages (bmo#1906903)
  MFSA 2024-38 (bsc#1228648)
  * CVE-2024-7519 (bmo#1902307)
    Out of bounds memory access in graphics shared memory handling
  * CVE-2024-7521 (bmo#1904644)
    Incomplete WebAssembly exception handing
  * CVE-2024-7522 (bmo#1906727)
    Out of bounds read in editor component
  * CVE-2024-7525 (bmo#1909298)
    Missing permission check when creating a StreamFilter
  * CVE-2024-7526 (bmo#1910306)
    Uninitialized memory used by WebGL
  * CVE-2024-7527 (bmo#1871303)
    Use-after-free in JavaScript garbage collection
  * CVE-2024-7529 (bmo#1903187)
    Document content could partially obscure security prompts</changelog>
  <changelog author="Manfred Hollstein &lt;manfred.h@gmx.net&gt;" date="1724932800">- Use gcc13 on Tumbleweed and where it is available.
- Don't use gcc14 as sources don't compile.</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1725624000">- Mozilla Thunderbird 115.15.0
  MFSA 2024-44 (bsc#1229821)
  * CVE-2024-8381 (bmo#1912715)
    Type confusion when looking up a property name in a "with"
    block
  * CVE-2024-8382 (bmo#1906744)
    Internal event interfaces were exposed to web content when
    browser EventHandler listener callbacks ran
  * CVE-2024-8384 (bmo#1911288)
    Garbage collection could mis-color cross-compartment objects
    in OOM conditions</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1728561600">- Mozilla Thunderbird 128.3.1
  https://www.thunderbird.net/en-US/thunderbird/128.0esr/releasenotes/
  and following release notes for minor version updates
  MFSA 2024-52  (bsc#1231413)
  * CVE-2024-9680 (bmo#1923344)
    Use-after-free in Animation timeline
  Mozilla Thunderbird 128.3.0
  MFSA 2024-32 (128.0)
  MFSA 2024-37 (128.1)
  MFSA 2024-43 (128.2)
  MFSA 2024-49 (128.3) (bsc#1230979)
  * CVE-2024-9392 (bmo#1899154, bmo#1905843)
    Compromised content process can bypass site isolation
  * CVE-2024-9393 (bmo#1918301)
    Cross-origin access to PDF contents through multipart responses
  * CVE-2024-9394 (bmo#1918874)
    Cross-origin access to JSON contents through multipart responses
  * CVE-2024-8900 (bmo#1872841)
    Clipboard write permission bypass
  * CVE-2024-9396 (bmo#1912471)
    Potential memory corruption may occur when cloning certain objects
  * CVE-2024-9397 (bmo#1916659)
    Potential directory upload bypass via clickjacking
  * CVE-2024-9398 (bmo#1881037)
    External protocol handlers could be enumerated via popups
  * CVE-2024-9399 (bmo#1907726)
    Specially crafted WebTransport requests could lead to denial
    of service
  * CVE-2024-9400 (bmo#1915249)
    Potential memory corruption during JIT compilation
  * CVE-2024-9401 (bmo#1872744, bmo#1897792, bmo#1911317, bmo#1916476)
    Memory safety bugs fixed in Firefox 131, Firefox ESR 115.16,
    Firefox ESR 128.3, Thunderbird 131, and Thunderbird 128.3
  * CVE-2024-9402 (bmo#1872744, bmo#1897792, bmo#1911317, bmo#1913445,
    bmo#1914106, bmo#1914475, bmo#1914963, bmo#1915008, bmo#1916476)
    Memory safety bugs fixed in Firefox 131, Firefox ESR 128.3,
    Thunderbird 131, and Thunderbird 128.3
- removed obsolete patches
  mozilla-bmo1504834-part3.patch
  mozilla-bmo1512162.patch
  mozilla-bmo1775202.patch
  mozilla-bmo531915.patch
  mozilla-fix-aarch64-libopus.patch
  mozilla-fix-issues-with-llvm18.patch
  mozilla-fix-top-level-asm.patch
  mozilla-partial-revert-1768632.patch
  mozilla-rust-disable-future-incompat.patch
  thunderbird-fix-CVE-2024-34703.patch
- new patch thunderbird-silence-no-return.patch
- rebased
  mozilla-bmo1504834-part1.patch
  mozilla-kde.patch
  mozilla-libavcodec58_91.patch
  mozilla-silence-no-return-type.patch</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1729080000">- Mozilla Thunderbird 128.3.2
  bugfix release:
  https://www.thunderbird.net/en-US/thunderbird/128.3.2esr/releasenotes
- bring back mozilla-bmo531915.patch to fix x86</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1729684800">- Mozilla Thunderbird 128.3.3
  * Files left over from failed folder compactions could use up
    disk space (bmo#1878541)
  * Message list returned to selected message after action on
    another message (bmo#1917485)
  * Some faulty messages were downloaded and never stored
    (bmo#1923765)
  * Messages could become corrupted during folder compaction
    (bmo#1923747,bmo#1923541,bmo#1720047)
  * Searching events by Location, Description, or URL failed
    (bmo#1912710)
  * "Remove All Shown" saved passwords deleted all logins if
    filtered without results (bmo#601447)
  * Calendar event updates were not always sent to attendees
    (bmo#1877640)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1730289600">- Mozilla Thunderbird 128.4.0
  * Export Thunderbird account settings to Thunderbird Mobile via QRCode
  Bugfixes:
  * Unable to send an unencrypted response to an OpenPGP encrypted message
  MFSA 2024-58 (bsc#1231879)
  * CVE-2024-10458 (bmo#1921733)
    Permission leak via embed or object elements
  * CVE-2024-10459 (bmo#1919087)
    Use-after-free in layout with accessibility
  * CVE-2024-10460 (bmo#1912537)
    Confusing display of origin for external protocol handler prompt
  * CVE-2024-10461 (bmo#1914521)
    XSS due to Content-Disposition being ignored in
    multipart/x-mixed-replace response
  * CVE-2024-10462 (bmo#1920423)
    Origin of permission prompt could be spoofed by long URL
  * CVE-2024-10463 (bmo#1920800)
    Cross origin video frame leak
  * CVE-2024-10464 (bmo#1913000)
    History interface could have been used to cause a Denial of
    Service condition in the browser
  * CVE-2024-10465 (bmo#1918853)
    Clipboard "paste" button persisted across tabs
  * CVE-2024-10466 (bmo#1924154)
    DOM push subscription message could hang Firefox
  * CVE-2024-10467 (bmo#1829029, bmo#1888538, bmo#1900394, bmo#1904059,
    bmo#1917742, bmo#1919809, bmo#1923706)
    Memory safety bugs fixed in Firefox 132, Thunderbird 132,
    Firefox ESR 128.4, and Thunderbird 128.4</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1730548800">- Mozilla Thunderbird 128.4.1
  * Add the 20 year donation appeal (bmo#192538)</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1730894400">- Mozilla Thunderbird 128.4.2
  * Increased the auto-compaction threshold to reduce the frequency
    of compaction (bmo#1927656)
  * fixed: New profile creation caused console errors (bmo#1912675)
  * fixed: Repair folder could result in older messages showing
    wrong date and time (bmo#1911916)
  * fixed: Recently deleted messages could become undeleted if
    message compaction failed (bmo#1924927)
  * fixed: Visual and UX improvements
    (bmo#1857413,bmo#1922934,bmo#1924437)
  * fixed: Clicking on an HTML button could cause Thunderbird to
    freeze (bmo#1879355)
  * fixed: Messages could not be selected for dragging
    (bmo#1887518)
  * fixed: Could not open attached file in a MIME encrypted
    message (bmo#1924637)
  * fixed: Account creation "Setup Documentation" link was broken
    (bmo#1925493)
  * fixed: Unable to generate QR codes when exporting to mobile
    in some cases (bmo#1928114)
  * fixed: Operating system reauthentication was missing when
    exporting QR codes for mobile (bmo#1928232)
  * fixed: Could not drag all-day events from one day to another
    in week view (bmo#1922944)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1731153600">- Mozilla Thunderbird 128.4.3
  Fixes:
  * Folder corruption could cause Thunderbird to freeze and become unusable
  * Message corruption could be propagated when reading mbox
  * Folder compaction was not abandoned on shutdown
  * Folder compaction did not clean up on failure
  * Collapsed NNTP thread incorrectly indicated there were unread messages
  * Navigating to next unread message did not wait for all messages
    to be loaded
  * Applying column view to folder and children could break if folder
    error occurred
  * Remote content notifications were broken with encrypted messages
  * Updating criteria of a saved search resulted in poor search performance
  * Drop-downs may not work in some places
  MFSA 2024-61
  * CVE-2024-11159 (bmo#1925929)
    Potential disclosure of plaintext in OpenPGP encrypted message
- remove kmozillahelper support (boo#1226112)
  * removed mozilla-kde.patch
  * requires xdg-desktop-portal instead</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1732104000">- Mozilla Thunderbird 128.4.4
  * QR codes were not scannable by Android app when using most
    high-contrast themes
  * Primary password prompt cancellation during mobile export was
    confusing
- revert using xdg-desktop-portal as some desktops have limited
  support</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1732622400">- Mozilla Thunderbird 128.5.0
  * IMAP could crash when reading cached messages
  * Enabling "Show Folder Size" on Maildir profile could render
    Thunderbird unusable
  * Messages corrupted by folder compaction were only fixed by user
    intervention
  * Reading a message from past the end of an mbox file did not
    cause an error
  * View -&gt; Folders had duplicate F access keys
  * Add-ons adding columns to the message list could fail and cause
    display issue
  * "Empty trash on exit" and "Expunge inbox on exit" did not
    always work
  * Selecting a display option in View -&gt; Tasks did not apply in
    the Task interface
  MFSA 2024-68 (bsc#1233695)
  * CVE-2024-11691 (bmo#1914707, bmo#1924184)
    Memory corruption in Apple GPU drivers
  * CVE-2024-11692 (bmo#1909535)
    Select list elements could be shown over another site
  * CVE-2024-11693 (bmo#1921458)
    Download Protections were bypassed by .library-ms files on Windows
  * CVE-2024-11694 (bmo#1924167)
    CSP Bypass and XSS Exposure via Web Compatibility Shims
  * CVE-2024-11695 (bmo#1925496)
    URL Bar Spoofing via Manipulated Punycode and Whitespace Characters
  * CVE-2024-11696 (bmo#1929600)
    Unhandled Exception in Add-on Signature Verification
  * CVE-2024-11697 (bmo#1842187)
    Improper Keypress Handling in Executable File Confirmation Dialog
  * CVE-2024-11698 (bmo#1916152)
    Fullscreen Lock-Up When Modal Dialog Interrupts Transition on macOS
  * CVE-2024-11699 (bmo#1880582, bmo#1929911)
    Memory safety bugs fixed in Firefox 133, Thunderbird 133,
    Firefox ESR 128.5, and Thunderbird 128.5
- appid is thunderbird-esr currently; use the matching desktop
  file name (boo#1233650)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1732795200">- make spec compatible with rpm &lt; 4.17 again
- correct appdata for different desktop filename</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1733227200">- Mozilla Thunderbird 128.5.1
  * Add end of year donation appeal
  * Total message count for favorite folders did not work consistently</changelog>
</package>
<package pkgid="8a39bba609c798ffc5cbea4b38a1afeb9693c59aa377a622e2dd3c7f1904d4ea3125eed4b2f4ce467d1b23925afa5bec4382e8ceee5fcbc86dcea4b7d54e3d07" name="MozillaThunderbird-debuginfo" arch="x86_64">
  <version epoch="0" ver="128.4.2" rel="1.0.2.1.sr20241103"/>
  <changelog author="Adam Mizerski &lt;adam@mizerski.pl&gt;" date="1709640000">- Create subpackage MozillaThunderbird-openpgp-librnp</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1710590400">- Mozilla Thunderbird 115.9.0
  https://www.thunderbird.net/en-US/thunderbird/115.9.0/releasenotes/
  MFSA 2024-14 (bsc#1221327)
  * CVE-2024-0743 (bmo#1867408)
    Crash in NSS TLS method
  * CVE-2024-2605 (bmo#1872920)
    Windows Error Reporter could be used as a Sandbox escape vector
  * CVE-2024-2607 (bmo#1879939)
    JIT code failed to save return registers on Armv7-A
  * CVE-2024-2608 (bmo#1880692)
    Integer overflow could have led to out of bounds write
  * CVE-2024-2616 (bmo#1846197)
    Improve handling of out-of-memory conditions in ICU
  * CVE-2023-5388 (bmo#1780432)
    NSS susceptible to timing attack against RSA decryption
  * CVE-2024-2610 (bmo#1871112)
    Improper handling of html and body tags enabled CSP nonce leakage
  * CVE-2024-2611 (bmo#1876675)
    Clickjacking vulnerability could have led to a user accidentally
    granting permissions
  * CVE-2024-2612 (bmo#1879444)
    Self referencing object could have potentially led to a use-
    after-free
  * CVE-2024-2614 (bmo#1685358, bmo#1861016, bmo#1880405, bmo#1881093)
    Memory safety bugs fixed in Firefox 124, Firefox ESR 115.9,
    and Thunderbird 115.9</changelog>
  <changelog author="Manfred Hollstein &lt;manfred.h@gmx.net&gt;" date="1710936000">- LLVM18 breaks building Thunderbird on Tumbleweed; add
  * mozilla-fix-issues-with-llvm18.patch</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1713096000">- Mozilla Thunderbird 115.10.0
  https://www.thunderbird.net/en-US/thunderbird/115.10.0/releasenotes/
  MFSA 2024-20 (bsc#1222535)
  * CVE-2024-3852 (bmo#1883542)
    GetBoundName in the JIT returned the wrong object
  * CVE-2024-3854 (bmo#1884552)
    Out-of-bounds-read after mis-optimized switch statement
  * CVE-2024-3857 (bmo#1886683)
    Incorrect JITting of arguments led to use-after-free during
    garbage collection
  * CVE-2024-2609 (bmo#1866100)
    Permission prompt input delay could expire when not in focus
  * CVE-2024-3859 (bmo#1874489)
    Integer-overflow led to out-of-bounds-read in the OpenType sanitizer
  * CVE-2024-3861 (bmo#1883158)
    Potential use-after-free due to AlignedBuffer self-move
  * CVE-2024-3863 (bmo#1885855)
    Download Protections were bypassed by .xrm-ms files on Windows
  * CVE-2024-3302 (bmo#1881183)
    Denial of Service using HTTP/2 CONTINUATION frames
  * CVE-2024-3864 (bmo#1888333)
    Memory safety bug fixed in Firefox 125, Firefox ESR 115.10,
    and Thunderbird 115.10</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1713528000">- Mozilla Thunderbird 115.10.1
  https://www.thunderbird.net/en-US/thunderbird/115.10.1/releasenotes/
  * fixed hangup introduced with 115.10.0 (bmo#1891889)</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1714824000">- Mozilla Thunderbird 115.10.2:
  https://www.thunderbird.net/en-US/thunderbird/115.10.2/releasenotes/
  This release is identical to 115.10.1, other than changing the
  Update channel for self-updating builds to ESR. (bmo#1893271)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1715688000">- Mozilla Thunderbird 115.11.0
  MFSA 2024-23 (bsc#1224056)
  * CVE-2024-4367 (bmo#1893645)
    Arbitrary JavaScript execution in PDF.js
  * CVE-2024-4767 (bmo#1878577)
    IndexedDB files retained in private browsing mode
  * CVE-2024-4768 (bmo#1886082)
    Potential permissions request bypass via clickjacking
  * CVE-2024-4769 (bmo#1886108)
    Cross-origin responses could be distinguished between script
    and non-script content-types
  * CVE-2024-4770 (bmo#1893270)
    Use-after-free could occur when printing to PDF
  * CVE-2024-4777 (bmo#1878199, bmo#1893340)
    Memory safety bugs fixed in Firefox 126, Firefox ESR 115.11,
    and Thunderbird 115.11</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1716984000">- Mozilla Thunderbird 115.11.1
  * Added a short anonymous survey that a small number of users will
    be randomly asked to complete</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1718625600">- Mozilla Thunderbird 115.12.0
  https://www.thunderbird.net/en-US/thunderbird/115.12.0/releasenotes
  MFSA 2024-28 (bsc#1226027)
  * CVE-2024-5702 (bmo#1193389)
    Use-after-free in networking
  * CVE-2024-5688 (bmo#1895086)
    Use-after-free in JavaScript object transplant
  * CVE-2024-5690 (bmo#1883693)
    External protocol handlers leaked by timing attack
  * CVE-2024-5691 (bmo#1888695)
    Sandboxed iframes were able to bypass sandbox restrictions to
    open a new window
  * CVE-2024-5692 (bmo#1891234)
    Bypass of file name restrictions during saving
  * CVE-2024-5693 (bmo#1891319)
    Cross-Origin Image leak via Offscreen Canvas
  * CVE-2024-5696 (bmo#1896555)
    Memory Corruption in Text Fragments
  * CVE-2024-5700 (bmo#1862809, bmo#1889355, bmo#1893388, bmo#1895123)
    Memory safety bugs fixed in Firefox 127, Firefox ESR 115.12,
    and Thunderbird 115.12</changelog>
  <changelog author="Martin Sirringhaus &lt;martin.sirringhaus@suse.com&gt;" date="1719921600">- Mozilla Thunderbird 115.12.2
  * fixed: Annual Thunderbird Beta appeal intended for
    Thunderbird 115.12.0 did not open as expected (bmo#1898084)
- Mozilla Thunderbird 115.12.1
  * 115.12.0 got pulled because of upstream automation process errors
    and Windows installer signing changes.
    No code changes, changelog is the same as 115.12.0 (bsc#1226495)
- Added thunderbird-fix-CVE-2024-34703.patch (bsc#1227239)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1720612800">- Mozilla Thunderbird 115.13.0
  * After starting Thunderbird, the message list position was
    sometimes set to an incorrect position
  MFSA 2024-30 (bsc#1226316)
  * CVE-2024-6600 (bmo#1888340)
    Memory corruption in WebGL API
  * CVE-2024-6601 (bmo#1890748)
    Race condition in permission assignment
  * CVE-2024-6602 (bmo#1895032)
    Memory corruption in NSS
  * CVE-2024-6603 (bmo#1895081)
    Memory corruption in thread creation
  * CVE-2024-6604 (bmo#1748105, bmo#1837550, bmo#1884266)
    Memory safety bugs fixed in Firefox 128, Firefox ESR 115.13,
    and Thunderbird 115.13</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1722600000">- Mozilla Thunderbird 115.14.0
  * When using an external installation of GnuPG, Thunderbird
    occassionally sent/received corrupted messages (bmo#1898832)
  * Users of external GnuPG were unable to decrypt incorrectly
    encoded messages (bmo#1906903)
  MFSA 2024-38 (bsc#1228648)
  * CVE-2024-7519 (bmo#1902307)
    Out of bounds memory access in graphics shared memory handling
  * CVE-2024-7521 (bmo#1904644)
    Incomplete WebAssembly exception handing
  * CVE-2024-7522 (bmo#1906727)
    Out of bounds read in editor component
  * CVE-2024-7525 (bmo#1909298)
    Missing permission check when creating a StreamFilter
  * CVE-2024-7526 (bmo#1910306)
    Uninitialized memory used by WebGL
  * CVE-2024-7527 (bmo#1871303)
    Use-after-free in JavaScript garbage collection
  * CVE-2024-7529 (bmo#1903187)
    Document content could partially obscure security prompts</changelog>
  <changelog author="Manfred Hollstein &lt;manfred.h@gmx.net&gt;" date="1724932800">- Use gcc13 on Tumbleweed and where it is available.
- Don't use gcc14 as sources don't compile.</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1725624000">- Mozilla Thunderbird 115.15.0
  MFSA 2024-44 (bsc#1229821)
  * CVE-2024-8381 (bmo#1912715)
    Type confusion when looking up a property name in a "with"
    block
  * CVE-2024-8382 (bmo#1906744)
    Internal event interfaces were exposed to web content when
    browser EventHandler listener callbacks ran
  * CVE-2024-8384 (bmo#1911288)
    Garbage collection could mis-color cross-compartment objects
    in OOM conditions</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1728561600">- Mozilla Thunderbird 128.3.1
  https://www.thunderbird.net/en-US/thunderbird/128.0esr/releasenotes/
  and following release notes for minor version updates
  MFSA 2024-52  (bsc#1231413)
  * CVE-2024-9680 (bmo#1923344)
    Use-after-free in Animation timeline
  Mozilla Thunderbird 128.3.0
  MFSA 2024-32 (128.0)
  MFSA 2024-37 (128.1)
  MFSA 2024-43 (128.2)
  MFSA 2024-49 (128.3) (bsc#1230979)
  * CVE-2024-9392 (bmo#1899154, bmo#1905843)
    Compromised content process can bypass site isolation
  * CVE-2024-9393 (bmo#1918301)
    Cross-origin access to PDF contents through multipart responses
  * CVE-2024-9394 (bmo#1918874)
    Cross-origin access to JSON contents through multipart responses
  * CVE-2024-8900 (bmo#1872841)
    Clipboard write permission bypass
  * CVE-2024-9396 (bmo#1912471)
    Potential memory corruption may occur when cloning certain objects
  * CVE-2024-9397 (bmo#1916659)
    Potential directory upload bypass via clickjacking
  * CVE-2024-9398 (bmo#1881037)
    External protocol handlers could be enumerated via popups
  * CVE-2024-9399 (bmo#1907726)
    Specially crafted WebTransport requests could lead to denial
    of service
  * CVE-2024-9400 (bmo#1915249)
    Potential memory corruption during JIT compilation
  * CVE-2024-9401 (bmo#1872744, bmo#1897792, bmo#1911317, bmo#1916476)
    Memory safety bugs fixed in Firefox 131, Firefox ESR 115.16,
    Firefox ESR 128.3, Thunderbird 131, and Thunderbird 128.3
  * CVE-2024-9402 (bmo#1872744, bmo#1897792, bmo#1911317, bmo#1913445,
    bmo#1914106, bmo#1914475, bmo#1914963, bmo#1915008, bmo#1916476)
    Memory safety bugs fixed in Firefox 131, Firefox ESR 128.3,
    Thunderbird 131, and Thunderbird 128.3
- removed obsolete patches
  mozilla-bmo1504834-part3.patch
  mozilla-bmo1512162.patch
  mozilla-bmo1775202.patch
  mozilla-bmo531915.patch
  mozilla-fix-aarch64-libopus.patch
  mozilla-fix-issues-with-llvm18.patch
  mozilla-fix-top-level-asm.patch
  mozilla-partial-revert-1768632.patch
  mozilla-rust-disable-future-incompat.patch
  thunderbird-fix-CVE-2024-34703.patch
- new patch thunderbird-silence-no-return.patch
- rebased
  mozilla-bmo1504834-part1.patch
  mozilla-kde.patch
  mozilla-libavcodec58_91.patch
  mozilla-silence-no-return-type.patch</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1729080000">- Mozilla Thunderbird 128.3.2
  bugfix release:
  https://www.thunderbird.net/en-US/thunderbird/128.3.2esr/releasenotes
- bring back mozilla-bmo531915.patch to fix x86</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1729684800">- Mozilla Thunderbird 128.3.3
  * Files left over from failed folder compactions could use up
    disk space (bmo#1878541)
  * Message list returned to selected message after action on
    another message (bmo#1917485)
  * Some faulty messages were downloaded and never stored
    (bmo#1923765)
  * Messages could become corrupted during folder compaction
    (bmo#1923747,bmo#1923541,bmo#1720047)
  * Searching events by Location, Description, or URL failed
    (bmo#1912710)
  * "Remove All Shown" saved passwords deleted all logins if
    filtered without results (bmo#601447)
  * Calendar event updates were not always sent to attendees
    (bmo#1877640)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1730289600">- Mozilla Thunderbird 128.4.0
  * Export Thunderbird account settings to Thunderbird Mobile via QRCode
  Bugfixes:
  * Unable to send an unencrypted response to an OpenPGP encrypted message
  MFSA 2024-58 (bsc#1231879)
  * CVE-2024-10458 (bmo#1921733)
    Permission leak via embed or object elements
  * CVE-2024-10459 (bmo#1919087)
    Use-after-free in layout with accessibility
  * CVE-2024-10460 (bmo#1912537)
    Confusing display of origin for external protocol handler prompt
  * CVE-2024-10461 (bmo#1914521)
    XSS due to Content-Disposition being ignored in
    multipart/x-mixed-replace response
  * CVE-2024-10462 (bmo#1920423)
    Origin of permission prompt could be spoofed by long URL
  * CVE-2024-10463 (bmo#1920800)
    Cross origin video frame leak
  * CVE-2024-10464 (bmo#1913000)
    History interface could have been used to cause a Denial of
    Service condition in the browser
  * CVE-2024-10465 (bmo#1918853)
    Clipboard "paste" button persisted across tabs
  * CVE-2024-10466 (bmo#1924154)
    DOM push subscription message could hang Firefox
  * CVE-2024-10467 (bmo#1829029, bmo#1888538, bmo#1900394, bmo#1904059,
    bmo#1917742, bmo#1919809, bmo#1923706)
    Memory safety bugs fixed in Firefox 132, Thunderbird 132,
    Firefox ESR 128.4, and Thunderbird 128.4</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1730548800">- Mozilla Thunderbird 128.4.1
  * Add the 20 year donation appeal (bmo#192538)</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1730894400">- Mozilla Thunderbird 128.4.2
  * Increased the auto-compaction threshold to reduce the frequency
    of compaction (bmo#1927656)
  * fixed: New profile creation caused console errors (bmo#1912675)
  * fixed: Repair folder could result in older messages showing
    wrong date and time (bmo#1911916)
  * fixed: Recently deleted messages could become undeleted if
    message compaction failed (bmo#1924927)
  * fixed: Visual and UX improvements
    (bmo#1857413,bmo#1922934,bmo#1924437)
  * fixed: Clicking on an HTML button could cause Thunderbird to
    freeze (bmo#1879355)
  * fixed: Messages could not be selected for dragging
    (bmo#1887518)
  * fixed: Could not open attached file in a MIME encrypted
    message (bmo#1924637)
  * fixed: Account creation "Setup Documentation" link was broken
    (bmo#1925493)
  * fixed: Unable to generate QR codes when exporting to mobile
    in some cases (bmo#1928114)
  * fixed: Operating system reauthentication was missing when
    exporting QR codes for mobile (bmo#1928232)
  * fixed: Could not drag all-day events from one day to another
    in week view (bmo#1922944)</changelog>
</package>
<package pkgid="4927ea8a30c980315a76cfce90e4316d17beb66b9150b6ba2b8ea915499774ed3b2ceb028638a43d5870f3f606657efb527488ec37e85c8ed5d61739eff03823" name="MozillaThunderbird-debuginfo" arch="x86_64">
  <version epoch="0" ver="128.4.3" rel="1.1"/>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1710590400">- Mozilla Thunderbird 115.9.0
  https://www.thunderbird.net/en-US/thunderbird/115.9.0/releasenotes/
  MFSA 2024-14 (bsc#1221327)
  * CVE-2024-0743 (bmo#1867408)
    Crash in NSS TLS method
  * CVE-2024-2605 (bmo#1872920)
    Windows Error Reporter could be used as a Sandbox escape vector
  * CVE-2024-2607 (bmo#1879939)
    JIT code failed to save return registers on Armv7-A
  * CVE-2024-2608 (bmo#1880692)
    Integer overflow could have led to out of bounds write
  * CVE-2024-2616 (bmo#1846197)
    Improve handling of out-of-memory conditions in ICU
  * CVE-2023-5388 (bmo#1780432)
    NSS susceptible to timing attack against RSA decryption
  * CVE-2024-2610 (bmo#1871112)
    Improper handling of html and body tags enabled CSP nonce leakage
  * CVE-2024-2611 (bmo#1876675)
    Clickjacking vulnerability could have led to a user accidentally
    granting permissions
  * CVE-2024-2612 (bmo#1879444)
    Self referencing object could have potentially led to a use-
    after-free
  * CVE-2024-2614 (bmo#1685358, bmo#1861016, bmo#1880405, bmo#1881093)
    Memory safety bugs fixed in Firefox 124, Firefox ESR 115.9,
    and Thunderbird 115.9</changelog>
  <changelog author="Manfred Hollstein &lt;manfred.h@gmx.net&gt;" date="1710936000">- LLVM18 breaks building Thunderbird on Tumbleweed; add
  * mozilla-fix-issues-with-llvm18.patch</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1713096000">- Mozilla Thunderbird 115.10.0
  https://www.thunderbird.net/en-US/thunderbird/115.10.0/releasenotes/
  MFSA 2024-20 (bsc#1222535)
  * CVE-2024-3852 (bmo#1883542)
    GetBoundName in the JIT returned the wrong object
  * CVE-2024-3854 (bmo#1884552)
    Out-of-bounds-read after mis-optimized switch statement
  * CVE-2024-3857 (bmo#1886683)
    Incorrect JITting of arguments led to use-after-free during
    garbage collection
  * CVE-2024-2609 (bmo#1866100)
    Permission prompt input delay could expire when not in focus
  * CVE-2024-3859 (bmo#1874489)
    Integer-overflow led to out-of-bounds-read in the OpenType sanitizer
  * CVE-2024-3861 (bmo#1883158)
    Potential use-after-free due to AlignedBuffer self-move
  * CVE-2024-3863 (bmo#1885855)
    Download Protections were bypassed by .xrm-ms files on Windows
  * CVE-2024-3302 (bmo#1881183)
    Denial of Service using HTTP/2 CONTINUATION frames
  * CVE-2024-3864 (bmo#1888333)
    Memory safety bug fixed in Firefox 125, Firefox ESR 115.10,
    and Thunderbird 115.10</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1713528000">- Mozilla Thunderbird 115.10.1
  https://www.thunderbird.net/en-US/thunderbird/115.10.1/releasenotes/
  * fixed hangup introduced with 115.10.0 (bmo#1891889)</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1714824000">- Mozilla Thunderbird 115.10.2:
  https://www.thunderbird.net/en-US/thunderbird/115.10.2/releasenotes/
  This release is identical to 115.10.1, other than changing the
  Update channel for self-updating builds to ESR. (bmo#1893271)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1715688000">- Mozilla Thunderbird 115.11.0
  MFSA 2024-23 (bsc#1224056)
  * CVE-2024-4367 (bmo#1893645)
    Arbitrary JavaScript execution in PDF.js
  * CVE-2024-4767 (bmo#1878577)
    IndexedDB files retained in private browsing mode
  * CVE-2024-4768 (bmo#1886082)
    Potential permissions request bypass via clickjacking
  * CVE-2024-4769 (bmo#1886108)
    Cross-origin responses could be distinguished between script
    and non-script content-types
  * CVE-2024-4770 (bmo#1893270)
    Use-after-free could occur when printing to PDF
  * CVE-2024-4777 (bmo#1878199, bmo#1893340)
    Memory safety bugs fixed in Firefox 126, Firefox ESR 115.11,
    and Thunderbird 115.11</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1716984000">- Mozilla Thunderbird 115.11.1
  * Added a short anonymous survey that a small number of users will
    be randomly asked to complete</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1718625600">- Mozilla Thunderbird 115.12.0
  https://www.thunderbird.net/en-US/thunderbird/115.12.0/releasenotes
  MFSA 2024-28 (bsc#1226027)
  * CVE-2024-5702 (bmo#1193389)
    Use-after-free in networking
  * CVE-2024-5688 (bmo#1895086)
    Use-after-free in JavaScript object transplant
  * CVE-2024-5690 (bmo#1883693)
    External protocol handlers leaked by timing attack
  * CVE-2024-5691 (bmo#1888695)
    Sandboxed iframes were able to bypass sandbox restrictions to
    open a new window
  * CVE-2024-5692 (bmo#1891234)
    Bypass of file name restrictions during saving
  * CVE-2024-5693 (bmo#1891319)
    Cross-Origin Image leak via Offscreen Canvas
  * CVE-2024-5696 (bmo#1896555)
    Memory Corruption in Text Fragments
  * CVE-2024-5700 (bmo#1862809, bmo#1889355, bmo#1893388, bmo#1895123)
    Memory safety bugs fixed in Firefox 127, Firefox ESR 115.12,
    and Thunderbird 115.12</changelog>
  <changelog author="Martin Sirringhaus &lt;martin.sirringhaus@suse.com&gt;" date="1719921600">- Mozilla Thunderbird 115.12.2
  * fixed: Annual Thunderbird Beta appeal intended for
    Thunderbird 115.12.0 did not open as expected (bmo#1898084)
- Mozilla Thunderbird 115.12.1
  * 115.12.0 got pulled because of upstream automation process errors
    and Windows installer signing changes.
    No code changes, changelog is the same as 115.12.0 (bsc#1226495)
- Added thunderbird-fix-CVE-2024-34703.patch (bsc#1227239)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1720612800">- Mozilla Thunderbird 115.13.0
  * After starting Thunderbird, the message list position was
    sometimes set to an incorrect position
  MFSA 2024-30 (bsc#1226316)
  * CVE-2024-6600 (bmo#1888340)
    Memory corruption in WebGL API
  * CVE-2024-6601 (bmo#1890748)
    Race condition in permission assignment
  * CVE-2024-6602 (bmo#1895032)
    Memory corruption in NSS
  * CVE-2024-6603 (bmo#1895081)
    Memory corruption in thread creation
  * CVE-2024-6604 (bmo#1748105, bmo#1837550, bmo#1884266)
    Memory safety bugs fixed in Firefox 128, Firefox ESR 115.13,
    and Thunderbird 115.13</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1722600000">- Mozilla Thunderbird 115.14.0
  * When using an external installation of GnuPG, Thunderbird
    occassionally sent/received corrupted messages (bmo#1898832)
  * Users of external GnuPG were unable to decrypt incorrectly
    encoded messages (bmo#1906903)
  MFSA 2024-38 (bsc#1228648)
  * CVE-2024-7519 (bmo#1902307)
    Out of bounds memory access in graphics shared memory handling
  * CVE-2024-7521 (bmo#1904644)
    Incomplete WebAssembly exception handing
  * CVE-2024-7522 (bmo#1906727)
    Out of bounds read in editor component
  * CVE-2024-7525 (bmo#1909298)
    Missing permission check when creating a StreamFilter
  * CVE-2024-7526 (bmo#1910306)
    Uninitialized memory used by WebGL
  * CVE-2024-7527 (bmo#1871303)
    Use-after-free in JavaScript garbage collection
  * CVE-2024-7529 (bmo#1903187)
    Document content could partially obscure security prompts</changelog>
  <changelog author="Manfred Hollstein &lt;manfred.h@gmx.net&gt;" date="1724932800">- Use gcc13 on Tumbleweed and where it is available.
- Don't use gcc14 as sources don't compile.</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1725624000">- Mozilla Thunderbird 115.15.0
  MFSA 2024-44 (bsc#1229821)
  * CVE-2024-8381 (bmo#1912715)
    Type confusion when looking up a property name in a "with"
    block
  * CVE-2024-8382 (bmo#1906744)
    Internal event interfaces were exposed to web content when
    browser EventHandler listener callbacks ran
  * CVE-2024-8384 (bmo#1911288)
    Garbage collection could mis-color cross-compartment objects
    in OOM conditions</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1728561600">- Mozilla Thunderbird 128.3.1
  https://www.thunderbird.net/en-US/thunderbird/128.0esr/releasenotes/
  and following release notes for minor version updates
  MFSA 2024-52  (bsc#1231413)
  * CVE-2024-9680 (bmo#1923344)
    Use-after-free in Animation timeline
  Mozilla Thunderbird 128.3.0
  MFSA 2024-32 (128.0)
  MFSA 2024-37 (128.1)
  MFSA 2024-43 (128.2)
  MFSA 2024-49 (128.3) (bsc#1230979)
  * CVE-2024-9392 (bmo#1899154, bmo#1905843)
    Compromised content process can bypass site isolation
  * CVE-2024-9393 (bmo#1918301)
    Cross-origin access to PDF contents through multipart responses
  * CVE-2024-9394 (bmo#1918874)
    Cross-origin access to JSON contents through multipart responses
  * CVE-2024-8900 (bmo#1872841)
    Clipboard write permission bypass
  * CVE-2024-9396 (bmo#1912471)
    Potential memory corruption may occur when cloning certain objects
  * CVE-2024-9397 (bmo#1916659)
    Potential directory upload bypass via clickjacking
  * CVE-2024-9398 (bmo#1881037)
    External protocol handlers could be enumerated via popups
  * CVE-2024-9399 (bmo#1907726)
    Specially crafted WebTransport requests could lead to denial
    of service
  * CVE-2024-9400 (bmo#1915249)
    Potential memory corruption during JIT compilation
  * CVE-2024-9401 (bmo#1872744, bmo#1897792, bmo#1911317, bmo#1916476)
    Memory safety bugs fixed in Firefox 131, Firefox ESR 115.16,
    Firefox ESR 128.3, Thunderbird 131, and Thunderbird 128.3
  * CVE-2024-9402 (bmo#1872744, bmo#1897792, bmo#1911317, bmo#1913445,
    bmo#1914106, bmo#1914475, bmo#1914963, bmo#1915008, bmo#1916476)
    Memory safety bugs fixed in Firefox 131, Firefox ESR 128.3,
    Thunderbird 131, and Thunderbird 128.3
- removed obsolete patches
  mozilla-bmo1504834-part3.patch
  mozilla-bmo1512162.patch
  mozilla-bmo1775202.patch
  mozilla-bmo531915.patch
  mozilla-fix-aarch64-libopus.patch
  mozilla-fix-issues-with-llvm18.patch
  mozilla-fix-top-level-asm.patch
  mozilla-partial-revert-1768632.patch
  mozilla-rust-disable-future-incompat.patch
  thunderbird-fix-CVE-2024-34703.patch
- new patch thunderbird-silence-no-return.patch
- rebased
  mozilla-bmo1504834-part1.patch
  mozilla-kde.patch
  mozilla-libavcodec58_91.patch
  mozilla-silence-no-return-type.patch</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1729080000">- Mozilla Thunderbird 128.3.2
  bugfix release:
  https://www.thunderbird.net/en-US/thunderbird/128.3.2esr/releasenotes
- bring back mozilla-bmo531915.patch to fix x86</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1729684800">- Mozilla Thunderbird 128.3.3
  * Files left over from failed folder compactions could use up
    disk space (bmo#1878541)
  * Message list returned to selected message after action on
    another message (bmo#1917485)
  * Some faulty messages were downloaded and never stored
    (bmo#1923765)
  * Messages could become corrupted during folder compaction
    (bmo#1923747,bmo#1923541,bmo#1720047)
  * Searching events by Location, Description, or URL failed
    (bmo#1912710)
  * "Remove All Shown" saved passwords deleted all logins if
    filtered without results (bmo#601447)
  * Calendar event updates were not always sent to attendees
    (bmo#1877640)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1730289600">- Mozilla Thunderbird 128.4.0
  * Export Thunderbird account settings to Thunderbird Mobile via QRCode
  Bugfixes:
  * Unable to send an unencrypted response to an OpenPGP encrypted message
  MFSA 2024-58 (bsc#1231879)
  * CVE-2024-10458 (bmo#1921733)
    Permission leak via embed or object elements
  * CVE-2024-10459 (bmo#1919087)
    Use-after-free in layout with accessibility
  * CVE-2024-10460 (bmo#1912537)
    Confusing display of origin for external protocol handler prompt
  * CVE-2024-10461 (bmo#1914521)
    XSS due to Content-Disposition being ignored in
    multipart/x-mixed-replace response
  * CVE-2024-10462 (bmo#1920423)
    Origin of permission prompt could be spoofed by long URL
  * CVE-2024-10463 (bmo#1920800)
    Cross origin video frame leak
  * CVE-2024-10464 (bmo#1913000)
    History interface could have been used to cause a Denial of
    Service condition in the browser
  * CVE-2024-10465 (bmo#1918853)
    Clipboard "paste" button persisted across tabs
  * CVE-2024-10466 (bmo#1924154)
    DOM push subscription message could hang Firefox
  * CVE-2024-10467 (bmo#1829029, bmo#1888538, bmo#1900394, bmo#1904059,
    bmo#1917742, bmo#1919809, bmo#1923706)
    Memory safety bugs fixed in Firefox 132, Thunderbird 132,
    Firefox ESR 128.4, and Thunderbird 128.4</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1730548800">- Mozilla Thunderbird 128.4.1
  * Add the 20 year donation appeal (bmo#192538)</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1730894400">- Mozilla Thunderbird 128.4.2
  * Increased the auto-compaction threshold to reduce the frequency
    of compaction (bmo#1927656)
  * fixed: New profile creation caused console errors (bmo#1912675)
  * fixed: Repair folder could result in older messages showing
    wrong date and time (bmo#1911916)
  * fixed: Recently deleted messages could become undeleted if
    message compaction failed (bmo#1924927)
  * fixed: Visual and UX improvements
    (bmo#1857413,bmo#1922934,bmo#1924437)
  * fixed: Clicking on an HTML button could cause Thunderbird to
    freeze (bmo#1879355)
  * fixed: Messages could not be selected for dragging
    (bmo#1887518)
  * fixed: Could not open attached file in a MIME encrypted
    message (bmo#1924637)
  * fixed: Account creation "Setup Documentation" link was broken
    (bmo#1925493)
  * fixed: Unable to generate QR codes when exporting to mobile
    in some cases (bmo#1928114)
  * fixed: Operating system reauthentication was missing when
    exporting QR codes for mobile (bmo#1928232)
  * fixed: Could not drag all-day events from one day to another
    in week view (bmo#1922944)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1731153600">- Mozilla Thunderbird 128.4.3
  Fixes:
  * Folder corruption could cause Thunderbird to freeze and become unusable
  * Message corruption could be propagated when reading mbox
  * Folder compaction was not abandoned on shutdown
  * Folder compaction did not clean up on failure
  * Collapsed NNTP thread incorrectly indicated there were unread messages
  * Navigating to next unread message did not wait for all messages
    to be loaded
  * Applying column view to folder and children could break if folder
    error occurred
  * Remote content notifications were broken with encrypted messages
  * Updating criteria of a saved search resulted in poor search performance
  * Drop-downs may not work in some places
  MFSA 2024-61
  * CVE-2024-11159 (bmo#1925929)
    Potential disclosure of plaintext in OpenPGP encrypted message
- remove kmozillahelper support (boo#1226112)
  * removed mozilla-kde.patch
  * requires xdg-desktop-portal instead</changelog>
</package>
<package pkgid="2a123be3cce7bf12f66c24333ebfdca199ea6285a3497a1c7c103039a870d62af39b52989f2bb43348203c1cd55fc8e2e964571c7d26c42d2fd89cb9c2e343cb" name="MozillaThunderbird-debuginfo" arch="x86_64">
  <version epoch="0" ver="128.4.4" rel="1.1"/>
  <changelog author="Manfred Hollstein &lt;manfred.h@gmx.net&gt;" date="1710936000">- LLVM18 breaks building Thunderbird on Tumbleweed; add
  * mozilla-fix-issues-with-llvm18.patch</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1713096000">- Mozilla Thunderbird 115.10.0
  https://www.thunderbird.net/en-US/thunderbird/115.10.0/releasenotes/
  MFSA 2024-20 (bsc#1222535)
  * CVE-2024-3852 (bmo#1883542)
    GetBoundName in the JIT returned the wrong object
  * CVE-2024-3854 (bmo#1884552)
    Out-of-bounds-read after mis-optimized switch statement
  * CVE-2024-3857 (bmo#1886683)
    Incorrect JITting of arguments led to use-after-free during
    garbage collection
  * CVE-2024-2609 (bmo#1866100)
    Permission prompt input delay could expire when not in focus
  * CVE-2024-3859 (bmo#1874489)
    Integer-overflow led to out-of-bounds-read in the OpenType sanitizer
  * CVE-2024-3861 (bmo#1883158)
    Potential use-after-free due to AlignedBuffer self-move
  * CVE-2024-3863 (bmo#1885855)
    Download Protections were bypassed by .xrm-ms files on Windows
  * CVE-2024-3302 (bmo#1881183)
    Denial of Service using HTTP/2 CONTINUATION frames
  * CVE-2024-3864 (bmo#1888333)
    Memory safety bug fixed in Firefox 125, Firefox ESR 115.10,
    and Thunderbird 115.10</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1713528000">- Mozilla Thunderbird 115.10.1
  https://www.thunderbird.net/en-US/thunderbird/115.10.1/releasenotes/
  * fixed hangup introduced with 115.10.0 (bmo#1891889)</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1714824000">- Mozilla Thunderbird 115.10.2:
  https://www.thunderbird.net/en-US/thunderbird/115.10.2/releasenotes/
  This release is identical to 115.10.1, other than changing the
  Update channel for self-updating builds to ESR. (bmo#1893271)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1715688000">- Mozilla Thunderbird 115.11.0
  MFSA 2024-23 (bsc#1224056)
  * CVE-2024-4367 (bmo#1893645)
    Arbitrary JavaScript execution in PDF.js
  * CVE-2024-4767 (bmo#1878577)
    IndexedDB files retained in private browsing mode
  * CVE-2024-4768 (bmo#1886082)
    Potential permissions request bypass via clickjacking
  * CVE-2024-4769 (bmo#1886108)
    Cross-origin responses could be distinguished between script
    and non-script content-types
  * CVE-2024-4770 (bmo#1893270)
    Use-after-free could occur when printing to PDF
  * CVE-2024-4777 (bmo#1878199, bmo#1893340)
    Memory safety bugs fixed in Firefox 126, Firefox ESR 115.11,
    and Thunderbird 115.11</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1716984000">- Mozilla Thunderbird 115.11.1
  * Added a short anonymous survey that a small number of users will
    be randomly asked to complete</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1718625600">- Mozilla Thunderbird 115.12.0
  https://www.thunderbird.net/en-US/thunderbird/115.12.0/releasenotes
  MFSA 2024-28 (bsc#1226027)
  * CVE-2024-5702 (bmo#1193389)
    Use-after-free in networking
  * CVE-2024-5688 (bmo#1895086)
    Use-after-free in JavaScript object transplant
  * CVE-2024-5690 (bmo#1883693)
    External protocol handlers leaked by timing attack
  * CVE-2024-5691 (bmo#1888695)
    Sandboxed iframes were able to bypass sandbox restrictions to
    open a new window
  * CVE-2024-5692 (bmo#1891234)
    Bypass of file name restrictions during saving
  * CVE-2024-5693 (bmo#1891319)
    Cross-Origin Image leak via Offscreen Canvas
  * CVE-2024-5696 (bmo#1896555)
    Memory Corruption in Text Fragments
  * CVE-2024-5700 (bmo#1862809, bmo#1889355, bmo#1893388, bmo#1895123)
    Memory safety bugs fixed in Firefox 127, Firefox ESR 115.12,
    and Thunderbird 115.12</changelog>
  <changelog author="Martin Sirringhaus &lt;martin.sirringhaus@suse.com&gt;" date="1719921600">- Mozilla Thunderbird 115.12.2
  * fixed: Annual Thunderbird Beta appeal intended for
    Thunderbird 115.12.0 did not open as expected (bmo#1898084)
- Mozilla Thunderbird 115.12.1
  * 115.12.0 got pulled because of upstream automation process errors
    and Windows installer signing changes.
    No code changes, changelog is the same as 115.12.0 (bsc#1226495)
- Added thunderbird-fix-CVE-2024-34703.patch (bsc#1227239)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1720612800">- Mozilla Thunderbird 115.13.0
  * After starting Thunderbird, the message list position was
    sometimes set to an incorrect position
  MFSA 2024-30 (bsc#1226316)
  * CVE-2024-6600 (bmo#1888340)
    Memory corruption in WebGL API
  * CVE-2024-6601 (bmo#1890748)
    Race condition in permission assignment
  * CVE-2024-6602 (bmo#1895032)
    Memory corruption in NSS
  * CVE-2024-6603 (bmo#1895081)
    Memory corruption in thread creation
  * CVE-2024-6604 (bmo#1748105, bmo#1837550, bmo#1884266)
    Memory safety bugs fixed in Firefox 128, Firefox ESR 115.13,
    and Thunderbird 115.13</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1722600000">- Mozilla Thunderbird 115.14.0
  * When using an external installation of GnuPG, Thunderbird
    occassionally sent/received corrupted messages (bmo#1898832)
  * Users of external GnuPG were unable to decrypt incorrectly
    encoded messages (bmo#1906903)
  MFSA 2024-38 (bsc#1228648)
  * CVE-2024-7519 (bmo#1902307)
    Out of bounds memory access in graphics shared memory handling
  * CVE-2024-7521 (bmo#1904644)
    Incomplete WebAssembly exception handing
  * CVE-2024-7522 (bmo#1906727)
    Out of bounds read in editor component
  * CVE-2024-7525 (bmo#1909298)
    Missing permission check when creating a StreamFilter
  * CVE-2024-7526 (bmo#1910306)
    Uninitialized memory used by WebGL
  * CVE-2024-7527 (bmo#1871303)
    Use-after-free in JavaScript garbage collection
  * CVE-2024-7529 (bmo#1903187)
    Document content could partially obscure security prompts</changelog>
  <changelog author="Manfred Hollstein &lt;manfred.h@gmx.net&gt;" date="1724932800">- Use gcc13 on Tumbleweed and where it is available.
- Don't use gcc14 as sources don't compile.</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1725624000">- Mozilla Thunderbird 115.15.0
  MFSA 2024-44 (bsc#1229821)
  * CVE-2024-8381 (bmo#1912715)
    Type confusion when looking up a property name in a "with"
    block
  * CVE-2024-8382 (bmo#1906744)
    Internal event interfaces were exposed to web content when
    browser EventHandler listener callbacks ran
  * CVE-2024-8384 (bmo#1911288)
    Garbage collection could mis-color cross-compartment objects
    in OOM conditions</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1728561600">- Mozilla Thunderbird 128.3.1
  https://www.thunderbird.net/en-US/thunderbird/128.0esr/releasenotes/
  and following release notes for minor version updates
  MFSA 2024-52  (bsc#1231413)
  * CVE-2024-9680 (bmo#1923344)
    Use-after-free in Animation timeline
  Mozilla Thunderbird 128.3.0
  MFSA 2024-32 (128.0)
  MFSA 2024-37 (128.1)
  MFSA 2024-43 (128.2)
  MFSA 2024-49 (128.3) (bsc#1230979)
  * CVE-2024-9392 (bmo#1899154, bmo#1905843)
    Compromised content process can bypass site isolation
  * CVE-2024-9393 (bmo#1918301)
    Cross-origin access to PDF contents through multipart responses
  * CVE-2024-9394 (bmo#1918874)
    Cross-origin access to JSON contents through multipart responses
  * CVE-2024-8900 (bmo#1872841)
    Clipboard write permission bypass
  * CVE-2024-9396 (bmo#1912471)
    Potential memory corruption may occur when cloning certain objects
  * CVE-2024-9397 (bmo#1916659)
    Potential directory upload bypass via clickjacking
  * CVE-2024-9398 (bmo#1881037)
    External protocol handlers could be enumerated via popups
  * CVE-2024-9399 (bmo#1907726)
    Specially crafted WebTransport requests could lead to denial
    of service
  * CVE-2024-9400 (bmo#1915249)
    Potential memory corruption during JIT compilation
  * CVE-2024-9401 (bmo#1872744, bmo#1897792, bmo#1911317, bmo#1916476)
    Memory safety bugs fixed in Firefox 131, Firefox ESR 115.16,
    Firefox ESR 128.3, Thunderbird 131, and Thunderbird 128.3
  * CVE-2024-9402 (bmo#1872744, bmo#1897792, bmo#1911317, bmo#1913445,
    bmo#1914106, bmo#1914475, bmo#1914963, bmo#1915008, bmo#1916476)
    Memory safety bugs fixed in Firefox 131, Firefox ESR 128.3,
    Thunderbird 131, and Thunderbird 128.3
- removed obsolete patches
  mozilla-bmo1504834-part3.patch
  mozilla-bmo1512162.patch
  mozilla-bmo1775202.patch
  mozilla-bmo531915.patch
  mozilla-fix-aarch64-libopus.patch
  mozilla-fix-issues-with-llvm18.patch
  mozilla-fix-top-level-asm.patch
  mozilla-partial-revert-1768632.patch
  mozilla-rust-disable-future-incompat.patch
  thunderbird-fix-CVE-2024-34703.patch
- new patch thunderbird-silence-no-return.patch
- rebased
  mozilla-bmo1504834-part1.patch
  mozilla-kde.patch
  mozilla-libavcodec58_91.patch
  mozilla-silence-no-return-type.patch</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1729080000">- Mozilla Thunderbird 128.3.2
  bugfix release:
  https://www.thunderbird.net/en-US/thunderbird/128.3.2esr/releasenotes
- bring back mozilla-bmo531915.patch to fix x86</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1729684800">- Mozilla Thunderbird 128.3.3
  * Files left over from failed folder compactions could use up
    disk space (bmo#1878541)
  * Message list returned to selected message after action on
    another message (bmo#1917485)
  * Some faulty messages were downloaded and never stored
    (bmo#1923765)
  * Messages could become corrupted during folder compaction
    (bmo#1923747,bmo#1923541,bmo#1720047)
  * Searching events by Location, Description, or URL failed
    (bmo#1912710)
  * "Remove All Shown" saved passwords deleted all logins if
    filtered without results (bmo#601447)
  * Calendar event updates were not always sent to attendees
    (bmo#1877640)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1730289600">- Mozilla Thunderbird 128.4.0
  * Export Thunderbird account settings to Thunderbird Mobile via QRCode
  Bugfixes:
  * Unable to send an unencrypted response to an OpenPGP encrypted message
  MFSA 2024-58 (bsc#1231879)
  * CVE-2024-10458 (bmo#1921733)
    Permission leak via embed or object elements
  * CVE-2024-10459 (bmo#1919087)
    Use-after-free in layout with accessibility
  * CVE-2024-10460 (bmo#1912537)
    Confusing display of origin for external protocol handler prompt
  * CVE-2024-10461 (bmo#1914521)
    XSS due to Content-Disposition being ignored in
    multipart/x-mixed-replace response
  * CVE-2024-10462 (bmo#1920423)
    Origin of permission prompt could be spoofed by long URL
  * CVE-2024-10463 (bmo#1920800)
    Cross origin video frame leak
  * CVE-2024-10464 (bmo#1913000)
    History interface could have been used to cause a Denial of
    Service condition in the browser
  * CVE-2024-10465 (bmo#1918853)
    Clipboard "paste" button persisted across tabs
  * CVE-2024-10466 (bmo#1924154)
    DOM push subscription message could hang Firefox
  * CVE-2024-10467 (bmo#1829029, bmo#1888538, bmo#1900394, bmo#1904059,
    bmo#1917742, bmo#1919809, bmo#1923706)
    Memory safety bugs fixed in Firefox 132, Thunderbird 132,
    Firefox ESR 128.4, and Thunderbird 128.4</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1730548800">- Mozilla Thunderbird 128.4.1
  * Add the 20 year donation appeal (bmo#192538)</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1730894400">- Mozilla Thunderbird 128.4.2
  * Increased the auto-compaction threshold to reduce the frequency
    of compaction (bmo#1927656)
  * fixed: New profile creation caused console errors (bmo#1912675)
  * fixed: Repair folder could result in older messages showing
    wrong date and time (bmo#1911916)
  * fixed: Recently deleted messages could become undeleted if
    message compaction failed (bmo#1924927)
  * fixed: Visual and UX improvements
    (bmo#1857413,bmo#1922934,bmo#1924437)
  * fixed: Clicking on an HTML button could cause Thunderbird to
    freeze (bmo#1879355)
  * fixed: Messages could not be selected for dragging
    (bmo#1887518)
  * fixed: Could not open attached file in a MIME encrypted
    message (bmo#1924637)
  * fixed: Account creation "Setup Documentation" link was broken
    (bmo#1925493)
  * fixed: Unable to generate QR codes when exporting to mobile
    in some cases (bmo#1928114)
  * fixed: Operating system reauthentication was missing when
    exporting QR codes for mobile (bmo#1928232)
  * fixed: Could not drag all-day events from one day to another
    in week view (bmo#1922944)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1731153600">- Mozilla Thunderbird 128.4.3
  Fixes:
  * Folder corruption could cause Thunderbird to freeze and become unusable
  * Message corruption could be propagated when reading mbox
  * Folder compaction was not abandoned on shutdown
  * Folder compaction did not clean up on failure
  * Collapsed NNTP thread incorrectly indicated there were unread messages
  * Navigating to next unread message did not wait for all messages
    to be loaded
  * Applying column view to folder and children could break if folder
    error occurred
  * Remote content notifications were broken with encrypted messages
  * Updating criteria of a saved search resulted in poor search performance
  * Drop-downs may not work in some places
  MFSA 2024-61
  * CVE-2024-11159 (bmo#1925929)
    Potential disclosure of plaintext in OpenPGP encrypted message
- remove kmozillahelper support (boo#1226112)
  * removed mozilla-kde.patch
  * requires xdg-desktop-portal instead</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1732104000">- Mozilla Thunderbird 128.4.4
  * QR codes were not scannable by Android app when using most
    high-contrast themes
  * Primary password prompt cancellation during mobile export was
    confusing
- revert using xdg-desktop-portal as some desktops have limited
  support</changelog>
</package>
<package pkgid="bd8863d9faf9fb4931fe9dd03226ec790d18b89c85d332b80f0cebf39401a6a4bb349aff510646d0ca7771e9025ba0e6f6c7523918a4888f962b05f485deabc5" name="MozillaThunderbird-debuginfo" arch="x86_64">
  <version epoch="0" ver="128.5.0" rel="1.0.8.1.sr20241103"/>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1713096000">- Mozilla Thunderbird 115.10.0
  https://www.thunderbird.net/en-US/thunderbird/115.10.0/releasenotes/
  MFSA 2024-20 (bsc#1222535)
  * CVE-2024-3852 (bmo#1883542)
    GetBoundName in the JIT returned the wrong object
  * CVE-2024-3854 (bmo#1884552)
    Out-of-bounds-read after mis-optimized switch statement
  * CVE-2024-3857 (bmo#1886683)
    Incorrect JITting of arguments led to use-after-free during
    garbage collection
  * CVE-2024-2609 (bmo#1866100)
    Permission prompt input delay could expire when not in focus
  * CVE-2024-3859 (bmo#1874489)
    Integer-overflow led to out-of-bounds-read in the OpenType sanitizer
  * CVE-2024-3861 (bmo#1883158)
    Potential use-after-free due to AlignedBuffer self-move
  * CVE-2024-3863 (bmo#1885855)
    Download Protections were bypassed by .xrm-ms files on Windows
  * CVE-2024-3302 (bmo#1881183)
    Denial of Service using HTTP/2 CONTINUATION frames
  * CVE-2024-3864 (bmo#1888333)
    Memory safety bug fixed in Firefox 125, Firefox ESR 115.10,
    and Thunderbird 115.10</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1713528000">- Mozilla Thunderbird 115.10.1
  https://www.thunderbird.net/en-US/thunderbird/115.10.1/releasenotes/
  * fixed hangup introduced with 115.10.0 (bmo#1891889)</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1714824000">- Mozilla Thunderbird 115.10.2:
  https://www.thunderbird.net/en-US/thunderbird/115.10.2/releasenotes/
  This release is identical to 115.10.1, other than changing the
  Update channel for self-updating builds to ESR. (bmo#1893271)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1715688000">- Mozilla Thunderbird 115.11.0
  MFSA 2024-23 (bsc#1224056)
  * CVE-2024-4367 (bmo#1893645)
    Arbitrary JavaScript execution in PDF.js
  * CVE-2024-4767 (bmo#1878577)
    IndexedDB files retained in private browsing mode
  * CVE-2024-4768 (bmo#1886082)
    Potential permissions request bypass via clickjacking
  * CVE-2024-4769 (bmo#1886108)
    Cross-origin responses could be distinguished between script
    and non-script content-types
  * CVE-2024-4770 (bmo#1893270)
    Use-after-free could occur when printing to PDF
  * CVE-2024-4777 (bmo#1878199, bmo#1893340)
    Memory safety bugs fixed in Firefox 126, Firefox ESR 115.11,
    and Thunderbird 115.11</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1716984000">- Mozilla Thunderbird 115.11.1
  * Added a short anonymous survey that a small number of users will
    be randomly asked to complete</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1718625600">- Mozilla Thunderbird 115.12.0
  https://www.thunderbird.net/en-US/thunderbird/115.12.0/releasenotes
  MFSA 2024-28 (bsc#1226027)
  * CVE-2024-5702 (bmo#1193389)
    Use-after-free in networking
  * CVE-2024-5688 (bmo#1895086)
    Use-after-free in JavaScript object transplant
  * CVE-2024-5690 (bmo#1883693)
    External protocol handlers leaked by timing attack
  * CVE-2024-5691 (bmo#1888695)
    Sandboxed iframes were able to bypass sandbox restrictions to
    open a new window
  * CVE-2024-5692 (bmo#1891234)
    Bypass of file name restrictions during saving
  * CVE-2024-5693 (bmo#1891319)
    Cross-Origin Image leak via Offscreen Canvas
  * CVE-2024-5696 (bmo#1896555)
    Memory Corruption in Text Fragments
  * CVE-2024-5700 (bmo#1862809, bmo#1889355, bmo#1893388, bmo#1895123)
    Memory safety bugs fixed in Firefox 127, Firefox ESR 115.12,
    and Thunderbird 115.12</changelog>
  <changelog author="Martin Sirringhaus &lt;martin.sirringhaus@suse.com&gt;" date="1719921600">- Mozilla Thunderbird 115.12.2
  * fixed: Annual Thunderbird Beta appeal intended for
    Thunderbird 115.12.0 did not open as expected (bmo#1898084)
- Mozilla Thunderbird 115.12.1
  * 115.12.0 got pulled because of upstream automation process errors
    and Windows installer signing changes.
    No code changes, changelog is the same as 115.12.0 (bsc#1226495)
- Added thunderbird-fix-CVE-2024-34703.patch (bsc#1227239)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1720612800">- Mozilla Thunderbird 115.13.0
  * After starting Thunderbird, the message list position was
    sometimes set to an incorrect position
  MFSA 2024-30 (bsc#1226316)
  * CVE-2024-6600 (bmo#1888340)
    Memory corruption in WebGL API
  * CVE-2024-6601 (bmo#1890748)
    Race condition in permission assignment
  * CVE-2024-6602 (bmo#1895032)
    Memory corruption in NSS
  * CVE-2024-6603 (bmo#1895081)
    Memory corruption in thread creation
  * CVE-2024-6604 (bmo#1748105, bmo#1837550, bmo#1884266)
    Memory safety bugs fixed in Firefox 128, Firefox ESR 115.13,
    and Thunderbird 115.13</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1722600000">- Mozilla Thunderbird 115.14.0
  * When using an external installation of GnuPG, Thunderbird
    occassionally sent/received corrupted messages (bmo#1898832)
  * Users of external GnuPG were unable to decrypt incorrectly
    encoded messages (bmo#1906903)
  MFSA 2024-38 (bsc#1228648)
  * CVE-2024-7519 (bmo#1902307)
    Out of bounds memory access in graphics shared memory handling
  * CVE-2024-7521 (bmo#1904644)
    Incomplete WebAssembly exception handing
  * CVE-2024-7522 (bmo#1906727)
    Out of bounds read in editor component
  * CVE-2024-7525 (bmo#1909298)
    Missing permission check when creating a StreamFilter
  * CVE-2024-7526 (bmo#1910306)
    Uninitialized memory used by WebGL
  * CVE-2024-7527 (bmo#1871303)
    Use-after-free in JavaScript garbage collection
  * CVE-2024-7529 (bmo#1903187)
    Document content could partially obscure security prompts</changelog>
  <changelog author="Manfred Hollstein &lt;manfred.h@gmx.net&gt;" date="1724932800">- Use gcc13 on Tumbleweed and where it is available.
- Don't use gcc14 as sources don't compile.</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1725624000">- Mozilla Thunderbird 115.15.0
  MFSA 2024-44 (bsc#1229821)
  * CVE-2024-8381 (bmo#1912715)
    Type confusion when looking up a property name in a "with"
    block
  * CVE-2024-8382 (bmo#1906744)
    Internal event interfaces were exposed to web content when
    browser EventHandler listener callbacks ran
  * CVE-2024-8384 (bmo#1911288)
    Garbage collection could mis-color cross-compartment objects
    in OOM conditions</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1728561600">- Mozilla Thunderbird 128.3.1
  https://www.thunderbird.net/en-US/thunderbird/128.0esr/releasenotes/
  and following release notes for minor version updates
  MFSA 2024-52  (bsc#1231413)
  * CVE-2024-9680 (bmo#1923344)
    Use-after-free in Animation timeline
  Mozilla Thunderbird 128.3.0
  MFSA 2024-32 (128.0)
  MFSA 2024-37 (128.1)
  MFSA 2024-43 (128.2)
  MFSA 2024-49 (128.3) (bsc#1230979)
  * CVE-2024-9392 (bmo#1899154, bmo#1905843)
    Compromised content process can bypass site isolation
  * CVE-2024-9393 (bmo#1918301)
    Cross-origin access to PDF contents through multipart responses
  * CVE-2024-9394 (bmo#1918874)
    Cross-origin access to JSON contents through multipart responses
  * CVE-2024-8900 (bmo#1872841)
    Clipboard write permission bypass
  * CVE-2024-9396 (bmo#1912471)
    Potential memory corruption may occur when cloning certain objects
  * CVE-2024-9397 (bmo#1916659)
    Potential directory upload bypass via clickjacking
  * CVE-2024-9398 (bmo#1881037)
    External protocol handlers could be enumerated via popups
  * CVE-2024-9399 (bmo#1907726)
    Specially crafted WebTransport requests could lead to denial
    of service
  * CVE-2024-9400 (bmo#1915249)
    Potential memory corruption during JIT compilation
  * CVE-2024-9401 (bmo#1872744, bmo#1897792, bmo#1911317, bmo#1916476)
    Memory safety bugs fixed in Firefox 131, Firefox ESR 115.16,
    Firefox ESR 128.3, Thunderbird 131, and Thunderbird 128.3
  * CVE-2024-9402 (bmo#1872744, bmo#1897792, bmo#1911317, bmo#1913445,
    bmo#1914106, bmo#1914475, bmo#1914963, bmo#1915008, bmo#1916476)
    Memory safety bugs fixed in Firefox 131, Firefox ESR 128.3,
    Thunderbird 131, and Thunderbird 128.3
- removed obsolete patches
  mozilla-bmo1504834-part3.patch
  mozilla-bmo1512162.patch
  mozilla-bmo1775202.patch
  mozilla-bmo531915.patch
  mozilla-fix-aarch64-libopus.patch
  mozilla-fix-issues-with-llvm18.patch
  mozilla-fix-top-level-asm.patch
  mozilla-partial-revert-1768632.patch
  mozilla-rust-disable-future-incompat.patch
  thunderbird-fix-CVE-2024-34703.patch
- new patch thunderbird-silence-no-return.patch
- rebased
  mozilla-bmo1504834-part1.patch
  mozilla-kde.patch
  mozilla-libavcodec58_91.patch
  mozilla-silence-no-return-type.patch</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1729080000">- Mozilla Thunderbird 128.3.2
  bugfix release:
  https://www.thunderbird.net/en-US/thunderbird/128.3.2esr/releasenotes
- bring back mozilla-bmo531915.patch to fix x86</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1729684800">- Mozilla Thunderbird 128.3.3
  * Files left over from failed folder compactions could use up
    disk space (bmo#1878541)
  * Message list returned to selected message after action on
    another message (bmo#1917485)
  * Some faulty messages were downloaded and never stored
    (bmo#1923765)
  * Messages could become corrupted during folder compaction
    (bmo#1923747,bmo#1923541,bmo#1720047)
  * Searching events by Location, Description, or URL failed
    (bmo#1912710)
  * "Remove All Shown" saved passwords deleted all logins if
    filtered without results (bmo#601447)
  * Calendar event updates were not always sent to attendees
    (bmo#1877640)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1730289600">- Mozilla Thunderbird 128.4.0
  * Export Thunderbird account settings to Thunderbird Mobile via QRCode
  Bugfixes:
  * Unable to send an unencrypted response to an OpenPGP encrypted message
  MFSA 2024-58 (bsc#1231879)
  * CVE-2024-10458 (bmo#1921733)
    Permission leak via embed or object elements
  * CVE-2024-10459 (bmo#1919087)
    Use-after-free in layout with accessibility
  * CVE-2024-10460 (bmo#1912537)
    Confusing display of origin for external protocol handler prompt
  * CVE-2024-10461 (bmo#1914521)
    XSS due to Content-Disposition being ignored in
    multipart/x-mixed-replace response
  * CVE-2024-10462 (bmo#1920423)
    Origin of permission prompt could be spoofed by long URL
  * CVE-2024-10463 (bmo#1920800)
    Cross origin video frame leak
  * CVE-2024-10464 (bmo#1913000)
    History interface could have been used to cause a Denial of
    Service condition in the browser
  * CVE-2024-10465 (bmo#1918853)
    Clipboard "paste" button persisted across tabs
  * CVE-2024-10466 (bmo#1924154)
    DOM push subscription message could hang Firefox
  * CVE-2024-10467 (bmo#1829029, bmo#1888538, bmo#1900394, bmo#1904059,
    bmo#1917742, bmo#1919809, bmo#1923706)
    Memory safety bugs fixed in Firefox 132, Thunderbird 132,
    Firefox ESR 128.4, and Thunderbird 128.4</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1730548800">- Mozilla Thunderbird 128.4.1
  * Add the 20 year donation appeal (bmo#192538)</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1730894400">- Mozilla Thunderbird 128.4.2
  * Increased the auto-compaction threshold to reduce the frequency
    of compaction (bmo#1927656)
  * fixed: New profile creation caused console errors (bmo#1912675)
  * fixed: Repair folder could result in older messages showing
    wrong date and time (bmo#1911916)
  * fixed: Recently deleted messages could become undeleted if
    message compaction failed (bmo#1924927)
  * fixed: Visual and UX improvements
    (bmo#1857413,bmo#1922934,bmo#1924437)
  * fixed: Clicking on an HTML button could cause Thunderbird to
    freeze (bmo#1879355)
  * fixed: Messages could not be selected for dragging
    (bmo#1887518)
  * fixed: Could not open attached file in a MIME encrypted
    message (bmo#1924637)
  * fixed: Account creation "Setup Documentation" link was broken
    (bmo#1925493)
  * fixed: Unable to generate QR codes when exporting to mobile
    in some cases (bmo#1928114)
  * fixed: Operating system reauthentication was missing when
    exporting QR codes for mobile (bmo#1928232)
  * fixed: Could not drag all-day events from one day to another
    in week view (bmo#1922944)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1731153600">- Mozilla Thunderbird 128.4.3
  Fixes:
  * Folder corruption could cause Thunderbird to freeze and become unusable
  * Message corruption could be propagated when reading mbox
  * Folder compaction was not abandoned on shutdown
  * Folder compaction did not clean up on failure
  * Collapsed NNTP thread incorrectly indicated there were unread messages
  * Navigating to next unread message did not wait for all messages
    to be loaded
  * Applying column view to folder and children could break if folder
    error occurred
  * Remote content notifications were broken with encrypted messages
  * Updating criteria of a saved search resulted in poor search performance
  * Drop-downs may not work in some places
  MFSA 2024-61
  * CVE-2024-11159 (bmo#1925929)
    Potential disclosure of plaintext in OpenPGP encrypted message
- remove kmozillahelper support (boo#1226112)
  * removed mozilla-kde.patch
  * requires xdg-desktop-portal instead</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1732104000">- Mozilla Thunderbird 128.4.4
  * QR codes were not scannable by Android app when using most
    high-contrast themes
  * Primary password prompt cancellation during mobile export was
    confusing
- revert using xdg-desktop-portal as some desktops have limited
  support</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1732622400">- Mozilla Thunderbird 128.5.0
  * IMAP could crash when reading cached messages
  * Enabling "Show Folder Size" on Maildir profile could render
    Thunderbird unusable
  * Messages corrupted by folder compaction were only fixed by user
    intervention
  * Reading a message from past the end of an mbox file did not
    cause an error
  * View -&gt; Folders had duplicate F access keys
  * Add-ons adding columns to the message list could fail and cause
    display issue
  * "Empty trash on exit" and "Expunge inbox on exit" did not
    always work
  * Selecting a display option in View -&gt; Tasks did not apply in
    the Task interface
  MFSA 2024-68 (bsc#1233695)
  * CVE-2024-11691 (bmo#1914707, bmo#1924184)
    Memory corruption in Apple GPU drivers
  * CVE-2024-11692 (bmo#1909535)
    Select list elements could be shown over another site
  * CVE-2024-11693 (bmo#1921458)
    Download Protections were bypassed by .library-ms files on Windows
  * CVE-2024-11694 (bmo#1924167)
    CSP Bypass and XSS Exposure via Web Compatibility Shims
  * CVE-2024-11695 (bmo#1925496)
    URL Bar Spoofing via Manipulated Punycode and Whitespace Characters
  * CVE-2024-11696 (bmo#1929600)
    Unhandled Exception in Add-on Signature Verification
  * CVE-2024-11697 (bmo#1842187)
    Improper Keypress Handling in Executable File Confirmation Dialog
  * CVE-2024-11698 (bmo#1916152)
    Fullscreen Lock-Up When Modal Dialog Interrupts Transition on macOS
  * CVE-2024-11699 (bmo#1880582, bmo#1929911)
    Memory safety bugs fixed in Firefox 133, Thunderbird 133,
    Firefox ESR 128.5, and Thunderbird 128.5
- appid is thunderbird-esr currently; use the matching desktop
  file name (boo#1233650)</changelog>
</package>
<package pkgid="6e49294f8b5b3cd015a251a4eb702a482db31bddde3ac6823ef2329f845fbdbfe1e5ac739e279205067f914194458a18afc1bfefcb91ecee91c88b19059a11d1" name="MozillaThunderbird-debuginfo" arch="x86_64">
  <version epoch="0" ver="128.5.1" rel="1.0.10.1.sr20241103"/>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1714824000">- Mozilla Thunderbird 115.10.2:
  https://www.thunderbird.net/en-US/thunderbird/115.10.2/releasenotes/
  This release is identical to 115.10.1, other than changing the
  Update channel for self-updating builds to ESR. (bmo#1893271)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1715688000">- Mozilla Thunderbird 115.11.0
  MFSA 2024-23 (bsc#1224056)
  * CVE-2024-4367 (bmo#1893645)
    Arbitrary JavaScript execution in PDF.js
  * CVE-2024-4767 (bmo#1878577)
    IndexedDB files retained in private browsing mode
  * CVE-2024-4768 (bmo#1886082)
    Potential permissions request bypass via clickjacking
  * CVE-2024-4769 (bmo#1886108)
    Cross-origin responses could be distinguished between script
    and non-script content-types
  * CVE-2024-4770 (bmo#1893270)
    Use-after-free could occur when printing to PDF
  * CVE-2024-4777 (bmo#1878199, bmo#1893340)
    Memory safety bugs fixed in Firefox 126, Firefox ESR 115.11,
    and Thunderbird 115.11</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1716984000">- Mozilla Thunderbird 115.11.1
  * Added a short anonymous survey that a small number of users will
    be randomly asked to complete</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1718625600">- Mozilla Thunderbird 115.12.0
  https://www.thunderbird.net/en-US/thunderbird/115.12.0/releasenotes
  MFSA 2024-28 (bsc#1226027)
  * CVE-2024-5702 (bmo#1193389)
    Use-after-free in networking
  * CVE-2024-5688 (bmo#1895086)
    Use-after-free in JavaScript object transplant
  * CVE-2024-5690 (bmo#1883693)
    External protocol handlers leaked by timing attack
  * CVE-2024-5691 (bmo#1888695)
    Sandboxed iframes were able to bypass sandbox restrictions to
    open a new window
  * CVE-2024-5692 (bmo#1891234)
    Bypass of file name restrictions during saving
  * CVE-2024-5693 (bmo#1891319)
    Cross-Origin Image leak via Offscreen Canvas
  * CVE-2024-5696 (bmo#1896555)
    Memory Corruption in Text Fragments
  * CVE-2024-5700 (bmo#1862809, bmo#1889355, bmo#1893388, bmo#1895123)
    Memory safety bugs fixed in Firefox 127, Firefox ESR 115.12,
    and Thunderbird 115.12</changelog>
  <changelog author="Martin Sirringhaus &lt;martin.sirringhaus@suse.com&gt;" date="1719921600">- Mozilla Thunderbird 115.12.2
  * fixed: Annual Thunderbird Beta appeal intended for
    Thunderbird 115.12.0 did not open as expected (bmo#1898084)
- Mozilla Thunderbird 115.12.1
  * 115.12.0 got pulled because of upstream automation process errors
    and Windows installer signing changes.
    No code changes, changelog is the same as 115.12.0 (bsc#1226495)
- Added thunderbird-fix-CVE-2024-34703.patch (bsc#1227239)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1720612800">- Mozilla Thunderbird 115.13.0
  * After starting Thunderbird, the message list position was
    sometimes set to an incorrect position
  MFSA 2024-30 (bsc#1226316)
  * CVE-2024-6600 (bmo#1888340)
    Memory corruption in WebGL API
  * CVE-2024-6601 (bmo#1890748)
    Race condition in permission assignment
  * CVE-2024-6602 (bmo#1895032)
    Memory corruption in NSS
  * CVE-2024-6603 (bmo#1895081)
    Memory corruption in thread creation
  * CVE-2024-6604 (bmo#1748105, bmo#1837550, bmo#1884266)
    Memory safety bugs fixed in Firefox 128, Firefox ESR 115.13,
    and Thunderbird 115.13</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1722600000">- Mozilla Thunderbird 115.14.0
  * When using an external installation of GnuPG, Thunderbird
    occassionally sent/received corrupted messages (bmo#1898832)
  * Users of external GnuPG were unable to decrypt incorrectly
    encoded messages (bmo#1906903)
  MFSA 2024-38 (bsc#1228648)
  * CVE-2024-7519 (bmo#1902307)
    Out of bounds memory access in graphics shared memory handling
  * CVE-2024-7521 (bmo#1904644)
    Incomplete WebAssembly exception handing
  * CVE-2024-7522 (bmo#1906727)
    Out of bounds read in editor component
  * CVE-2024-7525 (bmo#1909298)
    Missing permission check when creating a StreamFilter
  * CVE-2024-7526 (bmo#1910306)
    Uninitialized memory used by WebGL
  * CVE-2024-7527 (bmo#1871303)
    Use-after-free in JavaScript garbage collection
  * CVE-2024-7529 (bmo#1903187)
    Document content could partially obscure security prompts</changelog>
  <changelog author="Manfred Hollstein &lt;manfred.h@gmx.net&gt;" date="1724932800">- Use gcc13 on Tumbleweed and where it is available.
- Don't use gcc14 as sources don't compile.</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1725624000">- Mozilla Thunderbird 115.15.0
  MFSA 2024-44 (bsc#1229821)
  * CVE-2024-8381 (bmo#1912715)
    Type confusion when looking up a property name in a "with"
    block
  * CVE-2024-8382 (bmo#1906744)
    Internal event interfaces were exposed to web content when
    browser EventHandler listener callbacks ran
  * CVE-2024-8384 (bmo#1911288)
    Garbage collection could mis-color cross-compartment objects
    in OOM conditions</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1728561600">- Mozilla Thunderbird 128.3.1
  https://www.thunderbird.net/en-US/thunderbird/128.0esr/releasenotes/
  and following release notes for minor version updates
  MFSA 2024-52  (bsc#1231413)
  * CVE-2024-9680 (bmo#1923344)
    Use-after-free in Animation timeline
  Mozilla Thunderbird 128.3.0
  MFSA 2024-32 (128.0)
  MFSA 2024-37 (128.1)
  MFSA 2024-43 (128.2)
  MFSA 2024-49 (128.3) (bsc#1230979)
  * CVE-2024-9392 (bmo#1899154, bmo#1905843)
    Compromised content process can bypass site isolation
  * CVE-2024-9393 (bmo#1918301)
    Cross-origin access to PDF contents through multipart responses
  * CVE-2024-9394 (bmo#1918874)
    Cross-origin access to JSON contents through multipart responses
  * CVE-2024-8900 (bmo#1872841)
    Clipboard write permission bypass
  * CVE-2024-9396 (bmo#1912471)
    Potential memory corruption may occur when cloning certain objects
  * CVE-2024-9397 (bmo#1916659)
    Potential directory upload bypass via clickjacking
  * CVE-2024-9398 (bmo#1881037)
    External protocol handlers could be enumerated via popups
  * CVE-2024-9399 (bmo#1907726)
    Specially crafted WebTransport requests could lead to denial
    of service
  * CVE-2024-9400 (bmo#1915249)
    Potential memory corruption during JIT compilation
  * CVE-2024-9401 (bmo#1872744, bmo#1897792, bmo#1911317, bmo#1916476)
    Memory safety bugs fixed in Firefox 131, Firefox ESR 115.16,
    Firefox ESR 128.3, Thunderbird 131, and Thunderbird 128.3
  * CVE-2024-9402 (bmo#1872744, bmo#1897792, bmo#1911317, bmo#1913445,
    bmo#1914106, bmo#1914475, bmo#1914963, bmo#1915008, bmo#1916476)
    Memory safety bugs fixed in Firefox 131, Firefox ESR 128.3,
    Thunderbird 131, and Thunderbird 128.3
- removed obsolete patches
  mozilla-bmo1504834-part3.patch
  mozilla-bmo1512162.patch
  mozilla-bmo1775202.patch
  mozilla-bmo531915.patch
  mozilla-fix-aarch64-libopus.patch
  mozilla-fix-issues-with-llvm18.patch
  mozilla-fix-top-level-asm.patch
  mozilla-partial-revert-1768632.patch
  mozilla-rust-disable-future-incompat.patch
  thunderbird-fix-CVE-2024-34703.patch
- new patch thunderbird-silence-no-return.patch
- rebased
  mozilla-bmo1504834-part1.patch
  mozilla-kde.patch
  mozilla-libavcodec58_91.patch
  mozilla-silence-no-return-type.patch</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1729080000">- Mozilla Thunderbird 128.3.2
  bugfix release:
  https://www.thunderbird.net/en-US/thunderbird/128.3.2esr/releasenotes
- bring back mozilla-bmo531915.patch to fix x86</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1729684800">- Mozilla Thunderbird 128.3.3
  * Files left over from failed folder compactions could use up
    disk space (bmo#1878541)
  * Message list returned to selected message after action on
    another message (bmo#1917485)
  * Some faulty messages were downloaded and never stored
    (bmo#1923765)
  * Messages could become corrupted during folder compaction
    (bmo#1923747,bmo#1923541,bmo#1720047)
  * Searching events by Location, Description, or URL failed
    (bmo#1912710)
  * "Remove All Shown" saved passwords deleted all logins if
    filtered without results (bmo#601447)
  * Calendar event updates were not always sent to attendees
    (bmo#1877640)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1730289600">- Mozilla Thunderbird 128.4.0
  * Export Thunderbird account settings to Thunderbird Mobile via QRCode
  Bugfixes:
  * Unable to send an unencrypted response to an OpenPGP encrypted message
  MFSA 2024-58 (bsc#1231879)
  * CVE-2024-10458 (bmo#1921733)
    Permission leak via embed or object elements
  * CVE-2024-10459 (bmo#1919087)
    Use-after-free in layout with accessibility
  * CVE-2024-10460 (bmo#1912537)
    Confusing display of origin for external protocol handler prompt
  * CVE-2024-10461 (bmo#1914521)
    XSS due to Content-Disposition being ignored in
    multipart/x-mixed-replace response
  * CVE-2024-10462 (bmo#1920423)
    Origin of permission prompt could be spoofed by long URL
  * CVE-2024-10463 (bmo#1920800)
    Cross origin video frame leak
  * CVE-2024-10464 (bmo#1913000)
    History interface could have been used to cause a Denial of
    Service condition in the browser
  * CVE-2024-10465 (bmo#1918853)
    Clipboard "paste" button persisted across tabs
  * CVE-2024-10466 (bmo#1924154)
    DOM push subscription message could hang Firefox
  * CVE-2024-10467 (bmo#1829029, bmo#1888538, bmo#1900394, bmo#1904059,
    bmo#1917742, bmo#1919809, bmo#1923706)
    Memory safety bugs fixed in Firefox 132, Thunderbird 132,
    Firefox ESR 128.4, and Thunderbird 128.4</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1730548800">- Mozilla Thunderbird 128.4.1
  * Add the 20 year donation appeal (bmo#192538)</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1730894400">- Mozilla Thunderbird 128.4.2
  * Increased the auto-compaction threshold to reduce the frequency
    of compaction (bmo#1927656)
  * fixed: New profile creation caused console errors (bmo#1912675)
  * fixed: Repair folder could result in older messages showing
    wrong date and time (bmo#1911916)
  * fixed: Recently deleted messages could become undeleted if
    message compaction failed (bmo#1924927)
  * fixed: Visual and UX improvements
    (bmo#1857413,bmo#1922934,bmo#1924437)
  * fixed: Clicking on an HTML button could cause Thunderbird to
    freeze (bmo#1879355)
  * fixed: Messages could not be selected for dragging
    (bmo#1887518)
  * fixed: Could not open attached file in a MIME encrypted
    message (bmo#1924637)
  * fixed: Account creation "Setup Documentation" link was broken
    (bmo#1925493)
  * fixed: Unable to generate QR codes when exporting to mobile
    in some cases (bmo#1928114)
  * fixed: Operating system reauthentication was missing when
    exporting QR codes for mobile (bmo#1928232)
  * fixed: Could not drag all-day events from one day to another
    in week view (bmo#1922944)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1731153600">- Mozilla Thunderbird 128.4.3
  Fixes:
  * Folder corruption could cause Thunderbird to freeze and become unusable
  * Message corruption could be propagated when reading mbox
  * Folder compaction was not abandoned on shutdown
  * Folder compaction did not clean up on failure
  * Collapsed NNTP thread incorrectly indicated there were unread messages
  * Navigating to next unread message did not wait for all messages
    to be loaded
  * Applying column view to folder and children could break if folder
    error occurred
  * Remote content notifications were broken with encrypted messages
  * Updating criteria of a saved search resulted in poor search performance
  * Drop-downs may not work in some places
  MFSA 2024-61
  * CVE-2024-11159 (bmo#1925929)
    Potential disclosure of plaintext in OpenPGP encrypted message
- remove kmozillahelper support (boo#1226112)
  * removed mozilla-kde.patch
  * requires xdg-desktop-portal instead</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1732104000">- Mozilla Thunderbird 128.4.4
  * QR codes were not scannable by Android app when using most
    high-contrast themes
  * Primary password prompt cancellation during mobile export was
    confusing
- revert using xdg-desktop-portal as some desktops have limited
  support</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1732622400">- Mozilla Thunderbird 128.5.0
  * IMAP could crash when reading cached messages
  * Enabling "Show Folder Size" on Maildir profile could render
    Thunderbird unusable
  * Messages corrupted by folder compaction were only fixed by user
    intervention
  * Reading a message from past the end of an mbox file did not
    cause an error
  * View -&gt; Folders had duplicate F access keys
  * Add-ons adding columns to the message list could fail and cause
    display issue
  * "Empty trash on exit" and "Expunge inbox on exit" did not
    always work
  * Selecting a display option in View -&gt; Tasks did not apply in
    the Task interface
  MFSA 2024-68 (bsc#1233695)
  * CVE-2024-11691 (bmo#1914707, bmo#1924184)
    Memory corruption in Apple GPU drivers
  * CVE-2024-11692 (bmo#1909535)
    Select list elements could be shown over another site
  * CVE-2024-11693 (bmo#1921458)
    Download Protections were bypassed by .library-ms files on Windows
  * CVE-2024-11694 (bmo#1924167)
    CSP Bypass and XSS Exposure via Web Compatibility Shims
  * CVE-2024-11695 (bmo#1925496)
    URL Bar Spoofing via Manipulated Punycode and Whitespace Characters
  * CVE-2024-11696 (bmo#1929600)
    Unhandled Exception in Add-on Signature Verification
  * CVE-2024-11697 (bmo#1842187)
    Improper Keypress Handling in Executable File Confirmation Dialog
  * CVE-2024-11698 (bmo#1916152)
    Fullscreen Lock-Up When Modal Dialog Interrupts Transition on macOS
  * CVE-2024-11699 (bmo#1880582, bmo#1929911)
    Memory safety bugs fixed in Firefox 133, Thunderbird 133,
    Firefox ESR 128.5, and Thunderbird 128.5
- appid is thunderbird-esr currently; use the matching desktop
  file name (boo#1233650)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1732795200">- make spec compatible with rpm &lt; 4.17 again
- correct appdata for different desktop filename</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1733227200">- Mozilla Thunderbird 128.5.1
  * Add end of year donation appeal
  * Total message count for favorite folders did not work consistently</changelog>
</package>
<package pkgid="e9d41a686599970ddf39e3f78c4fa4efb898eb6d6e331d32ef480e229207fe4f0c739da8fd127e2c5f33b9f985e5081ec8b2149a2bf6c43fb90e65bacc5f8398" name="MozillaThunderbird-debugsource" arch="x86_64">
  <version epoch="0" ver="128.4.2" rel="1.0.2.1.sr20241103"/>
  <changelog author="Adam Mizerski &lt;adam@mizerski.pl&gt;" date="1709640000">- Create subpackage MozillaThunderbird-openpgp-librnp</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1710590400">- Mozilla Thunderbird 115.9.0
  https://www.thunderbird.net/en-US/thunderbird/115.9.0/releasenotes/
  MFSA 2024-14 (bsc#1221327)
  * CVE-2024-0743 (bmo#1867408)
    Crash in NSS TLS method
  * CVE-2024-2605 (bmo#1872920)
    Windows Error Reporter could be used as a Sandbox escape vector
  * CVE-2024-2607 (bmo#1879939)
    JIT code failed to save return registers on Armv7-A
  * CVE-2024-2608 (bmo#1880692)
    Integer overflow could have led to out of bounds write
  * CVE-2024-2616 (bmo#1846197)
    Improve handling of out-of-memory conditions in ICU
  * CVE-2023-5388 (bmo#1780432)
    NSS susceptible to timing attack against RSA decryption
  * CVE-2024-2610 (bmo#1871112)
    Improper handling of html and body tags enabled CSP nonce leakage
  * CVE-2024-2611 (bmo#1876675)
    Clickjacking vulnerability could have led to a user accidentally
    granting permissions
  * CVE-2024-2612 (bmo#1879444)
    Self referencing object could have potentially led to a use-
    after-free
  * CVE-2024-2614 (bmo#1685358, bmo#1861016, bmo#1880405, bmo#1881093)
    Memory safety bugs fixed in Firefox 124, Firefox ESR 115.9,
    and Thunderbird 115.9</changelog>
  <changelog author="Manfred Hollstein &lt;manfred.h@gmx.net&gt;" date="1710936000">- LLVM18 breaks building Thunderbird on Tumbleweed; add
  * mozilla-fix-issues-with-llvm18.patch</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1713096000">- Mozilla Thunderbird 115.10.0
  https://www.thunderbird.net/en-US/thunderbird/115.10.0/releasenotes/
  MFSA 2024-20 (bsc#1222535)
  * CVE-2024-3852 (bmo#1883542)
    GetBoundName in the JIT returned the wrong object
  * CVE-2024-3854 (bmo#1884552)
    Out-of-bounds-read after mis-optimized switch statement
  * CVE-2024-3857 (bmo#1886683)
    Incorrect JITting of arguments led to use-after-free during
    garbage collection
  * CVE-2024-2609 (bmo#1866100)
    Permission prompt input delay could expire when not in focus
  * CVE-2024-3859 (bmo#1874489)
    Integer-overflow led to out-of-bounds-read in the OpenType sanitizer
  * CVE-2024-3861 (bmo#1883158)
    Potential use-after-free due to AlignedBuffer self-move
  * CVE-2024-3863 (bmo#1885855)
    Download Protections were bypassed by .xrm-ms files on Windows
  * CVE-2024-3302 (bmo#1881183)
    Denial of Service using HTTP/2 CONTINUATION frames
  * CVE-2024-3864 (bmo#1888333)
    Memory safety bug fixed in Firefox 125, Firefox ESR 115.10,
    and Thunderbird 115.10</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1713528000">- Mozilla Thunderbird 115.10.1
  https://www.thunderbird.net/en-US/thunderbird/115.10.1/releasenotes/
  * fixed hangup introduced with 115.10.0 (bmo#1891889)</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1714824000">- Mozilla Thunderbird 115.10.2:
  https://www.thunderbird.net/en-US/thunderbird/115.10.2/releasenotes/
  This release is identical to 115.10.1, other than changing the
  Update channel for self-updating builds to ESR. (bmo#1893271)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1715688000">- Mozilla Thunderbird 115.11.0
  MFSA 2024-23 (bsc#1224056)
  * CVE-2024-4367 (bmo#1893645)
    Arbitrary JavaScript execution in PDF.js
  * CVE-2024-4767 (bmo#1878577)
    IndexedDB files retained in private browsing mode
  * CVE-2024-4768 (bmo#1886082)
    Potential permissions request bypass via clickjacking
  * CVE-2024-4769 (bmo#1886108)
    Cross-origin responses could be distinguished between script
    and non-script content-types
  * CVE-2024-4770 (bmo#1893270)
    Use-after-free could occur when printing to PDF
  * CVE-2024-4777 (bmo#1878199, bmo#1893340)
    Memory safety bugs fixed in Firefox 126, Firefox ESR 115.11,
    and Thunderbird 115.11</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1716984000">- Mozilla Thunderbird 115.11.1
  * Added a short anonymous survey that a small number of users will
    be randomly asked to complete</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1718625600">- Mozilla Thunderbird 115.12.0
  https://www.thunderbird.net/en-US/thunderbird/115.12.0/releasenotes
  MFSA 2024-28 (bsc#1226027)
  * CVE-2024-5702 (bmo#1193389)
    Use-after-free in networking
  * CVE-2024-5688 (bmo#1895086)
    Use-after-free in JavaScript object transplant
  * CVE-2024-5690 (bmo#1883693)
    External protocol handlers leaked by timing attack
  * CVE-2024-5691 (bmo#1888695)
    Sandboxed iframes were able to bypass sandbox restrictions to
    open a new window
  * CVE-2024-5692 (bmo#1891234)
    Bypass of file name restrictions during saving
  * CVE-2024-5693 (bmo#1891319)
    Cross-Origin Image leak via Offscreen Canvas
  * CVE-2024-5696 (bmo#1896555)
    Memory Corruption in Text Fragments
  * CVE-2024-5700 (bmo#1862809, bmo#1889355, bmo#1893388, bmo#1895123)
    Memory safety bugs fixed in Firefox 127, Firefox ESR 115.12,
    and Thunderbird 115.12</changelog>
  <changelog author="Martin Sirringhaus &lt;martin.sirringhaus@suse.com&gt;" date="1719921600">- Mozilla Thunderbird 115.12.2
  * fixed: Annual Thunderbird Beta appeal intended for
    Thunderbird 115.12.0 did not open as expected (bmo#1898084)
- Mozilla Thunderbird 115.12.1
  * 115.12.0 got pulled because of upstream automation process errors
    and Windows installer signing changes.
    No code changes, changelog is the same as 115.12.0 (bsc#1226495)
- Added thunderbird-fix-CVE-2024-34703.patch (bsc#1227239)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1720612800">- Mozilla Thunderbird 115.13.0
  * After starting Thunderbird, the message list position was
    sometimes set to an incorrect position
  MFSA 2024-30 (bsc#1226316)
  * CVE-2024-6600 (bmo#1888340)
    Memory corruption in WebGL API
  * CVE-2024-6601 (bmo#1890748)
    Race condition in permission assignment
  * CVE-2024-6602 (bmo#1895032)
    Memory corruption in NSS
  * CVE-2024-6603 (bmo#1895081)
    Memory corruption in thread creation
  * CVE-2024-6604 (bmo#1748105, bmo#1837550, bmo#1884266)
    Memory safety bugs fixed in Firefox 128, Firefox ESR 115.13,
    and Thunderbird 115.13</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1722600000">- Mozilla Thunderbird 115.14.0
  * When using an external installation of GnuPG, Thunderbird
    occassionally sent/received corrupted messages (bmo#1898832)
  * Users of external GnuPG were unable to decrypt incorrectly
    encoded messages (bmo#1906903)
  MFSA 2024-38 (bsc#1228648)
  * CVE-2024-7519 (bmo#1902307)
    Out of bounds memory access in graphics shared memory handling
  * CVE-2024-7521 (bmo#1904644)
    Incomplete WebAssembly exception handing
  * CVE-2024-7522 (bmo#1906727)
    Out of bounds read in editor component
  * CVE-2024-7525 (bmo#1909298)
    Missing permission check when creating a StreamFilter
  * CVE-2024-7526 (bmo#1910306)
    Uninitialized memory used by WebGL
  * CVE-2024-7527 (bmo#1871303)
    Use-after-free in JavaScript garbage collection
  * CVE-2024-7529 (bmo#1903187)
    Document content could partially obscure security prompts</changelog>
  <changelog author="Manfred Hollstein &lt;manfred.h@gmx.net&gt;" date="1724932800">- Use gcc13 on Tumbleweed and where it is available.
- Don't use gcc14 as sources don't compile.</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1725624000">- Mozilla Thunderbird 115.15.0
  MFSA 2024-44 (bsc#1229821)
  * CVE-2024-8381 (bmo#1912715)
    Type confusion when looking up a property name in a "with"
    block
  * CVE-2024-8382 (bmo#1906744)
    Internal event interfaces were exposed to web content when
    browser EventHandler listener callbacks ran
  * CVE-2024-8384 (bmo#1911288)
    Garbage collection could mis-color cross-compartment objects
    in OOM conditions</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1728561600">- Mozilla Thunderbird 128.3.1
  https://www.thunderbird.net/en-US/thunderbird/128.0esr/releasenotes/
  and following release notes for minor version updates
  MFSA 2024-52  (bsc#1231413)
  * CVE-2024-9680 (bmo#1923344)
    Use-after-free in Animation timeline
  Mozilla Thunderbird 128.3.0
  MFSA 2024-32 (128.0)
  MFSA 2024-37 (128.1)
  MFSA 2024-43 (128.2)
  MFSA 2024-49 (128.3) (bsc#1230979)
  * CVE-2024-9392 (bmo#1899154, bmo#1905843)
    Compromised content process can bypass site isolation
  * CVE-2024-9393 (bmo#1918301)
    Cross-origin access to PDF contents through multipart responses
  * CVE-2024-9394 (bmo#1918874)
    Cross-origin access to JSON contents through multipart responses
  * CVE-2024-8900 (bmo#1872841)
    Clipboard write permission bypass
  * CVE-2024-9396 (bmo#1912471)
    Potential memory corruption may occur when cloning certain objects
  * CVE-2024-9397 (bmo#1916659)
    Potential directory upload bypass via clickjacking
  * CVE-2024-9398 (bmo#1881037)
    External protocol handlers could be enumerated via popups
  * CVE-2024-9399 (bmo#1907726)
    Specially crafted WebTransport requests could lead to denial
    of service
  * CVE-2024-9400 (bmo#1915249)
    Potential memory corruption during JIT compilation
  * CVE-2024-9401 (bmo#1872744, bmo#1897792, bmo#1911317, bmo#1916476)
    Memory safety bugs fixed in Firefox 131, Firefox ESR 115.16,
    Firefox ESR 128.3, Thunderbird 131, and Thunderbird 128.3
  * CVE-2024-9402 (bmo#1872744, bmo#1897792, bmo#1911317, bmo#1913445,
    bmo#1914106, bmo#1914475, bmo#1914963, bmo#1915008, bmo#1916476)
    Memory safety bugs fixed in Firefox 131, Firefox ESR 128.3,
    Thunderbird 131, and Thunderbird 128.3
- removed obsolete patches
  mozilla-bmo1504834-part3.patch
  mozilla-bmo1512162.patch
  mozilla-bmo1775202.patch
  mozilla-bmo531915.patch
  mozilla-fix-aarch64-libopus.patch
  mozilla-fix-issues-with-llvm18.patch
  mozilla-fix-top-level-asm.patch
  mozilla-partial-revert-1768632.patch
  mozilla-rust-disable-future-incompat.patch
  thunderbird-fix-CVE-2024-34703.patch
- new patch thunderbird-silence-no-return.patch
- rebased
  mozilla-bmo1504834-part1.patch
  mozilla-kde.patch
  mozilla-libavcodec58_91.patch
  mozilla-silence-no-return-type.patch</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1729080000">- Mozilla Thunderbird 128.3.2
  bugfix release:
  https://www.thunderbird.net/en-US/thunderbird/128.3.2esr/releasenotes
- bring back mozilla-bmo531915.patch to fix x86</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1729684800">- Mozilla Thunderbird 128.3.3
  * Files left over from failed folder compactions could use up
    disk space (bmo#1878541)
  * Message list returned to selected message after action on
    another message (bmo#1917485)
  * Some faulty messages were downloaded and never stored
    (bmo#1923765)
  * Messages could become corrupted during folder compaction
    (bmo#1923747,bmo#1923541,bmo#1720047)
  * Searching events by Location, Description, or URL failed
    (bmo#1912710)
  * "Remove All Shown" saved passwords deleted all logins if
    filtered without results (bmo#601447)
  * Calendar event updates were not always sent to attendees
    (bmo#1877640)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1730289600">- Mozilla Thunderbird 128.4.0
  * Export Thunderbird account settings to Thunderbird Mobile via QRCode
  Bugfixes:
  * Unable to send an unencrypted response to an OpenPGP encrypted message
  MFSA 2024-58 (bsc#1231879)
  * CVE-2024-10458 (bmo#1921733)
    Permission leak via embed or object elements
  * CVE-2024-10459 (bmo#1919087)
    Use-after-free in layout with accessibility
  * CVE-2024-10460 (bmo#1912537)
    Confusing display of origin for external protocol handler prompt
  * CVE-2024-10461 (bmo#1914521)
    XSS due to Content-Disposition being ignored in
    multipart/x-mixed-replace response
  * CVE-2024-10462 (bmo#1920423)
    Origin of permission prompt could be spoofed by long URL
  * CVE-2024-10463 (bmo#1920800)
    Cross origin video frame leak
  * CVE-2024-10464 (bmo#1913000)
    History interface could have been used to cause a Denial of
    Service condition in the browser
  * CVE-2024-10465 (bmo#1918853)
    Clipboard "paste" button persisted across tabs
  * CVE-2024-10466 (bmo#1924154)
    DOM push subscription message could hang Firefox
  * CVE-2024-10467 (bmo#1829029, bmo#1888538, bmo#1900394, bmo#1904059,
    bmo#1917742, bmo#1919809, bmo#1923706)
    Memory safety bugs fixed in Firefox 132, Thunderbird 132,
    Firefox ESR 128.4, and Thunderbird 128.4</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1730548800">- Mozilla Thunderbird 128.4.1
  * Add the 20 year donation appeal (bmo#192538)</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1730894400">- Mozilla Thunderbird 128.4.2
  * Increased the auto-compaction threshold to reduce the frequency
    of compaction (bmo#1927656)
  * fixed: New profile creation caused console errors (bmo#1912675)
  * fixed: Repair folder could result in older messages showing
    wrong date and time (bmo#1911916)
  * fixed: Recently deleted messages could become undeleted if
    message compaction failed (bmo#1924927)
  * fixed: Visual and UX improvements
    (bmo#1857413,bmo#1922934,bmo#1924437)
  * fixed: Clicking on an HTML button could cause Thunderbird to
    freeze (bmo#1879355)
  * fixed: Messages could not be selected for dragging
    (bmo#1887518)
  * fixed: Could not open attached file in a MIME encrypted
    message (bmo#1924637)
  * fixed: Account creation "Setup Documentation" link was broken
    (bmo#1925493)
  * fixed: Unable to generate QR codes when exporting to mobile
    in some cases (bmo#1928114)
  * fixed: Operating system reauthentication was missing when
    exporting QR codes for mobile (bmo#1928232)
  * fixed: Could not drag all-day events from one day to another
    in week view (bmo#1922944)</changelog>
</package>
<package pkgid="e851a607539749982d726ceb06bb132fb573d325ce1831b1551572c6c71153e700a1ed4e8e7db033ae285256c104093d7e41edada62b18f3ed17f4cd9317f567" name="MozillaThunderbird-debugsource" arch="x86_64">
  <version epoch="0" ver="128.4.3" rel="1.1"/>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1710590400">- Mozilla Thunderbird 115.9.0
  https://www.thunderbird.net/en-US/thunderbird/115.9.0/releasenotes/
  MFSA 2024-14 (bsc#1221327)
  * CVE-2024-0743 (bmo#1867408)
    Crash in NSS TLS method
  * CVE-2024-2605 (bmo#1872920)
    Windows Error Reporter could be used as a Sandbox escape vector
  * CVE-2024-2607 (bmo#1879939)
    JIT code failed to save return registers on Armv7-A
  * CVE-2024-2608 (bmo#1880692)
    Integer overflow could have led to out of bounds write
  * CVE-2024-2616 (bmo#1846197)
    Improve handling of out-of-memory conditions in ICU
  * CVE-2023-5388 (bmo#1780432)
    NSS susceptible to timing attack against RSA decryption
  * CVE-2024-2610 (bmo#1871112)
    Improper handling of html and body tags enabled CSP nonce leakage
  * CVE-2024-2611 (bmo#1876675)
    Clickjacking vulnerability could have led to a user accidentally
    granting permissions
  * CVE-2024-2612 (bmo#1879444)
    Self referencing object could have potentially led to a use-
    after-free
  * CVE-2024-2614 (bmo#1685358, bmo#1861016, bmo#1880405, bmo#1881093)
    Memory safety bugs fixed in Firefox 124, Firefox ESR 115.9,
    and Thunderbird 115.9</changelog>
  <changelog author="Manfred Hollstein &lt;manfred.h@gmx.net&gt;" date="1710936000">- LLVM18 breaks building Thunderbird on Tumbleweed; add
  * mozilla-fix-issues-with-llvm18.patch</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1713096000">- Mozilla Thunderbird 115.10.0
  https://www.thunderbird.net/en-US/thunderbird/115.10.0/releasenotes/
  MFSA 2024-20 (bsc#1222535)
  * CVE-2024-3852 (bmo#1883542)
    GetBoundName in the JIT returned the wrong object
  * CVE-2024-3854 (bmo#1884552)
    Out-of-bounds-read after mis-optimized switch statement
  * CVE-2024-3857 (bmo#1886683)
    Incorrect JITting of arguments led to use-after-free during
    garbage collection
  * CVE-2024-2609 (bmo#1866100)
    Permission prompt input delay could expire when not in focus
  * CVE-2024-3859 (bmo#1874489)
    Integer-overflow led to out-of-bounds-read in the OpenType sanitizer
  * CVE-2024-3861 (bmo#1883158)
    Potential use-after-free due to AlignedBuffer self-move
  * CVE-2024-3863 (bmo#1885855)
    Download Protections were bypassed by .xrm-ms files on Windows
  * CVE-2024-3302 (bmo#1881183)
    Denial of Service using HTTP/2 CONTINUATION frames
  * CVE-2024-3864 (bmo#1888333)
    Memory safety bug fixed in Firefox 125, Firefox ESR 115.10,
    and Thunderbird 115.10</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1713528000">- Mozilla Thunderbird 115.10.1
  https://www.thunderbird.net/en-US/thunderbird/115.10.1/releasenotes/
  * fixed hangup introduced with 115.10.0 (bmo#1891889)</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1714824000">- Mozilla Thunderbird 115.10.2:
  https://www.thunderbird.net/en-US/thunderbird/115.10.2/releasenotes/
  This release is identical to 115.10.1, other than changing the
  Update channel for self-updating builds to ESR. (bmo#1893271)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1715688000">- Mozilla Thunderbird 115.11.0
  MFSA 2024-23 (bsc#1224056)
  * CVE-2024-4367 (bmo#1893645)
    Arbitrary JavaScript execution in PDF.js
  * CVE-2024-4767 (bmo#1878577)
    IndexedDB files retained in private browsing mode
  * CVE-2024-4768 (bmo#1886082)
    Potential permissions request bypass via clickjacking
  * CVE-2024-4769 (bmo#1886108)
    Cross-origin responses could be distinguished between script
    and non-script content-types
  * CVE-2024-4770 (bmo#1893270)
    Use-after-free could occur when printing to PDF
  * CVE-2024-4777 (bmo#1878199, bmo#1893340)
    Memory safety bugs fixed in Firefox 126, Firefox ESR 115.11,
    and Thunderbird 115.11</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1716984000">- Mozilla Thunderbird 115.11.1
  * Added a short anonymous survey that a small number of users will
    be randomly asked to complete</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1718625600">- Mozilla Thunderbird 115.12.0
  https://www.thunderbird.net/en-US/thunderbird/115.12.0/releasenotes
  MFSA 2024-28 (bsc#1226027)
  * CVE-2024-5702 (bmo#1193389)
    Use-after-free in networking
  * CVE-2024-5688 (bmo#1895086)
    Use-after-free in JavaScript object transplant
  * CVE-2024-5690 (bmo#1883693)
    External protocol handlers leaked by timing attack
  * CVE-2024-5691 (bmo#1888695)
    Sandboxed iframes were able to bypass sandbox restrictions to
    open a new window
  * CVE-2024-5692 (bmo#1891234)
    Bypass of file name restrictions during saving
  * CVE-2024-5693 (bmo#1891319)
    Cross-Origin Image leak via Offscreen Canvas
  * CVE-2024-5696 (bmo#1896555)
    Memory Corruption in Text Fragments
  * CVE-2024-5700 (bmo#1862809, bmo#1889355, bmo#1893388, bmo#1895123)
    Memory safety bugs fixed in Firefox 127, Firefox ESR 115.12,
    and Thunderbird 115.12</changelog>
  <changelog author="Martin Sirringhaus &lt;martin.sirringhaus@suse.com&gt;" date="1719921600">- Mozilla Thunderbird 115.12.2
  * fixed: Annual Thunderbird Beta appeal intended for
    Thunderbird 115.12.0 did not open as expected (bmo#1898084)
- Mozilla Thunderbird 115.12.1
  * 115.12.0 got pulled because of upstream automation process errors
    and Windows installer signing changes.
    No code changes, changelog is the same as 115.12.0 (bsc#1226495)
- Added thunderbird-fix-CVE-2024-34703.patch (bsc#1227239)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1720612800">- Mozilla Thunderbird 115.13.0
  * After starting Thunderbird, the message list position was
    sometimes set to an incorrect position
  MFSA 2024-30 (bsc#1226316)
  * CVE-2024-6600 (bmo#1888340)
    Memory corruption in WebGL API
  * CVE-2024-6601 (bmo#1890748)
    Race condition in permission assignment
  * CVE-2024-6602 (bmo#1895032)
    Memory corruption in NSS
  * CVE-2024-6603 (bmo#1895081)
    Memory corruption in thread creation
  * CVE-2024-6604 (bmo#1748105, bmo#1837550, bmo#1884266)
    Memory safety bugs fixed in Firefox 128, Firefox ESR 115.13,
    and Thunderbird 115.13</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1722600000">- Mozilla Thunderbird 115.14.0
  * When using an external installation of GnuPG, Thunderbird
    occassionally sent/received corrupted messages (bmo#1898832)
  * Users of external GnuPG were unable to decrypt incorrectly
    encoded messages (bmo#1906903)
  MFSA 2024-38 (bsc#1228648)
  * CVE-2024-7519 (bmo#1902307)
    Out of bounds memory access in graphics shared memory handling
  * CVE-2024-7521 (bmo#1904644)
    Incomplete WebAssembly exception handing
  * CVE-2024-7522 (bmo#1906727)
    Out of bounds read in editor component
  * CVE-2024-7525 (bmo#1909298)
    Missing permission check when creating a StreamFilter
  * CVE-2024-7526 (bmo#1910306)
    Uninitialized memory used by WebGL
  * CVE-2024-7527 (bmo#1871303)
    Use-after-free in JavaScript garbage collection
  * CVE-2024-7529 (bmo#1903187)
    Document content could partially obscure security prompts</changelog>
  <changelog author="Manfred Hollstein &lt;manfred.h@gmx.net&gt;" date="1724932800">- Use gcc13 on Tumbleweed and where it is available.
- Don't use gcc14 as sources don't compile.</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1725624000">- Mozilla Thunderbird 115.15.0
  MFSA 2024-44 (bsc#1229821)
  * CVE-2024-8381 (bmo#1912715)
    Type confusion when looking up a property name in a "with"
    block
  * CVE-2024-8382 (bmo#1906744)
    Internal event interfaces were exposed to web content when
    browser EventHandler listener callbacks ran
  * CVE-2024-8384 (bmo#1911288)
    Garbage collection could mis-color cross-compartment objects
    in OOM conditions</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1728561600">- Mozilla Thunderbird 128.3.1
  https://www.thunderbird.net/en-US/thunderbird/128.0esr/releasenotes/
  and following release notes for minor version updates
  MFSA 2024-52  (bsc#1231413)
  * CVE-2024-9680 (bmo#1923344)
    Use-after-free in Animation timeline
  Mozilla Thunderbird 128.3.0
  MFSA 2024-32 (128.0)
  MFSA 2024-37 (128.1)
  MFSA 2024-43 (128.2)
  MFSA 2024-49 (128.3) (bsc#1230979)
  * CVE-2024-9392 (bmo#1899154, bmo#1905843)
    Compromised content process can bypass site isolation
  * CVE-2024-9393 (bmo#1918301)
    Cross-origin access to PDF contents through multipart responses
  * CVE-2024-9394 (bmo#1918874)
    Cross-origin access to JSON contents through multipart responses
  * CVE-2024-8900 (bmo#1872841)
    Clipboard write permission bypass
  * CVE-2024-9396 (bmo#1912471)
    Potential memory corruption may occur when cloning certain objects
  * CVE-2024-9397 (bmo#1916659)
    Potential directory upload bypass via clickjacking
  * CVE-2024-9398 (bmo#1881037)
    External protocol handlers could be enumerated via popups
  * CVE-2024-9399 (bmo#1907726)
    Specially crafted WebTransport requests could lead to denial
    of service
  * CVE-2024-9400 (bmo#1915249)
    Potential memory corruption during JIT compilation
  * CVE-2024-9401 (bmo#1872744, bmo#1897792, bmo#1911317, bmo#1916476)
    Memory safety bugs fixed in Firefox 131, Firefox ESR 115.16,
    Firefox ESR 128.3, Thunderbird 131, and Thunderbird 128.3
  * CVE-2024-9402 (bmo#1872744, bmo#1897792, bmo#1911317, bmo#1913445,
    bmo#1914106, bmo#1914475, bmo#1914963, bmo#1915008, bmo#1916476)
    Memory safety bugs fixed in Firefox 131, Firefox ESR 128.3,
    Thunderbird 131, and Thunderbird 128.3
- removed obsolete patches
  mozilla-bmo1504834-part3.patch
  mozilla-bmo1512162.patch
  mozilla-bmo1775202.patch
  mozilla-bmo531915.patch
  mozilla-fix-aarch64-libopus.patch
  mozilla-fix-issues-with-llvm18.patch
  mozilla-fix-top-level-asm.patch
  mozilla-partial-revert-1768632.patch
  mozilla-rust-disable-future-incompat.patch
  thunderbird-fix-CVE-2024-34703.patch
- new patch thunderbird-silence-no-return.patch
- rebased
  mozilla-bmo1504834-part1.patch
  mozilla-kde.patch
  mozilla-libavcodec58_91.patch
  mozilla-silence-no-return-type.patch</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1729080000">- Mozilla Thunderbird 128.3.2
  bugfix release:
  https://www.thunderbird.net/en-US/thunderbird/128.3.2esr/releasenotes
- bring back mozilla-bmo531915.patch to fix x86</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1729684800">- Mozilla Thunderbird 128.3.3
  * Files left over from failed folder compactions could use up
    disk space (bmo#1878541)
  * Message list returned to selected message after action on
    another message (bmo#1917485)
  * Some faulty messages were downloaded and never stored
    (bmo#1923765)
  * Messages could become corrupted during folder compaction
    (bmo#1923747,bmo#1923541,bmo#1720047)
  * Searching events by Location, Description, or URL failed
    (bmo#1912710)
  * "Remove All Shown" saved passwords deleted all logins if
    filtered without results (bmo#601447)
  * Calendar event updates were not always sent to attendees
    (bmo#1877640)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1730289600">- Mozilla Thunderbird 128.4.0
  * Export Thunderbird account settings to Thunderbird Mobile via QRCode
  Bugfixes:
  * Unable to send an unencrypted response to an OpenPGP encrypted message
  MFSA 2024-58 (bsc#1231879)
  * CVE-2024-10458 (bmo#1921733)
    Permission leak via embed or object elements
  * CVE-2024-10459 (bmo#1919087)
    Use-after-free in layout with accessibility
  * CVE-2024-10460 (bmo#1912537)
    Confusing display of origin for external protocol handler prompt
  * CVE-2024-10461 (bmo#1914521)
    XSS due to Content-Disposition being ignored in
    multipart/x-mixed-replace response
  * CVE-2024-10462 (bmo#1920423)
    Origin of permission prompt could be spoofed by long URL
  * CVE-2024-10463 (bmo#1920800)
    Cross origin video frame leak
  * CVE-2024-10464 (bmo#1913000)
    History interface could have been used to cause a Denial of
    Service condition in the browser
  * CVE-2024-10465 (bmo#1918853)
    Clipboard "paste" button persisted across tabs
  * CVE-2024-10466 (bmo#1924154)
    DOM push subscription message could hang Firefox
  * CVE-2024-10467 (bmo#1829029, bmo#1888538, bmo#1900394, bmo#1904059,
    bmo#1917742, bmo#1919809, bmo#1923706)
    Memory safety bugs fixed in Firefox 132, Thunderbird 132,
    Firefox ESR 128.4, and Thunderbird 128.4</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1730548800">- Mozilla Thunderbird 128.4.1
  * Add the 20 year donation appeal (bmo#192538)</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1730894400">- Mozilla Thunderbird 128.4.2
  * Increased the auto-compaction threshold to reduce the frequency
    of compaction (bmo#1927656)
  * fixed: New profile creation caused console errors (bmo#1912675)
  * fixed: Repair folder could result in older messages showing
    wrong date and time (bmo#1911916)
  * fixed: Recently deleted messages could become undeleted if
    message compaction failed (bmo#1924927)
  * fixed: Visual and UX improvements
    (bmo#1857413,bmo#1922934,bmo#1924437)
  * fixed: Clicking on an HTML button could cause Thunderbird to
    freeze (bmo#1879355)
  * fixed: Messages could not be selected for dragging
    (bmo#1887518)
  * fixed: Could not open attached file in a MIME encrypted
    message (bmo#1924637)
  * fixed: Account creation "Setup Documentation" link was broken
    (bmo#1925493)
  * fixed: Unable to generate QR codes when exporting to mobile
    in some cases (bmo#1928114)
  * fixed: Operating system reauthentication was missing when
    exporting QR codes for mobile (bmo#1928232)
  * fixed: Could not drag all-day events from one day to another
    in week view (bmo#1922944)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1731153600">- Mozilla Thunderbird 128.4.3
  Fixes:
  * Folder corruption could cause Thunderbird to freeze and become unusable
  * Message corruption could be propagated when reading mbox
  * Folder compaction was not abandoned on shutdown
  * Folder compaction did not clean up on failure
  * Collapsed NNTP thread incorrectly indicated there were unread messages
  * Navigating to next unread message did not wait for all messages
    to be loaded
  * Applying column view to folder and children could break if folder
    error occurred
  * Remote content notifications were broken with encrypted messages
  * Updating criteria of a saved search resulted in poor search performance
  * Drop-downs may not work in some places
  MFSA 2024-61
  * CVE-2024-11159 (bmo#1925929)
    Potential disclosure of plaintext in OpenPGP encrypted message
- remove kmozillahelper support (boo#1226112)
  * removed mozilla-kde.patch
  * requires xdg-desktop-portal instead</changelog>
</package>
<package pkgid="a8379102d21430da04a8d87c5cde7c57bd9856e26c4fd46912bb673a2368bde4c6b7307bd8a1e4eef28e9f4d65bfb5e85d6213976989d5af50cae19473a4cd5a" name="MozillaThunderbird-debugsource" arch="x86_64">
  <version epoch="0" ver="128.4.4" rel="1.1"/>
  <changelog author="Manfred Hollstein &lt;manfred.h@gmx.net&gt;" date="1710936000">- LLVM18 breaks building Thunderbird on Tumbleweed; add
  * mozilla-fix-issues-with-llvm18.patch</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1713096000">- Mozilla Thunderbird 115.10.0
  https://www.thunderbird.net/en-US/thunderbird/115.10.0/releasenotes/
  MFSA 2024-20 (bsc#1222535)
  * CVE-2024-3852 (bmo#1883542)
    GetBoundName in the JIT returned the wrong object
  * CVE-2024-3854 (bmo#1884552)
    Out-of-bounds-read after mis-optimized switch statement
  * CVE-2024-3857 (bmo#1886683)
    Incorrect JITting of arguments led to use-after-free during
    garbage collection
  * CVE-2024-2609 (bmo#1866100)
    Permission prompt input delay could expire when not in focus
  * CVE-2024-3859 (bmo#1874489)
    Integer-overflow led to out-of-bounds-read in the OpenType sanitizer
  * CVE-2024-3861 (bmo#1883158)
    Potential use-after-free due to AlignedBuffer self-move
  * CVE-2024-3863 (bmo#1885855)
    Download Protections were bypassed by .xrm-ms files on Windows
  * CVE-2024-3302 (bmo#1881183)
    Denial of Service using HTTP/2 CONTINUATION frames
  * CVE-2024-3864 (bmo#1888333)
    Memory safety bug fixed in Firefox 125, Firefox ESR 115.10,
    and Thunderbird 115.10</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1713528000">- Mozilla Thunderbird 115.10.1
  https://www.thunderbird.net/en-US/thunderbird/115.10.1/releasenotes/
  * fixed hangup introduced with 115.10.0 (bmo#1891889)</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1714824000">- Mozilla Thunderbird 115.10.2:
  https://www.thunderbird.net/en-US/thunderbird/115.10.2/releasenotes/
  This release is identical to 115.10.1, other than changing the
  Update channel for self-updating builds to ESR. (bmo#1893271)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1715688000">- Mozilla Thunderbird 115.11.0
  MFSA 2024-23 (bsc#1224056)
  * CVE-2024-4367 (bmo#1893645)
    Arbitrary JavaScript execution in PDF.js
  * CVE-2024-4767 (bmo#1878577)
    IndexedDB files retained in private browsing mode
  * CVE-2024-4768 (bmo#1886082)
    Potential permissions request bypass via clickjacking
  * CVE-2024-4769 (bmo#1886108)
    Cross-origin responses could be distinguished between script
    and non-script content-types
  * CVE-2024-4770 (bmo#1893270)
    Use-after-free could occur when printing to PDF
  * CVE-2024-4777 (bmo#1878199, bmo#1893340)
    Memory safety bugs fixed in Firefox 126, Firefox ESR 115.11,
    and Thunderbird 115.11</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1716984000">- Mozilla Thunderbird 115.11.1
  * Added a short anonymous survey that a small number of users will
    be randomly asked to complete</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1718625600">- Mozilla Thunderbird 115.12.0
  https://www.thunderbird.net/en-US/thunderbird/115.12.0/releasenotes
  MFSA 2024-28 (bsc#1226027)
  * CVE-2024-5702 (bmo#1193389)
    Use-after-free in networking
  * CVE-2024-5688 (bmo#1895086)
    Use-after-free in JavaScript object transplant
  * CVE-2024-5690 (bmo#1883693)
    External protocol handlers leaked by timing attack
  * CVE-2024-5691 (bmo#1888695)
    Sandboxed iframes were able to bypass sandbox restrictions to
    open a new window
  * CVE-2024-5692 (bmo#1891234)
    Bypass of file name restrictions during saving
  * CVE-2024-5693 (bmo#1891319)
    Cross-Origin Image leak via Offscreen Canvas
  * CVE-2024-5696 (bmo#1896555)
    Memory Corruption in Text Fragments
  * CVE-2024-5700 (bmo#1862809, bmo#1889355, bmo#1893388, bmo#1895123)
    Memory safety bugs fixed in Firefox 127, Firefox ESR 115.12,
    and Thunderbird 115.12</changelog>
  <changelog author="Martin Sirringhaus &lt;martin.sirringhaus@suse.com&gt;" date="1719921600">- Mozilla Thunderbird 115.12.2
  * fixed: Annual Thunderbird Beta appeal intended for
    Thunderbird 115.12.0 did not open as expected (bmo#1898084)
- Mozilla Thunderbird 115.12.1
  * 115.12.0 got pulled because of upstream automation process errors
    and Windows installer signing changes.
    No code changes, changelog is the same as 115.12.0 (bsc#1226495)
- Added thunderbird-fix-CVE-2024-34703.patch (bsc#1227239)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1720612800">- Mozilla Thunderbird 115.13.0
  * After starting Thunderbird, the message list position was
    sometimes set to an incorrect position
  MFSA 2024-30 (bsc#1226316)
  * CVE-2024-6600 (bmo#1888340)
    Memory corruption in WebGL API
  * CVE-2024-6601 (bmo#1890748)
    Race condition in permission assignment
  * CVE-2024-6602 (bmo#1895032)
    Memory corruption in NSS
  * CVE-2024-6603 (bmo#1895081)
    Memory corruption in thread creation
  * CVE-2024-6604 (bmo#1748105, bmo#1837550, bmo#1884266)
    Memory safety bugs fixed in Firefox 128, Firefox ESR 115.13,
    and Thunderbird 115.13</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1722600000">- Mozilla Thunderbird 115.14.0
  * When using an external installation of GnuPG, Thunderbird
    occassionally sent/received corrupted messages (bmo#1898832)
  * Users of external GnuPG were unable to decrypt incorrectly
    encoded messages (bmo#1906903)
  MFSA 2024-38 (bsc#1228648)
  * CVE-2024-7519 (bmo#1902307)
    Out of bounds memory access in graphics shared memory handling
  * CVE-2024-7521 (bmo#1904644)
    Incomplete WebAssembly exception handing
  * CVE-2024-7522 (bmo#1906727)
    Out of bounds read in editor component
  * CVE-2024-7525 (bmo#1909298)
    Missing permission check when creating a StreamFilter
  * CVE-2024-7526 (bmo#1910306)
    Uninitialized memory used by WebGL
  * CVE-2024-7527 (bmo#1871303)
    Use-after-free in JavaScript garbage collection
  * CVE-2024-7529 (bmo#1903187)
    Document content could partially obscure security prompts</changelog>
  <changelog author="Manfred Hollstein &lt;manfred.h@gmx.net&gt;" date="1724932800">- Use gcc13 on Tumbleweed and where it is available.
- Don't use gcc14 as sources don't compile.</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1725624000">- Mozilla Thunderbird 115.15.0
  MFSA 2024-44 (bsc#1229821)
  * CVE-2024-8381 (bmo#1912715)
    Type confusion when looking up a property name in a "with"
    block
  * CVE-2024-8382 (bmo#1906744)
    Internal event interfaces were exposed to web content when
    browser EventHandler listener callbacks ran
  * CVE-2024-8384 (bmo#1911288)
    Garbage collection could mis-color cross-compartment objects
    in OOM conditions</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1728561600">- Mozilla Thunderbird 128.3.1
  https://www.thunderbird.net/en-US/thunderbird/128.0esr/releasenotes/
  and following release notes for minor version updates
  MFSA 2024-52  (bsc#1231413)
  * CVE-2024-9680 (bmo#1923344)
    Use-after-free in Animation timeline
  Mozilla Thunderbird 128.3.0
  MFSA 2024-32 (128.0)
  MFSA 2024-37 (128.1)
  MFSA 2024-43 (128.2)
  MFSA 2024-49 (128.3) (bsc#1230979)
  * CVE-2024-9392 (bmo#1899154, bmo#1905843)
    Compromised content process can bypass site isolation
  * CVE-2024-9393 (bmo#1918301)
    Cross-origin access to PDF contents through multipart responses
  * CVE-2024-9394 (bmo#1918874)
    Cross-origin access to JSON contents through multipart responses
  * CVE-2024-8900 (bmo#1872841)
    Clipboard write permission bypass
  * CVE-2024-9396 (bmo#1912471)
    Potential memory corruption may occur when cloning certain objects
  * CVE-2024-9397 (bmo#1916659)
    Potential directory upload bypass via clickjacking
  * CVE-2024-9398 (bmo#1881037)
    External protocol handlers could be enumerated via popups
  * CVE-2024-9399 (bmo#1907726)
    Specially crafted WebTransport requests could lead to denial
    of service
  * CVE-2024-9400 (bmo#1915249)
    Potential memory corruption during JIT compilation
  * CVE-2024-9401 (bmo#1872744, bmo#1897792, bmo#1911317, bmo#1916476)
    Memory safety bugs fixed in Firefox 131, Firefox ESR 115.16,
    Firefox ESR 128.3, Thunderbird 131, and Thunderbird 128.3
  * CVE-2024-9402 (bmo#1872744, bmo#1897792, bmo#1911317, bmo#1913445,
    bmo#1914106, bmo#1914475, bmo#1914963, bmo#1915008, bmo#1916476)
    Memory safety bugs fixed in Firefox 131, Firefox ESR 128.3,
    Thunderbird 131, and Thunderbird 128.3
- removed obsolete patches
  mozilla-bmo1504834-part3.patch
  mozilla-bmo1512162.patch
  mozilla-bmo1775202.patch
  mozilla-bmo531915.patch
  mozilla-fix-aarch64-libopus.patch
  mozilla-fix-issues-with-llvm18.patch
  mozilla-fix-top-level-asm.patch
  mozilla-partial-revert-1768632.patch
  mozilla-rust-disable-future-incompat.patch
  thunderbird-fix-CVE-2024-34703.patch
- new patch thunderbird-silence-no-return.patch
- rebased
  mozilla-bmo1504834-part1.patch
  mozilla-kde.patch
  mozilla-libavcodec58_91.patch
  mozilla-silence-no-return-type.patch</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1729080000">- Mozilla Thunderbird 128.3.2
  bugfix release:
  https://www.thunderbird.net/en-US/thunderbird/128.3.2esr/releasenotes
- bring back mozilla-bmo531915.patch to fix x86</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1729684800">- Mozilla Thunderbird 128.3.3
  * Files left over from failed folder compactions could use up
    disk space (bmo#1878541)
  * Message list returned to selected message after action on
    another message (bmo#1917485)
  * Some faulty messages were downloaded and never stored
    (bmo#1923765)
  * Messages could become corrupted during folder compaction
    (bmo#1923747,bmo#1923541,bmo#1720047)
  * Searching events by Location, Description, or URL failed
    (bmo#1912710)
  * "Remove All Shown" saved passwords deleted all logins if
    filtered without results (bmo#601447)
  * Calendar event updates were not always sent to attendees
    (bmo#1877640)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1730289600">- Mozilla Thunderbird 128.4.0
  * Export Thunderbird account settings to Thunderbird Mobile via QRCode
  Bugfixes:
  * Unable to send an unencrypted response to an OpenPGP encrypted message
  MFSA 2024-58 (bsc#1231879)
  * CVE-2024-10458 (bmo#1921733)
    Permission leak via embed or object elements
  * CVE-2024-10459 (bmo#1919087)
    Use-after-free in layout with accessibility
  * CVE-2024-10460 (bmo#1912537)
    Confusing display of origin for external protocol handler prompt
  * CVE-2024-10461 (bmo#1914521)
    XSS due to Content-Disposition being ignored in
    multipart/x-mixed-replace response
  * CVE-2024-10462 (bmo#1920423)
    Origin of permission prompt could be spoofed by long URL
  * CVE-2024-10463 (bmo#1920800)
    Cross origin video frame leak
  * CVE-2024-10464 (bmo#1913000)
    History interface could have been used to cause a Denial of
    Service condition in the browser
  * CVE-2024-10465 (bmo#1918853)
    Clipboard "paste" button persisted across tabs
  * CVE-2024-10466 (bmo#1924154)
    DOM push subscription message could hang Firefox
  * CVE-2024-10467 (bmo#1829029, bmo#1888538, bmo#1900394, bmo#1904059,
    bmo#1917742, bmo#1919809, bmo#1923706)
    Memory safety bugs fixed in Firefox 132, Thunderbird 132,
    Firefox ESR 128.4, and Thunderbird 128.4</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1730548800">- Mozilla Thunderbird 128.4.1
  * Add the 20 year donation appeal (bmo#192538)</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1730894400">- Mozilla Thunderbird 128.4.2
  * Increased the auto-compaction threshold to reduce the frequency
    of compaction (bmo#1927656)
  * fixed: New profile creation caused console errors (bmo#1912675)
  * fixed: Repair folder could result in older messages showing
    wrong date and time (bmo#1911916)
  * fixed: Recently deleted messages could become undeleted if
    message compaction failed (bmo#1924927)
  * fixed: Visual and UX improvements
    (bmo#1857413,bmo#1922934,bmo#1924437)
  * fixed: Clicking on an HTML button could cause Thunderbird to
    freeze (bmo#1879355)
  * fixed: Messages could not be selected for dragging
    (bmo#1887518)
  * fixed: Could not open attached file in a MIME encrypted
    message (bmo#1924637)
  * fixed: Account creation "Setup Documentation" link was broken
    (bmo#1925493)
  * fixed: Unable to generate QR codes when exporting to mobile
    in some cases (bmo#1928114)
  * fixed: Operating system reauthentication was missing when
    exporting QR codes for mobile (bmo#1928232)
  * fixed: Could not drag all-day events from one day to another
    in week view (bmo#1922944)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1731153600">- Mozilla Thunderbird 128.4.3
  Fixes:
  * Folder corruption could cause Thunderbird to freeze and become unusable
  * Message corruption could be propagated when reading mbox
  * Folder compaction was not abandoned on shutdown
  * Folder compaction did not clean up on failure
  * Collapsed NNTP thread incorrectly indicated there were unread messages
  * Navigating to next unread message did not wait for all messages
    to be loaded
  * Applying column view to folder and children could break if folder
    error occurred
  * Remote content notifications were broken with encrypted messages
  * Updating criteria of a saved search resulted in poor search performance
  * Drop-downs may not work in some places
  MFSA 2024-61
  * CVE-2024-11159 (bmo#1925929)
    Potential disclosure of plaintext in OpenPGP encrypted message
- remove kmozillahelper support (boo#1226112)
  * removed mozilla-kde.patch
  * requires xdg-desktop-portal instead</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1732104000">- Mozilla Thunderbird 128.4.4
  * QR codes were not scannable by Android app when using most
    high-contrast themes
  * Primary password prompt cancellation during mobile export was
    confusing
- revert using xdg-desktop-portal as some desktops have limited
  support</changelog>
</package>
<package pkgid="d5cea99f4d763a01399c1dda4763fb9c4ff63b87e5420244f6f0f434091fb7e199590b3ee0d4826102219b14b92ba73a299e2d7db0a1f1b3f5414133ccf10cca" name="MozillaThunderbird-debugsource" arch="x86_64">
  <version epoch="0" ver="128.5.0" rel="1.0.8.1.sr20241103"/>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1713096000">- Mozilla Thunderbird 115.10.0
  https://www.thunderbird.net/en-US/thunderbird/115.10.0/releasenotes/
  MFSA 2024-20 (bsc#1222535)
  * CVE-2024-3852 (bmo#1883542)
    GetBoundName in the JIT returned the wrong object
  * CVE-2024-3854 (bmo#1884552)
    Out-of-bounds-read after mis-optimized switch statement
  * CVE-2024-3857 (bmo#1886683)
    Incorrect JITting of arguments led to use-after-free during
    garbage collection
  * CVE-2024-2609 (bmo#1866100)
    Permission prompt input delay could expire when not in focus
  * CVE-2024-3859 (bmo#1874489)
    Integer-overflow led to out-of-bounds-read in the OpenType sanitizer
  * CVE-2024-3861 (bmo#1883158)
    Potential use-after-free due to AlignedBuffer self-move
  * CVE-2024-3863 (bmo#1885855)
    Download Protections were bypassed by .xrm-ms files on Windows
  * CVE-2024-3302 (bmo#1881183)
    Denial of Service using HTTP/2 CONTINUATION frames
  * CVE-2024-3864 (bmo#1888333)
    Memory safety bug fixed in Firefox 125, Firefox ESR 115.10,
    and Thunderbird 115.10</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1713528000">- Mozilla Thunderbird 115.10.1
  https://www.thunderbird.net/en-US/thunderbird/115.10.1/releasenotes/
  * fixed hangup introduced with 115.10.0 (bmo#1891889)</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1714824000">- Mozilla Thunderbird 115.10.2:
  https://www.thunderbird.net/en-US/thunderbird/115.10.2/releasenotes/
  This release is identical to 115.10.1, other than changing the
  Update channel for self-updating builds to ESR. (bmo#1893271)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1715688000">- Mozilla Thunderbird 115.11.0
  MFSA 2024-23 (bsc#1224056)
  * CVE-2024-4367 (bmo#1893645)
    Arbitrary JavaScript execution in PDF.js
  * CVE-2024-4767 (bmo#1878577)
    IndexedDB files retained in private browsing mode
  * CVE-2024-4768 (bmo#1886082)
    Potential permissions request bypass via clickjacking
  * CVE-2024-4769 (bmo#1886108)
    Cross-origin responses could be distinguished between script
    and non-script content-types
  * CVE-2024-4770 (bmo#1893270)
    Use-after-free could occur when printing to PDF
  * CVE-2024-4777 (bmo#1878199, bmo#1893340)
    Memory safety bugs fixed in Firefox 126, Firefox ESR 115.11,
    and Thunderbird 115.11</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1716984000">- Mozilla Thunderbird 115.11.1
  * Added a short anonymous survey that a small number of users will
    be randomly asked to complete</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1718625600">- Mozilla Thunderbird 115.12.0
  https://www.thunderbird.net/en-US/thunderbird/115.12.0/releasenotes
  MFSA 2024-28 (bsc#1226027)
  * CVE-2024-5702 (bmo#1193389)
    Use-after-free in networking
  * CVE-2024-5688 (bmo#1895086)
    Use-after-free in JavaScript object transplant
  * CVE-2024-5690 (bmo#1883693)
    External protocol handlers leaked by timing attack
  * CVE-2024-5691 (bmo#1888695)
    Sandboxed iframes were able to bypass sandbox restrictions to
    open a new window
  * CVE-2024-5692 (bmo#1891234)
    Bypass of file name restrictions during saving
  * CVE-2024-5693 (bmo#1891319)
    Cross-Origin Image leak via Offscreen Canvas
  * CVE-2024-5696 (bmo#1896555)
    Memory Corruption in Text Fragments
  * CVE-2024-5700 (bmo#1862809, bmo#1889355, bmo#1893388, bmo#1895123)
    Memory safety bugs fixed in Firefox 127, Firefox ESR 115.12,
    and Thunderbird 115.12</changelog>
  <changelog author="Martin Sirringhaus &lt;martin.sirringhaus@suse.com&gt;" date="1719921600">- Mozilla Thunderbird 115.12.2
  * fixed: Annual Thunderbird Beta appeal intended for
    Thunderbird 115.12.0 did not open as expected (bmo#1898084)
- Mozilla Thunderbird 115.12.1
  * 115.12.0 got pulled because of upstream automation process errors
    and Windows installer signing changes.
    No code changes, changelog is the same as 115.12.0 (bsc#1226495)
- Added thunderbird-fix-CVE-2024-34703.patch (bsc#1227239)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1720612800">- Mozilla Thunderbird 115.13.0
  * After starting Thunderbird, the message list position was
    sometimes set to an incorrect position
  MFSA 2024-30 (bsc#1226316)
  * CVE-2024-6600 (bmo#1888340)
    Memory corruption in WebGL API
  * CVE-2024-6601 (bmo#1890748)
    Race condition in permission assignment
  * CVE-2024-6602 (bmo#1895032)
    Memory corruption in NSS
  * CVE-2024-6603 (bmo#1895081)
    Memory corruption in thread creation
  * CVE-2024-6604 (bmo#1748105, bmo#1837550, bmo#1884266)
    Memory safety bugs fixed in Firefox 128, Firefox ESR 115.13,
    and Thunderbird 115.13</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1722600000">- Mozilla Thunderbird 115.14.0
  * When using an external installation of GnuPG, Thunderbird
    occassionally sent/received corrupted messages (bmo#1898832)
  * Users of external GnuPG were unable to decrypt incorrectly
    encoded messages (bmo#1906903)
  MFSA 2024-38 (bsc#1228648)
  * CVE-2024-7519 (bmo#1902307)
    Out of bounds memory access in graphics shared memory handling
  * CVE-2024-7521 (bmo#1904644)
    Incomplete WebAssembly exception handing
  * CVE-2024-7522 (bmo#1906727)
    Out of bounds read in editor component
  * CVE-2024-7525 (bmo#1909298)
    Missing permission check when creating a StreamFilter
  * CVE-2024-7526 (bmo#1910306)
    Uninitialized memory used by WebGL
  * CVE-2024-7527 (bmo#1871303)
    Use-after-free in JavaScript garbage collection
  * CVE-2024-7529 (bmo#1903187)
    Document content could partially obscure security prompts</changelog>
  <changelog author="Manfred Hollstein &lt;manfred.h@gmx.net&gt;" date="1724932800">- Use gcc13 on Tumbleweed and where it is available.
- Don't use gcc14 as sources don't compile.</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1725624000">- Mozilla Thunderbird 115.15.0
  MFSA 2024-44 (bsc#1229821)
  * CVE-2024-8381 (bmo#1912715)
    Type confusion when looking up a property name in a "with"
    block
  * CVE-2024-8382 (bmo#1906744)
    Internal event interfaces were exposed to web content when
    browser EventHandler listener callbacks ran
  * CVE-2024-8384 (bmo#1911288)
    Garbage collection could mis-color cross-compartment objects
    in OOM conditions</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1728561600">- Mozilla Thunderbird 128.3.1
  https://www.thunderbird.net/en-US/thunderbird/128.0esr/releasenotes/
  and following release notes for minor version updates
  MFSA 2024-52  (bsc#1231413)
  * CVE-2024-9680 (bmo#1923344)
    Use-after-free in Animation timeline
  Mozilla Thunderbird 128.3.0
  MFSA 2024-32 (128.0)
  MFSA 2024-37 (128.1)
  MFSA 2024-43 (128.2)
  MFSA 2024-49 (128.3) (bsc#1230979)
  * CVE-2024-9392 (bmo#1899154, bmo#1905843)
    Compromised content process can bypass site isolation
  * CVE-2024-9393 (bmo#1918301)
    Cross-origin access to PDF contents through multipart responses
  * CVE-2024-9394 (bmo#1918874)
    Cross-origin access to JSON contents through multipart responses
  * CVE-2024-8900 (bmo#1872841)
    Clipboard write permission bypass
  * CVE-2024-9396 (bmo#1912471)
    Potential memory corruption may occur when cloning certain objects
  * CVE-2024-9397 (bmo#1916659)
    Potential directory upload bypass via clickjacking
  * CVE-2024-9398 (bmo#1881037)
    External protocol handlers could be enumerated via popups
  * CVE-2024-9399 (bmo#1907726)
    Specially crafted WebTransport requests could lead to denial
    of service
  * CVE-2024-9400 (bmo#1915249)
    Potential memory corruption during JIT compilation
  * CVE-2024-9401 (bmo#1872744, bmo#1897792, bmo#1911317, bmo#1916476)
    Memory safety bugs fixed in Firefox 131, Firefox ESR 115.16,
    Firefox ESR 128.3, Thunderbird 131, and Thunderbird 128.3
  * CVE-2024-9402 (bmo#1872744, bmo#1897792, bmo#1911317, bmo#1913445,
    bmo#1914106, bmo#1914475, bmo#1914963, bmo#1915008, bmo#1916476)
    Memory safety bugs fixed in Firefox 131, Firefox ESR 128.3,
    Thunderbird 131, and Thunderbird 128.3
- removed obsolete patches
  mozilla-bmo1504834-part3.patch
  mozilla-bmo1512162.patch
  mozilla-bmo1775202.patch
  mozilla-bmo531915.patch
  mozilla-fix-aarch64-libopus.patch
  mozilla-fix-issues-with-llvm18.patch
  mozilla-fix-top-level-asm.patch
  mozilla-partial-revert-1768632.patch
  mozilla-rust-disable-future-incompat.patch
  thunderbird-fix-CVE-2024-34703.patch
- new patch thunderbird-silence-no-return.patch
- rebased
  mozilla-bmo1504834-part1.patch
  mozilla-kde.patch
  mozilla-libavcodec58_91.patch
  mozilla-silence-no-return-type.patch</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1729080000">- Mozilla Thunderbird 128.3.2
  bugfix release:
  https://www.thunderbird.net/en-US/thunderbird/128.3.2esr/releasenotes
- bring back mozilla-bmo531915.patch to fix x86</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1729684800">- Mozilla Thunderbird 128.3.3
  * Files left over from failed folder compactions could use up
    disk space (bmo#1878541)
  * Message list returned to selected message after action on
    another message (bmo#1917485)
  * Some faulty messages were downloaded and never stored
    (bmo#1923765)
  * Messages could become corrupted during folder compaction
    (bmo#1923747,bmo#1923541,bmo#1720047)
  * Searching events by Location, Description, or URL failed
    (bmo#1912710)
  * "Remove All Shown" saved passwords deleted all logins if
    filtered without results (bmo#601447)
  * Calendar event updates were not always sent to attendees
    (bmo#1877640)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1730289600">- Mozilla Thunderbird 128.4.0
  * Export Thunderbird account settings to Thunderbird Mobile via QRCode
  Bugfixes:
  * Unable to send an unencrypted response to an OpenPGP encrypted message
  MFSA 2024-58 (bsc#1231879)
  * CVE-2024-10458 (bmo#1921733)
    Permission leak via embed or object elements
  * CVE-2024-10459 (bmo#1919087)
    Use-after-free in layout with accessibility
  * CVE-2024-10460 (bmo#1912537)
    Confusing display of origin for external protocol handler prompt
  * CVE-2024-10461 (bmo#1914521)
    XSS due to Content-Disposition being ignored in
    multipart/x-mixed-replace response
  * CVE-2024-10462 (bmo#1920423)
    Origin of permission prompt could be spoofed by long URL
  * CVE-2024-10463 (bmo#1920800)
    Cross origin video frame leak
  * CVE-2024-10464 (bmo#1913000)
    History interface could have been used to cause a Denial of
    Service condition in the browser
  * CVE-2024-10465 (bmo#1918853)
    Clipboard "paste" button persisted across tabs
  * CVE-2024-10466 (bmo#1924154)
    DOM push subscription message could hang Firefox
  * CVE-2024-10467 (bmo#1829029, bmo#1888538, bmo#1900394, bmo#1904059,
    bmo#1917742, bmo#1919809, bmo#1923706)
    Memory safety bugs fixed in Firefox 132, Thunderbird 132,
    Firefox ESR 128.4, and Thunderbird 128.4</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1730548800">- Mozilla Thunderbird 128.4.1
  * Add the 20 year donation appeal (bmo#192538)</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1730894400">- Mozilla Thunderbird 128.4.2
  * Increased the auto-compaction threshold to reduce the frequency
    of compaction (bmo#1927656)
  * fixed: New profile creation caused console errors (bmo#1912675)
  * fixed: Repair folder could result in older messages showing
    wrong date and time (bmo#1911916)
  * fixed: Recently deleted messages could become undeleted if
    message compaction failed (bmo#1924927)
  * fixed: Visual and UX improvements
    (bmo#1857413,bmo#1922934,bmo#1924437)
  * fixed: Clicking on an HTML button could cause Thunderbird to
    freeze (bmo#1879355)
  * fixed: Messages could not be selected for dragging
    (bmo#1887518)
  * fixed: Could not open attached file in a MIME encrypted
    message (bmo#1924637)
  * fixed: Account creation "Setup Documentation" link was broken
    (bmo#1925493)
  * fixed: Unable to generate QR codes when exporting to mobile
    in some cases (bmo#1928114)
  * fixed: Operating system reauthentication was missing when
    exporting QR codes for mobile (bmo#1928232)
  * fixed: Could not drag all-day events from one day to another
    in week view (bmo#1922944)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1731153600">- Mozilla Thunderbird 128.4.3
  Fixes:
  * Folder corruption could cause Thunderbird to freeze and become unusable
  * Message corruption could be propagated when reading mbox
  * Folder compaction was not abandoned on shutdown
  * Folder compaction did not clean up on failure
  * Collapsed NNTP thread incorrectly indicated there were unread messages
  * Navigating to next unread message did not wait for all messages
    to be loaded
  * Applying column view to folder and children could break if folder
    error occurred
  * Remote content notifications were broken with encrypted messages
  * Updating criteria of a saved search resulted in poor search performance
  * Drop-downs may not work in some places
  MFSA 2024-61
  * CVE-2024-11159 (bmo#1925929)
    Potential disclosure of plaintext in OpenPGP encrypted message
- remove kmozillahelper support (boo#1226112)
  * removed mozilla-kde.patch
  * requires xdg-desktop-portal instead</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1732104000">- Mozilla Thunderbird 128.4.4
  * QR codes were not scannable by Android app when using most
    high-contrast themes
  * Primary password prompt cancellation during mobile export was
    confusing
- revert using xdg-desktop-portal as some desktops have limited
  support</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1732622400">- Mozilla Thunderbird 128.5.0
  * IMAP could crash when reading cached messages
  * Enabling "Show Folder Size" on Maildir profile could render
    Thunderbird unusable
  * Messages corrupted by folder compaction were only fixed by user
    intervention
  * Reading a message from past the end of an mbox file did not
    cause an error
  * View -&gt; Folders had duplicate F access keys
  * Add-ons adding columns to the message list could fail and cause
    display issue
  * "Empty trash on exit" and "Expunge inbox on exit" did not
    always work
  * Selecting a display option in View -&gt; Tasks did not apply in
    the Task interface
  MFSA 2024-68 (bsc#1233695)
  * CVE-2024-11691 (bmo#1914707, bmo#1924184)
    Memory corruption in Apple GPU drivers
  * CVE-2024-11692 (bmo#1909535)
    Select list elements could be shown over another site
  * CVE-2024-11693 (bmo#1921458)
    Download Protections were bypassed by .library-ms files on Windows
  * CVE-2024-11694 (bmo#1924167)
    CSP Bypass and XSS Exposure via Web Compatibility Shims
  * CVE-2024-11695 (bmo#1925496)
    URL Bar Spoofing via Manipulated Punycode and Whitespace Characters
  * CVE-2024-11696 (bmo#1929600)
    Unhandled Exception in Add-on Signature Verification
  * CVE-2024-11697 (bmo#1842187)
    Improper Keypress Handling in Executable File Confirmation Dialog
  * CVE-2024-11698 (bmo#1916152)
    Fullscreen Lock-Up When Modal Dialog Interrupts Transition on macOS
  * CVE-2024-11699 (bmo#1880582, bmo#1929911)
    Memory safety bugs fixed in Firefox 133, Thunderbird 133,
    Firefox ESR 128.5, and Thunderbird 128.5
- appid is thunderbird-esr currently; use the matching desktop
  file name (boo#1233650)</changelog>
</package>
<package pkgid="227915978350061798c34011ad7c759ce30cf9b96dfa2ca748fe52e52af10c23773e1078eeb0fbeb501e66645045bfeeb7ea968c45a6b7fcdcbdc93c114b323f" name="MozillaThunderbird-debugsource" arch="x86_64">
  <version epoch="0" ver="128.5.1" rel="1.0.10.1.sr20241103"/>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1714824000">- Mozilla Thunderbird 115.10.2:
  https://www.thunderbird.net/en-US/thunderbird/115.10.2/releasenotes/
  This release is identical to 115.10.1, other than changing the
  Update channel for self-updating builds to ESR. (bmo#1893271)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1715688000">- Mozilla Thunderbird 115.11.0
  MFSA 2024-23 (bsc#1224056)
  * CVE-2024-4367 (bmo#1893645)
    Arbitrary JavaScript execution in PDF.js
  * CVE-2024-4767 (bmo#1878577)
    IndexedDB files retained in private browsing mode
  * CVE-2024-4768 (bmo#1886082)
    Potential permissions request bypass via clickjacking
  * CVE-2024-4769 (bmo#1886108)
    Cross-origin responses could be distinguished between script
    and non-script content-types
  * CVE-2024-4770 (bmo#1893270)
    Use-after-free could occur when printing to PDF
  * CVE-2024-4777 (bmo#1878199, bmo#1893340)
    Memory safety bugs fixed in Firefox 126, Firefox ESR 115.11,
    and Thunderbird 115.11</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1716984000">- Mozilla Thunderbird 115.11.1
  * Added a short anonymous survey that a small number of users will
    be randomly asked to complete</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1718625600">- Mozilla Thunderbird 115.12.0
  https://www.thunderbird.net/en-US/thunderbird/115.12.0/releasenotes
  MFSA 2024-28 (bsc#1226027)
  * CVE-2024-5702 (bmo#1193389)
    Use-after-free in networking
  * CVE-2024-5688 (bmo#1895086)
    Use-after-free in JavaScript object transplant
  * CVE-2024-5690 (bmo#1883693)
    External protocol handlers leaked by timing attack
  * CVE-2024-5691 (bmo#1888695)
    Sandboxed iframes were able to bypass sandbox restrictions to
    open a new window
  * CVE-2024-5692 (bmo#1891234)
    Bypass of file name restrictions during saving
  * CVE-2024-5693 (bmo#1891319)
    Cross-Origin Image leak via Offscreen Canvas
  * CVE-2024-5696 (bmo#1896555)
    Memory Corruption in Text Fragments
  * CVE-2024-5700 (bmo#1862809, bmo#1889355, bmo#1893388, bmo#1895123)
    Memory safety bugs fixed in Firefox 127, Firefox ESR 115.12,
    and Thunderbird 115.12</changelog>
  <changelog author="Martin Sirringhaus &lt;martin.sirringhaus@suse.com&gt;" date="1719921600">- Mozilla Thunderbird 115.12.2
  * fixed: Annual Thunderbird Beta appeal intended for
    Thunderbird 115.12.0 did not open as expected (bmo#1898084)
- Mozilla Thunderbird 115.12.1
  * 115.12.0 got pulled because of upstream automation process errors
    and Windows installer signing changes.
    No code changes, changelog is the same as 115.12.0 (bsc#1226495)
- Added thunderbird-fix-CVE-2024-34703.patch (bsc#1227239)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1720612800">- Mozilla Thunderbird 115.13.0
  * After starting Thunderbird, the message list position was
    sometimes set to an incorrect position
  MFSA 2024-30 (bsc#1226316)
  * CVE-2024-6600 (bmo#1888340)
    Memory corruption in WebGL API
  * CVE-2024-6601 (bmo#1890748)
    Race condition in permission assignment
  * CVE-2024-6602 (bmo#1895032)
    Memory corruption in NSS
  * CVE-2024-6603 (bmo#1895081)
    Memory corruption in thread creation
  * CVE-2024-6604 (bmo#1748105, bmo#1837550, bmo#1884266)
    Memory safety bugs fixed in Firefox 128, Firefox ESR 115.13,
    and Thunderbird 115.13</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1722600000">- Mozilla Thunderbird 115.14.0
  * When using an external installation of GnuPG, Thunderbird
    occassionally sent/received corrupted messages (bmo#1898832)
  * Users of external GnuPG were unable to decrypt incorrectly
    encoded messages (bmo#1906903)
  MFSA 2024-38 (bsc#1228648)
  * CVE-2024-7519 (bmo#1902307)
    Out of bounds memory access in graphics shared memory handling
  * CVE-2024-7521 (bmo#1904644)
    Incomplete WebAssembly exception handing
  * CVE-2024-7522 (bmo#1906727)
    Out of bounds read in editor component
  * CVE-2024-7525 (bmo#1909298)
    Missing permission check when creating a StreamFilter
  * CVE-2024-7526 (bmo#1910306)
    Uninitialized memory used by WebGL
  * CVE-2024-7527 (bmo#1871303)
    Use-after-free in JavaScript garbage collection
  * CVE-2024-7529 (bmo#1903187)
    Document content could partially obscure security prompts</changelog>
  <changelog author="Manfred Hollstein &lt;manfred.h@gmx.net&gt;" date="1724932800">- Use gcc13 on Tumbleweed and where it is available.
- Don't use gcc14 as sources don't compile.</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1725624000">- Mozilla Thunderbird 115.15.0
  MFSA 2024-44 (bsc#1229821)
  * CVE-2024-8381 (bmo#1912715)
    Type confusion when looking up a property name in a "with"
    block
  * CVE-2024-8382 (bmo#1906744)
    Internal event interfaces were exposed to web content when
    browser EventHandler listener callbacks ran
  * CVE-2024-8384 (bmo#1911288)
    Garbage collection could mis-color cross-compartment objects
    in OOM conditions</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1728561600">- Mozilla Thunderbird 128.3.1
  https://www.thunderbird.net/en-US/thunderbird/128.0esr/releasenotes/
  and following release notes for minor version updates
  MFSA 2024-52  (bsc#1231413)
  * CVE-2024-9680 (bmo#1923344)
    Use-after-free in Animation timeline
  Mozilla Thunderbird 128.3.0
  MFSA 2024-32 (128.0)
  MFSA 2024-37 (128.1)
  MFSA 2024-43 (128.2)
  MFSA 2024-49 (128.3) (bsc#1230979)
  * CVE-2024-9392 (bmo#1899154, bmo#1905843)
    Compromised content process can bypass site isolation
  * CVE-2024-9393 (bmo#1918301)
    Cross-origin access to PDF contents through multipart responses
  * CVE-2024-9394 (bmo#1918874)
    Cross-origin access to JSON contents through multipart responses
  * CVE-2024-8900 (bmo#1872841)
    Clipboard write permission bypass
  * CVE-2024-9396 (bmo#1912471)
    Potential memory corruption may occur when cloning certain objects
  * CVE-2024-9397 (bmo#1916659)
    Potential directory upload bypass via clickjacking
  * CVE-2024-9398 (bmo#1881037)
    External protocol handlers could be enumerated via popups
  * CVE-2024-9399 (bmo#1907726)
    Specially crafted WebTransport requests could lead to denial
    of service
  * CVE-2024-9400 (bmo#1915249)
    Potential memory corruption during JIT compilation
  * CVE-2024-9401 (bmo#1872744, bmo#1897792, bmo#1911317, bmo#1916476)
    Memory safety bugs fixed in Firefox 131, Firefox ESR 115.16,
    Firefox ESR 128.3, Thunderbird 131, and Thunderbird 128.3
  * CVE-2024-9402 (bmo#1872744, bmo#1897792, bmo#1911317, bmo#1913445,
    bmo#1914106, bmo#1914475, bmo#1914963, bmo#1915008, bmo#1916476)
    Memory safety bugs fixed in Firefox 131, Firefox ESR 128.3,
    Thunderbird 131, and Thunderbird 128.3
- removed obsolete patches
  mozilla-bmo1504834-part3.patch
  mozilla-bmo1512162.patch
  mozilla-bmo1775202.patch
  mozilla-bmo531915.patch
  mozilla-fix-aarch64-libopus.patch
  mozilla-fix-issues-with-llvm18.patch
  mozilla-fix-top-level-asm.patch
  mozilla-partial-revert-1768632.patch
  mozilla-rust-disable-future-incompat.patch
  thunderbird-fix-CVE-2024-34703.patch
- new patch thunderbird-silence-no-return.patch
- rebased
  mozilla-bmo1504834-part1.patch
  mozilla-kde.patch
  mozilla-libavcodec58_91.patch
  mozilla-silence-no-return-type.patch</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1729080000">- Mozilla Thunderbird 128.3.2
  bugfix release:
  https://www.thunderbird.net/en-US/thunderbird/128.3.2esr/releasenotes
- bring back mozilla-bmo531915.patch to fix x86</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1729684800">- Mozilla Thunderbird 128.3.3
  * Files left over from failed folder compactions could use up
    disk space (bmo#1878541)
  * Message list returned to selected message after action on
    another message (bmo#1917485)
  * Some faulty messages were downloaded and never stored
    (bmo#1923765)
  * Messages could become corrupted during folder compaction
    (bmo#1923747,bmo#1923541,bmo#1720047)
  * Searching events by Location, Description, or URL failed
    (bmo#1912710)
  * "Remove All Shown" saved passwords deleted all logins if
    filtered without results (bmo#601447)
  * Calendar event updates were not always sent to attendees
    (bmo#1877640)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1730289600">- Mozilla Thunderbird 128.4.0
  * Export Thunderbird account settings to Thunderbird Mobile via QRCode
  Bugfixes:
  * Unable to send an unencrypted response to an OpenPGP encrypted message
  MFSA 2024-58 (bsc#1231879)
  * CVE-2024-10458 (bmo#1921733)
    Permission leak via embed or object elements
  * CVE-2024-10459 (bmo#1919087)
    Use-after-free in layout with accessibility
  * CVE-2024-10460 (bmo#1912537)
    Confusing display of origin for external protocol handler prompt
  * CVE-2024-10461 (bmo#1914521)
    XSS due to Content-Disposition being ignored in
    multipart/x-mixed-replace response
  * CVE-2024-10462 (bmo#1920423)
    Origin of permission prompt could be spoofed by long URL
  * CVE-2024-10463 (bmo#1920800)
    Cross origin video frame leak
  * CVE-2024-10464 (bmo#1913000)
    History interface could have been used to cause a Denial of
    Service condition in the browser
  * CVE-2024-10465 (bmo#1918853)
    Clipboard "paste" button persisted across tabs
  * CVE-2024-10466 (bmo#1924154)
    DOM push subscription message could hang Firefox
  * CVE-2024-10467 (bmo#1829029, bmo#1888538, bmo#1900394, bmo#1904059,
    bmo#1917742, bmo#1919809, bmo#1923706)
    Memory safety bugs fixed in Firefox 132, Thunderbird 132,
    Firefox ESR 128.4, and Thunderbird 128.4</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1730548800">- Mozilla Thunderbird 128.4.1
  * Add the 20 year donation appeal (bmo#192538)</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1730894400">- Mozilla Thunderbird 128.4.2
  * Increased the auto-compaction threshold to reduce the frequency
    of compaction (bmo#1927656)
  * fixed: New profile creation caused console errors (bmo#1912675)
  * fixed: Repair folder could result in older messages showing
    wrong date and time (bmo#1911916)
  * fixed: Recently deleted messages could become undeleted if
    message compaction failed (bmo#1924927)
  * fixed: Visual and UX improvements
    (bmo#1857413,bmo#1922934,bmo#1924437)
  * fixed: Clicking on an HTML button could cause Thunderbird to
    freeze (bmo#1879355)
  * fixed: Messages could not be selected for dragging
    (bmo#1887518)
  * fixed: Could not open attached file in a MIME encrypted
    message (bmo#1924637)
  * fixed: Account creation "Setup Documentation" link was broken
    (bmo#1925493)
  * fixed: Unable to generate QR codes when exporting to mobile
    in some cases (bmo#1928114)
  * fixed: Operating system reauthentication was missing when
    exporting QR codes for mobile (bmo#1928232)
  * fixed: Could not drag all-day events from one day to another
    in week view (bmo#1922944)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1731153600">- Mozilla Thunderbird 128.4.3
  Fixes:
  * Folder corruption could cause Thunderbird to freeze and become unusable
  * Message corruption could be propagated when reading mbox
  * Folder compaction was not abandoned on shutdown
  * Folder compaction did not clean up on failure
  * Collapsed NNTP thread incorrectly indicated there were unread messages
  * Navigating to next unread message did not wait for all messages
    to be loaded
  * Applying column view to folder and children could break if folder
    error occurred
  * Remote content notifications were broken with encrypted messages
  * Updating criteria of a saved search resulted in poor search performance
  * Drop-downs may not work in some places
  MFSA 2024-61
  * CVE-2024-11159 (bmo#1925929)
    Potential disclosure of plaintext in OpenPGP encrypted message
- remove kmozillahelper support (boo#1226112)
  * removed mozilla-kde.patch
  * requires xdg-desktop-portal instead</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1732104000">- Mozilla Thunderbird 128.4.4
  * QR codes were not scannable by Android app when using most
    high-contrast themes
  * Primary password prompt cancellation during mobile export was
    confusing
- revert using xdg-desktop-portal as some desktops have limited
  support</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1732622400">- Mozilla Thunderbird 128.5.0
  * IMAP could crash when reading cached messages
  * Enabling "Show Folder Size" on Maildir profile could render
    Thunderbird unusable
  * Messages corrupted by folder compaction were only fixed by user
    intervention
  * Reading a message from past the end of an mbox file did not
    cause an error
  * View -&gt; Folders had duplicate F access keys
  * Add-ons adding columns to the message list could fail and cause
    display issue
  * "Empty trash on exit" and "Expunge inbox on exit" did not
    always work
  * Selecting a display option in View -&gt; Tasks did not apply in
    the Task interface
  MFSA 2024-68 (bsc#1233695)
  * CVE-2024-11691 (bmo#1914707, bmo#1924184)
    Memory corruption in Apple GPU drivers
  * CVE-2024-11692 (bmo#1909535)
    Select list elements could be shown over another site
  * CVE-2024-11693 (bmo#1921458)
    Download Protections were bypassed by .library-ms files on Windows
  * CVE-2024-11694 (bmo#1924167)
    CSP Bypass and XSS Exposure via Web Compatibility Shims
  * CVE-2024-11695 (bmo#1925496)
    URL Bar Spoofing via Manipulated Punycode and Whitespace Characters
  * CVE-2024-11696 (bmo#1929600)
    Unhandled Exception in Add-on Signature Verification
  * CVE-2024-11697 (bmo#1842187)
    Improper Keypress Handling in Executable File Confirmation Dialog
  * CVE-2024-11698 (bmo#1916152)
    Fullscreen Lock-Up When Modal Dialog Interrupts Transition on macOS
  * CVE-2024-11699 (bmo#1880582, bmo#1929911)
    Memory safety bugs fixed in Firefox 133, Thunderbird 133,
    Firefox ESR 128.5, and Thunderbird 128.5
- appid is thunderbird-esr currently; use the matching desktop
  file name (boo#1233650)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1732795200">- make spec compatible with rpm &lt; 4.17 again
- correct appdata for different desktop filename</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1733227200">- Mozilla Thunderbird 128.5.1
  * Add end of year donation appeal
  * Total message count for favorite folders did not work consistently</changelog>
</package>
<package pkgid="6e1085eae8c832726b501f7e1d06bf3023ee8a2cafb3a48a97a438bdbc830f9edbe900eeb496520241f0031a478b0f45a6c4ab6d9680a3ca787470563beaa450" name="MozillaThunderbird-openpgp-librnp" arch="x86_64">
  <version epoch="0" ver="128.4.2" rel="1.0.2.1.sr20241103"/>
  <changelog author="Adam Mizerski &lt;adam@mizerski.pl&gt;" date="1709640000">- Create subpackage MozillaThunderbird-openpgp-librnp</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1710590400">- Mozilla Thunderbird 115.9.0
  https://www.thunderbird.net/en-US/thunderbird/115.9.0/releasenotes/
  MFSA 2024-14 (bsc#1221327)
  * CVE-2024-0743 (bmo#1867408)
    Crash in NSS TLS method
  * CVE-2024-2605 (bmo#1872920)
    Windows Error Reporter could be used as a Sandbox escape vector
  * CVE-2024-2607 (bmo#1879939)
    JIT code failed to save return registers on Armv7-A
  * CVE-2024-2608 (bmo#1880692)
    Integer overflow could have led to out of bounds write
  * CVE-2024-2616 (bmo#1846197)
    Improve handling of out-of-memory conditions in ICU
  * CVE-2023-5388 (bmo#1780432)
    NSS susceptible to timing attack against RSA decryption
  * CVE-2024-2610 (bmo#1871112)
    Improper handling of html and body tags enabled CSP nonce leakage
  * CVE-2024-2611 (bmo#1876675)
    Clickjacking vulnerability could have led to a user accidentally
    granting permissions
  * CVE-2024-2612 (bmo#1879444)
    Self referencing object could have potentially led to a use-
    after-free
  * CVE-2024-2614 (bmo#1685358, bmo#1861016, bmo#1880405, bmo#1881093)
    Memory safety bugs fixed in Firefox 124, Firefox ESR 115.9,
    and Thunderbird 115.9</changelog>
  <changelog author="Manfred Hollstein &lt;manfred.h@gmx.net&gt;" date="1710936000">- LLVM18 breaks building Thunderbird on Tumbleweed; add
  * mozilla-fix-issues-with-llvm18.patch</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1713096000">- Mozilla Thunderbird 115.10.0
  https://www.thunderbird.net/en-US/thunderbird/115.10.0/releasenotes/
  MFSA 2024-20 (bsc#1222535)
  * CVE-2024-3852 (bmo#1883542)
    GetBoundName in the JIT returned the wrong object
  * CVE-2024-3854 (bmo#1884552)
    Out-of-bounds-read after mis-optimized switch statement
  * CVE-2024-3857 (bmo#1886683)
    Incorrect JITting of arguments led to use-after-free during
    garbage collection
  * CVE-2024-2609 (bmo#1866100)
    Permission prompt input delay could expire when not in focus
  * CVE-2024-3859 (bmo#1874489)
    Integer-overflow led to out-of-bounds-read in the OpenType sanitizer
  * CVE-2024-3861 (bmo#1883158)
    Potential use-after-free due to AlignedBuffer self-move
  * CVE-2024-3863 (bmo#1885855)
    Download Protections were bypassed by .xrm-ms files on Windows
  * CVE-2024-3302 (bmo#1881183)
    Denial of Service using HTTP/2 CONTINUATION frames
  * CVE-2024-3864 (bmo#1888333)
    Memory safety bug fixed in Firefox 125, Firefox ESR 115.10,
    and Thunderbird 115.10</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1713528000">- Mozilla Thunderbird 115.10.1
  https://www.thunderbird.net/en-US/thunderbird/115.10.1/releasenotes/
  * fixed hangup introduced with 115.10.0 (bmo#1891889)</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1714824000">- Mozilla Thunderbird 115.10.2:
  https://www.thunderbird.net/en-US/thunderbird/115.10.2/releasenotes/
  This release is identical to 115.10.1, other than changing the
  Update channel for self-updating builds to ESR. (bmo#1893271)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1715688000">- Mozilla Thunderbird 115.11.0
  MFSA 2024-23 (bsc#1224056)
  * CVE-2024-4367 (bmo#1893645)
    Arbitrary JavaScript execution in PDF.js
  * CVE-2024-4767 (bmo#1878577)
    IndexedDB files retained in private browsing mode
  * CVE-2024-4768 (bmo#1886082)
    Potential permissions request bypass via clickjacking
  * CVE-2024-4769 (bmo#1886108)
    Cross-origin responses could be distinguished between script
    and non-script content-types
  * CVE-2024-4770 (bmo#1893270)
    Use-after-free could occur when printing to PDF
  * CVE-2024-4777 (bmo#1878199, bmo#1893340)
    Memory safety bugs fixed in Firefox 126, Firefox ESR 115.11,
    and Thunderbird 115.11</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1716984000">- Mozilla Thunderbird 115.11.1
  * Added a short anonymous survey that a small number of users will
    be randomly asked to complete</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1718625600">- Mozilla Thunderbird 115.12.0
  https://www.thunderbird.net/en-US/thunderbird/115.12.0/releasenotes
  MFSA 2024-28 (bsc#1226027)
  * CVE-2024-5702 (bmo#1193389)
    Use-after-free in networking
  * CVE-2024-5688 (bmo#1895086)
    Use-after-free in JavaScript object transplant
  * CVE-2024-5690 (bmo#1883693)
    External protocol handlers leaked by timing attack
  * CVE-2024-5691 (bmo#1888695)
    Sandboxed iframes were able to bypass sandbox restrictions to
    open a new window
  * CVE-2024-5692 (bmo#1891234)
    Bypass of file name restrictions during saving
  * CVE-2024-5693 (bmo#1891319)
    Cross-Origin Image leak via Offscreen Canvas
  * CVE-2024-5696 (bmo#1896555)
    Memory Corruption in Text Fragments
  * CVE-2024-5700 (bmo#1862809, bmo#1889355, bmo#1893388, bmo#1895123)
    Memory safety bugs fixed in Firefox 127, Firefox ESR 115.12,
    and Thunderbird 115.12</changelog>
  <changelog author="Martin Sirringhaus &lt;martin.sirringhaus@suse.com&gt;" date="1719921600">- Mozilla Thunderbird 115.12.2
  * fixed: Annual Thunderbird Beta appeal intended for
    Thunderbird 115.12.0 did not open as expected (bmo#1898084)
- Mozilla Thunderbird 115.12.1
  * 115.12.0 got pulled because of upstream automation process errors
    and Windows installer signing changes.
    No code changes, changelog is the same as 115.12.0 (bsc#1226495)
- Added thunderbird-fix-CVE-2024-34703.patch (bsc#1227239)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1720612800">- Mozilla Thunderbird 115.13.0
  * After starting Thunderbird, the message list position was
    sometimes set to an incorrect position
  MFSA 2024-30 (bsc#1226316)
  * CVE-2024-6600 (bmo#1888340)
    Memory corruption in WebGL API
  * CVE-2024-6601 (bmo#1890748)
    Race condition in permission assignment
  * CVE-2024-6602 (bmo#1895032)
    Memory corruption in NSS
  * CVE-2024-6603 (bmo#1895081)
    Memory corruption in thread creation
  * CVE-2024-6604 (bmo#1748105, bmo#1837550, bmo#1884266)
    Memory safety bugs fixed in Firefox 128, Firefox ESR 115.13,
    and Thunderbird 115.13</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1722600000">- Mozilla Thunderbird 115.14.0
  * When using an external installation of GnuPG, Thunderbird
    occassionally sent/received corrupted messages (bmo#1898832)
  * Users of external GnuPG were unable to decrypt incorrectly
    encoded messages (bmo#1906903)
  MFSA 2024-38 (bsc#1228648)
  * CVE-2024-7519 (bmo#1902307)
    Out of bounds memory access in graphics shared memory handling
  * CVE-2024-7521 (bmo#1904644)
    Incomplete WebAssembly exception handing
  * CVE-2024-7522 (bmo#1906727)
    Out of bounds read in editor component
  * CVE-2024-7525 (bmo#1909298)
    Missing permission check when creating a StreamFilter
  * CVE-2024-7526 (bmo#1910306)
    Uninitialized memory used by WebGL
  * CVE-2024-7527 (bmo#1871303)
    Use-after-free in JavaScript garbage collection
  * CVE-2024-7529 (bmo#1903187)
    Document content could partially obscure security prompts</changelog>
  <changelog author="Manfred Hollstein &lt;manfred.h@gmx.net&gt;" date="1724932800">- Use gcc13 on Tumbleweed and where it is available.
- Don't use gcc14 as sources don't compile.</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1725624000">- Mozilla Thunderbird 115.15.0
  MFSA 2024-44 (bsc#1229821)
  * CVE-2024-8381 (bmo#1912715)
    Type confusion when looking up a property name in a "with"
    block
  * CVE-2024-8382 (bmo#1906744)
    Internal event interfaces were exposed to web content when
    browser EventHandler listener callbacks ran
  * CVE-2024-8384 (bmo#1911288)
    Garbage collection could mis-color cross-compartment objects
    in OOM conditions</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1728561600">- Mozilla Thunderbird 128.3.1
  https://www.thunderbird.net/en-US/thunderbird/128.0esr/releasenotes/
  and following release notes for minor version updates
  MFSA 2024-52  (bsc#1231413)
  * CVE-2024-9680 (bmo#1923344)
    Use-after-free in Animation timeline
  Mozilla Thunderbird 128.3.0
  MFSA 2024-32 (128.0)
  MFSA 2024-37 (128.1)
  MFSA 2024-43 (128.2)
  MFSA 2024-49 (128.3) (bsc#1230979)
  * CVE-2024-9392 (bmo#1899154, bmo#1905843)
    Compromised content process can bypass site isolation
  * CVE-2024-9393 (bmo#1918301)
    Cross-origin access to PDF contents through multipart responses
  * CVE-2024-9394 (bmo#1918874)
    Cross-origin access to JSON contents through multipart responses
  * CVE-2024-8900 (bmo#1872841)
    Clipboard write permission bypass
  * CVE-2024-9396 (bmo#1912471)
    Potential memory corruption may occur when cloning certain objects
  * CVE-2024-9397 (bmo#1916659)
    Potential directory upload bypass via clickjacking
  * CVE-2024-9398 (bmo#1881037)
    External protocol handlers could be enumerated via popups
  * CVE-2024-9399 (bmo#1907726)
    Specially crafted WebTransport requests could lead to denial
    of service
  * CVE-2024-9400 (bmo#1915249)
    Potential memory corruption during JIT compilation
  * CVE-2024-9401 (bmo#1872744, bmo#1897792, bmo#1911317, bmo#1916476)
    Memory safety bugs fixed in Firefox 131, Firefox ESR 115.16,
    Firefox ESR 128.3, Thunderbird 131, and Thunderbird 128.3
  * CVE-2024-9402 (bmo#1872744, bmo#1897792, bmo#1911317, bmo#1913445,
    bmo#1914106, bmo#1914475, bmo#1914963, bmo#1915008, bmo#1916476)
    Memory safety bugs fixed in Firefox 131, Firefox ESR 128.3,
    Thunderbird 131, and Thunderbird 128.3
- removed obsolete patches
  mozilla-bmo1504834-part3.patch
  mozilla-bmo1512162.patch
  mozilla-bmo1775202.patch
  mozilla-bmo531915.patch
  mozilla-fix-aarch64-libopus.patch
  mozilla-fix-issues-with-llvm18.patch
  mozilla-fix-top-level-asm.patch
  mozilla-partial-revert-1768632.patch
  mozilla-rust-disable-future-incompat.patch
  thunderbird-fix-CVE-2024-34703.patch
- new patch thunderbird-silence-no-return.patch
- rebased
  mozilla-bmo1504834-part1.patch
  mozilla-kde.patch
  mozilla-libavcodec58_91.patch
  mozilla-silence-no-return-type.patch</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1729080000">- Mozilla Thunderbird 128.3.2
  bugfix release:
  https://www.thunderbird.net/en-US/thunderbird/128.3.2esr/releasenotes
- bring back mozilla-bmo531915.patch to fix x86</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1729684800">- Mozilla Thunderbird 128.3.3
  * Files left over from failed folder compactions could use up
    disk space (bmo#1878541)
  * Message list returned to selected message after action on
    another message (bmo#1917485)
  * Some faulty messages were downloaded and never stored
    (bmo#1923765)
  * Messages could become corrupted during folder compaction
    (bmo#1923747,bmo#1923541,bmo#1720047)
  * Searching events by Location, Description, or URL failed
    (bmo#1912710)
  * "Remove All Shown" saved passwords deleted all logins if
    filtered without results (bmo#601447)
  * Calendar event updates were not always sent to attendees
    (bmo#1877640)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1730289600">- Mozilla Thunderbird 128.4.0
  * Export Thunderbird account settings to Thunderbird Mobile via QRCode
  Bugfixes:
  * Unable to send an unencrypted response to an OpenPGP encrypted message
  MFSA 2024-58 (bsc#1231879)
  * CVE-2024-10458 (bmo#1921733)
    Permission leak via embed or object elements
  * CVE-2024-10459 (bmo#1919087)
    Use-after-free in layout with accessibility
  * CVE-2024-10460 (bmo#1912537)
    Confusing display of origin for external protocol handler prompt
  * CVE-2024-10461 (bmo#1914521)
    XSS due to Content-Disposition being ignored in
    multipart/x-mixed-replace response
  * CVE-2024-10462 (bmo#1920423)
    Origin of permission prompt could be spoofed by long URL
  * CVE-2024-10463 (bmo#1920800)
    Cross origin video frame leak
  * CVE-2024-10464 (bmo#1913000)
    History interface could have been used to cause a Denial of
    Service condition in the browser
  * CVE-2024-10465 (bmo#1918853)
    Clipboard "paste" button persisted across tabs
  * CVE-2024-10466 (bmo#1924154)
    DOM push subscription message could hang Firefox
  * CVE-2024-10467 (bmo#1829029, bmo#1888538, bmo#1900394, bmo#1904059,
    bmo#1917742, bmo#1919809, bmo#1923706)
    Memory safety bugs fixed in Firefox 132, Thunderbird 132,
    Firefox ESR 128.4, and Thunderbird 128.4</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1730548800">- Mozilla Thunderbird 128.4.1
  * Add the 20 year donation appeal (bmo#192538)</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1730894400">- Mozilla Thunderbird 128.4.2
  * Increased the auto-compaction threshold to reduce the frequency
    of compaction (bmo#1927656)
  * fixed: New profile creation caused console errors (bmo#1912675)
  * fixed: Repair folder could result in older messages showing
    wrong date and time (bmo#1911916)
  * fixed: Recently deleted messages could become undeleted if
    message compaction failed (bmo#1924927)
  * fixed: Visual and UX improvements
    (bmo#1857413,bmo#1922934,bmo#1924437)
  * fixed: Clicking on an HTML button could cause Thunderbird to
    freeze (bmo#1879355)
  * fixed: Messages could not be selected for dragging
    (bmo#1887518)
  * fixed: Could not open attached file in a MIME encrypted
    message (bmo#1924637)
  * fixed: Account creation "Setup Documentation" link was broken
    (bmo#1925493)
  * fixed: Unable to generate QR codes when exporting to mobile
    in some cases (bmo#1928114)
  * fixed: Operating system reauthentication was missing when
    exporting QR codes for mobile (bmo#1928232)
  * fixed: Could not drag all-day events from one day to another
    in week view (bmo#1922944)</changelog>
</package>
<package pkgid="81c21403af5ed8ae9cc4732791976e7e6cab6272c649007d231efb3e87a31de6b629bdd52dcc5ef7ee7b7946424612e0c9295035b648d73d22eabd25cb6beff2" name="MozillaThunderbird-openpgp-librnp" arch="x86_64">
  <version epoch="0" ver="128.4.3" rel="1.1"/>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1710590400">- Mozilla Thunderbird 115.9.0
  https://www.thunderbird.net/en-US/thunderbird/115.9.0/releasenotes/
  MFSA 2024-14 (bsc#1221327)
  * CVE-2024-0743 (bmo#1867408)
    Crash in NSS TLS method
  * CVE-2024-2605 (bmo#1872920)
    Windows Error Reporter could be used as a Sandbox escape vector
  * CVE-2024-2607 (bmo#1879939)
    JIT code failed to save return registers on Armv7-A
  * CVE-2024-2608 (bmo#1880692)
    Integer overflow could have led to out of bounds write
  * CVE-2024-2616 (bmo#1846197)
    Improve handling of out-of-memory conditions in ICU
  * CVE-2023-5388 (bmo#1780432)
    NSS susceptible to timing attack against RSA decryption
  * CVE-2024-2610 (bmo#1871112)
    Improper handling of html and body tags enabled CSP nonce leakage
  * CVE-2024-2611 (bmo#1876675)
    Clickjacking vulnerability could have led to a user accidentally
    granting permissions
  * CVE-2024-2612 (bmo#1879444)
    Self referencing object could have potentially led to a use-
    after-free
  * CVE-2024-2614 (bmo#1685358, bmo#1861016, bmo#1880405, bmo#1881093)
    Memory safety bugs fixed in Firefox 124, Firefox ESR 115.9,
    and Thunderbird 115.9</changelog>
  <changelog author="Manfred Hollstein &lt;manfred.h@gmx.net&gt;" date="1710936000">- LLVM18 breaks building Thunderbird on Tumbleweed; add
  * mozilla-fix-issues-with-llvm18.patch</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1713096000">- Mozilla Thunderbird 115.10.0
  https://www.thunderbird.net/en-US/thunderbird/115.10.0/releasenotes/
  MFSA 2024-20 (bsc#1222535)
  * CVE-2024-3852 (bmo#1883542)
    GetBoundName in the JIT returned the wrong object
  * CVE-2024-3854 (bmo#1884552)
    Out-of-bounds-read after mis-optimized switch statement
  * CVE-2024-3857 (bmo#1886683)
    Incorrect JITting of arguments led to use-after-free during
    garbage collection
  * CVE-2024-2609 (bmo#1866100)
    Permission prompt input delay could expire when not in focus
  * CVE-2024-3859 (bmo#1874489)
    Integer-overflow led to out-of-bounds-read in the OpenType sanitizer
  * CVE-2024-3861 (bmo#1883158)
    Potential use-after-free due to AlignedBuffer self-move
  * CVE-2024-3863 (bmo#1885855)
    Download Protections were bypassed by .xrm-ms files on Windows
  * CVE-2024-3302 (bmo#1881183)
    Denial of Service using HTTP/2 CONTINUATION frames
  * CVE-2024-3864 (bmo#1888333)
    Memory safety bug fixed in Firefox 125, Firefox ESR 115.10,
    and Thunderbird 115.10</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1713528000">- Mozilla Thunderbird 115.10.1
  https://www.thunderbird.net/en-US/thunderbird/115.10.1/releasenotes/
  * fixed hangup introduced with 115.10.0 (bmo#1891889)</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1714824000">- Mozilla Thunderbird 115.10.2:
  https://www.thunderbird.net/en-US/thunderbird/115.10.2/releasenotes/
  This release is identical to 115.10.1, other than changing the
  Update channel for self-updating builds to ESR. (bmo#1893271)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1715688000">- Mozilla Thunderbird 115.11.0
  MFSA 2024-23 (bsc#1224056)
  * CVE-2024-4367 (bmo#1893645)
    Arbitrary JavaScript execution in PDF.js
  * CVE-2024-4767 (bmo#1878577)
    IndexedDB files retained in private browsing mode
  * CVE-2024-4768 (bmo#1886082)
    Potential permissions request bypass via clickjacking
  * CVE-2024-4769 (bmo#1886108)
    Cross-origin responses could be distinguished between script
    and non-script content-types
  * CVE-2024-4770 (bmo#1893270)
    Use-after-free could occur when printing to PDF
  * CVE-2024-4777 (bmo#1878199, bmo#1893340)
    Memory safety bugs fixed in Firefox 126, Firefox ESR 115.11,
    and Thunderbird 115.11</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1716984000">- Mozilla Thunderbird 115.11.1
  * Added a short anonymous survey that a small number of users will
    be randomly asked to complete</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1718625600">- Mozilla Thunderbird 115.12.0
  https://www.thunderbird.net/en-US/thunderbird/115.12.0/releasenotes
  MFSA 2024-28 (bsc#1226027)
  * CVE-2024-5702 (bmo#1193389)
    Use-after-free in networking
  * CVE-2024-5688 (bmo#1895086)
    Use-after-free in JavaScript object transplant
  * CVE-2024-5690 (bmo#1883693)
    External protocol handlers leaked by timing attack
  * CVE-2024-5691 (bmo#1888695)
    Sandboxed iframes were able to bypass sandbox restrictions to
    open a new window
  * CVE-2024-5692 (bmo#1891234)
    Bypass of file name restrictions during saving
  * CVE-2024-5693 (bmo#1891319)
    Cross-Origin Image leak via Offscreen Canvas
  * CVE-2024-5696 (bmo#1896555)
    Memory Corruption in Text Fragments
  * CVE-2024-5700 (bmo#1862809, bmo#1889355, bmo#1893388, bmo#1895123)
    Memory safety bugs fixed in Firefox 127, Firefox ESR 115.12,
    and Thunderbird 115.12</changelog>
  <changelog author="Martin Sirringhaus &lt;martin.sirringhaus@suse.com&gt;" date="1719921600">- Mozilla Thunderbird 115.12.2
  * fixed: Annual Thunderbird Beta appeal intended for
    Thunderbird 115.12.0 did not open as expected (bmo#1898084)
- Mozilla Thunderbird 115.12.1
  * 115.12.0 got pulled because of upstream automation process errors
    and Windows installer signing changes.
    No code changes, changelog is the same as 115.12.0 (bsc#1226495)
- Added thunderbird-fix-CVE-2024-34703.patch (bsc#1227239)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1720612800">- Mozilla Thunderbird 115.13.0
  * After starting Thunderbird, the message list position was
    sometimes set to an incorrect position
  MFSA 2024-30 (bsc#1226316)
  * CVE-2024-6600 (bmo#1888340)
    Memory corruption in WebGL API
  * CVE-2024-6601 (bmo#1890748)
    Race condition in permission assignment
  * CVE-2024-6602 (bmo#1895032)
    Memory corruption in NSS
  * CVE-2024-6603 (bmo#1895081)
    Memory corruption in thread creation
  * CVE-2024-6604 (bmo#1748105, bmo#1837550, bmo#1884266)
    Memory safety bugs fixed in Firefox 128, Firefox ESR 115.13,
    and Thunderbird 115.13</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1722600000">- Mozilla Thunderbird 115.14.0
  * When using an external installation of GnuPG, Thunderbird
    occassionally sent/received corrupted messages (bmo#1898832)
  * Users of external GnuPG were unable to decrypt incorrectly
    encoded messages (bmo#1906903)
  MFSA 2024-38 (bsc#1228648)
  * CVE-2024-7519 (bmo#1902307)
    Out of bounds memory access in graphics shared memory handling
  * CVE-2024-7521 (bmo#1904644)
    Incomplete WebAssembly exception handing
  * CVE-2024-7522 (bmo#1906727)
    Out of bounds read in editor component
  * CVE-2024-7525 (bmo#1909298)
    Missing permission check when creating a StreamFilter
  * CVE-2024-7526 (bmo#1910306)
    Uninitialized memory used by WebGL
  * CVE-2024-7527 (bmo#1871303)
    Use-after-free in JavaScript garbage collection
  * CVE-2024-7529 (bmo#1903187)
    Document content could partially obscure security prompts</changelog>
  <changelog author="Manfred Hollstein &lt;manfred.h@gmx.net&gt;" date="1724932800">- Use gcc13 on Tumbleweed and where it is available.
- Don't use gcc14 as sources don't compile.</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1725624000">- Mozilla Thunderbird 115.15.0
  MFSA 2024-44 (bsc#1229821)
  * CVE-2024-8381 (bmo#1912715)
    Type confusion when looking up a property name in a "with"
    block
  * CVE-2024-8382 (bmo#1906744)
    Internal event interfaces were exposed to web content when
    browser EventHandler listener callbacks ran
  * CVE-2024-8384 (bmo#1911288)
    Garbage collection could mis-color cross-compartment objects
    in OOM conditions</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1728561600">- Mozilla Thunderbird 128.3.1
  https://www.thunderbird.net/en-US/thunderbird/128.0esr/releasenotes/
  and following release notes for minor version updates
  MFSA 2024-52  (bsc#1231413)
  * CVE-2024-9680 (bmo#1923344)
    Use-after-free in Animation timeline
  Mozilla Thunderbird 128.3.0
  MFSA 2024-32 (128.0)
  MFSA 2024-37 (128.1)
  MFSA 2024-43 (128.2)
  MFSA 2024-49 (128.3) (bsc#1230979)
  * CVE-2024-9392 (bmo#1899154, bmo#1905843)
    Compromised content process can bypass site isolation
  * CVE-2024-9393 (bmo#1918301)
    Cross-origin access to PDF contents through multipart responses
  * CVE-2024-9394 (bmo#1918874)
    Cross-origin access to JSON contents through multipart responses
  * CVE-2024-8900 (bmo#1872841)
    Clipboard write permission bypass
  * CVE-2024-9396 (bmo#1912471)
    Potential memory corruption may occur when cloning certain objects
  * CVE-2024-9397 (bmo#1916659)
    Potential directory upload bypass via clickjacking
  * CVE-2024-9398 (bmo#1881037)
    External protocol handlers could be enumerated via popups
  * CVE-2024-9399 (bmo#1907726)
    Specially crafted WebTransport requests could lead to denial
    of service
  * CVE-2024-9400 (bmo#1915249)
    Potential memory corruption during JIT compilation
  * CVE-2024-9401 (bmo#1872744, bmo#1897792, bmo#1911317, bmo#1916476)
    Memory safety bugs fixed in Firefox 131, Firefox ESR 115.16,
    Firefox ESR 128.3, Thunderbird 131, and Thunderbird 128.3
  * CVE-2024-9402 (bmo#1872744, bmo#1897792, bmo#1911317, bmo#1913445,
    bmo#1914106, bmo#1914475, bmo#1914963, bmo#1915008, bmo#1916476)
    Memory safety bugs fixed in Firefox 131, Firefox ESR 128.3,
    Thunderbird 131, and Thunderbird 128.3
- removed obsolete patches
  mozilla-bmo1504834-part3.patch
  mozilla-bmo1512162.patch
  mozilla-bmo1775202.patch
  mozilla-bmo531915.patch
  mozilla-fix-aarch64-libopus.patch
  mozilla-fix-issues-with-llvm18.patch
  mozilla-fix-top-level-asm.patch
  mozilla-partial-revert-1768632.patch
  mozilla-rust-disable-future-incompat.patch
  thunderbird-fix-CVE-2024-34703.patch
- new patch thunderbird-silence-no-return.patch
- rebased
  mozilla-bmo1504834-part1.patch
  mozilla-kde.patch
  mozilla-libavcodec58_91.patch
  mozilla-silence-no-return-type.patch</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1729080000">- Mozilla Thunderbird 128.3.2
  bugfix release:
  https://www.thunderbird.net/en-US/thunderbird/128.3.2esr/releasenotes
- bring back mozilla-bmo531915.patch to fix x86</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1729684800">- Mozilla Thunderbird 128.3.3
  * Files left over from failed folder compactions could use up
    disk space (bmo#1878541)
  * Message list returned to selected message after action on
    another message (bmo#1917485)
  * Some faulty messages were downloaded and never stored
    (bmo#1923765)
  * Messages could become corrupted during folder compaction
    (bmo#1923747,bmo#1923541,bmo#1720047)
  * Searching events by Location, Description, or URL failed
    (bmo#1912710)
  * "Remove All Shown" saved passwords deleted all logins if
    filtered without results (bmo#601447)
  * Calendar event updates were not always sent to attendees
    (bmo#1877640)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1730289600">- Mozilla Thunderbird 128.4.0
  * Export Thunderbird account settings to Thunderbird Mobile via QRCode
  Bugfixes:
  * Unable to send an unencrypted response to an OpenPGP encrypted message
  MFSA 2024-58 (bsc#1231879)
  * CVE-2024-10458 (bmo#1921733)
    Permission leak via embed or object elements
  * CVE-2024-10459 (bmo#1919087)
    Use-after-free in layout with accessibility
  * CVE-2024-10460 (bmo#1912537)
    Confusing display of origin for external protocol handler prompt
  * CVE-2024-10461 (bmo#1914521)
    XSS due to Content-Disposition being ignored in
    multipart/x-mixed-replace response
  * CVE-2024-10462 (bmo#1920423)
    Origin of permission prompt could be spoofed by long URL
  * CVE-2024-10463 (bmo#1920800)
    Cross origin video frame leak
  * CVE-2024-10464 (bmo#1913000)
    History interface could have been used to cause a Denial of
    Service condition in the browser
  * CVE-2024-10465 (bmo#1918853)
    Clipboard "paste" button persisted across tabs
  * CVE-2024-10466 (bmo#1924154)
    DOM push subscription message could hang Firefox
  * CVE-2024-10467 (bmo#1829029, bmo#1888538, bmo#1900394, bmo#1904059,
    bmo#1917742, bmo#1919809, bmo#1923706)
    Memory safety bugs fixed in Firefox 132, Thunderbird 132,
    Firefox ESR 128.4, and Thunderbird 128.4</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1730548800">- Mozilla Thunderbird 128.4.1
  * Add the 20 year donation appeal (bmo#192538)</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1730894400">- Mozilla Thunderbird 128.4.2
  * Increased the auto-compaction threshold to reduce the frequency
    of compaction (bmo#1927656)
  * fixed: New profile creation caused console errors (bmo#1912675)
  * fixed: Repair folder could result in older messages showing
    wrong date and time (bmo#1911916)
  * fixed: Recently deleted messages could become undeleted if
    message compaction failed (bmo#1924927)
  * fixed: Visual and UX improvements
    (bmo#1857413,bmo#1922934,bmo#1924437)
  * fixed: Clicking on an HTML button could cause Thunderbird to
    freeze (bmo#1879355)
  * fixed: Messages could not be selected for dragging
    (bmo#1887518)
  * fixed: Could not open attached file in a MIME encrypted
    message (bmo#1924637)
  * fixed: Account creation "Setup Documentation" link was broken
    (bmo#1925493)
  * fixed: Unable to generate QR codes when exporting to mobile
    in some cases (bmo#1928114)
  * fixed: Operating system reauthentication was missing when
    exporting QR codes for mobile (bmo#1928232)
  * fixed: Could not drag all-day events from one day to another
    in week view (bmo#1922944)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1731153600">- Mozilla Thunderbird 128.4.3
  Fixes:
  * Folder corruption could cause Thunderbird to freeze and become unusable
  * Message corruption could be propagated when reading mbox
  * Folder compaction was not abandoned on shutdown
  * Folder compaction did not clean up on failure
  * Collapsed NNTP thread incorrectly indicated there were unread messages
  * Navigating to next unread message did not wait for all messages
    to be loaded
  * Applying column view to folder and children could break if folder
    error occurred
  * Remote content notifications were broken with encrypted messages
  * Updating criteria of a saved search resulted in poor search performance
  * Drop-downs may not work in some places
  MFSA 2024-61
  * CVE-2024-11159 (bmo#1925929)
    Potential disclosure of plaintext in OpenPGP encrypted message
- remove kmozillahelper support (boo#1226112)
  * removed mozilla-kde.patch
  * requires xdg-desktop-portal instead</changelog>
</package>
<package pkgid="131d5d05f1d76d68143a4e1c70a0139c50413574eb47d8d3878afc24a28f5b03afa0aee73367ae9fb8800050e1a610472eb7db1bc7dfb5ac811462af01896744" name="MozillaThunderbird-openpgp-librnp" arch="x86_64">
  <version epoch="0" ver="128.4.4" rel="1.1"/>
  <changelog author="Manfred Hollstein &lt;manfred.h@gmx.net&gt;" date="1710936000">- LLVM18 breaks building Thunderbird on Tumbleweed; add
  * mozilla-fix-issues-with-llvm18.patch</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1713096000">- Mozilla Thunderbird 115.10.0
  https://www.thunderbird.net/en-US/thunderbird/115.10.0/releasenotes/
  MFSA 2024-20 (bsc#1222535)
  * CVE-2024-3852 (bmo#1883542)
    GetBoundName in the JIT returned the wrong object
  * CVE-2024-3854 (bmo#1884552)
    Out-of-bounds-read after mis-optimized switch statement
  * CVE-2024-3857 (bmo#1886683)
    Incorrect JITting of arguments led to use-after-free during
    garbage collection
  * CVE-2024-2609 (bmo#1866100)
    Permission prompt input delay could expire when not in focus
  * CVE-2024-3859 (bmo#1874489)
    Integer-overflow led to out-of-bounds-read in the OpenType sanitizer
  * CVE-2024-3861 (bmo#1883158)
    Potential use-after-free due to AlignedBuffer self-move
  * CVE-2024-3863 (bmo#1885855)
    Download Protections were bypassed by .xrm-ms files on Windows
  * CVE-2024-3302 (bmo#1881183)
    Denial of Service using HTTP/2 CONTINUATION frames
  * CVE-2024-3864 (bmo#1888333)
    Memory safety bug fixed in Firefox 125, Firefox ESR 115.10,
    and Thunderbird 115.10</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1713528000">- Mozilla Thunderbird 115.10.1
  https://www.thunderbird.net/en-US/thunderbird/115.10.1/releasenotes/
  * fixed hangup introduced with 115.10.0 (bmo#1891889)</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1714824000">- Mozilla Thunderbird 115.10.2:
  https://www.thunderbird.net/en-US/thunderbird/115.10.2/releasenotes/
  This release is identical to 115.10.1, other than changing the
  Update channel for self-updating builds to ESR. (bmo#1893271)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1715688000">- Mozilla Thunderbird 115.11.0
  MFSA 2024-23 (bsc#1224056)
  * CVE-2024-4367 (bmo#1893645)
    Arbitrary JavaScript execution in PDF.js
  * CVE-2024-4767 (bmo#1878577)
    IndexedDB files retained in private browsing mode
  * CVE-2024-4768 (bmo#1886082)
    Potential permissions request bypass via clickjacking
  * CVE-2024-4769 (bmo#1886108)
    Cross-origin responses could be distinguished between script
    and non-script content-types
  * CVE-2024-4770 (bmo#1893270)
    Use-after-free could occur when printing to PDF
  * CVE-2024-4777 (bmo#1878199, bmo#1893340)
    Memory safety bugs fixed in Firefox 126, Firefox ESR 115.11,
    and Thunderbird 115.11</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1716984000">- Mozilla Thunderbird 115.11.1
  * Added a short anonymous survey that a small number of users will
    be randomly asked to complete</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1718625600">- Mozilla Thunderbird 115.12.0
  https://www.thunderbird.net/en-US/thunderbird/115.12.0/releasenotes
  MFSA 2024-28 (bsc#1226027)
  * CVE-2024-5702 (bmo#1193389)
    Use-after-free in networking
  * CVE-2024-5688 (bmo#1895086)
    Use-after-free in JavaScript object transplant
  * CVE-2024-5690 (bmo#1883693)
    External protocol handlers leaked by timing attack
  * CVE-2024-5691 (bmo#1888695)
    Sandboxed iframes were able to bypass sandbox restrictions to
    open a new window
  * CVE-2024-5692 (bmo#1891234)
    Bypass of file name restrictions during saving
  * CVE-2024-5693 (bmo#1891319)
    Cross-Origin Image leak via Offscreen Canvas
  * CVE-2024-5696 (bmo#1896555)
    Memory Corruption in Text Fragments
  * CVE-2024-5700 (bmo#1862809, bmo#1889355, bmo#1893388, bmo#1895123)
    Memory safety bugs fixed in Firefox 127, Firefox ESR 115.12,
    and Thunderbird 115.12</changelog>
  <changelog author="Martin Sirringhaus &lt;martin.sirringhaus@suse.com&gt;" date="1719921600">- Mozilla Thunderbird 115.12.2
  * fixed: Annual Thunderbird Beta appeal intended for
    Thunderbird 115.12.0 did not open as expected (bmo#1898084)
- Mozilla Thunderbird 115.12.1
  * 115.12.0 got pulled because of upstream automation process errors
    and Windows installer signing changes.
    No code changes, changelog is the same as 115.12.0 (bsc#1226495)
- Added thunderbird-fix-CVE-2024-34703.patch (bsc#1227239)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1720612800">- Mozilla Thunderbird 115.13.0
  * After starting Thunderbird, the message list position was
    sometimes set to an incorrect position
  MFSA 2024-30 (bsc#1226316)
  * CVE-2024-6600 (bmo#1888340)
    Memory corruption in WebGL API
  * CVE-2024-6601 (bmo#1890748)
    Race condition in permission assignment
  * CVE-2024-6602 (bmo#1895032)
    Memory corruption in NSS
  * CVE-2024-6603 (bmo#1895081)
    Memory corruption in thread creation
  * CVE-2024-6604 (bmo#1748105, bmo#1837550, bmo#1884266)
    Memory safety bugs fixed in Firefox 128, Firefox ESR 115.13,
    and Thunderbird 115.13</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1722600000">- Mozilla Thunderbird 115.14.0
  * When using an external installation of GnuPG, Thunderbird
    occassionally sent/received corrupted messages (bmo#1898832)
  * Users of external GnuPG were unable to decrypt incorrectly
    encoded messages (bmo#1906903)
  MFSA 2024-38 (bsc#1228648)
  * CVE-2024-7519 (bmo#1902307)
    Out of bounds memory access in graphics shared memory handling
  * CVE-2024-7521 (bmo#1904644)
    Incomplete WebAssembly exception handing
  * CVE-2024-7522 (bmo#1906727)
    Out of bounds read in editor component
  * CVE-2024-7525 (bmo#1909298)
    Missing permission check when creating a StreamFilter
  * CVE-2024-7526 (bmo#1910306)
    Uninitialized memory used by WebGL
  * CVE-2024-7527 (bmo#1871303)
    Use-after-free in JavaScript garbage collection
  * CVE-2024-7529 (bmo#1903187)
    Document content could partially obscure security prompts</changelog>
  <changelog author="Manfred Hollstein &lt;manfred.h@gmx.net&gt;" date="1724932800">- Use gcc13 on Tumbleweed and where it is available.
- Don't use gcc14 as sources don't compile.</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1725624000">- Mozilla Thunderbird 115.15.0
  MFSA 2024-44 (bsc#1229821)
  * CVE-2024-8381 (bmo#1912715)
    Type confusion when looking up a property name in a "with"
    block
  * CVE-2024-8382 (bmo#1906744)
    Internal event interfaces were exposed to web content when
    browser EventHandler listener callbacks ran
  * CVE-2024-8384 (bmo#1911288)
    Garbage collection could mis-color cross-compartment objects
    in OOM conditions</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1728561600">- Mozilla Thunderbird 128.3.1
  https://www.thunderbird.net/en-US/thunderbird/128.0esr/releasenotes/
  and following release notes for minor version updates
  MFSA 2024-52  (bsc#1231413)
  * CVE-2024-9680 (bmo#1923344)
    Use-after-free in Animation timeline
  Mozilla Thunderbird 128.3.0
  MFSA 2024-32 (128.0)
  MFSA 2024-37 (128.1)
  MFSA 2024-43 (128.2)
  MFSA 2024-49 (128.3) (bsc#1230979)
  * CVE-2024-9392 (bmo#1899154, bmo#1905843)
    Compromised content process can bypass site isolation
  * CVE-2024-9393 (bmo#1918301)
    Cross-origin access to PDF contents through multipart responses
  * CVE-2024-9394 (bmo#1918874)
    Cross-origin access to JSON contents through multipart responses
  * CVE-2024-8900 (bmo#1872841)
    Clipboard write permission bypass
  * CVE-2024-9396 (bmo#1912471)
    Potential memory corruption may occur when cloning certain objects
  * CVE-2024-9397 (bmo#1916659)
    Potential directory upload bypass via clickjacking
  * CVE-2024-9398 (bmo#1881037)
    External protocol handlers could be enumerated via popups
  * CVE-2024-9399 (bmo#1907726)
    Specially crafted WebTransport requests could lead to denial
    of service
  * CVE-2024-9400 (bmo#1915249)
    Potential memory corruption during JIT compilation
  * CVE-2024-9401 (bmo#1872744, bmo#1897792, bmo#1911317, bmo#1916476)
    Memory safety bugs fixed in Firefox 131, Firefox ESR 115.16,
    Firefox ESR 128.3, Thunderbird 131, and Thunderbird 128.3
  * CVE-2024-9402 (bmo#1872744, bmo#1897792, bmo#1911317, bmo#1913445,
    bmo#1914106, bmo#1914475, bmo#1914963, bmo#1915008, bmo#1916476)
    Memory safety bugs fixed in Firefox 131, Firefox ESR 128.3,
    Thunderbird 131, and Thunderbird 128.3
- removed obsolete patches
  mozilla-bmo1504834-part3.patch
  mozilla-bmo1512162.patch
  mozilla-bmo1775202.patch
  mozilla-bmo531915.patch
  mozilla-fix-aarch64-libopus.patch
  mozilla-fix-issues-with-llvm18.patch
  mozilla-fix-top-level-asm.patch
  mozilla-partial-revert-1768632.patch
  mozilla-rust-disable-future-incompat.patch
  thunderbird-fix-CVE-2024-34703.patch
- new patch thunderbird-silence-no-return.patch
- rebased
  mozilla-bmo1504834-part1.patch
  mozilla-kde.patch
  mozilla-libavcodec58_91.patch
  mozilla-silence-no-return-type.patch</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1729080000">- Mozilla Thunderbird 128.3.2
  bugfix release:
  https://www.thunderbird.net/en-US/thunderbird/128.3.2esr/releasenotes
- bring back mozilla-bmo531915.patch to fix x86</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1729684800">- Mozilla Thunderbird 128.3.3
  * Files left over from failed folder compactions could use up
    disk space (bmo#1878541)
  * Message list returned to selected message after action on
    another message (bmo#1917485)
  * Some faulty messages were downloaded and never stored
    (bmo#1923765)
  * Messages could become corrupted during folder compaction
    (bmo#1923747,bmo#1923541,bmo#1720047)
  * Searching events by Location, Description, or URL failed
    (bmo#1912710)
  * "Remove All Shown" saved passwords deleted all logins if
    filtered without results (bmo#601447)
  * Calendar event updates were not always sent to attendees
    (bmo#1877640)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1730289600">- Mozilla Thunderbird 128.4.0
  * Export Thunderbird account settings to Thunderbird Mobile via QRCode
  Bugfixes:
  * Unable to send an unencrypted response to an OpenPGP encrypted message
  MFSA 2024-58 (bsc#1231879)
  * CVE-2024-10458 (bmo#1921733)
    Permission leak via embed or object elements
  * CVE-2024-10459 (bmo#1919087)
    Use-after-free in layout with accessibility
  * CVE-2024-10460 (bmo#1912537)
    Confusing display of origin for external protocol handler prompt
  * CVE-2024-10461 (bmo#1914521)
    XSS due to Content-Disposition being ignored in
    multipart/x-mixed-replace response
  * CVE-2024-10462 (bmo#1920423)
    Origin of permission prompt could be spoofed by long URL
  * CVE-2024-10463 (bmo#1920800)
    Cross origin video frame leak
  * CVE-2024-10464 (bmo#1913000)
    History interface could have been used to cause a Denial of
    Service condition in the browser
  * CVE-2024-10465 (bmo#1918853)
    Clipboard "paste" button persisted across tabs
  * CVE-2024-10466 (bmo#1924154)
    DOM push subscription message could hang Firefox
  * CVE-2024-10467 (bmo#1829029, bmo#1888538, bmo#1900394, bmo#1904059,
    bmo#1917742, bmo#1919809, bmo#1923706)
    Memory safety bugs fixed in Firefox 132, Thunderbird 132,
    Firefox ESR 128.4, and Thunderbird 128.4</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1730548800">- Mozilla Thunderbird 128.4.1
  * Add the 20 year donation appeal (bmo#192538)</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1730894400">- Mozilla Thunderbird 128.4.2
  * Increased the auto-compaction threshold to reduce the frequency
    of compaction (bmo#1927656)
  * fixed: New profile creation caused console errors (bmo#1912675)
  * fixed: Repair folder could result in older messages showing
    wrong date and time (bmo#1911916)
  * fixed: Recently deleted messages could become undeleted if
    message compaction failed (bmo#1924927)
  * fixed: Visual and UX improvements
    (bmo#1857413,bmo#1922934,bmo#1924437)
  * fixed: Clicking on an HTML button could cause Thunderbird to
    freeze (bmo#1879355)
  * fixed: Messages could not be selected for dragging
    (bmo#1887518)
  * fixed: Could not open attached file in a MIME encrypted
    message (bmo#1924637)
  * fixed: Account creation "Setup Documentation" link was broken
    (bmo#1925493)
  * fixed: Unable to generate QR codes when exporting to mobile
    in some cases (bmo#1928114)
  * fixed: Operating system reauthentication was missing when
    exporting QR codes for mobile (bmo#1928232)
  * fixed: Could not drag all-day events from one day to another
    in week view (bmo#1922944)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1731153600">- Mozilla Thunderbird 128.4.3
  Fixes:
  * Folder corruption could cause Thunderbird to freeze and become unusable
  * Message corruption could be propagated when reading mbox
  * Folder compaction was not abandoned on shutdown
  * Folder compaction did not clean up on failure
  * Collapsed NNTP thread incorrectly indicated there were unread messages
  * Navigating to next unread message did not wait for all messages
    to be loaded
  * Applying column view to folder and children could break if folder
    error occurred
  * Remote content notifications were broken with encrypted messages
  * Updating criteria of a saved search resulted in poor search performance
  * Drop-downs may not work in some places
  MFSA 2024-61
  * CVE-2024-11159 (bmo#1925929)
    Potential disclosure of plaintext in OpenPGP encrypted message
- remove kmozillahelper support (boo#1226112)
  * removed mozilla-kde.patch
  * requires xdg-desktop-portal instead</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1732104000">- Mozilla Thunderbird 128.4.4
  * QR codes were not scannable by Android app when using most
    high-contrast themes
  * Primary password prompt cancellation during mobile export was
    confusing
- revert using xdg-desktop-portal as some desktops have limited
  support</changelog>
</package>
<package pkgid="120560b4892ed79ef4bc6b7899a554a404b4d816e09c07fba39f4616b551c5a0e4ab9e7dbaed70dc2c2e8d066aa15b0cd228dab8963a1c6ed35a70d3d62acc3d" name="MozillaThunderbird-openpgp-librnp" arch="x86_64">
  <version epoch="0" ver="128.5.0" rel="1.0.8.1.sr20241103"/>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1713096000">- Mozilla Thunderbird 115.10.0
  https://www.thunderbird.net/en-US/thunderbird/115.10.0/releasenotes/
  MFSA 2024-20 (bsc#1222535)
  * CVE-2024-3852 (bmo#1883542)
    GetBoundName in the JIT returned the wrong object
  * CVE-2024-3854 (bmo#1884552)
    Out-of-bounds-read after mis-optimized switch statement
  * CVE-2024-3857 (bmo#1886683)
    Incorrect JITting of arguments led to use-after-free during
    garbage collection
  * CVE-2024-2609 (bmo#1866100)
    Permission prompt input delay could expire when not in focus
  * CVE-2024-3859 (bmo#1874489)
    Integer-overflow led to out-of-bounds-read in the OpenType sanitizer
  * CVE-2024-3861 (bmo#1883158)
    Potential use-after-free due to AlignedBuffer self-move
  * CVE-2024-3863 (bmo#1885855)
    Download Protections were bypassed by .xrm-ms files on Windows
  * CVE-2024-3302 (bmo#1881183)
    Denial of Service using HTTP/2 CONTINUATION frames
  * CVE-2024-3864 (bmo#1888333)
    Memory safety bug fixed in Firefox 125, Firefox ESR 115.10,
    and Thunderbird 115.10</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1713528000">- Mozilla Thunderbird 115.10.1
  https://www.thunderbird.net/en-US/thunderbird/115.10.1/releasenotes/
  * fixed hangup introduced with 115.10.0 (bmo#1891889)</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1714824000">- Mozilla Thunderbird 115.10.2:
  https://www.thunderbird.net/en-US/thunderbird/115.10.2/releasenotes/
  This release is identical to 115.10.1, other than changing the
  Update channel for self-updating builds to ESR. (bmo#1893271)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1715688000">- Mozilla Thunderbird 115.11.0
  MFSA 2024-23 (bsc#1224056)
  * CVE-2024-4367 (bmo#1893645)
    Arbitrary JavaScript execution in PDF.js
  * CVE-2024-4767 (bmo#1878577)
    IndexedDB files retained in private browsing mode
  * CVE-2024-4768 (bmo#1886082)
    Potential permissions request bypass via clickjacking
  * CVE-2024-4769 (bmo#1886108)
    Cross-origin responses could be distinguished between script
    and non-script content-types
  * CVE-2024-4770 (bmo#1893270)
    Use-after-free could occur when printing to PDF
  * CVE-2024-4777 (bmo#1878199, bmo#1893340)
    Memory safety bugs fixed in Firefox 126, Firefox ESR 115.11,
    and Thunderbird 115.11</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1716984000">- Mozilla Thunderbird 115.11.1
  * Added a short anonymous survey that a small number of users will
    be randomly asked to complete</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1718625600">- Mozilla Thunderbird 115.12.0
  https://www.thunderbird.net/en-US/thunderbird/115.12.0/releasenotes
  MFSA 2024-28 (bsc#1226027)
  * CVE-2024-5702 (bmo#1193389)
    Use-after-free in networking
  * CVE-2024-5688 (bmo#1895086)
    Use-after-free in JavaScript object transplant
  * CVE-2024-5690 (bmo#1883693)
    External protocol handlers leaked by timing attack
  * CVE-2024-5691 (bmo#1888695)
    Sandboxed iframes were able to bypass sandbox restrictions to
    open a new window
  * CVE-2024-5692 (bmo#1891234)
    Bypass of file name restrictions during saving
  * CVE-2024-5693 (bmo#1891319)
    Cross-Origin Image leak via Offscreen Canvas
  * CVE-2024-5696 (bmo#1896555)
    Memory Corruption in Text Fragments
  * CVE-2024-5700 (bmo#1862809, bmo#1889355, bmo#1893388, bmo#1895123)
    Memory safety bugs fixed in Firefox 127, Firefox ESR 115.12,
    and Thunderbird 115.12</changelog>
  <changelog author="Martin Sirringhaus &lt;martin.sirringhaus@suse.com&gt;" date="1719921600">- Mozilla Thunderbird 115.12.2
  * fixed: Annual Thunderbird Beta appeal intended for
    Thunderbird 115.12.0 did not open as expected (bmo#1898084)
- Mozilla Thunderbird 115.12.1
  * 115.12.0 got pulled because of upstream automation process errors
    and Windows installer signing changes.
    No code changes, changelog is the same as 115.12.0 (bsc#1226495)
- Added thunderbird-fix-CVE-2024-34703.patch (bsc#1227239)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1720612800">- Mozilla Thunderbird 115.13.0
  * After starting Thunderbird, the message list position was
    sometimes set to an incorrect position
  MFSA 2024-30 (bsc#1226316)
  * CVE-2024-6600 (bmo#1888340)
    Memory corruption in WebGL API
  * CVE-2024-6601 (bmo#1890748)
    Race condition in permission assignment
  * CVE-2024-6602 (bmo#1895032)
    Memory corruption in NSS
  * CVE-2024-6603 (bmo#1895081)
    Memory corruption in thread creation
  * CVE-2024-6604 (bmo#1748105, bmo#1837550, bmo#1884266)
    Memory safety bugs fixed in Firefox 128, Firefox ESR 115.13,
    and Thunderbird 115.13</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1722600000">- Mozilla Thunderbird 115.14.0
  * When using an external installation of GnuPG, Thunderbird
    occassionally sent/received corrupted messages (bmo#1898832)
  * Users of external GnuPG were unable to decrypt incorrectly
    encoded messages (bmo#1906903)
  MFSA 2024-38 (bsc#1228648)
  * CVE-2024-7519 (bmo#1902307)
    Out of bounds memory access in graphics shared memory handling
  * CVE-2024-7521 (bmo#1904644)
    Incomplete WebAssembly exception handing
  * CVE-2024-7522 (bmo#1906727)
    Out of bounds read in editor component
  * CVE-2024-7525 (bmo#1909298)
    Missing permission check when creating a StreamFilter
  * CVE-2024-7526 (bmo#1910306)
    Uninitialized memory used by WebGL
  * CVE-2024-7527 (bmo#1871303)
    Use-after-free in JavaScript garbage collection
  * CVE-2024-7529 (bmo#1903187)
    Document content could partially obscure security prompts</changelog>
  <changelog author="Manfred Hollstein &lt;manfred.h@gmx.net&gt;" date="1724932800">- Use gcc13 on Tumbleweed and where it is available.
- Don't use gcc14 as sources don't compile.</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1725624000">- Mozilla Thunderbird 115.15.0
  MFSA 2024-44 (bsc#1229821)
  * CVE-2024-8381 (bmo#1912715)
    Type confusion when looking up a property name in a "with"
    block
  * CVE-2024-8382 (bmo#1906744)
    Internal event interfaces were exposed to web content when
    browser EventHandler listener callbacks ran
  * CVE-2024-8384 (bmo#1911288)
    Garbage collection could mis-color cross-compartment objects
    in OOM conditions</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1728561600">- Mozilla Thunderbird 128.3.1
  https://www.thunderbird.net/en-US/thunderbird/128.0esr/releasenotes/
  and following release notes for minor version updates
  MFSA 2024-52  (bsc#1231413)
  * CVE-2024-9680 (bmo#1923344)
    Use-after-free in Animation timeline
  Mozilla Thunderbird 128.3.0
  MFSA 2024-32 (128.0)
  MFSA 2024-37 (128.1)
  MFSA 2024-43 (128.2)
  MFSA 2024-49 (128.3) (bsc#1230979)
  * CVE-2024-9392 (bmo#1899154, bmo#1905843)
    Compromised content process can bypass site isolation
  * CVE-2024-9393 (bmo#1918301)
    Cross-origin access to PDF contents through multipart responses
  * CVE-2024-9394 (bmo#1918874)
    Cross-origin access to JSON contents through multipart responses
  * CVE-2024-8900 (bmo#1872841)
    Clipboard write permission bypass
  * CVE-2024-9396 (bmo#1912471)
    Potential memory corruption may occur when cloning certain objects
  * CVE-2024-9397 (bmo#1916659)
    Potential directory upload bypass via clickjacking
  * CVE-2024-9398 (bmo#1881037)
    External protocol handlers could be enumerated via popups
  * CVE-2024-9399 (bmo#1907726)
    Specially crafted WebTransport requests could lead to denial
    of service
  * CVE-2024-9400 (bmo#1915249)
    Potential memory corruption during JIT compilation
  * CVE-2024-9401 (bmo#1872744, bmo#1897792, bmo#1911317, bmo#1916476)
    Memory safety bugs fixed in Firefox 131, Firefox ESR 115.16,
    Firefox ESR 128.3, Thunderbird 131, and Thunderbird 128.3
  * CVE-2024-9402 (bmo#1872744, bmo#1897792, bmo#1911317, bmo#1913445,
    bmo#1914106, bmo#1914475, bmo#1914963, bmo#1915008, bmo#1916476)
    Memory safety bugs fixed in Firefox 131, Firefox ESR 128.3,
    Thunderbird 131, and Thunderbird 128.3
- removed obsolete patches
  mozilla-bmo1504834-part3.patch
  mozilla-bmo1512162.patch
  mozilla-bmo1775202.patch
  mozilla-bmo531915.patch
  mozilla-fix-aarch64-libopus.patch
  mozilla-fix-issues-with-llvm18.patch
  mozilla-fix-top-level-asm.patch
  mozilla-partial-revert-1768632.patch
  mozilla-rust-disable-future-incompat.patch
  thunderbird-fix-CVE-2024-34703.patch
- new patch thunderbird-silence-no-return.patch
- rebased
  mozilla-bmo1504834-part1.patch
  mozilla-kde.patch
  mozilla-libavcodec58_91.patch
  mozilla-silence-no-return-type.patch</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1729080000">- Mozilla Thunderbird 128.3.2
  bugfix release:
  https://www.thunderbird.net/en-US/thunderbird/128.3.2esr/releasenotes
- bring back mozilla-bmo531915.patch to fix x86</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1729684800">- Mozilla Thunderbird 128.3.3
  * Files left over from failed folder compactions could use up
    disk space (bmo#1878541)
  * Message list returned to selected message after action on
    another message (bmo#1917485)
  * Some faulty messages were downloaded and never stored
    (bmo#1923765)
  * Messages could become corrupted during folder compaction
    (bmo#1923747,bmo#1923541,bmo#1720047)
  * Searching events by Location, Description, or URL failed
    (bmo#1912710)
  * "Remove All Shown" saved passwords deleted all logins if
    filtered without results (bmo#601447)
  * Calendar event updates were not always sent to attendees
    (bmo#1877640)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1730289600">- Mozilla Thunderbird 128.4.0
  * Export Thunderbird account settings to Thunderbird Mobile via QRCode
  Bugfixes:
  * Unable to send an unencrypted response to an OpenPGP encrypted message
  MFSA 2024-58 (bsc#1231879)
  * CVE-2024-10458 (bmo#1921733)
    Permission leak via embed or object elements
  * CVE-2024-10459 (bmo#1919087)
    Use-after-free in layout with accessibility
  * CVE-2024-10460 (bmo#1912537)
    Confusing display of origin for external protocol handler prompt
  * CVE-2024-10461 (bmo#1914521)
    XSS due to Content-Disposition being ignored in
    multipart/x-mixed-replace response
  * CVE-2024-10462 (bmo#1920423)
    Origin of permission prompt could be spoofed by long URL
  * CVE-2024-10463 (bmo#1920800)
    Cross origin video frame leak
  * CVE-2024-10464 (bmo#1913000)
    History interface could have been used to cause a Denial of
    Service condition in the browser
  * CVE-2024-10465 (bmo#1918853)
    Clipboard "paste" button persisted across tabs
  * CVE-2024-10466 (bmo#1924154)
    DOM push subscription message could hang Firefox
  * CVE-2024-10467 (bmo#1829029, bmo#1888538, bmo#1900394, bmo#1904059,
    bmo#1917742, bmo#1919809, bmo#1923706)
    Memory safety bugs fixed in Firefox 132, Thunderbird 132,
    Firefox ESR 128.4, and Thunderbird 128.4</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1730548800">- Mozilla Thunderbird 128.4.1
  * Add the 20 year donation appeal (bmo#192538)</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1730894400">- Mozilla Thunderbird 128.4.2
  * Increased the auto-compaction threshold to reduce the frequency
    of compaction (bmo#1927656)
  * fixed: New profile creation caused console errors (bmo#1912675)
  * fixed: Repair folder could result in older messages showing
    wrong date and time (bmo#1911916)
  * fixed: Recently deleted messages could become undeleted if
    message compaction failed (bmo#1924927)
  * fixed: Visual and UX improvements
    (bmo#1857413,bmo#1922934,bmo#1924437)
  * fixed: Clicking on an HTML button could cause Thunderbird to
    freeze (bmo#1879355)
  * fixed: Messages could not be selected for dragging
    (bmo#1887518)
  * fixed: Could not open attached file in a MIME encrypted
    message (bmo#1924637)
  * fixed: Account creation "Setup Documentation" link was broken
    (bmo#1925493)
  * fixed: Unable to generate QR codes when exporting to mobile
    in some cases (bmo#1928114)
  * fixed: Operating system reauthentication was missing when
    exporting QR codes for mobile (bmo#1928232)
  * fixed: Could not drag all-day events from one day to another
    in week view (bmo#1922944)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1731153600">- Mozilla Thunderbird 128.4.3
  Fixes:
  * Folder corruption could cause Thunderbird to freeze and become unusable
  * Message corruption could be propagated when reading mbox
  * Folder compaction was not abandoned on shutdown
  * Folder compaction did not clean up on failure
  * Collapsed NNTP thread incorrectly indicated there were unread messages
  * Navigating to next unread message did not wait for all messages
    to be loaded
  * Applying column view to folder and children could break if folder
    error occurred
  * Remote content notifications were broken with encrypted messages
  * Updating criteria of a saved search resulted in poor search performance
  * Drop-downs may not work in some places
  MFSA 2024-61
  * CVE-2024-11159 (bmo#1925929)
    Potential disclosure of plaintext in OpenPGP encrypted message
- remove kmozillahelper support (boo#1226112)
  * removed mozilla-kde.patch
  * requires xdg-desktop-portal instead</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1732104000">- Mozilla Thunderbird 128.4.4
  * QR codes were not scannable by Android app when using most
    high-contrast themes
  * Primary password prompt cancellation during mobile export was
    confusing
- revert using xdg-desktop-portal as some desktops have limited
  support</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1732622400">- Mozilla Thunderbird 128.5.0
  * IMAP could crash when reading cached messages
  * Enabling "Show Folder Size" on Maildir profile could render
    Thunderbird unusable
  * Messages corrupted by folder compaction were only fixed by user
    intervention
  * Reading a message from past the end of an mbox file did not
    cause an error
  * View -&gt; Folders had duplicate F access keys
  * Add-ons adding columns to the message list could fail and cause
    display issue
  * "Empty trash on exit" and "Expunge inbox on exit" did not
    always work
  * Selecting a display option in View -&gt; Tasks did not apply in
    the Task interface
  MFSA 2024-68 (bsc#1233695)
  * CVE-2024-11691 (bmo#1914707, bmo#1924184)
    Memory corruption in Apple GPU drivers
  * CVE-2024-11692 (bmo#1909535)
    Select list elements could be shown over another site
  * CVE-2024-11693 (bmo#1921458)
    Download Protections were bypassed by .library-ms files on Windows
  * CVE-2024-11694 (bmo#1924167)
    CSP Bypass and XSS Exposure via Web Compatibility Shims
  * CVE-2024-11695 (bmo#1925496)
    URL Bar Spoofing via Manipulated Punycode and Whitespace Characters
  * CVE-2024-11696 (bmo#1929600)
    Unhandled Exception in Add-on Signature Verification
  * CVE-2024-11697 (bmo#1842187)
    Improper Keypress Handling in Executable File Confirmation Dialog
  * CVE-2024-11698 (bmo#1916152)
    Fullscreen Lock-Up When Modal Dialog Interrupts Transition on macOS
  * CVE-2024-11699 (bmo#1880582, bmo#1929911)
    Memory safety bugs fixed in Firefox 133, Thunderbird 133,
    Firefox ESR 128.5, and Thunderbird 128.5
- appid is thunderbird-esr currently; use the matching desktop
  file name (boo#1233650)</changelog>
</package>
<package pkgid="d6b9cfbaaed9033d1378ead40b3ef803d40354287961ea6adaa75bb59239683da329bdf7181efd88c42b8714e341a61c0198ef795554c35a826642f3a255addb" name="MozillaThunderbird-openpgp-librnp" arch="x86_64">
  <version epoch="0" ver="128.5.1" rel="1.0.10.1.sr20241103"/>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1714824000">- Mozilla Thunderbird 115.10.2:
  https://www.thunderbird.net/en-US/thunderbird/115.10.2/releasenotes/
  This release is identical to 115.10.1, other than changing the
  Update channel for self-updating builds to ESR. (bmo#1893271)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1715688000">- Mozilla Thunderbird 115.11.0
  MFSA 2024-23 (bsc#1224056)
  * CVE-2024-4367 (bmo#1893645)
    Arbitrary JavaScript execution in PDF.js
  * CVE-2024-4767 (bmo#1878577)
    IndexedDB files retained in private browsing mode
  * CVE-2024-4768 (bmo#1886082)
    Potential permissions request bypass via clickjacking
  * CVE-2024-4769 (bmo#1886108)
    Cross-origin responses could be distinguished between script
    and non-script content-types
  * CVE-2024-4770 (bmo#1893270)
    Use-after-free could occur when printing to PDF
  * CVE-2024-4777 (bmo#1878199, bmo#1893340)
    Memory safety bugs fixed in Firefox 126, Firefox ESR 115.11,
    and Thunderbird 115.11</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1716984000">- Mozilla Thunderbird 115.11.1
  * Added a short anonymous survey that a small number of users will
    be randomly asked to complete</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1718625600">- Mozilla Thunderbird 115.12.0
  https://www.thunderbird.net/en-US/thunderbird/115.12.0/releasenotes
  MFSA 2024-28 (bsc#1226027)
  * CVE-2024-5702 (bmo#1193389)
    Use-after-free in networking
  * CVE-2024-5688 (bmo#1895086)
    Use-after-free in JavaScript object transplant
  * CVE-2024-5690 (bmo#1883693)
    External protocol handlers leaked by timing attack
  * CVE-2024-5691 (bmo#1888695)
    Sandboxed iframes were able to bypass sandbox restrictions to
    open a new window
  * CVE-2024-5692 (bmo#1891234)
    Bypass of file name restrictions during saving
  * CVE-2024-5693 (bmo#1891319)
    Cross-Origin Image leak via Offscreen Canvas
  * CVE-2024-5696 (bmo#1896555)
    Memory Corruption in Text Fragments
  * CVE-2024-5700 (bmo#1862809, bmo#1889355, bmo#1893388, bmo#1895123)
    Memory safety bugs fixed in Firefox 127, Firefox ESR 115.12,
    and Thunderbird 115.12</changelog>
  <changelog author="Martin Sirringhaus &lt;martin.sirringhaus@suse.com&gt;" date="1719921600">- Mozilla Thunderbird 115.12.2
  * fixed: Annual Thunderbird Beta appeal intended for
    Thunderbird 115.12.0 did not open as expected (bmo#1898084)
- Mozilla Thunderbird 115.12.1
  * 115.12.0 got pulled because of upstream automation process errors
    and Windows installer signing changes.
    No code changes, changelog is the same as 115.12.0 (bsc#1226495)
- Added thunderbird-fix-CVE-2024-34703.patch (bsc#1227239)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1720612800">- Mozilla Thunderbird 115.13.0
  * After starting Thunderbird, the message list position was
    sometimes set to an incorrect position
  MFSA 2024-30 (bsc#1226316)
  * CVE-2024-6600 (bmo#1888340)
    Memory corruption in WebGL API
  * CVE-2024-6601 (bmo#1890748)
    Race condition in permission assignment
  * CVE-2024-6602 (bmo#1895032)
    Memory corruption in NSS
  * CVE-2024-6603 (bmo#1895081)
    Memory corruption in thread creation
  * CVE-2024-6604 (bmo#1748105, bmo#1837550, bmo#1884266)
    Memory safety bugs fixed in Firefox 128, Firefox ESR 115.13,
    and Thunderbird 115.13</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1722600000">- Mozilla Thunderbird 115.14.0
  * When using an external installation of GnuPG, Thunderbird
    occassionally sent/received corrupted messages (bmo#1898832)
  * Users of external GnuPG were unable to decrypt incorrectly
    encoded messages (bmo#1906903)
  MFSA 2024-38 (bsc#1228648)
  * CVE-2024-7519 (bmo#1902307)
    Out of bounds memory access in graphics shared memory handling
  * CVE-2024-7521 (bmo#1904644)
    Incomplete WebAssembly exception handing
  * CVE-2024-7522 (bmo#1906727)
    Out of bounds read in editor component
  * CVE-2024-7525 (bmo#1909298)
    Missing permission check when creating a StreamFilter
  * CVE-2024-7526 (bmo#1910306)
    Uninitialized memory used by WebGL
  * CVE-2024-7527 (bmo#1871303)
    Use-after-free in JavaScript garbage collection
  * CVE-2024-7529 (bmo#1903187)
    Document content could partially obscure security prompts</changelog>
  <changelog author="Manfred Hollstein &lt;manfred.h@gmx.net&gt;" date="1724932800">- Use gcc13 on Tumbleweed and where it is available.
- Don't use gcc14 as sources don't compile.</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1725624000">- Mozilla Thunderbird 115.15.0
  MFSA 2024-44 (bsc#1229821)
  * CVE-2024-8381 (bmo#1912715)
    Type confusion when looking up a property name in a "with"
    block
  * CVE-2024-8382 (bmo#1906744)
    Internal event interfaces were exposed to web content when
    browser EventHandler listener callbacks ran
  * CVE-2024-8384 (bmo#1911288)
    Garbage collection could mis-color cross-compartment objects
    in OOM conditions</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1728561600">- Mozilla Thunderbird 128.3.1
  https://www.thunderbird.net/en-US/thunderbird/128.0esr/releasenotes/
  and following release notes for minor version updates
  MFSA 2024-52  (bsc#1231413)
  * CVE-2024-9680 (bmo#1923344)
    Use-after-free in Animation timeline
  Mozilla Thunderbird 128.3.0
  MFSA 2024-32 (128.0)
  MFSA 2024-37 (128.1)
  MFSA 2024-43 (128.2)
  MFSA 2024-49 (128.3) (bsc#1230979)
  * CVE-2024-9392 (bmo#1899154, bmo#1905843)
    Compromised content process can bypass site isolation
  * CVE-2024-9393 (bmo#1918301)
    Cross-origin access to PDF contents through multipart responses
  * CVE-2024-9394 (bmo#1918874)
    Cross-origin access to JSON contents through multipart responses
  * CVE-2024-8900 (bmo#1872841)
    Clipboard write permission bypass
  * CVE-2024-9396 (bmo#1912471)
    Potential memory corruption may occur when cloning certain objects
  * CVE-2024-9397 (bmo#1916659)
    Potential directory upload bypass via clickjacking
  * CVE-2024-9398 (bmo#1881037)
    External protocol handlers could be enumerated via popups
  * CVE-2024-9399 (bmo#1907726)
    Specially crafted WebTransport requests could lead to denial
    of service
  * CVE-2024-9400 (bmo#1915249)
    Potential memory corruption during JIT compilation
  * CVE-2024-9401 (bmo#1872744, bmo#1897792, bmo#1911317, bmo#1916476)
    Memory safety bugs fixed in Firefox 131, Firefox ESR 115.16,
    Firefox ESR 128.3, Thunderbird 131, and Thunderbird 128.3
  * CVE-2024-9402 (bmo#1872744, bmo#1897792, bmo#1911317, bmo#1913445,
    bmo#1914106, bmo#1914475, bmo#1914963, bmo#1915008, bmo#1916476)
    Memory safety bugs fixed in Firefox 131, Firefox ESR 128.3,
    Thunderbird 131, and Thunderbird 128.3
- removed obsolete patches
  mozilla-bmo1504834-part3.patch
  mozilla-bmo1512162.patch
  mozilla-bmo1775202.patch
  mozilla-bmo531915.patch
  mozilla-fix-aarch64-libopus.patch
  mozilla-fix-issues-with-llvm18.patch
  mozilla-fix-top-level-asm.patch
  mozilla-partial-revert-1768632.patch
  mozilla-rust-disable-future-incompat.patch
  thunderbird-fix-CVE-2024-34703.patch
- new patch thunderbird-silence-no-return.patch
- rebased
  mozilla-bmo1504834-part1.patch
  mozilla-kde.patch
  mozilla-libavcodec58_91.patch
  mozilla-silence-no-return-type.patch</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1729080000">- Mozilla Thunderbird 128.3.2
  bugfix release:
  https://www.thunderbird.net/en-US/thunderbird/128.3.2esr/releasenotes
- bring back mozilla-bmo531915.patch to fix x86</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1729684800">- Mozilla Thunderbird 128.3.3
  * Files left over from failed folder compactions could use up
    disk space (bmo#1878541)
  * Message list returned to selected message after action on
    another message (bmo#1917485)
  * Some faulty messages were downloaded and never stored
    (bmo#1923765)
  * Messages could become corrupted during folder compaction
    (bmo#1923747,bmo#1923541,bmo#1720047)
  * Searching events by Location, Description, or URL failed
    (bmo#1912710)
  * "Remove All Shown" saved passwords deleted all logins if
    filtered without results (bmo#601447)
  * Calendar event updates were not always sent to attendees
    (bmo#1877640)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1730289600">- Mozilla Thunderbird 128.4.0
  * Export Thunderbird account settings to Thunderbird Mobile via QRCode
  Bugfixes:
  * Unable to send an unencrypted response to an OpenPGP encrypted message
  MFSA 2024-58 (bsc#1231879)
  * CVE-2024-10458 (bmo#1921733)
    Permission leak via embed or object elements
  * CVE-2024-10459 (bmo#1919087)
    Use-after-free in layout with accessibility
  * CVE-2024-10460 (bmo#1912537)
    Confusing display of origin for external protocol handler prompt
  * CVE-2024-10461 (bmo#1914521)
    XSS due to Content-Disposition being ignored in
    multipart/x-mixed-replace response
  * CVE-2024-10462 (bmo#1920423)
    Origin of permission prompt could be spoofed by long URL
  * CVE-2024-10463 (bmo#1920800)
    Cross origin video frame leak
  * CVE-2024-10464 (bmo#1913000)
    History interface could have been used to cause a Denial of
    Service condition in the browser
  * CVE-2024-10465 (bmo#1918853)
    Clipboard "paste" button persisted across tabs
  * CVE-2024-10466 (bmo#1924154)
    DOM push subscription message could hang Firefox
  * CVE-2024-10467 (bmo#1829029, bmo#1888538, bmo#1900394, bmo#1904059,
    bmo#1917742, bmo#1919809, bmo#1923706)
    Memory safety bugs fixed in Firefox 132, Thunderbird 132,
    Firefox ESR 128.4, and Thunderbird 128.4</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1730548800">- Mozilla Thunderbird 128.4.1
  * Add the 20 year donation appeal (bmo#192538)</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1730894400">- Mozilla Thunderbird 128.4.2
  * Increased the auto-compaction threshold to reduce the frequency
    of compaction (bmo#1927656)
  * fixed: New profile creation caused console errors (bmo#1912675)
  * fixed: Repair folder could result in older messages showing
    wrong date and time (bmo#1911916)
  * fixed: Recently deleted messages could become undeleted if
    message compaction failed (bmo#1924927)
  * fixed: Visual and UX improvements
    (bmo#1857413,bmo#1922934,bmo#1924437)
  * fixed: Clicking on an HTML button could cause Thunderbird to
    freeze (bmo#1879355)
  * fixed: Messages could not be selected for dragging
    (bmo#1887518)
  * fixed: Could not open attached file in a MIME encrypted
    message (bmo#1924637)
  * fixed: Account creation "Setup Documentation" link was broken
    (bmo#1925493)
  * fixed: Unable to generate QR codes when exporting to mobile
    in some cases (bmo#1928114)
  * fixed: Operating system reauthentication was missing when
    exporting QR codes for mobile (bmo#1928232)
  * fixed: Could not drag all-day events from one day to another
    in week view (bmo#1922944)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1731153600">- Mozilla Thunderbird 128.4.3
  Fixes:
  * Folder corruption could cause Thunderbird to freeze and become unusable
  * Message corruption could be propagated when reading mbox
  * Folder compaction was not abandoned on shutdown
  * Folder compaction did not clean up on failure
  * Collapsed NNTP thread incorrectly indicated there were unread messages
  * Navigating to next unread message did not wait for all messages
    to be loaded
  * Applying column view to folder and children could break if folder
    error occurred
  * Remote content notifications were broken with encrypted messages
  * Updating criteria of a saved search resulted in poor search performance
  * Drop-downs may not work in some places
  MFSA 2024-61
  * CVE-2024-11159 (bmo#1925929)
    Potential disclosure of plaintext in OpenPGP encrypted message
- remove kmozillahelper support (boo#1226112)
  * removed mozilla-kde.patch
  * requires xdg-desktop-portal instead</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1732104000">- Mozilla Thunderbird 128.4.4
  * QR codes were not scannable by Android app when using most
    high-contrast themes
  * Primary password prompt cancellation during mobile export was
    confusing
- revert using xdg-desktop-portal as some desktops have limited
  support</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1732622400">- Mozilla Thunderbird 128.5.0
  * IMAP could crash when reading cached messages
  * Enabling "Show Folder Size" on Maildir profile could render
    Thunderbird unusable
  * Messages corrupted by folder compaction were only fixed by user
    intervention
  * Reading a message from past the end of an mbox file did not
    cause an error
  * View -&gt; Folders had duplicate F access keys
  * Add-ons adding columns to the message list could fail and cause
    display issue
  * "Empty trash on exit" and "Expunge inbox on exit" did not
    always work
  * Selecting a display option in View -&gt; Tasks did not apply in
    the Task interface
  MFSA 2024-68 (bsc#1233695)
  * CVE-2024-11691 (bmo#1914707, bmo#1924184)
    Memory corruption in Apple GPU drivers
  * CVE-2024-11692 (bmo#1909535)
    Select list elements could be shown over another site
  * CVE-2024-11693 (bmo#1921458)
    Download Protections were bypassed by .library-ms files on Windows
  * CVE-2024-11694 (bmo#1924167)
    CSP Bypass and XSS Exposure via Web Compatibility Shims
  * CVE-2024-11695 (bmo#1925496)
    URL Bar Spoofing via Manipulated Punycode and Whitespace Characters
  * CVE-2024-11696 (bmo#1929600)
    Unhandled Exception in Add-on Signature Verification
  * CVE-2024-11697 (bmo#1842187)
    Improper Keypress Handling in Executable File Confirmation Dialog
  * CVE-2024-11698 (bmo#1916152)
    Fullscreen Lock-Up When Modal Dialog Interrupts Transition on macOS
  * CVE-2024-11699 (bmo#1880582, bmo#1929911)
    Memory safety bugs fixed in Firefox 133, Thunderbird 133,
    Firefox ESR 128.5, and Thunderbird 128.5
- appid is thunderbird-esr currently; use the matching desktop
  file name (boo#1233650)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1732795200">- make spec compatible with rpm &lt; 4.17 again
- correct appdata for different desktop filename</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1733227200">- Mozilla Thunderbird 128.5.1
  * Add end of year donation appeal
  * Total message count for favorite folders did not work consistently</changelog>
</package>
<package pkgid="25641b888aa8eac3180259fd38921c3a1752b544db934b1ee2c5cb43dd5a663f27a43c5826605eafd0dce187c1b2b2173a202a63a273062273557f6d1dd5ff2b" name="MozillaThunderbird-openpgp-librnp-debuginfo" arch="x86_64">
  <version epoch="0" ver="128.4.2" rel="1.0.2.1.sr20241103"/>
  <changelog author="Adam Mizerski &lt;adam@mizerski.pl&gt;" date="1709640000">- Create subpackage MozillaThunderbird-openpgp-librnp</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1710590400">- Mozilla Thunderbird 115.9.0
  https://www.thunderbird.net/en-US/thunderbird/115.9.0/releasenotes/
  MFSA 2024-14 (bsc#1221327)
  * CVE-2024-0743 (bmo#1867408)
    Crash in NSS TLS method
  * CVE-2024-2605 (bmo#1872920)
    Windows Error Reporter could be used as a Sandbox escape vector
  * CVE-2024-2607 (bmo#1879939)
    JIT code failed to save return registers on Armv7-A
  * CVE-2024-2608 (bmo#1880692)
    Integer overflow could have led to out of bounds write
  * CVE-2024-2616 (bmo#1846197)
    Improve handling of out-of-memory conditions in ICU
  * CVE-2023-5388 (bmo#1780432)
    NSS susceptible to timing attack against RSA decryption
  * CVE-2024-2610 (bmo#1871112)
    Improper handling of html and body tags enabled CSP nonce leakage
  * CVE-2024-2611 (bmo#1876675)
    Clickjacking vulnerability could have led to a user accidentally
    granting permissions
  * CVE-2024-2612 (bmo#1879444)
    Self referencing object could have potentially led to a use-
    after-free
  * CVE-2024-2614 (bmo#1685358, bmo#1861016, bmo#1880405, bmo#1881093)
    Memory safety bugs fixed in Firefox 124, Firefox ESR 115.9,
    and Thunderbird 115.9</changelog>
  <changelog author="Manfred Hollstein &lt;manfred.h@gmx.net&gt;" date="1710936000">- LLVM18 breaks building Thunderbird on Tumbleweed; add
  * mozilla-fix-issues-with-llvm18.patch</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1713096000">- Mozilla Thunderbird 115.10.0
  https://www.thunderbird.net/en-US/thunderbird/115.10.0/releasenotes/
  MFSA 2024-20 (bsc#1222535)
  * CVE-2024-3852 (bmo#1883542)
    GetBoundName in the JIT returned the wrong object
  * CVE-2024-3854 (bmo#1884552)
    Out-of-bounds-read after mis-optimized switch statement
  * CVE-2024-3857 (bmo#1886683)
    Incorrect JITting of arguments led to use-after-free during
    garbage collection
  * CVE-2024-2609 (bmo#1866100)
    Permission prompt input delay could expire when not in focus
  * CVE-2024-3859 (bmo#1874489)
    Integer-overflow led to out-of-bounds-read in the OpenType sanitizer
  * CVE-2024-3861 (bmo#1883158)
    Potential use-after-free due to AlignedBuffer self-move
  * CVE-2024-3863 (bmo#1885855)
    Download Protections were bypassed by .xrm-ms files on Windows
  * CVE-2024-3302 (bmo#1881183)
    Denial of Service using HTTP/2 CONTINUATION frames
  * CVE-2024-3864 (bmo#1888333)
    Memory safety bug fixed in Firefox 125, Firefox ESR 115.10,
    and Thunderbird 115.10</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1713528000">- Mozilla Thunderbird 115.10.1
  https://www.thunderbird.net/en-US/thunderbird/115.10.1/releasenotes/
  * fixed hangup introduced with 115.10.0 (bmo#1891889)</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1714824000">- Mozilla Thunderbird 115.10.2:
  https://www.thunderbird.net/en-US/thunderbird/115.10.2/releasenotes/
  This release is identical to 115.10.1, other than changing the
  Update channel for self-updating builds to ESR. (bmo#1893271)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1715688000">- Mozilla Thunderbird 115.11.0
  MFSA 2024-23 (bsc#1224056)
  * CVE-2024-4367 (bmo#1893645)
    Arbitrary JavaScript execution in PDF.js
  * CVE-2024-4767 (bmo#1878577)
    IndexedDB files retained in private browsing mode
  * CVE-2024-4768 (bmo#1886082)
    Potential permissions request bypass via clickjacking
  * CVE-2024-4769 (bmo#1886108)
    Cross-origin responses could be distinguished between script
    and non-script content-types
  * CVE-2024-4770 (bmo#1893270)
    Use-after-free could occur when printing to PDF
  * CVE-2024-4777 (bmo#1878199, bmo#1893340)
    Memory safety bugs fixed in Firefox 126, Firefox ESR 115.11,
    and Thunderbird 115.11</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1716984000">- Mozilla Thunderbird 115.11.1
  * Added a short anonymous survey that a small number of users will
    be randomly asked to complete</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1718625600">- Mozilla Thunderbird 115.12.0
  https://www.thunderbird.net/en-US/thunderbird/115.12.0/releasenotes
  MFSA 2024-28 (bsc#1226027)
  * CVE-2024-5702 (bmo#1193389)
    Use-after-free in networking
  * CVE-2024-5688 (bmo#1895086)
    Use-after-free in JavaScript object transplant
  * CVE-2024-5690 (bmo#1883693)
    External protocol handlers leaked by timing attack
  * CVE-2024-5691 (bmo#1888695)
    Sandboxed iframes were able to bypass sandbox restrictions to
    open a new window
  * CVE-2024-5692 (bmo#1891234)
    Bypass of file name restrictions during saving
  * CVE-2024-5693 (bmo#1891319)
    Cross-Origin Image leak via Offscreen Canvas
  * CVE-2024-5696 (bmo#1896555)
    Memory Corruption in Text Fragments
  * CVE-2024-5700 (bmo#1862809, bmo#1889355, bmo#1893388, bmo#1895123)
    Memory safety bugs fixed in Firefox 127, Firefox ESR 115.12,
    and Thunderbird 115.12</changelog>
  <changelog author="Martin Sirringhaus &lt;martin.sirringhaus@suse.com&gt;" date="1719921600">- Mozilla Thunderbird 115.12.2
  * fixed: Annual Thunderbird Beta appeal intended for
    Thunderbird 115.12.0 did not open as expected (bmo#1898084)
- Mozilla Thunderbird 115.12.1
  * 115.12.0 got pulled because of upstream automation process errors
    and Windows installer signing changes.
    No code changes, changelog is the same as 115.12.0 (bsc#1226495)
- Added thunderbird-fix-CVE-2024-34703.patch (bsc#1227239)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1720612800">- Mozilla Thunderbird 115.13.0
  * After starting Thunderbird, the message list position was
    sometimes set to an incorrect position
  MFSA 2024-30 (bsc#1226316)
  * CVE-2024-6600 (bmo#1888340)
    Memory corruption in WebGL API
  * CVE-2024-6601 (bmo#1890748)
    Race condition in permission assignment
  * CVE-2024-6602 (bmo#1895032)
    Memory corruption in NSS
  * CVE-2024-6603 (bmo#1895081)
    Memory corruption in thread creation
  * CVE-2024-6604 (bmo#1748105, bmo#1837550, bmo#1884266)
    Memory safety bugs fixed in Firefox 128, Firefox ESR 115.13,
    and Thunderbird 115.13</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1722600000">- Mozilla Thunderbird 115.14.0
  * When using an external installation of GnuPG, Thunderbird
    occassionally sent/received corrupted messages (bmo#1898832)
  * Users of external GnuPG were unable to decrypt incorrectly
    encoded messages (bmo#1906903)
  MFSA 2024-38 (bsc#1228648)
  * CVE-2024-7519 (bmo#1902307)
    Out of bounds memory access in graphics shared memory handling
  * CVE-2024-7521 (bmo#1904644)
    Incomplete WebAssembly exception handing
  * CVE-2024-7522 (bmo#1906727)
    Out of bounds read in editor component
  * CVE-2024-7525 (bmo#1909298)
    Missing permission check when creating a StreamFilter
  * CVE-2024-7526 (bmo#1910306)
    Uninitialized memory used by WebGL
  * CVE-2024-7527 (bmo#1871303)
    Use-after-free in JavaScript garbage collection
  * CVE-2024-7529 (bmo#1903187)
    Document content could partially obscure security prompts</changelog>
  <changelog author="Manfred Hollstein &lt;manfred.h@gmx.net&gt;" date="1724932800">- Use gcc13 on Tumbleweed and where it is available.
- Don't use gcc14 as sources don't compile.</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1725624000">- Mozilla Thunderbird 115.15.0
  MFSA 2024-44 (bsc#1229821)
  * CVE-2024-8381 (bmo#1912715)
    Type confusion when looking up a property name in a "with"
    block
  * CVE-2024-8382 (bmo#1906744)
    Internal event interfaces were exposed to web content when
    browser EventHandler listener callbacks ran
  * CVE-2024-8384 (bmo#1911288)
    Garbage collection could mis-color cross-compartment objects
    in OOM conditions</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1728561600">- Mozilla Thunderbird 128.3.1
  https://www.thunderbird.net/en-US/thunderbird/128.0esr/releasenotes/
  and following release notes for minor version updates
  MFSA 2024-52  (bsc#1231413)
  * CVE-2024-9680 (bmo#1923344)
    Use-after-free in Animation timeline
  Mozilla Thunderbird 128.3.0
  MFSA 2024-32 (128.0)
  MFSA 2024-37 (128.1)
  MFSA 2024-43 (128.2)
  MFSA 2024-49 (128.3) (bsc#1230979)
  * CVE-2024-9392 (bmo#1899154, bmo#1905843)
    Compromised content process can bypass site isolation
  * CVE-2024-9393 (bmo#1918301)
    Cross-origin access to PDF contents through multipart responses
  * CVE-2024-9394 (bmo#1918874)
    Cross-origin access to JSON contents through multipart responses
  * CVE-2024-8900 (bmo#1872841)
    Clipboard write permission bypass
  * CVE-2024-9396 (bmo#1912471)
    Potential memory corruption may occur when cloning certain objects
  * CVE-2024-9397 (bmo#1916659)
    Potential directory upload bypass via clickjacking
  * CVE-2024-9398 (bmo#1881037)
    External protocol handlers could be enumerated via popups
  * CVE-2024-9399 (bmo#1907726)
    Specially crafted WebTransport requests could lead to denial
    of service
  * CVE-2024-9400 (bmo#1915249)
    Potential memory corruption during JIT compilation
  * CVE-2024-9401 (bmo#1872744, bmo#1897792, bmo#1911317, bmo#1916476)
    Memory safety bugs fixed in Firefox 131, Firefox ESR 115.16,
    Firefox ESR 128.3, Thunderbird 131, and Thunderbird 128.3
  * CVE-2024-9402 (bmo#1872744, bmo#1897792, bmo#1911317, bmo#1913445,
    bmo#1914106, bmo#1914475, bmo#1914963, bmo#1915008, bmo#1916476)
    Memory safety bugs fixed in Firefox 131, Firefox ESR 128.3,
    Thunderbird 131, and Thunderbird 128.3
- removed obsolete patches
  mozilla-bmo1504834-part3.patch
  mozilla-bmo1512162.patch
  mozilla-bmo1775202.patch
  mozilla-bmo531915.patch
  mozilla-fix-aarch64-libopus.patch
  mozilla-fix-issues-with-llvm18.patch
  mozilla-fix-top-level-asm.patch
  mozilla-partial-revert-1768632.patch
  mozilla-rust-disable-future-incompat.patch
  thunderbird-fix-CVE-2024-34703.patch
- new patch thunderbird-silence-no-return.patch
- rebased
  mozilla-bmo1504834-part1.patch
  mozilla-kde.patch
  mozilla-libavcodec58_91.patch
  mozilla-silence-no-return-type.patch</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1729080000">- Mozilla Thunderbird 128.3.2
  bugfix release:
  https://www.thunderbird.net/en-US/thunderbird/128.3.2esr/releasenotes
- bring back mozilla-bmo531915.patch to fix x86</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1729684800">- Mozilla Thunderbird 128.3.3
  * Files left over from failed folder compactions could use up
    disk space (bmo#1878541)
  * Message list returned to selected message after action on
    another message (bmo#1917485)
  * Some faulty messages were downloaded and never stored
    (bmo#1923765)
  * Messages could become corrupted during folder compaction
    (bmo#1923747,bmo#1923541,bmo#1720047)
  * Searching events by Location, Description, or URL failed
    (bmo#1912710)
  * "Remove All Shown" saved passwords deleted all logins if
    filtered without results (bmo#601447)
  * Calendar event updates were not always sent to attendees
    (bmo#1877640)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1730289600">- Mozilla Thunderbird 128.4.0
  * Export Thunderbird account settings to Thunderbird Mobile via QRCode
  Bugfixes:
  * Unable to send an unencrypted response to an OpenPGP encrypted message
  MFSA 2024-58 (bsc#1231879)
  * CVE-2024-10458 (bmo#1921733)
    Permission leak via embed or object elements
  * CVE-2024-10459 (bmo#1919087)
    Use-after-free in layout with accessibility
  * CVE-2024-10460 (bmo#1912537)
    Confusing display of origin for external protocol handler prompt
  * CVE-2024-10461 (bmo#1914521)
    XSS due to Content-Disposition being ignored in
    multipart/x-mixed-replace response
  * CVE-2024-10462 (bmo#1920423)
    Origin of permission prompt could be spoofed by long URL
  * CVE-2024-10463 (bmo#1920800)
    Cross origin video frame leak
  * CVE-2024-10464 (bmo#1913000)
    History interface could have been used to cause a Denial of
    Service condition in the browser
  * CVE-2024-10465 (bmo#1918853)
    Clipboard "paste" button persisted across tabs
  * CVE-2024-10466 (bmo#1924154)
    DOM push subscription message could hang Firefox
  * CVE-2024-10467 (bmo#1829029, bmo#1888538, bmo#1900394, bmo#1904059,
    bmo#1917742, bmo#1919809, bmo#1923706)
    Memory safety bugs fixed in Firefox 132, Thunderbird 132,
    Firefox ESR 128.4, and Thunderbird 128.4</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1730548800">- Mozilla Thunderbird 128.4.1
  * Add the 20 year donation appeal (bmo#192538)</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1730894400">- Mozilla Thunderbird 128.4.2
  * Increased the auto-compaction threshold to reduce the frequency
    of compaction (bmo#1927656)
  * fixed: New profile creation caused console errors (bmo#1912675)
  * fixed: Repair folder could result in older messages showing
    wrong date and time (bmo#1911916)
  * fixed: Recently deleted messages could become undeleted if
    message compaction failed (bmo#1924927)
  * fixed: Visual and UX improvements
    (bmo#1857413,bmo#1922934,bmo#1924437)
  * fixed: Clicking on an HTML button could cause Thunderbird to
    freeze (bmo#1879355)
  * fixed: Messages could not be selected for dragging
    (bmo#1887518)
  * fixed: Could not open attached file in a MIME encrypted
    message (bmo#1924637)
  * fixed: Account creation "Setup Documentation" link was broken
    (bmo#1925493)
  * fixed: Unable to generate QR codes when exporting to mobile
    in some cases (bmo#1928114)
  * fixed: Operating system reauthentication was missing when
    exporting QR codes for mobile (bmo#1928232)
  * fixed: Could not drag all-day events from one day to another
    in week view (bmo#1922944)</changelog>
</package>
<package pkgid="f815da890302f269a8ae174d3e1a1ab81d06b5bb892c4fc8dca5347a49800c670fd1470cc984182dd60c82de9768876e0b87be2c1548d8bc7264b00bbadb635b" name="MozillaThunderbird-openpgp-librnp-debuginfo" arch="x86_64">
  <version epoch="0" ver="128.4.3" rel="1.1"/>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1710590400">- Mozilla Thunderbird 115.9.0
  https://www.thunderbird.net/en-US/thunderbird/115.9.0/releasenotes/
  MFSA 2024-14 (bsc#1221327)
  * CVE-2024-0743 (bmo#1867408)
    Crash in NSS TLS method
  * CVE-2024-2605 (bmo#1872920)
    Windows Error Reporter could be used as a Sandbox escape vector
  * CVE-2024-2607 (bmo#1879939)
    JIT code failed to save return registers on Armv7-A
  * CVE-2024-2608 (bmo#1880692)
    Integer overflow could have led to out of bounds write
  * CVE-2024-2616 (bmo#1846197)
    Improve handling of out-of-memory conditions in ICU
  * CVE-2023-5388 (bmo#1780432)
    NSS susceptible to timing attack against RSA decryption
  * CVE-2024-2610 (bmo#1871112)
    Improper handling of html and body tags enabled CSP nonce leakage
  * CVE-2024-2611 (bmo#1876675)
    Clickjacking vulnerability could have led to a user accidentally
    granting permissions
  * CVE-2024-2612 (bmo#1879444)
    Self referencing object could have potentially led to a use-
    after-free
  * CVE-2024-2614 (bmo#1685358, bmo#1861016, bmo#1880405, bmo#1881093)
    Memory safety bugs fixed in Firefox 124, Firefox ESR 115.9,
    and Thunderbird 115.9</changelog>
  <changelog author="Manfred Hollstein &lt;manfred.h@gmx.net&gt;" date="1710936000">- LLVM18 breaks building Thunderbird on Tumbleweed; add
  * mozilla-fix-issues-with-llvm18.patch</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1713096000">- Mozilla Thunderbird 115.10.0
  https://www.thunderbird.net/en-US/thunderbird/115.10.0/releasenotes/
  MFSA 2024-20 (bsc#1222535)
  * CVE-2024-3852 (bmo#1883542)
    GetBoundName in the JIT returned the wrong object
  * CVE-2024-3854 (bmo#1884552)
    Out-of-bounds-read after mis-optimized switch statement
  * CVE-2024-3857 (bmo#1886683)
    Incorrect JITting of arguments led to use-after-free during
    garbage collection
  * CVE-2024-2609 (bmo#1866100)
    Permission prompt input delay could expire when not in focus
  * CVE-2024-3859 (bmo#1874489)
    Integer-overflow led to out-of-bounds-read in the OpenType sanitizer
  * CVE-2024-3861 (bmo#1883158)
    Potential use-after-free due to AlignedBuffer self-move
  * CVE-2024-3863 (bmo#1885855)
    Download Protections were bypassed by .xrm-ms files on Windows
  * CVE-2024-3302 (bmo#1881183)
    Denial of Service using HTTP/2 CONTINUATION frames
  * CVE-2024-3864 (bmo#1888333)
    Memory safety bug fixed in Firefox 125, Firefox ESR 115.10,
    and Thunderbird 115.10</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1713528000">- Mozilla Thunderbird 115.10.1
  https://www.thunderbird.net/en-US/thunderbird/115.10.1/releasenotes/
  * fixed hangup introduced with 115.10.0 (bmo#1891889)</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1714824000">- Mozilla Thunderbird 115.10.2:
  https://www.thunderbird.net/en-US/thunderbird/115.10.2/releasenotes/
  This release is identical to 115.10.1, other than changing the
  Update channel for self-updating builds to ESR. (bmo#1893271)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1715688000">- Mozilla Thunderbird 115.11.0
  MFSA 2024-23 (bsc#1224056)
  * CVE-2024-4367 (bmo#1893645)
    Arbitrary JavaScript execution in PDF.js
  * CVE-2024-4767 (bmo#1878577)
    IndexedDB files retained in private browsing mode
  * CVE-2024-4768 (bmo#1886082)
    Potential permissions request bypass via clickjacking
  * CVE-2024-4769 (bmo#1886108)
    Cross-origin responses could be distinguished between script
    and non-script content-types
  * CVE-2024-4770 (bmo#1893270)
    Use-after-free could occur when printing to PDF
  * CVE-2024-4777 (bmo#1878199, bmo#1893340)
    Memory safety bugs fixed in Firefox 126, Firefox ESR 115.11,
    and Thunderbird 115.11</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1716984000">- Mozilla Thunderbird 115.11.1
  * Added a short anonymous survey that a small number of users will
    be randomly asked to complete</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1718625600">- Mozilla Thunderbird 115.12.0
  https://www.thunderbird.net/en-US/thunderbird/115.12.0/releasenotes
  MFSA 2024-28 (bsc#1226027)
  * CVE-2024-5702 (bmo#1193389)
    Use-after-free in networking
  * CVE-2024-5688 (bmo#1895086)
    Use-after-free in JavaScript object transplant
  * CVE-2024-5690 (bmo#1883693)
    External protocol handlers leaked by timing attack
  * CVE-2024-5691 (bmo#1888695)
    Sandboxed iframes were able to bypass sandbox restrictions to
    open a new window
  * CVE-2024-5692 (bmo#1891234)
    Bypass of file name restrictions during saving
  * CVE-2024-5693 (bmo#1891319)
    Cross-Origin Image leak via Offscreen Canvas
  * CVE-2024-5696 (bmo#1896555)
    Memory Corruption in Text Fragments
  * CVE-2024-5700 (bmo#1862809, bmo#1889355, bmo#1893388, bmo#1895123)
    Memory safety bugs fixed in Firefox 127, Firefox ESR 115.12,
    and Thunderbird 115.12</changelog>
  <changelog author="Martin Sirringhaus &lt;martin.sirringhaus@suse.com&gt;" date="1719921600">- Mozilla Thunderbird 115.12.2
  * fixed: Annual Thunderbird Beta appeal intended for
    Thunderbird 115.12.0 did not open as expected (bmo#1898084)
- Mozilla Thunderbird 115.12.1
  * 115.12.0 got pulled because of upstream automation process errors
    and Windows installer signing changes.
    No code changes, changelog is the same as 115.12.0 (bsc#1226495)
- Added thunderbird-fix-CVE-2024-34703.patch (bsc#1227239)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1720612800">- Mozilla Thunderbird 115.13.0
  * After starting Thunderbird, the message list position was
    sometimes set to an incorrect position
  MFSA 2024-30 (bsc#1226316)
  * CVE-2024-6600 (bmo#1888340)
    Memory corruption in WebGL API
  * CVE-2024-6601 (bmo#1890748)
    Race condition in permission assignment
  * CVE-2024-6602 (bmo#1895032)
    Memory corruption in NSS
  * CVE-2024-6603 (bmo#1895081)
    Memory corruption in thread creation
  * CVE-2024-6604 (bmo#1748105, bmo#1837550, bmo#1884266)
    Memory safety bugs fixed in Firefox 128, Firefox ESR 115.13,
    and Thunderbird 115.13</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1722600000">- Mozilla Thunderbird 115.14.0
  * When using an external installation of GnuPG, Thunderbird
    occassionally sent/received corrupted messages (bmo#1898832)
  * Users of external GnuPG were unable to decrypt incorrectly
    encoded messages (bmo#1906903)
  MFSA 2024-38 (bsc#1228648)
  * CVE-2024-7519 (bmo#1902307)
    Out of bounds memory access in graphics shared memory handling
  * CVE-2024-7521 (bmo#1904644)
    Incomplete WebAssembly exception handing
  * CVE-2024-7522 (bmo#1906727)
    Out of bounds read in editor component
  * CVE-2024-7525 (bmo#1909298)
    Missing permission check when creating a StreamFilter
  * CVE-2024-7526 (bmo#1910306)
    Uninitialized memory used by WebGL
  * CVE-2024-7527 (bmo#1871303)
    Use-after-free in JavaScript garbage collection
  * CVE-2024-7529 (bmo#1903187)
    Document content could partially obscure security prompts</changelog>
  <changelog author="Manfred Hollstein &lt;manfred.h@gmx.net&gt;" date="1724932800">- Use gcc13 on Tumbleweed and where it is available.
- Don't use gcc14 as sources don't compile.</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1725624000">- Mozilla Thunderbird 115.15.0
  MFSA 2024-44 (bsc#1229821)
  * CVE-2024-8381 (bmo#1912715)
    Type confusion when looking up a property name in a "with"
    block
  * CVE-2024-8382 (bmo#1906744)
    Internal event interfaces were exposed to web content when
    browser EventHandler listener callbacks ran
  * CVE-2024-8384 (bmo#1911288)
    Garbage collection could mis-color cross-compartment objects
    in OOM conditions</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1728561600">- Mozilla Thunderbird 128.3.1
  https://www.thunderbird.net/en-US/thunderbird/128.0esr/releasenotes/
  and following release notes for minor version updates
  MFSA 2024-52  (bsc#1231413)
  * CVE-2024-9680 (bmo#1923344)
    Use-after-free in Animation timeline
  Mozilla Thunderbird 128.3.0
  MFSA 2024-32 (128.0)
  MFSA 2024-37 (128.1)
  MFSA 2024-43 (128.2)
  MFSA 2024-49 (128.3) (bsc#1230979)
  * CVE-2024-9392 (bmo#1899154, bmo#1905843)
    Compromised content process can bypass site isolation
  * CVE-2024-9393 (bmo#1918301)
    Cross-origin access to PDF contents through multipart responses
  * CVE-2024-9394 (bmo#1918874)
    Cross-origin access to JSON contents through multipart responses
  * CVE-2024-8900 (bmo#1872841)
    Clipboard write permission bypass
  * CVE-2024-9396 (bmo#1912471)
    Potential memory corruption may occur when cloning certain objects
  * CVE-2024-9397 (bmo#1916659)
    Potential directory upload bypass via clickjacking
  * CVE-2024-9398 (bmo#1881037)
    External protocol handlers could be enumerated via popups
  * CVE-2024-9399 (bmo#1907726)
    Specially crafted WebTransport requests could lead to denial
    of service
  * CVE-2024-9400 (bmo#1915249)
    Potential memory corruption during JIT compilation
  * CVE-2024-9401 (bmo#1872744, bmo#1897792, bmo#1911317, bmo#1916476)
    Memory safety bugs fixed in Firefox 131, Firefox ESR 115.16,
    Firefox ESR 128.3, Thunderbird 131, and Thunderbird 128.3
  * CVE-2024-9402 (bmo#1872744, bmo#1897792, bmo#1911317, bmo#1913445,
    bmo#1914106, bmo#1914475, bmo#1914963, bmo#1915008, bmo#1916476)
    Memory safety bugs fixed in Firefox 131, Firefox ESR 128.3,
    Thunderbird 131, and Thunderbird 128.3
- removed obsolete patches
  mozilla-bmo1504834-part3.patch
  mozilla-bmo1512162.patch
  mozilla-bmo1775202.patch
  mozilla-bmo531915.patch
  mozilla-fix-aarch64-libopus.patch
  mozilla-fix-issues-with-llvm18.patch
  mozilla-fix-top-level-asm.patch
  mozilla-partial-revert-1768632.patch
  mozilla-rust-disable-future-incompat.patch
  thunderbird-fix-CVE-2024-34703.patch
- new patch thunderbird-silence-no-return.patch
- rebased
  mozilla-bmo1504834-part1.patch
  mozilla-kde.patch
  mozilla-libavcodec58_91.patch
  mozilla-silence-no-return-type.patch</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1729080000">- Mozilla Thunderbird 128.3.2
  bugfix release:
  https://www.thunderbird.net/en-US/thunderbird/128.3.2esr/releasenotes
- bring back mozilla-bmo531915.patch to fix x86</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1729684800">- Mozilla Thunderbird 128.3.3
  * Files left over from failed folder compactions could use up
    disk space (bmo#1878541)
  * Message list returned to selected message after action on
    another message (bmo#1917485)
  * Some faulty messages were downloaded and never stored
    (bmo#1923765)
  * Messages could become corrupted during folder compaction
    (bmo#1923747,bmo#1923541,bmo#1720047)
  * Searching events by Location, Description, or URL failed
    (bmo#1912710)
  * "Remove All Shown" saved passwords deleted all logins if
    filtered without results (bmo#601447)
  * Calendar event updates were not always sent to attendees
    (bmo#1877640)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1730289600">- Mozilla Thunderbird 128.4.0
  * Export Thunderbird account settings to Thunderbird Mobile via QRCode
  Bugfixes:
  * Unable to send an unencrypted response to an OpenPGP encrypted message
  MFSA 2024-58 (bsc#1231879)
  * CVE-2024-10458 (bmo#1921733)
    Permission leak via embed or object elements
  * CVE-2024-10459 (bmo#1919087)
    Use-after-free in layout with accessibility
  * CVE-2024-10460 (bmo#1912537)
    Confusing display of origin for external protocol handler prompt
  * CVE-2024-10461 (bmo#1914521)
    XSS due to Content-Disposition being ignored in
    multipart/x-mixed-replace response
  * CVE-2024-10462 (bmo#1920423)
    Origin of permission prompt could be spoofed by long URL
  * CVE-2024-10463 (bmo#1920800)
    Cross origin video frame leak
  * CVE-2024-10464 (bmo#1913000)
    History interface could have been used to cause a Denial of
    Service condition in the browser
  * CVE-2024-10465 (bmo#1918853)
    Clipboard "paste" button persisted across tabs
  * CVE-2024-10466 (bmo#1924154)
    DOM push subscription message could hang Firefox
  * CVE-2024-10467 (bmo#1829029, bmo#1888538, bmo#1900394, bmo#1904059,
    bmo#1917742, bmo#1919809, bmo#1923706)
    Memory safety bugs fixed in Firefox 132, Thunderbird 132,
    Firefox ESR 128.4, and Thunderbird 128.4</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1730548800">- Mozilla Thunderbird 128.4.1
  * Add the 20 year donation appeal (bmo#192538)</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1730894400">- Mozilla Thunderbird 128.4.2
  * Increased the auto-compaction threshold to reduce the frequency
    of compaction (bmo#1927656)
  * fixed: New profile creation caused console errors (bmo#1912675)
  * fixed: Repair folder could result in older messages showing
    wrong date and time (bmo#1911916)
  * fixed: Recently deleted messages could become undeleted if
    message compaction failed (bmo#1924927)
  * fixed: Visual and UX improvements
    (bmo#1857413,bmo#1922934,bmo#1924437)
  * fixed: Clicking on an HTML button could cause Thunderbird to
    freeze (bmo#1879355)
  * fixed: Messages could not be selected for dragging
    (bmo#1887518)
  * fixed: Could not open attached file in a MIME encrypted
    message (bmo#1924637)
  * fixed: Account creation "Setup Documentation" link was broken
    (bmo#1925493)
  * fixed: Unable to generate QR codes when exporting to mobile
    in some cases (bmo#1928114)
  * fixed: Operating system reauthentication was missing when
    exporting QR codes for mobile (bmo#1928232)
  * fixed: Could not drag all-day events from one day to another
    in week view (bmo#1922944)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1731153600">- Mozilla Thunderbird 128.4.3
  Fixes:
  * Folder corruption could cause Thunderbird to freeze and become unusable
  * Message corruption could be propagated when reading mbox
  * Folder compaction was not abandoned on shutdown
  * Folder compaction did not clean up on failure
  * Collapsed NNTP thread incorrectly indicated there were unread messages
  * Navigating to next unread message did not wait for all messages
    to be loaded
  * Applying column view to folder and children could break if folder
    error occurred
  * Remote content notifications were broken with encrypted messages
  * Updating criteria of a saved search resulted in poor search performance
  * Drop-downs may not work in some places
  MFSA 2024-61
  * CVE-2024-11159 (bmo#1925929)
    Potential disclosure of plaintext in OpenPGP encrypted message
- remove kmozillahelper support (boo#1226112)
  * removed mozilla-kde.patch
  * requires xdg-desktop-portal instead</changelog>
</package>
<package pkgid="a40e830642ce8d12058469b49b07f0776e6f1efe1d024af4c9c63edcf931fb3f411b1a7d5539f7dd4c2538bb428e80835ea83da79c0099dfd654ee0fe056b9f4" name="MozillaThunderbird-openpgp-librnp-debuginfo" arch="x86_64">
  <version epoch="0" ver="128.4.4" rel="1.1"/>
  <changelog author="Manfred Hollstein &lt;manfred.h@gmx.net&gt;" date="1710936000">- LLVM18 breaks building Thunderbird on Tumbleweed; add
  * mozilla-fix-issues-with-llvm18.patch</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1713096000">- Mozilla Thunderbird 115.10.0
  https://www.thunderbird.net/en-US/thunderbird/115.10.0/releasenotes/
  MFSA 2024-20 (bsc#1222535)
  * CVE-2024-3852 (bmo#1883542)
    GetBoundName in the JIT returned the wrong object
  * CVE-2024-3854 (bmo#1884552)
    Out-of-bounds-read after mis-optimized switch statement
  * CVE-2024-3857 (bmo#1886683)
    Incorrect JITting of arguments led to use-after-free during
    garbage collection
  * CVE-2024-2609 (bmo#1866100)
    Permission prompt input delay could expire when not in focus
  * CVE-2024-3859 (bmo#1874489)
    Integer-overflow led to out-of-bounds-read in the OpenType sanitizer
  * CVE-2024-3861 (bmo#1883158)
    Potential use-after-free due to AlignedBuffer self-move
  * CVE-2024-3863 (bmo#1885855)
    Download Protections were bypassed by .xrm-ms files on Windows
  * CVE-2024-3302 (bmo#1881183)
    Denial of Service using HTTP/2 CONTINUATION frames
  * CVE-2024-3864 (bmo#1888333)
    Memory safety bug fixed in Firefox 125, Firefox ESR 115.10,
    and Thunderbird 115.10</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1713528000">- Mozilla Thunderbird 115.10.1
  https://www.thunderbird.net/en-US/thunderbird/115.10.1/releasenotes/
  * fixed hangup introduced with 115.10.0 (bmo#1891889)</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1714824000">- Mozilla Thunderbird 115.10.2:
  https://www.thunderbird.net/en-US/thunderbird/115.10.2/releasenotes/
  This release is identical to 115.10.1, other than changing the
  Update channel for self-updating builds to ESR. (bmo#1893271)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1715688000">- Mozilla Thunderbird 115.11.0
  MFSA 2024-23 (bsc#1224056)
  * CVE-2024-4367 (bmo#1893645)
    Arbitrary JavaScript execution in PDF.js
  * CVE-2024-4767 (bmo#1878577)
    IndexedDB files retained in private browsing mode
  * CVE-2024-4768 (bmo#1886082)
    Potential permissions request bypass via clickjacking
  * CVE-2024-4769 (bmo#1886108)
    Cross-origin responses could be distinguished between script
    and non-script content-types
  * CVE-2024-4770 (bmo#1893270)
    Use-after-free could occur when printing to PDF
  * CVE-2024-4777 (bmo#1878199, bmo#1893340)
    Memory safety bugs fixed in Firefox 126, Firefox ESR 115.11,
    and Thunderbird 115.11</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1716984000">- Mozilla Thunderbird 115.11.1
  * Added a short anonymous survey that a small number of users will
    be randomly asked to complete</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1718625600">- Mozilla Thunderbird 115.12.0
  https://www.thunderbird.net/en-US/thunderbird/115.12.0/releasenotes
  MFSA 2024-28 (bsc#1226027)
  * CVE-2024-5702 (bmo#1193389)
    Use-after-free in networking
  * CVE-2024-5688 (bmo#1895086)
    Use-after-free in JavaScript object transplant
  * CVE-2024-5690 (bmo#1883693)
    External protocol handlers leaked by timing attack
  * CVE-2024-5691 (bmo#1888695)
    Sandboxed iframes were able to bypass sandbox restrictions to
    open a new window
  * CVE-2024-5692 (bmo#1891234)
    Bypass of file name restrictions during saving
  * CVE-2024-5693 (bmo#1891319)
    Cross-Origin Image leak via Offscreen Canvas
  * CVE-2024-5696 (bmo#1896555)
    Memory Corruption in Text Fragments
  * CVE-2024-5700 (bmo#1862809, bmo#1889355, bmo#1893388, bmo#1895123)
    Memory safety bugs fixed in Firefox 127, Firefox ESR 115.12,
    and Thunderbird 115.12</changelog>
  <changelog author="Martin Sirringhaus &lt;martin.sirringhaus@suse.com&gt;" date="1719921600">- Mozilla Thunderbird 115.12.2
  * fixed: Annual Thunderbird Beta appeal intended for
    Thunderbird 115.12.0 did not open as expected (bmo#1898084)
- Mozilla Thunderbird 115.12.1
  * 115.12.0 got pulled because of upstream automation process errors
    and Windows installer signing changes.
    No code changes, changelog is the same as 115.12.0 (bsc#1226495)
- Added thunderbird-fix-CVE-2024-34703.patch (bsc#1227239)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1720612800">- Mozilla Thunderbird 115.13.0
  * After starting Thunderbird, the message list position was
    sometimes set to an incorrect position
  MFSA 2024-30 (bsc#1226316)
  * CVE-2024-6600 (bmo#1888340)
    Memory corruption in WebGL API
  * CVE-2024-6601 (bmo#1890748)
    Race condition in permission assignment
  * CVE-2024-6602 (bmo#1895032)
    Memory corruption in NSS
  * CVE-2024-6603 (bmo#1895081)
    Memory corruption in thread creation
  * CVE-2024-6604 (bmo#1748105, bmo#1837550, bmo#1884266)
    Memory safety bugs fixed in Firefox 128, Firefox ESR 115.13,
    and Thunderbird 115.13</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1722600000">- Mozilla Thunderbird 115.14.0
  * When using an external installation of GnuPG, Thunderbird
    occassionally sent/received corrupted messages (bmo#1898832)
  * Users of external GnuPG were unable to decrypt incorrectly
    encoded messages (bmo#1906903)
  MFSA 2024-38 (bsc#1228648)
  * CVE-2024-7519 (bmo#1902307)
    Out of bounds memory access in graphics shared memory handling
  * CVE-2024-7521 (bmo#1904644)
    Incomplete WebAssembly exception handing
  * CVE-2024-7522 (bmo#1906727)
    Out of bounds read in editor component
  * CVE-2024-7525 (bmo#1909298)
    Missing permission check when creating a StreamFilter
  * CVE-2024-7526 (bmo#1910306)
    Uninitialized memory used by WebGL
  * CVE-2024-7527 (bmo#1871303)
    Use-after-free in JavaScript garbage collection
  * CVE-2024-7529 (bmo#1903187)
    Document content could partially obscure security prompts</changelog>
  <changelog author="Manfred Hollstein &lt;manfred.h@gmx.net&gt;" date="1724932800">- Use gcc13 on Tumbleweed and where it is available.
- Don't use gcc14 as sources don't compile.</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1725624000">- Mozilla Thunderbird 115.15.0
  MFSA 2024-44 (bsc#1229821)
  * CVE-2024-8381 (bmo#1912715)
    Type confusion when looking up a property name in a "with"
    block
  * CVE-2024-8382 (bmo#1906744)
    Internal event interfaces were exposed to web content when
    browser EventHandler listener callbacks ran
  * CVE-2024-8384 (bmo#1911288)
    Garbage collection could mis-color cross-compartment objects
    in OOM conditions</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1728561600">- Mozilla Thunderbird 128.3.1
  https://www.thunderbird.net/en-US/thunderbird/128.0esr/releasenotes/
  and following release notes for minor version updates
  MFSA 2024-52  (bsc#1231413)
  * CVE-2024-9680 (bmo#1923344)
    Use-after-free in Animation timeline
  Mozilla Thunderbird 128.3.0
  MFSA 2024-32 (128.0)
  MFSA 2024-37 (128.1)
  MFSA 2024-43 (128.2)
  MFSA 2024-49 (128.3) (bsc#1230979)
  * CVE-2024-9392 (bmo#1899154, bmo#1905843)
    Compromised content process can bypass site isolation
  * CVE-2024-9393 (bmo#1918301)
    Cross-origin access to PDF contents through multipart responses
  * CVE-2024-9394 (bmo#1918874)
    Cross-origin access to JSON contents through multipart responses
  * CVE-2024-8900 (bmo#1872841)
    Clipboard write permission bypass
  * CVE-2024-9396 (bmo#1912471)
    Potential memory corruption may occur when cloning certain objects
  * CVE-2024-9397 (bmo#1916659)
    Potential directory upload bypass via clickjacking
  * CVE-2024-9398 (bmo#1881037)
    External protocol handlers could be enumerated via popups
  * CVE-2024-9399 (bmo#1907726)
    Specially crafted WebTransport requests could lead to denial
    of service
  * CVE-2024-9400 (bmo#1915249)
    Potential memory corruption during JIT compilation
  * CVE-2024-9401 (bmo#1872744, bmo#1897792, bmo#1911317, bmo#1916476)
    Memory safety bugs fixed in Firefox 131, Firefox ESR 115.16,
    Firefox ESR 128.3, Thunderbird 131, and Thunderbird 128.3
  * CVE-2024-9402 (bmo#1872744, bmo#1897792, bmo#1911317, bmo#1913445,
    bmo#1914106, bmo#1914475, bmo#1914963, bmo#1915008, bmo#1916476)
    Memory safety bugs fixed in Firefox 131, Firefox ESR 128.3,
    Thunderbird 131, and Thunderbird 128.3
- removed obsolete patches
  mozilla-bmo1504834-part3.patch
  mozilla-bmo1512162.patch
  mozilla-bmo1775202.patch
  mozilla-bmo531915.patch
  mozilla-fix-aarch64-libopus.patch
  mozilla-fix-issues-with-llvm18.patch
  mozilla-fix-top-level-asm.patch
  mozilla-partial-revert-1768632.patch
  mozilla-rust-disable-future-incompat.patch
  thunderbird-fix-CVE-2024-34703.patch
- new patch thunderbird-silence-no-return.patch
- rebased
  mozilla-bmo1504834-part1.patch
  mozilla-kde.patch
  mozilla-libavcodec58_91.patch
  mozilla-silence-no-return-type.patch</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1729080000">- Mozilla Thunderbird 128.3.2
  bugfix release:
  https://www.thunderbird.net/en-US/thunderbird/128.3.2esr/releasenotes
- bring back mozilla-bmo531915.patch to fix x86</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1729684800">- Mozilla Thunderbird 128.3.3
  * Files left over from failed folder compactions could use up
    disk space (bmo#1878541)
  * Message list returned to selected message after action on
    another message (bmo#1917485)
  * Some faulty messages were downloaded and never stored
    (bmo#1923765)
  * Messages could become corrupted during folder compaction
    (bmo#1923747,bmo#1923541,bmo#1720047)
  * Searching events by Location, Description, or URL failed
    (bmo#1912710)
  * "Remove All Shown" saved passwords deleted all logins if
    filtered without results (bmo#601447)
  * Calendar event updates were not always sent to attendees
    (bmo#1877640)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1730289600">- Mozilla Thunderbird 128.4.0
  * Export Thunderbird account settings to Thunderbird Mobile via QRCode
  Bugfixes:
  * Unable to send an unencrypted response to an OpenPGP encrypted message
  MFSA 2024-58 (bsc#1231879)
  * CVE-2024-10458 (bmo#1921733)
    Permission leak via embed or object elements
  * CVE-2024-10459 (bmo#1919087)
    Use-after-free in layout with accessibility
  * CVE-2024-10460 (bmo#1912537)
    Confusing display of origin for external protocol handler prompt
  * CVE-2024-10461 (bmo#1914521)
    XSS due to Content-Disposition being ignored in
    multipart/x-mixed-replace response
  * CVE-2024-10462 (bmo#1920423)
    Origin of permission prompt could be spoofed by long URL
  * CVE-2024-10463 (bmo#1920800)
    Cross origin video frame leak
  * CVE-2024-10464 (bmo#1913000)
    History interface could have been used to cause a Denial of
    Service condition in the browser
  * CVE-2024-10465 (bmo#1918853)
    Clipboard "paste" button persisted across tabs
  * CVE-2024-10466 (bmo#1924154)
    DOM push subscription message could hang Firefox
  * CVE-2024-10467 (bmo#1829029, bmo#1888538, bmo#1900394, bmo#1904059,
    bmo#1917742, bmo#1919809, bmo#1923706)
    Memory safety bugs fixed in Firefox 132, Thunderbird 132,
    Firefox ESR 128.4, and Thunderbird 128.4</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1730548800">- Mozilla Thunderbird 128.4.1
  * Add the 20 year donation appeal (bmo#192538)</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1730894400">- Mozilla Thunderbird 128.4.2
  * Increased the auto-compaction threshold to reduce the frequency
    of compaction (bmo#1927656)
  * fixed: New profile creation caused console errors (bmo#1912675)
  * fixed: Repair folder could result in older messages showing
    wrong date and time (bmo#1911916)
  * fixed: Recently deleted messages could become undeleted if
    message compaction failed (bmo#1924927)
  * fixed: Visual and UX improvements
    (bmo#1857413,bmo#1922934,bmo#1924437)
  * fixed: Clicking on an HTML button could cause Thunderbird to
    freeze (bmo#1879355)
  * fixed: Messages could not be selected for dragging
    (bmo#1887518)
  * fixed: Could not open attached file in a MIME encrypted
    message (bmo#1924637)
  * fixed: Account creation "Setup Documentation" link was broken
    (bmo#1925493)
  * fixed: Unable to generate QR codes when exporting to mobile
    in some cases (bmo#1928114)
  * fixed: Operating system reauthentication was missing when
    exporting QR codes for mobile (bmo#1928232)
  * fixed: Could not drag all-day events from one day to another
    in week view (bmo#1922944)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1731153600">- Mozilla Thunderbird 128.4.3
  Fixes:
  * Folder corruption could cause Thunderbird to freeze and become unusable
  * Message corruption could be propagated when reading mbox
  * Folder compaction was not abandoned on shutdown
  * Folder compaction did not clean up on failure
  * Collapsed NNTP thread incorrectly indicated there were unread messages
  * Navigating to next unread message did not wait for all messages
    to be loaded
  * Applying column view to folder and children could break if folder
    error occurred
  * Remote content notifications were broken with encrypted messages
  * Updating criteria of a saved search resulted in poor search performance
  * Drop-downs may not work in some places
  MFSA 2024-61
  * CVE-2024-11159 (bmo#1925929)
    Potential disclosure of plaintext in OpenPGP encrypted message
- remove kmozillahelper support (boo#1226112)
  * removed mozilla-kde.patch
  * requires xdg-desktop-portal instead</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1732104000">- Mozilla Thunderbird 128.4.4
  * QR codes were not scannable by Android app when using most
    high-contrast themes
  * Primary password prompt cancellation during mobile export was
    confusing
- revert using xdg-desktop-portal as some desktops have limited
  support</changelog>
</package>
<package pkgid="d1fec0b73d0a47e10424df2ccf658c7b1f4a05a9a1825344303a6e24cd68883d8412a5b58b975eb24c41c43f405790bb5e870d64699a51f4ddb9b8e4fd8ebb06" name="MozillaThunderbird-openpgp-librnp-debuginfo" arch="x86_64">
  <version epoch="0" ver="128.5.0" rel="1.0.8.1.sr20241103"/>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1713096000">- Mozilla Thunderbird 115.10.0
  https://www.thunderbird.net/en-US/thunderbird/115.10.0/releasenotes/
  MFSA 2024-20 (bsc#1222535)
  * CVE-2024-3852 (bmo#1883542)
    GetBoundName in the JIT returned the wrong object
  * CVE-2024-3854 (bmo#1884552)
    Out-of-bounds-read after mis-optimized switch statement
  * CVE-2024-3857 (bmo#1886683)
    Incorrect JITting of arguments led to use-after-free during
    garbage collection
  * CVE-2024-2609 (bmo#1866100)
    Permission prompt input delay could expire when not in focus
  * CVE-2024-3859 (bmo#1874489)
    Integer-overflow led to out-of-bounds-read in the OpenType sanitizer
  * CVE-2024-3861 (bmo#1883158)
    Potential use-after-free due to AlignedBuffer self-move
  * CVE-2024-3863 (bmo#1885855)
    Download Protections were bypassed by .xrm-ms files on Windows
  * CVE-2024-3302 (bmo#1881183)
    Denial of Service using HTTP/2 CONTINUATION frames
  * CVE-2024-3864 (bmo#1888333)
    Memory safety bug fixed in Firefox 125, Firefox ESR 115.10,
    and Thunderbird 115.10</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1713528000">- Mozilla Thunderbird 115.10.1
  https://www.thunderbird.net/en-US/thunderbird/115.10.1/releasenotes/
  * fixed hangup introduced with 115.10.0 (bmo#1891889)</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1714824000">- Mozilla Thunderbird 115.10.2:
  https://www.thunderbird.net/en-US/thunderbird/115.10.2/releasenotes/
  This release is identical to 115.10.1, other than changing the
  Update channel for self-updating builds to ESR. (bmo#1893271)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1715688000">- Mozilla Thunderbird 115.11.0
  MFSA 2024-23 (bsc#1224056)
  * CVE-2024-4367 (bmo#1893645)
    Arbitrary JavaScript execution in PDF.js
  * CVE-2024-4767 (bmo#1878577)
    IndexedDB files retained in private browsing mode
  * CVE-2024-4768 (bmo#1886082)
    Potential permissions request bypass via clickjacking
  * CVE-2024-4769 (bmo#1886108)
    Cross-origin responses could be distinguished between script
    and non-script content-types
  * CVE-2024-4770 (bmo#1893270)
    Use-after-free could occur when printing to PDF
  * CVE-2024-4777 (bmo#1878199, bmo#1893340)
    Memory safety bugs fixed in Firefox 126, Firefox ESR 115.11,
    and Thunderbird 115.11</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1716984000">- Mozilla Thunderbird 115.11.1
  * Added a short anonymous survey that a small number of users will
    be randomly asked to complete</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1718625600">- Mozilla Thunderbird 115.12.0
  https://www.thunderbird.net/en-US/thunderbird/115.12.0/releasenotes
  MFSA 2024-28 (bsc#1226027)
  * CVE-2024-5702 (bmo#1193389)
    Use-after-free in networking
  * CVE-2024-5688 (bmo#1895086)
    Use-after-free in JavaScript object transplant
  * CVE-2024-5690 (bmo#1883693)
    External protocol handlers leaked by timing attack
  * CVE-2024-5691 (bmo#1888695)
    Sandboxed iframes were able to bypass sandbox restrictions to
    open a new window
  * CVE-2024-5692 (bmo#1891234)
    Bypass of file name restrictions during saving
  * CVE-2024-5693 (bmo#1891319)
    Cross-Origin Image leak via Offscreen Canvas
  * CVE-2024-5696 (bmo#1896555)
    Memory Corruption in Text Fragments
  * CVE-2024-5700 (bmo#1862809, bmo#1889355, bmo#1893388, bmo#1895123)
    Memory safety bugs fixed in Firefox 127, Firefox ESR 115.12,
    and Thunderbird 115.12</changelog>
  <changelog author="Martin Sirringhaus &lt;martin.sirringhaus@suse.com&gt;" date="1719921600">- Mozilla Thunderbird 115.12.2
  * fixed: Annual Thunderbird Beta appeal intended for
    Thunderbird 115.12.0 did not open as expected (bmo#1898084)
- Mozilla Thunderbird 115.12.1
  * 115.12.0 got pulled because of upstream automation process errors
    and Windows installer signing changes.
    No code changes, changelog is the same as 115.12.0 (bsc#1226495)
- Added thunderbird-fix-CVE-2024-34703.patch (bsc#1227239)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1720612800">- Mozilla Thunderbird 115.13.0
  * After starting Thunderbird, the message list position was
    sometimes set to an incorrect position
  MFSA 2024-30 (bsc#1226316)
  * CVE-2024-6600 (bmo#1888340)
    Memory corruption in WebGL API
  * CVE-2024-6601 (bmo#1890748)
    Race condition in permission assignment
  * CVE-2024-6602 (bmo#1895032)
    Memory corruption in NSS
  * CVE-2024-6603 (bmo#1895081)
    Memory corruption in thread creation
  * CVE-2024-6604 (bmo#1748105, bmo#1837550, bmo#1884266)
    Memory safety bugs fixed in Firefox 128, Firefox ESR 115.13,
    and Thunderbird 115.13</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1722600000">- Mozilla Thunderbird 115.14.0
  * When using an external installation of GnuPG, Thunderbird
    occassionally sent/received corrupted messages (bmo#1898832)
  * Users of external GnuPG were unable to decrypt incorrectly
    encoded messages (bmo#1906903)
  MFSA 2024-38 (bsc#1228648)
  * CVE-2024-7519 (bmo#1902307)
    Out of bounds memory access in graphics shared memory handling
  * CVE-2024-7521 (bmo#1904644)
    Incomplete WebAssembly exception handing
  * CVE-2024-7522 (bmo#1906727)
    Out of bounds read in editor component
  * CVE-2024-7525 (bmo#1909298)
    Missing permission check when creating a StreamFilter
  * CVE-2024-7526 (bmo#1910306)
    Uninitialized memory used by WebGL
  * CVE-2024-7527 (bmo#1871303)
    Use-after-free in JavaScript garbage collection
  * CVE-2024-7529 (bmo#1903187)
    Document content could partially obscure security prompts</changelog>
  <changelog author="Manfred Hollstein &lt;manfred.h@gmx.net&gt;" date="1724932800">- Use gcc13 on Tumbleweed and where it is available.
- Don't use gcc14 as sources don't compile.</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1725624000">- Mozilla Thunderbird 115.15.0
  MFSA 2024-44 (bsc#1229821)
  * CVE-2024-8381 (bmo#1912715)
    Type confusion when looking up a property name in a "with"
    block
  * CVE-2024-8382 (bmo#1906744)
    Internal event interfaces were exposed to web content when
    browser EventHandler listener callbacks ran
  * CVE-2024-8384 (bmo#1911288)
    Garbage collection could mis-color cross-compartment objects
    in OOM conditions</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1728561600">- Mozilla Thunderbird 128.3.1
  https://www.thunderbird.net/en-US/thunderbird/128.0esr/releasenotes/
  and following release notes for minor version updates
  MFSA 2024-52  (bsc#1231413)
  * CVE-2024-9680 (bmo#1923344)
    Use-after-free in Animation timeline
  Mozilla Thunderbird 128.3.0
  MFSA 2024-32 (128.0)
  MFSA 2024-37 (128.1)
  MFSA 2024-43 (128.2)
  MFSA 2024-49 (128.3) (bsc#1230979)
  * CVE-2024-9392 (bmo#1899154, bmo#1905843)
    Compromised content process can bypass site isolation
  * CVE-2024-9393 (bmo#1918301)
    Cross-origin access to PDF contents through multipart responses
  * CVE-2024-9394 (bmo#1918874)
    Cross-origin access to JSON contents through multipart responses
  * CVE-2024-8900 (bmo#1872841)
    Clipboard write permission bypass
  * CVE-2024-9396 (bmo#1912471)
    Potential memory corruption may occur when cloning certain objects
  * CVE-2024-9397 (bmo#1916659)
    Potential directory upload bypass via clickjacking
  * CVE-2024-9398 (bmo#1881037)
    External protocol handlers could be enumerated via popups
  * CVE-2024-9399 (bmo#1907726)
    Specially crafted WebTransport requests could lead to denial
    of service
  * CVE-2024-9400 (bmo#1915249)
    Potential memory corruption during JIT compilation
  * CVE-2024-9401 (bmo#1872744, bmo#1897792, bmo#1911317, bmo#1916476)
    Memory safety bugs fixed in Firefox 131, Firefox ESR 115.16,
    Firefox ESR 128.3, Thunderbird 131, and Thunderbird 128.3
  * CVE-2024-9402 (bmo#1872744, bmo#1897792, bmo#1911317, bmo#1913445,
    bmo#1914106, bmo#1914475, bmo#1914963, bmo#1915008, bmo#1916476)
    Memory safety bugs fixed in Firefox 131, Firefox ESR 128.3,
    Thunderbird 131, and Thunderbird 128.3
- removed obsolete patches
  mozilla-bmo1504834-part3.patch
  mozilla-bmo1512162.patch
  mozilla-bmo1775202.patch
  mozilla-bmo531915.patch
  mozilla-fix-aarch64-libopus.patch
  mozilla-fix-issues-with-llvm18.patch
  mozilla-fix-top-level-asm.patch
  mozilla-partial-revert-1768632.patch
  mozilla-rust-disable-future-incompat.patch
  thunderbird-fix-CVE-2024-34703.patch
- new patch thunderbird-silence-no-return.patch
- rebased
  mozilla-bmo1504834-part1.patch
  mozilla-kde.patch
  mozilla-libavcodec58_91.patch
  mozilla-silence-no-return-type.patch</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1729080000">- Mozilla Thunderbird 128.3.2
  bugfix release:
  https://www.thunderbird.net/en-US/thunderbird/128.3.2esr/releasenotes
- bring back mozilla-bmo531915.patch to fix x86</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1729684800">- Mozilla Thunderbird 128.3.3
  * Files left over from failed folder compactions could use up
    disk space (bmo#1878541)
  * Message list returned to selected message after action on
    another message (bmo#1917485)
  * Some faulty messages were downloaded and never stored
    (bmo#1923765)
  * Messages could become corrupted during folder compaction
    (bmo#1923747,bmo#1923541,bmo#1720047)
  * Searching events by Location, Description, or URL failed
    (bmo#1912710)
  * "Remove All Shown" saved passwords deleted all logins if
    filtered without results (bmo#601447)
  * Calendar event updates were not always sent to attendees
    (bmo#1877640)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1730289600">- Mozilla Thunderbird 128.4.0
  * Export Thunderbird account settings to Thunderbird Mobile via QRCode
  Bugfixes:
  * Unable to send an unencrypted response to an OpenPGP encrypted message
  MFSA 2024-58 (bsc#1231879)
  * CVE-2024-10458 (bmo#1921733)
    Permission leak via embed or object elements
  * CVE-2024-10459 (bmo#1919087)
    Use-after-free in layout with accessibility
  * CVE-2024-10460 (bmo#1912537)
    Confusing display of origin for external protocol handler prompt
  * CVE-2024-10461 (bmo#1914521)
    XSS due to Content-Disposition being ignored in
    multipart/x-mixed-replace response
  * CVE-2024-10462 (bmo#1920423)
    Origin of permission prompt could be spoofed by long URL
  * CVE-2024-10463 (bmo#1920800)
    Cross origin video frame leak
  * CVE-2024-10464 (bmo#1913000)
    History interface could have been used to cause a Denial of
    Service condition in the browser
  * CVE-2024-10465 (bmo#1918853)
    Clipboard "paste" button persisted across tabs
  * CVE-2024-10466 (bmo#1924154)
    DOM push subscription message could hang Firefox
  * CVE-2024-10467 (bmo#1829029, bmo#1888538, bmo#1900394, bmo#1904059,
    bmo#1917742, bmo#1919809, bmo#1923706)
    Memory safety bugs fixed in Firefox 132, Thunderbird 132,
    Firefox ESR 128.4, and Thunderbird 128.4</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1730548800">- Mozilla Thunderbird 128.4.1
  * Add the 20 year donation appeal (bmo#192538)</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1730894400">- Mozilla Thunderbird 128.4.2
  * Increased the auto-compaction threshold to reduce the frequency
    of compaction (bmo#1927656)
  * fixed: New profile creation caused console errors (bmo#1912675)
  * fixed: Repair folder could result in older messages showing
    wrong date and time (bmo#1911916)
  * fixed: Recently deleted messages could become undeleted if
    message compaction failed (bmo#1924927)
  * fixed: Visual and UX improvements
    (bmo#1857413,bmo#1922934,bmo#1924437)
  * fixed: Clicking on an HTML button could cause Thunderbird to
    freeze (bmo#1879355)
  * fixed: Messages could not be selected for dragging
    (bmo#1887518)
  * fixed: Could not open attached file in a MIME encrypted
    message (bmo#1924637)
  * fixed: Account creation "Setup Documentation" link was broken
    (bmo#1925493)
  * fixed: Unable to generate QR codes when exporting to mobile
    in some cases (bmo#1928114)
  * fixed: Operating system reauthentication was missing when
    exporting QR codes for mobile (bmo#1928232)
  * fixed: Could not drag all-day events from one day to another
    in week view (bmo#1922944)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1731153600">- Mozilla Thunderbird 128.4.3
  Fixes:
  * Folder corruption could cause Thunderbird to freeze and become unusable
  * Message corruption could be propagated when reading mbox
  * Folder compaction was not abandoned on shutdown
  * Folder compaction did not clean up on failure
  * Collapsed NNTP thread incorrectly indicated there were unread messages
  * Navigating to next unread message did not wait for all messages
    to be loaded
  * Applying column view to folder and children could break if folder
    error occurred
  * Remote content notifications were broken with encrypted messages
  * Updating criteria of a saved search resulted in poor search performance
  * Drop-downs may not work in some places
  MFSA 2024-61
  * CVE-2024-11159 (bmo#1925929)
    Potential disclosure of plaintext in OpenPGP encrypted message
- remove kmozillahelper support (boo#1226112)
  * removed mozilla-kde.patch
  * requires xdg-desktop-portal instead</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1732104000">- Mozilla Thunderbird 128.4.4
  * QR codes were not scannable by Android app when using most
    high-contrast themes
  * Primary password prompt cancellation during mobile export was
    confusing
- revert using xdg-desktop-portal as some desktops have limited
  support</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1732622400">- Mozilla Thunderbird 128.5.0
  * IMAP could crash when reading cached messages
  * Enabling "Show Folder Size" on Maildir profile could render
    Thunderbird unusable
  * Messages corrupted by folder compaction were only fixed by user
    intervention
  * Reading a message from past the end of an mbox file did not
    cause an error
  * View -&gt; Folders had duplicate F access keys
  * Add-ons adding columns to the message list could fail and cause
    display issue
  * "Empty trash on exit" and "Expunge inbox on exit" did not
    always work
  * Selecting a display option in View -&gt; Tasks did not apply in
    the Task interface
  MFSA 2024-68 (bsc#1233695)
  * CVE-2024-11691 (bmo#1914707, bmo#1924184)
    Memory corruption in Apple GPU drivers
  * CVE-2024-11692 (bmo#1909535)
    Select list elements could be shown over another site
  * CVE-2024-11693 (bmo#1921458)
    Download Protections were bypassed by .library-ms files on Windows
  * CVE-2024-11694 (bmo#1924167)
    CSP Bypass and XSS Exposure via Web Compatibility Shims
  * CVE-2024-11695 (bmo#1925496)
    URL Bar Spoofing via Manipulated Punycode and Whitespace Characters
  * CVE-2024-11696 (bmo#1929600)
    Unhandled Exception in Add-on Signature Verification
  * CVE-2024-11697 (bmo#1842187)
    Improper Keypress Handling in Executable File Confirmation Dialog
  * CVE-2024-11698 (bmo#1916152)
    Fullscreen Lock-Up When Modal Dialog Interrupts Transition on macOS
  * CVE-2024-11699 (bmo#1880582, bmo#1929911)
    Memory safety bugs fixed in Firefox 133, Thunderbird 133,
    Firefox ESR 128.5, and Thunderbird 128.5
- appid is thunderbird-esr currently; use the matching desktop
  file name (boo#1233650)</changelog>
</package>
<package pkgid="cceeb2babc4eddb0ddf5773696559759f01783aeb3c1abf5ef85fc051828f5ece9e549285109feb48bdc86c21d023c4802690573d1b6f86db1feaa38c8a670ea" name="MozillaThunderbird-openpgp-librnp-debuginfo" arch="x86_64">
  <version epoch="0" ver="128.5.1" rel="1.0.10.1.sr20241103"/>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1714824000">- Mozilla Thunderbird 115.10.2:
  https://www.thunderbird.net/en-US/thunderbird/115.10.2/releasenotes/
  This release is identical to 115.10.1, other than changing the
  Update channel for self-updating builds to ESR. (bmo#1893271)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1715688000">- Mozilla Thunderbird 115.11.0
  MFSA 2024-23 (bsc#1224056)
  * CVE-2024-4367 (bmo#1893645)
    Arbitrary JavaScript execution in PDF.js
  * CVE-2024-4767 (bmo#1878577)
    IndexedDB files retained in private browsing mode
  * CVE-2024-4768 (bmo#1886082)
    Potential permissions request bypass via clickjacking
  * CVE-2024-4769 (bmo#1886108)
    Cross-origin responses could be distinguished between script
    and non-script content-types
  * CVE-2024-4770 (bmo#1893270)
    Use-after-free could occur when printing to PDF
  * CVE-2024-4777 (bmo#1878199, bmo#1893340)
    Memory safety bugs fixed in Firefox 126, Firefox ESR 115.11,
    and Thunderbird 115.11</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1716984000">- Mozilla Thunderbird 115.11.1
  * Added a short anonymous survey that a small number of users will
    be randomly asked to complete</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1718625600">- Mozilla Thunderbird 115.12.0
  https://www.thunderbird.net/en-US/thunderbird/115.12.0/releasenotes
  MFSA 2024-28 (bsc#1226027)
  * CVE-2024-5702 (bmo#1193389)
    Use-after-free in networking
  * CVE-2024-5688 (bmo#1895086)
    Use-after-free in JavaScript object transplant
  * CVE-2024-5690 (bmo#1883693)
    External protocol handlers leaked by timing attack
  * CVE-2024-5691 (bmo#1888695)
    Sandboxed iframes were able to bypass sandbox restrictions to
    open a new window
  * CVE-2024-5692 (bmo#1891234)
    Bypass of file name restrictions during saving
  * CVE-2024-5693 (bmo#1891319)
    Cross-Origin Image leak via Offscreen Canvas
  * CVE-2024-5696 (bmo#1896555)
    Memory Corruption in Text Fragments
  * CVE-2024-5700 (bmo#1862809, bmo#1889355, bmo#1893388, bmo#1895123)
    Memory safety bugs fixed in Firefox 127, Firefox ESR 115.12,
    and Thunderbird 115.12</changelog>
  <changelog author="Martin Sirringhaus &lt;martin.sirringhaus@suse.com&gt;" date="1719921600">- Mozilla Thunderbird 115.12.2
  * fixed: Annual Thunderbird Beta appeal intended for
    Thunderbird 115.12.0 did not open as expected (bmo#1898084)
- Mozilla Thunderbird 115.12.1
  * 115.12.0 got pulled because of upstream automation process errors
    and Windows installer signing changes.
    No code changes, changelog is the same as 115.12.0 (bsc#1226495)
- Added thunderbird-fix-CVE-2024-34703.patch (bsc#1227239)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1720612800">- Mozilla Thunderbird 115.13.0
  * After starting Thunderbird, the message list position was
    sometimes set to an incorrect position
  MFSA 2024-30 (bsc#1226316)
  * CVE-2024-6600 (bmo#1888340)
    Memory corruption in WebGL API
  * CVE-2024-6601 (bmo#1890748)
    Race condition in permission assignment
  * CVE-2024-6602 (bmo#1895032)
    Memory corruption in NSS
  * CVE-2024-6603 (bmo#1895081)
    Memory corruption in thread creation
  * CVE-2024-6604 (bmo#1748105, bmo#1837550, bmo#1884266)
    Memory safety bugs fixed in Firefox 128, Firefox ESR 115.13,
    and Thunderbird 115.13</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1722600000">- Mozilla Thunderbird 115.14.0
  * When using an external installation of GnuPG, Thunderbird
    occassionally sent/received corrupted messages (bmo#1898832)
  * Users of external GnuPG were unable to decrypt incorrectly
    encoded messages (bmo#1906903)
  MFSA 2024-38 (bsc#1228648)
  * CVE-2024-7519 (bmo#1902307)
    Out of bounds memory access in graphics shared memory handling
  * CVE-2024-7521 (bmo#1904644)
    Incomplete WebAssembly exception handing
  * CVE-2024-7522 (bmo#1906727)
    Out of bounds read in editor component
  * CVE-2024-7525 (bmo#1909298)
    Missing permission check when creating a StreamFilter
  * CVE-2024-7526 (bmo#1910306)
    Uninitialized memory used by WebGL
  * CVE-2024-7527 (bmo#1871303)
    Use-after-free in JavaScript garbage collection
  * CVE-2024-7529 (bmo#1903187)
    Document content could partially obscure security prompts</changelog>
  <changelog author="Manfred Hollstein &lt;manfred.h@gmx.net&gt;" date="1724932800">- Use gcc13 on Tumbleweed and where it is available.
- Don't use gcc14 as sources don't compile.</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1725624000">- Mozilla Thunderbird 115.15.0
  MFSA 2024-44 (bsc#1229821)
  * CVE-2024-8381 (bmo#1912715)
    Type confusion when looking up a property name in a "with"
    block
  * CVE-2024-8382 (bmo#1906744)
    Internal event interfaces were exposed to web content when
    browser EventHandler listener callbacks ran
  * CVE-2024-8384 (bmo#1911288)
    Garbage collection could mis-color cross-compartment objects
    in OOM conditions</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1728561600">- Mozilla Thunderbird 128.3.1
  https://www.thunderbird.net/en-US/thunderbird/128.0esr/releasenotes/
  and following release notes for minor version updates
  MFSA 2024-52  (bsc#1231413)
  * CVE-2024-9680 (bmo#1923344)
    Use-after-free in Animation timeline
  Mozilla Thunderbird 128.3.0
  MFSA 2024-32 (128.0)
  MFSA 2024-37 (128.1)
  MFSA 2024-43 (128.2)
  MFSA 2024-49 (128.3) (bsc#1230979)
  * CVE-2024-9392 (bmo#1899154, bmo#1905843)
    Compromised content process can bypass site isolation
  * CVE-2024-9393 (bmo#1918301)
    Cross-origin access to PDF contents through multipart responses
  * CVE-2024-9394 (bmo#1918874)
    Cross-origin access to JSON contents through multipart responses
  * CVE-2024-8900 (bmo#1872841)
    Clipboard write permission bypass
  * CVE-2024-9396 (bmo#1912471)
    Potential memory corruption may occur when cloning certain objects
  * CVE-2024-9397 (bmo#1916659)
    Potential directory upload bypass via clickjacking
  * CVE-2024-9398 (bmo#1881037)
    External protocol handlers could be enumerated via popups
  * CVE-2024-9399 (bmo#1907726)
    Specially crafted WebTransport requests could lead to denial
    of service
  * CVE-2024-9400 (bmo#1915249)
    Potential memory corruption during JIT compilation
  * CVE-2024-9401 (bmo#1872744, bmo#1897792, bmo#1911317, bmo#1916476)
    Memory safety bugs fixed in Firefox 131, Firefox ESR 115.16,
    Firefox ESR 128.3, Thunderbird 131, and Thunderbird 128.3
  * CVE-2024-9402 (bmo#1872744, bmo#1897792, bmo#1911317, bmo#1913445,
    bmo#1914106, bmo#1914475, bmo#1914963, bmo#1915008, bmo#1916476)
    Memory safety bugs fixed in Firefox 131, Firefox ESR 128.3,
    Thunderbird 131, and Thunderbird 128.3
- removed obsolete patches
  mozilla-bmo1504834-part3.patch
  mozilla-bmo1512162.patch
  mozilla-bmo1775202.patch
  mozilla-bmo531915.patch
  mozilla-fix-aarch64-libopus.patch
  mozilla-fix-issues-with-llvm18.patch
  mozilla-fix-top-level-asm.patch
  mozilla-partial-revert-1768632.patch
  mozilla-rust-disable-future-incompat.patch
  thunderbird-fix-CVE-2024-34703.patch
- new patch thunderbird-silence-no-return.patch
- rebased
  mozilla-bmo1504834-part1.patch
  mozilla-kde.patch
  mozilla-libavcodec58_91.patch
  mozilla-silence-no-return-type.patch</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1729080000">- Mozilla Thunderbird 128.3.2
  bugfix release:
  https://www.thunderbird.net/en-US/thunderbird/128.3.2esr/releasenotes
- bring back mozilla-bmo531915.patch to fix x86</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1729684800">- Mozilla Thunderbird 128.3.3
  * Files left over from failed folder compactions could use up
    disk space (bmo#1878541)
  * Message list returned to selected message after action on
    another message (bmo#1917485)
  * Some faulty messages were downloaded and never stored
    (bmo#1923765)
  * Messages could become corrupted during folder compaction
    (bmo#1923747,bmo#1923541,bmo#1720047)
  * Searching events by Location, Description, or URL failed
    (bmo#1912710)
  * "Remove All Shown" saved passwords deleted all logins if
    filtered without results (bmo#601447)
  * Calendar event updates were not always sent to attendees
    (bmo#1877640)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1730289600">- Mozilla Thunderbird 128.4.0
  * Export Thunderbird account settings to Thunderbird Mobile via QRCode
  Bugfixes:
  * Unable to send an unencrypted response to an OpenPGP encrypted message
  MFSA 2024-58 (bsc#1231879)
  * CVE-2024-10458 (bmo#1921733)
    Permission leak via embed or object elements
  * CVE-2024-10459 (bmo#1919087)
    Use-after-free in layout with accessibility
  * CVE-2024-10460 (bmo#1912537)
    Confusing display of origin for external protocol handler prompt
  * CVE-2024-10461 (bmo#1914521)
    XSS due to Content-Disposition being ignored in
    multipart/x-mixed-replace response
  * CVE-2024-10462 (bmo#1920423)
    Origin of permission prompt could be spoofed by long URL
  * CVE-2024-10463 (bmo#1920800)
    Cross origin video frame leak
  * CVE-2024-10464 (bmo#1913000)
    History interface could have been used to cause a Denial of
    Service condition in the browser
  * CVE-2024-10465 (bmo#1918853)
    Clipboard "paste" button persisted across tabs
  * CVE-2024-10466 (bmo#1924154)
    DOM push subscription message could hang Firefox
  * CVE-2024-10467 (bmo#1829029, bmo#1888538, bmo#1900394, bmo#1904059,
    bmo#1917742, bmo#1919809, bmo#1923706)
    Memory safety bugs fixed in Firefox 132, Thunderbird 132,
    Firefox ESR 128.4, and Thunderbird 128.4</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1730548800">- Mozilla Thunderbird 128.4.1
  * Add the 20 year donation appeal (bmo#192538)</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1730894400">- Mozilla Thunderbird 128.4.2
  * Increased the auto-compaction threshold to reduce the frequency
    of compaction (bmo#1927656)
  * fixed: New profile creation caused console errors (bmo#1912675)
  * fixed: Repair folder could result in older messages showing
    wrong date and time (bmo#1911916)
  * fixed: Recently deleted messages could become undeleted if
    message compaction failed (bmo#1924927)
  * fixed: Visual and UX improvements
    (bmo#1857413,bmo#1922934,bmo#1924437)
  * fixed: Clicking on an HTML button could cause Thunderbird to
    freeze (bmo#1879355)
  * fixed: Messages could not be selected for dragging
    (bmo#1887518)
  * fixed: Could not open attached file in a MIME encrypted
    message (bmo#1924637)
  * fixed: Account creation "Setup Documentation" link was broken
    (bmo#1925493)
  * fixed: Unable to generate QR codes when exporting to mobile
    in some cases (bmo#1928114)
  * fixed: Operating system reauthentication was missing when
    exporting QR codes for mobile (bmo#1928232)
  * fixed: Could not drag all-day events from one day to another
    in week view (bmo#1922944)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1731153600">- Mozilla Thunderbird 128.4.3
  Fixes:
  * Folder corruption could cause Thunderbird to freeze and become unusable
  * Message corruption could be propagated when reading mbox
  * Folder compaction was not abandoned on shutdown
  * Folder compaction did not clean up on failure
  * Collapsed NNTP thread incorrectly indicated there were unread messages
  * Navigating to next unread message did not wait for all messages
    to be loaded
  * Applying column view to folder and children could break if folder
    error occurred
  * Remote content notifications were broken with encrypted messages
  * Updating criteria of a saved search resulted in poor search performance
  * Drop-downs may not work in some places
  MFSA 2024-61
  * CVE-2024-11159 (bmo#1925929)
    Potential disclosure of plaintext in OpenPGP encrypted message
- remove kmozillahelper support (boo#1226112)
  * removed mozilla-kde.patch
  * requires xdg-desktop-portal instead</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1732104000">- Mozilla Thunderbird 128.4.4
  * QR codes were not scannable by Android app when using most
    high-contrast themes
  * Primary password prompt cancellation during mobile export was
    confusing
- revert using xdg-desktop-portal as some desktops have limited
  support</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1732622400">- Mozilla Thunderbird 128.5.0
  * IMAP could crash when reading cached messages
  * Enabling "Show Folder Size" on Maildir profile could render
    Thunderbird unusable
  * Messages corrupted by folder compaction were only fixed by user
    intervention
  * Reading a message from past the end of an mbox file did not
    cause an error
  * View -&gt; Folders had duplicate F access keys
  * Add-ons adding columns to the message list could fail and cause
    display issue
  * "Empty trash on exit" and "Expunge inbox on exit" did not
    always work
  * Selecting a display option in View -&gt; Tasks did not apply in
    the Task interface
  MFSA 2024-68 (bsc#1233695)
  * CVE-2024-11691 (bmo#1914707, bmo#1924184)
    Memory corruption in Apple GPU drivers
  * CVE-2024-11692 (bmo#1909535)
    Select list elements could be shown over another site
  * CVE-2024-11693 (bmo#1921458)
    Download Protections were bypassed by .library-ms files on Windows
  * CVE-2024-11694 (bmo#1924167)
    CSP Bypass and XSS Exposure via Web Compatibility Shims
  * CVE-2024-11695 (bmo#1925496)
    URL Bar Spoofing via Manipulated Punycode and Whitespace Characters
  * CVE-2024-11696 (bmo#1929600)
    Unhandled Exception in Add-on Signature Verification
  * CVE-2024-11697 (bmo#1842187)
    Improper Keypress Handling in Executable File Confirmation Dialog
  * CVE-2024-11698 (bmo#1916152)
    Fullscreen Lock-Up When Modal Dialog Interrupts Transition on macOS
  * CVE-2024-11699 (bmo#1880582, bmo#1929911)
    Memory safety bugs fixed in Firefox 133, Thunderbird 133,
    Firefox ESR 128.5, and Thunderbird 128.5
- appid is thunderbird-esr currently; use the matching desktop
  file name (boo#1233650)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1732795200">- make spec compatible with rpm &lt; 4.17 again
- correct appdata for different desktop filename</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1733227200">- Mozilla Thunderbird 128.5.1
  * Add end of year donation appeal
  * Total message count for favorite folders did not work consistently</changelog>
</package>
<package pkgid="ac2166342d0dede9ba935d7dfb6d516a7517af6920bbc1a90d974469031e4f662344d9ca012fbf8be8275fff1b734b4f168e3cd16af959471942e13085c4d96d" name="MozillaThunderbird-translations-common" arch="x86_64">
  <version epoch="0" ver="128.4.2" rel="1.0.2.1.sr20241103"/>
  <changelog author="Adam Mizerski &lt;adam@mizerski.pl&gt;" date="1709640000">- Create subpackage MozillaThunderbird-openpgp-librnp</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1710590400">- Mozilla Thunderbird 115.9.0
  https://www.thunderbird.net/en-US/thunderbird/115.9.0/releasenotes/
  MFSA 2024-14 (bsc#1221327)
  * CVE-2024-0743 (bmo#1867408)
    Crash in NSS TLS method
  * CVE-2024-2605 (bmo#1872920)
    Windows Error Reporter could be used as a Sandbox escape vector
  * CVE-2024-2607 (bmo#1879939)
    JIT code failed to save return registers on Armv7-A
  * CVE-2024-2608 (bmo#1880692)
    Integer overflow could have led to out of bounds write
  * CVE-2024-2616 (bmo#1846197)
    Improve handling of out-of-memory conditions in ICU
  * CVE-2023-5388 (bmo#1780432)
    NSS susceptible to timing attack against RSA decryption
  * CVE-2024-2610 (bmo#1871112)
    Improper handling of html and body tags enabled CSP nonce leakage
  * CVE-2024-2611 (bmo#1876675)
    Clickjacking vulnerability could have led to a user accidentally
    granting permissions
  * CVE-2024-2612 (bmo#1879444)
    Self referencing object could have potentially led to a use-
    after-free
  * CVE-2024-2614 (bmo#1685358, bmo#1861016, bmo#1880405, bmo#1881093)
    Memory safety bugs fixed in Firefox 124, Firefox ESR 115.9,
    and Thunderbird 115.9</changelog>
  <changelog author="Manfred Hollstein &lt;manfred.h@gmx.net&gt;" date="1710936000">- LLVM18 breaks building Thunderbird on Tumbleweed; add
  * mozilla-fix-issues-with-llvm18.patch</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1713096000">- Mozilla Thunderbird 115.10.0
  https://www.thunderbird.net/en-US/thunderbird/115.10.0/releasenotes/
  MFSA 2024-20 (bsc#1222535)
  * CVE-2024-3852 (bmo#1883542)
    GetBoundName in the JIT returned the wrong object
  * CVE-2024-3854 (bmo#1884552)
    Out-of-bounds-read after mis-optimized switch statement
  * CVE-2024-3857 (bmo#1886683)
    Incorrect JITting of arguments led to use-after-free during
    garbage collection
  * CVE-2024-2609 (bmo#1866100)
    Permission prompt input delay could expire when not in focus
  * CVE-2024-3859 (bmo#1874489)
    Integer-overflow led to out-of-bounds-read in the OpenType sanitizer
  * CVE-2024-3861 (bmo#1883158)
    Potential use-after-free due to AlignedBuffer self-move
  * CVE-2024-3863 (bmo#1885855)
    Download Protections were bypassed by .xrm-ms files on Windows
  * CVE-2024-3302 (bmo#1881183)
    Denial of Service using HTTP/2 CONTINUATION frames
  * CVE-2024-3864 (bmo#1888333)
    Memory safety bug fixed in Firefox 125, Firefox ESR 115.10,
    and Thunderbird 115.10</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1713528000">- Mozilla Thunderbird 115.10.1
  https://www.thunderbird.net/en-US/thunderbird/115.10.1/releasenotes/
  * fixed hangup introduced with 115.10.0 (bmo#1891889)</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1714824000">- Mozilla Thunderbird 115.10.2:
  https://www.thunderbird.net/en-US/thunderbird/115.10.2/releasenotes/
  This release is identical to 115.10.1, other than changing the
  Update channel for self-updating builds to ESR. (bmo#1893271)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1715688000">- Mozilla Thunderbird 115.11.0
  MFSA 2024-23 (bsc#1224056)
  * CVE-2024-4367 (bmo#1893645)
    Arbitrary JavaScript execution in PDF.js
  * CVE-2024-4767 (bmo#1878577)
    IndexedDB files retained in private browsing mode
  * CVE-2024-4768 (bmo#1886082)
    Potential permissions request bypass via clickjacking
  * CVE-2024-4769 (bmo#1886108)
    Cross-origin responses could be distinguished between script
    and non-script content-types
  * CVE-2024-4770 (bmo#1893270)
    Use-after-free could occur when printing to PDF
  * CVE-2024-4777 (bmo#1878199, bmo#1893340)
    Memory safety bugs fixed in Firefox 126, Firefox ESR 115.11,
    and Thunderbird 115.11</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1716984000">- Mozilla Thunderbird 115.11.1
  * Added a short anonymous survey that a small number of users will
    be randomly asked to complete</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1718625600">- Mozilla Thunderbird 115.12.0
  https://www.thunderbird.net/en-US/thunderbird/115.12.0/releasenotes
  MFSA 2024-28 (bsc#1226027)
  * CVE-2024-5702 (bmo#1193389)
    Use-after-free in networking
  * CVE-2024-5688 (bmo#1895086)
    Use-after-free in JavaScript object transplant
  * CVE-2024-5690 (bmo#1883693)
    External protocol handlers leaked by timing attack
  * CVE-2024-5691 (bmo#1888695)
    Sandboxed iframes were able to bypass sandbox restrictions to
    open a new window
  * CVE-2024-5692 (bmo#1891234)
    Bypass of file name restrictions during saving
  * CVE-2024-5693 (bmo#1891319)
    Cross-Origin Image leak via Offscreen Canvas
  * CVE-2024-5696 (bmo#1896555)
    Memory Corruption in Text Fragments
  * CVE-2024-5700 (bmo#1862809, bmo#1889355, bmo#1893388, bmo#1895123)
    Memory safety bugs fixed in Firefox 127, Firefox ESR 115.12,
    and Thunderbird 115.12</changelog>
  <changelog author="Martin Sirringhaus &lt;martin.sirringhaus@suse.com&gt;" date="1719921600">- Mozilla Thunderbird 115.12.2
  * fixed: Annual Thunderbird Beta appeal intended for
    Thunderbird 115.12.0 did not open as expected (bmo#1898084)
- Mozilla Thunderbird 115.12.1
  * 115.12.0 got pulled because of upstream automation process errors
    and Windows installer signing changes.
    No code changes, changelog is the same as 115.12.0 (bsc#1226495)
- Added thunderbird-fix-CVE-2024-34703.patch (bsc#1227239)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1720612800">- Mozilla Thunderbird 115.13.0
  * After starting Thunderbird, the message list position was
    sometimes set to an incorrect position
  MFSA 2024-30 (bsc#1226316)
  * CVE-2024-6600 (bmo#1888340)
    Memory corruption in WebGL API
  * CVE-2024-6601 (bmo#1890748)
    Race condition in permission assignment
  * CVE-2024-6602 (bmo#1895032)
    Memory corruption in NSS
  * CVE-2024-6603 (bmo#1895081)
    Memory corruption in thread creation
  * CVE-2024-6604 (bmo#1748105, bmo#1837550, bmo#1884266)
    Memory safety bugs fixed in Firefox 128, Firefox ESR 115.13,
    and Thunderbird 115.13</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1722600000">- Mozilla Thunderbird 115.14.0
  * When using an external installation of GnuPG, Thunderbird
    occassionally sent/received corrupted messages (bmo#1898832)
  * Users of external GnuPG were unable to decrypt incorrectly
    encoded messages (bmo#1906903)
  MFSA 2024-38 (bsc#1228648)
  * CVE-2024-7519 (bmo#1902307)
    Out of bounds memory access in graphics shared memory handling
  * CVE-2024-7521 (bmo#1904644)
    Incomplete WebAssembly exception handing
  * CVE-2024-7522 (bmo#1906727)
    Out of bounds read in editor component
  * CVE-2024-7525 (bmo#1909298)
    Missing permission check when creating a StreamFilter
  * CVE-2024-7526 (bmo#1910306)
    Uninitialized memory used by WebGL
  * CVE-2024-7527 (bmo#1871303)
    Use-after-free in JavaScript garbage collection
  * CVE-2024-7529 (bmo#1903187)
    Document content could partially obscure security prompts</changelog>
  <changelog author="Manfred Hollstein &lt;manfred.h@gmx.net&gt;" date="1724932800">- Use gcc13 on Tumbleweed and where it is available.
- Don't use gcc14 as sources don't compile.</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1725624000">- Mozilla Thunderbird 115.15.0
  MFSA 2024-44 (bsc#1229821)
  * CVE-2024-8381 (bmo#1912715)
    Type confusion when looking up a property name in a "with"
    block
  * CVE-2024-8382 (bmo#1906744)
    Internal event interfaces were exposed to web content when
    browser EventHandler listener callbacks ran
  * CVE-2024-8384 (bmo#1911288)
    Garbage collection could mis-color cross-compartment objects
    in OOM conditions</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1728561600">- Mozilla Thunderbird 128.3.1
  https://www.thunderbird.net/en-US/thunderbird/128.0esr/releasenotes/
  and following release notes for minor version updates
  MFSA 2024-52  (bsc#1231413)
  * CVE-2024-9680 (bmo#1923344)
    Use-after-free in Animation timeline
  Mozilla Thunderbird 128.3.0
  MFSA 2024-32 (128.0)
  MFSA 2024-37 (128.1)
  MFSA 2024-43 (128.2)
  MFSA 2024-49 (128.3) (bsc#1230979)
  * CVE-2024-9392 (bmo#1899154, bmo#1905843)
    Compromised content process can bypass site isolation
  * CVE-2024-9393 (bmo#1918301)
    Cross-origin access to PDF contents through multipart responses
  * CVE-2024-9394 (bmo#1918874)
    Cross-origin access to JSON contents through multipart responses
  * CVE-2024-8900 (bmo#1872841)
    Clipboard write permission bypass
  * CVE-2024-9396 (bmo#1912471)
    Potential memory corruption may occur when cloning certain objects
  * CVE-2024-9397 (bmo#1916659)
    Potential directory upload bypass via clickjacking
  * CVE-2024-9398 (bmo#1881037)
    External protocol handlers could be enumerated via popups
  * CVE-2024-9399 (bmo#1907726)
    Specially crafted WebTransport requests could lead to denial
    of service
  * CVE-2024-9400 (bmo#1915249)
    Potential memory corruption during JIT compilation
  * CVE-2024-9401 (bmo#1872744, bmo#1897792, bmo#1911317, bmo#1916476)
    Memory safety bugs fixed in Firefox 131, Firefox ESR 115.16,
    Firefox ESR 128.3, Thunderbird 131, and Thunderbird 128.3
  * CVE-2024-9402 (bmo#1872744, bmo#1897792, bmo#1911317, bmo#1913445,
    bmo#1914106, bmo#1914475, bmo#1914963, bmo#1915008, bmo#1916476)
    Memory safety bugs fixed in Firefox 131, Firefox ESR 128.3,
    Thunderbird 131, and Thunderbird 128.3
- removed obsolete patches
  mozilla-bmo1504834-part3.patch
  mozilla-bmo1512162.patch
  mozilla-bmo1775202.patch
  mozilla-bmo531915.patch
  mozilla-fix-aarch64-libopus.patch
  mozilla-fix-issues-with-llvm18.patch
  mozilla-fix-top-level-asm.patch
  mozilla-partial-revert-1768632.patch
  mozilla-rust-disable-future-incompat.patch
  thunderbird-fix-CVE-2024-34703.patch
- new patch thunderbird-silence-no-return.patch
- rebased
  mozilla-bmo1504834-part1.patch
  mozilla-kde.patch
  mozilla-libavcodec58_91.patch
  mozilla-silence-no-return-type.patch</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1729080000">- Mozilla Thunderbird 128.3.2
  bugfix release:
  https://www.thunderbird.net/en-US/thunderbird/128.3.2esr/releasenotes
- bring back mozilla-bmo531915.patch to fix x86</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1729684800">- Mozilla Thunderbird 128.3.3
  * Files left over from failed folder compactions could use up
    disk space (bmo#1878541)
  * Message list returned to selected message after action on
    another message (bmo#1917485)
  * Some faulty messages were downloaded and never stored
    (bmo#1923765)
  * Messages could become corrupted during folder compaction
    (bmo#1923747,bmo#1923541,bmo#1720047)
  * Searching events by Location, Description, or URL failed
    (bmo#1912710)
  * "Remove All Shown" saved passwords deleted all logins if
    filtered without results (bmo#601447)
  * Calendar event updates were not always sent to attendees
    (bmo#1877640)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1730289600">- Mozilla Thunderbird 128.4.0
  * Export Thunderbird account settings to Thunderbird Mobile via QRCode
  Bugfixes:
  * Unable to send an unencrypted response to an OpenPGP encrypted message
  MFSA 2024-58 (bsc#1231879)
  * CVE-2024-10458 (bmo#1921733)
    Permission leak via embed or object elements
  * CVE-2024-10459 (bmo#1919087)
    Use-after-free in layout with accessibility
  * CVE-2024-10460 (bmo#1912537)
    Confusing display of origin for external protocol handler prompt
  * CVE-2024-10461 (bmo#1914521)
    XSS due to Content-Disposition being ignored in
    multipart/x-mixed-replace response
  * CVE-2024-10462 (bmo#1920423)
    Origin of permission prompt could be spoofed by long URL
  * CVE-2024-10463 (bmo#1920800)
    Cross origin video frame leak
  * CVE-2024-10464 (bmo#1913000)
    History interface could have been used to cause a Denial of
    Service condition in the browser
  * CVE-2024-10465 (bmo#1918853)
    Clipboard "paste" button persisted across tabs
  * CVE-2024-10466 (bmo#1924154)
    DOM push subscription message could hang Firefox
  * CVE-2024-10467 (bmo#1829029, bmo#1888538, bmo#1900394, bmo#1904059,
    bmo#1917742, bmo#1919809, bmo#1923706)
    Memory safety bugs fixed in Firefox 132, Thunderbird 132,
    Firefox ESR 128.4, and Thunderbird 128.4</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1730548800">- Mozilla Thunderbird 128.4.1
  * Add the 20 year donation appeal (bmo#192538)</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1730894400">- Mozilla Thunderbird 128.4.2
  * Increased the auto-compaction threshold to reduce the frequency
    of compaction (bmo#1927656)
  * fixed: New profile creation caused console errors (bmo#1912675)
  * fixed: Repair folder could result in older messages showing
    wrong date and time (bmo#1911916)
  * fixed: Recently deleted messages could become undeleted if
    message compaction failed (bmo#1924927)
  * fixed: Visual and UX improvements
    (bmo#1857413,bmo#1922934,bmo#1924437)
  * fixed: Clicking on an HTML button could cause Thunderbird to
    freeze (bmo#1879355)
  * fixed: Messages could not be selected for dragging
    (bmo#1887518)
  * fixed: Could not open attached file in a MIME encrypted
    message (bmo#1924637)
  * fixed: Account creation "Setup Documentation" link was broken
    (bmo#1925493)
  * fixed: Unable to generate QR codes when exporting to mobile
    in some cases (bmo#1928114)
  * fixed: Operating system reauthentication was missing when
    exporting QR codes for mobile (bmo#1928232)
  * fixed: Could not drag all-day events from one day to another
    in week view (bmo#1922944)</changelog>
</package>
<package pkgid="d02dd6179fed286e33fbf300987995181fed43d2c2d2f8be6b928d39225b38d52a83535078ac15dc3d552fb0421b0f9a1285c6920941e887675856b270f59416" name="MozillaThunderbird-translations-common" arch="x86_64">
  <version epoch="0" ver="128.4.3" rel="1.1"/>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1710590400">- Mozilla Thunderbird 115.9.0
  https://www.thunderbird.net/en-US/thunderbird/115.9.0/releasenotes/
  MFSA 2024-14 (bsc#1221327)
  * CVE-2024-0743 (bmo#1867408)
    Crash in NSS TLS method
  * CVE-2024-2605 (bmo#1872920)
    Windows Error Reporter could be used as a Sandbox escape vector
  * CVE-2024-2607 (bmo#1879939)
    JIT code failed to save return registers on Armv7-A
  * CVE-2024-2608 (bmo#1880692)
    Integer overflow could have led to out of bounds write
  * CVE-2024-2616 (bmo#1846197)
    Improve handling of out-of-memory conditions in ICU
  * CVE-2023-5388 (bmo#1780432)
    NSS susceptible to timing attack against RSA decryption
  * CVE-2024-2610 (bmo#1871112)
    Improper handling of html and body tags enabled CSP nonce leakage
  * CVE-2024-2611 (bmo#1876675)
    Clickjacking vulnerability could have led to a user accidentally
    granting permissions
  * CVE-2024-2612 (bmo#1879444)
    Self referencing object could have potentially led to a use-
    after-free
  * CVE-2024-2614 (bmo#1685358, bmo#1861016, bmo#1880405, bmo#1881093)
    Memory safety bugs fixed in Firefox 124, Firefox ESR 115.9,
    and Thunderbird 115.9</changelog>
  <changelog author="Manfred Hollstein &lt;manfred.h@gmx.net&gt;" date="1710936000">- LLVM18 breaks building Thunderbird on Tumbleweed; add
  * mozilla-fix-issues-with-llvm18.patch</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1713096000">- Mozilla Thunderbird 115.10.0
  https://www.thunderbird.net/en-US/thunderbird/115.10.0/releasenotes/
  MFSA 2024-20 (bsc#1222535)
  * CVE-2024-3852 (bmo#1883542)
    GetBoundName in the JIT returned the wrong object
  * CVE-2024-3854 (bmo#1884552)
    Out-of-bounds-read after mis-optimized switch statement
  * CVE-2024-3857 (bmo#1886683)
    Incorrect JITting of arguments led to use-after-free during
    garbage collection
  * CVE-2024-2609 (bmo#1866100)
    Permission prompt input delay could expire when not in focus
  * CVE-2024-3859 (bmo#1874489)
    Integer-overflow led to out-of-bounds-read in the OpenType sanitizer
  * CVE-2024-3861 (bmo#1883158)
    Potential use-after-free due to AlignedBuffer self-move
  * CVE-2024-3863 (bmo#1885855)
    Download Protections were bypassed by .xrm-ms files on Windows
  * CVE-2024-3302 (bmo#1881183)
    Denial of Service using HTTP/2 CONTINUATION frames
  * CVE-2024-3864 (bmo#1888333)
    Memory safety bug fixed in Firefox 125, Firefox ESR 115.10,
    and Thunderbird 115.10</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1713528000">- Mozilla Thunderbird 115.10.1
  https://www.thunderbird.net/en-US/thunderbird/115.10.1/releasenotes/
  * fixed hangup introduced with 115.10.0 (bmo#1891889)</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1714824000">- Mozilla Thunderbird 115.10.2:
  https://www.thunderbird.net/en-US/thunderbird/115.10.2/releasenotes/
  This release is identical to 115.10.1, other than changing the
  Update channel for self-updating builds to ESR. (bmo#1893271)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1715688000">- Mozilla Thunderbird 115.11.0
  MFSA 2024-23 (bsc#1224056)
  * CVE-2024-4367 (bmo#1893645)
    Arbitrary JavaScript execution in PDF.js
  * CVE-2024-4767 (bmo#1878577)
    IndexedDB files retained in private browsing mode
  * CVE-2024-4768 (bmo#1886082)
    Potential permissions request bypass via clickjacking
  * CVE-2024-4769 (bmo#1886108)
    Cross-origin responses could be distinguished between script
    and non-script content-types
  * CVE-2024-4770 (bmo#1893270)
    Use-after-free could occur when printing to PDF
  * CVE-2024-4777 (bmo#1878199, bmo#1893340)
    Memory safety bugs fixed in Firefox 126, Firefox ESR 115.11,
    and Thunderbird 115.11</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1716984000">- Mozilla Thunderbird 115.11.1
  * Added a short anonymous survey that a small number of users will
    be randomly asked to complete</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1718625600">- Mozilla Thunderbird 115.12.0
  https://www.thunderbird.net/en-US/thunderbird/115.12.0/releasenotes
  MFSA 2024-28 (bsc#1226027)
  * CVE-2024-5702 (bmo#1193389)
    Use-after-free in networking
  * CVE-2024-5688 (bmo#1895086)
    Use-after-free in JavaScript object transplant
  * CVE-2024-5690 (bmo#1883693)
    External protocol handlers leaked by timing attack
  * CVE-2024-5691 (bmo#1888695)
    Sandboxed iframes were able to bypass sandbox restrictions to
    open a new window
  * CVE-2024-5692 (bmo#1891234)
    Bypass of file name restrictions during saving
  * CVE-2024-5693 (bmo#1891319)
    Cross-Origin Image leak via Offscreen Canvas
  * CVE-2024-5696 (bmo#1896555)
    Memory Corruption in Text Fragments
  * CVE-2024-5700 (bmo#1862809, bmo#1889355, bmo#1893388, bmo#1895123)
    Memory safety bugs fixed in Firefox 127, Firefox ESR 115.12,
    and Thunderbird 115.12</changelog>
  <changelog author="Martin Sirringhaus &lt;martin.sirringhaus@suse.com&gt;" date="1719921600">- Mozilla Thunderbird 115.12.2
  * fixed: Annual Thunderbird Beta appeal intended for
    Thunderbird 115.12.0 did not open as expected (bmo#1898084)
- Mozilla Thunderbird 115.12.1
  * 115.12.0 got pulled because of upstream automation process errors
    and Windows installer signing changes.
    No code changes, changelog is the same as 115.12.0 (bsc#1226495)
- Added thunderbird-fix-CVE-2024-34703.patch (bsc#1227239)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1720612800">- Mozilla Thunderbird 115.13.0
  * After starting Thunderbird, the message list position was
    sometimes set to an incorrect position
  MFSA 2024-30 (bsc#1226316)
  * CVE-2024-6600 (bmo#1888340)
    Memory corruption in WebGL API
  * CVE-2024-6601 (bmo#1890748)
    Race condition in permission assignment
  * CVE-2024-6602 (bmo#1895032)
    Memory corruption in NSS
  * CVE-2024-6603 (bmo#1895081)
    Memory corruption in thread creation
  * CVE-2024-6604 (bmo#1748105, bmo#1837550, bmo#1884266)
    Memory safety bugs fixed in Firefox 128, Firefox ESR 115.13,
    and Thunderbird 115.13</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1722600000">- Mozilla Thunderbird 115.14.0
  * When using an external installation of GnuPG, Thunderbird
    occassionally sent/received corrupted messages (bmo#1898832)
  * Users of external GnuPG were unable to decrypt incorrectly
    encoded messages (bmo#1906903)
  MFSA 2024-38 (bsc#1228648)
  * CVE-2024-7519 (bmo#1902307)
    Out of bounds memory access in graphics shared memory handling
  * CVE-2024-7521 (bmo#1904644)
    Incomplete WebAssembly exception handing
  * CVE-2024-7522 (bmo#1906727)
    Out of bounds read in editor component
  * CVE-2024-7525 (bmo#1909298)
    Missing permission check when creating a StreamFilter
  * CVE-2024-7526 (bmo#1910306)
    Uninitialized memory used by WebGL
  * CVE-2024-7527 (bmo#1871303)
    Use-after-free in JavaScript garbage collection
  * CVE-2024-7529 (bmo#1903187)
    Document content could partially obscure security prompts</changelog>
  <changelog author="Manfred Hollstein &lt;manfred.h@gmx.net&gt;" date="1724932800">- Use gcc13 on Tumbleweed and where it is available.
- Don't use gcc14 as sources don't compile.</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1725624000">- Mozilla Thunderbird 115.15.0
  MFSA 2024-44 (bsc#1229821)
  * CVE-2024-8381 (bmo#1912715)
    Type confusion when looking up a property name in a "with"
    block
  * CVE-2024-8382 (bmo#1906744)
    Internal event interfaces were exposed to web content when
    browser EventHandler listener callbacks ran
  * CVE-2024-8384 (bmo#1911288)
    Garbage collection could mis-color cross-compartment objects
    in OOM conditions</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1728561600">- Mozilla Thunderbird 128.3.1
  https://www.thunderbird.net/en-US/thunderbird/128.0esr/releasenotes/
  and following release notes for minor version updates
  MFSA 2024-52  (bsc#1231413)
  * CVE-2024-9680 (bmo#1923344)
    Use-after-free in Animation timeline
  Mozilla Thunderbird 128.3.0
  MFSA 2024-32 (128.0)
  MFSA 2024-37 (128.1)
  MFSA 2024-43 (128.2)
  MFSA 2024-49 (128.3) (bsc#1230979)
  * CVE-2024-9392 (bmo#1899154, bmo#1905843)
    Compromised content process can bypass site isolation
  * CVE-2024-9393 (bmo#1918301)
    Cross-origin access to PDF contents through multipart responses
  * CVE-2024-9394 (bmo#1918874)
    Cross-origin access to JSON contents through multipart responses
  * CVE-2024-8900 (bmo#1872841)
    Clipboard write permission bypass
  * CVE-2024-9396 (bmo#1912471)
    Potential memory corruption may occur when cloning certain objects
  * CVE-2024-9397 (bmo#1916659)
    Potential directory upload bypass via clickjacking
  * CVE-2024-9398 (bmo#1881037)
    External protocol handlers could be enumerated via popups
  * CVE-2024-9399 (bmo#1907726)
    Specially crafted WebTransport requests could lead to denial
    of service
  * CVE-2024-9400 (bmo#1915249)
    Potential memory corruption during JIT compilation
  * CVE-2024-9401 (bmo#1872744, bmo#1897792, bmo#1911317, bmo#1916476)
    Memory safety bugs fixed in Firefox 131, Firefox ESR 115.16,
    Firefox ESR 128.3, Thunderbird 131, and Thunderbird 128.3
  * CVE-2024-9402 (bmo#1872744, bmo#1897792, bmo#1911317, bmo#1913445,
    bmo#1914106, bmo#1914475, bmo#1914963, bmo#1915008, bmo#1916476)
    Memory safety bugs fixed in Firefox 131, Firefox ESR 128.3,
    Thunderbird 131, and Thunderbird 128.3
- removed obsolete patches
  mozilla-bmo1504834-part3.patch
  mozilla-bmo1512162.patch
  mozilla-bmo1775202.patch
  mozilla-bmo531915.patch
  mozilla-fix-aarch64-libopus.patch
  mozilla-fix-issues-with-llvm18.patch
  mozilla-fix-top-level-asm.patch
  mozilla-partial-revert-1768632.patch
  mozilla-rust-disable-future-incompat.patch
  thunderbird-fix-CVE-2024-34703.patch
- new patch thunderbird-silence-no-return.patch
- rebased
  mozilla-bmo1504834-part1.patch
  mozilla-kde.patch
  mozilla-libavcodec58_91.patch
  mozilla-silence-no-return-type.patch</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1729080000">- Mozilla Thunderbird 128.3.2
  bugfix release:
  https://www.thunderbird.net/en-US/thunderbird/128.3.2esr/releasenotes
- bring back mozilla-bmo531915.patch to fix x86</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1729684800">- Mozilla Thunderbird 128.3.3
  * Files left over from failed folder compactions could use up
    disk space (bmo#1878541)
  * Message list returned to selected message after action on
    another message (bmo#1917485)
  * Some faulty messages were downloaded and never stored
    (bmo#1923765)
  * Messages could become corrupted during folder compaction
    (bmo#1923747,bmo#1923541,bmo#1720047)
  * Searching events by Location, Description, or URL failed
    (bmo#1912710)
  * "Remove All Shown" saved passwords deleted all logins if
    filtered without results (bmo#601447)
  * Calendar event updates were not always sent to attendees
    (bmo#1877640)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1730289600">- Mozilla Thunderbird 128.4.0
  * Export Thunderbird account settings to Thunderbird Mobile via QRCode
  Bugfixes:
  * Unable to send an unencrypted response to an OpenPGP encrypted message
  MFSA 2024-58 (bsc#1231879)
  * CVE-2024-10458 (bmo#1921733)
    Permission leak via embed or object elements
  * CVE-2024-10459 (bmo#1919087)
    Use-after-free in layout with accessibility
  * CVE-2024-10460 (bmo#1912537)
    Confusing display of origin for external protocol handler prompt
  * CVE-2024-10461 (bmo#1914521)
    XSS due to Content-Disposition being ignored in
    multipart/x-mixed-replace response
  * CVE-2024-10462 (bmo#1920423)
    Origin of permission prompt could be spoofed by long URL
  * CVE-2024-10463 (bmo#1920800)
    Cross origin video frame leak
  * CVE-2024-10464 (bmo#1913000)
    History interface could have been used to cause a Denial of
    Service condition in the browser
  * CVE-2024-10465 (bmo#1918853)
    Clipboard "paste" button persisted across tabs
  * CVE-2024-10466 (bmo#1924154)
    DOM push subscription message could hang Firefox
  * CVE-2024-10467 (bmo#1829029, bmo#1888538, bmo#1900394, bmo#1904059,
    bmo#1917742, bmo#1919809, bmo#1923706)
    Memory safety bugs fixed in Firefox 132, Thunderbird 132,
    Firefox ESR 128.4, and Thunderbird 128.4</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1730548800">- Mozilla Thunderbird 128.4.1
  * Add the 20 year donation appeal (bmo#192538)</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1730894400">- Mozilla Thunderbird 128.4.2
  * Increased the auto-compaction threshold to reduce the frequency
    of compaction (bmo#1927656)
  * fixed: New profile creation caused console errors (bmo#1912675)
  * fixed: Repair folder could result in older messages showing
    wrong date and time (bmo#1911916)
  * fixed: Recently deleted messages could become undeleted if
    message compaction failed (bmo#1924927)
  * fixed: Visual and UX improvements
    (bmo#1857413,bmo#1922934,bmo#1924437)
  * fixed: Clicking on an HTML button could cause Thunderbird to
    freeze (bmo#1879355)
  * fixed: Messages could not be selected for dragging
    (bmo#1887518)
  * fixed: Could not open attached file in a MIME encrypted
    message (bmo#1924637)
  * fixed: Account creation "Setup Documentation" link was broken
    (bmo#1925493)
  * fixed: Unable to generate QR codes when exporting to mobile
    in some cases (bmo#1928114)
  * fixed: Operating system reauthentication was missing when
    exporting QR codes for mobile (bmo#1928232)
  * fixed: Could not drag all-day events from one day to another
    in week view (bmo#1922944)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1731153600">- Mozilla Thunderbird 128.4.3
  Fixes:
  * Folder corruption could cause Thunderbird to freeze and become unusable
  * Message corruption could be propagated when reading mbox
  * Folder compaction was not abandoned on shutdown
  * Folder compaction did not clean up on failure
  * Collapsed NNTP thread incorrectly indicated there were unread messages
  * Navigating to next unread message did not wait for all messages
    to be loaded
  * Applying column view to folder and children could break if folder
    error occurred
  * Remote content notifications were broken with encrypted messages
  * Updating criteria of a saved search resulted in poor search performance
  * Drop-downs may not work in some places
  MFSA 2024-61
  * CVE-2024-11159 (bmo#1925929)
    Potential disclosure of plaintext in OpenPGP encrypted message
- remove kmozillahelper support (boo#1226112)
  * removed mozilla-kde.patch
  * requires xdg-desktop-portal instead</changelog>
</package>
<package pkgid="0bbe1a9e9126f306307f03329bb065f2fe72621e5d7f4c3b6edcf45711265dc572b5ca277e86d84ae9998d40f7d4b7a36cd61e5884bc1a94e8ff4a234b2da3c4" name="MozillaThunderbird-translations-common" arch="x86_64">
  <version epoch="0" ver="128.4.4" rel="1.1"/>
  <changelog author="Manfred Hollstein &lt;manfred.h@gmx.net&gt;" date="1710936000">- LLVM18 breaks building Thunderbird on Tumbleweed; add
  * mozilla-fix-issues-with-llvm18.patch</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1713096000">- Mozilla Thunderbird 115.10.0
  https://www.thunderbird.net/en-US/thunderbird/115.10.0/releasenotes/
  MFSA 2024-20 (bsc#1222535)
  * CVE-2024-3852 (bmo#1883542)
    GetBoundName in the JIT returned the wrong object
  * CVE-2024-3854 (bmo#1884552)
    Out-of-bounds-read after mis-optimized switch statement
  * CVE-2024-3857 (bmo#1886683)
    Incorrect JITting of arguments led to use-after-free during
    garbage collection
  * CVE-2024-2609 (bmo#1866100)
    Permission prompt input delay could expire when not in focus
  * CVE-2024-3859 (bmo#1874489)
    Integer-overflow led to out-of-bounds-read in the OpenType sanitizer
  * CVE-2024-3861 (bmo#1883158)
    Potential use-after-free due to AlignedBuffer self-move
  * CVE-2024-3863 (bmo#1885855)
    Download Protections were bypassed by .xrm-ms files on Windows
  * CVE-2024-3302 (bmo#1881183)
    Denial of Service using HTTP/2 CONTINUATION frames
  * CVE-2024-3864 (bmo#1888333)
    Memory safety bug fixed in Firefox 125, Firefox ESR 115.10,
    and Thunderbird 115.10</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1713528000">- Mozilla Thunderbird 115.10.1
  https://www.thunderbird.net/en-US/thunderbird/115.10.1/releasenotes/
  * fixed hangup introduced with 115.10.0 (bmo#1891889)</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1714824000">- Mozilla Thunderbird 115.10.2:
  https://www.thunderbird.net/en-US/thunderbird/115.10.2/releasenotes/
  This release is identical to 115.10.1, other than changing the
  Update channel for self-updating builds to ESR. (bmo#1893271)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1715688000">- Mozilla Thunderbird 115.11.0
  MFSA 2024-23 (bsc#1224056)
  * CVE-2024-4367 (bmo#1893645)
    Arbitrary JavaScript execution in PDF.js
  * CVE-2024-4767 (bmo#1878577)
    IndexedDB files retained in private browsing mode
  * CVE-2024-4768 (bmo#1886082)
    Potential permissions request bypass via clickjacking
  * CVE-2024-4769 (bmo#1886108)
    Cross-origin responses could be distinguished between script
    and non-script content-types
  * CVE-2024-4770 (bmo#1893270)
    Use-after-free could occur when printing to PDF
  * CVE-2024-4777 (bmo#1878199, bmo#1893340)
    Memory safety bugs fixed in Firefox 126, Firefox ESR 115.11,
    and Thunderbird 115.11</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1716984000">- Mozilla Thunderbird 115.11.1
  * Added a short anonymous survey that a small number of users will
    be randomly asked to complete</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1718625600">- Mozilla Thunderbird 115.12.0
  https://www.thunderbird.net/en-US/thunderbird/115.12.0/releasenotes
  MFSA 2024-28 (bsc#1226027)
  * CVE-2024-5702 (bmo#1193389)
    Use-after-free in networking
  * CVE-2024-5688 (bmo#1895086)
    Use-after-free in JavaScript object transplant
  * CVE-2024-5690 (bmo#1883693)
    External protocol handlers leaked by timing attack
  * CVE-2024-5691 (bmo#1888695)
    Sandboxed iframes were able to bypass sandbox restrictions to
    open a new window
  * CVE-2024-5692 (bmo#1891234)
    Bypass of file name restrictions during saving
  * CVE-2024-5693 (bmo#1891319)
    Cross-Origin Image leak via Offscreen Canvas
  * CVE-2024-5696 (bmo#1896555)
    Memory Corruption in Text Fragments
  * CVE-2024-5700 (bmo#1862809, bmo#1889355, bmo#1893388, bmo#1895123)
    Memory safety bugs fixed in Firefox 127, Firefox ESR 115.12,
    and Thunderbird 115.12</changelog>
  <changelog author="Martin Sirringhaus &lt;martin.sirringhaus@suse.com&gt;" date="1719921600">- Mozilla Thunderbird 115.12.2
  * fixed: Annual Thunderbird Beta appeal intended for
    Thunderbird 115.12.0 did not open as expected (bmo#1898084)
- Mozilla Thunderbird 115.12.1
  * 115.12.0 got pulled because of upstream automation process errors
    and Windows installer signing changes.
    No code changes, changelog is the same as 115.12.0 (bsc#1226495)
- Added thunderbird-fix-CVE-2024-34703.patch (bsc#1227239)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1720612800">- Mozilla Thunderbird 115.13.0
  * After starting Thunderbird, the message list position was
    sometimes set to an incorrect position
  MFSA 2024-30 (bsc#1226316)
  * CVE-2024-6600 (bmo#1888340)
    Memory corruption in WebGL API
  * CVE-2024-6601 (bmo#1890748)
    Race condition in permission assignment
  * CVE-2024-6602 (bmo#1895032)
    Memory corruption in NSS
  * CVE-2024-6603 (bmo#1895081)
    Memory corruption in thread creation
  * CVE-2024-6604 (bmo#1748105, bmo#1837550, bmo#1884266)
    Memory safety bugs fixed in Firefox 128, Firefox ESR 115.13,
    and Thunderbird 115.13</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1722600000">- Mozilla Thunderbird 115.14.0
  * When using an external installation of GnuPG, Thunderbird
    occassionally sent/received corrupted messages (bmo#1898832)
  * Users of external GnuPG were unable to decrypt incorrectly
    encoded messages (bmo#1906903)
  MFSA 2024-38 (bsc#1228648)
  * CVE-2024-7519 (bmo#1902307)
    Out of bounds memory access in graphics shared memory handling
  * CVE-2024-7521 (bmo#1904644)
    Incomplete WebAssembly exception handing
  * CVE-2024-7522 (bmo#1906727)
    Out of bounds read in editor component
  * CVE-2024-7525 (bmo#1909298)
    Missing permission check when creating a StreamFilter
  * CVE-2024-7526 (bmo#1910306)
    Uninitialized memory used by WebGL
  * CVE-2024-7527 (bmo#1871303)
    Use-after-free in JavaScript garbage collection
  * CVE-2024-7529 (bmo#1903187)
    Document content could partially obscure security prompts</changelog>
  <changelog author="Manfred Hollstein &lt;manfred.h@gmx.net&gt;" date="1724932800">- Use gcc13 on Tumbleweed and where it is available.
- Don't use gcc14 as sources don't compile.</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1725624000">- Mozilla Thunderbird 115.15.0
  MFSA 2024-44 (bsc#1229821)
  * CVE-2024-8381 (bmo#1912715)
    Type confusion when looking up a property name in a "with"
    block
  * CVE-2024-8382 (bmo#1906744)
    Internal event interfaces were exposed to web content when
    browser EventHandler listener callbacks ran
  * CVE-2024-8384 (bmo#1911288)
    Garbage collection could mis-color cross-compartment objects
    in OOM conditions</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1728561600">- Mozilla Thunderbird 128.3.1
  https://www.thunderbird.net/en-US/thunderbird/128.0esr/releasenotes/
  and following release notes for minor version updates
  MFSA 2024-52  (bsc#1231413)
  * CVE-2024-9680 (bmo#1923344)
    Use-after-free in Animation timeline
  Mozilla Thunderbird 128.3.0
  MFSA 2024-32 (128.0)
  MFSA 2024-37 (128.1)
  MFSA 2024-43 (128.2)
  MFSA 2024-49 (128.3) (bsc#1230979)
  * CVE-2024-9392 (bmo#1899154, bmo#1905843)
    Compromised content process can bypass site isolation
  * CVE-2024-9393 (bmo#1918301)
    Cross-origin access to PDF contents through multipart responses
  * CVE-2024-9394 (bmo#1918874)
    Cross-origin access to JSON contents through multipart responses
  * CVE-2024-8900 (bmo#1872841)
    Clipboard write permission bypass
  * CVE-2024-9396 (bmo#1912471)
    Potential memory corruption may occur when cloning certain objects
  * CVE-2024-9397 (bmo#1916659)
    Potential directory upload bypass via clickjacking
  * CVE-2024-9398 (bmo#1881037)
    External protocol handlers could be enumerated via popups
  * CVE-2024-9399 (bmo#1907726)
    Specially crafted WebTransport requests could lead to denial
    of service
  * CVE-2024-9400 (bmo#1915249)
    Potential memory corruption during JIT compilation
  * CVE-2024-9401 (bmo#1872744, bmo#1897792, bmo#1911317, bmo#1916476)
    Memory safety bugs fixed in Firefox 131, Firefox ESR 115.16,
    Firefox ESR 128.3, Thunderbird 131, and Thunderbird 128.3
  * CVE-2024-9402 (bmo#1872744, bmo#1897792, bmo#1911317, bmo#1913445,
    bmo#1914106, bmo#1914475, bmo#1914963, bmo#1915008, bmo#1916476)
    Memory safety bugs fixed in Firefox 131, Firefox ESR 128.3,
    Thunderbird 131, and Thunderbird 128.3
- removed obsolete patches
  mozilla-bmo1504834-part3.patch
  mozilla-bmo1512162.patch
  mozilla-bmo1775202.patch
  mozilla-bmo531915.patch
  mozilla-fix-aarch64-libopus.patch
  mozilla-fix-issues-with-llvm18.patch
  mozilla-fix-top-level-asm.patch
  mozilla-partial-revert-1768632.patch
  mozilla-rust-disable-future-incompat.patch
  thunderbird-fix-CVE-2024-34703.patch
- new patch thunderbird-silence-no-return.patch
- rebased
  mozilla-bmo1504834-part1.patch
  mozilla-kde.patch
  mozilla-libavcodec58_91.patch
  mozilla-silence-no-return-type.patch</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1729080000">- Mozilla Thunderbird 128.3.2
  bugfix release:
  https://www.thunderbird.net/en-US/thunderbird/128.3.2esr/releasenotes
- bring back mozilla-bmo531915.patch to fix x86</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1729684800">- Mozilla Thunderbird 128.3.3
  * Files left over from failed folder compactions could use up
    disk space (bmo#1878541)
  * Message list returned to selected message after action on
    another message (bmo#1917485)
  * Some faulty messages were downloaded and never stored
    (bmo#1923765)
  * Messages could become corrupted during folder compaction
    (bmo#1923747,bmo#1923541,bmo#1720047)
  * Searching events by Location, Description, or URL failed
    (bmo#1912710)
  * "Remove All Shown" saved passwords deleted all logins if
    filtered without results (bmo#601447)
  * Calendar event updates were not always sent to attendees
    (bmo#1877640)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1730289600">- Mozilla Thunderbird 128.4.0
  * Export Thunderbird account settings to Thunderbird Mobile via QRCode
  Bugfixes:
  * Unable to send an unencrypted response to an OpenPGP encrypted message
  MFSA 2024-58 (bsc#1231879)
  * CVE-2024-10458 (bmo#1921733)
    Permission leak via embed or object elements
  * CVE-2024-10459 (bmo#1919087)
    Use-after-free in layout with accessibility
  * CVE-2024-10460 (bmo#1912537)
    Confusing display of origin for external protocol handler prompt
  * CVE-2024-10461 (bmo#1914521)
    XSS due to Content-Disposition being ignored in
    multipart/x-mixed-replace response
  * CVE-2024-10462 (bmo#1920423)
    Origin of permission prompt could be spoofed by long URL
  * CVE-2024-10463 (bmo#1920800)
    Cross origin video frame leak
  * CVE-2024-10464 (bmo#1913000)
    History interface could have been used to cause a Denial of
    Service condition in the browser
  * CVE-2024-10465 (bmo#1918853)
    Clipboard "paste" button persisted across tabs
  * CVE-2024-10466 (bmo#1924154)
    DOM push subscription message could hang Firefox
  * CVE-2024-10467 (bmo#1829029, bmo#1888538, bmo#1900394, bmo#1904059,
    bmo#1917742, bmo#1919809, bmo#1923706)
    Memory safety bugs fixed in Firefox 132, Thunderbird 132,
    Firefox ESR 128.4, and Thunderbird 128.4</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1730548800">- Mozilla Thunderbird 128.4.1
  * Add the 20 year donation appeal (bmo#192538)</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1730894400">- Mozilla Thunderbird 128.4.2
  * Increased the auto-compaction threshold to reduce the frequency
    of compaction (bmo#1927656)
  * fixed: New profile creation caused console errors (bmo#1912675)
  * fixed: Repair folder could result in older messages showing
    wrong date and time (bmo#1911916)
  * fixed: Recently deleted messages could become undeleted if
    message compaction failed (bmo#1924927)
  * fixed: Visual and UX improvements
    (bmo#1857413,bmo#1922934,bmo#1924437)
  * fixed: Clicking on an HTML button could cause Thunderbird to
    freeze (bmo#1879355)
  * fixed: Messages could not be selected for dragging
    (bmo#1887518)
  * fixed: Could not open attached file in a MIME encrypted
    message (bmo#1924637)
  * fixed: Account creation "Setup Documentation" link was broken
    (bmo#1925493)
  * fixed: Unable to generate QR codes when exporting to mobile
    in some cases (bmo#1928114)
  * fixed: Operating system reauthentication was missing when
    exporting QR codes for mobile (bmo#1928232)
  * fixed: Could not drag all-day events from one day to another
    in week view (bmo#1922944)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1731153600">- Mozilla Thunderbird 128.4.3
  Fixes:
  * Folder corruption could cause Thunderbird to freeze and become unusable
  * Message corruption could be propagated when reading mbox
  * Folder compaction was not abandoned on shutdown
  * Folder compaction did not clean up on failure
  * Collapsed NNTP thread incorrectly indicated there were unread messages
  * Navigating to next unread message did not wait for all messages
    to be loaded
  * Applying column view to folder and children could break if folder
    error occurred
  * Remote content notifications were broken with encrypted messages
  * Updating criteria of a saved search resulted in poor search performance
  * Drop-downs may not work in some places
  MFSA 2024-61
  * CVE-2024-11159 (bmo#1925929)
    Potential disclosure of plaintext in OpenPGP encrypted message
- remove kmozillahelper support (boo#1226112)
  * removed mozilla-kde.patch
  * requires xdg-desktop-portal instead</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1732104000">- Mozilla Thunderbird 128.4.4
  * QR codes were not scannable by Android app when using most
    high-contrast themes
  * Primary password prompt cancellation during mobile export was
    confusing
- revert using xdg-desktop-portal as some desktops have limited
  support</changelog>
</package>
<package pkgid="4722df59cfbab88793f218409293a28cc7fa7a57d3e1abd2599b3958c7b6fec42173b4e364468c3693bf049ac5db3fad768f60886c20a84e964924855875c919" name="MozillaThunderbird-translations-common" arch="x86_64">
  <version epoch="0" ver="128.5.0" rel="1.0.8.1.sr20241103"/>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1713096000">- Mozilla Thunderbird 115.10.0
  https://www.thunderbird.net/en-US/thunderbird/115.10.0/releasenotes/
  MFSA 2024-20 (bsc#1222535)
  * CVE-2024-3852 (bmo#1883542)
    GetBoundName in the JIT returned the wrong object
  * CVE-2024-3854 (bmo#1884552)
    Out-of-bounds-read after mis-optimized switch statement
  * CVE-2024-3857 (bmo#1886683)
    Incorrect JITting of arguments led to use-after-free during
    garbage collection
  * CVE-2024-2609 (bmo#1866100)
    Permission prompt input delay could expire when not in focus
  * CVE-2024-3859 (bmo#1874489)
    Integer-overflow led to out-of-bounds-read in the OpenType sanitizer
  * CVE-2024-3861 (bmo#1883158)
    Potential use-after-free due to AlignedBuffer self-move
  * CVE-2024-3863 (bmo#1885855)
    Download Protections were bypassed by .xrm-ms files on Windows
  * CVE-2024-3302 (bmo#1881183)
    Denial of Service using HTTP/2 CONTINUATION frames
  * CVE-2024-3864 (bmo#1888333)
    Memory safety bug fixed in Firefox 125, Firefox ESR 115.10,
    and Thunderbird 115.10</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1713528000">- Mozilla Thunderbird 115.10.1
  https://www.thunderbird.net/en-US/thunderbird/115.10.1/releasenotes/
  * fixed hangup introduced with 115.10.0 (bmo#1891889)</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1714824000">- Mozilla Thunderbird 115.10.2:
  https://www.thunderbird.net/en-US/thunderbird/115.10.2/releasenotes/
  This release is identical to 115.10.1, other than changing the
  Update channel for self-updating builds to ESR. (bmo#1893271)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1715688000">- Mozilla Thunderbird 115.11.0
  MFSA 2024-23 (bsc#1224056)
  * CVE-2024-4367 (bmo#1893645)
    Arbitrary JavaScript execution in PDF.js
  * CVE-2024-4767 (bmo#1878577)
    IndexedDB files retained in private browsing mode
  * CVE-2024-4768 (bmo#1886082)
    Potential permissions request bypass via clickjacking
  * CVE-2024-4769 (bmo#1886108)
    Cross-origin responses could be distinguished between script
    and non-script content-types
  * CVE-2024-4770 (bmo#1893270)
    Use-after-free could occur when printing to PDF
  * CVE-2024-4777 (bmo#1878199, bmo#1893340)
    Memory safety bugs fixed in Firefox 126, Firefox ESR 115.11,
    and Thunderbird 115.11</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1716984000">- Mozilla Thunderbird 115.11.1
  * Added a short anonymous survey that a small number of users will
    be randomly asked to complete</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1718625600">- Mozilla Thunderbird 115.12.0
  https://www.thunderbird.net/en-US/thunderbird/115.12.0/releasenotes
  MFSA 2024-28 (bsc#1226027)
  * CVE-2024-5702 (bmo#1193389)
    Use-after-free in networking
  * CVE-2024-5688 (bmo#1895086)
    Use-after-free in JavaScript object transplant
  * CVE-2024-5690 (bmo#1883693)
    External protocol handlers leaked by timing attack
  * CVE-2024-5691 (bmo#1888695)
    Sandboxed iframes were able to bypass sandbox restrictions to
    open a new window
  * CVE-2024-5692 (bmo#1891234)
    Bypass of file name restrictions during saving
  * CVE-2024-5693 (bmo#1891319)
    Cross-Origin Image leak via Offscreen Canvas
  * CVE-2024-5696 (bmo#1896555)
    Memory Corruption in Text Fragments
  * CVE-2024-5700 (bmo#1862809, bmo#1889355, bmo#1893388, bmo#1895123)
    Memory safety bugs fixed in Firefox 127, Firefox ESR 115.12,
    and Thunderbird 115.12</changelog>
  <changelog author="Martin Sirringhaus &lt;martin.sirringhaus@suse.com&gt;" date="1719921600">- Mozilla Thunderbird 115.12.2
  * fixed: Annual Thunderbird Beta appeal intended for
    Thunderbird 115.12.0 did not open as expected (bmo#1898084)
- Mozilla Thunderbird 115.12.1
  * 115.12.0 got pulled because of upstream automation process errors
    and Windows installer signing changes.
    No code changes, changelog is the same as 115.12.0 (bsc#1226495)
- Added thunderbird-fix-CVE-2024-34703.patch (bsc#1227239)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1720612800">- Mozilla Thunderbird 115.13.0
  * After starting Thunderbird, the message list position was
    sometimes set to an incorrect position
  MFSA 2024-30 (bsc#1226316)
  * CVE-2024-6600 (bmo#1888340)
    Memory corruption in WebGL API
  * CVE-2024-6601 (bmo#1890748)
    Race condition in permission assignment
  * CVE-2024-6602 (bmo#1895032)
    Memory corruption in NSS
  * CVE-2024-6603 (bmo#1895081)
    Memory corruption in thread creation
  * CVE-2024-6604 (bmo#1748105, bmo#1837550, bmo#1884266)
    Memory safety bugs fixed in Firefox 128, Firefox ESR 115.13,
    and Thunderbird 115.13</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1722600000">- Mozilla Thunderbird 115.14.0
  * When using an external installation of GnuPG, Thunderbird
    occassionally sent/received corrupted messages (bmo#1898832)
  * Users of external GnuPG were unable to decrypt incorrectly
    encoded messages (bmo#1906903)
  MFSA 2024-38 (bsc#1228648)
  * CVE-2024-7519 (bmo#1902307)
    Out of bounds memory access in graphics shared memory handling
  * CVE-2024-7521 (bmo#1904644)
    Incomplete WebAssembly exception handing
  * CVE-2024-7522 (bmo#1906727)
    Out of bounds read in editor component
  * CVE-2024-7525 (bmo#1909298)
    Missing permission check when creating a StreamFilter
  * CVE-2024-7526 (bmo#1910306)
    Uninitialized memory used by WebGL
  * CVE-2024-7527 (bmo#1871303)
    Use-after-free in JavaScript garbage collection
  * CVE-2024-7529 (bmo#1903187)
    Document content could partially obscure security prompts</changelog>
  <changelog author="Manfred Hollstein &lt;manfred.h@gmx.net&gt;" date="1724932800">- Use gcc13 on Tumbleweed and where it is available.
- Don't use gcc14 as sources don't compile.</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1725624000">- Mozilla Thunderbird 115.15.0
  MFSA 2024-44 (bsc#1229821)
  * CVE-2024-8381 (bmo#1912715)
    Type confusion when looking up a property name in a "with"
    block
  * CVE-2024-8382 (bmo#1906744)
    Internal event interfaces were exposed to web content when
    browser EventHandler listener callbacks ran
  * CVE-2024-8384 (bmo#1911288)
    Garbage collection could mis-color cross-compartment objects
    in OOM conditions</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1728561600">- Mozilla Thunderbird 128.3.1
  https://www.thunderbird.net/en-US/thunderbird/128.0esr/releasenotes/
  and following release notes for minor version updates
  MFSA 2024-52  (bsc#1231413)
  * CVE-2024-9680 (bmo#1923344)
    Use-after-free in Animation timeline
  Mozilla Thunderbird 128.3.0
  MFSA 2024-32 (128.0)
  MFSA 2024-37 (128.1)
  MFSA 2024-43 (128.2)
  MFSA 2024-49 (128.3) (bsc#1230979)
  * CVE-2024-9392 (bmo#1899154, bmo#1905843)
    Compromised content process can bypass site isolation
  * CVE-2024-9393 (bmo#1918301)
    Cross-origin access to PDF contents through multipart responses
  * CVE-2024-9394 (bmo#1918874)
    Cross-origin access to JSON contents through multipart responses
  * CVE-2024-8900 (bmo#1872841)
    Clipboard write permission bypass
  * CVE-2024-9396 (bmo#1912471)
    Potential memory corruption may occur when cloning certain objects
  * CVE-2024-9397 (bmo#1916659)
    Potential directory upload bypass via clickjacking
  * CVE-2024-9398 (bmo#1881037)
    External protocol handlers could be enumerated via popups
  * CVE-2024-9399 (bmo#1907726)
    Specially crafted WebTransport requests could lead to denial
    of service
  * CVE-2024-9400 (bmo#1915249)
    Potential memory corruption during JIT compilation
  * CVE-2024-9401 (bmo#1872744, bmo#1897792, bmo#1911317, bmo#1916476)
    Memory safety bugs fixed in Firefox 131, Firefox ESR 115.16,
    Firefox ESR 128.3, Thunderbird 131, and Thunderbird 128.3
  * CVE-2024-9402 (bmo#1872744, bmo#1897792, bmo#1911317, bmo#1913445,
    bmo#1914106, bmo#1914475, bmo#1914963, bmo#1915008, bmo#1916476)
    Memory safety bugs fixed in Firefox 131, Firefox ESR 128.3,
    Thunderbird 131, and Thunderbird 128.3
- removed obsolete patches
  mozilla-bmo1504834-part3.patch
  mozilla-bmo1512162.patch
  mozilla-bmo1775202.patch
  mozilla-bmo531915.patch
  mozilla-fix-aarch64-libopus.patch
  mozilla-fix-issues-with-llvm18.patch
  mozilla-fix-top-level-asm.patch
  mozilla-partial-revert-1768632.patch
  mozilla-rust-disable-future-incompat.patch
  thunderbird-fix-CVE-2024-34703.patch
- new patch thunderbird-silence-no-return.patch
- rebased
  mozilla-bmo1504834-part1.patch
  mozilla-kde.patch
  mozilla-libavcodec58_91.patch
  mozilla-silence-no-return-type.patch</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1729080000">- Mozilla Thunderbird 128.3.2
  bugfix release:
  https://www.thunderbird.net/en-US/thunderbird/128.3.2esr/releasenotes
- bring back mozilla-bmo531915.patch to fix x86</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1729684800">- Mozilla Thunderbird 128.3.3
  * Files left over from failed folder compactions could use up
    disk space (bmo#1878541)
  * Message list returned to selected message after action on
    another message (bmo#1917485)
  * Some faulty messages were downloaded and never stored
    (bmo#1923765)
  * Messages could become corrupted during folder compaction
    (bmo#1923747,bmo#1923541,bmo#1720047)
  * Searching events by Location, Description, or URL failed
    (bmo#1912710)
  * "Remove All Shown" saved passwords deleted all logins if
    filtered without results (bmo#601447)
  * Calendar event updates were not always sent to attendees
    (bmo#1877640)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1730289600">- Mozilla Thunderbird 128.4.0
  * Export Thunderbird account settings to Thunderbird Mobile via QRCode
  Bugfixes:
  * Unable to send an unencrypted response to an OpenPGP encrypted message
  MFSA 2024-58 (bsc#1231879)
  * CVE-2024-10458 (bmo#1921733)
    Permission leak via embed or object elements
  * CVE-2024-10459 (bmo#1919087)
    Use-after-free in layout with accessibility
  * CVE-2024-10460 (bmo#1912537)
    Confusing display of origin for external protocol handler prompt
  * CVE-2024-10461 (bmo#1914521)
    XSS due to Content-Disposition being ignored in
    multipart/x-mixed-replace response
  * CVE-2024-10462 (bmo#1920423)
    Origin of permission prompt could be spoofed by long URL
  * CVE-2024-10463 (bmo#1920800)
    Cross origin video frame leak
  * CVE-2024-10464 (bmo#1913000)
    History interface could have been used to cause a Denial of
    Service condition in the browser
  * CVE-2024-10465 (bmo#1918853)
    Clipboard "paste" button persisted across tabs
  * CVE-2024-10466 (bmo#1924154)
    DOM push subscription message could hang Firefox
  * CVE-2024-10467 (bmo#1829029, bmo#1888538, bmo#1900394, bmo#1904059,
    bmo#1917742, bmo#1919809, bmo#1923706)
    Memory safety bugs fixed in Firefox 132, Thunderbird 132,
    Firefox ESR 128.4, and Thunderbird 128.4</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1730548800">- Mozilla Thunderbird 128.4.1
  * Add the 20 year donation appeal (bmo#192538)</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1730894400">- Mozilla Thunderbird 128.4.2
  * Increased the auto-compaction threshold to reduce the frequency
    of compaction (bmo#1927656)
  * fixed: New profile creation caused console errors (bmo#1912675)
  * fixed: Repair folder could result in older messages showing
    wrong date and time (bmo#1911916)
  * fixed: Recently deleted messages could become undeleted if
    message compaction failed (bmo#1924927)
  * fixed: Visual and UX improvements
    (bmo#1857413,bmo#1922934,bmo#1924437)
  * fixed: Clicking on an HTML button could cause Thunderbird to
    freeze (bmo#1879355)
  * fixed: Messages could not be selected for dragging
    (bmo#1887518)
  * fixed: Could not open attached file in a MIME encrypted
    message (bmo#1924637)
  * fixed: Account creation "Setup Documentation" link was broken
    (bmo#1925493)
  * fixed: Unable to generate QR codes when exporting to mobile
    in some cases (bmo#1928114)
  * fixed: Operating system reauthentication was missing when
    exporting QR codes for mobile (bmo#1928232)
  * fixed: Could not drag all-day events from one day to another
    in week view (bmo#1922944)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1731153600">- Mozilla Thunderbird 128.4.3
  Fixes:
  * Folder corruption could cause Thunderbird to freeze and become unusable
  * Message corruption could be propagated when reading mbox
  * Folder compaction was not abandoned on shutdown
  * Folder compaction did not clean up on failure
  * Collapsed NNTP thread incorrectly indicated there were unread messages
  * Navigating to next unread message did not wait for all messages
    to be loaded
  * Applying column view to folder and children could break if folder
    error occurred
  * Remote content notifications were broken with encrypted messages
  * Updating criteria of a saved search resulted in poor search performance
  * Drop-downs may not work in some places
  MFSA 2024-61
  * CVE-2024-11159 (bmo#1925929)
    Potential disclosure of plaintext in OpenPGP encrypted message
- remove kmozillahelper support (boo#1226112)
  * removed mozilla-kde.patch
  * requires xdg-desktop-portal instead</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1732104000">- Mozilla Thunderbird 128.4.4
  * QR codes were not scannable by Android app when using most
    high-contrast themes
  * Primary password prompt cancellation during mobile export was
    confusing
- revert using xdg-desktop-portal as some desktops have limited
  support</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1732622400">- Mozilla Thunderbird 128.5.0
  * IMAP could crash when reading cached messages
  * Enabling "Show Folder Size" on Maildir profile could render
    Thunderbird unusable
  * Messages corrupted by folder compaction were only fixed by user
    intervention
  * Reading a message from past the end of an mbox file did not
    cause an error
  * View -&gt; Folders had duplicate F access keys
  * Add-ons adding columns to the message list could fail and cause
    display issue
  * "Empty trash on exit" and "Expunge inbox on exit" did not
    always work
  * Selecting a display option in View -&gt; Tasks did not apply in
    the Task interface
  MFSA 2024-68 (bsc#1233695)
  * CVE-2024-11691 (bmo#1914707, bmo#1924184)
    Memory corruption in Apple GPU drivers
  * CVE-2024-11692 (bmo#1909535)
    Select list elements could be shown over another site
  * CVE-2024-11693 (bmo#1921458)
    Download Protections were bypassed by .library-ms files on Windows
  * CVE-2024-11694 (bmo#1924167)
    CSP Bypass and XSS Exposure via Web Compatibility Shims
  * CVE-2024-11695 (bmo#1925496)
    URL Bar Spoofing via Manipulated Punycode and Whitespace Characters
  * CVE-2024-11696 (bmo#1929600)
    Unhandled Exception in Add-on Signature Verification
  * CVE-2024-11697 (bmo#1842187)
    Improper Keypress Handling in Executable File Confirmation Dialog
  * CVE-2024-11698 (bmo#1916152)
    Fullscreen Lock-Up When Modal Dialog Interrupts Transition on macOS
  * CVE-2024-11699 (bmo#1880582, bmo#1929911)
    Memory safety bugs fixed in Firefox 133, Thunderbird 133,
    Firefox ESR 128.5, and Thunderbird 128.5
- appid is thunderbird-esr currently; use the matching desktop
  file name (boo#1233650)</changelog>
</package>
<package pkgid="94be5645df4d6951ad7d58f37a3170a7ec3ec25bd5f28c752076bdc9a69fb4a789af42391740f27cafe194efbe92e0e6a7a5b99153fe7bdb434fbab3db71a5b6" name="MozillaThunderbird-translations-common" arch="x86_64">
  <version epoch="0" ver="128.5.1" rel="1.0.10.1.sr20241103"/>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1714824000">- Mozilla Thunderbird 115.10.2:
  https://www.thunderbird.net/en-US/thunderbird/115.10.2/releasenotes/
  This release is identical to 115.10.1, other than changing the
  Update channel for self-updating builds to ESR. (bmo#1893271)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1715688000">- Mozilla Thunderbird 115.11.0
  MFSA 2024-23 (bsc#1224056)
  * CVE-2024-4367 (bmo#1893645)
    Arbitrary JavaScript execution in PDF.js
  * CVE-2024-4767 (bmo#1878577)
    IndexedDB files retained in private browsing mode
  * CVE-2024-4768 (bmo#1886082)
    Potential permissions request bypass via clickjacking
  * CVE-2024-4769 (bmo#1886108)
    Cross-origin responses could be distinguished between script
    and non-script content-types
  * CVE-2024-4770 (bmo#1893270)
    Use-after-free could occur when printing to PDF
  * CVE-2024-4777 (bmo#1878199, bmo#1893340)
    Memory safety bugs fixed in Firefox 126, Firefox ESR 115.11,
    and Thunderbird 115.11</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1716984000">- Mozilla Thunderbird 115.11.1
  * Added a short anonymous survey that a small number of users will
    be randomly asked to complete</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1718625600">- Mozilla Thunderbird 115.12.0
  https://www.thunderbird.net/en-US/thunderbird/115.12.0/releasenotes
  MFSA 2024-28 (bsc#1226027)
  * CVE-2024-5702 (bmo#1193389)
    Use-after-free in networking
  * CVE-2024-5688 (bmo#1895086)
    Use-after-free in JavaScript object transplant
  * CVE-2024-5690 (bmo#1883693)
    External protocol handlers leaked by timing attack
  * CVE-2024-5691 (bmo#1888695)
    Sandboxed iframes were able to bypass sandbox restrictions to
    open a new window
  * CVE-2024-5692 (bmo#1891234)
    Bypass of file name restrictions during saving
  * CVE-2024-5693 (bmo#1891319)
    Cross-Origin Image leak via Offscreen Canvas
  * CVE-2024-5696 (bmo#1896555)
    Memory Corruption in Text Fragments
  * CVE-2024-5700 (bmo#1862809, bmo#1889355, bmo#1893388, bmo#1895123)
    Memory safety bugs fixed in Firefox 127, Firefox ESR 115.12,
    and Thunderbird 115.12</changelog>
  <changelog author="Martin Sirringhaus &lt;martin.sirringhaus@suse.com&gt;" date="1719921600">- Mozilla Thunderbird 115.12.2
  * fixed: Annual Thunderbird Beta appeal intended for
    Thunderbird 115.12.0 did not open as expected (bmo#1898084)
- Mozilla Thunderbird 115.12.1
  * 115.12.0 got pulled because of upstream automation process errors
    and Windows installer signing changes.
    No code changes, changelog is the same as 115.12.0 (bsc#1226495)
- Added thunderbird-fix-CVE-2024-34703.patch (bsc#1227239)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1720612800">- Mozilla Thunderbird 115.13.0
  * After starting Thunderbird, the message list position was
    sometimes set to an incorrect position
  MFSA 2024-30 (bsc#1226316)
  * CVE-2024-6600 (bmo#1888340)
    Memory corruption in WebGL API
  * CVE-2024-6601 (bmo#1890748)
    Race condition in permission assignment
  * CVE-2024-6602 (bmo#1895032)
    Memory corruption in NSS
  * CVE-2024-6603 (bmo#1895081)
    Memory corruption in thread creation
  * CVE-2024-6604 (bmo#1748105, bmo#1837550, bmo#1884266)
    Memory safety bugs fixed in Firefox 128, Firefox ESR 115.13,
    and Thunderbird 115.13</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1722600000">- Mozilla Thunderbird 115.14.0
  * When using an external installation of GnuPG, Thunderbird
    occassionally sent/received corrupted messages (bmo#1898832)
  * Users of external GnuPG were unable to decrypt incorrectly
    encoded messages (bmo#1906903)
  MFSA 2024-38 (bsc#1228648)
  * CVE-2024-7519 (bmo#1902307)
    Out of bounds memory access in graphics shared memory handling
  * CVE-2024-7521 (bmo#1904644)
    Incomplete WebAssembly exception handing
  * CVE-2024-7522 (bmo#1906727)
    Out of bounds read in editor component
  * CVE-2024-7525 (bmo#1909298)
    Missing permission check when creating a StreamFilter
  * CVE-2024-7526 (bmo#1910306)
    Uninitialized memory used by WebGL
  * CVE-2024-7527 (bmo#1871303)
    Use-after-free in JavaScript garbage collection
  * CVE-2024-7529 (bmo#1903187)
    Document content could partially obscure security prompts</changelog>
  <changelog author="Manfred Hollstein &lt;manfred.h@gmx.net&gt;" date="1724932800">- Use gcc13 on Tumbleweed and where it is available.
- Don't use gcc14 as sources don't compile.</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1725624000">- Mozilla Thunderbird 115.15.0
  MFSA 2024-44 (bsc#1229821)
  * CVE-2024-8381 (bmo#1912715)
    Type confusion when looking up a property name in a "with"
    block
  * CVE-2024-8382 (bmo#1906744)
    Internal event interfaces were exposed to web content when
    browser EventHandler listener callbacks ran
  * CVE-2024-8384 (bmo#1911288)
    Garbage collection could mis-color cross-compartment objects
    in OOM conditions</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1728561600">- Mozilla Thunderbird 128.3.1
  https://www.thunderbird.net/en-US/thunderbird/128.0esr/releasenotes/
  and following release notes for minor version updates
  MFSA 2024-52  (bsc#1231413)
  * CVE-2024-9680 (bmo#1923344)
    Use-after-free in Animation timeline
  Mozilla Thunderbird 128.3.0
  MFSA 2024-32 (128.0)
  MFSA 2024-37 (128.1)
  MFSA 2024-43 (128.2)
  MFSA 2024-49 (128.3) (bsc#1230979)
  * CVE-2024-9392 (bmo#1899154, bmo#1905843)
    Compromised content process can bypass site isolation
  * CVE-2024-9393 (bmo#1918301)
    Cross-origin access to PDF contents through multipart responses
  * CVE-2024-9394 (bmo#1918874)
    Cross-origin access to JSON contents through multipart responses
  * CVE-2024-8900 (bmo#1872841)
    Clipboard write permission bypass
  * CVE-2024-9396 (bmo#1912471)
    Potential memory corruption may occur when cloning certain objects
  * CVE-2024-9397 (bmo#1916659)
    Potential directory upload bypass via clickjacking
  * CVE-2024-9398 (bmo#1881037)
    External protocol handlers could be enumerated via popups
  * CVE-2024-9399 (bmo#1907726)
    Specially crafted WebTransport requests could lead to denial
    of service
  * CVE-2024-9400 (bmo#1915249)
    Potential memory corruption during JIT compilation
  * CVE-2024-9401 (bmo#1872744, bmo#1897792, bmo#1911317, bmo#1916476)
    Memory safety bugs fixed in Firefox 131, Firefox ESR 115.16,
    Firefox ESR 128.3, Thunderbird 131, and Thunderbird 128.3
  * CVE-2024-9402 (bmo#1872744, bmo#1897792, bmo#1911317, bmo#1913445,
    bmo#1914106, bmo#1914475, bmo#1914963, bmo#1915008, bmo#1916476)
    Memory safety bugs fixed in Firefox 131, Firefox ESR 128.3,
    Thunderbird 131, and Thunderbird 128.3
- removed obsolete patches
  mozilla-bmo1504834-part3.patch
  mozilla-bmo1512162.patch
  mozilla-bmo1775202.patch
  mozilla-bmo531915.patch
  mozilla-fix-aarch64-libopus.patch
  mozilla-fix-issues-with-llvm18.patch
  mozilla-fix-top-level-asm.patch
  mozilla-partial-revert-1768632.patch
  mozilla-rust-disable-future-incompat.patch
  thunderbird-fix-CVE-2024-34703.patch
- new patch thunderbird-silence-no-return.patch
- rebased
  mozilla-bmo1504834-part1.patch
  mozilla-kde.patch
  mozilla-libavcodec58_91.patch
  mozilla-silence-no-return-type.patch</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1729080000">- Mozilla Thunderbird 128.3.2
  bugfix release:
  https://www.thunderbird.net/en-US/thunderbird/128.3.2esr/releasenotes
- bring back mozilla-bmo531915.patch to fix x86</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1729684800">- Mozilla Thunderbird 128.3.3
  * Files left over from failed folder compactions could use up
    disk space (bmo#1878541)
  * Message list returned to selected message after action on
    another message (bmo#1917485)
  * Some faulty messages were downloaded and never stored
    (bmo#1923765)
  * Messages could become corrupted during folder compaction
    (bmo#1923747,bmo#1923541,bmo#1720047)
  * Searching events by Location, Description, or URL failed
    (bmo#1912710)
  * "Remove All Shown" saved passwords deleted all logins if
    filtered without results (bmo#601447)
  * Calendar event updates were not always sent to attendees
    (bmo#1877640)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1730289600">- Mozilla Thunderbird 128.4.0
  * Export Thunderbird account settings to Thunderbird Mobile via QRCode
  Bugfixes:
  * Unable to send an unencrypted response to an OpenPGP encrypted message
  MFSA 2024-58 (bsc#1231879)
  * CVE-2024-10458 (bmo#1921733)
    Permission leak via embed or object elements
  * CVE-2024-10459 (bmo#1919087)
    Use-after-free in layout with accessibility
  * CVE-2024-10460 (bmo#1912537)
    Confusing display of origin for external protocol handler prompt
  * CVE-2024-10461 (bmo#1914521)
    XSS due to Content-Disposition being ignored in
    multipart/x-mixed-replace response
  * CVE-2024-10462 (bmo#1920423)
    Origin of permission prompt could be spoofed by long URL
  * CVE-2024-10463 (bmo#1920800)
    Cross origin video frame leak
  * CVE-2024-10464 (bmo#1913000)
    History interface could have been used to cause a Denial of
    Service condition in the browser
  * CVE-2024-10465 (bmo#1918853)
    Clipboard "paste" button persisted across tabs
  * CVE-2024-10466 (bmo#1924154)
    DOM push subscription message could hang Firefox
  * CVE-2024-10467 (bmo#1829029, bmo#1888538, bmo#1900394, bmo#1904059,
    bmo#1917742, bmo#1919809, bmo#1923706)
    Memory safety bugs fixed in Firefox 132, Thunderbird 132,
    Firefox ESR 128.4, and Thunderbird 128.4</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1730548800">- Mozilla Thunderbird 128.4.1
  * Add the 20 year donation appeal (bmo#192538)</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1730894400">- Mozilla Thunderbird 128.4.2
  * Increased the auto-compaction threshold to reduce the frequency
    of compaction (bmo#1927656)
  * fixed: New profile creation caused console errors (bmo#1912675)
  * fixed: Repair folder could result in older messages showing
    wrong date and time (bmo#1911916)
  * fixed: Recently deleted messages could become undeleted if
    message compaction failed (bmo#1924927)
  * fixed: Visual and UX improvements
    (bmo#1857413,bmo#1922934,bmo#1924437)
  * fixed: Clicking on an HTML button could cause Thunderbird to
    freeze (bmo#1879355)
  * fixed: Messages could not be selected for dragging
    (bmo#1887518)
  * fixed: Could not open attached file in a MIME encrypted
    message (bmo#1924637)
  * fixed: Account creation "Setup Documentation" link was broken
    (bmo#1925493)
  * fixed: Unable to generate QR codes when exporting to mobile
    in some cases (bmo#1928114)
  * fixed: Operating system reauthentication was missing when
    exporting QR codes for mobile (bmo#1928232)
  * fixed: Could not drag all-day events from one day to another
    in week view (bmo#1922944)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1731153600">- Mozilla Thunderbird 128.4.3
  Fixes:
  * Folder corruption could cause Thunderbird to freeze and become unusable
  * Message corruption could be propagated when reading mbox
  * Folder compaction was not abandoned on shutdown
  * Folder compaction did not clean up on failure
  * Collapsed NNTP thread incorrectly indicated there were unread messages
  * Navigating to next unread message did not wait for all messages
    to be loaded
  * Applying column view to folder and children could break if folder
    error occurred
  * Remote content notifications were broken with encrypted messages
  * Updating criteria of a saved search resulted in poor search performance
  * Drop-downs may not work in some places
  MFSA 2024-61
  * CVE-2024-11159 (bmo#1925929)
    Potential disclosure of plaintext in OpenPGP encrypted message
- remove kmozillahelper support (boo#1226112)
  * removed mozilla-kde.patch
  * requires xdg-desktop-portal instead</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1732104000">- Mozilla Thunderbird 128.4.4
  * QR codes were not scannable by Android app when using most
    high-contrast themes
  * Primary password prompt cancellation during mobile export was
    confusing
- revert using xdg-desktop-portal as some desktops have limited
  support</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1732622400">- Mozilla Thunderbird 128.5.0
  * IMAP could crash when reading cached messages
  * Enabling "Show Folder Size" on Maildir profile could render
    Thunderbird unusable
  * Messages corrupted by folder compaction were only fixed by user
    intervention
  * Reading a message from past the end of an mbox file did not
    cause an error
  * View -&gt; Folders had duplicate F access keys
  * Add-ons adding columns to the message list could fail and cause
    display issue
  * "Empty trash on exit" and "Expunge inbox on exit" did not
    always work
  * Selecting a display option in View -&gt; Tasks did not apply in
    the Task interface
  MFSA 2024-68 (bsc#1233695)
  * CVE-2024-11691 (bmo#1914707, bmo#1924184)
    Memory corruption in Apple GPU drivers
  * CVE-2024-11692 (bmo#1909535)
    Select list elements could be shown over another site
  * CVE-2024-11693 (bmo#1921458)
    Download Protections were bypassed by .library-ms files on Windows
  * CVE-2024-11694 (bmo#1924167)
    CSP Bypass and XSS Exposure via Web Compatibility Shims
  * CVE-2024-11695 (bmo#1925496)
    URL Bar Spoofing via Manipulated Punycode and Whitespace Characters
  * CVE-2024-11696 (bmo#1929600)
    Unhandled Exception in Add-on Signature Verification
  * CVE-2024-11697 (bmo#1842187)
    Improper Keypress Handling in Executable File Confirmation Dialog
  * CVE-2024-11698 (bmo#1916152)
    Fullscreen Lock-Up When Modal Dialog Interrupts Transition on macOS
  * CVE-2024-11699 (bmo#1880582, bmo#1929911)
    Memory safety bugs fixed in Firefox 133, Thunderbird 133,
    Firefox ESR 128.5, and Thunderbird 128.5
- appid is thunderbird-esr currently; use the matching desktop
  file name (boo#1233650)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1732795200">- make spec compatible with rpm &lt; 4.17 again
- correct appdata for different desktop filename</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1733227200">- Mozilla Thunderbird 128.5.1
  * Add end of year donation appeal
  * Total message count for favorite folders did not work consistently</changelog>
</package>
<package pkgid="9e7a4ad993dd16a5160b8cc79073fd1e5900b6174476c5b5ea748d1bc99a7330ac4a2671e22c33c92e48efa554d0952519dfd37d411b02821c786caab7a28a4b" name="MozillaThunderbird-translations-other" arch="x86_64">
  <version epoch="0" ver="128.4.2" rel="1.0.2.1.sr20241103"/>
  <changelog author="Adam Mizerski &lt;adam@mizerski.pl&gt;" date="1709640000">- Create subpackage MozillaThunderbird-openpgp-librnp</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1710590400">- Mozilla Thunderbird 115.9.0
  https://www.thunderbird.net/en-US/thunderbird/115.9.0/releasenotes/
  MFSA 2024-14 (bsc#1221327)
  * CVE-2024-0743 (bmo#1867408)
    Crash in NSS TLS method
  * CVE-2024-2605 (bmo#1872920)
    Windows Error Reporter could be used as a Sandbox escape vector
  * CVE-2024-2607 (bmo#1879939)
    JIT code failed to save return registers on Armv7-A
  * CVE-2024-2608 (bmo#1880692)
    Integer overflow could have led to out of bounds write
  * CVE-2024-2616 (bmo#1846197)
    Improve handling of out-of-memory conditions in ICU
  * CVE-2023-5388 (bmo#1780432)
    NSS susceptible to timing attack against RSA decryption
  * CVE-2024-2610 (bmo#1871112)
    Improper handling of html and body tags enabled CSP nonce leakage
  * CVE-2024-2611 (bmo#1876675)
    Clickjacking vulnerability could have led to a user accidentally
    granting permissions
  * CVE-2024-2612 (bmo#1879444)
    Self referencing object could have potentially led to a use-
    after-free
  * CVE-2024-2614 (bmo#1685358, bmo#1861016, bmo#1880405, bmo#1881093)
    Memory safety bugs fixed in Firefox 124, Firefox ESR 115.9,
    and Thunderbird 115.9</changelog>
  <changelog author="Manfred Hollstein &lt;manfred.h@gmx.net&gt;" date="1710936000">- LLVM18 breaks building Thunderbird on Tumbleweed; add
  * mozilla-fix-issues-with-llvm18.patch</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1713096000">- Mozilla Thunderbird 115.10.0
  https://www.thunderbird.net/en-US/thunderbird/115.10.0/releasenotes/
  MFSA 2024-20 (bsc#1222535)
  * CVE-2024-3852 (bmo#1883542)
    GetBoundName in the JIT returned the wrong object
  * CVE-2024-3854 (bmo#1884552)
    Out-of-bounds-read after mis-optimized switch statement
  * CVE-2024-3857 (bmo#1886683)
    Incorrect JITting of arguments led to use-after-free during
    garbage collection
  * CVE-2024-2609 (bmo#1866100)
    Permission prompt input delay could expire when not in focus
  * CVE-2024-3859 (bmo#1874489)
    Integer-overflow led to out-of-bounds-read in the OpenType sanitizer
  * CVE-2024-3861 (bmo#1883158)
    Potential use-after-free due to AlignedBuffer self-move
  * CVE-2024-3863 (bmo#1885855)
    Download Protections were bypassed by .xrm-ms files on Windows
  * CVE-2024-3302 (bmo#1881183)
    Denial of Service using HTTP/2 CONTINUATION frames
  * CVE-2024-3864 (bmo#1888333)
    Memory safety bug fixed in Firefox 125, Firefox ESR 115.10,
    and Thunderbird 115.10</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1713528000">- Mozilla Thunderbird 115.10.1
  https://www.thunderbird.net/en-US/thunderbird/115.10.1/releasenotes/
  * fixed hangup introduced with 115.10.0 (bmo#1891889)</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1714824000">- Mozilla Thunderbird 115.10.2:
  https://www.thunderbird.net/en-US/thunderbird/115.10.2/releasenotes/
  This release is identical to 115.10.1, other than changing the
  Update channel for self-updating builds to ESR. (bmo#1893271)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1715688000">- Mozilla Thunderbird 115.11.0
  MFSA 2024-23 (bsc#1224056)
  * CVE-2024-4367 (bmo#1893645)
    Arbitrary JavaScript execution in PDF.js
  * CVE-2024-4767 (bmo#1878577)
    IndexedDB files retained in private browsing mode
  * CVE-2024-4768 (bmo#1886082)
    Potential permissions request bypass via clickjacking
  * CVE-2024-4769 (bmo#1886108)
    Cross-origin responses could be distinguished between script
    and non-script content-types
  * CVE-2024-4770 (bmo#1893270)
    Use-after-free could occur when printing to PDF
  * CVE-2024-4777 (bmo#1878199, bmo#1893340)
    Memory safety bugs fixed in Firefox 126, Firefox ESR 115.11,
    and Thunderbird 115.11</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1716984000">- Mozilla Thunderbird 115.11.1
  * Added a short anonymous survey that a small number of users will
    be randomly asked to complete</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1718625600">- Mozilla Thunderbird 115.12.0
  https://www.thunderbird.net/en-US/thunderbird/115.12.0/releasenotes
  MFSA 2024-28 (bsc#1226027)
  * CVE-2024-5702 (bmo#1193389)
    Use-after-free in networking
  * CVE-2024-5688 (bmo#1895086)
    Use-after-free in JavaScript object transplant
  * CVE-2024-5690 (bmo#1883693)
    External protocol handlers leaked by timing attack
  * CVE-2024-5691 (bmo#1888695)
    Sandboxed iframes were able to bypass sandbox restrictions to
    open a new window
  * CVE-2024-5692 (bmo#1891234)
    Bypass of file name restrictions during saving
  * CVE-2024-5693 (bmo#1891319)
    Cross-Origin Image leak via Offscreen Canvas
  * CVE-2024-5696 (bmo#1896555)
    Memory Corruption in Text Fragments
  * CVE-2024-5700 (bmo#1862809, bmo#1889355, bmo#1893388, bmo#1895123)
    Memory safety bugs fixed in Firefox 127, Firefox ESR 115.12,
    and Thunderbird 115.12</changelog>
  <changelog author="Martin Sirringhaus &lt;martin.sirringhaus@suse.com&gt;" date="1719921600">- Mozilla Thunderbird 115.12.2
  * fixed: Annual Thunderbird Beta appeal intended for
    Thunderbird 115.12.0 did not open as expected (bmo#1898084)
- Mozilla Thunderbird 115.12.1
  * 115.12.0 got pulled because of upstream automation process errors
    and Windows installer signing changes.
    No code changes, changelog is the same as 115.12.0 (bsc#1226495)
- Added thunderbird-fix-CVE-2024-34703.patch (bsc#1227239)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1720612800">- Mozilla Thunderbird 115.13.0
  * After starting Thunderbird, the message list position was
    sometimes set to an incorrect position
  MFSA 2024-30 (bsc#1226316)
  * CVE-2024-6600 (bmo#1888340)
    Memory corruption in WebGL API
  * CVE-2024-6601 (bmo#1890748)
    Race condition in permission assignment
  * CVE-2024-6602 (bmo#1895032)
    Memory corruption in NSS
  * CVE-2024-6603 (bmo#1895081)
    Memory corruption in thread creation
  * CVE-2024-6604 (bmo#1748105, bmo#1837550, bmo#1884266)
    Memory safety bugs fixed in Firefox 128, Firefox ESR 115.13,
    and Thunderbird 115.13</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1722600000">- Mozilla Thunderbird 115.14.0
  * When using an external installation of GnuPG, Thunderbird
    occassionally sent/received corrupted messages (bmo#1898832)
  * Users of external GnuPG were unable to decrypt incorrectly
    encoded messages (bmo#1906903)
  MFSA 2024-38 (bsc#1228648)
  * CVE-2024-7519 (bmo#1902307)
    Out of bounds memory access in graphics shared memory handling
  * CVE-2024-7521 (bmo#1904644)
    Incomplete WebAssembly exception handing
  * CVE-2024-7522 (bmo#1906727)
    Out of bounds read in editor component
  * CVE-2024-7525 (bmo#1909298)
    Missing permission check when creating a StreamFilter
  * CVE-2024-7526 (bmo#1910306)
    Uninitialized memory used by WebGL
  * CVE-2024-7527 (bmo#1871303)
    Use-after-free in JavaScript garbage collection
  * CVE-2024-7529 (bmo#1903187)
    Document content could partially obscure security prompts</changelog>
  <changelog author="Manfred Hollstein &lt;manfred.h@gmx.net&gt;" date="1724932800">- Use gcc13 on Tumbleweed and where it is available.
- Don't use gcc14 as sources don't compile.</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1725624000">- Mozilla Thunderbird 115.15.0
  MFSA 2024-44 (bsc#1229821)
  * CVE-2024-8381 (bmo#1912715)
    Type confusion when looking up a property name in a "with"
    block
  * CVE-2024-8382 (bmo#1906744)
    Internal event interfaces were exposed to web content when
    browser EventHandler listener callbacks ran
  * CVE-2024-8384 (bmo#1911288)
    Garbage collection could mis-color cross-compartment objects
    in OOM conditions</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1728561600">- Mozilla Thunderbird 128.3.1
  https://www.thunderbird.net/en-US/thunderbird/128.0esr/releasenotes/
  and following release notes for minor version updates
  MFSA 2024-52  (bsc#1231413)
  * CVE-2024-9680 (bmo#1923344)
    Use-after-free in Animation timeline
  Mozilla Thunderbird 128.3.0
  MFSA 2024-32 (128.0)
  MFSA 2024-37 (128.1)
  MFSA 2024-43 (128.2)
  MFSA 2024-49 (128.3) (bsc#1230979)
  * CVE-2024-9392 (bmo#1899154, bmo#1905843)
    Compromised content process can bypass site isolation
  * CVE-2024-9393 (bmo#1918301)
    Cross-origin access to PDF contents through multipart responses
  * CVE-2024-9394 (bmo#1918874)
    Cross-origin access to JSON contents through multipart responses
  * CVE-2024-8900 (bmo#1872841)
    Clipboard write permission bypass
  * CVE-2024-9396 (bmo#1912471)
    Potential memory corruption may occur when cloning certain objects
  * CVE-2024-9397 (bmo#1916659)
    Potential directory upload bypass via clickjacking
  * CVE-2024-9398 (bmo#1881037)
    External protocol handlers could be enumerated via popups
  * CVE-2024-9399 (bmo#1907726)
    Specially crafted WebTransport requests could lead to denial
    of service
  * CVE-2024-9400 (bmo#1915249)
    Potential memory corruption during JIT compilation
  * CVE-2024-9401 (bmo#1872744, bmo#1897792, bmo#1911317, bmo#1916476)
    Memory safety bugs fixed in Firefox 131, Firefox ESR 115.16,
    Firefox ESR 128.3, Thunderbird 131, and Thunderbird 128.3
  * CVE-2024-9402 (bmo#1872744, bmo#1897792, bmo#1911317, bmo#1913445,
    bmo#1914106, bmo#1914475, bmo#1914963, bmo#1915008, bmo#1916476)
    Memory safety bugs fixed in Firefox 131, Firefox ESR 128.3,
    Thunderbird 131, and Thunderbird 128.3
- removed obsolete patches
  mozilla-bmo1504834-part3.patch
  mozilla-bmo1512162.patch
  mozilla-bmo1775202.patch
  mozilla-bmo531915.patch
  mozilla-fix-aarch64-libopus.patch
  mozilla-fix-issues-with-llvm18.patch
  mozilla-fix-top-level-asm.patch
  mozilla-partial-revert-1768632.patch
  mozilla-rust-disable-future-incompat.patch
  thunderbird-fix-CVE-2024-34703.patch
- new patch thunderbird-silence-no-return.patch
- rebased
  mozilla-bmo1504834-part1.patch
  mozilla-kde.patch
  mozilla-libavcodec58_91.patch
  mozilla-silence-no-return-type.patch</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1729080000">- Mozilla Thunderbird 128.3.2
  bugfix release:
  https://www.thunderbird.net/en-US/thunderbird/128.3.2esr/releasenotes
- bring back mozilla-bmo531915.patch to fix x86</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1729684800">- Mozilla Thunderbird 128.3.3
  * Files left over from failed folder compactions could use up
    disk space (bmo#1878541)
  * Message list returned to selected message after action on
    another message (bmo#1917485)
  * Some faulty messages were downloaded and never stored
    (bmo#1923765)
  * Messages could become corrupted during folder compaction
    (bmo#1923747,bmo#1923541,bmo#1720047)
  * Searching events by Location, Description, or URL failed
    (bmo#1912710)
  * "Remove All Shown" saved passwords deleted all logins if
    filtered without results (bmo#601447)
  * Calendar event updates were not always sent to attendees
    (bmo#1877640)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1730289600">- Mozilla Thunderbird 128.4.0
  * Export Thunderbird account settings to Thunderbird Mobile via QRCode
  Bugfixes:
  * Unable to send an unencrypted response to an OpenPGP encrypted message
  MFSA 2024-58 (bsc#1231879)
  * CVE-2024-10458 (bmo#1921733)
    Permission leak via embed or object elements
  * CVE-2024-10459 (bmo#1919087)
    Use-after-free in layout with accessibility
  * CVE-2024-10460 (bmo#1912537)
    Confusing display of origin for external protocol handler prompt
  * CVE-2024-10461 (bmo#1914521)
    XSS due to Content-Disposition being ignored in
    multipart/x-mixed-replace response
  * CVE-2024-10462 (bmo#1920423)
    Origin of permission prompt could be spoofed by long URL
  * CVE-2024-10463 (bmo#1920800)
    Cross origin video frame leak
  * CVE-2024-10464 (bmo#1913000)
    History interface could have been used to cause a Denial of
    Service condition in the browser
  * CVE-2024-10465 (bmo#1918853)
    Clipboard "paste" button persisted across tabs
  * CVE-2024-10466 (bmo#1924154)
    DOM push subscription message could hang Firefox
  * CVE-2024-10467 (bmo#1829029, bmo#1888538, bmo#1900394, bmo#1904059,
    bmo#1917742, bmo#1919809, bmo#1923706)
    Memory safety bugs fixed in Firefox 132, Thunderbird 132,
    Firefox ESR 128.4, and Thunderbird 128.4</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1730548800">- Mozilla Thunderbird 128.4.1
  * Add the 20 year donation appeal (bmo#192538)</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1730894400">- Mozilla Thunderbird 128.4.2
  * Increased the auto-compaction threshold to reduce the frequency
    of compaction (bmo#1927656)
  * fixed: New profile creation caused console errors (bmo#1912675)
  * fixed: Repair folder could result in older messages showing
    wrong date and time (bmo#1911916)
  * fixed: Recently deleted messages could become undeleted if
    message compaction failed (bmo#1924927)
  * fixed: Visual and UX improvements
    (bmo#1857413,bmo#1922934,bmo#1924437)
  * fixed: Clicking on an HTML button could cause Thunderbird to
    freeze (bmo#1879355)
  * fixed: Messages could not be selected for dragging
    (bmo#1887518)
  * fixed: Could not open attached file in a MIME encrypted
    message (bmo#1924637)
  * fixed: Account creation "Setup Documentation" link was broken
    (bmo#1925493)
  * fixed: Unable to generate QR codes when exporting to mobile
    in some cases (bmo#1928114)
  * fixed: Operating system reauthentication was missing when
    exporting QR codes for mobile (bmo#1928232)
  * fixed: Could not drag all-day events from one day to another
    in week view (bmo#1922944)</changelog>
</package>
<package pkgid="38b92074230e24e7a20674021b7b2e802bc9b8677a4eff76859d8e66fc42b60ed9404c0f3e6f231280a7dc2a0ff870b5a8ad96d6d22655acd6ff838726bf7675" name="MozillaThunderbird-translations-other" arch="x86_64">
  <version epoch="0" ver="128.4.3" rel="1.1"/>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1710590400">- Mozilla Thunderbird 115.9.0
  https://www.thunderbird.net/en-US/thunderbird/115.9.0/releasenotes/
  MFSA 2024-14 (bsc#1221327)
  * CVE-2024-0743 (bmo#1867408)
    Crash in NSS TLS method
  * CVE-2024-2605 (bmo#1872920)
    Windows Error Reporter could be used as a Sandbox escape vector
  * CVE-2024-2607 (bmo#1879939)
    JIT code failed to save return registers on Armv7-A
  * CVE-2024-2608 (bmo#1880692)
    Integer overflow could have led to out of bounds write
  * CVE-2024-2616 (bmo#1846197)
    Improve handling of out-of-memory conditions in ICU
  * CVE-2023-5388 (bmo#1780432)
    NSS susceptible to timing attack against RSA decryption
  * CVE-2024-2610 (bmo#1871112)
    Improper handling of html and body tags enabled CSP nonce leakage
  * CVE-2024-2611 (bmo#1876675)
    Clickjacking vulnerability could have led to a user accidentally
    granting permissions
  * CVE-2024-2612 (bmo#1879444)
    Self referencing object could have potentially led to a use-
    after-free
  * CVE-2024-2614 (bmo#1685358, bmo#1861016, bmo#1880405, bmo#1881093)
    Memory safety bugs fixed in Firefox 124, Firefox ESR 115.9,
    and Thunderbird 115.9</changelog>
  <changelog author="Manfred Hollstein &lt;manfred.h@gmx.net&gt;" date="1710936000">- LLVM18 breaks building Thunderbird on Tumbleweed; add
  * mozilla-fix-issues-with-llvm18.patch</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1713096000">- Mozilla Thunderbird 115.10.0
  https://www.thunderbird.net/en-US/thunderbird/115.10.0/releasenotes/
  MFSA 2024-20 (bsc#1222535)
  * CVE-2024-3852 (bmo#1883542)
    GetBoundName in the JIT returned the wrong object
  * CVE-2024-3854 (bmo#1884552)
    Out-of-bounds-read after mis-optimized switch statement
  * CVE-2024-3857 (bmo#1886683)
    Incorrect JITting of arguments led to use-after-free during
    garbage collection
  * CVE-2024-2609 (bmo#1866100)
    Permission prompt input delay could expire when not in focus
  * CVE-2024-3859 (bmo#1874489)
    Integer-overflow led to out-of-bounds-read in the OpenType sanitizer
  * CVE-2024-3861 (bmo#1883158)
    Potential use-after-free due to AlignedBuffer self-move
  * CVE-2024-3863 (bmo#1885855)
    Download Protections were bypassed by .xrm-ms files on Windows
  * CVE-2024-3302 (bmo#1881183)
    Denial of Service using HTTP/2 CONTINUATION frames
  * CVE-2024-3864 (bmo#1888333)
    Memory safety bug fixed in Firefox 125, Firefox ESR 115.10,
    and Thunderbird 115.10</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1713528000">- Mozilla Thunderbird 115.10.1
  https://www.thunderbird.net/en-US/thunderbird/115.10.1/releasenotes/
  * fixed hangup introduced with 115.10.0 (bmo#1891889)</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1714824000">- Mozilla Thunderbird 115.10.2:
  https://www.thunderbird.net/en-US/thunderbird/115.10.2/releasenotes/
  This release is identical to 115.10.1, other than changing the
  Update channel for self-updating builds to ESR. (bmo#1893271)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1715688000">- Mozilla Thunderbird 115.11.0
  MFSA 2024-23 (bsc#1224056)
  * CVE-2024-4367 (bmo#1893645)
    Arbitrary JavaScript execution in PDF.js
  * CVE-2024-4767 (bmo#1878577)
    IndexedDB files retained in private browsing mode
  * CVE-2024-4768 (bmo#1886082)
    Potential permissions request bypass via clickjacking
  * CVE-2024-4769 (bmo#1886108)
    Cross-origin responses could be distinguished between script
    and non-script content-types
  * CVE-2024-4770 (bmo#1893270)
    Use-after-free could occur when printing to PDF
  * CVE-2024-4777 (bmo#1878199, bmo#1893340)
    Memory safety bugs fixed in Firefox 126, Firefox ESR 115.11,
    and Thunderbird 115.11</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1716984000">- Mozilla Thunderbird 115.11.1
  * Added a short anonymous survey that a small number of users will
    be randomly asked to complete</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1718625600">- Mozilla Thunderbird 115.12.0
  https://www.thunderbird.net/en-US/thunderbird/115.12.0/releasenotes
  MFSA 2024-28 (bsc#1226027)
  * CVE-2024-5702 (bmo#1193389)
    Use-after-free in networking
  * CVE-2024-5688 (bmo#1895086)
    Use-after-free in JavaScript object transplant
  * CVE-2024-5690 (bmo#1883693)
    External protocol handlers leaked by timing attack
  * CVE-2024-5691 (bmo#1888695)
    Sandboxed iframes were able to bypass sandbox restrictions to
    open a new window
  * CVE-2024-5692 (bmo#1891234)
    Bypass of file name restrictions during saving
  * CVE-2024-5693 (bmo#1891319)
    Cross-Origin Image leak via Offscreen Canvas
  * CVE-2024-5696 (bmo#1896555)
    Memory Corruption in Text Fragments
  * CVE-2024-5700 (bmo#1862809, bmo#1889355, bmo#1893388, bmo#1895123)
    Memory safety bugs fixed in Firefox 127, Firefox ESR 115.12,
    and Thunderbird 115.12</changelog>
  <changelog author="Martin Sirringhaus &lt;martin.sirringhaus@suse.com&gt;" date="1719921600">- Mozilla Thunderbird 115.12.2
  * fixed: Annual Thunderbird Beta appeal intended for
    Thunderbird 115.12.0 did not open as expected (bmo#1898084)
- Mozilla Thunderbird 115.12.1
  * 115.12.0 got pulled because of upstream automation process errors
    and Windows installer signing changes.
    No code changes, changelog is the same as 115.12.0 (bsc#1226495)
- Added thunderbird-fix-CVE-2024-34703.patch (bsc#1227239)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1720612800">- Mozilla Thunderbird 115.13.0
  * After starting Thunderbird, the message list position was
    sometimes set to an incorrect position
  MFSA 2024-30 (bsc#1226316)
  * CVE-2024-6600 (bmo#1888340)
    Memory corruption in WebGL API
  * CVE-2024-6601 (bmo#1890748)
    Race condition in permission assignment
  * CVE-2024-6602 (bmo#1895032)
    Memory corruption in NSS
  * CVE-2024-6603 (bmo#1895081)
    Memory corruption in thread creation
  * CVE-2024-6604 (bmo#1748105, bmo#1837550, bmo#1884266)
    Memory safety bugs fixed in Firefox 128, Firefox ESR 115.13,
    and Thunderbird 115.13</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1722600000">- Mozilla Thunderbird 115.14.0
  * When using an external installation of GnuPG, Thunderbird
    occassionally sent/received corrupted messages (bmo#1898832)
  * Users of external GnuPG were unable to decrypt incorrectly
    encoded messages (bmo#1906903)
  MFSA 2024-38 (bsc#1228648)
  * CVE-2024-7519 (bmo#1902307)
    Out of bounds memory access in graphics shared memory handling
  * CVE-2024-7521 (bmo#1904644)
    Incomplete WebAssembly exception handing
  * CVE-2024-7522 (bmo#1906727)
    Out of bounds read in editor component
  * CVE-2024-7525 (bmo#1909298)
    Missing permission check when creating a StreamFilter
  * CVE-2024-7526 (bmo#1910306)
    Uninitialized memory used by WebGL
  * CVE-2024-7527 (bmo#1871303)
    Use-after-free in JavaScript garbage collection
  * CVE-2024-7529 (bmo#1903187)
    Document content could partially obscure security prompts</changelog>
  <changelog author="Manfred Hollstein &lt;manfred.h@gmx.net&gt;" date="1724932800">- Use gcc13 on Tumbleweed and where it is available.
- Don't use gcc14 as sources don't compile.</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1725624000">- Mozilla Thunderbird 115.15.0
  MFSA 2024-44 (bsc#1229821)
  * CVE-2024-8381 (bmo#1912715)
    Type confusion when looking up a property name in a "with"
    block
  * CVE-2024-8382 (bmo#1906744)
    Internal event interfaces were exposed to web content when
    browser EventHandler listener callbacks ran
  * CVE-2024-8384 (bmo#1911288)
    Garbage collection could mis-color cross-compartment objects
    in OOM conditions</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1728561600">- Mozilla Thunderbird 128.3.1
  https://www.thunderbird.net/en-US/thunderbird/128.0esr/releasenotes/
  and following release notes for minor version updates
  MFSA 2024-52  (bsc#1231413)
  * CVE-2024-9680 (bmo#1923344)
    Use-after-free in Animation timeline
  Mozilla Thunderbird 128.3.0
  MFSA 2024-32 (128.0)
  MFSA 2024-37 (128.1)
  MFSA 2024-43 (128.2)
  MFSA 2024-49 (128.3) (bsc#1230979)
  * CVE-2024-9392 (bmo#1899154, bmo#1905843)
    Compromised content process can bypass site isolation
  * CVE-2024-9393 (bmo#1918301)
    Cross-origin access to PDF contents through multipart responses
  * CVE-2024-9394 (bmo#1918874)
    Cross-origin access to JSON contents through multipart responses
  * CVE-2024-8900 (bmo#1872841)
    Clipboard write permission bypass
  * CVE-2024-9396 (bmo#1912471)
    Potential memory corruption may occur when cloning certain objects
  * CVE-2024-9397 (bmo#1916659)
    Potential directory upload bypass via clickjacking
  * CVE-2024-9398 (bmo#1881037)
    External protocol handlers could be enumerated via popups
  * CVE-2024-9399 (bmo#1907726)
    Specially crafted WebTransport requests could lead to denial
    of service
  * CVE-2024-9400 (bmo#1915249)
    Potential memory corruption during JIT compilation
  * CVE-2024-9401 (bmo#1872744, bmo#1897792, bmo#1911317, bmo#1916476)
    Memory safety bugs fixed in Firefox 131, Firefox ESR 115.16,
    Firefox ESR 128.3, Thunderbird 131, and Thunderbird 128.3
  * CVE-2024-9402 (bmo#1872744, bmo#1897792, bmo#1911317, bmo#1913445,
    bmo#1914106, bmo#1914475, bmo#1914963, bmo#1915008, bmo#1916476)
    Memory safety bugs fixed in Firefox 131, Firefox ESR 128.3,
    Thunderbird 131, and Thunderbird 128.3
- removed obsolete patches
  mozilla-bmo1504834-part3.patch
  mozilla-bmo1512162.patch
  mozilla-bmo1775202.patch
  mozilla-bmo531915.patch
  mozilla-fix-aarch64-libopus.patch
  mozilla-fix-issues-with-llvm18.patch
  mozilla-fix-top-level-asm.patch
  mozilla-partial-revert-1768632.patch
  mozilla-rust-disable-future-incompat.patch
  thunderbird-fix-CVE-2024-34703.patch
- new patch thunderbird-silence-no-return.patch
- rebased
  mozilla-bmo1504834-part1.patch
  mozilla-kde.patch
  mozilla-libavcodec58_91.patch
  mozilla-silence-no-return-type.patch</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1729080000">- Mozilla Thunderbird 128.3.2
  bugfix release:
  https://www.thunderbird.net/en-US/thunderbird/128.3.2esr/releasenotes
- bring back mozilla-bmo531915.patch to fix x86</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1729684800">- Mozilla Thunderbird 128.3.3
  * Files left over from failed folder compactions could use up
    disk space (bmo#1878541)
  * Message list returned to selected message after action on
    another message (bmo#1917485)
  * Some faulty messages were downloaded and never stored
    (bmo#1923765)
  * Messages could become corrupted during folder compaction
    (bmo#1923747,bmo#1923541,bmo#1720047)
  * Searching events by Location, Description, or URL failed
    (bmo#1912710)
  * "Remove All Shown" saved passwords deleted all logins if
    filtered without results (bmo#601447)
  * Calendar event updates were not always sent to attendees
    (bmo#1877640)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1730289600">- Mozilla Thunderbird 128.4.0
  * Export Thunderbird account settings to Thunderbird Mobile via QRCode
  Bugfixes:
  * Unable to send an unencrypted response to an OpenPGP encrypted message
  MFSA 2024-58 (bsc#1231879)
  * CVE-2024-10458 (bmo#1921733)
    Permission leak via embed or object elements
  * CVE-2024-10459 (bmo#1919087)
    Use-after-free in layout with accessibility
  * CVE-2024-10460 (bmo#1912537)
    Confusing display of origin for external protocol handler prompt
  * CVE-2024-10461 (bmo#1914521)
    XSS due to Content-Disposition being ignored in
    multipart/x-mixed-replace response
  * CVE-2024-10462 (bmo#1920423)
    Origin of permission prompt could be spoofed by long URL
  * CVE-2024-10463 (bmo#1920800)
    Cross origin video frame leak
  * CVE-2024-10464 (bmo#1913000)
    History interface could have been used to cause a Denial of
    Service condition in the browser
  * CVE-2024-10465 (bmo#1918853)
    Clipboard "paste" button persisted across tabs
  * CVE-2024-10466 (bmo#1924154)
    DOM push subscription message could hang Firefox
  * CVE-2024-10467 (bmo#1829029, bmo#1888538, bmo#1900394, bmo#1904059,
    bmo#1917742, bmo#1919809, bmo#1923706)
    Memory safety bugs fixed in Firefox 132, Thunderbird 132,
    Firefox ESR 128.4, and Thunderbird 128.4</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1730548800">- Mozilla Thunderbird 128.4.1
  * Add the 20 year donation appeal (bmo#192538)</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1730894400">- Mozilla Thunderbird 128.4.2
  * Increased the auto-compaction threshold to reduce the frequency
    of compaction (bmo#1927656)
  * fixed: New profile creation caused console errors (bmo#1912675)
  * fixed: Repair folder could result in older messages showing
    wrong date and time (bmo#1911916)
  * fixed: Recently deleted messages could become undeleted if
    message compaction failed (bmo#1924927)
  * fixed: Visual and UX improvements
    (bmo#1857413,bmo#1922934,bmo#1924437)
  * fixed: Clicking on an HTML button could cause Thunderbird to
    freeze (bmo#1879355)
  * fixed: Messages could not be selected for dragging
    (bmo#1887518)
  * fixed: Could not open attached file in a MIME encrypted
    message (bmo#1924637)
  * fixed: Account creation "Setup Documentation" link was broken
    (bmo#1925493)
  * fixed: Unable to generate QR codes when exporting to mobile
    in some cases (bmo#1928114)
  * fixed: Operating system reauthentication was missing when
    exporting QR codes for mobile (bmo#1928232)
  * fixed: Could not drag all-day events from one day to another
    in week view (bmo#1922944)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1731153600">- Mozilla Thunderbird 128.4.3
  Fixes:
  * Folder corruption could cause Thunderbird to freeze and become unusable
  * Message corruption could be propagated when reading mbox
  * Folder compaction was not abandoned on shutdown
  * Folder compaction did not clean up on failure
  * Collapsed NNTP thread incorrectly indicated there were unread messages
  * Navigating to next unread message did not wait for all messages
    to be loaded
  * Applying column view to folder and children could break if folder
    error occurred
  * Remote content notifications were broken with encrypted messages
  * Updating criteria of a saved search resulted in poor search performance
  * Drop-downs may not work in some places
  MFSA 2024-61
  * CVE-2024-11159 (bmo#1925929)
    Potential disclosure of plaintext in OpenPGP encrypted message
- remove kmozillahelper support (boo#1226112)
  * removed mozilla-kde.patch
  * requires xdg-desktop-portal instead</changelog>
</package>
<package pkgid="c819c46584f13034342a308757bbb646ea73f024f63882dd29326a7d484f5eb87b38bccb3278af82c56805853afa459c33f7f47b275c4b63cd472e99c448718c" name="MozillaThunderbird-translations-other" arch="x86_64">
  <version epoch="0" ver="128.4.4" rel="1.1"/>
  <changelog author="Manfred Hollstein &lt;manfred.h@gmx.net&gt;" date="1710936000">- LLVM18 breaks building Thunderbird on Tumbleweed; add
  * mozilla-fix-issues-with-llvm18.patch</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1713096000">- Mozilla Thunderbird 115.10.0
  https://www.thunderbird.net/en-US/thunderbird/115.10.0/releasenotes/
  MFSA 2024-20 (bsc#1222535)
  * CVE-2024-3852 (bmo#1883542)
    GetBoundName in the JIT returned the wrong object
  * CVE-2024-3854 (bmo#1884552)
    Out-of-bounds-read after mis-optimized switch statement
  * CVE-2024-3857 (bmo#1886683)
    Incorrect JITting of arguments led to use-after-free during
    garbage collection
  * CVE-2024-2609 (bmo#1866100)
    Permission prompt input delay could expire when not in focus
  * CVE-2024-3859 (bmo#1874489)
    Integer-overflow led to out-of-bounds-read in the OpenType sanitizer
  * CVE-2024-3861 (bmo#1883158)
    Potential use-after-free due to AlignedBuffer self-move
  * CVE-2024-3863 (bmo#1885855)
    Download Protections were bypassed by .xrm-ms files on Windows
  * CVE-2024-3302 (bmo#1881183)
    Denial of Service using HTTP/2 CONTINUATION frames
  * CVE-2024-3864 (bmo#1888333)
    Memory safety bug fixed in Firefox 125, Firefox ESR 115.10,
    and Thunderbird 115.10</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1713528000">- Mozilla Thunderbird 115.10.1
  https://www.thunderbird.net/en-US/thunderbird/115.10.1/releasenotes/
  * fixed hangup introduced with 115.10.0 (bmo#1891889)</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1714824000">- Mozilla Thunderbird 115.10.2:
  https://www.thunderbird.net/en-US/thunderbird/115.10.2/releasenotes/
  This release is identical to 115.10.1, other than changing the
  Update channel for self-updating builds to ESR. (bmo#1893271)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1715688000">- Mozilla Thunderbird 115.11.0
  MFSA 2024-23 (bsc#1224056)
  * CVE-2024-4367 (bmo#1893645)
    Arbitrary JavaScript execution in PDF.js
  * CVE-2024-4767 (bmo#1878577)
    IndexedDB files retained in private browsing mode
  * CVE-2024-4768 (bmo#1886082)
    Potential permissions request bypass via clickjacking
  * CVE-2024-4769 (bmo#1886108)
    Cross-origin responses could be distinguished between script
    and non-script content-types
  * CVE-2024-4770 (bmo#1893270)
    Use-after-free could occur when printing to PDF
  * CVE-2024-4777 (bmo#1878199, bmo#1893340)
    Memory safety bugs fixed in Firefox 126, Firefox ESR 115.11,
    and Thunderbird 115.11</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1716984000">- Mozilla Thunderbird 115.11.1
  * Added a short anonymous survey that a small number of users will
    be randomly asked to complete</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1718625600">- Mozilla Thunderbird 115.12.0
  https://www.thunderbird.net/en-US/thunderbird/115.12.0/releasenotes
  MFSA 2024-28 (bsc#1226027)
  * CVE-2024-5702 (bmo#1193389)
    Use-after-free in networking
  * CVE-2024-5688 (bmo#1895086)
    Use-after-free in JavaScript object transplant
  * CVE-2024-5690 (bmo#1883693)
    External protocol handlers leaked by timing attack
  * CVE-2024-5691 (bmo#1888695)
    Sandboxed iframes were able to bypass sandbox restrictions to
    open a new window
  * CVE-2024-5692 (bmo#1891234)
    Bypass of file name restrictions during saving
  * CVE-2024-5693 (bmo#1891319)
    Cross-Origin Image leak via Offscreen Canvas
  * CVE-2024-5696 (bmo#1896555)
    Memory Corruption in Text Fragments
  * CVE-2024-5700 (bmo#1862809, bmo#1889355, bmo#1893388, bmo#1895123)
    Memory safety bugs fixed in Firefox 127, Firefox ESR 115.12,
    and Thunderbird 115.12</changelog>
  <changelog author="Martin Sirringhaus &lt;martin.sirringhaus@suse.com&gt;" date="1719921600">- Mozilla Thunderbird 115.12.2
  * fixed: Annual Thunderbird Beta appeal intended for
    Thunderbird 115.12.0 did not open as expected (bmo#1898084)
- Mozilla Thunderbird 115.12.1
  * 115.12.0 got pulled because of upstream automation process errors
    and Windows installer signing changes.
    No code changes, changelog is the same as 115.12.0 (bsc#1226495)
- Added thunderbird-fix-CVE-2024-34703.patch (bsc#1227239)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1720612800">- Mozilla Thunderbird 115.13.0
  * After starting Thunderbird, the message list position was
    sometimes set to an incorrect position
  MFSA 2024-30 (bsc#1226316)
  * CVE-2024-6600 (bmo#1888340)
    Memory corruption in WebGL API
  * CVE-2024-6601 (bmo#1890748)
    Race condition in permission assignment
  * CVE-2024-6602 (bmo#1895032)
    Memory corruption in NSS
  * CVE-2024-6603 (bmo#1895081)
    Memory corruption in thread creation
  * CVE-2024-6604 (bmo#1748105, bmo#1837550, bmo#1884266)
    Memory safety bugs fixed in Firefox 128, Firefox ESR 115.13,
    and Thunderbird 115.13</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1722600000">- Mozilla Thunderbird 115.14.0
  * When using an external installation of GnuPG, Thunderbird
    occassionally sent/received corrupted messages (bmo#1898832)
  * Users of external GnuPG were unable to decrypt incorrectly
    encoded messages (bmo#1906903)
  MFSA 2024-38 (bsc#1228648)
  * CVE-2024-7519 (bmo#1902307)
    Out of bounds memory access in graphics shared memory handling
  * CVE-2024-7521 (bmo#1904644)
    Incomplete WebAssembly exception handing
  * CVE-2024-7522 (bmo#1906727)
    Out of bounds read in editor component
  * CVE-2024-7525 (bmo#1909298)
    Missing permission check when creating a StreamFilter
  * CVE-2024-7526 (bmo#1910306)
    Uninitialized memory used by WebGL
  * CVE-2024-7527 (bmo#1871303)
    Use-after-free in JavaScript garbage collection
  * CVE-2024-7529 (bmo#1903187)
    Document content could partially obscure security prompts</changelog>
  <changelog author="Manfred Hollstein &lt;manfred.h@gmx.net&gt;" date="1724932800">- Use gcc13 on Tumbleweed and where it is available.
- Don't use gcc14 as sources don't compile.</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1725624000">- Mozilla Thunderbird 115.15.0
  MFSA 2024-44 (bsc#1229821)
  * CVE-2024-8381 (bmo#1912715)
    Type confusion when looking up a property name in a "with"
    block
  * CVE-2024-8382 (bmo#1906744)
    Internal event interfaces were exposed to web content when
    browser EventHandler listener callbacks ran
  * CVE-2024-8384 (bmo#1911288)
    Garbage collection could mis-color cross-compartment objects
    in OOM conditions</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1728561600">- Mozilla Thunderbird 128.3.1
  https://www.thunderbird.net/en-US/thunderbird/128.0esr/releasenotes/
  and following release notes for minor version updates
  MFSA 2024-52  (bsc#1231413)
  * CVE-2024-9680 (bmo#1923344)
    Use-after-free in Animation timeline
  Mozilla Thunderbird 128.3.0
  MFSA 2024-32 (128.0)
  MFSA 2024-37 (128.1)
  MFSA 2024-43 (128.2)
  MFSA 2024-49 (128.3) (bsc#1230979)
  * CVE-2024-9392 (bmo#1899154, bmo#1905843)
    Compromised content process can bypass site isolation
  * CVE-2024-9393 (bmo#1918301)
    Cross-origin access to PDF contents through multipart responses
  * CVE-2024-9394 (bmo#1918874)
    Cross-origin access to JSON contents through multipart responses
  * CVE-2024-8900 (bmo#1872841)
    Clipboard write permission bypass
  * CVE-2024-9396 (bmo#1912471)
    Potential memory corruption may occur when cloning certain objects
  * CVE-2024-9397 (bmo#1916659)
    Potential directory upload bypass via clickjacking
  * CVE-2024-9398 (bmo#1881037)
    External protocol handlers could be enumerated via popups
  * CVE-2024-9399 (bmo#1907726)
    Specially crafted WebTransport requests could lead to denial
    of service
  * CVE-2024-9400 (bmo#1915249)
    Potential memory corruption during JIT compilation
  * CVE-2024-9401 (bmo#1872744, bmo#1897792, bmo#1911317, bmo#1916476)
    Memory safety bugs fixed in Firefox 131, Firefox ESR 115.16,
    Firefox ESR 128.3, Thunderbird 131, and Thunderbird 128.3
  * CVE-2024-9402 (bmo#1872744, bmo#1897792, bmo#1911317, bmo#1913445,
    bmo#1914106, bmo#1914475, bmo#1914963, bmo#1915008, bmo#1916476)
    Memory safety bugs fixed in Firefox 131, Firefox ESR 128.3,
    Thunderbird 131, and Thunderbird 128.3
- removed obsolete patches
  mozilla-bmo1504834-part3.patch
  mozilla-bmo1512162.patch
  mozilla-bmo1775202.patch
  mozilla-bmo531915.patch
  mozilla-fix-aarch64-libopus.patch
  mozilla-fix-issues-with-llvm18.patch
  mozilla-fix-top-level-asm.patch
  mozilla-partial-revert-1768632.patch
  mozilla-rust-disable-future-incompat.patch
  thunderbird-fix-CVE-2024-34703.patch
- new patch thunderbird-silence-no-return.patch
- rebased
  mozilla-bmo1504834-part1.patch
  mozilla-kde.patch
  mozilla-libavcodec58_91.patch
  mozilla-silence-no-return-type.patch</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1729080000">- Mozilla Thunderbird 128.3.2
  bugfix release:
  https://www.thunderbird.net/en-US/thunderbird/128.3.2esr/releasenotes
- bring back mozilla-bmo531915.patch to fix x86</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1729684800">- Mozilla Thunderbird 128.3.3
  * Files left over from failed folder compactions could use up
    disk space (bmo#1878541)
  * Message list returned to selected message after action on
    another message (bmo#1917485)
  * Some faulty messages were downloaded and never stored
    (bmo#1923765)
  * Messages could become corrupted during folder compaction
    (bmo#1923747,bmo#1923541,bmo#1720047)
  * Searching events by Location, Description, or URL failed
    (bmo#1912710)
  * "Remove All Shown" saved passwords deleted all logins if
    filtered without results (bmo#601447)
  * Calendar event updates were not always sent to attendees
    (bmo#1877640)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1730289600">- Mozilla Thunderbird 128.4.0
  * Export Thunderbird account settings to Thunderbird Mobile via QRCode
  Bugfixes:
  * Unable to send an unencrypted response to an OpenPGP encrypted message
  MFSA 2024-58 (bsc#1231879)
  * CVE-2024-10458 (bmo#1921733)
    Permission leak via embed or object elements
  * CVE-2024-10459 (bmo#1919087)
    Use-after-free in layout with accessibility
  * CVE-2024-10460 (bmo#1912537)
    Confusing display of origin for external protocol handler prompt
  * CVE-2024-10461 (bmo#1914521)
    XSS due to Content-Disposition being ignored in
    multipart/x-mixed-replace response
  * CVE-2024-10462 (bmo#1920423)
    Origin of permission prompt could be spoofed by long URL
  * CVE-2024-10463 (bmo#1920800)
    Cross origin video frame leak
  * CVE-2024-10464 (bmo#1913000)
    History interface could have been used to cause a Denial of
    Service condition in the browser
  * CVE-2024-10465 (bmo#1918853)
    Clipboard "paste" button persisted across tabs
  * CVE-2024-10466 (bmo#1924154)
    DOM push subscription message could hang Firefox
  * CVE-2024-10467 (bmo#1829029, bmo#1888538, bmo#1900394, bmo#1904059,
    bmo#1917742, bmo#1919809, bmo#1923706)
    Memory safety bugs fixed in Firefox 132, Thunderbird 132,
    Firefox ESR 128.4, and Thunderbird 128.4</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1730548800">- Mozilla Thunderbird 128.4.1
  * Add the 20 year donation appeal (bmo#192538)</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1730894400">- Mozilla Thunderbird 128.4.2
  * Increased the auto-compaction threshold to reduce the frequency
    of compaction (bmo#1927656)
  * fixed: New profile creation caused console errors (bmo#1912675)
  * fixed: Repair folder could result in older messages showing
    wrong date and time (bmo#1911916)
  * fixed: Recently deleted messages could become undeleted if
    message compaction failed (bmo#1924927)
  * fixed: Visual and UX improvements
    (bmo#1857413,bmo#1922934,bmo#1924437)
  * fixed: Clicking on an HTML button could cause Thunderbird to
    freeze (bmo#1879355)
  * fixed: Messages could not be selected for dragging
    (bmo#1887518)
  * fixed: Could not open attached file in a MIME encrypted
    message (bmo#1924637)
  * fixed: Account creation "Setup Documentation" link was broken
    (bmo#1925493)
  * fixed: Unable to generate QR codes when exporting to mobile
    in some cases (bmo#1928114)
  * fixed: Operating system reauthentication was missing when
    exporting QR codes for mobile (bmo#1928232)
  * fixed: Could not drag all-day events from one day to another
    in week view (bmo#1922944)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1731153600">- Mozilla Thunderbird 128.4.3
  Fixes:
  * Folder corruption could cause Thunderbird to freeze and become unusable
  * Message corruption could be propagated when reading mbox
  * Folder compaction was not abandoned on shutdown
  * Folder compaction did not clean up on failure
  * Collapsed NNTP thread incorrectly indicated there were unread messages
  * Navigating to next unread message did not wait for all messages
    to be loaded
  * Applying column view to folder and children could break if folder
    error occurred
  * Remote content notifications were broken with encrypted messages
  * Updating criteria of a saved search resulted in poor search performance
  * Drop-downs may not work in some places
  MFSA 2024-61
  * CVE-2024-11159 (bmo#1925929)
    Potential disclosure of plaintext in OpenPGP encrypted message
- remove kmozillahelper support (boo#1226112)
  * removed mozilla-kde.patch
  * requires xdg-desktop-portal instead</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1732104000">- Mozilla Thunderbird 128.4.4
  * QR codes were not scannable by Android app when using most
    high-contrast themes
  * Primary password prompt cancellation during mobile export was
    confusing
- revert using xdg-desktop-portal as some desktops have limited
  support</changelog>
</package>
<package pkgid="f68c50d1f32eb01b6dc22479857a527620d3053af18afc0fe95e7e652e1e6b44a7fd3c2c2d4e04f643a3f16dc757bda0fa3e9f3e4b1880b89df44e6faddc3b71" name="MozillaThunderbird-translations-other" arch="x86_64">
  <version epoch="0" ver="128.5.0" rel="1.0.8.1.sr20241103"/>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1713096000">- Mozilla Thunderbird 115.10.0
  https://www.thunderbird.net/en-US/thunderbird/115.10.0/releasenotes/
  MFSA 2024-20 (bsc#1222535)
  * CVE-2024-3852 (bmo#1883542)
    GetBoundName in the JIT returned the wrong object
  * CVE-2024-3854 (bmo#1884552)
    Out-of-bounds-read after mis-optimized switch statement
  * CVE-2024-3857 (bmo#1886683)
    Incorrect JITting of arguments led to use-after-free during
    garbage collection
  * CVE-2024-2609 (bmo#1866100)
    Permission prompt input delay could expire when not in focus
  * CVE-2024-3859 (bmo#1874489)
    Integer-overflow led to out-of-bounds-read in the OpenType sanitizer
  * CVE-2024-3861 (bmo#1883158)
    Potential use-after-free due to AlignedBuffer self-move
  * CVE-2024-3863 (bmo#1885855)
    Download Protections were bypassed by .xrm-ms files on Windows
  * CVE-2024-3302 (bmo#1881183)
    Denial of Service using HTTP/2 CONTINUATION frames
  * CVE-2024-3864 (bmo#1888333)
    Memory safety bug fixed in Firefox 125, Firefox ESR 115.10,
    and Thunderbird 115.10</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1713528000">- Mozilla Thunderbird 115.10.1
  https://www.thunderbird.net/en-US/thunderbird/115.10.1/releasenotes/
  * fixed hangup introduced with 115.10.0 (bmo#1891889)</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1714824000">- Mozilla Thunderbird 115.10.2:
  https://www.thunderbird.net/en-US/thunderbird/115.10.2/releasenotes/
  This release is identical to 115.10.1, other than changing the
  Update channel for self-updating builds to ESR. (bmo#1893271)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1715688000">- Mozilla Thunderbird 115.11.0
  MFSA 2024-23 (bsc#1224056)
  * CVE-2024-4367 (bmo#1893645)
    Arbitrary JavaScript execution in PDF.js
  * CVE-2024-4767 (bmo#1878577)
    IndexedDB files retained in private browsing mode
  * CVE-2024-4768 (bmo#1886082)
    Potential permissions request bypass via clickjacking
  * CVE-2024-4769 (bmo#1886108)
    Cross-origin responses could be distinguished between script
    and non-script content-types
  * CVE-2024-4770 (bmo#1893270)
    Use-after-free could occur when printing to PDF
  * CVE-2024-4777 (bmo#1878199, bmo#1893340)
    Memory safety bugs fixed in Firefox 126, Firefox ESR 115.11,
    and Thunderbird 115.11</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1716984000">- Mozilla Thunderbird 115.11.1
  * Added a short anonymous survey that a small number of users will
    be randomly asked to complete</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1718625600">- Mozilla Thunderbird 115.12.0
  https://www.thunderbird.net/en-US/thunderbird/115.12.0/releasenotes
  MFSA 2024-28 (bsc#1226027)
  * CVE-2024-5702 (bmo#1193389)
    Use-after-free in networking
  * CVE-2024-5688 (bmo#1895086)
    Use-after-free in JavaScript object transplant
  * CVE-2024-5690 (bmo#1883693)
    External protocol handlers leaked by timing attack
  * CVE-2024-5691 (bmo#1888695)
    Sandboxed iframes were able to bypass sandbox restrictions to
    open a new window
  * CVE-2024-5692 (bmo#1891234)
    Bypass of file name restrictions during saving
  * CVE-2024-5693 (bmo#1891319)
    Cross-Origin Image leak via Offscreen Canvas
  * CVE-2024-5696 (bmo#1896555)
    Memory Corruption in Text Fragments
  * CVE-2024-5700 (bmo#1862809, bmo#1889355, bmo#1893388, bmo#1895123)
    Memory safety bugs fixed in Firefox 127, Firefox ESR 115.12,
    and Thunderbird 115.12</changelog>
  <changelog author="Martin Sirringhaus &lt;martin.sirringhaus@suse.com&gt;" date="1719921600">- Mozilla Thunderbird 115.12.2
  * fixed: Annual Thunderbird Beta appeal intended for
    Thunderbird 115.12.0 did not open as expected (bmo#1898084)
- Mozilla Thunderbird 115.12.1
  * 115.12.0 got pulled because of upstream automation process errors
    and Windows installer signing changes.
    No code changes, changelog is the same as 115.12.0 (bsc#1226495)
- Added thunderbird-fix-CVE-2024-34703.patch (bsc#1227239)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1720612800">- Mozilla Thunderbird 115.13.0
  * After starting Thunderbird, the message list position was
    sometimes set to an incorrect position
  MFSA 2024-30 (bsc#1226316)
  * CVE-2024-6600 (bmo#1888340)
    Memory corruption in WebGL API
  * CVE-2024-6601 (bmo#1890748)
    Race condition in permission assignment
  * CVE-2024-6602 (bmo#1895032)
    Memory corruption in NSS
  * CVE-2024-6603 (bmo#1895081)
    Memory corruption in thread creation
  * CVE-2024-6604 (bmo#1748105, bmo#1837550, bmo#1884266)
    Memory safety bugs fixed in Firefox 128, Firefox ESR 115.13,
    and Thunderbird 115.13</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1722600000">- Mozilla Thunderbird 115.14.0
  * When using an external installation of GnuPG, Thunderbird
    occassionally sent/received corrupted messages (bmo#1898832)
  * Users of external GnuPG were unable to decrypt incorrectly
    encoded messages (bmo#1906903)
  MFSA 2024-38 (bsc#1228648)
  * CVE-2024-7519 (bmo#1902307)
    Out of bounds memory access in graphics shared memory handling
  * CVE-2024-7521 (bmo#1904644)
    Incomplete WebAssembly exception handing
  * CVE-2024-7522 (bmo#1906727)
    Out of bounds read in editor component
  * CVE-2024-7525 (bmo#1909298)
    Missing permission check when creating a StreamFilter
  * CVE-2024-7526 (bmo#1910306)
    Uninitialized memory used by WebGL
  * CVE-2024-7527 (bmo#1871303)
    Use-after-free in JavaScript garbage collection
  * CVE-2024-7529 (bmo#1903187)
    Document content could partially obscure security prompts</changelog>
  <changelog author="Manfred Hollstein &lt;manfred.h@gmx.net&gt;" date="1724932800">- Use gcc13 on Tumbleweed and where it is available.
- Don't use gcc14 as sources don't compile.</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1725624000">- Mozilla Thunderbird 115.15.0
  MFSA 2024-44 (bsc#1229821)
  * CVE-2024-8381 (bmo#1912715)
    Type confusion when looking up a property name in a "with"
    block
  * CVE-2024-8382 (bmo#1906744)
    Internal event interfaces were exposed to web content when
    browser EventHandler listener callbacks ran
  * CVE-2024-8384 (bmo#1911288)
    Garbage collection could mis-color cross-compartment objects
    in OOM conditions</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1728561600">- Mozilla Thunderbird 128.3.1
  https://www.thunderbird.net/en-US/thunderbird/128.0esr/releasenotes/
  and following release notes for minor version updates
  MFSA 2024-52  (bsc#1231413)
  * CVE-2024-9680 (bmo#1923344)
    Use-after-free in Animation timeline
  Mozilla Thunderbird 128.3.0
  MFSA 2024-32 (128.0)
  MFSA 2024-37 (128.1)
  MFSA 2024-43 (128.2)
  MFSA 2024-49 (128.3) (bsc#1230979)
  * CVE-2024-9392 (bmo#1899154, bmo#1905843)
    Compromised content process can bypass site isolation
  * CVE-2024-9393 (bmo#1918301)
    Cross-origin access to PDF contents through multipart responses
  * CVE-2024-9394 (bmo#1918874)
    Cross-origin access to JSON contents through multipart responses
  * CVE-2024-8900 (bmo#1872841)
    Clipboard write permission bypass
  * CVE-2024-9396 (bmo#1912471)
    Potential memory corruption may occur when cloning certain objects
  * CVE-2024-9397 (bmo#1916659)
    Potential directory upload bypass via clickjacking
  * CVE-2024-9398 (bmo#1881037)
    External protocol handlers could be enumerated via popups
  * CVE-2024-9399 (bmo#1907726)
    Specially crafted WebTransport requests could lead to denial
    of service
  * CVE-2024-9400 (bmo#1915249)
    Potential memory corruption during JIT compilation
  * CVE-2024-9401 (bmo#1872744, bmo#1897792, bmo#1911317, bmo#1916476)
    Memory safety bugs fixed in Firefox 131, Firefox ESR 115.16,
    Firefox ESR 128.3, Thunderbird 131, and Thunderbird 128.3
  * CVE-2024-9402 (bmo#1872744, bmo#1897792, bmo#1911317, bmo#1913445,
    bmo#1914106, bmo#1914475, bmo#1914963, bmo#1915008, bmo#1916476)
    Memory safety bugs fixed in Firefox 131, Firefox ESR 128.3,
    Thunderbird 131, and Thunderbird 128.3
- removed obsolete patches
  mozilla-bmo1504834-part3.patch
  mozilla-bmo1512162.patch
  mozilla-bmo1775202.patch
  mozilla-bmo531915.patch
  mozilla-fix-aarch64-libopus.patch
  mozilla-fix-issues-with-llvm18.patch
  mozilla-fix-top-level-asm.patch
  mozilla-partial-revert-1768632.patch
  mozilla-rust-disable-future-incompat.patch
  thunderbird-fix-CVE-2024-34703.patch
- new patch thunderbird-silence-no-return.patch
- rebased
  mozilla-bmo1504834-part1.patch
  mozilla-kde.patch
  mozilla-libavcodec58_91.patch
  mozilla-silence-no-return-type.patch</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1729080000">- Mozilla Thunderbird 128.3.2
  bugfix release:
  https://www.thunderbird.net/en-US/thunderbird/128.3.2esr/releasenotes
- bring back mozilla-bmo531915.patch to fix x86</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1729684800">- Mozilla Thunderbird 128.3.3
  * Files left over from failed folder compactions could use up
    disk space (bmo#1878541)
  * Message list returned to selected message after action on
    another message (bmo#1917485)
  * Some faulty messages were downloaded and never stored
    (bmo#1923765)
  * Messages could become corrupted during folder compaction
    (bmo#1923747,bmo#1923541,bmo#1720047)
  * Searching events by Location, Description, or URL failed
    (bmo#1912710)
  * "Remove All Shown" saved passwords deleted all logins if
    filtered without results (bmo#601447)
  * Calendar event updates were not always sent to attendees
    (bmo#1877640)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1730289600">- Mozilla Thunderbird 128.4.0
  * Export Thunderbird account settings to Thunderbird Mobile via QRCode
  Bugfixes:
  * Unable to send an unencrypted response to an OpenPGP encrypted message
  MFSA 2024-58 (bsc#1231879)
  * CVE-2024-10458 (bmo#1921733)
    Permission leak via embed or object elements
  * CVE-2024-10459 (bmo#1919087)
    Use-after-free in layout with accessibility
  * CVE-2024-10460 (bmo#1912537)
    Confusing display of origin for external protocol handler prompt
  * CVE-2024-10461 (bmo#1914521)
    XSS due to Content-Disposition being ignored in
    multipart/x-mixed-replace response
  * CVE-2024-10462 (bmo#1920423)
    Origin of permission prompt could be spoofed by long URL
  * CVE-2024-10463 (bmo#1920800)
    Cross origin video frame leak
  * CVE-2024-10464 (bmo#1913000)
    History interface could have been used to cause a Denial of
    Service condition in the browser
  * CVE-2024-10465 (bmo#1918853)
    Clipboard "paste" button persisted across tabs
  * CVE-2024-10466 (bmo#1924154)
    DOM push subscription message could hang Firefox
  * CVE-2024-10467 (bmo#1829029, bmo#1888538, bmo#1900394, bmo#1904059,
    bmo#1917742, bmo#1919809, bmo#1923706)
    Memory safety bugs fixed in Firefox 132, Thunderbird 132,
    Firefox ESR 128.4, and Thunderbird 128.4</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1730548800">- Mozilla Thunderbird 128.4.1
  * Add the 20 year donation appeal (bmo#192538)</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1730894400">- Mozilla Thunderbird 128.4.2
  * Increased the auto-compaction threshold to reduce the frequency
    of compaction (bmo#1927656)
  * fixed: New profile creation caused console errors (bmo#1912675)
  * fixed: Repair folder could result in older messages showing
    wrong date and time (bmo#1911916)
  * fixed: Recently deleted messages could become undeleted if
    message compaction failed (bmo#1924927)
  * fixed: Visual and UX improvements
    (bmo#1857413,bmo#1922934,bmo#1924437)
  * fixed: Clicking on an HTML button could cause Thunderbird to
    freeze (bmo#1879355)
  * fixed: Messages could not be selected for dragging
    (bmo#1887518)
  * fixed: Could not open attached file in a MIME encrypted
    message (bmo#1924637)
  * fixed: Account creation "Setup Documentation" link was broken
    (bmo#1925493)
  * fixed: Unable to generate QR codes when exporting to mobile
    in some cases (bmo#1928114)
  * fixed: Operating system reauthentication was missing when
    exporting QR codes for mobile (bmo#1928232)
  * fixed: Could not drag all-day events from one day to another
    in week view (bmo#1922944)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1731153600">- Mozilla Thunderbird 128.4.3
  Fixes:
  * Folder corruption could cause Thunderbird to freeze and become unusable
  * Message corruption could be propagated when reading mbox
  * Folder compaction was not abandoned on shutdown
  * Folder compaction did not clean up on failure
  * Collapsed NNTP thread incorrectly indicated there were unread messages
  * Navigating to next unread message did not wait for all messages
    to be loaded
  * Applying column view to folder and children could break if folder
    error occurred
  * Remote content notifications were broken with encrypted messages
  * Updating criteria of a saved search resulted in poor search performance
  * Drop-downs may not work in some places
  MFSA 2024-61
  * CVE-2024-11159 (bmo#1925929)
    Potential disclosure of plaintext in OpenPGP encrypted message
- remove kmozillahelper support (boo#1226112)
  * removed mozilla-kde.patch
  * requires xdg-desktop-portal instead</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1732104000">- Mozilla Thunderbird 128.4.4
  * QR codes were not scannable by Android app when using most
    high-contrast themes
  * Primary password prompt cancellation during mobile export was
    confusing
- revert using xdg-desktop-portal as some desktops have limited
  support</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1732622400">- Mozilla Thunderbird 128.5.0
  * IMAP could crash when reading cached messages
  * Enabling "Show Folder Size" on Maildir profile could render
    Thunderbird unusable
  * Messages corrupted by folder compaction were only fixed by user
    intervention
  * Reading a message from past the end of an mbox file did not
    cause an error
  * View -&gt; Folders had duplicate F access keys
  * Add-ons adding columns to the message list could fail and cause
    display issue
  * "Empty trash on exit" and "Expunge inbox on exit" did not
    always work
  * Selecting a display option in View -&gt; Tasks did not apply in
    the Task interface
  MFSA 2024-68 (bsc#1233695)
  * CVE-2024-11691 (bmo#1914707, bmo#1924184)
    Memory corruption in Apple GPU drivers
  * CVE-2024-11692 (bmo#1909535)
    Select list elements could be shown over another site
  * CVE-2024-11693 (bmo#1921458)
    Download Protections were bypassed by .library-ms files on Windows
  * CVE-2024-11694 (bmo#1924167)
    CSP Bypass and XSS Exposure via Web Compatibility Shims
  * CVE-2024-11695 (bmo#1925496)
    URL Bar Spoofing via Manipulated Punycode and Whitespace Characters
  * CVE-2024-11696 (bmo#1929600)
    Unhandled Exception in Add-on Signature Verification
  * CVE-2024-11697 (bmo#1842187)
    Improper Keypress Handling in Executable File Confirmation Dialog
  * CVE-2024-11698 (bmo#1916152)
    Fullscreen Lock-Up When Modal Dialog Interrupts Transition on macOS
  * CVE-2024-11699 (bmo#1880582, bmo#1929911)
    Memory safety bugs fixed in Firefox 133, Thunderbird 133,
    Firefox ESR 128.5, and Thunderbird 128.5
- appid is thunderbird-esr currently; use the matching desktop
  file name (boo#1233650)</changelog>
</package>
<package pkgid="0ccb61a8dd0ba1b7e9c258c06bec5f84562f69f501a9ad1fc64a677b2cb9391d7d4ca30f947fdb9455c6e6886175aad5b5d4f75e6bb88d32e3863d9123d516ee" name="MozillaThunderbird-translations-other" arch="x86_64">
  <version epoch="0" ver="128.5.1" rel="1.0.10.1.sr20241103"/>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1714824000">- Mozilla Thunderbird 115.10.2:
  https://www.thunderbird.net/en-US/thunderbird/115.10.2/releasenotes/
  This release is identical to 115.10.1, other than changing the
  Update channel for self-updating builds to ESR. (bmo#1893271)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1715688000">- Mozilla Thunderbird 115.11.0
  MFSA 2024-23 (bsc#1224056)
  * CVE-2024-4367 (bmo#1893645)
    Arbitrary JavaScript execution in PDF.js
  * CVE-2024-4767 (bmo#1878577)
    IndexedDB files retained in private browsing mode
  * CVE-2024-4768 (bmo#1886082)
    Potential permissions request bypass via clickjacking
  * CVE-2024-4769 (bmo#1886108)
    Cross-origin responses could be distinguished between script
    and non-script content-types
  * CVE-2024-4770 (bmo#1893270)
    Use-after-free could occur when printing to PDF
  * CVE-2024-4777 (bmo#1878199, bmo#1893340)
    Memory safety bugs fixed in Firefox 126, Firefox ESR 115.11,
    and Thunderbird 115.11</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1716984000">- Mozilla Thunderbird 115.11.1
  * Added a short anonymous survey that a small number of users will
    be randomly asked to complete</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1718625600">- Mozilla Thunderbird 115.12.0
  https://www.thunderbird.net/en-US/thunderbird/115.12.0/releasenotes
  MFSA 2024-28 (bsc#1226027)
  * CVE-2024-5702 (bmo#1193389)
    Use-after-free in networking
  * CVE-2024-5688 (bmo#1895086)
    Use-after-free in JavaScript object transplant
  * CVE-2024-5690 (bmo#1883693)
    External protocol handlers leaked by timing attack
  * CVE-2024-5691 (bmo#1888695)
    Sandboxed iframes were able to bypass sandbox restrictions to
    open a new window
  * CVE-2024-5692 (bmo#1891234)
    Bypass of file name restrictions during saving
  * CVE-2024-5693 (bmo#1891319)
    Cross-Origin Image leak via Offscreen Canvas
  * CVE-2024-5696 (bmo#1896555)
    Memory Corruption in Text Fragments
  * CVE-2024-5700 (bmo#1862809, bmo#1889355, bmo#1893388, bmo#1895123)
    Memory safety bugs fixed in Firefox 127, Firefox ESR 115.12,
    and Thunderbird 115.12</changelog>
  <changelog author="Martin Sirringhaus &lt;martin.sirringhaus@suse.com&gt;" date="1719921600">- Mozilla Thunderbird 115.12.2
  * fixed: Annual Thunderbird Beta appeal intended for
    Thunderbird 115.12.0 did not open as expected (bmo#1898084)
- Mozilla Thunderbird 115.12.1
  * 115.12.0 got pulled because of upstream automation process errors
    and Windows installer signing changes.
    No code changes, changelog is the same as 115.12.0 (bsc#1226495)
- Added thunderbird-fix-CVE-2024-34703.patch (bsc#1227239)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1720612800">- Mozilla Thunderbird 115.13.0
  * After starting Thunderbird, the message list position was
    sometimes set to an incorrect position
  MFSA 2024-30 (bsc#1226316)
  * CVE-2024-6600 (bmo#1888340)
    Memory corruption in WebGL API
  * CVE-2024-6601 (bmo#1890748)
    Race condition in permission assignment
  * CVE-2024-6602 (bmo#1895032)
    Memory corruption in NSS
  * CVE-2024-6603 (bmo#1895081)
    Memory corruption in thread creation
  * CVE-2024-6604 (bmo#1748105, bmo#1837550, bmo#1884266)
    Memory safety bugs fixed in Firefox 128, Firefox ESR 115.13,
    and Thunderbird 115.13</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1722600000">- Mozilla Thunderbird 115.14.0
  * When using an external installation of GnuPG, Thunderbird
    occassionally sent/received corrupted messages (bmo#1898832)
  * Users of external GnuPG were unable to decrypt incorrectly
    encoded messages (bmo#1906903)
  MFSA 2024-38 (bsc#1228648)
  * CVE-2024-7519 (bmo#1902307)
    Out of bounds memory access in graphics shared memory handling
  * CVE-2024-7521 (bmo#1904644)
    Incomplete WebAssembly exception handing
  * CVE-2024-7522 (bmo#1906727)
    Out of bounds read in editor component
  * CVE-2024-7525 (bmo#1909298)
    Missing permission check when creating a StreamFilter
  * CVE-2024-7526 (bmo#1910306)
    Uninitialized memory used by WebGL
  * CVE-2024-7527 (bmo#1871303)
    Use-after-free in JavaScript garbage collection
  * CVE-2024-7529 (bmo#1903187)
    Document content could partially obscure security prompts</changelog>
  <changelog author="Manfred Hollstein &lt;manfred.h@gmx.net&gt;" date="1724932800">- Use gcc13 on Tumbleweed and where it is available.
- Don't use gcc14 as sources don't compile.</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1725624000">- Mozilla Thunderbird 115.15.0
  MFSA 2024-44 (bsc#1229821)
  * CVE-2024-8381 (bmo#1912715)
    Type confusion when looking up a property name in a "with"
    block
  * CVE-2024-8382 (bmo#1906744)
    Internal event interfaces were exposed to web content when
    browser EventHandler listener callbacks ran
  * CVE-2024-8384 (bmo#1911288)
    Garbage collection could mis-color cross-compartment objects
    in OOM conditions</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1728561600">- Mozilla Thunderbird 128.3.1
  https://www.thunderbird.net/en-US/thunderbird/128.0esr/releasenotes/
  and following release notes for minor version updates
  MFSA 2024-52  (bsc#1231413)
  * CVE-2024-9680 (bmo#1923344)
    Use-after-free in Animation timeline
  Mozilla Thunderbird 128.3.0
  MFSA 2024-32 (128.0)
  MFSA 2024-37 (128.1)
  MFSA 2024-43 (128.2)
  MFSA 2024-49 (128.3) (bsc#1230979)
  * CVE-2024-9392 (bmo#1899154, bmo#1905843)
    Compromised content process can bypass site isolation
  * CVE-2024-9393 (bmo#1918301)
    Cross-origin access to PDF contents through multipart responses
  * CVE-2024-9394 (bmo#1918874)
    Cross-origin access to JSON contents through multipart responses
  * CVE-2024-8900 (bmo#1872841)
    Clipboard write permission bypass
  * CVE-2024-9396 (bmo#1912471)
    Potential memory corruption may occur when cloning certain objects
  * CVE-2024-9397 (bmo#1916659)
    Potential directory upload bypass via clickjacking
  * CVE-2024-9398 (bmo#1881037)
    External protocol handlers could be enumerated via popups
  * CVE-2024-9399 (bmo#1907726)
    Specially crafted WebTransport requests could lead to denial
    of service
  * CVE-2024-9400 (bmo#1915249)
    Potential memory corruption during JIT compilation
  * CVE-2024-9401 (bmo#1872744, bmo#1897792, bmo#1911317, bmo#1916476)
    Memory safety bugs fixed in Firefox 131, Firefox ESR 115.16,
    Firefox ESR 128.3, Thunderbird 131, and Thunderbird 128.3
  * CVE-2024-9402 (bmo#1872744, bmo#1897792, bmo#1911317, bmo#1913445,
    bmo#1914106, bmo#1914475, bmo#1914963, bmo#1915008, bmo#1916476)
    Memory safety bugs fixed in Firefox 131, Firefox ESR 128.3,
    Thunderbird 131, and Thunderbird 128.3
- removed obsolete patches
  mozilla-bmo1504834-part3.patch
  mozilla-bmo1512162.patch
  mozilla-bmo1775202.patch
  mozilla-bmo531915.patch
  mozilla-fix-aarch64-libopus.patch
  mozilla-fix-issues-with-llvm18.patch
  mozilla-fix-top-level-asm.patch
  mozilla-partial-revert-1768632.patch
  mozilla-rust-disable-future-incompat.patch
  thunderbird-fix-CVE-2024-34703.patch
- new patch thunderbird-silence-no-return.patch
- rebased
  mozilla-bmo1504834-part1.patch
  mozilla-kde.patch
  mozilla-libavcodec58_91.patch
  mozilla-silence-no-return-type.patch</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1729080000">- Mozilla Thunderbird 128.3.2
  bugfix release:
  https://www.thunderbird.net/en-US/thunderbird/128.3.2esr/releasenotes
- bring back mozilla-bmo531915.patch to fix x86</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1729684800">- Mozilla Thunderbird 128.3.3
  * Files left over from failed folder compactions could use up
    disk space (bmo#1878541)
  * Message list returned to selected message after action on
    another message (bmo#1917485)
  * Some faulty messages were downloaded and never stored
    (bmo#1923765)
  * Messages could become corrupted during folder compaction
    (bmo#1923747,bmo#1923541,bmo#1720047)
  * Searching events by Location, Description, or URL failed
    (bmo#1912710)
  * "Remove All Shown" saved passwords deleted all logins if
    filtered without results (bmo#601447)
  * Calendar event updates were not always sent to attendees
    (bmo#1877640)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1730289600">- Mozilla Thunderbird 128.4.0
  * Export Thunderbird account settings to Thunderbird Mobile via QRCode
  Bugfixes:
  * Unable to send an unencrypted response to an OpenPGP encrypted message
  MFSA 2024-58 (bsc#1231879)
  * CVE-2024-10458 (bmo#1921733)
    Permission leak via embed or object elements
  * CVE-2024-10459 (bmo#1919087)
    Use-after-free in layout with accessibility
  * CVE-2024-10460 (bmo#1912537)
    Confusing display of origin for external protocol handler prompt
  * CVE-2024-10461 (bmo#1914521)
    XSS due to Content-Disposition being ignored in
    multipart/x-mixed-replace response
  * CVE-2024-10462 (bmo#1920423)
    Origin of permission prompt could be spoofed by long URL
  * CVE-2024-10463 (bmo#1920800)
    Cross origin video frame leak
  * CVE-2024-10464 (bmo#1913000)
    History interface could have been used to cause a Denial of
    Service condition in the browser
  * CVE-2024-10465 (bmo#1918853)
    Clipboard "paste" button persisted across tabs
  * CVE-2024-10466 (bmo#1924154)
    DOM push subscription message could hang Firefox
  * CVE-2024-10467 (bmo#1829029, bmo#1888538, bmo#1900394, bmo#1904059,
    bmo#1917742, bmo#1919809, bmo#1923706)
    Memory safety bugs fixed in Firefox 132, Thunderbird 132,
    Firefox ESR 128.4, and Thunderbird 128.4</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1730548800">- Mozilla Thunderbird 128.4.1
  * Add the 20 year donation appeal (bmo#192538)</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1730894400">- Mozilla Thunderbird 128.4.2
  * Increased the auto-compaction threshold to reduce the frequency
    of compaction (bmo#1927656)
  * fixed: New profile creation caused console errors (bmo#1912675)
  * fixed: Repair folder could result in older messages showing
    wrong date and time (bmo#1911916)
  * fixed: Recently deleted messages could become undeleted if
    message compaction failed (bmo#1924927)
  * fixed: Visual and UX improvements
    (bmo#1857413,bmo#1922934,bmo#1924437)
  * fixed: Clicking on an HTML button could cause Thunderbird to
    freeze (bmo#1879355)
  * fixed: Messages could not be selected for dragging
    (bmo#1887518)
  * fixed: Could not open attached file in a MIME encrypted
    message (bmo#1924637)
  * fixed: Account creation "Setup Documentation" link was broken
    (bmo#1925493)
  * fixed: Unable to generate QR codes when exporting to mobile
    in some cases (bmo#1928114)
  * fixed: Operating system reauthentication was missing when
    exporting QR codes for mobile (bmo#1928232)
  * fixed: Could not drag all-day events from one day to another
    in week view (bmo#1922944)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1731153600">- Mozilla Thunderbird 128.4.3
  Fixes:
  * Folder corruption could cause Thunderbird to freeze and become unusable
  * Message corruption could be propagated when reading mbox
  * Folder compaction was not abandoned on shutdown
  * Folder compaction did not clean up on failure
  * Collapsed NNTP thread incorrectly indicated there were unread messages
  * Navigating to next unread message did not wait for all messages
    to be loaded
  * Applying column view to folder and children could break if folder
    error occurred
  * Remote content notifications were broken with encrypted messages
  * Updating criteria of a saved search resulted in poor search performance
  * Drop-downs may not work in some places
  MFSA 2024-61
  * CVE-2024-11159 (bmo#1925929)
    Potential disclosure of plaintext in OpenPGP encrypted message
- remove kmozillahelper support (boo#1226112)
  * removed mozilla-kde.patch
  * requires xdg-desktop-portal instead</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1732104000">- Mozilla Thunderbird 128.4.4
  * QR codes were not scannable by Android app when using most
    high-contrast themes
  * Primary password prompt cancellation during mobile export was
    confusing
- revert using xdg-desktop-portal as some desktops have limited
  support</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1732622400">- Mozilla Thunderbird 128.5.0
  * IMAP could crash when reading cached messages
  * Enabling "Show Folder Size" on Maildir profile could render
    Thunderbird unusable
  * Messages corrupted by folder compaction were only fixed by user
    intervention
  * Reading a message from past the end of an mbox file did not
    cause an error
  * View -&gt; Folders had duplicate F access keys
  * Add-ons adding columns to the message list could fail and cause
    display issue
  * "Empty trash on exit" and "Expunge inbox on exit" did not
    always work
  * Selecting a display option in View -&gt; Tasks did not apply in
    the Task interface
  MFSA 2024-68 (bsc#1233695)
  * CVE-2024-11691 (bmo#1914707, bmo#1924184)
    Memory corruption in Apple GPU drivers
  * CVE-2024-11692 (bmo#1909535)
    Select list elements could be shown over another site
  * CVE-2024-11693 (bmo#1921458)
    Download Protections were bypassed by .library-ms files on Windows
  * CVE-2024-11694 (bmo#1924167)
    CSP Bypass and XSS Exposure via Web Compatibility Shims
  * CVE-2024-11695 (bmo#1925496)
    URL Bar Spoofing via Manipulated Punycode and Whitespace Characters
  * CVE-2024-11696 (bmo#1929600)
    Unhandled Exception in Add-on Signature Verification
  * CVE-2024-11697 (bmo#1842187)
    Improper Keypress Handling in Executable File Confirmation Dialog
  * CVE-2024-11698 (bmo#1916152)
    Fullscreen Lock-Up When Modal Dialog Interrupts Transition on macOS
  * CVE-2024-11699 (bmo#1880582, bmo#1929911)
    Memory safety bugs fixed in Firefox 133, Thunderbird 133,
    Firefox ESR 128.5, and Thunderbird 128.5
- appid is thunderbird-esr currently; use the matching desktop
  file name (boo#1233650)</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1732795200">- make spec compatible with rpm &lt; 4.17 again
- correct appdata for different desktop filename</changelog>
  <changelog author="Wolfgang Rosenauer &lt;wr@rosenauer.org&gt;" date="1733227200">- Mozilla Thunderbird 128.5.1
  * Add end of year donation appeal
  * Total message count for favorite folders did not work consistently</changelog>
</package>
<package pkgid="8c270702689823e0cbd207e20c60becf9e183494653324e778cbcf893484d64c4e7c959729145b3a97244e67d1ddf4b8f0977ef023451f668879c6c143ca73c5" name="NetworkManager" arch="i586">
  <version epoch="0" ver="1.48.10" rel="1.0.4.1.sr20240803"/>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678104000">- Changes from version 1.38.6 (bsc#1208631):
  + Fix honoring DNS priority.
  + Decline DHCPv6 lease when DAD fails.
  + Various bugfixes.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1724328000">- Add NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  device: don't enforce IP cleanup on deactivating state
  (bsc#1228154, glfd#NetworkManager/NetworkManager!2016).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1724673600">- Update to version 1.48.10:
  + nmcli/edit: fix memory leak in extract_setting_and_property
  + autotools: fix another filename that was renamed
  + gitlab: fix helper scripts to support DNF5
  + CI: update the imported templates_sha
  + autotools: fix filename that was renamed
  + format: run nm-code-format
  + policy: retry hostname resolution when it fails
  + platform: add small backoff time before resync
  + bridge: reapply port VLANs only when necessary
  + platform: add nmp_utils_bridge_normalized_vlans_equal()
  + platform: support reading bridge VLANs
  + device: support reapplying bridge-port VLANs
  + bridge: change the signature for
    nm_platform_link_set_bridge_vlans()
  + platform: add define for IFLA_BOND_SLAVE_PRIO
  + lldp: fix multiple access to argument in logging macro
  + lldp: fix crash dereferencing NULL pointer during debug logging
  + policy: unblock the autoconnect for children when parent is
    available</changelog>
</package>
<package pkgid="87686e70948df1f1ca9116b9c0a2bf132635b4e1f3da4ffead8a66b896986c7077bfac1e230d3cad24906c95af89fe36db86a8e8db54258a86ac5a71f60e1bd9" name="NetworkManager" arch="src">
  <version epoch="0" ver="1.48.10" rel="1.0.4.1.sr20240803"/>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678104000">- Changes from version 1.38.6 (bsc#1208631):
  + Fix honoring DNS priority.
  + Decline DHCPv6 lease when DAD fails.
  + Various bugfixes.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1724328000">- Add NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  device: don't enforce IP cleanup on deactivating state
  (bsc#1228154, glfd#NetworkManager/NetworkManager!2016).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1724673600">- Update to version 1.48.10:
  + nmcli/edit: fix memory leak in extract_setting_and_property
  + autotools: fix another filename that was renamed
  + gitlab: fix helper scripts to support DNF5
  + CI: update the imported templates_sha
  + autotools: fix filename that was renamed
  + format: run nm-code-format
  + policy: retry hostname resolution when it fails
  + platform: add small backoff time before resync
  + bridge: reapply port VLANs only when necessary
  + platform: add nmp_utils_bridge_normalized_vlans_equal()
  + platform: support reading bridge VLANs
  + device: support reapplying bridge-port VLANs
  + bridge: change the signature for
    nm_platform_link_set_bridge_vlans()
  + platform: add define for IFLA_BOND_SLAVE_PRIO
  + lldp: fix multiple access to argument in logging macro
  + lldp: fix crash dereferencing NULL pointer during debug logging
  + policy: unblock the autoconnect for children when parent is
    available</changelog>
</package>
<package pkgid="5ef4fff021e7ef1bb33464631f65c32cc5f71714c01544347060bf5a5a0369adb5f06afaf83981bac29db5009496c047169777bfdff7eae4d6f58203c671ee8d" name="NetworkManager" arch="x86_64">
  <version epoch="0" ver="1.48.10" rel="1.0.4.1.sr20240803"/>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678104000">- Changes from version 1.38.6 (bsc#1208631):
  + Fix honoring DNS priority.
  + Decline DHCPv6 lease when DAD fails.
  + Various bugfixes.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1724328000">- Add NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  device: don't enforce IP cleanup on deactivating state
  (bsc#1228154, glfd#NetworkManager/NetworkManager!2016).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1724673600">- Update to version 1.48.10:
  + nmcli/edit: fix memory leak in extract_setting_and_property
  + autotools: fix another filename that was renamed
  + gitlab: fix helper scripts to support DNF5
  + CI: update the imported templates_sha
  + autotools: fix filename that was renamed
  + format: run nm-code-format
  + policy: retry hostname resolution when it fails
  + platform: add small backoff time before resync
  + bridge: reapply port VLANs only when necessary
  + platform: add nmp_utils_bridge_normalized_vlans_equal()
  + platform: support reading bridge VLANs
  + device: support reapplying bridge-port VLANs
  + bridge: change the signature for
    nm_platform_link_set_bridge_vlans()
  + platform: add define for IFLA_BOND_SLAVE_PRIO
  + lldp: fix multiple access to argument in logging macro
  + lldp: fix crash dereferencing NULL pointer during debug logging
  + policy: unblock the autoconnect for children when parent is
    available</changelog>
</package>
<package pkgid="688e0156fc2a3f207f05c5541ec3c621cb10e3e0d40e5494a0ee32fdbed2d983b2fd0eeaa606bd8ccdf8f8477e89a4e2eaa423017b0e826e6ad1e215a60c044b" name="NetworkManager" arch="i586">
  <version epoch="0" ver="1.48.10" rel="1.1"/>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678104000">- Changes from version 1.38.6 (bsc#1208631):
  + Fix honoring DNS priority.
  + Decline DHCPv6 lease when DAD fails.
  + Various bugfixes.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1724328000">- Add NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  device: don't enforce IP cleanup on deactivating state
  (bsc#1228154, glfd#NetworkManager/NetworkManager!2016).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1724673600">- Update to version 1.48.10:
  + nmcli/edit: fix memory leak in extract_setting_and_property
  + autotools: fix another filename that was renamed
  + gitlab: fix helper scripts to support DNF5
  + CI: update the imported templates_sha
  + autotools: fix filename that was renamed
  + format: run nm-code-format
  + policy: retry hostname resolution when it fails
  + platform: add small backoff time before resync
  + bridge: reapply port VLANs only when necessary
  + platform: add nmp_utils_bridge_normalized_vlans_equal()
  + platform: support reading bridge VLANs
  + device: support reapplying bridge-port VLANs
  + bridge: change the signature for
    nm_platform_link_set_bridge_vlans()
  + platform: add define for IFLA_BOND_SLAVE_PRIO
  + lldp: fix multiple access to argument in logging macro
  + lldp: fix crash dereferencing NULL pointer during debug logging
  + policy: unblock the autoconnect for children when parent is
    available</changelog>
</package>
<package pkgid="48fbf6545e3f6cb49c9c5a9400a2e8ce61565e6dfaf5092cc93ac173257ad1a2e2c9db4567910676b0c944f1cdf1faf76568c892753fbe91228129edae9efd78" name="NetworkManager" arch="src">
  <version epoch="0" ver="1.48.10" rel="1.1"/>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678104000">- Changes from version 1.38.6 (bsc#1208631):
  + Fix honoring DNS priority.
  + Decline DHCPv6 lease when DAD fails.
  + Various bugfixes.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1724328000">- Add NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  device: don't enforce IP cleanup on deactivating state
  (bsc#1228154, glfd#NetworkManager/NetworkManager!2016).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1724673600">- Update to version 1.48.10:
  + nmcli/edit: fix memory leak in extract_setting_and_property
  + autotools: fix another filename that was renamed
  + gitlab: fix helper scripts to support DNF5
  + CI: update the imported templates_sha
  + autotools: fix filename that was renamed
  + format: run nm-code-format
  + policy: retry hostname resolution when it fails
  + platform: add small backoff time before resync
  + bridge: reapply port VLANs only when necessary
  + platform: add nmp_utils_bridge_normalized_vlans_equal()
  + platform: support reading bridge VLANs
  + device: support reapplying bridge-port VLANs
  + bridge: change the signature for
    nm_platform_link_set_bridge_vlans()
  + platform: add define for IFLA_BOND_SLAVE_PRIO
  + lldp: fix multiple access to argument in logging macro
  + lldp: fix crash dereferencing NULL pointer during debug logging
  + policy: unblock the autoconnect for children when parent is
    available</changelog>
</package>
<package pkgid="b2b7421d6ef762437d8cb5987e65dea45593450e38d2d4b7a81b375c49c5b588ad45ed8d24eb24fa0f9f8ab40fedbc2cbab54e53d55391e8790e5168b72ef073" name="NetworkManager" arch="x86_64">
  <version epoch="0" ver="1.48.10" rel="1.1"/>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678104000">- Changes from version 1.38.6 (bsc#1208631):
  + Fix honoring DNS priority.
  + Decline DHCPv6 lease when DAD fails.
  + Various bugfixes.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1724328000">- Add NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  device: don't enforce IP cleanup on deactivating state
  (bsc#1228154, glfd#NetworkManager/NetworkManager!2016).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1724673600">- Update to version 1.48.10:
  + nmcli/edit: fix memory leak in extract_setting_and_property
  + autotools: fix another filename that was renamed
  + gitlab: fix helper scripts to support DNF5
  + CI: update the imported templates_sha
  + autotools: fix filename that was renamed
  + format: run nm-code-format
  + policy: retry hostname resolution when it fails
  + platform: add small backoff time before resync
  + bridge: reapply port VLANs only when necessary
  + platform: add nmp_utils_bridge_normalized_vlans_equal()
  + platform: support reading bridge VLANs
  + device: support reapplying bridge-port VLANs
  + bridge: change the signature for
    nm_platform_link_set_bridge_vlans()
  + platform: add define for IFLA_BOND_SLAVE_PRIO
  + lldp: fix multiple access to argument in logging macro
  + lldp: fix crash dereferencing NULL pointer during debug logging
  + policy: unblock the autoconnect for children when parent is
    available</changelog>
</package>
<package pkgid="110f45b25674e2b5651ec0406b55a075e1102ec99b4448929af3c2a6b78847fc33f90003493c78a5f7f258e086839074f396b30536b720fafe8cec1272645ab3" name="NetworkManager" arch="i586">
  <version epoch="0" ver="1.48.8" rel="1.1"/>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1676894400">- Add 1539.patch: Fix constructing the IPv4 nameserver variable
  (boo#1208371).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1677153600">- Update to version 1.42.2:
  + Add build option to set the mobile-broadband-provider-info
    database path.
  + Add new "ipv[46].replace-local-rule" setting to control whether
    to remove the local route rule that is automatically generated.
  + Add the DHCPv6 IAID to the lease information exposed in /run
    and on D-Bus.
  + Fix assuming team connections at boot.
  + Fix race condition when setting the MAC address of an OVS
    interface.
  + Fix constructing the IPv4 name servers variable passed to
    dispatcher scripts.
  + Don't use tentative IPv6 address to resolve the system hostname
    via DNS.
  + Deprecate the "Master" property of the NMActiveConnection D-Bus
    object in favor of the new "Controller" property.
- Drop 1539.patch: Fixed upstream.
- Refresh patch with quilt:
  + 0001-Coerce-connectivity-LIMITED-to-NONE-when-device-is-d.patch</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678104000">- Changes from version 1.38.6 (bsc#1208631):
  + Fix honoring DNS priority.
  + Decline DHCPv6 lease when DAD fails.
  + Various bugfixes.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
</package>
<package pkgid="b1130b399d3c419d68c636623360551e841daa840345ccc921d6c527026cb3725adb828508bba37d4b371d9b6b6a1aa270b59e22c4e5979fcc83d1377aa93dda" name="NetworkManager" arch="src">
  <version epoch="0" ver="1.48.8" rel="1.1"/>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1676894400">- Add 1539.patch: Fix constructing the IPv4 nameserver variable
  (boo#1208371).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1677153600">- Update to version 1.42.2:
  + Add build option to set the mobile-broadband-provider-info
    database path.
  + Add new "ipv[46].replace-local-rule" setting to control whether
    to remove the local route rule that is automatically generated.
  + Add the DHCPv6 IAID to the lease information exposed in /run
    and on D-Bus.
  + Fix assuming team connections at boot.
  + Fix race condition when setting the MAC address of an OVS
    interface.
  + Fix constructing the IPv4 name servers variable passed to
    dispatcher scripts.
  + Don't use tentative IPv6 address to resolve the system hostname
    via DNS.
  + Deprecate the "Master" property of the NMActiveConnection D-Bus
    object in favor of the new "Controller" property.
- Drop 1539.patch: Fixed upstream.
- Refresh patch with quilt:
  + 0001-Coerce-connectivity-LIMITED-to-NONE-when-device-is-d.patch</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678104000">- Changes from version 1.38.6 (bsc#1208631):
  + Fix honoring DNS priority.
  + Decline DHCPv6 lease when DAD fails.
  + Various bugfixes.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
</package>
<package pkgid="70b05f1998d27ea65a388665044a37df88eef983cb62fe66c140a70bb97a35ba25e173b1fb37c0f04b8ce03eb089160d49d21814fe0ad346719f6d5de7dbd379" name="NetworkManager" arch="x86_64">
  <version epoch="0" ver="1.48.8" rel="1.1"/>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1676894400">- Add 1539.patch: Fix constructing the IPv4 nameserver variable
  (boo#1208371).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1677153600">- Update to version 1.42.2:
  + Add build option to set the mobile-broadband-provider-info
    database path.
  + Add new "ipv[46].replace-local-rule" setting to control whether
    to remove the local route rule that is automatically generated.
  + Add the DHCPv6 IAID to the lease information exposed in /run
    and on D-Bus.
  + Fix assuming team connections at boot.
  + Fix race condition when setting the MAC address of an OVS
    interface.
  + Fix constructing the IPv4 name servers variable passed to
    dispatcher scripts.
  + Don't use tentative IPv6 address to resolve the system hostname
    via DNS.
  + Deprecate the "Master" property of the NMActiveConnection D-Bus
    object in favor of the new "Controller" property.
- Drop 1539.patch: Fixed upstream.
- Refresh patch with quilt:
  + 0001-Coerce-connectivity-LIMITED-to-NONE-when-device-is-d.patch</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678104000">- Changes from version 1.38.6 (bsc#1208631):
  + Fix honoring DNS priority.
  + Decline DHCPv6 lease when DAD fails.
  + Various bugfixes.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
</package>
<package pkgid="c1c3ecebb35d15f6ecf97177d1f69f5cdbbbcbae1a1343b39082a569a40619f8bcb62dee3a97ca01a7f2b3c20b51c0feb78567e622904204587a005ae7082910" name="NetworkManager" arch="i586">
  <version epoch="0" ver="1.50.0" rel="1.1"/>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1724328000">- Add NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  device: don't enforce IP cleanup on deactivating state
  (bsc#1228154, glfd#NetworkManager/NetworkManager!2016).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1724673600">- Update to version 1.48.10:
  + nmcli/edit: fix memory leak in extract_setting_and_property
  + autotools: fix another filename that was renamed
  + gitlab: fix helper scripts to support DNF5
  + CI: update the imported templates_sha
  + autotools: fix filename that was renamed
  + format: run nm-code-format
  + policy: retry hostname resolution when it fails
  + platform: add small backoff time before resync
  + bridge: reapply port VLANs only when necessary
  + platform: add nmp_utils_bridge_normalized_vlans_equal()
  + platform: support reading bridge VLANs
  + device: support reapplying bridge-port VLANs
  + bridge: change the signature for
    nm_platform_link_set_bridge_vlans()
  + platform: add define for IFLA_BOND_SLAVE_PRIO
  + lldp: fix multiple access to argument in logging macro
  + lldp: fix crash dereferencing NULL pointer during debug logging
  + policy: unblock the autoconnect for children when parent is
    available</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1727956800">- Update to version 1.50.0:
  + The support for "dhclient" has been deprecated, not built
    unless explicitely enabled, and will be removed in a future
    release. The internal DHCP client should be used instead and
    has been the default since version 1.20 (1.12 when built with
    meson).
  + Support matching a OVS system interface by MAC address.
  + Add a timeout option to connectivity checking.
  + Support configuring veth interfaces in nmtui.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.
  + Revert to using sysctl ipv6.conf.default for ip6-privacy.
  + Allow specifying a system OVS interface by MAC address.
  + ndisc: Support multiple gateways for a single network.
  + wifi: Support configuring channel-width in AP mode.
  + keyfile: Stop writing offensive terms into keyfiles.
  + Support reapplying the VLANs on bridge ports.
  + Fix crash caused by malformed LLDP package if debug log is
    enabled.
  + Retry hostname resolution when it fails.
- Drop NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  Fixed upstream.
- Rebase patches with quilt.</changelog>
</package>
<package pkgid="68c4226a9d47357598be6f226d10825df9a7776798c30577bfe35ec936e4a3ead1770b9462feabfc7d3082cf010881469a488cfc61a262690678c82ceb01cc62" name="NetworkManager" arch="src">
  <version epoch="0" ver="1.50.0" rel="1.1"/>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1724328000">- Add NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  device: don't enforce IP cleanup on deactivating state
  (bsc#1228154, glfd#NetworkManager/NetworkManager!2016).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1724673600">- Update to version 1.48.10:
  + nmcli/edit: fix memory leak in extract_setting_and_property
  + autotools: fix another filename that was renamed
  + gitlab: fix helper scripts to support DNF5
  + CI: update the imported templates_sha
  + autotools: fix filename that was renamed
  + format: run nm-code-format
  + policy: retry hostname resolution when it fails
  + platform: add small backoff time before resync
  + bridge: reapply port VLANs only when necessary
  + platform: add nmp_utils_bridge_normalized_vlans_equal()
  + platform: support reading bridge VLANs
  + device: support reapplying bridge-port VLANs
  + bridge: change the signature for
    nm_platform_link_set_bridge_vlans()
  + platform: add define for IFLA_BOND_SLAVE_PRIO
  + lldp: fix multiple access to argument in logging macro
  + lldp: fix crash dereferencing NULL pointer during debug logging
  + policy: unblock the autoconnect for children when parent is
    available</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1727956800">- Update to version 1.50.0:
  + The support for "dhclient" has been deprecated, not built
    unless explicitely enabled, and will be removed in a future
    release. The internal DHCP client should be used instead and
    has been the default since version 1.20 (1.12 when built with
    meson).
  + Support matching a OVS system interface by MAC address.
  + Add a timeout option to connectivity checking.
  + Support configuring veth interfaces in nmtui.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.
  + Revert to using sysctl ipv6.conf.default for ip6-privacy.
  + Allow specifying a system OVS interface by MAC address.
  + ndisc: Support multiple gateways for a single network.
  + wifi: Support configuring channel-width in AP mode.
  + keyfile: Stop writing offensive terms into keyfiles.
  + Support reapplying the VLANs on bridge ports.
  + Fix crash caused by malformed LLDP package if debug log is
    enabled.
  + Retry hostname resolution when it fails.
- Drop NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  Fixed upstream.
- Rebase patches with quilt.</changelog>
</package>
<package pkgid="ac5c2a735234b1f99b46580e1451b5151a2de23f12abd89c8c3da1a27dfe09632107d348b6f23b03662de53fba50d948355638ed316c7004d263c8dfc3943c3c" name="NetworkManager" arch="x86_64">
  <version epoch="0" ver="1.50.0" rel="1.1"/>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1724328000">- Add NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  device: don't enforce IP cleanup on deactivating state
  (bsc#1228154, glfd#NetworkManager/NetworkManager!2016).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1724673600">- Update to version 1.48.10:
  + nmcli/edit: fix memory leak in extract_setting_and_property
  + autotools: fix another filename that was renamed
  + gitlab: fix helper scripts to support DNF5
  + CI: update the imported templates_sha
  + autotools: fix filename that was renamed
  + format: run nm-code-format
  + policy: retry hostname resolution when it fails
  + platform: add small backoff time before resync
  + bridge: reapply port VLANs only when necessary
  + platform: add nmp_utils_bridge_normalized_vlans_equal()
  + platform: support reading bridge VLANs
  + device: support reapplying bridge-port VLANs
  + bridge: change the signature for
    nm_platform_link_set_bridge_vlans()
  + platform: add define for IFLA_BOND_SLAVE_PRIO
  + lldp: fix multiple access to argument in logging macro
  + lldp: fix crash dereferencing NULL pointer during debug logging
  + policy: unblock the autoconnect for children when parent is
    available</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1727956800">- Update to version 1.50.0:
  + The support for "dhclient" has been deprecated, not built
    unless explicitely enabled, and will be removed in a future
    release. The internal DHCP client should be used instead and
    has been the default since version 1.20 (1.12 when built with
    meson).
  + Support matching a OVS system interface by MAC address.
  + Add a timeout option to connectivity checking.
  + Support configuring veth interfaces in nmtui.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.
  + Revert to using sysctl ipv6.conf.default for ip6-privacy.
  + Allow specifying a system OVS interface by MAC address.
  + ndisc: Support multiple gateways for a single network.
  + wifi: Support configuring channel-width in AP mode.
  + keyfile: Stop writing offensive terms into keyfiles.
  + Support reapplying the VLANs on bridge ports.
  + Fix crash caused by malformed LLDP package if debug log is
    enabled.
  + Retry hostname resolution when it fails.
- Drop NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  Fixed upstream.
- Rebase patches with quilt.</changelog>
</package>
<package pkgid="46428085fcd10c8438dbabcc860b610031499671b868eef6befe7772cd7c18f8e4c50827ca0dede0cb99a65303ad7bdba3df0ec44d5b485319723e8c7e63be66" name="NetworkManager-applet" arch="src">
  <version epoch="0" ver="1.36.0" rel="3.1"/>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1591272000">- Make libnma require mobile-broadband-provider-info(bsc#1172499).</changelog>
  <changelog author="bjorn.lie@gmail.com" date="1592913600">- Update to version 1.18.0:
  + Enable build with appindicator by default.
  + Add WireGuard support to the editor.
  + Support OWE (Opportunistic Wireless Encryption) in the editor.
  + Fix crash when disposing VPN secret dialog.
- Switch to using tarball release, drop usage of source service.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1612353600">- Update to version 1.20.0:
  + Use wireless-security code from libnma.
  + Add flatpak build configuration.
  + Applet:
  - Hide unmanaged ethernet devices in nm-applet.
  - Fix Wi-Fi scan requests with appindicator.
  - Add stock symbolic icons.
  + Editor:
  - Fix drop down list for connection.secondaries.
  - Remove NotShowIn=GNOME.
- Drop
  NetworkManager-gnome-bsc1003069-default-agent-owned-secrets.patch:
  patch needs to be moved over to libnma.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1620993600">- Update to version 1.22.0:
  + Support activating WireGuard connections as VPNs from the
    applet.
  + Fix nm-connection-editor crash when evaluating secondary
    connections.
  + Show missing toggle in the 802.1X security page of the editor.
  + Fix updating Polkit permission in the editor.
  + Adapt peers table in the WireGuard editor page when the window
    is resized.
  + Update translations.</changelog>
  <changelog author="Frederic Crozat &lt;fcrozat@suse.com&gt;" date="1628769600">- Replaces Requires nma-data with a Conflicts on older version,
  to please installchecker.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1629201600">- Update to version 1.24.0:
  + If Polkit permissions allow it, create system connections
    (instead of user-restricted ones) when clicking on a Wi-Fi
    network in the applet.
  + Fix display of blurry applet icon.
  + Use the "port" word for dependend devices and profiles in the
    editor.
  + Support storing and retrieving WireGuard preshared-key
    into/from a keyring.
  + Update translations.</changelog>
  <changelog author="Stanislav Brabec &lt;sbrabec@suse.com&gt;" date="1631620800">- Remove obsolete translation-update-upstream support
  (jsc#SLE-21105).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1636027200">- Stop passing no longer used nor recognized options
  introspection=true and libnm_gtk=false to meson.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1643716800">- Add 107.patch: Fix build with meson 0.61.0 and newer.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1647950400">- Update to version 1.26.0:
  + Improve error messages and error dialogs.
  + Improve Wi-Fi security combo error handling.
  + Stop providing WEP by default.
  + Replace the lock icon for WEP networks with an exclamation
    mark.
  + Fix meson 0.61 issues.
  + Make the tooltip of the status icon available for
    screen readers.
  + Fix OWE wireless security option not showed
    on "Connect to a Hidden Network" dialog.
  + Fix OWE wireless security option not being saved
    when chosen from nm-connection-editor.
  + Move 802.1 dialog margins for the inner vbox.
  + Align labels for Ethernet dialog.
  + Move all Wi-FI entries to a submenu.
  + Fix the VPN plugins dialog margins.
  + Add a scrolled window for the VPN page.
  + Internal improvements.
  + Update translations.
- Drop disabled nm-applet-private-connection.patch: We have not had
  this patch enabled for 6 months, and so far no bugs filed. Debian
  had a similar patch, and they too have dropped it, so it seems to
  no longer be needed.
- Drop 107.patch: Fixed upstream.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1654689600">- Update to version 1.28.0:
  + Use correct font size for headings in order to make lives of
    HiDPI a little less miserable.
  + Updated translations.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1667908800">- Update to version 1.30.0:
  + wifi: change description for wpa-psk to include also WPA3.
  + editor: remove unused fields from wifi page.
  + applet: replace libnotify with GNotification.
  + gschema: bring back org.gnome.nm-applet schema.
  + Updated translations.
- Drop pkgconfig(libnotify) BuildRequires: no longer needed.
- Rebase feature-app-indicator-desktop-file.patch.
- Conflict with libnma0 &lt; 1.10.4: the glib schema was upstream
  wrongly moved to libnma, even though only a part of it was
  supposed to be there. libnm 1.10.4 fixes this situation.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1670328000">- Add meson-0.61-build-fix.patch to fix the build on meson &gt;= 0.61
  (jsc#PED-2644, glgo#GNOME/network-manager-applet!107)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681646400">- Update to version 1.32.0:
  + Allow using MTU larger than 10000 octets.
  + Prefer using AppIndicator outside X11.
  + Added support for importing WireGuard profiles from wg-quick
    files.
  + Updated translations.
- Drop meson-0.61-build-fix.patch: fixed upstream.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696420800">- Update to version 1.34.0:
  + Fix crash when importing WireGuard connections.
  + Fix ineffective "Don't show message again" button in
    notifications.
  + Drop build dependency on gudev.
  + Add setting to suppress broadband unlock prompt.
  + Replace occurrences of "master", "slave" and "blacklist".
  + Updated translations.
- Drop long disabled polkit-devel BuildRequires, patch it was
  needed for is dropped.
- Drop pkgconfig(gudev-1.0) BuildRequires: No longer needed
  following upstream changes.
- Rebase feature-app-indicator-desktop-file.patch with quilt.
- Pass sysconfdir=%{_distconfdir} to meson setup, move to UsrEtc.
- Pass b_lto=true to meson setup, use link time optimization.
- Add fdupes BuildRequires and macro, remove duplicate files.
- Move translations to NetworkManager-connection-editor-lang,
  replace the NetworkManager-connection-editor Recommends with a
  hard Requires. Also add Obsoletes and Provides to ease updates.
  The reason for moving the translations are as follows: One can
  install NetworkManager-connection-editor without needing
  NetworkManager-applet, so in order to make the translations for
  NetworkManager-connection-editor installable without pulling the
  dependencies of NetworkManager-applet.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1697630400">- Support build environments like SLE 15 SP5 and Leap 15.5 which
  had %{_distconfdir) not defined yet.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %autosetup instead of %setup/%patch.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1705665600">- Update to version 1.36.0:
  + Support WiFi's cloned-mac "stable-ssid".
  + Update translations.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1715947200">- Swicth to ayatana-appindicator: Replace
  pkgconfig(appindicator3-0.1) BuildRequires with
  pkgconfig(ayatana-appindicator3-0.1). The legacy appindicator has
  been unmaintained for a while already.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1732104000">- Make pkgconfig(ayatana-appindicator3-0.1) BuildRequires
  conditional for ppc64le, as it is not available there.</changelog>
</package>
<package pkgid="5a94912b44a78a0970b6b0ae980e9cd1191f43c1eed021cac797b00cef506eb4011b95b45d83ed3d3313c9165cd903a2f82f28a241e0275cfcd72efd8d932f05" name="NetworkManager-applet" arch="x86_64">
  <version epoch="0" ver="1.36.0" rel="3.1"/>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1612353600">- Update to version 1.20.0:
  + Use wireless-security code from libnma.
  + Add flatpak build configuration.
  + Applet:
  - Hide unmanaged ethernet devices in nm-applet.
  - Fix Wi-Fi scan requests with appindicator.
  - Add stock symbolic icons.
  + Editor:
  - Fix drop down list for connection.secondaries.
  - Remove NotShowIn=GNOME.
- Drop
  NetworkManager-gnome-bsc1003069-default-agent-owned-secrets.patch:
  patch needs to be moved over to libnma.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1620993600">- Update to version 1.22.0:
  + Support activating WireGuard connections as VPNs from the
    applet.
  + Fix nm-connection-editor crash when evaluating secondary
    connections.
  + Show missing toggle in the 802.1X security page of the editor.
  + Fix updating Polkit permission in the editor.
  + Adapt peers table in the WireGuard editor page when the window
    is resized.
  + Update translations.</changelog>
  <changelog author="Frederic Crozat &lt;fcrozat@suse.com&gt;" date="1628769600">- Replaces Requires nma-data with a Conflicts on older version,
  to please installchecker.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1629201600">- Update to version 1.24.0:
  + If Polkit permissions allow it, create system connections
    (instead of user-restricted ones) when clicking on a Wi-Fi
    network in the applet.
  + Fix display of blurry applet icon.
  + Use the "port" word for dependend devices and profiles in the
    editor.
  + Support storing and retrieving WireGuard preshared-key
    into/from a keyring.
  + Update translations.</changelog>
  <changelog author="Stanislav Brabec &lt;sbrabec@suse.com&gt;" date="1631620800">- Remove obsolete translation-update-upstream support
  (jsc#SLE-21105).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1636027200">- Stop passing no longer used nor recognized options
  introspection=true and libnm_gtk=false to meson.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1643716800">- Add 107.patch: Fix build with meson 0.61.0 and newer.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1647950400">- Update to version 1.26.0:
  + Improve error messages and error dialogs.
  + Improve Wi-Fi security combo error handling.
  + Stop providing WEP by default.
  + Replace the lock icon for WEP networks with an exclamation
    mark.
  + Fix meson 0.61 issues.
  + Make the tooltip of the status icon available for
    screen readers.
  + Fix OWE wireless security option not showed
    on "Connect to a Hidden Network" dialog.
  + Fix OWE wireless security option not being saved
    when chosen from nm-connection-editor.
  + Move 802.1 dialog margins for the inner vbox.
  + Align labels for Ethernet dialog.
  + Move all Wi-FI entries to a submenu.
  + Fix the VPN plugins dialog margins.
  + Add a scrolled window for the VPN page.
  + Internal improvements.
  + Update translations.
- Drop disabled nm-applet-private-connection.patch: We have not had
  this patch enabled for 6 months, and so far no bugs filed. Debian
  had a similar patch, and they too have dropped it, so it seems to
  no longer be needed.
- Drop 107.patch: Fixed upstream.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1654689600">- Update to version 1.28.0:
  + Use correct font size for headings in order to make lives of
    HiDPI a little less miserable.
  + Updated translations.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1667908800">- Update to version 1.30.0:
  + wifi: change description for wpa-psk to include also WPA3.
  + editor: remove unused fields from wifi page.
  + applet: replace libnotify with GNotification.
  + gschema: bring back org.gnome.nm-applet schema.
  + Updated translations.
- Drop pkgconfig(libnotify) BuildRequires: no longer needed.
- Rebase feature-app-indicator-desktop-file.patch.
- Conflict with libnma0 &lt; 1.10.4: the glib schema was upstream
  wrongly moved to libnma, even though only a part of it was
  supposed to be there. libnm 1.10.4 fixes this situation.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1670328000">- Add meson-0.61-build-fix.patch to fix the build on meson &gt;= 0.61
  (jsc#PED-2644, glgo#GNOME/network-manager-applet!107)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681646400">- Update to version 1.32.0:
  + Allow using MTU larger than 10000 octets.
  + Prefer using AppIndicator outside X11.
  + Added support for importing WireGuard profiles from wg-quick
    files.
  + Updated translations.
- Drop meson-0.61-build-fix.patch: fixed upstream.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696420800">- Update to version 1.34.0:
  + Fix crash when importing WireGuard connections.
  + Fix ineffective "Don't show message again" button in
    notifications.
  + Drop build dependency on gudev.
  + Add setting to suppress broadband unlock prompt.
  + Replace occurrences of "master", "slave" and "blacklist".
  + Updated translations.
- Drop long disabled polkit-devel BuildRequires, patch it was
  needed for is dropped.
- Drop pkgconfig(gudev-1.0) BuildRequires: No longer needed
  following upstream changes.
- Rebase feature-app-indicator-desktop-file.patch with quilt.
- Pass sysconfdir=%{_distconfdir} to meson setup, move to UsrEtc.
- Pass b_lto=true to meson setup, use link time optimization.
- Add fdupes BuildRequires and macro, remove duplicate files.
- Move translations to NetworkManager-connection-editor-lang,
  replace the NetworkManager-connection-editor Recommends with a
  hard Requires. Also add Obsoletes and Provides to ease updates.
  The reason for moving the translations are as follows: One can
  install NetworkManager-connection-editor without needing
  NetworkManager-applet, so in order to make the translations for
  NetworkManager-connection-editor installable without pulling the
  dependencies of NetworkManager-applet.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1697630400">- Support build environments like SLE 15 SP5 and Leap 15.5 which
  had %{_distconfdir) not defined yet.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %autosetup instead of %setup/%patch.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1705665600">- Update to version 1.36.0:
  + Support WiFi's cloned-mac "stable-ssid".
  + Update translations.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1715947200">- Swicth to ayatana-appindicator: Replace
  pkgconfig(appindicator3-0.1) BuildRequires with
  pkgconfig(ayatana-appindicator3-0.1). The legacy appindicator has
  been unmaintained for a while already.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1732104000">- Make pkgconfig(ayatana-appindicator3-0.1) BuildRequires
  conditional for ppc64le, as it is not available there.</changelog>
</package>
<package pkgid="b9159ed24e35c578e60070ec3b02b4861223d3ace6aacf967546ba168653994e59723abd88190c5c4a2ca789685fb6d23dcbcbd10f95ec4ff5111a961d42a271" name="NetworkManager-applet-debuginfo" arch="x86_64">
  <version epoch="0" ver="1.36.0" rel="3.1"/>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1612353600">- Update to version 1.20.0:
  + Use wireless-security code from libnma.
  + Add flatpak build configuration.
  + Applet:
  - Hide unmanaged ethernet devices in nm-applet.
  - Fix Wi-Fi scan requests with appindicator.
  - Add stock symbolic icons.
  + Editor:
  - Fix drop down list for connection.secondaries.
  - Remove NotShowIn=GNOME.
- Drop
  NetworkManager-gnome-bsc1003069-default-agent-owned-secrets.patch:
  patch needs to be moved over to libnma.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1620993600">- Update to version 1.22.0:
  + Support activating WireGuard connections as VPNs from the
    applet.
  + Fix nm-connection-editor crash when evaluating secondary
    connections.
  + Show missing toggle in the 802.1X security page of the editor.
  + Fix updating Polkit permission in the editor.
  + Adapt peers table in the WireGuard editor page when the window
    is resized.
  + Update translations.</changelog>
  <changelog author="Frederic Crozat &lt;fcrozat@suse.com&gt;" date="1628769600">- Replaces Requires nma-data with a Conflicts on older version,
  to please installchecker.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1629201600">- Update to version 1.24.0:
  + If Polkit permissions allow it, create system connections
    (instead of user-restricted ones) when clicking on a Wi-Fi
    network in the applet.
  + Fix display of blurry applet icon.
  + Use the "port" word for dependend devices and profiles in the
    editor.
  + Support storing and retrieving WireGuard preshared-key
    into/from a keyring.
  + Update translations.</changelog>
  <changelog author="Stanislav Brabec &lt;sbrabec@suse.com&gt;" date="1631620800">- Remove obsolete translation-update-upstream support
  (jsc#SLE-21105).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1636027200">- Stop passing no longer used nor recognized options
  introspection=true and libnm_gtk=false to meson.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1643716800">- Add 107.patch: Fix build with meson 0.61.0 and newer.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1647950400">- Update to version 1.26.0:
  + Improve error messages and error dialogs.
  + Improve Wi-Fi security combo error handling.
  + Stop providing WEP by default.
  + Replace the lock icon for WEP networks with an exclamation
    mark.
  + Fix meson 0.61 issues.
  + Make the tooltip of the status icon available for
    screen readers.
  + Fix OWE wireless security option not showed
    on "Connect to a Hidden Network" dialog.
  + Fix OWE wireless security option not being saved
    when chosen from nm-connection-editor.
  + Move 802.1 dialog margins for the inner vbox.
  + Align labels for Ethernet dialog.
  + Move all Wi-FI entries to a submenu.
  + Fix the VPN plugins dialog margins.
  + Add a scrolled window for the VPN page.
  + Internal improvements.
  + Update translations.
- Drop disabled nm-applet-private-connection.patch: We have not had
  this patch enabled for 6 months, and so far no bugs filed. Debian
  had a similar patch, and they too have dropped it, so it seems to
  no longer be needed.
- Drop 107.patch: Fixed upstream.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1654689600">- Update to version 1.28.0:
  + Use correct font size for headings in order to make lives of
    HiDPI a little less miserable.
  + Updated translations.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1667908800">- Update to version 1.30.0:
  + wifi: change description for wpa-psk to include also WPA3.
  + editor: remove unused fields from wifi page.
  + applet: replace libnotify with GNotification.
  + gschema: bring back org.gnome.nm-applet schema.
  + Updated translations.
- Drop pkgconfig(libnotify) BuildRequires: no longer needed.
- Rebase feature-app-indicator-desktop-file.patch.
- Conflict with libnma0 &lt; 1.10.4: the glib schema was upstream
  wrongly moved to libnma, even though only a part of it was
  supposed to be there. libnm 1.10.4 fixes this situation.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1670328000">- Add meson-0.61-build-fix.patch to fix the build on meson &gt;= 0.61
  (jsc#PED-2644, glgo#GNOME/network-manager-applet!107)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681646400">- Update to version 1.32.0:
  + Allow using MTU larger than 10000 octets.
  + Prefer using AppIndicator outside X11.
  + Added support for importing WireGuard profiles from wg-quick
    files.
  + Updated translations.
- Drop meson-0.61-build-fix.patch: fixed upstream.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696420800">- Update to version 1.34.0:
  + Fix crash when importing WireGuard connections.
  + Fix ineffective "Don't show message again" button in
    notifications.
  + Drop build dependency on gudev.
  + Add setting to suppress broadband unlock prompt.
  + Replace occurrences of "master", "slave" and "blacklist".
  + Updated translations.
- Drop long disabled polkit-devel BuildRequires, patch it was
  needed for is dropped.
- Drop pkgconfig(gudev-1.0) BuildRequires: No longer needed
  following upstream changes.
- Rebase feature-app-indicator-desktop-file.patch with quilt.
- Pass sysconfdir=%{_distconfdir} to meson setup, move to UsrEtc.
- Pass b_lto=true to meson setup, use link time optimization.
- Add fdupes BuildRequires and macro, remove duplicate files.
- Move translations to NetworkManager-connection-editor-lang,
  replace the NetworkManager-connection-editor Recommends with a
  hard Requires. Also add Obsoletes and Provides to ease updates.
  The reason for moving the translations are as follows: One can
  install NetworkManager-connection-editor without needing
  NetworkManager-applet, so in order to make the translations for
  NetworkManager-connection-editor installable without pulling the
  dependencies of NetworkManager-applet.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1697630400">- Support build environments like SLE 15 SP5 and Leap 15.5 which
  had %{_distconfdir) not defined yet.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %autosetup instead of %setup/%patch.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1705665600">- Update to version 1.36.0:
  + Support WiFi's cloned-mac "stable-ssid".
  + Update translations.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1715947200">- Swicth to ayatana-appindicator: Replace
  pkgconfig(appindicator3-0.1) BuildRequires with
  pkgconfig(ayatana-appindicator3-0.1). The legacy appindicator has
  been unmaintained for a while already.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1732104000">- Make pkgconfig(ayatana-appindicator3-0.1) BuildRequires
  conditional for ppc64le, as it is not available there.</changelog>
</package>
<package pkgid="efee69f641ed7c8ba0a23cb0287a2413c0411235b5765d1d2b84a7db6bd851edb45e74431d58a689b03cd3c5c28a7393579a5f89b16c63d2127fde919c188e95" name="NetworkManager-applet-debugsource" arch="x86_64">
  <version epoch="0" ver="1.36.0" rel="3.1"/>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1612353600">- Update to version 1.20.0:
  + Use wireless-security code from libnma.
  + Add flatpak build configuration.
  + Applet:
  - Hide unmanaged ethernet devices in nm-applet.
  - Fix Wi-Fi scan requests with appindicator.
  - Add stock symbolic icons.
  + Editor:
  - Fix drop down list for connection.secondaries.
  - Remove NotShowIn=GNOME.
- Drop
  NetworkManager-gnome-bsc1003069-default-agent-owned-secrets.patch:
  patch needs to be moved over to libnma.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1620993600">- Update to version 1.22.0:
  + Support activating WireGuard connections as VPNs from the
    applet.
  + Fix nm-connection-editor crash when evaluating secondary
    connections.
  + Show missing toggle in the 802.1X security page of the editor.
  + Fix updating Polkit permission in the editor.
  + Adapt peers table in the WireGuard editor page when the window
    is resized.
  + Update translations.</changelog>
  <changelog author="Frederic Crozat &lt;fcrozat@suse.com&gt;" date="1628769600">- Replaces Requires nma-data with a Conflicts on older version,
  to please installchecker.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1629201600">- Update to version 1.24.0:
  + If Polkit permissions allow it, create system connections
    (instead of user-restricted ones) when clicking on a Wi-Fi
    network in the applet.
  + Fix display of blurry applet icon.
  + Use the "port" word for dependend devices and profiles in the
    editor.
  + Support storing and retrieving WireGuard preshared-key
    into/from a keyring.
  + Update translations.</changelog>
  <changelog author="Stanislav Brabec &lt;sbrabec@suse.com&gt;" date="1631620800">- Remove obsolete translation-update-upstream support
  (jsc#SLE-21105).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1636027200">- Stop passing no longer used nor recognized options
  introspection=true and libnm_gtk=false to meson.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1643716800">- Add 107.patch: Fix build with meson 0.61.0 and newer.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1647950400">- Update to version 1.26.0:
  + Improve error messages and error dialogs.
  + Improve Wi-Fi security combo error handling.
  + Stop providing WEP by default.
  + Replace the lock icon for WEP networks with an exclamation
    mark.
  + Fix meson 0.61 issues.
  + Make the tooltip of the status icon available for
    screen readers.
  + Fix OWE wireless security option not showed
    on "Connect to a Hidden Network" dialog.
  + Fix OWE wireless security option not being saved
    when chosen from nm-connection-editor.
  + Move 802.1 dialog margins for the inner vbox.
  + Align labels for Ethernet dialog.
  + Move all Wi-FI entries to a submenu.
  + Fix the VPN plugins dialog margins.
  + Add a scrolled window for the VPN page.
  + Internal improvements.
  + Update translations.
- Drop disabled nm-applet-private-connection.patch: We have not had
  this patch enabled for 6 months, and so far no bugs filed. Debian
  had a similar patch, and they too have dropped it, so it seems to
  no longer be needed.
- Drop 107.patch: Fixed upstream.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1654689600">- Update to version 1.28.0:
  + Use correct font size for headings in order to make lives of
    HiDPI a little less miserable.
  + Updated translations.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1667908800">- Update to version 1.30.0:
  + wifi: change description for wpa-psk to include also WPA3.
  + editor: remove unused fields from wifi page.
  + applet: replace libnotify with GNotification.
  + gschema: bring back org.gnome.nm-applet schema.
  + Updated translations.
- Drop pkgconfig(libnotify) BuildRequires: no longer needed.
- Rebase feature-app-indicator-desktop-file.patch.
- Conflict with libnma0 &lt; 1.10.4: the glib schema was upstream
  wrongly moved to libnma, even though only a part of it was
  supposed to be there. libnm 1.10.4 fixes this situation.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1670328000">- Add meson-0.61-build-fix.patch to fix the build on meson &gt;= 0.61
  (jsc#PED-2644, glgo#GNOME/network-manager-applet!107)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681646400">- Update to version 1.32.0:
  + Allow using MTU larger than 10000 octets.
  + Prefer using AppIndicator outside X11.
  + Added support for importing WireGuard profiles from wg-quick
    files.
  + Updated translations.
- Drop meson-0.61-build-fix.patch: fixed upstream.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696420800">- Update to version 1.34.0:
  + Fix crash when importing WireGuard connections.
  + Fix ineffective "Don't show message again" button in
    notifications.
  + Drop build dependency on gudev.
  + Add setting to suppress broadband unlock prompt.
  + Replace occurrences of "master", "slave" and "blacklist".
  + Updated translations.
- Drop long disabled polkit-devel BuildRequires, patch it was
  needed for is dropped.
- Drop pkgconfig(gudev-1.0) BuildRequires: No longer needed
  following upstream changes.
- Rebase feature-app-indicator-desktop-file.patch with quilt.
- Pass sysconfdir=%{_distconfdir} to meson setup, move to UsrEtc.
- Pass b_lto=true to meson setup, use link time optimization.
- Add fdupes BuildRequires and macro, remove duplicate files.
- Move translations to NetworkManager-connection-editor-lang,
  replace the NetworkManager-connection-editor Recommends with a
  hard Requires. Also add Obsoletes and Provides to ease updates.
  The reason for moving the translations are as follows: One can
  install NetworkManager-connection-editor without needing
  NetworkManager-applet, so in order to make the translations for
  NetworkManager-connection-editor installable without pulling the
  dependencies of NetworkManager-applet.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1697630400">- Support build environments like SLE 15 SP5 and Leap 15.5 which
  had %{_distconfdir) not defined yet.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %autosetup instead of %setup/%patch.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1705665600">- Update to version 1.36.0:
  + Support WiFi's cloned-mac "stable-ssid".
  + Update translations.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1715947200">- Swicth to ayatana-appindicator: Replace
  pkgconfig(appindicator3-0.1) BuildRequires with
  pkgconfig(ayatana-appindicator3-0.1). The legacy appindicator has
  been unmaintained for a while already.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1732104000">- Make pkgconfig(ayatana-appindicator3-0.1) BuildRequires
  conditional for ppc64le, as it is not available there.</changelog>
</package>
<package pkgid="fa38fb3ba9ba89ae9c414501c3a1cb94ea74ea0197231bca60d406bf0ef72d0c25bdad09a89d1e998f70fd995f288a5615dc7cf6268f6b71969dbad216dac556" name="NetworkManager-bluetooth" arch="i586">
  <version epoch="0" ver="1.48.10" rel="1.0.4.1.sr20240803"/>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678104000">- Changes from version 1.38.6 (bsc#1208631):
  + Fix honoring DNS priority.
  + Decline DHCPv6 lease when DAD fails.
  + Various bugfixes.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1724328000">- Add NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  device: don't enforce IP cleanup on deactivating state
  (bsc#1228154, glfd#NetworkManager/NetworkManager!2016).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1724673600">- Update to version 1.48.10:
  + nmcli/edit: fix memory leak in extract_setting_and_property
  + autotools: fix another filename that was renamed
  + gitlab: fix helper scripts to support DNF5
  + CI: update the imported templates_sha
  + autotools: fix filename that was renamed
  + format: run nm-code-format
  + policy: retry hostname resolution when it fails
  + platform: add small backoff time before resync
  + bridge: reapply port VLANs only when necessary
  + platform: add nmp_utils_bridge_normalized_vlans_equal()
  + platform: support reading bridge VLANs
  + device: support reapplying bridge-port VLANs
  + bridge: change the signature for
    nm_platform_link_set_bridge_vlans()
  + platform: add define for IFLA_BOND_SLAVE_PRIO
  + lldp: fix multiple access to argument in logging macro
  + lldp: fix crash dereferencing NULL pointer during debug logging
  + policy: unblock the autoconnect for children when parent is
    available</changelog>
</package>
<package pkgid="3f2b8058f7e0fbd00f2e9368b7d9c0a643d5db7f95b7f6fa309582c659539691c70f34fe780612032118a4198e7c7ae1e686569780805c46f3c72f2107f2a14b" name="NetworkManager-bluetooth" arch="x86_64">
  <version epoch="0" ver="1.48.10" rel="1.0.4.1.sr20240803"/>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678104000">- Changes from version 1.38.6 (bsc#1208631):
  + Fix honoring DNS priority.
  + Decline DHCPv6 lease when DAD fails.
  + Various bugfixes.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1724328000">- Add NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  device: don't enforce IP cleanup on deactivating state
  (bsc#1228154, glfd#NetworkManager/NetworkManager!2016).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1724673600">- Update to version 1.48.10:
  + nmcli/edit: fix memory leak in extract_setting_and_property
  + autotools: fix another filename that was renamed
  + gitlab: fix helper scripts to support DNF5
  + CI: update the imported templates_sha
  + autotools: fix filename that was renamed
  + format: run nm-code-format
  + policy: retry hostname resolution when it fails
  + platform: add small backoff time before resync
  + bridge: reapply port VLANs only when necessary
  + platform: add nmp_utils_bridge_normalized_vlans_equal()
  + platform: support reading bridge VLANs
  + device: support reapplying bridge-port VLANs
  + bridge: change the signature for
    nm_platform_link_set_bridge_vlans()
  + platform: add define for IFLA_BOND_SLAVE_PRIO
  + lldp: fix multiple access to argument in logging macro
  + lldp: fix crash dereferencing NULL pointer during debug logging
  + policy: unblock the autoconnect for children when parent is
    available</changelog>
</package>
<package pkgid="cfde0f093882cdd5b23253ff3d527672e31481653ea25239bfd707e706b36e3f3f954ba2d9677652b3b51589763bf6ef1b7664e5a827c6ad153112e8754dcff4" name="NetworkManager-bluetooth" arch="i586">
  <version epoch="0" ver="1.48.10" rel="1.1"/>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678104000">- Changes from version 1.38.6 (bsc#1208631):
  + Fix honoring DNS priority.
  + Decline DHCPv6 lease when DAD fails.
  + Various bugfixes.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1724328000">- Add NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  device: don't enforce IP cleanup on deactivating state
  (bsc#1228154, glfd#NetworkManager/NetworkManager!2016).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1724673600">- Update to version 1.48.10:
  + nmcli/edit: fix memory leak in extract_setting_and_property
  + autotools: fix another filename that was renamed
  + gitlab: fix helper scripts to support DNF5
  + CI: update the imported templates_sha
  + autotools: fix filename that was renamed
  + format: run nm-code-format
  + policy: retry hostname resolution when it fails
  + platform: add small backoff time before resync
  + bridge: reapply port VLANs only when necessary
  + platform: add nmp_utils_bridge_normalized_vlans_equal()
  + platform: support reading bridge VLANs
  + device: support reapplying bridge-port VLANs
  + bridge: change the signature for
    nm_platform_link_set_bridge_vlans()
  + platform: add define for IFLA_BOND_SLAVE_PRIO
  + lldp: fix multiple access to argument in logging macro
  + lldp: fix crash dereferencing NULL pointer during debug logging
  + policy: unblock the autoconnect for children when parent is
    available</changelog>
</package>
<package pkgid="e2cd03059b3b2e945dc045ba6d59d10f74836230c02fab57e9f8c98a2078a0143a9d8d11f49e859bae78c8d4cdc2fb30dc549d5c20ab473f7630d4596a33b46e" name="NetworkManager-bluetooth" arch="x86_64">
  <version epoch="0" ver="1.48.10" rel="1.1"/>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678104000">- Changes from version 1.38.6 (bsc#1208631):
  + Fix honoring DNS priority.
  + Decline DHCPv6 lease when DAD fails.
  + Various bugfixes.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1724328000">- Add NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  device: don't enforce IP cleanup on deactivating state
  (bsc#1228154, glfd#NetworkManager/NetworkManager!2016).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1724673600">- Update to version 1.48.10:
  + nmcli/edit: fix memory leak in extract_setting_and_property
  + autotools: fix another filename that was renamed
  + gitlab: fix helper scripts to support DNF5
  + CI: update the imported templates_sha
  + autotools: fix filename that was renamed
  + format: run nm-code-format
  + policy: retry hostname resolution when it fails
  + platform: add small backoff time before resync
  + bridge: reapply port VLANs only when necessary
  + platform: add nmp_utils_bridge_normalized_vlans_equal()
  + platform: support reading bridge VLANs
  + device: support reapplying bridge-port VLANs
  + bridge: change the signature for
    nm_platform_link_set_bridge_vlans()
  + platform: add define for IFLA_BOND_SLAVE_PRIO
  + lldp: fix multiple access to argument in logging macro
  + lldp: fix crash dereferencing NULL pointer during debug logging
  + policy: unblock the autoconnect for children when parent is
    available</changelog>
</package>
<package pkgid="1431e0faebe111692537ad579351c007958e4e50375cc8b161ca73f353535fbe60f98ff068cbe262a143e253b9b2069597b9a00c65f8b8b7b6ad091541f57a9a" name="NetworkManager-bluetooth" arch="i586">
  <version epoch="0" ver="1.48.8" rel="1.1"/>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1676894400">- Add 1539.patch: Fix constructing the IPv4 nameserver variable
  (boo#1208371).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1677153600">- Update to version 1.42.2:
  + Add build option to set the mobile-broadband-provider-info
    database path.
  + Add new "ipv[46].replace-local-rule" setting to control whether
    to remove the local route rule that is automatically generated.
  + Add the DHCPv6 IAID to the lease information exposed in /run
    and on D-Bus.
  + Fix assuming team connections at boot.
  + Fix race condition when setting the MAC address of an OVS
    interface.
  + Fix constructing the IPv4 name servers variable passed to
    dispatcher scripts.
  + Don't use tentative IPv6 address to resolve the system hostname
    via DNS.
  + Deprecate the "Master" property of the NMActiveConnection D-Bus
    object in favor of the new "Controller" property.
- Drop 1539.patch: Fixed upstream.
- Refresh patch with quilt:
  + 0001-Coerce-connectivity-LIMITED-to-NONE-when-device-is-d.patch</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678104000">- Changes from version 1.38.6 (bsc#1208631):
  + Fix honoring DNS priority.
  + Decline DHCPv6 lease when DAD fails.
  + Various bugfixes.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
</package>
<package pkgid="2d0e4c72c3156dde6a54c47e47edce7b8f04261887e3ef3971634ecc6c5ad460f30819686c5865b1fa8cee9111164f2547c1959b14cf60c45ce45548089a55c4" name="NetworkManager-bluetooth" arch="x86_64">
  <version epoch="0" ver="1.48.8" rel="1.1"/>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1676894400">- Add 1539.patch: Fix constructing the IPv4 nameserver variable
  (boo#1208371).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1677153600">- Update to version 1.42.2:
  + Add build option to set the mobile-broadband-provider-info
    database path.
  + Add new "ipv[46].replace-local-rule" setting to control whether
    to remove the local route rule that is automatically generated.
  + Add the DHCPv6 IAID to the lease information exposed in /run
    and on D-Bus.
  + Fix assuming team connections at boot.
  + Fix race condition when setting the MAC address of an OVS
    interface.
  + Fix constructing the IPv4 name servers variable passed to
    dispatcher scripts.
  + Don't use tentative IPv6 address to resolve the system hostname
    via DNS.
  + Deprecate the "Master" property of the NMActiveConnection D-Bus
    object in favor of the new "Controller" property.
- Drop 1539.patch: Fixed upstream.
- Refresh patch with quilt:
  + 0001-Coerce-connectivity-LIMITED-to-NONE-when-device-is-d.patch</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678104000">- Changes from version 1.38.6 (bsc#1208631):
  + Fix honoring DNS priority.
  + Decline DHCPv6 lease when DAD fails.
  + Various bugfixes.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
</package>
<package pkgid="e4602ad0cf5a717cc3c2a7c6eb2cd3d55d03d9b15dbdf74ed88e44cf1a2c09f6861d89d1059d0b95e4be7b6280afdff688f6bc8d9f61832fdc54a4d11e6ab0d5" name="NetworkManager-bluetooth" arch="i586">
  <version epoch="0" ver="1.50.0" rel="1.1"/>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1724328000">- Add NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  device: don't enforce IP cleanup on deactivating state
  (bsc#1228154, glfd#NetworkManager/NetworkManager!2016).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1724673600">- Update to version 1.48.10:
  + nmcli/edit: fix memory leak in extract_setting_and_property
  + autotools: fix another filename that was renamed
  + gitlab: fix helper scripts to support DNF5
  + CI: update the imported templates_sha
  + autotools: fix filename that was renamed
  + format: run nm-code-format
  + policy: retry hostname resolution when it fails
  + platform: add small backoff time before resync
  + bridge: reapply port VLANs only when necessary
  + platform: add nmp_utils_bridge_normalized_vlans_equal()
  + platform: support reading bridge VLANs
  + device: support reapplying bridge-port VLANs
  + bridge: change the signature for
    nm_platform_link_set_bridge_vlans()
  + platform: add define for IFLA_BOND_SLAVE_PRIO
  + lldp: fix multiple access to argument in logging macro
  + lldp: fix crash dereferencing NULL pointer during debug logging
  + policy: unblock the autoconnect for children when parent is
    available</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1727956800">- Update to version 1.50.0:
  + The support for "dhclient" has been deprecated, not built
    unless explicitely enabled, and will be removed in a future
    release. The internal DHCP client should be used instead and
    has been the default since version 1.20 (1.12 when built with
    meson).
  + Support matching a OVS system interface by MAC address.
  + Add a timeout option to connectivity checking.
  + Support configuring veth interfaces in nmtui.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.
  + Revert to using sysctl ipv6.conf.default for ip6-privacy.
  + Allow specifying a system OVS interface by MAC address.
  + ndisc: Support multiple gateways for a single network.
  + wifi: Support configuring channel-width in AP mode.
  + keyfile: Stop writing offensive terms into keyfiles.
  + Support reapplying the VLANs on bridge ports.
  + Fix crash caused by malformed LLDP package if debug log is
    enabled.
  + Retry hostname resolution when it fails.
- Drop NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  Fixed upstream.
- Rebase patches with quilt.</changelog>
</package>
<package pkgid="786191b0e27f3ca99e2476cbc200f3b37fcec284e92173a632b24c92c29b33ddb569684b4e79b6770f00f3d9c5ac501130278d91abffe45f6f4ad1c93dbd7b12" name="NetworkManager-bluetooth" arch="x86_64">
  <version epoch="0" ver="1.50.0" rel="1.1"/>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1724328000">- Add NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  device: don't enforce IP cleanup on deactivating state
  (bsc#1228154, glfd#NetworkManager/NetworkManager!2016).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1724673600">- Update to version 1.48.10:
  + nmcli/edit: fix memory leak in extract_setting_and_property
  + autotools: fix another filename that was renamed
  + gitlab: fix helper scripts to support DNF5
  + CI: update the imported templates_sha
  + autotools: fix filename that was renamed
  + format: run nm-code-format
  + policy: retry hostname resolution when it fails
  + platform: add small backoff time before resync
  + bridge: reapply port VLANs only when necessary
  + platform: add nmp_utils_bridge_normalized_vlans_equal()
  + platform: support reading bridge VLANs
  + device: support reapplying bridge-port VLANs
  + bridge: change the signature for
    nm_platform_link_set_bridge_vlans()
  + platform: add define for IFLA_BOND_SLAVE_PRIO
  + lldp: fix multiple access to argument in logging macro
  + lldp: fix crash dereferencing NULL pointer during debug logging
  + policy: unblock the autoconnect for children when parent is
    available</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1727956800">- Update to version 1.50.0:
  + The support for "dhclient" has been deprecated, not built
    unless explicitely enabled, and will be removed in a future
    release. The internal DHCP client should be used instead and
    has been the default since version 1.20 (1.12 when built with
    meson).
  + Support matching a OVS system interface by MAC address.
  + Add a timeout option to connectivity checking.
  + Support configuring veth interfaces in nmtui.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.
  + Revert to using sysctl ipv6.conf.default for ip6-privacy.
  + Allow specifying a system OVS interface by MAC address.
  + ndisc: Support multiple gateways for a single network.
  + wifi: Support configuring channel-width in AP mode.
  + keyfile: Stop writing offensive terms into keyfiles.
  + Support reapplying the VLANs on bridge ports.
  + Fix crash caused by malformed LLDP package if debug log is
    enabled.
  + Retry hostname resolution when it fails.
- Drop NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  Fixed upstream.
- Rebase patches with quilt.</changelog>
</package>
<package pkgid="1fe7791cbfbe6d28cc85e4dca4025431008b7aba60a9ca4eec1731b655aff0343f93fc111c9b139ad10da58209dce53140e6babd7d28df89a1a0d35bdfd2abde" name="NetworkManager-bluetooth-debuginfo" arch="i586">
  <version epoch="0" ver="1.48.10" rel="1.0.4.1.sr20240803"/>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678104000">- Changes from version 1.38.6 (bsc#1208631):
  + Fix honoring DNS priority.
  + Decline DHCPv6 lease when DAD fails.
  + Various bugfixes.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1724328000">- Add NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  device: don't enforce IP cleanup on deactivating state
  (bsc#1228154, glfd#NetworkManager/NetworkManager!2016).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1724673600">- Update to version 1.48.10:
  + nmcli/edit: fix memory leak in extract_setting_and_property
  + autotools: fix another filename that was renamed
  + gitlab: fix helper scripts to support DNF5
  + CI: update the imported templates_sha
  + autotools: fix filename that was renamed
  + format: run nm-code-format
  + policy: retry hostname resolution when it fails
  + platform: add small backoff time before resync
  + bridge: reapply port VLANs only when necessary
  + platform: add nmp_utils_bridge_normalized_vlans_equal()
  + platform: support reading bridge VLANs
  + device: support reapplying bridge-port VLANs
  + bridge: change the signature for
    nm_platform_link_set_bridge_vlans()
  + platform: add define for IFLA_BOND_SLAVE_PRIO
  + lldp: fix multiple access to argument in logging macro
  + lldp: fix crash dereferencing NULL pointer during debug logging
  + policy: unblock the autoconnect for children when parent is
    available</changelog>
</package>
<package pkgid="f1de55da51d3e6e81754f80ba6c73b90fda5a0e364aae333b15f11bedd7d8000223965d58d253065f334d022259b1f4e444976a987616b1d66ded306125fdc69" name="NetworkManager-bluetooth-debuginfo" arch="x86_64">
  <version epoch="0" ver="1.48.10" rel="1.0.4.1.sr20240803"/>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678104000">- Changes from version 1.38.6 (bsc#1208631):
  + Fix honoring DNS priority.
  + Decline DHCPv6 lease when DAD fails.
  + Various bugfixes.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1724328000">- Add NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  device: don't enforce IP cleanup on deactivating state
  (bsc#1228154, glfd#NetworkManager/NetworkManager!2016).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1724673600">- Update to version 1.48.10:
  + nmcli/edit: fix memory leak in extract_setting_and_property
  + autotools: fix another filename that was renamed
  + gitlab: fix helper scripts to support DNF5
  + CI: update the imported templates_sha
  + autotools: fix filename that was renamed
  + format: run nm-code-format
  + policy: retry hostname resolution when it fails
  + platform: add small backoff time before resync
  + bridge: reapply port VLANs only when necessary
  + platform: add nmp_utils_bridge_normalized_vlans_equal()
  + platform: support reading bridge VLANs
  + device: support reapplying bridge-port VLANs
  + bridge: change the signature for
    nm_platform_link_set_bridge_vlans()
  + platform: add define for IFLA_BOND_SLAVE_PRIO
  + lldp: fix multiple access to argument in logging macro
  + lldp: fix crash dereferencing NULL pointer during debug logging
  + policy: unblock the autoconnect for children when parent is
    available</changelog>
</package>
<package pkgid="d3715713caced700d0bfc3e34f9aa8c0459020fca9c3880bcbdc73cef7a94fd5910547c460df53cddc950fd564e14157d6b5723718b650fe75bcf6bbaebf1acd" name="NetworkManager-bluetooth-debuginfo" arch="i586">
  <version epoch="0" ver="1.48.10" rel="1.1"/>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678104000">- Changes from version 1.38.6 (bsc#1208631):
  + Fix honoring DNS priority.
  + Decline DHCPv6 lease when DAD fails.
  + Various bugfixes.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1724328000">- Add NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  device: don't enforce IP cleanup on deactivating state
  (bsc#1228154, glfd#NetworkManager/NetworkManager!2016).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1724673600">- Update to version 1.48.10:
  + nmcli/edit: fix memory leak in extract_setting_and_property
  + autotools: fix another filename that was renamed
  + gitlab: fix helper scripts to support DNF5
  + CI: update the imported templates_sha
  + autotools: fix filename that was renamed
  + format: run nm-code-format
  + policy: retry hostname resolution when it fails
  + platform: add small backoff time before resync
  + bridge: reapply port VLANs only when necessary
  + platform: add nmp_utils_bridge_normalized_vlans_equal()
  + platform: support reading bridge VLANs
  + device: support reapplying bridge-port VLANs
  + bridge: change the signature for
    nm_platform_link_set_bridge_vlans()
  + platform: add define for IFLA_BOND_SLAVE_PRIO
  + lldp: fix multiple access to argument in logging macro
  + lldp: fix crash dereferencing NULL pointer during debug logging
  + policy: unblock the autoconnect for children when parent is
    available</changelog>
</package>
<package pkgid="bdfe51458e5cafbd00827973d80178ec0f1e29a76e9ef96e73df9cf9262263bc34d4fdb866adb3e93fe8d2630788e8bee08801f32ba1f7c9c2f5d1a3325f53bb" name="NetworkManager-bluetooth-debuginfo" arch="x86_64">
  <version epoch="0" ver="1.48.10" rel="1.1"/>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678104000">- Changes from version 1.38.6 (bsc#1208631):
  + Fix honoring DNS priority.
  + Decline DHCPv6 lease when DAD fails.
  + Various bugfixes.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1724328000">- Add NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  device: don't enforce IP cleanup on deactivating state
  (bsc#1228154, glfd#NetworkManager/NetworkManager!2016).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1724673600">- Update to version 1.48.10:
  + nmcli/edit: fix memory leak in extract_setting_and_property
  + autotools: fix another filename that was renamed
  + gitlab: fix helper scripts to support DNF5
  + CI: update the imported templates_sha
  + autotools: fix filename that was renamed
  + format: run nm-code-format
  + policy: retry hostname resolution when it fails
  + platform: add small backoff time before resync
  + bridge: reapply port VLANs only when necessary
  + platform: add nmp_utils_bridge_normalized_vlans_equal()
  + platform: support reading bridge VLANs
  + device: support reapplying bridge-port VLANs
  + bridge: change the signature for
    nm_platform_link_set_bridge_vlans()
  + platform: add define for IFLA_BOND_SLAVE_PRIO
  + lldp: fix multiple access to argument in logging macro
  + lldp: fix crash dereferencing NULL pointer during debug logging
  + policy: unblock the autoconnect for children when parent is
    available</changelog>
</package>
<package pkgid="c04550765cb4f891ebc2524317bf9e5670b206921c97b65733f9a2b0eb4013322871b062deb9c93cda56140b36e953d43b9094c6a403837df8f0e7e64897724b" name="NetworkManager-bluetooth-debuginfo" arch="i586">
  <version epoch="0" ver="1.48.8" rel="1.1"/>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1676894400">- Add 1539.patch: Fix constructing the IPv4 nameserver variable
  (boo#1208371).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1677153600">- Update to version 1.42.2:
  + Add build option to set the mobile-broadband-provider-info
    database path.
  + Add new "ipv[46].replace-local-rule" setting to control whether
    to remove the local route rule that is automatically generated.
  + Add the DHCPv6 IAID to the lease information exposed in /run
    and on D-Bus.
  + Fix assuming team connections at boot.
  + Fix race condition when setting the MAC address of an OVS
    interface.
  + Fix constructing the IPv4 name servers variable passed to
    dispatcher scripts.
  + Don't use tentative IPv6 address to resolve the system hostname
    via DNS.
  + Deprecate the "Master" property of the NMActiveConnection D-Bus
    object in favor of the new "Controller" property.
- Drop 1539.patch: Fixed upstream.
- Refresh patch with quilt:
  + 0001-Coerce-connectivity-LIMITED-to-NONE-when-device-is-d.patch</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678104000">- Changes from version 1.38.6 (bsc#1208631):
  + Fix honoring DNS priority.
  + Decline DHCPv6 lease when DAD fails.
  + Various bugfixes.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
</package>
<package pkgid="7da5b88d641bcb600427f040119f74a13606ffb76a70b83d05641d9abcc87b9b485f9f0240ca550e0c9dac277f564df3d436ece90ae1eab37548b096a426decf" name="NetworkManager-bluetooth-debuginfo" arch="x86_64">
  <version epoch="0" ver="1.48.8" rel="1.1"/>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1676894400">- Add 1539.patch: Fix constructing the IPv4 nameserver variable
  (boo#1208371).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1677153600">- Update to version 1.42.2:
  + Add build option to set the mobile-broadband-provider-info
    database path.
  + Add new "ipv[46].replace-local-rule" setting to control whether
    to remove the local route rule that is automatically generated.
  + Add the DHCPv6 IAID to the lease information exposed in /run
    and on D-Bus.
  + Fix assuming team connections at boot.
  + Fix race condition when setting the MAC address of an OVS
    interface.
  + Fix constructing the IPv4 name servers variable passed to
    dispatcher scripts.
  + Don't use tentative IPv6 address to resolve the system hostname
    via DNS.
  + Deprecate the "Master" property of the NMActiveConnection D-Bus
    object in favor of the new "Controller" property.
- Drop 1539.patch: Fixed upstream.
- Refresh patch with quilt:
  + 0001-Coerce-connectivity-LIMITED-to-NONE-when-device-is-d.patch</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678104000">- Changes from version 1.38.6 (bsc#1208631):
  + Fix honoring DNS priority.
  + Decline DHCPv6 lease when DAD fails.
  + Various bugfixes.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
</package>
<package pkgid="acdbc7e60130ddee558ba001cb875aeb5d82b11478d76d5a236ae4822a355ef698b1d18a450f152fa47713d9576aba84e35c8199c2ff2e1759d581cec50a2077" name="NetworkManager-bluetooth-debuginfo" arch="i586">
  <version epoch="0" ver="1.50.0" rel="1.1"/>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1724328000">- Add NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  device: don't enforce IP cleanup on deactivating state
  (bsc#1228154, glfd#NetworkManager/NetworkManager!2016).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1724673600">- Update to version 1.48.10:
  + nmcli/edit: fix memory leak in extract_setting_and_property
  + autotools: fix another filename that was renamed
  + gitlab: fix helper scripts to support DNF5
  + CI: update the imported templates_sha
  + autotools: fix filename that was renamed
  + format: run nm-code-format
  + policy: retry hostname resolution when it fails
  + platform: add small backoff time before resync
  + bridge: reapply port VLANs only when necessary
  + platform: add nmp_utils_bridge_normalized_vlans_equal()
  + platform: support reading bridge VLANs
  + device: support reapplying bridge-port VLANs
  + bridge: change the signature for
    nm_platform_link_set_bridge_vlans()
  + platform: add define for IFLA_BOND_SLAVE_PRIO
  + lldp: fix multiple access to argument in logging macro
  + lldp: fix crash dereferencing NULL pointer during debug logging
  + policy: unblock the autoconnect for children when parent is
    available</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1727956800">- Update to version 1.50.0:
  + The support for "dhclient" has been deprecated, not built
    unless explicitely enabled, and will be removed in a future
    release. The internal DHCP client should be used instead and
    has been the default since version 1.20 (1.12 when built with
    meson).
  + Support matching a OVS system interface by MAC address.
  + Add a timeout option to connectivity checking.
  + Support configuring veth interfaces in nmtui.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.
  + Revert to using sysctl ipv6.conf.default for ip6-privacy.
  + Allow specifying a system OVS interface by MAC address.
  + ndisc: Support multiple gateways for a single network.
  + wifi: Support configuring channel-width in AP mode.
  + keyfile: Stop writing offensive terms into keyfiles.
  + Support reapplying the VLANs on bridge ports.
  + Fix crash caused by malformed LLDP package if debug log is
    enabled.
  + Retry hostname resolution when it fails.
- Drop NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  Fixed upstream.
- Rebase patches with quilt.</changelog>
</package>
<package pkgid="b1fb5a72848cf42f20b04c94e00522779331bf50655af0b1f24bc4e0d3c24a34b7ee7473c59301a653fc380fd1a8a163c4e96b4f3832effc6d0ce24f4a6a09ca" name="NetworkManager-bluetooth-debuginfo" arch="x86_64">
  <version epoch="0" ver="1.50.0" rel="1.1"/>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1724328000">- Add NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  device: don't enforce IP cleanup on deactivating state
  (bsc#1228154, glfd#NetworkManager/NetworkManager!2016).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1724673600">- Update to version 1.48.10:
  + nmcli/edit: fix memory leak in extract_setting_and_property
  + autotools: fix another filename that was renamed
  + gitlab: fix helper scripts to support DNF5
  + CI: update the imported templates_sha
  + autotools: fix filename that was renamed
  + format: run nm-code-format
  + policy: retry hostname resolution when it fails
  + platform: add small backoff time before resync
  + bridge: reapply port VLANs only when necessary
  + platform: add nmp_utils_bridge_normalized_vlans_equal()
  + platform: support reading bridge VLANs
  + device: support reapplying bridge-port VLANs
  + bridge: change the signature for
    nm_platform_link_set_bridge_vlans()
  + platform: add define for IFLA_BOND_SLAVE_PRIO
  + lldp: fix multiple access to argument in logging macro
  + lldp: fix crash dereferencing NULL pointer during debug logging
  + policy: unblock the autoconnect for children when parent is
    available</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1727956800">- Update to version 1.50.0:
  + The support for "dhclient" has been deprecated, not built
    unless explicitely enabled, and will be removed in a future
    release. The internal DHCP client should be used instead and
    has been the default since version 1.20 (1.12 when built with
    meson).
  + Support matching a OVS system interface by MAC address.
  + Add a timeout option to connectivity checking.
  + Support configuring veth interfaces in nmtui.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.
  + Revert to using sysctl ipv6.conf.default for ip6-privacy.
  + Allow specifying a system OVS interface by MAC address.
  + ndisc: Support multiple gateways for a single network.
  + wifi: Support configuring channel-width in AP mode.
  + keyfile: Stop writing offensive terms into keyfiles.
  + Support reapplying the VLANs on bridge ports.
  + Fix crash caused by malformed LLDP package if debug log is
    enabled.
  + Retry hostname resolution when it fails.
- Drop NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  Fixed upstream.
- Rebase patches with quilt.</changelog>
</package>
<package pkgid="27f6fcf0a8e8bae4ba7200e13753fe65f6a146ca80c6a03d5c4a3bec0883272364dec876ad9f66b0db8f4c6e6b71e0b6f5d7c3d9056510b380cff027709b2060" name="NetworkManager-branding-upstream" arch="noarch">
  <version epoch="0" ver="1.48.10" rel="1.0.4.1.sr20240803"/>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678104000">- Changes from version 1.38.6 (bsc#1208631):
  + Fix honoring DNS priority.
  + Decline DHCPv6 lease when DAD fails.
  + Various bugfixes.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1724328000">- Add NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  device: don't enforce IP cleanup on deactivating state
  (bsc#1228154, glfd#NetworkManager/NetworkManager!2016).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1724673600">- Update to version 1.48.10:
  + nmcli/edit: fix memory leak in extract_setting_and_property
  + autotools: fix another filename that was renamed
  + gitlab: fix helper scripts to support DNF5
  + CI: update the imported templates_sha
  + autotools: fix filename that was renamed
  + format: run nm-code-format
  + policy: retry hostname resolution when it fails
  + platform: add small backoff time before resync
  + bridge: reapply port VLANs only when necessary
  + platform: add nmp_utils_bridge_normalized_vlans_equal()
  + platform: support reading bridge VLANs
  + device: support reapplying bridge-port VLANs
  + bridge: change the signature for
    nm_platform_link_set_bridge_vlans()
  + platform: add define for IFLA_BOND_SLAVE_PRIO
  + lldp: fix multiple access to argument in logging macro
  + lldp: fix crash dereferencing NULL pointer during debug logging
  + policy: unblock the autoconnect for children when parent is
    available</changelog>
</package>
<package pkgid="36ef5c6c654541c3aef68b1cc65a93f512ea84600493583e74eccc41b7c0d06f8dcb1959d6e00b29f3937b17d0e6d46b6102ca6a376a37884036fd6dfc2c9258" name="NetworkManager-branding-upstream" arch="noarch">
  <version epoch="0" ver="1.48.10" rel="1.1"/>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678104000">- Changes from version 1.38.6 (bsc#1208631):
  + Fix honoring DNS priority.
  + Decline DHCPv6 lease when DAD fails.
  + Various bugfixes.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1724328000">- Add NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  device: don't enforce IP cleanup on deactivating state
  (bsc#1228154, glfd#NetworkManager/NetworkManager!2016).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1724673600">- Update to version 1.48.10:
  + nmcli/edit: fix memory leak in extract_setting_and_property
  + autotools: fix another filename that was renamed
  + gitlab: fix helper scripts to support DNF5
  + CI: update the imported templates_sha
  + autotools: fix filename that was renamed
  + format: run nm-code-format
  + policy: retry hostname resolution when it fails
  + platform: add small backoff time before resync
  + bridge: reapply port VLANs only when necessary
  + platform: add nmp_utils_bridge_normalized_vlans_equal()
  + platform: support reading bridge VLANs
  + device: support reapplying bridge-port VLANs
  + bridge: change the signature for
    nm_platform_link_set_bridge_vlans()
  + platform: add define for IFLA_BOND_SLAVE_PRIO
  + lldp: fix multiple access to argument in logging macro
  + lldp: fix crash dereferencing NULL pointer during debug logging
  + policy: unblock the autoconnect for children when parent is
    available</changelog>
</package>
<package pkgid="700784e0645aa0b29341212384ed0f8b11bd7fc8102fec349592ea4e9e6a88ba3a56954affa43bb726aa5d2e3314f589dd66dcb7e179211b809afb18ccab9f36" name="NetworkManager-branding-upstream" arch="noarch">
  <version epoch="0" ver="1.48.8" rel="1.1"/>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1676894400">- Add 1539.patch: Fix constructing the IPv4 nameserver variable
  (boo#1208371).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1677153600">- Update to version 1.42.2:
  + Add build option to set the mobile-broadband-provider-info
    database path.
  + Add new "ipv[46].replace-local-rule" setting to control whether
    to remove the local route rule that is automatically generated.
  + Add the DHCPv6 IAID to the lease information exposed in /run
    and on D-Bus.
  + Fix assuming team connections at boot.
  + Fix race condition when setting the MAC address of an OVS
    interface.
  + Fix constructing the IPv4 name servers variable passed to
    dispatcher scripts.
  + Don't use tentative IPv6 address to resolve the system hostname
    via DNS.
  + Deprecate the "Master" property of the NMActiveConnection D-Bus
    object in favor of the new "Controller" property.
- Drop 1539.patch: Fixed upstream.
- Refresh patch with quilt:
  + 0001-Coerce-connectivity-LIMITED-to-NONE-when-device-is-d.patch</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678104000">- Changes from version 1.38.6 (bsc#1208631):
  + Fix honoring DNS priority.
  + Decline DHCPv6 lease when DAD fails.
  + Various bugfixes.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
</package>
<package pkgid="7203891ef5f5997a24fb4bc4f29f8420c69acd3ab70f81bee0da2ef9bd5135bcd8287e5f630666ba8dcfa27630dbe8f0f4737d00834c08659f1a4bf5266a930e" name="NetworkManager-branding-upstream" arch="noarch">
  <version epoch="0" ver="1.50.0" rel="1.1"/>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1724328000">- Add NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  device: don't enforce IP cleanup on deactivating state
  (bsc#1228154, glfd#NetworkManager/NetworkManager!2016).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1724673600">- Update to version 1.48.10:
  + nmcli/edit: fix memory leak in extract_setting_and_property
  + autotools: fix another filename that was renamed
  + gitlab: fix helper scripts to support DNF5
  + CI: update the imported templates_sha
  + autotools: fix filename that was renamed
  + format: run nm-code-format
  + policy: retry hostname resolution when it fails
  + platform: add small backoff time before resync
  + bridge: reapply port VLANs only when necessary
  + platform: add nmp_utils_bridge_normalized_vlans_equal()
  + platform: support reading bridge VLANs
  + device: support reapplying bridge-port VLANs
  + bridge: change the signature for
    nm_platform_link_set_bridge_vlans()
  + platform: add define for IFLA_BOND_SLAVE_PRIO
  + lldp: fix multiple access to argument in logging macro
  + lldp: fix crash dereferencing NULL pointer during debug logging
  + policy: unblock the autoconnect for children when parent is
    available</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1727956800">- Update to version 1.50.0:
  + The support for "dhclient" has been deprecated, not built
    unless explicitely enabled, and will be removed in a future
    release. The internal DHCP client should be used instead and
    has been the default since version 1.20 (1.12 when built with
    meson).
  + Support matching a OVS system interface by MAC address.
  + Add a timeout option to connectivity checking.
  + Support configuring veth interfaces in nmtui.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.
  + Revert to using sysctl ipv6.conf.default for ip6-privacy.
  + Allow specifying a system OVS interface by MAC address.
  + ndisc: Support multiple gateways for a single network.
  + wifi: Support configuring channel-width in AP mode.
  + keyfile: Stop writing offensive terms into keyfiles.
  + Support reapplying the VLANs on bridge ports.
  + Fix crash caused by malformed LLDP package if debug log is
    enabled.
  + Retry hostname resolution when it fails.
- Drop NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  Fixed upstream.
- Rebase patches with quilt.</changelog>
</package>
<package pkgid="7fcf2fca331eda9902fb8c245d5c09279c2f157d8b8e7a6c50fdb8209022814b0dcddfe290d770293ac83347e377e0145b0f23cff8bede8ee025e312ee8234fd" name="NetworkManager-cloud-setup" arch="i586">
  <version epoch="0" ver="1.48.10" rel="1.0.4.1.sr20240803"/>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678104000">- Changes from version 1.38.6 (bsc#1208631):
  + Fix honoring DNS priority.
  + Decline DHCPv6 lease when DAD fails.
  + Various bugfixes.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1724328000">- Add NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  device: don't enforce IP cleanup on deactivating state
  (bsc#1228154, glfd#NetworkManager/NetworkManager!2016).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1724673600">- Update to version 1.48.10:
  + nmcli/edit: fix memory leak in extract_setting_and_property
  + autotools: fix another filename that was renamed
  + gitlab: fix helper scripts to support DNF5
  + CI: update the imported templates_sha
  + autotools: fix filename that was renamed
  + format: run nm-code-format
  + policy: retry hostname resolution when it fails
  + platform: add small backoff time before resync
  + bridge: reapply port VLANs only when necessary
  + platform: add nmp_utils_bridge_normalized_vlans_equal()
  + platform: support reading bridge VLANs
  + device: support reapplying bridge-port VLANs
  + bridge: change the signature for
    nm_platform_link_set_bridge_vlans()
  + platform: add define for IFLA_BOND_SLAVE_PRIO
  + lldp: fix multiple access to argument in logging macro
  + lldp: fix crash dereferencing NULL pointer during debug logging
  + policy: unblock the autoconnect for children when parent is
    available</changelog>
</package>
<package pkgid="475f51c5f7321f3b8d1ee6f532aab141ea335feae281c055402e555c425296c8c1a60c7bdb196c24302dcdf81721863895b28dda26112f2565e17e24d5576838" name="NetworkManager-cloud-setup" arch="x86_64">
  <version epoch="0" ver="1.48.10" rel="1.0.4.1.sr20240803"/>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678104000">- Changes from version 1.38.6 (bsc#1208631):
  + Fix honoring DNS priority.
  + Decline DHCPv6 lease when DAD fails.
  + Various bugfixes.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1724328000">- Add NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  device: don't enforce IP cleanup on deactivating state
  (bsc#1228154, glfd#NetworkManager/NetworkManager!2016).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1724673600">- Update to version 1.48.10:
  + nmcli/edit: fix memory leak in extract_setting_and_property
  + autotools: fix another filename that was renamed
  + gitlab: fix helper scripts to support DNF5
  + CI: update the imported templates_sha
  + autotools: fix filename that was renamed
  + format: run nm-code-format
  + policy: retry hostname resolution when it fails
  + platform: add small backoff time before resync
  + bridge: reapply port VLANs only when necessary
  + platform: add nmp_utils_bridge_normalized_vlans_equal()
  + platform: support reading bridge VLANs
  + device: support reapplying bridge-port VLANs
  + bridge: change the signature for
    nm_platform_link_set_bridge_vlans()
  + platform: add define for IFLA_BOND_SLAVE_PRIO
  + lldp: fix multiple access to argument in logging macro
  + lldp: fix crash dereferencing NULL pointer during debug logging
  + policy: unblock the autoconnect for children when parent is
    available</changelog>
</package>
<package pkgid="a0670296af61f4948158d81f573d851e49d8175f9a744b0cd8c97c768b11bcce0e3468831f2523a73df588718862237817de1548684fccc582705247584d0c61" name="NetworkManager-cloud-setup" arch="i586">
  <version epoch="0" ver="1.48.10" rel="1.1"/>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678104000">- Changes from version 1.38.6 (bsc#1208631):
  + Fix honoring DNS priority.
  + Decline DHCPv6 lease when DAD fails.
  + Various bugfixes.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1724328000">- Add NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  device: don't enforce IP cleanup on deactivating state
  (bsc#1228154, glfd#NetworkManager/NetworkManager!2016).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1724673600">- Update to version 1.48.10:
  + nmcli/edit: fix memory leak in extract_setting_and_property
  + autotools: fix another filename that was renamed
  + gitlab: fix helper scripts to support DNF5
  + CI: update the imported templates_sha
  + autotools: fix filename that was renamed
  + format: run nm-code-format
  + policy: retry hostname resolution when it fails
  + platform: add small backoff time before resync
  + bridge: reapply port VLANs only when necessary
  + platform: add nmp_utils_bridge_normalized_vlans_equal()
  + platform: support reading bridge VLANs
  + device: support reapplying bridge-port VLANs
  + bridge: change the signature for
    nm_platform_link_set_bridge_vlans()
  + platform: add define for IFLA_BOND_SLAVE_PRIO
  + lldp: fix multiple access to argument in logging macro
  + lldp: fix crash dereferencing NULL pointer during debug logging
  + policy: unblock the autoconnect for children when parent is
    available</changelog>
</package>
<package pkgid="a956825dc28d4440132ac7ecb240d63ae178262df04961363adae6ba57bdd0379e2a9b16dc3dcaf5e8af77e202e9c28d8d4ec796982e46d6a1a583b5ef4fc828" name="NetworkManager-cloud-setup" arch="x86_64">
  <version epoch="0" ver="1.48.10" rel="1.1"/>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678104000">- Changes from version 1.38.6 (bsc#1208631):
  + Fix honoring DNS priority.
  + Decline DHCPv6 lease when DAD fails.
  + Various bugfixes.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1724328000">- Add NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  device: don't enforce IP cleanup on deactivating state
  (bsc#1228154, glfd#NetworkManager/NetworkManager!2016).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1724673600">- Update to version 1.48.10:
  + nmcli/edit: fix memory leak in extract_setting_and_property
  + autotools: fix another filename that was renamed
  + gitlab: fix helper scripts to support DNF5
  + CI: update the imported templates_sha
  + autotools: fix filename that was renamed
  + format: run nm-code-format
  + policy: retry hostname resolution when it fails
  + platform: add small backoff time before resync
  + bridge: reapply port VLANs only when necessary
  + platform: add nmp_utils_bridge_normalized_vlans_equal()
  + platform: support reading bridge VLANs
  + device: support reapplying bridge-port VLANs
  + bridge: change the signature for
    nm_platform_link_set_bridge_vlans()
  + platform: add define for IFLA_BOND_SLAVE_PRIO
  + lldp: fix multiple access to argument in logging macro
  + lldp: fix crash dereferencing NULL pointer during debug logging
  + policy: unblock the autoconnect for children when parent is
    available</changelog>
</package>
<package pkgid="beab30b139cefc1f9cbb3c390c45ef83ac1cb61113c444bab93ab4b7d36261d4c28c3327a5f2f1e3a00d652cba2b5f18e377e5c3b4b5570c4521dd95fe99ce0e" name="NetworkManager-cloud-setup" arch="i586">
  <version epoch="0" ver="1.48.8" rel="1.1"/>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1676894400">- Add 1539.patch: Fix constructing the IPv4 nameserver variable
  (boo#1208371).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1677153600">- Update to version 1.42.2:
  + Add build option to set the mobile-broadband-provider-info
    database path.
  + Add new "ipv[46].replace-local-rule" setting to control whether
    to remove the local route rule that is automatically generated.
  + Add the DHCPv6 IAID to the lease information exposed in /run
    and on D-Bus.
  + Fix assuming team connections at boot.
  + Fix race condition when setting the MAC address of an OVS
    interface.
  + Fix constructing the IPv4 name servers variable passed to
    dispatcher scripts.
  + Don't use tentative IPv6 address to resolve the system hostname
    via DNS.
  + Deprecate the "Master" property of the NMActiveConnection D-Bus
    object in favor of the new "Controller" property.
- Drop 1539.patch: Fixed upstream.
- Refresh patch with quilt:
  + 0001-Coerce-connectivity-LIMITED-to-NONE-when-device-is-d.patch</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678104000">- Changes from version 1.38.6 (bsc#1208631):
  + Fix honoring DNS priority.
  + Decline DHCPv6 lease when DAD fails.
  + Various bugfixes.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
</package>
<package pkgid="c4caa25e24399b49d2246efc3f7b3def59b9b3aa945cdf0456dc20f02e62434c7dd13d4d76faa22ed69a124fa42e3838cc53254066283acac1d28de129687e6e" name="NetworkManager-cloud-setup" arch="x86_64">
  <version epoch="0" ver="1.48.8" rel="1.1"/>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1676894400">- Add 1539.patch: Fix constructing the IPv4 nameserver variable
  (boo#1208371).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1677153600">- Update to version 1.42.2:
  + Add build option to set the mobile-broadband-provider-info
    database path.
  + Add new "ipv[46].replace-local-rule" setting to control whether
    to remove the local route rule that is automatically generated.
  + Add the DHCPv6 IAID to the lease information exposed in /run
    and on D-Bus.
  + Fix assuming team connections at boot.
  + Fix race condition when setting the MAC address of an OVS
    interface.
  + Fix constructing the IPv4 name servers variable passed to
    dispatcher scripts.
  + Don't use tentative IPv6 address to resolve the system hostname
    via DNS.
  + Deprecate the "Master" property of the NMActiveConnection D-Bus
    object in favor of the new "Controller" property.
- Drop 1539.patch: Fixed upstream.
- Refresh patch with quilt:
  + 0001-Coerce-connectivity-LIMITED-to-NONE-when-device-is-d.patch</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678104000">- Changes from version 1.38.6 (bsc#1208631):
  + Fix honoring DNS priority.
  + Decline DHCPv6 lease when DAD fails.
  + Various bugfixes.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
</package>
<package pkgid="68619c119810aaab5386c3b8734aa5c48264eacc4cef8838b370680fac0eae2d29afca9538a5dde96dc15d6c4da9d25c7a3cb17c394a830ddb347dbd1ee16f9c" name="NetworkManager-cloud-setup" arch="i586">
  <version epoch="0" ver="1.50.0" rel="1.1"/>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1724328000">- Add NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  device: don't enforce IP cleanup on deactivating state
  (bsc#1228154, glfd#NetworkManager/NetworkManager!2016).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1724673600">- Update to version 1.48.10:
  + nmcli/edit: fix memory leak in extract_setting_and_property
  + autotools: fix another filename that was renamed
  + gitlab: fix helper scripts to support DNF5
  + CI: update the imported templates_sha
  + autotools: fix filename that was renamed
  + format: run nm-code-format
  + policy: retry hostname resolution when it fails
  + platform: add small backoff time before resync
  + bridge: reapply port VLANs only when necessary
  + platform: add nmp_utils_bridge_normalized_vlans_equal()
  + platform: support reading bridge VLANs
  + device: support reapplying bridge-port VLANs
  + bridge: change the signature for
    nm_platform_link_set_bridge_vlans()
  + platform: add define for IFLA_BOND_SLAVE_PRIO
  + lldp: fix multiple access to argument in logging macro
  + lldp: fix crash dereferencing NULL pointer during debug logging
  + policy: unblock the autoconnect for children when parent is
    available</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1727956800">- Update to version 1.50.0:
  + The support for "dhclient" has been deprecated, not built
    unless explicitely enabled, and will be removed in a future
    release. The internal DHCP client should be used instead and
    has been the default since version 1.20 (1.12 when built with
    meson).
  + Support matching a OVS system interface by MAC address.
  + Add a timeout option to connectivity checking.
  + Support configuring veth interfaces in nmtui.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.
  + Revert to using sysctl ipv6.conf.default for ip6-privacy.
  + Allow specifying a system OVS interface by MAC address.
  + ndisc: Support multiple gateways for a single network.
  + wifi: Support configuring channel-width in AP mode.
  + keyfile: Stop writing offensive terms into keyfiles.
  + Support reapplying the VLANs on bridge ports.
  + Fix crash caused by malformed LLDP package if debug log is
    enabled.
  + Retry hostname resolution when it fails.
- Drop NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  Fixed upstream.
- Rebase patches with quilt.</changelog>
</package>
<package pkgid="d2362b23be5982d91e3799776107649d046eec87994269d3de4b906777c1970ed51e683196846c2709d7280b2d1baff6352765605a18ea8753ec1752c698e773" name="NetworkManager-cloud-setup" arch="x86_64">
  <version epoch="0" ver="1.50.0" rel="1.1"/>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1724328000">- Add NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  device: don't enforce IP cleanup on deactivating state
  (bsc#1228154, glfd#NetworkManager/NetworkManager!2016).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1724673600">- Update to version 1.48.10:
  + nmcli/edit: fix memory leak in extract_setting_and_property
  + autotools: fix another filename that was renamed
  + gitlab: fix helper scripts to support DNF5
  + CI: update the imported templates_sha
  + autotools: fix filename that was renamed
  + format: run nm-code-format
  + policy: retry hostname resolution when it fails
  + platform: add small backoff time before resync
  + bridge: reapply port VLANs only when necessary
  + platform: add nmp_utils_bridge_normalized_vlans_equal()
  + platform: support reading bridge VLANs
  + device: support reapplying bridge-port VLANs
  + bridge: change the signature for
    nm_platform_link_set_bridge_vlans()
  + platform: add define for IFLA_BOND_SLAVE_PRIO
  + lldp: fix multiple access to argument in logging macro
  + lldp: fix crash dereferencing NULL pointer during debug logging
  + policy: unblock the autoconnect for children when parent is
    available</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1727956800">- Update to version 1.50.0:
  + The support for "dhclient" has been deprecated, not built
    unless explicitely enabled, and will be removed in a future
    release. The internal DHCP client should be used instead and
    has been the default since version 1.20 (1.12 when built with
    meson).
  + Support matching a OVS system interface by MAC address.
  + Add a timeout option to connectivity checking.
  + Support configuring veth interfaces in nmtui.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.
  + Revert to using sysctl ipv6.conf.default for ip6-privacy.
  + Allow specifying a system OVS interface by MAC address.
  + ndisc: Support multiple gateways for a single network.
  + wifi: Support configuring channel-width in AP mode.
  + keyfile: Stop writing offensive terms into keyfiles.
  + Support reapplying the VLANs on bridge ports.
  + Fix crash caused by malformed LLDP package if debug log is
    enabled.
  + Retry hostname resolution when it fails.
- Drop NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  Fixed upstream.
- Rebase patches with quilt.</changelog>
</package>
<package pkgid="aa57d5b77437752e53d4c08b5e9cd007f600c0e9645cd1f60ad745e0bd124da6a43902228b7faaeef999ecb46431036af2835888626b7c058dffd8d1a3e82388" name="NetworkManager-cloud-setup-debuginfo" arch="i586">
  <version epoch="0" ver="1.48.10" rel="1.0.4.1.sr20240803"/>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678104000">- Changes from version 1.38.6 (bsc#1208631):
  + Fix honoring DNS priority.
  + Decline DHCPv6 lease when DAD fails.
  + Various bugfixes.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1724328000">- Add NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  device: don't enforce IP cleanup on deactivating state
  (bsc#1228154, glfd#NetworkManager/NetworkManager!2016).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1724673600">- Update to version 1.48.10:
  + nmcli/edit: fix memory leak in extract_setting_and_property
  + autotools: fix another filename that was renamed
  + gitlab: fix helper scripts to support DNF5
  + CI: update the imported templates_sha
  + autotools: fix filename that was renamed
  + format: run nm-code-format
  + policy: retry hostname resolution when it fails
  + platform: add small backoff time before resync
  + bridge: reapply port VLANs only when necessary
  + platform: add nmp_utils_bridge_normalized_vlans_equal()
  + platform: support reading bridge VLANs
  + device: support reapplying bridge-port VLANs
  + bridge: change the signature for
    nm_platform_link_set_bridge_vlans()
  + platform: add define for IFLA_BOND_SLAVE_PRIO
  + lldp: fix multiple access to argument in logging macro
  + lldp: fix crash dereferencing NULL pointer during debug logging
  + policy: unblock the autoconnect for children when parent is
    available</changelog>
</package>
<package pkgid="0ad41085c3c6e6738e2d97d116fd5c68d4a798321c854aa5c6163885e6a55fea038ed1dd9bba13d291e5741109e10d8ae253ce6e9b609a6b3e339f85f7ae3bf3" name="NetworkManager-cloud-setup-debuginfo" arch="x86_64">
  <version epoch="0" ver="1.48.10" rel="1.0.4.1.sr20240803"/>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678104000">- Changes from version 1.38.6 (bsc#1208631):
  + Fix honoring DNS priority.
  + Decline DHCPv6 lease when DAD fails.
  + Various bugfixes.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1724328000">- Add NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  device: don't enforce IP cleanup on deactivating state
  (bsc#1228154, glfd#NetworkManager/NetworkManager!2016).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1724673600">- Update to version 1.48.10:
  + nmcli/edit: fix memory leak in extract_setting_and_property
  + autotools: fix another filename that was renamed
  + gitlab: fix helper scripts to support DNF5
  + CI: update the imported templates_sha
  + autotools: fix filename that was renamed
  + format: run nm-code-format
  + policy: retry hostname resolution when it fails
  + platform: add small backoff time before resync
  + bridge: reapply port VLANs only when necessary
  + platform: add nmp_utils_bridge_normalized_vlans_equal()
  + platform: support reading bridge VLANs
  + device: support reapplying bridge-port VLANs
  + bridge: change the signature for
    nm_platform_link_set_bridge_vlans()
  + platform: add define for IFLA_BOND_SLAVE_PRIO
  + lldp: fix multiple access to argument in logging macro
  + lldp: fix crash dereferencing NULL pointer during debug logging
  + policy: unblock the autoconnect for children when parent is
    available</changelog>
</package>
<package pkgid="0b6804d68b12ef0fbbe5455930b73ec59fc5ce677be8ff649f43d2f50229271fe1e3906e8e6721cbc3229a8d3ccafb7c11742432cf1fdc911a4bff05c943ef11" name="NetworkManager-cloud-setup-debuginfo" arch="i586">
  <version epoch="0" ver="1.48.10" rel="1.1"/>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678104000">- Changes from version 1.38.6 (bsc#1208631):
  + Fix honoring DNS priority.
  + Decline DHCPv6 lease when DAD fails.
  + Various bugfixes.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1724328000">- Add NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  device: don't enforce IP cleanup on deactivating state
  (bsc#1228154, glfd#NetworkManager/NetworkManager!2016).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1724673600">- Update to version 1.48.10:
  + nmcli/edit: fix memory leak in extract_setting_and_property
  + autotools: fix another filename that was renamed
  + gitlab: fix helper scripts to support DNF5
  + CI: update the imported templates_sha
  + autotools: fix filename that was renamed
  + format: run nm-code-format
  + policy: retry hostname resolution when it fails
  + platform: add small backoff time before resync
  + bridge: reapply port VLANs only when necessary
  + platform: add nmp_utils_bridge_normalized_vlans_equal()
  + platform: support reading bridge VLANs
  + device: support reapplying bridge-port VLANs
  + bridge: change the signature for
    nm_platform_link_set_bridge_vlans()
  + platform: add define for IFLA_BOND_SLAVE_PRIO
  + lldp: fix multiple access to argument in logging macro
  + lldp: fix crash dereferencing NULL pointer during debug logging
  + policy: unblock the autoconnect for children when parent is
    available</changelog>
</package>
<package pkgid="6a20e9c60979f50684b9497fd9f6cd8984fce219a28545973321c8ffc247d624c38926e29030fb529b63fd9cc7aeded2a0df4143360b355958b379b0af40ba15" name="NetworkManager-cloud-setup-debuginfo" arch="x86_64">
  <version epoch="0" ver="1.48.10" rel="1.1"/>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678104000">- Changes from version 1.38.6 (bsc#1208631):
  + Fix honoring DNS priority.
  + Decline DHCPv6 lease when DAD fails.
  + Various bugfixes.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1724328000">- Add NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  device: don't enforce IP cleanup on deactivating state
  (bsc#1228154, glfd#NetworkManager/NetworkManager!2016).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1724673600">- Update to version 1.48.10:
  + nmcli/edit: fix memory leak in extract_setting_and_property
  + autotools: fix another filename that was renamed
  + gitlab: fix helper scripts to support DNF5
  + CI: update the imported templates_sha
  + autotools: fix filename that was renamed
  + format: run nm-code-format
  + policy: retry hostname resolution when it fails
  + platform: add small backoff time before resync
  + bridge: reapply port VLANs only when necessary
  + platform: add nmp_utils_bridge_normalized_vlans_equal()
  + platform: support reading bridge VLANs
  + device: support reapplying bridge-port VLANs
  + bridge: change the signature for
    nm_platform_link_set_bridge_vlans()
  + platform: add define for IFLA_BOND_SLAVE_PRIO
  + lldp: fix multiple access to argument in logging macro
  + lldp: fix crash dereferencing NULL pointer during debug logging
  + policy: unblock the autoconnect for children when parent is
    available</changelog>
</package>
<package pkgid="d1ef8550b594928bbad5716be3eb9be3ec46427cad93622bf0a125fd3db30a7c888dba6863529567be1249092f1efc7af9dcda7dcc9321cbf821d5dd98e43524" name="NetworkManager-cloud-setup-debuginfo" arch="i586">
  <version epoch="0" ver="1.48.8" rel="1.1"/>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1676894400">- Add 1539.patch: Fix constructing the IPv4 nameserver variable
  (boo#1208371).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1677153600">- Update to version 1.42.2:
  + Add build option to set the mobile-broadband-provider-info
    database path.
  + Add new "ipv[46].replace-local-rule" setting to control whether
    to remove the local route rule that is automatically generated.
  + Add the DHCPv6 IAID to the lease information exposed in /run
    and on D-Bus.
  + Fix assuming team connections at boot.
  + Fix race condition when setting the MAC address of an OVS
    interface.
  + Fix constructing the IPv4 name servers variable passed to
    dispatcher scripts.
  + Don't use tentative IPv6 address to resolve the system hostname
    via DNS.
  + Deprecate the "Master" property of the NMActiveConnection D-Bus
    object in favor of the new "Controller" property.
- Drop 1539.patch: Fixed upstream.
- Refresh patch with quilt:
  + 0001-Coerce-connectivity-LIMITED-to-NONE-when-device-is-d.patch</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678104000">- Changes from version 1.38.6 (bsc#1208631):
  + Fix honoring DNS priority.
  + Decline DHCPv6 lease when DAD fails.
  + Various bugfixes.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
</package>
<package pkgid="adef876c613caf6bc550309a3473feb4b0856ca81cc83238f1b2850d3f9c05ec91237e471f9d5d7dee1fbee8f54a13a6489d7ea156b1dc9b21a16ed6bc628e6e" name="NetworkManager-cloud-setup-debuginfo" arch="x86_64">
  <version epoch="0" ver="1.48.8" rel="1.1"/>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1676894400">- Add 1539.patch: Fix constructing the IPv4 nameserver variable
  (boo#1208371).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1677153600">- Update to version 1.42.2:
  + Add build option to set the mobile-broadband-provider-info
    database path.
  + Add new "ipv[46].replace-local-rule" setting to control whether
    to remove the local route rule that is automatically generated.
  + Add the DHCPv6 IAID to the lease information exposed in /run
    and on D-Bus.
  + Fix assuming team connections at boot.
  + Fix race condition when setting the MAC address of an OVS
    interface.
  + Fix constructing the IPv4 name servers variable passed to
    dispatcher scripts.
  + Don't use tentative IPv6 address to resolve the system hostname
    via DNS.
  + Deprecate the "Master" property of the NMActiveConnection D-Bus
    object in favor of the new "Controller" property.
- Drop 1539.patch: Fixed upstream.
- Refresh patch with quilt:
  + 0001-Coerce-connectivity-LIMITED-to-NONE-when-device-is-d.patch</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678104000">- Changes from version 1.38.6 (bsc#1208631):
  + Fix honoring DNS priority.
  + Decline DHCPv6 lease when DAD fails.
  + Various bugfixes.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
</package>
<package pkgid="a3dd7c219e1df0bf08af66f131eb1751b3488a3dfb1bb338961d80199b0eb2d40bea774fa3e2737f52ee48bca9250285cb38b6dacd24ebc028d70f4d7994da94" name="NetworkManager-cloud-setup-debuginfo" arch="i586">
  <version epoch="0" ver="1.50.0" rel="1.1"/>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1724328000">- Add NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  device: don't enforce IP cleanup on deactivating state
  (bsc#1228154, glfd#NetworkManager/NetworkManager!2016).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1724673600">- Update to version 1.48.10:
  + nmcli/edit: fix memory leak in extract_setting_and_property
  + autotools: fix another filename that was renamed
  + gitlab: fix helper scripts to support DNF5
  + CI: update the imported templates_sha
  + autotools: fix filename that was renamed
  + format: run nm-code-format
  + policy: retry hostname resolution when it fails
  + platform: add small backoff time before resync
  + bridge: reapply port VLANs only when necessary
  + platform: add nmp_utils_bridge_normalized_vlans_equal()
  + platform: support reading bridge VLANs
  + device: support reapplying bridge-port VLANs
  + bridge: change the signature for
    nm_platform_link_set_bridge_vlans()
  + platform: add define for IFLA_BOND_SLAVE_PRIO
  + lldp: fix multiple access to argument in logging macro
  + lldp: fix crash dereferencing NULL pointer during debug logging
  + policy: unblock the autoconnect for children when parent is
    available</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1727956800">- Update to version 1.50.0:
  + The support for "dhclient" has been deprecated, not built
    unless explicitely enabled, and will be removed in a future
    release. The internal DHCP client should be used instead and
    has been the default since version 1.20 (1.12 when built with
    meson).
  + Support matching a OVS system interface by MAC address.
  + Add a timeout option to connectivity checking.
  + Support configuring veth interfaces in nmtui.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.
  + Revert to using sysctl ipv6.conf.default for ip6-privacy.
  + Allow specifying a system OVS interface by MAC address.
  + ndisc: Support multiple gateways for a single network.
  + wifi: Support configuring channel-width in AP mode.
  + keyfile: Stop writing offensive terms into keyfiles.
  + Support reapplying the VLANs on bridge ports.
  + Fix crash caused by malformed LLDP package if debug log is
    enabled.
  + Retry hostname resolution when it fails.
- Drop NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  Fixed upstream.
- Rebase patches with quilt.</changelog>
</package>
<package pkgid="2593502c8a0eef0108d2baf29897ebc104de82cb830443171d017ca5ce7fff0613ed476568c37a6921766742fcc2ffde9c37f0b1a3a3e3259df50b6942666b4e" name="NetworkManager-cloud-setup-debuginfo" arch="x86_64">
  <version epoch="0" ver="1.50.0" rel="1.1"/>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1724328000">- Add NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  device: don't enforce IP cleanup on deactivating state
  (bsc#1228154, glfd#NetworkManager/NetworkManager!2016).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1724673600">- Update to version 1.48.10:
  + nmcli/edit: fix memory leak in extract_setting_and_property
  + autotools: fix another filename that was renamed
  + gitlab: fix helper scripts to support DNF5
  + CI: update the imported templates_sha
  + autotools: fix filename that was renamed
  + format: run nm-code-format
  + policy: retry hostname resolution when it fails
  + platform: add small backoff time before resync
  + bridge: reapply port VLANs only when necessary
  + platform: add nmp_utils_bridge_normalized_vlans_equal()
  + platform: support reading bridge VLANs
  + device: support reapplying bridge-port VLANs
  + bridge: change the signature for
    nm_platform_link_set_bridge_vlans()
  + platform: add define for IFLA_BOND_SLAVE_PRIO
  + lldp: fix multiple access to argument in logging macro
  + lldp: fix crash dereferencing NULL pointer during debug logging
  + policy: unblock the autoconnect for children when parent is
    available</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1727956800">- Update to version 1.50.0:
  + The support for "dhclient" has been deprecated, not built
    unless explicitely enabled, and will be removed in a future
    release. The internal DHCP client should be used instead and
    has been the default since version 1.20 (1.12 when built with
    meson).
  + Support matching a OVS system interface by MAC address.
  + Add a timeout option to connectivity checking.
  + Support configuring veth interfaces in nmtui.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.
  + Revert to using sysctl ipv6.conf.default for ip6-privacy.
  + Allow specifying a system OVS interface by MAC address.
  + ndisc: Support multiple gateways for a single network.
  + wifi: Support configuring channel-width in AP mode.
  + keyfile: Stop writing offensive terms into keyfiles.
  + Support reapplying the VLANs on bridge ports.
  + Fix crash caused by malformed LLDP package if debug log is
    enabled.
  + Retry hostname resolution when it fails.
- Drop NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  Fixed upstream.
- Rebase patches with quilt.</changelog>
</package>
<package pkgid="1414a7f4a681d29cac10af656b4fba5fc7a035df0e13eefcb0a659c40726bcf15a977bb565282a123d3a9232ff53f587321a1613888f9811297c2d0423602484" name="NetworkManager-connection-editor" arch="x86_64">
  <version epoch="0" ver="1.36.0" rel="3.1"/>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1612353600">- Update to version 1.20.0:
  + Use wireless-security code from libnma.
  + Add flatpak build configuration.
  + Applet:
  - Hide unmanaged ethernet devices in nm-applet.
  - Fix Wi-Fi scan requests with appindicator.
  - Add stock symbolic icons.
  + Editor:
  - Fix drop down list for connection.secondaries.
  - Remove NotShowIn=GNOME.
- Drop
  NetworkManager-gnome-bsc1003069-default-agent-owned-secrets.patch:
  patch needs to be moved over to libnma.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1620993600">- Update to version 1.22.0:
  + Support activating WireGuard connections as VPNs from the
    applet.
  + Fix nm-connection-editor crash when evaluating secondary
    connections.
  + Show missing toggle in the 802.1X security page of the editor.
  + Fix updating Polkit permission in the editor.
  + Adapt peers table in the WireGuard editor page when the window
    is resized.
  + Update translations.</changelog>
  <changelog author="Frederic Crozat &lt;fcrozat@suse.com&gt;" date="1628769600">- Replaces Requires nma-data with a Conflicts on older version,
  to please installchecker.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1629201600">- Update to version 1.24.0:
  + If Polkit permissions allow it, create system connections
    (instead of user-restricted ones) when clicking on a Wi-Fi
    network in the applet.
  + Fix display of blurry applet icon.
  + Use the "port" word for dependend devices and profiles in the
    editor.
  + Support storing and retrieving WireGuard preshared-key
    into/from a keyring.
  + Update translations.</changelog>
  <changelog author="Stanislav Brabec &lt;sbrabec@suse.com&gt;" date="1631620800">- Remove obsolete translation-update-upstream support
  (jsc#SLE-21105).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1636027200">- Stop passing no longer used nor recognized options
  introspection=true and libnm_gtk=false to meson.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1643716800">- Add 107.patch: Fix build with meson 0.61.0 and newer.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1647950400">- Update to version 1.26.0:
  + Improve error messages and error dialogs.
  + Improve Wi-Fi security combo error handling.
  + Stop providing WEP by default.
  + Replace the lock icon for WEP networks with an exclamation
    mark.
  + Fix meson 0.61 issues.
  + Make the tooltip of the status icon available for
    screen readers.
  + Fix OWE wireless security option not showed
    on "Connect to a Hidden Network" dialog.
  + Fix OWE wireless security option not being saved
    when chosen from nm-connection-editor.
  + Move 802.1 dialog margins for the inner vbox.
  + Align labels for Ethernet dialog.
  + Move all Wi-FI entries to a submenu.
  + Fix the VPN plugins dialog margins.
  + Add a scrolled window for the VPN page.
  + Internal improvements.
  + Update translations.
- Drop disabled nm-applet-private-connection.patch: We have not had
  this patch enabled for 6 months, and so far no bugs filed. Debian
  had a similar patch, and they too have dropped it, so it seems to
  no longer be needed.
- Drop 107.patch: Fixed upstream.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1654689600">- Update to version 1.28.0:
  + Use correct font size for headings in order to make lives of
    HiDPI a little less miserable.
  + Updated translations.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1667908800">- Update to version 1.30.0:
  + wifi: change description for wpa-psk to include also WPA3.
  + editor: remove unused fields from wifi page.
  + applet: replace libnotify with GNotification.
  + gschema: bring back org.gnome.nm-applet schema.
  + Updated translations.
- Drop pkgconfig(libnotify) BuildRequires: no longer needed.
- Rebase feature-app-indicator-desktop-file.patch.
- Conflict with libnma0 &lt; 1.10.4: the glib schema was upstream
  wrongly moved to libnma, even though only a part of it was
  supposed to be there. libnm 1.10.4 fixes this situation.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1670328000">- Add meson-0.61-build-fix.patch to fix the build on meson &gt;= 0.61
  (jsc#PED-2644, glgo#GNOME/network-manager-applet!107)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681646400">- Update to version 1.32.0:
  + Allow using MTU larger than 10000 octets.
  + Prefer using AppIndicator outside X11.
  + Added support for importing WireGuard profiles from wg-quick
    files.
  + Updated translations.
- Drop meson-0.61-build-fix.patch: fixed upstream.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696420800">- Update to version 1.34.0:
  + Fix crash when importing WireGuard connections.
  + Fix ineffective "Don't show message again" button in
    notifications.
  + Drop build dependency on gudev.
  + Add setting to suppress broadband unlock prompt.
  + Replace occurrences of "master", "slave" and "blacklist".
  + Updated translations.
- Drop long disabled polkit-devel BuildRequires, patch it was
  needed for is dropped.
- Drop pkgconfig(gudev-1.0) BuildRequires: No longer needed
  following upstream changes.
- Rebase feature-app-indicator-desktop-file.patch with quilt.
- Pass sysconfdir=%{_distconfdir} to meson setup, move to UsrEtc.
- Pass b_lto=true to meson setup, use link time optimization.
- Add fdupes BuildRequires and macro, remove duplicate files.
- Move translations to NetworkManager-connection-editor-lang,
  replace the NetworkManager-connection-editor Recommends with a
  hard Requires. Also add Obsoletes and Provides to ease updates.
  The reason for moving the translations are as follows: One can
  install NetworkManager-connection-editor without needing
  NetworkManager-applet, so in order to make the translations for
  NetworkManager-connection-editor installable without pulling the
  dependencies of NetworkManager-applet.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1697630400">- Support build environments like SLE 15 SP5 and Leap 15.5 which
  had %{_distconfdir) not defined yet.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %autosetup instead of %setup/%patch.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1705665600">- Update to version 1.36.0:
  + Support WiFi's cloned-mac "stable-ssid".
  + Update translations.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1715947200">- Swicth to ayatana-appindicator: Replace
  pkgconfig(appindicator3-0.1) BuildRequires with
  pkgconfig(ayatana-appindicator3-0.1). The legacy appindicator has
  been unmaintained for a while already.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1732104000">- Make pkgconfig(ayatana-appindicator3-0.1) BuildRequires
  conditional for ppc64le, as it is not available there.</changelog>
</package>
<package pkgid="a4bf210b9e24444167ce85516de976386ad932f27a42f14ea8cf8625ab918cff28ffe4c2b60b5478b0042f78b5c52c0b390f537c858b7c027d6e82d34f4dc272" name="NetworkManager-connection-editor-debuginfo" arch="x86_64">
  <version epoch="0" ver="1.36.0" rel="3.1"/>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1612353600">- Update to version 1.20.0:
  + Use wireless-security code from libnma.
  + Add flatpak build configuration.
  + Applet:
  - Hide unmanaged ethernet devices in nm-applet.
  - Fix Wi-Fi scan requests with appindicator.
  - Add stock symbolic icons.
  + Editor:
  - Fix drop down list for connection.secondaries.
  - Remove NotShowIn=GNOME.
- Drop
  NetworkManager-gnome-bsc1003069-default-agent-owned-secrets.patch:
  patch needs to be moved over to libnma.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1620993600">- Update to version 1.22.0:
  + Support activating WireGuard connections as VPNs from the
    applet.
  + Fix nm-connection-editor crash when evaluating secondary
    connections.
  + Show missing toggle in the 802.1X security page of the editor.
  + Fix updating Polkit permission in the editor.
  + Adapt peers table in the WireGuard editor page when the window
    is resized.
  + Update translations.</changelog>
  <changelog author="Frederic Crozat &lt;fcrozat@suse.com&gt;" date="1628769600">- Replaces Requires nma-data with a Conflicts on older version,
  to please installchecker.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1629201600">- Update to version 1.24.0:
  + If Polkit permissions allow it, create system connections
    (instead of user-restricted ones) when clicking on a Wi-Fi
    network in the applet.
  + Fix display of blurry applet icon.
  + Use the "port" word for dependend devices and profiles in the
    editor.
  + Support storing and retrieving WireGuard preshared-key
    into/from a keyring.
  + Update translations.</changelog>
  <changelog author="Stanislav Brabec &lt;sbrabec@suse.com&gt;" date="1631620800">- Remove obsolete translation-update-upstream support
  (jsc#SLE-21105).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1636027200">- Stop passing no longer used nor recognized options
  introspection=true and libnm_gtk=false to meson.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1643716800">- Add 107.patch: Fix build with meson 0.61.0 and newer.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1647950400">- Update to version 1.26.0:
  + Improve error messages and error dialogs.
  + Improve Wi-Fi security combo error handling.
  + Stop providing WEP by default.
  + Replace the lock icon for WEP networks with an exclamation
    mark.
  + Fix meson 0.61 issues.
  + Make the tooltip of the status icon available for
    screen readers.
  + Fix OWE wireless security option not showed
    on "Connect to a Hidden Network" dialog.
  + Fix OWE wireless security option not being saved
    when chosen from nm-connection-editor.
  + Move 802.1 dialog margins for the inner vbox.
  + Align labels for Ethernet dialog.
  + Move all Wi-FI entries to a submenu.
  + Fix the VPN plugins dialog margins.
  + Add a scrolled window for the VPN page.
  + Internal improvements.
  + Update translations.
- Drop disabled nm-applet-private-connection.patch: We have not had
  this patch enabled for 6 months, and so far no bugs filed. Debian
  had a similar patch, and they too have dropped it, so it seems to
  no longer be needed.
- Drop 107.patch: Fixed upstream.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1654689600">- Update to version 1.28.0:
  + Use correct font size for headings in order to make lives of
    HiDPI a little less miserable.
  + Updated translations.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1667908800">- Update to version 1.30.0:
  + wifi: change description for wpa-psk to include also WPA3.
  + editor: remove unused fields from wifi page.
  + applet: replace libnotify with GNotification.
  + gschema: bring back org.gnome.nm-applet schema.
  + Updated translations.
- Drop pkgconfig(libnotify) BuildRequires: no longer needed.
- Rebase feature-app-indicator-desktop-file.patch.
- Conflict with libnma0 &lt; 1.10.4: the glib schema was upstream
  wrongly moved to libnma, even though only a part of it was
  supposed to be there. libnm 1.10.4 fixes this situation.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1670328000">- Add meson-0.61-build-fix.patch to fix the build on meson &gt;= 0.61
  (jsc#PED-2644, glgo#GNOME/network-manager-applet!107)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681646400">- Update to version 1.32.0:
  + Allow using MTU larger than 10000 octets.
  + Prefer using AppIndicator outside X11.
  + Added support for importing WireGuard profiles from wg-quick
    files.
  + Updated translations.
- Drop meson-0.61-build-fix.patch: fixed upstream.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696420800">- Update to version 1.34.0:
  + Fix crash when importing WireGuard connections.
  + Fix ineffective "Don't show message again" button in
    notifications.
  + Drop build dependency on gudev.
  + Add setting to suppress broadband unlock prompt.
  + Replace occurrences of "master", "slave" and "blacklist".
  + Updated translations.
- Drop long disabled polkit-devel BuildRequires, patch it was
  needed for is dropped.
- Drop pkgconfig(gudev-1.0) BuildRequires: No longer needed
  following upstream changes.
- Rebase feature-app-indicator-desktop-file.patch with quilt.
- Pass sysconfdir=%{_distconfdir} to meson setup, move to UsrEtc.
- Pass b_lto=true to meson setup, use link time optimization.
- Add fdupes BuildRequires and macro, remove duplicate files.
- Move translations to NetworkManager-connection-editor-lang,
  replace the NetworkManager-connection-editor Recommends with a
  hard Requires. Also add Obsoletes and Provides to ease updates.
  The reason for moving the translations are as follows: One can
  install NetworkManager-connection-editor without needing
  NetworkManager-applet, so in order to make the translations for
  NetworkManager-connection-editor installable without pulling the
  dependencies of NetworkManager-applet.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1697630400">- Support build environments like SLE 15 SP5 and Leap 15.5 which
  had %{_distconfdir) not defined yet.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %autosetup instead of %setup/%patch.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1705665600">- Update to version 1.36.0:
  + Support WiFi's cloned-mac "stable-ssid".
  + Update translations.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1715947200">- Swicth to ayatana-appindicator: Replace
  pkgconfig(appindicator3-0.1) BuildRequires with
  pkgconfig(ayatana-appindicator3-0.1). The legacy appindicator has
  been unmaintained for a while already.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1732104000">- Make pkgconfig(ayatana-appindicator3-0.1) BuildRequires
  conditional for ppc64le, as it is not available there.</changelog>
</package>
<package pkgid="fdc587376ff2c6c7a2584437527e1a06a87c3cac0efd2521bfa7ec53dafbb2c20a242f51b74258ebb8594d26822c783272c3589380278faca2bb1543fcf8150e" name="NetworkManager-connection-editor-lang" arch="noarch">
  <version epoch="0" ver="1.36.0" rel="3.1"/>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1612353600">- Update to version 1.20.0:
  + Use wireless-security code from libnma.
  + Add flatpak build configuration.
  + Applet:
  - Hide unmanaged ethernet devices in nm-applet.
  - Fix Wi-Fi scan requests with appindicator.
  - Add stock symbolic icons.
  + Editor:
  - Fix drop down list for connection.secondaries.
  - Remove NotShowIn=GNOME.
- Drop
  NetworkManager-gnome-bsc1003069-default-agent-owned-secrets.patch:
  patch needs to be moved over to libnma.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1620993600">- Update to version 1.22.0:
  + Support activating WireGuard connections as VPNs from the
    applet.
  + Fix nm-connection-editor crash when evaluating secondary
    connections.
  + Show missing toggle in the 802.1X security page of the editor.
  + Fix updating Polkit permission in the editor.
  + Adapt peers table in the WireGuard editor page when the window
    is resized.
  + Update translations.</changelog>
  <changelog author="Frederic Crozat &lt;fcrozat@suse.com&gt;" date="1628769600">- Replaces Requires nma-data with a Conflicts on older version,
  to please installchecker.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1629201600">- Update to version 1.24.0:
  + If Polkit permissions allow it, create system connections
    (instead of user-restricted ones) when clicking on a Wi-Fi
    network in the applet.
  + Fix display of blurry applet icon.
  + Use the "port" word for dependend devices and profiles in the
    editor.
  + Support storing and retrieving WireGuard preshared-key
    into/from a keyring.
  + Update translations.</changelog>
  <changelog author="Stanislav Brabec &lt;sbrabec@suse.com&gt;" date="1631620800">- Remove obsolete translation-update-upstream support
  (jsc#SLE-21105).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1636027200">- Stop passing no longer used nor recognized options
  introspection=true and libnm_gtk=false to meson.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1643716800">- Add 107.patch: Fix build with meson 0.61.0 and newer.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1647950400">- Update to version 1.26.0:
  + Improve error messages and error dialogs.
  + Improve Wi-Fi security combo error handling.
  + Stop providing WEP by default.
  + Replace the lock icon for WEP networks with an exclamation
    mark.
  + Fix meson 0.61 issues.
  + Make the tooltip of the status icon available for
    screen readers.
  + Fix OWE wireless security option not showed
    on "Connect to a Hidden Network" dialog.
  + Fix OWE wireless security option not being saved
    when chosen from nm-connection-editor.
  + Move 802.1 dialog margins for the inner vbox.
  + Align labels for Ethernet dialog.
  + Move all Wi-FI entries to a submenu.
  + Fix the VPN plugins dialog margins.
  + Add a scrolled window for the VPN page.
  + Internal improvements.
  + Update translations.
- Drop disabled nm-applet-private-connection.patch: We have not had
  this patch enabled for 6 months, and so far no bugs filed. Debian
  had a similar patch, and they too have dropped it, so it seems to
  no longer be needed.
- Drop 107.patch: Fixed upstream.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1654689600">- Update to version 1.28.0:
  + Use correct font size for headings in order to make lives of
    HiDPI a little less miserable.
  + Updated translations.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1667908800">- Update to version 1.30.0:
  + wifi: change description for wpa-psk to include also WPA3.
  + editor: remove unused fields from wifi page.
  + applet: replace libnotify with GNotification.
  + gschema: bring back org.gnome.nm-applet schema.
  + Updated translations.
- Drop pkgconfig(libnotify) BuildRequires: no longer needed.
- Rebase feature-app-indicator-desktop-file.patch.
- Conflict with libnma0 &lt; 1.10.4: the glib schema was upstream
  wrongly moved to libnma, even though only a part of it was
  supposed to be there. libnm 1.10.4 fixes this situation.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1670328000">- Add meson-0.61-build-fix.patch to fix the build on meson &gt;= 0.61
  (jsc#PED-2644, glgo#GNOME/network-manager-applet!107)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681646400">- Update to version 1.32.0:
  + Allow using MTU larger than 10000 octets.
  + Prefer using AppIndicator outside X11.
  + Added support for importing WireGuard profiles from wg-quick
    files.
  + Updated translations.
- Drop meson-0.61-build-fix.patch: fixed upstream.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696420800">- Update to version 1.34.0:
  + Fix crash when importing WireGuard connections.
  + Fix ineffective "Don't show message again" button in
    notifications.
  + Drop build dependency on gudev.
  + Add setting to suppress broadband unlock prompt.
  + Replace occurrences of "master", "slave" and "blacklist".
  + Updated translations.
- Drop long disabled polkit-devel BuildRequires, patch it was
  needed for is dropped.
- Drop pkgconfig(gudev-1.0) BuildRequires: No longer needed
  following upstream changes.
- Rebase feature-app-indicator-desktop-file.patch with quilt.
- Pass sysconfdir=%{_distconfdir} to meson setup, move to UsrEtc.
- Pass b_lto=true to meson setup, use link time optimization.
- Add fdupes BuildRequires and macro, remove duplicate files.
- Move translations to NetworkManager-connection-editor-lang,
  replace the NetworkManager-connection-editor Recommends with a
  hard Requires. Also add Obsoletes and Provides to ease updates.
  The reason for moving the translations are as follows: One can
  install NetworkManager-connection-editor without needing
  NetworkManager-applet, so in order to make the translations for
  NetworkManager-connection-editor installable without pulling the
  dependencies of NetworkManager-applet.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1697630400">- Support build environments like SLE 15 SP5 and Leap 15.5 which
  had %{_distconfdir) not defined yet.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %autosetup instead of %setup/%patch.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1705665600">- Update to version 1.36.0:
  + Support WiFi's cloned-mac "stable-ssid".
  + Update translations.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1715947200">- Swicth to ayatana-appindicator: Replace
  pkgconfig(appindicator3-0.1) BuildRequires with
  pkgconfig(ayatana-appindicator3-0.1). The legacy appindicator has
  been unmaintained for a while already.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1732104000">- Make pkgconfig(ayatana-appindicator3-0.1) BuildRequires
  conditional for ppc64le, as it is not available there.</changelog>
</package>
<package pkgid="9f0ac337b4d07946c2e0f7d27ecbea2c78000cc6f9c019e4bb9d2f7ffcc7c739213f001fc25fe3ea8455e08d4bf0b6cf65626fe26a210d8a3db33c8a63e5153e" name="NetworkManager-debuginfo" arch="i586">
  <version epoch="0" ver="1.48.10" rel="1.0.4.1.sr20240803"/>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678104000">- Changes from version 1.38.6 (bsc#1208631):
  + Fix honoring DNS priority.
  + Decline DHCPv6 lease when DAD fails.
  + Various bugfixes.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1724328000">- Add NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  device: don't enforce IP cleanup on deactivating state
  (bsc#1228154, glfd#NetworkManager/NetworkManager!2016).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1724673600">- Update to version 1.48.10:
  + nmcli/edit: fix memory leak in extract_setting_and_property
  + autotools: fix another filename that was renamed
  + gitlab: fix helper scripts to support DNF5
  + CI: update the imported templates_sha
  + autotools: fix filename that was renamed
  + format: run nm-code-format
  + policy: retry hostname resolution when it fails
  + platform: add small backoff time before resync
  + bridge: reapply port VLANs only when necessary
  + platform: add nmp_utils_bridge_normalized_vlans_equal()
  + platform: support reading bridge VLANs
  + device: support reapplying bridge-port VLANs
  + bridge: change the signature for
    nm_platform_link_set_bridge_vlans()
  + platform: add define for IFLA_BOND_SLAVE_PRIO
  + lldp: fix multiple access to argument in logging macro
  + lldp: fix crash dereferencing NULL pointer during debug logging
  + policy: unblock the autoconnect for children when parent is
    available</changelog>
</package>
<package pkgid="f0d19c4226df6329ee0985f69fea26e6c6636dc81a729edd0e6705402d63a5093065f8ec5140f5d1c0ff67619cb9a2c94aa1a397ba6fa3a6603251d64fd8e4ec" name="NetworkManager-debuginfo" arch="x86_64">
  <version epoch="0" ver="1.48.10" rel="1.0.4.1.sr20240803"/>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678104000">- Changes from version 1.38.6 (bsc#1208631):
  + Fix honoring DNS priority.
  + Decline DHCPv6 lease when DAD fails.
  + Various bugfixes.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1724328000">- Add NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  device: don't enforce IP cleanup on deactivating state
  (bsc#1228154, glfd#NetworkManager/NetworkManager!2016).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1724673600">- Update to version 1.48.10:
  + nmcli/edit: fix memory leak in extract_setting_and_property
  + autotools: fix another filename that was renamed
  + gitlab: fix helper scripts to support DNF5
  + CI: update the imported templates_sha
  + autotools: fix filename that was renamed
  + format: run nm-code-format
  + policy: retry hostname resolution when it fails
  + platform: add small backoff time before resync
  + bridge: reapply port VLANs only when necessary
  + platform: add nmp_utils_bridge_normalized_vlans_equal()
  + platform: support reading bridge VLANs
  + device: support reapplying bridge-port VLANs
  + bridge: change the signature for
    nm_platform_link_set_bridge_vlans()
  + platform: add define for IFLA_BOND_SLAVE_PRIO
  + lldp: fix multiple access to argument in logging macro
  + lldp: fix crash dereferencing NULL pointer during debug logging
  + policy: unblock the autoconnect for children when parent is
    available</changelog>
</package>
<package pkgid="36eaccb8f0bd32596eca43092c57f27e1a07c17bc17c3359f9fb1ecaa84b6f1a10d59fe074e1d9d4e66117c6317aac1bcbd87f1c0ecf1fc5be84d0d8940852d6" name="NetworkManager-debuginfo" arch="i586">
  <version epoch="0" ver="1.48.10" rel="1.1"/>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678104000">- Changes from version 1.38.6 (bsc#1208631):
  + Fix honoring DNS priority.
  + Decline DHCPv6 lease when DAD fails.
  + Various bugfixes.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1724328000">- Add NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  device: don't enforce IP cleanup on deactivating state
  (bsc#1228154, glfd#NetworkManager/NetworkManager!2016).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1724673600">- Update to version 1.48.10:
  + nmcli/edit: fix memory leak in extract_setting_and_property
  + autotools: fix another filename that was renamed
  + gitlab: fix helper scripts to support DNF5
  + CI: update the imported templates_sha
  + autotools: fix filename that was renamed
  + format: run nm-code-format
  + policy: retry hostname resolution when it fails
  + platform: add small backoff time before resync
  + bridge: reapply port VLANs only when necessary
  + platform: add nmp_utils_bridge_normalized_vlans_equal()
  + platform: support reading bridge VLANs
  + device: support reapplying bridge-port VLANs
  + bridge: change the signature for
    nm_platform_link_set_bridge_vlans()
  + platform: add define for IFLA_BOND_SLAVE_PRIO
  + lldp: fix multiple access to argument in logging macro
  + lldp: fix crash dereferencing NULL pointer during debug logging
  + policy: unblock the autoconnect for children when parent is
    available</changelog>
</package>
<package pkgid="f7ae62e02a3ae557bf569061115738a7aa8842eb5206832b5837d07eb03fa314f0f821d3b90183f8905959ad316f1ff9042f12406f191f41cc83ac6706a85013" name="NetworkManager-debuginfo" arch="x86_64">
  <version epoch="0" ver="1.48.10" rel="1.1"/>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678104000">- Changes from version 1.38.6 (bsc#1208631):
  + Fix honoring DNS priority.
  + Decline DHCPv6 lease when DAD fails.
  + Various bugfixes.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1724328000">- Add NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  device: don't enforce IP cleanup on deactivating state
  (bsc#1228154, glfd#NetworkManager/NetworkManager!2016).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1724673600">- Update to version 1.48.10:
  + nmcli/edit: fix memory leak in extract_setting_and_property
  + autotools: fix another filename that was renamed
  + gitlab: fix helper scripts to support DNF5
  + CI: update the imported templates_sha
  + autotools: fix filename that was renamed
  + format: run nm-code-format
  + policy: retry hostname resolution when it fails
  + platform: add small backoff time before resync
  + bridge: reapply port VLANs only when necessary
  + platform: add nmp_utils_bridge_normalized_vlans_equal()
  + platform: support reading bridge VLANs
  + device: support reapplying bridge-port VLANs
  + bridge: change the signature for
    nm_platform_link_set_bridge_vlans()
  + platform: add define for IFLA_BOND_SLAVE_PRIO
  + lldp: fix multiple access to argument in logging macro
  + lldp: fix crash dereferencing NULL pointer during debug logging
  + policy: unblock the autoconnect for children when parent is
    available</changelog>
</package>
<package pkgid="ba4b79558acbc805c8bb2f6ef2ccadbc7beb438d028890b2c6edf4f379a097cc15f734fd8308bd5a27a3552c829327e55a2c3c336f46f735fc2a1166cfec1ab0" name="NetworkManager-debuginfo" arch="i586">
  <version epoch="0" ver="1.48.8" rel="1.1"/>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1676894400">- Add 1539.patch: Fix constructing the IPv4 nameserver variable
  (boo#1208371).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1677153600">- Update to version 1.42.2:
  + Add build option to set the mobile-broadband-provider-info
    database path.
  + Add new "ipv[46].replace-local-rule" setting to control whether
    to remove the local route rule that is automatically generated.
  + Add the DHCPv6 IAID to the lease information exposed in /run
    and on D-Bus.
  + Fix assuming team connections at boot.
  + Fix race condition when setting the MAC address of an OVS
    interface.
  + Fix constructing the IPv4 name servers variable passed to
    dispatcher scripts.
  + Don't use tentative IPv6 address to resolve the system hostname
    via DNS.
  + Deprecate the "Master" property of the NMActiveConnection D-Bus
    object in favor of the new "Controller" property.
- Drop 1539.patch: Fixed upstream.
- Refresh patch with quilt:
  + 0001-Coerce-connectivity-LIMITED-to-NONE-when-device-is-d.patch</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678104000">- Changes from version 1.38.6 (bsc#1208631):
  + Fix honoring DNS priority.
  + Decline DHCPv6 lease when DAD fails.
  + Various bugfixes.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
</package>
<package pkgid="e6d52b757f9afe84b4b1a4682611e6aa9dd7e5f7b4176c428b0f414d944e4182a0cd4e892d9377fe16c48b06abf9c4b9c2752db639517e4963b55919e727f038" name="NetworkManager-debuginfo" arch="x86_64">
  <version epoch="0" ver="1.48.8" rel="1.1"/>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1676894400">- Add 1539.patch: Fix constructing the IPv4 nameserver variable
  (boo#1208371).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1677153600">- Update to version 1.42.2:
  + Add build option to set the mobile-broadband-provider-info
    database path.
  + Add new "ipv[46].replace-local-rule" setting to control whether
    to remove the local route rule that is automatically generated.
  + Add the DHCPv6 IAID to the lease information exposed in /run
    and on D-Bus.
  + Fix assuming team connections at boot.
  + Fix race condition when setting the MAC address of an OVS
    interface.
  + Fix constructing the IPv4 name servers variable passed to
    dispatcher scripts.
  + Don't use tentative IPv6 address to resolve the system hostname
    via DNS.
  + Deprecate the "Master" property of the NMActiveConnection D-Bus
    object in favor of the new "Controller" property.
- Drop 1539.patch: Fixed upstream.
- Refresh patch with quilt:
  + 0001-Coerce-connectivity-LIMITED-to-NONE-when-device-is-d.patch</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678104000">- Changes from version 1.38.6 (bsc#1208631):
  + Fix honoring DNS priority.
  + Decline DHCPv6 lease when DAD fails.
  + Various bugfixes.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
</package>
<package pkgid="00fd4d9e7eb30703c908e7c9575f7cdcbc742ac4da42f0f5426803ce2a2ebf52fc3cc937206122470628c847a579b596a6f003b679b43011a6fb598ed792f42b" name="NetworkManager-debuginfo" arch="i586">
  <version epoch="0" ver="1.50.0" rel="1.1"/>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1724328000">- Add NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  device: don't enforce IP cleanup on deactivating state
  (bsc#1228154, glfd#NetworkManager/NetworkManager!2016).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1724673600">- Update to version 1.48.10:
  + nmcli/edit: fix memory leak in extract_setting_and_property
  + autotools: fix another filename that was renamed
  + gitlab: fix helper scripts to support DNF5
  + CI: update the imported templates_sha
  + autotools: fix filename that was renamed
  + format: run nm-code-format
  + policy: retry hostname resolution when it fails
  + platform: add small backoff time before resync
  + bridge: reapply port VLANs only when necessary
  + platform: add nmp_utils_bridge_normalized_vlans_equal()
  + platform: support reading bridge VLANs
  + device: support reapplying bridge-port VLANs
  + bridge: change the signature for
    nm_platform_link_set_bridge_vlans()
  + platform: add define for IFLA_BOND_SLAVE_PRIO
  + lldp: fix multiple access to argument in logging macro
  + lldp: fix crash dereferencing NULL pointer during debug logging
  + policy: unblock the autoconnect for children when parent is
    available</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1727956800">- Update to version 1.50.0:
  + The support for "dhclient" has been deprecated, not built
    unless explicitely enabled, and will be removed in a future
    release. The internal DHCP client should be used instead and
    has been the default since version 1.20 (1.12 when built with
    meson).
  + Support matching a OVS system interface by MAC address.
  + Add a timeout option to connectivity checking.
  + Support configuring veth interfaces in nmtui.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.
  + Revert to using sysctl ipv6.conf.default for ip6-privacy.
  + Allow specifying a system OVS interface by MAC address.
  + ndisc: Support multiple gateways for a single network.
  + wifi: Support configuring channel-width in AP mode.
  + keyfile: Stop writing offensive terms into keyfiles.
  + Support reapplying the VLANs on bridge ports.
  + Fix crash caused by malformed LLDP package if debug log is
    enabled.
  + Retry hostname resolution when it fails.
- Drop NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  Fixed upstream.
- Rebase patches with quilt.</changelog>
</package>
<package pkgid="c8fd81edba1ba88028ff8259cb61e5c1860c5d73a1b777301cbed012c2f8d6e8b49f316ee6e9004ebcf2fb0028695cd991cf15fd2448701d543e9f3afc0301b0" name="NetworkManager-debuginfo" arch="x86_64">
  <version epoch="0" ver="1.50.0" rel="1.1"/>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1724328000">- Add NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  device: don't enforce IP cleanup on deactivating state
  (bsc#1228154, glfd#NetworkManager/NetworkManager!2016).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1724673600">- Update to version 1.48.10:
  + nmcli/edit: fix memory leak in extract_setting_and_property
  + autotools: fix another filename that was renamed
  + gitlab: fix helper scripts to support DNF5
  + CI: update the imported templates_sha
  + autotools: fix filename that was renamed
  + format: run nm-code-format
  + policy: retry hostname resolution when it fails
  + platform: add small backoff time before resync
  + bridge: reapply port VLANs only when necessary
  + platform: add nmp_utils_bridge_normalized_vlans_equal()
  + platform: support reading bridge VLANs
  + device: support reapplying bridge-port VLANs
  + bridge: change the signature for
    nm_platform_link_set_bridge_vlans()
  + platform: add define for IFLA_BOND_SLAVE_PRIO
  + lldp: fix multiple access to argument in logging macro
  + lldp: fix crash dereferencing NULL pointer during debug logging
  + policy: unblock the autoconnect for children when parent is
    available</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1727956800">- Update to version 1.50.0:
  + The support for "dhclient" has been deprecated, not built
    unless explicitely enabled, and will be removed in a future
    release. The internal DHCP client should be used instead and
    has been the default since version 1.20 (1.12 when built with
    meson).
  + Support matching a OVS system interface by MAC address.
  + Add a timeout option to connectivity checking.
  + Support configuring veth interfaces in nmtui.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.
  + Revert to using sysctl ipv6.conf.default for ip6-privacy.
  + Allow specifying a system OVS interface by MAC address.
  + ndisc: Support multiple gateways for a single network.
  + wifi: Support configuring channel-width in AP mode.
  + keyfile: Stop writing offensive terms into keyfiles.
  + Support reapplying the VLANs on bridge ports.
  + Fix crash caused by malformed LLDP package if debug log is
    enabled.
  + Retry hostname resolution when it fails.
- Drop NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  Fixed upstream.
- Rebase patches with quilt.</changelog>
</package>
<package pkgid="a7c02bd36c5edaa7d3dbee10370a92cea06efc227731db075c828a520a60e638709f86d37fd5e549a90b62706532c9b87ae30aa62ec8d6cbcc813afa228668ae" name="NetworkManager-debugsource" arch="i586">
  <version epoch="0" ver="1.48.10" rel="1.0.4.1.sr20240803"/>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678104000">- Changes from version 1.38.6 (bsc#1208631):
  + Fix honoring DNS priority.
  + Decline DHCPv6 lease when DAD fails.
  + Various bugfixes.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1724328000">- Add NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  device: don't enforce IP cleanup on deactivating state
  (bsc#1228154, glfd#NetworkManager/NetworkManager!2016).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1724673600">- Update to version 1.48.10:
  + nmcli/edit: fix memory leak in extract_setting_and_property
  + autotools: fix another filename that was renamed
  + gitlab: fix helper scripts to support DNF5
  + CI: update the imported templates_sha
  + autotools: fix filename that was renamed
  + format: run nm-code-format
  + policy: retry hostname resolution when it fails
  + platform: add small backoff time before resync
  + bridge: reapply port VLANs only when necessary
  + platform: add nmp_utils_bridge_normalized_vlans_equal()
  + platform: support reading bridge VLANs
  + device: support reapplying bridge-port VLANs
  + bridge: change the signature for
    nm_platform_link_set_bridge_vlans()
  + platform: add define for IFLA_BOND_SLAVE_PRIO
  + lldp: fix multiple access to argument in logging macro
  + lldp: fix crash dereferencing NULL pointer during debug logging
  + policy: unblock the autoconnect for children when parent is
    available</changelog>
</package>
<package pkgid="724fb1dd617f1de12f515b76503d69a1920f1012d60242776f90be88deef9cd97e8cc5327fcd61d6525ca0defafe6469a2e3ee4ffe1482ee373b79de5bd7c78a" name="NetworkManager-debugsource" arch="x86_64">
  <version epoch="0" ver="1.48.10" rel="1.0.4.1.sr20240803"/>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678104000">- Changes from version 1.38.6 (bsc#1208631):
  + Fix honoring DNS priority.
  + Decline DHCPv6 lease when DAD fails.
  + Various bugfixes.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1724328000">- Add NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  device: don't enforce IP cleanup on deactivating state
  (bsc#1228154, glfd#NetworkManager/NetworkManager!2016).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1724673600">- Update to version 1.48.10:
  + nmcli/edit: fix memory leak in extract_setting_and_property
  + autotools: fix another filename that was renamed
  + gitlab: fix helper scripts to support DNF5
  + CI: update the imported templates_sha
  + autotools: fix filename that was renamed
  + format: run nm-code-format
  + policy: retry hostname resolution when it fails
  + platform: add small backoff time before resync
  + bridge: reapply port VLANs only when necessary
  + platform: add nmp_utils_bridge_normalized_vlans_equal()
  + platform: support reading bridge VLANs
  + device: support reapplying bridge-port VLANs
  + bridge: change the signature for
    nm_platform_link_set_bridge_vlans()
  + platform: add define for IFLA_BOND_SLAVE_PRIO
  + lldp: fix multiple access to argument in logging macro
  + lldp: fix crash dereferencing NULL pointer during debug logging
  + policy: unblock the autoconnect for children when parent is
    available</changelog>
</package>
<package pkgid="4f4a86b19753ccdfa473ec720f3ef7b6ed085d090dd97baea168a0f77dfd8ec4cb67c64bbeffe399da7f5ff8c57c65ac5f66d699530f43bc9123f1c52bfb159c" name="NetworkManager-debugsource" arch="i586">
  <version epoch="0" ver="1.48.10" rel="1.1"/>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678104000">- Changes from version 1.38.6 (bsc#1208631):
  + Fix honoring DNS priority.
  + Decline DHCPv6 lease when DAD fails.
  + Various bugfixes.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1724328000">- Add NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  device: don't enforce IP cleanup on deactivating state
  (bsc#1228154, glfd#NetworkManager/NetworkManager!2016).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1724673600">- Update to version 1.48.10:
  + nmcli/edit: fix memory leak in extract_setting_and_property
  + autotools: fix another filename that was renamed
  + gitlab: fix helper scripts to support DNF5
  + CI: update the imported templates_sha
  + autotools: fix filename that was renamed
  + format: run nm-code-format
  + policy: retry hostname resolution when it fails
  + platform: add small backoff time before resync
  + bridge: reapply port VLANs only when necessary
  + platform: add nmp_utils_bridge_normalized_vlans_equal()
  + platform: support reading bridge VLANs
  + device: support reapplying bridge-port VLANs
  + bridge: change the signature for
    nm_platform_link_set_bridge_vlans()
  + platform: add define for IFLA_BOND_SLAVE_PRIO
  + lldp: fix multiple access to argument in logging macro
  + lldp: fix crash dereferencing NULL pointer during debug logging
  + policy: unblock the autoconnect for children when parent is
    available</changelog>
</package>
<package pkgid="d168e81f6861aa9d80477b10a0540abf11cfdfcddfed2aed81b6801c46e527e846b730321e71d21684ceea89dc2311a398fdced42c63bc42617e62a1d8857797" name="NetworkManager-debugsource" arch="x86_64">
  <version epoch="0" ver="1.48.10" rel="1.1"/>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678104000">- Changes from version 1.38.6 (bsc#1208631):
  + Fix honoring DNS priority.
  + Decline DHCPv6 lease when DAD fails.
  + Various bugfixes.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1724328000">- Add NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  device: don't enforce IP cleanup on deactivating state
  (bsc#1228154, glfd#NetworkManager/NetworkManager!2016).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1724673600">- Update to version 1.48.10:
  + nmcli/edit: fix memory leak in extract_setting_and_property
  + autotools: fix another filename that was renamed
  + gitlab: fix helper scripts to support DNF5
  + CI: update the imported templates_sha
  + autotools: fix filename that was renamed
  + format: run nm-code-format
  + policy: retry hostname resolution when it fails
  + platform: add small backoff time before resync
  + bridge: reapply port VLANs only when necessary
  + platform: add nmp_utils_bridge_normalized_vlans_equal()
  + platform: support reading bridge VLANs
  + device: support reapplying bridge-port VLANs
  + bridge: change the signature for
    nm_platform_link_set_bridge_vlans()
  + platform: add define for IFLA_BOND_SLAVE_PRIO
  + lldp: fix multiple access to argument in logging macro
  + lldp: fix crash dereferencing NULL pointer during debug logging
  + policy: unblock the autoconnect for children when parent is
    available</changelog>
</package>
<package pkgid="e947eace05ba798e059543d6f878a7d715619a3357ab0a0eab1c8a1fd5143dca76977d08a7f2b7e1a3d622f7c1a8d3c3a702b05f5bf967fc38a09ec5a2c98985" name="NetworkManager-debugsource" arch="i586">
  <version epoch="0" ver="1.48.8" rel="1.1"/>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1676894400">- Add 1539.patch: Fix constructing the IPv4 nameserver variable
  (boo#1208371).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1677153600">- Update to version 1.42.2:
  + Add build option to set the mobile-broadband-provider-info
    database path.
  + Add new "ipv[46].replace-local-rule" setting to control whether
    to remove the local route rule that is automatically generated.
  + Add the DHCPv6 IAID to the lease information exposed in /run
    and on D-Bus.
  + Fix assuming team connections at boot.
  + Fix race condition when setting the MAC address of an OVS
    interface.
  + Fix constructing the IPv4 name servers variable passed to
    dispatcher scripts.
  + Don't use tentative IPv6 address to resolve the system hostname
    via DNS.
  + Deprecate the "Master" property of the NMActiveConnection D-Bus
    object in favor of the new "Controller" property.
- Drop 1539.patch: Fixed upstream.
- Refresh patch with quilt:
  + 0001-Coerce-connectivity-LIMITED-to-NONE-when-device-is-d.patch</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678104000">- Changes from version 1.38.6 (bsc#1208631):
  + Fix honoring DNS priority.
  + Decline DHCPv6 lease when DAD fails.
  + Various bugfixes.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
</package>
<package pkgid="eceb63b86c80440b1bd4b94b672293fccaa9c903a5de164bef2c926dec91c6d451bedc6df9417370a2db7748ff163979991775bb87bbcce75b05f0e34149d996" name="NetworkManager-debugsource" arch="x86_64">
  <version epoch="0" ver="1.48.8" rel="1.1"/>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1676894400">- Add 1539.patch: Fix constructing the IPv4 nameserver variable
  (boo#1208371).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1677153600">- Update to version 1.42.2:
  + Add build option to set the mobile-broadband-provider-info
    database path.
  + Add new "ipv[46].replace-local-rule" setting to control whether
    to remove the local route rule that is automatically generated.
  + Add the DHCPv6 IAID to the lease information exposed in /run
    and on D-Bus.
  + Fix assuming team connections at boot.
  + Fix race condition when setting the MAC address of an OVS
    interface.
  + Fix constructing the IPv4 name servers variable passed to
    dispatcher scripts.
  + Don't use tentative IPv6 address to resolve the system hostname
    via DNS.
  + Deprecate the "Master" property of the NMActiveConnection D-Bus
    object in favor of the new "Controller" property.
- Drop 1539.patch: Fixed upstream.
- Refresh patch with quilt:
  + 0001-Coerce-connectivity-LIMITED-to-NONE-when-device-is-d.patch</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678104000">- Changes from version 1.38.6 (bsc#1208631):
  + Fix honoring DNS priority.
  + Decline DHCPv6 lease when DAD fails.
  + Various bugfixes.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
</package>
<package pkgid="f71c9cdef03461ae620ac5af2b5600605f5a3a69085492fbf32673788a78befe7513be0c469d7934ff29baf91ea67af6475fd9526812450e7ad38c6ed4af325a" name="NetworkManager-debugsource" arch="i586">
  <version epoch="0" ver="1.50.0" rel="1.1"/>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1724328000">- Add NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  device: don't enforce IP cleanup on deactivating state
  (bsc#1228154, glfd#NetworkManager/NetworkManager!2016).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1724673600">- Update to version 1.48.10:
  + nmcli/edit: fix memory leak in extract_setting_and_property
  + autotools: fix another filename that was renamed
  + gitlab: fix helper scripts to support DNF5
  + CI: update the imported templates_sha
  + autotools: fix filename that was renamed
  + format: run nm-code-format
  + policy: retry hostname resolution when it fails
  + platform: add small backoff time before resync
  + bridge: reapply port VLANs only when necessary
  + platform: add nmp_utils_bridge_normalized_vlans_equal()
  + platform: support reading bridge VLANs
  + device: support reapplying bridge-port VLANs
  + bridge: change the signature for
    nm_platform_link_set_bridge_vlans()
  + platform: add define for IFLA_BOND_SLAVE_PRIO
  + lldp: fix multiple access to argument in logging macro
  + lldp: fix crash dereferencing NULL pointer during debug logging
  + policy: unblock the autoconnect for children when parent is
    available</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1727956800">- Update to version 1.50.0:
  + The support for "dhclient" has been deprecated, not built
    unless explicitely enabled, and will be removed in a future
    release. The internal DHCP client should be used instead and
    has been the default since version 1.20 (1.12 when built with
    meson).
  + Support matching a OVS system interface by MAC address.
  + Add a timeout option to connectivity checking.
  + Support configuring veth interfaces in nmtui.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.
  + Revert to using sysctl ipv6.conf.default for ip6-privacy.
  + Allow specifying a system OVS interface by MAC address.
  + ndisc: Support multiple gateways for a single network.
  + wifi: Support configuring channel-width in AP mode.
  + keyfile: Stop writing offensive terms into keyfiles.
  + Support reapplying the VLANs on bridge ports.
  + Fix crash caused by malformed LLDP package if debug log is
    enabled.
  + Retry hostname resolution when it fails.
- Drop NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  Fixed upstream.
- Rebase patches with quilt.</changelog>
</package>
<package pkgid="2c1883e3626cee90d60d14d78806de23dc286ab56babffb3eb5e72dd0fcad6cca21ab387213623330dff5465802dedcde059414ea4c46d14499d81239183d123" name="NetworkManager-debugsource" arch="x86_64">
  <version epoch="0" ver="1.50.0" rel="1.1"/>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1724328000">- Add NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  device: don't enforce IP cleanup on deactivating state
  (bsc#1228154, glfd#NetworkManager/NetworkManager!2016).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1724673600">- Update to version 1.48.10:
  + nmcli/edit: fix memory leak in extract_setting_and_property
  + autotools: fix another filename that was renamed
  + gitlab: fix helper scripts to support DNF5
  + CI: update the imported templates_sha
  + autotools: fix filename that was renamed
  + format: run nm-code-format
  + policy: retry hostname resolution when it fails
  + platform: add small backoff time before resync
  + bridge: reapply port VLANs only when necessary
  + platform: add nmp_utils_bridge_normalized_vlans_equal()
  + platform: support reading bridge VLANs
  + device: support reapplying bridge-port VLANs
  + bridge: change the signature for
    nm_platform_link_set_bridge_vlans()
  + platform: add define for IFLA_BOND_SLAVE_PRIO
  + lldp: fix multiple access to argument in logging macro
  + lldp: fix crash dereferencing NULL pointer during debug logging
  + policy: unblock the autoconnect for children when parent is
    available</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1727956800">- Update to version 1.50.0:
  + The support for "dhclient" has been deprecated, not built
    unless explicitely enabled, and will be removed in a future
    release. The internal DHCP client should be used instead and
    has been the default since version 1.20 (1.12 when built with
    meson).
  + Support matching a OVS system interface by MAC address.
  + Add a timeout option to connectivity checking.
  + Support configuring veth interfaces in nmtui.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.
  + Revert to using sysctl ipv6.conf.default for ip6-privacy.
  + Allow specifying a system OVS interface by MAC address.
  + ndisc: Support multiple gateways for a single network.
  + wifi: Support configuring channel-width in AP mode.
  + keyfile: Stop writing offensive terms into keyfiles.
  + Support reapplying the VLANs on bridge ports.
  + Fix crash caused by malformed LLDP package if debug log is
    enabled.
  + Retry hostname resolution when it fails.
- Drop NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  Fixed upstream.
- Rebase patches with quilt.</changelog>
</package>
<package pkgid="06b1b713c14b3a1442d94827d88e8d0ec6ebe8f0cd4bf1166b2db2b8724e1e9b96e78f3bca689c185a3b4c209e206bdd1dc62a77129b884dd03de8cada283323" name="NetworkManager-devel" arch="i586">
  <version epoch="0" ver="1.48.10" rel="1.0.4.1.sr20240803"/>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678104000">- Changes from version 1.38.6 (bsc#1208631):
  + Fix honoring DNS priority.
  + Decline DHCPv6 lease when DAD fails.
  + Various bugfixes.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1724328000">- Add NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  device: don't enforce IP cleanup on deactivating state
  (bsc#1228154, glfd#NetworkManager/NetworkManager!2016).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1724673600">- Update to version 1.48.10:
  + nmcli/edit: fix memory leak in extract_setting_and_property
  + autotools: fix another filename that was renamed
  + gitlab: fix helper scripts to support DNF5
  + CI: update the imported templates_sha
  + autotools: fix filename that was renamed
  + format: run nm-code-format
  + policy: retry hostname resolution when it fails
  + platform: add small backoff time before resync
  + bridge: reapply port VLANs only when necessary
  + platform: add nmp_utils_bridge_normalized_vlans_equal()
  + platform: support reading bridge VLANs
  + device: support reapplying bridge-port VLANs
  + bridge: change the signature for
    nm_platform_link_set_bridge_vlans()
  + platform: add define for IFLA_BOND_SLAVE_PRIO
  + lldp: fix multiple access to argument in logging macro
  + lldp: fix crash dereferencing NULL pointer during debug logging
  + policy: unblock the autoconnect for children when parent is
    available</changelog>
</package>
<package pkgid="93f8055ec29d9eab8fa8a3c27566d98a701f6a1484f026dc2083192f7492c0a57161be3f324d24794573f7cd825f0c13a464775aaf7f18d767411e26957b35f9" name="NetworkManager-devel" arch="x86_64">
  <version epoch="0" ver="1.48.10" rel="1.0.4.1.sr20240803"/>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678104000">- Changes from version 1.38.6 (bsc#1208631):
  + Fix honoring DNS priority.
  + Decline DHCPv6 lease when DAD fails.
  + Various bugfixes.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1724328000">- Add NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  device: don't enforce IP cleanup on deactivating state
  (bsc#1228154, glfd#NetworkManager/NetworkManager!2016).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1724673600">- Update to version 1.48.10:
  + nmcli/edit: fix memory leak in extract_setting_and_property
  + autotools: fix another filename that was renamed
  + gitlab: fix helper scripts to support DNF5
  + CI: update the imported templates_sha
  + autotools: fix filename that was renamed
  + format: run nm-code-format
  + policy: retry hostname resolution when it fails
  + platform: add small backoff time before resync
  + bridge: reapply port VLANs only when necessary
  + platform: add nmp_utils_bridge_normalized_vlans_equal()
  + platform: support reading bridge VLANs
  + device: support reapplying bridge-port VLANs
  + bridge: change the signature for
    nm_platform_link_set_bridge_vlans()
  + platform: add define for IFLA_BOND_SLAVE_PRIO
  + lldp: fix multiple access to argument in logging macro
  + lldp: fix crash dereferencing NULL pointer during debug logging
  + policy: unblock the autoconnect for children when parent is
    available</changelog>
</package>
<package pkgid="07f1db95e8828ea35e833f72f5b2dc95036130486799f380a3155ee8b70343fa68fb2d1dea36cca9805ba3efa588f490b284966b3a73ab7471847eebd9bb8c90" name="NetworkManager-devel" arch="i586">
  <version epoch="0" ver="1.48.10" rel="1.1"/>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678104000">- Changes from version 1.38.6 (bsc#1208631):
  + Fix honoring DNS priority.
  + Decline DHCPv6 lease when DAD fails.
  + Various bugfixes.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1724328000">- Add NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  device: don't enforce IP cleanup on deactivating state
  (bsc#1228154, glfd#NetworkManager/NetworkManager!2016).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1724673600">- Update to version 1.48.10:
  + nmcli/edit: fix memory leak in extract_setting_and_property
  + autotools: fix another filename that was renamed
  + gitlab: fix helper scripts to support DNF5
  + CI: update the imported templates_sha
  + autotools: fix filename that was renamed
  + format: run nm-code-format
  + policy: retry hostname resolution when it fails
  + platform: add small backoff time before resync
  + bridge: reapply port VLANs only when necessary
  + platform: add nmp_utils_bridge_normalized_vlans_equal()
  + platform: support reading bridge VLANs
  + device: support reapplying bridge-port VLANs
  + bridge: change the signature for
    nm_platform_link_set_bridge_vlans()
  + platform: add define for IFLA_BOND_SLAVE_PRIO
  + lldp: fix multiple access to argument in logging macro
  + lldp: fix crash dereferencing NULL pointer during debug logging
  + policy: unblock the autoconnect for children when parent is
    available</changelog>
</package>
<package pkgid="f082fa55ec4e057256981934f17d8787471cf3b53e4374c7f817543b1f347cb6228eb049b8462c4c6492a754f0c83946e5cc89e9fec8960908c6374108108bbd" name="NetworkManager-devel" arch="x86_64">
  <version epoch="0" ver="1.48.10" rel="1.1"/>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678104000">- Changes from version 1.38.6 (bsc#1208631):
  + Fix honoring DNS priority.
  + Decline DHCPv6 lease when DAD fails.
  + Various bugfixes.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1724328000">- Add NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  device: don't enforce IP cleanup on deactivating state
  (bsc#1228154, glfd#NetworkManager/NetworkManager!2016).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1724673600">- Update to version 1.48.10:
  + nmcli/edit: fix memory leak in extract_setting_and_property
  + autotools: fix another filename that was renamed
  + gitlab: fix helper scripts to support DNF5
  + CI: update the imported templates_sha
  + autotools: fix filename that was renamed
  + format: run nm-code-format
  + policy: retry hostname resolution when it fails
  + platform: add small backoff time before resync
  + bridge: reapply port VLANs only when necessary
  + platform: add nmp_utils_bridge_normalized_vlans_equal()
  + platform: support reading bridge VLANs
  + device: support reapplying bridge-port VLANs
  + bridge: change the signature for
    nm_platform_link_set_bridge_vlans()
  + platform: add define for IFLA_BOND_SLAVE_PRIO
  + lldp: fix multiple access to argument in logging macro
  + lldp: fix crash dereferencing NULL pointer during debug logging
  + policy: unblock the autoconnect for children when parent is
    available</changelog>
</package>
<package pkgid="fc562c7bc4c8055bb318bcb98fff6dafcd72321fb9ac0bb3445e259e3ea2ce79296cb7f0a684c043593fd34b6da81a543d3992ffddd4d0e531fb463c9f577a1b" name="NetworkManager-devel" arch="i586">
  <version epoch="0" ver="1.48.8" rel="1.1"/>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1676894400">- Add 1539.patch: Fix constructing the IPv4 nameserver variable
  (boo#1208371).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1677153600">- Update to version 1.42.2:
  + Add build option to set the mobile-broadband-provider-info
    database path.
  + Add new "ipv[46].replace-local-rule" setting to control whether
    to remove the local route rule that is automatically generated.
  + Add the DHCPv6 IAID to the lease information exposed in /run
    and on D-Bus.
  + Fix assuming team connections at boot.
  + Fix race condition when setting the MAC address of an OVS
    interface.
  + Fix constructing the IPv4 name servers variable passed to
    dispatcher scripts.
  + Don't use tentative IPv6 address to resolve the system hostname
    via DNS.
  + Deprecate the "Master" property of the NMActiveConnection D-Bus
    object in favor of the new "Controller" property.
- Drop 1539.patch: Fixed upstream.
- Refresh patch with quilt:
  + 0001-Coerce-connectivity-LIMITED-to-NONE-when-device-is-d.patch</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678104000">- Changes from version 1.38.6 (bsc#1208631):
  + Fix honoring DNS priority.
  + Decline DHCPv6 lease when DAD fails.
  + Various bugfixes.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
</package>
<package pkgid="da26aa477fbfde656e2d18338791b2276d55591abe572e383e585bc4086a60483e5bd762fbb01d1e428a9acb373c8a9e26ab43d7ceefbaa958b8a88b3f0905db" name="NetworkManager-devel" arch="x86_64">
  <version epoch="0" ver="1.48.8" rel="1.1"/>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1676894400">- Add 1539.patch: Fix constructing the IPv4 nameserver variable
  (boo#1208371).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1677153600">- Update to version 1.42.2:
  + Add build option to set the mobile-broadband-provider-info
    database path.
  + Add new "ipv[46].replace-local-rule" setting to control whether
    to remove the local route rule that is automatically generated.
  + Add the DHCPv6 IAID to the lease information exposed in /run
    and on D-Bus.
  + Fix assuming team connections at boot.
  + Fix race condition when setting the MAC address of an OVS
    interface.
  + Fix constructing the IPv4 name servers variable passed to
    dispatcher scripts.
  + Don't use tentative IPv6 address to resolve the system hostname
    via DNS.
  + Deprecate the "Master" property of the NMActiveConnection D-Bus
    object in favor of the new "Controller" property.
- Drop 1539.patch: Fixed upstream.
- Refresh patch with quilt:
  + 0001-Coerce-connectivity-LIMITED-to-NONE-when-device-is-d.patch</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678104000">- Changes from version 1.38.6 (bsc#1208631):
  + Fix honoring DNS priority.
  + Decline DHCPv6 lease when DAD fails.
  + Various bugfixes.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
</package>
<package pkgid="922f0999d102869f08d6614d45eb29413cd4af8b67e966d9c0d7f8901fd31e16a88f1f103a5eb1d3ea989930ea8282a70d29af66ccf786b02f842319093946e8" name="NetworkManager-devel" arch="i586">
  <version epoch="0" ver="1.50.0" rel="1.1"/>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1724328000">- Add NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  device: don't enforce IP cleanup on deactivating state
  (bsc#1228154, glfd#NetworkManager/NetworkManager!2016).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1724673600">- Update to version 1.48.10:
  + nmcli/edit: fix memory leak in extract_setting_and_property
  + autotools: fix another filename that was renamed
  + gitlab: fix helper scripts to support DNF5
  + CI: update the imported templates_sha
  + autotools: fix filename that was renamed
  + format: run nm-code-format
  + policy: retry hostname resolution when it fails
  + platform: add small backoff time before resync
  + bridge: reapply port VLANs only when necessary
  + platform: add nmp_utils_bridge_normalized_vlans_equal()
  + platform: support reading bridge VLANs
  + device: support reapplying bridge-port VLANs
  + bridge: change the signature for
    nm_platform_link_set_bridge_vlans()
  + platform: add define for IFLA_BOND_SLAVE_PRIO
  + lldp: fix multiple access to argument in logging macro
  + lldp: fix crash dereferencing NULL pointer during debug logging
  + policy: unblock the autoconnect for children when parent is
    available</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1727956800">- Update to version 1.50.0:
  + The support for "dhclient" has been deprecated, not built
    unless explicitely enabled, and will be removed in a future
    release. The internal DHCP client should be used instead and
    has been the default since version 1.20 (1.12 when built with
    meson).
  + Support matching a OVS system interface by MAC address.
  + Add a timeout option to connectivity checking.
  + Support configuring veth interfaces in nmtui.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.
  + Revert to using sysctl ipv6.conf.default for ip6-privacy.
  + Allow specifying a system OVS interface by MAC address.
  + ndisc: Support multiple gateways for a single network.
  + wifi: Support configuring channel-width in AP mode.
  + keyfile: Stop writing offensive terms into keyfiles.
  + Support reapplying the VLANs on bridge ports.
  + Fix crash caused by malformed LLDP package if debug log is
    enabled.
  + Retry hostname resolution when it fails.
- Drop NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  Fixed upstream.
- Rebase patches with quilt.</changelog>
</package>
<package pkgid="6407c0ad4305858abb13ac3691200202c637a8ebb2a913514159bc9d3b9ee120af745c6d0d891692ee7bfa5daa458f518f023fffb5e71b2f77b1f19ad3f426cc" name="NetworkManager-devel" arch="x86_64">
  <version epoch="0" ver="1.50.0" rel="1.1"/>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1724328000">- Add NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  device: don't enforce IP cleanup on deactivating state
  (bsc#1228154, glfd#NetworkManager/NetworkManager!2016).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1724673600">- Update to version 1.48.10:
  + nmcli/edit: fix memory leak in extract_setting_and_property
  + autotools: fix another filename that was renamed
  + gitlab: fix helper scripts to support DNF5
  + CI: update the imported templates_sha
  + autotools: fix filename that was renamed
  + format: run nm-code-format
  + policy: retry hostname resolution when it fails
  + platform: add small backoff time before resync
  + bridge: reapply port VLANs only when necessary
  + platform: add nmp_utils_bridge_normalized_vlans_equal()
  + platform: support reading bridge VLANs
  + device: support reapplying bridge-port VLANs
  + bridge: change the signature for
    nm_platform_link_set_bridge_vlans()
  + platform: add define for IFLA_BOND_SLAVE_PRIO
  + lldp: fix multiple access to argument in logging macro
  + lldp: fix crash dereferencing NULL pointer during debug logging
  + policy: unblock the autoconnect for children when parent is
    available</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1727956800">- Update to version 1.50.0:
  + The support for "dhclient" has been deprecated, not built
    unless explicitely enabled, and will be removed in a future
    release. The internal DHCP client should be used instead and
    has been the default since version 1.20 (1.12 when built with
    meson).
  + Support matching a OVS system interface by MAC address.
  + Add a timeout option to connectivity checking.
  + Support configuring veth interfaces in nmtui.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.
  + Revert to using sysctl ipv6.conf.default for ip6-privacy.
  + Allow specifying a system OVS interface by MAC address.
  + ndisc: Support multiple gateways for a single network.
  + wifi: Support configuring channel-width in AP mode.
  + keyfile: Stop writing offensive terms into keyfiles.
  + Support reapplying the VLANs on bridge ports.
  + Fix crash caused by malformed LLDP package if debug log is
    enabled.
  + Retry hostname resolution when it fails.
- Drop NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  Fixed upstream.
- Rebase patches with quilt.</changelog>
</package>
<package pkgid="10cd10dc440566c7bc64c12fe6f24764e330e490a5fd2b5e754cf0689c76c710ca6f4eaebebbb1a8ca28c866773b4622ac15bbfbacbb28b9263034bb1f97e13c" name="NetworkManager-devel-32bit" arch="x86_64">
  <version epoch="0" ver="1.48.10" rel="1.0.4.1.sr20240803"/>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678104000">- Changes from version 1.38.6 (bsc#1208631):
  + Fix honoring DNS priority.
  + Decline DHCPv6 lease when DAD fails.
  + Various bugfixes.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1724328000">- Add NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  device: don't enforce IP cleanup on deactivating state
  (bsc#1228154, glfd#NetworkManager/NetworkManager!2016).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1724673600">- Update to version 1.48.10:
  + nmcli/edit: fix memory leak in extract_setting_and_property
  + autotools: fix another filename that was renamed
  + gitlab: fix helper scripts to support DNF5
  + CI: update the imported templates_sha
  + autotools: fix filename that was renamed
  + format: run nm-code-format
  + policy: retry hostname resolution when it fails
  + platform: add small backoff time before resync
  + bridge: reapply port VLANs only when necessary
  + platform: add nmp_utils_bridge_normalized_vlans_equal()
  + platform: support reading bridge VLANs
  + device: support reapplying bridge-port VLANs
  + bridge: change the signature for
    nm_platform_link_set_bridge_vlans()
  + platform: add define for IFLA_BOND_SLAVE_PRIO
  + lldp: fix multiple access to argument in logging macro
  + lldp: fix crash dereferencing NULL pointer during debug logging
  + policy: unblock the autoconnect for children when parent is
    available</changelog>
</package>
<package pkgid="f91a1b6cf8f78cb07d4f5865705a909a063d0667974f5ff5163690ecee9773eceff266094a3a0c253276687829cdf7e7528ce212e68f9975759258c35fe6ac88" name="NetworkManager-devel-32bit" arch="x86_64">
  <version epoch="0" ver="1.48.10" rel="1.1"/>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678104000">- Changes from version 1.38.6 (bsc#1208631):
  + Fix honoring DNS priority.
  + Decline DHCPv6 lease when DAD fails.
  + Various bugfixes.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1724328000">- Add NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  device: don't enforce IP cleanup on deactivating state
  (bsc#1228154, glfd#NetworkManager/NetworkManager!2016).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1724673600">- Update to version 1.48.10:
  + nmcli/edit: fix memory leak in extract_setting_and_property
  + autotools: fix another filename that was renamed
  + gitlab: fix helper scripts to support DNF5
  + CI: update the imported templates_sha
  + autotools: fix filename that was renamed
  + format: run nm-code-format
  + policy: retry hostname resolution when it fails
  + platform: add small backoff time before resync
  + bridge: reapply port VLANs only when necessary
  + platform: add nmp_utils_bridge_normalized_vlans_equal()
  + platform: support reading bridge VLANs
  + device: support reapplying bridge-port VLANs
  + bridge: change the signature for
    nm_platform_link_set_bridge_vlans()
  + platform: add define for IFLA_BOND_SLAVE_PRIO
  + lldp: fix multiple access to argument in logging macro
  + lldp: fix crash dereferencing NULL pointer during debug logging
  + policy: unblock the autoconnect for children when parent is
    available</changelog>
</package>
<package pkgid="8fb359dedb2f9caadbc936ae3f6861d34d2112ef7f60ba88a00068c39b36df46f1d373b1b47a667ab53e73dfbb2e36e82e3f7a5ac002679ce8c98e78e2908a29" name="NetworkManager-devel-32bit" arch="x86_64">
  <version epoch="0" ver="1.48.8" rel="1.1"/>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1676894400">- Add 1539.patch: Fix constructing the IPv4 nameserver variable
  (boo#1208371).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1677153600">- Update to version 1.42.2:
  + Add build option to set the mobile-broadband-provider-info
    database path.
  + Add new "ipv[46].replace-local-rule" setting to control whether
    to remove the local route rule that is automatically generated.
  + Add the DHCPv6 IAID to the lease information exposed in /run
    and on D-Bus.
  + Fix assuming team connections at boot.
  + Fix race condition when setting the MAC address of an OVS
    interface.
  + Fix constructing the IPv4 name servers variable passed to
    dispatcher scripts.
  + Don't use tentative IPv6 address to resolve the system hostname
    via DNS.
  + Deprecate the "Master" property of the NMActiveConnection D-Bus
    object in favor of the new "Controller" property.
- Drop 1539.patch: Fixed upstream.
- Refresh patch with quilt:
  + 0001-Coerce-connectivity-LIMITED-to-NONE-when-device-is-d.patch</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678104000">- Changes from version 1.38.6 (bsc#1208631):
  + Fix honoring DNS priority.
  + Decline DHCPv6 lease when DAD fails.
  + Various bugfixes.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
</package>
<package pkgid="8312c0d0dbc5f791626acb73ce3aff48dcb1e1e80bd44d6c9dece579d21113d93d26874175a6ede3f58fde529b1f0d844b4d4be27de97a0428b21ec2e0ea9fb9" name="NetworkManager-devel-32bit" arch="x86_64">
  <version epoch="0" ver="1.50.0" rel="1.1"/>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1724328000">- Add NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  device: don't enforce IP cleanup on deactivating state
  (bsc#1228154, glfd#NetworkManager/NetworkManager!2016).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1724673600">- Update to version 1.48.10:
  + nmcli/edit: fix memory leak in extract_setting_and_property
  + autotools: fix another filename that was renamed
  + gitlab: fix helper scripts to support DNF5
  + CI: update the imported templates_sha
  + autotools: fix filename that was renamed
  + format: run nm-code-format
  + policy: retry hostname resolution when it fails
  + platform: add small backoff time before resync
  + bridge: reapply port VLANs only when necessary
  + platform: add nmp_utils_bridge_normalized_vlans_equal()
  + platform: support reading bridge VLANs
  + device: support reapplying bridge-port VLANs
  + bridge: change the signature for
    nm_platform_link_set_bridge_vlans()
  + platform: add define for IFLA_BOND_SLAVE_PRIO
  + lldp: fix multiple access to argument in logging macro
  + lldp: fix crash dereferencing NULL pointer during debug logging
  + policy: unblock the autoconnect for children when parent is
    available</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1727956800">- Update to version 1.50.0:
  + The support for "dhclient" has been deprecated, not built
    unless explicitely enabled, and will be removed in a future
    release. The internal DHCP client should be used instead and
    has been the default since version 1.20 (1.12 when built with
    meson).
  + Support matching a OVS system interface by MAC address.
  + Add a timeout option to connectivity checking.
  + Support configuring veth interfaces in nmtui.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.
  + Revert to using sysctl ipv6.conf.default for ip6-privacy.
  + Allow specifying a system OVS interface by MAC address.
  + ndisc: Support multiple gateways for a single network.
  + wifi: Support configuring channel-width in AP mode.
  + keyfile: Stop writing offensive terms into keyfiles.
  + Support reapplying the VLANs on bridge ports.
  + Fix crash caused by malformed LLDP package if debug log is
    enabled.
  + Retry hostname resolution when it fails.
- Drop NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  Fixed upstream.
- Rebase patches with quilt.</changelog>
</package>
<package pkgid="f0cd3f2a91eaba305a8c0fbd98c0ab5c769224fe33e6915ba82e0c423df515b8a3b64f6fc51f6210315ddc40228b7a80dd8e070197a1f34e64c4a3c69efdd681" name="NetworkManager-lang" arch="noarch">
  <version epoch="0" ver="1.48.10" rel="1.0.4.1.sr20240803"/>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678104000">- Changes from version 1.38.6 (bsc#1208631):
  + Fix honoring DNS priority.
  + Decline DHCPv6 lease when DAD fails.
  + Various bugfixes.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1724328000">- Add NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  device: don't enforce IP cleanup on deactivating state
  (bsc#1228154, glfd#NetworkManager/NetworkManager!2016).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1724673600">- Update to version 1.48.10:
  + nmcli/edit: fix memory leak in extract_setting_and_property
  + autotools: fix another filename that was renamed
  + gitlab: fix helper scripts to support DNF5
  + CI: update the imported templates_sha
  + autotools: fix filename that was renamed
  + format: run nm-code-format
  + policy: retry hostname resolution when it fails
  + platform: add small backoff time before resync
  + bridge: reapply port VLANs only when necessary
  + platform: add nmp_utils_bridge_normalized_vlans_equal()
  + platform: support reading bridge VLANs
  + device: support reapplying bridge-port VLANs
  + bridge: change the signature for
    nm_platform_link_set_bridge_vlans()
  + platform: add define for IFLA_BOND_SLAVE_PRIO
  + lldp: fix multiple access to argument in logging macro
  + lldp: fix crash dereferencing NULL pointer during debug logging
  + policy: unblock the autoconnect for children when parent is
    available</changelog>
</package>
<package pkgid="4e629dca953e5b01a7bb26068da4d16c88135b95c727d4c852cb2566fdf09adc8cca9d188c02edaeff35d3edadae27d7061f01fa2e59791a6a0fa9df5163a45b" name="NetworkManager-lang" arch="noarch">
  <version epoch="0" ver="1.48.10" rel="1.1"/>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678104000">- Changes from version 1.38.6 (bsc#1208631):
  + Fix honoring DNS priority.
  + Decline DHCPv6 lease when DAD fails.
  + Various bugfixes.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1724328000">- Add NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  device: don't enforce IP cleanup on deactivating state
  (bsc#1228154, glfd#NetworkManager/NetworkManager!2016).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1724673600">- Update to version 1.48.10:
  + nmcli/edit: fix memory leak in extract_setting_and_property
  + autotools: fix another filename that was renamed
  + gitlab: fix helper scripts to support DNF5
  + CI: update the imported templates_sha
  + autotools: fix filename that was renamed
  + format: run nm-code-format
  + policy: retry hostname resolution when it fails
  + platform: add small backoff time before resync
  + bridge: reapply port VLANs only when necessary
  + platform: add nmp_utils_bridge_normalized_vlans_equal()
  + platform: support reading bridge VLANs
  + device: support reapplying bridge-port VLANs
  + bridge: change the signature for
    nm_platform_link_set_bridge_vlans()
  + platform: add define for IFLA_BOND_SLAVE_PRIO
  + lldp: fix multiple access to argument in logging macro
  + lldp: fix crash dereferencing NULL pointer during debug logging
  + policy: unblock the autoconnect for children when parent is
    available</changelog>
</package>
<package pkgid="29b11427b564897a4991aae8e4ba9284dd253950a32df6f99116f9efa7bb017cbbbb5fcbcc6c68898b1d3348de4f76abffcb8ae126ac3f70f952105be90a759d" name="NetworkManager-lang" arch="noarch">
  <version epoch="0" ver="1.48.8" rel="1.1"/>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1676894400">- Add 1539.patch: Fix constructing the IPv4 nameserver variable
  (boo#1208371).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1677153600">- Update to version 1.42.2:
  + Add build option to set the mobile-broadband-provider-info
    database path.
  + Add new "ipv[46].replace-local-rule" setting to control whether
    to remove the local route rule that is automatically generated.
  + Add the DHCPv6 IAID to the lease information exposed in /run
    and on D-Bus.
  + Fix assuming team connections at boot.
  + Fix race condition when setting the MAC address of an OVS
    interface.
  + Fix constructing the IPv4 name servers variable passed to
    dispatcher scripts.
  + Don't use tentative IPv6 address to resolve the system hostname
    via DNS.
  + Deprecate the "Master" property of the NMActiveConnection D-Bus
    object in favor of the new "Controller" property.
- Drop 1539.patch: Fixed upstream.
- Refresh patch with quilt:
  + 0001-Coerce-connectivity-LIMITED-to-NONE-when-device-is-d.patch</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678104000">- Changes from version 1.38.6 (bsc#1208631):
  + Fix honoring DNS priority.
  + Decline DHCPv6 lease when DAD fails.
  + Various bugfixes.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
</package>
<package pkgid="764fd79281d6d7be120fffc3047c874fad30e905c3764d5246428f763657165af56d8dd6ffcee0fc3ac770578466b08460457b46fbe806ef5567288f4d7f4e4e" name="NetworkManager-lang" arch="noarch">
  <version epoch="0" ver="1.50.0" rel="1.1"/>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1724328000">- Add NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  device: don't enforce IP cleanup on deactivating state
  (bsc#1228154, glfd#NetworkManager/NetworkManager!2016).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1724673600">- Update to version 1.48.10:
  + nmcli/edit: fix memory leak in extract_setting_and_property
  + autotools: fix another filename that was renamed
  + gitlab: fix helper scripts to support DNF5
  + CI: update the imported templates_sha
  + autotools: fix filename that was renamed
  + format: run nm-code-format
  + policy: retry hostname resolution when it fails
  + platform: add small backoff time before resync
  + bridge: reapply port VLANs only when necessary
  + platform: add nmp_utils_bridge_normalized_vlans_equal()
  + platform: support reading bridge VLANs
  + device: support reapplying bridge-port VLANs
  + bridge: change the signature for
    nm_platform_link_set_bridge_vlans()
  + platform: add define for IFLA_BOND_SLAVE_PRIO
  + lldp: fix multiple access to argument in logging macro
  + lldp: fix crash dereferencing NULL pointer during debug logging
  + policy: unblock the autoconnect for children when parent is
    available</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1727956800">- Update to version 1.50.0:
  + The support for "dhclient" has been deprecated, not built
    unless explicitely enabled, and will be removed in a future
    release. The internal DHCP client should be used instead and
    has been the default since version 1.20 (1.12 when built with
    meson).
  + Support matching a OVS system interface by MAC address.
  + Add a timeout option to connectivity checking.
  + Support configuring veth interfaces in nmtui.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.
  + Revert to using sysctl ipv6.conf.default for ip6-privacy.
  + Allow specifying a system OVS interface by MAC address.
  + ndisc: Support multiple gateways for a single network.
  + wifi: Support configuring channel-width in AP mode.
  + keyfile: Stop writing offensive terms into keyfiles.
  + Support reapplying the VLANs on bridge ports.
  + Fix crash caused by malformed LLDP package if debug log is
    enabled.
  + Retry hostname resolution when it fails.
- Drop NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  Fixed upstream.
- Rebase patches with quilt.</changelog>
</package>
<package pkgid="2e5fdefbcd01f6fb32697b9d44355ec8d0824a05f30e4e059ccb84d498f7d88e5edf5666bfd7431f06d3a2fc0f931f5a79bc3a8df419c1bee813f9bf5f4b3ea8" name="NetworkManager-ovs" arch="i586">
  <version epoch="0" ver="1.48.10" rel="1.0.4.1.sr20240803"/>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678104000">- Changes from version 1.38.6 (bsc#1208631):
  + Fix honoring DNS priority.
  + Decline DHCPv6 lease when DAD fails.
  + Various bugfixes.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1724328000">- Add NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  device: don't enforce IP cleanup on deactivating state
  (bsc#1228154, glfd#NetworkManager/NetworkManager!2016).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1724673600">- Update to version 1.48.10:
  + nmcli/edit: fix memory leak in extract_setting_and_property
  + autotools: fix another filename that was renamed
  + gitlab: fix helper scripts to support DNF5
  + CI: update the imported templates_sha
  + autotools: fix filename that was renamed
  + format: run nm-code-format
  + policy: retry hostname resolution when it fails
  + platform: add small backoff time before resync
  + bridge: reapply port VLANs only when necessary
  + platform: add nmp_utils_bridge_normalized_vlans_equal()
  + platform: support reading bridge VLANs
  + device: support reapplying bridge-port VLANs
  + bridge: change the signature for
    nm_platform_link_set_bridge_vlans()
  + platform: add define for IFLA_BOND_SLAVE_PRIO
  + lldp: fix multiple access to argument in logging macro
  + lldp: fix crash dereferencing NULL pointer during debug logging
  + policy: unblock the autoconnect for children when parent is
    available</changelog>
</package>
<package pkgid="753c87e2e493dd638a81f8ee713bf0c6a144bda93cd12a82f47dd65f09490ddc4f733e143a4e2fef5c78af49bda51da74957610374cd6efa394e379450018584" name="NetworkManager-ovs" arch="x86_64">
  <version epoch="0" ver="1.48.10" rel="1.0.4.1.sr20240803"/>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678104000">- Changes from version 1.38.6 (bsc#1208631):
  + Fix honoring DNS priority.
  + Decline DHCPv6 lease when DAD fails.
  + Various bugfixes.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1724328000">- Add NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  device: don't enforce IP cleanup on deactivating state
  (bsc#1228154, glfd#NetworkManager/NetworkManager!2016).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1724673600">- Update to version 1.48.10:
  + nmcli/edit: fix memory leak in extract_setting_and_property
  + autotools: fix another filename that was renamed
  + gitlab: fix helper scripts to support DNF5
  + CI: update the imported templates_sha
  + autotools: fix filename that was renamed
  + format: run nm-code-format
  + policy: retry hostname resolution when it fails
  + platform: add small backoff time before resync
  + bridge: reapply port VLANs only when necessary
  + platform: add nmp_utils_bridge_normalized_vlans_equal()
  + platform: support reading bridge VLANs
  + device: support reapplying bridge-port VLANs
  + bridge: change the signature for
    nm_platform_link_set_bridge_vlans()
  + platform: add define for IFLA_BOND_SLAVE_PRIO
  + lldp: fix multiple access to argument in logging macro
  + lldp: fix crash dereferencing NULL pointer during debug logging
  + policy: unblock the autoconnect for children when parent is
    available</changelog>
</package>
<package pkgid="c02775ab002cdec76671b253ce755b0eff9463a63ad9db65acb01a618bfe06f8da6e724e5c9a8c4495aabc3a34c2224aa2e77baea54621dd42fedd149f9c519c" name="NetworkManager-ovs" arch="i586">
  <version epoch="0" ver="1.48.10" rel="1.1"/>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678104000">- Changes from version 1.38.6 (bsc#1208631):
  + Fix honoring DNS priority.
  + Decline DHCPv6 lease when DAD fails.
  + Various bugfixes.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1724328000">- Add NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  device: don't enforce IP cleanup on deactivating state
  (bsc#1228154, glfd#NetworkManager/NetworkManager!2016).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1724673600">- Update to version 1.48.10:
  + nmcli/edit: fix memory leak in extract_setting_and_property
  + autotools: fix another filename that was renamed
  + gitlab: fix helper scripts to support DNF5
  + CI: update the imported templates_sha
  + autotools: fix filename that was renamed
  + format: run nm-code-format
  + policy: retry hostname resolution when it fails
  + platform: add small backoff time before resync
  + bridge: reapply port VLANs only when necessary
  + platform: add nmp_utils_bridge_normalized_vlans_equal()
  + platform: support reading bridge VLANs
  + device: support reapplying bridge-port VLANs
  + bridge: change the signature for
    nm_platform_link_set_bridge_vlans()
  + platform: add define for IFLA_BOND_SLAVE_PRIO
  + lldp: fix multiple access to argument in logging macro
  + lldp: fix crash dereferencing NULL pointer during debug logging
  + policy: unblock the autoconnect for children when parent is
    available</changelog>
</package>
<package pkgid="9eb12520c03168150b7a994f286a8e756ab8ff359ebebb2df93b8b72bc1a7000def32525c2dda4f8cf80177e10adeda8a2e1d6affdbdfb8399a8ff79adcab7ec" name="NetworkManager-ovs" arch="x86_64">
  <version epoch="0" ver="1.48.10" rel="1.1"/>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678104000">- Changes from version 1.38.6 (bsc#1208631):
  + Fix honoring DNS priority.
  + Decline DHCPv6 lease when DAD fails.
  + Various bugfixes.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1724328000">- Add NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  device: don't enforce IP cleanup on deactivating state
  (bsc#1228154, glfd#NetworkManager/NetworkManager!2016).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1724673600">- Update to version 1.48.10:
  + nmcli/edit: fix memory leak in extract_setting_and_property
  + autotools: fix another filename that was renamed
  + gitlab: fix helper scripts to support DNF5
  + CI: update the imported templates_sha
  + autotools: fix filename that was renamed
  + format: run nm-code-format
  + policy: retry hostname resolution when it fails
  + platform: add small backoff time before resync
  + bridge: reapply port VLANs only when necessary
  + platform: add nmp_utils_bridge_normalized_vlans_equal()
  + platform: support reading bridge VLANs
  + device: support reapplying bridge-port VLANs
  + bridge: change the signature for
    nm_platform_link_set_bridge_vlans()
  + platform: add define for IFLA_BOND_SLAVE_PRIO
  + lldp: fix multiple access to argument in logging macro
  + lldp: fix crash dereferencing NULL pointer during debug logging
  + policy: unblock the autoconnect for children when parent is
    available</changelog>
</package>
<package pkgid="a956679cfbe742b4d75c632617e1a255112625dd23a9417d7e98223dc185ee0054f712cd227c6f978b8876e548e942bbec7e30a8f43e6dc623976e678d448b49" name="NetworkManager-ovs" arch="i586">
  <version epoch="0" ver="1.48.8" rel="1.1"/>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1676894400">- Add 1539.patch: Fix constructing the IPv4 nameserver variable
  (boo#1208371).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1677153600">- Update to version 1.42.2:
  + Add build option to set the mobile-broadband-provider-info
    database path.
  + Add new "ipv[46].replace-local-rule" setting to control whether
    to remove the local route rule that is automatically generated.
  + Add the DHCPv6 IAID to the lease information exposed in /run
    and on D-Bus.
  + Fix assuming team connections at boot.
  + Fix race condition when setting the MAC address of an OVS
    interface.
  + Fix constructing the IPv4 name servers variable passed to
    dispatcher scripts.
  + Don't use tentative IPv6 address to resolve the system hostname
    via DNS.
  + Deprecate the "Master" property of the NMActiveConnection D-Bus
    object in favor of the new "Controller" property.
- Drop 1539.patch: Fixed upstream.
- Refresh patch with quilt:
  + 0001-Coerce-connectivity-LIMITED-to-NONE-when-device-is-d.patch</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678104000">- Changes from version 1.38.6 (bsc#1208631):
  + Fix honoring DNS priority.
  + Decline DHCPv6 lease when DAD fails.
  + Various bugfixes.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
</package>
<package pkgid="2a3aeee4650df2b5643298b76b52e21b88e86be2f7dd0f5ed3d758c76de43686c14631c0a4729582d01c2dce79e2003d9db64c15b691d9f82d309084310458fd" name="NetworkManager-ovs" arch="x86_64">
  <version epoch="0" ver="1.48.8" rel="1.1"/>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1676894400">- Add 1539.patch: Fix constructing the IPv4 nameserver variable
  (boo#1208371).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1677153600">- Update to version 1.42.2:
  + Add build option to set the mobile-broadband-provider-info
    database path.
  + Add new "ipv[46].replace-local-rule" setting to control whether
    to remove the local route rule that is automatically generated.
  + Add the DHCPv6 IAID to the lease information exposed in /run
    and on D-Bus.
  + Fix assuming team connections at boot.
  + Fix race condition when setting the MAC address of an OVS
    interface.
  + Fix constructing the IPv4 name servers variable passed to
    dispatcher scripts.
  + Don't use tentative IPv6 address to resolve the system hostname
    via DNS.
  + Deprecate the "Master" property of the NMActiveConnection D-Bus
    object in favor of the new "Controller" property.
- Drop 1539.patch: Fixed upstream.
- Refresh patch with quilt:
  + 0001-Coerce-connectivity-LIMITED-to-NONE-when-device-is-d.patch</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678104000">- Changes from version 1.38.6 (bsc#1208631):
  + Fix honoring DNS priority.
  + Decline DHCPv6 lease when DAD fails.
  + Various bugfixes.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
</package>
<package pkgid="9489a07b42bb405617883485bdd55182025d36c29608af866b124a979add35c4450ef8dc8187f9aff05e9ba4bb381ff8539550526dc4170d44ffb9828da3c5d1" name="NetworkManager-ovs" arch="i586">
  <version epoch="0" ver="1.50.0" rel="1.1"/>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1724328000">- Add NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  device: don't enforce IP cleanup on deactivating state
  (bsc#1228154, glfd#NetworkManager/NetworkManager!2016).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1724673600">- Update to version 1.48.10:
  + nmcli/edit: fix memory leak in extract_setting_and_property
  + autotools: fix another filename that was renamed
  + gitlab: fix helper scripts to support DNF5
  + CI: update the imported templates_sha
  + autotools: fix filename that was renamed
  + format: run nm-code-format
  + policy: retry hostname resolution when it fails
  + platform: add small backoff time before resync
  + bridge: reapply port VLANs only when necessary
  + platform: add nmp_utils_bridge_normalized_vlans_equal()
  + platform: support reading bridge VLANs
  + device: support reapplying bridge-port VLANs
  + bridge: change the signature for
    nm_platform_link_set_bridge_vlans()
  + platform: add define for IFLA_BOND_SLAVE_PRIO
  + lldp: fix multiple access to argument in logging macro
  + lldp: fix crash dereferencing NULL pointer during debug logging
  + policy: unblock the autoconnect for children when parent is
    available</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1727956800">- Update to version 1.50.0:
  + The support for "dhclient" has been deprecated, not built
    unless explicitely enabled, and will be removed in a future
    release. The internal DHCP client should be used instead and
    has been the default since version 1.20 (1.12 when built with
    meson).
  + Support matching a OVS system interface by MAC address.
  + Add a timeout option to connectivity checking.
  + Support configuring veth interfaces in nmtui.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.
  + Revert to using sysctl ipv6.conf.default for ip6-privacy.
  + Allow specifying a system OVS interface by MAC address.
  + ndisc: Support multiple gateways for a single network.
  + wifi: Support configuring channel-width in AP mode.
  + keyfile: Stop writing offensive terms into keyfiles.
  + Support reapplying the VLANs on bridge ports.
  + Fix crash caused by malformed LLDP package if debug log is
    enabled.
  + Retry hostname resolution when it fails.
- Drop NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  Fixed upstream.
- Rebase patches with quilt.</changelog>
</package>
<package pkgid="6546dfc01ec52832800ffe871f6ae7d6e40519fa8058b1dee7bc50826279d23342026d04ec8d34253ddde314a6ffdfbd4ac8afffedb73e62563653bcd785e476" name="NetworkManager-ovs" arch="x86_64">
  <version epoch="0" ver="1.50.0" rel="1.1"/>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1724328000">- Add NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  device: don't enforce IP cleanup on deactivating state
  (bsc#1228154, glfd#NetworkManager/NetworkManager!2016).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1724673600">- Update to version 1.48.10:
  + nmcli/edit: fix memory leak in extract_setting_and_property
  + autotools: fix another filename that was renamed
  + gitlab: fix helper scripts to support DNF5
  + CI: update the imported templates_sha
  + autotools: fix filename that was renamed
  + format: run nm-code-format
  + policy: retry hostname resolution when it fails
  + platform: add small backoff time before resync
  + bridge: reapply port VLANs only when necessary
  + platform: add nmp_utils_bridge_normalized_vlans_equal()
  + platform: support reading bridge VLANs
  + device: support reapplying bridge-port VLANs
  + bridge: change the signature for
    nm_platform_link_set_bridge_vlans()
  + platform: add define for IFLA_BOND_SLAVE_PRIO
  + lldp: fix multiple access to argument in logging macro
  + lldp: fix crash dereferencing NULL pointer during debug logging
  + policy: unblock the autoconnect for children when parent is
    available</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1727956800">- Update to version 1.50.0:
  + The support for "dhclient" has been deprecated, not built
    unless explicitely enabled, and will be removed in a future
    release. The internal DHCP client should be used instead and
    has been the default since version 1.20 (1.12 when built with
    meson).
  + Support matching a OVS system interface by MAC address.
  + Add a timeout option to connectivity checking.
  + Support configuring veth interfaces in nmtui.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.
  + Revert to using sysctl ipv6.conf.default for ip6-privacy.
  + Allow specifying a system OVS interface by MAC address.
  + ndisc: Support multiple gateways for a single network.
  + wifi: Support configuring channel-width in AP mode.
  + keyfile: Stop writing offensive terms into keyfiles.
  + Support reapplying the VLANs on bridge ports.
  + Fix crash caused by malformed LLDP package if debug log is
    enabled.
  + Retry hostname resolution when it fails.
- Drop NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  Fixed upstream.
- Rebase patches with quilt.</changelog>
</package>
<package pkgid="c14e7997a0ca8d516d10dde6efa4483b0a32cc54be83bf8249738f23a0b2f7a51f1f7d5e87f94c9a2b96a731386827657cdaa642efe1255fa5cca0dbea8ea68e" name="NetworkManager-ovs-debuginfo" arch="i586">
  <version epoch="0" ver="1.48.10" rel="1.0.4.1.sr20240803"/>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678104000">- Changes from version 1.38.6 (bsc#1208631):
  + Fix honoring DNS priority.
  + Decline DHCPv6 lease when DAD fails.
  + Various bugfixes.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1724328000">- Add NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  device: don't enforce IP cleanup on deactivating state
  (bsc#1228154, glfd#NetworkManager/NetworkManager!2016).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1724673600">- Update to version 1.48.10:
  + nmcli/edit: fix memory leak in extract_setting_and_property
  + autotools: fix another filename that was renamed
  + gitlab: fix helper scripts to support DNF5
  + CI: update the imported templates_sha
  + autotools: fix filename that was renamed
  + format: run nm-code-format
  + policy: retry hostname resolution when it fails
  + platform: add small backoff time before resync
  + bridge: reapply port VLANs only when necessary
  + platform: add nmp_utils_bridge_normalized_vlans_equal()
  + platform: support reading bridge VLANs
  + device: support reapplying bridge-port VLANs
  + bridge: change the signature for
    nm_platform_link_set_bridge_vlans()
  + platform: add define for IFLA_BOND_SLAVE_PRIO
  + lldp: fix multiple access to argument in logging macro
  + lldp: fix crash dereferencing NULL pointer during debug logging
  + policy: unblock the autoconnect for children when parent is
    available</changelog>
</package>
<package pkgid="35a3d5ea4975a22965d9e039200360890a8340a7d6b5566d3971ed7bc17d7c966075650d2e75ae53d55cbc43f8bd7d916d6e700d9b7140173ef9f6913f9dbe5f" name="NetworkManager-ovs-debuginfo" arch="x86_64">
  <version epoch="0" ver="1.48.10" rel="1.0.4.1.sr20240803"/>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678104000">- Changes from version 1.38.6 (bsc#1208631):
  + Fix honoring DNS priority.
  + Decline DHCPv6 lease when DAD fails.
  + Various bugfixes.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1724328000">- Add NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  device: don't enforce IP cleanup on deactivating state
  (bsc#1228154, glfd#NetworkManager/NetworkManager!2016).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1724673600">- Update to version 1.48.10:
  + nmcli/edit: fix memory leak in extract_setting_and_property
  + autotools: fix another filename that was renamed
  + gitlab: fix helper scripts to support DNF5
  + CI: update the imported templates_sha
  + autotools: fix filename that was renamed
  + format: run nm-code-format
  + policy: retry hostname resolution when it fails
  + platform: add small backoff time before resync
  + bridge: reapply port VLANs only when necessary
  + platform: add nmp_utils_bridge_normalized_vlans_equal()
  + platform: support reading bridge VLANs
  + device: support reapplying bridge-port VLANs
  + bridge: change the signature for
    nm_platform_link_set_bridge_vlans()
  + platform: add define for IFLA_BOND_SLAVE_PRIO
  + lldp: fix multiple access to argument in logging macro
  + lldp: fix crash dereferencing NULL pointer during debug logging
  + policy: unblock the autoconnect for children when parent is
    available</changelog>
</package>
<package pkgid="39b0bbe0989b06e3a1e87ccf3cb7eb71e0a1b6b88d8a3dc5f66881cc0066429c7c65dbbdcc15d6cd574a31772ed978db6a7abdca0a7a7fa21b96b7012bb1b1bc" name="NetworkManager-ovs-debuginfo" arch="i586">
  <version epoch="0" ver="1.48.10" rel="1.1"/>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678104000">- Changes from version 1.38.6 (bsc#1208631):
  + Fix honoring DNS priority.
  + Decline DHCPv6 lease when DAD fails.
  + Various bugfixes.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1724328000">- Add NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  device: don't enforce IP cleanup on deactivating state
  (bsc#1228154, glfd#NetworkManager/NetworkManager!2016).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1724673600">- Update to version 1.48.10:
  + nmcli/edit: fix memory leak in extract_setting_and_property
  + autotools: fix another filename that was renamed
  + gitlab: fix helper scripts to support DNF5
  + CI: update the imported templates_sha
  + autotools: fix filename that was renamed
  + format: run nm-code-format
  + policy: retry hostname resolution when it fails
  + platform: add small backoff time before resync
  + bridge: reapply port VLANs only when necessary
  + platform: add nmp_utils_bridge_normalized_vlans_equal()
  + platform: support reading bridge VLANs
  + device: support reapplying bridge-port VLANs
  + bridge: change the signature for
    nm_platform_link_set_bridge_vlans()
  + platform: add define for IFLA_BOND_SLAVE_PRIO
  + lldp: fix multiple access to argument in logging macro
  + lldp: fix crash dereferencing NULL pointer during debug logging
  + policy: unblock the autoconnect for children when parent is
    available</changelog>
</package>
<package pkgid="2d0ba1a61c8dac2e05fd934790949d3581a656f94a3b9689c84bb7ff84e3ddff91ed7b7edf70587ebab6951191793aab5c8888e3d3e1762db7886251c73a3fa5" name="NetworkManager-ovs-debuginfo" arch="x86_64">
  <version epoch="0" ver="1.48.10" rel="1.1"/>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678104000">- Changes from version 1.38.6 (bsc#1208631):
  + Fix honoring DNS priority.
  + Decline DHCPv6 lease when DAD fails.
  + Various bugfixes.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1724328000">- Add NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  device: don't enforce IP cleanup on deactivating state
  (bsc#1228154, glfd#NetworkManager/NetworkManager!2016).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1724673600">- Update to version 1.48.10:
  + nmcli/edit: fix memory leak in extract_setting_and_property
  + autotools: fix another filename that was renamed
  + gitlab: fix helper scripts to support DNF5
  + CI: update the imported templates_sha
  + autotools: fix filename that was renamed
  + format: run nm-code-format
  + policy: retry hostname resolution when it fails
  + platform: add small backoff time before resync
  + bridge: reapply port VLANs only when necessary
  + platform: add nmp_utils_bridge_normalized_vlans_equal()
  + platform: support reading bridge VLANs
  + device: support reapplying bridge-port VLANs
  + bridge: change the signature for
    nm_platform_link_set_bridge_vlans()
  + platform: add define for IFLA_BOND_SLAVE_PRIO
  + lldp: fix multiple access to argument in logging macro
  + lldp: fix crash dereferencing NULL pointer during debug logging
  + policy: unblock the autoconnect for children when parent is
    available</changelog>
</package>
<package pkgid="899fc121ca5ab780ef6fd7dd6a3962b131b528a73d8e765be9fc305ada0fe27b129f44c8b8540be1aeaf30a017cdf916e05b041a6b9a7effff8b007d67fc224a" name="NetworkManager-ovs-debuginfo" arch="i586">
  <version epoch="0" ver="1.48.8" rel="1.1"/>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1676894400">- Add 1539.patch: Fix constructing the IPv4 nameserver variable
  (boo#1208371).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1677153600">- Update to version 1.42.2:
  + Add build option to set the mobile-broadband-provider-info
    database path.
  + Add new "ipv[46].replace-local-rule" setting to control whether
    to remove the local route rule that is automatically generated.
  + Add the DHCPv6 IAID to the lease information exposed in /run
    and on D-Bus.
  + Fix assuming team connections at boot.
  + Fix race condition when setting the MAC address of an OVS
    interface.
  + Fix constructing the IPv4 name servers variable passed to
    dispatcher scripts.
  + Don't use tentative IPv6 address to resolve the system hostname
    via DNS.
  + Deprecate the "Master" property of the NMActiveConnection D-Bus
    object in favor of the new "Controller" property.
- Drop 1539.patch: Fixed upstream.
- Refresh patch with quilt:
  + 0001-Coerce-connectivity-LIMITED-to-NONE-when-device-is-d.patch</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678104000">- Changes from version 1.38.6 (bsc#1208631):
  + Fix honoring DNS priority.
  + Decline DHCPv6 lease when DAD fails.
  + Various bugfixes.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
</package>
<package pkgid="2a4733404a96b619fe3a78157f951c01c48d1a32ef29d8a54f9e5a892d4d6cb36042be6d6dd5b8d73540c8e5ba29a37250e5048f4bc58e80a431f244eefdfca7" name="NetworkManager-ovs-debuginfo" arch="x86_64">
  <version epoch="0" ver="1.48.8" rel="1.1"/>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1676894400">- Add 1539.patch: Fix constructing the IPv4 nameserver variable
  (boo#1208371).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1677153600">- Update to version 1.42.2:
  + Add build option to set the mobile-broadband-provider-info
    database path.
  + Add new "ipv[46].replace-local-rule" setting to control whether
    to remove the local route rule that is automatically generated.
  + Add the DHCPv6 IAID to the lease information exposed in /run
    and on D-Bus.
  + Fix assuming team connections at boot.
  + Fix race condition when setting the MAC address of an OVS
    interface.
  + Fix constructing the IPv4 name servers variable passed to
    dispatcher scripts.
  + Don't use tentative IPv6 address to resolve the system hostname
    via DNS.
  + Deprecate the "Master" property of the NMActiveConnection D-Bus
    object in favor of the new "Controller" property.
- Drop 1539.patch: Fixed upstream.
- Refresh patch with quilt:
  + 0001-Coerce-connectivity-LIMITED-to-NONE-when-device-is-d.patch</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678104000">- Changes from version 1.38.6 (bsc#1208631):
  + Fix honoring DNS priority.
  + Decline DHCPv6 lease when DAD fails.
  + Various bugfixes.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
</package>
<package pkgid="22453c393a351c3e39616d801757e0a7ab8e46004e1822141fd3aa9eb5cdd681c84d74ea710ade8ffc2da332ce0d133b7dd9d15aa29e98bb280d6bf979845f5a" name="NetworkManager-ovs-debuginfo" arch="i586">
  <version epoch="0" ver="1.50.0" rel="1.1"/>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1724328000">- Add NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  device: don't enforce IP cleanup on deactivating state
  (bsc#1228154, glfd#NetworkManager/NetworkManager!2016).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1724673600">- Update to version 1.48.10:
  + nmcli/edit: fix memory leak in extract_setting_and_property
  + autotools: fix another filename that was renamed
  + gitlab: fix helper scripts to support DNF5
  + CI: update the imported templates_sha
  + autotools: fix filename that was renamed
  + format: run nm-code-format
  + policy: retry hostname resolution when it fails
  + platform: add small backoff time before resync
  + bridge: reapply port VLANs only when necessary
  + platform: add nmp_utils_bridge_normalized_vlans_equal()
  + platform: support reading bridge VLANs
  + device: support reapplying bridge-port VLANs
  + bridge: change the signature for
    nm_platform_link_set_bridge_vlans()
  + platform: add define for IFLA_BOND_SLAVE_PRIO
  + lldp: fix multiple access to argument in logging macro
  + lldp: fix crash dereferencing NULL pointer during debug logging
  + policy: unblock the autoconnect for children when parent is
    available</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1727956800">- Update to version 1.50.0:
  + The support for "dhclient" has been deprecated, not built
    unless explicitely enabled, and will be removed in a future
    release. The internal DHCP client should be used instead and
    has been the default since version 1.20 (1.12 when built with
    meson).
  + Support matching a OVS system interface by MAC address.
  + Add a timeout option to connectivity checking.
  + Support configuring veth interfaces in nmtui.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.
  + Revert to using sysctl ipv6.conf.default for ip6-privacy.
  + Allow specifying a system OVS interface by MAC address.
  + ndisc: Support multiple gateways for a single network.
  + wifi: Support configuring channel-width in AP mode.
  + keyfile: Stop writing offensive terms into keyfiles.
  + Support reapplying the VLANs on bridge ports.
  + Fix crash caused by malformed LLDP package if debug log is
    enabled.
  + Retry hostname resolution when it fails.
- Drop NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  Fixed upstream.
- Rebase patches with quilt.</changelog>
</package>
<package pkgid="5e6da590edcba892ea8cae0ccf5d90632c3d5328489653af66e269e9cbe282ebfed9ab43f0c927acb0d4d9434b954f1aed684205c6fdec278112e62f38c470d6" name="NetworkManager-ovs-debuginfo" arch="x86_64">
  <version epoch="0" ver="1.50.0" rel="1.1"/>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1724328000">- Add NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  device: don't enforce IP cleanup on deactivating state
  (bsc#1228154, glfd#NetworkManager/NetworkManager!2016).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1724673600">- Update to version 1.48.10:
  + nmcli/edit: fix memory leak in extract_setting_and_property
  + autotools: fix another filename that was renamed
  + gitlab: fix helper scripts to support DNF5
  + CI: update the imported templates_sha
  + autotools: fix filename that was renamed
  + format: run nm-code-format
  + policy: retry hostname resolution when it fails
  + platform: add small backoff time before resync
  + bridge: reapply port VLANs only when necessary
  + platform: add nmp_utils_bridge_normalized_vlans_equal()
  + platform: support reading bridge VLANs
  + device: support reapplying bridge-port VLANs
  + bridge: change the signature for
    nm_platform_link_set_bridge_vlans()
  + platform: add define for IFLA_BOND_SLAVE_PRIO
  + lldp: fix multiple access to argument in logging macro
  + lldp: fix crash dereferencing NULL pointer during debug logging
  + policy: unblock the autoconnect for children when parent is
    available</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1727956800">- Update to version 1.50.0:
  + The support for "dhclient" has been deprecated, not built
    unless explicitely enabled, and will be removed in a future
    release. The internal DHCP client should be used instead and
    has been the default since version 1.20 (1.12 when built with
    meson).
  + Support matching a OVS system interface by MAC address.
  + Add a timeout option to connectivity checking.
  + Support configuring veth interfaces in nmtui.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.
  + Revert to using sysctl ipv6.conf.default for ip6-privacy.
  + Allow specifying a system OVS interface by MAC address.
  + ndisc: Support multiple gateways for a single network.
  + wifi: Support configuring channel-width in AP mode.
  + keyfile: Stop writing offensive terms into keyfiles.
  + Support reapplying the VLANs on bridge ports.
  + Fix crash caused by malformed LLDP package if debug log is
    enabled.
  + Retry hostname resolution when it fails.
- Drop NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  Fixed upstream.
- Rebase patches with quilt.</changelog>
</package>
<package pkgid="0b9f7e964e39421d7834b68fb50bdd16c2bb6b7871163480d2353ed917e712f9a475130c4a544b12f29725848d85dc8f96be9d244c9f02c185d7374b300d849d" name="NetworkManager-pppoe" arch="i586">
  <version epoch="0" ver="1.48.10" rel="1.0.4.1.sr20240803"/>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678104000">- Changes from version 1.38.6 (bsc#1208631):
  + Fix honoring DNS priority.
  + Decline DHCPv6 lease when DAD fails.
  + Various bugfixes.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1724328000">- Add NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  device: don't enforce IP cleanup on deactivating state
  (bsc#1228154, glfd#NetworkManager/NetworkManager!2016).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1724673600">- Update to version 1.48.10:
  + nmcli/edit: fix memory leak in extract_setting_and_property
  + autotools: fix another filename that was renamed
  + gitlab: fix helper scripts to support DNF5
  + CI: update the imported templates_sha
  + autotools: fix filename that was renamed
  + format: run nm-code-format
  + policy: retry hostname resolution when it fails
  + platform: add small backoff time before resync
  + bridge: reapply port VLANs only when necessary
  + platform: add nmp_utils_bridge_normalized_vlans_equal()
  + platform: support reading bridge VLANs
  + device: support reapplying bridge-port VLANs
  + bridge: change the signature for
    nm_platform_link_set_bridge_vlans()
  + platform: add define for IFLA_BOND_SLAVE_PRIO
  + lldp: fix multiple access to argument in logging macro
  + lldp: fix crash dereferencing NULL pointer during debug logging
  + policy: unblock the autoconnect for children when parent is
    available</changelog>
</package>
<package pkgid="07c757bd3d2589e453e7e99c49a78d2e0f741a0508b266a7a0f56f625927a59514706ac0b4a222605ecdf5042faa770c8b1e85f63ad9f107fcbb29085e2b9ec1" name="NetworkManager-pppoe" arch="x86_64">
  <version epoch="0" ver="1.48.10" rel="1.0.4.1.sr20240803"/>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678104000">- Changes from version 1.38.6 (bsc#1208631):
  + Fix honoring DNS priority.
  + Decline DHCPv6 lease when DAD fails.
  + Various bugfixes.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1724328000">- Add NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  device: don't enforce IP cleanup on deactivating state
  (bsc#1228154, glfd#NetworkManager/NetworkManager!2016).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1724673600">- Update to version 1.48.10:
  + nmcli/edit: fix memory leak in extract_setting_and_property
  + autotools: fix another filename that was renamed
  + gitlab: fix helper scripts to support DNF5
  + CI: update the imported templates_sha
  + autotools: fix filename that was renamed
  + format: run nm-code-format
  + policy: retry hostname resolution when it fails
  + platform: add small backoff time before resync
  + bridge: reapply port VLANs only when necessary
  + platform: add nmp_utils_bridge_normalized_vlans_equal()
  + platform: support reading bridge VLANs
  + device: support reapplying bridge-port VLANs
  + bridge: change the signature for
    nm_platform_link_set_bridge_vlans()
  + platform: add define for IFLA_BOND_SLAVE_PRIO
  + lldp: fix multiple access to argument in logging macro
  + lldp: fix crash dereferencing NULL pointer during debug logging
  + policy: unblock the autoconnect for children when parent is
    available</changelog>
</package>
<package pkgid="85595834e768e0cb4c08006e41f32affdf7c24d01d99fb6dceed0a5e869de995af9583a39c85a599694ca9c1a5d63ca471a6be697a80450e448fbebcac62e4dd" name="NetworkManager-pppoe" arch="i586">
  <version epoch="0" ver="1.48.10" rel="1.1"/>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678104000">- Changes from version 1.38.6 (bsc#1208631):
  + Fix honoring DNS priority.
  + Decline DHCPv6 lease when DAD fails.
  + Various bugfixes.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1724328000">- Add NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  device: don't enforce IP cleanup on deactivating state
  (bsc#1228154, glfd#NetworkManager/NetworkManager!2016).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1724673600">- Update to version 1.48.10:
  + nmcli/edit: fix memory leak in extract_setting_and_property
  + autotools: fix another filename that was renamed
  + gitlab: fix helper scripts to support DNF5
  + CI: update the imported templates_sha
  + autotools: fix filename that was renamed
  + format: run nm-code-format
  + policy: retry hostname resolution when it fails
  + platform: add small backoff time before resync
  + bridge: reapply port VLANs only when necessary
  + platform: add nmp_utils_bridge_normalized_vlans_equal()
  + platform: support reading bridge VLANs
  + device: support reapplying bridge-port VLANs
  + bridge: change the signature for
    nm_platform_link_set_bridge_vlans()
  + platform: add define for IFLA_BOND_SLAVE_PRIO
  + lldp: fix multiple access to argument in logging macro
  + lldp: fix crash dereferencing NULL pointer during debug logging
  + policy: unblock the autoconnect for children when parent is
    available</changelog>
</package>
<package pkgid="7249d339ecac01a56fc6a62555bacdb7ca8950dc7f68fbb65713507d6d344314f199c23782dc8a42a59e0f7cfc2e5ec8fa2feb757c5ec8b6b23c045b0eb0c1f4" name="NetworkManager-pppoe" arch="x86_64">
  <version epoch="0" ver="1.48.10" rel="1.1"/>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678104000">- Changes from version 1.38.6 (bsc#1208631):
  + Fix honoring DNS priority.
  + Decline DHCPv6 lease when DAD fails.
  + Various bugfixes.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1724328000">- Add NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  device: don't enforce IP cleanup on deactivating state
  (bsc#1228154, glfd#NetworkManager/NetworkManager!2016).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1724673600">- Update to version 1.48.10:
  + nmcli/edit: fix memory leak in extract_setting_and_property
  + autotools: fix another filename that was renamed
  + gitlab: fix helper scripts to support DNF5
  + CI: update the imported templates_sha
  + autotools: fix filename that was renamed
  + format: run nm-code-format
  + policy: retry hostname resolution when it fails
  + platform: add small backoff time before resync
  + bridge: reapply port VLANs only when necessary
  + platform: add nmp_utils_bridge_normalized_vlans_equal()
  + platform: support reading bridge VLANs
  + device: support reapplying bridge-port VLANs
  + bridge: change the signature for
    nm_platform_link_set_bridge_vlans()
  + platform: add define for IFLA_BOND_SLAVE_PRIO
  + lldp: fix multiple access to argument in logging macro
  + lldp: fix crash dereferencing NULL pointer during debug logging
  + policy: unblock the autoconnect for children when parent is
    available</changelog>
</package>
<package pkgid="39069922ab4bbab4314f155632d96c7a4cc91c6e1cee41fa8a5672534e430f8b960d9554cd7e7ac3c2d69131cb8ec47ecb051a9547ac361afa8b80778bd1f402" name="NetworkManager-pppoe" arch="i586">
  <version epoch="0" ver="1.48.8" rel="1.1"/>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1676894400">- Add 1539.patch: Fix constructing the IPv4 nameserver variable
  (boo#1208371).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1677153600">- Update to version 1.42.2:
  + Add build option to set the mobile-broadband-provider-info
    database path.
  + Add new "ipv[46].replace-local-rule" setting to control whether
    to remove the local route rule that is automatically generated.
  + Add the DHCPv6 IAID to the lease information exposed in /run
    and on D-Bus.
  + Fix assuming team connections at boot.
  + Fix race condition when setting the MAC address of an OVS
    interface.
  + Fix constructing the IPv4 name servers variable passed to
    dispatcher scripts.
  + Don't use tentative IPv6 address to resolve the system hostname
    via DNS.
  + Deprecate the "Master" property of the NMActiveConnection D-Bus
    object in favor of the new "Controller" property.
- Drop 1539.patch: Fixed upstream.
- Refresh patch with quilt:
  + 0001-Coerce-connectivity-LIMITED-to-NONE-when-device-is-d.patch</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678104000">- Changes from version 1.38.6 (bsc#1208631):
  + Fix honoring DNS priority.
  + Decline DHCPv6 lease when DAD fails.
  + Various bugfixes.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
</package>
<package pkgid="04445736868aec2726ee3fc8197c053e6857a50a49163e5d35623d32454bf921b144e5195c4b793ef4ad28870ad3a6e6e71f2e8968e6a673a6f1f2f5b18eccb5" name="NetworkManager-pppoe" arch="x86_64">
  <version epoch="0" ver="1.48.8" rel="1.1"/>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1676894400">- Add 1539.patch: Fix constructing the IPv4 nameserver variable
  (boo#1208371).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1677153600">- Update to version 1.42.2:
  + Add build option to set the mobile-broadband-provider-info
    database path.
  + Add new "ipv[46].replace-local-rule" setting to control whether
    to remove the local route rule that is automatically generated.
  + Add the DHCPv6 IAID to the lease information exposed in /run
    and on D-Bus.
  + Fix assuming team connections at boot.
  + Fix race condition when setting the MAC address of an OVS
    interface.
  + Fix constructing the IPv4 name servers variable passed to
    dispatcher scripts.
  + Don't use tentative IPv6 address to resolve the system hostname
    via DNS.
  + Deprecate the "Master" property of the NMActiveConnection D-Bus
    object in favor of the new "Controller" property.
- Drop 1539.patch: Fixed upstream.
- Refresh patch with quilt:
  + 0001-Coerce-connectivity-LIMITED-to-NONE-when-device-is-d.patch</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678104000">- Changes from version 1.38.6 (bsc#1208631):
  + Fix honoring DNS priority.
  + Decline DHCPv6 lease when DAD fails.
  + Various bugfixes.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
</package>
<package pkgid="76e6d11bbe38b67a0900e3928429d267e25b5a0e115ff0447e352b0d7c2fd6e80d418b178adec92ca5b2149a83af730437d9b641184032c3b4696a4d6d8adc15" name="NetworkManager-pppoe" arch="i586">
  <version epoch="0" ver="1.50.0" rel="1.1"/>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1724328000">- Add NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  device: don't enforce IP cleanup on deactivating state
  (bsc#1228154, glfd#NetworkManager/NetworkManager!2016).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1724673600">- Update to version 1.48.10:
  + nmcli/edit: fix memory leak in extract_setting_and_property
  + autotools: fix another filename that was renamed
  + gitlab: fix helper scripts to support DNF5
  + CI: update the imported templates_sha
  + autotools: fix filename that was renamed
  + format: run nm-code-format
  + policy: retry hostname resolution when it fails
  + platform: add small backoff time before resync
  + bridge: reapply port VLANs only when necessary
  + platform: add nmp_utils_bridge_normalized_vlans_equal()
  + platform: support reading bridge VLANs
  + device: support reapplying bridge-port VLANs
  + bridge: change the signature for
    nm_platform_link_set_bridge_vlans()
  + platform: add define for IFLA_BOND_SLAVE_PRIO
  + lldp: fix multiple access to argument in logging macro
  + lldp: fix crash dereferencing NULL pointer during debug logging
  + policy: unblock the autoconnect for children when parent is
    available</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1727956800">- Update to version 1.50.0:
  + The support for "dhclient" has been deprecated, not built
    unless explicitely enabled, and will be removed in a future
    release. The internal DHCP client should be used instead and
    has been the default since version 1.20 (1.12 when built with
    meson).
  + Support matching a OVS system interface by MAC address.
  + Add a timeout option to connectivity checking.
  + Support configuring veth interfaces in nmtui.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.
  + Revert to using sysctl ipv6.conf.default for ip6-privacy.
  + Allow specifying a system OVS interface by MAC address.
  + ndisc: Support multiple gateways for a single network.
  + wifi: Support configuring channel-width in AP mode.
  + keyfile: Stop writing offensive terms into keyfiles.
  + Support reapplying the VLANs on bridge ports.
  + Fix crash caused by malformed LLDP package if debug log is
    enabled.
  + Retry hostname resolution when it fails.
- Drop NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  Fixed upstream.
- Rebase patches with quilt.</changelog>
</package>
<package pkgid="0a6b3cf70b0dacb1efef01065de12a69a80bb31322a8e18d625cc63a8490e7cb8ca393694e0cb1bfdf665d4991560e35463282afc710198afe084d67c8e2980c" name="NetworkManager-pppoe" arch="x86_64">
  <version epoch="0" ver="1.50.0" rel="1.1"/>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1724328000">- Add NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  device: don't enforce IP cleanup on deactivating state
  (bsc#1228154, glfd#NetworkManager/NetworkManager!2016).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1724673600">- Update to version 1.48.10:
  + nmcli/edit: fix memory leak in extract_setting_and_property
  + autotools: fix another filename that was renamed
  + gitlab: fix helper scripts to support DNF5
  + CI: update the imported templates_sha
  + autotools: fix filename that was renamed
  + format: run nm-code-format
  + policy: retry hostname resolution when it fails
  + platform: add small backoff time before resync
  + bridge: reapply port VLANs only when necessary
  + platform: add nmp_utils_bridge_normalized_vlans_equal()
  + platform: support reading bridge VLANs
  + device: support reapplying bridge-port VLANs
  + bridge: change the signature for
    nm_platform_link_set_bridge_vlans()
  + platform: add define for IFLA_BOND_SLAVE_PRIO
  + lldp: fix multiple access to argument in logging macro
  + lldp: fix crash dereferencing NULL pointer during debug logging
  + policy: unblock the autoconnect for children when parent is
    available</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1727956800">- Update to version 1.50.0:
  + The support for "dhclient" has been deprecated, not built
    unless explicitely enabled, and will be removed in a future
    release. The internal DHCP client should be used instead and
    has been the default since version 1.20 (1.12 when built with
    meson).
  + Support matching a OVS system interface by MAC address.
  + Add a timeout option to connectivity checking.
  + Support configuring veth interfaces in nmtui.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.
  + Revert to using sysctl ipv6.conf.default for ip6-privacy.
  + Allow specifying a system OVS interface by MAC address.
  + ndisc: Support multiple gateways for a single network.
  + wifi: Support configuring channel-width in AP mode.
  + keyfile: Stop writing offensive terms into keyfiles.
  + Support reapplying the VLANs on bridge ports.
  + Fix crash caused by malformed LLDP package if debug log is
    enabled.
  + Retry hostname resolution when it fails.
- Drop NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  Fixed upstream.
- Rebase patches with quilt.</changelog>
</package>
<package pkgid="28274536bea1a50df85b873a0e144651317f9b7202c1dc713a9f163e7c95239be87b133bf1e96229bbf0fb9f22baa89003b71b6d015d1ab99d9e69bb138139ce" name="NetworkManager-pppoe-debuginfo" arch="i586">
  <version epoch="0" ver="1.48.10" rel="1.0.4.1.sr20240803"/>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678104000">- Changes from version 1.38.6 (bsc#1208631):
  + Fix honoring DNS priority.
  + Decline DHCPv6 lease when DAD fails.
  + Various bugfixes.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1724328000">- Add NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  device: don't enforce IP cleanup on deactivating state
  (bsc#1228154, glfd#NetworkManager/NetworkManager!2016).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1724673600">- Update to version 1.48.10:
  + nmcli/edit: fix memory leak in extract_setting_and_property
  + autotools: fix another filename that was renamed
  + gitlab: fix helper scripts to support DNF5
  + CI: update the imported templates_sha
  + autotools: fix filename that was renamed
  + format: run nm-code-format
  + policy: retry hostname resolution when it fails
  + platform: add small backoff time before resync
  + bridge: reapply port VLANs only when necessary
  + platform: add nmp_utils_bridge_normalized_vlans_equal()
  + platform: support reading bridge VLANs
  + device: support reapplying bridge-port VLANs
  + bridge: change the signature for
    nm_platform_link_set_bridge_vlans()
  + platform: add define for IFLA_BOND_SLAVE_PRIO
  + lldp: fix multiple access to argument in logging macro
  + lldp: fix crash dereferencing NULL pointer during debug logging
  + policy: unblock the autoconnect for children when parent is
    available</changelog>
</package>
<package pkgid="faa08a9797fee68cd497627880474f4619fe459c71dbdd2cd813286b2cd4224447e310f9fa4f57e2edcd106445f6ba3dd6bd1e207cabf8fdbed994ed6e20084b" name="NetworkManager-pppoe-debuginfo" arch="x86_64">
  <version epoch="0" ver="1.48.10" rel="1.0.4.1.sr20240803"/>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678104000">- Changes from version 1.38.6 (bsc#1208631):
  + Fix honoring DNS priority.
  + Decline DHCPv6 lease when DAD fails.
  + Various bugfixes.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1724328000">- Add NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  device: don't enforce IP cleanup on deactivating state
  (bsc#1228154, glfd#NetworkManager/NetworkManager!2016).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1724673600">- Update to version 1.48.10:
  + nmcli/edit: fix memory leak in extract_setting_and_property
  + autotools: fix another filename that was renamed
  + gitlab: fix helper scripts to support DNF5
  + CI: update the imported templates_sha
  + autotools: fix filename that was renamed
  + format: run nm-code-format
  + policy: retry hostname resolution when it fails
  + platform: add small backoff time before resync
  + bridge: reapply port VLANs only when necessary
  + platform: add nmp_utils_bridge_normalized_vlans_equal()
  + platform: support reading bridge VLANs
  + device: support reapplying bridge-port VLANs
  + bridge: change the signature for
    nm_platform_link_set_bridge_vlans()
  + platform: add define for IFLA_BOND_SLAVE_PRIO
  + lldp: fix multiple access to argument in logging macro
  + lldp: fix crash dereferencing NULL pointer during debug logging
  + policy: unblock the autoconnect for children when parent is
    available</changelog>
</package>
<package pkgid="0ca65d1cfb87d35155bf9ba405cfc4b6e72ae0c528c4d91443e585dfe7b142fb35663f50f61f658fe27da07634c87a97e66e565c8bd27b87ae3185e1bc76d246" name="NetworkManager-pppoe-debuginfo" arch="i586">
  <version epoch="0" ver="1.48.10" rel="1.1"/>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678104000">- Changes from version 1.38.6 (bsc#1208631):
  + Fix honoring DNS priority.
  + Decline DHCPv6 lease when DAD fails.
  + Various bugfixes.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1724328000">- Add NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  device: don't enforce IP cleanup on deactivating state
  (bsc#1228154, glfd#NetworkManager/NetworkManager!2016).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1724673600">- Update to version 1.48.10:
  + nmcli/edit: fix memory leak in extract_setting_and_property
  + autotools: fix another filename that was renamed
  + gitlab: fix helper scripts to support DNF5
  + CI: update the imported templates_sha
  + autotools: fix filename that was renamed
  + format: run nm-code-format
  + policy: retry hostname resolution when it fails
  + platform: add small backoff time before resync
  + bridge: reapply port VLANs only when necessary
  + platform: add nmp_utils_bridge_normalized_vlans_equal()
  + platform: support reading bridge VLANs
  + device: support reapplying bridge-port VLANs
  + bridge: change the signature for
    nm_platform_link_set_bridge_vlans()
  + platform: add define for IFLA_BOND_SLAVE_PRIO
  + lldp: fix multiple access to argument in logging macro
  + lldp: fix crash dereferencing NULL pointer during debug logging
  + policy: unblock the autoconnect for children when parent is
    available</changelog>
</package>
<package pkgid="31398e175de02de8b45cb3221821b87723608ad96e0b3a39ae01a367d5bf87a7889693b2f656c22552ae76e2fc04e9a0620b38f0a5cf86ecc5d670466d548e8f" name="NetworkManager-pppoe-debuginfo" arch="x86_64">
  <version epoch="0" ver="1.48.10" rel="1.1"/>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678104000">- Changes from version 1.38.6 (bsc#1208631):
  + Fix honoring DNS priority.
  + Decline DHCPv6 lease when DAD fails.
  + Various bugfixes.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1724328000">- Add NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  device: don't enforce IP cleanup on deactivating state
  (bsc#1228154, glfd#NetworkManager/NetworkManager!2016).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1724673600">- Update to version 1.48.10:
  + nmcli/edit: fix memory leak in extract_setting_and_property
  + autotools: fix another filename that was renamed
  + gitlab: fix helper scripts to support DNF5
  + CI: update the imported templates_sha
  + autotools: fix filename that was renamed
  + format: run nm-code-format
  + policy: retry hostname resolution when it fails
  + platform: add small backoff time before resync
  + bridge: reapply port VLANs only when necessary
  + platform: add nmp_utils_bridge_normalized_vlans_equal()
  + platform: support reading bridge VLANs
  + device: support reapplying bridge-port VLANs
  + bridge: change the signature for
    nm_platform_link_set_bridge_vlans()
  + platform: add define for IFLA_BOND_SLAVE_PRIO
  + lldp: fix multiple access to argument in logging macro
  + lldp: fix crash dereferencing NULL pointer during debug logging
  + policy: unblock the autoconnect for children when parent is
    available</changelog>
</package>
<package pkgid="41ac8dc4ec22bd5fa6b2465b3bf36a8eedbebb7c7a5b72b060e2547790eb567d33c16d50292e4b3ad82b14e35f19657c9da77acd7babe0447e88afe0208436c1" name="NetworkManager-pppoe-debuginfo" arch="i586">
  <version epoch="0" ver="1.48.8" rel="1.1"/>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1676894400">- Add 1539.patch: Fix constructing the IPv4 nameserver variable
  (boo#1208371).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1677153600">- Update to version 1.42.2:
  + Add build option to set the mobile-broadband-provider-info
    database path.
  + Add new "ipv[46].replace-local-rule" setting to control whether
    to remove the local route rule that is automatically generated.
  + Add the DHCPv6 IAID to the lease information exposed in /run
    and on D-Bus.
  + Fix assuming team connections at boot.
  + Fix race condition when setting the MAC address of an OVS
    interface.
  + Fix constructing the IPv4 name servers variable passed to
    dispatcher scripts.
  + Don't use tentative IPv6 address to resolve the system hostname
    via DNS.
  + Deprecate the "Master" property of the NMActiveConnection D-Bus
    object in favor of the new "Controller" property.
- Drop 1539.patch: Fixed upstream.
- Refresh patch with quilt:
  + 0001-Coerce-connectivity-LIMITED-to-NONE-when-device-is-d.patch</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678104000">- Changes from version 1.38.6 (bsc#1208631):
  + Fix honoring DNS priority.
  + Decline DHCPv6 lease when DAD fails.
  + Various bugfixes.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
</package>
<package pkgid="5b242706a18977945b1a33c7c44ba55c4036f4d2c01c3a717ed53071cbfac786f1906e2a8232ac3e2d187bd94fe6d1a0e2371c6090623849ea7a42003ca70f32" name="NetworkManager-pppoe-debuginfo" arch="x86_64">
  <version epoch="0" ver="1.48.8" rel="1.1"/>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1676894400">- Add 1539.patch: Fix constructing the IPv4 nameserver variable
  (boo#1208371).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1677153600">- Update to version 1.42.2:
  + Add build option to set the mobile-broadband-provider-info
    database path.
  + Add new "ipv[46].replace-local-rule" setting to control whether
    to remove the local route rule that is automatically generated.
  + Add the DHCPv6 IAID to the lease information exposed in /run
    and on D-Bus.
  + Fix assuming team connections at boot.
  + Fix race condition when setting the MAC address of an OVS
    interface.
  + Fix constructing the IPv4 name servers variable passed to
    dispatcher scripts.
  + Don't use tentative IPv6 address to resolve the system hostname
    via DNS.
  + Deprecate the "Master" property of the NMActiveConnection D-Bus
    object in favor of the new "Controller" property.
- Drop 1539.patch: Fixed upstream.
- Refresh patch with quilt:
  + 0001-Coerce-connectivity-LIMITED-to-NONE-when-device-is-d.patch</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678104000">- Changes from version 1.38.6 (bsc#1208631):
  + Fix honoring DNS priority.
  + Decline DHCPv6 lease when DAD fails.
  + Various bugfixes.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
</package>
<package pkgid="2847281b9efe0c000e0a80fdd68a514de914646d3822d9a218ad05c485c3a5f53ac430745c3029d79b2eb7fcfa7c4fe576cc494bd6eb04b90ae74c46375923b5" name="NetworkManager-pppoe-debuginfo" arch="i586">
  <version epoch="0" ver="1.50.0" rel="1.1"/>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1724328000">- Add NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  device: don't enforce IP cleanup on deactivating state
  (bsc#1228154, glfd#NetworkManager/NetworkManager!2016).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1724673600">- Update to version 1.48.10:
  + nmcli/edit: fix memory leak in extract_setting_and_property
  + autotools: fix another filename that was renamed
  + gitlab: fix helper scripts to support DNF5
  + CI: update the imported templates_sha
  + autotools: fix filename that was renamed
  + format: run nm-code-format
  + policy: retry hostname resolution when it fails
  + platform: add small backoff time before resync
  + bridge: reapply port VLANs only when necessary
  + platform: add nmp_utils_bridge_normalized_vlans_equal()
  + platform: support reading bridge VLANs
  + device: support reapplying bridge-port VLANs
  + bridge: change the signature for
    nm_platform_link_set_bridge_vlans()
  + platform: add define for IFLA_BOND_SLAVE_PRIO
  + lldp: fix multiple access to argument in logging macro
  + lldp: fix crash dereferencing NULL pointer during debug logging
  + policy: unblock the autoconnect for children when parent is
    available</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1727956800">- Update to version 1.50.0:
  + The support for "dhclient" has been deprecated, not built
    unless explicitely enabled, and will be removed in a future
    release. The internal DHCP client should be used instead and
    has been the default since version 1.20 (1.12 when built with
    meson).
  + Support matching a OVS system interface by MAC address.
  + Add a timeout option to connectivity checking.
  + Support configuring veth interfaces in nmtui.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.
  + Revert to using sysctl ipv6.conf.default for ip6-privacy.
  + Allow specifying a system OVS interface by MAC address.
  + ndisc: Support multiple gateways for a single network.
  + wifi: Support configuring channel-width in AP mode.
  + keyfile: Stop writing offensive terms into keyfiles.
  + Support reapplying the VLANs on bridge ports.
  + Fix crash caused by malformed LLDP package if debug log is
    enabled.
  + Retry hostname resolution when it fails.
- Drop NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  Fixed upstream.
- Rebase patches with quilt.</changelog>
</package>
<package pkgid="9e19d4aa5713ea6b35c22cf728891f5bcca98a1af204c57bce8f55ae3a84acd60e298e013c4213c511ccfbe009bea52ea846a6304ede5ba19baf860870906792" name="NetworkManager-pppoe-debuginfo" arch="x86_64">
  <version epoch="0" ver="1.50.0" rel="1.1"/>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1724328000">- Add NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  device: don't enforce IP cleanup on deactivating state
  (bsc#1228154, glfd#NetworkManager/NetworkManager!2016).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1724673600">- Update to version 1.48.10:
  + nmcli/edit: fix memory leak in extract_setting_and_property
  + autotools: fix another filename that was renamed
  + gitlab: fix helper scripts to support DNF5
  + CI: update the imported templates_sha
  + autotools: fix filename that was renamed
  + format: run nm-code-format
  + policy: retry hostname resolution when it fails
  + platform: add small backoff time before resync
  + bridge: reapply port VLANs only when necessary
  + platform: add nmp_utils_bridge_normalized_vlans_equal()
  + platform: support reading bridge VLANs
  + device: support reapplying bridge-port VLANs
  + bridge: change the signature for
    nm_platform_link_set_bridge_vlans()
  + platform: add define for IFLA_BOND_SLAVE_PRIO
  + lldp: fix multiple access to argument in logging macro
  + lldp: fix crash dereferencing NULL pointer during debug logging
  + policy: unblock the autoconnect for children when parent is
    available</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1727956800">- Update to version 1.50.0:
  + The support for "dhclient" has been deprecated, not built
    unless explicitely enabled, and will be removed in a future
    release. The internal DHCP client should be used instead and
    has been the default since version 1.20 (1.12 when built with
    meson).
  + Support matching a OVS system interface by MAC address.
  + Add a timeout option to connectivity checking.
  + Support configuring veth interfaces in nmtui.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.
  + Revert to using sysctl ipv6.conf.default for ip6-privacy.
  + Allow specifying a system OVS interface by MAC address.
  + ndisc: Support multiple gateways for a single network.
  + wifi: Support configuring channel-width in AP mode.
  + keyfile: Stop writing offensive terms into keyfiles.
  + Support reapplying the VLANs on bridge ports.
  + Fix crash caused by malformed LLDP package if debug log is
    enabled.
  + Retry hostname resolution when it fails.
- Drop NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  Fixed upstream.
- Rebase patches with quilt.</changelog>
</package>
<package pkgid="4914e6186d8295ad776958411696b0c065e1b1b4f57a9ea8d5e4bb19311b00b7812e035a7684f354eff899a5919243719ca811a8b652ed2e854840f496938e19" name="NetworkManager-tui" arch="i586">
  <version epoch="0" ver="1.48.10" rel="1.0.4.1.sr20240803"/>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678104000">- Changes from version 1.38.6 (bsc#1208631):
  + Fix honoring DNS priority.
  + Decline DHCPv6 lease when DAD fails.
  + Various bugfixes.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1724328000">- Add NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  device: don't enforce IP cleanup on deactivating state
  (bsc#1228154, glfd#NetworkManager/NetworkManager!2016).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1724673600">- Update to version 1.48.10:
  + nmcli/edit: fix memory leak in extract_setting_and_property
  + autotools: fix another filename that was renamed
  + gitlab: fix helper scripts to support DNF5
  + CI: update the imported templates_sha
  + autotools: fix filename that was renamed
  + format: run nm-code-format
  + policy: retry hostname resolution when it fails
  + platform: add small backoff time before resync
  + bridge: reapply port VLANs only when necessary
  + platform: add nmp_utils_bridge_normalized_vlans_equal()
  + platform: support reading bridge VLANs
  + device: support reapplying bridge-port VLANs
  + bridge: change the signature for
    nm_platform_link_set_bridge_vlans()
  + platform: add define for IFLA_BOND_SLAVE_PRIO
  + lldp: fix multiple access to argument in logging macro
  + lldp: fix crash dereferencing NULL pointer during debug logging
  + policy: unblock the autoconnect for children when parent is
    available</changelog>
</package>
<package pkgid="a25502e0963be97c98935720b40ced3fb84a74d40cae9936c02ee4c300a72ecd6365b71c8ed9d37431c58ec2e60ff0108d00f42be358589bd4b66ecc60b5b8af" name="NetworkManager-tui" arch="x86_64">
  <version epoch="0" ver="1.48.10" rel="1.0.4.1.sr20240803"/>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678104000">- Changes from version 1.38.6 (bsc#1208631):
  + Fix honoring DNS priority.
  + Decline DHCPv6 lease when DAD fails.
  + Various bugfixes.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1724328000">- Add NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  device: don't enforce IP cleanup on deactivating state
  (bsc#1228154, glfd#NetworkManager/NetworkManager!2016).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1724673600">- Update to version 1.48.10:
  + nmcli/edit: fix memory leak in extract_setting_and_property
  + autotools: fix another filename that was renamed
  + gitlab: fix helper scripts to support DNF5
  + CI: update the imported templates_sha
  + autotools: fix filename that was renamed
  + format: run nm-code-format
  + policy: retry hostname resolution when it fails
  + platform: add small backoff time before resync
  + bridge: reapply port VLANs only when necessary
  + platform: add nmp_utils_bridge_normalized_vlans_equal()
  + platform: support reading bridge VLANs
  + device: support reapplying bridge-port VLANs
  + bridge: change the signature for
    nm_platform_link_set_bridge_vlans()
  + platform: add define for IFLA_BOND_SLAVE_PRIO
  + lldp: fix multiple access to argument in logging macro
  + lldp: fix crash dereferencing NULL pointer during debug logging
  + policy: unblock the autoconnect for children when parent is
    available</changelog>
</package>
<package pkgid="95efb4cc6d0a8e98fcd9b57ddf75ef24d72247d630254dfe5c86d1bca10d58b591f14747f4aba7fc5170fdd9610570579ca6a916df503a1b928414be147b6e2e" name="NetworkManager-tui" arch="i586">
  <version epoch="0" ver="1.48.10" rel="1.1"/>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678104000">- Changes from version 1.38.6 (bsc#1208631):
  + Fix honoring DNS priority.
  + Decline DHCPv6 lease when DAD fails.
  + Various bugfixes.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1724328000">- Add NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  device: don't enforce IP cleanup on deactivating state
  (bsc#1228154, glfd#NetworkManager/NetworkManager!2016).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1724673600">- Update to version 1.48.10:
  + nmcli/edit: fix memory leak in extract_setting_and_property
  + autotools: fix another filename that was renamed
  + gitlab: fix helper scripts to support DNF5
  + CI: update the imported templates_sha
  + autotools: fix filename that was renamed
  + format: run nm-code-format
  + policy: retry hostname resolution when it fails
  + platform: add small backoff time before resync
  + bridge: reapply port VLANs only when necessary
  + platform: add nmp_utils_bridge_normalized_vlans_equal()
  + platform: support reading bridge VLANs
  + device: support reapplying bridge-port VLANs
  + bridge: change the signature for
    nm_platform_link_set_bridge_vlans()
  + platform: add define for IFLA_BOND_SLAVE_PRIO
  + lldp: fix multiple access to argument in logging macro
  + lldp: fix crash dereferencing NULL pointer during debug logging
  + policy: unblock the autoconnect for children when parent is
    available</changelog>
</package>
<package pkgid="e9ebfaf75c9ed66341538758ddaac159fe7761b5c41803b7c939de77904f676ae9dea9a4a992094bf08b91fba57f97ea1dc8aa4bc857ccd9e2b40553857011f8" name="NetworkManager-tui" arch="x86_64">
  <version epoch="0" ver="1.48.10" rel="1.1"/>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678104000">- Changes from version 1.38.6 (bsc#1208631):
  + Fix honoring DNS priority.
  + Decline DHCPv6 lease when DAD fails.
  + Various bugfixes.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1724328000">- Add NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  device: don't enforce IP cleanup on deactivating state
  (bsc#1228154, glfd#NetworkManager/NetworkManager!2016).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1724673600">- Update to version 1.48.10:
  + nmcli/edit: fix memory leak in extract_setting_and_property
  + autotools: fix another filename that was renamed
  + gitlab: fix helper scripts to support DNF5
  + CI: update the imported templates_sha
  + autotools: fix filename that was renamed
  + format: run nm-code-format
  + policy: retry hostname resolution when it fails
  + platform: add small backoff time before resync
  + bridge: reapply port VLANs only when necessary
  + platform: add nmp_utils_bridge_normalized_vlans_equal()
  + platform: support reading bridge VLANs
  + device: support reapplying bridge-port VLANs
  + bridge: change the signature for
    nm_platform_link_set_bridge_vlans()
  + platform: add define for IFLA_BOND_SLAVE_PRIO
  + lldp: fix multiple access to argument in logging macro
  + lldp: fix crash dereferencing NULL pointer during debug logging
  + policy: unblock the autoconnect for children when parent is
    available</changelog>
</package>
<package pkgid="c55049763e4f213267d359769ba17e09715cde31a7abff83d4b8fc2eedd6514a79998fdc292d05b6e6a8fe2841a9efa85c7a864be6513b55fc9ffc36f1f245e5" name="NetworkManager-tui" arch="i586">
  <version epoch="0" ver="1.48.8" rel="1.1"/>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1676894400">- Add 1539.patch: Fix constructing the IPv4 nameserver variable
  (boo#1208371).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1677153600">- Update to version 1.42.2:
  + Add build option to set the mobile-broadband-provider-info
    database path.
  + Add new "ipv[46].replace-local-rule" setting to control whether
    to remove the local route rule that is automatically generated.
  + Add the DHCPv6 IAID to the lease information exposed in /run
    and on D-Bus.
  + Fix assuming team connections at boot.
  + Fix race condition when setting the MAC address of an OVS
    interface.
  + Fix constructing the IPv4 name servers variable passed to
    dispatcher scripts.
  + Don't use tentative IPv6 address to resolve the system hostname
    via DNS.
  + Deprecate the "Master" property of the NMActiveConnection D-Bus
    object in favor of the new "Controller" property.
- Drop 1539.patch: Fixed upstream.
- Refresh patch with quilt:
  + 0001-Coerce-connectivity-LIMITED-to-NONE-when-device-is-d.patch</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678104000">- Changes from version 1.38.6 (bsc#1208631):
  + Fix honoring DNS priority.
  + Decline DHCPv6 lease when DAD fails.
  + Various bugfixes.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
</package>
<package pkgid="7b6446cd3dddbfaa8b4b41b576586b0bea28d29e29bb9d0066ceb27cc4681e52af8112d52d0bce4a6d65a0de991a07f02896328df9f693843195fa7d433dfc86" name="NetworkManager-tui" arch="x86_64">
  <version epoch="0" ver="1.48.8" rel="1.1"/>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1676894400">- Add 1539.patch: Fix constructing the IPv4 nameserver variable
  (boo#1208371).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1677153600">- Update to version 1.42.2:
  + Add build option to set the mobile-broadband-provider-info
    database path.
  + Add new "ipv[46].replace-local-rule" setting to control whether
    to remove the local route rule that is automatically generated.
  + Add the DHCPv6 IAID to the lease information exposed in /run
    and on D-Bus.
  + Fix assuming team connections at boot.
  + Fix race condition when setting the MAC address of an OVS
    interface.
  + Fix constructing the IPv4 name servers variable passed to
    dispatcher scripts.
  + Don't use tentative IPv6 address to resolve the system hostname
    via DNS.
  + Deprecate the "Master" property of the NMActiveConnection D-Bus
    object in favor of the new "Controller" property.
- Drop 1539.patch: Fixed upstream.
- Refresh patch with quilt:
  + 0001-Coerce-connectivity-LIMITED-to-NONE-when-device-is-d.patch</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678104000">- Changes from version 1.38.6 (bsc#1208631):
  + Fix honoring DNS priority.
  + Decline DHCPv6 lease when DAD fails.
  + Various bugfixes.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
</package>
<package pkgid="e7ec87c869c89a4c232d80872552167d169cff9f6e3381b28c0f09fb4b096bc395f02bffc669ecd494db1eb85321fa3a1ffb5c93f0a616ecf4e06a3f9859e348" name="NetworkManager-tui" arch="i586">
  <version epoch="0" ver="1.50.0" rel="1.1"/>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1724328000">- Add NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  device: don't enforce IP cleanup on deactivating state
  (bsc#1228154, glfd#NetworkManager/NetworkManager!2016).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1724673600">- Update to version 1.48.10:
  + nmcli/edit: fix memory leak in extract_setting_and_property
  + autotools: fix another filename that was renamed
  + gitlab: fix helper scripts to support DNF5
  + CI: update the imported templates_sha
  + autotools: fix filename that was renamed
  + format: run nm-code-format
  + policy: retry hostname resolution when it fails
  + platform: add small backoff time before resync
  + bridge: reapply port VLANs only when necessary
  + platform: add nmp_utils_bridge_normalized_vlans_equal()
  + platform: support reading bridge VLANs
  + device: support reapplying bridge-port VLANs
  + bridge: change the signature for
    nm_platform_link_set_bridge_vlans()
  + platform: add define for IFLA_BOND_SLAVE_PRIO
  + lldp: fix multiple access to argument in logging macro
  + lldp: fix crash dereferencing NULL pointer during debug logging
  + policy: unblock the autoconnect for children when parent is
    available</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1727956800">- Update to version 1.50.0:
  + The support for "dhclient" has been deprecated, not built
    unless explicitely enabled, and will be removed in a future
    release. The internal DHCP client should be used instead and
    has been the default since version 1.20 (1.12 when built with
    meson).
  + Support matching a OVS system interface by MAC address.
  + Add a timeout option to connectivity checking.
  + Support configuring veth interfaces in nmtui.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.
  + Revert to using sysctl ipv6.conf.default for ip6-privacy.
  + Allow specifying a system OVS interface by MAC address.
  + ndisc: Support multiple gateways for a single network.
  + wifi: Support configuring channel-width in AP mode.
  + keyfile: Stop writing offensive terms into keyfiles.
  + Support reapplying the VLANs on bridge ports.
  + Fix crash caused by malformed LLDP package if debug log is
    enabled.
  + Retry hostname resolution when it fails.
- Drop NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  Fixed upstream.
- Rebase patches with quilt.</changelog>
</package>
<package pkgid="113e397976ac0df5b0812c22652a079e0d3721e81fb88c37fdece73569eeb4b78c18a9773811451ffb5d1b130e2368c9a83ba9f895db677b1ab4e6a144ffcee5" name="NetworkManager-tui" arch="x86_64">
  <version epoch="0" ver="1.50.0" rel="1.1"/>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1724328000">- Add NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  device: don't enforce IP cleanup on deactivating state
  (bsc#1228154, glfd#NetworkManager/NetworkManager!2016).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1724673600">- Update to version 1.48.10:
  + nmcli/edit: fix memory leak in extract_setting_and_property
  + autotools: fix another filename that was renamed
  + gitlab: fix helper scripts to support DNF5
  + CI: update the imported templates_sha
  + autotools: fix filename that was renamed
  + format: run nm-code-format
  + policy: retry hostname resolution when it fails
  + platform: add small backoff time before resync
  + bridge: reapply port VLANs only when necessary
  + platform: add nmp_utils_bridge_normalized_vlans_equal()
  + platform: support reading bridge VLANs
  + device: support reapplying bridge-port VLANs
  + bridge: change the signature for
    nm_platform_link_set_bridge_vlans()
  + platform: add define for IFLA_BOND_SLAVE_PRIO
  + lldp: fix multiple access to argument in logging macro
  + lldp: fix crash dereferencing NULL pointer during debug logging
  + policy: unblock the autoconnect for children when parent is
    available</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1727956800">- Update to version 1.50.0:
  + The support for "dhclient" has been deprecated, not built
    unless explicitely enabled, and will be removed in a future
    release. The internal DHCP client should be used instead and
    has been the default since version 1.20 (1.12 when built with
    meson).
  + Support matching a OVS system interface by MAC address.
  + Add a timeout option to connectivity checking.
  + Support configuring veth interfaces in nmtui.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.
  + Revert to using sysctl ipv6.conf.default for ip6-privacy.
  + Allow specifying a system OVS interface by MAC address.
  + ndisc: Support multiple gateways for a single network.
  + wifi: Support configuring channel-width in AP mode.
  + keyfile: Stop writing offensive terms into keyfiles.
  + Support reapplying the VLANs on bridge ports.
  + Fix crash caused by malformed LLDP package if debug log is
    enabled.
  + Retry hostname resolution when it fails.
- Drop NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  Fixed upstream.
- Rebase patches with quilt.</changelog>
</package>
<package pkgid="bb0016bb3e342c857d4e583b9a134d89baa3b387d29469c5c3884282f3f0b16b308d0ae8d92c6e6c7a1bffd51e3ccb1d8cd53fdec73b40c1e7290886b6afdf92" name="NetworkManager-tui-debuginfo" arch="i586">
  <version epoch="0" ver="1.48.10" rel="1.0.4.1.sr20240803"/>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678104000">- Changes from version 1.38.6 (bsc#1208631):
  + Fix honoring DNS priority.
  + Decline DHCPv6 lease when DAD fails.
  + Various bugfixes.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1724328000">- Add NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  device: don't enforce IP cleanup on deactivating state
  (bsc#1228154, glfd#NetworkManager/NetworkManager!2016).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1724673600">- Update to version 1.48.10:
  + nmcli/edit: fix memory leak in extract_setting_and_property
  + autotools: fix another filename that was renamed
  + gitlab: fix helper scripts to support DNF5
  + CI: update the imported templates_sha
  + autotools: fix filename that was renamed
  + format: run nm-code-format
  + policy: retry hostname resolution when it fails
  + platform: add small backoff time before resync
  + bridge: reapply port VLANs only when necessary
  + platform: add nmp_utils_bridge_normalized_vlans_equal()
  + platform: support reading bridge VLANs
  + device: support reapplying bridge-port VLANs
  + bridge: change the signature for
    nm_platform_link_set_bridge_vlans()
  + platform: add define for IFLA_BOND_SLAVE_PRIO
  + lldp: fix multiple access to argument in logging macro
  + lldp: fix crash dereferencing NULL pointer during debug logging
  + policy: unblock the autoconnect for children when parent is
    available</changelog>
</package>
<package pkgid="ab08a3fb84865f574c7f315fc63f2e918578e2e083607b298bbf1e5ac95cd2dbad006bee4633ab481a9573a949e3b83a901b261a1c9ed55ae30a2ed763b348cb" name="NetworkManager-tui-debuginfo" arch="x86_64">
  <version epoch="0" ver="1.48.10" rel="1.0.4.1.sr20240803"/>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678104000">- Changes from version 1.38.6 (bsc#1208631):
  + Fix honoring DNS priority.
  + Decline DHCPv6 lease when DAD fails.
  + Various bugfixes.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1724328000">- Add NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  device: don't enforce IP cleanup on deactivating state
  (bsc#1228154, glfd#NetworkManager/NetworkManager!2016).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1724673600">- Update to version 1.48.10:
  + nmcli/edit: fix memory leak in extract_setting_and_property
  + autotools: fix another filename that was renamed
  + gitlab: fix helper scripts to support DNF5
  + CI: update the imported templates_sha
  + autotools: fix filename that was renamed
  + format: run nm-code-format
  + policy: retry hostname resolution when it fails
  + platform: add small backoff time before resync
  + bridge: reapply port VLANs only when necessary
  + platform: add nmp_utils_bridge_normalized_vlans_equal()
  + platform: support reading bridge VLANs
  + device: support reapplying bridge-port VLANs
  + bridge: change the signature for
    nm_platform_link_set_bridge_vlans()
  + platform: add define for IFLA_BOND_SLAVE_PRIO
  + lldp: fix multiple access to argument in logging macro
  + lldp: fix crash dereferencing NULL pointer during debug logging
  + policy: unblock the autoconnect for children when parent is
    available</changelog>
</package>
<package pkgid="510b79431218249ffdf43f785cac3e7661a81c0008fe9394586ca1c42bb8bc6a678dc3926adb39a9e1838768dbb8136f482e5f57cd15fa34f65a53648f48d1a0" name="NetworkManager-tui-debuginfo" arch="i586">
  <version epoch="0" ver="1.48.10" rel="1.1"/>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678104000">- Changes from version 1.38.6 (bsc#1208631):
  + Fix honoring DNS priority.
  + Decline DHCPv6 lease when DAD fails.
  + Various bugfixes.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1724328000">- Add NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  device: don't enforce IP cleanup on deactivating state
  (bsc#1228154, glfd#NetworkManager/NetworkManager!2016).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1724673600">- Update to version 1.48.10:
  + nmcli/edit: fix memory leak in extract_setting_and_property
  + autotools: fix another filename that was renamed
  + gitlab: fix helper scripts to support DNF5
  + CI: update the imported templates_sha
  + autotools: fix filename that was renamed
  + format: run nm-code-format
  + policy: retry hostname resolution when it fails
  + platform: add small backoff time before resync
  + bridge: reapply port VLANs only when necessary
  + platform: add nmp_utils_bridge_normalized_vlans_equal()
  + platform: support reading bridge VLANs
  + device: support reapplying bridge-port VLANs
  + bridge: change the signature for
    nm_platform_link_set_bridge_vlans()
  + platform: add define for IFLA_BOND_SLAVE_PRIO
  + lldp: fix multiple access to argument in logging macro
  + lldp: fix crash dereferencing NULL pointer during debug logging
  + policy: unblock the autoconnect for children when parent is
    available</changelog>
</package>
<package pkgid="70a5f507f272525e41428dd7f4bd5289d6a2184bfaacac160b8724ae87c569696163a21b19422808184a32975f2fab5c04134320bba0e5956bad95ac998134ed" name="NetworkManager-tui-debuginfo" arch="x86_64">
  <version epoch="0" ver="1.48.10" rel="1.1"/>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678104000">- Changes from version 1.38.6 (bsc#1208631):
  + Fix honoring DNS priority.
  + Decline DHCPv6 lease when DAD fails.
  + Various bugfixes.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1724328000">- Add NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  device: don't enforce IP cleanup on deactivating state
  (bsc#1228154, glfd#NetworkManager/NetworkManager!2016).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1724673600">- Update to version 1.48.10:
  + nmcli/edit: fix memory leak in extract_setting_and_property
  + autotools: fix another filename that was renamed
  + gitlab: fix helper scripts to support DNF5
  + CI: update the imported templates_sha
  + autotools: fix filename that was renamed
  + format: run nm-code-format
  + policy: retry hostname resolution when it fails
  + platform: add small backoff time before resync
  + bridge: reapply port VLANs only when necessary
  + platform: add nmp_utils_bridge_normalized_vlans_equal()
  + platform: support reading bridge VLANs
  + device: support reapplying bridge-port VLANs
  + bridge: change the signature for
    nm_platform_link_set_bridge_vlans()
  + platform: add define for IFLA_BOND_SLAVE_PRIO
  + lldp: fix multiple access to argument in logging macro
  + lldp: fix crash dereferencing NULL pointer during debug logging
  + policy: unblock the autoconnect for children when parent is
    available</changelog>
</package>
<package pkgid="2eacb585fda2365802517f10464c99ac3e277ee38bac489aafcd3b42ca4224d407e1abbfc6ba28798578bdc40f3ce135cad5358fc1d9706faca5781cf9aa315d" name="NetworkManager-tui-debuginfo" arch="i586">
  <version epoch="0" ver="1.48.8" rel="1.1"/>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1676894400">- Add 1539.patch: Fix constructing the IPv4 nameserver variable
  (boo#1208371).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1677153600">- Update to version 1.42.2:
  + Add build option to set the mobile-broadband-provider-info
    database path.
  + Add new "ipv[46].replace-local-rule" setting to control whether
    to remove the local route rule that is automatically generated.
  + Add the DHCPv6 IAID to the lease information exposed in /run
    and on D-Bus.
  + Fix assuming team connections at boot.
  + Fix race condition when setting the MAC address of an OVS
    interface.
  + Fix constructing the IPv4 name servers variable passed to
    dispatcher scripts.
  + Don't use tentative IPv6 address to resolve the system hostname
    via DNS.
  + Deprecate the "Master" property of the NMActiveConnection D-Bus
    object in favor of the new "Controller" property.
- Drop 1539.patch: Fixed upstream.
- Refresh patch with quilt:
  + 0001-Coerce-connectivity-LIMITED-to-NONE-when-device-is-d.patch</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678104000">- Changes from version 1.38.6 (bsc#1208631):
  + Fix honoring DNS priority.
  + Decline DHCPv6 lease when DAD fails.
  + Various bugfixes.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
</package>
<package pkgid="397599ed205560a4d916d581e189469b2d8910cd3f26758b1a0b2bf17651c18664bc99d7b87ccb6b1958db579a54fbd1745cd1881d6f2b3409adc9a79539d017" name="NetworkManager-tui-debuginfo" arch="x86_64">
  <version epoch="0" ver="1.48.8" rel="1.1"/>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1676894400">- Add 1539.patch: Fix constructing the IPv4 nameserver variable
  (boo#1208371).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1677153600">- Update to version 1.42.2:
  + Add build option to set the mobile-broadband-provider-info
    database path.
  + Add new "ipv[46].replace-local-rule" setting to control whether
    to remove the local route rule that is automatically generated.
  + Add the DHCPv6 IAID to the lease information exposed in /run
    and on D-Bus.
  + Fix assuming team connections at boot.
  + Fix race condition when setting the MAC address of an OVS
    interface.
  + Fix constructing the IPv4 name servers variable passed to
    dispatcher scripts.
  + Don't use tentative IPv6 address to resolve the system hostname
    via DNS.
  + Deprecate the "Master" property of the NMActiveConnection D-Bus
    object in favor of the new "Controller" property.
- Drop 1539.patch: Fixed upstream.
- Refresh patch with quilt:
  + 0001-Coerce-connectivity-LIMITED-to-NONE-when-device-is-d.patch</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678104000">- Changes from version 1.38.6 (bsc#1208631):
  + Fix honoring DNS priority.
  + Decline DHCPv6 lease when DAD fails.
  + Various bugfixes.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
</package>
<package pkgid="1834e170f6271ffa322ae21dacb0fd659951a2e614f1cf53104d8aede4b0ab024cfbd9c95770be72346f95149e8baebd1cac4b450be3c17894e01f0858afa671" name="NetworkManager-tui-debuginfo" arch="i586">
  <version epoch="0" ver="1.50.0" rel="1.1"/>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1724328000">- Add NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  device: don't enforce IP cleanup on deactivating state
  (bsc#1228154, glfd#NetworkManager/NetworkManager!2016).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1724673600">- Update to version 1.48.10:
  + nmcli/edit: fix memory leak in extract_setting_and_property
  + autotools: fix another filename that was renamed
  + gitlab: fix helper scripts to support DNF5
  + CI: update the imported templates_sha
  + autotools: fix filename that was renamed
  + format: run nm-code-format
  + policy: retry hostname resolution when it fails
  + platform: add small backoff time before resync
  + bridge: reapply port VLANs only when necessary
  + platform: add nmp_utils_bridge_normalized_vlans_equal()
  + platform: support reading bridge VLANs
  + device: support reapplying bridge-port VLANs
  + bridge: change the signature for
    nm_platform_link_set_bridge_vlans()
  + platform: add define for IFLA_BOND_SLAVE_PRIO
  + lldp: fix multiple access to argument in logging macro
  + lldp: fix crash dereferencing NULL pointer during debug logging
  + policy: unblock the autoconnect for children when parent is
    available</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1727956800">- Update to version 1.50.0:
  + The support for "dhclient" has been deprecated, not built
    unless explicitely enabled, and will be removed in a future
    release. The internal DHCP client should be used instead and
    has been the default since version 1.20 (1.12 when built with
    meson).
  + Support matching a OVS system interface by MAC address.
  + Add a timeout option to connectivity checking.
  + Support configuring veth interfaces in nmtui.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.
  + Revert to using sysctl ipv6.conf.default for ip6-privacy.
  + Allow specifying a system OVS interface by MAC address.
  + ndisc: Support multiple gateways for a single network.
  + wifi: Support configuring channel-width in AP mode.
  + keyfile: Stop writing offensive terms into keyfiles.
  + Support reapplying the VLANs on bridge ports.
  + Fix crash caused by malformed LLDP package if debug log is
    enabled.
  + Retry hostname resolution when it fails.
- Drop NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  Fixed upstream.
- Rebase patches with quilt.</changelog>
</package>
<package pkgid="d2af9f0ac76c98d1ab4d0cb91f6b602baedcce2012e1722a6fdeff415dd48410cfa55a46a76aec69fc8cb263fb32c27d4c2cc10760c70d0345cefadc065fadc1" name="NetworkManager-tui-debuginfo" arch="x86_64">
  <version epoch="0" ver="1.50.0" rel="1.1"/>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1724328000">- Add NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  device: don't enforce IP cleanup on deactivating state
  (bsc#1228154, glfd#NetworkManager/NetworkManager!2016).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1724673600">- Update to version 1.48.10:
  + nmcli/edit: fix memory leak in extract_setting_and_property
  + autotools: fix another filename that was renamed
  + gitlab: fix helper scripts to support DNF5
  + CI: update the imported templates_sha
  + autotools: fix filename that was renamed
  + format: run nm-code-format
  + policy: retry hostname resolution when it fails
  + platform: add small backoff time before resync
  + bridge: reapply port VLANs only when necessary
  + platform: add nmp_utils_bridge_normalized_vlans_equal()
  + platform: support reading bridge VLANs
  + device: support reapplying bridge-port VLANs
  + bridge: change the signature for
    nm_platform_link_set_bridge_vlans()
  + platform: add define for IFLA_BOND_SLAVE_PRIO
  + lldp: fix multiple access to argument in logging macro
  + lldp: fix crash dereferencing NULL pointer during debug logging
  + policy: unblock the autoconnect for children when parent is
    available</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1727956800">- Update to version 1.50.0:
  + The support for "dhclient" has been deprecated, not built
    unless explicitely enabled, and will be removed in a future
    release. The internal DHCP client should be used instead and
    has been the default since version 1.20 (1.12 when built with
    meson).
  + Support matching a OVS system interface by MAC address.
  + Add a timeout option to connectivity checking.
  + Support configuring veth interfaces in nmtui.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.
  + Revert to using sysctl ipv6.conf.default for ip6-privacy.
  + Allow specifying a system OVS interface by MAC address.
  + ndisc: Support multiple gateways for a single network.
  + wifi: Support configuring channel-width in AP mode.
  + keyfile: Stop writing offensive terms into keyfiles.
  + Support reapplying the VLANs on bridge ports.
  + Fix crash caused by malformed LLDP package if debug log is
    enabled.
  + Retry hostname resolution when it fails.
- Drop NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  Fixed upstream.
- Rebase patches with quilt.</changelog>
</package>
<package pkgid="e56aba9c12105156d35926324750d7eebfe9e00ce0aecbc6ab8525332a040958a086398bb4e90e1ed3aeccd8fa2fc71735636f9f922f05a27325826bdbbfcf21" name="NetworkManager-wwan" arch="i586">
  <version epoch="0" ver="1.48.10" rel="1.0.4.1.sr20240803"/>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678104000">- Changes from version 1.38.6 (bsc#1208631):
  + Fix honoring DNS priority.
  + Decline DHCPv6 lease when DAD fails.
  + Various bugfixes.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1724328000">- Add NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  device: don't enforce IP cleanup on deactivating state
  (bsc#1228154, glfd#NetworkManager/NetworkManager!2016).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1724673600">- Update to version 1.48.10:
  + nmcli/edit: fix memory leak in extract_setting_and_property
  + autotools: fix another filename that was renamed
  + gitlab: fix helper scripts to support DNF5
  + CI: update the imported templates_sha
  + autotools: fix filename that was renamed
  + format: run nm-code-format
  + policy: retry hostname resolution when it fails
  + platform: add small backoff time before resync
  + bridge: reapply port VLANs only when necessary
  + platform: add nmp_utils_bridge_normalized_vlans_equal()
  + platform: support reading bridge VLANs
  + device: support reapplying bridge-port VLANs
  + bridge: change the signature for
    nm_platform_link_set_bridge_vlans()
  + platform: add define for IFLA_BOND_SLAVE_PRIO
  + lldp: fix multiple access to argument in logging macro
  + lldp: fix crash dereferencing NULL pointer during debug logging
  + policy: unblock the autoconnect for children when parent is
    available</changelog>
</package>
<package pkgid="088d128d2619f679420b665b0c312846cc4ea5c8cbc098906e40143b1d9306736f63891cd7bc2604a1f1a70c86614ec80b32458a340251f654ca698539e58aae" name="NetworkManager-wwan" arch="x86_64">
  <version epoch="0" ver="1.48.10" rel="1.0.4.1.sr20240803"/>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678104000">- Changes from version 1.38.6 (bsc#1208631):
  + Fix honoring DNS priority.
  + Decline DHCPv6 lease when DAD fails.
  + Various bugfixes.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1724328000">- Add NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  device: don't enforce IP cleanup on deactivating state
  (bsc#1228154, glfd#NetworkManager/NetworkManager!2016).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1724673600">- Update to version 1.48.10:
  + nmcli/edit: fix memory leak in extract_setting_and_property
  + autotools: fix another filename that was renamed
  + gitlab: fix helper scripts to support DNF5
  + CI: update the imported templates_sha
  + autotools: fix filename that was renamed
  + format: run nm-code-format
  + policy: retry hostname resolution when it fails
  + platform: add small backoff time before resync
  + bridge: reapply port VLANs only when necessary
  + platform: add nmp_utils_bridge_normalized_vlans_equal()
  + platform: support reading bridge VLANs
  + device: support reapplying bridge-port VLANs
  + bridge: change the signature for
    nm_platform_link_set_bridge_vlans()
  + platform: add define for IFLA_BOND_SLAVE_PRIO
  + lldp: fix multiple access to argument in logging macro
  + lldp: fix crash dereferencing NULL pointer during debug logging
  + policy: unblock the autoconnect for children when parent is
    available</changelog>
</package>
<package pkgid="cc7b7bb861b2b90313c74b103a2fcca1a1839d0a17514ce608dc7670132c7a97d36bca8cb22f0dd9ba3dacd318165fcde8cc2baa1f2d652c48b895f2778630e6" name="NetworkManager-wwan" arch="i586">
  <version epoch="0" ver="1.48.10" rel="1.1"/>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678104000">- Changes from version 1.38.6 (bsc#1208631):
  + Fix honoring DNS priority.
  + Decline DHCPv6 lease when DAD fails.
  + Various bugfixes.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1724328000">- Add NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  device: don't enforce IP cleanup on deactivating state
  (bsc#1228154, glfd#NetworkManager/NetworkManager!2016).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1724673600">- Update to version 1.48.10:
  + nmcli/edit: fix memory leak in extract_setting_and_property
  + autotools: fix another filename that was renamed
  + gitlab: fix helper scripts to support DNF5
  + CI: update the imported templates_sha
  + autotools: fix filename that was renamed
  + format: run nm-code-format
  + policy: retry hostname resolution when it fails
  + platform: add small backoff time before resync
  + bridge: reapply port VLANs only when necessary
  + platform: add nmp_utils_bridge_normalized_vlans_equal()
  + platform: support reading bridge VLANs
  + device: support reapplying bridge-port VLANs
  + bridge: change the signature for
    nm_platform_link_set_bridge_vlans()
  + platform: add define for IFLA_BOND_SLAVE_PRIO
  + lldp: fix multiple access to argument in logging macro
  + lldp: fix crash dereferencing NULL pointer during debug logging
  + policy: unblock the autoconnect for children when parent is
    available</changelog>
</package>
<package pkgid="4d661a22f6461c89bbab8458bd547e9f10f4105e4587dece9d1b0e2bef873d3a45fd19db437d6cefc1f4fc9e0c205f6a624ff00c5b46ab1a3526f9f06f66bcc5" name="NetworkManager-wwan" arch="x86_64">
  <version epoch="0" ver="1.48.10" rel="1.1"/>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678104000">- Changes from version 1.38.6 (bsc#1208631):
  + Fix honoring DNS priority.
  + Decline DHCPv6 lease when DAD fails.
  + Various bugfixes.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1724328000">- Add NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  device: don't enforce IP cleanup on deactivating state
  (bsc#1228154, glfd#NetworkManager/NetworkManager!2016).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1724673600">- Update to version 1.48.10:
  + nmcli/edit: fix memory leak in extract_setting_and_property
  + autotools: fix another filename that was renamed
  + gitlab: fix helper scripts to support DNF5
  + CI: update the imported templates_sha
  + autotools: fix filename that was renamed
  + format: run nm-code-format
  + policy: retry hostname resolution when it fails
  + platform: add small backoff time before resync
  + bridge: reapply port VLANs only when necessary
  + platform: add nmp_utils_bridge_normalized_vlans_equal()
  + platform: support reading bridge VLANs
  + device: support reapplying bridge-port VLANs
  + bridge: change the signature for
    nm_platform_link_set_bridge_vlans()
  + platform: add define for IFLA_BOND_SLAVE_PRIO
  + lldp: fix multiple access to argument in logging macro
  + lldp: fix crash dereferencing NULL pointer during debug logging
  + policy: unblock the autoconnect for children when parent is
    available</changelog>
</package>
<package pkgid="c3d31703af3995ad550fbb01b9d19bb4906a009f1e29732481446ffb62b30074affd06f6b745c5e9010bf313eedd09c3a9d090b5729292ae8defeb586cfde473" name="NetworkManager-wwan" arch="i586">
  <version epoch="0" ver="1.48.8" rel="1.1"/>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1676894400">- Add 1539.patch: Fix constructing the IPv4 nameserver variable
  (boo#1208371).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1677153600">- Update to version 1.42.2:
  + Add build option to set the mobile-broadband-provider-info
    database path.
  + Add new "ipv[46].replace-local-rule" setting to control whether
    to remove the local route rule that is automatically generated.
  + Add the DHCPv6 IAID to the lease information exposed in /run
    and on D-Bus.
  + Fix assuming team connections at boot.
  + Fix race condition when setting the MAC address of an OVS
    interface.
  + Fix constructing the IPv4 name servers variable passed to
    dispatcher scripts.
  + Don't use tentative IPv6 address to resolve the system hostname
    via DNS.
  + Deprecate the "Master" property of the NMActiveConnection D-Bus
    object in favor of the new "Controller" property.
- Drop 1539.patch: Fixed upstream.
- Refresh patch with quilt:
  + 0001-Coerce-connectivity-LIMITED-to-NONE-when-device-is-d.patch</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678104000">- Changes from version 1.38.6 (bsc#1208631):
  + Fix honoring DNS priority.
  + Decline DHCPv6 lease when DAD fails.
  + Various bugfixes.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
</package>
<package pkgid="ea6a88950d9fdcaaf961b82967fff6b393d86c887781fc79a13bc9b6e131055f29045efd8eb5c5be86683eb43ed8d439e81683e2601c824b5c539f4f8faa5afb" name="NetworkManager-wwan" arch="x86_64">
  <version epoch="0" ver="1.48.8" rel="1.1"/>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1676894400">- Add 1539.patch: Fix constructing the IPv4 nameserver variable
  (boo#1208371).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1677153600">- Update to version 1.42.2:
  + Add build option to set the mobile-broadband-provider-info
    database path.
  + Add new "ipv[46].replace-local-rule" setting to control whether
    to remove the local route rule that is automatically generated.
  + Add the DHCPv6 IAID to the lease information exposed in /run
    and on D-Bus.
  + Fix assuming team connections at boot.
  + Fix race condition when setting the MAC address of an OVS
    interface.
  + Fix constructing the IPv4 name servers variable passed to
    dispatcher scripts.
  + Don't use tentative IPv6 address to resolve the system hostname
    via DNS.
  + Deprecate the "Master" property of the NMActiveConnection D-Bus
    object in favor of the new "Controller" property.
- Drop 1539.patch: Fixed upstream.
- Refresh patch with quilt:
  + 0001-Coerce-connectivity-LIMITED-to-NONE-when-device-is-d.patch</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678104000">- Changes from version 1.38.6 (bsc#1208631):
  + Fix honoring DNS priority.
  + Decline DHCPv6 lease when DAD fails.
  + Various bugfixes.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
</package>
<package pkgid="bb7bee4cc8ac18b9f761b3c54ec1545427905833f887de98a0655b0ac00bdd9478814b0599cca92ed87d0e95b0a0957b003a90e9c889c30c03381b2e9d7ecc08" name="NetworkManager-wwan" arch="i586">
  <version epoch="0" ver="1.50.0" rel="1.1"/>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1724328000">- Add NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  device: don't enforce IP cleanup on deactivating state
  (bsc#1228154, glfd#NetworkManager/NetworkManager!2016).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1724673600">- Update to version 1.48.10:
  + nmcli/edit: fix memory leak in extract_setting_and_property
  + autotools: fix another filename that was renamed
  + gitlab: fix helper scripts to support DNF5
  + CI: update the imported templates_sha
  + autotools: fix filename that was renamed
  + format: run nm-code-format
  + policy: retry hostname resolution when it fails
  + platform: add small backoff time before resync
  + bridge: reapply port VLANs only when necessary
  + platform: add nmp_utils_bridge_normalized_vlans_equal()
  + platform: support reading bridge VLANs
  + device: support reapplying bridge-port VLANs
  + bridge: change the signature for
    nm_platform_link_set_bridge_vlans()
  + platform: add define for IFLA_BOND_SLAVE_PRIO
  + lldp: fix multiple access to argument in logging macro
  + lldp: fix crash dereferencing NULL pointer during debug logging
  + policy: unblock the autoconnect for children when parent is
    available</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1727956800">- Update to version 1.50.0:
  + The support for "dhclient" has been deprecated, not built
    unless explicitely enabled, and will be removed in a future
    release. The internal DHCP client should be used instead and
    has been the default since version 1.20 (1.12 when built with
    meson).
  + Support matching a OVS system interface by MAC address.
  + Add a timeout option to connectivity checking.
  + Support configuring veth interfaces in nmtui.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.
  + Revert to using sysctl ipv6.conf.default for ip6-privacy.
  + Allow specifying a system OVS interface by MAC address.
  + ndisc: Support multiple gateways for a single network.
  + wifi: Support configuring channel-width in AP mode.
  + keyfile: Stop writing offensive terms into keyfiles.
  + Support reapplying the VLANs on bridge ports.
  + Fix crash caused by malformed LLDP package if debug log is
    enabled.
  + Retry hostname resolution when it fails.
- Drop NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  Fixed upstream.
- Rebase patches with quilt.</changelog>
</package>
<package pkgid="4dc9d8cf444848cb470538c71457403a13afd735c2c558b357918204ca909ad9c4cb5ee312b7a832eb313d0326ffd7bc564a560f7dc3caf8390162706c7bd03e" name="NetworkManager-wwan" arch="x86_64">
  <version epoch="0" ver="1.50.0" rel="1.1"/>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1724328000">- Add NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  device: don't enforce IP cleanup on deactivating state
  (bsc#1228154, glfd#NetworkManager/NetworkManager!2016).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1724673600">- Update to version 1.48.10:
  + nmcli/edit: fix memory leak in extract_setting_and_property
  + autotools: fix another filename that was renamed
  + gitlab: fix helper scripts to support DNF5
  + CI: update the imported templates_sha
  + autotools: fix filename that was renamed
  + format: run nm-code-format
  + policy: retry hostname resolution when it fails
  + platform: add small backoff time before resync
  + bridge: reapply port VLANs only when necessary
  + platform: add nmp_utils_bridge_normalized_vlans_equal()
  + platform: support reading bridge VLANs
  + device: support reapplying bridge-port VLANs
  + bridge: change the signature for
    nm_platform_link_set_bridge_vlans()
  + platform: add define for IFLA_BOND_SLAVE_PRIO
  + lldp: fix multiple access to argument in logging macro
  + lldp: fix crash dereferencing NULL pointer during debug logging
  + policy: unblock the autoconnect for children when parent is
    available</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1727956800">- Update to version 1.50.0:
  + The support for "dhclient" has been deprecated, not built
    unless explicitely enabled, and will be removed in a future
    release. The internal DHCP client should be used instead and
    has been the default since version 1.20 (1.12 when built with
    meson).
  + Support matching a OVS system interface by MAC address.
  + Add a timeout option to connectivity checking.
  + Support configuring veth interfaces in nmtui.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.
  + Revert to using sysctl ipv6.conf.default for ip6-privacy.
  + Allow specifying a system OVS interface by MAC address.
  + ndisc: Support multiple gateways for a single network.
  + wifi: Support configuring channel-width in AP mode.
  + keyfile: Stop writing offensive terms into keyfiles.
  + Support reapplying the VLANs on bridge ports.
  + Fix crash caused by malformed LLDP package if debug log is
    enabled.
  + Retry hostname resolution when it fails.
- Drop NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  Fixed upstream.
- Rebase patches with quilt.</changelog>
</package>
<package pkgid="6286fa51270edcfc2e277c60d3df1d3ce467436e18f849b150a6f2ccbf640592574c9be93ebe2376a316c38bd02146aa907a94e95fd40f1a3f3648b30d94ffc4" name="NetworkManager-wwan-debuginfo" arch="i586">
  <version epoch="0" ver="1.48.10" rel="1.0.4.1.sr20240803"/>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678104000">- Changes from version 1.38.6 (bsc#1208631):
  + Fix honoring DNS priority.
  + Decline DHCPv6 lease when DAD fails.
  + Various bugfixes.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1724328000">- Add NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  device: don't enforce IP cleanup on deactivating state
  (bsc#1228154, glfd#NetworkManager/NetworkManager!2016).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1724673600">- Update to version 1.48.10:
  + nmcli/edit: fix memory leak in extract_setting_and_property
  + autotools: fix another filename that was renamed
  + gitlab: fix helper scripts to support DNF5
  + CI: update the imported templates_sha
  + autotools: fix filename that was renamed
  + format: run nm-code-format
  + policy: retry hostname resolution when it fails
  + platform: add small backoff time before resync
  + bridge: reapply port VLANs only when necessary
  + platform: add nmp_utils_bridge_normalized_vlans_equal()
  + platform: support reading bridge VLANs
  + device: support reapplying bridge-port VLANs
  + bridge: change the signature for
    nm_platform_link_set_bridge_vlans()
  + platform: add define for IFLA_BOND_SLAVE_PRIO
  + lldp: fix multiple access to argument in logging macro
  + lldp: fix crash dereferencing NULL pointer during debug logging
  + policy: unblock the autoconnect for children when parent is
    available</changelog>
</package>
<package pkgid="cf0d914dc150d4d51bfa956592ec4d597f88829631cd1b1e2687a48230bc41c833fd15eea2cea38854e8c7e461fa647ac74261e234402e84fb6b8483d8554871" name="NetworkManager-wwan-debuginfo" arch="x86_64">
  <version epoch="0" ver="1.48.10" rel="1.0.4.1.sr20240803"/>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678104000">- Changes from version 1.38.6 (bsc#1208631):
  + Fix honoring DNS priority.
  + Decline DHCPv6 lease when DAD fails.
  + Various bugfixes.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1724328000">- Add NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  device: don't enforce IP cleanup on deactivating state
  (bsc#1228154, glfd#NetworkManager/NetworkManager!2016).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1724673600">- Update to version 1.48.10:
  + nmcli/edit: fix memory leak in extract_setting_and_property
  + autotools: fix another filename that was renamed
  + gitlab: fix helper scripts to support DNF5
  + CI: update the imported templates_sha
  + autotools: fix filename that was renamed
  + format: run nm-code-format
  + policy: retry hostname resolution when it fails
  + platform: add small backoff time before resync
  + bridge: reapply port VLANs only when necessary
  + platform: add nmp_utils_bridge_normalized_vlans_equal()
  + platform: support reading bridge VLANs
  + device: support reapplying bridge-port VLANs
  + bridge: change the signature for
    nm_platform_link_set_bridge_vlans()
  + platform: add define for IFLA_BOND_SLAVE_PRIO
  + lldp: fix multiple access to argument in logging macro
  + lldp: fix crash dereferencing NULL pointer during debug logging
  + policy: unblock the autoconnect for children when parent is
    available</changelog>
</package>
<package pkgid="cff3fffd8245cdd7fe8ec16348c68f7b8287134207a2a7bc1e26dbddd1d1607e633d831981e93b76f3db40f427392d2c9a081554f5a71844217766d803ba3c5b" name="NetworkManager-wwan-debuginfo" arch="i586">
  <version epoch="0" ver="1.48.10" rel="1.1"/>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678104000">- Changes from version 1.38.6 (bsc#1208631):
  + Fix honoring DNS priority.
  + Decline DHCPv6 lease when DAD fails.
  + Various bugfixes.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1724328000">- Add NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  device: don't enforce IP cleanup on deactivating state
  (bsc#1228154, glfd#NetworkManager/NetworkManager!2016).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1724673600">- Update to version 1.48.10:
  + nmcli/edit: fix memory leak in extract_setting_and_property
  + autotools: fix another filename that was renamed
  + gitlab: fix helper scripts to support DNF5
  + CI: update the imported templates_sha
  + autotools: fix filename that was renamed
  + format: run nm-code-format
  + policy: retry hostname resolution when it fails
  + platform: add small backoff time before resync
  + bridge: reapply port VLANs only when necessary
  + platform: add nmp_utils_bridge_normalized_vlans_equal()
  + platform: support reading bridge VLANs
  + device: support reapplying bridge-port VLANs
  + bridge: change the signature for
    nm_platform_link_set_bridge_vlans()
  + platform: add define for IFLA_BOND_SLAVE_PRIO
  + lldp: fix multiple access to argument in logging macro
  + lldp: fix crash dereferencing NULL pointer during debug logging
  + policy: unblock the autoconnect for children when parent is
    available</changelog>
</package>
<package pkgid="0465cd7d5909a342e315d2f37969b92c9098906551909c2d763173789502fa6c73d9bfa6bb43098455e0c8f4fd81f4356152c056517ee3af610ba7948519809e" name="NetworkManager-wwan-debuginfo" arch="x86_64">
  <version epoch="0" ver="1.48.10" rel="1.1"/>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678104000">- Changes from version 1.38.6 (bsc#1208631):
  + Fix honoring DNS priority.
  + Decline DHCPv6 lease when DAD fails.
  + Various bugfixes.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1724328000">- Add NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  device: don't enforce IP cleanup on deactivating state
  (bsc#1228154, glfd#NetworkManager/NetworkManager!2016).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1724673600">- Update to version 1.48.10:
  + nmcli/edit: fix memory leak in extract_setting_and_property
  + autotools: fix another filename that was renamed
  + gitlab: fix helper scripts to support DNF5
  + CI: update the imported templates_sha
  + autotools: fix filename that was renamed
  + format: run nm-code-format
  + policy: retry hostname resolution when it fails
  + platform: add small backoff time before resync
  + bridge: reapply port VLANs only when necessary
  + platform: add nmp_utils_bridge_normalized_vlans_equal()
  + platform: support reading bridge VLANs
  + device: support reapplying bridge-port VLANs
  + bridge: change the signature for
    nm_platform_link_set_bridge_vlans()
  + platform: add define for IFLA_BOND_SLAVE_PRIO
  + lldp: fix multiple access to argument in logging macro
  + lldp: fix crash dereferencing NULL pointer during debug logging
  + policy: unblock the autoconnect for children when parent is
    available</changelog>
</package>
<package pkgid="490f878c31cd3ea820076b82ac501dc27b7ab0b837312106d25ba3c67fffc59d6d3ff0f50f5c51bbadc2d8aa31eb7399ca3234beb8949a64d22cc3a76fc7cb8f" name="NetworkManager-wwan-debuginfo" arch="i586">
  <version epoch="0" ver="1.48.8" rel="1.1"/>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1676894400">- Add 1539.patch: Fix constructing the IPv4 nameserver variable
  (boo#1208371).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1677153600">- Update to version 1.42.2:
  + Add build option to set the mobile-broadband-provider-info
    database path.
  + Add new "ipv[46].replace-local-rule" setting to control whether
    to remove the local route rule that is automatically generated.
  + Add the DHCPv6 IAID to the lease information exposed in /run
    and on D-Bus.
  + Fix assuming team connections at boot.
  + Fix race condition when setting the MAC address of an OVS
    interface.
  + Fix constructing the IPv4 name servers variable passed to
    dispatcher scripts.
  + Don't use tentative IPv6 address to resolve the system hostname
    via DNS.
  + Deprecate the "Master" property of the NMActiveConnection D-Bus
    object in favor of the new "Controller" property.
- Drop 1539.patch: Fixed upstream.
- Refresh patch with quilt:
  + 0001-Coerce-connectivity-LIMITED-to-NONE-when-device-is-d.patch</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678104000">- Changes from version 1.38.6 (bsc#1208631):
  + Fix honoring DNS priority.
  + Decline DHCPv6 lease when DAD fails.
  + Various bugfixes.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
</package>
<package pkgid="eb454a5f11efc5a14c7e52894ab02deff2f06a0bd579919b28d8a8e4196dff177ee8ec5cec6fded08798560c74b766d87563cf0eb15984f384eff94add36e64a" name="NetworkManager-wwan-debuginfo" arch="x86_64">
  <version epoch="0" ver="1.48.8" rel="1.1"/>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1676894400">- Add 1539.patch: Fix constructing the IPv4 nameserver variable
  (boo#1208371).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1677153600">- Update to version 1.42.2:
  + Add build option to set the mobile-broadband-provider-info
    database path.
  + Add new "ipv[46].replace-local-rule" setting to control whether
    to remove the local route rule that is automatically generated.
  + Add the DHCPv6 IAID to the lease information exposed in /run
    and on D-Bus.
  + Fix assuming team connections at boot.
  + Fix race condition when setting the MAC address of an OVS
    interface.
  + Fix constructing the IPv4 name servers variable passed to
    dispatcher scripts.
  + Don't use tentative IPv6 address to resolve the system hostname
    via DNS.
  + Deprecate the "Master" property of the NMActiveConnection D-Bus
    object in favor of the new "Controller" property.
- Drop 1539.patch: Fixed upstream.
- Refresh patch with quilt:
  + 0001-Coerce-connectivity-LIMITED-to-NONE-when-device-is-d.patch</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678104000">- Changes from version 1.38.6 (bsc#1208631):
  + Fix honoring DNS priority.
  + Decline DHCPv6 lease when DAD fails.
  + Various bugfixes.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
</package>
<package pkgid="5dd564f83ea55dfe9683f150687cc7b27f16aa4db15eaf01848c29b491c5fee9263a65473b8f4f56193dbac8fadc0cd4add2ab1adc4f890cf5736b93ebf4b505" name="NetworkManager-wwan-debuginfo" arch="i586">
  <version epoch="0" ver="1.50.0" rel="1.1"/>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1724328000">- Add NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  device: don't enforce IP cleanup on deactivating state
  (bsc#1228154, glfd#NetworkManager/NetworkManager!2016).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1724673600">- Update to version 1.48.10:
  + nmcli/edit: fix memory leak in extract_setting_and_property
  + autotools: fix another filename that was renamed
  + gitlab: fix helper scripts to support DNF5
  + CI: update the imported templates_sha
  + autotools: fix filename that was renamed
  + format: run nm-code-format
  + policy: retry hostname resolution when it fails
  + platform: add small backoff time before resync
  + bridge: reapply port VLANs only when necessary
  + platform: add nmp_utils_bridge_normalized_vlans_equal()
  + platform: support reading bridge VLANs
  + device: support reapplying bridge-port VLANs
  + bridge: change the signature for
    nm_platform_link_set_bridge_vlans()
  + platform: add define for IFLA_BOND_SLAVE_PRIO
  + lldp: fix multiple access to argument in logging macro
  + lldp: fix crash dereferencing NULL pointer during debug logging
  + policy: unblock the autoconnect for children when parent is
    available</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1727956800">- Update to version 1.50.0:
  + The support for "dhclient" has been deprecated, not built
    unless explicitely enabled, and will be removed in a future
    release. The internal DHCP client should be used instead and
    has been the default since version 1.20 (1.12 when built with
    meson).
  + Support matching a OVS system interface by MAC address.
  + Add a timeout option to connectivity checking.
  + Support configuring veth interfaces in nmtui.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.
  + Revert to using sysctl ipv6.conf.default for ip6-privacy.
  + Allow specifying a system OVS interface by MAC address.
  + ndisc: Support multiple gateways for a single network.
  + wifi: Support configuring channel-width in AP mode.
  + keyfile: Stop writing offensive terms into keyfiles.
  + Support reapplying the VLANs on bridge ports.
  + Fix crash caused by malformed LLDP package if debug log is
    enabled.
  + Retry hostname resolution when it fails.
- Drop NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  Fixed upstream.
- Rebase patches with quilt.</changelog>
</package>
<package pkgid="eccbc3a25ad11545e86414e7d4a8771ba9ebc258f2799245475d08fe5d74ac25268d246c7505f61afcf910852ba3a85ebcef7d21507f32755ee9dca8bbecc1f8" name="NetworkManager-wwan-debuginfo" arch="x86_64">
  <version epoch="0" ver="1.50.0" rel="1.1"/>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1678363200">- Update to version 1.42.4:
  + Fix a possible crash when [global-dns] is used and improve the
    documentation.
  + Documentation improvements.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1681992000">- Update to version 1.42.6:
  + Emit the dhcp-change dispatcher event also after a lease
    renewal.
  + Fix assertion failure on DHCP renewal.
  + Add support for EC2 IMDSv2 in nm-cloud-setup.
  + Allow setting tunnel flags for ip6gre &amp; ip6gretap connection
    profiles.
  + Improve the Wi-Fi hotspot functionality.
  + Fix setting the Wi-Fi roaming policy based on the number of
    seen BSSIDs.
  + Support the "no-aaaa" resolv.conf option.
  + Some oFono fixes.</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1683979200">- Add nm-runstatedir.patch: to correct rundir from /var/run to /run
  for systemd FHS compatibility</changelog>
  <changelog author="Luciano Santos &lt;luc14n0@opensuse.org&gt;" date="1685534400">- Update https://www.gnome.org/projects/NetworkManager/ URL tag to
  NM's newest home page: https://networkmanager.dev/, and main
  package summary to: standard Linux network configuration tool
  suite.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1688040000">- Update to version 1.42.8:
  + Add support for ppp 2.5.0.
  + Fix nft rules for balance-slb bonding.
  + Support port priority for bonding.
  + Fix regression handling the PKEY_ID for infiniband profiles in
    ifcfg-rh format.
  + Fix race in nm-cloud-setup that caused partial configuration
    and loss of connectivity with multiple interfaces.
  + Don't touch "net.ipv6.conf.$IFACE.forwarding" unless explicitly
    required for IPv6 sharing.
  + Various bugfixes related to team, Wi-Fi P2P, IPv6LL.
  + Automatically unblock autoconnect of profiles during reapply.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1691582400">- Update to version 1.44.0:
  + Introduce a new "link" setting that holds properties related to
    the kernel link such as "tx-queue-length", "gso-max-size",
    "gso-max-segments", "gro-max-size".
  + Support sending a DHCPv6 prefix delegation hint via the
    "ipv6.dhcp-pd-hint" connection property.
  + Support new bond options: "arp_missed_max", "lacp_active",
    "ns_ip6_target".
  + Add new "initial-eps-bearer-configure" and
    "initial-eps-bearer-apn" properties in the GSM setting.
  + Setting "connection.stable-id=default${CONNECTION}" changed
    behavior to be identical to the built-in default value when the
    stable-id is not set.
  + Add a "[keyfile].rename" option to NetworkManager.conf to force
    renaming profiles on disk when their name changes.
  + The ifcfg-rh plugin is deprecated; it will only receive
    bugfixes and no new features. A warning is emitted the log when
    a connection in ifcfg-rh format is found.
  + To automatically migrate existing ifcfg-rh connections to the
    keyfile format, a new configuration option
    "main.migrate-ifcfg-rh" is provided. Migration is disabled by
    default, but the default value can be changed at build time via
    "--with-config-migrate-ifcfg-rh-default=yes".
  + When configuring hostnames in non-public TLD (like
    "example.local"), use the TLD as default search domain instead
    of the full hostname.
  + Always apply DNS options from the [global-dns] configuration
    section
  + The NetworkManager daemon now acquires the D-Bus name only
    after populating the D-Bus tree. This can add a delay during
    startup but it is required to avoid race conditions with other
    services depending on NM.
  + Add a "version-id" argument to the Update2() D-Bus call to
    guard against concurrent modifications of profiles.
  + Don't use tentative IPv6 addresses to resolve the system
    hostname via DNS.
  + Track the number of autoconnect retries left for each device
    and connection. Previously it was tracked only per connection
    and this lead to unexpected behaviors in case of multiconnect
    profiles.
  + Set VLAN filtering options on bridge via netlink instead of
    sysfs.
  + nm-cloud-setup now supports IMDSv2 on Amazon EC2.
  + nmtui now allows to enable or disable Wi-Fi and WWAN radios.
  + Honor ignore-carrier=no for bond/bridge/team devices.
  + Add version mismatch warning when running nmcli commands.
- Rebase patches with quilt.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1696334400">- Update to version 1.44.2:
  + Better log IPv4 Address Conflict Detection (ACD) conflicts
  + Remove the upper limit of 65535 for PIDs read from the PID file
  + Allow missing default gateway with oFono
  + Honor the CLICOLOR_FORCE environment variable
  + Fix generating connection with IPv6 method disabled vs ignored
  + Fix possible segmentation fault when doing a checkpoint
    rollback
  + Documentation improvements
- Switch to source services, use explicit released tag.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1701172800">- Use %patch -p N instead of deprecated %patchN.</changelog>
  <changelog author="Yifan Jiang &lt;yfjiang@suse.com&gt;" date="1701604800">- Add python3.6-in-sle.patch: SLE still takes python 3.6 as primary
  system, the patch allows meson to find python 3.6 in SLE.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1713528000">- Update to version 1.44.4:
  + Add the 'dns-change' dispatcher event.
  + Various fixed related to IPv4 duplicate address detection.
  + Fix support for OVS netdev datapath
  + Fix handling of IPv6 hop limit</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1715256000">- Don't recommend ModemManager for the main package, as it's only
  needed by NetworkManager-wwan subpackage(bsc#1100395).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1717588800">- Update to version 1.48.0:
  + Building with autotools is now deprecated and will be
    completely removed in the next development cycle.
  + Support changing the OpenSSL ciphers for 802.1X authentication
    via connection property "802-1x.openssl-ciphers".
  + The reason why a device is unmanaged is now properly set in the
    "StateReason" property of the "Device" D-Bus object. The
    property is visible in nmcli via "nmcli -f all device show
    $DEV".
  + Deprecated 802-11-wireless and 802-11-wired property
    'mac-address-blacklist' and introduced the
    'mac-address-denylist' property.
  + Properly restore in-memory connection profiles during the
    rollback of a checkpoint.
  + Fix detection of 6 GHz band capability for WiFi devices.
  + Allow IPv6 SLAAC and static IPv6 DNS server assignment for
    modem broadband when IPv6 device address was not explicitly
    passed on by ModemManager.
  + Fix a performance issue that was leading to 100% CPU usage by
    NetworkManager if external programs were doing a big amount of
    routes updates.
  + Patch-level development releases (i.e. 1.48.1-dev) won't be
    used anymore.
- Changes from version 1.46
  + Support dynamic value "${NETWORK_SSID}" for
    connection.stable-id to generate the stable ID based on the
    Wi-Fi's SSID.
  + Support new value "wifi.cloned-mac-address=stable-ssid" for
    randomizing the MAC address based on the Wi-Fi network.
  + Change internal ABI of NMSetting types and NMSimpleConnection.
  + Honor udev property ID_NET_AUTO_LINK_LOCAL_ONLY=1 for enabling
    link local addresses on default wired connection.
  + Honor udev property ID_NET_MANAGED_BY to only manage an
    interface when set to "org.freedesktop.NetworkManager".
  + D-Bus methods StartFind() and StopFind() on interface
    "org.freedesktop.NetworkManager.Device.WifiP2P" now require the
    "org.freedesktop.NetworkManager.wifi.scan" Polkit permission.
  + Drop build support with Python2. Python3 is now required.
  + nmcli: limit number of printed addresses/routes in `nmcli`
    overview to 10.
  + Limit number of exported IP addresses/routes on D-Bus to 100 to
    reduce performance cost. Also, D-Bus updates for
    addresses/routes are now rate limited to 3 per second.
  + cloud-setup: enable more sandboxing options in systemd service
    file.
  + nmcli: show WiFi bandwidth.
  + Internal improvements and bugfixes.
  + Man page now show the format and accepted values of all
    properties.
  + Added the 'dns-change' dispatcher event.
  + Show WiFi devices capability to work on the 6GHz band.
  + Allow to set dhcp-client-id to none.
  + Support configuring ethtool channels property to configure NIC
    multiqueue.
  + Don't attempt to use IPv6 if it's disabled in kernel.
  + Fix handling of OVS interfaces with netdev datapath and cloned
    MAC.
  + Support for old systemd has been droped, at least systemd v200
    is required.
  + Support Ethtool EEE (Energy Efficient Ethernet) settings.
  + Add options to prevent edns0 and trust-ad being automatically
    added to DNS configuration.
  + Implement fwmark property for IP tunnels.
  + Add support to HSR/PRP interfaces.
  + Deprecated connection.* properties master, slave-type,
    autoconnect-slaves
  + Allow configuring static routes also when addresses is empty.
  + VPN: accept pref-src for IPv6 routes from VPN plugins.
  + nmcli: show global metered state.
  + Support modifying the DSCP header field for DHCP packets, and
    change the default to CS0.
  + Enable IPv4 DAD (Duplicate Address Detection) by default.
  + vpn: support 2FA authentication from VPN plugins.
  + nmtui: allow adding a bond as bridge port.
  + sriov: add support to configure the NIC's eswitch settings via
    Devlink.
  + ndisc: fix IPv6 address lifetimes computation.
  + Support the MACsec offload mode.
  + Support creating generic devices via external "device-handler"
    dispatcher.
  + Documentation improvements.
  + Many internal improvements and bug fixes.
- Drop nm-runstatedir.patch: no longer needed.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1719230400">- Update to version 1.48.2:
  + Support matching a OVS system interface by MAC address.
  + Fix port reactivation when the controller is reactivating.
  + Save connection timestamps when shutting down, so that the
    right connection autoactivates after restart.
  + Fix handling of VPN secrets for 2-factor authentication.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1720180800">- Update to version 1.48.4:
  + Support matching a OVS system interface by MAC address.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1721995200">- Update to version 1.48.6:
  + activation: Allow changing controller of exposed active
    connection
  + ovs: wait for the link to be ready before activating
  + policy: assert that the auto-activate list is empty on dispose</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1722254400">- Add NetworkManager-dont-renew-bridge-dhcp-if-no-mac-on-wakeup.patch:
  manager: don't renew dhcp lease when software devices' MAC is empty
  (bsc#1225498, glfd#NetworkManager/NetworkManager#1587).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1723204800">- Update to version 1.48.8:
  + ovs: fix triggering stage3 activation without DHCP client
    initialized
  + config: parse autoconnect-ports value on config
  + ndisc: preserve router preferences</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1724328000">- Add NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  device: don't enforce IP cleanup on deactivating state
  (bsc#1228154, glfd#NetworkManager/NetworkManager!2016).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1724673600">- Update to version 1.48.10:
  + nmcli/edit: fix memory leak in extract_setting_and_property
  + autotools: fix another filename that was renamed
  + gitlab: fix helper scripts to support DNF5
  + CI: update the imported templates_sha
  + autotools: fix filename that was renamed
  + format: run nm-code-format
  + policy: retry hostname resolution when it fails
  + platform: add small backoff time before resync
  + bridge: reapply port VLANs only when necessary
  + platform: add nmp_utils_bridge_normalized_vlans_equal()
  + platform: support reading bridge VLANs
  + device: support reapplying bridge-port VLANs
  + bridge: change the signature for
    nm_platform_link_set_bridge_vlans()
  + platform: add define for IFLA_BOND_SLAVE_PRIO
  + lldp: fix multiple access to argument in logging macro
  + lldp: fix crash dereferencing NULL pointer during debug logging
  + policy: unblock the autoconnect for children when parent is
    available</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1727956800">- Update to version 1.50.0:
  + The support for "dhclient" has been deprecated, not built
    unless explicitely enabled, and will be removed in a future
    release. The internal DHCP client should be used instead and
    has been the default since version 1.20 (1.12 when built with
    meson).
  + Support matching a OVS system interface by MAC address.
  + Add a timeout option to connectivity checking.
  + Support configuring veth interfaces in nmtui.
  + When looking up the system hostname from the reverse DNS lookup
    of addresses configured on interfaces, NetworkManager now takes
    into account the content of /etc/hosts.
  + Revert to using sysctl ipv6.conf.default for ip6-privacy.
  + Allow specifying a system OVS interface by MAC address.
  + ndisc: Support multiple gateways for a single network.
  + wifi: Support configuring channel-width in AP mode.
  + keyfile: Stop writing offensive terms into keyfiles.
  + Support reapplying the VLANs on bridge ports.
  + Fix crash caused by malformed LLDP package if debug log is
    enabled.
  + Retry hostname resolution when it fails.
- Drop NetworkManager-dont-enforce-ip-cleanup-on-device-deactivating.patch:
  Fixed upstream.
- Rebase patches with quilt.</changelog>
</package>
<package pkgid="3c3a01f02c3f9fd350dd76a0962701364bb6510387cc8fa941bad634ab45fe6a8a8f915f9bf484cc7a910a08fd676c6325d11e8b7f1db1a3961d0a164a1b3415" name="OpenBoard" arch="src">
  <version epoch="0" ver="1.7.2" rel="1.1"/>
  <changelog author="Adam Majer &lt;adam.majer@suse.de&gt;" date="1606132800">- 0001-Rewrite-libs.pri.patch:
  + update patch and BR on now weirdly named quazip - pkgconfig(quazip1-qt5)
  + continue to function with with pkgconfig(quazip) in Leap 15.2
- Remove BR on libx264-devel and fdk-aac-devel as these are no longer
  available in Factory</changelog>
  <changelog author="Adam Majer &lt;adam.majer@suse.de&gt;" date="1612785600">- Compile translations so they are installed (bsc#1181857)</changelog>
  <changelog author="Martin Winter &lt;martin@winter-rosenheim.de&gt;" date="1640692800">- update to OpenBoard 1.6.1
  - adapt patches</changelog>
  <changelog author="Martin Winter &lt;me@letsfindaway.de&gt;" date="1647345600">- add 0573-compile-with-poppler-22.03.patch</changelog>
  <changelog author="Martin Winter &lt;me@letsfindaway.de&gt;" date="1654516800">- Update to 1.6.2
  - see https://github.com/OpenBoard-org/OpenBoard/releases/tag/v1.6.2
  - adapt 0001-Rewrite-libs.pri.patch
  - adapt 0002-Install-to-correct-directories-on-linux.patch
  - drop 0573-compile-with-poppler-22.03.patch (upstreamed)</changelog>
  <changelog author="Martin Winter &lt;me@letsfindaway.de&gt;" date="1655121600">- Update to 1.6.3
  - see https://github.com/OpenBoard-org/OpenBoard/releases/tag/v1.6.3</changelog>
  <changelog author="Martin Winter &lt;me@letsfindaway.de&gt;" date="1655640000">- update to 1.7.0~git47a96e1
  - use development branch to enable build for Tumbleweed
    (switch from QWebKit to QWebEngine)
- add patches fixing known issues according to existing upstream PRs
  - 0551-common-background-drawing.patch
  - 0569-scale-mirror-pixmap.patch
  - 0604-qt-5.12-compatibility.patch
  - 0629-bug-ruler.patch
  - 0633-improve-displaymanager.patch
- remove unused build dependencies</changelog>
  <changelog author="Martin Winter &lt;me@letsfindaway.de&gt;" date="1656072000">- fix several issues
  - add 0008-install-fonts.patch
  - add 0637-fix-pdf-background-export.patch
  - add 0641-fix-font-handling.patch</changelog>
  <changelog author="Martin Winter &lt;me@letsfindaway.de&gt;" date="1656072001">- minor changes in spec file</changelog>
  <changelog author="Martin Winter &lt;me@letsfindaway.de&gt;" date="1663156800">- update to version 1.7.0~git20220914.47a96e1
- feat: user configurable shortcuts
  * add 0460-shortcut-configuration.patch
- fix: boxing in single screen mode
  * update 0633-improve-displaymanager.patch
- fix: PDF background export
  * update 0637-fix-pdf-background-export.patch
- fix: font handling
  * update 0641-fix-font-handling.patch
- fix: PDF export scaling
  * add 0649-fix-pdf-export-scaling.patch
- refactor: Linux build and installation
  * add 0651-chore-reorganize-linux-build.patch
  * replaces 0001-Rewrite-libs.pri.patch
  * replaces 0002-Install-to-correct-directories-on-linux.patch
  * replaces 0003-podcast.pri-port-to-pkgconfig.patch
  * replaces 0004-Use-QStandardPaths-to-locate-resources.patch
  * replaces 0005-Add-svg-icon.patch
  * replaces 0006-pro-Remove-UB_THIRDPARTY_INTERACTIVE.patch
  * replaces 0007-Linux-Only-use-onboard-by-default-if-it-s-installed.patch
  * replaces 0008-install-fonts.patch
  * add mimespec for .ubz files
  * also improve handling of onboard on-screen keyboard
- refactor: clean spec file</changelog>
  <changelog author="Martin Winter &lt;me@letsfindaway.de&gt;" date="1663675200">- fix file list in spec file
  - do not include /usr/share/mime/packages directory owned by
    filesystem</changelog>
  <changelog author="Martin Winter &lt;me@letsfindaway.de&gt;" date="1669723200">- update to version 1.7.0~git20221129.9de37af
- feat: user configurable shortcuts
  * replace 0460-shortcut-configuration.patch by updated
    0686-shortcut-configuration.patch
  * add 9686-cmake-add-shortcut-manager.patch
    add new files to CMakeLists.txt
- fix: background drawing when switching page size
  * update 0551-common-background-drawing.patch
- fix: mirror pixmap size
  * update 0569-scale-mirror-pixmap.patch
- remove upstreamed patches
  * remove upstreamed 0604-qt-5.12-compatibility.patch
  * remove upstreamed 0629-bug-ruler.patch
  * remove upstreamed 0633-improve-displaymanager.patch
  * remove upstreamed 0637-fix-pdf-background-export.patch
  * remove upstreamed 0641-fix-font-handling.patch
  * remove upstreamed 0649-fix-pdf-export-scaling.patch
- chore: replace qmake by cmake build system
  * remove 0651-chore-reorganize-linux-build.patch
  * add 0698-add-cmake-build-system.patch
- fix: page size for PDF export
  * add 0677-pdf-export-page-size.patch
- disable software update from openboard web page
  * add 9117-disable-software-update.patch</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1674648000">- BuildRequire pkgconfig(libavdevice) instead of ffmpeg-devel: let
  OBS figure out the right packages that do not conlfict.</changelog>
  <changelog author="Martin Winter &lt;me@letsfindaway.de&gt;" date="1687089600">- update to version 1.7.0~git20230614.2ff8f29
  * feature freeze before release
- remove upstreamed patches
  * remove upstreamed 0551-common-background-drawing.patch
  * remove upstreamed 0677-pdf-export-page-size.patch
- update patches to match updated sources
  * update 0686-shortcut-configuration.patch
  * update 0698-add-cmake-build-system.patch
  * update 9117-disable-software-update.patch</changelog>
  <changelog author="Martin Winter &lt;me@letsfindaway.de&gt;" date="1702123200">- update to release version 1.7.0
- update patches to match updated sources
  * update 0569-scale-mirror-pixmap.patch
  * update 0686-shortcut-configuration.patch
- replace build system patch
  * remove 0698-add-cmake-build-system.patch
  * add 0830-cmake-community-builds.patch
- switch from pgkconfig to cmake for some BuildRequires</changelog>
  <changelog author="Martin Winter &lt;me@letsfindaway.de&gt;" date="1715169600">- update to release version 1.7.1
- remove upstreamed patches
  * remove 0830-cmake-community-builds.patch
  * remove 9686-cmake-add-shortcut-manager.patch
- update patch to match updated sources
  * replace 0686-shortcut-configuration.patch by 0955-shortcut-configuration.patch</changelog>
  <changelog author="Martin Winter &lt;me@letsfindaway.de&gt;" date="1717934400">- fix a problem with latest plasma5 security patches
  * add 1010-fix-qapp-cast.patch</changelog>
  <changelog author="Martin Winter &lt;me@letsfindaway.de&gt;" date="1720094400">- compatibility with poppler &gt;= 24.05
  * poppler &gt;= 24.05 requires c++20
  * add 0961-use-cpp20.patch
  * add 0962-fix-cpp20-compatibility.patch
  * both patches are already merged upstream
    and will be part of the next release</changelog>
  <changelog author="Martin Winter &lt;me@letsfindaway.de&gt;" date="1723550400">- compatibility with ffmpeg-7
  * add 1017-ffmpeg7.patch
  * patch is already merged and will be part of the next release</changelog>
  <changelog author="Martin Winter &lt;me@letsfindaway.de&gt;" date="1731931200">- update to release version 1.7.2
- remove upstreamed patches
  * remove 0569-scale-mirror-pixmap.patch
  * remove 0961-use-cpp20.patch
  * remove 0962-fix-cpp20-compatibility.patch
  * remove 1010-fix-qapp-cast.patch
  * remove 1017-ffmpeg7.patch
- adjust patches to new version
  * adjust 0955-shortcut-configuration.patch
  * adjust 9117-disable-software-update.patch
- add patch to circumvent some problems on wayland
  * add 1165-fix-some-wayland-problems.patch
- switch from Qt5 to Qt6</changelog>
</package>
<package pkgid="b351311d354d00cdfe61fb1f102e6c6832d1529b3aa6992ea83005f9e593894608b414a677c9331326b5a97444ed4be1f46b8eda412c31942d27beb629dc230e" name="OpenBoard" arch="x86_64">
  <version epoch="0" ver="1.7.2" rel="1.1"/>
  <changelog author="Adam Majer &lt;adam.majer@suse.de&gt;" date="1612785600">- Compile translations so they are installed (bsc#1181857)</changelog>
  <changelog author="Martin Winter &lt;martin@winter-rosenheim.de&gt;" date="1640692800">- update to OpenBoard 1.6.1
  - adapt patches</changelog>
  <changelog author="Martin Winter &lt;me@letsfindaway.de&gt;" date="1647345600">- add 0573-compile-with-poppler-22.03.patch</changelog>
  <changelog author="Martin Winter &lt;me@letsfindaway.de&gt;" date="1654516800">- Update to 1.6.2
  - see https://github.com/OpenBoard-org/OpenBoard/releases/tag/v1.6.2
  - adapt 0001-Rewrite-libs.pri.patch
  - adapt 0002-Install-to-correct-directories-on-linux.patch
  - drop 0573-compile-with-poppler-22.03.patch (upstreamed)</changelog>
  <changelog author="Martin Winter &lt;me@letsfindaway.de&gt;" date="1655121600">- Update to 1.6.3
  - see https://github.com/OpenBoard-org/OpenBoard/releases/tag/v1.6.3</changelog>
  <changelog author="Martin Winter &lt;me@letsfindaway.de&gt;" date="1655640000">- update to 1.7.0~git47a96e1
  - use development branch to enable build for Tumbleweed
    (switch from QWebKit to QWebEngine)
- add patches fixing known issues according to existing upstream PRs
  - 0551-common-background-drawing.patch
  - 0569-scale-mirror-pixmap.patch
  - 0604-qt-5.12-compatibility.patch
  - 0629-bug-ruler.patch
  - 0633-improve-displaymanager.patch
- remove unused build dependencies</changelog>
  <changelog author="Martin Winter &lt;me@letsfindaway.de&gt;" date="1656072000">- fix several issues
  - add 0008-install-fonts.patch
  - add 0637-fix-pdf-background-export.patch
  - add 0641-fix-font-handling.patch</changelog>
  <changelog author="Martin Winter &lt;me@letsfindaway.de&gt;" date="1656072001">- minor changes in spec file</changelog>
  <changelog author="Martin Winter &lt;me@letsfindaway.de&gt;" date="1663156800">- update to version 1.7.0~git20220914.47a96e1
- feat: user configurable shortcuts
  * add 0460-shortcut-configuration.patch
- fix: boxing in single screen mode
  * update 0633-improve-displaymanager.patch
- fix: PDF background export
  * update 0637-fix-pdf-background-export.patch
- fix: font handling
  * update 0641-fix-font-handling.patch
- fix: PDF export scaling
  * add 0649-fix-pdf-export-scaling.patch
- refactor: Linux build and installation
  * add 0651-chore-reorganize-linux-build.patch
  * replaces 0001-Rewrite-libs.pri.patch
  * replaces 0002-Install-to-correct-directories-on-linux.patch
  * replaces 0003-podcast.pri-port-to-pkgconfig.patch
  * replaces 0004-Use-QStandardPaths-to-locate-resources.patch
  * replaces 0005-Add-svg-icon.patch
  * replaces 0006-pro-Remove-UB_THIRDPARTY_INTERACTIVE.patch
  * replaces 0007-Linux-Only-use-onboard-by-default-if-it-s-installed.patch
  * replaces 0008-install-fonts.patch
  * add mimespec for .ubz files
  * also improve handling of onboard on-screen keyboard
- refactor: clean spec file</changelog>
  <changelog author="Martin Winter &lt;me@letsfindaway.de&gt;" date="1663675200">- fix file list in spec file
  - do not include /usr/share/mime/packages directory owned by
    filesystem</changelog>
  <changelog author="Martin Winter &lt;me@letsfindaway.de&gt;" date="1669723200">- update to version 1.7.0~git20221129.9de37af
- feat: user configurable shortcuts
  * replace 0460-shortcut-configuration.patch by updated
    0686-shortcut-configuration.patch
  * add 9686-cmake-add-shortcut-manager.patch
    add new files to CMakeLists.txt
- fix: background drawing when switching page size
  * update 0551-common-background-drawing.patch
- fix: mirror pixmap size
  * update 0569-scale-mirror-pixmap.patch
- remove upstreamed patches
  * remove upstreamed 0604-qt-5.12-compatibility.patch
  * remove upstreamed 0629-bug-ruler.patch
  * remove upstreamed 0633-improve-displaymanager.patch
  * remove upstreamed 0637-fix-pdf-background-export.patch
  * remove upstreamed 0641-fix-font-handling.patch
  * remove upstreamed 0649-fix-pdf-export-scaling.patch
- chore: replace qmake by cmake build system
  * remove 0651-chore-reorganize-linux-build.patch
  * add 0698-add-cmake-build-system.patch
- fix: page size for PDF export
  * add 0677-pdf-export-page-size.patch
- disable software update from openboard web page
  * add 9117-disable-software-update.patch</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1674648000">- BuildRequire pkgconfig(libavdevice) instead of ffmpeg-devel: let
  OBS figure out the right packages that do not conlfict.</changelog>
  <changelog author="Martin Winter &lt;me@letsfindaway.de&gt;" date="1687089600">- update to version 1.7.0~git20230614.2ff8f29
  * feature freeze before release
- remove upstreamed patches
  * remove upstreamed 0551-common-background-drawing.patch
  * remove upstreamed 0677-pdf-export-page-size.patch
- update patches to match updated sources
  * update 0686-shortcut-configuration.patch
  * update 0698-add-cmake-build-system.patch
  * update 9117-disable-software-update.patch</changelog>
  <changelog author="Martin Winter &lt;me@letsfindaway.de&gt;" date="1702123200">- update to release version 1.7.0
- update patches to match updated sources
  * update 0569-scale-mirror-pixmap.patch
  * update 0686-shortcut-configuration.patch
- replace build system patch
  * remove 0698-add-cmake-build-system.patch
  * add 0830-cmake-community-builds.patch
- switch from pgkconfig to cmake for some BuildRequires</changelog>
  <changelog author="Martin Winter &lt;me@letsfindaway.de&gt;" date="1715169600">- update to release version 1.7.1
- remove upstreamed patches
  * remove 0830-cmake-community-builds.patch
  * remove 9686-cmake-add-shortcut-manager.patch
- update patch to match updated sources
  * replace 0686-shortcut-configuration.patch by 0955-shortcut-configuration.patch</changelog>
  <changelog author="Martin Winter &lt;me@letsfindaway.de&gt;" date="1717934400">- fix a problem with latest plasma5 security patches
  * add 1010-fix-qapp-cast.patch</changelog>
  <changelog author="Martin Winter &lt;me@letsfindaway.de&gt;" date="1720094400">- compatibility with poppler &gt;= 24.05
  * poppler &gt;= 24.05 requires c++20
  * add 0961-use-cpp20.patch
  * add 0962-fix-cpp20-compatibility.patch
  * both patches are already merged upstream
    and will be part of the next release</changelog>
  <changelog author="Martin Winter &lt;me@letsfindaway.de&gt;" date="1723550400">- compatibility with ffmpeg-7
  * add 1017-ffmpeg7.patch
  * patch is already merged and will be part of the next release</changelog>
  <changelog author="Martin Winter &lt;me@letsfindaway.de&gt;" date="1731931200">- update to release version 1.7.2
- remove upstreamed patches
  * remove 0569-scale-mirror-pixmap.patch
  * remove 0961-use-cpp20.patch
  * remove 0962-fix-cpp20-compatibility.patch
  * remove 1010-fix-qapp-cast.patch
  * remove 1017-ffmpeg7.patch
- adjust patches to new version
  * adjust 0955-shortcut-configuration.patch
  * adjust 9117-disable-software-update.patch
- add patch to circumvent some problems on wayland
  * add 1165-fix-some-wayland-problems.patch
- switch from Qt5 to Qt6</changelog>
</package>
<package pkgid="0606d57c58b9cbd4a16c4cec8e19ee5267eac0f4ee0bf40ecf591ebc49787462668e6a637ace80fd888f1e9c030d0cd53edf048de3633c58ca5d419c0a2cf568" name="OpenBoard-debuginfo" arch="x86_64">
  <version epoch="0" ver="1.7.2" rel="1.1"/>
  <changelog author="Adam Majer &lt;adam.majer@suse.de&gt;" date="1612785600">- Compile translations so they are installed (bsc#1181857)</changelog>
  <changelog author="Martin Winter &lt;martin@winter-rosenheim.de&gt;" date="1640692800">- update to OpenBoard 1.6.1
  - adapt patches</changelog>
  <changelog author="Martin Winter &lt;me@letsfindaway.de&gt;" date="1647345600">- add 0573-compile-with-poppler-22.03.patch</changelog>
  <changelog author="Martin Winter &lt;me@letsfindaway.de&gt;" date="1654516800">- Update to 1.6.2
  - see https://github.com/OpenBoard-org/OpenBoard/releases/tag/v1.6.2
  - adapt 0001-Rewrite-libs.pri.patch
  - adapt 0002-Install-to-correct-directories-on-linux.patch
  - drop 0573-compile-with-poppler-22.03.patch (upstreamed)</changelog>
  <changelog author="Martin Winter &lt;me@letsfindaway.de&gt;" date="1655121600">- Update to 1.6.3
  - see https://github.com/OpenBoard-org/OpenBoard/releases/tag/v1.6.3</changelog>
  <changelog author="Martin Winter &lt;me@letsfindaway.de&gt;" date="1655640000">- update to 1.7.0~git47a96e1
  - use development branch to enable build for Tumbleweed
    (switch from QWebKit to QWebEngine)
- add patches fixing known issues according to existing upstream PRs
  - 0551-common-background-drawing.patch
  - 0569-scale-mirror-pixmap.patch
  - 0604-qt-5.12-compatibility.patch
  - 0629-bug-ruler.patch
  - 0633-improve-displaymanager.patch
- remove unused build dependencies</changelog>
  <changelog author="Martin Winter &lt;me@letsfindaway.de&gt;" date="1656072000">- fix several issues
  - add 0008-install-fonts.patch
  - add 0637-fix-pdf-background-export.patch
  - add 0641-fix-font-handling.patch</changelog>
  <changelog author="Martin Winter &lt;me@letsfindaway.de&gt;" date="1656072001">- minor changes in spec file</changelog>
  <changelog author="Martin Winter &lt;me@letsfindaway.de&gt;" date="1663156800">- update to version 1.7.0~git20220914.47a96e1
- feat: user configurable shortcuts
  * add 0460-shortcut-configuration.patch
- fix: boxing in single screen mode
  * update 0633-improve-displaymanager.patch
- fix: PDF background export
  * update 0637-fix-pdf-background-export.patch
- fix: font handling
  * update 0641-fix-font-handling.patch
- fix: PDF export scaling
  * add 0649-fix-pdf-export-scaling.patch
- refactor: Linux build and installation
  * add 0651-chore-reorganize-linux-build.patch
  * replaces 0001-Rewrite-libs.pri.patch
  * replaces 0002-Install-to-correct-directories-on-linux.patch
  * replaces 0003-podcast.pri-port-to-pkgconfig.patch
  * replaces 0004-Use-QStandardPaths-to-locate-resources.patch
  * replaces 0005-Add-svg-icon.patch
  * replaces 0006-pro-Remove-UB_THIRDPARTY_INTERACTIVE.patch
  * replaces 0007-Linux-Only-use-onboard-by-default-if-it-s-installed.patch
  * replaces 0008-install-fonts.patch
  * add mimespec for .ubz files
  * also improve handling of onboard on-screen keyboard
- refactor: clean spec file</changelog>
  <changelog author="Martin Winter &lt;me@letsfindaway.de&gt;" date="1663675200">- fix file list in spec file
  - do not include /usr/share/mime/packages directory owned by
    filesystem</changelog>
  <changelog author="Martin Winter &lt;me@letsfindaway.de&gt;" date="1669723200">- update to version 1.7.0~git20221129.9de37af
- feat: user configurable shortcuts
  * replace 0460-shortcut-configuration.patch by updated
    0686-shortcut-configuration.patch
  * add 9686-cmake-add-shortcut-manager.patch
    add new files to CMakeLists.txt
- fix: background drawing when switching page size
  * update 0551-common-background-drawing.patch
- fix: mirror pixmap size
  * update 0569-scale-mirror-pixmap.patch
- remove upstreamed patches
  * remove upstreamed 0604-qt-5.12-compatibility.patch
  * remove upstreamed 0629-bug-ruler.patch
  * remove upstreamed 0633-improve-displaymanager.patch
  * remove upstreamed 0637-fix-pdf-background-export.patch
  * remove upstreamed 0641-fix-font-handling.patch
  * remove upstreamed 0649-fix-pdf-export-scaling.patch
- chore: replace qmake by cmake build system
  * remove 0651-chore-reorganize-linux-build.patch
  * add 0698-add-cmake-build-system.patch
- fix: page size for PDF export
  * add 0677-pdf-export-page-size.patch
- disable software update from openboard web page
  * add 9117-disable-software-update.patch</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1674648000">- BuildRequire pkgconfig(libavdevice) instead of ffmpeg-devel: let
  OBS figure out the right packages that do not conlfict.</changelog>
  <changelog author="Martin Winter &lt;me@letsfindaway.de&gt;" date="1687089600">- update to version 1.7.0~git20230614.2ff8f29
  * feature freeze before release
- remove upstreamed patches
  * remove upstreamed 0551-common-background-drawing.patch
  * remove upstreamed 0677-pdf-export-page-size.patch
- update patches to match updated sources
  * update 0686-shortcut-configuration.patch
  * update 0698-add-cmake-build-system.patch
  * update 9117-disable-software-update.patch</changelog>
  <changelog author="Martin Winter &lt;me@letsfindaway.de&gt;" date="1702123200">- update to release version 1.7.0
- update patches to match updated sources
  * update 0569-scale-mirror-pixmap.patch
  * update 0686-shortcut-configuration.patch
- replace build system patch
  * remove 0698-add-cmake-build-system.patch
  * add 0830-cmake-community-builds.patch
- switch from pgkconfig to cmake for some BuildRequires</changelog>
  <changelog author="Martin Winter &lt;me@letsfindaway.de&gt;" date="1715169600">- update to release version 1.7.1
- remove upstreamed patches
  * remove 0830-cmake-community-builds.patch
  * remove 9686-cmake-add-shortcut-manager.patch
- update patch to match updated sources
  * replace 0686-shortcut-configuration.patch by 0955-shortcut-configuration.patch</changelog>
  <changelog author="Martin Winter &lt;me@letsfindaway.de&gt;" date="1717934400">- fix a problem with latest plasma5 security patches
  * add 1010-fix-qapp-cast.patch</changelog>
  <changelog author="Martin Winter &lt;me@letsfindaway.de&gt;" date="1720094400">- compatibility with poppler &gt;= 24.05
  * poppler &gt;= 24.05 requires c++20
  * add 0961-use-cpp20.patch
  * add 0962-fix-cpp20-compatibility.patch
  * both patches are already merged upstream
    and will be part of the next release</changelog>
  <changelog author="Martin Winter &lt;me@letsfindaway.de&gt;" date="1723550400">- compatibility with ffmpeg-7
  * add 1017-ffmpeg7.patch
  * patch is already merged and will be part of the next release</changelog>
  <changelog author="Martin Winter &lt;me@letsfindaway.de&gt;" date="1731931200">- update to release version 1.7.2
- remove upstreamed patches
  * remove 0569-scale-mirror-pixmap.patch
  * remove 0961-use-cpp20.patch
  * remove 0962-fix-cpp20-compatibility.patch
  * remove 1010-fix-qapp-cast.patch
  * remove 1017-ffmpeg7.patch
- adjust patches to new version
  * adjust 0955-shortcut-configuration.patch
  * adjust 9117-disable-software-update.patch
- add patch to circumvent some problems on wayland
  * add 1165-fix-some-wayland-problems.patch
- switch from Qt5 to Qt6</changelog>
</package>
<package pkgid="bd83fa366771b07f7669b0124d6e15cac78f6925b4b0ffb72ddda072918a9744d846ab41935c0128bc26ac9da5ce755b29543996d6c8f7e0622b92db610d2c23" name="OpenBoard-debugsource" arch="x86_64">
  <version epoch="0" ver="1.7.2" rel="1.1"/>
  <changelog author="Adam Majer &lt;adam.majer@suse.de&gt;" date="1612785600">- Compile translations so they are installed (bsc#1181857)</changelog>
  <changelog author="Martin Winter &lt;martin@winter-rosenheim.de&gt;" date="1640692800">- update to OpenBoard 1.6.1
  - adapt patches</changelog>
  <changelog author="Martin Winter &lt;me@letsfindaway.de&gt;" date="1647345600">- add 0573-compile-with-poppler-22.03.patch</changelog>
  <changelog author="Martin Winter &lt;me@letsfindaway.de&gt;" date="1654516800">- Update to 1.6.2
  - see https://github.com/OpenBoard-org/OpenBoard/releases/tag/v1.6.2
  - adapt 0001-Rewrite-libs.pri.patch
  - adapt 0002-Install-to-correct-directories-on-linux.patch
  - drop 0573-compile-with-poppler-22.03.patch (upstreamed)</changelog>
  <changelog author="Martin Winter &lt;me@letsfindaway.de&gt;" date="1655121600">- Update to 1.6.3
  - see https://github.com/OpenBoard-org/OpenBoard/releases/tag/v1.6.3</changelog>
  <changelog author="Martin Winter &lt;me@letsfindaway.de&gt;" date="1655640000">- update to 1.7.0~git47a96e1
  - use development branch to enable build for Tumbleweed
    (switch from QWebKit to QWebEngine)
- add patches fixing known issues according to existing upstream PRs
  - 0551-common-background-drawing.patch
  - 0569-scale-mirror-pixmap.patch
  - 0604-qt-5.12-compatibility.patch
  - 0629-bug-ruler.patch
  - 0633-improve-displaymanager.patch
- remove unused build dependencies</changelog>
  <changelog author="Martin Winter &lt;me@letsfindaway.de&gt;" date="1656072000">- fix several issues
  - add 0008-install-fonts.patch
  - add 0637-fix-pdf-background-export.patch
  - add 0641-fix-font-handling.patch</changelog>
  <changelog author="Martin Winter &lt;me@letsfindaway.de&gt;" date="1656072001">- minor changes in spec file</changelog>
  <changelog author="Martin Winter &lt;me@letsfindaway.de&gt;" date="1663156800">- update to version 1.7.0~git20220914.47a96e1
- feat: user configurable shortcuts
  * add 0460-shortcut-configuration.patch
- fix: boxing in single screen mode
  * update 0633-improve-displaymanager.patch
- fix: PDF background export
  * update 0637-fix-pdf-background-export.patch
- fix: font handling
  * update 0641-fix-font-handling.patch
- fix: PDF export scaling
  * add 0649-fix-pdf-export-scaling.patch
- refactor: Linux build and installation
  * add 0651-chore-reorganize-linux-build.patch
  * replaces 0001-Rewrite-libs.pri.patch
  * replaces 0002-Install-to-correct-directories-on-linux.patch
  * replaces 0003-podcast.pri-port-to-pkgconfig.patch
  * replaces 0004-Use-QStandardPaths-to-locate-resources.patch
  * replaces 0005-Add-svg-icon.patch
  * replaces 0006-pro-Remove-UB_THIRDPARTY_INTERACTIVE.patch
  * replaces 0007-Linux-Only-use-onboard-by-default-if-it-s-installed.patch
  * replaces 0008-install-fonts.patch
  * add mimespec for .ubz files
  * also improve handling of onboard on-screen keyboard
- refactor: clean spec file</changelog>
  <changelog author="Martin Winter &lt;me@letsfindaway.de&gt;" date="1663675200">- fix file list in spec file
  - do not include /usr/share/mime/packages directory owned by
    filesystem</changelog>
  <changelog author="Martin Winter &lt;me@letsfindaway.de&gt;" date="1669723200">- update to version 1.7.0~git20221129.9de37af
- feat: user configurable shortcuts
  * replace 0460-shortcut-configuration.patch by updated
    0686-shortcut-configuration.patch
  * add 9686-cmake-add-shortcut-manager.patch
    add new files to CMakeLists.txt
- fix: background drawing when switching page size
  * update 0551-common-background-drawing.patch
- fix: mirror pixmap size
  * update 0569-scale-mirror-pixmap.patch
- remove upstreamed patches
  * remove upstreamed 0604-qt-5.12-compatibility.patch
  * remove upstreamed 0629-bug-ruler.patch
  * remove upstreamed 0633-improve-displaymanager.patch
  * remove upstreamed 0637-fix-pdf-background-export.patch
  * remove upstreamed 0641-fix-font-handling.patch
  * remove upstreamed 0649-fix-pdf-export-scaling.patch
- chore: replace qmake by cmake build system
  * remove 0651-chore-reorganize-linux-build.patch
  * add 0698-add-cmake-build-system.patch
- fix: page size for PDF export
  * add 0677-pdf-export-page-size.patch
- disable software update from openboard web page
  * add 9117-disable-software-update.patch</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1674648000">- BuildRequire pkgconfig(libavdevice) instead of ffmpeg-devel: let
  OBS figure out the right packages that do not conlfict.</changelog>
  <changelog author="Martin Winter &lt;me@letsfindaway.de&gt;" date="1687089600">- update to version 1.7.0~git20230614.2ff8f29
  * feature freeze before release
- remove upstreamed patches
  * remove upstreamed 0551-common-background-drawing.patch
  * remove upstreamed 0677-pdf-export-page-size.patch
- update patches to match updated sources
  * update 0686-shortcut-configuration.patch
  * update 0698-add-cmake-build-system.patch
  * update 9117-disable-software-update.patch</changelog>
  <changelog author="Martin Winter &lt;me@letsfindaway.de&gt;" date="1702123200">- update to release version 1.7.0
- update patches to match updated sources
  * update 0569-scale-mirror-pixmap.patch
  * update 0686-shortcut-configuration.patch
- replace build system patch
  * remove 0698-add-cmake-build-system.patch
  * add 0830-cmake-community-builds.patch
- switch from pgkconfig to cmake for some BuildRequires</changelog>
  <changelog author="Martin Winter &lt;me@letsfindaway.de&gt;" date="1715169600">- update to release version 1.7.1
- remove upstreamed patches
  * remove 0830-cmake-community-builds.patch
  * remove 9686-cmake-add-shortcut-manager.patch
- update patch to match updated sources
  * replace 0686-shortcut-configuration.patch by 0955-shortcut-configuration.patch</changelog>
  <changelog author="Martin Winter &lt;me@letsfindaway.de&gt;" date="1717934400">- fix a problem with latest plasma5 security patches
  * add 1010-fix-qapp-cast.patch</changelog>
  <changelog author="Martin Winter &lt;me@letsfindaway.de&gt;" date="1720094400">- compatibility with poppler &gt;= 24.05
  * poppler &gt;= 24.05 requires c++20
  * add 0961-use-cpp20.patch
  * add 0962-fix-cpp20-compatibility.patch
  * both patches are already merged upstream
    and will be part of the next release</changelog>
  <changelog author="Martin Winter &lt;me@letsfindaway.de&gt;" date="1723550400">- compatibility with ffmpeg-7
  * add 1017-ffmpeg7.patch
  * patch is already merged and will be part of the next release</changelog>
  <changelog author="Martin Winter &lt;me@letsfindaway.de&gt;" date="1731931200">- update to release version 1.7.2
- remove upstreamed patches
  * remove 0569-scale-mirror-pixmap.patch
  * remove 0961-use-cpp20.patch
  * remove 0962-fix-cpp20-compatibility.patch
  * remove 1010-fix-qapp-cast.patch
  * remove 1017-ffmpeg7.patch
- adjust patches to new version
  * adjust 0955-shortcut-configuration.patch
  * adjust 9117-disable-software-update.patch
- add patch to circumvent some problems on wayland
  * add 1165-fix-some-wayland-problems.patch
- switch from Qt5 to Qt6</changelog>
</package>
<package pkgid="651af5249509a8e7a2f9e0b7d8de687f5140878532291b166cba3aa70615d51602151ec2b73dcfb62442a3e8d50aba233a0b5150477af35f401138ef5492203a" name="OpenImageIO" arch="src">
  <version epoch="0" ver="2.5.17.0" rel="1.1.2.1.sr20241103"/>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1706788800">- update to 2.5.8.0:
  - feat(oiiotool): New --buildinfo command prints build
    information,
  - including version, compiler, and all library dependencies.
    [#4124]
  - feat(api): New global getattribute queries: "build:platform",
  - "build:compiler", "build:dependencies" #4124
  - feat(openexr): Add support for luminance-chroma OpenEXR images.
    [#4070] (by jreichel-nvidia)
  - fix(raw): Avoid buffer overrun for flip direction cases #4100
  - fix(iv): Assume iv display gamma 2.2 if GAMMA env variable is
    not set #4118
  - fix: Fixes to reduce problems identified by static analysis
    [#4113]
  - dev(simd.h): Make all-architecture matrix44::inverse() #4076
  - dev(simd.h): Fix AVX-512 round function #4119 (by AngryLoki)
  - build(deps): Remove Findfmt.cmake, rely on that package's
    exported config. #4069 #4103 (by Dominik Wójt)
  - build(deps): Account for header changes in fmt project trunk
    [#4109] #4114
  - tests: Shuffle some tests between directories #4091
  - tests: Fix docs test, used wrong namespace #4090
  - docs: Fix broken IBA color management documentation #4104
  - style: Update our formatting standard to clang-format 17.0 and
    C++17 #4096</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1707307200">- Add https://github.com/AcademySoftwareFoundation/OpenImageIO/pull/4143.patch
  Potential patch to fix the aarch64 regressions reported here:
  https://github.com/AcademySoftwareFoundation/OpenImageIO/issues/4111
  This can be dropped in the next version update.</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1707307201">- Upgrade the image files to 20240205T200840
  this fixes a small license issue</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1707307202">- we need at least OpenEXR 2.4. force this</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709294400">- update to 2.5.9.0:
  - oiiotool: Overhaul and fix bugs in mixed-channel propogation
    [#4127]
  - oiiotool: Fixes to buildinfo queries #4150
  - dcmtk: Fixes for DCMTK #4147
  - build: Address NEON issues in simd.h. #4143
  - typedesc.h: Allow TypeDesc to have all the right POD attributes
    [#4162] (by Scott Wilson)
  - internals: Various fixes for memory safety and reduce static
    analysis complaints #4128
  - internals: Coalesce redundant STRINGIZE macros -&gt;
    OIIO_STRINGIZE #4121
  - ci: Start using macos-14 ARM runners, bump latest OCIO #4134
  - ci: Switch away from deprecated GHA idiom set-output #4141
  - ci: Add vfx platform 2024 #4163
  - ci: Fix Windows CI, need to build newer openexr and adjust
    boost search #4167
  - tests: Add test for filter values and 'filter_list' query #4140
  - docs: Update SECURITY and RELEASING documentation #4138
  - docs: Fix tab that was missing from the rendering on rtd #4137
  - docs: Fix python example #4139
  - admin: More updated relicensing code under Apache 2.0
- drop 4143.patch. included in update.</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709294401">- We need pkgconfig(libxml-2.0) now</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1712059200">- update to 2.5.10.1
  It seems 2.5.10.0 was pulled again, because 2.5.10.0 was
  mis-tagged.
  - oiiotool: Expression substitution now understands
    pseudo-metadata NONFINITE_COUNT that returns the number of
    nonfinite values in the image, thus allowing decision making
    about fixnan #4171
  - color management: Automatically recognize some additional color
    space name synonyms: "srgb_texture", "lin_rec709" and
    "lin_ap1". Also add common permutation "srgb_tx" and "srgb
    texture" as additional aliases for "srgb". #4166
  - openexr: Implement copy_image for OpenEXR #4004 (by Andy Chan)
  - heic: Don't auto-transform camera-rotated images #4142 #4184
  - hash.h: Mismatched pragma push/pop in hash.h #4182
  - simd.h: gather_mask() was wrong for no-simd fallback #4183
  - texture.h: Overload decode_wrapmode to support ustringhash
    [#4207] (by Chris Hellmuth)
  - build: Fix warning when Freetype is disabled #4177
  - build: iv build issues with glTexImage3D #4202 (by Vlad
    (Kuzmin) Erium)
  - build: Fix buld_ninja.bash to make directories and download
    correctly #4192 (by Sergio Rojas)
  - build: Need additional include #4194
  - build: FindOpenColorIO failed to properly set
    OpenColorIO_VERSION #4196
  - build: Restore internals of strhash to compile correctly on 32
    bit architectures #4213
  - ci: Allow triggering CI workflow from web #4178
  - ci: Make one of the Mac tests build for avx2 #4188
  - ci: Enable Windows 2022 CI tests #4195
  - docs: Fix some typos and add missing oiiotool expression
    explanations #4169
  - admin: Add a ROADMAP document #4161</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1714564800">- update to 2.5.11.0
  - dds: DDS support more DXGI formats #4220 (by alexguirre)
  - psd: Add support for 16- and 32-bit Photoshop file reads #4208
    (by EmilDohne)
  - fix(fmt.h): Fix build break from recent fmt change #4227
  - fix(openexr): Fix out-of-bounds reads when using OpenEXR
    decreasingY lineOrder. #4215 (by Aaron Colwell)
  - fix: Don't use (DY)LD_LIBRARY_PATH as plugin search paths #4245
    (by Brecht Van Lommel)
  - fix: Fix crash when no default fonts are found #4249
  - build: Disable clang18 warnings about deprecated unicode
    conversion #4246
  - security: Better documentation of past CVE fixes in SECURITY.md
    [#4238]</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1714651200">- Update the images tarball to include the files needed for issue
  [#4220]</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1717329600">- update to 2.5.12.0
  - exr: Add IOProxy support for EXR multipart output #4263 #4264
    (by jreichel-nvidia)
  - pnm: Improvements to pnm plugin: support for uint16 and
    32-float, "pnm:bigendian" and "pnm:pfmflip" controls for
    output. #4253 (by Vlad (Kuzmin) Erium)
  - ImageBuf: Improve behavior of IB::nsubimages and other related
    fixes #4228
  - simd.h: Fix longstanding problem with 16-wide bitcast for
    8-wide HW #4268
  - strutil.h: Add Strutil::eval_as_bool #4250
  - tests: Add new heif test output #4262
  - tests: Fix windows quoting for test #4271
  - build: More warning elimination for clang18 #4257
  - build: Add appropriate compiler defines and flags for SIMD with
    MSVC #4266 (by Jesse Yurkovich)
  - build: Gcc-14 support, testing, CI #4270
  - docs: Fix stray references to the old repo home #4255</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1719835200">- update to 2.5.13.0
  - fix: Various PSD files fail to load correctly #4302 (by Jesse
    Yurkovich)
  - fix: Improve error messages when a font is not found #4284
  - int: In platform.h, define OIIO_DEVICE macro #4290
  - ci: Typo in build_libtiff.bash #4280
  - docs: Update INSTALL.md for windows #4279 (by Mel Massadian)
  - docs: Fixes to formatting and sphinx warnings #4301</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1721217600">- update to 2.5.13.1 (CVE-2024-40630 boo#1227897)
  fix(heic): Correctly set imagespec size for heif images.
  security advisory (by Gerrard Tai)
  https://github.com/AcademySoftwareFoundation/OpenImageIO/security/advisories/GHSA-jjm9-9m4m-c8p2</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1722686400">- update to 2.5.14.0
  - fix (png): Correctly read PNGs with partial alpha #4315
    (2.5.14.0)
  - fix(ImageBuf): Copy/paste error in the ImageBuf iterator copy
    constructor #4365 (by Anton Dukhovnikov)
  - perf/TS: Only write full metadata to the first mip level #4320
    (2.5.14.0)
  - dev(strutil.h): Strutil::string_is_identifier() #4333
    (2.5.14.0)
  - build: Avoid rebuilds due to processing of fmt headers #4313
    (by Jesse Yurkovich) (2.5.14.0)
  - build: Fix boost vs cmake 3.30 problem.
  - ci: Sanitizer new warnings about signed/unsigned offsets in
    openexr #4351 (2.5.14.0)
  - docs: Clarify that IBA::rotate params are pixel coordinates
    [#4358] (2.5.14.0)
  - admin: More CLA explanation and how-to links #4318 (2.5.14.0)
  - admin: Document my git-cliff workflow for release notes #4319
    (2.5.14.0)
  - security: Document CVE-2024-40630 resolution (2.5.14.0)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1725278400">- update to 2.5.15.0
  - ffmpeg: Add proper detection of new FFmpeg versions #4394 (by
    Darby Johnston)
  - ffmpeg: Retrieve timecode metadata #4396 (by Darby Johnston)
  - png: Bug in associateAlpha botched alpha=0 pixels #4386
  - raw: Expose additional white balancing hints #4360 (by Anton
    Dukhovnikov)
  - oiiotool: -i:ch=... didn't fix up alpha and z channels #4373
  - fix: Catch potential OCIO exception that we were missing #4379
  - build: Finish removing Imath include #4371 (by Thiago Ize)
  - tests: Adjust RB-2.5 simd_test to allow a little more slop on
    fast_exp #4372</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727870400">- update to 2.5.16.0
  - ImageInput: Fix: Initialize pixels of partial tile conversion
    buffer to avoid possible floating point exceptionså. #4462 (by
    Bram Stolk)
  - iv: Fix: Iv shows constant brown and GL error messages on
    start-up. #4451 (by David Adler)
  - iv: Fix: Initialize variables before we use them. #4457 (by
    Bram Stolk)
  - pnm: Fix: Initialize m_pfm_flip before use to avoid UB. #4446
    (by Bram Stolk)
  - raw: Fix: Check for nullptr in raw input plugin #4448 (by Anton
    Dukhovnikov)
  - ci: Streamline the old MacOS-12 CI test #4465
  - ci: Test against OCIO 2.4 #4467 and OpenEXR 3.3 #4466
  - docs: Clarify TextureSystem::create use of imagecache when
    shared=true #4399
  - docs: Switch license name in docs #4407
  - admin: Change docs and comments references master -&gt; main #4435</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730462400">- update to 2.5.17.0
  - iinfo: fix: iinfo was not reading MIP levels correctly #4498
  - text rendering: Windows newline shows invalid character in text
    render #4501 (by peterhorvath111)
  - fix: Address fmt exceptions for left justification #4510
  - perf: Additional timing logging for performance investigations
    [#4506]
  - strutil.h: Fix typo in description of Strutil::parse_values
    [#4512]
  - build: Don't change CMAKE_XXX_OUTPUT_DIRECTORY when built as
    subdir #4417 (by Luc Touraille)
  - deps: Search for libbz2 only if FFmpeg or FreeType is enabled.
    [#4505] (by jreichel-nvidia)
  - tests: Fixup after directory refactor of OpenImageIO-images
    [#4473]
  - ci: Make scrorecards workflow not fail constantly #4471
  - ci: Retire deprecated macos12 runner, try beta macos15 #4514
  - docs: Update to vanity URL for the docs #4494</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730462401">- update oiio-test images to 3e9caba to see if that fixes the
  testsuite</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1731153600">- Update to 3.0.0.3
  - Updated minimum toolchain: C++17/gcc9.3, Python 3.7, CMake
    3.18.2, and raised min versions of most library dependencies.
  - New image format support: JPEG XL, R3D.
  - oiiotool new commands: --cryptomatte-colors, --demosaic,
  - -buildinfo, --ocionamedtransform, --popbottom, --stackreverse,
  - -stackclear, --stackextract; improved --for behavior for
    reverse direction.
  - Lots of long-deprecated API calls have been removed entirely.
    Please see the detailed deprecation list.
  - New ImageBufAlgo: perpixel_op(), demosaic(),
    ocionamedtransform().
  - ImageBuf now by default does not use ImageCache to mediate file
    images, unless you explicitly ask for it.
  - ImageCache &amp; TextureSystem now use shared_ptr for creation, not
    raw pointers. And they have been de-virtualized, for easier
    future expansion flexibility without breaking ABI for any small
    change.
  - Improved and more consistent color space name nomenclature.
  - Build system now is capable of auto-downloading and building
    several of the most important dependencies if they are missing
    at build time.
  - Please note that the development branch in the GitHub repo is
    now named main instead of master.
  For all the details see:
  https://github.com/AcademySoftwareFoundation/OpenImageIO/releases/tag/v3.0.0.3
- Update oiio-test images 7e6d875 for the 3.0 release
- Bump all BuildRequires to the minimum versions in the changes
  entry
- switch package to Qt6</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1731153601">- Handle renamed tests in the exclude list
  - also make it easier to maintain by refactoring the list out
    into variables.</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1731585600">- Downgrade back to 2.5.17.0</changelog>
</package>
<package pkgid="fae41998925915dba833d7d093a8803dffd75f3a8e7238c09d5a9098702b8e4cd3131f426064b66f7cbe189af71046d4622234e002aa50b6c49dfc548ce6a8bf" name="OpenImageIO" arch="x86_64">
  <version epoch="0" ver="2.5.17.0" rel="1.1.2.1.sr20241103"/>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1706788800">- update to 2.5.8.0:
  - feat(oiiotool): New --buildinfo command prints build
    information,
  - including version, compiler, and all library dependencies.
    [#4124]
  - feat(api): New global getattribute queries: "build:platform",
  - "build:compiler", "build:dependencies" #4124
  - feat(openexr): Add support for luminance-chroma OpenEXR images.
    [#4070] (by jreichel-nvidia)
  - fix(raw): Avoid buffer overrun for flip direction cases #4100
  - fix(iv): Assume iv display gamma 2.2 if GAMMA env variable is
    not set #4118
  - fix: Fixes to reduce problems identified by static analysis
    [#4113]
  - dev(simd.h): Make all-architecture matrix44::inverse() #4076
  - dev(simd.h): Fix AVX-512 round function #4119 (by AngryLoki)
  - build(deps): Remove Findfmt.cmake, rely on that package's
    exported config. #4069 #4103 (by Dominik Wójt)
  - build(deps): Account for header changes in fmt project trunk
    [#4109] #4114
  - tests: Shuffle some tests between directories #4091
  - tests: Fix docs test, used wrong namespace #4090
  - docs: Fix broken IBA color management documentation #4104
  - style: Update our formatting standard to clang-format 17.0 and
    C++17 #4096</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1707307200">- Add https://github.com/AcademySoftwareFoundation/OpenImageIO/pull/4143.patch
  Potential patch to fix the aarch64 regressions reported here:
  https://github.com/AcademySoftwareFoundation/OpenImageIO/issues/4111
  This can be dropped in the next version update.</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1707307201">- Upgrade the image files to 20240205T200840
  this fixes a small license issue</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1707307202">- we need at least OpenEXR 2.4. force this</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709294400">- update to 2.5.9.0:
  - oiiotool: Overhaul and fix bugs in mixed-channel propogation
    [#4127]
  - oiiotool: Fixes to buildinfo queries #4150
  - dcmtk: Fixes for DCMTK #4147
  - build: Address NEON issues in simd.h. #4143
  - typedesc.h: Allow TypeDesc to have all the right POD attributes
    [#4162] (by Scott Wilson)
  - internals: Various fixes for memory safety and reduce static
    analysis complaints #4128
  - internals: Coalesce redundant STRINGIZE macros -&gt;
    OIIO_STRINGIZE #4121
  - ci: Start using macos-14 ARM runners, bump latest OCIO #4134
  - ci: Switch away from deprecated GHA idiom set-output #4141
  - ci: Add vfx platform 2024 #4163
  - ci: Fix Windows CI, need to build newer openexr and adjust
    boost search #4167
  - tests: Add test for filter values and 'filter_list' query #4140
  - docs: Update SECURITY and RELEASING documentation #4138
  - docs: Fix tab that was missing from the rendering on rtd #4137
  - docs: Fix python example #4139
  - admin: More updated relicensing code under Apache 2.0
- drop 4143.patch. included in update.</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709294401">- We need pkgconfig(libxml-2.0) now</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1712059200">- update to 2.5.10.1
  It seems 2.5.10.0 was pulled again, because 2.5.10.0 was
  mis-tagged.
  - oiiotool: Expression substitution now understands
    pseudo-metadata NONFINITE_COUNT that returns the number of
    nonfinite values in the image, thus allowing decision making
    about fixnan #4171
  - color management: Automatically recognize some additional color
    space name synonyms: "srgb_texture", "lin_rec709" and
    "lin_ap1". Also add common permutation "srgb_tx" and "srgb
    texture" as additional aliases for "srgb". #4166
  - openexr: Implement copy_image for OpenEXR #4004 (by Andy Chan)
  - heic: Don't auto-transform camera-rotated images #4142 #4184
  - hash.h: Mismatched pragma push/pop in hash.h #4182
  - simd.h: gather_mask() was wrong for no-simd fallback #4183
  - texture.h: Overload decode_wrapmode to support ustringhash
    [#4207] (by Chris Hellmuth)
  - build: Fix warning when Freetype is disabled #4177
  - build: iv build issues with glTexImage3D #4202 (by Vlad
    (Kuzmin) Erium)
  - build: Fix buld_ninja.bash to make directories and download
    correctly #4192 (by Sergio Rojas)
  - build: Need additional include #4194
  - build: FindOpenColorIO failed to properly set
    OpenColorIO_VERSION #4196
  - build: Restore internals of strhash to compile correctly on 32
    bit architectures #4213
  - ci: Allow triggering CI workflow from web #4178
  - ci: Make one of the Mac tests build for avx2 #4188
  - ci: Enable Windows 2022 CI tests #4195
  - docs: Fix some typos and add missing oiiotool expression
    explanations #4169
  - admin: Add a ROADMAP document #4161</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1714564800">- update to 2.5.11.0
  - dds: DDS support more DXGI formats #4220 (by alexguirre)
  - psd: Add support for 16- and 32-bit Photoshop file reads #4208
    (by EmilDohne)
  - fix(fmt.h): Fix build break from recent fmt change #4227
  - fix(openexr): Fix out-of-bounds reads when using OpenEXR
    decreasingY lineOrder. #4215 (by Aaron Colwell)
  - fix: Don't use (DY)LD_LIBRARY_PATH as plugin search paths #4245
    (by Brecht Van Lommel)
  - fix: Fix crash when no default fonts are found #4249
  - build: Disable clang18 warnings about deprecated unicode
    conversion #4246
  - security: Better documentation of past CVE fixes in SECURITY.md
    [#4238]</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1714651200">- Update the images tarball to include the files needed for issue
  [#4220]</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1717329600">- update to 2.5.12.0
  - exr: Add IOProxy support for EXR multipart output #4263 #4264
    (by jreichel-nvidia)
  - pnm: Improvements to pnm plugin: support for uint16 and
    32-float, "pnm:bigendian" and "pnm:pfmflip" controls for
    output. #4253 (by Vlad (Kuzmin) Erium)
  - ImageBuf: Improve behavior of IB::nsubimages and other related
    fixes #4228
  - simd.h: Fix longstanding problem with 16-wide bitcast for
    8-wide HW #4268
  - strutil.h: Add Strutil::eval_as_bool #4250
  - tests: Add new heif test output #4262
  - tests: Fix windows quoting for test #4271
  - build: More warning elimination for clang18 #4257
  - build: Add appropriate compiler defines and flags for SIMD with
    MSVC #4266 (by Jesse Yurkovich)
  - build: Gcc-14 support, testing, CI #4270
  - docs: Fix stray references to the old repo home #4255</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1719835200">- update to 2.5.13.0
  - fix: Various PSD files fail to load correctly #4302 (by Jesse
    Yurkovich)
  - fix: Improve error messages when a font is not found #4284
  - int: In platform.h, define OIIO_DEVICE macro #4290
  - ci: Typo in build_libtiff.bash #4280
  - docs: Update INSTALL.md for windows #4279 (by Mel Massadian)
  - docs: Fixes to formatting and sphinx warnings #4301</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1721217600">- update to 2.5.13.1 (CVE-2024-40630 boo#1227897)
  fix(heic): Correctly set imagespec size for heif images.
  security advisory (by Gerrard Tai)
  https://github.com/AcademySoftwareFoundation/OpenImageIO/security/advisories/GHSA-jjm9-9m4m-c8p2</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1722686400">- update to 2.5.14.0
  - fix (png): Correctly read PNGs with partial alpha #4315
    (2.5.14.0)
  - fix(ImageBuf): Copy/paste error in the ImageBuf iterator copy
    constructor #4365 (by Anton Dukhovnikov)
  - perf/TS: Only write full metadata to the first mip level #4320
    (2.5.14.0)
  - dev(strutil.h): Strutil::string_is_identifier() #4333
    (2.5.14.0)
  - build: Avoid rebuilds due to processing of fmt headers #4313
    (by Jesse Yurkovich) (2.5.14.0)
  - build: Fix boost vs cmake 3.30 problem.
  - ci: Sanitizer new warnings about signed/unsigned offsets in
    openexr #4351 (2.5.14.0)
  - docs: Clarify that IBA::rotate params are pixel coordinates
    [#4358] (2.5.14.0)
  - admin: More CLA explanation and how-to links #4318 (2.5.14.0)
  - admin: Document my git-cliff workflow for release notes #4319
    (2.5.14.0)
  - security: Document CVE-2024-40630 resolution (2.5.14.0)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1725278400">- update to 2.5.15.0
  - ffmpeg: Add proper detection of new FFmpeg versions #4394 (by
    Darby Johnston)
  - ffmpeg: Retrieve timecode metadata #4396 (by Darby Johnston)
  - png: Bug in associateAlpha botched alpha=0 pixels #4386
  - raw: Expose additional white balancing hints #4360 (by Anton
    Dukhovnikov)
  - oiiotool: -i:ch=... didn't fix up alpha and z channels #4373
  - fix: Catch potential OCIO exception that we were missing #4379
  - build: Finish removing Imath include #4371 (by Thiago Ize)
  - tests: Adjust RB-2.5 simd_test to allow a little more slop on
    fast_exp #4372</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727870400">- update to 2.5.16.0
  - ImageInput: Fix: Initialize pixels of partial tile conversion
    buffer to avoid possible floating point exceptionså. #4462 (by
    Bram Stolk)
  - iv: Fix: Iv shows constant brown and GL error messages on
    start-up. #4451 (by David Adler)
  - iv: Fix: Initialize variables before we use them. #4457 (by
    Bram Stolk)
  - pnm: Fix: Initialize m_pfm_flip before use to avoid UB. #4446
    (by Bram Stolk)
  - raw: Fix: Check for nullptr in raw input plugin #4448 (by Anton
    Dukhovnikov)
  - ci: Streamline the old MacOS-12 CI test #4465
  - ci: Test against OCIO 2.4 #4467 and OpenEXR 3.3 #4466
  - docs: Clarify TextureSystem::create use of imagecache when
    shared=true #4399
  - docs: Switch license name in docs #4407
  - admin: Change docs and comments references master -&gt; main #4435</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730462400">- update to 2.5.17.0
  - iinfo: fix: iinfo was not reading MIP levels correctly #4498
  - text rendering: Windows newline shows invalid character in text
    render #4501 (by peterhorvath111)
  - fix: Address fmt exceptions for left justification #4510
  - perf: Additional timing logging for performance investigations
    [#4506]
  - strutil.h: Fix typo in description of Strutil::parse_values
    [#4512]
  - build: Don't change CMAKE_XXX_OUTPUT_DIRECTORY when built as
    subdir #4417 (by Luc Touraille)
  - deps: Search for libbz2 only if FFmpeg or FreeType is enabled.
    [#4505] (by jreichel-nvidia)
  - tests: Fixup after directory refactor of OpenImageIO-images
    [#4473]
  - ci: Make scrorecards workflow not fail constantly #4471
  - ci: Retire deprecated macos12 runner, try beta macos15 #4514
  - docs: Update to vanity URL for the docs #4494</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730462401">- update oiio-test images to 3e9caba to see if that fixes the
  testsuite</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1731153600">- Update to 3.0.0.3
  - Updated minimum toolchain: C++17/gcc9.3, Python 3.7, CMake
    3.18.2, and raised min versions of most library dependencies.
  - New image format support: JPEG XL, R3D.
  - oiiotool new commands: --cryptomatte-colors, --demosaic,
  - -buildinfo, --ocionamedtransform, --popbottom, --stackreverse,
  - -stackclear, --stackextract; improved --for behavior for
    reverse direction.
  - Lots of long-deprecated API calls have been removed entirely.
    Please see the detailed deprecation list.
  - New ImageBufAlgo: perpixel_op(), demosaic(),
    ocionamedtransform().
  - ImageBuf now by default does not use ImageCache to mediate file
    images, unless you explicitly ask for it.
  - ImageCache &amp; TextureSystem now use shared_ptr for creation, not
    raw pointers. And they have been de-virtualized, for easier
    future expansion flexibility without breaking ABI for any small
    change.
  - Improved and more consistent color space name nomenclature.
  - Build system now is capable of auto-downloading and building
    several of the most important dependencies if they are missing
    at build time.
  - Please note that the development branch in the GitHub repo is
    now named main instead of master.
  For all the details see:
  https://github.com/AcademySoftwareFoundation/OpenImageIO/releases/tag/v3.0.0.3
- Update oiio-test images 7e6d875 for the 3.0 release
- Bump all BuildRequires to the minimum versions in the changes
  entry
- switch package to Qt6</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1731153601">- Handle renamed tests in the exclude list
  - also make it easier to maintain by refactoring the list out
    into variables.</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1731585600">- Downgrade back to 2.5.17.0</changelog>
</package>
<package pkgid="8cd2cf03b015956453cd4445e07722d0bc556011b85b91a8cada537fb6663203f2e0abb6981eaf8fbc990494a9ef0145289641eed6e8f6ef5a631082ef3c7a49" name="OpenImageIO-debuginfo" arch="x86_64">
  <version epoch="0" ver="2.5.17.0" rel="1.1.2.1.sr20241103"/>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1706788800">- update to 2.5.8.0:
  - feat(oiiotool): New --buildinfo command prints build
    information,
  - including version, compiler, and all library dependencies.
    [#4124]
  - feat(api): New global getattribute queries: "build:platform",
  - "build:compiler", "build:dependencies" #4124
  - feat(openexr): Add support for luminance-chroma OpenEXR images.
    [#4070] (by jreichel-nvidia)
  - fix(raw): Avoid buffer overrun for flip direction cases #4100
  - fix(iv): Assume iv display gamma 2.2 if GAMMA env variable is
    not set #4118
  - fix: Fixes to reduce problems identified by static analysis
    [#4113]
  - dev(simd.h): Make all-architecture matrix44::inverse() #4076
  - dev(simd.h): Fix AVX-512 round function #4119 (by AngryLoki)
  - build(deps): Remove Findfmt.cmake, rely on that package's
    exported config. #4069 #4103 (by Dominik Wójt)
  - build(deps): Account for header changes in fmt project trunk
    [#4109] #4114
  - tests: Shuffle some tests between directories #4091
  - tests: Fix docs test, used wrong namespace #4090
  - docs: Fix broken IBA color management documentation #4104
  - style: Update our formatting standard to clang-format 17.0 and
    C++17 #4096</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1707307200">- Add https://github.com/AcademySoftwareFoundation/OpenImageIO/pull/4143.patch
  Potential patch to fix the aarch64 regressions reported here:
  https://github.com/AcademySoftwareFoundation/OpenImageIO/issues/4111
  This can be dropped in the next version update.</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1707307201">- Upgrade the image files to 20240205T200840
  this fixes a small license issue</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1707307202">- we need at least OpenEXR 2.4. force this</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709294400">- update to 2.5.9.0:
  - oiiotool: Overhaul and fix bugs in mixed-channel propogation
    [#4127]
  - oiiotool: Fixes to buildinfo queries #4150
  - dcmtk: Fixes for DCMTK #4147
  - build: Address NEON issues in simd.h. #4143
  - typedesc.h: Allow TypeDesc to have all the right POD attributes
    [#4162] (by Scott Wilson)
  - internals: Various fixes for memory safety and reduce static
    analysis complaints #4128
  - internals: Coalesce redundant STRINGIZE macros -&gt;
    OIIO_STRINGIZE #4121
  - ci: Start using macos-14 ARM runners, bump latest OCIO #4134
  - ci: Switch away from deprecated GHA idiom set-output #4141
  - ci: Add vfx platform 2024 #4163
  - ci: Fix Windows CI, need to build newer openexr and adjust
    boost search #4167
  - tests: Add test for filter values and 'filter_list' query #4140
  - docs: Update SECURITY and RELEASING documentation #4138
  - docs: Fix tab that was missing from the rendering on rtd #4137
  - docs: Fix python example #4139
  - admin: More updated relicensing code under Apache 2.0
- drop 4143.patch. included in update.</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709294401">- We need pkgconfig(libxml-2.0) now</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1712059200">- update to 2.5.10.1
  It seems 2.5.10.0 was pulled again, because 2.5.10.0 was
  mis-tagged.
  - oiiotool: Expression substitution now understands
    pseudo-metadata NONFINITE_COUNT that returns the number of
    nonfinite values in the image, thus allowing decision making
    about fixnan #4171
  - color management: Automatically recognize some additional color
    space name synonyms: "srgb_texture", "lin_rec709" and
    "lin_ap1". Also add common permutation "srgb_tx" and "srgb
    texture" as additional aliases for "srgb". #4166
  - openexr: Implement copy_image for OpenEXR #4004 (by Andy Chan)
  - heic: Don't auto-transform camera-rotated images #4142 #4184
  - hash.h: Mismatched pragma push/pop in hash.h #4182
  - simd.h: gather_mask() was wrong for no-simd fallback #4183
  - texture.h: Overload decode_wrapmode to support ustringhash
    [#4207] (by Chris Hellmuth)
  - build: Fix warning when Freetype is disabled #4177
  - build: iv build issues with glTexImage3D #4202 (by Vlad
    (Kuzmin) Erium)
  - build: Fix buld_ninja.bash to make directories and download
    correctly #4192 (by Sergio Rojas)
  - build: Need additional include #4194
  - build: FindOpenColorIO failed to properly set
    OpenColorIO_VERSION #4196
  - build: Restore internals of strhash to compile correctly on 32
    bit architectures #4213
  - ci: Allow triggering CI workflow from web #4178
  - ci: Make one of the Mac tests build for avx2 #4188
  - ci: Enable Windows 2022 CI tests #4195
  - docs: Fix some typos and add missing oiiotool expression
    explanations #4169
  - admin: Add a ROADMAP document #4161</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1714564800">- update to 2.5.11.0
  - dds: DDS support more DXGI formats #4220 (by alexguirre)
  - psd: Add support for 16- and 32-bit Photoshop file reads #4208
    (by EmilDohne)
  - fix(fmt.h): Fix build break from recent fmt change #4227
  - fix(openexr): Fix out-of-bounds reads when using OpenEXR
    decreasingY lineOrder. #4215 (by Aaron Colwell)
  - fix: Don't use (DY)LD_LIBRARY_PATH as plugin search paths #4245
    (by Brecht Van Lommel)
  - fix: Fix crash when no default fonts are found #4249
  - build: Disable clang18 warnings about deprecated unicode
    conversion #4246
  - security: Better documentation of past CVE fixes in SECURITY.md
    [#4238]</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1714651200">- Update the images tarball to include the files needed for issue
  [#4220]</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1717329600">- update to 2.5.12.0
  - exr: Add IOProxy support for EXR multipart output #4263 #4264
    (by jreichel-nvidia)
  - pnm: Improvements to pnm plugin: support for uint16 and
    32-float, "pnm:bigendian" and "pnm:pfmflip" controls for
    output. #4253 (by Vlad (Kuzmin) Erium)
  - ImageBuf: Improve behavior of IB::nsubimages and other related
    fixes #4228
  - simd.h: Fix longstanding problem with 16-wide bitcast for
    8-wide HW #4268
  - strutil.h: Add Strutil::eval_as_bool #4250
  - tests: Add new heif test output #4262
  - tests: Fix windows quoting for test #4271
  - build: More warning elimination for clang18 #4257
  - build: Add appropriate compiler defines and flags for SIMD with
    MSVC #4266 (by Jesse Yurkovich)
  - build: Gcc-14 support, testing, CI #4270
  - docs: Fix stray references to the old repo home #4255</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1719835200">- update to 2.5.13.0
  - fix: Various PSD files fail to load correctly #4302 (by Jesse
    Yurkovich)
  - fix: Improve error messages when a font is not found #4284
  - int: In platform.h, define OIIO_DEVICE macro #4290
  - ci: Typo in build_libtiff.bash #4280
  - docs: Update INSTALL.md for windows #4279 (by Mel Massadian)
  - docs: Fixes to formatting and sphinx warnings #4301</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1721217600">- update to 2.5.13.1 (CVE-2024-40630 boo#1227897)
  fix(heic): Correctly set imagespec size for heif images.
  security advisory (by Gerrard Tai)
  https://github.com/AcademySoftwareFoundation/OpenImageIO/security/advisories/GHSA-jjm9-9m4m-c8p2</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1722686400">- update to 2.5.14.0
  - fix (png): Correctly read PNGs with partial alpha #4315
    (2.5.14.0)
  - fix(ImageBuf): Copy/paste error in the ImageBuf iterator copy
    constructor #4365 (by Anton Dukhovnikov)
  - perf/TS: Only write full metadata to the first mip level #4320
    (2.5.14.0)
  - dev(strutil.h): Strutil::string_is_identifier() #4333
    (2.5.14.0)
  - build: Avoid rebuilds due to processing of fmt headers #4313
    (by Jesse Yurkovich) (2.5.14.0)
  - build: Fix boost vs cmake 3.30 problem.
  - ci: Sanitizer new warnings about signed/unsigned offsets in
    openexr #4351 (2.5.14.0)
  - docs: Clarify that IBA::rotate params are pixel coordinates
    [#4358] (2.5.14.0)
  - admin: More CLA explanation and how-to links #4318 (2.5.14.0)
  - admin: Document my git-cliff workflow for release notes #4319
    (2.5.14.0)
  - security: Document CVE-2024-40630 resolution (2.5.14.0)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1725278400">- update to 2.5.15.0
  - ffmpeg: Add proper detection of new FFmpeg versions #4394 (by
    Darby Johnston)
  - ffmpeg: Retrieve timecode metadata #4396 (by Darby Johnston)
  - png: Bug in associateAlpha botched alpha=0 pixels #4386
  - raw: Expose additional white balancing hints #4360 (by Anton
    Dukhovnikov)
  - oiiotool: -i:ch=... didn't fix up alpha and z channels #4373
  - fix: Catch potential OCIO exception that we were missing #4379
  - build: Finish removing Imath include #4371 (by Thiago Ize)
  - tests: Adjust RB-2.5 simd_test to allow a little more slop on
    fast_exp #4372</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727870400">- update to 2.5.16.0
  - ImageInput: Fix: Initialize pixels of partial tile conversion
    buffer to avoid possible floating point exceptionså. #4462 (by
    Bram Stolk)
  - iv: Fix: Iv shows constant brown and GL error messages on
    start-up. #4451 (by David Adler)
  - iv: Fix: Initialize variables before we use them. #4457 (by
    Bram Stolk)
  - pnm: Fix: Initialize m_pfm_flip before use to avoid UB. #4446
    (by Bram Stolk)
  - raw: Fix: Check for nullptr in raw input plugin #4448 (by Anton
    Dukhovnikov)
  - ci: Streamline the old MacOS-12 CI test #4465
  - ci: Test against OCIO 2.4 #4467 and OpenEXR 3.3 #4466
  - docs: Clarify TextureSystem::create use of imagecache when
    shared=true #4399
  - docs: Switch license name in docs #4407
  - admin: Change docs and comments references master -&gt; main #4435</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730462400">- update to 2.5.17.0
  - iinfo: fix: iinfo was not reading MIP levels correctly #4498
  - text rendering: Windows newline shows invalid character in text
    render #4501 (by peterhorvath111)
  - fix: Address fmt exceptions for left justification #4510
  - perf: Additional timing logging for performance investigations
    [#4506]
  - strutil.h: Fix typo in description of Strutil::parse_values
    [#4512]
  - build: Don't change CMAKE_XXX_OUTPUT_DIRECTORY when built as
    subdir #4417 (by Luc Touraille)
  - deps: Search for libbz2 only if FFmpeg or FreeType is enabled.
    [#4505] (by jreichel-nvidia)
  - tests: Fixup after directory refactor of OpenImageIO-images
    [#4473]
  - ci: Make scrorecards workflow not fail constantly #4471
  - ci: Retire deprecated macos12 runner, try beta macos15 #4514
  - docs: Update to vanity URL for the docs #4494</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730462401">- update oiio-test images to 3e9caba to see if that fixes the
  testsuite</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1731153600">- Update to 3.0.0.3
  - Updated minimum toolchain: C++17/gcc9.3, Python 3.7, CMake
    3.18.2, and raised min versions of most library dependencies.
  - New image format support: JPEG XL, R3D.
  - oiiotool new commands: --cryptomatte-colors, --demosaic,
  - -buildinfo, --ocionamedtransform, --popbottom, --stackreverse,
  - -stackclear, --stackextract; improved --for behavior for
    reverse direction.
  - Lots of long-deprecated API calls have been removed entirely.
    Please see the detailed deprecation list.
  - New ImageBufAlgo: perpixel_op(), demosaic(),
    ocionamedtransform().
  - ImageBuf now by default does not use ImageCache to mediate file
    images, unless you explicitly ask for it.
  - ImageCache &amp; TextureSystem now use shared_ptr for creation, not
    raw pointers. And they have been de-virtualized, for easier
    future expansion flexibility without breaking ABI for any small
    change.
  - Improved and more consistent color space name nomenclature.
  - Build system now is capable of auto-downloading and building
    several of the most important dependencies if they are missing
    at build time.
  - Please note that the development branch in the GitHub repo is
    now named main instead of master.
  For all the details see:
  https://github.com/AcademySoftwareFoundation/OpenImageIO/releases/tag/v3.0.0.3
- Update oiio-test images 7e6d875 for the 3.0 release
- Bump all BuildRequires to the minimum versions in the changes
  entry
- switch package to Qt6</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1731153601">- Handle renamed tests in the exclude list
  - also make it easier to maintain by refactoring the list out
    into variables.</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1731585600">- Downgrade back to 2.5.17.0</changelog>
</package>
<package pkgid="3bb12597230d8b464b3e2235fbd028b189dddd963da3473e435601b9c6a1f976e657d04c51fb83f40ec28f6996c8a63f18484a63892dd4b58fb16726b02d542d" name="OpenImageIO-debugsource" arch="x86_64">
  <version epoch="0" ver="2.5.17.0" rel="1.1.2.1.sr20241103"/>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1706788800">- update to 2.5.8.0:
  - feat(oiiotool): New --buildinfo command prints build
    information,
  - including version, compiler, and all library dependencies.
    [#4124]
  - feat(api): New global getattribute queries: "build:platform",
  - "build:compiler", "build:dependencies" #4124
  - feat(openexr): Add support for luminance-chroma OpenEXR images.
    [#4070] (by jreichel-nvidia)
  - fix(raw): Avoid buffer overrun for flip direction cases #4100
  - fix(iv): Assume iv display gamma 2.2 if GAMMA env variable is
    not set #4118
  - fix: Fixes to reduce problems identified by static analysis
    [#4113]
  - dev(simd.h): Make all-architecture matrix44::inverse() #4076
  - dev(simd.h): Fix AVX-512 round function #4119 (by AngryLoki)
  - build(deps): Remove Findfmt.cmake, rely on that package's
    exported config. #4069 #4103 (by Dominik Wójt)
  - build(deps): Account for header changes in fmt project trunk
    [#4109] #4114
  - tests: Shuffle some tests between directories #4091
  - tests: Fix docs test, used wrong namespace #4090
  - docs: Fix broken IBA color management documentation #4104
  - style: Update our formatting standard to clang-format 17.0 and
    C++17 #4096</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1707307200">- Add https://github.com/AcademySoftwareFoundation/OpenImageIO/pull/4143.patch
  Potential patch to fix the aarch64 regressions reported here:
  https://github.com/AcademySoftwareFoundation/OpenImageIO/issues/4111
  This can be dropped in the next version update.</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1707307201">- Upgrade the image files to 20240205T200840
  this fixes a small license issue</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1707307202">- we need at least OpenEXR 2.4. force this</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709294400">- update to 2.5.9.0:
  - oiiotool: Overhaul and fix bugs in mixed-channel propogation
    [#4127]
  - oiiotool: Fixes to buildinfo queries #4150
  - dcmtk: Fixes for DCMTK #4147
  - build: Address NEON issues in simd.h. #4143
  - typedesc.h: Allow TypeDesc to have all the right POD attributes
    [#4162] (by Scott Wilson)
  - internals: Various fixes for memory safety and reduce static
    analysis complaints #4128
  - internals: Coalesce redundant STRINGIZE macros -&gt;
    OIIO_STRINGIZE #4121
  - ci: Start using macos-14 ARM runners, bump latest OCIO #4134
  - ci: Switch away from deprecated GHA idiom set-output #4141
  - ci: Add vfx platform 2024 #4163
  - ci: Fix Windows CI, need to build newer openexr and adjust
    boost search #4167
  - tests: Add test for filter values and 'filter_list' query #4140
  - docs: Update SECURITY and RELEASING documentation #4138
  - docs: Fix tab that was missing from the rendering on rtd #4137
  - docs: Fix python example #4139
  - admin: More updated relicensing code under Apache 2.0
- drop 4143.patch. included in update.</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709294401">- We need pkgconfig(libxml-2.0) now</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1712059200">- update to 2.5.10.1
  It seems 2.5.10.0 was pulled again, because 2.5.10.0 was
  mis-tagged.
  - oiiotool: Expression substitution now understands
    pseudo-metadata NONFINITE_COUNT that returns the number of
    nonfinite values in the image, thus allowing decision making
    about fixnan #4171
  - color management: Automatically recognize some additional color
    space name synonyms: "srgb_texture", "lin_rec709" and
    "lin_ap1". Also add common permutation "srgb_tx" and "srgb
    texture" as additional aliases for "srgb". #4166
  - openexr: Implement copy_image for OpenEXR #4004 (by Andy Chan)
  - heic: Don't auto-transform camera-rotated images #4142 #4184
  - hash.h: Mismatched pragma push/pop in hash.h #4182
  - simd.h: gather_mask() was wrong for no-simd fallback #4183
  - texture.h: Overload decode_wrapmode to support ustringhash
    [#4207] (by Chris Hellmuth)
  - build: Fix warning when Freetype is disabled #4177
  - build: iv build issues with glTexImage3D #4202 (by Vlad
    (Kuzmin) Erium)
  - build: Fix buld_ninja.bash to make directories and download
    correctly #4192 (by Sergio Rojas)
  - build: Need additional include #4194
  - build: FindOpenColorIO failed to properly set
    OpenColorIO_VERSION #4196
  - build: Restore internals of strhash to compile correctly on 32
    bit architectures #4213
  - ci: Allow triggering CI workflow from web #4178
  - ci: Make one of the Mac tests build for avx2 #4188
  - ci: Enable Windows 2022 CI tests #4195
  - docs: Fix some typos and add missing oiiotool expression
    explanations #4169
  - admin: Add a ROADMAP document #4161</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1714564800">- update to 2.5.11.0
  - dds: DDS support more DXGI formats #4220 (by alexguirre)
  - psd: Add support for 16- and 32-bit Photoshop file reads #4208
    (by EmilDohne)
  - fix(fmt.h): Fix build break from recent fmt change #4227
  - fix(openexr): Fix out-of-bounds reads when using OpenEXR
    decreasingY lineOrder. #4215 (by Aaron Colwell)
  - fix: Don't use (DY)LD_LIBRARY_PATH as plugin search paths #4245
    (by Brecht Van Lommel)
  - fix: Fix crash when no default fonts are found #4249
  - build: Disable clang18 warnings about deprecated unicode
    conversion #4246
  - security: Better documentation of past CVE fixes in SECURITY.md
    [#4238]</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1714651200">- Update the images tarball to include the files needed for issue
  [#4220]</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1717329600">- update to 2.5.12.0
  - exr: Add IOProxy support for EXR multipart output #4263 #4264
    (by jreichel-nvidia)
  - pnm: Improvements to pnm plugin: support for uint16 and
    32-float, "pnm:bigendian" and "pnm:pfmflip" controls for
    output. #4253 (by Vlad (Kuzmin) Erium)
  - ImageBuf: Improve behavior of IB::nsubimages and other related
    fixes #4228
  - simd.h: Fix longstanding problem with 16-wide bitcast for
    8-wide HW #4268
  - strutil.h: Add Strutil::eval_as_bool #4250
  - tests: Add new heif test output #4262
  - tests: Fix windows quoting for test #4271
  - build: More warning elimination for clang18 #4257
  - build: Add appropriate compiler defines and flags for SIMD with
    MSVC #4266 (by Jesse Yurkovich)
  - build: Gcc-14 support, testing, CI #4270
  - docs: Fix stray references to the old repo home #4255</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1719835200">- update to 2.5.13.0
  - fix: Various PSD files fail to load correctly #4302 (by Jesse
    Yurkovich)
  - fix: Improve error messages when a font is not found #4284
  - int: In platform.h, define OIIO_DEVICE macro #4290
  - ci: Typo in build_libtiff.bash #4280
  - docs: Update INSTALL.md for windows #4279 (by Mel Massadian)
  - docs: Fixes to formatting and sphinx warnings #4301</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1721217600">- update to 2.5.13.1 (CVE-2024-40630 boo#1227897)
  fix(heic): Correctly set imagespec size for heif images.
  security advisory (by Gerrard Tai)
  https://github.com/AcademySoftwareFoundation/OpenImageIO/security/advisories/GHSA-jjm9-9m4m-c8p2</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1722686400">- update to 2.5.14.0
  - fix (png): Correctly read PNGs with partial alpha #4315
    (2.5.14.0)
  - fix(ImageBuf): Copy/paste error in the ImageBuf iterator copy
    constructor #4365 (by Anton Dukhovnikov)
  - perf/TS: Only write full metadata to the first mip level #4320
    (2.5.14.0)
  - dev(strutil.h): Strutil::string_is_identifier() #4333
    (2.5.14.0)
  - build: Avoid rebuilds due to processing of fmt headers #4313
    (by Jesse Yurkovich) (2.5.14.0)
  - build: Fix boost vs cmake 3.30 problem.
  - ci: Sanitizer new warnings about signed/unsigned offsets in
    openexr #4351 (2.5.14.0)
  - docs: Clarify that IBA::rotate params are pixel coordinates
    [#4358] (2.5.14.0)
  - admin: More CLA explanation and how-to links #4318 (2.5.14.0)
  - admin: Document my git-cliff workflow for release notes #4319
    (2.5.14.0)
  - security: Document CVE-2024-40630 resolution (2.5.14.0)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1725278400">- update to 2.5.15.0
  - ffmpeg: Add proper detection of new FFmpeg versions #4394 (by
    Darby Johnston)
  - ffmpeg: Retrieve timecode metadata #4396 (by Darby Johnston)
  - png: Bug in associateAlpha botched alpha=0 pixels #4386
  - raw: Expose additional white balancing hints #4360 (by Anton
    Dukhovnikov)
  - oiiotool: -i:ch=... didn't fix up alpha and z channels #4373
  - fix: Catch potential OCIO exception that we were missing #4379
  - build: Finish removing Imath include #4371 (by Thiago Ize)
  - tests: Adjust RB-2.5 simd_test to allow a little more slop on
    fast_exp #4372</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727870400">- update to 2.5.16.0
  - ImageInput: Fix: Initialize pixels of partial tile conversion
    buffer to avoid possible floating point exceptionså. #4462 (by
    Bram Stolk)
  - iv: Fix: Iv shows constant brown and GL error messages on
    start-up. #4451 (by David Adler)
  - iv: Fix: Initialize variables before we use them. #4457 (by
    Bram Stolk)
  - pnm: Fix: Initialize m_pfm_flip before use to avoid UB. #4446
    (by Bram Stolk)
  - raw: Fix: Check for nullptr in raw input plugin #4448 (by Anton
    Dukhovnikov)
  - ci: Streamline the old MacOS-12 CI test #4465
  - ci: Test against OCIO 2.4 #4467 and OpenEXR 3.3 #4466
  - docs: Clarify TextureSystem::create use of imagecache when
    shared=true #4399
  - docs: Switch license name in docs #4407
  - admin: Change docs and comments references master -&gt; main #4435</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730462400">- update to 2.5.17.0
  - iinfo: fix: iinfo was not reading MIP levels correctly #4498
  - text rendering: Windows newline shows invalid character in text
    render #4501 (by peterhorvath111)
  - fix: Address fmt exceptions for left justification #4510
  - perf: Additional timing logging for performance investigations
    [#4506]
  - strutil.h: Fix typo in description of Strutil::parse_values
    [#4512]
  - build: Don't change CMAKE_XXX_OUTPUT_DIRECTORY when built as
    subdir #4417 (by Luc Touraille)
  - deps: Search for libbz2 only if FFmpeg or FreeType is enabled.
    [#4505] (by jreichel-nvidia)
  - tests: Fixup after directory refactor of OpenImageIO-images
    [#4473]
  - ci: Make scrorecards workflow not fail constantly #4471
  - ci: Retire deprecated macos12 runner, try beta macos15 #4514
  - docs: Update to vanity URL for the docs #4494</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730462401">- update oiio-test images to 3e9caba to see if that fixes the
  testsuite</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1731153600">- Update to 3.0.0.3
  - Updated minimum toolchain: C++17/gcc9.3, Python 3.7, CMake
    3.18.2, and raised min versions of most library dependencies.
  - New image format support: JPEG XL, R3D.
  - oiiotool new commands: --cryptomatte-colors, --demosaic,
  - -buildinfo, --ocionamedtransform, --popbottom, --stackreverse,
  - -stackclear, --stackextract; improved --for behavior for
    reverse direction.
  - Lots of long-deprecated API calls have been removed entirely.
    Please see the detailed deprecation list.
  - New ImageBufAlgo: perpixel_op(), demosaic(),
    ocionamedtransform().
  - ImageBuf now by default does not use ImageCache to mediate file
    images, unless you explicitly ask for it.
  - ImageCache &amp; TextureSystem now use shared_ptr for creation, not
    raw pointers. And they have been de-virtualized, for easier
    future expansion flexibility without breaking ABI for any small
    change.
  - Improved and more consistent color space name nomenclature.
  - Build system now is capable of auto-downloading and building
    several of the most important dependencies if they are missing
    at build time.
  - Please note that the development branch in the GitHub repo is
    now named main instead of master.
  For all the details see:
  https://github.com/AcademySoftwareFoundation/OpenImageIO/releases/tag/v3.0.0.3
- Update oiio-test images 7e6d875 for the 3.0 release
- Bump all BuildRequires to the minimum versions in the changes
  entry
- switch package to Qt6</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1731153601">- Handle renamed tests in the exclude list
  - also make it easier to maintain by refactoring the list out
    into variables.</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1731585600">- Downgrade back to 2.5.17.0</changelog>
</package>
<package pkgid="affb3d85da699fee91b637ebca44d4c7d78b038357b1993bea45bc6ceffcb4241ab2d5da6320c452d1427b55cbe463f3f15a9f57918627347e4d8e157d4d8331" name="OpenImageIO-devel" arch="x86_64">
  <version epoch="0" ver="2.5.17.0" rel="1.1.2.1.sr20241103"/>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1706788800">- update to 2.5.8.0:
  - feat(oiiotool): New --buildinfo command prints build
    information,
  - including version, compiler, and all library dependencies.
    [#4124]
  - feat(api): New global getattribute queries: "build:platform",
  - "build:compiler", "build:dependencies" #4124
  - feat(openexr): Add support for luminance-chroma OpenEXR images.
    [#4070] (by jreichel-nvidia)
  - fix(raw): Avoid buffer overrun for flip direction cases #4100
  - fix(iv): Assume iv display gamma 2.2 if GAMMA env variable is
    not set #4118
  - fix: Fixes to reduce problems identified by static analysis
    [#4113]
  - dev(simd.h): Make all-architecture matrix44::inverse() #4076
  - dev(simd.h): Fix AVX-512 round function #4119 (by AngryLoki)
  - build(deps): Remove Findfmt.cmake, rely on that package's
    exported config. #4069 #4103 (by Dominik Wójt)
  - build(deps): Account for header changes in fmt project trunk
    [#4109] #4114
  - tests: Shuffle some tests between directories #4091
  - tests: Fix docs test, used wrong namespace #4090
  - docs: Fix broken IBA color management documentation #4104
  - style: Update our formatting standard to clang-format 17.0 and
    C++17 #4096</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1707307200">- Add https://github.com/AcademySoftwareFoundation/OpenImageIO/pull/4143.patch
  Potential patch to fix the aarch64 regressions reported here:
  https://github.com/AcademySoftwareFoundation/OpenImageIO/issues/4111
  This can be dropped in the next version update.</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1707307201">- Upgrade the image files to 20240205T200840
  this fixes a small license issue</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1707307202">- we need at least OpenEXR 2.4. force this</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709294400">- update to 2.5.9.0:
  - oiiotool: Overhaul and fix bugs in mixed-channel propogation
    [#4127]
  - oiiotool: Fixes to buildinfo queries #4150
  - dcmtk: Fixes for DCMTK #4147
  - build: Address NEON issues in simd.h. #4143
  - typedesc.h: Allow TypeDesc to have all the right POD attributes
    [#4162] (by Scott Wilson)
  - internals: Various fixes for memory safety and reduce static
    analysis complaints #4128
  - internals: Coalesce redundant STRINGIZE macros -&gt;
    OIIO_STRINGIZE #4121
  - ci: Start using macos-14 ARM runners, bump latest OCIO #4134
  - ci: Switch away from deprecated GHA idiom set-output #4141
  - ci: Add vfx platform 2024 #4163
  - ci: Fix Windows CI, need to build newer openexr and adjust
    boost search #4167
  - tests: Add test for filter values and 'filter_list' query #4140
  - docs: Update SECURITY and RELEASING documentation #4138
  - docs: Fix tab that was missing from the rendering on rtd #4137
  - docs: Fix python example #4139
  - admin: More updated relicensing code under Apache 2.0
- drop 4143.patch. included in update.</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1709294401">- We need pkgconfig(libxml-2.0) now</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1712059200">- update to 2.5.10.1
  It seems 2.5.10.0 was pulled again, because 2.5.10.0 was
  mis-tagged.
  - oiiotool: Expression substitution now understands
    pseudo-metadata NONFINITE_COUNT that returns the number of
    nonfinite values in the image, thus allowing decision making
    about fixnan #4171
  - color management: Automatically recognize some additional color
    space name synonyms: "srgb_texture", "lin_rec709" and
    "lin_ap1". Also add common permutation "srgb_tx" and "srgb
    texture" as additional aliases for "srgb". #4166
  - openexr: Implement copy_image for OpenEXR #4004 (by Andy Chan)
  - heic: Don't auto-transform camera-rotated images #4142 #4184
  - hash.h: Mismatched pragma push/pop in hash.h #4182
  - simd.h: gather_mask() was wrong for no-simd fallback #4183
  - texture.h: Overload decode_wrapmode to support ustringhash
    [#4207] (by Chris Hellmuth)
  - build: Fix warning when Freetype is disabled #4177
  - build: iv build issues with glTexImage3D #4202 (by Vlad
    (Kuzmin) Erium)
  - build: Fix buld_ninja.bash to make directories and download
    correctly #4192 (by Sergio Rojas)
  - build: Need additional include #4194
  - build: FindOpenColorIO failed to properly set
    OpenColorIO_VERSION #4196
  - build: Restore internals of strhash to compile correctly on 32
    bit architectures #4213
  - ci: Allow triggering CI workflow from web #4178
  - ci: Make one of the Mac tests build for avx2 #4188
  - ci: Enable Windows 2022 CI tests #4195
  - docs: Fix some typos and add missing oiiotool expression
    explanations #4169
  - admin: Add a ROADMAP document #4161</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1714564800">- update to 2.5.11.0
  - dds: DDS support more DXGI formats #4220 (by alexguirre)
  - psd: Add support for 16- and 32-bit Photoshop file reads #4208
    (by EmilDohne)
  - fix(fmt.h): Fix build break from recent fmt change #4227
  - fix(openexr): Fix out-of-bounds reads when using OpenEXR
    decreasingY lineOrder. #4215 (by Aaron Colwell)
  - fix: Don't use (DY)LD_LIBRARY_PATH as plugin search paths #4245
    (by Brecht Van Lommel)
  - fix: Fix crash when no default fonts are found #4249
  - build: Disable clang18 warnings about deprecated unicode
    conversion #4246
  - security: Better documentation of past CVE fixes in SECURITY.md
    [#4238]</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1714651200">- Update the images tarball to include the files needed for issue
  [#4220]</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1717329600">- update to 2.5.12.0
  - exr: Add IOProxy support for EXR multipart output #4263 #4264
    (by jreichel-nvidia)
  - pnm: Improvements to pnm plugin: support for uint16 and
    32-float, "pnm:bigendian" and "pnm:pfmflip" controls for
    output. #4253 (by Vlad (Kuzmin) Erium)
  - ImageBuf: Improve behavior of IB::nsubimages and other related
    fixes #4228
  - simd.h: Fix longstanding problem with 16-wide bitcast for
    8-wide HW #4268
  - strutil.h: Add Strutil::eval_as_bool #4250
  - tests: Add new heif test output #4262
  - tests: Fix windows quoting for test #4271
  - build: More warning elimination for clang18 #4257
  - build: Add appropriate compiler defines and flags for SIMD with
    MSVC #4266 (by Jesse Yurkovich)
  - build: Gcc-14 support, testing, CI #4270
  - docs: Fix stray references to the old repo home #4255</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1719835200">- update to 2.5.13.0
  - fix: Various PSD files fail to load correctly #4302 (by Jesse
    Yurkovich)
  - fix: Improve error messages when a font is not found #4284
  - int: In platform.h, define OIIO_DEVICE macro #4290
  - ci: Typo in build_libtiff.bash #4280
  - docs: Update INSTALL.md for windows #4279 (by Mel Massadian)
  - docs: Fixes to formatting and sphinx warnings #4301</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1721217600">- update to 2.5.13.1 (CVE-2024-40630 boo#1227897)
  fix(heic): Correctly set imagespec size for heif images.
  security advisory (by Gerrard Tai)
  https://github.com/AcademySoftwareFoundation/OpenImageIO/security/advisories/GHSA-jjm9-9m4m-c8p2</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1722686400">- update to 2.5.14.0
  - fix (png): Correctly read PNGs with partial alpha #4315
    (2.5.14.0)
  - fix(ImageBuf): Copy/paste error in the ImageBuf iterator copy
    constructor #4365 (by Anton Dukhovnikov)
  - perf/TS: Only write full metadata to the first mip level #4320
    (2.5.14.0)
  - dev(strutil.h): Strutil::string_is_identifier() #4333
    (2.5.14.0)
  - build: Avoid rebuilds due to processing of fmt headers #4313
    (by Jesse Yurkovich) (2.5.14.0)
  - build: Fix boost vs cmake 3.30 problem.
  - ci: Sanitizer new warnings about signed/unsigned offsets in
    openexr #4351 (2.5.14.0)
  - docs: Clarify that IBA::rotate params are pixel coordinates
    [#4358] (2.5.14.0)
  - admin: More CLA explanation and how-to links #4318 (2.5.14.0)
  - admin: Document my git-cliff workflow for release notes #4319
    (2.5.14.0)
  - security: Document CVE-2024-40630 resolution (2.5.14.0)</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1725278400">- update to 2.5.15.0
  - ffmpeg: Add proper detection of new FFmpeg versions #4394 (by
    Darby Johnston)
  - ffmpeg: Retrieve timecode metadata #4396 (by Darby Johnston)
  - png: Bug in associateAlpha botched alpha=0 pixels #4386
  - raw: Expose additional white balancing hints #4360 (by Anton
    Dukhovnikov)
  - oiiotool: -i:ch=... didn't fix up alpha and z channels #4373
  - fix: Catch potential OCIO exception that we were missing #4379
  - build: Finish removing Imath include #4371 (by Thiago Ize)
  - tests: Adjust RB-2.5 simd_test to allow a little more slop on
    fast_exp #4372</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1727870400">- update to 2.5.16.0
  - ImageInput: Fix: Initialize pixels of partial tile conversion
    buffer to avoid possible floating point exceptionså. #4462 (by
    Bram Stolk)
  - iv: Fix: Iv shows constant brown and GL error messages on
    start-up. #4451 (by David Adler)
  - iv: Fix: Initialize variables before we use them. #4457 (by
    Bram Stolk)
  - pnm: Fix: Initialize m_pfm_flip before use to avoid UB. #4446
    (by Bram Stolk)
  - raw: Fix: Check for nullptr in raw input plugin #4448 (by Anton
    Dukhovnikov)
  - ci: Streamline the old MacOS-12 CI test #4465
  - ci: Test against OCIO 2.4 #4467 and OpenEXR 3.3 #4466
  - docs: Clarify TextureSystem::create use of imagecache when
    shared=true #4399
  - docs: Switch license name in docs #4407
  - admin: Change docs and comments references master -&gt; main #4435</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730462400">- update to 2.5.17.0
  - iinfo: fix: iinfo was not reading MIP levels correctly #4498
  - text rendering: Windows newline shows invalid character in text
    render #4501 (by peterhorvath111)
  - fix: Address fmt exceptions for left justification #4510
  - perf: Additional timing logging for performance investigations
    [#4506]
  - strutil.h: Fix typo in description of Strutil::parse_values
    [#4512]
  - build: Don't change CMAKE_XXX_OUTPUT_DIRECTORY when built as
    subdir #4417 (by Luc Touraille)
  - deps: Search for libbz2 only if FFmpeg or FreeType is enabled.
    [#4505] (by jreichel-nvidia)
  - tests: Fixup after directory refactor of OpenImageIO-images
    [#4473]
  - ci: Make scrorecards workflow not fail constantly #4471
  - ci: Retire deprecated macos12 runner, try beta macos15 #4514
  - docs: Update to vanity URL for the docs #4494</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1730462401">- update oiio-test images to 3e9caba to see if that fixes the
  testsuite</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1731153600">- Update to 3.0.0.3
  - Updated minimum toolchain: C++17/gcc9.3, Python 3.7, CMake
    3.18.2, and raised min versions of most library dependencies.
  - New image format support: JPEG XL, R3D.
  - oiiotool new commands: --cryptomatte-colors, --demosaic,
  - -buildinfo, --ocionamedtransform, --popbottom, --stackreverse,
  - -stackclear, --stackextract; improved --for behavior for
    reverse direction.
  - Lots of long-deprecated API calls have been removed entirely.
    Please see the detailed deprecation list.
  - New ImageBufAlgo: perpixel_op(), demosaic(),
    ocionamedtransform().
  - ImageBuf now by default does not use ImageCache to mediate file
    images, unless you explicitly ask for it.
  - ImageCache &amp; TextureSystem now use shared_ptr for creation, not
    raw pointers. And they have been de-virtualized, for easier
    future expansion flexibility without breaking ABI for any small
    change.
  - Improved and more consistent color space name nomenclature.
  - Build system now is capable of auto-downloading and building
    several of the most important dependencies if they are missing
    at build time.
  - Please note that the development branch in the GitHub repo is
    now named main instead of master.
  For all the details see:
  https://github.com/AcademySoftwareFoundation/OpenImageIO/releases/tag/v3.0.0.3
- Update oiio-test images 7e6d875 for the 3.0 release
- Bump all BuildRequires to the minimum versions in the changes
  entry
- switch package to Qt6</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1731153601">- Handle renamed tests in the exclude list
  - also make it easier to maintain by refactoring the list out
    into variables.</changelog>
  <changelog author="Marcus Rueckert &lt;mrueckert@suse.de&gt;" date="1731585600">- Downgrade back to 2.5.17.0</changelog>
</package>
<package pkgid="98fdfb4f445ae3a82ff64e6126a569306127cea4f9a914328ef764519dbfba76040454d2ae15957bf06b765ec5c9eaa9727a9218ddf13417c1bcb2ce4ade3907" name="PackageKit" arch="src">
  <version epoch="0" ver="1.2.8" rel="4.1"/>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1629460800">- Add PackageKit-zypp-fix-crash-with-empty-search-string.patch:
  zypp: Fix crash when search string is NULL (bsc#1179287,
  gh#hughsie/PackageKit/commit#21ccf49).</changelog>
  <changelog author="Stanislav Brabec &lt;sbrabec@suse.com&gt;" date="1631793600">- Remove obsolete translation-update-upstream support
  (jsc#SLE-21105).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1636113600">- Update to version 1.2.4:
  + Libraries:
  - Add specific error code when user declined interaction
  - Avoid spurious GObject::notify signal emissions
  - Correct 'cancellable' use in pk_client_repair_system_async()
  - Fix a leak on calling set_locale() a second time
  - Fix a possible use-after-free under pk_client_cancel_cb()
  - Improve thread safety on an operation cancellation
  + Backends:
  - dnf:
    . Read update information also when getting list of updates
    . Honor install_weak_deps=False if it is there
    . Use 'hy_query_get_advisory_pkgs', if available
  + New Features:
  - PkDetails: Add 'download-size' property
  - PkPackage: Add update severity property
  + Bugfixes:
  - Let the finish understand the 'cancelled' exit code
  - Make backends that use pk-backend-spawn work (#477)
  - Only set polkit interactive flag if method call has too
- Changes from version 1.2.3:
  + Backends:
  - alpm:
    . Add post transaction hook
    . Rename errno to alpm_err to avoid name clashes
  - aptcc: Auto-remove old kernels, unless configured otherwise
  - dnf: Add support for coercing upgrade to distupgrade
  - zypp:
    . Make sure pool is initialized at the beginning of some
    methods
    . Reset update mode after getting updates
  + Bugfixes:
  - Append to cron log instead of overwriting it
  - Cancel a transaction if calling Cancel fails or the daemon
    disappears
  - Do not crash when calling pk_dbus_get_uid() before D-Bus is
    setup
  - Fix all compiler warnings
  - Fix multilib conflicts in generated pk-enum-types.h
  - Free scheduler array correctly again
  - Remove large transaction size sanity check
- Drop patches fixed upstream:
  + PackageKit-zypp-cleanup-tmp-files.patch
  + PackageKit-zypp-reset-update-mode-after-get-updates.patch
  + PackageKit-dnf-Add-support-for-coercing-upgrade-to-distupgrade.patch
  + PackageKit-zypp-initialize-pool.patch
  + PackageKit-remove-transaction-size-limit.patch
  + PackageKit-cancel-transaction-if-daemon-disappears.patch
  + PackageKit-dnf-ignore-weak-deps.patch
- Add 505.patch: pk-offline: Add flags to D-Bus invoking methods.
  That's currently to be able to set whether the method should be
  interactive or not. The old functions call the methods as
  non-interactive.</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1636113601">- Add PackageKit-zypp-c++17.patch: Fix build failure when building
  with libzypp &gt; 17.28.5 and gcc &lt; 11
  (gh#hughsie/PackageKit/commit/1a6bb6ae6, bsc#1192349).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1637064000">- Rewrite prep phase to not use autopatch -M: SLE15/Leap15's RPM
  version does not support that syntax yet.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1637064001">- Apply all patches unconditonally: PackageKit-zypp-c++17.patch is
  merged in upstream git and thus does not justify to be
  conditionally applied.
- Switching back to autosetup, as this works without conditional
  patches.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1653048000">- Update to version 1.2.5:
  + Backends:
  - dnf:
    . Add support for autoremove flag when removing packages.
    . Searches by name and package details should be case
    insensitive.
    . Update appstream xml files if dnf_sack_add_repos() does
    the download.
  - zypp:
    . Add -std=c++1z cpp flags.
    . Fix crash when search string is NULL.
    . Fix package installation using undefined data.
  - Changes to alpm, apttcc, nix, and slack.
  + Bugfixes:
  - Install offline-update enablement symlink if Meson is new
    enough.
  - Move Wants= line for network-online.target.
  - Add flags to D-Bus offline invoking methods.
  - Properly handle allow-reinstall flag for installations.
  - Provide better error message if trying to install an
    installed package.
  - Wait until online to activate systemd service.
- Drop 505.patch, PackageKit-zypp-c++17.patch, and
  PackageKit-zypp-fix-crash-with-empty-search-string.patch: fixed
  upstream.</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1653566400">- Add PackageKit-zypp-locked-packages.patch: zypp: ignore locked
  packages(gh#hughsie/PackageKit#543, boo#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1656676800">- Add PackageKit-zypp-add-upgrade-system.patch: implement
  upgrade-system method(gh#hughsie/PackageKit/commit/930dd201b).</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1657368000">- Move the dbus-1 system.d file to /usr (bsc#1201347)</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1659528000">- Modified PackageKit.spec: bump libzypp dependency version to
  17.31.0.
- Add PackageKit-zypp-avoid-statuReset.patch: zypp: Avoid
  statuReset() on locked packages
  (gh#PackageKit/PackageKit/commit/dd1964255, bsc#1199895).
- Add PackageKit-zypp-disable-upgrade-system-in-sle.patch: zypp:
  Disable upgrade-system support in SLE
  (gh#PackageKit/PackageKit/commit/0fcd820c2).
- Add PackageKit-zypp-restore-pool-status-after-simulating-update.patch:
  zypp: restore pool status after simulating an update
  (gh#PackageKit/PackageKit/commit/2b61a6649, bsc#1199895).
- Add PackageKit-zypp-fix-is-tumbleweed-check.patch: zypp: build
  the pool before calling is_tumbleweed()
  (gh#PackageKit/PackageKit/commit/146890153).
- Add PackageKit-zypp-update-libzypp-dependency-version.patch:
  zypp: update libzypp dependency version
  (gh#PackageKit/PackageKit/commit/58c7c0285, bsc#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1662120000">- Add PackageKit-zypp-dont-refresh-before-searching.patch:
  zypp: Don't refresh repos before searching
  (gh#PackageKit/PackageKit/commit/58c7c0285, bsc#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1664193600">- Add PackageKit-zypp-dont-remove-locked-packages.patch: zypp:
  Check if packages are locked before removing
  (gh#PackageKit/PackageKit/commit/8649a07bc, bsc#1199895).
- Add PackageKit-zypp-add-repo-in-packageid.patch: zypp: add
  repository data in package id
  (gh#PackageKit/PackageKit/commit/8eb2ef0ae, bsc#1202585).
- Remove PackageKit-zypp-locked-packages.patch: reverted upstream
  (gh#PackageKit/PackageKit/commit/ed3e38043).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1673006400">- Add PackageKit-zypp-fix-ambiguous-filesystem-reference.patch:
  zypp: Fix ambiguous reference to 'filesystem' class
  (gh#PackageKit/PackageKit/commit/bb1409a71, bsc#1206687).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678708800">- Add PackageKit-fix-pkcon-permission.patch: trivial: Drop
  unnecessary x permission
  (gh#PackageKit/PackageKit/commit/47b7f97bc, bsc#1209138)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1689595200">- Add PackageKit-dynamic-export.patch: fix loading of modules when
  built using glib 2.70 (boo#1213309).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1699531200">- Update to version 1.2.8:
  + Libraries:
  - offline-updates:
    . Make package update list deduplication more efficient.
    . Add only one entry per package to 'offline-update-competed'
    file.
  - PkClient: Replace the GSimpleAsyncResult with the GTask API.
  - pk-client:
    . Fix use-before-set of PkProgress on cancellation.
    . Move cancellable disconnect to dispose.
    . Rework refcounting for PkClientState.
  + Backends: Changes to apt, dnf, PiSi and BSD backends.
- Changes from version 1.2.7:
  + New Features:
  - pkclient: Add an option to count download size with
    dependencies.
  - pk-transaction: Add support for getting the RemainingTime
    property.
  + Backends:
  - zypp: Fix ambiguous reference to 'filesystem' class.
  - Changes to dnf, apt, alpm backends.
- Changes from version 1.2.6:
  + New Features:
  - Expose transaction sender as read-only property on the bus.
  - pkmon: Display transaction sender binary name in log.
  - pk-transaction: Add Packages signal.
  - pk-transaction: Combine some D-Bus PropertiesChanged signal
    emissions.
  - pk-transaction: Add UpdateDetails signal.
  + Backends:
  - zypp:
    . implement upgrade-system method.
    . Clean up trailing whitespaces.
    . Avoid statuReset() on locked packages.
    . restore pool status after simulating an update.
    . Disable upgrade-system support in SLE.
    . build the pool before calling is_tumbleweed().
    . update libzypp dependency version.
    . Don't refresh repos before searching.
    . Check if packages are locked before removing.
    . add repository data in package id.
    . Remove trailing whitespace.
    + Changes to alpm, aptcc, apt, and nix backends.
- Rebase patches:
  + PackageKit-dnf-Add-support-for-AppStream-repodata-basenames-use.patch
  + PackageKit-dynamic-export.patch
  + PackageKit-zypp-disable-upgrade-system-in-sle.patch
- Drop upstream fixed patches:
  + PackageKit-zypp-add-repo-in-packageid.patch
  + PackageKit-zypp-add-upgrade-system.patch
  + PackageKit-zypp-avoid-statuReset.patch
  + PackageKit-zypp-dont-refresh-before-searching.patch
  + PackageKit-zypp-dont-remove-locked-packages.patch
  + PackageKit-zypp-fix-ambiguous-filesystem-reference.patch
  + PackageKit-zypp-fix-is-tumbleweed-check.patch
  + PackageKit-zypp-restore-pool-status-after-simulating-update.patch
  + PackageKit-zypp-update-libzypp-dependency-version.patch</changelog>
  <changelog author="Alynx Zhou &lt;alynx.zhou@suse.com&gt;" date="1704196800">- Add PackageKit-find-python-3-6.patch: Specify the Python version
  we need to build this package.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1709640000">- Drop baselibs.conf: the -32bit packages are no longer needed and
  have not been part of Tumbleweed for a while already (build for
  i586 only enabled in LegacyX86).</changelog>
  <changelog author="Alynx Zhou &lt;alynx.zhou@suse.com&gt;" date="1723550400">- Add PackageKit-mark-as-compulsory.patch: Prevent PackageKit from
  user uninstallable for most desktops (bsc#1226269).</changelog>
</package>
<package pkgid="98c8161d1985ccfacf953e998207150fd8e84eee3b9d642ab480797d93ae4deb367c028a07277abeb7d71cff70d74d19c25684fbe999f9842462c6bb26138f7e" name="PackageKit" arch="x86_64">
  <version epoch="0" ver="1.2.8" rel="4.1"/>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1629460800">- Add PackageKit-zypp-fix-crash-with-empty-search-string.patch:
  zypp: Fix crash when search string is NULL (bsc#1179287,
  gh#hughsie/PackageKit/commit#21ccf49).</changelog>
  <changelog author="Stanislav Brabec &lt;sbrabec@suse.com&gt;" date="1631793600">- Remove obsolete translation-update-upstream support
  (jsc#SLE-21105).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1636113600">- Update to version 1.2.4:
  + Libraries:
  - Add specific error code when user declined interaction
  - Avoid spurious GObject::notify signal emissions
  - Correct 'cancellable' use in pk_client_repair_system_async()
  - Fix a leak on calling set_locale() a second time
  - Fix a possible use-after-free under pk_client_cancel_cb()
  - Improve thread safety on an operation cancellation
  + Backends:
  - dnf:
    . Read update information also when getting list of updates
    . Honor install_weak_deps=False if it is there
    . Use 'hy_query_get_advisory_pkgs', if available
  + New Features:
  - PkDetails: Add 'download-size' property
  - PkPackage: Add update severity property
  + Bugfixes:
  - Let the finish understand the 'cancelled' exit code
  - Make backends that use pk-backend-spawn work (#477)
  - Only set polkit interactive flag if method call has too
- Changes from version 1.2.3:
  + Backends:
  - alpm:
    . Add post transaction hook
    . Rename errno to alpm_err to avoid name clashes
  - aptcc: Auto-remove old kernels, unless configured otherwise
  - dnf: Add support for coercing upgrade to distupgrade
  - zypp:
    . Make sure pool is initialized at the beginning of some
    methods
    . Reset update mode after getting updates
  + Bugfixes:
  - Append to cron log instead of overwriting it
  - Cancel a transaction if calling Cancel fails or the daemon
    disappears
  - Do not crash when calling pk_dbus_get_uid() before D-Bus is
    setup
  - Fix all compiler warnings
  - Fix multilib conflicts in generated pk-enum-types.h
  - Free scheduler array correctly again
  - Remove large transaction size sanity check
- Drop patches fixed upstream:
  + PackageKit-zypp-cleanup-tmp-files.patch
  + PackageKit-zypp-reset-update-mode-after-get-updates.patch
  + PackageKit-dnf-Add-support-for-coercing-upgrade-to-distupgrade.patch
  + PackageKit-zypp-initialize-pool.patch
  + PackageKit-remove-transaction-size-limit.patch
  + PackageKit-cancel-transaction-if-daemon-disappears.patch
  + PackageKit-dnf-ignore-weak-deps.patch
- Add 505.patch: pk-offline: Add flags to D-Bus invoking methods.
  That's currently to be able to set whether the method should be
  interactive or not. The old functions call the methods as
  non-interactive.</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1636113601">- Add PackageKit-zypp-c++17.patch: Fix build failure when building
  with libzypp &gt; 17.28.5 and gcc &lt; 11
  (gh#hughsie/PackageKit/commit/1a6bb6ae6, bsc#1192349).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1637064000">- Rewrite prep phase to not use autopatch -M: SLE15/Leap15's RPM
  version does not support that syntax yet.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1637064001">- Apply all patches unconditonally: PackageKit-zypp-c++17.patch is
  merged in upstream git and thus does not justify to be
  conditionally applied.
- Switching back to autosetup, as this works without conditional
  patches.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1653048000">- Update to version 1.2.5:
  + Backends:
  - dnf:
    . Add support for autoremove flag when removing packages.
    . Searches by name and package details should be case
    insensitive.
    . Update appstream xml files if dnf_sack_add_repos() does
    the download.
  - zypp:
    . Add -std=c++1z cpp flags.
    . Fix crash when search string is NULL.
    . Fix package installation using undefined data.
  - Changes to alpm, apttcc, nix, and slack.
  + Bugfixes:
  - Install offline-update enablement symlink if Meson is new
    enough.
  - Move Wants= line for network-online.target.
  - Add flags to D-Bus offline invoking methods.
  - Properly handle allow-reinstall flag for installations.
  - Provide better error message if trying to install an
    installed package.
  - Wait until online to activate systemd service.
- Drop 505.patch, PackageKit-zypp-c++17.patch, and
  PackageKit-zypp-fix-crash-with-empty-search-string.patch: fixed
  upstream.</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1653566400">- Add PackageKit-zypp-locked-packages.patch: zypp: ignore locked
  packages(gh#hughsie/PackageKit#543, boo#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1656676800">- Add PackageKit-zypp-add-upgrade-system.patch: implement
  upgrade-system method(gh#hughsie/PackageKit/commit/930dd201b).</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1657368000">- Move the dbus-1 system.d file to /usr (bsc#1201347)</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1659528000">- Modified PackageKit.spec: bump libzypp dependency version to
  17.31.0.
- Add PackageKit-zypp-avoid-statuReset.patch: zypp: Avoid
  statuReset() on locked packages
  (gh#PackageKit/PackageKit/commit/dd1964255, bsc#1199895).
- Add PackageKit-zypp-disable-upgrade-system-in-sle.patch: zypp:
  Disable upgrade-system support in SLE
  (gh#PackageKit/PackageKit/commit/0fcd820c2).
- Add PackageKit-zypp-restore-pool-status-after-simulating-update.patch:
  zypp: restore pool status after simulating an update
  (gh#PackageKit/PackageKit/commit/2b61a6649, bsc#1199895).
- Add PackageKit-zypp-fix-is-tumbleweed-check.patch: zypp: build
  the pool before calling is_tumbleweed()
  (gh#PackageKit/PackageKit/commit/146890153).
- Add PackageKit-zypp-update-libzypp-dependency-version.patch:
  zypp: update libzypp dependency version
  (gh#PackageKit/PackageKit/commit/58c7c0285, bsc#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1662120000">- Add PackageKit-zypp-dont-refresh-before-searching.patch:
  zypp: Don't refresh repos before searching
  (gh#PackageKit/PackageKit/commit/58c7c0285, bsc#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1664193600">- Add PackageKit-zypp-dont-remove-locked-packages.patch: zypp:
  Check if packages are locked before removing
  (gh#PackageKit/PackageKit/commit/8649a07bc, bsc#1199895).
- Add PackageKit-zypp-add-repo-in-packageid.patch: zypp: add
  repository data in package id
  (gh#PackageKit/PackageKit/commit/8eb2ef0ae, bsc#1202585).
- Remove PackageKit-zypp-locked-packages.patch: reverted upstream
  (gh#PackageKit/PackageKit/commit/ed3e38043).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1673006400">- Add PackageKit-zypp-fix-ambiguous-filesystem-reference.patch:
  zypp: Fix ambiguous reference to 'filesystem' class
  (gh#PackageKit/PackageKit/commit/bb1409a71, bsc#1206687).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678708800">- Add PackageKit-fix-pkcon-permission.patch: trivial: Drop
  unnecessary x permission
  (gh#PackageKit/PackageKit/commit/47b7f97bc, bsc#1209138)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1689595200">- Add PackageKit-dynamic-export.patch: fix loading of modules when
  built using glib 2.70 (boo#1213309).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1699531200">- Update to version 1.2.8:
  + Libraries:
  - offline-updates:
    . Make package update list deduplication more efficient.
    . Add only one entry per package to 'offline-update-competed'
    file.
  - PkClient: Replace the GSimpleAsyncResult with the GTask API.
  - pk-client:
    . Fix use-before-set of PkProgress on cancellation.
    . Move cancellable disconnect to dispose.
    . Rework refcounting for PkClientState.
  + Backends: Changes to apt, dnf, PiSi and BSD backends.
- Changes from version 1.2.7:
  + New Features:
  - pkclient: Add an option to count download size with
    dependencies.
  - pk-transaction: Add support for getting the RemainingTime
    property.
  + Backends:
  - zypp: Fix ambiguous reference to 'filesystem' class.
  - Changes to dnf, apt, alpm backends.
- Changes from version 1.2.6:
  + New Features:
  - Expose transaction sender as read-only property on the bus.
  - pkmon: Display transaction sender binary name in log.
  - pk-transaction: Add Packages signal.
  - pk-transaction: Combine some D-Bus PropertiesChanged signal
    emissions.
  - pk-transaction: Add UpdateDetails signal.
  + Backends:
  - zypp:
    . implement upgrade-system method.
    . Clean up trailing whitespaces.
    . Avoid statuReset() on locked packages.
    . restore pool status after simulating an update.
    . Disable upgrade-system support in SLE.
    . build the pool before calling is_tumbleweed().
    . update libzypp dependency version.
    . Don't refresh repos before searching.
    . Check if packages are locked before removing.
    . add repository data in package id.
    . Remove trailing whitespace.
    + Changes to alpm, aptcc, apt, and nix backends.
- Rebase patches:
  + PackageKit-dnf-Add-support-for-AppStream-repodata-basenames-use.patch
  + PackageKit-dynamic-export.patch
  + PackageKit-zypp-disable-upgrade-system-in-sle.patch
- Drop upstream fixed patches:
  + PackageKit-zypp-add-repo-in-packageid.patch
  + PackageKit-zypp-add-upgrade-system.patch
  + PackageKit-zypp-avoid-statuReset.patch
  + PackageKit-zypp-dont-refresh-before-searching.patch
  + PackageKit-zypp-dont-remove-locked-packages.patch
  + PackageKit-zypp-fix-ambiguous-filesystem-reference.patch
  + PackageKit-zypp-fix-is-tumbleweed-check.patch
  + PackageKit-zypp-restore-pool-status-after-simulating-update.patch
  + PackageKit-zypp-update-libzypp-dependency-version.patch</changelog>
  <changelog author="Alynx Zhou &lt;alynx.zhou@suse.com&gt;" date="1704196800">- Add PackageKit-find-python-3-6.patch: Specify the Python version
  we need to build this package.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1709640000">- Drop baselibs.conf: the -32bit packages are no longer needed and
  have not been part of Tumbleweed for a while already (build for
  i586 only enabled in LegacyX86).</changelog>
  <changelog author="Alynx Zhou &lt;alynx.zhou@suse.com&gt;" date="1723550400">- Add PackageKit-mark-as-compulsory.patch: Prevent PackageKit from
  user uninstallable for most desktops (bsc#1226269).</changelog>
</package>
<package pkgid="49ea09ef1d5c1a5b6ce6a99d0843230c034fbae0e2ef7b426c91cfe93d50fc152001843ac242411aaf0525ce6e688a2ad774ba042647ea155a49f4568912747b" name="PackageKit" arch="src">
  <version epoch="0" ver="1.2.8" rel="5.0.2.1.sr20240901"/>
  <changelog author="Stanislav Brabec &lt;sbrabec@suse.com&gt;" date="1631793600">- Remove obsolete translation-update-upstream support
  (jsc#SLE-21105).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1636113600">- Update to version 1.2.4:
  + Libraries:
  - Add specific error code when user declined interaction
  - Avoid spurious GObject::notify signal emissions
  - Correct 'cancellable' use in pk_client_repair_system_async()
  - Fix a leak on calling set_locale() a second time
  - Fix a possible use-after-free under pk_client_cancel_cb()
  - Improve thread safety on an operation cancellation
  + Backends:
  - dnf:
    . Read update information also when getting list of updates
    . Honor install_weak_deps=False if it is there
    . Use 'hy_query_get_advisory_pkgs', if available
  + New Features:
  - PkDetails: Add 'download-size' property
  - PkPackage: Add update severity property
  + Bugfixes:
  - Let the finish understand the 'cancelled' exit code
  - Make backends that use pk-backend-spawn work (#477)
  - Only set polkit interactive flag if method call has too
- Changes from version 1.2.3:
  + Backends:
  - alpm:
    . Add post transaction hook
    . Rename errno to alpm_err to avoid name clashes
  - aptcc: Auto-remove old kernels, unless configured otherwise
  - dnf: Add support for coercing upgrade to distupgrade
  - zypp:
    . Make sure pool is initialized at the beginning of some
    methods
    . Reset update mode after getting updates
  + Bugfixes:
  - Append to cron log instead of overwriting it
  - Cancel a transaction if calling Cancel fails or the daemon
    disappears
  - Do not crash when calling pk_dbus_get_uid() before D-Bus is
    setup
  - Fix all compiler warnings
  - Fix multilib conflicts in generated pk-enum-types.h
  - Free scheduler array correctly again
  - Remove large transaction size sanity check
- Drop patches fixed upstream:
  + PackageKit-zypp-cleanup-tmp-files.patch
  + PackageKit-zypp-reset-update-mode-after-get-updates.patch
  + PackageKit-dnf-Add-support-for-coercing-upgrade-to-distupgrade.patch
  + PackageKit-zypp-initialize-pool.patch
  + PackageKit-remove-transaction-size-limit.patch
  + PackageKit-cancel-transaction-if-daemon-disappears.patch
  + PackageKit-dnf-ignore-weak-deps.patch
- Add 505.patch: pk-offline: Add flags to D-Bus invoking methods.
  That's currently to be able to set whether the method should be
  interactive or not. The old functions call the methods as
  non-interactive.</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1636113601">- Add PackageKit-zypp-c++17.patch: Fix build failure when building
  with libzypp &gt; 17.28.5 and gcc &lt; 11
  (gh#hughsie/PackageKit/commit/1a6bb6ae6, bsc#1192349).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1637064000">- Rewrite prep phase to not use autopatch -M: SLE15/Leap15's RPM
  version does not support that syntax yet.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1637064001">- Apply all patches unconditonally: PackageKit-zypp-c++17.patch is
  merged in upstream git and thus does not justify to be
  conditionally applied.
- Switching back to autosetup, as this works without conditional
  patches.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1653048000">- Update to version 1.2.5:
  + Backends:
  - dnf:
    . Add support for autoremove flag when removing packages.
    . Searches by name and package details should be case
    insensitive.
    . Update appstream xml files if dnf_sack_add_repos() does
    the download.
  - zypp:
    . Add -std=c++1z cpp flags.
    . Fix crash when search string is NULL.
    . Fix package installation using undefined data.
  - Changes to alpm, apttcc, nix, and slack.
  + Bugfixes:
  - Install offline-update enablement symlink if Meson is new
    enough.
  - Move Wants= line for network-online.target.
  - Add flags to D-Bus offline invoking methods.
  - Properly handle allow-reinstall flag for installations.
  - Provide better error message if trying to install an
    installed package.
  - Wait until online to activate systemd service.
- Drop 505.patch, PackageKit-zypp-c++17.patch, and
  PackageKit-zypp-fix-crash-with-empty-search-string.patch: fixed
  upstream.</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1653566400">- Add PackageKit-zypp-locked-packages.patch: zypp: ignore locked
  packages(gh#hughsie/PackageKit#543, boo#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1656676800">- Add PackageKit-zypp-add-upgrade-system.patch: implement
  upgrade-system method(gh#hughsie/PackageKit/commit/930dd201b).</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1657368000">- Move the dbus-1 system.d file to /usr (bsc#1201347)</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1659528000">- Modified PackageKit.spec: bump libzypp dependency version to
  17.31.0.
- Add PackageKit-zypp-avoid-statuReset.patch: zypp: Avoid
  statuReset() on locked packages
  (gh#PackageKit/PackageKit/commit/dd1964255, bsc#1199895).
- Add PackageKit-zypp-disable-upgrade-system-in-sle.patch: zypp:
  Disable upgrade-system support in SLE
  (gh#PackageKit/PackageKit/commit/0fcd820c2).
- Add PackageKit-zypp-restore-pool-status-after-simulating-update.patch:
  zypp: restore pool status after simulating an update
  (gh#PackageKit/PackageKit/commit/2b61a6649, bsc#1199895).
- Add PackageKit-zypp-fix-is-tumbleweed-check.patch: zypp: build
  the pool before calling is_tumbleweed()
  (gh#PackageKit/PackageKit/commit/146890153).
- Add PackageKit-zypp-update-libzypp-dependency-version.patch:
  zypp: update libzypp dependency version
  (gh#PackageKit/PackageKit/commit/58c7c0285, bsc#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1662120000">- Add PackageKit-zypp-dont-refresh-before-searching.patch:
  zypp: Don't refresh repos before searching
  (gh#PackageKit/PackageKit/commit/58c7c0285, bsc#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1664193600">- Add PackageKit-zypp-dont-remove-locked-packages.patch: zypp:
  Check if packages are locked before removing
  (gh#PackageKit/PackageKit/commit/8649a07bc, bsc#1199895).
- Add PackageKit-zypp-add-repo-in-packageid.patch: zypp: add
  repository data in package id
  (gh#PackageKit/PackageKit/commit/8eb2ef0ae, bsc#1202585).
- Remove PackageKit-zypp-locked-packages.patch: reverted upstream
  (gh#PackageKit/PackageKit/commit/ed3e38043).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1673006400">- Add PackageKit-zypp-fix-ambiguous-filesystem-reference.patch:
  zypp: Fix ambiguous reference to 'filesystem' class
  (gh#PackageKit/PackageKit/commit/bb1409a71, bsc#1206687).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678708800">- Add PackageKit-fix-pkcon-permission.patch: trivial: Drop
  unnecessary x permission
  (gh#PackageKit/PackageKit/commit/47b7f97bc, bsc#1209138)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1689595200">- Add PackageKit-dynamic-export.patch: fix loading of modules when
  built using glib 2.70 (boo#1213309).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1699531200">- Update to version 1.2.8:
  + Libraries:
  - offline-updates:
    . Make package update list deduplication more efficient.
    . Add only one entry per package to 'offline-update-competed'
    file.
  - PkClient: Replace the GSimpleAsyncResult with the GTask API.
  - pk-client:
    . Fix use-before-set of PkProgress on cancellation.
    . Move cancellable disconnect to dispose.
    . Rework refcounting for PkClientState.
  + Backends: Changes to apt, dnf, PiSi and BSD backends.
- Changes from version 1.2.7:
  + New Features:
  - pkclient: Add an option to count download size with
    dependencies.
  - pk-transaction: Add support for getting the RemainingTime
    property.
  + Backends:
  - zypp: Fix ambiguous reference to 'filesystem' class.
  - Changes to dnf, apt, alpm backends.
- Changes from version 1.2.6:
  + New Features:
  - Expose transaction sender as read-only property on the bus.
  - pkmon: Display transaction sender binary name in log.
  - pk-transaction: Add Packages signal.
  - pk-transaction: Combine some D-Bus PropertiesChanged signal
    emissions.
  - pk-transaction: Add UpdateDetails signal.
  + Backends:
  - zypp:
    . implement upgrade-system method.
    . Clean up trailing whitespaces.
    . Avoid statuReset() on locked packages.
    . restore pool status after simulating an update.
    . Disable upgrade-system support in SLE.
    . build the pool before calling is_tumbleweed().
    . update libzypp dependency version.
    . Don't refresh repos before searching.
    . Check if packages are locked before removing.
    . add repository data in package id.
    . Remove trailing whitespace.
    + Changes to alpm, aptcc, apt, and nix backends.
- Rebase patches:
  + PackageKit-dnf-Add-support-for-AppStream-repodata-basenames-use.patch
  + PackageKit-dynamic-export.patch
  + PackageKit-zypp-disable-upgrade-system-in-sle.patch
- Drop upstream fixed patches:
  + PackageKit-zypp-add-repo-in-packageid.patch
  + PackageKit-zypp-add-upgrade-system.patch
  + PackageKit-zypp-avoid-statuReset.patch
  + PackageKit-zypp-dont-refresh-before-searching.patch
  + PackageKit-zypp-dont-remove-locked-packages.patch
  + PackageKit-zypp-fix-ambiguous-filesystem-reference.patch
  + PackageKit-zypp-fix-is-tumbleweed-check.patch
  + PackageKit-zypp-restore-pool-status-after-simulating-update.patch
  + PackageKit-zypp-update-libzypp-dependency-version.patch</changelog>
  <changelog author="Alynx Zhou &lt;alynx.zhou@suse.com&gt;" date="1704196800">- Add PackageKit-find-python-3-6.patch: Specify the Python version
  we need to build this package.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1709640000">- Drop baselibs.conf: the -32bit packages are no longer needed and
  have not been part of Tumbleweed for a while already (build for
  i586 only enabled in LegacyX86).</changelog>
  <changelog author="Alynx Zhou &lt;alynx.zhou@suse.com&gt;" date="1723550400">- Add PackageKit-mark-as-compulsory.patch: Prevent PackageKit from
  user uninstallable for most desktops (bsc#1226269).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1726142400">- Add PackageKit-zypp-dont-install-updateCandidateObj.patch:
  zypp: Mark the correct packages to-be-installed (bsc#1227389,
  gh#PackageKit/PackageKit/commit/209aa6295).</changelog>
</package>
<package pkgid="d9a26c5d5f53ea2330759c35b10fd90199ad1abd025e303daacf1ed7b24232679f0cd3296c846952a5f906dd3816fd2767c5413fccbedbca010e37c87fa6ee86" name="PackageKit" arch="x86_64">
  <version epoch="0" ver="1.2.8" rel="5.0.2.1.sr20240901"/>
  <changelog author="Stanislav Brabec &lt;sbrabec@suse.com&gt;" date="1631793600">- Remove obsolete translation-update-upstream support
  (jsc#SLE-21105).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1636113600">- Update to version 1.2.4:
  + Libraries:
  - Add specific error code when user declined interaction
  - Avoid spurious GObject::notify signal emissions
  - Correct 'cancellable' use in pk_client_repair_system_async()
  - Fix a leak on calling set_locale() a second time
  - Fix a possible use-after-free under pk_client_cancel_cb()
  - Improve thread safety on an operation cancellation
  + Backends:
  - dnf:
    . Read update information also when getting list of updates
    . Honor install_weak_deps=False if it is there
    . Use 'hy_query_get_advisory_pkgs', if available
  + New Features:
  - PkDetails: Add 'download-size' property
  - PkPackage: Add update severity property
  + Bugfixes:
  - Let the finish understand the 'cancelled' exit code
  - Make backends that use pk-backend-spawn work (#477)
  - Only set polkit interactive flag if method call has too
- Changes from version 1.2.3:
  + Backends:
  - alpm:
    . Add post transaction hook
    . Rename errno to alpm_err to avoid name clashes
  - aptcc: Auto-remove old kernels, unless configured otherwise
  - dnf: Add support for coercing upgrade to distupgrade
  - zypp:
    . Make sure pool is initialized at the beginning of some
    methods
    . Reset update mode after getting updates
  + Bugfixes:
  - Append to cron log instead of overwriting it
  - Cancel a transaction if calling Cancel fails or the daemon
    disappears
  - Do not crash when calling pk_dbus_get_uid() before D-Bus is
    setup
  - Fix all compiler warnings
  - Fix multilib conflicts in generated pk-enum-types.h
  - Free scheduler array correctly again
  - Remove large transaction size sanity check
- Drop patches fixed upstream:
  + PackageKit-zypp-cleanup-tmp-files.patch
  + PackageKit-zypp-reset-update-mode-after-get-updates.patch
  + PackageKit-dnf-Add-support-for-coercing-upgrade-to-distupgrade.patch
  + PackageKit-zypp-initialize-pool.patch
  + PackageKit-remove-transaction-size-limit.patch
  + PackageKit-cancel-transaction-if-daemon-disappears.patch
  + PackageKit-dnf-ignore-weak-deps.patch
- Add 505.patch: pk-offline: Add flags to D-Bus invoking methods.
  That's currently to be able to set whether the method should be
  interactive or not. The old functions call the methods as
  non-interactive.</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1636113601">- Add PackageKit-zypp-c++17.patch: Fix build failure when building
  with libzypp &gt; 17.28.5 and gcc &lt; 11
  (gh#hughsie/PackageKit/commit/1a6bb6ae6, bsc#1192349).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1637064000">- Rewrite prep phase to not use autopatch -M: SLE15/Leap15's RPM
  version does not support that syntax yet.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1637064001">- Apply all patches unconditonally: PackageKit-zypp-c++17.patch is
  merged in upstream git and thus does not justify to be
  conditionally applied.
- Switching back to autosetup, as this works without conditional
  patches.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1653048000">- Update to version 1.2.5:
  + Backends:
  - dnf:
    . Add support for autoremove flag when removing packages.
    . Searches by name and package details should be case
    insensitive.
    . Update appstream xml files if dnf_sack_add_repos() does
    the download.
  - zypp:
    . Add -std=c++1z cpp flags.
    . Fix crash when search string is NULL.
    . Fix package installation using undefined data.
  - Changes to alpm, apttcc, nix, and slack.
  + Bugfixes:
  - Install offline-update enablement symlink if Meson is new
    enough.
  - Move Wants= line for network-online.target.
  - Add flags to D-Bus offline invoking methods.
  - Properly handle allow-reinstall flag for installations.
  - Provide better error message if trying to install an
    installed package.
  - Wait until online to activate systemd service.
- Drop 505.patch, PackageKit-zypp-c++17.patch, and
  PackageKit-zypp-fix-crash-with-empty-search-string.patch: fixed
  upstream.</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1653566400">- Add PackageKit-zypp-locked-packages.patch: zypp: ignore locked
  packages(gh#hughsie/PackageKit#543, boo#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1656676800">- Add PackageKit-zypp-add-upgrade-system.patch: implement
  upgrade-system method(gh#hughsie/PackageKit/commit/930dd201b).</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1657368000">- Move the dbus-1 system.d file to /usr (bsc#1201347)</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1659528000">- Modified PackageKit.spec: bump libzypp dependency version to
  17.31.0.
- Add PackageKit-zypp-avoid-statuReset.patch: zypp: Avoid
  statuReset() on locked packages
  (gh#PackageKit/PackageKit/commit/dd1964255, bsc#1199895).
- Add PackageKit-zypp-disable-upgrade-system-in-sle.patch: zypp:
  Disable upgrade-system support in SLE
  (gh#PackageKit/PackageKit/commit/0fcd820c2).
- Add PackageKit-zypp-restore-pool-status-after-simulating-update.patch:
  zypp: restore pool status after simulating an update
  (gh#PackageKit/PackageKit/commit/2b61a6649, bsc#1199895).
- Add PackageKit-zypp-fix-is-tumbleweed-check.patch: zypp: build
  the pool before calling is_tumbleweed()
  (gh#PackageKit/PackageKit/commit/146890153).
- Add PackageKit-zypp-update-libzypp-dependency-version.patch:
  zypp: update libzypp dependency version
  (gh#PackageKit/PackageKit/commit/58c7c0285, bsc#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1662120000">- Add PackageKit-zypp-dont-refresh-before-searching.patch:
  zypp: Don't refresh repos before searching
  (gh#PackageKit/PackageKit/commit/58c7c0285, bsc#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1664193600">- Add PackageKit-zypp-dont-remove-locked-packages.patch: zypp:
  Check if packages are locked before removing
  (gh#PackageKit/PackageKit/commit/8649a07bc, bsc#1199895).
- Add PackageKit-zypp-add-repo-in-packageid.patch: zypp: add
  repository data in package id
  (gh#PackageKit/PackageKit/commit/8eb2ef0ae, bsc#1202585).
- Remove PackageKit-zypp-locked-packages.patch: reverted upstream
  (gh#PackageKit/PackageKit/commit/ed3e38043).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1673006400">- Add PackageKit-zypp-fix-ambiguous-filesystem-reference.patch:
  zypp: Fix ambiguous reference to 'filesystem' class
  (gh#PackageKit/PackageKit/commit/bb1409a71, bsc#1206687).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678708800">- Add PackageKit-fix-pkcon-permission.patch: trivial: Drop
  unnecessary x permission
  (gh#PackageKit/PackageKit/commit/47b7f97bc, bsc#1209138)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1689595200">- Add PackageKit-dynamic-export.patch: fix loading of modules when
  built using glib 2.70 (boo#1213309).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1699531200">- Update to version 1.2.8:
  + Libraries:
  - offline-updates:
    . Make package update list deduplication more efficient.
    . Add only one entry per package to 'offline-update-competed'
    file.
  - PkClient: Replace the GSimpleAsyncResult with the GTask API.
  - pk-client:
    . Fix use-before-set of PkProgress on cancellation.
    . Move cancellable disconnect to dispose.
    . Rework refcounting for PkClientState.
  + Backends: Changes to apt, dnf, PiSi and BSD backends.
- Changes from version 1.2.7:
  + New Features:
  - pkclient: Add an option to count download size with
    dependencies.
  - pk-transaction: Add support for getting the RemainingTime
    property.
  + Backends:
  - zypp: Fix ambiguous reference to 'filesystem' class.
  - Changes to dnf, apt, alpm backends.
- Changes from version 1.2.6:
  + New Features:
  - Expose transaction sender as read-only property on the bus.
  - pkmon: Display transaction sender binary name in log.
  - pk-transaction: Add Packages signal.
  - pk-transaction: Combine some D-Bus PropertiesChanged signal
    emissions.
  - pk-transaction: Add UpdateDetails signal.
  + Backends:
  - zypp:
    . implement upgrade-system method.
    . Clean up trailing whitespaces.
    . Avoid statuReset() on locked packages.
    . restore pool status after simulating an update.
    . Disable upgrade-system support in SLE.
    . build the pool before calling is_tumbleweed().
    . update libzypp dependency version.
    . Don't refresh repos before searching.
    . Check if packages are locked before removing.
    . add repository data in package id.
    . Remove trailing whitespace.
    + Changes to alpm, aptcc, apt, and nix backends.
- Rebase patches:
  + PackageKit-dnf-Add-support-for-AppStream-repodata-basenames-use.patch
  + PackageKit-dynamic-export.patch
  + PackageKit-zypp-disable-upgrade-system-in-sle.patch
- Drop upstream fixed patches:
  + PackageKit-zypp-add-repo-in-packageid.patch
  + PackageKit-zypp-add-upgrade-system.patch
  + PackageKit-zypp-avoid-statuReset.patch
  + PackageKit-zypp-dont-refresh-before-searching.patch
  + PackageKit-zypp-dont-remove-locked-packages.patch
  + PackageKit-zypp-fix-ambiguous-filesystem-reference.patch
  + PackageKit-zypp-fix-is-tumbleweed-check.patch
  + PackageKit-zypp-restore-pool-status-after-simulating-update.patch
  + PackageKit-zypp-update-libzypp-dependency-version.patch</changelog>
  <changelog author="Alynx Zhou &lt;alynx.zhou@suse.com&gt;" date="1704196800">- Add PackageKit-find-python-3-6.patch: Specify the Python version
  we need to build this package.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1709640000">- Drop baselibs.conf: the -32bit packages are no longer needed and
  have not been part of Tumbleweed for a while already (build for
  i586 only enabled in LegacyX86).</changelog>
  <changelog author="Alynx Zhou &lt;alynx.zhou@suse.com&gt;" date="1723550400">- Add PackageKit-mark-as-compulsory.patch: Prevent PackageKit from
  user uninstallable for most desktops (bsc#1226269).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1726142400">- Add PackageKit-zypp-dont-install-updateCandidateObj.patch:
  zypp: Mark the correct packages to-be-installed (bsc#1227389,
  gh#PackageKit/PackageKit/commit/209aa6295).</changelog>
</package>
<package pkgid="5c418e743ddb3eec9a7c762727a032ff691b2db023662e79c40f8e0b31c80c98ba69d279ee92083ae6a3907c6dd53a172f5276f898e64d9604dce91b6e6dcdf4" name="PackageKit" arch="src">
  <version epoch="0" ver="1.2.8" rel="5.1"/>
  <changelog author="Stanislav Brabec &lt;sbrabec@suse.com&gt;" date="1631793600">- Remove obsolete translation-update-upstream support
  (jsc#SLE-21105).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1636113600">- Update to version 1.2.4:
  + Libraries:
  - Add specific error code when user declined interaction
  - Avoid spurious GObject::notify signal emissions
  - Correct 'cancellable' use in pk_client_repair_system_async()
  - Fix a leak on calling set_locale() a second time
  - Fix a possible use-after-free under pk_client_cancel_cb()
  - Improve thread safety on an operation cancellation
  + Backends:
  - dnf:
    . Read update information also when getting list of updates
    . Honor install_weak_deps=False if it is there
    . Use 'hy_query_get_advisory_pkgs', if available
  + New Features:
  - PkDetails: Add 'download-size' property
  - PkPackage: Add update severity property
  + Bugfixes:
  - Let the finish understand the 'cancelled' exit code
  - Make backends that use pk-backend-spawn work (#477)
  - Only set polkit interactive flag if method call has too
- Changes from version 1.2.3:
  + Backends:
  - alpm:
    . Add post transaction hook
    . Rename errno to alpm_err to avoid name clashes
  - aptcc: Auto-remove old kernels, unless configured otherwise
  - dnf: Add support for coercing upgrade to distupgrade
  - zypp:
    . Make sure pool is initialized at the beginning of some
    methods
    . Reset update mode after getting updates
  + Bugfixes:
  - Append to cron log instead of overwriting it
  - Cancel a transaction if calling Cancel fails or the daemon
    disappears
  - Do not crash when calling pk_dbus_get_uid() before D-Bus is
    setup
  - Fix all compiler warnings
  - Fix multilib conflicts in generated pk-enum-types.h
  - Free scheduler array correctly again
  - Remove large transaction size sanity check
- Drop patches fixed upstream:
  + PackageKit-zypp-cleanup-tmp-files.patch
  + PackageKit-zypp-reset-update-mode-after-get-updates.patch
  + PackageKit-dnf-Add-support-for-coercing-upgrade-to-distupgrade.patch
  + PackageKit-zypp-initialize-pool.patch
  + PackageKit-remove-transaction-size-limit.patch
  + PackageKit-cancel-transaction-if-daemon-disappears.patch
  + PackageKit-dnf-ignore-weak-deps.patch
- Add 505.patch: pk-offline: Add flags to D-Bus invoking methods.
  That's currently to be able to set whether the method should be
  interactive or not. The old functions call the methods as
  non-interactive.</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1636113601">- Add PackageKit-zypp-c++17.patch: Fix build failure when building
  with libzypp &gt; 17.28.5 and gcc &lt; 11
  (gh#hughsie/PackageKit/commit/1a6bb6ae6, bsc#1192349).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1637064000">- Rewrite prep phase to not use autopatch -M: SLE15/Leap15's RPM
  version does not support that syntax yet.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1637064001">- Apply all patches unconditonally: PackageKit-zypp-c++17.patch is
  merged in upstream git and thus does not justify to be
  conditionally applied.
- Switching back to autosetup, as this works without conditional
  patches.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1653048000">- Update to version 1.2.5:
  + Backends:
  - dnf:
    . Add support for autoremove flag when removing packages.
    . Searches by name and package details should be case
    insensitive.
    . Update appstream xml files if dnf_sack_add_repos() does
    the download.
  - zypp:
    . Add -std=c++1z cpp flags.
    . Fix crash when search string is NULL.
    . Fix package installation using undefined data.
  - Changes to alpm, apttcc, nix, and slack.
  + Bugfixes:
  - Install offline-update enablement symlink if Meson is new
    enough.
  - Move Wants= line for network-online.target.
  - Add flags to D-Bus offline invoking methods.
  - Properly handle allow-reinstall flag for installations.
  - Provide better error message if trying to install an
    installed package.
  - Wait until online to activate systemd service.
- Drop 505.patch, PackageKit-zypp-c++17.patch, and
  PackageKit-zypp-fix-crash-with-empty-search-string.patch: fixed
  upstream.</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1653566400">- Add PackageKit-zypp-locked-packages.patch: zypp: ignore locked
  packages(gh#hughsie/PackageKit#543, boo#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1656676800">- Add PackageKit-zypp-add-upgrade-system.patch: implement
  upgrade-system method(gh#hughsie/PackageKit/commit/930dd201b).</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1657368000">- Move the dbus-1 system.d file to /usr (bsc#1201347)</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1659528000">- Modified PackageKit.spec: bump libzypp dependency version to
  17.31.0.
- Add PackageKit-zypp-avoid-statuReset.patch: zypp: Avoid
  statuReset() on locked packages
  (gh#PackageKit/PackageKit/commit/dd1964255, bsc#1199895).
- Add PackageKit-zypp-disable-upgrade-system-in-sle.patch: zypp:
  Disable upgrade-system support in SLE
  (gh#PackageKit/PackageKit/commit/0fcd820c2).
- Add PackageKit-zypp-restore-pool-status-after-simulating-update.patch:
  zypp: restore pool status after simulating an update
  (gh#PackageKit/PackageKit/commit/2b61a6649, bsc#1199895).
- Add PackageKit-zypp-fix-is-tumbleweed-check.patch: zypp: build
  the pool before calling is_tumbleweed()
  (gh#PackageKit/PackageKit/commit/146890153).
- Add PackageKit-zypp-update-libzypp-dependency-version.patch:
  zypp: update libzypp dependency version
  (gh#PackageKit/PackageKit/commit/58c7c0285, bsc#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1662120000">- Add PackageKit-zypp-dont-refresh-before-searching.patch:
  zypp: Don't refresh repos before searching
  (gh#PackageKit/PackageKit/commit/58c7c0285, bsc#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1664193600">- Add PackageKit-zypp-dont-remove-locked-packages.patch: zypp:
  Check if packages are locked before removing
  (gh#PackageKit/PackageKit/commit/8649a07bc, bsc#1199895).
- Add PackageKit-zypp-add-repo-in-packageid.patch: zypp: add
  repository data in package id
  (gh#PackageKit/PackageKit/commit/8eb2ef0ae, bsc#1202585).
- Remove PackageKit-zypp-locked-packages.patch: reverted upstream
  (gh#PackageKit/PackageKit/commit/ed3e38043).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1673006400">- Add PackageKit-zypp-fix-ambiguous-filesystem-reference.patch:
  zypp: Fix ambiguous reference to 'filesystem' class
  (gh#PackageKit/PackageKit/commit/bb1409a71, bsc#1206687).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678708800">- Add PackageKit-fix-pkcon-permission.patch: trivial: Drop
  unnecessary x permission
  (gh#PackageKit/PackageKit/commit/47b7f97bc, bsc#1209138)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1689595200">- Add PackageKit-dynamic-export.patch: fix loading of modules when
  built using glib 2.70 (boo#1213309).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1699531200">- Update to version 1.2.8:
  + Libraries:
  - offline-updates:
    . Make package update list deduplication more efficient.
    . Add only one entry per package to 'offline-update-competed'
    file.
  - PkClient: Replace the GSimpleAsyncResult with the GTask API.
  - pk-client:
    . Fix use-before-set of PkProgress on cancellation.
    . Move cancellable disconnect to dispose.
    . Rework refcounting for PkClientState.
  + Backends: Changes to apt, dnf, PiSi and BSD backends.
- Changes from version 1.2.7:
  + New Features:
  - pkclient: Add an option to count download size with
    dependencies.
  - pk-transaction: Add support for getting the RemainingTime
    property.
  + Backends:
  - zypp: Fix ambiguous reference to 'filesystem' class.
  - Changes to dnf, apt, alpm backends.
- Changes from version 1.2.6:
  + New Features:
  - Expose transaction sender as read-only property on the bus.
  - pkmon: Display transaction sender binary name in log.
  - pk-transaction: Add Packages signal.
  - pk-transaction: Combine some D-Bus PropertiesChanged signal
    emissions.
  - pk-transaction: Add UpdateDetails signal.
  + Backends:
  - zypp:
    . implement upgrade-system method.
    . Clean up trailing whitespaces.
    . Avoid statuReset() on locked packages.
    . restore pool status after simulating an update.
    . Disable upgrade-system support in SLE.
    . build the pool before calling is_tumbleweed().
    . update libzypp dependency version.
    . Don't refresh repos before searching.
    . Check if packages are locked before removing.
    . add repository data in package id.
    . Remove trailing whitespace.
    + Changes to alpm, aptcc, apt, and nix backends.
- Rebase patches:
  + PackageKit-dnf-Add-support-for-AppStream-repodata-basenames-use.patch
  + PackageKit-dynamic-export.patch
  + PackageKit-zypp-disable-upgrade-system-in-sle.patch
- Drop upstream fixed patches:
  + PackageKit-zypp-add-repo-in-packageid.patch
  + PackageKit-zypp-add-upgrade-system.patch
  + PackageKit-zypp-avoid-statuReset.patch
  + PackageKit-zypp-dont-refresh-before-searching.patch
  + PackageKit-zypp-dont-remove-locked-packages.patch
  + PackageKit-zypp-fix-ambiguous-filesystem-reference.patch
  + PackageKit-zypp-fix-is-tumbleweed-check.patch
  + PackageKit-zypp-restore-pool-status-after-simulating-update.patch
  + PackageKit-zypp-update-libzypp-dependency-version.patch</changelog>
  <changelog author="Alynx Zhou &lt;alynx.zhou@suse.com&gt;" date="1704196800">- Add PackageKit-find-python-3-6.patch: Specify the Python version
  we need to build this package.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1709640000">- Drop baselibs.conf: the -32bit packages are no longer needed and
  have not been part of Tumbleweed for a while already (build for
  i586 only enabled in LegacyX86).</changelog>
  <changelog author="Alynx Zhou &lt;alynx.zhou@suse.com&gt;" date="1723550400">- Add PackageKit-mark-as-compulsory.patch: Prevent PackageKit from
  user uninstallable for most desktops (bsc#1226269).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1726142400">- Add PackageKit-zypp-dont-install-updateCandidateObj.patch:
  zypp: Mark the correct packages to-be-installed (bsc#1227389,
  gh#PackageKit/PackageKit/commit/209aa6295).</changelog>
</package>
<package pkgid="be4a757303ec67bddf312ded1f049fbd2791c34c0df70c402d6d3e1de7258bc6738ad90b13b5f14e9dc2d553561d585ee179f0591499735c21471c131adba07e" name="PackageKit" arch="x86_64">
  <version epoch="0" ver="1.2.8" rel="5.1"/>
  <changelog author="Stanislav Brabec &lt;sbrabec@suse.com&gt;" date="1631793600">- Remove obsolete translation-update-upstream support
  (jsc#SLE-21105).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1636113600">- Update to version 1.2.4:
  + Libraries:
  - Add specific error code when user declined interaction
  - Avoid spurious GObject::notify signal emissions
  - Correct 'cancellable' use in pk_client_repair_system_async()
  - Fix a leak on calling set_locale() a second time
  - Fix a possible use-after-free under pk_client_cancel_cb()
  - Improve thread safety on an operation cancellation
  + Backends:
  - dnf:
    . Read update information also when getting list of updates
    . Honor install_weak_deps=False if it is there
    . Use 'hy_query_get_advisory_pkgs', if available
  + New Features:
  - PkDetails: Add 'download-size' property
  - PkPackage: Add update severity property
  + Bugfixes:
  - Let the finish understand the 'cancelled' exit code
  - Make backends that use pk-backend-spawn work (#477)
  - Only set polkit interactive flag if method call has too
- Changes from version 1.2.3:
  + Backends:
  - alpm:
    . Add post transaction hook
    . Rename errno to alpm_err to avoid name clashes
  - aptcc: Auto-remove old kernels, unless configured otherwise
  - dnf: Add support for coercing upgrade to distupgrade
  - zypp:
    . Make sure pool is initialized at the beginning of some
    methods
    . Reset update mode after getting updates
  + Bugfixes:
  - Append to cron log instead of overwriting it
  - Cancel a transaction if calling Cancel fails or the daemon
    disappears
  - Do not crash when calling pk_dbus_get_uid() before D-Bus is
    setup
  - Fix all compiler warnings
  - Fix multilib conflicts in generated pk-enum-types.h
  - Free scheduler array correctly again
  - Remove large transaction size sanity check
- Drop patches fixed upstream:
  + PackageKit-zypp-cleanup-tmp-files.patch
  + PackageKit-zypp-reset-update-mode-after-get-updates.patch
  + PackageKit-dnf-Add-support-for-coercing-upgrade-to-distupgrade.patch
  + PackageKit-zypp-initialize-pool.patch
  + PackageKit-remove-transaction-size-limit.patch
  + PackageKit-cancel-transaction-if-daemon-disappears.patch
  + PackageKit-dnf-ignore-weak-deps.patch
- Add 505.patch: pk-offline: Add flags to D-Bus invoking methods.
  That's currently to be able to set whether the method should be
  interactive or not. The old functions call the methods as
  non-interactive.</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1636113601">- Add PackageKit-zypp-c++17.patch: Fix build failure when building
  with libzypp &gt; 17.28.5 and gcc &lt; 11
  (gh#hughsie/PackageKit/commit/1a6bb6ae6, bsc#1192349).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1637064000">- Rewrite prep phase to not use autopatch -M: SLE15/Leap15's RPM
  version does not support that syntax yet.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1637064001">- Apply all patches unconditonally: PackageKit-zypp-c++17.patch is
  merged in upstream git and thus does not justify to be
  conditionally applied.
- Switching back to autosetup, as this works without conditional
  patches.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1653048000">- Update to version 1.2.5:
  + Backends:
  - dnf:
    . Add support for autoremove flag when removing packages.
    . Searches by name and package details should be case
    insensitive.
    . Update appstream xml files if dnf_sack_add_repos() does
    the download.
  - zypp:
    . Add -std=c++1z cpp flags.
    . Fix crash when search string is NULL.
    . Fix package installation using undefined data.
  - Changes to alpm, apttcc, nix, and slack.
  + Bugfixes:
  - Install offline-update enablement symlink if Meson is new
    enough.
  - Move Wants= line for network-online.target.
  - Add flags to D-Bus offline invoking methods.
  - Properly handle allow-reinstall flag for installations.
  - Provide better error message if trying to install an
    installed package.
  - Wait until online to activate systemd service.
- Drop 505.patch, PackageKit-zypp-c++17.patch, and
  PackageKit-zypp-fix-crash-with-empty-search-string.patch: fixed
  upstream.</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1653566400">- Add PackageKit-zypp-locked-packages.patch: zypp: ignore locked
  packages(gh#hughsie/PackageKit#543, boo#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1656676800">- Add PackageKit-zypp-add-upgrade-system.patch: implement
  upgrade-system method(gh#hughsie/PackageKit/commit/930dd201b).</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1657368000">- Move the dbus-1 system.d file to /usr (bsc#1201347)</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1659528000">- Modified PackageKit.spec: bump libzypp dependency version to
  17.31.0.
- Add PackageKit-zypp-avoid-statuReset.patch: zypp: Avoid
  statuReset() on locked packages
  (gh#PackageKit/PackageKit/commit/dd1964255, bsc#1199895).
- Add PackageKit-zypp-disable-upgrade-system-in-sle.patch: zypp:
  Disable upgrade-system support in SLE
  (gh#PackageKit/PackageKit/commit/0fcd820c2).
- Add PackageKit-zypp-restore-pool-status-after-simulating-update.patch:
  zypp: restore pool status after simulating an update
  (gh#PackageKit/PackageKit/commit/2b61a6649, bsc#1199895).
- Add PackageKit-zypp-fix-is-tumbleweed-check.patch: zypp: build
  the pool before calling is_tumbleweed()
  (gh#PackageKit/PackageKit/commit/146890153).
- Add PackageKit-zypp-update-libzypp-dependency-version.patch:
  zypp: update libzypp dependency version
  (gh#PackageKit/PackageKit/commit/58c7c0285, bsc#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1662120000">- Add PackageKit-zypp-dont-refresh-before-searching.patch:
  zypp: Don't refresh repos before searching
  (gh#PackageKit/PackageKit/commit/58c7c0285, bsc#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1664193600">- Add PackageKit-zypp-dont-remove-locked-packages.patch: zypp:
  Check if packages are locked before removing
  (gh#PackageKit/PackageKit/commit/8649a07bc, bsc#1199895).
- Add PackageKit-zypp-add-repo-in-packageid.patch: zypp: add
  repository data in package id
  (gh#PackageKit/PackageKit/commit/8eb2ef0ae, bsc#1202585).
- Remove PackageKit-zypp-locked-packages.patch: reverted upstream
  (gh#PackageKit/PackageKit/commit/ed3e38043).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1673006400">- Add PackageKit-zypp-fix-ambiguous-filesystem-reference.patch:
  zypp: Fix ambiguous reference to 'filesystem' class
  (gh#PackageKit/PackageKit/commit/bb1409a71, bsc#1206687).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678708800">- Add PackageKit-fix-pkcon-permission.patch: trivial: Drop
  unnecessary x permission
  (gh#PackageKit/PackageKit/commit/47b7f97bc, bsc#1209138)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1689595200">- Add PackageKit-dynamic-export.patch: fix loading of modules when
  built using glib 2.70 (boo#1213309).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1699531200">- Update to version 1.2.8:
  + Libraries:
  - offline-updates:
    . Make package update list deduplication more efficient.
    . Add only one entry per package to 'offline-update-competed'
    file.
  - PkClient: Replace the GSimpleAsyncResult with the GTask API.
  - pk-client:
    . Fix use-before-set of PkProgress on cancellation.
    . Move cancellable disconnect to dispose.
    . Rework refcounting for PkClientState.
  + Backends: Changes to apt, dnf, PiSi and BSD backends.
- Changes from version 1.2.7:
  + New Features:
  - pkclient: Add an option to count download size with
    dependencies.
  - pk-transaction: Add support for getting the RemainingTime
    property.
  + Backends:
  - zypp: Fix ambiguous reference to 'filesystem' class.
  - Changes to dnf, apt, alpm backends.
- Changes from version 1.2.6:
  + New Features:
  - Expose transaction sender as read-only property on the bus.
  - pkmon: Display transaction sender binary name in log.
  - pk-transaction: Add Packages signal.
  - pk-transaction: Combine some D-Bus PropertiesChanged signal
    emissions.
  - pk-transaction: Add UpdateDetails signal.
  + Backends:
  - zypp:
    . implement upgrade-system method.
    . Clean up trailing whitespaces.
    . Avoid statuReset() on locked packages.
    . restore pool status after simulating an update.
    . Disable upgrade-system support in SLE.
    . build the pool before calling is_tumbleweed().
    . update libzypp dependency version.
    . Don't refresh repos before searching.
    . Check if packages are locked before removing.
    . add repository data in package id.
    . Remove trailing whitespace.
    + Changes to alpm, aptcc, apt, and nix backends.
- Rebase patches:
  + PackageKit-dnf-Add-support-for-AppStream-repodata-basenames-use.patch
  + PackageKit-dynamic-export.patch
  + PackageKit-zypp-disable-upgrade-system-in-sle.patch
- Drop upstream fixed patches:
  + PackageKit-zypp-add-repo-in-packageid.patch
  + PackageKit-zypp-add-upgrade-system.patch
  + PackageKit-zypp-avoid-statuReset.patch
  + PackageKit-zypp-dont-refresh-before-searching.patch
  + PackageKit-zypp-dont-remove-locked-packages.patch
  + PackageKit-zypp-fix-ambiguous-filesystem-reference.patch
  + PackageKit-zypp-fix-is-tumbleweed-check.patch
  + PackageKit-zypp-restore-pool-status-after-simulating-update.patch
  + PackageKit-zypp-update-libzypp-dependency-version.patch</changelog>
  <changelog author="Alynx Zhou &lt;alynx.zhou@suse.com&gt;" date="1704196800">- Add PackageKit-find-python-3-6.patch: Specify the Python version
  we need to build this package.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1709640000">- Drop baselibs.conf: the -32bit packages are no longer needed and
  have not been part of Tumbleweed for a while already (build for
  i586 only enabled in LegacyX86).</changelog>
  <changelog author="Alynx Zhou &lt;alynx.zhou@suse.com&gt;" date="1723550400">- Add PackageKit-mark-as-compulsory.patch: Prevent PackageKit from
  user uninstallable for most desktops (bsc#1226269).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1726142400">- Add PackageKit-zypp-dont-install-updateCandidateObj.patch:
  zypp: Mark the correct packages to-be-installed (bsc#1227389,
  gh#PackageKit/PackageKit/commit/209aa6295).</changelog>
</package>
<package pkgid="6d3855828c98f66d6b2e03abef797b53451ecb395936788142353051736f224c97634e1f42d68da7d5c9e79f0cae815c73f1da86f02b637227d0db85e6e54a35" name="PackageKit" arch="src">
  <version epoch="0" ver="1.2.8" rel="6.1"/>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1636113600">- Update to version 1.2.4:
  + Libraries:
  - Add specific error code when user declined interaction
  - Avoid spurious GObject::notify signal emissions
  - Correct 'cancellable' use in pk_client_repair_system_async()
  - Fix a leak on calling set_locale() a second time
  - Fix a possible use-after-free under pk_client_cancel_cb()
  - Improve thread safety on an operation cancellation
  + Backends:
  - dnf:
    . Read update information also when getting list of updates
    . Honor install_weak_deps=False if it is there
    . Use 'hy_query_get_advisory_pkgs', if available
  + New Features:
  - PkDetails: Add 'download-size' property
  - PkPackage: Add update severity property
  + Bugfixes:
  - Let the finish understand the 'cancelled' exit code
  - Make backends that use pk-backend-spawn work (#477)
  - Only set polkit interactive flag if method call has too
- Changes from version 1.2.3:
  + Backends:
  - alpm:
    . Add post transaction hook
    . Rename errno to alpm_err to avoid name clashes
  - aptcc: Auto-remove old kernels, unless configured otherwise
  - dnf: Add support for coercing upgrade to distupgrade
  - zypp:
    . Make sure pool is initialized at the beginning of some
    methods
    . Reset update mode after getting updates
  + Bugfixes:
  - Append to cron log instead of overwriting it
  - Cancel a transaction if calling Cancel fails or the daemon
    disappears
  - Do not crash when calling pk_dbus_get_uid() before D-Bus is
    setup
  - Fix all compiler warnings
  - Fix multilib conflicts in generated pk-enum-types.h
  - Free scheduler array correctly again
  - Remove large transaction size sanity check
- Drop patches fixed upstream:
  + PackageKit-zypp-cleanup-tmp-files.patch
  + PackageKit-zypp-reset-update-mode-after-get-updates.patch
  + PackageKit-dnf-Add-support-for-coercing-upgrade-to-distupgrade.patch
  + PackageKit-zypp-initialize-pool.patch
  + PackageKit-remove-transaction-size-limit.patch
  + PackageKit-cancel-transaction-if-daemon-disappears.patch
  + PackageKit-dnf-ignore-weak-deps.patch
- Add 505.patch: pk-offline: Add flags to D-Bus invoking methods.
  That's currently to be able to set whether the method should be
  interactive or not. The old functions call the methods as
  non-interactive.</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1636113601">- Add PackageKit-zypp-c++17.patch: Fix build failure when building
  with libzypp &gt; 17.28.5 and gcc &lt; 11
  (gh#hughsie/PackageKit/commit/1a6bb6ae6, bsc#1192349).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1637064000">- Rewrite prep phase to not use autopatch -M: SLE15/Leap15's RPM
  version does not support that syntax yet.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1637064001">- Apply all patches unconditonally: PackageKit-zypp-c++17.patch is
  merged in upstream git and thus does not justify to be
  conditionally applied.
- Switching back to autosetup, as this works without conditional
  patches.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1653048000">- Update to version 1.2.5:
  + Backends:
  - dnf:
    . Add support for autoremove flag when removing packages.
    . Searches by name and package details should be case
    insensitive.
    . Update appstream xml files if dnf_sack_add_repos() does
    the download.
  - zypp:
    . Add -std=c++1z cpp flags.
    . Fix crash when search string is NULL.
    . Fix package installation using undefined data.
  - Changes to alpm, apttcc, nix, and slack.
  + Bugfixes:
  - Install offline-update enablement symlink if Meson is new
    enough.
  - Move Wants= line for network-online.target.
  - Add flags to D-Bus offline invoking methods.
  - Properly handle allow-reinstall flag for installations.
  - Provide better error message if trying to install an
    installed package.
  - Wait until online to activate systemd service.
- Drop 505.patch, PackageKit-zypp-c++17.patch, and
  PackageKit-zypp-fix-crash-with-empty-search-string.patch: fixed
  upstream.</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1653566400">- Add PackageKit-zypp-locked-packages.patch: zypp: ignore locked
  packages(gh#hughsie/PackageKit#543, boo#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1656676800">- Add PackageKit-zypp-add-upgrade-system.patch: implement
  upgrade-system method(gh#hughsie/PackageKit/commit/930dd201b).</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1657368000">- Move the dbus-1 system.d file to /usr (bsc#1201347)</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1659528000">- Modified PackageKit.spec: bump libzypp dependency version to
  17.31.0.
- Add PackageKit-zypp-avoid-statuReset.patch: zypp: Avoid
  statuReset() on locked packages
  (gh#PackageKit/PackageKit/commit/dd1964255, bsc#1199895).
- Add PackageKit-zypp-disable-upgrade-system-in-sle.patch: zypp:
  Disable upgrade-system support in SLE
  (gh#PackageKit/PackageKit/commit/0fcd820c2).
- Add PackageKit-zypp-restore-pool-status-after-simulating-update.patch:
  zypp: restore pool status after simulating an update
  (gh#PackageKit/PackageKit/commit/2b61a6649, bsc#1199895).
- Add PackageKit-zypp-fix-is-tumbleweed-check.patch: zypp: build
  the pool before calling is_tumbleweed()
  (gh#PackageKit/PackageKit/commit/146890153).
- Add PackageKit-zypp-update-libzypp-dependency-version.patch:
  zypp: update libzypp dependency version
  (gh#PackageKit/PackageKit/commit/58c7c0285, bsc#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1662120000">- Add PackageKit-zypp-dont-refresh-before-searching.patch:
  zypp: Don't refresh repos before searching
  (gh#PackageKit/PackageKit/commit/58c7c0285, bsc#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1664193600">- Add PackageKit-zypp-dont-remove-locked-packages.patch: zypp:
  Check if packages are locked before removing
  (gh#PackageKit/PackageKit/commit/8649a07bc, bsc#1199895).
- Add PackageKit-zypp-add-repo-in-packageid.patch: zypp: add
  repository data in package id
  (gh#PackageKit/PackageKit/commit/8eb2ef0ae, bsc#1202585).
- Remove PackageKit-zypp-locked-packages.patch: reverted upstream
  (gh#PackageKit/PackageKit/commit/ed3e38043).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1673006400">- Add PackageKit-zypp-fix-ambiguous-filesystem-reference.patch:
  zypp: Fix ambiguous reference to 'filesystem' class
  (gh#PackageKit/PackageKit/commit/bb1409a71, bsc#1206687).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678708800">- Add PackageKit-fix-pkcon-permission.patch: trivial: Drop
  unnecessary x permission
  (gh#PackageKit/PackageKit/commit/47b7f97bc, bsc#1209138)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1689595200">- Add PackageKit-dynamic-export.patch: fix loading of modules when
  built using glib 2.70 (boo#1213309).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1699531200">- Update to version 1.2.8:
  + Libraries:
  - offline-updates:
    . Make package update list deduplication more efficient.
    . Add only one entry per package to 'offline-update-competed'
    file.
  - PkClient: Replace the GSimpleAsyncResult with the GTask API.
  - pk-client:
    . Fix use-before-set of PkProgress on cancellation.
    . Move cancellable disconnect to dispose.
    . Rework refcounting for PkClientState.
  + Backends: Changes to apt, dnf, PiSi and BSD backends.
- Changes from version 1.2.7:
  + New Features:
  - pkclient: Add an option to count download size with
    dependencies.
  - pk-transaction: Add support for getting the RemainingTime
    property.
  + Backends:
  - zypp: Fix ambiguous reference to 'filesystem' class.
  - Changes to dnf, apt, alpm backends.
- Changes from version 1.2.6:
  + New Features:
  - Expose transaction sender as read-only property on the bus.
  - pkmon: Display transaction sender binary name in log.
  - pk-transaction: Add Packages signal.
  - pk-transaction: Combine some D-Bus PropertiesChanged signal
    emissions.
  - pk-transaction: Add UpdateDetails signal.
  + Backends:
  - zypp:
    . implement upgrade-system method.
    . Clean up trailing whitespaces.
    . Avoid statuReset() on locked packages.
    . restore pool status after simulating an update.
    . Disable upgrade-system support in SLE.
    . build the pool before calling is_tumbleweed().
    . update libzypp dependency version.
    . Don't refresh repos before searching.
    . Check if packages are locked before removing.
    . add repository data in package id.
    . Remove trailing whitespace.
    + Changes to alpm, aptcc, apt, and nix backends.
- Rebase patches:
  + PackageKit-dnf-Add-support-for-AppStream-repodata-basenames-use.patch
  + PackageKit-dynamic-export.patch
  + PackageKit-zypp-disable-upgrade-system-in-sle.patch
- Drop upstream fixed patches:
  + PackageKit-zypp-add-repo-in-packageid.patch
  + PackageKit-zypp-add-upgrade-system.patch
  + PackageKit-zypp-avoid-statuReset.patch
  + PackageKit-zypp-dont-refresh-before-searching.patch
  + PackageKit-zypp-dont-remove-locked-packages.patch
  + PackageKit-zypp-fix-ambiguous-filesystem-reference.patch
  + PackageKit-zypp-fix-is-tumbleweed-check.patch
  + PackageKit-zypp-restore-pool-status-after-simulating-update.patch
  + PackageKit-zypp-update-libzypp-dependency-version.patch</changelog>
  <changelog author="Alynx Zhou &lt;alynx.zhou@suse.com&gt;" date="1704196800">- Add PackageKit-find-python-3-6.patch: Specify the Python version
  we need to build this package.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1709640000">- Drop baselibs.conf: the -32bit packages are no longer needed and
  have not been part of Tumbleweed for a while already (build for
  i586 only enabled in LegacyX86).</changelog>
  <changelog author="Alynx Zhou &lt;alynx.zhou@suse.com&gt;" date="1723550400">- Add PackageKit-mark-as-compulsory.patch: Prevent PackageKit from
  user uninstallable for most desktops (bsc#1226269).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1726142400">- Add PackageKit-zypp-dont-install-updateCandidateObj.patch:
  zypp: Mark the correct packages to-be-installed (bsc#1227389,
  gh#PackageKit/PackageKit/commit/209aa6295).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1728993600">- Drop rcFOO symlinks (PED-266)
- Drop usage of update-alternatives, but simplify installation of
  /usr/libexec/gst-install-plugins-helper as a direct symlink to
  pk-gstreamer-install.</changelog>
</package>
<package pkgid="1db672a3ea11cdbca6285250ed44a2a63572bbdd4223590b261649c324342122b9b94477e6bbb8f62607c225bb8ef638fa8ad566386edd9a27c954a01e6474e6" name="PackageKit" arch="x86_64">
  <version epoch="0" ver="1.2.8" rel="6.1"/>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1636113600">- Update to version 1.2.4:
  + Libraries:
  - Add specific error code when user declined interaction
  - Avoid spurious GObject::notify signal emissions
  - Correct 'cancellable' use in pk_client_repair_system_async()
  - Fix a leak on calling set_locale() a second time
  - Fix a possible use-after-free under pk_client_cancel_cb()
  - Improve thread safety on an operation cancellation
  + Backends:
  - dnf:
    . Read update information also when getting list of updates
    . Honor install_weak_deps=False if it is there
    . Use 'hy_query_get_advisory_pkgs', if available
  + New Features:
  - PkDetails: Add 'download-size' property
  - PkPackage: Add update severity property
  + Bugfixes:
  - Let the finish understand the 'cancelled' exit code
  - Make backends that use pk-backend-spawn work (#477)
  - Only set polkit interactive flag if method call has too
- Changes from version 1.2.3:
  + Backends:
  - alpm:
    . Add post transaction hook
    . Rename errno to alpm_err to avoid name clashes
  - aptcc: Auto-remove old kernels, unless configured otherwise
  - dnf: Add support for coercing upgrade to distupgrade
  - zypp:
    . Make sure pool is initialized at the beginning of some
    methods
    . Reset update mode after getting updates
  + Bugfixes:
  - Append to cron log instead of overwriting it
  - Cancel a transaction if calling Cancel fails or the daemon
    disappears
  - Do not crash when calling pk_dbus_get_uid() before D-Bus is
    setup
  - Fix all compiler warnings
  - Fix multilib conflicts in generated pk-enum-types.h
  - Free scheduler array correctly again
  - Remove large transaction size sanity check
- Drop patches fixed upstream:
  + PackageKit-zypp-cleanup-tmp-files.patch
  + PackageKit-zypp-reset-update-mode-after-get-updates.patch
  + PackageKit-dnf-Add-support-for-coercing-upgrade-to-distupgrade.patch
  + PackageKit-zypp-initialize-pool.patch
  + PackageKit-remove-transaction-size-limit.patch
  + PackageKit-cancel-transaction-if-daemon-disappears.patch
  + PackageKit-dnf-ignore-weak-deps.patch
- Add 505.patch: pk-offline: Add flags to D-Bus invoking methods.
  That's currently to be able to set whether the method should be
  interactive or not. The old functions call the methods as
  non-interactive.</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1636113601">- Add PackageKit-zypp-c++17.patch: Fix build failure when building
  with libzypp &gt; 17.28.5 and gcc &lt; 11
  (gh#hughsie/PackageKit/commit/1a6bb6ae6, bsc#1192349).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1637064000">- Rewrite prep phase to not use autopatch -M: SLE15/Leap15's RPM
  version does not support that syntax yet.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1637064001">- Apply all patches unconditonally: PackageKit-zypp-c++17.patch is
  merged in upstream git and thus does not justify to be
  conditionally applied.
- Switching back to autosetup, as this works without conditional
  patches.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1653048000">- Update to version 1.2.5:
  + Backends:
  - dnf:
    . Add support for autoremove flag when removing packages.
    . Searches by name and package details should be case
    insensitive.
    . Update appstream xml files if dnf_sack_add_repos() does
    the download.
  - zypp:
    . Add -std=c++1z cpp flags.
    . Fix crash when search string is NULL.
    . Fix package installation using undefined data.
  - Changes to alpm, apttcc, nix, and slack.
  + Bugfixes:
  - Install offline-update enablement symlink if Meson is new
    enough.
  - Move Wants= line for network-online.target.
  - Add flags to D-Bus offline invoking methods.
  - Properly handle allow-reinstall flag for installations.
  - Provide better error message if trying to install an
    installed package.
  - Wait until online to activate systemd service.
- Drop 505.patch, PackageKit-zypp-c++17.patch, and
  PackageKit-zypp-fix-crash-with-empty-search-string.patch: fixed
  upstream.</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1653566400">- Add PackageKit-zypp-locked-packages.patch: zypp: ignore locked
  packages(gh#hughsie/PackageKit#543, boo#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1656676800">- Add PackageKit-zypp-add-upgrade-system.patch: implement
  upgrade-system method(gh#hughsie/PackageKit/commit/930dd201b).</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1657368000">- Move the dbus-1 system.d file to /usr (bsc#1201347)</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1659528000">- Modified PackageKit.spec: bump libzypp dependency version to
  17.31.0.
- Add PackageKit-zypp-avoid-statuReset.patch: zypp: Avoid
  statuReset() on locked packages
  (gh#PackageKit/PackageKit/commit/dd1964255, bsc#1199895).
- Add PackageKit-zypp-disable-upgrade-system-in-sle.patch: zypp:
  Disable upgrade-system support in SLE
  (gh#PackageKit/PackageKit/commit/0fcd820c2).
- Add PackageKit-zypp-restore-pool-status-after-simulating-update.patch:
  zypp: restore pool status after simulating an update
  (gh#PackageKit/PackageKit/commit/2b61a6649, bsc#1199895).
- Add PackageKit-zypp-fix-is-tumbleweed-check.patch: zypp: build
  the pool before calling is_tumbleweed()
  (gh#PackageKit/PackageKit/commit/146890153).
- Add PackageKit-zypp-update-libzypp-dependency-version.patch:
  zypp: update libzypp dependency version
  (gh#PackageKit/PackageKit/commit/58c7c0285, bsc#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1662120000">- Add PackageKit-zypp-dont-refresh-before-searching.patch:
  zypp: Don't refresh repos before searching
  (gh#PackageKit/PackageKit/commit/58c7c0285, bsc#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1664193600">- Add PackageKit-zypp-dont-remove-locked-packages.patch: zypp:
  Check if packages are locked before removing
  (gh#PackageKit/PackageKit/commit/8649a07bc, bsc#1199895).
- Add PackageKit-zypp-add-repo-in-packageid.patch: zypp: add
  repository data in package id
  (gh#PackageKit/PackageKit/commit/8eb2ef0ae, bsc#1202585).
- Remove PackageKit-zypp-locked-packages.patch: reverted upstream
  (gh#PackageKit/PackageKit/commit/ed3e38043).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1673006400">- Add PackageKit-zypp-fix-ambiguous-filesystem-reference.patch:
  zypp: Fix ambiguous reference to 'filesystem' class
  (gh#PackageKit/PackageKit/commit/bb1409a71, bsc#1206687).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678708800">- Add PackageKit-fix-pkcon-permission.patch: trivial: Drop
  unnecessary x permission
  (gh#PackageKit/PackageKit/commit/47b7f97bc, bsc#1209138)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1689595200">- Add PackageKit-dynamic-export.patch: fix loading of modules when
  built using glib 2.70 (boo#1213309).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1699531200">- Update to version 1.2.8:
  + Libraries:
  - offline-updates:
    . Make package update list deduplication more efficient.
    . Add only one entry per package to 'offline-update-competed'
    file.
  - PkClient: Replace the GSimpleAsyncResult with the GTask API.
  - pk-client:
    . Fix use-before-set of PkProgress on cancellation.
    . Move cancellable disconnect to dispose.
    . Rework refcounting for PkClientState.
  + Backends: Changes to apt, dnf, PiSi and BSD backends.
- Changes from version 1.2.7:
  + New Features:
  - pkclient: Add an option to count download size with
    dependencies.
  - pk-transaction: Add support for getting the RemainingTime
    property.
  + Backends:
  - zypp: Fix ambiguous reference to 'filesystem' class.
  - Changes to dnf, apt, alpm backends.
- Changes from version 1.2.6:
  + New Features:
  - Expose transaction sender as read-only property on the bus.
  - pkmon: Display transaction sender binary name in log.
  - pk-transaction: Add Packages signal.
  - pk-transaction: Combine some D-Bus PropertiesChanged signal
    emissions.
  - pk-transaction: Add UpdateDetails signal.
  + Backends:
  - zypp:
    . implement upgrade-system method.
    . Clean up trailing whitespaces.
    . Avoid statuReset() on locked packages.
    . restore pool status after simulating an update.
    . Disable upgrade-system support in SLE.
    . build the pool before calling is_tumbleweed().
    . update libzypp dependency version.
    . Don't refresh repos before searching.
    . Check if packages are locked before removing.
    . add repository data in package id.
    . Remove trailing whitespace.
    + Changes to alpm, aptcc, apt, and nix backends.
- Rebase patches:
  + PackageKit-dnf-Add-support-for-AppStream-repodata-basenames-use.patch
  + PackageKit-dynamic-export.patch
  + PackageKit-zypp-disable-upgrade-system-in-sle.patch
- Drop upstream fixed patches:
  + PackageKit-zypp-add-repo-in-packageid.patch
  + PackageKit-zypp-add-upgrade-system.patch
  + PackageKit-zypp-avoid-statuReset.patch
  + PackageKit-zypp-dont-refresh-before-searching.patch
  + PackageKit-zypp-dont-remove-locked-packages.patch
  + PackageKit-zypp-fix-ambiguous-filesystem-reference.patch
  + PackageKit-zypp-fix-is-tumbleweed-check.patch
  + PackageKit-zypp-restore-pool-status-after-simulating-update.patch
  + PackageKit-zypp-update-libzypp-dependency-version.patch</changelog>
  <changelog author="Alynx Zhou &lt;alynx.zhou@suse.com&gt;" date="1704196800">- Add PackageKit-find-python-3-6.patch: Specify the Python version
  we need to build this package.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1709640000">- Drop baselibs.conf: the -32bit packages are no longer needed and
  have not been part of Tumbleweed for a while already (build for
  i586 only enabled in LegacyX86).</changelog>
  <changelog author="Alynx Zhou &lt;alynx.zhou@suse.com&gt;" date="1723550400">- Add PackageKit-mark-as-compulsory.patch: Prevent PackageKit from
  user uninstallable for most desktops (bsc#1226269).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1726142400">- Add PackageKit-zypp-dont-install-updateCandidateObj.patch:
  zypp: Mark the correct packages to-be-installed (bsc#1227389,
  gh#PackageKit/PackageKit/commit/209aa6295).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1728993600">- Drop rcFOO symlinks (PED-266)
- Drop usage of update-alternatives, but simplify installation of
  /usr/libexec/gst-install-plugins-helper as a direct symlink to
  pk-gstreamer-install.</changelog>
</package>
<package pkgid="d5c00f87c3762d04ceeb13113558ff4571e353ee52e38b532742c08aec28c91f8181d36abd7aca87377f4bc30bc523db73456e92453c9b26760aaf2824750d23" name="PackageKit-backend-dnf" arch="x86_64">
  <version epoch="0" ver="1.2.8" rel="4.1"/>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1629460800">- Add PackageKit-zypp-fix-crash-with-empty-search-string.patch:
  zypp: Fix crash when search string is NULL (bsc#1179287,
  gh#hughsie/PackageKit/commit#21ccf49).</changelog>
  <changelog author="Stanislav Brabec &lt;sbrabec@suse.com&gt;" date="1631793600">- Remove obsolete translation-update-upstream support
  (jsc#SLE-21105).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1636113600">- Update to version 1.2.4:
  + Libraries:
  - Add specific error code when user declined interaction
  - Avoid spurious GObject::notify signal emissions
  - Correct 'cancellable' use in pk_client_repair_system_async()
  - Fix a leak on calling set_locale() a second time
  - Fix a possible use-after-free under pk_client_cancel_cb()
  - Improve thread safety on an operation cancellation
  + Backends:
  - dnf:
    . Read update information also when getting list of updates
    . Honor install_weak_deps=False if it is there
    . Use 'hy_query_get_advisory_pkgs', if available
  + New Features:
  - PkDetails: Add 'download-size' property
  - PkPackage: Add update severity property
  + Bugfixes:
  - Let the finish understand the 'cancelled' exit code
  - Make backends that use pk-backend-spawn work (#477)
  - Only set polkit interactive flag if method call has too
- Changes from version 1.2.3:
  + Backends:
  - alpm:
    . Add post transaction hook
    . Rename errno to alpm_err to avoid name clashes
  - aptcc: Auto-remove old kernels, unless configured otherwise
  - dnf: Add support for coercing upgrade to distupgrade
  - zypp:
    . Make sure pool is initialized at the beginning of some
    methods
    . Reset update mode after getting updates
  + Bugfixes:
  - Append to cron log instead of overwriting it
  - Cancel a transaction if calling Cancel fails or the daemon
    disappears
  - Do not crash when calling pk_dbus_get_uid() before D-Bus is
    setup
  - Fix all compiler warnings
  - Fix multilib conflicts in generated pk-enum-types.h
  - Free scheduler array correctly again
  - Remove large transaction size sanity check
- Drop patches fixed upstream:
  + PackageKit-zypp-cleanup-tmp-files.patch
  + PackageKit-zypp-reset-update-mode-after-get-updates.patch
  + PackageKit-dnf-Add-support-for-coercing-upgrade-to-distupgrade.patch
  + PackageKit-zypp-initialize-pool.patch
  + PackageKit-remove-transaction-size-limit.patch
  + PackageKit-cancel-transaction-if-daemon-disappears.patch
  + PackageKit-dnf-ignore-weak-deps.patch
- Add 505.patch: pk-offline: Add flags to D-Bus invoking methods.
  That's currently to be able to set whether the method should be
  interactive or not. The old functions call the methods as
  non-interactive.</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1636113601">- Add PackageKit-zypp-c++17.patch: Fix build failure when building
  with libzypp &gt; 17.28.5 and gcc &lt; 11
  (gh#hughsie/PackageKit/commit/1a6bb6ae6, bsc#1192349).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1637064000">- Rewrite prep phase to not use autopatch -M: SLE15/Leap15's RPM
  version does not support that syntax yet.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1637064001">- Apply all patches unconditonally: PackageKit-zypp-c++17.patch is
  merged in upstream git and thus does not justify to be
  conditionally applied.
- Switching back to autosetup, as this works without conditional
  patches.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1653048000">- Update to version 1.2.5:
  + Backends:
  - dnf:
    . Add support for autoremove flag when removing packages.
    . Searches by name and package details should be case
    insensitive.
    . Update appstream xml files if dnf_sack_add_repos() does
    the download.
  - zypp:
    . Add -std=c++1z cpp flags.
    . Fix crash when search string is NULL.
    . Fix package installation using undefined data.
  - Changes to alpm, apttcc, nix, and slack.
  + Bugfixes:
  - Install offline-update enablement symlink if Meson is new
    enough.
  - Move Wants= line for network-online.target.
  - Add flags to D-Bus offline invoking methods.
  - Properly handle allow-reinstall flag for installations.
  - Provide better error message if trying to install an
    installed package.
  - Wait until online to activate systemd service.
- Drop 505.patch, PackageKit-zypp-c++17.patch, and
  PackageKit-zypp-fix-crash-with-empty-search-string.patch: fixed
  upstream.</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1653566400">- Add PackageKit-zypp-locked-packages.patch: zypp: ignore locked
  packages(gh#hughsie/PackageKit#543, boo#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1656676800">- Add PackageKit-zypp-add-upgrade-system.patch: implement
  upgrade-system method(gh#hughsie/PackageKit/commit/930dd201b).</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1657368000">- Move the dbus-1 system.d file to /usr (bsc#1201347)</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1659528000">- Modified PackageKit.spec: bump libzypp dependency version to
  17.31.0.
- Add PackageKit-zypp-avoid-statuReset.patch: zypp: Avoid
  statuReset() on locked packages
  (gh#PackageKit/PackageKit/commit/dd1964255, bsc#1199895).
- Add PackageKit-zypp-disable-upgrade-system-in-sle.patch: zypp:
  Disable upgrade-system support in SLE
  (gh#PackageKit/PackageKit/commit/0fcd820c2).
- Add PackageKit-zypp-restore-pool-status-after-simulating-update.patch:
  zypp: restore pool status after simulating an update
  (gh#PackageKit/PackageKit/commit/2b61a6649, bsc#1199895).
- Add PackageKit-zypp-fix-is-tumbleweed-check.patch: zypp: build
  the pool before calling is_tumbleweed()
  (gh#PackageKit/PackageKit/commit/146890153).
- Add PackageKit-zypp-update-libzypp-dependency-version.patch:
  zypp: update libzypp dependency version
  (gh#PackageKit/PackageKit/commit/58c7c0285, bsc#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1662120000">- Add PackageKit-zypp-dont-refresh-before-searching.patch:
  zypp: Don't refresh repos before searching
  (gh#PackageKit/PackageKit/commit/58c7c0285, bsc#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1664193600">- Add PackageKit-zypp-dont-remove-locked-packages.patch: zypp:
  Check if packages are locked before removing
  (gh#PackageKit/PackageKit/commit/8649a07bc, bsc#1199895).
- Add PackageKit-zypp-add-repo-in-packageid.patch: zypp: add
  repository data in package id
  (gh#PackageKit/PackageKit/commit/8eb2ef0ae, bsc#1202585).
- Remove PackageKit-zypp-locked-packages.patch: reverted upstream
  (gh#PackageKit/PackageKit/commit/ed3e38043).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1673006400">- Add PackageKit-zypp-fix-ambiguous-filesystem-reference.patch:
  zypp: Fix ambiguous reference to 'filesystem' class
  (gh#PackageKit/PackageKit/commit/bb1409a71, bsc#1206687).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678708800">- Add PackageKit-fix-pkcon-permission.patch: trivial: Drop
  unnecessary x permission
  (gh#PackageKit/PackageKit/commit/47b7f97bc, bsc#1209138)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1689595200">- Add PackageKit-dynamic-export.patch: fix loading of modules when
  built using glib 2.70 (boo#1213309).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1699531200">- Update to version 1.2.8:
  + Libraries:
  - offline-updates:
    . Make package update list deduplication more efficient.
    . Add only one entry per package to 'offline-update-competed'
    file.
  - PkClient: Replace the GSimpleAsyncResult with the GTask API.
  - pk-client:
    . Fix use-before-set of PkProgress on cancellation.
    . Move cancellable disconnect to dispose.
    . Rework refcounting for PkClientState.
  + Backends: Changes to apt, dnf, PiSi and BSD backends.
- Changes from version 1.2.7:
  + New Features:
  - pkclient: Add an option to count download size with
    dependencies.
  - pk-transaction: Add support for getting the RemainingTime
    property.
  + Backends:
  - zypp: Fix ambiguous reference to 'filesystem' class.
  - Changes to dnf, apt, alpm backends.
- Changes from version 1.2.6:
  + New Features:
  - Expose transaction sender as read-only property on the bus.
  - pkmon: Display transaction sender binary name in log.
  - pk-transaction: Add Packages signal.
  - pk-transaction: Combine some D-Bus PropertiesChanged signal
    emissions.
  - pk-transaction: Add UpdateDetails signal.
  + Backends:
  - zypp:
    . implement upgrade-system method.
    . Clean up trailing whitespaces.
    . Avoid statuReset() on locked packages.
    . restore pool status after simulating an update.
    . Disable upgrade-system support in SLE.
    . build the pool before calling is_tumbleweed().
    . update libzypp dependency version.
    . Don't refresh repos before searching.
    . Check if packages are locked before removing.
    . add repository data in package id.
    . Remove trailing whitespace.
    + Changes to alpm, aptcc, apt, and nix backends.
- Rebase patches:
  + PackageKit-dnf-Add-support-for-AppStream-repodata-basenames-use.patch
  + PackageKit-dynamic-export.patch
  + PackageKit-zypp-disable-upgrade-system-in-sle.patch
- Drop upstream fixed patches:
  + PackageKit-zypp-add-repo-in-packageid.patch
  + PackageKit-zypp-add-upgrade-system.patch
  + PackageKit-zypp-avoid-statuReset.patch
  + PackageKit-zypp-dont-refresh-before-searching.patch
  + PackageKit-zypp-dont-remove-locked-packages.patch
  + PackageKit-zypp-fix-ambiguous-filesystem-reference.patch
  + PackageKit-zypp-fix-is-tumbleweed-check.patch
  + PackageKit-zypp-restore-pool-status-after-simulating-update.patch
  + PackageKit-zypp-update-libzypp-dependency-version.patch</changelog>
  <changelog author="Alynx Zhou &lt;alynx.zhou@suse.com&gt;" date="1704196800">- Add PackageKit-find-python-3-6.patch: Specify the Python version
  we need to build this package.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1709640000">- Drop baselibs.conf: the -32bit packages are no longer needed and
  have not been part of Tumbleweed for a while already (build for
  i586 only enabled in LegacyX86).</changelog>
  <changelog author="Alynx Zhou &lt;alynx.zhou@suse.com&gt;" date="1723550400">- Add PackageKit-mark-as-compulsory.patch: Prevent PackageKit from
  user uninstallable for most desktops (bsc#1226269).</changelog>
</package>
<package pkgid="6f1086d69c7e10bff61f3fab6471106e67db1644f973ba626161c3474c5d94808e0c9b1d7ca20d337f946fa6a1a2d0859fe20a0bd8885de7d06ddcb9b2d305c0" name="PackageKit-backend-dnf" arch="x86_64">
  <version epoch="0" ver="1.2.8" rel="5.0.2.1.sr20240901"/>
  <changelog author="Stanislav Brabec &lt;sbrabec@suse.com&gt;" date="1631793600">- Remove obsolete translation-update-upstream support
  (jsc#SLE-21105).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1636113600">- Update to version 1.2.4:
  + Libraries:
  - Add specific error code when user declined interaction
  - Avoid spurious GObject::notify signal emissions
  - Correct 'cancellable' use in pk_client_repair_system_async()
  - Fix a leak on calling set_locale() a second time
  - Fix a possible use-after-free under pk_client_cancel_cb()
  - Improve thread safety on an operation cancellation
  + Backends:
  - dnf:
    . Read update information also when getting list of updates
    . Honor install_weak_deps=False if it is there
    . Use 'hy_query_get_advisory_pkgs', if available
  + New Features:
  - PkDetails: Add 'download-size' property
  - PkPackage: Add update severity property
  + Bugfixes:
  - Let the finish understand the 'cancelled' exit code
  - Make backends that use pk-backend-spawn work (#477)
  - Only set polkit interactive flag if method call has too
- Changes from version 1.2.3:
  + Backends:
  - alpm:
    . Add post transaction hook
    . Rename errno to alpm_err to avoid name clashes
  - aptcc: Auto-remove old kernels, unless configured otherwise
  - dnf: Add support for coercing upgrade to distupgrade
  - zypp:
    . Make sure pool is initialized at the beginning of some
    methods
    . Reset update mode after getting updates
  + Bugfixes:
  - Append to cron log instead of overwriting it
  - Cancel a transaction if calling Cancel fails or the daemon
    disappears
  - Do not crash when calling pk_dbus_get_uid() before D-Bus is
    setup
  - Fix all compiler warnings
  - Fix multilib conflicts in generated pk-enum-types.h
  - Free scheduler array correctly again
  - Remove large transaction size sanity check
- Drop patches fixed upstream:
  + PackageKit-zypp-cleanup-tmp-files.patch
  + PackageKit-zypp-reset-update-mode-after-get-updates.patch
  + PackageKit-dnf-Add-support-for-coercing-upgrade-to-distupgrade.patch
  + PackageKit-zypp-initialize-pool.patch
  + PackageKit-remove-transaction-size-limit.patch
  + PackageKit-cancel-transaction-if-daemon-disappears.patch
  + PackageKit-dnf-ignore-weak-deps.patch
- Add 505.patch: pk-offline: Add flags to D-Bus invoking methods.
  That's currently to be able to set whether the method should be
  interactive or not. The old functions call the methods as
  non-interactive.</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1636113601">- Add PackageKit-zypp-c++17.patch: Fix build failure when building
  with libzypp &gt; 17.28.5 and gcc &lt; 11
  (gh#hughsie/PackageKit/commit/1a6bb6ae6, bsc#1192349).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1637064000">- Rewrite prep phase to not use autopatch -M: SLE15/Leap15's RPM
  version does not support that syntax yet.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1637064001">- Apply all patches unconditonally: PackageKit-zypp-c++17.patch is
  merged in upstream git and thus does not justify to be
  conditionally applied.
- Switching back to autosetup, as this works without conditional
  patches.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1653048000">- Update to version 1.2.5:
  + Backends:
  - dnf:
    . Add support for autoremove flag when removing packages.
    . Searches by name and package details should be case
    insensitive.
    . Update appstream xml files if dnf_sack_add_repos() does
    the download.
  - zypp:
    . Add -std=c++1z cpp flags.
    . Fix crash when search string is NULL.
    . Fix package installation using undefined data.
  - Changes to alpm, apttcc, nix, and slack.
  + Bugfixes:
  - Install offline-update enablement symlink if Meson is new
    enough.
  - Move Wants= line for network-online.target.
  - Add flags to D-Bus offline invoking methods.
  - Properly handle allow-reinstall flag for installations.
  - Provide better error message if trying to install an
    installed package.
  - Wait until online to activate systemd service.
- Drop 505.patch, PackageKit-zypp-c++17.patch, and
  PackageKit-zypp-fix-crash-with-empty-search-string.patch: fixed
  upstream.</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1653566400">- Add PackageKit-zypp-locked-packages.patch: zypp: ignore locked
  packages(gh#hughsie/PackageKit#543, boo#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1656676800">- Add PackageKit-zypp-add-upgrade-system.patch: implement
  upgrade-system method(gh#hughsie/PackageKit/commit/930dd201b).</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1657368000">- Move the dbus-1 system.d file to /usr (bsc#1201347)</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1659528000">- Modified PackageKit.spec: bump libzypp dependency version to
  17.31.0.
- Add PackageKit-zypp-avoid-statuReset.patch: zypp: Avoid
  statuReset() on locked packages
  (gh#PackageKit/PackageKit/commit/dd1964255, bsc#1199895).
- Add PackageKit-zypp-disable-upgrade-system-in-sle.patch: zypp:
  Disable upgrade-system support in SLE
  (gh#PackageKit/PackageKit/commit/0fcd820c2).
- Add PackageKit-zypp-restore-pool-status-after-simulating-update.patch:
  zypp: restore pool status after simulating an update
  (gh#PackageKit/PackageKit/commit/2b61a6649, bsc#1199895).
- Add PackageKit-zypp-fix-is-tumbleweed-check.patch: zypp: build
  the pool before calling is_tumbleweed()
  (gh#PackageKit/PackageKit/commit/146890153).
- Add PackageKit-zypp-update-libzypp-dependency-version.patch:
  zypp: update libzypp dependency version
  (gh#PackageKit/PackageKit/commit/58c7c0285, bsc#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1662120000">- Add PackageKit-zypp-dont-refresh-before-searching.patch:
  zypp: Don't refresh repos before searching
  (gh#PackageKit/PackageKit/commit/58c7c0285, bsc#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1664193600">- Add PackageKit-zypp-dont-remove-locked-packages.patch: zypp:
  Check if packages are locked before removing
  (gh#PackageKit/PackageKit/commit/8649a07bc, bsc#1199895).
- Add PackageKit-zypp-add-repo-in-packageid.patch: zypp: add
  repository data in package id
  (gh#PackageKit/PackageKit/commit/8eb2ef0ae, bsc#1202585).
- Remove PackageKit-zypp-locked-packages.patch: reverted upstream
  (gh#PackageKit/PackageKit/commit/ed3e38043).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1673006400">- Add PackageKit-zypp-fix-ambiguous-filesystem-reference.patch:
  zypp: Fix ambiguous reference to 'filesystem' class
  (gh#PackageKit/PackageKit/commit/bb1409a71, bsc#1206687).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678708800">- Add PackageKit-fix-pkcon-permission.patch: trivial: Drop
  unnecessary x permission
  (gh#PackageKit/PackageKit/commit/47b7f97bc, bsc#1209138)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1689595200">- Add PackageKit-dynamic-export.patch: fix loading of modules when
  built using glib 2.70 (boo#1213309).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1699531200">- Update to version 1.2.8:
  + Libraries:
  - offline-updates:
    . Make package update list deduplication more efficient.
    . Add only one entry per package to 'offline-update-competed'
    file.
  - PkClient: Replace the GSimpleAsyncResult with the GTask API.
  - pk-client:
    . Fix use-before-set of PkProgress on cancellation.
    . Move cancellable disconnect to dispose.
    . Rework refcounting for PkClientState.
  + Backends: Changes to apt, dnf, PiSi and BSD backends.
- Changes from version 1.2.7:
  + New Features:
  - pkclient: Add an option to count download size with
    dependencies.
  - pk-transaction: Add support for getting the RemainingTime
    property.
  + Backends:
  - zypp: Fix ambiguous reference to 'filesystem' class.
  - Changes to dnf, apt, alpm backends.
- Changes from version 1.2.6:
  + New Features:
  - Expose transaction sender as read-only property on the bus.
  - pkmon: Display transaction sender binary name in log.
  - pk-transaction: Add Packages signal.
  - pk-transaction: Combine some D-Bus PropertiesChanged signal
    emissions.
  - pk-transaction: Add UpdateDetails signal.
  + Backends:
  - zypp:
    . implement upgrade-system method.
    . Clean up trailing whitespaces.
    . Avoid statuReset() on locked packages.
    . restore pool status after simulating an update.
    . Disable upgrade-system support in SLE.
    . build the pool before calling is_tumbleweed().
    . update libzypp dependency version.
    . Don't refresh repos before searching.
    . Check if packages are locked before removing.
    . add repository data in package id.
    . Remove trailing whitespace.
    + Changes to alpm, aptcc, apt, and nix backends.
- Rebase patches:
  + PackageKit-dnf-Add-support-for-AppStream-repodata-basenames-use.patch
  + PackageKit-dynamic-export.patch
  + PackageKit-zypp-disable-upgrade-system-in-sle.patch
- Drop upstream fixed patches:
  + PackageKit-zypp-add-repo-in-packageid.patch
  + PackageKit-zypp-add-upgrade-system.patch
  + PackageKit-zypp-avoid-statuReset.patch
  + PackageKit-zypp-dont-refresh-before-searching.patch
  + PackageKit-zypp-dont-remove-locked-packages.patch
  + PackageKit-zypp-fix-ambiguous-filesystem-reference.patch
  + PackageKit-zypp-fix-is-tumbleweed-check.patch
  + PackageKit-zypp-restore-pool-status-after-simulating-update.patch
  + PackageKit-zypp-update-libzypp-dependency-version.patch</changelog>
  <changelog author="Alynx Zhou &lt;alynx.zhou@suse.com&gt;" date="1704196800">- Add PackageKit-find-python-3-6.patch: Specify the Python version
  we need to build this package.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1709640000">- Drop baselibs.conf: the -32bit packages are no longer needed and
  have not been part of Tumbleweed for a while already (build for
  i586 only enabled in LegacyX86).</changelog>
  <changelog author="Alynx Zhou &lt;alynx.zhou@suse.com&gt;" date="1723550400">- Add PackageKit-mark-as-compulsory.patch: Prevent PackageKit from
  user uninstallable for most desktops (bsc#1226269).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1726142400">- Add PackageKit-zypp-dont-install-updateCandidateObj.patch:
  zypp: Mark the correct packages to-be-installed (bsc#1227389,
  gh#PackageKit/PackageKit/commit/209aa6295).</changelog>
</package>
<package pkgid="8707ce0e4b4830153c2a82db3a062d29ce4072ce109153f4859d1c13d21c7e3a61b9c2b0efea1de7e1aec3904e0ead0580e78f8e1ffb6012a2f91e8255752bf7" name="PackageKit-backend-dnf" arch="x86_64">
  <version epoch="0" ver="1.2.8" rel="5.1"/>
  <changelog author="Stanislav Brabec &lt;sbrabec@suse.com&gt;" date="1631793600">- Remove obsolete translation-update-upstream support
  (jsc#SLE-21105).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1636113600">- Update to version 1.2.4:
  + Libraries:
  - Add specific error code when user declined interaction
  - Avoid spurious GObject::notify signal emissions
  - Correct 'cancellable' use in pk_client_repair_system_async()
  - Fix a leak on calling set_locale() a second time
  - Fix a possible use-after-free under pk_client_cancel_cb()
  - Improve thread safety on an operation cancellation
  + Backends:
  - dnf:
    . Read update information also when getting list of updates
    . Honor install_weak_deps=False if it is there
    . Use 'hy_query_get_advisory_pkgs', if available
  + New Features:
  - PkDetails: Add 'download-size' property
  - PkPackage: Add update severity property
  + Bugfixes:
  - Let the finish understand the 'cancelled' exit code
  - Make backends that use pk-backend-spawn work (#477)
  - Only set polkit interactive flag if method call has too
- Changes from version 1.2.3:
  + Backends:
  - alpm:
    . Add post transaction hook
    . Rename errno to alpm_err to avoid name clashes
  - aptcc: Auto-remove old kernels, unless configured otherwise
  - dnf: Add support for coercing upgrade to distupgrade
  - zypp:
    . Make sure pool is initialized at the beginning of some
    methods
    . Reset update mode after getting updates
  + Bugfixes:
  - Append to cron log instead of overwriting it
  - Cancel a transaction if calling Cancel fails or the daemon
    disappears
  - Do not crash when calling pk_dbus_get_uid() before D-Bus is
    setup
  - Fix all compiler warnings
  - Fix multilib conflicts in generated pk-enum-types.h
  - Free scheduler array correctly again
  - Remove large transaction size sanity check
- Drop patches fixed upstream:
  + PackageKit-zypp-cleanup-tmp-files.patch
  + PackageKit-zypp-reset-update-mode-after-get-updates.patch
  + PackageKit-dnf-Add-support-for-coercing-upgrade-to-distupgrade.patch
  + PackageKit-zypp-initialize-pool.patch
  + PackageKit-remove-transaction-size-limit.patch
  + PackageKit-cancel-transaction-if-daemon-disappears.patch
  + PackageKit-dnf-ignore-weak-deps.patch
- Add 505.patch: pk-offline: Add flags to D-Bus invoking methods.
  That's currently to be able to set whether the method should be
  interactive or not. The old functions call the methods as
  non-interactive.</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1636113601">- Add PackageKit-zypp-c++17.patch: Fix build failure when building
  with libzypp &gt; 17.28.5 and gcc &lt; 11
  (gh#hughsie/PackageKit/commit/1a6bb6ae6, bsc#1192349).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1637064000">- Rewrite prep phase to not use autopatch -M: SLE15/Leap15's RPM
  version does not support that syntax yet.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1637064001">- Apply all patches unconditonally: PackageKit-zypp-c++17.patch is
  merged in upstream git and thus does not justify to be
  conditionally applied.
- Switching back to autosetup, as this works without conditional
  patches.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1653048000">- Update to version 1.2.5:
  + Backends:
  - dnf:
    . Add support for autoremove flag when removing packages.
    . Searches by name and package details should be case
    insensitive.
    . Update appstream xml files if dnf_sack_add_repos() does
    the download.
  - zypp:
    . Add -std=c++1z cpp flags.
    . Fix crash when search string is NULL.
    . Fix package installation using undefined data.
  - Changes to alpm, apttcc, nix, and slack.
  + Bugfixes:
  - Install offline-update enablement symlink if Meson is new
    enough.
  - Move Wants= line for network-online.target.
  - Add flags to D-Bus offline invoking methods.
  - Properly handle allow-reinstall flag for installations.
  - Provide better error message if trying to install an
    installed package.
  - Wait until online to activate systemd service.
- Drop 505.patch, PackageKit-zypp-c++17.patch, and
  PackageKit-zypp-fix-crash-with-empty-search-string.patch: fixed
  upstream.</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1653566400">- Add PackageKit-zypp-locked-packages.patch: zypp: ignore locked
  packages(gh#hughsie/PackageKit#543, boo#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1656676800">- Add PackageKit-zypp-add-upgrade-system.patch: implement
  upgrade-system method(gh#hughsie/PackageKit/commit/930dd201b).</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1657368000">- Move the dbus-1 system.d file to /usr (bsc#1201347)</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1659528000">- Modified PackageKit.spec: bump libzypp dependency version to
  17.31.0.
- Add PackageKit-zypp-avoid-statuReset.patch: zypp: Avoid
  statuReset() on locked packages
  (gh#PackageKit/PackageKit/commit/dd1964255, bsc#1199895).
- Add PackageKit-zypp-disable-upgrade-system-in-sle.patch: zypp:
  Disable upgrade-system support in SLE
  (gh#PackageKit/PackageKit/commit/0fcd820c2).
- Add PackageKit-zypp-restore-pool-status-after-simulating-update.patch:
  zypp: restore pool status after simulating an update
  (gh#PackageKit/PackageKit/commit/2b61a6649, bsc#1199895).
- Add PackageKit-zypp-fix-is-tumbleweed-check.patch: zypp: build
  the pool before calling is_tumbleweed()
  (gh#PackageKit/PackageKit/commit/146890153).
- Add PackageKit-zypp-update-libzypp-dependency-version.patch:
  zypp: update libzypp dependency version
  (gh#PackageKit/PackageKit/commit/58c7c0285, bsc#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1662120000">- Add PackageKit-zypp-dont-refresh-before-searching.patch:
  zypp: Don't refresh repos before searching
  (gh#PackageKit/PackageKit/commit/58c7c0285, bsc#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1664193600">- Add PackageKit-zypp-dont-remove-locked-packages.patch: zypp:
  Check if packages are locked before removing
  (gh#PackageKit/PackageKit/commit/8649a07bc, bsc#1199895).
- Add PackageKit-zypp-add-repo-in-packageid.patch: zypp: add
  repository data in package id
  (gh#PackageKit/PackageKit/commit/8eb2ef0ae, bsc#1202585).
- Remove PackageKit-zypp-locked-packages.patch: reverted upstream
  (gh#PackageKit/PackageKit/commit/ed3e38043).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1673006400">- Add PackageKit-zypp-fix-ambiguous-filesystem-reference.patch:
  zypp: Fix ambiguous reference to 'filesystem' class
  (gh#PackageKit/PackageKit/commit/bb1409a71, bsc#1206687).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678708800">- Add PackageKit-fix-pkcon-permission.patch: trivial: Drop
  unnecessary x permission
  (gh#PackageKit/PackageKit/commit/47b7f97bc, bsc#1209138)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1689595200">- Add PackageKit-dynamic-export.patch: fix loading of modules when
  built using glib 2.70 (boo#1213309).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1699531200">- Update to version 1.2.8:
  + Libraries:
  - offline-updates:
    . Make package update list deduplication more efficient.
    . Add only one entry per package to 'offline-update-competed'
    file.
  - PkClient: Replace the GSimpleAsyncResult with the GTask API.
  - pk-client:
    . Fix use-before-set of PkProgress on cancellation.
    . Move cancellable disconnect to dispose.
    . Rework refcounting for PkClientState.
  + Backends: Changes to apt, dnf, PiSi and BSD backends.
- Changes from version 1.2.7:
  + New Features:
  - pkclient: Add an option to count download size with
    dependencies.
  - pk-transaction: Add support for getting the RemainingTime
    property.
  + Backends:
  - zypp: Fix ambiguous reference to 'filesystem' class.
  - Changes to dnf, apt, alpm backends.
- Changes from version 1.2.6:
  + New Features:
  - Expose transaction sender as read-only property on the bus.
  - pkmon: Display transaction sender binary name in log.
  - pk-transaction: Add Packages signal.
  - pk-transaction: Combine some D-Bus PropertiesChanged signal
    emissions.
  - pk-transaction: Add UpdateDetails signal.
  + Backends:
  - zypp:
    . implement upgrade-system method.
    . Clean up trailing whitespaces.
    . Avoid statuReset() on locked packages.
    . restore pool status after simulating an update.
    . Disable upgrade-system support in SLE.
    . build the pool before calling is_tumbleweed().
    . update libzypp dependency version.
    . Don't refresh repos before searching.
    . Check if packages are locked before removing.
    . add repository data in package id.
    . Remove trailing whitespace.
    + Changes to alpm, aptcc, apt, and nix backends.
- Rebase patches:
  + PackageKit-dnf-Add-support-for-AppStream-repodata-basenames-use.patch
  + PackageKit-dynamic-export.patch
  + PackageKit-zypp-disable-upgrade-system-in-sle.patch
- Drop upstream fixed patches:
  + PackageKit-zypp-add-repo-in-packageid.patch
  + PackageKit-zypp-add-upgrade-system.patch
  + PackageKit-zypp-avoid-statuReset.patch
  + PackageKit-zypp-dont-refresh-before-searching.patch
  + PackageKit-zypp-dont-remove-locked-packages.patch
  + PackageKit-zypp-fix-ambiguous-filesystem-reference.patch
  + PackageKit-zypp-fix-is-tumbleweed-check.patch
  + PackageKit-zypp-restore-pool-status-after-simulating-update.patch
  + PackageKit-zypp-update-libzypp-dependency-version.patch</changelog>
  <changelog author="Alynx Zhou &lt;alynx.zhou@suse.com&gt;" date="1704196800">- Add PackageKit-find-python-3-6.patch: Specify the Python version
  we need to build this package.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1709640000">- Drop baselibs.conf: the -32bit packages are no longer needed and
  have not been part of Tumbleweed for a while already (build for
  i586 only enabled in LegacyX86).</changelog>
  <changelog author="Alynx Zhou &lt;alynx.zhou@suse.com&gt;" date="1723550400">- Add PackageKit-mark-as-compulsory.patch: Prevent PackageKit from
  user uninstallable for most desktops (bsc#1226269).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1726142400">- Add PackageKit-zypp-dont-install-updateCandidateObj.patch:
  zypp: Mark the correct packages to-be-installed (bsc#1227389,
  gh#PackageKit/PackageKit/commit/209aa6295).</changelog>
</package>
<package pkgid="c7e21ad95c9d246589fdf9b32f2be42de12ed0130e798bc6d3bed384f857602a4cd9e116eb2eb65fc5982ba06e81ad3489773b87613531a478e9509497e75e62" name="PackageKit-backend-dnf" arch="x86_64">
  <version epoch="0" ver="1.2.8" rel="6.1"/>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1636113600">- Update to version 1.2.4:
  + Libraries:
  - Add specific error code when user declined interaction
  - Avoid spurious GObject::notify signal emissions
  - Correct 'cancellable' use in pk_client_repair_system_async()
  - Fix a leak on calling set_locale() a second time
  - Fix a possible use-after-free under pk_client_cancel_cb()
  - Improve thread safety on an operation cancellation
  + Backends:
  - dnf:
    . Read update information also when getting list of updates
    . Honor install_weak_deps=False if it is there
    . Use 'hy_query_get_advisory_pkgs', if available
  + New Features:
  - PkDetails: Add 'download-size' property
  - PkPackage: Add update severity property
  + Bugfixes:
  - Let the finish understand the 'cancelled' exit code
  - Make backends that use pk-backend-spawn work (#477)
  - Only set polkit interactive flag if method call has too
- Changes from version 1.2.3:
  + Backends:
  - alpm:
    . Add post transaction hook
    . Rename errno to alpm_err to avoid name clashes
  - aptcc: Auto-remove old kernels, unless configured otherwise
  - dnf: Add support for coercing upgrade to distupgrade
  - zypp:
    . Make sure pool is initialized at the beginning of some
    methods
    . Reset update mode after getting updates
  + Bugfixes:
  - Append to cron log instead of overwriting it
  - Cancel a transaction if calling Cancel fails or the daemon
    disappears
  - Do not crash when calling pk_dbus_get_uid() before D-Bus is
    setup
  - Fix all compiler warnings
  - Fix multilib conflicts in generated pk-enum-types.h
  - Free scheduler array correctly again
  - Remove large transaction size sanity check
- Drop patches fixed upstream:
  + PackageKit-zypp-cleanup-tmp-files.patch
  + PackageKit-zypp-reset-update-mode-after-get-updates.patch
  + PackageKit-dnf-Add-support-for-coercing-upgrade-to-distupgrade.patch
  + PackageKit-zypp-initialize-pool.patch
  + PackageKit-remove-transaction-size-limit.patch
  + PackageKit-cancel-transaction-if-daemon-disappears.patch
  + PackageKit-dnf-ignore-weak-deps.patch
- Add 505.patch: pk-offline: Add flags to D-Bus invoking methods.
  That's currently to be able to set whether the method should be
  interactive or not. The old functions call the methods as
  non-interactive.</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1636113601">- Add PackageKit-zypp-c++17.patch: Fix build failure when building
  with libzypp &gt; 17.28.5 and gcc &lt; 11
  (gh#hughsie/PackageKit/commit/1a6bb6ae6, bsc#1192349).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1637064000">- Rewrite prep phase to not use autopatch -M: SLE15/Leap15's RPM
  version does not support that syntax yet.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1637064001">- Apply all patches unconditonally: PackageKit-zypp-c++17.patch is
  merged in upstream git and thus does not justify to be
  conditionally applied.
- Switching back to autosetup, as this works without conditional
  patches.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1653048000">- Update to version 1.2.5:
  + Backends:
  - dnf:
    . Add support for autoremove flag when removing packages.
    . Searches by name and package details should be case
    insensitive.
    . Update appstream xml files if dnf_sack_add_repos() does
    the download.
  - zypp:
    . Add -std=c++1z cpp flags.
    . Fix crash when search string is NULL.
    . Fix package installation using undefined data.
  - Changes to alpm, apttcc, nix, and slack.
  + Bugfixes:
  - Install offline-update enablement symlink if Meson is new
    enough.
  - Move Wants= line for network-online.target.
  - Add flags to D-Bus offline invoking methods.
  - Properly handle allow-reinstall flag for installations.
  - Provide better error message if trying to install an
    installed package.
  - Wait until online to activate systemd service.
- Drop 505.patch, PackageKit-zypp-c++17.patch, and
  PackageKit-zypp-fix-crash-with-empty-search-string.patch: fixed
  upstream.</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1653566400">- Add PackageKit-zypp-locked-packages.patch: zypp: ignore locked
  packages(gh#hughsie/PackageKit#543, boo#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1656676800">- Add PackageKit-zypp-add-upgrade-system.patch: implement
  upgrade-system method(gh#hughsie/PackageKit/commit/930dd201b).</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1657368000">- Move the dbus-1 system.d file to /usr (bsc#1201347)</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1659528000">- Modified PackageKit.spec: bump libzypp dependency version to
  17.31.0.
- Add PackageKit-zypp-avoid-statuReset.patch: zypp: Avoid
  statuReset() on locked packages
  (gh#PackageKit/PackageKit/commit/dd1964255, bsc#1199895).
- Add PackageKit-zypp-disable-upgrade-system-in-sle.patch: zypp:
  Disable upgrade-system support in SLE
  (gh#PackageKit/PackageKit/commit/0fcd820c2).
- Add PackageKit-zypp-restore-pool-status-after-simulating-update.patch:
  zypp: restore pool status after simulating an update
  (gh#PackageKit/PackageKit/commit/2b61a6649, bsc#1199895).
- Add PackageKit-zypp-fix-is-tumbleweed-check.patch: zypp: build
  the pool before calling is_tumbleweed()
  (gh#PackageKit/PackageKit/commit/146890153).
- Add PackageKit-zypp-update-libzypp-dependency-version.patch:
  zypp: update libzypp dependency version
  (gh#PackageKit/PackageKit/commit/58c7c0285, bsc#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1662120000">- Add PackageKit-zypp-dont-refresh-before-searching.patch:
  zypp: Don't refresh repos before searching
  (gh#PackageKit/PackageKit/commit/58c7c0285, bsc#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1664193600">- Add PackageKit-zypp-dont-remove-locked-packages.patch: zypp:
  Check if packages are locked before removing
  (gh#PackageKit/PackageKit/commit/8649a07bc, bsc#1199895).
- Add PackageKit-zypp-add-repo-in-packageid.patch: zypp: add
  repository data in package id
  (gh#PackageKit/PackageKit/commit/8eb2ef0ae, bsc#1202585).
- Remove PackageKit-zypp-locked-packages.patch: reverted upstream
  (gh#PackageKit/PackageKit/commit/ed3e38043).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1673006400">- Add PackageKit-zypp-fix-ambiguous-filesystem-reference.patch:
  zypp: Fix ambiguous reference to 'filesystem' class
  (gh#PackageKit/PackageKit/commit/bb1409a71, bsc#1206687).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678708800">- Add PackageKit-fix-pkcon-permission.patch: trivial: Drop
  unnecessary x permission
  (gh#PackageKit/PackageKit/commit/47b7f97bc, bsc#1209138)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1689595200">- Add PackageKit-dynamic-export.patch: fix loading of modules when
  built using glib 2.70 (boo#1213309).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1699531200">- Update to version 1.2.8:
  + Libraries:
  - offline-updates:
    . Make package update list deduplication more efficient.
    . Add only one entry per package to 'offline-update-competed'
    file.
  - PkClient: Replace the GSimpleAsyncResult with the GTask API.
  - pk-client:
    . Fix use-before-set of PkProgress on cancellation.
    . Move cancellable disconnect to dispose.
    . Rework refcounting for PkClientState.
  + Backends: Changes to apt, dnf, PiSi and BSD backends.
- Changes from version 1.2.7:
  + New Features:
  - pkclient: Add an option to count download size with
    dependencies.
  - pk-transaction: Add support for getting the RemainingTime
    property.
  + Backends:
  - zypp: Fix ambiguous reference to 'filesystem' class.
  - Changes to dnf, apt, alpm backends.
- Changes from version 1.2.6:
  + New Features:
  - Expose transaction sender as read-only property on the bus.
  - pkmon: Display transaction sender binary name in log.
  - pk-transaction: Add Packages signal.
  - pk-transaction: Combine some D-Bus PropertiesChanged signal
    emissions.
  - pk-transaction: Add UpdateDetails signal.
  + Backends:
  - zypp:
    . implement upgrade-system method.
    . Clean up trailing whitespaces.
    . Avoid statuReset() on locked packages.
    . restore pool status after simulating an update.
    . Disable upgrade-system support in SLE.
    . build the pool before calling is_tumbleweed().
    . update libzypp dependency version.
    . Don't refresh repos before searching.
    . Check if packages are locked before removing.
    . add repository data in package id.
    . Remove trailing whitespace.
    + Changes to alpm, aptcc, apt, and nix backends.
- Rebase patches:
  + PackageKit-dnf-Add-support-for-AppStream-repodata-basenames-use.patch
  + PackageKit-dynamic-export.patch
  + PackageKit-zypp-disable-upgrade-system-in-sle.patch
- Drop upstream fixed patches:
  + PackageKit-zypp-add-repo-in-packageid.patch
  + PackageKit-zypp-add-upgrade-system.patch
  + PackageKit-zypp-avoid-statuReset.patch
  + PackageKit-zypp-dont-refresh-before-searching.patch
  + PackageKit-zypp-dont-remove-locked-packages.patch
  + PackageKit-zypp-fix-ambiguous-filesystem-reference.patch
  + PackageKit-zypp-fix-is-tumbleweed-check.patch
  + PackageKit-zypp-restore-pool-status-after-simulating-update.patch
  + PackageKit-zypp-update-libzypp-dependency-version.patch</changelog>
  <changelog author="Alynx Zhou &lt;alynx.zhou@suse.com&gt;" date="1704196800">- Add PackageKit-find-python-3-6.patch: Specify the Python version
  we need to build this package.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1709640000">- Drop baselibs.conf: the -32bit packages are no longer needed and
  have not been part of Tumbleweed for a while already (build for
  i586 only enabled in LegacyX86).</changelog>
  <changelog author="Alynx Zhou &lt;alynx.zhou@suse.com&gt;" date="1723550400">- Add PackageKit-mark-as-compulsory.patch: Prevent PackageKit from
  user uninstallable for most desktops (bsc#1226269).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1726142400">- Add PackageKit-zypp-dont-install-updateCandidateObj.patch:
  zypp: Mark the correct packages to-be-installed (bsc#1227389,
  gh#PackageKit/PackageKit/commit/209aa6295).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1728993600">- Drop rcFOO symlinks (PED-266)
- Drop usage of update-alternatives, but simplify installation of
  /usr/libexec/gst-install-plugins-helper as a direct symlink to
  pk-gstreamer-install.</changelog>
</package>
<package pkgid="7af375a4a5a58fca017fba722290791e33703bb6fdd97fbc175d2a4b7b73a98eb8ee51249665db148184feff7e350ae5fcf2ab802dccb162a099334b1d72221a" name="PackageKit-backend-dnf-debuginfo" arch="x86_64">
  <version epoch="0" ver="1.2.8" rel="4.1"/>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1629460800">- Add PackageKit-zypp-fix-crash-with-empty-search-string.patch:
  zypp: Fix crash when search string is NULL (bsc#1179287,
  gh#hughsie/PackageKit/commit#21ccf49).</changelog>
  <changelog author="Stanislav Brabec &lt;sbrabec@suse.com&gt;" date="1631793600">- Remove obsolete translation-update-upstream support
  (jsc#SLE-21105).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1636113600">- Update to version 1.2.4:
  + Libraries:
  - Add specific error code when user declined interaction
  - Avoid spurious GObject::notify signal emissions
  - Correct 'cancellable' use in pk_client_repair_system_async()
  - Fix a leak on calling set_locale() a second time
  - Fix a possible use-after-free under pk_client_cancel_cb()
  - Improve thread safety on an operation cancellation
  + Backends:
  - dnf:
    . Read update information also when getting list of updates
    . Honor install_weak_deps=False if it is there
    . Use 'hy_query_get_advisory_pkgs', if available
  + New Features:
  - PkDetails: Add 'download-size' property
  - PkPackage: Add update severity property
  + Bugfixes:
  - Let the finish understand the 'cancelled' exit code
  - Make backends that use pk-backend-spawn work (#477)
  - Only set polkit interactive flag if method call has too
- Changes from version 1.2.3:
  + Backends:
  - alpm:
    . Add post transaction hook
    . Rename errno to alpm_err to avoid name clashes
  - aptcc: Auto-remove old kernels, unless configured otherwise
  - dnf: Add support for coercing upgrade to distupgrade
  - zypp:
    . Make sure pool is initialized at the beginning of some
    methods
    . Reset update mode after getting updates
  + Bugfixes:
  - Append to cron log instead of overwriting it
  - Cancel a transaction if calling Cancel fails or the daemon
    disappears
  - Do not crash when calling pk_dbus_get_uid() before D-Bus is
    setup
  - Fix all compiler warnings
  - Fix multilib conflicts in generated pk-enum-types.h
  - Free scheduler array correctly again
  - Remove large transaction size sanity check
- Drop patches fixed upstream:
  + PackageKit-zypp-cleanup-tmp-files.patch
  + PackageKit-zypp-reset-update-mode-after-get-updates.patch
  + PackageKit-dnf-Add-support-for-coercing-upgrade-to-distupgrade.patch
  + PackageKit-zypp-initialize-pool.patch
  + PackageKit-remove-transaction-size-limit.patch
  + PackageKit-cancel-transaction-if-daemon-disappears.patch
  + PackageKit-dnf-ignore-weak-deps.patch
- Add 505.patch: pk-offline: Add flags to D-Bus invoking methods.
  That's currently to be able to set whether the method should be
  interactive or not. The old functions call the methods as
  non-interactive.</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1636113601">- Add PackageKit-zypp-c++17.patch: Fix build failure when building
  with libzypp &gt; 17.28.5 and gcc &lt; 11
  (gh#hughsie/PackageKit/commit/1a6bb6ae6, bsc#1192349).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1637064000">- Rewrite prep phase to not use autopatch -M: SLE15/Leap15's RPM
  version does not support that syntax yet.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1637064001">- Apply all patches unconditonally: PackageKit-zypp-c++17.patch is
  merged in upstream git and thus does not justify to be
  conditionally applied.
- Switching back to autosetup, as this works without conditional
  patches.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1653048000">- Update to version 1.2.5:
  + Backends:
  - dnf:
    . Add support for autoremove flag when removing packages.
    . Searches by name and package details should be case
    insensitive.
    . Update appstream xml files if dnf_sack_add_repos() does
    the download.
  - zypp:
    . Add -std=c++1z cpp flags.
    . Fix crash when search string is NULL.
    . Fix package installation using undefined data.
  - Changes to alpm, apttcc, nix, and slack.
  + Bugfixes:
  - Install offline-update enablement symlink if Meson is new
    enough.
  - Move Wants= line for network-online.target.
  - Add flags to D-Bus offline invoking methods.
  - Properly handle allow-reinstall flag for installations.
  - Provide better error message if trying to install an
    installed package.
  - Wait until online to activate systemd service.
- Drop 505.patch, PackageKit-zypp-c++17.patch, and
  PackageKit-zypp-fix-crash-with-empty-search-string.patch: fixed
  upstream.</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1653566400">- Add PackageKit-zypp-locked-packages.patch: zypp: ignore locked
  packages(gh#hughsie/PackageKit#543, boo#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1656676800">- Add PackageKit-zypp-add-upgrade-system.patch: implement
  upgrade-system method(gh#hughsie/PackageKit/commit/930dd201b).</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1657368000">- Move the dbus-1 system.d file to /usr (bsc#1201347)</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1659528000">- Modified PackageKit.spec: bump libzypp dependency version to
  17.31.0.
- Add PackageKit-zypp-avoid-statuReset.patch: zypp: Avoid
  statuReset() on locked packages
  (gh#PackageKit/PackageKit/commit/dd1964255, bsc#1199895).
- Add PackageKit-zypp-disable-upgrade-system-in-sle.patch: zypp:
  Disable upgrade-system support in SLE
  (gh#PackageKit/PackageKit/commit/0fcd820c2).
- Add PackageKit-zypp-restore-pool-status-after-simulating-update.patch:
  zypp: restore pool status after simulating an update
  (gh#PackageKit/PackageKit/commit/2b61a6649, bsc#1199895).
- Add PackageKit-zypp-fix-is-tumbleweed-check.patch: zypp: build
  the pool before calling is_tumbleweed()
  (gh#PackageKit/PackageKit/commit/146890153).
- Add PackageKit-zypp-update-libzypp-dependency-version.patch:
  zypp: update libzypp dependency version
  (gh#PackageKit/PackageKit/commit/58c7c0285, bsc#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1662120000">- Add PackageKit-zypp-dont-refresh-before-searching.patch:
  zypp: Don't refresh repos before searching
  (gh#PackageKit/PackageKit/commit/58c7c0285, bsc#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1664193600">- Add PackageKit-zypp-dont-remove-locked-packages.patch: zypp:
  Check if packages are locked before removing
  (gh#PackageKit/PackageKit/commit/8649a07bc, bsc#1199895).
- Add PackageKit-zypp-add-repo-in-packageid.patch: zypp: add
  repository data in package id
  (gh#PackageKit/PackageKit/commit/8eb2ef0ae, bsc#1202585).
- Remove PackageKit-zypp-locked-packages.patch: reverted upstream
  (gh#PackageKit/PackageKit/commit/ed3e38043).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1673006400">- Add PackageKit-zypp-fix-ambiguous-filesystem-reference.patch:
  zypp: Fix ambiguous reference to 'filesystem' class
  (gh#PackageKit/PackageKit/commit/bb1409a71, bsc#1206687).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678708800">- Add PackageKit-fix-pkcon-permission.patch: trivial: Drop
  unnecessary x permission
  (gh#PackageKit/PackageKit/commit/47b7f97bc, bsc#1209138)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1689595200">- Add PackageKit-dynamic-export.patch: fix loading of modules when
  built using glib 2.70 (boo#1213309).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1699531200">- Update to version 1.2.8:
  + Libraries:
  - offline-updates:
    . Make package update list deduplication more efficient.
    . Add only one entry per package to 'offline-update-competed'
    file.
  - PkClient: Replace the GSimpleAsyncResult with the GTask API.
  - pk-client:
    . Fix use-before-set of PkProgress on cancellation.
    . Move cancellable disconnect to dispose.
    . Rework refcounting for PkClientState.
  + Backends: Changes to apt, dnf, PiSi and BSD backends.
- Changes from version 1.2.7:
  + New Features:
  - pkclient: Add an option to count download size with
    dependencies.
  - pk-transaction: Add support for getting the RemainingTime
    property.
  + Backends:
  - zypp: Fix ambiguous reference to 'filesystem' class.
  - Changes to dnf, apt, alpm backends.
- Changes from version 1.2.6:
  + New Features:
  - Expose transaction sender as read-only property on the bus.
  - pkmon: Display transaction sender binary name in log.
  - pk-transaction: Add Packages signal.
  - pk-transaction: Combine some D-Bus PropertiesChanged signal
    emissions.
  - pk-transaction: Add UpdateDetails signal.
  + Backends:
  - zypp:
    . implement upgrade-system method.
    . Clean up trailing whitespaces.
    . Avoid statuReset() on locked packages.
    . restore pool status after simulating an update.
    . Disable upgrade-system support in SLE.
    . build the pool before calling is_tumbleweed().
    . update libzypp dependency version.
    . Don't refresh repos before searching.
    . Check if packages are locked before removing.
    . add repository data in package id.
    . Remove trailing whitespace.
    + Changes to alpm, aptcc, apt, and nix backends.
- Rebase patches:
  + PackageKit-dnf-Add-support-for-AppStream-repodata-basenames-use.patch
  + PackageKit-dynamic-export.patch
  + PackageKit-zypp-disable-upgrade-system-in-sle.patch
- Drop upstream fixed patches:
  + PackageKit-zypp-add-repo-in-packageid.patch
  + PackageKit-zypp-add-upgrade-system.patch
  + PackageKit-zypp-avoid-statuReset.patch
  + PackageKit-zypp-dont-refresh-before-searching.patch
  + PackageKit-zypp-dont-remove-locked-packages.patch
  + PackageKit-zypp-fix-ambiguous-filesystem-reference.patch
  + PackageKit-zypp-fix-is-tumbleweed-check.patch
  + PackageKit-zypp-restore-pool-status-after-simulating-update.patch
  + PackageKit-zypp-update-libzypp-dependency-version.patch</changelog>
  <changelog author="Alynx Zhou &lt;alynx.zhou@suse.com&gt;" date="1704196800">- Add PackageKit-find-python-3-6.patch: Specify the Python version
  we need to build this package.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1709640000">- Drop baselibs.conf: the -32bit packages are no longer needed and
  have not been part of Tumbleweed for a while already (build for
  i586 only enabled in LegacyX86).</changelog>
  <changelog author="Alynx Zhou &lt;alynx.zhou@suse.com&gt;" date="1723550400">- Add PackageKit-mark-as-compulsory.patch: Prevent PackageKit from
  user uninstallable for most desktops (bsc#1226269).</changelog>
</package>
<package pkgid="8f841f75dc7ff6867cc90869b57f140aeba0c2ded0a887103d40fc9446280a6fb3d49dc19c8c547684217c500756b08d196feae948e13f44d88dfee3ff0e3bcb" name="PackageKit-backend-dnf-debuginfo" arch="x86_64">
  <version epoch="0" ver="1.2.8" rel="5.0.2.1.sr20240901"/>
  <changelog author="Stanislav Brabec &lt;sbrabec@suse.com&gt;" date="1631793600">- Remove obsolete translation-update-upstream support
  (jsc#SLE-21105).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1636113600">- Update to version 1.2.4:
  + Libraries:
  - Add specific error code when user declined interaction
  - Avoid spurious GObject::notify signal emissions
  - Correct 'cancellable' use in pk_client_repair_system_async()
  - Fix a leak on calling set_locale() a second time
  - Fix a possible use-after-free under pk_client_cancel_cb()
  - Improve thread safety on an operation cancellation
  + Backends:
  - dnf:
    . Read update information also when getting list of updates
    . Honor install_weak_deps=False if it is there
    . Use 'hy_query_get_advisory_pkgs', if available
  + New Features:
  - PkDetails: Add 'download-size' property
  - PkPackage: Add update severity property
  + Bugfixes:
  - Let the finish understand the 'cancelled' exit code
  - Make backends that use pk-backend-spawn work (#477)
  - Only set polkit interactive flag if method call has too
- Changes from version 1.2.3:
  + Backends:
  - alpm:
    . Add post transaction hook
    . Rename errno to alpm_err to avoid name clashes
  - aptcc: Auto-remove old kernels, unless configured otherwise
  - dnf: Add support for coercing upgrade to distupgrade
  - zypp:
    . Make sure pool is initialized at the beginning of some
    methods
    . Reset update mode after getting updates
  + Bugfixes:
  - Append to cron log instead of overwriting it
  - Cancel a transaction if calling Cancel fails or the daemon
    disappears
  - Do not crash when calling pk_dbus_get_uid() before D-Bus is
    setup
  - Fix all compiler warnings
  - Fix multilib conflicts in generated pk-enum-types.h
  - Free scheduler array correctly again
  - Remove large transaction size sanity check
- Drop patches fixed upstream:
  + PackageKit-zypp-cleanup-tmp-files.patch
  + PackageKit-zypp-reset-update-mode-after-get-updates.patch
  + PackageKit-dnf-Add-support-for-coercing-upgrade-to-distupgrade.patch
  + PackageKit-zypp-initialize-pool.patch
  + PackageKit-remove-transaction-size-limit.patch
  + PackageKit-cancel-transaction-if-daemon-disappears.patch
  + PackageKit-dnf-ignore-weak-deps.patch
- Add 505.patch: pk-offline: Add flags to D-Bus invoking methods.
  That's currently to be able to set whether the method should be
  interactive or not. The old functions call the methods as
  non-interactive.</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1636113601">- Add PackageKit-zypp-c++17.patch: Fix build failure when building
  with libzypp &gt; 17.28.5 and gcc &lt; 11
  (gh#hughsie/PackageKit/commit/1a6bb6ae6, bsc#1192349).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1637064000">- Rewrite prep phase to not use autopatch -M: SLE15/Leap15's RPM
  version does not support that syntax yet.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1637064001">- Apply all patches unconditonally: PackageKit-zypp-c++17.patch is
  merged in upstream git and thus does not justify to be
  conditionally applied.
- Switching back to autosetup, as this works without conditional
  patches.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1653048000">- Update to version 1.2.5:
  + Backends:
  - dnf:
    . Add support for autoremove flag when removing packages.
    . Searches by name and package details should be case
    insensitive.
    . Update appstream xml files if dnf_sack_add_repos() does
    the download.
  - zypp:
    . Add -std=c++1z cpp flags.
    . Fix crash when search string is NULL.
    . Fix package installation using undefined data.
  - Changes to alpm, apttcc, nix, and slack.
  + Bugfixes:
  - Install offline-update enablement symlink if Meson is new
    enough.
  - Move Wants= line for network-online.target.
  - Add flags to D-Bus offline invoking methods.
  - Properly handle allow-reinstall flag for installations.
  - Provide better error message if trying to install an
    installed package.
  - Wait until online to activate systemd service.
- Drop 505.patch, PackageKit-zypp-c++17.patch, and
  PackageKit-zypp-fix-crash-with-empty-search-string.patch: fixed
  upstream.</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1653566400">- Add PackageKit-zypp-locked-packages.patch: zypp: ignore locked
  packages(gh#hughsie/PackageKit#543, boo#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1656676800">- Add PackageKit-zypp-add-upgrade-system.patch: implement
  upgrade-system method(gh#hughsie/PackageKit/commit/930dd201b).</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1657368000">- Move the dbus-1 system.d file to /usr (bsc#1201347)</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1659528000">- Modified PackageKit.spec: bump libzypp dependency version to
  17.31.0.
- Add PackageKit-zypp-avoid-statuReset.patch: zypp: Avoid
  statuReset() on locked packages
  (gh#PackageKit/PackageKit/commit/dd1964255, bsc#1199895).
- Add PackageKit-zypp-disable-upgrade-system-in-sle.patch: zypp:
  Disable upgrade-system support in SLE
  (gh#PackageKit/PackageKit/commit/0fcd820c2).
- Add PackageKit-zypp-restore-pool-status-after-simulating-update.patch:
  zypp: restore pool status after simulating an update
  (gh#PackageKit/PackageKit/commit/2b61a6649, bsc#1199895).
- Add PackageKit-zypp-fix-is-tumbleweed-check.patch: zypp: build
  the pool before calling is_tumbleweed()
  (gh#PackageKit/PackageKit/commit/146890153).
- Add PackageKit-zypp-update-libzypp-dependency-version.patch:
  zypp: update libzypp dependency version
  (gh#PackageKit/PackageKit/commit/58c7c0285, bsc#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1662120000">- Add PackageKit-zypp-dont-refresh-before-searching.patch:
  zypp: Don't refresh repos before searching
  (gh#PackageKit/PackageKit/commit/58c7c0285, bsc#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1664193600">- Add PackageKit-zypp-dont-remove-locked-packages.patch: zypp:
  Check if packages are locked before removing
  (gh#PackageKit/PackageKit/commit/8649a07bc, bsc#1199895).
- Add PackageKit-zypp-add-repo-in-packageid.patch: zypp: add
  repository data in package id
  (gh#PackageKit/PackageKit/commit/8eb2ef0ae, bsc#1202585).
- Remove PackageKit-zypp-locked-packages.patch: reverted upstream
  (gh#PackageKit/PackageKit/commit/ed3e38043).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1673006400">- Add PackageKit-zypp-fix-ambiguous-filesystem-reference.patch:
  zypp: Fix ambiguous reference to 'filesystem' class
  (gh#PackageKit/PackageKit/commit/bb1409a71, bsc#1206687).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678708800">- Add PackageKit-fix-pkcon-permission.patch: trivial: Drop
  unnecessary x permission
  (gh#PackageKit/PackageKit/commit/47b7f97bc, bsc#1209138)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1689595200">- Add PackageKit-dynamic-export.patch: fix loading of modules when
  built using glib 2.70 (boo#1213309).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1699531200">- Update to version 1.2.8:
  + Libraries:
  - offline-updates:
    . Make package update list deduplication more efficient.
    . Add only one entry per package to 'offline-update-competed'
    file.
  - PkClient: Replace the GSimpleAsyncResult with the GTask API.
  - pk-client:
    . Fix use-before-set of PkProgress on cancellation.
    . Move cancellable disconnect to dispose.
    . Rework refcounting for PkClientState.
  + Backends: Changes to apt, dnf, PiSi and BSD backends.
- Changes from version 1.2.7:
  + New Features:
  - pkclient: Add an option to count download size with
    dependencies.
  - pk-transaction: Add support for getting the RemainingTime
    property.
  + Backends:
  - zypp: Fix ambiguous reference to 'filesystem' class.
  - Changes to dnf, apt, alpm backends.
- Changes from version 1.2.6:
  + New Features:
  - Expose transaction sender as read-only property on the bus.
  - pkmon: Display transaction sender binary name in log.
  - pk-transaction: Add Packages signal.
  - pk-transaction: Combine some D-Bus PropertiesChanged signal
    emissions.
  - pk-transaction: Add UpdateDetails signal.
  + Backends:
  - zypp:
    . implement upgrade-system method.
    . Clean up trailing whitespaces.
    . Avoid statuReset() on locked packages.
    . restore pool status after simulating an update.
    . Disable upgrade-system support in SLE.
    . build the pool before calling is_tumbleweed().
    . update libzypp dependency version.
    . Don't refresh repos before searching.
    . Check if packages are locked before removing.
    . add repository data in package id.
    . Remove trailing whitespace.
    + Changes to alpm, aptcc, apt, and nix backends.
- Rebase patches:
  + PackageKit-dnf-Add-support-for-AppStream-repodata-basenames-use.patch
  + PackageKit-dynamic-export.patch
  + PackageKit-zypp-disable-upgrade-system-in-sle.patch
- Drop upstream fixed patches:
  + PackageKit-zypp-add-repo-in-packageid.patch
  + PackageKit-zypp-add-upgrade-system.patch
  + PackageKit-zypp-avoid-statuReset.patch
  + PackageKit-zypp-dont-refresh-before-searching.patch
  + PackageKit-zypp-dont-remove-locked-packages.patch
  + PackageKit-zypp-fix-ambiguous-filesystem-reference.patch
  + PackageKit-zypp-fix-is-tumbleweed-check.patch
  + PackageKit-zypp-restore-pool-status-after-simulating-update.patch
  + PackageKit-zypp-update-libzypp-dependency-version.patch</changelog>
  <changelog author="Alynx Zhou &lt;alynx.zhou@suse.com&gt;" date="1704196800">- Add PackageKit-find-python-3-6.patch: Specify the Python version
  we need to build this package.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1709640000">- Drop baselibs.conf: the -32bit packages are no longer needed and
  have not been part of Tumbleweed for a while already (build for
  i586 only enabled in LegacyX86).</changelog>
  <changelog author="Alynx Zhou &lt;alynx.zhou@suse.com&gt;" date="1723550400">- Add PackageKit-mark-as-compulsory.patch: Prevent PackageKit from
  user uninstallable for most desktops (bsc#1226269).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1726142400">- Add PackageKit-zypp-dont-install-updateCandidateObj.patch:
  zypp: Mark the correct packages to-be-installed (bsc#1227389,
  gh#PackageKit/PackageKit/commit/209aa6295).</changelog>
</package>
<package pkgid="72af30d2ec4c2facbaa93f10d86fe1a2e64da82de2c2c089cfe24faabb2784cbd66a27aba4afa2f9fea2d3b8308ab005197af6ba0dc4ed7776aa3a146bfe41ea" name="PackageKit-backend-dnf-debuginfo" arch="x86_64">
  <version epoch="0" ver="1.2.8" rel="5.1"/>
  <changelog author="Stanislav Brabec &lt;sbrabec@suse.com&gt;" date="1631793600">- Remove obsolete translation-update-upstream support
  (jsc#SLE-21105).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1636113600">- Update to version 1.2.4:
  + Libraries:
  - Add specific error code when user declined interaction
  - Avoid spurious GObject::notify signal emissions
  - Correct 'cancellable' use in pk_client_repair_system_async()
  - Fix a leak on calling set_locale() a second time
  - Fix a possible use-after-free under pk_client_cancel_cb()
  - Improve thread safety on an operation cancellation
  + Backends:
  - dnf:
    . Read update information also when getting list of updates
    . Honor install_weak_deps=False if it is there
    . Use 'hy_query_get_advisory_pkgs', if available
  + New Features:
  - PkDetails: Add 'download-size' property
  - PkPackage: Add update severity property
  + Bugfixes:
  - Let the finish understand the 'cancelled' exit code
  - Make backends that use pk-backend-spawn work (#477)
  - Only set polkit interactive flag if method call has too
- Changes from version 1.2.3:
  + Backends:
  - alpm:
    . Add post transaction hook
    . Rename errno to alpm_err to avoid name clashes
  - aptcc: Auto-remove old kernels, unless configured otherwise
  - dnf: Add support for coercing upgrade to distupgrade
  - zypp:
    . Make sure pool is initialized at the beginning of some
    methods
    . Reset update mode after getting updates
  + Bugfixes:
  - Append to cron log instead of overwriting it
  - Cancel a transaction if calling Cancel fails or the daemon
    disappears
  - Do not crash when calling pk_dbus_get_uid() before D-Bus is
    setup
  - Fix all compiler warnings
  - Fix multilib conflicts in generated pk-enum-types.h
  - Free scheduler array correctly again
  - Remove large transaction size sanity check
- Drop patches fixed upstream:
  + PackageKit-zypp-cleanup-tmp-files.patch
  + PackageKit-zypp-reset-update-mode-after-get-updates.patch
  + PackageKit-dnf-Add-support-for-coercing-upgrade-to-distupgrade.patch
  + PackageKit-zypp-initialize-pool.patch
  + PackageKit-remove-transaction-size-limit.patch
  + PackageKit-cancel-transaction-if-daemon-disappears.patch
  + PackageKit-dnf-ignore-weak-deps.patch
- Add 505.patch: pk-offline: Add flags to D-Bus invoking methods.
  That's currently to be able to set whether the method should be
  interactive or not. The old functions call the methods as
  non-interactive.</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1636113601">- Add PackageKit-zypp-c++17.patch: Fix build failure when building
  with libzypp &gt; 17.28.5 and gcc &lt; 11
  (gh#hughsie/PackageKit/commit/1a6bb6ae6, bsc#1192349).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1637064000">- Rewrite prep phase to not use autopatch -M: SLE15/Leap15's RPM
  version does not support that syntax yet.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1637064001">- Apply all patches unconditonally: PackageKit-zypp-c++17.patch is
  merged in upstream git and thus does not justify to be
  conditionally applied.
- Switching back to autosetup, as this works without conditional
  patches.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1653048000">- Update to version 1.2.5:
  + Backends:
  - dnf:
    . Add support for autoremove flag when removing packages.
    . Searches by name and package details should be case
    insensitive.
    . Update appstream xml files if dnf_sack_add_repos() does
    the download.
  - zypp:
    . Add -std=c++1z cpp flags.
    . Fix crash when search string is NULL.
    . Fix package installation using undefined data.
  - Changes to alpm, apttcc, nix, and slack.
  + Bugfixes:
  - Install offline-update enablement symlink if Meson is new
    enough.
  - Move Wants= line for network-online.target.
  - Add flags to D-Bus offline invoking methods.
  - Properly handle allow-reinstall flag for installations.
  - Provide better error message if trying to install an
    installed package.
  - Wait until online to activate systemd service.
- Drop 505.patch, PackageKit-zypp-c++17.patch, and
  PackageKit-zypp-fix-crash-with-empty-search-string.patch: fixed
  upstream.</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1653566400">- Add PackageKit-zypp-locked-packages.patch: zypp: ignore locked
  packages(gh#hughsie/PackageKit#543, boo#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1656676800">- Add PackageKit-zypp-add-upgrade-system.patch: implement
  upgrade-system method(gh#hughsie/PackageKit/commit/930dd201b).</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1657368000">- Move the dbus-1 system.d file to /usr (bsc#1201347)</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1659528000">- Modified PackageKit.spec: bump libzypp dependency version to
  17.31.0.
- Add PackageKit-zypp-avoid-statuReset.patch: zypp: Avoid
  statuReset() on locked packages
  (gh#PackageKit/PackageKit/commit/dd1964255, bsc#1199895).
- Add PackageKit-zypp-disable-upgrade-system-in-sle.patch: zypp:
  Disable upgrade-system support in SLE
  (gh#PackageKit/PackageKit/commit/0fcd820c2).
- Add PackageKit-zypp-restore-pool-status-after-simulating-update.patch:
  zypp: restore pool status after simulating an update
  (gh#PackageKit/PackageKit/commit/2b61a6649, bsc#1199895).
- Add PackageKit-zypp-fix-is-tumbleweed-check.patch: zypp: build
  the pool before calling is_tumbleweed()
  (gh#PackageKit/PackageKit/commit/146890153).
- Add PackageKit-zypp-update-libzypp-dependency-version.patch:
  zypp: update libzypp dependency version
  (gh#PackageKit/PackageKit/commit/58c7c0285, bsc#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1662120000">- Add PackageKit-zypp-dont-refresh-before-searching.patch:
  zypp: Don't refresh repos before searching
  (gh#PackageKit/PackageKit/commit/58c7c0285, bsc#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1664193600">- Add PackageKit-zypp-dont-remove-locked-packages.patch: zypp:
  Check if packages are locked before removing
  (gh#PackageKit/PackageKit/commit/8649a07bc, bsc#1199895).
- Add PackageKit-zypp-add-repo-in-packageid.patch: zypp: add
  repository data in package id
  (gh#PackageKit/PackageKit/commit/8eb2ef0ae, bsc#1202585).
- Remove PackageKit-zypp-locked-packages.patch: reverted upstream
  (gh#PackageKit/PackageKit/commit/ed3e38043).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1673006400">- Add PackageKit-zypp-fix-ambiguous-filesystem-reference.patch:
  zypp: Fix ambiguous reference to 'filesystem' class
  (gh#PackageKit/PackageKit/commit/bb1409a71, bsc#1206687).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678708800">- Add PackageKit-fix-pkcon-permission.patch: trivial: Drop
  unnecessary x permission
  (gh#PackageKit/PackageKit/commit/47b7f97bc, bsc#1209138)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1689595200">- Add PackageKit-dynamic-export.patch: fix loading of modules when
  built using glib 2.70 (boo#1213309).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1699531200">- Update to version 1.2.8:
  + Libraries:
  - offline-updates:
    . Make package update list deduplication more efficient.
    . Add only one entry per package to 'offline-update-competed'
    file.
  - PkClient: Replace the GSimpleAsyncResult with the GTask API.
  - pk-client:
    . Fix use-before-set of PkProgress on cancellation.
    . Move cancellable disconnect to dispose.
    . Rework refcounting for PkClientState.
  + Backends: Changes to apt, dnf, PiSi and BSD backends.
- Changes from version 1.2.7:
  + New Features:
  - pkclient: Add an option to count download size with
    dependencies.
  - pk-transaction: Add support for getting the RemainingTime
    property.
  + Backends:
  - zypp: Fix ambiguous reference to 'filesystem' class.
  - Changes to dnf, apt, alpm backends.
- Changes from version 1.2.6:
  + New Features:
  - Expose transaction sender as read-only property on the bus.
  - pkmon: Display transaction sender binary name in log.
  - pk-transaction: Add Packages signal.
  - pk-transaction: Combine some D-Bus PropertiesChanged signal
    emissions.
  - pk-transaction: Add UpdateDetails signal.
  + Backends:
  - zypp:
    . implement upgrade-system method.
    . Clean up trailing whitespaces.
    . Avoid statuReset() on locked packages.
    . restore pool status after simulating an update.
    . Disable upgrade-system support in SLE.
    . build the pool before calling is_tumbleweed().
    . update libzypp dependency version.
    . Don't refresh repos before searching.
    . Check if packages are locked before removing.
    . add repository data in package id.
    . Remove trailing whitespace.
    + Changes to alpm, aptcc, apt, and nix backends.
- Rebase patches:
  + PackageKit-dnf-Add-support-for-AppStream-repodata-basenames-use.patch
  + PackageKit-dynamic-export.patch
  + PackageKit-zypp-disable-upgrade-system-in-sle.patch
- Drop upstream fixed patches:
  + PackageKit-zypp-add-repo-in-packageid.patch
  + PackageKit-zypp-add-upgrade-system.patch
  + PackageKit-zypp-avoid-statuReset.patch
  + PackageKit-zypp-dont-refresh-before-searching.patch
  + PackageKit-zypp-dont-remove-locked-packages.patch
  + PackageKit-zypp-fix-ambiguous-filesystem-reference.patch
  + PackageKit-zypp-fix-is-tumbleweed-check.patch
  + PackageKit-zypp-restore-pool-status-after-simulating-update.patch
  + PackageKit-zypp-update-libzypp-dependency-version.patch</changelog>
  <changelog author="Alynx Zhou &lt;alynx.zhou@suse.com&gt;" date="1704196800">- Add PackageKit-find-python-3-6.patch: Specify the Python version
  we need to build this package.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1709640000">- Drop baselibs.conf: the -32bit packages are no longer needed and
  have not been part of Tumbleweed for a while already (build for
  i586 only enabled in LegacyX86).</changelog>
  <changelog author="Alynx Zhou &lt;alynx.zhou@suse.com&gt;" date="1723550400">- Add PackageKit-mark-as-compulsory.patch: Prevent PackageKit from
  user uninstallable for most desktops (bsc#1226269).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1726142400">- Add PackageKit-zypp-dont-install-updateCandidateObj.patch:
  zypp: Mark the correct packages to-be-installed (bsc#1227389,
  gh#PackageKit/PackageKit/commit/209aa6295).</changelog>
</package>
<package pkgid="e445136904367887f323e51830bcd1f3469558a618bb9ba58762be0b5af0139877ea35a5a3c28a7682019b5d93bbfc9077a4deb30bd0d86a4329687ec6e0f74f" name="PackageKit-backend-dnf-debuginfo" arch="x86_64">
  <version epoch="0" ver="1.2.8" rel="6.1"/>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1636113600">- Update to version 1.2.4:
  + Libraries:
  - Add specific error code when user declined interaction
  - Avoid spurious GObject::notify signal emissions
  - Correct 'cancellable' use in pk_client_repair_system_async()
  - Fix a leak on calling set_locale() a second time
  - Fix a possible use-after-free under pk_client_cancel_cb()
  - Improve thread safety on an operation cancellation
  + Backends:
  - dnf:
    . Read update information also when getting list of updates
    . Honor install_weak_deps=False if it is there
    . Use 'hy_query_get_advisory_pkgs', if available
  + New Features:
  - PkDetails: Add 'download-size' property
  - PkPackage: Add update severity property
  + Bugfixes:
  - Let the finish understand the 'cancelled' exit code
  - Make backends that use pk-backend-spawn work (#477)
  - Only set polkit interactive flag if method call has too
- Changes from version 1.2.3:
  + Backends:
  - alpm:
    . Add post transaction hook
    . Rename errno to alpm_err to avoid name clashes
  - aptcc: Auto-remove old kernels, unless configured otherwise
  - dnf: Add support for coercing upgrade to distupgrade
  - zypp:
    . Make sure pool is initialized at the beginning of some
    methods
    . Reset update mode after getting updates
  + Bugfixes:
  - Append to cron log instead of overwriting it
  - Cancel a transaction if calling Cancel fails or the daemon
    disappears
  - Do not crash when calling pk_dbus_get_uid() before D-Bus is
    setup
  - Fix all compiler warnings
  - Fix multilib conflicts in generated pk-enum-types.h
  - Free scheduler array correctly again
  - Remove large transaction size sanity check
- Drop patches fixed upstream:
  + PackageKit-zypp-cleanup-tmp-files.patch
  + PackageKit-zypp-reset-update-mode-after-get-updates.patch
  + PackageKit-dnf-Add-support-for-coercing-upgrade-to-distupgrade.patch
  + PackageKit-zypp-initialize-pool.patch
  + PackageKit-remove-transaction-size-limit.patch
  + PackageKit-cancel-transaction-if-daemon-disappears.patch
  + PackageKit-dnf-ignore-weak-deps.patch
- Add 505.patch: pk-offline: Add flags to D-Bus invoking methods.
  That's currently to be able to set whether the method should be
  interactive or not. The old functions call the methods as
  non-interactive.</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1636113601">- Add PackageKit-zypp-c++17.patch: Fix build failure when building
  with libzypp &gt; 17.28.5 and gcc &lt; 11
  (gh#hughsie/PackageKit/commit/1a6bb6ae6, bsc#1192349).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1637064000">- Rewrite prep phase to not use autopatch -M: SLE15/Leap15's RPM
  version does not support that syntax yet.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1637064001">- Apply all patches unconditonally: PackageKit-zypp-c++17.patch is
  merged in upstream git and thus does not justify to be
  conditionally applied.
- Switching back to autosetup, as this works without conditional
  patches.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1653048000">- Update to version 1.2.5:
  + Backends:
  - dnf:
    . Add support for autoremove flag when removing packages.
    . Searches by name and package details should be case
    insensitive.
    . Update appstream xml files if dnf_sack_add_repos() does
    the download.
  - zypp:
    . Add -std=c++1z cpp flags.
    . Fix crash when search string is NULL.
    . Fix package installation using undefined data.
  - Changes to alpm, apttcc, nix, and slack.
  + Bugfixes:
  - Install offline-update enablement symlink if Meson is new
    enough.
  - Move Wants= line for network-online.target.
  - Add flags to D-Bus offline invoking methods.
  - Properly handle allow-reinstall flag for installations.
  - Provide better error message if trying to install an
    installed package.
  - Wait until online to activate systemd service.
- Drop 505.patch, PackageKit-zypp-c++17.patch, and
  PackageKit-zypp-fix-crash-with-empty-search-string.patch: fixed
  upstream.</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1653566400">- Add PackageKit-zypp-locked-packages.patch: zypp: ignore locked
  packages(gh#hughsie/PackageKit#543, boo#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1656676800">- Add PackageKit-zypp-add-upgrade-system.patch: implement
  upgrade-system method(gh#hughsie/PackageKit/commit/930dd201b).</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1657368000">- Move the dbus-1 system.d file to /usr (bsc#1201347)</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1659528000">- Modified PackageKit.spec: bump libzypp dependency version to
  17.31.0.
- Add PackageKit-zypp-avoid-statuReset.patch: zypp: Avoid
  statuReset() on locked packages
  (gh#PackageKit/PackageKit/commit/dd1964255, bsc#1199895).
- Add PackageKit-zypp-disable-upgrade-system-in-sle.patch: zypp:
  Disable upgrade-system support in SLE
  (gh#PackageKit/PackageKit/commit/0fcd820c2).
- Add PackageKit-zypp-restore-pool-status-after-simulating-update.patch:
  zypp: restore pool status after simulating an update
  (gh#PackageKit/PackageKit/commit/2b61a6649, bsc#1199895).
- Add PackageKit-zypp-fix-is-tumbleweed-check.patch: zypp: build
  the pool before calling is_tumbleweed()
  (gh#PackageKit/PackageKit/commit/146890153).
- Add PackageKit-zypp-update-libzypp-dependency-version.patch:
  zypp: update libzypp dependency version
  (gh#PackageKit/PackageKit/commit/58c7c0285, bsc#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1662120000">- Add PackageKit-zypp-dont-refresh-before-searching.patch:
  zypp: Don't refresh repos before searching
  (gh#PackageKit/PackageKit/commit/58c7c0285, bsc#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1664193600">- Add PackageKit-zypp-dont-remove-locked-packages.patch: zypp:
  Check if packages are locked before removing
  (gh#PackageKit/PackageKit/commit/8649a07bc, bsc#1199895).
- Add PackageKit-zypp-add-repo-in-packageid.patch: zypp: add
  repository data in package id
  (gh#PackageKit/PackageKit/commit/8eb2ef0ae, bsc#1202585).
- Remove PackageKit-zypp-locked-packages.patch: reverted upstream
  (gh#PackageKit/PackageKit/commit/ed3e38043).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1673006400">- Add PackageKit-zypp-fix-ambiguous-filesystem-reference.patch:
  zypp: Fix ambiguous reference to 'filesystem' class
  (gh#PackageKit/PackageKit/commit/bb1409a71, bsc#1206687).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678708800">- Add PackageKit-fix-pkcon-permission.patch: trivial: Drop
  unnecessary x permission
  (gh#PackageKit/PackageKit/commit/47b7f97bc, bsc#1209138)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1689595200">- Add PackageKit-dynamic-export.patch: fix loading of modules when
  built using glib 2.70 (boo#1213309).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1699531200">- Update to version 1.2.8:
  + Libraries:
  - offline-updates:
    . Make package update list deduplication more efficient.
    . Add only one entry per package to 'offline-update-competed'
    file.
  - PkClient: Replace the GSimpleAsyncResult with the GTask API.
  - pk-client:
    . Fix use-before-set of PkProgress on cancellation.
    . Move cancellable disconnect to dispose.
    . Rework refcounting for PkClientState.
  + Backends: Changes to apt, dnf, PiSi and BSD backends.
- Changes from version 1.2.7:
  + New Features:
  - pkclient: Add an option to count download size with
    dependencies.
  - pk-transaction: Add support for getting the RemainingTime
    property.
  + Backends:
  - zypp: Fix ambiguous reference to 'filesystem' class.
  - Changes to dnf, apt, alpm backends.
- Changes from version 1.2.6:
  + New Features:
  - Expose transaction sender as read-only property on the bus.
  - pkmon: Display transaction sender binary name in log.
  - pk-transaction: Add Packages signal.
  - pk-transaction: Combine some D-Bus PropertiesChanged signal
    emissions.
  - pk-transaction: Add UpdateDetails signal.
  + Backends:
  - zypp:
    . implement upgrade-system method.
    . Clean up trailing whitespaces.
    . Avoid statuReset() on locked packages.
    . restore pool status after simulating an update.
    . Disable upgrade-system support in SLE.
    . build the pool before calling is_tumbleweed().
    . update libzypp dependency version.
    . Don't refresh repos before searching.
    . Check if packages are locked before removing.
    . add repository data in package id.
    . Remove trailing whitespace.
    + Changes to alpm, aptcc, apt, and nix backends.
- Rebase patches:
  + PackageKit-dnf-Add-support-for-AppStream-repodata-basenames-use.patch
  + PackageKit-dynamic-export.patch
  + PackageKit-zypp-disable-upgrade-system-in-sle.patch
- Drop upstream fixed patches:
  + PackageKit-zypp-add-repo-in-packageid.patch
  + PackageKit-zypp-add-upgrade-system.patch
  + PackageKit-zypp-avoid-statuReset.patch
  + PackageKit-zypp-dont-refresh-before-searching.patch
  + PackageKit-zypp-dont-remove-locked-packages.patch
  + PackageKit-zypp-fix-ambiguous-filesystem-reference.patch
  + PackageKit-zypp-fix-is-tumbleweed-check.patch
  + PackageKit-zypp-restore-pool-status-after-simulating-update.patch
  + PackageKit-zypp-update-libzypp-dependency-version.patch</changelog>
  <changelog author="Alynx Zhou &lt;alynx.zhou@suse.com&gt;" date="1704196800">- Add PackageKit-find-python-3-6.patch: Specify the Python version
  we need to build this package.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1709640000">- Drop baselibs.conf: the -32bit packages are no longer needed and
  have not been part of Tumbleweed for a while already (build for
  i586 only enabled in LegacyX86).</changelog>
  <changelog author="Alynx Zhou &lt;alynx.zhou@suse.com&gt;" date="1723550400">- Add PackageKit-mark-as-compulsory.patch: Prevent PackageKit from
  user uninstallable for most desktops (bsc#1226269).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1726142400">- Add PackageKit-zypp-dont-install-updateCandidateObj.patch:
  zypp: Mark the correct packages to-be-installed (bsc#1227389,
  gh#PackageKit/PackageKit/commit/209aa6295).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1728993600">- Drop rcFOO symlinks (PED-266)
- Drop usage of update-alternatives, but simplify installation of
  /usr/libexec/gst-install-plugins-helper as a direct symlink to
  pk-gstreamer-install.</changelog>
</package>
<package pkgid="79b4fed362c932d9f8dcbee90b22f50f8d93fba959a476444a1e6c5fafb14b364c7228852ef3a9a7991ff794f238c6db88927e0c8c7450b9b37627f5921f50b6" name="PackageKit-backend-zypp" arch="x86_64">
  <version epoch="0" ver="1.2.8" rel="4.1"/>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1629460800">- Add PackageKit-zypp-fix-crash-with-empty-search-string.patch:
  zypp: Fix crash when search string is NULL (bsc#1179287,
  gh#hughsie/PackageKit/commit#21ccf49).</changelog>
  <changelog author="Stanislav Brabec &lt;sbrabec@suse.com&gt;" date="1631793600">- Remove obsolete translation-update-upstream support
  (jsc#SLE-21105).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1636113600">- Update to version 1.2.4:
  + Libraries:
  - Add specific error code when user declined interaction
  - Avoid spurious GObject::notify signal emissions
  - Correct 'cancellable' use in pk_client_repair_system_async()
  - Fix a leak on calling set_locale() a second time
  - Fix a possible use-after-free under pk_client_cancel_cb()
  - Improve thread safety on an operation cancellation
  + Backends:
  - dnf:
    . Read update information also when getting list of updates
    . Honor install_weak_deps=False if it is there
    . Use 'hy_query_get_advisory_pkgs', if available
  + New Features:
  - PkDetails: Add 'download-size' property
  - PkPackage: Add update severity property
  + Bugfixes:
  - Let the finish understand the 'cancelled' exit code
  - Make backends that use pk-backend-spawn work (#477)
  - Only set polkit interactive flag if method call has too
- Changes from version 1.2.3:
  + Backends:
  - alpm:
    . Add post transaction hook
    . Rename errno to alpm_err to avoid name clashes
  - aptcc: Auto-remove old kernels, unless configured otherwise
  - dnf: Add support for coercing upgrade to distupgrade
  - zypp:
    . Make sure pool is initialized at the beginning of some
    methods
    . Reset update mode after getting updates
  + Bugfixes:
  - Append to cron log instead of overwriting it
  - Cancel a transaction if calling Cancel fails or the daemon
    disappears
  - Do not crash when calling pk_dbus_get_uid() before D-Bus is
    setup
  - Fix all compiler warnings
  - Fix multilib conflicts in generated pk-enum-types.h
  - Free scheduler array correctly again
  - Remove large transaction size sanity check
- Drop patches fixed upstream:
  + PackageKit-zypp-cleanup-tmp-files.patch
  + PackageKit-zypp-reset-update-mode-after-get-updates.patch
  + PackageKit-dnf-Add-support-for-coercing-upgrade-to-distupgrade.patch
  + PackageKit-zypp-initialize-pool.patch
  + PackageKit-remove-transaction-size-limit.patch
  + PackageKit-cancel-transaction-if-daemon-disappears.patch
  + PackageKit-dnf-ignore-weak-deps.patch
- Add 505.patch: pk-offline: Add flags to D-Bus invoking methods.
  That's currently to be able to set whether the method should be
  interactive or not. The old functions call the methods as
  non-interactive.</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1636113601">- Add PackageKit-zypp-c++17.patch: Fix build failure when building
  with libzypp &gt; 17.28.5 and gcc &lt; 11
  (gh#hughsie/PackageKit/commit/1a6bb6ae6, bsc#1192349).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1637064000">- Rewrite prep phase to not use autopatch -M: SLE15/Leap15's RPM
  version does not support that syntax yet.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1637064001">- Apply all patches unconditonally: PackageKit-zypp-c++17.patch is
  merged in upstream git and thus does not justify to be
  conditionally applied.
- Switching back to autosetup, as this works without conditional
  patches.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1653048000">- Update to version 1.2.5:
  + Backends:
  - dnf:
    . Add support for autoremove flag when removing packages.
    . Searches by name and package details should be case
    insensitive.
    . Update appstream xml files if dnf_sack_add_repos() does
    the download.
  - zypp:
    . Add -std=c++1z cpp flags.
    . Fix crash when search string is NULL.
    . Fix package installation using undefined data.
  - Changes to alpm, apttcc, nix, and slack.
  + Bugfixes:
  - Install offline-update enablement symlink if Meson is new
    enough.
  - Move Wants= line for network-online.target.
  - Add flags to D-Bus offline invoking methods.
  - Properly handle allow-reinstall flag for installations.
  - Provide better error message if trying to install an
    installed package.
  - Wait until online to activate systemd service.
- Drop 505.patch, PackageKit-zypp-c++17.patch, and
  PackageKit-zypp-fix-crash-with-empty-search-string.patch: fixed
  upstream.</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1653566400">- Add PackageKit-zypp-locked-packages.patch: zypp: ignore locked
  packages(gh#hughsie/PackageKit#543, boo#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1656676800">- Add PackageKit-zypp-add-upgrade-system.patch: implement
  upgrade-system method(gh#hughsie/PackageKit/commit/930dd201b).</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1657368000">- Move the dbus-1 system.d file to /usr (bsc#1201347)</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1659528000">- Modified PackageKit.spec: bump libzypp dependency version to
  17.31.0.
- Add PackageKit-zypp-avoid-statuReset.patch: zypp: Avoid
  statuReset() on locked packages
  (gh#PackageKit/PackageKit/commit/dd1964255, bsc#1199895).
- Add PackageKit-zypp-disable-upgrade-system-in-sle.patch: zypp:
  Disable upgrade-system support in SLE
  (gh#PackageKit/PackageKit/commit/0fcd820c2).
- Add PackageKit-zypp-restore-pool-status-after-simulating-update.patch:
  zypp: restore pool status after simulating an update
  (gh#PackageKit/PackageKit/commit/2b61a6649, bsc#1199895).
- Add PackageKit-zypp-fix-is-tumbleweed-check.patch: zypp: build
  the pool before calling is_tumbleweed()
  (gh#PackageKit/PackageKit/commit/146890153).
- Add PackageKit-zypp-update-libzypp-dependency-version.patch:
  zypp: update libzypp dependency version
  (gh#PackageKit/PackageKit/commit/58c7c0285, bsc#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1662120000">- Add PackageKit-zypp-dont-refresh-before-searching.patch:
  zypp: Don't refresh repos before searching
  (gh#PackageKit/PackageKit/commit/58c7c0285, bsc#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1664193600">- Add PackageKit-zypp-dont-remove-locked-packages.patch: zypp:
  Check if packages are locked before removing
  (gh#PackageKit/PackageKit/commit/8649a07bc, bsc#1199895).
- Add PackageKit-zypp-add-repo-in-packageid.patch: zypp: add
  repository data in package id
  (gh#PackageKit/PackageKit/commit/8eb2ef0ae, bsc#1202585).
- Remove PackageKit-zypp-locked-packages.patch: reverted upstream
  (gh#PackageKit/PackageKit/commit/ed3e38043).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1673006400">- Add PackageKit-zypp-fix-ambiguous-filesystem-reference.patch:
  zypp: Fix ambiguous reference to 'filesystem' class
  (gh#PackageKit/PackageKit/commit/bb1409a71, bsc#1206687).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678708800">- Add PackageKit-fix-pkcon-permission.patch: trivial: Drop
  unnecessary x permission
  (gh#PackageKit/PackageKit/commit/47b7f97bc, bsc#1209138)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1689595200">- Add PackageKit-dynamic-export.patch: fix loading of modules when
  built using glib 2.70 (boo#1213309).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1699531200">- Update to version 1.2.8:
  + Libraries:
  - offline-updates:
    . Make package update list deduplication more efficient.
    . Add only one entry per package to 'offline-update-competed'
    file.
  - PkClient: Replace the GSimpleAsyncResult with the GTask API.
  - pk-client:
    . Fix use-before-set of PkProgress on cancellation.
    . Move cancellable disconnect to dispose.
    . Rework refcounting for PkClientState.
  + Backends: Changes to apt, dnf, PiSi and BSD backends.
- Changes from version 1.2.7:
  + New Features:
  - pkclient: Add an option to count download size with
    dependencies.
  - pk-transaction: Add support for getting the RemainingTime
    property.
  + Backends:
  - zypp: Fix ambiguous reference to 'filesystem' class.
  - Changes to dnf, apt, alpm backends.
- Changes from version 1.2.6:
  + New Features:
  - Expose transaction sender as read-only property on the bus.
  - pkmon: Display transaction sender binary name in log.
  - pk-transaction: Add Packages signal.
  - pk-transaction: Combine some D-Bus PropertiesChanged signal
    emissions.
  - pk-transaction: Add UpdateDetails signal.
  + Backends:
  - zypp:
    . implement upgrade-system method.
    . Clean up trailing whitespaces.
    . Avoid statuReset() on locked packages.
    . restore pool status after simulating an update.
    . Disable upgrade-system support in SLE.
    . build the pool before calling is_tumbleweed().
    . update libzypp dependency version.
    . Don't refresh repos before searching.
    . Check if packages are locked before removing.
    . add repository data in package id.
    . Remove trailing whitespace.
    + Changes to alpm, aptcc, apt, and nix backends.
- Rebase patches:
  + PackageKit-dnf-Add-support-for-AppStream-repodata-basenames-use.patch
  + PackageKit-dynamic-export.patch
  + PackageKit-zypp-disable-upgrade-system-in-sle.patch
- Drop upstream fixed patches:
  + PackageKit-zypp-add-repo-in-packageid.patch
  + PackageKit-zypp-add-upgrade-system.patch
  + PackageKit-zypp-avoid-statuReset.patch
  + PackageKit-zypp-dont-refresh-before-searching.patch
  + PackageKit-zypp-dont-remove-locked-packages.patch
  + PackageKit-zypp-fix-ambiguous-filesystem-reference.patch
  + PackageKit-zypp-fix-is-tumbleweed-check.patch
  + PackageKit-zypp-restore-pool-status-after-simulating-update.patch
  + PackageKit-zypp-update-libzypp-dependency-version.patch</changelog>
  <changelog author="Alynx Zhou &lt;alynx.zhou@suse.com&gt;" date="1704196800">- Add PackageKit-find-python-3-6.patch: Specify the Python version
  we need to build this package.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1709640000">- Drop baselibs.conf: the -32bit packages are no longer needed and
  have not been part of Tumbleweed for a while already (build for
  i586 only enabled in LegacyX86).</changelog>
  <changelog author="Alynx Zhou &lt;alynx.zhou@suse.com&gt;" date="1723550400">- Add PackageKit-mark-as-compulsory.patch: Prevent PackageKit from
  user uninstallable for most desktops (bsc#1226269).</changelog>
</package>
<package pkgid="9e5779eab5624258f3eaff637a91573cc78a052a6a8fc41389e47936f991a7e703669f8358746f192ce3a999c0b6e54d464c3988693a29d0ded88bdba94aef25" name="PackageKit-backend-zypp" arch="x86_64">
  <version epoch="0" ver="1.2.8" rel="5.0.2.1.sr20240901"/>
  <changelog author="Stanislav Brabec &lt;sbrabec@suse.com&gt;" date="1631793600">- Remove obsolete translation-update-upstream support
  (jsc#SLE-21105).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1636113600">- Update to version 1.2.4:
  + Libraries:
  - Add specific error code when user declined interaction
  - Avoid spurious GObject::notify signal emissions
  - Correct 'cancellable' use in pk_client_repair_system_async()
  - Fix a leak on calling set_locale() a second time
  - Fix a possible use-after-free under pk_client_cancel_cb()
  - Improve thread safety on an operation cancellation
  + Backends:
  - dnf:
    . Read update information also when getting list of updates
    . Honor install_weak_deps=False if it is there
    . Use 'hy_query_get_advisory_pkgs', if available
  + New Features:
  - PkDetails: Add 'download-size' property
  - PkPackage: Add update severity property
  + Bugfixes:
  - Let the finish understand the 'cancelled' exit code
  - Make backends that use pk-backend-spawn work (#477)
  - Only set polkit interactive flag if method call has too
- Changes from version 1.2.3:
  + Backends:
  - alpm:
    . Add post transaction hook
    . Rename errno to alpm_err to avoid name clashes
  - aptcc: Auto-remove old kernels, unless configured otherwise
  - dnf: Add support for coercing upgrade to distupgrade
  - zypp:
    . Make sure pool is initialized at the beginning of some
    methods
    . Reset update mode after getting updates
  + Bugfixes:
  - Append to cron log instead of overwriting it
  - Cancel a transaction if calling Cancel fails or the daemon
    disappears
  - Do not crash when calling pk_dbus_get_uid() before D-Bus is
    setup
  - Fix all compiler warnings
  - Fix multilib conflicts in generated pk-enum-types.h
  - Free scheduler array correctly again
  - Remove large transaction size sanity check
- Drop patches fixed upstream:
  + PackageKit-zypp-cleanup-tmp-files.patch
  + PackageKit-zypp-reset-update-mode-after-get-updates.patch
  + PackageKit-dnf-Add-support-for-coercing-upgrade-to-distupgrade.patch
  + PackageKit-zypp-initialize-pool.patch
  + PackageKit-remove-transaction-size-limit.patch
  + PackageKit-cancel-transaction-if-daemon-disappears.patch
  + PackageKit-dnf-ignore-weak-deps.patch
- Add 505.patch: pk-offline: Add flags to D-Bus invoking methods.
  That's currently to be able to set whether the method should be
  interactive or not. The old functions call the methods as
  non-interactive.</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1636113601">- Add PackageKit-zypp-c++17.patch: Fix build failure when building
  with libzypp &gt; 17.28.5 and gcc &lt; 11
  (gh#hughsie/PackageKit/commit/1a6bb6ae6, bsc#1192349).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1637064000">- Rewrite prep phase to not use autopatch -M: SLE15/Leap15's RPM
  version does not support that syntax yet.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1637064001">- Apply all patches unconditonally: PackageKit-zypp-c++17.patch is
  merged in upstream git and thus does not justify to be
  conditionally applied.
- Switching back to autosetup, as this works without conditional
  patches.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1653048000">- Update to version 1.2.5:
  + Backends:
  - dnf:
    . Add support for autoremove flag when removing packages.
    . Searches by name and package details should be case
    insensitive.
    . Update appstream xml files if dnf_sack_add_repos() does
    the download.
  - zypp:
    . Add -std=c++1z cpp flags.
    . Fix crash when search string is NULL.
    . Fix package installation using undefined data.
  - Changes to alpm, apttcc, nix, and slack.
  + Bugfixes:
  - Install offline-update enablement symlink if Meson is new
    enough.
  - Move Wants= line for network-online.target.
  - Add flags to D-Bus offline invoking methods.
  - Properly handle allow-reinstall flag for installations.
  - Provide better error message if trying to install an
    installed package.
  - Wait until online to activate systemd service.
- Drop 505.patch, PackageKit-zypp-c++17.patch, and
  PackageKit-zypp-fix-crash-with-empty-search-string.patch: fixed
  upstream.</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1653566400">- Add PackageKit-zypp-locked-packages.patch: zypp: ignore locked
  packages(gh#hughsie/PackageKit#543, boo#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1656676800">- Add PackageKit-zypp-add-upgrade-system.patch: implement
  upgrade-system method(gh#hughsie/PackageKit/commit/930dd201b).</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1657368000">- Move the dbus-1 system.d file to /usr (bsc#1201347)</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1659528000">- Modified PackageKit.spec: bump libzypp dependency version to
  17.31.0.
- Add PackageKit-zypp-avoid-statuReset.patch: zypp: Avoid
  statuReset() on locked packages
  (gh#PackageKit/PackageKit/commit/dd1964255, bsc#1199895).
- Add PackageKit-zypp-disable-upgrade-system-in-sle.patch: zypp:
  Disable upgrade-system support in SLE
  (gh#PackageKit/PackageKit/commit/0fcd820c2).
- Add PackageKit-zypp-restore-pool-status-after-simulating-update.patch:
  zypp: restore pool status after simulating an update
  (gh#PackageKit/PackageKit/commit/2b61a6649, bsc#1199895).
- Add PackageKit-zypp-fix-is-tumbleweed-check.patch: zypp: build
  the pool before calling is_tumbleweed()
  (gh#PackageKit/PackageKit/commit/146890153).
- Add PackageKit-zypp-update-libzypp-dependency-version.patch:
  zypp: update libzypp dependency version
  (gh#PackageKit/PackageKit/commit/58c7c0285, bsc#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1662120000">- Add PackageKit-zypp-dont-refresh-before-searching.patch:
  zypp: Don't refresh repos before searching
  (gh#PackageKit/PackageKit/commit/58c7c0285, bsc#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1664193600">- Add PackageKit-zypp-dont-remove-locked-packages.patch: zypp:
  Check if packages are locked before removing
  (gh#PackageKit/PackageKit/commit/8649a07bc, bsc#1199895).
- Add PackageKit-zypp-add-repo-in-packageid.patch: zypp: add
  repository data in package id
  (gh#PackageKit/PackageKit/commit/8eb2ef0ae, bsc#1202585).
- Remove PackageKit-zypp-locked-packages.patch: reverted upstream
  (gh#PackageKit/PackageKit/commit/ed3e38043).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1673006400">- Add PackageKit-zypp-fix-ambiguous-filesystem-reference.patch:
  zypp: Fix ambiguous reference to 'filesystem' class
  (gh#PackageKit/PackageKit/commit/bb1409a71, bsc#1206687).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678708800">- Add PackageKit-fix-pkcon-permission.patch: trivial: Drop
  unnecessary x permission
  (gh#PackageKit/PackageKit/commit/47b7f97bc, bsc#1209138)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1689595200">- Add PackageKit-dynamic-export.patch: fix loading of modules when
  built using glib 2.70 (boo#1213309).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1699531200">- Update to version 1.2.8:
  + Libraries:
  - offline-updates:
    . Make package update list deduplication more efficient.
    . Add only one entry per package to 'offline-update-competed'
    file.
  - PkClient: Replace the GSimpleAsyncResult with the GTask API.
  - pk-client:
    . Fix use-before-set of PkProgress on cancellation.
    . Move cancellable disconnect to dispose.
    . Rework refcounting for PkClientState.
  + Backends: Changes to apt, dnf, PiSi and BSD backends.
- Changes from version 1.2.7:
  + New Features:
  - pkclient: Add an option to count download size with
    dependencies.
  - pk-transaction: Add support for getting the RemainingTime
    property.
  + Backends:
  - zypp: Fix ambiguous reference to 'filesystem' class.
  - Changes to dnf, apt, alpm backends.
- Changes from version 1.2.6:
  + New Features:
  - Expose transaction sender as read-only property on the bus.
  - pkmon: Display transaction sender binary name in log.
  - pk-transaction: Add Packages signal.
  - pk-transaction: Combine some D-Bus PropertiesChanged signal
    emissions.
  - pk-transaction: Add UpdateDetails signal.
  + Backends:
  - zypp:
    . implement upgrade-system method.
    . Clean up trailing whitespaces.
    . Avoid statuReset() on locked packages.
    . restore pool status after simulating an update.
    . Disable upgrade-system support in SLE.
    . build the pool before calling is_tumbleweed().
    . update libzypp dependency version.
    . Don't refresh repos before searching.
    . Check if packages are locked before removing.
    . add repository data in package id.
    . Remove trailing whitespace.
    + Changes to alpm, aptcc, apt, and nix backends.
- Rebase patches:
  + PackageKit-dnf-Add-support-for-AppStream-repodata-basenames-use.patch
  + PackageKit-dynamic-export.patch
  + PackageKit-zypp-disable-upgrade-system-in-sle.patch
- Drop upstream fixed patches:
  + PackageKit-zypp-add-repo-in-packageid.patch
  + PackageKit-zypp-add-upgrade-system.patch
  + PackageKit-zypp-avoid-statuReset.patch
  + PackageKit-zypp-dont-refresh-before-searching.patch
  + PackageKit-zypp-dont-remove-locked-packages.patch
  + PackageKit-zypp-fix-ambiguous-filesystem-reference.patch
  + PackageKit-zypp-fix-is-tumbleweed-check.patch
  + PackageKit-zypp-restore-pool-status-after-simulating-update.patch
  + PackageKit-zypp-update-libzypp-dependency-version.patch</changelog>
  <changelog author="Alynx Zhou &lt;alynx.zhou@suse.com&gt;" date="1704196800">- Add PackageKit-find-python-3-6.patch: Specify the Python version
  we need to build this package.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1709640000">- Drop baselibs.conf: the -32bit packages are no longer needed and
  have not been part of Tumbleweed for a while already (build for
  i586 only enabled in LegacyX86).</changelog>
  <changelog author="Alynx Zhou &lt;alynx.zhou@suse.com&gt;" date="1723550400">- Add PackageKit-mark-as-compulsory.patch: Prevent PackageKit from
  user uninstallable for most desktops (bsc#1226269).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1726142400">- Add PackageKit-zypp-dont-install-updateCandidateObj.patch:
  zypp: Mark the correct packages to-be-installed (bsc#1227389,
  gh#PackageKit/PackageKit/commit/209aa6295).</changelog>
</package>
<package pkgid="f0a42278c8eda6d71e1726210376097b5afdad2449b84a07f516e9b355b875be379a39a2e72997520234bdb1977aaca69f7fe60a8c2b89b4561aff7df1761fbf" name="PackageKit-backend-zypp" arch="x86_64">
  <version epoch="0" ver="1.2.8" rel="5.1"/>
  <changelog author="Stanislav Brabec &lt;sbrabec@suse.com&gt;" date="1631793600">- Remove obsolete translation-update-upstream support
  (jsc#SLE-21105).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1636113600">- Update to version 1.2.4:
  + Libraries:
  - Add specific error code when user declined interaction
  - Avoid spurious GObject::notify signal emissions
  - Correct 'cancellable' use in pk_client_repair_system_async()
  - Fix a leak on calling set_locale() a second time
  - Fix a possible use-after-free under pk_client_cancel_cb()
  - Improve thread safety on an operation cancellation
  + Backends:
  - dnf:
    . Read update information also when getting list of updates
    . Honor install_weak_deps=False if it is there
    . Use 'hy_query_get_advisory_pkgs', if available
  + New Features:
  - PkDetails: Add 'download-size' property
  - PkPackage: Add update severity property
  + Bugfixes:
  - Let the finish understand the 'cancelled' exit code
  - Make backends that use pk-backend-spawn work (#477)
  - Only set polkit interactive flag if method call has too
- Changes from version 1.2.3:
  + Backends:
  - alpm:
    . Add post transaction hook
    . Rename errno to alpm_err to avoid name clashes
  - aptcc: Auto-remove old kernels, unless configured otherwise
  - dnf: Add support for coercing upgrade to distupgrade
  - zypp:
    . Make sure pool is initialized at the beginning of some
    methods
    . Reset update mode after getting updates
  + Bugfixes:
  - Append to cron log instead of overwriting it
  - Cancel a transaction if calling Cancel fails or the daemon
    disappears
  - Do not crash when calling pk_dbus_get_uid() before D-Bus is
    setup
  - Fix all compiler warnings
  - Fix multilib conflicts in generated pk-enum-types.h
  - Free scheduler array correctly again
  - Remove large transaction size sanity check
- Drop patches fixed upstream:
  + PackageKit-zypp-cleanup-tmp-files.patch
  + PackageKit-zypp-reset-update-mode-after-get-updates.patch
  + PackageKit-dnf-Add-support-for-coercing-upgrade-to-distupgrade.patch
  + PackageKit-zypp-initialize-pool.patch
  + PackageKit-remove-transaction-size-limit.patch
  + PackageKit-cancel-transaction-if-daemon-disappears.patch
  + PackageKit-dnf-ignore-weak-deps.patch
- Add 505.patch: pk-offline: Add flags to D-Bus invoking methods.
  That's currently to be able to set whether the method should be
  interactive or not. The old functions call the methods as
  non-interactive.</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1636113601">- Add PackageKit-zypp-c++17.patch: Fix build failure when building
  with libzypp &gt; 17.28.5 and gcc &lt; 11
  (gh#hughsie/PackageKit/commit/1a6bb6ae6, bsc#1192349).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1637064000">- Rewrite prep phase to not use autopatch -M: SLE15/Leap15's RPM
  version does not support that syntax yet.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1637064001">- Apply all patches unconditonally: PackageKit-zypp-c++17.patch is
  merged in upstream git and thus does not justify to be
  conditionally applied.
- Switching back to autosetup, as this works without conditional
  patches.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1653048000">- Update to version 1.2.5:
  + Backends:
  - dnf:
    . Add support for autoremove flag when removing packages.
    . Searches by name and package details should be case
    insensitive.
    . Update appstream xml files if dnf_sack_add_repos() does
    the download.
  - zypp:
    . Add -std=c++1z cpp flags.
    . Fix crash when search string is NULL.
    . Fix package installation using undefined data.
  - Changes to alpm, apttcc, nix, and slack.
  + Bugfixes:
  - Install offline-update enablement symlink if Meson is new
    enough.
  - Move Wants= line for network-online.target.
  - Add flags to D-Bus offline invoking methods.
  - Properly handle allow-reinstall flag for installations.
  - Provide better error message if trying to install an
    installed package.
  - Wait until online to activate systemd service.
- Drop 505.patch, PackageKit-zypp-c++17.patch, and
  PackageKit-zypp-fix-crash-with-empty-search-string.patch: fixed
  upstream.</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1653566400">- Add PackageKit-zypp-locked-packages.patch: zypp: ignore locked
  packages(gh#hughsie/PackageKit#543, boo#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1656676800">- Add PackageKit-zypp-add-upgrade-system.patch: implement
  upgrade-system method(gh#hughsie/PackageKit/commit/930dd201b).</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1657368000">- Move the dbus-1 system.d file to /usr (bsc#1201347)</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1659528000">- Modified PackageKit.spec: bump libzypp dependency version to
  17.31.0.
- Add PackageKit-zypp-avoid-statuReset.patch: zypp: Avoid
  statuReset() on locked packages
  (gh#PackageKit/PackageKit/commit/dd1964255, bsc#1199895).
- Add PackageKit-zypp-disable-upgrade-system-in-sle.patch: zypp:
  Disable upgrade-system support in SLE
  (gh#PackageKit/PackageKit/commit/0fcd820c2).
- Add PackageKit-zypp-restore-pool-status-after-simulating-update.patch:
  zypp: restore pool status after simulating an update
  (gh#PackageKit/PackageKit/commit/2b61a6649, bsc#1199895).
- Add PackageKit-zypp-fix-is-tumbleweed-check.patch: zypp: build
  the pool before calling is_tumbleweed()
  (gh#PackageKit/PackageKit/commit/146890153).
- Add PackageKit-zypp-update-libzypp-dependency-version.patch:
  zypp: update libzypp dependency version
  (gh#PackageKit/PackageKit/commit/58c7c0285, bsc#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1662120000">- Add PackageKit-zypp-dont-refresh-before-searching.patch:
  zypp: Don't refresh repos before searching
  (gh#PackageKit/PackageKit/commit/58c7c0285, bsc#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1664193600">- Add PackageKit-zypp-dont-remove-locked-packages.patch: zypp:
  Check if packages are locked before removing
  (gh#PackageKit/PackageKit/commit/8649a07bc, bsc#1199895).
- Add PackageKit-zypp-add-repo-in-packageid.patch: zypp: add
  repository data in package id
  (gh#PackageKit/PackageKit/commit/8eb2ef0ae, bsc#1202585).
- Remove PackageKit-zypp-locked-packages.patch: reverted upstream
  (gh#PackageKit/PackageKit/commit/ed3e38043).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1673006400">- Add PackageKit-zypp-fix-ambiguous-filesystem-reference.patch:
  zypp: Fix ambiguous reference to 'filesystem' class
  (gh#PackageKit/PackageKit/commit/bb1409a71, bsc#1206687).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678708800">- Add PackageKit-fix-pkcon-permission.patch: trivial: Drop
  unnecessary x permission
  (gh#PackageKit/PackageKit/commit/47b7f97bc, bsc#1209138)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1689595200">- Add PackageKit-dynamic-export.patch: fix loading of modules when
  built using glib 2.70 (boo#1213309).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1699531200">- Update to version 1.2.8:
  + Libraries:
  - offline-updates:
    . Make package update list deduplication more efficient.
    . Add only one entry per package to 'offline-update-competed'
    file.
  - PkClient: Replace the GSimpleAsyncResult with the GTask API.
  - pk-client:
    . Fix use-before-set of PkProgress on cancellation.
    . Move cancellable disconnect to dispose.
    . Rework refcounting for PkClientState.
  + Backends: Changes to apt, dnf, PiSi and BSD backends.
- Changes from version 1.2.7:
  + New Features:
  - pkclient: Add an option to count download size with
    dependencies.
  - pk-transaction: Add support for getting the RemainingTime
    property.
  + Backends:
  - zypp: Fix ambiguous reference to 'filesystem' class.
  - Changes to dnf, apt, alpm backends.
- Changes from version 1.2.6:
  + New Features:
  - Expose transaction sender as read-only property on the bus.
  - pkmon: Display transaction sender binary name in log.
  - pk-transaction: Add Packages signal.
  - pk-transaction: Combine some D-Bus PropertiesChanged signal
    emissions.
  - pk-transaction: Add UpdateDetails signal.
  + Backends:
  - zypp:
    . implement upgrade-system method.
    . Clean up trailing whitespaces.
    . Avoid statuReset() on locked packages.
    . restore pool status after simulating an update.
    . Disable upgrade-system support in SLE.
    . build the pool before calling is_tumbleweed().
    . update libzypp dependency version.
    . Don't refresh repos before searching.
    . Check if packages are locked before removing.
    . add repository data in package id.
    . Remove trailing whitespace.
    + Changes to alpm, aptcc, apt, and nix backends.
- Rebase patches:
  + PackageKit-dnf-Add-support-for-AppStream-repodata-basenames-use.patch
  + PackageKit-dynamic-export.patch
  + PackageKit-zypp-disable-upgrade-system-in-sle.patch
- Drop upstream fixed patches:
  + PackageKit-zypp-add-repo-in-packageid.patch
  + PackageKit-zypp-add-upgrade-system.patch
  + PackageKit-zypp-avoid-statuReset.patch
  + PackageKit-zypp-dont-refresh-before-searching.patch
  + PackageKit-zypp-dont-remove-locked-packages.patch
  + PackageKit-zypp-fix-ambiguous-filesystem-reference.patch
  + PackageKit-zypp-fix-is-tumbleweed-check.patch
  + PackageKit-zypp-restore-pool-status-after-simulating-update.patch
  + PackageKit-zypp-update-libzypp-dependency-version.patch</changelog>
  <changelog author="Alynx Zhou &lt;alynx.zhou@suse.com&gt;" date="1704196800">- Add PackageKit-find-python-3-6.patch: Specify the Python version
  we need to build this package.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1709640000">- Drop baselibs.conf: the -32bit packages are no longer needed and
  have not been part of Tumbleweed for a while already (build for
  i586 only enabled in LegacyX86).</changelog>
  <changelog author="Alynx Zhou &lt;alynx.zhou@suse.com&gt;" date="1723550400">- Add PackageKit-mark-as-compulsory.patch: Prevent PackageKit from
  user uninstallable for most desktops (bsc#1226269).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1726142400">- Add PackageKit-zypp-dont-install-updateCandidateObj.patch:
  zypp: Mark the correct packages to-be-installed (bsc#1227389,
  gh#PackageKit/PackageKit/commit/209aa6295).</changelog>
</package>
<package pkgid="4346942064b3d8b9290a856cadbe88c0d89f116c8e20dfffb8c33d8dfafd8d21759aa28f394105ce486b760e8ff1d0c4483f6a42474c46e5d0bdbf952c1004fe" name="PackageKit-backend-zypp" arch="x86_64">
  <version epoch="0" ver="1.2.8" rel="6.1"/>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1636113600">- Update to version 1.2.4:
  + Libraries:
  - Add specific error code when user declined interaction
  - Avoid spurious GObject::notify signal emissions
  - Correct 'cancellable' use in pk_client_repair_system_async()
  - Fix a leak on calling set_locale() a second time
  - Fix a possible use-after-free under pk_client_cancel_cb()
  - Improve thread safety on an operation cancellation
  + Backends:
  - dnf:
    . Read update information also when getting list of updates
    . Honor install_weak_deps=False if it is there
    . Use 'hy_query_get_advisory_pkgs', if available
  + New Features:
  - PkDetails: Add 'download-size' property
  - PkPackage: Add update severity property
  + Bugfixes:
  - Let the finish understand the 'cancelled' exit code
  - Make backends that use pk-backend-spawn work (#477)
  - Only set polkit interactive flag if method call has too
- Changes from version 1.2.3:
  + Backends:
  - alpm:
    . Add post transaction hook
    . Rename errno to alpm_err to avoid name clashes
  - aptcc: Auto-remove old kernels, unless configured otherwise
  - dnf: Add support for coercing upgrade to distupgrade
  - zypp:
    . Make sure pool is initialized at the beginning of some
    methods
    . Reset update mode after getting updates
  + Bugfixes:
  - Append to cron log instead of overwriting it
  - Cancel a transaction if calling Cancel fails or the daemon
    disappears
  - Do not crash when calling pk_dbus_get_uid() before D-Bus is
    setup
  - Fix all compiler warnings
  - Fix multilib conflicts in generated pk-enum-types.h
  - Free scheduler array correctly again
  - Remove large transaction size sanity check
- Drop patches fixed upstream:
  + PackageKit-zypp-cleanup-tmp-files.patch
  + PackageKit-zypp-reset-update-mode-after-get-updates.patch
  + PackageKit-dnf-Add-support-for-coercing-upgrade-to-distupgrade.patch
  + PackageKit-zypp-initialize-pool.patch
  + PackageKit-remove-transaction-size-limit.patch
  + PackageKit-cancel-transaction-if-daemon-disappears.patch
  + PackageKit-dnf-ignore-weak-deps.patch
- Add 505.patch: pk-offline: Add flags to D-Bus invoking methods.
  That's currently to be able to set whether the method should be
  interactive or not. The old functions call the methods as
  non-interactive.</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1636113601">- Add PackageKit-zypp-c++17.patch: Fix build failure when building
  with libzypp &gt; 17.28.5 and gcc &lt; 11
  (gh#hughsie/PackageKit/commit/1a6bb6ae6, bsc#1192349).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1637064000">- Rewrite prep phase to not use autopatch -M: SLE15/Leap15's RPM
  version does not support that syntax yet.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1637064001">- Apply all patches unconditonally: PackageKit-zypp-c++17.patch is
  merged in upstream git and thus does not justify to be
  conditionally applied.
- Switching back to autosetup, as this works without conditional
  patches.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1653048000">- Update to version 1.2.5:
  + Backends:
  - dnf:
    . Add support for autoremove flag when removing packages.
    . Searches by name and package details should be case
    insensitive.
    . Update appstream xml files if dnf_sack_add_repos() does
    the download.
  - zypp:
    . Add -std=c++1z cpp flags.
    . Fix crash when search string is NULL.
    . Fix package installation using undefined data.
  - Changes to alpm, apttcc, nix, and slack.
  + Bugfixes:
  - Install offline-update enablement symlink if Meson is new
    enough.
  - Move Wants= line for network-online.target.
  - Add flags to D-Bus offline invoking methods.
  - Properly handle allow-reinstall flag for installations.
  - Provide better error message if trying to install an
    installed package.
  - Wait until online to activate systemd service.
- Drop 505.patch, PackageKit-zypp-c++17.patch, and
  PackageKit-zypp-fix-crash-with-empty-search-string.patch: fixed
  upstream.</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1653566400">- Add PackageKit-zypp-locked-packages.patch: zypp: ignore locked
  packages(gh#hughsie/PackageKit#543, boo#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1656676800">- Add PackageKit-zypp-add-upgrade-system.patch: implement
  upgrade-system method(gh#hughsie/PackageKit/commit/930dd201b).</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1657368000">- Move the dbus-1 system.d file to /usr (bsc#1201347)</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1659528000">- Modified PackageKit.spec: bump libzypp dependency version to
  17.31.0.
- Add PackageKit-zypp-avoid-statuReset.patch: zypp: Avoid
  statuReset() on locked packages
  (gh#PackageKit/PackageKit/commit/dd1964255, bsc#1199895).
- Add PackageKit-zypp-disable-upgrade-system-in-sle.patch: zypp:
  Disable upgrade-system support in SLE
  (gh#PackageKit/PackageKit/commit/0fcd820c2).
- Add PackageKit-zypp-restore-pool-status-after-simulating-update.patch:
  zypp: restore pool status after simulating an update
  (gh#PackageKit/PackageKit/commit/2b61a6649, bsc#1199895).
- Add PackageKit-zypp-fix-is-tumbleweed-check.patch: zypp: build
  the pool before calling is_tumbleweed()
  (gh#PackageKit/PackageKit/commit/146890153).
- Add PackageKit-zypp-update-libzypp-dependency-version.patch:
  zypp: update libzypp dependency version
  (gh#PackageKit/PackageKit/commit/58c7c0285, bsc#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1662120000">- Add PackageKit-zypp-dont-refresh-before-searching.patch:
  zypp: Don't refresh repos before searching
  (gh#PackageKit/PackageKit/commit/58c7c0285, bsc#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1664193600">- Add PackageKit-zypp-dont-remove-locked-packages.patch: zypp:
  Check if packages are locked before removing
  (gh#PackageKit/PackageKit/commit/8649a07bc, bsc#1199895).
- Add PackageKit-zypp-add-repo-in-packageid.patch: zypp: add
  repository data in package id
  (gh#PackageKit/PackageKit/commit/8eb2ef0ae, bsc#1202585).
- Remove PackageKit-zypp-locked-packages.patch: reverted upstream
  (gh#PackageKit/PackageKit/commit/ed3e38043).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1673006400">- Add PackageKit-zypp-fix-ambiguous-filesystem-reference.patch:
  zypp: Fix ambiguous reference to 'filesystem' class
  (gh#PackageKit/PackageKit/commit/bb1409a71, bsc#1206687).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678708800">- Add PackageKit-fix-pkcon-permission.patch: trivial: Drop
  unnecessary x permission
  (gh#PackageKit/PackageKit/commit/47b7f97bc, bsc#1209138)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1689595200">- Add PackageKit-dynamic-export.patch: fix loading of modules when
  built using glib 2.70 (boo#1213309).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1699531200">- Update to version 1.2.8:
  + Libraries:
  - offline-updates:
    . Make package update list deduplication more efficient.
    . Add only one entry per package to 'offline-update-competed'
    file.
  - PkClient: Replace the GSimpleAsyncResult with the GTask API.
  - pk-client:
    . Fix use-before-set of PkProgress on cancellation.
    . Move cancellable disconnect to dispose.
    . Rework refcounting for PkClientState.
  + Backends: Changes to apt, dnf, PiSi and BSD backends.
- Changes from version 1.2.7:
  + New Features:
  - pkclient: Add an option to count download size with
    dependencies.
  - pk-transaction: Add support for getting the RemainingTime
    property.
  + Backends:
  - zypp: Fix ambiguous reference to 'filesystem' class.
  - Changes to dnf, apt, alpm backends.
- Changes from version 1.2.6:
  + New Features:
  - Expose transaction sender as read-only property on the bus.
  - pkmon: Display transaction sender binary name in log.
  - pk-transaction: Add Packages signal.
  - pk-transaction: Combine some D-Bus PropertiesChanged signal
    emissions.
  - pk-transaction: Add UpdateDetails signal.
  + Backends:
  - zypp:
    . implement upgrade-system method.
    . Clean up trailing whitespaces.
    . Avoid statuReset() on locked packages.
    . restore pool status after simulating an update.
    . Disable upgrade-system support in SLE.
    . build the pool before calling is_tumbleweed().
    . update libzypp dependency version.
    . Don't refresh repos before searching.
    . Check if packages are locked before removing.
    . add repository data in package id.
    . Remove trailing whitespace.
    + Changes to alpm, aptcc, apt, and nix backends.
- Rebase patches:
  + PackageKit-dnf-Add-support-for-AppStream-repodata-basenames-use.patch
  + PackageKit-dynamic-export.patch
  + PackageKit-zypp-disable-upgrade-system-in-sle.patch
- Drop upstream fixed patches:
  + PackageKit-zypp-add-repo-in-packageid.patch
  + PackageKit-zypp-add-upgrade-system.patch
  + PackageKit-zypp-avoid-statuReset.patch
  + PackageKit-zypp-dont-refresh-before-searching.patch
  + PackageKit-zypp-dont-remove-locked-packages.patch
  + PackageKit-zypp-fix-ambiguous-filesystem-reference.patch
  + PackageKit-zypp-fix-is-tumbleweed-check.patch
  + PackageKit-zypp-restore-pool-status-after-simulating-update.patch
  + PackageKit-zypp-update-libzypp-dependency-version.patch</changelog>
  <changelog author="Alynx Zhou &lt;alynx.zhou@suse.com&gt;" date="1704196800">- Add PackageKit-find-python-3-6.patch: Specify the Python version
  we need to build this package.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1709640000">- Drop baselibs.conf: the -32bit packages are no longer needed and
  have not been part of Tumbleweed for a while already (build for
  i586 only enabled in LegacyX86).</changelog>
  <changelog author="Alynx Zhou &lt;alynx.zhou@suse.com&gt;" date="1723550400">- Add PackageKit-mark-as-compulsory.patch: Prevent PackageKit from
  user uninstallable for most desktops (bsc#1226269).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1726142400">- Add PackageKit-zypp-dont-install-updateCandidateObj.patch:
  zypp: Mark the correct packages to-be-installed (bsc#1227389,
  gh#PackageKit/PackageKit/commit/209aa6295).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1728993600">- Drop rcFOO symlinks (PED-266)
- Drop usage of update-alternatives, but simplify installation of
  /usr/libexec/gst-install-plugins-helper as a direct symlink to
  pk-gstreamer-install.</changelog>
</package>
<package pkgid="45fde8d29deeef64765f4bbe61efefa0b5ba67143222f5176797bd98e33141f4e445056ef812de5be94f0e582d4f3e3b2ed67bc45b1a9758fa0fc334b6ce2bdf" name="PackageKit-backend-zypp-debuginfo" arch="x86_64">
  <version epoch="0" ver="1.2.8" rel="4.1"/>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1629460800">- Add PackageKit-zypp-fix-crash-with-empty-search-string.patch:
  zypp: Fix crash when search string is NULL (bsc#1179287,
  gh#hughsie/PackageKit/commit#21ccf49).</changelog>
  <changelog author="Stanislav Brabec &lt;sbrabec@suse.com&gt;" date="1631793600">- Remove obsolete translation-update-upstream support
  (jsc#SLE-21105).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1636113600">- Update to version 1.2.4:
  + Libraries:
  - Add specific error code when user declined interaction
  - Avoid spurious GObject::notify signal emissions
  - Correct 'cancellable' use in pk_client_repair_system_async()
  - Fix a leak on calling set_locale() a second time
  - Fix a possible use-after-free under pk_client_cancel_cb()
  - Improve thread safety on an operation cancellation
  + Backends:
  - dnf:
    . Read update information also when getting list of updates
    . Honor install_weak_deps=False if it is there
    . Use 'hy_query_get_advisory_pkgs', if available
  + New Features:
  - PkDetails: Add 'download-size' property
  - PkPackage: Add update severity property
  + Bugfixes:
  - Let the finish understand the 'cancelled' exit code
  - Make backends that use pk-backend-spawn work (#477)
  - Only set polkit interactive flag if method call has too
- Changes from version 1.2.3:
  + Backends:
  - alpm:
    . Add post transaction hook
    . Rename errno to alpm_err to avoid name clashes
  - aptcc: Auto-remove old kernels, unless configured otherwise
  - dnf: Add support for coercing upgrade to distupgrade
  - zypp:
    . Make sure pool is initialized at the beginning of some
    methods
    . Reset update mode after getting updates
  + Bugfixes:
  - Append to cron log instead of overwriting it
  - Cancel a transaction if calling Cancel fails or the daemon
    disappears
  - Do not crash when calling pk_dbus_get_uid() before D-Bus is
    setup
  - Fix all compiler warnings
  - Fix multilib conflicts in generated pk-enum-types.h
  - Free scheduler array correctly again
  - Remove large transaction size sanity check
- Drop patches fixed upstream:
  + PackageKit-zypp-cleanup-tmp-files.patch
  + PackageKit-zypp-reset-update-mode-after-get-updates.patch
  + PackageKit-dnf-Add-support-for-coercing-upgrade-to-distupgrade.patch
  + PackageKit-zypp-initialize-pool.patch
  + PackageKit-remove-transaction-size-limit.patch
  + PackageKit-cancel-transaction-if-daemon-disappears.patch
  + PackageKit-dnf-ignore-weak-deps.patch
- Add 505.patch: pk-offline: Add flags to D-Bus invoking methods.
  That's currently to be able to set whether the method should be
  interactive or not. The old functions call the methods as
  non-interactive.</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1636113601">- Add PackageKit-zypp-c++17.patch: Fix build failure when building
  with libzypp &gt; 17.28.5 and gcc &lt; 11
  (gh#hughsie/PackageKit/commit/1a6bb6ae6, bsc#1192349).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1637064000">- Rewrite prep phase to not use autopatch -M: SLE15/Leap15's RPM
  version does not support that syntax yet.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1637064001">- Apply all patches unconditonally: PackageKit-zypp-c++17.patch is
  merged in upstream git and thus does not justify to be
  conditionally applied.
- Switching back to autosetup, as this works without conditional
  patches.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1653048000">- Update to version 1.2.5:
  + Backends:
  - dnf:
    . Add support for autoremove flag when removing packages.
    . Searches by name and package details should be case
    insensitive.
    . Update appstream xml files if dnf_sack_add_repos() does
    the download.
  - zypp:
    . Add -std=c++1z cpp flags.
    . Fix crash when search string is NULL.
    . Fix package installation using undefined data.
  - Changes to alpm, apttcc, nix, and slack.
  + Bugfixes:
  - Install offline-update enablement symlink if Meson is new
    enough.
  - Move Wants= line for network-online.target.
  - Add flags to D-Bus offline invoking methods.
  - Properly handle allow-reinstall flag for installations.
  - Provide better error message if trying to install an
    installed package.
  - Wait until online to activate systemd service.
- Drop 505.patch, PackageKit-zypp-c++17.patch, and
  PackageKit-zypp-fix-crash-with-empty-search-string.patch: fixed
  upstream.</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1653566400">- Add PackageKit-zypp-locked-packages.patch: zypp: ignore locked
  packages(gh#hughsie/PackageKit#543, boo#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1656676800">- Add PackageKit-zypp-add-upgrade-system.patch: implement
  upgrade-system method(gh#hughsie/PackageKit/commit/930dd201b).</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1657368000">- Move the dbus-1 system.d file to /usr (bsc#1201347)</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1659528000">- Modified PackageKit.spec: bump libzypp dependency version to
  17.31.0.
- Add PackageKit-zypp-avoid-statuReset.patch: zypp: Avoid
  statuReset() on locked packages
  (gh#PackageKit/PackageKit/commit/dd1964255, bsc#1199895).
- Add PackageKit-zypp-disable-upgrade-system-in-sle.patch: zypp:
  Disable upgrade-system support in SLE
  (gh#PackageKit/PackageKit/commit/0fcd820c2).
- Add PackageKit-zypp-restore-pool-status-after-simulating-update.patch:
  zypp: restore pool status after simulating an update
  (gh#PackageKit/PackageKit/commit/2b61a6649, bsc#1199895).
- Add PackageKit-zypp-fix-is-tumbleweed-check.patch: zypp: build
  the pool before calling is_tumbleweed()
  (gh#PackageKit/PackageKit/commit/146890153).
- Add PackageKit-zypp-update-libzypp-dependency-version.patch:
  zypp: update libzypp dependency version
  (gh#PackageKit/PackageKit/commit/58c7c0285, bsc#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1662120000">- Add PackageKit-zypp-dont-refresh-before-searching.patch:
  zypp: Don't refresh repos before searching
  (gh#PackageKit/PackageKit/commit/58c7c0285, bsc#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1664193600">- Add PackageKit-zypp-dont-remove-locked-packages.patch: zypp:
  Check if packages are locked before removing
  (gh#PackageKit/PackageKit/commit/8649a07bc, bsc#1199895).
- Add PackageKit-zypp-add-repo-in-packageid.patch: zypp: add
  repository data in package id
  (gh#PackageKit/PackageKit/commit/8eb2ef0ae, bsc#1202585).
- Remove PackageKit-zypp-locked-packages.patch: reverted upstream
  (gh#PackageKit/PackageKit/commit/ed3e38043).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1673006400">- Add PackageKit-zypp-fix-ambiguous-filesystem-reference.patch:
  zypp: Fix ambiguous reference to 'filesystem' class
  (gh#PackageKit/PackageKit/commit/bb1409a71, bsc#1206687).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678708800">- Add PackageKit-fix-pkcon-permission.patch: trivial: Drop
  unnecessary x permission
  (gh#PackageKit/PackageKit/commit/47b7f97bc, bsc#1209138)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1689595200">- Add PackageKit-dynamic-export.patch: fix loading of modules when
  built using glib 2.70 (boo#1213309).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1699531200">- Update to version 1.2.8:
  + Libraries:
  - offline-updates:
    . Make package update list deduplication more efficient.
    . Add only one entry per package to 'offline-update-competed'
    file.
  - PkClient: Replace the GSimpleAsyncResult with the GTask API.
  - pk-client:
    . Fix use-before-set of PkProgress on cancellation.
    . Move cancellable disconnect to dispose.
    . Rework refcounting for PkClientState.
  + Backends: Changes to apt, dnf, PiSi and BSD backends.
- Changes from version 1.2.7:
  + New Features:
  - pkclient: Add an option to count download size with
    dependencies.
  - pk-transaction: Add support for getting the RemainingTime
    property.
  + Backends:
  - zypp: Fix ambiguous reference to 'filesystem' class.
  - Changes to dnf, apt, alpm backends.
- Changes from version 1.2.6:
  + New Features:
  - Expose transaction sender as read-only property on the bus.
  - pkmon: Display transaction sender binary name in log.
  - pk-transaction: Add Packages signal.
  - pk-transaction: Combine some D-Bus PropertiesChanged signal
    emissions.
  - pk-transaction: Add UpdateDetails signal.
  + Backends:
  - zypp:
    . implement upgrade-system method.
    . Clean up trailing whitespaces.
    . Avoid statuReset() on locked packages.
    . restore pool status after simulating an update.
    . Disable upgrade-system support in SLE.
    . build the pool before calling is_tumbleweed().
    . update libzypp dependency version.
    . Don't refresh repos before searching.
    . Check if packages are locked before removing.
    . add repository data in package id.
    . Remove trailing whitespace.
    + Changes to alpm, aptcc, apt, and nix backends.
- Rebase patches:
  + PackageKit-dnf-Add-support-for-AppStream-repodata-basenames-use.patch
  + PackageKit-dynamic-export.patch
  + PackageKit-zypp-disable-upgrade-system-in-sle.patch
- Drop upstream fixed patches:
  + PackageKit-zypp-add-repo-in-packageid.patch
  + PackageKit-zypp-add-upgrade-system.patch
  + PackageKit-zypp-avoid-statuReset.patch
  + PackageKit-zypp-dont-refresh-before-searching.patch
  + PackageKit-zypp-dont-remove-locked-packages.patch
  + PackageKit-zypp-fix-ambiguous-filesystem-reference.patch
  + PackageKit-zypp-fix-is-tumbleweed-check.patch
  + PackageKit-zypp-restore-pool-status-after-simulating-update.patch
  + PackageKit-zypp-update-libzypp-dependency-version.patch</changelog>
  <changelog author="Alynx Zhou &lt;alynx.zhou@suse.com&gt;" date="1704196800">- Add PackageKit-find-python-3-6.patch: Specify the Python version
  we need to build this package.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1709640000">- Drop baselibs.conf: the -32bit packages are no longer needed and
  have not been part of Tumbleweed for a while already (build for
  i586 only enabled in LegacyX86).</changelog>
  <changelog author="Alynx Zhou &lt;alynx.zhou@suse.com&gt;" date="1723550400">- Add PackageKit-mark-as-compulsory.patch: Prevent PackageKit from
  user uninstallable for most desktops (bsc#1226269).</changelog>
</package>
<package pkgid="e27c13a017ce0ce33168a6cd4bda9643b2cd977d0e0b91bf9a5824251e71e48de753561ce9f95767cc2c3bce0a84caf4269314e08ccb9812586f869ce5629490" name="PackageKit-backend-zypp-debuginfo" arch="x86_64">
  <version epoch="0" ver="1.2.8" rel="5.0.2.1.sr20240901"/>
  <changelog author="Stanislav Brabec &lt;sbrabec@suse.com&gt;" date="1631793600">- Remove obsolete translation-update-upstream support
  (jsc#SLE-21105).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1636113600">- Update to version 1.2.4:
  + Libraries:
  - Add specific error code when user declined interaction
  - Avoid spurious GObject::notify signal emissions
  - Correct 'cancellable' use in pk_client_repair_system_async()
  - Fix a leak on calling set_locale() a second time
  - Fix a possible use-after-free under pk_client_cancel_cb()
  - Improve thread safety on an operation cancellation
  + Backends:
  - dnf:
    . Read update information also when getting list of updates
    . Honor install_weak_deps=False if it is there
    . Use 'hy_query_get_advisory_pkgs', if available
  + New Features:
  - PkDetails: Add 'download-size' property
  - PkPackage: Add update severity property
  + Bugfixes:
  - Let the finish understand the 'cancelled' exit code
  - Make backends that use pk-backend-spawn work (#477)
  - Only set polkit interactive flag if method call has too
- Changes from version 1.2.3:
  + Backends:
  - alpm:
    . Add post transaction hook
    . Rename errno to alpm_err to avoid name clashes
  - aptcc: Auto-remove old kernels, unless configured otherwise
  - dnf: Add support for coercing upgrade to distupgrade
  - zypp:
    . Make sure pool is initialized at the beginning of some
    methods
    . Reset update mode after getting updates
  + Bugfixes:
  - Append to cron log instead of overwriting it
  - Cancel a transaction if calling Cancel fails or the daemon
    disappears
  - Do not crash when calling pk_dbus_get_uid() before D-Bus is
    setup
  - Fix all compiler warnings
  - Fix multilib conflicts in generated pk-enum-types.h
  - Free scheduler array correctly again
  - Remove large transaction size sanity check
- Drop patches fixed upstream:
  + PackageKit-zypp-cleanup-tmp-files.patch
  + PackageKit-zypp-reset-update-mode-after-get-updates.patch
  + PackageKit-dnf-Add-support-for-coercing-upgrade-to-distupgrade.patch
  + PackageKit-zypp-initialize-pool.patch
  + PackageKit-remove-transaction-size-limit.patch
  + PackageKit-cancel-transaction-if-daemon-disappears.patch
  + PackageKit-dnf-ignore-weak-deps.patch
- Add 505.patch: pk-offline: Add flags to D-Bus invoking methods.
  That's currently to be able to set whether the method should be
  interactive or not. The old functions call the methods as
  non-interactive.</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1636113601">- Add PackageKit-zypp-c++17.patch: Fix build failure when building
  with libzypp &gt; 17.28.5 and gcc &lt; 11
  (gh#hughsie/PackageKit/commit/1a6bb6ae6, bsc#1192349).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1637064000">- Rewrite prep phase to not use autopatch -M: SLE15/Leap15's RPM
  version does not support that syntax yet.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1637064001">- Apply all patches unconditonally: PackageKit-zypp-c++17.patch is
  merged in upstream git and thus does not justify to be
  conditionally applied.
- Switching back to autosetup, as this works without conditional
  patches.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1653048000">- Update to version 1.2.5:
  + Backends:
  - dnf:
    . Add support for autoremove flag when removing packages.
    . Searches by name and package details should be case
    insensitive.
    . Update appstream xml files if dnf_sack_add_repos() does
    the download.
  - zypp:
    . Add -std=c++1z cpp flags.
    . Fix crash when search string is NULL.
    . Fix package installation using undefined data.
  - Changes to alpm, apttcc, nix, and slack.
  + Bugfixes:
  - Install offline-update enablement symlink if Meson is new
    enough.
  - Move Wants= line for network-online.target.
  - Add flags to D-Bus offline invoking methods.
  - Properly handle allow-reinstall flag for installations.
  - Provide better error message if trying to install an
    installed package.
  - Wait until online to activate systemd service.
- Drop 505.patch, PackageKit-zypp-c++17.patch, and
  PackageKit-zypp-fix-crash-with-empty-search-string.patch: fixed
  upstream.</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1653566400">- Add PackageKit-zypp-locked-packages.patch: zypp: ignore locked
  packages(gh#hughsie/PackageKit#543, boo#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1656676800">- Add PackageKit-zypp-add-upgrade-system.patch: implement
  upgrade-system method(gh#hughsie/PackageKit/commit/930dd201b).</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1657368000">- Move the dbus-1 system.d file to /usr (bsc#1201347)</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1659528000">- Modified PackageKit.spec: bump libzypp dependency version to
  17.31.0.
- Add PackageKit-zypp-avoid-statuReset.patch: zypp: Avoid
  statuReset() on locked packages
  (gh#PackageKit/PackageKit/commit/dd1964255, bsc#1199895).
- Add PackageKit-zypp-disable-upgrade-system-in-sle.patch: zypp:
  Disable upgrade-system support in SLE
  (gh#PackageKit/PackageKit/commit/0fcd820c2).
- Add PackageKit-zypp-restore-pool-status-after-simulating-update.patch:
  zypp: restore pool status after simulating an update
  (gh#PackageKit/PackageKit/commit/2b61a6649, bsc#1199895).
- Add PackageKit-zypp-fix-is-tumbleweed-check.patch: zypp: build
  the pool before calling is_tumbleweed()
  (gh#PackageKit/PackageKit/commit/146890153).
- Add PackageKit-zypp-update-libzypp-dependency-version.patch:
  zypp: update libzypp dependency version
  (gh#PackageKit/PackageKit/commit/58c7c0285, bsc#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1662120000">- Add PackageKit-zypp-dont-refresh-before-searching.patch:
  zypp: Don't refresh repos before searching
  (gh#PackageKit/PackageKit/commit/58c7c0285, bsc#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1664193600">- Add PackageKit-zypp-dont-remove-locked-packages.patch: zypp:
  Check if packages are locked before removing
  (gh#PackageKit/PackageKit/commit/8649a07bc, bsc#1199895).
- Add PackageKit-zypp-add-repo-in-packageid.patch: zypp: add
  repository data in package id
  (gh#PackageKit/PackageKit/commit/8eb2ef0ae, bsc#1202585).
- Remove PackageKit-zypp-locked-packages.patch: reverted upstream
  (gh#PackageKit/PackageKit/commit/ed3e38043).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1673006400">- Add PackageKit-zypp-fix-ambiguous-filesystem-reference.patch:
  zypp: Fix ambiguous reference to 'filesystem' class
  (gh#PackageKit/PackageKit/commit/bb1409a71, bsc#1206687).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678708800">- Add PackageKit-fix-pkcon-permission.patch: trivial: Drop
  unnecessary x permission
  (gh#PackageKit/PackageKit/commit/47b7f97bc, bsc#1209138)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1689595200">- Add PackageKit-dynamic-export.patch: fix loading of modules when
  built using glib 2.70 (boo#1213309).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1699531200">- Update to version 1.2.8:
  + Libraries:
  - offline-updates:
    . Make package update list deduplication more efficient.
    . Add only one entry per package to 'offline-update-competed'
    file.
  - PkClient: Replace the GSimpleAsyncResult with the GTask API.
  - pk-client:
    . Fix use-before-set of PkProgress on cancellation.
    . Move cancellable disconnect to dispose.
    . Rework refcounting for PkClientState.
  + Backends: Changes to apt, dnf, PiSi and BSD backends.
- Changes from version 1.2.7:
  + New Features:
  - pkclient: Add an option to count download size with
    dependencies.
  - pk-transaction: Add support for getting the RemainingTime
    property.
  + Backends:
  - zypp: Fix ambiguous reference to 'filesystem' class.
  - Changes to dnf, apt, alpm backends.
- Changes from version 1.2.6:
  + New Features:
  - Expose transaction sender as read-only property on the bus.
  - pkmon: Display transaction sender binary name in log.
  - pk-transaction: Add Packages signal.
  - pk-transaction: Combine some D-Bus PropertiesChanged signal
    emissions.
  - pk-transaction: Add UpdateDetails signal.
  + Backends:
  - zypp:
    . implement upgrade-system method.
    . Clean up trailing whitespaces.
    . Avoid statuReset() on locked packages.
    . restore pool status after simulating an update.
    . Disable upgrade-system support in SLE.
    . build the pool before calling is_tumbleweed().
    . update libzypp dependency version.
    . Don't refresh repos before searching.
    . Check if packages are locked before removing.
    . add repository data in package id.
    . Remove trailing whitespace.
    + Changes to alpm, aptcc, apt, and nix backends.
- Rebase patches:
  + PackageKit-dnf-Add-support-for-AppStream-repodata-basenames-use.patch
  + PackageKit-dynamic-export.patch
  + PackageKit-zypp-disable-upgrade-system-in-sle.patch
- Drop upstream fixed patches:
  + PackageKit-zypp-add-repo-in-packageid.patch
  + PackageKit-zypp-add-upgrade-system.patch
  + PackageKit-zypp-avoid-statuReset.patch
  + PackageKit-zypp-dont-refresh-before-searching.patch
  + PackageKit-zypp-dont-remove-locked-packages.patch
  + PackageKit-zypp-fix-ambiguous-filesystem-reference.patch
  + PackageKit-zypp-fix-is-tumbleweed-check.patch
  + PackageKit-zypp-restore-pool-status-after-simulating-update.patch
  + PackageKit-zypp-update-libzypp-dependency-version.patch</changelog>
  <changelog author="Alynx Zhou &lt;alynx.zhou@suse.com&gt;" date="1704196800">- Add PackageKit-find-python-3-6.patch: Specify the Python version
  we need to build this package.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1709640000">- Drop baselibs.conf: the -32bit packages are no longer needed and
  have not been part of Tumbleweed for a while already (build for
  i586 only enabled in LegacyX86).</changelog>
  <changelog author="Alynx Zhou &lt;alynx.zhou@suse.com&gt;" date="1723550400">- Add PackageKit-mark-as-compulsory.patch: Prevent PackageKit from
  user uninstallable for most desktops (bsc#1226269).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1726142400">- Add PackageKit-zypp-dont-install-updateCandidateObj.patch:
  zypp: Mark the correct packages to-be-installed (bsc#1227389,
  gh#PackageKit/PackageKit/commit/209aa6295).</changelog>
</package>
<package pkgid="d4a30ec5acba7baf4ad30eabaa74d97515eb737bcc3e12f0f922155804ed71e5f7c728edd61d5e8b83dbb074e5e5ddfc5b08aeb1bcba8bc2cab31cf4a6793f97" name="PackageKit-backend-zypp-debuginfo" arch="x86_64">
  <version epoch="0" ver="1.2.8" rel="5.1"/>
  <changelog author="Stanislav Brabec &lt;sbrabec@suse.com&gt;" date="1631793600">- Remove obsolete translation-update-upstream support
  (jsc#SLE-21105).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1636113600">- Update to version 1.2.4:
  + Libraries:
  - Add specific error code when user declined interaction
  - Avoid spurious GObject::notify signal emissions
  - Correct 'cancellable' use in pk_client_repair_system_async()
  - Fix a leak on calling set_locale() a second time
  - Fix a possible use-after-free under pk_client_cancel_cb()
  - Improve thread safety on an operation cancellation
  + Backends:
  - dnf:
    . Read update information also when getting list of updates
    . Honor install_weak_deps=False if it is there
    . Use 'hy_query_get_advisory_pkgs', if available
  + New Features:
  - PkDetails: Add 'download-size' property
  - PkPackage: Add update severity property
  + Bugfixes:
  - Let the finish understand the 'cancelled' exit code
  - Make backends that use pk-backend-spawn work (#477)
  - Only set polkit interactive flag if method call has too
- Changes from version 1.2.3:
  + Backends:
  - alpm:
    . Add post transaction hook
    . Rename errno to alpm_err to avoid name clashes
  - aptcc: Auto-remove old kernels, unless configured otherwise
  - dnf: Add support for coercing upgrade to distupgrade
  - zypp:
    . Make sure pool is initialized at the beginning of some
    methods
    . Reset update mode after getting updates
  + Bugfixes:
  - Append to cron log instead of overwriting it
  - Cancel a transaction if calling Cancel fails or the daemon
    disappears
  - Do not crash when calling pk_dbus_get_uid() before D-Bus is
    setup
  - Fix all compiler warnings
  - Fix multilib conflicts in generated pk-enum-types.h
  - Free scheduler array correctly again
  - Remove large transaction size sanity check
- Drop patches fixed upstream:
  + PackageKit-zypp-cleanup-tmp-files.patch
  + PackageKit-zypp-reset-update-mode-after-get-updates.patch
  + PackageKit-dnf-Add-support-for-coercing-upgrade-to-distupgrade.patch
  + PackageKit-zypp-initialize-pool.patch
  + PackageKit-remove-transaction-size-limit.patch
  + PackageKit-cancel-transaction-if-daemon-disappears.patch
  + PackageKit-dnf-ignore-weak-deps.patch
- Add 505.patch: pk-offline: Add flags to D-Bus invoking methods.
  That's currently to be able to set whether the method should be
  interactive or not. The old functions call the methods as
  non-interactive.</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1636113601">- Add PackageKit-zypp-c++17.patch: Fix build failure when building
  with libzypp &gt; 17.28.5 and gcc &lt; 11
  (gh#hughsie/PackageKit/commit/1a6bb6ae6, bsc#1192349).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1637064000">- Rewrite prep phase to not use autopatch -M: SLE15/Leap15's RPM
  version does not support that syntax yet.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1637064001">- Apply all patches unconditonally: PackageKit-zypp-c++17.patch is
  merged in upstream git and thus does not justify to be
  conditionally applied.
- Switching back to autosetup, as this works without conditional
  patches.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1653048000">- Update to version 1.2.5:
  + Backends:
  - dnf:
    . Add support for autoremove flag when removing packages.
    . Searches by name and package details should be case
    insensitive.
    . Update appstream xml files if dnf_sack_add_repos() does
    the download.
  - zypp:
    . Add -std=c++1z cpp flags.
    . Fix crash when search string is NULL.
    . Fix package installation using undefined data.
  - Changes to alpm, apttcc, nix, and slack.
  + Bugfixes:
  - Install offline-update enablement symlink if Meson is new
    enough.
  - Move Wants= line for network-online.target.
  - Add flags to D-Bus offline invoking methods.
  - Properly handle allow-reinstall flag for installations.
  - Provide better error message if trying to install an
    installed package.
  - Wait until online to activate systemd service.
- Drop 505.patch, PackageKit-zypp-c++17.patch, and
  PackageKit-zypp-fix-crash-with-empty-search-string.patch: fixed
  upstream.</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1653566400">- Add PackageKit-zypp-locked-packages.patch: zypp: ignore locked
  packages(gh#hughsie/PackageKit#543, boo#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1656676800">- Add PackageKit-zypp-add-upgrade-system.patch: implement
  upgrade-system method(gh#hughsie/PackageKit/commit/930dd201b).</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1657368000">- Move the dbus-1 system.d file to /usr (bsc#1201347)</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1659528000">- Modified PackageKit.spec: bump libzypp dependency version to
  17.31.0.
- Add PackageKit-zypp-avoid-statuReset.patch: zypp: Avoid
  statuReset() on locked packages
  (gh#PackageKit/PackageKit/commit/dd1964255, bsc#1199895).
- Add PackageKit-zypp-disable-upgrade-system-in-sle.patch: zypp:
  Disable upgrade-system support in SLE
  (gh#PackageKit/PackageKit/commit/0fcd820c2).
- Add PackageKit-zypp-restore-pool-status-after-simulating-update.patch:
  zypp: restore pool status after simulating an update
  (gh#PackageKit/PackageKit/commit/2b61a6649, bsc#1199895).
- Add PackageKit-zypp-fix-is-tumbleweed-check.patch: zypp: build
  the pool before calling is_tumbleweed()
  (gh#PackageKit/PackageKit/commit/146890153).
- Add PackageKit-zypp-update-libzypp-dependency-version.patch:
  zypp: update libzypp dependency version
  (gh#PackageKit/PackageKit/commit/58c7c0285, bsc#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1662120000">- Add PackageKit-zypp-dont-refresh-before-searching.patch:
  zypp: Don't refresh repos before searching
  (gh#PackageKit/PackageKit/commit/58c7c0285, bsc#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1664193600">- Add PackageKit-zypp-dont-remove-locked-packages.patch: zypp:
  Check if packages are locked before removing
  (gh#PackageKit/PackageKit/commit/8649a07bc, bsc#1199895).
- Add PackageKit-zypp-add-repo-in-packageid.patch: zypp: add
  repository data in package id
  (gh#PackageKit/PackageKit/commit/8eb2ef0ae, bsc#1202585).
- Remove PackageKit-zypp-locked-packages.patch: reverted upstream
  (gh#PackageKit/PackageKit/commit/ed3e38043).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1673006400">- Add PackageKit-zypp-fix-ambiguous-filesystem-reference.patch:
  zypp: Fix ambiguous reference to 'filesystem' class
  (gh#PackageKit/PackageKit/commit/bb1409a71, bsc#1206687).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678708800">- Add PackageKit-fix-pkcon-permission.patch: trivial: Drop
  unnecessary x permission
  (gh#PackageKit/PackageKit/commit/47b7f97bc, bsc#1209138)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1689595200">- Add PackageKit-dynamic-export.patch: fix loading of modules when
  built using glib 2.70 (boo#1213309).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1699531200">- Update to version 1.2.8:
  + Libraries:
  - offline-updates:
    . Make package update list deduplication more efficient.
    . Add only one entry per package to 'offline-update-competed'
    file.
  - PkClient: Replace the GSimpleAsyncResult with the GTask API.
  - pk-client:
    . Fix use-before-set of PkProgress on cancellation.
    . Move cancellable disconnect to dispose.
    . Rework refcounting for PkClientState.
  + Backends: Changes to apt, dnf, PiSi and BSD backends.
- Changes from version 1.2.7:
  + New Features:
  - pkclient: Add an option to count download size with
    dependencies.
  - pk-transaction: Add support for getting the RemainingTime
    property.
  + Backends:
  - zypp: Fix ambiguous reference to 'filesystem' class.
  - Changes to dnf, apt, alpm backends.
- Changes from version 1.2.6:
  + New Features:
  - Expose transaction sender as read-only property on the bus.
  - pkmon: Display transaction sender binary name in log.
  - pk-transaction: Add Packages signal.
  - pk-transaction: Combine some D-Bus PropertiesChanged signal
    emissions.
  - pk-transaction: Add UpdateDetails signal.
  + Backends:
  - zypp:
    . implement upgrade-system method.
    . Clean up trailing whitespaces.
    . Avoid statuReset() on locked packages.
    . restore pool status after simulating an update.
    . Disable upgrade-system support in SLE.
    . build the pool before calling is_tumbleweed().
    . update libzypp dependency version.
    . Don't refresh repos before searching.
    . Check if packages are locked before removing.
    . add repository data in package id.
    . Remove trailing whitespace.
    + Changes to alpm, aptcc, apt, and nix backends.
- Rebase patches:
  + PackageKit-dnf-Add-support-for-AppStream-repodata-basenames-use.patch
  + PackageKit-dynamic-export.patch
  + PackageKit-zypp-disable-upgrade-system-in-sle.patch
- Drop upstream fixed patches:
  + PackageKit-zypp-add-repo-in-packageid.patch
  + PackageKit-zypp-add-upgrade-system.patch
  + PackageKit-zypp-avoid-statuReset.patch
  + PackageKit-zypp-dont-refresh-before-searching.patch
  + PackageKit-zypp-dont-remove-locked-packages.patch
  + PackageKit-zypp-fix-ambiguous-filesystem-reference.patch
  + PackageKit-zypp-fix-is-tumbleweed-check.patch
  + PackageKit-zypp-restore-pool-status-after-simulating-update.patch
  + PackageKit-zypp-update-libzypp-dependency-version.patch</changelog>
  <changelog author="Alynx Zhou &lt;alynx.zhou@suse.com&gt;" date="1704196800">- Add PackageKit-find-python-3-6.patch: Specify the Python version
  we need to build this package.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1709640000">- Drop baselibs.conf: the -32bit packages are no longer needed and
  have not been part of Tumbleweed for a while already (build for
  i586 only enabled in LegacyX86).</changelog>
  <changelog author="Alynx Zhou &lt;alynx.zhou@suse.com&gt;" date="1723550400">- Add PackageKit-mark-as-compulsory.patch: Prevent PackageKit from
  user uninstallable for most desktops (bsc#1226269).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1726142400">- Add PackageKit-zypp-dont-install-updateCandidateObj.patch:
  zypp: Mark the correct packages to-be-installed (bsc#1227389,
  gh#PackageKit/PackageKit/commit/209aa6295).</changelog>
</package>
<package pkgid="76639f023ddc1e47bab4d736573cb027e8d40302e8b09ca45eb69e8ba00366d168b40f320745b8f87418000609ff61b4afdfaa463e3c92f382e1721349823e5d" name="PackageKit-backend-zypp-debuginfo" arch="x86_64">
  <version epoch="0" ver="1.2.8" rel="6.1"/>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1636113600">- Update to version 1.2.4:
  + Libraries:
  - Add specific error code when user declined interaction
  - Avoid spurious GObject::notify signal emissions
  - Correct 'cancellable' use in pk_client_repair_system_async()
  - Fix a leak on calling set_locale() a second time
  - Fix a possible use-after-free under pk_client_cancel_cb()
  - Improve thread safety on an operation cancellation
  + Backends:
  - dnf:
    . Read update information also when getting list of updates
    . Honor install_weak_deps=False if it is there
    . Use 'hy_query_get_advisory_pkgs', if available
  + New Features:
  - PkDetails: Add 'download-size' property
  - PkPackage: Add update severity property
  + Bugfixes:
  - Let the finish understand the 'cancelled' exit code
  - Make backends that use pk-backend-spawn work (#477)
  - Only set polkit interactive flag if method call has too
- Changes from version 1.2.3:
  + Backends:
  - alpm:
    . Add post transaction hook
    . Rename errno to alpm_err to avoid name clashes
  - aptcc: Auto-remove old kernels, unless configured otherwise
  - dnf: Add support for coercing upgrade to distupgrade
  - zypp:
    . Make sure pool is initialized at the beginning of some
    methods
    . Reset update mode after getting updates
  + Bugfixes:
  - Append to cron log instead of overwriting it
  - Cancel a transaction if calling Cancel fails or the daemon
    disappears
  - Do not crash when calling pk_dbus_get_uid() before D-Bus is
    setup
  - Fix all compiler warnings
  - Fix multilib conflicts in generated pk-enum-types.h
  - Free scheduler array correctly again
  - Remove large transaction size sanity check
- Drop patches fixed upstream:
  + PackageKit-zypp-cleanup-tmp-files.patch
  + PackageKit-zypp-reset-update-mode-after-get-updates.patch
  + PackageKit-dnf-Add-support-for-coercing-upgrade-to-distupgrade.patch
  + PackageKit-zypp-initialize-pool.patch
  + PackageKit-remove-transaction-size-limit.patch
  + PackageKit-cancel-transaction-if-daemon-disappears.patch
  + PackageKit-dnf-ignore-weak-deps.patch
- Add 505.patch: pk-offline: Add flags to D-Bus invoking methods.
  That's currently to be able to set whether the method should be
  interactive or not. The old functions call the methods as
  non-interactive.</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1636113601">- Add PackageKit-zypp-c++17.patch: Fix build failure when building
  with libzypp &gt; 17.28.5 and gcc &lt; 11
  (gh#hughsie/PackageKit/commit/1a6bb6ae6, bsc#1192349).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1637064000">- Rewrite prep phase to not use autopatch -M: SLE15/Leap15's RPM
  version does not support that syntax yet.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1637064001">- Apply all patches unconditonally: PackageKit-zypp-c++17.patch is
  merged in upstream git and thus does not justify to be
  conditionally applied.
- Switching back to autosetup, as this works without conditional
  patches.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1653048000">- Update to version 1.2.5:
  + Backends:
  - dnf:
    . Add support for autoremove flag when removing packages.
    . Searches by name and package details should be case
    insensitive.
    . Update appstream xml files if dnf_sack_add_repos() does
    the download.
  - zypp:
    . Add -std=c++1z cpp flags.
    . Fix crash when search string is NULL.
    . Fix package installation using undefined data.
  - Changes to alpm, apttcc, nix, and slack.
  + Bugfixes:
  - Install offline-update enablement symlink if Meson is new
    enough.
  - Move Wants= line for network-online.target.
  - Add flags to D-Bus offline invoking methods.
  - Properly handle allow-reinstall flag for installations.
  - Provide better error message if trying to install an
    installed package.
  - Wait until online to activate systemd service.
- Drop 505.patch, PackageKit-zypp-c++17.patch, and
  PackageKit-zypp-fix-crash-with-empty-search-string.patch: fixed
  upstream.</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1653566400">- Add PackageKit-zypp-locked-packages.patch: zypp: ignore locked
  packages(gh#hughsie/PackageKit#543, boo#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1656676800">- Add PackageKit-zypp-add-upgrade-system.patch: implement
  upgrade-system method(gh#hughsie/PackageKit/commit/930dd201b).</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1657368000">- Move the dbus-1 system.d file to /usr (bsc#1201347)</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1659528000">- Modified PackageKit.spec: bump libzypp dependency version to
  17.31.0.
- Add PackageKit-zypp-avoid-statuReset.patch: zypp: Avoid
  statuReset() on locked packages
  (gh#PackageKit/PackageKit/commit/dd1964255, bsc#1199895).
- Add PackageKit-zypp-disable-upgrade-system-in-sle.patch: zypp:
  Disable upgrade-system support in SLE
  (gh#PackageKit/PackageKit/commit/0fcd820c2).
- Add PackageKit-zypp-restore-pool-status-after-simulating-update.patch:
  zypp: restore pool status after simulating an update
  (gh#PackageKit/PackageKit/commit/2b61a6649, bsc#1199895).
- Add PackageKit-zypp-fix-is-tumbleweed-check.patch: zypp: build
  the pool before calling is_tumbleweed()
  (gh#PackageKit/PackageKit/commit/146890153).
- Add PackageKit-zypp-update-libzypp-dependency-version.patch:
  zypp: update libzypp dependency version
  (gh#PackageKit/PackageKit/commit/58c7c0285, bsc#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1662120000">- Add PackageKit-zypp-dont-refresh-before-searching.patch:
  zypp: Don't refresh repos before searching
  (gh#PackageKit/PackageKit/commit/58c7c0285, bsc#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1664193600">- Add PackageKit-zypp-dont-remove-locked-packages.patch: zypp:
  Check if packages are locked before removing
  (gh#PackageKit/PackageKit/commit/8649a07bc, bsc#1199895).
- Add PackageKit-zypp-add-repo-in-packageid.patch: zypp: add
  repository data in package id
  (gh#PackageKit/PackageKit/commit/8eb2ef0ae, bsc#1202585).
- Remove PackageKit-zypp-locked-packages.patch: reverted upstream
  (gh#PackageKit/PackageKit/commit/ed3e38043).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1673006400">- Add PackageKit-zypp-fix-ambiguous-filesystem-reference.patch:
  zypp: Fix ambiguous reference to 'filesystem' class
  (gh#PackageKit/PackageKit/commit/bb1409a71, bsc#1206687).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678708800">- Add PackageKit-fix-pkcon-permission.patch: trivial: Drop
  unnecessary x permission
  (gh#PackageKit/PackageKit/commit/47b7f97bc, bsc#1209138)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1689595200">- Add PackageKit-dynamic-export.patch: fix loading of modules when
  built using glib 2.70 (boo#1213309).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1699531200">- Update to version 1.2.8:
  + Libraries:
  - offline-updates:
    . Make package update list deduplication more efficient.
    . Add only one entry per package to 'offline-update-competed'
    file.
  - PkClient: Replace the GSimpleAsyncResult with the GTask API.
  - pk-client:
    . Fix use-before-set of PkProgress on cancellation.
    . Move cancellable disconnect to dispose.
    . Rework refcounting for PkClientState.
  + Backends: Changes to apt, dnf, PiSi and BSD backends.
- Changes from version 1.2.7:
  + New Features:
  - pkclient: Add an option to count download size with
    dependencies.
  - pk-transaction: Add support for getting the RemainingTime
    property.
  + Backends:
  - zypp: Fix ambiguous reference to 'filesystem' class.
  - Changes to dnf, apt, alpm backends.
- Changes from version 1.2.6:
  + New Features:
  - Expose transaction sender as read-only property on the bus.
  - pkmon: Display transaction sender binary name in log.
  - pk-transaction: Add Packages signal.
  - pk-transaction: Combine some D-Bus PropertiesChanged signal
    emissions.
  - pk-transaction: Add UpdateDetails signal.
  + Backends:
  - zypp:
    . implement upgrade-system method.
    . Clean up trailing whitespaces.
    . Avoid statuReset() on locked packages.
    . restore pool status after simulating an update.
    . Disable upgrade-system support in SLE.
    . build the pool before calling is_tumbleweed().
    . update libzypp dependency version.
    . Don't refresh repos before searching.
    . Check if packages are locked before removing.
    . add repository data in package id.
    . Remove trailing whitespace.
    + Changes to alpm, aptcc, apt, and nix backends.
- Rebase patches:
  + PackageKit-dnf-Add-support-for-AppStream-repodata-basenames-use.patch
  + PackageKit-dynamic-export.patch
  + PackageKit-zypp-disable-upgrade-system-in-sle.patch
- Drop upstream fixed patches:
  + PackageKit-zypp-add-repo-in-packageid.patch
  + PackageKit-zypp-add-upgrade-system.patch
  + PackageKit-zypp-avoid-statuReset.patch
  + PackageKit-zypp-dont-refresh-before-searching.patch
  + PackageKit-zypp-dont-remove-locked-packages.patch
  + PackageKit-zypp-fix-ambiguous-filesystem-reference.patch
  + PackageKit-zypp-fix-is-tumbleweed-check.patch
  + PackageKit-zypp-restore-pool-status-after-simulating-update.patch
  + PackageKit-zypp-update-libzypp-dependency-version.patch</changelog>
  <changelog author="Alynx Zhou &lt;alynx.zhou@suse.com&gt;" date="1704196800">- Add PackageKit-find-python-3-6.patch: Specify the Python version
  we need to build this package.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1709640000">- Drop baselibs.conf: the -32bit packages are no longer needed and
  have not been part of Tumbleweed for a while already (build for
  i586 only enabled in LegacyX86).</changelog>
  <changelog author="Alynx Zhou &lt;alynx.zhou@suse.com&gt;" date="1723550400">- Add PackageKit-mark-as-compulsory.patch: Prevent PackageKit from
  user uninstallable for most desktops (bsc#1226269).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1726142400">- Add PackageKit-zypp-dont-install-updateCandidateObj.patch:
  zypp: Mark the correct packages to-be-installed (bsc#1227389,
  gh#PackageKit/PackageKit/commit/209aa6295).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1728993600">- Drop rcFOO symlinks (PED-266)
- Drop usage of update-alternatives, but simplify installation of
  /usr/libexec/gst-install-plugins-helper as a direct symlink to
  pk-gstreamer-install.</changelog>
</package>
<package pkgid="2483540ef12cac9943f06a28984643757684a17c07bf1a602deff5935d6e7640dd6ecb5e73c34f4f271491989f291d989192dc0b4e1bef23a853887664d14761" name="PackageKit-branding-upstream" arch="noarch">
  <version epoch="0" ver="1.2.8" rel="4.1"/>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1629460800">- Add PackageKit-zypp-fix-crash-with-empty-search-string.patch:
  zypp: Fix crash when search string is NULL (bsc#1179287,
  gh#hughsie/PackageKit/commit#21ccf49).</changelog>
  <changelog author="Stanislav Brabec &lt;sbrabec@suse.com&gt;" date="1631793600">- Remove obsolete translation-update-upstream support
  (jsc#SLE-21105).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1636113600">- Update to version 1.2.4:
  + Libraries:
  - Add specific error code when user declined interaction
  - Avoid spurious GObject::notify signal emissions
  - Correct 'cancellable' use in pk_client_repair_system_async()
  - Fix a leak on calling set_locale() a second time
  - Fix a possible use-after-free under pk_client_cancel_cb()
  - Improve thread safety on an operation cancellation
  + Backends:
  - dnf:
    . Read update information also when getting list of updates
    . Honor install_weak_deps=False if it is there
    . Use 'hy_query_get_advisory_pkgs', if available
  + New Features:
  - PkDetails: Add 'download-size' property
  - PkPackage: Add update severity property
  + Bugfixes:
  - Let the finish understand the 'cancelled' exit code
  - Make backends that use pk-backend-spawn work (#477)
  - Only set polkit interactive flag if method call has too
- Changes from version 1.2.3:
  + Backends:
  - alpm:
    . Add post transaction hook
    . Rename errno to alpm_err to avoid name clashes
  - aptcc: Auto-remove old kernels, unless configured otherwise
  - dnf: Add support for coercing upgrade to distupgrade
  - zypp:
    . Make sure pool is initialized at the beginning of some
    methods
    . Reset update mode after getting updates
  + Bugfixes:
  - Append to cron log instead of overwriting it
  - Cancel a transaction if calling Cancel fails or the daemon
    disappears
  - Do not crash when calling pk_dbus_get_uid() before D-Bus is
    setup
  - Fix all compiler warnings
  - Fix multilib conflicts in generated pk-enum-types.h
  - Free scheduler array correctly again
  - Remove large transaction size sanity check
- Drop patches fixed upstream:
  + PackageKit-zypp-cleanup-tmp-files.patch
  + PackageKit-zypp-reset-update-mode-after-get-updates.patch
  + PackageKit-dnf-Add-support-for-coercing-upgrade-to-distupgrade.patch
  + PackageKit-zypp-initialize-pool.patch
  + PackageKit-remove-transaction-size-limit.patch
  + PackageKit-cancel-transaction-if-daemon-disappears.patch
  + PackageKit-dnf-ignore-weak-deps.patch
- Add 505.patch: pk-offline: Add flags to D-Bus invoking methods.
  That's currently to be able to set whether the method should be
  interactive or not. The old functions call the methods as
  non-interactive.</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1636113601">- Add PackageKit-zypp-c++17.patch: Fix build failure when building
  with libzypp &gt; 17.28.5 and gcc &lt; 11
  (gh#hughsie/PackageKit/commit/1a6bb6ae6, bsc#1192349).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1637064000">- Rewrite prep phase to not use autopatch -M: SLE15/Leap15's RPM
  version does not support that syntax yet.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1637064001">- Apply all patches unconditonally: PackageKit-zypp-c++17.patch is
  merged in upstream git and thus does not justify to be
  conditionally applied.
- Switching back to autosetup, as this works without conditional
  patches.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1653048000">- Update to version 1.2.5:
  + Backends:
  - dnf:
    . Add support for autoremove flag when removing packages.
    . Searches by name and package details should be case
    insensitive.
    . Update appstream xml files if dnf_sack_add_repos() does
    the download.
  - zypp:
    . Add -std=c++1z cpp flags.
    . Fix crash when search string is NULL.
    . Fix package installation using undefined data.
  - Changes to alpm, apttcc, nix, and slack.
  + Bugfixes:
  - Install offline-update enablement symlink if Meson is new
    enough.
  - Move Wants= line for network-online.target.
  - Add flags to D-Bus offline invoking methods.
  - Properly handle allow-reinstall flag for installations.
  - Provide better error message if trying to install an
    installed package.
  - Wait until online to activate systemd service.
- Drop 505.patch, PackageKit-zypp-c++17.patch, and
  PackageKit-zypp-fix-crash-with-empty-search-string.patch: fixed
  upstream.</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1653566400">- Add PackageKit-zypp-locked-packages.patch: zypp: ignore locked
  packages(gh#hughsie/PackageKit#543, boo#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1656676800">- Add PackageKit-zypp-add-upgrade-system.patch: implement
  upgrade-system method(gh#hughsie/PackageKit/commit/930dd201b).</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1657368000">- Move the dbus-1 system.d file to /usr (bsc#1201347)</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1659528000">- Modified PackageKit.spec: bump libzypp dependency version to
  17.31.0.
- Add PackageKit-zypp-avoid-statuReset.patch: zypp: Avoid
  statuReset() on locked packages
  (gh#PackageKit/PackageKit/commit/dd1964255, bsc#1199895).
- Add PackageKit-zypp-disable-upgrade-system-in-sle.patch: zypp:
  Disable upgrade-system support in SLE
  (gh#PackageKit/PackageKit/commit/0fcd820c2).
- Add PackageKit-zypp-restore-pool-status-after-simulating-update.patch:
  zypp: restore pool status after simulating an update
  (gh#PackageKit/PackageKit/commit/2b61a6649, bsc#1199895).
- Add PackageKit-zypp-fix-is-tumbleweed-check.patch: zypp: build
  the pool before calling is_tumbleweed()
  (gh#PackageKit/PackageKit/commit/146890153).
- Add PackageKit-zypp-update-libzypp-dependency-version.patch:
  zypp: update libzypp dependency version
  (gh#PackageKit/PackageKit/commit/58c7c0285, bsc#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1662120000">- Add PackageKit-zypp-dont-refresh-before-searching.patch:
  zypp: Don't refresh repos before searching
  (gh#PackageKit/PackageKit/commit/58c7c0285, bsc#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1664193600">- Add PackageKit-zypp-dont-remove-locked-packages.patch: zypp:
  Check if packages are locked before removing
  (gh#PackageKit/PackageKit/commit/8649a07bc, bsc#1199895).
- Add PackageKit-zypp-add-repo-in-packageid.patch: zypp: add
  repository data in package id
  (gh#PackageKit/PackageKit/commit/8eb2ef0ae, bsc#1202585).
- Remove PackageKit-zypp-locked-packages.patch: reverted upstream
  (gh#PackageKit/PackageKit/commit/ed3e38043).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1673006400">- Add PackageKit-zypp-fix-ambiguous-filesystem-reference.patch:
  zypp: Fix ambiguous reference to 'filesystem' class
  (gh#PackageKit/PackageKit/commit/bb1409a71, bsc#1206687).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678708800">- Add PackageKit-fix-pkcon-permission.patch: trivial: Drop
  unnecessary x permission
  (gh#PackageKit/PackageKit/commit/47b7f97bc, bsc#1209138)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1689595200">- Add PackageKit-dynamic-export.patch: fix loading of modules when
  built using glib 2.70 (boo#1213309).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1699531200">- Update to version 1.2.8:
  + Libraries:
  - offline-updates:
    . Make package update list deduplication more efficient.
    . Add only one entry per package to 'offline-update-competed'
    file.
  - PkClient: Replace the GSimpleAsyncResult with the GTask API.
  - pk-client:
    . Fix use-before-set of PkProgress on cancellation.
    . Move cancellable disconnect to dispose.
    . Rework refcounting for PkClientState.
  + Backends: Changes to apt, dnf, PiSi and BSD backends.
- Changes from version 1.2.7:
  + New Features:
  - pkclient: Add an option to count download size with
    dependencies.
  - pk-transaction: Add support for getting the RemainingTime
    property.
  + Backends:
  - zypp: Fix ambiguous reference to 'filesystem' class.
  - Changes to dnf, apt, alpm backends.
- Changes from version 1.2.6:
  + New Features:
  - Expose transaction sender as read-only property on the bus.
  - pkmon: Display transaction sender binary name in log.
  - pk-transaction: Add Packages signal.
  - pk-transaction: Combine some D-Bus PropertiesChanged signal
    emissions.
  - pk-transaction: Add UpdateDetails signal.
  + Backends:
  - zypp:
    . implement upgrade-system method.
    . Clean up trailing whitespaces.
    . Avoid statuReset() on locked packages.
    . restore pool status after simulating an update.
    . Disable upgrade-system support in SLE.
    . build the pool before calling is_tumbleweed().
    . update libzypp dependency version.
    . Don't refresh repos before searching.
    . Check if packages are locked before removing.
    . add repository data in package id.
    . Remove trailing whitespace.
    + Changes to alpm, aptcc, apt, and nix backends.
- Rebase patches:
  + PackageKit-dnf-Add-support-for-AppStream-repodata-basenames-use.patch
  + PackageKit-dynamic-export.patch
  + PackageKit-zypp-disable-upgrade-system-in-sle.patch
- Drop upstream fixed patches:
  + PackageKit-zypp-add-repo-in-packageid.patch
  + PackageKit-zypp-add-upgrade-system.patch
  + PackageKit-zypp-avoid-statuReset.patch
  + PackageKit-zypp-dont-refresh-before-searching.patch
  + PackageKit-zypp-dont-remove-locked-packages.patch
  + PackageKit-zypp-fix-ambiguous-filesystem-reference.patch
  + PackageKit-zypp-fix-is-tumbleweed-check.patch
  + PackageKit-zypp-restore-pool-status-after-simulating-update.patch
  + PackageKit-zypp-update-libzypp-dependency-version.patch</changelog>
  <changelog author="Alynx Zhou &lt;alynx.zhou@suse.com&gt;" date="1704196800">- Add PackageKit-find-python-3-6.patch: Specify the Python version
  we need to build this package.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1709640000">- Drop baselibs.conf: the -32bit packages are no longer needed and
  have not been part of Tumbleweed for a while already (build for
  i586 only enabled in LegacyX86).</changelog>
  <changelog author="Alynx Zhou &lt;alynx.zhou@suse.com&gt;" date="1723550400">- Add PackageKit-mark-as-compulsory.patch: Prevent PackageKit from
  user uninstallable for most desktops (bsc#1226269).</changelog>
</package>
<package pkgid="9b8193e8a47a804020e9acb15f967e8a6c2c2504eda4efd44ec6844ad63c81024b5cd218e9232b26c5d879091c4eb7e5470d0fe1cc024f1ab7ba7eb44c019380" name="PackageKit-branding-upstream" arch="noarch">
  <version epoch="0" ver="1.2.8" rel="5.0.2.1.sr20240901"/>
  <changelog author="Stanislav Brabec &lt;sbrabec@suse.com&gt;" date="1631793600">- Remove obsolete translation-update-upstream support
  (jsc#SLE-21105).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1636113600">- Update to version 1.2.4:
  + Libraries:
  - Add specific error code when user declined interaction
  - Avoid spurious GObject::notify signal emissions
  - Correct 'cancellable' use in pk_client_repair_system_async()
  - Fix a leak on calling set_locale() a second time
  - Fix a possible use-after-free under pk_client_cancel_cb()
  - Improve thread safety on an operation cancellation
  + Backends:
  - dnf:
    . Read update information also when getting list of updates
    . Honor install_weak_deps=False if it is there
    . Use 'hy_query_get_advisory_pkgs', if available
  + New Features:
  - PkDetails: Add 'download-size' property
  - PkPackage: Add update severity property
  + Bugfixes:
  - Let the finish understand the 'cancelled' exit code
  - Make backends that use pk-backend-spawn work (#477)
  - Only set polkit interactive flag if method call has too
- Changes from version 1.2.3:
  + Backends:
  - alpm:
    . Add post transaction hook
    . Rename errno to alpm_err to avoid name clashes
  - aptcc: Auto-remove old kernels, unless configured otherwise
  - dnf: Add support for coercing upgrade to distupgrade
  - zypp:
    . Make sure pool is initialized at the beginning of some
    methods
    . Reset update mode after getting updates
  + Bugfixes:
  - Append to cron log instead of overwriting it
  - Cancel a transaction if calling Cancel fails or the daemon
    disappears
  - Do not crash when calling pk_dbus_get_uid() before D-Bus is
    setup
  - Fix all compiler warnings
  - Fix multilib conflicts in generated pk-enum-types.h
  - Free scheduler array correctly again
  - Remove large transaction size sanity check
- Drop patches fixed upstream:
  + PackageKit-zypp-cleanup-tmp-files.patch
  + PackageKit-zypp-reset-update-mode-after-get-updates.patch
  + PackageKit-dnf-Add-support-for-coercing-upgrade-to-distupgrade.patch
  + PackageKit-zypp-initialize-pool.patch
  + PackageKit-remove-transaction-size-limit.patch
  + PackageKit-cancel-transaction-if-daemon-disappears.patch
  + PackageKit-dnf-ignore-weak-deps.patch
- Add 505.patch: pk-offline: Add flags to D-Bus invoking methods.
  That's currently to be able to set whether the method should be
  interactive or not. The old functions call the methods as
  non-interactive.</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1636113601">- Add PackageKit-zypp-c++17.patch: Fix build failure when building
  with libzypp &gt; 17.28.5 and gcc &lt; 11
  (gh#hughsie/PackageKit/commit/1a6bb6ae6, bsc#1192349).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1637064000">- Rewrite prep phase to not use autopatch -M: SLE15/Leap15's RPM
  version does not support that syntax yet.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1637064001">- Apply all patches unconditonally: PackageKit-zypp-c++17.patch is
  merged in upstream git and thus does not justify to be
  conditionally applied.
- Switching back to autosetup, as this works without conditional
  patches.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1653048000">- Update to version 1.2.5:
  + Backends:
  - dnf:
    . Add support for autoremove flag when removing packages.
    . Searches by name and package details should be case
    insensitive.
    . Update appstream xml files if dnf_sack_add_repos() does
    the download.
  - zypp:
    . Add -std=c++1z cpp flags.
    . Fix crash when search string is NULL.
    . Fix package installation using undefined data.
  - Changes to alpm, apttcc, nix, and slack.
  + Bugfixes:
  - Install offline-update enablement symlink if Meson is new
    enough.
  - Move Wants= line for network-online.target.
  - Add flags to D-Bus offline invoking methods.
  - Properly handle allow-reinstall flag for installations.
  - Provide better error message if trying to install an
    installed package.
  - Wait until online to activate systemd service.
- Drop 505.patch, PackageKit-zypp-c++17.patch, and
  PackageKit-zypp-fix-crash-with-empty-search-string.patch: fixed
  upstream.</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1653566400">- Add PackageKit-zypp-locked-packages.patch: zypp: ignore locked
  packages(gh#hughsie/PackageKit#543, boo#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1656676800">- Add PackageKit-zypp-add-upgrade-system.patch: implement
  upgrade-system method(gh#hughsie/PackageKit/commit/930dd201b).</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1657368000">- Move the dbus-1 system.d file to /usr (bsc#1201347)</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1659528000">- Modified PackageKit.spec: bump libzypp dependency version to
  17.31.0.
- Add PackageKit-zypp-avoid-statuReset.patch: zypp: Avoid
  statuReset() on locked packages
  (gh#PackageKit/PackageKit/commit/dd1964255, bsc#1199895).
- Add PackageKit-zypp-disable-upgrade-system-in-sle.patch: zypp:
  Disable upgrade-system support in SLE
  (gh#PackageKit/PackageKit/commit/0fcd820c2).
- Add PackageKit-zypp-restore-pool-status-after-simulating-update.patch:
  zypp: restore pool status after simulating an update
  (gh#PackageKit/PackageKit/commit/2b61a6649, bsc#1199895).
- Add PackageKit-zypp-fix-is-tumbleweed-check.patch: zypp: build
  the pool before calling is_tumbleweed()
  (gh#PackageKit/PackageKit/commit/146890153).
- Add PackageKit-zypp-update-libzypp-dependency-version.patch:
  zypp: update libzypp dependency version
  (gh#PackageKit/PackageKit/commit/58c7c0285, bsc#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1662120000">- Add PackageKit-zypp-dont-refresh-before-searching.patch:
  zypp: Don't refresh repos before searching
  (gh#PackageKit/PackageKit/commit/58c7c0285, bsc#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1664193600">- Add PackageKit-zypp-dont-remove-locked-packages.patch: zypp:
  Check if packages are locked before removing
  (gh#PackageKit/PackageKit/commit/8649a07bc, bsc#1199895).
- Add PackageKit-zypp-add-repo-in-packageid.patch: zypp: add
  repository data in package id
  (gh#PackageKit/PackageKit/commit/8eb2ef0ae, bsc#1202585).
- Remove PackageKit-zypp-locked-packages.patch: reverted upstream
  (gh#PackageKit/PackageKit/commit/ed3e38043).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1673006400">- Add PackageKit-zypp-fix-ambiguous-filesystem-reference.patch:
  zypp: Fix ambiguous reference to 'filesystem' class
  (gh#PackageKit/PackageKit/commit/bb1409a71, bsc#1206687).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678708800">- Add PackageKit-fix-pkcon-permission.patch: trivial: Drop
  unnecessary x permission
  (gh#PackageKit/PackageKit/commit/47b7f97bc, bsc#1209138)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1689595200">- Add PackageKit-dynamic-export.patch: fix loading of modules when
  built using glib 2.70 (boo#1213309).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1699531200">- Update to version 1.2.8:
  + Libraries:
  - offline-updates:
    . Make package update list deduplication more efficient.
    . Add only one entry per package to 'offline-update-competed'
    file.
  - PkClient: Replace the GSimpleAsyncResult with the GTask API.
  - pk-client:
    . Fix use-before-set of PkProgress on cancellation.
    . Move cancellable disconnect to dispose.
    . Rework refcounting for PkClientState.
  + Backends: Changes to apt, dnf, PiSi and BSD backends.
- Changes from version 1.2.7:
  + New Features:
  - pkclient: Add an option to count download size with
    dependencies.
  - pk-transaction: Add support for getting the RemainingTime
    property.
  + Backends:
  - zypp: Fix ambiguous reference to 'filesystem' class.
  - Changes to dnf, apt, alpm backends.
- Changes from version 1.2.6:
  + New Features:
  - Expose transaction sender as read-only property on the bus.
  - pkmon: Display transaction sender binary name in log.
  - pk-transaction: Add Packages signal.
  - pk-transaction: Combine some D-Bus PropertiesChanged signal
    emissions.
  - pk-transaction: Add UpdateDetails signal.
  + Backends:
  - zypp:
    . implement upgrade-system method.
    . Clean up trailing whitespaces.
    . Avoid statuReset() on locked packages.
    . restore pool status after simulating an update.
    . Disable upgrade-system support in SLE.
    . build the pool before calling is_tumbleweed().
    . update libzypp dependency version.
    . Don't refresh repos before searching.
    . Check if packages are locked before removing.
    . add repository data in package id.
    . Remove trailing whitespace.
    + Changes to alpm, aptcc, apt, and nix backends.
- Rebase patches:
  + PackageKit-dnf-Add-support-for-AppStream-repodata-basenames-use.patch
  + PackageKit-dynamic-export.patch
  + PackageKit-zypp-disable-upgrade-system-in-sle.patch
- Drop upstream fixed patches:
  + PackageKit-zypp-add-repo-in-packageid.patch
  + PackageKit-zypp-add-upgrade-system.patch
  + PackageKit-zypp-avoid-statuReset.patch
  + PackageKit-zypp-dont-refresh-before-searching.patch
  + PackageKit-zypp-dont-remove-locked-packages.patch
  + PackageKit-zypp-fix-ambiguous-filesystem-reference.patch
  + PackageKit-zypp-fix-is-tumbleweed-check.patch
  + PackageKit-zypp-restore-pool-status-after-simulating-update.patch
  + PackageKit-zypp-update-libzypp-dependency-version.patch</changelog>
  <changelog author="Alynx Zhou &lt;alynx.zhou@suse.com&gt;" date="1704196800">- Add PackageKit-find-python-3-6.patch: Specify the Python version
  we need to build this package.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1709640000">- Drop baselibs.conf: the -32bit packages are no longer needed and
  have not been part of Tumbleweed for a while already (build for
  i586 only enabled in LegacyX86).</changelog>
  <changelog author="Alynx Zhou &lt;alynx.zhou@suse.com&gt;" date="1723550400">- Add PackageKit-mark-as-compulsory.patch: Prevent PackageKit from
  user uninstallable for most desktops (bsc#1226269).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1726142400">- Add PackageKit-zypp-dont-install-updateCandidateObj.patch:
  zypp: Mark the correct packages to-be-installed (bsc#1227389,
  gh#PackageKit/PackageKit/commit/209aa6295).</changelog>
</package>
<package pkgid="87f9947314270a3f59b4124039acb752d612ff71ccb735df23c7e70b6e826b45dd031c5a3202a5a77329447f2bd7726db812a103c9f37e21a8818f6df4daa7d9" name="PackageKit-branding-upstream" arch="noarch">
  <version epoch="0" ver="1.2.8" rel="5.1"/>
  <changelog author="Stanislav Brabec &lt;sbrabec@suse.com&gt;" date="1631793600">- Remove obsolete translation-update-upstream support
  (jsc#SLE-21105).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1636113600">- Update to version 1.2.4:
  + Libraries:
  - Add specific error code when user declined interaction
  - Avoid spurious GObject::notify signal emissions
  - Correct 'cancellable' use in pk_client_repair_system_async()
  - Fix a leak on calling set_locale() a second time
  - Fix a possible use-after-free under pk_client_cancel_cb()
  - Improve thread safety on an operation cancellation
  + Backends:
  - dnf:
    . Read update information also when getting list of updates
    . Honor install_weak_deps=False if it is there
    . Use 'hy_query_get_advisory_pkgs', if available
  + New Features:
  - PkDetails: Add 'download-size' property
  - PkPackage: Add update severity property
  + Bugfixes:
  - Let the finish understand the 'cancelled' exit code
  - Make backends that use pk-backend-spawn work (#477)
  - Only set polkit interactive flag if method call has too
- Changes from version 1.2.3:
  + Backends:
  - alpm:
    . Add post transaction hook
    . Rename errno to alpm_err to avoid name clashes
  - aptcc: Auto-remove old kernels, unless configured otherwise
  - dnf: Add support for coercing upgrade to distupgrade
  - zypp:
    . Make sure pool is initialized at the beginning of some
    methods
    . Reset update mode after getting updates
  + Bugfixes:
  - Append to cron log instead of overwriting it
  - Cancel a transaction if calling Cancel fails or the daemon
    disappears
  - Do not crash when calling pk_dbus_get_uid() before D-Bus is
    setup
  - Fix all compiler warnings
  - Fix multilib conflicts in generated pk-enum-types.h
  - Free scheduler array correctly again
  - Remove large transaction size sanity check
- Drop patches fixed upstream:
  + PackageKit-zypp-cleanup-tmp-files.patch
  + PackageKit-zypp-reset-update-mode-after-get-updates.patch
  + PackageKit-dnf-Add-support-for-coercing-upgrade-to-distupgrade.patch
  + PackageKit-zypp-initialize-pool.patch
  + PackageKit-remove-transaction-size-limit.patch
  + PackageKit-cancel-transaction-if-daemon-disappears.patch
  + PackageKit-dnf-ignore-weak-deps.patch
- Add 505.patch: pk-offline: Add flags to D-Bus invoking methods.
  That's currently to be able to set whether the method should be
  interactive or not. The old functions call the methods as
  non-interactive.</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1636113601">- Add PackageKit-zypp-c++17.patch: Fix build failure when building
  with libzypp &gt; 17.28.5 and gcc &lt; 11
  (gh#hughsie/PackageKit/commit/1a6bb6ae6, bsc#1192349).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1637064000">- Rewrite prep phase to not use autopatch -M: SLE15/Leap15's RPM
  version does not support that syntax yet.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1637064001">- Apply all patches unconditonally: PackageKit-zypp-c++17.patch is
  merged in upstream git and thus does not justify to be
  conditionally applied.
- Switching back to autosetup, as this works without conditional
  patches.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1653048000">- Update to version 1.2.5:
  + Backends:
  - dnf:
    . Add support for autoremove flag when removing packages.
    . Searches by name and package details should be case
    insensitive.
    . Update appstream xml files if dnf_sack_add_repos() does
    the download.
  - zypp:
    . Add -std=c++1z cpp flags.
    . Fix crash when search string is NULL.
    . Fix package installation using undefined data.
  - Changes to alpm, apttcc, nix, and slack.
  + Bugfixes:
  - Install offline-update enablement symlink if Meson is new
    enough.
  - Move Wants= line for network-online.target.
  - Add flags to D-Bus offline invoking methods.
  - Properly handle allow-reinstall flag for installations.
  - Provide better error message if trying to install an
    installed package.
  - Wait until online to activate systemd service.
- Drop 505.patch, PackageKit-zypp-c++17.patch, and
  PackageKit-zypp-fix-crash-with-empty-search-string.patch: fixed
  upstream.</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1653566400">- Add PackageKit-zypp-locked-packages.patch: zypp: ignore locked
  packages(gh#hughsie/PackageKit#543, boo#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1656676800">- Add PackageKit-zypp-add-upgrade-system.patch: implement
  upgrade-system method(gh#hughsie/PackageKit/commit/930dd201b).</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1657368000">- Move the dbus-1 system.d file to /usr (bsc#1201347)</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1659528000">- Modified PackageKit.spec: bump libzypp dependency version to
  17.31.0.
- Add PackageKit-zypp-avoid-statuReset.patch: zypp: Avoid
  statuReset() on locked packages
  (gh#PackageKit/PackageKit/commit/dd1964255, bsc#1199895).
- Add PackageKit-zypp-disable-upgrade-system-in-sle.patch: zypp:
  Disable upgrade-system support in SLE
  (gh#PackageKit/PackageKit/commit/0fcd820c2).
- Add PackageKit-zypp-restore-pool-status-after-simulating-update.patch:
  zypp: restore pool status after simulating an update
  (gh#PackageKit/PackageKit/commit/2b61a6649, bsc#1199895).
- Add PackageKit-zypp-fix-is-tumbleweed-check.patch: zypp: build
  the pool before calling is_tumbleweed()
  (gh#PackageKit/PackageKit/commit/146890153).
- Add PackageKit-zypp-update-libzypp-dependency-version.patch:
  zypp: update libzypp dependency version
  (gh#PackageKit/PackageKit/commit/58c7c0285, bsc#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1662120000">- Add PackageKit-zypp-dont-refresh-before-searching.patch:
  zypp: Don't refresh repos before searching
  (gh#PackageKit/PackageKit/commit/58c7c0285, bsc#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1664193600">- Add PackageKit-zypp-dont-remove-locked-packages.patch: zypp:
  Check if packages are locked before removing
  (gh#PackageKit/PackageKit/commit/8649a07bc, bsc#1199895).
- Add PackageKit-zypp-add-repo-in-packageid.patch: zypp: add
  repository data in package id
  (gh#PackageKit/PackageKit/commit/8eb2ef0ae, bsc#1202585).
- Remove PackageKit-zypp-locked-packages.patch: reverted upstream
  (gh#PackageKit/PackageKit/commit/ed3e38043).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1673006400">- Add PackageKit-zypp-fix-ambiguous-filesystem-reference.patch:
  zypp: Fix ambiguous reference to 'filesystem' class
  (gh#PackageKit/PackageKit/commit/bb1409a71, bsc#1206687).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678708800">- Add PackageKit-fix-pkcon-permission.patch: trivial: Drop
  unnecessary x permission
  (gh#PackageKit/PackageKit/commit/47b7f97bc, bsc#1209138)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1689595200">- Add PackageKit-dynamic-export.patch: fix loading of modules when
  built using glib 2.70 (boo#1213309).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1699531200">- Update to version 1.2.8:
  + Libraries:
  - offline-updates:
    . Make package update list deduplication more efficient.
    . Add only one entry per package to 'offline-update-competed'
    file.
  - PkClient: Replace the GSimpleAsyncResult with the GTask API.
  - pk-client:
    . Fix use-before-set of PkProgress on cancellation.
    . Move cancellable disconnect to dispose.
    . Rework refcounting for PkClientState.
  + Backends: Changes to apt, dnf, PiSi and BSD backends.
- Changes from version 1.2.7:
  + New Features:
  - pkclient: Add an option to count download size with
    dependencies.
  - pk-transaction: Add support for getting the RemainingTime
    property.
  + Backends:
  - zypp: Fix ambiguous reference to 'filesystem' class.
  - Changes to dnf, apt, alpm backends.
- Changes from version 1.2.6:
  + New Features:
  - Expose transaction sender as read-only property on the bus.
  - pkmon: Display transaction sender binary name in log.
  - pk-transaction: Add Packages signal.
  - pk-transaction: Combine some D-Bus PropertiesChanged signal
    emissions.
  - pk-transaction: Add UpdateDetails signal.
  + Backends:
  - zypp:
    . implement upgrade-system method.
    . Clean up trailing whitespaces.
    . Avoid statuReset() on locked packages.
    . restore pool status after simulating an update.
    . Disable upgrade-system support in SLE.
    . build the pool before calling is_tumbleweed().
    . update libzypp dependency version.
    . Don't refresh repos before searching.
    . Check if packages are locked before removing.
    . add repository data in package id.
    . Remove trailing whitespace.
    + Changes to alpm, aptcc, apt, and nix backends.
- Rebase patches:
  + PackageKit-dnf-Add-support-for-AppStream-repodata-basenames-use.patch
  + PackageKit-dynamic-export.patch
  + PackageKit-zypp-disable-upgrade-system-in-sle.patch
- Drop upstream fixed patches:
  + PackageKit-zypp-add-repo-in-packageid.patch
  + PackageKit-zypp-add-upgrade-system.patch
  + PackageKit-zypp-avoid-statuReset.patch
  + PackageKit-zypp-dont-refresh-before-searching.patch
  + PackageKit-zypp-dont-remove-locked-packages.patch
  + PackageKit-zypp-fix-ambiguous-filesystem-reference.patch
  + PackageKit-zypp-fix-is-tumbleweed-check.patch
  + PackageKit-zypp-restore-pool-status-after-simulating-update.patch
  + PackageKit-zypp-update-libzypp-dependency-version.patch</changelog>
  <changelog author="Alynx Zhou &lt;alynx.zhou@suse.com&gt;" date="1704196800">- Add PackageKit-find-python-3-6.patch: Specify the Python version
  we need to build this package.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1709640000">- Drop baselibs.conf: the -32bit packages are no longer needed and
  have not been part of Tumbleweed for a while already (build for
  i586 only enabled in LegacyX86).</changelog>
  <changelog author="Alynx Zhou &lt;alynx.zhou@suse.com&gt;" date="1723550400">- Add PackageKit-mark-as-compulsory.patch: Prevent PackageKit from
  user uninstallable for most desktops (bsc#1226269).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1726142400">- Add PackageKit-zypp-dont-install-updateCandidateObj.patch:
  zypp: Mark the correct packages to-be-installed (bsc#1227389,
  gh#PackageKit/PackageKit/commit/209aa6295).</changelog>
</package>
<package pkgid="22e0bc9a072ee2d4ae6f5bcc4ee9515ab7b87d2ab2fd519775d3c9571cb1f2d57ec9c760a3f62bca5230163180391026574efe10c4bab4b1af7054c1656582eb" name="PackageKit-branding-upstream" arch="noarch">
  <version epoch="0" ver="1.2.8" rel="6.1"/>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1636113600">- Update to version 1.2.4:
  + Libraries:
  - Add specific error code when user declined interaction
  - Avoid spurious GObject::notify signal emissions
  - Correct 'cancellable' use in pk_client_repair_system_async()
  - Fix a leak on calling set_locale() a second time
  - Fix a possible use-after-free under pk_client_cancel_cb()
  - Improve thread safety on an operation cancellation
  + Backends:
  - dnf:
    . Read update information also when getting list of updates
    . Honor install_weak_deps=False if it is there
    . Use 'hy_query_get_advisory_pkgs', if available
  + New Features:
  - PkDetails: Add 'download-size' property
  - PkPackage: Add update severity property
  + Bugfixes:
  - Let the finish understand the 'cancelled' exit code
  - Make backends that use pk-backend-spawn work (#477)
  - Only set polkit interactive flag if method call has too
- Changes from version 1.2.3:
  + Backends:
  - alpm:
    . Add post transaction hook
    . Rename errno to alpm_err to avoid name clashes
  - aptcc: Auto-remove old kernels, unless configured otherwise
  - dnf: Add support for coercing upgrade to distupgrade
  - zypp:
    . Make sure pool is initialized at the beginning of some
    methods
    . Reset update mode after getting updates
  + Bugfixes:
  - Append to cron log instead of overwriting it
  - Cancel a transaction if calling Cancel fails or the daemon
    disappears
  - Do not crash when calling pk_dbus_get_uid() before D-Bus is
    setup
  - Fix all compiler warnings
  - Fix multilib conflicts in generated pk-enum-types.h
  - Free scheduler array correctly again
  - Remove large transaction size sanity check
- Drop patches fixed upstream:
  + PackageKit-zypp-cleanup-tmp-files.patch
  + PackageKit-zypp-reset-update-mode-after-get-updates.patch
  + PackageKit-dnf-Add-support-for-coercing-upgrade-to-distupgrade.patch
  + PackageKit-zypp-initialize-pool.patch
  + PackageKit-remove-transaction-size-limit.patch
  + PackageKit-cancel-transaction-if-daemon-disappears.patch
  + PackageKit-dnf-ignore-weak-deps.patch
- Add 505.patch: pk-offline: Add flags to D-Bus invoking methods.
  That's currently to be able to set whether the method should be
  interactive or not. The old functions call the methods as
  non-interactive.</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1636113601">- Add PackageKit-zypp-c++17.patch: Fix build failure when building
  with libzypp &gt; 17.28.5 and gcc &lt; 11
  (gh#hughsie/PackageKit/commit/1a6bb6ae6, bsc#1192349).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1637064000">- Rewrite prep phase to not use autopatch -M: SLE15/Leap15's RPM
  version does not support that syntax yet.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1637064001">- Apply all patches unconditonally: PackageKit-zypp-c++17.patch is
  merged in upstream git and thus does not justify to be
  conditionally applied.
- Switching back to autosetup, as this works without conditional
  patches.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1653048000">- Update to version 1.2.5:
  + Backends:
  - dnf:
    . Add support for autoremove flag when removing packages.
    . Searches by name and package details should be case
    insensitive.
    . Update appstream xml files if dnf_sack_add_repos() does
    the download.
  - zypp:
    . Add -std=c++1z cpp flags.
    . Fix crash when search string is NULL.
    . Fix package installation using undefined data.
  - Changes to alpm, apttcc, nix, and slack.
  + Bugfixes:
  - Install offline-update enablement symlink if Meson is new
    enough.
  - Move Wants= line for network-online.target.
  - Add flags to D-Bus offline invoking methods.
  - Properly handle allow-reinstall flag for installations.
  - Provide better error message if trying to install an
    installed package.
  - Wait until online to activate systemd service.
- Drop 505.patch, PackageKit-zypp-c++17.patch, and
  PackageKit-zypp-fix-crash-with-empty-search-string.patch: fixed
  upstream.</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1653566400">- Add PackageKit-zypp-locked-packages.patch: zypp: ignore locked
  packages(gh#hughsie/PackageKit#543, boo#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1656676800">- Add PackageKit-zypp-add-upgrade-system.patch: implement
  upgrade-system method(gh#hughsie/PackageKit/commit/930dd201b).</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1657368000">- Move the dbus-1 system.d file to /usr (bsc#1201347)</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1659528000">- Modified PackageKit.spec: bump libzypp dependency version to
  17.31.0.
- Add PackageKit-zypp-avoid-statuReset.patch: zypp: Avoid
  statuReset() on locked packages
  (gh#PackageKit/PackageKit/commit/dd1964255, bsc#1199895).
- Add PackageKit-zypp-disable-upgrade-system-in-sle.patch: zypp:
  Disable upgrade-system support in SLE
  (gh#PackageKit/PackageKit/commit/0fcd820c2).
- Add PackageKit-zypp-restore-pool-status-after-simulating-update.patch:
  zypp: restore pool status after simulating an update
  (gh#PackageKit/PackageKit/commit/2b61a6649, bsc#1199895).
- Add PackageKit-zypp-fix-is-tumbleweed-check.patch: zypp: build
  the pool before calling is_tumbleweed()
  (gh#PackageKit/PackageKit/commit/146890153).
- Add PackageKit-zypp-update-libzypp-dependency-version.patch:
  zypp: update libzypp dependency version
  (gh#PackageKit/PackageKit/commit/58c7c0285, bsc#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1662120000">- Add PackageKit-zypp-dont-refresh-before-searching.patch:
  zypp: Don't refresh repos before searching
  (gh#PackageKit/PackageKit/commit/58c7c0285, bsc#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1664193600">- Add PackageKit-zypp-dont-remove-locked-packages.patch: zypp:
  Check if packages are locked before removing
  (gh#PackageKit/PackageKit/commit/8649a07bc, bsc#1199895).
- Add PackageKit-zypp-add-repo-in-packageid.patch: zypp: add
  repository data in package id
  (gh#PackageKit/PackageKit/commit/8eb2ef0ae, bsc#1202585).
- Remove PackageKit-zypp-locked-packages.patch: reverted upstream
  (gh#PackageKit/PackageKit/commit/ed3e38043).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1673006400">- Add PackageKit-zypp-fix-ambiguous-filesystem-reference.patch:
  zypp: Fix ambiguous reference to 'filesystem' class
  (gh#PackageKit/PackageKit/commit/bb1409a71, bsc#1206687).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678708800">- Add PackageKit-fix-pkcon-permission.patch: trivial: Drop
  unnecessary x permission
  (gh#PackageKit/PackageKit/commit/47b7f97bc, bsc#1209138)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1689595200">- Add PackageKit-dynamic-export.patch: fix loading of modules when
  built using glib 2.70 (boo#1213309).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1699531200">- Update to version 1.2.8:
  + Libraries:
  - offline-updates:
    . Make package update list deduplication more efficient.
    . Add only one entry per package to 'offline-update-competed'
    file.
  - PkClient: Replace the GSimpleAsyncResult with the GTask API.
  - pk-client:
    . Fix use-before-set of PkProgress on cancellation.
    . Move cancellable disconnect to dispose.
    . Rework refcounting for PkClientState.
  + Backends: Changes to apt, dnf, PiSi and BSD backends.
- Changes from version 1.2.7:
  + New Features:
  - pkclient: Add an option to count download size with
    dependencies.
  - pk-transaction: Add support for getting the RemainingTime
    property.
  + Backends:
  - zypp: Fix ambiguous reference to 'filesystem' class.
  - Changes to dnf, apt, alpm backends.
- Changes from version 1.2.6:
  + New Features:
  - Expose transaction sender as read-only property on the bus.
  - pkmon: Display transaction sender binary name in log.
  - pk-transaction: Add Packages signal.
  - pk-transaction: Combine some D-Bus PropertiesChanged signal
    emissions.
  - pk-transaction: Add UpdateDetails signal.
  + Backends:
  - zypp:
    . implement upgrade-system method.
    . Clean up trailing whitespaces.
    . Avoid statuReset() on locked packages.
    . restore pool status after simulating an update.
    . Disable upgrade-system support in SLE.
    . build the pool before calling is_tumbleweed().
    . update libzypp dependency version.
    . Don't refresh repos before searching.
    . Check if packages are locked before removing.
    . add repository data in package id.
    . Remove trailing whitespace.
    + Changes to alpm, aptcc, apt, and nix backends.
- Rebase patches:
  + PackageKit-dnf-Add-support-for-AppStream-repodata-basenames-use.patch
  + PackageKit-dynamic-export.patch
  + PackageKit-zypp-disable-upgrade-system-in-sle.patch
- Drop upstream fixed patches:
  + PackageKit-zypp-add-repo-in-packageid.patch
  + PackageKit-zypp-add-upgrade-system.patch
  + PackageKit-zypp-avoid-statuReset.patch
  + PackageKit-zypp-dont-refresh-before-searching.patch
  + PackageKit-zypp-dont-remove-locked-packages.patch
  + PackageKit-zypp-fix-ambiguous-filesystem-reference.patch
  + PackageKit-zypp-fix-is-tumbleweed-check.patch
  + PackageKit-zypp-restore-pool-status-after-simulating-update.patch
  + PackageKit-zypp-update-libzypp-dependency-version.patch</changelog>
  <changelog author="Alynx Zhou &lt;alynx.zhou@suse.com&gt;" date="1704196800">- Add PackageKit-find-python-3-6.patch: Specify the Python version
  we need to build this package.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1709640000">- Drop baselibs.conf: the -32bit packages are no longer needed and
  have not been part of Tumbleweed for a while already (build for
  i586 only enabled in LegacyX86).</changelog>
  <changelog author="Alynx Zhou &lt;alynx.zhou@suse.com&gt;" date="1723550400">- Add PackageKit-mark-as-compulsory.patch: Prevent PackageKit from
  user uninstallable for most desktops (bsc#1226269).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1726142400">- Add PackageKit-zypp-dont-install-updateCandidateObj.patch:
  zypp: Mark the correct packages to-be-installed (bsc#1227389,
  gh#PackageKit/PackageKit/commit/209aa6295).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1728993600">- Drop rcFOO symlinks (PED-266)
- Drop usage of update-alternatives, but simplify installation of
  /usr/libexec/gst-install-plugins-helper as a direct symlink to
  pk-gstreamer-install.</changelog>
</package>
<package pkgid="5b8ebd1cb94b7f62cc24c17e6aaaa8e7d04726888766e6a7f4a5e83e242baef6fda6665ca4f14ebba7a35ce2548a117d31f8c7bf38e941b1888ade14578ce825" name="PackageKit-debuginfo" arch="x86_64">
  <version epoch="0" ver="1.2.8" rel="4.1"/>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1629460800">- Add PackageKit-zypp-fix-crash-with-empty-search-string.patch:
  zypp: Fix crash when search string is NULL (bsc#1179287,
  gh#hughsie/PackageKit/commit#21ccf49).</changelog>
  <changelog author="Stanislav Brabec &lt;sbrabec@suse.com&gt;" date="1631793600">- Remove obsolete translation-update-upstream support
  (jsc#SLE-21105).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1636113600">- Update to version 1.2.4:
  + Libraries:
  - Add specific error code when user declined interaction
  - Avoid spurious GObject::notify signal emissions
  - Correct 'cancellable' use in pk_client_repair_system_async()
  - Fix a leak on calling set_locale() a second time
  - Fix a possible use-after-free under pk_client_cancel_cb()
  - Improve thread safety on an operation cancellation
  + Backends:
  - dnf:
    . Read update information also when getting list of updates
    . Honor install_weak_deps=False if it is there
    . Use 'hy_query_get_advisory_pkgs', if available
  + New Features:
  - PkDetails: Add 'download-size' property
  - PkPackage: Add update severity property
  + Bugfixes:
  - Let the finish understand the 'cancelled' exit code
  - Make backends that use pk-backend-spawn work (#477)
  - Only set polkit interactive flag if method call has too
- Changes from version 1.2.3:
  + Backends:
  - alpm:
    . Add post transaction hook
    . Rename errno to alpm_err to avoid name clashes
  - aptcc: Auto-remove old kernels, unless configured otherwise
  - dnf: Add support for coercing upgrade to distupgrade
  - zypp:
    . Make sure pool is initialized at the beginning of some
    methods
    . Reset update mode after getting updates
  + Bugfixes:
  - Append to cron log instead of overwriting it
  - Cancel a transaction if calling Cancel fails or the daemon
    disappears
  - Do not crash when calling pk_dbus_get_uid() before D-Bus is
    setup
  - Fix all compiler warnings
  - Fix multilib conflicts in generated pk-enum-types.h
  - Free scheduler array correctly again
  - Remove large transaction size sanity check
- Drop patches fixed upstream:
  + PackageKit-zypp-cleanup-tmp-files.patch
  + PackageKit-zypp-reset-update-mode-after-get-updates.patch
  + PackageKit-dnf-Add-support-for-coercing-upgrade-to-distupgrade.patch
  + PackageKit-zypp-initialize-pool.patch
  + PackageKit-remove-transaction-size-limit.patch
  + PackageKit-cancel-transaction-if-daemon-disappears.patch
  + PackageKit-dnf-ignore-weak-deps.patch
- Add 505.patch: pk-offline: Add flags to D-Bus invoking methods.
  That's currently to be able to set whether the method should be
  interactive or not. The old functions call the methods as
  non-interactive.</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1636113601">- Add PackageKit-zypp-c++17.patch: Fix build failure when building
  with libzypp &gt; 17.28.5 and gcc &lt; 11
  (gh#hughsie/PackageKit/commit/1a6bb6ae6, bsc#1192349).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1637064000">- Rewrite prep phase to not use autopatch -M: SLE15/Leap15's RPM
  version does not support that syntax yet.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1637064001">- Apply all patches unconditonally: PackageKit-zypp-c++17.patch is
  merged in upstream git and thus does not justify to be
  conditionally applied.
- Switching back to autosetup, as this works without conditional
  patches.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1653048000">- Update to version 1.2.5:
  + Backends:
  - dnf:
    . Add support for autoremove flag when removing packages.
    . Searches by name and package details should be case
    insensitive.
    . Update appstream xml files if dnf_sack_add_repos() does
    the download.
  - zypp:
    . Add -std=c++1z cpp flags.
    . Fix crash when search string is NULL.
    . Fix package installation using undefined data.
  - Changes to alpm, apttcc, nix, and slack.
  + Bugfixes:
  - Install offline-update enablement symlink if Meson is new
    enough.
  - Move Wants= line for network-online.target.
  - Add flags to D-Bus offline invoking methods.
  - Properly handle allow-reinstall flag for installations.
  - Provide better error message if trying to install an
    installed package.
  - Wait until online to activate systemd service.
- Drop 505.patch, PackageKit-zypp-c++17.patch, and
  PackageKit-zypp-fix-crash-with-empty-search-string.patch: fixed
  upstream.</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1653566400">- Add PackageKit-zypp-locked-packages.patch: zypp: ignore locked
  packages(gh#hughsie/PackageKit#543, boo#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1656676800">- Add PackageKit-zypp-add-upgrade-system.patch: implement
  upgrade-system method(gh#hughsie/PackageKit/commit/930dd201b).</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1657368000">- Move the dbus-1 system.d file to /usr (bsc#1201347)</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1659528000">- Modified PackageKit.spec: bump libzypp dependency version to
  17.31.0.
- Add PackageKit-zypp-avoid-statuReset.patch: zypp: Avoid
  statuReset() on locked packages
  (gh#PackageKit/PackageKit/commit/dd1964255, bsc#1199895).
- Add PackageKit-zypp-disable-upgrade-system-in-sle.patch: zypp:
  Disable upgrade-system support in SLE
  (gh#PackageKit/PackageKit/commit/0fcd820c2).
- Add PackageKit-zypp-restore-pool-status-after-simulating-update.patch:
  zypp: restore pool status after simulating an update
  (gh#PackageKit/PackageKit/commit/2b61a6649, bsc#1199895).
- Add PackageKit-zypp-fix-is-tumbleweed-check.patch: zypp: build
  the pool before calling is_tumbleweed()
  (gh#PackageKit/PackageKit/commit/146890153).
- Add PackageKit-zypp-update-libzypp-dependency-version.patch:
  zypp: update libzypp dependency version
  (gh#PackageKit/PackageKit/commit/58c7c0285, bsc#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1662120000">- Add PackageKit-zypp-dont-refresh-before-searching.patch:
  zypp: Don't refresh repos before searching
  (gh#PackageKit/PackageKit/commit/58c7c0285, bsc#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1664193600">- Add PackageKit-zypp-dont-remove-locked-packages.patch: zypp:
  Check if packages are locked before removing
  (gh#PackageKit/PackageKit/commit/8649a07bc, bsc#1199895).
- Add PackageKit-zypp-add-repo-in-packageid.patch: zypp: add
  repository data in package id
  (gh#PackageKit/PackageKit/commit/8eb2ef0ae, bsc#1202585).
- Remove PackageKit-zypp-locked-packages.patch: reverted upstream
  (gh#PackageKit/PackageKit/commit/ed3e38043).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1673006400">- Add PackageKit-zypp-fix-ambiguous-filesystem-reference.patch:
  zypp: Fix ambiguous reference to 'filesystem' class
  (gh#PackageKit/PackageKit/commit/bb1409a71, bsc#1206687).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678708800">- Add PackageKit-fix-pkcon-permission.patch: trivial: Drop
  unnecessary x permission
  (gh#PackageKit/PackageKit/commit/47b7f97bc, bsc#1209138)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1689595200">- Add PackageKit-dynamic-export.patch: fix loading of modules when
  built using glib 2.70 (boo#1213309).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1699531200">- Update to version 1.2.8:
  + Libraries:
  - offline-updates:
    . Make package update list deduplication more efficient.
    . Add only one entry per package to 'offline-update-competed'
    file.
  - PkClient: Replace the GSimpleAsyncResult with the GTask API.
  - pk-client:
    . Fix use-before-set of PkProgress on cancellation.
    . Move cancellable disconnect to dispose.
    . Rework refcounting for PkClientState.
  + Backends: Changes to apt, dnf, PiSi and BSD backends.
- Changes from version 1.2.7:
  + New Features:
  - pkclient: Add an option to count download size with
    dependencies.
  - pk-transaction: Add support for getting the RemainingTime
    property.
  + Backends:
  - zypp: Fix ambiguous reference to 'filesystem' class.
  - Changes to dnf, apt, alpm backends.
- Changes from version 1.2.6:
  + New Features:
  - Expose transaction sender as read-only property on the bus.
  - pkmon: Display transaction sender binary name in log.
  - pk-transaction: Add Packages signal.
  - pk-transaction: Combine some D-Bus PropertiesChanged signal
    emissions.
  - pk-transaction: Add UpdateDetails signal.
  + Backends:
  - zypp:
    . implement upgrade-system method.
    . Clean up trailing whitespaces.
    . Avoid statuReset() on locked packages.
    . restore pool status after simulating an update.
    . Disable upgrade-system support in SLE.
    . build the pool before calling is_tumbleweed().
    . update libzypp dependency version.
    . Don't refresh repos before searching.
    . Check if packages are locked before removing.
    . add repository data in package id.
    . Remove trailing whitespace.
    + Changes to alpm, aptcc, apt, and nix backends.
- Rebase patches:
  + PackageKit-dnf-Add-support-for-AppStream-repodata-basenames-use.patch
  + PackageKit-dynamic-export.patch
  + PackageKit-zypp-disable-upgrade-system-in-sle.patch
- Drop upstream fixed patches:
  + PackageKit-zypp-add-repo-in-packageid.patch
  + PackageKit-zypp-add-upgrade-system.patch
  + PackageKit-zypp-avoid-statuReset.patch
  + PackageKit-zypp-dont-refresh-before-searching.patch
  + PackageKit-zypp-dont-remove-locked-packages.patch
  + PackageKit-zypp-fix-ambiguous-filesystem-reference.patch
  + PackageKit-zypp-fix-is-tumbleweed-check.patch
  + PackageKit-zypp-restore-pool-status-after-simulating-update.patch
  + PackageKit-zypp-update-libzypp-dependency-version.patch</changelog>
  <changelog author="Alynx Zhou &lt;alynx.zhou@suse.com&gt;" date="1704196800">- Add PackageKit-find-python-3-6.patch: Specify the Python version
  we need to build this package.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1709640000">- Drop baselibs.conf: the -32bit packages are no longer needed and
  have not been part of Tumbleweed for a while already (build for
  i586 only enabled in LegacyX86).</changelog>
  <changelog author="Alynx Zhou &lt;alynx.zhou@suse.com&gt;" date="1723550400">- Add PackageKit-mark-as-compulsory.patch: Prevent PackageKit from
  user uninstallable for most desktops (bsc#1226269).</changelog>
</package>
<package pkgid="5bab9cc688f48f4e0cb24923616ebbf3ed43d3e428b925901d7e16a738cb2cb175ca8d6fcc56b1d56a417b231cf338dc0451a4a3669dffeb8fd12758ee6cfe54" name="PackageKit-debuginfo" arch="x86_64">
  <version epoch="0" ver="1.2.8" rel="5.0.2.1.sr20240901"/>
  <changelog author="Stanislav Brabec &lt;sbrabec@suse.com&gt;" date="1631793600">- Remove obsolete translation-update-upstream support
  (jsc#SLE-21105).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1636113600">- Update to version 1.2.4:
  + Libraries:
  - Add specific error code when user declined interaction
  - Avoid spurious GObject::notify signal emissions
  - Correct 'cancellable' use in pk_client_repair_system_async()
  - Fix a leak on calling set_locale() a second time
  - Fix a possible use-after-free under pk_client_cancel_cb()
  - Improve thread safety on an operation cancellation
  + Backends:
  - dnf:
    . Read update information also when getting list of updates
    . Honor install_weak_deps=False if it is there
    . Use 'hy_query_get_advisory_pkgs', if available
  + New Features:
  - PkDetails: Add 'download-size' property
  - PkPackage: Add update severity property
  + Bugfixes:
  - Let the finish understand the 'cancelled' exit code
  - Make backends that use pk-backend-spawn work (#477)
  - Only set polkit interactive flag if method call has too
- Changes from version 1.2.3:
  + Backends:
  - alpm:
    . Add post transaction hook
    . Rename errno to alpm_err to avoid name clashes
  - aptcc: Auto-remove old kernels, unless configured otherwise
  - dnf: Add support for coercing upgrade to distupgrade
  - zypp:
    . Make sure pool is initialized at the beginning of some
    methods
    . Reset update mode after getting updates
  + Bugfixes:
  - Append to cron log instead of overwriting it
  - Cancel a transaction if calling Cancel fails or the daemon
    disappears
  - Do not crash when calling pk_dbus_get_uid() before D-Bus is
    setup
  - Fix all compiler warnings
  - Fix multilib conflicts in generated pk-enum-types.h
  - Free scheduler array correctly again
  - Remove large transaction size sanity check
- Drop patches fixed upstream:
  + PackageKit-zypp-cleanup-tmp-files.patch
  + PackageKit-zypp-reset-update-mode-after-get-updates.patch
  + PackageKit-dnf-Add-support-for-coercing-upgrade-to-distupgrade.patch
  + PackageKit-zypp-initialize-pool.patch
  + PackageKit-remove-transaction-size-limit.patch
  + PackageKit-cancel-transaction-if-daemon-disappears.patch
  + PackageKit-dnf-ignore-weak-deps.patch
- Add 505.patch: pk-offline: Add flags to D-Bus invoking methods.
  That's currently to be able to set whether the method should be
  interactive or not. The old functions call the methods as
  non-interactive.</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1636113601">- Add PackageKit-zypp-c++17.patch: Fix build failure when building
  with libzypp &gt; 17.28.5 and gcc &lt; 11
  (gh#hughsie/PackageKit/commit/1a6bb6ae6, bsc#1192349).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1637064000">- Rewrite prep phase to not use autopatch -M: SLE15/Leap15's RPM
  version does not support that syntax yet.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1637064001">- Apply all patches unconditonally: PackageKit-zypp-c++17.patch is
  merged in upstream git and thus does not justify to be
  conditionally applied.
- Switching back to autosetup, as this works without conditional
  patches.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1653048000">- Update to version 1.2.5:
  + Backends:
  - dnf:
    . Add support for autoremove flag when removing packages.
    . Searches by name and package details should be case
    insensitive.
    . Update appstream xml files if dnf_sack_add_repos() does
    the download.
  - zypp:
    . Add -std=c++1z cpp flags.
    . Fix crash when search string is NULL.
    . Fix package installation using undefined data.
  - Changes to alpm, apttcc, nix, and slack.
  + Bugfixes:
  - Install offline-update enablement symlink if Meson is new
    enough.
  - Move Wants= line for network-online.target.
  - Add flags to D-Bus offline invoking methods.
  - Properly handle allow-reinstall flag for installations.
  - Provide better error message if trying to install an
    installed package.
  - Wait until online to activate systemd service.
- Drop 505.patch, PackageKit-zypp-c++17.patch, and
  PackageKit-zypp-fix-crash-with-empty-search-string.patch: fixed
  upstream.</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1653566400">- Add PackageKit-zypp-locked-packages.patch: zypp: ignore locked
  packages(gh#hughsie/PackageKit#543, boo#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1656676800">- Add PackageKit-zypp-add-upgrade-system.patch: implement
  upgrade-system method(gh#hughsie/PackageKit/commit/930dd201b).</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1657368000">- Move the dbus-1 system.d file to /usr (bsc#1201347)</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1659528000">- Modified PackageKit.spec: bump libzypp dependency version to
  17.31.0.
- Add PackageKit-zypp-avoid-statuReset.patch: zypp: Avoid
  statuReset() on locked packages
  (gh#PackageKit/PackageKit/commit/dd1964255, bsc#1199895).
- Add PackageKit-zypp-disable-upgrade-system-in-sle.patch: zypp:
  Disable upgrade-system support in SLE
  (gh#PackageKit/PackageKit/commit/0fcd820c2).
- Add PackageKit-zypp-restore-pool-status-after-simulating-update.patch:
  zypp: restore pool status after simulating an update
  (gh#PackageKit/PackageKit/commit/2b61a6649, bsc#1199895).
- Add PackageKit-zypp-fix-is-tumbleweed-check.patch: zypp: build
  the pool before calling is_tumbleweed()
  (gh#PackageKit/PackageKit/commit/146890153).
- Add PackageKit-zypp-update-libzypp-dependency-version.patch:
  zypp: update libzypp dependency version
  (gh#PackageKit/PackageKit/commit/58c7c0285, bsc#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1662120000">- Add PackageKit-zypp-dont-refresh-before-searching.patch:
  zypp: Don't refresh repos before searching
  (gh#PackageKit/PackageKit/commit/58c7c0285, bsc#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1664193600">- Add PackageKit-zypp-dont-remove-locked-packages.patch: zypp:
  Check if packages are locked before removing
  (gh#PackageKit/PackageKit/commit/8649a07bc, bsc#1199895).
- Add PackageKit-zypp-add-repo-in-packageid.patch: zypp: add
  repository data in package id
  (gh#PackageKit/PackageKit/commit/8eb2ef0ae, bsc#1202585).
- Remove PackageKit-zypp-locked-packages.patch: reverted upstream
  (gh#PackageKit/PackageKit/commit/ed3e38043).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1673006400">- Add PackageKit-zypp-fix-ambiguous-filesystem-reference.patch:
  zypp: Fix ambiguous reference to 'filesystem' class
  (gh#PackageKit/PackageKit/commit/bb1409a71, bsc#1206687).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678708800">- Add PackageKit-fix-pkcon-permission.patch: trivial: Drop
  unnecessary x permission
  (gh#PackageKit/PackageKit/commit/47b7f97bc, bsc#1209138)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1689595200">- Add PackageKit-dynamic-export.patch: fix loading of modules when
  built using glib 2.70 (boo#1213309).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1699531200">- Update to version 1.2.8:
  + Libraries:
  - offline-updates:
    . Make package update list deduplication more efficient.
    . Add only one entry per package to 'offline-update-competed'
    file.
  - PkClient: Replace the GSimpleAsyncResult with the GTask API.
  - pk-client:
    . Fix use-before-set of PkProgress on cancellation.
    . Move cancellable disconnect to dispose.
    . Rework refcounting for PkClientState.
  + Backends: Changes to apt, dnf, PiSi and BSD backends.
- Changes from version 1.2.7:
  + New Features:
  - pkclient: Add an option to count download size with
    dependencies.
  - pk-transaction: Add support for getting the RemainingTime
    property.
  + Backends:
  - zypp: Fix ambiguous reference to 'filesystem' class.
  - Changes to dnf, apt, alpm backends.
- Changes from version 1.2.6:
  + New Features:
  - Expose transaction sender as read-only property on the bus.
  - pkmon: Display transaction sender binary name in log.
  - pk-transaction: Add Packages signal.
  - pk-transaction: Combine some D-Bus PropertiesChanged signal
    emissions.
  - pk-transaction: Add UpdateDetails signal.
  + Backends:
  - zypp:
    . implement upgrade-system method.
    . Clean up trailing whitespaces.
    . Avoid statuReset() on locked packages.
    . restore pool status after simulating an update.
    . Disable upgrade-system support in SLE.
    . build the pool before calling is_tumbleweed().
    . update libzypp dependency version.
    . Don't refresh repos before searching.
    . Check if packages are locked before removing.
    . add repository data in package id.
    . Remove trailing whitespace.
    + Changes to alpm, aptcc, apt, and nix backends.
- Rebase patches:
  + PackageKit-dnf-Add-support-for-AppStream-repodata-basenames-use.patch
  + PackageKit-dynamic-export.patch
  + PackageKit-zypp-disable-upgrade-system-in-sle.patch
- Drop upstream fixed patches:
  + PackageKit-zypp-add-repo-in-packageid.patch
  + PackageKit-zypp-add-upgrade-system.patch
  + PackageKit-zypp-avoid-statuReset.patch
  + PackageKit-zypp-dont-refresh-before-searching.patch
  + PackageKit-zypp-dont-remove-locked-packages.patch
  + PackageKit-zypp-fix-ambiguous-filesystem-reference.patch
  + PackageKit-zypp-fix-is-tumbleweed-check.patch
  + PackageKit-zypp-restore-pool-status-after-simulating-update.patch
  + PackageKit-zypp-update-libzypp-dependency-version.patch</changelog>
  <changelog author="Alynx Zhou &lt;alynx.zhou@suse.com&gt;" date="1704196800">- Add PackageKit-find-python-3-6.patch: Specify the Python version
  we need to build this package.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1709640000">- Drop baselibs.conf: the -32bit packages are no longer needed and
  have not been part of Tumbleweed for a while already (build for
  i586 only enabled in LegacyX86).</changelog>
  <changelog author="Alynx Zhou &lt;alynx.zhou@suse.com&gt;" date="1723550400">- Add PackageKit-mark-as-compulsory.patch: Prevent PackageKit from
  user uninstallable for most desktops (bsc#1226269).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1726142400">- Add PackageKit-zypp-dont-install-updateCandidateObj.patch:
  zypp: Mark the correct packages to-be-installed (bsc#1227389,
  gh#PackageKit/PackageKit/commit/209aa6295).</changelog>
</package>
<package pkgid="8c10fb5aba93a1e4aa8226504b615097c5456b5d52c953387a9eda2369c9ec2c09de8197e8faa3dcb2471c27cd5b4d7dce56d8dcd492dc45cbcd5291f7dc546b" name="PackageKit-debuginfo" arch="x86_64">
  <version epoch="0" ver="1.2.8" rel="5.1"/>
  <changelog author="Stanislav Brabec &lt;sbrabec@suse.com&gt;" date="1631793600">- Remove obsolete translation-update-upstream support
  (jsc#SLE-21105).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1636113600">- Update to version 1.2.4:
  + Libraries:
  - Add specific error code when user declined interaction
  - Avoid spurious GObject::notify signal emissions
  - Correct 'cancellable' use in pk_client_repair_system_async()
  - Fix a leak on calling set_locale() a second time
  - Fix a possible use-after-free under pk_client_cancel_cb()
  - Improve thread safety on an operation cancellation
  + Backends:
  - dnf:
    . Read update information also when getting list of updates
    . Honor install_weak_deps=False if it is there
    . Use 'hy_query_get_advisory_pkgs', if available
  + New Features:
  - PkDetails: Add 'download-size' property
  - PkPackage: Add update severity property
  + Bugfixes:
  - Let the finish understand the 'cancelled' exit code
  - Make backends that use pk-backend-spawn work (#477)
  - Only set polkit interactive flag if method call has too
- Changes from version 1.2.3:
  + Backends:
  - alpm:
    . Add post transaction hook
    . Rename errno to alpm_err to avoid name clashes
  - aptcc: Auto-remove old kernels, unless configured otherwise
  - dnf: Add support for coercing upgrade to distupgrade
  - zypp:
    . Make sure pool is initialized at the beginning of some
    methods
    . Reset update mode after getting updates
  + Bugfixes:
  - Append to cron log instead of overwriting it
  - Cancel a transaction if calling Cancel fails or the daemon
    disappears
  - Do not crash when calling pk_dbus_get_uid() before D-Bus is
    setup
  - Fix all compiler warnings
  - Fix multilib conflicts in generated pk-enum-types.h
  - Free scheduler array correctly again
  - Remove large transaction size sanity check
- Drop patches fixed upstream:
  + PackageKit-zypp-cleanup-tmp-files.patch
  + PackageKit-zypp-reset-update-mode-after-get-updates.patch
  + PackageKit-dnf-Add-support-for-coercing-upgrade-to-distupgrade.patch
  + PackageKit-zypp-initialize-pool.patch
  + PackageKit-remove-transaction-size-limit.patch
  + PackageKit-cancel-transaction-if-daemon-disappears.patch
  + PackageKit-dnf-ignore-weak-deps.patch
- Add 505.patch: pk-offline: Add flags to D-Bus invoking methods.
  That's currently to be able to set whether the method should be
  interactive or not. The old functions call the methods as
  non-interactive.</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1636113601">- Add PackageKit-zypp-c++17.patch: Fix build failure when building
  with libzypp &gt; 17.28.5 and gcc &lt; 11
  (gh#hughsie/PackageKit/commit/1a6bb6ae6, bsc#1192349).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1637064000">- Rewrite prep phase to not use autopatch -M: SLE15/Leap15's RPM
  version does not support that syntax yet.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1637064001">- Apply all patches unconditonally: PackageKit-zypp-c++17.patch is
  merged in upstream git and thus does not justify to be
  conditionally applied.
- Switching back to autosetup, as this works without conditional
  patches.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1653048000">- Update to version 1.2.5:
  + Backends:
  - dnf:
    . Add support for autoremove flag when removing packages.
    . Searches by name and package details should be case
    insensitive.
    . Update appstream xml files if dnf_sack_add_repos() does
    the download.
  - zypp:
    . Add -std=c++1z cpp flags.
    . Fix crash when search string is NULL.
    . Fix package installation using undefined data.
  - Changes to alpm, apttcc, nix, and slack.
  + Bugfixes:
  - Install offline-update enablement symlink if Meson is new
    enough.
  - Move Wants= line for network-online.target.
  - Add flags to D-Bus offline invoking methods.
  - Properly handle allow-reinstall flag for installations.
  - Provide better error message if trying to install an
    installed package.
  - Wait until online to activate systemd service.
- Drop 505.patch, PackageKit-zypp-c++17.patch, and
  PackageKit-zypp-fix-crash-with-empty-search-string.patch: fixed
  upstream.</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1653566400">- Add PackageKit-zypp-locked-packages.patch: zypp: ignore locked
  packages(gh#hughsie/PackageKit#543, boo#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1656676800">- Add PackageKit-zypp-add-upgrade-system.patch: implement
  upgrade-system method(gh#hughsie/PackageKit/commit/930dd201b).</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1657368000">- Move the dbus-1 system.d file to /usr (bsc#1201347)</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1659528000">- Modified PackageKit.spec: bump libzypp dependency version to
  17.31.0.
- Add PackageKit-zypp-avoid-statuReset.patch: zypp: Avoid
  statuReset() on locked packages
  (gh#PackageKit/PackageKit/commit/dd1964255, bsc#1199895).
- Add PackageKit-zypp-disable-upgrade-system-in-sle.patch: zypp:
  Disable upgrade-system support in SLE
  (gh#PackageKit/PackageKit/commit/0fcd820c2).
- Add PackageKit-zypp-restore-pool-status-after-simulating-update.patch:
  zypp: restore pool status after simulating an update
  (gh#PackageKit/PackageKit/commit/2b61a6649, bsc#1199895).
- Add PackageKit-zypp-fix-is-tumbleweed-check.patch: zypp: build
  the pool before calling is_tumbleweed()
  (gh#PackageKit/PackageKit/commit/146890153).
- Add PackageKit-zypp-update-libzypp-dependency-version.patch:
  zypp: update libzypp dependency version
  (gh#PackageKit/PackageKit/commit/58c7c0285, bsc#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1662120000">- Add PackageKit-zypp-dont-refresh-before-searching.patch:
  zypp: Don't refresh repos before searching
  (gh#PackageKit/PackageKit/commit/58c7c0285, bsc#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1664193600">- Add PackageKit-zypp-dont-remove-locked-packages.patch: zypp:
  Check if packages are locked before removing
  (gh#PackageKit/PackageKit/commit/8649a07bc, bsc#1199895).
- Add PackageKit-zypp-add-repo-in-packageid.patch: zypp: add
  repository data in package id
  (gh#PackageKit/PackageKit/commit/8eb2ef0ae, bsc#1202585).
- Remove PackageKit-zypp-locked-packages.patch: reverted upstream
  (gh#PackageKit/PackageKit/commit/ed3e38043).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1673006400">- Add PackageKit-zypp-fix-ambiguous-filesystem-reference.patch:
  zypp: Fix ambiguous reference to 'filesystem' class
  (gh#PackageKit/PackageKit/commit/bb1409a71, bsc#1206687).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678708800">- Add PackageKit-fix-pkcon-permission.patch: trivial: Drop
  unnecessary x permission
  (gh#PackageKit/PackageKit/commit/47b7f97bc, bsc#1209138)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1689595200">- Add PackageKit-dynamic-export.patch: fix loading of modules when
  built using glib 2.70 (boo#1213309).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1699531200">- Update to version 1.2.8:
  + Libraries:
  - offline-updates:
    . Make package update list deduplication more efficient.
    . Add only one entry per package to 'offline-update-competed'
    file.
  - PkClient: Replace the GSimpleAsyncResult with the GTask API.
  - pk-client:
    . Fix use-before-set of PkProgress on cancellation.
    . Move cancellable disconnect to dispose.
    . Rework refcounting for PkClientState.
  + Backends: Changes to apt, dnf, PiSi and BSD backends.
- Changes from version 1.2.7:
  + New Features:
  - pkclient: Add an option to count download size with
    dependencies.
  - pk-transaction: Add support for getting the RemainingTime
    property.
  + Backends:
  - zypp: Fix ambiguous reference to 'filesystem' class.
  - Changes to dnf, apt, alpm backends.
- Changes from version 1.2.6:
  + New Features:
  - Expose transaction sender as read-only property on the bus.
  - pkmon: Display transaction sender binary name in log.
  - pk-transaction: Add Packages signal.
  - pk-transaction: Combine some D-Bus PropertiesChanged signal
    emissions.
  - pk-transaction: Add UpdateDetails signal.
  + Backends:
  - zypp:
    . implement upgrade-system method.
    . Clean up trailing whitespaces.
    . Avoid statuReset() on locked packages.
    . restore pool status after simulating an update.
    . Disable upgrade-system support in SLE.
    . build the pool before calling is_tumbleweed().
    . update libzypp dependency version.
    . Don't refresh repos before searching.
    . Check if packages are locked before removing.
    . add repository data in package id.
    . Remove trailing whitespace.
    + Changes to alpm, aptcc, apt, and nix backends.
- Rebase patches:
  + PackageKit-dnf-Add-support-for-AppStream-repodata-basenames-use.patch
  + PackageKit-dynamic-export.patch
  + PackageKit-zypp-disable-upgrade-system-in-sle.patch
- Drop upstream fixed patches:
  + PackageKit-zypp-add-repo-in-packageid.patch
  + PackageKit-zypp-add-upgrade-system.patch
  + PackageKit-zypp-avoid-statuReset.patch
  + PackageKit-zypp-dont-refresh-before-searching.patch
  + PackageKit-zypp-dont-remove-locked-packages.patch
  + PackageKit-zypp-fix-ambiguous-filesystem-reference.patch
  + PackageKit-zypp-fix-is-tumbleweed-check.patch
  + PackageKit-zypp-restore-pool-status-after-simulating-update.patch
  + PackageKit-zypp-update-libzypp-dependency-version.patch</changelog>
  <changelog author="Alynx Zhou &lt;alynx.zhou@suse.com&gt;" date="1704196800">- Add PackageKit-find-python-3-6.patch: Specify the Python version
  we need to build this package.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1709640000">- Drop baselibs.conf: the -32bit packages are no longer needed and
  have not been part of Tumbleweed for a while already (build for
  i586 only enabled in LegacyX86).</changelog>
  <changelog author="Alynx Zhou &lt;alynx.zhou@suse.com&gt;" date="1723550400">- Add PackageKit-mark-as-compulsory.patch: Prevent PackageKit from
  user uninstallable for most desktops (bsc#1226269).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1726142400">- Add PackageKit-zypp-dont-install-updateCandidateObj.patch:
  zypp: Mark the correct packages to-be-installed (bsc#1227389,
  gh#PackageKit/PackageKit/commit/209aa6295).</changelog>
</package>
<package pkgid="57df57a5a55e548a99bd7180df36789a760b85a485bfc83580ffba25e7d6855557c9a1cbb74bfd31a04b75a2c50be0d69bc22cbbb32c2ab47628cdcffdbd8734" name="PackageKit-debuginfo" arch="x86_64">
  <version epoch="0" ver="1.2.8" rel="6.1"/>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1636113600">- Update to version 1.2.4:
  + Libraries:
  - Add specific error code when user declined interaction
  - Avoid spurious GObject::notify signal emissions
  - Correct 'cancellable' use in pk_client_repair_system_async()
  - Fix a leak on calling set_locale() a second time
  - Fix a possible use-after-free under pk_client_cancel_cb()
  - Improve thread safety on an operation cancellation
  + Backends:
  - dnf:
    . Read update information also when getting list of updates
    . Honor install_weak_deps=False if it is there
    . Use 'hy_query_get_advisory_pkgs', if available
  + New Features:
  - PkDetails: Add 'download-size' property
  - PkPackage: Add update severity property
  + Bugfixes:
  - Let the finish understand the 'cancelled' exit code
  - Make backends that use pk-backend-spawn work (#477)
  - Only set polkit interactive flag if method call has too
- Changes from version 1.2.3:
  + Backends:
  - alpm:
    . Add post transaction hook
    . Rename errno to alpm_err to avoid name clashes
  - aptcc: Auto-remove old kernels, unless configured otherwise
  - dnf: Add support for coercing upgrade to distupgrade
  - zypp:
    . Make sure pool is initialized at the beginning of some
    methods
    . Reset update mode after getting updates
  + Bugfixes:
  - Append to cron log instead of overwriting it
  - Cancel a transaction if calling Cancel fails or the daemon
    disappears
  - Do not crash when calling pk_dbus_get_uid() before D-Bus is
    setup
  - Fix all compiler warnings
  - Fix multilib conflicts in generated pk-enum-types.h
  - Free scheduler array correctly again
  - Remove large transaction size sanity check
- Drop patches fixed upstream:
  + PackageKit-zypp-cleanup-tmp-files.patch
  + PackageKit-zypp-reset-update-mode-after-get-updates.patch
  + PackageKit-dnf-Add-support-for-coercing-upgrade-to-distupgrade.patch
  + PackageKit-zypp-initialize-pool.patch
  + PackageKit-remove-transaction-size-limit.patch
  + PackageKit-cancel-transaction-if-daemon-disappears.patch
  + PackageKit-dnf-ignore-weak-deps.patch
- Add 505.patch: pk-offline: Add flags to D-Bus invoking methods.
  That's currently to be able to set whether the method should be
  interactive or not. The old functions call the methods as
  non-interactive.</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1636113601">- Add PackageKit-zypp-c++17.patch: Fix build failure when building
  with libzypp &gt; 17.28.5 and gcc &lt; 11
  (gh#hughsie/PackageKit/commit/1a6bb6ae6, bsc#1192349).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1637064000">- Rewrite prep phase to not use autopatch -M: SLE15/Leap15's RPM
  version does not support that syntax yet.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1637064001">- Apply all patches unconditonally: PackageKit-zypp-c++17.patch is
  merged in upstream git and thus does not justify to be
  conditionally applied.
- Switching back to autosetup, as this works without conditional
  patches.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1653048000">- Update to version 1.2.5:
  + Backends:
  - dnf:
    . Add support for autoremove flag when removing packages.
    . Searches by name and package details should be case
    insensitive.
    . Update appstream xml files if dnf_sack_add_repos() does
    the download.
  - zypp:
    . Add -std=c++1z cpp flags.
    . Fix crash when search string is NULL.
    . Fix package installation using undefined data.
  - Changes to alpm, apttcc, nix, and slack.
  + Bugfixes:
  - Install offline-update enablement symlink if Meson is new
    enough.
  - Move Wants= line for network-online.target.
  - Add flags to D-Bus offline invoking methods.
  - Properly handle allow-reinstall flag for installations.
  - Provide better error message if trying to install an
    installed package.
  - Wait until online to activate systemd service.
- Drop 505.patch, PackageKit-zypp-c++17.patch, and
  PackageKit-zypp-fix-crash-with-empty-search-string.patch: fixed
  upstream.</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1653566400">- Add PackageKit-zypp-locked-packages.patch: zypp: ignore locked
  packages(gh#hughsie/PackageKit#543, boo#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1656676800">- Add PackageKit-zypp-add-upgrade-system.patch: implement
  upgrade-system method(gh#hughsie/PackageKit/commit/930dd201b).</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1657368000">- Move the dbus-1 system.d file to /usr (bsc#1201347)</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1659528000">- Modified PackageKit.spec: bump libzypp dependency version to
  17.31.0.
- Add PackageKit-zypp-avoid-statuReset.patch: zypp: Avoid
  statuReset() on locked packages
  (gh#PackageKit/PackageKit/commit/dd1964255, bsc#1199895).
- Add PackageKit-zypp-disable-upgrade-system-in-sle.patch: zypp:
  Disable upgrade-system support in SLE
  (gh#PackageKit/PackageKit/commit/0fcd820c2).
- Add PackageKit-zypp-restore-pool-status-after-simulating-update.patch:
  zypp: restore pool status after simulating an update
  (gh#PackageKit/PackageKit/commit/2b61a6649, bsc#1199895).
- Add PackageKit-zypp-fix-is-tumbleweed-check.patch: zypp: build
  the pool before calling is_tumbleweed()
  (gh#PackageKit/PackageKit/commit/146890153).
- Add PackageKit-zypp-update-libzypp-dependency-version.patch:
  zypp: update libzypp dependency version
  (gh#PackageKit/PackageKit/commit/58c7c0285, bsc#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1662120000">- Add PackageKit-zypp-dont-refresh-before-searching.patch:
  zypp: Don't refresh repos before searching
  (gh#PackageKit/PackageKit/commit/58c7c0285, bsc#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1664193600">- Add PackageKit-zypp-dont-remove-locked-packages.patch: zypp:
  Check if packages are locked before removing
  (gh#PackageKit/PackageKit/commit/8649a07bc, bsc#1199895).
- Add PackageKit-zypp-add-repo-in-packageid.patch: zypp: add
  repository data in package id
  (gh#PackageKit/PackageKit/commit/8eb2ef0ae, bsc#1202585).
- Remove PackageKit-zypp-locked-packages.patch: reverted upstream
  (gh#PackageKit/PackageKit/commit/ed3e38043).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1673006400">- Add PackageKit-zypp-fix-ambiguous-filesystem-reference.patch:
  zypp: Fix ambiguous reference to 'filesystem' class
  (gh#PackageKit/PackageKit/commit/bb1409a71, bsc#1206687).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678708800">- Add PackageKit-fix-pkcon-permission.patch: trivial: Drop
  unnecessary x permission
  (gh#PackageKit/PackageKit/commit/47b7f97bc, bsc#1209138)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1689595200">- Add PackageKit-dynamic-export.patch: fix loading of modules when
  built using glib 2.70 (boo#1213309).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1699531200">- Update to version 1.2.8:
  + Libraries:
  - offline-updates:
    . Make package update list deduplication more efficient.
    . Add only one entry per package to 'offline-update-competed'
    file.
  - PkClient: Replace the GSimpleAsyncResult with the GTask API.
  - pk-client:
    . Fix use-before-set of PkProgress on cancellation.
    . Move cancellable disconnect to dispose.
    . Rework refcounting for PkClientState.
  + Backends: Changes to apt, dnf, PiSi and BSD backends.
- Changes from version 1.2.7:
  + New Features:
  - pkclient: Add an option to count download size with
    dependencies.
  - pk-transaction: Add support for getting the RemainingTime
    property.
  + Backends:
  - zypp: Fix ambiguous reference to 'filesystem' class.
  - Changes to dnf, apt, alpm backends.
- Changes from version 1.2.6:
  + New Features:
  - Expose transaction sender as read-only property on the bus.
  - pkmon: Display transaction sender binary name in log.
  - pk-transaction: Add Packages signal.
  - pk-transaction: Combine some D-Bus PropertiesChanged signal
    emissions.
  - pk-transaction: Add UpdateDetails signal.
  + Backends:
  - zypp:
    . implement upgrade-system method.
    . Clean up trailing whitespaces.
    . Avoid statuReset() on locked packages.
    . restore pool status after simulating an update.
    . Disable upgrade-system support in SLE.
    . build the pool before calling is_tumbleweed().
    . update libzypp dependency version.
    . Don't refresh repos before searching.
    . Check if packages are locked before removing.
    . add repository data in package id.
    . Remove trailing whitespace.
    + Changes to alpm, aptcc, apt, and nix backends.
- Rebase patches:
  + PackageKit-dnf-Add-support-for-AppStream-repodata-basenames-use.patch
  + PackageKit-dynamic-export.patch
  + PackageKit-zypp-disable-upgrade-system-in-sle.patch
- Drop upstream fixed patches:
  + PackageKit-zypp-add-repo-in-packageid.patch
  + PackageKit-zypp-add-upgrade-system.patch
  + PackageKit-zypp-avoid-statuReset.patch
  + PackageKit-zypp-dont-refresh-before-searching.patch
  + PackageKit-zypp-dont-remove-locked-packages.patch
  + PackageKit-zypp-fix-ambiguous-filesystem-reference.patch
  + PackageKit-zypp-fix-is-tumbleweed-check.patch
  + PackageKit-zypp-restore-pool-status-after-simulating-update.patch
  + PackageKit-zypp-update-libzypp-dependency-version.patch</changelog>
  <changelog author="Alynx Zhou &lt;alynx.zhou@suse.com&gt;" date="1704196800">- Add PackageKit-find-python-3-6.patch: Specify the Python version
  we need to build this package.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1709640000">- Drop baselibs.conf: the -32bit packages are no longer needed and
  have not been part of Tumbleweed for a while already (build for
  i586 only enabled in LegacyX86).</changelog>
  <changelog author="Alynx Zhou &lt;alynx.zhou@suse.com&gt;" date="1723550400">- Add PackageKit-mark-as-compulsory.patch: Prevent PackageKit from
  user uninstallable for most desktops (bsc#1226269).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1726142400">- Add PackageKit-zypp-dont-install-updateCandidateObj.patch:
  zypp: Mark the correct packages to-be-installed (bsc#1227389,
  gh#PackageKit/PackageKit/commit/209aa6295).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1728993600">- Drop rcFOO symlinks (PED-266)
- Drop usage of update-alternatives, but simplify installation of
  /usr/libexec/gst-install-plugins-helper as a direct symlink to
  pk-gstreamer-install.</changelog>
</package>
<package pkgid="a9a951bd12a18d9be2a6c7ee0cab1ce80881297cf6c73cb48e368c0f4d9199a5e0bd03961a3d00403472fbd8efaee0153eb550d6bf2e3359fbba511e99b49e3b" name="PackageKit-debugsource" arch="x86_64">
  <version epoch="0" ver="1.2.8" rel="4.1"/>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1629460800">- Add PackageKit-zypp-fix-crash-with-empty-search-string.patch:
  zypp: Fix crash when search string is NULL (bsc#1179287,
  gh#hughsie/PackageKit/commit#21ccf49).</changelog>
  <changelog author="Stanislav Brabec &lt;sbrabec@suse.com&gt;" date="1631793600">- Remove obsolete translation-update-upstream support
  (jsc#SLE-21105).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1636113600">- Update to version 1.2.4:
  + Libraries:
  - Add specific error code when user declined interaction
  - Avoid spurious GObject::notify signal emissions
  - Correct 'cancellable' use in pk_client_repair_system_async()
  - Fix a leak on calling set_locale() a second time
  - Fix a possible use-after-free under pk_client_cancel_cb()
  - Improve thread safety on an operation cancellation
  + Backends:
  - dnf:
    . Read update information also when getting list of updates
    . Honor install_weak_deps=False if it is there
    . Use 'hy_query_get_advisory_pkgs', if available
  + New Features:
  - PkDetails: Add 'download-size' property
  - PkPackage: Add update severity property
  + Bugfixes:
  - Let the finish understand the 'cancelled' exit code
  - Make backends that use pk-backend-spawn work (#477)
  - Only set polkit interactive flag if method call has too
- Changes from version 1.2.3:
  + Backends:
  - alpm:
    . Add post transaction hook
    . Rename errno to alpm_err to avoid name clashes
  - aptcc: Auto-remove old kernels, unless configured otherwise
  - dnf: Add support for coercing upgrade to distupgrade
  - zypp:
    . Make sure pool is initialized at the beginning of some
    methods
    . Reset update mode after getting updates
  + Bugfixes:
  - Append to cron log instead of overwriting it
  - Cancel a transaction if calling Cancel fails or the daemon
    disappears
  - Do not crash when calling pk_dbus_get_uid() before D-Bus is
    setup
  - Fix all compiler warnings
  - Fix multilib conflicts in generated pk-enum-types.h
  - Free scheduler array correctly again
  - Remove large transaction size sanity check
- Drop patches fixed upstream:
  + PackageKit-zypp-cleanup-tmp-files.patch
  + PackageKit-zypp-reset-update-mode-after-get-updates.patch
  + PackageKit-dnf-Add-support-for-coercing-upgrade-to-distupgrade.patch
  + PackageKit-zypp-initialize-pool.patch
  + PackageKit-remove-transaction-size-limit.patch
  + PackageKit-cancel-transaction-if-daemon-disappears.patch
  + PackageKit-dnf-ignore-weak-deps.patch
- Add 505.patch: pk-offline: Add flags to D-Bus invoking methods.
  That's currently to be able to set whether the method should be
  interactive or not. The old functions call the methods as
  non-interactive.</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1636113601">- Add PackageKit-zypp-c++17.patch: Fix build failure when building
  with libzypp &gt; 17.28.5 and gcc &lt; 11
  (gh#hughsie/PackageKit/commit/1a6bb6ae6, bsc#1192349).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1637064000">- Rewrite prep phase to not use autopatch -M: SLE15/Leap15's RPM
  version does not support that syntax yet.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1637064001">- Apply all patches unconditonally: PackageKit-zypp-c++17.patch is
  merged in upstream git and thus does not justify to be
  conditionally applied.
- Switching back to autosetup, as this works without conditional
  patches.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1653048000">- Update to version 1.2.5:
  + Backends:
  - dnf:
    . Add support for autoremove flag when removing packages.
    . Searches by name and package details should be case
    insensitive.
    . Update appstream xml files if dnf_sack_add_repos() does
    the download.
  - zypp:
    . Add -std=c++1z cpp flags.
    . Fix crash when search string is NULL.
    . Fix package installation using undefined data.
  - Changes to alpm, apttcc, nix, and slack.
  + Bugfixes:
  - Install offline-update enablement symlink if Meson is new
    enough.
  - Move Wants= line for network-online.target.
  - Add flags to D-Bus offline invoking methods.
  - Properly handle allow-reinstall flag for installations.
  - Provide better error message if trying to install an
    installed package.
  - Wait until online to activate systemd service.
- Drop 505.patch, PackageKit-zypp-c++17.patch, and
  PackageKit-zypp-fix-crash-with-empty-search-string.patch: fixed
  upstream.</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1653566400">- Add PackageKit-zypp-locked-packages.patch: zypp: ignore locked
  packages(gh#hughsie/PackageKit#543, boo#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1656676800">- Add PackageKit-zypp-add-upgrade-system.patch: implement
  upgrade-system method(gh#hughsie/PackageKit/commit/930dd201b).</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1657368000">- Move the dbus-1 system.d file to /usr (bsc#1201347)</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1659528000">- Modified PackageKit.spec: bump libzypp dependency version to
  17.31.0.
- Add PackageKit-zypp-avoid-statuReset.patch: zypp: Avoid
  statuReset() on locked packages
  (gh#PackageKit/PackageKit/commit/dd1964255, bsc#1199895).
- Add PackageKit-zypp-disable-upgrade-system-in-sle.patch: zypp:
  Disable upgrade-system support in SLE
  (gh#PackageKit/PackageKit/commit/0fcd820c2).
- Add PackageKit-zypp-restore-pool-status-after-simulating-update.patch:
  zypp: restore pool status after simulating an update
  (gh#PackageKit/PackageKit/commit/2b61a6649, bsc#1199895).
- Add PackageKit-zypp-fix-is-tumbleweed-check.patch: zypp: build
  the pool before calling is_tumbleweed()
  (gh#PackageKit/PackageKit/commit/146890153).
- Add PackageKit-zypp-update-libzypp-dependency-version.patch:
  zypp: update libzypp dependency version
  (gh#PackageKit/PackageKit/commit/58c7c0285, bsc#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1662120000">- Add PackageKit-zypp-dont-refresh-before-searching.patch:
  zypp: Don't refresh repos before searching
  (gh#PackageKit/PackageKit/commit/58c7c0285, bsc#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1664193600">- Add PackageKit-zypp-dont-remove-locked-packages.patch: zypp:
  Check if packages are locked before removing
  (gh#PackageKit/PackageKit/commit/8649a07bc, bsc#1199895).
- Add PackageKit-zypp-add-repo-in-packageid.patch: zypp: add
  repository data in package id
  (gh#PackageKit/PackageKit/commit/8eb2ef0ae, bsc#1202585).
- Remove PackageKit-zypp-locked-packages.patch: reverted upstream
  (gh#PackageKit/PackageKit/commit/ed3e38043).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1673006400">- Add PackageKit-zypp-fix-ambiguous-filesystem-reference.patch:
  zypp: Fix ambiguous reference to 'filesystem' class
  (gh#PackageKit/PackageKit/commit/bb1409a71, bsc#1206687).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678708800">- Add PackageKit-fix-pkcon-permission.patch: trivial: Drop
  unnecessary x permission
  (gh#PackageKit/PackageKit/commit/47b7f97bc, bsc#1209138)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1689595200">- Add PackageKit-dynamic-export.patch: fix loading of modules when
  built using glib 2.70 (boo#1213309).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1699531200">- Update to version 1.2.8:
  + Libraries:
  - offline-updates:
    . Make package update list deduplication more efficient.
    . Add only one entry per package to 'offline-update-competed'
    file.
  - PkClient: Replace the GSimpleAsyncResult with the GTask API.
  - pk-client:
    . Fix use-before-set of PkProgress on cancellation.
    . Move cancellable disconnect to dispose.
    . Rework refcounting for PkClientState.
  + Backends: Changes to apt, dnf, PiSi and BSD backends.
- Changes from version 1.2.7:
  + New Features:
  - pkclient: Add an option to count download size with
    dependencies.
  - pk-transaction: Add support for getting the RemainingTime
    property.
  + Backends:
  - zypp: Fix ambiguous reference to 'filesystem' class.
  - Changes to dnf, apt, alpm backends.
- Changes from version 1.2.6:
  + New Features:
  - Expose transaction sender as read-only property on the bus.
  - pkmon: Display transaction sender binary name in log.
  - pk-transaction: Add Packages signal.
  - pk-transaction: Combine some D-Bus PropertiesChanged signal
    emissions.
  - pk-transaction: Add UpdateDetails signal.
  + Backends:
  - zypp:
    . implement upgrade-system method.
    . Clean up trailing whitespaces.
    . Avoid statuReset() on locked packages.
    . restore pool status after simulating an update.
    . Disable upgrade-system support in SLE.
    . build the pool before calling is_tumbleweed().
    . update libzypp dependency version.
    . Don't refresh repos before searching.
    . Check if packages are locked before removing.
    . add repository data in package id.
    . Remove trailing whitespace.
    + Changes to alpm, aptcc, apt, and nix backends.
- Rebase patches:
  + PackageKit-dnf-Add-support-for-AppStream-repodata-basenames-use.patch
  + PackageKit-dynamic-export.patch
  + PackageKit-zypp-disable-upgrade-system-in-sle.patch
- Drop upstream fixed patches:
  + PackageKit-zypp-add-repo-in-packageid.patch
  + PackageKit-zypp-add-upgrade-system.patch
  + PackageKit-zypp-avoid-statuReset.patch
  + PackageKit-zypp-dont-refresh-before-searching.patch
  + PackageKit-zypp-dont-remove-locked-packages.patch
  + PackageKit-zypp-fix-ambiguous-filesystem-reference.patch
  + PackageKit-zypp-fix-is-tumbleweed-check.patch
  + PackageKit-zypp-restore-pool-status-after-simulating-update.patch
  + PackageKit-zypp-update-libzypp-dependency-version.patch</changelog>
  <changelog author="Alynx Zhou &lt;alynx.zhou@suse.com&gt;" date="1704196800">- Add PackageKit-find-python-3-6.patch: Specify the Python version
  we need to build this package.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1709640000">- Drop baselibs.conf: the -32bit packages are no longer needed and
  have not been part of Tumbleweed for a while already (build for
  i586 only enabled in LegacyX86).</changelog>
  <changelog author="Alynx Zhou &lt;alynx.zhou@suse.com&gt;" date="1723550400">- Add PackageKit-mark-as-compulsory.patch: Prevent PackageKit from
  user uninstallable for most desktops (bsc#1226269).</changelog>
</package>
<package pkgid="453fc6b06877c21b86500565f06655d53647494f87ea209812e74b71134aeea98a36a0623288ba978d57d27b8b5a858a80fd89f89ab376f5dd9998b67be6aa0c" name="PackageKit-debugsource" arch="x86_64">
  <version epoch="0" ver="1.2.8" rel="5.0.2.1.sr20240901"/>
  <changelog author="Stanislav Brabec &lt;sbrabec@suse.com&gt;" date="1631793600">- Remove obsolete translation-update-upstream support
  (jsc#SLE-21105).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1636113600">- Update to version 1.2.4:
  + Libraries:
  - Add specific error code when user declined interaction
  - Avoid spurious GObject::notify signal emissions
  - Correct 'cancellable' use in pk_client_repair_system_async()
  - Fix a leak on calling set_locale() a second time
  - Fix a possible use-after-free under pk_client_cancel_cb()
  - Improve thread safety on an operation cancellation
  + Backends:
  - dnf:
    . Read update information also when getting list of updates
    . Honor install_weak_deps=False if it is there
    . Use 'hy_query_get_advisory_pkgs', if available
  + New Features:
  - PkDetails: Add 'download-size' property
  - PkPackage: Add update severity property
  + Bugfixes:
  - Let the finish understand the 'cancelled' exit code
  - Make backends that use pk-backend-spawn work (#477)
  - Only set polkit interactive flag if method call has too
- Changes from version 1.2.3:
  + Backends:
  - alpm:
    . Add post transaction hook
    . Rename errno to alpm_err to avoid name clashes
  - aptcc: Auto-remove old kernels, unless configured otherwise
  - dnf: Add support for coercing upgrade to distupgrade
  - zypp:
    . Make sure pool is initialized at the beginning of some
    methods
    . Reset update mode after getting updates
  + Bugfixes:
  - Append to cron log instead of overwriting it
  - Cancel a transaction if calling Cancel fails or the daemon
    disappears
  - Do not crash when calling pk_dbus_get_uid() before D-Bus is
    setup
  - Fix all compiler warnings
  - Fix multilib conflicts in generated pk-enum-types.h
  - Free scheduler array correctly again
  - Remove large transaction size sanity check
- Drop patches fixed upstream:
  + PackageKit-zypp-cleanup-tmp-files.patch
  + PackageKit-zypp-reset-update-mode-after-get-updates.patch
  + PackageKit-dnf-Add-support-for-coercing-upgrade-to-distupgrade.patch
  + PackageKit-zypp-initialize-pool.patch
  + PackageKit-remove-transaction-size-limit.patch
  + PackageKit-cancel-transaction-if-daemon-disappears.patch
  + PackageKit-dnf-ignore-weak-deps.patch
- Add 505.patch: pk-offline: Add flags to D-Bus invoking methods.
  That's currently to be able to set whether the method should be
  interactive or not. The old functions call the methods as
  non-interactive.</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1636113601">- Add PackageKit-zypp-c++17.patch: Fix build failure when building
  with libzypp &gt; 17.28.5 and gcc &lt; 11
  (gh#hughsie/PackageKit/commit/1a6bb6ae6, bsc#1192349).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1637064000">- Rewrite prep phase to not use autopatch -M: SLE15/Leap15's RPM
  version does not support that syntax yet.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1637064001">- Apply all patches unconditonally: PackageKit-zypp-c++17.patch is
  merged in upstream git and thus does not justify to be
  conditionally applied.
- Switching back to autosetup, as this works without conditional
  patches.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1653048000">- Update to version 1.2.5:
  + Backends:
  - dnf:
    . Add support for autoremove flag when removing packages.
    . Searches by name and package details should be case
    insensitive.
    . Update appstream xml files if dnf_sack_add_repos() does
    the download.
  - zypp:
    . Add -std=c++1z cpp flags.
    . Fix crash when search string is NULL.
    . Fix package installation using undefined data.
  - Changes to alpm, apttcc, nix, and slack.
  + Bugfixes:
  - Install offline-update enablement symlink if Meson is new
    enough.
  - Move Wants= line for network-online.target.
  - Add flags to D-Bus offline invoking methods.
  - Properly handle allow-reinstall flag for installations.
  - Provide better error message if trying to install an
    installed package.
  - Wait until online to activate systemd service.
- Drop 505.patch, PackageKit-zypp-c++17.patch, and
  PackageKit-zypp-fix-crash-with-empty-search-string.patch: fixed
  upstream.</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1653566400">- Add PackageKit-zypp-locked-packages.patch: zypp: ignore locked
  packages(gh#hughsie/PackageKit#543, boo#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1656676800">- Add PackageKit-zypp-add-upgrade-system.patch: implement
  upgrade-system method(gh#hughsie/PackageKit/commit/930dd201b).</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1657368000">- Move the dbus-1 system.d file to /usr (bsc#1201347)</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1659528000">- Modified PackageKit.spec: bump libzypp dependency version to
  17.31.0.
- Add PackageKit-zypp-avoid-statuReset.patch: zypp: Avoid
  statuReset() on locked packages
  (gh#PackageKit/PackageKit/commit/dd1964255, bsc#1199895).
- Add PackageKit-zypp-disable-upgrade-system-in-sle.patch: zypp:
  Disable upgrade-system support in SLE
  (gh#PackageKit/PackageKit/commit/0fcd820c2).
- Add PackageKit-zypp-restore-pool-status-after-simulating-update.patch:
  zypp: restore pool status after simulating an update
  (gh#PackageKit/PackageKit/commit/2b61a6649, bsc#1199895).
- Add PackageKit-zypp-fix-is-tumbleweed-check.patch: zypp: build
  the pool before calling is_tumbleweed()
  (gh#PackageKit/PackageKit/commit/146890153).
- Add PackageKit-zypp-update-libzypp-dependency-version.patch:
  zypp: update libzypp dependency version
  (gh#PackageKit/PackageKit/commit/58c7c0285, bsc#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1662120000">- Add PackageKit-zypp-dont-refresh-before-searching.patch:
  zypp: Don't refresh repos before searching
  (gh#PackageKit/PackageKit/commit/58c7c0285, bsc#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1664193600">- Add PackageKit-zypp-dont-remove-locked-packages.patch: zypp:
  Check if packages are locked before removing
  (gh#PackageKit/PackageKit/commit/8649a07bc, bsc#1199895).
- Add PackageKit-zypp-add-repo-in-packageid.patch: zypp: add
  repository data in package id
  (gh#PackageKit/PackageKit/commit/8eb2ef0ae, bsc#1202585).
- Remove PackageKit-zypp-locked-packages.patch: reverted upstream
  (gh#PackageKit/PackageKit/commit/ed3e38043).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1673006400">- Add PackageKit-zypp-fix-ambiguous-filesystem-reference.patch:
  zypp: Fix ambiguous reference to 'filesystem' class
  (gh#PackageKit/PackageKit/commit/bb1409a71, bsc#1206687).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678708800">- Add PackageKit-fix-pkcon-permission.patch: trivial: Drop
  unnecessary x permission
  (gh#PackageKit/PackageKit/commit/47b7f97bc, bsc#1209138)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1689595200">- Add PackageKit-dynamic-export.patch: fix loading of modules when
  built using glib 2.70 (boo#1213309).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1699531200">- Update to version 1.2.8:
  + Libraries:
  - offline-updates:
    . Make package update list deduplication more efficient.
    . Add only one entry per package to 'offline-update-competed'
    file.
  - PkClient: Replace the GSimpleAsyncResult with the GTask API.
  - pk-client:
    . Fix use-before-set of PkProgress on cancellation.
    . Move cancellable disconnect to dispose.
    . Rework refcounting for PkClientState.
  + Backends: Changes to apt, dnf, PiSi and BSD backends.
- Changes from version 1.2.7:
  + New Features:
  - pkclient: Add an option to count download size with
    dependencies.
  - pk-transaction: Add support for getting the RemainingTime
    property.
  + Backends:
  - zypp: Fix ambiguous reference to 'filesystem' class.
  - Changes to dnf, apt, alpm backends.
- Changes from version 1.2.6:
  + New Features:
  - Expose transaction sender as read-only property on the bus.
  - pkmon: Display transaction sender binary name in log.
  - pk-transaction: Add Packages signal.
  - pk-transaction: Combine some D-Bus PropertiesChanged signal
    emissions.
  - pk-transaction: Add UpdateDetails signal.
  + Backends:
  - zypp:
    . implement upgrade-system method.
    . Clean up trailing whitespaces.
    . Avoid statuReset() on locked packages.
    . restore pool status after simulating an update.
    . Disable upgrade-system support in SLE.
    . build the pool before calling is_tumbleweed().
    . update libzypp dependency version.
    . Don't refresh repos before searching.
    . Check if packages are locked before removing.
    . add repository data in package id.
    . Remove trailing whitespace.
    + Changes to alpm, aptcc, apt, and nix backends.
- Rebase patches:
  + PackageKit-dnf-Add-support-for-AppStream-repodata-basenames-use.patch
  + PackageKit-dynamic-export.patch
  + PackageKit-zypp-disable-upgrade-system-in-sle.patch
- Drop upstream fixed patches:
  + PackageKit-zypp-add-repo-in-packageid.patch
  + PackageKit-zypp-add-upgrade-system.patch
  + PackageKit-zypp-avoid-statuReset.patch
  + PackageKit-zypp-dont-refresh-before-searching.patch
  + PackageKit-zypp-dont-remove-locked-packages.patch
  + PackageKit-zypp-fix-ambiguous-filesystem-reference.patch
  + PackageKit-zypp-fix-is-tumbleweed-check.patch
  + PackageKit-zypp-restore-pool-status-after-simulating-update.patch
  + PackageKit-zypp-update-libzypp-dependency-version.patch</changelog>
  <changelog author="Alynx Zhou &lt;alynx.zhou@suse.com&gt;" date="1704196800">- Add PackageKit-find-python-3-6.patch: Specify the Python version
  we need to build this package.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1709640000">- Drop baselibs.conf: the -32bit packages are no longer needed and
  have not been part of Tumbleweed for a while already (build for
  i586 only enabled in LegacyX86).</changelog>
  <changelog author="Alynx Zhou &lt;alynx.zhou@suse.com&gt;" date="1723550400">- Add PackageKit-mark-as-compulsory.patch: Prevent PackageKit from
  user uninstallable for most desktops (bsc#1226269).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1726142400">- Add PackageKit-zypp-dont-install-updateCandidateObj.patch:
  zypp: Mark the correct packages to-be-installed (bsc#1227389,
  gh#PackageKit/PackageKit/commit/209aa6295).</changelog>
</package>
<package pkgid="1fed27c1cc27c65ef2a6f34d6ea1fee41d71cbda1c65db856e795f253232da0a2a84e6f15847a999d72ff3aec7e7bded1046501894fbcfd089d043dcc17f4ef9" name="PackageKit-debugsource" arch="x86_64">
  <version epoch="0" ver="1.2.8" rel="5.1"/>
  <changelog author="Stanislav Brabec &lt;sbrabec@suse.com&gt;" date="1631793600">- Remove obsolete translation-update-upstream support
  (jsc#SLE-21105).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1636113600">- Update to version 1.2.4:
  + Libraries:
  - Add specific error code when user declined interaction
  - Avoid spurious GObject::notify signal emissions
  - Correct 'cancellable' use in pk_client_repair_system_async()
  - Fix a leak on calling set_locale() a second time
  - Fix a possible use-after-free under pk_client_cancel_cb()
  - Improve thread safety on an operation cancellation
  + Backends:
  - dnf:
    . Read update information also when getting list of updates
    . Honor install_weak_deps=False if it is there
    . Use 'hy_query_get_advisory_pkgs', if available
  + New Features:
  - PkDetails: Add 'download-size' property
  - PkPackage: Add update severity property
  + Bugfixes:
  - Let the finish understand the 'cancelled' exit code
  - Make backends that use pk-backend-spawn work (#477)
  - Only set polkit interactive flag if method call has too
- Changes from version 1.2.3:
  + Backends:
  - alpm:
    . Add post transaction hook
    . Rename errno to alpm_err to avoid name clashes
  - aptcc: Auto-remove old kernels, unless configured otherwise
  - dnf: Add support for coercing upgrade to distupgrade
  - zypp:
    . Make sure pool is initialized at the beginning of some
    methods
    . Reset update mode after getting updates
  + Bugfixes:
  - Append to cron log instead of overwriting it
  - Cancel a transaction if calling Cancel fails or the daemon
    disappears
  - Do not crash when calling pk_dbus_get_uid() before D-Bus is
    setup
  - Fix all compiler warnings
  - Fix multilib conflicts in generated pk-enum-types.h
  - Free scheduler array correctly again
  - Remove large transaction size sanity check
- Drop patches fixed upstream:
  + PackageKit-zypp-cleanup-tmp-files.patch
  + PackageKit-zypp-reset-update-mode-after-get-updates.patch
  + PackageKit-dnf-Add-support-for-coercing-upgrade-to-distupgrade.patch
  + PackageKit-zypp-initialize-pool.patch
  + PackageKit-remove-transaction-size-limit.patch
  + PackageKit-cancel-transaction-if-daemon-disappears.patch
  + PackageKit-dnf-ignore-weak-deps.patch
- Add 505.patch: pk-offline: Add flags to D-Bus invoking methods.
  That's currently to be able to set whether the method should be
  interactive or not. The old functions call the methods as
  non-interactive.</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1636113601">- Add PackageKit-zypp-c++17.patch: Fix build failure when building
  with libzypp &gt; 17.28.5 and gcc &lt; 11
  (gh#hughsie/PackageKit/commit/1a6bb6ae6, bsc#1192349).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1637064000">- Rewrite prep phase to not use autopatch -M: SLE15/Leap15's RPM
  version does not support that syntax yet.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1637064001">- Apply all patches unconditonally: PackageKit-zypp-c++17.patch is
  merged in upstream git and thus does not justify to be
  conditionally applied.
- Switching back to autosetup, as this works without conditional
  patches.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1653048000">- Update to version 1.2.5:
  + Backends:
  - dnf:
    . Add support for autoremove flag when removing packages.
    . Searches by name and package details should be case
    insensitive.
    . Update appstream xml files if dnf_sack_add_repos() does
    the download.
  - zypp:
    . Add -std=c++1z cpp flags.
    . Fix crash when search string is NULL.
    . Fix package installation using undefined data.
  - Changes to alpm, apttcc, nix, and slack.
  + Bugfixes:
  - Install offline-update enablement symlink if Meson is new
    enough.
  - Move Wants= line for network-online.target.
  - Add flags to D-Bus offline invoking methods.
  - Properly handle allow-reinstall flag for installations.
  - Provide better error message if trying to install an
    installed package.
  - Wait until online to activate systemd service.
- Drop 505.patch, PackageKit-zypp-c++17.patch, and
  PackageKit-zypp-fix-crash-with-empty-search-string.patch: fixed
  upstream.</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1653566400">- Add PackageKit-zypp-locked-packages.patch: zypp: ignore locked
  packages(gh#hughsie/PackageKit#543, boo#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1656676800">- Add PackageKit-zypp-add-upgrade-system.patch: implement
  upgrade-system method(gh#hughsie/PackageKit/commit/930dd201b).</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1657368000">- Move the dbus-1 system.d file to /usr (bsc#1201347)</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1659528000">- Modified PackageKit.spec: bump libzypp dependency version to
  17.31.0.
- Add PackageKit-zypp-avoid-statuReset.patch: zypp: Avoid
  statuReset() on locked packages
  (gh#PackageKit/PackageKit/commit/dd1964255, bsc#1199895).
- Add PackageKit-zypp-disable-upgrade-system-in-sle.patch: zypp:
  Disable upgrade-system support in SLE
  (gh#PackageKit/PackageKit/commit/0fcd820c2).
- Add PackageKit-zypp-restore-pool-status-after-simulating-update.patch:
  zypp: restore pool status after simulating an update
  (gh#PackageKit/PackageKit/commit/2b61a6649, bsc#1199895).
- Add PackageKit-zypp-fix-is-tumbleweed-check.patch: zypp: build
  the pool before calling is_tumbleweed()
  (gh#PackageKit/PackageKit/commit/146890153).
- Add PackageKit-zypp-update-libzypp-dependency-version.patch:
  zypp: update libzypp dependency version
  (gh#PackageKit/PackageKit/commit/58c7c0285, bsc#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1662120000">- Add PackageKit-zypp-dont-refresh-before-searching.patch:
  zypp: Don't refresh repos before searching
  (gh#PackageKit/PackageKit/commit/58c7c0285, bsc#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1664193600">- Add PackageKit-zypp-dont-remove-locked-packages.patch: zypp:
  Check if packages are locked before removing
  (gh#PackageKit/PackageKit/commit/8649a07bc, bsc#1199895).
- Add PackageKit-zypp-add-repo-in-packageid.patch: zypp: add
  repository data in package id
  (gh#PackageKit/PackageKit/commit/8eb2ef0ae, bsc#1202585).
- Remove PackageKit-zypp-locked-packages.patch: reverted upstream
  (gh#PackageKit/PackageKit/commit/ed3e38043).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1673006400">- Add PackageKit-zypp-fix-ambiguous-filesystem-reference.patch:
  zypp: Fix ambiguous reference to 'filesystem' class
  (gh#PackageKit/PackageKit/commit/bb1409a71, bsc#1206687).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678708800">- Add PackageKit-fix-pkcon-permission.patch: trivial: Drop
  unnecessary x permission
  (gh#PackageKit/PackageKit/commit/47b7f97bc, bsc#1209138)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1689595200">- Add PackageKit-dynamic-export.patch: fix loading of modules when
  built using glib 2.70 (boo#1213309).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1699531200">- Update to version 1.2.8:
  + Libraries:
  - offline-updates:
    . Make package update list deduplication more efficient.
    . Add only one entry per package to 'offline-update-competed'
    file.
  - PkClient: Replace the GSimpleAsyncResult with the GTask API.
  - pk-client:
    . Fix use-before-set of PkProgress on cancellation.
    . Move cancellable disconnect to dispose.
    . Rework refcounting for PkClientState.
  + Backends: Changes to apt, dnf, PiSi and BSD backends.
- Changes from version 1.2.7:
  + New Features:
  - pkclient: Add an option to count download size with
    dependencies.
  - pk-transaction: Add support for getting the RemainingTime
    property.
  + Backends:
  - zypp: Fix ambiguous reference to 'filesystem' class.
  - Changes to dnf, apt, alpm backends.
- Changes from version 1.2.6:
  + New Features:
  - Expose transaction sender as read-only property on the bus.
  - pkmon: Display transaction sender binary name in log.
  - pk-transaction: Add Packages signal.
  - pk-transaction: Combine some D-Bus PropertiesChanged signal
    emissions.
  - pk-transaction: Add UpdateDetails signal.
  + Backends:
  - zypp:
    . implement upgrade-system method.
    . Clean up trailing whitespaces.
    . Avoid statuReset() on locked packages.
    . restore pool status after simulating an update.
    . Disable upgrade-system support in SLE.
    . build the pool before calling is_tumbleweed().
    . update libzypp dependency version.
    . Don't refresh repos before searching.
    . Check if packages are locked before removing.
    . add repository data in package id.
    . Remove trailing whitespace.
    + Changes to alpm, aptcc, apt, and nix backends.
- Rebase patches:
  + PackageKit-dnf-Add-support-for-AppStream-repodata-basenames-use.patch
  + PackageKit-dynamic-export.patch
  + PackageKit-zypp-disable-upgrade-system-in-sle.patch
- Drop upstream fixed patches:
  + PackageKit-zypp-add-repo-in-packageid.patch
  + PackageKit-zypp-add-upgrade-system.patch
  + PackageKit-zypp-avoid-statuReset.patch
  + PackageKit-zypp-dont-refresh-before-searching.patch
  + PackageKit-zypp-dont-remove-locked-packages.patch
  + PackageKit-zypp-fix-ambiguous-filesystem-reference.patch
  + PackageKit-zypp-fix-is-tumbleweed-check.patch
  + PackageKit-zypp-restore-pool-status-after-simulating-update.patch
  + PackageKit-zypp-update-libzypp-dependency-version.patch</changelog>
  <changelog author="Alynx Zhou &lt;alynx.zhou@suse.com&gt;" date="1704196800">- Add PackageKit-find-python-3-6.patch: Specify the Python version
  we need to build this package.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1709640000">- Drop baselibs.conf: the -32bit packages are no longer needed and
  have not been part of Tumbleweed for a while already (build for
  i586 only enabled in LegacyX86).</changelog>
  <changelog author="Alynx Zhou &lt;alynx.zhou@suse.com&gt;" date="1723550400">- Add PackageKit-mark-as-compulsory.patch: Prevent PackageKit from
  user uninstallable for most desktops (bsc#1226269).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1726142400">- Add PackageKit-zypp-dont-install-updateCandidateObj.patch:
  zypp: Mark the correct packages to-be-installed (bsc#1227389,
  gh#PackageKit/PackageKit/commit/209aa6295).</changelog>
</package>
<package pkgid="cb84ba5d4c7e7473dae3744f627b42d941b663703aec15bd7200878d752847482b5c330c0eaab841637050138023d184b14e85bc4868c31e54c49de7fa1614a2" name="PackageKit-debugsource" arch="x86_64">
  <version epoch="0" ver="1.2.8" rel="6.1"/>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1636113600">- Update to version 1.2.4:
  + Libraries:
  - Add specific error code when user declined interaction
  - Avoid spurious GObject::notify signal emissions
  - Correct 'cancellable' use in pk_client_repair_system_async()
  - Fix a leak on calling set_locale() a second time
  - Fix a possible use-after-free under pk_client_cancel_cb()
  - Improve thread safety on an operation cancellation
  + Backends:
  - dnf:
    . Read update information also when getting list of updates
    . Honor install_weak_deps=False if it is there
    . Use 'hy_query_get_advisory_pkgs', if available
  + New Features:
  - PkDetails: Add 'download-size' property
  - PkPackage: Add update severity property
  + Bugfixes:
  - Let the finish understand the 'cancelled' exit code
  - Make backends that use pk-backend-spawn work (#477)
  - Only set polkit interactive flag if method call has too
- Changes from version 1.2.3:
  + Backends:
  - alpm:
    . Add post transaction hook
    . Rename errno to alpm_err to avoid name clashes
  - aptcc: Auto-remove old kernels, unless configured otherwise
  - dnf: Add support for coercing upgrade to distupgrade
  - zypp:
    . Make sure pool is initialized at the beginning of some
    methods
    . Reset update mode after getting updates
  + Bugfixes:
  - Append to cron log instead of overwriting it
  - Cancel a transaction if calling Cancel fails or the daemon
    disappears
  - Do not crash when calling pk_dbus_get_uid() before D-Bus is
    setup
  - Fix all compiler warnings
  - Fix multilib conflicts in generated pk-enum-types.h
  - Free scheduler array correctly again
  - Remove large transaction size sanity check
- Drop patches fixed upstream:
  + PackageKit-zypp-cleanup-tmp-files.patch
  + PackageKit-zypp-reset-update-mode-after-get-updates.patch
  + PackageKit-dnf-Add-support-for-coercing-upgrade-to-distupgrade.patch
  + PackageKit-zypp-initialize-pool.patch
  + PackageKit-remove-transaction-size-limit.patch
  + PackageKit-cancel-transaction-if-daemon-disappears.patch
  + PackageKit-dnf-ignore-weak-deps.patch
- Add 505.patch: pk-offline: Add flags to D-Bus invoking methods.
  That's currently to be able to set whether the method should be
  interactive or not. The old functions call the methods as
  non-interactive.</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1636113601">- Add PackageKit-zypp-c++17.patch: Fix build failure when building
  with libzypp &gt; 17.28.5 and gcc &lt; 11
  (gh#hughsie/PackageKit/commit/1a6bb6ae6, bsc#1192349).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1637064000">- Rewrite prep phase to not use autopatch -M: SLE15/Leap15's RPM
  version does not support that syntax yet.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1637064001">- Apply all patches unconditonally: PackageKit-zypp-c++17.patch is
  merged in upstream git and thus does not justify to be
  conditionally applied.
- Switching back to autosetup, as this works without conditional
  patches.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1653048000">- Update to version 1.2.5:
  + Backends:
  - dnf:
    . Add support for autoremove flag when removing packages.
    . Searches by name and package details should be case
    insensitive.
    . Update appstream xml files if dnf_sack_add_repos() does
    the download.
  - zypp:
    . Add -std=c++1z cpp flags.
    . Fix crash when search string is NULL.
    . Fix package installation using undefined data.
  - Changes to alpm, apttcc, nix, and slack.
  + Bugfixes:
  - Install offline-update enablement symlink if Meson is new
    enough.
  - Move Wants= line for network-online.target.
  - Add flags to D-Bus offline invoking methods.
  - Properly handle allow-reinstall flag for installations.
  - Provide better error message if trying to install an
    installed package.
  - Wait until online to activate systemd service.
- Drop 505.patch, PackageKit-zypp-c++17.patch, and
  PackageKit-zypp-fix-crash-with-empty-search-string.patch: fixed
  upstream.</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1653566400">- Add PackageKit-zypp-locked-packages.patch: zypp: ignore locked
  packages(gh#hughsie/PackageKit#543, boo#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1656676800">- Add PackageKit-zypp-add-upgrade-system.patch: implement
  upgrade-system method(gh#hughsie/PackageKit/commit/930dd201b).</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1657368000">- Move the dbus-1 system.d file to /usr (bsc#1201347)</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1659528000">- Modified PackageKit.spec: bump libzypp dependency version to
  17.31.0.
- Add PackageKit-zypp-avoid-statuReset.patch: zypp: Avoid
  statuReset() on locked packages
  (gh#PackageKit/PackageKit/commit/dd1964255, bsc#1199895).
- Add PackageKit-zypp-disable-upgrade-system-in-sle.patch: zypp:
  Disable upgrade-system support in SLE
  (gh#PackageKit/PackageKit/commit/0fcd820c2).
- Add PackageKit-zypp-restore-pool-status-after-simulating-update.patch:
  zypp: restore pool status after simulating an update
  (gh#PackageKit/PackageKit/commit/2b61a6649, bsc#1199895).
- Add PackageKit-zypp-fix-is-tumbleweed-check.patch: zypp: build
  the pool before calling is_tumbleweed()
  (gh#PackageKit/PackageKit/commit/146890153).
- Add PackageKit-zypp-update-libzypp-dependency-version.patch:
  zypp: update libzypp dependency version
  (gh#PackageKit/PackageKit/commit/58c7c0285, bsc#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1662120000">- Add PackageKit-zypp-dont-refresh-before-searching.patch:
  zypp: Don't refresh repos before searching
  (gh#PackageKit/PackageKit/commit/58c7c0285, bsc#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1664193600">- Add PackageKit-zypp-dont-remove-locked-packages.patch: zypp:
  Check if packages are locked before removing
  (gh#PackageKit/PackageKit/commit/8649a07bc, bsc#1199895).
- Add PackageKit-zypp-add-repo-in-packageid.patch: zypp: add
  repository data in package id
  (gh#PackageKit/PackageKit/commit/8eb2ef0ae, bsc#1202585).
- Remove PackageKit-zypp-locked-packages.patch: reverted upstream
  (gh#PackageKit/PackageKit/commit/ed3e38043).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1673006400">- Add PackageKit-zypp-fix-ambiguous-filesystem-reference.patch:
  zypp: Fix ambiguous reference to 'filesystem' class
  (gh#PackageKit/PackageKit/commit/bb1409a71, bsc#1206687).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678708800">- Add PackageKit-fix-pkcon-permission.patch: trivial: Drop
  unnecessary x permission
  (gh#PackageKit/PackageKit/commit/47b7f97bc, bsc#1209138)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1689595200">- Add PackageKit-dynamic-export.patch: fix loading of modules when
  built using glib 2.70 (boo#1213309).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1699531200">- Update to version 1.2.8:
  + Libraries:
  - offline-updates:
    . Make package update list deduplication more efficient.
    . Add only one entry per package to 'offline-update-competed'
    file.
  - PkClient: Replace the GSimpleAsyncResult with the GTask API.
  - pk-client:
    . Fix use-before-set of PkProgress on cancellation.
    . Move cancellable disconnect to dispose.
    . Rework refcounting for PkClientState.
  + Backends: Changes to apt, dnf, PiSi and BSD backends.
- Changes from version 1.2.7:
  + New Features:
  - pkclient: Add an option to count download size with
    dependencies.
  - pk-transaction: Add support for getting the RemainingTime
    property.
  + Backends:
  - zypp: Fix ambiguous reference to 'filesystem' class.
  - Changes to dnf, apt, alpm backends.
- Changes from version 1.2.6:
  + New Features:
  - Expose transaction sender as read-only property on the bus.
  - pkmon: Display transaction sender binary name in log.
  - pk-transaction: Add Packages signal.
  - pk-transaction: Combine some D-Bus PropertiesChanged signal
    emissions.
  - pk-transaction: Add UpdateDetails signal.
  + Backends:
  - zypp:
    . implement upgrade-system method.
    . Clean up trailing whitespaces.
    . Avoid statuReset() on locked packages.
    . restore pool status after simulating an update.
    . Disable upgrade-system support in SLE.
    . build the pool before calling is_tumbleweed().
    . update libzypp dependency version.
    . Don't refresh repos before searching.
    . Check if packages are locked before removing.
    . add repository data in package id.
    . Remove trailing whitespace.
    + Changes to alpm, aptcc, apt, and nix backends.
- Rebase patches:
  + PackageKit-dnf-Add-support-for-AppStream-repodata-basenames-use.patch
  + PackageKit-dynamic-export.patch
  + PackageKit-zypp-disable-upgrade-system-in-sle.patch
- Drop upstream fixed patches:
  + PackageKit-zypp-add-repo-in-packageid.patch
  + PackageKit-zypp-add-upgrade-system.patch
  + PackageKit-zypp-avoid-statuReset.patch
  + PackageKit-zypp-dont-refresh-before-searching.patch
  + PackageKit-zypp-dont-remove-locked-packages.patch
  + PackageKit-zypp-fix-ambiguous-filesystem-reference.patch
  + PackageKit-zypp-fix-is-tumbleweed-check.patch
  + PackageKit-zypp-restore-pool-status-after-simulating-update.patch
  + PackageKit-zypp-update-libzypp-dependency-version.patch</changelog>
  <changelog author="Alynx Zhou &lt;alynx.zhou@suse.com&gt;" date="1704196800">- Add PackageKit-find-python-3-6.patch: Specify the Python version
  we need to build this package.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1709640000">- Drop baselibs.conf: the -32bit packages are no longer needed and
  have not been part of Tumbleweed for a while already (build for
  i586 only enabled in LegacyX86).</changelog>
  <changelog author="Alynx Zhou &lt;alynx.zhou@suse.com&gt;" date="1723550400">- Add PackageKit-mark-as-compulsory.patch: Prevent PackageKit from
  user uninstallable for most desktops (bsc#1226269).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1726142400">- Add PackageKit-zypp-dont-install-updateCandidateObj.patch:
  zypp: Mark the correct packages to-be-installed (bsc#1227389,
  gh#PackageKit/PackageKit/commit/209aa6295).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1728993600">- Drop rcFOO symlinks (PED-266)
- Drop usage of update-alternatives, but simplify installation of
  /usr/libexec/gst-install-plugins-helper as a direct symlink to
  pk-gstreamer-install.</changelog>
</package>
<package pkgid="2432e6a677fcc09150e69499ddbcc8ac8a002ba6e308337e3aeefa3edaeab7ac7beaa502498dec9062c500b8763df8a10eb8f14615c386a2e3fc063dbf20419a" name="PackageKit-devel" arch="x86_64">
  <version epoch="0" ver="1.2.8" rel="4.1"/>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1629460800">- Add PackageKit-zypp-fix-crash-with-empty-search-string.patch:
  zypp: Fix crash when search string is NULL (bsc#1179287,
  gh#hughsie/PackageKit/commit#21ccf49).</changelog>
  <changelog author="Stanislav Brabec &lt;sbrabec@suse.com&gt;" date="1631793600">- Remove obsolete translation-update-upstream support
  (jsc#SLE-21105).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1636113600">- Update to version 1.2.4:
  + Libraries:
  - Add specific error code when user declined interaction
  - Avoid spurious GObject::notify signal emissions
  - Correct 'cancellable' use in pk_client_repair_system_async()
  - Fix a leak on calling set_locale() a second time
  - Fix a possible use-after-free under pk_client_cancel_cb()
  - Improve thread safety on an operation cancellation
  + Backends:
  - dnf:
    . Read update information also when getting list of updates
    . Honor install_weak_deps=False if it is there
    . Use 'hy_query_get_advisory_pkgs', if available
  + New Features:
  - PkDetails: Add 'download-size' property
  - PkPackage: Add update severity property
  + Bugfixes:
  - Let the finish understand the 'cancelled' exit code
  - Make backends that use pk-backend-spawn work (#477)
  - Only set polkit interactive flag if method call has too
- Changes from version 1.2.3:
  + Backends:
  - alpm:
    . Add post transaction hook
    . Rename errno to alpm_err to avoid name clashes
  - aptcc: Auto-remove old kernels, unless configured otherwise
  - dnf: Add support for coercing upgrade to distupgrade
  - zypp:
    . Make sure pool is initialized at the beginning of some
    methods
    . Reset update mode after getting updates
  + Bugfixes:
  - Append to cron log instead of overwriting it
  - Cancel a transaction if calling Cancel fails or the daemon
    disappears
  - Do not crash when calling pk_dbus_get_uid() before D-Bus is
    setup
  - Fix all compiler warnings
  - Fix multilib conflicts in generated pk-enum-types.h
  - Free scheduler array correctly again
  - Remove large transaction size sanity check
- Drop patches fixed upstream:
  + PackageKit-zypp-cleanup-tmp-files.patch
  + PackageKit-zypp-reset-update-mode-after-get-updates.patch
  + PackageKit-dnf-Add-support-for-coercing-upgrade-to-distupgrade.patch
  + PackageKit-zypp-initialize-pool.patch
  + PackageKit-remove-transaction-size-limit.patch
  + PackageKit-cancel-transaction-if-daemon-disappears.patch
  + PackageKit-dnf-ignore-weak-deps.patch
- Add 505.patch: pk-offline: Add flags to D-Bus invoking methods.
  That's currently to be able to set whether the method should be
  interactive or not. The old functions call the methods as
  non-interactive.</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1636113601">- Add PackageKit-zypp-c++17.patch: Fix build failure when building
  with libzypp &gt; 17.28.5 and gcc &lt; 11
  (gh#hughsie/PackageKit/commit/1a6bb6ae6, bsc#1192349).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1637064000">- Rewrite prep phase to not use autopatch -M: SLE15/Leap15's RPM
  version does not support that syntax yet.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1637064001">- Apply all patches unconditonally: PackageKit-zypp-c++17.patch is
  merged in upstream git and thus does not justify to be
  conditionally applied.
- Switching back to autosetup, as this works without conditional
  patches.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1653048000">- Update to version 1.2.5:
  + Backends:
  - dnf:
    . Add support for autoremove flag when removing packages.
    . Searches by name and package details should be case
    insensitive.
    . Update appstream xml files if dnf_sack_add_repos() does
    the download.
  - zypp:
    . Add -std=c++1z cpp flags.
    . Fix crash when search string is NULL.
    . Fix package installation using undefined data.
  - Changes to alpm, apttcc, nix, and slack.
  + Bugfixes:
  - Install offline-update enablement symlink if Meson is new
    enough.
  - Move Wants= line for network-online.target.
  - Add flags to D-Bus offline invoking methods.
  - Properly handle allow-reinstall flag for installations.
  - Provide better error message if trying to install an
    installed package.
  - Wait until online to activate systemd service.
- Drop 505.patch, PackageKit-zypp-c++17.patch, and
  PackageKit-zypp-fix-crash-with-empty-search-string.patch: fixed
  upstream.</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1653566400">- Add PackageKit-zypp-locked-packages.patch: zypp: ignore locked
  packages(gh#hughsie/PackageKit#543, boo#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1656676800">- Add PackageKit-zypp-add-upgrade-system.patch: implement
  upgrade-system method(gh#hughsie/PackageKit/commit/930dd201b).</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1657368000">- Move the dbus-1 system.d file to /usr (bsc#1201347)</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1659528000">- Modified PackageKit.spec: bump libzypp dependency version to
  17.31.0.
- Add PackageKit-zypp-avoid-statuReset.patch: zypp: Avoid
  statuReset() on locked packages
  (gh#PackageKit/PackageKit/commit/dd1964255, bsc#1199895).
- Add PackageKit-zypp-disable-upgrade-system-in-sle.patch: zypp:
  Disable upgrade-system support in SLE
  (gh#PackageKit/PackageKit/commit/0fcd820c2).
- Add PackageKit-zypp-restore-pool-status-after-simulating-update.patch:
  zypp: restore pool status after simulating an update
  (gh#PackageKit/PackageKit/commit/2b61a6649, bsc#1199895).
- Add PackageKit-zypp-fix-is-tumbleweed-check.patch: zypp: build
  the pool before calling is_tumbleweed()
  (gh#PackageKit/PackageKit/commit/146890153).
- Add PackageKit-zypp-update-libzypp-dependency-version.patch:
  zypp: update libzypp dependency version
  (gh#PackageKit/PackageKit/commit/58c7c0285, bsc#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1662120000">- Add PackageKit-zypp-dont-refresh-before-searching.patch:
  zypp: Don't refresh repos before searching
  (gh#PackageKit/PackageKit/commit/58c7c0285, bsc#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1664193600">- Add PackageKit-zypp-dont-remove-locked-packages.patch: zypp:
  Check if packages are locked before removing
  (gh#PackageKit/PackageKit/commit/8649a07bc, bsc#1199895).
- Add PackageKit-zypp-add-repo-in-packageid.patch: zypp: add
  repository data in package id
  (gh#PackageKit/PackageKit/commit/8eb2ef0ae, bsc#1202585).
- Remove PackageKit-zypp-locked-packages.patch: reverted upstream
  (gh#PackageKit/PackageKit/commit/ed3e38043).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1673006400">- Add PackageKit-zypp-fix-ambiguous-filesystem-reference.patch:
  zypp: Fix ambiguous reference to 'filesystem' class
  (gh#PackageKit/PackageKit/commit/bb1409a71, bsc#1206687).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678708800">- Add PackageKit-fix-pkcon-permission.patch: trivial: Drop
  unnecessary x permission
  (gh#PackageKit/PackageKit/commit/47b7f97bc, bsc#1209138)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1689595200">- Add PackageKit-dynamic-export.patch: fix loading of modules when
  built using glib 2.70 (boo#1213309).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1699531200">- Update to version 1.2.8:
  + Libraries:
  - offline-updates:
    . Make package update list deduplication more efficient.
    . Add only one entry per package to 'offline-update-competed'
    file.
  - PkClient: Replace the GSimpleAsyncResult with the GTask API.
  - pk-client:
    . Fix use-before-set of PkProgress on cancellation.
    . Move cancellable disconnect to dispose.
    . Rework refcounting for PkClientState.
  + Backends: Changes to apt, dnf, PiSi and BSD backends.
- Changes from version 1.2.7:
  + New Features:
  - pkclient: Add an option to count download size with
    dependencies.
  - pk-transaction: Add support for getting the RemainingTime
    property.
  + Backends:
  - zypp: Fix ambiguous reference to 'filesystem' class.
  - Changes to dnf, apt, alpm backends.
- Changes from version 1.2.6:
  + New Features:
  - Expose transaction sender as read-only property on the bus.
  - pkmon: Display transaction sender binary name in log.
  - pk-transaction: Add Packages signal.
  - pk-transaction: Combine some D-Bus PropertiesChanged signal
    emissions.
  - pk-transaction: Add UpdateDetails signal.
  + Backends:
  - zypp:
    . implement upgrade-system method.
    . Clean up trailing whitespaces.
    . Avoid statuReset() on locked packages.
    . restore pool status after simulating an update.
    . Disable upgrade-system support in SLE.
    . build the pool before calling is_tumbleweed().
    . update libzypp dependency version.
    . Don't refresh repos before searching.
    . Check if packages are locked before removing.
    . add repository data in package id.
    . Remove trailing whitespace.
    + Changes to alpm, aptcc, apt, and nix backends.
- Rebase patches:
  + PackageKit-dnf-Add-support-for-AppStream-repodata-basenames-use.patch
  + PackageKit-dynamic-export.patch
  + PackageKit-zypp-disable-upgrade-system-in-sle.patch
- Drop upstream fixed patches:
  + PackageKit-zypp-add-repo-in-packageid.patch
  + PackageKit-zypp-add-upgrade-system.patch
  + PackageKit-zypp-avoid-statuReset.patch
  + PackageKit-zypp-dont-refresh-before-searching.patch
  + PackageKit-zypp-dont-remove-locked-packages.patch
  + PackageKit-zypp-fix-ambiguous-filesystem-reference.patch
  + PackageKit-zypp-fix-is-tumbleweed-check.patch
  + PackageKit-zypp-restore-pool-status-after-simulating-update.patch
  + PackageKit-zypp-update-libzypp-dependency-version.patch</changelog>
  <changelog author="Alynx Zhou &lt;alynx.zhou@suse.com&gt;" date="1704196800">- Add PackageKit-find-python-3-6.patch: Specify the Python version
  we need to build this package.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1709640000">- Drop baselibs.conf: the -32bit packages are no longer needed and
  have not been part of Tumbleweed for a while already (build for
  i586 only enabled in LegacyX86).</changelog>
  <changelog author="Alynx Zhou &lt;alynx.zhou@suse.com&gt;" date="1723550400">- Add PackageKit-mark-as-compulsory.patch: Prevent PackageKit from
  user uninstallable for most desktops (bsc#1226269).</changelog>
</package>
<package pkgid="bdfe3918e5b7417cc6373414e68a00889c7cf56d45637f3cb413372b38981c57f9204f4e8618ee038435deadf51d59ec6629d131a15eb1acce6a8204c33be408" name="PackageKit-devel" arch="x86_64">
  <version epoch="0" ver="1.2.8" rel="5.0.2.1.sr20240901"/>
  <changelog author="Stanislav Brabec &lt;sbrabec@suse.com&gt;" date="1631793600">- Remove obsolete translation-update-upstream support
  (jsc#SLE-21105).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1636113600">- Update to version 1.2.4:
  + Libraries:
  - Add specific error code when user declined interaction
  - Avoid spurious GObject::notify signal emissions
  - Correct 'cancellable' use in pk_client_repair_system_async()
  - Fix a leak on calling set_locale() a second time
  - Fix a possible use-after-free under pk_client_cancel_cb()
  - Improve thread safety on an operation cancellation
  + Backends:
  - dnf:
    . Read update information also when getting list of updates
    . Honor install_weak_deps=False if it is there
    . Use 'hy_query_get_advisory_pkgs', if available
  + New Features:
  - PkDetails: Add 'download-size' property
  - PkPackage: Add update severity property
  + Bugfixes:
  - Let the finish understand the 'cancelled' exit code
  - Make backends that use pk-backend-spawn work (#477)
  - Only set polkit interactive flag if method call has too
- Changes from version 1.2.3:
  + Backends:
  - alpm:
    . Add post transaction hook
    . Rename errno to alpm_err to avoid name clashes
  - aptcc: Auto-remove old kernels, unless configured otherwise
  - dnf: Add support for coercing upgrade to distupgrade
  - zypp:
    . Make sure pool is initialized at the beginning of some
    methods
    . Reset update mode after getting updates
  + Bugfixes:
  - Append to cron log instead of overwriting it
  - Cancel a transaction if calling Cancel fails or the daemon
    disappears
  - Do not crash when calling pk_dbus_get_uid() before D-Bus is
    setup
  - Fix all compiler warnings
  - Fix multilib conflicts in generated pk-enum-types.h
  - Free scheduler array correctly again
  - Remove large transaction size sanity check
- Drop patches fixed upstream:
  + PackageKit-zypp-cleanup-tmp-files.patch
  + PackageKit-zypp-reset-update-mode-after-get-updates.patch
  + PackageKit-dnf-Add-support-for-coercing-upgrade-to-distupgrade.patch
  + PackageKit-zypp-initialize-pool.patch
  + PackageKit-remove-transaction-size-limit.patch
  + PackageKit-cancel-transaction-if-daemon-disappears.patch
  + PackageKit-dnf-ignore-weak-deps.patch
- Add 505.patch: pk-offline: Add flags to D-Bus invoking methods.
  That's currently to be able to set whether the method should be
  interactive or not. The old functions call the methods as
  non-interactive.</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1636113601">- Add PackageKit-zypp-c++17.patch: Fix build failure when building
  with libzypp &gt; 17.28.5 and gcc &lt; 11
  (gh#hughsie/PackageKit/commit/1a6bb6ae6, bsc#1192349).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1637064000">- Rewrite prep phase to not use autopatch -M: SLE15/Leap15's RPM
  version does not support that syntax yet.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1637064001">- Apply all patches unconditonally: PackageKit-zypp-c++17.patch is
  merged in upstream git and thus does not justify to be
  conditionally applied.
- Switching back to autosetup, as this works without conditional
  patches.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1653048000">- Update to version 1.2.5:
  + Backends:
  - dnf:
    . Add support for autoremove flag when removing packages.
    . Searches by name and package details should be case
    insensitive.
    . Update appstream xml files if dnf_sack_add_repos() does
    the download.
  - zypp:
    . Add -std=c++1z cpp flags.
    . Fix crash when search string is NULL.
    . Fix package installation using undefined data.
  - Changes to alpm, apttcc, nix, and slack.
  + Bugfixes:
  - Install offline-update enablement symlink if Meson is new
    enough.
  - Move Wants= line for network-online.target.
  - Add flags to D-Bus offline invoking methods.
  - Properly handle allow-reinstall flag for installations.
  - Provide better error message if trying to install an
    installed package.
  - Wait until online to activate systemd service.
- Drop 505.patch, PackageKit-zypp-c++17.patch, and
  PackageKit-zypp-fix-crash-with-empty-search-string.patch: fixed
  upstream.</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1653566400">- Add PackageKit-zypp-locked-packages.patch: zypp: ignore locked
  packages(gh#hughsie/PackageKit#543, boo#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1656676800">- Add PackageKit-zypp-add-upgrade-system.patch: implement
  upgrade-system method(gh#hughsie/PackageKit/commit/930dd201b).</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1657368000">- Move the dbus-1 system.d file to /usr (bsc#1201347)</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1659528000">- Modified PackageKit.spec: bump libzypp dependency version to
  17.31.0.
- Add PackageKit-zypp-avoid-statuReset.patch: zypp: Avoid
  statuReset() on locked packages
  (gh#PackageKit/PackageKit/commit/dd1964255, bsc#1199895).
- Add PackageKit-zypp-disable-upgrade-system-in-sle.patch: zypp:
  Disable upgrade-system support in SLE
  (gh#PackageKit/PackageKit/commit/0fcd820c2).
- Add PackageKit-zypp-restore-pool-status-after-simulating-update.patch:
  zypp: restore pool status after simulating an update
  (gh#PackageKit/PackageKit/commit/2b61a6649, bsc#1199895).
- Add PackageKit-zypp-fix-is-tumbleweed-check.patch: zypp: build
  the pool before calling is_tumbleweed()
  (gh#PackageKit/PackageKit/commit/146890153).
- Add PackageKit-zypp-update-libzypp-dependency-version.patch:
  zypp: update libzypp dependency version
  (gh#PackageKit/PackageKit/commit/58c7c0285, bsc#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1662120000">- Add PackageKit-zypp-dont-refresh-before-searching.patch:
  zypp: Don't refresh repos before searching
  (gh#PackageKit/PackageKit/commit/58c7c0285, bsc#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1664193600">- Add PackageKit-zypp-dont-remove-locked-packages.patch: zypp:
  Check if packages are locked before removing
  (gh#PackageKit/PackageKit/commit/8649a07bc, bsc#1199895).
- Add PackageKit-zypp-add-repo-in-packageid.patch: zypp: add
  repository data in package id
  (gh#PackageKit/PackageKit/commit/8eb2ef0ae, bsc#1202585).
- Remove PackageKit-zypp-locked-packages.patch: reverted upstream
  (gh#PackageKit/PackageKit/commit/ed3e38043).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1673006400">- Add PackageKit-zypp-fix-ambiguous-filesystem-reference.patch:
  zypp: Fix ambiguous reference to 'filesystem' class
  (gh#PackageKit/PackageKit/commit/bb1409a71, bsc#1206687).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678708800">- Add PackageKit-fix-pkcon-permission.patch: trivial: Drop
  unnecessary x permission
  (gh#PackageKit/PackageKit/commit/47b7f97bc, bsc#1209138)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1689595200">- Add PackageKit-dynamic-export.patch: fix loading of modules when
  built using glib 2.70 (boo#1213309).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1699531200">- Update to version 1.2.8:
  + Libraries:
  - offline-updates:
    . Make package update list deduplication more efficient.
    . Add only one entry per package to 'offline-update-competed'
    file.
  - PkClient: Replace the GSimpleAsyncResult with the GTask API.
  - pk-client:
    . Fix use-before-set of PkProgress on cancellation.
    . Move cancellable disconnect to dispose.
    . Rework refcounting for PkClientState.
  + Backends: Changes to apt, dnf, PiSi and BSD backends.
- Changes from version 1.2.7:
  + New Features:
  - pkclient: Add an option to count download size with
    dependencies.
  - pk-transaction: Add support for getting the RemainingTime
    property.
  + Backends:
  - zypp: Fix ambiguous reference to 'filesystem' class.
  - Changes to dnf, apt, alpm backends.
- Changes from version 1.2.6:
  + New Features:
  - Expose transaction sender as read-only property on the bus.
  - pkmon: Display transaction sender binary name in log.
  - pk-transaction: Add Packages signal.
  - pk-transaction: Combine some D-Bus PropertiesChanged signal
    emissions.
  - pk-transaction: Add UpdateDetails signal.
  + Backends:
  - zypp:
    . implement upgrade-system method.
    . Clean up trailing whitespaces.
    . Avoid statuReset() on locked packages.
    . restore pool status after simulating an update.
    . Disable upgrade-system support in SLE.
    . build the pool before calling is_tumbleweed().
    . update libzypp dependency version.
    . Don't refresh repos before searching.
    . Check if packages are locked before removing.
    . add repository data in package id.
    . Remove trailing whitespace.
    + Changes to alpm, aptcc, apt, and nix backends.
- Rebase patches:
  + PackageKit-dnf-Add-support-for-AppStream-repodata-basenames-use.patch
  + PackageKit-dynamic-export.patch
  + PackageKit-zypp-disable-upgrade-system-in-sle.patch
- Drop upstream fixed patches:
  + PackageKit-zypp-add-repo-in-packageid.patch
  + PackageKit-zypp-add-upgrade-system.patch
  + PackageKit-zypp-avoid-statuReset.patch
  + PackageKit-zypp-dont-refresh-before-searching.patch
  + PackageKit-zypp-dont-remove-locked-packages.patch
  + PackageKit-zypp-fix-ambiguous-filesystem-reference.patch
  + PackageKit-zypp-fix-is-tumbleweed-check.patch
  + PackageKit-zypp-restore-pool-status-after-simulating-update.patch
  + PackageKit-zypp-update-libzypp-dependency-version.patch</changelog>
  <changelog author="Alynx Zhou &lt;alynx.zhou@suse.com&gt;" date="1704196800">- Add PackageKit-find-python-3-6.patch: Specify the Python version
  we need to build this package.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1709640000">- Drop baselibs.conf: the -32bit packages are no longer needed and
  have not been part of Tumbleweed for a while already (build for
  i586 only enabled in LegacyX86).</changelog>
  <changelog author="Alynx Zhou &lt;alynx.zhou@suse.com&gt;" date="1723550400">- Add PackageKit-mark-as-compulsory.patch: Prevent PackageKit from
  user uninstallable for most desktops (bsc#1226269).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1726142400">- Add PackageKit-zypp-dont-install-updateCandidateObj.patch:
  zypp: Mark the correct packages to-be-installed (bsc#1227389,
  gh#PackageKit/PackageKit/commit/209aa6295).</changelog>
</package>
<package pkgid="4dd706bc4d49736a623f42da8d17ab40acd6f928b46c7669f9a4589707b2c54c90ab1a507b4dc2498b133bca13d7908da971f9ed4d4bf8dc5e337541b3216450" name="PackageKit-devel" arch="x86_64">
  <version epoch="0" ver="1.2.8" rel="5.1"/>
  <changelog author="Stanislav Brabec &lt;sbrabec@suse.com&gt;" date="1631793600">- Remove obsolete translation-update-upstream support
  (jsc#SLE-21105).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1636113600">- Update to version 1.2.4:
  + Libraries:
  - Add specific error code when user declined interaction
  - Avoid spurious GObject::notify signal emissions
  - Correct 'cancellable' use in pk_client_repair_system_async()
  - Fix a leak on calling set_locale() a second time
  - Fix a possible use-after-free under pk_client_cancel_cb()
  - Improve thread safety on an operation cancellation
  + Backends:
  - dnf:
    . Read update information also when getting list of updates
    . Honor install_weak_deps=False if it is there
    . Use 'hy_query_get_advisory_pkgs', if available
  + New Features:
  - PkDetails: Add 'download-size' property
  - PkPackage: Add update severity property
  + Bugfixes:
  - Let the finish understand the 'cancelled' exit code
  - Make backends that use pk-backend-spawn work (#477)
  - Only set polkit interactive flag if method call has too
- Changes from version 1.2.3:
  + Backends:
  - alpm:
    . Add post transaction hook
    . Rename errno to alpm_err to avoid name clashes
  - aptcc: Auto-remove old kernels, unless configured otherwise
  - dnf: Add support for coercing upgrade to distupgrade
  - zypp:
    . Make sure pool is initialized at the beginning of some
    methods
    . Reset update mode after getting updates
  + Bugfixes:
  - Append to cron log instead of overwriting it
  - Cancel a transaction if calling Cancel fails or the daemon
    disappears
  - Do not crash when calling pk_dbus_get_uid() before D-Bus is
    setup
  - Fix all compiler warnings
  - Fix multilib conflicts in generated pk-enum-types.h
  - Free scheduler array correctly again
  - Remove large transaction size sanity check
- Drop patches fixed upstream:
  + PackageKit-zypp-cleanup-tmp-files.patch
  + PackageKit-zypp-reset-update-mode-after-get-updates.patch
  + PackageKit-dnf-Add-support-for-coercing-upgrade-to-distupgrade.patch
  + PackageKit-zypp-initialize-pool.patch
  + PackageKit-remove-transaction-size-limit.patch
  + PackageKit-cancel-transaction-if-daemon-disappears.patch
  + PackageKit-dnf-ignore-weak-deps.patch
- Add 505.patch: pk-offline: Add flags to D-Bus invoking methods.
  That's currently to be able to set whether the method should be
  interactive or not. The old functions call the methods as
  non-interactive.</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1636113601">- Add PackageKit-zypp-c++17.patch: Fix build failure when building
  with libzypp &gt; 17.28.5 and gcc &lt; 11
  (gh#hughsie/PackageKit/commit/1a6bb6ae6, bsc#1192349).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1637064000">- Rewrite prep phase to not use autopatch -M: SLE15/Leap15's RPM
  version does not support that syntax yet.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1637064001">- Apply all patches unconditonally: PackageKit-zypp-c++17.patch is
  merged in upstream git and thus does not justify to be
  conditionally applied.
- Switching back to autosetup, as this works without conditional
  patches.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1653048000">- Update to version 1.2.5:
  + Backends:
  - dnf:
    . Add support for autoremove flag when removing packages.
    . Searches by name and package details should be case
    insensitive.
    . Update appstream xml files if dnf_sack_add_repos() does
    the download.
  - zypp:
    . Add -std=c++1z cpp flags.
    . Fix crash when search string is NULL.
    . Fix package installation using undefined data.
  - Changes to alpm, apttcc, nix, and slack.
  + Bugfixes:
  - Install offline-update enablement symlink if Meson is new
    enough.
  - Move Wants= line for network-online.target.
  - Add flags to D-Bus offline invoking methods.
  - Properly handle allow-reinstall flag for installations.
  - Provide better error message if trying to install an
    installed package.
  - Wait until online to activate systemd service.
- Drop 505.patch, PackageKit-zypp-c++17.patch, and
  PackageKit-zypp-fix-crash-with-empty-search-string.patch: fixed
  upstream.</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1653566400">- Add PackageKit-zypp-locked-packages.patch: zypp: ignore locked
  packages(gh#hughsie/PackageKit#543, boo#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1656676800">- Add PackageKit-zypp-add-upgrade-system.patch: implement
  upgrade-system method(gh#hughsie/PackageKit/commit/930dd201b).</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1657368000">- Move the dbus-1 system.d file to /usr (bsc#1201347)</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1659528000">- Modified PackageKit.spec: bump libzypp dependency version to
  17.31.0.
- Add PackageKit-zypp-avoid-statuReset.patch: zypp: Avoid
  statuReset() on locked packages
  (gh#PackageKit/PackageKit/commit/dd1964255, bsc#1199895).
- Add PackageKit-zypp-disable-upgrade-system-in-sle.patch: zypp:
  Disable upgrade-system support in SLE
  (gh#PackageKit/PackageKit/commit/0fcd820c2).
- Add PackageKit-zypp-restore-pool-status-after-simulating-update.patch:
  zypp: restore pool status after simulating an update
  (gh#PackageKit/PackageKit/commit/2b61a6649, bsc#1199895).
- Add PackageKit-zypp-fix-is-tumbleweed-check.patch: zypp: build
  the pool before calling is_tumbleweed()
  (gh#PackageKit/PackageKit/commit/146890153).
- Add PackageKit-zypp-update-libzypp-dependency-version.patch:
  zypp: update libzypp dependency version
  (gh#PackageKit/PackageKit/commit/58c7c0285, bsc#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1662120000">- Add PackageKit-zypp-dont-refresh-before-searching.patch:
  zypp: Don't refresh repos before searching
  (gh#PackageKit/PackageKit/commit/58c7c0285, bsc#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1664193600">- Add PackageKit-zypp-dont-remove-locked-packages.patch: zypp:
  Check if packages are locked before removing
  (gh#PackageKit/PackageKit/commit/8649a07bc, bsc#1199895).
- Add PackageKit-zypp-add-repo-in-packageid.patch: zypp: add
  repository data in package id
  (gh#PackageKit/PackageKit/commit/8eb2ef0ae, bsc#1202585).
- Remove PackageKit-zypp-locked-packages.patch: reverted upstream
  (gh#PackageKit/PackageKit/commit/ed3e38043).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1673006400">- Add PackageKit-zypp-fix-ambiguous-filesystem-reference.patch:
  zypp: Fix ambiguous reference to 'filesystem' class
  (gh#PackageKit/PackageKit/commit/bb1409a71, bsc#1206687).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678708800">- Add PackageKit-fix-pkcon-permission.patch: trivial: Drop
  unnecessary x permission
  (gh#PackageKit/PackageKit/commit/47b7f97bc, bsc#1209138)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1689595200">- Add PackageKit-dynamic-export.patch: fix loading of modules when
  built using glib 2.70 (boo#1213309).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1699531200">- Update to version 1.2.8:
  + Libraries:
  - offline-updates:
    . Make package update list deduplication more efficient.
    . Add only one entry per package to 'offline-update-competed'
    file.
  - PkClient: Replace the GSimpleAsyncResult with the GTask API.
  - pk-client:
    . Fix use-before-set of PkProgress on cancellation.
    . Move cancellable disconnect to dispose.
    . Rework refcounting for PkClientState.
  + Backends: Changes to apt, dnf, PiSi and BSD backends.
- Changes from version 1.2.7:
  + New Features:
  - pkclient: Add an option to count download size with
    dependencies.
  - pk-transaction: Add support for getting the RemainingTime
    property.
  + Backends:
  - zypp: Fix ambiguous reference to 'filesystem' class.
  - Changes to dnf, apt, alpm backends.
- Changes from version 1.2.6:
  + New Features:
  - Expose transaction sender as read-only property on the bus.
  - pkmon: Display transaction sender binary name in log.
  - pk-transaction: Add Packages signal.
  - pk-transaction: Combine some D-Bus PropertiesChanged signal
    emissions.
  - pk-transaction: Add UpdateDetails signal.
  + Backends:
  - zypp:
    . implement upgrade-system method.
    . Clean up trailing whitespaces.
    . Avoid statuReset() on locked packages.
    . restore pool status after simulating an update.
    . Disable upgrade-system support in SLE.
    . build the pool before calling is_tumbleweed().
    . update libzypp dependency version.
    . Don't refresh repos before searching.
    . Check if packages are locked before removing.
    . add repository data in package id.
    . Remove trailing whitespace.
    + Changes to alpm, aptcc, apt, and nix backends.
- Rebase patches:
  + PackageKit-dnf-Add-support-for-AppStream-repodata-basenames-use.patch
  + PackageKit-dynamic-export.patch
  + PackageKit-zypp-disable-upgrade-system-in-sle.patch
- Drop upstream fixed patches:
  + PackageKit-zypp-add-repo-in-packageid.patch
  + PackageKit-zypp-add-upgrade-system.patch
  + PackageKit-zypp-avoid-statuReset.patch
  + PackageKit-zypp-dont-refresh-before-searching.patch
  + PackageKit-zypp-dont-remove-locked-packages.patch
  + PackageKit-zypp-fix-ambiguous-filesystem-reference.patch
  + PackageKit-zypp-fix-is-tumbleweed-check.patch
  + PackageKit-zypp-restore-pool-status-after-simulating-update.patch
  + PackageKit-zypp-update-libzypp-dependency-version.patch</changelog>
  <changelog author="Alynx Zhou &lt;alynx.zhou@suse.com&gt;" date="1704196800">- Add PackageKit-find-python-3-6.patch: Specify the Python version
  we need to build this package.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1709640000">- Drop baselibs.conf: the -32bit packages are no longer needed and
  have not been part of Tumbleweed for a while already (build for
  i586 only enabled in LegacyX86).</changelog>
  <changelog author="Alynx Zhou &lt;alynx.zhou@suse.com&gt;" date="1723550400">- Add PackageKit-mark-as-compulsory.patch: Prevent PackageKit from
  user uninstallable for most desktops (bsc#1226269).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1726142400">- Add PackageKit-zypp-dont-install-updateCandidateObj.patch:
  zypp: Mark the correct packages to-be-installed (bsc#1227389,
  gh#PackageKit/PackageKit/commit/209aa6295).</changelog>
</package>
<package pkgid="2164f168a037b121d86aaf2ccddcde2954adfd6534a5a33d1dac171f7d5901a03d3434446226df309d0144f7e11840f60751e75d227ef7922da6d7c8f7275b57" name="PackageKit-devel" arch="x86_64">
  <version epoch="0" ver="1.2.8" rel="6.1"/>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1636113600">- Update to version 1.2.4:
  + Libraries:
  - Add specific error code when user declined interaction
  - Avoid spurious GObject::notify signal emissions
  - Correct 'cancellable' use in pk_client_repair_system_async()
  - Fix a leak on calling set_locale() a second time
  - Fix a possible use-after-free under pk_client_cancel_cb()
  - Improve thread safety on an operation cancellation
  + Backends:
  - dnf:
    . Read update information also when getting list of updates
    . Honor install_weak_deps=False if it is there
    . Use 'hy_query_get_advisory_pkgs', if available
  + New Features:
  - PkDetails: Add 'download-size' property
  - PkPackage: Add update severity property
  + Bugfixes:
  - Let the finish understand the 'cancelled' exit code
  - Make backends that use pk-backend-spawn work (#477)
  - Only set polkit interactive flag if method call has too
- Changes from version 1.2.3:
  + Backends:
  - alpm:
    . Add post transaction hook
    . Rename errno to alpm_err to avoid name clashes
  - aptcc: Auto-remove old kernels, unless configured otherwise
  - dnf: Add support for coercing upgrade to distupgrade
  - zypp:
    . Make sure pool is initialized at the beginning of some
    methods
    . Reset update mode after getting updates
  + Bugfixes:
  - Append to cron log instead of overwriting it
  - Cancel a transaction if calling Cancel fails or the daemon
    disappears
  - Do not crash when calling pk_dbus_get_uid() before D-Bus is
    setup
  - Fix all compiler warnings
  - Fix multilib conflicts in generated pk-enum-types.h
  - Free scheduler array correctly again
  - Remove large transaction size sanity check
- Drop patches fixed upstream:
  + PackageKit-zypp-cleanup-tmp-files.patch
  + PackageKit-zypp-reset-update-mode-after-get-updates.patch
  + PackageKit-dnf-Add-support-for-coercing-upgrade-to-distupgrade.patch
  + PackageKit-zypp-initialize-pool.patch
  + PackageKit-remove-transaction-size-limit.patch
  + PackageKit-cancel-transaction-if-daemon-disappears.patch
  + PackageKit-dnf-ignore-weak-deps.patch
- Add 505.patch: pk-offline: Add flags to D-Bus invoking methods.
  That's currently to be able to set whether the method should be
  interactive or not. The old functions call the methods as
  non-interactive.</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1636113601">- Add PackageKit-zypp-c++17.patch: Fix build failure when building
  with libzypp &gt; 17.28.5 and gcc &lt; 11
  (gh#hughsie/PackageKit/commit/1a6bb6ae6, bsc#1192349).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1637064000">- Rewrite prep phase to not use autopatch -M: SLE15/Leap15's RPM
  version does not support that syntax yet.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1637064001">- Apply all patches unconditonally: PackageKit-zypp-c++17.patch is
  merged in upstream git and thus does not justify to be
  conditionally applied.
- Switching back to autosetup, as this works without conditional
  patches.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1653048000">- Update to version 1.2.5:
  + Backends:
  - dnf:
    . Add support for autoremove flag when removing packages.
    . Searches by name and package details should be case
    insensitive.
    . Update appstream xml files if dnf_sack_add_repos() does
    the download.
  - zypp:
    . Add -std=c++1z cpp flags.
    . Fix crash when search string is NULL.
    . Fix package installation using undefined data.
  - Changes to alpm, apttcc, nix, and slack.
  + Bugfixes:
  - Install offline-update enablement symlink if Meson is new
    enough.
  - Move Wants= line for network-online.target.
  - Add flags to D-Bus offline invoking methods.
  - Properly handle allow-reinstall flag for installations.
  - Provide better error message if trying to install an
    installed package.
  - Wait until online to activate systemd service.
- Drop 505.patch, PackageKit-zypp-c++17.patch, and
  PackageKit-zypp-fix-crash-with-empty-search-string.patch: fixed
  upstream.</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1653566400">- Add PackageKit-zypp-locked-packages.patch: zypp: ignore locked
  packages(gh#hughsie/PackageKit#543, boo#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1656676800">- Add PackageKit-zypp-add-upgrade-system.patch: implement
  upgrade-system method(gh#hughsie/PackageKit/commit/930dd201b).</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1657368000">- Move the dbus-1 system.d file to /usr (bsc#1201347)</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1659528000">- Modified PackageKit.spec: bump libzypp dependency version to
  17.31.0.
- Add PackageKit-zypp-avoid-statuReset.patch: zypp: Avoid
  statuReset() on locked packages
  (gh#PackageKit/PackageKit/commit/dd1964255, bsc#1199895).
- Add PackageKit-zypp-disable-upgrade-system-in-sle.patch: zypp:
  Disable upgrade-system support in SLE
  (gh#PackageKit/PackageKit/commit/0fcd820c2).
- Add PackageKit-zypp-restore-pool-status-after-simulating-update.patch:
  zypp: restore pool status after simulating an update
  (gh#PackageKit/PackageKit/commit/2b61a6649, bsc#1199895).
- Add PackageKit-zypp-fix-is-tumbleweed-check.patch: zypp: build
  the pool before calling is_tumbleweed()
  (gh#PackageKit/PackageKit/commit/146890153).
- Add PackageKit-zypp-update-libzypp-dependency-version.patch:
  zypp: update libzypp dependency version
  (gh#PackageKit/PackageKit/commit/58c7c0285, bsc#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1662120000">- Add PackageKit-zypp-dont-refresh-before-searching.patch:
  zypp: Don't refresh repos before searching
  (gh#PackageKit/PackageKit/commit/58c7c0285, bsc#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1664193600">- Add PackageKit-zypp-dont-remove-locked-packages.patch: zypp:
  Check if packages are locked before removing
  (gh#PackageKit/PackageKit/commit/8649a07bc, bsc#1199895).
- Add PackageKit-zypp-add-repo-in-packageid.patch: zypp: add
  repository data in package id
  (gh#PackageKit/PackageKit/commit/8eb2ef0ae, bsc#1202585).
- Remove PackageKit-zypp-locked-packages.patch: reverted upstream
  (gh#PackageKit/PackageKit/commit/ed3e38043).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1673006400">- Add PackageKit-zypp-fix-ambiguous-filesystem-reference.patch:
  zypp: Fix ambiguous reference to 'filesystem' class
  (gh#PackageKit/PackageKit/commit/bb1409a71, bsc#1206687).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678708800">- Add PackageKit-fix-pkcon-permission.patch: trivial: Drop
  unnecessary x permission
  (gh#PackageKit/PackageKit/commit/47b7f97bc, bsc#1209138)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1689595200">- Add PackageKit-dynamic-export.patch: fix loading of modules when
  built using glib 2.70 (boo#1213309).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1699531200">- Update to version 1.2.8:
  + Libraries:
  - offline-updates:
    . Make package update list deduplication more efficient.
    . Add only one entry per package to 'offline-update-competed'
    file.
  - PkClient: Replace the GSimpleAsyncResult with the GTask API.
  - pk-client:
    . Fix use-before-set of PkProgress on cancellation.
    . Move cancellable disconnect to dispose.
    . Rework refcounting for PkClientState.
  + Backends: Changes to apt, dnf, PiSi and BSD backends.
- Changes from version 1.2.7:
  + New Features:
  - pkclient: Add an option to count download size with
    dependencies.
  - pk-transaction: Add support for getting the RemainingTime
    property.
  + Backends:
  - zypp: Fix ambiguous reference to 'filesystem' class.
  - Changes to dnf, apt, alpm backends.
- Changes from version 1.2.6:
  + New Features:
  - Expose transaction sender as read-only property on the bus.
  - pkmon: Display transaction sender binary name in log.
  - pk-transaction: Add Packages signal.
  - pk-transaction: Combine some D-Bus PropertiesChanged signal
    emissions.
  - pk-transaction: Add UpdateDetails signal.
  + Backends:
  - zypp:
    . implement upgrade-system method.
    . Clean up trailing whitespaces.
    . Avoid statuReset() on locked packages.
    . restore pool status after simulating an update.
    . Disable upgrade-system support in SLE.
    . build the pool before calling is_tumbleweed().
    . update libzypp dependency version.
    . Don't refresh repos before searching.
    . Check if packages are locked before removing.
    . add repository data in package id.
    . Remove trailing whitespace.
    + Changes to alpm, aptcc, apt, and nix backends.
- Rebase patches:
  + PackageKit-dnf-Add-support-for-AppStream-repodata-basenames-use.patch
  + PackageKit-dynamic-export.patch
  + PackageKit-zypp-disable-upgrade-system-in-sle.patch
- Drop upstream fixed patches:
  + PackageKit-zypp-add-repo-in-packageid.patch
  + PackageKit-zypp-add-upgrade-system.patch
  + PackageKit-zypp-avoid-statuReset.patch
  + PackageKit-zypp-dont-refresh-before-searching.patch
  + PackageKit-zypp-dont-remove-locked-packages.patch
  + PackageKit-zypp-fix-ambiguous-filesystem-reference.patch
  + PackageKit-zypp-fix-is-tumbleweed-check.patch
  + PackageKit-zypp-restore-pool-status-after-simulating-update.patch
  + PackageKit-zypp-update-libzypp-dependency-version.patch</changelog>
  <changelog author="Alynx Zhou &lt;alynx.zhou@suse.com&gt;" date="1704196800">- Add PackageKit-find-python-3-6.patch: Specify the Python version
  we need to build this package.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1709640000">- Drop baselibs.conf: the -32bit packages are no longer needed and
  have not been part of Tumbleweed for a while already (build for
  i586 only enabled in LegacyX86).</changelog>
  <changelog author="Alynx Zhou &lt;alynx.zhou@suse.com&gt;" date="1723550400">- Add PackageKit-mark-as-compulsory.patch: Prevent PackageKit from
  user uninstallable for most desktops (bsc#1226269).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1726142400">- Add PackageKit-zypp-dont-install-updateCandidateObj.patch:
  zypp: Mark the correct packages to-be-installed (bsc#1227389,
  gh#PackageKit/PackageKit/commit/209aa6295).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1728993600">- Drop rcFOO symlinks (PED-266)
- Drop usage of update-alternatives, but simplify installation of
  /usr/libexec/gst-install-plugins-helper as a direct symlink to
  pk-gstreamer-install.</changelog>
</package>
<package pkgid="df6be8c5a234f99c343a88e994a0757dd3b301aa72cffbdebbaab291388274c9dd31e5933feaec90025d77e8b06a5bc00634fdd20a8e58d8d90f282b21ee6276" name="PackageKit-devel-debuginfo" arch="x86_64">
  <version epoch="0" ver="1.2.8" rel="4.1"/>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1629460800">- Add PackageKit-zypp-fix-crash-with-empty-search-string.patch:
  zypp: Fix crash when search string is NULL (bsc#1179287,
  gh#hughsie/PackageKit/commit#21ccf49).</changelog>
  <changelog author="Stanislav Brabec &lt;sbrabec@suse.com&gt;" date="1631793600">- Remove obsolete translation-update-upstream support
  (jsc#SLE-21105).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1636113600">- Update to version 1.2.4:
  + Libraries:
  - Add specific error code when user declined interaction
  - Avoid spurious GObject::notify signal emissions
  - Correct 'cancellable' use in pk_client_repair_system_async()
  - Fix a leak on calling set_locale() a second time
  - Fix a possible use-after-free under pk_client_cancel_cb()
  - Improve thread safety on an operation cancellation
  + Backends:
  - dnf:
    . Read update information also when getting list of updates
    . Honor install_weak_deps=False if it is there
    . Use 'hy_query_get_advisory_pkgs', if available
  + New Features:
  - PkDetails: Add 'download-size' property
  - PkPackage: Add update severity property
  + Bugfixes:
  - Let the finish understand the 'cancelled' exit code
  - Make backends that use pk-backend-spawn work (#477)
  - Only set polkit interactive flag if method call has too
- Changes from version 1.2.3:
  + Backends:
  - alpm:
    . Add post transaction hook
    . Rename errno to alpm_err to avoid name clashes
  - aptcc: Auto-remove old kernels, unless configured otherwise
  - dnf: Add support for coercing upgrade to distupgrade
  - zypp:
    . Make sure pool is initialized at the beginning of some
    methods
    . Reset update mode after getting updates
  + Bugfixes:
  - Append to cron log instead of overwriting it
  - Cancel a transaction if calling Cancel fails or the daemon
    disappears
  - Do not crash when calling pk_dbus_get_uid() before D-Bus is
    setup
  - Fix all compiler warnings
  - Fix multilib conflicts in generated pk-enum-types.h
  - Free scheduler array correctly again
  - Remove large transaction size sanity check
- Drop patches fixed upstream:
  + PackageKit-zypp-cleanup-tmp-files.patch
  + PackageKit-zypp-reset-update-mode-after-get-updates.patch
  + PackageKit-dnf-Add-support-for-coercing-upgrade-to-distupgrade.patch
  + PackageKit-zypp-initialize-pool.patch
  + PackageKit-remove-transaction-size-limit.patch
  + PackageKit-cancel-transaction-if-daemon-disappears.patch
  + PackageKit-dnf-ignore-weak-deps.patch
- Add 505.patch: pk-offline: Add flags to D-Bus invoking methods.
  That's currently to be able to set whether the method should be
  interactive or not. The old functions call the methods as
  non-interactive.</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1636113601">- Add PackageKit-zypp-c++17.patch: Fix build failure when building
  with libzypp &gt; 17.28.5 and gcc &lt; 11
  (gh#hughsie/PackageKit/commit/1a6bb6ae6, bsc#1192349).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1637064000">- Rewrite prep phase to not use autopatch -M: SLE15/Leap15's RPM
  version does not support that syntax yet.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1637064001">- Apply all patches unconditonally: PackageKit-zypp-c++17.patch is
  merged in upstream git and thus does not justify to be
  conditionally applied.
- Switching back to autosetup, as this works without conditional
  patches.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1653048000">- Update to version 1.2.5:
  + Backends:
  - dnf:
    . Add support for autoremove flag when removing packages.
    . Searches by name and package details should be case
    insensitive.
    . Update appstream xml files if dnf_sack_add_repos() does
    the download.
  - zypp:
    . Add -std=c++1z cpp flags.
    . Fix crash when search string is NULL.
    . Fix package installation using undefined data.
  - Changes to alpm, apttcc, nix, and slack.
  + Bugfixes:
  - Install offline-update enablement symlink if Meson is new
    enough.
  - Move Wants= line for network-online.target.
  - Add flags to D-Bus offline invoking methods.
  - Properly handle allow-reinstall flag for installations.
  - Provide better error message if trying to install an
    installed package.
  - Wait until online to activate systemd service.
- Drop 505.patch, PackageKit-zypp-c++17.patch, and
  PackageKit-zypp-fix-crash-with-empty-search-string.patch: fixed
  upstream.</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1653566400">- Add PackageKit-zypp-locked-packages.patch: zypp: ignore locked
  packages(gh#hughsie/PackageKit#543, boo#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1656676800">- Add PackageKit-zypp-add-upgrade-system.patch: implement
  upgrade-system method(gh#hughsie/PackageKit/commit/930dd201b).</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1657368000">- Move the dbus-1 system.d file to /usr (bsc#1201347)</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1659528000">- Modified PackageKit.spec: bump libzypp dependency version to
  17.31.0.
- Add PackageKit-zypp-avoid-statuReset.patch: zypp: Avoid
  statuReset() on locked packages
  (gh#PackageKit/PackageKit/commit/dd1964255, bsc#1199895).
- Add PackageKit-zypp-disable-upgrade-system-in-sle.patch: zypp:
  Disable upgrade-system support in SLE
  (gh#PackageKit/PackageKit/commit/0fcd820c2).
- Add PackageKit-zypp-restore-pool-status-after-simulating-update.patch:
  zypp: restore pool status after simulating an update
  (gh#PackageKit/PackageKit/commit/2b61a6649, bsc#1199895).
- Add PackageKit-zypp-fix-is-tumbleweed-check.patch: zypp: build
  the pool before calling is_tumbleweed()
  (gh#PackageKit/PackageKit/commit/146890153).
- Add PackageKit-zypp-update-libzypp-dependency-version.patch:
  zypp: update libzypp dependency version
  (gh#PackageKit/PackageKit/commit/58c7c0285, bsc#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1662120000">- Add PackageKit-zypp-dont-refresh-before-searching.patch:
  zypp: Don't refresh repos before searching
  (gh#PackageKit/PackageKit/commit/58c7c0285, bsc#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1664193600">- Add PackageKit-zypp-dont-remove-locked-packages.patch: zypp:
  Check if packages are locked before removing
  (gh#PackageKit/PackageKit/commit/8649a07bc, bsc#1199895).
- Add PackageKit-zypp-add-repo-in-packageid.patch: zypp: add
  repository data in package id
  (gh#PackageKit/PackageKit/commit/8eb2ef0ae, bsc#1202585).
- Remove PackageKit-zypp-locked-packages.patch: reverted upstream
  (gh#PackageKit/PackageKit/commit/ed3e38043).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1673006400">- Add PackageKit-zypp-fix-ambiguous-filesystem-reference.patch:
  zypp: Fix ambiguous reference to 'filesystem' class
  (gh#PackageKit/PackageKit/commit/bb1409a71, bsc#1206687).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678708800">- Add PackageKit-fix-pkcon-permission.patch: trivial: Drop
  unnecessary x permission
  (gh#PackageKit/PackageKit/commit/47b7f97bc, bsc#1209138)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1689595200">- Add PackageKit-dynamic-export.patch: fix loading of modules when
  built using glib 2.70 (boo#1213309).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1699531200">- Update to version 1.2.8:
  + Libraries:
  - offline-updates:
    . Make package update list deduplication more efficient.
    . Add only one entry per package to 'offline-update-competed'
    file.
  - PkClient: Replace the GSimpleAsyncResult with the GTask API.
  - pk-client:
    . Fix use-before-set of PkProgress on cancellation.
    . Move cancellable disconnect to dispose.
    . Rework refcounting for PkClientState.
  + Backends: Changes to apt, dnf, PiSi and BSD backends.
- Changes from version 1.2.7:
  + New Features:
  - pkclient: Add an option to count download size with
    dependencies.
  - pk-transaction: Add support for getting the RemainingTime
    property.
  + Backends:
  - zypp: Fix ambiguous reference to 'filesystem' class.
  - Changes to dnf, apt, alpm backends.
- Changes from version 1.2.6:
  + New Features:
  - Expose transaction sender as read-only property on the bus.
  - pkmon: Display transaction sender binary name in log.
  - pk-transaction: Add Packages signal.
  - pk-transaction: Combine some D-Bus PropertiesChanged signal
    emissions.
  - pk-transaction: Add UpdateDetails signal.
  + Backends:
  - zypp:
    . implement upgrade-system method.
    . Clean up trailing whitespaces.
    . Avoid statuReset() on locked packages.
    . restore pool status after simulating an update.
    . Disable upgrade-system support in SLE.
    . build the pool before calling is_tumbleweed().
    . update libzypp dependency version.
    . Don't refresh repos before searching.
    . Check if packages are locked before removing.
    . add repository data in package id.
    . Remove trailing whitespace.
    + Changes to alpm, aptcc, apt, and nix backends.
- Rebase patches:
  + PackageKit-dnf-Add-support-for-AppStream-repodata-basenames-use.patch
  + PackageKit-dynamic-export.patch
  + PackageKit-zypp-disable-upgrade-system-in-sle.patch
- Drop upstream fixed patches:
  + PackageKit-zypp-add-repo-in-packageid.patch
  + PackageKit-zypp-add-upgrade-system.patch
  + PackageKit-zypp-avoid-statuReset.patch
  + PackageKit-zypp-dont-refresh-before-searching.patch
  + PackageKit-zypp-dont-remove-locked-packages.patch
  + PackageKit-zypp-fix-ambiguous-filesystem-reference.patch
  + PackageKit-zypp-fix-is-tumbleweed-check.patch
  + PackageKit-zypp-restore-pool-status-after-simulating-update.patch
  + PackageKit-zypp-update-libzypp-dependency-version.patch</changelog>
  <changelog author="Alynx Zhou &lt;alynx.zhou@suse.com&gt;" date="1704196800">- Add PackageKit-find-python-3-6.patch: Specify the Python version
  we need to build this package.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1709640000">- Drop baselibs.conf: the -32bit packages are no longer needed and
  have not been part of Tumbleweed for a while already (build for
  i586 only enabled in LegacyX86).</changelog>
  <changelog author="Alynx Zhou &lt;alynx.zhou@suse.com&gt;" date="1723550400">- Add PackageKit-mark-as-compulsory.patch: Prevent PackageKit from
  user uninstallable for most desktops (bsc#1226269).</changelog>
</package>
<package pkgid="799aacde789461670c06964a0ab676c85aaa2b1ccc695841353352fdf4cc5a744aecda01f61625ba7479f2494e0860c8df18921c4fc0bd555d2761a46cf2f2ee" name="PackageKit-devel-debuginfo" arch="x86_64">
  <version epoch="0" ver="1.2.8" rel="5.0.2.1.sr20240901"/>
  <changelog author="Stanislav Brabec &lt;sbrabec@suse.com&gt;" date="1631793600">- Remove obsolete translation-update-upstream support
  (jsc#SLE-21105).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1636113600">- Update to version 1.2.4:
  + Libraries:
  - Add specific error code when user declined interaction
  - Avoid spurious GObject::notify signal emissions
  - Correct 'cancellable' use in pk_client_repair_system_async()
  - Fix a leak on calling set_locale() a second time
  - Fix a possible use-after-free under pk_client_cancel_cb()
  - Improve thread safety on an operation cancellation
  + Backends:
  - dnf:
    . Read update information also when getting list of updates
    . Honor install_weak_deps=False if it is there
    . Use 'hy_query_get_advisory_pkgs', if available
  + New Features:
  - PkDetails: Add 'download-size' property
  - PkPackage: Add update severity property
  + Bugfixes:
  - Let the finish understand the 'cancelled' exit code
  - Make backends that use pk-backend-spawn work (#477)
  - Only set polkit interactive flag if method call has too
- Changes from version 1.2.3:
  + Backends:
  - alpm:
    . Add post transaction hook
    . Rename errno to alpm_err to avoid name clashes
  - aptcc: Auto-remove old kernels, unless configured otherwise
  - dnf: Add support for coercing upgrade to distupgrade
  - zypp:
    . Make sure pool is initialized at the beginning of some
    methods
    . Reset update mode after getting updates
  + Bugfixes:
  - Append to cron log instead of overwriting it
  - Cancel a transaction if calling Cancel fails or the daemon
    disappears
  - Do not crash when calling pk_dbus_get_uid() before D-Bus is
    setup
  - Fix all compiler warnings
  - Fix multilib conflicts in generated pk-enum-types.h
  - Free scheduler array correctly again
  - Remove large transaction size sanity check
- Drop patches fixed upstream:
  + PackageKit-zypp-cleanup-tmp-files.patch
  + PackageKit-zypp-reset-update-mode-after-get-updates.patch
  + PackageKit-dnf-Add-support-for-coercing-upgrade-to-distupgrade.patch
  + PackageKit-zypp-initialize-pool.patch
  + PackageKit-remove-transaction-size-limit.patch
  + PackageKit-cancel-transaction-if-daemon-disappears.patch
  + PackageKit-dnf-ignore-weak-deps.patch
- Add 505.patch: pk-offline: Add flags to D-Bus invoking methods.
  That's currently to be able to set whether the method should be
  interactive or not. The old functions call the methods as
  non-interactive.</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1636113601">- Add PackageKit-zypp-c++17.patch: Fix build failure when building
  with libzypp &gt; 17.28.5 and gcc &lt; 11
  (gh#hughsie/PackageKit/commit/1a6bb6ae6, bsc#1192349).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1637064000">- Rewrite prep phase to not use autopatch -M: SLE15/Leap15's RPM
  version does not support that syntax yet.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1637064001">- Apply all patches unconditonally: PackageKit-zypp-c++17.patch is
  merged in upstream git and thus does not justify to be
  conditionally applied.
- Switching back to autosetup, as this works without conditional
  patches.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1653048000">- Update to version 1.2.5:
  + Backends:
  - dnf:
    . Add support for autoremove flag when removing packages.
    . Searches by name and package details should be case
    insensitive.
    . Update appstream xml files if dnf_sack_add_repos() does
    the download.
  - zypp:
    . Add -std=c++1z cpp flags.
    . Fix crash when search string is NULL.
    . Fix package installation using undefined data.
  - Changes to alpm, apttcc, nix, and slack.
  + Bugfixes:
  - Install offline-update enablement symlink if Meson is new
    enough.
  - Move Wants= line for network-online.target.
  - Add flags to D-Bus offline invoking methods.
  - Properly handle allow-reinstall flag for installations.
  - Provide better error message if trying to install an
    installed package.
  - Wait until online to activate systemd service.
- Drop 505.patch, PackageKit-zypp-c++17.patch, and
  PackageKit-zypp-fix-crash-with-empty-search-string.patch: fixed
  upstream.</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1653566400">- Add PackageKit-zypp-locked-packages.patch: zypp: ignore locked
  packages(gh#hughsie/PackageKit#543, boo#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1656676800">- Add PackageKit-zypp-add-upgrade-system.patch: implement
  upgrade-system method(gh#hughsie/PackageKit/commit/930dd201b).</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1657368000">- Move the dbus-1 system.d file to /usr (bsc#1201347)</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1659528000">- Modified PackageKit.spec: bump libzypp dependency version to
  17.31.0.
- Add PackageKit-zypp-avoid-statuReset.patch: zypp: Avoid
  statuReset() on locked packages
  (gh#PackageKit/PackageKit/commit/dd1964255, bsc#1199895).
- Add PackageKit-zypp-disable-upgrade-system-in-sle.patch: zypp:
  Disable upgrade-system support in SLE
  (gh#PackageKit/PackageKit/commit/0fcd820c2).
- Add PackageKit-zypp-restore-pool-status-after-simulating-update.patch:
  zypp: restore pool status after simulating an update
  (gh#PackageKit/PackageKit/commit/2b61a6649, bsc#1199895).
- Add PackageKit-zypp-fix-is-tumbleweed-check.patch: zypp: build
  the pool before calling is_tumbleweed()
  (gh#PackageKit/PackageKit/commit/146890153).
- Add PackageKit-zypp-update-libzypp-dependency-version.patch:
  zypp: update libzypp dependency version
  (gh#PackageKit/PackageKit/commit/58c7c0285, bsc#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1662120000">- Add PackageKit-zypp-dont-refresh-before-searching.patch:
  zypp: Don't refresh repos before searching
  (gh#PackageKit/PackageKit/commit/58c7c0285, bsc#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1664193600">- Add PackageKit-zypp-dont-remove-locked-packages.patch: zypp:
  Check if packages are locked before removing
  (gh#PackageKit/PackageKit/commit/8649a07bc, bsc#1199895).
- Add PackageKit-zypp-add-repo-in-packageid.patch: zypp: add
  repository data in package id
  (gh#PackageKit/PackageKit/commit/8eb2ef0ae, bsc#1202585).
- Remove PackageKit-zypp-locked-packages.patch: reverted upstream
  (gh#PackageKit/PackageKit/commit/ed3e38043).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1673006400">- Add PackageKit-zypp-fix-ambiguous-filesystem-reference.patch:
  zypp: Fix ambiguous reference to 'filesystem' class
  (gh#PackageKit/PackageKit/commit/bb1409a71, bsc#1206687).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678708800">- Add PackageKit-fix-pkcon-permission.patch: trivial: Drop
  unnecessary x permission
  (gh#PackageKit/PackageKit/commit/47b7f97bc, bsc#1209138)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1689595200">- Add PackageKit-dynamic-export.patch: fix loading of modules when
  built using glib 2.70 (boo#1213309).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1699531200">- Update to version 1.2.8:
  + Libraries:
  - offline-updates:
    . Make package update list deduplication more efficient.
    . Add only one entry per package to 'offline-update-competed'
    file.
  - PkClient: Replace the GSimpleAsyncResult with the GTask API.
  - pk-client:
    . Fix use-before-set of PkProgress on cancellation.
    . Move cancellable disconnect to dispose.
    . Rework refcounting for PkClientState.
  + Backends: Changes to apt, dnf, PiSi and BSD backends.
- Changes from version 1.2.7:
  + New Features:
  - pkclient: Add an option to count download size with
    dependencies.
  - pk-transaction: Add support for getting the RemainingTime
    property.
  + Backends:
  - zypp: Fix ambiguous reference to 'filesystem' class.
  - Changes to dnf, apt, alpm backends.
- Changes from version 1.2.6:
  + New Features:
  - Expose transaction sender as read-only property on the bus.
  - pkmon: Display transaction sender binary name in log.
  - pk-transaction: Add Packages signal.
  - pk-transaction: Combine some D-Bus PropertiesChanged signal
    emissions.
  - pk-transaction: Add UpdateDetails signal.
  + Backends:
  - zypp:
    . implement upgrade-system method.
    . Clean up trailing whitespaces.
    . Avoid statuReset() on locked packages.
    . restore pool status after simulating an update.
    . Disable upgrade-system support in SLE.
    . build the pool before calling is_tumbleweed().
    . update libzypp dependency version.
    . Don't refresh repos before searching.
    . Check if packages are locked before removing.
    . add repository data in package id.
    . Remove trailing whitespace.
    + Changes to alpm, aptcc, apt, and nix backends.
- Rebase patches:
  + PackageKit-dnf-Add-support-for-AppStream-repodata-basenames-use.patch
  + PackageKit-dynamic-export.patch
  + PackageKit-zypp-disable-upgrade-system-in-sle.patch
- Drop upstream fixed patches:
  + PackageKit-zypp-add-repo-in-packageid.patch
  + PackageKit-zypp-add-upgrade-system.patch
  + PackageKit-zypp-avoid-statuReset.patch
  + PackageKit-zypp-dont-refresh-before-searching.patch
  + PackageKit-zypp-dont-remove-locked-packages.patch
  + PackageKit-zypp-fix-ambiguous-filesystem-reference.patch
  + PackageKit-zypp-fix-is-tumbleweed-check.patch
  + PackageKit-zypp-restore-pool-status-after-simulating-update.patch
  + PackageKit-zypp-update-libzypp-dependency-version.patch</changelog>
  <changelog author="Alynx Zhou &lt;alynx.zhou@suse.com&gt;" date="1704196800">- Add PackageKit-find-python-3-6.patch: Specify the Python version
  we need to build this package.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1709640000">- Drop baselibs.conf: the -32bit packages are no longer needed and
  have not been part of Tumbleweed for a while already (build for
  i586 only enabled in LegacyX86).</changelog>
  <changelog author="Alynx Zhou &lt;alynx.zhou@suse.com&gt;" date="1723550400">- Add PackageKit-mark-as-compulsory.patch: Prevent PackageKit from
  user uninstallable for most desktops (bsc#1226269).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1726142400">- Add PackageKit-zypp-dont-install-updateCandidateObj.patch:
  zypp: Mark the correct packages to-be-installed (bsc#1227389,
  gh#PackageKit/PackageKit/commit/209aa6295).</changelog>
</package>
<package pkgid="7b8039ecc17238699f2120515a2797265107d3f5e63a6f53aaeef165dbadb74de28f9ec081abc18588645ef53bedb5f9f15d6ffe7fb54b5bb362d4993c232a5c" name="PackageKit-devel-debuginfo" arch="x86_64">
  <version epoch="0" ver="1.2.8" rel="5.1"/>
  <changelog author="Stanislav Brabec &lt;sbrabec@suse.com&gt;" date="1631793600">- Remove obsolete translation-update-upstream support
  (jsc#SLE-21105).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1636113600">- Update to version 1.2.4:
  + Libraries:
  - Add specific error code when user declined interaction
  - Avoid spurious GObject::notify signal emissions
  - Correct 'cancellable' use in pk_client_repair_system_async()
  - Fix a leak on calling set_locale() a second time
  - Fix a possible use-after-free under pk_client_cancel_cb()
  - Improve thread safety on an operation cancellation
  + Backends:
  - dnf:
    . Read update information also when getting list of updates
    . Honor install_weak_deps=False if it is there
    . Use 'hy_query_get_advisory_pkgs', if available
  + New Features:
  - PkDetails: Add 'download-size' property
  - PkPackage: Add update severity property
  + Bugfixes:
  - Let the finish understand the 'cancelled' exit code
  - Make backends that use pk-backend-spawn work (#477)
  - Only set polkit interactive flag if method call has too
- Changes from version 1.2.3:
  + Backends:
  - alpm:
    . Add post transaction hook
    . Rename errno to alpm_err to avoid name clashes
  - aptcc: Auto-remove old kernels, unless configured otherwise
  - dnf: Add support for coercing upgrade to distupgrade
  - zypp:
    . Make sure pool is initialized at the beginning of some
    methods
    . Reset update mode after getting updates
  + Bugfixes:
  - Append to cron log instead of overwriting it
  - Cancel a transaction if calling Cancel fails or the daemon
    disappears
  - Do not crash when calling pk_dbus_get_uid() before D-Bus is
    setup
  - Fix all compiler warnings
  - Fix multilib conflicts in generated pk-enum-types.h
  - Free scheduler array correctly again
  - Remove large transaction size sanity check
- Drop patches fixed upstream:
  + PackageKit-zypp-cleanup-tmp-files.patch
  + PackageKit-zypp-reset-update-mode-after-get-updates.patch
  + PackageKit-dnf-Add-support-for-coercing-upgrade-to-distupgrade.patch
  + PackageKit-zypp-initialize-pool.patch
  + PackageKit-remove-transaction-size-limit.patch
  + PackageKit-cancel-transaction-if-daemon-disappears.patch
  + PackageKit-dnf-ignore-weak-deps.patch
- Add 505.patch: pk-offline: Add flags to D-Bus invoking methods.
  That's currently to be able to set whether the method should be
  interactive or not. The old functions call the methods as
  non-interactive.</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1636113601">- Add PackageKit-zypp-c++17.patch: Fix build failure when building
  with libzypp &gt; 17.28.5 and gcc &lt; 11
  (gh#hughsie/PackageKit/commit/1a6bb6ae6, bsc#1192349).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1637064000">- Rewrite prep phase to not use autopatch -M: SLE15/Leap15's RPM
  version does not support that syntax yet.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1637064001">- Apply all patches unconditonally: PackageKit-zypp-c++17.patch is
  merged in upstream git and thus does not justify to be
  conditionally applied.
- Switching back to autosetup, as this works without conditional
  patches.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1653048000">- Update to version 1.2.5:
  + Backends:
  - dnf:
    . Add support for autoremove flag when removing packages.
    . Searches by name and package details should be case
    insensitive.
    . Update appstream xml files if dnf_sack_add_repos() does
    the download.
  - zypp:
    . Add -std=c++1z cpp flags.
    . Fix crash when search string is NULL.
    . Fix package installation using undefined data.
  - Changes to alpm, apttcc, nix, and slack.
  + Bugfixes:
  - Install offline-update enablement symlink if Meson is new
    enough.
  - Move Wants= line for network-online.target.
  - Add flags to D-Bus offline invoking methods.
  - Properly handle allow-reinstall flag for installations.
  - Provide better error message if trying to install an
    installed package.
  - Wait until online to activate systemd service.
- Drop 505.patch, PackageKit-zypp-c++17.patch, and
  PackageKit-zypp-fix-crash-with-empty-search-string.patch: fixed
  upstream.</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1653566400">- Add PackageKit-zypp-locked-packages.patch: zypp: ignore locked
  packages(gh#hughsie/PackageKit#543, boo#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1656676800">- Add PackageKit-zypp-add-upgrade-system.patch: implement
  upgrade-system method(gh#hughsie/PackageKit/commit/930dd201b).</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1657368000">- Move the dbus-1 system.d file to /usr (bsc#1201347)</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1659528000">- Modified PackageKit.spec: bump libzypp dependency version to
  17.31.0.
- Add PackageKit-zypp-avoid-statuReset.patch: zypp: Avoid
  statuReset() on locked packages
  (gh#PackageKit/PackageKit/commit/dd1964255, bsc#1199895).
- Add PackageKit-zypp-disable-upgrade-system-in-sle.patch: zypp:
  Disable upgrade-system support in SLE
  (gh#PackageKit/PackageKit/commit/0fcd820c2).
- Add PackageKit-zypp-restore-pool-status-after-simulating-update.patch:
  zypp: restore pool status after simulating an update
  (gh#PackageKit/PackageKit/commit/2b61a6649, bsc#1199895).
- Add PackageKit-zypp-fix-is-tumbleweed-check.patch: zypp: build
  the pool before calling is_tumbleweed()
  (gh#PackageKit/PackageKit/commit/146890153).
- Add PackageKit-zypp-update-libzypp-dependency-version.patch:
  zypp: update libzypp dependency version
  (gh#PackageKit/PackageKit/commit/58c7c0285, bsc#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1662120000">- Add PackageKit-zypp-dont-refresh-before-searching.patch:
  zypp: Don't refresh repos before searching
  (gh#PackageKit/PackageKit/commit/58c7c0285, bsc#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1664193600">- Add PackageKit-zypp-dont-remove-locked-packages.patch: zypp:
  Check if packages are locked before removing
  (gh#PackageKit/PackageKit/commit/8649a07bc, bsc#1199895).
- Add PackageKit-zypp-add-repo-in-packageid.patch: zypp: add
  repository data in package id
  (gh#PackageKit/PackageKit/commit/8eb2ef0ae, bsc#1202585).
- Remove PackageKit-zypp-locked-packages.patch: reverted upstream
  (gh#PackageKit/PackageKit/commit/ed3e38043).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1673006400">- Add PackageKit-zypp-fix-ambiguous-filesystem-reference.patch:
  zypp: Fix ambiguous reference to 'filesystem' class
  (gh#PackageKit/PackageKit/commit/bb1409a71, bsc#1206687).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678708800">- Add PackageKit-fix-pkcon-permission.patch: trivial: Drop
  unnecessary x permission
  (gh#PackageKit/PackageKit/commit/47b7f97bc, bsc#1209138)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1689595200">- Add PackageKit-dynamic-export.patch: fix loading of modules when
  built using glib 2.70 (boo#1213309).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1699531200">- Update to version 1.2.8:
  + Libraries:
  - offline-updates:
    . Make package update list deduplication more efficient.
    . Add only one entry per package to 'offline-update-competed'
    file.
  - PkClient: Replace the GSimpleAsyncResult with the GTask API.
  - pk-client:
    . Fix use-before-set of PkProgress on cancellation.
    . Move cancellable disconnect to dispose.
    . Rework refcounting for PkClientState.
  + Backends: Changes to apt, dnf, PiSi and BSD backends.
- Changes from version 1.2.7:
  + New Features:
  - pkclient: Add an option to count download size with
    dependencies.
  - pk-transaction: Add support for getting the RemainingTime
    property.
  + Backends:
  - zypp: Fix ambiguous reference to 'filesystem' class.
  - Changes to dnf, apt, alpm backends.
- Changes from version 1.2.6:
  + New Features:
  - Expose transaction sender as read-only property on the bus.
  - pkmon: Display transaction sender binary name in log.
  - pk-transaction: Add Packages signal.
  - pk-transaction: Combine some D-Bus PropertiesChanged signal
    emissions.
  - pk-transaction: Add UpdateDetails signal.
  + Backends:
  - zypp:
    . implement upgrade-system method.
    . Clean up trailing whitespaces.
    . Avoid statuReset() on locked packages.
    . restore pool status after simulating an update.
    . Disable upgrade-system support in SLE.
    . build the pool before calling is_tumbleweed().
    . update libzypp dependency version.
    . Don't refresh repos before searching.
    . Check if packages are locked before removing.
    . add repository data in package id.
    . Remove trailing whitespace.
    + Changes to alpm, aptcc, apt, and nix backends.
- Rebase patches:
  + PackageKit-dnf-Add-support-for-AppStream-repodata-basenames-use.patch
  + PackageKit-dynamic-export.patch
  + PackageKit-zypp-disable-upgrade-system-in-sle.patch
- Drop upstream fixed patches:
  + PackageKit-zypp-add-repo-in-packageid.patch
  + PackageKit-zypp-add-upgrade-system.patch
  + PackageKit-zypp-avoid-statuReset.patch
  + PackageKit-zypp-dont-refresh-before-searching.patch
  + PackageKit-zypp-dont-remove-locked-packages.patch
  + PackageKit-zypp-fix-ambiguous-filesystem-reference.patch
  + PackageKit-zypp-fix-is-tumbleweed-check.patch
  + PackageKit-zypp-restore-pool-status-after-simulating-update.patch
  + PackageKit-zypp-update-libzypp-dependency-version.patch</changelog>
  <changelog author="Alynx Zhou &lt;alynx.zhou@suse.com&gt;" date="1704196800">- Add PackageKit-find-python-3-6.patch: Specify the Python version
  we need to build this package.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1709640000">- Drop baselibs.conf: the -32bit packages are no longer needed and
  have not been part of Tumbleweed for a while already (build for
  i586 only enabled in LegacyX86).</changelog>
  <changelog author="Alynx Zhou &lt;alynx.zhou@suse.com&gt;" date="1723550400">- Add PackageKit-mark-as-compulsory.patch: Prevent PackageKit from
  user uninstallable for most desktops (bsc#1226269).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1726142400">- Add PackageKit-zypp-dont-install-updateCandidateObj.patch:
  zypp: Mark the correct packages to-be-installed (bsc#1227389,
  gh#PackageKit/PackageKit/commit/209aa6295).</changelog>
</package>
<package pkgid="29cd3bd20d3637eaefcabac15157419087bb8d4ada7ae9054de605d6120adf09f84155b1f6e2c46288b7c2aa98d005b5ccf08a65771383c53d3ea3ffe83fd71e" name="PackageKit-devel-debuginfo" arch="x86_64">
  <version epoch="0" ver="1.2.8" rel="6.1"/>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1636113600">- Update to version 1.2.4:
  + Libraries:
  - Add specific error code when user declined interaction
  - Avoid spurious GObject::notify signal emissions
  - Correct 'cancellable' use in pk_client_repair_system_async()
  - Fix a leak on calling set_locale() a second time
  - Fix a possible use-after-free under pk_client_cancel_cb()
  - Improve thread safety on an operation cancellation
  + Backends:
  - dnf:
    . Read update information also when getting list of updates
    . Honor install_weak_deps=False if it is there
    . Use 'hy_query_get_advisory_pkgs', if available
  + New Features:
  - PkDetails: Add 'download-size' property
  - PkPackage: Add update severity property
  + Bugfixes:
  - Let the finish understand the 'cancelled' exit code
  - Make backends that use pk-backend-spawn work (#477)
  - Only set polkit interactive flag if method call has too
- Changes from version 1.2.3:
  + Backends:
  - alpm:
    . Add post transaction hook
    . Rename errno to alpm_err to avoid name clashes
  - aptcc: Auto-remove old kernels, unless configured otherwise
  - dnf: Add support for coercing upgrade to distupgrade
  - zypp:
    . Make sure pool is initialized at the beginning of some
    methods
    . Reset update mode after getting updates
  + Bugfixes:
  - Append to cron log instead of overwriting it
  - Cancel a transaction if calling Cancel fails or the daemon
    disappears
  - Do not crash when calling pk_dbus_get_uid() before D-Bus is
    setup
  - Fix all compiler warnings
  - Fix multilib conflicts in generated pk-enum-types.h
  - Free scheduler array correctly again
  - Remove large transaction size sanity check
- Drop patches fixed upstream:
  + PackageKit-zypp-cleanup-tmp-files.patch
  + PackageKit-zypp-reset-update-mode-after-get-updates.patch
  + PackageKit-dnf-Add-support-for-coercing-upgrade-to-distupgrade.patch
  + PackageKit-zypp-initialize-pool.patch
  + PackageKit-remove-transaction-size-limit.patch
  + PackageKit-cancel-transaction-if-daemon-disappears.patch
  + PackageKit-dnf-ignore-weak-deps.patch
- Add 505.patch: pk-offline: Add flags to D-Bus invoking methods.
  That's currently to be able to set whether the method should be
  interactive or not. The old functions call the methods as
  non-interactive.</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1636113601">- Add PackageKit-zypp-c++17.patch: Fix build failure when building
  with libzypp &gt; 17.28.5 and gcc &lt; 11
  (gh#hughsie/PackageKit/commit/1a6bb6ae6, bsc#1192349).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1637064000">- Rewrite prep phase to not use autopatch -M: SLE15/Leap15's RPM
  version does not support that syntax yet.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1637064001">- Apply all patches unconditonally: PackageKit-zypp-c++17.patch is
  merged in upstream git and thus does not justify to be
  conditionally applied.
- Switching back to autosetup, as this works without conditional
  patches.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1653048000">- Update to version 1.2.5:
  + Backends:
  - dnf:
    . Add support for autoremove flag when removing packages.
    . Searches by name and package details should be case
    insensitive.
    . Update appstream xml files if dnf_sack_add_repos() does
    the download.
  - zypp:
    . Add -std=c++1z cpp flags.
    . Fix crash when search string is NULL.
    . Fix package installation using undefined data.
  - Changes to alpm, apttcc, nix, and slack.
  + Bugfixes:
  - Install offline-update enablement symlink if Meson is new
    enough.
  - Move Wants= line for network-online.target.
  - Add flags to D-Bus offline invoking methods.
  - Properly handle allow-reinstall flag for installations.
  - Provide better error message if trying to install an
    installed package.
  - Wait until online to activate systemd service.
- Drop 505.patch, PackageKit-zypp-c++17.patch, and
  PackageKit-zypp-fix-crash-with-empty-search-string.patch: fixed
  upstream.</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1653566400">- Add PackageKit-zypp-locked-packages.patch: zypp: ignore locked
  packages(gh#hughsie/PackageKit#543, boo#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1656676800">- Add PackageKit-zypp-add-upgrade-system.patch: implement
  upgrade-system method(gh#hughsie/PackageKit/commit/930dd201b).</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1657368000">- Move the dbus-1 system.d file to /usr (bsc#1201347)</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1659528000">- Modified PackageKit.spec: bump libzypp dependency version to
  17.31.0.
- Add PackageKit-zypp-avoid-statuReset.patch: zypp: Avoid
  statuReset() on locked packages
  (gh#PackageKit/PackageKit/commit/dd1964255, bsc#1199895).
- Add PackageKit-zypp-disable-upgrade-system-in-sle.patch: zypp:
  Disable upgrade-system support in SLE
  (gh#PackageKit/PackageKit/commit/0fcd820c2).
- Add PackageKit-zypp-restore-pool-status-after-simulating-update.patch:
  zypp: restore pool status after simulating an update
  (gh#PackageKit/PackageKit/commit/2b61a6649, bsc#1199895).
- Add PackageKit-zypp-fix-is-tumbleweed-check.patch: zypp: build
  the pool before calling is_tumbleweed()
  (gh#PackageKit/PackageKit/commit/146890153).
- Add PackageKit-zypp-update-libzypp-dependency-version.patch:
  zypp: update libzypp dependency version
  (gh#PackageKit/PackageKit/commit/58c7c0285, bsc#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1662120000">- Add PackageKit-zypp-dont-refresh-before-searching.patch:
  zypp: Don't refresh repos before searching
  (gh#PackageKit/PackageKit/commit/58c7c0285, bsc#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1664193600">- Add PackageKit-zypp-dont-remove-locked-packages.patch: zypp:
  Check if packages are locked before removing
  (gh#PackageKit/PackageKit/commit/8649a07bc, bsc#1199895).
- Add PackageKit-zypp-add-repo-in-packageid.patch: zypp: add
  repository data in package id
  (gh#PackageKit/PackageKit/commit/8eb2ef0ae, bsc#1202585).
- Remove PackageKit-zypp-locked-packages.patch: reverted upstream
  (gh#PackageKit/PackageKit/commit/ed3e38043).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1673006400">- Add PackageKit-zypp-fix-ambiguous-filesystem-reference.patch:
  zypp: Fix ambiguous reference to 'filesystem' class
  (gh#PackageKit/PackageKit/commit/bb1409a71, bsc#1206687).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678708800">- Add PackageKit-fix-pkcon-permission.patch: trivial: Drop
  unnecessary x permission
  (gh#PackageKit/PackageKit/commit/47b7f97bc, bsc#1209138)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1689595200">- Add PackageKit-dynamic-export.patch: fix loading of modules when
  built using glib 2.70 (boo#1213309).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1699531200">- Update to version 1.2.8:
  + Libraries:
  - offline-updates:
    . Make package update list deduplication more efficient.
    . Add only one entry per package to 'offline-update-competed'
    file.
  - PkClient: Replace the GSimpleAsyncResult with the GTask API.
  - pk-client:
    . Fix use-before-set of PkProgress on cancellation.
    . Move cancellable disconnect to dispose.
    . Rework refcounting for PkClientState.
  + Backends: Changes to apt, dnf, PiSi and BSD backends.
- Changes from version 1.2.7:
  + New Features:
  - pkclient: Add an option to count download size with
    dependencies.
  - pk-transaction: Add support for getting the RemainingTime
    property.
  + Backends:
  - zypp: Fix ambiguous reference to 'filesystem' class.
  - Changes to dnf, apt, alpm backends.
- Changes from version 1.2.6:
  + New Features:
  - Expose transaction sender as read-only property on the bus.
  - pkmon: Display transaction sender binary name in log.
  - pk-transaction: Add Packages signal.
  - pk-transaction: Combine some D-Bus PropertiesChanged signal
    emissions.
  - pk-transaction: Add UpdateDetails signal.
  + Backends:
  - zypp:
    . implement upgrade-system method.
    . Clean up trailing whitespaces.
    . Avoid statuReset() on locked packages.
    . restore pool status after simulating an update.
    . Disable upgrade-system support in SLE.
    . build the pool before calling is_tumbleweed().
    . update libzypp dependency version.
    . Don't refresh repos before searching.
    . Check if packages are locked before removing.
    . add repository data in package id.
    . Remove trailing whitespace.
    + Changes to alpm, aptcc, apt, and nix backends.
- Rebase patches:
  + PackageKit-dnf-Add-support-for-AppStream-repodata-basenames-use.patch
  + PackageKit-dynamic-export.patch
  + PackageKit-zypp-disable-upgrade-system-in-sle.patch
- Drop upstream fixed patches:
  + PackageKit-zypp-add-repo-in-packageid.patch
  + PackageKit-zypp-add-upgrade-system.patch
  + PackageKit-zypp-avoid-statuReset.patch
  + PackageKit-zypp-dont-refresh-before-searching.patch
  + PackageKit-zypp-dont-remove-locked-packages.patch
  + PackageKit-zypp-fix-ambiguous-filesystem-reference.patch
  + PackageKit-zypp-fix-is-tumbleweed-check.patch
  + PackageKit-zypp-restore-pool-status-after-simulating-update.patch
  + PackageKit-zypp-update-libzypp-dependency-version.patch</changelog>
  <changelog author="Alynx Zhou &lt;alynx.zhou@suse.com&gt;" date="1704196800">- Add PackageKit-find-python-3-6.patch: Specify the Python version
  we need to build this package.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1709640000">- Drop baselibs.conf: the -32bit packages are no longer needed and
  have not been part of Tumbleweed for a while already (build for
  i586 only enabled in LegacyX86).</changelog>
  <changelog author="Alynx Zhou &lt;alynx.zhou@suse.com&gt;" date="1723550400">- Add PackageKit-mark-as-compulsory.patch: Prevent PackageKit from
  user uninstallable for most desktops (bsc#1226269).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1726142400">- Add PackageKit-zypp-dont-install-updateCandidateObj.patch:
  zypp: Mark the correct packages to-be-installed (bsc#1227389,
  gh#PackageKit/PackageKit/commit/209aa6295).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1728993600">- Drop rcFOO symlinks (PED-266)
- Drop usage of update-alternatives, but simplify installation of
  /usr/libexec/gst-install-plugins-helper as a direct symlink to
  pk-gstreamer-install.</changelog>
</package>
<package pkgid="cb70d1c738b82239fcd6a71f49738c0e8b73b4347c9f4125f00af3aa3dbfc29e5f60afb0b12c3bcf136d91e188210a41c56cfdff9eed5c49d792b79b0c7d0d44" name="PackageKit-gstreamer-plugin" arch="x86_64">
  <version epoch="0" ver="1.2.8" rel="4.1"/>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1629460800">- Add PackageKit-zypp-fix-crash-with-empty-search-string.patch:
  zypp: Fix crash when search string is NULL (bsc#1179287,
  gh#hughsie/PackageKit/commit#21ccf49).</changelog>
  <changelog author="Stanislav Brabec &lt;sbrabec@suse.com&gt;" date="1631793600">- Remove obsolete translation-update-upstream support
  (jsc#SLE-21105).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1636113600">- Update to version 1.2.4:
  + Libraries:
  - Add specific error code when user declined interaction
  - Avoid spurious GObject::notify signal emissions
  - Correct 'cancellable' use in pk_client_repair_system_async()
  - Fix a leak on calling set_locale() a second time
  - Fix a possible use-after-free under pk_client_cancel_cb()
  - Improve thread safety on an operation cancellation
  + Backends:
  - dnf:
    . Read update information also when getting list of updates
    . Honor install_weak_deps=False if it is there
    . Use 'hy_query_get_advisory_pkgs', if available
  + New Features:
  - PkDetails: Add 'download-size' property
  - PkPackage: Add update severity property
  + Bugfixes:
  - Let the finish understand the 'cancelled' exit code
  - Make backends that use pk-backend-spawn work (#477)
  - Only set polkit interactive flag if method call has too
- Changes from version 1.2.3:
  + Backends:
  - alpm:
    . Add post transaction hook
    . Rename errno to alpm_err to avoid name clashes
  - aptcc: Auto-remove old kernels, unless configured otherwise
  - dnf: Add support for coercing upgrade to distupgrade
  - zypp:
    . Make sure pool is initialized at the beginning of some
    methods
    . Reset update mode after getting updates
  + Bugfixes:
  - Append to cron log instead of overwriting it
  - Cancel a transaction if calling Cancel fails or the daemon
    disappears
  - Do not crash when calling pk_dbus_get_uid() before D-Bus is
    setup
  - Fix all compiler warnings
  - Fix multilib conflicts in generated pk-enum-types.h
  - Free scheduler array correctly again
  - Remove large transaction size sanity check
- Drop patches fixed upstream:
  + PackageKit-zypp-cleanup-tmp-files.patch
  + PackageKit-zypp-reset-update-mode-after-get-updates.patch
  + PackageKit-dnf-Add-support-for-coercing-upgrade-to-distupgrade.patch
  + PackageKit-zypp-initialize-pool.patch
  + PackageKit-remove-transaction-size-limit.patch
  + PackageKit-cancel-transaction-if-daemon-disappears.patch
  + PackageKit-dnf-ignore-weak-deps.patch
- Add 505.patch: pk-offline: Add flags to D-Bus invoking methods.
  That's currently to be able to set whether the method should be
  interactive or not. The old functions call the methods as
  non-interactive.</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1636113601">- Add PackageKit-zypp-c++17.patch: Fix build failure when building
  with libzypp &gt; 17.28.5 and gcc &lt; 11
  (gh#hughsie/PackageKit/commit/1a6bb6ae6, bsc#1192349).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1637064000">- Rewrite prep phase to not use autopatch -M: SLE15/Leap15's RPM
  version does not support that syntax yet.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1637064001">- Apply all patches unconditonally: PackageKit-zypp-c++17.patch is
  merged in upstream git and thus does not justify to be
  conditionally applied.
- Switching back to autosetup, as this works without conditional
  patches.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1653048000">- Update to version 1.2.5:
  + Backends:
  - dnf:
    . Add support for autoremove flag when removing packages.
    . Searches by name and package details should be case
    insensitive.
    . Update appstream xml files if dnf_sack_add_repos() does
    the download.
  - zypp:
    . Add -std=c++1z cpp flags.
    . Fix crash when search string is NULL.
    . Fix package installation using undefined data.
  - Changes to alpm, apttcc, nix, and slack.
  + Bugfixes:
  - Install offline-update enablement symlink if Meson is new
    enough.
  - Move Wants= line for network-online.target.
  - Add flags to D-Bus offline invoking methods.
  - Properly handle allow-reinstall flag for installations.
  - Provide better error message if trying to install an
    installed package.
  - Wait until online to activate systemd service.
- Drop 505.patch, PackageKit-zypp-c++17.patch, and
  PackageKit-zypp-fix-crash-with-empty-search-string.patch: fixed
  upstream.</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1653566400">- Add PackageKit-zypp-locked-packages.patch: zypp: ignore locked
  packages(gh#hughsie/PackageKit#543, boo#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1656676800">- Add PackageKit-zypp-add-upgrade-system.patch: implement
  upgrade-system method(gh#hughsie/PackageKit/commit/930dd201b).</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1657368000">- Move the dbus-1 system.d file to /usr (bsc#1201347)</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1659528000">- Modified PackageKit.spec: bump libzypp dependency version to
  17.31.0.
- Add PackageKit-zypp-avoid-statuReset.patch: zypp: Avoid
  statuReset() on locked packages
  (gh#PackageKit/PackageKit/commit/dd1964255, bsc#1199895).
- Add PackageKit-zypp-disable-upgrade-system-in-sle.patch: zypp:
  Disable upgrade-system support in SLE
  (gh#PackageKit/PackageKit/commit/0fcd820c2).
- Add PackageKit-zypp-restore-pool-status-after-simulating-update.patch:
  zypp: restore pool status after simulating an update
  (gh#PackageKit/PackageKit/commit/2b61a6649, bsc#1199895).
- Add PackageKit-zypp-fix-is-tumbleweed-check.patch: zypp: build
  the pool before calling is_tumbleweed()
  (gh#PackageKit/PackageKit/commit/146890153).
- Add PackageKit-zypp-update-libzypp-dependency-version.patch:
  zypp: update libzypp dependency version
  (gh#PackageKit/PackageKit/commit/58c7c0285, bsc#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1662120000">- Add PackageKit-zypp-dont-refresh-before-searching.patch:
  zypp: Don't refresh repos before searching
  (gh#PackageKit/PackageKit/commit/58c7c0285, bsc#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1664193600">- Add PackageKit-zypp-dont-remove-locked-packages.patch: zypp:
  Check if packages are locked before removing
  (gh#PackageKit/PackageKit/commit/8649a07bc, bsc#1199895).
- Add PackageKit-zypp-add-repo-in-packageid.patch: zypp: add
  repository data in package id
  (gh#PackageKit/PackageKit/commit/8eb2ef0ae, bsc#1202585).
- Remove PackageKit-zypp-locked-packages.patch: reverted upstream
  (gh#PackageKit/PackageKit/commit/ed3e38043).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1673006400">- Add PackageKit-zypp-fix-ambiguous-filesystem-reference.patch:
  zypp: Fix ambiguous reference to 'filesystem' class
  (gh#PackageKit/PackageKit/commit/bb1409a71, bsc#1206687).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678708800">- Add PackageKit-fix-pkcon-permission.patch: trivial: Drop
  unnecessary x permission
  (gh#PackageKit/PackageKit/commit/47b7f97bc, bsc#1209138)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1689595200">- Add PackageKit-dynamic-export.patch: fix loading of modules when
  built using glib 2.70 (boo#1213309).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1699531200">- Update to version 1.2.8:
  + Libraries:
  - offline-updates:
    . Make package update list deduplication more efficient.
    . Add only one entry per package to 'offline-update-competed'
    file.
  - PkClient: Replace the GSimpleAsyncResult with the GTask API.
  - pk-client:
    . Fix use-before-set of PkProgress on cancellation.
    . Move cancellable disconnect to dispose.
    . Rework refcounting for PkClientState.
  + Backends: Changes to apt, dnf, PiSi and BSD backends.
- Changes from version 1.2.7:
  + New Features:
  - pkclient: Add an option to count download size with
    dependencies.
  - pk-transaction: Add support for getting the RemainingTime
    property.
  + Backends:
  - zypp: Fix ambiguous reference to 'filesystem' class.
  - Changes to dnf, apt, alpm backends.
- Changes from version 1.2.6:
  + New Features:
  - Expose transaction sender as read-only property on the bus.
  - pkmon: Display transaction sender binary name in log.
  - pk-transaction: Add Packages signal.
  - pk-transaction: Combine some D-Bus PropertiesChanged signal
    emissions.
  - pk-transaction: Add UpdateDetails signal.
  + Backends:
  - zypp:
    . implement upgrade-system method.
    . Clean up trailing whitespaces.
    . Avoid statuReset() on locked packages.
    . restore pool status after simulating an update.
    . Disable upgrade-system support in SLE.
    . build the pool before calling is_tumbleweed().
    . update libzypp dependency version.
    . Don't refresh repos before searching.
    . Check if packages are locked before removing.
    . add repository data in package id.
    . Remove trailing whitespace.
    + Changes to alpm, aptcc, apt, and nix backends.
- Rebase patches:
  + PackageKit-dnf-Add-support-for-AppStream-repodata-basenames-use.patch
  + PackageKit-dynamic-export.patch
  + PackageKit-zypp-disable-upgrade-system-in-sle.patch
- Drop upstream fixed patches:
  + PackageKit-zypp-add-repo-in-packageid.patch
  + PackageKit-zypp-add-upgrade-system.patch
  + PackageKit-zypp-avoid-statuReset.patch
  + PackageKit-zypp-dont-refresh-before-searching.patch
  + PackageKit-zypp-dont-remove-locked-packages.patch
  + PackageKit-zypp-fix-ambiguous-filesystem-reference.patch
  + PackageKit-zypp-fix-is-tumbleweed-check.patch
  + PackageKit-zypp-restore-pool-status-after-simulating-update.patch
  + PackageKit-zypp-update-libzypp-dependency-version.patch</changelog>
  <changelog author="Alynx Zhou &lt;alynx.zhou@suse.com&gt;" date="1704196800">- Add PackageKit-find-python-3-6.patch: Specify the Python version
  we need to build this package.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1709640000">- Drop baselibs.conf: the -32bit packages are no longer needed and
  have not been part of Tumbleweed for a while already (build for
  i586 only enabled in LegacyX86).</changelog>
  <changelog author="Alynx Zhou &lt;alynx.zhou@suse.com&gt;" date="1723550400">- Add PackageKit-mark-as-compulsory.patch: Prevent PackageKit from
  user uninstallable for most desktops (bsc#1226269).</changelog>
</package>
<package pkgid="ff3164514705ccd5e0ec251790a7cabf85887414fbd62297926af157b5996d0a1829b8ac4d56f9d9109c92f6c0fb89f22f7d16804d36bc330d649e9629d9f0e9" name="PackageKit-gstreamer-plugin" arch="x86_64">
  <version epoch="0" ver="1.2.8" rel="5.0.2.1.sr20240901"/>
  <changelog author="Stanislav Brabec &lt;sbrabec@suse.com&gt;" date="1631793600">- Remove obsolete translation-update-upstream support
  (jsc#SLE-21105).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1636113600">- Update to version 1.2.4:
  + Libraries:
  - Add specific error code when user declined interaction
  - Avoid spurious GObject::notify signal emissions
  - Correct 'cancellable' use in pk_client_repair_system_async()
  - Fix a leak on calling set_locale() a second time
  - Fix a possible use-after-free under pk_client_cancel_cb()
  - Improve thread safety on an operation cancellation
  + Backends:
  - dnf:
    . Read update information also when getting list of updates
    . Honor install_weak_deps=False if it is there
    . Use 'hy_query_get_advisory_pkgs', if available
  + New Features:
  - PkDetails: Add 'download-size' property
  - PkPackage: Add update severity property
  + Bugfixes:
  - Let the finish understand the 'cancelled' exit code
  - Make backends that use pk-backend-spawn work (#477)
  - Only set polkit interactive flag if method call has too
- Changes from version 1.2.3:
  + Backends:
  - alpm:
    . Add post transaction hook
    . Rename errno to alpm_err to avoid name clashes
  - aptcc: Auto-remove old kernels, unless configured otherwise
  - dnf: Add support for coercing upgrade to distupgrade
  - zypp:
    . Make sure pool is initialized at the beginning of some
    methods
    . Reset update mode after getting updates
  + Bugfixes:
  - Append to cron log instead of overwriting it
  - Cancel a transaction if calling Cancel fails or the daemon
    disappears
  - Do not crash when calling pk_dbus_get_uid() before D-Bus is
    setup
  - Fix all compiler warnings
  - Fix multilib conflicts in generated pk-enum-types.h
  - Free scheduler array correctly again
  - Remove large transaction size sanity check
- Drop patches fixed upstream:
  + PackageKit-zypp-cleanup-tmp-files.patch
  + PackageKit-zypp-reset-update-mode-after-get-updates.patch
  + PackageKit-dnf-Add-support-for-coercing-upgrade-to-distupgrade.patch
  + PackageKit-zypp-initialize-pool.patch
  + PackageKit-remove-transaction-size-limit.patch
  + PackageKit-cancel-transaction-if-daemon-disappears.patch
  + PackageKit-dnf-ignore-weak-deps.patch
- Add 505.patch: pk-offline: Add flags to D-Bus invoking methods.
  That's currently to be able to set whether the method should be
  interactive or not. The old functions call the methods as
  non-interactive.</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1636113601">- Add PackageKit-zypp-c++17.patch: Fix build failure when building
  with libzypp &gt; 17.28.5 and gcc &lt; 11
  (gh#hughsie/PackageKit/commit/1a6bb6ae6, bsc#1192349).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1637064000">- Rewrite prep phase to not use autopatch -M: SLE15/Leap15's RPM
  version does not support that syntax yet.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1637064001">- Apply all patches unconditonally: PackageKit-zypp-c++17.patch is
  merged in upstream git and thus does not justify to be
  conditionally applied.
- Switching back to autosetup, as this works without conditional
  patches.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1653048000">- Update to version 1.2.5:
  + Backends:
  - dnf:
    . Add support for autoremove flag when removing packages.
    . Searches by name and package details should be case
    insensitive.
    . Update appstream xml files if dnf_sack_add_repos() does
    the download.
  - zypp:
    . Add -std=c++1z cpp flags.
    . Fix crash when search string is NULL.
    . Fix package installation using undefined data.
  - Changes to alpm, apttcc, nix, and slack.
  + Bugfixes:
  - Install offline-update enablement symlink if Meson is new
    enough.
  - Move Wants= line for network-online.target.
  - Add flags to D-Bus offline invoking methods.
  - Properly handle allow-reinstall flag for installations.
  - Provide better error message if trying to install an
    installed package.
  - Wait until online to activate systemd service.
- Drop 505.patch, PackageKit-zypp-c++17.patch, and
  PackageKit-zypp-fix-crash-with-empty-search-string.patch: fixed
  upstream.</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1653566400">- Add PackageKit-zypp-locked-packages.patch: zypp: ignore locked
  packages(gh#hughsie/PackageKit#543, boo#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1656676800">- Add PackageKit-zypp-add-upgrade-system.patch: implement
  upgrade-system method(gh#hughsie/PackageKit/commit/930dd201b).</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1657368000">- Move the dbus-1 system.d file to /usr (bsc#1201347)</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1659528000">- Modified PackageKit.spec: bump libzypp dependency version to
  17.31.0.
- Add PackageKit-zypp-avoid-statuReset.patch: zypp: Avoid
  statuReset() on locked packages
  (gh#PackageKit/PackageKit/commit/dd1964255, bsc#1199895).
- Add PackageKit-zypp-disable-upgrade-system-in-sle.patch: zypp:
  Disable upgrade-system support in SLE
  (gh#PackageKit/PackageKit/commit/0fcd820c2).
- Add PackageKit-zypp-restore-pool-status-after-simulating-update.patch:
  zypp: restore pool status after simulating an update
  (gh#PackageKit/PackageKit/commit/2b61a6649, bsc#1199895).
- Add PackageKit-zypp-fix-is-tumbleweed-check.patch: zypp: build
  the pool before calling is_tumbleweed()
  (gh#PackageKit/PackageKit/commit/146890153).
- Add PackageKit-zypp-update-libzypp-dependency-version.patch:
  zypp: update libzypp dependency version
  (gh#PackageKit/PackageKit/commit/58c7c0285, bsc#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1662120000">- Add PackageKit-zypp-dont-refresh-before-searching.patch:
  zypp: Don't refresh repos before searching
  (gh#PackageKit/PackageKit/commit/58c7c0285, bsc#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1664193600">- Add PackageKit-zypp-dont-remove-locked-packages.patch: zypp:
  Check if packages are locked before removing
  (gh#PackageKit/PackageKit/commit/8649a07bc, bsc#1199895).
- Add PackageKit-zypp-add-repo-in-packageid.patch: zypp: add
  repository data in package id
  (gh#PackageKit/PackageKit/commit/8eb2ef0ae, bsc#1202585).
- Remove PackageKit-zypp-locked-packages.patch: reverted upstream
  (gh#PackageKit/PackageKit/commit/ed3e38043).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1673006400">- Add PackageKit-zypp-fix-ambiguous-filesystem-reference.patch:
  zypp: Fix ambiguous reference to 'filesystem' class
  (gh#PackageKit/PackageKit/commit/bb1409a71, bsc#1206687).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678708800">- Add PackageKit-fix-pkcon-permission.patch: trivial: Drop
  unnecessary x permission
  (gh#PackageKit/PackageKit/commit/47b7f97bc, bsc#1209138)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1689595200">- Add PackageKit-dynamic-export.patch: fix loading of modules when
  built using glib 2.70 (boo#1213309).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1699531200">- Update to version 1.2.8:
  + Libraries:
  - offline-updates:
    . Make package update list deduplication more efficient.
    . Add only one entry per package to 'offline-update-competed'
    file.
  - PkClient: Replace the GSimpleAsyncResult with the GTask API.
  - pk-client:
    . Fix use-before-set of PkProgress on cancellation.
    . Move cancellable disconnect to dispose.
    . Rework refcounting for PkClientState.
  + Backends: Changes to apt, dnf, PiSi and BSD backends.
- Changes from version 1.2.7:
  + New Features:
  - pkclient: Add an option to count download size with
    dependencies.
  - pk-transaction: Add support for getting the RemainingTime
    property.
  + Backends:
  - zypp: Fix ambiguous reference to 'filesystem' class.
  - Changes to dnf, apt, alpm backends.
- Changes from version 1.2.6:
  + New Features:
  - Expose transaction sender as read-only property on the bus.
  - pkmon: Display transaction sender binary name in log.
  - pk-transaction: Add Packages signal.
  - pk-transaction: Combine some D-Bus PropertiesChanged signal
    emissions.
  - pk-transaction: Add UpdateDetails signal.
  + Backends:
  - zypp:
    . implement upgrade-system method.
    . Clean up trailing whitespaces.
    . Avoid statuReset() on locked packages.
    . restore pool status after simulating an update.
    . Disable upgrade-system support in SLE.
    . build the pool before calling is_tumbleweed().
    . update libzypp dependency version.
    . Don't refresh repos before searching.
    . Check if packages are locked before removing.
    . add repository data in package id.
    . Remove trailing whitespace.
    + Changes to alpm, aptcc, apt, and nix backends.
- Rebase patches:
  + PackageKit-dnf-Add-support-for-AppStream-repodata-basenames-use.patch
  + PackageKit-dynamic-export.patch
  + PackageKit-zypp-disable-upgrade-system-in-sle.patch
- Drop upstream fixed patches:
  + PackageKit-zypp-add-repo-in-packageid.patch
  + PackageKit-zypp-add-upgrade-system.patch
  + PackageKit-zypp-avoid-statuReset.patch
  + PackageKit-zypp-dont-refresh-before-searching.patch
  + PackageKit-zypp-dont-remove-locked-packages.patch
  + PackageKit-zypp-fix-ambiguous-filesystem-reference.patch
  + PackageKit-zypp-fix-is-tumbleweed-check.patch
  + PackageKit-zypp-restore-pool-status-after-simulating-update.patch
  + PackageKit-zypp-update-libzypp-dependency-version.patch</changelog>
  <changelog author="Alynx Zhou &lt;alynx.zhou@suse.com&gt;" date="1704196800">- Add PackageKit-find-python-3-6.patch: Specify the Python version
  we need to build this package.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1709640000">- Drop baselibs.conf: the -32bit packages are no longer needed and
  have not been part of Tumbleweed for a while already (build for
  i586 only enabled in LegacyX86).</changelog>
  <changelog author="Alynx Zhou &lt;alynx.zhou@suse.com&gt;" date="1723550400">- Add PackageKit-mark-as-compulsory.patch: Prevent PackageKit from
  user uninstallable for most desktops (bsc#1226269).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1726142400">- Add PackageKit-zypp-dont-install-updateCandidateObj.patch:
  zypp: Mark the correct packages to-be-installed (bsc#1227389,
  gh#PackageKit/PackageKit/commit/209aa6295).</changelog>
</package>
<package pkgid="c422d061ed7df83d56bf42114d8fd439cf7132dbe6ddea96c529f0a95aefe402193ee20d6b3b6f6ad38f996ccf396afe462cc4ae1bfecf1fae18b9819dc78d7f" name="PackageKit-gstreamer-plugin" arch="x86_64">
  <version epoch="0" ver="1.2.8" rel="5.1"/>
  <changelog author="Stanislav Brabec &lt;sbrabec@suse.com&gt;" date="1631793600">- Remove obsolete translation-update-upstream support
  (jsc#SLE-21105).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1636113600">- Update to version 1.2.4:
  + Libraries:
  - Add specific error code when user declined interaction
  - Avoid spurious GObject::notify signal emissions
  - Correct 'cancellable' use in pk_client_repair_system_async()
  - Fix a leak on calling set_locale() a second time
  - Fix a possible use-after-free under pk_client_cancel_cb()
  - Improve thread safety on an operation cancellation
  + Backends:
  - dnf:
    . Read update information also when getting list of updates
    . Honor install_weak_deps=False if it is there
    . Use 'hy_query_get_advisory_pkgs', if available
  + New Features:
  - PkDetails: Add 'download-size' property
  - PkPackage: Add update severity property
  + Bugfixes:
  - Let the finish understand the 'cancelled' exit code
  - Make backends that use pk-backend-spawn work (#477)
  - Only set polkit interactive flag if method call has too
- Changes from version 1.2.3:
  + Backends:
  - alpm:
    . Add post transaction hook
    . Rename errno to alpm_err to avoid name clashes
  - aptcc: Auto-remove old kernels, unless configured otherwise
  - dnf: Add support for coercing upgrade to distupgrade
  - zypp:
    . Make sure pool is initialized at the beginning of some
    methods
    . Reset update mode after getting updates
  + Bugfixes:
  - Append to cron log instead of overwriting it
  - Cancel a transaction if calling Cancel fails or the daemon
    disappears
  - Do not crash when calling pk_dbus_get_uid() before D-Bus is
    setup
  - Fix all compiler warnings
  - Fix multilib conflicts in generated pk-enum-types.h
  - Free scheduler array correctly again
  - Remove large transaction size sanity check
- Drop patches fixed upstream:
  + PackageKit-zypp-cleanup-tmp-files.patch
  + PackageKit-zypp-reset-update-mode-after-get-updates.patch
  + PackageKit-dnf-Add-support-for-coercing-upgrade-to-distupgrade.patch
  + PackageKit-zypp-initialize-pool.patch
  + PackageKit-remove-transaction-size-limit.patch
  + PackageKit-cancel-transaction-if-daemon-disappears.patch
  + PackageKit-dnf-ignore-weak-deps.patch
- Add 505.patch: pk-offline: Add flags to D-Bus invoking methods.
  That's currently to be able to set whether the method should be
  interactive or not. The old functions call the methods as
  non-interactive.</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1636113601">- Add PackageKit-zypp-c++17.patch: Fix build failure when building
  with libzypp &gt; 17.28.5 and gcc &lt; 11
  (gh#hughsie/PackageKit/commit/1a6bb6ae6, bsc#1192349).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1637064000">- Rewrite prep phase to not use autopatch -M: SLE15/Leap15's RPM
  version does not support that syntax yet.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1637064001">- Apply all patches unconditonally: PackageKit-zypp-c++17.patch is
  merged in upstream git and thus does not justify to be
  conditionally applied.
- Switching back to autosetup, as this works without conditional
  patches.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1653048000">- Update to version 1.2.5:
  + Backends:
  - dnf:
    . Add support for autoremove flag when removing packages.
    . Searches by name and package details should be case
    insensitive.
    . Update appstream xml files if dnf_sack_add_repos() does
    the download.
  - zypp:
    . Add -std=c++1z cpp flags.
    . Fix crash when search string is NULL.
    . Fix package installation using undefined data.
  - Changes to alpm, apttcc, nix, and slack.
  + Bugfixes:
  - Install offline-update enablement symlink if Meson is new
    enough.
  - Move Wants= line for network-online.target.
  - Add flags to D-Bus offline invoking methods.
  - Properly handle allow-reinstall flag for installations.
  - Provide better error message if trying to install an
    installed package.
  - Wait until online to activate systemd service.
- Drop 505.patch, PackageKit-zypp-c++17.patch, and
  PackageKit-zypp-fix-crash-with-empty-search-string.patch: fixed
  upstream.</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1653566400">- Add PackageKit-zypp-locked-packages.patch: zypp: ignore locked
  packages(gh#hughsie/PackageKit#543, boo#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1656676800">- Add PackageKit-zypp-add-upgrade-system.patch: implement
  upgrade-system method(gh#hughsie/PackageKit/commit/930dd201b).</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1657368000">- Move the dbus-1 system.d file to /usr (bsc#1201347)</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1659528000">- Modified PackageKit.spec: bump libzypp dependency version to
  17.31.0.
- Add PackageKit-zypp-avoid-statuReset.patch: zypp: Avoid
  statuReset() on locked packages
  (gh#PackageKit/PackageKit/commit/dd1964255, bsc#1199895).
- Add PackageKit-zypp-disable-upgrade-system-in-sle.patch: zypp:
  Disable upgrade-system support in SLE
  (gh#PackageKit/PackageKit/commit/0fcd820c2).
- Add PackageKit-zypp-restore-pool-status-after-simulating-update.patch:
  zypp: restore pool status after simulating an update
  (gh#PackageKit/PackageKit/commit/2b61a6649, bsc#1199895).
- Add PackageKit-zypp-fix-is-tumbleweed-check.patch: zypp: build
  the pool before calling is_tumbleweed()
  (gh#PackageKit/PackageKit/commit/146890153).
- Add PackageKit-zypp-update-libzypp-dependency-version.patch:
  zypp: update libzypp dependency version
  (gh#PackageKit/PackageKit/commit/58c7c0285, bsc#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1662120000">- Add PackageKit-zypp-dont-refresh-before-searching.patch:
  zypp: Don't refresh repos before searching
  (gh#PackageKit/PackageKit/commit/58c7c0285, bsc#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1664193600">- Add PackageKit-zypp-dont-remove-locked-packages.patch: zypp:
  Check if packages are locked before removing
  (gh#PackageKit/PackageKit/commit/8649a07bc, bsc#1199895).
- Add PackageKit-zypp-add-repo-in-packageid.patch: zypp: add
  repository data in package id
  (gh#PackageKit/PackageKit/commit/8eb2ef0ae, bsc#1202585).
- Remove PackageKit-zypp-locked-packages.patch: reverted upstream
  (gh#PackageKit/PackageKit/commit/ed3e38043).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1673006400">- Add PackageKit-zypp-fix-ambiguous-filesystem-reference.patch:
  zypp: Fix ambiguous reference to 'filesystem' class
  (gh#PackageKit/PackageKit/commit/bb1409a71, bsc#1206687).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678708800">- Add PackageKit-fix-pkcon-permission.patch: trivial: Drop
  unnecessary x permission
  (gh#PackageKit/PackageKit/commit/47b7f97bc, bsc#1209138)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1689595200">- Add PackageKit-dynamic-export.patch: fix loading of modules when
  built using glib 2.70 (boo#1213309).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1699531200">- Update to version 1.2.8:
  + Libraries:
  - offline-updates:
    . Make package update list deduplication more efficient.
    . Add only one entry per package to 'offline-update-competed'
    file.
  - PkClient: Replace the GSimpleAsyncResult with the GTask API.
  - pk-client:
    . Fix use-before-set of PkProgress on cancellation.
    . Move cancellable disconnect to dispose.
    . Rework refcounting for PkClientState.
  + Backends: Changes to apt, dnf, PiSi and BSD backends.
- Changes from version 1.2.7:
  + New Features:
  - pkclient: Add an option to count download size with
    dependencies.
  - pk-transaction: Add support for getting the RemainingTime
    property.
  + Backends:
  - zypp: Fix ambiguous reference to 'filesystem' class.
  - Changes to dnf, apt, alpm backends.
- Changes from version 1.2.6:
  + New Features:
  - Expose transaction sender as read-only property on the bus.
  - pkmon: Display transaction sender binary name in log.
  - pk-transaction: Add Packages signal.
  - pk-transaction: Combine some D-Bus PropertiesChanged signal
    emissions.
  - pk-transaction: Add UpdateDetails signal.
  + Backends:
  - zypp:
    . implement upgrade-system method.
    . Clean up trailing whitespaces.
    . Avoid statuReset() on locked packages.
    . restore pool status after simulating an update.
    . Disable upgrade-system support in SLE.
    . build the pool before calling is_tumbleweed().
    . update libzypp dependency version.
    . Don't refresh repos before searching.
    . Check if packages are locked before removing.
    . add repository data in package id.
    . Remove trailing whitespace.
    + Changes to alpm, aptcc, apt, and nix backends.
- Rebase patches:
  + PackageKit-dnf-Add-support-for-AppStream-repodata-basenames-use.patch
  + PackageKit-dynamic-export.patch
  + PackageKit-zypp-disable-upgrade-system-in-sle.patch
- Drop upstream fixed patches:
  + PackageKit-zypp-add-repo-in-packageid.patch
  + PackageKit-zypp-add-upgrade-system.patch
  + PackageKit-zypp-avoid-statuReset.patch
  + PackageKit-zypp-dont-refresh-before-searching.patch
  + PackageKit-zypp-dont-remove-locked-packages.patch
  + PackageKit-zypp-fix-ambiguous-filesystem-reference.patch
  + PackageKit-zypp-fix-is-tumbleweed-check.patch
  + PackageKit-zypp-restore-pool-status-after-simulating-update.patch
  + PackageKit-zypp-update-libzypp-dependency-version.patch</changelog>
  <changelog author="Alynx Zhou &lt;alynx.zhou@suse.com&gt;" date="1704196800">- Add PackageKit-find-python-3-6.patch: Specify the Python version
  we need to build this package.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1709640000">- Drop baselibs.conf: the -32bit packages are no longer needed and
  have not been part of Tumbleweed for a while already (build for
  i586 only enabled in LegacyX86).</changelog>
  <changelog author="Alynx Zhou &lt;alynx.zhou@suse.com&gt;" date="1723550400">- Add PackageKit-mark-as-compulsory.patch: Prevent PackageKit from
  user uninstallable for most desktops (bsc#1226269).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1726142400">- Add PackageKit-zypp-dont-install-updateCandidateObj.patch:
  zypp: Mark the correct packages to-be-installed (bsc#1227389,
  gh#PackageKit/PackageKit/commit/209aa6295).</changelog>
</package>
<package pkgid="fee3960bbdb4ebe20ffaa1d29cdfb0cb2433aa25e3c56057034ac419d0bd84de03a85a577224951cbeeebf6c43778c5c855510037416130e3b43ad09b9456d58" name="PackageKit-gstreamer-plugin" arch="x86_64">
  <version epoch="0" ver="1.2.8" rel="6.1"/>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1636113600">- Update to version 1.2.4:
  + Libraries:
  - Add specific error code when user declined interaction
  - Avoid spurious GObject::notify signal emissions
  - Correct 'cancellable' use in pk_client_repair_system_async()
  - Fix a leak on calling set_locale() a second time
  - Fix a possible use-after-free under pk_client_cancel_cb()
  - Improve thread safety on an operation cancellation
  + Backends:
  - dnf:
    . Read update information also when getting list of updates
    . Honor install_weak_deps=False if it is there
    . Use 'hy_query_get_advisory_pkgs', if available
  + New Features:
  - PkDetails: Add 'download-size' property
  - PkPackage: Add update severity property
  + Bugfixes:
  - Let the finish understand the 'cancelled' exit code
  - Make backends that use pk-backend-spawn work (#477)
  - Only set polkit interactive flag if method call has too
- Changes from version 1.2.3:
  + Backends:
  - alpm:
    . Add post transaction hook
    . Rename errno to alpm_err to avoid name clashes
  - aptcc: Auto-remove old kernels, unless configured otherwise
  - dnf: Add support for coercing upgrade to distupgrade
  - zypp:
    . Make sure pool is initialized at the beginning of some
    methods
    . Reset update mode after getting updates
  + Bugfixes:
  - Append to cron log instead of overwriting it
  - Cancel a transaction if calling Cancel fails or the daemon
    disappears
  - Do not crash when calling pk_dbus_get_uid() before D-Bus is
    setup
  - Fix all compiler warnings
  - Fix multilib conflicts in generated pk-enum-types.h
  - Free scheduler array correctly again
  - Remove large transaction size sanity check
- Drop patches fixed upstream:
  + PackageKit-zypp-cleanup-tmp-files.patch
  + PackageKit-zypp-reset-update-mode-after-get-updates.patch
  + PackageKit-dnf-Add-support-for-coercing-upgrade-to-distupgrade.patch
  + PackageKit-zypp-initialize-pool.patch
  + PackageKit-remove-transaction-size-limit.patch
  + PackageKit-cancel-transaction-if-daemon-disappears.patch
  + PackageKit-dnf-ignore-weak-deps.patch
- Add 505.patch: pk-offline: Add flags to D-Bus invoking methods.
  That's currently to be able to set whether the method should be
  interactive or not. The old functions call the methods as
  non-interactive.</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1636113601">- Add PackageKit-zypp-c++17.patch: Fix build failure when building
  with libzypp &gt; 17.28.5 and gcc &lt; 11
  (gh#hughsie/PackageKit/commit/1a6bb6ae6, bsc#1192349).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1637064000">- Rewrite prep phase to not use autopatch -M: SLE15/Leap15's RPM
  version does not support that syntax yet.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1637064001">- Apply all patches unconditonally: PackageKit-zypp-c++17.patch is
  merged in upstream git and thus does not justify to be
  conditionally applied.
- Switching back to autosetup, as this works without conditional
  patches.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1653048000">- Update to version 1.2.5:
  + Backends:
  - dnf:
    . Add support for autoremove flag when removing packages.
    . Searches by name and package details should be case
    insensitive.
    . Update appstream xml files if dnf_sack_add_repos() does
    the download.
  - zypp:
    . Add -std=c++1z cpp flags.
    . Fix crash when search string is NULL.
    . Fix package installation using undefined data.
  - Changes to alpm, apttcc, nix, and slack.
  + Bugfixes:
  - Install offline-update enablement symlink if Meson is new
    enough.
  - Move Wants= line for network-online.target.
  - Add flags to D-Bus offline invoking methods.
  - Properly handle allow-reinstall flag for installations.
  - Provide better error message if trying to install an
    installed package.
  - Wait until online to activate systemd service.
- Drop 505.patch, PackageKit-zypp-c++17.patch, and
  PackageKit-zypp-fix-crash-with-empty-search-string.patch: fixed
  upstream.</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1653566400">- Add PackageKit-zypp-locked-packages.patch: zypp: ignore locked
  packages(gh#hughsie/PackageKit#543, boo#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1656676800">- Add PackageKit-zypp-add-upgrade-system.patch: implement
  upgrade-system method(gh#hughsie/PackageKit/commit/930dd201b).</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1657368000">- Move the dbus-1 system.d file to /usr (bsc#1201347)</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1659528000">- Modified PackageKit.spec: bump libzypp dependency version to
  17.31.0.
- Add PackageKit-zypp-avoid-statuReset.patch: zypp: Avoid
  statuReset() on locked packages
  (gh#PackageKit/PackageKit/commit/dd1964255, bsc#1199895).
- Add PackageKit-zypp-disable-upgrade-system-in-sle.patch: zypp:
  Disable upgrade-system support in SLE
  (gh#PackageKit/PackageKit/commit/0fcd820c2).
- Add PackageKit-zypp-restore-pool-status-after-simulating-update.patch:
  zypp: restore pool status after simulating an update
  (gh#PackageKit/PackageKit/commit/2b61a6649, bsc#1199895).
- Add PackageKit-zypp-fix-is-tumbleweed-check.patch: zypp: build
  the pool before calling is_tumbleweed()
  (gh#PackageKit/PackageKit/commit/146890153).
- Add PackageKit-zypp-update-libzypp-dependency-version.patch:
  zypp: update libzypp dependency version
  (gh#PackageKit/PackageKit/commit/58c7c0285, bsc#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1662120000">- Add PackageKit-zypp-dont-refresh-before-searching.patch:
  zypp: Don't refresh repos before searching
  (gh#PackageKit/PackageKit/commit/58c7c0285, bsc#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1664193600">- Add PackageKit-zypp-dont-remove-locked-packages.patch: zypp:
  Check if packages are locked before removing
  (gh#PackageKit/PackageKit/commit/8649a07bc, bsc#1199895).
- Add PackageKit-zypp-add-repo-in-packageid.patch: zypp: add
  repository data in package id
  (gh#PackageKit/PackageKit/commit/8eb2ef0ae, bsc#1202585).
- Remove PackageKit-zypp-locked-packages.patch: reverted upstream
  (gh#PackageKit/PackageKit/commit/ed3e38043).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1673006400">- Add PackageKit-zypp-fix-ambiguous-filesystem-reference.patch:
  zypp: Fix ambiguous reference to 'filesystem' class
  (gh#PackageKit/PackageKit/commit/bb1409a71, bsc#1206687).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678708800">- Add PackageKit-fix-pkcon-permission.patch: trivial: Drop
  unnecessary x permission
  (gh#PackageKit/PackageKit/commit/47b7f97bc, bsc#1209138)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1689595200">- Add PackageKit-dynamic-export.patch: fix loading of modules when
  built using glib 2.70 (boo#1213309).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1699531200">- Update to version 1.2.8:
  + Libraries:
  - offline-updates:
    . Make package update list deduplication more efficient.
    . Add only one entry per package to 'offline-update-competed'
    file.
  - PkClient: Replace the GSimpleAsyncResult with the GTask API.
  - pk-client:
    . Fix use-before-set of PkProgress on cancellation.
    . Move cancellable disconnect to dispose.
    . Rework refcounting for PkClientState.
  + Backends: Changes to apt, dnf, PiSi and BSD backends.
- Changes from version 1.2.7:
  + New Features:
  - pkclient: Add an option to count download size with
    dependencies.
  - pk-transaction: Add support for getting the RemainingTime
    property.
  + Backends:
  - zypp: Fix ambiguous reference to 'filesystem' class.
  - Changes to dnf, apt, alpm backends.
- Changes from version 1.2.6:
  + New Features:
  - Expose transaction sender as read-only property on the bus.
  - pkmon: Display transaction sender binary name in log.
  - pk-transaction: Add Packages signal.
  - pk-transaction: Combine some D-Bus PropertiesChanged signal
    emissions.
  - pk-transaction: Add UpdateDetails signal.
  + Backends:
  - zypp:
    . implement upgrade-system method.
    . Clean up trailing whitespaces.
    . Avoid statuReset() on locked packages.
    . restore pool status after simulating an update.
    . Disable upgrade-system support in SLE.
    . build the pool before calling is_tumbleweed().
    . update libzypp dependency version.
    . Don't refresh repos before searching.
    . Check if packages are locked before removing.
    . add repository data in package id.
    . Remove trailing whitespace.
    + Changes to alpm, aptcc, apt, and nix backends.
- Rebase patches:
  + PackageKit-dnf-Add-support-for-AppStream-repodata-basenames-use.patch
  + PackageKit-dynamic-export.patch
  + PackageKit-zypp-disable-upgrade-system-in-sle.patch
- Drop upstream fixed patches:
  + PackageKit-zypp-add-repo-in-packageid.patch
  + PackageKit-zypp-add-upgrade-system.patch
  + PackageKit-zypp-avoid-statuReset.patch
  + PackageKit-zypp-dont-refresh-before-searching.patch
  + PackageKit-zypp-dont-remove-locked-packages.patch
  + PackageKit-zypp-fix-ambiguous-filesystem-reference.patch
  + PackageKit-zypp-fix-is-tumbleweed-check.patch
  + PackageKit-zypp-restore-pool-status-after-simulating-update.patch
  + PackageKit-zypp-update-libzypp-dependency-version.patch</changelog>
  <changelog author="Alynx Zhou &lt;alynx.zhou@suse.com&gt;" date="1704196800">- Add PackageKit-find-python-3-6.patch: Specify the Python version
  we need to build this package.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1709640000">- Drop baselibs.conf: the -32bit packages are no longer needed and
  have not been part of Tumbleweed for a while already (build for
  i586 only enabled in LegacyX86).</changelog>
  <changelog author="Alynx Zhou &lt;alynx.zhou@suse.com&gt;" date="1723550400">- Add PackageKit-mark-as-compulsory.patch: Prevent PackageKit from
  user uninstallable for most desktops (bsc#1226269).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1726142400">- Add PackageKit-zypp-dont-install-updateCandidateObj.patch:
  zypp: Mark the correct packages to-be-installed (bsc#1227389,
  gh#PackageKit/PackageKit/commit/209aa6295).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1728993600">- Drop rcFOO symlinks (PED-266)
- Drop usage of update-alternatives, but simplify installation of
  /usr/libexec/gst-install-plugins-helper as a direct symlink to
  pk-gstreamer-install.</changelog>
</package>
<package pkgid="375a5cc3bebd8071ec4489019bf52ba53b54db6a19cc26f36dc8ee9195ef962340f484b042cc14e081b1dc4baf7e631db75fb4768148b800d1244f6a216b3556" name="PackageKit-gstreamer-plugin-debuginfo" arch="x86_64">
  <version epoch="0" ver="1.2.8" rel="4.1"/>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1629460800">- Add PackageKit-zypp-fix-crash-with-empty-search-string.patch:
  zypp: Fix crash when search string is NULL (bsc#1179287,
  gh#hughsie/PackageKit/commit#21ccf49).</changelog>
  <changelog author="Stanislav Brabec &lt;sbrabec@suse.com&gt;" date="1631793600">- Remove obsolete translation-update-upstream support
  (jsc#SLE-21105).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1636113600">- Update to version 1.2.4:
  + Libraries:
  - Add specific error code when user declined interaction
  - Avoid spurious GObject::notify signal emissions
  - Correct 'cancellable' use in pk_client_repair_system_async()
  - Fix a leak on calling set_locale() a second time
  - Fix a possible use-after-free under pk_client_cancel_cb()
  - Improve thread safety on an operation cancellation
  + Backends:
  - dnf:
    . Read update information also when getting list of updates
    . Honor install_weak_deps=False if it is there
    . Use 'hy_query_get_advisory_pkgs', if available
  + New Features:
  - PkDetails: Add 'download-size' property
  - PkPackage: Add update severity property
  + Bugfixes:
  - Let the finish understand the 'cancelled' exit code
  - Make backends that use pk-backend-spawn work (#477)
  - Only set polkit interactive flag if method call has too
- Changes from version 1.2.3:
  + Backends:
  - alpm:
    . Add post transaction hook
    . Rename errno to alpm_err to avoid name clashes
  - aptcc: Auto-remove old kernels, unless configured otherwise
  - dnf: Add support for coercing upgrade to distupgrade
  - zypp:
    . Make sure pool is initialized at the beginning of some
    methods
    . Reset update mode after getting updates
  + Bugfixes:
  - Append to cron log instead of overwriting it
  - Cancel a transaction if calling Cancel fails or the daemon
    disappears
  - Do not crash when calling pk_dbus_get_uid() before D-Bus is
    setup
  - Fix all compiler warnings
  - Fix multilib conflicts in generated pk-enum-types.h
  - Free scheduler array correctly again
  - Remove large transaction size sanity check
- Drop patches fixed upstream:
  + PackageKit-zypp-cleanup-tmp-files.patch
  + PackageKit-zypp-reset-update-mode-after-get-updates.patch
  + PackageKit-dnf-Add-support-for-coercing-upgrade-to-distupgrade.patch
  + PackageKit-zypp-initialize-pool.patch
  + PackageKit-remove-transaction-size-limit.patch
  + PackageKit-cancel-transaction-if-daemon-disappears.patch
  + PackageKit-dnf-ignore-weak-deps.patch
- Add 505.patch: pk-offline: Add flags to D-Bus invoking methods.
  That's currently to be able to set whether the method should be
  interactive or not. The old functions call the methods as
  non-interactive.</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1636113601">- Add PackageKit-zypp-c++17.patch: Fix build failure when building
  with libzypp &gt; 17.28.5 and gcc &lt; 11
  (gh#hughsie/PackageKit/commit/1a6bb6ae6, bsc#1192349).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1637064000">- Rewrite prep phase to not use autopatch -M: SLE15/Leap15's RPM
  version does not support that syntax yet.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1637064001">- Apply all patches unconditonally: PackageKit-zypp-c++17.patch is
  merged in upstream git and thus does not justify to be
  conditionally applied.
- Switching back to autosetup, as this works without conditional
  patches.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1653048000">- Update to version 1.2.5:
  + Backends:
  - dnf:
    . Add support for autoremove flag when removing packages.
    . Searches by name and package details should be case
    insensitive.
    . Update appstream xml files if dnf_sack_add_repos() does
    the download.
  - zypp:
    . Add -std=c++1z cpp flags.
    . Fix crash when search string is NULL.
    . Fix package installation using undefined data.
  - Changes to alpm, apttcc, nix, and slack.
  + Bugfixes:
  - Install offline-update enablement symlink if Meson is new
    enough.
  - Move Wants= line for network-online.target.
  - Add flags to D-Bus offline invoking methods.
  - Properly handle allow-reinstall flag for installations.
  - Provide better error message if trying to install an
    installed package.
  - Wait until online to activate systemd service.
- Drop 505.patch, PackageKit-zypp-c++17.patch, and
  PackageKit-zypp-fix-crash-with-empty-search-string.patch: fixed
  upstream.</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1653566400">- Add PackageKit-zypp-locked-packages.patch: zypp: ignore locked
  packages(gh#hughsie/PackageKit#543, boo#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1656676800">- Add PackageKit-zypp-add-upgrade-system.patch: implement
  upgrade-system method(gh#hughsie/PackageKit/commit/930dd201b).</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1657368000">- Move the dbus-1 system.d file to /usr (bsc#1201347)</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1659528000">- Modified PackageKit.spec: bump libzypp dependency version to
  17.31.0.
- Add PackageKit-zypp-avoid-statuReset.patch: zypp: Avoid
  statuReset() on locked packages
  (gh#PackageKit/PackageKit/commit/dd1964255, bsc#1199895).
- Add PackageKit-zypp-disable-upgrade-system-in-sle.patch: zypp:
  Disable upgrade-system support in SLE
  (gh#PackageKit/PackageKit/commit/0fcd820c2).
- Add PackageKit-zypp-restore-pool-status-after-simulating-update.patch:
  zypp: restore pool status after simulating an update
  (gh#PackageKit/PackageKit/commit/2b61a6649, bsc#1199895).
- Add PackageKit-zypp-fix-is-tumbleweed-check.patch: zypp: build
  the pool before calling is_tumbleweed()
  (gh#PackageKit/PackageKit/commit/146890153).
- Add PackageKit-zypp-update-libzypp-dependency-version.patch:
  zypp: update libzypp dependency version
  (gh#PackageKit/PackageKit/commit/58c7c0285, bsc#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1662120000">- Add PackageKit-zypp-dont-refresh-before-searching.patch:
  zypp: Don't refresh repos before searching
  (gh#PackageKit/PackageKit/commit/58c7c0285, bsc#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1664193600">- Add PackageKit-zypp-dont-remove-locked-packages.patch: zypp:
  Check if packages are locked before removing
  (gh#PackageKit/PackageKit/commit/8649a07bc, bsc#1199895).
- Add PackageKit-zypp-add-repo-in-packageid.patch: zypp: add
  repository data in package id
  (gh#PackageKit/PackageKit/commit/8eb2ef0ae, bsc#1202585).
- Remove PackageKit-zypp-locked-packages.patch: reverted upstream
  (gh#PackageKit/PackageKit/commit/ed3e38043).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1673006400">- Add PackageKit-zypp-fix-ambiguous-filesystem-reference.patch:
  zypp: Fix ambiguous reference to 'filesystem' class
  (gh#PackageKit/PackageKit/commit/bb1409a71, bsc#1206687).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678708800">- Add PackageKit-fix-pkcon-permission.patch: trivial: Drop
  unnecessary x permission
  (gh#PackageKit/PackageKit/commit/47b7f97bc, bsc#1209138)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1689595200">- Add PackageKit-dynamic-export.patch: fix loading of modules when
  built using glib 2.70 (boo#1213309).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1699531200">- Update to version 1.2.8:
  + Libraries:
  - offline-updates:
    . Make package update list deduplication more efficient.
    . Add only one entry per package to 'offline-update-competed'
    file.
  - PkClient: Replace the GSimpleAsyncResult with the GTask API.
  - pk-client:
    . Fix use-before-set of PkProgress on cancellation.
    . Move cancellable disconnect to dispose.
    . Rework refcounting for PkClientState.
  + Backends: Changes to apt, dnf, PiSi and BSD backends.
- Changes from version 1.2.7:
  + New Features:
  - pkclient: Add an option to count download size with
    dependencies.
  - pk-transaction: Add support for getting the RemainingTime
    property.
  + Backends:
  - zypp: Fix ambiguous reference to 'filesystem' class.
  - Changes to dnf, apt, alpm backends.
- Changes from version 1.2.6:
  + New Features:
  - Expose transaction sender as read-only property on the bus.
  - pkmon: Display transaction sender binary name in log.
  - pk-transaction: Add Packages signal.
  - pk-transaction: Combine some D-Bus PropertiesChanged signal
    emissions.
  - pk-transaction: Add UpdateDetails signal.
  + Backends:
  - zypp:
    . implement upgrade-system method.
    . Clean up trailing whitespaces.
    . Avoid statuReset() on locked packages.
    . restore pool status after simulating an update.
    . Disable upgrade-system support in SLE.
    . build the pool before calling is_tumbleweed().
    . update libzypp dependency version.
    . Don't refresh repos before searching.
    . Check if packages are locked before removing.
    . add repository data in package id.
    . Remove trailing whitespace.
    + Changes to alpm, aptcc, apt, and nix backends.
- Rebase patches:
  + PackageKit-dnf-Add-support-for-AppStream-repodata-basenames-use.patch
  + PackageKit-dynamic-export.patch
  + PackageKit-zypp-disable-upgrade-system-in-sle.patch
- Drop upstream fixed patches:
  + PackageKit-zypp-add-repo-in-packageid.patch
  + PackageKit-zypp-add-upgrade-system.patch
  + PackageKit-zypp-avoid-statuReset.patch
  + PackageKit-zypp-dont-refresh-before-searching.patch
  + PackageKit-zypp-dont-remove-locked-packages.patch
  + PackageKit-zypp-fix-ambiguous-filesystem-reference.patch
  + PackageKit-zypp-fix-is-tumbleweed-check.patch
  + PackageKit-zypp-restore-pool-status-after-simulating-update.patch
  + PackageKit-zypp-update-libzypp-dependency-version.patch</changelog>
  <changelog author="Alynx Zhou &lt;alynx.zhou@suse.com&gt;" date="1704196800">- Add PackageKit-find-python-3-6.patch: Specify the Python version
  we need to build this package.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1709640000">- Drop baselibs.conf: the -32bit packages are no longer needed and
  have not been part of Tumbleweed for a while already (build for
  i586 only enabled in LegacyX86).</changelog>
  <changelog author="Alynx Zhou &lt;alynx.zhou@suse.com&gt;" date="1723550400">- Add PackageKit-mark-as-compulsory.patch: Prevent PackageKit from
  user uninstallable for most desktops (bsc#1226269).</changelog>
</package>
<package pkgid="8f5c2f903f7b89ba17e902ccbdd645276d7d56324074834ffd39ba338c3739d21ef54cb80503e7ba6564e7c4aedbb6fa3a31f713c592fd439db44f74e65559ab" name="PackageKit-gstreamer-plugin-debuginfo" arch="x86_64">
  <version epoch="0" ver="1.2.8" rel="5.0.2.1.sr20240901"/>
  <changelog author="Stanislav Brabec &lt;sbrabec@suse.com&gt;" date="1631793600">- Remove obsolete translation-update-upstream support
  (jsc#SLE-21105).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1636113600">- Update to version 1.2.4:
  + Libraries:
  - Add specific error code when user declined interaction
  - Avoid spurious GObject::notify signal emissions
  - Correct 'cancellable' use in pk_client_repair_system_async()
  - Fix a leak on calling set_locale() a second time
  - Fix a possible use-after-free under pk_client_cancel_cb()
  - Improve thread safety on an operation cancellation
  + Backends:
  - dnf:
    . Read update information also when getting list of updates
    . Honor install_weak_deps=False if it is there
    . Use 'hy_query_get_advisory_pkgs', if available
  + New Features:
  - PkDetails: Add 'download-size' property
  - PkPackage: Add update severity property
  + Bugfixes:
  - Let the finish understand the 'cancelled' exit code
  - Make backends that use pk-backend-spawn work (#477)
  - Only set polkit interactive flag if method call has too
- Changes from version 1.2.3:
  + Backends:
  - alpm:
    . Add post transaction hook
    . Rename errno to alpm_err to avoid name clashes
  - aptcc: Auto-remove old kernels, unless configured otherwise
  - dnf: Add support for coercing upgrade to distupgrade
  - zypp:
    . Make sure pool is initialized at the beginning of some
    methods
    . Reset update mode after getting updates
  + Bugfixes:
  - Append to cron log instead of overwriting it
  - Cancel a transaction if calling Cancel fails or the daemon
    disappears
  - Do not crash when calling pk_dbus_get_uid() before D-Bus is
    setup
  - Fix all compiler warnings
  - Fix multilib conflicts in generated pk-enum-types.h
  - Free scheduler array correctly again
  - Remove large transaction size sanity check
- Drop patches fixed upstream:
  + PackageKit-zypp-cleanup-tmp-files.patch
  + PackageKit-zypp-reset-update-mode-after-get-updates.patch
  + PackageKit-dnf-Add-support-for-coercing-upgrade-to-distupgrade.patch
  + PackageKit-zypp-initialize-pool.patch
  + PackageKit-remove-transaction-size-limit.patch
  + PackageKit-cancel-transaction-if-daemon-disappears.patch
  + PackageKit-dnf-ignore-weak-deps.patch
- Add 505.patch: pk-offline: Add flags to D-Bus invoking methods.
  That's currently to be able to set whether the method should be
  interactive or not. The old functions call the methods as
  non-interactive.</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1636113601">- Add PackageKit-zypp-c++17.patch: Fix build failure when building
  with libzypp &gt; 17.28.5 and gcc &lt; 11
  (gh#hughsie/PackageKit/commit/1a6bb6ae6, bsc#1192349).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1637064000">- Rewrite prep phase to not use autopatch -M: SLE15/Leap15's RPM
  version does not support that syntax yet.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1637064001">- Apply all patches unconditonally: PackageKit-zypp-c++17.patch is
  merged in upstream git and thus does not justify to be
  conditionally applied.
- Switching back to autosetup, as this works without conditional
  patches.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1653048000">- Update to version 1.2.5:
  + Backends:
  - dnf:
    . Add support for autoremove flag when removing packages.
    . Searches by name and package details should be case
    insensitive.
    . Update appstream xml files if dnf_sack_add_repos() does
    the download.
  - zypp:
    . Add -std=c++1z cpp flags.
    . Fix crash when search string is NULL.
    . Fix package installation using undefined data.
  - Changes to alpm, apttcc, nix, and slack.
  + Bugfixes:
  - Install offline-update enablement symlink if Meson is new
    enough.
  - Move Wants= line for network-online.target.
  - Add flags to D-Bus offline invoking methods.
  - Properly handle allow-reinstall flag for installations.
  - Provide better error message if trying to install an
    installed package.
  - Wait until online to activate systemd service.
- Drop 505.patch, PackageKit-zypp-c++17.patch, and
  PackageKit-zypp-fix-crash-with-empty-search-string.patch: fixed
  upstream.</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1653566400">- Add PackageKit-zypp-locked-packages.patch: zypp: ignore locked
  packages(gh#hughsie/PackageKit#543, boo#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1656676800">- Add PackageKit-zypp-add-upgrade-system.patch: implement
  upgrade-system method(gh#hughsie/PackageKit/commit/930dd201b).</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1657368000">- Move the dbus-1 system.d file to /usr (bsc#1201347)</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1659528000">- Modified PackageKit.spec: bump libzypp dependency version to
  17.31.0.
- Add PackageKit-zypp-avoid-statuReset.patch: zypp: Avoid
  statuReset() on locked packages
  (gh#PackageKit/PackageKit/commit/dd1964255, bsc#1199895).
- Add PackageKit-zypp-disable-upgrade-system-in-sle.patch: zypp:
  Disable upgrade-system support in SLE
  (gh#PackageKit/PackageKit/commit/0fcd820c2).
- Add PackageKit-zypp-restore-pool-status-after-simulating-update.patch:
  zypp: restore pool status after simulating an update
  (gh#PackageKit/PackageKit/commit/2b61a6649, bsc#1199895).
- Add PackageKit-zypp-fix-is-tumbleweed-check.patch: zypp: build
  the pool before calling is_tumbleweed()
  (gh#PackageKit/PackageKit/commit/146890153).
- Add PackageKit-zypp-update-libzypp-dependency-version.patch:
  zypp: update libzypp dependency version
  (gh#PackageKit/PackageKit/commit/58c7c0285, bsc#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1662120000">- Add PackageKit-zypp-dont-refresh-before-searching.patch:
  zypp: Don't refresh repos before searching
  (gh#PackageKit/PackageKit/commit/58c7c0285, bsc#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1664193600">- Add PackageKit-zypp-dont-remove-locked-packages.patch: zypp:
  Check if packages are locked before removing
  (gh#PackageKit/PackageKit/commit/8649a07bc, bsc#1199895).
- Add PackageKit-zypp-add-repo-in-packageid.patch: zypp: add
  repository data in package id
  (gh#PackageKit/PackageKit/commit/8eb2ef0ae, bsc#1202585).
- Remove PackageKit-zypp-locked-packages.patch: reverted upstream
  (gh#PackageKit/PackageKit/commit/ed3e38043).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1673006400">- Add PackageKit-zypp-fix-ambiguous-filesystem-reference.patch:
  zypp: Fix ambiguous reference to 'filesystem' class
  (gh#PackageKit/PackageKit/commit/bb1409a71, bsc#1206687).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678708800">- Add PackageKit-fix-pkcon-permission.patch: trivial: Drop
  unnecessary x permission
  (gh#PackageKit/PackageKit/commit/47b7f97bc, bsc#1209138)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1689595200">- Add PackageKit-dynamic-export.patch: fix loading of modules when
  built using glib 2.70 (boo#1213309).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1699531200">- Update to version 1.2.8:
  + Libraries:
  - offline-updates:
    . Make package update list deduplication more efficient.
    . Add only one entry per package to 'offline-update-competed'
    file.
  - PkClient: Replace the GSimpleAsyncResult with the GTask API.
  - pk-client:
    . Fix use-before-set of PkProgress on cancellation.
    . Move cancellable disconnect to dispose.
    . Rework refcounting for PkClientState.
  + Backends: Changes to apt, dnf, PiSi and BSD backends.
- Changes from version 1.2.7:
  + New Features:
  - pkclient: Add an option to count download size with
    dependencies.
  - pk-transaction: Add support for getting the RemainingTime
    property.
  + Backends:
  - zypp: Fix ambiguous reference to 'filesystem' class.
  - Changes to dnf, apt, alpm backends.
- Changes from version 1.2.6:
  + New Features:
  - Expose transaction sender as read-only property on the bus.
  - pkmon: Display transaction sender binary name in log.
  - pk-transaction: Add Packages signal.
  - pk-transaction: Combine some D-Bus PropertiesChanged signal
    emissions.
  - pk-transaction: Add UpdateDetails signal.
  + Backends:
  - zypp:
    . implement upgrade-system method.
    . Clean up trailing whitespaces.
    . Avoid statuReset() on locked packages.
    . restore pool status after simulating an update.
    . Disable upgrade-system support in SLE.
    . build the pool before calling is_tumbleweed().
    . update libzypp dependency version.
    . Don't refresh repos before searching.
    . Check if packages are locked before removing.
    . add repository data in package id.
    . Remove trailing whitespace.
    + Changes to alpm, aptcc, apt, and nix backends.
- Rebase patches:
  + PackageKit-dnf-Add-support-for-AppStream-repodata-basenames-use.patch
  + PackageKit-dynamic-export.patch
  + PackageKit-zypp-disable-upgrade-system-in-sle.patch
- Drop upstream fixed patches:
  + PackageKit-zypp-add-repo-in-packageid.patch
  + PackageKit-zypp-add-upgrade-system.patch
  + PackageKit-zypp-avoid-statuReset.patch
  + PackageKit-zypp-dont-refresh-before-searching.patch
  + PackageKit-zypp-dont-remove-locked-packages.patch
  + PackageKit-zypp-fix-ambiguous-filesystem-reference.patch
  + PackageKit-zypp-fix-is-tumbleweed-check.patch
  + PackageKit-zypp-restore-pool-status-after-simulating-update.patch
  + PackageKit-zypp-update-libzypp-dependency-version.patch</changelog>
  <changelog author="Alynx Zhou &lt;alynx.zhou@suse.com&gt;" date="1704196800">- Add PackageKit-find-python-3-6.patch: Specify the Python version
  we need to build this package.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1709640000">- Drop baselibs.conf: the -32bit packages are no longer needed and
  have not been part of Tumbleweed for a while already (build for
  i586 only enabled in LegacyX86).</changelog>
  <changelog author="Alynx Zhou &lt;alynx.zhou@suse.com&gt;" date="1723550400">- Add PackageKit-mark-as-compulsory.patch: Prevent PackageKit from
  user uninstallable for most desktops (bsc#1226269).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1726142400">- Add PackageKit-zypp-dont-install-updateCandidateObj.patch:
  zypp: Mark the correct packages to-be-installed (bsc#1227389,
  gh#PackageKit/PackageKit/commit/209aa6295).</changelog>
</package>
<package pkgid="450dbfded51cea03615c0821009281cc2e200092dc875b6699215ec543f3b89f50290e9c40171c3a7de96fa8418c122c82b602230c2e2792d452a8b183aae929" name="PackageKit-gstreamer-plugin-debuginfo" arch="x86_64">
  <version epoch="0" ver="1.2.8" rel="5.1"/>
  <changelog author="Stanislav Brabec &lt;sbrabec@suse.com&gt;" date="1631793600">- Remove obsolete translation-update-upstream support
  (jsc#SLE-21105).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1636113600">- Update to version 1.2.4:
  + Libraries:
  - Add specific error code when user declined interaction
  - Avoid spurious GObject::notify signal emissions
  - Correct 'cancellable' use in pk_client_repair_system_async()
  - Fix a leak on calling set_locale() a second time
  - Fix a possible use-after-free under pk_client_cancel_cb()
  - Improve thread safety on an operation cancellation
  + Backends:
  - dnf:
    . Read update information also when getting list of updates
    . Honor install_weak_deps=False if it is there
    . Use 'hy_query_get_advisory_pkgs', if available
  + New Features:
  - PkDetails: Add 'download-size' property
  - PkPackage: Add update severity property
  + Bugfixes:
  - Let the finish understand the 'cancelled' exit code
  - Make backends that use pk-backend-spawn work (#477)
  - Only set polkit interactive flag if method call has too
- Changes from version 1.2.3:
  + Backends:
  - alpm:
    . Add post transaction hook
    . Rename errno to alpm_err to avoid name clashes
  - aptcc: Auto-remove old kernels, unless configured otherwise
  - dnf: Add support for coercing upgrade to distupgrade
  - zypp:
    . Make sure pool is initialized at the beginning of some
    methods
    . Reset update mode after getting updates
  + Bugfixes:
  - Append to cron log instead of overwriting it
  - Cancel a transaction if calling Cancel fails or the daemon
    disappears
  - Do not crash when calling pk_dbus_get_uid() before D-Bus is
    setup
  - Fix all compiler warnings
  - Fix multilib conflicts in generated pk-enum-types.h
  - Free scheduler array correctly again
  - Remove large transaction size sanity check
- Drop patches fixed upstream:
  + PackageKit-zypp-cleanup-tmp-files.patch
  + PackageKit-zypp-reset-update-mode-after-get-updates.patch
  + PackageKit-dnf-Add-support-for-coercing-upgrade-to-distupgrade.patch
  + PackageKit-zypp-initialize-pool.patch
  + PackageKit-remove-transaction-size-limit.patch
  + PackageKit-cancel-transaction-if-daemon-disappears.patch
  + PackageKit-dnf-ignore-weak-deps.patch
- Add 505.patch: pk-offline: Add flags to D-Bus invoking methods.
  That's currently to be able to set whether the method should be
  interactive or not. The old functions call the methods as
  non-interactive.</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1636113601">- Add PackageKit-zypp-c++17.patch: Fix build failure when building
  with libzypp &gt; 17.28.5 and gcc &lt; 11
  (gh#hughsie/PackageKit/commit/1a6bb6ae6, bsc#1192349).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1637064000">- Rewrite prep phase to not use autopatch -M: SLE15/Leap15's RPM
  version does not support that syntax yet.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1637064001">- Apply all patches unconditonally: PackageKit-zypp-c++17.patch is
  merged in upstream git and thus does not justify to be
  conditionally applied.
- Switching back to autosetup, as this works without conditional
  patches.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1653048000">- Update to version 1.2.5:
  + Backends:
  - dnf:
    . Add support for autoremove flag when removing packages.
    . Searches by name and package details should be case
    insensitive.
    . Update appstream xml files if dnf_sack_add_repos() does
    the download.
  - zypp:
    . Add -std=c++1z cpp flags.
    . Fix crash when search string is NULL.
    . Fix package installation using undefined data.
  - Changes to alpm, apttcc, nix, and slack.
  + Bugfixes:
  - Install offline-update enablement symlink if Meson is new
    enough.
  - Move Wants= line for network-online.target.
  - Add flags to D-Bus offline invoking methods.
  - Properly handle allow-reinstall flag for installations.
  - Provide better error message if trying to install an
    installed package.
  - Wait until online to activate systemd service.
- Drop 505.patch, PackageKit-zypp-c++17.patch, and
  PackageKit-zypp-fix-crash-with-empty-search-string.patch: fixed
  upstream.</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1653566400">- Add PackageKit-zypp-locked-packages.patch: zypp: ignore locked
  packages(gh#hughsie/PackageKit#543, boo#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1656676800">- Add PackageKit-zypp-add-upgrade-system.patch: implement
  upgrade-system method(gh#hughsie/PackageKit/commit/930dd201b).</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1657368000">- Move the dbus-1 system.d file to /usr (bsc#1201347)</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1659528000">- Modified PackageKit.spec: bump libzypp dependency version to
  17.31.0.
- Add PackageKit-zypp-avoid-statuReset.patch: zypp: Avoid
  statuReset() on locked packages
  (gh#PackageKit/PackageKit/commit/dd1964255, bsc#1199895).
- Add PackageKit-zypp-disable-upgrade-system-in-sle.patch: zypp:
  Disable upgrade-system support in SLE
  (gh#PackageKit/PackageKit/commit/0fcd820c2).
- Add PackageKit-zypp-restore-pool-status-after-simulating-update.patch:
  zypp: restore pool status after simulating an update
  (gh#PackageKit/PackageKit/commit/2b61a6649, bsc#1199895).
- Add PackageKit-zypp-fix-is-tumbleweed-check.patch: zypp: build
  the pool before calling is_tumbleweed()
  (gh#PackageKit/PackageKit/commit/146890153).
- Add PackageKit-zypp-update-libzypp-dependency-version.patch:
  zypp: update libzypp dependency version
  (gh#PackageKit/PackageKit/commit/58c7c0285, bsc#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1662120000">- Add PackageKit-zypp-dont-refresh-before-searching.patch:
  zypp: Don't refresh repos before searching
  (gh#PackageKit/PackageKit/commit/58c7c0285, bsc#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1664193600">- Add PackageKit-zypp-dont-remove-locked-packages.patch: zypp:
  Check if packages are locked before removing
  (gh#PackageKit/PackageKit/commit/8649a07bc, bsc#1199895).
- Add PackageKit-zypp-add-repo-in-packageid.patch: zypp: add
  repository data in package id
  (gh#PackageKit/PackageKit/commit/8eb2ef0ae, bsc#1202585).
- Remove PackageKit-zypp-locked-packages.patch: reverted upstream
  (gh#PackageKit/PackageKit/commit/ed3e38043).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1673006400">- Add PackageKit-zypp-fix-ambiguous-filesystem-reference.patch:
  zypp: Fix ambiguous reference to 'filesystem' class
  (gh#PackageKit/PackageKit/commit/bb1409a71, bsc#1206687).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678708800">- Add PackageKit-fix-pkcon-permission.patch: trivial: Drop
  unnecessary x permission
  (gh#PackageKit/PackageKit/commit/47b7f97bc, bsc#1209138)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1689595200">- Add PackageKit-dynamic-export.patch: fix loading of modules when
  built using glib 2.70 (boo#1213309).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1699531200">- Update to version 1.2.8:
  + Libraries:
  - offline-updates:
    . Make package update list deduplication more efficient.
    . Add only one entry per package to 'offline-update-competed'
    file.
  - PkClient: Replace the GSimpleAsyncResult with the GTask API.
  - pk-client:
    . Fix use-before-set of PkProgress on cancellation.
    . Move cancellable disconnect to dispose.
    . Rework refcounting for PkClientState.
  + Backends: Changes to apt, dnf, PiSi and BSD backends.
- Changes from version 1.2.7:
  + New Features:
  - pkclient: Add an option to count download size with
    dependencies.
  - pk-transaction: Add support for getting the RemainingTime
    property.
  + Backends:
  - zypp: Fix ambiguous reference to 'filesystem' class.
  - Changes to dnf, apt, alpm backends.
- Changes from version 1.2.6:
  + New Features:
  - Expose transaction sender as read-only property on the bus.
  - pkmon: Display transaction sender binary name in log.
  - pk-transaction: Add Packages signal.
  - pk-transaction: Combine some D-Bus PropertiesChanged signal
    emissions.
  - pk-transaction: Add UpdateDetails signal.
  + Backends:
  - zypp:
    . implement upgrade-system method.
    . Clean up trailing whitespaces.
    . Avoid statuReset() on locked packages.
    . restore pool status after simulating an update.
    . Disable upgrade-system support in SLE.
    . build the pool before calling is_tumbleweed().
    . update libzypp dependency version.
    . Don't refresh repos before searching.
    . Check if packages are locked before removing.
    . add repository data in package id.
    . Remove trailing whitespace.
    + Changes to alpm, aptcc, apt, and nix backends.
- Rebase patches:
  + PackageKit-dnf-Add-support-for-AppStream-repodata-basenames-use.patch
  + PackageKit-dynamic-export.patch
  + PackageKit-zypp-disable-upgrade-system-in-sle.patch
- Drop upstream fixed patches:
  + PackageKit-zypp-add-repo-in-packageid.patch
  + PackageKit-zypp-add-upgrade-system.patch
  + PackageKit-zypp-avoid-statuReset.patch
  + PackageKit-zypp-dont-refresh-before-searching.patch
  + PackageKit-zypp-dont-remove-locked-packages.patch
  + PackageKit-zypp-fix-ambiguous-filesystem-reference.patch
  + PackageKit-zypp-fix-is-tumbleweed-check.patch
  + PackageKit-zypp-restore-pool-status-after-simulating-update.patch
  + PackageKit-zypp-update-libzypp-dependency-version.patch</changelog>
  <changelog author="Alynx Zhou &lt;alynx.zhou@suse.com&gt;" date="1704196800">- Add PackageKit-find-python-3-6.patch: Specify the Python version
  we need to build this package.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1709640000">- Drop baselibs.conf: the -32bit packages are no longer needed and
  have not been part of Tumbleweed for a while already (build for
  i586 only enabled in LegacyX86).</changelog>
  <changelog author="Alynx Zhou &lt;alynx.zhou@suse.com&gt;" date="1723550400">- Add PackageKit-mark-as-compulsory.patch: Prevent PackageKit from
  user uninstallable for most desktops (bsc#1226269).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1726142400">- Add PackageKit-zypp-dont-install-updateCandidateObj.patch:
  zypp: Mark the correct packages to-be-installed (bsc#1227389,
  gh#PackageKit/PackageKit/commit/209aa6295).</changelog>
</package>
<package pkgid="b1315e50e75174b4408e61b4a25b04d6a5110e21a64f1166752722e7220bc258c0e1f7acfd49b21ebccdd6dc4abb5e71f6b75a1b56927f099794f709992319db" name="PackageKit-gstreamer-plugin-debuginfo" arch="x86_64">
  <version epoch="0" ver="1.2.8" rel="6.1"/>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1636113600">- Update to version 1.2.4:
  + Libraries:
  - Add specific error code when user declined interaction
  - Avoid spurious GObject::notify signal emissions
  - Correct 'cancellable' use in pk_client_repair_system_async()
  - Fix a leak on calling set_locale() a second time
  - Fix a possible use-after-free under pk_client_cancel_cb()
  - Improve thread safety on an operation cancellation
  + Backends:
  - dnf:
    . Read update information also when getting list of updates
    . Honor install_weak_deps=False if it is there
    . Use 'hy_query_get_advisory_pkgs', if available
  + New Features:
  - PkDetails: Add 'download-size' property
  - PkPackage: Add update severity property
  + Bugfixes:
  - Let the finish understand the 'cancelled' exit code
  - Make backends that use pk-backend-spawn work (#477)
  - Only set polkit interactive flag if method call has too
- Changes from version 1.2.3:
  + Backends:
  - alpm:
    . Add post transaction hook
    . Rename errno to alpm_err to avoid name clashes
  - aptcc: Auto-remove old kernels, unless configured otherwise
  - dnf: Add support for coercing upgrade to distupgrade
  - zypp:
    . Make sure pool is initialized at the beginning of some
    methods
    . Reset update mode after getting updates
  + Bugfixes:
  - Append to cron log instead of overwriting it
  - Cancel a transaction if calling Cancel fails or the daemon
    disappears
  - Do not crash when calling pk_dbus_get_uid() before D-Bus is
    setup
  - Fix all compiler warnings
  - Fix multilib conflicts in generated pk-enum-types.h
  - Free scheduler array correctly again
  - Remove large transaction size sanity check
- Drop patches fixed upstream:
  + PackageKit-zypp-cleanup-tmp-files.patch
  + PackageKit-zypp-reset-update-mode-after-get-updates.patch
  + PackageKit-dnf-Add-support-for-coercing-upgrade-to-distupgrade.patch
  + PackageKit-zypp-initialize-pool.patch
  + PackageKit-remove-transaction-size-limit.patch
  + PackageKit-cancel-transaction-if-daemon-disappears.patch
  + PackageKit-dnf-ignore-weak-deps.patch
- Add 505.patch: pk-offline: Add flags to D-Bus invoking methods.
  That's currently to be able to set whether the method should be
  interactive or not. The old functions call the methods as
  non-interactive.</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1636113601">- Add PackageKit-zypp-c++17.patch: Fix build failure when building
  with libzypp &gt; 17.28.5 and gcc &lt; 11
  (gh#hughsie/PackageKit/commit/1a6bb6ae6, bsc#1192349).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1637064000">- Rewrite prep phase to not use autopatch -M: SLE15/Leap15's RPM
  version does not support that syntax yet.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1637064001">- Apply all patches unconditonally: PackageKit-zypp-c++17.patch is
  merged in upstream git and thus does not justify to be
  conditionally applied.
- Switching back to autosetup, as this works without conditional
  patches.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1653048000">- Update to version 1.2.5:
  + Backends:
  - dnf:
    . Add support for autoremove flag when removing packages.
    . Searches by name and package details should be case
    insensitive.
    . Update appstream xml files if dnf_sack_add_repos() does
    the download.
  - zypp:
    . Add -std=c++1z cpp flags.
    . Fix crash when search string is NULL.
    . Fix package installation using undefined data.
  - Changes to alpm, apttcc, nix, and slack.
  + Bugfixes:
  - Install offline-update enablement symlink if Meson is new
    enough.
  - Move Wants= line for network-online.target.
  - Add flags to D-Bus offline invoking methods.
  - Properly handle allow-reinstall flag for installations.
  - Provide better error message if trying to install an
    installed package.
  - Wait until online to activate systemd service.
- Drop 505.patch, PackageKit-zypp-c++17.patch, and
  PackageKit-zypp-fix-crash-with-empty-search-string.patch: fixed
  upstream.</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1653566400">- Add PackageKit-zypp-locked-packages.patch: zypp: ignore locked
  packages(gh#hughsie/PackageKit#543, boo#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1656676800">- Add PackageKit-zypp-add-upgrade-system.patch: implement
  upgrade-system method(gh#hughsie/PackageKit/commit/930dd201b).</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1657368000">- Move the dbus-1 system.d file to /usr (bsc#1201347)</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1659528000">- Modified PackageKit.spec: bump libzypp dependency version to
  17.31.0.
- Add PackageKit-zypp-avoid-statuReset.patch: zypp: Avoid
  statuReset() on locked packages
  (gh#PackageKit/PackageKit/commit/dd1964255, bsc#1199895).
- Add PackageKit-zypp-disable-upgrade-system-in-sle.patch: zypp:
  Disable upgrade-system support in SLE
  (gh#PackageKit/PackageKit/commit/0fcd820c2).
- Add PackageKit-zypp-restore-pool-status-after-simulating-update.patch:
  zypp: restore pool status after simulating an update
  (gh#PackageKit/PackageKit/commit/2b61a6649, bsc#1199895).
- Add PackageKit-zypp-fix-is-tumbleweed-check.patch: zypp: build
  the pool before calling is_tumbleweed()
  (gh#PackageKit/PackageKit/commit/146890153).
- Add PackageKit-zypp-update-libzypp-dependency-version.patch:
  zypp: update libzypp dependency version
  (gh#PackageKit/PackageKit/commit/58c7c0285, bsc#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1662120000">- Add PackageKit-zypp-dont-refresh-before-searching.patch:
  zypp: Don't refresh repos before searching
  (gh#PackageKit/PackageKit/commit/58c7c0285, bsc#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1664193600">- Add PackageKit-zypp-dont-remove-locked-packages.patch: zypp:
  Check if packages are locked before removing
  (gh#PackageKit/PackageKit/commit/8649a07bc, bsc#1199895).
- Add PackageKit-zypp-add-repo-in-packageid.patch: zypp: add
  repository data in package id
  (gh#PackageKit/PackageKit/commit/8eb2ef0ae, bsc#1202585).
- Remove PackageKit-zypp-locked-packages.patch: reverted upstream
  (gh#PackageKit/PackageKit/commit/ed3e38043).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1673006400">- Add PackageKit-zypp-fix-ambiguous-filesystem-reference.patch:
  zypp: Fix ambiguous reference to 'filesystem' class
  (gh#PackageKit/PackageKit/commit/bb1409a71, bsc#1206687).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678708800">- Add PackageKit-fix-pkcon-permission.patch: trivial: Drop
  unnecessary x permission
  (gh#PackageKit/PackageKit/commit/47b7f97bc, bsc#1209138)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1689595200">- Add PackageKit-dynamic-export.patch: fix loading of modules when
  built using glib 2.70 (boo#1213309).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1699531200">- Update to version 1.2.8:
  + Libraries:
  - offline-updates:
    . Make package update list deduplication more efficient.
    . Add only one entry per package to 'offline-update-competed'
    file.
  - PkClient: Replace the GSimpleAsyncResult with the GTask API.
  - pk-client:
    . Fix use-before-set of PkProgress on cancellation.
    . Move cancellable disconnect to dispose.
    . Rework refcounting for PkClientState.
  + Backends: Changes to apt, dnf, PiSi and BSD backends.
- Changes from version 1.2.7:
  + New Features:
  - pkclient: Add an option to count download size with
    dependencies.
  - pk-transaction: Add support for getting the RemainingTime
    property.
  + Backends:
  - zypp: Fix ambiguous reference to 'filesystem' class.
  - Changes to dnf, apt, alpm backends.
- Changes from version 1.2.6:
  + New Features:
  - Expose transaction sender as read-only property on the bus.
  - pkmon: Display transaction sender binary name in log.
  - pk-transaction: Add Packages signal.
  - pk-transaction: Combine some D-Bus PropertiesChanged signal
    emissions.
  - pk-transaction: Add UpdateDetails signal.
  + Backends:
  - zypp:
    . implement upgrade-system method.
    . Clean up trailing whitespaces.
    . Avoid statuReset() on locked packages.
    . restore pool status after simulating an update.
    . Disable upgrade-system support in SLE.
    . build the pool before calling is_tumbleweed().
    . update libzypp dependency version.
    . Don't refresh repos before searching.
    . Check if packages are locked before removing.
    . add repository data in package id.
    . Remove trailing whitespace.
    + Changes to alpm, aptcc, apt, and nix backends.
- Rebase patches:
  + PackageKit-dnf-Add-support-for-AppStream-repodata-basenames-use.patch
  + PackageKit-dynamic-export.patch
  + PackageKit-zypp-disable-upgrade-system-in-sle.patch
- Drop upstream fixed patches:
  + PackageKit-zypp-add-repo-in-packageid.patch
  + PackageKit-zypp-add-upgrade-system.patch
  + PackageKit-zypp-avoid-statuReset.patch
  + PackageKit-zypp-dont-refresh-before-searching.patch
  + PackageKit-zypp-dont-remove-locked-packages.patch
  + PackageKit-zypp-fix-ambiguous-filesystem-reference.patch
  + PackageKit-zypp-fix-is-tumbleweed-check.patch
  + PackageKit-zypp-restore-pool-status-after-simulating-update.patch
  + PackageKit-zypp-update-libzypp-dependency-version.patch</changelog>
  <changelog author="Alynx Zhou &lt;alynx.zhou@suse.com&gt;" date="1704196800">- Add PackageKit-find-python-3-6.patch: Specify the Python version
  we need to build this package.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1709640000">- Drop baselibs.conf: the -32bit packages are no longer needed and
  have not been part of Tumbleweed for a while already (build for
  i586 only enabled in LegacyX86).</changelog>
  <changelog author="Alynx Zhou &lt;alynx.zhou@suse.com&gt;" date="1723550400">- Add PackageKit-mark-as-compulsory.patch: Prevent PackageKit from
  user uninstallable for most desktops (bsc#1226269).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1726142400">- Add PackageKit-zypp-dont-install-updateCandidateObj.patch:
  zypp: Mark the correct packages to-be-installed (bsc#1227389,
  gh#PackageKit/PackageKit/commit/209aa6295).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1728993600">- Drop rcFOO symlinks (PED-266)
- Drop usage of update-alternatives, but simplify installation of
  /usr/libexec/gst-install-plugins-helper as a direct symlink to
  pk-gstreamer-install.</changelog>
</package>
<package pkgid="97fe07ae7b8cc5b79a27f775046e6ab5c3a9a8f47632c7151097dbc36fcd5e69a0e92a1b212d70f42b6fcc183726640583952b8bd6943194d6bcea3a0dc83bad" name="PackageKit-gtk3-module" arch="x86_64">
  <version epoch="0" ver="1.2.8" rel="4.1"/>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1629460800">- Add PackageKit-zypp-fix-crash-with-empty-search-string.patch:
  zypp: Fix crash when search string is NULL (bsc#1179287,
  gh#hughsie/PackageKit/commit#21ccf49).</changelog>
  <changelog author="Stanislav Brabec &lt;sbrabec@suse.com&gt;" date="1631793600">- Remove obsolete translation-update-upstream support
  (jsc#SLE-21105).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1636113600">- Update to version 1.2.4:
  + Libraries:
  - Add specific error code when user declined interaction
  - Avoid spurious GObject::notify signal emissions
  - Correct 'cancellable' use in pk_client_repair_system_async()
  - Fix a leak on calling set_locale() a second time
  - Fix a possible use-after-free under pk_client_cancel_cb()
  - Improve thread safety on an operation cancellation
  + Backends:
  - dnf:
    . Read update information also when getting list of updates
    . Honor install_weak_deps=False if it is there
    . Use 'hy_query_get_advisory_pkgs', if available
  + New Features:
  - PkDetails: Add 'download-size' property
  - PkPackage: Add update severity property
  + Bugfixes:
  - Let the finish understand the 'cancelled' exit code
  - Make backends that use pk-backend-spawn work (#477)
  - Only set polkit interactive flag if method call has too
- Changes from version 1.2.3:
  + Backends:
  - alpm:
    . Add post transaction hook
    . Rename errno to alpm_err to avoid name clashes
  - aptcc: Auto-remove old kernels, unless configured otherwise
  - dnf: Add support for coercing upgrade to distupgrade
  - zypp:
    . Make sure pool is initialized at the beginning of some
    methods
    . Reset update mode after getting updates
  + Bugfixes:
  - Append to cron log instead of overwriting it
  - Cancel a transaction if calling Cancel fails or the daemon
    disappears
  - Do not crash when calling pk_dbus_get_uid() before D-Bus is
    setup
  - Fix all compiler warnings
  - Fix multilib conflicts in generated pk-enum-types.h
  - Free scheduler array correctly again
  - Remove large transaction size sanity check
- Drop patches fixed upstream:
  + PackageKit-zypp-cleanup-tmp-files.patch
  + PackageKit-zypp-reset-update-mode-after-get-updates.patch
  + PackageKit-dnf-Add-support-for-coercing-upgrade-to-distupgrade.patch
  + PackageKit-zypp-initialize-pool.patch
  + PackageKit-remove-transaction-size-limit.patch
  + PackageKit-cancel-transaction-if-daemon-disappears.patch
  + PackageKit-dnf-ignore-weak-deps.patch
- Add 505.patch: pk-offline: Add flags to D-Bus invoking methods.
  That's currently to be able to set whether the method should be
  interactive or not. The old functions call the methods as
  non-interactive.</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1636113601">- Add PackageKit-zypp-c++17.patch: Fix build failure when building
  with libzypp &gt; 17.28.5 and gcc &lt; 11
  (gh#hughsie/PackageKit/commit/1a6bb6ae6, bsc#1192349).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1637064000">- Rewrite prep phase to not use autopatch -M: SLE15/Leap15's RPM
  version does not support that syntax yet.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1637064001">- Apply all patches unconditonally: PackageKit-zypp-c++17.patch is
  merged in upstream git and thus does not justify to be
  conditionally applied.
- Switching back to autosetup, as this works without conditional
  patches.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1653048000">- Update to version 1.2.5:
  + Backends:
  - dnf:
    . Add support for autoremove flag when removing packages.
    . Searches by name and package details should be case
    insensitive.
    . Update appstream xml files if dnf_sack_add_repos() does
    the download.
  - zypp:
    . Add -std=c++1z cpp flags.
    . Fix crash when search string is NULL.
    . Fix package installation using undefined data.
  - Changes to alpm, apttcc, nix, and slack.
  + Bugfixes:
  - Install offline-update enablement symlink if Meson is new
    enough.
  - Move Wants= line for network-online.target.
  - Add flags to D-Bus offline invoking methods.
  - Properly handle allow-reinstall flag for installations.
  - Provide better error message if trying to install an
    installed package.
  - Wait until online to activate systemd service.
- Drop 505.patch, PackageKit-zypp-c++17.patch, and
  PackageKit-zypp-fix-crash-with-empty-search-string.patch: fixed
  upstream.</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1653566400">- Add PackageKit-zypp-locked-packages.patch: zypp: ignore locked
  packages(gh#hughsie/PackageKit#543, boo#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1656676800">- Add PackageKit-zypp-add-upgrade-system.patch: implement
  upgrade-system method(gh#hughsie/PackageKit/commit/930dd201b).</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1657368000">- Move the dbus-1 system.d file to /usr (bsc#1201347)</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1659528000">- Modified PackageKit.spec: bump libzypp dependency version to
  17.31.0.
- Add PackageKit-zypp-avoid-statuReset.patch: zypp: Avoid
  statuReset() on locked packages
  (gh#PackageKit/PackageKit/commit/dd1964255, bsc#1199895).
- Add PackageKit-zypp-disable-upgrade-system-in-sle.patch: zypp:
  Disable upgrade-system support in SLE
  (gh#PackageKit/PackageKit/commit/0fcd820c2).
- Add PackageKit-zypp-restore-pool-status-after-simulating-update.patch:
  zypp: restore pool status after simulating an update
  (gh#PackageKit/PackageKit/commit/2b61a6649, bsc#1199895).
- Add PackageKit-zypp-fix-is-tumbleweed-check.patch: zypp: build
  the pool before calling is_tumbleweed()
  (gh#PackageKit/PackageKit/commit/146890153).
- Add PackageKit-zypp-update-libzypp-dependency-version.patch:
  zypp: update libzypp dependency version
  (gh#PackageKit/PackageKit/commit/58c7c0285, bsc#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1662120000">- Add PackageKit-zypp-dont-refresh-before-searching.patch:
  zypp: Don't refresh repos before searching
  (gh#PackageKit/PackageKit/commit/58c7c0285, bsc#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1664193600">- Add PackageKit-zypp-dont-remove-locked-packages.patch: zypp:
  Check if packages are locked before removing
  (gh#PackageKit/PackageKit/commit/8649a07bc, bsc#1199895).
- Add PackageKit-zypp-add-repo-in-packageid.patch: zypp: add
  repository data in package id
  (gh#PackageKit/PackageKit/commit/8eb2ef0ae, bsc#1202585).
- Remove PackageKit-zypp-locked-packages.patch: reverted upstream
  (gh#PackageKit/PackageKit/commit/ed3e38043).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1673006400">- Add PackageKit-zypp-fix-ambiguous-filesystem-reference.patch:
  zypp: Fix ambiguous reference to 'filesystem' class
  (gh#PackageKit/PackageKit/commit/bb1409a71, bsc#1206687).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678708800">- Add PackageKit-fix-pkcon-permission.patch: trivial: Drop
  unnecessary x permission
  (gh#PackageKit/PackageKit/commit/47b7f97bc, bsc#1209138)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1689595200">- Add PackageKit-dynamic-export.patch: fix loading of modules when
  built using glib 2.70 (boo#1213309).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1699531200">- Update to version 1.2.8:
  + Libraries:
  - offline-updates:
    . Make package update list deduplication more efficient.
    . Add only one entry per package to 'offline-update-competed'
    file.
  - PkClient: Replace the GSimpleAsyncResult with the GTask API.
  - pk-client:
    . Fix use-before-set of PkProgress on cancellation.
    . Move cancellable disconnect to dispose.
    . Rework refcounting for PkClientState.
  + Backends: Changes to apt, dnf, PiSi and BSD backends.
- Changes from version 1.2.7:
  + New Features:
  - pkclient: Add an option to count download size with
    dependencies.
  - pk-transaction: Add support for getting the RemainingTime
    property.
  + Backends:
  - zypp: Fix ambiguous reference to 'filesystem' class.
  - Changes to dnf, apt, alpm backends.
- Changes from version 1.2.6:
  + New Features:
  - Expose transaction sender as read-only property on the bus.
  - pkmon: Display transaction sender binary name in log.
  - pk-transaction: Add Packages signal.
  - pk-transaction: Combine some D-Bus PropertiesChanged signal
    emissions.
  - pk-transaction: Add UpdateDetails signal.
  + Backends:
  - zypp:
    . implement upgrade-system method.
    . Clean up trailing whitespaces.
    . Avoid statuReset() on locked packages.
    . restore pool status after simulating an update.
    . Disable upgrade-system support in SLE.
    . build the pool before calling is_tumbleweed().
    . update libzypp dependency version.
    . Don't refresh repos before searching.
    . Check if packages are locked before removing.
    . add repository data in package id.
    . Remove trailing whitespace.
    + Changes to alpm, aptcc, apt, and nix backends.
- Rebase patches:
  + PackageKit-dnf-Add-support-for-AppStream-repodata-basenames-use.patch
  + PackageKit-dynamic-export.patch
  + PackageKit-zypp-disable-upgrade-system-in-sle.patch
- Drop upstream fixed patches:
  + PackageKit-zypp-add-repo-in-packageid.patch
  + PackageKit-zypp-add-upgrade-system.patch
  + PackageKit-zypp-avoid-statuReset.patch
  + PackageKit-zypp-dont-refresh-before-searching.patch
  + PackageKit-zypp-dont-remove-locked-packages.patch
  + PackageKit-zypp-fix-ambiguous-filesystem-reference.patch
  + PackageKit-zypp-fix-is-tumbleweed-check.patch
  + PackageKit-zypp-restore-pool-status-after-simulating-update.patch
  + PackageKit-zypp-update-libzypp-dependency-version.patch</changelog>
  <changelog author="Alynx Zhou &lt;alynx.zhou@suse.com&gt;" date="1704196800">- Add PackageKit-find-python-3-6.patch: Specify the Python version
  we need to build this package.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1709640000">- Drop baselibs.conf: the -32bit packages are no longer needed and
  have not been part of Tumbleweed for a while already (build for
  i586 only enabled in LegacyX86).</changelog>
  <changelog author="Alynx Zhou &lt;alynx.zhou@suse.com&gt;" date="1723550400">- Add PackageKit-mark-as-compulsory.patch: Prevent PackageKit from
  user uninstallable for most desktops (bsc#1226269).</changelog>
</package>
<package pkgid="6c499d0e2c886b5720c5575fb4581737716f37cf0db8494e6f8b522c6d170ce8cdd9f1685f816057194136856d11ae031752f335f500d8e5c840c863ae5aa954" name="PackageKit-gtk3-module" arch="x86_64">
  <version epoch="0" ver="1.2.8" rel="5.0.2.1.sr20240901"/>
  <changelog author="Stanislav Brabec &lt;sbrabec@suse.com&gt;" date="1631793600">- Remove obsolete translation-update-upstream support
  (jsc#SLE-21105).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1636113600">- Update to version 1.2.4:
  + Libraries:
  - Add specific error code when user declined interaction
  - Avoid spurious GObject::notify signal emissions
  - Correct 'cancellable' use in pk_client_repair_system_async()
  - Fix a leak on calling set_locale() a second time
  - Fix a possible use-after-free under pk_client_cancel_cb()
  - Improve thread safety on an operation cancellation
  + Backends:
  - dnf:
    . Read update information also when getting list of updates
    . Honor install_weak_deps=False if it is there
    . Use 'hy_query_get_advisory_pkgs', if available
  + New Features:
  - PkDetails: Add 'download-size' property
  - PkPackage: Add update severity property
  + Bugfixes:
  - Let the finish understand the 'cancelled' exit code
  - Make backends that use pk-backend-spawn work (#477)
  - Only set polkit interactive flag if method call has too
- Changes from version 1.2.3:
  + Backends:
  - alpm:
    . Add post transaction hook
    . Rename errno to alpm_err to avoid name clashes
  - aptcc: Auto-remove old kernels, unless configured otherwise
  - dnf: Add support for coercing upgrade to distupgrade
  - zypp:
    . Make sure pool is initialized at the beginning of some
    methods
    . Reset update mode after getting updates
  + Bugfixes:
  - Append to cron log instead of overwriting it
  - Cancel a transaction if calling Cancel fails or the daemon
    disappears
  - Do not crash when calling pk_dbus_get_uid() before D-Bus is
    setup
  - Fix all compiler warnings
  - Fix multilib conflicts in generated pk-enum-types.h
  - Free scheduler array correctly again
  - Remove large transaction size sanity check
- Drop patches fixed upstream:
  + PackageKit-zypp-cleanup-tmp-files.patch
  + PackageKit-zypp-reset-update-mode-after-get-updates.patch
  + PackageKit-dnf-Add-support-for-coercing-upgrade-to-distupgrade.patch
  + PackageKit-zypp-initialize-pool.patch
  + PackageKit-remove-transaction-size-limit.patch
  + PackageKit-cancel-transaction-if-daemon-disappears.patch
  + PackageKit-dnf-ignore-weak-deps.patch
- Add 505.patch: pk-offline: Add flags to D-Bus invoking methods.
  That's currently to be able to set whether the method should be
  interactive or not. The old functions call the methods as
  non-interactive.</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1636113601">- Add PackageKit-zypp-c++17.patch: Fix build failure when building
  with libzypp &gt; 17.28.5 and gcc &lt; 11
  (gh#hughsie/PackageKit/commit/1a6bb6ae6, bsc#1192349).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1637064000">- Rewrite prep phase to not use autopatch -M: SLE15/Leap15's RPM
  version does not support that syntax yet.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1637064001">- Apply all patches unconditonally: PackageKit-zypp-c++17.patch is
  merged in upstream git and thus does not justify to be
  conditionally applied.
- Switching back to autosetup, as this works without conditional
  patches.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1653048000">- Update to version 1.2.5:
  + Backends:
  - dnf:
    . Add support for autoremove flag when removing packages.
    . Searches by name and package details should be case
    insensitive.
    . Update appstream xml files if dnf_sack_add_repos() does
    the download.
  - zypp:
    . Add -std=c++1z cpp flags.
    . Fix crash when search string is NULL.
    . Fix package installation using undefined data.
  - Changes to alpm, apttcc, nix, and slack.
  + Bugfixes:
  - Install offline-update enablement symlink if Meson is new
    enough.
  - Move Wants= line for network-online.target.
  - Add flags to D-Bus offline invoking methods.
  - Properly handle allow-reinstall flag for installations.
  - Provide better error message if trying to install an
    installed package.
  - Wait until online to activate systemd service.
- Drop 505.patch, PackageKit-zypp-c++17.patch, and
  PackageKit-zypp-fix-crash-with-empty-search-string.patch: fixed
  upstream.</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1653566400">- Add PackageKit-zypp-locked-packages.patch: zypp: ignore locked
  packages(gh#hughsie/PackageKit#543, boo#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1656676800">- Add PackageKit-zypp-add-upgrade-system.patch: implement
  upgrade-system method(gh#hughsie/PackageKit/commit/930dd201b).</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1657368000">- Move the dbus-1 system.d file to /usr (bsc#1201347)</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1659528000">- Modified PackageKit.spec: bump libzypp dependency version to
  17.31.0.
- Add PackageKit-zypp-avoid-statuReset.patch: zypp: Avoid
  statuReset() on locked packages
  (gh#PackageKit/PackageKit/commit/dd1964255, bsc#1199895).
- Add PackageKit-zypp-disable-upgrade-system-in-sle.patch: zypp:
  Disable upgrade-system support in SLE
  (gh#PackageKit/PackageKit/commit/0fcd820c2).
- Add PackageKit-zypp-restore-pool-status-after-simulating-update.patch:
  zypp: restore pool status after simulating an update
  (gh#PackageKit/PackageKit/commit/2b61a6649, bsc#1199895).
- Add PackageKit-zypp-fix-is-tumbleweed-check.patch: zypp: build
  the pool before calling is_tumbleweed()
  (gh#PackageKit/PackageKit/commit/146890153).
- Add PackageKit-zypp-update-libzypp-dependency-version.patch:
  zypp: update libzypp dependency version
  (gh#PackageKit/PackageKit/commit/58c7c0285, bsc#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1662120000">- Add PackageKit-zypp-dont-refresh-before-searching.patch:
  zypp: Don't refresh repos before searching
  (gh#PackageKit/PackageKit/commit/58c7c0285, bsc#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1664193600">- Add PackageKit-zypp-dont-remove-locked-packages.patch: zypp:
  Check if packages are locked before removing
  (gh#PackageKit/PackageKit/commit/8649a07bc, bsc#1199895).
- Add PackageKit-zypp-add-repo-in-packageid.patch: zypp: add
  repository data in package id
  (gh#PackageKit/PackageKit/commit/8eb2ef0ae, bsc#1202585).
- Remove PackageKit-zypp-locked-packages.patch: reverted upstream
  (gh#PackageKit/PackageKit/commit/ed3e38043).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1673006400">- Add PackageKit-zypp-fix-ambiguous-filesystem-reference.patch:
  zypp: Fix ambiguous reference to 'filesystem' class
  (gh#PackageKit/PackageKit/commit/bb1409a71, bsc#1206687).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678708800">- Add PackageKit-fix-pkcon-permission.patch: trivial: Drop
  unnecessary x permission
  (gh#PackageKit/PackageKit/commit/47b7f97bc, bsc#1209138)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1689595200">- Add PackageKit-dynamic-export.patch: fix loading of modules when
  built using glib 2.70 (boo#1213309).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1699531200">- Update to version 1.2.8:
  + Libraries:
  - offline-updates:
    . Make package update list deduplication more efficient.
    . Add only one entry per package to 'offline-update-competed'
    file.
  - PkClient: Replace the GSimpleAsyncResult with the GTask API.
  - pk-client:
    . Fix use-before-set of PkProgress on cancellation.
    . Move cancellable disconnect to dispose.
    . Rework refcounting for PkClientState.
  + Backends: Changes to apt, dnf, PiSi and BSD backends.
- Changes from version 1.2.7:
  + New Features:
  - pkclient: Add an option to count download size with
    dependencies.
  - pk-transaction: Add support for getting the RemainingTime
    property.
  + Backends:
  - zypp: Fix ambiguous reference to 'filesystem' class.
  - Changes to dnf, apt, alpm backends.
- Changes from version 1.2.6:
  + New Features:
  - Expose transaction sender as read-only property on the bus.
  - pkmon: Display transaction sender binary name in log.
  - pk-transaction: Add Packages signal.
  - pk-transaction: Combine some D-Bus PropertiesChanged signal
    emissions.
  - pk-transaction: Add UpdateDetails signal.
  + Backends:
  - zypp:
    . implement upgrade-system method.
    . Clean up trailing whitespaces.
    . Avoid statuReset() on locked packages.
    . restore pool status after simulating an update.
    . Disable upgrade-system support in SLE.
    . build the pool before calling is_tumbleweed().
    . update libzypp dependency version.
    . Don't refresh repos before searching.
    . Check if packages are locked before removing.
    . add repository data in package id.
    . Remove trailing whitespace.
    + Changes to alpm, aptcc, apt, and nix backends.
- Rebase patches:
  + PackageKit-dnf-Add-support-for-AppStream-repodata-basenames-use.patch
  + PackageKit-dynamic-export.patch
  + PackageKit-zypp-disable-upgrade-system-in-sle.patch
- Drop upstream fixed patches:
  + PackageKit-zypp-add-repo-in-packageid.patch
  + PackageKit-zypp-add-upgrade-system.patch
  + PackageKit-zypp-avoid-statuReset.patch
  + PackageKit-zypp-dont-refresh-before-searching.patch
  + PackageKit-zypp-dont-remove-locked-packages.patch
  + PackageKit-zypp-fix-ambiguous-filesystem-reference.patch
  + PackageKit-zypp-fix-is-tumbleweed-check.patch
  + PackageKit-zypp-restore-pool-status-after-simulating-update.patch
  + PackageKit-zypp-update-libzypp-dependency-version.patch</changelog>
  <changelog author="Alynx Zhou &lt;alynx.zhou@suse.com&gt;" date="1704196800">- Add PackageKit-find-python-3-6.patch: Specify the Python version
  we need to build this package.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1709640000">- Drop baselibs.conf: the -32bit packages are no longer needed and
  have not been part of Tumbleweed for a while already (build for
  i586 only enabled in LegacyX86).</changelog>
  <changelog author="Alynx Zhou &lt;alynx.zhou@suse.com&gt;" date="1723550400">- Add PackageKit-mark-as-compulsory.patch: Prevent PackageKit from
  user uninstallable for most desktops (bsc#1226269).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1726142400">- Add PackageKit-zypp-dont-install-updateCandidateObj.patch:
  zypp: Mark the correct packages to-be-installed (bsc#1227389,
  gh#PackageKit/PackageKit/commit/209aa6295).</changelog>
</package>
<package pkgid="bd3ba0f7c187bf01f3f2f505dee1d448814e99c24842485f5323ac1814438437aaf0571030198e218e0412c3e80cf2375734b9a6db305ef8c1d3483855b50a7c" name="PackageKit-gtk3-module" arch="x86_64">
  <version epoch="0" ver="1.2.8" rel="5.1"/>
  <changelog author="Stanislav Brabec &lt;sbrabec@suse.com&gt;" date="1631793600">- Remove obsolete translation-update-upstream support
  (jsc#SLE-21105).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1636113600">- Update to version 1.2.4:
  + Libraries:
  - Add specific error code when user declined interaction
  - Avoid spurious GObject::notify signal emissions
  - Correct 'cancellable' use in pk_client_repair_system_async()
  - Fix a leak on calling set_locale() a second time
  - Fix a possible use-after-free under pk_client_cancel_cb()
  - Improve thread safety on an operation cancellation
  + Backends:
  - dnf:
    . Read update information also when getting list of updates
    . Honor install_weak_deps=False if it is there
    . Use 'hy_query_get_advisory_pkgs', if available
  + New Features:
  - PkDetails: Add 'download-size' property
  - PkPackage: Add update severity property
  + Bugfixes:
  - Let the finish understand the 'cancelled' exit code
  - Make backends that use pk-backend-spawn work (#477)
  - Only set polkit interactive flag if method call has too
- Changes from version 1.2.3:
  + Backends:
  - alpm:
    . Add post transaction hook
    . Rename errno to alpm_err to avoid name clashes
  - aptcc: Auto-remove old kernels, unless configured otherwise
  - dnf: Add support for coercing upgrade to distupgrade
  - zypp:
    . Make sure pool is initialized at the beginning of some
    methods
    . Reset update mode after getting updates
  + Bugfixes:
  - Append to cron log instead of overwriting it
  - Cancel a transaction if calling Cancel fails or the daemon
    disappears
  - Do not crash when calling pk_dbus_get_uid() before D-Bus is
    setup
  - Fix all compiler warnings
  - Fix multilib conflicts in generated pk-enum-types.h
  - Free scheduler array correctly again
  - Remove large transaction size sanity check
- Drop patches fixed upstream:
  + PackageKit-zypp-cleanup-tmp-files.patch
  + PackageKit-zypp-reset-update-mode-after-get-updates.patch
  + PackageKit-dnf-Add-support-for-coercing-upgrade-to-distupgrade.patch
  + PackageKit-zypp-initialize-pool.patch
  + PackageKit-remove-transaction-size-limit.patch
  + PackageKit-cancel-transaction-if-daemon-disappears.patch
  + PackageKit-dnf-ignore-weak-deps.patch
- Add 505.patch: pk-offline: Add flags to D-Bus invoking methods.
  That's currently to be able to set whether the method should be
  interactive or not. The old functions call the methods as
  non-interactive.</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1636113601">- Add PackageKit-zypp-c++17.patch: Fix build failure when building
  with libzypp &gt; 17.28.5 and gcc &lt; 11
  (gh#hughsie/PackageKit/commit/1a6bb6ae6, bsc#1192349).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1637064000">- Rewrite prep phase to not use autopatch -M: SLE15/Leap15's RPM
  version does not support that syntax yet.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1637064001">- Apply all patches unconditonally: PackageKit-zypp-c++17.patch is
  merged in upstream git and thus does not justify to be
  conditionally applied.
- Switching back to autosetup, as this works without conditional
  patches.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1653048000">- Update to version 1.2.5:
  + Backends:
  - dnf:
    . Add support for autoremove flag when removing packages.
    . Searches by name and package details should be case
    insensitive.
    . Update appstream xml files if dnf_sack_add_repos() does
    the download.
  - zypp:
    . Add -std=c++1z cpp flags.
    . Fix crash when search string is NULL.
    . Fix package installation using undefined data.
  - Changes to alpm, apttcc, nix, and slack.
  + Bugfixes:
  - Install offline-update enablement symlink if Meson is new
    enough.
  - Move Wants= line for network-online.target.
  - Add flags to D-Bus offline invoking methods.
  - Properly handle allow-reinstall flag for installations.
  - Provide better error message if trying to install an
    installed package.
  - Wait until online to activate systemd service.
- Drop 505.patch, PackageKit-zypp-c++17.patch, and
  PackageKit-zypp-fix-crash-with-empty-search-string.patch: fixed
  upstream.</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1653566400">- Add PackageKit-zypp-locked-packages.patch: zypp: ignore locked
  packages(gh#hughsie/PackageKit#543, boo#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1656676800">- Add PackageKit-zypp-add-upgrade-system.patch: implement
  upgrade-system method(gh#hughsie/PackageKit/commit/930dd201b).</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1657368000">- Move the dbus-1 system.d file to /usr (bsc#1201347)</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1659528000">- Modified PackageKit.spec: bump libzypp dependency version to
  17.31.0.
- Add PackageKit-zypp-avoid-statuReset.patch: zypp: Avoid
  statuReset() on locked packages
  (gh#PackageKit/PackageKit/commit/dd1964255, bsc#1199895).
- Add PackageKit-zypp-disable-upgrade-system-in-sle.patch: zypp:
  Disable upgrade-system support in SLE
  (gh#PackageKit/PackageKit/commit/0fcd820c2).
- Add PackageKit-zypp-restore-pool-status-after-simulating-update.patch:
  zypp: restore pool status after simulating an update
  (gh#PackageKit/PackageKit/commit/2b61a6649, bsc#1199895).
- Add PackageKit-zypp-fix-is-tumbleweed-check.patch: zypp: build
  the pool before calling is_tumbleweed()
  (gh#PackageKit/PackageKit/commit/146890153).
- Add PackageKit-zypp-update-libzypp-dependency-version.patch:
  zypp: update libzypp dependency version
  (gh#PackageKit/PackageKit/commit/58c7c0285, bsc#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1662120000">- Add PackageKit-zypp-dont-refresh-before-searching.patch:
  zypp: Don't refresh repos before searching
  (gh#PackageKit/PackageKit/commit/58c7c0285, bsc#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1664193600">- Add PackageKit-zypp-dont-remove-locked-packages.patch: zypp:
  Check if packages are locked before removing
  (gh#PackageKit/PackageKit/commit/8649a07bc, bsc#1199895).
- Add PackageKit-zypp-add-repo-in-packageid.patch: zypp: add
  repository data in package id
  (gh#PackageKit/PackageKit/commit/8eb2ef0ae, bsc#1202585).
- Remove PackageKit-zypp-locked-packages.patch: reverted upstream
  (gh#PackageKit/PackageKit/commit/ed3e38043).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1673006400">- Add PackageKit-zypp-fix-ambiguous-filesystem-reference.patch:
  zypp: Fix ambiguous reference to 'filesystem' class
  (gh#PackageKit/PackageKit/commit/bb1409a71, bsc#1206687).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678708800">- Add PackageKit-fix-pkcon-permission.patch: trivial: Drop
  unnecessary x permission
  (gh#PackageKit/PackageKit/commit/47b7f97bc, bsc#1209138)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1689595200">- Add PackageKit-dynamic-export.patch: fix loading of modules when
  built using glib 2.70 (boo#1213309).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1699531200">- Update to version 1.2.8:
  + Libraries:
  - offline-updates:
    . Make package update list deduplication more efficient.
    . Add only one entry per package to 'offline-update-competed'
    file.
  - PkClient: Replace the GSimpleAsyncResult with the GTask API.
  - pk-client:
    . Fix use-before-set of PkProgress on cancellation.
    . Move cancellable disconnect to dispose.
    . Rework refcounting for PkClientState.
  + Backends: Changes to apt, dnf, PiSi and BSD backends.
- Changes from version 1.2.7:
  + New Features:
  - pkclient: Add an option to count download size with
    dependencies.
  - pk-transaction: Add support for getting the RemainingTime
    property.
  + Backends:
  - zypp: Fix ambiguous reference to 'filesystem' class.
  - Changes to dnf, apt, alpm backends.
- Changes from version 1.2.6:
  + New Features:
  - Expose transaction sender as read-only property on the bus.
  - pkmon: Display transaction sender binary name in log.
  - pk-transaction: Add Packages signal.
  - pk-transaction: Combine some D-Bus PropertiesChanged signal
    emissions.
  - pk-transaction: Add UpdateDetails signal.
  + Backends:
  - zypp:
    . implement upgrade-system method.
    . Clean up trailing whitespaces.
    . Avoid statuReset() on locked packages.
    . restore pool status after simulating an update.
    . Disable upgrade-system support in SLE.
    . build the pool before calling is_tumbleweed().
    . update libzypp dependency version.
    . Don't refresh repos before searching.
    . Check if packages are locked before removing.
    . add repository data in package id.
    . Remove trailing whitespace.
    + Changes to alpm, aptcc, apt, and nix backends.
- Rebase patches:
  + PackageKit-dnf-Add-support-for-AppStream-repodata-basenames-use.patch
  + PackageKit-dynamic-export.patch
  + PackageKit-zypp-disable-upgrade-system-in-sle.patch
- Drop upstream fixed patches:
  + PackageKit-zypp-add-repo-in-packageid.patch
  + PackageKit-zypp-add-upgrade-system.patch
  + PackageKit-zypp-avoid-statuReset.patch
  + PackageKit-zypp-dont-refresh-before-searching.patch
  + PackageKit-zypp-dont-remove-locked-packages.patch
  + PackageKit-zypp-fix-ambiguous-filesystem-reference.patch
  + PackageKit-zypp-fix-is-tumbleweed-check.patch
  + PackageKit-zypp-restore-pool-status-after-simulating-update.patch
  + PackageKit-zypp-update-libzypp-dependency-version.patch</changelog>
  <changelog author="Alynx Zhou &lt;alynx.zhou@suse.com&gt;" date="1704196800">- Add PackageKit-find-python-3-6.patch: Specify the Python version
  we need to build this package.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1709640000">- Drop baselibs.conf: the -32bit packages are no longer needed and
  have not been part of Tumbleweed for a while already (build for
  i586 only enabled in LegacyX86).</changelog>
  <changelog author="Alynx Zhou &lt;alynx.zhou@suse.com&gt;" date="1723550400">- Add PackageKit-mark-as-compulsory.patch: Prevent PackageKit from
  user uninstallable for most desktops (bsc#1226269).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1726142400">- Add PackageKit-zypp-dont-install-updateCandidateObj.patch:
  zypp: Mark the correct packages to-be-installed (bsc#1227389,
  gh#PackageKit/PackageKit/commit/209aa6295).</changelog>
</package>
<package pkgid="eafd3bff552e6017db7b272d2e7d688a8bc60e09d77c67c09917368f3ebb16cef7b1359a8dd8ed53503e118f089291f80532cfc13ede9a634dbfd3365292f829" name="PackageKit-gtk3-module" arch="x86_64">
  <version epoch="0" ver="1.2.8" rel="6.1"/>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1636113600">- Update to version 1.2.4:
  + Libraries:
  - Add specific error code when user declined interaction
  - Avoid spurious GObject::notify signal emissions
  - Correct 'cancellable' use in pk_client_repair_system_async()
  - Fix a leak on calling set_locale() a second time
  - Fix a possible use-after-free under pk_client_cancel_cb()
  - Improve thread safety on an operation cancellation
  + Backends:
  - dnf:
    . Read update information also when getting list of updates
    . Honor install_weak_deps=False if it is there
    . Use 'hy_query_get_advisory_pkgs', if available
  + New Features:
  - PkDetails: Add 'download-size' property
  - PkPackage: Add update severity property
  + Bugfixes:
  - Let the finish understand the 'cancelled' exit code
  - Make backends that use pk-backend-spawn work (#477)
  - Only set polkit interactive flag if method call has too
- Changes from version 1.2.3:
  + Backends:
  - alpm:
    . Add post transaction hook
    . Rename errno to alpm_err to avoid name clashes
  - aptcc: Auto-remove old kernels, unless configured otherwise
  - dnf: Add support for coercing upgrade to distupgrade
  - zypp:
    . Make sure pool is initialized at the beginning of some
    methods
    . Reset update mode after getting updates
  + Bugfixes:
  - Append to cron log instead of overwriting it
  - Cancel a transaction if calling Cancel fails or the daemon
    disappears
  - Do not crash when calling pk_dbus_get_uid() before D-Bus is
    setup
  - Fix all compiler warnings
  - Fix multilib conflicts in generated pk-enum-types.h
  - Free scheduler array correctly again
  - Remove large transaction size sanity check
- Drop patches fixed upstream:
  + PackageKit-zypp-cleanup-tmp-files.patch
  + PackageKit-zypp-reset-update-mode-after-get-updates.patch
  + PackageKit-dnf-Add-support-for-coercing-upgrade-to-distupgrade.patch
  + PackageKit-zypp-initialize-pool.patch
  + PackageKit-remove-transaction-size-limit.patch
  + PackageKit-cancel-transaction-if-daemon-disappears.patch
  + PackageKit-dnf-ignore-weak-deps.patch
- Add 505.patch: pk-offline: Add flags to D-Bus invoking methods.
  That's currently to be able to set whether the method should be
  interactive or not. The old functions call the methods as
  non-interactive.</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1636113601">- Add PackageKit-zypp-c++17.patch: Fix build failure when building
  with libzypp &gt; 17.28.5 and gcc &lt; 11
  (gh#hughsie/PackageKit/commit/1a6bb6ae6, bsc#1192349).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1637064000">- Rewrite prep phase to not use autopatch -M: SLE15/Leap15's RPM
  version does not support that syntax yet.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1637064001">- Apply all patches unconditonally: PackageKit-zypp-c++17.patch is
  merged in upstream git and thus does not justify to be
  conditionally applied.
- Switching back to autosetup, as this works without conditional
  patches.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1653048000">- Update to version 1.2.5:
  + Backends:
  - dnf:
    . Add support for autoremove flag when removing packages.
    . Searches by name and package details should be case
    insensitive.
    . Update appstream xml files if dnf_sack_add_repos() does
    the download.
  - zypp:
    . Add -std=c++1z cpp flags.
    . Fix crash when search string is NULL.
    . Fix package installation using undefined data.
  - Changes to alpm, apttcc, nix, and slack.
  + Bugfixes:
  - Install offline-update enablement symlink if Meson is new
    enough.
  - Move Wants= line for network-online.target.
  - Add flags to D-Bus offline invoking methods.
  - Properly handle allow-reinstall flag for installations.
  - Provide better error message if trying to install an
    installed package.
  - Wait until online to activate systemd service.
- Drop 505.patch, PackageKit-zypp-c++17.patch, and
  PackageKit-zypp-fix-crash-with-empty-search-string.patch: fixed
  upstream.</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1653566400">- Add PackageKit-zypp-locked-packages.patch: zypp: ignore locked
  packages(gh#hughsie/PackageKit#543, boo#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1656676800">- Add PackageKit-zypp-add-upgrade-system.patch: implement
  upgrade-system method(gh#hughsie/PackageKit/commit/930dd201b).</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1657368000">- Move the dbus-1 system.d file to /usr (bsc#1201347)</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1659528000">- Modified PackageKit.spec: bump libzypp dependency version to
  17.31.0.
- Add PackageKit-zypp-avoid-statuReset.patch: zypp: Avoid
  statuReset() on locked packages
  (gh#PackageKit/PackageKit/commit/dd1964255, bsc#1199895).
- Add PackageKit-zypp-disable-upgrade-system-in-sle.patch: zypp:
  Disable upgrade-system support in SLE
  (gh#PackageKit/PackageKit/commit/0fcd820c2).
- Add PackageKit-zypp-restore-pool-status-after-simulating-update.patch:
  zypp: restore pool status after simulating an update
  (gh#PackageKit/PackageKit/commit/2b61a6649, bsc#1199895).
- Add PackageKit-zypp-fix-is-tumbleweed-check.patch: zypp: build
  the pool before calling is_tumbleweed()
  (gh#PackageKit/PackageKit/commit/146890153).
- Add PackageKit-zypp-update-libzypp-dependency-version.patch:
  zypp: update libzypp dependency version
  (gh#PackageKit/PackageKit/commit/58c7c0285, bsc#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1662120000">- Add PackageKit-zypp-dont-refresh-before-searching.patch:
  zypp: Don't refresh repos before searching
  (gh#PackageKit/PackageKit/commit/58c7c0285, bsc#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1664193600">- Add PackageKit-zypp-dont-remove-locked-packages.patch: zypp:
  Check if packages are locked before removing
  (gh#PackageKit/PackageKit/commit/8649a07bc, bsc#1199895).
- Add PackageKit-zypp-add-repo-in-packageid.patch: zypp: add
  repository data in package id
  (gh#PackageKit/PackageKit/commit/8eb2ef0ae, bsc#1202585).
- Remove PackageKit-zypp-locked-packages.patch: reverted upstream
  (gh#PackageKit/PackageKit/commit/ed3e38043).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1673006400">- Add PackageKit-zypp-fix-ambiguous-filesystem-reference.patch:
  zypp: Fix ambiguous reference to 'filesystem' class
  (gh#PackageKit/PackageKit/commit/bb1409a71, bsc#1206687).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678708800">- Add PackageKit-fix-pkcon-permission.patch: trivial: Drop
  unnecessary x permission
  (gh#PackageKit/PackageKit/commit/47b7f97bc, bsc#1209138)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1689595200">- Add PackageKit-dynamic-export.patch: fix loading of modules when
  built using glib 2.70 (boo#1213309).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1699531200">- Update to version 1.2.8:
  + Libraries:
  - offline-updates:
    . Make package update list deduplication more efficient.
    . Add only one entry per package to 'offline-update-competed'
    file.
  - PkClient: Replace the GSimpleAsyncResult with the GTask API.
  - pk-client:
    . Fix use-before-set of PkProgress on cancellation.
    . Move cancellable disconnect to dispose.
    . Rework refcounting for PkClientState.
  + Backends: Changes to apt, dnf, PiSi and BSD backends.
- Changes from version 1.2.7:
  + New Features:
  - pkclient: Add an option to count download size with
    dependencies.
  - pk-transaction: Add support for getting the RemainingTime
    property.
  + Backends:
  - zypp: Fix ambiguous reference to 'filesystem' class.
  - Changes to dnf, apt, alpm backends.
- Changes from version 1.2.6:
  + New Features:
  - Expose transaction sender as read-only property on the bus.
  - pkmon: Display transaction sender binary name in log.
  - pk-transaction: Add Packages signal.
  - pk-transaction: Combine some D-Bus PropertiesChanged signal
    emissions.
  - pk-transaction: Add UpdateDetails signal.
  + Backends:
  - zypp:
    . implement upgrade-system method.
    . Clean up trailing whitespaces.
    . Avoid statuReset() on locked packages.
    . restore pool status after simulating an update.
    . Disable upgrade-system support in SLE.
    . build the pool before calling is_tumbleweed().
    . update libzypp dependency version.
    . Don't refresh repos before searching.
    . Check if packages are locked before removing.
    . add repository data in package id.
    . Remove trailing whitespace.
    + Changes to alpm, aptcc, apt, and nix backends.
- Rebase patches:
  + PackageKit-dnf-Add-support-for-AppStream-repodata-basenames-use.patch
  + PackageKit-dynamic-export.patch
  + PackageKit-zypp-disable-upgrade-system-in-sle.patch
- Drop upstream fixed patches:
  + PackageKit-zypp-add-repo-in-packageid.patch
  + PackageKit-zypp-add-upgrade-system.patch
  + PackageKit-zypp-avoid-statuReset.patch
  + PackageKit-zypp-dont-refresh-before-searching.patch
  + PackageKit-zypp-dont-remove-locked-packages.patch
  + PackageKit-zypp-fix-ambiguous-filesystem-reference.patch
  + PackageKit-zypp-fix-is-tumbleweed-check.patch
  + PackageKit-zypp-restore-pool-status-after-simulating-update.patch
  + PackageKit-zypp-update-libzypp-dependency-version.patch</changelog>
  <changelog author="Alynx Zhou &lt;alynx.zhou@suse.com&gt;" date="1704196800">- Add PackageKit-find-python-3-6.patch: Specify the Python version
  we need to build this package.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1709640000">- Drop baselibs.conf: the -32bit packages are no longer needed and
  have not been part of Tumbleweed for a while already (build for
  i586 only enabled in LegacyX86).</changelog>
  <changelog author="Alynx Zhou &lt;alynx.zhou@suse.com&gt;" date="1723550400">- Add PackageKit-mark-as-compulsory.patch: Prevent PackageKit from
  user uninstallable for most desktops (bsc#1226269).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1726142400">- Add PackageKit-zypp-dont-install-updateCandidateObj.patch:
  zypp: Mark the correct packages to-be-installed (bsc#1227389,
  gh#PackageKit/PackageKit/commit/209aa6295).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1728993600">- Drop rcFOO symlinks (PED-266)
- Drop usage of update-alternatives, but simplify installation of
  /usr/libexec/gst-install-plugins-helper as a direct symlink to
  pk-gstreamer-install.</changelog>
</package>
<package pkgid="c83918c88f8ba16caedc3d79f03de226959874747ec8c493a286bfb24642a333897670d2e242a49cf939613f118ee8ec50fb127e69f05cdb1cdb013218180820" name="PackageKit-gtk3-module-debuginfo" arch="x86_64">
  <version epoch="0" ver="1.2.8" rel="4.1"/>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1629460800">- Add PackageKit-zypp-fix-crash-with-empty-search-string.patch:
  zypp: Fix crash when search string is NULL (bsc#1179287,
  gh#hughsie/PackageKit/commit#21ccf49).</changelog>
  <changelog author="Stanislav Brabec &lt;sbrabec@suse.com&gt;" date="1631793600">- Remove obsolete translation-update-upstream support
  (jsc#SLE-21105).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1636113600">- Update to version 1.2.4:
  + Libraries:
  - Add specific error code when user declined interaction
  - Avoid spurious GObject::notify signal emissions
  - Correct 'cancellable' use in pk_client_repair_system_async()
  - Fix a leak on calling set_locale() a second time
  - Fix a possible use-after-free under pk_client_cancel_cb()
  - Improve thread safety on an operation cancellation
  + Backends:
  - dnf:
    . Read update information also when getting list of updates
    . Honor install_weak_deps=False if it is there
    . Use 'hy_query_get_advisory_pkgs', if available
  + New Features:
  - PkDetails: Add 'download-size' property
  - PkPackage: Add update severity property
  + Bugfixes:
  - Let the finish understand the 'cancelled' exit code
  - Make backends that use pk-backend-spawn work (#477)
  - Only set polkit interactive flag if method call has too
- Changes from version 1.2.3:
  + Backends:
  - alpm:
    . Add post transaction hook
    . Rename errno to alpm_err to avoid name clashes
  - aptcc: Auto-remove old kernels, unless configured otherwise
  - dnf: Add support for coercing upgrade to distupgrade
  - zypp:
    . Make sure pool is initialized at the beginning of some
    methods
    . Reset update mode after getting updates
  + Bugfixes:
  - Append to cron log instead of overwriting it
  - Cancel a transaction if calling Cancel fails or the daemon
    disappears
  - Do not crash when calling pk_dbus_get_uid() before D-Bus is
    setup
  - Fix all compiler warnings
  - Fix multilib conflicts in generated pk-enum-types.h
  - Free scheduler array correctly again
  - Remove large transaction size sanity check
- Drop patches fixed upstream:
  + PackageKit-zypp-cleanup-tmp-files.patch
  + PackageKit-zypp-reset-update-mode-after-get-updates.patch
  + PackageKit-dnf-Add-support-for-coercing-upgrade-to-distupgrade.patch
  + PackageKit-zypp-initialize-pool.patch
  + PackageKit-remove-transaction-size-limit.patch
  + PackageKit-cancel-transaction-if-daemon-disappears.patch
  + PackageKit-dnf-ignore-weak-deps.patch
- Add 505.patch: pk-offline: Add flags to D-Bus invoking methods.
  That's currently to be able to set whether the method should be
  interactive or not. The old functions call the methods as
  non-interactive.</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1636113601">- Add PackageKit-zypp-c++17.patch: Fix build failure when building
  with libzypp &gt; 17.28.5 and gcc &lt; 11
  (gh#hughsie/PackageKit/commit/1a6bb6ae6, bsc#1192349).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1637064000">- Rewrite prep phase to not use autopatch -M: SLE15/Leap15's RPM
  version does not support that syntax yet.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1637064001">- Apply all patches unconditonally: PackageKit-zypp-c++17.patch is
  merged in upstream git and thus does not justify to be
  conditionally applied.
- Switching back to autosetup, as this works without conditional
  patches.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1653048000">- Update to version 1.2.5:
  + Backends:
  - dnf:
    . Add support for autoremove flag when removing packages.
    . Searches by name and package details should be case
    insensitive.
    . Update appstream xml files if dnf_sack_add_repos() does
    the download.
  - zypp:
    . Add -std=c++1z cpp flags.
    . Fix crash when search string is NULL.
    . Fix package installation using undefined data.
  - Changes to alpm, apttcc, nix, and slack.
  + Bugfixes:
  - Install offline-update enablement symlink if Meson is new
    enough.
  - Move Wants= line for network-online.target.
  - Add flags to D-Bus offline invoking methods.
  - Properly handle allow-reinstall flag for installations.
  - Provide better error message if trying to install an
    installed package.
  - Wait until online to activate systemd service.
- Drop 505.patch, PackageKit-zypp-c++17.patch, and
  PackageKit-zypp-fix-crash-with-empty-search-string.patch: fixed
  upstream.</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1653566400">- Add PackageKit-zypp-locked-packages.patch: zypp: ignore locked
  packages(gh#hughsie/PackageKit#543, boo#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1656676800">- Add PackageKit-zypp-add-upgrade-system.patch: implement
  upgrade-system method(gh#hughsie/PackageKit/commit/930dd201b).</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1657368000">- Move the dbus-1 system.d file to /usr (bsc#1201347)</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1659528000">- Modified PackageKit.spec: bump libzypp dependency version to
  17.31.0.
- Add PackageKit-zypp-avoid-statuReset.patch: zypp: Avoid
  statuReset() on locked packages
  (gh#PackageKit/PackageKit/commit/dd1964255, bsc#1199895).
- Add PackageKit-zypp-disable-upgrade-system-in-sle.patch: zypp:
  Disable upgrade-system support in SLE
  (gh#PackageKit/PackageKit/commit/0fcd820c2).
- Add PackageKit-zypp-restore-pool-status-after-simulating-update.patch:
  zypp: restore pool status after simulating an update
  (gh#PackageKit/PackageKit/commit/2b61a6649, bsc#1199895).
- Add PackageKit-zypp-fix-is-tumbleweed-check.patch: zypp: build
  the pool before calling is_tumbleweed()
  (gh#PackageKit/PackageKit/commit/146890153).
- Add PackageKit-zypp-update-libzypp-dependency-version.patch:
  zypp: update libzypp dependency version
  (gh#PackageKit/PackageKit/commit/58c7c0285, bsc#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1662120000">- Add PackageKit-zypp-dont-refresh-before-searching.patch:
  zypp: Don't refresh repos before searching
  (gh#PackageKit/PackageKit/commit/58c7c0285, bsc#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1664193600">- Add PackageKit-zypp-dont-remove-locked-packages.patch: zypp:
  Check if packages are locked before removing
  (gh#PackageKit/PackageKit/commit/8649a07bc, bsc#1199895).
- Add PackageKit-zypp-add-repo-in-packageid.patch: zypp: add
  repository data in package id
  (gh#PackageKit/PackageKit/commit/8eb2ef0ae, bsc#1202585).
- Remove PackageKit-zypp-locked-packages.patch: reverted upstream
  (gh#PackageKit/PackageKit/commit/ed3e38043).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1673006400">- Add PackageKit-zypp-fix-ambiguous-filesystem-reference.patch:
  zypp: Fix ambiguous reference to 'filesystem' class
  (gh#PackageKit/PackageKit/commit/bb1409a71, bsc#1206687).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678708800">- Add PackageKit-fix-pkcon-permission.patch: trivial: Drop
  unnecessary x permission
  (gh#PackageKit/PackageKit/commit/47b7f97bc, bsc#1209138)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1689595200">- Add PackageKit-dynamic-export.patch: fix loading of modules when
  built using glib 2.70 (boo#1213309).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1699531200">- Update to version 1.2.8:
  + Libraries:
  - offline-updates:
    . Make package update list deduplication more efficient.
    . Add only one entry per package to 'offline-update-competed'
    file.
  - PkClient: Replace the GSimpleAsyncResult with the GTask API.
  - pk-client:
    . Fix use-before-set of PkProgress on cancellation.
    . Move cancellable disconnect to dispose.
    . Rework refcounting for PkClientState.
  + Backends: Changes to apt, dnf, PiSi and BSD backends.
- Changes from version 1.2.7:
  + New Features:
  - pkclient: Add an option to count download size with
    dependencies.
  - pk-transaction: Add support for getting the RemainingTime
    property.
  + Backends:
  - zypp: Fix ambiguous reference to 'filesystem' class.
  - Changes to dnf, apt, alpm backends.
- Changes from version 1.2.6:
  + New Features:
  - Expose transaction sender as read-only property on the bus.
  - pkmon: Display transaction sender binary name in log.
  - pk-transaction: Add Packages signal.
  - pk-transaction: Combine some D-Bus PropertiesChanged signal
    emissions.
  - pk-transaction: Add UpdateDetails signal.
  + Backends:
  - zypp:
    . implement upgrade-system method.
    . Clean up trailing whitespaces.
    . Avoid statuReset() on locked packages.
    . restore pool status after simulating an update.
    . Disable upgrade-system support in SLE.
    . build the pool before calling is_tumbleweed().
    . update libzypp dependency version.
    . Don't refresh repos before searching.
    . Check if packages are locked before removing.
    . add repository data in package id.
    . Remove trailing whitespace.
    + Changes to alpm, aptcc, apt, and nix backends.
- Rebase patches:
  + PackageKit-dnf-Add-support-for-AppStream-repodata-basenames-use.patch
  + PackageKit-dynamic-export.patch
  + PackageKit-zypp-disable-upgrade-system-in-sle.patch
- Drop upstream fixed patches:
  + PackageKit-zypp-add-repo-in-packageid.patch
  + PackageKit-zypp-add-upgrade-system.patch
  + PackageKit-zypp-avoid-statuReset.patch
  + PackageKit-zypp-dont-refresh-before-searching.patch
  + PackageKit-zypp-dont-remove-locked-packages.patch
  + PackageKit-zypp-fix-ambiguous-filesystem-reference.patch
  + PackageKit-zypp-fix-is-tumbleweed-check.patch
  + PackageKit-zypp-restore-pool-status-after-simulating-update.patch
  + PackageKit-zypp-update-libzypp-dependency-version.patch</changelog>
  <changelog author="Alynx Zhou &lt;alynx.zhou@suse.com&gt;" date="1704196800">- Add PackageKit-find-python-3-6.patch: Specify the Python version
  we need to build this package.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1709640000">- Drop baselibs.conf: the -32bit packages are no longer needed and
  have not been part of Tumbleweed for a while already (build for
  i586 only enabled in LegacyX86).</changelog>
  <changelog author="Alynx Zhou &lt;alynx.zhou@suse.com&gt;" date="1723550400">- Add PackageKit-mark-as-compulsory.patch: Prevent PackageKit from
  user uninstallable for most desktops (bsc#1226269).</changelog>
</package>
<package pkgid="d17dff5054367b613fed6d731f09b12ab3613548227598d4641dd6ace1949f116d3dbbf0a00a26f55927bebe336aac89ee65584827dc6e321e22da7f458b9492" name="PackageKit-gtk3-module-debuginfo" arch="x86_64">
  <version epoch="0" ver="1.2.8" rel="5.0.2.1.sr20240901"/>
  <changelog author="Stanislav Brabec &lt;sbrabec@suse.com&gt;" date="1631793600">- Remove obsolete translation-update-upstream support
  (jsc#SLE-21105).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1636113600">- Update to version 1.2.4:
  + Libraries:
  - Add specific error code when user declined interaction
  - Avoid spurious GObject::notify signal emissions
  - Correct 'cancellable' use in pk_client_repair_system_async()
  - Fix a leak on calling set_locale() a second time
  - Fix a possible use-after-free under pk_client_cancel_cb()
  - Improve thread safety on an operation cancellation
  + Backends:
  - dnf:
    . Read update information also when getting list of updates
    . Honor install_weak_deps=False if it is there
    . Use 'hy_query_get_advisory_pkgs', if available
  + New Features:
  - PkDetails: Add 'download-size' property
  - PkPackage: Add update severity property
  + Bugfixes:
  - Let the finish understand the 'cancelled' exit code
  - Make backends that use pk-backend-spawn work (#477)
  - Only set polkit interactive flag if method call has too
- Changes from version 1.2.3:
  + Backends:
  - alpm:
    . Add post transaction hook
    . Rename errno to alpm_err to avoid name clashes
  - aptcc: Auto-remove old kernels, unless configured otherwise
  - dnf: Add support for coercing upgrade to distupgrade
  - zypp:
    . Make sure pool is initialized at the beginning of some
    methods
    . Reset update mode after getting updates
  + Bugfixes:
  - Append to cron log instead of overwriting it
  - Cancel a transaction if calling Cancel fails or the daemon
    disappears
  - Do not crash when calling pk_dbus_get_uid() before D-Bus is
    setup
  - Fix all compiler warnings
  - Fix multilib conflicts in generated pk-enum-types.h
  - Free scheduler array correctly again
  - Remove large transaction size sanity check
- Drop patches fixed upstream:
  + PackageKit-zypp-cleanup-tmp-files.patch
  + PackageKit-zypp-reset-update-mode-after-get-updates.patch
  + PackageKit-dnf-Add-support-for-coercing-upgrade-to-distupgrade.patch
  + PackageKit-zypp-initialize-pool.patch
  + PackageKit-remove-transaction-size-limit.patch
  + PackageKit-cancel-transaction-if-daemon-disappears.patch
  + PackageKit-dnf-ignore-weak-deps.patch
- Add 505.patch: pk-offline: Add flags to D-Bus invoking methods.
  That's currently to be able to set whether the method should be
  interactive or not. The old functions call the methods as
  non-interactive.</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1636113601">- Add PackageKit-zypp-c++17.patch: Fix build failure when building
  with libzypp &gt; 17.28.5 and gcc &lt; 11
  (gh#hughsie/PackageKit/commit/1a6bb6ae6, bsc#1192349).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1637064000">- Rewrite prep phase to not use autopatch -M: SLE15/Leap15's RPM
  version does not support that syntax yet.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1637064001">- Apply all patches unconditonally: PackageKit-zypp-c++17.patch is
  merged in upstream git and thus does not justify to be
  conditionally applied.
- Switching back to autosetup, as this works without conditional
  patches.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1653048000">- Update to version 1.2.5:
  + Backends:
  - dnf:
    . Add support for autoremove flag when removing packages.
    . Searches by name and package details should be case
    insensitive.
    . Update appstream xml files if dnf_sack_add_repos() does
    the download.
  - zypp:
    . Add -std=c++1z cpp flags.
    . Fix crash when search string is NULL.
    . Fix package installation using undefined data.
  - Changes to alpm, apttcc, nix, and slack.
  + Bugfixes:
  - Install offline-update enablement symlink if Meson is new
    enough.
  - Move Wants= line for network-online.target.
  - Add flags to D-Bus offline invoking methods.
  - Properly handle allow-reinstall flag for installations.
  - Provide better error message if trying to install an
    installed package.
  - Wait until online to activate systemd service.
- Drop 505.patch, PackageKit-zypp-c++17.patch, and
  PackageKit-zypp-fix-crash-with-empty-search-string.patch: fixed
  upstream.</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1653566400">- Add PackageKit-zypp-locked-packages.patch: zypp: ignore locked
  packages(gh#hughsie/PackageKit#543, boo#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1656676800">- Add PackageKit-zypp-add-upgrade-system.patch: implement
  upgrade-system method(gh#hughsie/PackageKit/commit/930dd201b).</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1657368000">- Move the dbus-1 system.d file to /usr (bsc#1201347)</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1659528000">- Modified PackageKit.spec: bump libzypp dependency version to
  17.31.0.
- Add PackageKit-zypp-avoid-statuReset.patch: zypp: Avoid
  statuReset() on locked packages
  (gh#PackageKit/PackageKit/commit/dd1964255, bsc#1199895).
- Add PackageKit-zypp-disable-upgrade-system-in-sle.patch: zypp:
  Disable upgrade-system support in SLE
  (gh#PackageKit/PackageKit/commit/0fcd820c2).
- Add PackageKit-zypp-restore-pool-status-after-simulating-update.patch:
  zypp: restore pool status after simulating an update
  (gh#PackageKit/PackageKit/commit/2b61a6649, bsc#1199895).
- Add PackageKit-zypp-fix-is-tumbleweed-check.patch: zypp: build
  the pool before calling is_tumbleweed()
  (gh#PackageKit/PackageKit/commit/146890153).
- Add PackageKit-zypp-update-libzypp-dependency-version.patch:
  zypp: update libzypp dependency version
  (gh#PackageKit/PackageKit/commit/58c7c0285, bsc#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1662120000">- Add PackageKit-zypp-dont-refresh-before-searching.patch:
  zypp: Don't refresh repos before searching
  (gh#PackageKit/PackageKit/commit/58c7c0285, bsc#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1664193600">- Add PackageKit-zypp-dont-remove-locked-packages.patch: zypp:
  Check if packages are locked before removing
  (gh#PackageKit/PackageKit/commit/8649a07bc, bsc#1199895).
- Add PackageKit-zypp-add-repo-in-packageid.patch: zypp: add
  repository data in package id
  (gh#PackageKit/PackageKit/commit/8eb2ef0ae, bsc#1202585).
- Remove PackageKit-zypp-locked-packages.patch: reverted upstream
  (gh#PackageKit/PackageKit/commit/ed3e38043).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1673006400">- Add PackageKit-zypp-fix-ambiguous-filesystem-reference.patch:
  zypp: Fix ambiguous reference to 'filesystem' class
  (gh#PackageKit/PackageKit/commit/bb1409a71, bsc#1206687).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678708800">- Add PackageKit-fix-pkcon-permission.patch: trivial: Drop
  unnecessary x permission
  (gh#PackageKit/PackageKit/commit/47b7f97bc, bsc#1209138)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1689595200">- Add PackageKit-dynamic-export.patch: fix loading of modules when
  built using glib 2.70 (boo#1213309).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1699531200">- Update to version 1.2.8:
  + Libraries:
  - offline-updates:
    . Make package update list deduplication more efficient.
    . Add only one entry per package to 'offline-update-competed'
    file.
  - PkClient: Replace the GSimpleAsyncResult with the GTask API.
  - pk-client:
    . Fix use-before-set of PkProgress on cancellation.
    . Move cancellable disconnect to dispose.
    . Rework refcounting for PkClientState.
  + Backends: Changes to apt, dnf, PiSi and BSD backends.
- Changes from version 1.2.7:
  + New Features:
  - pkclient: Add an option to count download size with
    dependencies.
  - pk-transaction: Add support for getting the RemainingTime
    property.
  + Backends:
  - zypp: Fix ambiguous reference to 'filesystem' class.
  - Changes to dnf, apt, alpm backends.
- Changes from version 1.2.6:
  + New Features:
  - Expose transaction sender as read-only property on the bus.
  - pkmon: Display transaction sender binary name in log.
  - pk-transaction: Add Packages signal.
  - pk-transaction: Combine some D-Bus PropertiesChanged signal
    emissions.
  - pk-transaction: Add UpdateDetails signal.
  + Backends:
  - zypp:
    . implement upgrade-system method.
    . Clean up trailing whitespaces.
    . Avoid statuReset() on locked packages.
    . restore pool status after simulating an update.
    . Disable upgrade-system support in SLE.
    . build the pool before calling is_tumbleweed().
    . update libzypp dependency version.
    . Don't refresh repos before searching.
    . Check if packages are locked before removing.
    . add repository data in package id.
    . Remove trailing whitespace.
    + Changes to alpm, aptcc, apt, and nix backends.
- Rebase patches:
  + PackageKit-dnf-Add-support-for-AppStream-repodata-basenames-use.patch
  + PackageKit-dynamic-export.patch
  + PackageKit-zypp-disable-upgrade-system-in-sle.patch
- Drop upstream fixed patches:
  + PackageKit-zypp-add-repo-in-packageid.patch
  + PackageKit-zypp-add-upgrade-system.patch
  + PackageKit-zypp-avoid-statuReset.patch
  + PackageKit-zypp-dont-refresh-before-searching.patch
  + PackageKit-zypp-dont-remove-locked-packages.patch
  + PackageKit-zypp-fix-ambiguous-filesystem-reference.patch
  + PackageKit-zypp-fix-is-tumbleweed-check.patch
  + PackageKit-zypp-restore-pool-status-after-simulating-update.patch
  + PackageKit-zypp-update-libzypp-dependency-version.patch</changelog>
  <changelog author="Alynx Zhou &lt;alynx.zhou@suse.com&gt;" date="1704196800">- Add PackageKit-find-python-3-6.patch: Specify the Python version
  we need to build this package.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1709640000">- Drop baselibs.conf: the -32bit packages are no longer needed and
  have not been part of Tumbleweed for a while already (build for
  i586 only enabled in LegacyX86).</changelog>
  <changelog author="Alynx Zhou &lt;alynx.zhou@suse.com&gt;" date="1723550400">- Add PackageKit-mark-as-compulsory.patch: Prevent PackageKit from
  user uninstallable for most desktops (bsc#1226269).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1726142400">- Add PackageKit-zypp-dont-install-updateCandidateObj.patch:
  zypp: Mark the correct packages to-be-installed (bsc#1227389,
  gh#PackageKit/PackageKit/commit/209aa6295).</changelog>
</package>
<package pkgid="f05673c21b327f345256762da996f10829cc8ab527e7ef135c2f77f048342e24be586e5d69753f9547bf32b2e587390e3aaf4092ca64c4309bcc4f5ba5396dd8" name="PackageKit-gtk3-module-debuginfo" arch="x86_64">
  <version epoch="0" ver="1.2.8" rel="5.1"/>
  <changelog author="Stanislav Brabec &lt;sbrabec@suse.com&gt;" date="1631793600">- Remove obsolete translation-update-upstream support
  (jsc#SLE-21105).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1636113600">- Update to version 1.2.4:
  + Libraries:
  - Add specific error code when user declined interaction
  - Avoid spurious GObject::notify signal emissions
  - Correct 'cancellable' use in pk_client_repair_system_async()
  - Fix a leak on calling set_locale() a second time
  - Fix a possible use-after-free under pk_client_cancel_cb()
  - Improve thread safety on an operation cancellation
  + Backends:
  - dnf:
    . Read update information also when getting list of updates
    . Honor install_weak_deps=False if it is there
    . Use 'hy_query_get_advisory_pkgs', if available
  + New Features:
  - PkDetails: Add 'download-size' property
  - PkPackage: Add update severity property
  + Bugfixes:
  - Let the finish understand the 'cancelled' exit code
  - Make backends that use pk-backend-spawn work (#477)
  - Only set polkit interactive flag if method call has too
- Changes from version 1.2.3:
  + Backends:
  - alpm:
    . Add post transaction hook
    . Rename errno to alpm_err to avoid name clashes
  - aptcc: Auto-remove old kernels, unless configured otherwise
  - dnf: Add support for coercing upgrade to distupgrade
  - zypp:
    . Make sure pool is initialized at the beginning of some
    methods
    . Reset update mode after getting updates
  + Bugfixes:
  - Append to cron log instead of overwriting it
  - Cancel a transaction if calling Cancel fails or the daemon
    disappears
  - Do not crash when calling pk_dbus_get_uid() before D-Bus is
    setup
  - Fix all compiler warnings
  - Fix multilib conflicts in generated pk-enum-types.h
  - Free scheduler array correctly again
  - Remove large transaction size sanity check
- Drop patches fixed upstream:
  + PackageKit-zypp-cleanup-tmp-files.patch
  + PackageKit-zypp-reset-update-mode-after-get-updates.patch
  + PackageKit-dnf-Add-support-for-coercing-upgrade-to-distupgrade.patch
  + PackageKit-zypp-initialize-pool.patch
  + PackageKit-remove-transaction-size-limit.patch
  + PackageKit-cancel-transaction-if-daemon-disappears.patch
  + PackageKit-dnf-ignore-weak-deps.patch
- Add 505.patch: pk-offline: Add flags to D-Bus invoking methods.
  That's currently to be able to set whether the method should be
  interactive or not. The old functions call the methods as
  non-interactive.</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1636113601">- Add PackageKit-zypp-c++17.patch: Fix build failure when building
  with libzypp &gt; 17.28.5 and gcc &lt; 11
  (gh#hughsie/PackageKit/commit/1a6bb6ae6, bsc#1192349).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1637064000">- Rewrite prep phase to not use autopatch -M: SLE15/Leap15's RPM
  version does not support that syntax yet.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1637064001">- Apply all patches unconditonally: PackageKit-zypp-c++17.patch is
  merged in upstream git and thus does not justify to be
  conditionally applied.
- Switching back to autosetup, as this works without conditional
  patches.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1653048000">- Update to version 1.2.5:
  + Backends:
  - dnf:
    . Add support for autoremove flag when removing packages.
    . Searches by name and package details should be case
    insensitive.
    . Update appstream xml files if dnf_sack_add_repos() does
    the download.
  - zypp:
    . Add -std=c++1z cpp flags.
    . Fix crash when search string is NULL.
    . Fix package installation using undefined data.
  - Changes to alpm, apttcc, nix, and slack.
  + Bugfixes:
  - Install offline-update enablement symlink if Meson is new
    enough.
  - Move Wants= line for network-online.target.
  - Add flags to D-Bus offline invoking methods.
  - Properly handle allow-reinstall flag for installations.
  - Provide better error message if trying to install an
    installed package.
  - Wait until online to activate systemd service.
- Drop 505.patch, PackageKit-zypp-c++17.patch, and
  PackageKit-zypp-fix-crash-with-empty-search-string.patch: fixed
  upstream.</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1653566400">- Add PackageKit-zypp-locked-packages.patch: zypp: ignore locked
  packages(gh#hughsie/PackageKit#543, boo#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1656676800">- Add PackageKit-zypp-add-upgrade-system.patch: implement
  upgrade-system method(gh#hughsie/PackageKit/commit/930dd201b).</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1657368000">- Move the dbus-1 system.d file to /usr (bsc#1201347)</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1659528000">- Modified PackageKit.spec: bump libzypp dependency version to
  17.31.0.
- Add PackageKit-zypp-avoid-statuReset.patch: zypp: Avoid
  statuReset() on locked packages
  (gh#PackageKit/PackageKit/commit/dd1964255, bsc#1199895).
- Add PackageKit-zypp-disable-upgrade-system-in-sle.patch: zypp:
  Disable upgrade-system support in SLE
  (gh#PackageKit/PackageKit/commit/0fcd820c2).
- Add PackageKit-zypp-restore-pool-status-after-simulating-update.patch:
  zypp: restore pool status after simulating an update
  (gh#PackageKit/PackageKit/commit/2b61a6649, bsc#1199895).
- Add PackageKit-zypp-fix-is-tumbleweed-check.patch: zypp: build
  the pool before calling is_tumbleweed()
  (gh#PackageKit/PackageKit/commit/146890153).
- Add PackageKit-zypp-update-libzypp-dependency-version.patch:
  zypp: update libzypp dependency version
  (gh#PackageKit/PackageKit/commit/58c7c0285, bsc#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1662120000">- Add PackageKit-zypp-dont-refresh-before-searching.patch:
  zypp: Don't refresh repos before searching
  (gh#PackageKit/PackageKit/commit/58c7c0285, bsc#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1664193600">- Add PackageKit-zypp-dont-remove-locked-packages.patch: zypp:
  Check if packages are locked before removing
  (gh#PackageKit/PackageKit/commit/8649a07bc, bsc#1199895).
- Add PackageKit-zypp-add-repo-in-packageid.patch: zypp: add
  repository data in package id
  (gh#PackageKit/PackageKit/commit/8eb2ef0ae, bsc#1202585).
- Remove PackageKit-zypp-locked-packages.patch: reverted upstream
  (gh#PackageKit/PackageKit/commit/ed3e38043).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1673006400">- Add PackageKit-zypp-fix-ambiguous-filesystem-reference.patch:
  zypp: Fix ambiguous reference to 'filesystem' class
  (gh#PackageKit/PackageKit/commit/bb1409a71, bsc#1206687).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678708800">- Add PackageKit-fix-pkcon-permission.patch: trivial: Drop
  unnecessary x permission
  (gh#PackageKit/PackageKit/commit/47b7f97bc, bsc#1209138)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1689595200">- Add PackageKit-dynamic-export.patch: fix loading of modules when
  built using glib 2.70 (boo#1213309).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1699531200">- Update to version 1.2.8:
  + Libraries:
  - offline-updates:
    . Make package update list deduplication more efficient.
    . Add only one entry per package to 'offline-update-competed'
    file.
  - PkClient: Replace the GSimpleAsyncResult with the GTask API.
  - pk-client:
    . Fix use-before-set of PkProgress on cancellation.
    . Move cancellable disconnect to dispose.
    . Rework refcounting for PkClientState.
  + Backends: Changes to apt, dnf, PiSi and BSD backends.
- Changes from version 1.2.7:
  + New Features:
  - pkclient: Add an option to count download size with
    dependencies.
  - pk-transaction: Add support for getting the RemainingTime
    property.
  + Backends:
  - zypp: Fix ambiguous reference to 'filesystem' class.
  - Changes to dnf, apt, alpm backends.
- Changes from version 1.2.6:
  + New Features:
  - Expose transaction sender as read-only property on the bus.
  - pkmon: Display transaction sender binary name in log.
  - pk-transaction: Add Packages signal.
  - pk-transaction: Combine some D-Bus PropertiesChanged signal
    emissions.
  - pk-transaction: Add UpdateDetails signal.
  + Backends:
  - zypp:
    . implement upgrade-system method.
    . Clean up trailing whitespaces.
    . Avoid statuReset() on locked packages.
    . restore pool status after simulating an update.
    . Disable upgrade-system support in SLE.
    . build the pool before calling is_tumbleweed().
    . update libzypp dependency version.
    . Don't refresh repos before searching.
    . Check if packages are locked before removing.
    . add repository data in package id.
    . Remove trailing whitespace.
    + Changes to alpm, aptcc, apt, and nix backends.
- Rebase patches:
  + PackageKit-dnf-Add-support-for-AppStream-repodata-basenames-use.patch
  + PackageKit-dynamic-export.patch
  + PackageKit-zypp-disable-upgrade-system-in-sle.patch
- Drop upstream fixed patches:
  + PackageKit-zypp-add-repo-in-packageid.patch
  + PackageKit-zypp-add-upgrade-system.patch
  + PackageKit-zypp-avoid-statuReset.patch
  + PackageKit-zypp-dont-refresh-before-searching.patch
  + PackageKit-zypp-dont-remove-locked-packages.patch
  + PackageKit-zypp-fix-ambiguous-filesystem-reference.patch
  + PackageKit-zypp-fix-is-tumbleweed-check.patch
  + PackageKit-zypp-restore-pool-status-after-simulating-update.patch
  + PackageKit-zypp-update-libzypp-dependency-version.patch</changelog>
  <changelog author="Alynx Zhou &lt;alynx.zhou@suse.com&gt;" date="1704196800">- Add PackageKit-find-python-3-6.patch: Specify the Python version
  we need to build this package.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1709640000">- Drop baselibs.conf: the -32bit packages are no longer needed and
  have not been part of Tumbleweed for a while already (build for
  i586 only enabled in LegacyX86).</changelog>
  <changelog author="Alynx Zhou &lt;alynx.zhou@suse.com&gt;" date="1723550400">- Add PackageKit-mark-as-compulsory.patch: Prevent PackageKit from
  user uninstallable for most desktops (bsc#1226269).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1726142400">- Add PackageKit-zypp-dont-install-updateCandidateObj.patch:
  zypp: Mark the correct packages to-be-installed (bsc#1227389,
  gh#PackageKit/PackageKit/commit/209aa6295).</changelog>
</package>
<package pkgid="f122c9124a2410162f442cb52f5f463e61e0939d434d2a24f47edb888be9b8539ea614f2c15e9e6d1e88b3f4e2ef6fd79033abaf45853a3b419ce3cf675cd6ff" name="PackageKit-gtk3-module-debuginfo" arch="x86_64">
  <version epoch="0" ver="1.2.8" rel="6.1"/>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1636113600">- Update to version 1.2.4:
  + Libraries:
  - Add specific error code when user declined interaction
  - Avoid spurious GObject::notify signal emissions
  - Correct 'cancellable' use in pk_client_repair_system_async()
  - Fix a leak on calling set_locale() a second time
  - Fix a possible use-after-free under pk_client_cancel_cb()
  - Improve thread safety on an operation cancellation
  + Backends:
  - dnf:
    . Read update information also when getting list of updates
    . Honor install_weak_deps=False if it is there
    . Use 'hy_query_get_advisory_pkgs', if available
  + New Features:
  - PkDetails: Add 'download-size' property
  - PkPackage: Add update severity property
  + Bugfixes:
  - Let the finish understand the 'cancelled' exit code
  - Make backends that use pk-backend-spawn work (#477)
  - Only set polkit interactive flag if method call has too
- Changes from version 1.2.3:
  + Backends:
  - alpm:
    . Add post transaction hook
    . Rename errno to alpm_err to avoid name clashes
  - aptcc: Auto-remove old kernels, unless configured otherwise
  - dnf: Add support for coercing upgrade to distupgrade
  - zypp:
    . Make sure pool is initialized at the beginning of some
    methods
    . Reset update mode after getting updates
  + Bugfixes:
  - Append to cron log instead of overwriting it
  - Cancel a transaction if calling Cancel fails or the daemon
    disappears
  - Do not crash when calling pk_dbus_get_uid() before D-Bus is
    setup
  - Fix all compiler warnings
  - Fix multilib conflicts in generated pk-enum-types.h
  - Free scheduler array correctly again
  - Remove large transaction size sanity check
- Drop patches fixed upstream:
  + PackageKit-zypp-cleanup-tmp-files.patch
  + PackageKit-zypp-reset-update-mode-after-get-updates.patch
  + PackageKit-dnf-Add-support-for-coercing-upgrade-to-distupgrade.patch
  + PackageKit-zypp-initialize-pool.patch
  + PackageKit-remove-transaction-size-limit.patch
  + PackageKit-cancel-transaction-if-daemon-disappears.patch
  + PackageKit-dnf-ignore-weak-deps.patch
- Add 505.patch: pk-offline: Add flags to D-Bus invoking methods.
  That's currently to be able to set whether the method should be
  interactive or not. The old functions call the methods as
  non-interactive.</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1636113601">- Add PackageKit-zypp-c++17.patch: Fix build failure when building
  with libzypp &gt; 17.28.5 and gcc &lt; 11
  (gh#hughsie/PackageKit/commit/1a6bb6ae6, bsc#1192349).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1637064000">- Rewrite prep phase to not use autopatch -M: SLE15/Leap15's RPM
  version does not support that syntax yet.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1637064001">- Apply all patches unconditonally: PackageKit-zypp-c++17.patch is
  merged in upstream git and thus does not justify to be
  conditionally applied.
- Switching back to autosetup, as this works without conditional
  patches.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1653048000">- Update to version 1.2.5:
  + Backends:
  - dnf:
    . Add support for autoremove flag when removing packages.
    . Searches by name and package details should be case
    insensitive.
    . Update appstream xml files if dnf_sack_add_repos() does
    the download.
  - zypp:
    . Add -std=c++1z cpp flags.
    . Fix crash when search string is NULL.
    . Fix package installation using undefined data.
  - Changes to alpm, apttcc, nix, and slack.
  + Bugfixes:
  - Install offline-update enablement symlink if Meson is new
    enough.
  - Move Wants= line for network-online.target.
  - Add flags to D-Bus offline invoking methods.
  - Properly handle allow-reinstall flag for installations.
  - Provide better error message if trying to install an
    installed package.
  - Wait until online to activate systemd service.
- Drop 505.patch, PackageKit-zypp-c++17.patch, and
  PackageKit-zypp-fix-crash-with-empty-search-string.patch: fixed
  upstream.</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1653566400">- Add PackageKit-zypp-locked-packages.patch: zypp: ignore locked
  packages(gh#hughsie/PackageKit#543, boo#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1656676800">- Add PackageKit-zypp-add-upgrade-system.patch: implement
  upgrade-system method(gh#hughsie/PackageKit/commit/930dd201b).</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1657368000">- Move the dbus-1 system.d file to /usr (bsc#1201347)</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1659528000">- Modified PackageKit.spec: bump libzypp dependency version to
  17.31.0.
- Add PackageKit-zypp-avoid-statuReset.patch: zypp: Avoid
  statuReset() on locked packages
  (gh#PackageKit/PackageKit/commit/dd1964255, bsc#1199895).
- Add PackageKit-zypp-disable-upgrade-system-in-sle.patch: zypp:
  Disable upgrade-system support in SLE
  (gh#PackageKit/PackageKit/commit/0fcd820c2).
- Add PackageKit-zypp-restore-pool-status-after-simulating-update.patch:
  zypp: restore pool status after simulating an update
  (gh#PackageKit/PackageKit/commit/2b61a6649, bsc#1199895).
- Add PackageKit-zypp-fix-is-tumbleweed-check.patch: zypp: build
  the pool before calling is_tumbleweed()
  (gh#PackageKit/PackageKit/commit/146890153).
- Add PackageKit-zypp-update-libzypp-dependency-version.patch:
  zypp: update libzypp dependency version
  (gh#PackageKit/PackageKit/commit/58c7c0285, bsc#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1662120000">- Add PackageKit-zypp-dont-refresh-before-searching.patch:
  zypp: Don't refresh repos before searching
  (gh#PackageKit/PackageKit/commit/58c7c0285, bsc#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1664193600">- Add PackageKit-zypp-dont-remove-locked-packages.patch: zypp:
  Check if packages are locked before removing
  (gh#PackageKit/PackageKit/commit/8649a07bc, bsc#1199895).
- Add PackageKit-zypp-add-repo-in-packageid.patch: zypp: add
  repository data in package id
  (gh#PackageKit/PackageKit/commit/8eb2ef0ae, bsc#1202585).
- Remove PackageKit-zypp-locked-packages.patch: reverted upstream
  (gh#PackageKit/PackageKit/commit/ed3e38043).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1673006400">- Add PackageKit-zypp-fix-ambiguous-filesystem-reference.patch:
  zypp: Fix ambiguous reference to 'filesystem' class
  (gh#PackageKit/PackageKit/commit/bb1409a71, bsc#1206687).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678708800">- Add PackageKit-fix-pkcon-permission.patch: trivial: Drop
  unnecessary x permission
  (gh#PackageKit/PackageKit/commit/47b7f97bc, bsc#1209138)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1689595200">- Add PackageKit-dynamic-export.patch: fix loading of modules when
  built using glib 2.70 (boo#1213309).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1699531200">- Update to version 1.2.8:
  + Libraries:
  - offline-updates:
    . Make package update list deduplication more efficient.
    . Add only one entry per package to 'offline-update-competed'
    file.
  - PkClient: Replace the GSimpleAsyncResult with the GTask API.
  - pk-client:
    . Fix use-before-set of PkProgress on cancellation.
    . Move cancellable disconnect to dispose.
    . Rework refcounting for PkClientState.
  + Backends: Changes to apt, dnf, PiSi and BSD backends.
- Changes from version 1.2.7:
  + New Features:
  - pkclient: Add an option to count download size with
    dependencies.
  - pk-transaction: Add support for getting the RemainingTime
    property.
  + Backends:
  - zypp: Fix ambiguous reference to 'filesystem' class.
  - Changes to dnf, apt, alpm backends.
- Changes from version 1.2.6:
  + New Features:
  - Expose transaction sender as read-only property on the bus.
  - pkmon: Display transaction sender binary name in log.
  - pk-transaction: Add Packages signal.
  - pk-transaction: Combine some D-Bus PropertiesChanged signal
    emissions.
  - pk-transaction: Add UpdateDetails signal.
  + Backends:
  - zypp:
    . implement upgrade-system method.
    . Clean up trailing whitespaces.
    . Avoid statuReset() on locked packages.
    . restore pool status after simulating an update.
    . Disable upgrade-system support in SLE.
    . build the pool before calling is_tumbleweed().
    . update libzypp dependency version.
    . Don't refresh repos before searching.
    . Check if packages are locked before removing.
    . add repository data in package id.
    . Remove trailing whitespace.
    + Changes to alpm, aptcc, apt, and nix backends.
- Rebase patches:
  + PackageKit-dnf-Add-support-for-AppStream-repodata-basenames-use.patch
  + PackageKit-dynamic-export.patch
  + PackageKit-zypp-disable-upgrade-system-in-sle.patch
- Drop upstream fixed patches:
  + PackageKit-zypp-add-repo-in-packageid.patch
  + PackageKit-zypp-add-upgrade-system.patch
  + PackageKit-zypp-avoid-statuReset.patch
  + PackageKit-zypp-dont-refresh-before-searching.patch
  + PackageKit-zypp-dont-remove-locked-packages.patch
  + PackageKit-zypp-fix-ambiguous-filesystem-reference.patch
  + PackageKit-zypp-fix-is-tumbleweed-check.patch
  + PackageKit-zypp-restore-pool-status-after-simulating-update.patch
  + PackageKit-zypp-update-libzypp-dependency-version.patch</changelog>
  <changelog author="Alynx Zhou &lt;alynx.zhou@suse.com&gt;" date="1704196800">- Add PackageKit-find-python-3-6.patch: Specify the Python version
  we need to build this package.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1709640000">- Drop baselibs.conf: the -32bit packages are no longer needed and
  have not been part of Tumbleweed for a while already (build for
  i586 only enabled in LegacyX86).</changelog>
  <changelog author="Alynx Zhou &lt;alynx.zhou@suse.com&gt;" date="1723550400">- Add PackageKit-mark-as-compulsory.patch: Prevent PackageKit from
  user uninstallable for most desktops (bsc#1226269).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1726142400">- Add PackageKit-zypp-dont-install-updateCandidateObj.patch:
  zypp: Mark the correct packages to-be-installed (bsc#1227389,
  gh#PackageKit/PackageKit/commit/209aa6295).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1728993600">- Drop rcFOO symlinks (PED-266)
- Drop usage of update-alternatives, but simplify installation of
  /usr/libexec/gst-install-plugins-helper as a direct symlink to
  pk-gstreamer-install.</changelog>
</package>
<package pkgid="dc7ebb8fac98932df5edc35ae4a68a8941bd23b3460c3fdf63efffc5e0d10522af06c08d38d113106fc4008834f81a2f3a6e134dc1050fc8f43b819c29f55c46" name="PackageKit-lang" arch="noarch">
  <version epoch="0" ver="1.2.8" rel="4.1"/>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1629460800">- Add PackageKit-zypp-fix-crash-with-empty-search-string.patch:
  zypp: Fix crash when search string is NULL (bsc#1179287,
  gh#hughsie/PackageKit/commit#21ccf49).</changelog>
  <changelog author="Stanislav Brabec &lt;sbrabec@suse.com&gt;" date="1631793600">- Remove obsolete translation-update-upstream support
  (jsc#SLE-21105).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1636113600">- Update to version 1.2.4:
  + Libraries:
  - Add specific error code when user declined interaction
  - Avoid spurious GObject::notify signal emissions
  - Correct 'cancellable' use in pk_client_repair_system_async()
  - Fix a leak on calling set_locale() a second time
  - Fix a possible use-after-free under pk_client_cancel_cb()
  - Improve thread safety on an operation cancellation
  + Backends:
  - dnf:
    . Read update information also when getting list of updates
    . Honor install_weak_deps=False if it is there
    . Use 'hy_query_get_advisory_pkgs', if available
  + New Features:
  - PkDetails: Add 'download-size' property
  - PkPackage: Add update severity property
  + Bugfixes:
  - Let the finish understand the 'cancelled' exit code
  - Make backends that use pk-backend-spawn work (#477)
  - Only set polkit interactive flag if method call has too
- Changes from version 1.2.3:
  + Backends:
  - alpm:
    . Add post transaction hook
    . Rename errno to alpm_err to avoid name clashes
  - aptcc: Auto-remove old kernels, unless configured otherwise
  - dnf: Add support for coercing upgrade to distupgrade
  - zypp:
    . Make sure pool is initialized at the beginning of some
    methods
    . Reset update mode after getting updates
  + Bugfixes:
  - Append to cron log instead of overwriting it
  - Cancel a transaction if calling Cancel fails or the daemon
    disappears
  - Do not crash when calling pk_dbus_get_uid() before D-Bus is
    setup
  - Fix all compiler warnings
  - Fix multilib conflicts in generated pk-enum-types.h
  - Free scheduler array correctly again
  - Remove large transaction size sanity check
- Drop patches fixed upstream:
  + PackageKit-zypp-cleanup-tmp-files.patch
  + PackageKit-zypp-reset-update-mode-after-get-updates.patch
  + PackageKit-dnf-Add-support-for-coercing-upgrade-to-distupgrade.patch
  + PackageKit-zypp-initialize-pool.patch
  + PackageKit-remove-transaction-size-limit.patch
  + PackageKit-cancel-transaction-if-daemon-disappears.patch
  + PackageKit-dnf-ignore-weak-deps.patch
- Add 505.patch: pk-offline: Add flags to D-Bus invoking methods.
  That's currently to be able to set whether the method should be
  interactive or not. The old functions call the methods as
  non-interactive.</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1636113601">- Add PackageKit-zypp-c++17.patch: Fix build failure when building
  with libzypp &gt; 17.28.5 and gcc &lt; 11
  (gh#hughsie/PackageKit/commit/1a6bb6ae6, bsc#1192349).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1637064000">- Rewrite prep phase to not use autopatch -M: SLE15/Leap15's RPM
  version does not support that syntax yet.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1637064001">- Apply all patches unconditonally: PackageKit-zypp-c++17.patch is
  merged in upstream git and thus does not justify to be
  conditionally applied.
- Switching back to autosetup, as this works without conditional
  patches.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1653048000">- Update to version 1.2.5:
  + Backends:
  - dnf:
    . Add support for autoremove flag when removing packages.
    . Searches by name and package details should be case
    insensitive.
    . Update appstream xml files if dnf_sack_add_repos() does
    the download.
  - zypp:
    . Add -std=c++1z cpp flags.
    . Fix crash when search string is NULL.
    . Fix package installation using undefined data.
  - Changes to alpm, apttcc, nix, and slack.
  + Bugfixes:
  - Install offline-update enablement symlink if Meson is new
    enough.
  - Move Wants= line for network-online.target.
  - Add flags to D-Bus offline invoking methods.
  - Properly handle allow-reinstall flag for installations.
  - Provide better error message if trying to install an
    installed package.
  - Wait until online to activate systemd service.
- Drop 505.patch, PackageKit-zypp-c++17.patch, and
  PackageKit-zypp-fix-crash-with-empty-search-string.patch: fixed
  upstream.</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1653566400">- Add PackageKit-zypp-locked-packages.patch: zypp: ignore locked
  packages(gh#hughsie/PackageKit#543, boo#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1656676800">- Add PackageKit-zypp-add-upgrade-system.patch: implement
  upgrade-system method(gh#hughsie/PackageKit/commit/930dd201b).</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1657368000">- Move the dbus-1 system.d file to /usr (bsc#1201347)</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1659528000">- Modified PackageKit.spec: bump libzypp dependency version to
  17.31.0.
- Add PackageKit-zypp-avoid-statuReset.patch: zypp: Avoid
  statuReset() on locked packages
  (gh#PackageKit/PackageKit/commit/dd1964255, bsc#1199895).
- Add PackageKit-zypp-disable-upgrade-system-in-sle.patch: zypp:
  Disable upgrade-system support in SLE
  (gh#PackageKit/PackageKit/commit/0fcd820c2).
- Add PackageKit-zypp-restore-pool-status-after-simulating-update.patch:
  zypp: restore pool status after simulating an update
  (gh#PackageKit/PackageKit/commit/2b61a6649, bsc#1199895).
- Add PackageKit-zypp-fix-is-tumbleweed-check.patch: zypp: build
  the pool before calling is_tumbleweed()
  (gh#PackageKit/PackageKit/commit/146890153).
- Add PackageKit-zypp-update-libzypp-dependency-version.patch:
  zypp: update libzypp dependency version
  (gh#PackageKit/PackageKit/commit/58c7c0285, bsc#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1662120000">- Add PackageKit-zypp-dont-refresh-before-searching.patch:
  zypp: Don't refresh repos before searching
  (gh#PackageKit/PackageKit/commit/58c7c0285, bsc#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1664193600">- Add PackageKit-zypp-dont-remove-locked-packages.patch: zypp:
  Check if packages are locked before removing
  (gh#PackageKit/PackageKit/commit/8649a07bc, bsc#1199895).
- Add PackageKit-zypp-add-repo-in-packageid.patch: zypp: add
  repository data in package id
  (gh#PackageKit/PackageKit/commit/8eb2ef0ae, bsc#1202585).
- Remove PackageKit-zypp-locked-packages.patch: reverted upstream
  (gh#PackageKit/PackageKit/commit/ed3e38043).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1673006400">- Add PackageKit-zypp-fix-ambiguous-filesystem-reference.patch:
  zypp: Fix ambiguous reference to 'filesystem' class
  (gh#PackageKit/PackageKit/commit/bb1409a71, bsc#1206687).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678708800">- Add PackageKit-fix-pkcon-permission.patch: trivial: Drop
  unnecessary x permission
  (gh#PackageKit/PackageKit/commit/47b7f97bc, bsc#1209138)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1689595200">- Add PackageKit-dynamic-export.patch: fix loading of modules when
  built using glib 2.70 (boo#1213309).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1699531200">- Update to version 1.2.8:
  + Libraries:
  - offline-updates:
    . Make package update list deduplication more efficient.
    . Add only one entry per package to 'offline-update-competed'
    file.
  - PkClient: Replace the GSimpleAsyncResult with the GTask API.
  - pk-client:
    . Fix use-before-set of PkProgress on cancellation.
    . Move cancellable disconnect to dispose.
    . Rework refcounting for PkClientState.
  + Backends: Changes to apt, dnf, PiSi and BSD backends.
- Changes from version 1.2.7:
  + New Features:
  - pkclient: Add an option to count download size with
    dependencies.
  - pk-transaction: Add support for getting the RemainingTime
    property.
  + Backends:
  - zypp: Fix ambiguous reference to 'filesystem' class.
  - Changes to dnf, apt, alpm backends.
- Changes from version 1.2.6:
  + New Features:
  - Expose transaction sender as read-only property on the bus.
  - pkmon: Display transaction sender binary name in log.
  - pk-transaction: Add Packages signal.
  - pk-transaction: Combine some D-Bus PropertiesChanged signal
    emissions.
  - pk-transaction: Add UpdateDetails signal.
  + Backends:
  - zypp:
    . implement upgrade-system method.
    . Clean up trailing whitespaces.
    . Avoid statuReset() on locked packages.
    . restore pool status after simulating an update.
    . Disable upgrade-system support in SLE.
    . build the pool before calling is_tumbleweed().
    . update libzypp dependency version.
    . Don't refresh repos before searching.
    . Check if packages are locked before removing.
    . add repository data in package id.
    . Remove trailing whitespace.
    + Changes to alpm, aptcc, apt, and nix backends.
- Rebase patches:
  + PackageKit-dnf-Add-support-for-AppStream-repodata-basenames-use.patch
  + PackageKit-dynamic-export.patch
  + PackageKit-zypp-disable-upgrade-system-in-sle.patch
- Drop upstream fixed patches:
  + PackageKit-zypp-add-repo-in-packageid.patch
  + PackageKit-zypp-add-upgrade-system.patch
  + PackageKit-zypp-avoid-statuReset.patch
  + PackageKit-zypp-dont-refresh-before-searching.patch
  + PackageKit-zypp-dont-remove-locked-packages.patch
  + PackageKit-zypp-fix-ambiguous-filesystem-reference.patch
  + PackageKit-zypp-fix-is-tumbleweed-check.patch
  + PackageKit-zypp-restore-pool-status-after-simulating-update.patch
  + PackageKit-zypp-update-libzypp-dependency-version.patch</changelog>
  <changelog author="Alynx Zhou &lt;alynx.zhou@suse.com&gt;" date="1704196800">- Add PackageKit-find-python-3-6.patch: Specify the Python version
  we need to build this package.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1709640000">- Drop baselibs.conf: the -32bit packages are no longer needed and
  have not been part of Tumbleweed for a while already (build for
  i586 only enabled in LegacyX86).</changelog>
  <changelog author="Alynx Zhou &lt;alynx.zhou@suse.com&gt;" date="1723550400">- Add PackageKit-mark-as-compulsory.patch: Prevent PackageKit from
  user uninstallable for most desktops (bsc#1226269).</changelog>
</package>
<package pkgid="e8f4e074285f753be8ad68ca9d6ad04cebdfd8d581ac9119cf51ee8664d073aefdfbc8cd300c2c3726d45b55cadcfff37aa8d0dfcb0b952242e4ec755d0cb709" name="PackageKit-lang" arch="noarch">
  <version epoch="0" ver="1.2.8" rel="5.0.2.1.sr20240901"/>
  <changelog author="Stanislav Brabec &lt;sbrabec@suse.com&gt;" date="1631793600">- Remove obsolete translation-update-upstream support
  (jsc#SLE-21105).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1636113600">- Update to version 1.2.4:
  + Libraries:
  - Add specific error code when user declined interaction
  - Avoid spurious GObject::notify signal emissions
  - Correct 'cancellable' use in pk_client_repair_system_async()
  - Fix a leak on calling set_locale() a second time
  - Fix a possible use-after-free under pk_client_cancel_cb()
  - Improve thread safety on an operation cancellation
  + Backends:
  - dnf:
    . Read update information also when getting list of updates
    . Honor install_weak_deps=False if it is there
    . Use 'hy_query_get_advisory_pkgs', if available
  + New Features:
  - PkDetails: Add 'download-size' property
  - PkPackage: Add update severity property
  + Bugfixes:
  - Let the finish understand the 'cancelled' exit code
  - Make backends that use pk-backend-spawn work (#477)
  - Only set polkit interactive flag if method call has too
- Changes from version 1.2.3:
  + Backends:
  - alpm:
    . Add post transaction hook
    . Rename errno to alpm_err to avoid name clashes
  - aptcc: Auto-remove old kernels, unless configured otherwise
  - dnf: Add support for coercing upgrade to distupgrade
  - zypp:
    . Make sure pool is initialized at the beginning of some
    methods
    . Reset update mode after getting updates
  + Bugfixes:
  - Append to cron log instead of overwriting it
  - Cancel a transaction if calling Cancel fails or the daemon
    disappears
  - Do not crash when calling pk_dbus_get_uid() before D-Bus is
    setup
  - Fix all compiler warnings
  - Fix multilib conflicts in generated pk-enum-types.h
  - Free scheduler array correctly again
  - Remove large transaction size sanity check
- Drop patches fixed upstream:
  + PackageKit-zypp-cleanup-tmp-files.patch
  + PackageKit-zypp-reset-update-mode-after-get-updates.patch
  + PackageKit-dnf-Add-support-for-coercing-upgrade-to-distupgrade.patch
  + PackageKit-zypp-initialize-pool.patch
  + PackageKit-remove-transaction-size-limit.patch
  + PackageKit-cancel-transaction-if-daemon-disappears.patch
  + PackageKit-dnf-ignore-weak-deps.patch
- Add 505.patch: pk-offline: Add flags to D-Bus invoking methods.
  That's currently to be able to set whether the method should be
  interactive or not. The old functions call the methods as
  non-interactive.</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1636113601">- Add PackageKit-zypp-c++17.patch: Fix build failure when building
  with libzypp &gt; 17.28.5 and gcc &lt; 11
  (gh#hughsie/PackageKit/commit/1a6bb6ae6, bsc#1192349).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1637064000">- Rewrite prep phase to not use autopatch -M: SLE15/Leap15's RPM
  version does not support that syntax yet.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1637064001">- Apply all patches unconditonally: PackageKit-zypp-c++17.patch is
  merged in upstream git and thus does not justify to be
  conditionally applied.
- Switching back to autosetup, as this works without conditional
  patches.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1653048000">- Update to version 1.2.5:
  + Backends:
  - dnf:
    . Add support for autoremove flag when removing packages.
    . Searches by name and package details should be case
    insensitive.
    . Update appstream xml files if dnf_sack_add_repos() does
    the download.
  - zypp:
    . Add -std=c++1z cpp flags.
    . Fix crash when search string is NULL.
    . Fix package installation using undefined data.
  - Changes to alpm, apttcc, nix, and slack.
  + Bugfixes:
  - Install offline-update enablement symlink if Meson is new
    enough.
  - Move Wants= line for network-online.target.
  - Add flags to D-Bus offline invoking methods.
  - Properly handle allow-reinstall flag for installations.
  - Provide better error message if trying to install an
    installed package.
  - Wait until online to activate systemd service.
- Drop 505.patch, PackageKit-zypp-c++17.patch, and
  PackageKit-zypp-fix-crash-with-empty-search-string.patch: fixed
  upstream.</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1653566400">- Add PackageKit-zypp-locked-packages.patch: zypp: ignore locked
  packages(gh#hughsie/PackageKit#543, boo#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1656676800">- Add PackageKit-zypp-add-upgrade-system.patch: implement
  upgrade-system method(gh#hughsie/PackageKit/commit/930dd201b).</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1657368000">- Move the dbus-1 system.d file to /usr (bsc#1201347)</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1659528000">- Modified PackageKit.spec: bump libzypp dependency version to
  17.31.0.
- Add PackageKit-zypp-avoid-statuReset.patch: zypp: Avoid
  statuReset() on locked packages
  (gh#PackageKit/PackageKit/commit/dd1964255, bsc#1199895).
- Add PackageKit-zypp-disable-upgrade-system-in-sle.patch: zypp:
  Disable upgrade-system support in SLE
  (gh#PackageKit/PackageKit/commit/0fcd820c2).
- Add PackageKit-zypp-restore-pool-status-after-simulating-update.patch:
  zypp: restore pool status after simulating an update
  (gh#PackageKit/PackageKit/commit/2b61a6649, bsc#1199895).
- Add PackageKit-zypp-fix-is-tumbleweed-check.patch: zypp: build
  the pool before calling is_tumbleweed()
  (gh#PackageKit/PackageKit/commit/146890153).
- Add PackageKit-zypp-update-libzypp-dependency-version.patch:
  zypp: update libzypp dependency version
  (gh#PackageKit/PackageKit/commit/58c7c0285, bsc#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1662120000">- Add PackageKit-zypp-dont-refresh-before-searching.patch:
  zypp: Don't refresh repos before searching
  (gh#PackageKit/PackageKit/commit/58c7c0285, bsc#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1664193600">- Add PackageKit-zypp-dont-remove-locked-packages.patch: zypp:
  Check if packages are locked before removing
  (gh#PackageKit/PackageKit/commit/8649a07bc, bsc#1199895).
- Add PackageKit-zypp-add-repo-in-packageid.patch: zypp: add
  repository data in package id
  (gh#PackageKit/PackageKit/commit/8eb2ef0ae, bsc#1202585).
- Remove PackageKit-zypp-locked-packages.patch: reverted upstream
  (gh#PackageKit/PackageKit/commit/ed3e38043).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1673006400">- Add PackageKit-zypp-fix-ambiguous-filesystem-reference.patch:
  zypp: Fix ambiguous reference to 'filesystem' class
  (gh#PackageKit/PackageKit/commit/bb1409a71, bsc#1206687).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678708800">- Add PackageKit-fix-pkcon-permission.patch: trivial: Drop
  unnecessary x permission
  (gh#PackageKit/PackageKit/commit/47b7f97bc, bsc#1209138)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1689595200">- Add PackageKit-dynamic-export.patch: fix loading of modules when
  built using glib 2.70 (boo#1213309).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1699531200">- Update to version 1.2.8:
  + Libraries:
  - offline-updates:
    . Make package update list deduplication more efficient.
    . Add only one entry per package to 'offline-update-competed'
    file.
  - PkClient: Replace the GSimpleAsyncResult with the GTask API.
  - pk-client:
    . Fix use-before-set of PkProgress on cancellation.
    . Move cancellable disconnect to dispose.
    . Rework refcounting for PkClientState.
  + Backends: Changes to apt, dnf, PiSi and BSD backends.
- Changes from version 1.2.7:
  + New Features:
  - pkclient: Add an option to count download size with
    dependencies.
  - pk-transaction: Add support for getting the RemainingTime
    property.
  + Backends:
  - zypp: Fix ambiguous reference to 'filesystem' class.
  - Changes to dnf, apt, alpm backends.
- Changes from version 1.2.6:
  + New Features:
  - Expose transaction sender as read-only property on the bus.
  - pkmon: Display transaction sender binary name in log.
  - pk-transaction: Add Packages signal.
  - pk-transaction: Combine some D-Bus PropertiesChanged signal
    emissions.
  - pk-transaction: Add UpdateDetails signal.
  + Backends:
  - zypp:
    . implement upgrade-system method.
    . Clean up trailing whitespaces.
    . Avoid statuReset() on locked packages.
    . restore pool status after simulating an update.
    . Disable upgrade-system support in SLE.
    . build the pool before calling is_tumbleweed().
    . update libzypp dependency version.
    . Don't refresh repos before searching.
    . Check if packages are locked before removing.
    . add repository data in package id.
    . Remove trailing whitespace.
    + Changes to alpm, aptcc, apt, and nix backends.
- Rebase patches:
  + PackageKit-dnf-Add-support-for-AppStream-repodata-basenames-use.patch
  + PackageKit-dynamic-export.patch
  + PackageKit-zypp-disable-upgrade-system-in-sle.patch
- Drop upstream fixed patches:
  + PackageKit-zypp-add-repo-in-packageid.patch
  + PackageKit-zypp-add-upgrade-system.patch
  + PackageKit-zypp-avoid-statuReset.patch
  + PackageKit-zypp-dont-refresh-before-searching.patch
  + PackageKit-zypp-dont-remove-locked-packages.patch
  + PackageKit-zypp-fix-ambiguous-filesystem-reference.patch
  + PackageKit-zypp-fix-is-tumbleweed-check.patch
  + PackageKit-zypp-restore-pool-status-after-simulating-update.patch
  + PackageKit-zypp-update-libzypp-dependency-version.patch</changelog>
  <changelog author="Alynx Zhou &lt;alynx.zhou@suse.com&gt;" date="1704196800">- Add PackageKit-find-python-3-6.patch: Specify the Python version
  we need to build this package.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1709640000">- Drop baselibs.conf: the -32bit packages are no longer needed and
  have not been part of Tumbleweed for a while already (build for
  i586 only enabled in LegacyX86).</changelog>
  <changelog author="Alynx Zhou &lt;alynx.zhou@suse.com&gt;" date="1723550400">- Add PackageKit-mark-as-compulsory.patch: Prevent PackageKit from
  user uninstallable for most desktops (bsc#1226269).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1726142400">- Add PackageKit-zypp-dont-install-updateCandidateObj.patch:
  zypp: Mark the correct packages to-be-installed (bsc#1227389,
  gh#PackageKit/PackageKit/commit/209aa6295).</changelog>
</package>
<package pkgid="9487e6dba81357c46c9c2cd3f8a01adc9f71332169965b34feffe70e002e617eaf81bd5b226f942297e86ad129b6a24349124130817cd5ae822082e4abca0bf3" name="PackageKit-lang" arch="noarch">
  <version epoch="0" ver="1.2.8" rel="5.1"/>
  <changelog author="Stanislav Brabec &lt;sbrabec@suse.com&gt;" date="1631793600">- Remove obsolete translation-update-upstream support
  (jsc#SLE-21105).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1636113600">- Update to version 1.2.4:
  + Libraries:
  - Add specific error code when user declined interaction
  - Avoid spurious GObject::notify signal emissions
  - Correct 'cancellable' use in pk_client_repair_system_async()
  - Fix a leak on calling set_locale() a second time
  - Fix a possible use-after-free under pk_client_cancel_cb()
  - Improve thread safety on an operation cancellation
  + Backends:
  - dnf:
    . Read update information also when getting list of updates
    . Honor install_weak_deps=False if it is there
    . Use 'hy_query_get_advisory_pkgs', if available
  + New Features:
  - PkDetails: Add 'download-size' property
  - PkPackage: Add update severity property
  + Bugfixes:
  - Let the finish understand the 'cancelled' exit code
  - Make backends that use pk-backend-spawn work (#477)
  - Only set polkit interactive flag if method call has too
- Changes from version 1.2.3:
  + Backends:
  - alpm:
    . Add post transaction hook
    . Rename errno to alpm_err to avoid name clashes
  - aptcc: Auto-remove old kernels, unless configured otherwise
  - dnf: Add support for coercing upgrade to distupgrade
  - zypp:
    . Make sure pool is initialized at the beginning of some
    methods
    . Reset update mode after getting updates
  + Bugfixes:
  - Append to cron log instead of overwriting it
  - Cancel a transaction if calling Cancel fails or the daemon
    disappears
  - Do not crash when calling pk_dbus_get_uid() before D-Bus is
    setup
  - Fix all compiler warnings
  - Fix multilib conflicts in generated pk-enum-types.h
  - Free scheduler array correctly again
  - Remove large transaction size sanity check
- Drop patches fixed upstream:
  + PackageKit-zypp-cleanup-tmp-files.patch
  + PackageKit-zypp-reset-update-mode-after-get-updates.patch
  + PackageKit-dnf-Add-support-for-coercing-upgrade-to-distupgrade.patch
  + PackageKit-zypp-initialize-pool.patch
  + PackageKit-remove-transaction-size-limit.patch
  + PackageKit-cancel-transaction-if-daemon-disappears.patch
  + PackageKit-dnf-ignore-weak-deps.patch
- Add 505.patch: pk-offline: Add flags to D-Bus invoking methods.
  That's currently to be able to set whether the method should be
  interactive or not. The old functions call the methods as
  non-interactive.</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1636113601">- Add PackageKit-zypp-c++17.patch: Fix build failure when building
  with libzypp &gt; 17.28.5 and gcc &lt; 11
  (gh#hughsie/PackageKit/commit/1a6bb6ae6, bsc#1192349).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1637064000">- Rewrite prep phase to not use autopatch -M: SLE15/Leap15's RPM
  version does not support that syntax yet.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1637064001">- Apply all patches unconditonally: PackageKit-zypp-c++17.patch is
  merged in upstream git and thus does not justify to be
  conditionally applied.
- Switching back to autosetup, as this works without conditional
  patches.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1653048000">- Update to version 1.2.5:
  + Backends:
  - dnf:
    . Add support for autoremove flag when removing packages.
    . Searches by name and package details should be case
    insensitive.
    . Update appstream xml files if dnf_sack_add_repos() does
    the download.
  - zypp:
    . Add -std=c++1z cpp flags.
    . Fix crash when search string is NULL.
    . Fix package installation using undefined data.
  - Changes to alpm, apttcc, nix, and slack.
  + Bugfixes:
  - Install offline-update enablement symlink if Meson is new
    enough.
  - Move Wants= line for network-online.target.
  - Add flags to D-Bus offline invoking methods.
  - Properly handle allow-reinstall flag for installations.
  - Provide better error message if trying to install an
    installed package.
  - Wait until online to activate systemd service.
- Drop 505.patch, PackageKit-zypp-c++17.patch, and
  PackageKit-zypp-fix-crash-with-empty-search-string.patch: fixed
  upstream.</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1653566400">- Add PackageKit-zypp-locked-packages.patch: zypp: ignore locked
  packages(gh#hughsie/PackageKit#543, boo#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1656676800">- Add PackageKit-zypp-add-upgrade-system.patch: implement
  upgrade-system method(gh#hughsie/PackageKit/commit/930dd201b).</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1657368000">- Move the dbus-1 system.d file to /usr (bsc#1201347)</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1659528000">- Modified PackageKit.spec: bump libzypp dependency version to
  17.31.0.
- Add PackageKit-zypp-avoid-statuReset.patch: zypp: Avoid
  statuReset() on locked packages
  (gh#PackageKit/PackageKit/commit/dd1964255, bsc#1199895).
- Add PackageKit-zypp-disable-upgrade-system-in-sle.patch: zypp:
  Disable upgrade-system support in SLE
  (gh#PackageKit/PackageKit/commit/0fcd820c2).
- Add PackageKit-zypp-restore-pool-status-after-simulating-update.patch:
  zypp: restore pool status after simulating an update
  (gh#PackageKit/PackageKit/commit/2b61a6649, bsc#1199895).
- Add PackageKit-zypp-fix-is-tumbleweed-check.patch: zypp: build
  the pool before calling is_tumbleweed()
  (gh#PackageKit/PackageKit/commit/146890153).
- Add PackageKit-zypp-update-libzypp-dependency-version.patch:
  zypp: update libzypp dependency version
  (gh#PackageKit/PackageKit/commit/58c7c0285, bsc#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1662120000">- Add PackageKit-zypp-dont-refresh-before-searching.patch:
  zypp: Don't refresh repos before searching
  (gh#PackageKit/PackageKit/commit/58c7c0285, bsc#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1664193600">- Add PackageKit-zypp-dont-remove-locked-packages.patch: zypp:
  Check if packages are locked before removing
  (gh#PackageKit/PackageKit/commit/8649a07bc, bsc#1199895).
- Add PackageKit-zypp-add-repo-in-packageid.patch: zypp: add
  repository data in package id
  (gh#PackageKit/PackageKit/commit/8eb2ef0ae, bsc#1202585).
- Remove PackageKit-zypp-locked-packages.patch: reverted upstream
  (gh#PackageKit/PackageKit/commit/ed3e38043).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1673006400">- Add PackageKit-zypp-fix-ambiguous-filesystem-reference.patch:
  zypp: Fix ambiguous reference to 'filesystem' class
  (gh#PackageKit/PackageKit/commit/bb1409a71, bsc#1206687).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678708800">- Add PackageKit-fix-pkcon-permission.patch: trivial: Drop
  unnecessary x permission
  (gh#PackageKit/PackageKit/commit/47b7f97bc, bsc#1209138)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1689595200">- Add PackageKit-dynamic-export.patch: fix loading of modules when
  built using glib 2.70 (boo#1213309).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1699531200">- Update to version 1.2.8:
  + Libraries:
  - offline-updates:
    . Make package update list deduplication more efficient.
    . Add only one entry per package to 'offline-update-competed'
    file.
  - PkClient: Replace the GSimpleAsyncResult with the GTask API.
  - pk-client:
    . Fix use-before-set of PkProgress on cancellation.
    . Move cancellable disconnect to dispose.
    . Rework refcounting for PkClientState.
  + Backends: Changes to apt, dnf, PiSi and BSD backends.
- Changes from version 1.2.7:
  + New Features:
  - pkclient: Add an option to count download size with
    dependencies.
  - pk-transaction: Add support for getting the RemainingTime
    property.
  + Backends:
  - zypp: Fix ambiguous reference to 'filesystem' class.
  - Changes to dnf, apt, alpm backends.
- Changes from version 1.2.6:
  + New Features:
  - Expose transaction sender as read-only property on the bus.
  - pkmon: Display transaction sender binary name in log.
  - pk-transaction: Add Packages signal.
  - pk-transaction: Combine some D-Bus PropertiesChanged signal
    emissions.
  - pk-transaction: Add UpdateDetails signal.
  + Backends:
  - zypp:
    . implement upgrade-system method.
    . Clean up trailing whitespaces.
    . Avoid statuReset() on locked packages.
    . restore pool status after simulating an update.
    . Disable upgrade-system support in SLE.
    . build the pool before calling is_tumbleweed().
    . update libzypp dependency version.
    . Don't refresh repos before searching.
    . Check if packages are locked before removing.
    . add repository data in package id.
    . Remove trailing whitespace.
    + Changes to alpm, aptcc, apt, and nix backends.
- Rebase patches:
  + PackageKit-dnf-Add-support-for-AppStream-repodata-basenames-use.patch
  + PackageKit-dynamic-export.patch
  + PackageKit-zypp-disable-upgrade-system-in-sle.patch
- Drop upstream fixed patches:
  + PackageKit-zypp-add-repo-in-packageid.patch
  + PackageKit-zypp-add-upgrade-system.patch
  + PackageKit-zypp-avoid-statuReset.patch
  + PackageKit-zypp-dont-refresh-before-searching.patch
  + PackageKit-zypp-dont-remove-locked-packages.patch
  + PackageKit-zypp-fix-ambiguous-filesystem-reference.patch
  + PackageKit-zypp-fix-is-tumbleweed-check.patch
  + PackageKit-zypp-restore-pool-status-after-simulating-update.patch
  + PackageKit-zypp-update-libzypp-dependency-version.patch</changelog>
  <changelog author="Alynx Zhou &lt;alynx.zhou@suse.com&gt;" date="1704196800">- Add PackageKit-find-python-3-6.patch: Specify the Python version
  we need to build this package.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1709640000">- Drop baselibs.conf: the -32bit packages are no longer needed and
  have not been part of Tumbleweed for a while already (build for
  i586 only enabled in LegacyX86).</changelog>
  <changelog author="Alynx Zhou &lt;alynx.zhou@suse.com&gt;" date="1723550400">- Add PackageKit-mark-as-compulsory.patch: Prevent PackageKit from
  user uninstallable for most desktops (bsc#1226269).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1726142400">- Add PackageKit-zypp-dont-install-updateCandidateObj.patch:
  zypp: Mark the correct packages to-be-installed (bsc#1227389,
  gh#PackageKit/PackageKit/commit/209aa6295).</changelog>
</package>
<package pkgid="0ae387d9aadb345f0aea326860a6ebf0f4dfa90d22e381511b7f7c6beb09eeaa1021d45ce76e57399cf67b8faf00b67d462e27177dc03ba1654c1ab5afa90aa1" name="PackageKit-lang" arch="noarch">
  <version epoch="0" ver="1.2.8" rel="6.1"/>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1636113600">- Update to version 1.2.4:
  + Libraries:
  - Add specific error code when user declined interaction
  - Avoid spurious GObject::notify signal emissions
  - Correct 'cancellable' use in pk_client_repair_system_async()
  - Fix a leak on calling set_locale() a second time
  - Fix a possible use-after-free under pk_client_cancel_cb()
  - Improve thread safety on an operation cancellation
  + Backends:
  - dnf:
    . Read update information also when getting list of updates
    . Honor install_weak_deps=False if it is there
    . Use 'hy_query_get_advisory_pkgs', if available
  + New Features:
  - PkDetails: Add 'download-size' property
  - PkPackage: Add update severity property
  + Bugfixes:
  - Let the finish understand the 'cancelled' exit code
  - Make backends that use pk-backend-spawn work (#477)
  - Only set polkit interactive flag if method call has too
- Changes from version 1.2.3:
  + Backends:
  - alpm:
    . Add post transaction hook
    . Rename errno to alpm_err to avoid name clashes
  - aptcc: Auto-remove old kernels, unless configured otherwise
  - dnf: Add support for coercing upgrade to distupgrade
  - zypp:
    . Make sure pool is initialized at the beginning of some
    methods
    . Reset update mode after getting updates
  + Bugfixes:
  - Append to cron log instead of overwriting it
  - Cancel a transaction if calling Cancel fails or the daemon
    disappears
  - Do not crash when calling pk_dbus_get_uid() before D-Bus is
    setup
  - Fix all compiler warnings
  - Fix multilib conflicts in generated pk-enum-types.h
  - Free scheduler array correctly again
  - Remove large transaction size sanity check
- Drop patches fixed upstream:
  + PackageKit-zypp-cleanup-tmp-files.patch
  + PackageKit-zypp-reset-update-mode-after-get-updates.patch
  + PackageKit-dnf-Add-support-for-coercing-upgrade-to-distupgrade.patch
  + PackageKit-zypp-initialize-pool.patch
  + PackageKit-remove-transaction-size-limit.patch
  + PackageKit-cancel-transaction-if-daemon-disappears.patch
  + PackageKit-dnf-ignore-weak-deps.patch
- Add 505.patch: pk-offline: Add flags to D-Bus invoking methods.
  That's currently to be able to set whether the method should be
  interactive or not. The old functions call the methods as
  non-interactive.</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1636113601">- Add PackageKit-zypp-c++17.patch: Fix build failure when building
  with libzypp &gt; 17.28.5 and gcc &lt; 11
  (gh#hughsie/PackageKit/commit/1a6bb6ae6, bsc#1192349).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1637064000">- Rewrite prep phase to not use autopatch -M: SLE15/Leap15's RPM
  version does not support that syntax yet.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1637064001">- Apply all patches unconditonally: PackageKit-zypp-c++17.patch is
  merged in upstream git and thus does not justify to be
  conditionally applied.
- Switching back to autosetup, as this works without conditional
  patches.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1653048000">- Update to version 1.2.5:
  + Backends:
  - dnf:
    . Add support for autoremove flag when removing packages.
    . Searches by name and package details should be case
    insensitive.
    . Update appstream xml files if dnf_sack_add_repos() does
    the download.
  - zypp:
    . Add -std=c++1z cpp flags.
    . Fix crash when search string is NULL.
    . Fix package installation using undefined data.
  - Changes to alpm, apttcc, nix, and slack.
  + Bugfixes:
  - Install offline-update enablement symlink if Meson is new
    enough.
  - Move Wants= line for network-online.target.
  - Add flags to D-Bus offline invoking methods.
  - Properly handle allow-reinstall flag for installations.
  - Provide better error message if trying to install an
    installed package.
  - Wait until online to activate systemd service.
- Drop 505.patch, PackageKit-zypp-c++17.patch, and
  PackageKit-zypp-fix-crash-with-empty-search-string.patch: fixed
  upstream.</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1653566400">- Add PackageKit-zypp-locked-packages.patch: zypp: ignore locked
  packages(gh#hughsie/PackageKit#543, boo#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1656676800">- Add PackageKit-zypp-add-upgrade-system.patch: implement
  upgrade-system method(gh#hughsie/PackageKit/commit/930dd201b).</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1657368000">- Move the dbus-1 system.d file to /usr (bsc#1201347)</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1659528000">- Modified PackageKit.spec: bump libzypp dependency version to
  17.31.0.
- Add PackageKit-zypp-avoid-statuReset.patch: zypp: Avoid
  statuReset() on locked packages
  (gh#PackageKit/PackageKit/commit/dd1964255, bsc#1199895).
- Add PackageKit-zypp-disable-upgrade-system-in-sle.patch: zypp:
  Disable upgrade-system support in SLE
  (gh#PackageKit/PackageKit/commit/0fcd820c2).
- Add PackageKit-zypp-restore-pool-status-after-simulating-update.patch:
  zypp: restore pool status after simulating an update
  (gh#PackageKit/PackageKit/commit/2b61a6649, bsc#1199895).
- Add PackageKit-zypp-fix-is-tumbleweed-check.patch: zypp: build
  the pool before calling is_tumbleweed()
  (gh#PackageKit/PackageKit/commit/146890153).
- Add PackageKit-zypp-update-libzypp-dependency-version.patch:
  zypp: update libzypp dependency version
  (gh#PackageKit/PackageKit/commit/58c7c0285, bsc#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1662120000">- Add PackageKit-zypp-dont-refresh-before-searching.patch:
  zypp: Don't refresh repos before searching
  (gh#PackageKit/PackageKit/commit/58c7c0285, bsc#1199895).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1664193600">- Add PackageKit-zypp-dont-remove-locked-packages.patch: zypp:
  Check if packages are locked before removing
  (gh#PackageKit/PackageKit/commit/8649a07bc, bsc#1199895).
- Add PackageKit-zypp-add-repo-in-packageid.patch: zypp: add
  repository data in package id
  (gh#PackageKit/PackageKit/commit/8eb2ef0ae, bsc#1202585).
- Remove PackageKit-zypp-locked-packages.patch: reverted upstream
  (gh#PackageKit/PackageKit/commit/ed3e38043).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1673006400">- Add PackageKit-zypp-fix-ambiguous-filesystem-reference.patch:
  zypp: Fix ambiguous reference to 'filesystem' class
  (gh#PackageKit/PackageKit/commit/bb1409a71, bsc#1206687).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1678708800">- Add PackageKit-fix-pkcon-permission.patch: trivial: Drop
  unnecessary x permission
  (gh#PackageKit/PackageKit/commit/47b7f97bc, bsc#1209138)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1689595200">- Add PackageKit-dynamic-export.patch: fix loading of modules when
  built using glib 2.70 (boo#1213309).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1699531200">- Update to version 1.2.8:
  + Libraries:
  - offline-updates:
    . Make package update list deduplication more efficient.
    . Add only one entry per package to 'offline-update-competed'
    file.
  - PkClient: Replace the GSimpleAsyncResult with the GTask API.
  - pk-client:
    . Fix use-before-set of PkProgress on cancellation.
    . Move cancellable disconnect to dispose.
    . Rework refcounting for PkClientState.
  + Backends: Changes to apt, dnf, PiSi and BSD backends.
- Changes from version 1.2.7:
  + New Features:
  - pkclient: Add an option to count download size with
    dependencies.
  - pk-transaction: Add support for getting the RemainingTime
    property.
  + Backends:
  - zypp: Fix ambiguous reference to 'filesystem' class.
  - Changes to dnf, apt, alpm backends.
- Changes from version 1.2.6:
  + New Features:
  - Expose transaction sender as read-only property on the bus.
  - pkmon: Display transaction sender binary name in log.
  - pk-transaction: Add Packages signal.
  - pk-transaction: Combine some D-Bus PropertiesChanged signal
    emissions.
  - pk-transaction: Add UpdateDetails signal.
  + Backends:
  - zypp:
    . implement upgrade-system method.
    . Clean up trailing whitespaces.
    . Avoid statuReset() on locked packages.
    . restore pool status after simulating an update.
    . Disable upgrade-system support in SLE.
    . build the pool before calling is_tumbleweed().
    . update libzypp dependency version.
    . Don't refresh repos before searching.
    . Check if packages are locked before removing.
    . add repository data in package id.
    . Remove trailing whitespace.
    + Changes to alpm, aptcc, apt, and nix backends.
- Rebase patches:
  + PackageKit-dnf-Add-support-for-AppStream-repodata-basenames-use.patch
  + PackageKit-dynamic-export.patch
  + PackageKit-zypp-disable-upgrade-system-in-sle.patch
- Drop upstream fixed patches:
  + PackageKit-zypp-add-repo-in-packageid.patch
  + PackageKit-zypp-add-upgrade-system.patch
  + PackageKit-zypp-avoid-statuReset.patch
  + PackageKit-zypp-dont-refresh-before-searching.patch
  + PackageKit-zypp-dont-remove-locked-packages.patch
  + PackageKit-zypp-fix-ambiguous-filesystem-reference.patch
  + PackageKit-zypp-fix-is-tumbleweed-check.patch
  + PackageKit-zypp-restore-pool-status-after-simulating-update.patch
  + PackageKit-zypp-update-libzypp-dependency-version.patch</changelog>
  <changelog author="Alynx Zhou &lt;alynx.zhou@suse.com&gt;" date="1704196800">- Add PackageKit-find-python-3-6.patch: Specify the Python version
  we need to build this package.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1709640000">- Drop baselibs.conf: the -32bit packages are no longer needed and
  have not been part of Tumbleweed for a while already (build for
  i586 only enabled in LegacyX86).</changelog>
  <changelog author="Alynx Zhou &lt;alynx.zhou@suse.com&gt;" date="1723550400">- Add PackageKit-mark-as-compulsory.patch: Prevent PackageKit from
  user uninstallable for most desktops (bsc#1226269).</changelog>
  <changelog author="Jonathan Kang &lt;songchuan.kang@suse.com&gt;" date="1726142400">- Add PackageKit-zypp-dont-install-updateCandidateObj.patch:
  zypp: Mark the correct packages to-be-installed (bsc#1227389,
  gh#PackageKit/PackageKit/commit/209aa6295).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1728993600">- Drop rcFOO symlinks (PED-266)
- Drop usage of update-alternatives, but simplify installation of
  /usr/libexec/gst-install-plugins-helper as a direct symlink to
  pk-gstreamer-install.</changelog>
</package>
<package pkgid="a38827150885ba49c95f3f212bcbd52d39a2663a76eef56c03c532df73d3766566beac33250d69ce36a5f755182a0f7c16821529ce1d8717b1d72003641c946b" name="QtAV" arch="i586">
  <version epoch="0" ver="1.13.0" rel="4.0.2.1.sr20241103"/>
  <changelog author="adrian@suse.de" date="1484136000">- initial package qt5 only for version 1.11.0
- based on packman 1.10.0 version from avvissu@yandex.ru
- disable CUDA support since it needs GPL incompatible headers</changelog>
  <changelog author="jengelh@inai.de" date="1486296000">- Description updates
- Rename %soname to %sover to better reflect its use
- Drop manual Requires that are unnecessary because autodetected</changelog>
  <changelog author="wbauer@tmo.at" date="1498132800">- Update to 1.12.0
  * CMake support
  * Fix iOS build
  * Fix AVPacket memory leak
  * Geometry &amp; GeometryRenderer class is public
  * PAL8, XYZ color format support
  * Fix OpenGL background color
  * Fix external clock error after pause
  * VA-API encoder support (ffmpeg&gt;=3)
  * Other improvements, fixes, and untested features</changelog>
  <changelog author="lbeltrame@kde.org" date="1530273600">- Add disable-use-of-deprecated-header.patch and fix-build-newer-ffmpeg.patch
  from upstream:
  * Fix building with newer ffmpeg</changelog>
  <changelog author="wbauer@tmo.at" date="1562846400">- Update to 1.13.0
  * Add python bindings
  * More apis for qml player
  * Auto rotate video
  * Apple store
  * Fix ios plugin not found
  * Support chapters
  * Muxer, encoder, transcoder improvements
  * Compatible with new ffmpeg
  * videotoolbox: hevc,
  * cuda: new devices
  * Android: no longer depends on private qt module
  * Fix opensl error
  * mediacodec: 0-copy via a plugin from https://github.com/wang-bin/mdk-sdk
- Drop patches merged upstream:
  * fix-build-newer-ffmpeg.patch
  * disable-use-of-deprecated-header.patch</changelog>
  <changelog author="Christophe Giboudeaux &lt;christophe@krop.fr&gt;" date="1575547200">- Add 0001-Fix-build-with-Qt-5.14.patch</changelog>
  <changelog author="Christophe Giboudeaux &lt;christophe@krop.fr&gt;" date="1585828800">- Add patch to fix build with Qt 5.15:
  * 0001-Fix-build-with-Qt-5.15.patch</changelog>
  <changelog author="Christophe Giboudeaux &lt;christophe@krop.fr&gt;" date="1606132800">- Stop using the %desktop_database_* macros.</changelog>
</package>
<package pkgid="1256a8eda78fcb7dedb55a31ce934b7d1eb1c2de5b4a694c182c3aaa1069b7b7e5e5e2effc18ac40ded28f6d796993ce4e7459996a924a9ef30519220718f6f6" name="QtAV" arch="src">
  <version epoch="0" ver="1.13.0" rel="4.0.2.1.sr20241103"/>
  <changelog author="adrian@suse.de" date="1484136000">- initial package qt5 only for version 1.11.0
- based on packman 1.10.0 version from avvissu@yandex.ru
- disable CUDA support since it needs GPL incompatible headers</changelog>
  <changelog author="jengelh@inai.de" date="1486296000">- Description updates
- Rename %soname to %sover to better reflect its use
- Drop manual Requires that are unnecessary because autodetected</changelog>
  <changelog author="wbauer@tmo.at" date="1498132800">- Update to 1.12.0
  * CMake support
  * Fix iOS build
  * Fix AVPacket memory leak
  * Geometry &amp; GeometryRenderer class is public
  * PAL8, XYZ color format support
  * Fix OpenGL background color
  * Fix external clock error after pause
  * VA-API encoder support (ffmpeg&gt;=3)
  * Other improvements, fixes, and untested features</changelog>
  <changelog author="lbeltrame@kde.org" date="1530273600">- Add disable-use-of-deprecated-header.patch and fix-build-newer-ffmpeg.patch
  from upstream:
  * Fix building with newer ffmpeg</changelog>
  <changelog author="wbauer@tmo.at" date="1562846400">- Update to 1.13.0
  * Add python bindings
  * More apis for qml player
  * Auto rotate video
  * Apple store
  * Fix ios plugin not found
  * Support chapters
  * Muxer, encoder, transcoder improvements
  * Compatible with new ffmpeg
  * videotoolbox: hevc,
  * cuda: new devices
  * Android: no longer depends on private qt module
  * Fix opensl error
  * mediacodec: 0-copy via a plugin from https://github.com/wang-bin/mdk-sdk
- Drop patches merged upstream:
  * fix-build-newer-ffmpeg.patch
  * disable-use-of-deprecated-header.patch</changelog>
  <changelog author="Christophe Giboudeaux &lt;christophe@krop.fr&gt;" date="1575547200">- Add 0001-Fix-build-with-Qt-5.14.patch</changelog>
  <changelog author="Christophe Giboudeaux &lt;christophe@krop.fr&gt;" date="1585828800">- Add patch to fix build with Qt 5.15:
  * 0001-Fix-build-with-Qt-5.15.patch</changelog>
  <changelog author="Christophe Giboudeaux &lt;christophe@krop.fr&gt;" date="1606132800">- Stop using the %desktop_database_* macros.</changelog>
</package>
<package pkgid="25a325d94dc486588988fe4679cce39b3ec36d6ac771211ca06ee5fd3e7e82e347477a499c23b4663a2072b8bfd0f62f67cbac7a3381b1f954e0e17f33335041" name="QtAV" arch="x86_64">
  <version epoch="0" ver="1.13.0" rel="4.0.2.1.sr20241103"/>
  <changelog author="adrian@suse.de" date="1484136000">- initial package qt5 only for version 1.11.0
- based on packman 1.10.0 version from avvissu@yandex.ru
- disable CUDA support since it needs GPL incompatible headers</changelog>
  <changelog author="jengelh@inai.de" date="1486296000">- Description updates
- Rename %soname to %sover to better reflect its use
- Drop manual Requires that are unnecessary because autodetected</changelog>
  <changelog author="wbauer@tmo.at" date="1498132800">- Update to 1.12.0
  * CMake support
  * Fix iOS build
  * Fix AVPacket memory leak
  * Geometry &amp; GeometryRenderer class is public
  * PAL8, XYZ color format support
  * Fix OpenGL background color
  * Fix external clock error after pause
  * VA-API encoder support (ffmpeg&gt;=3)
  * Other improvements, fixes, and untested features</changelog>
  <changelog author="lbeltrame@kde.org" date="1530273600">- Add disable-use-of-deprecated-header.patch and fix-build-newer-ffmpeg.patch
  from upstream:
  * Fix building with newer ffmpeg</changelog>
  <changelog author="wbauer@tmo.at" date="1562846400">- Update to 1.13.0
  * Add python bindings
  * More apis for qml player
  * Auto rotate video
  * Apple store
  * Fix ios plugin not found
  * Support chapters
  * Muxer, encoder, transcoder improvements
  * Compatible with new ffmpeg
  * videotoolbox: hevc,
  * cuda: new devices
  * Android: no longer depends on private qt module
  * Fix opensl error
  * mediacodec: 0-copy via a plugin from https://github.com/wang-bin/mdk-sdk
- Drop patches merged upstream:
  * fix-build-newer-ffmpeg.patch
  * disable-use-of-deprecated-header.patch</changelog>
  <changelog author="Christophe Giboudeaux &lt;christophe@krop.fr&gt;" date="1575547200">- Add 0001-Fix-build-with-Qt-5.14.patch</changelog>
  <changelog author="Christophe Giboudeaux &lt;christophe@krop.fr&gt;" date="1585828800">- Add patch to fix build with Qt 5.15:
  * 0001-Fix-build-with-Qt-5.15.patch</changelog>
  <changelog author="Christophe Giboudeaux &lt;christophe@krop.fr&gt;" date="1606132800">- Stop using the %desktop_database_* macros.</changelog>
</package>
<package pkgid="34b2dd1194dd880fa4cdb9e61fa8d7e4a7411b8bb772948608d78e87850a1b7f455a07ebe94f7191d90c92b2de55174b4877a71c565f6dd18e92323ca4260201" name="QtAV-debuginfo" arch="i586">
  <version epoch="0" ver="1.13.0" rel="4.0.2.1.sr20241103"/>
  <changelog author="adrian@suse.de" date="1484136000">- initial package qt5 only for version 1.11.0
- based on packman 1.10.0 version from avvissu@yandex.ru
- disable CUDA support since it needs GPL incompatible headers</changelog>
  <changelog author="jengelh@inai.de" date="1486296000">- Description updates
- Rename %soname to %sover to better reflect its use
- Drop manual Requires that are unnecessary because autodetected</changelog>
  <changelog author="wbauer@tmo.at" date="1498132800">- Update to 1.12.0
  * CMake support
  * Fix iOS build
  * Fix AVPacket memory leak
  * Geometry &amp; GeometryRenderer class is public
  * PAL8, XYZ color format support
  * Fix OpenGL background color
  * Fix external clock error after pause
  * VA-API encoder support (ffmpeg&gt;=3)
  * Other improvements, fixes, and untested features</changelog>
  <changelog author="lbeltrame@kde.org" date="1530273600">- Add disable-use-of-deprecated-header.patch and fix-build-newer-ffmpeg.patch
  from upstream:
  * Fix building with newer ffmpeg</changelog>
  <changelog author="wbauer@tmo.at" date="1562846400">- Update to 1.13.0
  * Add python bindings
  * More apis for qml player
  * Auto rotate video
  * Apple store
  * Fix ios plugin not found
  * Support chapters
  * Muxer, encoder, transcoder improvements
  * Compatible with new ffmpeg
  * videotoolbox: hevc,
  * cuda: new devices
  * Android: no longer depends on private qt module
  * Fix opensl error
  * mediacodec: 0-copy via a plugin from https://github.com/wang-bin/mdk-sdk
- Drop patches merged upstream:
  * fix-build-newer-ffmpeg.patch
  * disable-use-of-deprecated-header.patch</changelog>
  <changelog author="Christophe Giboudeaux &lt;christophe@krop.fr&gt;" date="1575547200">- Add 0001-Fix-build-with-Qt-5.14.patch</changelog>
  <changelog author="Christophe Giboudeaux &lt;christophe@krop.fr&gt;" date="1585828800">- Add patch to fix build with Qt 5.15:
  * 0001-Fix-build-with-Qt-5.15.patch</changelog>
  <changelog author="Christophe Giboudeaux &lt;christophe@krop.fr&gt;" date="1606132800">- Stop using the %desktop_database_* macros.</changelog>
</package>
<package pkgid="d88a97477e3e8d57299b2f8a6709d72b4c281681b1dbe656e8e6bd849670525e2954ae1e55850538fc326f21c96a2c813c6f0a06747b8a389758853e9914549a" name="QtAV-debuginfo" arch="x86_64">
  <version epoch="0" ver="1.13.0" rel="4.0.2.1.sr20241103"/>
  <changelog author="adrian@suse.de" date="1484136000">- initial package qt5 only for version 1.11.0
- based on packman 1.10.0 version from avvissu@yandex.ru
- disable CUDA support since it needs GPL incompatible headers</changelog>
  <changelog author="jengelh@inai.de" date="1486296000">- Description updates
- Rename %soname to %sover to better reflect its use
- Drop manual Requires that are unnecessary because autodetected</changelog>
  <changelog author="wbauer@tmo.at" date="1498132800">- Update to 1.12.0
  * CMake support
  * Fix iOS build
  * Fix AVPacket memory leak
  * Geometry &amp; GeometryRenderer class is public
  * PAL8, XYZ color format support
  * Fix OpenGL background color
  * Fix external clock error after pause
  * VA-API encoder support (ffmpeg&gt;=3)
  * Other improvements, fixes, and untested features</changelog>
  <changelog author="lbeltrame@kde.org" date="1530273600">- Add disable-use-of-deprecated-header.patch and fix-build-newer-ffmpeg.patch
  from upstream:
  * Fix building with newer ffmpeg</changelog>
  <changelog author="wbauer@tmo.at" date="1562846400">- Update to 1.13.0
  * Add python bindings
  * More apis for qml player
  * Auto rotate video
  * Apple store
  * Fix ios plugin not found
  * Support chapters
  * Muxer, encoder, transcoder improvements
  * Compatible with new ffmpeg
  * videotoolbox: hevc,
  * cuda: new devices
  * Android: no longer depends on private qt module
  * Fix opensl error
  * mediacodec: 0-copy via a plugin from https://github.com/wang-bin/mdk-sdk
- Drop patches merged upstream:
  * fix-build-newer-ffmpeg.patch
  * disable-use-of-deprecated-header.patch</changelog>
  <changelog author="Christophe Giboudeaux &lt;christophe@krop.fr&gt;" date="1575547200">- Add 0001-Fix-build-with-Qt-5.14.patch</changelog>
  <changelog author="Christophe Giboudeaux &lt;christophe@krop.fr&gt;" date="1585828800">- Add patch to fix build with Qt 5.15:
  * 0001-Fix-build-with-Qt-5.15.patch</changelog>
  <changelog author="Christophe Giboudeaux &lt;christophe@krop.fr&gt;" date="1606132800">- Stop using the %desktop_database_* macros.</changelog>
</package>
<package pkgid="cc679bbaa21f1ded12f20b630eda2c3e4fed951d731ac9a70b048b50ba8d2bc9ea4e6f90a41d80d0a3f1bd6df121407893c9e78b6b0fd22ff616636a43e5cdba" name="QtAV-debugsource" arch="i586">
  <version epoch="0" ver="1.13.0" rel="4.0.2.1.sr20241103"/>
  <changelog author="adrian@suse.de" date="1484136000">- initial package qt5 only for version 1.11.0
- based on packman 1.10.0 version from avvissu@yandex.ru
- disable CUDA support since it needs GPL incompatible headers</changelog>
  <changelog author="jengelh@inai.de" date="1486296000">- Description updates
- Rename %soname to %sover to better reflect its use
- Drop manual Requires that are unnecessary because autodetected</changelog>
  <changelog author="wbauer@tmo.at" date="1498132800">- Update to 1.12.0
  * CMake support
  * Fix iOS build
  * Fix AVPacket memory leak
  * Geometry &amp; GeometryRenderer class is public
  * PAL8, XYZ color format support
  * Fix OpenGL background color
  * Fix external clock error after pause
  * VA-API encoder support (ffmpeg&gt;=3)
  * Other improvements, fixes, and untested features</changelog>
  <changelog author="lbeltrame@kde.org" date="1530273600">- Add disable-use-of-deprecated-header.patch and fix-build-newer-ffmpeg.patch
  from upstream:
  * Fix building with newer ffmpeg</changelog>
  <changelog author="wbauer@tmo.at" date="1562846400">- Update to 1.13.0
  * Add python bindings
  * More apis for qml player
  * Auto rotate video
  * Apple store
  * Fix ios plugin not found
  * Support chapters
  * Muxer, encoder, transcoder improvements
  * Compatible with new ffmpeg
  * videotoolbox: hevc,
  * cuda: new devices
  * Android: no longer depends on private qt module
  * Fix opensl error
  * mediacodec: 0-copy via a plugin from https://github.com/wang-bin/mdk-sdk
- Drop patches merged upstream:
  * fix-build-newer-ffmpeg.patch
  * disable-use-of-deprecated-header.patch</changelog>
  <changelog author="Christophe Giboudeaux &lt;christophe@krop.fr&gt;" date="1575547200">- Add 0001-Fix-build-with-Qt-5.14.patch</changelog>
  <changelog author="Christophe Giboudeaux &lt;christophe@krop.fr&gt;" date="1585828800">- Add patch to fix build with Qt 5.15:
  * 0001-Fix-build-with-Qt-5.15.patch</changelog>
  <changelog author="Christophe Giboudeaux &lt;christophe@krop.fr&gt;" date="1606132800">- Stop using the %desktop_database_* macros.</changelog>
</package>
<package pkgid="f1a88285c6e4f27e54bb013e3671d4c24e4089348c96937520e72564034b01fdae668223f897a830b53ea5d79a28bfecb7f67f1bd947a7c7126f917fc9f53459" name="QtAV-debugsource" arch="x86_64">
  <version epoch="0" ver="1.13.0" rel="4.0.2.1.sr20241103"/>
  <changelog author="adrian@suse.de" date="1484136000">- initial package qt5 only for version 1.11.0
- based on packman 1.10.0 version from avvissu@yandex.ru
- disable CUDA support since it needs GPL incompatible headers</changelog>
  <changelog author="jengelh@inai.de" date="1486296000">- Description updates
- Rename %soname to %sover to better reflect its use
- Drop manual Requires that are unnecessary because autodetected</changelog>
  <changelog author="wbauer@tmo.at" date="1498132800">- Update to 1.12.0
  * CMake support
  * Fix iOS build
  * Fix AVPacket memory leak
  * Geometry &amp; GeometryRenderer class is public
  * PAL8, XYZ color format support
  * Fix OpenGL background color
  * Fix external clock error after pause
  * VA-API encoder support (ffmpeg&gt;=3)
  * Other improvements, fixes, and untested features</changelog>
  <changelog author="lbeltrame@kde.org" date="1530273600">- Add disable-use-of-deprecated-header.patch and fix-build-newer-ffmpeg.patch
  from upstream:
  * Fix building with newer ffmpeg</changelog>
  <changelog author="wbauer@tmo.at" date="1562846400">- Update to 1.13.0
  * Add python bindings
  * More apis for qml player
  * Auto rotate video
  * Apple store
  * Fix ios plugin not found
  * Support chapters
  * Muxer, encoder, transcoder improvements
  * Compatible with new ffmpeg
  * videotoolbox: hevc,
  * cuda: new devices
  * Android: no longer depends on private qt module
  * Fix opensl error
  * mediacodec: 0-copy via a plugin from https://github.com/wang-bin/mdk-sdk
- Drop patches merged upstream:
  * fix-build-newer-ffmpeg.patch
  * disable-use-of-deprecated-header.patch</changelog>
  <changelog author="Christophe Giboudeaux &lt;christophe@krop.fr&gt;" date="1575547200">- Add 0001-Fix-build-with-Qt-5.14.patch</changelog>
  <changelog author="Christophe Giboudeaux &lt;christophe@krop.fr&gt;" date="1585828800">- Add patch to fix build with Qt 5.15:
  * 0001-Fix-build-with-Qt-5.15.patch</changelog>
  <changelog author="Christophe Giboudeaux &lt;christophe@krop.fr&gt;" date="1606132800">- Stop using the %desktop_database_* macros.</changelog>
</package>
<package pkgid="0bc08b587ca91fe50feb83c85080e3809a0025a57c88b02236d779f879b9e646b9b8251a169fc6e7a4fc3d75636dfa1a2d3ef210486118987c9b88160592c1bd" name="QtAV-devel" arch="i586">
  <version epoch="0" ver="1.13.0" rel="4.0.2.1.sr20241103"/>
  <changelog author="adrian@suse.de" date="1484136000">- initial package qt5 only for version 1.11.0
- based on packman 1.10.0 version from avvissu@yandex.ru
- disable CUDA support since it needs GPL incompatible headers</changelog>
  <changelog author="jengelh@inai.de" date="1486296000">- Description updates
- Rename %soname to %sover to better reflect its use
- Drop manual Requires that are unnecessary because autodetected</changelog>
  <changelog author="wbauer@tmo.at" date="1498132800">- Update to 1.12.0
  * CMake support
  * Fix iOS build
  * Fix AVPacket memory leak
  * Geometry &amp; GeometryRenderer class is public
  * PAL8, XYZ color format support
  * Fix OpenGL background color
  * Fix external clock error after pause
  * VA-API encoder support (ffmpeg&gt;=3)
  * Other improvements, fixes, and untested features</changelog>
  <changelog author="lbeltrame@kde.org" date="1530273600">- Add disable-use-of-deprecated-header.patch and fix-build-newer-ffmpeg.patch
  from upstream:
  * Fix building with newer ffmpeg</changelog>
  <changelog author="wbauer@tmo.at" date="1562846400">- Update to 1.13.0
  * Add python bindings
  * More apis for qml player
  * Auto rotate video
  * Apple store
  * Fix ios plugin not found
  * Support chapters
  * Muxer, encoder, transcoder improvements
  * Compatible with new ffmpeg
  * videotoolbox: hevc,
  * cuda: new devices
  * Android: no longer depends on private qt module
  * Fix opensl error
  * mediacodec: 0-copy via a plugin from https://github.com/wang-bin/mdk-sdk
- Drop patches merged upstream:
  * fix-build-newer-ffmpeg.patch
  * disable-use-of-deprecated-header.patch</changelog>
  <changelog author="Christophe Giboudeaux &lt;christophe@krop.fr&gt;" date="1575547200">- Add 0001-Fix-build-with-Qt-5.14.patch</changelog>
  <changelog author="Christophe Giboudeaux &lt;christophe@krop.fr&gt;" date="1585828800">- Add patch to fix build with Qt 5.15:
  * 0001-Fix-build-with-Qt-5.15.patch</changelog>
  <changelog author="Christophe Giboudeaux &lt;christophe@krop.fr&gt;" date="1606132800">- Stop using the %desktop_database_* macros.</changelog>
</package>
<package pkgid="fb54442e727aa51f81ae8ca42abc9256eb0d6258ca7da58c983ed298b6bf8ff2f20bea8896507a24bfc8cdd90c854394d9e7a18fb1f6ce2dfc4c6104c5b99804" name="QtAV-devel" arch="x86_64">
  <version epoch="0" ver="1.13.0" rel="4.0.2.1.sr20241103"/>
  <changelog author="adrian@suse.de" date="1484136000">- initial package qt5 only for version 1.11.0
- based on packman 1.10.0 version from avvissu@yandex.ru
- disable CUDA support since it needs GPL incompatible headers</changelog>
  <changelog author="jengelh@inai.de" date="1486296000">- Description updates
- Rename %soname to %sover to better reflect its use
- Drop manual Requires that are unnecessary because autodetected</changelog>
  <changelog author="wbauer@tmo.at" date="1498132800">- Update to 1.12.0
  * CMake support
  * Fix iOS build
  * Fix AVPacket memory leak
  * Geometry &amp; GeometryRenderer class is public
  * PAL8, XYZ color format support
  * Fix OpenGL background color
  * Fix external clock error after pause
  * VA-API encoder support (ffmpeg&gt;=3)
  * Other improvements, fixes, and untested features</changelog>
  <changelog author="lbeltrame@kde.org" date="1530273600">- Add disable-use-of-deprecated-header.patch and fix-build-newer-ffmpeg.patch
  from upstream:
  * Fix building with newer ffmpeg</changelog>
  <changelog author="wbauer@tmo.at" date="1562846400">- Update to 1.13.0
  * Add python bindings
  * More apis for qml player
  * Auto rotate video
  * Apple store
  * Fix ios plugin not found
  * Support chapters
  * Muxer, encoder, transcoder improvements
  * Compatible with new ffmpeg
  * videotoolbox: hevc,
  * cuda: new devices
  * Android: no longer depends on private qt module
  * Fix opensl error
  * mediacodec: 0-copy via a plugin from https://github.com/wang-bin/mdk-sdk
- Drop patches merged upstream:
  * fix-build-newer-ffmpeg.patch
  * disable-use-of-deprecated-header.patch</changelog>
  <changelog author="Christophe Giboudeaux &lt;christophe@krop.fr&gt;" date="1575547200">- Add 0001-Fix-build-with-Qt-5.14.patch</changelog>
  <changelog author="Christophe Giboudeaux &lt;christophe@krop.fr&gt;" date="1585828800">- Add patch to fix build with Qt 5.15:
  * 0001-Fix-build-with-Qt-5.15.patch</changelog>
  <changelog author="Christophe Giboudeaux &lt;christophe@krop.fr&gt;" date="1606132800">- Stop using the %desktop_database_* macros.</changelog>
</package>
<package pkgid="156a09ca5f084606b5f76aee5206e797620107bcf9be844765df99dcf59fd4f3b65335303f81a46283efc331975a428703a4e208ed57c628d89eacc8803f31e8" name="QtAV-players" arch="i586">
  <version epoch="0" ver="1.13.0" rel="4.0.2.1.sr20241103"/>
  <changelog author="adrian@suse.de" date="1484136000">- initial package qt5 only for version 1.11.0
- based on packman 1.10.0 version from avvissu@yandex.ru
- disable CUDA support since it needs GPL incompatible headers</changelog>
  <changelog author="jengelh@inai.de" date="1486296000">- Description updates
- Rename %soname to %sover to better reflect its use
- Drop manual Requires that are unnecessary because autodetected</changelog>
  <changelog author="wbauer@tmo.at" date="1498132800">- Update to 1.12.0
  * CMake support
  * Fix iOS build
  * Fix AVPacket memory leak
  * Geometry &amp; GeometryRenderer class is public
  * PAL8, XYZ color format support
  * Fix OpenGL background color
  * Fix external clock error after pause
  * VA-API encoder support (ffmpeg&gt;=3)
  * Other improvements, fixes, and untested features</changelog>
  <changelog author="lbeltrame@kde.org" date="1530273600">- Add disable-use-of-deprecated-header.patch and fix-build-newer-ffmpeg.patch
  from upstream:
  * Fix building with newer ffmpeg</changelog>
  <changelog author="wbauer@tmo.at" date="1562846400">- Update to 1.13.0
  * Add python bindings
  * More apis for qml player
  * Auto rotate video
  * Apple store
  * Fix ios plugin not found
  * Support chapters
  * Muxer, encoder, transcoder improvements
  * Compatible with new ffmpeg
  * videotoolbox: hevc,
  * cuda: new devices
  * Android: no longer depends on private qt module
  * Fix opensl error
  * mediacodec: 0-copy via a plugin from https://github.com/wang-bin/mdk-sdk
- Drop patches merged upstream:
  * fix-build-newer-ffmpeg.patch
  * disable-use-of-deprecated-header.patch</changelog>
  <changelog author="Christophe Giboudeaux &lt;christophe@krop.fr&gt;" date="1575547200">- Add 0001-Fix-build-with-Qt-5.14.patch</changelog>
  <changelog author="Christophe Giboudeaux &lt;christophe@krop.fr&gt;" date="1585828800">- Add patch to fix build with Qt 5.15:
  * 0001-Fix-build-with-Qt-5.15.patch</changelog>
  <changelog author="Christophe Giboudeaux &lt;christophe@krop.fr&gt;" date="1606132800">- Stop using the %desktop_database_* macros.</changelog>
</package>
<package pkgid="b649fc7114bbca2ad2a976b60da4a817107bc9509248a367c4f2f1fab898f546682e60589615b4bf7c9a10659ce5cdea95243cf714af17f42fe3be7ee3433e91" name="QtAV-players" arch="x86_64">
  <version epoch="0" ver="1.13.0" rel="4.0.2.1.sr20241103"/>
  <changelog author="adrian@suse.de" date="1484136000">- initial package qt5 only for version 1.11.0
- based on packman 1.10.0 version from avvissu@yandex.ru
- disable CUDA support since it needs GPL incompatible headers</changelog>
  <changelog author="jengelh@inai.de" date="1486296000">- Description updates
- Rename %soname to %sover to better reflect its use
- Drop manual Requires that are unnecessary because autodetected</changelog>
  <changelog author="wbauer@tmo.at" date="1498132800">- Update to 1.12.0
  * CMake support
  * Fix iOS build
  * Fix AVPacket memory leak
  * Geometry &amp; GeometryRenderer class is public
  * PAL8, XYZ color format support
  * Fix OpenGL background color
  * Fix external clock error after pause
  * VA-API encoder support (ffmpeg&gt;=3)
  * Other improvements, fixes, and untested features</changelog>
  <changelog author="lbeltrame@kde.org" date="1530273600">- Add disable-use-of-deprecated-header.patch and fix-build-newer-ffmpeg.patch
  from upstream:
  * Fix building with newer ffmpeg</changelog>
  <changelog author="wbauer@tmo.at" date="1562846400">- Update to 1.13.0
  * Add python bindings
  * More apis for qml player
  * Auto rotate video
  * Apple store
  * Fix ios plugin not found
  * Support chapters
  * Muxer, encoder, transcoder improvements
  * Compatible with new ffmpeg
  * videotoolbox: hevc,
  * cuda: new devices
  * Android: no longer depends on private qt module
  * Fix opensl error
  * mediacodec: 0-copy via a plugin from https://github.com/wang-bin/mdk-sdk
- Drop patches merged upstream:
  * fix-build-newer-ffmpeg.patch
  * disable-use-of-deprecated-header.patch</changelog>
  <changelog author="Christophe Giboudeaux &lt;christophe@krop.fr&gt;" date="1575547200">- Add 0001-Fix-build-with-Qt-5.14.patch</changelog>
  <changelog author="Christophe Giboudeaux &lt;christophe@krop.fr&gt;" date="1585828800">- Add patch to fix build with Qt 5.15:
  * 0001-Fix-build-with-Qt-5.15.patch</changelog>
  <changelog author="Christophe Giboudeaux &lt;christophe@krop.fr&gt;" date="1606132800">- Stop using the %desktop_database_* macros.</changelog>
</package>
<package pkgid="2141c91e9255ad41542fe56d442d957c431c00c0ad52a30e370763cd2122f761691a78090dccabbd10982796babcbe7602276a39e635d61b0a8c380844def454" name="QtAV-players-debuginfo" arch="i586">
  <version epoch="0" ver="1.13.0" rel="4.0.2.1.sr20241103"/>
  <changelog author="adrian@suse.de" date="1484136000">- initial package qt5 only for version 1.11.0
- based on packman 1.10.0 version from avvissu@yandex.ru
- disable CUDA support since it needs GPL incompatible headers</changelog>
  <changelog author="jengelh@inai.de" date="1486296000">- Description updates
- Rename %soname to %sover to better reflect its use
- Drop manual Requires that are unnecessary because autodetected</changelog>
  <changelog author="wbauer@tmo.at" date="1498132800">- Update to 1.12.0
  * CMake support
  * Fix iOS build
  * Fix AVPacket memory leak
  * Geometry &amp; GeometryRenderer class is public
  * PAL8, XYZ color format support
  * Fix OpenGL background color
  * Fix external clock error after pause
  * VA-API encoder support (ffmpeg&gt;=3)
  * Other improvements, fixes, and untested features</changelog>
  <changelog author="lbeltrame@kde.org" date="1530273600">- Add disable-use-of-deprecated-header.patch and fix-build-newer-ffmpeg.patch
  from upstream:
  * Fix building with newer ffmpeg</changelog>
  <changelog author="wbauer@tmo.at" date="1562846400">- Update to 1.13.0
  * Add python bindings
  * More apis for qml player
  * Auto rotate video
  * Apple store
  * Fix ios plugin not found
  * Support chapters
  * Muxer, encoder, transcoder improvements
  * Compatible with new ffmpeg
  * videotoolbox: hevc,
  * cuda: new devices
  * Android: no longer depends on private qt module
  * Fix opensl error
  * mediacodec: 0-copy via a plugin from https://github.com/wang-bin/mdk-sdk
- Drop patches merged upstream:
  * fix-build-newer-ffmpeg.patch
  * disable-use-of-deprecated-header.patch</changelog>
  <changelog author="Christophe Giboudeaux &lt;christophe@krop.fr&gt;" date="1575547200">- Add 0001-Fix-build-with-Qt-5.14.patch</changelog>
  <changelog author="Christophe Giboudeaux &lt;christophe@krop.fr&gt;" date="1585828800">- Add patch to fix build with Qt 5.15:
  * 0001-Fix-build-with-Qt-5.15.patch</changelog>
  <changelog author="Christophe Giboudeaux &lt;christophe@krop.fr&gt;" date="1606132800">- Stop using the %desktop_database_* macros.</changelog>
</package>
<package pkgid="2f5d2f2d9a6fdab7cfbb02a765007531e8154e2a8086ecfaafeb07987f23827602fdca9d5fb232687b0c02edbb4fca431234e17f01e3c314c69882e0f6e1baa2" name="QtAV-players-debuginfo" arch="x86_64">
  <version epoch="0" ver="1.13.0" rel="4.0.2.1.sr20241103"/>
  <changelog author="adrian@suse.de" date="1484136000">- initial package qt5 only for version 1.11.0
- based on packman 1.10.0 version from avvissu@yandex.ru
- disable CUDA support since it needs GPL incompatible headers</changelog>
  <changelog author="jengelh@inai.de" date="1486296000">- Description updates
- Rename %soname to %sover to better reflect its use
- Drop manual Requires that are unnecessary because autodetected</changelog>
  <changelog author="wbauer@tmo.at" date="1498132800">- Update to 1.12.0
  * CMake support
  * Fix iOS build
  * Fix AVPacket memory leak
  * Geometry &amp; GeometryRenderer class is public
  * PAL8, XYZ color format support
  * Fix OpenGL background color
  * Fix external clock error after pause
  * VA-API encoder support (ffmpeg&gt;=3)
  * Other improvements, fixes, and untested features</changelog>
  <changelog author="lbeltrame@kde.org" date="1530273600">- Add disable-use-of-deprecated-header.patch and fix-build-newer-ffmpeg.patch
  from upstream:
  * Fix building with newer ffmpeg</changelog>
  <changelog author="wbauer@tmo.at" date="1562846400">- Update to 1.13.0
  * Add python bindings
  * More apis for qml player
  * Auto rotate video
  * Apple store
  * Fix ios plugin not found
  * Support chapters
  * Muxer, encoder, transcoder improvements
  * Compatible with new ffmpeg
  * videotoolbox: hevc,
  * cuda: new devices
  * Android: no longer depends on private qt module
  * Fix opensl error
  * mediacodec: 0-copy via a plugin from https://github.com/wang-bin/mdk-sdk
- Drop patches merged upstream:
  * fix-build-newer-ffmpeg.patch
  * disable-use-of-deprecated-header.patch</changelog>
  <changelog author="Christophe Giboudeaux &lt;christophe@krop.fr&gt;" date="1575547200">- Add 0001-Fix-build-with-Qt-5.14.patch</changelog>
  <changelog author="Christophe Giboudeaux &lt;christophe@krop.fr&gt;" date="1585828800">- Add patch to fix build with Qt 5.15:
  * 0001-Fix-build-with-Qt-5.15.patch</changelog>
  <changelog author="Christophe Giboudeaux &lt;christophe@krop.fr&gt;" date="1606132800">- Stop using the %desktop_database_* macros.</changelog>
</package>
<package pkgid="faf1812d46ad8c0adc77cf4323bc7e8b17dced95b9e645042adba6de0bad39f6045763e3395028e957505e44b47d1e86e2d756ffffe207a99ef7e9268dc58afe" name="QtAV-qml" arch="i586">
  <version epoch="0" ver="1.13.0" rel="4.0.2.1.sr20241103"/>
  <changelog author="adrian@suse.de" date="1484136000">- initial package qt5 only for version 1.11.0
- based on packman 1.10.0 version from avvissu@yandex.ru
- disable CUDA support since it needs GPL incompatible headers</changelog>
  <changelog author="jengelh@inai.de" date="1486296000">- Description updates
- Rename %soname to %sover to better reflect its use
- Drop manual Requires that are unnecessary because autodetected</changelog>
  <changelog author="wbauer@tmo.at" date="1498132800">- Update to 1.12.0
  * CMake support
  * Fix iOS build
  * Fix AVPacket memory leak
  * Geometry &amp; GeometryRenderer class is public
  * PAL8, XYZ color format support
  * Fix OpenGL background color
  * Fix external clock error after pause
  * VA-API encoder support (ffmpeg&gt;=3)
  * Other improvements, fixes, and untested features</changelog>
  <changelog author="lbeltrame@kde.org" date="1530273600">- Add disable-use-of-deprecated-header.patch and fix-build-newer-ffmpeg.patch
  from upstream:
  * Fix building with newer ffmpeg</changelog>
  <changelog author="wbauer@tmo.at" date="1562846400">- Update to 1.13.0
  * Add python bindings
  * More apis for qml player
  * Auto rotate video
  * Apple store
  * Fix ios plugin not found
  * Support chapters
  * Muxer, encoder, transcoder improvements
  * Compatible with new ffmpeg
  * videotoolbox: hevc,
  * cuda: new devices
  * Android: no longer depends on private qt module
  * Fix opensl error
  * mediacodec: 0-copy via a plugin from https://github.com/wang-bin/mdk-sdk
- Drop patches merged upstream:
  * fix-build-newer-ffmpeg.patch
  * disable-use-of-deprecated-header.patch</changelog>
  <changelog author="Christophe Giboudeaux &lt;christophe@krop.fr&gt;" date="1575547200">- Add 0001-Fix-build-with-Qt-5.14.patch</changelog>
  <changelog author="Christophe Giboudeaux &lt;christophe@krop.fr&gt;" date="1585828800">- Add patch to fix build with Qt 5.15:
  * 0001-Fix-build-with-Qt-5.15.patch</changelog>
  <changelog author="Christophe Giboudeaux &lt;christophe@krop.fr&gt;" date="1606132800">- Stop using the %desktop_database_* macros.</changelog>
</package>
<package pkgid="43272294edffa5c4022e70164d903e8eb8520ad37f7a8797a89649cb076e1b2c8f27e4600c23fcb430e0b171cfcd3f44831e1f52cd9b8be7102d0e97865bec5b" name="QtAV-qml" arch="x86_64">
  <version epoch="0" ver="1.13.0" rel="4.0.2.1.sr20241103"/>
  <changelog author="adrian@suse.de" date="1484136000">- initial package qt5 only for version 1.11.0
- based on packman 1.10.0 version from avvissu@yandex.ru
- disable CUDA support since it needs GPL incompatible headers</changelog>
  <changelog author="jengelh@inai.de" date="1486296000">- Description updates
- Rename %soname to %sover to better reflect its use
- Drop manual Requires that are unnecessary because autodetected</changelog>
  <changelog author="wbauer@tmo.at" date="1498132800">- Update to 1.12.0
  * CMake support
  * Fix iOS build
  * Fix AVPacket memory leak
  * Geometry &amp; GeometryRenderer class is public
  * PAL8, XYZ color format support
  * Fix OpenGL background color
  * Fix external clock error after pause
  * VA-API encoder support (ffmpeg&gt;=3)
  * Other improvements, fixes, and untested features</changelog>
  <changelog author="lbeltrame@kde.org" date="1530273600">- Add disable-use-of-deprecated-header.patch and fix-build-newer-ffmpeg.patch
  from upstream:
  * Fix building with newer ffmpeg</changelog>
  <changelog author="wbauer@tmo.at" date="1562846400">- Update to 1.13.0
  * Add python bindings
  * More apis for qml player
  * Auto rotate video
  * Apple store
  * Fix ios plugin not found
  * Support chapters
  * Muxer, encoder, transcoder improvements
  * Compatible with new ffmpeg
  * videotoolbox: hevc,
  * cuda: new devices
  * Android: no longer depends on private qt module
  * Fix opensl error
  * mediacodec: 0-copy via a plugin from https://github.com/wang-bin/mdk-sdk
- Drop patches merged upstream:
  * fix-build-newer-ffmpeg.patch
  * disable-use-of-deprecated-header.patch</changelog>
  <changelog author="Christophe Giboudeaux &lt;christophe@krop.fr&gt;" date="1575547200">- Add 0001-Fix-build-with-Qt-5.14.patch</changelog>
  <changelog author="Christophe Giboudeaux &lt;christophe@krop.fr&gt;" date="1585828800">- Add patch to fix build with Qt 5.15:
  * 0001-Fix-build-with-Qt-5.15.patch</changelog>
  <changelog author="Christophe Giboudeaux &lt;christophe@krop.fr&gt;" date="1606132800">- Stop using the %desktop_database_* macros.</changelog>
</package>
<package pkgid="66d2e0959585e56fccf24cfc1ee7524f967f9d3b5a03cf7ef11d2c3c2154d4205f37aa9d6d9775a83909555e655481af573134aced61d7660b7c2a90e9cd2b00" name="QtAV-qml-debuginfo" arch="i586">
  <version epoch="0" ver="1.13.0" rel="4.0.2.1.sr20241103"/>
  <changelog author="adrian@suse.de" date="1484136000">- initial package qt5 only for version 1.11.0
- based on packman 1.10.0 version from avvissu@yandex.ru
- disable CUDA support since it needs GPL incompatible headers</changelog>
  <changelog author="jengelh@inai.de" date="1486296000">- Description updates
- Rename %soname to %sover to better reflect its use
- Drop manual Requires that are unnecessary because autodetected</changelog>
  <changelog author="wbauer@tmo.at" date="1498132800">- Update to 1.12.0
  * CMake support
  * Fix iOS build
  * Fix AVPacket memory leak
  * Geometry &amp; GeometryRenderer class is public
  * PAL8, XYZ color format support
  * Fix OpenGL background color
  * Fix external clock error after pause
  * VA-API encoder support (ffmpeg&gt;=3)
  * Other improvements, fixes, and untested features</changelog>
  <changelog author="lbeltrame@kde.org" date="1530273600">- Add disable-use-of-deprecated-header.patch and fix-build-newer-ffmpeg.patch
  from upstream:
  * Fix building with newer ffmpeg</changelog>
  <changelog author="wbauer@tmo.at" date="1562846400">- Update to 1.13.0
  * Add python bindings
  * More apis for qml player
  * Auto rotate video
  * Apple store
  * Fix ios plugin not found
  * Support chapters
  * Muxer, encoder, transcoder improvements
  * Compatible with new ffmpeg
  * videotoolbox: hevc,
  * cuda: new devices
  * Android: no longer depends on private qt module
  * Fix opensl error
  * mediacodec: 0-copy via a plugin from https://github.com/wang-bin/mdk-sdk
- Drop patches merged upstream:
  * fix-build-newer-ffmpeg.patch
  * disable-use-of-deprecated-header.patch</changelog>
  <changelog author="Christophe Giboudeaux &lt;christophe@krop.fr&gt;" date="1575547200">- Add 0001-Fix-build-with-Qt-5.14.patch</changelog>
  <changelog author="Christophe Giboudeaux &lt;christophe@krop.fr&gt;" date="1585828800">- Add patch to fix build with Qt 5.15:
  * 0001-Fix-build-with-Qt-5.15.patch</changelog>
  <changelog author="Christophe Giboudeaux &lt;christophe@krop.fr&gt;" date="1606132800">- Stop using the %desktop_database_* macros.</changelog>
</package>
<package pkgid="f39c8da746e47faecdad01003abf97247cebc334d97e760606f67e9379038e26be87794a536bbeafd2a7b78b18a13960c20083c57ff6f3c7456eff78d78a6981" name="QtAV-qml-debuginfo" arch="x86_64">
  <version epoch="0" ver="1.13.0" rel="4.0.2.1.sr20241103"/>
  <changelog author="adrian@suse.de" date="1484136000">- initial package qt5 only for version 1.11.0
- based on packman 1.10.0 version from avvissu@yandex.ru
- disable CUDA support since it needs GPL incompatible headers</changelog>
  <changelog author="jengelh@inai.de" date="1486296000">- Description updates
- Rename %soname to %sover to better reflect its use
- Drop manual Requires that are unnecessary because autodetected</changelog>
  <changelog author="wbauer@tmo.at" date="1498132800">- Update to 1.12.0
  * CMake support
  * Fix iOS build
  * Fix AVPacket memory leak
  * Geometry &amp; GeometryRenderer class is public
  * PAL8, XYZ color format support
  * Fix OpenGL background color
  * Fix external clock error after pause
  * VA-API encoder support (ffmpeg&gt;=3)
  * Other improvements, fixes, and untested features</changelog>
  <changelog author="lbeltrame@kde.org" date="1530273600">- Add disable-use-of-deprecated-header.patch and fix-build-newer-ffmpeg.patch
  from upstream:
  * Fix building with newer ffmpeg</changelog>
  <changelog author="wbauer@tmo.at" date="1562846400">- Update to 1.13.0
  * Add python bindings
  * More apis for qml player
  * Auto rotate video
  * Apple store
  * Fix ios plugin not found
  * Support chapters
  * Muxer, encoder, transcoder improvements
  * Compatible with new ffmpeg
  * videotoolbox: hevc,
  * cuda: new devices
  * Android: no longer depends on private qt module
  * Fix opensl error
  * mediacodec: 0-copy via a plugin from https://github.com/wang-bin/mdk-sdk
- Drop patches merged upstream:
  * fix-build-newer-ffmpeg.patch
  * disable-use-of-deprecated-header.patch</changelog>
  <changelog author="Christophe Giboudeaux &lt;christophe@krop.fr&gt;" date="1575547200">- Add 0001-Fix-build-with-Qt-5.14.patch</changelog>
  <changelog author="Christophe Giboudeaux &lt;christophe@krop.fr&gt;" date="1585828800">- Add patch to fix build with Qt 5.15:
  * 0001-Fix-build-with-Qt-5.15.patch</changelog>
  <changelog author="Christophe Giboudeaux &lt;christophe@krop.fr&gt;" date="1606132800">- Stop using the %desktop_database_* macros.</changelog>
</package>
<package pkgid="6769de981622a1c458124b2d86f5e90f86a5c1efadec3dc2cc24f4335b6b5b09f2005f689a49e0dd59a871cb355abdbf331546f2735c1d62e001b345982c3e7a" name="R-KernSmooth" arch="i586">
  <version epoch="0" ver="2.23.24" rel="51.0.2.2.sr20241103"/>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1620302400">- To get in sync with d:l:R:autoCRAN the Matrix package's split
  in -devel was reversed.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339200">- improved spec file according to comments of dimstar in
  https://build.opensuse.org/request/show/892685</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339201">- CHANGES IN R 4.1.0:
  FUTURE DIRECTIONS:
  * It is planned that the 4.1.x series will be the last to support
    32-bit Windows, with production of binary packages for that
    series continuing until early 2023.
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Data set esoph in package datasets now provides the correct
    numbers of controls; previously it had the numbers of cases added
    to these.  (Reported by Alexander Fowler in PR#17964.)
  NEW FEATURES:
  * www.omegahat.net is no longer one of the repositories known by
    default to setRepositories().  (Nowadays it only provides source
    packages and is often unavailable.)
  * Function package_dependencies() (in package tools) can now use
    different dependency types for direct and recursive dependencies.
  * The checking of the size of tarball in R CMD check --as-cran
    &lt;pkg&gt; may be tweaked via the new environment variable
    _R_CHECK_CRAN_INCOMING_TARBALL_THRESHOLD_, as suggested in
    PR#17777 by Jan Gorecki.
  * Using c() to combine a factor with other factors now gives a
    factor, an ordered factor when combining ordered factors with
    identical levels.
  * apply() gains a simplify argument to allow disabling of
    simplification of results.
  * The format() method for class "ftable" gets a new option justify.
    (Suggested by Thomas Soeiro.)
  * New ...names() utility.  (Proposed by Neal Fultz in PR#17705.)
  * type.convert() now warns when its as.is argument is not
    specified, as the help file always said it _should_.  In that
    case, the default is changed to TRUE in line with its change in
    read.table() (related to stringsAsFactor) in R 4.0.0.
  * When printing list arrays, classed objects are now shown _via_
    their format() value if this is a short enough character string,
    or by giving the first elements of their class vector and their
    length.
  * capabilities() gets new entry "Rprof" which is TRUE when R has
    been configured with the equivalent of --enable-R-profiling (as
    it is by default).  (Related to Michael Orlitzky's report
    PR#17836.)
  * str(xS4) now also shows extraneous attributes of an S4 object
    xS4.
  * Rudimentary support for vi-style tags in rtags() and R CMD rtags
    has been added.  (Based on a patch from Neal Fultz in PR#17214.)
  * checkRdContents() is now exported from tools; it and also
    checkDocFiles() have a new option chkInternal allowing to check
    Rd files marked with keyword "internal" as well.  The latter can
    be activated for R CMD check via environment variable
    _R_CHECK_RD_INTERNAL_TOO_.
  * New functions numToBits() and numToInts() extend the raw
    conversion utilities to (double precision) numeric.
  * Functions URLencode() and URLdecode() in package utils now work
    on vectors of URIs.  (Based on patch from Bob Rudis submitted
    with PR#17873.)
  * path.expand() can expand ~user on most Unix-alikes even when
    readline is not in use.  It tries harder to expand ~, for example
    should environment variable HOME be unset.
  * For HTML help (both dynamic and static), Rd file links to help
    pages in external packages are now treated as references to
    topics rather than file names, and fall back to a file link only
    if the topic is not found in the target package. The earlier rule
    which prioritized file names over topics can be restored by
    setting the environment variable _R_HELP_LINKS_TO_TOPICS_ to a
    false value.
  * c() now removes NULL arguments before dispatching to methods,
    thus simplifying the implementation of c() methods, _but_ for
    back compatibility keeps NULL when it is the first argument.
    (From a report and patch proposal by Lionel Henry in PR#17900.)
  * Vectorize()'s result function's environment no longer keeps
    unneeded objects.
  * Function ...elt() now propagates visibility consistently with
    ..n.  (Thanks to Lionel Henry's PR#17905.)
  * capture.output() no longer uses non-standard evaluation to
    evaluate its arguments.  This makes evaluation of functions like
    parent.frame() more consistent.  (Thanks to Lionel Henry's
    PR#17907.)
  * packBits(bits, type="double") now works as inverse of
    numToBits().  (Thanks to Bill Dunlap's proposal in PR#17914.)
  * curlGetHeaders() has two new arguments, timeout to specify the
    timeout for that call (overriding getOption("timeout")) and TLS
    to specify the minimum TLS protocol version to be used for
    https:// URIs (_inter alia_ providing a means to check for sites
    using deprecated TLS versions 1.0 and 1.1).
  * For nls(), an optional constant scaleOffset may be added to the
    denominator of the relative offset convergence test for cases
    where the fit of a model is expected to be exact, thanks to a
    proposal by John Nash.  nls(*, trace=TRUE) now also shows the
    convergence criterion.
  * Numeric differentiation _via_ numericDeriv() gets new optional
    arguments eps and central, the latter for taking central divided
    differences.  The latter can be activated for nls() via
    nls.control(nDcentral = TRUE).
  * nls() now passes the trace and control arguments to getInitial(),
    notably for all self-starting models, so these can also be fit in
    zero-noise situations via a scaleOffset.  For this reason, the
    initial function of a selfStart model must now have ... in its
    argument list.
  * bquote(splice = TRUE) can now splice expression vectors with
    attributes: this makes it possible to splice the result of
    parse(keep.source = TRUE).  (Report and patch provided by Lionel
    Henry in PR#17869.)
  * textConnection() gets an optional name argument.
  * get(), exists(), and get0() now signal an error if the first
    argument has length greater than 1.  Previously additional
    elements were silently ignored.  (Suggested by Antoine Fabri on
    R-devel.)
  * R now provides a shorthand notation for creating functions, e.g.
    \(x) x + 1 is parsed as function(x) x + 1.
  * R now provides a simple native forward pipe syntax |&gt;.  The
    simple form of the forward pipe inserts the left-hand side as the
    first argument in the right-hand side call.  The pipe
    implementation as a syntax transformation was motivated by
    suggestions from Jim Hester and Lionel Henry.
  * all.equal(f, g) for functions now by default also compares their
    environment(.)s, notably via new all.equal method for class
    function.  Comparison of nls() fits, e.g., may now need
    all.equal(m1, m2, check.environment = FALSE).
  * .libPaths() gets a new option include.site, allowing to _not_
    include the site library.  (Thanks to Dario Strbenac's suggestion
    and Gabe Becker's PR#18016.)
  * Lithuanian translations are now available.  (Thanks to Rimantas
    Zakauskas.)
  * names() now works for DOTSXP objects.  On the other hand, in
    R-lang, the R language manual, we now warn against relying on the
    structure or even existence of such dot-dot-dot objects.
  * all.equal() no longer gives an error on DOTSXP objects.
  * capabilities("cairo") now applies only to the file-based devices
    as it is now possible (if very unusual) to build R with Cairo
    support for those but not for X11().
  * There is optional support for tracing the progress of
    loadNamespace() - see its help.
  * (Not Windows.)  l10n_info() reports an additional element, the
    name of the encoding as reported by the OS (which may differ from
    the encoding part (if any) of the result from
    Sys.getlocale("LC_CTYPE").
  * New function gregexec() which generalizes regexec() to find _all_
    disjoint matches and well as all substrings corresponding to
    parenthesized subexpressions of the given regular expression.
    (Contributed by Brodie Gaslam.)
  * New function charClass() in package utils to query the
    wide-character classification functions in use (such as
    iswprint).
  * The names of quantile()'s result no longer depend on the global
    getOption("digits"), but quantile() gets a new optional argument
    digits = 7 instead.
  * grep(), sub(), regexp and variants work considerably faster for
    long factors with few levels.  (Thanks to Michael Chirico's
    PR#18063.)
  * Provide grouping of x11() graphics windows within a window
    manager such as Gnome or Unity; thanks to a patch by Ivan Krylov
    posted to R-devel.
  * The split() method for class data.frame now allows the f argument
    to be specified as a formula.
  * sprintf now warns on arguments unused by the format string.
  * New palettes "Rocket" and "Mako" for hcl.colors() (approximating
    palettes of the same name from the 'viridisLite' package).
    Contributed by Achim Zeileis.
  * The base environment and its namespace are now locked (so one can
    no longer add bindings to these or remove from these).
  * Rterm handling of multi-byte characters has been improved,
    allowing use of such characters when supported by the current
    locale.
  * Rterm now accepts ALT+ +xxxxxxxx sequences to enter Unicode
    characters as hex digits.
  * Environment variable LC_ALL on Windows now takes precedence over
    LC_CTYPE and variables for other supported categories, matching
    the POSIX behaviour.
  * duplicated() and anyDuplicated() are now optimized for integer
    and real vectors that are known to be sorted via the ALTREP
    framework. Contributed by Gabriel Becker via PR#17993.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 14
    and so packages that provide graphics devices should be
    reinstalled.
  * Graphics devices should now specify deviceVersion to indicate
    what version of the graphics engine they support.
  * Graphics devices can now specify deviceClip.  If TRUE, the
    graphics engine will never perform any clipping of output itself.
    The clipping that the graphics engine does perform (for both
    canClip = TRUE and canClip = FALSE) has been improved to avoid
    producing unnecessary artifacts in clipped output.
  * The grid package now allows gpar(fill) to be a linearGradient(),
    a radialGradient(), or a pattern().  The viewport(clip) can now
    also be a grob, which defines a clipping path, and there is a new
    viewport(mask) that can also be a grob, which defines a mask.
    These new features are only supported so far on the Cairo-based
    graphics devices and on the pdf() device.
  * (Not Windows.)  A warning is given when a Cairo-based type is
    specified for a png(), jpeg(), tiff() or bmp() device but Cairo
    is unsupported (so type = "Xlib" is tried instead).
  * grSoftVersion() now reports the versions of FreeType and
    FontConfig if they are used directly (not _via_ Pango), as is
    most commonly done on macOS.
  C-LEVEL FACILITIES:
  * The _standalone_ libRmath math library and R's C API now provide
    log1pexp() again as documented, and gain log1mexp().
  INSTALLATION on a UNIX-ALIKE:
  * configure checks for a program pkgconf if program pkg-config is
    not found.  These are now only looked for on the path (like
    almost all other programs) so if needed specify a full path to
    the command in PKG_CONFIG, for example in file config.site.
  * C99 function iswblank is required - it was last seen missing ca
    2003 so the workaround has been removed.
  * There are new configure options --with-internal-iswxxxxx,
  - -with-internal-towlower and --with-internal-wcwidth which allows
    the system functions for wide-character classification,
    case-switching and width (wcwidth and wcswidth) to be replaced by
    internal ones.  The first has long been used on macOS, AIX (and
    Windows) but this enables it to be unselected there and selected
    for other platforms (it is the new default on Solaris).  The
    second is new in this version of R and is selected by default on
    macOS and Solaris.  The third has long been the default and
    remains so as it contains customizations for East Asian
    languages.
    System versions of these functions are often minimally
    implemented (sometimes only for ASCII characters) and may not
    cover the full range of Unicode points: for example Solaris (and
    Windows) only cover the Basic Multilingual Plane.
  * Cairo installations without X11 are more likely to be detected by
    configure, when the file-based Cairo graphics devices will be
    available but not X11(type = "cairo").
  * There is a new configure option --with-static-cairo which is the
    default on macOS.  This should be used when only static cairo
    (and where relevant, Pango) libraries are available.
  * Cairo-based graphics devices on platforms without Pango but with
    FreeType/FontConfig will make use of the latter for font
    selection.
  LINK-TIME OPTIMIZATION on a UNIX-ALIKE:
  * Configuring with flag --enable-lto=R now also uses LTO when
    installing the recommended packages.
  * R CMD INSTALL and R CMD SHLIB have a new flag --use-LTO to use
    LTO when compiling code, for use with R configured with
  - -enable-lto=R.  For R configured with --enable-lto, they have
    the new flag --no-use-LTO.
    Packages can opt in or out of LTO compilation _via_ a UseLTO
    field in the DESCRIPTION file.  (As usual this can be overridden
    by the command-line flags.)
  BUILDING R on Windows:
  * for GCC &gt;= 8, FC_LEN_T is defined in config.h and hence character
    lengths are passed from C to Fortran in _inter alia_ BLAS and
    LAPACK calls.
  * There is a new text file src/gnuwin32/README.compilation, which
    outlines how C/Fortran code compilation is organized and
    documents new features:
  * R can be built with Link-Time Optimization with a suitable
    compiler - doing so with GCC 9.2 showed several
    inconsistencies which have been corrected.
  * There is support for cross-compiling the C and Fortran code
    in R and standard packages on suitable (Linux) platforms.
    This is mainly intended to allow developers to test later
    versions of compilers - for example using GCC 9.2 or 10.x has
    detected issues that GCC 8.3 in Rtools40 does not.
  * There is experimental support for cross-building R packages
    with C, C++ and/or Fortran code.
  * The R installer can now be optionally built to support a single
    architecture (only 64-bit or only 32-bit).
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++14 where
    available (which it is on all currently checked platforms): if
    not (as before) C++11 is used if available otherwise C++ is not
    supported.
    Packages which specify C++11 will still be installed using C++11.
    C++14 compilers may give deprecation warnings, most often for
    std::random_shuffle (deprecated in C++14 and removed in C++17).
    Either specify C++11 (see 'Writing R Extensions') or modernize
    the code and if needed specify C++14.  The latter has been
    supported since R 3.4.0 so the package's DESCRIPTION would need
    to include something like
    Depends: R (&gt;= 3.4)
  PACKAGE INSTALLATION on Windows:
  * R CMD INSTALL and R CMD SHLIB make use of their flag --use-LTO
    when the LTO_OPT make macro is set in file etc/${R_ARCH}/Makeconf
    or in a personal/site Makevars file.  (For details see 'Writing R
    Extensions' SS4.5.)
    This provides a valuable check on code consistency.  It does work
    with GCC 8.3 as in Rtools40, but that does not detect everything
    the CRAN checks with current GCC do.
  PACKAGE INSTALLATION on macOS:
  * The default personal library directory on builds with
  - -enable-aqua (including CRAN builds) now differs by CPU type,
    one of
    ~/Library/R/x86_64/x.y/library
    ~/Library/R/arm64/x.y/library
    This uses the CPU type R (and hence the packages) were built for,
    so when a x86_64 build of R is run under Rosetta emulation on an
    arm64 Mac, the first is used.
  UTILITIES:
  * R CMD check can now scan package functions for bogus return
    statements, which were possibly intended as return() calls (wish
    of PR#17180, patch by Sebastian Meyer). This check can be
    activated via the new environment variable
    _R_CHECK_BOGUS_RETURN_, true for --as-cran.
  * R CMD build omits tarballs and binaries of previous builds from
    the top-level package directory.  (PR#17828, patch by Sebastian
    Meyer.)
  * R CMD check now runs sanity checks on the use of LazyData, for
    example that a data directory is present and that
    LazyDataCompression is not specified without LazyData and has a
    documented value.  For packages with large LazyData databases
    without specifying LazyDataCompression, there is a reference to
    the code given in 'Writing R Extensions' SS1.1.6 to test the
    choice of compression (as in all the CRAN packages tested a
    non-default method was preferred).
  * R CMD build removes LazyData and LazyDataCompression fields from
    the DESCRIPTION file of packages without a data directory.
  ENCODING-RELATED CHANGES:
  * The parser now treats \Unnnnnnnn escapes larger than the upper
    limit for Unicode points (\U10FFFF) as an error as they cannot be
    represented by valid UTF-8.
    Where such escapes are used for outputting non-printable
    (including unassigned) characters, 6 hex digits are used (rather
    than 8 with leading zeros).  For clarity, braces are used, for
    example \U{0effff}.
  * The parser now looks for non-ASCII spaces on Solaris (as
    previously on most other OSes).
  * There are warnings (including from the parser) on the use of
    unpaired surrogate Unicode points such as \uD834.  (These cannot
    be converted to valid UTF-8.)
  * Functions nchar(), tolower(), toupper() and chartr() and those
    using regular expressions have more support for inputs with a
    marked Latin-1 encoding.
  * The character-classification functions used (by default) to
    replace the system iswxxxxx functions on Windows, macOS and AIX
    have been updated to Unicode 13.0.0.
    The character-width tables have been updated to include new
    assignments in Unicode 13.0.0.
  * The code for evaluating default (extended) regular expressions
    now uses the same character-classification functions as the rest
    of R (previously they differed on Windows, macOS and AIX).
  * There is a build-time option to replace the system's
    wide-character wctrans C function by tables shipped with R: use
    configure option --with-internal-towlower or (on Windows)
  - DUSE_RI18N_CASE in CFLAGS when building R.  This may be needed
    to allow tolower() and toupper() to work with Unicode characters
    beyond the Basic Multilingual Plane where not supported by system
    functions (e.g. on Solaris where it is the new default).
  * R is more careful when truncating UTF-8 and other multi-byte
    strings that are too long to be printed, passed to the system or
    libraries or placed into an internal buffer.  Truncation will no
    longer produce incomplete multibyte characters.
  DEPRECATED AND DEFUNCT:
  * Function plclust() from the package stats and
    package.dependencies(), pkgDepends(), getDepList(),
    installFoundDepends(), and vignetteDepends() from package tools
    are defunct.
  * Defunct functions checkNEWS() and readNEWS() from package tools
    and CRAN.packages() from utils have been removed.
  * R CMD config CXXCPP is defunct (it was deprecated in R 3.6.2).
  * parallel::detectCores() drops support for Irix (retired in 2013).
  * The LINPACK argument to chol.default(), chol2inv(),
    solve.default() and svd() has been defunct since R 3.1.0.  It was
    silently ignored up to R 4.0.3 but now gives an error.
  * Subsetting/indexing, such as ddd[*] or ddd$x on a DOTSXP
    (dot-dot-dot) object ddd has been disabled; it worked by accident
    only and was undocumented.
  BUG FIXES:
  * Many more C-level allocations (mainly by malloc and strdup) are
    checked for success with suitable alternative actions.
  * Bug fix for replayPlot(); this was turning off graphics engine
    display list recording if a recorded plot was replayed in the
    same session.  The impact of the bug became visible if resize the
    device after replay OR if attempted another savePlot() after
    replay (empty display list means empty screen on resize or empty
    saved plot).
  * R CMD check etc now warn when a package exports non-existing S4
    classes or methods, also in case of no "methods" presence.
    (Reported by Alex Bertram; reproducible example and patch by
    Sebastian Meyer in PR#16662.)
  * boxplot() now also accepts calls for labels such as ylab, the
    same as plot().  (Reported by Marius Hofert.)
  * The help page for xtabs() now correctly states that addNA is
    setting na.action = na.pass among others.  (Reported as PR#17770
    by Thomas Soeiro.)
  * The R CMD check &lt;pkg&gt; gives a longer and more comprehensible
    message when DESCRIPTION misses dependencies, e.g., in Imports:.
    (Thanks to the contributors of PR#17179.)
  * update.default() now calls the generic update() on the formula to
    work correctly for models with extended formulas.  (As reported
    and suggested by Neal Fultz in PR#17865.)
  * The horizontal position of leaves in a dendrogram is now correct
    also with center = FALSE.  (PR#14938, patch from Sebastian
    Meyer.)
  * all.equal.POSIXt() no longer warns about and subsequently ignores
    inconsistent "tzone" attributes, but describes the difference in
    its return value (PR#17277).  This check can be disabled _via_
    the new argument check.tzone = FALSE as suggested by Sebastian
    Meyer.
  * as.POSIXct() now populates the "tzone" attribute from its tz
    argument when x is a logical vector consisting entirely of NA
    values.
  * x[[2^31]] &lt;- v now works.  (Thanks to the report and patch by
    Suharto Anggono in PR#17330.)
  * In log-scale graphics, axis() ticks and label positions are now
    computed more carefully and symmetrically in their range,
    typically providing _more_ ticks, fulfilling wishes in PR#17936.
    The change really corresponds to an improved axisTicks() (package
    grDevices), potentially influencing grid and lattice, for
    example.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now correct to at
    least five digits where it was catastrophically wrong,
    previously.
  * sum(df) and similar "Summary"- and "Math"-group member functions
    now work for data frames df with logical columns, notably also of
    zero rows.  (Reported to R-devel by Martin "b706".)
  * unsplit() had trouble with tibbles due to unsound use of rep(NA,
    len)-indexing, which should use NA_integer_ (Reported to R-devel
    by Mario Annau.)
  * pnorm(x, log.p = TRUE) underflows to -Inf slightly later.
  * show(&lt;hidden S4 generic&gt;) prints better and without quotes for
    non-hidden S4 generics.
  * read.table() and relatives treated an "NA" column name as missing
    when check.names = FALSE PR#18007.
  * Parsing strings containing UTF-16 surrogate pairs such as
    "\uD834\uDD1E" works better on some (uncommon) platforms.
    sprintf("%X", utf8ToInt("\uD834\uDD1E")) should now give "1D11E"
    on all platforms.
  * identical(x,y) is no longer true for differing DOTSXP objects,
    fixing PR#18032.
  * str() now works correctly for DOTSXP and related exotics, even
    when these are doomed.
    Additionally, it no longer fails for lists with a class and
    "irregular" method definitions such that e.g. lapply(*) will
    necessarily fail, as currently for different igraph objects.
  * Too long lines in environment files (e.g. Renviron) no longer
    crash R. This limit has been increased to 100,000 bytes.
    (PR#18001.)
  * There is a further workaround for FreeType giving incorrect
    italic font faces with cairo-based graphics devices on macOS.
  * add_datalist(*, force = TRUE) (from package tools) now actually
    updates an existing data/datalist file for new content.  (Thanks
    to a report and patch by Sebastian Meyer in PR#18048.)
  * cut.Date() and cut.POSIXt() could produce an empty last interval
    for breaks = "months" or breaks = "years".  (Reported as PR#18053
    by Christopher Carbone.)
  * Detection of the encoding of 'regular' macOS locales such as
    en_US (which is UTF-8) had been broken by a macOS change:
    fortunately these are now rarely used with en_US.UTF-8 being
    preferred.
  * sub() and gsub(pattern, repl, x, *) now keep attributes of x such
    as names() also when pattern is NA (PR#18079).
  * Time differences ("difftime" objects) get a replacement and a
    rep() method to keep "units" consistent.  (Thanks to a report and
    patch by Nicolas Bennett in PR#18066.)
  * The \RdOpts macro, setting defaults for \Sexpr options in an Rd
    file, had been ineffective since R 2.12.0: it now works again.
    (Thanks to a report and patch by Sebastian Meyer in PR#18073.)
  * mclapply and pvec no longer accidentally terminate parallel
    processes started before by mcparallel or related calls in
    package parallel (PR#18078).
  * grep and other functions for evaluating (extended) regular
    expressions handle in Unicode also strings not explicitly flagged
    UTF-8, but flagged native when running in UTF-8 locale.
  * Fixed a crash in fifo implementation on Windows (PR#18031).
  * Binary mode in fifo on Windows is now properly detected from
    argument open (PR#15600, PR#18031).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1622808000">- The line %{__install} -m 755 -d %{_infodir}
  no longer works in TW or Factory.
  But without that line it works everywhere. So this instruction
  was commented out of the spec file.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1628596800">- CHANGES IN R 4.1.1:
  NEW FEATURES:
  * require(pkg, quietly = TRUE) is quieter and in particular does
    not warn if the package is not found.
  DEPRECATED AND DEFUNCT:
  * Use of ftp:// URIs should be regarded as deprecated, with
    on-going support confined to method = "libcurl" and not routinely
    tested.  (Nowadays no major browser supports them.)
  * The non-default method = "internal" is deprecated for http:// and
    ftp:// URIs for both download.file and url.
  * On Windows, method = "wininet" is deprecated for http://,
    https:// and ftp:// URIs for both download.file and url.  (A
    warning is only given for ftp://.)
    For ftp:// URIs the default method is now "libcurl" if available
    (which it is on CRAN builds).
    method = "wininet" remains the default for http:// and https://
    URIs but if libcurl is available, using method = "libcurl" is
    preferred.
  INSTALLATION:
  * make check now works also without a LaTeX installation.  (Thanks
    to Sebastian Meyer's PR#18103.)
  BUG FIXES:
  * make check-devel works again in an R build configured with
  - -without-recommended-packages.
  * qnbinom(p, size, mu) for large size/mu is correct now in a range
    of cases (PR#18095); similarly for the (size, prob)
    parametrization of the negative binomial.  Also qpois() and
    qbinom() are better and or faster for extreme cases.  The
    underlying C code has been modularized and is common to all four
    cases of discrete distributions.
  * gap.axis is now part of the axis() arguments which are passed
    from bxp(), and hence boxplot().  (Thanks to Martin Smith's
    report and suggestions in PR#18109.)
  * .First and .Last can again be set from the site profile.
  * seq.int(from, to, *) and seq.default(..) now work better in large
    range cases where from-to is infinite where the two boundaries
    are finite.
  * all.equal(x,y) now returns TRUE correctly also when several
    entries of abs(x) and abs(y) are close to .Machine$double.xmax,
    the largest finite numeric.
  * model.frame() now clears the object bit when removing the class
    attribute of a value via na.action (PR#18100).
  * charClass() now works with multi-character strings on Windows
    (PR#18104, fixed by Bill Dunlap).
  * encodeString() on Solaris now works again in Latin-1 encoding on
    characters represented differently in UTF-8.  Support for
    surrogate pairs on Solaris has been improved.
  * file.show() on Windows now works with non-ASCII path names
    representable in the current native encoding (PR#18132).
  * Embedded R on Windows can now find R home directory via the
    registry even when installed only for the current user
    (PR#18135).
  * pretty(x) with finite x now returns finite values also in the
    case where the extreme x values are close in size to the maximal
    representable number .Machine$double.xmax.
    Also, it's been tweaked for very small ranges and when a boundary
    is close (or equal) to zero; e.g., pretty(c(0,1e-317)) no longer
    has negative numbers, currently still warning about a very small
    range, and pretty(2^-(1024 - 2^-1/(c(24,10)))) is more accurate.
  * The error message for not finding vignette files when weaving has
    correct file sizes now. (Thanks to Sebastian Meyer's PR#18154.)
  * dnbinom(20, &lt;large&gt;, 1) now correctly gives 0, and similar cases
    are more accurate with underflow precaution.  (Reported by Francisco Vera Alcivar in PR#18072.)</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635163200">- repaired https://bugzilla.suse.com/show_bug.cgi?id=1191380
  (rpmacros now go to rpmmacrodir)
- minor clean-ups in spec file</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635768000">- CHANGES IN R 4.1.2:
  C-LEVEL FACILITIES:
  * The workaround in headers R.h and Rmath.h (using namespace std;)
    for the Oracle Developer Studio compiler is no longer needed now
    C++11 is required so has been removed.  A couple more usages of
    log() (which should have been std::log()) with an int argument
    are reported on Solaris.
  * The undocumented limit of 4095 bytes on messages from the
    S-compatibility macros PROBLEM and MESSAGE is now documented and
    longer messages will be silently truncated rather than
    potentially causing segfaults.
  * If the R_NO_SEGV_HANDLER environment variable is non-empty, the
    signal handler for SEGV/ILL/BUS signals (which offers recovery
    user interface) is not set. This allows more reliable debugging
    of crashes that involve the console.
  DEPRECATED AND DEFUNCT:
  * The legacy S-compatibility macros PROBLEM, MESSAGE, ERROR, WARN,
    WARNING, RECOVER, ... are deprecated and will be hidden in R
    4.2.0. R's native interface of Rf_error and Rf_warning has long
    been preferred.
  BUG FIXES:
  * .mapply(F, dots, .) no longer segfaults when dots is not a list
    and uses match.fun(F) as always documented; reported by Andrew
    Simmons in PR#18164.
  * hist(&lt;Date&gt;, ...) and hist(&lt;POSIXt&gt;, ...)  no longer pass
    arguments for rect() (such as col and density) to axis().
    (Thanks to Sebastian Meyer's PR#18171.)
  * \Sexpr{ch} now preserves Encoding(ch). (Thanks to report and
    patch by Jeroen Ooms in PR#18152.)
  * Setting the RNG to "Marsaglia-Multicarry" e.g., by RNGkind(), now
    warns in more places, thanks to Andr'e Gillibert's report and
    patch in PR#18168.
  * gray(numeric(), alpha=1/2) no longer segfaults, fixing PR#18183,
    reported by Till Krenz.
  * Fixed dnbinom(x, size=&lt;very_small&gt;, .., log=TRUE) regression,
    reported by Martin Morgan.
  * as.Date.POSIXlt(x) now keeps names(x), thanks to Davis Vaughan's
    report and patch in PR#18188.
  * model.response() now strips an "AsIs" class typically, thanks to
    Duncan Murdoch's report and other discussants in PR#18190.
  * try() is considerably faster in case of an error and long call,
    as e.g., from some do.call().  Thanks to Alexander Kaever's
    suggestion posted to R-devel.
  * qqline(y = &lt;object&gt;) such as y=I(.), now works, see also
    PR#18190.
  * Non-integer mgp par() settings are now handled correctly in
    axis() and mtext(), thanks to Mikael Jagan and Duncan Murdoch's
    report and suggestion in PR#18194.
  * formatC(x) returns length zero character() now, rather than ""
    when x is of length zero, as documented, thanks to Davis
    Vaughan's post to R-devel.
  * removeSource(fn) now retains (other) attributes(fn).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1647000000">- CHANGES IN R 4.1.3:
  NEW FEATURES:
  * The default version of Bioconductor has been changed to 3.14.
    (This is used by setRepositories and the menus in GUIs.)
  UTILITIES:
  * R CMD check --as-cran has a workaround for a bug in versions of
    file up to at least 5.41 which mis-identify DBF files last
    changed in 2022 as executables.
  C-LEVEL FACILITIES:
  * The legacy S-compatibility macros SINGLE_* in R_ext/Constants.h
    (included by R.h) are deprecated and will be removed in R 4.2.0.
  BUG FIXES:
  * Initialization of self-starting nls() models with initialization
    functions following the pre-R-4.1.0 API (without the ...
    argument) works again for now, with a deprecation warning.
  * Fixed quoting of ~autodetect~ in Java setting defaults to avoid
    inadvertent user lookup due to leading ~, reported in PR#18231 by
    Harold Gutch.
  * substr(., start, stop) &lt;- v now treats _negative_ stop values
    correctly.  Reported with a patch in PR#18228 by Brodie Gaslam.
  * Subscripting an array x without dimnames by a
    length(dim(x))-column character matrix gave "random" non-sense,
    now an error; reported in PR#18244 by Mikael Jagan.
  * ...names() now matches names(list(...)) closely, fixing PR#18247.
  * all.equal(*, scale = s) now works as intended when length(s) &gt; 1,
    partly thanks to Michael Chirico's PR#18272.
  * print(x) for long vectors x now also works for named atomic
    vectors or lists and prints the correct number when reaching the
    getOption("max.print") limit; partly thanks to a report and
    proposal by Hugh Parsonage to the R-devel list.
  * all.equal(&lt;selfStart&gt;, *) no longer signals a deprecation
    warning.
  * reformulate(*, response=r) gives a helpful error message now when
    length(r) &gt; 1, thanks to Bill Dunlap's PR#18281.
  * Modifying globalCallingHandlers inside withCallingHandlers() now
    works or fails correctly, thanks to Henrik Bengtsson's PR#18257.
  * hist(&lt;Date&gt;, breaks = "days") and hist(&lt;POSIXt&gt;, breaks = "secs")
    no longer fail for inputs of length 1.
  * qbeta(.001, .9, .009) and similar cases now converge correctly
    thanks to Ben Bolker's report in PR#17746.
  * window(x, start, end) no longer wrongly signals "'start' cannot
    be after 'end'", fixing PR#17527 and PR#18291.
  * data() now checks that its (rarely used) list argument is a
    character vector - a couple of packages passed other types and
    gave incorrect results.
  * which() now checks its arr.ind argument is TRUE rather coercing
    to logical and taking the first element - which gave incorrect
    results in package code.
  * model.weights() and model.offset() more carefully extract their
    model components, thanks to Ben Bolker and Tim Taylor's R-devel
    post.
  * list.files(recursive = TRUE) now shows all broken symlinks
    (previously, some of them may have been omitted, PR#18296).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1650628800">- CHANGES IN R 4.2.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * The formula method of aggregate() now matches the generic in
    naming its first argument x (resolving PR#18299 by Thomas
    Soeiro).
    This means that calling aggregate() with a formula as a named
    first argument requires name formula in earlier versions of R and
    name x now, so portable code should not name the argument (code
    in many packages did).
  * Calling &amp;&amp; or || with either argument of length greater than one
    now gives a warning (which it is intended will become an error).
  * Calling if() or while() with a condition of length greater than
    one gives an error rather than a warning.  Consequently,
    environment variable _R_CHECK_LENGTH_1_CONDITION_ no longer has
    any effect.
  * Windows users should consult the WINDOWS section below for some
    profound changes including
  * Support for 32-bit builds has been dropped.
  * UTF-8 locales are used where available.
  * The default locations for the R installation and personal
    library folder have been changed.
    Thanks to Tomas Kalibera for months of work on the Windows port
    for this release.
  NEW FEATURES:
  * matrix(x, n, m) now warns in more cases where length(x) differs
    from n * m, as suggested by Abby Spurdle and Wolfgang Huber in
    Feb 2021 on the R-devel mailing list.
    This warning can be turned into an error by setting environment
    variable _R_CHECK_MATRIX_DATA_ to TRUE: R CMD check --as-cran
    does so unless it is already set.
  * Function file_test() in package utils gains tests for symlinks,
    readability and writability.
  * capabilities("libxml") is now false.
    The description of capabilities("http/ftp") now reflects that it
    refers to the default method, no longer the internal one.
  * simplify2array() gains an except argument for controlling the
    exceptions used by sapply().
  * Environment variables R_LIBS_USER and R_LIBS_SITE are both now
    set to the R system default if unset or empty, and can be set to
    NULL to indicate an empty list of user or site library
    directories.
  * The warning for axis()(-like) calls in cases of relatively small
    ranges (typically in log-scale situations) is slightly improved
    _and_ suppressed from explicit calls to .axisPars() as has always
    been the intention.
  * The contrasts setter function `contrasts&lt;-` gains an explicit
    default how.many = NULL rather than just using missing(how.many).
  * grid.pretty() gains a new optional argument n = 5.
  * There is a new function .pretty() with option bounds as a
    technical-utility version of pretty().  It and pretty() gain a
    new argument f.min with a better than back-compatible default.
  * Function grDevices::axisTicks() and related functions such as
    graphics::axis() work better, notably for the log scale; partly
    because of the pretty() improvements, but also because care is
    taken e.g., when ylim is finite but diff(ylim) is infinite.
  * nclass.FD() gains a digits option.
  * The R Mathlib internal C function bd0() (called indirectly from a
    dozen probability density and distribution functions such as
    dpois(), dbinom(), dgamma(), pgamma() _etc_) has been
    complemented by a more sophisticated and (mostly) more accurate C
    function ebd0(), currently called only by internal dpois_raw()
    improving accuracy for R level dpois() and potentially others
    calling it such as dnbinom(), dgamma() or pgamma().  (Thanks to
    Morten Welinder's PR#15628.)
  * write.ftable() gains sep = " " argument as suggested by Thomas
    Soeiro.
  * The names of the locale categories supported by R's
    Sys.getlocale() and Sys.setlocale() are now provided by variable
    .LC.categories in the base namespace.
  * The Date and POSIXt methods for hist() and the histogram method
    for plot() now also use the new default col = "lightgray" in
    consistency with the corresponding change to hist()'s default for
    R 4.0.0.
  * hist.default() gains new fuzz argument, and the histogram plot
    method no longer uses fractional axis ticks when displaying
    counts ("Frequency").
  * mapply() and hence Map() now also obey the "max-or-0-if-any"
    recycling rule, such that, e.g., Map(`+`, 1:3, 1[0]) is valid
    now.
  * as.character(&lt;obj&gt;) for "hexmode" or "octmode" objects now
    fulfils the important basic rule as.character(x)[j] ===
    as.character(x[j]).
  * The set utility functions, notably intersect() have been tweaked
    to be more consistent and symmetric in their two set arguments,
    also preserving a common mode.
  * substr(ch, start,end) &lt;- new now e.g., preserves names(ch); ditto
    for substring(), thanks to a patch from Brodie Gaslam.
  * plot(&lt;lm&gt;) gains a extend.ylim.f argument, in partial response to
    PR#15285; further PR#17784 is fixed thanks to several
    contributors and a patch by Elin Waring.  The Cook's dist
    contours get customizable via cook.col and cook.lty with a
    different default color and their legend is nicer by default and
    customizable via cook.legendChanges.
  * Attempting to subset an object that is not subsettable now
    signals an error of class notSubsettableError. The
    non-subsettable object is contained in the object field of the
    error condition.
  * Subscript-out-of-bounds errors are now signaled as errors of
    class subscriptOutOfBoundsError.
  * Stack-overflow errors are now signaled as errors inheriting from
    class stackOverflowError. See ?stackOverflowError for more
    details.
  * New partly experimental Sys.setLanguage() utility, solving the
    main problem of PR#18055.
  * gettext() and gettextf() get a new option trim = TRUE which when
    set to false allows translations for strings such as "Execution
    halted\n" typical for C code.
  * An experimental implementation of hash tables is now available.
    See ?hashtab for more details.
  * identical() gains a extptr.as.ref argument for requesting that
    external pointer objects be compared as reference objects.
  * reorder() gets an argument decreasing which it passes to sort()
    for level creation; based on the wish and patch by Thomas Soeiro
    in PR#18243.
  * as.vector() gains a data.frame method which returns a simple
    named list, also clearing a long standing 'FIXME' to enable
    as.vector(&lt;data.frame&gt;, mode="list").  This breaks code relying
    on as.vector(&lt;data.frame&gt;) to return the unchanged data frame.
  * legend() is now vectorized for arguments cex, x.intersp, and
    text.width.  The latter can now also be specified as a vector
    (one element for each column of the legend) or as NA for
    computing a proper column wise maximum value of strwidth(legend).
    The argument y.intersp can be specified as a vector with one
    entry for each row of the legend.
    legend() also gains new arguments title.cex and title.font.
    Thanks to Swetlana Herbrandt.
  * Deparsing no longer remaps attribute names dim, dimnames, levels,
    names and tsp to historical S-compatible names (which structure()
    maps back).
  * sample() and sample.int() have additional sanity checks on their
    size and n arguments.
    all.equal.numeric() gains a sanity check on its tolerance
    argument - calling all.equal(a, b, c) for three numeric vectors
    is a surprisingly common error.
    mean(na.rm =), rank(na.last =), barplot(legend.text =),
    boxplot(), contour(drawlabels =), polygon(border =) and
    methods::is(class2 =) have more robust sanity checks on their
    arguments.
    R CMD Rd2pdf (used by R CMD check) has a more robust sanity check
    on the format of \alias{} commands.
  * psigamma(x, deriv) for negative x now also works for deriv = 4
    and 5; their underlying C level dpsifn() is documented in
    'Writing R Extensions'.
  * The HTML help system now uses HTML5 (wish of PR#18149).
  * ks.test() now provides exact p-values also with ties and MC
    p-values in the two-sample (Smirnov) case.  By Torsten Hothorn.
  * ks.test() gains a formula interface, with y ~ 1 for the
    one-sample (Kolmogorov) test and y ~ group for the two-sample
    (Smirnov) test.  Contributed by Torsten Hothorn.
  * The return value from ks.test() now has class c("ks.test",
    "htest") - packages using try() need to take care to use
    inherits() and not == on the class.
  * New functions psmirnov(), qsmirnov() and rsmirnov() in package
    stats implementing the asymptotic and exact distributions of the
    two-sample Smirnov statistic.
  * iconv() now allows sub = "c99" to use C99-style escapes for UTF-8
    inputs which cannot be converted to encoding to.
  * In a forward pipe |&gt; expression it is now possible to use a named
    argument with the placeholder _ in the rhs call to specify where
    the lhs is to be inserted.  The placeholder can only appear once
    on the rhs.
  * The included LAPACK sources have been updated to version 3.10.0,
    except for the four Fortran 77 routines which 3.10.0 has
    re-implemented in Fortran 90 (where the older versions have been
    retained as the R build process does not support Fortran 90).
  * path.expand() and most other uses of tilde expansion now warn if
    a path would be too long if expanded.  (An exception is
    file.exists(), which silently returns false.)
  * trunc(&lt;Date&gt;, *) now supports units = "months" or "years" for
    consistency with the POSIXt method, thanks to Dirk Eddelbuettel's
    proposal in PR#18099.
  * list2DF() now checks that its arguments are of the same length,
    rather than use recycling.
  * The HTML help system has several new features: LaTeX-like math
    can be typeset using either KaTeX or MathJax, usage and example
    code is highlighted using Prism, and for dynamic help the output
    of examples and demos can be shown within the browser if the
    knitr package is installed. These features can be disabled by
    setting the environment variable _R_HELP_ENABLE_ENHANCED_HTML_ to
    a false value.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 15
    and so packages that provide graphics devices should be
    reinstalled.
  * The grid package now allows the user to specify a "vector" of
    pattern fills.  The fill argument to gpar() accepts a list of
    gradients and/or patterns and the functions linearGradient(),
    radialGradient(), and pattern() have a new group argument.
    Points grobs (data symbols) can now also have a pattern fill.
    The grobCoords() function now returns a more informative and
    complex result.
  * The grid package has new functions for drawing isolated groups:
    grid.group(), grid.define(), and grid.use().  These functions add
    compositing operators and affine transformations to R's graphics
    capabilities.
    The grid package also has new functions for stroking and filling
    paths: grid.stroke(), grid.fill(), and grid.fillStroke().
    A new function as.path() allows the user to specify the fill rule
    for a path that is to be used for clipping, stroking, or filling;
    available options are "winding" and "evenodd".  A new function
    as.mask() allows the user to specify the type of a mask;
    available options are "alpha" and "luminance".
    These new features are only supported so far (at most) on the
    Cairo-based graphics devices and on the pdf() device.
  * dev.capabilities() reports on device support for the new
    features.
  * par() now warns about unnamed non-character arguments to prevent
    misuse such as {usr &lt;- par("usr"); par(usr)}.
  INSTALLATION:
  * Facilities for accessing ftp:// sites are no longer tested
    (except _pro tem_ for curlGetHeaders()) as modern browsers have
    removed support.
  * R can now be built with DEFS = -DSTRICT_R_HEADERS .
  PACKAGE INSTALLATION:
  * R CMD INSTALL no longer tangles vignettes. This completes an R
    CMD build change in R 3.0.0 and affects packages built before R
    3.0.2. Such packages should be re-made with R CMD build to have
    the tangled R code of vignettes shipped with the tarball.
  * USE_FC_LEN_T will become the default: this uses the correct
    prototypes for Fortran BLAS/LAPACK routines called from C/C++,
    and requires adjustment of most such calls - see 'Writing R
    Extensions' SS6.6.2.  (This has been supported since R 3.6.2.)
  * Package installation speed for packages installed with
    keep.source has been improved. This resolve the issue reported by
    Ofek Shilon in PR#18236.
  UTILITIES:
  * R CMD check can optionally report files/directories left behind
    in home, /tmp (even though TMPDIR is set) and other directories.
    See the "R Internals" manual for details.
  * R CMD check now reports byte-compilation errors during
    installation.  These are not usually fatal but may result in
    parts of the package not being byte-compiled.
  * _R_CHECK_DEPENDS_ONLY_ can be applied selectively to examples,
    tests and/or vignettes in R CMD check: see the "R Internals"
    manual.
  * _R_CHECK_SRC_MINUS_W_IMPLICIT_ now defaults to true: recent
    versions of Apple clang on macOS have made implicit function
    declarations in C into a compilation error.
  * R CMD check --as-cran makes use of the environment variable
    AUTORECONF.  See the "R Internals" manual SS8 for further details.
  * R CMD check --use-valgrind also uses valgrind when re-building
    vignettes as some non-Sweave vignettes unhelpfully comment out
    all their code when R CMD check runs vignettes.
  * Errors in re-building vignettes (unless there are LaTeX errors)
    are reported by R CMD check as ERROR rather than WARNING when
    running vignettes has been skipped (as it frequently is in CRAN
    checks and by --as-cran).
  * R CMD Rd2pdf gains a --quiet option that is used by R CMD build
    when building the PDF package manual.
  * R CMD Rd2pdf now always runs LaTeX in batch mode, consistent with
    Texinfo &gt;= 6.7. The --batch option is ignored.
  * R CMD build and R CMD check now include the Rd file name and line
    numbers in the error message of an \Sexpr evaluation failure.
  * For packages using the \doi Rd macro (now an install-time \Sexpr)
    but no other dynamic Rd content, R CMD build now produces a
    smaller tarball and is considerably faster - skipping temporary
    package installation.
  C-LEVEL FACILITIES:
  * The non-API header R_ext/R-ftp-http.h is no longer provided, as
    the entry points it covered are now all defunct.
  * A number of non-API declarations and macro definitions have been
    moved from the installed header Rinternals.h to the internal
    header Defn.h. Packages that only use entry points and
    definitions documented to be part of the API as specified in
    'Writing R Extensions' SS6 should not be affected.
  * The macro USE_RINTERNALS no longer has any effect when compiling
    package code.  Packages which also use R_NO_REMAP will need to
    ensure that the remapped names are used for calls to API
    functions that were formerly also made available as macros.
  * The deprecated legacy S-compatibility macros PROBLEM, MESSAGE,
    ERROR, WARN, WARNING, RECOVER, ... are no longer defined in
    R_exts/RS.h (included by R.h).  Replace these by calls to
    Rf_error and Rf_warning (defined in header R_ext/Error.h included
    by R.h).
    Header R_ext/RS.h no longer includes R_ext/Error.h.
  * Header R_ext/Constants.h (included by R.h) when included from C++
    now includes the C++ header cfloat rather than the C header
    float.h (now possible as C++11 is required).
  * The legacy S-compatibility macros DOUBLE_* in R_ext/Constants.h
    (included by R.h) are deprecated.
  * The deprecated S-compatibility macros SINGLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * R_Calloc, R_Free and R_Realloc are preferred to their unprefixed
    forms and error messages now use the prefix. These forms were
    introduced in R 3.4.0 and are available even when
    STRICT_R_HEADERS is defined.
  * rmultinom has been documented in 'Writing R Extensions' SS6 so is
    now part of the R API.
  * Similarly, Rtanpi, called from R level tanpi() is now part of the
    R API.
  * The long-deprecated, undocumented and non-API entry point call_R
    is no longer declared in R_ext/RS.h (included by R.h).
  * The header S.h which has been unsupported since Jan 2016 has been
    removed.  Use R.h instead.
  DEPRECATED AND DEFUNCT:
  * The (non-default and deprecated) method = "internal" for
    download.file() and url() no longer supports http:// nor ftp://
    URIs.  (It is used only for file:// URIs.)
    On Windows, download.file(method = "wininet") no longer supports
    ftp:// URIs.  (It is no longer the default method, which is
    "libcurl" and does.)
    On Windows, the deprecated method = "wininet" now gives a warning
    for http:// and https:// URIs for both download.file() and url().
    (It is no longer the default method.)
  * On Windows, the command-line option --max-mem-size and
    environment variable R_MAX_MEM_SIZE are defunct.  The memory
    allocation limit was important for 32-bit builds, but these are
    no longer supported.
  * default.stringsAsFactors() is now formally deprecated, where that
    was only mentioned on its regular help page, previously.  So it
    now gives a warning if called.
  * unix.time() is defunct now; it had been deprecated since R 3.4.0.
  BUG FIXES:
  * Setting digits = 0 in format(), print.default() (and hence
    typically print()) or options() is again invalid.  Its behaviour
    was platform-dependent, and it is unclear what "zero significant
    digits" should mean (PR#18098).
  * Messages from C code in the cairo section of package grDevices
    are now also offered for translation, thanks to Michael Chirico's
    PR#18123.
  * mean(x) with finite x now is finite also without "long.double"
    capability.
  * R CMD Rd2pdf no longer leaves an empty build directory behind
    when it aborts due to an already existing output file.  (Thanks
    to Sebastian Meyer's PR#18141.)
  * density(x, weights = w, na.rm = TRUE) when anyNA(x) is true, now
    removes weights "in parallel" to x, fixing PR#18151, reported by
    Matthias Gondan.  Additionally, it gets a subdensity option.
  * Conversion of \Sexpr[]{&lt;expR&gt;} to LaTeX or HTML no longer
    produces long blocks of empty lines when &lt;expR&gt; itself contains
    several lines all producing empty output.  Thanks to a report and
    patch by Ivan Krylov posted to R-devel.
  * R CMD build no longer fails if a package vignette uses child
    documents and inst/doc exists.  (Thanks to Sebastian Meyer's
    PR#18156.)
  * When an R documentation ('help' source) file man/foo.Rd in a
    package has \donttest{..} examples with a syntax error, it is now
    signalled as ERROR and with correct line numbers relating to the
  * -Ex.R file, thanks to Duncan Murdoch and Sebastian Meyer's
    reports and patch proposals in PR#17501.
  * Improved determination of the correct translation domain in
    non-base packages, addressing the combination of PR#18092 and
    PR#17998 (#c6) with reports and _augmented_ patch #2904 by
    Suharto Anggono.
    Note that "R-base" is no longer the default domain e.g., for
    top-level calls to gettext(); rather translation needs explicit
    domain = * specification in such cases.
  * identical(attrib.as.set=FALSE) now works correctly with data
    frames with default row names (Thanks to Charlie Gao's PR#18179).
  * txtProgressBar() now enforces a non-zero width for argument char,
    without which no progress can be visible.
  * dimnames(table(d)) is more consistent in the case where d is a
    list with a single component, thanks to Thomas Soeiro's report to
    R-devel.
    Further, table(d1, d2) now gives an error when d1 and d2 are data
    frames as suggested by Thomas in PR#18224.
  * Fix for drawing semi-transparent lines and fills on the native
    Windows graphics device (PR#18219 and PR#16694).  Thanks to Nick
    Ray for helpful diagnosis on Bugzilla.
  * The deparser now wraps sub-expressions such as if(A) ..  with
    parentheses when needed; thanks to Duncan Murdoch's PR#18232 and
    Lionel Henry's patches there.
  * remove.packages() no longer tries to uninstall Priority: base
    packages, thanks to a report and suggestions by Colin Fay in
    PR#18227.
  * win.metafile() now has xpinch and ypinch arguments so that the
    user can override Windows' (potentially wrong) guess at device
    dimensions.
  * x[i] and x[[i]] for non-integer i should now behave in all cases
    as always documented: the index used is equivalent to
    as.integer(i) unless that would overflow where trunc(i) is used
    instead; thanks to Suharto Anggono's report and patch proposals
    in PR#17977.
  * asOneSidedFormula() now associates the resulting formula with the
    global environment rather than the evaluation environment created
    for the call.
  * &lt;bibentry&gt;$name now matches the field name case-insensitively,
    consistent with bibentry() creation and the replacement method.
  * cbind() failed to detect some length mismatches with a mixture of
    time-series and non-time-series inputs.
  * The default LaTeX style file Sweave.sty used by the RweaveLatex
    driver no longer loads the obsolete ae package; thanks to a
    report by Thomas Soeiro in PR#18271.  Furthermore, it now skips
    \usepackage[T1]{fontenc} for engines other than pdfTeX (if
    detected) or if the new [nofontenc] option is used.
  * smooth.spline() now stores its logical cv argument more safely,
    fixing a rare bug when printing, and also stores n.
  * smooth.spline(x,y,*) now computes the cv.crit statistic
    correctly, also when is.unsorted(x), fixing PR#18294.
  * The data.frame method of rbind() now warns when binding
    not-wholly-recycling vectors, by analogy to the default method
    (for matrices).
  * setAs() finds the correct class for name to when multiple
    packages define a class with that name. Thanks to Gabor Csardi
    for the report.
  * Fix for detaching a package when two classes of the same name are
    present in method signatures for the same generic. Thanks to
    Gabor Csardi for the report.
  * match.arg("", c("", "a", "B")) gives a better error message, in
    part from PR#17959, thanks to Elin Waring.
  * R CMD Sweave --clean no longer removes pre-existing files or
    subdirectories (PR#18242).
  * The quartz() device no longer splits polylines into subpaths.
    That has caused narrowly-spaced lines with many points to always
    look solid even when dashed line type was used due to dash phase
    restarts.
  * Deparsing constructs such as quote(1 + `!`(2) + 3) works again as
    before R 3.5.0, thanks to the report and patch in PR#18284 by
    Suharto Anggono.
  * as.list(f) for a factor f now keeps names(f), fixing PR#18309.
  * qbeta(.001, .9, .009) and analogous qf() calls now return a
    correct value instead of NaN or wrongly 1, all with a warning;
    thanks to the report by Ludger Goeminne in PR#18302.
  * plot.lm() failed to produce the plot of residuals vs.  factor
    levels (i.e., which=5 when leverages are constant) for models
    with character predictors (PR#17840).
  * interaction.plot(..., xtick = TRUE) misplaced the x-axis line
    (PR#18305).
  * Not strictly fixing a bug, format()ing and print()ing of
    non-finite Date and POSIXt values NaN and +/-Inf no longer show
    as NA but the respective string, e.g., Inf, for consistency with
    numeric vector's behaviour, fulfilling the wish of PR#18308.
  * R CMD check no longer runs test scripts generated from
    corresponding .Rin files twice and now signals an ERROR if
    processing an .Rin script fails.
  * tools::Rd2txt() used for plain-text help pages now renders \hrefs
    (if tools::Rd2txt_options(showURLs = TRUE)) and \urls with
    percent-encoding and standards-compliant delimiting style (angle
    brackets and no URL: prefix).  \email is now rendered with a
    mailto: prefix.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1655985600">- CHANGES IN R 4.2.1:
  NEW FEATURES:
  * New function utils::findCRANmirror() to find out if a CRAN mirror
    has been selected, otherwise fallback to the main site.  This
    behaves in the same way as tools::CRAN_package_db() and is
    intended for packages wishing to access CRAN for purposes other
    than installing packages.
    The need for this was shown by a day when the main CRAN website
    was offline and a dozen or so packages which had its URL
    hardcoded failed their checks.
  INSTALLATION on a UNIX-ALIKE:
  * The libraries searched for by --with-blas (without a value) now
    include BLIS (after OpenBLAS but before ATLAS).  And on macOS,
    the Accelerate framework (after ATLAS).  (This is patterned after
    the AX_BLAS macro from the Autoconf Archive.)
  * The included LAPACK sources have been updated to 3.10.1.
  UTILITIES:
  * The (full path to) the command tidy to be used for HTML
    validation can be set by environment variable R_TIDYCMD.
  * Setting environment variable _R_CHECK_RD_VALIDATE_RD2HTML_ to a
    false value will override R CMD check --as-cran and turn off HTML
    validation.  This provides a way to circumvent a problematic
    tidy.
    The 2006 version that ships with macOS is always skipped.
  C-LEVEL FACILITIES:
  * The undocumented legacy declarations of Sint, Sfloat, SINT_MAX
    and SINT_MIN in header R.h are deprecated.
  BUG FIXES:
  * fisher.test(d) no longer segfaults for "large" d; fixing PR#18336
    by preventing/detecting an integer overflow reliably.
  * tar(., files=*) now produces correctly the warning about invalid
    uid or gid of files, fixing PR#18344, reported by Martin Morgan.
  * tk_choose.files() with multi = FALSE misbehaved on paths
    containing spaces (PR#18334) (regression introduced in R 4.0.0).
  * sort(x, partial = ind, *) now works correctly notably for the
    non-default na.last = FALSE or TRUE, fixing PR#18335 reported by
    James Edwards.
  * Environment variable _R_CHECK_XREFS_REPOSITORIES_ is only used
    for checking .Rd cross-references in R CMD check (as documented)
    and not for other uses looking for a CRAN mirror.
  * The search for a CRAN mirror when checking packages now uses
    getOption("repos") if that specifies a CRAN mirror, even when it
    does not also specify all three Bioconductor repositories (as was
    previously required).
  * The HTML code generated by tools::Rd2HTML() has been improved to
    pass tidy 5.8.0.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1667217600">- CHANGES IN R 4.2.2:
  NEW FEATURES:
  * tools::Rdiff(useDiff = TRUE) checks for the presence of an
    external diff command and switches to useDiff = FALSE if none is
    found.  This allows R CMD Rdiff to always work.
  * On Windows, environment variable R_LIBCURL_SSL_REVOKE_BEST_EFFORT
    can be used to switch to only 'best-effort' SSL certificate
    revocation checks with the default "libcurl" download method.
    This reduces security, but may be needed for downloads to work
    with MITM proxies (PR#18379).
  * (macOS) The run-time check for libraries from XQuartz for X11 and
    Tcl/Tk no longer uses otool from the Apple Developer Tools
    (PR#18400).
  * The LaTeX style for producing the PDF manuals, Rd.sty, now loads
    the standard amsmath, amsfonts and amssymb packages for greater
    coverage of math commands in the Rd \eqn and \deqn macros.  The
    \mathscr LaTeX command is also provided (via the mathrsfs
    package, if available, or the amsfonts bundle otherwise),
    fulfilling the wish of PR#18398.
  * (Windows) The default format of readClipboard() and
    writeClipboard() has been changed to 13 (CF_UNICODETEXT).
  INSTALLATION on a UNIX-ALIKE:
  * The PDF manuals (if built) can be compacted by the new target
    make compact-pdf (at the top level or in directory doc/manual).
  * There is now configure support for LLVM clang 15 on Linux, which
    defaults to position-independent (PIE) executables whereas
    gfortran does not.
  * Many small changes to ease compilation (and suppress warnings)
    with LLVM clang 15.
  BUG FIXES:
  * Rscript -e would fail if stdin were closed (Reported by Henrik
    Bengtsson.)
  * qt(*, log.p=TRUE) in outer tails no longer produces NaN in its
    final steps, thus fixing PR#18360.
  * tools::Rd2latex() now escapes hashes and ampersands when writing
    URLs, fixing LaTeX errors with such URLs in \tabular.
  * When isGeneric(f, fdef=*) is used with mismatching names, the
    warning is better understandable; reported (with fix) in PR#18370
    by Gabe Becker.
  * poly(x, n) now works again (and is now documented) when x is a
    "Date" or "POSIXct" object, or of another class while fulfilling
    mode(x) == "numeric".  This also enables poly(x, *, raw=TRUE) for
    such variables.  Reported by Michael Chirico to R-devel.
  * write.table(), write.csv() and write.csv2() restore their
    numerical precision (internal equivalent of digits = 15) after an
    interrupt (PR#18384).
  * One can now read also byte FF from a clipboard connection
    (PR#18385).
  * source("") and source(character()) now give more helpful error
    messages.
  * R CMD check --as-cran set _R_CHECK_TIMINGS_ too late to have the
    intended effect.
  * as.POSIXlt(x) now also works with very large dates x, fixing
    PR#18401 reported by Hannes M"uhleisen.
  * Files can now be extracted even from very large zip archives
    (PR#18390, thanks to Martin Jakt).
  * Non-finite objects of class "POSIXlt" are now correctly coerced
    to classes "Date" and "POSIXct"; following up on the extension to
    format() them correctly.
  * Added methods for is.finite(), is.infinite() and is.nan() for
    "POSIXlt" date-time objects.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1678881600">- CHANGES IN R 4.2.3:
  C-LEVEL FACILITIES:
  * The definition of DL_FUNC in R_ext/Rdynload.h has been changed to
    be fully C-compliant.  This means that functions loaded _via_ for
    example R_GetCCallable need to be cast to an appropriate type if
    they have any arguments.
  * .Machine has a new element sizeof.time_t to identify old systems
    with a 32-bit type and hence a limited range of date-times (and
    limited support for dates millions of years from present).
  PACKAGE INSTALLATION:
  * (Windows) The default C++ standard had accidentally been left at
    C++11 when it was changed to C++14 on Unix.
  BUG FIXES:
  * As "POSIXlt" objects may be "partially filled" and their list
    components meant to be recycled, length() now is the length of
    the longest component.
  * as.POSIXlt.Date() could underflow for dates in the far past (more
    than half a million years BCE).
  * as.Date.POSIXlt(x) would return "1970-01-01" instead of NA in R
    4.2.2, e.g., for
    x &lt;- as.POSIXlt(c("2019-01-30","2001-1-1"))
    x$mon &lt;- c(0L, NA); as.Date(x)
  * R CMD check failed to apply enabled _R_CHECK_SUGGESTS_ONLY_ to
    examples and vignettes (regression in R 4.2.0).
  * R CMD check did not re-build vignettes in separate processes by
    default (regression in R 4.2.0).
  * Running examples from HTML documentation now restores previous
    knitr settings and options (PR#18420).
  * Quartz: fonts are now located using Core Graphics API instead of
    deprecated ATS which is no longer supported in the macOS 13 SDK
    (PR#18426).  This also addresses an issue where the currently
    used font in the Quartz device context was not correctly
    retained.
  * (Windows) Math symbols in text drawing functions are again
    rendered correctly (PR#18440).  This fixes a regression in R
    4.2.1 caused by a fix in PR#18382 which uncovered an issue in
    GraphApp due to which the symbol charset was not used with TT
    Symbol font face.
  * (Windows) Installing a package with a src/Makefile.{win,ucrt}
    file includes ~/.R/Makevars.win64 in the search for user
    makevars, as documented in "R Installation and Administration"
    and done for packages with a src/Makevars.{win,ucrt} file.
  * format(&lt;POSIXlt_w/_unbalanced_sec&gt;, "....%OS&lt;n&gt;") with n &gt; 0 no
    longer accidentally uses the unbalanced seconds, thanks to
    Suharto Anggono's report (including patch) in PR#18448.
  * solve.default(a, b) works around issues with some versions of
    LAPACK when a contains NA or NaN values.
  * When UseMethod() cannot dispatch, it no longer segfaults
    producing the error message in case of a long class(), thanks to
    Joris Vankerschaver's report (including patch) in PR#18447.
  * When example(foo, ..) produces graphics on an interactive device
    it needs to open itself, it now leaves devAskNewPage() unchanged
    even when it was FALSE, thus fixing a 14 years old '&lt;FIXME&gt;'.
  * packageDescription() again catches errors from encoding
    conversions. This also fixes broken packageVersion() in C locale
    on systems where iconv does not support transliteration.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1681128000">- add patch to build with libcurl &gt;= 8</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1682078400">- CHANGES IN R 4.3.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Calling &amp;&amp; or || with LHS or (if evaluated) RHS of length greater
    than one is now always an error, with a report of the form
    'length = 4' in coercion to 'logical(1)'
    Environment variable _R_CHECK_LENGTH_1_LOGIC2_ no longer has any
    effect.
  NEW FEATURES:
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.10.1.  (This caused some platform-dependent
    changes to package check output.)  And then to the sources from
    LAPACK version 3.11.0 (with changes only to double complex
    subroutines).
  * The included LAPACK sources have been updated to include the four
    Fortran 90 routines rather than their Fortran 77 predecessors.
    This may give some different signs in SVDs or
    eigendecompositions..  (This completes the transition to LAPACK
    3.10.x begun in R 4.2.0.)
  * The LAPACK sources have been updated to version 3.11.0.  (No new
    subroutines have been added, so this almost entirely bug fixes:
    Those fixes do affect some computations with NaNs, including R's
    NA.)
  * The parser now signals _classed_ errors, notably in case of the
    pipe operator |&gt;.  The error object and message now give line and
    column numbers, mostly as proposed and provided by Duncan Murdoch
    in PR#18328.
  * toeplitz() is now generalized for asymmetric cases, with a
    toeplitz2() variant.
  * xy.coords() and xyz.coords() and consequently, e.g., plot(x,y,
    log = "y") now signal a _classed_ warning about negative values
    of y (where log(.) is NA).  Such a warning can be specifically
    suppressed or caught otherwise.
  * Regular expression functions now check more thoroughly whether
    their inputs are valid strings (in their encoding, e.g. in
    UTF-8).
  * The performance of grep(), sub(), gsub() and strsplit() has been
    improved, particularly with perl = TRUE and fixed = TRUE.  Use of
    useBytes = TRUE for performance reasons should no longer be
    needed and is discouraged: it may lead to incorrect results.
  * apropos() gains an argument dot_internals which is used by the
    completion (help(rcompgen)) engine to also see base internals
    such as .POSIXct().
  * Support in tools::Rdiff() for comparing uncompressed PDF files is
    further reduced - see its help page.
  * qqplot(x, y, ...) gains conf.level and conf.args arguments for
    computing and plotting a confidence band for the treatment
    function transforming the distribution of x into the distribution
    of y (Switzer, 1976, _Biometrika_). Contributed by Torsten
    Hothorn.
  * Performance of package_dependencies() has been improved for cases
    when the number of dependencies is large.
  * Strings newly created by gsub(), sub() and strsplit(), when any
    of the inputs is marked as "bytes", are also marked as "bytes".
    This reduces the risk of creating invalid strings and accidental
    substitution of bytes deemed invalid.
  * Support for readLines(encoding = "bytes") has been added to allow
    processing special text files byte-by-byte, without creating
    invalid strings.
  * iconv(from = "") now takes into account any declared encoding of
    the input elements and uses it in preference to the native
    encoding.  This reduces the risk of accidental creation of
    invalid strings, particularly when different elements of the
    input have different encoding (including "bytes").
  * Package repositories in getOption("repos") are now initialized
    from the repositories file when utils is loaded (if not already
    set, e.g., in .Rprofile).  (From a report and patch proposal by
    Gabriel Becker in PR#18405.)
  * compactPDF() gets a verbose option.
  * type.convert() and hence read.table() get new option tryLogical =
    TRUE with back compatible default.  When set to false, converts
    "F" or "T" columns to character.
  * Added new unit prefixes "R" and "Q" for abbreviating
    (unrealistically large) sizes beyond 10^{27} in standard = "SI",
    thanks to Henrik Bengtsson's PR#18435.
  * as.data.frame()'s default method now also works fine with atomic
    objects inheriting from classes such as "roman", "octmode" and
    "hexmode", such fulfilling the wish of PR#18421, by Benjamin
    Feakins.
  * The as.data.frame.vector() utility now errors for wrong-length
    row.names.  It warned for almost six years, with "Will be an
    error!".
  * sessionInfo() now also contains La_version() and reports codepage
    and timezone when relevant, in both print() and toLatex() methods
    which also get new option tzone for displaying timezone
    information when locale = FALSE.
  * New function R_compiled_by() reports the C and Fortran compilers
    used to build R, if known.
  * predict(&lt;lm&gt;, newdata = *) no longer unnecessarily creates an
    offset of all 0s.
  * solve() for complex inputs now uses argument tol and by default
    checks for 'computational singularity' (as it long has done for
    numeric inputs).
  * predict(&lt;rank-deficient lm&gt;, newdata=*) now obeys a new argument
    rankdeficient, with new default "warnif", warning only if there
    are non-estimable cases in newdata.  Other options include
    rankdeficient = "NA", predicting NA for non-estimable newdata
    cases.  This addresses PR#15072 by Russ Lenth and is based on his
    original proposal and discussions in PR#16158 also by David Firth
    and Elin Waring.  Still somewhat experimental.
  * Rgui console implementation now works better with the NVDA screen
    reader when the full blinking cursor is selected.  The underlying
    improvements in cursor handling may help also other screen
    readers on Windows.
  * The drop-field control in GraphApp can now be left with the TAB
    key and all controls can be navigated in the reverse order using
    the Shift+TAB key, improving accessibility of the Rgui
    configuration editor.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now fully accurate
    (instead of to "only" minimally five digits).
  * demo(error.catching) now also shows off withWarnings() and
    tryCatchWEMs().
  * As an experimental feature the placeholder _ can now also be used
    in the rhs of a forward pipe |&gt; expression as the first argument
    in an extraction call, such as _$coef. More generally, it can be
    used as the head of a chain of extractions, such as _$coef[[2]].
  * Spaces in the environment variable used to choose the R session's
    temporary directory (TMPDIR, TMP and TEMP are tried in turn) are
    now fatal.  (On Windows the 'short path' version of the path is
    tried and used if that does not contain a space.)
  * all.equal.numeric() gets a new optional switch giveErr to return
    the numeric error as attribute.  Relatedly,
    stopifnot(all.equal&lt;some&gt;(a, b, ..)) is as "smart" now, as
    stopifnot(all.equal(....)) has been already, thus allowing
    customized all.equal&lt;Some&gt;() wrappers.
  * R on Windows is now able to work with path names longer than 260
    characters when these are enabled in the system (requires at
    least Windows 10 version 1607).  Packages should be updated to
    work with long paths as well, instead of assuming PATH_MAX to be
    the maximum length.  Custom front-ends and applications embedding
    R need to update their manifests if they wish to allow this
    feature.  See
    &lt;https://blog.r-project.org/2023/03/07/path-length-limit-on-windows&gt;
    for more information.
  * 'Object not found' and 'Missing argument' errors now give a more
    accurate error context. Patch provided by Lionel Henry in
    PR#18241.
  * The @ operator is now an S3 generic. Based on contributions by
    Tomasz Kalinowski in PR#18482.
  * New generic chooseOpsMethod() provides a mechanism for objects to
    resolve cases where two suitable methods are found for an Ops
    Group Generic. This supports experimenting with alternative
    object systems. Based on contributions by Tomasz Kalinowski in
    PR#18484.
  * inherits(x, what) now accepts values other than a simple
    character vector for argument what. A new generic, nameOfClass(),
    is called to resolve the class name from what. This supports
    experimenting with alternative object systems. Based on
    contributions by Tomasz Kalinowski in PR#18485.
  * Detection of BLAS/LAPACK in use (sessionInfo()) with FlexiBLAS
    now reports the current backend.
  * The "data.frame" method for subset() now warns about extraneous
    arguments, typically catching the use of = instead of == in the
    subset expression.
  * Calling a:b when numeric a or b is longer than one may now be
    made into an error by setting environment variable
    _R_CHECK_LENGTH_COLON_ to a true value, along the proposal in
    PR#18419 by Henrik Bengtsson.
  * density(x, weights = *) now warns if automatic bandwidth
    selection happens without using weights; new optional warnWbw may
    suppress the warning.  Prompted by Christoph Dalitz' PR#18490 and
    its discussants.
  * rm(list = *) is faster and more readable thanks to Kevin Ushey's
    PR#18492.
  * The plot.lm() function no longer produces a normal Q-Q plot for
    GLMs. Instead it plots a half-normal Q-Q plot of the absolute
    value of the standardized deviance residuals.
  * The print() method for class "summary.glm" no longer shows
    summary statistics for the deviance residuals by default.  Its
    optional argument show.residuals can be used to show them if
    required.
  * The tapply() function now accepts a data frame as its X argument,
    and allows INDEX to be a formula in that case. by.data.frame()
    similarly allows INDICES to be a formula.
  * The performance of df[j] &lt;- value (including for missing j) and
    write.table(df) has been improved for data frames df with a large
    number of columns.  (Thanks to Gabriel Becker's PR#18500,
    PR#18503 and discussants, prompted by a report from Toby Dylan
    Hocking on the R-devel mailing list.)
  * The matrix multiply operator %*% is now an S3 generic, belonging
    to new group generic matrixOps.  From Tomasz Kalinowski's
    contribution in PR#18483.
  * New function array2DF() to convert arrays to data frames,
    particularly useful for the list arrays created by tapply().
  DATES and TIMES:
  * On platforms where (non-UTC) datetimes before 1902 (or before
    1900 as with system functions on recent macOS) are guessed by
    extrapolating time zones from 1902-2037, there is a warning at
    the first use of extrapolation in a session.  (As all time zones
    post 2037 are extrapolation, we do not warn on those.)
  * (Platforms using --with-internal-tzone, including Windows and by
    default macOS). How years are printed in dates or date-times can
    be controlled by environment variable R_PAD_YEARS_BY_ZERO.  The
    default remains to pad to 4 digits by zeroes, but setting value
    no gives no padding (as used by default by glibc).
  * strftime() tries harder to determine the offset for the "%z"
    format, and succeeds on the mainstream R platforms.
  * strftime() has a limit of 2048 bytes on the string produced -
    attempting to exceed this is an error.  (Previously it silently
    truncated at 255 bytes.)
  * sessionInfo() records (and by default prints) the system time
    zone as part of the locale information.  Also, the source
    (system/internal) of the date-time conversion and printing
    functions.
  * Objects of class "POSIXlt" created in this version of R always
    have 11 components: component zone is always set, and component
    gmtoff is set for times in UTC and usually set on the (almost
    all) platforms which have C-level support, otherwise is NA.
  * There are comprehensive validity checks on the structure of
    objects of class "POSIXlt" when converting (including formatting
    and printing).  (This avoids mis-conversions of hand-crafted
    objects.)
  * There is some support for using the native date-time routines on
    macOS: this is only viable on recent versions (e.g. 12.6 and 13)
    and does get wrong some historical changes (before 1900, during
    WWII).  Use of --with-internal-tzone remains the default.
  * as.POSIXct(&lt;numeric&gt;) and as.POSIXlt(.) (without specifying
    origin) now work.  So does as.Date(&lt;numeric&gt;).
  * as.Date.POSIXct(., tz) now treats several tz values, notably
    "GMT" as equivalent to "UTC", proposed and improved by Michael
    Chirico and Joshua Ulrich in PR#17674.
  * Experimental balancePOSIXlt() utility allows using "ragged" and
    or out-of-range "POSIXlt" objects more correctly, e.g., in
    subsetting and subassignments.  Such objects are now documented.
    More experimentally, a "POSIXlt" object may have an attribute
    "balanced" indicating if it is known to be filled or fully
    balanced.
  * Functions axis.Date() and axis.POSIXct() are rewritten to gain
    better default tick locations and better default formats by using
    prettyDate(). Thanks to Swetlana Herbrandt.
  * The mapping of Windows' names for time zones to IANA's 'Olson'
    names has been updated.  When ICU is available (it is by
    default), it is used to get a mapping for the current region set
    in Windows.  This can be overridden by setting environment
    variable TZ to the desired Olson name - see OlsonNames() for
    those currently available.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 16
    and so packages that provide graphics devices should be
    reinstalled.
  * The grDevices and grid packages have new functions for rendering
    typeset glyphs, primarily: grDevices::glyphInfo() and
    grid::grid.glyph().
    Rendering of typeset glyphs is only supported so far on the
    Cairo-based graphics devices and on the pdf() and quartz()
    devices.
  * The defined behaviour for "clear" and "source" compositing
    operators (via grid::grid.group()) has been changed (to align
    better with simple interpretation of original Porter-Duff
    definitions).
  * Support for gradients, patterns, clipping paths, masks, groups,
    compositing operators, and affine transformations has been added
    to the quartz() device.
  INSTALLATION on a UNIX-ALIKE:
  * A system installation of generic LAPACK 3.10.0 or later will be
    preferred to the version in the R sources.
    configure option --with-lapack=no (equivalently --without-lapack)
    forces compilation of the internal LAPACK sources.
    If --with-lapack is not specified, a system liblapack is looked
    for and used if it reports version 3.10.0 or later and does not
    contain BLAS routines.
    Packages using LAPACK will need to be reinstalled if this changes
    to using an external library.
  * On aarch64 Linux platforms using GCC, configure now defaults to
  - fPIC (instead of -fpic), as desired in PR#18326.
  * configure now checks conversion of datetimes between POSIXlt and
    POSIXct around year 2020.  Failure (which has been seen on
    platforms missing tzdata) is fatal.
  * If configure option --with-valgrind-instrumentation is given
    value 1 or 2, option --with-system-valgrind-headers is now the
    default and ignored (with a warning).  It is highly recommended
    that the system headers are installed alongside valgrind: they
    are part of its packaging on some Linux distributions and
    packaged separately (e.g. in the valgrind-devel RPM) on others.
    configure will give a warning if they are not found.
    The system headers will be required in a future release of R to
    build with valgrind instrumentation.
  * libcurl 8.x is now accepted by configure: despite a change in
    major version number it changes neither API nor ABI.
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools43, an update of the Rtools42 toolchain.  It is
    based on gcc 12 and newer versions of MinGW-W64, binutils and
    libraries.  At this time R-devel can still be built using
    Rtools42 without changes, but when R-devel is installed via the
    installer, it will by default look for Rtools43.
  * Old make targets rsync-extsoft and 32-bit ones that are no longer
    needed have been removed.
  * Default builds (including for packages) no longer select C99.
    Thus the C standard used is the default for the compiler, which
    for the toolchain in Rtools43 is C17.  (This is consistent with
    Unix builds.)
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++17 where
    available (which it is on all currently checked platforms): if
    not C++14 or C++11 is used if available otherwise C++ is not
    supported.
  * USE_FC_LEN_T is the default: this uses the correct
    (compiler-dependent) prototypes for Fortran BLAS/LAPACK routines
    called from C/C++, and requires adjustment of many such calls -
    see 'Writing R Extensions' SS6.6.1.
  * There is initial support for C++23 as several compilers are now
    supporting -std=c++23 or -std=c++2b or similar.  As for C++20,
    there no additional configure checks for C++23 features beyond a
    check that the compiler reports a __cplusplus value greater than
    that in the C++20 standard.  C++ feature tests should be used.
  * There is support for a package to indicate the version of the C
    standard which should be used to compile it, and for the
    installing user to specify this.  In most cases R defaults to the
    C compiler's default standard which is C17 (a `bug-fix' of C11) -
    earlier versions of R or compilers may have defaulted to C99.
    Current options are:
    USE_C17 Use a standard that is at most C17.  The intention is to
    allow legacy packages to still be installed when later C
    standards become the default, including packages using new
    keywords as identifiers or with K&amp;R-style function
    declarations.  This will use C17 if available, falling back
    to C11.
    USE_C90 Use the C90 (aka C89) standard.  (As that standard did
    not require compilers to identify that version, all we can
    verify is that the compiler does not claim to be using a
    later standard.  It may accept C99 features - for example
    clang accepts // to make comments.)
    USE_C99 Use the C99 standard. This should be rarely needed - it
    avoids the few new features of C11/C17 which can be useful if
    a package assumes them if C17 is specified and they are not
    implemented.
    USE_C23 Use C23 (or in future, later).  Compiler/library support
    for C23 is still being implemented, but LLVM clang from
    15.0.0 and the upcoming GCC 13 have quite extensive support.
    These can be specified as part of the SystemRequirements field in
    the package's DESCRIPTION file or _via_ options --use-C17 and so
    on of R CMD INSTALL and R CMD SHLIB.
    For further details see "Writing R Extensions" SS1.2.5.
  * (Windows) A src/Makefile.ucrt or src/Makefile.win file is now
    included after R_HOME/etcR_ARCH/Makeconf and so no longer needs
    to include that file itself.  Installation of a package with such
    a file now uses a site Makevars file in the same way as a package
    with a src/Makevars.win file would.
  * configure is now passed crucial variables such as CC and CFLAGS
    in its environment, as many packages were not setting them (as
    documented in 'Writing R Extensions' SS1.2).
    This has most effect where configure is used to compile parts of
    the package - most often by cmake or libtool which obfuscate the
    actual compile commands used.
    Also used for configure.win and configure.ucrt on Windows.
  FORTRAN FLAGS:
  * The flag -fno-optimize-sibling-calls is no longer forced for
    gfortran 7 and later.  It should no longer be needed now using
    'hidden' character-length arguments when calling BLAS/LAPACK
    routines from C/C++ is the default even for packages.  (Unless
    perhaps packages call Fortran code from C/C++ without using R's
    headers and without allowing for these arguments.)
  C-LEVEL FACILITIES:
  * The deprecated S-compatibility macros DOUBLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * The deprecated legacy typedefs of Sint and Sfloat in header R.h
    are no longer defined, and that header no longer includes header
    limits.h from C nor climits from C++.
  * New macro CAD5R() is provided in Rinternals.h and used in a few
    places in the R sources.
  * ALTREP now supports VECSXP vectors. Contributed by Gabor Csardi
    in PR#17620.
  * The Rcomplex definition (in header R_ext/Complex.h) has been
    extended to prevent possible mis-compilation when interfacing
    with Fortran (PR#18430).  The new definition causes compiler
    warnings with static initializers such as {1, 2}, which can be
    changed to {.r=1, .i=2}.
    Using the new definition from C++ depends on compiler extensions
    supporting C features that have not been incorporated into the
    C++ standards but are available in g++ and clang++: this may
    result in C++ compiler warnings but these have been worked around
    for recent versions of common compilers (GCC, Apple/LLVM clang,
    Intel).
    It is intended to change the inclusion of header R_ext/Complex.h
    by other R headers, so C/C++ code files which make use of
    Rcomplex should include that header explicitly.
  UTILITIES:
  * R CMD check does more checking of package .Rd files, warning
    about invalid email addresses and (some) invalid URIs and noting
    empty \item labels in description lists.
  * R CMD check now also reports problems when reading package news
    in md (file NEWS.md) and (optionally) plain text (file NEWS)
    formats.
  * _R_CHECK_TIMINGS_ defaults to a value from the environment even
    for R CMD check --as-cran; this allows for exceptionally fast or
    slow platforms.
    It now applies to checking PDF and HTML versions of the manuals,
    and 'checking CRAN incoming feasibility'.
  * R CMD check can optionally (but included in --as-cran) check
    whether HTML math rendering _via_ KaTeX works for the package .Rd
    files.
  * Non-interactive debugger invocations can be trapped by setting
    the environment variable _R_CHECK_BROWSER_NONINTERACTIVE_ to a
    true value.  This is enabled by R CMD check --as-cran to detect
    the use of leftover browser() statements in the package.
  * The use of sprintf and vsprintf from C/C++ has been deprecated in
    macOS 13 and is a known security risk.  R CMD check now reports
    (on all platforms) if their use is found in compiled code:
    replace by snprintf or vsnprintf respectively. [*NB:* whether
    such calls get compiled into the package is platform-dependent.]
  * Where recorded at installation, R CMD check reports the C and
    Fortran compilers used to build R.
    It reports the OS in use (if known, as given by osVersion) as
    well as that R was built for.
    It notes if a C++ standard was specified which is older than the
    current default: many packages have used C++11 to mean 'not
    C++98' - as C++11 is the minimum supported since R 4.0.0, that
    specification can probably be removed.
  * R CMD INSTALL reports the compilers (and on macOS, the SDK) used,
    and this is copied to the output of R CMD check.
    Where a C++ standard is specified, it is reported.
  * R CMD check's 'checking compilation flags in Makevars' has been
    relaxed to accept the use of flags such as -std=f2008 in
    PKG_FFLAGS.
  * tools::buildVignettes() has a new argument skip, which is used by
    R CMD check to skip (and note) vignettes with unavailable
    \VignetteDepends (PR#18318).
  * New generic .AtNames() added to enable class-specific completions
    after @. The formerly internal function findMatches() is now
    exported, mainly for use in methods for .DollarNames() and
    .AtNames().
  DEPRECATED AND DEFUNCT:
  * default.stringsAsFactors() is defunct.
  * Calling as.data.frame.&lt;class&gt;() directly (for 12 atomic classes)
    is going to be formally deprecated, currently activated by
    setting the environment variable
    _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ to non-empty, which also
    happens in R CMD check --as-cran.
  BUG FIXES:
  * Hashed environments with sizes less than 5 can now grow.
    (Reported to R-devel by Duncan Garmonsway.)
  * as.character(&lt;Rd&gt;, deparse = TRUE) failed to re-escape curly
    braces in LaTeX-like text.  (Reported by Hadley Wickham in
    PR#18324.)
  * library() now passes its lib.loc argument when requiring Depends
    packages; reported (with fix) in PR#18331 by Mikael Jagan.
  * R CMD Stangle: improved message about 'Output' files.
  * head(x, n) and tail(x, n) now signal an error if n is not
    numeric, instead of incidentally "working" sometimes returning
    all of x.  Reported and discussed by Colin Fay, in PR#18357.
  * The "lm" method for summary() now gives the correct F-statistic
    when the model contains an offset.  Reported in PR#18008.
  * C() and `contrasts&lt;-`() now preserve factor level names when
    given a function object (as opposed a function name which did
    preserve names). Reported in PR#17616.
  * c(a = 1, 2)[[]] no longer matches 2 but rather signals a
    _classed_ error.  Reported and analysed by Davis Vaughan in
    PR#18367, a duplicate of PR#18004, by Jan Meis et al.  For
    consistency, NULL[[]] is also erroneous now.  x[[]] &lt;- v gives an
    error of the same class "MissingSubscriptError".
  * The relist() function of utils now supports NULL elements in the
    skeleton (PR#15854).
  * ordered(levels = *) (missing x) now works analogously to factor(,
    ordered=TRUE); reported (with fix) by Achim Zeileis in PR#18389.
  * User-defined Rd macro definitions can now span multiple lines,
    thanks to a patch from Duncan Murdoch. Previously, the Rd parser
    silently ignored everything after the first line.
  * Plain-text help (tools::Rd2txt()) now preserves an initial blank
    line for text following description list items.
  * tools::Rd2HTML() and tools::Rd2latex() no longer split \arguments
    and \value lists at Rd comments.
  * tools::Rd2latex() now correctly handles optional text outside
    \items of argument lists as well as bracketed text at the
    beginning of sections, e.g., \value{[NULL]}.
  * as.character(&lt;POSIXt&gt;) now behaves more in line with the methods
    for atomic vectors such as numbers, and is no longer influenced
    by options().  Ditto for as.character(&lt;Date&gt;).  The
    as.character() method gets arguments digits and OutDec with
    defaults _not_ depending on options().  Use of as.character(*,
    format = .) now warns.
  * Similarly, the as.character.hexmode() and *.octmode() methods
    also behave as good citizen methods and back compatibility option
    keepStr = TRUE.
  * The as.POSIXlt(&lt;POSIXlt&gt;) and as.POSIXct(&lt;POSIXct&gt;) default
    methods now do obey their tz argument, also in this case.
  * as.POSIXlt(&lt;Date&gt;) now does apply a tz (time zone) argument, as
    does as.POSIXct(); partly suggested by Roland Fuss on the R-devel
    mailing list.
  * as.Date.POSIXlt(x) now also works when the list components are of
    unequal length, aka "partially filled" or "ragged".
  * expand.model.frame() looked up variables in the wrong environment
    when applied to models fitted without data.  Reported in
    PR#18414.
  * time() now (also) uses the ts.eps = getOption("ts.eps") argument
    and thus by default rounds values very close to the start (or
    end) of a year.  Based on a proposal by Andre"i V. Kostyrka on
    R-help.
  * Printing of a factanal() result with just one factor and sort =
    TRUE now works regularly, fixing PR#17863 by Timothy Bates,
    thanks to the 'R Contributors' working group.
  * Printing 0-length objects of class "factor", "roman", "hexmode",
    "octmode", "person", "bibentry", or "citation" now prints
    something better, one of which fixes PR#18422, reported by
    Benjamin Feakins.
  * Sys.timezone() queries timedatectl only if systemd is loaded;
    addressing a report by Jan Gorecki in PR#17421.
  * The formula method of cor.test() had scoping problems when
    environment(formula) was not the calling environment; reported
    with a patch proposal by Mao Kobayashi in PR#18439.
  * attach() of an environment with active bindings now preserves the
    active bindings.  Reported by Kevin Ushey in PR#18425.
  * BLAS detection now works also with system-provided libraries not
    available as regular files.  This fixes detection of the
    Accelerate framework on macOS since Big Sur.  Reported by David
    Novgorodsky.
  * download.file() gives a helpful error message in case of an
    invalid download.file.method option, thanks to Colin Fay's report
    in PR#18455.
  * Sporadic crashes of Rterm when using completion have been fixed.
  * Rprof() is now more reliable.  A livelock in thread
    initialization with too short sampling interval has been fixed on
    macOS.  A deadlock in using the C runtime has been fixed on
    Windows.  A potential deadlock has been prevented on Unix.
  * Cursor placement in Rgui now works even after a fixed-width font
    is selected.
  * Mandatory options (options()) are now set on startup so that
    saving and restoring them always works (PR#18372).
  * Package installation, R CMD INSTALL or install.packages(*), now
    parses each of the &lt;pkg&gt;/R/*.R files individually instead of
    first concatenating and then parse()ing the large resulting file.
    This allows parser or syntax errors to be diagnosed with correct
    file names and line numbers, thanks to Simon Dedman's report and
    Bill Dunlap's patch in PR#17859.
    This _does_ require syntactically self contained R source files
    now, fixing another inadvertent bug.
  * predict.lm(&lt;model with offset&gt;) now finds the offset in the
    correct environment, thanks to Andr'e Gillibert's report and patch
    in PR#18456.
  * getInitial(&lt;formula&gt;) now finds the selfStart model in the
    correct environment.  (Reported by Ivan Krylov in PR#18368.)
  * Fix for possible segfault when using recently-added graphics
    features, such as gradients, clipping paths, masks, and groups
    with pdf(file=NULL).
  * class(m) &lt;- class(m) no longer changes a matrix m by adding a
    class _attribute_.
  * packageDate(pkg) now only warns once if there is no pkg.
  * When ts() creates a multivariate time series, "mts", it also
    inherits from "array" now, and is.mts() is documented _and_
    stricter.
  * Rd2txt() now preserves line breaks of \verb Rd content and from
    duplicated \cr.  The former also fixes the rendering of verbatim
    output from Rd \Sexpr in plain-text help.
  * uniroot(f, interval) should no longer wrongly converge _outside_
    the interval in some cases where abs(f(x)) == Inf for an x at the
    interval boundary, thanks to posts by Ben Bolker and Serguei
    Sokol on R-devel.
  * Vectorized alpha handling in palette functions such as in gray(),
    rainbow(), or hcl.colors() works correctly now, thanks to Achim
    Zeileis' report and patch in PR#18476.
  * Formatting and print()ing of bibentry objects has dropped the
    deprecated citation.bibtex.max argument, such that the bibtex
    argument's default for print.bibentry() depends directly on the
    citation.bibtex.max option, whereas in format.bibentry() the
    option no longer applies.
  * Attempting to use a character string naming a foreign function
    entry point in a foreign function call in a package will now
    signal an error if the packages has called R_forceSymbols to
    specify that symbols must be used.
  * An error in table() could permanently set options(warn=2)
    promoting all subsequent warnings to errors.
  * The sigma() function gave misleading results for binary GLMs.  A
    new method for objects of class "glm" returns the square root of
    the estimate of the dispersion parameter using the same
    calculation as summary.glm().
  * bs() and ns() in the (typical) case of automatic knot
    construction, when some of the supposedly inner knots coincide
    with boundary knots, now moves them inside (with a warning),
    building on PR#18442 by Ben Bolker.
  * R CMD on Windows now skips the site profile with --no-site-file
    and --vanilla even when R_PROFILE is set (PR#18512, from Kevin
    Ushey).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1686916800">- CHANGES IN R 4.3.1:
  C-LEVEL FACILITIES:
  * The C-level API version of R's integrate(), Rdqags() in Applic.h,
    now returns the correct number of integrand evaluations neval,
    fixing PR#18515 reported and diagnosed by Stephen Wade.
  * The C prototypes for LAPACK calls dspgv and dtptrs in
    R_exts/Lapack.h had one too many and one too few character length
    arguments - but this has not caused any known issues. To get the
    corrected prototypes, include
    [#]include &lt;Rconfig.h&gt; // for PR18534fixed
    [#]ifdef PR18534fixed
    [#] define usePR18534fix 1
    [#]endif
    [#]include &lt;R_exts/Lapack.h&gt;
    in your C/C++ code (PR#18534).
  INSTALLATION:
  * Many of the checks of esoteric Internet operations and those
    using unreliable external sites have been moved to a new target
    that is not run by default and primarily intended for the core
    developers.  To run them use
    cd tests; make test-Internet-dev
  BUG FIXES:
  * .S3methods(), typically called from methods(), again marks
    methods from package base as visible.
    Also, the visibility of non-base methods is again determined by
    the method's presence in search().
  * tools::Rdiff() is now more robust against invalid strings, fixing
    installation tests on Windows without Rtools installed
    (PR#18530).
  * Fix (new) bug in hcl.colors(2, *), by Achim Zeileis (PR#18523).
  * head(., &lt;illegal&gt;) and tail(..) now produce more useful "Error in
    ...." error messages, fixing PR#18362.
  * Package code syntax on Windows is checked in UTF-8 when UTF-8 is
    the native encoding.
  * na.contiguous(x) now also returns the first run, when it is at
    the beginning and there is a later one of the same length;
    reported to R-devel, including a fix, by Georgi Boshnakov.
    Further, by default, it modifies only an existing attr(*,"tsp")
    but otherwise no longer sets one.
  * chol(&lt;not pos.def&gt;, pivot = &lt;T|F&gt;) now gives a correct error or
    warning message (depending on pivot), thanks to Mikael Jagan's
    (PR#18541).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1699012800">- CHANGES IN R 4.3.2:
  NEW FEATURES:
  * The default initialization of the "repos" option from the
    repositories file at startup can be skipped by setting
    environment variable R_REPOSITORIES to NULL such that
    getOption("repos") is empty if not set elsewhere.
  * qr.X() is now an implicit S4 generic in methods.
  * iconv(to = "ASCII//TRANSLIT") is emulated using substitution on
    platforms which do not support it (notably Alpine Linux).  This
    should give a human-readable conversion in ASCII on all platforms
    (rather than NA_character_).
  * trans3d() gains options continuous and verbose addressing the
    problem of possible "wrap around" when projecting too long
    curves, as reported by Achim Zeileis in PR#18537.
  * tools::showNonASCII() has been rewritten to work better on macOS
    14 (which has a changed implementation of iconv()).
  * tiff(type = "quartz") (the default on macOS) now warns if
    compression is specified: it continues to be ignored.
  INSTALLATION on a UNIX-ALIKE:
  * There is some support for building with Intel's LLVM-based
    compilers on x86_64 Linux, such as (C) icx, (C++) ipcx and
    (Fortran) ifx from oneAPI 2023.x.y.
  * There is support for using LLVM's flang-new as the Fortran
    compiler from LLVM 16.0.x (preferably 17.0.0 or later).
  UTILITIES:
  * R CMD check reports the use of the Fortran 90 random number
    generator RANDOM_NUMBER() and the subroutines to initialize it.
    'Writing R Extensions' has example code to use R's RNGs from
    Fortran.
  BUG FIXES:
  * substr(x, n, L) &lt;- cc now works (more) correctly for multibyte
    UTF-8 strings x when L &gt; nchar(x), thanks to a report and patch
    by 'Architect 95'.
  * contrib.url(character()) now returns 0-length character() as
    documented, which also avoids spurious warnings from
    available.packages() et al. in the edge case of an empty vector
    of repository URLs.
  * readChar(., 4e8) no longer fails, thanks to Kodi Arfer's report
    (PR#18557).
  * lapply(&lt;list&gt;, as.data.frame) no longer warns falsely for some
    base vector components.
  * Communication between parent and child processes in the multicore
    part of parallel could fail on platforms that do not support an
    arbitrarily large payload in system functions read()/write() on
    pipes (seen on macOS where a restriction to INT_MAX bytes is
    documented, without doing a partial read unlike Linux). The
    payload is now split into 1Gb chunks to avoid that problem.
    (PR#18571)
  * qqplot(x,y, conf.level=.) gives better confidence bounds when
    length(x) != length(y), thanks to Alexander Ploner's report and
    patch proposal (PR#18557).
  * norm(&lt;0-length&gt;, "2") now gives zero instead of an error, as all
    the other norm types, thanks to Mikael Jagan's PR#18542.
  * Build-stage Rd macros \packageAuthor and \packageMaintainer now
    process Authors@R, fixing NA results when the package DESCRIPTION
    omits Author and Maintainer fields.
  * Formatting and printing complex numbers could give things like
    0.1683-0i because of rounding error: -0i is now replaced by +0i.
  * postscript() refused to accept a title comment containing the
    letter "W" (PR#18599).
  * isoreg(c(1,Inf)) signals an error instead of segfaulting, fixing
    PR#18603.
  * tiff(type = "Xlib") was only outputting the last page of
    multi-page plots.
  * tools::latexToUtf8() again knows about \~{n} and other letters
    with tilde, fixing a regression in R 4.3.0, and about \^{i} as an
    alternative to \^{\i} (similarly with other accents).
    Furthermore, LaTeX codes for accented I letters are now correctly
    converted, also fixing related mistakes in
    tools::encoded_text_to_latex().
  * tar(*, tar = "internal") no longer creates out-of-spec tar files
    in the very rare case of user or group names longer than 32
    bytes, fixing PR#17871 with thanks to Ivan Krylov.
  * When using the "internal" timezone datetime code, adding a
    fraction of a second no longer adds one second, fixing PR#16856
    from a patch by Ivan Krylov.
  * tools::checkRd() no longer produces spurious notes about
    "unnecessary braces" from multi-line Rd results of \Sexpr macros.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1709208000">- CHANGES IN R 4.3.3:
  NEW FEATURES:
  * iconv() now fixes up variant encoding names such as "utf8"
    case-insensitively.
  DEPRECATED AND DEFUNCT:
  * The legacy encoding = "MacRoman" is deprecated in pdf() and
    postscript(): support was incomplete in earlier versions of R.
  BUG FIXES:
  * Arguments are now properly forwarded to methods on S4 generics
    with ... in the middle of their formal arguments. This was broken
    for the case when a method introduced an argument but did not
    include ... in its own formals. Thanks to Herv'e Pag`es for the
    report PR#18538.
  * Some invalid file arguments to pictex(), postscript() and xfig()
    opened a file called NA rather than throw an error.  These
    included postscript(NULL) (which some people expected to work
    like pdf(NULL)).
  * Passing filename = NA to svg(), cairo_pdf(), cairo_ps() or the
    Cairo-based bitmap devices opened a file called NA: it now throws
    an error.
  * quartz(file = NA) opened a file called NA, including when used as
    a Quartz-based bitmap device.  It now gives an error.
  * rank(&lt;long vector&gt;) now works, fixing PR#18617, thanks to Ilia
    Kats.
  * seq.int() did not adequately check its length.out argument.
  * match(&lt;POSIXct&gt;, .) is correct again for differing time zones,
    ditto for "POSIXlt", fixing PR#18618 reported by Bastian Klein.
  * drop.terms(*, dropx = &lt;0-length&gt;) now works, fixing PR#18563 as
    proposed by Mikael Jagan.
  * drop.terms(*) keeps + offset(.) terms when it should, PR#18565,
    and drop.terms() no longer makes up a response, PR#18566, fixing
    both bugs thanks to Mikael Jagan.
  * getS3method("t", "test") no longer finds the t.test() function,
    fixing PR#18627.
  * pdf() and postscript() support for the documented Adobe encodings
    "Greek" and "Cyrilllic" was missing (although the corresponding
    Windows' codepages could be used).
  * Computations of glyph metric information for pdf() and
    postscript() did not take into account that transliteration could
    replace one character by two or more (only seen on macOS 14) and
    typically warned that the information was not known.
  * rank(x) no longer overflows during integer addition, when
    computing rank average for largish but not-yet long vector x,
    fixing PR#18630, thanks to Ilia Kats.
  * list.files() on Windows now returns also files with names longer
    that 260 bytes (the Windows limit is 260 characters).
    Previously, some file names particularly with 'East Asian'
    characters were omitted.
  * cov2cor(&lt;0 x 0&gt;) now works, fixing PR#18423 thanks to Mikael
    Jagan and Elin Waring.
  * cov2cor(&lt;negative diagonal&gt;) and similar now give one warning
    instead of two, with better wording, fixing PR#18424 thanks to
    Mikael Jagan.
  * tools:: startDynamicHelp() now ensures port is in proper range,
    fixing PR#18645.
  * pbeta(x, a,b) is correct now for x=0 or 1 in the boundary cases
    where a or b or both are 0, fixing PR#18672 thanks to Michael
    Fay.
  * pmatch(x, table) for large table, also called for data frame row
    selection, dfrm[nm, ], is now interruptible, fixing PR#18656.
  * predict(&lt;rank-deficient lm&gt;, newdata=*) fix computing of nbasis,
    see Russ Lenth's comment 29 in PR#16158.
  * Added a work-around for a bug in macOS 14.3.1 and higher which
    prevents R plots in the Quartz Cocoa device from updating on
    screen.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1713960000">- CHANGES IN R 4.4.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Startup banners, R --version, sessionInfo() and R CMD check no
    longer report (64-bit) as part of the platform as this is almost
    universal - the increasingly rare 32-bit platforms will still
    report (32-bit).
    On Windows, ditto for window titles.
  * is.atomic(NULL) now returns FALSE, as NULL is not an atomic
    vector.  Strict back-compatibility would replace is.atomic(foo)
    by (is.null(foo) || is.atomic(foo)) but should happen only
    sparingly.
  NEW FEATURES:
  * The confint() methods for "glm" and "nls" objects have been
    copied to the stats package.  Previously, they were stubs which
    called versions in package MASS. The MASS namespace is no longer
    loaded if you invoke (say) confint(glmfit).  Further, the "glm"
    method for profile() and the plot() and pairs() methods for class
    "profile" have been copied from MASS to stats.  (profile.nls()
    and plot.profile.nls() were already in stats.)
  * The confint() and profile methods for "glm" objects have gained a
    possibility to do profiling based on the Rao Score statistic in
    addition to the default Likelihood Ratio. This is controlled by a
    new test = argument.
  * The pairs() method for "profile" objects has been extended with a
    which = argument to allow plotting only a subset of the
    parameters.
  * The "glm" method for anova() computes test statistics and
    p-values by default, using a chi-squared test or an F test
    depending on whether the dispersion is fixed or free.  Test
    statistics can be suppressed by giving argument test a false
    logical value.
  * In setRepositories() the repositories can be set using their
    names via name = instead of index ind =.
  * methods() and .S3methods() gain a all.names option for the (rare)
    case where functions starting with a . should be included.
  * Serializations can now be interrupted (e.g., by Ctrl-C on a
    Unix-alike) if they take too long, e.g., from save.image(),
    thanks to suggestions by Ivan Krylov and others on R-devel.
  * New startup option --max-connections to set the maximum number of
    simultaneous connections for the session.  Defaults to 128 as
    before: allowed values up to 4096 (but resource limits may in
    practice restrict to smaller values).
  * R on Windows (since Windows 10 2004) now uses the new Segment
    Heap allocator. This may improve performance of some
    memory-intensive applications.
  * When R packages are built, typically by R CMD build &lt;pkg&gt;, the
    new --user=&lt;build_user&gt; option overrides the (internally
    determined) user name, currently Sys.info()["user"] or LOGNAME.
    This is a (modified) fulfillment of Will Landau's suggestion in
    PR#17530.
  * tools::testInstalledBasic() gets new optional arguments outDir
    and testSrcdir, e.g., allowing to use it in a &lt;builddir&gt; !=
    &lt;srcdir&gt; setup, and in standard "binary" Windows installation
  * if* a source tests/ folder is present.
  * range(&lt;DT_with_Inf&gt;, finite = TRUE) now work for objects of class
    "Date", "POSIXct", and "POSIXlt" with infinite entries,
    analogously to range.default(), as proposed by Davis Vaughan on
    R-devel.  Other range()-methods can make use of new function
    .rangeNum().
  * New .internalGenerics object complementing .S3PrimitiveGenerics,
    for documentation and low-level book-keeping.
  * grid() now invisibly returns the x- and y- coordinates at which
    the grid-lines were drawn.
  * norm(., type) now also works for complex matrices.
  * kappa(., exact = TRUE, norm = *) now works for all norms and also
    for complex matrices.  In symmetric / triangular cases, the new
    argument uplo = "U" | "L" allows the upper or lower triangular
    part to be specified.
  * memDecompress(type = "unknown") recognizes compression in the
    default 'zlib' format as used by memCompress(type = "gzip").
  * memCompress() and memDecompress() will use the libdeflate library
    (&lt;https://github.com/ebiggers/libdeflate&gt;) if installed.  This
    uses the same type of compression for type = "gzip" but is 1.5-2x
    faster than the system libz library on some common platforms: the
    speed-up may depend on the library version.
  * diff() for objects of class "Date", "POSIXct", and "POSIXlt"
    accepts a units argument passed via ....
  * Dynamic help now does a much better job of rendering package
    DESCRIPTION metadata.
  * Rprof() gains an event argument and support for elapsed (real)
    time profiling on Unix (PR#18076).
  * filled.contour() gains a key.border argument.
  * tools::update_pkg_po() gets arguments pot_make and mo_make for
    _not_ re-making the corresponding files, and additionally a
    verbose argument.
  * Hexadecimal string colour specifications are now accepted in
    short form, so, for example, we can use "#123", which is
    equivalent to "#112233".
    Thanks to MikeFC for the original idea and Ella Kaye, Malcolm
    Barrett, George Stagg, and Hanne Oberman for the patch.
  * Plain-text help shows \var markup by angle brackets.
  * The new experimental primitive function declare() is intended to
    eventually allow information about R code to be communicated to
    the interpreter, compiler, and code analysis tools. The syntax
    for declarations is still being developed.
  * Functions psmirnov(), qsmirnov() and rsmirnov() in package stats
    have had argument two.sided renamed to alternative, to take into
    account that the permutation distributions of the one-sided
    statistics can be different in the case of ties.  Consequence of
    PR#18582.
  * sort() is now an implicit S4 generic in methods.
  * Formatting and printing, format(z), print(z), of complex vectors
    z no longer zap relatively small real or imaginary parts to zero,
    fixing PR#16752.  This is an API change, as it was documented
    previously to round real and imaginary parts together on purpose,
    producing nicer looking output.  As mentioned, e.g. in the PR,
    this change is compatible with many other "R-like" programming
    environments.
    We have simplified the internal code and now basically format the
    real and imaginary parts independently of each other.
  * New experimental functions Tailcall() and Exec() to support
    writing stack-space-efficient recursive functions.
  * Where characters are attempted to be plotted by pdf(),
    postscript() and xfig() which are not in the selected 8-bit
    character set (most often Latin-1) and the R session is using a
    UTF-8 locale, the warning messages will show the UTF-8 character
    rather than its bytes and one dot will be substituted per
    character rather than per byte.  (Platforms whose iconv() does
    transliteration silently plot the transliteration.)
    In a UTF-8 locale some transliterations are now done with a
    warning (e.g., dashes and Unicode minus to hyphen, ligatures are
    expanded, permille (‰) is replaced by o/oo), although the OS may
    have got there first.  These are warnings as they will continue
    to be replaced by dots in earlier versions of R.
  * The matrix multiplication functions crossprod() and tcrossprod()
    are now also primitive and S3 generic, as %*% had become in R
    4.3.0.
  * source() and example() have a new optional argument catch.aborts
    which allows continued evaluation of the R code after an error.
  * The non-Quartz tiff() devices allow additional types of
    compression if supported by the platform's libtiff library.
  * The list of base and recommended package names is now provided by
    tools::standard_package_names().
  * cairo_pdf() and cairo_ps() default to onefile = TRUE to closer
    match pdf() and postscript().
  * New option catch.script.errors provides a documented way to catch
    errors and then continue in non-interactive use.
  * L %||% R newly in base is an expressive idiom for the phrases
    if(!is.null(L)) L else R or if(is.null(L)) R else L.
  * The return value from warnings() now always inherits from
    "warnings" as documented, now also in the case of no warnings
    where it previously returned NULL.
  * as.complex("1i") now returns 0 + 1i instead of NA with a warning.
  * z &lt;- c(NA, 1i) now keeps the imaginary part Im(z[1]) == 0, no
    longer coercing to NA_complex_.  Similarly, cumsum(z) correctly
    sums real and imaginary parts separately, i.e., without
    "crosstalk" in case of NAs.
  * On Alpine Linux iconv() now maps "latin2", "latin-2", "latin9"
    and "latin-9" to encoding names the OS knows about
    (case-insensitively).
  * iconv(sub = "Unicode") now always zero-pads to four (hex) digits,
    rather than to 4 or 8.  (This seems to have become the convention
    once Unicode restricted the number of Unicode points to 2^21 - 1
    and so will never need more than 6 digits.)
  * NCOL(NULL) now returns 0 instead of 1, for consistency with
    cbind().
  * The information for the Euro glyph missing from the Adobe .afm
    files for the Courier, Helvetica and Times families has been
    copied from their URW equivalents - this will improve vertical
    centring in the pdf() and postscript() devices.
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.12.0.  The changes are almost entirely cosmetic.
  * The included LAPACK sources have been updated to version 3.12.0
    and some further double-complex routines added.
  * There are new font families for the 2014--5 URW 2.0 fonts (see
    ?pdf) which are included in recent versions of Ghostscript.
    These have font widths for most Greek glyphs and a few others
    which were missing from the original versions (whose font
    families remain available for reproducibility, although
    Ghostscript-based viewers will render using the 2.0 versions).
  * Improve the large-n efficiency of as.matrix(&lt;dist&gt;), thanks an R
    contributors effort, notably by Tim Taylor and Heather Turner,
    see PR#18660.
  * The default and numeric methods of all.equal() get a check.class
    option.
  * zapsmall() gets new optional arguments, function mFUN and min.d,
    for extra flexibility; fulfills a wish in PR#18199.  Also, it is
    now an implicit S4 generic in package methods.
  * The Rd filter for aspell() gains an ignore argument.
  * New generic function sort_by(), primarily useful for the
    data.frame method which can be used to sort rows of a data frame
    by one or more columns.
  * The icence headers for the RPC code in src/extra/xdr have been
    updated to use the GPL-compatible licence published by Oracle
    America in 2010.
  * New function pkg2HTML() in tools to create single-page HTML
    reference manuals for R packages.
  * The byte code evaluator now uses less C stack space for recursive
    calls to byte-compiled functions. It also makes more of an effort
    to avoid allocations for scalar return values.
  * New completion option backtick (disabled by default) allows
    non-syntactic completions to be wrapped in backquotes. This is
    currently only useful for Jupyter notebooks via the IRkernel
    package, and may cause problems for other backends.
  INSTALLATION:
  * The parser has been updated to work with bison 3.8.2, which is
    now used for the pre-generated parsers in gram.c, file.c, and
    gramRd.c. A few parser error messages have changed, which may
    affect code that relies on exact messages.
  INSTALLATION on a UNIX-ALIKE:
  * System valgrind headers are now required to use configure option
  - -with-valgrind-instrumentation with value 1 or 2.
  * configure will warn if it encounters a 32-bit build, as that is
    nowadays almost untested.
  * Environment variable R_SYSTEM_ABI is no longer used and so no
    longer recorded in etc/Renviron (it was not on Windows and was
    only ever used when preparing package tools).
  * If the libdeflate library and headers are available, libdeflate
    rather than libz is used to (de)compress R objects in lazy-load
    databases.  Typically tasks spend up to 5% of their time on such
    operations, although creating lazy-data databases is one of the
    exceptions.
    This can be suppressed if the library is available by the
    configure option --without-libdeflate-compression.
  * configure option --enable-lto=check has not worked reliably since
    2019 and has been removed.
  * The minimum autoconf requirement for a maintainer build has been
    increased to autoconf 2.71.
    It is intended to increase this to 2.72 for R 4.5.0: the
    distributed configure file was generated using 2.72.
  * The minimum version requirement for an external LAPACK has been
    reduced to 3.9.0.
  * No default C++ compiler is set if no C++17 compiler is detected:
    there is no longer an automatic fallback to C++14 or C++11.
    Compilers from the last five years should have sufficient
    support: for others macros CXX and CXXSTD can be set in file
    config.site to provide a fallback if needed.
    The Objective-C++ compiler now by default uses the standard
    selected by R for C++ (currently C++17) rather than the default
    standard for the C++ compiler (which on macOS is still C++98).
  INSTALLATION on macOS:
  * A new configure option --with-newAccelerate makes use of Apple's
    'new' BLAS / LAPACK interfaces in their Accelerate framework.
    Those interfaces are only available in macOS 13.3 or later, and
    building requires SDK 13.3 or later (from the Command Line Tools
    or Xcode 14.3 or later).
    By default the option uses new Accelerate for BLAS calls: to also
    use it for LAPACK use option --with-newAccelerate=lapack.  The
    later interfaces provide LAPACK 3.9.1 rather than 3.2.1: 3.9.1 is
    from 2021-04 and does not include the improved algorithms
    introduced in LAPACK 3.10.0 (including for BLAS calls).
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools44, an update of the Rtools43 toolchain.  It is
    based on GCC 13 and newer versions of MinGW-W64, binutils and
    libraries (targeting 64-bit Intel CPUs).  R-devel can no longer
    be built using Rtools43 without changes.
  * Rtools44 has experimental support for 64-bit ARM (aarch64) CPUs
    _via_ the LLVM 17 toolchain using lld, clang/flang-new and
    libc++.
  UTILITIES:
  * R CMD check notes when S4-style exports are used without
    declaring a strong dependence on package methods.
  * tools::checkRd() (used by R CMD check) detects more problems with
    \Sexpr-based dynamic content, including bad nesting of \Sexprs
    and invalid arguments.
  * tools::checkRd() now reports Rd titles and section names ending
    in a period; this is ignored by R CMD check unless environment
    variable _R_CHECK_RD_CHECKRD_MINLEVEL_ is set to -5 or smaller.
  * R CMD check now notes Rd files without an \alias, as long
    documented in 'Writing R Extensions' §1.3.1.  The check for a
    missing \description has been moved from tools::checkRd() to
    tools::checkRdContents().
  * R CMD check now visits inst/NEWS.Rd and OS-specific man
    subdirectories when checking Rd files.
  * tools::checkDocFiles() and tools::checkRdContents() now also
    check internal Rd files by default, but "specially" (ignoring
    missing documentation of arguments).
  * R CMD Rdiff gets option --useEx.
  * R CMD check now warns on non-portable uses of Fortran KIND such
    as INTEGER(KIND=4) and REAL(KIND=8).
    To see the failing lines set environment variable
    _R_CHECK_FORTRAN_KIND_DETAILS_ to a true value.
  * When checking Rd files, R CMD check now notes some of the "lost
    braces" that tools::checkRd() finds.  Typical problems are Rd
    macros missing the initial backslash (e.g., code{...}), in-text
    set notation (e.g., {1, 2}, where the braces need escaping), and
    \itemize lists with \describe-style entries of the form
    \item{label}{description}.
  * R CMD INSTALL (and hence check) will compile C++ code with
  - DR_NO_REMAP if environment variable _R_CXX_USE_NO_REMAP_ is set
    to a true value.  It is planned that this will in future become
    the default for compiling C++.
  * The new built-in Rd macro \dontdiff{} can be used to mark example
    code whose output should be ignored when comparing check output
    to reference output (tests/Examples/&lt;pkg&gt;-Ex.Rout.save).  The
    \dontdiff tag, like \donttest, is _not_ shown on the rendered
    help page, so provides a clean alternative to ##
    IGNORE_RDIFF_(BEGIN|END) comments.
  * R CMD build when there is no NAMESPACE, now uses the recommended
    exportPattern("^[^.]"), instead of exporting everything.
  * R CMD check now warns about non-ASCII characters in the NAMESPACE
    file (in addition to R files). Such packages are not portable and
    may fail to install on some platforms.
  C-LEVEL FACILITIES:
  * Headers R_ext/Applic.h and R-ext/Linpack.h used to include
    R_ext/BLAS.h although this was undocumented and unneeded by their
    documented entry points.  They no longer do so.
  * New function R_missing(), factored out from do_missing(), used to
    fix PR#18579.
  * SEXP type S4SXP has been renamed to OBJSXP to support
    experimenting with alternative object systems.  The S4SXP value
    can still be used in C code but is now deprecated.  Based on
    contributions from the R Consortium's Object-Oriented Programming
    Working Group.
  * New function pow1p(x,y) for accurate (1+x)^y.
  * mkCharLenCE was incorrectly documented to take a size_t length
    but was implemented with int (and character strings in R are
    limited to 2^31 - 1 bytes).
  DEPRECATED AND DEFUNCT:
  * data() no longer handles zipped data from long-defunct (since R
    2.13.0) --use-zip-data installations.
  * The legacy graphics devices pictex() and xfig() are now
    deprecated.  They do not support recent graphics enhancements and
    their font handling is rudimentary. The intention is to retain
    them for historical interest as long as they remain somewhat
    functional.
  * Support for encoding = "MacRoman" has been removed from the pdf()
    and postscript() devices - this was a legacy encoding supporting
    classic macOS up to 2001 and no longer has universal libiconv
    support.
  * is.R() is deprecated as no other S dialect is known to be in use
    (and this could only identify historical dialects, not future
    ones).
    Further information on calls can be obtained by setting the
    environment variable _R_DEPRECATED_IS_R_ to error which turns the
    deprecation warning into an error and so by default gives a
    traceback.  (This is done by R CMD check --as-cran.)
  * UseMethod() no longer forwards local variables assigned in the
    generic function into method call environments before evaluating
    the method body. This makes method calls behave more like
    standard function calls and makes method code easier to analyze
    correctly.
  * The twelve as.data.frame.&lt;class&gt;() methods which were deprecated
    only via _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ and in R CMD
    check --as-cran are formally deprecated now in favour of calling
    as.data.frame() or as.data.frame.vector().  The deprecation
    "check" now works also when as.data.frame() is S4 generic thanks
    to Ivan Krylov.
  * The default method for the directional comparison operators &lt;, &gt;,
    &lt;=, and &gt;= now signals an error when one of the operands is a
    language object, i.e. a symbol or a call.
  * For terms.formula(), deprecate abb and neg.out arguments
    _formally_ in addition to just documenting it.
  BUG FIXES:
  * The methods package is more robust to not being attached to the
    search path.  More work needs to be done.
  * pairwise.t.test() misbehaved when subgroups had 0 DF for
    variance, even with pool.sd = TRUE.  (PR#18594 by Jack Berry).
  * Probability distribution functions [dpq]&lt;distrib&gt;(x, *), but also
    bessel[IKJY](x, .) now consistently preserve attributes(x) when
    length(x) == 0, e.g., for a 2 x 0 matrix, thanks to Karolis
    Koncevičius' report PR#18509.
  * Group "Summary" computations such as sum(1:3, 4, na.rm = 5, NA,
    7, na.rm = LL) now give an error instead of either 17 or NN for
    LL true or false, as proposed by Ivan Krylov on the R-devel
    mailing list.  (This also means it is now an error to specify
    na.rm more than once.)
  * as.complex(x) now returns complex(real = x, imaginary = 0) for
    _all_ numerical and logical x, notably also for NA or
    NA_integer_.
  * Directories are now omitted by file.copy(, recursive = FALSE) and
    in file.append() (PR#17337).
  * gsub() and sub() are now more robust to integer overflow when
    reporting errors caused by too large input strings (PR#18346).
  * Top-level handlers are now more robust to attempts to remove a
    handler whilst handlers are running (PR#18508).
  * The handling of Alt+F4 in dialogs created on Windows using
    GraphApp has been fixed (PR#13870).
  * density() more consistently computes grid values for the
    FFT-based convolution, following Robert Schlicht's analysis and
    proposal in PR#18337, correcting density values typically by a
    factor of about 0.999.  Argument old.coords = TRUE provides back
    compatibility.
  * palette.colors() gains a name argument that defaults to FALSE
    controlling whether the vector of colours that is returned has
    names (where possible).  PR#18529.
  * tools::xgettext() no longer extracts the (non-translatable) class
    names from warningCondition and errorCondition calls.
  * S3method(&lt;gen&gt;, &lt;class&gt;, &lt;func&gt;) in the NAMESPACE file now works
    (again) when &lt;func&gt; is visible from the namespace, e.g.,
    imported, or in base.
  * getParseData(f) now also works for a function defined in the
    first of several &lt;pkg&gt;/R/*.R source files, thanks to Kirill
    Müller's report and Duncan Murdoch's patch in PR#16756.
  * Rd \Sexpr macros with nested #ifdef conditionals were not
    processed.
  * A non-blocking connection with non-default encoding (such as a
    socket) now correctly returns from readLines() after new data has
    arrived also when its EOF had been reached previously.  Thanks to
    Peter Meilstrup's report on R-devel and Ivan Krylov's report and
    patch proposal in PR#18555.
  * tools::checkRdContents() failed to detect empty argument
    descriptions when they spanned multiple lines, including those
    generated by prompt().  These cases are now noted by R CMD check.
  * Plain-text help no longer outputs spurious colons in the
    arguments list (for multi-line \item labels in the Rd source).
  * kappa() and rcond() work correctly in more cases; kappa(., norm =
    "2") now warns that it computes the 1-norm with (default) exact =
    FALSE; prompted by Mikael Jagan's quite comprehensive PR#18543.
  * Rd skeletons generated by prompt() or promptData() now use a
    dummy title (so R CMD build works).  tools::checkRdContents() has
    been updated to detect such template leftovers, including from
    promptPackage().
  * When S4 method dispatch fails because no method was found, the
    error message now includes the signature argument names; thanks
    to Michael Chirico's proposal on the R-devel list.
  * withAutoprint({ .. }) now preserves srcrefs previously lost,
    thanks to Andrew Simmons' report plus fix in PR#18572.
  * transform.data.frame() no longer adjusts names; in particular,
    untransformed variables are kept as-is, including those with
    syntactically invalid names (PR#17890).
  * The keep.source option for Rd \Sexpr blocks is no longer ignored.
  * The formula methods for t.test() and wilcox.test() now catch when
    paired is passed, addressing PR#14359; use Pair(x1, x2) ~ 1 for a
    paired test.
  * The level reported in the browser prompt was often too large. It
    now shows the number of browser contexts on the stack.
  * For cbind() and rbind(), the optional deparse.level argument is
    now properly passed to methods, thanks to Mikael Jagan's PR#18579
    and comments there.
  * Some error and warning messages for large ('long vector')
    matrix(v, nr, nc) and dim(m) &lt;- d are now correct about sizes,
    using long long formatting, fixing PR#18612 (and more) reported
    by Mikael Jagan.
  * readChar(useBytes = TRUE) now terminates strings even when the
    underlying connection uses extra spaces in the input buffer.
    This fixes problems with extra garbage seen with gzip
    connections, PR#18605.
  * Named capture in PCRE regular expressions now works also with
    more than 127 named groups (PR#18588).
  * Datetime functions are now robust against long jumps when dealing
    with internal time zone changes.  This avoids confusing warnings
    about an invalid time zone, previously triggered by turning
    warnings into errors or handling them via tryCatch (PR#17966,
    PR#17780).
  * Datetime functions now restore even an empty TZ environment
    variable after internal time zone changes (PR#17724).  This makes
    results of datetime functions with this (typically unintentional)
    setting more predictable.
  * drop.terms(*) now drops response as by default, keep.response =
    FALSE, fixing PR#18564 thanks to Mikael Jagan.
  * dummy.coef(.) now also works for lm()-models with character
    categorical predictor variables rather than factor ones, fixing
    PR#18635 reported by Jinsong Zhao.
  * formals(f) &lt;- formals(f) now also works for a function w/o
    arguments and atomic _constant_ body(f).
  * Correct as.function(&lt;invalid list&gt;, .)'s error message.
  * removeSource() is yet more thorough in finding and removing
    "srcref" and the other source references from parsed R language
    chunks, fixing PR#18638 thanks to Andrew Simmons.
  * dgeom() is more accurate now, notably when its result is very
    small, fixing PR#18642 thanks to the proposal of Morten Welinder,
    also improving other instances where C level binom_raw(x, n, ..)
    has x == 0 or x== n.
  * warning() with options(warn = 1) has improved output for
    multi-line messages.
  * axis.Date() and axis.POSIXct() now respect the par("lab") setting
    for the number of pretty() intervals.
  * Comparisons for language objects (which are based on deparsing)
    are now more careful about using accurate deparsed results
    (PR#18676).
  * Plain-text help (Rd2txt) now correctly preserves blank lines
    following single-line \dontrun code.
  * &lt;POSIXlt&gt;[*] no longer sets wrong "balanced" attribute, fixing
    PR#18681 thanks to Mikael Jagan.
  * str(&lt;classed-call&gt;) now deparses the call as expected, fixing
    PR#18684, reported by Dave Slager.
  * In Rd examples, code following the closing brace of a \dontrun,
    \dontshow or \donttest tag on the same line is no longer skipped
    when R CMD check runs the examples.
  * as.data.frame(matrix(*, ncol=0)) now gets valid names() and
    colnames(); reported by Davis Vaughan on the R-devel list.
  * Internal Mathlib function stirlerr(n) is now almost fully
    (52-bit) accurate for all n &gt;= ~5.9 and more accurate also in the
    range 1 -- 5.9.  This entails small ("after 12th decimal")
    changes in density functions, e.g., dgamma() in _some_ regions of
    their support.  The fix was partly prompted by Morten Welinder's
    PR#18640.
  * Numbers like 9876543.2 are now considered non-integer by Mathlib
    internal R_nonint(), amending original fix of PR#15734.
  * Rd comment lines no longer cause broken paragraphs in the
    rendered PDF and plain-text help. In code blocks, pure comment
    lines (starting with %) no longer produce an empty line.
  * xtabs(Freq ~ .) now consistently defaults to na.action = na.pass,
    using na.rm = FALSE (added as an argument) when summing over Freq
    (PR#17770).
  * tools::testInstalledPackage() is no longer silent about failures
    from running examples or tests and its return code no longer
    ignores failures from checking vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1718366400">- CHANGES IN R 4.4.1:
  C-LEVEL FACILITIES:
  * Functions R_atof and R_strtod declared in header R_ext/Utils.h
    are now documented in 'Writing R Extensions' and so formally part
    of the API.
  * The non-API entry points Rf_setSVector, Rf_StringFalse,
    Rf_StringTrue and Rf_isBlankString have been added to those
    reported by R CMD check.
  * The new function Rf_allocLang is now available. This provides an
    alternative to the idiom of calling Rf_allocList followed by
    SET_TYPEOF.
  UTILITIES:
  * R CMD check now reports as warnings what gfortran calls 'Fortran
    2018 deleted features', all of which have long been marked as
    'obsolescent' and some of which were deleted in Fortran 2008 or
    earlier.  Fortran compilers are no longer required to support
    these.
  BUG FIXES:
  * as.numeric(), scan(), type.convert() and other places which use
    the internal C function R_strtod now require a _non-empty_ digit
    sequence in a decimal or binary exponent.  This aligns with the
    C/POSIX standard for strtod and with ?NumericConstants.
  * as.data.frame(m, make.names=NA) now works correctly for a matrix
    m with NA's in row names.
  * The error message from &lt;POSIXlt&gt;[["hour"]] and similar now
    mentions *[[, "hour"]], as wished for in PR#17409 and proposed by
    Michael Chirico.
  * qbinom() and potentially qpois(), qnbinom(), no longer sometimes
    fail accurate inversion (of pbinom(), etc), thanks to Christopher
    Chang's report and patch in PR#18711.
  * The internal help server on Windows can again serve requests sent
    in quick succession, fixing a regression in R 4.4.0.
  * debugcall(&lt;S3Generic&gt;()) now also works when a corresponding
    S4-generic version is in the methods cache (PR#18143).
  * Package tools' toTitleCase(ch0) now returns character(0) when ch0
    is of zero length; fixing PR#18724, reported by David Hugh Jones.
  * R CMD check is no longer broken (without a check result and no
    explanation in 00check.log) for a package which declares an
    invalid VignetteBuilder in DESCRIPTION but has no vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1730376000">- CHANGES IN R 4.4.2:
  C-LEVEL FACILITIES:
  * The S-compatibility macros F77_COM and F77_COMDECL defined in
    header R_ext/RS.h are deprecated and will be removed shortly.  We
    could find no record of their use.
  BUG FIXES:
  * Mathlib function lgammacor(x) no longer warns about underflow to
    zero for large x.
  * Text widths and heights were incorrectly reported by the Quartz
    device if the drawing context didn't exist yet (typically when
    drawing off-screen to a window that is yet to appear, see
    PR#18591).
  * The Quartz device could segfault in cases where paths with spaces
    are used in the new glyph drawing API.  Thanks to Tomek
    Gieorgijewski (PR#18758).
  * On macOS in R CRAN builds, it is again possible to read
    little-endian UTF-16 text with a BOM from a connection using
    encoding="UTF-16".  Users building R from source should avoid
    using the system libiconv in macOS 14.1 and later.
  * methods' internal .requirePackage() now re-enables primitive
    method dispatch when needed; thanks to Ivan Krylov for
    demystifying CRAN package check failures on the R-devel mailing
    list.</changelog>
</package>
<package pkgid="7eab36e33f0a75dbfce61eb15d34213a89d65ee5369f62625ab9975558bda1d1559d1070d1ea79365afee4730ba7eb7a69c90f1e35ef534746c0ae31896c51de" name="R-KernSmooth" arch="x86_64">
  <version epoch="0" ver="2.23.24" rel="51.0.2.2.sr20241103"/>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1620302400">- To get in sync with d:l:R:autoCRAN the Matrix package's split
  in -devel was reversed.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339200">- improved spec file according to comments of dimstar in
  https://build.opensuse.org/request/show/892685</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339201">- CHANGES IN R 4.1.0:
  FUTURE DIRECTIONS:
  * It is planned that the 4.1.x series will be the last to support
    32-bit Windows, with production of binary packages for that
    series continuing until early 2023.
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Data set esoph in package datasets now provides the correct
    numbers of controls; previously it had the numbers of cases added
    to these.  (Reported by Alexander Fowler in PR#17964.)
  NEW FEATURES:
  * www.omegahat.net is no longer one of the repositories known by
    default to setRepositories().  (Nowadays it only provides source
    packages and is often unavailable.)
  * Function package_dependencies() (in package tools) can now use
    different dependency types for direct and recursive dependencies.
  * The checking of the size of tarball in R CMD check --as-cran
    &lt;pkg&gt; may be tweaked via the new environment variable
    _R_CHECK_CRAN_INCOMING_TARBALL_THRESHOLD_, as suggested in
    PR#17777 by Jan Gorecki.
  * Using c() to combine a factor with other factors now gives a
    factor, an ordered factor when combining ordered factors with
    identical levels.
  * apply() gains a simplify argument to allow disabling of
    simplification of results.
  * The format() method for class "ftable" gets a new option justify.
    (Suggested by Thomas Soeiro.)
  * New ...names() utility.  (Proposed by Neal Fultz in PR#17705.)
  * type.convert() now warns when its as.is argument is not
    specified, as the help file always said it _should_.  In that
    case, the default is changed to TRUE in line with its change in
    read.table() (related to stringsAsFactor) in R 4.0.0.
  * When printing list arrays, classed objects are now shown _via_
    their format() value if this is a short enough character string,
    or by giving the first elements of their class vector and their
    length.
  * capabilities() gets new entry "Rprof" which is TRUE when R has
    been configured with the equivalent of --enable-R-profiling (as
    it is by default).  (Related to Michael Orlitzky's report
    PR#17836.)
  * str(xS4) now also shows extraneous attributes of an S4 object
    xS4.
  * Rudimentary support for vi-style tags in rtags() and R CMD rtags
    has been added.  (Based on a patch from Neal Fultz in PR#17214.)
  * checkRdContents() is now exported from tools; it and also
    checkDocFiles() have a new option chkInternal allowing to check
    Rd files marked with keyword "internal" as well.  The latter can
    be activated for R CMD check via environment variable
    _R_CHECK_RD_INTERNAL_TOO_.
  * New functions numToBits() and numToInts() extend the raw
    conversion utilities to (double precision) numeric.
  * Functions URLencode() and URLdecode() in package utils now work
    on vectors of URIs.  (Based on patch from Bob Rudis submitted
    with PR#17873.)
  * path.expand() can expand ~user on most Unix-alikes even when
    readline is not in use.  It tries harder to expand ~, for example
    should environment variable HOME be unset.
  * For HTML help (both dynamic and static), Rd file links to help
    pages in external packages are now treated as references to
    topics rather than file names, and fall back to a file link only
    if the topic is not found in the target package. The earlier rule
    which prioritized file names over topics can be restored by
    setting the environment variable _R_HELP_LINKS_TO_TOPICS_ to a
    false value.
  * c() now removes NULL arguments before dispatching to methods,
    thus simplifying the implementation of c() methods, _but_ for
    back compatibility keeps NULL when it is the first argument.
    (From a report and patch proposal by Lionel Henry in PR#17900.)
  * Vectorize()'s result function's environment no longer keeps
    unneeded objects.
  * Function ...elt() now propagates visibility consistently with
    ..n.  (Thanks to Lionel Henry's PR#17905.)
  * capture.output() no longer uses non-standard evaluation to
    evaluate its arguments.  This makes evaluation of functions like
    parent.frame() more consistent.  (Thanks to Lionel Henry's
    PR#17907.)
  * packBits(bits, type="double") now works as inverse of
    numToBits().  (Thanks to Bill Dunlap's proposal in PR#17914.)
  * curlGetHeaders() has two new arguments, timeout to specify the
    timeout for that call (overriding getOption("timeout")) and TLS
    to specify the minimum TLS protocol version to be used for
    https:// URIs (_inter alia_ providing a means to check for sites
    using deprecated TLS versions 1.0 and 1.1).
  * For nls(), an optional constant scaleOffset may be added to the
    denominator of the relative offset convergence test for cases
    where the fit of a model is expected to be exact, thanks to a
    proposal by John Nash.  nls(*, trace=TRUE) now also shows the
    convergence criterion.
  * Numeric differentiation _via_ numericDeriv() gets new optional
    arguments eps and central, the latter for taking central divided
    differences.  The latter can be activated for nls() via
    nls.control(nDcentral = TRUE).
  * nls() now passes the trace and control arguments to getInitial(),
    notably for all self-starting models, so these can also be fit in
    zero-noise situations via a scaleOffset.  For this reason, the
    initial function of a selfStart model must now have ... in its
    argument list.
  * bquote(splice = TRUE) can now splice expression vectors with
    attributes: this makes it possible to splice the result of
    parse(keep.source = TRUE).  (Report and patch provided by Lionel
    Henry in PR#17869.)
  * textConnection() gets an optional name argument.
  * get(), exists(), and get0() now signal an error if the first
    argument has length greater than 1.  Previously additional
    elements were silently ignored.  (Suggested by Antoine Fabri on
    R-devel.)
  * R now provides a shorthand notation for creating functions, e.g.
    \(x) x + 1 is parsed as function(x) x + 1.
  * R now provides a simple native forward pipe syntax |&gt;.  The
    simple form of the forward pipe inserts the left-hand side as the
    first argument in the right-hand side call.  The pipe
    implementation as a syntax transformation was motivated by
    suggestions from Jim Hester and Lionel Henry.
  * all.equal(f, g) for functions now by default also compares their
    environment(.)s, notably via new all.equal method for class
    function.  Comparison of nls() fits, e.g., may now need
    all.equal(m1, m2, check.environment = FALSE).
  * .libPaths() gets a new option include.site, allowing to _not_
    include the site library.  (Thanks to Dario Strbenac's suggestion
    and Gabe Becker's PR#18016.)
  * Lithuanian translations are now available.  (Thanks to Rimantas
    Zakauskas.)
  * names() now works for DOTSXP objects.  On the other hand, in
    R-lang, the R language manual, we now warn against relying on the
    structure or even existence of such dot-dot-dot objects.
  * all.equal() no longer gives an error on DOTSXP objects.
  * capabilities("cairo") now applies only to the file-based devices
    as it is now possible (if very unusual) to build R with Cairo
    support for those but not for X11().
  * There is optional support for tracing the progress of
    loadNamespace() - see its help.
  * (Not Windows.)  l10n_info() reports an additional element, the
    name of the encoding as reported by the OS (which may differ from
    the encoding part (if any) of the result from
    Sys.getlocale("LC_CTYPE").
  * New function gregexec() which generalizes regexec() to find _all_
    disjoint matches and well as all substrings corresponding to
    parenthesized subexpressions of the given regular expression.
    (Contributed by Brodie Gaslam.)
  * New function charClass() in package utils to query the
    wide-character classification functions in use (such as
    iswprint).
  * The names of quantile()'s result no longer depend on the global
    getOption("digits"), but quantile() gets a new optional argument
    digits = 7 instead.
  * grep(), sub(), regexp and variants work considerably faster for
    long factors with few levels.  (Thanks to Michael Chirico's
    PR#18063.)
  * Provide grouping of x11() graphics windows within a window
    manager such as Gnome or Unity; thanks to a patch by Ivan Krylov
    posted to R-devel.
  * The split() method for class data.frame now allows the f argument
    to be specified as a formula.
  * sprintf now warns on arguments unused by the format string.
  * New palettes "Rocket" and "Mako" for hcl.colors() (approximating
    palettes of the same name from the 'viridisLite' package).
    Contributed by Achim Zeileis.
  * The base environment and its namespace are now locked (so one can
    no longer add bindings to these or remove from these).
  * Rterm handling of multi-byte characters has been improved,
    allowing use of such characters when supported by the current
    locale.
  * Rterm now accepts ALT+ +xxxxxxxx sequences to enter Unicode
    characters as hex digits.
  * Environment variable LC_ALL on Windows now takes precedence over
    LC_CTYPE and variables for other supported categories, matching
    the POSIX behaviour.
  * duplicated() and anyDuplicated() are now optimized for integer
    and real vectors that are known to be sorted via the ALTREP
    framework. Contributed by Gabriel Becker via PR#17993.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 14
    and so packages that provide graphics devices should be
    reinstalled.
  * Graphics devices should now specify deviceVersion to indicate
    what version of the graphics engine they support.
  * Graphics devices can now specify deviceClip.  If TRUE, the
    graphics engine will never perform any clipping of output itself.
    The clipping that the graphics engine does perform (for both
    canClip = TRUE and canClip = FALSE) has been improved to avoid
    producing unnecessary artifacts in clipped output.
  * The grid package now allows gpar(fill) to be a linearGradient(),
    a radialGradient(), or a pattern().  The viewport(clip) can now
    also be a grob, which defines a clipping path, and there is a new
    viewport(mask) that can also be a grob, which defines a mask.
    These new features are only supported so far on the Cairo-based
    graphics devices and on the pdf() device.
  * (Not Windows.)  A warning is given when a Cairo-based type is
    specified for a png(), jpeg(), tiff() or bmp() device but Cairo
    is unsupported (so type = "Xlib" is tried instead).
  * grSoftVersion() now reports the versions of FreeType and
    FontConfig if they are used directly (not _via_ Pango), as is
    most commonly done on macOS.
  C-LEVEL FACILITIES:
  * The _standalone_ libRmath math library and R's C API now provide
    log1pexp() again as documented, and gain log1mexp().
  INSTALLATION on a UNIX-ALIKE:
  * configure checks for a program pkgconf if program pkg-config is
    not found.  These are now only looked for on the path (like
    almost all other programs) so if needed specify a full path to
    the command in PKG_CONFIG, for example in file config.site.
  * C99 function iswblank is required - it was last seen missing ca
    2003 so the workaround has been removed.
  * There are new configure options --with-internal-iswxxxxx,
  - -with-internal-towlower and --with-internal-wcwidth which allows
    the system functions for wide-character classification,
    case-switching and width (wcwidth and wcswidth) to be replaced by
    internal ones.  The first has long been used on macOS, AIX (and
    Windows) but this enables it to be unselected there and selected
    for other platforms (it is the new default on Solaris).  The
    second is new in this version of R and is selected by default on
    macOS and Solaris.  The third has long been the default and
    remains so as it contains customizations for East Asian
    languages.
    System versions of these functions are often minimally
    implemented (sometimes only for ASCII characters) and may not
    cover the full range of Unicode points: for example Solaris (and
    Windows) only cover the Basic Multilingual Plane.
  * Cairo installations without X11 are more likely to be detected by
    configure, when the file-based Cairo graphics devices will be
    available but not X11(type = "cairo").
  * There is a new configure option --with-static-cairo which is the
    default on macOS.  This should be used when only static cairo
    (and where relevant, Pango) libraries are available.
  * Cairo-based graphics devices on platforms without Pango but with
    FreeType/FontConfig will make use of the latter for font
    selection.
  LINK-TIME OPTIMIZATION on a UNIX-ALIKE:
  * Configuring with flag --enable-lto=R now also uses LTO when
    installing the recommended packages.
  * R CMD INSTALL and R CMD SHLIB have a new flag --use-LTO to use
    LTO when compiling code, for use with R configured with
  - -enable-lto=R.  For R configured with --enable-lto, they have
    the new flag --no-use-LTO.
    Packages can opt in or out of LTO compilation _via_ a UseLTO
    field in the DESCRIPTION file.  (As usual this can be overridden
    by the command-line flags.)
  BUILDING R on Windows:
  * for GCC &gt;= 8, FC_LEN_T is defined in config.h and hence character
    lengths are passed from C to Fortran in _inter alia_ BLAS and
    LAPACK calls.
  * There is a new text file src/gnuwin32/README.compilation, which
    outlines how C/Fortran code compilation is organized and
    documents new features:
  * R can be built with Link-Time Optimization with a suitable
    compiler - doing so with GCC 9.2 showed several
    inconsistencies which have been corrected.
  * There is support for cross-compiling the C and Fortran code
    in R and standard packages on suitable (Linux) platforms.
    This is mainly intended to allow developers to test later
    versions of compilers - for example using GCC 9.2 or 10.x has
    detected issues that GCC 8.3 in Rtools40 does not.
  * There is experimental support for cross-building R packages
    with C, C++ and/or Fortran code.
  * The R installer can now be optionally built to support a single
    architecture (only 64-bit or only 32-bit).
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++14 where
    available (which it is on all currently checked platforms): if
    not (as before) C++11 is used if available otherwise C++ is not
    supported.
    Packages which specify C++11 will still be installed using C++11.
    C++14 compilers may give deprecation warnings, most often for
    std::random_shuffle (deprecated in C++14 and removed in C++17).
    Either specify C++11 (see 'Writing R Extensions') or modernize
    the code and if needed specify C++14.  The latter has been
    supported since R 3.4.0 so the package's DESCRIPTION would need
    to include something like
    Depends: R (&gt;= 3.4)
  PACKAGE INSTALLATION on Windows:
  * R CMD INSTALL and R CMD SHLIB make use of their flag --use-LTO
    when the LTO_OPT make macro is set in file etc/${R_ARCH}/Makeconf
    or in a personal/site Makevars file.  (For details see 'Writing R
    Extensions' SS4.5.)
    This provides a valuable check on code consistency.  It does work
    with GCC 8.3 as in Rtools40, but that does not detect everything
    the CRAN checks with current GCC do.
  PACKAGE INSTALLATION on macOS:
  * The default personal library directory on builds with
  - -enable-aqua (including CRAN builds) now differs by CPU type,
    one of
    ~/Library/R/x86_64/x.y/library
    ~/Library/R/arm64/x.y/library
    This uses the CPU type R (and hence the packages) were built for,
    so when a x86_64 build of R is run under Rosetta emulation on an
    arm64 Mac, the first is used.
  UTILITIES:
  * R CMD check can now scan package functions for bogus return
    statements, which were possibly intended as return() calls (wish
    of PR#17180, patch by Sebastian Meyer). This check can be
    activated via the new environment variable
    _R_CHECK_BOGUS_RETURN_, true for --as-cran.
  * R CMD build omits tarballs and binaries of previous builds from
    the top-level package directory.  (PR#17828, patch by Sebastian
    Meyer.)
  * R CMD check now runs sanity checks on the use of LazyData, for
    example that a data directory is present and that
    LazyDataCompression is not specified without LazyData and has a
    documented value.  For packages with large LazyData databases
    without specifying LazyDataCompression, there is a reference to
    the code given in 'Writing R Extensions' SS1.1.6 to test the
    choice of compression (as in all the CRAN packages tested a
    non-default method was preferred).
  * R CMD build removes LazyData and LazyDataCompression fields from
    the DESCRIPTION file of packages without a data directory.
  ENCODING-RELATED CHANGES:
  * The parser now treats \Unnnnnnnn escapes larger than the upper
    limit for Unicode points (\U10FFFF) as an error as they cannot be
    represented by valid UTF-8.
    Where such escapes are used for outputting non-printable
    (including unassigned) characters, 6 hex digits are used (rather
    than 8 with leading zeros).  For clarity, braces are used, for
    example \U{0effff}.
  * The parser now looks for non-ASCII spaces on Solaris (as
    previously on most other OSes).
  * There are warnings (including from the parser) on the use of
    unpaired surrogate Unicode points such as \uD834.  (These cannot
    be converted to valid UTF-8.)
  * Functions nchar(), tolower(), toupper() and chartr() and those
    using regular expressions have more support for inputs with a
    marked Latin-1 encoding.
  * The character-classification functions used (by default) to
    replace the system iswxxxxx functions on Windows, macOS and AIX
    have been updated to Unicode 13.0.0.
    The character-width tables have been updated to include new
    assignments in Unicode 13.0.0.
  * The code for evaluating default (extended) regular expressions
    now uses the same character-classification functions as the rest
    of R (previously they differed on Windows, macOS and AIX).
  * There is a build-time option to replace the system's
    wide-character wctrans C function by tables shipped with R: use
    configure option --with-internal-towlower or (on Windows)
  - DUSE_RI18N_CASE in CFLAGS when building R.  This may be needed
    to allow tolower() and toupper() to work with Unicode characters
    beyond the Basic Multilingual Plane where not supported by system
    functions (e.g. on Solaris where it is the new default).
  * R is more careful when truncating UTF-8 and other multi-byte
    strings that are too long to be printed, passed to the system or
    libraries or placed into an internal buffer.  Truncation will no
    longer produce incomplete multibyte characters.
  DEPRECATED AND DEFUNCT:
  * Function plclust() from the package stats and
    package.dependencies(), pkgDepends(), getDepList(),
    installFoundDepends(), and vignetteDepends() from package tools
    are defunct.
  * Defunct functions checkNEWS() and readNEWS() from package tools
    and CRAN.packages() from utils have been removed.
  * R CMD config CXXCPP is defunct (it was deprecated in R 3.6.2).
  * parallel::detectCores() drops support for Irix (retired in 2013).
  * The LINPACK argument to chol.default(), chol2inv(),
    solve.default() and svd() has been defunct since R 3.1.0.  It was
    silently ignored up to R 4.0.3 but now gives an error.
  * Subsetting/indexing, such as ddd[*] or ddd$x on a DOTSXP
    (dot-dot-dot) object ddd has been disabled; it worked by accident
    only and was undocumented.
  BUG FIXES:
  * Many more C-level allocations (mainly by malloc and strdup) are
    checked for success with suitable alternative actions.
  * Bug fix for replayPlot(); this was turning off graphics engine
    display list recording if a recorded plot was replayed in the
    same session.  The impact of the bug became visible if resize the
    device after replay OR if attempted another savePlot() after
    replay (empty display list means empty screen on resize or empty
    saved plot).
  * R CMD check etc now warn when a package exports non-existing S4
    classes or methods, also in case of no "methods" presence.
    (Reported by Alex Bertram; reproducible example and patch by
    Sebastian Meyer in PR#16662.)
  * boxplot() now also accepts calls for labels such as ylab, the
    same as plot().  (Reported by Marius Hofert.)
  * The help page for xtabs() now correctly states that addNA is
    setting na.action = na.pass among others.  (Reported as PR#17770
    by Thomas Soeiro.)
  * The R CMD check &lt;pkg&gt; gives a longer and more comprehensible
    message when DESCRIPTION misses dependencies, e.g., in Imports:.
    (Thanks to the contributors of PR#17179.)
  * update.default() now calls the generic update() on the formula to
    work correctly for models with extended formulas.  (As reported
    and suggested by Neal Fultz in PR#17865.)
  * The horizontal position of leaves in a dendrogram is now correct
    also with center = FALSE.  (PR#14938, patch from Sebastian
    Meyer.)
  * all.equal.POSIXt() no longer warns about and subsequently ignores
    inconsistent "tzone" attributes, but describes the difference in
    its return value (PR#17277).  This check can be disabled _via_
    the new argument check.tzone = FALSE as suggested by Sebastian
    Meyer.
  * as.POSIXct() now populates the "tzone" attribute from its tz
    argument when x is a logical vector consisting entirely of NA
    values.
  * x[[2^31]] &lt;- v now works.  (Thanks to the report and patch by
    Suharto Anggono in PR#17330.)
  * In log-scale graphics, axis() ticks and label positions are now
    computed more carefully and symmetrically in their range,
    typically providing _more_ ticks, fulfilling wishes in PR#17936.
    The change really corresponds to an improved axisTicks() (package
    grDevices), potentially influencing grid and lattice, for
    example.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now correct to at
    least five digits where it was catastrophically wrong,
    previously.
  * sum(df) and similar "Summary"- and "Math"-group member functions
    now work for data frames df with logical columns, notably also of
    zero rows.  (Reported to R-devel by Martin "b706".)
  * unsplit() had trouble with tibbles due to unsound use of rep(NA,
    len)-indexing, which should use NA_integer_ (Reported to R-devel
    by Mario Annau.)
  * pnorm(x, log.p = TRUE) underflows to -Inf slightly later.
  * show(&lt;hidden S4 generic&gt;) prints better and without quotes for
    non-hidden S4 generics.
  * read.table() and relatives treated an "NA" column name as missing
    when check.names = FALSE PR#18007.
  * Parsing strings containing UTF-16 surrogate pairs such as
    "\uD834\uDD1E" works better on some (uncommon) platforms.
    sprintf("%X", utf8ToInt("\uD834\uDD1E")) should now give "1D11E"
    on all platforms.
  * identical(x,y) is no longer true for differing DOTSXP objects,
    fixing PR#18032.
  * str() now works correctly for DOTSXP and related exotics, even
    when these are doomed.
    Additionally, it no longer fails for lists with a class and
    "irregular" method definitions such that e.g. lapply(*) will
    necessarily fail, as currently for different igraph objects.
  * Too long lines in environment files (e.g. Renviron) no longer
    crash R. This limit has been increased to 100,000 bytes.
    (PR#18001.)
  * There is a further workaround for FreeType giving incorrect
    italic font faces with cairo-based graphics devices on macOS.
  * add_datalist(*, force = TRUE) (from package tools) now actually
    updates an existing data/datalist file for new content.  (Thanks
    to a report and patch by Sebastian Meyer in PR#18048.)
  * cut.Date() and cut.POSIXt() could produce an empty last interval
    for breaks = "months" or breaks = "years".  (Reported as PR#18053
    by Christopher Carbone.)
  * Detection of the encoding of 'regular' macOS locales such as
    en_US (which is UTF-8) had been broken by a macOS change:
    fortunately these are now rarely used with en_US.UTF-8 being
    preferred.
  * sub() and gsub(pattern, repl, x, *) now keep attributes of x such
    as names() also when pattern is NA (PR#18079).
  * Time differences ("difftime" objects) get a replacement and a
    rep() method to keep "units" consistent.  (Thanks to a report and
    patch by Nicolas Bennett in PR#18066.)
  * The \RdOpts macro, setting defaults for \Sexpr options in an Rd
    file, had been ineffective since R 2.12.0: it now works again.
    (Thanks to a report and patch by Sebastian Meyer in PR#18073.)
  * mclapply and pvec no longer accidentally terminate parallel
    processes started before by mcparallel or related calls in
    package parallel (PR#18078).
  * grep and other functions for evaluating (extended) regular
    expressions handle in Unicode also strings not explicitly flagged
    UTF-8, but flagged native when running in UTF-8 locale.
  * Fixed a crash in fifo implementation on Windows (PR#18031).
  * Binary mode in fifo on Windows is now properly detected from
    argument open (PR#15600, PR#18031).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1622808000">- The line %{__install} -m 755 -d %{_infodir}
  no longer works in TW or Factory.
  But without that line it works everywhere. So this instruction
  was commented out of the spec file.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1628596800">- CHANGES IN R 4.1.1:
  NEW FEATURES:
  * require(pkg, quietly = TRUE) is quieter and in particular does
    not warn if the package is not found.
  DEPRECATED AND DEFUNCT:
  * Use of ftp:// URIs should be regarded as deprecated, with
    on-going support confined to method = "libcurl" and not routinely
    tested.  (Nowadays no major browser supports them.)
  * The non-default method = "internal" is deprecated for http:// and
    ftp:// URIs for both download.file and url.
  * On Windows, method = "wininet" is deprecated for http://,
    https:// and ftp:// URIs for both download.file and url.  (A
    warning is only given for ftp://.)
    For ftp:// URIs the default method is now "libcurl" if available
    (which it is on CRAN builds).
    method = "wininet" remains the default for http:// and https://
    URIs but if libcurl is available, using method = "libcurl" is
    preferred.
  INSTALLATION:
  * make check now works also without a LaTeX installation.  (Thanks
    to Sebastian Meyer's PR#18103.)
  BUG FIXES:
  * make check-devel works again in an R build configured with
  - -without-recommended-packages.
  * qnbinom(p, size, mu) for large size/mu is correct now in a range
    of cases (PR#18095); similarly for the (size, prob)
    parametrization of the negative binomial.  Also qpois() and
    qbinom() are better and or faster for extreme cases.  The
    underlying C code has been modularized and is common to all four
    cases of discrete distributions.
  * gap.axis is now part of the axis() arguments which are passed
    from bxp(), and hence boxplot().  (Thanks to Martin Smith's
    report and suggestions in PR#18109.)
  * .First and .Last can again be set from the site profile.
  * seq.int(from, to, *) and seq.default(..) now work better in large
    range cases where from-to is infinite where the two boundaries
    are finite.
  * all.equal(x,y) now returns TRUE correctly also when several
    entries of abs(x) and abs(y) are close to .Machine$double.xmax,
    the largest finite numeric.
  * model.frame() now clears the object bit when removing the class
    attribute of a value via na.action (PR#18100).
  * charClass() now works with multi-character strings on Windows
    (PR#18104, fixed by Bill Dunlap).
  * encodeString() on Solaris now works again in Latin-1 encoding on
    characters represented differently in UTF-8.  Support for
    surrogate pairs on Solaris has been improved.
  * file.show() on Windows now works with non-ASCII path names
    representable in the current native encoding (PR#18132).
  * Embedded R on Windows can now find R home directory via the
    registry even when installed only for the current user
    (PR#18135).
  * pretty(x) with finite x now returns finite values also in the
    case where the extreme x values are close in size to the maximal
    representable number .Machine$double.xmax.
    Also, it's been tweaked for very small ranges and when a boundary
    is close (or equal) to zero; e.g., pretty(c(0,1e-317)) no longer
    has negative numbers, currently still warning about a very small
    range, and pretty(2^-(1024 - 2^-1/(c(24,10)))) is more accurate.
  * The error message for not finding vignette files when weaving has
    correct file sizes now. (Thanks to Sebastian Meyer's PR#18154.)
  * dnbinom(20, &lt;large&gt;, 1) now correctly gives 0, and similar cases
    are more accurate with underflow precaution.  (Reported by Francisco Vera Alcivar in PR#18072.)</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635163200">- repaired https://bugzilla.suse.com/show_bug.cgi?id=1191380
  (rpmacros now go to rpmmacrodir)
- minor clean-ups in spec file</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635768000">- CHANGES IN R 4.1.2:
  C-LEVEL FACILITIES:
  * The workaround in headers R.h and Rmath.h (using namespace std;)
    for the Oracle Developer Studio compiler is no longer needed now
    C++11 is required so has been removed.  A couple more usages of
    log() (which should have been std::log()) with an int argument
    are reported on Solaris.
  * The undocumented limit of 4095 bytes on messages from the
    S-compatibility macros PROBLEM and MESSAGE is now documented and
    longer messages will be silently truncated rather than
    potentially causing segfaults.
  * If the R_NO_SEGV_HANDLER environment variable is non-empty, the
    signal handler for SEGV/ILL/BUS signals (which offers recovery
    user interface) is not set. This allows more reliable debugging
    of crashes that involve the console.
  DEPRECATED AND DEFUNCT:
  * The legacy S-compatibility macros PROBLEM, MESSAGE, ERROR, WARN,
    WARNING, RECOVER, ... are deprecated and will be hidden in R
    4.2.0. R's native interface of Rf_error and Rf_warning has long
    been preferred.
  BUG FIXES:
  * .mapply(F, dots, .) no longer segfaults when dots is not a list
    and uses match.fun(F) as always documented; reported by Andrew
    Simmons in PR#18164.
  * hist(&lt;Date&gt;, ...) and hist(&lt;POSIXt&gt;, ...)  no longer pass
    arguments for rect() (such as col and density) to axis().
    (Thanks to Sebastian Meyer's PR#18171.)
  * \Sexpr{ch} now preserves Encoding(ch). (Thanks to report and
    patch by Jeroen Ooms in PR#18152.)
  * Setting the RNG to "Marsaglia-Multicarry" e.g., by RNGkind(), now
    warns in more places, thanks to Andr'e Gillibert's report and
    patch in PR#18168.
  * gray(numeric(), alpha=1/2) no longer segfaults, fixing PR#18183,
    reported by Till Krenz.
  * Fixed dnbinom(x, size=&lt;very_small&gt;, .., log=TRUE) regression,
    reported by Martin Morgan.
  * as.Date.POSIXlt(x) now keeps names(x), thanks to Davis Vaughan's
    report and patch in PR#18188.
  * model.response() now strips an "AsIs" class typically, thanks to
    Duncan Murdoch's report and other discussants in PR#18190.
  * try() is considerably faster in case of an error and long call,
    as e.g., from some do.call().  Thanks to Alexander Kaever's
    suggestion posted to R-devel.
  * qqline(y = &lt;object&gt;) such as y=I(.), now works, see also
    PR#18190.
  * Non-integer mgp par() settings are now handled correctly in
    axis() and mtext(), thanks to Mikael Jagan and Duncan Murdoch's
    report and suggestion in PR#18194.
  * formatC(x) returns length zero character() now, rather than ""
    when x is of length zero, as documented, thanks to Davis
    Vaughan's post to R-devel.
  * removeSource(fn) now retains (other) attributes(fn).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1647000000">- CHANGES IN R 4.1.3:
  NEW FEATURES:
  * The default version of Bioconductor has been changed to 3.14.
    (This is used by setRepositories and the menus in GUIs.)
  UTILITIES:
  * R CMD check --as-cran has a workaround for a bug in versions of
    file up to at least 5.41 which mis-identify DBF files last
    changed in 2022 as executables.
  C-LEVEL FACILITIES:
  * The legacy S-compatibility macros SINGLE_* in R_ext/Constants.h
    (included by R.h) are deprecated and will be removed in R 4.2.0.
  BUG FIXES:
  * Initialization of self-starting nls() models with initialization
    functions following the pre-R-4.1.0 API (without the ...
    argument) works again for now, with a deprecation warning.
  * Fixed quoting of ~autodetect~ in Java setting defaults to avoid
    inadvertent user lookup due to leading ~, reported in PR#18231 by
    Harold Gutch.
  * substr(., start, stop) &lt;- v now treats _negative_ stop values
    correctly.  Reported with a patch in PR#18228 by Brodie Gaslam.
  * Subscripting an array x without dimnames by a
    length(dim(x))-column character matrix gave "random" non-sense,
    now an error; reported in PR#18244 by Mikael Jagan.
  * ...names() now matches names(list(...)) closely, fixing PR#18247.
  * all.equal(*, scale = s) now works as intended when length(s) &gt; 1,
    partly thanks to Michael Chirico's PR#18272.
  * print(x) for long vectors x now also works for named atomic
    vectors or lists and prints the correct number when reaching the
    getOption("max.print") limit; partly thanks to a report and
    proposal by Hugh Parsonage to the R-devel list.
  * all.equal(&lt;selfStart&gt;, *) no longer signals a deprecation
    warning.
  * reformulate(*, response=r) gives a helpful error message now when
    length(r) &gt; 1, thanks to Bill Dunlap's PR#18281.
  * Modifying globalCallingHandlers inside withCallingHandlers() now
    works or fails correctly, thanks to Henrik Bengtsson's PR#18257.
  * hist(&lt;Date&gt;, breaks = "days") and hist(&lt;POSIXt&gt;, breaks = "secs")
    no longer fail for inputs of length 1.
  * qbeta(.001, .9, .009) and similar cases now converge correctly
    thanks to Ben Bolker's report in PR#17746.
  * window(x, start, end) no longer wrongly signals "'start' cannot
    be after 'end'", fixing PR#17527 and PR#18291.
  * data() now checks that its (rarely used) list argument is a
    character vector - a couple of packages passed other types and
    gave incorrect results.
  * which() now checks its arr.ind argument is TRUE rather coercing
    to logical and taking the first element - which gave incorrect
    results in package code.
  * model.weights() and model.offset() more carefully extract their
    model components, thanks to Ben Bolker and Tim Taylor's R-devel
    post.
  * list.files(recursive = TRUE) now shows all broken symlinks
    (previously, some of them may have been omitted, PR#18296).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1650628800">- CHANGES IN R 4.2.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * The formula method of aggregate() now matches the generic in
    naming its first argument x (resolving PR#18299 by Thomas
    Soeiro).
    This means that calling aggregate() with a formula as a named
    first argument requires name formula in earlier versions of R and
    name x now, so portable code should not name the argument (code
    in many packages did).
  * Calling &amp;&amp; or || with either argument of length greater than one
    now gives a warning (which it is intended will become an error).
  * Calling if() or while() with a condition of length greater than
    one gives an error rather than a warning.  Consequently,
    environment variable _R_CHECK_LENGTH_1_CONDITION_ no longer has
    any effect.
  * Windows users should consult the WINDOWS section below for some
    profound changes including
  * Support for 32-bit builds has been dropped.
  * UTF-8 locales are used where available.
  * The default locations for the R installation and personal
    library folder have been changed.
    Thanks to Tomas Kalibera for months of work on the Windows port
    for this release.
  NEW FEATURES:
  * matrix(x, n, m) now warns in more cases where length(x) differs
    from n * m, as suggested by Abby Spurdle and Wolfgang Huber in
    Feb 2021 on the R-devel mailing list.
    This warning can be turned into an error by setting environment
    variable _R_CHECK_MATRIX_DATA_ to TRUE: R CMD check --as-cran
    does so unless it is already set.
  * Function file_test() in package utils gains tests for symlinks,
    readability and writability.
  * capabilities("libxml") is now false.
    The description of capabilities("http/ftp") now reflects that it
    refers to the default method, no longer the internal one.
  * simplify2array() gains an except argument for controlling the
    exceptions used by sapply().
  * Environment variables R_LIBS_USER and R_LIBS_SITE are both now
    set to the R system default if unset or empty, and can be set to
    NULL to indicate an empty list of user or site library
    directories.
  * The warning for axis()(-like) calls in cases of relatively small
    ranges (typically in log-scale situations) is slightly improved
    _and_ suppressed from explicit calls to .axisPars() as has always
    been the intention.
  * The contrasts setter function `contrasts&lt;-` gains an explicit
    default how.many = NULL rather than just using missing(how.many).
  * grid.pretty() gains a new optional argument n = 5.
  * There is a new function .pretty() with option bounds as a
    technical-utility version of pretty().  It and pretty() gain a
    new argument f.min with a better than back-compatible default.
  * Function grDevices::axisTicks() and related functions such as
    graphics::axis() work better, notably for the log scale; partly
    because of the pretty() improvements, but also because care is
    taken e.g., when ylim is finite but diff(ylim) is infinite.
  * nclass.FD() gains a digits option.
  * The R Mathlib internal C function bd0() (called indirectly from a
    dozen probability density and distribution functions such as
    dpois(), dbinom(), dgamma(), pgamma() _etc_) has been
    complemented by a more sophisticated and (mostly) more accurate C
    function ebd0(), currently called only by internal dpois_raw()
    improving accuracy for R level dpois() and potentially others
    calling it such as dnbinom(), dgamma() or pgamma().  (Thanks to
    Morten Welinder's PR#15628.)
  * write.ftable() gains sep = " " argument as suggested by Thomas
    Soeiro.
  * The names of the locale categories supported by R's
    Sys.getlocale() and Sys.setlocale() are now provided by variable
    .LC.categories in the base namespace.
  * The Date and POSIXt methods for hist() and the histogram method
    for plot() now also use the new default col = "lightgray" in
    consistency with the corresponding change to hist()'s default for
    R 4.0.0.
  * hist.default() gains new fuzz argument, and the histogram plot
    method no longer uses fractional axis ticks when displaying
    counts ("Frequency").
  * mapply() and hence Map() now also obey the "max-or-0-if-any"
    recycling rule, such that, e.g., Map(`+`, 1:3, 1[0]) is valid
    now.
  * as.character(&lt;obj&gt;) for "hexmode" or "octmode" objects now
    fulfils the important basic rule as.character(x)[j] ===
    as.character(x[j]).
  * The set utility functions, notably intersect() have been tweaked
    to be more consistent and symmetric in their two set arguments,
    also preserving a common mode.
  * substr(ch, start,end) &lt;- new now e.g., preserves names(ch); ditto
    for substring(), thanks to a patch from Brodie Gaslam.
  * plot(&lt;lm&gt;) gains a extend.ylim.f argument, in partial response to
    PR#15285; further PR#17784 is fixed thanks to several
    contributors and a patch by Elin Waring.  The Cook's dist
    contours get customizable via cook.col and cook.lty with a
    different default color and their legend is nicer by default and
    customizable via cook.legendChanges.
  * Attempting to subset an object that is not subsettable now
    signals an error of class notSubsettableError. The
    non-subsettable object is contained in the object field of the
    error condition.
  * Subscript-out-of-bounds errors are now signaled as errors of
    class subscriptOutOfBoundsError.
  * Stack-overflow errors are now signaled as errors inheriting from
    class stackOverflowError. See ?stackOverflowError for more
    details.
  * New partly experimental Sys.setLanguage() utility, solving the
    main problem of PR#18055.
  * gettext() and gettextf() get a new option trim = TRUE which when
    set to false allows translations for strings such as "Execution
    halted\n" typical for C code.
  * An experimental implementation of hash tables is now available.
    See ?hashtab for more details.
  * identical() gains a extptr.as.ref argument for requesting that
    external pointer objects be compared as reference objects.
  * reorder() gets an argument decreasing which it passes to sort()
    for level creation; based on the wish and patch by Thomas Soeiro
    in PR#18243.
  * as.vector() gains a data.frame method which returns a simple
    named list, also clearing a long standing 'FIXME' to enable
    as.vector(&lt;data.frame&gt;, mode="list").  This breaks code relying
    on as.vector(&lt;data.frame&gt;) to return the unchanged data frame.
  * legend() is now vectorized for arguments cex, x.intersp, and
    text.width.  The latter can now also be specified as a vector
    (one element for each column of the legend) or as NA for
    computing a proper column wise maximum value of strwidth(legend).
    The argument y.intersp can be specified as a vector with one
    entry for each row of the legend.
    legend() also gains new arguments title.cex and title.font.
    Thanks to Swetlana Herbrandt.
  * Deparsing no longer remaps attribute names dim, dimnames, levels,
    names and tsp to historical S-compatible names (which structure()
    maps back).
  * sample() and sample.int() have additional sanity checks on their
    size and n arguments.
    all.equal.numeric() gains a sanity check on its tolerance
    argument - calling all.equal(a, b, c) for three numeric vectors
    is a surprisingly common error.
    mean(na.rm =), rank(na.last =), barplot(legend.text =),
    boxplot(), contour(drawlabels =), polygon(border =) and
    methods::is(class2 =) have more robust sanity checks on their
    arguments.
    R CMD Rd2pdf (used by R CMD check) has a more robust sanity check
    on the format of \alias{} commands.
  * psigamma(x, deriv) for negative x now also works for deriv = 4
    and 5; their underlying C level dpsifn() is documented in
    'Writing R Extensions'.
  * The HTML help system now uses HTML5 (wish of PR#18149).
  * ks.test() now provides exact p-values also with ties and MC
    p-values in the two-sample (Smirnov) case.  By Torsten Hothorn.
  * ks.test() gains a formula interface, with y ~ 1 for the
    one-sample (Kolmogorov) test and y ~ group for the two-sample
    (Smirnov) test.  Contributed by Torsten Hothorn.
  * The return value from ks.test() now has class c("ks.test",
    "htest") - packages using try() need to take care to use
    inherits() and not == on the class.
  * New functions psmirnov(), qsmirnov() and rsmirnov() in package
    stats implementing the asymptotic and exact distributions of the
    two-sample Smirnov statistic.
  * iconv() now allows sub = "c99" to use C99-style escapes for UTF-8
    inputs which cannot be converted to encoding to.
  * In a forward pipe |&gt; expression it is now possible to use a named
    argument with the placeholder _ in the rhs call to specify where
    the lhs is to be inserted.  The placeholder can only appear once
    on the rhs.
  * The included LAPACK sources have been updated to version 3.10.0,
    except for the four Fortran 77 routines which 3.10.0 has
    re-implemented in Fortran 90 (where the older versions have been
    retained as the R build process does not support Fortran 90).
  * path.expand() and most other uses of tilde expansion now warn if
    a path would be too long if expanded.  (An exception is
    file.exists(), which silently returns false.)
  * trunc(&lt;Date&gt;, *) now supports units = "months" or "years" for
    consistency with the POSIXt method, thanks to Dirk Eddelbuettel's
    proposal in PR#18099.
  * list2DF() now checks that its arguments are of the same length,
    rather than use recycling.
  * The HTML help system has several new features: LaTeX-like math
    can be typeset using either KaTeX or MathJax, usage and example
    code is highlighted using Prism, and for dynamic help the output
    of examples and demos can be shown within the browser if the
    knitr package is installed. These features can be disabled by
    setting the environment variable _R_HELP_ENABLE_ENHANCED_HTML_ to
    a false value.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 15
    and so packages that provide graphics devices should be
    reinstalled.
  * The grid package now allows the user to specify a "vector" of
    pattern fills.  The fill argument to gpar() accepts a list of
    gradients and/or patterns and the functions linearGradient(),
    radialGradient(), and pattern() have a new group argument.
    Points grobs (data symbols) can now also have a pattern fill.
    The grobCoords() function now returns a more informative and
    complex result.
  * The grid package has new functions for drawing isolated groups:
    grid.group(), grid.define(), and grid.use().  These functions add
    compositing operators and affine transformations to R's graphics
    capabilities.
    The grid package also has new functions for stroking and filling
    paths: grid.stroke(), grid.fill(), and grid.fillStroke().
    A new function as.path() allows the user to specify the fill rule
    for a path that is to be used for clipping, stroking, or filling;
    available options are "winding" and "evenodd".  A new function
    as.mask() allows the user to specify the type of a mask;
    available options are "alpha" and "luminance".
    These new features are only supported so far (at most) on the
    Cairo-based graphics devices and on the pdf() device.
  * dev.capabilities() reports on device support for the new
    features.
  * par() now warns about unnamed non-character arguments to prevent
    misuse such as {usr &lt;- par("usr"); par(usr)}.
  INSTALLATION:
  * Facilities for accessing ftp:// sites are no longer tested
    (except _pro tem_ for curlGetHeaders()) as modern browsers have
    removed support.
  * R can now be built with DEFS = -DSTRICT_R_HEADERS .
  PACKAGE INSTALLATION:
  * R CMD INSTALL no longer tangles vignettes. This completes an R
    CMD build change in R 3.0.0 and affects packages built before R
    3.0.2. Such packages should be re-made with R CMD build to have
    the tangled R code of vignettes shipped with the tarball.
  * USE_FC_LEN_T will become the default: this uses the correct
    prototypes for Fortran BLAS/LAPACK routines called from C/C++,
    and requires adjustment of most such calls - see 'Writing R
    Extensions' SS6.6.2.  (This has been supported since R 3.6.2.)
  * Package installation speed for packages installed with
    keep.source has been improved. This resolve the issue reported by
    Ofek Shilon in PR#18236.
  UTILITIES:
  * R CMD check can optionally report files/directories left behind
    in home, /tmp (even though TMPDIR is set) and other directories.
    See the "R Internals" manual for details.
  * R CMD check now reports byte-compilation errors during
    installation.  These are not usually fatal but may result in
    parts of the package not being byte-compiled.
  * _R_CHECK_DEPENDS_ONLY_ can be applied selectively to examples,
    tests and/or vignettes in R CMD check: see the "R Internals"
    manual.
  * _R_CHECK_SRC_MINUS_W_IMPLICIT_ now defaults to true: recent
    versions of Apple clang on macOS have made implicit function
    declarations in C into a compilation error.
  * R CMD check --as-cran makes use of the environment variable
    AUTORECONF.  See the "R Internals" manual SS8 for further details.
  * R CMD check --use-valgrind also uses valgrind when re-building
    vignettes as some non-Sweave vignettes unhelpfully comment out
    all their code when R CMD check runs vignettes.
  * Errors in re-building vignettes (unless there are LaTeX errors)
    are reported by R CMD check as ERROR rather than WARNING when
    running vignettes has been skipped (as it frequently is in CRAN
    checks and by --as-cran).
  * R CMD Rd2pdf gains a --quiet option that is used by R CMD build
    when building the PDF package manual.
  * R CMD Rd2pdf now always runs LaTeX in batch mode, consistent with
    Texinfo &gt;= 6.7. The --batch option is ignored.
  * R CMD build and R CMD check now include the Rd file name and line
    numbers in the error message of an \Sexpr evaluation failure.
  * For packages using the \doi Rd macro (now an install-time \Sexpr)
    but no other dynamic Rd content, R CMD build now produces a
    smaller tarball and is considerably faster - skipping temporary
    package installation.
  C-LEVEL FACILITIES:
  * The non-API header R_ext/R-ftp-http.h is no longer provided, as
    the entry points it covered are now all defunct.
  * A number of non-API declarations and macro definitions have been
    moved from the installed header Rinternals.h to the internal
    header Defn.h. Packages that only use entry points and
    definitions documented to be part of the API as specified in
    'Writing R Extensions' SS6 should not be affected.
  * The macro USE_RINTERNALS no longer has any effect when compiling
    package code.  Packages which also use R_NO_REMAP will need to
    ensure that the remapped names are used for calls to API
    functions that were formerly also made available as macros.
  * The deprecated legacy S-compatibility macros PROBLEM, MESSAGE,
    ERROR, WARN, WARNING, RECOVER, ... are no longer defined in
    R_exts/RS.h (included by R.h).  Replace these by calls to
    Rf_error and Rf_warning (defined in header R_ext/Error.h included
    by R.h).
    Header R_ext/RS.h no longer includes R_ext/Error.h.
  * Header R_ext/Constants.h (included by R.h) when included from C++
    now includes the C++ header cfloat rather than the C header
    float.h (now possible as C++11 is required).
  * The legacy S-compatibility macros DOUBLE_* in R_ext/Constants.h
    (included by R.h) are deprecated.
  * The deprecated S-compatibility macros SINGLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * R_Calloc, R_Free and R_Realloc are preferred to their unprefixed
    forms and error messages now use the prefix. These forms were
    introduced in R 3.4.0 and are available even when
    STRICT_R_HEADERS is defined.
  * rmultinom has been documented in 'Writing R Extensions' SS6 so is
    now part of the R API.
  * Similarly, Rtanpi, called from R level tanpi() is now part of the
    R API.
  * The long-deprecated, undocumented and non-API entry point call_R
    is no longer declared in R_ext/RS.h (included by R.h).
  * The header S.h which has been unsupported since Jan 2016 has been
    removed.  Use R.h instead.
  DEPRECATED AND DEFUNCT:
  * The (non-default and deprecated) method = "internal" for
    download.file() and url() no longer supports http:// nor ftp://
    URIs.  (It is used only for file:// URIs.)
    On Windows, download.file(method = "wininet") no longer supports
    ftp:// URIs.  (It is no longer the default method, which is
    "libcurl" and does.)
    On Windows, the deprecated method = "wininet" now gives a warning
    for http:// and https:// URIs for both download.file() and url().
    (It is no longer the default method.)
  * On Windows, the command-line option --max-mem-size and
    environment variable R_MAX_MEM_SIZE are defunct.  The memory
    allocation limit was important for 32-bit builds, but these are
    no longer supported.
  * default.stringsAsFactors() is now formally deprecated, where that
    was only mentioned on its regular help page, previously.  So it
    now gives a warning if called.
  * unix.time() is defunct now; it had been deprecated since R 3.4.0.
  BUG FIXES:
  * Setting digits = 0 in format(), print.default() (and hence
    typically print()) or options() is again invalid.  Its behaviour
    was platform-dependent, and it is unclear what "zero significant
    digits" should mean (PR#18098).
  * Messages from C code in the cairo section of package grDevices
    are now also offered for translation, thanks to Michael Chirico's
    PR#18123.
  * mean(x) with finite x now is finite also without "long.double"
    capability.
  * R CMD Rd2pdf no longer leaves an empty build directory behind
    when it aborts due to an already existing output file.  (Thanks
    to Sebastian Meyer's PR#18141.)
  * density(x, weights = w, na.rm = TRUE) when anyNA(x) is true, now
    removes weights "in parallel" to x, fixing PR#18151, reported by
    Matthias Gondan.  Additionally, it gets a subdensity option.
  * Conversion of \Sexpr[]{&lt;expR&gt;} to LaTeX or HTML no longer
    produces long blocks of empty lines when &lt;expR&gt; itself contains
    several lines all producing empty output.  Thanks to a report and
    patch by Ivan Krylov posted to R-devel.
  * R CMD build no longer fails if a package vignette uses child
    documents and inst/doc exists.  (Thanks to Sebastian Meyer's
    PR#18156.)
  * When an R documentation ('help' source) file man/foo.Rd in a
    package has \donttest{..} examples with a syntax error, it is now
    signalled as ERROR and with correct line numbers relating to the
  * -Ex.R file, thanks to Duncan Murdoch and Sebastian Meyer's
    reports and patch proposals in PR#17501.
  * Improved determination of the correct translation domain in
    non-base packages, addressing the combination of PR#18092 and
    PR#17998 (#c6) with reports and _augmented_ patch #2904 by
    Suharto Anggono.
    Note that "R-base" is no longer the default domain e.g., for
    top-level calls to gettext(); rather translation needs explicit
    domain = * specification in such cases.
  * identical(attrib.as.set=FALSE) now works correctly with data
    frames with default row names (Thanks to Charlie Gao's PR#18179).
  * txtProgressBar() now enforces a non-zero width for argument char,
    without which no progress can be visible.
  * dimnames(table(d)) is more consistent in the case where d is a
    list with a single component, thanks to Thomas Soeiro's report to
    R-devel.
    Further, table(d1, d2) now gives an error when d1 and d2 are data
    frames as suggested by Thomas in PR#18224.
  * Fix for drawing semi-transparent lines and fills on the native
    Windows graphics device (PR#18219 and PR#16694).  Thanks to Nick
    Ray for helpful diagnosis on Bugzilla.
  * The deparser now wraps sub-expressions such as if(A) ..  with
    parentheses when needed; thanks to Duncan Murdoch's PR#18232 and
    Lionel Henry's patches there.
  * remove.packages() no longer tries to uninstall Priority: base
    packages, thanks to a report and suggestions by Colin Fay in
    PR#18227.
  * win.metafile() now has xpinch and ypinch arguments so that the
    user can override Windows' (potentially wrong) guess at device
    dimensions.
  * x[i] and x[[i]] for non-integer i should now behave in all cases
    as always documented: the index used is equivalent to
    as.integer(i) unless that would overflow where trunc(i) is used
    instead; thanks to Suharto Anggono's report and patch proposals
    in PR#17977.
  * asOneSidedFormula() now associates the resulting formula with the
    global environment rather than the evaluation environment created
    for the call.
  * &lt;bibentry&gt;$name now matches the field name case-insensitively,
    consistent with bibentry() creation and the replacement method.
  * cbind() failed to detect some length mismatches with a mixture of
    time-series and non-time-series inputs.
  * The default LaTeX style file Sweave.sty used by the RweaveLatex
    driver no longer loads the obsolete ae package; thanks to a
    report by Thomas Soeiro in PR#18271.  Furthermore, it now skips
    \usepackage[T1]{fontenc} for engines other than pdfTeX (if
    detected) or if the new [nofontenc] option is used.
  * smooth.spline() now stores its logical cv argument more safely,
    fixing a rare bug when printing, and also stores n.
  * smooth.spline(x,y,*) now computes the cv.crit statistic
    correctly, also when is.unsorted(x), fixing PR#18294.
  * The data.frame method of rbind() now warns when binding
    not-wholly-recycling vectors, by analogy to the default method
    (for matrices).
  * setAs() finds the correct class for name to when multiple
    packages define a class with that name. Thanks to Gabor Csardi
    for the report.
  * Fix for detaching a package when two classes of the same name are
    present in method signatures for the same generic. Thanks to
    Gabor Csardi for the report.
  * match.arg("", c("", "a", "B")) gives a better error message, in
    part from PR#17959, thanks to Elin Waring.
  * R CMD Sweave --clean no longer removes pre-existing files or
    subdirectories (PR#18242).
  * The quartz() device no longer splits polylines into subpaths.
    That has caused narrowly-spaced lines with many points to always
    look solid even when dashed line type was used due to dash phase
    restarts.
  * Deparsing constructs such as quote(1 + `!`(2) + 3) works again as
    before R 3.5.0, thanks to the report and patch in PR#18284 by
    Suharto Anggono.
  * as.list(f) for a factor f now keeps names(f), fixing PR#18309.
  * qbeta(.001, .9, .009) and analogous qf() calls now return a
    correct value instead of NaN or wrongly 1, all with a warning;
    thanks to the report by Ludger Goeminne in PR#18302.
  * plot.lm() failed to produce the plot of residuals vs.  factor
    levels (i.e., which=5 when leverages are constant) for models
    with character predictors (PR#17840).
  * interaction.plot(..., xtick = TRUE) misplaced the x-axis line
    (PR#18305).
  * Not strictly fixing a bug, format()ing and print()ing of
    non-finite Date and POSIXt values NaN and +/-Inf no longer show
    as NA but the respective string, e.g., Inf, for consistency with
    numeric vector's behaviour, fulfilling the wish of PR#18308.
  * R CMD check no longer runs test scripts generated from
    corresponding .Rin files twice and now signals an ERROR if
    processing an .Rin script fails.
  * tools::Rd2txt() used for plain-text help pages now renders \hrefs
    (if tools::Rd2txt_options(showURLs = TRUE)) and \urls with
    percent-encoding and standards-compliant delimiting style (angle
    brackets and no URL: prefix).  \email is now rendered with a
    mailto: prefix.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1655985600">- CHANGES IN R 4.2.1:
  NEW FEATURES:
  * New function utils::findCRANmirror() to find out if a CRAN mirror
    has been selected, otherwise fallback to the main site.  This
    behaves in the same way as tools::CRAN_package_db() and is
    intended for packages wishing to access CRAN for purposes other
    than installing packages.
    The need for this was shown by a day when the main CRAN website
    was offline and a dozen or so packages which had its URL
    hardcoded failed their checks.
  INSTALLATION on a UNIX-ALIKE:
  * The libraries searched for by --with-blas (without a value) now
    include BLIS (after OpenBLAS but before ATLAS).  And on macOS,
    the Accelerate framework (after ATLAS).  (This is patterned after
    the AX_BLAS macro from the Autoconf Archive.)
  * The included LAPACK sources have been updated to 3.10.1.
  UTILITIES:
  * The (full path to) the command tidy to be used for HTML
    validation can be set by environment variable R_TIDYCMD.
  * Setting environment variable _R_CHECK_RD_VALIDATE_RD2HTML_ to a
    false value will override R CMD check --as-cran and turn off HTML
    validation.  This provides a way to circumvent a problematic
    tidy.
    The 2006 version that ships with macOS is always skipped.
  C-LEVEL FACILITIES:
  * The undocumented legacy declarations of Sint, Sfloat, SINT_MAX
    and SINT_MIN in header R.h are deprecated.
  BUG FIXES:
  * fisher.test(d) no longer segfaults for "large" d; fixing PR#18336
    by preventing/detecting an integer overflow reliably.
  * tar(., files=*) now produces correctly the warning about invalid
    uid or gid of files, fixing PR#18344, reported by Martin Morgan.
  * tk_choose.files() with multi = FALSE misbehaved on paths
    containing spaces (PR#18334) (regression introduced in R 4.0.0).
  * sort(x, partial = ind, *) now works correctly notably for the
    non-default na.last = FALSE or TRUE, fixing PR#18335 reported by
    James Edwards.
  * Environment variable _R_CHECK_XREFS_REPOSITORIES_ is only used
    for checking .Rd cross-references in R CMD check (as documented)
    and not for other uses looking for a CRAN mirror.
  * The search for a CRAN mirror when checking packages now uses
    getOption("repos") if that specifies a CRAN mirror, even when it
    does not also specify all three Bioconductor repositories (as was
    previously required).
  * The HTML code generated by tools::Rd2HTML() has been improved to
    pass tidy 5.8.0.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1667217600">- CHANGES IN R 4.2.2:
  NEW FEATURES:
  * tools::Rdiff(useDiff = TRUE) checks for the presence of an
    external diff command and switches to useDiff = FALSE if none is
    found.  This allows R CMD Rdiff to always work.
  * On Windows, environment variable R_LIBCURL_SSL_REVOKE_BEST_EFFORT
    can be used to switch to only 'best-effort' SSL certificate
    revocation checks with the default "libcurl" download method.
    This reduces security, but may be needed for downloads to work
    with MITM proxies (PR#18379).
  * (macOS) The run-time check for libraries from XQuartz for X11 and
    Tcl/Tk no longer uses otool from the Apple Developer Tools
    (PR#18400).
  * The LaTeX style for producing the PDF manuals, Rd.sty, now loads
    the standard amsmath, amsfonts and amssymb packages for greater
    coverage of math commands in the Rd \eqn and \deqn macros.  The
    \mathscr LaTeX command is also provided (via the mathrsfs
    package, if available, or the amsfonts bundle otherwise),
    fulfilling the wish of PR#18398.
  * (Windows) The default format of readClipboard() and
    writeClipboard() has been changed to 13 (CF_UNICODETEXT).
  INSTALLATION on a UNIX-ALIKE:
  * The PDF manuals (if built) can be compacted by the new target
    make compact-pdf (at the top level or in directory doc/manual).
  * There is now configure support for LLVM clang 15 on Linux, which
    defaults to position-independent (PIE) executables whereas
    gfortran does not.
  * Many small changes to ease compilation (and suppress warnings)
    with LLVM clang 15.
  BUG FIXES:
  * Rscript -e would fail if stdin were closed (Reported by Henrik
    Bengtsson.)
  * qt(*, log.p=TRUE) in outer tails no longer produces NaN in its
    final steps, thus fixing PR#18360.
  * tools::Rd2latex() now escapes hashes and ampersands when writing
    URLs, fixing LaTeX errors with such URLs in \tabular.
  * When isGeneric(f, fdef=*) is used with mismatching names, the
    warning is better understandable; reported (with fix) in PR#18370
    by Gabe Becker.
  * poly(x, n) now works again (and is now documented) when x is a
    "Date" or "POSIXct" object, or of another class while fulfilling
    mode(x) == "numeric".  This also enables poly(x, *, raw=TRUE) for
    such variables.  Reported by Michael Chirico to R-devel.
  * write.table(), write.csv() and write.csv2() restore their
    numerical precision (internal equivalent of digits = 15) after an
    interrupt (PR#18384).
  * One can now read also byte FF from a clipboard connection
    (PR#18385).
  * source("") and source(character()) now give more helpful error
    messages.
  * R CMD check --as-cran set _R_CHECK_TIMINGS_ too late to have the
    intended effect.
  * as.POSIXlt(x) now also works with very large dates x, fixing
    PR#18401 reported by Hannes M"uhleisen.
  * Files can now be extracted even from very large zip archives
    (PR#18390, thanks to Martin Jakt).
  * Non-finite objects of class "POSIXlt" are now correctly coerced
    to classes "Date" and "POSIXct"; following up on the extension to
    format() them correctly.
  * Added methods for is.finite(), is.infinite() and is.nan() for
    "POSIXlt" date-time objects.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1678881600">- CHANGES IN R 4.2.3:
  C-LEVEL FACILITIES:
  * The definition of DL_FUNC in R_ext/Rdynload.h has been changed to
    be fully C-compliant.  This means that functions loaded _via_ for
    example R_GetCCallable need to be cast to an appropriate type if
    they have any arguments.
  * .Machine has a new element sizeof.time_t to identify old systems
    with a 32-bit type and hence a limited range of date-times (and
    limited support for dates millions of years from present).
  PACKAGE INSTALLATION:
  * (Windows) The default C++ standard had accidentally been left at
    C++11 when it was changed to C++14 on Unix.
  BUG FIXES:
  * As "POSIXlt" objects may be "partially filled" and their list
    components meant to be recycled, length() now is the length of
    the longest component.
  * as.POSIXlt.Date() could underflow for dates in the far past (more
    than half a million years BCE).
  * as.Date.POSIXlt(x) would return "1970-01-01" instead of NA in R
    4.2.2, e.g., for
    x &lt;- as.POSIXlt(c("2019-01-30","2001-1-1"))
    x$mon &lt;- c(0L, NA); as.Date(x)
  * R CMD check failed to apply enabled _R_CHECK_SUGGESTS_ONLY_ to
    examples and vignettes (regression in R 4.2.0).
  * R CMD check did not re-build vignettes in separate processes by
    default (regression in R 4.2.0).
  * Running examples from HTML documentation now restores previous
    knitr settings and options (PR#18420).
  * Quartz: fonts are now located using Core Graphics API instead of
    deprecated ATS which is no longer supported in the macOS 13 SDK
    (PR#18426).  This also addresses an issue where the currently
    used font in the Quartz device context was not correctly
    retained.
  * (Windows) Math symbols in text drawing functions are again
    rendered correctly (PR#18440).  This fixes a regression in R
    4.2.1 caused by a fix in PR#18382 which uncovered an issue in
    GraphApp due to which the symbol charset was not used with TT
    Symbol font face.
  * (Windows) Installing a package with a src/Makefile.{win,ucrt}
    file includes ~/.R/Makevars.win64 in the search for user
    makevars, as documented in "R Installation and Administration"
    and done for packages with a src/Makevars.{win,ucrt} file.
  * format(&lt;POSIXlt_w/_unbalanced_sec&gt;, "....%OS&lt;n&gt;") with n &gt; 0 no
    longer accidentally uses the unbalanced seconds, thanks to
    Suharto Anggono's report (including patch) in PR#18448.
  * solve.default(a, b) works around issues with some versions of
    LAPACK when a contains NA or NaN values.
  * When UseMethod() cannot dispatch, it no longer segfaults
    producing the error message in case of a long class(), thanks to
    Joris Vankerschaver's report (including patch) in PR#18447.
  * When example(foo, ..) produces graphics on an interactive device
    it needs to open itself, it now leaves devAskNewPage() unchanged
    even when it was FALSE, thus fixing a 14 years old '&lt;FIXME&gt;'.
  * packageDescription() again catches errors from encoding
    conversions. This also fixes broken packageVersion() in C locale
    on systems where iconv does not support transliteration.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1681128000">- add patch to build with libcurl &gt;= 8</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1682078400">- CHANGES IN R 4.3.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Calling &amp;&amp; or || with LHS or (if evaluated) RHS of length greater
    than one is now always an error, with a report of the form
    'length = 4' in coercion to 'logical(1)'
    Environment variable _R_CHECK_LENGTH_1_LOGIC2_ no longer has any
    effect.
  NEW FEATURES:
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.10.1.  (This caused some platform-dependent
    changes to package check output.)  And then to the sources from
    LAPACK version 3.11.0 (with changes only to double complex
    subroutines).
  * The included LAPACK sources have been updated to include the four
    Fortran 90 routines rather than their Fortran 77 predecessors.
    This may give some different signs in SVDs or
    eigendecompositions..  (This completes the transition to LAPACK
    3.10.x begun in R 4.2.0.)
  * The LAPACK sources have been updated to version 3.11.0.  (No new
    subroutines have been added, so this almost entirely bug fixes:
    Those fixes do affect some computations with NaNs, including R's
    NA.)
  * The parser now signals _classed_ errors, notably in case of the
    pipe operator |&gt;.  The error object and message now give line and
    column numbers, mostly as proposed and provided by Duncan Murdoch
    in PR#18328.
  * toeplitz() is now generalized for asymmetric cases, with a
    toeplitz2() variant.
  * xy.coords() and xyz.coords() and consequently, e.g., plot(x,y,
    log = "y") now signal a _classed_ warning about negative values
    of y (where log(.) is NA).  Such a warning can be specifically
    suppressed or caught otherwise.
  * Regular expression functions now check more thoroughly whether
    their inputs are valid strings (in their encoding, e.g. in
    UTF-8).
  * The performance of grep(), sub(), gsub() and strsplit() has been
    improved, particularly with perl = TRUE and fixed = TRUE.  Use of
    useBytes = TRUE for performance reasons should no longer be
    needed and is discouraged: it may lead to incorrect results.
  * apropos() gains an argument dot_internals which is used by the
    completion (help(rcompgen)) engine to also see base internals
    such as .POSIXct().
  * Support in tools::Rdiff() for comparing uncompressed PDF files is
    further reduced - see its help page.
  * qqplot(x, y, ...) gains conf.level and conf.args arguments for
    computing and plotting a confidence band for the treatment
    function transforming the distribution of x into the distribution
    of y (Switzer, 1976, _Biometrika_). Contributed by Torsten
    Hothorn.
  * Performance of package_dependencies() has been improved for cases
    when the number of dependencies is large.
  * Strings newly created by gsub(), sub() and strsplit(), when any
    of the inputs is marked as "bytes", are also marked as "bytes".
    This reduces the risk of creating invalid strings and accidental
    substitution of bytes deemed invalid.
  * Support for readLines(encoding = "bytes") has been added to allow
    processing special text files byte-by-byte, without creating
    invalid strings.
  * iconv(from = "") now takes into account any declared encoding of
    the input elements and uses it in preference to the native
    encoding.  This reduces the risk of accidental creation of
    invalid strings, particularly when different elements of the
    input have different encoding (including "bytes").
  * Package repositories in getOption("repos") are now initialized
    from the repositories file when utils is loaded (if not already
    set, e.g., in .Rprofile).  (From a report and patch proposal by
    Gabriel Becker in PR#18405.)
  * compactPDF() gets a verbose option.
  * type.convert() and hence read.table() get new option tryLogical =
    TRUE with back compatible default.  When set to false, converts
    "F" or "T" columns to character.
  * Added new unit prefixes "R" and "Q" for abbreviating
    (unrealistically large) sizes beyond 10^{27} in standard = "SI",
    thanks to Henrik Bengtsson's PR#18435.
  * as.data.frame()'s default method now also works fine with atomic
    objects inheriting from classes such as "roman", "octmode" and
    "hexmode", such fulfilling the wish of PR#18421, by Benjamin
    Feakins.
  * The as.data.frame.vector() utility now errors for wrong-length
    row.names.  It warned for almost six years, with "Will be an
    error!".
  * sessionInfo() now also contains La_version() and reports codepage
    and timezone when relevant, in both print() and toLatex() methods
    which also get new option tzone for displaying timezone
    information when locale = FALSE.
  * New function R_compiled_by() reports the C and Fortran compilers
    used to build R, if known.
  * predict(&lt;lm&gt;, newdata = *) no longer unnecessarily creates an
    offset of all 0s.
  * solve() for complex inputs now uses argument tol and by default
    checks for 'computational singularity' (as it long has done for
    numeric inputs).
  * predict(&lt;rank-deficient lm&gt;, newdata=*) now obeys a new argument
    rankdeficient, with new default "warnif", warning only if there
    are non-estimable cases in newdata.  Other options include
    rankdeficient = "NA", predicting NA for non-estimable newdata
    cases.  This addresses PR#15072 by Russ Lenth and is based on his
    original proposal and discussions in PR#16158 also by David Firth
    and Elin Waring.  Still somewhat experimental.
  * Rgui console implementation now works better with the NVDA screen
    reader when the full blinking cursor is selected.  The underlying
    improvements in cursor handling may help also other screen
    readers on Windows.
  * The drop-field control in GraphApp can now be left with the TAB
    key and all controls can be navigated in the reverse order using
    the Shift+TAB key, improving accessibility of the Rgui
    configuration editor.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now fully accurate
    (instead of to "only" minimally five digits).
  * demo(error.catching) now also shows off withWarnings() and
    tryCatchWEMs().
  * As an experimental feature the placeholder _ can now also be used
    in the rhs of a forward pipe |&gt; expression as the first argument
    in an extraction call, such as _$coef. More generally, it can be
    used as the head of a chain of extractions, such as _$coef[[2]].
  * Spaces in the environment variable used to choose the R session's
    temporary directory (TMPDIR, TMP and TEMP are tried in turn) are
    now fatal.  (On Windows the 'short path' version of the path is
    tried and used if that does not contain a space.)
  * all.equal.numeric() gets a new optional switch giveErr to return
    the numeric error as attribute.  Relatedly,
    stopifnot(all.equal&lt;some&gt;(a, b, ..)) is as "smart" now, as
    stopifnot(all.equal(....)) has been already, thus allowing
    customized all.equal&lt;Some&gt;() wrappers.
  * R on Windows is now able to work with path names longer than 260
    characters when these are enabled in the system (requires at
    least Windows 10 version 1607).  Packages should be updated to
    work with long paths as well, instead of assuming PATH_MAX to be
    the maximum length.  Custom front-ends and applications embedding
    R need to update their manifests if they wish to allow this
    feature.  See
    &lt;https://blog.r-project.org/2023/03/07/path-length-limit-on-windows&gt;
    for more information.
  * 'Object not found' and 'Missing argument' errors now give a more
    accurate error context. Patch provided by Lionel Henry in
    PR#18241.
  * The @ operator is now an S3 generic. Based on contributions by
    Tomasz Kalinowski in PR#18482.
  * New generic chooseOpsMethod() provides a mechanism for objects to
    resolve cases where two suitable methods are found for an Ops
    Group Generic. This supports experimenting with alternative
    object systems. Based on contributions by Tomasz Kalinowski in
    PR#18484.
  * inherits(x, what) now accepts values other than a simple
    character vector for argument what. A new generic, nameOfClass(),
    is called to resolve the class name from what. This supports
    experimenting with alternative object systems. Based on
    contributions by Tomasz Kalinowski in PR#18485.
  * Detection of BLAS/LAPACK in use (sessionInfo()) with FlexiBLAS
    now reports the current backend.
  * The "data.frame" method for subset() now warns about extraneous
    arguments, typically catching the use of = instead of == in the
    subset expression.
  * Calling a:b when numeric a or b is longer than one may now be
    made into an error by setting environment variable
    _R_CHECK_LENGTH_COLON_ to a true value, along the proposal in
    PR#18419 by Henrik Bengtsson.
  * density(x, weights = *) now warns if automatic bandwidth
    selection happens without using weights; new optional warnWbw may
    suppress the warning.  Prompted by Christoph Dalitz' PR#18490 and
    its discussants.
  * rm(list = *) is faster and more readable thanks to Kevin Ushey's
    PR#18492.
  * The plot.lm() function no longer produces a normal Q-Q plot for
    GLMs. Instead it plots a half-normal Q-Q plot of the absolute
    value of the standardized deviance residuals.
  * The print() method for class "summary.glm" no longer shows
    summary statistics for the deviance residuals by default.  Its
    optional argument show.residuals can be used to show them if
    required.
  * The tapply() function now accepts a data frame as its X argument,
    and allows INDEX to be a formula in that case. by.data.frame()
    similarly allows INDICES to be a formula.
  * The performance of df[j] &lt;- value (including for missing j) and
    write.table(df) has been improved for data frames df with a large
    number of columns.  (Thanks to Gabriel Becker's PR#18500,
    PR#18503 and discussants, prompted by a report from Toby Dylan
    Hocking on the R-devel mailing list.)
  * The matrix multiply operator %*% is now an S3 generic, belonging
    to new group generic matrixOps.  From Tomasz Kalinowski's
    contribution in PR#18483.
  * New function array2DF() to convert arrays to data frames,
    particularly useful for the list arrays created by tapply().
  DATES and TIMES:
  * On platforms where (non-UTC) datetimes before 1902 (or before
    1900 as with system functions on recent macOS) are guessed by
    extrapolating time zones from 1902-2037, there is a warning at
    the first use of extrapolation in a session.  (As all time zones
    post 2037 are extrapolation, we do not warn on those.)
  * (Platforms using --with-internal-tzone, including Windows and by
    default macOS). How years are printed in dates or date-times can
    be controlled by environment variable R_PAD_YEARS_BY_ZERO.  The
    default remains to pad to 4 digits by zeroes, but setting value
    no gives no padding (as used by default by glibc).
  * strftime() tries harder to determine the offset for the "%z"
    format, and succeeds on the mainstream R platforms.
  * strftime() has a limit of 2048 bytes on the string produced -
    attempting to exceed this is an error.  (Previously it silently
    truncated at 255 bytes.)
  * sessionInfo() records (and by default prints) the system time
    zone as part of the locale information.  Also, the source
    (system/internal) of the date-time conversion and printing
    functions.
  * Objects of class "POSIXlt" created in this version of R always
    have 11 components: component zone is always set, and component
    gmtoff is set for times in UTC and usually set on the (almost
    all) platforms which have C-level support, otherwise is NA.
  * There are comprehensive validity checks on the structure of
    objects of class "POSIXlt" when converting (including formatting
    and printing).  (This avoids mis-conversions of hand-crafted
    objects.)
  * There is some support for using the native date-time routines on
    macOS: this is only viable on recent versions (e.g. 12.6 and 13)
    and does get wrong some historical changes (before 1900, during
    WWII).  Use of --with-internal-tzone remains the default.
  * as.POSIXct(&lt;numeric&gt;) and as.POSIXlt(.) (without specifying
    origin) now work.  So does as.Date(&lt;numeric&gt;).
  * as.Date.POSIXct(., tz) now treats several tz values, notably
    "GMT" as equivalent to "UTC", proposed and improved by Michael
    Chirico and Joshua Ulrich in PR#17674.
  * Experimental balancePOSIXlt() utility allows using "ragged" and
    or out-of-range "POSIXlt" objects more correctly, e.g., in
    subsetting and subassignments.  Such objects are now documented.
    More experimentally, a "POSIXlt" object may have an attribute
    "balanced" indicating if it is known to be filled or fully
    balanced.
  * Functions axis.Date() and axis.POSIXct() are rewritten to gain
    better default tick locations and better default formats by using
    prettyDate(). Thanks to Swetlana Herbrandt.
  * The mapping of Windows' names for time zones to IANA's 'Olson'
    names has been updated.  When ICU is available (it is by
    default), it is used to get a mapping for the current region set
    in Windows.  This can be overridden by setting environment
    variable TZ to the desired Olson name - see OlsonNames() for
    those currently available.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 16
    and so packages that provide graphics devices should be
    reinstalled.
  * The grDevices and grid packages have new functions for rendering
    typeset glyphs, primarily: grDevices::glyphInfo() and
    grid::grid.glyph().
    Rendering of typeset glyphs is only supported so far on the
    Cairo-based graphics devices and on the pdf() and quartz()
    devices.
  * The defined behaviour for "clear" and "source" compositing
    operators (via grid::grid.group()) has been changed (to align
    better with simple interpretation of original Porter-Duff
    definitions).
  * Support for gradients, patterns, clipping paths, masks, groups,
    compositing operators, and affine transformations has been added
    to the quartz() device.
  INSTALLATION on a UNIX-ALIKE:
  * A system installation of generic LAPACK 3.10.0 or later will be
    preferred to the version in the R sources.
    configure option --with-lapack=no (equivalently --without-lapack)
    forces compilation of the internal LAPACK sources.
    If --with-lapack is not specified, a system liblapack is looked
    for and used if it reports version 3.10.0 or later and does not
    contain BLAS routines.
    Packages using LAPACK will need to be reinstalled if this changes
    to using an external library.
  * On aarch64 Linux platforms using GCC, configure now defaults to
  - fPIC (instead of -fpic), as desired in PR#18326.
  * configure now checks conversion of datetimes between POSIXlt and
    POSIXct around year 2020.  Failure (which has been seen on
    platforms missing tzdata) is fatal.
  * If configure option --with-valgrind-instrumentation is given
    value 1 or 2, option --with-system-valgrind-headers is now the
    default and ignored (with a warning).  It is highly recommended
    that the system headers are installed alongside valgrind: they
    are part of its packaging on some Linux distributions and
    packaged separately (e.g. in the valgrind-devel RPM) on others.
    configure will give a warning if they are not found.
    The system headers will be required in a future release of R to
    build with valgrind instrumentation.
  * libcurl 8.x is now accepted by configure: despite a change in
    major version number it changes neither API nor ABI.
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools43, an update of the Rtools42 toolchain.  It is
    based on gcc 12 and newer versions of MinGW-W64, binutils and
    libraries.  At this time R-devel can still be built using
    Rtools42 without changes, but when R-devel is installed via the
    installer, it will by default look for Rtools43.
  * Old make targets rsync-extsoft and 32-bit ones that are no longer
    needed have been removed.
  * Default builds (including for packages) no longer select C99.
    Thus the C standard used is the default for the compiler, which
    for the toolchain in Rtools43 is C17.  (This is consistent with
    Unix builds.)
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++17 where
    available (which it is on all currently checked platforms): if
    not C++14 or C++11 is used if available otherwise C++ is not
    supported.
  * USE_FC_LEN_T is the default: this uses the correct
    (compiler-dependent) prototypes for Fortran BLAS/LAPACK routines
    called from C/C++, and requires adjustment of many such calls -
    see 'Writing R Extensions' SS6.6.1.
  * There is initial support for C++23 as several compilers are now
    supporting -std=c++23 or -std=c++2b or similar.  As for C++20,
    there no additional configure checks for C++23 features beyond a
    check that the compiler reports a __cplusplus value greater than
    that in the C++20 standard.  C++ feature tests should be used.
  * There is support for a package to indicate the version of the C
    standard which should be used to compile it, and for the
    installing user to specify this.  In most cases R defaults to the
    C compiler's default standard which is C17 (a `bug-fix' of C11) -
    earlier versions of R or compilers may have defaulted to C99.
    Current options are:
    USE_C17 Use a standard that is at most C17.  The intention is to
    allow legacy packages to still be installed when later C
    standards become the default, including packages using new
    keywords as identifiers or with K&amp;R-style function
    declarations.  This will use C17 if available, falling back
    to C11.
    USE_C90 Use the C90 (aka C89) standard.  (As that standard did
    not require compilers to identify that version, all we can
    verify is that the compiler does not claim to be using a
    later standard.  It may accept C99 features - for example
    clang accepts // to make comments.)
    USE_C99 Use the C99 standard. This should be rarely needed - it
    avoids the few new features of C11/C17 which can be useful if
    a package assumes them if C17 is specified and they are not
    implemented.
    USE_C23 Use C23 (or in future, later).  Compiler/library support
    for C23 is still being implemented, but LLVM clang from
    15.0.0 and the upcoming GCC 13 have quite extensive support.
    These can be specified as part of the SystemRequirements field in
    the package's DESCRIPTION file or _via_ options --use-C17 and so
    on of R CMD INSTALL and R CMD SHLIB.
    For further details see "Writing R Extensions" SS1.2.5.
  * (Windows) A src/Makefile.ucrt or src/Makefile.win file is now
    included after R_HOME/etcR_ARCH/Makeconf and so no longer needs
    to include that file itself.  Installation of a package with such
    a file now uses a site Makevars file in the same way as a package
    with a src/Makevars.win file would.
  * configure is now passed crucial variables such as CC and CFLAGS
    in its environment, as many packages were not setting them (as
    documented in 'Writing R Extensions' SS1.2).
    This has most effect where configure is used to compile parts of
    the package - most often by cmake or libtool which obfuscate the
    actual compile commands used.
    Also used for configure.win and configure.ucrt on Windows.
  FORTRAN FLAGS:
  * The flag -fno-optimize-sibling-calls is no longer forced for
    gfortran 7 and later.  It should no longer be needed now using
    'hidden' character-length arguments when calling BLAS/LAPACK
    routines from C/C++ is the default even for packages.  (Unless
    perhaps packages call Fortran code from C/C++ without using R's
    headers and without allowing for these arguments.)
  C-LEVEL FACILITIES:
  * The deprecated S-compatibility macros DOUBLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * The deprecated legacy typedefs of Sint and Sfloat in header R.h
    are no longer defined, and that header no longer includes header
    limits.h from C nor climits from C++.
  * New macro CAD5R() is provided in Rinternals.h and used in a few
    places in the R sources.
  * ALTREP now supports VECSXP vectors. Contributed by Gabor Csardi
    in PR#17620.
  * The Rcomplex definition (in header R_ext/Complex.h) has been
    extended to prevent possible mis-compilation when interfacing
    with Fortran (PR#18430).  The new definition causes compiler
    warnings with static initializers such as {1, 2}, which can be
    changed to {.r=1, .i=2}.
    Using the new definition from C++ depends on compiler extensions
    supporting C features that have not been incorporated into the
    C++ standards but are available in g++ and clang++: this may
    result in C++ compiler warnings but these have been worked around
    for recent versions of common compilers (GCC, Apple/LLVM clang,
    Intel).
    It is intended to change the inclusion of header R_ext/Complex.h
    by other R headers, so C/C++ code files which make use of
    Rcomplex should include that header explicitly.
  UTILITIES:
  * R CMD check does more checking of package .Rd files, warning
    about invalid email addresses and (some) invalid URIs and noting
    empty \item labels in description lists.
  * R CMD check now also reports problems when reading package news
    in md (file NEWS.md) and (optionally) plain text (file NEWS)
    formats.
  * _R_CHECK_TIMINGS_ defaults to a value from the environment even
    for R CMD check --as-cran; this allows for exceptionally fast or
    slow platforms.
    It now applies to checking PDF and HTML versions of the manuals,
    and 'checking CRAN incoming feasibility'.
  * R CMD check can optionally (but included in --as-cran) check
    whether HTML math rendering _via_ KaTeX works for the package .Rd
    files.
  * Non-interactive debugger invocations can be trapped by setting
    the environment variable _R_CHECK_BROWSER_NONINTERACTIVE_ to a
    true value.  This is enabled by R CMD check --as-cran to detect
    the use of leftover browser() statements in the package.
  * The use of sprintf and vsprintf from C/C++ has been deprecated in
    macOS 13 and is a known security risk.  R CMD check now reports
    (on all platforms) if their use is found in compiled code:
    replace by snprintf or vsnprintf respectively. [*NB:* whether
    such calls get compiled into the package is platform-dependent.]
  * Where recorded at installation, R CMD check reports the C and
    Fortran compilers used to build R.
    It reports the OS in use (if known, as given by osVersion) as
    well as that R was built for.
    It notes if a C++ standard was specified which is older than the
    current default: many packages have used C++11 to mean 'not
    C++98' - as C++11 is the minimum supported since R 4.0.0, that
    specification can probably be removed.
  * R CMD INSTALL reports the compilers (and on macOS, the SDK) used,
    and this is copied to the output of R CMD check.
    Where a C++ standard is specified, it is reported.
  * R CMD check's 'checking compilation flags in Makevars' has been
    relaxed to accept the use of flags such as -std=f2008 in
    PKG_FFLAGS.
  * tools::buildVignettes() has a new argument skip, which is used by
    R CMD check to skip (and note) vignettes with unavailable
    \VignetteDepends (PR#18318).
  * New generic .AtNames() added to enable class-specific completions
    after @. The formerly internal function findMatches() is now
    exported, mainly for use in methods for .DollarNames() and
    .AtNames().
  DEPRECATED AND DEFUNCT:
  * default.stringsAsFactors() is defunct.
  * Calling as.data.frame.&lt;class&gt;() directly (for 12 atomic classes)
    is going to be formally deprecated, currently activated by
    setting the environment variable
    _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ to non-empty, which also
    happens in R CMD check --as-cran.
  BUG FIXES:
  * Hashed environments with sizes less than 5 can now grow.
    (Reported to R-devel by Duncan Garmonsway.)
  * as.character(&lt;Rd&gt;, deparse = TRUE) failed to re-escape curly
    braces in LaTeX-like text.  (Reported by Hadley Wickham in
    PR#18324.)
  * library() now passes its lib.loc argument when requiring Depends
    packages; reported (with fix) in PR#18331 by Mikael Jagan.
  * R CMD Stangle: improved message about 'Output' files.
  * head(x, n) and tail(x, n) now signal an error if n is not
    numeric, instead of incidentally "working" sometimes returning
    all of x.  Reported and discussed by Colin Fay, in PR#18357.
  * The "lm" method for summary() now gives the correct F-statistic
    when the model contains an offset.  Reported in PR#18008.
  * C() and `contrasts&lt;-`() now preserve factor level names when
    given a function object (as opposed a function name which did
    preserve names). Reported in PR#17616.
  * c(a = 1, 2)[[]] no longer matches 2 but rather signals a
    _classed_ error.  Reported and analysed by Davis Vaughan in
    PR#18367, a duplicate of PR#18004, by Jan Meis et al.  For
    consistency, NULL[[]] is also erroneous now.  x[[]] &lt;- v gives an
    error of the same class "MissingSubscriptError".
  * The relist() function of utils now supports NULL elements in the
    skeleton (PR#15854).
  * ordered(levels = *) (missing x) now works analogously to factor(,
    ordered=TRUE); reported (with fix) by Achim Zeileis in PR#18389.
  * User-defined Rd macro definitions can now span multiple lines,
    thanks to a patch from Duncan Murdoch. Previously, the Rd parser
    silently ignored everything after the first line.
  * Plain-text help (tools::Rd2txt()) now preserves an initial blank
    line for text following description list items.
  * tools::Rd2HTML() and tools::Rd2latex() no longer split \arguments
    and \value lists at Rd comments.
  * tools::Rd2latex() now correctly handles optional text outside
    \items of argument lists as well as bracketed text at the
    beginning of sections, e.g., \value{[NULL]}.
  * as.character(&lt;POSIXt&gt;) now behaves more in line with the methods
    for atomic vectors such as numbers, and is no longer influenced
    by options().  Ditto for as.character(&lt;Date&gt;).  The
    as.character() method gets arguments digits and OutDec with
    defaults _not_ depending on options().  Use of as.character(*,
    format = .) now warns.
  * Similarly, the as.character.hexmode() and *.octmode() methods
    also behave as good citizen methods and back compatibility option
    keepStr = TRUE.
  * The as.POSIXlt(&lt;POSIXlt&gt;) and as.POSIXct(&lt;POSIXct&gt;) default
    methods now do obey their tz argument, also in this case.
  * as.POSIXlt(&lt;Date&gt;) now does apply a tz (time zone) argument, as
    does as.POSIXct(); partly suggested by Roland Fuss on the R-devel
    mailing list.
  * as.Date.POSIXlt(x) now also works when the list components are of
    unequal length, aka "partially filled" or "ragged".
  * expand.model.frame() looked up variables in the wrong environment
    when applied to models fitted without data.  Reported in
    PR#18414.
  * time() now (also) uses the ts.eps = getOption("ts.eps") argument
    and thus by default rounds values very close to the start (or
    end) of a year.  Based on a proposal by Andre"i V. Kostyrka on
    R-help.
  * Printing of a factanal() result with just one factor and sort =
    TRUE now works regularly, fixing PR#17863 by Timothy Bates,
    thanks to the 'R Contributors' working group.
  * Printing 0-length objects of class "factor", "roman", "hexmode",
    "octmode", "person", "bibentry", or "citation" now prints
    something better, one of which fixes PR#18422, reported by
    Benjamin Feakins.
  * Sys.timezone() queries timedatectl only if systemd is loaded;
    addressing a report by Jan Gorecki in PR#17421.
  * The formula method of cor.test() had scoping problems when
    environment(formula) was not the calling environment; reported
    with a patch proposal by Mao Kobayashi in PR#18439.
  * attach() of an environment with active bindings now preserves the
    active bindings.  Reported by Kevin Ushey in PR#18425.
  * BLAS detection now works also with system-provided libraries not
    available as regular files.  This fixes detection of the
    Accelerate framework on macOS since Big Sur.  Reported by David
    Novgorodsky.
  * download.file() gives a helpful error message in case of an
    invalid download.file.method option, thanks to Colin Fay's report
    in PR#18455.
  * Sporadic crashes of Rterm when using completion have been fixed.
  * Rprof() is now more reliable.  A livelock in thread
    initialization with too short sampling interval has been fixed on
    macOS.  A deadlock in using the C runtime has been fixed on
    Windows.  A potential deadlock has been prevented on Unix.
  * Cursor placement in Rgui now works even after a fixed-width font
    is selected.
  * Mandatory options (options()) are now set on startup so that
    saving and restoring them always works (PR#18372).
  * Package installation, R CMD INSTALL or install.packages(*), now
    parses each of the &lt;pkg&gt;/R/*.R files individually instead of
    first concatenating and then parse()ing the large resulting file.
    This allows parser or syntax errors to be diagnosed with correct
    file names and line numbers, thanks to Simon Dedman's report and
    Bill Dunlap's patch in PR#17859.
    This _does_ require syntactically self contained R source files
    now, fixing another inadvertent bug.
  * predict.lm(&lt;model with offset&gt;) now finds the offset in the
    correct environment, thanks to Andr'e Gillibert's report and patch
    in PR#18456.
  * getInitial(&lt;formula&gt;) now finds the selfStart model in the
    correct environment.  (Reported by Ivan Krylov in PR#18368.)
  * Fix for possible segfault when using recently-added graphics
    features, such as gradients, clipping paths, masks, and groups
    with pdf(file=NULL).
  * class(m) &lt;- class(m) no longer changes a matrix m by adding a
    class _attribute_.
  * packageDate(pkg) now only warns once if there is no pkg.
  * When ts() creates a multivariate time series, "mts", it also
    inherits from "array" now, and is.mts() is documented _and_
    stricter.
  * Rd2txt() now preserves line breaks of \verb Rd content and from
    duplicated \cr.  The former also fixes the rendering of verbatim
    output from Rd \Sexpr in plain-text help.
  * uniroot(f, interval) should no longer wrongly converge _outside_
    the interval in some cases where abs(f(x)) == Inf for an x at the
    interval boundary, thanks to posts by Ben Bolker and Serguei
    Sokol on R-devel.
  * Vectorized alpha handling in palette functions such as in gray(),
    rainbow(), or hcl.colors() works correctly now, thanks to Achim
    Zeileis' report and patch in PR#18476.
  * Formatting and print()ing of bibentry objects has dropped the
    deprecated citation.bibtex.max argument, such that the bibtex
    argument's default for print.bibentry() depends directly on the
    citation.bibtex.max option, whereas in format.bibentry() the
    option no longer applies.
  * Attempting to use a character string naming a foreign function
    entry point in a foreign function call in a package will now
    signal an error if the packages has called R_forceSymbols to
    specify that symbols must be used.
  * An error in table() could permanently set options(warn=2)
    promoting all subsequent warnings to errors.
  * The sigma() function gave misleading results for binary GLMs.  A
    new method for objects of class "glm" returns the square root of
    the estimate of the dispersion parameter using the same
    calculation as summary.glm().
  * bs() and ns() in the (typical) case of automatic knot
    construction, when some of the supposedly inner knots coincide
    with boundary knots, now moves them inside (with a warning),
    building on PR#18442 by Ben Bolker.
  * R CMD on Windows now skips the site profile with --no-site-file
    and --vanilla even when R_PROFILE is set (PR#18512, from Kevin
    Ushey).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1686916800">- CHANGES IN R 4.3.1:
  C-LEVEL FACILITIES:
  * The C-level API version of R's integrate(), Rdqags() in Applic.h,
    now returns the correct number of integrand evaluations neval,
    fixing PR#18515 reported and diagnosed by Stephen Wade.
  * The C prototypes for LAPACK calls dspgv and dtptrs in
    R_exts/Lapack.h had one too many and one too few character length
    arguments - but this has not caused any known issues. To get the
    corrected prototypes, include
    [#]include &lt;Rconfig.h&gt; // for PR18534fixed
    [#]ifdef PR18534fixed
    [#] define usePR18534fix 1
    [#]endif
    [#]include &lt;R_exts/Lapack.h&gt;
    in your C/C++ code (PR#18534).
  INSTALLATION:
  * Many of the checks of esoteric Internet operations and those
    using unreliable external sites have been moved to a new target
    that is not run by default and primarily intended for the core
    developers.  To run them use
    cd tests; make test-Internet-dev
  BUG FIXES:
  * .S3methods(), typically called from methods(), again marks
    methods from package base as visible.
    Also, the visibility of non-base methods is again determined by
    the method's presence in search().
  * tools::Rdiff() is now more robust against invalid strings, fixing
    installation tests on Windows without Rtools installed
    (PR#18530).
  * Fix (new) bug in hcl.colors(2, *), by Achim Zeileis (PR#18523).
  * head(., &lt;illegal&gt;) and tail(..) now produce more useful "Error in
    ...." error messages, fixing PR#18362.
  * Package code syntax on Windows is checked in UTF-8 when UTF-8 is
    the native encoding.
  * na.contiguous(x) now also returns the first run, when it is at
    the beginning and there is a later one of the same length;
    reported to R-devel, including a fix, by Georgi Boshnakov.
    Further, by default, it modifies only an existing attr(*,"tsp")
    but otherwise no longer sets one.
  * chol(&lt;not pos.def&gt;, pivot = &lt;T|F&gt;) now gives a correct error or
    warning message (depending on pivot), thanks to Mikael Jagan's
    (PR#18541).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1699012800">- CHANGES IN R 4.3.2:
  NEW FEATURES:
  * The default initialization of the "repos" option from the
    repositories file at startup can be skipped by setting
    environment variable R_REPOSITORIES to NULL such that
    getOption("repos") is empty if not set elsewhere.
  * qr.X() is now an implicit S4 generic in methods.
  * iconv(to = "ASCII//TRANSLIT") is emulated using substitution on
    platforms which do not support it (notably Alpine Linux).  This
    should give a human-readable conversion in ASCII on all platforms
    (rather than NA_character_).
  * trans3d() gains options continuous and verbose addressing the
    problem of possible "wrap around" when projecting too long
    curves, as reported by Achim Zeileis in PR#18537.
  * tools::showNonASCII() has been rewritten to work better on macOS
    14 (which has a changed implementation of iconv()).
  * tiff(type = "quartz") (the default on macOS) now warns if
    compression is specified: it continues to be ignored.
  INSTALLATION on a UNIX-ALIKE:
  * There is some support for building with Intel's LLVM-based
    compilers on x86_64 Linux, such as (C) icx, (C++) ipcx and
    (Fortran) ifx from oneAPI 2023.x.y.
  * There is support for using LLVM's flang-new as the Fortran
    compiler from LLVM 16.0.x (preferably 17.0.0 or later).
  UTILITIES:
  * R CMD check reports the use of the Fortran 90 random number
    generator RANDOM_NUMBER() and the subroutines to initialize it.
    'Writing R Extensions' has example code to use R's RNGs from
    Fortran.
  BUG FIXES:
  * substr(x, n, L) &lt;- cc now works (more) correctly for multibyte
    UTF-8 strings x when L &gt; nchar(x), thanks to a report and patch
    by 'Architect 95'.
  * contrib.url(character()) now returns 0-length character() as
    documented, which also avoids spurious warnings from
    available.packages() et al. in the edge case of an empty vector
    of repository URLs.
  * readChar(., 4e8) no longer fails, thanks to Kodi Arfer's report
    (PR#18557).
  * lapply(&lt;list&gt;, as.data.frame) no longer warns falsely for some
    base vector components.
  * Communication between parent and child processes in the multicore
    part of parallel could fail on platforms that do not support an
    arbitrarily large payload in system functions read()/write() on
    pipes (seen on macOS where a restriction to INT_MAX bytes is
    documented, without doing a partial read unlike Linux). The
    payload is now split into 1Gb chunks to avoid that problem.
    (PR#18571)
  * qqplot(x,y, conf.level=.) gives better confidence bounds when
    length(x) != length(y), thanks to Alexander Ploner's report and
    patch proposal (PR#18557).
  * norm(&lt;0-length&gt;, "2") now gives zero instead of an error, as all
    the other norm types, thanks to Mikael Jagan's PR#18542.
  * Build-stage Rd macros \packageAuthor and \packageMaintainer now
    process Authors@R, fixing NA results when the package DESCRIPTION
    omits Author and Maintainer fields.
  * Formatting and printing complex numbers could give things like
    0.1683-0i because of rounding error: -0i is now replaced by +0i.
  * postscript() refused to accept a title comment containing the
    letter "W" (PR#18599).
  * isoreg(c(1,Inf)) signals an error instead of segfaulting, fixing
    PR#18603.
  * tiff(type = "Xlib") was only outputting the last page of
    multi-page plots.
  * tools::latexToUtf8() again knows about \~{n} and other letters
    with tilde, fixing a regression in R 4.3.0, and about \^{i} as an
    alternative to \^{\i} (similarly with other accents).
    Furthermore, LaTeX codes for accented I letters are now correctly
    converted, also fixing related mistakes in
    tools::encoded_text_to_latex().
  * tar(*, tar = "internal") no longer creates out-of-spec tar files
    in the very rare case of user or group names longer than 32
    bytes, fixing PR#17871 with thanks to Ivan Krylov.
  * When using the "internal" timezone datetime code, adding a
    fraction of a second no longer adds one second, fixing PR#16856
    from a patch by Ivan Krylov.
  * tools::checkRd() no longer produces spurious notes about
    "unnecessary braces" from multi-line Rd results of \Sexpr macros.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1709208000">- CHANGES IN R 4.3.3:
  NEW FEATURES:
  * iconv() now fixes up variant encoding names such as "utf8"
    case-insensitively.
  DEPRECATED AND DEFUNCT:
  * The legacy encoding = "MacRoman" is deprecated in pdf() and
    postscript(): support was incomplete in earlier versions of R.
  BUG FIXES:
  * Arguments are now properly forwarded to methods on S4 generics
    with ... in the middle of their formal arguments. This was broken
    for the case when a method introduced an argument but did not
    include ... in its own formals. Thanks to Herv'e Pag`es for the
    report PR#18538.
  * Some invalid file arguments to pictex(), postscript() and xfig()
    opened a file called NA rather than throw an error.  These
    included postscript(NULL) (which some people expected to work
    like pdf(NULL)).
  * Passing filename = NA to svg(), cairo_pdf(), cairo_ps() or the
    Cairo-based bitmap devices opened a file called NA: it now throws
    an error.
  * quartz(file = NA) opened a file called NA, including when used as
    a Quartz-based bitmap device.  It now gives an error.
  * rank(&lt;long vector&gt;) now works, fixing PR#18617, thanks to Ilia
    Kats.
  * seq.int() did not adequately check its length.out argument.
  * match(&lt;POSIXct&gt;, .) is correct again for differing time zones,
    ditto for "POSIXlt", fixing PR#18618 reported by Bastian Klein.
  * drop.terms(*, dropx = &lt;0-length&gt;) now works, fixing PR#18563 as
    proposed by Mikael Jagan.
  * drop.terms(*) keeps + offset(.) terms when it should, PR#18565,
    and drop.terms() no longer makes up a response, PR#18566, fixing
    both bugs thanks to Mikael Jagan.
  * getS3method("t", "test") no longer finds the t.test() function,
    fixing PR#18627.
  * pdf() and postscript() support for the documented Adobe encodings
    "Greek" and "Cyrilllic" was missing (although the corresponding
    Windows' codepages could be used).
  * Computations of glyph metric information for pdf() and
    postscript() did not take into account that transliteration could
    replace one character by two or more (only seen on macOS 14) and
    typically warned that the information was not known.
  * rank(x) no longer overflows during integer addition, when
    computing rank average for largish but not-yet long vector x,
    fixing PR#18630, thanks to Ilia Kats.
  * list.files() on Windows now returns also files with names longer
    that 260 bytes (the Windows limit is 260 characters).
    Previously, some file names particularly with 'East Asian'
    characters were omitted.
  * cov2cor(&lt;0 x 0&gt;) now works, fixing PR#18423 thanks to Mikael
    Jagan and Elin Waring.
  * cov2cor(&lt;negative diagonal&gt;) and similar now give one warning
    instead of two, with better wording, fixing PR#18424 thanks to
    Mikael Jagan.
  * tools:: startDynamicHelp() now ensures port is in proper range,
    fixing PR#18645.
  * pbeta(x, a,b) is correct now for x=0 or 1 in the boundary cases
    where a or b or both are 0, fixing PR#18672 thanks to Michael
    Fay.
  * pmatch(x, table) for large table, also called for data frame row
    selection, dfrm[nm, ], is now interruptible, fixing PR#18656.
  * predict(&lt;rank-deficient lm&gt;, newdata=*) fix computing of nbasis,
    see Russ Lenth's comment 29 in PR#16158.
  * Added a work-around for a bug in macOS 14.3.1 and higher which
    prevents R plots in the Quartz Cocoa device from updating on
    screen.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1713960000">- CHANGES IN R 4.4.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Startup banners, R --version, sessionInfo() and R CMD check no
    longer report (64-bit) as part of the platform as this is almost
    universal - the increasingly rare 32-bit platforms will still
    report (32-bit).
    On Windows, ditto for window titles.
  * is.atomic(NULL) now returns FALSE, as NULL is not an atomic
    vector.  Strict back-compatibility would replace is.atomic(foo)
    by (is.null(foo) || is.atomic(foo)) but should happen only
    sparingly.
  NEW FEATURES:
  * The confint() methods for "glm" and "nls" objects have been
    copied to the stats package.  Previously, they were stubs which
    called versions in package MASS. The MASS namespace is no longer
    loaded if you invoke (say) confint(glmfit).  Further, the "glm"
    method for profile() and the plot() and pairs() methods for class
    "profile" have been copied from MASS to stats.  (profile.nls()
    and plot.profile.nls() were already in stats.)
  * The confint() and profile methods for "glm" objects have gained a
    possibility to do profiling based on the Rao Score statistic in
    addition to the default Likelihood Ratio. This is controlled by a
    new test = argument.
  * The pairs() method for "profile" objects has been extended with a
    which = argument to allow plotting only a subset of the
    parameters.
  * The "glm" method for anova() computes test statistics and
    p-values by default, using a chi-squared test or an F test
    depending on whether the dispersion is fixed or free.  Test
    statistics can be suppressed by giving argument test a false
    logical value.
  * In setRepositories() the repositories can be set using their
    names via name = instead of index ind =.
  * methods() and .S3methods() gain a all.names option for the (rare)
    case where functions starting with a . should be included.
  * Serializations can now be interrupted (e.g., by Ctrl-C on a
    Unix-alike) if they take too long, e.g., from save.image(),
    thanks to suggestions by Ivan Krylov and others on R-devel.
  * New startup option --max-connections to set the maximum number of
    simultaneous connections for the session.  Defaults to 128 as
    before: allowed values up to 4096 (but resource limits may in
    practice restrict to smaller values).
  * R on Windows (since Windows 10 2004) now uses the new Segment
    Heap allocator. This may improve performance of some
    memory-intensive applications.
  * When R packages are built, typically by R CMD build &lt;pkg&gt;, the
    new --user=&lt;build_user&gt; option overrides the (internally
    determined) user name, currently Sys.info()["user"] or LOGNAME.
    This is a (modified) fulfillment of Will Landau's suggestion in
    PR#17530.
  * tools::testInstalledBasic() gets new optional arguments outDir
    and testSrcdir, e.g., allowing to use it in a &lt;builddir&gt; !=
    &lt;srcdir&gt; setup, and in standard "binary" Windows installation
  * if* a source tests/ folder is present.
  * range(&lt;DT_with_Inf&gt;, finite = TRUE) now work for objects of class
    "Date", "POSIXct", and "POSIXlt" with infinite entries,
    analogously to range.default(), as proposed by Davis Vaughan on
    R-devel.  Other range()-methods can make use of new function
    .rangeNum().
  * New .internalGenerics object complementing .S3PrimitiveGenerics,
    for documentation and low-level book-keeping.
  * grid() now invisibly returns the x- and y- coordinates at which
    the grid-lines were drawn.
  * norm(., type) now also works for complex matrices.
  * kappa(., exact = TRUE, norm = *) now works for all norms and also
    for complex matrices.  In symmetric / triangular cases, the new
    argument uplo = "U" | "L" allows the upper or lower triangular
    part to be specified.
  * memDecompress(type = "unknown") recognizes compression in the
    default 'zlib' format as used by memCompress(type = "gzip").
  * memCompress() and memDecompress() will use the libdeflate library
    (&lt;https://github.com/ebiggers/libdeflate&gt;) if installed.  This
    uses the same type of compression for type = "gzip" but is 1.5-2x
    faster than the system libz library on some common platforms: the
    speed-up may depend on the library version.
  * diff() for objects of class "Date", "POSIXct", and "POSIXlt"
    accepts a units argument passed via ....
  * Dynamic help now does a much better job of rendering package
    DESCRIPTION metadata.
  * Rprof() gains an event argument and support for elapsed (real)
    time profiling on Unix (PR#18076).
  * filled.contour() gains a key.border argument.
  * tools::update_pkg_po() gets arguments pot_make and mo_make for
    _not_ re-making the corresponding files, and additionally a
    verbose argument.
  * Hexadecimal string colour specifications are now accepted in
    short form, so, for example, we can use "#123", which is
    equivalent to "#112233".
    Thanks to MikeFC for the original idea and Ella Kaye, Malcolm
    Barrett, George Stagg, and Hanne Oberman for the patch.
  * Plain-text help shows \var markup by angle brackets.
  * The new experimental primitive function declare() is intended to
    eventually allow information about R code to be communicated to
    the interpreter, compiler, and code analysis tools. The syntax
    for declarations is still being developed.
  * Functions psmirnov(), qsmirnov() and rsmirnov() in package stats
    have had argument two.sided renamed to alternative, to take into
    account that the permutation distributions of the one-sided
    statistics can be different in the case of ties.  Consequence of
    PR#18582.
  * sort() is now an implicit S4 generic in methods.
  * Formatting and printing, format(z), print(z), of complex vectors
    z no longer zap relatively small real or imaginary parts to zero,
    fixing PR#16752.  This is an API change, as it was documented
    previously to round real and imaginary parts together on purpose,
    producing nicer looking output.  As mentioned, e.g. in the PR,
    this change is compatible with many other "R-like" programming
    environments.
    We have simplified the internal code and now basically format the
    real and imaginary parts independently of each other.
  * New experimental functions Tailcall() and Exec() to support
    writing stack-space-efficient recursive functions.
  * Where characters are attempted to be plotted by pdf(),
    postscript() and xfig() which are not in the selected 8-bit
    character set (most often Latin-1) and the R session is using a
    UTF-8 locale, the warning messages will show the UTF-8 character
    rather than its bytes and one dot will be substituted per
    character rather than per byte.  (Platforms whose iconv() does
    transliteration silently plot the transliteration.)
    In a UTF-8 locale some transliterations are now done with a
    warning (e.g., dashes and Unicode minus to hyphen, ligatures are
    expanded, permille (‰) is replaced by o/oo), although the OS may
    have got there first.  These are warnings as they will continue
    to be replaced by dots in earlier versions of R.
  * The matrix multiplication functions crossprod() and tcrossprod()
    are now also primitive and S3 generic, as %*% had become in R
    4.3.0.
  * source() and example() have a new optional argument catch.aborts
    which allows continued evaluation of the R code after an error.
  * The non-Quartz tiff() devices allow additional types of
    compression if supported by the platform's libtiff library.
  * The list of base and recommended package names is now provided by
    tools::standard_package_names().
  * cairo_pdf() and cairo_ps() default to onefile = TRUE to closer
    match pdf() and postscript().
  * New option catch.script.errors provides a documented way to catch
    errors and then continue in non-interactive use.
  * L %||% R newly in base is an expressive idiom for the phrases
    if(!is.null(L)) L else R or if(is.null(L)) R else L.
  * The return value from warnings() now always inherits from
    "warnings" as documented, now also in the case of no warnings
    where it previously returned NULL.
  * as.complex("1i") now returns 0 + 1i instead of NA with a warning.
  * z &lt;- c(NA, 1i) now keeps the imaginary part Im(z[1]) == 0, no
    longer coercing to NA_complex_.  Similarly, cumsum(z) correctly
    sums real and imaginary parts separately, i.e., without
    "crosstalk" in case of NAs.
  * On Alpine Linux iconv() now maps "latin2", "latin-2", "latin9"
    and "latin-9" to encoding names the OS knows about
    (case-insensitively).
  * iconv(sub = "Unicode") now always zero-pads to four (hex) digits,
    rather than to 4 or 8.  (This seems to have become the convention
    once Unicode restricted the number of Unicode points to 2^21 - 1
    and so will never need more than 6 digits.)
  * NCOL(NULL) now returns 0 instead of 1, for consistency with
    cbind().
  * The information for the Euro glyph missing from the Adobe .afm
    files for the Courier, Helvetica and Times families has been
    copied from their URW equivalents - this will improve vertical
    centring in the pdf() and postscript() devices.
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.12.0.  The changes are almost entirely cosmetic.
  * The included LAPACK sources have been updated to version 3.12.0
    and some further double-complex routines added.
  * There are new font families for the 2014--5 URW 2.0 fonts (see
    ?pdf) which are included in recent versions of Ghostscript.
    These have font widths for most Greek glyphs and a few others
    which were missing from the original versions (whose font
    families remain available for reproducibility, although
    Ghostscript-based viewers will render using the 2.0 versions).
  * Improve the large-n efficiency of as.matrix(&lt;dist&gt;), thanks an R
    contributors effort, notably by Tim Taylor and Heather Turner,
    see PR#18660.
  * The default and numeric methods of all.equal() get a check.class
    option.
  * zapsmall() gets new optional arguments, function mFUN and min.d,
    for extra flexibility; fulfills a wish in PR#18199.  Also, it is
    now an implicit S4 generic in package methods.
  * The Rd filter for aspell() gains an ignore argument.
  * New generic function sort_by(), primarily useful for the
    data.frame method which can be used to sort rows of a data frame
    by one or more columns.
  * The icence headers for the RPC code in src/extra/xdr have been
    updated to use the GPL-compatible licence published by Oracle
    America in 2010.
  * New function pkg2HTML() in tools to create single-page HTML
    reference manuals for R packages.
  * The byte code evaluator now uses less C stack space for recursive
    calls to byte-compiled functions. It also makes more of an effort
    to avoid allocations for scalar return values.
  * New completion option backtick (disabled by default) allows
    non-syntactic completions to be wrapped in backquotes. This is
    currently only useful for Jupyter notebooks via the IRkernel
    package, and may cause problems for other backends.
  INSTALLATION:
  * The parser has been updated to work with bison 3.8.2, which is
    now used for the pre-generated parsers in gram.c, file.c, and
    gramRd.c. A few parser error messages have changed, which may
    affect code that relies on exact messages.
  INSTALLATION on a UNIX-ALIKE:
  * System valgrind headers are now required to use configure option
  - -with-valgrind-instrumentation with value 1 or 2.
  * configure will warn if it encounters a 32-bit build, as that is
    nowadays almost untested.
  * Environment variable R_SYSTEM_ABI is no longer used and so no
    longer recorded in etc/Renviron (it was not on Windows and was
    only ever used when preparing package tools).
  * If the libdeflate library and headers are available, libdeflate
    rather than libz is used to (de)compress R objects in lazy-load
    databases.  Typically tasks spend up to 5% of their time on such
    operations, although creating lazy-data databases is one of the
    exceptions.
    This can be suppressed if the library is available by the
    configure option --without-libdeflate-compression.
  * configure option --enable-lto=check has not worked reliably since
    2019 and has been removed.
  * The minimum autoconf requirement for a maintainer build has been
    increased to autoconf 2.71.
    It is intended to increase this to 2.72 for R 4.5.0: the
    distributed configure file was generated using 2.72.
  * The minimum version requirement for an external LAPACK has been
    reduced to 3.9.0.
  * No default C++ compiler is set if no C++17 compiler is detected:
    there is no longer an automatic fallback to C++14 or C++11.
    Compilers from the last five years should have sufficient
    support: for others macros CXX and CXXSTD can be set in file
    config.site to provide a fallback if needed.
    The Objective-C++ compiler now by default uses the standard
    selected by R for C++ (currently C++17) rather than the default
    standard for the C++ compiler (which on macOS is still C++98).
  INSTALLATION on macOS:
  * A new configure option --with-newAccelerate makes use of Apple's
    'new' BLAS / LAPACK interfaces in their Accelerate framework.
    Those interfaces are only available in macOS 13.3 or later, and
    building requires SDK 13.3 or later (from the Command Line Tools
    or Xcode 14.3 or later).
    By default the option uses new Accelerate for BLAS calls: to also
    use it for LAPACK use option --with-newAccelerate=lapack.  The
    later interfaces provide LAPACK 3.9.1 rather than 3.2.1: 3.9.1 is
    from 2021-04 and does not include the improved algorithms
    introduced in LAPACK 3.10.0 (including for BLAS calls).
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools44, an update of the Rtools43 toolchain.  It is
    based on GCC 13 and newer versions of MinGW-W64, binutils and
    libraries (targeting 64-bit Intel CPUs).  R-devel can no longer
    be built using Rtools43 without changes.
  * Rtools44 has experimental support for 64-bit ARM (aarch64) CPUs
    _via_ the LLVM 17 toolchain using lld, clang/flang-new and
    libc++.
  UTILITIES:
  * R CMD check notes when S4-style exports are used without
    declaring a strong dependence on package methods.
  * tools::checkRd() (used by R CMD check) detects more problems with
    \Sexpr-based dynamic content, including bad nesting of \Sexprs
    and invalid arguments.
  * tools::checkRd() now reports Rd titles and section names ending
    in a period; this is ignored by R CMD check unless environment
    variable _R_CHECK_RD_CHECKRD_MINLEVEL_ is set to -5 or smaller.
  * R CMD check now notes Rd files without an \alias, as long
    documented in 'Writing R Extensions' §1.3.1.  The check for a
    missing \description has been moved from tools::checkRd() to
    tools::checkRdContents().
  * R CMD check now visits inst/NEWS.Rd and OS-specific man
    subdirectories when checking Rd files.
  * tools::checkDocFiles() and tools::checkRdContents() now also
    check internal Rd files by default, but "specially" (ignoring
    missing documentation of arguments).
  * R CMD Rdiff gets option --useEx.
  * R CMD check now warns on non-portable uses of Fortran KIND such
    as INTEGER(KIND=4) and REAL(KIND=8).
    To see the failing lines set environment variable
    _R_CHECK_FORTRAN_KIND_DETAILS_ to a true value.
  * When checking Rd files, R CMD check now notes some of the "lost
    braces" that tools::checkRd() finds.  Typical problems are Rd
    macros missing the initial backslash (e.g., code{...}), in-text
    set notation (e.g., {1, 2}, where the braces need escaping), and
    \itemize lists with \describe-style entries of the form
    \item{label}{description}.
  * R CMD INSTALL (and hence check) will compile C++ code with
  - DR_NO_REMAP if environment variable _R_CXX_USE_NO_REMAP_ is set
    to a true value.  It is planned that this will in future become
    the default for compiling C++.
  * The new built-in Rd macro \dontdiff{} can be used to mark example
    code whose output should be ignored when comparing check output
    to reference output (tests/Examples/&lt;pkg&gt;-Ex.Rout.save).  The
    \dontdiff tag, like \donttest, is _not_ shown on the rendered
    help page, so provides a clean alternative to ##
    IGNORE_RDIFF_(BEGIN|END) comments.
  * R CMD build when there is no NAMESPACE, now uses the recommended
    exportPattern("^[^.]"), instead of exporting everything.
  * R CMD check now warns about non-ASCII characters in the NAMESPACE
    file (in addition to R files). Such packages are not portable and
    may fail to install on some platforms.
  C-LEVEL FACILITIES:
  * Headers R_ext/Applic.h and R-ext/Linpack.h used to include
    R_ext/BLAS.h although this was undocumented and unneeded by their
    documented entry points.  They no longer do so.
  * New function R_missing(), factored out from do_missing(), used to
    fix PR#18579.
  * SEXP type S4SXP has been renamed to OBJSXP to support
    experimenting with alternative object systems.  The S4SXP value
    can still be used in C code but is now deprecated.  Based on
    contributions from the R Consortium's Object-Oriented Programming
    Working Group.
  * New function pow1p(x,y) for accurate (1+x)^y.
  * mkCharLenCE was incorrectly documented to take a size_t length
    but was implemented with int (and character strings in R are
    limited to 2^31 - 1 bytes).
  DEPRECATED AND DEFUNCT:
  * data() no longer handles zipped data from long-defunct (since R
    2.13.0) --use-zip-data installations.
  * The legacy graphics devices pictex() and xfig() are now
    deprecated.  They do not support recent graphics enhancements and
    their font handling is rudimentary. The intention is to retain
    them for historical interest as long as they remain somewhat
    functional.
  * Support for encoding = "MacRoman" has been removed from the pdf()
    and postscript() devices - this was a legacy encoding supporting
    classic macOS up to 2001 and no longer has universal libiconv
    support.
  * is.R() is deprecated as no other S dialect is known to be in use
    (and this could only identify historical dialects, not future
    ones).
    Further information on calls can be obtained by setting the
    environment variable _R_DEPRECATED_IS_R_ to error which turns the
    deprecation warning into an error and so by default gives a
    traceback.  (This is done by R CMD check --as-cran.)
  * UseMethod() no longer forwards local variables assigned in the
    generic function into method call environments before evaluating
    the method body. This makes method calls behave more like
    standard function calls and makes method code easier to analyze
    correctly.
  * The twelve as.data.frame.&lt;class&gt;() methods which were deprecated
    only via _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ and in R CMD
    check --as-cran are formally deprecated now in favour of calling
    as.data.frame() or as.data.frame.vector().  The deprecation
    "check" now works also when as.data.frame() is S4 generic thanks
    to Ivan Krylov.
  * The default method for the directional comparison operators &lt;, &gt;,
    &lt;=, and &gt;= now signals an error when one of the operands is a
    language object, i.e. a symbol or a call.
  * For terms.formula(), deprecate abb and neg.out arguments
    _formally_ in addition to just documenting it.
  BUG FIXES:
  * The methods package is more robust to not being attached to the
    search path.  More work needs to be done.
  * pairwise.t.test() misbehaved when subgroups had 0 DF for
    variance, even with pool.sd = TRUE.  (PR#18594 by Jack Berry).
  * Probability distribution functions [dpq]&lt;distrib&gt;(x, *), but also
    bessel[IKJY](x, .) now consistently preserve attributes(x) when
    length(x) == 0, e.g., for a 2 x 0 matrix, thanks to Karolis
    Koncevičius' report PR#18509.
  * Group "Summary" computations such as sum(1:3, 4, na.rm = 5, NA,
    7, na.rm = LL) now give an error instead of either 17 or NN for
    LL true or false, as proposed by Ivan Krylov on the R-devel
    mailing list.  (This also means it is now an error to specify
    na.rm more than once.)
  * as.complex(x) now returns complex(real = x, imaginary = 0) for
    _all_ numerical and logical x, notably also for NA or
    NA_integer_.
  * Directories are now omitted by file.copy(, recursive = FALSE) and
    in file.append() (PR#17337).
  * gsub() and sub() are now more robust to integer overflow when
    reporting errors caused by too large input strings (PR#18346).
  * Top-level handlers are now more robust to attempts to remove a
    handler whilst handlers are running (PR#18508).
  * The handling of Alt+F4 in dialogs created on Windows using
    GraphApp has been fixed (PR#13870).
  * density() more consistently computes grid values for the
    FFT-based convolution, following Robert Schlicht's analysis and
    proposal in PR#18337, correcting density values typically by a
    factor of about 0.999.  Argument old.coords = TRUE provides back
    compatibility.
  * palette.colors() gains a name argument that defaults to FALSE
    controlling whether the vector of colours that is returned has
    names (where possible).  PR#18529.
  * tools::xgettext() no longer extracts the (non-translatable) class
    names from warningCondition and errorCondition calls.
  * S3method(&lt;gen&gt;, &lt;class&gt;, &lt;func&gt;) in the NAMESPACE file now works
    (again) when &lt;func&gt; is visible from the namespace, e.g.,
    imported, or in base.
  * getParseData(f) now also works for a function defined in the
    first of several &lt;pkg&gt;/R/*.R source files, thanks to Kirill
    Müller's report and Duncan Murdoch's patch in PR#16756.
  * Rd \Sexpr macros with nested #ifdef conditionals were not
    processed.
  * A non-blocking connection with non-default encoding (such as a
    socket) now correctly returns from readLines() after new data has
    arrived also when its EOF had been reached previously.  Thanks to
    Peter Meilstrup's report on R-devel and Ivan Krylov's report and
    patch proposal in PR#18555.
  * tools::checkRdContents() failed to detect empty argument
    descriptions when they spanned multiple lines, including those
    generated by prompt().  These cases are now noted by R CMD check.
  * Plain-text help no longer outputs spurious colons in the
    arguments list (for multi-line \item labels in the Rd source).
  * kappa() and rcond() work correctly in more cases; kappa(., norm =
    "2") now warns that it computes the 1-norm with (default) exact =
    FALSE; prompted by Mikael Jagan's quite comprehensive PR#18543.
  * Rd skeletons generated by prompt() or promptData() now use a
    dummy title (so R CMD build works).  tools::checkRdContents() has
    been updated to detect such template leftovers, including from
    promptPackage().
  * When S4 method dispatch fails because no method was found, the
    error message now includes the signature argument names; thanks
    to Michael Chirico's proposal on the R-devel list.
  * withAutoprint({ .. }) now preserves srcrefs previously lost,
    thanks to Andrew Simmons' report plus fix in PR#18572.
  * transform.data.frame() no longer adjusts names; in particular,
    untransformed variables are kept as-is, including those with
    syntactically invalid names (PR#17890).
  * The keep.source option for Rd \Sexpr blocks is no longer ignored.
  * The formula methods for t.test() and wilcox.test() now catch when
    paired is passed, addressing PR#14359; use Pair(x1, x2) ~ 1 for a
    paired test.
  * The level reported in the browser prompt was often too large. It
    now shows the number of browser contexts on the stack.
  * For cbind() and rbind(), the optional deparse.level argument is
    now properly passed to methods, thanks to Mikael Jagan's PR#18579
    and comments there.
  * Some error and warning messages for large ('long vector')
    matrix(v, nr, nc) and dim(m) &lt;- d are now correct about sizes,
    using long long formatting, fixing PR#18612 (and more) reported
    by Mikael Jagan.
  * readChar(useBytes = TRUE) now terminates strings even when the
    underlying connection uses extra spaces in the input buffer.
    This fixes problems with extra garbage seen with gzip
    connections, PR#18605.
  * Named capture in PCRE regular expressions now works also with
    more than 127 named groups (PR#18588).
  * Datetime functions are now robust against long jumps when dealing
    with internal time zone changes.  This avoids confusing warnings
    about an invalid time zone, previously triggered by turning
    warnings into errors or handling them via tryCatch (PR#17966,
    PR#17780).
  * Datetime functions now restore even an empty TZ environment
    variable after internal time zone changes (PR#17724).  This makes
    results of datetime functions with this (typically unintentional)
    setting more predictable.
  * drop.terms(*) now drops response as by default, keep.response =
    FALSE, fixing PR#18564 thanks to Mikael Jagan.
  * dummy.coef(.) now also works for lm()-models with character
    categorical predictor variables rather than factor ones, fixing
    PR#18635 reported by Jinsong Zhao.
  * formals(f) &lt;- formals(f) now also works for a function w/o
    arguments and atomic _constant_ body(f).
  * Correct as.function(&lt;invalid list&gt;, .)'s error message.
  * removeSource() is yet more thorough in finding and removing
    "srcref" and the other source references from parsed R language
    chunks, fixing PR#18638 thanks to Andrew Simmons.
  * dgeom() is more accurate now, notably when its result is very
    small, fixing PR#18642 thanks to the proposal of Morten Welinder,
    also improving other instances where C level binom_raw(x, n, ..)
    has x == 0 or x== n.
  * warning() with options(warn = 1) has improved output for
    multi-line messages.
  * axis.Date() and axis.POSIXct() now respect the par("lab") setting
    for the number of pretty() intervals.
  * Comparisons for language objects (which are based on deparsing)
    are now more careful about using accurate deparsed results
    (PR#18676).
  * Plain-text help (Rd2txt) now correctly preserves blank lines
    following single-line \dontrun code.
  * &lt;POSIXlt&gt;[*] no longer sets wrong "balanced" attribute, fixing
    PR#18681 thanks to Mikael Jagan.
  * str(&lt;classed-call&gt;) now deparses the call as expected, fixing
    PR#18684, reported by Dave Slager.
  * In Rd examples, code following the closing brace of a \dontrun,
    \dontshow or \donttest tag on the same line is no longer skipped
    when R CMD check runs the examples.
  * as.data.frame(matrix(*, ncol=0)) now gets valid names() and
    colnames(); reported by Davis Vaughan on the R-devel list.
  * Internal Mathlib function stirlerr(n) is now almost fully
    (52-bit) accurate for all n &gt;= ~5.9 and more accurate also in the
    range 1 -- 5.9.  This entails small ("after 12th decimal")
    changes in density functions, e.g., dgamma() in _some_ regions of
    their support.  The fix was partly prompted by Morten Welinder's
    PR#18640.
  * Numbers like 9876543.2 are now considered non-integer by Mathlib
    internal R_nonint(), amending original fix of PR#15734.
  * Rd comment lines no longer cause broken paragraphs in the
    rendered PDF and plain-text help. In code blocks, pure comment
    lines (starting with %) no longer produce an empty line.
  * xtabs(Freq ~ .) now consistently defaults to na.action = na.pass,
    using na.rm = FALSE (added as an argument) when summing over Freq
    (PR#17770).
  * tools::testInstalledPackage() is no longer silent about failures
    from running examples or tests and its return code no longer
    ignores failures from checking vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1718366400">- CHANGES IN R 4.4.1:
  C-LEVEL FACILITIES:
  * Functions R_atof and R_strtod declared in header R_ext/Utils.h
    are now documented in 'Writing R Extensions' and so formally part
    of the API.
  * The non-API entry points Rf_setSVector, Rf_StringFalse,
    Rf_StringTrue and Rf_isBlankString have been added to those
    reported by R CMD check.
  * The new function Rf_allocLang is now available. This provides an
    alternative to the idiom of calling Rf_allocList followed by
    SET_TYPEOF.
  UTILITIES:
  * R CMD check now reports as warnings what gfortran calls 'Fortran
    2018 deleted features', all of which have long been marked as
    'obsolescent' and some of which were deleted in Fortran 2008 or
    earlier.  Fortran compilers are no longer required to support
    these.
  BUG FIXES:
  * as.numeric(), scan(), type.convert() and other places which use
    the internal C function R_strtod now require a _non-empty_ digit
    sequence in a decimal or binary exponent.  This aligns with the
    C/POSIX standard for strtod and with ?NumericConstants.
  * as.data.frame(m, make.names=NA) now works correctly for a matrix
    m with NA's in row names.
  * The error message from &lt;POSIXlt&gt;[["hour"]] and similar now
    mentions *[[, "hour"]], as wished for in PR#17409 and proposed by
    Michael Chirico.
  * qbinom() and potentially qpois(), qnbinom(), no longer sometimes
    fail accurate inversion (of pbinom(), etc), thanks to Christopher
    Chang's report and patch in PR#18711.
  * The internal help server on Windows can again serve requests sent
    in quick succession, fixing a regression in R 4.4.0.
  * debugcall(&lt;S3Generic&gt;()) now also works when a corresponding
    S4-generic version is in the methods cache (PR#18143).
  * Package tools' toTitleCase(ch0) now returns character(0) when ch0
    is of zero length; fixing PR#18724, reported by David Hugh Jones.
  * R CMD check is no longer broken (without a check result and no
    explanation in 00check.log) for a package which declares an
    invalid VignetteBuilder in DESCRIPTION but has no vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1730376000">- CHANGES IN R 4.4.2:
  C-LEVEL FACILITIES:
  * The S-compatibility macros F77_COM and F77_COMDECL defined in
    header R_ext/RS.h are deprecated and will be removed shortly.  We
    could find no record of their use.
  BUG FIXES:
  * Mathlib function lgammacor(x) no longer warns about underflow to
    zero for large x.
  * Text widths and heights were incorrectly reported by the Quartz
    device if the drawing context didn't exist yet (typically when
    drawing off-screen to a window that is yet to appear, see
    PR#18591).
  * The Quartz device could segfault in cases where paths with spaces
    are used in the new glyph drawing API.  Thanks to Tomek
    Gieorgijewski (PR#18758).
  * On macOS in R CRAN builds, it is again possible to read
    little-endian UTF-16 text with a BOM from a connection using
    encoding="UTF-16".  Users building R from source should avoid
    using the system libiconv in macOS 14.1 and later.
  * methods' internal .requirePackage() now re-enables primitive
    method dispatch when needed; thanks to Ivan Krylov for
    demystifying CRAN package check failures on the R-devel mailing
    list.</changelog>
</package>
<package pkgid="5f96c4665af5a22fdc25650a735b22893959cb6a4f32bf0a8a29585aea5c776e3a5efa8664b10612c49c13552a61d2678e73c91070c1b0beca818b6c32f783bf" name="R-KernSmooth-debuginfo" arch="i586">
  <version epoch="0" ver="2.23.24" rel="51.0.2.2.sr20241103"/>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1620302400">- To get in sync with d:l:R:autoCRAN the Matrix package's split
  in -devel was reversed.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339200">- improved spec file according to comments of dimstar in
  https://build.opensuse.org/request/show/892685</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339201">- CHANGES IN R 4.1.0:
  FUTURE DIRECTIONS:
  * It is planned that the 4.1.x series will be the last to support
    32-bit Windows, with production of binary packages for that
    series continuing until early 2023.
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Data set esoph in package datasets now provides the correct
    numbers of controls; previously it had the numbers of cases added
    to these.  (Reported by Alexander Fowler in PR#17964.)
  NEW FEATURES:
  * www.omegahat.net is no longer one of the repositories known by
    default to setRepositories().  (Nowadays it only provides source
    packages and is often unavailable.)
  * Function package_dependencies() (in package tools) can now use
    different dependency types for direct and recursive dependencies.
  * The checking of the size of tarball in R CMD check --as-cran
    &lt;pkg&gt; may be tweaked via the new environment variable
    _R_CHECK_CRAN_INCOMING_TARBALL_THRESHOLD_, as suggested in
    PR#17777 by Jan Gorecki.
  * Using c() to combine a factor with other factors now gives a
    factor, an ordered factor when combining ordered factors with
    identical levels.
  * apply() gains a simplify argument to allow disabling of
    simplification of results.
  * The format() method for class "ftable" gets a new option justify.
    (Suggested by Thomas Soeiro.)
  * New ...names() utility.  (Proposed by Neal Fultz in PR#17705.)
  * type.convert() now warns when its as.is argument is not
    specified, as the help file always said it _should_.  In that
    case, the default is changed to TRUE in line with its change in
    read.table() (related to stringsAsFactor) in R 4.0.0.
  * When printing list arrays, classed objects are now shown _via_
    their format() value if this is a short enough character string,
    or by giving the first elements of their class vector and their
    length.
  * capabilities() gets new entry "Rprof" which is TRUE when R has
    been configured with the equivalent of --enable-R-profiling (as
    it is by default).  (Related to Michael Orlitzky's report
    PR#17836.)
  * str(xS4) now also shows extraneous attributes of an S4 object
    xS4.
  * Rudimentary support for vi-style tags in rtags() and R CMD rtags
    has been added.  (Based on a patch from Neal Fultz in PR#17214.)
  * checkRdContents() is now exported from tools; it and also
    checkDocFiles() have a new option chkInternal allowing to check
    Rd files marked with keyword "internal" as well.  The latter can
    be activated for R CMD check via environment variable
    _R_CHECK_RD_INTERNAL_TOO_.
  * New functions numToBits() and numToInts() extend the raw
    conversion utilities to (double precision) numeric.
  * Functions URLencode() and URLdecode() in package utils now work
    on vectors of URIs.  (Based on patch from Bob Rudis submitted
    with PR#17873.)
  * path.expand() can expand ~user on most Unix-alikes even when
    readline is not in use.  It tries harder to expand ~, for example
    should environment variable HOME be unset.
  * For HTML help (both dynamic and static), Rd file links to help
    pages in external packages are now treated as references to
    topics rather than file names, and fall back to a file link only
    if the topic is not found in the target package. The earlier rule
    which prioritized file names over topics can be restored by
    setting the environment variable _R_HELP_LINKS_TO_TOPICS_ to a
    false value.
  * c() now removes NULL arguments before dispatching to methods,
    thus simplifying the implementation of c() methods, _but_ for
    back compatibility keeps NULL when it is the first argument.
    (From a report and patch proposal by Lionel Henry in PR#17900.)
  * Vectorize()'s result function's environment no longer keeps
    unneeded objects.
  * Function ...elt() now propagates visibility consistently with
    ..n.  (Thanks to Lionel Henry's PR#17905.)
  * capture.output() no longer uses non-standard evaluation to
    evaluate its arguments.  This makes evaluation of functions like
    parent.frame() more consistent.  (Thanks to Lionel Henry's
    PR#17907.)
  * packBits(bits, type="double") now works as inverse of
    numToBits().  (Thanks to Bill Dunlap's proposal in PR#17914.)
  * curlGetHeaders() has two new arguments, timeout to specify the
    timeout for that call (overriding getOption("timeout")) and TLS
    to specify the minimum TLS protocol version to be used for
    https:// URIs (_inter alia_ providing a means to check for sites
    using deprecated TLS versions 1.0 and 1.1).
  * For nls(), an optional constant scaleOffset may be added to the
    denominator of the relative offset convergence test for cases
    where the fit of a model is expected to be exact, thanks to a
    proposal by John Nash.  nls(*, trace=TRUE) now also shows the
    convergence criterion.
  * Numeric differentiation _via_ numericDeriv() gets new optional
    arguments eps and central, the latter for taking central divided
    differences.  The latter can be activated for nls() via
    nls.control(nDcentral = TRUE).
  * nls() now passes the trace and control arguments to getInitial(),
    notably for all self-starting models, so these can also be fit in
    zero-noise situations via a scaleOffset.  For this reason, the
    initial function of a selfStart model must now have ... in its
    argument list.
  * bquote(splice = TRUE) can now splice expression vectors with
    attributes: this makes it possible to splice the result of
    parse(keep.source = TRUE).  (Report and patch provided by Lionel
    Henry in PR#17869.)
  * textConnection() gets an optional name argument.
  * get(), exists(), and get0() now signal an error if the first
    argument has length greater than 1.  Previously additional
    elements were silently ignored.  (Suggested by Antoine Fabri on
    R-devel.)
  * R now provides a shorthand notation for creating functions, e.g.
    \(x) x + 1 is parsed as function(x) x + 1.
  * R now provides a simple native forward pipe syntax |&gt;.  The
    simple form of the forward pipe inserts the left-hand side as the
    first argument in the right-hand side call.  The pipe
    implementation as a syntax transformation was motivated by
    suggestions from Jim Hester and Lionel Henry.
  * all.equal(f, g) for functions now by default also compares their
    environment(.)s, notably via new all.equal method for class
    function.  Comparison of nls() fits, e.g., may now need
    all.equal(m1, m2, check.environment = FALSE).
  * .libPaths() gets a new option include.site, allowing to _not_
    include the site library.  (Thanks to Dario Strbenac's suggestion
    and Gabe Becker's PR#18016.)
  * Lithuanian translations are now available.  (Thanks to Rimantas
    Zakauskas.)
  * names() now works for DOTSXP objects.  On the other hand, in
    R-lang, the R language manual, we now warn against relying on the
    structure or even existence of such dot-dot-dot objects.
  * all.equal() no longer gives an error on DOTSXP objects.
  * capabilities("cairo") now applies only to the file-based devices
    as it is now possible (if very unusual) to build R with Cairo
    support for those but not for X11().
  * There is optional support for tracing the progress of
    loadNamespace() - see its help.
  * (Not Windows.)  l10n_info() reports an additional element, the
    name of the encoding as reported by the OS (which may differ from
    the encoding part (if any) of the result from
    Sys.getlocale("LC_CTYPE").
  * New function gregexec() which generalizes regexec() to find _all_
    disjoint matches and well as all substrings corresponding to
    parenthesized subexpressions of the given regular expression.
    (Contributed by Brodie Gaslam.)
  * New function charClass() in package utils to query the
    wide-character classification functions in use (such as
    iswprint).
  * The names of quantile()'s result no longer depend on the global
    getOption("digits"), but quantile() gets a new optional argument
    digits = 7 instead.
  * grep(), sub(), regexp and variants work considerably faster for
    long factors with few levels.  (Thanks to Michael Chirico's
    PR#18063.)
  * Provide grouping of x11() graphics windows within a window
    manager such as Gnome or Unity; thanks to a patch by Ivan Krylov
    posted to R-devel.
  * The split() method for class data.frame now allows the f argument
    to be specified as a formula.
  * sprintf now warns on arguments unused by the format string.
  * New palettes "Rocket" and "Mako" for hcl.colors() (approximating
    palettes of the same name from the 'viridisLite' package).
    Contributed by Achim Zeileis.
  * The base environment and its namespace are now locked (so one can
    no longer add bindings to these or remove from these).
  * Rterm handling of multi-byte characters has been improved,
    allowing use of such characters when supported by the current
    locale.
  * Rterm now accepts ALT+ +xxxxxxxx sequences to enter Unicode
    characters as hex digits.
  * Environment variable LC_ALL on Windows now takes precedence over
    LC_CTYPE and variables for other supported categories, matching
    the POSIX behaviour.
  * duplicated() and anyDuplicated() are now optimized for integer
    and real vectors that are known to be sorted via the ALTREP
    framework. Contributed by Gabriel Becker via PR#17993.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 14
    and so packages that provide graphics devices should be
    reinstalled.
  * Graphics devices should now specify deviceVersion to indicate
    what version of the graphics engine they support.
  * Graphics devices can now specify deviceClip.  If TRUE, the
    graphics engine will never perform any clipping of output itself.
    The clipping that the graphics engine does perform (for both
    canClip = TRUE and canClip = FALSE) has been improved to avoid
    producing unnecessary artifacts in clipped output.
  * The grid package now allows gpar(fill) to be a linearGradient(),
    a radialGradient(), or a pattern().  The viewport(clip) can now
    also be a grob, which defines a clipping path, and there is a new
    viewport(mask) that can also be a grob, which defines a mask.
    These new features are only supported so far on the Cairo-based
    graphics devices and on the pdf() device.
  * (Not Windows.)  A warning is given when a Cairo-based type is
    specified for a png(), jpeg(), tiff() or bmp() device but Cairo
    is unsupported (so type = "Xlib" is tried instead).
  * grSoftVersion() now reports the versions of FreeType and
    FontConfig if they are used directly (not _via_ Pango), as is
    most commonly done on macOS.
  C-LEVEL FACILITIES:
  * The _standalone_ libRmath math library and R's C API now provide
    log1pexp() again as documented, and gain log1mexp().
  INSTALLATION on a UNIX-ALIKE:
  * configure checks for a program pkgconf if program pkg-config is
    not found.  These are now only looked for on the path (like
    almost all other programs) so if needed specify a full path to
    the command in PKG_CONFIG, for example in file config.site.
  * C99 function iswblank is required - it was last seen missing ca
    2003 so the workaround has been removed.
  * There are new configure options --with-internal-iswxxxxx,
  - -with-internal-towlower and --with-internal-wcwidth which allows
    the system functions for wide-character classification,
    case-switching and width (wcwidth and wcswidth) to be replaced by
    internal ones.  The first has long been used on macOS, AIX (and
    Windows) but this enables it to be unselected there and selected
    for other platforms (it is the new default on Solaris).  The
    second is new in this version of R and is selected by default on
    macOS and Solaris.  The third has long been the default and
    remains so as it contains customizations for East Asian
    languages.
    System versions of these functions are often minimally
    implemented (sometimes only for ASCII characters) and may not
    cover the full range of Unicode points: for example Solaris (and
    Windows) only cover the Basic Multilingual Plane.
  * Cairo installations without X11 are more likely to be detected by
    configure, when the file-based Cairo graphics devices will be
    available but not X11(type = "cairo").
  * There is a new configure option --with-static-cairo which is the
    default on macOS.  This should be used when only static cairo
    (and where relevant, Pango) libraries are available.
  * Cairo-based graphics devices on platforms without Pango but with
    FreeType/FontConfig will make use of the latter for font
    selection.
  LINK-TIME OPTIMIZATION on a UNIX-ALIKE:
  * Configuring with flag --enable-lto=R now also uses LTO when
    installing the recommended packages.
  * R CMD INSTALL and R CMD SHLIB have a new flag --use-LTO to use
    LTO when compiling code, for use with R configured with
  - -enable-lto=R.  For R configured with --enable-lto, they have
    the new flag --no-use-LTO.
    Packages can opt in or out of LTO compilation _via_ a UseLTO
    field in the DESCRIPTION file.  (As usual this can be overridden
    by the command-line flags.)
  BUILDING R on Windows:
  * for GCC &gt;= 8, FC_LEN_T is defined in config.h and hence character
    lengths are passed from C to Fortran in _inter alia_ BLAS and
    LAPACK calls.
  * There is a new text file src/gnuwin32/README.compilation, which
    outlines how C/Fortran code compilation is organized and
    documents new features:
  * R can be built with Link-Time Optimization with a suitable
    compiler - doing so with GCC 9.2 showed several
    inconsistencies which have been corrected.
  * There is support for cross-compiling the C and Fortran code
    in R and standard packages on suitable (Linux) platforms.
    This is mainly intended to allow developers to test later
    versions of compilers - for example using GCC 9.2 or 10.x has
    detected issues that GCC 8.3 in Rtools40 does not.
  * There is experimental support for cross-building R packages
    with C, C++ and/or Fortran code.
  * The R installer can now be optionally built to support a single
    architecture (only 64-bit or only 32-bit).
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++14 where
    available (which it is on all currently checked platforms): if
    not (as before) C++11 is used if available otherwise C++ is not
    supported.
    Packages which specify C++11 will still be installed using C++11.
    C++14 compilers may give deprecation warnings, most often for
    std::random_shuffle (deprecated in C++14 and removed in C++17).
    Either specify C++11 (see 'Writing R Extensions') or modernize
    the code and if needed specify C++14.  The latter has been
    supported since R 3.4.0 so the package's DESCRIPTION would need
    to include something like
    Depends: R (&gt;= 3.4)
  PACKAGE INSTALLATION on Windows:
  * R CMD INSTALL and R CMD SHLIB make use of their flag --use-LTO
    when the LTO_OPT make macro is set in file etc/${R_ARCH}/Makeconf
    or in a personal/site Makevars file.  (For details see 'Writing R
    Extensions' SS4.5.)
    This provides a valuable check on code consistency.  It does work
    with GCC 8.3 as in Rtools40, but that does not detect everything
    the CRAN checks with current GCC do.
  PACKAGE INSTALLATION on macOS:
  * The default personal library directory on builds with
  - -enable-aqua (including CRAN builds) now differs by CPU type,
    one of
    ~/Library/R/x86_64/x.y/library
    ~/Library/R/arm64/x.y/library
    This uses the CPU type R (and hence the packages) were built for,
    so when a x86_64 build of R is run under Rosetta emulation on an
    arm64 Mac, the first is used.
  UTILITIES:
  * R CMD check can now scan package functions for bogus return
    statements, which were possibly intended as return() calls (wish
    of PR#17180, patch by Sebastian Meyer). This check can be
    activated via the new environment variable
    _R_CHECK_BOGUS_RETURN_, true for --as-cran.
  * R CMD build omits tarballs and binaries of previous builds from
    the top-level package directory.  (PR#17828, patch by Sebastian
    Meyer.)
  * R CMD check now runs sanity checks on the use of LazyData, for
    example that a data directory is present and that
    LazyDataCompression is not specified without LazyData and has a
    documented value.  For packages with large LazyData databases
    without specifying LazyDataCompression, there is a reference to
    the code given in 'Writing R Extensions' SS1.1.6 to test the
    choice of compression (as in all the CRAN packages tested a
    non-default method was preferred).
  * R CMD build removes LazyData and LazyDataCompression fields from
    the DESCRIPTION file of packages without a data directory.
  ENCODING-RELATED CHANGES:
  * The parser now treats \Unnnnnnnn escapes larger than the upper
    limit for Unicode points (\U10FFFF) as an error as they cannot be
    represented by valid UTF-8.
    Where such escapes are used for outputting non-printable
    (including unassigned) characters, 6 hex digits are used (rather
    than 8 with leading zeros).  For clarity, braces are used, for
    example \U{0effff}.
  * The parser now looks for non-ASCII spaces on Solaris (as
    previously on most other OSes).
  * There are warnings (including from the parser) on the use of
    unpaired surrogate Unicode points such as \uD834.  (These cannot
    be converted to valid UTF-8.)
  * Functions nchar(), tolower(), toupper() and chartr() and those
    using regular expressions have more support for inputs with a
    marked Latin-1 encoding.
  * The character-classification functions used (by default) to
    replace the system iswxxxxx functions on Windows, macOS and AIX
    have been updated to Unicode 13.0.0.
    The character-width tables have been updated to include new
    assignments in Unicode 13.0.0.
  * The code for evaluating default (extended) regular expressions
    now uses the same character-classification functions as the rest
    of R (previously they differed on Windows, macOS and AIX).
  * There is a build-time option to replace the system's
    wide-character wctrans C function by tables shipped with R: use
    configure option --with-internal-towlower or (on Windows)
  - DUSE_RI18N_CASE in CFLAGS when building R.  This may be needed
    to allow tolower() and toupper() to work with Unicode characters
    beyond the Basic Multilingual Plane where not supported by system
    functions (e.g. on Solaris where it is the new default).
  * R is more careful when truncating UTF-8 and other multi-byte
    strings that are too long to be printed, passed to the system or
    libraries or placed into an internal buffer.  Truncation will no
    longer produce incomplete multibyte characters.
  DEPRECATED AND DEFUNCT:
  * Function plclust() from the package stats and
    package.dependencies(), pkgDepends(), getDepList(),
    installFoundDepends(), and vignetteDepends() from package tools
    are defunct.
  * Defunct functions checkNEWS() and readNEWS() from package tools
    and CRAN.packages() from utils have been removed.
  * R CMD config CXXCPP is defunct (it was deprecated in R 3.6.2).
  * parallel::detectCores() drops support for Irix (retired in 2013).
  * The LINPACK argument to chol.default(), chol2inv(),
    solve.default() and svd() has been defunct since R 3.1.0.  It was
    silently ignored up to R 4.0.3 but now gives an error.
  * Subsetting/indexing, such as ddd[*] or ddd$x on a DOTSXP
    (dot-dot-dot) object ddd has been disabled; it worked by accident
    only and was undocumented.
  BUG FIXES:
  * Many more C-level allocations (mainly by malloc and strdup) are
    checked for success with suitable alternative actions.
  * Bug fix for replayPlot(); this was turning off graphics engine
    display list recording if a recorded plot was replayed in the
    same session.  The impact of the bug became visible if resize the
    device after replay OR if attempted another savePlot() after
    replay (empty display list means empty screen on resize or empty
    saved plot).
  * R CMD check etc now warn when a package exports non-existing S4
    classes or methods, also in case of no "methods" presence.
    (Reported by Alex Bertram; reproducible example and patch by
    Sebastian Meyer in PR#16662.)
  * boxplot() now also accepts calls for labels such as ylab, the
    same as plot().  (Reported by Marius Hofert.)
  * The help page for xtabs() now correctly states that addNA is
    setting na.action = na.pass among others.  (Reported as PR#17770
    by Thomas Soeiro.)
  * The R CMD check &lt;pkg&gt; gives a longer and more comprehensible
    message when DESCRIPTION misses dependencies, e.g., in Imports:.
    (Thanks to the contributors of PR#17179.)
  * update.default() now calls the generic update() on the formula to
    work correctly for models with extended formulas.  (As reported
    and suggested by Neal Fultz in PR#17865.)
  * The horizontal position of leaves in a dendrogram is now correct
    also with center = FALSE.  (PR#14938, patch from Sebastian
    Meyer.)
  * all.equal.POSIXt() no longer warns about and subsequently ignores
    inconsistent "tzone" attributes, but describes the difference in
    its return value (PR#17277).  This check can be disabled _via_
    the new argument check.tzone = FALSE as suggested by Sebastian
    Meyer.
  * as.POSIXct() now populates the "tzone" attribute from its tz
    argument when x is a logical vector consisting entirely of NA
    values.
  * x[[2^31]] &lt;- v now works.  (Thanks to the report and patch by
    Suharto Anggono in PR#17330.)
  * In log-scale graphics, axis() ticks and label positions are now
    computed more carefully and symmetrically in their range,
    typically providing _more_ ticks, fulfilling wishes in PR#17936.
    The change really corresponds to an improved axisTicks() (package
    grDevices), potentially influencing grid and lattice, for
    example.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now correct to at
    least five digits where it was catastrophically wrong,
    previously.
  * sum(df) and similar "Summary"- and "Math"-group member functions
    now work for data frames df with logical columns, notably also of
    zero rows.  (Reported to R-devel by Martin "b706".)
  * unsplit() had trouble with tibbles due to unsound use of rep(NA,
    len)-indexing, which should use NA_integer_ (Reported to R-devel
    by Mario Annau.)
  * pnorm(x, log.p = TRUE) underflows to -Inf slightly later.
  * show(&lt;hidden S4 generic&gt;) prints better and without quotes for
    non-hidden S4 generics.
  * read.table() and relatives treated an "NA" column name as missing
    when check.names = FALSE PR#18007.
  * Parsing strings containing UTF-16 surrogate pairs such as
    "\uD834\uDD1E" works better on some (uncommon) platforms.
    sprintf("%X", utf8ToInt("\uD834\uDD1E")) should now give "1D11E"
    on all platforms.
  * identical(x,y) is no longer true for differing DOTSXP objects,
    fixing PR#18032.
  * str() now works correctly for DOTSXP and related exotics, even
    when these are doomed.
    Additionally, it no longer fails for lists with a class and
    "irregular" method definitions such that e.g. lapply(*) will
    necessarily fail, as currently for different igraph objects.
  * Too long lines in environment files (e.g. Renviron) no longer
    crash R. This limit has been increased to 100,000 bytes.
    (PR#18001.)
  * There is a further workaround for FreeType giving incorrect
    italic font faces with cairo-based graphics devices on macOS.
  * add_datalist(*, force = TRUE) (from package tools) now actually
    updates an existing data/datalist file for new content.  (Thanks
    to a report and patch by Sebastian Meyer in PR#18048.)
  * cut.Date() and cut.POSIXt() could produce an empty last interval
    for breaks = "months" or breaks = "years".  (Reported as PR#18053
    by Christopher Carbone.)
  * Detection of the encoding of 'regular' macOS locales such as
    en_US (which is UTF-8) had been broken by a macOS change:
    fortunately these are now rarely used with en_US.UTF-8 being
    preferred.
  * sub() and gsub(pattern, repl, x, *) now keep attributes of x such
    as names() also when pattern is NA (PR#18079).
  * Time differences ("difftime" objects) get a replacement and a
    rep() method to keep "units" consistent.  (Thanks to a report and
    patch by Nicolas Bennett in PR#18066.)
  * The \RdOpts macro, setting defaults for \Sexpr options in an Rd
    file, had been ineffective since R 2.12.0: it now works again.
    (Thanks to a report and patch by Sebastian Meyer in PR#18073.)
  * mclapply and pvec no longer accidentally terminate parallel
    processes started before by mcparallel or related calls in
    package parallel (PR#18078).
  * grep and other functions for evaluating (extended) regular
    expressions handle in Unicode also strings not explicitly flagged
    UTF-8, but flagged native when running in UTF-8 locale.
  * Fixed a crash in fifo implementation on Windows (PR#18031).
  * Binary mode in fifo on Windows is now properly detected from
    argument open (PR#15600, PR#18031).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1622808000">- The line %{__install} -m 755 -d %{_infodir}
  no longer works in TW or Factory.
  But without that line it works everywhere. So this instruction
  was commented out of the spec file.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1628596800">- CHANGES IN R 4.1.1:
  NEW FEATURES:
  * require(pkg, quietly = TRUE) is quieter and in particular does
    not warn if the package is not found.
  DEPRECATED AND DEFUNCT:
  * Use of ftp:// URIs should be regarded as deprecated, with
    on-going support confined to method = "libcurl" and not routinely
    tested.  (Nowadays no major browser supports them.)
  * The non-default method = "internal" is deprecated for http:// and
    ftp:// URIs for both download.file and url.
  * On Windows, method = "wininet" is deprecated for http://,
    https:// and ftp:// URIs for both download.file and url.  (A
    warning is only given for ftp://.)
    For ftp:// URIs the default method is now "libcurl" if available
    (which it is on CRAN builds).
    method = "wininet" remains the default for http:// and https://
    URIs but if libcurl is available, using method = "libcurl" is
    preferred.
  INSTALLATION:
  * make check now works also without a LaTeX installation.  (Thanks
    to Sebastian Meyer's PR#18103.)
  BUG FIXES:
  * make check-devel works again in an R build configured with
  - -without-recommended-packages.
  * qnbinom(p, size, mu) for large size/mu is correct now in a range
    of cases (PR#18095); similarly for the (size, prob)
    parametrization of the negative binomial.  Also qpois() and
    qbinom() are better and or faster for extreme cases.  The
    underlying C code has been modularized and is common to all four
    cases of discrete distributions.
  * gap.axis is now part of the axis() arguments which are passed
    from bxp(), and hence boxplot().  (Thanks to Martin Smith's
    report and suggestions in PR#18109.)
  * .First and .Last can again be set from the site profile.
  * seq.int(from, to, *) and seq.default(..) now work better in large
    range cases where from-to is infinite where the two boundaries
    are finite.
  * all.equal(x,y) now returns TRUE correctly also when several
    entries of abs(x) and abs(y) are close to .Machine$double.xmax,
    the largest finite numeric.
  * model.frame() now clears the object bit when removing the class
    attribute of a value via na.action (PR#18100).
  * charClass() now works with multi-character strings on Windows
    (PR#18104, fixed by Bill Dunlap).
  * encodeString() on Solaris now works again in Latin-1 encoding on
    characters represented differently in UTF-8.  Support for
    surrogate pairs on Solaris has been improved.
  * file.show() on Windows now works with non-ASCII path names
    representable in the current native encoding (PR#18132).
  * Embedded R on Windows can now find R home directory via the
    registry even when installed only for the current user
    (PR#18135).
  * pretty(x) with finite x now returns finite values also in the
    case where the extreme x values are close in size to the maximal
    representable number .Machine$double.xmax.
    Also, it's been tweaked for very small ranges and when a boundary
    is close (or equal) to zero; e.g., pretty(c(0,1e-317)) no longer
    has negative numbers, currently still warning about a very small
    range, and pretty(2^-(1024 - 2^-1/(c(24,10)))) is more accurate.
  * The error message for not finding vignette files when weaving has
    correct file sizes now. (Thanks to Sebastian Meyer's PR#18154.)
  * dnbinom(20, &lt;large&gt;, 1) now correctly gives 0, and similar cases
    are more accurate with underflow precaution.  (Reported by Francisco Vera Alcivar in PR#18072.)</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635163200">- repaired https://bugzilla.suse.com/show_bug.cgi?id=1191380
  (rpmacros now go to rpmmacrodir)
- minor clean-ups in spec file</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635768000">- CHANGES IN R 4.1.2:
  C-LEVEL FACILITIES:
  * The workaround in headers R.h and Rmath.h (using namespace std;)
    for the Oracle Developer Studio compiler is no longer needed now
    C++11 is required so has been removed.  A couple more usages of
    log() (which should have been std::log()) with an int argument
    are reported on Solaris.
  * The undocumented limit of 4095 bytes on messages from the
    S-compatibility macros PROBLEM and MESSAGE is now documented and
    longer messages will be silently truncated rather than
    potentially causing segfaults.
  * If the R_NO_SEGV_HANDLER environment variable is non-empty, the
    signal handler for SEGV/ILL/BUS signals (which offers recovery
    user interface) is not set. This allows more reliable debugging
    of crashes that involve the console.
  DEPRECATED AND DEFUNCT:
  * The legacy S-compatibility macros PROBLEM, MESSAGE, ERROR, WARN,
    WARNING, RECOVER, ... are deprecated and will be hidden in R
    4.2.0. R's native interface of Rf_error and Rf_warning has long
    been preferred.
  BUG FIXES:
  * .mapply(F, dots, .) no longer segfaults when dots is not a list
    and uses match.fun(F) as always documented; reported by Andrew
    Simmons in PR#18164.
  * hist(&lt;Date&gt;, ...) and hist(&lt;POSIXt&gt;, ...)  no longer pass
    arguments for rect() (such as col and density) to axis().
    (Thanks to Sebastian Meyer's PR#18171.)
  * \Sexpr{ch} now preserves Encoding(ch). (Thanks to report and
    patch by Jeroen Ooms in PR#18152.)
  * Setting the RNG to "Marsaglia-Multicarry" e.g., by RNGkind(), now
    warns in more places, thanks to Andr'e Gillibert's report and
    patch in PR#18168.
  * gray(numeric(), alpha=1/2) no longer segfaults, fixing PR#18183,
    reported by Till Krenz.
  * Fixed dnbinom(x, size=&lt;very_small&gt;, .., log=TRUE) regression,
    reported by Martin Morgan.
  * as.Date.POSIXlt(x) now keeps names(x), thanks to Davis Vaughan's
    report and patch in PR#18188.
  * model.response() now strips an "AsIs" class typically, thanks to
    Duncan Murdoch's report and other discussants in PR#18190.
  * try() is considerably faster in case of an error and long call,
    as e.g., from some do.call().  Thanks to Alexander Kaever's
    suggestion posted to R-devel.
  * qqline(y = &lt;object&gt;) such as y=I(.), now works, see also
    PR#18190.
  * Non-integer mgp par() settings are now handled correctly in
    axis() and mtext(), thanks to Mikael Jagan and Duncan Murdoch's
    report and suggestion in PR#18194.
  * formatC(x) returns length zero character() now, rather than ""
    when x is of length zero, as documented, thanks to Davis
    Vaughan's post to R-devel.
  * removeSource(fn) now retains (other) attributes(fn).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1647000000">- CHANGES IN R 4.1.3:
  NEW FEATURES:
  * The default version of Bioconductor has been changed to 3.14.
    (This is used by setRepositories and the menus in GUIs.)
  UTILITIES:
  * R CMD check --as-cran has a workaround for a bug in versions of
    file up to at least 5.41 which mis-identify DBF files last
    changed in 2022 as executables.
  C-LEVEL FACILITIES:
  * The legacy S-compatibility macros SINGLE_* in R_ext/Constants.h
    (included by R.h) are deprecated and will be removed in R 4.2.0.
  BUG FIXES:
  * Initialization of self-starting nls() models with initialization
    functions following the pre-R-4.1.0 API (without the ...
    argument) works again for now, with a deprecation warning.
  * Fixed quoting of ~autodetect~ in Java setting defaults to avoid
    inadvertent user lookup due to leading ~, reported in PR#18231 by
    Harold Gutch.
  * substr(., start, stop) &lt;- v now treats _negative_ stop values
    correctly.  Reported with a patch in PR#18228 by Brodie Gaslam.
  * Subscripting an array x without dimnames by a
    length(dim(x))-column character matrix gave "random" non-sense,
    now an error; reported in PR#18244 by Mikael Jagan.
  * ...names() now matches names(list(...)) closely, fixing PR#18247.
  * all.equal(*, scale = s) now works as intended when length(s) &gt; 1,
    partly thanks to Michael Chirico's PR#18272.
  * print(x) for long vectors x now also works for named atomic
    vectors or lists and prints the correct number when reaching the
    getOption("max.print") limit; partly thanks to a report and
    proposal by Hugh Parsonage to the R-devel list.
  * all.equal(&lt;selfStart&gt;, *) no longer signals a deprecation
    warning.
  * reformulate(*, response=r) gives a helpful error message now when
    length(r) &gt; 1, thanks to Bill Dunlap's PR#18281.
  * Modifying globalCallingHandlers inside withCallingHandlers() now
    works or fails correctly, thanks to Henrik Bengtsson's PR#18257.
  * hist(&lt;Date&gt;, breaks = "days") and hist(&lt;POSIXt&gt;, breaks = "secs")
    no longer fail for inputs of length 1.
  * qbeta(.001, .9, .009) and similar cases now converge correctly
    thanks to Ben Bolker's report in PR#17746.
  * window(x, start, end) no longer wrongly signals "'start' cannot
    be after 'end'", fixing PR#17527 and PR#18291.
  * data() now checks that its (rarely used) list argument is a
    character vector - a couple of packages passed other types and
    gave incorrect results.
  * which() now checks its arr.ind argument is TRUE rather coercing
    to logical and taking the first element - which gave incorrect
    results in package code.
  * model.weights() and model.offset() more carefully extract their
    model components, thanks to Ben Bolker and Tim Taylor's R-devel
    post.
  * list.files(recursive = TRUE) now shows all broken symlinks
    (previously, some of them may have been omitted, PR#18296).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1650628800">- CHANGES IN R 4.2.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * The formula method of aggregate() now matches the generic in
    naming its first argument x (resolving PR#18299 by Thomas
    Soeiro).
    This means that calling aggregate() with a formula as a named
    first argument requires name formula in earlier versions of R and
    name x now, so portable code should not name the argument (code
    in many packages did).
  * Calling &amp;&amp; or || with either argument of length greater than one
    now gives a warning (which it is intended will become an error).
  * Calling if() or while() with a condition of length greater than
    one gives an error rather than a warning.  Consequently,
    environment variable _R_CHECK_LENGTH_1_CONDITION_ no longer has
    any effect.
  * Windows users should consult the WINDOWS section below for some
    profound changes including
  * Support for 32-bit builds has been dropped.
  * UTF-8 locales are used where available.
  * The default locations for the R installation and personal
    library folder have been changed.
    Thanks to Tomas Kalibera for months of work on the Windows port
    for this release.
  NEW FEATURES:
  * matrix(x, n, m) now warns in more cases where length(x) differs
    from n * m, as suggested by Abby Spurdle and Wolfgang Huber in
    Feb 2021 on the R-devel mailing list.
    This warning can be turned into an error by setting environment
    variable _R_CHECK_MATRIX_DATA_ to TRUE: R CMD check --as-cran
    does so unless it is already set.
  * Function file_test() in package utils gains tests for symlinks,
    readability and writability.
  * capabilities("libxml") is now false.
    The description of capabilities("http/ftp") now reflects that it
    refers to the default method, no longer the internal one.
  * simplify2array() gains an except argument for controlling the
    exceptions used by sapply().
  * Environment variables R_LIBS_USER and R_LIBS_SITE are both now
    set to the R system default if unset or empty, and can be set to
    NULL to indicate an empty list of user or site library
    directories.
  * The warning for axis()(-like) calls in cases of relatively small
    ranges (typically in log-scale situations) is slightly improved
    _and_ suppressed from explicit calls to .axisPars() as has always
    been the intention.
  * The contrasts setter function `contrasts&lt;-` gains an explicit
    default how.many = NULL rather than just using missing(how.many).
  * grid.pretty() gains a new optional argument n = 5.
  * There is a new function .pretty() with option bounds as a
    technical-utility version of pretty().  It and pretty() gain a
    new argument f.min with a better than back-compatible default.
  * Function grDevices::axisTicks() and related functions such as
    graphics::axis() work better, notably for the log scale; partly
    because of the pretty() improvements, but also because care is
    taken e.g., when ylim is finite but diff(ylim) is infinite.
  * nclass.FD() gains a digits option.
  * The R Mathlib internal C function bd0() (called indirectly from a
    dozen probability density and distribution functions such as
    dpois(), dbinom(), dgamma(), pgamma() _etc_) has been
    complemented by a more sophisticated and (mostly) more accurate C
    function ebd0(), currently called only by internal dpois_raw()
    improving accuracy for R level dpois() and potentially others
    calling it such as dnbinom(), dgamma() or pgamma().  (Thanks to
    Morten Welinder's PR#15628.)
  * write.ftable() gains sep = " " argument as suggested by Thomas
    Soeiro.
  * The names of the locale categories supported by R's
    Sys.getlocale() and Sys.setlocale() are now provided by variable
    .LC.categories in the base namespace.
  * The Date and POSIXt methods for hist() and the histogram method
    for plot() now also use the new default col = "lightgray" in
    consistency with the corresponding change to hist()'s default for
    R 4.0.0.
  * hist.default() gains new fuzz argument, and the histogram plot
    method no longer uses fractional axis ticks when displaying
    counts ("Frequency").
  * mapply() and hence Map() now also obey the "max-or-0-if-any"
    recycling rule, such that, e.g., Map(`+`, 1:3, 1[0]) is valid
    now.
  * as.character(&lt;obj&gt;) for "hexmode" or "octmode" objects now
    fulfils the important basic rule as.character(x)[j] ===
    as.character(x[j]).
  * The set utility functions, notably intersect() have been tweaked
    to be more consistent and symmetric in their two set arguments,
    also preserving a common mode.
  * substr(ch, start,end) &lt;- new now e.g., preserves names(ch); ditto
    for substring(), thanks to a patch from Brodie Gaslam.
  * plot(&lt;lm&gt;) gains a extend.ylim.f argument, in partial response to
    PR#15285; further PR#17784 is fixed thanks to several
    contributors and a patch by Elin Waring.  The Cook's dist
    contours get customizable via cook.col and cook.lty with a
    different default color and their legend is nicer by default and
    customizable via cook.legendChanges.
  * Attempting to subset an object that is not subsettable now
    signals an error of class notSubsettableError. The
    non-subsettable object is contained in the object field of the
    error condition.
  * Subscript-out-of-bounds errors are now signaled as errors of
    class subscriptOutOfBoundsError.
  * Stack-overflow errors are now signaled as errors inheriting from
    class stackOverflowError. See ?stackOverflowError for more
    details.
  * New partly experimental Sys.setLanguage() utility, solving the
    main problem of PR#18055.
  * gettext() and gettextf() get a new option trim = TRUE which when
    set to false allows translations for strings such as "Execution
    halted\n" typical for C code.
  * An experimental implementation of hash tables is now available.
    See ?hashtab for more details.
  * identical() gains a extptr.as.ref argument for requesting that
    external pointer objects be compared as reference objects.
  * reorder() gets an argument decreasing which it passes to sort()
    for level creation; based on the wish and patch by Thomas Soeiro
    in PR#18243.
  * as.vector() gains a data.frame method which returns a simple
    named list, also clearing a long standing 'FIXME' to enable
    as.vector(&lt;data.frame&gt;, mode="list").  This breaks code relying
    on as.vector(&lt;data.frame&gt;) to return the unchanged data frame.
  * legend() is now vectorized for arguments cex, x.intersp, and
    text.width.  The latter can now also be specified as a vector
    (one element for each column of the legend) or as NA for
    computing a proper column wise maximum value of strwidth(legend).
    The argument y.intersp can be specified as a vector with one
    entry for each row of the legend.
    legend() also gains new arguments title.cex and title.font.
    Thanks to Swetlana Herbrandt.
  * Deparsing no longer remaps attribute names dim, dimnames, levels,
    names and tsp to historical S-compatible names (which structure()
    maps back).
  * sample() and sample.int() have additional sanity checks on their
    size and n arguments.
    all.equal.numeric() gains a sanity check on its tolerance
    argument - calling all.equal(a, b, c) for three numeric vectors
    is a surprisingly common error.
    mean(na.rm =), rank(na.last =), barplot(legend.text =),
    boxplot(), contour(drawlabels =), polygon(border =) and
    methods::is(class2 =) have more robust sanity checks on their
    arguments.
    R CMD Rd2pdf (used by R CMD check) has a more robust sanity check
    on the format of \alias{} commands.
  * psigamma(x, deriv) for negative x now also works for deriv = 4
    and 5; their underlying C level dpsifn() is documented in
    'Writing R Extensions'.
  * The HTML help system now uses HTML5 (wish of PR#18149).
  * ks.test() now provides exact p-values also with ties and MC
    p-values in the two-sample (Smirnov) case.  By Torsten Hothorn.
  * ks.test() gains a formula interface, with y ~ 1 for the
    one-sample (Kolmogorov) test and y ~ group for the two-sample
    (Smirnov) test.  Contributed by Torsten Hothorn.
  * The return value from ks.test() now has class c("ks.test",
    "htest") - packages using try() need to take care to use
    inherits() and not == on the class.
  * New functions psmirnov(), qsmirnov() and rsmirnov() in package
    stats implementing the asymptotic and exact distributions of the
    two-sample Smirnov statistic.
  * iconv() now allows sub = "c99" to use C99-style escapes for UTF-8
    inputs which cannot be converted to encoding to.
  * In a forward pipe |&gt; expression it is now possible to use a named
    argument with the placeholder _ in the rhs call to specify where
    the lhs is to be inserted.  The placeholder can only appear once
    on the rhs.
  * The included LAPACK sources have been updated to version 3.10.0,
    except for the four Fortran 77 routines which 3.10.0 has
    re-implemented in Fortran 90 (where the older versions have been
    retained as the R build process does not support Fortran 90).
  * path.expand() and most other uses of tilde expansion now warn if
    a path would be too long if expanded.  (An exception is
    file.exists(), which silently returns false.)
  * trunc(&lt;Date&gt;, *) now supports units = "months" or "years" for
    consistency with the POSIXt method, thanks to Dirk Eddelbuettel's
    proposal in PR#18099.
  * list2DF() now checks that its arguments are of the same length,
    rather than use recycling.
  * The HTML help system has several new features: LaTeX-like math
    can be typeset using either KaTeX or MathJax, usage and example
    code is highlighted using Prism, and for dynamic help the output
    of examples and demos can be shown within the browser if the
    knitr package is installed. These features can be disabled by
    setting the environment variable _R_HELP_ENABLE_ENHANCED_HTML_ to
    a false value.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 15
    and so packages that provide graphics devices should be
    reinstalled.
  * The grid package now allows the user to specify a "vector" of
    pattern fills.  The fill argument to gpar() accepts a list of
    gradients and/or patterns and the functions linearGradient(),
    radialGradient(), and pattern() have a new group argument.
    Points grobs (data symbols) can now also have a pattern fill.
    The grobCoords() function now returns a more informative and
    complex result.
  * The grid package has new functions for drawing isolated groups:
    grid.group(), grid.define(), and grid.use().  These functions add
    compositing operators and affine transformations to R's graphics
    capabilities.
    The grid package also has new functions for stroking and filling
    paths: grid.stroke(), grid.fill(), and grid.fillStroke().
    A new function as.path() allows the user to specify the fill rule
    for a path that is to be used for clipping, stroking, or filling;
    available options are "winding" and "evenodd".  A new function
    as.mask() allows the user to specify the type of a mask;
    available options are "alpha" and "luminance".
    These new features are only supported so far (at most) on the
    Cairo-based graphics devices and on the pdf() device.
  * dev.capabilities() reports on device support for the new
    features.
  * par() now warns about unnamed non-character arguments to prevent
    misuse such as {usr &lt;- par("usr"); par(usr)}.
  INSTALLATION:
  * Facilities for accessing ftp:// sites are no longer tested
    (except _pro tem_ for curlGetHeaders()) as modern browsers have
    removed support.
  * R can now be built with DEFS = -DSTRICT_R_HEADERS .
  PACKAGE INSTALLATION:
  * R CMD INSTALL no longer tangles vignettes. This completes an R
    CMD build change in R 3.0.0 and affects packages built before R
    3.0.2. Such packages should be re-made with R CMD build to have
    the tangled R code of vignettes shipped with the tarball.
  * USE_FC_LEN_T will become the default: this uses the correct
    prototypes for Fortran BLAS/LAPACK routines called from C/C++,
    and requires adjustment of most such calls - see 'Writing R
    Extensions' SS6.6.2.  (This has been supported since R 3.6.2.)
  * Package installation speed for packages installed with
    keep.source has been improved. This resolve the issue reported by
    Ofek Shilon in PR#18236.
  UTILITIES:
  * R CMD check can optionally report files/directories left behind
    in home, /tmp (even though TMPDIR is set) and other directories.
    See the "R Internals" manual for details.
  * R CMD check now reports byte-compilation errors during
    installation.  These are not usually fatal but may result in
    parts of the package not being byte-compiled.
  * _R_CHECK_DEPENDS_ONLY_ can be applied selectively to examples,
    tests and/or vignettes in R CMD check: see the "R Internals"
    manual.
  * _R_CHECK_SRC_MINUS_W_IMPLICIT_ now defaults to true: recent
    versions of Apple clang on macOS have made implicit function
    declarations in C into a compilation error.
  * R CMD check --as-cran makes use of the environment variable
    AUTORECONF.  See the "R Internals" manual SS8 for further details.
  * R CMD check --use-valgrind also uses valgrind when re-building
    vignettes as some non-Sweave vignettes unhelpfully comment out
    all their code when R CMD check runs vignettes.
  * Errors in re-building vignettes (unless there are LaTeX errors)
    are reported by R CMD check as ERROR rather than WARNING when
    running vignettes has been skipped (as it frequently is in CRAN
    checks and by --as-cran).
  * R CMD Rd2pdf gains a --quiet option that is used by R CMD build
    when building the PDF package manual.
  * R CMD Rd2pdf now always runs LaTeX in batch mode, consistent with
    Texinfo &gt;= 6.7. The --batch option is ignored.
  * R CMD build and R CMD check now include the Rd file name and line
    numbers in the error message of an \Sexpr evaluation failure.
  * For packages using the \doi Rd macro (now an install-time \Sexpr)
    but no other dynamic Rd content, R CMD build now produces a
    smaller tarball and is considerably faster - skipping temporary
    package installation.
  C-LEVEL FACILITIES:
  * The non-API header R_ext/R-ftp-http.h is no longer provided, as
    the entry points it covered are now all defunct.
  * A number of non-API declarations and macro definitions have been
    moved from the installed header Rinternals.h to the internal
    header Defn.h. Packages that only use entry points and
    definitions documented to be part of the API as specified in
    'Writing R Extensions' SS6 should not be affected.
  * The macro USE_RINTERNALS no longer has any effect when compiling
    package code.  Packages which also use R_NO_REMAP will need to
    ensure that the remapped names are used for calls to API
    functions that were formerly also made available as macros.
  * The deprecated legacy S-compatibility macros PROBLEM, MESSAGE,
    ERROR, WARN, WARNING, RECOVER, ... are no longer defined in
    R_exts/RS.h (included by R.h).  Replace these by calls to
    Rf_error and Rf_warning (defined in header R_ext/Error.h included
    by R.h).
    Header R_ext/RS.h no longer includes R_ext/Error.h.
  * Header R_ext/Constants.h (included by R.h) when included from C++
    now includes the C++ header cfloat rather than the C header
    float.h (now possible as C++11 is required).
  * The legacy S-compatibility macros DOUBLE_* in R_ext/Constants.h
    (included by R.h) are deprecated.
  * The deprecated S-compatibility macros SINGLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * R_Calloc, R_Free and R_Realloc are preferred to their unprefixed
    forms and error messages now use the prefix. These forms were
    introduced in R 3.4.0 and are available even when
    STRICT_R_HEADERS is defined.
  * rmultinom has been documented in 'Writing R Extensions' SS6 so is
    now part of the R API.
  * Similarly, Rtanpi, called from R level tanpi() is now part of the
    R API.
  * The long-deprecated, undocumented and non-API entry point call_R
    is no longer declared in R_ext/RS.h (included by R.h).
  * The header S.h which has been unsupported since Jan 2016 has been
    removed.  Use R.h instead.
  DEPRECATED AND DEFUNCT:
  * The (non-default and deprecated) method = "internal" for
    download.file() and url() no longer supports http:// nor ftp://
    URIs.  (It is used only for file:// URIs.)
    On Windows, download.file(method = "wininet") no longer supports
    ftp:// URIs.  (It is no longer the default method, which is
    "libcurl" and does.)
    On Windows, the deprecated method = "wininet" now gives a warning
    for http:// and https:// URIs for both download.file() and url().
    (It is no longer the default method.)
  * On Windows, the command-line option --max-mem-size and
    environment variable R_MAX_MEM_SIZE are defunct.  The memory
    allocation limit was important for 32-bit builds, but these are
    no longer supported.
  * default.stringsAsFactors() is now formally deprecated, where that
    was only mentioned on its regular help page, previously.  So it
    now gives a warning if called.
  * unix.time() is defunct now; it had been deprecated since R 3.4.0.
  BUG FIXES:
  * Setting digits = 0 in format(), print.default() (and hence
    typically print()) or options() is again invalid.  Its behaviour
    was platform-dependent, and it is unclear what "zero significant
    digits" should mean (PR#18098).
  * Messages from C code in the cairo section of package grDevices
    are now also offered for translation, thanks to Michael Chirico's
    PR#18123.
  * mean(x) with finite x now is finite also without "long.double"
    capability.
  * R CMD Rd2pdf no longer leaves an empty build directory behind
    when it aborts due to an already existing output file.  (Thanks
    to Sebastian Meyer's PR#18141.)
  * density(x, weights = w, na.rm = TRUE) when anyNA(x) is true, now
    removes weights "in parallel" to x, fixing PR#18151, reported by
    Matthias Gondan.  Additionally, it gets a subdensity option.
  * Conversion of \Sexpr[]{&lt;expR&gt;} to LaTeX or HTML no longer
    produces long blocks of empty lines when &lt;expR&gt; itself contains
    several lines all producing empty output.  Thanks to a report and
    patch by Ivan Krylov posted to R-devel.
  * R CMD build no longer fails if a package vignette uses child
    documents and inst/doc exists.  (Thanks to Sebastian Meyer's
    PR#18156.)
  * When an R documentation ('help' source) file man/foo.Rd in a
    package has \donttest{..} examples with a syntax error, it is now
    signalled as ERROR and with correct line numbers relating to the
  * -Ex.R file, thanks to Duncan Murdoch and Sebastian Meyer's
    reports and patch proposals in PR#17501.
  * Improved determination of the correct translation domain in
    non-base packages, addressing the combination of PR#18092 and
    PR#17998 (#c6) with reports and _augmented_ patch #2904 by
    Suharto Anggono.
    Note that "R-base" is no longer the default domain e.g., for
    top-level calls to gettext(); rather translation needs explicit
    domain = * specification in such cases.
  * identical(attrib.as.set=FALSE) now works correctly with data
    frames with default row names (Thanks to Charlie Gao's PR#18179).
  * txtProgressBar() now enforces a non-zero width for argument char,
    without which no progress can be visible.
  * dimnames(table(d)) is more consistent in the case where d is a
    list with a single component, thanks to Thomas Soeiro's report to
    R-devel.
    Further, table(d1, d2) now gives an error when d1 and d2 are data
    frames as suggested by Thomas in PR#18224.
  * Fix for drawing semi-transparent lines and fills on the native
    Windows graphics device (PR#18219 and PR#16694).  Thanks to Nick
    Ray for helpful diagnosis on Bugzilla.
  * The deparser now wraps sub-expressions such as if(A) ..  with
    parentheses when needed; thanks to Duncan Murdoch's PR#18232 and
    Lionel Henry's patches there.
  * remove.packages() no longer tries to uninstall Priority: base
    packages, thanks to a report and suggestions by Colin Fay in
    PR#18227.
  * win.metafile() now has xpinch and ypinch arguments so that the
    user can override Windows' (potentially wrong) guess at device
    dimensions.
  * x[i] and x[[i]] for non-integer i should now behave in all cases
    as always documented: the index used is equivalent to
    as.integer(i) unless that would overflow where trunc(i) is used
    instead; thanks to Suharto Anggono's report and patch proposals
    in PR#17977.
  * asOneSidedFormula() now associates the resulting formula with the
    global environment rather than the evaluation environment created
    for the call.
  * &lt;bibentry&gt;$name now matches the field name case-insensitively,
    consistent with bibentry() creation and the replacement method.
  * cbind() failed to detect some length mismatches with a mixture of
    time-series and non-time-series inputs.
  * The default LaTeX style file Sweave.sty used by the RweaveLatex
    driver no longer loads the obsolete ae package; thanks to a
    report by Thomas Soeiro in PR#18271.  Furthermore, it now skips
    \usepackage[T1]{fontenc} for engines other than pdfTeX (if
    detected) or if the new [nofontenc] option is used.
  * smooth.spline() now stores its logical cv argument more safely,
    fixing a rare bug when printing, and also stores n.
  * smooth.spline(x,y,*) now computes the cv.crit statistic
    correctly, also when is.unsorted(x), fixing PR#18294.
  * The data.frame method of rbind() now warns when binding
    not-wholly-recycling vectors, by analogy to the default method
    (for matrices).
  * setAs() finds the correct class for name to when multiple
    packages define a class with that name. Thanks to Gabor Csardi
    for the report.
  * Fix for detaching a package when two classes of the same name are
    present in method signatures for the same generic. Thanks to
    Gabor Csardi for the report.
  * match.arg("", c("", "a", "B")) gives a better error message, in
    part from PR#17959, thanks to Elin Waring.
  * R CMD Sweave --clean no longer removes pre-existing files or
    subdirectories (PR#18242).
  * The quartz() device no longer splits polylines into subpaths.
    That has caused narrowly-spaced lines with many points to always
    look solid even when dashed line type was used due to dash phase
    restarts.
  * Deparsing constructs such as quote(1 + `!`(2) + 3) works again as
    before R 3.5.0, thanks to the report and patch in PR#18284 by
    Suharto Anggono.
  * as.list(f) for a factor f now keeps names(f), fixing PR#18309.
  * qbeta(.001, .9, .009) and analogous qf() calls now return a
    correct value instead of NaN or wrongly 1, all with a warning;
    thanks to the report by Ludger Goeminne in PR#18302.
  * plot.lm() failed to produce the plot of residuals vs.  factor
    levels (i.e., which=5 when leverages are constant) for models
    with character predictors (PR#17840).
  * interaction.plot(..., xtick = TRUE) misplaced the x-axis line
    (PR#18305).
  * Not strictly fixing a bug, format()ing and print()ing of
    non-finite Date and POSIXt values NaN and +/-Inf no longer show
    as NA but the respective string, e.g., Inf, for consistency with
    numeric vector's behaviour, fulfilling the wish of PR#18308.
  * R CMD check no longer runs test scripts generated from
    corresponding .Rin files twice and now signals an ERROR if
    processing an .Rin script fails.
  * tools::Rd2txt() used for plain-text help pages now renders \hrefs
    (if tools::Rd2txt_options(showURLs = TRUE)) and \urls with
    percent-encoding and standards-compliant delimiting style (angle
    brackets and no URL: prefix).  \email is now rendered with a
    mailto: prefix.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1655985600">- CHANGES IN R 4.2.1:
  NEW FEATURES:
  * New function utils::findCRANmirror() to find out if a CRAN mirror
    has been selected, otherwise fallback to the main site.  This
    behaves in the same way as tools::CRAN_package_db() and is
    intended for packages wishing to access CRAN for purposes other
    than installing packages.
    The need for this was shown by a day when the main CRAN website
    was offline and a dozen or so packages which had its URL
    hardcoded failed their checks.
  INSTALLATION on a UNIX-ALIKE:
  * The libraries searched for by --with-blas (without a value) now
    include BLIS (after OpenBLAS but before ATLAS).  And on macOS,
    the Accelerate framework (after ATLAS).  (This is patterned after
    the AX_BLAS macro from the Autoconf Archive.)
  * The included LAPACK sources have been updated to 3.10.1.
  UTILITIES:
  * The (full path to) the command tidy to be used for HTML
    validation can be set by environment variable R_TIDYCMD.
  * Setting environment variable _R_CHECK_RD_VALIDATE_RD2HTML_ to a
    false value will override R CMD check --as-cran and turn off HTML
    validation.  This provides a way to circumvent a problematic
    tidy.
    The 2006 version that ships with macOS is always skipped.
  C-LEVEL FACILITIES:
  * The undocumented legacy declarations of Sint, Sfloat, SINT_MAX
    and SINT_MIN in header R.h are deprecated.
  BUG FIXES:
  * fisher.test(d) no longer segfaults for "large" d; fixing PR#18336
    by preventing/detecting an integer overflow reliably.
  * tar(., files=*) now produces correctly the warning about invalid
    uid or gid of files, fixing PR#18344, reported by Martin Morgan.
  * tk_choose.files() with multi = FALSE misbehaved on paths
    containing spaces (PR#18334) (regression introduced in R 4.0.0).
  * sort(x, partial = ind, *) now works correctly notably for the
    non-default na.last = FALSE or TRUE, fixing PR#18335 reported by
    James Edwards.
  * Environment variable _R_CHECK_XREFS_REPOSITORIES_ is only used
    for checking .Rd cross-references in R CMD check (as documented)
    and not for other uses looking for a CRAN mirror.
  * The search for a CRAN mirror when checking packages now uses
    getOption("repos") if that specifies a CRAN mirror, even when it
    does not also specify all three Bioconductor repositories (as was
    previously required).
  * The HTML code generated by tools::Rd2HTML() has been improved to
    pass tidy 5.8.0.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1667217600">- CHANGES IN R 4.2.2:
  NEW FEATURES:
  * tools::Rdiff(useDiff = TRUE) checks for the presence of an
    external diff command and switches to useDiff = FALSE if none is
    found.  This allows R CMD Rdiff to always work.
  * On Windows, environment variable R_LIBCURL_SSL_REVOKE_BEST_EFFORT
    can be used to switch to only 'best-effort' SSL certificate
    revocation checks with the default "libcurl" download method.
    This reduces security, but may be needed for downloads to work
    with MITM proxies (PR#18379).
  * (macOS) The run-time check for libraries from XQuartz for X11 and
    Tcl/Tk no longer uses otool from the Apple Developer Tools
    (PR#18400).
  * The LaTeX style for producing the PDF manuals, Rd.sty, now loads
    the standard amsmath, amsfonts and amssymb packages for greater
    coverage of math commands in the Rd \eqn and \deqn macros.  The
    \mathscr LaTeX command is also provided (via the mathrsfs
    package, if available, or the amsfonts bundle otherwise),
    fulfilling the wish of PR#18398.
  * (Windows) The default format of readClipboard() and
    writeClipboard() has been changed to 13 (CF_UNICODETEXT).
  INSTALLATION on a UNIX-ALIKE:
  * The PDF manuals (if built) can be compacted by the new target
    make compact-pdf (at the top level or in directory doc/manual).
  * There is now configure support for LLVM clang 15 on Linux, which
    defaults to position-independent (PIE) executables whereas
    gfortran does not.
  * Many small changes to ease compilation (and suppress warnings)
    with LLVM clang 15.
  BUG FIXES:
  * Rscript -e would fail if stdin were closed (Reported by Henrik
    Bengtsson.)
  * qt(*, log.p=TRUE) in outer tails no longer produces NaN in its
    final steps, thus fixing PR#18360.
  * tools::Rd2latex() now escapes hashes and ampersands when writing
    URLs, fixing LaTeX errors with such URLs in \tabular.
  * When isGeneric(f, fdef=*) is used with mismatching names, the
    warning is better understandable; reported (with fix) in PR#18370
    by Gabe Becker.
  * poly(x, n) now works again (and is now documented) when x is a
    "Date" or "POSIXct" object, or of another class while fulfilling
    mode(x) == "numeric".  This also enables poly(x, *, raw=TRUE) for
    such variables.  Reported by Michael Chirico to R-devel.
  * write.table(), write.csv() and write.csv2() restore their
    numerical precision (internal equivalent of digits = 15) after an
    interrupt (PR#18384).
  * One can now read also byte FF from a clipboard connection
    (PR#18385).
  * source("") and source(character()) now give more helpful error
    messages.
  * R CMD check --as-cran set _R_CHECK_TIMINGS_ too late to have the
    intended effect.
  * as.POSIXlt(x) now also works with very large dates x, fixing
    PR#18401 reported by Hannes M"uhleisen.
  * Files can now be extracted even from very large zip archives
    (PR#18390, thanks to Martin Jakt).
  * Non-finite objects of class "POSIXlt" are now correctly coerced
    to classes "Date" and "POSIXct"; following up on the extension to
    format() them correctly.
  * Added methods for is.finite(), is.infinite() and is.nan() for
    "POSIXlt" date-time objects.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1678881600">- CHANGES IN R 4.2.3:
  C-LEVEL FACILITIES:
  * The definition of DL_FUNC in R_ext/Rdynload.h has been changed to
    be fully C-compliant.  This means that functions loaded _via_ for
    example R_GetCCallable need to be cast to an appropriate type if
    they have any arguments.
  * .Machine has a new element sizeof.time_t to identify old systems
    with a 32-bit type and hence a limited range of date-times (and
    limited support for dates millions of years from present).
  PACKAGE INSTALLATION:
  * (Windows) The default C++ standard had accidentally been left at
    C++11 when it was changed to C++14 on Unix.
  BUG FIXES:
  * As "POSIXlt" objects may be "partially filled" and their list
    components meant to be recycled, length() now is the length of
    the longest component.
  * as.POSIXlt.Date() could underflow for dates in the far past (more
    than half a million years BCE).
  * as.Date.POSIXlt(x) would return "1970-01-01" instead of NA in R
    4.2.2, e.g., for
    x &lt;- as.POSIXlt(c("2019-01-30","2001-1-1"))
    x$mon &lt;- c(0L, NA); as.Date(x)
  * R CMD check failed to apply enabled _R_CHECK_SUGGESTS_ONLY_ to
    examples and vignettes (regression in R 4.2.0).
  * R CMD check did not re-build vignettes in separate processes by
    default (regression in R 4.2.0).
  * Running examples from HTML documentation now restores previous
    knitr settings and options (PR#18420).
  * Quartz: fonts are now located using Core Graphics API instead of
    deprecated ATS which is no longer supported in the macOS 13 SDK
    (PR#18426).  This also addresses an issue where the currently
    used font in the Quartz device context was not correctly
    retained.
  * (Windows) Math symbols in text drawing functions are again
    rendered correctly (PR#18440).  This fixes a regression in R
    4.2.1 caused by a fix in PR#18382 which uncovered an issue in
    GraphApp due to which the symbol charset was not used with TT
    Symbol font face.
  * (Windows) Installing a package with a src/Makefile.{win,ucrt}
    file includes ~/.R/Makevars.win64 in the search for user
    makevars, as documented in "R Installation and Administration"
    and done for packages with a src/Makevars.{win,ucrt} file.
  * format(&lt;POSIXlt_w/_unbalanced_sec&gt;, "....%OS&lt;n&gt;") with n &gt; 0 no
    longer accidentally uses the unbalanced seconds, thanks to
    Suharto Anggono's report (including patch) in PR#18448.
  * solve.default(a, b) works around issues with some versions of
    LAPACK when a contains NA or NaN values.
  * When UseMethod() cannot dispatch, it no longer segfaults
    producing the error message in case of a long class(), thanks to
    Joris Vankerschaver's report (including patch) in PR#18447.
  * When example(foo, ..) produces graphics on an interactive device
    it needs to open itself, it now leaves devAskNewPage() unchanged
    even when it was FALSE, thus fixing a 14 years old '&lt;FIXME&gt;'.
  * packageDescription() again catches errors from encoding
    conversions. This also fixes broken packageVersion() in C locale
    on systems where iconv does not support transliteration.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1681128000">- add patch to build with libcurl &gt;= 8</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1682078400">- CHANGES IN R 4.3.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Calling &amp;&amp; or || with LHS or (if evaluated) RHS of length greater
    than one is now always an error, with a report of the form
    'length = 4' in coercion to 'logical(1)'
    Environment variable _R_CHECK_LENGTH_1_LOGIC2_ no longer has any
    effect.
  NEW FEATURES:
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.10.1.  (This caused some platform-dependent
    changes to package check output.)  And then to the sources from
    LAPACK version 3.11.0 (with changes only to double complex
    subroutines).
  * The included LAPACK sources have been updated to include the four
    Fortran 90 routines rather than their Fortran 77 predecessors.
    This may give some different signs in SVDs or
    eigendecompositions..  (This completes the transition to LAPACK
    3.10.x begun in R 4.2.0.)
  * The LAPACK sources have been updated to version 3.11.0.  (No new
    subroutines have been added, so this almost entirely bug fixes:
    Those fixes do affect some computations with NaNs, including R's
    NA.)
  * The parser now signals _classed_ errors, notably in case of the
    pipe operator |&gt;.  The error object and message now give line and
    column numbers, mostly as proposed and provided by Duncan Murdoch
    in PR#18328.
  * toeplitz() is now generalized for asymmetric cases, with a
    toeplitz2() variant.
  * xy.coords() and xyz.coords() and consequently, e.g., plot(x,y,
    log = "y") now signal a _classed_ warning about negative values
    of y (where log(.) is NA).  Such a warning can be specifically
    suppressed or caught otherwise.
  * Regular expression functions now check more thoroughly whether
    their inputs are valid strings (in their encoding, e.g. in
    UTF-8).
  * The performance of grep(), sub(), gsub() and strsplit() has been
    improved, particularly with perl = TRUE and fixed = TRUE.  Use of
    useBytes = TRUE for performance reasons should no longer be
    needed and is discouraged: it may lead to incorrect results.
  * apropos() gains an argument dot_internals which is used by the
    completion (help(rcompgen)) engine to also see base internals
    such as .POSIXct().
  * Support in tools::Rdiff() for comparing uncompressed PDF files is
    further reduced - see its help page.
  * qqplot(x, y, ...) gains conf.level and conf.args arguments for
    computing and plotting a confidence band for the treatment
    function transforming the distribution of x into the distribution
    of y (Switzer, 1976, _Biometrika_). Contributed by Torsten
    Hothorn.
  * Performance of package_dependencies() has been improved for cases
    when the number of dependencies is large.
  * Strings newly created by gsub(), sub() and strsplit(), when any
    of the inputs is marked as "bytes", are also marked as "bytes".
    This reduces the risk of creating invalid strings and accidental
    substitution of bytes deemed invalid.
  * Support for readLines(encoding = "bytes") has been added to allow
    processing special text files byte-by-byte, without creating
    invalid strings.
  * iconv(from = "") now takes into account any declared encoding of
    the input elements and uses it in preference to the native
    encoding.  This reduces the risk of accidental creation of
    invalid strings, particularly when different elements of the
    input have different encoding (including "bytes").
  * Package repositories in getOption("repos") are now initialized
    from the repositories file when utils is loaded (if not already
    set, e.g., in .Rprofile).  (From a report and patch proposal by
    Gabriel Becker in PR#18405.)
  * compactPDF() gets a verbose option.
  * type.convert() and hence read.table() get new option tryLogical =
    TRUE with back compatible default.  When set to false, converts
    "F" or "T" columns to character.
  * Added new unit prefixes "R" and "Q" for abbreviating
    (unrealistically large) sizes beyond 10^{27} in standard = "SI",
    thanks to Henrik Bengtsson's PR#18435.
  * as.data.frame()'s default method now also works fine with atomic
    objects inheriting from classes such as "roman", "octmode" and
    "hexmode", such fulfilling the wish of PR#18421, by Benjamin
    Feakins.
  * The as.data.frame.vector() utility now errors for wrong-length
    row.names.  It warned for almost six years, with "Will be an
    error!".
  * sessionInfo() now also contains La_version() and reports codepage
    and timezone when relevant, in both print() and toLatex() methods
    which also get new option tzone for displaying timezone
    information when locale = FALSE.
  * New function R_compiled_by() reports the C and Fortran compilers
    used to build R, if known.
  * predict(&lt;lm&gt;, newdata = *) no longer unnecessarily creates an
    offset of all 0s.
  * solve() for complex inputs now uses argument tol and by default
    checks for 'computational singularity' (as it long has done for
    numeric inputs).
  * predict(&lt;rank-deficient lm&gt;, newdata=*) now obeys a new argument
    rankdeficient, with new default "warnif", warning only if there
    are non-estimable cases in newdata.  Other options include
    rankdeficient = "NA", predicting NA for non-estimable newdata
    cases.  This addresses PR#15072 by Russ Lenth and is based on his
    original proposal and discussions in PR#16158 also by David Firth
    and Elin Waring.  Still somewhat experimental.
  * Rgui console implementation now works better with the NVDA screen
    reader when the full blinking cursor is selected.  The underlying
    improvements in cursor handling may help also other screen
    readers on Windows.
  * The drop-field control in GraphApp can now be left with the TAB
    key and all controls can be navigated in the reverse order using
    the Shift+TAB key, improving accessibility of the Rgui
    configuration editor.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now fully accurate
    (instead of to "only" minimally five digits).
  * demo(error.catching) now also shows off withWarnings() and
    tryCatchWEMs().
  * As an experimental feature the placeholder _ can now also be used
    in the rhs of a forward pipe |&gt; expression as the first argument
    in an extraction call, such as _$coef. More generally, it can be
    used as the head of a chain of extractions, such as _$coef[[2]].
  * Spaces in the environment variable used to choose the R session's
    temporary directory (TMPDIR, TMP and TEMP are tried in turn) are
    now fatal.  (On Windows the 'short path' version of the path is
    tried and used if that does not contain a space.)
  * all.equal.numeric() gets a new optional switch giveErr to return
    the numeric error as attribute.  Relatedly,
    stopifnot(all.equal&lt;some&gt;(a, b, ..)) is as "smart" now, as
    stopifnot(all.equal(....)) has been already, thus allowing
    customized all.equal&lt;Some&gt;() wrappers.
  * R on Windows is now able to work with path names longer than 260
    characters when these are enabled in the system (requires at
    least Windows 10 version 1607).  Packages should be updated to
    work with long paths as well, instead of assuming PATH_MAX to be
    the maximum length.  Custom front-ends and applications embedding
    R need to update their manifests if they wish to allow this
    feature.  See
    &lt;https://blog.r-project.org/2023/03/07/path-length-limit-on-windows&gt;
    for more information.
  * 'Object not found' and 'Missing argument' errors now give a more
    accurate error context. Patch provided by Lionel Henry in
    PR#18241.
  * The @ operator is now an S3 generic. Based on contributions by
    Tomasz Kalinowski in PR#18482.
  * New generic chooseOpsMethod() provides a mechanism for objects to
    resolve cases where two suitable methods are found for an Ops
    Group Generic. This supports experimenting with alternative
    object systems. Based on contributions by Tomasz Kalinowski in
    PR#18484.
  * inherits(x, what) now accepts values other than a simple
    character vector for argument what. A new generic, nameOfClass(),
    is called to resolve the class name from what. This supports
    experimenting with alternative object systems. Based on
    contributions by Tomasz Kalinowski in PR#18485.
  * Detection of BLAS/LAPACK in use (sessionInfo()) with FlexiBLAS
    now reports the current backend.
  * The "data.frame" method for subset() now warns about extraneous
    arguments, typically catching the use of = instead of == in the
    subset expression.
  * Calling a:b when numeric a or b is longer than one may now be
    made into an error by setting environment variable
    _R_CHECK_LENGTH_COLON_ to a true value, along the proposal in
    PR#18419 by Henrik Bengtsson.
  * density(x, weights = *) now warns if automatic bandwidth
    selection happens without using weights; new optional warnWbw may
    suppress the warning.  Prompted by Christoph Dalitz' PR#18490 and
    its discussants.
  * rm(list = *) is faster and more readable thanks to Kevin Ushey's
    PR#18492.
  * The plot.lm() function no longer produces a normal Q-Q plot for
    GLMs. Instead it plots a half-normal Q-Q plot of the absolute
    value of the standardized deviance residuals.
  * The print() method for class "summary.glm" no longer shows
    summary statistics for the deviance residuals by default.  Its
    optional argument show.residuals can be used to show them if
    required.
  * The tapply() function now accepts a data frame as its X argument,
    and allows INDEX to be a formula in that case. by.data.frame()
    similarly allows INDICES to be a formula.
  * The performance of df[j] &lt;- value (including for missing j) and
    write.table(df) has been improved for data frames df with a large
    number of columns.  (Thanks to Gabriel Becker's PR#18500,
    PR#18503 and discussants, prompted by a report from Toby Dylan
    Hocking on the R-devel mailing list.)
  * The matrix multiply operator %*% is now an S3 generic, belonging
    to new group generic matrixOps.  From Tomasz Kalinowski's
    contribution in PR#18483.
  * New function array2DF() to convert arrays to data frames,
    particularly useful for the list arrays created by tapply().
  DATES and TIMES:
  * On platforms where (non-UTC) datetimes before 1902 (or before
    1900 as with system functions on recent macOS) are guessed by
    extrapolating time zones from 1902-2037, there is a warning at
    the first use of extrapolation in a session.  (As all time zones
    post 2037 are extrapolation, we do not warn on those.)
  * (Platforms using --with-internal-tzone, including Windows and by
    default macOS). How years are printed in dates or date-times can
    be controlled by environment variable R_PAD_YEARS_BY_ZERO.  The
    default remains to pad to 4 digits by zeroes, but setting value
    no gives no padding (as used by default by glibc).
  * strftime() tries harder to determine the offset for the "%z"
    format, and succeeds on the mainstream R platforms.
  * strftime() has a limit of 2048 bytes on the string produced -
    attempting to exceed this is an error.  (Previously it silently
    truncated at 255 bytes.)
  * sessionInfo() records (and by default prints) the system time
    zone as part of the locale information.  Also, the source
    (system/internal) of the date-time conversion and printing
    functions.
  * Objects of class "POSIXlt" created in this version of R always
    have 11 components: component zone is always set, and component
    gmtoff is set for times in UTC and usually set on the (almost
    all) platforms which have C-level support, otherwise is NA.
  * There are comprehensive validity checks on the structure of
    objects of class "POSIXlt" when converting (including formatting
    and printing).  (This avoids mis-conversions of hand-crafted
    objects.)
  * There is some support for using the native date-time routines on
    macOS: this is only viable on recent versions (e.g. 12.6 and 13)
    and does get wrong some historical changes (before 1900, during
    WWII).  Use of --with-internal-tzone remains the default.
  * as.POSIXct(&lt;numeric&gt;) and as.POSIXlt(.) (without specifying
    origin) now work.  So does as.Date(&lt;numeric&gt;).
  * as.Date.POSIXct(., tz) now treats several tz values, notably
    "GMT" as equivalent to "UTC", proposed and improved by Michael
    Chirico and Joshua Ulrich in PR#17674.
  * Experimental balancePOSIXlt() utility allows using "ragged" and
    or out-of-range "POSIXlt" objects more correctly, e.g., in
    subsetting and subassignments.  Such objects are now documented.
    More experimentally, a "POSIXlt" object may have an attribute
    "balanced" indicating if it is known to be filled or fully
    balanced.
  * Functions axis.Date() and axis.POSIXct() are rewritten to gain
    better default tick locations and better default formats by using
    prettyDate(). Thanks to Swetlana Herbrandt.
  * The mapping of Windows' names for time zones to IANA's 'Olson'
    names has been updated.  When ICU is available (it is by
    default), it is used to get a mapping for the current region set
    in Windows.  This can be overridden by setting environment
    variable TZ to the desired Olson name - see OlsonNames() for
    those currently available.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 16
    and so packages that provide graphics devices should be
    reinstalled.
  * The grDevices and grid packages have new functions for rendering
    typeset glyphs, primarily: grDevices::glyphInfo() and
    grid::grid.glyph().
    Rendering of typeset glyphs is only supported so far on the
    Cairo-based graphics devices and on the pdf() and quartz()
    devices.
  * The defined behaviour for "clear" and "source" compositing
    operators (via grid::grid.group()) has been changed (to align
    better with simple interpretation of original Porter-Duff
    definitions).
  * Support for gradients, patterns, clipping paths, masks, groups,
    compositing operators, and affine transformations has been added
    to the quartz() device.
  INSTALLATION on a UNIX-ALIKE:
  * A system installation of generic LAPACK 3.10.0 or later will be
    preferred to the version in the R sources.
    configure option --with-lapack=no (equivalently --without-lapack)
    forces compilation of the internal LAPACK sources.
    If --with-lapack is not specified, a system liblapack is looked
    for and used if it reports version 3.10.0 or later and does not
    contain BLAS routines.
    Packages using LAPACK will need to be reinstalled if this changes
    to using an external library.
  * On aarch64 Linux platforms using GCC, configure now defaults to
  - fPIC (instead of -fpic), as desired in PR#18326.
  * configure now checks conversion of datetimes between POSIXlt and
    POSIXct around year 2020.  Failure (which has been seen on
    platforms missing tzdata) is fatal.
  * If configure option --with-valgrind-instrumentation is given
    value 1 or 2, option --with-system-valgrind-headers is now the
    default and ignored (with a warning).  It is highly recommended
    that the system headers are installed alongside valgrind: they
    are part of its packaging on some Linux distributions and
    packaged separately (e.g. in the valgrind-devel RPM) on others.
    configure will give a warning if they are not found.
    The system headers will be required in a future release of R to
    build with valgrind instrumentation.
  * libcurl 8.x is now accepted by configure: despite a change in
    major version number it changes neither API nor ABI.
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools43, an update of the Rtools42 toolchain.  It is
    based on gcc 12 and newer versions of MinGW-W64, binutils and
    libraries.  At this time R-devel can still be built using
    Rtools42 without changes, but when R-devel is installed via the
    installer, it will by default look for Rtools43.
  * Old make targets rsync-extsoft and 32-bit ones that are no longer
    needed have been removed.
  * Default builds (including for packages) no longer select C99.
    Thus the C standard used is the default for the compiler, which
    for the toolchain in Rtools43 is C17.  (This is consistent with
    Unix builds.)
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++17 where
    available (which it is on all currently checked platforms): if
    not C++14 or C++11 is used if available otherwise C++ is not
    supported.
  * USE_FC_LEN_T is the default: this uses the correct
    (compiler-dependent) prototypes for Fortran BLAS/LAPACK routines
    called from C/C++, and requires adjustment of many such calls -
    see 'Writing R Extensions' SS6.6.1.
  * There is initial support for C++23 as several compilers are now
    supporting -std=c++23 or -std=c++2b or similar.  As for C++20,
    there no additional configure checks for C++23 features beyond a
    check that the compiler reports a __cplusplus value greater than
    that in the C++20 standard.  C++ feature tests should be used.
  * There is support for a package to indicate the version of the C
    standard which should be used to compile it, and for the
    installing user to specify this.  In most cases R defaults to the
    C compiler's default standard which is C17 (a `bug-fix' of C11) -
    earlier versions of R or compilers may have defaulted to C99.
    Current options are:
    USE_C17 Use a standard that is at most C17.  The intention is to
    allow legacy packages to still be installed when later C
    standards become the default, including packages using new
    keywords as identifiers or with K&amp;R-style function
    declarations.  This will use C17 if available, falling back
    to C11.
    USE_C90 Use the C90 (aka C89) standard.  (As that standard did
    not require compilers to identify that version, all we can
    verify is that the compiler does not claim to be using a
    later standard.  It may accept C99 features - for example
    clang accepts // to make comments.)
    USE_C99 Use the C99 standard. This should be rarely needed - it
    avoids the few new features of C11/C17 which can be useful if
    a package assumes them if C17 is specified and they are not
    implemented.
    USE_C23 Use C23 (or in future, later).  Compiler/library support
    for C23 is still being implemented, but LLVM clang from
    15.0.0 and the upcoming GCC 13 have quite extensive support.
    These can be specified as part of the SystemRequirements field in
    the package's DESCRIPTION file or _via_ options --use-C17 and so
    on of R CMD INSTALL and R CMD SHLIB.
    For further details see "Writing R Extensions" SS1.2.5.
  * (Windows) A src/Makefile.ucrt or src/Makefile.win file is now
    included after R_HOME/etcR_ARCH/Makeconf and so no longer needs
    to include that file itself.  Installation of a package with such
    a file now uses a site Makevars file in the same way as a package
    with a src/Makevars.win file would.
  * configure is now passed crucial variables such as CC and CFLAGS
    in its environment, as many packages were not setting them (as
    documented in 'Writing R Extensions' SS1.2).
    This has most effect where configure is used to compile parts of
    the package - most often by cmake or libtool which obfuscate the
    actual compile commands used.
    Also used for configure.win and configure.ucrt on Windows.
  FORTRAN FLAGS:
  * The flag -fno-optimize-sibling-calls is no longer forced for
    gfortran 7 and later.  It should no longer be needed now using
    'hidden' character-length arguments when calling BLAS/LAPACK
    routines from C/C++ is the default even for packages.  (Unless
    perhaps packages call Fortran code from C/C++ without using R's
    headers and without allowing for these arguments.)
  C-LEVEL FACILITIES:
  * The deprecated S-compatibility macros DOUBLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * The deprecated legacy typedefs of Sint and Sfloat in header R.h
    are no longer defined, and that header no longer includes header
    limits.h from C nor climits from C++.
  * New macro CAD5R() is provided in Rinternals.h and used in a few
    places in the R sources.
  * ALTREP now supports VECSXP vectors. Contributed by Gabor Csardi
    in PR#17620.
  * The Rcomplex definition (in header R_ext/Complex.h) has been
    extended to prevent possible mis-compilation when interfacing
    with Fortran (PR#18430).  The new definition causes compiler
    warnings with static initializers such as {1, 2}, which can be
    changed to {.r=1, .i=2}.
    Using the new definition from C++ depends on compiler extensions
    supporting C features that have not been incorporated into the
    C++ standards but are available in g++ and clang++: this may
    result in C++ compiler warnings but these have been worked around
    for recent versions of common compilers (GCC, Apple/LLVM clang,
    Intel).
    It is intended to change the inclusion of header R_ext/Complex.h
    by other R headers, so C/C++ code files which make use of
    Rcomplex should include that header explicitly.
  UTILITIES:
  * R CMD check does more checking of package .Rd files, warning
    about invalid email addresses and (some) invalid URIs and noting
    empty \item labels in description lists.
  * R CMD check now also reports problems when reading package news
    in md (file NEWS.md) and (optionally) plain text (file NEWS)
    formats.
  * _R_CHECK_TIMINGS_ defaults to a value from the environment even
    for R CMD check --as-cran; this allows for exceptionally fast or
    slow platforms.
    It now applies to checking PDF and HTML versions of the manuals,
    and 'checking CRAN incoming feasibility'.
  * R CMD check can optionally (but included in --as-cran) check
    whether HTML math rendering _via_ KaTeX works for the package .Rd
    files.
  * Non-interactive debugger invocations can be trapped by setting
    the environment variable _R_CHECK_BROWSER_NONINTERACTIVE_ to a
    true value.  This is enabled by R CMD check --as-cran to detect
    the use of leftover browser() statements in the package.
  * The use of sprintf and vsprintf from C/C++ has been deprecated in
    macOS 13 and is a known security risk.  R CMD check now reports
    (on all platforms) if their use is found in compiled code:
    replace by snprintf or vsnprintf respectively. [*NB:* whether
    such calls get compiled into the package is platform-dependent.]
  * Where recorded at installation, R CMD check reports the C and
    Fortran compilers used to build R.
    It reports the OS in use (if known, as given by osVersion) as
    well as that R was built for.
    It notes if a C++ standard was specified which is older than the
    current default: many packages have used C++11 to mean 'not
    C++98' - as C++11 is the minimum supported since R 4.0.0, that
    specification can probably be removed.
  * R CMD INSTALL reports the compilers (and on macOS, the SDK) used,
    and this is copied to the output of R CMD check.
    Where a C++ standard is specified, it is reported.
  * R CMD check's 'checking compilation flags in Makevars' has been
    relaxed to accept the use of flags such as -std=f2008 in
    PKG_FFLAGS.
  * tools::buildVignettes() has a new argument skip, which is used by
    R CMD check to skip (and note) vignettes with unavailable
    \VignetteDepends (PR#18318).
  * New generic .AtNames() added to enable class-specific completions
    after @. The formerly internal function findMatches() is now
    exported, mainly for use in methods for .DollarNames() and
    .AtNames().
  DEPRECATED AND DEFUNCT:
  * default.stringsAsFactors() is defunct.
  * Calling as.data.frame.&lt;class&gt;() directly (for 12 atomic classes)
    is going to be formally deprecated, currently activated by
    setting the environment variable
    _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ to non-empty, which also
    happens in R CMD check --as-cran.
  BUG FIXES:
  * Hashed environments with sizes less than 5 can now grow.
    (Reported to R-devel by Duncan Garmonsway.)
  * as.character(&lt;Rd&gt;, deparse = TRUE) failed to re-escape curly
    braces in LaTeX-like text.  (Reported by Hadley Wickham in
    PR#18324.)
  * library() now passes its lib.loc argument when requiring Depends
    packages; reported (with fix) in PR#18331 by Mikael Jagan.
  * R CMD Stangle: improved message about 'Output' files.
  * head(x, n) and tail(x, n) now signal an error if n is not
    numeric, instead of incidentally "working" sometimes returning
    all of x.  Reported and discussed by Colin Fay, in PR#18357.
  * The "lm" method for summary() now gives the correct F-statistic
    when the model contains an offset.  Reported in PR#18008.
  * C() and `contrasts&lt;-`() now preserve factor level names when
    given a function object (as opposed a function name which did
    preserve names). Reported in PR#17616.
  * c(a = 1, 2)[[]] no longer matches 2 but rather signals a
    _classed_ error.  Reported and analysed by Davis Vaughan in
    PR#18367, a duplicate of PR#18004, by Jan Meis et al.  For
    consistency, NULL[[]] is also erroneous now.  x[[]] &lt;- v gives an
    error of the same class "MissingSubscriptError".
  * The relist() function of utils now supports NULL elements in the
    skeleton (PR#15854).
  * ordered(levels = *) (missing x) now works analogously to factor(,
    ordered=TRUE); reported (with fix) by Achim Zeileis in PR#18389.
  * User-defined Rd macro definitions can now span multiple lines,
    thanks to a patch from Duncan Murdoch. Previously, the Rd parser
    silently ignored everything after the first line.
  * Plain-text help (tools::Rd2txt()) now preserves an initial blank
    line for text following description list items.
  * tools::Rd2HTML() and tools::Rd2latex() no longer split \arguments
    and \value lists at Rd comments.
  * tools::Rd2latex() now correctly handles optional text outside
    \items of argument lists as well as bracketed text at the
    beginning of sections, e.g., \value{[NULL]}.
  * as.character(&lt;POSIXt&gt;) now behaves more in line with the methods
    for atomic vectors such as numbers, and is no longer influenced
    by options().  Ditto for as.character(&lt;Date&gt;).  The
    as.character() method gets arguments digits and OutDec with
    defaults _not_ depending on options().  Use of as.character(*,
    format = .) now warns.
  * Similarly, the as.character.hexmode() and *.octmode() methods
    also behave as good citizen methods and back compatibility option
    keepStr = TRUE.
  * The as.POSIXlt(&lt;POSIXlt&gt;) and as.POSIXct(&lt;POSIXct&gt;) default
    methods now do obey their tz argument, also in this case.
  * as.POSIXlt(&lt;Date&gt;) now does apply a tz (time zone) argument, as
    does as.POSIXct(); partly suggested by Roland Fuss on the R-devel
    mailing list.
  * as.Date.POSIXlt(x) now also works when the list components are of
    unequal length, aka "partially filled" or "ragged".
  * expand.model.frame() looked up variables in the wrong environment
    when applied to models fitted without data.  Reported in
    PR#18414.
  * time() now (also) uses the ts.eps = getOption("ts.eps") argument
    and thus by default rounds values very close to the start (or
    end) of a year.  Based on a proposal by Andre"i V. Kostyrka on
    R-help.
  * Printing of a factanal() result with just one factor and sort =
    TRUE now works regularly, fixing PR#17863 by Timothy Bates,
    thanks to the 'R Contributors' working group.
  * Printing 0-length objects of class "factor", "roman", "hexmode",
    "octmode", "person", "bibentry", or "citation" now prints
    something better, one of which fixes PR#18422, reported by
    Benjamin Feakins.
  * Sys.timezone() queries timedatectl only if systemd is loaded;
    addressing a report by Jan Gorecki in PR#17421.
  * The formula method of cor.test() had scoping problems when
    environment(formula) was not the calling environment; reported
    with a patch proposal by Mao Kobayashi in PR#18439.
  * attach() of an environment with active bindings now preserves the
    active bindings.  Reported by Kevin Ushey in PR#18425.
  * BLAS detection now works also with system-provided libraries not
    available as regular files.  This fixes detection of the
    Accelerate framework on macOS since Big Sur.  Reported by David
    Novgorodsky.
  * download.file() gives a helpful error message in case of an
    invalid download.file.method option, thanks to Colin Fay's report
    in PR#18455.
  * Sporadic crashes of Rterm when using completion have been fixed.
  * Rprof() is now more reliable.  A livelock in thread
    initialization with too short sampling interval has been fixed on
    macOS.  A deadlock in using the C runtime has been fixed on
    Windows.  A potential deadlock has been prevented on Unix.
  * Cursor placement in Rgui now works even after a fixed-width font
    is selected.
  * Mandatory options (options()) are now set on startup so that
    saving and restoring them always works (PR#18372).
  * Package installation, R CMD INSTALL or install.packages(*), now
    parses each of the &lt;pkg&gt;/R/*.R files individually instead of
    first concatenating and then parse()ing the large resulting file.
    This allows parser or syntax errors to be diagnosed with correct
    file names and line numbers, thanks to Simon Dedman's report and
    Bill Dunlap's patch in PR#17859.
    This _does_ require syntactically self contained R source files
    now, fixing another inadvertent bug.
  * predict.lm(&lt;model with offset&gt;) now finds the offset in the
    correct environment, thanks to Andr'e Gillibert's report and patch
    in PR#18456.
  * getInitial(&lt;formula&gt;) now finds the selfStart model in the
    correct environment.  (Reported by Ivan Krylov in PR#18368.)
  * Fix for possible segfault when using recently-added graphics
    features, such as gradients, clipping paths, masks, and groups
    with pdf(file=NULL).
  * class(m) &lt;- class(m) no longer changes a matrix m by adding a
    class _attribute_.
  * packageDate(pkg) now only warns once if there is no pkg.
  * When ts() creates a multivariate time series, "mts", it also
    inherits from "array" now, and is.mts() is documented _and_
    stricter.
  * Rd2txt() now preserves line breaks of \verb Rd content and from
    duplicated \cr.  The former also fixes the rendering of verbatim
    output from Rd \Sexpr in plain-text help.
  * uniroot(f, interval) should no longer wrongly converge _outside_
    the interval in some cases where abs(f(x)) == Inf for an x at the
    interval boundary, thanks to posts by Ben Bolker and Serguei
    Sokol on R-devel.
  * Vectorized alpha handling in palette functions such as in gray(),
    rainbow(), or hcl.colors() works correctly now, thanks to Achim
    Zeileis' report and patch in PR#18476.
  * Formatting and print()ing of bibentry objects has dropped the
    deprecated citation.bibtex.max argument, such that the bibtex
    argument's default for print.bibentry() depends directly on the
    citation.bibtex.max option, whereas in format.bibentry() the
    option no longer applies.
  * Attempting to use a character string naming a foreign function
    entry point in a foreign function call in a package will now
    signal an error if the packages has called R_forceSymbols to
    specify that symbols must be used.
  * An error in table() could permanently set options(warn=2)
    promoting all subsequent warnings to errors.
  * The sigma() function gave misleading results for binary GLMs.  A
    new method for objects of class "glm" returns the square root of
    the estimate of the dispersion parameter using the same
    calculation as summary.glm().
  * bs() and ns() in the (typical) case of automatic knot
    construction, when some of the supposedly inner knots coincide
    with boundary knots, now moves them inside (with a warning),
    building on PR#18442 by Ben Bolker.
  * R CMD on Windows now skips the site profile with --no-site-file
    and --vanilla even when R_PROFILE is set (PR#18512, from Kevin
    Ushey).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1686916800">- CHANGES IN R 4.3.1:
  C-LEVEL FACILITIES:
  * The C-level API version of R's integrate(), Rdqags() in Applic.h,
    now returns the correct number of integrand evaluations neval,
    fixing PR#18515 reported and diagnosed by Stephen Wade.
  * The C prototypes for LAPACK calls dspgv and dtptrs in
    R_exts/Lapack.h had one too many and one too few character length
    arguments - but this has not caused any known issues. To get the
    corrected prototypes, include
    [#]include &lt;Rconfig.h&gt; // for PR18534fixed
    [#]ifdef PR18534fixed
    [#] define usePR18534fix 1
    [#]endif
    [#]include &lt;R_exts/Lapack.h&gt;
    in your C/C++ code (PR#18534).
  INSTALLATION:
  * Many of the checks of esoteric Internet operations and those
    using unreliable external sites have been moved to a new target
    that is not run by default and primarily intended for the core
    developers.  To run them use
    cd tests; make test-Internet-dev
  BUG FIXES:
  * .S3methods(), typically called from methods(), again marks
    methods from package base as visible.
    Also, the visibility of non-base methods is again determined by
    the method's presence in search().
  * tools::Rdiff() is now more robust against invalid strings, fixing
    installation tests on Windows without Rtools installed
    (PR#18530).
  * Fix (new) bug in hcl.colors(2, *), by Achim Zeileis (PR#18523).
  * head(., &lt;illegal&gt;) and tail(..) now produce more useful "Error in
    ...." error messages, fixing PR#18362.
  * Package code syntax on Windows is checked in UTF-8 when UTF-8 is
    the native encoding.
  * na.contiguous(x) now also returns the first run, when it is at
    the beginning and there is a later one of the same length;
    reported to R-devel, including a fix, by Georgi Boshnakov.
    Further, by default, it modifies only an existing attr(*,"tsp")
    but otherwise no longer sets one.
  * chol(&lt;not pos.def&gt;, pivot = &lt;T|F&gt;) now gives a correct error or
    warning message (depending on pivot), thanks to Mikael Jagan's
    (PR#18541).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1699012800">- CHANGES IN R 4.3.2:
  NEW FEATURES:
  * The default initialization of the "repos" option from the
    repositories file at startup can be skipped by setting
    environment variable R_REPOSITORIES to NULL such that
    getOption("repos") is empty if not set elsewhere.
  * qr.X() is now an implicit S4 generic in methods.
  * iconv(to = "ASCII//TRANSLIT") is emulated using substitution on
    platforms which do not support it (notably Alpine Linux).  This
    should give a human-readable conversion in ASCII on all platforms
    (rather than NA_character_).
  * trans3d() gains options continuous and verbose addressing the
    problem of possible "wrap around" when projecting too long
    curves, as reported by Achim Zeileis in PR#18537.
  * tools::showNonASCII() has been rewritten to work better on macOS
    14 (which has a changed implementation of iconv()).
  * tiff(type = "quartz") (the default on macOS) now warns if
    compression is specified: it continues to be ignored.
  INSTALLATION on a UNIX-ALIKE:
  * There is some support for building with Intel's LLVM-based
    compilers on x86_64 Linux, such as (C) icx, (C++) ipcx and
    (Fortran) ifx from oneAPI 2023.x.y.
  * There is support for using LLVM's flang-new as the Fortran
    compiler from LLVM 16.0.x (preferably 17.0.0 or later).
  UTILITIES:
  * R CMD check reports the use of the Fortran 90 random number
    generator RANDOM_NUMBER() and the subroutines to initialize it.
    'Writing R Extensions' has example code to use R's RNGs from
    Fortran.
  BUG FIXES:
  * substr(x, n, L) &lt;- cc now works (more) correctly for multibyte
    UTF-8 strings x when L &gt; nchar(x), thanks to a report and patch
    by 'Architect 95'.
  * contrib.url(character()) now returns 0-length character() as
    documented, which also avoids spurious warnings from
    available.packages() et al. in the edge case of an empty vector
    of repository URLs.
  * readChar(., 4e8) no longer fails, thanks to Kodi Arfer's report
    (PR#18557).
  * lapply(&lt;list&gt;, as.data.frame) no longer warns falsely for some
    base vector components.
  * Communication between parent and child processes in the multicore
    part of parallel could fail on platforms that do not support an
    arbitrarily large payload in system functions read()/write() on
    pipes (seen on macOS where a restriction to INT_MAX bytes is
    documented, without doing a partial read unlike Linux). The
    payload is now split into 1Gb chunks to avoid that problem.
    (PR#18571)
  * qqplot(x,y, conf.level=.) gives better confidence bounds when
    length(x) != length(y), thanks to Alexander Ploner's report and
    patch proposal (PR#18557).
  * norm(&lt;0-length&gt;, "2") now gives zero instead of an error, as all
    the other norm types, thanks to Mikael Jagan's PR#18542.
  * Build-stage Rd macros \packageAuthor and \packageMaintainer now
    process Authors@R, fixing NA results when the package DESCRIPTION
    omits Author and Maintainer fields.
  * Formatting and printing complex numbers could give things like
    0.1683-0i because of rounding error: -0i is now replaced by +0i.
  * postscript() refused to accept a title comment containing the
    letter "W" (PR#18599).
  * isoreg(c(1,Inf)) signals an error instead of segfaulting, fixing
    PR#18603.
  * tiff(type = "Xlib") was only outputting the last page of
    multi-page plots.
  * tools::latexToUtf8() again knows about \~{n} and other letters
    with tilde, fixing a regression in R 4.3.0, and about \^{i} as an
    alternative to \^{\i} (similarly with other accents).
    Furthermore, LaTeX codes for accented I letters are now correctly
    converted, also fixing related mistakes in
    tools::encoded_text_to_latex().
  * tar(*, tar = "internal") no longer creates out-of-spec tar files
    in the very rare case of user or group names longer than 32
    bytes, fixing PR#17871 with thanks to Ivan Krylov.
  * When using the "internal" timezone datetime code, adding a
    fraction of a second no longer adds one second, fixing PR#16856
    from a patch by Ivan Krylov.
  * tools::checkRd() no longer produces spurious notes about
    "unnecessary braces" from multi-line Rd results of \Sexpr macros.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1709208000">- CHANGES IN R 4.3.3:
  NEW FEATURES:
  * iconv() now fixes up variant encoding names such as "utf8"
    case-insensitively.
  DEPRECATED AND DEFUNCT:
  * The legacy encoding = "MacRoman" is deprecated in pdf() and
    postscript(): support was incomplete in earlier versions of R.
  BUG FIXES:
  * Arguments are now properly forwarded to methods on S4 generics
    with ... in the middle of their formal arguments. This was broken
    for the case when a method introduced an argument but did not
    include ... in its own formals. Thanks to Herv'e Pag`es for the
    report PR#18538.
  * Some invalid file arguments to pictex(), postscript() and xfig()
    opened a file called NA rather than throw an error.  These
    included postscript(NULL) (which some people expected to work
    like pdf(NULL)).
  * Passing filename = NA to svg(), cairo_pdf(), cairo_ps() or the
    Cairo-based bitmap devices opened a file called NA: it now throws
    an error.
  * quartz(file = NA) opened a file called NA, including when used as
    a Quartz-based bitmap device.  It now gives an error.
  * rank(&lt;long vector&gt;) now works, fixing PR#18617, thanks to Ilia
    Kats.
  * seq.int() did not adequately check its length.out argument.
  * match(&lt;POSIXct&gt;, .) is correct again for differing time zones,
    ditto for "POSIXlt", fixing PR#18618 reported by Bastian Klein.
  * drop.terms(*, dropx = &lt;0-length&gt;) now works, fixing PR#18563 as
    proposed by Mikael Jagan.
  * drop.terms(*) keeps + offset(.) terms when it should, PR#18565,
    and drop.terms() no longer makes up a response, PR#18566, fixing
    both bugs thanks to Mikael Jagan.
  * getS3method("t", "test") no longer finds the t.test() function,
    fixing PR#18627.
  * pdf() and postscript() support for the documented Adobe encodings
    "Greek" and "Cyrilllic" was missing (although the corresponding
    Windows' codepages could be used).
  * Computations of glyph metric information for pdf() and
    postscript() did not take into account that transliteration could
    replace one character by two or more (only seen on macOS 14) and
    typically warned that the information was not known.
  * rank(x) no longer overflows during integer addition, when
    computing rank average for largish but not-yet long vector x,
    fixing PR#18630, thanks to Ilia Kats.
  * list.files() on Windows now returns also files with names longer
    that 260 bytes (the Windows limit is 260 characters).
    Previously, some file names particularly with 'East Asian'
    characters were omitted.
  * cov2cor(&lt;0 x 0&gt;) now works, fixing PR#18423 thanks to Mikael
    Jagan and Elin Waring.
  * cov2cor(&lt;negative diagonal&gt;) and similar now give one warning
    instead of two, with better wording, fixing PR#18424 thanks to
    Mikael Jagan.
  * tools:: startDynamicHelp() now ensures port is in proper range,
    fixing PR#18645.
  * pbeta(x, a,b) is correct now for x=0 or 1 in the boundary cases
    where a or b or both are 0, fixing PR#18672 thanks to Michael
    Fay.
  * pmatch(x, table) for large table, also called for data frame row
    selection, dfrm[nm, ], is now interruptible, fixing PR#18656.
  * predict(&lt;rank-deficient lm&gt;, newdata=*) fix computing of nbasis,
    see Russ Lenth's comment 29 in PR#16158.
  * Added a work-around for a bug in macOS 14.3.1 and higher which
    prevents R plots in the Quartz Cocoa device from updating on
    screen.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1713960000">- CHANGES IN R 4.4.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Startup banners, R --version, sessionInfo() and R CMD check no
    longer report (64-bit) as part of the platform as this is almost
    universal - the increasingly rare 32-bit platforms will still
    report (32-bit).
    On Windows, ditto for window titles.
  * is.atomic(NULL) now returns FALSE, as NULL is not an atomic
    vector.  Strict back-compatibility would replace is.atomic(foo)
    by (is.null(foo) || is.atomic(foo)) but should happen only
    sparingly.
  NEW FEATURES:
  * The confint() methods for "glm" and "nls" objects have been
    copied to the stats package.  Previously, they were stubs which
    called versions in package MASS. The MASS namespace is no longer
    loaded if you invoke (say) confint(glmfit).  Further, the "glm"
    method for profile() and the plot() and pairs() methods for class
    "profile" have been copied from MASS to stats.  (profile.nls()
    and plot.profile.nls() were already in stats.)
  * The confint() and profile methods for "glm" objects have gained a
    possibility to do profiling based on the Rao Score statistic in
    addition to the default Likelihood Ratio. This is controlled by a
    new test = argument.
  * The pairs() method for "profile" objects has been extended with a
    which = argument to allow plotting only a subset of the
    parameters.
  * The "glm" method for anova() computes test statistics and
    p-values by default, using a chi-squared test or an F test
    depending on whether the dispersion is fixed or free.  Test
    statistics can be suppressed by giving argument test a false
    logical value.
  * In setRepositories() the repositories can be set using their
    names via name = instead of index ind =.
  * methods() and .S3methods() gain a all.names option for the (rare)
    case where functions starting with a . should be included.
  * Serializations can now be interrupted (e.g., by Ctrl-C on a
    Unix-alike) if they take too long, e.g., from save.image(),
    thanks to suggestions by Ivan Krylov and others on R-devel.
  * New startup option --max-connections to set the maximum number of
    simultaneous connections for the session.  Defaults to 128 as
    before: allowed values up to 4096 (but resource limits may in
    practice restrict to smaller values).
  * R on Windows (since Windows 10 2004) now uses the new Segment
    Heap allocator. This may improve performance of some
    memory-intensive applications.
  * When R packages are built, typically by R CMD build &lt;pkg&gt;, the
    new --user=&lt;build_user&gt; option overrides the (internally
    determined) user name, currently Sys.info()["user"] or LOGNAME.
    This is a (modified) fulfillment of Will Landau's suggestion in
    PR#17530.
  * tools::testInstalledBasic() gets new optional arguments outDir
    and testSrcdir, e.g., allowing to use it in a &lt;builddir&gt; !=
    &lt;srcdir&gt; setup, and in standard "binary" Windows installation
  * if* a source tests/ folder is present.
  * range(&lt;DT_with_Inf&gt;, finite = TRUE) now work for objects of class
    "Date", "POSIXct", and "POSIXlt" with infinite entries,
    analogously to range.default(), as proposed by Davis Vaughan on
    R-devel.  Other range()-methods can make use of new function
    .rangeNum().
  * New .internalGenerics object complementing .S3PrimitiveGenerics,
    for documentation and low-level book-keeping.
  * grid() now invisibly returns the x- and y- coordinates at which
    the grid-lines were drawn.
  * norm(., type) now also works for complex matrices.
  * kappa(., exact = TRUE, norm = *) now works for all norms and also
    for complex matrices.  In symmetric / triangular cases, the new
    argument uplo = "U" | "L" allows the upper or lower triangular
    part to be specified.
  * memDecompress(type = "unknown") recognizes compression in the
    default 'zlib' format as used by memCompress(type = "gzip").
  * memCompress() and memDecompress() will use the libdeflate library
    (&lt;https://github.com/ebiggers/libdeflate&gt;) if installed.  This
    uses the same type of compression for type = "gzip" but is 1.5-2x
    faster than the system libz library on some common platforms: the
    speed-up may depend on the library version.
  * diff() for objects of class "Date", "POSIXct", and "POSIXlt"
    accepts a units argument passed via ....
  * Dynamic help now does a much better job of rendering package
    DESCRIPTION metadata.
  * Rprof() gains an event argument and support for elapsed (real)
    time profiling on Unix (PR#18076).
  * filled.contour() gains a key.border argument.
  * tools::update_pkg_po() gets arguments pot_make and mo_make for
    _not_ re-making the corresponding files, and additionally a
    verbose argument.
  * Hexadecimal string colour specifications are now accepted in
    short form, so, for example, we can use "#123", which is
    equivalent to "#112233".
    Thanks to MikeFC for the original idea and Ella Kaye, Malcolm
    Barrett, George Stagg, and Hanne Oberman for the patch.
  * Plain-text help shows \var markup by angle brackets.
  * The new experimental primitive function declare() is intended to
    eventually allow information about R code to be communicated to
    the interpreter, compiler, and code analysis tools. The syntax
    for declarations is still being developed.
  * Functions psmirnov(), qsmirnov() and rsmirnov() in package stats
    have had argument two.sided renamed to alternative, to take into
    account that the permutation distributions of the one-sided
    statistics can be different in the case of ties.  Consequence of
    PR#18582.
  * sort() is now an implicit S4 generic in methods.
  * Formatting and printing, format(z), print(z), of complex vectors
    z no longer zap relatively small real or imaginary parts to zero,
    fixing PR#16752.  This is an API change, as it was documented
    previously to round real and imaginary parts together on purpose,
    producing nicer looking output.  As mentioned, e.g. in the PR,
    this change is compatible with many other "R-like" programming
    environments.
    We have simplified the internal code and now basically format the
    real and imaginary parts independently of each other.
  * New experimental functions Tailcall() and Exec() to support
    writing stack-space-efficient recursive functions.
  * Where characters are attempted to be plotted by pdf(),
    postscript() and xfig() which are not in the selected 8-bit
    character set (most often Latin-1) and the R session is using a
    UTF-8 locale, the warning messages will show the UTF-8 character
    rather than its bytes and one dot will be substituted per
    character rather than per byte.  (Platforms whose iconv() does
    transliteration silently plot the transliteration.)
    In a UTF-8 locale some transliterations are now done with a
    warning (e.g., dashes and Unicode minus to hyphen, ligatures are
    expanded, permille (‰) is replaced by o/oo), although the OS may
    have got there first.  These are warnings as they will continue
    to be replaced by dots in earlier versions of R.
  * The matrix multiplication functions crossprod() and tcrossprod()
    are now also primitive and S3 generic, as %*% had become in R
    4.3.0.
  * source() and example() have a new optional argument catch.aborts
    which allows continued evaluation of the R code after an error.
  * The non-Quartz tiff() devices allow additional types of
    compression if supported by the platform's libtiff library.
  * The list of base and recommended package names is now provided by
    tools::standard_package_names().
  * cairo_pdf() and cairo_ps() default to onefile = TRUE to closer
    match pdf() and postscript().
  * New option catch.script.errors provides a documented way to catch
    errors and then continue in non-interactive use.
  * L %||% R newly in base is an expressive idiom for the phrases
    if(!is.null(L)) L else R or if(is.null(L)) R else L.
  * The return value from warnings() now always inherits from
    "warnings" as documented, now also in the case of no warnings
    where it previously returned NULL.
  * as.complex("1i") now returns 0 + 1i instead of NA with a warning.
  * z &lt;- c(NA, 1i) now keeps the imaginary part Im(z[1]) == 0, no
    longer coercing to NA_complex_.  Similarly, cumsum(z) correctly
    sums real and imaginary parts separately, i.e., without
    "crosstalk" in case of NAs.
  * On Alpine Linux iconv() now maps "latin2", "latin-2", "latin9"
    and "latin-9" to encoding names the OS knows about
    (case-insensitively).
  * iconv(sub = "Unicode") now always zero-pads to four (hex) digits,
    rather than to 4 or 8.  (This seems to have become the convention
    once Unicode restricted the number of Unicode points to 2^21 - 1
    and so will never need more than 6 digits.)
  * NCOL(NULL) now returns 0 instead of 1, for consistency with
    cbind().
  * The information for the Euro glyph missing from the Adobe .afm
    files for the Courier, Helvetica and Times families has been
    copied from their URW equivalents - this will improve vertical
    centring in the pdf() and postscript() devices.
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.12.0.  The changes are almost entirely cosmetic.
  * The included LAPACK sources have been updated to version 3.12.0
    and some further double-complex routines added.
  * There are new font families for the 2014--5 URW 2.0 fonts (see
    ?pdf) which are included in recent versions of Ghostscript.
    These have font widths for most Greek glyphs and a few others
    which were missing from the original versions (whose font
    families remain available for reproducibility, although
    Ghostscript-based viewers will render using the 2.0 versions).
  * Improve the large-n efficiency of as.matrix(&lt;dist&gt;), thanks an R
    contributors effort, notably by Tim Taylor and Heather Turner,
    see PR#18660.
  * The default and numeric methods of all.equal() get a check.class
    option.
  * zapsmall() gets new optional arguments, function mFUN and min.d,
    for extra flexibility; fulfills a wish in PR#18199.  Also, it is
    now an implicit S4 generic in package methods.
  * The Rd filter for aspell() gains an ignore argument.
  * New generic function sort_by(), primarily useful for the
    data.frame method which can be used to sort rows of a data frame
    by one or more columns.
  * The icence headers for the RPC code in src/extra/xdr have been
    updated to use the GPL-compatible licence published by Oracle
    America in 2010.
  * New function pkg2HTML() in tools to create single-page HTML
    reference manuals for R packages.
  * The byte code evaluator now uses less C stack space for recursive
    calls to byte-compiled functions. It also makes more of an effort
    to avoid allocations for scalar return values.
  * New completion option backtick (disabled by default) allows
    non-syntactic completions to be wrapped in backquotes. This is
    currently only useful for Jupyter notebooks via the IRkernel
    package, and may cause problems for other backends.
  INSTALLATION:
  * The parser has been updated to work with bison 3.8.2, which is
    now used for the pre-generated parsers in gram.c, file.c, and
    gramRd.c. A few parser error messages have changed, which may
    affect code that relies on exact messages.
  INSTALLATION on a UNIX-ALIKE:
  * System valgrind headers are now required to use configure option
  - -with-valgrind-instrumentation with value 1 or 2.
  * configure will warn if it encounters a 32-bit build, as that is
    nowadays almost untested.
  * Environment variable R_SYSTEM_ABI is no longer used and so no
    longer recorded in etc/Renviron (it was not on Windows and was
    only ever used when preparing package tools).
  * If the libdeflate library and headers are available, libdeflate
    rather than libz is used to (de)compress R objects in lazy-load
    databases.  Typically tasks spend up to 5% of their time on such
    operations, although creating lazy-data databases is one of the
    exceptions.
    This can be suppressed if the library is available by the
    configure option --without-libdeflate-compression.
  * configure option --enable-lto=check has not worked reliably since
    2019 and has been removed.
  * The minimum autoconf requirement for a maintainer build has been
    increased to autoconf 2.71.
    It is intended to increase this to 2.72 for R 4.5.0: the
    distributed configure file was generated using 2.72.
  * The minimum version requirement for an external LAPACK has been
    reduced to 3.9.0.
  * No default C++ compiler is set if no C++17 compiler is detected:
    there is no longer an automatic fallback to C++14 or C++11.
    Compilers from the last five years should have sufficient
    support: for others macros CXX and CXXSTD can be set in file
    config.site to provide a fallback if needed.
    The Objective-C++ compiler now by default uses the standard
    selected by R for C++ (currently C++17) rather than the default
    standard for the C++ compiler (which on macOS is still C++98).
  INSTALLATION on macOS:
  * A new configure option --with-newAccelerate makes use of Apple's
    'new' BLAS / LAPACK interfaces in their Accelerate framework.
    Those interfaces are only available in macOS 13.3 or later, and
    building requires SDK 13.3 or later (from the Command Line Tools
    or Xcode 14.3 or later).
    By default the option uses new Accelerate for BLAS calls: to also
    use it for LAPACK use option --with-newAccelerate=lapack.  The
    later interfaces provide LAPACK 3.9.1 rather than 3.2.1: 3.9.1 is
    from 2021-04 and does not include the improved algorithms
    introduced in LAPACK 3.10.0 (including for BLAS calls).
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools44, an update of the Rtools43 toolchain.  It is
    based on GCC 13 and newer versions of MinGW-W64, binutils and
    libraries (targeting 64-bit Intel CPUs).  R-devel can no longer
    be built using Rtools43 without changes.
  * Rtools44 has experimental support for 64-bit ARM (aarch64) CPUs
    _via_ the LLVM 17 toolchain using lld, clang/flang-new and
    libc++.
  UTILITIES:
  * R CMD check notes when S4-style exports are used without
    declaring a strong dependence on package methods.
  * tools::checkRd() (used by R CMD check) detects more problems with
    \Sexpr-based dynamic content, including bad nesting of \Sexprs
    and invalid arguments.
  * tools::checkRd() now reports Rd titles and section names ending
    in a period; this is ignored by R CMD check unless environment
    variable _R_CHECK_RD_CHECKRD_MINLEVEL_ is set to -5 or smaller.
  * R CMD check now notes Rd files without an \alias, as long
    documented in 'Writing R Extensions' §1.3.1.  The check for a
    missing \description has been moved from tools::checkRd() to
    tools::checkRdContents().
  * R CMD check now visits inst/NEWS.Rd and OS-specific man
    subdirectories when checking Rd files.
  * tools::checkDocFiles() and tools::checkRdContents() now also
    check internal Rd files by default, but "specially" (ignoring
    missing documentation of arguments).
  * R CMD Rdiff gets option --useEx.
  * R CMD check now warns on non-portable uses of Fortran KIND such
    as INTEGER(KIND=4) and REAL(KIND=8).
    To see the failing lines set environment variable
    _R_CHECK_FORTRAN_KIND_DETAILS_ to a true value.
  * When checking Rd files, R CMD check now notes some of the "lost
    braces" that tools::checkRd() finds.  Typical problems are Rd
    macros missing the initial backslash (e.g., code{...}), in-text
    set notation (e.g., {1, 2}, where the braces need escaping), and
    \itemize lists with \describe-style entries of the form
    \item{label}{description}.
  * R CMD INSTALL (and hence check) will compile C++ code with
  - DR_NO_REMAP if environment variable _R_CXX_USE_NO_REMAP_ is set
    to a true value.  It is planned that this will in future become
    the default for compiling C++.
  * The new built-in Rd macro \dontdiff{} can be used to mark example
    code whose output should be ignored when comparing check output
    to reference output (tests/Examples/&lt;pkg&gt;-Ex.Rout.save).  The
    \dontdiff tag, like \donttest, is _not_ shown on the rendered
    help page, so provides a clean alternative to ##
    IGNORE_RDIFF_(BEGIN|END) comments.
  * R CMD build when there is no NAMESPACE, now uses the recommended
    exportPattern("^[^.]"), instead of exporting everything.
  * R CMD check now warns about non-ASCII characters in the NAMESPACE
    file (in addition to R files). Such packages are not portable and
    may fail to install on some platforms.
  C-LEVEL FACILITIES:
  * Headers R_ext/Applic.h and R-ext/Linpack.h used to include
    R_ext/BLAS.h although this was undocumented and unneeded by their
    documented entry points.  They no longer do so.
  * New function R_missing(), factored out from do_missing(), used to
    fix PR#18579.
  * SEXP type S4SXP has been renamed to OBJSXP to support
    experimenting with alternative object systems.  The S4SXP value
    can still be used in C code but is now deprecated.  Based on
    contributions from the R Consortium's Object-Oriented Programming
    Working Group.
  * New function pow1p(x,y) for accurate (1+x)^y.
  * mkCharLenCE was incorrectly documented to take a size_t length
    but was implemented with int (and character strings in R are
    limited to 2^31 - 1 bytes).
  DEPRECATED AND DEFUNCT:
  * data() no longer handles zipped data from long-defunct (since R
    2.13.0) --use-zip-data installations.
  * The legacy graphics devices pictex() and xfig() are now
    deprecated.  They do not support recent graphics enhancements and
    their font handling is rudimentary. The intention is to retain
    them for historical interest as long as they remain somewhat
    functional.
  * Support for encoding = "MacRoman" has been removed from the pdf()
    and postscript() devices - this was a legacy encoding supporting
    classic macOS up to 2001 and no longer has universal libiconv
    support.
  * is.R() is deprecated as no other S dialect is known to be in use
    (and this could only identify historical dialects, not future
    ones).
    Further information on calls can be obtained by setting the
    environment variable _R_DEPRECATED_IS_R_ to error which turns the
    deprecation warning into an error and so by default gives a
    traceback.  (This is done by R CMD check --as-cran.)
  * UseMethod() no longer forwards local variables assigned in the
    generic function into method call environments before evaluating
    the method body. This makes method calls behave more like
    standard function calls and makes method code easier to analyze
    correctly.
  * The twelve as.data.frame.&lt;class&gt;() methods which were deprecated
    only via _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ and in R CMD
    check --as-cran are formally deprecated now in favour of calling
    as.data.frame() or as.data.frame.vector().  The deprecation
    "check" now works also when as.data.frame() is S4 generic thanks
    to Ivan Krylov.
  * The default method for the directional comparison operators &lt;, &gt;,
    &lt;=, and &gt;= now signals an error when one of the operands is a
    language object, i.e. a symbol or a call.
  * For terms.formula(), deprecate abb and neg.out arguments
    _formally_ in addition to just documenting it.
  BUG FIXES:
  * The methods package is more robust to not being attached to the
    search path.  More work needs to be done.
  * pairwise.t.test() misbehaved when subgroups had 0 DF for
    variance, even with pool.sd = TRUE.  (PR#18594 by Jack Berry).
  * Probability distribution functions [dpq]&lt;distrib&gt;(x, *), but also
    bessel[IKJY](x, .) now consistently preserve attributes(x) when
    length(x) == 0, e.g., for a 2 x 0 matrix, thanks to Karolis
    Koncevičius' report PR#18509.
  * Group "Summary" computations such as sum(1:3, 4, na.rm = 5, NA,
    7, na.rm = LL) now give an error instead of either 17 or NN for
    LL true or false, as proposed by Ivan Krylov on the R-devel
    mailing list.  (This also means it is now an error to specify
    na.rm more than once.)
  * as.complex(x) now returns complex(real = x, imaginary = 0) for
    _all_ numerical and logical x, notably also for NA or
    NA_integer_.
  * Directories are now omitted by file.copy(, recursive = FALSE) and
    in file.append() (PR#17337).
  * gsub() and sub() are now more robust to integer overflow when
    reporting errors caused by too large input strings (PR#18346).
  * Top-level handlers are now more robust to attempts to remove a
    handler whilst handlers are running (PR#18508).
  * The handling of Alt+F4 in dialogs created on Windows using
    GraphApp has been fixed (PR#13870).
  * density() more consistently computes grid values for the
    FFT-based convolution, following Robert Schlicht's analysis and
    proposal in PR#18337, correcting density values typically by a
    factor of about 0.999.  Argument old.coords = TRUE provides back
    compatibility.
  * palette.colors() gains a name argument that defaults to FALSE
    controlling whether the vector of colours that is returned has
    names (where possible).  PR#18529.
  * tools::xgettext() no longer extracts the (non-translatable) class
    names from warningCondition and errorCondition calls.
  * S3method(&lt;gen&gt;, &lt;class&gt;, &lt;func&gt;) in the NAMESPACE file now works
    (again) when &lt;func&gt; is visible from the namespace, e.g.,
    imported, or in base.
  * getParseData(f) now also works for a function defined in the
    first of several &lt;pkg&gt;/R/*.R source files, thanks to Kirill
    Müller's report and Duncan Murdoch's patch in PR#16756.
  * Rd \Sexpr macros with nested #ifdef conditionals were not
    processed.
  * A non-blocking connection with non-default encoding (such as a
    socket) now correctly returns from readLines() after new data has
    arrived also when its EOF had been reached previously.  Thanks to
    Peter Meilstrup's report on R-devel and Ivan Krylov's report and
    patch proposal in PR#18555.
  * tools::checkRdContents() failed to detect empty argument
    descriptions when they spanned multiple lines, including those
    generated by prompt().  These cases are now noted by R CMD check.
  * Plain-text help no longer outputs spurious colons in the
    arguments list (for multi-line \item labels in the Rd source).
  * kappa() and rcond() work correctly in more cases; kappa(., norm =
    "2") now warns that it computes the 1-norm with (default) exact =
    FALSE; prompted by Mikael Jagan's quite comprehensive PR#18543.
  * Rd skeletons generated by prompt() or promptData() now use a
    dummy title (so R CMD build works).  tools::checkRdContents() has
    been updated to detect such template leftovers, including from
    promptPackage().
  * When S4 method dispatch fails because no method was found, the
    error message now includes the signature argument names; thanks
    to Michael Chirico's proposal on the R-devel list.
  * withAutoprint({ .. }) now preserves srcrefs previously lost,
    thanks to Andrew Simmons' report plus fix in PR#18572.
  * transform.data.frame() no longer adjusts names; in particular,
    untransformed variables are kept as-is, including those with
    syntactically invalid names (PR#17890).
  * The keep.source option for Rd \Sexpr blocks is no longer ignored.
  * The formula methods for t.test() and wilcox.test() now catch when
    paired is passed, addressing PR#14359; use Pair(x1, x2) ~ 1 for a
    paired test.
  * The level reported in the browser prompt was often too large. It
    now shows the number of browser contexts on the stack.
  * For cbind() and rbind(), the optional deparse.level argument is
    now properly passed to methods, thanks to Mikael Jagan's PR#18579
    and comments there.
  * Some error and warning messages for large ('long vector')
    matrix(v, nr, nc) and dim(m) &lt;- d are now correct about sizes,
    using long long formatting, fixing PR#18612 (and more) reported
    by Mikael Jagan.
  * readChar(useBytes = TRUE) now terminates strings even when the
    underlying connection uses extra spaces in the input buffer.
    This fixes problems with extra garbage seen with gzip
    connections, PR#18605.
  * Named capture in PCRE regular expressions now works also with
    more than 127 named groups (PR#18588).
  * Datetime functions are now robust against long jumps when dealing
    with internal time zone changes.  This avoids confusing warnings
    about an invalid time zone, previously triggered by turning
    warnings into errors or handling them via tryCatch (PR#17966,
    PR#17780).
  * Datetime functions now restore even an empty TZ environment
    variable after internal time zone changes (PR#17724).  This makes
    results of datetime functions with this (typically unintentional)
    setting more predictable.
  * drop.terms(*) now drops response as by default, keep.response =
    FALSE, fixing PR#18564 thanks to Mikael Jagan.
  * dummy.coef(.) now also works for lm()-models with character
    categorical predictor variables rather than factor ones, fixing
    PR#18635 reported by Jinsong Zhao.
  * formals(f) &lt;- formals(f) now also works for a function w/o
    arguments and atomic _constant_ body(f).
  * Correct as.function(&lt;invalid list&gt;, .)'s error message.
  * removeSource() is yet more thorough in finding and removing
    "srcref" and the other source references from parsed R language
    chunks, fixing PR#18638 thanks to Andrew Simmons.
  * dgeom() is more accurate now, notably when its result is very
    small, fixing PR#18642 thanks to the proposal of Morten Welinder,
    also improving other instances where C level binom_raw(x, n, ..)
    has x == 0 or x== n.
  * warning() with options(warn = 1) has improved output for
    multi-line messages.
  * axis.Date() and axis.POSIXct() now respect the par("lab") setting
    for the number of pretty() intervals.
  * Comparisons for language objects (which are based on deparsing)
    are now more careful about using accurate deparsed results
    (PR#18676).
  * Plain-text help (Rd2txt) now correctly preserves blank lines
    following single-line \dontrun code.
  * &lt;POSIXlt&gt;[*] no longer sets wrong "balanced" attribute, fixing
    PR#18681 thanks to Mikael Jagan.
  * str(&lt;classed-call&gt;) now deparses the call as expected, fixing
    PR#18684, reported by Dave Slager.
  * In Rd examples, code following the closing brace of a \dontrun,
    \dontshow or \donttest tag on the same line is no longer skipped
    when R CMD check runs the examples.
  * as.data.frame(matrix(*, ncol=0)) now gets valid names() and
    colnames(); reported by Davis Vaughan on the R-devel list.
  * Internal Mathlib function stirlerr(n) is now almost fully
    (52-bit) accurate for all n &gt;= ~5.9 and more accurate also in the
    range 1 -- 5.9.  This entails small ("after 12th decimal")
    changes in density functions, e.g., dgamma() in _some_ regions of
    their support.  The fix was partly prompted by Morten Welinder's
    PR#18640.
  * Numbers like 9876543.2 are now considered non-integer by Mathlib
    internal R_nonint(), amending original fix of PR#15734.
  * Rd comment lines no longer cause broken paragraphs in the
    rendered PDF and plain-text help. In code blocks, pure comment
    lines (starting with %) no longer produce an empty line.
  * xtabs(Freq ~ .) now consistently defaults to na.action = na.pass,
    using na.rm = FALSE (added as an argument) when summing over Freq
    (PR#17770).
  * tools::testInstalledPackage() is no longer silent about failures
    from running examples or tests and its return code no longer
    ignores failures from checking vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1718366400">- CHANGES IN R 4.4.1:
  C-LEVEL FACILITIES:
  * Functions R_atof and R_strtod declared in header R_ext/Utils.h
    are now documented in 'Writing R Extensions' and so formally part
    of the API.
  * The non-API entry points Rf_setSVector, Rf_StringFalse,
    Rf_StringTrue and Rf_isBlankString have been added to those
    reported by R CMD check.
  * The new function Rf_allocLang is now available. This provides an
    alternative to the idiom of calling Rf_allocList followed by
    SET_TYPEOF.
  UTILITIES:
  * R CMD check now reports as warnings what gfortran calls 'Fortran
    2018 deleted features', all of which have long been marked as
    'obsolescent' and some of which were deleted in Fortran 2008 or
    earlier.  Fortran compilers are no longer required to support
    these.
  BUG FIXES:
  * as.numeric(), scan(), type.convert() and other places which use
    the internal C function R_strtod now require a _non-empty_ digit
    sequence in a decimal or binary exponent.  This aligns with the
    C/POSIX standard for strtod and with ?NumericConstants.
  * as.data.frame(m, make.names=NA) now works correctly for a matrix
    m with NA's in row names.
  * The error message from &lt;POSIXlt&gt;[["hour"]] and similar now
    mentions *[[, "hour"]], as wished for in PR#17409 and proposed by
    Michael Chirico.
  * qbinom() and potentially qpois(), qnbinom(), no longer sometimes
    fail accurate inversion (of pbinom(), etc), thanks to Christopher
    Chang's report and patch in PR#18711.
  * The internal help server on Windows can again serve requests sent
    in quick succession, fixing a regression in R 4.4.0.
  * debugcall(&lt;S3Generic&gt;()) now also works when a corresponding
    S4-generic version is in the methods cache (PR#18143).
  * Package tools' toTitleCase(ch0) now returns character(0) when ch0
    is of zero length; fixing PR#18724, reported by David Hugh Jones.
  * R CMD check is no longer broken (without a check result and no
    explanation in 00check.log) for a package which declares an
    invalid VignetteBuilder in DESCRIPTION but has no vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1730376000">- CHANGES IN R 4.4.2:
  C-LEVEL FACILITIES:
  * The S-compatibility macros F77_COM and F77_COMDECL defined in
    header R_ext/RS.h are deprecated and will be removed shortly.  We
    could find no record of their use.
  BUG FIXES:
  * Mathlib function lgammacor(x) no longer warns about underflow to
    zero for large x.
  * Text widths and heights were incorrectly reported by the Quartz
    device if the drawing context didn't exist yet (typically when
    drawing off-screen to a window that is yet to appear, see
    PR#18591).
  * The Quartz device could segfault in cases where paths with spaces
    are used in the new glyph drawing API.  Thanks to Tomek
    Gieorgijewski (PR#18758).
  * On macOS in R CRAN builds, it is again possible to read
    little-endian UTF-16 text with a BOM from a connection using
    encoding="UTF-16".  Users building R from source should avoid
    using the system libiconv in macOS 14.1 and later.
  * methods' internal .requirePackage() now re-enables primitive
    method dispatch when needed; thanks to Ivan Krylov for
    demystifying CRAN package check failures on the R-devel mailing
    list.</changelog>
</package>
<package pkgid="c21e15bdfc43009f5c3720a25c4060a57b9f4e7563617bf7cdb0351a1a0866c3372c168dc5c5e56327a033617a01410764b3729511edf0f5f50b3fa6583c25db" name="R-KernSmooth-debuginfo" arch="x86_64">
  <version epoch="0" ver="2.23.24" rel="51.0.2.2.sr20241103"/>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1620302400">- To get in sync with d:l:R:autoCRAN the Matrix package's split
  in -devel was reversed.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339200">- improved spec file according to comments of dimstar in
  https://build.opensuse.org/request/show/892685</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339201">- CHANGES IN R 4.1.0:
  FUTURE DIRECTIONS:
  * It is planned that the 4.1.x series will be the last to support
    32-bit Windows, with production of binary packages for that
    series continuing until early 2023.
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Data set esoph in package datasets now provides the correct
    numbers of controls; previously it had the numbers of cases added
    to these.  (Reported by Alexander Fowler in PR#17964.)
  NEW FEATURES:
  * www.omegahat.net is no longer one of the repositories known by
    default to setRepositories().  (Nowadays it only provides source
    packages and is often unavailable.)
  * Function package_dependencies() (in package tools) can now use
    different dependency types for direct and recursive dependencies.
  * The checking of the size of tarball in R CMD check --as-cran
    &lt;pkg&gt; may be tweaked via the new environment variable
    _R_CHECK_CRAN_INCOMING_TARBALL_THRESHOLD_, as suggested in
    PR#17777 by Jan Gorecki.
  * Using c() to combine a factor with other factors now gives a
    factor, an ordered factor when combining ordered factors with
    identical levels.
  * apply() gains a simplify argument to allow disabling of
    simplification of results.
  * The format() method for class "ftable" gets a new option justify.
    (Suggested by Thomas Soeiro.)
  * New ...names() utility.  (Proposed by Neal Fultz in PR#17705.)
  * type.convert() now warns when its as.is argument is not
    specified, as the help file always said it _should_.  In that
    case, the default is changed to TRUE in line with its change in
    read.table() (related to stringsAsFactor) in R 4.0.0.
  * When printing list arrays, classed objects are now shown _via_
    their format() value if this is a short enough character string,
    or by giving the first elements of their class vector and their
    length.
  * capabilities() gets new entry "Rprof" which is TRUE when R has
    been configured with the equivalent of --enable-R-profiling (as
    it is by default).  (Related to Michael Orlitzky's report
    PR#17836.)
  * str(xS4) now also shows extraneous attributes of an S4 object
    xS4.
  * Rudimentary support for vi-style tags in rtags() and R CMD rtags
    has been added.  (Based on a patch from Neal Fultz in PR#17214.)
  * checkRdContents() is now exported from tools; it and also
    checkDocFiles() have a new option chkInternal allowing to check
    Rd files marked with keyword "internal" as well.  The latter can
    be activated for R CMD check via environment variable
    _R_CHECK_RD_INTERNAL_TOO_.
  * New functions numToBits() and numToInts() extend the raw
    conversion utilities to (double precision) numeric.
  * Functions URLencode() and URLdecode() in package utils now work
    on vectors of URIs.  (Based on patch from Bob Rudis submitted
    with PR#17873.)
  * path.expand() can expand ~user on most Unix-alikes even when
    readline is not in use.  It tries harder to expand ~, for example
    should environment variable HOME be unset.
  * For HTML help (both dynamic and static), Rd file links to help
    pages in external packages are now treated as references to
    topics rather than file names, and fall back to a file link only
    if the topic is not found in the target package. The earlier rule
    which prioritized file names over topics can be restored by
    setting the environment variable _R_HELP_LINKS_TO_TOPICS_ to a
    false value.
  * c() now removes NULL arguments before dispatching to methods,
    thus simplifying the implementation of c() methods, _but_ for
    back compatibility keeps NULL when it is the first argument.
    (From a report and patch proposal by Lionel Henry in PR#17900.)
  * Vectorize()'s result function's environment no longer keeps
    unneeded objects.
  * Function ...elt() now propagates visibility consistently with
    ..n.  (Thanks to Lionel Henry's PR#17905.)
  * capture.output() no longer uses non-standard evaluation to
    evaluate its arguments.  This makes evaluation of functions like
    parent.frame() more consistent.  (Thanks to Lionel Henry's
    PR#17907.)
  * packBits(bits, type="double") now works as inverse of
    numToBits().  (Thanks to Bill Dunlap's proposal in PR#17914.)
  * curlGetHeaders() has two new arguments, timeout to specify the
    timeout for that call (overriding getOption("timeout")) and TLS
    to specify the minimum TLS protocol version to be used for
    https:// URIs (_inter alia_ providing a means to check for sites
    using deprecated TLS versions 1.0 and 1.1).
  * For nls(), an optional constant scaleOffset may be added to the
    denominator of the relative offset convergence test for cases
    where the fit of a model is expected to be exact, thanks to a
    proposal by John Nash.  nls(*, trace=TRUE) now also shows the
    convergence criterion.
  * Numeric differentiation _via_ numericDeriv() gets new optional
    arguments eps and central, the latter for taking central divided
    differences.  The latter can be activated for nls() via
    nls.control(nDcentral = TRUE).
  * nls() now passes the trace and control arguments to getInitial(),
    notably for all self-starting models, so these can also be fit in
    zero-noise situations via a scaleOffset.  For this reason, the
    initial function of a selfStart model must now have ... in its
    argument list.
  * bquote(splice = TRUE) can now splice expression vectors with
    attributes: this makes it possible to splice the result of
    parse(keep.source = TRUE).  (Report and patch provided by Lionel
    Henry in PR#17869.)
  * textConnection() gets an optional name argument.
  * get(), exists(), and get0() now signal an error if the first
    argument has length greater than 1.  Previously additional
    elements were silently ignored.  (Suggested by Antoine Fabri on
    R-devel.)
  * R now provides a shorthand notation for creating functions, e.g.
    \(x) x + 1 is parsed as function(x) x + 1.
  * R now provides a simple native forward pipe syntax |&gt;.  The
    simple form of the forward pipe inserts the left-hand side as the
    first argument in the right-hand side call.  The pipe
    implementation as a syntax transformation was motivated by
    suggestions from Jim Hester and Lionel Henry.
  * all.equal(f, g) for functions now by default also compares their
    environment(.)s, notably via new all.equal method for class
    function.  Comparison of nls() fits, e.g., may now need
    all.equal(m1, m2, check.environment = FALSE).
  * .libPaths() gets a new option include.site, allowing to _not_
    include the site library.  (Thanks to Dario Strbenac's suggestion
    and Gabe Becker's PR#18016.)
  * Lithuanian translations are now available.  (Thanks to Rimantas
    Zakauskas.)
  * names() now works for DOTSXP objects.  On the other hand, in
    R-lang, the R language manual, we now warn against relying on the
    structure or even existence of such dot-dot-dot objects.
  * all.equal() no longer gives an error on DOTSXP objects.
  * capabilities("cairo") now applies only to the file-based devices
    as it is now possible (if very unusual) to build R with Cairo
    support for those but not for X11().
  * There is optional support for tracing the progress of
    loadNamespace() - see its help.
  * (Not Windows.)  l10n_info() reports an additional element, the
    name of the encoding as reported by the OS (which may differ from
    the encoding part (if any) of the result from
    Sys.getlocale("LC_CTYPE").
  * New function gregexec() which generalizes regexec() to find _all_
    disjoint matches and well as all substrings corresponding to
    parenthesized subexpressions of the given regular expression.
    (Contributed by Brodie Gaslam.)
  * New function charClass() in package utils to query the
    wide-character classification functions in use (such as
    iswprint).
  * The names of quantile()'s result no longer depend on the global
    getOption("digits"), but quantile() gets a new optional argument
    digits = 7 instead.
  * grep(), sub(), regexp and variants work considerably faster for
    long factors with few levels.  (Thanks to Michael Chirico's
    PR#18063.)
  * Provide grouping of x11() graphics windows within a window
    manager such as Gnome or Unity; thanks to a patch by Ivan Krylov
    posted to R-devel.
  * The split() method for class data.frame now allows the f argument
    to be specified as a formula.
  * sprintf now warns on arguments unused by the format string.
  * New palettes "Rocket" and "Mako" for hcl.colors() (approximating
    palettes of the same name from the 'viridisLite' package).
    Contributed by Achim Zeileis.
  * The base environment and its namespace are now locked (so one can
    no longer add bindings to these or remove from these).
  * Rterm handling of multi-byte characters has been improved,
    allowing use of such characters when supported by the current
    locale.
  * Rterm now accepts ALT+ +xxxxxxxx sequences to enter Unicode
    characters as hex digits.
  * Environment variable LC_ALL on Windows now takes precedence over
    LC_CTYPE and variables for other supported categories, matching
    the POSIX behaviour.
  * duplicated() and anyDuplicated() are now optimized for integer
    and real vectors that are known to be sorted via the ALTREP
    framework. Contributed by Gabriel Becker via PR#17993.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 14
    and so packages that provide graphics devices should be
    reinstalled.
  * Graphics devices should now specify deviceVersion to indicate
    what version of the graphics engine they support.
  * Graphics devices can now specify deviceClip.  If TRUE, the
    graphics engine will never perform any clipping of output itself.
    The clipping that the graphics engine does perform (for both
    canClip = TRUE and canClip = FALSE) has been improved to avoid
    producing unnecessary artifacts in clipped output.
  * The grid package now allows gpar(fill) to be a linearGradient(),
    a radialGradient(), or a pattern().  The viewport(clip) can now
    also be a grob, which defines a clipping path, and there is a new
    viewport(mask) that can also be a grob, which defines a mask.
    These new features are only supported so far on the Cairo-based
    graphics devices and on the pdf() device.
  * (Not Windows.)  A warning is given when a Cairo-based type is
    specified for a png(), jpeg(), tiff() or bmp() device but Cairo
    is unsupported (so type = "Xlib" is tried instead).
  * grSoftVersion() now reports the versions of FreeType and
    FontConfig if they are used directly (not _via_ Pango), as is
    most commonly done on macOS.
  C-LEVEL FACILITIES:
  * The _standalone_ libRmath math library and R's C API now provide
    log1pexp() again as documented, and gain log1mexp().
  INSTALLATION on a UNIX-ALIKE:
  * configure checks for a program pkgconf if program pkg-config is
    not found.  These are now only looked for on the path (like
    almost all other programs) so if needed specify a full path to
    the command in PKG_CONFIG, for example in file config.site.
  * C99 function iswblank is required - it was last seen missing ca
    2003 so the workaround has been removed.
  * There are new configure options --with-internal-iswxxxxx,
  - -with-internal-towlower and --with-internal-wcwidth which allows
    the system functions for wide-character classification,
    case-switching and width (wcwidth and wcswidth) to be replaced by
    internal ones.  The first has long been used on macOS, AIX (and
    Windows) but this enables it to be unselected there and selected
    for other platforms (it is the new default on Solaris).  The
    second is new in this version of R and is selected by default on
    macOS and Solaris.  The third has long been the default and
    remains so as it contains customizations for East Asian
    languages.
    System versions of these functions are often minimally
    implemented (sometimes only for ASCII characters) and may not
    cover the full range of Unicode points: for example Solaris (and
    Windows) only cover the Basic Multilingual Plane.
  * Cairo installations without X11 are more likely to be detected by
    configure, when the file-based Cairo graphics devices will be
    available but not X11(type = "cairo").
  * There is a new configure option --with-static-cairo which is the
    default on macOS.  This should be used when only static cairo
    (and where relevant, Pango) libraries are available.
  * Cairo-based graphics devices on platforms without Pango but with
    FreeType/FontConfig will make use of the latter for font
    selection.
  LINK-TIME OPTIMIZATION on a UNIX-ALIKE:
  * Configuring with flag --enable-lto=R now also uses LTO when
    installing the recommended packages.
  * R CMD INSTALL and R CMD SHLIB have a new flag --use-LTO to use
    LTO when compiling code, for use with R configured with
  - -enable-lto=R.  For R configured with --enable-lto, they have
    the new flag --no-use-LTO.
    Packages can opt in or out of LTO compilation _via_ a UseLTO
    field in the DESCRIPTION file.  (As usual this can be overridden
    by the command-line flags.)
  BUILDING R on Windows:
  * for GCC &gt;= 8, FC_LEN_T is defined in config.h and hence character
    lengths are passed from C to Fortran in _inter alia_ BLAS and
    LAPACK calls.
  * There is a new text file src/gnuwin32/README.compilation, which
    outlines how C/Fortran code compilation is organized and
    documents new features:
  * R can be built with Link-Time Optimization with a suitable
    compiler - doing so with GCC 9.2 showed several
    inconsistencies which have been corrected.
  * There is support for cross-compiling the C and Fortran code
    in R and standard packages on suitable (Linux) platforms.
    This is mainly intended to allow developers to test later
    versions of compilers - for example using GCC 9.2 or 10.x has
    detected issues that GCC 8.3 in Rtools40 does not.
  * There is experimental support for cross-building R packages
    with C, C++ and/or Fortran code.
  * The R installer can now be optionally built to support a single
    architecture (only 64-bit or only 32-bit).
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++14 where
    available (which it is on all currently checked platforms): if
    not (as before) C++11 is used if available otherwise C++ is not
    supported.
    Packages which specify C++11 will still be installed using C++11.
    C++14 compilers may give deprecation warnings, most often for
    std::random_shuffle (deprecated in C++14 and removed in C++17).
    Either specify C++11 (see 'Writing R Extensions') or modernize
    the code and if needed specify C++14.  The latter has been
    supported since R 3.4.0 so the package's DESCRIPTION would need
    to include something like
    Depends: R (&gt;= 3.4)
  PACKAGE INSTALLATION on Windows:
  * R CMD INSTALL and R CMD SHLIB make use of their flag --use-LTO
    when the LTO_OPT make macro is set in file etc/${R_ARCH}/Makeconf
    or in a personal/site Makevars file.  (For details see 'Writing R
    Extensions' SS4.5.)
    This provides a valuable check on code consistency.  It does work
    with GCC 8.3 as in Rtools40, but that does not detect everything
    the CRAN checks with current GCC do.
  PACKAGE INSTALLATION on macOS:
  * The default personal library directory on builds with
  - -enable-aqua (including CRAN builds) now differs by CPU type,
    one of
    ~/Library/R/x86_64/x.y/library
    ~/Library/R/arm64/x.y/library
    This uses the CPU type R (and hence the packages) were built for,
    so when a x86_64 build of R is run under Rosetta emulation on an
    arm64 Mac, the first is used.
  UTILITIES:
  * R CMD check can now scan package functions for bogus return
    statements, which were possibly intended as return() calls (wish
    of PR#17180, patch by Sebastian Meyer). This check can be
    activated via the new environment variable
    _R_CHECK_BOGUS_RETURN_, true for --as-cran.
  * R CMD build omits tarballs and binaries of previous builds from
    the top-level package directory.  (PR#17828, patch by Sebastian
    Meyer.)
  * R CMD check now runs sanity checks on the use of LazyData, for
    example that a data directory is present and that
    LazyDataCompression is not specified without LazyData and has a
    documented value.  For packages with large LazyData databases
    without specifying LazyDataCompression, there is a reference to
    the code given in 'Writing R Extensions' SS1.1.6 to test the
    choice of compression (as in all the CRAN packages tested a
    non-default method was preferred).
  * R CMD build removes LazyData and LazyDataCompression fields from
    the DESCRIPTION file of packages without a data directory.
  ENCODING-RELATED CHANGES:
  * The parser now treats \Unnnnnnnn escapes larger than the upper
    limit for Unicode points (\U10FFFF) as an error as they cannot be
    represented by valid UTF-8.
    Where such escapes are used for outputting non-printable
    (including unassigned) characters, 6 hex digits are used (rather
    than 8 with leading zeros).  For clarity, braces are used, for
    example \U{0effff}.
  * The parser now looks for non-ASCII spaces on Solaris (as
    previously on most other OSes).
  * There are warnings (including from the parser) on the use of
    unpaired surrogate Unicode points such as \uD834.  (These cannot
    be converted to valid UTF-8.)
  * Functions nchar(), tolower(), toupper() and chartr() and those
    using regular expressions have more support for inputs with a
    marked Latin-1 encoding.
  * The character-classification functions used (by default) to
    replace the system iswxxxxx functions on Windows, macOS and AIX
    have been updated to Unicode 13.0.0.
    The character-width tables have been updated to include new
    assignments in Unicode 13.0.0.
  * The code for evaluating default (extended) regular expressions
    now uses the same character-classification functions as the rest
    of R (previously they differed on Windows, macOS and AIX).
  * There is a build-time option to replace the system's
    wide-character wctrans C function by tables shipped with R: use
    configure option --with-internal-towlower or (on Windows)
  - DUSE_RI18N_CASE in CFLAGS when building R.  This may be needed
    to allow tolower() and toupper() to work with Unicode characters
    beyond the Basic Multilingual Plane where not supported by system
    functions (e.g. on Solaris where it is the new default).
  * R is more careful when truncating UTF-8 and other multi-byte
    strings that are too long to be printed, passed to the system or
    libraries or placed into an internal buffer.  Truncation will no
    longer produce incomplete multibyte characters.
  DEPRECATED AND DEFUNCT:
  * Function plclust() from the package stats and
    package.dependencies(), pkgDepends(), getDepList(),
    installFoundDepends(), and vignetteDepends() from package tools
    are defunct.
  * Defunct functions checkNEWS() and readNEWS() from package tools
    and CRAN.packages() from utils have been removed.
  * R CMD config CXXCPP is defunct (it was deprecated in R 3.6.2).
  * parallel::detectCores() drops support for Irix (retired in 2013).
  * The LINPACK argument to chol.default(), chol2inv(),
    solve.default() and svd() has been defunct since R 3.1.0.  It was
    silently ignored up to R 4.0.3 but now gives an error.
  * Subsetting/indexing, such as ddd[*] or ddd$x on a DOTSXP
    (dot-dot-dot) object ddd has been disabled; it worked by accident
    only and was undocumented.
  BUG FIXES:
  * Many more C-level allocations (mainly by malloc and strdup) are
    checked for success with suitable alternative actions.
  * Bug fix for replayPlot(); this was turning off graphics engine
    display list recording if a recorded plot was replayed in the
    same session.  The impact of the bug became visible if resize the
    device after replay OR if attempted another savePlot() after
    replay (empty display list means empty screen on resize or empty
    saved plot).
  * R CMD check etc now warn when a package exports non-existing S4
    classes or methods, also in case of no "methods" presence.
    (Reported by Alex Bertram; reproducible example and patch by
    Sebastian Meyer in PR#16662.)
  * boxplot() now also accepts calls for labels such as ylab, the
    same as plot().  (Reported by Marius Hofert.)
  * The help page for xtabs() now correctly states that addNA is
    setting na.action = na.pass among others.  (Reported as PR#17770
    by Thomas Soeiro.)
  * The R CMD check &lt;pkg&gt; gives a longer and more comprehensible
    message when DESCRIPTION misses dependencies, e.g., in Imports:.
    (Thanks to the contributors of PR#17179.)
  * update.default() now calls the generic update() on the formula to
    work correctly for models with extended formulas.  (As reported
    and suggested by Neal Fultz in PR#17865.)
  * The horizontal position of leaves in a dendrogram is now correct
    also with center = FALSE.  (PR#14938, patch from Sebastian
    Meyer.)
  * all.equal.POSIXt() no longer warns about and subsequently ignores
    inconsistent "tzone" attributes, but describes the difference in
    its return value (PR#17277).  This check can be disabled _via_
    the new argument check.tzone = FALSE as suggested by Sebastian
    Meyer.
  * as.POSIXct() now populates the "tzone" attribute from its tz
    argument when x is a logical vector consisting entirely of NA
    values.
  * x[[2^31]] &lt;- v now works.  (Thanks to the report and patch by
    Suharto Anggono in PR#17330.)
  * In log-scale graphics, axis() ticks and label positions are now
    computed more carefully and symmetrically in their range,
    typically providing _more_ ticks, fulfilling wishes in PR#17936.
    The change really corresponds to an improved axisTicks() (package
    grDevices), potentially influencing grid and lattice, for
    example.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now correct to at
    least five digits where it was catastrophically wrong,
    previously.
  * sum(df) and similar "Summary"- and "Math"-group member functions
    now work for data frames df with logical columns, notably also of
    zero rows.  (Reported to R-devel by Martin "b706".)
  * unsplit() had trouble with tibbles due to unsound use of rep(NA,
    len)-indexing, which should use NA_integer_ (Reported to R-devel
    by Mario Annau.)
  * pnorm(x, log.p = TRUE) underflows to -Inf slightly later.
  * show(&lt;hidden S4 generic&gt;) prints better and without quotes for
    non-hidden S4 generics.
  * read.table() and relatives treated an "NA" column name as missing
    when check.names = FALSE PR#18007.
  * Parsing strings containing UTF-16 surrogate pairs such as
    "\uD834\uDD1E" works better on some (uncommon) platforms.
    sprintf("%X", utf8ToInt("\uD834\uDD1E")) should now give "1D11E"
    on all platforms.
  * identical(x,y) is no longer true for differing DOTSXP objects,
    fixing PR#18032.
  * str() now works correctly for DOTSXP and related exotics, even
    when these are doomed.
    Additionally, it no longer fails for lists with a class and
    "irregular" method definitions such that e.g. lapply(*) will
    necessarily fail, as currently for different igraph objects.
  * Too long lines in environment files (e.g. Renviron) no longer
    crash R. This limit has been increased to 100,000 bytes.
    (PR#18001.)
  * There is a further workaround for FreeType giving incorrect
    italic font faces with cairo-based graphics devices on macOS.
  * add_datalist(*, force = TRUE) (from package tools) now actually
    updates an existing data/datalist file for new content.  (Thanks
    to a report and patch by Sebastian Meyer in PR#18048.)
  * cut.Date() and cut.POSIXt() could produce an empty last interval
    for breaks = "months" or breaks = "years".  (Reported as PR#18053
    by Christopher Carbone.)
  * Detection of the encoding of 'regular' macOS locales such as
    en_US (which is UTF-8) had been broken by a macOS change:
    fortunately these are now rarely used with en_US.UTF-8 being
    preferred.
  * sub() and gsub(pattern, repl, x, *) now keep attributes of x such
    as names() also when pattern is NA (PR#18079).
  * Time differences ("difftime" objects) get a replacement and a
    rep() method to keep "units" consistent.  (Thanks to a report and
    patch by Nicolas Bennett in PR#18066.)
  * The \RdOpts macro, setting defaults for \Sexpr options in an Rd
    file, had been ineffective since R 2.12.0: it now works again.
    (Thanks to a report and patch by Sebastian Meyer in PR#18073.)
  * mclapply and pvec no longer accidentally terminate parallel
    processes started before by mcparallel or related calls in
    package parallel (PR#18078).
  * grep and other functions for evaluating (extended) regular
    expressions handle in Unicode also strings not explicitly flagged
    UTF-8, but flagged native when running in UTF-8 locale.
  * Fixed a crash in fifo implementation on Windows (PR#18031).
  * Binary mode in fifo on Windows is now properly detected from
    argument open (PR#15600, PR#18031).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1622808000">- The line %{__install} -m 755 -d %{_infodir}
  no longer works in TW or Factory.
  But without that line it works everywhere. So this instruction
  was commented out of the spec file.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1628596800">- CHANGES IN R 4.1.1:
  NEW FEATURES:
  * require(pkg, quietly = TRUE) is quieter and in particular does
    not warn if the package is not found.
  DEPRECATED AND DEFUNCT:
  * Use of ftp:// URIs should be regarded as deprecated, with
    on-going support confined to method = "libcurl" and not routinely
    tested.  (Nowadays no major browser supports them.)
  * The non-default method = "internal" is deprecated for http:// and
    ftp:// URIs for both download.file and url.
  * On Windows, method = "wininet" is deprecated for http://,
    https:// and ftp:// URIs for both download.file and url.  (A
    warning is only given for ftp://.)
    For ftp:// URIs the default method is now "libcurl" if available
    (which it is on CRAN builds).
    method = "wininet" remains the default for http:// and https://
    URIs but if libcurl is available, using method = "libcurl" is
    preferred.
  INSTALLATION:
  * make check now works also without a LaTeX installation.  (Thanks
    to Sebastian Meyer's PR#18103.)
  BUG FIXES:
  * make check-devel works again in an R build configured with
  - -without-recommended-packages.
  * qnbinom(p, size, mu) for large size/mu is correct now in a range
    of cases (PR#18095); similarly for the (size, prob)
    parametrization of the negative binomial.  Also qpois() and
    qbinom() are better and or faster for extreme cases.  The
    underlying C code has been modularized and is common to all four
    cases of discrete distributions.
  * gap.axis is now part of the axis() arguments which are passed
    from bxp(), and hence boxplot().  (Thanks to Martin Smith's
    report and suggestions in PR#18109.)
  * .First and .Last can again be set from the site profile.
  * seq.int(from, to, *) and seq.default(..) now work better in large
    range cases where from-to is infinite where the two boundaries
    are finite.
  * all.equal(x,y) now returns TRUE correctly also when several
    entries of abs(x) and abs(y) are close to .Machine$double.xmax,
    the largest finite numeric.
  * model.frame() now clears the object bit when removing the class
    attribute of a value via na.action (PR#18100).
  * charClass() now works with multi-character strings on Windows
    (PR#18104, fixed by Bill Dunlap).
  * encodeString() on Solaris now works again in Latin-1 encoding on
    characters represented differently in UTF-8.  Support for
    surrogate pairs on Solaris has been improved.
  * file.show() on Windows now works with non-ASCII path names
    representable in the current native encoding (PR#18132).
  * Embedded R on Windows can now find R home directory via the
    registry even when installed only for the current user
    (PR#18135).
  * pretty(x) with finite x now returns finite values also in the
    case where the extreme x values are close in size to the maximal
    representable number .Machine$double.xmax.
    Also, it's been tweaked for very small ranges and when a boundary
    is close (or equal) to zero; e.g., pretty(c(0,1e-317)) no longer
    has negative numbers, currently still warning about a very small
    range, and pretty(2^-(1024 - 2^-1/(c(24,10)))) is more accurate.
  * The error message for not finding vignette files when weaving has
    correct file sizes now. (Thanks to Sebastian Meyer's PR#18154.)
  * dnbinom(20, &lt;large&gt;, 1) now correctly gives 0, and similar cases
    are more accurate with underflow precaution.  (Reported by Francisco Vera Alcivar in PR#18072.)</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635163200">- repaired https://bugzilla.suse.com/show_bug.cgi?id=1191380
  (rpmacros now go to rpmmacrodir)
- minor clean-ups in spec file</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635768000">- CHANGES IN R 4.1.2:
  C-LEVEL FACILITIES:
  * The workaround in headers R.h and Rmath.h (using namespace std;)
    for the Oracle Developer Studio compiler is no longer needed now
    C++11 is required so has been removed.  A couple more usages of
    log() (which should have been std::log()) with an int argument
    are reported on Solaris.
  * The undocumented limit of 4095 bytes on messages from the
    S-compatibility macros PROBLEM and MESSAGE is now documented and
    longer messages will be silently truncated rather than
    potentially causing segfaults.
  * If the R_NO_SEGV_HANDLER environment variable is non-empty, the
    signal handler for SEGV/ILL/BUS signals (which offers recovery
    user interface) is not set. This allows more reliable debugging
    of crashes that involve the console.
  DEPRECATED AND DEFUNCT:
  * The legacy S-compatibility macros PROBLEM, MESSAGE, ERROR, WARN,
    WARNING, RECOVER, ... are deprecated and will be hidden in R
    4.2.0. R's native interface of Rf_error and Rf_warning has long
    been preferred.
  BUG FIXES:
  * .mapply(F, dots, .) no longer segfaults when dots is not a list
    and uses match.fun(F) as always documented; reported by Andrew
    Simmons in PR#18164.
  * hist(&lt;Date&gt;, ...) and hist(&lt;POSIXt&gt;, ...)  no longer pass
    arguments for rect() (such as col and density) to axis().
    (Thanks to Sebastian Meyer's PR#18171.)
  * \Sexpr{ch} now preserves Encoding(ch). (Thanks to report and
    patch by Jeroen Ooms in PR#18152.)
  * Setting the RNG to "Marsaglia-Multicarry" e.g., by RNGkind(), now
    warns in more places, thanks to Andr'e Gillibert's report and
    patch in PR#18168.
  * gray(numeric(), alpha=1/2) no longer segfaults, fixing PR#18183,
    reported by Till Krenz.
  * Fixed dnbinom(x, size=&lt;very_small&gt;, .., log=TRUE) regression,
    reported by Martin Morgan.
  * as.Date.POSIXlt(x) now keeps names(x), thanks to Davis Vaughan's
    report and patch in PR#18188.
  * model.response() now strips an "AsIs" class typically, thanks to
    Duncan Murdoch's report and other discussants in PR#18190.
  * try() is considerably faster in case of an error and long call,
    as e.g., from some do.call().  Thanks to Alexander Kaever's
    suggestion posted to R-devel.
  * qqline(y = &lt;object&gt;) such as y=I(.), now works, see also
    PR#18190.
  * Non-integer mgp par() settings are now handled correctly in
    axis() and mtext(), thanks to Mikael Jagan and Duncan Murdoch's
    report and suggestion in PR#18194.
  * formatC(x) returns length zero character() now, rather than ""
    when x is of length zero, as documented, thanks to Davis
    Vaughan's post to R-devel.
  * removeSource(fn) now retains (other) attributes(fn).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1647000000">- CHANGES IN R 4.1.3:
  NEW FEATURES:
  * The default version of Bioconductor has been changed to 3.14.
    (This is used by setRepositories and the menus in GUIs.)
  UTILITIES:
  * R CMD check --as-cran has a workaround for a bug in versions of
    file up to at least 5.41 which mis-identify DBF files last
    changed in 2022 as executables.
  C-LEVEL FACILITIES:
  * The legacy S-compatibility macros SINGLE_* in R_ext/Constants.h
    (included by R.h) are deprecated and will be removed in R 4.2.0.
  BUG FIXES:
  * Initialization of self-starting nls() models with initialization
    functions following the pre-R-4.1.0 API (without the ...
    argument) works again for now, with a deprecation warning.
  * Fixed quoting of ~autodetect~ in Java setting defaults to avoid
    inadvertent user lookup due to leading ~, reported in PR#18231 by
    Harold Gutch.
  * substr(., start, stop) &lt;- v now treats _negative_ stop values
    correctly.  Reported with a patch in PR#18228 by Brodie Gaslam.
  * Subscripting an array x without dimnames by a
    length(dim(x))-column character matrix gave "random" non-sense,
    now an error; reported in PR#18244 by Mikael Jagan.
  * ...names() now matches names(list(...)) closely, fixing PR#18247.
  * all.equal(*, scale = s) now works as intended when length(s) &gt; 1,
    partly thanks to Michael Chirico's PR#18272.
  * print(x) for long vectors x now also works for named atomic
    vectors or lists and prints the correct number when reaching the
    getOption("max.print") limit; partly thanks to a report and
    proposal by Hugh Parsonage to the R-devel list.
  * all.equal(&lt;selfStart&gt;, *) no longer signals a deprecation
    warning.
  * reformulate(*, response=r) gives a helpful error message now when
    length(r) &gt; 1, thanks to Bill Dunlap's PR#18281.
  * Modifying globalCallingHandlers inside withCallingHandlers() now
    works or fails correctly, thanks to Henrik Bengtsson's PR#18257.
  * hist(&lt;Date&gt;, breaks = "days") and hist(&lt;POSIXt&gt;, breaks = "secs")
    no longer fail for inputs of length 1.
  * qbeta(.001, .9, .009) and similar cases now converge correctly
    thanks to Ben Bolker's report in PR#17746.
  * window(x, start, end) no longer wrongly signals "'start' cannot
    be after 'end'", fixing PR#17527 and PR#18291.
  * data() now checks that its (rarely used) list argument is a
    character vector - a couple of packages passed other types and
    gave incorrect results.
  * which() now checks its arr.ind argument is TRUE rather coercing
    to logical and taking the first element - which gave incorrect
    results in package code.
  * model.weights() and model.offset() more carefully extract their
    model components, thanks to Ben Bolker and Tim Taylor's R-devel
    post.
  * list.files(recursive = TRUE) now shows all broken symlinks
    (previously, some of them may have been omitted, PR#18296).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1650628800">- CHANGES IN R 4.2.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * The formula method of aggregate() now matches the generic in
    naming its first argument x (resolving PR#18299 by Thomas
    Soeiro).
    This means that calling aggregate() with a formula as a named
    first argument requires name formula in earlier versions of R and
    name x now, so portable code should not name the argument (code
    in many packages did).
  * Calling &amp;&amp; or || with either argument of length greater than one
    now gives a warning (which it is intended will become an error).
  * Calling if() or while() with a condition of length greater than
    one gives an error rather than a warning.  Consequently,
    environment variable _R_CHECK_LENGTH_1_CONDITION_ no longer has
    any effect.
  * Windows users should consult the WINDOWS section below for some
    profound changes including
  * Support for 32-bit builds has been dropped.
  * UTF-8 locales are used where available.
  * The default locations for the R installation and personal
    library folder have been changed.
    Thanks to Tomas Kalibera for months of work on the Windows port
    for this release.
  NEW FEATURES:
  * matrix(x, n, m) now warns in more cases where length(x) differs
    from n * m, as suggested by Abby Spurdle and Wolfgang Huber in
    Feb 2021 on the R-devel mailing list.
    This warning can be turned into an error by setting environment
    variable _R_CHECK_MATRIX_DATA_ to TRUE: R CMD check --as-cran
    does so unless it is already set.
  * Function file_test() in package utils gains tests for symlinks,
    readability and writability.
  * capabilities("libxml") is now false.
    The description of capabilities("http/ftp") now reflects that it
    refers to the default method, no longer the internal one.
  * simplify2array() gains an except argument for controlling the
    exceptions used by sapply().
  * Environment variables R_LIBS_USER and R_LIBS_SITE are both now
    set to the R system default if unset or empty, and can be set to
    NULL to indicate an empty list of user or site library
    directories.
  * The warning for axis()(-like) calls in cases of relatively small
    ranges (typically in log-scale situations) is slightly improved
    _and_ suppressed from explicit calls to .axisPars() as has always
    been the intention.
  * The contrasts setter function `contrasts&lt;-` gains an explicit
    default how.many = NULL rather than just using missing(how.many).
  * grid.pretty() gains a new optional argument n = 5.
  * There is a new function .pretty() with option bounds as a
    technical-utility version of pretty().  It and pretty() gain a
    new argument f.min with a better than back-compatible default.
  * Function grDevices::axisTicks() and related functions such as
    graphics::axis() work better, notably for the log scale; partly
    because of the pretty() improvements, but also because care is
    taken e.g., when ylim is finite but diff(ylim) is infinite.
  * nclass.FD() gains a digits option.
  * The R Mathlib internal C function bd0() (called indirectly from a
    dozen probability density and distribution functions such as
    dpois(), dbinom(), dgamma(), pgamma() _etc_) has been
    complemented by a more sophisticated and (mostly) more accurate C
    function ebd0(), currently called only by internal dpois_raw()
    improving accuracy for R level dpois() and potentially others
    calling it such as dnbinom(), dgamma() or pgamma().  (Thanks to
    Morten Welinder's PR#15628.)
  * write.ftable() gains sep = " " argument as suggested by Thomas
    Soeiro.
  * The names of the locale categories supported by R's
    Sys.getlocale() and Sys.setlocale() are now provided by variable
    .LC.categories in the base namespace.
  * The Date and POSIXt methods for hist() and the histogram method
    for plot() now also use the new default col = "lightgray" in
    consistency with the corresponding change to hist()'s default for
    R 4.0.0.
  * hist.default() gains new fuzz argument, and the histogram plot
    method no longer uses fractional axis ticks when displaying
    counts ("Frequency").
  * mapply() and hence Map() now also obey the "max-or-0-if-any"
    recycling rule, such that, e.g., Map(`+`, 1:3, 1[0]) is valid
    now.
  * as.character(&lt;obj&gt;) for "hexmode" or "octmode" objects now
    fulfils the important basic rule as.character(x)[j] ===
    as.character(x[j]).
  * The set utility functions, notably intersect() have been tweaked
    to be more consistent and symmetric in their two set arguments,
    also preserving a common mode.
  * substr(ch, start,end) &lt;- new now e.g., preserves names(ch); ditto
    for substring(), thanks to a patch from Brodie Gaslam.
  * plot(&lt;lm&gt;) gains a extend.ylim.f argument, in partial response to
    PR#15285; further PR#17784 is fixed thanks to several
    contributors and a patch by Elin Waring.  The Cook's dist
    contours get customizable via cook.col and cook.lty with a
    different default color and their legend is nicer by default and
    customizable via cook.legendChanges.
  * Attempting to subset an object that is not subsettable now
    signals an error of class notSubsettableError. The
    non-subsettable object is contained in the object field of the
    error condition.
  * Subscript-out-of-bounds errors are now signaled as errors of
    class subscriptOutOfBoundsError.
  * Stack-overflow errors are now signaled as errors inheriting from
    class stackOverflowError. See ?stackOverflowError for more
    details.
  * New partly experimental Sys.setLanguage() utility, solving the
    main problem of PR#18055.
  * gettext() and gettextf() get a new option trim = TRUE which when
    set to false allows translations for strings such as "Execution
    halted\n" typical for C code.
  * An experimental implementation of hash tables is now available.
    See ?hashtab for more details.
  * identical() gains a extptr.as.ref argument for requesting that
    external pointer objects be compared as reference objects.
  * reorder() gets an argument decreasing which it passes to sort()
    for level creation; based on the wish and patch by Thomas Soeiro
    in PR#18243.
  * as.vector() gains a data.frame method which returns a simple
    named list, also clearing a long standing 'FIXME' to enable
    as.vector(&lt;data.frame&gt;, mode="list").  This breaks code relying
    on as.vector(&lt;data.frame&gt;) to return the unchanged data frame.
  * legend() is now vectorized for arguments cex, x.intersp, and
    text.width.  The latter can now also be specified as a vector
    (one element for each column of the legend) or as NA for
    computing a proper column wise maximum value of strwidth(legend).
    The argument y.intersp can be specified as a vector with one
    entry for each row of the legend.
    legend() also gains new arguments title.cex and title.font.
    Thanks to Swetlana Herbrandt.
  * Deparsing no longer remaps attribute names dim, dimnames, levels,
    names and tsp to historical S-compatible names (which structure()
    maps back).
  * sample() and sample.int() have additional sanity checks on their
    size and n arguments.
    all.equal.numeric() gains a sanity check on its tolerance
    argument - calling all.equal(a, b, c) for three numeric vectors
    is a surprisingly common error.
    mean(na.rm =), rank(na.last =), barplot(legend.text =),
    boxplot(), contour(drawlabels =), polygon(border =) and
    methods::is(class2 =) have more robust sanity checks on their
    arguments.
    R CMD Rd2pdf (used by R CMD check) has a more robust sanity check
    on the format of \alias{} commands.
  * psigamma(x, deriv) for negative x now also works for deriv = 4
    and 5; their underlying C level dpsifn() is documented in
    'Writing R Extensions'.
  * The HTML help system now uses HTML5 (wish of PR#18149).
  * ks.test() now provides exact p-values also with ties and MC
    p-values in the two-sample (Smirnov) case.  By Torsten Hothorn.
  * ks.test() gains a formula interface, with y ~ 1 for the
    one-sample (Kolmogorov) test and y ~ group for the two-sample
    (Smirnov) test.  Contributed by Torsten Hothorn.
  * The return value from ks.test() now has class c("ks.test",
    "htest") - packages using try() need to take care to use
    inherits() and not == on the class.
  * New functions psmirnov(), qsmirnov() and rsmirnov() in package
    stats implementing the asymptotic and exact distributions of the
    two-sample Smirnov statistic.
  * iconv() now allows sub = "c99" to use C99-style escapes for UTF-8
    inputs which cannot be converted to encoding to.
  * In a forward pipe |&gt; expression it is now possible to use a named
    argument with the placeholder _ in the rhs call to specify where
    the lhs is to be inserted.  The placeholder can only appear once
    on the rhs.
  * The included LAPACK sources have been updated to version 3.10.0,
    except for the four Fortran 77 routines which 3.10.0 has
    re-implemented in Fortran 90 (where the older versions have been
    retained as the R build process does not support Fortran 90).
  * path.expand() and most other uses of tilde expansion now warn if
    a path would be too long if expanded.  (An exception is
    file.exists(), which silently returns false.)
  * trunc(&lt;Date&gt;, *) now supports units = "months" or "years" for
    consistency with the POSIXt method, thanks to Dirk Eddelbuettel's
    proposal in PR#18099.
  * list2DF() now checks that its arguments are of the same length,
    rather than use recycling.
  * The HTML help system has several new features: LaTeX-like math
    can be typeset using either KaTeX or MathJax, usage and example
    code is highlighted using Prism, and for dynamic help the output
    of examples and demos can be shown within the browser if the
    knitr package is installed. These features can be disabled by
    setting the environment variable _R_HELP_ENABLE_ENHANCED_HTML_ to
    a false value.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 15
    and so packages that provide graphics devices should be
    reinstalled.
  * The grid package now allows the user to specify a "vector" of
    pattern fills.  The fill argument to gpar() accepts a list of
    gradients and/or patterns and the functions linearGradient(),
    radialGradient(), and pattern() have a new group argument.
    Points grobs (data symbols) can now also have a pattern fill.
    The grobCoords() function now returns a more informative and
    complex result.
  * The grid package has new functions for drawing isolated groups:
    grid.group(), grid.define(), and grid.use().  These functions add
    compositing operators and affine transformations to R's graphics
    capabilities.
    The grid package also has new functions for stroking and filling
    paths: grid.stroke(), grid.fill(), and grid.fillStroke().
    A new function as.path() allows the user to specify the fill rule
    for a path that is to be used for clipping, stroking, or filling;
    available options are "winding" and "evenodd".  A new function
    as.mask() allows the user to specify the type of a mask;
    available options are "alpha" and "luminance".
    These new features are only supported so far (at most) on the
    Cairo-based graphics devices and on the pdf() device.
  * dev.capabilities() reports on device support for the new
    features.
  * par() now warns about unnamed non-character arguments to prevent
    misuse such as {usr &lt;- par("usr"); par(usr)}.
  INSTALLATION:
  * Facilities for accessing ftp:// sites are no longer tested
    (except _pro tem_ for curlGetHeaders()) as modern browsers have
    removed support.
  * R can now be built with DEFS = -DSTRICT_R_HEADERS .
  PACKAGE INSTALLATION:
  * R CMD INSTALL no longer tangles vignettes. This completes an R
    CMD build change in R 3.0.0 and affects packages built before R
    3.0.2. Such packages should be re-made with R CMD build to have
    the tangled R code of vignettes shipped with the tarball.
  * USE_FC_LEN_T will become the default: this uses the correct
    prototypes for Fortran BLAS/LAPACK routines called from C/C++,
    and requires adjustment of most such calls - see 'Writing R
    Extensions' SS6.6.2.  (This has been supported since R 3.6.2.)
  * Package installation speed for packages installed with
    keep.source has been improved. This resolve the issue reported by
    Ofek Shilon in PR#18236.
  UTILITIES:
  * R CMD check can optionally report files/directories left behind
    in home, /tmp (even though TMPDIR is set) and other directories.
    See the "R Internals" manual for details.
  * R CMD check now reports byte-compilation errors during
    installation.  These are not usually fatal but may result in
    parts of the package not being byte-compiled.
  * _R_CHECK_DEPENDS_ONLY_ can be applied selectively to examples,
    tests and/or vignettes in R CMD check: see the "R Internals"
    manual.
  * _R_CHECK_SRC_MINUS_W_IMPLICIT_ now defaults to true: recent
    versions of Apple clang on macOS have made implicit function
    declarations in C into a compilation error.
  * R CMD check --as-cran makes use of the environment variable
    AUTORECONF.  See the "R Internals" manual SS8 for further details.
  * R CMD check --use-valgrind also uses valgrind when re-building
    vignettes as some non-Sweave vignettes unhelpfully comment out
    all their code when R CMD check runs vignettes.
  * Errors in re-building vignettes (unless there are LaTeX errors)
    are reported by R CMD check as ERROR rather than WARNING when
    running vignettes has been skipped (as it frequently is in CRAN
    checks and by --as-cran).
  * R CMD Rd2pdf gains a --quiet option that is used by R CMD build
    when building the PDF package manual.
  * R CMD Rd2pdf now always runs LaTeX in batch mode, consistent with
    Texinfo &gt;= 6.7. The --batch option is ignored.
  * R CMD build and R CMD check now include the Rd file name and line
    numbers in the error message of an \Sexpr evaluation failure.
  * For packages using the \doi Rd macro (now an install-time \Sexpr)
    but no other dynamic Rd content, R CMD build now produces a
    smaller tarball and is considerably faster - skipping temporary
    package installation.
  C-LEVEL FACILITIES:
  * The non-API header R_ext/R-ftp-http.h is no longer provided, as
    the entry points it covered are now all defunct.
  * A number of non-API declarations and macro definitions have been
    moved from the installed header Rinternals.h to the internal
    header Defn.h. Packages that only use entry points and
    definitions documented to be part of the API as specified in
    'Writing R Extensions' SS6 should not be affected.
  * The macro USE_RINTERNALS no longer has any effect when compiling
    package code.  Packages which also use R_NO_REMAP will need to
    ensure that the remapped names are used for calls to API
    functions that were formerly also made available as macros.
  * The deprecated legacy S-compatibility macros PROBLEM, MESSAGE,
    ERROR, WARN, WARNING, RECOVER, ... are no longer defined in
    R_exts/RS.h (included by R.h).  Replace these by calls to
    Rf_error and Rf_warning (defined in header R_ext/Error.h included
    by R.h).
    Header R_ext/RS.h no longer includes R_ext/Error.h.
  * Header R_ext/Constants.h (included by R.h) when included from C++
    now includes the C++ header cfloat rather than the C header
    float.h (now possible as C++11 is required).
  * The legacy S-compatibility macros DOUBLE_* in R_ext/Constants.h
    (included by R.h) are deprecated.
  * The deprecated S-compatibility macros SINGLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * R_Calloc, R_Free and R_Realloc are preferred to their unprefixed
    forms and error messages now use the prefix. These forms were
    introduced in R 3.4.0 and are available even when
    STRICT_R_HEADERS is defined.
  * rmultinom has been documented in 'Writing R Extensions' SS6 so is
    now part of the R API.
  * Similarly, Rtanpi, called from R level tanpi() is now part of the
    R API.
  * The long-deprecated, undocumented and non-API entry point call_R
    is no longer declared in R_ext/RS.h (included by R.h).
  * The header S.h which has been unsupported since Jan 2016 has been
    removed.  Use R.h instead.
  DEPRECATED AND DEFUNCT:
  * The (non-default and deprecated) method = "internal" for
    download.file() and url() no longer supports http:// nor ftp://
    URIs.  (It is used only for file:// URIs.)
    On Windows, download.file(method = "wininet") no longer supports
    ftp:// URIs.  (It is no longer the default method, which is
    "libcurl" and does.)
    On Windows, the deprecated method = "wininet" now gives a warning
    for http:// and https:// URIs for both download.file() and url().
    (It is no longer the default method.)
  * On Windows, the command-line option --max-mem-size and
    environment variable R_MAX_MEM_SIZE are defunct.  The memory
    allocation limit was important for 32-bit builds, but these are
    no longer supported.
  * default.stringsAsFactors() is now formally deprecated, where that
    was only mentioned on its regular help page, previously.  So it
    now gives a warning if called.
  * unix.time() is defunct now; it had been deprecated since R 3.4.0.
  BUG FIXES:
  * Setting digits = 0 in format(), print.default() (and hence
    typically print()) or options() is again invalid.  Its behaviour
    was platform-dependent, and it is unclear what "zero significant
    digits" should mean (PR#18098).
  * Messages from C code in the cairo section of package grDevices
    are now also offered for translation, thanks to Michael Chirico's
    PR#18123.
  * mean(x) with finite x now is finite also without "long.double"
    capability.
  * R CMD Rd2pdf no longer leaves an empty build directory behind
    when it aborts due to an already existing output file.  (Thanks
    to Sebastian Meyer's PR#18141.)
  * density(x, weights = w, na.rm = TRUE) when anyNA(x) is true, now
    removes weights "in parallel" to x, fixing PR#18151, reported by
    Matthias Gondan.  Additionally, it gets a subdensity option.
  * Conversion of \Sexpr[]{&lt;expR&gt;} to LaTeX or HTML no longer
    produces long blocks of empty lines when &lt;expR&gt; itself contains
    several lines all producing empty output.  Thanks to a report and
    patch by Ivan Krylov posted to R-devel.
  * R CMD build no longer fails if a package vignette uses child
    documents and inst/doc exists.  (Thanks to Sebastian Meyer's
    PR#18156.)
  * When an R documentation ('help' source) file man/foo.Rd in a
    package has \donttest{..} examples with a syntax error, it is now
    signalled as ERROR and with correct line numbers relating to the
  * -Ex.R file, thanks to Duncan Murdoch and Sebastian Meyer's
    reports and patch proposals in PR#17501.
  * Improved determination of the correct translation domain in
    non-base packages, addressing the combination of PR#18092 and
    PR#17998 (#c6) with reports and _augmented_ patch #2904 by
    Suharto Anggono.
    Note that "R-base" is no longer the default domain e.g., for
    top-level calls to gettext(); rather translation needs explicit
    domain = * specification in such cases.
  * identical(attrib.as.set=FALSE) now works correctly with data
    frames with default row names (Thanks to Charlie Gao's PR#18179).
  * txtProgressBar() now enforces a non-zero width for argument char,
    without which no progress can be visible.
  * dimnames(table(d)) is more consistent in the case where d is a
    list with a single component, thanks to Thomas Soeiro's report to
    R-devel.
    Further, table(d1, d2) now gives an error when d1 and d2 are data
    frames as suggested by Thomas in PR#18224.
  * Fix for drawing semi-transparent lines and fills on the native
    Windows graphics device (PR#18219 and PR#16694).  Thanks to Nick
    Ray for helpful diagnosis on Bugzilla.
  * The deparser now wraps sub-expressions such as if(A) ..  with
    parentheses when needed; thanks to Duncan Murdoch's PR#18232 and
    Lionel Henry's patches there.
  * remove.packages() no longer tries to uninstall Priority: base
    packages, thanks to a report and suggestions by Colin Fay in
    PR#18227.
  * win.metafile() now has xpinch and ypinch arguments so that the
    user can override Windows' (potentially wrong) guess at device
    dimensions.
  * x[i] and x[[i]] for non-integer i should now behave in all cases
    as always documented: the index used is equivalent to
    as.integer(i) unless that would overflow where trunc(i) is used
    instead; thanks to Suharto Anggono's report and patch proposals
    in PR#17977.
  * asOneSidedFormula() now associates the resulting formula with the
    global environment rather than the evaluation environment created
    for the call.
  * &lt;bibentry&gt;$name now matches the field name case-insensitively,
    consistent with bibentry() creation and the replacement method.
  * cbind() failed to detect some length mismatches with a mixture of
    time-series and non-time-series inputs.
  * The default LaTeX style file Sweave.sty used by the RweaveLatex
    driver no longer loads the obsolete ae package; thanks to a
    report by Thomas Soeiro in PR#18271.  Furthermore, it now skips
    \usepackage[T1]{fontenc} for engines other than pdfTeX (if
    detected) or if the new [nofontenc] option is used.
  * smooth.spline() now stores its logical cv argument more safely,
    fixing a rare bug when printing, and also stores n.
  * smooth.spline(x,y,*) now computes the cv.crit statistic
    correctly, also when is.unsorted(x), fixing PR#18294.
  * The data.frame method of rbind() now warns when binding
    not-wholly-recycling vectors, by analogy to the default method
    (for matrices).
  * setAs() finds the correct class for name to when multiple
    packages define a class with that name. Thanks to Gabor Csardi
    for the report.
  * Fix for detaching a package when two classes of the same name are
    present in method signatures for the same generic. Thanks to
    Gabor Csardi for the report.
  * match.arg("", c("", "a", "B")) gives a better error message, in
    part from PR#17959, thanks to Elin Waring.
  * R CMD Sweave --clean no longer removes pre-existing files or
    subdirectories (PR#18242).
  * The quartz() device no longer splits polylines into subpaths.
    That has caused narrowly-spaced lines with many points to always
    look solid even when dashed line type was used due to dash phase
    restarts.
  * Deparsing constructs such as quote(1 + `!`(2) + 3) works again as
    before R 3.5.0, thanks to the report and patch in PR#18284 by
    Suharto Anggono.
  * as.list(f) for a factor f now keeps names(f), fixing PR#18309.
  * qbeta(.001, .9, .009) and analogous qf() calls now return a
    correct value instead of NaN or wrongly 1, all with a warning;
    thanks to the report by Ludger Goeminne in PR#18302.
  * plot.lm() failed to produce the plot of residuals vs.  factor
    levels (i.e., which=5 when leverages are constant) for models
    with character predictors (PR#17840).
  * interaction.plot(..., xtick = TRUE) misplaced the x-axis line
    (PR#18305).
  * Not strictly fixing a bug, format()ing and print()ing of
    non-finite Date and POSIXt values NaN and +/-Inf no longer show
    as NA but the respective string, e.g., Inf, for consistency with
    numeric vector's behaviour, fulfilling the wish of PR#18308.
  * R CMD check no longer runs test scripts generated from
    corresponding .Rin files twice and now signals an ERROR if
    processing an .Rin script fails.
  * tools::Rd2txt() used for plain-text help pages now renders \hrefs
    (if tools::Rd2txt_options(showURLs = TRUE)) and \urls with
    percent-encoding and standards-compliant delimiting style (angle
    brackets and no URL: prefix).  \email is now rendered with a
    mailto: prefix.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1655985600">- CHANGES IN R 4.2.1:
  NEW FEATURES:
  * New function utils::findCRANmirror() to find out if a CRAN mirror
    has been selected, otherwise fallback to the main site.  This
    behaves in the same way as tools::CRAN_package_db() and is
    intended for packages wishing to access CRAN for purposes other
    than installing packages.
    The need for this was shown by a day when the main CRAN website
    was offline and a dozen or so packages which had its URL
    hardcoded failed their checks.
  INSTALLATION on a UNIX-ALIKE:
  * The libraries searched for by --with-blas (without a value) now
    include BLIS (after OpenBLAS but before ATLAS).  And on macOS,
    the Accelerate framework (after ATLAS).  (This is patterned after
    the AX_BLAS macro from the Autoconf Archive.)
  * The included LAPACK sources have been updated to 3.10.1.
  UTILITIES:
  * The (full path to) the command tidy to be used for HTML
    validation can be set by environment variable R_TIDYCMD.
  * Setting environment variable _R_CHECK_RD_VALIDATE_RD2HTML_ to a
    false value will override R CMD check --as-cran and turn off HTML
    validation.  This provides a way to circumvent a problematic
    tidy.
    The 2006 version that ships with macOS is always skipped.
  C-LEVEL FACILITIES:
  * The undocumented legacy declarations of Sint, Sfloat, SINT_MAX
    and SINT_MIN in header R.h are deprecated.
  BUG FIXES:
  * fisher.test(d) no longer segfaults for "large" d; fixing PR#18336
    by preventing/detecting an integer overflow reliably.
  * tar(., files=*) now produces correctly the warning about invalid
    uid or gid of files, fixing PR#18344, reported by Martin Morgan.
  * tk_choose.files() with multi = FALSE misbehaved on paths
    containing spaces (PR#18334) (regression introduced in R 4.0.0).
  * sort(x, partial = ind, *) now works correctly notably for the
    non-default na.last = FALSE or TRUE, fixing PR#18335 reported by
    James Edwards.
  * Environment variable _R_CHECK_XREFS_REPOSITORIES_ is only used
    for checking .Rd cross-references in R CMD check (as documented)
    and not for other uses looking for a CRAN mirror.
  * The search for a CRAN mirror when checking packages now uses
    getOption("repos") if that specifies a CRAN mirror, even when it
    does not also specify all three Bioconductor repositories (as was
    previously required).
  * The HTML code generated by tools::Rd2HTML() has been improved to
    pass tidy 5.8.0.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1667217600">- CHANGES IN R 4.2.2:
  NEW FEATURES:
  * tools::Rdiff(useDiff = TRUE) checks for the presence of an
    external diff command and switches to useDiff = FALSE if none is
    found.  This allows R CMD Rdiff to always work.
  * On Windows, environment variable R_LIBCURL_SSL_REVOKE_BEST_EFFORT
    can be used to switch to only 'best-effort' SSL certificate
    revocation checks with the default "libcurl" download method.
    This reduces security, but may be needed for downloads to work
    with MITM proxies (PR#18379).
  * (macOS) The run-time check for libraries from XQuartz for X11 and
    Tcl/Tk no longer uses otool from the Apple Developer Tools
    (PR#18400).
  * The LaTeX style for producing the PDF manuals, Rd.sty, now loads
    the standard amsmath, amsfonts and amssymb packages for greater
    coverage of math commands in the Rd \eqn and \deqn macros.  The
    \mathscr LaTeX command is also provided (via the mathrsfs
    package, if available, or the amsfonts bundle otherwise),
    fulfilling the wish of PR#18398.
  * (Windows) The default format of readClipboard() and
    writeClipboard() has been changed to 13 (CF_UNICODETEXT).
  INSTALLATION on a UNIX-ALIKE:
  * The PDF manuals (if built) can be compacted by the new target
    make compact-pdf (at the top level or in directory doc/manual).
  * There is now configure support for LLVM clang 15 on Linux, which
    defaults to position-independent (PIE) executables whereas
    gfortran does not.
  * Many small changes to ease compilation (and suppress warnings)
    with LLVM clang 15.
  BUG FIXES:
  * Rscript -e would fail if stdin were closed (Reported by Henrik
    Bengtsson.)
  * qt(*, log.p=TRUE) in outer tails no longer produces NaN in its
    final steps, thus fixing PR#18360.
  * tools::Rd2latex() now escapes hashes and ampersands when writing
    URLs, fixing LaTeX errors with such URLs in \tabular.
  * When isGeneric(f, fdef=*) is used with mismatching names, the
    warning is better understandable; reported (with fix) in PR#18370
    by Gabe Becker.
  * poly(x, n) now works again (and is now documented) when x is a
    "Date" or "POSIXct" object, or of another class while fulfilling
    mode(x) == "numeric".  This also enables poly(x, *, raw=TRUE) for
    such variables.  Reported by Michael Chirico to R-devel.
  * write.table(), write.csv() and write.csv2() restore their
    numerical precision (internal equivalent of digits = 15) after an
    interrupt (PR#18384).
  * One can now read also byte FF from a clipboard connection
    (PR#18385).
  * source("") and source(character()) now give more helpful error
    messages.
  * R CMD check --as-cran set _R_CHECK_TIMINGS_ too late to have the
    intended effect.
  * as.POSIXlt(x) now also works with very large dates x, fixing
    PR#18401 reported by Hannes M"uhleisen.
  * Files can now be extracted even from very large zip archives
    (PR#18390, thanks to Martin Jakt).
  * Non-finite objects of class "POSIXlt" are now correctly coerced
    to classes "Date" and "POSIXct"; following up on the extension to
    format() them correctly.
  * Added methods for is.finite(), is.infinite() and is.nan() for
    "POSIXlt" date-time objects.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1678881600">- CHANGES IN R 4.2.3:
  C-LEVEL FACILITIES:
  * The definition of DL_FUNC in R_ext/Rdynload.h has been changed to
    be fully C-compliant.  This means that functions loaded _via_ for
    example R_GetCCallable need to be cast to an appropriate type if
    they have any arguments.
  * .Machine has a new element sizeof.time_t to identify old systems
    with a 32-bit type and hence a limited range of date-times (and
    limited support for dates millions of years from present).
  PACKAGE INSTALLATION:
  * (Windows) The default C++ standard had accidentally been left at
    C++11 when it was changed to C++14 on Unix.
  BUG FIXES:
  * As "POSIXlt" objects may be "partially filled" and their list
    components meant to be recycled, length() now is the length of
    the longest component.
  * as.POSIXlt.Date() could underflow for dates in the far past (more
    than half a million years BCE).
  * as.Date.POSIXlt(x) would return "1970-01-01" instead of NA in R
    4.2.2, e.g., for
    x &lt;- as.POSIXlt(c("2019-01-30","2001-1-1"))
    x$mon &lt;- c(0L, NA); as.Date(x)
  * R CMD check failed to apply enabled _R_CHECK_SUGGESTS_ONLY_ to
    examples and vignettes (regression in R 4.2.0).
  * R CMD check did not re-build vignettes in separate processes by
    default (regression in R 4.2.0).
  * Running examples from HTML documentation now restores previous
    knitr settings and options (PR#18420).
  * Quartz: fonts are now located using Core Graphics API instead of
    deprecated ATS which is no longer supported in the macOS 13 SDK
    (PR#18426).  This also addresses an issue where the currently
    used font in the Quartz device context was not correctly
    retained.
  * (Windows) Math symbols in text drawing functions are again
    rendered correctly (PR#18440).  This fixes a regression in R
    4.2.1 caused by a fix in PR#18382 which uncovered an issue in
    GraphApp due to which the symbol charset was not used with TT
    Symbol font face.
  * (Windows) Installing a package with a src/Makefile.{win,ucrt}
    file includes ~/.R/Makevars.win64 in the search for user
    makevars, as documented in "R Installation and Administration"
    and done for packages with a src/Makevars.{win,ucrt} file.
  * format(&lt;POSIXlt_w/_unbalanced_sec&gt;, "....%OS&lt;n&gt;") with n &gt; 0 no
    longer accidentally uses the unbalanced seconds, thanks to
    Suharto Anggono's report (including patch) in PR#18448.
  * solve.default(a, b) works around issues with some versions of
    LAPACK when a contains NA or NaN values.
  * When UseMethod() cannot dispatch, it no longer segfaults
    producing the error message in case of a long class(), thanks to
    Joris Vankerschaver's report (including patch) in PR#18447.
  * When example(foo, ..) produces graphics on an interactive device
    it needs to open itself, it now leaves devAskNewPage() unchanged
    even when it was FALSE, thus fixing a 14 years old '&lt;FIXME&gt;'.
  * packageDescription() again catches errors from encoding
    conversions. This also fixes broken packageVersion() in C locale
    on systems where iconv does not support transliteration.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1681128000">- add patch to build with libcurl &gt;= 8</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1682078400">- CHANGES IN R 4.3.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Calling &amp;&amp; or || with LHS or (if evaluated) RHS of length greater
    than one is now always an error, with a report of the form
    'length = 4' in coercion to 'logical(1)'
    Environment variable _R_CHECK_LENGTH_1_LOGIC2_ no longer has any
    effect.
  NEW FEATURES:
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.10.1.  (This caused some platform-dependent
    changes to package check output.)  And then to the sources from
    LAPACK version 3.11.0 (with changes only to double complex
    subroutines).
  * The included LAPACK sources have been updated to include the four
    Fortran 90 routines rather than their Fortran 77 predecessors.
    This may give some different signs in SVDs or
    eigendecompositions..  (This completes the transition to LAPACK
    3.10.x begun in R 4.2.0.)
  * The LAPACK sources have been updated to version 3.11.0.  (No new
    subroutines have been added, so this almost entirely bug fixes:
    Those fixes do affect some computations with NaNs, including R's
    NA.)
  * The parser now signals _classed_ errors, notably in case of the
    pipe operator |&gt;.  The error object and message now give line and
    column numbers, mostly as proposed and provided by Duncan Murdoch
    in PR#18328.
  * toeplitz() is now generalized for asymmetric cases, with a
    toeplitz2() variant.
  * xy.coords() and xyz.coords() and consequently, e.g., plot(x,y,
    log = "y") now signal a _classed_ warning about negative values
    of y (where log(.) is NA).  Such a warning can be specifically
    suppressed or caught otherwise.
  * Regular expression functions now check more thoroughly whether
    their inputs are valid strings (in their encoding, e.g. in
    UTF-8).
  * The performance of grep(), sub(), gsub() and strsplit() has been
    improved, particularly with perl = TRUE and fixed = TRUE.  Use of
    useBytes = TRUE for performance reasons should no longer be
    needed and is discouraged: it may lead to incorrect results.
  * apropos() gains an argument dot_internals which is used by the
    completion (help(rcompgen)) engine to also see base internals
    such as .POSIXct().
  * Support in tools::Rdiff() for comparing uncompressed PDF files is
    further reduced - see its help page.
  * qqplot(x, y, ...) gains conf.level and conf.args arguments for
    computing and plotting a confidence band for the treatment
    function transforming the distribution of x into the distribution
    of y (Switzer, 1976, _Biometrika_). Contributed by Torsten
    Hothorn.
  * Performance of package_dependencies() has been improved for cases
    when the number of dependencies is large.
  * Strings newly created by gsub(), sub() and strsplit(), when any
    of the inputs is marked as "bytes", are also marked as "bytes".
    This reduces the risk of creating invalid strings and accidental
    substitution of bytes deemed invalid.
  * Support for readLines(encoding = "bytes") has been added to allow
    processing special text files byte-by-byte, without creating
    invalid strings.
  * iconv(from = "") now takes into account any declared encoding of
    the input elements and uses it in preference to the native
    encoding.  This reduces the risk of accidental creation of
    invalid strings, particularly when different elements of the
    input have different encoding (including "bytes").
  * Package repositories in getOption("repos") are now initialized
    from the repositories file when utils is loaded (if not already
    set, e.g., in .Rprofile).  (From a report and patch proposal by
    Gabriel Becker in PR#18405.)
  * compactPDF() gets a verbose option.
  * type.convert() and hence read.table() get new option tryLogical =
    TRUE with back compatible default.  When set to false, converts
    "F" or "T" columns to character.
  * Added new unit prefixes "R" and "Q" for abbreviating
    (unrealistically large) sizes beyond 10^{27} in standard = "SI",
    thanks to Henrik Bengtsson's PR#18435.
  * as.data.frame()'s default method now also works fine with atomic
    objects inheriting from classes such as "roman", "octmode" and
    "hexmode", such fulfilling the wish of PR#18421, by Benjamin
    Feakins.
  * The as.data.frame.vector() utility now errors for wrong-length
    row.names.  It warned for almost six years, with "Will be an
    error!".
  * sessionInfo() now also contains La_version() and reports codepage
    and timezone when relevant, in both print() and toLatex() methods
    which also get new option tzone for displaying timezone
    information when locale = FALSE.
  * New function R_compiled_by() reports the C and Fortran compilers
    used to build R, if known.
  * predict(&lt;lm&gt;, newdata = *) no longer unnecessarily creates an
    offset of all 0s.
  * solve() for complex inputs now uses argument tol and by default
    checks for 'computational singularity' (as it long has done for
    numeric inputs).
  * predict(&lt;rank-deficient lm&gt;, newdata=*) now obeys a new argument
    rankdeficient, with new default "warnif", warning only if there
    are non-estimable cases in newdata.  Other options include
    rankdeficient = "NA", predicting NA for non-estimable newdata
    cases.  This addresses PR#15072 by Russ Lenth and is based on his
    original proposal and discussions in PR#16158 also by David Firth
    and Elin Waring.  Still somewhat experimental.
  * Rgui console implementation now works better with the NVDA screen
    reader when the full blinking cursor is selected.  The underlying
    improvements in cursor handling may help also other screen
    readers on Windows.
  * The drop-field control in GraphApp can now be left with the TAB
    key and all controls can be navigated in the reverse order using
    the Shift+TAB key, improving accessibility of the Rgui
    configuration editor.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now fully accurate
    (instead of to "only" minimally five digits).
  * demo(error.catching) now also shows off withWarnings() and
    tryCatchWEMs().
  * As an experimental feature the placeholder _ can now also be used
    in the rhs of a forward pipe |&gt; expression as the first argument
    in an extraction call, such as _$coef. More generally, it can be
    used as the head of a chain of extractions, such as _$coef[[2]].
  * Spaces in the environment variable used to choose the R session's
    temporary directory (TMPDIR, TMP and TEMP are tried in turn) are
    now fatal.  (On Windows the 'short path' version of the path is
    tried and used if that does not contain a space.)
  * all.equal.numeric() gets a new optional switch giveErr to return
    the numeric error as attribute.  Relatedly,
    stopifnot(all.equal&lt;some&gt;(a, b, ..)) is as "smart" now, as
    stopifnot(all.equal(....)) has been already, thus allowing
    customized all.equal&lt;Some&gt;() wrappers.
  * R on Windows is now able to work with path names longer than 260
    characters when these are enabled in the system (requires at
    least Windows 10 version 1607).  Packages should be updated to
    work with long paths as well, instead of assuming PATH_MAX to be
    the maximum length.  Custom front-ends and applications embedding
    R need to update their manifests if they wish to allow this
    feature.  See
    &lt;https://blog.r-project.org/2023/03/07/path-length-limit-on-windows&gt;
    for more information.
  * 'Object not found' and 'Missing argument' errors now give a more
    accurate error context. Patch provided by Lionel Henry in
    PR#18241.
  * The @ operator is now an S3 generic. Based on contributions by
    Tomasz Kalinowski in PR#18482.
  * New generic chooseOpsMethod() provides a mechanism for objects to
    resolve cases where two suitable methods are found for an Ops
    Group Generic. This supports experimenting with alternative
    object systems. Based on contributions by Tomasz Kalinowski in
    PR#18484.
  * inherits(x, what) now accepts values other than a simple
    character vector for argument what. A new generic, nameOfClass(),
    is called to resolve the class name from what. This supports
    experimenting with alternative object systems. Based on
    contributions by Tomasz Kalinowski in PR#18485.
  * Detection of BLAS/LAPACK in use (sessionInfo()) with FlexiBLAS
    now reports the current backend.
  * The "data.frame" method for subset() now warns about extraneous
    arguments, typically catching the use of = instead of == in the
    subset expression.
  * Calling a:b when numeric a or b is longer than one may now be
    made into an error by setting environment variable
    _R_CHECK_LENGTH_COLON_ to a true value, along the proposal in
    PR#18419 by Henrik Bengtsson.
  * density(x, weights = *) now warns if automatic bandwidth
    selection happens without using weights; new optional warnWbw may
    suppress the warning.  Prompted by Christoph Dalitz' PR#18490 and
    its discussants.
  * rm(list = *) is faster and more readable thanks to Kevin Ushey's
    PR#18492.
  * The plot.lm() function no longer produces a normal Q-Q plot for
    GLMs. Instead it plots a half-normal Q-Q plot of the absolute
    value of the standardized deviance residuals.
  * The print() method for class "summary.glm" no longer shows
    summary statistics for the deviance residuals by default.  Its
    optional argument show.residuals can be used to show them if
    required.
  * The tapply() function now accepts a data frame as its X argument,
    and allows INDEX to be a formula in that case. by.data.frame()
    similarly allows INDICES to be a formula.
  * The performance of df[j] &lt;- value (including for missing j) and
    write.table(df) has been improved for data frames df with a large
    number of columns.  (Thanks to Gabriel Becker's PR#18500,
    PR#18503 and discussants, prompted by a report from Toby Dylan
    Hocking on the R-devel mailing list.)
  * The matrix multiply operator %*% is now an S3 generic, belonging
    to new group generic matrixOps.  From Tomasz Kalinowski's
    contribution in PR#18483.
  * New function array2DF() to convert arrays to data frames,
    particularly useful for the list arrays created by tapply().
  DATES and TIMES:
  * On platforms where (non-UTC) datetimes before 1902 (or before
    1900 as with system functions on recent macOS) are guessed by
    extrapolating time zones from 1902-2037, there is a warning at
    the first use of extrapolation in a session.  (As all time zones
    post 2037 are extrapolation, we do not warn on those.)
  * (Platforms using --with-internal-tzone, including Windows and by
    default macOS). How years are printed in dates or date-times can
    be controlled by environment variable R_PAD_YEARS_BY_ZERO.  The
    default remains to pad to 4 digits by zeroes, but setting value
    no gives no padding (as used by default by glibc).
  * strftime() tries harder to determine the offset for the "%z"
    format, and succeeds on the mainstream R platforms.
  * strftime() has a limit of 2048 bytes on the string produced -
    attempting to exceed this is an error.  (Previously it silently
    truncated at 255 bytes.)
  * sessionInfo() records (and by default prints) the system time
    zone as part of the locale information.  Also, the source
    (system/internal) of the date-time conversion and printing
    functions.
  * Objects of class "POSIXlt" created in this version of R always
    have 11 components: component zone is always set, and component
    gmtoff is set for times in UTC and usually set on the (almost
    all) platforms which have C-level support, otherwise is NA.
  * There are comprehensive validity checks on the structure of
    objects of class "POSIXlt" when converting (including formatting
    and printing).  (This avoids mis-conversions of hand-crafted
    objects.)
  * There is some support for using the native date-time routines on
    macOS: this is only viable on recent versions (e.g. 12.6 and 13)
    and does get wrong some historical changes (before 1900, during
    WWII).  Use of --with-internal-tzone remains the default.
  * as.POSIXct(&lt;numeric&gt;) and as.POSIXlt(.) (without specifying
    origin) now work.  So does as.Date(&lt;numeric&gt;).
  * as.Date.POSIXct(., tz) now treats several tz values, notably
    "GMT" as equivalent to "UTC", proposed and improved by Michael
    Chirico and Joshua Ulrich in PR#17674.
  * Experimental balancePOSIXlt() utility allows using "ragged" and
    or out-of-range "POSIXlt" objects more correctly, e.g., in
    subsetting and subassignments.  Such objects are now documented.
    More experimentally, a "POSIXlt" object may have an attribute
    "balanced" indicating if it is known to be filled or fully
    balanced.
  * Functions axis.Date() and axis.POSIXct() are rewritten to gain
    better default tick locations and better default formats by using
    prettyDate(). Thanks to Swetlana Herbrandt.
  * The mapping of Windows' names for time zones to IANA's 'Olson'
    names has been updated.  When ICU is available (it is by
    default), it is used to get a mapping for the current region set
    in Windows.  This can be overridden by setting environment
    variable TZ to the desired Olson name - see OlsonNames() for
    those currently available.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 16
    and so packages that provide graphics devices should be
    reinstalled.
  * The grDevices and grid packages have new functions for rendering
    typeset glyphs, primarily: grDevices::glyphInfo() and
    grid::grid.glyph().
    Rendering of typeset glyphs is only supported so far on the
    Cairo-based graphics devices and on the pdf() and quartz()
    devices.
  * The defined behaviour for "clear" and "source" compositing
    operators (via grid::grid.group()) has been changed (to align
    better with simple interpretation of original Porter-Duff
    definitions).
  * Support for gradients, patterns, clipping paths, masks, groups,
    compositing operators, and affine transformations has been added
    to the quartz() device.
  INSTALLATION on a UNIX-ALIKE:
  * A system installation of generic LAPACK 3.10.0 or later will be
    preferred to the version in the R sources.
    configure option --with-lapack=no (equivalently --without-lapack)
    forces compilation of the internal LAPACK sources.
    If --with-lapack is not specified, a system liblapack is looked
    for and used if it reports version 3.10.0 or later and does not
    contain BLAS routines.
    Packages using LAPACK will need to be reinstalled if this changes
    to using an external library.
  * On aarch64 Linux platforms using GCC, configure now defaults to
  - fPIC (instead of -fpic), as desired in PR#18326.
  * configure now checks conversion of datetimes between POSIXlt and
    POSIXct around year 2020.  Failure (which has been seen on
    platforms missing tzdata) is fatal.
  * If configure option --with-valgrind-instrumentation is given
    value 1 or 2, option --with-system-valgrind-headers is now the
    default and ignored (with a warning).  It is highly recommended
    that the system headers are installed alongside valgrind: they
    are part of its packaging on some Linux distributions and
    packaged separately (e.g. in the valgrind-devel RPM) on others.
    configure will give a warning if they are not found.
    The system headers will be required in a future release of R to
    build with valgrind instrumentation.
  * libcurl 8.x is now accepted by configure: despite a change in
    major version number it changes neither API nor ABI.
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools43, an update of the Rtools42 toolchain.  It is
    based on gcc 12 and newer versions of MinGW-W64, binutils and
    libraries.  At this time R-devel can still be built using
    Rtools42 without changes, but when R-devel is installed via the
    installer, it will by default look for Rtools43.
  * Old make targets rsync-extsoft and 32-bit ones that are no longer
    needed have been removed.
  * Default builds (including for packages) no longer select C99.
    Thus the C standard used is the default for the compiler, which
    for the toolchain in Rtools43 is C17.  (This is consistent with
    Unix builds.)
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++17 where
    available (which it is on all currently checked platforms): if
    not C++14 or C++11 is used if available otherwise C++ is not
    supported.
  * USE_FC_LEN_T is the default: this uses the correct
    (compiler-dependent) prototypes for Fortran BLAS/LAPACK routines
    called from C/C++, and requires adjustment of many such calls -
    see 'Writing R Extensions' SS6.6.1.
  * There is initial support for C++23 as several compilers are now
    supporting -std=c++23 or -std=c++2b or similar.  As for C++20,
    there no additional configure checks for C++23 features beyond a
    check that the compiler reports a __cplusplus value greater than
    that in the C++20 standard.  C++ feature tests should be used.
  * There is support for a package to indicate the version of the C
    standard which should be used to compile it, and for the
    installing user to specify this.  In most cases R defaults to the
    C compiler's default standard which is C17 (a `bug-fix' of C11) -
    earlier versions of R or compilers may have defaulted to C99.
    Current options are:
    USE_C17 Use a standard that is at most C17.  The intention is to
    allow legacy packages to still be installed when later C
    standards become the default, including packages using new
    keywords as identifiers or with K&amp;R-style function
    declarations.  This will use C17 if available, falling back
    to C11.
    USE_C90 Use the C90 (aka C89) standard.  (As that standard did
    not require compilers to identify that version, all we can
    verify is that the compiler does not claim to be using a
    later standard.  It may accept C99 features - for example
    clang accepts // to make comments.)
    USE_C99 Use the C99 standard. This should be rarely needed - it
    avoids the few new features of C11/C17 which can be useful if
    a package assumes them if C17 is specified and they are not
    implemented.
    USE_C23 Use C23 (or in future, later).  Compiler/library support
    for C23 is still being implemented, but LLVM clang from
    15.0.0 and the upcoming GCC 13 have quite extensive support.
    These can be specified as part of the SystemRequirements field in
    the package's DESCRIPTION file or _via_ options --use-C17 and so
    on of R CMD INSTALL and R CMD SHLIB.
    For further details see "Writing R Extensions" SS1.2.5.
  * (Windows) A src/Makefile.ucrt or src/Makefile.win file is now
    included after R_HOME/etcR_ARCH/Makeconf and so no longer needs
    to include that file itself.  Installation of a package with such
    a file now uses a site Makevars file in the same way as a package
    with a src/Makevars.win file would.
  * configure is now passed crucial variables such as CC and CFLAGS
    in its environment, as many packages were not setting them (as
    documented in 'Writing R Extensions' SS1.2).
    This has most effect where configure is used to compile parts of
    the package - most often by cmake or libtool which obfuscate the
    actual compile commands used.
    Also used for configure.win and configure.ucrt on Windows.
  FORTRAN FLAGS:
  * The flag -fno-optimize-sibling-calls is no longer forced for
    gfortran 7 and later.  It should no longer be needed now using
    'hidden' character-length arguments when calling BLAS/LAPACK
    routines from C/C++ is the default even for packages.  (Unless
    perhaps packages call Fortran code from C/C++ without using R's
    headers and without allowing for these arguments.)
  C-LEVEL FACILITIES:
  * The deprecated S-compatibility macros DOUBLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * The deprecated legacy typedefs of Sint and Sfloat in header R.h
    are no longer defined, and that header no longer includes header
    limits.h from C nor climits from C++.
  * New macro CAD5R() is provided in Rinternals.h and used in a few
    places in the R sources.
  * ALTREP now supports VECSXP vectors. Contributed by Gabor Csardi
    in PR#17620.
  * The Rcomplex definition (in header R_ext/Complex.h) has been
    extended to prevent possible mis-compilation when interfacing
    with Fortran (PR#18430).  The new definition causes compiler
    warnings with static initializers such as {1, 2}, which can be
    changed to {.r=1, .i=2}.
    Using the new definition from C++ depends on compiler extensions
    supporting C features that have not been incorporated into the
    C++ standards but are available in g++ and clang++: this may
    result in C++ compiler warnings but these have been worked around
    for recent versions of common compilers (GCC, Apple/LLVM clang,
    Intel).
    It is intended to change the inclusion of header R_ext/Complex.h
    by other R headers, so C/C++ code files which make use of
    Rcomplex should include that header explicitly.
  UTILITIES:
  * R CMD check does more checking of package .Rd files, warning
    about invalid email addresses and (some) invalid URIs and noting
    empty \item labels in description lists.
  * R CMD check now also reports problems when reading package news
    in md (file NEWS.md) and (optionally) plain text (file NEWS)
    formats.
  * _R_CHECK_TIMINGS_ defaults to a value from the environment even
    for R CMD check --as-cran; this allows for exceptionally fast or
    slow platforms.
    It now applies to checking PDF and HTML versions of the manuals,
    and 'checking CRAN incoming feasibility'.
  * R CMD check can optionally (but included in --as-cran) check
    whether HTML math rendering _via_ KaTeX works for the package .Rd
    files.
  * Non-interactive debugger invocations can be trapped by setting
    the environment variable _R_CHECK_BROWSER_NONINTERACTIVE_ to a
    true value.  This is enabled by R CMD check --as-cran to detect
    the use of leftover browser() statements in the package.
  * The use of sprintf and vsprintf from C/C++ has been deprecated in
    macOS 13 and is a known security risk.  R CMD check now reports
    (on all platforms) if their use is found in compiled code:
    replace by snprintf or vsnprintf respectively. [*NB:* whether
    such calls get compiled into the package is platform-dependent.]
  * Where recorded at installation, R CMD check reports the C and
    Fortran compilers used to build R.
    It reports the OS in use (if known, as given by osVersion) as
    well as that R was built for.
    It notes if a C++ standard was specified which is older than the
    current default: many packages have used C++11 to mean 'not
    C++98' - as C++11 is the minimum supported since R 4.0.0, that
    specification can probably be removed.
  * R CMD INSTALL reports the compilers (and on macOS, the SDK) used,
    and this is copied to the output of R CMD check.
    Where a C++ standard is specified, it is reported.
  * R CMD check's 'checking compilation flags in Makevars' has been
    relaxed to accept the use of flags such as -std=f2008 in
    PKG_FFLAGS.
  * tools::buildVignettes() has a new argument skip, which is used by
    R CMD check to skip (and note) vignettes with unavailable
    \VignetteDepends (PR#18318).
  * New generic .AtNames() added to enable class-specific completions
    after @. The formerly internal function findMatches() is now
    exported, mainly for use in methods for .DollarNames() and
    .AtNames().
  DEPRECATED AND DEFUNCT:
  * default.stringsAsFactors() is defunct.
  * Calling as.data.frame.&lt;class&gt;() directly (for 12 atomic classes)
    is going to be formally deprecated, currently activated by
    setting the environment variable
    _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ to non-empty, which also
    happens in R CMD check --as-cran.
  BUG FIXES:
  * Hashed environments with sizes less than 5 can now grow.
    (Reported to R-devel by Duncan Garmonsway.)
  * as.character(&lt;Rd&gt;, deparse = TRUE) failed to re-escape curly
    braces in LaTeX-like text.  (Reported by Hadley Wickham in
    PR#18324.)
  * library() now passes its lib.loc argument when requiring Depends
    packages; reported (with fix) in PR#18331 by Mikael Jagan.
  * R CMD Stangle: improved message about 'Output' files.
  * head(x, n) and tail(x, n) now signal an error if n is not
    numeric, instead of incidentally "working" sometimes returning
    all of x.  Reported and discussed by Colin Fay, in PR#18357.
  * The "lm" method for summary() now gives the correct F-statistic
    when the model contains an offset.  Reported in PR#18008.
  * C() and `contrasts&lt;-`() now preserve factor level names when
    given a function object (as opposed a function name which did
    preserve names). Reported in PR#17616.
  * c(a = 1, 2)[[]] no longer matches 2 but rather signals a
    _classed_ error.  Reported and analysed by Davis Vaughan in
    PR#18367, a duplicate of PR#18004, by Jan Meis et al.  For
    consistency, NULL[[]] is also erroneous now.  x[[]] &lt;- v gives an
    error of the same class "MissingSubscriptError".
  * The relist() function of utils now supports NULL elements in the
    skeleton (PR#15854).
  * ordered(levels = *) (missing x) now works analogously to factor(,
    ordered=TRUE); reported (with fix) by Achim Zeileis in PR#18389.
  * User-defined Rd macro definitions can now span multiple lines,
    thanks to a patch from Duncan Murdoch. Previously, the Rd parser
    silently ignored everything after the first line.
  * Plain-text help (tools::Rd2txt()) now preserves an initial blank
    line for text following description list items.
  * tools::Rd2HTML() and tools::Rd2latex() no longer split \arguments
    and \value lists at Rd comments.
  * tools::Rd2latex() now correctly handles optional text outside
    \items of argument lists as well as bracketed text at the
    beginning of sections, e.g., \value{[NULL]}.
  * as.character(&lt;POSIXt&gt;) now behaves more in line with the methods
    for atomic vectors such as numbers, and is no longer influenced
    by options().  Ditto for as.character(&lt;Date&gt;).  The
    as.character() method gets arguments digits and OutDec with
    defaults _not_ depending on options().  Use of as.character(*,
    format = .) now warns.
  * Similarly, the as.character.hexmode() and *.octmode() methods
    also behave as good citizen methods and back compatibility option
    keepStr = TRUE.
  * The as.POSIXlt(&lt;POSIXlt&gt;) and as.POSIXct(&lt;POSIXct&gt;) default
    methods now do obey their tz argument, also in this case.
  * as.POSIXlt(&lt;Date&gt;) now does apply a tz (time zone) argument, as
    does as.POSIXct(); partly suggested by Roland Fuss on the R-devel
    mailing list.
  * as.Date.POSIXlt(x) now also works when the list components are of
    unequal length, aka "partially filled" or "ragged".
  * expand.model.frame() looked up variables in the wrong environment
    when applied to models fitted without data.  Reported in
    PR#18414.
  * time() now (also) uses the ts.eps = getOption("ts.eps") argument
    and thus by default rounds values very close to the start (or
    end) of a year.  Based on a proposal by Andre"i V. Kostyrka on
    R-help.
  * Printing of a factanal() result with just one factor and sort =
    TRUE now works regularly, fixing PR#17863 by Timothy Bates,
    thanks to the 'R Contributors' working group.
  * Printing 0-length objects of class "factor", "roman", "hexmode",
    "octmode", "person", "bibentry", or "citation" now prints
    something better, one of which fixes PR#18422, reported by
    Benjamin Feakins.
  * Sys.timezone() queries timedatectl only if systemd is loaded;
    addressing a report by Jan Gorecki in PR#17421.
  * The formula method of cor.test() had scoping problems when
    environment(formula) was not the calling environment; reported
    with a patch proposal by Mao Kobayashi in PR#18439.
  * attach() of an environment with active bindings now preserves the
    active bindings.  Reported by Kevin Ushey in PR#18425.
  * BLAS detection now works also with system-provided libraries not
    available as regular files.  This fixes detection of the
    Accelerate framework on macOS since Big Sur.  Reported by David
    Novgorodsky.
  * download.file() gives a helpful error message in case of an
    invalid download.file.method option, thanks to Colin Fay's report
    in PR#18455.
  * Sporadic crashes of Rterm when using completion have been fixed.
  * Rprof() is now more reliable.  A livelock in thread
    initialization with too short sampling interval has been fixed on
    macOS.  A deadlock in using the C runtime has been fixed on
    Windows.  A potential deadlock has been prevented on Unix.
  * Cursor placement in Rgui now works even after a fixed-width font
    is selected.
  * Mandatory options (options()) are now set on startup so that
    saving and restoring them always works (PR#18372).
  * Package installation, R CMD INSTALL or install.packages(*), now
    parses each of the &lt;pkg&gt;/R/*.R files individually instead of
    first concatenating and then parse()ing the large resulting file.
    This allows parser or syntax errors to be diagnosed with correct
    file names and line numbers, thanks to Simon Dedman's report and
    Bill Dunlap's patch in PR#17859.
    This _does_ require syntactically self contained R source files
    now, fixing another inadvertent bug.
  * predict.lm(&lt;model with offset&gt;) now finds the offset in the
    correct environment, thanks to Andr'e Gillibert's report and patch
    in PR#18456.
  * getInitial(&lt;formula&gt;) now finds the selfStart model in the
    correct environment.  (Reported by Ivan Krylov in PR#18368.)
  * Fix for possible segfault when using recently-added graphics
    features, such as gradients, clipping paths, masks, and groups
    with pdf(file=NULL).
  * class(m) &lt;- class(m) no longer changes a matrix m by adding a
    class _attribute_.
  * packageDate(pkg) now only warns once if there is no pkg.
  * When ts() creates a multivariate time series, "mts", it also
    inherits from "array" now, and is.mts() is documented _and_
    stricter.
  * Rd2txt() now preserves line breaks of \verb Rd content and from
    duplicated \cr.  The former also fixes the rendering of verbatim
    output from Rd \Sexpr in plain-text help.
  * uniroot(f, interval) should no longer wrongly converge _outside_
    the interval in some cases where abs(f(x)) == Inf for an x at the
    interval boundary, thanks to posts by Ben Bolker and Serguei
    Sokol on R-devel.
  * Vectorized alpha handling in palette functions such as in gray(),
    rainbow(), or hcl.colors() works correctly now, thanks to Achim
    Zeileis' report and patch in PR#18476.
  * Formatting and print()ing of bibentry objects has dropped the
    deprecated citation.bibtex.max argument, such that the bibtex
    argument's default for print.bibentry() depends directly on the
    citation.bibtex.max option, whereas in format.bibentry() the
    option no longer applies.
  * Attempting to use a character string naming a foreign function
    entry point in a foreign function call in a package will now
    signal an error if the packages has called R_forceSymbols to
    specify that symbols must be used.
  * An error in table() could permanently set options(warn=2)
    promoting all subsequent warnings to errors.
  * The sigma() function gave misleading results for binary GLMs.  A
    new method for objects of class "glm" returns the square root of
    the estimate of the dispersion parameter using the same
    calculation as summary.glm().
  * bs() and ns() in the (typical) case of automatic knot
    construction, when some of the supposedly inner knots coincide
    with boundary knots, now moves them inside (with a warning),
    building on PR#18442 by Ben Bolker.
  * R CMD on Windows now skips the site profile with --no-site-file
    and --vanilla even when R_PROFILE is set (PR#18512, from Kevin
    Ushey).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1686916800">- CHANGES IN R 4.3.1:
  C-LEVEL FACILITIES:
  * The C-level API version of R's integrate(), Rdqags() in Applic.h,
    now returns the correct number of integrand evaluations neval,
    fixing PR#18515 reported and diagnosed by Stephen Wade.
  * The C prototypes for LAPACK calls dspgv and dtptrs in
    R_exts/Lapack.h had one too many and one too few character length
    arguments - but this has not caused any known issues. To get the
    corrected prototypes, include
    [#]include &lt;Rconfig.h&gt; // for PR18534fixed
    [#]ifdef PR18534fixed
    [#] define usePR18534fix 1
    [#]endif
    [#]include &lt;R_exts/Lapack.h&gt;
    in your C/C++ code (PR#18534).
  INSTALLATION:
  * Many of the checks of esoteric Internet operations and those
    using unreliable external sites have been moved to a new target
    that is not run by default and primarily intended for the core
    developers.  To run them use
    cd tests; make test-Internet-dev
  BUG FIXES:
  * .S3methods(), typically called from methods(), again marks
    methods from package base as visible.
    Also, the visibility of non-base methods is again determined by
    the method's presence in search().
  * tools::Rdiff() is now more robust against invalid strings, fixing
    installation tests on Windows without Rtools installed
    (PR#18530).
  * Fix (new) bug in hcl.colors(2, *), by Achim Zeileis (PR#18523).
  * head(., &lt;illegal&gt;) and tail(..) now produce more useful "Error in
    ...." error messages, fixing PR#18362.
  * Package code syntax on Windows is checked in UTF-8 when UTF-8 is
    the native encoding.
  * na.contiguous(x) now also returns the first run, when it is at
    the beginning and there is a later one of the same length;
    reported to R-devel, including a fix, by Georgi Boshnakov.
    Further, by default, it modifies only an existing attr(*,"tsp")
    but otherwise no longer sets one.
  * chol(&lt;not pos.def&gt;, pivot = &lt;T|F&gt;) now gives a correct error or
    warning message (depending on pivot), thanks to Mikael Jagan's
    (PR#18541).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1699012800">- CHANGES IN R 4.3.2:
  NEW FEATURES:
  * The default initialization of the "repos" option from the
    repositories file at startup can be skipped by setting
    environment variable R_REPOSITORIES to NULL such that
    getOption("repos") is empty if not set elsewhere.
  * qr.X() is now an implicit S4 generic in methods.
  * iconv(to = "ASCII//TRANSLIT") is emulated using substitution on
    platforms which do not support it (notably Alpine Linux).  This
    should give a human-readable conversion in ASCII on all platforms
    (rather than NA_character_).
  * trans3d() gains options continuous and verbose addressing the
    problem of possible "wrap around" when projecting too long
    curves, as reported by Achim Zeileis in PR#18537.
  * tools::showNonASCII() has been rewritten to work better on macOS
    14 (which has a changed implementation of iconv()).
  * tiff(type = "quartz") (the default on macOS) now warns if
    compression is specified: it continues to be ignored.
  INSTALLATION on a UNIX-ALIKE:
  * There is some support for building with Intel's LLVM-based
    compilers on x86_64 Linux, such as (C) icx, (C++) ipcx and
    (Fortran) ifx from oneAPI 2023.x.y.
  * There is support for using LLVM's flang-new as the Fortran
    compiler from LLVM 16.0.x (preferably 17.0.0 or later).
  UTILITIES:
  * R CMD check reports the use of the Fortran 90 random number
    generator RANDOM_NUMBER() and the subroutines to initialize it.
    'Writing R Extensions' has example code to use R's RNGs from
    Fortran.
  BUG FIXES:
  * substr(x, n, L) &lt;- cc now works (more) correctly for multibyte
    UTF-8 strings x when L &gt; nchar(x), thanks to a report and patch
    by 'Architect 95'.
  * contrib.url(character()) now returns 0-length character() as
    documented, which also avoids spurious warnings from
    available.packages() et al. in the edge case of an empty vector
    of repository URLs.
  * readChar(., 4e8) no longer fails, thanks to Kodi Arfer's report
    (PR#18557).
  * lapply(&lt;list&gt;, as.data.frame) no longer warns falsely for some
    base vector components.
  * Communication between parent and child processes in the multicore
    part of parallel could fail on platforms that do not support an
    arbitrarily large payload in system functions read()/write() on
    pipes (seen on macOS where a restriction to INT_MAX bytes is
    documented, without doing a partial read unlike Linux). The
    payload is now split into 1Gb chunks to avoid that problem.
    (PR#18571)
  * qqplot(x,y, conf.level=.) gives better confidence bounds when
    length(x) != length(y), thanks to Alexander Ploner's report and
    patch proposal (PR#18557).
  * norm(&lt;0-length&gt;, "2") now gives zero instead of an error, as all
    the other norm types, thanks to Mikael Jagan's PR#18542.
  * Build-stage Rd macros \packageAuthor and \packageMaintainer now
    process Authors@R, fixing NA results when the package DESCRIPTION
    omits Author and Maintainer fields.
  * Formatting and printing complex numbers could give things like
    0.1683-0i because of rounding error: -0i is now replaced by +0i.
  * postscript() refused to accept a title comment containing the
    letter "W" (PR#18599).
  * isoreg(c(1,Inf)) signals an error instead of segfaulting, fixing
    PR#18603.
  * tiff(type = "Xlib") was only outputting the last page of
    multi-page plots.
  * tools::latexToUtf8() again knows about \~{n} and other letters
    with tilde, fixing a regression in R 4.3.0, and about \^{i} as an
    alternative to \^{\i} (similarly with other accents).
    Furthermore, LaTeX codes for accented I letters are now correctly
    converted, also fixing related mistakes in
    tools::encoded_text_to_latex().
  * tar(*, tar = "internal") no longer creates out-of-spec tar files
    in the very rare case of user or group names longer than 32
    bytes, fixing PR#17871 with thanks to Ivan Krylov.
  * When using the "internal" timezone datetime code, adding a
    fraction of a second no longer adds one second, fixing PR#16856
    from a patch by Ivan Krylov.
  * tools::checkRd() no longer produces spurious notes about
    "unnecessary braces" from multi-line Rd results of \Sexpr macros.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1709208000">- CHANGES IN R 4.3.3:
  NEW FEATURES:
  * iconv() now fixes up variant encoding names such as "utf8"
    case-insensitively.
  DEPRECATED AND DEFUNCT:
  * The legacy encoding = "MacRoman" is deprecated in pdf() and
    postscript(): support was incomplete in earlier versions of R.
  BUG FIXES:
  * Arguments are now properly forwarded to methods on S4 generics
    with ... in the middle of their formal arguments. This was broken
    for the case when a method introduced an argument but did not
    include ... in its own formals. Thanks to Herv'e Pag`es for the
    report PR#18538.
  * Some invalid file arguments to pictex(), postscript() and xfig()
    opened a file called NA rather than throw an error.  These
    included postscript(NULL) (which some people expected to work
    like pdf(NULL)).
  * Passing filename = NA to svg(), cairo_pdf(), cairo_ps() or the
    Cairo-based bitmap devices opened a file called NA: it now throws
    an error.
  * quartz(file = NA) opened a file called NA, including when used as
    a Quartz-based bitmap device.  It now gives an error.
  * rank(&lt;long vector&gt;) now works, fixing PR#18617, thanks to Ilia
    Kats.
  * seq.int() did not adequately check its length.out argument.
  * match(&lt;POSIXct&gt;, .) is correct again for differing time zones,
    ditto for "POSIXlt", fixing PR#18618 reported by Bastian Klein.
  * drop.terms(*, dropx = &lt;0-length&gt;) now works, fixing PR#18563 as
    proposed by Mikael Jagan.
  * drop.terms(*) keeps + offset(.) terms when it should, PR#18565,
    and drop.terms() no longer makes up a response, PR#18566, fixing
    both bugs thanks to Mikael Jagan.
  * getS3method("t", "test") no longer finds the t.test() function,
    fixing PR#18627.
  * pdf() and postscript() support for the documented Adobe encodings
    "Greek" and "Cyrilllic" was missing (although the corresponding
    Windows' codepages could be used).
  * Computations of glyph metric information for pdf() and
    postscript() did not take into account that transliteration could
    replace one character by two or more (only seen on macOS 14) and
    typically warned that the information was not known.
  * rank(x) no longer overflows during integer addition, when
    computing rank average for largish but not-yet long vector x,
    fixing PR#18630, thanks to Ilia Kats.
  * list.files() on Windows now returns also files with names longer
    that 260 bytes (the Windows limit is 260 characters).
    Previously, some file names particularly with 'East Asian'
    characters were omitted.
  * cov2cor(&lt;0 x 0&gt;) now works, fixing PR#18423 thanks to Mikael
    Jagan and Elin Waring.
  * cov2cor(&lt;negative diagonal&gt;) and similar now give one warning
    instead of two, with better wording, fixing PR#18424 thanks to
    Mikael Jagan.
  * tools:: startDynamicHelp() now ensures port is in proper range,
    fixing PR#18645.
  * pbeta(x, a,b) is correct now for x=0 or 1 in the boundary cases
    where a or b or both are 0, fixing PR#18672 thanks to Michael
    Fay.
  * pmatch(x, table) for large table, also called for data frame row
    selection, dfrm[nm, ], is now interruptible, fixing PR#18656.
  * predict(&lt;rank-deficient lm&gt;, newdata=*) fix computing of nbasis,
    see Russ Lenth's comment 29 in PR#16158.
  * Added a work-around for a bug in macOS 14.3.1 and higher which
    prevents R plots in the Quartz Cocoa device from updating on
    screen.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1713960000">- CHANGES IN R 4.4.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Startup banners, R --version, sessionInfo() and R CMD check no
    longer report (64-bit) as part of the platform as this is almost
    universal - the increasingly rare 32-bit platforms will still
    report (32-bit).
    On Windows, ditto for window titles.
  * is.atomic(NULL) now returns FALSE, as NULL is not an atomic
    vector.  Strict back-compatibility would replace is.atomic(foo)
    by (is.null(foo) || is.atomic(foo)) but should happen only
    sparingly.
  NEW FEATURES:
  * The confint() methods for "glm" and "nls" objects have been
    copied to the stats package.  Previously, they were stubs which
    called versions in package MASS. The MASS namespace is no longer
    loaded if you invoke (say) confint(glmfit).  Further, the "glm"
    method for profile() and the plot() and pairs() methods for class
    "profile" have been copied from MASS to stats.  (profile.nls()
    and plot.profile.nls() were already in stats.)
  * The confint() and profile methods for "glm" objects have gained a
    possibility to do profiling based on the Rao Score statistic in
    addition to the default Likelihood Ratio. This is controlled by a
    new test = argument.
  * The pairs() method for "profile" objects has been extended with a
    which = argument to allow plotting only a subset of the
    parameters.
  * The "glm" method for anova() computes test statistics and
    p-values by default, using a chi-squared test or an F test
    depending on whether the dispersion is fixed or free.  Test
    statistics can be suppressed by giving argument test a false
    logical value.
  * In setRepositories() the repositories can be set using their
    names via name = instead of index ind =.
  * methods() and .S3methods() gain a all.names option for the (rare)
    case where functions starting with a . should be included.
  * Serializations can now be interrupted (e.g., by Ctrl-C on a
    Unix-alike) if they take too long, e.g., from save.image(),
    thanks to suggestions by Ivan Krylov and others on R-devel.
  * New startup option --max-connections to set the maximum number of
    simultaneous connections for the session.  Defaults to 128 as
    before: allowed values up to 4096 (but resource limits may in
    practice restrict to smaller values).
  * R on Windows (since Windows 10 2004) now uses the new Segment
    Heap allocator. This may improve performance of some
    memory-intensive applications.
  * When R packages are built, typically by R CMD build &lt;pkg&gt;, the
    new --user=&lt;build_user&gt; option overrides the (internally
    determined) user name, currently Sys.info()["user"] or LOGNAME.
    This is a (modified) fulfillment of Will Landau's suggestion in
    PR#17530.
  * tools::testInstalledBasic() gets new optional arguments outDir
    and testSrcdir, e.g., allowing to use it in a &lt;builddir&gt; !=
    &lt;srcdir&gt; setup, and in standard "binary" Windows installation
  * if* a source tests/ folder is present.
  * range(&lt;DT_with_Inf&gt;, finite = TRUE) now work for objects of class
    "Date", "POSIXct", and "POSIXlt" with infinite entries,
    analogously to range.default(), as proposed by Davis Vaughan on
    R-devel.  Other range()-methods can make use of new function
    .rangeNum().
  * New .internalGenerics object complementing .S3PrimitiveGenerics,
    for documentation and low-level book-keeping.
  * grid() now invisibly returns the x- and y- coordinates at which
    the grid-lines were drawn.
  * norm(., type) now also works for complex matrices.
  * kappa(., exact = TRUE, norm = *) now works for all norms and also
    for complex matrices.  In symmetric / triangular cases, the new
    argument uplo = "U" | "L" allows the upper or lower triangular
    part to be specified.
  * memDecompress(type = "unknown") recognizes compression in the
    default 'zlib' format as used by memCompress(type = "gzip").
  * memCompress() and memDecompress() will use the libdeflate library
    (&lt;https://github.com/ebiggers/libdeflate&gt;) if installed.  This
    uses the same type of compression for type = "gzip" but is 1.5-2x
    faster than the system libz library on some common platforms: the
    speed-up may depend on the library version.
  * diff() for objects of class "Date", "POSIXct", and "POSIXlt"
    accepts a units argument passed via ....
  * Dynamic help now does a much better job of rendering package
    DESCRIPTION metadata.
  * Rprof() gains an event argument and support for elapsed (real)
    time profiling on Unix (PR#18076).
  * filled.contour() gains a key.border argument.
  * tools::update_pkg_po() gets arguments pot_make and mo_make for
    _not_ re-making the corresponding files, and additionally a
    verbose argument.
  * Hexadecimal string colour specifications are now accepted in
    short form, so, for example, we can use "#123", which is
    equivalent to "#112233".
    Thanks to MikeFC for the original idea and Ella Kaye, Malcolm
    Barrett, George Stagg, and Hanne Oberman for the patch.
  * Plain-text help shows \var markup by angle brackets.
  * The new experimental primitive function declare() is intended to
    eventually allow information about R code to be communicated to
    the interpreter, compiler, and code analysis tools. The syntax
    for declarations is still being developed.
  * Functions psmirnov(), qsmirnov() and rsmirnov() in package stats
    have had argument two.sided renamed to alternative, to take into
    account that the permutation distributions of the one-sided
    statistics can be different in the case of ties.  Consequence of
    PR#18582.
  * sort() is now an implicit S4 generic in methods.
  * Formatting and printing, format(z), print(z), of complex vectors
    z no longer zap relatively small real or imaginary parts to zero,
    fixing PR#16752.  This is an API change, as it was documented
    previously to round real and imaginary parts together on purpose,
    producing nicer looking output.  As mentioned, e.g. in the PR,
    this change is compatible with many other "R-like" programming
    environments.
    We have simplified the internal code and now basically format the
    real and imaginary parts independently of each other.
  * New experimental functions Tailcall() and Exec() to support
    writing stack-space-efficient recursive functions.
  * Where characters are attempted to be plotted by pdf(),
    postscript() and xfig() which are not in the selected 8-bit
    character set (most often Latin-1) and the R session is using a
    UTF-8 locale, the warning messages will show the UTF-8 character
    rather than its bytes and one dot will be substituted per
    character rather than per byte.  (Platforms whose iconv() does
    transliteration silently plot the transliteration.)
    In a UTF-8 locale some transliterations are now done with a
    warning (e.g., dashes and Unicode minus to hyphen, ligatures are
    expanded, permille (‰) is replaced by o/oo), although the OS may
    have got there first.  These are warnings as they will continue
    to be replaced by dots in earlier versions of R.
  * The matrix multiplication functions crossprod() and tcrossprod()
    are now also primitive and S3 generic, as %*% had become in R
    4.3.0.
  * source() and example() have a new optional argument catch.aborts
    which allows continued evaluation of the R code after an error.
  * The non-Quartz tiff() devices allow additional types of
    compression if supported by the platform's libtiff library.
  * The list of base and recommended package names is now provided by
    tools::standard_package_names().
  * cairo_pdf() and cairo_ps() default to onefile = TRUE to closer
    match pdf() and postscript().
  * New option catch.script.errors provides a documented way to catch
    errors and then continue in non-interactive use.
  * L %||% R newly in base is an expressive idiom for the phrases
    if(!is.null(L)) L else R or if(is.null(L)) R else L.
  * The return value from warnings() now always inherits from
    "warnings" as documented, now also in the case of no warnings
    where it previously returned NULL.
  * as.complex("1i") now returns 0 + 1i instead of NA with a warning.
  * z &lt;- c(NA, 1i) now keeps the imaginary part Im(z[1]) == 0, no
    longer coercing to NA_complex_.  Similarly, cumsum(z) correctly
    sums real and imaginary parts separately, i.e., without
    "crosstalk" in case of NAs.
  * On Alpine Linux iconv() now maps "latin2", "latin-2", "latin9"
    and "latin-9" to encoding names the OS knows about
    (case-insensitively).
  * iconv(sub = "Unicode") now always zero-pads to four (hex) digits,
    rather than to 4 or 8.  (This seems to have become the convention
    once Unicode restricted the number of Unicode points to 2^21 - 1
    and so will never need more than 6 digits.)
  * NCOL(NULL) now returns 0 instead of 1, for consistency with
    cbind().
  * The information for the Euro glyph missing from the Adobe .afm
    files for the Courier, Helvetica and Times families has been
    copied from their URW equivalents - this will improve vertical
    centring in the pdf() and postscript() devices.
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.12.0.  The changes are almost entirely cosmetic.
  * The included LAPACK sources have been updated to version 3.12.0
    and some further double-complex routines added.
  * There are new font families for the 2014--5 URW 2.0 fonts (see
    ?pdf) which are included in recent versions of Ghostscript.
    These have font widths for most Greek glyphs and a few others
    which were missing from the original versions (whose font
    families remain available for reproducibility, although
    Ghostscript-based viewers will render using the 2.0 versions).
  * Improve the large-n efficiency of as.matrix(&lt;dist&gt;), thanks an R
    contributors effort, notably by Tim Taylor and Heather Turner,
    see PR#18660.
  * The default and numeric methods of all.equal() get a check.class
    option.
  * zapsmall() gets new optional arguments, function mFUN and min.d,
    for extra flexibility; fulfills a wish in PR#18199.  Also, it is
    now an implicit S4 generic in package methods.
  * The Rd filter for aspell() gains an ignore argument.
  * New generic function sort_by(), primarily useful for the
    data.frame method which can be used to sort rows of a data frame
    by one or more columns.
  * The icence headers for the RPC code in src/extra/xdr have been
    updated to use the GPL-compatible licence published by Oracle
    America in 2010.
  * New function pkg2HTML() in tools to create single-page HTML
    reference manuals for R packages.
  * The byte code evaluator now uses less C stack space for recursive
    calls to byte-compiled functions. It also makes more of an effort
    to avoid allocations for scalar return values.
  * New completion option backtick (disabled by default) allows
    non-syntactic completions to be wrapped in backquotes. This is
    currently only useful for Jupyter notebooks via the IRkernel
    package, and may cause problems for other backends.
  INSTALLATION:
  * The parser has been updated to work with bison 3.8.2, which is
    now used for the pre-generated parsers in gram.c, file.c, and
    gramRd.c. A few parser error messages have changed, which may
    affect code that relies on exact messages.
  INSTALLATION on a UNIX-ALIKE:
  * System valgrind headers are now required to use configure option
  - -with-valgrind-instrumentation with value 1 or 2.
  * configure will warn if it encounters a 32-bit build, as that is
    nowadays almost untested.
  * Environment variable R_SYSTEM_ABI is no longer used and so no
    longer recorded in etc/Renviron (it was not on Windows and was
    only ever used when preparing package tools).
  * If the libdeflate library and headers are available, libdeflate
    rather than libz is used to (de)compress R objects in lazy-load
    databases.  Typically tasks spend up to 5% of their time on such
    operations, although creating lazy-data databases is one of the
    exceptions.
    This can be suppressed if the library is available by the
    configure option --without-libdeflate-compression.
  * configure option --enable-lto=check has not worked reliably since
    2019 and has been removed.
  * The minimum autoconf requirement for a maintainer build has been
    increased to autoconf 2.71.
    It is intended to increase this to 2.72 for R 4.5.0: the
    distributed configure file was generated using 2.72.
  * The minimum version requirement for an external LAPACK has been
    reduced to 3.9.0.
  * No default C++ compiler is set if no C++17 compiler is detected:
    there is no longer an automatic fallback to C++14 or C++11.
    Compilers from the last five years should have sufficient
    support: for others macros CXX and CXXSTD can be set in file
    config.site to provide a fallback if needed.
    The Objective-C++ compiler now by default uses the standard
    selected by R for C++ (currently C++17) rather than the default
    standard for the C++ compiler (which on macOS is still C++98).
  INSTALLATION on macOS:
  * A new configure option --with-newAccelerate makes use of Apple's
    'new' BLAS / LAPACK interfaces in their Accelerate framework.
    Those interfaces are only available in macOS 13.3 or later, and
    building requires SDK 13.3 or later (from the Command Line Tools
    or Xcode 14.3 or later).
    By default the option uses new Accelerate for BLAS calls: to also
    use it for LAPACK use option --with-newAccelerate=lapack.  The
    later interfaces provide LAPACK 3.9.1 rather than 3.2.1: 3.9.1 is
    from 2021-04 and does not include the improved algorithms
    introduced in LAPACK 3.10.0 (including for BLAS calls).
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools44, an update of the Rtools43 toolchain.  It is
    based on GCC 13 and newer versions of MinGW-W64, binutils and
    libraries (targeting 64-bit Intel CPUs).  R-devel can no longer
    be built using Rtools43 without changes.
  * Rtools44 has experimental support for 64-bit ARM (aarch64) CPUs
    _via_ the LLVM 17 toolchain using lld, clang/flang-new and
    libc++.
  UTILITIES:
  * R CMD check notes when S4-style exports are used without
    declaring a strong dependence on package methods.
  * tools::checkRd() (used by R CMD check) detects more problems with
    \Sexpr-based dynamic content, including bad nesting of \Sexprs
    and invalid arguments.
  * tools::checkRd() now reports Rd titles and section names ending
    in a period; this is ignored by R CMD check unless environment
    variable _R_CHECK_RD_CHECKRD_MINLEVEL_ is set to -5 or smaller.
  * R CMD check now notes Rd files without an \alias, as long
    documented in 'Writing R Extensions' §1.3.1.  The check for a
    missing \description has been moved from tools::checkRd() to
    tools::checkRdContents().
  * R CMD check now visits inst/NEWS.Rd and OS-specific man
    subdirectories when checking Rd files.
  * tools::checkDocFiles() and tools::checkRdContents() now also
    check internal Rd files by default, but "specially" (ignoring
    missing documentation of arguments).
  * R CMD Rdiff gets option --useEx.
  * R CMD check now warns on non-portable uses of Fortran KIND such
    as INTEGER(KIND=4) and REAL(KIND=8).
    To see the failing lines set environment variable
    _R_CHECK_FORTRAN_KIND_DETAILS_ to a true value.
  * When checking Rd files, R CMD check now notes some of the "lost
    braces" that tools::checkRd() finds.  Typical problems are Rd
    macros missing the initial backslash (e.g., code{...}), in-text
    set notation (e.g., {1, 2}, where the braces need escaping), and
    \itemize lists with \describe-style entries of the form
    \item{label}{description}.
  * R CMD INSTALL (and hence check) will compile C++ code with
  - DR_NO_REMAP if environment variable _R_CXX_USE_NO_REMAP_ is set
    to a true value.  It is planned that this will in future become
    the default for compiling C++.
  * The new built-in Rd macro \dontdiff{} can be used to mark example
    code whose output should be ignored when comparing check output
    to reference output (tests/Examples/&lt;pkg&gt;-Ex.Rout.save).  The
    \dontdiff tag, like \donttest, is _not_ shown on the rendered
    help page, so provides a clean alternative to ##
    IGNORE_RDIFF_(BEGIN|END) comments.
  * R CMD build when there is no NAMESPACE, now uses the recommended
    exportPattern("^[^.]"), instead of exporting everything.
  * R CMD check now warns about non-ASCII characters in the NAMESPACE
    file (in addition to R files). Such packages are not portable and
    may fail to install on some platforms.
  C-LEVEL FACILITIES:
  * Headers R_ext/Applic.h and R-ext/Linpack.h used to include
    R_ext/BLAS.h although this was undocumented and unneeded by their
    documented entry points.  They no longer do so.
  * New function R_missing(), factored out from do_missing(), used to
    fix PR#18579.
  * SEXP type S4SXP has been renamed to OBJSXP to support
    experimenting with alternative object systems.  The S4SXP value
    can still be used in C code but is now deprecated.  Based on
    contributions from the R Consortium's Object-Oriented Programming
    Working Group.
  * New function pow1p(x,y) for accurate (1+x)^y.
  * mkCharLenCE was incorrectly documented to take a size_t length
    but was implemented with int (and character strings in R are
    limited to 2^31 - 1 bytes).
  DEPRECATED AND DEFUNCT:
  * data() no longer handles zipped data from long-defunct (since R
    2.13.0) --use-zip-data installations.
  * The legacy graphics devices pictex() and xfig() are now
    deprecated.  They do not support recent graphics enhancements and
    their font handling is rudimentary. The intention is to retain
    them for historical interest as long as they remain somewhat
    functional.
  * Support for encoding = "MacRoman" has been removed from the pdf()
    and postscript() devices - this was a legacy encoding supporting
    classic macOS up to 2001 and no longer has universal libiconv
    support.
  * is.R() is deprecated as no other S dialect is known to be in use
    (and this could only identify historical dialects, not future
    ones).
    Further information on calls can be obtained by setting the
    environment variable _R_DEPRECATED_IS_R_ to error which turns the
    deprecation warning into an error and so by default gives a
    traceback.  (This is done by R CMD check --as-cran.)
  * UseMethod() no longer forwards local variables assigned in the
    generic function into method call environments before evaluating
    the method body. This makes method calls behave more like
    standard function calls and makes method code easier to analyze
    correctly.
  * The twelve as.data.frame.&lt;class&gt;() methods which were deprecated
    only via _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ and in R CMD
    check --as-cran are formally deprecated now in favour of calling
    as.data.frame() or as.data.frame.vector().  The deprecation
    "check" now works also when as.data.frame() is S4 generic thanks
    to Ivan Krylov.
  * The default method for the directional comparison operators &lt;, &gt;,
    &lt;=, and &gt;= now signals an error when one of the operands is a
    language object, i.e. a symbol or a call.
  * For terms.formula(), deprecate abb and neg.out arguments
    _formally_ in addition to just documenting it.
  BUG FIXES:
  * The methods package is more robust to not being attached to the
    search path.  More work needs to be done.
  * pairwise.t.test() misbehaved when subgroups had 0 DF for
    variance, even with pool.sd = TRUE.  (PR#18594 by Jack Berry).
  * Probability distribution functions [dpq]&lt;distrib&gt;(x, *), but also
    bessel[IKJY](x, .) now consistently preserve attributes(x) when
    length(x) == 0, e.g., for a 2 x 0 matrix, thanks to Karolis
    Koncevičius' report PR#18509.
  * Group "Summary" computations such as sum(1:3, 4, na.rm = 5, NA,
    7, na.rm = LL) now give an error instead of either 17 or NN for
    LL true or false, as proposed by Ivan Krylov on the R-devel
    mailing list.  (This also means it is now an error to specify
    na.rm more than once.)
  * as.complex(x) now returns complex(real = x, imaginary = 0) for
    _all_ numerical and logical x, notably also for NA or
    NA_integer_.
  * Directories are now omitted by file.copy(, recursive = FALSE) and
    in file.append() (PR#17337).
  * gsub() and sub() are now more robust to integer overflow when
    reporting errors caused by too large input strings (PR#18346).
  * Top-level handlers are now more robust to attempts to remove a
    handler whilst handlers are running (PR#18508).
  * The handling of Alt+F4 in dialogs created on Windows using
    GraphApp has been fixed (PR#13870).
  * density() more consistently computes grid values for the
    FFT-based convolution, following Robert Schlicht's analysis and
    proposal in PR#18337, correcting density values typically by a
    factor of about 0.999.  Argument old.coords = TRUE provides back
    compatibility.
  * palette.colors() gains a name argument that defaults to FALSE
    controlling whether the vector of colours that is returned has
    names (where possible).  PR#18529.
  * tools::xgettext() no longer extracts the (non-translatable) class
    names from warningCondition and errorCondition calls.
  * S3method(&lt;gen&gt;, &lt;class&gt;, &lt;func&gt;) in the NAMESPACE file now works
    (again) when &lt;func&gt; is visible from the namespace, e.g.,
    imported, or in base.
  * getParseData(f) now also works for a function defined in the
    first of several &lt;pkg&gt;/R/*.R source files, thanks to Kirill
    Müller's report and Duncan Murdoch's patch in PR#16756.
  * Rd \Sexpr macros with nested #ifdef conditionals were not
    processed.
  * A non-blocking connection with non-default encoding (such as a
    socket) now correctly returns from readLines() after new data has
    arrived also when its EOF had been reached previously.  Thanks to
    Peter Meilstrup's report on R-devel and Ivan Krylov's report and
    patch proposal in PR#18555.
  * tools::checkRdContents() failed to detect empty argument
    descriptions when they spanned multiple lines, including those
    generated by prompt().  These cases are now noted by R CMD check.
  * Plain-text help no longer outputs spurious colons in the
    arguments list (for multi-line \item labels in the Rd source).
  * kappa() and rcond() work correctly in more cases; kappa(., norm =
    "2") now warns that it computes the 1-norm with (default) exact =
    FALSE; prompted by Mikael Jagan's quite comprehensive PR#18543.
  * Rd skeletons generated by prompt() or promptData() now use a
    dummy title (so R CMD build works).  tools::checkRdContents() has
    been updated to detect such template leftovers, including from
    promptPackage().
  * When S4 method dispatch fails because no method was found, the
    error message now includes the signature argument names; thanks
    to Michael Chirico's proposal on the R-devel list.
  * withAutoprint({ .. }) now preserves srcrefs previously lost,
    thanks to Andrew Simmons' report plus fix in PR#18572.
  * transform.data.frame() no longer adjusts names; in particular,
    untransformed variables are kept as-is, including those with
    syntactically invalid names (PR#17890).
  * The keep.source option for Rd \Sexpr blocks is no longer ignored.
  * The formula methods for t.test() and wilcox.test() now catch when
    paired is passed, addressing PR#14359; use Pair(x1, x2) ~ 1 for a
    paired test.
  * The level reported in the browser prompt was often too large. It
    now shows the number of browser contexts on the stack.
  * For cbind() and rbind(), the optional deparse.level argument is
    now properly passed to methods, thanks to Mikael Jagan's PR#18579
    and comments there.
  * Some error and warning messages for large ('long vector')
    matrix(v, nr, nc) and dim(m) &lt;- d are now correct about sizes,
    using long long formatting, fixing PR#18612 (and more) reported
    by Mikael Jagan.
  * readChar(useBytes = TRUE) now terminates strings even when the
    underlying connection uses extra spaces in the input buffer.
    This fixes problems with extra garbage seen with gzip
    connections, PR#18605.
  * Named capture in PCRE regular expressions now works also with
    more than 127 named groups (PR#18588).
  * Datetime functions are now robust against long jumps when dealing
    with internal time zone changes.  This avoids confusing warnings
    about an invalid time zone, previously triggered by turning
    warnings into errors or handling them via tryCatch (PR#17966,
    PR#17780).
  * Datetime functions now restore even an empty TZ environment
    variable after internal time zone changes (PR#17724).  This makes
    results of datetime functions with this (typically unintentional)
    setting more predictable.
  * drop.terms(*) now drops response as by default, keep.response =
    FALSE, fixing PR#18564 thanks to Mikael Jagan.
  * dummy.coef(.) now also works for lm()-models with character
    categorical predictor variables rather than factor ones, fixing
    PR#18635 reported by Jinsong Zhao.
  * formals(f) &lt;- formals(f) now also works for a function w/o
    arguments and atomic _constant_ body(f).
  * Correct as.function(&lt;invalid list&gt;, .)'s error message.
  * removeSource() is yet more thorough in finding and removing
    "srcref" and the other source references from parsed R language
    chunks, fixing PR#18638 thanks to Andrew Simmons.
  * dgeom() is more accurate now, notably when its result is very
    small, fixing PR#18642 thanks to the proposal of Morten Welinder,
    also improving other instances where C level binom_raw(x, n, ..)
    has x == 0 or x== n.
  * warning() with options(warn = 1) has improved output for
    multi-line messages.
  * axis.Date() and axis.POSIXct() now respect the par("lab") setting
    for the number of pretty() intervals.
  * Comparisons for language objects (which are based on deparsing)
    are now more careful about using accurate deparsed results
    (PR#18676).
  * Plain-text help (Rd2txt) now correctly preserves blank lines
    following single-line \dontrun code.
  * &lt;POSIXlt&gt;[*] no longer sets wrong "balanced" attribute, fixing
    PR#18681 thanks to Mikael Jagan.
  * str(&lt;classed-call&gt;) now deparses the call as expected, fixing
    PR#18684, reported by Dave Slager.
  * In Rd examples, code following the closing brace of a \dontrun,
    \dontshow or \donttest tag on the same line is no longer skipped
    when R CMD check runs the examples.
  * as.data.frame(matrix(*, ncol=0)) now gets valid names() and
    colnames(); reported by Davis Vaughan on the R-devel list.
  * Internal Mathlib function stirlerr(n) is now almost fully
    (52-bit) accurate for all n &gt;= ~5.9 and more accurate also in the
    range 1 -- 5.9.  This entails small ("after 12th decimal")
    changes in density functions, e.g., dgamma() in _some_ regions of
    their support.  The fix was partly prompted by Morten Welinder's
    PR#18640.
  * Numbers like 9876543.2 are now considered non-integer by Mathlib
    internal R_nonint(), amending original fix of PR#15734.
  * Rd comment lines no longer cause broken paragraphs in the
    rendered PDF and plain-text help. In code blocks, pure comment
    lines (starting with %) no longer produce an empty line.
  * xtabs(Freq ~ .) now consistently defaults to na.action = na.pass,
    using na.rm = FALSE (added as an argument) when summing over Freq
    (PR#17770).
  * tools::testInstalledPackage() is no longer silent about failures
    from running examples or tests and its return code no longer
    ignores failures from checking vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1718366400">- CHANGES IN R 4.4.1:
  C-LEVEL FACILITIES:
  * Functions R_atof and R_strtod declared in header R_ext/Utils.h
    are now documented in 'Writing R Extensions' and so formally part
    of the API.
  * The non-API entry points Rf_setSVector, Rf_StringFalse,
    Rf_StringTrue and Rf_isBlankString have been added to those
    reported by R CMD check.
  * The new function Rf_allocLang is now available. This provides an
    alternative to the idiom of calling Rf_allocList followed by
    SET_TYPEOF.
  UTILITIES:
  * R CMD check now reports as warnings what gfortran calls 'Fortran
    2018 deleted features', all of which have long been marked as
    'obsolescent' and some of which were deleted in Fortran 2008 or
    earlier.  Fortran compilers are no longer required to support
    these.
  BUG FIXES:
  * as.numeric(), scan(), type.convert() and other places which use
    the internal C function R_strtod now require a _non-empty_ digit
    sequence in a decimal or binary exponent.  This aligns with the
    C/POSIX standard for strtod and with ?NumericConstants.
  * as.data.frame(m, make.names=NA) now works correctly for a matrix
    m with NA's in row names.
  * The error message from &lt;POSIXlt&gt;[["hour"]] and similar now
    mentions *[[, "hour"]], as wished for in PR#17409 and proposed by
    Michael Chirico.
  * qbinom() and potentially qpois(), qnbinom(), no longer sometimes
    fail accurate inversion (of pbinom(), etc), thanks to Christopher
    Chang's report and patch in PR#18711.
  * The internal help server on Windows can again serve requests sent
    in quick succession, fixing a regression in R 4.4.0.
  * debugcall(&lt;S3Generic&gt;()) now also works when a corresponding
    S4-generic version is in the methods cache (PR#18143).
  * Package tools' toTitleCase(ch0) now returns character(0) when ch0
    is of zero length; fixing PR#18724, reported by David Hugh Jones.
  * R CMD check is no longer broken (without a check result and no
    explanation in 00check.log) for a package which declares an
    invalid VignetteBuilder in DESCRIPTION but has no vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1730376000">- CHANGES IN R 4.4.2:
  C-LEVEL FACILITIES:
  * The S-compatibility macros F77_COM and F77_COMDECL defined in
    header R_ext/RS.h are deprecated and will be removed shortly.  We
    could find no record of their use.
  BUG FIXES:
  * Mathlib function lgammacor(x) no longer warns about underflow to
    zero for large x.
  * Text widths and heights were incorrectly reported by the Quartz
    device if the drawing context didn't exist yet (typically when
    drawing off-screen to a window that is yet to appear, see
    PR#18591).
  * The Quartz device could segfault in cases where paths with spaces
    are used in the new glyph drawing API.  Thanks to Tomek
    Gieorgijewski (PR#18758).
  * On macOS in R CRAN builds, it is again possible to read
    little-endian UTF-16 text with a BOM from a connection using
    encoding="UTF-16".  Users building R from source should avoid
    using the system libiconv in macOS 14.1 and later.
  * methods' internal .requirePackage() now re-enables primitive
    method dispatch when needed; thanks to Ivan Krylov for
    demystifying CRAN package check failures on the R-devel mailing
    list.</changelog>
</package>
<package pkgid="b2b7641dbfa7bf2fc7d959796a458f849996d93e5716198b837bdd59c6e5febb08930e3d6dd8efac86427ba04a31a2ec42c22a2c6f230a7265260e3049a1d0e0" name="R-MASS" arch="i586">
  <version epoch="0" ver="7.3.61" rel="51.0.2.2.sr20241103"/>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1620302400">- To get in sync with d:l:R:autoCRAN the Matrix package's split
  in -devel was reversed.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339200">- improved spec file according to comments of dimstar in
  https://build.opensuse.org/request/show/892685</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339201">- CHANGES IN R 4.1.0:
  FUTURE DIRECTIONS:
  * It is planned that the 4.1.x series will be the last to support
    32-bit Windows, with production of binary packages for that
    series continuing until early 2023.
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Data set esoph in package datasets now provides the correct
    numbers of controls; previously it had the numbers of cases added
    to these.  (Reported by Alexander Fowler in PR#17964.)
  NEW FEATURES:
  * www.omegahat.net is no longer one of the repositories known by
    default to setRepositories().  (Nowadays it only provides source
    packages and is often unavailable.)
  * Function package_dependencies() (in package tools) can now use
    different dependency types for direct and recursive dependencies.
  * The checking of the size of tarball in R CMD check --as-cran
    &lt;pkg&gt; may be tweaked via the new environment variable
    _R_CHECK_CRAN_INCOMING_TARBALL_THRESHOLD_, as suggested in
    PR#17777 by Jan Gorecki.
  * Using c() to combine a factor with other factors now gives a
    factor, an ordered factor when combining ordered factors with
    identical levels.
  * apply() gains a simplify argument to allow disabling of
    simplification of results.
  * The format() method for class "ftable" gets a new option justify.
    (Suggested by Thomas Soeiro.)
  * New ...names() utility.  (Proposed by Neal Fultz in PR#17705.)
  * type.convert() now warns when its as.is argument is not
    specified, as the help file always said it _should_.  In that
    case, the default is changed to TRUE in line with its change in
    read.table() (related to stringsAsFactor) in R 4.0.0.
  * When printing list arrays, classed objects are now shown _via_
    their format() value if this is a short enough character string,
    or by giving the first elements of their class vector and their
    length.
  * capabilities() gets new entry "Rprof" which is TRUE when R has
    been configured with the equivalent of --enable-R-profiling (as
    it is by default).  (Related to Michael Orlitzky's report
    PR#17836.)
  * str(xS4) now also shows extraneous attributes of an S4 object
    xS4.
  * Rudimentary support for vi-style tags in rtags() and R CMD rtags
    has been added.  (Based on a patch from Neal Fultz in PR#17214.)
  * checkRdContents() is now exported from tools; it and also
    checkDocFiles() have a new option chkInternal allowing to check
    Rd files marked with keyword "internal" as well.  The latter can
    be activated for R CMD check via environment variable
    _R_CHECK_RD_INTERNAL_TOO_.
  * New functions numToBits() and numToInts() extend the raw
    conversion utilities to (double precision) numeric.
  * Functions URLencode() and URLdecode() in package utils now work
    on vectors of URIs.  (Based on patch from Bob Rudis submitted
    with PR#17873.)
  * path.expand() can expand ~user on most Unix-alikes even when
    readline is not in use.  It tries harder to expand ~, for example
    should environment variable HOME be unset.
  * For HTML help (both dynamic and static), Rd file links to help
    pages in external packages are now treated as references to
    topics rather than file names, and fall back to a file link only
    if the topic is not found in the target package. The earlier rule
    which prioritized file names over topics can be restored by
    setting the environment variable _R_HELP_LINKS_TO_TOPICS_ to a
    false value.
  * c() now removes NULL arguments before dispatching to methods,
    thus simplifying the implementation of c() methods, _but_ for
    back compatibility keeps NULL when it is the first argument.
    (From a report and patch proposal by Lionel Henry in PR#17900.)
  * Vectorize()'s result function's environment no longer keeps
    unneeded objects.
  * Function ...elt() now propagates visibility consistently with
    ..n.  (Thanks to Lionel Henry's PR#17905.)
  * capture.output() no longer uses non-standard evaluation to
    evaluate its arguments.  This makes evaluation of functions like
    parent.frame() more consistent.  (Thanks to Lionel Henry's
    PR#17907.)
  * packBits(bits, type="double") now works as inverse of
    numToBits().  (Thanks to Bill Dunlap's proposal in PR#17914.)
  * curlGetHeaders() has two new arguments, timeout to specify the
    timeout for that call (overriding getOption("timeout")) and TLS
    to specify the minimum TLS protocol version to be used for
    https:// URIs (_inter alia_ providing a means to check for sites
    using deprecated TLS versions 1.0 and 1.1).
  * For nls(), an optional constant scaleOffset may be added to the
    denominator of the relative offset convergence test for cases
    where the fit of a model is expected to be exact, thanks to a
    proposal by John Nash.  nls(*, trace=TRUE) now also shows the
    convergence criterion.
  * Numeric differentiation _via_ numericDeriv() gets new optional
    arguments eps and central, the latter for taking central divided
    differences.  The latter can be activated for nls() via
    nls.control(nDcentral = TRUE).
  * nls() now passes the trace and control arguments to getInitial(),
    notably for all self-starting models, so these can also be fit in
    zero-noise situations via a scaleOffset.  For this reason, the
    initial function of a selfStart model must now have ... in its
    argument list.
  * bquote(splice = TRUE) can now splice expression vectors with
    attributes: this makes it possible to splice the result of
    parse(keep.source = TRUE).  (Report and patch provided by Lionel
    Henry in PR#17869.)
  * textConnection() gets an optional name argument.
  * get(), exists(), and get0() now signal an error if the first
    argument has length greater than 1.  Previously additional
    elements were silently ignored.  (Suggested by Antoine Fabri on
    R-devel.)
  * R now provides a shorthand notation for creating functions, e.g.
    \(x) x + 1 is parsed as function(x) x + 1.
  * R now provides a simple native forward pipe syntax |&gt;.  The
    simple form of the forward pipe inserts the left-hand side as the
    first argument in the right-hand side call.  The pipe
    implementation as a syntax transformation was motivated by
    suggestions from Jim Hester and Lionel Henry.
  * all.equal(f, g) for functions now by default also compares their
    environment(.)s, notably via new all.equal method for class
    function.  Comparison of nls() fits, e.g., may now need
    all.equal(m1, m2, check.environment = FALSE).
  * .libPaths() gets a new option include.site, allowing to _not_
    include the site library.  (Thanks to Dario Strbenac's suggestion
    and Gabe Becker's PR#18016.)
  * Lithuanian translations are now available.  (Thanks to Rimantas
    Zakauskas.)
  * names() now works for DOTSXP objects.  On the other hand, in
    R-lang, the R language manual, we now warn against relying on the
    structure or even existence of such dot-dot-dot objects.
  * all.equal() no longer gives an error on DOTSXP objects.
  * capabilities("cairo") now applies only to the file-based devices
    as it is now possible (if very unusual) to build R with Cairo
    support for those but not for X11().
  * There is optional support for tracing the progress of
    loadNamespace() - see its help.
  * (Not Windows.)  l10n_info() reports an additional element, the
    name of the encoding as reported by the OS (which may differ from
    the encoding part (if any) of the result from
    Sys.getlocale("LC_CTYPE").
  * New function gregexec() which generalizes regexec() to find _all_
    disjoint matches and well as all substrings corresponding to
    parenthesized subexpressions of the given regular expression.
    (Contributed by Brodie Gaslam.)
  * New function charClass() in package utils to query the
    wide-character classification functions in use (such as
    iswprint).
  * The names of quantile()'s result no longer depend on the global
    getOption("digits"), but quantile() gets a new optional argument
    digits = 7 instead.
  * grep(), sub(), regexp and variants work considerably faster for
    long factors with few levels.  (Thanks to Michael Chirico's
    PR#18063.)
  * Provide grouping of x11() graphics windows within a window
    manager such as Gnome or Unity; thanks to a patch by Ivan Krylov
    posted to R-devel.
  * The split() method for class data.frame now allows the f argument
    to be specified as a formula.
  * sprintf now warns on arguments unused by the format string.
  * New palettes "Rocket" and "Mako" for hcl.colors() (approximating
    palettes of the same name from the 'viridisLite' package).
    Contributed by Achim Zeileis.
  * The base environment and its namespace are now locked (so one can
    no longer add bindings to these or remove from these).
  * Rterm handling of multi-byte characters has been improved,
    allowing use of such characters when supported by the current
    locale.
  * Rterm now accepts ALT+ +xxxxxxxx sequences to enter Unicode
    characters as hex digits.
  * Environment variable LC_ALL on Windows now takes precedence over
    LC_CTYPE and variables for other supported categories, matching
    the POSIX behaviour.
  * duplicated() and anyDuplicated() are now optimized for integer
    and real vectors that are known to be sorted via the ALTREP
    framework. Contributed by Gabriel Becker via PR#17993.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 14
    and so packages that provide graphics devices should be
    reinstalled.
  * Graphics devices should now specify deviceVersion to indicate
    what version of the graphics engine they support.
  * Graphics devices can now specify deviceClip.  If TRUE, the
    graphics engine will never perform any clipping of output itself.
    The clipping that the graphics engine does perform (for both
    canClip = TRUE and canClip = FALSE) has been improved to avoid
    producing unnecessary artifacts in clipped output.
  * The grid package now allows gpar(fill) to be a linearGradient(),
    a radialGradient(), or a pattern().  The viewport(clip) can now
    also be a grob, which defines a clipping path, and there is a new
    viewport(mask) that can also be a grob, which defines a mask.
    These new features are only supported so far on the Cairo-based
    graphics devices and on the pdf() device.
  * (Not Windows.)  A warning is given when a Cairo-based type is
    specified for a png(), jpeg(), tiff() or bmp() device but Cairo
    is unsupported (so type = "Xlib" is tried instead).
  * grSoftVersion() now reports the versions of FreeType and
    FontConfig if they are used directly (not _via_ Pango), as is
    most commonly done on macOS.
  C-LEVEL FACILITIES:
  * The _standalone_ libRmath math library and R's C API now provide
    log1pexp() again as documented, and gain log1mexp().
  INSTALLATION on a UNIX-ALIKE:
  * configure checks for a program pkgconf if program pkg-config is
    not found.  These are now only looked for on the path (like
    almost all other programs) so if needed specify a full path to
    the command in PKG_CONFIG, for example in file config.site.
  * C99 function iswblank is required - it was last seen missing ca
    2003 so the workaround has been removed.
  * There are new configure options --with-internal-iswxxxxx,
  - -with-internal-towlower and --with-internal-wcwidth which allows
    the system functions for wide-character classification,
    case-switching and width (wcwidth and wcswidth) to be replaced by
    internal ones.  The first has long been used on macOS, AIX (and
    Windows) but this enables it to be unselected there and selected
    for other platforms (it is the new default on Solaris).  The
    second is new in this version of R and is selected by default on
    macOS and Solaris.  The third has long been the default and
    remains so as it contains customizations for East Asian
    languages.
    System versions of these functions are often minimally
    implemented (sometimes only for ASCII characters) and may not
    cover the full range of Unicode points: for example Solaris (and
    Windows) only cover the Basic Multilingual Plane.
  * Cairo installations without X11 are more likely to be detected by
    configure, when the file-based Cairo graphics devices will be
    available but not X11(type = "cairo").
  * There is a new configure option --with-static-cairo which is the
    default on macOS.  This should be used when only static cairo
    (and where relevant, Pango) libraries are available.
  * Cairo-based graphics devices on platforms without Pango but with
    FreeType/FontConfig will make use of the latter for font
    selection.
  LINK-TIME OPTIMIZATION on a UNIX-ALIKE:
  * Configuring with flag --enable-lto=R now also uses LTO when
    installing the recommended packages.
  * R CMD INSTALL and R CMD SHLIB have a new flag --use-LTO to use
    LTO when compiling code, for use with R configured with
  - -enable-lto=R.  For R configured with --enable-lto, they have
    the new flag --no-use-LTO.
    Packages can opt in or out of LTO compilation _via_ a UseLTO
    field in the DESCRIPTION file.  (As usual this can be overridden
    by the command-line flags.)
  BUILDING R on Windows:
  * for GCC &gt;= 8, FC_LEN_T is defined in config.h and hence character
    lengths are passed from C to Fortran in _inter alia_ BLAS and
    LAPACK calls.
  * There is a new text file src/gnuwin32/README.compilation, which
    outlines how C/Fortran code compilation is organized and
    documents new features:
  * R can be built with Link-Time Optimization with a suitable
    compiler - doing so with GCC 9.2 showed several
    inconsistencies which have been corrected.
  * There is support for cross-compiling the C and Fortran code
    in R and standard packages on suitable (Linux) platforms.
    This is mainly intended to allow developers to test later
    versions of compilers - for example using GCC 9.2 or 10.x has
    detected issues that GCC 8.3 in Rtools40 does not.
  * There is experimental support for cross-building R packages
    with C, C++ and/or Fortran code.
  * The R installer can now be optionally built to support a single
    architecture (only 64-bit or only 32-bit).
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++14 where
    available (which it is on all currently checked platforms): if
    not (as before) C++11 is used if available otherwise C++ is not
    supported.
    Packages which specify C++11 will still be installed using C++11.
    C++14 compilers may give deprecation warnings, most often for
    std::random_shuffle (deprecated in C++14 and removed in C++17).
    Either specify C++11 (see 'Writing R Extensions') or modernize
    the code and if needed specify C++14.  The latter has been
    supported since R 3.4.0 so the package's DESCRIPTION would need
    to include something like
    Depends: R (&gt;= 3.4)
  PACKAGE INSTALLATION on Windows:
  * R CMD INSTALL and R CMD SHLIB make use of their flag --use-LTO
    when the LTO_OPT make macro is set in file etc/${R_ARCH}/Makeconf
    or in a personal/site Makevars file.  (For details see 'Writing R
    Extensions' SS4.5.)
    This provides a valuable check on code consistency.  It does work
    with GCC 8.3 as in Rtools40, but that does not detect everything
    the CRAN checks with current GCC do.
  PACKAGE INSTALLATION on macOS:
  * The default personal library directory on builds with
  - -enable-aqua (including CRAN builds) now differs by CPU type,
    one of
    ~/Library/R/x86_64/x.y/library
    ~/Library/R/arm64/x.y/library
    This uses the CPU type R (and hence the packages) were built for,
    so when a x86_64 build of R is run under Rosetta emulation on an
    arm64 Mac, the first is used.
  UTILITIES:
  * R CMD check can now scan package functions for bogus return
    statements, which were possibly intended as return() calls (wish
    of PR#17180, patch by Sebastian Meyer). This check can be
    activated via the new environment variable
    _R_CHECK_BOGUS_RETURN_, true for --as-cran.
  * R CMD build omits tarballs and binaries of previous builds from
    the top-level package directory.  (PR#17828, patch by Sebastian
    Meyer.)
  * R CMD check now runs sanity checks on the use of LazyData, for
    example that a data directory is present and that
    LazyDataCompression is not specified without LazyData and has a
    documented value.  For packages with large LazyData databases
    without specifying LazyDataCompression, there is a reference to
    the code given in 'Writing R Extensions' SS1.1.6 to test the
    choice of compression (as in all the CRAN packages tested a
    non-default method was preferred).
  * R CMD build removes LazyData and LazyDataCompression fields from
    the DESCRIPTION file of packages without a data directory.
  ENCODING-RELATED CHANGES:
  * The parser now treats \Unnnnnnnn escapes larger than the upper
    limit for Unicode points (\U10FFFF) as an error as they cannot be
    represented by valid UTF-8.
    Where such escapes are used for outputting non-printable
    (including unassigned) characters, 6 hex digits are used (rather
    than 8 with leading zeros).  For clarity, braces are used, for
    example \U{0effff}.
  * The parser now looks for non-ASCII spaces on Solaris (as
    previously on most other OSes).
  * There are warnings (including from the parser) on the use of
    unpaired surrogate Unicode points such as \uD834.  (These cannot
    be converted to valid UTF-8.)
  * Functions nchar(), tolower(), toupper() and chartr() and those
    using regular expressions have more support for inputs with a
    marked Latin-1 encoding.
  * The character-classification functions used (by default) to
    replace the system iswxxxxx functions on Windows, macOS and AIX
    have been updated to Unicode 13.0.0.
    The character-width tables have been updated to include new
    assignments in Unicode 13.0.0.
  * The code for evaluating default (extended) regular expressions
    now uses the same character-classification functions as the rest
    of R (previously they differed on Windows, macOS and AIX).
  * There is a build-time option to replace the system's
    wide-character wctrans C function by tables shipped with R: use
    configure option --with-internal-towlower or (on Windows)
  - DUSE_RI18N_CASE in CFLAGS when building R.  This may be needed
    to allow tolower() and toupper() to work with Unicode characters
    beyond the Basic Multilingual Plane where not supported by system
    functions (e.g. on Solaris where it is the new default).
  * R is more careful when truncating UTF-8 and other multi-byte
    strings that are too long to be printed, passed to the system or
    libraries or placed into an internal buffer.  Truncation will no
    longer produce incomplete multibyte characters.
  DEPRECATED AND DEFUNCT:
  * Function plclust() from the package stats and
    package.dependencies(), pkgDepends(), getDepList(),
    installFoundDepends(), and vignetteDepends() from package tools
    are defunct.
  * Defunct functions checkNEWS() and readNEWS() from package tools
    and CRAN.packages() from utils have been removed.
  * R CMD config CXXCPP is defunct (it was deprecated in R 3.6.2).
  * parallel::detectCores() drops support for Irix (retired in 2013).
  * The LINPACK argument to chol.default(), chol2inv(),
    solve.default() and svd() has been defunct since R 3.1.0.  It was
    silently ignored up to R 4.0.3 but now gives an error.
  * Subsetting/indexing, such as ddd[*] or ddd$x on a DOTSXP
    (dot-dot-dot) object ddd has been disabled; it worked by accident
    only and was undocumented.
  BUG FIXES:
  * Many more C-level allocations (mainly by malloc and strdup) are
    checked for success with suitable alternative actions.
  * Bug fix for replayPlot(); this was turning off graphics engine
    display list recording if a recorded plot was replayed in the
    same session.  The impact of the bug became visible if resize the
    device after replay OR if attempted another savePlot() after
    replay (empty display list means empty screen on resize or empty
    saved plot).
  * R CMD check etc now warn when a package exports non-existing S4
    classes or methods, also in case of no "methods" presence.
    (Reported by Alex Bertram; reproducible example and patch by
    Sebastian Meyer in PR#16662.)
  * boxplot() now also accepts calls for labels such as ylab, the
    same as plot().  (Reported by Marius Hofert.)
  * The help page for xtabs() now correctly states that addNA is
    setting na.action = na.pass among others.  (Reported as PR#17770
    by Thomas Soeiro.)
  * The R CMD check &lt;pkg&gt; gives a longer and more comprehensible
    message when DESCRIPTION misses dependencies, e.g., in Imports:.
    (Thanks to the contributors of PR#17179.)
  * update.default() now calls the generic update() on the formula to
    work correctly for models with extended formulas.  (As reported
    and suggested by Neal Fultz in PR#17865.)
  * The horizontal position of leaves in a dendrogram is now correct
    also with center = FALSE.  (PR#14938, patch from Sebastian
    Meyer.)
  * all.equal.POSIXt() no longer warns about and subsequently ignores
    inconsistent "tzone" attributes, but describes the difference in
    its return value (PR#17277).  This check can be disabled _via_
    the new argument check.tzone = FALSE as suggested by Sebastian
    Meyer.
  * as.POSIXct() now populates the "tzone" attribute from its tz
    argument when x is a logical vector consisting entirely of NA
    values.
  * x[[2^31]] &lt;- v now works.  (Thanks to the report and patch by
    Suharto Anggono in PR#17330.)
  * In log-scale graphics, axis() ticks and label positions are now
    computed more carefully and symmetrically in their range,
    typically providing _more_ ticks, fulfilling wishes in PR#17936.
    The change really corresponds to an improved axisTicks() (package
    grDevices), potentially influencing grid and lattice, for
    example.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now correct to at
    least five digits where it was catastrophically wrong,
    previously.
  * sum(df) and similar "Summary"- and "Math"-group member functions
    now work for data frames df with logical columns, notably also of
    zero rows.  (Reported to R-devel by Martin "b706".)
  * unsplit() had trouble with tibbles due to unsound use of rep(NA,
    len)-indexing, which should use NA_integer_ (Reported to R-devel
    by Mario Annau.)
  * pnorm(x, log.p = TRUE) underflows to -Inf slightly later.
  * show(&lt;hidden S4 generic&gt;) prints better and without quotes for
    non-hidden S4 generics.
  * read.table() and relatives treated an "NA" column name as missing
    when check.names = FALSE PR#18007.
  * Parsing strings containing UTF-16 surrogate pairs such as
    "\uD834\uDD1E" works better on some (uncommon) platforms.
    sprintf("%X", utf8ToInt("\uD834\uDD1E")) should now give "1D11E"
    on all platforms.
  * identical(x,y) is no longer true for differing DOTSXP objects,
    fixing PR#18032.
  * str() now works correctly for DOTSXP and related exotics, even
    when these are doomed.
    Additionally, it no longer fails for lists with a class and
    "irregular" method definitions such that e.g. lapply(*) will
    necessarily fail, as currently for different igraph objects.
  * Too long lines in environment files (e.g. Renviron) no longer
    crash R. This limit has been increased to 100,000 bytes.
    (PR#18001.)
  * There is a further workaround for FreeType giving incorrect
    italic font faces with cairo-based graphics devices on macOS.
  * add_datalist(*, force = TRUE) (from package tools) now actually
    updates an existing data/datalist file for new content.  (Thanks
    to a report and patch by Sebastian Meyer in PR#18048.)
  * cut.Date() and cut.POSIXt() could produce an empty last interval
    for breaks = "months" or breaks = "years".  (Reported as PR#18053
    by Christopher Carbone.)
  * Detection of the encoding of 'regular' macOS locales such as
    en_US (which is UTF-8) had been broken by a macOS change:
    fortunately these are now rarely used with en_US.UTF-8 being
    preferred.
  * sub() and gsub(pattern, repl, x, *) now keep attributes of x such
    as names() also when pattern is NA (PR#18079).
  * Time differences ("difftime" objects) get a replacement and a
    rep() method to keep "units" consistent.  (Thanks to a report and
    patch by Nicolas Bennett in PR#18066.)
  * The \RdOpts macro, setting defaults for \Sexpr options in an Rd
    file, had been ineffective since R 2.12.0: it now works again.
    (Thanks to a report and patch by Sebastian Meyer in PR#18073.)
  * mclapply and pvec no longer accidentally terminate parallel
    processes started before by mcparallel or related calls in
    package parallel (PR#18078).
  * grep and other functions for evaluating (extended) regular
    expressions handle in Unicode also strings not explicitly flagged
    UTF-8, but flagged native when running in UTF-8 locale.
  * Fixed a crash in fifo implementation on Windows (PR#18031).
  * Binary mode in fifo on Windows is now properly detected from
    argument open (PR#15600, PR#18031).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1622808000">- The line %{__install} -m 755 -d %{_infodir}
  no longer works in TW or Factory.
  But without that line it works everywhere. So this instruction
  was commented out of the spec file.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1628596800">- CHANGES IN R 4.1.1:
  NEW FEATURES:
  * require(pkg, quietly = TRUE) is quieter and in particular does
    not warn if the package is not found.
  DEPRECATED AND DEFUNCT:
  * Use of ftp:// URIs should be regarded as deprecated, with
    on-going support confined to method = "libcurl" and not routinely
    tested.  (Nowadays no major browser supports them.)
  * The non-default method = "internal" is deprecated for http:// and
    ftp:// URIs for both download.file and url.
  * On Windows, method = "wininet" is deprecated for http://,
    https:// and ftp:// URIs for both download.file and url.  (A
    warning is only given for ftp://.)
    For ftp:// URIs the default method is now "libcurl" if available
    (which it is on CRAN builds).
    method = "wininet" remains the default for http:// and https://
    URIs but if libcurl is available, using method = "libcurl" is
    preferred.
  INSTALLATION:
  * make check now works also without a LaTeX installation.  (Thanks
    to Sebastian Meyer's PR#18103.)
  BUG FIXES:
  * make check-devel works again in an R build configured with
  - -without-recommended-packages.
  * qnbinom(p, size, mu) for large size/mu is correct now in a range
    of cases (PR#18095); similarly for the (size, prob)
    parametrization of the negative binomial.  Also qpois() and
    qbinom() are better and or faster for extreme cases.  The
    underlying C code has been modularized and is common to all four
    cases of discrete distributions.
  * gap.axis is now part of the axis() arguments which are passed
    from bxp(), and hence boxplot().  (Thanks to Martin Smith's
    report and suggestions in PR#18109.)
  * .First and .Last can again be set from the site profile.
  * seq.int(from, to, *) and seq.default(..) now work better in large
    range cases where from-to is infinite where the two boundaries
    are finite.
  * all.equal(x,y) now returns TRUE correctly also when several
    entries of abs(x) and abs(y) are close to .Machine$double.xmax,
    the largest finite numeric.
  * model.frame() now clears the object bit when removing the class
    attribute of a value via na.action (PR#18100).
  * charClass() now works with multi-character strings on Windows
    (PR#18104, fixed by Bill Dunlap).
  * encodeString() on Solaris now works again in Latin-1 encoding on
    characters represented differently in UTF-8.  Support for
    surrogate pairs on Solaris has been improved.
  * file.show() on Windows now works with non-ASCII path names
    representable in the current native encoding (PR#18132).
  * Embedded R on Windows can now find R home directory via the
    registry even when installed only for the current user
    (PR#18135).
  * pretty(x) with finite x now returns finite values also in the
    case where the extreme x values are close in size to the maximal
    representable number .Machine$double.xmax.
    Also, it's been tweaked for very small ranges and when a boundary
    is close (or equal) to zero; e.g., pretty(c(0,1e-317)) no longer
    has negative numbers, currently still warning about a very small
    range, and pretty(2^-(1024 - 2^-1/(c(24,10)))) is more accurate.
  * The error message for not finding vignette files when weaving has
    correct file sizes now. (Thanks to Sebastian Meyer's PR#18154.)
  * dnbinom(20, &lt;large&gt;, 1) now correctly gives 0, and similar cases
    are more accurate with underflow precaution.  (Reported by Francisco Vera Alcivar in PR#18072.)</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635163200">- repaired https://bugzilla.suse.com/show_bug.cgi?id=1191380
  (rpmacros now go to rpmmacrodir)
- minor clean-ups in spec file</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635768000">- CHANGES IN R 4.1.2:
  C-LEVEL FACILITIES:
  * The workaround in headers R.h and Rmath.h (using namespace std;)
    for the Oracle Developer Studio compiler is no longer needed now
    C++11 is required so has been removed.  A couple more usages of
    log() (which should have been std::log()) with an int argument
    are reported on Solaris.
  * The undocumented limit of 4095 bytes on messages from the
    S-compatibility macros PROBLEM and MESSAGE is now documented and
    longer messages will be silently truncated rather than
    potentially causing segfaults.
  * If the R_NO_SEGV_HANDLER environment variable is non-empty, the
    signal handler for SEGV/ILL/BUS signals (which offers recovery
    user interface) is not set. This allows more reliable debugging
    of crashes that involve the console.
  DEPRECATED AND DEFUNCT:
  * The legacy S-compatibility macros PROBLEM, MESSAGE, ERROR, WARN,
    WARNING, RECOVER, ... are deprecated and will be hidden in R
    4.2.0. R's native interface of Rf_error and Rf_warning has long
    been preferred.
  BUG FIXES:
  * .mapply(F, dots, .) no longer segfaults when dots is not a list
    and uses match.fun(F) as always documented; reported by Andrew
    Simmons in PR#18164.
  * hist(&lt;Date&gt;, ...) and hist(&lt;POSIXt&gt;, ...)  no longer pass
    arguments for rect() (such as col and density) to axis().
    (Thanks to Sebastian Meyer's PR#18171.)
  * \Sexpr{ch} now preserves Encoding(ch). (Thanks to report and
    patch by Jeroen Ooms in PR#18152.)
  * Setting the RNG to "Marsaglia-Multicarry" e.g., by RNGkind(), now
    warns in more places, thanks to Andr'e Gillibert's report and
    patch in PR#18168.
  * gray(numeric(), alpha=1/2) no longer segfaults, fixing PR#18183,
    reported by Till Krenz.
  * Fixed dnbinom(x, size=&lt;very_small&gt;, .., log=TRUE) regression,
    reported by Martin Morgan.
  * as.Date.POSIXlt(x) now keeps names(x), thanks to Davis Vaughan's
    report and patch in PR#18188.
  * model.response() now strips an "AsIs" class typically, thanks to
    Duncan Murdoch's report and other discussants in PR#18190.
  * try() is considerably faster in case of an error and long call,
    as e.g., from some do.call().  Thanks to Alexander Kaever's
    suggestion posted to R-devel.
  * qqline(y = &lt;object&gt;) such as y=I(.), now works, see also
    PR#18190.
  * Non-integer mgp par() settings are now handled correctly in
    axis() and mtext(), thanks to Mikael Jagan and Duncan Murdoch's
    report and suggestion in PR#18194.
  * formatC(x) returns length zero character() now, rather than ""
    when x is of length zero, as documented, thanks to Davis
    Vaughan's post to R-devel.
  * removeSource(fn) now retains (other) attributes(fn).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1647000000">- CHANGES IN R 4.1.3:
  NEW FEATURES:
  * The default version of Bioconductor has been changed to 3.14.
    (This is used by setRepositories and the menus in GUIs.)
  UTILITIES:
  * R CMD check --as-cran has a workaround for a bug in versions of
    file up to at least 5.41 which mis-identify DBF files last
    changed in 2022 as executables.
  C-LEVEL FACILITIES:
  * The legacy S-compatibility macros SINGLE_* in R_ext/Constants.h
    (included by R.h) are deprecated and will be removed in R 4.2.0.
  BUG FIXES:
  * Initialization of self-starting nls() models with initialization
    functions following the pre-R-4.1.0 API (without the ...
    argument) works again for now, with a deprecation warning.
  * Fixed quoting of ~autodetect~ in Java setting defaults to avoid
    inadvertent user lookup due to leading ~, reported in PR#18231 by
    Harold Gutch.
  * substr(., start, stop) &lt;- v now treats _negative_ stop values
    correctly.  Reported with a patch in PR#18228 by Brodie Gaslam.
  * Subscripting an array x without dimnames by a
    length(dim(x))-column character matrix gave "random" non-sense,
    now an error; reported in PR#18244 by Mikael Jagan.
  * ...names() now matches names(list(...)) closely, fixing PR#18247.
  * all.equal(*, scale = s) now works as intended when length(s) &gt; 1,
    partly thanks to Michael Chirico's PR#18272.
  * print(x) for long vectors x now also works for named atomic
    vectors or lists and prints the correct number when reaching the
    getOption("max.print") limit; partly thanks to a report and
    proposal by Hugh Parsonage to the R-devel list.
  * all.equal(&lt;selfStart&gt;, *) no longer signals a deprecation
    warning.
  * reformulate(*, response=r) gives a helpful error message now when
    length(r) &gt; 1, thanks to Bill Dunlap's PR#18281.
  * Modifying globalCallingHandlers inside withCallingHandlers() now
    works or fails correctly, thanks to Henrik Bengtsson's PR#18257.
  * hist(&lt;Date&gt;, breaks = "days") and hist(&lt;POSIXt&gt;, breaks = "secs")
    no longer fail for inputs of length 1.
  * qbeta(.001, .9, .009) and similar cases now converge correctly
    thanks to Ben Bolker's report in PR#17746.
  * window(x, start, end) no longer wrongly signals "'start' cannot
    be after 'end'", fixing PR#17527 and PR#18291.
  * data() now checks that its (rarely used) list argument is a
    character vector - a couple of packages passed other types and
    gave incorrect results.
  * which() now checks its arr.ind argument is TRUE rather coercing
    to logical and taking the first element - which gave incorrect
    results in package code.
  * model.weights() and model.offset() more carefully extract their
    model components, thanks to Ben Bolker and Tim Taylor's R-devel
    post.
  * list.files(recursive = TRUE) now shows all broken symlinks
    (previously, some of them may have been omitted, PR#18296).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1650628800">- CHANGES IN R 4.2.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * The formula method of aggregate() now matches the generic in
    naming its first argument x (resolving PR#18299 by Thomas
    Soeiro).
    This means that calling aggregate() with a formula as a named
    first argument requires name formula in earlier versions of R and
    name x now, so portable code should not name the argument (code
    in many packages did).
  * Calling &amp;&amp; or || with either argument of length greater than one
    now gives a warning (which it is intended will become an error).
  * Calling if() or while() with a condition of length greater than
    one gives an error rather than a warning.  Consequently,
    environment variable _R_CHECK_LENGTH_1_CONDITION_ no longer has
    any effect.
  * Windows users should consult the WINDOWS section below for some
    profound changes including
  * Support for 32-bit builds has been dropped.
  * UTF-8 locales are used where available.
  * The default locations for the R installation and personal
    library folder have been changed.
    Thanks to Tomas Kalibera for months of work on the Windows port
    for this release.
  NEW FEATURES:
  * matrix(x, n, m) now warns in more cases where length(x) differs
    from n * m, as suggested by Abby Spurdle and Wolfgang Huber in
    Feb 2021 on the R-devel mailing list.
    This warning can be turned into an error by setting environment
    variable _R_CHECK_MATRIX_DATA_ to TRUE: R CMD check --as-cran
    does so unless it is already set.
  * Function file_test() in package utils gains tests for symlinks,
    readability and writability.
  * capabilities("libxml") is now false.
    The description of capabilities("http/ftp") now reflects that it
    refers to the default method, no longer the internal one.
  * simplify2array() gains an except argument for controlling the
    exceptions used by sapply().
  * Environment variables R_LIBS_USER and R_LIBS_SITE are both now
    set to the R system default if unset or empty, and can be set to
    NULL to indicate an empty list of user or site library
    directories.
  * The warning for axis()(-like) calls in cases of relatively small
    ranges (typically in log-scale situations) is slightly improved
    _and_ suppressed from explicit calls to .axisPars() as has always
    been the intention.
  * The contrasts setter function `contrasts&lt;-` gains an explicit
    default how.many = NULL rather than just using missing(how.many).
  * grid.pretty() gains a new optional argument n = 5.
  * There is a new function .pretty() with option bounds as a
    technical-utility version of pretty().  It and pretty() gain a
    new argument f.min with a better than back-compatible default.
  * Function grDevices::axisTicks() and related functions such as
    graphics::axis() work better, notably for the log scale; partly
    because of the pretty() improvements, but also because care is
    taken e.g., when ylim is finite but diff(ylim) is infinite.
  * nclass.FD() gains a digits option.
  * The R Mathlib internal C function bd0() (called indirectly from a
    dozen probability density and distribution functions such as
    dpois(), dbinom(), dgamma(), pgamma() _etc_) has been
    complemented by a more sophisticated and (mostly) more accurate C
    function ebd0(), currently called only by internal dpois_raw()
    improving accuracy for R level dpois() and potentially others
    calling it such as dnbinom(), dgamma() or pgamma().  (Thanks to
    Morten Welinder's PR#15628.)
  * write.ftable() gains sep = " " argument as suggested by Thomas
    Soeiro.
  * The names of the locale categories supported by R's
    Sys.getlocale() and Sys.setlocale() are now provided by variable
    .LC.categories in the base namespace.
  * The Date and POSIXt methods for hist() and the histogram method
    for plot() now also use the new default col = "lightgray" in
    consistency with the corresponding change to hist()'s default for
    R 4.0.0.
  * hist.default() gains new fuzz argument, and the histogram plot
    method no longer uses fractional axis ticks when displaying
    counts ("Frequency").
  * mapply() and hence Map() now also obey the "max-or-0-if-any"
    recycling rule, such that, e.g., Map(`+`, 1:3, 1[0]) is valid
    now.
  * as.character(&lt;obj&gt;) for "hexmode" or "octmode" objects now
    fulfils the important basic rule as.character(x)[j] ===
    as.character(x[j]).
  * The set utility functions, notably intersect() have been tweaked
    to be more consistent and symmetric in their two set arguments,
    also preserving a common mode.
  * substr(ch, start,end) &lt;- new now e.g., preserves names(ch); ditto
    for substring(), thanks to a patch from Brodie Gaslam.
  * plot(&lt;lm&gt;) gains a extend.ylim.f argument, in partial response to
    PR#15285; further PR#17784 is fixed thanks to several
    contributors and a patch by Elin Waring.  The Cook's dist
    contours get customizable via cook.col and cook.lty with a
    different default color and their legend is nicer by default and
    customizable via cook.legendChanges.
  * Attempting to subset an object that is not subsettable now
    signals an error of class notSubsettableError. The
    non-subsettable object is contained in the object field of the
    error condition.
  * Subscript-out-of-bounds errors are now signaled as errors of
    class subscriptOutOfBoundsError.
  * Stack-overflow errors are now signaled as errors inheriting from
    class stackOverflowError. See ?stackOverflowError for more
    details.
  * New partly experimental Sys.setLanguage() utility, solving the
    main problem of PR#18055.
  * gettext() and gettextf() get a new option trim = TRUE which when
    set to false allows translations for strings such as "Execution
    halted\n" typical for C code.
  * An experimental implementation of hash tables is now available.
    See ?hashtab for more details.
  * identical() gains a extptr.as.ref argument for requesting that
    external pointer objects be compared as reference objects.
  * reorder() gets an argument decreasing which it passes to sort()
    for level creation; based on the wish and patch by Thomas Soeiro
    in PR#18243.
  * as.vector() gains a data.frame method which returns a simple
    named list, also clearing a long standing 'FIXME' to enable
    as.vector(&lt;data.frame&gt;, mode="list").  This breaks code relying
    on as.vector(&lt;data.frame&gt;) to return the unchanged data frame.
  * legend() is now vectorized for arguments cex, x.intersp, and
    text.width.  The latter can now also be specified as a vector
    (one element for each column of the legend) or as NA for
    computing a proper column wise maximum value of strwidth(legend).
    The argument y.intersp can be specified as a vector with one
    entry for each row of the legend.
    legend() also gains new arguments title.cex and title.font.
    Thanks to Swetlana Herbrandt.
  * Deparsing no longer remaps attribute names dim, dimnames, levels,
    names and tsp to historical S-compatible names (which structure()
    maps back).
  * sample() and sample.int() have additional sanity checks on their
    size and n arguments.
    all.equal.numeric() gains a sanity check on its tolerance
    argument - calling all.equal(a, b, c) for three numeric vectors
    is a surprisingly common error.
    mean(na.rm =), rank(na.last =), barplot(legend.text =),
    boxplot(), contour(drawlabels =), polygon(border =) and
    methods::is(class2 =) have more robust sanity checks on their
    arguments.
    R CMD Rd2pdf (used by R CMD check) has a more robust sanity check
    on the format of \alias{} commands.
  * psigamma(x, deriv) for negative x now also works for deriv = 4
    and 5; their underlying C level dpsifn() is documented in
    'Writing R Extensions'.
  * The HTML help system now uses HTML5 (wish of PR#18149).
  * ks.test() now provides exact p-values also with ties and MC
    p-values in the two-sample (Smirnov) case.  By Torsten Hothorn.
  * ks.test() gains a formula interface, with y ~ 1 for the
    one-sample (Kolmogorov) test and y ~ group for the two-sample
    (Smirnov) test.  Contributed by Torsten Hothorn.
  * The return value from ks.test() now has class c("ks.test",
    "htest") - packages using try() need to take care to use
    inherits() and not == on the class.
  * New functions psmirnov(), qsmirnov() and rsmirnov() in package
    stats implementing the asymptotic and exact distributions of the
    two-sample Smirnov statistic.
  * iconv() now allows sub = "c99" to use C99-style escapes for UTF-8
    inputs which cannot be converted to encoding to.
  * In a forward pipe |&gt; expression it is now possible to use a named
    argument with the placeholder _ in the rhs call to specify where
    the lhs is to be inserted.  The placeholder can only appear once
    on the rhs.
  * The included LAPACK sources have been updated to version 3.10.0,
    except for the four Fortran 77 routines which 3.10.0 has
    re-implemented in Fortran 90 (where the older versions have been
    retained as the R build process does not support Fortran 90).
  * path.expand() and most other uses of tilde expansion now warn if
    a path would be too long if expanded.  (An exception is
    file.exists(), which silently returns false.)
  * trunc(&lt;Date&gt;, *) now supports units = "months" or "years" for
    consistency with the POSIXt method, thanks to Dirk Eddelbuettel's
    proposal in PR#18099.
  * list2DF() now checks that its arguments are of the same length,
    rather than use recycling.
  * The HTML help system has several new features: LaTeX-like math
    can be typeset using either KaTeX or MathJax, usage and example
    code is highlighted using Prism, and for dynamic help the output
    of examples and demos can be shown within the browser if the
    knitr package is installed. These features can be disabled by
    setting the environment variable _R_HELP_ENABLE_ENHANCED_HTML_ to
    a false value.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 15
    and so packages that provide graphics devices should be
    reinstalled.
  * The grid package now allows the user to specify a "vector" of
    pattern fills.  The fill argument to gpar() accepts a list of
    gradients and/or patterns and the functions linearGradient(),
    radialGradient(), and pattern() have a new group argument.
    Points grobs (data symbols) can now also have a pattern fill.
    The grobCoords() function now returns a more informative and
    complex result.
  * The grid package has new functions for drawing isolated groups:
    grid.group(), grid.define(), and grid.use().  These functions add
    compositing operators and affine transformations to R's graphics
    capabilities.
    The grid package also has new functions for stroking and filling
    paths: grid.stroke(), grid.fill(), and grid.fillStroke().
    A new function as.path() allows the user to specify the fill rule
    for a path that is to be used for clipping, stroking, or filling;
    available options are "winding" and "evenodd".  A new function
    as.mask() allows the user to specify the type of a mask;
    available options are "alpha" and "luminance".
    These new features are only supported so far (at most) on the
    Cairo-based graphics devices and on the pdf() device.
  * dev.capabilities() reports on device support for the new
    features.
  * par() now warns about unnamed non-character arguments to prevent
    misuse such as {usr &lt;- par("usr"); par(usr)}.
  INSTALLATION:
  * Facilities for accessing ftp:// sites are no longer tested
    (except _pro tem_ for curlGetHeaders()) as modern browsers have
    removed support.
  * R can now be built with DEFS = -DSTRICT_R_HEADERS .
  PACKAGE INSTALLATION:
  * R CMD INSTALL no longer tangles vignettes. This completes an R
    CMD build change in R 3.0.0 and affects packages built before R
    3.0.2. Such packages should be re-made with R CMD build to have
    the tangled R code of vignettes shipped with the tarball.
  * USE_FC_LEN_T will become the default: this uses the correct
    prototypes for Fortran BLAS/LAPACK routines called from C/C++,
    and requires adjustment of most such calls - see 'Writing R
    Extensions' SS6.6.2.  (This has been supported since R 3.6.2.)
  * Package installation speed for packages installed with
    keep.source has been improved. This resolve the issue reported by
    Ofek Shilon in PR#18236.
  UTILITIES:
  * R CMD check can optionally report files/directories left behind
    in home, /tmp (even though TMPDIR is set) and other directories.
    See the "R Internals" manual for details.
  * R CMD check now reports byte-compilation errors during
    installation.  These are not usually fatal but may result in
    parts of the package not being byte-compiled.
  * _R_CHECK_DEPENDS_ONLY_ can be applied selectively to examples,
    tests and/or vignettes in R CMD check: see the "R Internals"
    manual.
  * _R_CHECK_SRC_MINUS_W_IMPLICIT_ now defaults to true: recent
    versions of Apple clang on macOS have made implicit function
    declarations in C into a compilation error.
  * R CMD check --as-cran makes use of the environment variable
    AUTORECONF.  See the "R Internals" manual SS8 for further details.
  * R CMD check --use-valgrind also uses valgrind when re-building
    vignettes as some non-Sweave vignettes unhelpfully comment out
    all their code when R CMD check runs vignettes.
  * Errors in re-building vignettes (unless there are LaTeX errors)
    are reported by R CMD check as ERROR rather than WARNING when
    running vignettes has been skipped (as it frequently is in CRAN
    checks and by --as-cran).
  * R CMD Rd2pdf gains a --quiet option that is used by R CMD build
    when building the PDF package manual.
  * R CMD Rd2pdf now always runs LaTeX in batch mode, consistent with
    Texinfo &gt;= 6.7. The --batch option is ignored.
  * R CMD build and R CMD check now include the Rd file name and line
    numbers in the error message of an \Sexpr evaluation failure.
  * For packages using the \doi Rd macro (now an install-time \Sexpr)
    but no other dynamic Rd content, R CMD build now produces a
    smaller tarball and is considerably faster - skipping temporary
    package installation.
  C-LEVEL FACILITIES:
  * The non-API header R_ext/R-ftp-http.h is no longer provided, as
    the entry points it covered are now all defunct.
  * A number of non-API declarations and macro definitions have been
    moved from the installed header Rinternals.h to the internal
    header Defn.h. Packages that only use entry points and
    definitions documented to be part of the API as specified in
    'Writing R Extensions' SS6 should not be affected.
  * The macro USE_RINTERNALS no longer has any effect when compiling
    package code.  Packages which also use R_NO_REMAP will need to
    ensure that the remapped names are used for calls to API
    functions that were formerly also made available as macros.
  * The deprecated legacy S-compatibility macros PROBLEM, MESSAGE,
    ERROR, WARN, WARNING, RECOVER, ... are no longer defined in
    R_exts/RS.h (included by R.h).  Replace these by calls to
    Rf_error and Rf_warning (defined in header R_ext/Error.h included
    by R.h).
    Header R_ext/RS.h no longer includes R_ext/Error.h.
  * Header R_ext/Constants.h (included by R.h) when included from C++
    now includes the C++ header cfloat rather than the C header
    float.h (now possible as C++11 is required).
  * The legacy S-compatibility macros DOUBLE_* in R_ext/Constants.h
    (included by R.h) are deprecated.
  * The deprecated S-compatibility macros SINGLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * R_Calloc, R_Free and R_Realloc are preferred to their unprefixed
    forms and error messages now use the prefix. These forms were
    introduced in R 3.4.0 and are available even when
    STRICT_R_HEADERS is defined.
  * rmultinom has been documented in 'Writing R Extensions' SS6 so is
    now part of the R API.
  * Similarly, Rtanpi, called from R level tanpi() is now part of the
    R API.
  * The long-deprecated, undocumented and non-API entry point call_R
    is no longer declared in R_ext/RS.h (included by R.h).
  * The header S.h which has been unsupported since Jan 2016 has been
    removed.  Use R.h instead.
  DEPRECATED AND DEFUNCT:
  * The (non-default and deprecated) method = "internal" for
    download.file() and url() no longer supports http:// nor ftp://
    URIs.  (It is used only for file:// URIs.)
    On Windows, download.file(method = "wininet") no longer supports
    ftp:// URIs.  (It is no longer the default method, which is
    "libcurl" and does.)
    On Windows, the deprecated method = "wininet" now gives a warning
    for http:// and https:// URIs for both download.file() and url().
    (It is no longer the default method.)
  * On Windows, the command-line option --max-mem-size and
    environment variable R_MAX_MEM_SIZE are defunct.  The memory
    allocation limit was important for 32-bit builds, but these are
    no longer supported.
  * default.stringsAsFactors() is now formally deprecated, where that
    was only mentioned on its regular help page, previously.  So it
    now gives a warning if called.
  * unix.time() is defunct now; it had been deprecated since R 3.4.0.
  BUG FIXES:
  * Setting digits = 0 in format(), print.default() (and hence
    typically print()) or options() is again invalid.  Its behaviour
    was platform-dependent, and it is unclear what "zero significant
    digits" should mean (PR#18098).
  * Messages from C code in the cairo section of package grDevices
    are now also offered for translation, thanks to Michael Chirico's
    PR#18123.
  * mean(x) with finite x now is finite also without "long.double"
    capability.
  * R CMD Rd2pdf no longer leaves an empty build directory behind
    when it aborts due to an already existing output file.  (Thanks
    to Sebastian Meyer's PR#18141.)
  * density(x, weights = w, na.rm = TRUE) when anyNA(x) is true, now
    removes weights "in parallel" to x, fixing PR#18151, reported by
    Matthias Gondan.  Additionally, it gets a subdensity option.
  * Conversion of \Sexpr[]{&lt;expR&gt;} to LaTeX or HTML no longer
    produces long blocks of empty lines when &lt;expR&gt; itself contains
    several lines all producing empty output.  Thanks to a report and
    patch by Ivan Krylov posted to R-devel.
  * R CMD build no longer fails if a package vignette uses child
    documents and inst/doc exists.  (Thanks to Sebastian Meyer's
    PR#18156.)
  * When an R documentation ('help' source) file man/foo.Rd in a
    package has \donttest{..} examples with a syntax error, it is now
    signalled as ERROR and with correct line numbers relating to the
  * -Ex.R file, thanks to Duncan Murdoch and Sebastian Meyer's
    reports and patch proposals in PR#17501.
  * Improved determination of the correct translation domain in
    non-base packages, addressing the combination of PR#18092 and
    PR#17998 (#c6) with reports and _augmented_ patch #2904 by
    Suharto Anggono.
    Note that "R-base" is no longer the default domain e.g., for
    top-level calls to gettext(); rather translation needs explicit
    domain = * specification in such cases.
  * identical(attrib.as.set=FALSE) now works correctly with data
    frames with default row names (Thanks to Charlie Gao's PR#18179).
  * txtProgressBar() now enforces a non-zero width for argument char,
    without which no progress can be visible.
  * dimnames(table(d)) is more consistent in the case where d is a
    list with a single component, thanks to Thomas Soeiro's report to
    R-devel.
    Further, table(d1, d2) now gives an error when d1 and d2 are data
    frames as suggested by Thomas in PR#18224.
  * Fix for drawing semi-transparent lines and fills on the native
    Windows graphics device (PR#18219 and PR#16694).  Thanks to Nick
    Ray for helpful diagnosis on Bugzilla.
  * The deparser now wraps sub-expressions such as if(A) ..  with
    parentheses when needed; thanks to Duncan Murdoch's PR#18232 and
    Lionel Henry's patches there.
  * remove.packages() no longer tries to uninstall Priority: base
    packages, thanks to a report and suggestions by Colin Fay in
    PR#18227.
  * win.metafile() now has xpinch and ypinch arguments so that the
    user can override Windows' (potentially wrong) guess at device
    dimensions.
  * x[i] and x[[i]] for non-integer i should now behave in all cases
    as always documented: the index used is equivalent to
    as.integer(i) unless that would overflow where trunc(i) is used
    instead; thanks to Suharto Anggono's report and patch proposals
    in PR#17977.
  * asOneSidedFormula() now associates the resulting formula with the
    global environment rather than the evaluation environment created
    for the call.
  * &lt;bibentry&gt;$name now matches the field name case-insensitively,
    consistent with bibentry() creation and the replacement method.
  * cbind() failed to detect some length mismatches with a mixture of
    time-series and non-time-series inputs.
  * The default LaTeX style file Sweave.sty used by the RweaveLatex
    driver no longer loads the obsolete ae package; thanks to a
    report by Thomas Soeiro in PR#18271.  Furthermore, it now skips
    \usepackage[T1]{fontenc} for engines other than pdfTeX (if
    detected) or if the new [nofontenc] option is used.
  * smooth.spline() now stores its logical cv argument more safely,
    fixing a rare bug when printing, and also stores n.
  * smooth.spline(x,y,*) now computes the cv.crit statistic
    correctly, also when is.unsorted(x), fixing PR#18294.
  * The data.frame method of rbind() now warns when binding
    not-wholly-recycling vectors, by analogy to the default method
    (for matrices).
  * setAs() finds the correct class for name to when multiple
    packages define a class with that name. Thanks to Gabor Csardi
    for the report.
  * Fix for detaching a package when two classes of the same name are
    present in method signatures for the same generic. Thanks to
    Gabor Csardi for the report.
  * match.arg("", c("", "a", "B")) gives a better error message, in
    part from PR#17959, thanks to Elin Waring.
  * R CMD Sweave --clean no longer removes pre-existing files or
    subdirectories (PR#18242).
  * The quartz() device no longer splits polylines into subpaths.
    That has caused narrowly-spaced lines with many points to always
    look solid even when dashed line type was used due to dash phase
    restarts.
  * Deparsing constructs such as quote(1 + `!`(2) + 3) works again as
    before R 3.5.0, thanks to the report and patch in PR#18284 by
    Suharto Anggono.
  * as.list(f) for a factor f now keeps names(f), fixing PR#18309.
  * qbeta(.001, .9, .009) and analogous qf() calls now return a
    correct value instead of NaN or wrongly 1, all with a warning;
    thanks to the report by Ludger Goeminne in PR#18302.
  * plot.lm() failed to produce the plot of residuals vs.  factor
    levels (i.e., which=5 when leverages are constant) for models
    with character predictors (PR#17840).
  * interaction.plot(..., xtick = TRUE) misplaced the x-axis line
    (PR#18305).
  * Not strictly fixing a bug, format()ing and print()ing of
    non-finite Date and POSIXt values NaN and +/-Inf no longer show
    as NA but the respective string, e.g., Inf, for consistency with
    numeric vector's behaviour, fulfilling the wish of PR#18308.
  * R CMD check no longer runs test scripts generated from
    corresponding .Rin files twice and now signals an ERROR if
    processing an .Rin script fails.
  * tools::Rd2txt() used for plain-text help pages now renders \hrefs
    (if tools::Rd2txt_options(showURLs = TRUE)) and \urls with
    percent-encoding and standards-compliant delimiting style (angle
    brackets and no URL: prefix).  \email is now rendered with a
    mailto: prefix.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1655985600">- CHANGES IN R 4.2.1:
  NEW FEATURES:
  * New function utils::findCRANmirror() to find out if a CRAN mirror
    has been selected, otherwise fallback to the main site.  This
    behaves in the same way as tools::CRAN_package_db() and is
    intended for packages wishing to access CRAN for purposes other
    than installing packages.
    The need for this was shown by a day when the main CRAN website
    was offline and a dozen or so packages which had its URL
    hardcoded failed their checks.
  INSTALLATION on a UNIX-ALIKE:
  * The libraries searched for by --with-blas (without a value) now
    include BLIS (after OpenBLAS but before ATLAS).  And on macOS,
    the Accelerate framework (after ATLAS).  (This is patterned after
    the AX_BLAS macro from the Autoconf Archive.)
  * The included LAPACK sources have been updated to 3.10.1.
  UTILITIES:
  * The (full path to) the command tidy to be used for HTML
    validation can be set by environment variable R_TIDYCMD.
  * Setting environment variable _R_CHECK_RD_VALIDATE_RD2HTML_ to a
    false value will override R CMD check --as-cran and turn off HTML
    validation.  This provides a way to circumvent a problematic
    tidy.
    The 2006 version that ships with macOS is always skipped.
  C-LEVEL FACILITIES:
  * The undocumented legacy declarations of Sint, Sfloat, SINT_MAX
    and SINT_MIN in header R.h are deprecated.
  BUG FIXES:
  * fisher.test(d) no longer segfaults for "large" d; fixing PR#18336
    by preventing/detecting an integer overflow reliably.
  * tar(., files=*) now produces correctly the warning about invalid
    uid or gid of files, fixing PR#18344, reported by Martin Morgan.
  * tk_choose.files() with multi = FALSE misbehaved on paths
    containing spaces (PR#18334) (regression introduced in R 4.0.0).
  * sort(x, partial = ind, *) now works correctly notably for the
    non-default na.last = FALSE or TRUE, fixing PR#18335 reported by
    James Edwards.
  * Environment variable _R_CHECK_XREFS_REPOSITORIES_ is only used
    for checking .Rd cross-references in R CMD check (as documented)
    and not for other uses looking for a CRAN mirror.
  * The search for a CRAN mirror when checking packages now uses
    getOption("repos") if that specifies a CRAN mirror, even when it
    does not also specify all three Bioconductor repositories (as was
    previously required).
  * The HTML code generated by tools::Rd2HTML() has been improved to
    pass tidy 5.8.0.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1667217600">- CHANGES IN R 4.2.2:
  NEW FEATURES:
  * tools::Rdiff(useDiff = TRUE) checks for the presence of an
    external diff command and switches to useDiff = FALSE if none is
    found.  This allows R CMD Rdiff to always work.
  * On Windows, environment variable R_LIBCURL_SSL_REVOKE_BEST_EFFORT
    can be used to switch to only 'best-effort' SSL certificate
    revocation checks with the default "libcurl" download method.
    This reduces security, but may be needed for downloads to work
    with MITM proxies (PR#18379).
  * (macOS) The run-time check for libraries from XQuartz for X11 and
    Tcl/Tk no longer uses otool from the Apple Developer Tools
    (PR#18400).
  * The LaTeX style for producing the PDF manuals, Rd.sty, now loads
    the standard amsmath, amsfonts and amssymb packages for greater
    coverage of math commands in the Rd \eqn and \deqn macros.  The
    \mathscr LaTeX command is also provided (via the mathrsfs
    package, if available, or the amsfonts bundle otherwise),
    fulfilling the wish of PR#18398.
  * (Windows) The default format of readClipboard() and
    writeClipboard() has been changed to 13 (CF_UNICODETEXT).
  INSTALLATION on a UNIX-ALIKE:
  * The PDF manuals (if built) can be compacted by the new target
    make compact-pdf (at the top level or in directory doc/manual).
  * There is now configure support for LLVM clang 15 on Linux, which
    defaults to position-independent (PIE) executables whereas
    gfortran does not.
  * Many small changes to ease compilation (and suppress warnings)
    with LLVM clang 15.
  BUG FIXES:
  * Rscript -e would fail if stdin were closed (Reported by Henrik
    Bengtsson.)
  * qt(*, log.p=TRUE) in outer tails no longer produces NaN in its
    final steps, thus fixing PR#18360.
  * tools::Rd2latex() now escapes hashes and ampersands when writing
    URLs, fixing LaTeX errors with such URLs in \tabular.
  * When isGeneric(f, fdef=*) is used with mismatching names, the
    warning is better understandable; reported (with fix) in PR#18370
    by Gabe Becker.
  * poly(x, n) now works again (and is now documented) when x is a
    "Date" or "POSIXct" object, or of another class while fulfilling
    mode(x) == "numeric".  This also enables poly(x, *, raw=TRUE) for
    such variables.  Reported by Michael Chirico to R-devel.
  * write.table(), write.csv() and write.csv2() restore their
    numerical precision (internal equivalent of digits = 15) after an
    interrupt (PR#18384).
  * One can now read also byte FF from a clipboard connection
    (PR#18385).
  * source("") and source(character()) now give more helpful error
    messages.
  * R CMD check --as-cran set _R_CHECK_TIMINGS_ too late to have the
    intended effect.
  * as.POSIXlt(x) now also works with very large dates x, fixing
    PR#18401 reported by Hannes M"uhleisen.
  * Files can now be extracted even from very large zip archives
    (PR#18390, thanks to Martin Jakt).
  * Non-finite objects of class "POSIXlt" are now correctly coerced
    to classes "Date" and "POSIXct"; following up on the extension to
    format() them correctly.
  * Added methods for is.finite(), is.infinite() and is.nan() for
    "POSIXlt" date-time objects.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1678881600">- CHANGES IN R 4.2.3:
  C-LEVEL FACILITIES:
  * The definition of DL_FUNC in R_ext/Rdynload.h has been changed to
    be fully C-compliant.  This means that functions loaded _via_ for
    example R_GetCCallable need to be cast to an appropriate type if
    they have any arguments.
  * .Machine has a new element sizeof.time_t to identify old systems
    with a 32-bit type and hence a limited range of date-times (and
    limited support for dates millions of years from present).
  PACKAGE INSTALLATION:
  * (Windows) The default C++ standard had accidentally been left at
    C++11 when it was changed to C++14 on Unix.
  BUG FIXES:
  * As "POSIXlt" objects may be "partially filled" and their list
    components meant to be recycled, length() now is the length of
    the longest component.
  * as.POSIXlt.Date() could underflow for dates in the far past (more
    than half a million years BCE).
  * as.Date.POSIXlt(x) would return "1970-01-01" instead of NA in R
    4.2.2, e.g., for
    x &lt;- as.POSIXlt(c("2019-01-30","2001-1-1"))
    x$mon &lt;- c(0L, NA); as.Date(x)
  * R CMD check failed to apply enabled _R_CHECK_SUGGESTS_ONLY_ to
    examples and vignettes (regression in R 4.2.0).
  * R CMD check did not re-build vignettes in separate processes by
    default (regression in R 4.2.0).
  * Running examples from HTML documentation now restores previous
    knitr settings and options (PR#18420).
  * Quartz: fonts are now located using Core Graphics API instead of
    deprecated ATS which is no longer supported in the macOS 13 SDK
    (PR#18426).  This also addresses an issue where the currently
    used font in the Quartz device context was not correctly
    retained.
  * (Windows) Math symbols in text drawing functions are again
    rendered correctly (PR#18440).  This fixes a regression in R
    4.2.1 caused by a fix in PR#18382 which uncovered an issue in
    GraphApp due to which the symbol charset was not used with TT
    Symbol font face.
  * (Windows) Installing a package with a src/Makefile.{win,ucrt}
    file includes ~/.R/Makevars.win64 in the search for user
    makevars, as documented in "R Installation and Administration"
    and done for packages with a src/Makevars.{win,ucrt} file.
  * format(&lt;POSIXlt_w/_unbalanced_sec&gt;, "....%OS&lt;n&gt;") with n &gt; 0 no
    longer accidentally uses the unbalanced seconds, thanks to
    Suharto Anggono's report (including patch) in PR#18448.
  * solve.default(a, b) works around issues with some versions of
    LAPACK when a contains NA or NaN values.
  * When UseMethod() cannot dispatch, it no longer segfaults
    producing the error message in case of a long class(), thanks to
    Joris Vankerschaver's report (including patch) in PR#18447.
  * When example(foo, ..) produces graphics on an interactive device
    it needs to open itself, it now leaves devAskNewPage() unchanged
    even when it was FALSE, thus fixing a 14 years old '&lt;FIXME&gt;'.
  * packageDescription() again catches errors from encoding
    conversions. This also fixes broken packageVersion() in C locale
    on systems where iconv does not support transliteration.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1681128000">- add patch to build with libcurl &gt;= 8</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1682078400">- CHANGES IN R 4.3.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Calling &amp;&amp; or || with LHS or (if evaluated) RHS of length greater
    than one is now always an error, with a report of the form
    'length = 4' in coercion to 'logical(1)'
    Environment variable _R_CHECK_LENGTH_1_LOGIC2_ no longer has any
    effect.
  NEW FEATURES:
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.10.1.  (This caused some platform-dependent
    changes to package check output.)  And then to the sources from
    LAPACK version 3.11.0 (with changes only to double complex
    subroutines).
  * The included LAPACK sources have been updated to include the four
    Fortran 90 routines rather than their Fortran 77 predecessors.
    This may give some different signs in SVDs or
    eigendecompositions..  (This completes the transition to LAPACK
    3.10.x begun in R 4.2.0.)
  * The LAPACK sources have been updated to version 3.11.0.  (No new
    subroutines have been added, so this almost entirely bug fixes:
    Those fixes do affect some computations with NaNs, including R's
    NA.)
  * The parser now signals _classed_ errors, notably in case of the
    pipe operator |&gt;.  The error object and message now give line and
    column numbers, mostly as proposed and provided by Duncan Murdoch
    in PR#18328.
  * toeplitz() is now generalized for asymmetric cases, with a
    toeplitz2() variant.
  * xy.coords() and xyz.coords() and consequently, e.g., plot(x,y,
    log = "y") now signal a _classed_ warning about negative values
    of y (where log(.) is NA).  Such a warning can be specifically
    suppressed or caught otherwise.
  * Regular expression functions now check more thoroughly whether
    their inputs are valid strings (in their encoding, e.g. in
    UTF-8).
  * The performance of grep(), sub(), gsub() and strsplit() has been
    improved, particularly with perl = TRUE and fixed = TRUE.  Use of
    useBytes = TRUE for performance reasons should no longer be
    needed and is discouraged: it may lead to incorrect results.
  * apropos() gains an argument dot_internals which is used by the
    completion (help(rcompgen)) engine to also see base internals
    such as .POSIXct().
  * Support in tools::Rdiff() for comparing uncompressed PDF files is
    further reduced - see its help page.
  * qqplot(x, y, ...) gains conf.level and conf.args arguments for
    computing and plotting a confidence band for the treatment
    function transforming the distribution of x into the distribution
    of y (Switzer, 1976, _Biometrika_). Contributed by Torsten
    Hothorn.
  * Performance of package_dependencies() has been improved for cases
    when the number of dependencies is large.
  * Strings newly created by gsub(), sub() and strsplit(), when any
    of the inputs is marked as "bytes", are also marked as "bytes".
    This reduces the risk of creating invalid strings and accidental
    substitution of bytes deemed invalid.
  * Support for readLines(encoding = "bytes") has been added to allow
    processing special text files byte-by-byte, without creating
    invalid strings.
  * iconv(from = "") now takes into account any declared encoding of
    the input elements and uses it in preference to the native
    encoding.  This reduces the risk of accidental creation of
    invalid strings, particularly when different elements of the
    input have different encoding (including "bytes").
  * Package repositories in getOption("repos") are now initialized
    from the repositories file when utils is loaded (if not already
    set, e.g., in .Rprofile).  (From a report and patch proposal by
    Gabriel Becker in PR#18405.)
  * compactPDF() gets a verbose option.
  * type.convert() and hence read.table() get new option tryLogical =
    TRUE with back compatible default.  When set to false, converts
    "F" or "T" columns to character.
  * Added new unit prefixes "R" and "Q" for abbreviating
    (unrealistically large) sizes beyond 10^{27} in standard = "SI",
    thanks to Henrik Bengtsson's PR#18435.
  * as.data.frame()'s default method now also works fine with atomic
    objects inheriting from classes such as "roman", "octmode" and
    "hexmode", such fulfilling the wish of PR#18421, by Benjamin
    Feakins.
  * The as.data.frame.vector() utility now errors for wrong-length
    row.names.  It warned for almost six years, with "Will be an
    error!".
  * sessionInfo() now also contains La_version() and reports codepage
    and timezone when relevant, in both print() and toLatex() methods
    which also get new option tzone for displaying timezone
    information when locale = FALSE.
  * New function R_compiled_by() reports the C and Fortran compilers
    used to build R, if known.
  * predict(&lt;lm&gt;, newdata = *) no longer unnecessarily creates an
    offset of all 0s.
  * solve() for complex inputs now uses argument tol and by default
    checks for 'computational singularity' (as it long has done for
    numeric inputs).
  * predict(&lt;rank-deficient lm&gt;, newdata=*) now obeys a new argument
    rankdeficient, with new default "warnif", warning only if there
    are non-estimable cases in newdata.  Other options include
    rankdeficient = "NA", predicting NA for non-estimable newdata
    cases.  This addresses PR#15072 by Russ Lenth and is based on his
    original proposal and discussions in PR#16158 also by David Firth
    and Elin Waring.  Still somewhat experimental.
  * Rgui console implementation now works better with the NVDA screen
    reader when the full blinking cursor is selected.  The underlying
    improvements in cursor handling may help also other screen
    readers on Windows.
  * The drop-field control in GraphApp can now be left with the TAB
    key and all controls can be navigated in the reverse order using
    the Shift+TAB key, improving accessibility of the Rgui
    configuration editor.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now fully accurate
    (instead of to "only" minimally five digits).
  * demo(error.catching) now also shows off withWarnings() and
    tryCatchWEMs().
  * As an experimental feature the placeholder _ can now also be used
    in the rhs of a forward pipe |&gt; expression as the first argument
    in an extraction call, such as _$coef. More generally, it can be
    used as the head of a chain of extractions, such as _$coef[[2]].
  * Spaces in the environment variable used to choose the R session's
    temporary directory (TMPDIR, TMP and TEMP are tried in turn) are
    now fatal.  (On Windows the 'short path' version of the path is
    tried and used if that does not contain a space.)
  * all.equal.numeric() gets a new optional switch giveErr to return
    the numeric error as attribute.  Relatedly,
    stopifnot(all.equal&lt;some&gt;(a, b, ..)) is as "smart" now, as
    stopifnot(all.equal(....)) has been already, thus allowing
    customized all.equal&lt;Some&gt;() wrappers.
  * R on Windows is now able to work with path names longer than 260
    characters when these are enabled in the system (requires at
    least Windows 10 version 1607).  Packages should be updated to
    work with long paths as well, instead of assuming PATH_MAX to be
    the maximum length.  Custom front-ends and applications embedding
    R need to update their manifests if they wish to allow this
    feature.  See
    &lt;https://blog.r-project.org/2023/03/07/path-length-limit-on-windows&gt;
    for more information.
  * 'Object not found' and 'Missing argument' errors now give a more
    accurate error context. Patch provided by Lionel Henry in
    PR#18241.
  * The @ operator is now an S3 generic. Based on contributions by
    Tomasz Kalinowski in PR#18482.
  * New generic chooseOpsMethod() provides a mechanism for objects to
    resolve cases where two suitable methods are found for an Ops
    Group Generic. This supports experimenting with alternative
    object systems. Based on contributions by Tomasz Kalinowski in
    PR#18484.
  * inherits(x, what) now accepts values other than a simple
    character vector for argument what. A new generic, nameOfClass(),
    is called to resolve the class name from what. This supports
    experimenting with alternative object systems. Based on
    contributions by Tomasz Kalinowski in PR#18485.
  * Detection of BLAS/LAPACK in use (sessionInfo()) with FlexiBLAS
    now reports the current backend.
  * The "data.frame" method for subset() now warns about extraneous
    arguments, typically catching the use of = instead of == in the
    subset expression.
  * Calling a:b when numeric a or b is longer than one may now be
    made into an error by setting environment variable
    _R_CHECK_LENGTH_COLON_ to a true value, along the proposal in
    PR#18419 by Henrik Bengtsson.
  * density(x, weights = *) now warns if automatic bandwidth
    selection happens without using weights; new optional warnWbw may
    suppress the warning.  Prompted by Christoph Dalitz' PR#18490 and
    its discussants.
  * rm(list = *) is faster and more readable thanks to Kevin Ushey's
    PR#18492.
  * The plot.lm() function no longer produces a normal Q-Q plot for
    GLMs. Instead it plots a half-normal Q-Q plot of the absolute
    value of the standardized deviance residuals.
  * The print() method for class "summary.glm" no longer shows
    summary statistics for the deviance residuals by default.  Its
    optional argument show.residuals can be used to show them if
    required.
  * The tapply() function now accepts a data frame as its X argument,
    and allows INDEX to be a formula in that case. by.data.frame()
    similarly allows INDICES to be a formula.
  * The performance of df[j] &lt;- value (including for missing j) and
    write.table(df) has been improved for data frames df with a large
    number of columns.  (Thanks to Gabriel Becker's PR#18500,
    PR#18503 and discussants, prompted by a report from Toby Dylan
    Hocking on the R-devel mailing list.)
  * The matrix multiply operator %*% is now an S3 generic, belonging
    to new group generic matrixOps.  From Tomasz Kalinowski's
    contribution in PR#18483.
  * New function array2DF() to convert arrays to data frames,
    particularly useful for the list arrays created by tapply().
  DATES and TIMES:
  * On platforms where (non-UTC) datetimes before 1902 (or before
    1900 as with system functions on recent macOS) are guessed by
    extrapolating time zones from 1902-2037, there is a warning at
    the first use of extrapolation in a session.  (As all time zones
    post 2037 are extrapolation, we do not warn on those.)
  * (Platforms using --with-internal-tzone, including Windows and by
    default macOS). How years are printed in dates or date-times can
    be controlled by environment variable R_PAD_YEARS_BY_ZERO.  The
    default remains to pad to 4 digits by zeroes, but setting value
    no gives no padding (as used by default by glibc).
  * strftime() tries harder to determine the offset for the "%z"
    format, and succeeds on the mainstream R platforms.
  * strftime() has a limit of 2048 bytes on the string produced -
    attempting to exceed this is an error.  (Previously it silently
    truncated at 255 bytes.)
  * sessionInfo() records (and by default prints) the system time
    zone as part of the locale information.  Also, the source
    (system/internal) of the date-time conversion and printing
    functions.
  * Objects of class "POSIXlt" created in this version of R always
    have 11 components: component zone is always set, and component
    gmtoff is set for times in UTC and usually set on the (almost
    all) platforms which have C-level support, otherwise is NA.
  * There are comprehensive validity checks on the structure of
    objects of class "POSIXlt" when converting (including formatting
    and printing).  (This avoids mis-conversions of hand-crafted
    objects.)
  * There is some support for using the native date-time routines on
    macOS: this is only viable on recent versions (e.g. 12.6 and 13)
    and does get wrong some historical changes (before 1900, during
    WWII).  Use of --with-internal-tzone remains the default.
  * as.POSIXct(&lt;numeric&gt;) and as.POSIXlt(.) (without specifying
    origin) now work.  So does as.Date(&lt;numeric&gt;).
  * as.Date.POSIXct(., tz) now treats several tz values, notably
    "GMT" as equivalent to "UTC", proposed and improved by Michael
    Chirico and Joshua Ulrich in PR#17674.
  * Experimental balancePOSIXlt() utility allows using "ragged" and
    or out-of-range "POSIXlt" objects more correctly, e.g., in
    subsetting and subassignments.  Such objects are now documented.
    More experimentally, a "POSIXlt" object may have an attribute
    "balanced" indicating if it is known to be filled or fully
    balanced.
  * Functions axis.Date() and axis.POSIXct() are rewritten to gain
    better default tick locations and better default formats by using
    prettyDate(). Thanks to Swetlana Herbrandt.
  * The mapping of Windows' names for time zones to IANA's 'Olson'
    names has been updated.  When ICU is available (it is by
    default), it is used to get a mapping for the current region set
    in Windows.  This can be overridden by setting environment
    variable TZ to the desired Olson name - see OlsonNames() for
    those currently available.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 16
    and so packages that provide graphics devices should be
    reinstalled.
  * The grDevices and grid packages have new functions for rendering
    typeset glyphs, primarily: grDevices::glyphInfo() and
    grid::grid.glyph().
    Rendering of typeset glyphs is only supported so far on the
    Cairo-based graphics devices and on the pdf() and quartz()
    devices.
  * The defined behaviour for "clear" and "source" compositing
    operators (via grid::grid.group()) has been changed (to align
    better with simple interpretation of original Porter-Duff
    definitions).
  * Support for gradients, patterns, clipping paths, masks, groups,
    compositing operators, and affine transformations has been added
    to the quartz() device.
  INSTALLATION on a UNIX-ALIKE:
  * A system installation of generic LAPACK 3.10.0 or later will be
    preferred to the version in the R sources.
    configure option --with-lapack=no (equivalently --without-lapack)
    forces compilation of the internal LAPACK sources.
    If --with-lapack is not specified, a system liblapack is looked
    for and used if it reports version 3.10.0 or later and does not
    contain BLAS routines.
    Packages using LAPACK will need to be reinstalled if this changes
    to using an external library.
  * On aarch64 Linux platforms using GCC, configure now defaults to
  - fPIC (instead of -fpic), as desired in PR#18326.
  * configure now checks conversion of datetimes between POSIXlt and
    POSIXct around year 2020.  Failure (which has been seen on
    platforms missing tzdata) is fatal.
  * If configure option --with-valgrind-instrumentation is given
    value 1 or 2, option --with-system-valgrind-headers is now the
    default and ignored (with a warning).  It is highly recommended
    that the system headers are installed alongside valgrind: they
    are part of its packaging on some Linux distributions and
    packaged separately (e.g. in the valgrind-devel RPM) on others.
    configure will give a warning if they are not found.
    The system headers will be required in a future release of R to
    build with valgrind instrumentation.
  * libcurl 8.x is now accepted by configure: despite a change in
    major version number it changes neither API nor ABI.
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools43, an update of the Rtools42 toolchain.  It is
    based on gcc 12 and newer versions of MinGW-W64, binutils and
    libraries.  At this time R-devel can still be built using
    Rtools42 without changes, but when R-devel is installed via the
    installer, it will by default look for Rtools43.
  * Old make targets rsync-extsoft and 32-bit ones that are no longer
    needed have been removed.
  * Default builds (including for packages) no longer select C99.
    Thus the C standard used is the default for the compiler, which
    for the toolchain in Rtools43 is C17.  (This is consistent with
    Unix builds.)
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++17 where
    available (which it is on all currently checked platforms): if
    not C++14 or C++11 is used if available otherwise C++ is not
    supported.
  * USE_FC_LEN_T is the default: this uses the correct
    (compiler-dependent) prototypes for Fortran BLAS/LAPACK routines
    called from C/C++, and requires adjustment of many such calls -
    see 'Writing R Extensions' SS6.6.1.
  * There is initial support for C++23 as several compilers are now
    supporting -std=c++23 or -std=c++2b or similar.  As for C++20,
    there no additional configure checks for C++23 features beyond a
    check that the compiler reports a __cplusplus value greater than
    that in the C++20 standard.  C++ feature tests should be used.
  * There is support for a package to indicate the version of the C
    standard which should be used to compile it, and for the
    installing user to specify this.  In most cases R defaults to the
    C compiler's default standard which is C17 (a `bug-fix' of C11) -
    earlier versions of R or compilers may have defaulted to C99.
    Current options are:
    USE_C17 Use a standard that is at most C17.  The intention is to
    allow legacy packages to still be installed when later C
    standards become the default, including packages using new
    keywords as identifiers or with K&amp;R-style function
    declarations.  This will use C17 if available, falling back
    to C11.
    USE_C90 Use the C90 (aka C89) standard.  (As that standard did
    not require compilers to identify that version, all we can
    verify is that the compiler does not claim to be using a
    later standard.  It may accept C99 features - for example
    clang accepts // to make comments.)
    USE_C99 Use the C99 standard. This should be rarely needed - it
    avoids the few new features of C11/C17 which can be useful if
    a package assumes them if C17 is specified and they are not
    implemented.
    USE_C23 Use C23 (or in future, later).  Compiler/library support
    for C23 is still being implemented, but LLVM clang from
    15.0.0 and the upcoming GCC 13 have quite extensive support.
    These can be specified as part of the SystemRequirements field in
    the package's DESCRIPTION file or _via_ options --use-C17 and so
    on of R CMD INSTALL and R CMD SHLIB.
    For further details see "Writing R Extensions" SS1.2.5.
  * (Windows) A src/Makefile.ucrt or src/Makefile.win file is now
    included after R_HOME/etcR_ARCH/Makeconf and so no longer needs
    to include that file itself.  Installation of a package with such
    a file now uses a site Makevars file in the same way as a package
    with a src/Makevars.win file would.
  * configure is now passed crucial variables such as CC and CFLAGS
    in its environment, as many packages were not setting them (as
    documented in 'Writing R Extensions' SS1.2).
    This has most effect where configure is used to compile parts of
    the package - most often by cmake or libtool which obfuscate the
    actual compile commands used.
    Also used for configure.win and configure.ucrt on Windows.
  FORTRAN FLAGS:
  * The flag -fno-optimize-sibling-calls is no longer forced for
    gfortran 7 and later.  It should no longer be needed now using
    'hidden' character-length arguments when calling BLAS/LAPACK
    routines from C/C++ is the default even for packages.  (Unless
    perhaps packages call Fortran code from C/C++ without using R's
    headers and without allowing for these arguments.)
  C-LEVEL FACILITIES:
  * The deprecated S-compatibility macros DOUBLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * The deprecated legacy typedefs of Sint and Sfloat in header R.h
    are no longer defined, and that header no longer includes header
    limits.h from C nor climits from C++.
  * New macro CAD5R() is provided in Rinternals.h and used in a few
    places in the R sources.
  * ALTREP now supports VECSXP vectors. Contributed by Gabor Csardi
    in PR#17620.
  * The Rcomplex definition (in header R_ext/Complex.h) has been
    extended to prevent possible mis-compilation when interfacing
    with Fortran (PR#18430).  The new definition causes compiler
    warnings with static initializers such as {1, 2}, which can be
    changed to {.r=1, .i=2}.
    Using the new definition from C++ depends on compiler extensions
    supporting C features that have not been incorporated into the
    C++ standards but are available in g++ and clang++: this may
    result in C++ compiler warnings but these have been worked around
    for recent versions of common compilers (GCC, Apple/LLVM clang,
    Intel).
    It is intended to change the inclusion of header R_ext/Complex.h
    by other R headers, so C/C++ code files which make use of
    Rcomplex should include that header explicitly.
  UTILITIES:
  * R CMD check does more checking of package .Rd files, warning
    about invalid email addresses and (some) invalid URIs and noting
    empty \item labels in description lists.
  * R CMD check now also reports problems when reading package news
    in md (file NEWS.md) and (optionally) plain text (file NEWS)
    formats.
  * _R_CHECK_TIMINGS_ defaults to a value from the environment even
    for R CMD check --as-cran; this allows for exceptionally fast or
    slow platforms.
    It now applies to checking PDF and HTML versions of the manuals,
    and 'checking CRAN incoming feasibility'.
  * R CMD check can optionally (but included in --as-cran) check
    whether HTML math rendering _via_ KaTeX works for the package .Rd
    files.
  * Non-interactive debugger invocations can be trapped by setting
    the environment variable _R_CHECK_BROWSER_NONINTERACTIVE_ to a
    true value.  This is enabled by R CMD check --as-cran to detect
    the use of leftover browser() statements in the package.
  * The use of sprintf and vsprintf from C/C++ has been deprecated in
    macOS 13 and is a known security risk.  R CMD check now reports
    (on all platforms) if their use is found in compiled code:
    replace by snprintf or vsnprintf respectively. [*NB:* whether
    such calls get compiled into the package is platform-dependent.]
  * Where recorded at installation, R CMD check reports the C and
    Fortran compilers used to build R.
    It reports the OS in use (if known, as given by osVersion) as
    well as that R was built for.
    It notes if a C++ standard was specified which is older than the
    current default: many packages have used C++11 to mean 'not
    C++98' - as C++11 is the minimum supported since R 4.0.0, that
    specification can probably be removed.
  * R CMD INSTALL reports the compilers (and on macOS, the SDK) used,
    and this is copied to the output of R CMD check.
    Where a C++ standard is specified, it is reported.
  * R CMD check's 'checking compilation flags in Makevars' has been
    relaxed to accept the use of flags such as -std=f2008 in
    PKG_FFLAGS.
  * tools::buildVignettes() has a new argument skip, which is used by
    R CMD check to skip (and note) vignettes with unavailable
    \VignetteDepends (PR#18318).
  * New generic .AtNames() added to enable class-specific completions
    after @. The formerly internal function findMatches() is now
    exported, mainly for use in methods for .DollarNames() and
    .AtNames().
  DEPRECATED AND DEFUNCT:
  * default.stringsAsFactors() is defunct.
  * Calling as.data.frame.&lt;class&gt;() directly (for 12 atomic classes)
    is going to be formally deprecated, currently activated by
    setting the environment variable
    _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ to non-empty, which also
    happens in R CMD check --as-cran.
  BUG FIXES:
  * Hashed environments with sizes less than 5 can now grow.
    (Reported to R-devel by Duncan Garmonsway.)
  * as.character(&lt;Rd&gt;, deparse = TRUE) failed to re-escape curly
    braces in LaTeX-like text.  (Reported by Hadley Wickham in
    PR#18324.)
  * library() now passes its lib.loc argument when requiring Depends
    packages; reported (with fix) in PR#18331 by Mikael Jagan.
  * R CMD Stangle: improved message about 'Output' files.
  * head(x, n) and tail(x, n) now signal an error if n is not
    numeric, instead of incidentally "working" sometimes returning
    all of x.  Reported and discussed by Colin Fay, in PR#18357.
  * The "lm" method for summary() now gives the correct F-statistic
    when the model contains an offset.  Reported in PR#18008.
  * C() and `contrasts&lt;-`() now preserve factor level names when
    given a function object (as opposed a function name which did
    preserve names). Reported in PR#17616.
  * c(a = 1, 2)[[]] no longer matches 2 but rather signals a
    _classed_ error.  Reported and analysed by Davis Vaughan in
    PR#18367, a duplicate of PR#18004, by Jan Meis et al.  For
    consistency, NULL[[]] is also erroneous now.  x[[]] &lt;- v gives an
    error of the same class "MissingSubscriptError".
  * The relist() function of utils now supports NULL elements in the
    skeleton (PR#15854).
  * ordered(levels = *) (missing x) now works analogously to factor(,
    ordered=TRUE); reported (with fix) by Achim Zeileis in PR#18389.
  * User-defined Rd macro definitions can now span multiple lines,
    thanks to a patch from Duncan Murdoch. Previously, the Rd parser
    silently ignored everything after the first line.
  * Plain-text help (tools::Rd2txt()) now preserves an initial blank
    line for text following description list items.
  * tools::Rd2HTML() and tools::Rd2latex() no longer split \arguments
    and \value lists at Rd comments.
  * tools::Rd2latex() now correctly handles optional text outside
    \items of argument lists as well as bracketed text at the
    beginning of sections, e.g., \value{[NULL]}.
  * as.character(&lt;POSIXt&gt;) now behaves more in line with the methods
    for atomic vectors such as numbers, and is no longer influenced
    by options().  Ditto for as.character(&lt;Date&gt;).  The
    as.character() method gets arguments digits and OutDec with
    defaults _not_ depending on options().  Use of as.character(*,
    format = .) now warns.
  * Similarly, the as.character.hexmode() and *.octmode() methods
    also behave as good citizen methods and back compatibility option
    keepStr = TRUE.
  * The as.POSIXlt(&lt;POSIXlt&gt;) and as.POSIXct(&lt;POSIXct&gt;) default
    methods now do obey their tz argument, also in this case.
  * as.POSIXlt(&lt;Date&gt;) now does apply a tz (time zone) argument, as
    does as.POSIXct(); partly suggested by Roland Fuss on the R-devel
    mailing list.
  * as.Date.POSIXlt(x) now also works when the list components are of
    unequal length, aka "partially filled" or "ragged".
  * expand.model.frame() looked up variables in the wrong environment
    when applied to models fitted without data.  Reported in
    PR#18414.
  * time() now (also) uses the ts.eps = getOption("ts.eps") argument
    and thus by default rounds values very close to the start (or
    end) of a year.  Based on a proposal by Andre"i V. Kostyrka on
    R-help.
  * Printing of a factanal() result with just one factor and sort =
    TRUE now works regularly, fixing PR#17863 by Timothy Bates,
    thanks to the 'R Contributors' working group.
  * Printing 0-length objects of class "factor", "roman", "hexmode",
    "octmode", "person", "bibentry", or "citation" now prints
    something better, one of which fixes PR#18422, reported by
    Benjamin Feakins.
  * Sys.timezone() queries timedatectl only if systemd is loaded;
    addressing a report by Jan Gorecki in PR#17421.
  * The formula method of cor.test() had scoping problems when
    environment(formula) was not the calling environment; reported
    with a patch proposal by Mao Kobayashi in PR#18439.
  * attach() of an environment with active bindings now preserves the
    active bindings.  Reported by Kevin Ushey in PR#18425.
  * BLAS detection now works also with system-provided libraries not
    available as regular files.  This fixes detection of the
    Accelerate framework on macOS since Big Sur.  Reported by David
    Novgorodsky.
  * download.file() gives a helpful error message in case of an
    invalid download.file.method option, thanks to Colin Fay's report
    in PR#18455.
  * Sporadic crashes of Rterm when using completion have been fixed.
  * Rprof() is now more reliable.  A livelock in thread
    initialization with too short sampling interval has been fixed on
    macOS.  A deadlock in using the C runtime has been fixed on
    Windows.  A potential deadlock has been prevented on Unix.
  * Cursor placement in Rgui now works even after a fixed-width font
    is selected.
  * Mandatory options (options()) are now set on startup so that
    saving and restoring them always works (PR#18372).
  * Package installation, R CMD INSTALL or install.packages(*), now
    parses each of the &lt;pkg&gt;/R/*.R files individually instead of
    first concatenating and then parse()ing the large resulting file.
    This allows parser or syntax errors to be diagnosed with correct
    file names and line numbers, thanks to Simon Dedman's report and
    Bill Dunlap's patch in PR#17859.
    This _does_ require syntactically self contained R source files
    now, fixing another inadvertent bug.
  * predict.lm(&lt;model with offset&gt;) now finds the offset in the
    correct environment, thanks to Andr'e Gillibert's report and patch
    in PR#18456.
  * getInitial(&lt;formula&gt;) now finds the selfStart model in the
    correct environment.  (Reported by Ivan Krylov in PR#18368.)
  * Fix for possible segfault when using recently-added graphics
    features, such as gradients, clipping paths, masks, and groups
    with pdf(file=NULL).
  * class(m) &lt;- class(m) no longer changes a matrix m by adding a
    class _attribute_.
  * packageDate(pkg) now only warns once if there is no pkg.
  * When ts() creates a multivariate time series, "mts", it also
    inherits from "array" now, and is.mts() is documented _and_
    stricter.
  * Rd2txt() now preserves line breaks of \verb Rd content and from
    duplicated \cr.  The former also fixes the rendering of verbatim
    output from Rd \Sexpr in plain-text help.
  * uniroot(f, interval) should no longer wrongly converge _outside_
    the interval in some cases where abs(f(x)) == Inf for an x at the
    interval boundary, thanks to posts by Ben Bolker and Serguei
    Sokol on R-devel.
  * Vectorized alpha handling in palette functions such as in gray(),
    rainbow(), or hcl.colors() works correctly now, thanks to Achim
    Zeileis' report and patch in PR#18476.
  * Formatting and print()ing of bibentry objects has dropped the
    deprecated citation.bibtex.max argument, such that the bibtex
    argument's default for print.bibentry() depends directly on the
    citation.bibtex.max option, whereas in format.bibentry() the
    option no longer applies.
  * Attempting to use a character string naming a foreign function
    entry point in a foreign function call in a package will now
    signal an error if the packages has called R_forceSymbols to
    specify that symbols must be used.
  * An error in table() could permanently set options(warn=2)
    promoting all subsequent warnings to errors.
  * The sigma() function gave misleading results for binary GLMs.  A
    new method for objects of class "glm" returns the square root of
    the estimate of the dispersion parameter using the same
    calculation as summary.glm().
  * bs() and ns() in the (typical) case of automatic knot
    construction, when some of the supposedly inner knots coincide
    with boundary knots, now moves them inside (with a warning),
    building on PR#18442 by Ben Bolker.
  * R CMD on Windows now skips the site profile with --no-site-file
    and --vanilla even when R_PROFILE is set (PR#18512, from Kevin
    Ushey).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1686916800">- CHANGES IN R 4.3.1:
  C-LEVEL FACILITIES:
  * The C-level API version of R's integrate(), Rdqags() in Applic.h,
    now returns the correct number of integrand evaluations neval,
    fixing PR#18515 reported and diagnosed by Stephen Wade.
  * The C prototypes for LAPACK calls dspgv and dtptrs in
    R_exts/Lapack.h had one too many and one too few character length
    arguments - but this has not caused any known issues. To get the
    corrected prototypes, include
    [#]include &lt;Rconfig.h&gt; // for PR18534fixed
    [#]ifdef PR18534fixed
    [#] define usePR18534fix 1
    [#]endif
    [#]include &lt;R_exts/Lapack.h&gt;
    in your C/C++ code (PR#18534).
  INSTALLATION:
  * Many of the checks of esoteric Internet operations and those
    using unreliable external sites have been moved to a new target
    that is not run by default and primarily intended for the core
    developers.  To run them use
    cd tests; make test-Internet-dev
  BUG FIXES:
  * .S3methods(), typically called from methods(), again marks
    methods from package base as visible.
    Also, the visibility of non-base methods is again determined by
    the method's presence in search().
  * tools::Rdiff() is now more robust against invalid strings, fixing
    installation tests on Windows without Rtools installed
    (PR#18530).
  * Fix (new) bug in hcl.colors(2, *), by Achim Zeileis (PR#18523).
  * head(., &lt;illegal&gt;) and tail(..) now produce more useful "Error in
    ...." error messages, fixing PR#18362.
  * Package code syntax on Windows is checked in UTF-8 when UTF-8 is
    the native encoding.
  * na.contiguous(x) now also returns the first run, when it is at
    the beginning and there is a later one of the same length;
    reported to R-devel, including a fix, by Georgi Boshnakov.
    Further, by default, it modifies only an existing attr(*,"tsp")
    but otherwise no longer sets one.
  * chol(&lt;not pos.def&gt;, pivot = &lt;T|F&gt;) now gives a correct error or
    warning message (depending on pivot), thanks to Mikael Jagan's
    (PR#18541).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1699012800">- CHANGES IN R 4.3.2:
  NEW FEATURES:
  * The default initialization of the "repos" option from the
    repositories file at startup can be skipped by setting
    environment variable R_REPOSITORIES to NULL such that
    getOption("repos") is empty if not set elsewhere.
  * qr.X() is now an implicit S4 generic in methods.
  * iconv(to = "ASCII//TRANSLIT") is emulated using substitution on
    platforms which do not support it (notably Alpine Linux).  This
    should give a human-readable conversion in ASCII on all platforms
    (rather than NA_character_).
  * trans3d() gains options continuous and verbose addressing the
    problem of possible "wrap around" when projecting too long
    curves, as reported by Achim Zeileis in PR#18537.
  * tools::showNonASCII() has been rewritten to work better on macOS
    14 (which has a changed implementation of iconv()).
  * tiff(type = "quartz") (the default on macOS) now warns if
    compression is specified: it continues to be ignored.
  INSTALLATION on a UNIX-ALIKE:
  * There is some support for building with Intel's LLVM-based
    compilers on x86_64 Linux, such as (C) icx, (C++) ipcx and
    (Fortran) ifx from oneAPI 2023.x.y.
  * There is support for using LLVM's flang-new as the Fortran
    compiler from LLVM 16.0.x (preferably 17.0.0 or later).
  UTILITIES:
  * R CMD check reports the use of the Fortran 90 random number
    generator RANDOM_NUMBER() and the subroutines to initialize it.
    'Writing R Extensions' has example code to use R's RNGs from
    Fortran.
  BUG FIXES:
  * substr(x, n, L) &lt;- cc now works (more) correctly for multibyte
    UTF-8 strings x when L &gt; nchar(x), thanks to a report and patch
    by 'Architect 95'.
  * contrib.url(character()) now returns 0-length character() as
    documented, which also avoids spurious warnings from
    available.packages() et al. in the edge case of an empty vector
    of repository URLs.
  * readChar(., 4e8) no longer fails, thanks to Kodi Arfer's report
    (PR#18557).
  * lapply(&lt;list&gt;, as.data.frame) no longer warns falsely for some
    base vector components.
  * Communication between parent and child processes in the multicore
    part of parallel could fail on platforms that do not support an
    arbitrarily large payload in system functions read()/write() on
    pipes (seen on macOS where a restriction to INT_MAX bytes is
    documented, without doing a partial read unlike Linux). The
    payload is now split into 1Gb chunks to avoid that problem.
    (PR#18571)
  * qqplot(x,y, conf.level=.) gives better confidence bounds when
    length(x) != length(y), thanks to Alexander Ploner's report and
    patch proposal (PR#18557).
  * norm(&lt;0-length&gt;, "2") now gives zero instead of an error, as all
    the other norm types, thanks to Mikael Jagan's PR#18542.
  * Build-stage Rd macros \packageAuthor and \packageMaintainer now
    process Authors@R, fixing NA results when the package DESCRIPTION
    omits Author and Maintainer fields.
  * Formatting and printing complex numbers could give things like
    0.1683-0i because of rounding error: -0i is now replaced by +0i.
  * postscript() refused to accept a title comment containing the
    letter "W" (PR#18599).
  * isoreg(c(1,Inf)) signals an error instead of segfaulting, fixing
    PR#18603.
  * tiff(type = "Xlib") was only outputting the last page of
    multi-page plots.
  * tools::latexToUtf8() again knows about \~{n} and other letters
    with tilde, fixing a regression in R 4.3.0, and about \^{i} as an
    alternative to \^{\i} (similarly with other accents).
    Furthermore, LaTeX codes for accented I letters are now correctly
    converted, also fixing related mistakes in
    tools::encoded_text_to_latex().
  * tar(*, tar = "internal") no longer creates out-of-spec tar files
    in the very rare case of user or group names longer than 32
    bytes, fixing PR#17871 with thanks to Ivan Krylov.
  * When using the "internal" timezone datetime code, adding a
    fraction of a second no longer adds one second, fixing PR#16856
    from a patch by Ivan Krylov.
  * tools::checkRd() no longer produces spurious notes about
    "unnecessary braces" from multi-line Rd results of \Sexpr macros.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1709208000">- CHANGES IN R 4.3.3:
  NEW FEATURES:
  * iconv() now fixes up variant encoding names such as "utf8"
    case-insensitively.
  DEPRECATED AND DEFUNCT:
  * The legacy encoding = "MacRoman" is deprecated in pdf() and
    postscript(): support was incomplete in earlier versions of R.
  BUG FIXES:
  * Arguments are now properly forwarded to methods on S4 generics
    with ... in the middle of their formal arguments. This was broken
    for the case when a method introduced an argument but did not
    include ... in its own formals. Thanks to Herv'e Pag`es for the
    report PR#18538.
  * Some invalid file arguments to pictex(), postscript() and xfig()
    opened a file called NA rather than throw an error.  These
    included postscript(NULL) (which some people expected to work
    like pdf(NULL)).
  * Passing filename = NA to svg(), cairo_pdf(), cairo_ps() or the
    Cairo-based bitmap devices opened a file called NA: it now throws
    an error.
  * quartz(file = NA) opened a file called NA, including when used as
    a Quartz-based bitmap device.  It now gives an error.
  * rank(&lt;long vector&gt;) now works, fixing PR#18617, thanks to Ilia
    Kats.
  * seq.int() did not adequately check its length.out argument.
  * match(&lt;POSIXct&gt;, .) is correct again for differing time zones,
    ditto for "POSIXlt", fixing PR#18618 reported by Bastian Klein.
  * drop.terms(*, dropx = &lt;0-length&gt;) now works, fixing PR#18563 as
    proposed by Mikael Jagan.
  * drop.terms(*) keeps + offset(.) terms when it should, PR#18565,
    and drop.terms() no longer makes up a response, PR#18566, fixing
    both bugs thanks to Mikael Jagan.
  * getS3method("t", "test") no longer finds the t.test() function,
    fixing PR#18627.
  * pdf() and postscript() support for the documented Adobe encodings
    "Greek" and "Cyrilllic" was missing (although the corresponding
    Windows' codepages could be used).
  * Computations of glyph metric information for pdf() and
    postscript() did not take into account that transliteration could
    replace one character by two or more (only seen on macOS 14) and
    typically warned that the information was not known.
  * rank(x) no longer overflows during integer addition, when
    computing rank average for largish but not-yet long vector x,
    fixing PR#18630, thanks to Ilia Kats.
  * list.files() on Windows now returns also files with names longer
    that 260 bytes (the Windows limit is 260 characters).
    Previously, some file names particularly with 'East Asian'
    characters were omitted.
  * cov2cor(&lt;0 x 0&gt;) now works, fixing PR#18423 thanks to Mikael
    Jagan and Elin Waring.
  * cov2cor(&lt;negative diagonal&gt;) and similar now give one warning
    instead of two, with better wording, fixing PR#18424 thanks to
    Mikael Jagan.
  * tools:: startDynamicHelp() now ensures port is in proper range,
    fixing PR#18645.
  * pbeta(x, a,b) is correct now for x=0 or 1 in the boundary cases
    where a or b or both are 0, fixing PR#18672 thanks to Michael
    Fay.
  * pmatch(x, table) for large table, also called for data frame row
    selection, dfrm[nm, ], is now interruptible, fixing PR#18656.
  * predict(&lt;rank-deficient lm&gt;, newdata=*) fix computing of nbasis,
    see Russ Lenth's comment 29 in PR#16158.
  * Added a work-around for a bug in macOS 14.3.1 and higher which
    prevents R plots in the Quartz Cocoa device from updating on
    screen.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1713960000">- CHANGES IN R 4.4.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Startup banners, R --version, sessionInfo() and R CMD check no
    longer report (64-bit) as part of the platform as this is almost
    universal - the increasingly rare 32-bit platforms will still
    report (32-bit).
    On Windows, ditto for window titles.
  * is.atomic(NULL) now returns FALSE, as NULL is not an atomic
    vector.  Strict back-compatibility would replace is.atomic(foo)
    by (is.null(foo) || is.atomic(foo)) but should happen only
    sparingly.
  NEW FEATURES:
  * The confint() methods for "glm" and "nls" objects have been
    copied to the stats package.  Previously, they were stubs which
    called versions in package MASS. The MASS namespace is no longer
    loaded if you invoke (say) confint(glmfit).  Further, the "glm"
    method for profile() and the plot() and pairs() methods for class
    "profile" have been copied from MASS to stats.  (profile.nls()
    and plot.profile.nls() were already in stats.)
  * The confint() and profile methods for "glm" objects have gained a
    possibility to do profiling based on the Rao Score statistic in
    addition to the default Likelihood Ratio. This is controlled by a
    new test = argument.
  * The pairs() method for "profile" objects has been extended with a
    which = argument to allow plotting only a subset of the
    parameters.
  * The "glm" method for anova() computes test statistics and
    p-values by default, using a chi-squared test or an F test
    depending on whether the dispersion is fixed or free.  Test
    statistics can be suppressed by giving argument test a false
    logical value.
  * In setRepositories() the repositories can be set using their
    names via name = instead of index ind =.
  * methods() and .S3methods() gain a all.names option for the (rare)
    case where functions starting with a . should be included.
  * Serializations can now be interrupted (e.g., by Ctrl-C on a
    Unix-alike) if they take too long, e.g., from save.image(),
    thanks to suggestions by Ivan Krylov and others on R-devel.
  * New startup option --max-connections to set the maximum number of
    simultaneous connections for the session.  Defaults to 128 as
    before: allowed values up to 4096 (but resource limits may in
    practice restrict to smaller values).
  * R on Windows (since Windows 10 2004) now uses the new Segment
    Heap allocator. This may improve performance of some
    memory-intensive applications.
  * When R packages are built, typically by R CMD build &lt;pkg&gt;, the
    new --user=&lt;build_user&gt; option overrides the (internally
    determined) user name, currently Sys.info()["user"] or LOGNAME.
    This is a (modified) fulfillment of Will Landau's suggestion in
    PR#17530.
  * tools::testInstalledBasic() gets new optional arguments outDir
    and testSrcdir, e.g., allowing to use it in a &lt;builddir&gt; !=
    &lt;srcdir&gt; setup, and in standard "binary" Windows installation
  * if* a source tests/ folder is present.
  * range(&lt;DT_with_Inf&gt;, finite = TRUE) now work for objects of class
    "Date", "POSIXct", and "POSIXlt" with infinite entries,
    analogously to range.default(), as proposed by Davis Vaughan on
    R-devel.  Other range()-methods can make use of new function
    .rangeNum().
  * New .internalGenerics object complementing .S3PrimitiveGenerics,
    for documentation and low-level book-keeping.
  * grid() now invisibly returns the x- and y- coordinates at which
    the grid-lines were drawn.
  * norm(., type) now also works for complex matrices.
  * kappa(., exact = TRUE, norm = *) now works for all norms and also
    for complex matrices.  In symmetric / triangular cases, the new
    argument uplo = "U" | "L" allows the upper or lower triangular
    part to be specified.
  * memDecompress(type = "unknown") recognizes compression in the
    default 'zlib' format as used by memCompress(type = "gzip").
  * memCompress() and memDecompress() will use the libdeflate library
    (&lt;https://github.com/ebiggers/libdeflate&gt;) if installed.  This
    uses the same type of compression for type = "gzip" but is 1.5-2x
    faster than the system libz library on some common platforms: the
    speed-up may depend on the library version.
  * diff() for objects of class "Date", "POSIXct", and "POSIXlt"
    accepts a units argument passed via ....
  * Dynamic help now does a much better job of rendering package
    DESCRIPTION metadata.
  * Rprof() gains an event argument and support for elapsed (real)
    time profiling on Unix (PR#18076).
  * filled.contour() gains a key.border argument.
  * tools::update_pkg_po() gets arguments pot_make and mo_make for
    _not_ re-making the corresponding files, and additionally a
    verbose argument.
  * Hexadecimal string colour specifications are now accepted in
    short form, so, for example, we can use "#123", which is
    equivalent to "#112233".
    Thanks to MikeFC for the original idea and Ella Kaye, Malcolm
    Barrett, George Stagg, and Hanne Oberman for the patch.
  * Plain-text help shows \var markup by angle brackets.
  * The new experimental primitive function declare() is intended to
    eventually allow information about R code to be communicated to
    the interpreter, compiler, and code analysis tools. The syntax
    for declarations is still being developed.
  * Functions psmirnov(), qsmirnov() and rsmirnov() in package stats
    have had argument two.sided renamed to alternative, to take into
    account that the permutation distributions of the one-sided
    statistics can be different in the case of ties.  Consequence of
    PR#18582.
  * sort() is now an implicit S4 generic in methods.
  * Formatting and printing, format(z), print(z), of complex vectors
    z no longer zap relatively small real or imaginary parts to zero,
    fixing PR#16752.  This is an API change, as it was documented
    previously to round real and imaginary parts together on purpose,
    producing nicer looking output.  As mentioned, e.g. in the PR,
    this change is compatible with many other "R-like" programming
    environments.
    We have simplified the internal code and now basically format the
    real and imaginary parts independently of each other.
  * New experimental functions Tailcall() and Exec() to support
    writing stack-space-efficient recursive functions.
  * Where characters are attempted to be plotted by pdf(),
    postscript() and xfig() which are not in the selected 8-bit
    character set (most often Latin-1) and the R session is using a
    UTF-8 locale, the warning messages will show the UTF-8 character
    rather than its bytes and one dot will be substituted per
    character rather than per byte.  (Platforms whose iconv() does
    transliteration silently plot the transliteration.)
    In a UTF-8 locale some transliterations are now done with a
    warning (e.g., dashes and Unicode minus to hyphen, ligatures are
    expanded, permille (‰) is replaced by o/oo), although the OS may
    have got there first.  These are warnings as they will continue
    to be replaced by dots in earlier versions of R.
  * The matrix multiplication functions crossprod() and tcrossprod()
    are now also primitive and S3 generic, as %*% had become in R
    4.3.0.
  * source() and example() have a new optional argument catch.aborts
    which allows continued evaluation of the R code after an error.
  * The non-Quartz tiff() devices allow additional types of
    compression if supported by the platform's libtiff library.
  * The list of base and recommended package names is now provided by
    tools::standard_package_names().
  * cairo_pdf() and cairo_ps() default to onefile = TRUE to closer
    match pdf() and postscript().
  * New option catch.script.errors provides a documented way to catch
    errors and then continue in non-interactive use.
  * L %||% R newly in base is an expressive idiom for the phrases
    if(!is.null(L)) L else R or if(is.null(L)) R else L.
  * The return value from warnings() now always inherits from
    "warnings" as documented, now also in the case of no warnings
    where it previously returned NULL.
  * as.complex("1i") now returns 0 + 1i instead of NA with a warning.
  * z &lt;- c(NA, 1i) now keeps the imaginary part Im(z[1]) == 0, no
    longer coercing to NA_complex_.  Similarly, cumsum(z) correctly
    sums real and imaginary parts separately, i.e., without
    "crosstalk" in case of NAs.
  * On Alpine Linux iconv() now maps "latin2", "latin-2", "latin9"
    and "latin-9" to encoding names the OS knows about
    (case-insensitively).
  * iconv(sub = "Unicode") now always zero-pads to four (hex) digits,
    rather than to 4 or 8.  (This seems to have become the convention
    once Unicode restricted the number of Unicode points to 2^21 - 1
    and so will never need more than 6 digits.)
  * NCOL(NULL) now returns 0 instead of 1, for consistency with
    cbind().
  * The information for the Euro glyph missing from the Adobe .afm
    files for the Courier, Helvetica and Times families has been
    copied from their URW equivalents - this will improve vertical
    centring in the pdf() and postscript() devices.
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.12.0.  The changes are almost entirely cosmetic.
  * The included LAPACK sources have been updated to version 3.12.0
    and some further double-complex routines added.
  * There are new font families for the 2014--5 URW 2.0 fonts (see
    ?pdf) which are included in recent versions of Ghostscript.
    These have font widths for most Greek glyphs and a few others
    which were missing from the original versions (whose font
    families remain available for reproducibility, although
    Ghostscript-based viewers will render using the 2.0 versions).
  * Improve the large-n efficiency of as.matrix(&lt;dist&gt;), thanks an R
    contributors effort, notably by Tim Taylor and Heather Turner,
    see PR#18660.
  * The default and numeric methods of all.equal() get a check.class
    option.
  * zapsmall() gets new optional arguments, function mFUN and min.d,
    for extra flexibility; fulfills a wish in PR#18199.  Also, it is
    now an implicit S4 generic in package methods.
  * The Rd filter for aspell() gains an ignore argument.
  * New generic function sort_by(), primarily useful for the
    data.frame method which can be used to sort rows of a data frame
    by one or more columns.
  * The icence headers for the RPC code in src/extra/xdr have been
    updated to use the GPL-compatible licence published by Oracle
    America in 2010.
  * New function pkg2HTML() in tools to create single-page HTML
    reference manuals for R packages.
  * The byte code evaluator now uses less C stack space for recursive
    calls to byte-compiled functions. It also makes more of an effort
    to avoid allocations for scalar return values.
  * New completion option backtick (disabled by default) allows
    non-syntactic completions to be wrapped in backquotes. This is
    currently only useful for Jupyter notebooks via the IRkernel
    package, and may cause problems for other backends.
  INSTALLATION:
  * The parser has been updated to work with bison 3.8.2, which is
    now used for the pre-generated parsers in gram.c, file.c, and
    gramRd.c. A few parser error messages have changed, which may
    affect code that relies on exact messages.
  INSTALLATION on a UNIX-ALIKE:
  * System valgrind headers are now required to use configure option
  - -with-valgrind-instrumentation with value 1 or 2.
  * configure will warn if it encounters a 32-bit build, as that is
    nowadays almost untested.
  * Environment variable R_SYSTEM_ABI is no longer used and so no
    longer recorded in etc/Renviron (it was not on Windows and was
    only ever used when preparing package tools).
  * If the libdeflate library and headers are available, libdeflate
    rather than libz is used to (de)compress R objects in lazy-load
    databases.  Typically tasks spend up to 5% of their time on such
    operations, although creating lazy-data databases is one of the
    exceptions.
    This can be suppressed if the library is available by the
    configure option --without-libdeflate-compression.
  * configure option --enable-lto=check has not worked reliably since
    2019 and has been removed.
  * The minimum autoconf requirement for a maintainer build has been
    increased to autoconf 2.71.
    It is intended to increase this to 2.72 for R 4.5.0: the
    distributed configure file was generated using 2.72.
  * The minimum version requirement for an external LAPACK has been
    reduced to 3.9.0.
  * No default C++ compiler is set if no C++17 compiler is detected:
    there is no longer an automatic fallback to C++14 or C++11.
    Compilers from the last five years should have sufficient
    support: for others macros CXX and CXXSTD can be set in file
    config.site to provide a fallback if needed.
    The Objective-C++ compiler now by default uses the standard
    selected by R for C++ (currently C++17) rather than the default
    standard for the C++ compiler (which on macOS is still C++98).
  INSTALLATION on macOS:
  * A new configure option --with-newAccelerate makes use of Apple's
    'new' BLAS / LAPACK interfaces in their Accelerate framework.
    Those interfaces are only available in macOS 13.3 or later, and
    building requires SDK 13.3 or later (from the Command Line Tools
    or Xcode 14.3 or later).
    By default the option uses new Accelerate for BLAS calls: to also
    use it for LAPACK use option --with-newAccelerate=lapack.  The
    later interfaces provide LAPACK 3.9.1 rather than 3.2.1: 3.9.1 is
    from 2021-04 and does not include the improved algorithms
    introduced in LAPACK 3.10.0 (including for BLAS calls).
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools44, an update of the Rtools43 toolchain.  It is
    based on GCC 13 and newer versions of MinGW-W64, binutils and
    libraries (targeting 64-bit Intel CPUs).  R-devel can no longer
    be built using Rtools43 without changes.
  * Rtools44 has experimental support for 64-bit ARM (aarch64) CPUs
    _via_ the LLVM 17 toolchain using lld, clang/flang-new and
    libc++.
  UTILITIES:
  * R CMD check notes when S4-style exports are used without
    declaring a strong dependence on package methods.
  * tools::checkRd() (used by R CMD check) detects more problems with
    \Sexpr-based dynamic content, including bad nesting of \Sexprs
    and invalid arguments.
  * tools::checkRd() now reports Rd titles and section names ending
    in a period; this is ignored by R CMD check unless environment
    variable _R_CHECK_RD_CHECKRD_MINLEVEL_ is set to -5 or smaller.
  * R CMD check now notes Rd files without an \alias, as long
    documented in 'Writing R Extensions' §1.3.1.  The check for a
    missing \description has been moved from tools::checkRd() to
    tools::checkRdContents().
  * R CMD check now visits inst/NEWS.Rd and OS-specific man
    subdirectories when checking Rd files.
  * tools::checkDocFiles() and tools::checkRdContents() now also
    check internal Rd files by default, but "specially" (ignoring
    missing documentation of arguments).
  * R CMD Rdiff gets option --useEx.
  * R CMD check now warns on non-portable uses of Fortran KIND such
    as INTEGER(KIND=4) and REAL(KIND=8).
    To see the failing lines set environment variable
    _R_CHECK_FORTRAN_KIND_DETAILS_ to a true value.
  * When checking Rd files, R CMD check now notes some of the "lost
    braces" that tools::checkRd() finds.  Typical problems are Rd
    macros missing the initial backslash (e.g., code{...}), in-text
    set notation (e.g., {1, 2}, where the braces need escaping), and
    \itemize lists with \describe-style entries of the form
    \item{label}{description}.
  * R CMD INSTALL (and hence check) will compile C++ code with
  - DR_NO_REMAP if environment variable _R_CXX_USE_NO_REMAP_ is set
    to a true value.  It is planned that this will in future become
    the default for compiling C++.
  * The new built-in Rd macro \dontdiff{} can be used to mark example
    code whose output should be ignored when comparing check output
    to reference output (tests/Examples/&lt;pkg&gt;-Ex.Rout.save).  The
    \dontdiff tag, like \donttest, is _not_ shown on the rendered
    help page, so provides a clean alternative to ##
    IGNORE_RDIFF_(BEGIN|END) comments.
  * R CMD build when there is no NAMESPACE, now uses the recommended
    exportPattern("^[^.]"), instead of exporting everything.
  * R CMD check now warns about non-ASCII characters in the NAMESPACE
    file (in addition to R files). Such packages are not portable and
    may fail to install on some platforms.
  C-LEVEL FACILITIES:
  * Headers R_ext/Applic.h and R-ext/Linpack.h used to include
    R_ext/BLAS.h although this was undocumented and unneeded by their
    documented entry points.  They no longer do so.
  * New function R_missing(), factored out from do_missing(), used to
    fix PR#18579.
  * SEXP type S4SXP has been renamed to OBJSXP to support
    experimenting with alternative object systems.  The S4SXP value
    can still be used in C code but is now deprecated.  Based on
    contributions from the R Consortium's Object-Oriented Programming
    Working Group.
  * New function pow1p(x,y) for accurate (1+x)^y.
  * mkCharLenCE was incorrectly documented to take a size_t length
    but was implemented with int (and character strings in R are
    limited to 2^31 - 1 bytes).
  DEPRECATED AND DEFUNCT:
  * data() no longer handles zipped data from long-defunct (since R
    2.13.0) --use-zip-data installations.
  * The legacy graphics devices pictex() and xfig() are now
    deprecated.  They do not support recent graphics enhancements and
    their font handling is rudimentary. The intention is to retain
    them for historical interest as long as they remain somewhat
    functional.
  * Support for encoding = "MacRoman" has been removed from the pdf()
    and postscript() devices - this was a legacy encoding supporting
    classic macOS up to 2001 and no longer has universal libiconv
    support.
  * is.R() is deprecated as no other S dialect is known to be in use
    (and this could only identify historical dialects, not future
    ones).
    Further information on calls can be obtained by setting the
    environment variable _R_DEPRECATED_IS_R_ to error which turns the
    deprecation warning into an error and so by default gives a
    traceback.  (This is done by R CMD check --as-cran.)
  * UseMethod() no longer forwards local variables assigned in the
    generic function into method call environments before evaluating
    the method body. This makes method calls behave more like
    standard function calls and makes method code easier to analyze
    correctly.
  * The twelve as.data.frame.&lt;class&gt;() methods which were deprecated
    only via _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ and in R CMD
    check --as-cran are formally deprecated now in favour of calling
    as.data.frame() or as.data.frame.vector().  The deprecation
    "check" now works also when as.data.frame() is S4 generic thanks
    to Ivan Krylov.
  * The default method for the directional comparison operators &lt;, &gt;,
    &lt;=, and &gt;= now signals an error when one of the operands is a
    language object, i.e. a symbol or a call.
  * For terms.formula(), deprecate abb and neg.out arguments
    _formally_ in addition to just documenting it.
  BUG FIXES:
  * The methods package is more robust to not being attached to the
    search path.  More work needs to be done.
  * pairwise.t.test() misbehaved when subgroups had 0 DF for
    variance, even with pool.sd = TRUE.  (PR#18594 by Jack Berry).
  * Probability distribution functions [dpq]&lt;distrib&gt;(x, *), but also
    bessel[IKJY](x, .) now consistently preserve attributes(x) when
    length(x) == 0, e.g., for a 2 x 0 matrix, thanks to Karolis
    Koncevičius' report PR#18509.
  * Group "Summary" computations such as sum(1:3, 4, na.rm = 5, NA,
    7, na.rm = LL) now give an error instead of either 17 or NN for
    LL true or false, as proposed by Ivan Krylov on the R-devel
    mailing list.  (This also means it is now an error to specify
    na.rm more than once.)
  * as.complex(x) now returns complex(real = x, imaginary = 0) for
    _all_ numerical and logical x, notably also for NA or
    NA_integer_.
  * Directories are now omitted by file.copy(, recursive = FALSE) and
    in file.append() (PR#17337).
  * gsub() and sub() are now more robust to integer overflow when
    reporting errors caused by too large input strings (PR#18346).
  * Top-level handlers are now more robust to attempts to remove a
    handler whilst handlers are running (PR#18508).
  * The handling of Alt+F4 in dialogs created on Windows using
    GraphApp has been fixed (PR#13870).
  * density() more consistently computes grid values for the
    FFT-based convolution, following Robert Schlicht's analysis and
    proposal in PR#18337, correcting density values typically by a
    factor of about 0.999.  Argument old.coords = TRUE provides back
    compatibility.
  * palette.colors() gains a name argument that defaults to FALSE
    controlling whether the vector of colours that is returned has
    names (where possible).  PR#18529.
  * tools::xgettext() no longer extracts the (non-translatable) class
    names from warningCondition and errorCondition calls.
  * S3method(&lt;gen&gt;, &lt;class&gt;, &lt;func&gt;) in the NAMESPACE file now works
    (again) when &lt;func&gt; is visible from the namespace, e.g.,
    imported, or in base.
  * getParseData(f) now also works for a function defined in the
    first of several &lt;pkg&gt;/R/*.R source files, thanks to Kirill
    Müller's report and Duncan Murdoch's patch in PR#16756.
  * Rd \Sexpr macros with nested #ifdef conditionals were not
    processed.
  * A non-blocking connection with non-default encoding (such as a
    socket) now correctly returns from readLines() after new data has
    arrived also when its EOF had been reached previously.  Thanks to
    Peter Meilstrup's report on R-devel and Ivan Krylov's report and
    patch proposal in PR#18555.
  * tools::checkRdContents() failed to detect empty argument
    descriptions when they spanned multiple lines, including those
    generated by prompt().  These cases are now noted by R CMD check.
  * Plain-text help no longer outputs spurious colons in the
    arguments list (for multi-line \item labels in the Rd source).
  * kappa() and rcond() work correctly in more cases; kappa(., norm =
    "2") now warns that it computes the 1-norm with (default) exact =
    FALSE; prompted by Mikael Jagan's quite comprehensive PR#18543.
  * Rd skeletons generated by prompt() or promptData() now use a
    dummy title (so R CMD build works).  tools::checkRdContents() has
    been updated to detect such template leftovers, including from
    promptPackage().
  * When S4 method dispatch fails because no method was found, the
    error message now includes the signature argument names; thanks
    to Michael Chirico's proposal on the R-devel list.
  * withAutoprint({ .. }) now preserves srcrefs previously lost,
    thanks to Andrew Simmons' report plus fix in PR#18572.
  * transform.data.frame() no longer adjusts names; in particular,
    untransformed variables are kept as-is, including those with
    syntactically invalid names (PR#17890).
  * The keep.source option for Rd \Sexpr blocks is no longer ignored.
  * The formula methods for t.test() and wilcox.test() now catch when
    paired is passed, addressing PR#14359; use Pair(x1, x2) ~ 1 for a
    paired test.
  * The level reported in the browser prompt was often too large. It
    now shows the number of browser contexts on the stack.
  * For cbind() and rbind(), the optional deparse.level argument is
    now properly passed to methods, thanks to Mikael Jagan's PR#18579
    and comments there.
  * Some error and warning messages for large ('long vector')
    matrix(v, nr, nc) and dim(m) &lt;- d are now correct about sizes,
    using long long formatting, fixing PR#18612 (and more) reported
    by Mikael Jagan.
  * readChar(useBytes = TRUE) now terminates strings even when the
    underlying connection uses extra spaces in the input buffer.
    This fixes problems with extra garbage seen with gzip
    connections, PR#18605.
  * Named capture in PCRE regular expressions now works also with
    more than 127 named groups (PR#18588).
  * Datetime functions are now robust against long jumps when dealing
    with internal time zone changes.  This avoids confusing warnings
    about an invalid time zone, previously triggered by turning
    warnings into errors or handling them via tryCatch (PR#17966,
    PR#17780).
  * Datetime functions now restore even an empty TZ environment
    variable after internal time zone changes (PR#17724).  This makes
    results of datetime functions with this (typically unintentional)
    setting more predictable.
  * drop.terms(*) now drops response as by default, keep.response =
    FALSE, fixing PR#18564 thanks to Mikael Jagan.
  * dummy.coef(.) now also works for lm()-models with character
    categorical predictor variables rather than factor ones, fixing
    PR#18635 reported by Jinsong Zhao.
  * formals(f) &lt;- formals(f) now also works for a function w/o
    arguments and atomic _constant_ body(f).
  * Correct as.function(&lt;invalid list&gt;, .)'s error message.
  * removeSource() is yet more thorough in finding and removing
    "srcref" and the other source references from parsed R language
    chunks, fixing PR#18638 thanks to Andrew Simmons.
  * dgeom() is more accurate now, notably when its result is very
    small, fixing PR#18642 thanks to the proposal of Morten Welinder,
    also improving other instances where C level binom_raw(x, n, ..)
    has x == 0 or x== n.
  * warning() with options(warn = 1) has improved output for
    multi-line messages.
  * axis.Date() and axis.POSIXct() now respect the par("lab") setting
    for the number of pretty() intervals.
  * Comparisons for language objects (which are based on deparsing)
    are now more careful about using accurate deparsed results
    (PR#18676).
  * Plain-text help (Rd2txt) now correctly preserves blank lines
    following single-line \dontrun code.
  * &lt;POSIXlt&gt;[*] no longer sets wrong "balanced" attribute, fixing
    PR#18681 thanks to Mikael Jagan.
  * str(&lt;classed-call&gt;) now deparses the call as expected, fixing
    PR#18684, reported by Dave Slager.
  * In Rd examples, code following the closing brace of a \dontrun,
    \dontshow or \donttest tag on the same line is no longer skipped
    when R CMD check runs the examples.
  * as.data.frame(matrix(*, ncol=0)) now gets valid names() and
    colnames(); reported by Davis Vaughan on the R-devel list.
  * Internal Mathlib function stirlerr(n) is now almost fully
    (52-bit) accurate for all n &gt;= ~5.9 and more accurate also in the
    range 1 -- 5.9.  This entails small ("after 12th decimal")
    changes in density functions, e.g., dgamma() in _some_ regions of
    their support.  The fix was partly prompted by Morten Welinder's
    PR#18640.
  * Numbers like 9876543.2 are now considered non-integer by Mathlib
    internal R_nonint(), amending original fix of PR#15734.
  * Rd comment lines no longer cause broken paragraphs in the
    rendered PDF and plain-text help. In code blocks, pure comment
    lines (starting with %) no longer produce an empty line.
  * xtabs(Freq ~ .) now consistently defaults to na.action = na.pass,
    using na.rm = FALSE (added as an argument) when summing over Freq
    (PR#17770).
  * tools::testInstalledPackage() is no longer silent about failures
    from running examples or tests and its return code no longer
    ignores failures from checking vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1718366400">- CHANGES IN R 4.4.1:
  C-LEVEL FACILITIES:
  * Functions R_atof and R_strtod declared in header R_ext/Utils.h
    are now documented in 'Writing R Extensions' and so formally part
    of the API.
  * The non-API entry points Rf_setSVector, Rf_StringFalse,
    Rf_StringTrue and Rf_isBlankString have been added to those
    reported by R CMD check.
  * The new function Rf_allocLang is now available. This provides an
    alternative to the idiom of calling Rf_allocList followed by
    SET_TYPEOF.
  UTILITIES:
  * R CMD check now reports as warnings what gfortran calls 'Fortran
    2018 deleted features', all of which have long been marked as
    'obsolescent' and some of which were deleted in Fortran 2008 or
    earlier.  Fortran compilers are no longer required to support
    these.
  BUG FIXES:
  * as.numeric(), scan(), type.convert() and other places which use
    the internal C function R_strtod now require a _non-empty_ digit
    sequence in a decimal or binary exponent.  This aligns with the
    C/POSIX standard for strtod and with ?NumericConstants.
  * as.data.frame(m, make.names=NA) now works correctly for a matrix
    m with NA's in row names.
  * The error message from &lt;POSIXlt&gt;[["hour"]] and similar now
    mentions *[[, "hour"]], as wished for in PR#17409 and proposed by
    Michael Chirico.
  * qbinom() and potentially qpois(), qnbinom(), no longer sometimes
    fail accurate inversion (of pbinom(), etc), thanks to Christopher
    Chang's report and patch in PR#18711.
  * The internal help server on Windows can again serve requests sent
    in quick succession, fixing a regression in R 4.4.0.
  * debugcall(&lt;S3Generic&gt;()) now also works when a corresponding
    S4-generic version is in the methods cache (PR#18143).
  * Package tools' toTitleCase(ch0) now returns character(0) when ch0
    is of zero length; fixing PR#18724, reported by David Hugh Jones.
  * R CMD check is no longer broken (without a check result and no
    explanation in 00check.log) for a package which declares an
    invalid VignetteBuilder in DESCRIPTION but has no vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1730376000">- CHANGES IN R 4.4.2:
  C-LEVEL FACILITIES:
  * The S-compatibility macros F77_COM and F77_COMDECL defined in
    header R_ext/RS.h are deprecated and will be removed shortly.  We
    could find no record of their use.
  BUG FIXES:
  * Mathlib function lgammacor(x) no longer warns about underflow to
    zero for large x.
  * Text widths and heights were incorrectly reported by the Quartz
    device if the drawing context didn't exist yet (typically when
    drawing off-screen to a window that is yet to appear, see
    PR#18591).
  * The Quartz device could segfault in cases where paths with spaces
    are used in the new glyph drawing API.  Thanks to Tomek
    Gieorgijewski (PR#18758).
  * On macOS in R CRAN builds, it is again possible to read
    little-endian UTF-16 text with a BOM from a connection using
    encoding="UTF-16".  Users building R from source should avoid
    using the system libiconv in macOS 14.1 and later.
  * methods' internal .requirePackage() now re-enables primitive
    method dispatch when needed; thanks to Ivan Krylov for
    demystifying CRAN package check failures on the R-devel mailing
    list.</changelog>
</package>
<package pkgid="7e5302c117f663bc213e6f91b899e8ee7243135ca858f12d79abf030f0714ce5c8d60062b14c0d8e48b46a9931e79c8d1535da15a3366bfd1681120bf15ef5a4" name="R-MASS" arch="x86_64">
  <version epoch="0" ver="7.3.61" rel="51.0.2.2.sr20241103"/>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1620302400">- To get in sync with d:l:R:autoCRAN the Matrix package's split
  in -devel was reversed.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339200">- improved spec file according to comments of dimstar in
  https://build.opensuse.org/request/show/892685</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339201">- CHANGES IN R 4.1.0:
  FUTURE DIRECTIONS:
  * It is planned that the 4.1.x series will be the last to support
    32-bit Windows, with production of binary packages for that
    series continuing until early 2023.
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Data set esoph in package datasets now provides the correct
    numbers of controls; previously it had the numbers of cases added
    to these.  (Reported by Alexander Fowler in PR#17964.)
  NEW FEATURES:
  * www.omegahat.net is no longer one of the repositories known by
    default to setRepositories().  (Nowadays it only provides source
    packages and is often unavailable.)
  * Function package_dependencies() (in package tools) can now use
    different dependency types for direct and recursive dependencies.
  * The checking of the size of tarball in R CMD check --as-cran
    &lt;pkg&gt; may be tweaked via the new environment variable
    _R_CHECK_CRAN_INCOMING_TARBALL_THRESHOLD_, as suggested in
    PR#17777 by Jan Gorecki.
  * Using c() to combine a factor with other factors now gives a
    factor, an ordered factor when combining ordered factors with
    identical levels.
  * apply() gains a simplify argument to allow disabling of
    simplification of results.
  * The format() method for class "ftable" gets a new option justify.
    (Suggested by Thomas Soeiro.)
  * New ...names() utility.  (Proposed by Neal Fultz in PR#17705.)
  * type.convert() now warns when its as.is argument is not
    specified, as the help file always said it _should_.  In that
    case, the default is changed to TRUE in line with its change in
    read.table() (related to stringsAsFactor) in R 4.0.0.
  * When printing list arrays, classed objects are now shown _via_
    their format() value if this is a short enough character string,
    or by giving the first elements of their class vector and their
    length.
  * capabilities() gets new entry "Rprof" which is TRUE when R has
    been configured with the equivalent of --enable-R-profiling (as
    it is by default).  (Related to Michael Orlitzky's report
    PR#17836.)
  * str(xS4) now also shows extraneous attributes of an S4 object
    xS4.
  * Rudimentary support for vi-style tags in rtags() and R CMD rtags
    has been added.  (Based on a patch from Neal Fultz in PR#17214.)
  * checkRdContents() is now exported from tools; it and also
    checkDocFiles() have a new option chkInternal allowing to check
    Rd files marked with keyword "internal" as well.  The latter can
    be activated for R CMD check via environment variable
    _R_CHECK_RD_INTERNAL_TOO_.
  * New functions numToBits() and numToInts() extend the raw
    conversion utilities to (double precision) numeric.
  * Functions URLencode() and URLdecode() in package utils now work
    on vectors of URIs.  (Based on patch from Bob Rudis submitted
    with PR#17873.)
  * path.expand() can expand ~user on most Unix-alikes even when
    readline is not in use.  It tries harder to expand ~, for example
    should environment variable HOME be unset.
  * For HTML help (both dynamic and static), Rd file links to help
    pages in external packages are now treated as references to
    topics rather than file names, and fall back to a file link only
    if the topic is not found in the target package. The earlier rule
    which prioritized file names over topics can be restored by
    setting the environment variable _R_HELP_LINKS_TO_TOPICS_ to a
    false value.
  * c() now removes NULL arguments before dispatching to methods,
    thus simplifying the implementation of c() methods, _but_ for
    back compatibility keeps NULL when it is the first argument.
    (From a report and patch proposal by Lionel Henry in PR#17900.)
  * Vectorize()'s result function's environment no longer keeps
    unneeded objects.
  * Function ...elt() now propagates visibility consistently with
    ..n.  (Thanks to Lionel Henry's PR#17905.)
  * capture.output() no longer uses non-standard evaluation to
    evaluate its arguments.  This makes evaluation of functions like
    parent.frame() more consistent.  (Thanks to Lionel Henry's
    PR#17907.)
  * packBits(bits, type="double") now works as inverse of
    numToBits().  (Thanks to Bill Dunlap's proposal in PR#17914.)
  * curlGetHeaders() has two new arguments, timeout to specify the
    timeout for that call (overriding getOption("timeout")) and TLS
    to specify the minimum TLS protocol version to be used for
    https:// URIs (_inter alia_ providing a means to check for sites
    using deprecated TLS versions 1.0 and 1.1).
  * For nls(), an optional constant scaleOffset may be added to the
    denominator of the relative offset convergence test for cases
    where the fit of a model is expected to be exact, thanks to a
    proposal by John Nash.  nls(*, trace=TRUE) now also shows the
    convergence criterion.
  * Numeric differentiation _via_ numericDeriv() gets new optional
    arguments eps and central, the latter for taking central divided
    differences.  The latter can be activated for nls() via
    nls.control(nDcentral = TRUE).
  * nls() now passes the trace and control arguments to getInitial(),
    notably for all self-starting models, so these can also be fit in
    zero-noise situations via a scaleOffset.  For this reason, the
    initial function of a selfStart model must now have ... in its
    argument list.
  * bquote(splice = TRUE) can now splice expression vectors with
    attributes: this makes it possible to splice the result of
    parse(keep.source = TRUE).  (Report and patch provided by Lionel
    Henry in PR#17869.)
  * textConnection() gets an optional name argument.
  * get(), exists(), and get0() now signal an error if the first
    argument has length greater than 1.  Previously additional
    elements were silently ignored.  (Suggested by Antoine Fabri on
    R-devel.)
  * R now provides a shorthand notation for creating functions, e.g.
    \(x) x + 1 is parsed as function(x) x + 1.
  * R now provides a simple native forward pipe syntax |&gt;.  The
    simple form of the forward pipe inserts the left-hand side as the
    first argument in the right-hand side call.  The pipe
    implementation as a syntax transformation was motivated by
    suggestions from Jim Hester and Lionel Henry.
  * all.equal(f, g) for functions now by default also compares their
    environment(.)s, notably via new all.equal method for class
    function.  Comparison of nls() fits, e.g., may now need
    all.equal(m1, m2, check.environment = FALSE).
  * .libPaths() gets a new option include.site, allowing to _not_
    include the site library.  (Thanks to Dario Strbenac's suggestion
    and Gabe Becker's PR#18016.)
  * Lithuanian translations are now available.  (Thanks to Rimantas
    Zakauskas.)
  * names() now works for DOTSXP objects.  On the other hand, in
    R-lang, the R language manual, we now warn against relying on the
    structure or even existence of such dot-dot-dot objects.
  * all.equal() no longer gives an error on DOTSXP objects.
  * capabilities("cairo") now applies only to the file-based devices
    as it is now possible (if very unusual) to build R with Cairo
    support for those but not for X11().
  * There is optional support for tracing the progress of
    loadNamespace() - see its help.
  * (Not Windows.)  l10n_info() reports an additional element, the
    name of the encoding as reported by the OS (which may differ from
    the encoding part (if any) of the result from
    Sys.getlocale("LC_CTYPE").
  * New function gregexec() which generalizes regexec() to find _all_
    disjoint matches and well as all substrings corresponding to
    parenthesized subexpressions of the given regular expression.
    (Contributed by Brodie Gaslam.)
  * New function charClass() in package utils to query the
    wide-character classification functions in use (such as
    iswprint).
  * The names of quantile()'s result no longer depend on the global
    getOption("digits"), but quantile() gets a new optional argument
    digits = 7 instead.
  * grep(), sub(), regexp and variants work considerably faster for
    long factors with few levels.  (Thanks to Michael Chirico's
    PR#18063.)
  * Provide grouping of x11() graphics windows within a window
    manager such as Gnome or Unity; thanks to a patch by Ivan Krylov
    posted to R-devel.
  * The split() method for class data.frame now allows the f argument
    to be specified as a formula.
  * sprintf now warns on arguments unused by the format string.
  * New palettes "Rocket" and "Mako" for hcl.colors() (approximating
    palettes of the same name from the 'viridisLite' package).
    Contributed by Achim Zeileis.
  * The base environment and its namespace are now locked (so one can
    no longer add bindings to these or remove from these).
  * Rterm handling of multi-byte characters has been improved,
    allowing use of such characters when supported by the current
    locale.
  * Rterm now accepts ALT+ +xxxxxxxx sequences to enter Unicode
    characters as hex digits.
  * Environment variable LC_ALL on Windows now takes precedence over
    LC_CTYPE and variables for other supported categories, matching
    the POSIX behaviour.
  * duplicated() and anyDuplicated() are now optimized for integer
    and real vectors that are known to be sorted via the ALTREP
    framework. Contributed by Gabriel Becker via PR#17993.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 14
    and so packages that provide graphics devices should be
    reinstalled.
  * Graphics devices should now specify deviceVersion to indicate
    what version of the graphics engine they support.
  * Graphics devices can now specify deviceClip.  If TRUE, the
    graphics engine will never perform any clipping of output itself.
    The clipping that the graphics engine does perform (for both
    canClip = TRUE and canClip = FALSE) has been improved to avoid
    producing unnecessary artifacts in clipped output.
  * The grid package now allows gpar(fill) to be a linearGradient(),
    a radialGradient(), or a pattern().  The viewport(clip) can now
    also be a grob, which defines a clipping path, and there is a new
    viewport(mask) that can also be a grob, which defines a mask.
    These new features are only supported so far on the Cairo-based
    graphics devices and on the pdf() device.
  * (Not Windows.)  A warning is given when a Cairo-based type is
    specified for a png(), jpeg(), tiff() or bmp() device but Cairo
    is unsupported (so type = "Xlib" is tried instead).
  * grSoftVersion() now reports the versions of FreeType and
    FontConfig if they are used directly (not _via_ Pango), as is
    most commonly done on macOS.
  C-LEVEL FACILITIES:
  * The _standalone_ libRmath math library and R's C API now provide
    log1pexp() again as documented, and gain log1mexp().
  INSTALLATION on a UNIX-ALIKE:
  * configure checks for a program pkgconf if program pkg-config is
    not found.  These are now only looked for on the path (like
    almost all other programs) so if needed specify a full path to
    the command in PKG_CONFIG, for example in file config.site.
  * C99 function iswblank is required - it was last seen missing ca
    2003 so the workaround has been removed.
  * There are new configure options --with-internal-iswxxxxx,
  - -with-internal-towlower and --with-internal-wcwidth which allows
    the system functions for wide-character classification,
    case-switching and width (wcwidth and wcswidth) to be replaced by
    internal ones.  The first has long been used on macOS, AIX (and
    Windows) but this enables it to be unselected there and selected
    for other platforms (it is the new default on Solaris).  The
    second is new in this version of R and is selected by default on
    macOS and Solaris.  The third has long been the default and
    remains so as it contains customizations for East Asian
    languages.
    System versions of these functions are often minimally
    implemented (sometimes only for ASCII characters) and may not
    cover the full range of Unicode points: for example Solaris (and
    Windows) only cover the Basic Multilingual Plane.
  * Cairo installations without X11 are more likely to be detected by
    configure, when the file-based Cairo graphics devices will be
    available but not X11(type = "cairo").
  * There is a new configure option --with-static-cairo which is the
    default on macOS.  This should be used when only static cairo
    (and where relevant, Pango) libraries are available.
  * Cairo-based graphics devices on platforms without Pango but with
    FreeType/FontConfig will make use of the latter for font
    selection.
  LINK-TIME OPTIMIZATION on a UNIX-ALIKE:
  * Configuring with flag --enable-lto=R now also uses LTO when
    installing the recommended packages.
  * R CMD INSTALL and R CMD SHLIB have a new flag --use-LTO to use
    LTO when compiling code, for use with R configured with
  - -enable-lto=R.  For R configured with --enable-lto, they have
    the new flag --no-use-LTO.
    Packages can opt in or out of LTO compilation _via_ a UseLTO
    field in the DESCRIPTION file.  (As usual this can be overridden
    by the command-line flags.)
  BUILDING R on Windows:
  * for GCC &gt;= 8, FC_LEN_T is defined in config.h and hence character
    lengths are passed from C to Fortran in _inter alia_ BLAS and
    LAPACK calls.
  * There is a new text file src/gnuwin32/README.compilation, which
    outlines how C/Fortran code compilation is organized and
    documents new features:
  * R can be built with Link-Time Optimization with a suitable
    compiler - doing so with GCC 9.2 showed several
    inconsistencies which have been corrected.
  * There is support for cross-compiling the C and Fortran code
    in R and standard packages on suitable (Linux) platforms.
    This is mainly intended to allow developers to test later
    versions of compilers - for example using GCC 9.2 or 10.x has
    detected issues that GCC 8.3 in Rtools40 does not.
  * There is experimental support for cross-building R packages
    with C, C++ and/or Fortran code.
  * The R installer can now be optionally built to support a single
    architecture (only 64-bit or only 32-bit).
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++14 where
    available (which it is on all currently checked platforms): if
    not (as before) C++11 is used if available otherwise C++ is not
    supported.
    Packages which specify C++11 will still be installed using C++11.
    C++14 compilers may give deprecation warnings, most often for
    std::random_shuffle (deprecated in C++14 and removed in C++17).
    Either specify C++11 (see 'Writing R Extensions') or modernize
    the code and if needed specify C++14.  The latter has been
    supported since R 3.4.0 so the package's DESCRIPTION would need
    to include something like
    Depends: R (&gt;= 3.4)
  PACKAGE INSTALLATION on Windows:
  * R CMD INSTALL and R CMD SHLIB make use of their flag --use-LTO
    when the LTO_OPT make macro is set in file etc/${R_ARCH}/Makeconf
    or in a personal/site Makevars file.  (For details see 'Writing R
    Extensions' SS4.5.)
    This provides a valuable check on code consistency.  It does work
    with GCC 8.3 as in Rtools40, but that does not detect everything
    the CRAN checks with current GCC do.
  PACKAGE INSTALLATION on macOS:
  * The default personal library directory on builds with
  - -enable-aqua (including CRAN builds) now differs by CPU type,
    one of
    ~/Library/R/x86_64/x.y/library
    ~/Library/R/arm64/x.y/library
    This uses the CPU type R (and hence the packages) were built for,
    so when a x86_64 build of R is run under Rosetta emulation on an
    arm64 Mac, the first is used.
  UTILITIES:
  * R CMD check can now scan package functions for bogus return
    statements, which were possibly intended as return() calls (wish
    of PR#17180, patch by Sebastian Meyer). This check can be
    activated via the new environment variable
    _R_CHECK_BOGUS_RETURN_, true for --as-cran.
  * R CMD build omits tarballs and binaries of previous builds from
    the top-level package directory.  (PR#17828, patch by Sebastian
    Meyer.)
  * R CMD check now runs sanity checks on the use of LazyData, for
    example that a data directory is present and that
    LazyDataCompression is not specified without LazyData and has a
    documented value.  For packages with large LazyData databases
    without specifying LazyDataCompression, there is a reference to
    the code given in 'Writing R Extensions' SS1.1.6 to test the
    choice of compression (as in all the CRAN packages tested a
    non-default method was preferred).
  * R CMD build removes LazyData and LazyDataCompression fields from
    the DESCRIPTION file of packages without a data directory.
  ENCODING-RELATED CHANGES:
  * The parser now treats \Unnnnnnnn escapes larger than the upper
    limit for Unicode points (\U10FFFF) as an error as they cannot be
    represented by valid UTF-8.
    Where such escapes are used for outputting non-printable
    (including unassigned) characters, 6 hex digits are used (rather
    than 8 with leading zeros).  For clarity, braces are used, for
    example \U{0effff}.
  * The parser now looks for non-ASCII spaces on Solaris (as
    previously on most other OSes).
  * There are warnings (including from the parser) on the use of
    unpaired surrogate Unicode points such as \uD834.  (These cannot
    be converted to valid UTF-8.)
  * Functions nchar(), tolower(), toupper() and chartr() and those
    using regular expressions have more support for inputs with a
    marked Latin-1 encoding.
  * The character-classification functions used (by default) to
    replace the system iswxxxxx functions on Windows, macOS and AIX
    have been updated to Unicode 13.0.0.
    The character-width tables have been updated to include new
    assignments in Unicode 13.0.0.
  * The code for evaluating default (extended) regular expressions
    now uses the same character-classification functions as the rest
    of R (previously they differed on Windows, macOS and AIX).
  * There is a build-time option to replace the system's
    wide-character wctrans C function by tables shipped with R: use
    configure option --with-internal-towlower or (on Windows)
  - DUSE_RI18N_CASE in CFLAGS when building R.  This may be needed
    to allow tolower() and toupper() to work with Unicode characters
    beyond the Basic Multilingual Plane where not supported by system
    functions (e.g. on Solaris where it is the new default).
  * R is more careful when truncating UTF-8 and other multi-byte
    strings that are too long to be printed, passed to the system or
    libraries or placed into an internal buffer.  Truncation will no
    longer produce incomplete multibyte characters.
  DEPRECATED AND DEFUNCT:
  * Function plclust() from the package stats and
    package.dependencies(), pkgDepends(), getDepList(),
    installFoundDepends(), and vignetteDepends() from package tools
    are defunct.
  * Defunct functions checkNEWS() and readNEWS() from package tools
    and CRAN.packages() from utils have been removed.
  * R CMD config CXXCPP is defunct (it was deprecated in R 3.6.2).
  * parallel::detectCores() drops support for Irix (retired in 2013).
  * The LINPACK argument to chol.default(), chol2inv(),
    solve.default() and svd() has been defunct since R 3.1.0.  It was
    silently ignored up to R 4.0.3 but now gives an error.
  * Subsetting/indexing, such as ddd[*] or ddd$x on a DOTSXP
    (dot-dot-dot) object ddd has been disabled; it worked by accident
    only and was undocumented.
  BUG FIXES:
  * Many more C-level allocations (mainly by malloc and strdup) are
    checked for success with suitable alternative actions.
  * Bug fix for replayPlot(); this was turning off graphics engine
    display list recording if a recorded plot was replayed in the
    same session.  The impact of the bug became visible if resize the
    device after replay OR if attempted another savePlot() after
    replay (empty display list means empty screen on resize or empty
    saved plot).
  * R CMD check etc now warn when a package exports non-existing S4
    classes or methods, also in case of no "methods" presence.
    (Reported by Alex Bertram; reproducible example and patch by
    Sebastian Meyer in PR#16662.)
  * boxplot() now also accepts calls for labels such as ylab, the
    same as plot().  (Reported by Marius Hofert.)
  * The help page for xtabs() now correctly states that addNA is
    setting na.action = na.pass among others.  (Reported as PR#17770
    by Thomas Soeiro.)
  * The R CMD check &lt;pkg&gt; gives a longer and more comprehensible
    message when DESCRIPTION misses dependencies, e.g., in Imports:.
    (Thanks to the contributors of PR#17179.)
  * update.default() now calls the generic update() on the formula to
    work correctly for models with extended formulas.  (As reported
    and suggested by Neal Fultz in PR#17865.)
  * The horizontal position of leaves in a dendrogram is now correct
    also with center = FALSE.  (PR#14938, patch from Sebastian
    Meyer.)
  * all.equal.POSIXt() no longer warns about and subsequently ignores
    inconsistent "tzone" attributes, but describes the difference in
    its return value (PR#17277).  This check can be disabled _via_
    the new argument check.tzone = FALSE as suggested by Sebastian
    Meyer.
  * as.POSIXct() now populates the "tzone" attribute from its tz
    argument when x is a logical vector consisting entirely of NA
    values.
  * x[[2^31]] &lt;- v now works.  (Thanks to the report and patch by
    Suharto Anggono in PR#17330.)
  * In log-scale graphics, axis() ticks and label positions are now
    computed more carefully and symmetrically in their range,
    typically providing _more_ ticks, fulfilling wishes in PR#17936.
    The change really corresponds to an improved axisTicks() (package
    grDevices), potentially influencing grid and lattice, for
    example.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now correct to at
    least five digits where it was catastrophically wrong,
    previously.
  * sum(df) and similar "Summary"- and "Math"-group member functions
    now work for data frames df with logical columns, notably also of
    zero rows.  (Reported to R-devel by Martin "b706".)
  * unsplit() had trouble with tibbles due to unsound use of rep(NA,
    len)-indexing, which should use NA_integer_ (Reported to R-devel
    by Mario Annau.)
  * pnorm(x, log.p = TRUE) underflows to -Inf slightly later.
  * show(&lt;hidden S4 generic&gt;) prints better and without quotes for
    non-hidden S4 generics.
  * read.table() and relatives treated an "NA" column name as missing
    when check.names = FALSE PR#18007.
  * Parsing strings containing UTF-16 surrogate pairs such as
    "\uD834\uDD1E" works better on some (uncommon) platforms.
    sprintf("%X", utf8ToInt("\uD834\uDD1E")) should now give "1D11E"
    on all platforms.
  * identical(x,y) is no longer true for differing DOTSXP objects,
    fixing PR#18032.
  * str() now works correctly for DOTSXP and related exotics, even
    when these are doomed.
    Additionally, it no longer fails for lists with a class and
    "irregular" method definitions such that e.g. lapply(*) will
    necessarily fail, as currently for different igraph objects.
  * Too long lines in environment files (e.g. Renviron) no longer
    crash R. This limit has been increased to 100,000 bytes.
    (PR#18001.)
  * There is a further workaround for FreeType giving incorrect
    italic font faces with cairo-based graphics devices on macOS.
  * add_datalist(*, force = TRUE) (from package tools) now actually
    updates an existing data/datalist file for new content.  (Thanks
    to a report and patch by Sebastian Meyer in PR#18048.)
  * cut.Date() and cut.POSIXt() could produce an empty last interval
    for breaks = "months" or breaks = "years".  (Reported as PR#18053
    by Christopher Carbone.)
  * Detection of the encoding of 'regular' macOS locales such as
    en_US (which is UTF-8) had been broken by a macOS change:
    fortunately these are now rarely used with en_US.UTF-8 being
    preferred.
  * sub() and gsub(pattern, repl, x, *) now keep attributes of x such
    as names() also when pattern is NA (PR#18079).
  * Time differences ("difftime" objects) get a replacement and a
    rep() method to keep "units" consistent.  (Thanks to a report and
    patch by Nicolas Bennett in PR#18066.)
  * The \RdOpts macro, setting defaults for \Sexpr options in an Rd
    file, had been ineffective since R 2.12.0: it now works again.
    (Thanks to a report and patch by Sebastian Meyer in PR#18073.)
  * mclapply and pvec no longer accidentally terminate parallel
    processes started before by mcparallel or related calls in
    package parallel (PR#18078).
  * grep and other functions for evaluating (extended) regular
    expressions handle in Unicode also strings not explicitly flagged
    UTF-8, but flagged native when running in UTF-8 locale.
  * Fixed a crash in fifo implementation on Windows (PR#18031).
  * Binary mode in fifo on Windows is now properly detected from
    argument open (PR#15600, PR#18031).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1622808000">- The line %{__install} -m 755 -d %{_infodir}
  no longer works in TW or Factory.
  But without that line it works everywhere. So this instruction
  was commented out of the spec file.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1628596800">- CHANGES IN R 4.1.1:
  NEW FEATURES:
  * require(pkg, quietly = TRUE) is quieter and in particular does
    not warn if the package is not found.
  DEPRECATED AND DEFUNCT:
  * Use of ftp:// URIs should be regarded as deprecated, with
    on-going support confined to method = "libcurl" and not routinely
    tested.  (Nowadays no major browser supports them.)
  * The non-default method = "internal" is deprecated for http:// and
    ftp:// URIs for both download.file and url.
  * On Windows, method = "wininet" is deprecated for http://,
    https:// and ftp:// URIs for both download.file and url.  (A
    warning is only given for ftp://.)
    For ftp:// URIs the default method is now "libcurl" if available
    (which it is on CRAN builds).
    method = "wininet" remains the default for http:// and https://
    URIs but if libcurl is available, using method = "libcurl" is
    preferred.
  INSTALLATION:
  * make check now works also without a LaTeX installation.  (Thanks
    to Sebastian Meyer's PR#18103.)
  BUG FIXES:
  * make check-devel works again in an R build configured with
  - -without-recommended-packages.
  * qnbinom(p, size, mu) for large size/mu is correct now in a range
    of cases (PR#18095); similarly for the (size, prob)
    parametrization of the negative binomial.  Also qpois() and
    qbinom() are better and or faster for extreme cases.  The
    underlying C code has been modularized and is common to all four
    cases of discrete distributions.
  * gap.axis is now part of the axis() arguments which are passed
    from bxp(), and hence boxplot().  (Thanks to Martin Smith's
    report and suggestions in PR#18109.)
  * .First and .Last can again be set from the site profile.
  * seq.int(from, to, *) and seq.default(..) now work better in large
    range cases where from-to is infinite where the two boundaries
    are finite.
  * all.equal(x,y) now returns TRUE correctly also when several
    entries of abs(x) and abs(y) are close to .Machine$double.xmax,
    the largest finite numeric.
  * model.frame() now clears the object bit when removing the class
    attribute of a value via na.action (PR#18100).
  * charClass() now works with multi-character strings on Windows
    (PR#18104, fixed by Bill Dunlap).
  * encodeString() on Solaris now works again in Latin-1 encoding on
    characters represented differently in UTF-8.  Support for
    surrogate pairs on Solaris has been improved.
  * file.show() on Windows now works with non-ASCII path names
    representable in the current native encoding (PR#18132).
  * Embedded R on Windows can now find R home directory via the
    registry even when installed only for the current user
    (PR#18135).
  * pretty(x) with finite x now returns finite values also in the
    case where the extreme x values are close in size to the maximal
    representable number .Machine$double.xmax.
    Also, it's been tweaked for very small ranges and when a boundary
    is close (or equal) to zero; e.g., pretty(c(0,1e-317)) no longer
    has negative numbers, currently still warning about a very small
    range, and pretty(2^-(1024 - 2^-1/(c(24,10)))) is more accurate.
  * The error message for not finding vignette files when weaving has
    correct file sizes now. (Thanks to Sebastian Meyer's PR#18154.)
  * dnbinom(20, &lt;large&gt;, 1) now correctly gives 0, and similar cases
    are more accurate with underflow precaution.  (Reported by Francisco Vera Alcivar in PR#18072.)</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635163200">- repaired https://bugzilla.suse.com/show_bug.cgi?id=1191380
  (rpmacros now go to rpmmacrodir)
- minor clean-ups in spec file</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635768000">- CHANGES IN R 4.1.2:
  C-LEVEL FACILITIES:
  * The workaround in headers R.h and Rmath.h (using namespace std;)
    for the Oracle Developer Studio compiler is no longer needed now
    C++11 is required so has been removed.  A couple more usages of
    log() (which should have been std::log()) with an int argument
    are reported on Solaris.
  * The undocumented limit of 4095 bytes on messages from the
    S-compatibility macros PROBLEM and MESSAGE is now documented and
    longer messages will be silently truncated rather than
    potentially causing segfaults.
  * If the R_NO_SEGV_HANDLER environment variable is non-empty, the
    signal handler for SEGV/ILL/BUS signals (which offers recovery
    user interface) is not set. This allows more reliable debugging
    of crashes that involve the console.
  DEPRECATED AND DEFUNCT:
  * The legacy S-compatibility macros PROBLEM, MESSAGE, ERROR, WARN,
    WARNING, RECOVER, ... are deprecated and will be hidden in R
    4.2.0. R's native interface of Rf_error and Rf_warning has long
    been preferred.
  BUG FIXES:
  * .mapply(F, dots, .) no longer segfaults when dots is not a list
    and uses match.fun(F) as always documented; reported by Andrew
    Simmons in PR#18164.
  * hist(&lt;Date&gt;, ...) and hist(&lt;POSIXt&gt;, ...)  no longer pass
    arguments for rect() (such as col and density) to axis().
    (Thanks to Sebastian Meyer's PR#18171.)
  * \Sexpr{ch} now preserves Encoding(ch). (Thanks to report and
    patch by Jeroen Ooms in PR#18152.)
  * Setting the RNG to "Marsaglia-Multicarry" e.g., by RNGkind(), now
    warns in more places, thanks to Andr'e Gillibert's report and
    patch in PR#18168.
  * gray(numeric(), alpha=1/2) no longer segfaults, fixing PR#18183,
    reported by Till Krenz.
  * Fixed dnbinom(x, size=&lt;very_small&gt;, .., log=TRUE) regression,
    reported by Martin Morgan.
  * as.Date.POSIXlt(x) now keeps names(x), thanks to Davis Vaughan's
    report and patch in PR#18188.
  * model.response() now strips an "AsIs" class typically, thanks to
    Duncan Murdoch's report and other discussants in PR#18190.
  * try() is considerably faster in case of an error and long call,
    as e.g., from some do.call().  Thanks to Alexander Kaever's
    suggestion posted to R-devel.
  * qqline(y = &lt;object&gt;) such as y=I(.), now works, see also
    PR#18190.
  * Non-integer mgp par() settings are now handled correctly in
    axis() and mtext(), thanks to Mikael Jagan and Duncan Murdoch's
    report and suggestion in PR#18194.
  * formatC(x) returns length zero character() now, rather than ""
    when x is of length zero, as documented, thanks to Davis
    Vaughan's post to R-devel.
  * removeSource(fn) now retains (other) attributes(fn).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1647000000">- CHANGES IN R 4.1.3:
  NEW FEATURES:
  * The default version of Bioconductor has been changed to 3.14.
    (This is used by setRepositories and the menus in GUIs.)
  UTILITIES:
  * R CMD check --as-cran has a workaround for a bug in versions of
    file up to at least 5.41 which mis-identify DBF files last
    changed in 2022 as executables.
  C-LEVEL FACILITIES:
  * The legacy S-compatibility macros SINGLE_* in R_ext/Constants.h
    (included by R.h) are deprecated and will be removed in R 4.2.0.
  BUG FIXES:
  * Initialization of self-starting nls() models with initialization
    functions following the pre-R-4.1.0 API (without the ...
    argument) works again for now, with a deprecation warning.
  * Fixed quoting of ~autodetect~ in Java setting defaults to avoid
    inadvertent user lookup due to leading ~, reported in PR#18231 by
    Harold Gutch.
  * substr(., start, stop) &lt;- v now treats _negative_ stop values
    correctly.  Reported with a patch in PR#18228 by Brodie Gaslam.
  * Subscripting an array x without dimnames by a
    length(dim(x))-column character matrix gave "random" non-sense,
    now an error; reported in PR#18244 by Mikael Jagan.
  * ...names() now matches names(list(...)) closely, fixing PR#18247.
  * all.equal(*, scale = s) now works as intended when length(s) &gt; 1,
    partly thanks to Michael Chirico's PR#18272.
  * print(x) for long vectors x now also works for named atomic
    vectors or lists and prints the correct number when reaching the
    getOption("max.print") limit; partly thanks to a report and
    proposal by Hugh Parsonage to the R-devel list.
  * all.equal(&lt;selfStart&gt;, *) no longer signals a deprecation
    warning.
  * reformulate(*, response=r) gives a helpful error message now when
    length(r) &gt; 1, thanks to Bill Dunlap's PR#18281.
  * Modifying globalCallingHandlers inside withCallingHandlers() now
    works or fails correctly, thanks to Henrik Bengtsson's PR#18257.
  * hist(&lt;Date&gt;, breaks = "days") and hist(&lt;POSIXt&gt;, breaks = "secs")
    no longer fail for inputs of length 1.
  * qbeta(.001, .9, .009) and similar cases now converge correctly
    thanks to Ben Bolker's report in PR#17746.
  * window(x, start, end) no longer wrongly signals "'start' cannot
    be after 'end'", fixing PR#17527 and PR#18291.
  * data() now checks that its (rarely used) list argument is a
    character vector - a couple of packages passed other types and
    gave incorrect results.
  * which() now checks its arr.ind argument is TRUE rather coercing
    to logical and taking the first element - which gave incorrect
    results in package code.
  * model.weights() and model.offset() more carefully extract their
    model components, thanks to Ben Bolker and Tim Taylor's R-devel
    post.
  * list.files(recursive = TRUE) now shows all broken symlinks
    (previously, some of them may have been omitted, PR#18296).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1650628800">- CHANGES IN R 4.2.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * The formula method of aggregate() now matches the generic in
    naming its first argument x (resolving PR#18299 by Thomas
    Soeiro).
    This means that calling aggregate() with a formula as a named
    first argument requires name formula in earlier versions of R and
    name x now, so portable code should not name the argument (code
    in many packages did).
  * Calling &amp;&amp; or || with either argument of length greater than one
    now gives a warning (which it is intended will become an error).
  * Calling if() or while() with a condition of length greater than
    one gives an error rather than a warning.  Consequently,
    environment variable _R_CHECK_LENGTH_1_CONDITION_ no longer has
    any effect.
  * Windows users should consult the WINDOWS section below for some
    profound changes including
  * Support for 32-bit builds has been dropped.
  * UTF-8 locales are used where available.
  * The default locations for the R installation and personal
    library folder have been changed.
    Thanks to Tomas Kalibera for months of work on the Windows port
    for this release.
  NEW FEATURES:
  * matrix(x, n, m) now warns in more cases where length(x) differs
    from n * m, as suggested by Abby Spurdle and Wolfgang Huber in
    Feb 2021 on the R-devel mailing list.
    This warning can be turned into an error by setting environment
    variable _R_CHECK_MATRIX_DATA_ to TRUE: R CMD check --as-cran
    does so unless it is already set.
  * Function file_test() in package utils gains tests for symlinks,
    readability and writability.
  * capabilities("libxml") is now false.
    The description of capabilities("http/ftp") now reflects that it
    refers to the default method, no longer the internal one.
  * simplify2array() gains an except argument for controlling the
    exceptions used by sapply().
  * Environment variables R_LIBS_USER and R_LIBS_SITE are both now
    set to the R system default if unset or empty, and can be set to
    NULL to indicate an empty list of user or site library
    directories.
  * The warning for axis()(-like) calls in cases of relatively small
    ranges (typically in log-scale situations) is slightly improved
    _and_ suppressed from explicit calls to .axisPars() as has always
    been the intention.
  * The contrasts setter function `contrasts&lt;-` gains an explicit
    default how.many = NULL rather than just using missing(how.many).
  * grid.pretty() gains a new optional argument n = 5.
  * There is a new function .pretty() with option bounds as a
    technical-utility version of pretty().  It and pretty() gain a
    new argument f.min with a better than back-compatible default.
  * Function grDevices::axisTicks() and related functions such as
    graphics::axis() work better, notably for the log scale; partly
    because of the pretty() improvements, but also because care is
    taken e.g., when ylim is finite but diff(ylim) is infinite.
  * nclass.FD() gains a digits option.
  * The R Mathlib internal C function bd0() (called indirectly from a
    dozen probability density and distribution functions such as
    dpois(), dbinom(), dgamma(), pgamma() _etc_) has been
    complemented by a more sophisticated and (mostly) more accurate C
    function ebd0(), currently called only by internal dpois_raw()
    improving accuracy for R level dpois() and potentially others
    calling it such as dnbinom(), dgamma() or pgamma().  (Thanks to
    Morten Welinder's PR#15628.)
  * write.ftable() gains sep = " " argument as suggested by Thomas
    Soeiro.
  * The names of the locale categories supported by R's
    Sys.getlocale() and Sys.setlocale() are now provided by variable
    .LC.categories in the base namespace.
  * The Date and POSIXt methods for hist() and the histogram method
    for plot() now also use the new default col = "lightgray" in
    consistency with the corresponding change to hist()'s default for
    R 4.0.0.
  * hist.default() gains new fuzz argument, and the histogram plot
    method no longer uses fractional axis ticks when displaying
    counts ("Frequency").
  * mapply() and hence Map() now also obey the "max-or-0-if-any"
    recycling rule, such that, e.g., Map(`+`, 1:3, 1[0]) is valid
    now.
  * as.character(&lt;obj&gt;) for "hexmode" or "octmode" objects now
    fulfils the important basic rule as.character(x)[j] ===
    as.character(x[j]).
  * The set utility functions, notably intersect() have been tweaked
    to be more consistent and symmetric in their two set arguments,
    also preserving a common mode.
  * substr(ch, start,end) &lt;- new now e.g., preserves names(ch); ditto
    for substring(), thanks to a patch from Brodie Gaslam.
  * plot(&lt;lm&gt;) gains a extend.ylim.f argument, in partial response to
    PR#15285; further PR#17784 is fixed thanks to several
    contributors and a patch by Elin Waring.  The Cook's dist
    contours get customizable via cook.col and cook.lty with a
    different default color and their legend is nicer by default and
    customizable via cook.legendChanges.
  * Attempting to subset an object that is not subsettable now
    signals an error of class notSubsettableError. The
    non-subsettable object is contained in the object field of the
    error condition.
  * Subscript-out-of-bounds errors are now signaled as errors of
    class subscriptOutOfBoundsError.
  * Stack-overflow errors are now signaled as errors inheriting from
    class stackOverflowError. See ?stackOverflowError for more
    details.
  * New partly experimental Sys.setLanguage() utility, solving the
    main problem of PR#18055.
  * gettext() and gettextf() get a new option trim = TRUE which when
    set to false allows translations for strings such as "Execution
    halted\n" typical for C code.
  * An experimental implementation of hash tables is now available.
    See ?hashtab for more details.
  * identical() gains a extptr.as.ref argument for requesting that
    external pointer objects be compared as reference objects.
  * reorder() gets an argument decreasing which it passes to sort()
    for level creation; based on the wish and patch by Thomas Soeiro
    in PR#18243.
  * as.vector() gains a data.frame method which returns a simple
    named list, also clearing a long standing 'FIXME' to enable
    as.vector(&lt;data.frame&gt;, mode="list").  This breaks code relying
    on as.vector(&lt;data.frame&gt;) to return the unchanged data frame.
  * legend() is now vectorized for arguments cex, x.intersp, and
    text.width.  The latter can now also be specified as a vector
    (one element for each column of the legend) or as NA for
    computing a proper column wise maximum value of strwidth(legend).
    The argument y.intersp can be specified as a vector with one
    entry for each row of the legend.
    legend() also gains new arguments title.cex and title.font.
    Thanks to Swetlana Herbrandt.
  * Deparsing no longer remaps attribute names dim, dimnames, levels,
    names and tsp to historical S-compatible names (which structure()
    maps back).
  * sample() and sample.int() have additional sanity checks on their
    size and n arguments.
    all.equal.numeric() gains a sanity check on its tolerance
    argument - calling all.equal(a, b, c) for three numeric vectors
    is a surprisingly common error.
    mean(na.rm =), rank(na.last =), barplot(legend.text =),
    boxplot(), contour(drawlabels =), polygon(border =) and
    methods::is(class2 =) have more robust sanity checks on their
    arguments.
    R CMD Rd2pdf (used by R CMD check) has a more robust sanity check
    on the format of \alias{} commands.
  * psigamma(x, deriv) for negative x now also works for deriv = 4
    and 5; their underlying C level dpsifn() is documented in
    'Writing R Extensions'.
  * The HTML help system now uses HTML5 (wish of PR#18149).
  * ks.test() now provides exact p-values also with ties and MC
    p-values in the two-sample (Smirnov) case.  By Torsten Hothorn.
  * ks.test() gains a formula interface, with y ~ 1 for the
    one-sample (Kolmogorov) test and y ~ group for the two-sample
    (Smirnov) test.  Contributed by Torsten Hothorn.
  * The return value from ks.test() now has class c("ks.test",
    "htest") - packages using try() need to take care to use
    inherits() and not == on the class.
  * New functions psmirnov(), qsmirnov() and rsmirnov() in package
    stats implementing the asymptotic and exact distributions of the
    two-sample Smirnov statistic.
  * iconv() now allows sub = "c99" to use C99-style escapes for UTF-8
    inputs which cannot be converted to encoding to.
  * In a forward pipe |&gt; expression it is now possible to use a named
    argument with the placeholder _ in the rhs call to specify where
    the lhs is to be inserted.  The placeholder can only appear once
    on the rhs.
  * The included LAPACK sources have been updated to version 3.10.0,
    except for the four Fortran 77 routines which 3.10.0 has
    re-implemented in Fortran 90 (where the older versions have been
    retained as the R build process does not support Fortran 90).
  * path.expand() and most other uses of tilde expansion now warn if
    a path would be too long if expanded.  (An exception is
    file.exists(), which silently returns false.)
  * trunc(&lt;Date&gt;, *) now supports units = "months" or "years" for
    consistency with the POSIXt method, thanks to Dirk Eddelbuettel's
    proposal in PR#18099.
  * list2DF() now checks that its arguments are of the same length,
    rather than use recycling.
  * The HTML help system has several new features: LaTeX-like math
    can be typeset using either KaTeX or MathJax, usage and example
    code is highlighted using Prism, and for dynamic help the output
    of examples and demos can be shown within the browser if the
    knitr package is installed. These features can be disabled by
    setting the environment variable _R_HELP_ENABLE_ENHANCED_HTML_ to
    a false value.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 15
    and so packages that provide graphics devices should be
    reinstalled.
  * The grid package now allows the user to specify a "vector" of
    pattern fills.  The fill argument to gpar() accepts a list of
    gradients and/or patterns and the functions linearGradient(),
    radialGradient(), and pattern() have a new group argument.
    Points grobs (data symbols) can now also have a pattern fill.
    The grobCoords() function now returns a more informative and
    complex result.
  * The grid package has new functions for drawing isolated groups:
    grid.group(), grid.define(), and grid.use().  These functions add
    compositing operators and affine transformations to R's graphics
    capabilities.
    The grid package also has new functions for stroking and filling
    paths: grid.stroke(), grid.fill(), and grid.fillStroke().
    A new function as.path() allows the user to specify the fill rule
    for a path that is to be used for clipping, stroking, or filling;
    available options are "winding" and "evenodd".  A new function
    as.mask() allows the user to specify the type of a mask;
    available options are "alpha" and "luminance".
    These new features are only supported so far (at most) on the
    Cairo-based graphics devices and on the pdf() device.
  * dev.capabilities() reports on device support for the new
    features.
  * par() now warns about unnamed non-character arguments to prevent
    misuse such as {usr &lt;- par("usr"); par(usr)}.
  INSTALLATION:
  * Facilities for accessing ftp:// sites are no longer tested
    (except _pro tem_ for curlGetHeaders()) as modern browsers have
    removed support.
  * R can now be built with DEFS = -DSTRICT_R_HEADERS .
  PACKAGE INSTALLATION:
  * R CMD INSTALL no longer tangles vignettes. This completes an R
    CMD build change in R 3.0.0 and affects packages built before R
    3.0.2. Such packages should be re-made with R CMD build to have
    the tangled R code of vignettes shipped with the tarball.
  * USE_FC_LEN_T will become the default: this uses the correct
    prototypes for Fortran BLAS/LAPACK routines called from C/C++,
    and requires adjustment of most such calls - see 'Writing R
    Extensions' SS6.6.2.  (This has been supported since R 3.6.2.)
  * Package installation speed for packages installed with
    keep.source has been improved. This resolve the issue reported by
    Ofek Shilon in PR#18236.
  UTILITIES:
  * R CMD check can optionally report files/directories left behind
    in home, /tmp (even though TMPDIR is set) and other directories.
    See the "R Internals" manual for details.
  * R CMD check now reports byte-compilation errors during
    installation.  These are not usually fatal but may result in
    parts of the package not being byte-compiled.
  * _R_CHECK_DEPENDS_ONLY_ can be applied selectively to examples,
    tests and/or vignettes in R CMD check: see the "R Internals"
    manual.
  * _R_CHECK_SRC_MINUS_W_IMPLICIT_ now defaults to true: recent
    versions of Apple clang on macOS have made implicit function
    declarations in C into a compilation error.
  * R CMD check --as-cran makes use of the environment variable
    AUTORECONF.  See the "R Internals" manual SS8 for further details.
  * R CMD check --use-valgrind also uses valgrind when re-building
    vignettes as some non-Sweave vignettes unhelpfully comment out
    all their code when R CMD check runs vignettes.
  * Errors in re-building vignettes (unless there are LaTeX errors)
    are reported by R CMD check as ERROR rather than WARNING when
    running vignettes has been skipped (as it frequently is in CRAN
    checks and by --as-cran).
  * R CMD Rd2pdf gains a --quiet option that is used by R CMD build
    when building the PDF package manual.
  * R CMD Rd2pdf now always runs LaTeX in batch mode, consistent with
    Texinfo &gt;= 6.7. The --batch option is ignored.
  * R CMD build and R CMD check now include the Rd file name and line
    numbers in the error message of an \Sexpr evaluation failure.
  * For packages using the \doi Rd macro (now an install-time \Sexpr)
    but no other dynamic Rd content, R CMD build now produces a
    smaller tarball and is considerably faster - skipping temporary
    package installation.
  C-LEVEL FACILITIES:
  * The non-API header R_ext/R-ftp-http.h is no longer provided, as
    the entry points it covered are now all defunct.
  * A number of non-API declarations and macro definitions have been
    moved from the installed header Rinternals.h to the internal
    header Defn.h. Packages that only use entry points and
    definitions documented to be part of the API as specified in
    'Writing R Extensions' SS6 should not be affected.
  * The macro USE_RINTERNALS no longer has any effect when compiling
    package code.  Packages which also use R_NO_REMAP will need to
    ensure that the remapped names are used for calls to API
    functions that were formerly also made available as macros.
  * The deprecated legacy S-compatibility macros PROBLEM, MESSAGE,
    ERROR, WARN, WARNING, RECOVER, ... are no longer defined in
    R_exts/RS.h (included by R.h).  Replace these by calls to
    Rf_error and Rf_warning (defined in header R_ext/Error.h included
    by R.h).
    Header R_ext/RS.h no longer includes R_ext/Error.h.
  * Header R_ext/Constants.h (included by R.h) when included from C++
    now includes the C++ header cfloat rather than the C header
    float.h (now possible as C++11 is required).
  * The legacy S-compatibility macros DOUBLE_* in R_ext/Constants.h
    (included by R.h) are deprecated.
  * The deprecated S-compatibility macros SINGLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * R_Calloc, R_Free and R_Realloc are preferred to their unprefixed
    forms and error messages now use the prefix. These forms were
    introduced in R 3.4.0 and are available even when
    STRICT_R_HEADERS is defined.
  * rmultinom has been documented in 'Writing R Extensions' SS6 so is
    now part of the R API.
  * Similarly, Rtanpi, called from R level tanpi() is now part of the
    R API.
  * The long-deprecated, undocumented and non-API entry point call_R
    is no longer declared in R_ext/RS.h (included by R.h).
  * The header S.h which has been unsupported since Jan 2016 has been
    removed.  Use R.h instead.
  DEPRECATED AND DEFUNCT:
  * The (non-default and deprecated) method = "internal" for
    download.file() and url() no longer supports http:// nor ftp://
    URIs.  (It is used only for file:// URIs.)
    On Windows, download.file(method = "wininet") no longer supports
    ftp:// URIs.  (It is no longer the default method, which is
    "libcurl" and does.)
    On Windows, the deprecated method = "wininet" now gives a warning
    for http:// and https:// URIs for both download.file() and url().
    (It is no longer the default method.)
  * On Windows, the command-line option --max-mem-size and
    environment variable R_MAX_MEM_SIZE are defunct.  The memory
    allocation limit was important for 32-bit builds, but these are
    no longer supported.
  * default.stringsAsFactors() is now formally deprecated, where that
    was only mentioned on its regular help page, previously.  So it
    now gives a warning if called.
  * unix.time() is defunct now; it had been deprecated since R 3.4.0.
  BUG FIXES:
  * Setting digits = 0 in format(), print.default() (and hence
    typically print()) or options() is again invalid.  Its behaviour
    was platform-dependent, and it is unclear what "zero significant
    digits" should mean (PR#18098).
  * Messages from C code in the cairo section of package grDevices
    are now also offered for translation, thanks to Michael Chirico's
    PR#18123.
  * mean(x) with finite x now is finite also without "long.double"
    capability.
  * R CMD Rd2pdf no longer leaves an empty build directory behind
    when it aborts due to an already existing output file.  (Thanks
    to Sebastian Meyer's PR#18141.)
  * density(x, weights = w, na.rm = TRUE) when anyNA(x) is true, now
    removes weights "in parallel" to x, fixing PR#18151, reported by
    Matthias Gondan.  Additionally, it gets a subdensity option.
  * Conversion of \Sexpr[]{&lt;expR&gt;} to LaTeX or HTML no longer
    produces long blocks of empty lines when &lt;expR&gt; itself contains
    several lines all producing empty output.  Thanks to a report and
    patch by Ivan Krylov posted to R-devel.
  * R CMD build no longer fails if a package vignette uses child
    documents and inst/doc exists.  (Thanks to Sebastian Meyer's
    PR#18156.)
  * When an R documentation ('help' source) file man/foo.Rd in a
    package has \donttest{..} examples with a syntax error, it is now
    signalled as ERROR and with correct line numbers relating to the
  * -Ex.R file, thanks to Duncan Murdoch and Sebastian Meyer's
    reports and patch proposals in PR#17501.
  * Improved determination of the correct translation domain in
    non-base packages, addressing the combination of PR#18092 and
    PR#17998 (#c6) with reports and _augmented_ patch #2904 by
    Suharto Anggono.
    Note that "R-base" is no longer the default domain e.g., for
    top-level calls to gettext(); rather translation needs explicit
    domain = * specification in such cases.
  * identical(attrib.as.set=FALSE) now works correctly with data
    frames with default row names (Thanks to Charlie Gao's PR#18179).
  * txtProgressBar() now enforces a non-zero width for argument char,
    without which no progress can be visible.
  * dimnames(table(d)) is more consistent in the case where d is a
    list with a single component, thanks to Thomas Soeiro's report to
    R-devel.
    Further, table(d1, d2) now gives an error when d1 and d2 are data
    frames as suggested by Thomas in PR#18224.
  * Fix for drawing semi-transparent lines and fills on the native
    Windows graphics device (PR#18219 and PR#16694).  Thanks to Nick
    Ray for helpful diagnosis on Bugzilla.
  * The deparser now wraps sub-expressions such as if(A) ..  with
    parentheses when needed; thanks to Duncan Murdoch's PR#18232 and
    Lionel Henry's patches there.
  * remove.packages() no longer tries to uninstall Priority: base
    packages, thanks to a report and suggestions by Colin Fay in
    PR#18227.
  * win.metafile() now has xpinch and ypinch arguments so that the
    user can override Windows' (potentially wrong) guess at device
    dimensions.
  * x[i] and x[[i]] for non-integer i should now behave in all cases
    as always documented: the index used is equivalent to
    as.integer(i) unless that would overflow where trunc(i) is used
    instead; thanks to Suharto Anggono's report and patch proposals
    in PR#17977.
  * asOneSidedFormula() now associates the resulting formula with the
    global environment rather than the evaluation environment created
    for the call.
  * &lt;bibentry&gt;$name now matches the field name case-insensitively,
    consistent with bibentry() creation and the replacement method.
  * cbind() failed to detect some length mismatches with a mixture of
    time-series and non-time-series inputs.
  * The default LaTeX style file Sweave.sty used by the RweaveLatex
    driver no longer loads the obsolete ae package; thanks to a
    report by Thomas Soeiro in PR#18271.  Furthermore, it now skips
    \usepackage[T1]{fontenc} for engines other than pdfTeX (if
    detected) or if the new [nofontenc] option is used.
  * smooth.spline() now stores its logical cv argument more safely,
    fixing a rare bug when printing, and also stores n.
  * smooth.spline(x,y,*) now computes the cv.crit statistic
    correctly, also when is.unsorted(x), fixing PR#18294.
  * The data.frame method of rbind() now warns when binding
    not-wholly-recycling vectors, by analogy to the default method
    (for matrices).
  * setAs() finds the correct class for name to when multiple
    packages define a class with that name. Thanks to Gabor Csardi
    for the report.
  * Fix for detaching a package when two classes of the same name are
    present in method signatures for the same generic. Thanks to
    Gabor Csardi for the report.
  * match.arg("", c("", "a", "B")) gives a better error message, in
    part from PR#17959, thanks to Elin Waring.
  * R CMD Sweave --clean no longer removes pre-existing files or
    subdirectories (PR#18242).
  * The quartz() device no longer splits polylines into subpaths.
    That has caused narrowly-spaced lines with many points to always
    look solid even when dashed line type was used due to dash phase
    restarts.
  * Deparsing constructs such as quote(1 + `!`(2) + 3) works again as
    before R 3.5.0, thanks to the report and patch in PR#18284 by
    Suharto Anggono.
  * as.list(f) for a factor f now keeps names(f), fixing PR#18309.
  * qbeta(.001, .9, .009) and analogous qf() calls now return a
    correct value instead of NaN or wrongly 1, all with a warning;
    thanks to the report by Ludger Goeminne in PR#18302.
  * plot.lm() failed to produce the plot of residuals vs.  factor
    levels (i.e., which=5 when leverages are constant) for models
    with character predictors (PR#17840).
  * interaction.plot(..., xtick = TRUE) misplaced the x-axis line
    (PR#18305).
  * Not strictly fixing a bug, format()ing and print()ing of
    non-finite Date and POSIXt values NaN and +/-Inf no longer show
    as NA but the respective string, e.g., Inf, for consistency with
    numeric vector's behaviour, fulfilling the wish of PR#18308.
  * R CMD check no longer runs test scripts generated from
    corresponding .Rin files twice and now signals an ERROR if
    processing an .Rin script fails.
  * tools::Rd2txt() used for plain-text help pages now renders \hrefs
    (if tools::Rd2txt_options(showURLs = TRUE)) and \urls with
    percent-encoding and standards-compliant delimiting style (angle
    brackets and no URL: prefix).  \email is now rendered with a
    mailto: prefix.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1655985600">- CHANGES IN R 4.2.1:
  NEW FEATURES:
  * New function utils::findCRANmirror() to find out if a CRAN mirror
    has been selected, otherwise fallback to the main site.  This
    behaves in the same way as tools::CRAN_package_db() and is
    intended for packages wishing to access CRAN for purposes other
    than installing packages.
    The need for this was shown by a day when the main CRAN website
    was offline and a dozen or so packages which had its URL
    hardcoded failed their checks.
  INSTALLATION on a UNIX-ALIKE:
  * The libraries searched for by --with-blas (without a value) now
    include BLIS (after OpenBLAS but before ATLAS).  And on macOS,
    the Accelerate framework (after ATLAS).  (This is patterned after
    the AX_BLAS macro from the Autoconf Archive.)
  * The included LAPACK sources have been updated to 3.10.1.
  UTILITIES:
  * The (full path to) the command tidy to be used for HTML
    validation can be set by environment variable R_TIDYCMD.
  * Setting environment variable _R_CHECK_RD_VALIDATE_RD2HTML_ to a
    false value will override R CMD check --as-cran and turn off HTML
    validation.  This provides a way to circumvent a problematic
    tidy.
    The 2006 version that ships with macOS is always skipped.
  C-LEVEL FACILITIES:
  * The undocumented legacy declarations of Sint, Sfloat, SINT_MAX
    and SINT_MIN in header R.h are deprecated.
  BUG FIXES:
  * fisher.test(d) no longer segfaults for "large" d; fixing PR#18336
    by preventing/detecting an integer overflow reliably.
  * tar(., files=*) now produces correctly the warning about invalid
    uid or gid of files, fixing PR#18344, reported by Martin Morgan.
  * tk_choose.files() with multi = FALSE misbehaved on paths
    containing spaces (PR#18334) (regression introduced in R 4.0.0).
  * sort(x, partial = ind, *) now works correctly notably for the
    non-default na.last = FALSE or TRUE, fixing PR#18335 reported by
    James Edwards.
  * Environment variable _R_CHECK_XREFS_REPOSITORIES_ is only used
    for checking .Rd cross-references in R CMD check (as documented)
    and not for other uses looking for a CRAN mirror.
  * The search for a CRAN mirror when checking packages now uses
    getOption("repos") if that specifies a CRAN mirror, even when it
    does not also specify all three Bioconductor repositories (as was
    previously required).
  * The HTML code generated by tools::Rd2HTML() has been improved to
    pass tidy 5.8.0.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1667217600">- CHANGES IN R 4.2.2:
  NEW FEATURES:
  * tools::Rdiff(useDiff = TRUE) checks for the presence of an
    external diff command and switches to useDiff = FALSE if none is
    found.  This allows R CMD Rdiff to always work.
  * On Windows, environment variable R_LIBCURL_SSL_REVOKE_BEST_EFFORT
    can be used to switch to only 'best-effort' SSL certificate
    revocation checks with the default "libcurl" download method.
    This reduces security, but may be needed for downloads to work
    with MITM proxies (PR#18379).
  * (macOS) The run-time check for libraries from XQuartz for X11 and
    Tcl/Tk no longer uses otool from the Apple Developer Tools
    (PR#18400).
  * The LaTeX style for producing the PDF manuals, Rd.sty, now loads
    the standard amsmath, amsfonts and amssymb packages for greater
    coverage of math commands in the Rd \eqn and \deqn macros.  The
    \mathscr LaTeX command is also provided (via the mathrsfs
    package, if available, or the amsfonts bundle otherwise),
    fulfilling the wish of PR#18398.
  * (Windows) The default format of readClipboard() and
    writeClipboard() has been changed to 13 (CF_UNICODETEXT).
  INSTALLATION on a UNIX-ALIKE:
  * The PDF manuals (if built) can be compacted by the new target
    make compact-pdf (at the top level or in directory doc/manual).
  * There is now configure support for LLVM clang 15 on Linux, which
    defaults to position-independent (PIE) executables whereas
    gfortran does not.
  * Many small changes to ease compilation (and suppress warnings)
    with LLVM clang 15.
  BUG FIXES:
  * Rscript -e would fail if stdin were closed (Reported by Henrik
    Bengtsson.)
  * qt(*, log.p=TRUE) in outer tails no longer produces NaN in its
    final steps, thus fixing PR#18360.
  * tools::Rd2latex() now escapes hashes and ampersands when writing
    URLs, fixing LaTeX errors with such URLs in \tabular.
  * When isGeneric(f, fdef=*) is used with mismatching names, the
    warning is better understandable; reported (with fix) in PR#18370
    by Gabe Becker.
  * poly(x, n) now works again (and is now documented) when x is a
    "Date" or "POSIXct" object, or of another class while fulfilling
    mode(x) == "numeric".  This also enables poly(x, *, raw=TRUE) for
    such variables.  Reported by Michael Chirico to R-devel.
  * write.table(), write.csv() and write.csv2() restore their
    numerical precision (internal equivalent of digits = 15) after an
    interrupt (PR#18384).
  * One can now read also byte FF from a clipboard connection
    (PR#18385).
  * source("") and source(character()) now give more helpful error
    messages.
  * R CMD check --as-cran set _R_CHECK_TIMINGS_ too late to have the
    intended effect.
  * as.POSIXlt(x) now also works with very large dates x, fixing
    PR#18401 reported by Hannes M"uhleisen.
  * Files can now be extracted even from very large zip archives
    (PR#18390, thanks to Martin Jakt).
  * Non-finite objects of class "POSIXlt" are now correctly coerced
    to classes "Date" and "POSIXct"; following up on the extension to
    format() them correctly.
  * Added methods for is.finite(), is.infinite() and is.nan() for
    "POSIXlt" date-time objects.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1678881600">- CHANGES IN R 4.2.3:
  C-LEVEL FACILITIES:
  * The definition of DL_FUNC in R_ext/Rdynload.h has been changed to
    be fully C-compliant.  This means that functions loaded _via_ for
    example R_GetCCallable need to be cast to an appropriate type if
    they have any arguments.
  * .Machine has a new element sizeof.time_t to identify old systems
    with a 32-bit type and hence a limited range of date-times (and
    limited support for dates millions of years from present).
  PACKAGE INSTALLATION:
  * (Windows) The default C++ standard had accidentally been left at
    C++11 when it was changed to C++14 on Unix.
  BUG FIXES:
  * As "POSIXlt" objects may be "partially filled" and their list
    components meant to be recycled, length() now is the length of
    the longest component.
  * as.POSIXlt.Date() could underflow for dates in the far past (more
    than half a million years BCE).
  * as.Date.POSIXlt(x) would return "1970-01-01" instead of NA in R
    4.2.2, e.g., for
    x &lt;- as.POSIXlt(c("2019-01-30","2001-1-1"))
    x$mon &lt;- c(0L, NA); as.Date(x)
  * R CMD check failed to apply enabled _R_CHECK_SUGGESTS_ONLY_ to
    examples and vignettes (regression in R 4.2.0).
  * R CMD check did not re-build vignettes in separate processes by
    default (regression in R 4.2.0).
  * Running examples from HTML documentation now restores previous
    knitr settings and options (PR#18420).
  * Quartz: fonts are now located using Core Graphics API instead of
    deprecated ATS which is no longer supported in the macOS 13 SDK
    (PR#18426).  This also addresses an issue where the currently
    used font in the Quartz device context was not correctly
    retained.
  * (Windows) Math symbols in text drawing functions are again
    rendered correctly (PR#18440).  This fixes a regression in R
    4.2.1 caused by a fix in PR#18382 which uncovered an issue in
    GraphApp due to which the symbol charset was not used with TT
    Symbol font face.
  * (Windows) Installing a package with a src/Makefile.{win,ucrt}
    file includes ~/.R/Makevars.win64 in the search for user
    makevars, as documented in "R Installation and Administration"
    and done for packages with a src/Makevars.{win,ucrt} file.
  * format(&lt;POSIXlt_w/_unbalanced_sec&gt;, "....%OS&lt;n&gt;") with n &gt; 0 no
    longer accidentally uses the unbalanced seconds, thanks to
    Suharto Anggono's report (including patch) in PR#18448.
  * solve.default(a, b) works around issues with some versions of
    LAPACK when a contains NA or NaN values.
  * When UseMethod() cannot dispatch, it no longer segfaults
    producing the error message in case of a long class(), thanks to
    Joris Vankerschaver's report (including patch) in PR#18447.
  * When example(foo, ..) produces graphics on an interactive device
    it needs to open itself, it now leaves devAskNewPage() unchanged
    even when it was FALSE, thus fixing a 14 years old '&lt;FIXME&gt;'.
  * packageDescription() again catches errors from encoding
    conversions. This also fixes broken packageVersion() in C locale
    on systems where iconv does not support transliteration.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1681128000">- add patch to build with libcurl &gt;= 8</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1682078400">- CHANGES IN R 4.3.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Calling &amp;&amp; or || with LHS or (if evaluated) RHS of length greater
    than one is now always an error, with a report of the form
    'length = 4' in coercion to 'logical(1)'
    Environment variable _R_CHECK_LENGTH_1_LOGIC2_ no longer has any
    effect.
  NEW FEATURES:
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.10.1.  (This caused some platform-dependent
    changes to package check output.)  And then to the sources from
    LAPACK version 3.11.0 (with changes only to double complex
    subroutines).
  * The included LAPACK sources have been updated to include the four
    Fortran 90 routines rather than their Fortran 77 predecessors.
    This may give some different signs in SVDs or
    eigendecompositions..  (This completes the transition to LAPACK
    3.10.x begun in R 4.2.0.)
  * The LAPACK sources have been updated to version 3.11.0.  (No new
    subroutines have been added, so this almost entirely bug fixes:
    Those fixes do affect some computations with NaNs, including R's
    NA.)
  * The parser now signals _classed_ errors, notably in case of the
    pipe operator |&gt;.  The error object and message now give line and
    column numbers, mostly as proposed and provided by Duncan Murdoch
    in PR#18328.
  * toeplitz() is now generalized for asymmetric cases, with a
    toeplitz2() variant.
  * xy.coords() and xyz.coords() and consequently, e.g., plot(x,y,
    log = "y") now signal a _classed_ warning about negative values
    of y (where log(.) is NA).  Such a warning can be specifically
    suppressed or caught otherwise.
  * Regular expression functions now check more thoroughly whether
    their inputs are valid strings (in their encoding, e.g. in
    UTF-8).
  * The performance of grep(), sub(), gsub() and strsplit() has been
    improved, particularly with perl = TRUE and fixed = TRUE.  Use of
    useBytes = TRUE for performance reasons should no longer be
    needed and is discouraged: it may lead to incorrect results.
  * apropos() gains an argument dot_internals which is used by the
    completion (help(rcompgen)) engine to also see base internals
    such as .POSIXct().
  * Support in tools::Rdiff() for comparing uncompressed PDF files is
    further reduced - see its help page.
  * qqplot(x, y, ...) gains conf.level and conf.args arguments for
    computing and plotting a confidence band for the treatment
    function transforming the distribution of x into the distribution
    of y (Switzer, 1976, _Biometrika_). Contributed by Torsten
    Hothorn.
  * Performance of package_dependencies() has been improved for cases
    when the number of dependencies is large.
  * Strings newly created by gsub(), sub() and strsplit(), when any
    of the inputs is marked as "bytes", are also marked as "bytes".
    This reduces the risk of creating invalid strings and accidental
    substitution of bytes deemed invalid.
  * Support for readLines(encoding = "bytes") has been added to allow
    processing special text files byte-by-byte, without creating
    invalid strings.
  * iconv(from = "") now takes into account any declared encoding of
    the input elements and uses it in preference to the native
    encoding.  This reduces the risk of accidental creation of
    invalid strings, particularly when different elements of the
    input have different encoding (including "bytes").
  * Package repositories in getOption("repos") are now initialized
    from the repositories file when utils is loaded (if not already
    set, e.g., in .Rprofile).  (From a report and patch proposal by
    Gabriel Becker in PR#18405.)
  * compactPDF() gets a verbose option.
  * type.convert() and hence read.table() get new option tryLogical =
    TRUE with back compatible default.  When set to false, converts
    "F" or "T" columns to character.
  * Added new unit prefixes "R" and "Q" for abbreviating
    (unrealistically large) sizes beyond 10^{27} in standard = "SI",
    thanks to Henrik Bengtsson's PR#18435.
  * as.data.frame()'s default method now also works fine with atomic
    objects inheriting from classes such as "roman", "octmode" and
    "hexmode", such fulfilling the wish of PR#18421, by Benjamin
    Feakins.
  * The as.data.frame.vector() utility now errors for wrong-length
    row.names.  It warned for almost six years, with "Will be an
    error!".
  * sessionInfo() now also contains La_version() and reports codepage
    and timezone when relevant, in both print() and toLatex() methods
    which also get new option tzone for displaying timezone
    information when locale = FALSE.
  * New function R_compiled_by() reports the C and Fortran compilers
    used to build R, if known.
  * predict(&lt;lm&gt;, newdata = *) no longer unnecessarily creates an
    offset of all 0s.
  * solve() for complex inputs now uses argument tol and by default
    checks for 'computational singularity' (as it long has done for
    numeric inputs).
  * predict(&lt;rank-deficient lm&gt;, newdata=*) now obeys a new argument
    rankdeficient, with new default "warnif", warning only if there
    are non-estimable cases in newdata.  Other options include
    rankdeficient = "NA", predicting NA for non-estimable newdata
    cases.  This addresses PR#15072 by Russ Lenth and is based on his
    original proposal and discussions in PR#16158 also by David Firth
    and Elin Waring.  Still somewhat experimental.
  * Rgui console implementation now works better with the NVDA screen
    reader when the full blinking cursor is selected.  The underlying
    improvements in cursor handling may help also other screen
    readers on Windows.
  * The drop-field control in GraphApp can now be left with the TAB
    key and all controls can be navigated in the reverse order using
    the Shift+TAB key, improving accessibility of the Rgui
    configuration editor.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now fully accurate
    (instead of to "only" minimally five digits).
  * demo(error.catching) now also shows off withWarnings() and
    tryCatchWEMs().
  * As an experimental feature the placeholder _ can now also be used
    in the rhs of a forward pipe |&gt; expression as the first argument
    in an extraction call, such as _$coef. More generally, it can be
    used as the head of a chain of extractions, such as _$coef[[2]].
  * Spaces in the environment variable used to choose the R session's
    temporary directory (TMPDIR, TMP and TEMP are tried in turn) are
    now fatal.  (On Windows the 'short path' version of the path is
    tried and used if that does not contain a space.)
  * all.equal.numeric() gets a new optional switch giveErr to return
    the numeric error as attribute.  Relatedly,
    stopifnot(all.equal&lt;some&gt;(a, b, ..)) is as "smart" now, as
    stopifnot(all.equal(....)) has been already, thus allowing
    customized all.equal&lt;Some&gt;() wrappers.
  * R on Windows is now able to work with path names longer than 260
    characters when these are enabled in the system (requires at
    least Windows 10 version 1607).  Packages should be updated to
    work with long paths as well, instead of assuming PATH_MAX to be
    the maximum length.  Custom front-ends and applications embedding
    R need to update their manifests if they wish to allow this
    feature.  See
    &lt;https://blog.r-project.org/2023/03/07/path-length-limit-on-windows&gt;
    for more information.
  * 'Object not found' and 'Missing argument' errors now give a more
    accurate error context. Patch provided by Lionel Henry in
    PR#18241.
  * The @ operator is now an S3 generic. Based on contributions by
    Tomasz Kalinowski in PR#18482.
  * New generic chooseOpsMethod() provides a mechanism for objects to
    resolve cases where two suitable methods are found for an Ops
    Group Generic. This supports experimenting with alternative
    object systems. Based on contributions by Tomasz Kalinowski in
    PR#18484.
  * inherits(x, what) now accepts values other than a simple
    character vector for argument what. A new generic, nameOfClass(),
    is called to resolve the class name from what. This supports
    experimenting with alternative object systems. Based on
    contributions by Tomasz Kalinowski in PR#18485.
  * Detection of BLAS/LAPACK in use (sessionInfo()) with FlexiBLAS
    now reports the current backend.
  * The "data.frame" method for subset() now warns about extraneous
    arguments, typically catching the use of = instead of == in the
    subset expression.
  * Calling a:b when numeric a or b is longer than one may now be
    made into an error by setting environment variable
    _R_CHECK_LENGTH_COLON_ to a true value, along the proposal in
    PR#18419 by Henrik Bengtsson.
  * density(x, weights = *) now warns if automatic bandwidth
    selection happens without using weights; new optional warnWbw may
    suppress the warning.  Prompted by Christoph Dalitz' PR#18490 and
    its discussants.
  * rm(list = *) is faster and more readable thanks to Kevin Ushey's
    PR#18492.
  * The plot.lm() function no longer produces a normal Q-Q plot for
    GLMs. Instead it plots a half-normal Q-Q plot of the absolute
    value of the standardized deviance residuals.
  * The print() method for class "summary.glm" no longer shows
    summary statistics for the deviance residuals by default.  Its
    optional argument show.residuals can be used to show them if
    required.
  * The tapply() function now accepts a data frame as its X argument,
    and allows INDEX to be a formula in that case. by.data.frame()
    similarly allows INDICES to be a formula.
  * The performance of df[j] &lt;- value (including for missing j) and
    write.table(df) has been improved for data frames df with a large
    number of columns.  (Thanks to Gabriel Becker's PR#18500,
    PR#18503 and discussants, prompted by a report from Toby Dylan
    Hocking on the R-devel mailing list.)
  * The matrix multiply operator %*% is now an S3 generic, belonging
    to new group generic matrixOps.  From Tomasz Kalinowski's
    contribution in PR#18483.
  * New function array2DF() to convert arrays to data frames,
    particularly useful for the list arrays created by tapply().
  DATES and TIMES:
  * On platforms where (non-UTC) datetimes before 1902 (or before
    1900 as with system functions on recent macOS) are guessed by
    extrapolating time zones from 1902-2037, there is a warning at
    the first use of extrapolation in a session.  (As all time zones
    post 2037 are extrapolation, we do not warn on those.)
  * (Platforms using --with-internal-tzone, including Windows and by
    default macOS). How years are printed in dates or date-times can
    be controlled by environment variable R_PAD_YEARS_BY_ZERO.  The
    default remains to pad to 4 digits by zeroes, but setting value
    no gives no padding (as used by default by glibc).
  * strftime() tries harder to determine the offset for the "%z"
    format, and succeeds on the mainstream R platforms.
  * strftime() has a limit of 2048 bytes on the string produced -
    attempting to exceed this is an error.  (Previously it silently
    truncated at 255 bytes.)
  * sessionInfo() records (and by default prints) the system time
    zone as part of the locale information.  Also, the source
    (system/internal) of the date-time conversion and printing
    functions.
  * Objects of class "POSIXlt" created in this version of R always
    have 11 components: component zone is always set, and component
    gmtoff is set for times in UTC and usually set on the (almost
    all) platforms which have C-level support, otherwise is NA.
  * There are comprehensive validity checks on the structure of
    objects of class "POSIXlt" when converting (including formatting
    and printing).  (This avoids mis-conversions of hand-crafted
    objects.)
  * There is some support for using the native date-time routines on
    macOS: this is only viable on recent versions (e.g. 12.6 and 13)
    and does get wrong some historical changes (before 1900, during
    WWII).  Use of --with-internal-tzone remains the default.
  * as.POSIXct(&lt;numeric&gt;) and as.POSIXlt(.) (without specifying
    origin) now work.  So does as.Date(&lt;numeric&gt;).
  * as.Date.POSIXct(., tz) now treats several tz values, notably
    "GMT" as equivalent to "UTC", proposed and improved by Michael
    Chirico and Joshua Ulrich in PR#17674.
  * Experimental balancePOSIXlt() utility allows using "ragged" and
    or out-of-range "POSIXlt" objects more correctly, e.g., in
    subsetting and subassignments.  Such objects are now documented.
    More experimentally, a "POSIXlt" object may have an attribute
    "balanced" indicating if it is known to be filled or fully
    balanced.
  * Functions axis.Date() and axis.POSIXct() are rewritten to gain
    better default tick locations and better default formats by using
    prettyDate(). Thanks to Swetlana Herbrandt.
  * The mapping of Windows' names for time zones to IANA's 'Olson'
    names has been updated.  When ICU is available (it is by
    default), it is used to get a mapping for the current region set
    in Windows.  This can be overridden by setting environment
    variable TZ to the desired Olson name - see OlsonNames() for
    those currently available.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 16
    and so packages that provide graphics devices should be
    reinstalled.
  * The grDevices and grid packages have new functions for rendering
    typeset glyphs, primarily: grDevices::glyphInfo() and
    grid::grid.glyph().
    Rendering of typeset glyphs is only supported so far on the
    Cairo-based graphics devices and on the pdf() and quartz()
    devices.
  * The defined behaviour for "clear" and "source" compositing
    operators (via grid::grid.group()) has been changed (to align
    better with simple interpretation of original Porter-Duff
    definitions).
  * Support for gradients, patterns, clipping paths, masks, groups,
    compositing operators, and affine transformations has been added
    to the quartz() device.
  INSTALLATION on a UNIX-ALIKE:
  * A system installation of generic LAPACK 3.10.0 or later will be
    preferred to the version in the R sources.
    configure option --with-lapack=no (equivalently --without-lapack)
    forces compilation of the internal LAPACK sources.
    If --with-lapack is not specified, a system liblapack is looked
    for and used if it reports version 3.10.0 or later and does not
    contain BLAS routines.
    Packages using LAPACK will need to be reinstalled if this changes
    to using an external library.
  * On aarch64 Linux platforms using GCC, configure now defaults to
  - fPIC (instead of -fpic), as desired in PR#18326.
  * configure now checks conversion of datetimes between POSIXlt and
    POSIXct around year 2020.  Failure (which has been seen on
    platforms missing tzdata) is fatal.
  * If configure option --with-valgrind-instrumentation is given
    value 1 or 2, option --with-system-valgrind-headers is now the
    default and ignored (with a warning).  It is highly recommended
    that the system headers are installed alongside valgrind: they
    are part of its packaging on some Linux distributions and
    packaged separately (e.g. in the valgrind-devel RPM) on others.
    configure will give a warning if they are not found.
    The system headers will be required in a future release of R to
    build with valgrind instrumentation.
  * libcurl 8.x is now accepted by configure: despite a change in
    major version number it changes neither API nor ABI.
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools43, an update of the Rtools42 toolchain.  It is
    based on gcc 12 and newer versions of MinGW-W64, binutils and
    libraries.  At this time R-devel can still be built using
    Rtools42 without changes, but when R-devel is installed via the
    installer, it will by default look for Rtools43.
  * Old make targets rsync-extsoft and 32-bit ones that are no longer
    needed have been removed.
  * Default builds (including for packages) no longer select C99.
    Thus the C standard used is the default for the compiler, which
    for the toolchain in Rtools43 is C17.  (This is consistent with
    Unix builds.)
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++17 where
    available (which it is on all currently checked platforms): if
    not C++14 or C++11 is used if available otherwise C++ is not
    supported.
  * USE_FC_LEN_T is the default: this uses the correct
    (compiler-dependent) prototypes for Fortran BLAS/LAPACK routines
    called from C/C++, and requires adjustment of many such calls -
    see 'Writing R Extensions' SS6.6.1.
  * There is initial support for C++23 as several compilers are now
    supporting -std=c++23 or -std=c++2b or similar.  As for C++20,
    there no additional configure checks for C++23 features beyond a
    check that the compiler reports a __cplusplus value greater than
    that in the C++20 standard.  C++ feature tests should be used.
  * There is support for a package to indicate the version of the C
    standard which should be used to compile it, and for the
    installing user to specify this.  In most cases R defaults to the
    C compiler's default standard which is C17 (a `bug-fix' of C11) -
    earlier versions of R or compilers may have defaulted to C99.
    Current options are:
    USE_C17 Use a standard that is at most C17.  The intention is to
    allow legacy packages to still be installed when later C
    standards become the default, including packages using new
    keywords as identifiers or with K&amp;R-style function
    declarations.  This will use C17 if available, falling back
    to C11.
    USE_C90 Use the C90 (aka C89) standard.  (As that standard did
    not require compilers to identify that version, all we can
    verify is that the compiler does not claim to be using a
    later standard.  It may accept C99 features - for example
    clang accepts // to make comments.)
    USE_C99 Use the C99 standard. This should be rarely needed - it
    avoids the few new features of C11/C17 which can be useful if
    a package assumes them if C17 is specified and they are not
    implemented.
    USE_C23 Use C23 (or in future, later).  Compiler/library support
    for C23 is still being implemented, but LLVM clang from
    15.0.0 and the upcoming GCC 13 have quite extensive support.
    These can be specified as part of the SystemRequirements field in
    the package's DESCRIPTION file or _via_ options --use-C17 and so
    on of R CMD INSTALL and R CMD SHLIB.
    For further details see "Writing R Extensions" SS1.2.5.
  * (Windows) A src/Makefile.ucrt or src/Makefile.win file is now
    included after R_HOME/etcR_ARCH/Makeconf and so no longer needs
    to include that file itself.  Installation of a package with such
    a file now uses a site Makevars file in the same way as a package
    with a src/Makevars.win file would.
  * configure is now passed crucial variables such as CC and CFLAGS
    in its environment, as many packages were not setting them (as
    documented in 'Writing R Extensions' SS1.2).
    This has most effect where configure is used to compile parts of
    the package - most often by cmake or libtool which obfuscate the
    actual compile commands used.
    Also used for configure.win and configure.ucrt on Windows.
  FORTRAN FLAGS:
  * The flag -fno-optimize-sibling-calls is no longer forced for
    gfortran 7 and later.  It should no longer be needed now using
    'hidden' character-length arguments when calling BLAS/LAPACK
    routines from C/C++ is the default even for packages.  (Unless
    perhaps packages call Fortran code from C/C++ without using R's
    headers and without allowing for these arguments.)
  C-LEVEL FACILITIES:
  * The deprecated S-compatibility macros DOUBLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * The deprecated legacy typedefs of Sint and Sfloat in header R.h
    are no longer defined, and that header no longer includes header
    limits.h from C nor climits from C++.
  * New macro CAD5R() is provided in Rinternals.h and used in a few
    places in the R sources.
  * ALTREP now supports VECSXP vectors. Contributed by Gabor Csardi
    in PR#17620.
  * The Rcomplex definition (in header R_ext/Complex.h) has been
    extended to prevent possible mis-compilation when interfacing
    with Fortran (PR#18430).  The new definition causes compiler
    warnings with static initializers such as {1, 2}, which can be
    changed to {.r=1, .i=2}.
    Using the new definition from C++ depends on compiler extensions
    supporting C features that have not been incorporated into the
    C++ standards but are available in g++ and clang++: this may
    result in C++ compiler warnings but these have been worked around
    for recent versions of common compilers (GCC, Apple/LLVM clang,
    Intel).
    It is intended to change the inclusion of header R_ext/Complex.h
    by other R headers, so C/C++ code files which make use of
    Rcomplex should include that header explicitly.
  UTILITIES:
  * R CMD check does more checking of package .Rd files, warning
    about invalid email addresses and (some) invalid URIs and noting
    empty \item labels in description lists.
  * R CMD check now also reports problems when reading package news
    in md (file NEWS.md) and (optionally) plain text (file NEWS)
    formats.
  * _R_CHECK_TIMINGS_ defaults to a value from the environment even
    for R CMD check --as-cran; this allows for exceptionally fast or
    slow platforms.
    It now applies to checking PDF and HTML versions of the manuals,
    and 'checking CRAN incoming feasibility'.
  * R CMD check can optionally (but included in --as-cran) check
    whether HTML math rendering _via_ KaTeX works for the package .Rd
    files.
  * Non-interactive debugger invocations can be trapped by setting
    the environment variable _R_CHECK_BROWSER_NONINTERACTIVE_ to a
    true value.  This is enabled by R CMD check --as-cran to detect
    the use of leftover browser() statements in the package.
  * The use of sprintf and vsprintf from C/C++ has been deprecated in
    macOS 13 and is a known security risk.  R CMD check now reports
    (on all platforms) if their use is found in compiled code:
    replace by snprintf or vsnprintf respectively. [*NB:* whether
    such calls get compiled into the package is platform-dependent.]
  * Where recorded at installation, R CMD check reports the C and
    Fortran compilers used to build R.
    It reports the OS in use (if known, as given by osVersion) as
    well as that R was built for.
    It notes if a C++ standard was specified which is older than the
    current default: many packages have used C++11 to mean 'not
    C++98' - as C++11 is the minimum supported since R 4.0.0, that
    specification can probably be removed.
  * R CMD INSTALL reports the compilers (and on macOS, the SDK) used,
    and this is copied to the output of R CMD check.
    Where a C++ standard is specified, it is reported.
  * R CMD check's 'checking compilation flags in Makevars' has been
    relaxed to accept the use of flags such as -std=f2008 in
    PKG_FFLAGS.
  * tools::buildVignettes() has a new argument skip, which is used by
    R CMD check to skip (and note) vignettes with unavailable
    \VignetteDepends (PR#18318).
  * New generic .AtNames() added to enable class-specific completions
    after @. The formerly internal function findMatches() is now
    exported, mainly for use in methods for .DollarNames() and
    .AtNames().
  DEPRECATED AND DEFUNCT:
  * default.stringsAsFactors() is defunct.
  * Calling as.data.frame.&lt;class&gt;() directly (for 12 atomic classes)
    is going to be formally deprecated, currently activated by
    setting the environment variable
    _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ to non-empty, which also
    happens in R CMD check --as-cran.
  BUG FIXES:
  * Hashed environments with sizes less than 5 can now grow.
    (Reported to R-devel by Duncan Garmonsway.)
  * as.character(&lt;Rd&gt;, deparse = TRUE) failed to re-escape curly
    braces in LaTeX-like text.  (Reported by Hadley Wickham in
    PR#18324.)
  * library() now passes its lib.loc argument when requiring Depends
    packages; reported (with fix) in PR#18331 by Mikael Jagan.
  * R CMD Stangle: improved message about 'Output' files.
  * head(x, n) and tail(x, n) now signal an error if n is not
    numeric, instead of incidentally "working" sometimes returning
    all of x.  Reported and discussed by Colin Fay, in PR#18357.
  * The "lm" method for summary() now gives the correct F-statistic
    when the model contains an offset.  Reported in PR#18008.
  * C() and `contrasts&lt;-`() now preserve factor level names when
    given a function object (as opposed a function name which did
    preserve names). Reported in PR#17616.
  * c(a = 1, 2)[[]] no longer matches 2 but rather signals a
    _classed_ error.  Reported and analysed by Davis Vaughan in
    PR#18367, a duplicate of PR#18004, by Jan Meis et al.  For
    consistency, NULL[[]] is also erroneous now.  x[[]] &lt;- v gives an
    error of the same class "MissingSubscriptError".
  * The relist() function of utils now supports NULL elements in the
    skeleton (PR#15854).
  * ordered(levels = *) (missing x) now works analogously to factor(,
    ordered=TRUE); reported (with fix) by Achim Zeileis in PR#18389.
  * User-defined Rd macro definitions can now span multiple lines,
    thanks to a patch from Duncan Murdoch. Previously, the Rd parser
    silently ignored everything after the first line.
  * Plain-text help (tools::Rd2txt()) now preserves an initial blank
    line for text following description list items.
  * tools::Rd2HTML() and tools::Rd2latex() no longer split \arguments
    and \value lists at Rd comments.
  * tools::Rd2latex() now correctly handles optional text outside
    \items of argument lists as well as bracketed text at the
    beginning of sections, e.g., \value{[NULL]}.
  * as.character(&lt;POSIXt&gt;) now behaves more in line with the methods
    for atomic vectors such as numbers, and is no longer influenced
    by options().  Ditto for as.character(&lt;Date&gt;).  The
    as.character() method gets arguments digits and OutDec with
    defaults _not_ depending on options().  Use of as.character(*,
    format = .) now warns.
  * Similarly, the as.character.hexmode() and *.octmode() methods
    also behave as good citizen methods and back compatibility option
    keepStr = TRUE.
  * The as.POSIXlt(&lt;POSIXlt&gt;) and as.POSIXct(&lt;POSIXct&gt;) default
    methods now do obey their tz argument, also in this case.
  * as.POSIXlt(&lt;Date&gt;) now does apply a tz (time zone) argument, as
    does as.POSIXct(); partly suggested by Roland Fuss on the R-devel
    mailing list.
  * as.Date.POSIXlt(x) now also works when the list components are of
    unequal length, aka "partially filled" or "ragged".
  * expand.model.frame() looked up variables in the wrong environment
    when applied to models fitted without data.  Reported in
    PR#18414.
  * time() now (also) uses the ts.eps = getOption("ts.eps") argument
    and thus by default rounds values very close to the start (or
    end) of a year.  Based on a proposal by Andre"i V. Kostyrka on
    R-help.
  * Printing of a factanal() result with just one factor and sort =
    TRUE now works regularly, fixing PR#17863 by Timothy Bates,
    thanks to the 'R Contributors' working group.
  * Printing 0-length objects of class "factor", "roman", "hexmode",
    "octmode", "person", "bibentry", or "citation" now prints
    something better, one of which fixes PR#18422, reported by
    Benjamin Feakins.
  * Sys.timezone() queries timedatectl only if systemd is loaded;
    addressing a report by Jan Gorecki in PR#17421.
  * The formula method of cor.test() had scoping problems when
    environment(formula) was not the calling environment; reported
    with a patch proposal by Mao Kobayashi in PR#18439.
  * attach() of an environment with active bindings now preserves the
    active bindings.  Reported by Kevin Ushey in PR#18425.
  * BLAS detection now works also with system-provided libraries not
    available as regular files.  This fixes detection of the
    Accelerate framework on macOS since Big Sur.  Reported by David
    Novgorodsky.
  * download.file() gives a helpful error message in case of an
    invalid download.file.method option, thanks to Colin Fay's report
    in PR#18455.
  * Sporadic crashes of Rterm when using completion have been fixed.
  * Rprof() is now more reliable.  A livelock in thread
    initialization with too short sampling interval has been fixed on
    macOS.  A deadlock in using the C runtime has been fixed on
    Windows.  A potential deadlock has been prevented on Unix.
  * Cursor placement in Rgui now works even after a fixed-width font
    is selected.
  * Mandatory options (options()) are now set on startup so that
    saving and restoring them always works (PR#18372).
  * Package installation, R CMD INSTALL or install.packages(*), now
    parses each of the &lt;pkg&gt;/R/*.R files individually instead of
    first concatenating and then parse()ing the large resulting file.
    This allows parser or syntax errors to be diagnosed with correct
    file names and line numbers, thanks to Simon Dedman's report and
    Bill Dunlap's patch in PR#17859.
    This _does_ require syntactically self contained R source files
    now, fixing another inadvertent bug.
  * predict.lm(&lt;model with offset&gt;) now finds the offset in the
    correct environment, thanks to Andr'e Gillibert's report and patch
    in PR#18456.
  * getInitial(&lt;formula&gt;) now finds the selfStart model in the
    correct environment.  (Reported by Ivan Krylov in PR#18368.)
  * Fix for possible segfault when using recently-added graphics
    features, such as gradients, clipping paths, masks, and groups
    with pdf(file=NULL).
  * class(m) &lt;- class(m) no longer changes a matrix m by adding a
    class _attribute_.
  * packageDate(pkg) now only warns once if there is no pkg.
  * When ts() creates a multivariate time series, "mts", it also
    inherits from "array" now, and is.mts() is documented _and_
    stricter.
  * Rd2txt() now preserves line breaks of \verb Rd content and from
    duplicated \cr.  The former also fixes the rendering of verbatim
    output from Rd \Sexpr in plain-text help.
  * uniroot(f, interval) should no longer wrongly converge _outside_
    the interval in some cases where abs(f(x)) == Inf for an x at the
    interval boundary, thanks to posts by Ben Bolker and Serguei
    Sokol on R-devel.
  * Vectorized alpha handling in palette functions such as in gray(),
    rainbow(), or hcl.colors() works correctly now, thanks to Achim
    Zeileis' report and patch in PR#18476.
  * Formatting and print()ing of bibentry objects has dropped the
    deprecated citation.bibtex.max argument, such that the bibtex
    argument's default for print.bibentry() depends directly on the
    citation.bibtex.max option, whereas in format.bibentry() the
    option no longer applies.
  * Attempting to use a character string naming a foreign function
    entry point in a foreign function call in a package will now
    signal an error if the packages has called R_forceSymbols to
    specify that symbols must be used.
  * An error in table() could permanently set options(warn=2)
    promoting all subsequent warnings to errors.
  * The sigma() function gave misleading results for binary GLMs.  A
    new method for objects of class "glm" returns the square root of
    the estimate of the dispersion parameter using the same
    calculation as summary.glm().
  * bs() and ns() in the (typical) case of automatic knot
    construction, when some of the supposedly inner knots coincide
    with boundary knots, now moves them inside (with a warning),
    building on PR#18442 by Ben Bolker.
  * R CMD on Windows now skips the site profile with --no-site-file
    and --vanilla even when R_PROFILE is set (PR#18512, from Kevin
    Ushey).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1686916800">- CHANGES IN R 4.3.1:
  C-LEVEL FACILITIES:
  * The C-level API version of R's integrate(), Rdqags() in Applic.h,
    now returns the correct number of integrand evaluations neval,
    fixing PR#18515 reported and diagnosed by Stephen Wade.
  * The C prototypes for LAPACK calls dspgv and dtptrs in
    R_exts/Lapack.h had one too many and one too few character length
    arguments - but this has not caused any known issues. To get the
    corrected prototypes, include
    [#]include &lt;Rconfig.h&gt; // for PR18534fixed
    [#]ifdef PR18534fixed
    [#] define usePR18534fix 1
    [#]endif
    [#]include &lt;R_exts/Lapack.h&gt;
    in your C/C++ code (PR#18534).
  INSTALLATION:
  * Many of the checks of esoteric Internet operations and those
    using unreliable external sites have been moved to a new target
    that is not run by default and primarily intended for the core
    developers.  To run them use
    cd tests; make test-Internet-dev
  BUG FIXES:
  * .S3methods(), typically called from methods(), again marks
    methods from package base as visible.
    Also, the visibility of non-base methods is again determined by
    the method's presence in search().
  * tools::Rdiff() is now more robust against invalid strings, fixing
    installation tests on Windows without Rtools installed
    (PR#18530).
  * Fix (new) bug in hcl.colors(2, *), by Achim Zeileis (PR#18523).
  * head(., &lt;illegal&gt;) and tail(..) now produce more useful "Error in
    ...." error messages, fixing PR#18362.
  * Package code syntax on Windows is checked in UTF-8 when UTF-8 is
    the native encoding.
  * na.contiguous(x) now also returns the first run, when it is at
    the beginning and there is a later one of the same length;
    reported to R-devel, including a fix, by Georgi Boshnakov.
    Further, by default, it modifies only an existing attr(*,"tsp")
    but otherwise no longer sets one.
  * chol(&lt;not pos.def&gt;, pivot = &lt;T|F&gt;) now gives a correct error or
    warning message (depending on pivot), thanks to Mikael Jagan's
    (PR#18541).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1699012800">- CHANGES IN R 4.3.2:
  NEW FEATURES:
  * The default initialization of the "repos" option from the
    repositories file at startup can be skipped by setting
    environment variable R_REPOSITORIES to NULL such that
    getOption("repos") is empty if not set elsewhere.
  * qr.X() is now an implicit S4 generic in methods.
  * iconv(to = "ASCII//TRANSLIT") is emulated using substitution on
    platforms which do not support it (notably Alpine Linux).  This
    should give a human-readable conversion in ASCII on all platforms
    (rather than NA_character_).
  * trans3d() gains options continuous and verbose addressing the
    problem of possible "wrap around" when projecting too long
    curves, as reported by Achim Zeileis in PR#18537.
  * tools::showNonASCII() has been rewritten to work better on macOS
    14 (which has a changed implementation of iconv()).
  * tiff(type = "quartz") (the default on macOS) now warns if
    compression is specified: it continues to be ignored.
  INSTALLATION on a UNIX-ALIKE:
  * There is some support for building with Intel's LLVM-based
    compilers on x86_64 Linux, such as (C) icx, (C++) ipcx and
    (Fortran) ifx from oneAPI 2023.x.y.
  * There is support for using LLVM's flang-new as the Fortran
    compiler from LLVM 16.0.x (preferably 17.0.0 or later).
  UTILITIES:
  * R CMD check reports the use of the Fortran 90 random number
    generator RANDOM_NUMBER() and the subroutines to initialize it.
    'Writing R Extensions' has example code to use R's RNGs from
    Fortran.
  BUG FIXES:
  * substr(x, n, L) &lt;- cc now works (more) correctly for multibyte
    UTF-8 strings x when L &gt; nchar(x), thanks to a report and patch
    by 'Architect 95'.
  * contrib.url(character()) now returns 0-length character() as
    documented, which also avoids spurious warnings from
    available.packages() et al. in the edge case of an empty vector
    of repository URLs.
  * readChar(., 4e8) no longer fails, thanks to Kodi Arfer's report
    (PR#18557).
  * lapply(&lt;list&gt;, as.data.frame) no longer warns falsely for some
    base vector components.
  * Communication between parent and child processes in the multicore
    part of parallel could fail on platforms that do not support an
    arbitrarily large payload in system functions read()/write() on
    pipes (seen on macOS where a restriction to INT_MAX bytes is
    documented, without doing a partial read unlike Linux). The
    payload is now split into 1Gb chunks to avoid that problem.
    (PR#18571)
  * qqplot(x,y, conf.level=.) gives better confidence bounds when
    length(x) != length(y), thanks to Alexander Ploner's report and
    patch proposal (PR#18557).
  * norm(&lt;0-length&gt;, "2") now gives zero instead of an error, as all
    the other norm types, thanks to Mikael Jagan's PR#18542.
  * Build-stage Rd macros \packageAuthor and \packageMaintainer now
    process Authors@R, fixing NA results when the package DESCRIPTION
    omits Author and Maintainer fields.
  * Formatting and printing complex numbers could give things like
    0.1683-0i because of rounding error: -0i is now replaced by +0i.
  * postscript() refused to accept a title comment containing the
    letter "W" (PR#18599).
  * isoreg(c(1,Inf)) signals an error instead of segfaulting, fixing
    PR#18603.
  * tiff(type = "Xlib") was only outputting the last page of
    multi-page plots.
  * tools::latexToUtf8() again knows about \~{n} and other letters
    with tilde, fixing a regression in R 4.3.0, and about \^{i} as an
    alternative to \^{\i} (similarly with other accents).
    Furthermore, LaTeX codes for accented I letters are now correctly
    converted, also fixing related mistakes in
    tools::encoded_text_to_latex().
  * tar(*, tar = "internal") no longer creates out-of-spec tar files
    in the very rare case of user or group names longer than 32
    bytes, fixing PR#17871 with thanks to Ivan Krylov.
  * When using the "internal" timezone datetime code, adding a
    fraction of a second no longer adds one second, fixing PR#16856
    from a patch by Ivan Krylov.
  * tools::checkRd() no longer produces spurious notes about
    "unnecessary braces" from multi-line Rd results of \Sexpr macros.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1709208000">- CHANGES IN R 4.3.3:
  NEW FEATURES:
  * iconv() now fixes up variant encoding names such as "utf8"
    case-insensitively.
  DEPRECATED AND DEFUNCT:
  * The legacy encoding = "MacRoman" is deprecated in pdf() and
    postscript(): support was incomplete in earlier versions of R.
  BUG FIXES:
  * Arguments are now properly forwarded to methods on S4 generics
    with ... in the middle of their formal arguments. This was broken
    for the case when a method introduced an argument but did not
    include ... in its own formals. Thanks to Herv'e Pag`es for the
    report PR#18538.
  * Some invalid file arguments to pictex(), postscript() and xfig()
    opened a file called NA rather than throw an error.  These
    included postscript(NULL) (which some people expected to work
    like pdf(NULL)).
  * Passing filename = NA to svg(), cairo_pdf(), cairo_ps() or the
    Cairo-based bitmap devices opened a file called NA: it now throws
    an error.
  * quartz(file = NA) opened a file called NA, including when used as
    a Quartz-based bitmap device.  It now gives an error.
  * rank(&lt;long vector&gt;) now works, fixing PR#18617, thanks to Ilia
    Kats.
  * seq.int() did not adequately check its length.out argument.
  * match(&lt;POSIXct&gt;, .) is correct again for differing time zones,
    ditto for "POSIXlt", fixing PR#18618 reported by Bastian Klein.
  * drop.terms(*, dropx = &lt;0-length&gt;) now works, fixing PR#18563 as
    proposed by Mikael Jagan.
  * drop.terms(*) keeps + offset(.) terms when it should, PR#18565,
    and drop.terms() no longer makes up a response, PR#18566, fixing
    both bugs thanks to Mikael Jagan.
  * getS3method("t", "test") no longer finds the t.test() function,
    fixing PR#18627.
  * pdf() and postscript() support for the documented Adobe encodings
    "Greek" and "Cyrilllic" was missing (although the corresponding
    Windows' codepages could be used).
  * Computations of glyph metric information for pdf() and
    postscript() did not take into account that transliteration could
    replace one character by two or more (only seen on macOS 14) and
    typically warned that the information was not known.
  * rank(x) no longer overflows during integer addition, when
    computing rank average for largish but not-yet long vector x,
    fixing PR#18630, thanks to Ilia Kats.
  * list.files() on Windows now returns also files with names longer
    that 260 bytes (the Windows limit is 260 characters).
    Previously, some file names particularly with 'East Asian'
    characters were omitted.
  * cov2cor(&lt;0 x 0&gt;) now works, fixing PR#18423 thanks to Mikael
    Jagan and Elin Waring.
  * cov2cor(&lt;negative diagonal&gt;) and similar now give one warning
    instead of two, with better wording, fixing PR#18424 thanks to
    Mikael Jagan.
  * tools:: startDynamicHelp() now ensures port is in proper range,
    fixing PR#18645.
  * pbeta(x, a,b) is correct now for x=0 or 1 in the boundary cases
    where a or b or both are 0, fixing PR#18672 thanks to Michael
    Fay.
  * pmatch(x, table) for large table, also called for data frame row
    selection, dfrm[nm, ], is now interruptible, fixing PR#18656.
  * predict(&lt;rank-deficient lm&gt;, newdata=*) fix computing of nbasis,
    see Russ Lenth's comment 29 in PR#16158.
  * Added a work-around for a bug in macOS 14.3.1 and higher which
    prevents R plots in the Quartz Cocoa device from updating on
    screen.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1713960000">- CHANGES IN R 4.4.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Startup banners, R --version, sessionInfo() and R CMD check no
    longer report (64-bit) as part of the platform as this is almost
    universal - the increasingly rare 32-bit platforms will still
    report (32-bit).
    On Windows, ditto for window titles.
  * is.atomic(NULL) now returns FALSE, as NULL is not an atomic
    vector.  Strict back-compatibility would replace is.atomic(foo)
    by (is.null(foo) || is.atomic(foo)) but should happen only
    sparingly.
  NEW FEATURES:
  * The confint() methods for "glm" and "nls" objects have been
    copied to the stats package.  Previously, they were stubs which
    called versions in package MASS. The MASS namespace is no longer
    loaded if you invoke (say) confint(glmfit).  Further, the "glm"
    method for profile() and the plot() and pairs() methods for class
    "profile" have been copied from MASS to stats.  (profile.nls()
    and plot.profile.nls() were already in stats.)
  * The confint() and profile methods for "glm" objects have gained a
    possibility to do profiling based on the Rao Score statistic in
    addition to the default Likelihood Ratio. This is controlled by a
    new test = argument.
  * The pairs() method for "profile" objects has been extended with a
    which = argument to allow plotting only a subset of the
    parameters.
  * The "glm" method for anova() computes test statistics and
    p-values by default, using a chi-squared test or an F test
    depending on whether the dispersion is fixed or free.  Test
    statistics can be suppressed by giving argument test a false
    logical value.
  * In setRepositories() the repositories can be set using their
    names via name = instead of index ind =.
  * methods() and .S3methods() gain a all.names option for the (rare)
    case where functions starting with a . should be included.
  * Serializations can now be interrupted (e.g., by Ctrl-C on a
    Unix-alike) if they take too long, e.g., from save.image(),
    thanks to suggestions by Ivan Krylov and others on R-devel.
  * New startup option --max-connections to set the maximum number of
    simultaneous connections for the session.  Defaults to 128 as
    before: allowed values up to 4096 (but resource limits may in
    practice restrict to smaller values).
  * R on Windows (since Windows 10 2004) now uses the new Segment
    Heap allocator. This may improve performance of some
    memory-intensive applications.
  * When R packages are built, typically by R CMD build &lt;pkg&gt;, the
    new --user=&lt;build_user&gt; option overrides the (internally
    determined) user name, currently Sys.info()["user"] or LOGNAME.
    This is a (modified) fulfillment of Will Landau's suggestion in
    PR#17530.
  * tools::testInstalledBasic() gets new optional arguments outDir
    and testSrcdir, e.g., allowing to use it in a &lt;builddir&gt; !=
    &lt;srcdir&gt; setup, and in standard "binary" Windows installation
  * if* a source tests/ folder is present.
  * range(&lt;DT_with_Inf&gt;, finite = TRUE) now work for objects of class
    "Date", "POSIXct", and "POSIXlt" with infinite entries,
    analogously to range.default(), as proposed by Davis Vaughan on
    R-devel.  Other range()-methods can make use of new function
    .rangeNum().
  * New .internalGenerics object complementing .S3PrimitiveGenerics,
    for documentation and low-level book-keeping.
  * grid() now invisibly returns the x- and y- coordinates at which
    the grid-lines were drawn.
  * norm(., type) now also works for complex matrices.
  * kappa(., exact = TRUE, norm = *) now works for all norms and also
    for complex matrices.  In symmetric / triangular cases, the new
    argument uplo = "U" | "L" allows the upper or lower triangular
    part to be specified.
  * memDecompress(type = "unknown") recognizes compression in the
    default 'zlib' format as used by memCompress(type = "gzip").
  * memCompress() and memDecompress() will use the libdeflate library
    (&lt;https://github.com/ebiggers/libdeflate&gt;) if installed.  This
    uses the same type of compression for type = "gzip" but is 1.5-2x
    faster than the system libz library on some common platforms: the
    speed-up may depend on the library version.
  * diff() for objects of class "Date", "POSIXct", and "POSIXlt"
    accepts a units argument passed via ....
  * Dynamic help now does a much better job of rendering package
    DESCRIPTION metadata.
  * Rprof() gains an event argument and support for elapsed (real)
    time profiling on Unix (PR#18076).
  * filled.contour() gains a key.border argument.
  * tools::update_pkg_po() gets arguments pot_make and mo_make for
    _not_ re-making the corresponding files, and additionally a
    verbose argument.
  * Hexadecimal string colour specifications are now accepted in
    short form, so, for example, we can use "#123", which is
    equivalent to "#112233".
    Thanks to MikeFC for the original idea and Ella Kaye, Malcolm
    Barrett, George Stagg, and Hanne Oberman for the patch.
  * Plain-text help shows \var markup by angle brackets.
  * The new experimental primitive function declare() is intended to
    eventually allow information about R code to be communicated to
    the interpreter, compiler, and code analysis tools. The syntax
    for declarations is still being developed.
  * Functions psmirnov(), qsmirnov() and rsmirnov() in package stats
    have had argument two.sided renamed to alternative, to take into
    account that the permutation distributions of the one-sided
    statistics can be different in the case of ties.  Consequence of
    PR#18582.
  * sort() is now an implicit S4 generic in methods.
  * Formatting and printing, format(z), print(z), of complex vectors
    z no longer zap relatively small real or imaginary parts to zero,
    fixing PR#16752.  This is an API change, as it was documented
    previously to round real and imaginary parts together on purpose,
    producing nicer looking output.  As mentioned, e.g. in the PR,
    this change is compatible with many other "R-like" programming
    environments.
    We have simplified the internal code and now basically format the
    real and imaginary parts independently of each other.
  * New experimental functions Tailcall() and Exec() to support
    writing stack-space-efficient recursive functions.
  * Where characters are attempted to be plotted by pdf(),
    postscript() and xfig() which are not in the selected 8-bit
    character set (most often Latin-1) and the R session is using a
    UTF-8 locale, the warning messages will show the UTF-8 character
    rather than its bytes and one dot will be substituted per
    character rather than per byte.  (Platforms whose iconv() does
    transliteration silently plot the transliteration.)
    In a UTF-8 locale some transliterations are now done with a
    warning (e.g., dashes and Unicode minus to hyphen, ligatures are
    expanded, permille (‰) is replaced by o/oo), although the OS may
    have got there first.  These are warnings as they will continue
    to be replaced by dots in earlier versions of R.
  * The matrix multiplication functions crossprod() and tcrossprod()
    are now also primitive and S3 generic, as %*% had become in R
    4.3.0.
  * source() and example() have a new optional argument catch.aborts
    which allows continued evaluation of the R code after an error.
  * The non-Quartz tiff() devices allow additional types of
    compression if supported by the platform's libtiff library.
  * The list of base and recommended package names is now provided by
    tools::standard_package_names().
  * cairo_pdf() and cairo_ps() default to onefile = TRUE to closer
    match pdf() and postscript().
  * New option catch.script.errors provides a documented way to catch
    errors and then continue in non-interactive use.
  * L %||% R newly in base is an expressive idiom for the phrases
    if(!is.null(L)) L else R or if(is.null(L)) R else L.
  * The return value from warnings() now always inherits from
    "warnings" as documented, now also in the case of no warnings
    where it previously returned NULL.
  * as.complex("1i") now returns 0 + 1i instead of NA with a warning.
  * z &lt;- c(NA, 1i) now keeps the imaginary part Im(z[1]) == 0, no
    longer coercing to NA_complex_.  Similarly, cumsum(z) correctly
    sums real and imaginary parts separately, i.e., without
    "crosstalk" in case of NAs.
  * On Alpine Linux iconv() now maps "latin2", "latin-2", "latin9"
    and "latin-9" to encoding names the OS knows about
    (case-insensitively).
  * iconv(sub = "Unicode") now always zero-pads to four (hex) digits,
    rather than to 4 or 8.  (This seems to have become the convention
    once Unicode restricted the number of Unicode points to 2^21 - 1
    and so will never need more than 6 digits.)
  * NCOL(NULL) now returns 0 instead of 1, for consistency with
    cbind().
  * The information for the Euro glyph missing from the Adobe .afm
    files for the Courier, Helvetica and Times families has been
    copied from their URW equivalents - this will improve vertical
    centring in the pdf() and postscript() devices.
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.12.0.  The changes are almost entirely cosmetic.
  * The included LAPACK sources have been updated to version 3.12.0
    and some further double-complex routines added.
  * There are new font families for the 2014--5 URW 2.0 fonts (see
    ?pdf) which are included in recent versions of Ghostscript.
    These have font widths for most Greek glyphs and a few others
    which were missing from the original versions (whose font
    families remain available for reproducibility, although
    Ghostscript-based viewers will render using the 2.0 versions).
  * Improve the large-n efficiency of as.matrix(&lt;dist&gt;), thanks an R
    contributors effort, notably by Tim Taylor and Heather Turner,
    see PR#18660.
  * The default and numeric methods of all.equal() get a check.class
    option.
  * zapsmall() gets new optional arguments, function mFUN and min.d,
    for extra flexibility; fulfills a wish in PR#18199.  Also, it is
    now an implicit S4 generic in package methods.
  * The Rd filter for aspell() gains an ignore argument.
  * New generic function sort_by(), primarily useful for the
    data.frame method which can be used to sort rows of a data frame
    by one or more columns.
  * The icence headers for the RPC code in src/extra/xdr have been
    updated to use the GPL-compatible licence published by Oracle
    America in 2010.
  * New function pkg2HTML() in tools to create single-page HTML
    reference manuals for R packages.
  * The byte code evaluator now uses less C stack space for recursive
    calls to byte-compiled functions. It also makes more of an effort
    to avoid allocations for scalar return values.
  * New completion option backtick (disabled by default) allows
    non-syntactic completions to be wrapped in backquotes. This is
    currently only useful for Jupyter notebooks via the IRkernel
    package, and may cause problems for other backends.
  INSTALLATION:
  * The parser has been updated to work with bison 3.8.2, which is
    now used for the pre-generated parsers in gram.c, file.c, and
    gramRd.c. A few parser error messages have changed, which may
    affect code that relies on exact messages.
  INSTALLATION on a UNIX-ALIKE:
  * System valgrind headers are now required to use configure option
  - -with-valgrind-instrumentation with value 1 or 2.
  * configure will warn if it encounters a 32-bit build, as that is
    nowadays almost untested.
  * Environment variable R_SYSTEM_ABI is no longer used and so no
    longer recorded in etc/Renviron (it was not on Windows and was
    only ever used when preparing package tools).
  * If the libdeflate library and headers are available, libdeflate
    rather than libz is used to (de)compress R objects in lazy-load
    databases.  Typically tasks spend up to 5% of their time on such
    operations, although creating lazy-data databases is one of the
    exceptions.
    This can be suppressed if the library is available by the
    configure option --without-libdeflate-compression.
  * configure option --enable-lto=check has not worked reliably since
    2019 and has been removed.
  * The minimum autoconf requirement for a maintainer build has been
    increased to autoconf 2.71.
    It is intended to increase this to 2.72 for R 4.5.0: the
    distributed configure file was generated using 2.72.
  * The minimum version requirement for an external LAPACK has been
    reduced to 3.9.0.
  * No default C++ compiler is set if no C++17 compiler is detected:
    there is no longer an automatic fallback to C++14 or C++11.
    Compilers from the last five years should have sufficient
    support: for others macros CXX and CXXSTD can be set in file
    config.site to provide a fallback if needed.
    The Objective-C++ compiler now by default uses the standard
    selected by R for C++ (currently C++17) rather than the default
    standard for the C++ compiler (which on macOS is still C++98).
  INSTALLATION on macOS:
  * A new configure option --with-newAccelerate makes use of Apple's
    'new' BLAS / LAPACK interfaces in their Accelerate framework.
    Those interfaces are only available in macOS 13.3 or later, and
    building requires SDK 13.3 or later (from the Command Line Tools
    or Xcode 14.3 or later).
    By default the option uses new Accelerate for BLAS calls: to also
    use it for LAPACK use option --with-newAccelerate=lapack.  The
    later interfaces provide LAPACK 3.9.1 rather than 3.2.1: 3.9.1 is
    from 2021-04 and does not include the improved algorithms
    introduced in LAPACK 3.10.0 (including for BLAS calls).
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools44, an update of the Rtools43 toolchain.  It is
    based on GCC 13 and newer versions of MinGW-W64, binutils and
    libraries (targeting 64-bit Intel CPUs).  R-devel can no longer
    be built using Rtools43 without changes.
  * Rtools44 has experimental support for 64-bit ARM (aarch64) CPUs
    _via_ the LLVM 17 toolchain using lld, clang/flang-new and
    libc++.
  UTILITIES:
  * R CMD check notes when S4-style exports are used without
    declaring a strong dependence on package methods.
  * tools::checkRd() (used by R CMD check) detects more problems with
    \Sexpr-based dynamic content, including bad nesting of \Sexprs
    and invalid arguments.
  * tools::checkRd() now reports Rd titles and section names ending
    in a period; this is ignored by R CMD check unless environment
    variable _R_CHECK_RD_CHECKRD_MINLEVEL_ is set to -5 or smaller.
  * R CMD check now notes Rd files without an \alias, as long
    documented in 'Writing R Extensions' §1.3.1.  The check for a
    missing \description has been moved from tools::checkRd() to
    tools::checkRdContents().
  * R CMD check now visits inst/NEWS.Rd and OS-specific man
    subdirectories when checking Rd files.
  * tools::checkDocFiles() and tools::checkRdContents() now also
    check internal Rd files by default, but "specially" (ignoring
    missing documentation of arguments).
  * R CMD Rdiff gets option --useEx.
  * R CMD check now warns on non-portable uses of Fortran KIND such
    as INTEGER(KIND=4) and REAL(KIND=8).
    To see the failing lines set environment variable
    _R_CHECK_FORTRAN_KIND_DETAILS_ to a true value.
  * When checking Rd files, R CMD check now notes some of the "lost
    braces" that tools::checkRd() finds.  Typical problems are Rd
    macros missing the initial backslash (e.g., code{...}), in-text
    set notation (e.g., {1, 2}, where the braces need escaping), and
    \itemize lists with \describe-style entries of the form
    \item{label}{description}.
  * R CMD INSTALL (and hence check) will compile C++ code with
  - DR_NO_REMAP if environment variable _R_CXX_USE_NO_REMAP_ is set
    to a true value.  It is planned that this will in future become
    the default for compiling C++.
  * The new built-in Rd macro \dontdiff{} can be used to mark example
    code whose output should be ignored when comparing check output
    to reference output (tests/Examples/&lt;pkg&gt;-Ex.Rout.save).  The
    \dontdiff tag, like \donttest, is _not_ shown on the rendered
    help page, so provides a clean alternative to ##
    IGNORE_RDIFF_(BEGIN|END) comments.
  * R CMD build when there is no NAMESPACE, now uses the recommended
    exportPattern("^[^.]"), instead of exporting everything.
  * R CMD check now warns about non-ASCII characters in the NAMESPACE
    file (in addition to R files). Such packages are not portable and
    may fail to install on some platforms.
  C-LEVEL FACILITIES:
  * Headers R_ext/Applic.h and R-ext/Linpack.h used to include
    R_ext/BLAS.h although this was undocumented and unneeded by their
    documented entry points.  They no longer do so.
  * New function R_missing(), factored out from do_missing(), used to
    fix PR#18579.
  * SEXP type S4SXP has been renamed to OBJSXP to support
    experimenting with alternative object systems.  The S4SXP value
    can still be used in C code but is now deprecated.  Based on
    contributions from the R Consortium's Object-Oriented Programming
    Working Group.
  * New function pow1p(x,y) for accurate (1+x)^y.
  * mkCharLenCE was incorrectly documented to take a size_t length
    but was implemented with int (and character strings in R are
    limited to 2^31 - 1 bytes).
  DEPRECATED AND DEFUNCT:
  * data() no longer handles zipped data from long-defunct (since R
    2.13.0) --use-zip-data installations.
  * The legacy graphics devices pictex() and xfig() are now
    deprecated.  They do not support recent graphics enhancements and
    their font handling is rudimentary. The intention is to retain
    them for historical interest as long as they remain somewhat
    functional.
  * Support for encoding = "MacRoman" has been removed from the pdf()
    and postscript() devices - this was a legacy encoding supporting
    classic macOS up to 2001 and no longer has universal libiconv
    support.
  * is.R() is deprecated as no other S dialect is known to be in use
    (and this could only identify historical dialects, not future
    ones).
    Further information on calls can be obtained by setting the
    environment variable _R_DEPRECATED_IS_R_ to error which turns the
    deprecation warning into an error and so by default gives a
    traceback.  (This is done by R CMD check --as-cran.)
  * UseMethod() no longer forwards local variables assigned in the
    generic function into method call environments before evaluating
    the method body. This makes method calls behave more like
    standard function calls and makes method code easier to analyze
    correctly.
  * The twelve as.data.frame.&lt;class&gt;() methods which were deprecated
    only via _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ and in R CMD
    check --as-cran are formally deprecated now in favour of calling
    as.data.frame() or as.data.frame.vector().  The deprecation
    "check" now works also when as.data.frame() is S4 generic thanks
    to Ivan Krylov.
  * The default method for the directional comparison operators &lt;, &gt;,
    &lt;=, and &gt;= now signals an error when one of the operands is a
    language object, i.e. a symbol or a call.
  * For terms.formula(), deprecate abb and neg.out arguments
    _formally_ in addition to just documenting it.
  BUG FIXES:
  * The methods package is more robust to not being attached to the
    search path.  More work needs to be done.
  * pairwise.t.test() misbehaved when subgroups had 0 DF for
    variance, even with pool.sd = TRUE.  (PR#18594 by Jack Berry).
  * Probability distribution functions [dpq]&lt;distrib&gt;(x, *), but also
    bessel[IKJY](x, .) now consistently preserve attributes(x) when
    length(x) == 0, e.g., for a 2 x 0 matrix, thanks to Karolis
    Koncevičius' report PR#18509.
  * Group "Summary" computations such as sum(1:3, 4, na.rm = 5, NA,
    7, na.rm = LL) now give an error instead of either 17 or NN for
    LL true or false, as proposed by Ivan Krylov on the R-devel
    mailing list.  (This also means it is now an error to specify
    na.rm more than once.)
  * as.complex(x) now returns complex(real = x, imaginary = 0) for
    _all_ numerical and logical x, notably also for NA or
    NA_integer_.
  * Directories are now omitted by file.copy(, recursive = FALSE) and
    in file.append() (PR#17337).
  * gsub() and sub() are now more robust to integer overflow when
    reporting errors caused by too large input strings (PR#18346).
  * Top-level handlers are now more robust to attempts to remove a
    handler whilst handlers are running (PR#18508).
  * The handling of Alt+F4 in dialogs created on Windows using
    GraphApp has been fixed (PR#13870).
  * density() more consistently computes grid values for the
    FFT-based convolution, following Robert Schlicht's analysis and
    proposal in PR#18337, correcting density values typically by a
    factor of about 0.999.  Argument old.coords = TRUE provides back
    compatibility.
  * palette.colors() gains a name argument that defaults to FALSE
    controlling whether the vector of colours that is returned has
    names (where possible).  PR#18529.
  * tools::xgettext() no longer extracts the (non-translatable) class
    names from warningCondition and errorCondition calls.
  * S3method(&lt;gen&gt;, &lt;class&gt;, &lt;func&gt;) in the NAMESPACE file now works
    (again) when &lt;func&gt; is visible from the namespace, e.g.,
    imported, or in base.
  * getParseData(f) now also works for a function defined in the
    first of several &lt;pkg&gt;/R/*.R source files, thanks to Kirill
    Müller's report and Duncan Murdoch's patch in PR#16756.
  * Rd \Sexpr macros with nested #ifdef conditionals were not
    processed.
  * A non-blocking connection with non-default encoding (such as a
    socket) now correctly returns from readLines() after new data has
    arrived also when its EOF had been reached previously.  Thanks to
    Peter Meilstrup's report on R-devel and Ivan Krylov's report and
    patch proposal in PR#18555.
  * tools::checkRdContents() failed to detect empty argument
    descriptions when they spanned multiple lines, including those
    generated by prompt().  These cases are now noted by R CMD check.
  * Plain-text help no longer outputs spurious colons in the
    arguments list (for multi-line \item labels in the Rd source).
  * kappa() and rcond() work correctly in more cases; kappa(., norm =
    "2") now warns that it computes the 1-norm with (default) exact =
    FALSE; prompted by Mikael Jagan's quite comprehensive PR#18543.
  * Rd skeletons generated by prompt() or promptData() now use a
    dummy title (so R CMD build works).  tools::checkRdContents() has
    been updated to detect such template leftovers, including from
    promptPackage().
  * When S4 method dispatch fails because no method was found, the
    error message now includes the signature argument names; thanks
    to Michael Chirico's proposal on the R-devel list.
  * withAutoprint({ .. }) now preserves srcrefs previously lost,
    thanks to Andrew Simmons' report plus fix in PR#18572.
  * transform.data.frame() no longer adjusts names; in particular,
    untransformed variables are kept as-is, including those with
    syntactically invalid names (PR#17890).
  * The keep.source option for Rd \Sexpr blocks is no longer ignored.
  * The formula methods for t.test() and wilcox.test() now catch when
    paired is passed, addressing PR#14359; use Pair(x1, x2) ~ 1 for a
    paired test.
  * The level reported in the browser prompt was often too large. It
    now shows the number of browser contexts on the stack.
  * For cbind() and rbind(), the optional deparse.level argument is
    now properly passed to methods, thanks to Mikael Jagan's PR#18579
    and comments there.
  * Some error and warning messages for large ('long vector')
    matrix(v, nr, nc) and dim(m) &lt;- d are now correct about sizes,
    using long long formatting, fixing PR#18612 (and more) reported
    by Mikael Jagan.
  * readChar(useBytes = TRUE) now terminates strings even when the
    underlying connection uses extra spaces in the input buffer.
    This fixes problems with extra garbage seen with gzip
    connections, PR#18605.
  * Named capture in PCRE regular expressions now works also with
    more than 127 named groups (PR#18588).
  * Datetime functions are now robust against long jumps when dealing
    with internal time zone changes.  This avoids confusing warnings
    about an invalid time zone, previously triggered by turning
    warnings into errors or handling them via tryCatch (PR#17966,
    PR#17780).
  * Datetime functions now restore even an empty TZ environment
    variable after internal time zone changes (PR#17724).  This makes
    results of datetime functions with this (typically unintentional)
    setting more predictable.
  * drop.terms(*) now drops response as by default, keep.response =
    FALSE, fixing PR#18564 thanks to Mikael Jagan.
  * dummy.coef(.) now also works for lm()-models with character
    categorical predictor variables rather than factor ones, fixing
    PR#18635 reported by Jinsong Zhao.
  * formals(f) &lt;- formals(f) now also works for a function w/o
    arguments and atomic _constant_ body(f).
  * Correct as.function(&lt;invalid list&gt;, .)'s error message.
  * removeSource() is yet more thorough in finding and removing
    "srcref" and the other source references from parsed R language
    chunks, fixing PR#18638 thanks to Andrew Simmons.
  * dgeom() is more accurate now, notably when its result is very
    small, fixing PR#18642 thanks to the proposal of Morten Welinder,
    also improving other instances where C level binom_raw(x, n, ..)
    has x == 0 or x== n.
  * warning() with options(warn = 1) has improved output for
    multi-line messages.
  * axis.Date() and axis.POSIXct() now respect the par("lab") setting
    for the number of pretty() intervals.
  * Comparisons for language objects (which are based on deparsing)
    are now more careful about using accurate deparsed results
    (PR#18676).
  * Plain-text help (Rd2txt) now correctly preserves blank lines
    following single-line \dontrun code.
  * &lt;POSIXlt&gt;[*] no longer sets wrong "balanced" attribute, fixing
    PR#18681 thanks to Mikael Jagan.
  * str(&lt;classed-call&gt;) now deparses the call as expected, fixing
    PR#18684, reported by Dave Slager.
  * In Rd examples, code following the closing brace of a \dontrun,
    \dontshow or \donttest tag on the same line is no longer skipped
    when R CMD check runs the examples.
  * as.data.frame(matrix(*, ncol=0)) now gets valid names() and
    colnames(); reported by Davis Vaughan on the R-devel list.
  * Internal Mathlib function stirlerr(n) is now almost fully
    (52-bit) accurate for all n &gt;= ~5.9 and more accurate also in the
    range 1 -- 5.9.  This entails small ("after 12th decimal")
    changes in density functions, e.g., dgamma() in _some_ regions of
    their support.  The fix was partly prompted by Morten Welinder's
    PR#18640.
  * Numbers like 9876543.2 are now considered non-integer by Mathlib
    internal R_nonint(), amending original fix of PR#15734.
  * Rd comment lines no longer cause broken paragraphs in the
    rendered PDF and plain-text help. In code blocks, pure comment
    lines (starting with %) no longer produce an empty line.
  * xtabs(Freq ~ .) now consistently defaults to na.action = na.pass,
    using na.rm = FALSE (added as an argument) when summing over Freq
    (PR#17770).
  * tools::testInstalledPackage() is no longer silent about failures
    from running examples or tests and its return code no longer
    ignores failures from checking vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1718366400">- CHANGES IN R 4.4.1:
  C-LEVEL FACILITIES:
  * Functions R_atof and R_strtod declared in header R_ext/Utils.h
    are now documented in 'Writing R Extensions' and so formally part
    of the API.
  * The non-API entry points Rf_setSVector, Rf_StringFalse,
    Rf_StringTrue and Rf_isBlankString have been added to those
    reported by R CMD check.
  * The new function Rf_allocLang is now available. This provides an
    alternative to the idiom of calling Rf_allocList followed by
    SET_TYPEOF.
  UTILITIES:
  * R CMD check now reports as warnings what gfortran calls 'Fortran
    2018 deleted features', all of which have long been marked as
    'obsolescent' and some of which were deleted in Fortran 2008 or
    earlier.  Fortran compilers are no longer required to support
    these.
  BUG FIXES:
  * as.numeric(), scan(), type.convert() and other places which use
    the internal C function R_strtod now require a _non-empty_ digit
    sequence in a decimal or binary exponent.  This aligns with the
    C/POSIX standard for strtod and with ?NumericConstants.
  * as.data.frame(m, make.names=NA) now works correctly for a matrix
    m with NA's in row names.
  * The error message from &lt;POSIXlt&gt;[["hour"]] and similar now
    mentions *[[, "hour"]], as wished for in PR#17409 and proposed by
    Michael Chirico.
  * qbinom() and potentially qpois(), qnbinom(), no longer sometimes
    fail accurate inversion (of pbinom(), etc), thanks to Christopher
    Chang's report and patch in PR#18711.
  * The internal help server on Windows can again serve requests sent
    in quick succession, fixing a regression in R 4.4.0.
  * debugcall(&lt;S3Generic&gt;()) now also works when a corresponding
    S4-generic version is in the methods cache (PR#18143).
  * Package tools' toTitleCase(ch0) now returns character(0) when ch0
    is of zero length; fixing PR#18724, reported by David Hugh Jones.
  * R CMD check is no longer broken (without a check result and no
    explanation in 00check.log) for a package which declares an
    invalid VignetteBuilder in DESCRIPTION but has no vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1730376000">- CHANGES IN R 4.4.2:
  C-LEVEL FACILITIES:
  * The S-compatibility macros F77_COM and F77_COMDECL defined in
    header R_ext/RS.h are deprecated and will be removed shortly.  We
    could find no record of their use.
  BUG FIXES:
  * Mathlib function lgammacor(x) no longer warns about underflow to
    zero for large x.
  * Text widths and heights were incorrectly reported by the Quartz
    device if the drawing context didn't exist yet (typically when
    drawing off-screen to a window that is yet to appear, see
    PR#18591).
  * The Quartz device could segfault in cases where paths with spaces
    are used in the new glyph drawing API.  Thanks to Tomek
    Gieorgijewski (PR#18758).
  * On macOS in R CRAN builds, it is again possible to read
    little-endian UTF-16 text with a BOM from a connection using
    encoding="UTF-16".  Users building R from source should avoid
    using the system libiconv in macOS 14.1 and later.
  * methods' internal .requirePackage() now re-enables primitive
    method dispatch when needed; thanks to Ivan Krylov for
    demystifying CRAN package check failures on the R-devel mailing
    list.</changelog>
</package>
<package pkgid="eb673c3d61cfb35499de02ac7f39e7793a1af2eb57d4f0e04652751d25bcdcc1c4277406ef5030b0ecf209cdf10a6fc01c1113cda0fb1a9d3619693f6864ac81" name="R-MASS-debuginfo" arch="i586">
  <version epoch="0" ver="7.3.61" rel="51.0.2.2.sr20241103"/>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1620302400">- To get in sync with d:l:R:autoCRAN the Matrix package's split
  in -devel was reversed.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339200">- improved spec file according to comments of dimstar in
  https://build.opensuse.org/request/show/892685</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339201">- CHANGES IN R 4.1.0:
  FUTURE DIRECTIONS:
  * It is planned that the 4.1.x series will be the last to support
    32-bit Windows, with production of binary packages for that
    series continuing until early 2023.
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Data set esoph in package datasets now provides the correct
    numbers of controls; previously it had the numbers of cases added
    to these.  (Reported by Alexander Fowler in PR#17964.)
  NEW FEATURES:
  * www.omegahat.net is no longer one of the repositories known by
    default to setRepositories().  (Nowadays it only provides source
    packages and is often unavailable.)
  * Function package_dependencies() (in package tools) can now use
    different dependency types for direct and recursive dependencies.
  * The checking of the size of tarball in R CMD check --as-cran
    &lt;pkg&gt; may be tweaked via the new environment variable
    _R_CHECK_CRAN_INCOMING_TARBALL_THRESHOLD_, as suggested in
    PR#17777 by Jan Gorecki.
  * Using c() to combine a factor with other factors now gives a
    factor, an ordered factor when combining ordered factors with
    identical levels.
  * apply() gains a simplify argument to allow disabling of
    simplification of results.
  * The format() method for class "ftable" gets a new option justify.
    (Suggested by Thomas Soeiro.)
  * New ...names() utility.  (Proposed by Neal Fultz in PR#17705.)
  * type.convert() now warns when its as.is argument is not
    specified, as the help file always said it _should_.  In that
    case, the default is changed to TRUE in line with its change in
    read.table() (related to stringsAsFactor) in R 4.0.0.
  * When printing list arrays, classed objects are now shown _via_
    their format() value if this is a short enough character string,
    or by giving the first elements of their class vector and their
    length.
  * capabilities() gets new entry "Rprof" which is TRUE when R has
    been configured with the equivalent of --enable-R-profiling (as
    it is by default).  (Related to Michael Orlitzky's report
    PR#17836.)
  * str(xS4) now also shows extraneous attributes of an S4 object
    xS4.
  * Rudimentary support for vi-style tags in rtags() and R CMD rtags
    has been added.  (Based on a patch from Neal Fultz in PR#17214.)
  * checkRdContents() is now exported from tools; it and also
    checkDocFiles() have a new option chkInternal allowing to check
    Rd files marked with keyword "internal" as well.  The latter can
    be activated for R CMD check via environment variable
    _R_CHECK_RD_INTERNAL_TOO_.
  * New functions numToBits() and numToInts() extend the raw
    conversion utilities to (double precision) numeric.
  * Functions URLencode() and URLdecode() in package utils now work
    on vectors of URIs.  (Based on patch from Bob Rudis submitted
    with PR#17873.)
  * path.expand() can expand ~user on most Unix-alikes even when
    readline is not in use.  It tries harder to expand ~, for example
    should environment variable HOME be unset.
  * For HTML help (both dynamic and static), Rd file links to help
    pages in external packages are now treated as references to
    topics rather than file names, and fall back to a file link only
    if the topic is not found in the target package. The earlier rule
    which prioritized file names over topics can be restored by
    setting the environment variable _R_HELP_LINKS_TO_TOPICS_ to a
    false value.
  * c() now removes NULL arguments before dispatching to methods,
    thus simplifying the implementation of c() methods, _but_ for
    back compatibility keeps NULL when it is the first argument.
    (From a report and patch proposal by Lionel Henry in PR#17900.)
  * Vectorize()'s result function's environment no longer keeps
    unneeded objects.
  * Function ...elt() now propagates visibility consistently with
    ..n.  (Thanks to Lionel Henry's PR#17905.)
  * capture.output() no longer uses non-standard evaluation to
    evaluate its arguments.  This makes evaluation of functions like
    parent.frame() more consistent.  (Thanks to Lionel Henry's
    PR#17907.)
  * packBits(bits, type="double") now works as inverse of
    numToBits().  (Thanks to Bill Dunlap's proposal in PR#17914.)
  * curlGetHeaders() has two new arguments, timeout to specify the
    timeout for that call (overriding getOption("timeout")) and TLS
    to specify the minimum TLS protocol version to be used for
    https:// URIs (_inter alia_ providing a means to check for sites
    using deprecated TLS versions 1.0 and 1.1).
  * For nls(), an optional constant scaleOffset may be added to the
    denominator of the relative offset convergence test for cases
    where the fit of a model is expected to be exact, thanks to a
    proposal by John Nash.  nls(*, trace=TRUE) now also shows the
    convergence criterion.
  * Numeric differentiation _via_ numericDeriv() gets new optional
    arguments eps and central, the latter for taking central divided
    differences.  The latter can be activated for nls() via
    nls.control(nDcentral = TRUE).
  * nls() now passes the trace and control arguments to getInitial(),
    notably for all self-starting models, so these can also be fit in
    zero-noise situations via a scaleOffset.  For this reason, the
    initial function of a selfStart model must now have ... in its
    argument list.
  * bquote(splice = TRUE) can now splice expression vectors with
    attributes: this makes it possible to splice the result of
    parse(keep.source = TRUE).  (Report and patch provided by Lionel
    Henry in PR#17869.)
  * textConnection() gets an optional name argument.
  * get(), exists(), and get0() now signal an error if the first
    argument has length greater than 1.  Previously additional
    elements were silently ignored.  (Suggested by Antoine Fabri on
    R-devel.)
  * R now provides a shorthand notation for creating functions, e.g.
    \(x) x + 1 is parsed as function(x) x + 1.
  * R now provides a simple native forward pipe syntax |&gt;.  The
    simple form of the forward pipe inserts the left-hand side as the
    first argument in the right-hand side call.  The pipe
    implementation as a syntax transformation was motivated by
    suggestions from Jim Hester and Lionel Henry.
  * all.equal(f, g) for functions now by default also compares their
    environment(.)s, notably via new all.equal method for class
    function.  Comparison of nls() fits, e.g., may now need
    all.equal(m1, m2, check.environment = FALSE).
  * .libPaths() gets a new option include.site, allowing to _not_
    include the site library.  (Thanks to Dario Strbenac's suggestion
    and Gabe Becker's PR#18016.)
  * Lithuanian translations are now available.  (Thanks to Rimantas
    Zakauskas.)
  * names() now works for DOTSXP objects.  On the other hand, in
    R-lang, the R language manual, we now warn against relying on the
    structure or even existence of such dot-dot-dot objects.
  * all.equal() no longer gives an error on DOTSXP objects.
  * capabilities("cairo") now applies only to the file-based devices
    as it is now possible (if very unusual) to build R with Cairo
    support for those but not for X11().
  * There is optional support for tracing the progress of
    loadNamespace() - see its help.
  * (Not Windows.)  l10n_info() reports an additional element, the
    name of the encoding as reported by the OS (which may differ from
    the encoding part (if any) of the result from
    Sys.getlocale("LC_CTYPE").
  * New function gregexec() which generalizes regexec() to find _all_
    disjoint matches and well as all substrings corresponding to
    parenthesized subexpressions of the given regular expression.
    (Contributed by Brodie Gaslam.)
  * New function charClass() in package utils to query the
    wide-character classification functions in use (such as
    iswprint).
  * The names of quantile()'s result no longer depend on the global
    getOption("digits"), but quantile() gets a new optional argument
    digits = 7 instead.
  * grep(), sub(), regexp and variants work considerably faster for
    long factors with few levels.  (Thanks to Michael Chirico's
    PR#18063.)
  * Provide grouping of x11() graphics windows within a window
    manager such as Gnome or Unity; thanks to a patch by Ivan Krylov
    posted to R-devel.
  * The split() method for class data.frame now allows the f argument
    to be specified as a formula.
  * sprintf now warns on arguments unused by the format string.
  * New palettes "Rocket" and "Mako" for hcl.colors() (approximating
    palettes of the same name from the 'viridisLite' package).
    Contributed by Achim Zeileis.
  * The base environment and its namespace are now locked (so one can
    no longer add bindings to these or remove from these).
  * Rterm handling of multi-byte characters has been improved,
    allowing use of such characters when supported by the current
    locale.
  * Rterm now accepts ALT+ +xxxxxxxx sequences to enter Unicode
    characters as hex digits.
  * Environment variable LC_ALL on Windows now takes precedence over
    LC_CTYPE and variables for other supported categories, matching
    the POSIX behaviour.
  * duplicated() and anyDuplicated() are now optimized for integer
    and real vectors that are known to be sorted via the ALTREP
    framework. Contributed by Gabriel Becker via PR#17993.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 14
    and so packages that provide graphics devices should be
    reinstalled.
  * Graphics devices should now specify deviceVersion to indicate
    what version of the graphics engine they support.
  * Graphics devices can now specify deviceClip.  If TRUE, the
    graphics engine will never perform any clipping of output itself.
    The clipping that the graphics engine does perform (for both
    canClip = TRUE and canClip = FALSE) has been improved to avoid
    producing unnecessary artifacts in clipped output.
  * The grid package now allows gpar(fill) to be a linearGradient(),
    a radialGradient(), or a pattern().  The viewport(clip) can now
    also be a grob, which defines a clipping path, and there is a new
    viewport(mask) that can also be a grob, which defines a mask.
    These new features are only supported so far on the Cairo-based
    graphics devices and on the pdf() device.
  * (Not Windows.)  A warning is given when a Cairo-based type is
    specified for a png(), jpeg(), tiff() or bmp() device but Cairo
    is unsupported (so type = "Xlib" is tried instead).
  * grSoftVersion() now reports the versions of FreeType and
    FontConfig if they are used directly (not _via_ Pango), as is
    most commonly done on macOS.
  C-LEVEL FACILITIES:
  * The _standalone_ libRmath math library and R's C API now provide
    log1pexp() again as documented, and gain log1mexp().
  INSTALLATION on a UNIX-ALIKE:
  * configure checks for a program pkgconf if program pkg-config is
    not found.  These are now only looked for on the path (like
    almost all other programs) so if needed specify a full path to
    the command in PKG_CONFIG, for example in file config.site.
  * C99 function iswblank is required - it was last seen missing ca
    2003 so the workaround has been removed.
  * There are new configure options --with-internal-iswxxxxx,
  - -with-internal-towlower and --with-internal-wcwidth which allows
    the system functions for wide-character classification,
    case-switching and width (wcwidth and wcswidth) to be replaced by
    internal ones.  The first has long been used on macOS, AIX (and
    Windows) but this enables it to be unselected there and selected
    for other platforms (it is the new default on Solaris).  The
    second is new in this version of R and is selected by default on
    macOS and Solaris.  The third has long been the default and
    remains so as it contains customizations for East Asian
    languages.
    System versions of these functions are often minimally
    implemented (sometimes only for ASCII characters) and may not
    cover the full range of Unicode points: for example Solaris (and
    Windows) only cover the Basic Multilingual Plane.
  * Cairo installations without X11 are more likely to be detected by
    configure, when the file-based Cairo graphics devices will be
    available but not X11(type = "cairo").
  * There is a new configure option --with-static-cairo which is the
    default on macOS.  This should be used when only static cairo
    (and where relevant, Pango) libraries are available.
  * Cairo-based graphics devices on platforms without Pango but with
    FreeType/FontConfig will make use of the latter for font
    selection.
  LINK-TIME OPTIMIZATION on a UNIX-ALIKE:
  * Configuring with flag --enable-lto=R now also uses LTO when
    installing the recommended packages.
  * R CMD INSTALL and R CMD SHLIB have a new flag --use-LTO to use
    LTO when compiling code, for use with R configured with
  - -enable-lto=R.  For R configured with --enable-lto, they have
    the new flag --no-use-LTO.
    Packages can opt in or out of LTO compilation _via_ a UseLTO
    field in the DESCRIPTION file.  (As usual this can be overridden
    by the command-line flags.)
  BUILDING R on Windows:
  * for GCC &gt;= 8, FC_LEN_T is defined in config.h and hence character
    lengths are passed from C to Fortran in _inter alia_ BLAS and
    LAPACK calls.
  * There is a new text file src/gnuwin32/README.compilation, which
    outlines how C/Fortran code compilation is organized and
    documents new features:
  * R can be built with Link-Time Optimization with a suitable
    compiler - doing so with GCC 9.2 showed several
    inconsistencies which have been corrected.
  * There is support for cross-compiling the C and Fortran code
    in R and standard packages on suitable (Linux) platforms.
    This is mainly intended to allow developers to test later
    versions of compilers - for example using GCC 9.2 or 10.x has
    detected issues that GCC 8.3 in Rtools40 does not.
  * There is experimental support for cross-building R packages
    with C, C++ and/or Fortran code.
  * The R installer can now be optionally built to support a single
    architecture (only 64-bit or only 32-bit).
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++14 where
    available (which it is on all currently checked platforms): if
    not (as before) C++11 is used if available otherwise C++ is not
    supported.
    Packages which specify C++11 will still be installed using C++11.
    C++14 compilers may give deprecation warnings, most often for
    std::random_shuffle (deprecated in C++14 and removed in C++17).
    Either specify C++11 (see 'Writing R Extensions') or modernize
    the code and if needed specify C++14.  The latter has been
    supported since R 3.4.0 so the package's DESCRIPTION would need
    to include something like
    Depends: R (&gt;= 3.4)
  PACKAGE INSTALLATION on Windows:
  * R CMD INSTALL and R CMD SHLIB make use of their flag --use-LTO
    when the LTO_OPT make macro is set in file etc/${R_ARCH}/Makeconf
    or in a personal/site Makevars file.  (For details see 'Writing R
    Extensions' SS4.5.)
    This provides a valuable check on code consistency.  It does work
    with GCC 8.3 as in Rtools40, but that does not detect everything
    the CRAN checks with current GCC do.
  PACKAGE INSTALLATION on macOS:
  * The default personal library directory on builds with
  - -enable-aqua (including CRAN builds) now differs by CPU type,
    one of
    ~/Library/R/x86_64/x.y/library
    ~/Library/R/arm64/x.y/library
    This uses the CPU type R (and hence the packages) were built for,
    so when a x86_64 build of R is run under Rosetta emulation on an
    arm64 Mac, the first is used.
  UTILITIES:
  * R CMD check can now scan package functions for bogus return
    statements, which were possibly intended as return() calls (wish
    of PR#17180, patch by Sebastian Meyer). This check can be
    activated via the new environment variable
    _R_CHECK_BOGUS_RETURN_, true for --as-cran.
  * R CMD build omits tarballs and binaries of previous builds from
    the top-level package directory.  (PR#17828, patch by Sebastian
    Meyer.)
  * R CMD check now runs sanity checks on the use of LazyData, for
    example that a data directory is present and that
    LazyDataCompression is not specified without LazyData and has a
    documented value.  For packages with large LazyData databases
    without specifying LazyDataCompression, there is a reference to
    the code given in 'Writing R Extensions' SS1.1.6 to test the
    choice of compression (as in all the CRAN packages tested a
    non-default method was preferred).
  * R CMD build removes LazyData and LazyDataCompression fields from
    the DESCRIPTION file of packages without a data directory.
  ENCODING-RELATED CHANGES:
  * The parser now treats \Unnnnnnnn escapes larger than the upper
    limit for Unicode points (\U10FFFF) as an error as they cannot be
    represented by valid UTF-8.
    Where such escapes are used for outputting non-printable
    (including unassigned) characters, 6 hex digits are used (rather
    than 8 with leading zeros).  For clarity, braces are used, for
    example \U{0effff}.
  * The parser now looks for non-ASCII spaces on Solaris (as
    previously on most other OSes).
  * There are warnings (including from the parser) on the use of
    unpaired surrogate Unicode points such as \uD834.  (These cannot
    be converted to valid UTF-8.)
  * Functions nchar(), tolower(), toupper() and chartr() and those
    using regular expressions have more support for inputs with a
    marked Latin-1 encoding.
  * The character-classification functions used (by default) to
    replace the system iswxxxxx functions on Windows, macOS and AIX
    have been updated to Unicode 13.0.0.
    The character-width tables have been updated to include new
    assignments in Unicode 13.0.0.
  * The code for evaluating default (extended) regular expressions
    now uses the same character-classification functions as the rest
    of R (previously they differed on Windows, macOS and AIX).
  * There is a build-time option to replace the system's
    wide-character wctrans C function by tables shipped with R: use
    configure option --with-internal-towlower or (on Windows)
  - DUSE_RI18N_CASE in CFLAGS when building R.  This may be needed
    to allow tolower() and toupper() to work with Unicode characters
    beyond the Basic Multilingual Plane where not supported by system
    functions (e.g. on Solaris where it is the new default).
  * R is more careful when truncating UTF-8 and other multi-byte
    strings that are too long to be printed, passed to the system or
    libraries or placed into an internal buffer.  Truncation will no
    longer produce incomplete multibyte characters.
  DEPRECATED AND DEFUNCT:
  * Function plclust() from the package stats and
    package.dependencies(), pkgDepends(), getDepList(),
    installFoundDepends(), and vignetteDepends() from package tools
    are defunct.
  * Defunct functions checkNEWS() and readNEWS() from package tools
    and CRAN.packages() from utils have been removed.
  * R CMD config CXXCPP is defunct (it was deprecated in R 3.6.2).
  * parallel::detectCores() drops support for Irix (retired in 2013).
  * The LINPACK argument to chol.default(), chol2inv(),
    solve.default() and svd() has been defunct since R 3.1.0.  It was
    silently ignored up to R 4.0.3 but now gives an error.
  * Subsetting/indexing, such as ddd[*] or ddd$x on a DOTSXP
    (dot-dot-dot) object ddd has been disabled; it worked by accident
    only and was undocumented.
  BUG FIXES:
  * Many more C-level allocations (mainly by malloc and strdup) are
    checked for success with suitable alternative actions.
  * Bug fix for replayPlot(); this was turning off graphics engine
    display list recording if a recorded plot was replayed in the
    same session.  The impact of the bug became visible if resize the
    device after replay OR if attempted another savePlot() after
    replay (empty display list means empty screen on resize or empty
    saved plot).
  * R CMD check etc now warn when a package exports non-existing S4
    classes or methods, also in case of no "methods" presence.
    (Reported by Alex Bertram; reproducible example and patch by
    Sebastian Meyer in PR#16662.)
  * boxplot() now also accepts calls for labels such as ylab, the
    same as plot().  (Reported by Marius Hofert.)
  * The help page for xtabs() now correctly states that addNA is
    setting na.action = na.pass among others.  (Reported as PR#17770
    by Thomas Soeiro.)
  * The R CMD check &lt;pkg&gt; gives a longer and more comprehensible
    message when DESCRIPTION misses dependencies, e.g., in Imports:.
    (Thanks to the contributors of PR#17179.)
  * update.default() now calls the generic update() on the formula to
    work correctly for models with extended formulas.  (As reported
    and suggested by Neal Fultz in PR#17865.)
  * The horizontal position of leaves in a dendrogram is now correct
    also with center = FALSE.  (PR#14938, patch from Sebastian
    Meyer.)
  * all.equal.POSIXt() no longer warns about and subsequently ignores
    inconsistent "tzone" attributes, but describes the difference in
    its return value (PR#17277).  This check can be disabled _via_
    the new argument check.tzone = FALSE as suggested by Sebastian
    Meyer.
  * as.POSIXct() now populates the "tzone" attribute from its tz
    argument when x is a logical vector consisting entirely of NA
    values.
  * x[[2^31]] &lt;- v now works.  (Thanks to the report and patch by
    Suharto Anggono in PR#17330.)
  * In log-scale graphics, axis() ticks and label positions are now
    computed more carefully and symmetrically in their range,
    typically providing _more_ ticks, fulfilling wishes in PR#17936.
    The change really corresponds to an improved axisTicks() (package
    grDevices), potentially influencing grid and lattice, for
    example.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now correct to at
    least five digits where it was catastrophically wrong,
    previously.
  * sum(df) and similar "Summary"- and "Math"-group member functions
    now work for data frames df with logical columns, notably also of
    zero rows.  (Reported to R-devel by Martin "b706".)
  * unsplit() had trouble with tibbles due to unsound use of rep(NA,
    len)-indexing, which should use NA_integer_ (Reported to R-devel
    by Mario Annau.)
  * pnorm(x, log.p = TRUE) underflows to -Inf slightly later.
  * show(&lt;hidden S4 generic&gt;) prints better and without quotes for
    non-hidden S4 generics.
  * read.table() and relatives treated an "NA" column name as missing
    when check.names = FALSE PR#18007.
  * Parsing strings containing UTF-16 surrogate pairs such as
    "\uD834\uDD1E" works better on some (uncommon) platforms.
    sprintf("%X", utf8ToInt("\uD834\uDD1E")) should now give "1D11E"
    on all platforms.
  * identical(x,y) is no longer true for differing DOTSXP objects,
    fixing PR#18032.
  * str() now works correctly for DOTSXP and related exotics, even
    when these are doomed.
    Additionally, it no longer fails for lists with a class and
    "irregular" method definitions such that e.g. lapply(*) will
    necessarily fail, as currently for different igraph objects.
  * Too long lines in environment files (e.g. Renviron) no longer
    crash R. This limit has been increased to 100,000 bytes.
    (PR#18001.)
  * There is a further workaround for FreeType giving incorrect
    italic font faces with cairo-based graphics devices on macOS.
  * add_datalist(*, force = TRUE) (from package tools) now actually
    updates an existing data/datalist file for new content.  (Thanks
    to a report and patch by Sebastian Meyer in PR#18048.)
  * cut.Date() and cut.POSIXt() could produce an empty last interval
    for breaks = "months" or breaks = "years".  (Reported as PR#18053
    by Christopher Carbone.)
  * Detection of the encoding of 'regular' macOS locales such as
    en_US (which is UTF-8) had been broken by a macOS change:
    fortunately these are now rarely used with en_US.UTF-8 being
    preferred.
  * sub() and gsub(pattern, repl, x, *) now keep attributes of x such
    as names() also when pattern is NA (PR#18079).
  * Time differences ("difftime" objects) get a replacement and a
    rep() method to keep "units" consistent.  (Thanks to a report and
    patch by Nicolas Bennett in PR#18066.)
  * The \RdOpts macro, setting defaults for \Sexpr options in an Rd
    file, had been ineffective since R 2.12.0: it now works again.
    (Thanks to a report and patch by Sebastian Meyer in PR#18073.)
  * mclapply and pvec no longer accidentally terminate parallel
    processes started before by mcparallel or related calls in
    package parallel (PR#18078).
  * grep and other functions for evaluating (extended) regular
    expressions handle in Unicode also strings not explicitly flagged
    UTF-8, but flagged native when running in UTF-8 locale.
  * Fixed a crash in fifo implementation on Windows (PR#18031).
  * Binary mode in fifo on Windows is now properly detected from
    argument open (PR#15600, PR#18031).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1622808000">- The line %{__install} -m 755 -d %{_infodir}
  no longer works in TW or Factory.
  But without that line it works everywhere. So this instruction
  was commented out of the spec file.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1628596800">- CHANGES IN R 4.1.1:
  NEW FEATURES:
  * require(pkg, quietly = TRUE) is quieter and in particular does
    not warn if the package is not found.
  DEPRECATED AND DEFUNCT:
  * Use of ftp:// URIs should be regarded as deprecated, with
    on-going support confined to method = "libcurl" and not routinely
    tested.  (Nowadays no major browser supports them.)
  * The non-default method = "internal" is deprecated for http:// and
    ftp:// URIs for both download.file and url.
  * On Windows, method = "wininet" is deprecated for http://,
    https:// and ftp:// URIs for both download.file and url.  (A
    warning is only given for ftp://.)
    For ftp:// URIs the default method is now "libcurl" if available
    (which it is on CRAN builds).
    method = "wininet" remains the default for http:// and https://
    URIs but if libcurl is available, using method = "libcurl" is
    preferred.
  INSTALLATION:
  * make check now works also without a LaTeX installation.  (Thanks
    to Sebastian Meyer's PR#18103.)
  BUG FIXES:
  * make check-devel works again in an R build configured with
  - -without-recommended-packages.
  * qnbinom(p, size, mu) for large size/mu is correct now in a range
    of cases (PR#18095); similarly for the (size, prob)
    parametrization of the negative binomial.  Also qpois() and
    qbinom() are better and or faster for extreme cases.  The
    underlying C code has been modularized and is common to all four
    cases of discrete distributions.
  * gap.axis is now part of the axis() arguments which are passed
    from bxp(), and hence boxplot().  (Thanks to Martin Smith's
    report and suggestions in PR#18109.)
  * .First and .Last can again be set from the site profile.
  * seq.int(from, to, *) and seq.default(..) now work better in large
    range cases where from-to is infinite where the two boundaries
    are finite.
  * all.equal(x,y) now returns TRUE correctly also when several
    entries of abs(x) and abs(y) are close to .Machine$double.xmax,
    the largest finite numeric.
  * model.frame() now clears the object bit when removing the class
    attribute of a value via na.action (PR#18100).
  * charClass() now works with multi-character strings on Windows
    (PR#18104, fixed by Bill Dunlap).
  * encodeString() on Solaris now works again in Latin-1 encoding on
    characters represented differently in UTF-8.  Support for
    surrogate pairs on Solaris has been improved.
  * file.show() on Windows now works with non-ASCII path names
    representable in the current native encoding (PR#18132).
  * Embedded R on Windows can now find R home directory via the
    registry even when installed only for the current user
    (PR#18135).
  * pretty(x) with finite x now returns finite values also in the
    case where the extreme x values are close in size to the maximal
    representable number .Machine$double.xmax.
    Also, it's been tweaked for very small ranges and when a boundary
    is close (or equal) to zero; e.g., pretty(c(0,1e-317)) no longer
    has negative numbers, currently still warning about a very small
    range, and pretty(2^-(1024 - 2^-1/(c(24,10)))) is more accurate.
  * The error message for not finding vignette files when weaving has
    correct file sizes now. (Thanks to Sebastian Meyer's PR#18154.)
  * dnbinom(20, &lt;large&gt;, 1) now correctly gives 0, and similar cases
    are more accurate with underflow precaution.  (Reported by Francisco Vera Alcivar in PR#18072.)</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635163200">- repaired https://bugzilla.suse.com/show_bug.cgi?id=1191380
  (rpmacros now go to rpmmacrodir)
- minor clean-ups in spec file</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635768000">- CHANGES IN R 4.1.2:
  C-LEVEL FACILITIES:
  * The workaround in headers R.h and Rmath.h (using namespace std;)
    for the Oracle Developer Studio compiler is no longer needed now
    C++11 is required so has been removed.  A couple more usages of
    log() (which should have been std::log()) with an int argument
    are reported on Solaris.
  * The undocumented limit of 4095 bytes on messages from the
    S-compatibility macros PROBLEM and MESSAGE is now documented and
    longer messages will be silently truncated rather than
    potentially causing segfaults.
  * If the R_NO_SEGV_HANDLER environment variable is non-empty, the
    signal handler for SEGV/ILL/BUS signals (which offers recovery
    user interface) is not set. This allows more reliable debugging
    of crashes that involve the console.
  DEPRECATED AND DEFUNCT:
  * The legacy S-compatibility macros PROBLEM, MESSAGE, ERROR, WARN,
    WARNING, RECOVER, ... are deprecated and will be hidden in R
    4.2.0. R's native interface of Rf_error and Rf_warning has long
    been preferred.
  BUG FIXES:
  * .mapply(F, dots, .) no longer segfaults when dots is not a list
    and uses match.fun(F) as always documented; reported by Andrew
    Simmons in PR#18164.
  * hist(&lt;Date&gt;, ...) and hist(&lt;POSIXt&gt;, ...)  no longer pass
    arguments for rect() (such as col and density) to axis().
    (Thanks to Sebastian Meyer's PR#18171.)
  * \Sexpr{ch} now preserves Encoding(ch). (Thanks to report and
    patch by Jeroen Ooms in PR#18152.)
  * Setting the RNG to "Marsaglia-Multicarry" e.g., by RNGkind(), now
    warns in more places, thanks to Andr'e Gillibert's report and
    patch in PR#18168.
  * gray(numeric(), alpha=1/2) no longer segfaults, fixing PR#18183,
    reported by Till Krenz.
  * Fixed dnbinom(x, size=&lt;very_small&gt;, .., log=TRUE) regression,
    reported by Martin Morgan.
  * as.Date.POSIXlt(x) now keeps names(x), thanks to Davis Vaughan's
    report and patch in PR#18188.
  * model.response() now strips an "AsIs" class typically, thanks to
    Duncan Murdoch's report and other discussants in PR#18190.
  * try() is considerably faster in case of an error and long call,
    as e.g., from some do.call().  Thanks to Alexander Kaever's
    suggestion posted to R-devel.
  * qqline(y = &lt;object&gt;) such as y=I(.), now works, see also
    PR#18190.
  * Non-integer mgp par() settings are now handled correctly in
    axis() and mtext(), thanks to Mikael Jagan and Duncan Murdoch's
    report and suggestion in PR#18194.
  * formatC(x) returns length zero character() now, rather than ""
    when x is of length zero, as documented, thanks to Davis
    Vaughan's post to R-devel.
  * removeSource(fn) now retains (other) attributes(fn).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1647000000">- CHANGES IN R 4.1.3:
  NEW FEATURES:
  * The default version of Bioconductor has been changed to 3.14.
    (This is used by setRepositories and the menus in GUIs.)
  UTILITIES:
  * R CMD check --as-cran has a workaround for a bug in versions of
    file up to at least 5.41 which mis-identify DBF files last
    changed in 2022 as executables.
  C-LEVEL FACILITIES:
  * The legacy S-compatibility macros SINGLE_* in R_ext/Constants.h
    (included by R.h) are deprecated and will be removed in R 4.2.0.
  BUG FIXES:
  * Initialization of self-starting nls() models with initialization
    functions following the pre-R-4.1.0 API (without the ...
    argument) works again for now, with a deprecation warning.
  * Fixed quoting of ~autodetect~ in Java setting defaults to avoid
    inadvertent user lookup due to leading ~, reported in PR#18231 by
    Harold Gutch.
  * substr(., start, stop) &lt;- v now treats _negative_ stop values
    correctly.  Reported with a patch in PR#18228 by Brodie Gaslam.
  * Subscripting an array x without dimnames by a
    length(dim(x))-column character matrix gave "random" non-sense,
    now an error; reported in PR#18244 by Mikael Jagan.
  * ...names() now matches names(list(...)) closely, fixing PR#18247.
  * all.equal(*, scale = s) now works as intended when length(s) &gt; 1,
    partly thanks to Michael Chirico's PR#18272.
  * print(x) for long vectors x now also works for named atomic
    vectors or lists and prints the correct number when reaching the
    getOption("max.print") limit; partly thanks to a report and
    proposal by Hugh Parsonage to the R-devel list.
  * all.equal(&lt;selfStart&gt;, *) no longer signals a deprecation
    warning.
  * reformulate(*, response=r) gives a helpful error message now when
    length(r) &gt; 1, thanks to Bill Dunlap's PR#18281.
  * Modifying globalCallingHandlers inside withCallingHandlers() now
    works or fails correctly, thanks to Henrik Bengtsson's PR#18257.
  * hist(&lt;Date&gt;, breaks = "days") and hist(&lt;POSIXt&gt;, breaks = "secs")
    no longer fail for inputs of length 1.
  * qbeta(.001, .9, .009) and similar cases now converge correctly
    thanks to Ben Bolker's report in PR#17746.
  * window(x, start, end) no longer wrongly signals "'start' cannot
    be after 'end'", fixing PR#17527 and PR#18291.
  * data() now checks that its (rarely used) list argument is a
    character vector - a couple of packages passed other types and
    gave incorrect results.
  * which() now checks its arr.ind argument is TRUE rather coercing
    to logical and taking the first element - which gave incorrect
    results in package code.
  * model.weights() and model.offset() more carefully extract their
    model components, thanks to Ben Bolker and Tim Taylor's R-devel
    post.
  * list.files(recursive = TRUE) now shows all broken symlinks
    (previously, some of them may have been omitted, PR#18296).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1650628800">- CHANGES IN R 4.2.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * The formula method of aggregate() now matches the generic in
    naming its first argument x (resolving PR#18299 by Thomas
    Soeiro).
    This means that calling aggregate() with a formula as a named
    first argument requires name formula in earlier versions of R and
    name x now, so portable code should not name the argument (code
    in many packages did).
  * Calling &amp;&amp; or || with either argument of length greater than one
    now gives a warning (which it is intended will become an error).
  * Calling if() or while() with a condition of length greater than
    one gives an error rather than a warning.  Consequently,
    environment variable _R_CHECK_LENGTH_1_CONDITION_ no longer has
    any effect.
  * Windows users should consult the WINDOWS section below for some
    profound changes including
  * Support for 32-bit builds has been dropped.
  * UTF-8 locales are used where available.
  * The default locations for the R installation and personal
    library folder have been changed.
    Thanks to Tomas Kalibera for months of work on the Windows port
    for this release.
  NEW FEATURES:
  * matrix(x, n, m) now warns in more cases where length(x) differs
    from n * m, as suggested by Abby Spurdle and Wolfgang Huber in
    Feb 2021 on the R-devel mailing list.
    This warning can be turned into an error by setting environment
    variable _R_CHECK_MATRIX_DATA_ to TRUE: R CMD check --as-cran
    does so unless it is already set.
  * Function file_test() in package utils gains tests for symlinks,
    readability and writability.
  * capabilities("libxml") is now false.
    The description of capabilities("http/ftp") now reflects that it
    refers to the default method, no longer the internal one.
  * simplify2array() gains an except argument for controlling the
    exceptions used by sapply().
  * Environment variables R_LIBS_USER and R_LIBS_SITE are both now
    set to the R system default if unset or empty, and can be set to
    NULL to indicate an empty list of user or site library
    directories.
  * The warning for axis()(-like) calls in cases of relatively small
    ranges (typically in log-scale situations) is slightly improved
    _and_ suppressed from explicit calls to .axisPars() as has always
    been the intention.
  * The contrasts setter function `contrasts&lt;-` gains an explicit
    default how.many = NULL rather than just using missing(how.many).
  * grid.pretty() gains a new optional argument n = 5.
  * There is a new function .pretty() with option bounds as a
    technical-utility version of pretty().  It and pretty() gain a
    new argument f.min with a better than back-compatible default.
  * Function grDevices::axisTicks() and related functions such as
    graphics::axis() work better, notably for the log scale; partly
    because of the pretty() improvements, but also because care is
    taken e.g., when ylim is finite but diff(ylim) is infinite.
  * nclass.FD() gains a digits option.
  * The R Mathlib internal C function bd0() (called indirectly from a
    dozen probability density and distribution functions such as
    dpois(), dbinom(), dgamma(), pgamma() _etc_) has been
    complemented by a more sophisticated and (mostly) more accurate C
    function ebd0(), currently called only by internal dpois_raw()
    improving accuracy for R level dpois() and potentially others
    calling it such as dnbinom(), dgamma() or pgamma().  (Thanks to
    Morten Welinder's PR#15628.)
  * write.ftable() gains sep = " " argument as suggested by Thomas
    Soeiro.
  * The names of the locale categories supported by R's
    Sys.getlocale() and Sys.setlocale() are now provided by variable
    .LC.categories in the base namespace.
  * The Date and POSIXt methods for hist() and the histogram method
    for plot() now also use the new default col = "lightgray" in
    consistency with the corresponding change to hist()'s default for
    R 4.0.0.
  * hist.default() gains new fuzz argument, and the histogram plot
    method no longer uses fractional axis ticks when displaying
    counts ("Frequency").
  * mapply() and hence Map() now also obey the "max-or-0-if-any"
    recycling rule, such that, e.g., Map(`+`, 1:3, 1[0]) is valid
    now.
  * as.character(&lt;obj&gt;) for "hexmode" or "octmode" objects now
    fulfils the important basic rule as.character(x)[j] ===
    as.character(x[j]).
  * The set utility functions, notably intersect() have been tweaked
    to be more consistent and symmetric in their two set arguments,
    also preserving a common mode.
  * substr(ch, start,end) &lt;- new now e.g., preserves names(ch); ditto
    for substring(), thanks to a patch from Brodie Gaslam.
  * plot(&lt;lm&gt;) gains a extend.ylim.f argument, in partial response to
    PR#15285; further PR#17784 is fixed thanks to several
    contributors and a patch by Elin Waring.  The Cook's dist
    contours get customizable via cook.col and cook.lty with a
    different default color and their legend is nicer by default and
    customizable via cook.legendChanges.
  * Attempting to subset an object that is not subsettable now
    signals an error of class notSubsettableError. The
    non-subsettable object is contained in the object field of the
    error condition.
  * Subscript-out-of-bounds errors are now signaled as errors of
    class subscriptOutOfBoundsError.
  * Stack-overflow errors are now signaled as errors inheriting from
    class stackOverflowError. See ?stackOverflowError for more
    details.
  * New partly experimental Sys.setLanguage() utility, solving the
    main problem of PR#18055.
  * gettext() and gettextf() get a new option trim = TRUE which when
    set to false allows translations for strings such as "Execution
    halted\n" typical for C code.
  * An experimental implementation of hash tables is now available.
    See ?hashtab for more details.
  * identical() gains a extptr.as.ref argument for requesting that
    external pointer objects be compared as reference objects.
  * reorder() gets an argument decreasing which it passes to sort()
    for level creation; based on the wish and patch by Thomas Soeiro
    in PR#18243.
  * as.vector() gains a data.frame method which returns a simple
    named list, also clearing a long standing 'FIXME' to enable
    as.vector(&lt;data.frame&gt;, mode="list").  This breaks code relying
    on as.vector(&lt;data.frame&gt;) to return the unchanged data frame.
  * legend() is now vectorized for arguments cex, x.intersp, and
    text.width.  The latter can now also be specified as a vector
    (one element for each column of the legend) or as NA for
    computing a proper column wise maximum value of strwidth(legend).
    The argument y.intersp can be specified as a vector with one
    entry for each row of the legend.
    legend() also gains new arguments title.cex and title.font.
    Thanks to Swetlana Herbrandt.
  * Deparsing no longer remaps attribute names dim, dimnames, levels,
    names and tsp to historical S-compatible names (which structure()
    maps back).
  * sample() and sample.int() have additional sanity checks on their
    size and n arguments.
    all.equal.numeric() gains a sanity check on its tolerance
    argument - calling all.equal(a, b, c) for three numeric vectors
    is a surprisingly common error.
    mean(na.rm =), rank(na.last =), barplot(legend.text =),
    boxplot(), contour(drawlabels =), polygon(border =) and
    methods::is(class2 =) have more robust sanity checks on their
    arguments.
    R CMD Rd2pdf (used by R CMD check) has a more robust sanity check
    on the format of \alias{} commands.
  * psigamma(x, deriv) for negative x now also works for deriv = 4
    and 5; their underlying C level dpsifn() is documented in
    'Writing R Extensions'.
  * The HTML help system now uses HTML5 (wish of PR#18149).
  * ks.test() now provides exact p-values also with ties and MC
    p-values in the two-sample (Smirnov) case.  By Torsten Hothorn.
  * ks.test() gains a formula interface, with y ~ 1 for the
    one-sample (Kolmogorov) test and y ~ group for the two-sample
    (Smirnov) test.  Contributed by Torsten Hothorn.
  * The return value from ks.test() now has class c("ks.test",
    "htest") - packages using try() need to take care to use
    inherits() and not == on the class.
  * New functions psmirnov(), qsmirnov() and rsmirnov() in package
    stats implementing the asymptotic and exact distributions of the
    two-sample Smirnov statistic.
  * iconv() now allows sub = "c99" to use C99-style escapes for UTF-8
    inputs which cannot be converted to encoding to.
  * In a forward pipe |&gt; expression it is now possible to use a named
    argument with the placeholder _ in the rhs call to specify where
    the lhs is to be inserted.  The placeholder can only appear once
    on the rhs.
  * The included LAPACK sources have been updated to version 3.10.0,
    except for the four Fortran 77 routines which 3.10.0 has
    re-implemented in Fortran 90 (where the older versions have been
    retained as the R build process does not support Fortran 90).
  * path.expand() and most other uses of tilde expansion now warn if
    a path would be too long if expanded.  (An exception is
    file.exists(), which silently returns false.)
  * trunc(&lt;Date&gt;, *) now supports units = "months" or "years" for
    consistency with the POSIXt method, thanks to Dirk Eddelbuettel's
    proposal in PR#18099.
  * list2DF() now checks that its arguments are of the same length,
    rather than use recycling.
  * The HTML help system has several new features: LaTeX-like math
    can be typeset using either KaTeX or MathJax, usage and example
    code is highlighted using Prism, and for dynamic help the output
    of examples and demos can be shown within the browser if the
    knitr package is installed. These features can be disabled by
    setting the environment variable _R_HELP_ENABLE_ENHANCED_HTML_ to
    a false value.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 15
    and so packages that provide graphics devices should be
    reinstalled.
  * The grid package now allows the user to specify a "vector" of
    pattern fills.  The fill argument to gpar() accepts a list of
    gradients and/or patterns and the functions linearGradient(),
    radialGradient(), and pattern() have a new group argument.
    Points grobs (data symbols) can now also have a pattern fill.
    The grobCoords() function now returns a more informative and
    complex result.
  * The grid package has new functions for drawing isolated groups:
    grid.group(), grid.define(), and grid.use().  These functions add
    compositing operators and affine transformations to R's graphics
    capabilities.
    The grid package also has new functions for stroking and filling
    paths: grid.stroke(), grid.fill(), and grid.fillStroke().
    A new function as.path() allows the user to specify the fill rule
    for a path that is to be used for clipping, stroking, or filling;
    available options are "winding" and "evenodd".  A new function
    as.mask() allows the user to specify the type of a mask;
    available options are "alpha" and "luminance".
    These new features are only supported so far (at most) on the
    Cairo-based graphics devices and on the pdf() device.
  * dev.capabilities() reports on device support for the new
    features.
  * par() now warns about unnamed non-character arguments to prevent
    misuse such as {usr &lt;- par("usr"); par(usr)}.
  INSTALLATION:
  * Facilities for accessing ftp:// sites are no longer tested
    (except _pro tem_ for curlGetHeaders()) as modern browsers have
    removed support.
  * R can now be built with DEFS = -DSTRICT_R_HEADERS .
  PACKAGE INSTALLATION:
  * R CMD INSTALL no longer tangles vignettes. This completes an R
    CMD build change in R 3.0.0 and affects packages built before R
    3.0.2. Such packages should be re-made with R CMD build to have
    the tangled R code of vignettes shipped with the tarball.
  * USE_FC_LEN_T will become the default: this uses the correct
    prototypes for Fortran BLAS/LAPACK routines called from C/C++,
    and requires adjustment of most such calls - see 'Writing R
    Extensions' SS6.6.2.  (This has been supported since R 3.6.2.)
  * Package installation speed for packages installed with
    keep.source has been improved. This resolve the issue reported by
    Ofek Shilon in PR#18236.
  UTILITIES:
  * R CMD check can optionally report files/directories left behind
    in home, /tmp (even though TMPDIR is set) and other directories.
    See the "R Internals" manual for details.
  * R CMD check now reports byte-compilation errors during
    installation.  These are not usually fatal but may result in
    parts of the package not being byte-compiled.
  * _R_CHECK_DEPENDS_ONLY_ can be applied selectively to examples,
    tests and/or vignettes in R CMD check: see the "R Internals"
    manual.
  * _R_CHECK_SRC_MINUS_W_IMPLICIT_ now defaults to true: recent
    versions of Apple clang on macOS have made implicit function
    declarations in C into a compilation error.
  * R CMD check --as-cran makes use of the environment variable
    AUTORECONF.  See the "R Internals" manual SS8 for further details.
  * R CMD check --use-valgrind also uses valgrind when re-building
    vignettes as some non-Sweave vignettes unhelpfully comment out
    all their code when R CMD check runs vignettes.
  * Errors in re-building vignettes (unless there are LaTeX errors)
    are reported by R CMD check as ERROR rather than WARNING when
    running vignettes has been skipped (as it frequently is in CRAN
    checks and by --as-cran).
  * R CMD Rd2pdf gains a --quiet option that is used by R CMD build
    when building the PDF package manual.
  * R CMD Rd2pdf now always runs LaTeX in batch mode, consistent with
    Texinfo &gt;= 6.7. The --batch option is ignored.
  * R CMD build and R CMD check now include the Rd file name and line
    numbers in the error message of an \Sexpr evaluation failure.
  * For packages using the \doi Rd macro (now an install-time \Sexpr)
    but no other dynamic Rd content, R CMD build now produces a
    smaller tarball and is considerably faster - skipping temporary
    package installation.
  C-LEVEL FACILITIES:
  * The non-API header R_ext/R-ftp-http.h is no longer provided, as
    the entry points it covered are now all defunct.
  * A number of non-API declarations and macro definitions have been
    moved from the installed header Rinternals.h to the internal
    header Defn.h. Packages that only use entry points and
    definitions documented to be part of the API as specified in
    'Writing R Extensions' SS6 should not be affected.
  * The macro USE_RINTERNALS no longer has any effect when compiling
    package code.  Packages which also use R_NO_REMAP will need to
    ensure that the remapped names are used for calls to API
    functions that were formerly also made available as macros.
  * The deprecated legacy S-compatibility macros PROBLEM, MESSAGE,
    ERROR, WARN, WARNING, RECOVER, ... are no longer defined in
    R_exts/RS.h (included by R.h).  Replace these by calls to
    Rf_error and Rf_warning (defined in header R_ext/Error.h included
    by R.h).
    Header R_ext/RS.h no longer includes R_ext/Error.h.
  * Header R_ext/Constants.h (included by R.h) when included from C++
    now includes the C++ header cfloat rather than the C header
    float.h (now possible as C++11 is required).
  * The legacy S-compatibility macros DOUBLE_* in R_ext/Constants.h
    (included by R.h) are deprecated.
  * The deprecated S-compatibility macros SINGLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * R_Calloc, R_Free and R_Realloc are preferred to their unprefixed
    forms and error messages now use the prefix. These forms were
    introduced in R 3.4.0 and are available even when
    STRICT_R_HEADERS is defined.
  * rmultinom has been documented in 'Writing R Extensions' SS6 so is
    now part of the R API.
  * Similarly, Rtanpi, called from R level tanpi() is now part of the
    R API.
  * The long-deprecated, undocumented and non-API entry point call_R
    is no longer declared in R_ext/RS.h (included by R.h).
  * The header S.h which has been unsupported since Jan 2016 has been
    removed.  Use R.h instead.
  DEPRECATED AND DEFUNCT:
  * The (non-default and deprecated) method = "internal" for
    download.file() and url() no longer supports http:// nor ftp://
    URIs.  (It is used only for file:// URIs.)
    On Windows, download.file(method = "wininet") no longer supports
    ftp:// URIs.  (It is no longer the default method, which is
    "libcurl" and does.)
    On Windows, the deprecated method = "wininet" now gives a warning
    for http:// and https:// URIs for both download.file() and url().
    (It is no longer the default method.)
  * On Windows, the command-line option --max-mem-size and
    environment variable R_MAX_MEM_SIZE are defunct.  The memory
    allocation limit was important for 32-bit builds, but these are
    no longer supported.
  * default.stringsAsFactors() is now formally deprecated, where that
    was only mentioned on its regular help page, previously.  So it
    now gives a warning if called.
  * unix.time() is defunct now; it had been deprecated since R 3.4.0.
  BUG FIXES:
  * Setting digits = 0 in format(), print.default() (and hence
    typically print()) or options() is again invalid.  Its behaviour
    was platform-dependent, and it is unclear what "zero significant
    digits" should mean (PR#18098).
  * Messages from C code in the cairo section of package grDevices
    are now also offered for translation, thanks to Michael Chirico's
    PR#18123.
  * mean(x) with finite x now is finite also without "long.double"
    capability.
  * R CMD Rd2pdf no longer leaves an empty build directory behind
    when it aborts due to an already existing output file.  (Thanks
    to Sebastian Meyer's PR#18141.)
  * density(x, weights = w, na.rm = TRUE) when anyNA(x) is true, now
    removes weights "in parallel" to x, fixing PR#18151, reported by
    Matthias Gondan.  Additionally, it gets a subdensity option.
  * Conversion of \Sexpr[]{&lt;expR&gt;} to LaTeX or HTML no longer
    produces long blocks of empty lines when &lt;expR&gt; itself contains
    several lines all producing empty output.  Thanks to a report and
    patch by Ivan Krylov posted to R-devel.
  * R CMD build no longer fails if a package vignette uses child
    documents and inst/doc exists.  (Thanks to Sebastian Meyer's
    PR#18156.)
  * When an R documentation ('help' source) file man/foo.Rd in a
    package has \donttest{..} examples with a syntax error, it is now
    signalled as ERROR and with correct line numbers relating to the
  * -Ex.R file, thanks to Duncan Murdoch and Sebastian Meyer's
    reports and patch proposals in PR#17501.
  * Improved determination of the correct translation domain in
    non-base packages, addressing the combination of PR#18092 and
    PR#17998 (#c6) with reports and _augmented_ patch #2904 by
    Suharto Anggono.
    Note that "R-base" is no longer the default domain e.g., for
    top-level calls to gettext(); rather translation needs explicit
    domain = * specification in such cases.
  * identical(attrib.as.set=FALSE) now works correctly with data
    frames with default row names (Thanks to Charlie Gao's PR#18179).
  * txtProgressBar() now enforces a non-zero width for argument char,
    without which no progress can be visible.
  * dimnames(table(d)) is more consistent in the case where d is a
    list with a single component, thanks to Thomas Soeiro's report to
    R-devel.
    Further, table(d1, d2) now gives an error when d1 and d2 are data
    frames as suggested by Thomas in PR#18224.
  * Fix for drawing semi-transparent lines and fills on the native
    Windows graphics device (PR#18219 and PR#16694).  Thanks to Nick
    Ray for helpful diagnosis on Bugzilla.
  * The deparser now wraps sub-expressions such as if(A) ..  with
    parentheses when needed; thanks to Duncan Murdoch's PR#18232 and
    Lionel Henry's patches there.
  * remove.packages() no longer tries to uninstall Priority: base
    packages, thanks to a report and suggestions by Colin Fay in
    PR#18227.
  * win.metafile() now has xpinch and ypinch arguments so that the
    user can override Windows' (potentially wrong) guess at device
    dimensions.
  * x[i] and x[[i]] for non-integer i should now behave in all cases
    as always documented: the index used is equivalent to
    as.integer(i) unless that would overflow where trunc(i) is used
    instead; thanks to Suharto Anggono's report and patch proposals
    in PR#17977.
  * asOneSidedFormula() now associates the resulting formula with the
    global environment rather than the evaluation environment created
    for the call.
  * &lt;bibentry&gt;$name now matches the field name case-insensitively,
    consistent with bibentry() creation and the replacement method.
  * cbind() failed to detect some length mismatches with a mixture of
    time-series and non-time-series inputs.
  * The default LaTeX style file Sweave.sty used by the RweaveLatex
    driver no longer loads the obsolete ae package; thanks to a
    report by Thomas Soeiro in PR#18271.  Furthermore, it now skips
    \usepackage[T1]{fontenc} for engines other than pdfTeX (if
    detected) or if the new [nofontenc] option is used.
  * smooth.spline() now stores its logical cv argument more safely,
    fixing a rare bug when printing, and also stores n.
  * smooth.spline(x,y,*) now computes the cv.crit statistic
    correctly, also when is.unsorted(x), fixing PR#18294.
  * The data.frame method of rbind() now warns when binding
    not-wholly-recycling vectors, by analogy to the default method
    (for matrices).
  * setAs() finds the correct class for name to when multiple
    packages define a class with that name. Thanks to Gabor Csardi
    for the report.
  * Fix for detaching a package when two classes of the same name are
    present in method signatures for the same generic. Thanks to
    Gabor Csardi for the report.
  * match.arg("", c("", "a", "B")) gives a better error message, in
    part from PR#17959, thanks to Elin Waring.
  * R CMD Sweave --clean no longer removes pre-existing files or
    subdirectories (PR#18242).
  * The quartz() device no longer splits polylines into subpaths.
    That has caused narrowly-spaced lines with many points to always
    look solid even when dashed line type was used due to dash phase
    restarts.
  * Deparsing constructs such as quote(1 + `!`(2) + 3) works again as
    before R 3.5.0, thanks to the report and patch in PR#18284 by
    Suharto Anggono.
  * as.list(f) for a factor f now keeps names(f), fixing PR#18309.
  * qbeta(.001, .9, .009) and analogous qf() calls now return a
    correct value instead of NaN or wrongly 1, all with a warning;
    thanks to the report by Ludger Goeminne in PR#18302.
  * plot.lm() failed to produce the plot of residuals vs.  factor
    levels (i.e., which=5 when leverages are constant) for models
    with character predictors (PR#17840).
  * interaction.plot(..., xtick = TRUE) misplaced the x-axis line
    (PR#18305).
  * Not strictly fixing a bug, format()ing and print()ing of
    non-finite Date and POSIXt values NaN and +/-Inf no longer show
    as NA but the respective string, e.g., Inf, for consistency with
    numeric vector's behaviour, fulfilling the wish of PR#18308.
  * R CMD check no longer runs test scripts generated from
    corresponding .Rin files twice and now signals an ERROR if
    processing an .Rin script fails.
  * tools::Rd2txt() used for plain-text help pages now renders \hrefs
    (if tools::Rd2txt_options(showURLs = TRUE)) and \urls with
    percent-encoding and standards-compliant delimiting style (angle
    brackets and no URL: prefix).  \email is now rendered with a
    mailto: prefix.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1655985600">- CHANGES IN R 4.2.1:
  NEW FEATURES:
  * New function utils::findCRANmirror() to find out if a CRAN mirror
    has been selected, otherwise fallback to the main site.  This
    behaves in the same way as tools::CRAN_package_db() and is
    intended for packages wishing to access CRAN for purposes other
    than installing packages.
    The need for this was shown by a day when the main CRAN website
    was offline and a dozen or so packages which had its URL
    hardcoded failed their checks.
  INSTALLATION on a UNIX-ALIKE:
  * The libraries searched for by --with-blas (without a value) now
    include BLIS (after OpenBLAS but before ATLAS).  And on macOS,
    the Accelerate framework (after ATLAS).  (This is patterned after
    the AX_BLAS macro from the Autoconf Archive.)
  * The included LAPACK sources have been updated to 3.10.1.
  UTILITIES:
  * The (full path to) the command tidy to be used for HTML
    validation can be set by environment variable R_TIDYCMD.
  * Setting environment variable _R_CHECK_RD_VALIDATE_RD2HTML_ to a
    false value will override R CMD check --as-cran and turn off HTML
    validation.  This provides a way to circumvent a problematic
    tidy.
    The 2006 version that ships with macOS is always skipped.
  C-LEVEL FACILITIES:
  * The undocumented legacy declarations of Sint, Sfloat, SINT_MAX
    and SINT_MIN in header R.h are deprecated.
  BUG FIXES:
  * fisher.test(d) no longer segfaults for "large" d; fixing PR#18336
    by preventing/detecting an integer overflow reliably.
  * tar(., files=*) now produces correctly the warning about invalid
    uid or gid of files, fixing PR#18344, reported by Martin Morgan.
  * tk_choose.files() with multi = FALSE misbehaved on paths
    containing spaces (PR#18334) (regression introduced in R 4.0.0).
  * sort(x, partial = ind, *) now works correctly notably for the
    non-default na.last = FALSE or TRUE, fixing PR#18335 reported by
    James Edwards.
  * Environment variable _R_CHECK_XREFS_REPOSITORIES_ is only used
    for checking .Rd cross-references in R CMD check (as documented)
    and not for other uses looking for a CRAN mirror.
  * The search for a CRAN mirror when checking packages now uses
    getOption("repos") if that specifies a CRAN mirror, even when it
    does not also specify all three Bioconductor repositories (as was
    previously required).
  * The HTML code generated by tools::Rd2HTML() has been improved to
    pass tidy 5.8.0.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1667217600">- CHANGES IN R 4.2.2:
  NEW FEATURES:
  * tools::Rdiff(useDiff = TRUE) checks for the presence of an
    external diff command and switches to useDiff = FALSE if none is
    found.  This allows R CMD Rdiff to always work.
  * On Windows, environment variable R_LIBCURL_SSL_REVOKE_BEST_EFFORT
    can be used to switch to only 'best-effort' SSL certificate
    revocation checks with the default "libcurl" download method.
    This reduces security, but may be needed for downloads to work
    with MITM proxies (PR#18379).
  * (macOS) The run-time check for libraries from XQuartz for X11 and
    Tcl/Tk no longer uses otool from the Apple Developer Tools
    (PR#18400).
  * The LaTeX style for producing the PDF manuals, Rd.sty, now loads
    the standard amsmath, amsfonts and amssymb packages for greater
    coverage of math commands in the Rd \eqn and \deqn macros.  The
    \mathscr LaTeX command is also provided (via the mathrsfs
    package, if available, or the amsfonts bundle otherwise),
    fulfilling the wish of PR#18398.
  * (Windows) The default format of readClipboard() and
    writeClipboard() has been changed to 13 (CF_UNICODETEXT).
  INSTALLATION on a UNIX-ALIKE:
  * The PDF manuals (if built) can be compacted by the new target
    make compact-pdf (at the top level or in directory doc/manual).
  * There is now configure support for LLVM clang 15 on Linux, which
    defaults to position-independent (PIE) executables whereas
    gfortran does not.
  * Many small changes to ease compilation (and suppress warnings)
    with LLVM clang 15.
  BUG FIXES:
  * Rscript -e would fail if stdin were closed (Reported by Henrik
    Bengtsson.)
  * qt(*, log.p=TRUE) in outer tails no longer produces NaN in its
    final steps, thus fixing PR#18360.
  * tools::Rd2latex() now escapes hashes and ampersands when writing
    URLs, fixing LaTeX errors with such URLs in \tabular.
  * When isGeneric(f, fdef=*) is used with mismatching names, the
    warning is better understandable; reported (with fix) in PR#18370
    by Gabe Becker.
  * poly(x, n) now works again (and is now documented) when x is a
    "Date" or "POSIXct" object, or of another class while fulfilling
    mode(x) == "numeric".  This also enables poly(x, *, raw=TRUE) for
    such variables.  Reported by Michael Chirico to R-devel.
  * write.table(), write.csv() and write.csv2() restore their
    numerical precision (internal equivalent of digits = 15) after an
    interrupt (PR#18384).
  * One can now read also byte FF from a clipboard connection
    (PR#18385).
  * source("") and source(character()) now give more helpful error
    messages.
  * R CMD check --as-cran set _R_CHECK_TIMINGS_ too late to have the
    intended effect.
  * as.POSIXlt(x) now also works with very large dates x, fixing
    PR#18401 reported by Hannes M"uhleisen.
  * Files can now be extracted even from very large zip archives
    (PR#18390, thanks to Martin Jakt).
  * Non-finite objects of class "POSIXlt" are now correctly coerced
    to classes "Date" and "POSIXct"; following up on the extension to
    format() them correctly.
  * Added methods for is.finite(), is.infinite() and is.nan() for
    "POSIXlt" date-time objects.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1678881600">- CHANGES IN R 4.2.3:
  C-LEVEL FACILITIES:
  * The definition of DL_FUNC in R_ext/Rdynload.h has been changed to
    be fully C-compliant.  This means that functions loaded _via_ for
    example R_GetCCallable need to be cast to an appropriate type if
    they have any arguments.
  * .Machine has a new element sizeof.time_t to identify old systems
    with a 32-bit type and hence a limited range of date-times (and
    limited support for dates millions of years from present).
  PACKAGE INSTALLATION:
  * (Windows) The default C++ standard had accidentally been left at
    C++11 when it was changed to C++14 on Unix.
  BUG FIXES:
  * As "POSIXlt" objects may be "partially filled" and their list
    components meant to be recycled, length() now is the length of
    the longest component.
  * as.POSIXlt.Date() could underflow for dates in the far past (more
    than half a million years BCE).
  * as.Date.POSIXlt(x) would return "1970-01-01" instead of NA in R
    4.2.2, e.g., for
    x &lt;- as.POSIXlt(c("2019-01-30","2001-1-1"))
    x$mon &lt;- c(0L, NA); as.Date(x)
  * R CMD check failed to apply enabled _R_CHECK_SUGGESTS_ONLY_ to
    examples and vignettes (regression in R 4.2.0).
  * R CMD check did not re-build vignettes in separate processes by
    default (regression in R 4.2.0).
  * Running examples from HTML documentation now restores previous
    knitr settings and options (PR#18420).
  * Quartz: fonts are now located using Core Graphics API instead of
    deprecated ATS which is no longer supported in the macOS 13 SDK
    (PR#18426).  This also addresses an issue where the currently
    used font in the Quartz device context was not correctly
    retained.
  * (Windows) Math symbols in text drawing functions are again
    rendered correctly (PR#18440).  This fixes a regression in R
    4.2.1 caused by a fix in PR#18382 which uncovered an issue in
    GraphApp due to which the symbol charset was not used with TT
    Symbol font face.
  * (Windows) Installing a package with a src/Makefile.{win,ucrt}
    file includes ~/.R/Makevars.win64 in the search for user
    makevars, as documented in "R Installation and Administration"
    and done for packages with a src/Makevars.{win,ucrt} file.
  * format(&lt;POSIXlt_w/_unbalanced_sec&gt;, "....%OS&lt;n&gt;") with n &gt; 0 no
    longer accidentally uses the unbalanced seconds, thanks to
    Suharto Anggono's report (including patch) in PR#18448.
  * solve.default(a, b) works around issues with some versions of
    LAPACK when a contains NA or NaN values.
  * When UseMethod() cannot dispatch, it no longer segfaults
    producing the error message in case of a long class(), thanks to
    Joris Vankerschaver's report (including patch) in PR#18447.
  * When example(foo, ..) produces graphics on an interactive device
    it needs to open itself, it now leaves devAskNewPage() unchanged
    even when it was FALSE, thus fixing a 14 years old '&lt;FIXME&gt;'.
  * packageDescription() again catches errors from encoding
    conversions. This also fixes broken packageVersion() in C locale
    on systems where iconv does not support transliteration.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1681128000">- add patch to build with libcurl &gt;= 8</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1682078400">- CHANGES IN R 4.3.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Calling &amp;&amp; or || with LHS or (if evaluated) RHS of length greater
    than one is now always an error, with a report of the form
    'length = 4' in coercion to 'logical(1)'
    Environment variable _R_CHECK_LENGTH_1_LOGIC2_ no longer has any
    effect.
  NEW FEATURES:
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.10.1.  (This caused some platform-dependent
    changes to package check output.)  And then to the sources from
    LAPACK version 3.11.0 (with changes only to double complex
    subroutines).
  * The included LAPACK sources have been updated to include the four
    Fortran 90 routines rather than their Fortran 77 predecessors.
    This may give some different signs in SVDs or
    eigendecompositions..  (This completes the transition to LAPACK
    3.10.x begun in R 4.2.0.)
  * The LAPACK sources have been updated to version 3.11.0.  (No new
    subroutines have been added, so this almost entirely bug fixes:
    Those fixes do affect some computations with NaNs, including R's
    NA.)
  * The parser now signals _classed_ errors, notably in case of the
    pipe operator |&gt;.  The error object and message now give line and
    column numbers, mostly as proposed and provided by Duncan Murdoch
    in PR#18328.
  * toeplitz() is now generalized for asymmetric cases, with a
    toeplitz2() variant.
  * xy.coords() and xyz.coords() and consequently, e.g., plot(x,y,
    log = "y") now signal a _classed_ warning about negative values
    of y (where log(.) is NA).  Such a warning can be specifically
    suppressed or caught otherwise.
  * Regular expression functions now check more thoroughly whether
    their inputs are valid strings (in their encoding, e.g. in
    UTF-8).
  * The performance of grep(), sub(), gsub() and strsplit() has been
    improved, particularly with perl = TRUE and fixed = TRUE.  Use of
    useBytes = TRUE for performance reasons should no longer be
    needed and is discouraged: it may lead to incorrect results.
  * apropos() gains an argument dot_internals which is used by the
    completion (help(rcompgen)) engine to also see base internals
    such as .POSIXct().
  * Support in tools::Rdiff() for comparing uncompressed PDF files is
    further reduced - see its help page.
  * qqplot(x, y, ...) gains conf.level and conf.args arguments for
    computing and plotting a confidence band for the treatment
    function transforming the distribution of x into the distribution
    of y (Switzer, 1976, _Biometrika_). Contributed by Torsten
    Hothorn.
  * Performance of package_dependencies() has been improved for cases
    when the number of dependencies is large.
  * Strings newly created by gsub(), sub() and strsplit(), when any
    of the inputs is marked as "bytes", are also marked as "bytes".
    This reduces the risk of creating invalid strings and accidental
    substitution of bytes deemed invalid.
  * Support for readLines(encoding = "bytes") has been added to allow
    processing special text files byte-by-byte, without creating
    invalid strings.
  * iconv(from = "") now takes into account any declared encoding of
    the input elements and uses it in preference to the native
    encoding.  This reduces the risk of accidental creation of
    invalid strings, particularly when different elements of the
    input have different encoding (including "bytes").
  * Package repositories in getOption("repos") are now initialized
    from the repositories file when utils is loaded (if not already
    set, e.g., in .Rprofile).  (From a report and patch proposal by
    Gabriel Becker in PR#18405.)
  * compactPDF() gets a verbose option.
  * type.convert() and hence read.table() get new option tryLogical =
    TRUE with back compatible default.  When set to false, converts
    "F" or "T" columns to character.
  * Added new unit prefixes "R" and "Q" for abbreviating
    (unrealistically large) sizes beyond 10^{27} in standard = "SI",
    thanks to Henrik Bengtsson's PR#18435.
  * as.data.frame()'s default method now also works fine with atomic
    objects inheriting from classes such as "roman", "octmode" and
    "hexmode", such fulfilling the wish of PR#18421, by Benjamin
    Feakins.
  * The as.data.frame.vector() utility now errors for wrong-length
    row.names.  It warned for almost six years, with "Will be an
    error!".
  * sessionInfo() now also contains La_version() and reports codepage
    and timezone when relevant, in both print() and toLatex() methods
    which also get new option tzone for displaying timezone
    information when locale = FALSE.
  * New function R_compiled_by() reports the C and Fortran compilers
    used to build R, if known.
  * predict(&lt;lm&gt;, newdata = *) no longer unnecessarily creates an
    offset of all 0s.
  * solve() for complex inputs now uses argument tol and by default
    checks for 'computational singularity' (as it long has done for
    numeric inputs).
  * predict(&lt;rank-deficient lm&gt;, newdata=*) now obeys a new argument
    rankdeficient, with new default "warnif", warning only if there
    are non-estimable cases in newdata.  Other options include
    rankdeficient = "NA", predicting NA for non-estimable newdata
    cases.  This addresses PR#15072 by Russ Lenth and is based on his
    original proposal and discussions in PR#16158 also by David Firth
    and Elin Waring.  Still somewhat experimental.
  * Rgui console implementation now works better with the NVDA screen
    reader when the full blinking cursor is selected.  The underlying
    improvements in cursor handling may help also other screen
    readers on Windows.
  * The drop-field control in GraphApp can now be left with the TAB
    key and all controls can be navigated in the reverse order using
    the Shift+TAB key, improving accessibility of the Rgui
    configuration editor.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now fully accurate
    (instead of to "only" minimally five digits).
  * demo(error.catching) now also shows off withWarnings() and
    tryCatchWEMs().
  * As an experimental feature the placeholder _ can now also be used
    in the rhs of a forward pipe |&gt; expression as the first argument
    in an extraction call, such as _$coef. More generally, it can be
    used as the head of a chain of extractions, such as _$coef[[2]].
  * Spaces in the environment variable used to choose the R session's
    temporary directory (TMPDIR, TMP and TEMP are tried in turn) are
    now fatal.  (On Windows the 'short path' version of the path is
    tried and used if that does not contain a space.)
  * all.equal.numeric() gets a new optional switch giveErr to return
    the numeric error as attribute.  Relatedly,
    stopifnot(all.equal&lt;some&gt;(a, b, ..)) is as "smart" now, as
    stopifnot(all.equal(....)) has been already, thus allowing
    customized all.equal&lt;Some&gt;() wrappers.
  * R on Windows is now able to work with path names longer than 260
    characters when these are enabled in the system (requires at
    least Windows 10 version 1607).  Packages should be updated to
    work with long paths as well, instead of assuming PATH_MAX to be
    the maximum length.  Custom front-ends and applications embedding
    R need to update their manifests if they wish to allow this
    feature.  See
    &lt;https://blog.r-project.org/2023/03/07/path-length-limit-on-windows&gt;
    for more information.
  * 'Object not found' and 'Missing argument' errors now give a more
    accurate error context. Patch provided by Lionel Henry in
    PR#18241.
  * The @ operator is now an S3 generic. Based on contributions by
    Tomasz Kalinowski in PR#18482.
  * New generic chooseOpsMethod() provides a mechanism for objects to
    resolve cases where two suitable methods are found for an Ops
    Group Generic. This supports experimenting with alternative
    object systems. Based on contributions by Tomasz Kalinowski in
    PR#18484.
  * inherits(x, what) now accepts values other than a simple
    character vector for argument what. A new generic, nameOfClass(),
    is called to resolve the class name from what. This supports
    experimenting with alternative object systems. Based on
    contributions by Tomasz Kalinowski in PR#18485.
  * Detection of BLAS/LAPACK in use (sessionInfo()) with FlexiBLAS
    now reports the current backend.
  * The "data.frame" method for subset() now warns about extraneous
    arguments, typically catching the use of = instead of == in the
    subset expression.
  * Calling a:b when numeric a or b is longer than one may now be
    made into an error by setting environment variable
    _R_CHECK_LENGTH_COLON_ to a true value, along the proposal in
    PR#18419 by Henrik Bengtsson.
  * density(x, weights = *) now warns if automatic bandwidth
    selection happens without using weights; new optional warnWbw may
    suppress the warning.  Prompted by Christoph Dalitz' PR#18490 and
    its discussants.
  * rm(list = *) is faster and more readable thanks to Kevin Ushey's
    PR#18492.
  * The plot.lm() function no longer produces a normal Q-Q plot for
    GLMs. Instead it plots a half-normal Q-Q plot of the absolute
    value of the standardized deviance residuals.
  * The print() method for class "summary.glm" no longer shows
    summary statistics for the deviance residuals by default.  Its
    optional argument show.residuals can be used to show them if
    required.
  * The tapply() function now accepts a data frame as its X argument,
    and allows INDEX to be a formula in that case. by.data.frame()
    similarly allows INDICES to be a formula.
  * The performance of df[j] &lt;- value (including for missing j) and
    write.table(df) has been improved for data frames df with a large
    number of columns.  (Thanks to Gabriel Becker's PR#18500,
    PR#18503 and discussants, prompted by a report from Toby Dylan
    Hocking on the R-devel mailing list.)
  * The matrix multiply operator %*% is now an S3 generic, belonging
    to new group generic matrixOps.  From Tomasz Kalinowski's
    contribution in PR#18483.
  * New function array2DF() to convert arrays to data frames,
    particularly useful for the list arrays created by tapply().
  DATES and TIMES:
  * On platforms where (non-UTC) datetimes before 1902 (or before
    1900 as with system functions on recent macOS) are guessed by
    extrapolating time zones from 1902-2037, there is a warning at
    the first use of extrapolation in a session.  (As all time zones
    post 2037 are extrapolation, we do not warn on those.)
  * (Platforms using --with-internal-tzone, including Windows and by
    default macOS). How years are printed in dates or date-times can
    be controlled by environment variable R_PAD_YEARS_BY_ZERO.  The
    default remains to pad to 4 digits by zeroes, but setting value
    no gives no padding (as used by default by glibc).
  * strftime() tries harder to determine the offset for the "%z"
    format, and succeeds on the mainstream R platforms.
  * strftime() has a limit of 2048 bytes on the string produced -
    attempting to exceed this is an error.  (Previously it silently
    truncated at 255 bytes.)
  * sessionInfo() records (and by default prints) the system time
    zone as part of the locale information.  Also, the source
    (system/internal) of the date-time conversion and printing
    functions.
  * Objects of class "POSIXlt" created in this version of R always
    have 11 components: component zone is always set, and component
    gmtoff is set for times in UTC and usually set on the (almost
    all) platforms which have C-level support, otherwise is NA.
  * There are comprehensive validity checks on the structure of
    objects of class "POSIXlt" when converting (including formatting
    and printing).  (This avoids mis-conversions of hand-crafted
    objects.)
  * There is some support for using the native date-time routines on
    macOS: this is only viable on recent versions (e.g. 12.6 and 13)
    and does get wrong some historical changes (before 1900, during
    WWII).  Use of --with-internal-tzone remains the default.
  * as.POSIXct(&lt;numeric&gt;) and as.POSIXlt(.) (without specifying
    origin) now work.  So does as.Date(&lt;numeric&gt;).
  * as.Date.POSIXct(., tz) now treats several tz values, notably
    "GMT" as equivalent to "UTC", proposed and improved by Michael
    Chirico and Joshua Ulrich in PR#17674.
  * Experimental balancePOSIXlt() utility allows using "ragged" and
    or out-of-range "POSIXlt" objects more correctly, e.g., in
    subsetting and subassignments.  Such objects are now documented.
    More experimentally, a "POSIXlt" object may have an attribute
    "balanced" indicating if it is known to be filled or fully
    balanced.
  * Functions axis.Date() and axis.POSIXct() are rewritten to gain
    better default tick locations and better default formats by using
    prettyDate(). Thanks to Swetlana Herbrandt.
  * The mapping of Windows' names for time zones to IANA's 'Olson'
    names has been updated.  When ICU is available (it is by
    default), it is used to get a mapping for the current region set
    in Windows.  This can be overridden by setting environment
    variable TZ to the desired Olson name - see OlsonNames() for
    those currently available.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 16
    and so packages that provide graphics devices should be
    reinstalled.
  * The grDevices and grid packages have new functions for rendering
    typeset glyphs, primarily: grDevices::glyphInfo() and
    grid::grid.glyph().
    Rendering of typeset glyphs is only supported so far on the
    Cairo-based graphics devices and on the pdf() and quartz()
    devices.
  * The defined behaviour for "clear" and "source" compositing
    operators (via grid::grid.group()) has been changed (to align
    better with simple interpretation of original Porter-Duff
    definitions).
  * Support for gradients, patterns, clipping paths, masks, groups,
    compositing operators, and affine transformations has been added
    to the quartz() device.
  INSTALLATION on a UNIX-ALIKE:
  * A system installation of generic LAPACK 3.10.0 or later will be
    preferred to the version in the R sources.
    configure option --with-lapack=no (equivalently --without-lapack)
    forces compilation of the internal LAPACK sources.
    If --with-lapack is not specified, a system liblapack is looked
    for and used if it reports version 3.10.0 or later and does not
    contain BLAS routines.
    Packages using LAPACK will need to be reinstalled if this changes
    to using an external library.
  * On aarch64 Linux platforms using GCC, configure now defaults to
  - fPIC (instead of -fpic), as desired in PR#18326.
  * configure now checks conversion of datetimes between POSIXlt and
    POSIXct around year 2020.  Failure (which has been seen on
    platforms missing tzdata) is fatal.
  * If configure option --with-valgrind-instrumentation is given
    value 1 or 2, option --with-system-valgrind-headers is now the
    default and ignored (with a warning).  It is highly recommended
    that the system headers are installed alongside valgrind: they
    are part of its packaging on some Linux distributions and
    packaged separately (e.g. in the valgrind-devel RPM) on others.
    configure will give a warning if they are not found.
    The system headers will be required in a future release of R to
    build with valgrind instrumentation.
  * libcurl 8.x is now accepted by configure: despite a change in
    major version number it changes neither API nor ABI.
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools43, an update of the Rtools42 toolchain.  It is
    based on gcc 12 and newer versions of MinGW-W64, binutils and
    libraries.  At this time R-devel can still be built using
    Rtools42 without changes, but when R-devel is installed via the
    installer, it will by default look for Rtools43.
  * Old make targets rsync-extsoft and 32-bit ones that are no longer
    needed have been removed.
  * Default builds (including for packages) no longer select C99.
    Thus the C standard used is the default for the compiler, which
    for the toolchain in Rtools43 is C17.  (This is consistent with
    Unix builds.)
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++17 where
    available (which it is on all currently checked platforms): if
    not C++14 or C++11 is used if available otherwise C++ is not
    supported.
  * USE_FC_LEN_T is the default: this uses the correct
    (compiler-dependent) prototypes for Fortran BLAS/LAPACK routines
    called from C/C++, and requires adjustment of many such calls -
    see 'Writing R Extensions' SS6.6.1.
  * There is initial support for C++23 as several compilers are now
    supporting -std=c++23 or -std=c++2b or similar.  As for C++20,
    there no additional configure checks for C++23 features beyond a
    check that the compiler reports a __cplusplus value greater than
    that in the C++20 standard.  C++ feature tests should be used.
  * There is support for a package to indicate the version of the C
    standard which should be used to compile it, and for the
    installing user to specify this.  In most cases R defaults to the
    C compiler's default standard which is C17 (a `bug-fix' of C11) -
    earlier versions of R or compilers may have defaulted to C99.
    Current options are:
    USE_C17 Use a standard that is at most C17.  The intention is to
    allow legacy packages to still be installed when later C
    standards become the default, including packages using new
    keywords as identifiers or with K&amp;R-style function
    declarations.  This will use C17 if available, falling back
    to C11.
    USE_C90 Use the C90 (aka C89) standard.  (As that standard did
    not require compilers to identify that version, all we can
    verify is that the compiler does not claim to be using a
    later standard.  It may accept C99 features - for example
    clang accepts // to make comments.)
    USE_C99 Use the C99 standard. This should be rarely needed - it
    avoids the few new features of C11/C17 which can be useful if
    a package assumes them if C17 is specified and they are not
    implemented.
    USE_C23 Use C23 (or in future, later).  Compiler/library support
    for C23 is still being implemented, but LLVM clang from
    15.0.0 and the upcoming GCC 13 have quite extensive support.
    These can be specified as part of the SystemRequirements field in
    the package's DESCRIPTION file or _via_ options --use-C17 and so
    on of R CMD INSTALL and R CMD SHLIB.
    For further details see "Writing R Extensions" SS1.2.5.
  * (Windows) A src/Makefile.ucrt or src/Makefile.win file is now
    included after R_HOME/etcR_ARCH/Makeconf and so no longer needs
    to include that file itself.  Installation of a package with such
    a file now uses a site Makevars file in the same way as a package
    with a src/Makevars.win file would.
  * configure is now passed crucial variables such as CC and CFLAGS
    in its environment, as many packages were not setting them (as
    documented in 'Writing R Extensions' SS1.2).
    This has most effect where configure is used to compile parts of
    the package - most often by cmake or libtool which obfuscate the
    actual compile commands used.
    Also used for configure.win and configure.ucrt on Windows.
  FORTRAN FLAGS:
  * The flag -fno-optimize-sibling-calls is no longer forced for
    gfortran 7 and later.  It should no longer be needed now using
    'hidden' character-length arguments when calling BLAS/LAPACK
    routines from C/C++ is the default even for packages.  (Unless
    perhaps packages call Fortran code from C/C++ without using R's
    headers and without allowing for these arguments.)
  C-LEVEL FACILITIES:
  * The deprecated S-compatibility macros DOUBLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * The deprecated legacy typedefs of Sint and Sfloat in header R.h
    are no longer defined, and that header no longer includes header
    limits.h from C nor climits from C++.
  * New macro CAD5R() is provided in Rinternals.h and used in a few
    places in the R sources.
  * ALTREP now supports VECSXP vectors. Contributed by Gabor Csardi
    in PR#17620.
  * The Rcomplex definition (in header R_ext/Complex.h) has been
    extended to prevent possible mis-compilation when interfacing
    with Fortran (PR#18430).  The new definition causes compiler
    warnings with static initializers such as {1, 2}, which can be
    changed to {.r=1, .i=2}.
    Using the new definition from C++ depends on compiler extensions
    supporting C features that have not been incorporated into the
    C++ standards but are available in g++ and clang++: this may
    result in C++ compiler warnings but these have been worked around
    for recent versions of common compilers (GCC, Apple/LLVM clang,
    Intel).
    It is intended to change the inclusion of header R_ext/Complex.h
    by other R headers, so C/C++ code files which make use of
    Rcomplex should include that header explicitly.
  UTILITIES:
  * R CMD check does more checking of package .Rd files, warning
    about invalid email addresses and (some) invalid URIs and noting
    empty \item labels in description lists.
  * R CMD check now also reports problems when reading package news
    in md (file NEWS.md) and (optionally) plain text (file NEWS)
    formats.
  * _R_CHECK_TIMINGS_ defaults to a value from the environment even
    for R CMD check --as-cran; this allows for exceptionally fast or
    slow platforms.
    It now applies to checking PDF and HTML versions of the manuals,
    and 'checking CRAN incoming feasibility'.
  * R CMD check can optionally (but included in --as-cran) check
    whether HTML math rendering _via_ KaTeX works for the package .Rd
    files.
  * Non-interactive debugger invocations can be trapped by setting
    the environment variable _R_CHECK_BROWSER_NONINTERACTIVE_ to a
    true value.  This is enabled by R CMD check --as-cran to detect
    the use of leftover browser() statements in the package.
  * The use of sprintf and vsprintf from C/C++ has been deprecated in
    macOS 13 and is a known security risk.  R CMD check now reports
    (on all platforms) if their use is found in compiled code:
    replace by snprintf or vsnprintf respectively. [*NB:* whether
    such calls get compiled into the package is platform-dependent.]
  * Where recorded at installation, R CMD check reports the C and
    Fortran compilers used to build R.
    It reports the OS in use (if known, as given by osVersion) as
    well as that R was built for.
    It notes if a C++ standard was specified which is older than the
    current default: many packages have used C++11 to mean 'not
    C++98' - as C++11 is the minimum supported since R 4.0.0, that
    specification can probably be removed.
  * R CMD INSTALL reports the compilers (and on macOS, the SDK) used,
    and this is copied to the output of R CMD check.
    Where a C++ standard is specified, it is reported.
  * R CMD check's 'checking compilation flags in Makevars' has been
    relaxed to accept the use of flags such as -std=f2008 in
    PKG_FFLAGS.
  * tools::buildVignettes() has a new argument skip, which is used by
    R CMD check to skip (and note) vignettes with unavailable
    \VignetteDepends (PR#18318).
  * New generic .AtNames() added to enable class-specific completions
    after @. The formerly internal function findMatches() is now
    exported, mainly for use in methods for .DollarNames() and
    .AtNames().
  DEPRECATED AND DEFUNCT:
  * default.stringsAsFactors() is defunct.
  * Calling as.data.frame.&lt;class&gt;() directly (for 12 atomic classes)
    is going to be formally deprecated, currently activated by
    setting the environment variable
    _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ to non-empty, which also
    happens in R CMD check --as-cran.
  BUG FIXES:
  * Hashed environments with sizes less than 5 can now grow.
    (Reported to R-devel by Duncan Garmonsway.)
  * as.character(&lt;Rd&gt;, deparse = TRUE) failed to re-escape curly
    braces in LaTeX-like text.  (Reported by Hadley Wickham in
    PR#18324.)
  * library() now passes its lib.loc argument when requiring Depends
    packages; reported (with fix) in PR#18331 by Mikael Jagan.
  * R CMD Stangle: improved message about 'Output' files.
  * head(x, n) and tail(x, n) now signal an error if n is not
    numeric, instead of incidentally "working" sometimes returning
    all of x.  Reported and discussed by Colin Fay, in PR#18357.
  * The "lm" method for summary() now gives the correct F-statistic
    when the model contains an offset.  Reported in PR#18008.
  * C() and `contrasts&lt;-`() now preserve factor level names when
    given a function object (as opposed a function name which did
    preserve names). Reported in PR#17616.
  * c(a = 1, 2)[[]] no longer matches 2 but rather signals a
    _classed_ error.  Reported and analysed by Davis Vaughan in
    PR#18367, a duplicate of PR#18004, by Jan Meis et al.  For
    consistency, NULL[[]] is also erroneous now.  x[[]] &lt;- v gives an
    error of the same class "MissingSubscriptError".
  * The relist() function of utils now supports NULL elements in the
    skeleton (PR#15854).
  * ordered(levels = *) (missing x) now works analogously to factor(,
    ordered=TRUE); reported (with fix) by Achim Zeileis in PR#18389.
  * User-defined Rd macro definitions can now span multiple lines,
    thanks to a patch from Duncan Murdoch. Previously, the Rd parser
    silently ignored everything after the first line.
  * Plain-text help (tools::Rd2txt()) now preserves an initial blank
    line for text following description list items.
  * tools::Rd2HTML() and tools::Rd2latex() no longer split \arguments
    and \value lists at Rd comments.
  * tools::Rd2latex() now correctly handles optional text outside
    \items of argument lists as well as bracketed text at the
    beginning of sections, e.g., \value{[NULL]}.
  * as.character(&lt;POSIXt&gt;) now behaves more in line with the methods
    for atomic vectors such as numbers, and is no longer influenced
    by options().  Ditto for as.character(&lt;Date&gt;).  The
    as.character() method gets arguments digits and OutDec with
    defaults _not_ depending on options().  Use of as.character(*,
    format = .) now warns.
  * Similarly, the as.character.hexmode() and *.octmode() methods
    also behave as good citizen methods and back compatibility option
    keepStr = TRUE.
  * The as.POSIXlt(&lt;POSIXlt&gt;) and as.POSIXct(&lt;POSIXct&gt;) default
    methods now do obey their tz argument, also in this case.
  * as.POSIXlt(&lt;Date&gt;) now does apply a tz (time zone) argument, as
    does as.POSIXct(); partly suggested by Roland Fuss on the R-devel
    mailing list.
  * as.Date.POSIXlt(x) now also works when the list components are of
    unequal length, aka "partially filled" or "ragged".
  * expand.model.frame() looked up variables in the wrong environment
    when applied to models fitted without data.  Reported in
    PR#18414.
  * time() now (also) uses the ts.eps = getOption("ts.eps") argument
    and thus by default rounds values very close to the start (or
    end) of a year.  Based on a proposal by Andre"i V. Kostyrka on
    R-help.
  * Printing of a factanal() result with just one factor and sort =
    TRUE now works regularly, fixing PR#17863 by Timothy Bates,
    thanks to the 'R Contributors' working group.
  * Printing 0-length objects of class "factor", "roman", "hexmode",
    "octmode", "person", "bibentry", or "citation" now prints
    something better, one of which fixes PR#18422, reported by
    Benjamin Feakins.
  * Sys.timezone() queries timedatectl only if systemd is loaded;
    addressing a report by Jan Gorecki in PR#17421.
  * The formula method of cor.test() had scoping problems when
    environment(formula) was not the calling environment; reported
    with a patch proposal by Mao Kobayashi in PR#18439.
  * attach() of an environment with active bindings now preserves the
    active bindings.  Reported by Kevin Ushey in PR#18425.
  * BLAS detection now works also with system-provided libraries not
    available as regular files.  This fixes detection of the
    Accelerate framework on macOS since Big Sur.  Reported by David
    Novgorodsky.
  * download.file() gives a helpful error message in case of an
    invalid download.file.method option, thanks to Colin Fay's report
    in PR#18455.
  * Sporadic crashes of Rterm when using completion have been fixed.
  * Rprof() is now more reliable.  A livelock in thread
    initialization with too short sampling interval has been fixed on
    macOS.  A deadlock in using the C runtime has been fixed on
    Windows.  A potential deadlock has been prevented on Unix.
  * Cursor placement in Rgui now works even after a fixed-width font
    is selected.
  * Mandatory options (options()) are now set on startup so that
    saving and restoring them always works (PR#18372).
  * Package installation, R CMD INSTALL or install.packages(*), now
    parses each of the &lt;pkg&gt;/R/*.R files individually instead of
    first concatenating and then parse()ing the large resulting file.
    This allows parser or syntax errors to be diagnosed with correct
    file names and line numbers, thanks to Simon Dedman's report and
    Bill Dunlap's patch in PR#17859.
    This _does_ require syntactically self contained R source files
    now, fixing another inadvertent bug.
  * predict.lm(&lt;model with offset&gt;) now finds the offset in the
    correct environment, thanks to Andr'e Gillibert's report and patch
    in PR#18456.
  * getInitial(&lt;formula&gt;) now finds the selfStart model in the
    correct environment.  (Reported by Ivan Krylov in PR#18368.)
  * Fix for possible segfault when using recently-added graphics
    features, such as gradients, clipping paths, masks, and groups
    with pdf(file=NULL).
  * class(m) &lt;- class(m) no longer changes a matrix m by adding a
    class _attribute_.
  * packageDate(pkg) now only warns once if there is no pkg.
  * When ts() creates a multivariate time series, "mts", it also
    inherits from "array" now, and is.mts() is documented _and_
    stricter.
  * Rd2txt() now preserves line breaks of \verb Rd content and from
    duplicated \cr.  The former also fixes the rendering of verbatim
    output from Rd \Sexpr in plain-text help.
  * uniroot(f, interval) should no longer wrongly converge _outside_
    the interval in some cases where abs(f(x)) == Inf for an x at the
    interval boundary, thanks to posts by Ben Bolker and Serguei
    Sokol on R-devel.
  * Vectorized alpha handling in palette functions such as in gray(),
    rainbow(), or hcl.colors() works correctly now, thanks to Achim
    Zeileis' report and patch in PR#18476.
  * Formatting and print()ing of bibentry objects has dropped the
    deprecated citation.bibtex.max argument, such that the bibtex
    argument's default for print.bibentry() depends directly on the
    citation.bibtex.max option, whereas in format.bibentry() the
    option no longer applies.
  * Attempting to use a character string naming a foreign function
    entry point in a foreign function call in a package will now
    signal an error if the packages has called R_forceSymbols to
    specify that symbols must be used.
  * An error in table() could permanently set options(warn=2)
    promoting all subsequent warnings to errors.
  * The sigma() function gave misleading results for binary GLMs.  A
    new method for objects of class "glm" returns the square root of
    the estimate of the dispersion parameter using the same
    calculation as summary.glm().
  * bs() and ns() in the (typical) case of automatic knot
    construction, when some of the supposedly inner knots coincide
    with boundary knots, now moves them inside (with a warning),
    building on PR#18442 by Ben Bolker.
  * R CMD on Windows now skips the site profile with --no-site-file
    and --vanilla even when R_PROFILE is set (PR#18512, from Kevin
    Ushey).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1686916800">- CHANGES IN R 4.3.1:
  C-LEVEL FACILITIES:
  * The C-level API version of R's integrate(), Rdqags() in Applic.h,
    now returns the correct number of integrand evaluations neval,
    fixing PR#18515 reported and diagnosed by Stephen Wade.
  * The C prototypes for LAPACK calls dspgv and dtptrs in
    R_exts/Lapack.h had one too many and one too few character length
    arguments - but this has not caused any known issues. To get the
    corrected prototypes, include
    [#]include &lt;Rconfig.h&gt; // for PR18534fixed
    [#]ifdef PR18534fixed
    [#] define usePR18534fix 1
    [#]endif
    [#]include &lt;R_exts/Lapack.h&gt;
    in your C/C++ code (PR#18534).
  INSTALLATION:
  * Many of the checks of esoteric Internet operations and those
    using unreliable external sites have been moved to a new target
    that is not run by default and primarily intended for the core
    developers.  To run them use
    cd tests; make test-Internet-dev
  BUG FIXES:
  * .S3methods(), typically called from methods(), again marks
    methods from package base as visible.
    Also, the visibility of non-base methods is again determined by
    the method's presence in search().
  * tools::Rdiff() is now more robust against invalid strings, fixing
    installation tests on Windows without Rtools installed
    (PR#18530).
  * Fix (new) bug in hcl.colors(2, *), by Achim Zeileis (PR#18523).
  * head(., &lt;illegal&gt;) and tail(..) now produce more useful "Error in
    ...." error messages, fixing PR#18362.
  * Package code syntax on Windows is checked in UTF-8 when UTF-8 is
    the native encoding.
  * na.contiguous(x) now also returns the first run, when it is at
    the beginning and there is a later one of the same length;
    reported to R-devel, including a fix, by Georgi Boshnakov.
    Further, by default, it modifies only an existing attr(*,"tsp")
    but otherwise no longer sets one.
  * chol(&lt;not pos.def&gt;, pivot = &lt;T|F&gt;) now gives a correct error or
    warning message (depending on pivot), thanks to Mikael Jagan's
    (PR#18541).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1699012800">- CHANGES IN R 4.3.2:
  NEW FEATURES:
  * The default initialization of the "repos" option from the
    repositories file at startup can be skipped by setting
    environment variable R_REPOSITORIES to NULL such that
    getOption("repos") is empty if not set elsewhere.
  * qr.X() is now an implicit S4 generic in methods.
  * iconv(to = "ASCII//TRANSLIT") is emulated using substitution on
    platforms which do not support it (notably Alpine Linux).  This
    should give a human-readable conversion in ASCII on all platforms
    (rather than NA_character_).
  * trans3d() gains options continuous and verbose addressing the
    problem of possible "wrap around" when projecting too long
    curves, as reported by Achim Zeileis in PR#18537.
  * tools::showNonASCII() has been rewritten to work better on macOS
    14 (which has a changed implementation of iconv()).
  * tiff(type = "quartz") (the default on macOS) now warns if
    compression is specified: it continues to be ignored.
  INSTALLATION on a UNIX-ALIKE:
  * There is some support for building with Intel's LLVM-based
    compilers on x86_64 Linux, such as (C) icx, (C++) ipcx and
    (Fortran) ifx from oneAPI 2023.x.y.
  * There is support for using LLVM's flang-new as the Fortran
    compiler from LLVM 16.0.x (preferably 17.0.0 or later).
  UTILITIES:
  * R CMD check reports the use of the Fortran 90 random number
    generator RANDOM_NUMBER() and the subroutines to initialize it.
    'Writing R Extensions' has example code to use R's RNGs from
    Fortran.
  BUG FIXES:
  * substr(x, n, L) &lt;- cc now works (more) correctly for multibyte
    UTF-8 strings x when L &gt; nchar(x), thanks to a report and patch
    by 'Architect 95'.
  * contrib.url(character()) now returns 0-length character() as
    documented, which also avoids spurious warnings from
    available.packages() et al. in the edge case of an empty vector
    of repository URLs.
  * readChar(., 4e8) no longer fails, thanks to Kodi Arfer's report
    (PR#18557).
  * lapply(&lt;list&gt;, as.data.frame) no longer warns falsely for some
    base vector components.
  * Communication between parent and child processes in the multicore
    part of parallel could fail on platforms that do not support an
    arbitrarily large payload in system functions read()/write() on
    pipes (seen on macOS where a restriction to INT_MAX bytes is
    documented, without doing a partial read unlike Linux). The
    payload is now split into 1Gb chunks to avoid that problem.
    (PR#18571)
  * qqplot(x,y, conf.level=.) gives better confidence bounds when
    length(x) != length(y), thanks to Alexander Ploner's report and
    patch proposal (PR#18557).
  * norm(&lt;0-length&gt;, "2") now gives zero instead of an error, as all
    the other norm types, thanks to Mikael Jagan's PR#18542.
  * Build-stage Rd macros \packageAuthor and \packageMaintainer now
    process Authors@R, fixing NA results when the package DESCRIPTION
    omits Author and Maintainer fields.
  * Formatting and printing complex numbers could give things like
    0.1683-0i because of rounding error: -0i is now replaced by +0i.
  * postscript() refused to accept a title comment containing the
    letter "W" (PR#18599).
  * isoreg(c(1,Inf)) signals an error instead of segfaulting, fixing
    PR#18603.
  * tiff(type = "Xlib") was only outputting the last page of
    multi-page plots.
  * tools::latexToUtf8() again knows about \~{n} and other letters
    with tilde, fixing a regression in R 4.3.0, and about \^{i} as an
    alternative to \^{\i} (similarly with other accents).
    Furthermore, LaTeX codes for accented I letters are now correctly
    converted, also fixing related mistakes in
    tools::encoded_text_to_latex().
  * tar(*, tar = "internal") no longer creates out-of-spec tar files
    in the very rare case of user or group names longer than 32
    bytes, fixing PR#17871 with thanks to Ivan Krylov.
  * When using the "internal" timezone datetime code, adding a
    fraction of a second no longer adds one second, fixing PR#16856
    from a patch by Ivan Krylov.
  * tools::checkRd() no longer produces spurious notes about
    "unnecessary braces" from multi-line Rd results of \Sexpr macros.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1709208000">- CHANGES IN R 4.3.3:
  NEW FEATURES:
  * iconv() now fixes up variant encoding names such as "utf8"
    case-insensitively.
  DEPRECATED AND DEFUNCT:
  * The legacy encoding = "MacRoman" is deprecated in pdf() and
    postscript(): support was incomplete in earlier versions of R.
  BUG FIXES:
  * Arguments are now properly forwarded to methods on S4 generics
    with ... in the middle of their formal arguments. This was broken
    for the case when a method introduced an argument but did not
    include ... in its own formals. Thanks to Herv'e Pag`es for the
    report PR#18538.
  * Some invalid file arguments to pictex(), postscript() and xfig()
    opened a file called NA rather than throw an error.  These
    included postscript(NULL) (which some people expected to work
    like pdf(NULL)).
  * Passing filename = NA to svg(), cairo_pdf(), cairo_ps() or the
    Cairo-based bitmap devices opened a file called NA: it now throws
    an error.
  * quartz(file = NA) opened a file called NA, including when used as
    a Quartz-based bitmap device.  It now gives an error.
  * rank(&lt;long vector&gt;) now works, fixing PR#18617, thanks to Ilia
    Kats.
  * seq.int() did not adequately check its length.out argument.
  * match(&lt;POSIXct&gt;, .) is correct again for differing time zones,
    ditto for "POSIXlt", fixing PR#18618 reported by Bastian Klein.
  * drop.terms(*, dropx = &lt;0-length&gt;) now works, fixing PR#18563 as
    proposed by Mikael Jagan.
  * drop.terms(*) keeps + offset(.) terms when it should, PR#18565,
    and drop.terms() no longer makes up a response, PR#18566, fixing
    both bugs thanks to Mikael Jagan.
  * getS3method("t", "test") no longer finds the t.test() function,
    fixing PR#18627.
  * pdf() and postscript() support for the documented Adobe encodings
    "Greek" and "Cyrilllic" was missing (although the corresponding
    Windows' codepages could be used).
  * Computations of glyph metric information for pdf() and
    postscript() did not take into account that transliteration could
    replace one character by two or more (only seen on macOS 14) and
    typically warned that the information was not known.
  * rank(x) no longer overflows during integer addition, when
    computing rank average for largish but not-yet long vector x,
    fixing PR#18630, thanks to Ilia Kats.
  * list.files() on Windows now returns also files with names longer
    that 260 bytes (the Windows limit is 260 characters).
    Previously, some file names particularly with 'East Asian'
    characters were omitted.
  * cov2cor(&lt;0 x 0&gt;) now works, fixing PR#18423 thanks to Mikael
    Jagan and Elin Waring.
  * cov2cor(&lt;negative diagonal&gt;) and similar now give one warning
    instead of two, with better wording, fixing PR#18424 thanks to
    Mikael Jagan.
  * tools:: startDynamicHelp() now ensures port is in proper range,
    fixing PR#18645.
  * pbeta(x, a,b) is correct now for x=0 or 1 in the boundary cases
    where a or b or both are 0, fixing PR#18672 thanks to Michael
    Fay.
  * pmatch(x, table) for large table, also called for data frame row
    selection, dfrm[nm, ], is now interruptible, fixing PR#18656.
  * predict(&lt;rank-deficient lm&gt;, newdata=*) fix computing of nbasis,
    see Russ Lenth's comment 29 in PR#16158.
  * Added a work-around for a bug in macOS 14.3.1 and higher which
    prevents R plots in the Quartz Cocoa device from updating on
    screen.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1713960000">- CHANGES IN R 4.4.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Startup banners, R --version, sessionInfo() and R CMD check no
    longer report (64-bit) as part of the platform as this is almost
    universal - the increasingly rare 32-bit platforms will still
    report (32-bit).
    On Windows, ditto for window titles.
  * is.atomic(NULL) now returns FALSE, as NULL is not an atomic
    vector.  Strict back-compatibility would replace is.atomic(foo)
    by (is.null(foo) || is.atomic(foo)) but should happen only
    sparingly.
  NEW FEATURES:
  * The confint() methods for "glm" and "nls" objects have been
    copied to the stats package.  Previously, they were stubs which
    called versions in package MASS. The MASS namespace is no longer
    loaded if you invoke (say) confint(glmfit).  Further, the "glm"
    method for profile() and the plot() and pairs() methods for class
    "profile" have been copied from MASS to stats.  (profile.nls()
    and plot.profile.nls() were already in stats.)
  * The confint() and profile methods for "glm" objects have gained a
    possibility to do profiling based on the Rao Score statistic in
    addition to the default Likelihood Ratio. This is controlled by a
    new test = argument.
  * The pairs() method for "profile" objects has been extended with a
    which = argument to allow plotting only a subset of the
    parameters.
  * The "glm" method for anova() computes test statistics and
    p-values by default, using a chi-squared test or an F test
    depending on whether the dispersion is fixed or free.  Test
    statistics can be suppressed by giving argument test a false
    logical value.
  * In setRepositories() the repositories can be set using their
    names via name = instead of index ind =.
  * methods() and .S3methods() gain a all.names option for the (rare)
    case where functions starting with a . should be included.
  * Serializations can now be interrupted (e.g., by Ctrl-C on a
    Unix-alike) if they take too long, e.g., from save.image(),
    thanks to suggestions by Ivan Krylov and others on R-devel.
  * New startup option --max-connections to set the maximum number of
    simultaneous connections for the session.  Defaults to 128 as
    before: allowed values up to 4096 (but resource limits may in
    practice restrict to smaller values).
  * R on Windows (since Windows 10 2004) now uses the new Segment
    Heap allocator. This may improve performance of some
    memory-intensive applications.
  * When R packages are built, typically by R CMD build &lt;pkg&gt;, the
    new --user=&lt;build_user&gt; option overrides the (internally
    determined) user name, currently Sys.info()["user"] or LOGNAME.
    This is a (modified) fulfillment of Will Landau's suggestion in
    PR#17530.
  * tools::testInstalledBasic() gets new optional arguments outDir
    and testSrcdir, e.g., allowing to use it in a &lt;builddir&gt; !=
    &lt;srcdir&gt; setup, and in standard "binary" Windows installation
  * if* a source tests/ folder is present.
  * range(&lt;DT_with_Inf&gt;, finite = TRUE) now work for objects of class
    "Date", "POSIXct", and "POSIXlt" with infinite entries,
    analogously to range.default(), as proposed by Davis Vaughan on
    R-devel.  Other range()-methods can make use of new function
    .rangeNum().
  * New .internalGenerics object complementing .S3PrimitiveGenerics,
    for documentation and low-level book-keeping.
  * grid() now invisibly returns the x- and y- coordinates at which
    the grid-lines were drawn.
  * norm(., type) now also works for complex matrices.
  * kappa(., exact = TRUE, norm = *) now works for all norms and also
    for complex matrices.  In symmetric / triangular cases, the new
    argument uplo = "U" | "L" allows the upper or lower triangular
    part to be specified.
  * memDecompress(type = "unknown") recognizes compression in the
    default 'zlib' format as used by memCompress(type = "gzip").
  * memCompress() and memDecompress() will use the libdeflate library
    (&lt;https://github.com/ebiggers/libdeflate&gt;) if installed.  This
    uses the same type of compression for type = "gzip" but is 1.5-2x
    faster than the system libz library on some common platforms: the
    speed-up may depend on the library version.
  * diff() for objects of class "Date", "POSIXct", and "POSIXlt"
    accepts a units argument passed via ....
  * Dynamic help now does a much better job of rendering package
    DESCRIPTION metadata.
  * Rprof() gains an event argument and support for elapsed (real)
    time profiling on Unix (PR#18076).
  * filled.contour() gains a key.border argument.
  * tools::update_pkg_po() gets arguments pot_make and mo_make for
    _not_ re-making the corresponding files, and additionally a
    verbose argument.
  * Hexadecimal string colour specifications are now accepted in
    short form, so, for example, we can use "#123", which is
    equivalent to "#112233".
    Thanks to MikeFC for the original idea and Ella Kaye, Malcolm
    Barrett, George Stagg, and Hanne Oberman for the patch.
  * Plain-text help shows \var markup by angle brackets.
  * The new experimental primitive function declare() is intended to
    eventually allow information about R code to be communicated to
    the interpreter, compiler, and code analysis tools. The syntax
    for declarations is still being developed.
  * Functions psmirnov(), qsmirnov() and rsmirnov() in package stats
    have had argument two.sided renamed to alternative, to take into
    account that the permutation distributions of the one-sided
    statistics can be different in the case of ties.  Consequence of
    PR#18582.
  * sort() is now an implicit S4 generic in methods.
  * Formatting and printing, format(z), print(z), of complex vectors
    z no longer zap relatively small real or imaginary parts to zero,
    fixing PR#16752.  This is an API change, as it was documented
    previously to round real and imaginary parts together on purpose,
    producing nicer looking output.  As mentioned, e.g. in the PR,
    this change is compatible with many other "R-like" programming
    environments.
    We have simplified the internal code and now basically format the
    real and imaginary parts independently of each other.
  * New experimental functions Tailcall() and Exec() to support
    writing stack-space-efficient recursive functions.
  * Where characters are attempted to be plotted by pdf(),
    postscript() and xfig() which are not in the selected 8-bit
    character set (most often Latin-1) and the R session is using a
    UTF-8 locale, the warning messages will show the UTF-8 character
    rather than its bytes and one dot will be substituted per
    character rather than per byte.  (Platforms whose iconv() does
    transliteration silently plot the transliteration.)
    In a UTF-8 locale some transliterations are now done with a
    warning (e.g., dashes and Unicode minus to hyphen, ligatures are
    expanded, permille (‰) is replaced by o/oo), although the OS may
    have got there first.  These are warnings as they will continue
    to be replaced by dots in earlier versions of R.
  * The matrix multiplication functions crossprod() and tcrossprod()
    are now also primitive and S3 generic, as %*% had become in R
    4.3.0.
  * source() and example() have a new optional argument catch.aborts
    which allows continued evaluation of the R code after an error.
  * The non-Quartz tiff() devices allow additional types of
    compression if supported by the platform's libtiff library.
  * The list of base and recommended package names is now provided by
    tools::standard_package_names().
  * cairo_pdf() and cairo_ps() default to onefile = TRUE to closer
    match pdf() and postscript().
  * New option catch.script.errors provides a documented way to catch
    errors and then continue in non-interactive use.
  * L %||% R newly in base is an expressive idiom for the phrases
    if(!is.null(L)) L else R or if(is.null(L)) R else L.
  * The return value from warnings() now always inherits from
    "warnings" as documented, now also in the case of no warnings
    where it previously returned NULL.
  * as.complex("1i") now returns 0 + 1i instead of NA with a warning.
  * z &lt;- c(NA, 1i) now keeps the imaginary part Im(z[1]) == 0, no
    longer coercing to NA_complex_.  Similarly, cumsum(z) correctly
    sums real and imaginary parts separately, i.e., without
    "crosstalk" in case of NAs.
  * On Alpine Linux iconv() now maps "latin2", "latin-2", "latin9"
    and "latin-9" to encoding names the OS knows about
    (case-insensitively).
  * iconv(sub = "Unicode") now always zero-pads to four (hex) digits,
    rather than to 4 or 8.  (This seems to have become the convention
    once Unicode restricted the number of Unicode points to 2^21 - 1
    and so will never need more than 6 digits.)
  * NCOL(NULL) now returns 0 instead of 1, for consistency with
    cbind().
  * The information for the Euro glyph missing from the Adobe .afm
    files for the Courier, Helvetica and Times families has been
    copied from their URW equivalents - this will improve vertical
    centring in the pdf() and postscript() devices.
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.12.0.  The changes are almost entirely cosmetic.
  * The included LAPACK sources have been updated to version 3.12.0
    and some further double-complex routines added.
  * There are new font families for the 2014--5 URW 2.0 fonts (see
    ?pdf) which are included in recent versions of Ghostscript.
    These have font widths for most Greek glyphs and a few others
    which were missing from the original versions (whose font
    families remain available for reproducibility, although
    Ghostscript-based viewers will render using the 2.0 versions).
  * Improve the large-n efficiency of as.matrix(&lt;dist&gt;), thanks an R
    contributors effort, notably by Tim Taylor and Heather Turner,
    see PR#18660.
  * The default and numeric methods of all.equal() get a check.class
    option.
  * zapsmall() gets new optional arguments, function mFUN and min.d,
    for extra flexibility; fulfills a wish in PR#18199.  Also, it is
    now an implicit S4 generic in package methods.
  * The Rd filter for aspell() gains an ignore argument.
  * New generic function sort_by(), primarily useful for the
    data.frame method which can be used to sort rows of a data frame
    by one or more columns.
  * The icence headers for the RPC code in src/extra/xdr have been
    updated to use the GPL-compatible licence published by Oracle
    America in 2010.
  * New function pkg2HTML() in tools to create single-page HTML
    reference manuals for R packages.
  * The byte code evaluator now uses less C stack space for recursive
    calls to byte-compiled functions. It also makes more of an effort
    to avoid allocations for scalar return values.
  * New completion option backtick (disabled by default) allows
    non-syntactic completions to be wrapped in backquotes. This is
    currently only useful for Jupyter notebooks via the IRkernel
    package, and may cause problems for other backends.
  INSTALLATION:
  * The parser has been updated to work with bison 3.8.2, which is
    now used for the pre-generated parsers in gram.c, file.c, and
    gramRd.c. A few parser error messages have changed, which may
    affect code that relies on exact messages.
  INSTALLATION on a UNIX-ALIKE:
  * System valgrind headers are now required to use configure option
  - -with-valgrind-instrumentation with value 1 or 2.
  * configure will warn if it encounters a 32-bit build, as that is
    nowadays almost untested.
  * Environment variable R_SYSTEM_ABI is no longer used and so no
    longer recorded in etc/Renviron (it was not on Windows and was
    only ever used when preparing package tools).
  * If the libdeflate library and headers are available, libdeflate
    rather than libz is used to (de)compress R objects in lazy-load
    databases.  Typically tasks spend up to 5% of their time on such
    operations, although creating lazy-data databases is one of the
    exceptions.
    This can be suppressed if the library is available by the
    configure option --without-libdeflate-compression.
  * configure option --enable-lto=check has not worked reliably since
    2019 and has been removed.
  * The minimum autoconf requirement for a maintainer build has been
    increased to autoconf 2.71.
    It is intended to increase this to 2.72 for R 4.5.0: the
    distributed configure file was generated using 2.72.
  * The minimum version requirement for an external LAPACK has been
    reduced to 3.9.0.
  * No default C++ compiler is set if no C++17 compiler is detected:
    there is no longer an automatic fallback to C++14 or C++11.
    Compilers from the last five years should have sufficient
    support: for others macros CXX and CXXSTD can be set in file
    config.site to provide a fallback if needed.
    The Objective-C++ compiler now by default uses the standard
    selected by R for C++ (currently C++17) rather than the default
    standard for the C++ compiler (which on macOS is still C++98).
  INSTALLATION on macOS:
  * A new configure option --with-newAccelerate makes use of Apple's
    'new' BLAS / LAPACK interfaces in their Accelerate framework.
    Those interfaces are only available in macOS 13.3 or later, and
    building requires SDK 13.3 or later (from the Command Line Tools
    or Xcode 14.3 or later).
    By default the option uses new Accelerate for BLAS calls: to also
    use it for LAPACK use option --with-newAccelerate=lapack.  The
    later interfaces provide LAPACK 3.9.1 rather than 3.2.1: 3.9.1 is
    from 2021-04 and does not include the improved algorithms
    introduced in LAPACK 3.10.0 (including for BLAS calls).
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools44, an update of the Rtools43 toolchain.  It is
    based on GCC 13 and newer versions of MinGW-W64, binutils and
    libraries (targeting 64-bit Intel CPUs).  R-devel can no longer
    be built using Rtools43 without changes.
  * Rtools44 has experimental support for 64-bit ARM (aarch64) CPUs
    _via_ the LLVM 17 toolchain using lld, clang/flang-new and
    libc++.
  UTILITIES:
  * R CMD check notes when S4-style exports are used without
    declaring a strong dependence on package methods.
  * tools::checkRd() (used by R CMD check) detects more problems with
    \Sexpr-based dynamic content, including bad nesting of \Sexprs
    and invalid arguments.
  * tools::checkRd() now reports Rd titles and section names ending
    in a period; this is ignored by R CMD check unless environment
    variable _R_CHECK_RD_CHECKRD_MINLEVEL_ is set to -5 or smaller.
  * R CMD check now notes Rd files without an \alias, as long
    documented in 'Writing R Extensions' §1.3.1.  The check for a
    missing \description has been moved from tools::checkRd() to
    tools::checkRdContents().
  * R CMD check now visits inst/NEWS.Rd and OS-specific man
    subdirectories when checking Rd files.
  * tools::checkDocFiles() and tools::checkRdContents() now also
    check internal Rd files by default, but "specially" (ignoring
    missing documentation of arguments).
  * R CMD Rdiff gets option --useEx.
  * R CMD check now warns on non-portable uses of Fortran KIND such
    as INTEGER(KIND=4) and REAL(KIND=8).
    To see the failing lines set environment variable
    _R_CHECK_FORTRAN_KIND_DETAILS_ to a true value.
  * When checking Rd files, R CMD check now notes some of the "lost
    braces" that tools::checkRd() finds.  Typical problems are Rd
    macros missing the initial backslash (e.g., code{...}), in-text
    set notation (e.g., {1, 2}, where the braces need escaping), and
    \itemize lists with \describe-style entries of the form
    \item{label}{description}.
  * R CMD INSTALL (and hence check) will compile C++ code with
  - DR_NO_REMAP if environment variable _R_CXX_USE_NO_REMAP_ is set
    to a true value.  It is planned that this will in future become
    the default for compiling C++.
  * The new built-in Rd macro \dontdiff{} can be used to mark example
    code whose output should be ignored when comparing check output
    to reference output (tests/Examples/&lt;pkg&gt;-Ex.Rout.save).  The
    \dontdiff tag, like \donttest, is _not_ shown on the rendered
    help page, so provides a clean alternative to ##
    IGNORE_RDIFF_(BEGIN|END) comments.
  * R CMD build when there is no NAMESPACE, now uses the recommended
    exportPattern("^[^.]"), instead of exporting everything.
  * R CMD check now warns about non-ASCII characters in the NAMESPACE
    file (in addition to R files). Such packages are not portable and
    may fail to install on some platforms.
  C-LEVEL FACILITIES:
  * Headers R_ext/Applic.h and R-ext/Linpack.h used to include
    R_ext/BLAS.h although this was undocumented and unneeded by their
    documented entry points.  They no longer do so.
  * New function R_missing(), factored out from do_missing(), used to
    fix PR#18579.
  * SEXP type S4SXP has been renamed to OBJSXP to support
    experimenting with alternative object systems.  The S4SXP value
    can still be used in C code but is now deprecated.  Based on
    contributions from the R Consortium's Object-Oriented Programming
    Working Group.
  * New function pow1p(x,y) for accurate (1+x)^y.
  * mkCharLenCE was incorrectly documented to take a size_t length
    but was implemented with int (and character strings in R are
    limited to 2^31 - 1 bytes).
  DEPRECATED AND DEFUNCT:
  * data() no longer handles zipped data from long-defunct (since R
    2.13.0) --use-zip-data installations.
  * The legacy graphics devices pictex() and xfig() are now
    deprecated.  They do not support recent graphics enhancements and
    their font handling is rudimentary. The intention is to retain
    them for historical interest as long as they remain somewhat
    functional.
  * Support for encoding = "MacRoman" has been removed from the pdf()
    and postscript() devices - this was a legacy encoding supporting
    classic macOS up to 2001 and no longer has universal libiconv
    support.
  * is.R() is deprecated as no other S dialect is known to be in use
    (and this could only identify historical dialects, not future
    ones).
    Further information on calls can be obtained by setting the
    environment variable _R_DEPRECATED_IS_R_ to error which turns the
    deprecation warning into an error and so by default gives a
    traceback.  (This is done by R CMD check --as-cran.)
  * UseMethod() no longer forwards local variables assigned in the
    generic function into method call environments before evaluating
    the method body. This makes method calls behave more like
    standard function calls and makes method code easier to analyze
    correctly.
  * The twelve as.data.frame.&lt;class&gt;() methods which were deprecated
    only via _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ and in R CMD
    check --as-cran are formally deprecated now in favour of calling
    as.data.frame() or as.data.frame.vector().  The deprecation
    "check" now works also when as.data.frame() is S4 generic thanks
    to Ivan Krylov.
  * The default method for the directional comparison operators &lt;, &gt;,
    &lt;=, and &gt;= now signals an error when one of the operands is a
    language object, i.e. a symbol or a call.
  * For terms.formula(), deprecate abb and neg.out arguments
    _formally_ in addition to just documenting it.
  BUG FIXES:
  * The methods package is more robust to not being attached to the
    search path.  More work needs to be done.
  * pairwise.t.test() misbehaved when subgroups had 0 DF for
    variance, even with pool.sd = TRUE.  (PR#18594 by Jack Berry).
  * Probability distribution functions [dpq]&lt;distrib&gt;(x, *), but also
    bessel[IKJY](x, .) now consistently preserve attributes(x) when
    length(x) == 0, e.g., for a 2 x 0 matrix, thanks to Karolis
    Koncevičius' report PR#18509.
  * Group "Summary" computations such as sum(1:3, 4, na.rm = 5, NA,
    7, na.rm = LL) now give an error instead of either 17 or NN for
    LL true or false, as proposed by Ivan Krylov on the R-devel
    mailing list.  (This also means it is now an error to specify
    na.rm more than once.)
  * as.complex(x) now returns complex(real = x, imaginary = 0) for
    _all_ numerical and logical x, notably also for NA or
    NA_integer_.
  * Directories are now omitted by file.copy(, recursive = FALSE) and
    in file.append() (PR#17337).
  * gsub() and sub() are now more robust to integer overflow when
    reporting errors caused by too large input strings (PR#18346).
  * Top-level handlers are now more robust to attempts to remove a
    handler whilst handlers are running (PR#18508).
  * The handling of Alt+F4 in dialogs created on Windows using
    GraphApp has been fixed (PR#13870).
  * density() more consistently computes grid values for the
    FFT-based convolution, following Robert Schlicht's analysis and
    proposal in PR#18337, correcting density values typically by a
    factor of about 0.999.  Argument old.coords = TRUE provides back
    compatibility.
  * palette.colors() gains a name argument that defaults to FALSE
    controlling whether the vector of colours that is returned has
    names (where possible).  PR#18529.
  * tools::xgettext() no longer extracts the (non-translatable) class
    names from warningCondition and errorCondition calls.
  * S3method(&lt;gen&gt;, &lt;class&gt;, &lt;func&gt;) in the NAMESPACE file now works
    (again) when &lt;func&gt; is visible from the namespace, e.g.,
    imported, or in base.
  * getParseData(f) now also works for a function defined in the
    first of several &lt;pkg&gt;/R/*.R source files, thanks to Kirill
    Müller's report and Duncan Murdoch's patch in PR#16756.
  * Rd \Sexpr macros with nested #ifdef conditionals were not
    processed.
  * A non-blocking connection with non-default encoding (such as a
    socket) now correctly returns from readLines() after new data has
    arrived also when its EOF had been reached previously.  Thanks to
    Peter Meilstrup's report on R-devel and Ivan Krylov's report and
    patch proposal in PR#18555.
  * tools::checkRdContents() failed to detect empty argument
    descriptions when they spanned multiple lines, including those
    generated by prompt().  These cases are now noted by R CMD check.
  * Plain-text help no longer outputs spurious colons in the
    arguments list (for multi-line \item labels in the Rd source).
  * kappa() and rcond() work correctly in more cases; kappa(., norm =
    "2") now warns that it computes the 1-norm with (default) exact =
    FALSE; prompted by Mikael Jagan's quite comprehensive PR#18543.
  * Rd skeletons generated by prompt() or promptData() now use a
    dummy title (so R CMD build works).  tools::checkRdContents() has
    been updated to detect such template leftovers, including from
    promptPackage().
  * When S4 method dispatch fails because no method was found, the
    error message now includes the signature argument names; thanks
    to Michael Chirico's proposal on the R-devel list.
  * withAutoprint({ .. }) now preserves srcrefs previously lost,
    thanks to Andrew Simmons' report plus fix in PR#18572.
  * transform.data.frame() no longer adjusts names; in particular,
    untransformed variables are kept as-is, including those with
    syntactically invalid names (PR#17890).
  * The keep.source option for Rd \Sexpr blocks is no longer ignored.
  * The formula methods for t.test() and wilcox.test() now catch when
    paired is passed, addressing PR#14359; use Pair(x1, x2) ~ 1 for a
    paired test.
  * The level reported in the browser prompt was often too large. It
    now shows the number of browser contexts on the stack.
  * For cbind() and rbind(), the optional deparse.level argument is
    now properly passed to methods, thanks to Mikael Jagan's PR#18579
    and comments there.
  * Some error and warning messages for large ('long vector')
    matrix(v, nr, nc) and dim(m) &lt;- d are now correct about sizes,
    using long long formatting, fixing PR#18612 (and more) reported
    by Mikael Jagan.
  * readChar(useBytes = TRUE) now terminates strings even when the
    underlying connection uses extra spaces in the input buffer.
    This fixes problems with extra garbage seen with gzip
    connections, PR#18605.
  * Named capture in PCRE regular expressions now works also with
    more than 127 named groups (PR#18588).
  * Datetime functions are now robust against long jumps when dealing
    with internal time zone changes.  This avoids confusing warnings
    about an invalid time zone, previously triggered by turning
    warnings into errors or handling them via tryCatch (PR#17966,
    PR#17780).
  * Datetime functions now restore even an empty TZ environment
    variable after internal time zone changes (PR#17724).  This makes
    results of datetime functions with this (typically unintentional)
    setting more predictable.
  * drop.terms(*) now drops response as by default, keep.response =
    FALSE, fixing PR#18564 thanks to Mikael Jagan.
  * dummy.coef(.) now also works for lm()-models with character
    categorical predictor variables rather than factor ones, fixing
    PR#18635 reported by Jinsong Zhao.
  * formals(f) &lt;- formals(f) now also works for a function w/o
    arguments and atomic _constant_ body(f).
  * Correct as.function(&lt;invalid list&gt;, .)'s error message.
  * removeSource() is yet more thorough in finding and removing
    "srcref" and the other source references from parsed R language
    chunks, fixing PR#18638 thanks to Andrew Simmons.
  * dgeom() is more accurate now, notably when its result is very
    small, fixing PR#18642 thanks to the proposal of Morten Welinder,
    also improving other instances where C level binom_raw(x, n, ..)
    has x == 0 or x== n.
  * warning() with options(warn = 1) has improved output for
    multi-line messages.
  * axis.Date() and axis.POSIXct() now respect the par("lab") setting
    for the number of pretty() intervals.
  * Comparisons for language objects (which are based on deparsing)
    are now more careful about using accurate deparsed results
    (PR#18676).
  * Plain-text help (Rd2txt) now correctly preserves blank lines
    following single-line \dontrun code.
  * &lt;POSIXlt&gt;[*] no longer sets wrong "balanced" attribute, fixing
    PR#18681 thanks to Mikael Jagan.
  * str(&lt;classed-call&gt;) now deparses the call as expected, fixing
    PR#18684, reported by Dave Slager.
  * In Rd examples, code following the closing brace of a \dontrun,
    \dontshow or \donttest tag on the same line is no longer skipped
    when R CMD check runs the examples.
  * as.data.frame(matrix(*, ncol=0)) now gets valid names() and
    colnames(); reported by Davis Vaughan on the R-devel list.
  * Internal Mathlib function stirlerr(n) is now almost fully
    (52-bit) accurate for all n &gt;= ~5.9 and more accurate also in the
    range 1 -- 5.9.  This entails small ("after 12th decimal")
    changes in density functions, e.g., dgamma() in _some_ regions of
    their support.  The fix was partly prompted by Morten Welinder's
    PR#18640.
  * Numbers like 9876543.2 are now considered non-integer by Mathlib
    internal R_nonint(), amending original fix of PR#15734.
  * Rd comment lines no longer cause broken paragraphs in the
    rendered PDF and plain-text help. In code blocks, pure comment
    lines (starting with %) no longer produce an empty line.
  * xtabs(Freq ~ .) now consistently defaults to na.action = na.pass,
    using na.rm = FALSE (added as an argument) when summing over Freq
    (PR#17770).
  * tools::testInstalledPackage() is no longer silent about failures
    from running examples or tests and its return code no longer
    ignores failures from checking vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1718366400">- CHANGES IN R 4.4.1:
  C-LEVEL FACILITIES:
  * Functions R_atof and R_strtod declared in header R_ext/Utils.h
    are now documented in 'Writing R Extensions' and so formally part
    of the API.
  * The non-API entry points Rf_setSVector, Rf_StringFalse,
    Rf_StringTrue and Rf_isBlankString have been added to those
    reported by R CMD check.
  * The new function Rf_allocLang is now available. This provides an
    alternative to the idiom of calling Rf_allocList followed by
    SET_TYPEOF.
  UTILITIES:
  * R CMD check now reports as warnings what gfortran calls 'Fortran
    2018 deleted features', all of which have long been marked as
    'obsolescent' and some of which were deleted in Fortran 2008 or
    earlier.  Fortran compilers are no longer required to support
    these.
  BUG FIXES:
  * as.numeric(), scan(), type.convert() and other places which use
    the internal C function R_strtod now require a _non-empty_ digit
    sequence in a decimal or binary exponent.  This aligns with the
    C/POSIX standard for strtod and with ?NumericConstants.
  * as.data.frame(m, make.names=NA) now works correctly for a matrix
    m with NA's in row names.
  * The error message from &lt;POSIXlt&gt;[["hour"]] and similar now
    mentions *[[, "hour"]], as wished for in PR#17409 and proposed by
    Michael Chirico.
  * qbinom() and potentially qpois(), qnbinom(), no longer sometimes
    fail accurate inversion (of pbinom(), etc), thanks to Christopher
    Chang's report and patch in PR#18711.
  * The internal help server on Windows can again serve requests sent
    in quick succession, fixing a regression in R 4.4.0.
  * debugcall(&lt;S3Generic&gt;()) now also works when a corresponding
    S4-generic version is in the methods cache (PR#18143).
  * Package tools' toTitleCase(ch0) now returns character(0) when ch0
    is of zero length; fixing PR#18724, reported by David Hugh Jones.
  * R CMD check is no longer broken (without a check result and no
    explanation in 00check.log) for a package which declares an
    invalid VignetteBuilder in DESCRIPTION but has no vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1730376000">- CHANGES IN R 4.4.2:
  C-LEVEL FACILITIES:
  * The S-compatibility macros F77_COM and F77_COMDECL defined in
    header R_ext/RS.h are deprecated and will be removed shortly.  We
    could find no record of their use.
  BUG FIXES:
  * Mathlib function lgammacor(x) no longer warns about underflow to
    zero for large x.
  * Text widths and heights were incorrectly reported by the Quartz
    device if the drawing context didn't exist yet (typically when
    drawing off-screen to a window that is yet to appear, see
    PR#18591).
  * The Quartz device could segfault in cases where paths with spaces
    are used in the new glyph drawing API.  Thanks to Tomek
    Gieorgijewski (PR#18758).
  * On macOS in R CRAN builds, it is again possible to read
    little-endian UTF-16 text with a BOM from a connection using
    encoding="UTF-16".  Users building R from source should avoid
    using the system libiconv in macOS 14.1 and later.
  * methods' internal .requirePackage() now re-enables primitive
    method dispatch when needed; thanks to Ivan Krylov for
    demystifying CRAN package check failures on the R-devel mailing
    list.</changelog>
</package>
<package pkgid="780fda26431dce0b45ff75d3db5e032dde5ae34eb241a085a1275d36c54281327c54e39da86640dd6d83502a06dfc5a9a4787ff6067237fd02b9bee6109910f4" name="R-MASS-debuginfo" arch="x86_64">
  <version epoch="0" ver="7.3.61" rel="51.0.2.2.sr20241103"/>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1620302400">- To get in sync with d:l:R:autoCRAN the Matrix package's split
  in -devel was reversed.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339200">- improved spec file according to comments of dimstar in
  https://build.opensuse.org/request/show/892685</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339201">- CHANGES IN R 4.1.0:
  FUTURE DIRECTIONS:
  * It is planned that the 4.1.x series will be the last to support
    32-bit Windows, with production of binary packages for that
    series continuing until early 2023.
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Data set esoph in package datasets now provides the correct
    numbers of controls; previously it had the numbers of cases added
    to these.  (Reported by Alexander Fowler in PR#17964.)
  NEW FEATURES:
  * www.omegahat.net is no longer one of the repositories known by
    default to setRepositories().  (Nowadays it only provides source
    packages and is often unavailable.)
  * Function package_dependencies() (in package tools) can now use
    different dependency types for direct and recursive dependencies.
  * The checking of the size of tarball in R CMD check --as-cran
    &lt;pkg&gt; may be tweaked via the new environment variable
    _R_CHECK_CRAN_INCOMING_TARBALL_THRESHOLD_, as suggested in
    PR#17777 by Jan Gorecki.
  * Using c() to combine a factor with other factors now gives a
    factor, an ordered factor when combining ordered factors with
    identical levels.
  * apply() gains a simplify argument to allow disabling of
    simplification of results.
  * The format() method for class "ftable" gets a new option justify.
    (Suggested by Thomas Soeiro.)
  * New ...names() utility.  (Proposed by Neal Fultz in PR#17705.)
  * type.convert() now warns when its as.is argument is not
    specified, as the help file always said it _should_.  In that
    case, the default is changed to TRUE in line with its change in
    read.table() (related to stringsAsFactor) in R 4.0.0.
  * When printing list arrays, classed objects are now shown _via_
    their format() value if this is a short enough character string,
    or by giving the first elements of their class vector and their
    length.
  * capabilities() gets new entry "Rprof" which is TRUE when R has
    been configured with the equivalent of --enable-R-profiling (as
    it is by default).  (Related to Michael Orlitzky's report
    PR#17836.)
  * str(xS4) now also shows extraneous attributes of an S4 object
    xS4.
  * Rudimentary support for vi-style tags in rtags() and R CMD rtags
    has been added.  (Based on a patch from Neal Fultz in PR#17214.)
  * checkRdContents() is now exported from tools; it and also
    checkDocFiles() have a new option chkInternal allowing to check
    Rd files marked with keyword "internal" as well.  The latter can
    be activated for R CMD check via environment variable
    _R_CHECK_RD_INTERNAL_TOO_.
  * New functions numToBits() and numToInts() extend the raw
    conversion utilities to (double precision) numeric.
  * Functions URLencode() and URLdecode() in package utils now work
    on vectors of URIs.  (Based on patch from Bob Rudis submitted
    with PR#17873.)
  * path.expand() can expand ~user on most Unix-alikes even when
    readline is not in use.  It tries harder to expand ~, for example
    should environment variable HOME be unset.
  * For HTML help (both dynamic and static), Rd file links to help
    pages in external packages are now treated as references to
    topics rather than file names, and fall back to a file link only
    if the topic is not found in the target package. The earlier rule
    which prioritized file names over topics can be restored by
    setting the environment variable _R_HELP_LINKS_TO_TOPICS_ to a
    false value.
  * c() now removes NULL arguments before dispatching to methods,
    thus simplifying the implementation of c() methods, _but_ for
    back compatibility keeps NULL when it is the first argument.
    (From a report and patch proposal by Lionel Henry in PR#17900.)
  * Vectorize()'s result function's environment no longer keeps
    unneeded objects.
  * Function ...elt() now propagates visibility consistently with
    ..n.  (Thanks to Lionel Henry's PR#17905.)
  * capture.output() no longer uses non-standard evaluation to
    evaluate its arguments.  This makes evaluation of functions like
    parent.frame() more consistent.  (Thanks to Lionel Henry's
    PR#17907.)
  * packBits(bits, type="double") now works as inverse of
    numToBits().  (Thanks to Bill Dunlap's proposal in PR#17914.)
  * curlGetHeaders() has two new arguments, timeout to specify the
    timeout for that call (overriding getOption("timeout")) and TLS
    to specify the minimum TLS protocol version to be used for
    https:// URIs (_inter alia_ providing a means to check for sites
    using deprecated TLS versions 1.0 and 1.1).
  * For nls(), an optional constant scaleOffset may be added to the
    denominator of the relative offset convergence test for cases
    where the fit of a model is expected to be exact, thanks to a
    proposal by John Nash.  nls(*, trace=TRUE) now also shows the
    convergence criterion.
  * Numeric differentiation _via_ numericDeriv() gets new optional
    arguments eps and central, the latter for taking central divided
    differences.  The latter can be activated for nls() via
    nls.control(nDcentral = TRUE).
  * nls() now passes the trace and control arguments to getInitial(),
    notably for all self-starting models, so these can also be fit in
    zero-noise situations via a scaleOffset.  For this reason, the
    initial function of a selfStart model must now have ... in its
    argument list.
  * bquote(splice = TRUE) can now splice expression vectors with
    attributes: this makes it possible to splice the result of
    parse(keep.source = TRUE).  (Report and patch provided by Lionel
    Henry in PR#17869.)
  * textConnection() gets an optional name argument.
  * get(), exists(), and get0() now signal an error if the first
    argument has length greater than 1.  Previously additional
    elements were silently ignored.  (Suggested by Antoine Fabri on
    R-devel.)
  * R now provides a shorthand notation for creating functions, e.g.
    \(x) x + 1 is parsed as function(x) x + 1.
  * R now provides a simple native forward pipe syntax |&gt;.  The
    simple form of the forward pipe inserts the left-hand side as the
    first argument in the right-hand side call.  The pipe
    implementation as a syntax transformation was motivated by
    suggestions from Jim Hester and Lionel Henry.
  * all.equal(f, g) for functions now by default also compares their
    environment(.)s, notably via new all.equal method for class
    function.  Comparison of nls() fits, e.g., may now need
    all.equal(m1, m2, check.environment = FALSE).
  * .libPaths() gets a new option include.site, allowing to _not_
    include the site library.  (Thanks to Dario Strbenac's suggestion
    and Gabe Becker's PR#18016.)
  * Lithuanian translations are now available.  (Thanks to Rimantas
    Zakauskas.)
  * names() now works for DOTSXP objects.  On the other hand, in
    R-lang, the R language manual, we now warn against relying on the
    structure or even existence of such dot-dot-dot objects.
  * all.equal() no longer gives an error on DOTSXP objects.
  * capabilities("cairo") now applies only to the file-based devices
    as it is now possible (if very unusual) to build R with Cairo
    support for those but not for X11().
  * There is optional support for tracing the progress of
    loadNamespace() - see its help.
  * (Not Windows.)  l10n_info() reports an additional element, the
    name of the encoding as reported by the OS (which may differ from
    the encoding part (if any) of the result from
    Sys.getlocale("LC_CTYPE").
  * New function gregexec() which generalizes regexec() to find _all_
    disjoint matches and well as all substrings corresponding to
    parenthesized subexpressions of the given regular expression.
    (Contributed by Brodie Gaslam.)
  * New function charClass() in package utils to query the
    wide-character classification functions in use (such as
    iswprint).
  * The names of quantile()'s result no longer depend on the global
    getOption("digits"), but quantile() gets a new optional argument
    digits = 7 instead.
  * grep(), sub(), regexp and variants work considerably faster for
    long factors with few levels.  (Thanks to Michael Chirico's
    PR#18063.)
  * Provide grouping of x11() graphics windows within a window
    manager such as Gnome or Unity; thanks to a patch by Ivan Krylov
    posted to R-devel.
  * The split() method for class data.frame now allows the f argument
    to be specified as a formula.
  * sprintf now warns on arguments unused by the format string.
  * New palettes "Rocket" and "Mako" for hcl.colors() (approximating
    palettes of the same name from the 'viridisLite' package).
    Contributed by Achim Zeileis.
  * The base environment and its namespace are now locked (so one can
    no longer add bindings to these or remove from these).
  * Rterm handling of multi-byte characters has been improved,
    allowing use of such characters when supported by the current
    locale.
  * Rterm now accepts ALT+ +xxxxxxxx sequences to enter Unicode
    characters as hex digits.
  * Environment variable LC_ALL on Windows now takes precedence over
    LC_CTYPE and variables for other supported categories, matching
    the POSIX behaviour.
  * duplicated() and anyDuplicated() are now optimized for integer
    and real vectors that are known to be sorted via the ALTREP
    framework. Contributed by Gabriel Becker via PR#17993.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 14
    and so packages that provide graphics devices should be
    reinstalled.
  * Graphics devices should now specify deviceVersion to indicate
    what version of the graphics engine they support.
  * Graphics devices can now specify deviceClip.  If TRUE, the
    graphics engine will never perform any clipping of output itself.
    The clipping that the graphics engine does perform (for both
    canClip = TRUE and canClip = FALSE) has been improved to avoid
    producing unnecessary artifacts in clipped output.
  * The grid package now allows gpar(fill) to be a linearGradient(),
    a radialGradient(), or a pattern().  The viewport(clip) can now
    also be a grob, which defines a clipping path, and there is a new
    viewport(mask) that can also be a grob, which defines a mask.
    These new features are only supported so far on the Cairo-based
    graphics devices and on the pdf() device.
  * (Not Windows.)  A warning is given when a Cairo-based type is
    specified for a png(), jpeg(), tiff() or bmp() device but Cairo
    is unsupported (so type = "Xlib" is tried instead).
  * grSoftVersion() now reports the versions of FreeType and
    FontConfig if they are used directly (not _via_ Pango), as is
    most commonly done on macOS.
  C-LEVEL FACILITIES:
  * The _standalone_ libRmath math library and R's C API now provide
    log1pexp() again as documented, and gain log1mexp().
  INSTALLATION on a UNIX-ALIKE:
  * configure checks for a program pkgconf if program pkg-config is
    not found.  These are now only looked for on the path (like
    almost all other programs) so if needed specify a full path to
    the command in PKG_CONFIG, for example in file config.site.
  * C99 function iswblank is required - it was last seen missing ca
    2003 so the workaround has been removed.
  * There are new configure options --with-internal-iswxxxxx,
  - -with-internal-towlower and --with-internal-wcwidth which allows
    the system functions for wide-character classification,
    case-switching and width (wcwidth and wcswidth) to be replaced by
    internal ones.  The first has long been used on macOS, AIX (and
    Windows) but this enables it to be unselected there and selected
    for other platforms (it is the new default on Solaris).  The
    second is new in this version of R and is selected by default on
    macOS and Solaris.  The third has long been the default and
    remains so as it contains customizations for East Asian
    languages.
    System versions of these functions are often minimally
    implemented (sometimes only for ASCII characters) and may not
    cover the full range of Unicode points: for example Solaris (and
    Windows) only cover the Basic Multilingual Plane.
  * Cairo installations without X11 are more likely to be detected by
    configure, when the file-based Cairo graphics devices will be
    available but not X11(type = "cairo").
  * There is a new configure option --with-static-cairo which is the
    default on macOS.  This should be used when only static cairo
    (and where relevant, Pango) libraries are available.
  * Cairo-based graphics devices on platforms without Pango but with
    FreeType/FontConfig will make use of the latter for font
    selection.
  LINK-TIME OPTIMIZATION on a UNIX-ALIKE:
  * Configuring with flag --enable-lto=R now also uses LTO when
    installing the recommended packages.
  * R CMD INSTALL and R CMD SHLIB have a new flag --use-LTO to use
    LTO when compiling code, for use with R configured with
  - -enable-lto=R.  For R configured with --enable-lto, they have
    the new flag --no-use-LTO.
    Packages can opt in or out of LTO compilation _via_ a UseLTO
    field in the DESCRIPTION file.  (As usual this can be overridden
    by the command-line flags.)
  BUILDING R on Windows:
  * for GCC &gt;= 8, FC_LEN_T is defined in config.h and hence character
    lengths are passed from C to Fortran in _inter alia_ BLAS and
    LAPACK calls.
  * There is a new text file src/gnuwin32/README.compilation, which
    outlines how C/Fortran code compilation is organized and
    documents new features:
  * R can be built with Link-Time Optimization with a suitable
    compiler - doing so with GCC 9.2 showed several
    inconsistencies which have been corrected.
  * There is support for cross-compiling the C and Fortran code
    in R and standard packages on suitable (Linux) platforms.
    This is mainly intended to allow developers to test later
    versions of compilers - for example using GCC 9.2 or 10.x has
    detected issues that GCC 8.3 in Rtools40 does not.
  * There is experimental support for cross-building R packages
    with C, C++ and/or Fortran code.
  * The R installer can now be optionally built to support a single
    architecture (only 64-bit or only 32-bit).
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++14 where
    available (which it is on all currently checked platforms): if
    not (as before) C++11 is used if available otherwise C++ is not
    supported.
    Packages which specify C++11 will still be installed using C++11.
    C++14 compilers may give deprecation warnings, most often for
    std::random_shuffle (deprecated in C++14 and removed in C++17).
    Either specify C++11 (see 'Writing R Extensions') or modernize
    the code and if needed specify C++14.  The latter has been
    supported since R 3.4.0 so the package's DESCRIPTION would need
    to include something like
    Depends: R (&gt;= 3.4)
  PACKAGE INSTALLATION on Windows:
  * R CMD INSTALL and R CMD SHLIB make use of their flag --use-LTO
    when the LTO_OPT make macro is set in file etc/${R_ARCH}/Makeconf
    or in a personal/site Makevars file.  (For details see 'Writing R
    Extensions' SS4.5.)
    This provides a valuable check on code consistency.  It does work
    with GCC 8.3 as in Rtools40, but that does not detect everything
    the CRAN checks with current GCC do.
  PACKAGE INSTALLATION on macOS:
  * The default personal library directory on builds with
  - -enable-aqua (including CRAN builds) now differs by CPU type,
    one of
    ~/Library/R/x86_64/x.y/library
    ~/Library/R/arm64/x.y/library
    This uses the CPU type R (and hence the packages) were built for,
    so when a x86_64 build of R is run under Rosetta emulation on an
    arm64 Mac, the first is used.
  UTILITIES:
  * R CMD check can now scan package functions for bogus return
    statements, which were possibly intended as return() calls (wish
    of PR#17180, patch by Sebastian Meyer). This check can be
    activated via the new environment variable
    _R_CHECK_BOGUS_RETURN_, true for --as-cran.
  * R CMD build omits tarballs and binaries of previous builds from
    the top-level package directory.  (PR#17828, patch by Sebastian
    Meyer.)
  * R CMD check now runs sanity checks on the use of LazyData, for
    example that a data directory is present and that
    LazyDataCompression is not specified without LazyData and has a
    documented value.  For packages with large LazyData databases
    without specifying LazyDataCompression, there is a reference to
    the code given in 'Writing R Extensions' SS1.1.6 to test the
    choice of compression (as in all the CRAN packages tested a
    non-default method was preferred).
  * R CMD build removes LazyData and LazyDataCompression fields from
    the DESCRIPTION file of packages without a data directory.
  ENCODING-RELATED CHANGES:
  * The parser now treats \Unnnnnnnn escapes larger than the upper
    limit for Unicode points (\U10FFFF) as an error as they cannot be
    represented by valid UTF-8.
    Where such escapes are used for outputting non-printable
    (including unassigned) characters, 6 hex digits are used (rather
    than 8 with leading zeros).  For clarity, braces are used, for
    example \U{0effff}.
  * The parser now looks for non-ASCII spaces on Solaris (as
    previously on most other OSes).
  * There are warnings (including from the parser) on the use of
    unpaired surrogate Unicode points such as \uD834.  (These cannot
    be converted to valid UTF-8.)
  * Functions nchar(), tolower(), toupper() and chartr() and those
    using regular expressions have more support for inputs with a
    marked Latin-1 encoding.
  * The character-classification functions used (by default) to
    replace the system iswxxxxx functions on Windows, macOS and AIX
    have been updated to Unicode 13.0.0.
    The character-width tables have been updated to include new
    assignments in Unicode 13.0.0.
  * The code for evaluating default (extended) regular expressions
    now uses the same character-classification functions as the rest
    of R (previously they differed on Windows, macOS and AIX).
  * There is a build-time option to replace the system's
    wide-character wctrans C function by tables shipped with R: use
    configure option --with-internal-towlower or (on Windows)
  - DUSE_RI18N_CASE in CFLAGS when building R.  This may be needed
    to allow tolower() and toupper() to work with Unicode characters
    beyond the Basic Multilingual Plane where not supported by system
    functions (e.g. on Solaris where it is the new default).
  * R is more careful when truncating UTF-8 and other multi-byte
    strings that are too long to be printed, passed to the system or
    libraries or placed into an internal buffer.  Truncation will no
    longer produce incomplete multibyte characters.
  DEPRECATED AND DEFUNCT:
  * Function plclust() from the package stats and
    package.dependencies(), pkgDepends(), getDepList(),
    installFoundDepends(), and vignetteDepends() from package tools
    are defunct.
  * Defunct functions checkNEWS() and readNEWS() from package tools
    and CRAN.packages() from utils have been removed.
  * R CMD config CXXCPP is defunct (it was deprecated in R 3.6.2).
  * parallel::detectCores() drops support for Irix (retired in 2013).
  * The LINPACK argument to chol.default(), chol2inv(),
    solve.default() and svd() has been defunct since R 3.1.0.  It was
    silently ignored up to R 4.0.3 but now gives an error.
  * Subsetting/indexing, such as ddd[*] or ddd$x on a DOTSXP
    (dot-dot-dot) object ddd has been disabled; it worked by accident
    only and was undocumented.
  BUG FIXES:
  * Many more C-level allocations (mainly by malloc and strdup) are
    checked for success with suitable alternative actions.
  * Bug fix for replayPlot(); this was turning off graphics engine
    display list recording if a recorded plot was replayed in the
    same session.  The impact of the bug became visible if resize the
    device after replay OR if attempted another savePlot() after
    replay (empty display list means empty screen on resize or empty
    saved plot).
  * R CMD check etc now warn when a package exports non-existing S4
    classes or methods, also in case of no "methods" presence.
    (Reported by Alex Bertram; reproducible example and patch by
    Sebastian Meyer in PR#16662.)
  * boxplot() now also accepts calls for labels such as ylab, the
    same as plot().  (Reported by Marius Hofert.)
  * The help page for xtabs() now correctly states that addNA is
    setting na.action = na.pass among others.  (Reported as PR#17770
    by Thomas Soeiro.)
  * The R CMD check &lt;pkg&gt; gives a longer and more comprehensible
    message when DESCRIPTION misses dependencies, e.g., in Imports:.
    (Thanks to the contributors of PR#17179.)
  * update.default() now calls the generic update() on the formula to
    work correctly for models with extended formulas.  (As reported
    and suggested by Neal Fultz in PR#17865.)
  * The horizontal position of leaves in a dendrogram is now correct
    also with center = FALSE.  (PR#14938, patch from Sebastian
    Meyer.)
  * all.equal.POSIXt() no longer warns about and subsequently ignores
    inconsistent "tzone" attributes, but describes the difference in
    its return value (PR#17277).  This check can be disabled _via_
    the new argument check.tzone = FALSE as suggested by Sebastian
    Meyer.
  * as.POSIXct() now populates the "tzone" attribute from its tz
    argument when x is a logical vector consisting entirely of NA
    values.
  * x[[2^31]] &lt;- v now works.  (Thanks to the report and patch by
    Suharto Anggono in PR#17330.)
  * In log-scale graphics, axis() ticks and label positions are now
    computed more carefully and symmetrically in their range,
    typically providing _more_ ticks, fulfilling wishes in PR#17936.
    The change really corresponds to an improved axisTicks() (package
    grDevices), potentially influencing grid and lattice, for
    example.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now correct to at
    least five digits where it was catastrophically wrong,
    previously.
  * sum(df) and similar "Summary"- and "Math"-group member functions
    now work for data frames df with logical columns, notably also of
    zero rows.  (Reported to R-devel by Martin "b706".)
  * unsplit() had trouble with tibbles due to unsound use of rep(NA,
    len)-indexing, which should use NA_integer_ (Reported to R-devel
    by Mario Annau.)
  * pnorm(x, log.p = TRUE) underflows to -Inf slightly later.
  * show(&lt;hidden S4 generic&gt;) prints better and without quotes for
    non-hidden S4 generics.
  * read.table() and relatives treated an "NA" column name as missing
    when check.names = FALSE PR#18007.
  * Parsing strings containing UTF-16 surrogate pairs such as
    "\uD834\uDD1E" works better on some (uncommon) platforms.
    sprintf("%X", utf8ToInt("\uD834\uDD1E")) should now give "1D11E"
    on all platforms.
  * identical(x,y) is no longer true for differing DOTSXP objects,
    fixing PR#18032.
  * str() now works correctly for DOTSXP and related exotics, even
    when these are doomed.
    Additionally, it no longer fails for lists with a class and
    "irregular" method definitions such that e.g. lapply(*) will
    necessarily fail, as currently for different igraph objects.
  * Too long lines in environment files (e.g. Renviron) no longer
    crash R. This limit has been increased to 100,000 bytes.
    (PR#18001.)
  * There is a further workaround for FreeType giving incorrect
    italic font faces with cairo-based graphics devices on macOS.
  * add_datalist(*, force = TRUE) (from package tools) now actually
    updates an existing data/datalist file for new content.  (Thanks
    to a report and patch by Sebastian Meyer in PR#18048.)
  * cut.Date() and cut.POSIXt() could produce an empty last interval
    for breaks = "months" or breaks = "years".  (Reported as PR#18053
    by Christopher Carbone.)
  * Detection of the encoding of 'regular' macOS locales such as
    en_US (which is UTF-8) had been broken by a macOS change:
    fortunately these are now rarely used with en_US.UTF-8 being
    preferred.
  * sub() and gsub(pattern, repl, x, *) now keep attributes of x such
    as names() also when pattern is NA (PR#18079).
  * Time differences ("difftime" objects) get a replacement and a
    rep() method to keep "units" consistent.  (Thanks to a report and
    patch by Nicolas Bennett in PR#18066.)
  * The \RdOpts macro, setting defaults for \Sexpr options in an Rd
    file, had been ineffective since R 2.12.0: it now works again.
    (Thanks to a report and patch by Sebastian Meyer in PR#18073.)
  * mclapply and pvec no longer accidentally terminate parallel
    processes started before by mcparallel or related calls in
    package parallel (PR#18078).
  * grep and other functions for evaluating (extended) regular
    expressions handle in Unicode also strings not explicitly flagged
    UTF-8, but flagged native when running in UTF-8 locale.
  * Fixed a crash in fifo implementation on Windows (PR#18031).
  * Binary mode in fifo on Windows is now properly detected from
    argument open (PR#15600, PR#18031).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1622808000">- The line %{__install} -m 755 -d %{_infodir}
  no longer works in TW or Factory.
  But without that line it works everywhere. So this instruction
  was commented out of the spec file.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1628596800">- CHANGES IN R 4.1.1:
  NEW FEATURES:
  * require(pkg, quietly = TRUE) is quieter and in particular does
    not warn if the package is not found.
  DEPRECATED AND DEFUNCT:
  * Use of ftp:// URIs should be regarded as deprecated, with
    on-going support confined to method = "libcurl" and not routinely
    tested.  (Nowadays no major browser supports them.)
  * The non-default method = "internal" is deprecated for http:// and
    ftp:// URIs for both download.file and url.
  * On Windows, method = "wininet" is deprecated for http://,
    https:// and ftp:// URIs for both download.file and url.  (A
    warning is only given for ftp://.)
    For ftp:// URIs the default method is now "libcurl" if available
    (which it is on CRAN builds).
    method = "wininet" remains the default for http:// and https://
    URIs but if libcurl is available, using method = "libcurl" is
    preferred.
  INSTALLATION:
  * make check now works also without a LaTeX installation.  (Thanks
    to Sebastian Meyer's PR#18103.)
  BUG FIXES:
  * make check-devel works again in an R build configured with
  - -without-recommended-packages.
  * qnbinom(p, size, mu) for large size/mu is correct now in a range
    of cases (PR#18095); similarly for the (size, prob)
    parametrization of the negative binomial.  Also qpois() and
    qbinom() are better and or faster for extreme cases.  The
    underlying C code has been modularized and is common to all four
    cases of discrete distributions.
  * gap.axis is now part of the axis() arguments which are passed
    from bxp(), and hence boxplot().  (Thanks to Martin Smith's
    report and suggestions in PR#18109.)
  * .First and .Last can again be set from the site profile.
  * seq.int(from, to, *) and seq.default(..) now work better in large
    range cases where from-to is infinite where the two boundaries
    are finite.
  * all.equal(x,y) now returns TRUE correctly also when several
    entries of abs(x) and abs(y) are close to .Machine$double.xmax,
    the largest finite numeric.
  * model.frame() now clears the object bit when removing the class
    attribute of a value via na.action (PR#18100).
  * charClass() now works with multi-character strings on Windows
    (PR#18104, fixed by Bill Dunlap).
  * encodeString() on Solaris now works again in Latin-1 encoding on
    characters represented differently in UTF-8.  Support for
    surrogate pairs on Solaris has been improved.
  * file.show() on Windows now works with non-ASCII path names
    representable in the current native encoding (PR#18132).
  * Embedded R on Windows can now find R home directory via the
    registry even when installed only for the current user
    (PR#18135).
  * pretty(x) with finite x now returns finite values also in the
    case where the extreme x values are close in size to the maximal
    representable number .Machine$double.xmax.
    Also, it's been tweaked for very small ranges and when a boundary
    is close (or equal) to zero; e.g., pretty(c(0,1e-317)) no longer
    has negative numbers, currently still warning about a very small
    range, and pretty(2^-(1024 - 2^-1/(c(24,10)))) is more accurate.
  * The error message for not finding vignette files when weaving has
    correct file sizes now. (Thanks to Sebastian Meyer's PR#18154.)
  * dnbinom(20, &lt;large&gt;, 1) now correctly gives 0, and similar cases
    are more accurate with underflow precaution.  (Reported by Francisco Vera Alcivar in PR#18072.)</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635163200">- repaired https://bugzilla.suse.com/show_bug.cgi?id=1191380
  (rpmacros now go to rpmmacrodir)
- minor clean-ups in spec file</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635768000">- CHANGES IN R 4.1.2:
  C-LEVEL FACILITIES:
  * The workaround in headers R.h and Rmath.h (using namespace std;)
    for the Oracle Developer Studio compiler is no longer needed now
    C++11 is required so has been removed.  A couple more usages of
    log() (which should have been std::log()) with an int argument
    are reported on Solaris.
  * The undocumented limit of 4095 bytes on messages from the
    S-compatibility macros PROBLEM and MESSAGE is now documented and
    longer messages will be silently truncated rather than
    potentially causing segfaults.
  * If the R_NO_SEGV_HANDLER environment variable is non-empty, the
    signal handler for SEGV/ILL/BUS signals (which offers recovery
    user interface) is not set. This allows more reliable debugging
    of crashes that involve the console.
  DEPRECATED AND DEFUNCT:
  * The legacy S-compatibility macros PROBLEM, MESSAGE, ERROR, WARN,
    WARNING, RECOVER, ... are deprecated and will be hidden in R
    4.2.0. R's native interface of Rf_error and Rf_warning has long
    been preferred.
  BUG FIXES:
  * .mapply(F, dots, .) no longer segfaults when dots is not a list
    and uses match.fun(F) as always documented; reported by Andrew
    Simmons in PR#18164.
  * hist(&lt;Date&gt;, ...) and hist(&lt;POSIXt&gt;, ...)  no longer pass
    arguments for rect() (such as col and density) to axis().
    (Thanks to Sebastian Meyer's PR#18171.)
  * \Sexpr{ch} now preserves Encoding(ch). (Thanks to report and
    patch by Jeroen Ooms in PR#18152.)
  * Setting the RNG to "Marsaglia-Multicarry" e.g., by RNGkind(), now
    warns in more places, thanks to Andr'e Gillibert's report and
    patch in PR#18168.
  * gray(numeric(), alpha=1/2) no longer segfaults, fixing PR#18183,
    reported by Till Krenz.
  * Fixed dnbinom(x, size=&lt;very_small&gt;, .., log=TRUE) regression,
    reported by Martin Morgan.
  * as.Date.POSIXlt(x) now keeps names(x), thanks to Davis Vaughan's
    report and patch in PR#18188.
  * model.response() now strips an "AsIs" class typically, thanks to
    Duncan Murdoch's report and other discussants in PR#18190.
  * try() is considerably faster in case of an error and long call,
    as e.g., from some do.call().  Thanks to Alexander Kaever's
    suggestion posted to R-devel.
  * qqline(y = &lt;object&gt;) such as y=I(.), now works, see also
    PR#18190.
  * Non-integer mgp par() settings are now handled correctly in
    axis() and mtext(), thanks to Mikael Jagan and Duncan Murdoch's
    report and suggestion in PR#18194.
  * formatC(x) returns length zero character() now, rather than ""
    when x is of length zero, as documented, thanks to Davis
    Vaughan's post to R-devel.
  * removeSource(fn) now retains (other) attributes(fn).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1647000000">- CHANGES IN R 4.1.3:
  NEW FEATURES:
  * The default version of Bioconductor has been changed to 3.14.
    (This is used by setRepositories and the menus in GUIs.)
  UTILITIES:
  * R CMD check --as-cran has a workaround for a bug in versions of
    file up to at least 5.41 which mis-identify DBF files last
    changed in 2022 as executables.
  C-LEVEL FACILITIES:
  * The legacy S-compatibility macros SINGLE_* in R_ext/Constants.h
    (included by R.h) are deprecated and will be removed in R 4.2.0.
  BUG FIXES:
  * Initialization of self-starting nls() models with initialization
    functions following the pre-R-4.1.0 API (without the ...
    argument) works again for now, with a deprecation warning.
  * Fixed quoting of ~autodetect~ in Java setting defaults to avoid
    inadvertent user lookup due to leading ~, reported in PR#18231 by
    Harold Gutch.
  * substr(., start, stop) &lt;- v now treats _negative_ stop values
    correctly.  Reported with a patch in PR#18228 by Brodie Gaslam.
  * Subscripting an array x without dimnames by a
    length(dim(x))-column character matrix gave "random" non-sense,
    now an error; reported in PR#18244 by Mikael Jagan.
  * ...names() now matches names(list(...)) closely, fixing PR#18247.
  * all.equal(*, scale = s) now works as intended when length(s) &gt; 1,
    partly thanks to Michael Chirico's PR#18272.
  * print(x) for long vectors x now also works for named atomic
    vectors or lists and prints the correct number when reaching the
    getOption("max.print") limit; partly thanks to a report and
    proposal by Hugh Parsonage to the R-devel list.
  * all.equal(&lt;selfStart&gt;, *) no longer signals a deprecation
    warning.
  * reformulate(*, response=r) gives a helpful error message now when
    length(r) &gt; 1, thanks to Bill Dunlap's PR#18281.
  * Modifying globalCallingHandlers inside withCallingHandlers() now
    works or fails correctly, thanks to Henrik Bengtsson's PR#18257.
  * hist(&lt;Date&gt;, breaks = "days") and hist(&lt;POSIXt&gt;, breaks = "secs")
    no longer fail for inputs of length 1.
  * qbeta(.001, .9, .009) and similar cases now converge correctly
    thanks to Ben Bolker's report in PR#17746.
  * window(x, start, end) no longer wrongly signals "'start' cannot
    be after 'end'", fixing PR#17527 and PR#18291.
  * data() now checks that its (rarely used) list argument is a
    character vector - a couple of packages passed other types and
    gave incorrect results.
  * which() now checks its arr.ind argument is TRUE rather coercing
    to logical and taking the first element - which gave incorrect
    results in package code.
  * model.weights() and model.offset() more carefully extract their
    model components, thanks to Ben Bolker and Tim Taylor's R-devel
    post.
  * list.files(recursive = TRUE) now shows all broken symlinks
    (previously, some of them may have been omitted, PR#18296).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1650628800">- CHANGES IN R 4.2.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * The formula method of aggregate() now matches the generic in
    naming its first argument x (resolving PR#18299 by Thomas
    Soeiro).
    This means that calling aggregate() with a formula as a named
    first argument requires name formula in earlier versions of R and
    name x now, so portable code should not name the argument (code
    in many packages did).
  * Calling &amp;&amp; or || with either argument of length greater than one
    now gives a warning (which it is intended will become an error).
  * Calling if() or while() with a condition of length greater than
    one gives an error rather than a warning.  Consequently,
    environment variable _R_CHECK_LENGTH_1_CONDITION_ no longer has
    any effect.
  * Windows users should consult the WINDOWS section below for some
    profound changes including
  * Support for 32-bit builds has been dropped.
  * UTF-8 locales are used where available.
  * The default locations for the R installation and personal
    library folder have been changed.
    Thanks to Tomas Kalibera for months of work on the Windows port
    for this release.
  NEW FEATURES:
  * matrix(x, n, m) now warns in more cases where length(x) differs
    from n * m, as suggested by Abby Spurdle and Wolfgang Huber in
    Feb 2021 on the R-devel mailing list.
    This warning can be turned into an error by setting environment
    variable _R_CHECK_MATRIX_DATA_ to TRUE: R CMD check --as-cran
    does so unless it is already set.
  * Function file_test() in package utils gains tests for symlinks,
    readability and writability.
  * capabilities("libxml") is now false.
    The description of capabilities("http/ftp") now reflects that it
    refers to the default method, no longer the internal one.
  * simplify2array() gains an except argument for controlling the
    exceptions used by sapply().
  * Environment variables R_LIBS_USER and R_LIBS_SITE are both now
    set to the R system default if unset or empty, and can be set to
    NULL to indicate an empty list of user or site library
    directories.
  * The warning for axis()(-like) calls in cases of relatively small
    ranges (typically in log-scale situations) is slightly improved
    _and_ suppressed from explicit calls to .axisPars() as has always
    been the intention.
  * The contrasts setter function `contrasts&lt;-` gains an explicit
    default how.many = NULL rather than just using missing(how.many).
  * grid.pretty() gains a new optional argument n = 5.
  * There is a new function .pretty() with option bounds as a
    technical-utility version of pretty().  It and pretty() gain a
    new argument f.min with a better than back-compatible default.
  * Function grDevices::axisTicks() and related functions such as
    graphics::axis() work better, notably for the log scale; partly
    because of the pretty() improvements, but also because care is
    taken e.g., when ylim is finite but diff(ylim) is infinite.
  * nclass.FD() gains a digits option.
  * The R Mathlib internal C function bd0() (called indirectly from a
    dozen probability density and distribution functions such as
    dpois(), dbinom(), dgamma(), pgamma() _etc_) has been
    complemented by a more sophisticated and (mostly) more accurate C
    function ebd0(), currently called only by internal dpois_raw()
    improving accuracy for R level dpois() and potentially others
    calling it such as dnbinom(), dgamma() or pgamma().  (Thanks to
    Morten Welinder's PR#15628.)
  * write.ftable() gains sep = " " argument as suggested by Thomas
    Soeiro.
  * The names of the locale categories supported by R's
    Sys.getlocale() and Sys.setlocale() are now provided by variable
    .LC.categories in the base namespace.
  * The Date and POSIXt methods for hist() and the histogram method
    for plot() now also use the new default col = "lightgray" in
    consistency with the corresponding change to hist()'s default for
    R 4.0.0.
  * hist.default() gains new fuzz argument, and the histogram plot
    method no longer uses fractional axis ticks when displaying
    counts ("Frequency").
  * mapply() and hence Map() now also obey the "max-or-0-if-any"
    recycling rule, such that, e.g., Map(`+`, 1:3, 1[0]) is valid
    now.
  * as.character(&lt;obj&gt;) for "hexmode" or "octmode" objects now
    fulfils the important basic rule as.character(x)[j] ===
    as.character(x[j]).
  * The set utility functions, notably intersect() have been tweaked
    to be more consistent and symmetric in their two set arguments,
    also preserving a common mode.
  * substr(ch, start,end) &lt;- new now e.g., preserves names(ch); ditto
    for substring(), thanks to a patch from Brodie Gaslam.
  * plot(&lt;lm&gt;) gains a extend.ylim.f argument, in partial response to
    PR#15285; further PR#17784 is fixed thanks to several
    contributors and a patch by Elin Waring.  The Cook's dist
    contours get customizable via cook.col and cook.lty with a
    different default color and their legend is nicer by default and
    customizable via cook.legendChanges.
  * Attempting to subset an object that is not subsettable now
    signals an error of class notSubsettableError. The
    non-subsettable object is contained in the object field of the
    error condition.
  * Subscript-out-of-bounds errors are now signaled as errors of
    class subscriptOutOfBoundsError.
  * Stack-overflow errors are now signaled as errors inheriting from
    class stackOverflowError. See ?stackOverflowError for more
    details.
  * New partly experimental Sys.setLanguage() utility, solving the
    main problem of PR#18055.
  * gettext() and gettextf() get a new option trim = TRUE which when
    set to false allows translations for strings such as "Execution
    halted\n" typical for C code.
  * An experimental implementation of hash tables is now available.
    See ?hashtab for more details.
  * identical() gains a extptr.as.ref argument for requesting that
    external pointer objects be compared as reference objects.
  * reorder() gets an argument decreasing which it passes to sort()
    for level creation; based on the wish and patch by Thomas Soeiro
    in PR#18243.
  * as.vector() gains a data.frame method which returns a simple
    named list, also clearing a long standing 'FIXME' to enable
    as.vector(&lt;data.frame&gt;, mode="list").  This breaks code relying
    on as.vector(&lt;data.frame&gt;) to return the unchanged data frame.
  * legend() is now vectorized for arguments cex, x.intersp, and
    text.width.  The latter can now also be specified as a vector
    (one element for each column of the legend) or as NA for
    computing a proper column wise maximum value of strwidth(legend).
    The argument y.intersp can be specified as a vector with one
    entry for each row of the legend.
    legend() also gains new arguments title.cex and title.font.
    Thanks to Swetlana Herbrandt.
  * Deparsing no longer remaps attribute names dim, dimnames, levels,
    names and tsp to historical S-compatible names (which structure()
    maps back).
  * sample() and sample.int() have additional sanity checks on their
    size and n arguments.
    all.equal.numeric() gains a sanity check on its tolerance
    argument - calling all.equal(a, b, c) for three numeric vectors
    is a surprisingly common error.
    mean(na.rm =), rank(na.last =), barplot(legend.text =),
    boxplot(), contour(drawlabels =), polygon(border =) and
    methods::is(class2 =) have more robust sanity checks on their
    arguments.
    R CMD Rd2pdf (used by R CMD check) has a more robust sanity check
    on the format of \alias{} commands.
  * psigamma(x, deriv) for negative x now also works for deriv = 4
    and 5; their underlying C level dpsifn() is documented in
    'Writing R Extensions'.
  * The HTML help system now uses HTML5 (wish of PR#18149).
  * ks.test() now provides exact p-values also with ties and MC
    p-values in the two-sample (Smirnov) case.  By Torsten Hothorn.
  * ks.test() gains a formula interface, with y ~ 1 for the
    one-sample (Kolmogorov) test and y ~ group for the two-sample
    (Smirnov) test.  Contributed by Torsten Hothorn.
  * The return value from ks.test() now has class c("ks.test",
    "htest") - packages using try() need to take care to use
    inherits() and not == on the class.
  * New functions psmirnov(), qsmirnov() and rsmirnov() in package
    stats implementing the asymptotic and exact distributions of the
    two-sample Smirnov statistic.
  * iconv() now allows sub = "c99" to use C99-style escapes for UTF-8
    inputs which cannot be converted to encoding to.
  * In a forward pipe |&gt; expression it is now possible to use a named
    argument with the placeholder _ in the rhs call to specify where
    the lhs is to be inserted.  The placeholder can only appear once
    on the rhs.
  * The included LAPACK sources have been updated to version 3.10.0,
    except for the four Fortran 77 routines which 3.10.0 has
    re-implemented in Fortran 90 (where the older versions have been
    retained as the R build process does not support Fortran 90).
  * path.expand() and most other uses of tilde expansion now warn if
    a path would be too long if expanded.  (An exception is
    file.exists(), which silently returns false.)
  * trunc(&lt;Date&gt;, *) now supports units = "months" or "years" for
    consistency with the POSIXt method, thanks to Dirk Eddelbuettel's
    proposal in PR#18099.
  * list2DF() now checks that its arguments are of the same length,
    rather than use recycling.
  * The HTML help system has several new features: LaTeX-like math
    can be typeset using either KaTeX or MathJax, usage and example
    code is highlighted using Prism, and for dynamic help the output
    of examples and demos can be shown within the browser if the
    knitr package is installed. These features can be disabled by
    setting the environment variable _R_HELP_ENABLE_ENHANCED_HTML_ to
    a false value.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 15
    and so packages that provide graphics devices should be
    reinstalled.
  * The grid package now allows the user to specify a "vector" of
    pattern fills.  The fill argument to gpar() accepts a list of
    gradients and/or patterns and the functions linearGradient(),
    radialGradient(), and pattern() have a new group argument.
    Points grobs (data symbols) can now also have a pattern fill.
    The grobCoords() function now returns a more informative and
    complex result.
  * The grid package has new functions for drawing isolated groups:
    grid.group(), grid.define(), and grid.use().  These functions add
    compositing operators and affine transformations to R's graphics
    capabilities.
    The grid package also has new functions for stroking and filling
    paths: grid.stroke(), grid.fill(), and grid.fillStroke().
    A new function as.path() allows the user to specify the fill rule
    for a path that is to be used for clipping, stroking, or filling;
    available options are "winding" and "evenodd".  A new function
    as.mask() allows the user to specify the type of a mask;
    available options are "alpha" and "luminance".
    These new features are only supported so far (at most) on the
    Cairo-based graphics devices and on the pdf() device.
  * dev.capabilities() reports on device support for the new
    features.
  * par() now warns about unnamed non-character arguments to prevent
    misuse such as {usr &lt;- par("usr"); par(usr)}.
  INSTALLATION:
  * Facilities for accessing ftp:// sites are no longer tested
    (except _pro tem_ for curlGetHeaders()) as modern browsers have
    removed support.
  * R can now be built with DEFS = -DSTRICT_R_HEADERS .
  PACKAGE INSTALLATION:
  * R CMD INSTALL no longer tangles vignettes. This completes an R
    CMD build change in R 3.0.0 and affects packages built before R
    3.0.2. Such packages should be re-made with R CMD build to have
    the tangled R code of vignettes shipped with the tarball.
  * USE_FC_LEN_T will become the default: this uses the correct
    prototypes for Fortran BLAS/LAPACK routines called from C/C++,
    and requires adjustment of most such calls - see 'Writing R
    Extensions' SS6.6.2.  (This has been supported since R 3.6.2.)
  * Package installation speed for packages installed with
    keep.source has been improved. This resolve the issue reported by
    Ofek Shilon in PR#18236.
  UTILITIES:
  * R CMD check can optionally report files/directories left behind
    in home, /tmp (even though TMPDIR is set) and other directories.
    See the "R Internals" manual for details.
  * R CMD check now reports byte-compilation errors during
    installation.  These are not usually fatal but may result in
    parts of the package not being byte-compiled.
  * _R_CHECK_DEPENDS_ONLY_ can be applied selectively to examples,
    tests and/or vignettes in R CMD check: see the "R Internals"
    manual.
  * _R_CHECK_SRC_MINUS_W_IMPLICIT_ now defaults to true: recent
    versions of Apple clang on macOS have made implicit function
    declarations in C into a compilation error.
  * R CMD check --as-cran makes use of the environment variable
    AUTORECONF.  See the "R Internals" manual SS8 for further details.
  * R CMD check --use-valgrind also uses valgrind when re-building
    vignettes as some non-Sweave vignettes unhelpfully comment out
    all their code when R CMD check runs vignettes.
  * Errors in re-building vignettes (unless there are LaTeX errors)
    are reported by R CMD check as ERROR rather than WARNING when
    running vignettes has been skipped (as it frequently is in CRAN
    checks and by --as-cran).
  * R CMD Rd2pdf gains a --quiet option that is used by R CMD build
    when building the PDF package manual.
  * R CMD Rd2pdf now always runs LaTeX in batch mode, consistent with
    Texinfo &gt;= 6.7. The --batch option is ignored.
  * R CMD build and R CMD check now include the Rd file name and line
    numbers in the error message of an \Sexpr evaluation failure.
  * For packages using the \doi Rd macro (now an install-time \Sexpr)
    but no other dynamic Rd content, R CMD build now produces a
    smaller tarball and is considerably faster - skipping temporary
    package installation.
  C-LEVEL FACILITIES:
  * The non-API header R_ext/R-ftp-http.h is no longer provided, as
    the entry points it covered are now all defunct.
  * A number of non-API declarations and macro definitions have been
    moved from the installed header Rinternals.h to the internal
    header Defn.h. Packages that only use entry points and
    definitions documented to be part of the API as specified in
    'Writing R Extensions' SS6 should not be affected.
  * The macro USE_RINTERNALS no longer has any effect when compiling
    package code.  Packages which also use R_NO_REMAP will need to
    ensure that the remapped names are used for calls to API
    functions that were formerly also made available as macros.
  * The deprecated legacy S-compatibility macros PROBLEM, MESSAGE,
    ERROR, WARN, WARNING, RECOVER, ... are no longer defined in
    R_exts/RS.h (included by R.h).  Replace these by calls to
    Rf_error and Rf_warning (defined in header R_ext/Error.h included
    by R.h).
    Header R_ext/RS.h no longer includes R_ext/Error.h.
  * Header R_ext/Constants.h (included by R.h) when included from C++
    now includes the C++ header cfloat rather than the C header
    float.h (now possible as C++11 is required).
  * The legacy S-compatibility macros DOUBLE_* in R_ext/Constants.h
    (included by R.h) are deprecated.
  * The deprecated S-compatibility macros SINGLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * R_Calloc, R_Free and R_Realloc are preferred to their unprefixed
    forms and error messages now use the prefix. These forms were
    introduced in R 3.4.0 and are available even when
    STRICT_R_HEADERS is defined.
  * rmultinom has been documented in 'Writing R Extensions' SS6 so is
    now part of the R API.
  * Similarly, Rtanpi, called from R level tanpi() is now part of the
    R API.
  * The long-deprecated, undocumented and non-API entry point call_R
    is no longer declared in R_ext/RS.h (included by R.h).
  * The header S.h which has been unsupported since Jan 2016 has been
    removed.  Use R.h instead.
  DEPRECATED AND DEFUNCT:
  * The (non-default and deprecated) method = "internal" for
    download.file() and url() no longer supports http:// nor ftp://
    URIs.  (It is used only for file:// URIs.)
    On Windows, download.file(method = "wininet") no longer supports
    ftp:// URIs.  (It is no longer the default method, which is
    "libcurl" and does.)
    On Windows, the deprecated method = "wininet" now gives a warning
    for http:// and https:// URIs for both download.file() and url().
    (It is no longer the default method.)
  * On Windows, the command-line option --max-mem-size and
    environment variable R_MAX_MEM_SIZE are defunct.  The memory
    allocation limit was important for 32-bit builds, but these are
    no longer supported.
  * default.stringsAsFactors() is now formally deprecated, where that
    was only mentioned on its regular help page, previously.  So it
    now gives a warning if called.
  * unix.time() is defunct now; it had been deprecated since R 3.4.0.
  BUG FIXES:
  * Setting digits = 0 in format(), print.default() (and hence
    typically print()) or options() is again invalid.  Its behaviour
    was platform-dependent, and it is unclear what "zero significant
    digits" should mean (PR#18098).
  * Messages from C code in the cairo section of package grDevices
    are now also offered for translation, thanks to Michael Chirico's
    PR#18123.
  * mean(x) with finite x now is finite also without "long.double"
    capability.
  * R CMD Rd2pdf no longer leaves an empty build directory behind
    when it aborts due to an already existing output file.  (Thanks
    to Sebastian Meyer's PR#18141.)
  * density(x, weights = w, na.rm = TRUE) when anyNA(x) is true, now
    removes weights "in parallel" to x, fixing PR#18151, reported by
    Matthias Gondan.  Additionally, it gets a subdensity option.
  * Conversion of \Sexpr[]{&lt;expR&gt;} to LaTeX or HTML no longer
    produces long blocks of empty lines when &lt;expR&gt; itself contains
    several lines all producing empty output.  Thanks to a report and
    patch by Ivan Krylov posted to R-devel.
  * R CMD build no longer fails if a package vignette uses child
    documents and inst/doc exists.  (Thanks to Sebastian Meyer's
    PR#18156.)
  * When an R documentation ('help' source) file man/foo.Rd in a
    package has \donttest{..} examples with a syntax error, it is now
    signalled as ERROR and with correct line numbers relating to the
  * -Ex.R file, thanks to Duncan Murdoch and Sebastian Meyer's
    reports and patch proposals in PR#17501.
  * Improved determination of the correct translation domain in
    non-base packages, addressing the combination of PR#18092 and
    PR#17998 (#c6) with reports and _augmented_ patch #2904 by
    Suharto Anggono.
    Note that "R-base" is no longer the default domain e.g., for
    top-level calls to gettext(); rather translation needs explicit
    domain = * specification in such cases.
  * identical(attrib.as.set=FALSE) now works correctly with data
    frames with default row names (Thanks to Charlie Gao's PR#18179).
  * txtProgressBar() now enforces a non-zero width for argument char,
    without which no progress can be visible.
  * dimnames(table(d)) is more consistent in the case where d is a
    list with a single component, thanks to Thomas Soeiro's report to
    R-devel.
    Further, table(d1, d2) now gives an error when d1 and d2 are data
    frames as suggested by Thomas in PR#18224.
  * Fix for drawing semi-transparent lines and fills on the native
    Windows graphics device (PR#18219 and PR#16694).  Thanks to Nick
    Ray for helpful diagnosis on Bugzilla.
  * The deparser now wraps sub-expressions such as if(A) ..  with
    parentheses when needed; thanks to Duncan Murdoch's PR#18232 and
    Lionel Henry's patches there.
  * remove.packages() no longer tries to uninstall Priority: base
    packages, thanks to a report and suggestions by Colin Fay in
    PR#18227.
  * win.metafile() now has xpinch and ypinch arguments so that the
    user can override Windows' (potentially wrong) guess at device
    dimensions.
  * x[i] and x[[i]] for non-integer i should now behave in all cases
    as always documented: the index used is equivalent to
    as.integer(i) unless that would overflow where trunc(i) is used
    instead; thanks to Suharto Anggono's report and patch proposals
    in PR#17977.
  * asOneSidedFormula() now associates the resulting formula with the
    global environment rather than the evaluation environment created
    for the call.
  * &lt;bibentry&gt;$name now matches the field name case-insensitively,
    consistent with bibentry() creation and the replacement method.
  * cbind() failed to detect some length mismatches with a mixture of
    time-series and non-time-series inputs.
  * The default LaTeX style file Sweave.sty used by the RweaveLatex
    driver no longer loads the obsolete ae package; thanks to a
    report by Thomas Soeiro in PR#18271.  Furthermore, it now skips
    \usepackage[T1]{fontenc} for engines other than pdfTeX (if
    detected) or if the new [nofontenc] option is used.
  * smooth.spline() now stores its logical cv argument more safely,
    fixing a rare bug when printing, and also stores n.
  * smooth.spline(x,y,*) now computes the cv.crit statistic
    correctly, also when is.unsorted(x), fixing PR#18294.
  * The data.frame method of rbind() now warns when binding
    not-wholly-recycling vectors, by analogy to the default method
    (for matrices).
  * setAs() finds the correct class for name to when multiple
    packages define a class with that name. Thanks to Gabor Csardi
    for the report.
  * Fix for detaching a package when two classes of the same name are
    present in method signatures for the same generic. Thanks to
    Gabor Csardi for the report.
  * match.arg("", c("", "a", "B")) gives a better error message, in
    part from PR#17959, thanks to Elin Waring.
  * R CMD Sweave --clean no longer removes pre-existing files or
    subdirectories (PR#18242).
  * The quartz() device no longer splits polylines into subpaths.
    That has caused narrowly-spaced lines with many points to always
    look solid even when dashed line type was used due to dash phase
    restarts.
  * Deparsing constructs such as quote(1 + `!`(2) + 3) works again as
    before R 3.5.0, thanks to the report and patch in PR#18284 by
    Suharto Anggono.
  * as.list(f) for a factor f now keeps names(f), fixing PR#18309.
  * qbeta(.001, .9, .009) and analogous qf() calls now return a
    correct value instead of NaN or wrongly 1, all with a warning;
    thanks to the report by Ludger Goeminne in PR#18302.
  * plot.lm() failed to produce the plot of residuals vs.  factor
    levels (i.e., which=5 when leverages are constant) for models
    with character predictors (PR#17840).
  * interaction.plot(..., xtick = TRUE) misplaced the x-axis line
    (PR#18305).
  * Not strictly fixing a bug, format()ing and print()ing of
    non-finite Date and POSIXt values NaN and +/-Inf no longer show
    as NA but the respective string, e.g., Inf, for consistency with
    numeric vector's behaviour, fulfilling the wish of PR#18308.
  * R CMD check no longer runs test scripts generated from
    corresponding .Rin files twice and now signals an ERROR if
    processing an .Rin script fails.
  * tools::Rd2txt() used for plain-text help pages now renders \hrefs
    (if tools::Rd2txt_options(showURLs = TRUE)) and \urls with
    percent-encoding and standards-compliant delimiting style (angle
    brackets and no URL: prefix).  \email is now rendered with a
    mailto: prefix.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1655985600">- CHANGES IN R 4.2.1:
  NEW FEATURES:
  * New function utils::findCRANmirror() to find out if a CRAN mirror
    has been selected, otherwise fallback to the main site.  This
    behaves in the same way as tools::CRAN_package_db() and is
    intended for packages wishing to access CRAN for purposes other
    than installing packages.
    The need for this was shown by a day when the main CRAN website
    was offline and a dozen or so packages which had its URL
    hardcoded failed their checks.
  INSTALLATION on a UNIX-ALIKE:
  * The libraries searched for by --with-blas (without a value) now
    include BLIS (after OpenBLAS but before ATLAS).  And on macOS,
    the Accelerate framework (after ATLAS).  (This is patterned after
    the AX_BLAS macro from the Autoconf Archive.)
  * The included LAPACK sources have been updated to 3.10.1.
  UTILITIES:
  * The (full path to) the command tidy to be used for HTML
    validation can be set by environment variable R_TIDYCMD.
  * Setting environment variable _R_CHECK_RD_VALIDATE_RD2HTML_ to a
    false value will override R CMD check --as-cran and turn off HTML
    validation.  This provides a way to circumvent a problematic
    tidy.
    The 2006 version that ships with macOS is always skipped.
  C-LEVEL FACILITIES:
  * The undocumented legacy declarations of Sint, Sfloat, SINT_MAX
    and SINT_MIN in header R.h are deprecated.
  BUG FIXES:
  * fisher.test(d) no longer segfaults for "large" d; fixing PR#18336
    by preventing/detecting an integer overflow reliably.
  * tar(., files=*) now produces correctly the warning about invalid
    uid or gid of files, fixing PR#18344, reported by Martin Morgan.
  * tk_choose.files() with multi = FALSE misbehaved on paths
    containing spaces (PR#18334) (regression introduced in R 4.0.0).
  * sort(x, partial = ind, *) now works correctly notably for the
    non-default na.last = FALSE or TRUE, fixing PR#18335 reported by
    James Edwards.
  * Environment variable _R_CHECK_XREFS_REPOSITORIES_ is only used
    for checking .Rd cross-references in R CMD check (as documented)
    and not for other uses looking for a CRAN mirror.
  * The search for a CRAN mirror when checking packages now uses
    getOption("repos") if that specifies a CRAN mirror, even when it
    does not also specify all three Bioconductor repositories (as was
    previously required).
  * The HTML code generated by tools::Rd2HTML() has been improved to
    pass tidy 5.8.0.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1667217600">- CHANGES IN R 4.2.2:
  NEW FEATURES:
  * tools::Rdiff(useDiff = TRUE) checks for the presence of an
    external diff command and switches to useDiff = FALSE if none is
    found.  This allows R CMD Rdiff to always work.
  * On Windows, environment variable R_LIBCURL_SSL_REVOKE_BEST_EFFORT
    can be used to switch to only 'best-effort' SSL certificate
    revocation checks with the default "libcurl" download method.
    This reduces security, but may be needed for downloads to work
    with MITM proxies (PR#18379).
  * (macOS) The run-time check for libraries from XQuartz for X11 and
    Tcl/Tk no longer uses otool from the Apple Developer Tools
    (PR#18400).
  * The LaTeX style for producing the PDF manuals, Rd.sty, now loads
    the standard amsmath, amsfonts and amssymb packages for greater
    coverage of math commands in the Rd \eqn and \deqn macros.  The
    \mathscr LaTeX command is also provided (via the mathrsfs
    package, if available, or the amsfonts bundle otherwise),
    fulfilling the wish of PR#18398.
  * (Windows) The default format of readClipboard() and
    writeClipboard() has been changed to 13 (CF_UNICODETEXT).
  INSTALLATION on a UNIX-ALIKE:
  * The PDF manuals (if built) can be compacted by the new target
    make compact-pdf (at the top level or in directory doc/manual).
  * There is now configure support for LLVM clang 15 on Linux, which
    defaults to position-independent (PIE) executables whereas
    gfortran does not.
  * Many small changes to ease compilation (and suppress warnings)
    with LLVM clang 15.
  BUG FIXES:
  * Rscript -e would fail if stdin were closed (Reported by Henrik
    Bengtsson.)
  * qt(*, log.p=TRUE) in outer tails no longer produces NaN in its
    final steps, thus fixing PR#18360.
  * tools::Rd2latex() now escapes hashes and ampersands when writing
    URLs, fixing LaTeX errors with such URLs in \tabular.
  * When isGeneric(f, fdef=*) is used with mismatching names, the
    warning is better understandable; reported (with fix) in PR#18370
    by Gabe Becker.
  * poly(x, n) now works again (and is now documented) when x is a
    "Date" or "POSIXct" object, or of another class while fulfilling
    mode(x) == "numeric".  This also enables poly(x, *, raw=TRUE) for
    such variables.  Reported by Michael Chirico to R-devel.
  * write.table(), write.csv() and write.csv2() restore their
    numerical precision (internal equivalent of digits = 15) after an
    interrupt (PR#18384).
  * One can now read also byte FF from a clipboard connection
    (PR#18385).
  * source("") and source(character()) now give more helpful error
    messages.
  * R CMD check --as-cran set _R_CHECK_TIMINGS_ too late to have the
    intended effect.
  * as.POSIXlt(x) now also works with very large dates x, fixing
    PR#18401 reported by Hannes M"uhleisen.
  * Files can now be extracted even from very large zip archives
    (PR#18390, thanks to Martin Jakt).
  * Non-finite objects of class "POSIXlt" are now correctly coerced
    to classes "Date" and "POSIXct"; following up on the extension to
    format() them correctly.
  * Added methods for is.finite(), is.infinite() and is.nan() for
    "POSIXlt" date-time objects.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1678881600">- CHANGES IN R 4.2.3:
  C-LEVEL FACILITIES:
  * The definition of DL_FUNC in R_ext/Rdynload.h has been changed to
    be fully C-compliant.  This means that functions loaded _via_ for
    example R_GetCCallable need to be cast to an appropriate type if
    they have any arguments.
  * .Machine has a new element sizeof.time_t to identify old systems
    with a 32-bit type and hence a limited range of date-times (and
    limited support for dates millions of years from present).
  PACKAGE INSTALLATION:
  * (Windows) The default C++ standard had accidentally been left at
    C++11 when it was changed to C++14 on Unix.
  BUG FIXES:
  * As "POSIXlt" objects may be "partially filled" and their list
    components meant to be recycled, length() now is the length of
    the longest component.
  * as.POSIXlt.Date() could underflow for dates in the far past (more
    than half a million years BCE).
  * as.Date.POSIXlt(x) would return "1970-01-01" instead of NA in R
    4.2.2, e.g., for
    x &lt;- as.POSIXlt(c("2019-01-30","2001-1-1"))
    x$mon &lt;- c(0L, NA); as.Date(x)
  * R CMD check failed to apply enabled _R_CHECK_SUGGESTS_ONLY_ to
    examples and vignettes (regression in R 4.2.0).
  * R CMD check did not re-build vignettes in separate processes by
    default (regression in R 4.2.0).
  * Running examples from HTML documentation now restores previous
    knitr settings and options (PR#18420).
  * Quartz: fonts are now located using Core Graphics API instead of
    deprecated ATS which is no longer supported in the macOS 13 SDK
    (PR#18426).  This also addresses an issue where the currently
    used font in the Quartz device context was not correctly
    retained.
  * (Windows) Math symbols in text drawing functions are again
    rendered correctly (PR#18440).  This fixes a regression in R
    4.2.1 caused by a fix in PR#18382 which uncovered an issue in
    GraphApp due to which the symbol charset was not used with TT
    Symbol font face.
  * (Windows) Installing a package with a src/Makefile.{win,ucrt}
    file includes ~/.R/Makevars.win64 in the search for user
    makevars, as documented in "R Installation and Administration"
    and done for packages with a src/Makevars.{win,ucrt} file.
  * format(&lt;POSIXlt_w/_unbalanced_sec&gt;, "....%OS&lt;n&gt;") with n &gt; 0 no
    longer accidentally uses the unbalanced seconds, thanks to
    Suharto Anggono's report (including patch) in PR#18448.
  * solve.default(a, b) works around issues with some versions of
    LAPACK when a contains NA or NaN values.
  * When UseMethod() cannot dispatch, it no longer segfaults
    producing the error message in case of a long class(), thanks to
    Joris Vankerschaver's report (including patch) in PR#18447.
  * When example(foo, ..) produces graphics on an interactive device
    it needs to open itself, it now leaves devAskNewPage() unchanged
    even when it was FALSE, thus fixing a 14 years old '&lt;FIXME&gt;'.
  * packageDescription() again catches errors from encoding
    conversions. This also fixes broken packageVersion() in C locale
    on systems where iconv does not support transliteration.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1681128000">- add patch to build with libcurl &gt;= 8</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1682078400">- CHANGES IN R 4.3.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Calling &amp;&amp; or || with LHS or (if evaluated) RHS of length greater
    than one is now always an error, with a report of the form
    'length = 4' in coercion to 'logical(1)'
    Environment variable _R_CHECK_LENGTH_1_LOGIC2_ no longer has any
    effect.
  NEW FEATURES:
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.10.1.  (This caused some platform-dependent
    changes to package check output.)  And then to the sources from
    LAPACK version 3.11.0 (with changes only to double complex
    subroutines).
  * The included LAPACK sources have been updated to include the four
    Fortran 90 routines rather than their Fortran 77 predecessors.
    This may give some different signs in SVDs or
    eigendecompositions..  (This completes the transition to LAPACK
    3.10.x begun in R 4.2.0.)
  * The LAPACK sources have been updated to version 3.11.0.  (No new
    subroutines have been added, so this almost entirely bug fixes:
    Those fixes do affect some computations with NaNs, including R's
    NA.)
  * The parser now signals _classed_ errors, notably in case of the
    pipe operator |&gt;.  The error object and message now give line and
    column numbers, mostly as proposed and provided by Duncan Murdoch
    in PR#18328.
  * toeplitz() is now generalized for asymmetric cases, with a
    toeplitz2() variant.
  * xy.coords() and xyz.coords() and consequently, e.g., plot(x,y,
    log = "y") now signal a _classed_ warning about negative values
    of y (where log(.) is NA).  Such a warning can be specifically
    suppressed or caught otherwise.
  * Regular expression functions now check more thoroughly whether
    their inputs are valid strings (in their encoding, e.g. in
    UTF-8).
  * The performance of grep(), sub(), gsub() and strsplit() has been
    improved, particularly with perl = TRUE and fixed = TRUE.  Use of
    useBytes = TRUE for performance reasons should no longer be
    needed and is discouraged: it may lead to incorrect results.
  * apropos() gains an argument dot_internals which is used by the
    completion (help(rcompgen)) engine to also see base internals
    such as .POSIXct().
  * Support in tools::Rdiff() for comparing uncompressed PDF files is
    further reduced - see its help page.
  * qqplot(x, y, ...) gains conf.level and conf.args arguments for
    computing and plotting a confidence band for the treatment
    function transforming the distribution of x into the distribution
    of y (Switzer, 1976, _Biometrika_). Contributed by Torsten
    Hothorn.
  * Performance of package_dependencies() has been improved for cases
    when the number of dependencies is large.
  * Strings newly created by gsub(), sub() and strsplit(), when any
    of the inputs is marked as "bytes", are also marked as "bytes".
    This reduces the risk of creating invalid strings and accidental
    substitution of bytes deemed invalid.
  * Support for readLines(encoding = "bytes") has been added to allow
    processing special text files byte-by-byte, without creating
    invalid strings.
  * iconv(from = "") now takes into account any declared encoding of
    the input elements and uses it in preference to the native
    encoding.  This reduces the risk of accidental creation of
    invalid strings, particularly when different elements of the
    input have different encoding (including "bytes").
  * Package repositories in getOption("repos") are now initialized
    from the repositories file when utils is loaded (if not already
    set, e.g., in .Rprofile).  (From a report and patch proposal by
    Gabriel Becker in PR#18405.)
  * compactPDF() gets a verbose option.
  * type.convert() and hence read.table() get new option tryLogical =
    TRUE with back compatible default.  When set to false, converts
    "F" or "T" columns to character.
  * Added new unit prefixes "R" and "Q" for abbreviating
    (unrealistically large) sizes beyond 10^{27} in standard = "SI",
    thanks to Henrik Bengtsson's PR#18435.
  * as.data.frame()'s default method now also works fine with atomic
    objects inheriting from classes such as "roman", "octmode" and
    "hexmode", such fulfilling the wish of PR#18421, by Benjamin
    Feakins.
  * The as.data.frame.vector() utility now errors for wrong-length
    row.names.  It warned for almost six years, with "Will be an
    error!".
  * sessionInfo() now also contains La_version() and reports codepage
    and timezone when relevant, in both print() and toLatex() methods
    which also get new option tzone for displaying timezone
    information when locale = FALSE.
  * New function R_compiled_by() reports the C and Fortran compilers
    used to build R, if known.
  * predict(&lt;lm&gt;, newdata = *) no longer unnecessarily creates an
    offset of all 0s.
  * solve() for complex inputs now uses argument tol and by default
    checks for 'computational singularity' (as it long has done for
    numeric inputs).
  * predict(&lt;rank-deficient lm&gt;, newdata=*) now obeys a new argument
    rankdeficient, with new default "warnif", warning only if there
    are non-estimable cases in newdata.  Other options include
    rankdeficient = "NA", predicting NA for non-estimable newdata
    cases.  This addresses PR#15072 by Russ Lenth and is based on his
    original proposal and discussions in PR#16158 also by David Firth
    and Elin Waring.  Still somewhat experimental.
  * Rgui console implementation now works better with the NVDA screen
    reader when the full blinking cursor is selected.  The underlying
    improvements in cursor handling may help also other screen
    readers on Windows.
  * The drop-field control in GraphApp can now be left with the TAB
    key and all controls can be navigated in the reverse order using
    the Shift+TAB key, improving accessibility of the Rgui
    configuration editor.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now fully accurate
    (instead of to "only" minimally five digits).
  * demo(error.catching) now also shows off withWarnings() and
    tryCatchWEMs().
  * As an experimental feature the placeholder _ can now also be used
    in the rhs of a forward pipe |&gt; expression as the first argument
    in an extraction call, such as _$coef. More generally, it can be
    used as the head of a chain of extractions, such as _$coef[[2]].
  * Spaces in the environment variable used to choose the R session's
    temporary directory (TMPDIR, TMP and TEMP are tried in turn) are
    now fatal.  (On Windows the 'short path' version of the path is
    tried and used if that does not contain a space.)
  * all.equal.numeric() gets a new optional switch giveErr to return
    the numeric error as attribute.  Relatedly,
    stopifnot(all.equal&lt;some&gt;(a, b, ..)) is as "smart" now, as
    stopifnot(all.equal(....)) has been already, thus allowing
    customized all.equal&lt;Some&gt;() wrappers.
  * R on Windows is now able to work with path names longer than 260
    characters when these are enabled in the system (requires at
    least Windows 10 version 1607).  Packages should be updated to
    work with long paths as well, instead of assuming PATH_MAX to be
    the maximum length.  Custom front-ends and applications embedding
    R need to update their manifests if they wish to allow this
    feature.  See
    &lt;https://blog.r-project.org/2023/03/07/path-length-limit-on-windows&gt;
    for more information.
  * 'Object not found' and 'Missing argument' errors now give a more
    accurate error context. Patch provided by Lionel Henry in
    PR#18241.
  * The @ operator is now an S3 generic. Based on contributions by
    Tomasz Kalinowski in PR#18482.
  * New generic chooseOpsMethod() provides a mechanism for objects to
    resolve cases where two suitable methods are found for an Ops
    Group Generic. This supports experimenting with alternative
    object systems. Based on contributions by Tomasz Kalinowski in
    PR#18484.
  * inherits(x, what) now accepts values other than a simple
    character vector for argument what. A new generic, nameOfClass(),
    is called to resolve the class name from what. This supports
    experimenting with alternative object systems. Based on
    contributions by Tomasz Kalinowski in PR#18485.
  * Detection of BLAS/LAPACK in use (sessionInfo()) with FlexiBLAS
    now reports the current backend.
  * The "data.frame" method for subset() now warns about extraneous
    arguments, typically catching the use of = instead of == in the
    subset expression.
  * Calling a:b when numeric a or b is longer than one may now be
    made into an error by setting environment variable
    _R_CHECK_LENGTH_COLON_ to a true value, along the proposal in
    PR#18419 by Henrik Bengtsson.
  * density(x, weights = *) now warns if automatic bandwidth
    selection happens without using weights; new optional warnWbw may
    suppress the warning.  Prompted by Christoph Dalitz' PR#18490 and
    its discussants.
  * rm(list = *) is faster and more readable thanks to Kevin Ushey's
    PR#18492.
  * The plot.lm() function no longer produces a normal Q-Q plot for
    GLMs. Instead it plots a half-normal Q-Q plot of the absolute
    value of the standardized deviance residuals.
  * The print() method for class "summary.glm" no longer shows
    summary statistics for the deviance residuals by default.  Its
    optional argument show.residuals can be used to show them if
    required.
  * The tapply() function now accepts a data frame as its X argument,
    and allows INDEX to be a formula in that case. by.data.frame()
    similarly allows INDICES to be a formula.
  * The performance of df[j] &lt;- value (including for missing j) and
    write.table(df) has been improved for data frames df with a large
    number of columns.  (Thanks to Gabriel Becker's PR#18500,
    PR#18503 and discussants, prompted by a report from Toby Dylan
    Hocking on the R-devel mailing list.)
  * The matrix multiply operator %*% is now an S3 generic, belonging
    to new group generic matrixOps.  From Tomasz Kalinowski's
    contribution in PR#18483.
  * New function array2DF() to convert arrays to data frames,
    particularly useful for the list arrays created by tapply().
  DATES and TIMES:
  * On platforms where (non-UTC) datetimes before 1902 (or before
    1900 as with system functions on recent macOS) are guessed by
    extrapolating time zones from 1902-2037, there is a warning at
    the first use of extrapolation in a session.  (As all time zones
    post 2037 are extrapolation, we do not warn on those.)
  * (Platforms using --with-internal-tzone, including Windows and by
    default macOS). How years are printed in dates or date-times can
    be controlled by environment variable R_PAD_YEARS_BY_ZERO.  The
    default remains to pad to 4 digits by zeroes, but setting value
    no gives no padding (as used by default by glibc).
  * strftime() tries harder to determine the offset for the "%z"
    format, and succeeds on the mainstream R platforms.
  * strftime() has a limit of 2048 bytes on the string produced -
    attempting to exceed this is an error.  (Previously it silently
    truncated at 255 bytes.)
  * sessionInfo() records (and by default prints) the system time
    zone as part of the locale information.  Also, the source
    (system/internal) of the date-time conversion and printing
    functions.
  * Objects of class "POSIXlt" created in this version of R always
    have 11 components: component zone is always set, and component
    gmtoff is set for times in UTC and usually set on the (almost
    all) platforms which have C-level support, otherwise is NA.
  * There are comprehensive validity checks on the structure of
    objects of class "POSIXlt" when converting (including formatting
    and printing).  (This avoids mis-conversions of hand-crafted
    objects.)
  * There is some support for using the native date-time routines on
    macOS: this is only viable on recent versions (e.g. 12.6 and 13)
    and does get wrong some historical changes (before 1900, during
    WWII).  Use of --with-internal-tzone remains the default.
  * as.POSIXct(&lt;numeric&gt;) and as.POSIXlt(.) (without specifying
    origin) now work.  So does as.Date(&lt;numeric&gt;).
  * as.Date.POSIXct(., tz) now treats several tz values, notably
    "GMT" as equivalent to "UTC", proposed and improved by Michael
    Chirico and Joshua Ulrich in PR#17674.
  * Experimental balancePOSIXlt() utility allows using "ragged" and
    or out-of-range "POSIXlt" objects more correctly, e.g., in
    subsetting and subassignments.  Such objects are now documented.
    More experimentally, a "POSIXlt" object may have an attribute
    "balanced" indicating if it is known to be filled or fully
    balanced.
  * Functions axis.Date() and axis.POSIXct() are rewritten to gain
    better default tick locations and better default formats by using
    prettyDate(). Thanks to Swetlana Herbrandt.
  * The mapping of Windows' names for time zones to IANA's 'Olson'
    names has been updated.  When ICU is available (it is by
    default), it is used to get a mapping for the current region set
    in Windows.  This can be overridden by setting environment
    variable TZ to the desired Olson name - see OlsonNames() for
    those currently available.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 16
    and so packages that provide graphics devices should be
    reinstalled.
  * The grDevices and grid packages have new functions for rendering
    typeset glyphs, primarily: grDevices::glyphInfo() and
    grid::grid.glyph().
    Rendering of typeset glyphs is only supported so far on the
    Cairo-based graphics devices and on the pdf() and quartz()
    devices.
  * The defined behaviour for "clear" and "source" compositing
    operators (via grid::grid.group()) has been changed (to align
    better with simple interpretation of original Porter-Duff
    definitions).
  * Support for gradients, patterns, clipping paths, masks, groups,
    compositing operators, and affine transformations has been added
    to the quartz() device.
  INSTALLATION on a UNIX-ALIKE:
  * A system installation of generic LAPACK 3.10.0 or later will be
    preferred to the version in the R sources.
    configure option --with-lapack=no (equivalently --without-lapack)
    forces compilation of the internal LAPACK sources.
    If --with-lapack is not specified, a system liblapack is looked
    for and used if it reports version 3.10.0 or later and does not
    contain BLAS routines.
    Packages using LAPACK will need to be reinstalled if this changes
    to using an external library.
  * On aarch64 Linux platforms using GCC, configure now defaults to
  - fPIC (instead of -fpic), as desired in PR#18326.
  * configure now checks conversion of datetimes between POSIXlt and
    POSIXct around year 2020.  Failure (which has been seen on
    platforms missing tzdata) is fatal.
  * If configure option --with-valgrind-instrumentation is given
    value 1 or 2, option --with-system-valgrind-headers is now the
    default and ignored (with a warning).  It is highly recommended
    that the system headers are installed alongside valgrind: they
    are part of its packaging on some Linux distributions and
    packaged separately (e.g. in the valgrind-devel RPM) on others.
    configure will give a warning if they are not found.
    The system headers will be required in a future release of R to
    build with valgrind instrumentation.
  * libcurl 8.x is now accepted by configure: despite a change in
    major version number it changes neither API nor ABI.
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools43, an update of the Rtools42 toolchain.  It is
    based on gcc 12 and newer versions of MinGW-W64, binutils and
    libraries.  At this time R-devel can still be built using
    Rtools42 without changes, but when R-devel is installed via the
    installer, it will by default look for Rtools43.
  * Old make targets rsync-extsoft and 32-bit ones that are no longer
    needed have been removed.
  * Default builds (including for packages) no longer select C99.
    Thus the C standard used is the default for the compiler, which
    for the toolchain in Rtools43 is C17.  (This is consistent with
    Unix builds.)
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++17 where
    available (which it is on all currently checked platforms): if
    not C++14 or C++11 is used if available otherwise C++ is not
    supported.
  * USE_FC_LEN_T is the default: this uses the correct
    (compiler-dependent) prototypes for Fortran BLAS/LAPACK routines
    called from C/C++, and requires adjustment of many such calls -
    see 'Writing R Extensions' SS6.6.1.
  * There is initial support for C++23 as several compilers are now
    supporting -std=c++23 or -std=c++2b or similar.  As for C++20,
    there no additional configure checks for C++23 features beyond a
    check that the compiler reports a __cplusplus value greater than
    that in the C++20 standard.  C++ feature tests should be used.
  * There is support for a package to indicate the version of the C
    standard which should be used to compile it, and for the
    installing user to specify this.  In most cases R defaults to the
    C compiler's default standard which is C17 (a `bug-fix' of C11) -
    earlier versions of R or compilers may have defaulted to C99.
    Current options are:
    USE_C17 Use a standard that is at most C17.  The intention is to
    allow legacy packages to still be installed when later C
    standards become the default, including packages using new
    keywords as identifiers or with K&amp;R-style function
    declarations.  This will use C17 if available, falling back
    to C11.
    USE_C90 Use the C90 (aka C89) standard.  (As that standard did
    not require compilers to identify that version, all we can
    verify is that the compiler does not claim to be using a
    later standard.  It may accept C99 features - for example
    clang accepts // to make comments.)
    USE_C99 Use the C99 standard. This should be rarely needed - it
    avoids the few new features of C11/C17 which can be useful if
    a package assumes them if C17 is specified and they are not
    implemented.
    USE_C23 Use C23 (or in future, later).  Compiler/library support
    for C23 is still being implemented, but LLVM clang from
    15.0.0 and the upcoming GCC 13 have quite extensive support.
    These can be specified as part of the SystemRequirements field in
    the package's DESCRIPTION file or _via_ options --use-C17 and so
    on of R CMD INSTALL and R CMD SHLIB.
    For further details see "Writing R Extensions" SS1.2.5.
  * (Windows) A src/Makefile.ucrt or src/Makefile.win file is now
    included after R_HOME/etcR_ARCH/Makeconf and so no longer needs
    to include that file itself.  Installation of a package with such
    a file now uses a site Makevars file in the same way as a package
    with a src/Makevars.win file would.
  * configure is now passed crucial variables such as CC and CFLAGS
    in its environment, as many packages were not setting them (as
    documented in 'Writing R Extensions' SS1.2).
    This has most effect where configure is used to compile parts of
    the package - most often by cmake or libtool which obfuscate the
    actual compile commands used.
    Also used for configure.win and configure.ucrt on Windows.
  FORTRAN FLAGS:
  * The flag -fno-optimize-sibling-calls is no longer forced for
    gfortran 7 and later.  It should no longer be needed now using
    'hidden' character-length arguments when calling BLAS/LAPACK
    routines from C/C++ is the default even for packages.  (Unless
    perhaps packages call Fortran code from C/C++ without using R's
    headers and without allowing for these arguments.)
  C-LEVEL FACILITIES:
  * The deprecated S-compatibility macros DOUBLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * The deprecated legacy typedefs of Sint and Sfloat in header R.h
    are no longer defined, and that header no longer includes header
    limits.h from C nor climits from C++.
  * New macro CAD5R() is provided in Rinternals.h and used in a few
    places in the R sources.
  * ALTREP now supports VECSXP vectors. Contributed by Gabor Csardi
    in PR#17620.
  * The Rcomplex definition (in header R_ext/Complex.h) has been
    extended to prevent possible mis-compilation when interfacing
    with Fortran (PR#18430).  The new definition causes compiler
    warnings with static initializers such as {1, 2}, which can be
    changed to {.r=1, .i=2}.
    Using the new definition from C++ depends on compiler extensions
    supporting C features that have not been incorporated into the
    C++ standards but are available in g++ and clang++: this may
    result in C++ compiler warnings but these have been worked around
    for recent versions of common compilers (GCC, Apple/LLVM clang,
    Intel).
    It is intended to change the inclusion of header R_ext/Complex.h
    by other R headers, so C/C++ code files which make use of
    Rcomplex should include that header explicitly.
  UTILITIES:
  * R CMD check does more checking of package .Rd files, warning
    about invalid email addresses and (some) invalid URIs and noting
    empty \item labels in description lists.
  * R CMD check now also reports problems when reading package news
    in md (file NEWS.md) and (optionally) plain text (file NEWS)
    formats.
  * _R_CHECK_TIMINGS_ defaults to a value from the environment even
    for R CMD check --as-cran; this allows for exceptionally fast or
    slow platforms.
    It now applies to checking PDF and HTML versions of the manuals,
    and 'checking CRAN incoming feasibility'.
  * R CMD check can optionally (but included in --as-cran) check
    whether HTML math rendering _via_ KaTeX works for the package .Rd
    files.
  * Non-interactive debugger invocations can be trapped by setting
    the environment variable _R_CHECK_BROWSER_NONINTERACTIVE_ to a
    true value.  This is enabled by R CMD check --as-cran to detect
    the use of leftover browser() statements in the package.
  * The use of sprintf and vsprintf from C/C++ has been deprecated in
    macOS 13 and is a known security risk.  R CMD check now reports
    (on all platforms) if their use is found in compiled code:
    replace by snprintf or vsnprintf respectively. [*NB:* whether
    such calls get compiled into the package is platform-dependent.]
  * Where recorded at installation, R CMD check reports the C and
    Fortran compilers used to build R.
    It reports the OS in use (if known, as given by osVersion) as
    well as that R was built for.
    It notes if a C++ standard was specified which is older than the
    current default: many packages have used C++11 to mean 'not
    C++98' - as C++11 is the minimum supported since R 4.0.0, that
    specification can probably be removed.
  * R CMD INSTALL reports the compilers (and on macOS, the SDK) used,
    and this is copied to the output of R CMD check.
    Where a C++ standard is specified, it is reported.
  * R CMD check's 'checking compilation flags in Makevars' has been
    relaxed to accept the use of flags such as -std=f2008 in
    PKG_FFLAGS.
  * tools::buildVignettes() has a new argument skip, which is used by
    R CMD check to skip (and note) vignettes with unavailable
    \VignetteDepends (PR#18318).
  * New generic .AtNames() added to enable class-specific completions
    after @. The formerly internal function findMatches() is now
    exported, mainly for use in methods for .DollarNames() and
    .AtNames().
  DEPRECATED AND DEFUNCT:
  * default.stringsAsFactors() is defunct.
  * Calling as.data.frame.&lt;class&gt;() directly (for 12 atomic classes)
    is going to be formally deprecated, currently activated by
    setting the environment variable
    _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ to non-empty, which also
    happens in R CMD check --as-cran.
  BUG FIXES:
  * Hashed environments with sizes less than 5 can now grow.
    (Reported to R-devel by Duncan Garmonsway.)
  * as.character(&lt;Rd&gt;, deparse = TRUE) failed to re-escape curly
    braces in LaTeX-like text.  (Reported by Hadley Wickham in
    PR#18324.)
  * library() now passes its lib.loc argument when requiring Depends
    packages; reported (with fix) in PR#18331 by Mikael Jagan.
  * R CMD Stangle: improved message about 'Output' files.
  * head(x, n) and tail(x, n) now signal an error if n is not
    numeric, instead of incidentally "working" sometimes returning
    all of x.  Reported and discussed by Colin Fay, in PR#18357.
  * The "lm" method for summary() now gives the correct F-statistic
    when the model contains an offset.  Reported in PR#18008.
  * C() and `contrasts&lt;-`() now preserve factor level names when
    given a function object (as opposed a function name which did
    preserve names). Reported in PR#17616.
  * c(a = 1, 2)[[]] no longer matches 2 but rather signals a
    _classed_ error.  Reported and analysed by Davis Vaughan in
    PR#18367, a duplicate of PR#18004, by Jan Meis et al.  For
    consistency, NULL[[]] is also erroneous now.  x[[]] &lt;- v gives an
    error of the same class "MissingSubscriptError".
  * The relist() function of utils now supports NULL elements in the
    skeleton (PR#15854).
  * ordered(levels = *) (missing x) now works analogously to factor(,
    ordered=TRUE); reported (with fix) by Achim Zeileis in PR#18389.
  * User-defined Rd macro definitions can now span multiple lines,
    thanks to a patch from Duncan Murdoch. Previously, the Rd parser
    silently ignored everything after the first line.
  * Plain-text help (tools::Rd2txt()) now preserves an initial blank
    line for text following description list items.
  * tools::Rd2HTML() and tools::Rd2latex() no longer split \arguments
    and \value lists at Rd comments.
  * tools::Rd2latex() now correctly handles optional text outside
    \items of argument lists as well as bracketed text at the
    beginning of sections, e.g., \value{[NULL]}.
  * as.character(&lt;POSIXt&gt;) now behaves more in line with the methods
    for atomic vectors such as numbers, and is no longer influenced
    by options().  Ditto for as.character(&lt;Date&gt;).  The
    as.character() method gets arguments digits and OutDec with
    defaults _not_ depending on options().  Use of as.character(*,
    format = .) now warns.
  * Similarly, the as.character.hexmode() and *.octmode() methods
    also behave as good citizen methods and back compatibility option
    keepStr = TRUE.
  * The as.POSIXlt(&lt;POSIXlt&gt;) and as.POSIXct(&lt;POSIXct&gt;) default
    methods now do obey their tz argument, also in this case.
  * as.POSIXlt(&lt;Date&gt;) now does apply a tz (time zone) argument, as
    does as.POSIXct(); partly suggested by Roland Fuss on the R-devel
    mailing list.
  * as.Date.POSIXlt(x) now also works when the list components are of
    unequal length, aka "partially filled" or "ragged".
  * expand.model.frame() looked up variables in the wrong environment
    when applied to models fitted without data.  Reported in
    PR#18414.
  * time() now (also) uses the ts.eps = getOption("ts.eps") argument
    and thus by default rounds values very close to the start (or
    end) of a year.  Based on a proposal by Andre"i V. Kostyrka on
    R-help.
  * Printing of a factanal() result with just one factor and sort =
    TRUE now works regularly, fixing PR#17863 by Timothy Bates,
    thanks to the 'R Contributors' working group.
  * Printing 0-length objects of class "factor", "roman", "hexmode",
    "octmode", "person", "bibentry", or "citation" now prints
    something better, one of which fixes PR#18422, reported by
    Benjamin Feakins.
  * Sys.timezone() queries timedatectl only if systemd is loaded;
    addressing a report by Jan Gorecki in PR#17421.
  * The formula method of cor.test() had scoping problems when
    environment(formula) was not the calling environment; reported
    with a patch proposal by Mao Kobayashi in PR#18439.
  * attach() of an environment with active bindings now preserves the
    active bindings.  Reported by Kevin Ushey in PR#18425.
  * BLAS detection now works also with system-provided libraries not
    available as regular files.  This fixes detection of the
    Accelerate framework on macOS since Big Sur.  Reported by David
    Novgorodsky.
  * download.file() gives a helpful error message in case of an
    invalid download.file.method option, thanks to Colin Fay's report
    in PR#18455.
  * Sporadic crashes of Rterm when using completion have been fixed.
  * Rprof() is now more reliable.  A livelock in thread
    initialization with too short sampling interval has been fixed on
    macOS.  A deadlock in using the C runtime has been fixed on
    Windows.  A potential deadlock has been prevented on Unix.
  * Cursor placement in Rgui now works even after a fixed-width font
    is selected.
  * Mandatory options (options()) are now set on startup so that
    saving and restoring them always works (PR#18372).
  * Package installation, R CMD INSTALL or install.packages(*), now
    parses each of the &lt;pkg&gt;/R/*.R files individually instead of
    first concatenating and then parse()ing the large resulting file.
    This allows parser or syntax errors to be diagnosed with correct
    file names and line numbers, thanks to Simon Dedman's report and
    Bill Dunlap's patch in PR#17859.
    This _does_ require syntactically self contained R source files
    now, fixing another inadvertent bug.
  * predict.lm(&lt;model with offset&gt;) now finds the offset in the
    correct environment, thanks to Andr'e Gillibert's report and patch
    in PR#18456.
  * getInitial(&lt;formula&gt;) now finds the selfStart model in the
    correct environment.  (Reported by Ivan Krylov in PR#18368.)
  * Fix for possible segfault when using recently-added graphics
    features, such as gradients, clipping paths, masks, and groups
    with pdf(file=NULL).
  * class(m) &lt;- class(m) no longer changes a matrix m by adding a
    class _attribute_.
  * packageDate(pkg) now only warns once if there is no pkg.
  * When ts() creates a multivariate time series, "mts", it also
    inherits from "array" now, and is.mts() is documented _and_
    stricter.
  * Rd2txt() now preserves line breaks of \verb Rd content and from
    duplicated \cr.  The former also fixes the rendering of verbatim
    output from Rd \Sexpr in plain-text help.
  * uniroot(f, interval) should no longer wrongly converge _outside_
    the interval in some cases where abs(f(x)) == Inf for an x at the
    interval boundary, thanks to posts by Ben Bolker and Serguei
    Sokol on R-devel.
  * Vectorized alpha handling in palette functions such as in gray(),
    rainbow(), or hcl.colors() works correctly now, thanks to Achim
    Zeileis' report and patch in PR#18476.
  * Formatting and print()ing of bibentry objects has dropped the
    deprecated citation.bibtex.max argument, such that the bibtex
    argument's default for print.bibentry() depends directly on the
    citation.bibtex.max option, whereas in format.bibentry() the
    option no longer applies.
  * Attempting to use a character string naming a foreign function
    entry point in a foreign function call in a package will now
    signal an error if the packages has called R_forceSymbols to
    specify that symbols must be used.
  * An error in table() could permanently set options(warn=2)
    promoting all subsequent warnings to errors.
  * The sigma() function gave misleading results for binary GLMs.  A
    new method for objects of class "glm" returns the square root of
    the estimate of the dispersion parameter using the same
    calculation as summary.glm().
  * bs() and ns() in the (typical) case of automatic knot
    construction, when some of the supposedly inner knots coincide
    with boundary knots, now moves them inside (with a warning),
    building on PR#18442 by Ben Bolker.
  * R CMD on Windows now skips the site profile with --no-site-file
    and --vanilla even when R_PROFILE is set (PR#18512, from Kevin
    Ushey).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1686916800">- CHANGES IN R 4.3.1:
  C-LEVEL FACILITIES:
  * The C-level API version of R's integrate(), Rdqags() in Applic.h,
    now returns the correct number of integrand evaluations neval,
    fixing PR#18515 reported and diagnosed by Stephen Wade.
  * The C prototypes for LAPACK calls dspgv and dtptrs in
    R_exts/Lapack.h had one too many and one too few character length
    arguments - but this has not caused any known issues. To get the
    corrected prototypes, include
    [#]include &lt;Rconfig.h&gt; // for PR18534fixed
    [#]ifdef PR18534fixed
    [#] define usePR18534fix 1
    [#]endif
    [#]include &lt;R_exts/Lapack.h&gt;
    in your C/C++ code (PR#18534).
  INSTALLATION:
  * Many of the checks of esoteric Internet operations and those
    using unreliable external sites have been moved to a new target
    that is not run by default and primarily intended for the core
    developers.  To run them use
    cd tests; make test-Internet-dev
  BUG FIXES:
  * .S3methods(), typically called from methods(), again marks
    methods from package base as visible.
    Also, the visibility of non-base methods is again determined by
    the method's presence in search().
  * tools::Rdiff() is now more robust against invalid strings, fixing
    installation tests on Windows without Rtools installed
    (PR#18530).
  * Fix (new) bug in hcl.colors(2, *), by Achim Zeileis (PR#18523).
  * head(., &lt;illegal&gt;) and tail(..) now produce more useful "Error in
    ...." error messages, fixing PR#18362.
  * Package code syntax on Windows is checked in UTF-8 when UTF-8 is
    the native encoding.
  * na.contiguous(x) now also returns the first run, when it is at
    the beginning and there is a later one of the same length;
    reported to R-devel, including a fix, by Georgi Boshnakov.
    Further, by default, it modifies only an existing attr(*,"tsp")
    but otherwise no longer sets one.
  * chol(&lt;not pos.def&gt;, pivot = &lt;T|F&gt;) now gives a correct error or
    warning message (depending on pivot), thanks to Mikael Jagan's
    (PR#18541).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1699012800">- CHANGES IN R 4.3.2:
  NEW FEATURES:
  * The default initialization of the "repos" option from the
    repositories file at startup can be skipped by setting
    environment variable R_REPOSITORIES to NULL such that
    getOption("repos") is empty if not set elsewhere.
  * qr.X() is now an implicit S4 generic in methods.
  * iconv(to = "ASCII//TRANSLIT") is emulated using substitution on
    platforms which do not support it (notably Alpine Linux).  This
    should give a human-readable conversion in ASCII on all platforms
    (rather than NA_character_).
  * trans3d() gains options continuous and verbose addressing the
    problem of possible "wrap around" when projecting too long
    curves, as reported by Achim Zeileis in PR#18537.
  * tools::showNonASCII() has been rewritten to work better on macOS
    14 (which has a changed implementation of iconv()).
  * tiff(type = "quartz") (the default on macOS) now warns if
    compression is specified: it continues to be ignored.
  INSTALLATION on a UNIX-ALIKE:
  * There is some support for building with Intel's LLVM-based
    compilers on x86_64 Linux, such as (C) icx, (C++) ipcx and
    (Fortran) ifx from oneAPI 2023.x.y.
  * There is support for using LLVM's flang-new as the Fortran
    compiler from LLVM 16.0.x (preferably 17.0.0 or later).
  UTILITIES:
  * R CMD check reports the use of the Fortran 90 random number
    generator RANDOM_NUMBER() and the subroutines to initialize it.
    'Writing R Extensions' has example code to use R's RNGs from
    Fortran.
  BUG FIXES:
  * substr(x, n, L) &lt;- cc now works (more) correctly for multibyte
    UTF-8 strings x when L &gt; nchar(x), thanks to a report and patch
    by 'Architect 95'.
  * contrib.url(character()) now returns 0-length character() as
    documented, which also avoids spurious warnings from
    available.packages() et al. in the edge case of an empty vector
    of repository URLs.
  * readChar(., 4e8) no longer fails, thanks to Kodi Arfer's report
    (PR#18557).
  * lapply(&lt;list&gt;, as.data.frame) no longer warns falsely for some
    base vector components.
  * Communication between parent and child processes in the multicore
    part of parallel could fail on platforms that do not support an
    arbitrarily large payload in system functions read()/write() on
    pipes (seen on macOS where a restriction to INT_MAX bytes is
    documented, without doing a partial read unlike Linux). The
    payload is now split into 1Gb chunks to avoid that problem.
    (PR#18571)
  * qqplot(x,y, conf.level=.) gives better confidence bounds when
    length(x) != length(y), thanks to Alexander Ploner's report and
    patch proposal (PR#18557).
  * norm(&lt;0-length&gt;, "2") now gives zero instead of an error, as all
    the other norm types, thanks to Mikael Jagan's PR#18542.
  * Build-stage Rd macros \packageAuthor and \packageMaintainer now
    process Authors@R, fixing NA results when the package DESCRIPTION
    omits Author and Maintainer fields.
  * Formatting and printing complex numbers could give things like
    0.1683-0i because of rounding error: -0i is now replaced by +0i.
  * postscript() refused to accept a title comment containing the
    letter "W" (PR#18599).
  * isoreg(c(1,Inf)) signals an error instead of segfaulting, fixing
    PR#18603.
  * tiff(type = "Xlib") was only outputting the last page of
    multi-page plots.
  * tools::latexToUtf8() again knows about \~{n} and other letters
    with tilde, fixing a regression in R 4.3.0, and about \^{i} as an
    alternative to \^{\i} (similarly with other accents).
    Furthermore, LaTeX codes for accented I letters are now correctly
    converted, also fixing related mistakes in
    tools::encoded_text_to_latex().
  * tar(*, tar = "internal") no longer creates out-of-spec tar files
    in the very rare case of user or group names longer than 32
    bytes, fixing PR#17871 with thanks to Ivan Krylov.
  * When using the "internal" timezone datetime code, adding a
    fraction of a second no longer adds one second, fixing PR#16856
    from a patch by Ivan Krylov.
  * tools::checkRd() no longer produces spurious notes about
    "unnecessary braces" from multi-line Rd results of \Sexpr macros.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1709208000">- CHANGES IN R 4.3.3:
  NEW FEATURES:
  * iconv() now fixes up variant encoding names such as "utf8"
    case-insensitively.
  DEPRECATED AND DEFUNCT:
  * The legacy encoding = "MacRoman" is deprecated in pdf() and
    postscript(): support was incomplete in earlier versions of R.
  BUG FIXES:
  * Arguments are now properly forwarded to methods on S4 generics
    with ... in the middle of their formal arguments. This was broken
    for the case when a method introduced an argument but did not
    include ... in its own formals. Thanks to Herv'e Pag`es for the
    report PR#18538.
  * Some invalid file arguments to pictex(), postscript() and xfig()
    opened a file called NA rather than throw an error.  These
    included postscript(NULL) (which some people expected to work
    like pdf(NULL)).
  * Passing filename = NA to svg(), cairo_pdf(), cairo_ps() or the
    Cairo-based bitmap devices opened a file called NA: it now throws
    an error.
  * quartz(file = NA) opened a file called NA, including when used as
    a Quartz-based bitmap device.  It now gives an error.
  * rank(&lt;long vector&gt;) now works, fixing PR#18617, thanks to Ilia
    Kats.
  * seq.int() did not adequately check its length.out argument.
  * match(&lt;POSIXct&gt;, .) is correct again for differing time zones,
    ditto for "POSIXlt", fixing PR#18618 reported by Bastian Klein.
  * drop.terms(*, dropx = &lt;0-length&gt;) now works, fixing PR#18563 as
    proposed by Mikael Jagan.
  * drop.terms(*) keeps + offset(.) terms when it should, PR#18565,
    and drop.terms() no longer makes up a response, PR#18566, fixing
    both bugs thanks to Mikael Jagan.
  * getS3method("t", "test") no longer finds the t.test() function,
    fixing PR#18627.
  * pdf() and postscript() support for the documented Adobe encodings
    "Greek" and "Cyrilllic" was missing (although the corresponding
    Windows' codepages could be used).
  * Computations of glyph metric information for pdf() and
    postscript() did not take into account that transliteration could
    replace one character by two or more (only seen on macOS 14) and
    typically warned that the information was not known.
  * rank(x) no longer overflows during integer addition, when
    computing rank average for largish but not-yet long vector x,
    fixing PR#18630, thanks to Ilia Kats.
  * list.files() on Windows now returns also files with names longer
    that 260 bytes (the Windows limit is 260 characters).
    Previously, some file names particularly with 'East Asian'
    characters were omitted.
  * cov2cor(&lt;0 x 0&gt;) now works, fixing PR#18423 thanks to Mikael
    Jagan and Elin Waring.
  * cov2cor(&lt;negative diagonal&gt;) and similar now give one warning
    instead of two, with better wording, fixing PR#18424 thanks to
    Mikael Jagan.
  * tools:: startDynamicHelp() now ensures port is in proper range,
    fixing PR#18645.
  * pbeta(x, a,b) is correct now for x=0 or 1 in the boundary cases
    where a or b or both are 0, fixing PR#18672 thanks to Michael
    Fay.
  * pmatch(x, table) for large table, also called for data frame row
    selection, dfrm[nm, ], is now interruptible, fixing PR#18656.
  * predict(&lt;rank-deficient lm&gt;, newdata=*) fix computing of nbasis,
    see Russ Lenth's comment 29 in PR#16158.
  * Added a work-around for a bug in macOS 14.3.1 and higher which
    prevents R plots in the Quartz Cocoa device from updating on
    screen.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1713960000">- CHANGES IN R 4.4.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Startup banners, R --version, sessionInfo() and R CMD check no
    longer report (64-bit) as part of the platform as this is almost
    universal - the increasingly rare 32-bit platforms will still
    report (32-bit).
    On Windows, ditto for window titles.
  * is.atomic(NULL) now returns FALSE, as NULL is not an atomic
    vector.  Strict back-compatibility would replace is.atomic(foo)
    by (is.null(foo) || is.atomic(foo)) but should happen only
    sparingly.
  NEW FEATURES:
  * The confint() methods for "glm" and "nls" objects have been
    copied to the stats package.  Previously, they were stubs which
    called versions in package MASS. The MASS namespace is no longer
    loaded if you invoke (say) confint(glmfit).  Further, the "glm"
    method for profile() and the plot() and pairs() methods for class
    "profile" have been copied from MASS to stats.  (profile.nls()
    and plot.profile.nls() were already in stats.)
  * The confint() and profile methods for "glm" objects have gained a
    possibility to do profiling based on the Rao Score statistic in
    addition to the default Likelihood Ratio. This is controlled by a
    new test = argument.
  * The pairs() method for "profile" objects has been extended with a
    which = argument to allow plotting only a subset of the
    parameters.
  * The "glm" method for anova() computes test statistics and
    p-values by default, using a chi-squared test or an F test
    depending on whether the dispersion is fixed or free.  Test
    statistics can be suppressed by giving argument test a false
    logical value.
  * In setRepositories() the repositories can be set using their
    names via name = instead of index ind =.
  * methods() and .S3methods() gain a all.names option for the (rare)
    case where functions starting with a . should be included.
  * Serializations can now be interrupted (e.g., by Ctrl-C on a
    Unix-alike) if they take too long, e.g., from save.image(),
    thanks to suggestions by Ivan Krylov and others on R-devel.
  * New startup option --max-connections to set the maximum number of
    simultaneous connections for the session.  Defaults to 128 as
    before: allowed values up to 4096 (but resource limits may in
    practice restrict to smaller values).
  * R on Windows (since Windows 10 2004) now uses the new Segment
    Heap allocator. This may improve performance of some
    memory-intensive applications.
  * When R packages are built, typically by R CMD build &lt;pkg&gt;, the
    new --user=&lt;build_user&gt; option overrides the (internally
    determined) user name, currently Sys.info()["user"] or LOGNAME.
    This is a (modified) fulfillment of Will Landau's suggestion in
    PR#17530.
  * tools::testInstalledBasic() gets new optional arguments outDir
    and testSrcdir, e.g., allowing to use it in a &lt;builddir&gt; !=
    &lt;srcdir&gt; setup, and in standard "binary" Windows installation
  * if* a source tests/ folder is present.
  * range(&lt;DT_with_Inf&gt;, finite = TRUE) now work for objects of class
    "Date", "POSIXct", and "POSIXlt" with infinite entries,
    analogously to range.default(), as proposed by Davis Vaughan on
    R-devel.  Other range()-methods can make use of new function
    .rangeNum().
  * New .internalGenerics object complementing .S3PrimitiveGenerics,
    for documentation and low-level book-keeping.
  * grid() now invisibly returns the x- and y- coordinates at which
    the grid-lines were drawn.
  * norm(., type) now also works for complex matrices.
  * kappa(., exact = TRUE, norm = *) now works for all norms and also
    for complex matrices.  In symmetric / triangular cases, the new
    argument uplo = "U" | "L" allows the upper or lower triangular
    part to be specified.
  * memDecompress(type = "unknown") recognizes compression in the
    default 'zlib' format as used by memCompress(type = "gzip").
  * memCompress() and memDecompress() will use the libdeflate library
    (&lt;https://github.com/ebiggers/libdeflate&gt;) if installed.  This
    uses the same type of compression for type = "gzip" but is 1.5-2x
    faster than the system libz library on some common platforms: the
    speed-up may depend on the library version.
  * diff() for objects of class "Date", "POSIXct", and "POSIXlt"
    accepts a units argument passed via ....
  * Dynamic help now does a much better job of rendering package
    DESCRIPTION metadata.
  * Rprof() gains an event argument and support for elapsed (real)
    time profiling on Unix (PR#18076).
  * filled.contour() gains a key.border argument.
  * tools::update_pkg_po() gets arguments pot_make and mo_make for
    _not_ re-making the corresponding files, and additionally a
    verbose argument.
  * Hexadecimal string colour specifications are now accepted in
    short form, so, for example, we can use "#123", which is
    equivalent to "#112233".
    Thanks to MikeFC for the original idea and Ella Kaye, Malcolm
    Barrett, George Stagg, and Hanne Oberman for the patch.
  * Plain-text help shows \var markup by angle brackets.
  * The new experimental primitive function declare() is intended to
    eventually allow information about R code to be communicated to
    the interpreter, compiler, and code analysis tools. The syntax
    for declarations is still being developed.
  * Functions psmirnov(), qsmirnov() and rsmirnov() in package stats
    have had argument two.sided renamed to alternative, to take into
    account that the permutation distributions of the one-sided
    statistics can be different in the case of ties.  Consequence of
    PR#18582.
  * sort() is now an implicit S4 generic in methods.
  * Formatting and printing, format(z), print(z), of complex vectors
    z no longer zap relatively small real or imaginary parts to zero,
    fixing PR#16752.  This is an API change, as it was documented
    previously to round real and imaginary parts together on purpose,
    producing nicer looking output.  As mentioned, e.g. in the PR,
    this change is compatible with many other "R-like" programming
    environments.
    We have simplified the internal code and now basically format the
    real and imaginary parts independently of each other.
  * New experimental functions Tailcall() and Exec() to support
    writing stack-space-efficient recursive functions.
  * Where characters are attempted to be plotted by pdf(),
    postscript() and xfig() which are not in the selected 8-bit
    character set (most often Latin-1) and the R session is using a
    UTF-8 locale, the warning messages will show the UTF-8 character
    rather than its bytes and one dot will be substituted per
    character rather than per byte.  (Platforms whose iconv() does
    transliteration silently plot the transliteration.)
    In a UTF-8 locale some transliterations are now done with a
    warning (e.g., dashes and Unicode minus to hyphen, ligatures are
    expanded, permille (‰) is replaced by o/oo), although the OS may
    have got there first.  These are warnings as they will continue
    to be replaced by dots in earlier versions of R.
  * The matrix multiplication functions crossprod() and tcrossprod()
    are now also primitive and S3 generic, as %*% had become in R
    4.3.0.
  * source() and example() have a new optional argument catch.aborts
    which allows continued evaluation of the R code after an error.
  * The non-Quartz tiff() devices allow additional types of
    compression if supported by the platform's libtiff library.
  * The list of base and recommended package names is now provided by
    tools::standard_package_names().
  * cairo_pdf() and cairo_ps() default to onefile = TRUE to closer
    match pdf() and postscript().
  * New option catch.script.errors provides a documented way to catch
    errors and then continue in non-interactive use.
  * L %||% R newly in base is an expressive idiom for the phrases
    if(!is.null(L)) L else R or if(is.null(L)) R else L.
  * The return value from warnings() now always inherits from
    "warnings" as documented, now also in the case of no warnings
    where it previously returned NULL.
  * as.complex("1i") now returns 0 + 1i instead of NA with a warning.
  * z &lt;- c(NA, 1i) now keeps the imaginary part Im(z[1]) == 0, no
    longer coercing to NA_complex_.  Similarly, cumsum(z) correctly
    sums real and imaginary parts separately, i.e., without
    "crosstalk" in case of NAs.
  * On Alpine Linux iconv() now maps "latin2", "latin-2", "latin9"
    and "latin-9" to encoding names the OS knows about
    (case-insensitively).
  * iconv(sub = "Unicode") now always zero-pads to four (hex) digits,
    rather than to 4 or 8.  (This seems to have become the convention
    once Unicode restricted the number of Unicode points to 2^21 - 1
    and so will never need more than 6 digits.)
  * NCOL(NULL) now returns 0 instead of 1, for consistency with
    cbind().
  * The information for the Euro glyph missing from the Adobe .afm
    files for the Courier, Helvetica and Times families has been
    copied from their URW equivalents - this will improve vertical
    centring in the pdf() and postscript() devices.
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.12.0.  The changes are almost entirely cosmetic.
  * The included LAPACK sources have been updated to version 3.12.0
    and some further double-complex routines added.
  * There are new font families for the 2014--5 URW 2.0 fonts (see
    ?pdf) which are included in recent versions of Ghostscript.
    These have font widths for most Greek glyphs and a few others
    which were missing from the original versions (whose font
    families remain available for reproducibility, although
    Ghostscript-based viewers will render using the 2.0 versions).
  * Improve the large-n efficiency of as.matrix(&lt;dist&gt;), thanks an R
    contributors effort, notably by Tim Taylor and Heather Turner,
    see PR#18660.
  * The default and numeric methods of all.equal() get a check.class
    option.
  * zapsmall() gets new optional arguments, function mFUN and min.d,
    for extra flexibility; fulfills a wish in PR#18199.  Also, it is
    now an implicit S4 generic in package methods.
  * The Rd filter for aspell() gains an ignore argument.
  * New generic function sort_by(), primarily useful for the
    data.frame method which can be used to sort rows of a data frame
    by one or more columns.
  * The icence headers for the RPC code in src/extra/xdr have been
    updated to use the GPL-compatible licence published by Oracle
    America in 2010.
  * New function pkg2HTML() in tools to create single-page HTML
    reference manuals for R packages.
  * The byte code evaluator now uses less C stack space for recursive
    calls to byte-compiled functions. It also makes more of an effort
    to avoid allocations for scalar return values.
  * New completion option backtick (disabled by default) allows
    non-syntactic completions to be wrapped in backquotes. This is
    currently only useful for Jupyter notebooks via the IRkernel
    package, and may cause problems for other backends.
  INSTALLATION:
  * The parser has been updated to work with bison 3.8.2, which is
    now used for the pre-generated parsers in gram.c, file.c, and
    gramRd.c. A few parser error messages have changed, which may
    affect code that relies on exact messages.
  INSTALLATION on a UNIX-ALIKE:
  * System valgrind headers are now required to use configure option
  - -with-valgrind-instrumentation with value 1 or 2.
  * configure will warn if it encounters a 32-bit build, as that is
    nowadays almost untested.
  * Environment variable R_SYSTEM_ABI is no longer used and so no
    longer recorded in etc/Renviron (it was not on Windows and was
    only ever used when preparing package tools).
  * If the libdeflate library and headers are available, libdeflate
    rather than libz is used to (de)compress R objects in lazy-load
    databases.  Typically tasks spend up to 5% of their time on such
    operations, although creating lazy-data databases is one of the
    exceptions.
    This can be suppressed if the library is available by the
    configure option --without-libdeflate-compression.
  * configure option --enable-lto=check has not worked reliably since
    2019 and has been removed.
  * The minimum autoconf requirement for a maintainer build has been
    increased to autoconf 2.71.
    It is intended to increase this to 2.72 for R 4.5.0: the
    distributed configure file was generated using 2.72.
  * The minimum version requirement for an external LAPACK has been
    reduced to 3.9.0.
  * No default C++ compiler is set if no C++17 compiler is detected:
    there is no longer an automatic fallback to C++14 or C++11.
    Compilers from the last five years should have sufficient
    support: for others macros CXX and CXXSTD can be set in file
    config.site to provide a fallback if needed.
    The Objective-C++ compiler now by default uses the standard
    selected by R for C++ (currently C++17) rather than the default
    standard for the C++ compiler (which on macOS is still C++98).
  INSTALLATION on macOS:
  * A new configure option --with-newAccelerate makes use of Apple's
    'new' BLAS / LAPACK interfaces in their Accelerate framework.
    Those interfaces are only available in macOS 13.3 or later, and
    building requires SDK 13.3 or later (from the Command Line Tools
    or Xcode 14.3 or later).
    By default the option uses new Accelerate for BLAS calls: to also
    use it for LAPACK use option --with-newAccelerate=lapack.  The
    later interfaces provide LAPACK 3.9.1 rather than 3.2.1: 3.9.1 is
    from 2021-04 and does not include the improved algorithms
    introduced in LAPACK 3.10.0 (including for BLAS calls).
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools44, an update of the Rtools43 toolchain.  It is
    based on GCC 13 and newer versions of MinGW-W64, binutils and
    libraries (targeting 64-bit Intel CPUs).  R-devel can no longer
    be built using Rtools43 without changes.
  * Rtools44 has experimental support for 64-bit ARM (aarch64) CPUs
    _via_ the LLVM 17 toolchain using lld, clang/flang-new and
    libc++.
  UTILITIES:
  * R CMD check notes when S4-style exports are used without
    declaring a strong dependence on package methods.
  * tools::checkRd() (used by R CMD check) detects more problems with
    \Sexpr-based dynamic content, including bad nesting of \Sexprs
    and invalid arguments.
  * tools::checkRd() now reports Rd titles and section names ending
    in a period; this is ignored by R CMD check unless environment
    variable _R_CHECK_RD_CHECKRD_MINLEVEL_ is set to -5 or smaller.
  * R CMD check now notes Rd files without an \alias, as long
    documented in 'Writing R Extensions' §1.3.1.  The check for a
    missing \description has been moved from tools::checkRd() to
    tools::checkRdContents().
  * R CMD check now visits inst/NEWS.Rd and OS-specific man
    subdirectories when checking Rd files.
  * tools::checkDocFiles() and tools::checkRdContents() now also
    check internal Rd files by default, but "specially" (ignoring
    missing documentation of arguments).
  * R CMD Rdiff gets option --useEx.
  * R CMD check now warns on non-portable uses of Fortran KIND such
    as INTEGER(KIND=4) and REAL(KIND=8).
    To see the failing lines set environment variable
    _R_CHECK_FORTRAN_KIND_DETAILS_ to a true value.
  * When checking Rd files, R CMD check now notes some of the "lost
    braces" that tools::checkRd() finds.  Typical problems are Rd
    macros missing the initial backslash (e.g., code{...}), in-text
    set notation (e.g., {1, 2}, where the braces need escaping), and
    \itemize lists with \describe-style entries of the form
    \item{label}{description}.
  * R CMD INSTALL (and hence check) will compile C++ code with
  - DR_NO_REMAP if environment variable _R_CXX_USE_NO_REMAP_ is set
    to a true value.  It is planned that this will in future become
    the default for compiling C++.
  * The new built-in Rd macro \dontdiff{} can be used to mark example
    code whose output should be ignored when comparing check output
    to reference output (tests/Examples/&lt;pkg&gt;-Ex.Rout.save).  The
    \dontdiff tag, like \donttest, is _not_ shown on the rendered
    help page, so provides a clean alternative to ##
    IGNORE_RDIFF_(BEGIN|END) comments.
  * R CMD build when there is no NAMESPACE, now uses the recommended
    exportPattern("^[^.]"), instead of exporting everything.
  * R CMD check now warns about non-ASCII characters in the NAMESPACE
    file (in addition to R files). Such packages are not portable and
    may fail to install on some platforms.
  C-LEVEL FACILITIES:
  * Headers R_ext/Applic.h and R-ext/Linpack.h used to include
    R_ext/BLAS.h although this was undocumented and unneeded by their
    documented entry points.  They no longer do so.
  * New function R_missing(), factored out from do_missing(), used to
    fix PR#18579.
  * SEXP type S4SXP has been renamed to OBJSXP to support
    experimenting with alternative object systems.  The S4SXP value
    can still be used in C code but is now deprecated.  Based on
    contributions from the R Consortium's Object-Oriented Programming
    Working Group.
  * New function pow1p(x,y) for accurate (1+x)^y.
  * mkCharLenCE was incorrectly documented to take a size_t length
    but was implemented with int (and character strings in R are
    limited to 2^31 - 1 bytes).
  DEPRECATED AND DEFUNCT:
  * data() no longer handles zipped data from long-defunct (since R
    2.13.0) --use-zip-data installations.
  * The legacy graphics devices pictex() and xfig() are now
    deprecated.  They do not support recent graphics enhancements and
    their font handling is rudimentary. The intention is to retain
    them for historical interest as long as they remain somewhat
    functional.
  * Support for encoding = "MacRoman" has been removed from the pdf()
    and postscript() devices - this was a legacy encoding supporting
    classic macOS up to 2001 and no longer has universal libiconv
    support.
  * is.R() is deprecated as no other S dialect is known to be in use
    (and this could only identify historical dialects, not future
    ones).
    Further information on calls can be obtained by setting the
    environment variable _R_DEPRECATED_IS_R_ to error which turns the
    deprecation warning into an error and so by default gives a
    traceback.  (This is done by R CMD check --as-cran.)
  * UseMethod() no longer forwards local variables assigned in the
    generic function into method call environments before evaluating
    the method body. This makes method calls behave more like
    standard function calls and makes method code easier to analyze
    correctly.
  * The twelve as.data.frame.&lt;class&gt;() methods which were deprecated
    only via _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ and in R CMD
    check --as-cran are formally deprecated now in favour of calling
    as.data.frame() or as.data.frame.vector().  The deprecation
    "check" now works also when as.data.frame() is S4 generic thanks
    to Ivan Krylov.
  * The default method for the directional comparison operators &lt;, &gt;,
    &lt;=, and &gt;= now signals an error when one of the operands is a
    language object, i.e. a symbol or a call.
  * For terms.formula(), deprecate abb and neg.out arguments
    _formally_ in addition to just documenting it.
  BUG FIXES:
  * The methods package is more robust to not being attached to the
    search path.  More work needs to be done.
  * pairwise.t.test() misbehaved when subgroups had 0 DF for
    variance, even with pool.sd = TRUE.  (PR#18594 by Jack Berry).
  * Probability distribution functions [dpq]&lt;distrib&gt;(x, *), but also
    bessel[IKJY](x, .) now consistently preserve attributes(x) when
    length(x) == 0, e.g., for a 2 x 0 matrix, thanks to Karolis
    Koncevičius' report PR#18509.
  * Group "Summary" computations such as sum(1:3, 4, na.rm = 5, NA,
    7, na.rm = LL) now give an error instead of either 17 or NN for
    LL true or false, as proposed by Ivan Krylov on the R-devel
    mailing list.  (This also means it is now an error to specify
    na.rm more than once.)
  * as.complex(x) now returns complex(real = x, imaginary = 0) for
    _all_ numerical and logical x, notably also for NA or
    NA_integer_.
  * Directories are now omitted by file.copy(, recursive = FALSE) and
    in file.append() (PR#17337).
  * gsub() and sub() are now more robust to integer overflow when
    reporting errors caused by too large input strings (PR#18346).
  * Top-level handlers are now more robust to attempts to remove a
    handler whilst handlers are running (PR#18508).
  * The handling of Alt+F4 in dialogs created on Windows using
    GraphApp has been fixed (PR#13870).
  * density() more consistently computes grid values for the
    FFT-based convolution, following Robert Schlicht's analysis and
    proposal in PR#18337, correcting density values typically by a
    factor of about 0.999.  Argument old.coords = TRUE provides back
    compatibility.
  * palette.colors() gains a name argument that defaults to FALSE
    controlling whether the vector of colours that is returned has
    names (where possible).  PR#18529.
  * tools::xgettext() no longer extracts the (non-translatable) class
    names from warningCondition and errorCondition calls.
  * S3method(&lt;gen&gt;, &lt;class&gt;, &lt;func&gt;) in the NAMESPACE file now works
    (again) when &lt;func&gt; is visible from the namespace, e.g.,
    imported, or in base.
  * getParseData(f) now also works for a function defined in the
    first of several &lt;pkg&gt;/R/*.R source files, thanks to Kirill
    Müller's report and Duncan Murdoch's patch in PR#16756.
  * Rd \Sexpr macros with nested #ifdef conditionals were not
    processed.
  * A non-blocking connection with non-default encoding (such as a
    socket) now correctly returns from readLines() after new data has
    arrived also when its EOF had been reached previously.  Thanks to
    Peter Meilstrup's report on R-devel and Ivan Krylov's report and
    patch proposal in PR#18555.
  * tools::checkRdContents() failed to detect empty argument
    descriptions when they spanned multiple lines, including those
    generated by prompt().  These cases are now noted by R CMD check.
  * Plain-text help no longer outputs spurious colons in the
    arguments list (for multi-line \item labels in the Rd source).
  * kappa() and rcond() work correctly in more cases; kappa(., norm =
    "2") now warns that it computes the 1-norm with (default) exact =
    FALSE; prompted by Mikael Jagan's quite comprehensive PR#18543.
  * Rd skeletons generated by prompt() or promptData() now use a
    dummy title (so R CMD build works).  tools::checkRdContents() has
    been updated to detect such template leftovers, including from
    promptPackage().
  * When S4 method dispatch fails because no method was found, the
    error message now includes the signature argument names; thanks
    to Michael Chirico's proposal on the R-devel list.
  * withAutoprint({ .. }) now preserves srcrefs previously lost,
    thanks to Andrew Simmons' report plus fix in PR#18572.
  * transform.data.frame() no longer adjusts names; in particular,
    untransformed variables are kept as-is, including those with
    syntactically invalid names (PR#17890).
  * The keep.source option for Rd \Sexpr blocks is no longer ignored.
  * The formula methods for t.test() and wilcox.test() now catch when
    paired is passed, addressing PR#14359; use Pair(x1, x2) ~ 1 for a
    paired test.
  * The level reported in the browser prompt was often too large. It
    now shows the number of browser contexts on the stack.
  * For cbind() and rbind(), the optional deparse.level argument is
    now properly passed to methods, thanks to Mikael Jagan's PR#18579
    and comments there.
  * Some error and warning messages for large ('long vector')
    matrix(v, nr, nc) and dim(m) &lt;- d are now correct about sizes,
    using long long formatting, fixing PR#18612 (and more) reported
    by Mikael Jagan.
  * readChar(useBytes = TRUE) now terminates strings even when the
    underlying connection uses extra spaces in the input buffer.
    This fixes problems with extra garbage seen with gzip
    connections, PR#18605.
  * Named capture in PCRE regular expressions now works also with
    more than 127 named groups (PR#18588).
  * Datetime functions are now robust against long jumps when dealing
    with internal time zone changes.  This avoids confusing warnings
    about an invalid time zone, previously triggered by turning
    warnings into errors or handling them via tryCatch (PR#17966,
    PR#17780).
  * Datetime functions now restore even an empty TZ environment
    variable after internal time zone changes (PR#17724).  This makes
    results of datetime functions with this (typically unintentional)
    setting more predictable.
  * drop.terms(*) now drops response as by default, keep.response =
    FALSE, fixing PR#18564 thanks to Mikael Jagan.
  * dummy.coef(.) now also works for lm()-models with character
    categorical predictor variables rather than factor ones, fixing
    PR#18635 reported by Jinsong Zhao.
  * formals(f) &lt;- formals(f) now also works for a function w/o
    arguments and atomic _constant_ body(f).
  * Correct as.function(&lt;invalid list&gt;, .)'s error message.
  * removeSource() is yet more thorough in finding and removing
    "srcref" and the other source references from parsed R language
    chunks, fixing PR#18638 thanks to Andrew Simmons.
  * dgeom() is more accurate now, notably when its result is very
    small, fixing PR#18642 thanks to the proposal of Morten Welinder,
    also improving other instances where C level binom_raw(x, n, ..)
    has x == 0 or x== n.
  * warning() with options(warn = 1) has improved output for
    multi-line messages.
  * axis.Date() and axis.POSIXct() now respect the par("lab") setting
    for the number of pretty() intervals.
  * Comparisons for language objects (which are based on deparsing)
    are now more careful about using accurate deparsed results
    (PR#18676).
  * Plain-text help (Rd2txt) now correctly preserves blank lines
    following single-line \dontrun code.
  * &lt;POSIXlt&gt;[*] no longer sets wrong "balanced" attribute, fixing
    PR#18681 thanks to Mikael Jagan.
  * str(&lt;classed-call&gt;) now deparses the call as expected, fixing
    PR#18684, reported by Dave Slager.
  * In Rd examples, code following the closing brace of a \dontrun,
    \dontshow or \donttest tag on the same line is no longer skipped
    when R CMD check runs the examples.
  * as.data.frame(matrix(*, ncol=0)) now gets valid names() and
    colnames(); reported by Davis Vaughan on the R-devel list.
  * Internal Mathlib function stirlerr(n) is now almost fully
    (52-bit) accurate for all n &gt;= ~5.9 and more accurate also in the
    range 1 -- 5.9.  This entails small ("after 12th decimal")
    changes in density functions, e.g., dgamma() in _some_ regions of
    their support.  The fix was partly prompted by Morten Welinder's
    PR#18640.
  * Numbers like 9876543.2 are now considered non-integer by Mathlib
    internal R_nonint(), amending original fix of PR#15734.
  * Rd comment lines no longer cause broken paragraphs in the
    rendered PDF and plain-text help. In code blocks, pure comment
    lines (starting with %) no longer produce an empty line.
  * xtabs(Freq ~ .) now consistently defaults to na.action = na.pass,
    using na.rm = FALSE (added as an argument) when summing over Freq
    (PR#17770).
  * tools::testInstalledPackage() is no longer silent about failures
    from running examples or tests and its return code no longer
    ignores failures from checking vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1718366400">- CHANGES IN R 4.4.1:
  C-LEVEL FACILITIES:
  * Functions R_atof and R_strtod declared in header R_ext/Utils.h
    are now documented in 'Writing R Extensions' and so formally part
    of the API.
  * The non-API entry points Rf_setSVector, Rf_StringFalse,
    Rf_StringTrue and Rf_isBlankString have been added to those
    reported by R CMD check.
  * The new function Rf_allocLang is now available. This provides an
    alternative to the idiom of calling Rf_allocList followed by
    SET_TYPEOF.
  UTILITIES:
  * R CMD check now reports as warnings what gfortran calls 'Fortran
    2018 deleted features', all of which have long been marked as
    'obsolescent' and some of which were deleted in Fortran 2008 or
    earlier.  Fortran compilers are no longer required to support
    these.
  BUG FIXES:
  * as.numeric(), scan(), type.convert() and other places which use
    the internal C function R_strtod now require a _non-empty_ digit
    sequence in a decimal or binary exponent.  This aligns with the
    C/POSIX standard for strtod and with ?NumericConstants.
  * as.data.frame(m, make.names=NA) now works correctly for a matrix
    m with NA's in row names.
  * The error message from &lt;POSIXlt&gt;[["hour"]] and similar now
    mentions *[[, "hour"]], as wished for in PR#17409 and proposed by
    Michael Chirico.
  * qbinom() and potentially qpois(), qnbinom(), no longer sometimes
    fail accurate inversion (of pbinom(), etc), thanks to Christopher
    Chang's report and patch in PR#18711.
  * The internal help server on Windows can again serve requests sent
    in quick succession, fixing a regression in R 4.4.0.
  * debugcall(&lt;S3Generic&gt;()) now also works when a corresponding
    S4-generic version is in the methods cache (PR#18143).
  * Package tools' toTitleCase(ch0) now returns character(0) when ch0
    is of zero length; fixing PR#18724, reported by David Hugh Jones.
  * R CMD check is no longer broken (without a check result and no
    explanation in 00check.log) for a package which declares an
    invalid VignetteBuilder in DESCRIPTION but has no vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1730376000">- CHANGES IN R 4.4.2:
  C-LEVEL FACILITIES:
  * The S-compatibility macros F77_COM and F77_COMDECL defined in
    header R_ext/RS.h are deprecated and will be removed shortly.  We
    could find no record of their use.
  BUG FIXES:
  * Mathlib function lgammacor(x) no longer warns about underflow to
    zero for large x.
  * Text widths and heights were incorrectly reported by the Quartz
    device if the drawing context didn't exist yet (typically when
    drawing off-screen to a window that is yet to appear, see
    PR#18591).
  * The Quartz device could segfault in cases where paths with spaces
    are used in the new glyph drawing API.  Thanks to Tomek
    Gieorgijewski (PR#18758).
  * On macOS in R CRAN builds, it is again possible to read
    little-endian UTF-16 text with a BOM from a connection using
    encoding="UTF-16".  Users building R from source should avoid
    using the system libiconv in macOS 14.1 and later.
  * methods' internal .requirePackage() now re-enables primitive
    method dispatch when needed; thanks to Ivan Krylov for
    demystifying CRAN package check failures on the R-devel mailing
    list.</changelog>
</package>
<package pkgid="83f8221fd1ca701c82b32358d83a911cb6d243be6400fcbce47090faeed4131f382560b850d7138c24182e65c1970b8cb137534b0c4e3f41d884bded88792cbb" name="R-Matrix" arch="i586">
  <version epoch="0" ver="1.7.1" rel="51.0.2.2.sr20241103"/>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1620302400">- To get in sync with d:l:R:autoCRAN the Matrix package's split
  in -devel was reversed.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339200">- improved spec file according to comments of dimstar in
  https://build.opensuse.org/request/show/892685</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339201">- CHANGES IN R 4.1.0:
  FUTURE DIRECTIONS:
  * It is planned that the 4.1.x series will be the last to support
    32-bit Windows, with production of binary packages for that
    series continuing until early 2023.
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Data set esoph in package datasets now provides the correct
    numbers of controls; previously it had the numbers of cases added
    to these.  (Reported by Alexander Fowler in PR#17964.)
  NEW FEATURES:
  * www.omegahat.net is no longer one of the repositories known by
    default to setRepositories().  (Nowadays it only provides source
    packages and is often unavailable.)
  * Function package_dependencies() (in package tools) can now use
    different dependency types for direct and recursive dependencies.
  * The checking of the size of tarball in R CMD check --as-cran
    &lt;pkg&gt; may be tweaked via the new environment variable
    _R_CHECK_CRAN_INCOMING_TARBALL_THRESHOLD_, as suggested in
    PR#17777 by Jan Gorecki.
  * Using c() to combine a factor with other factors now gives a
    factor, an ordered factor when combining ordered factors with
    identical levels.
  * apply() gains a simplify argument to allow disabling of
    simplification of results.
  * The format() method for class "ftable" gets a new option justify.
    (Suggested by Thomas Soeiro.)
  * New ...names() utility.  (Proposed by Neal Fultz in PR#17705.)
  * type.convert() now warns when its as.is argument is not
    specified, as the help file always said it _should_.  In that
    case, the default is changed to TRUE in line with its change in
    read.table() (related to stringsAsFactor) in R 4.0.0.
  * When printing list arrays, classed objects are now shown _via_
    their format() value if this is a short enough character string,
    or by giving the first elements of their class vector and their
    length.
  * capabilities() gets new entry "Rprof" which is TRUE when R has
    been configured with the equivalent of --enable-R-profiling (as
    it is by default).  (Related to Michael Orlitzky's report
    PR#17836.)
  * str(xS4) now also shows extraneous attributes of an S4 object
    xS4.
  * Rudimentary support for vi-style tags in rtags() and R CMD rtags
    has been added.  (Based on a patch from Neal Fultz in PR#17214.)
  * checkRdContents() is now exported from tools; it and also
    checkDocFiles() have a new option chkInternal allowing to check
    Rd files marked with keyword "internal" as well.  The latter can
    be activated for R CMD check via environment variable
    _R_CHECK_RD_INTERNAL_TOO_.
  * New functions numToBits() and numToInts() extend the raw
    conversion utilities to (double precision) numeric.
  * Functions URLencode() and URLdecode() in package utils now work
    on vectors of URIs.  (Based on patch from Bob Rudis submitted
    with PR#17873.)
  * path.expand() can expand ~user on most Unix-alikes even when
    readline is not in use.  It tries harder to expand ~, for example
    should environment variable HOME be unset.
  * For HTML help (both dynamic and static), Rd file links to help
    pages in external packages are now treated as references to
    topics rather than file names, and fall back to a file link only
    if the topic is not found in the target package. The earlier rule
    which prioritized file names over topics can be restored by
    setting the environment variable _R_HELP_LINKS_TO_TOPICS_ to a
    false value.
  * c() now removes NULL arguments before dispatching to methods,
    thus simplifying the implementation of c() methods, _but_ for
    back compatibility keeps NULL when it is the first argument.
    (From a report and patch proposal by Lionel Henry in PR#17900.)
  * Vectorize()'s result function's environment no longer keeps
    unneeded objects.
  * Function ...elt() now propagates visibility consistently with
    ..n.  (Thanks to Lionel Henry's PR#17905.)
  * capture.output() no longer uses non-standard evaluation to
    evaluate its arguments.  This makes evaluation of functions like
    parent.frame() more consistent.  (Thanks to Lionel Henry's
    PR#17907.)
  * packBits(bits, type="double") now works as inverse of
    numToBits().  (Thanks to Bill Dunlap's proposal in PR#17914.)
  * curlGetHeaders() has two new arguments, timeout to specify the
    timeout for that call (overriding getOption("timeout")) and TLS
    to specify the minimum TLS protocol version to be used for
    https:// URIs (_inter alia_ providing a means to check for sites
    using deprecated TLS versions 1.0 and 1.1).
  * For nls(), an optional constant scaleOffset may be added to the
    denominator of the relative offset convergence test for cases
    where the fit of a model is expected to be exact, thanks to a
    proposal by John Nash.  nls(*, trace=TRUE) now also shows the
    convergence criterion.
  * Numeric differentiation _via_ numericDeriv() gets new optional
    arguments eps and central, the latter for taking central divided
    differences.  The latter can be activated for nls() via
    nls.control(nDcentral = TRUE).
  * nls() now passes the trace and control arguments to getInitial(),
    notably for all self-starting models, so these can also be fit in
    zero-noise situations via a scaleOffset.  For this reason, the
    initial function of a selfStart model must now have ... in its
    argument list.
  * bquote(splice = TRUE) can now splice expression vectors with
    attributes: this makes it possible to splice the result of
    parse(keep.source = TRUE).  (Report and patch provided by Lionel
    Henry in PR#17869.)
  * textConnection() gets an optional name argument.
  * get(), exists(), and get0() now signal an error if the first
    argument has length greater than 1.  Previously additional
    elements were silently ignored.  (Suggested by Antoine Fabri on
    R-devel.)
  * R now provides a shorthand notation for creating functions, e.g.
    \(x) x + 1 is parsed as function(x) x + 1.
  * R now provides a simple native forward pipe syntax |&gt;.  The
    simple form of the forward pipe inserts the left-hand side as the
    first argument in the right-hand side call.  The pipe
    implementation as a syntax transformation was motivated by
    suggestions from Jim Hester and Lionel Henry.
  * all.equal(f, g) for functions now by default also compares their
    environment(.)s, notably via new all.equal method for class
    function.  Comparison of nls() fits, e.g., may now need
    all.equal(m1, m2, check.environment = FALSE).
  * .libPaths() gets a new option include.site, allowing to _not_
    include the site library.  (Thanks to Dario Strbenac's suggestion
    and Gabe Becker's PR#18016.)
  * Lithuanian translations are now available.  (Thanks to Rimantas
    Zakauskas.)
  * names() now works for DOTSXP objects.  On the other hand, in
    R-lang, the R language manual, we now warn against relying on the
    structure or even existence of such dot-dot-dot objects.
  * all.equal() no longer gives an error on DOTSXP objects.
  * capabilities("cairo") now applies only to the file-based devices
    as it is now possible (if very unusual) to build R with Cairo
    support for those but not for X11().
  * There is optional support for tracing the progress of
    loadNamespace() - see its help.
  * (Not Windows.)  l10n_info() reports an additional element, the
    name of the encoding as reported by the OS (which may differ from
    the encoding part (if any) of the result from
    Sys.getlocale("LC_CTYPE").
  * New function gregexec() which generalizes regexec() to find _all_
    disjoint matches and well as all substrings corresponding to
    parenthesized subexpressions of the given regular expression.
    (Contributed by Brodie Gaslam.)
  * New function charClass() in package utils to query the
    wide-character classification functions in use (such as
    iswprint).
  * The names of quantile()'s result no longer depend on the global
    getOption("digits"), but quantile() gets a new optional argument
    digits = 7 instead.
  * grep(), sub(), regexp and variants work considerably faster for
    long factors with few levels.  (Thanks to Michael Chirico's
    PR#18063.)
  * Provide grouping of x11() graphics windows within a window
    manager such as Gnome or Unity; thanks to a patch by Ivan Krylov
    posted to R-devel.
  * The split() method for class data.frame now allows the f argument
    to be specified as a formula.
  * sprintf now warns on arguments unused by the format string.
  * New palettes "Rocket" and "Mako" for hcl.colors() (approximating
    palettes of the same name from the 'viridisLite' package).
    Contributed by Achim Zeileis.
  * The base environment and its namespace are now locked (so one can
    no longer add bindings to these or remove from these).
  * Rterm handling of multi-byte characters has been improved,
    allowing use of such characters when supported by the current
    locale.
  * Rterm now accepts ALT+ +xxxxxxxx sequences to enter Unicode
    characters as hex digits.
  * Environment variable LC_ALL on Windows now takes precedence over
    LC_CTYPE and variables for other supported categories, matching
    the POSIX behaviour.
  * duplicated() and anyDuplicated() are now optimized for integer
    and real vectors that are known to be sorted via the ALTREP
    framework. Contributed by Gabriel Becker via PR#17993.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 14
    and so packages that provide graphics devices should be
    reinstalled.
  * Graphics devices should now specify deviceVersion to indicate
    what version of the graphics engine they support.
  * Graphics devices can now specify deviceClip.  If TRUE, the
    graphics engine will never perform any clipping of output itself.
    The clipping that the graphics engine does perform (for both
    canClip = TRUE and canClip = FALSE) has been improved to avoid
    producing unnecessary artifacts in clipped output.
  * The grid package now allows gpar(fill) to be a linearGradient(),
    a radialGradient(), or a pattern().  The viewport(clip) can now
    also be a grob, which defines a clipping path, and there is a new
    viewport(mask) that can also be a grob, which defines a mask.
    These new features are only supported so far on the Cairo-based
    graphics devices and on the pdf() device.
  * (Not Windows.)  A warning is given when a Cairo-based type is
    specified for a png(), jpeg(), tiff() or bmp() device but Cairo
    is unsupported (so type = "Xlib" is tried instead).
  * grSoftVersion() now reports the versions of FreeType and
    FontConfig if they are used directly (not _via_ Pango), as is
    most commonly done on macOS.
  C-LEVEL FACILITIES:
  * The _standalone_ libRmath math library and R's C API now provide
    log1pexp() again as documented, and gain log1mexp().
  INSTALLATION on a UNIX-ALIKE:
  * configure checks for a program pkgconf if program pkg-config is
    not found.  These are now only looked for on the path (like
    almost all other programs) so if needed specify a full path to
    the command in PKG_CONFIG, for example in file config.site.
  * C99 function iswblank is required - it was last seen missing ca
    2003 so the workaround has been removed.
  * There are new configure options --with-internal-iswxxxxx,
  - -with-internal-towlower and --with-internal-wcwidth which allows
    the system functions for wide-character classification,
    case-switching and width (wcwidth and wcswidth) to be replaced by
    internal ones.  The first has long been used on macOS, AIX (and
    Windows) but this enables it to be unselected there and selected
    for other platforms (it is the new default on Solaris).  The
    second is new in this version of R and is selected by default on
    macOS and Solaris.  The third has long been the default and
    remains so as it contains customizations for East Asian
    languages.
    System versions of these functions are often minimally
    implemented (sometimes only for ASCII characters) and may not
    cover the full range of Unicode points: for example Solaris (and
    Windows) only cover the Basic Multilingual Plane.
  * Cairo installations without X11 are more likely to be detected by
    configure, when the file-based Cairo graphics devices will be
    available but not X11(type = "cairo").
  * There is a new configure option --with-static-cairo which is the
    default on macOS.  This should be used when only static cairo
    (and where relevant, Pango) libraries are available.
  * Cairo-based graphics devices on platforms without Pango but with
    FreeType/FontConfig will make use of the latter for font
    selection.
  LINK-TIME OPTIMIZATION on a UNIX-ALIKE:
  * Configuring with flag --enable-lto=R now also uses LTO when
    installing the recommended packages.
  * R CMD INSTALL and R CMD SHLIB have a new flag --use-LTO to use
    LTO when compiling code, for use with R configured with
  - -enable-lto=R.  For R configured with --enable-lto, they have
    the new flag --no-use-LTO.
    Packages can opt in or out of LTO compilation _via_ a UseLTO
    field in the DESCRIPTION file.  (As usual this can be overridden
    by the command-line flags.)
  BUILDING R on Windows:
  * for GCC &gt;= 8, FC_LEN_T is defined in config.h and hence character
    lengths are passed from C to Fortran in _inter alia_ BLAS and
    LAPACK calls.
  * There is a new text file src/gnuwin32/README.compilation, which
    outlines how C/Fortran code compilation is organized and
    documents new features:
  * R can be built with Link-Time Optimization with a suitable
    compiler - doing so with GCC 9.2 showed several
    inconsistencies which have been corrected.
  * There is support for cross-compiling the C and Fortran code
    in R and standard packages on suitable (Linux) platforms.
    This is mainly intended to allow developers to test later
    versions of compilers - for example using GCC 9.2 or 10.x has
    detected issues that GCC 8.3 in Rtools40 does not.
  * There is experimental support for cross-building R packages
    with C, C++ and/or Fortran code.
  * The R installer can now be optionally built to support a single
    architecture (only 64-bit or only 32-bit).
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++14 where
    available (which it is on all currently checked platforms): if
    not (as before) C++11 is used if available otherwise C++ is not
    supported.
    Packages which specify C++11 will still be installed using C++11.
    C++14 compilers may give deprecation warnings, most often for
    std::random_shuffle (deprecated in C++14 and removed in C++17).
    Either specify C++11 (see 'Writing R Extensions') or modernize
    the code and if needed specify C++14.  The latter has been
    supported since R 3.4.0 so the package's DESCRIPTION would need
    to include something like
    Depends: R (&gt;= 3.4)
  PACKAGE INSTALLATION on Windows:
  * R CMD INSTALL and R CMD SHLIB make use of their flag --use-LTO
    when the LTO_OPT make macro is set in file etc/${R_ARCH}/Makeconf
    or in a personal/site Makevars file.  (For details see 'Writing R
    Extensions' SS4.5.)
    This provides a valuable check on code consistency.  It does work
    with GCC 8.3 as in Rtools40, but that does not detect everything
    the CRAN checks with current GCC do.
  PACKAGE INSTALLATION on macOS:
  * The default personal library directory on builds with
  - -enable-aqua (including CRAN builds) now differs by CPU type,
    one of
    ~/Library/R/x86_64/x.y/library
    ~/Library/R/arm64/x.y/library
    This uses the CPU type R (and hence the packages) were built for,
    so when a x86_64 build of R is run under Rosetta emulation on an
    arm64 Mac, the first is used.
  UTILITIES:
  * R CMD check can now scan package functions for bogus return
    statements, which were possibly intended as return() calls (wish
    of PR#17180, patch by Sebastian Meyer). This check can be
    activated via the new environment variable
    _R_CHECK_BOGUS_RETURN_, true for --as-cran.
  * R CMD build omits tarballs and binaries of previous builds from
    the top-level package directory.  (PR#17828, patch by Sebastian
    Meyer.)
  * R CMD check now runs sanity checks on the use of LazyData, for
    example that a data directory is present and that
    LazyDataCompression is not specified without LazyData and has a
    documented value.  For packages with large LazyData databases
    without specifying LazyDataCompression, there is a reference to
    the code given in 'Writing R Extensions' SS1.1.6 to test the
    choice of compression (as in all the CRAN packages tested a
    non-default method was preferred).
  * R CMD build removes LazyData and LazyDataCompression fields from
    the DESCRIPTION file of packages without a data directory.
  ENCODING-RELATED CHANGES:
  * The parser now treats \Unnnnnnnn escapes larger than the upper
    limit for Unicode points (\U10FFFF) as an error as they cannot be
    represented by valid UTF-8.
    Where such escapes are used for outputting non-printable
    (including unassigned) characters, 6 hex digits are used (rather
    than 8 with leading zeros).  For clarity, braces are used, for
    example \U{0effff}.
  * The parser now looks for non-ASCII spaces on Solaris (as
    previously on most other OSes).
  * There are warnings (including from the parser) on the use of
    unpaired surrogate Unicode points such as \uD834.  (These cannot
    be converted to valid UTF-8.)
  * Functions nchar(), tolower(), toupper() and chartr() and those
    using regular expressions have more support for inputs with a
    marked Latin-1 encoding.
  * The character-classification functions used (by default) to
    replace the system iswxxxxx functions on Windows, macOS and AIX
    have been updated to Unicode 13.0.0.
    The character-width tables have been updated to include new
    assignments in Unicode 13.0.0.
  * The code for evaluating default (extended) regular expressions
    now uses the same character-classification functions as the rest
    of R (previously they differed on Windows, macOS and AIX).
  * There is a build-time option to replace the system's
    wide-character wctrans C function by tables shipped with R: use
    configure option --with-internal-towlower or (on Windows)
  - DUSE_RI18N_CASE in CFLAGS when building R.  This may be needed
    to allow tolower() and toupper() to work with Unicode characters
    beyond the Basic Multilingual Plane where not supported by system
    functions (e.g. on Solaris where it is the new default).
  * R is more careful when truncating UTF-8 and other multi-byte
    strings that are too long to be printed, passed to the system or
    libraries or placed into an internal buffer.  Truncation will no
    longer produce incomplete multibyte characters.
  DEPRECATED AND DEFUNCT:
  * Function plclust() from the package stats and
    package.dependencies(), pkgDepends(), getDepList(),
    installFoundDepends(), and vignetteDepends() from package tools
    are defunct.
  * Defunct functions checkNEWS() and readNEWS() from package tools
    and CRAN.packages() from utils have been removed.
  * R CMD config CXXCPP is defunct (it was deprecated in R 3.6.2).
  * parallel::detectCores() drops support for Irix (retired in 2013).
  * The LINPACK argument to chol.default(), chol2inv(),
    solve.default() and svd() has been defunct since R 3.1.0.  It was
    silently ignored up to R 4.0.3 but now gives an error.
  * Subsetting/indexing, such as ddd[*] or ddd$x on a DOTSXP
    (dot-dot-dot) object ddd has been disabled; it worked by accident
    only and was undocumented.
  BUG FIXES:
  * Many more C-level allocations (mainly by malloc and strdup) are
    checked for success with suitable alternative actions.
  * Bug fix for replayPlot(); this was turning off graphics engine
    display list recording if a recorded plot was replayed in the
    same session.  The impact of the bug became visible if resize the
    device after replay OR if attempted another savePlot() after
    replay (empty display list means empty screen on resize or empty
    saved plot).
  * R CMD check etc now warn when a package exports non-existing S4
    classes or methods, also in case of no "methods" presence.
    (Reported by Alex Bertram; reproducible example and patch by
    Sebastian Meyer in PR#16662.)
  * boxplot() now also accepts calls for labels such as ylab, the
    same as plot().  (Reported by Marius Hofert.)
  * The help page for xtabs() now correctly states that addNA is
    setting na.action = na.pass among others.  (Reported as PR#17770
    by Thomas Soeiro.)
  * The R CMD check &lt;pkg&gt; gives a longer and more comprehensible
    message when DESCRIPTION misses dependencies, e.g., in Imports:.
    (Thanks to the contributors of PR#17179.)
  * update.default() now calls the generic update() on the formula to
    work correctly for models with extended formulas.  (As reported
    and suggested by Neal Fultz in PR#17865.)
  * The horizontal position of leaves in a dendrogram is now correct
    also with center = FALSE.  (PR#14938, patch from Sebastian
    Meyer.)
  * all.equal.POSIXt() no longer warns about and subsequently ignores
    inconsistent "tzone" attributes, but describes the difference in
    its return value (PR#17277).  This check can be disabled _via_
    the new argument check.tzone = FALSE as suggested by Sebastian
    Meyer.
  * as.POSIXct() now populates the "tzone" attribute from its tz
    argument when x is a logical vector consisting entirely of NA
    values.
  * x[[2^31]] &lt;- v now works.  (Thanks to the report and patch by
    Suharto Anggono in PR#17330.)
  * In log-scale graphics, axis() ticks and label positions are now
    computed more carefully and symmetrically in their range,
    typically providing _more_ ticks, fulfilling wishes in PR#17936.
    The change really corresponds to an improved axisTicks() (package
    grDevices), potentially influencing grid and lattice, for
    example.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now correct to at
    least five digits where it was catastrophically wrong,
    previously.
  * sum(df) and similar "Summary"- and "Math"-group member functions
    now work for data frames df with logical columns, notably also of
    zero rows.  (Reported to R-devel by Martin "b706".)
  * unsplit() had trouble with tibbles due to unsound use of rep(NA,
    len)-indexing, which should use NA_integer_ (Reported to R-devel
    by Mario Annau.)
  * pnorm(x, log.p = TRUE) underflows to -Inf slightly later.
  * show(&lt;hidden S4 generic&gt;) prints better and without quotes for
    non-hidden S4 generics.
  * read.table() and relatives treated an "NA" column name as missing
    when check.names = FALSE PR#18007.
  * Parsing strings containing UTF-16 surrogate pairs such as
    "\uD834\uDD1E" works better on some (uncommon) platforms.
    sprintf("%X", utf8ToInt("\uD834\uDD1E")) should now give "1D11E"
    on all platforms.
  * identical(x,y) is no longer true for differing DOTSXP objects,
    fixing PR#18032.
  * str() now works correctly for DOTSXP and related exotics, even
    when these are doomed.
    Additionally, it no longer fails for lists with a class and
    "irregular" method definitions such that e.g. lapply(*) will
    necessarily fail, as currently for different igraph objects.
  * Too long lines in environment files (e.g. Renviron) no longer
    crash R. This limit has been increased to 100,000 bytes.
    (PR#18001.)
  * There is a further workaround for FreeType giving incorrect
    italic font faces with cairo-based graphics devices on macOS.
  * add_datalist(*, force = TRUE) (from package tools) now actually
    updates an existing data/datalist file for new content.  (Thanks
    to a report and patch by Sebastian Meyer in PR#18048.)
  * cut.Date() and cut.POSIXt() could produce an empty last interval
    for breaks = "months" or breaks = "years".  (Reported as PR#18053
    by Christopher Carbone.)
  * Detection of the encoding of 'regular' macOS locales such as
    en_US (which is UTF-8) had been broken by a macOS change:
    fortunately these are now rarely used with en_US.UTF-8 being
    preferred.
  * sub() and gsub(pattern, repl, x, *) now keep attributes of x such
    as names() also when pattern is NA (PR#18079).
  * Time differences ("difftime" objects) get a replacement and a
    rep() method to keep "units" consistent.  (Thanks to a report and
    patch by Nicolas Bennett in PR#18066.)
  * The \RdOpts macro, setting defaults for \Sexpr options in an Rd
    file, had been ineffective since R 2.12.0: it now works again.
    (Thanks to a report and patch by Sebastian Meyer in PR#18073.)
  * mclapply and pvec no longer accidentally terminate parallel
    processes started before by mcparallel or related calls in
    package parallel (PR#18078).
  * grep and other functions for evaluating (extended) regular
    expressions handle in Unicode also strings not explicitly flagged
    UTF-8, but flagged native when running in UTF-8 locale.
  * Fixed a crash in fifo implementation on Windows (PR#18031).
  * Binary mode in fifo on Windows is now properly detected from
    argument open (PR#15600, PR#18031).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1622808000">- The line %{__install} -m 755 -d %{_infodir}
  no longer works in TW or Factory.
  But without that line it works everywhere. So this instruction
  was commented out of the spec file.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1628596800">- CHANGES IN R 4.1.1:
  NEW FEATURES:
  * require(pkg, quietly = TRUE) is quieter and in particular does
    not warn if the package is not found.
  DEPRECATED AND DEFUNCT:
  * Use of ftp:// URIs should be regarded as deprecated, with
    on-going support confined to method = "libcurl" and not routinely
    tested.  (Nowadays no major browser supports them.)
  * The non-default method = "internal" is deprecated for http:// and
    ftp:// URIs for both download.file and url.
  * On Windows, method = "wininet" is deprecated for http://,
    https:// and ftp:// URIs for both download.file and url.  (A
    warning is only given for ftp://.)
    For ftp:// URIs the default method is now "libcurl" if available
    (which it is on CRAN builds).
    method = "wininet" remains the default for http:// and https://
    URIs but if libcurl is available, using method = "libcurl" is
    preferred.
  INSTALLATION:
  * make check now works also without a LaTeX installation.  (Thanks
    to Sebastian Meyer's PR#18103.)
  BUG FIXES:
  * make check-devel works again in an R build configured with
  - -without-recommended-packages.
  * qnbinom(p, size, mu) for large size/mu is correct now in a range
    of cases (PR#18095); similarly for the (size, prob)
    parametrization of the negative binomial.  Also qpois() and
    qbinom() are better and or faster for extreme cases.  The
    underlying C code has been modularized and is common to all four
    cases of discrete distributions.
  * gap.axis is now part of the axis() arguments which are passed
    from bxp(), and hence boxplot().  (Thanks to Martin Smith's
    report and suggestions in PR#18109.)
  * .First and .Last can again be set from the site profile.
  * seq.int(from, to, *) and seq.default(..) now work better in large
    range cases where from-to is infinite where the two boundaries
    are finite.
  * all.equal(x,y) now returns TRUE correctly also when several
    entries of abs(x) and abs(y) are close to .Machine$double.xmax,
    the largest finite numeric.
  * model.frame() now clears the object bit when removing the class
    attribute of a value via na.action (PR#18100).
  * charClass() now works with multi-character strings on Windows
    (PR#18104, fixed by Bill Dunlap).
  * encodeString() on Solaris now works again in Latin-1 encoding on
    characters represented differently in UTF-8.  Support for
    surrogate pairs on Solaris has been improved.
  * file.show() on Windows now works with non-ASCII path names
    representable in the current native encoding (PR#18132).
  * Embedded R on Windows can now find R home directory via the
    registry even when installed only for the current user
    (PR#18135).
  * pretty(x) with finite x now returns finite values also in the
    case where the extreme x values are close in size to the maximal
    representable number .Machine$double.xmax.
    Also, it's been tweaked for very small ranges and when a boundary
    is close (or equal) to zero; e.g., pretty(c(0,1e-317)) no longer
    has negative numbers, currently still warning about a very small
    range, and pretty(2^-(1024 - 2^-1/(c(24,10)))) is more accurate.
  * The error message for not finding vignette files when weaving has
    correct file sizes now. (Thanks to Sebastian Meyer's PR#18154.)
  * dnbinom(20, &lt;large&gt;, 1) now correctly gives 0, and similar cases
    are more accurate with underflow precaution.  (Reported by Francisco Vera Alcivar in PR#18072.)</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635163200">- repaired https://bugzilla.suse.com/show_bug.cgi?id=1191380
  (rpmacros now go to rpmmacrodir)
- minor clean-ups in spec file</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635768000">- CHANGES IN R 4.1.2:
  C-LEVEL FACILITIES:
  * The workaround in headers R.h and Rmath.h (using namespace std;)
    for the Oracle Developer Studio compiler is no longer needed now
    C++11 is required so has been removed.  A couple more usages of
    log() (which should have been std::log()) with an int argument
    are reported on Solaris.
  * The undocumented limit of 4095 bytes on messages from the
    S-compatibility macros PROBLEM and MESSAGE is now documented and
    longer messages will be silently truncated rather than
    potentially causing segfaults.
  * If the R_NO_SEGV_HANDLER environment variable is non-empty, the
    signal handler for SEGV/ILL/BUS signals (which offers recovery
    user interface) is not set. This allows more reliable debugging
    of crashes that involve the console.
  DEPRECATED AND DEFUNCT:
  * The legacy S-compatibility macros PROBLEM, MESSAGE, ERROR, WARN,
    WARNING, RECOVER, ... are deprecated and will be hidden in R
    4.2.0. R's native interface of Rf_error and Rf_warning has long
    been preferred.
  BUG FIXES:
  * .mapply(F, dots, .) no longer segfaults when dots is not a list
    and uses match.fun(F) as always documented; reported by Andrew
    Simmons in PR#18164.
  * hist(&lt;Date&gt;, ...) and hist(&lt;POSIXt&gt;, ...)  no longer pass
    arguments for rect() (such as col and density) to axis().
    (Thanks to Sebastian Meyer's PR#18171.)
  * \Sexpr{ch} now preserves Encoding(ch). (Thanks to report and
    patch by Jeroen Ooms in PR#18152.)
  * Setting the RNG to "Marsaglia-Multicarry" e.g., by RNGkind(), now
    warns in more places, thanks to Andr'e Gillibert's report and
    patch in PR#18168.
  * gray(numeric(), alpha=1/2) no longer segfaults, fixing PR#18183,
    reported by Till Krenz.
  * Fixed dnbinom(x, size=&lt;very_small&gt;, .., log=TRUE) regression,
    reported by Martin Morgan.
  * as.Date.POSIXlt(x) now keeps names(x), thanks to Davis Vaughan's
    report and patch in PR#18188.
  * model.response() now strips an "AsIs" class typically, thanks to
    Duncan Murdoch's report and other discussants in PR#18190.
  * try() is considerably faster in case of an error and long call,
    as e.g., from some do.call().  Thanks to Alexander Kaever's
    suggestion posted to R-devel.
  * qqline(y = &lt;object&gt;) such as y=I(.), now works, see also
    PR#18190.
  * Non-integer mgp par() settings are now handled correctly in
    axis() and mtext(), thanks to Mikael Jagan and Duncan Murdoch's
    report and suggestion in PR#18194.
  * formatC(x) returns length zero character() now, rather than ""
    when x is of length zero, as documented, thanks to Davis
    Vaughan's post to R-devel.
  * removeSource(fn) now retains (other) attributes(fn).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1647000000">- CHANGES IN R 4.1.3:
  NEW FEATURES:
  * The default version of Bioconductor has been changed to 3.14.
    (This is used by setRepositories and the menus in GUIs.)
  UTILITIES:
  * R CMD check --as-cran has a workaround for a bug in versions of
    file up to at least 5.41 which mis-identify DBF files last
    changed in 2022 as executables.
  C-LEVEL FACILITIES:
  * The legacy S-compatibility macros SINGLE_* in R_ext/Constants.h
    (included by R.h) are deprecated and will be removed in R 4.2.0.
  BUG FIXES:
  * Initialization of self-starting nls() models with initialization
    functions following the pre-R-4.1.0 API (without the ...
    argument) works again for now, with a deprecation warning.
  * Fixed quoting of ~autodetect~ in Java setting defaults to avoid
    inadvertent user lookup due to leading ~, reported in PR#18231 by
    Harold Gutch.
  * substr(., start, stop) &lt;- v now treats _negative_ stop values
    correctly.  Reported with a patch in PR#18228 by Brodie Gaslam.
  * Subscripting an array x without dimnames by a
    length(dim(x))-column character matrix gave "random" non-sense,
    now an error; reported in PR#18244 by Mikael Jagan.
  * ...names() now matches names(list(...)) closely, fixing PR#18247.
  * all.equal(*, scale = s) now works as intended when length(s) &gt; 1,
    partly thanks to Michael Chirico's PR#18272.
  * print(x) for long vectors x now also works for named atomic
    vectors or lists and prints the correct number when reaching the
    getOption("max.print") limit; partly thanks to a report and
    proposal by Hugh Parsonage to the R-devel list.
  * all.equal(&lt;selfStart&gt;, *) no longer signals a deprecation
    warning.
  * reformulate(*, response=r) gives a helpful error message now when
    length(r) &gt; 1, thanks to Bill Dunlap's PR#18281.
  * Modifying globalCallingHandlers inside withCallingHandlers() now
    works or fails correctly, thanks to Henrik Bengtsson's PR#18257.
  * hist(&lt;Date&gt;, breaks = "days") and hist(&lt;POSIXt&gt;, breaks = "secs")
    no longer fail for inputs of length 1.
  * qbeta(.001, .9, .009) and similar cases now converge correctly
    thanks to Ben Bolker's report in PR#17746.
  * window(x, start, end) no longer wrongly signals "'start' cannot
    be after 'end'", fixing PR#17527 and PR#18291.
  * data() now checks that its (rarely used) list argument is a
    character vector - a couple of packages passed other types and
    gave incorrect results.
  * which() now checks its arr.ind argument is TRUE rather coercing
    to logical and taking the first element - which gave incorrect
    results in package code.
  * model.weights() and model.offset() more carefully extract their
    model components, thanks to Ben Bolker and Tim Taylor's R-devel
    post.
  * list.files(recursive = TRUE) now shows all broken symlinks
    (previously, some of them may have been omitted, PR#18296).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1650628800">- CHANGES IN R 4.2.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * The formula method of aggregate() now matches the generic in
    naming its first argument x (resolving PR#18299 by Thomas
    Soeiro).
    This means that calling aggregate() with a formula as a named
    first argument requires name formula in earlier versions of R and
    name x now, so portable code should not name the argument (code
    in many packages did).
  * Calling &amp;&amp; or || with either argument of length greater than one
    now gives a warning (which it is intended will become an error).
  * Calling if() or while() with a condition of length greater than
    one gives an error rather than a warning.  Consequently,
    environment variable _R_CHECK_LENGTH_1_CONDITION_ no longer has
    any effect.
  * Windows users should consult the WINDOWS section below for some
    profound changes including
  * Support for 32-bit builds has been dropped.
  * UTF-8 locales are used where available.
  * The default locations for the R installation and personal
    library folder have been changed.
    Thanks to Tomas Kalibera for months of work on the Windows port
    for this release.
  NEW FEATURES:
  * matrix(x, n, m) now warns in more cases where length(x) differs
    from n * m, as suggested by Abby Spurdle and Wolfgang Huber in
    Feb 2021 on the R-devel mailing list.
    This warning can be turned into an error by setting environment
    variable _R_CHECK_MATRIX_DATA_ to TRUE: R CMD check --as-cran
    does so unless it is already set.
  * Function file_test() in package utils gains tests for symlinks,
    readability and writability.
  * capabilities("libxml") is now false.
    The description of capabilities("http/ftp") now reflects that it
    refers to the default method, no longer the internal one.
  * simplify2array() gains an except argument for controlling the
    exceptions used by sapply().
  * Environment variables R_LIBS_USER and R_LIBS_SITE are both now
    set to the R system default if unset or empty, and can be set to
    NULL to indicate an empty list of user or site library
    directories.
  * The warning for axis()(-like) calls in cases of relatively small
    ranges (typically in log-scale situations) is slightly improved
    _and_ suppressed from explicit calls to .axisPars() as has always
    been the intention.
  * The contrasts setter function `contrasts&lt;-` gains an explicit
    default how.many = NULL rather than just using missing(how.many).
  * grid.pretty() gains a new optional argument n = 5.
  * There is a new function .pretty() with option bounds as a
    technical-utility version of pretty().  It and pretty() gain a
    new argument f.min with a better than back-compatible default.
  * Function grDevices::axisTicks() and related functions such as
    graphics::axis() work better, notably for the log scale; partly
    because of the pretty() improvements, but also because care is
    taken e.g., when ylim is finite but diff(ylim) is infinite.
  * nclass.FD() gains a digits option.
  * The R Mathlib internal C function bd0() (called indirectly from a
    dozen probability density and distribution functions such as
    dpois(), dbinom(), dgamma(), pgamma() _etc_) has been
    complemented by a more sophisticated and (mostly) more accurate C
    function ebd0(), currently called only by internal dpois_raw()
    improving accuracy for R level dpois() and potentially others
    calling it such as dnbinom(), dgamma() or pgamma().  (Thanks to
    Morten Welinder's PR#15628.)
  * write.ftable() gains sep = " " argument as suggested by Thomas
    Soeiro.
  * The names of the locale categories supported by R's
    Sys.getlocale() and Sys.setlocale() are now provided by variable
    .LC.categories in the base namespace.
  * The Date and POSIXt methods for hist() and the histogram method
    for plot() now also use the new default col = "lightgray" in
    consistency with the corresponding change to hist()'s default for
    R 4.0.0.
  * hist.default() gains new fuzz argument, and the histogram plot
    method no longer uses fractional axis ticks when displaying
    counts ("Frequency").
  * mapply() and hence Map() now also obey the "max-or-0-if-any"
    recycling rule, such that, e.g., Map(`+`, 1:3, 1[0]) is valid
    now.
  * as.character(&lt;obj&gt;) for "hexmode" or "octmode" objects now
    fulfils the important basic rule as.character(x)[j] ===
    as.character(x[j]).
  * The set utility functions, notably intersect() have been tweaked
    to be more consistent and symmetric in their two set arguments,
    also preserving a common mode.
  * substr(ch, start,end) &lt;- new now e.g., preserves names(ch); ditto
    for substring(), thanks to a patch from Brodie Gaslam.
  * plot(&lt;lm&gt;) gains a extend.ylim.f argument, in partial response to
    PR#15285; further PR#17784 is fixed thanks to several
    contributors and a patch by Elin Waring.  The Cook's dist
    contours get customizable via cook.col and cook.lty with a
    different default color and their legend is nicer by default and
    customizable via cook.legendChanges.
  * Attempting to subset an object that is not subsettable now
    signals an error of class notSubsettableError. The
    non-subsettable object is contained in the object field of the
    error condition.
  * Subscript-out-of-bounds errors are now signaled as errors of
    class subscriptOutOfBoundsError.
  * Stack-overflow errors are now signaled as errors inheriting from
    class stackOverflowError. See ?stackOverflowError for more
    details.
  * New partly experimental Sys.setLanguage() utility, solving the
    main problem of PR#18055.
  * gettext() and gettextf() get a new option trim = TRUE which when
    set to false allows translations for strings such as "Execution
    halted\n" typical for C code.
  * An experimental implementation of hash tables is now available.
    See ?hashtab for more details.
  * identical() gains a extptr.as.ref argument for requesting that
    external pointer objects be compared as reference objects.
  * reorder() gets an argument decreasing which it passes to sort()
    for level creation; based on the wish and patch by Thomas Soeiro
    in PR#18243.
  * as.vector() gains a data.frame method which returns a simple
    named list, also clearing a long standing 'FIXME' to enable
    as.vector(&lt;data.frame&gt;, mode="list").  This breaks code relying
    on as.vector(&lt;data.frame&gt;) to return the unchanged data frame.
  * legend() is now vectorized for arguments cex, x.intersp, and
    text.width.  The latter can now also be specified as a vector
    (one element for each column of the legend) or as NA for
    computing a proper column wise maximum value of strwidth(legend).
    The argument y.intersp can be specified as a vector with one
    entry for each row of the legend.
    legend() also gains new arguments title.cex and title.font.
    Thanks to Swetlana Herbrandt.
  * Deparsing no longer remaps attribute names dim, dimnames, levels,
    names and tsp to historical S-compatible names (which structure()
    maps back).
  * sample() and sample.int() have additional sanity checks on their
    size and n arguments.
    all.equal.numeric() gains a sanity check on its tolerance
    argument - calling all.equal(a, b, c) for three numeric vectors
    is a surprisingly common error.
    mean(na.rm =), rank(na.last =), barplot(legend.text =),
    boxplot(), contour(drawlabels =), polygon(border =) and
    methods::is(class2 =) have more robust sanity checks on their
    arguments.
    R CMD Rd2pdf (used by R CMD check) has a more robust sanity check
    on the format of \alias{} commands.
  * psigamma(x, deriv) for negative x now also works for deriv = 4
    and 5; their underlying C level dpsifn() is documented in
    'Writing R Extensions'.
  * The HTML help system now uses HTML5 (wish of PR#18149).
  * ks.test() now provides exact p-values also with ties and MC
    p-values in the two-sample (Smirnov) case.  By Torsten Hothorn.
  * ks.test() gains a formula interface, with y ~ 1 for the
    one-sample (Kolmogorov) test and y ~ group for the two-sample
    (Smirnov) test.  Contributed by Torsten Hothorn.
  * The return value from ks.test() now has class c("ks.test",
    "htest") - packages using try() need to take care to use
    inherits() and not == on the class.
  * New functions psmirnov(), qsmirnov() and rsmirnov() in package
    stats implementing the asymptotic and exact distributions of the
    two-sample Smirnov statistic.
  * iconv() now allows sub = "c99" to use C99-style escapes for UTF-8
    inputs which cannot be converted to encoding to.
  * In a forward pipe |&gt; expression it is now possible to use a named
    argument with the placeholder _ in the rhs call to specify where
    the lhs is to be inserted.  The placeholder can only appear once
    on the rhs.
  * The included LAPACK sources have been updated to version 3.10.0,
    except for the four Fortran 77 routines which 3.10.0 has
    re-implemented in Fortran 90 (where the older versions have been
    retained as the R build process does not support Fortran 90).
  * path.expand() and most other uses of tilde expansion now warn if
    a path would be too long if expanded.  (An exception is
    file.exists(), which silently returns false.)
  * trunc(&lt;Date&gt;, *) now supports units = "months" or "years" for
    consistency with the POSIXt method, thanks to Dirk Eddelbuettel's
    proposal in PR#18099.
  * list2DF() now checks that its arguments are of the same length,
    rather than use recycling.
  * The HTML help system has several new features: LaTeX-like math
    can be typeset using either KaTeX or MathJax, usage and example
    code is highlighted using Prism, and for dynamic help the output
    of examples and demos can be shown within the browser if the
    knitr package is installed. These features can be disabled by
    setting the environment variable _R_HELP_ENABLE_ENHANCED_HTML_ to
    a false value.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 15
    and so packages that provide graphics devices should be
    reinstalled.
  * The grid package now allows the user to specify a "vector" of
    pattern fills.  The fill argument to gpar() accepts a list of
    gradients and/or patterns and the functions linearGradient(),
    radialGradient(), and pattern() have a new group argument.
    Points grobs (data symbols) can now also have a pattern fill.
    The grobCoords() function now returns a more informative and
    complex result.
  * The grid package has new functions for drawing isolated groups:
    grid.group(), grid.define(), and grid.use().  These functions add
    compositing operators and affine transformations to R's graphics
    capabilities.
    The grid package also has new functions for stroking and filling
    paths: grid.stroke(), grid.fill(), and grid.fillStroke().
    A new function as.path() allows the user to specify the fill rule
    for a path that is to be used for clipping, stroking, or filling;
    available options are "winding" and "evenodd".  A new function
    as.mask() allows the user to specify the type of a mask;
    available options are "alpha" and "luminance".
    These new features are only supported so far (at most) on the
    Cairo-based graphics devices and on the pdf() device.
  * dev.capabilities() reports on device support for the new
    features.
  * par() now warns about unnamed non-character arguments to prevent
    misuse such as {usr &lt;- par("usr"); par(usr)}.
  INSTALLATION:
  * Facilities for accessing ftp:// sites are no longer tested
    (except _pro tem_ for curlGetHeaders()) as modern browsers have
    removed support.
  * R can now be built with DEFS = -DSTRICT_R_HEADERS .
  PACKAGE INSTALLATION:
  * R CMD INSTALL no longer tangles vignettes. This completes an R
    CMD build change in R 3.0.0 and affects packages built before R
    3.0.2. Such packages should be re-made with R CMD build to have
    the tangled R code of vignettes shipped with the tarball.
  * USE_FC_LEN_T will become the default: this uses the correct
    prototypes for Fortran BLAS/LAPACK routines called from C/C++,
    and requires adjustment of most such calls - see 'Writing R
    Extensions' SS6.6.2.  (This has been supported since R 3.6.2.)
  * Package installation speed for packages installed with
    keep.source has been improved. This resolve the issue reported by
    Ofek Shilon in PR#18236.
  UTILITIES:
  * R CMD check can optionally report files/directories left behind
    in home, /tmp (even though TMPDIR is set) and other directories.
    See the "R Internals" manual for details.
  * R CMD check now reports byte-compilation errors during
    installation.  These are not usually fatal but may result in
    parts of the package not being byte-compiled.
  * _R_CHECK_DEPENDS_ONLY_ can be applied selectively to examples,
    tests and/or vignettes in R CMD check: see the "R Internals"
    manual.
  * _R_CHECK_SRC_MINUS_W_IMPLICIT_ now defaults to true: recent
    versions of Apple clang on macOS have made implicit function
    declarations in C into a compilation error.
  * R CMD check --as-cran makes use of the environment variable
    AUTORECONF.  See the "R Internals" manual SS8 for further details.
  * R CMD check --use-valgrind also uses valgrind when re-building
    vignettes as some non-Sweave vignettes unhelpfully comment out
    all their code when R CMD check runs vignettes.
  * Errors in re-building vignettes (unless there are LaTeX errors)
    are reported by R CMD check as ERROR rather than WARNING when
    running vignettes has been skipped (as it frequently is in CRAN
    checks and by --as-cran).
  * R CMD Rd2pdf gains a --quiet option that is used by R CMD build
    when building the PDF package manual.
  * R CMD Rd2pdf now always runs LaTeX in batch mode, consistent with
    Texinfo &gt;= 6.7. The --batch option is ignored.
  * R CMD build and R CMD check now include the Rd file name and line
    numbers in the error message of an \Sexpr evaluation failure.
  * For packages using the \doi Rd macro (now an install-time \Sexpr)
    but no other dynamic Rd content, R CMD build now produces a
    smaller tarball and is considerably faster - skipping temporary
    package installation.
  C-LEVEL FACILITIES:
  * The non-API header R_ext/R-ftp-http.h is no longer provided, as
    the entry points it covered are now all defunct.
  * A number of non-API declarations and macro definitions have been
    moved from the installed header Rinternals.h to the internal
    header Defn.h. Packages that only use entry points and
    definitions documented to be part of the API as specified in
    'Writing R Extensions' SS6 should not be affected.
  * The macro USE_RINTERNALS no longer has any effect when compiling
    package code.  Packages which also use R_NO_REMAP will need to
    ensure that the remapped names are used for calls to API
    functions that were formerly also made available as macros.
  * The deprecated legacy S-compatibility macros PROBLEM, MESSAGE,
    ERROR, WARN, WARNING, RECOVER, ... are no longer defined in
    R_exts/RS.h (included by R.h).  Replace these by calls to
    Rf_error and Rf_warning (defined in header R_ext/Error.h included
    by R.h).
    Header R_ext/RS.h no longer includes R_ext/Error.h.
  * Header R_ext/Constants.h (included by R.h) when included from C++
    now includes the C++ header cfloat rather than the C header
    float.h (now possible as C++11 is required).
  * The legacy S-compatibility macros DOUBLE_* in R_ext/Constants.h
    (included by R.h) are deprecated.
  * The deprecated S-compatibility macros SINGLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * R_Calloc, R_Free and R_Realloc are preferred to their unprefixed
    forms and error messages now use the prefix. These forms were
    introduced in R 3.4.0 and are available even when
    STRICT_R_HEADERS is defined.
  * rmultinom has been documented in 'Writing R Extensions' SS6 so is
    now part of the R API.
  * Similarly, Rtanpi, called from R level tanpi() is now part of the
    R API.
  * The long-deprecated, undocumented and non-API entry point call_R
    is no longer declared in R_ext/RS.h (included by R.h).
  * The header S.h which has been unsupported since Jan 2016 has been
    removed.  Use R.h instead.
  DEPRECATED AND DEFUNCT:
  * The (non-default and deprecated) method = "internal" for
    download.file() and url() no longer supports http:// nor ftp://
    URIs.  (It is used only for file:// URIs.)
    On Windows, download.file(method = "wininet") no longer supports
    ftp:// URIs.  (It is no longer the default method, which is
    "libcurl" and does.)
    On Windows, the deprecated method = "wininet" now gives a warning
    for http:// and https:// URIs for both download.file() and url().
    (It is no longer the default method.)
  * On Windows, the command-line option --max-mem-size and
    environment variable R_MAX_MEM_SIZE are defunct.  The memory
    allocation limit was important for 32-bit builds, but these are
    no longer supported.
  * default.stringsAsFactors() is now formally deprecated, where that
    was only mentioned on its regular help page, previously.  So it
    now gives a warning if called.
  * unix.time() is defunct now; it had been deprecated since R 3.4.0.
  BUG FIXES:
  * Setting digits = 0 in format(), print.default() (and hence
    typically print()) or options() is again invalid.  Its behaviour
    was platform-dependent, and it is unclear what "zero significant
    digits" should mean (PR#18098).
  * Messages from C code in the cairo section of package grDevices
    are now also offered for translation, thanks to Michael Chirico's
    PR#18123.
  * mean(x) with finite x now is finite also without "long.double"
    capability.
  * R CMD Rd2pdf no longer leaves an empty build directory behind
    when it aborts due to an already existing output file.  (Thanks
    to Sebastian Meyer's PR#18141.)
  * density(x, weights = w, na.rm = TRUE) when anyNA(x) is true, now
    removes weights "in parallel" to x, fixing PR#18151, reported by
    Matthias Gondan.  Additionally, it gets a subdensity option.
  * Conversion of \Sexpr[]{&lt;expR&gt;} to LaTeX or HTML no longer
    produces long blocks of empty lines when &lt;expR&gt; itself contains
    several lines all producing empty output.  Thanks to a report and
    patch by Ivan Krylov posted to R-devel.
  * R CMD build no longer fails if a package vignette uses child
    documents and inst/doc exists.  (Thanks to Sebastian Meyer's
    PR#18156.)
  * When an R documentation ('help' source) file man/foo.Rd in a
    package has \donttest{..} examples with a syntax error, it is now
    signalled as ERROR and with correct line numbers relating to the
  * -Ex.R file, thanks to Duncan Murdoch and Sebastian Meyer's
    reports and patch proposals in PR#17501.
  * Improved determination of the correct translation domain in
    non-base packages, addressing the combination of PR#18092 and
    PR#17998 (#c6) with reports and _augmented_ patch #2904 by
    Suharto Anggono.
    Note that "R-base" is no longer the default domain e.g., for
    top-level calls to gettext(); rather translation needs explicit
    domain = * specification in such cases.
  * identical(attrib.as.set=FALSE) now works correctly with data
    frames with default row names (Thanks to Charlie Gao's PR#18179).
  * txtProgressBar() now enforces a non-zero width for argument char,
    without which no progress can be visible.
  * dimnames(table(d)) is more consistent in the case where d is a
    list with a single component, thanks to Thomas Soeiro's report to
    R-devel.
    Further, table(d1, d2) now gives an error when d1 and d2 are data
    frames as suggested by Thomas in PR#18224.
  * Fix for drawing semi-transparent lines and fills on the native
    Windows graphics device (PR#18219 and PR#16694).  Thanks to Nick
    Ray for helpful diagnosis on Bugzilla.
  * The deparser now wraps sub-expressions such as if(A) ..  with
    parentheses when needed; thanks to Duncan Murdoch's PR#18232 and
    Lionel Henry's patches there.
  * remove.packages() no longer tries to uninstall Priority: base
    packages, thanks to a report and suggestions by Colin Fay in
    PR#18227.
  * win.metafile() now has xpinch and ypinch arguments so that the
    user can override Windows' (potentially wrong) guess at device
    dimensions.
  * x[i] and x[[i]] for non-integer i should now behave in all cases
    as always documented: the index used is equivalent to
    as.integer(i) unless that would overflow where trunc(i) is used
    instead; thanks to Suharto Anggono's report and patch proposals
    in PR#17977.
  * asOneSidedFormula() now associates the resulting formula with the
    global environment rather than the evaluation environment created
    for the call.
  * &lt;bibentry&gt;$name now matches the field name case-insensitively,
    consistent with bibentry() creation and the replacement method.
  * cbind() failed to detect some length mismatches with a mixture of
    time-series and non-time-series inputs.
  * The default LaTeX style file Sweave.sty used by the RweaveLatex
    driver no longer loads the obsolete ae package; thanks to a
    report by Thomas Soeiro in PR#18271.  Furthermore, it now skips
    \usepackage[T1]{fontenc} for engines other than pdfTeX (if
    detected) or if the new [nofontenc] option is used.
  * smooth.spline() now stores its logical cv argument more safely,
    fixing a rare bug when printing, and also stores n.
  * smooth.spline(x,y,*) now computes the cv.crit statistic
    correctly, also when is.unsorted(x), fixing PR#18294.
  * The data.frame method of rbind() now warns when binding
    not-wholly-recycling vectors, by analogy to the default method
    (for matrices).
  * setAs() finds the correct class for name to when multiple
    packages define a class with that name. Thanks to Gabor Csardi
    for the report.
  * Fix for detaching a package when two classes of the same name are
    present in method signatures for the same generic. Thanks to
    Gabor Csardi for the report.
  * match.arg("", c("", "a", "B")) gives a better error message, in
    part from PR#17959, thanks to Elin Waring.
  * R CMD Sweave --clean no longer removes pre-existing files or
    subdirectories (PR#18242).
  * The quartz() device no longer splits polylines into subpaths.
    That has caused narrowly-spaced lines with many points to always
    look solid even when dashed line type was used due to dash phase
    restarts.
  * Deparsing constructs such as quote(1 + `!`(2) + 3) works again as
    before R 3.5.0, thanks to the report and patch in PR#18284 by
    Suharto Anggono.
  * as.list(f) for a factor f now keeps names(f), fixing PR#18309.
  * qbeta(.001, .9, .009) and analogous qf() calls now return a
    correct value instead of NaN or wrongly 1, all with a warning;
    thanks to the report by Ludger Goeminne in PR#18302.
  * plot.lm() failed to produce the plot of residuals vs.  factor
    levels (i.e., which=5 when leverages are constant) for models
    with character predictors (PR#17840).
  * interaction.plot(..., xtick = TRUE) misplaced the x-axis line
    (PR#18305).
  * Not strictly fixing a bug, format()ing and print()ing of
    non-finite Date and POSIXt values NaN and +/-Inf no longer show
    as NA but the respective string, e.g., Inf, for consistency with
    numeric vector's behaviour, fulfilling the wish of PR#18308.
  * R CMD check no longer runs test scripts generated from
    corresponding .Rin files twice and now signals an ERROR if
    processing an .Rin script fails.
  * tools::Rd2txt() used for plain-text help pages now renders \hrefs
    (if tools::Rd2txt_options(showURLs = TRUE)) and \urls with
    percent-encoding and standards-compliant delimiting style (angle
    brackets and no URL: prefix).  \email is now rendered with a
    mailto: prefix.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1655985600">- CHANGES IN R 4.2.1:
  NEW FEATURES:
  * New function utils::findCRANmirror() to find out if a CRAN mirror
    has been selected, otherwise fallback to the main site.  This
    behaves in the same way as tools::CRAN_package_db() and is
    intended for packages wishing to access CRAN for purposes other
    than installing packages.
    The need for this was shown by a day when the main CRAN website
    was offline and a dozen or so packages which had its URL
    hardcoded failed their checks.
  INSTALLATION on a UNIX-ALIKE:
  * The libraries searched for by --with-blas (without a value) now
    include BLIS (after OpenBLAS but before ATLAS).  And on macOS,
    the Accelerate framework (after ATLAS).  (This is patterned after
    the AX_BLAS macro from the Autoconf Archive.)
  * The included LAPACK sources have been updated to 3.10.1.
  UTILITIES:
  * The (full path to) the command tidy to be used for HTML
    validation can be set by environment variable R_TIDYCMD.
  * Setting environment variable _R_CHECK_RD_VALIDATE_RD2HTML_ to a
    false value will override R CMD check --as-cran and turn off HTML
    validation.  This provides a way to circumvent a problematic
    tidy.
    The 2006 version that ships with macOS is always skipped.
  C-LEVEL FACILITIES:
  * The undocumented legacy declarations of Sint, Sfloat, SINT_MAX
    and SINT_MIN in header R.h are deprecated.
  BUG FIXES:
  * fisher.test(d) no longer segfaults for "large" d; fixing PR#18336
    by preventing/detecting an integer overflow reliably.
  * tar(., files=*) now produces correctly the warning about invalid
    uid or gid of files, fixing PR#18344, reported by Martin Morgan.
  * tk_choose.files() with multi = FALSE misbehaved on paths
    containing spaces (PR#18334) (regression introduced in R 4.0.0).
  * sort(x, partial = ind, *) now works correctly notably for the
    non-default na.last = FALSE or TRUE, fixing PR#18335 reported by
    James Edwards.
  * Environment variable _R_CHECK_XREFS_REPOSITORIES_ is only used
    for checking .Rd cross-references in R CMD check (as documented)
    and not for other uses looking for a CRAN mirror.
  * The search for a CRAN mirror when checking packages now uses
    getOption("repos") if that specifies a CRAN mirror, even when it
    does not also specify all three Bioconductor repositories (as was
    previously required).
  * The HTML code generated by tools::Rd2HTML() has been improved to
    pass tidy 5.8.0.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1667217600">- CHANGES IN R 4.2.2:
  NEW FEATURES:
  * tools::Rdiff(useDiff = TRUE) checks for the presence of an
    external diff command and switches to useDiff = FALSE if none is
    found.  This allows R CMD Rdiff to always work.
  * On Windows, environment variable R_LIBCURL_SSL_REVOKE_BEST_EFFORT
    can be used to switch to only 'best-effort' SSL certificate
    revocation checks with the default "libcurl" download method.
    This reduces security, but may be needed for downloads to work
    with MITM proxies (PR#18379).
  * (macOS) The run-time check for libraries from XQuartz for X11 and
    Tcl/Tk no longer uses otool from the Apple Developer Tools
    (PR#18400).
  * The LaTeX style for producing the PDF manuals, Rd.sty, now loads
    the standard amsmath, amsfonts and amssymb packages for greater
    coverage of math commands in the Rd \eqn and \deqn macros.  The
    \mathscr LaTeX command is also provided (via the mathrsfs
    package, if available, or the amsfonts bundle otherwise),
    fulfilling the wish of PR#18398.
  * (Windows) The default format of readClipboard() and
    writeClipboard() has been changed to 13 (CF_UNICODETEXT).
  INSTALLATION on a UNIX-ALIKE:
  * The PDF manuals (if built) can be compacted by the new target
    make compact-pdf (at the top level or in directory doc/manual).
  * There is now configure support for LLVM clang 15 on Linux, which
    defaults to position-independent (PIE) executables whereas
    gfortran does not.
  * Many small changes to ease compilation (and suppress warnings)
    with LLVM clang 15.
  BUG FIXES:
  * Rscript -e would fail if stdin were closed (Reported by Henrik
    Bengtsson.)
  * qt(*, log.p=TRUE) in outer tails no longer produces NaN in its
    final steps, thus fixing PR#18360.
  * tools::Rd2latex() now escapes hashes and ampersands when writing
    URLs, fixing LaTeX errors with such URLs in \tabular.
  * When isGeneric(f, fdef=*) is used with mismatching names, the
    warning is better understandable; reported (with fix) in PR#18370
    by Gabe Becker.
  * poly(x, n) now works again (and is now documented) when x is a
    "Date" or "POSIXct" object, or of another class while fulfilling
    mode(x) == "numeric".  This also enables poly(x, *, raw=TRUE) for
    such variables.  Reported by Michael Chirico to R-devel.
  * write.table(), write.csv() and write.csv2() restore their
    numerical precision (internal equivalent of digits = 15) after an
    interrupt (PR#18384).
  * One can now read also byte FF from a clipboard connection
    (PR#18385).
  * source("") and source(character()) now give more helpful error
    messages.
  * R CMD check --as-cran set _R_CHECK_TIMINGS_ too late to have the
    intended effect.
  * as.POSIXlt(x) now also works with very large dates x, fixing
    PR#18401 reported by Hannes M"uhleisen.
  * Files can now be extracted even from very large zip archives
    (PR#18390, thanks to Martin Jakt).
  * Non-finite objects of class "POSIXlt" are now correctly coerced
    to classes "Date" and "POSIXct"; following up on the extension to
    format() them correctly.
  * Added methods for is.finite(), is.infinite() and is.nan() for
    "POSIXlt" date-time objects.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1678881600">- CHANGES IN R 4.2.3:
  C-LEVEL FACILITIES:
  * The definition of DL_FUNC in R_ext/Rdynload.h has been changed to
    be fully C-compliant.  This means that functions loaded _via_ for
    example R_GetCCallable need to be cast to an appropriate type if
    they have any arguments.
  * .Machine has a new element sizeof.time_t to identify old systems
    with a 32-bit type and hence a limited range of date-times (and
    limited support for dates millions of years from present).
  PACKAGE INSTALLATION:
  * (Windows) The default C++ standard had accidentally been left at
    C++11 when it was changed to C++14 on Unix.
  BUG FIXES:
  * As "POSIXlt" objects may be "partially filled" and their list
    components meant to be recycled, length() now is the length of
    the longest component.
  * as.POSIXlt.Date() could underflow for dates in the far past (more
    than half a million years BCE).
  * as.Date.POSIXlt(x) would return "1970-01-01" instead of NA in R
    4.2.2, e.g., for
    x &lt;- as.POSIXlt(c("2019-01-30","2001-1-1"))
    x$mon &lt;- c(0L, NA); as.Date(x)
  * R CMD check failed to apply enabled _R_CHECK_SUGGESTS_ONLY_ to
    examples and vignettes (regression in R 4.2.0).
  * R CMD check did not re-build vignettes in separate processes by
    default (regression in R 4.2.0).
  * Running examples from HTML documentation now restores previous
    knitr settings and options (PR#18420).
  * Quartz: fonts are now located using Core Graphics API instead of
    deprecated ATS which is no longer supported in the macOS 13 SDK
    (PR#18426).  This also addresses an issue where the currently
    used font in the Quartz device context was not correctly
    retained.
  * (Windows) Math symbols in text drawing functions are again
    rendered correctly (PR#18440).  This fixes a regression in R
    4.2.1 caused by a fix in PR#18382 which uncovered an issue in
    GraphApp due to which the symbol charset was not used with TT
    Symbol font face.
  * (Windows) Installing a package with a src/Makefile.{win,ucrt}
    file includes ~/.R/Makevars.win64 in the search for user
    makevars, as documented in "R Installation and Administration"
    and done for packages with a src/Makevars.{win,ucrt} file.
  * format(&lt;POSIXlt_w/_unbalanced_sec&gt;, "....%OS&lt;n&gt;") with n &gt; 0 no
    longer accidentally uses the unbalanced seconds, thanks to
    Suharto Anggono's report (including patch) in PR#18448.
  * solve.default(a, b) works around issues with some versions of
    LAPACK when a contains NA or NaN values.
  * When UseMethod() cannot dispatch, it no longer segfaults
    producing the error message in case of a long class(), thanks to
    Joris Vankerschaver's report (including patch) in PR#18447.
  * When example(foo, ..) produces graphics on an interactive device
    it needs to open itself, it now leaves devAskNewPage() unchanged
    even when it was FALSE, thus fixing a 14 years old '&lt;FIXME&gt;'.
  * packageDescription() again catches errors from encoding
    conversions. This also fixes broken packageVersion() in C locale
    on systems where iconv does not support transliteration.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1681128000">- add patch to build with libcurl &gt;= 8</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1682078400">- CHANGES IN R 4.3.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Calling &amp;&amp; or || with LHS or (if evaluated) RHS of length greater
    than one is now always an error, with a report of the form
    'length = 4' in coercion to 'logical(1)'
    Environment variable _R_CHECK_LENGTH_1_LOGIC2_ no longer has any
    effect.
  NEW FEATURES:
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.10.1.  (This caused some platform-dependent
    changes to package check output.)  And then to the sources from
    LAPACK version 3.11.0 (with changes only to double complex
    subroutines).
  * The included LAPACK sources have been updated to include the four
    Fortran 90 routines rather than their Fortran 77 predecessors.
    This may give some different signs in SVDs or
    eigendecompositions..  (This completes the transition to LAPACK
    3.10.x begun in R 4.2.0.)
  * The LAPACK sources have been updated to version 3.11.0.  (No new
    subroutines have been added, so this almost entirely bug fixes:
    Those fixes do affect some computations with NaNs, including R's
    NA.)
  * The parser now signals _classed_ errors, notably in case of the
    pipe operator |&gt;.  The error object and message now give line and
    column numbers, mostly as proposed and provided by Duncan Murdoch
    in PR#18328.
  * toeplitz() is now generalized for asymmetric cases, with a
    toeplitz2() variant.
  * xy.coords() and xyz.coords() and consequently, e.g., plot(x,y,
    log = "y") now signal a _classed_ warning about negative values
    of y (where log(.) is NA).  Such a warning can be specifically
    suppressed or caught otherwise.
  * Regular expression functions now check more thoroughly whether
    their inputs are valid strings (in their encoding, e.g. in
    UTF-8).
  * The performance of grep(), sub(), gsub() and strsplit() has been
    improved, particularly with perl = TRUE and fixed = TRUE.  Use of
    useBytes = TRUE for performance reasons should no longer be
    needed and is discouraged: it may lead to incorrect results.
  * apropos() gains an argument dot_internals which is used by the
    completion (help(rcompgen)) engine to also see base internals
    such as .POSIXct().
  * Support in tools::Rdiff() for comparing uncompressed PDF files is
    further reduced - see its help page.
  * qqplot(x, y, ...) gains conf.level and conf.args arguments for
    computing and plotting a confidence band for the treatment
    function transforming the distribution of x into the distribution
    of y (Switzer, 1976, _Biometrika_). Contributed by Torsten
    Hothorn.
  * Performance of package_dependencies() has been improved for cases
    when the number of dependencies is large.
  * Strings newly created by gsub(), sub() and strsplit(), when any
    of the inputs is marked as "bytes", are also marked as "bytes".
    This reduces the risk of creating invalid strings and accidental
    substitution of bytes deemed invalid.
  * Support for readLines(encoding = "bytes") has been added to allow
    processing special text files byte-by-byte, without creating
    invalid strings.
  * iconv(from = "") now takes into account any declared encoding of
    the input elements and uses it in preference to the native
    encoding.  This reduces the risk of accidental creation of
    invalid strings, particularly when different elements of the
    input have different encoding (including "bytes").
  * Package repositories in getOption("repos") are now initialized
    from the repositories file when utils is loaded (if not already
    set, e.g., in .Rprofile).  (From a report and patch proposal by
    Gabriel Becker in PR#18405.)
  * compactPDF() gets a verbose option.
  * type.convert() and hence read.table() get new option tryLogical =
    TRUE with back compatible default.  When set to false, converts
    "F" or "T" columns to character.
  * Added new unit prefixes "R" and "Q" for abbreviating
    (unrealistically large) sizes beyond 10^{27} in standard = "SI",
    thanks to Henrik Bengtsson's PR#18435.
  * as.data.frame()'s default method now also works fine with atomic
    objects inheriting from classes such as "roman", "octmode" and
    "hexmode", such fulfilling the wish of PR#18421, by Benjamin
    Feakins.
  * The as.data.frame.vector() utility now errors for wrong-length
    row.names.  It warned for almost six years, with "Will be an
    error!".
  * sessionInfo() now also contains La_version() and reports codepage
    and timezone when relevant, in both print() and toLatex() methods
    which also get new option tzone for displaying timezone
    information when locale = FALSE.
  * New function R_compiled_by() reports the C and Fortran compilers
    used to build R, if known.
  * predict(&lt;lm&gt;, newdata = *) no longer unnecessarily creates an
    offset of all 0s.
  * solve() for complex inputs now uses argument tol and by default
    checks for 'computational singularity' (as it long has done for
    numeric inputs).
  * predict(&lt;rank-deficient lm&gt;, newdata=*) now obeys a new argument
    rankdeficient, with new default "warnif", warning only if there
    are non-estimable cases in newdata.  Other options include
    rankdeficient = "NA", predicting NA for non-estimable newdata
    cases.  This addresses PR#15072 by Russ Lenth and is based on his
    original proposal and discussions in PR#16158 also by David Firth
    and Elin Waring.  Still somewhat experimental.
  * Rgui console implementation now works better with the NVDA screen
    reader when the full blinking cursor is selected.  The underlying
    improvements in cursor handling may help also other screen
    readers on Windows.
  * The drop-field control in GraphApp can now be left with the TAB
    key and all controls can be navigated in the reverse order using
    the Shift+TAB key, improving accessibility of the Rgui
    configuration editor.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now fully accurate
    (instead of to "only" minimally five digits).
  * demo(error.catching) now also shows off withWarnings() and
    tryCatchWEMs().
  * As an experimental feature the placeholder _ can now also be used
    in the rhs of a forward pipe |&gt; expression as the first argument
    in an extraction call, such as _$coef. More generally, it can be
    used as the head of a chain of extractions, such as _$coef[[2]].
  * Spaces in the environment variable used to choose the R session's
    temporary directory (TMPDIR, TMP and TEMP are tried in turn) are
    now fatal.  (On Windows the 'short path' version of the path is
    tried and used if that does not contain a space.)
  * all.equal.numeric() gets a new optional switch giveErr to return
    the numeric error as attribute.  Relatedly,
    stopifnot(all.equal&lt;some&gt;(a, b, ..)) is as "smart" now, as
    stopifnot(all.equal(....)) has been already, thus allowing
    customized all.equal&lt;Some&gt;() wrappers.
  * R on Windows is now able to work with path names longer than 260
    characters when these are enabled in the system (requires at
    least Windows 10 version 1607).  Packages should be updated to
    work with long paths as well, instead of assuming PATH_MAX to be
    the maximum length.  Custom front-ends and applications embedding
    R need to update their manifests if they wish to allow this
    feature.  See
    &lt;https://blog.r-project.org/2023/03/07/path-length-limit-on-windows&gt;
    for more information.
  * 'Object not found' and 'Missing argument' errors now give a more
    accurate error context. Patch provided by Lionel Henry in
    PR#18241.
  * The @ operator is now an S3 generic. Based on contributions by
    Tomasz Kalinowski in PR#18482.
  * New generic chooseOpsMethod() provides a mechanism for objects to
    resolve cases where two suitable methods are found for an Ops
    Group Generic. This supports experimenting with alternative
    object systems. Based on contributions by Tomasz Kalinowski in
    PR#18484.
  * inherits(x, what) now accepts values other than a simple
    character vector for argument what. A new generic, nameOfClass(),
    is called to resolve the class name from what. This supports
    experimenting with alternative object systems. Based on
    contributions by Tomasz Kalinowski in PR#18485.
  * Detection of BLAS/LAPACK in use (sessionInfo()) with FlexiBLAS
    now reports the current backend.
  * The "data.frame" method for subset() now warns about extraneous
    arguments, typically catching the use of = instead of == in the
    subset expression.
  * Calling a:b when numeric a or b is longer than one may now be
    made into an error by setting environment variable
    _R_CHECK_LENGTH_COLON_ to a true value, along the proposal in
    PR#18419 by Henrik Bengtsson.
  * density(x, weights = *) now warns if automatic bandwidth
    selection happens without using weights; new optional warnWbw may
    suppress the warning.  Prompted by Christoph Dalitz' PR#18490 and
    its discussants.
  * rm(list = *) is faster and more readable thanks to Kevin Ushey's
    PR#18492.
  * The plot.lm() function no longer produces a normal Q-Q plot for
    GLMs. Instead it plots a half-normal Q-Q plot of the absolute
    value of the standardized deviance residuals.
  * The print() method for class "summary.glm" no longer shows
    summary statistics for the deviance residuals by default.  Its
    optional argument show.residuals can be used to show them if
    required.
  * The tapply() function now accepts a data frame as its X argument,
    and allows INDEX to be a formula in that case. by.data.frame()
    similarly allows INDICES to be a formula.
  * The performance of df[j] &lt;- value (including for missing j) and
    write.table(df) has been improved for data frames df with a large
    number of columns.  (Thanks to Gabriel Becker's PR#18500,
    PR#18503 and discussants, prompted by a report from Toby Dylan
    Hocking on the R-devel mailing list.)
  * The matrix multiply operator %*% is now an S3 generic, belonging
    to new group generic matrixOps.  From Tomasz Kalinowski's
    contribution in PR#18483.
  * New function array2DF() to convert arrays to data frames,
    particularly useful for the list arrays created by tapply().
  DATES and TIMES:
  * On platforms where (non-UTC) datetimes before 1902 (or before
    1900 as with system functions on recent macOS) are guessed by
    extrapolating time zones from 1902-2037, there is a warning at
    the first use of extrapolation in a session.  (As all time zones
    post 2037 are extrapolation, we do not warn on those.)
  * (Platforms using --with-internal-tzone, including Windows and by
    default macOS). How years are printed in dates or date-times can
    be controlled by environment variable R_PAD_YEARS_BY_ZERO.  The
    default remains to pad to 4 digits by zeroes, but setting value
    no gives no padding (as used by default by glibc).
  * strftime() tries harder to determine the offset for the "%z"
    format, and succeeds on the mainstream R platforms.
  * strftime() has a limit of 2048 bytes on the string produced -
    attempting to exceed this is an error.  (Previously it silently
    truncated at 255 bytes.)
  * sessionInfo() records (and by default prints) the system time
    zone as part of the locale information.  Also, the source
    (system/internal) of the date-time conversion and printing
    functions.
  * Objects of class "POSIXlt" created in this version of R always
    have 11 components: component zone is always set, and component
    gmtoff is set for times in UTC and usually set on the (almost
    all) platforms which have C-level support, otherwise is NA.
  * There are comprehensive validity checks on the structure of
    objects of class "POSIXlt" when converting (including formatting
    and printing).  (This avoids mis-conversions of hand-crafted
    objects.)
  * There is some support for using the native date-time routines on
    macOS: this is only viable on recent versions (e.g. 12.6 and 13)
    and does get wrong some historical changes (before 1900, during
    WWII).  Use of --with-internal-tzone remains the default.
  * as.POSIXct(&lt;numeric&gt;) and as.POSIXlt(.) (without specifying
    origin) now work.  So does as.Date(&lt;numeric&gt;).
  * as.Date.POSIXct(., tz) now treats several tz values, notably
    "GMT" as equivalent to "UTC", proposed and improved by Michael
    Chirico and Joshua Ulrich in PR#17674.
  * Experimental balancePOSIXlt() utility allows using "ragged" and
    or out-of-range "POSIXlt" objects more correctly, e.g., in
    subsetting and subassignments.  Such objects are now documented.
    More experimentally, a "POSIXlt" object may have an attribute
    "balanced" indicating if it is known to be filled or fully
    balanced.
  * Functions axis.Date() and axis.POSIXct() are rewritten to gain
    better default tick locations and better default formats by using
    prettyDate(). Thanks to Swetlana Herbrandt.
  * The mapping of Windows' names for time zones to IANA's 'Olson'
    names has been updated.  When ICU is available (it is by
    default), it is used to get a mapping for the current region set
    in Windows.  This can be overridden by setting environment
    variable TZ to the desired Olson name - see OlsonNames() for
    those currently available.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 16
    and so packages that provide graphics devices should be
    reinstalled.
  * The grDevices and grid packages have new functions for rendering
    typeset glyphs, primarily: grDevices::glyphInfo() and
    grid::grid.glyph().
    Rendering of typeset glyphs is only supported so far on the
    Cairo-based graphics devices and on the pdf() and quartz()
    devices.
  * The defined behaviour for "clear" and "source" compositing
    operators (via grid::grid.group()) has been changed (to align
    better with simple interpretation of original Porter-Duff
    definitions).
  * Support for gradients, patterns, clipping paths, masks, groups,
    compositing operators, and affine transformations has been added
    to the quartz() device.
  INSTALLATION on a UNIX-ALIKE:
  * A system installation of generic LAPACK 3.10.0 or later will be
    preferred to the version in the R sources.
    configure option --with-lapack=no (equivalently --without-lapack)
    forces compilation of the internal LAPACK sources.
    If --with-lapack is not specified, a system liblapack is looked
    for and used if it reports version 3.10.0 or later and does not
    contain BLAS routines.
    Packages using LAPACK will need to be reinstalled if this changes
    to using an external library.
  * On aarch64 Linux platforms using GCC, configure now defaults to
  - fPIC (instead of -fpic), as desired in PR#18326.
  * configure now checks conversion of datetimes between POSIXlt and
    POSIXct around year 2020.  Failure (which has been seen on
    platforms missing tzdata) is fatal.
  * If configure option --with-valgrind-instrumentation is given
    value 1 or 2, option --with-system-valgrind-headers is now the
    default and ignored (with a warning).  It is highly recommended
    that the system headers are installed alongside valgrind: they
    are part of its packaging on some Linux distributions and
    packaged separately (e.g. in the valgrind-devel RPM) on others.
    configure will give a warning if they are not found.
    The system headers will be required in a future release of R to
    build with valgrind instrumentation.
  * libcurl 8.x is now accepted by configure: despite a change in
    major version number it changes neither API nor ABI.
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools43, an update of the Rtools42 toolchain.  It is
    based on gcc 12 and newer versions of MinGW-W64, binutils and
    libraries.  At this time R-devel can still be built using
    Rtools42 without changes, but when R-devel is installed via the
    installer, it will by default look for Rtools43.
  * Old make targets rsync-extsoft and 32-bit ones that are no longer
    needed have been removed.
  * Default builds (including for packages) no longer select C99.
    Thus the C standard used is the default for the compiler, which
    for the toolchain in Rtools43 is C17.  (This is consistent with
    Unix builds.)
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++17 where
    available (which it is on all currently checked platforms): if
    not C++14 or C++11 is used if available otherwise C++ is not
    supported.
  * USE_FC_LEN_T is the default: this uses the correct
    (compiler-dependent) prototypes for Fortran BLAS/LAPACK routines
    called from C/C++, and requires adjustment of many such calls -
    see 'Writing R Extensions' SS6.6.1.
  * There is initial support for C++23 as several compilers are now
    supporting -std=c++23 or -std=c++2b or similar.  As for C++20,
    there no additional configure checks for C++23 features beyond a
    check that the compiler reports a __cplusplus value greater than
    that in the C++20 standard.  C++ feature tests should be used.
  * There is support for a package to indicate the version of the C
    standard which should be used to compile it, and for the
    installing user to specify this.  In most cases R defaults to the
    C compiler's default standard which is C17 (a `bug-fix' of C11) -
    earlier versions of R or compilers may have defaulted to C99.
    Current options are:
    USE_C17 Use a standard that is at most C17.  The intention is to
    allow legacy packages to still be installed when later C
    standards become the default, including packages using new
    keywords as identifiers or with K&amp;R-style function
    declarations.  This will use C17 if available, falling back
    to C11.
    USE_C90 Use the C90 (aka C89) standard.  (As that standard did
    not require compilers to identify that version, all we can
    verify is that the compiler does not claim to be using a
    later standard.  It may accept C99 features - for example
    clang accepts // to make comments.)
    USE_C99 Use the C99 standard. This should be rarely needed - it
    avoids the few new features of C11/C17 which can be useful if
    a package assumes them if C17 is specified and they are not
    implemented.
    USE_C23 Use C23 (or in future, later).  Compiler/library support
    for C23 is still being implemented, but LLVM clang from
    15.0.0 and the upcoming GCC 13 have quite extensive support.
    These can be specified as part of the SystemRequirements field in
    the package's DESCRIPTION file or _via_ options --use-C17 and so
    on of R CMD INSTALL and R CMD SHLIB.
    For further details see "Writing R Extensions" SS1.2.5.
  * (Windows) A src/Makefile.ucrt or src/Makefile.win file is now
    included after R_HOME/etcR_ARCH/Makeconf and so no longer needs
    to include that file itself.  Installation of a package with such
    a file now uses a site Makevars file in the same way as a package
    with a src/Makevars.win file would.
  * configure is now passed crucial variables such as CC and CFLAGS
    in its environment, as many packages were not setting them (as
    documented in 'Writing R Extensions' SS1.2).
    This has most effect where configure is used to compile parts of
    the package - most often by cmake or libtool which obfuscate the
    actual compile commands used.
    Also used for configure.win and configure.ucrt on Windows.
  FORTRAN FLAGS:
  * The flag -fno-optimize-sibling-calls is no longer forced for
    gfortran 7 and later.  It should no longer be needed now using
    'hidden' character-length arguments when calling BLAS/LAPACK
    routines from C/C++ is the default even for packages.  (Unless
    perhaps packages call Fortran code from C/C++ without using R's
    headers and without allowing for these arguments.)
  C-LEVEL FACILITIES:
  * The deprecated S-compatibility macros DOUBLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * The deprecated legacy typedefs of Sint and Sfloat in header R.h
    are no longer defined, and that header no longer includes header
    limits.h from C nor climits from C++.
  * New macro CAD5R() is provided in Rinternals.h and used in a few
    places in the R sources.
  * ALTREP now supports VECSXP vectors. Contributed by Gabor Csardi
    in PR#17620.
  * The Rcomplex definition (in header R_ext/Complex.h) has been
    extended to prevent possible mis-compilation when interfacing
    with Fortran (PR#18430).  The new definition causes compiler
    warnings with static initializers such as {1, 2}, which can be
    changed to {.r=1, .i=2}.
    Using the new definition from C++ depends on compiler extensions
    supporting C features that have not been incorporated into the
    C++ standards but are available in g++ and clang++: this may
    result in C++ compiler warnings but these have been worked around
    for recent versions of common compilers (GCC, Apple/LLVM clang,
    Intel).
    It is intended to change the inclusion of header R_ext/Complex.h
    by other R headers, so C/C++ code files which make use of
    Rcomplex should include that header explicitly.
  UTILITIES:
  * R CMD check does more checking of package .Rd files, warning
    about invalid email addresses and (some) invalid URIs and noting
    empty \item labels in description lists.
  * R CMD check now also reports problems when reading package news
    in md (file NEWS.md) and (optionally) plain text (file NEWS)
    formats.
  * _R_CHECK_TIMINGS_ defaults to a value from the environment even
    for R CMD check --as-cran; this allows for exceptionally fast or
    slow platforms.
    It now applies to checking PDF and HTML versions of the manuals,
    and 'checking CRAN incoming feasibility'.
  * R CMD check can optionally (but included in --as-cran) check
    whether HTML math rendering _via_ KaTeX works for the package .Rd
    files.
  * Non-interactive debugger invocations can be trapped by setting
    the environment variable _R_CHECK_BROWSER_NONINTERACTIVE_ to a
    true value.  This is enabled by R CMD check --as-cran to detect
    the use of leftover browser() statements in the package.
  * The use of sprintf and vsprintf from C/C++ has been deprecated in
    macOS 13 and is a known security risk.  R CMD check now reports
    (on all platforms) if their use is found in compiled code:
    replace by snprintf or vsnprintf respectively. [*NB:* whether
    such calls get compiled into the package is platform-dependent.]
  * Where recorded at installation, R CMD check reports the C and
    Fortran compilers used to build R.
    It reports the OS in use (if known, as given by osVersion) as
    well as that R was built for.
    It notes if a C++ standard was specified which is older than the
    current default: many packages have used C++11 to mean 'not
    C++98' - as C++11 is the minimum supported since R 4.0.0, that
    specification can probably be removed.
  * R CMD INSTALL reports the compilers (and on macOS, the SDK) used,
    and this is copied to the output of R CMD check.
    Where a C++ standard is specified, it is reported.
  * R CMD check's 'checking compilation flags in Makevars' has been
    relaxed to accept the use of flags such as -std=f2008 in
    PKG_FFLAGS.
  * tools::buildVignettes() has a new argument skip, which is used by
    R CMD check to skip (and note) vignettes with unavailable
    \VignetteDepends (PR#18318).
  * New generic .AtNames() added to enable class-specific completions
    after @. The formerly internal function findMatches() is now
    exported, mainly for use in methods for .DollarNames() and
    .AtNames().
  DEPRECATED AND DEFUNCT:
  * default.stringsAsFactors() is defunct.
  * Calling as.data.frame.&lt;class&gt;() directly (for 12 atomic classes)
    is going to be formally deprecated, currently activated by
    setting the environment variable
    _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ to non-empty, which also
    happens in R CMD check --as-cran.
  BUG FIXES:
  * Hashed environments with sizes less than 5 can now grow.
    (Reported to R-devel by Duncan Garmonsway.)
  * as.character(&lt;Rd&gt;, deparse = TRUE) failed to re-escape curly
    braces in LaTeX-like text.  (Reported by Hadley Wickham in
    PR#18324.)
  * library() now passes its lib.loc argument when requiring Depends
    packages; reported (with fix) in PR#18331 by Mikael Jagan.
  * R CMD Stangle: improved message about 'Output' files.
  * head(x, n) and tail(x, n) now signal an error if n is not
    numeric, instead of incidentally "working" sometimes returning
    all of x.  Reported and discussed by Colin Fay, in PR#18357.
  * The "lm" method for summary() now gives the correct F-statistic
    when the model contains an offset.  Reported in PR#18008.
  * C() and `contrasts&lt;-`() now preserve factor level names when
    given a function object (as opposed a function name which did
    preserve names). Reported in PR#17616.
  * c(a = 1, 2)[[]] no longer matches 2 but rather signals a
    _classed_ error.  Reported and analysed by Davis Vaughan in
    PR#18367, a duplicate of PR#18004, by Jan Meis et al.  For
    consistency, NULL[[]] is also erroneous now.  x[[]] &lt;- v gives an
    error of the same class "MissingSubscriptError".
  * The relist() function of utils now supports NULL elements in the
    skeleton (PR#15854).
  * ordered(levels = *) (missing x) now works analogously to factor(,
    ordered=TRUE); reported (with fix) by Achim Zeileis in PR#18389.
  * User-defined Rd macro definitions can now span multiple lines,
    thanks to a patch from Duncan Murdoch. Previously, the Rd parser
    silently ignored everything after the first line.
  * Plain-text help (tools::Rd2txt()) now preserves an initial blank
    line for text following description list items.
  * tools::Rd2HTML() and tools::Rd2latex() no longer split \arguments
    and \value lists at Rd comments.
  * tools::Rd2latex() now correctly handles optional text outside
    \items of argument lists as well as bracketed text at the
    beginning of sections, e.g., \value{[NULL]}.
  * as.character(&lt;POSIXt&gt;) now behaves more in line with the methods
    for atomic vectors such as numbers, and is no longer influenced
    by options().  Ditto for as.character(&lt;Date&gt;).  The
    as.character() method gets arguments digits and OutDec with
    defaults _not_ depending on options().  Use of as.character(*,
    format = .) now warns.
  * Similarly, the as.character.hexmode() and *.octmode() methods
    also behave as good citizen methods and back compatibility option
    keepStr = TRUE.
  * The as.POSIXlt(&lt;POSIXlt&gt;) and as.POSIXct(&lt;POSIXct&gt;) default
    methods now do obey their tz argument, also in this case.
  * as.POSIXlt(&lt;Date&gt;) now does apply a tz (time zone) argument, as
    does as.POSIXct(); partly suggested by Roland Fuss on the R-devel
    mailing list.
  * as.Date.POSIXlt(x) now also works when the list components are of
    unequal length, aka "partially filled" or "ragged".
  * expand.model.frame() looked up variables in the wrong environment
    when applied to models fitted without data.  Reported in
    PR#18414.
  * time() now (also) uses the ts.eps = getOption("ts.eps") argument
    and thus by default rounds values very close to the start (or
    end) of a year.  Based on a proposal by Andre"i V. Kostyrka on
    R-help.
  * Printing of a factanal() result with just one factor and sort =
    TRUE now works regularly, fixing PR#17863 by Timothy Bates,
    thanks to the 'R Contributors' working group.
  * Printing 0-length objects of class "factor", "roman", "hexmode",
    "octmode", "person", "bibentry", or "citation" now prints
    something better, one of which fixes PR#18422, reported by
    Benjamin Feakins.
  * Sys.timezone() queries timedatectl only if systemd is loaded;
    addressing a report by Jan Gorecki in PR#17421.
  * The formula method of cor.test() had scoping problems when
    environment(formula) was not the calling environment; reported
    with a patch proposal by Mao Kobayashi in PR#18439.
  * attach() of an environment with active bindings now preserves the
    active bindings.  Reported by Kevin Ushey in PR#18425.
  * BLAS detection now works also with system-provided libraries not
    available as regular files.  This fixes detection of the
    Accelerate framework on macOS since Big Sur.  Reported by David
    Novgorodsky.
  * download.file() gives a helpful error message in case of an
    invalid download.file.method option, thanks to Colin Fay's report
    in PR#18455.
  * Sporadic crashes of Rterm when using completion have been fixed.
  * Rprof() is now more reliable.  A livelock in thread
    initialization with too short sampling interval has been fixed on
    macOS.  A deadlock in using the C runtime has been fixed on
    Windows.  A potential deadlock has been prevented on Unix.
  * Cursor placement in Rgui now works even after a fixed-width font
    is selected.
  * Mandatory options (options()) are now set on startup so that
    saving and restoring them always works (PR#18372).
  * Package installation, R CMD INSTALL or install.packages(*), now
    parses each of the &lt;pkg&gt;/R/*.R files individually instead of
    first concatenating and then parse()ing the large resulting file.
    This allows parser or syntax errors to be diagnosed with correct
    file names and line numbers, thanks to Simon Dedman's report and
    Bill Dunlap's patch in PR#17859.
    This _does_ require syntactically self contained R source files
    now, fixing another inadvertent bug.
  * predict.lm(&lt;model with offset&gt;) now finds the offset in the
    correct environment, thanks to Andr'e Gillibert's report and patch
    in PR#18456.
  * getInitial(&lt;formula&gt;) now finds the selfStart model in the
    correct environment.  (Reported by Ivan Krylov in PR#18368.)
  * Fix for possible segfault when using recently-added graphics
    features, such as gradients, clipping paths, masks, and groups
    with pdf(file=NULL).
  * class(m) &lt;- class(m) no longer changes a matrix m by adding a
    class _attribute_.
  * packageDate(pkg) now only warns once if there is no pkg.
  * When ts() creates a multivariate time series, "mts", it also
    inherits from "array" now, and is.mts() is documented _and_
    stricter.
  * Rd2txt() now preserves line breaks of \verb Rd content and from
    duplicated \cr.  The former also fixes the rendering of verbatim
    output from Rd \Sexpr in plain-text help.
  * uniroot(f, interval) should no longer wrongly converge _outside_
    the interval in some cases where abs(f(x)) == Inf for an x at the
    interval boundary, thanks to posts by Ben Bolker and Serguei
    Sokol on R-devel.
  * Vectorized alpha handling in palette functions such as in gray(),
    rainbow(), or hcl.colors() works correctly now, thanks to Achim
    Zeileis' report and patch in PR#18476.
  * Formatting and print()ing of bibentry objects has dropped the
    deprecated citation.bibtex.max argument, such that the bibtex
    argument's default for print.bibentry() depends directly on the
    citation.bibtex.max option, whereas in format.bibentry() the
    option no longer applies.
  * Attempting to use a character string naming a foreign function
    entry point in a foreign function call in a package will now
    signal an error if the packages has called R_forceSymbols to
    specify that symbols must be used.
  * An error in table() could permanently set options(warn=2)
    promoting all subsequent warnings to errors.
  * The sigma() function gave misleading results for binary GLMs.  A
    new method for objects of class "glm" returns the square root of
    the estimate of the dispersion parameter using the same
    calculation as summary.glm().
  * bs() and ns() in the (typical) case of automatic knot
    construction, when some of the supposedly inner knots coincide
    with boundary knots, now moves them inside (with a warning),
    building on PR#18442 by Ben Bolker.
  * R CMD on Windows now skips the site profile with --no-site-file
    and --vanilla even when R_PROFILE is set (PR#18512, from Kevin
    Ushey).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1686916800">- CHANGES IN R 4.3.1:
  C-LEVEL FACILITIES:
  * The C-level API version of R's integrate(), Rdqags() in Applic.h,
    now returns the correct number of integrand evaluations neval,
    fixing PR#18515 reported and diagnosed by Stephen Wade.
  * The C prototypes for LAPACK calls dspgv and dtptrs in
    R_exts/Lapack.h had one too many and one too few character length
    arguments - but this has not caused any known issues. To get the
    corrected prototypes, include
    [#]include &lt;Rconfig.h&gt; // for PR18534fixed
    [#]ifdef PR18534fixed
    [#] define usePR18534fix 1
    [#]endif
    [#]include &lt;R_exts/Lapack.h&gt;
    in your C/C++ code (PR#18534).
  INSTALLATION:
  * Many of the checks of esoteric Internet operations and those
    using unreliable external sites have been moved to a new target
    that is not run by default and primarily intended for the core
    developers.  To run them use
    cd tests; make test-Internet-dev
  BUG FIXES:
  * .S3methods(), typically called from methods(), again marks
    methods from package base as visible.
    Also, the visibility of non-base methods is again determined by
    the method's presence in search().
  * tools::Rdiff() is now more robust against invalid strings, fixing
    installation tests on Windows without Rtools installed
    (PR#18530).
  * Fix (new) bug in hcl.colors(2, *), by Achim Zeileis (PR#18523).
  * head(., &lt;illegal&gt;) and tail(..) now produce more useful "Error in
    ...." error messages, fixing PR#18362.
  * Package code syntax on Windows is checked in UTF-8 when UTF-8 is
    the native encoding.
  * na.contiguous(x) now also returns the first run, when it is at
    the beginning and there is a later one of the same length;
    reported to R-devel, including a fix, by Georgi Boshnakov.
    Further, by default, it modifies only an existing attr(*,"tsp")
    but otherwise no longer sets one.
  * chol(&lt;not pos.def&gt;, pivot = &lt;T|F&gt;) now gives a correct error or
    warning message (depending on pivot), thanks to Mikael Jagan's
    (PR#18541).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1699012800">- CHANGES IN R 4.3.2:
  NEW FEATURES:
  * The default initialization of the "repos" option from the
    repositories file at startup can be skipped by setting
    environment variable R_REPOSITORIES to NULL such that
    getOption("repos") is empty if not set elsewhere.
  * qr.X() is now an implicit S4 generic in methods.
  * iconv(to = "ASCII//TRANSLIT") is emulated using substitution on
    platforms which do not support it (notably Alpine Linux).  This
    should give a human-readable conversion in ASCII on all platforms
    (rather than NA_character_).
  * trans3d() gains options continuous and verbose addressing the
    problem of possible "wrap around" when projecting too long
    curves, as reported by Achim Zeileis in PR#18537.
  * tools::showNonASCII() has been rewritten to work better on macOS
    14 (which has a changed implementation of iconv()).
  * tiff(type = "quartz") (the default on macOS) now warns if
    compression is specified: it continues to be ignored.
  INSTALLATION on a UNIX-ALIKE:
  * There is some support for building with Intel's LLVM-based
    compilers on x86_64 Linux, such as (C) icx, (C++) ipcx and
    (Fortran) ifx from oneAPI 2023.x.y.
  * There is support for using LLVM's flang-new as the Fortran
    compiler from LLVM 16.0.x (preferably 17.0.0 or later).
  UTILITIES:
  * R CMD check reports the use of the Fortran 90 random number
    generator RANDOM_NUMBER() and the subroutines to initialize it.
    'Writing R Extensions' has example code to use R's RNGs from
    Fortran.
  BUG FIXES:
  * substr(x, n, L) &lt;- cc now works (more) correctly for multibyte
    UTF-8 strings x when L &gt; nchar(x), thanks to a report and patch
    by 'Architect 95'.
  * contrib.url(character()) now returns 0-length character() as
    documented, which also avoids spurious warnings from
    available.packages() et al. in the edge case of an empty vector
    of repository URLs.
  * readChar(., 4e8) no longer fails, thanks to Kodi Arfer's report
    (PR#18557).
  * lapply(&lt;list&gt;, as.data.frame) no longer warns falsely for some
    base vector components.
  * Communication between parent and child processes in the multicore
    part of parallel could fail on platforms that do not support an
    arbitrarily large payload in system functions read()/write() on
    pipes (seen on macOS where a restriction to INT_MAX bytes is
    documented, without doing a partial read unlike Linux). The
    payload is now split into 1Gb chunks to avoid that problem.
    (PR#18571)
  * qqplot(x,y, conf.level=.) gives better confidence bounds when
    length(x) != length(y), thanks to Alexander Ploner's report and
    patch proposal (PR#18557).
  * norm(&lt;0-length&gt;, "2") now gives zero instead of an error, as all
    the other norm types, thanks to Mikael Jagan's PR#18542.
  * Build-stage Rd macros \packageAuthor and \packageMaintainer now
    process Authors@R, fixing NA results when the package DESCRIPTION
    omits Author and Maintainer fields.
  * Formatting and printing complex numbers could give things like
    0.1683-0i because of rounding error: -0i is now replaced by +0i.
  * postscript() refused to accept a title comment containing the
    letter "W" (PR#18599).
  * isoreg(c(1,Inf)) signals an error instead of segfaulting, fixing
    PR#18603.
  * tiff(type = "Xlib") was only outputting the last page of
    multi-page plots.
  * tools::latexToUtf8() again knows about \~{n} and other letters
    with tilde, fixing a regression in R 4.3.0, and about \^{i} as an
    alternative to \^{\i} (similarly with other accents).
    Furthermore, LaTeX codes for accented I letters are now correctly
    converted, also fixing related mistakes in
    tools::encoded_text_to_latex().
  * tar(*, tar = "internal") no longer creates out-of-spec tar files
    in the very rare case of user or group names longer than 32
    bytes, fixing PR#17871 with thanks to Ivan Krylov.
  * When using the "internal" timezone datetime code, adding a
    fraction of a second no longer adds one second, fixing PR#16856
    from a patch by Ivan Krylov.
  * tools::checkRd() no longer produces spurious notes about
    "unnecessary braces" from multi-line Rd results of \Sexpr macros.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1709208000">- CHANGES IN R 4.3.3:
  NEW FEATURES:
  * iconv() now fixes up variant encoding names such as "utf8"
    case-insensitively.
  DEPRECATED AND DEFUNCT:
  * The legacy encoding = "MacRoman" is deprecated in pdf() and
    postscript(): support was incomplete in earlier versions of R.
  BUG FIXES:
  * Arguments are now properly forwarded to methods on S4 generics
    with ... in the middle of their formal arguments. This was broken
    for the case when a method introduced an argument but did not
    include ... in its own formals. Thanks to Herv'e Pag`es for the
    report PR#18538.
  * Some invalid file arguments to pictex(), postscript() and xfig()
    opened a file called NA rather than throw an error.  These
    included postscript(NULL) (which some people expected to work
    like pdf(NULL)).
  * Passing filename = NA to svg(), cairo_pdf(), cairo_ps() or the
    Cairo-based bitmap devices opened a file called NA: it now throws
    an error.
  * quartz(file = NA) opened a file called NA, including when used as
    a Quartz-based bitmap device.  It now gives an error.
  * rank(&lt;long vector&gt;) now works, fixing PR#18617, thanks to Ilia
    Kats.
  * seq.int() did not adequately check its length.out argument.
  * match(&lt;POSIXct&gt;, .) is correct again for differing time zones,
    ditto for "POSIXlt", fixing PR#18618 reported by Bastian Klein.
  * drop.terms(*, dropx = &lt;0-length&gt;) now works, fixing PR#18563 as
    proposed by Mikael Jagan.
  * drop.terms(*) keeps + offset(.) terms when it should, PR#18565,
    and drop.terms() no longer makes up a response, PR#18566, fixing
    both bugs thanks to Mikael Jagan.
  * getS3method("t", "test") no longer finds the t.test() function,
    fixing PR#18627.
  * pdf() and postscript() support for the documented Adobe encodings
    "Greek" and "Cyrilllic" was missing (although the corresponding
    Windows' codepages could be used).
  * Computations of glyph metric information for pdf() and
    postscript() did not take into account that transliteration could
    replace one character by two or more (only seen on macOS 14) and
    typically warned that the information was not known.
  * rank(x) no longer overflows during integer addition, when
    computing rank average for largish but not-yet long vector x,
    fixing PR#18630, thanks to Ilia Kats.
  * list.files() on Windows now returns also files with names longer
    that 260 bytes (the Windows limit is 260 characters).
    Previously, some file names particularly with 'East Asian'
    characters were omitted.
  * cov2cor(&lt;0 x 0&gt;) now works, fixing PR#18423 thanks to Mikael
    Jagan and Elin Waring.
  * cov2cor(&lt;negative diagonal&gt;) and similar now give one warning
    instead of two, with better wording, fixing PR#18424 thanks to
    Mikael Jagan.
  * tools:: startDynamicHelp() now ensures port is in proper range,
    fixing PR#18645.
  * pbeta(x, a,b) is correct now for x=0 or 1 in the boundary cases
    where a or b or both are 0, fixing PR#18672 thanks to Michael
    Fay.
  * pmatch(x, table) for large table, also called for data frame row
    selection, dfrm[nm, ], is now interruptible, fixing PR#18656.
  * predict(&lt;rank-deficient lm&gt;, newdata=*) fix computing of nbasis,
    see Russ Lenth's comment 29 in PR#16158.
  * Added a work-around for a bug in macOS 14.3.1 and higher which
    prevents R plots in the Quartz Cocoa device from updating on
    screen.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1713960000">- CHANGES IN R 4.4.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Startup banners, R --version, sessionInfo() and R CMD check no
    longer report (64-bit) as part of the platform as this is almost
    universal - the increasingly rare 32-bit platforms will still
    report (32-bit).
    On Windows, ditto for window titles.
  * is.atomic(NULL) now returns FALSE, as NULL is not an atomic
    vector.  Strict back-compatibility would replace is.atomic(foo)
    by (is.null(foo) || is.atomic(foo)) but should happen only
    sparingly.
  NEW FEATURES:
  * The confint() methods for "glm" and "nls" objects have been
    copied to the stats package.  Previously, they were stubs which
    called versions in package MASS. The MASS namespace is no longer
    loaded if you invoke (say) confint(glmfit).  Further, the "glm"
    method for profile() and the plot() and pairs() methods for class
    "profile" have been copied from MASS to stats.  (profile.nls()
    and plot.profile.nls() were already in stats.)
  * The confint() and profile methods for "glm" objects have gained a
    possibility to do profiling based on the Rao Score statistic in
    addition to the default Likelihood Ratio. This is controlled by a
    new test = argument.
  * The pairs() method for "profile" objects has been extended with a
    which = argument to allow plotting only a subset of the
    parameters.
  * The "glm" method for anova() computes test statistics and
    p-values by default, using a chi-squared test or an F test
    depending on whether the dispersion is fixed or free.  Test
    statistics can be suppressed by giving argument test a false
    logical value.
  * In setRepositories() the repositories can be set using their
    names via name = instead of index ind =.
  * methods() and .S3methods() gain a all.names option for the (rare)
    case where functions starting with a . should be included.
  * Serializations can now be interrupted (e.g., by Ctrl-C on a
    Unix-alike) if they take too long, e.g., from save.image(),
    thanks to suggestions by Ivan Krylov and others on R-devel.
  * New startup option --max-connections to set the maximum number of
    simultaneous connections for the session.  Defaults to 128 as
    before: allowed values up to 4096 (but resource limits may in
    practice restrict to smaller values).
  * R on Windows (since Windows 10 2004) now uses the new Segment
    Heap allocator. This may improve performance of some
    memory-intensive applications.
  * When R packages are built, typically by R CMD build &lt;pkg&gt;, the
    new --user=&lt;build_user&gt; option overrides the (internally
    determined) user name, currently Sys.info()["user"] or LOGNAME.
    This is a (modified) fulfillment of Will Landau's suggestion in
    PR#17530.
  * tools::testInstalledBasic() gets new optional arguments outDir
    and testSrcdir, e.g., allowing to use it in a &lt;builddir&gt; !=
    &lt;srcdir&gt; setup, and in standard "binary" Windows installation
  * if* a source tests/ folder is present.
  * range(&lt;DT_with_Inf&gt;, finite = TRUE) now work for objects of class
    "Date", "POSIXct", and "POSIXlt" with infinite entries,
    analogously to range.default(), as proposed by Davis Vaughan on
    R-devel.  Other range()-methods can make use of new function
    .rangeNum().
  * New .internalGenerics object complementing .S3PrimitiveGenerics,
    for documentation and low-level book-keeping.
  * grid() now invisibly returns the x- and y- coordinates at which
    the grid-lines were drawn.
  * norm(., type) now also works for complex matrices.
  * kappa(., exact = TRUE, norm = *) now works for all norms and also
    for complex matrices.  In symmetric / triangular cases, the new
    argument uplo = "U" | "L" allows the upper or lower triangular
    part to be specified.
  * memDecompress(type = "unknown") recognizes compression in the
    default 'zlib' format as used by memCompress(type = "gzip").
  * memCompress() and memDecompress() will use the libdeflate library
    (&lt;https://github.com/ebiggers/libdeflate&gt;) if installed.  This
    uses the same type of compression for type = "gzip" but is 1.5-2x
    faster than the system libz library on some common platforms: the
    speed-up may depend on the library version.
  * diff() for objects of class "Date", "POSIXct", and "POSIXlt"
    accepts a units argument passed via ....
  * Dynamic help now does a much better job of rendering package
    DESCRIPTION metadata.
  * Rprof() gains an event argument and support for elapsed (real)
    time profiling on Unix (PR#18076).
  * filled.contour() gains a key.border argument.
  * tools::update_pkg_po() gets arguments pot_make and mo_make for
    _not_ re-making the corresponding files, and additionally a
    verbose argument.
  * Hexadecimal string colour specifications are now accepted in
    short form, so, for example, we can use "#123", which is
    equivalent to "#112233".
    Thanks to MikeFC for the original idea and Ella Kaye, Malcolm
    Barrett, George Stagg, and Hanne Oberman for the patch.
  * Plain-text help shows \var markup by angle brackets.
  * The new experimental primitive function declare() is intended to
    eventually allow information about R code to be communicated to
    the interpreter, compiler, and code analysis tools. The syntax
    for declarations is still being developed.
  * Functions psmirnov(), qsmirnov() and rsmirnov() in package stats
    have had argument two.sided renamed to alternative, to take into
    account that the permutation distributions of the one-sided
    statistics can be different in the case of ties.  Consequence of
    PR#18582.
  * sort() is now an implicit S4 generic in methods.
  * Formatting and printing, format(z), print(z), of complex vectors
    z no longer zap relatively small real or imaginary parts to zero,
    fixing PR#16752.  This is an API change, as it was documented
    previously to round real and imaginary parts together on purpose,
    producing nicer looking output.  As mentioned, e.g. in the PR,
    this change is compatible with many other "R-like" programming
    environments.
    We have simplified the internal code and now basically format the
    real and imaginary parts independently of each other.
  * New experimental functions Tailcall() and Exec() to support
    writing stack-space-efficient recursive functions.
  * Where characters are attempted to be plotted by pdf(),
    postscript() and xfig() which are not in the selected 8-bit
    character set (most often Latin-1) and the R session is using a
    UTF-8 locale, the warning messages will show the UTF-8 character
    rather than its bytes and one dot will be substituted per
    character rather than per byte.  (Platforms whose iconv() does
    transliteration silently plot the transliteration.)
    In a UTF-8 locale some transliterations are now done with a
    warning (e.g., dashes and Unicode minus to hyphen, ligatures are
    expanded, permille (‰) is replaced by o/oo), although the OS may
    have got there first.  These are warnings as they will continue
    to be replaced by dots in earlier versions of R.
  * The matrix multiplication functions crossprod() and tcrossprod()
    are now also primitive and S3 generic, as %*% had become in R
    4.3.0.
  * source() and example() have a new optional argument catch.aborts
    which allows continued evaluation of the R code after an error.
  * The non-Quartz tiff() devices allow additional types of
    compression if supported by the platform's libtiff library.
  * The list of base and recommended package names is now provided by
    tools::standard_package_names().
  * cairo_pdf() and cairo_ps() default to onefile = TRUE to closer
    match pdf() and postscript().
  * New option catch.script.errors provides a documented way to catch
    errors and then continue in non-interactive use.
  * L %||% R newly in base is an expressive idiom for the phrases
    if(!is.null(L)) L else R or if(is.null(L)) R else L.
  * The return value from warnings() now always inherits from
    "warnings" as documented, now also in the case of no warnings
    where it previously returned NULL.
  * as.complex("1i") now returns 0 + 1i instead of NA with a warning.
  * z &lt;- c(NA, 1i) now keeps the imaginary part Im(z[1]) == 0, no
    longer coercing to NA_complex_.  Similarly, cumsum(z) correctly
    sums real and imaginary parts separately, i.e., without
    "crosstalk" in case of NAs.
  * On Alpine Linux iconv() now maps "latin2", "latin-2", "latin9"
    and "latin-9" to encoding names the OS knows about
    (case-insensitively).
  * iconv(sub = "Unicode") now always zero-pads to four (hex) digits,
    rather than to 4 or 8.  (This seems to have become the convention
    once Unicode restricted the number of Unicode points to 2^21 - 1
    and so will never need more than 6 digits.)
  * NCOL(NULL) now returns 0 instead of 1, for consistency with
    cbind().
  * The information for the Euro glyph missing from the Adobe .afm
    files for the Courier, Helvetica and Times families has been
    copied from their URW equivalents - this will improve vertical
    centring in the pdf() and postscript() devices.
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.12.0.  The changes are almost entirely cosmetic.
  * The included LAPACK sources have been updated to version 3.12.0
    and some further double-complex routines added.
  * There are new font families for the 2014--5 URW 2.0 fonts (see
    ?pdf) which are included in recent versions of Ghostscript.
    These have font widths for most Greek glyphs and a few others
    which were missing from the original versions (whose font
    families remain available for reproducibility, although
    Ghostscript-based viewers will render using the 2.0 versions).
  * Improve the large-n efficiency of as.matrix(&lt;dist&gt;), thanks an R
    contributors effort, notably by Tim Taylor and Heather Turner,
    see PR#18660.
  * The default and numeric methods of all.equal() get a check.class
    option.
  * zapsmall() gets new optional arguments, function mFUN and min.d,
    for extra flexibility; fulfills a wish in PR#18199.  Also, it is
    now an implicit S4 generic in package methods.
  * The Rd filter for aspell() gains an ignore argument.
  * New generic function sort_by(), primarily useful for the
    data.frame method which can be used to sort rows of a data frame
    by one or more columns.
  * The icence headers for the RPC code in src/extra/xdr have been
    updated to use the GPL-compatible licence published by Oracle
    America in 2010.
  * New function pkg2HTML() in tools to create single-page HTML
    reference manuals for R packages.
  * The byte code evaluator now uses less C stack space for recursive
    calls to byte-compiled functions. It also makes more of an effort
    to avoid allocations for scalar return values.
  * New completion option backtick (disabled by default) allows
    non-syntactic completions to be wrapped in backquotes. This is
    currently only useful for Jupyter notebooks via the IRkernel
    package, and may cause problems for other backends.
  INSTALLATION:
  * The parser has been updated to work with bison 3.8.2, which is
    now used for the pre-generated parsers in gram.c, file.c, and
    gramRd.c. A few parser error messages have changed, which may
    affect code that relies on exact messages.
  INSTALLATION on a UNIX-ALIKE:
  * System valgrind headers are now required to use configure option
  - -with-valgrind-instrumentation with value 1 or 2.
  * configure will warn if it encounters a 32-bit build, as that is
    nowadays almost untested.
  * Environment variable R_SYSTEM_ABI is no longer used and so no
    longer recorded in etc/Renviron (it was not on Windows and was
    only ever used when preparing package tools).
  * If the libdeflate library and headers are available, libdeflate
    rather than libz is used to (de)compress R objects in lazy-load
    databases.  Typically tasks spend up to 5% of their time on such
    operations, although creating lazy-data databases is one of the
    exceptions.
    This can be suppressed if the library is available by the
    configure option --without-libdeflate-compression.
  * configure option --enable-lto=check has not worked reliably since
    2019 and has been removed.
  * The minimum autoconf requirement for a maintainer build has been
    increased to autoconf 2.71.
    It is intended to increase this to 2.72 for R 4.5.0: the
    distributed configure file was generated using 2.72.
  * The minimum version requirement for an external LAPACK has been
    reduced to 3.9.0.
  * No default C++ compiler is set if no C++17 compiler is detected:
    there is no longer an automatic fallback to C++14 or C++11.
    Compilers from the last five years should have sufficient
    support: for others macros CXX and CXXSTD can be set in file
    config.site to provide a fallback if needed.
    The Objective-C++ compiler now by default uses the standard
    selected by R for C++ (currently C++17) rather than the default
    standard for the C++ compiler (which on macOS is still C++98).
  INSTALLATION on macOS:
  * A new configure option --with-newAccelerate makes use of Apple's
    'new' BLAS / LAPACK interfaces in their Accelerate framework.
    Those interfaces are only available in macOS 13.3 or later, and
    building requires SDK 13.3 or later (from the Command Line Tools
    or Xcode 14.3 or later).
    By default the option uses new Accelerate for BLAS calls: to also
    use it for LAPACK use option --with-newAccelerate=lapack.  The
    later interfaces provide LAPACK 3.9.1 rather than 3.2.1: 3.9.1 is
    from 2021-04 and does not include the improved algorithms
    introduced in LAPACK 3.10.0 (including for BLAS calls).
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools44, an update of the Rtools43 toolchain.  It is
    based on GCC 13 and newer versions of MinGW-W64, binutils and
    libraries (targeting 64-bit Intel CPUs).  R-devel can no longer
    be built using Rtools43 without changes.
  * Rtools44 has experimental support for 64-bit ARM (aarch64) CPUs
    _via_ the LLVM 17 toolchain using lld, clang/flang-new and
    libc++.
  UTILITIES:
  * R CMD check notes when S4-style exports are used without
    declaring a strong dependence on package methods.
  * tools::checkRd() (used by R CMD check) detects more problems with
    \Sexpr-based dynamic content, including bad nesting of \Sexprs
    and invalid arguments.
  * tools::checkRd() now reports Rd titles and section names ending
    in a period; this is ignored by R CMD check unless environment
    variable _R_CHECK_RD_CHECKRD_MINLEVEL_ is set to -5 or smaller.
  * R CMD check now notes Rd files without an \alias, as long
    documented in 'Writing R Extensions' §1.3.1.  The check for a
    missing \description has been moved from tools::checkRd() to
    tools::checkRdContents().
  * R CMD check now visits inst/NEWS.Rd and OS-specific man
    subdirectories when checking Rd files.
  * tools::checkDocFiles() and tools::checkRdContents() now also
    check internal Rd files by default, but "specially" (ignoring
    missing documentation of arguments).
  * R CMD Rdiff gets option --useEx.
  * R CMD check now warns on non-portable uses of Fortran KIND such
    as INTEGER(KIND=4) and REAL(KIND=8).
    To see the failing lines set environment variable
    _R_CHECK_FORTRAN_KIND_DETAILS_ to a true value.
  * When checking Rd files, R CMD check now notes some of the "lost
    braces" that tools::checkRd() finds.  Typical problems are Rd
    macros missing the initial backslash (e.g., code{...}), in-text
    set notation (e.g., {1, 2}, where the braces need escaping), and
    \itemize lists with \describe-style entries of the form
    \item{label}{description}.
  * R CMD INSTALL (and hence check) will compile C++ code with
  - DR_NO_REMAP if environment variable _R_CXX_USE_NO_REMAP_ is set
    to a true value.  It is planned that this will in future become
    the default for compiling C++.
  * The new built-in Rd macro \dontdiff{} can be used to mark example
    code whose output should be ignored when comparing check output
    to reference output (tests/Examples/&lt;pkg&gt;-Ex.Rout.save).  The
    \dontdiff tag, like \donttest, is _not_ shown on the rendered
    help page, so provides a clean alternative to ##
    IGNORE_RDIFF_(BEGIN|END) comments.
  * R CMD build when there is no NAMESPACE, now uses the recommended
    exportPattern("^[^.]"), instead of exporting everything.
  * R CMD check now warns about non-ASCII characters in the NAMESPACE
    file (in addition to R files). Such packages are not portable and
    may fail to install on some platforms.
  C-LEVEL FACILITIES:
  * Headers R_ext/Applic.h and R-ext/Linpack.h used to include
    R_ext/BLAS.h although this was undocumented and unneeded by their
    documented entry points.  They no longer do so.
  * New function R_missing(), factored out from do_missing(), used to
    fix PR#18579.
  * SEXP type S4SXP has been renamed to OBJSXP to support
    experimenting with alternative object systems.  The S4SXP value
    can still be used in C code but is now deprecated.  Based on
    contributions from the R Consortium's Object-Oriented Programming
    Working Group.
  * New function pow1p(x,y) for accurate (1+x)^y.
  * mkCharLenCE was incorrectly documented to take a size_t length
    but was implemented with int (and character strings in R are
    limited to 2^31 - 1 bytes).
  DEPRECATED AND DEFUNCT:
  * data() no longer handles zipped data from long-defunct (since R
    2.13.0) --use-zip-data installations.
  * The legacy graphics devices pictex() and xfig() are now
    deprecated.  They do not support recent graphics enhancements and
    their font handling is rudimentary. The intention is to retain
    them for historical interest as long as they remain somewhat
    functional.
  * Support for encoding = "MacRoman" has been removed from the pdf()
    and postscript() devices - this was a legacy encoding supporting
    classic macOS up to 2001 and no longer has universal libiconv
    support.
  * is.R() is deprecated as no other S dialect is known to be in use
    (and this could only identify historical dialects, not future
    ones).
    Further information on calls can be obtained by setting the
    environment variable _R_DEPRECATED_IS_R_ to error which turns the
    deprecation warning into an error and so by default gives a
    traceback.  (This is done by R CMD check --as-cran.)
  * UseMethod() no longer forwards local variables assigned in the
    generic function into method call environments before evaluating
    the method body. This makes method calls behave more like
    standard function calls and makes method code easier to analyze
    correctly.
  * The twelve as.data.frame.&lt;class&gt;() methods which were deprecated
    only via _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ and in R CMD
    check --as-cran are formally deprecated now in favour of calling
    as.data.frame() or as.data.frame.vector().  The deprecation
    "check" now works also when as.data.frame() is S4 generic thanks
    to Ivan Krylov.
  * The default method for the directional comparison operators &lt;, &gt;,
    &lt;=, and &gt;= now signals an error when one of the operands is a
    language object, i.e. a symbol or a call.
  * For terms.formula(), deprecate abb and neg.out arguments
    _formally_ in addition to just documenting it.
  BUG FIXES:
  * The methods package is more robust to not being attached to the
    search path.  More work needs to be done.
  * pairwise.t.test() misbehaved when subgroups had 0 DF for
    variance, even with pool.sd = TRUE.  (PR#18594 by Jack Berry).
  * Probability distribution functions [dpq]&lt;distrib&gt;(x, *), but also
    bessel[IKJY](x, .) now consistently preserve attributes(x) when
    length(x) == 0, e.g., for a 2 x 0 matrix, thanks to Karolis
    Koncevičius' report PR#18509.
  * Group "Summary" computations such as sum(1:3, 4, na.rm = 5, NA,
    7, na.rm = LL) now give an error instead of either 17 or NN for
    LL true or false, as proposed by Ivan Krylov on the R-devel
    mailing list.  (This also means it is now an error to specify
    na.rm more than once.)
  * as.complex(x) now returns complex(real = x, imaginary = 0) for
    _all_ numerical and logical x, notably also for NA or
    NA_integer_.
  * Directories are now omitted by file.copy(, recursive = FALSE) and
    in file.append() (PR#17337).
  * gsub() and sub() are now more robust to integer overflow when
    reporting errors caused by too large input strings (PR#18346).
  * Top-level handlers are now more robust to attempts to remove a
    handler whilst handlers are running (PR#18508).
  * The handling of Alt+F4 in dialogs created on Windows using
    GraphApp has been fixed (PR#13870).
  * density() more consistently computes grid values for the
    FFT-based convolution, following Robert Schlicht's analysis and
    proposal in PR#18337, correcting density values typically by a
    factor of about 0.999.  Argument old.coords = TRUE provides back
    compatibility.
  * palette.colors() gains a name argument that defaults to FALSE
    controlling whether the vector of colours that is returned has
    names (where possible).  PR#18529.
  * tools::xgettext() no longer extracts the (non-translatable) class
    names from warningCondition and errorCondition calls.
  * S3method(&lt;gen&gt;, &lt;class&gt;, &lt;func&gt;) in the NAMESPACE file now works
    (again) when &lt;func&gt; is visible from the namespace, e.g.,
    imported, or in base.
  * getParseData(f) now also works for a function defined in the
    first of several &lt;pkg&gt;/R/*.R source files, thanks to Kirill
    Müller's report and Duncan Murdoch's patch in PR#16756.
  * Rd \Sexpr macros with nested #ifdef conditionals were not
    processed.
  * A non-blocking connection with non-default encoding (such as a
    socket) now correctly returns from readLines() after new data has
    arrived also when its EOF had been reached previously.  Thanks to
    Peter Meilstrup's report on R-devel and Ivan Krylov's report and
    patch proposal in PR#18555.
  * tools::checkRdContents() failed to detect empty argument
    descriptions when they spanned multiple lines, including those
    generated by prompt().  These cases are now noted by R CMD check.
  * Plain-text help no longer outputs spurious colons in the
    arguments list (for multi-line \item labels in the Rd source).
  * kappa() and rcond() work correctly in more cases; kappa(., norm =
    "2") now warns that it computes the 1-norm with (default) exact =
    FALSE; prompted by Mikael Jagan's quite comprehensive PR#18543.
  * Rd skeletons generated by prompt() or promptData() now use a
    dummy title (so R CMD build works).  tools::checkRdContents() has
    been updated to detect such template leftovers, including from
    promptPackage().
  * When S4 method dispatch fails because no method was found, the
    error message now includes the signature argument names; thanks
    to Michael Chirico's proposal on the R-devel list.
  * withAutoprint({ .. }) now preserves srcrefs previously lost,
    thanks to Andrew Simmons' report plus fix in PR#18572.
  * transform.data.frame() no longer adjusts names; in particular,
    untransformed variables are kept as-is, including those with
    syntactically invalid names (PR#17890).
  * The keep.source option for Rd \Sexpr blocks is no longer ignored.
  * The formula methods for t.test() and wilcox.test() now catch when
    paired is passed, addressing PR#14359; use Pair(x1, x2) ~ 1 for a
    paired test.
  * The level reported in the browser prompt was often too large. It
    now shows the number of browser contexts on the stack.
  * For cbind() and rbind(), the optional deparse.level argument is
    now properly passed to methods, thanks to Mikael Jagan's PR#18579
    and comments there.
  * Some error and warning messages for large ('long vector')
    matrix(v, nr, nc) and dim(m) &lt;- d are now correct about sizes,
    using long long formatting, fixing PR#18612 (and more) reported
    by Mikael Jagan.
  * readChar(useBytes = TRUE) now terminates strings even when the
    underlying connection uses extra spaces in the input buffer.
    This fixes problems with extra garbage seen with gzip
    connections, PR#18605.
  * Named capture in PCRE regular expressions now works also with
    more than 127 named groups (PR#18588).
  * Datetime functions are now robust against long jumps when dealing
    with internal time zone changes.  This avoids confusing warnings
    about an invalid time zone, previously triggered by turning
    warnings into errors or handling them via tryCatch (PR#17966,
    PR#17780).
  * Datetime functions now restore even an empty TZ environment
    variable after internal time zone changes (PR#17724).  This makes
    results of datetime functions with this (typically unintentional)
    setting more predictable.
  * drop.terms(*) now drops response as by default, keep.response =
    FALSE, fixing PR#18564 thanks to Mikael Jagan.
  * dummy.coef(.) now also works for lm()-models with character
    categorical predictor variables rather than factor ones, fixing
    PR#18635 reported by Jinsong Zhao.
  * formals(f) &lt;- formals(f) now also works for a function w/o
    arguments and atomic _constant_ body(f).
  * Correct as.function(&lt;invalid list&gt;, .)'s error message.
  * removeSource() is yet more thorough in finding and removing
    "srcref" and the other source references from parsed R language
    chunks, fixing PR#18638 thanks to Andrew Simmons.
  * dgeom() is more accurate now, notably when its result is very
    small, fixing PR#18642 thanks to the proposal of Morten Welinder,
    also improving other instances where C level binom_raw(x, n, ..)
    has x == 0 or x== n.
  * warning() with options(warn = 1) has improved output for
    multi-line messages.
  * axis.Date() and axis.POSIXct() now respect the par("lab") setting
    for the number of pretty() intervals.
  * Comparisons for language objects (which are based on deparsing)
    are now more careful about using accurate deparsed results
    (PR#18676).
  * Plain-text help (Rd2txt) now correctly preserves blank lines
    following single-line \dontrun code.
  * &lt;POSIXlt&gt;[*] no longer sets wrong "balanced" attribute, fixing
    PR#18681 thanks to Mikael Jagan.
  * str(&lt;classed-call&gt;) now deparses the call as expected, fixing
    PR#18684, reported by Dave Slager.
  * In Rd examples, code following the closing brace of a \dontrun,
    \dontshow or \donttest tag on the same line is no longer skipped
    when R CMD check runs the examples.
  * as.data.frame(matrix(*, ncol=0)) now gets valid names() and
    colnames(); reported by Davis Vaughan on the R-devel list.
  * Internal Mathlib function stirlerr(n) is now almost fully
    (52-bit) accurate for all n &gt;= ~5.9 and more accurate also in the
    range 1 -- 5.9.  This entails small ("after 12th decimal")
    changes in density functions, e.g., dgamma() in _some_ regions of
    their support.  The fix was partly prompted by Morten Welinder's
    PR#18640.
  * Numbers like 9876543.2 are now considered non-integer by Mathlib
    internal R_nonint(), amending original fix of PR#15734.
  * Rd comment lines no longer cause broken paragraphs in the
    rendered PDF and plain-text help. In code blocks, pure comment
    lines (starting with %) no longer produce an empty line.
  * xtabs(Freq ~ .) now consistently defaults to na.action = na.pass,
    using na.rm = FALSE (added as an argument) when summing over Freq
    (PR#17770).
  * tools::testInstalledPackage() is no longer silent about failures
    from running examples or tests and its return code no longer
    ignores failures from checking vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1718366400">- CHANGES IN R 4.4.1:
  C-LEVEL FACILITIES:
  * Functions R_atof and R_strtod declared in header R_ext/Utils.h
    are now documented in 'Writing R Extensions' and so formally part
    of the API.
  * The non-API entry points Rf_setSVector, Rf_StringFalse,
    Rf_StringTrue and Rf_isBlankString have been added to those
    reported by R CMD check.
  * The new function Rf_allocLang is now available. This provides an
    alternative to the idiom of calling Rf_allocList followed by
    SET_TYPEOF.
  UTILITIES:
  * R CMD check now reports as warnings what gfortran calls 'Fortran
    2018 deleted features', all of which have long been marked as
    'obsolescent' and some of which were deleted in Fortran 2008 or
    earlier.  Fortran compilers are no longer required to support
    these.
  BUG FIXES:
  * as.numeric(), scan(), type.convert() and other places which use
    the internal C function R_strtod now require a _non-empty_ digit
    sequence in a decimal or binary exponent.  This aligns with the
    C/POSIX standard for strtod and with ?NumericConstants.
  * as.data.frame(m, make.names=NA) now works correctly for a matrix
    m with NA's in row names.
  * The error message from &lt;POSIXlt&gt;[["hour"]] and similar now
    mentions *[[, "hour"]], as wished for in PR#17409 and proposed by
    Michael Chirico.
  * qbinom() and potentially qpois(), qnbinom(), no longer sometimes
    fail accurate inversion (of pbinom(), etc), thanks to Christopher
    Chang's report and patch in PR#18711.
  * The internal help server on Windows can again serve requests sent
    in quick succession, fixing a regression in R 4.4.0.
  * debugcall(&lt;S3Generic&gt;()) now also works when a corresponding
    S4-generic version is in the methods cache (PR#18143).
  * Package tools' toTitleCase(ch0) now returns character(0) when ch0
    is of zero length; fixing PR#18724, reported by David Hugh Jones.
  * R CMD check is no longer broken (without a check result and no
    explanation in 00check.log) for a package which declares an
    invalid VignetteBuilder in DESCRIPTION but has no vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1730376000">- CHANGES IN R 4.4.2:
  C-LEVEL FACILITIES:
  * The S-compatibility macros F77_COM and F77_COMDECL defined in
    header R_ext/RS.h are deprecated and will be removed shortly.  We
    could find no record of their use.
  BUG FIXES:
  * Mathlib function lgammacor(x) no longer warns about underflow to
    zero for large x.
  * Text widths and heights were incorrectly reported by the Quartz
    device if the drawing context didn't exist yet (typically when
    drawing off-screen to a window that is yet to appear, see
    PR#18591).
  * The Quartz device could segfault in cases where paths with spaces
    are used in the new glyph drawing API.  Thanks to Tomek
    Gieorgijewski (PR#18758).
  * On macOS in R CRAN builds, it is again possible to read
    little-endian UTF-16 text with a BOM from a connection using
    encoding="UTF-16".  Users building R from source should avoid
    using the system libiconv in macOS 14.1 and later.
  * methods' internal .requirePackage() now re-enables primitive
    method dispatch when needed; thanks to Ivan Krylov for
    demystifying CRAN package check failures on the R-devel mailing
    list.</changelog>
</package>
<package pkgid="1a238f6ba90f07cd31c29c88b9c91330d7180526388688d6c0694d7284a66516b591dc76b925aad3ba78102639f4e12e1db2beb4df28b7d71995c13ea1330b1f" name="R-Matrix" arch="x86_64">
  <version epoch="0" ver="1.7.1" rel="51.0.2.2.sr20241103"/>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1620302400">- To get in sync with d:l:R:autoCRAN the Matrix package's split
  in -devel was reversed.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339200">- improved spec file according to comments of dimstar in
  https://build.opensuse.org/request/show/892685</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339201">- CHANGES IN R 4.1.0:
  FUTURE DIRECTIONS:
  * It is planned that the 4.1.x series will be the last to support
    32-bit Windows, with production of binary packages for that
    series continuing until early 2023.
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Data set esoph in package datasets now provides the correct
    numbers of controls; previously it had the numbers of cases added
    to these.  (Reported by Alexander Fowler in PR#17964.)
  NEW FEATURES:
  * www.omegahat.net is no longer one of the repositories known by
    default to setRepositories().  (Nowadays it only provides source
    packages and is often unavailable.)
  * Function package_dependencies() (in package tools) can now use
    different dependency types for direct and recursive dependencies.
  * The checking of the size of tarball in R CMD check --as-cran
    &lt;pkg&gt; may be tweaked via the new environment variable
    _R_CHECK_CRAN_INCOMING_TARBALL_THRESHOLD_, as suggested in
    PR#17777 by Jan Gorecki.
  * Using c() to combine a factor with other factors now gives a
    factor, an ordered factor when combining ordered factors with
    identical levels.
  * apply() gains a simplify argument to allow disabling of
    simplification of results.
  * The format() method for class "ftable" gets a new option justify.
    (Suggested by Thomas Soeiro.)
  * New ...names() utility.  (Proposed by Neal Fultz in PR#17705.)
  * type.convert() now warns when its as.is argument is not
    specified, as the help file always said it _should_.  In that
    case, the default is changed to TRUE in line with its change in
    read.table() (related to stringsAsFactor) in R 4.0.0.
  * When printing list arrays, classed objects are now shown _via_
    their format() value if this is a short enough character string,
    or by giving the first elements of their class vector and their
    length.
  * capabilities() gets new entry "Rprof" which is TRUE when R has
    been configured with the equivalent of --enable-R-profiling (as
    it is by default).  (Related to Michael Orlitzky's report
    PR#17836.)
  * str(xS4) now also shows extraneous attributes of an S4 object
    xS4.
  * Rudimentary support for vi-style tags in rtags() and R CMD rtags
    has been added.  (Based on a patch from Neal Fultz in PR#17214.)
  * checkRdContents() is now exported from tools; it and also
    checkDocFiles() have a new option chkInternal allowing to check
    Rd files marked with keyword "internal" as well.  The latter can
    be activated for R CMD check via environment variable
    _R_CHECK_RD_INTERNAL_TOO_.
  * New functions numToBits() and numToInts() extend the raw
    conversion utilities to (double precision) numeric.
  * Functions URLencode() and URLdecode() in package utils now work
    on vectors of URIs.  (Based on patch from Bob Rudis submitted
    with PR#17873.)
  * path.expand() can expand ~user on most Unix-alikes even when
    readline is not in use.  It tries harder to expand ~, for example
    should environment variable HOME be unset.
  * For HTML help (both dynamic and static), Rd file links to help
    pages in external packages are now treated as references to
    topics rather than file names, and fall back to a file link only
    if the topic is not found in the target package. The earlier rule
    which prioritized file names over topics can be restored by
    setting the environment variable _R_HELP_LINKS_TO_TOPICS_ to a
    false value.
  * c() now removes NULL arguments before dispatching to methods,
    thus simplifying the implementation of c() methods, _but_ for
    back compatibility keeps NULL when it is the first argument.
    (From a report and patch proposal by Lionel Henry in PR#17900.)
  * Vectorize()'s result function's environment no longer keeps
    unneeded objects.
  * Function ...elt() now propagates visibility consistently with
    ..n.  (Thanks to Lionel Henry's PR#17905.)
  * capture.output() no longer uses non-standard evaluation to
    evaluate its arguments.  This makes evaluation of functions like
    parent.frame() more consistent.  (Thanks to Lionel Henry's
    PR#17907.)
  * packBits(bits, type="double") now works as inverse of
    numToBits().  (Thanks to Bill Dunlap's proposal in PR#17914.)
  * curlGetHeaders() has two new arguments, timeout to specify the
    timeout for that call (overriding getOption("timeout")) and TLS
    to specify the minimum TLS protocol version to be used for
    https:// URIs (_inter alia_ providing a means to check for sites
    using deprecated TLS versions 1.0 and 1.1).
  * For nls(), an optional constant scaleOffset may be added to the
    denominator of the relative offset convergence test for cases
    where the fit of a model is expected to be exact, thanks to a
    proposal by John Nash.  nls(*, trace=TRUE) now also shows the
    convergence criterion.
  * Numeric differentiation _via_ numericDeriv() gets new optional
    arguments eps and central, the latter for taking central divided
    differences.  The latter can be activated for nls() via
    nls.control(nDcentral = TRUE).
  * nls() now passes the trace and control arguments to getInitial(),
    notably for all self-starting models, so these can also be fit in
    zero-noise situations via a scaleOffset.  For this reason, the
    initial function of a selfStart model must now have ... in its
    argument list.
  * bquote(splice = TRUE) can now splice expression vectors with
    attributes: this makes it possible to splice the result of
    parse(keep.source = TRUE).  (Report and patch provided by Lionel
    Henry in PR#17869.)
  * textConnection() gets an optional name argument.
  * get(), exists(), and get0() now signal an error if the first
    argument has length greater than 1.  Previously additional
    elements were silently ignored.  (Suggested by Antoine Fabri on
    R-devel.)
  * R now provides a shorthand notation for creating functions, e.g.
    \(x) x + 1 is parsed as function(x) x + 1.
  * R now provides a simple native forward pipe syntax |&gt;.  The
    simple form of the forward pipe inserts the left-hand side as the
    first argument in the right-hand side call.  The pipe
    implementation as a syntax transformation was motivated by
    suggestions from Jim Hester and Lionel Henry.
  * all.equal(f, g) for functions now by default also compares their
    environment(.)s, notably via new all.equal method for class
    function.  Comparison of nls() fits, e.g., may now need
    all.equal(m1, m2, check.environment = FALSE).
  * .libPaths() gets a new option include.site, allowing to _not_
    include the site library.  (Thanks to Dario Strbenac's suggestion
    and Gabe Becker's PR#18016.)
  * Lithuanian translations are now available.  (Thanks to Rimantas
    Zakauskas.)
  * names() now works for DOTSXP objects.  On the other hand, in
    R-lang, the R language manual, we now warn against relying on the
    structure or even existence of such dot-dot-dot objects.
  * all.equal() no longer gives an error on DOTSXP objects.
  * capabilities("cairo") now applies only to the file-based devices
    as it is now possible (if very unusual) to build R with Cairo
    support for those but not for X11().
  * There is optional support for tracing the progress of
    loadNamespace() - see its help.
  * (Not Windows.)  l10n_info() reports an additional element, the
    name of the encoding as reported by the OS (which may differ from
    the encoding part (if any) of the result from
    Sys.getlocale("LC_CTYPE").
  * New function gregexec() which generalizes regexec() to find _all_
    disjoint matches and well as all substrings corresponding to
    parenthesized subexpressions of the given regular expression.
    (Contributed by Brodie Gaslam.)
  * New function charClass() in package utils to query the
    wide-character classification functions in use (such as
    iswprint).
  * The names of quantile()'s result no longer depend on the global
    getOption("digits"), but quantile() gets a new optional argument
    digits = 7 instead.
  * grep(), sub(), regexp and variants work considerably faster for
    long factors with few levels.  (Thanks to Michael Chirico's
    PR#18063.)
  * Provide grouping of x11() graphics windows within a window
    manager such as Gnome or Unity; thanks to a patch by Ivan Krylov
    posted to R-devel.
  * The split() method for class data.frame now allows the f argument
    to be specified as a formula.
  * sprintf now warns on arguments unused by the format string.
  * New palettes "Rocket" and "Mako" for hcl.colors() (approximating
    palettes of the same name from the 'viridisLite' package).
    Contributed by Achim Zeileis.
  * The base environment and its namespace are now locked (so one can
    no longer add bindings to these or remove from these).
  * Rterm handling of multi-byte characters has been improved,
    allowing use of such characters when supported by the current
    locale.
  * Rterm now accepts ALT+ +xxxxxxxx sequences to enter Unicode
    characters as hex digits.
  * Environment variable LC_ALL on Windows now takes precedence over
    LC_CTYPE and variables for other supported categories, matching
    the POSIX behaviour.
  * duplicated() and anyDuplicated() are now optimized for integer
    and real vectors that are known to be sorted via the ALTREP
    framework. Contributed by Gabriel Becker via PR#17993.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 14
    and so packages that provide graphics devices should be
    reinstalled.
  * Graphics devices should now specify deviceVersion to indicate
    what version of the graphics engine they support.
  * Graphics devices can now specify deviceClip.  If TRUE, the
    graphics engine will never perform any clipping of output itself.
    The clipping that the graphics engine does perform (for both
    canClip = TRUE and canClip = FALSE) has been improved to avoid
    producing unnecessary artifacts in clipped output.
  * The grid package now allows gpar(fill) to be a linearGradient(),
    a radialGradient(), or a pattern().  The viewport(clip) can now
    also be a grob, which defines a clipping path, and there is a new
    viewport(mask) that can also be a grob, which defines a mask.
    These new features are only supported so far on the Cairo-based
    graphics devices and on the pdf() device.
  * (Not Windows.)  A warning is given when a Cairo-based type is
    specified for a png(), jpeg(), tiff() or bmp() device but Cairo
    is unsupported (so type = "Xlib" is tried instead).
  * grSoftVersion() now reports the versions of FreeType and
    FontConfig if they are used directly (not _via_ Pango), as is
    most commonly done on macOS.
  C-LEVEL FACILITIES:
  * The _standalone_ libRmath math library and R's C API now provide
    log1pexp() again as documented, and gain log1mexp().
  INSTALLATION on a UNIX-ALIKE:
  * configure checks for a program pkgconf if program pkg-config is
    not found.  These are now only looked for on the path (like
    almost all other programs) so if needed specify a full path to
    the command in PKG_CONFIG, for example in file config.site.
  * C99 function iswblank is required - it was last seen missing ca
    2003 so the workaround has been removed.
  * There are new configure options --with-internal-iswxxxxx,
  - -with-internal-towlower and --with-internal-wcwidth which allows
    the system functions for wide-character classification,
    case-switching and width (wcwidth and wcswidth) to be replaced by
    internal ones.  The first has long been used on macOS, AIX (and
    Windows) but this enables it to be unselected there and selected
    for other platforms (it is the new default on Solaris).  The
    second is new in this version of R and is selected by default on
    macOS and Solaris.  The third has long been the default and
    remains so as it contains customizations for East Asian
    languages.
    System versions of these functions are often minimally
    implemented (sometimes only for ASCII characters) and may not
    cover the full range of Unicode points: for example Solaris (and
    Windows) only cover the Basic Multilingual Plane.
  * Cairo installations without X11 are more likely to be detected by
    configure, when the file-based Cairo graphics devices will be
    available but not X11(type = "cairo").
  * There is a new configure option --with-static-cairo which is the
    default on macOS.  This should be used when only static cairo
    (and where relevant, Pango) libraries are available.
  * Cairo-based graphics devices on platforms without Pango but with
    FreeType/FontConfig will make use of the latter for font
    selection.
  LINK-TIME OPTIMIZATION on a UNIX-ALIKE:
  * Configuring with flag --enable-lto=R now also uses LTO when
    installing the recommended packages.
  * R CMD INSTALL and R CMD SHLIB have a new flag --use-LTO to use
    LTO when compiling code, for use with R configured with
  - -enable-lto=R.  For R configured with --enable-lto, they have
    the new flag --no-use-LTO.
    Packages can opt in or out of LTO compilation _via_ a UseLTO
    field in the DESCRIPTION file.  (As usual this can be overridden
    by the command-line flags.)
  BUILDING R on Windows:
  * for GCC &gt;= 8, FC_LEN_T is defined in config.h and hence character
    lengths are passed from C to Fortran in _inter alia_ BLAS and
    LAPACK calls.
  * There is a new text file src/gnuwin32/README.compilation, which
    outlines how C/Fortran code compilation is organized and
    documents new features:
  * R can be built with Link-Time Optimization with a suitable
    compiler - doing so with GCC 9.2 showed several
    inconsistencies which have been corrected.
  * There is support for cross-compiling the C and Fortran code
    in R and standard packages on suitable (Linux) platforms.
    This is mainly intended to allow developers to test later
    versions of compilers - for example using GCC 9.2 or 10.x has
    detected issues that GCC 8.3 in Rtools40 does not.
  * There is experimental support for cross-building R packages
    with C, C++ and/or Fortran code.
  * The R installer can now be optionally built to support a single
    architecture (only 64-bit or only 32-bit).
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++14 where
    available (which it is on all currently checked platforms): if
    not (as before) C++11 is used if available otherwise C++ is not
    supported.
    Packages which specify C++11 will still be installed using C++11.
    C++14 compilers may give deprecation warnings, most often for
    std::random_shuffle (deprecated in C++14 and removed in C++17).
    Either specify C++11 (see 'Writing R Extensions') or modernize
    the code and if needed specify C++14.  The latter has been
    supported since R 3.4.0 so the package's DESCRIPTION would need
    to include something like
    Depends: R (&gt;= 3.4)
  PACKAGE INSTALLATION on Windows:
  * R CMD INSTALL and R CMD SHLIB make use of their flag --use-LTO
    when the LTO_OPT make macro is set in file etc/${R_ARCH}/Makeconf
    or in a personal/site Makevars file.  (For details see 'Writing R
    Extensions' SS4.5.)
    This provides a valuable check on code consistency.  It does work
    with GCC 8.3 as in Rtools40, but that does not detect everything
    the CRAN checks with current GCC do.
  PACKAGE INSTALLATION on macOS:
  * The default personal library directory on builds with
  - -enable-aqua (including CRAN builds) now differs by CPU type,
    one of
    ~/Library/R/x86_64/x.y/library
    ~/Library/R/arm64/x.y/library
    This uses the CPU type R (and hence the packages) were built for,
    so when a x86_64 build of R is run under Rosetta emulation on an
    arm64 Mac, the first is used.
  UTILITIES:
  * R CMD check can now scan package functions for bogus return
    statements, which were possibly intended as return() calls (wish
    of PR#17180, patch by Sebastian Meyer). This check can be
    activated via the new environment variable
    _R_CHECK_BOGUS_RETURN_, true for --as-cran.
  * R CMD build omits tarballs and binaries of previous builds from
    the top-level package directory.  (PR#17828, patch by Sebastian
    Meyer.)
  * R CMD check now runs sanity checks on the use of LazyData, for
    example that a data directory is present and that
    LazyDataCompression is not specified without LazyData and has a
    documented value.  For packages with large LazyData databases
    without specifying LazyDataCompression, there is a reference to
    the code given in 'Writing R Extensions' SS1.1.6 to test the
    choice of compression (as in all the CRAN packages tested a
    non-default method was preferred).
  * R CMD build removes LazyData and LazyDataCompression fields from
    the DESCRIPTION file of packages without a data directory.
  ENCODING-RELATED CHANGES:
  * The parser now treats \Unnnnnnnn escapes larger than the upper
    limit for Unicode points (\U10FFFF) as an error as they cannot be
    represented by valid UTF-8.
    Where such escapes are used for outputting non-printable
    (including unassigned) characters, 6 hex digits are used (rather
    than 8 with leading zeros).  For clarity, braces are used, for
    example \U{0effff}.
  * The parser now looks for non-ASCII spaces on Solaris (as
    previously on most other OSes).
  * There are warnings (including from the parser) on the use of
    unpaired surrogate Unicode points such as \uD834.  (These cannot
    be converted to valid UTF-8.)
  * Functions nchar(), tolower(), toupper() and chartr() and those
    using regular expressions have more support for inputs with a
    marked Latin-1 encoding.
  * The character-classification functions used (by default) to
    replace the system iswxxxxx functions on Windows, macOS and AIX
    have been updated to Unicode 13.0.0.
    The character-width tables have been updated to include new
    assignments in Unicode 13.0.0.
  * The code for evaluating default (extended) regular expressions
    now uses the same character-classification functions as the rest
    of R (previously they differed on Windows, macOS and AIX).
  * There is a build-time option to replace the system's
    wide-character wctrans C function by tables shipped with R: use
    configure option --with-internal-towlower or (on Windows)
  - DUSE_RI18N_CASE in CFLAGS when building R.  This may be needed
    to allow tolower() and toupper() to work with Unicode characters
    beyond the Basic Multilingual Plane where not supported by system
    functions (e.g. on Solaris where it is the new default).
  * R is more careful when truncating UTF-8 and other multi-byte
    strings that are too long to be printed, passed to the system or
    libraries or placed into an internal buffer.  Truncation will no
    longer produce incomplete multibyte characters.
  DEPRECATED AND DEFUNCT:
  * Function plclust() from the package stats and
    package.dependencies(), pkgDepends(), getDepList(),
    installFoundDepends(), and vignetteDepends() from package tools
    are defunct.
  * Defunct functions checkNEWS() and readNEWS() from package tools
    and CRAN.packages() from utils have been removed.
  * R CMD config CXXCPP is defunct (it was deprecated in R 3.6.2).
  * parallel::detectCores() drops support for Irix (retired in 2013).
  * The LINPACK argument to chol.default(), chol2inv(),
    solve.default() and svd() has been defunct since R 3.1.0.  It was
    silently ignored up to R 4.0.3 but now gives an error.
  * Subsetting/indexing, such as ddd[*] or ddd$x on a DOTSXP
    (dot-dot-dot) object ddd has been disabled; it worked by accident
    only and was undocumented.
  BUG FIXES:
  * Many more C-level allocations (mainly by malloc and strdup) are
    checked for success with suitable alternative actions.
  * Bug fix for replayPlot(); this was turning off graphics engine
    display list recording if a recorded plot was replayed in the
    same session.  The impact of the bug became visible if resize the
    device after replay OR if attempted another savePlot() after
    replay (empty display list means empty screen on resize or empty
    saved plot).
  * R CMD check etc now warn when a package exports non-existing S4
    classes or methods, also in case of no "methods" presence.
    (Reported by Alex Bertram; reproducible example and patch by
    Sebastian Meyer in PR#16662.)
  * boxplot() now also accepts calls for labels such as ylab, the
    same as plot().  (Reported by Marius Hofert.)
  * The help page for xtabs() now correctly states that addNA is
    setting na.action = na.pass among others.  (Reported as PR#17770
    by Thomas Soeiro.)
  * The R CMD check &lt;pkg&gt; gives a longer and more comprehensible
    message when DESCRIPTION misses dependencies, e.g., in Imports:.
    (Thanks to the contributors of PR#17179.)
  * update.default() now calls the generic update() on the formula to
    work correctly for models with extended formulas.  (As reported
    and suggested by Neal Fultz in PR#17865.)
  * The horizontal position of leaves in a dendrogram is now correct
    also with center = FALSE.  (PR#14938, patch from Sebastian
    Meyer.)
  * all.equal.POSIXt() no longer warns about and subsequently ignores
    inconsistent "tzone" attributes, but describes the difference in
    its return value (PR#17277).  This check can be disabled _via_
    the new argument check.tzone = FALSE as suggested by Sebastian
    Meyer.
  * as.POSIXct() now populates the "tzone" attribute from its tz
    argument when x is a logical vector consisting entirely of NA
    values.
  * x[[2^31]] &lt;- v now works.  (Thanks to the report and patch by
    Suharto Anggono in PR#17330.)
  * In log-scale graphics, axis() ticks and label positions are now
    computed more carefully and symmetrically in their range,
    typically providing _more_ ticks, fulfilling wishes in PR#17936.
    The change really corresponds to an improved axisTicks() (package
    grDevices), potentially influencing grid and lattice, for
    example.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now correct to at
    least five digits where it was catastrophically wrong,
    previously.
  * sum(df) and similar "Summary"- and "Math"-group member functions
    now work for data frames df with logical columns, notably also of
    zero rows.  (Reported to R-devel by Martin "b706".)
  * unsplit() had trouble with tibbles due to unsound use of rep(NA,
    len)-indexing, which should use NA_integer_ (Reported to R-devel
    by Mario Annau.)
  * pnorm(x, log.p = TRUE) underflows to -Inf slightly later.
  * show(&lt;hidden S4 generic&gt;) prints better and without quotes for
    non-hidden S4 generics.
  * read.table() and relatives treated an "NA" column name as missing
    when check.names = FALSE PR#18007.
  * Parsing strings containing UTF-16 surrogate pairs such as
    "\uD834\uDD1E" works better on some (uncommon) platforms.
    sprintf("%X", utf8ToInt("\uD834\uDD1E")) should now give "1D11E"
    on all platforms.
  * identical(x,y) is no longer true for differing DOTSXP objects,
    fixing PR#18032.
  * str() now works correctly for DOTSXP and related exotics, even
    when these are doomed.
    Additionally, it no longer fails for lists with a class and
    "irregular" method definitions such that e.g. lapply(*) will
    necessarily fail, as currently for different igraph objects.
  * Too long lines in environment files (e.g. Renviron) no longer
    crash R. This limit has been increased to 100,000 bytes.
    (PR#18001.)
  * There is a further workaround for FreeType giving incorrect
    italic font faces with cairo-based graphics devices on macOS.
  * add_datalist(*, force = TRUE) (from package tools) now actually
    updates an existing data/datalist file for new content.  (Thanks
    to a report and patch by Sebastian Meyer in PR#18048.)
  * cut.Date() and cut.POSIXt() could produce an empty last interval
    for breaks = "months" or breaks = "years".  (Reported as PR#18053
    by Christopher Carbone.)
  * Detection of the encoding of 'regular' macOS locales such as
    en_US (which is UTF-8) had been broken by a macOS change:
    fortunately these are now rarely used with en_US.UTF-8 being
    preferred.
  * sub() and gsub(pattern, repl, x, *) now keep attributes of x such
    as names() also when pattern is NA (PR#18079).
  * Time differences ("difftime" objects) get a replacement and a
    rep() method to keep "units" consistent.  (Thanks to a report and
    patch by Nicolas Bennett in PR#18066.)
  * The \RdOpts macro, setting defaults for \Sexpr options in an Rd
    file, had been ineffective since R 2.12.0: it now works again.
    (Thanks to a report and patch by Sebastian Meyer in PR#18073.)
  * mclapply and pvec no longer accidentally terminate parallel
    processes started before by mcparallel or related calls in
    package parallel (PR#18078).
  * grep and other functions for evaluating (extended) regular
    expressions handle in Unicode also strings not explicitly flagged
    UTF-8, but flagged native when running in UTF-8 locale.
  * Fixed a crash in fifo implementation on Windows (PR#18031).
  * Binary mode in fifo on Windows is now properly detected from
    argument open (PR#15600, PR#18031).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1622808000">- The line %{__install} -m 755 -d %{_infodir}
  no longer works in TW or Factory.
  But without that line it works everywhere. So this instruction
  was commented out of the spec file.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1628596800">- CHANGES IN R 4.1.1:
  NEW FEATURES:
  * require(pkg, quietly = TRUE) is quieter and in particular does
    not warn if the package is not found.
  DEPRECATED AND DEFUNCT:
  * Use of ftp:// URIs should be regarded as deprecated, with
    on-going support confined to method = "libcurl" and not routinely
    tested.  (Nowadays no major browser supports them.)
  * The non-default method = "internal" is deprecated for http:// and
    ftp:// URIs for both download.file and url.
  * On Windows, method = "wininet" is deprecated for http://,
    https:// and ftp:// URIs for both download.file and url.  (A
    warning is only given for ftp://.)
    For ftp:// URIs the default method is now "libcurl" if available
    (which it is on CRAN builds).
    method = "wininet" remains the default for http:// and https://
    URIs but if libcurl is available, using method = "libcurl" is
    preferred.
  INSTALLATION:
  * make check now works also without a LaTeX installation.  (Thanks
    to Sebastian Meyer's PR#18103.)
  BUG FIXES:
  * make check-devel works again in an R build configured with
  - -without-recommended-packages.
  * qnbinom(p, size, mu) for large size/mu is correct now in a range
    of cases (PR#18095); similarly for the (size, prob)
    parametrization of the negative binomial.  Also qpois() and
    qbinom() are better and or faster for extreme cases.  The
    underlying C code has been modularized and is common to all four
    cases of discrete distributions.
  * gap.axis is now part of the axis() arguments which are passed
    from bxp(), and hence boxplot().  (Thanks to Martin Smith's
    report and suggestions in PR#18109.)
  * .First and .Last can again be set from the site profile.
  * seq.int(from, to, *) and seq.default(..) now work better in large
    range cases where from-to is infinite where the two boundaries
    are finite.
  * all.equal(x,y) now returns TRUE correctly also when several
    entries of abs(x) and abs(y) are close to .Machine$double.xmax,
    the largest finite numeric.
  * model.frame() now clears the object bit when removing the class
    attribute of a value via na.action (PR#18100).
  * charClass() now works with multi-character strings on Windows
    (PR#18104, fixed by Bill Dunlap).
  * encodeString() on Solaris now works again in Latin-1 encoding on
    characters represented differently in UTF-8.  Support for
    surrogate pairs on Solaris has been improved.
  * file.show() on Windows now works with non-ASCII path names
    representable in the current native encoding (PR#18132).
  * Embedded R on Windows can now find R home directory via the
    registry even when installed only for the current user
    (PR#18135).
  * pretty(x) with finite x now returns finite values also in the
    case where the extreme x values are close in size to the maximal
    representable number .Machine$double.xmax.
    Also, it's been tweaked for very small ranges and when a boundary
    is close (or equal) to zero; e.g., pretty(c(0,1e-317)) no longer
    has negative numbers, currently still warning about a very small
    range, and pretty(2^-(1024 - 2^-1/(c(24,10)))) is more accurate.
  * The error message for not finding vignette files when weaving has
    correct file sizes now. (Thanks to Sebastian Meyer's PR#18154.)
  * dnbinom(20, &lt;large&gt;, 1) now correctly gives 0, and similar cases
    are more accurate with underflow precaution.  (Reported by Francisco Vera Alcivar in PR#18072.)</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635163200">- repaired https://bugzilla.suse.com/show_bug.cgi?id=1191380
  (rpmacros now go to rpmmacrodir)
- minor clean-ups in spec file</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635768000">- CHANGES IN R 4.1.2:
  C-LEVEL FACILITIES:
  * The workaround in headers R.h and Rmath.h (using namespace std;)
    for the Oracle Developer Studio compiler is no longer needed now
    C++11 is required so has been removed.  A couple more usages of
    log() (which should have been std::log()) with an int argument
    are reported on Solaris.
  * The undocumented limit of 4095 bytes on messages from the
    S-compatibility macros PROBLEM and MESSAGE is now documented and
    longer messages will be silently truncated rather than
    potentially causing segfaults.
  * If the R_NO_SEGV_HANDLER environment variable is non-empty, the
    signal handler for SEGV/ILL/BUS signals (which offers recovery
    user interface) is not set. This allows more reliable debugging
    of crashes that involve the console.
  DEPRECATED AND DEFUNCT:
  * The legacy S-compatibility macros PROBLEM, MESSAGE, ERROR, WARN,
    WARNING, RECOVER, ... are deprecated and will be hidden in R
    4.2.0. R's native interface of Rf_error and Rf_warning has long
    been preferred.
  BUG FIXES:
  * .mapply(F, dots, .) no longer segfaults when dots is not a list
    and uses match.fun(F) as always documented; reported by Andrew
    Simmons in PR#18164.
  * hist(&lt;Date&gt;, ...) and hist(&lt;POSIXt&gt;, ...)  no longer pass
    arguments for rect() (such as col and density) to axis().
    (Thanks to Sebastian Meyer's PR#18171.)
  * \Sexpr{ch} now preserves Encoding(ch). (Thanks to report and
    patch by Jeroen Ooms in PR#18152.)
  * Setting the RNG to "Marsaglia-Multicarry" e.g., by RNGkind(), now
    warns in more places, thanks to Andr'e Gillibert's report and
    patch in PR#18168.
  * gray(numeric(), alpha=1/2) no longer segfaults, fixing PR#18183,
    reported by Till Krenz.
  * Fixed dnbinom(x, size=&lt;very_small&gt;, .., log=TRUE) regression,
    reported by Martin Morgan.
  * as.Date.POSIXlt(x) now keeps names(x), thanks to Davis Vaughan's
    report and patch in PR#18188.
  * model.response() now strips an "AsIs" class typically, thanks to
    Duncan Murdoch's report and other discussants in PR#18190.
  * try() is considerably faster in case of an error and long call,
    as e.g., from some do.call().  Thanks to Alexander Kaever's
    suggestion posted to R-devel.
  * qqline(y = &lt;object&gt;) such as y=I(.), now works, see also
    PR#18190.
  * Non-integer mgp par() settings are now handled correctly in
    axis() and mtext(), thanks to Mikael Jagan and Duncan Murdoch's
    report and suggestion in PR#18194.
  * formatC(x) returns length zero character() now, rather than ""
    when x is of length zero, as documented, thanks to Davis
    Vaughan's post to R-devel.
  * removeSource(fn) now retains (other) attributes(fn).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1647000000">- CHANGES IN R 4.1.3:
  NEW FEATURES:
  * The default version of Bioconductor has been changed to 3.14.
    (This is used by setRepositories and the menus in GUIs.)
  UTILITIES:
  * R CMD check --as-cran has a workaround for a bug in versions of
    file up to at least 5.41 which mis-identify DBF files last
    changed in 2022 as executables.
  C-LEVEL FACILITIES:
  * The legacy S-compatibility macros SINGLE_* in R_ext/Constants.h
    (included by R.h) are deprecated and will be removed in R 4.2.0.
  BUG FIXES:
  * Initialization of self-starting nls() models with initialization
    functions following the pre-R-4.1.0 API (without the ...
    argument) works again for now, with a deprecation warning.
  * Fixed quoting of ~autodetect~ in Java setting defaults to avoid
    inadvertent user lookup due to leading ~, reported in PR#18231 by
    Harold Gutch.
  * substr(., start, stop) &lt;- v now treats _negative_ stop values
    correctly.  Reported with a patch in PR#18228 by Brodie Gaslam.
  * Subscripting an array x without dimnames by a
    length(dim(x))-column character matrix gave "random" non-sense,
    now an error; reported in PR#18244 by Mikael Jagan.
  * ...names() now matches names(list(...)) closely, fixing PR#18247.
  * all.equal(*, scale = s) now works as intended when length(s) &gt; 1,
    partly thanks to Michael Chirico's PR#18272.
  * print(x) for long vectors x now also works for named atomic
    vectors or lists and prints the correct number when reaching the
    getOption("max.print") limit; partly thanks to a report and
    proposal by Hugh Parsonage to the R-devel list.
  * all.equal(&lt;selfStart&gt;, *) no longer signals a deprecation
    warning.
  * reformulate(*, response=r) gives a helpful error message now when
    length(r) &gt; 1, thanks to Bill Dunlap's PR#18281.
  * Modifying globalCallingHandlers inside withCallingHandlers() now
    works or fails correctly, thanks to Henrik Bengtsson's PR#18257.
  * hist(&lt;Date&gt;, breaks = "days") and hist(&lt;POSIXt&gt;, breaks = "secs")
    no longer fail for inputs of length 1.
  * qbeta(.001, .9, .009) and similar cases now converge correctly
    thanks to Ben Bolker's report in PR#17746.
  * window(x, start, end) no longer wrongly signals "'start' cannot
    be after 'end'", fixing PR#17527 and PR#18291.
  * data() now checks that its (rarely used) list argument is a
    character vector - a couple of packages passed other types and
    gave incorrect results.
  * which() now checks its arr.ind argument is TRUE rather coercing
    to logical and taking the first element - which gave incorrect
    results in package code.
  * model.weights() and model.offset() more carefully extract their
    model components, thanks to Ben Bolker and Tim Taylor's R-devel
    post.
  * list.files(recursive = TRUE) now shows all broken symlinks
    (previously, some of them may have been omitted, PR#18296).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1650628800">- CHANGES IN R 4.2.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * The formula method of aggregate() now matches the generic in
    naming its first argument x (resolving PR#18299 by Thomas
    Soeiro).
    This means that calling aggregate() with a formula as a named
    first argument requires name formula in earlier versions of R and
    name x now, so portable code should not name the argument (code
    in many packages did).
  * Calling &amp;&amp; or || with either argument of length greater than one
    now gives a warning (which it is intended will become an error).
  * Calling if() or while() with a condition of length greater than
    one gives an error rather than a warning.  Consequently,
    environment variable _R_CHECK_LENGTH_1_CONDITION_ no longer has
    any effect.
  * Windows users should consult the WINDOWS section below for some
    profound changes including
  * Support for 32-bit builds has been dropped.
  * UTF-8 locales are used where available.
  * The default locations for the R installation and personal
    library folder have been changed.
    Thanks to Tomas Kalibera for months of work on the Windows port
    for this release.
  NEW FEATURES:
  * matrix(x, n, m) now warns in more cases where length(x) differs
    from n * m, as suggested by Abby Spurdle and Wolfgang Huber in
    Feb 2021 on the R-devel mailing list.
    This warning can be turned into an error by setting environment
    variable _R_CHECK_MATRIX_DATA_ to TRUE: R CMD check --as-cran
    does so unless it is already set.
  * Function file_test() in package utils gains tests for symlinks,
    readability and writability.
  * capabilities("libxml") is now false.
    The description of capabilities("http/ftp") now reflects that it
    refers to the default method, no longer the internal one.
  * simplify2array() gains an except argument for controlling the
    exceptions used by sapply().
  * Environment variables R_LIBS_USER and R_LIBS_SITE are both now
    set to the R system default if unset or empty, and can be set to
    NULL to indicate an empty list of user or site library
    directories.
  * The warning for axis()(-like) calls in cases of relatively small
    ranges (typically in log-scale situations) is slightly improved
    _and_ suppressed from explicit calls to .axisPars() as has always
    been the intention.
  * The contrasts setter function `contrasts&lt;-` gains an explicit
    default how.many = NULL rather than just using missing(how.many).
  * grid.pretty() gains a new optional argument n = 5.
  * There is a new function .pretty() with option bounds as a
    technical-utility version of pretty().  It and pretty() gain a
    new argument f.min with a better than back-compatible default.
  * Function grDevices::axisTicks() and related functions such as
    graphics::axis() work better, notably for the log scale; partly
    because of the pretty() improvements, but also because care is
    taken e.g., when ylim is finite but diff(ylim) is infinite.
  * nclass.FD() gains a digits option.
  * The R Mathlib internal C function bd0() (called indirectly from a
    dozen probability density and distribution functions such as
    dpois(), dbinom(), dgamma(), pgamma() _etc_) has been
    complemented by a more sophisticated and (mostly) more accurate C
    function ebd0(), currently called only by internal dpois_raw()
    improving accuracy for R level dpois() and potentially others
    calling it such as dnbinom(), dgamma() or pgamma().  (Thanks to
    Morten Welinder's PR#15628.)
  * write.ftable() gains sep = " " argument as suggested by Thomas
    Soeiro.
  * The names of the locale categories supported by R's
    Sys.getlocale() and Sys.setlocale() are now provided by variable
    .LC.categories in the base namespace.
  * The Date and POSIXt methods for hist() and the histogram method
    for plot() now also use the new default col = "lightgray" in
    consistency with the corresponding change to hist()'s default for
    R 4.0.0.
  * hist.default() gains new fuzz argument, and the histogram plot
    method no longer uses fractional axis ticks when displaying
    counts ("Frequency").
  * mapply() and hence Map() now also obey the "max-or-0-if-any"
    recycling rule, such that, e.g., Map(`+`, 1:3, 1[0]) is valid
    now.
  * as.character(&lt;obj&gt;) for "hexmode" or "octmode" objects now
    fulfils the important basic rule as.character(x)[j] ===
    as.character(x[j]).
  * The set utility functions, notably intersect() have been tweaked
    to be more consistent and symmetric in their two set arguments,
    also preserving a common mode.
  * substr(ch, start,end) &lt;- new now e.g., preserves names(ch); ditto
    for substring(), thanks to a patch from Brodie Gaslam.
  * plot(&lt;lm&gt;) gains a extend.ylim.f argument, in partial response to
    PR#15285; further PR#17784 is fixed thanks to several
    contributors and a patch by Elin Waring.  The Cook's dist
    contours get customizable via cook.col and cook.lty with a
    different default color and their legend is nicer by default and
    customizable via cook.legendChanges.
  * Attempting to subset an object that is not subsettable now
    signals an error of class notSubsettableError. The
    non-subsettable object is contained in the object field of the
    error condition.
  * Subscript-out-of-bounds errors are now signaled as errors of
    class subscriptOutOfBoundsError.
  * Stack-overflow errors are now signaled as errors inheriting from
    class stackOverflowError. See ?stackOverflowError for more
    details.
  * New partly experimental Sys.setLanguage() utility, solving the
    main problem of PR#18055.
  * gettext() and gettextf() get a new option trim = TRUE which when
    set to false allows translations for strings such as "Execution
    halted\n" typical for C code.
  * An experimental implementation of hash tables is now available.
    See ?hashtab for more details.
  * identical() gains a extptr.as.ref argument for requesting that
    external pointer objects be compared as reference objects.
  * reorder() gets an argument decreasing which it passes to sort()
    for level creation; based on the wish and patch by Thomas Soeiro
    in PR#18243.
  * as.vector() gains a data.frame method which returns a simple
    named list, also clearing a long standing 'FIXME' to enable
    as.vector(&lt;data.frame&gt;, mode="list").  This breaks code relying
    on as.vector(&lt;data.frame&gt;) to return the unchanged data frame.
  * legend() is now vectorized for arguments cex, x.intersp, and
    text.width.  The latter can now also be specified as a vector
    (one element for each column of the legend) or as NA for
    computing a proper column wise maximum value of strwidth(legend).
    The argument y.intersp can be specified as a vector with one
    entry for each row of the legend.
    legend() also gains new arguments title.cex and title.font.
    Thanks to Swetlana Herbrandt.
  * Deparsing no longer remaps attribute names dim, dimnames, levels,
    names and tsp to historical S-compatible names (which structure()
    maps back).
  * sample() and sample.int() have additional sanity checks on their
    size and n arguments.
    all.equal.numeric() gains a sanity check on its tolerance
    argument - calling all.equal(a, b, c) for three numeric vectors
    is a surprisingly common error.
    mean(na.rm =), rank(na.last =), barplot(legend.text =),
    boxplot(), contour(drawlabels =), polygon(border =) and
    methods::is(class2 =) have more robust sanity checks on their
    arguments.
    R CMD Rd2pdf (used by R CMD check) has a more robust sanity check
    on the format of \alias{} commands.
  * psigamma(x, deriv) for negative x now also works for deriv = 4
    and 5; their underlying C level dpsifn() is documented in
    'Writing R Extensions'.
  * The HTML help system now uses HTML5 (wish of PR#18149).
  * ks.test() now provides exact p-values also with ties and MC
    p-values in the two-sample (Smirnov) case.  By Torsten Hothorn.
  * ks.test() gains a formula interface, with y ~ 1 for the
    one-sample (Kolmogorov) test and y ~ group for the two-sample
    (Smirnov) test.  Contributed by Torsten Hothorn.
  * The return value from ks.test() now has class c("ks.test",
    "htest") - packages using try() need to take care to use
    inherits() and not == on the class.
  * New functions psmirnov(), qsmirnov() and rsmirnov() in package
    stats implementing the asymptotic and exact distributions of the
    two-sample Smirnov statistic.
  * iconv() now allows sub = "c99" to use C99-style escapes for UTF-8
    inputs which cannot be converted to encoding to.
  * In a forward pipe |&gt; expression it is now possible to use a named
    argument with the placeholder _ in the rhs call to specify where
    the lhs is to be inserted.  The placeholder can only appear once
    on the rhs.
  * The included LAPACK sources have been updated to version 3.10.0,
    except for the four Fortran 77 routines which 3.10.0 has
    re-implemented in Fortran 90 (where the older versions have been
    retained as the R build process does not support Fortran 90).
  * path.expand() and most other uses of tilde expansion now warn if
    a path would be too long if expanded.  (An exception is
    file.exists(), which silently returns false.)
  * trunc(&lt;Date&gt;, *) now supports units = "months" or "years" for
    consistency with the POSIXt method, thanks to Dirk Eddelbuettel's
    proposal in PR#18099.
  * list2DF() now checks that its arguments are of the same length,
    rather than use recycling.
  * The HTML help system has several new features: LaTeX-like math
    can be typeset using either KaTeX or MathJax, usage and example
    code is highlighted using Prism, and for dynamic help the output
    of examples and demos can be shown within the browser if the
    knitr package is installed. These features can be disabled by
    setting the environment variable _R_HELP_ENABLE_ENHANCED_HTML_ to
    a false value.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 15
    and so packages that provide graphics devices should be
    reinstalled.
  * The grid package now allows the user to specify a "vector" of
    pattern fills.  The fill argument to gpar() accepts a list of
    gradients and/or patterns and the functions linearGradient(),
    radialGradient(), and pattern() have a new group argument.
    Points grobs (data symbols) can now also have a pattern fill.
    The grobCoords() function now returns a more informative and
    complex result.
  * The grid package has new functions for drawing isolated groups:
    grid.group(), grid.define(), and grid.use().  These functions add
    compositing operators and affine transformations to R's graphics
    capabilities.
    The grid package also has new functions for stroking and filling
    paths: grid.stroke(), grid.fill(), and grid.fillStroke().
    A new function as.path() allows the user to specify the fill rule
    for a path that is to be used for clipping, stroking, or filling;
    available options are "winding" and "evenodd".  A new function
    as.mask() allows the user to specify the type of a mask;
    available options are "alpha" and "luminance".
    These new features are only supported so far (at most) on the
    Cairo-based graphics devices and on the pdf() device.
  * dev.capabilities() reports on device support for the new
    features.
  * par() now warns about unnamed non-character arguments to prevent
    misuse such as {usr &lt;- par("usr"); par(usr)}.
  INSTALLATION:
  * Facilities for accessing ftp:// sites are no longer tested
    (except _pro tem_ for curlGetHeaders()) as modern browsers have
    removed support.
  * R can now be built with DEFS = -DSTRICT_R_HEADERS .
  PACKAGE INSTALLATION:
  * R CMD INSTALL no longer tangles vignettes. This completes an R
    CMD build change in R 3.0.0 and affects packages built before R
    3.0.2. Such packages should be re-made with R CMD build to have
    the tangled R code of vignettes shipped with the tarball.
  * USE_FC_LEN_T will become the default: this uses the correct
    prototypes for Fortran BLAS/LAPACK routines called from C/C++,
    and requires adjustment of most such calls - see 'Writing R
    Extensions' SS6.6.2.  (This has been supported since R 3.6.2.)
  * Package installation speed for packages installed with
    keep.source has been improved. This resolve the issue reported by
    Ofek Shilon in PR#18236.
  UTILITIES:
  * R CMD check can optionally report files/directories left behind
    in home, /tmp (even though TMPDIR is set) and other directories.
    See the "R Internals" manual for details.
  * R CMD check now reports byte-compilation errors during
    installation.  These are not usually fatal but may result in
    parts of the package not being byte-compiled.
  * _R_CHECK_DEPENDS_ONLY_ can be applied selectively to examples,
    tests and/or vignettes in R CMD check: see the "R Internals"
    manual.
  * _R_CHECK_SRC_MINUS_W_IMPLICIT_ now defaults to true: recent
    versions of Apple clang on macOS have made implicit function
    declarations in C into a compilation error.
  * R CMD check --as-cran makes use of the environment variable
    AUTORECONF.  See the "R Internals" manual SS8 for further details.
  * R CMD check --use-valgrind also uses valgrind when re-building
    vignettes as some non-Sweave vignettes unhelpfully comment out
    all their code when R CMD check runs vignettes.
  * Errors in re-building vignettes (unless there are LaTeX errors)
    are reported by R CMD check as ERROR rather than WARNING when
    running vignettes has been skipped (as it frequently is in CRAN
    checks and by --as-cran).
  * R CMD Rd2pdf gains a --quiet option that is used by R CMD build
    when building the PDF package manual.
  * R CMD Rd2pdf now always runs LaTeX in batch mode, consistent with
    Texinfo &gt;= 6.7. The --batch option is ignored.
  * R CMD build and R CMD check now include the Rd file name and line
    numbers in the error message of an \Sexpr evaluation failure.
  * For packages using the \doi Rd macro (now an install-time \Sexpr)
    but no other dynamic Rd content, R CMD build now produces a
    smaller tarball and is considerably faster - skipping temporary
    package installation.
  C-LEVEL FACILITIES:
  * The non-API header R_ext/R-ftp-http.h is no longer provided, as
    the entry points it covered are now all defunct.
  * A number of non-API declarations and macro definitions have been
    moved from the installed header Rinternals.h to the internal
    header Defn.h. Packages that only use entry points and
    definitions documented to be part of the API as specified in
    'Writing R Extensions' SS6 should not be affected.
  * The macro USE_RINTERNALS no longer has any effect when compiling
    package code.  Packages which also use R_NO_REMAP will need to
    ensure that the remapped names are used for calls to API
    functions that were formerly also made available as macros.
  * The deprecated legacy S-compatibility macros PROBLEM, MESSAGE,
    ERROR, WARN, WARNING, RECOVER, ... are no longer defined in
    R_exts/RS.h (included by R.h).  Replace these by calls to
    Rf_error and Rf_warning (defined in header R_ext/Error.h included
    by R.h).
    Header R_ext/RS.h no longer includes R_ext/Error.h.
  * Header R_ext/Constants.h (included by R.h) when included from C++
    now includes the C++ header cfloat rather than the C header
    float.h (now possible as C++11 is required).
  * The legacy S-compatibility macros DOUBLE_* in R_ext/Constants.h
    (included by R.h) are deprecated.
  * The deprecated S-compatibility macros SINGLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * R_Calloc, R_Free and R_Realloc are preferred to their unprefixed
    forms and error messages now use the prefix. These forms were
    introduced in R 3.4.0 and are available even when
    STRICT_R_HEADERS is defined.
  * rmultinom has been documented in 'Writing R Extensions' SS6 so is
    now part of the R API.
  * Similarly, Rtanpi, called from R level tanpi() is now part of the
    R API.
  * The long-deprecated, undocumented and non-API entry point call_R
    is no longer declared in R_ext/RS.h (included by R.h).
  * The header S.h which has been unsupported since Jan 2016 has been
    removed.  Use R.h instead.
  DEPRECATED AND DEFUNCT:
  * The (non-default and deprecated) method = "internal" for
    download.file() and url() no longer supports http:// nor ftp://
    URIs.  (It is used only for file:// URIs.)
    On Windows, download.file(method = "wininet") no longer supports
    ftp:// URIs.  (It is no longer the default method, which is
    "libcurl" and does.)
    On Windows, the deprecated method = "wininet" now gives a warning
    for http:// and https:// URIs for both download.file() and url().
    (It is no longer the default method.)
  * On Windows, the command-line option --max-mem-size and
    environment variable R_MAX_MEM_SIZE are defunct.  The memory
    allocation limit was important for 32-bit builds, but these are
    no longer supported.
  * default.stringsAsFactors() is now formally deprecated, where that
    was only mentioned on its regular help page, previously.  So it
    now gives a warning if called.
  * unix.time() is defunct now; it had been deprecated since R 3.4.0.
  BUG FIXES:
  * Setting digits = 0 in format(), print.default() (and hence
    typically print()) or options() is again invalid.  Its behaviour
    was platform-dependent, and it is unclear what "zero significant
    digits" should mean (PR#18098).
  * Messages from C code in the cairo section of package grDevices
    are now also offered for translation, thanks to Michael Chirico's
    PR#18123.
  * mean(x) with finite x now is finite also without "long.double"
    capability.
  * R CMD Rd2pdf no longer leaves an empty build directory behind
    when it aborts due to an already existing output file.  (Thanks
    to Sebastian Meyer's PR#18141.)
  * density(x, weights = w, na.rm = TRUE) when anyNA(x) is true, now
    removes weights "in parallel" to x, fixing PR#18151, reported by
    Matthias Gondan.  Additionally, it gets a subdensity option.
  * Conversion of \Sexpr[]{&lt;expR&gt;} to LaTeX or HTML no longer
    produces long blocks of empty lines when &lt;expR&gt; itself contains
    several lines all producing empty output.  Thanks to a report and
    patch by Ivan Krylov posted to R-devel.
  * R CMD build no longer fails if a package vignette uses child
    documents and inst/doc exists.  (Thanks to Sebastian Meyer's
    PR#18156.)
  * When an R documentation ('help' source) file man/foo.Rd in a
    package has \donttest{..} examples with a syntax error, it is now
    signalled as ERROR and with correct line numbers relating to the
  * -Ex.R file, thanks to Duncan Murdoch and Sebastian Meyer's
    reports and patch proposals in PR#17501.
  * Improved determination of the correct translation domain in
    non-base packages, addressing the combination of PR#18092 and
    PR#17998 (#c6) with reports and _augmented_ patch #2904 by
    Suharto Anggono.
    Note that "R-base" is no longer the default domain e.g., for
    top-level calls to gettext(); rather translation needs explicit
    domain = * specification in such cases.
  * identical(attrib.as.set=FALSE) now works correctly with data
    frames with default row names (Thanks to Charlie Gao's PR#18179).
  * txtProgressBar() now enforces a non-zero width for argument char,
    without which no progress can be visible.
  * dimnames(table(d)) is more consistent in the case where d is a
    list with a single component, thanks to Thomas Soeiro's report to
    R-devel.
    Further, table(d1, d2) now gives an error when d1 and d2 are data
    frames as suggested by Thomas in PR#18224.
  * Fix for drawing semi-transparent lines and fills on the native
    Windows graphics device (PR#18219 and PR#16694).  Thanks to Nick
    Ray for helpful diagnosis on Bugzilla.
  * The deparser now wraps sub-expressions such as if(A) ..  with
    parentheses when needed; thanks to Duncan Murdoch's PR#18232 and
    Lionel Henry's patches there.
  * remove.packages() no longer tries to uninstall Priority: base
    packages, thanks to a report and suggestions by Colin Fay in
    PR#18227.
  * win.metafile() now has xpinch and ypinch arguments so that the
    user can override Windows' (potentially wrong) guess at device
    dimensions.
  * x[i] and x[[i]] for non-integer i should now behave in all cases
    as always documented: the index used is equivalent to
    as.integer(i) unless that would overflow where trunc(i) is used
    instead; thanks to Suharto Anggono's report and patch proposals
    in PR#17977.
  * asOneSidedFormula() now associates the resulting formula with the
    global environment rather than the evaluation environment created
    for the call.
  * &lt;bibentry&gt;$name now matches the field name case-insensitively,
    consistent with bibentry() creation and the replacement method.
  * cbind() failed to detect some length mismatches with a mixture of
    time-series and non-time-series inputs.
  * The default LaTeX style file Sweave.sty used by the RweaveLatex
    driver no longer loads the obsolete ae package; thanks to a
    report by Thomas Soeiro in PR#18271.  Furthermore, it now skips
    \usepackage[T1]{fontenc} for engines other than pdfTeX (if
    detected) or if the new [nofontenc] option is used.
  * smooth.spline() now stores its logical cv argument more safely,
    fixing a rare bug when printing, and also stores n.
  * smooth.spline(x,y,*) now computes the cv.crit statistic
    correctly, also when is.unsorted(x), fixing PR#18294.
  * The data.frame method of rbind() now warns when binding
    not-wholly-recycling vectors, by analogy to the default method
    (for matrices).
  * setAs() finds the correct class for name to when multiple
    packages define a class with that name. Thanks to Gabor Csardi
    for the report.
  * Fix for detaching a package when two classes of the same name are
    present in method signatures for the same generic. Thanks to
    Gabor Csardi for the report.
  * match.arg("", c("", "a", "B")) gives a better error message, in
    part from PR#17959, thanks to Elin Waring.
  * R CMD Sweave --clean no longer removes pre-existing files or
    subdirectories (PR#18242).
  * The quartz() device no longer splits polylines into subpaths.
    That has caused narrowly-spaced lines with many points to always
    look solid even when dashed line type was used due to dash phase
    restarts.
  * Deparsing constructs such as quote(1 + `!`(2) + 3) works again as
    before R 3.5.0, thanks to the report and patch in PR#18284 by
    Suharto Anggono.
  * as.list(f) for a factor f now keeps names(f), fixing PR#18309.
  * qbeta(.001, .9, .009) and analogous qf() calls now return a
    correct value instead of NaN or wrongly 1, all with a warning;
    thanks to the report by Ludger Goeminne in PR#18302.
  * plot.lm() failed to produce the plot of residuals vs.  factor
    levels (i.e., which=5 when leverages are constant) for models
    with character predictors (PR#17840).
  * interaction.plot(..., xtick = TRUE) misplaced the x-axis line
    (PR#18305).
  * Not strictly fixing a bug, format()ing and print()ing of
    non-finite Date and POSIXt values NaN and +/-Inf no longer show
    as NA but the respective string, e.g., Inf, for consistency with
    numeric vector's behaviour, fulfilling the wish of PR#18308.
  * R CMD check no longer runs test scripts generated from
    corresponding .Rin files twice and now signals an ERROR if
    processing an .Rin script fails.
  * tools::Rd2txt() used for plain-text help pages now renders \hrefs
    (if tools::Rd2txt_options(showURLs = TRUE)) and \urls with
    percent-encoding and standards-compliant delimiting style (angle
    brackets and no URL: prefix).  \email is now rendered with a
    mailto: prefix.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1655985600">- CHANGES IN R 4.2.1:
  NEW FEATURES:
  * New function utils::findCRANmirror() to find out if a CRAN mirror
    has been selected, otherwise fallback to the main site.  This
    behaves in the same way as tools::CRAN_package_db() and is
    intended for packages wishing to access CRAN for purposes other
    than installing packages.
    The need for this was shown by a day when the main CRAN website
    was offline and a dozen or so packages which had its URL
    hardcoded failed their checks.
  INSTALLATION on a UNIX-ALIKE:
  * The libraries searched for by --with-blas (without a value) now
    include BLIS (after OpenBLAS but before ATLAS).  And on macOS,
    the Accelerate framework (after ATLAS).  (This is patterned after
    the AX_BLAS macro from the Autoconf Archive.)
  * The included LAPACK sources have been updated to 3.10.1.
  UTILITIES:
  * The (full path to) the command tidy to be used for HTML
    validation can be set by environment variable R_TIDYCMD.
  * Setting environment variable _R_CHECK_RD_VALIDATE_RD2HTML_ to a
    false value will override R CMD check --as-cran and turn off HTML
    validation.  This provides a way to circumvent a problematic
    tidy.
    The 2006 version that ships with macOS is always skipped.
  C-LEVEL FACILITIES:
  * The undocumented legacy declarations of Sint, Sfloat, SINT_MAX
    and SINT_MIN in header R.h are deprecated.
  BUG FIXES:
  * fisher.test(d) no longer segfaults for "large" d; fixing PR#18336
    by preventing/detecting an integer overflow reliably.
  * tar(., files=*) now produces correctly the warning about invalid
    uid or gid of files, fixing PR#18344, reported by Martin Morgan.
  * tk_choose.files() with multi = FALSE misbehaved on paths
    containing spaces (PR#18334) (regression introduced in R 4.0.0).
  * sort(x, partial = ind, *) now works correctly notably for the
    non-default na.last = FALSE or TRUE, fixing PR#18335 reported by
    James Edwards.
  * Environment variable _R_CHECK_XREFS_REPOSITORIES_ is only used
    for checking .Rd cross-references in R CMD check (as documented)
    and not for other uses looking for a CRAN mirror.
  * The search for a CRAN mirror when checking packages now uses
    getOption("repos") if that specifies a CRAN mirror, even when it
    does not also specify all three Bioconductor repositories (as was
    previously required).
  * The HTML code generated by tools::Rd2HTML() has been improved to
    pass tidy 5.8.0.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1667217600">- CHANGES IN R 4.2.2:
  NEW FEATURES:
  * tools::Rdiff(useDiff = TRUE) checks for the presence of an
    external diff command and switches to useDiff = FALSE if none is
    found.  This allows R CMD Rdiff to always work.
  * On Windows, environment variable R_LIBCURL_SSL_REVOKE_BEST_EFFORT
    can be used to switch to only 'best-effort' SSL certificate
    revocation checks with the default "libcurl" download method.
    This reduces security, but may be needed for downloads to work
    with MITM proxies (PR#18379).
  * (macOS) The run-time check for libraries from XQuartz for X11 and
    Tcl/Tk no longer uses otool from the Apple Developer Tools
    (PR#18400).
  * The LaTeX style for producing the PDF manuals, Rd.sty, now loads
    the standard amsmath, amsfonts and amssymb packages for greater
    coverage of math commands in the Rd \eqn and \deqn macros.  The
    \mathscr LaTeX command is also provided (via the mathrsfs
    package, if available, or the amsfonts bundle otherwise),
    fulfilling the wish of PR#18398.
  * (Windows) The default format of readClipboard() and
    writeClipboard() has been changed to 13 (CF_UNICODETEXT).
  INSTALLATION on a UNIX-ALIKE:
  * The PDF manuals (if built) can be compacted by the new target
    make compact-pdf (at the top level or in directory doc/manual).
  * There is now configure support for LLVM clang 15 on Linux, which
    defaults to position-independent (PIE) executables whereas
    gfortran does not.
  * Many small changes to ease compilation (and suppress warnings)
    with LLVM clang 15.
  BUG FIXES:
  * Rscript -e would fail if stdin were closed (Reported by Henrik
    Bengtsson.)
  * qt(*, log.p=TRUE) in outer tails no longer produces NaN in its
    final steps, thus fixing PR#18360.
  * tools::Rd2latex() now escapes hashes and ampersands when writing
    URLs, fixing LaTeX errors with such URLs in \tabular.
  * When isGeneric(f, fdef=*) is used with mismatching names, the
    warning is better understandable; reported (with fix) in PR#18370
    by Gabe Becker.
  * poly(x, n) now works again (and is now documented) when x is a
    "Date" or "POSIXct" object, or of another class while fulfilling
    mode(x) == "numeric".  This also enables poly(x, *, raw=TRUE) for
    such variables.  Reported by Michael Chirico to R-devel.
  * write.table(), write.csv() and write.csv2() restore their
    numerical precision (internal equivalent of digits = 15) after an
    interrupt (PR#18384).
  * One can now read also byte FF from a clipboard connection
    (PR#18385).
  * source("") and source(character()) now give more helpful error
    messages.
  * R CMD check --as-cran set _R_CHECK_TIMINGS_ too late to have the
    intended effect.
  * as.POSIXlt(x) now also works with very large dates x, fixing
    PR#18401 reported by Hannes M"uhleisen.
  * Files can now be extracted even from very large zip archives
    (PR#18390, thanks to Martin Jakt).
  * Non-finite objects of class "POSIXlt" are now correctly coerced
    to classes "Date" and "POSIXct"; following up on the extension to
    format() them correctly.
  * Added methods for is.finite(), is.infinite() and is.nan() for
    "POSIXlt" date-time objects.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1678881600">- CHANGES IN R 4.2.3:
  C-LEVEL FACILITIES:
  * The definition of DL_FUNC in R_ext/Rdynload.h has been changed to
    be fully C-compliant.  This means that functions loaded _via_ for
    example R_GetCCallable need to be cast to an appropriate type if
    they have any arguments.
  * .Machine has a new element sizeof.time_t to identify old systems
    with a 32-bit type and hence a limited range of date-times (and
    limited support for dates millions of years from present).
  PACKAGE INSTALLATION:
  * (Windows) The default C++ standard had accidentally been left at
    C++11 when it was changed to C++14 on Unix.
  BUG FIXES:
  * As "POSIXlt" objects may be "partially filled" and their list
    components meant to be recycled, length() now is the length of
    the longest component.
  * as.POSIXlt.Date() could underflow for dates in the far past (more
    than half a million years BCE).
  * as.Date.POSIXlt(x) would return "1970-01-01" instead of NA in R
    4.2.2, e.g., for
    x &lt;- as.POSIXlt(c("2019-01-30","2001-1-1"))
    x$mon &lt;- c(0L, NA); as.Date(x)
  * R CMD check failed to apply enabled _R_CHECK_SUGGESTS_ONLY_ to
    examples and vignettes (regression in R 4.2.0).
  * R CMD check did not re-build vignettes in separate processes by
    default (regression in R 4.2.0).
  * Running examples from HTML documentation now restores previous
    knitr settings and options (PR#18420).
  * Quartz: fonts are now located using Core Graphics API instead of
    deprecated ATS which is no longer supported in the macOS 13 SDK
    (PR#18426).  This also addresses an issue where the currently
    used font in the Quartz device context was not correctly
    retained.
  * (Windows) Math symbols in text drawing functions are again
    rendered correctly (PR#18440).  This fixes a regression in R
    4.2.1 caused by a fix in PR#18382 which uncovered an issue in
    GraphApp due to which the symbol charset was not used with TT
    Symbol font face.
  * (Windows) Installing a package with a src/Makefile.{win,ucrt}
    file includes ~/.R/Makevars.win64 in the search for user
    makevars, as documented in "R Installation and Administration"
    and done for packages with a src/Makevars.{win,ucrt} file.
  * format(&lt;POSIXlt_w/_unbalanced_sec&gt;, "....%OS&lt;n&gt;") with n &gt; 0 no
    longer accidentally uses the unbalanced seconds, thanks to
    Suharto Anggono's report (including patch) in PR#18448.
  * solve.default(a, b) works around issues with some versions of
    LAPACK when a contains NA or NaN values.
  * When UseMethod() cannot dispatch, it no longer segfaults
    producing the error message in case of a long class(), thanks to
    Joris Vankerschaver's report (including patch) in PR#18447.
  * When example(foo, ..) produces graphics on an interactive device
    it needs to open itself, it now leaves devAskNewPage() unchanged
    even when it was FALSE, thus fixing a 14 years old '&lt;FIXME&gt;'.
  * packageDescription() again catches errors from encoding
    conversions. This also fixes broken packageVersion() in C locale
    on systems where iconv does not support transliteration.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1681128000">- add patch to build with libcurl &gt;= 8</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1682078400">- CHANGES IN R 4.3.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Calling &amp;&amp; or || with LHS or (if evaluated) RHS of length greater
    than one is now always an error, with a report of the form
    'length = 4' in coercion to 'logical(1)'
    Environment variable _R_CHECK_LENGTH_1_LOGIC2_ no longer has any
    effect.
  NEW FEATURES:
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.10.1.  (This caused some platform-dependent
    changes to package check output.)  And then to the sources from
    LAPACK version 3.11.0 (with changes only to double complex
    subroutines).
  * The included LAPACK sources have been updated to include the four
    Fortran 90 routines rather than their Fortran 77 predecessors.
    This may give some different signs in SVDs or
    eigendecompositions..  (This completes the transition to LAPACK
    3.10.x begun in R 4.2.0.)
  * The LAPACK sources have been updated to version 3.11.0.  (No new
    subroutines have been added, so this almost entirely bug fixes:
    Those fixes do affect some computations with NaNs, including R's
    NA.)
  * The parser now signals _classed_ errors, notably in case of the
    pipe operator |&gt;.  The error object and message now give line and
    column numbers, mostly as proposed and provided by Duncan Murdoch
    in PR#18328.
  * toeplitz() is now generalized for asymmetric cases, with a
    toeplitz2() variant.
  * xy.coords() and xyz.coords() and consequently, e.g., plot(x,y,
    log = "y") now signal a _classed_ warning about negative values
    of y (where log(.) is NA).  Such a warning can be specifically
    suppressed or caught otherwise.
  * Regular expression functions now check more thoroughly whether
    their inputs are valid strings (in their encoding, e.g. in
    UTF-8).
  * The performance of grep(), sub(), gsub() and strsplit() has been
    improved, particularly with perl = TRUE and fixed = TRUE.  Use of
    useBytes = TRUE for performance reasons should no longer be
    needed and is discouraged: it may lead to incorrect results.
  * apropos() gains an argument dot_internals which is used by the
    completion (help(rcompgen)) engine to also see base internals
    such as .POSIXct().
  * Support in tools::Rdiff() for comparing uncompressed PDF files is
    further reduced - see its help page.
  * qqplot(x, y, ...) gains conf.level and conf.args arguments for
    computing and plotting a confidence band for the treatment
    function transforming the distribution of x into the distribution
    of y (Switzer, 1976, _Biometrika_). Contributed by Torsten
    Hothorn.
  * Performance of package_dependencies() has been improved for cases
    when the number of dependencies is large.
  * Strings newly created by gsub(), sub() and strsplit(), when any
    of the inputs is marked as "bytes", are also marked as "bytes".
    This reduces the risk of creating invalid strings and accidental
    substitution of bytes deemed invalid.
  * Support for readLines(encoding = "bytes") has been added to allow
    processing special text files byte-by-byte, without creating
    invalid strings.
  * iconv(from = "") now takes into account any declared encoding of
    the input elements and uses it in preference to the native
    encoding.  This reduces the risk of accidental creation of
    invalid strings, particularly when different elements of the
    input have different encoding (including "bytes").
  * Package repositories in getOption("repos") are now initialized
    from the repositories file when utils is loaded (if not already
    set, e.g., in .Rprofile).  (From a report and patch proposal by
    Gabriel Becker in PR#18405.)
  * compactPDF() gets a verbose option.
  * type.convert() and hence read.table() get new option tryLogical =
    TRUE with back compatible default.  When set to false, converts
    "F" or "T" columns to character.
  * Added new unit prefixes "R" and "Q" for abbreviating
    (unrealistically large) sizes beyond 10^{27} in standard = "SI",
    thanks to Henrik Bengtsson's PR#18435.
  * as.data.frame()'s default method now also works fine with atomic
    objects inheriting from classes such as "roman", "octmode" and
    "hexmode", such fulfilling the wish of PR#18421, by Benjamin
    Feakins.
  * The as.data.frame.vector() utility now errors for wrong-length
    row.names.  It warned for almost six years, with "Will be an
    error!".
  * sessionInfo() now also contains La_version() and reports codepage
    and timezone when relevant, in both print() and toLatex() methods
    which also get new option tzone for displaying timezone
    information when locale = FALSE.
  * New function R_compiled_by() reports the C and Fortran compilers
    used to build R, if known.
  * predict(&lt;lm&gt;, newdata = *) no longer unnecessarily creates an
    offset of all 0s.
  * solve() for complex inputs now uses argument tol and by default
    checks for 'computational singularity' (as it long has done for
    numeric inputs).
  * predict(&lt;rank-deficient lm&gt;, newdata=*) now obeys a new argument
    rankdeficient, with new default "warnif", warning only if there
    are non-estimable cases in newdata.  Other options include
    rankdeficient = "NA", predicting NA for non-estimable newdata
    cases.  This addresses PR#15072 by Russ Lenth and is based on his
    original proposal and discussions in PR#16158 also by David Firth
    and Elin Waring.  Still somewhat experimental.
  * Rgui console implementation now works better with the NVDA screen
    reader when the full blinking cursor is selected.  The underlying
    improvements in cursor handling may help also other screen
    readers on Windows.
  * The drop-field control in GraphApp can now be left with the TAB
    key and all controls can be navigated in the reverse order using
    the Shift+TAB key, improving accessibility of the Rgui
    configuration editor.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now fully accurate
    (instead of to "only" minimally five digits).
  * demo(error.catching) now also shows off withWarnings() and
    tryCatchWEMs().
  * As an experimental feature the placeholder _ can now also be used
    in the rhs of a forward pipe |&gt; expression as the first argument
    in an extraction call, such as _$coef. More generally, it can be
    used as the head of a chain of extractions, such as _$coef[[2]].
  * Spaces in the environment variable used to choose the R session's
    temporary directory (TMPDIR, TMP and TEMP are tried in turn) are
    now fatal.  (On Windows the 'short path' version of the path is
    tried and used if that does not contain a space.)
  * all.equal.numeric() gets a new optional switch giveErr to return
    the numeric error as attribute.  Relatedly,
    stopifnot(all.equal&lt;some&gt;(a, b, ..)) is as "smart" now, as
    stopifnot(all.equal(....)) has been already, thus allowing
    customized all.equal&lt;Some&gt;() wrappers.
  * R on Windows is now able to work with path names longer than 260
    characters when these are enabled in the system (requires at
    least Windows 10 version 1607).  Packages should be updated to
    work with long paths as well, instead of assuming PATH_MAX to be
    the maximum length.  Custom front-ends and applications embedding
    R need to update their manifests if they wish to allow this
    feature.  See
    &lt;https://blog.r-project.org/2023/03/07/path-length-limit-on-windows&gt;
    for more information.
  * 'Object not found' and 'Missing argument' errors now give a more
    accurate error context. Patch provided by Lionel Henry in
    PR#18241.
  * The @ operator is now an S3 generic. Based on contributions by
    Tomasz Kalinowski in PR#18482.
  * New generic chooseOpsMethod() provides a mechanism for objects to
    resolve cases where two suitable methods are found for an Ops
    Group Generic. This supports experimenting with alternative
    object systems. Based on contributions by Tomasz Kalinowski in
    PR#18484.
  * inherits(x, what) now accepts values other than a simple
    character vector for argument what. A new generic, nameOfClass(),
    is called to resolve the class name from what. This supports
    experimenting with alternative object systems. Based on
    contributions by Tomasz Kalinowski in PR#18485.
  * Detection of BLAS/LAPACK in use (sessionInfo()) with FlexiBLAS
    now reports the current backend.
  * The "data.frame" method for subset() now warns about extraneous
    arguments, typically catching the use of = instead of == in the
    subset expression.
  * Calling a:b when numeric a or b is longer than one may now be
    made into an error by setting environment variable
    _R_CHECK_LENGTH_COLON_ to a true value, along the proposal in
    PR#18419 by Henrik Bengtsson.
  * density(x, weights = *) now warns if automatic bandwidth
    selection happens without using weights; new optional warnWbw may
    suppress the warning.  Prompted by Christoph Dalitz' PR#18490 and
    its discussants.
  * rm(list = *) is faster and more readable thanks to Kevin Ushey's
    PR#18492.
  * The plot.lm() function no longer produces a normal Q-Q plot for
    GLMs. Instead it plots a half-normal Q-Q plot of the absolute
    value of the standardized deviance residuals.
  * The print() method for class "summary.glm" no longer shows
    summary statistics for the deviance residuals by default.  Its
    optional argument show.residuals can be used to show them if
    required.
  * The tapply() function now accepts a data frame as its X argument,
    and allows INDEX to be a formula in that case. by.data.frame()
    similarly allows INDICES to be a formula.
  * The performance of df[j] &lt;- value (including for missing j) and
    write.table(df) has been improved for data frames df with a large
    number of columns.  (Thanks to Gabriel Becker's PR#18500,
    PR#18503 and discussants, prompted by a report from Toby Dylan
    Hocking on the R-devel mailing list.)
  * The matrix multiply operator %*% is now an S3 generic, belonging
    to new group generic matrixOps.  From Tomasz Kalinowski's
    contribution in PR#18483.
  * New function array2DF() to convert arrays to data frames,
    particularly useful for the list arrays created by tapply().
  DATES and TIMES:
  * On platforms where (non-UTC) datetimes before 1902 (or before
    1900 as with system functions on recent macOS) are guessed by
    extrapolating time zones from 1902-2037, there is a warning at
    the first use of extrapolation in a session.  (As all time zones
    post 2037 are extrapolation, we do not warn on those.)
  * (Platforms using --with-internal-tzone, including Windows and by
    default macOS). How years are printed in dates or date-times can
    be controlled by environment variable R_PAD_YEARS_BY_ZERO.  The
    default remains to pad to 4 digits by zeroes, but setting value
    no gives no padding (as used by default by glibc).
  * strftime() tries harder to determine the offset for the "%z"
    format, and succeeds on the mainstream R platforms.
  * strftime() has a limit of 2048 bytes on the string produced -
    attempting to exceed this is an error.  (Previously it silently
    truncated at 255 bytes.)
  * sessionInfo() records (and by default prints) the system time
    zone as part of the locale information.  Also, the source
    (system/internal) of the date-time conversion and printing
    functions.
  * Objects of class "POSIXlt" created in this version of R always
    have 11 components: component zone is always set, and component
    gmtoff is set for times in UTC and usually set on the (almost
    all) platforms which have C-level support, otherwise is NA.
  * There are comprehensive validity checks on the structure of
    objects of class "POSIXlt" when converting (including formatting
    and printing).  (This avoids mis-conversions of hand-crafted
    objects.)
  * There is some support for using the native date-time routines on
    macOS: this is only viable on recent versions (e.g. 12.6 and 13)
    and does get wrong some historical changes (before 1900, during
    WWII).  Use of --with-internal-tzone remains the default.
  * as.POSIXct(&lt;numeric&gt;) and as.POSIXlt(.) (without specifying
    origin) now work.  So does as.Date(&lt;numeric&gt;).
  * as.Date.POSIXct(., tz) now treats several tz values, notably
    "GMT" as equivalent to "UTC", proposed and improved by Michael
    Chirico and Joshua Ulrich in PR#17674.
  * Experimental balancePOSIXlt() utility allows using "ragged" and
    or out-of-range "POSIXlt" objects more correctly, e.g., in
    subsetting and subassignments.  Such objects are now documented.
    More experimentally, a "POSIXlt" object may have an attribute
    "balanced" indicating if it is known to be filled or fully
    balanced.
  * Functions axis.Date() and axis.POSIXct() are rewritten to gain
    better default tick locations and better default formats by using
    prettyDate(). Thanks to Swetlana Herbrandt.
  * The mapping of Windows' names for time zones to IANA's 'Olson'
    names has been updated.  When ICU is available (it is by
    default), it is used to get a mapping for the current region set
    in Windows.  This can be overridden by setting environment
    variable TZ to the desired Olson name - see OlsonNames() for
    those currently available.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 16
    and so packages that provide graphics devices should be
    reinstalled.
  * The grDevices and grid packages have new functions for rendering
    typeset glyphs, primarily: grDevices::glyphInfo() and
    grid::grid.glyph().
    Rendering of typeset glyphs is only supported so far on the
    Cairo-based graphics devices and on the pdf() and quartz()
    devices.
  * The defined behaviour for "clear" and "source" compositing
    operators (via grid::grid.group()) has been changed (to align
    better with simple interpretation of original Porter-Duff
    definitions).
  * Support for gradients, patterns, clipping paths, masks, groups,
    compositing operators, and affine transformations has been added
    to the quartz() device.
  INSTALLATION on a UNIX-ALIKE:
  * A system installation of generic LAPACK 3.10.0 or later will be
    preferred to the version in the R sources.
    configure option --with-lapack=no (equivalently --without-lapack)
    forces compilation of the internal LAPACK sources.
    If --with-lapack is not specified, a system liblapack is looked
    for and used if it reports version 3.10.0 or later and does not
    contain BLAS routines.
    Packages using LAPACK will need to be reinstalled if this changes
    to using an external library.
  * On aarch64 Linux platforms using GCC, configure now defaults to
  - fPIC (instead of -fpic), as desired in PR#18326.
  * configure now checks conversion of datetimes between POSIXlt and
    POSIXct around year 2020.  Failure (which has been seen on
    platforms missing tzdata) is fatal.
  * If configure option --with-valgrind-instrumentation is given
    value 1 or 2, option --with-system-valgrind-headers is now the
    default and ignored (with a warning).  It is highly recommended
    that the system headers are installed alongside valgrind: they
    are part of its packaging on some Linux distributions and
    packaged separately (e.g. in the valgrind-devel RPM) on others.
    configure will give a warning if they are not found.
    The system headers will be required in a future release of R to
    build with valgrind instrumentation.
  * libcurl 8.x is now accepted by configure: despite a change in
    major version number it changes neither API nor ABI.
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools43, an update of the Rtools42 toolchain.  It is
    based on gcc 12 and newer versions of MinGW-W64, binutils and
    libraries.  At this time R-devel can still be built using
    Rtools42 without changes, but when R-devel is installed via the
    installer, it will by default look for Rtools43.
  * Old make targets rsync-extsoft and 32-bit ones that are no longer
    needed have been removed.
  * Default builds (including for packages) no longer select C99.
    Thus the C standard used is the default for the compiler, which
    for the toolchain in Rtools43 is C17.  (This is consistent with
    Unix builds.)
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++17 where
    available (which it is on all currently checked platforms): if
    not C++14 or C++11 is used if available otherwise C++ is not
    supported.
  * USE_FC_LEN_T is the default: this uses the correct
    (compiler-dependent) prototypes for Fortran BLAS/LAPACK routines
    called from C/C++, and requires adjustment of many such calls -
    see 'Writing R Extensions' SS6.6.1.
  * There is initial support for C++23 as several compilers are now
    supporting -std=c++23 or -std=c++2b or similar.  As for C++20,
    there no additional configure checks for C++23 features beyond a
    check that the compiler reports a __cplusplus value greater than
    that in the C++20 standard.  C++ feature tests should be used.
  * There is support for a package to indicate the version of the C
    standard which should be used to compile it, and for the
    installing user to specify this.  In most cases R defaults to the
    C compiler's default standard which is C17 (a `bug-fix' of C11) -
    earlier versions of R or compilers may have defaulted to C99.
    Current options are:
    USE_C17 Use a standard that is at most C17.  The intention is to
    allow legacy packages to still be installed when later C
    standards become the default, including packages using new
    keywords as identifiers or with K&amp;R-style function
    declarations.  This will use C17 if available, falling back
    to C11.
    USE_C90 Use the C90 (aka C89) standard.  (As that standard did
    not require compilers to identify that version, all we can
    verify is that the compiler does not claim to be using a
    later standard.  It may accept C99 features - for example
    clang accepts // to make comments.)
    USE_C99 Use the C99 standard. This should be rarely needed - it
    avoids the few new features of C11/C17 which can be useful if
    a package assumes them if C17 is specified and they are not
    implemented.
    USE_C23 Use C23 (or in future, later).  Compiler/library support
    for C23 is still being implemented, but LLVM clang from
    15.0.0 and the upcoming GCC 13 have quite extensive support.
    These can be specified as part of the SystemRequirements field in
    the package's DESCRIPTION file or _via_ options --use-C17 and so
    on of R CMD INSTALL and R CMD SHLIB.
    For further details see "Writing R Extensions" SS1.2.5.
  * (Windows) A src/Makefile.ucrt or src/Makefile.win file is now
    included after R_HOME/etcR_ARCH/Makeconf and so no longer needs
    to include that file itself.  Installation of a package with such
    a file now uses a site Makevars file in the same way as a package
    with a src/Makevars.win file would.
  * configure is now passed crucial variables such as CC and CFLAGS
    in its environment, as many packages were not setting them (as
    documented in 'Writing R Extensions' SS1.2).
    This has most effect where configure is used to compile parts of
    the package - most often by cmake or libtool which obfuscate the
    actual compile commands used.
    Also used for configure.win and configure.ucrt on Windows.
  FORTRAN FLAGS:
  * The flag -fno-optimize-sibling-calls is no longer forced for
    gfortran 7 and later.  It should no longer be needed now using
    'hidden' character-length arguments when calling BLAS/LAPACK
    routines from C/C++ is the default even for packages.  (Unless
    perhaps packages call Fortran code from C/C++ without using R's
    headers and without allowing for these arguments.)
  C-LEVEL FACILITIES:
  * The deprecated S-compatibility macros DOUBLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * The deprecated legacy typedefs of Sint and Sfloat in header R.h
    are no longer defined, and that header no longer includes header
    limits.h from C nor climits from C++.
  * New macro CAD5R() is provided in Rinternals.h and used in a few
    places in the R sources.
  * ALTREP now supports VECSXP vectors. Contributed by Gabor Csardi
    in PR#17620.
  * The Rcomplex definition (in header R_ext/Complex.h) has been
    extended to prevent possible mis-compilation when interfacing
    with Fortran (PR#18430).  The new definition causes compiler
    warnings with static initializers such as {1, 2}, which can be
    changed to {.r=1, .i=2}.
    Using the new definition from C++ depends on compiler extensions
    supporting C features that have not been incorporated into the
    C++ standards but are available in g++ and clang++: this may
    result in C++ compiler warnings but these have been worked around
    for recent versions of common compilers (GCC, Apple/LLVM clang,
    Intel).
    It is intended to change the inclusion of header R_ext/Complex.h
    by other R headers, so C/C++ code files which make use of
    Rcomplex should include that header explicitly.
  UTILITIES:
  * R CMD check does more checking of package .Rd files, warning
    about invalid email addresses and (some) invalid URIs and noting
    empty \item labels in description lists.
  * R CMD check now also reports problems when reading package news
    in md (file NEWS.md) and (optionally) plain text (file NEWS)
    formats.
  * _R_CHECK_TIMINGS_ defaults to a value from the environment even
    for R CMD check --as-cran; this allows for exceptionally fast or
    slow platforms.
    It now applies to checking PDF and HTML versions of the manuals,
    and 'checking CRAN incoming feasibility'.
  * R CMD check can optionally (but included in --as-cran) check
    whether HTML math rendering _via_ KaTeX works for the package .Rd
    files.
  * Non-interactive debugger invocations can be trapped by setting
    the environment variable _R_CHECK_BROWSER_NONINTERACTIVE_ to a
    true value.  This is enabled by R CMD check --as-cran to detect
    the use of leftover browser() statements in the package.
  * The use of sprintf and vsprintf from C/C++ has been deprecated in
    macOS 13 and is a known security risk.  R CMD check now reports
    (on all platforms) if their use is found in compiled code:
    replace by snprintf or vsnprintf respectively. [*NB:* whether
    such calls get compiled into the package is platform-dependent.]
  * Where recorded at installation, R CMD check reports the C and
    Fortran compilers used to build R.
    It reports the OS in use (if known, as given by osVersion) as
    well as that R was built for.
    It notes if a C++ standard was specified which is older than the
    current default: many packages have used C++11 to mean 'not
    C++98' - as C++11 is the minimum supported since R 4.0.0, that
    specification can probably be removed.
  * R CMD INSTALL reports the compilers (and on macOS, the SDK) used,
    and this is copied to the output of R CMD check.
    Where a C++ standard is specified, it is reported.
  * R CMD check's 'checking compilation flags in Makevars' has been
    relaxed to accept the use of flags such as -std=f2008 in
    PKG_FFLAGS.
  * tools::buildVignettes() has a new argument skip, which is used by
    R CMD check to skip (and note) vignettes with unavailable
    \VignetteDepends (PR#18318).
  * New generic .AtNames() added to enable class-specific completions
    after @. The formerly internal function findMatches() is now
    exported, mainly for use in methods for .DollarNames() and
    .AtNames().
  DEPRECATED AND DEFUNCT:
  * default.stringsAsFactors() is defunct.
  * Calling as.data.frame.&lt;class&gt;() directly (for 12 atomic classes)
    is going to be formally deprecated, currently activated by
    setting the environment variable
    _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ to non-empty, which also
    happens in R CMD check --as-cran.
  BUG FIXES:
  * Hashed environments with sizes less than 5 can now grow.
    (Reported to R-devel by Duncan Garmonsway.)
  * as.character(&lt;Rd&gt;, deparse = TRUE) failed to re-escape curly
    braces in LaTeX-like text.  (Reported by Hadley Wickham in
    PR#18324.)
  * library() now passes its lib.loc argument when requiring Depends
    packages; reported (with fix) in PR#18331 by Mikael Jagan.
  * R CMD Stangle: improved message about 'Output' files.
  * head(x, n) and tail(x, n) now signal an error if n is not
    numeric, instead of incidentally "working" sometimes returning
    all of x.  Reported and discussed by Colin Fay, in PR#18357.
  * The "lm" method for summary() now gives the correct F-statistic
    when the model contains an offset.  Reported in PR#18008.
  * C() and `contrasts&lt;-`() now preserve factor level names when
    given a function object (as opposed a function name which did
    preserve names). Reported in PR#17616.
  * c(a = 1, 2)[[]] no longer matches 2 but rather signals a
    _classed_ error.  Reported and analysed by Davis Vaughan in
    PR#18367, a duplicate of PR#18004, by Jan Meis et al.  For
    consistency, NULL[[]] is also erroneous now.  x[[]] &lt;- v gives an
    error of the same class "MissingSubscriptError".
  * The relist() function of utils now supports NULL elements in the
    skeleton (PR#15854).
  * ordered(levels = *) (missing x) now works analogously to factor(,
    ordered=TRUE); reported (with fix) by Achim Zeileis in PR#18389.
  * User-defined Rd macro definitions can now span multiple lines,
    thanks to a patch from Duncan Murdoch. Previously, the Rd parser
    silently ignored everything after the first line.
  * Plain-text help (tools::Rd2txt()) now preserves an initial blank
    line for text following description list items.
  * tools::Rd2HTML() and tools::Rd2latex() no longer split \arguments
    and \value lists at Rd comments.
  * tools::Rd2latex() now correctly handles optional text outside
    \items of argument lists as well as bracketed text at the
    beginning of sections, e.g., \value{[NULL]}.
  * as.character(&lt;POSIXt&gt;) now behaves more in line with the methods
    for atomic vectors such as numbers, and is no longer influenced
    by options().  Ditto for as.character(&lt;Date&gt;).  The
    as.character() method gets arguments digits and OutDec with
    defaults _not_ depending on options().  Use of as.character(*,
    format = .) now warns.
  * Similarly, the as.character.hexmode() and *.octmode() methods
    also behave as good citizen methods and back compatibility option
    keepStr = TRUE.
  * The as.POSIXlt(&lt;POSIXlt&gt;) and as.POSIXct(&lt;POSIXct&gt;) default
    methods now do obey their tz argument, also in this case.
  * as.POSIXlt(&lt;Date&gt;) now does apply a tz (time zone) argument, as
    does as.POSIXct(); partly suggested by Roland Fuss on the R-devel
    mailing list.
  * as.Date.POSIXlt(x) now also works when the list components are of
    unequal length, aka "partially filled" or "ragged".
  * expand.model.frame() looked up variables in the wrong environment
    when applied to models fitted without data.  Reported in
    PR#18414.
  * time() now (also) uses the ts.eps = getOption("ts.eps") argument
    and thus by default rounds values very close to the start (or
    end) of a year.  Based on a proposal by Andre"i V. Kostyrka on
    R-help.
  * Printing of a factanal() result with just one factor and sort =
    TRUE now works regularly, fixing PR#17863 by Timothy Bates,
    thanks to the 'R Contributors' working group.
  * Printing 0-length objects of class "factor", "roman", "hexmode",
    "octmode", "person", "bibentry", or "citation" now prints
    something better, one of which fixes PR#18422, reported by
    Benjamin Feakins.
  * Sys.timezone() queries timedatectl only if systemd is loaded;
    addressing a report by Jan Gorecki in PR#17421.
  * The formula method of cor.test() had scoping problems when
    environment(formula) was not the calling environment; reported
    with a patch proposal by Mao Kobayashi in PR#18439.
  * attach() of an environment with active bindings now preserves the
    active bindings.  Reported by Kevin Ushey in PR#18425.
  * BLAS detection now works also with system-provided libraries not
    available as regular files.  This fixes detection of the
    Accelerate framework on macOS since Big Sur.  Reported by David
    Novgorodsky.
  * download.file() gives a helpful error message in case of an
    invalid download.file.method option, thanks to Colin Fay's report
    in PR#18455.
  * Sporadic crashes of Rterm when using completion have been fixed.
  * Rprof() is now more reliable.  A livelock in thread
    initialization with too short sampling interval has been fixed on
    macOS.  A deadlock in using the C runtime has been fixed on
    Windows.  A potential deadlock has been prevented on Unix.
  * Cursor placement in Rgui now works even after a fixed-width font
    is selected.
  * Mandatory options (options()) are now set on startup so that
    saving and restoring them always works (PR#18372).
  * Package installation, R CMD INSTALL or install.packages(*), now
    parses each of the &lt;pkg&gt;/R/*.R files individually instead of
    first concatenating and then parse()ing the large resulting file.
    This allows parser or syntax errors to be diagnosed with correct
    file names and line numbers, thanks to Simon Dedman's report and
    Bill Dunlap's patch in PR#17859.
    This _does_ require syntactically self contained R source files
    now, fixing another inadvertent bug.
  * predict.lm(&lt;model with offset&gt;) now finds the offset in the
    correct environment, thanks to Andr'e Gillibert's report and patch
    in PR#18456.
  * getInitial(&lt;formula&gt;) now finds the selfStart model in the
    correct environment.  (Reported by Ivan Krylov in PR#18368.)
  * Fix for possible segfault when using recently-added graphics
    features, such as gradients, clipping paths, masks, and groups
    with pdf(file=NULL).
  * class(m) &lt;- class(m) no longer changes a matrix m by adding a
    class _attribute_.
  * packageDate(pkg) now only warns once if there is no pkg.
  * When ts() creates a multivariate time series, "mts", it also
    inherits from "array" now, and is.mts() is documented _and_
    stricter.
  * Rd2txt() now preserves line breaks of \verb Rd content and from
    duplicated \cr.  The former also fixes the rendering of verbatim
    output from Rd \Sexpr in plain-text help.
  * uniroot(f, interval) should no longer wrongly converge _outside_
    the interval in some cases where abs(f(x)) == Inf for an x at the
    interval boundary, thanks to posts by Ben Bolker and Serguei
    Sokol on R-devel.
  * Vectorized alpha handling in palette functions such as in gray(),
    rainbow(), or hcl.colors() works correctly now, thanks to Achim
    Zeileis' report and patch in PR#18476.
  * Formatting and print()ing of bibentry objects has dropped the
    deprecated citation.bibtex.max argument, such that the bibtex
    argument's default for print.bibentry() depends directly on the
    citation.bibtex.max option, whereas in format.bibentry() the
    option no longer applies.
  * Attempting to use a character string naming a foreign function
    entry point in a foreign function call in a package will now
    signal an error if the packages has called R_forceSymbols to
    specify that symbols must be used.
  * An error in table() could permanently set options(warn=2)
    promoting all subsequent warnings to errors.
  * The sigma() function gave misleading results for binary GLMs.  A
    new method for objects of class "glm" returns the square root of
    the estimate of the dispersion parameter using the same
    calculation as summary.glm().
  * bs() and ns() in the (typical) case of automatic knot
    construction, when some of the supposedly inner knots coincide
    with boundary knots, now moves them inside (with a warning),
    building on PR#18442 by Ben Bolker.
  * R CMD on Windows now skips the site profile with --no-site-file
    and --vanilla even when R_PROFILE is set (PR#18512, from Kevin
    Ushey).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1686916800">- CHANGES IN R 4.3.1:
  C-LEVEL FACILITIES:
  * The C-level API version of R's integrate(), Rdqags() in Applic.h,
    now returns the correct number of integrand evaluations neval,
    fixing PR#18515 reported and diagnosed by Stephen Wade.
  * The C prototypes for LAPACK calls dspgv and dtptrs in
    R_exts/Lapack.h had one too many and one too few character length
    arguments - but this has not caused any known issues. To get the
    corrected prototypes, include
    [#]include &lt;Rconfig.h&gt; // for PR18534fixed
    [#]ifdef PR18534fixed
    [#] define usePR18534fix 1
    [#]endif
    [#]include &lt;R_exts/Lapack.h&gt;
    in your C/C++ code (PR#18534).
  INSTALLATION:
  * Many of the checks of esoteric Internet operations and those
    using unreliable external sites have been moved to a new target
    that is not run by default and primarily intended for the core
    developers.  To run them use
    cd tests; make test-Internet-dev
  BUG FIXES:
  * .S3methods(), typically called from methods(), again marks
    methods from package base as visible.
    Also, the visibility of non-base methods is again determined by
    the method's presence in search().
  * tools::Rdiff() is now more robust against invalid strings, fixing
    installation tests on Windows without Rtools installed
    (PR#18530).
  * Fix (new) bug in hcl.colors(2, *), by Achim Zeileis (PR#18523).
  * head(., &lt;illegal&gt;) and tail(..) now produce more useful "Error in
    ...." error messages, fixing PR#18362.
  * Package code syntax on Windows is checked in UTF-8 when UTF-8 is
    the native encoding.
  * na.contiguous(x) now also returns the first run, when it is at
    the beginning and there is a later one of the same length;
    reported to R-devel, including a fix, by Georgi Boshnakov.
    Further, by default, it modifies only an existing attr(*,"tsp")
    but otherwise no longer sets one.
  * chol(&lt;not pos.def&gt;, pivot = &lt;T|F&gt;) now gives a correct error or
    warning message (depending on pivot), thanks to Mikael Jagan's
    (PR#18541).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1699012800">- CHANGES IN R 4.3.2:
  NEW FEATURES:
  * The default initialization of the "repos" option from the
    repositories file at startup can be skipped by setting
    environment variable R_REPOSITORIES to NULL such that
    getOption("repos") is empty if not set elsewhere.
  * qr.X() is now an implicit S4 generic in methods.
  * iconv(to = "ASCII//TRANSLIT") is emulated using substitution on
    platforms which do not support it (notably Alpine Linux).  This
    should give a human-readable conversion in ASCII on all platforms
    (rather than NA_character_).
  * trans3d() gains options continuous and verbose addressing the
    problem of possible "wrap around" when projecting too long
    curves, as reported by Achim Zeileis in PR#18537.
  * tools::showNonASCII() has been rewritten to work better on macOS
    14 (which has a changed implementation of iconv()).
  * tiff(type = "quartz") (the default on macOS) now warns if
    compression is specified: it continues to be ignored.
  INSTALLATION on a UNIX-ALIKE:
  * There is some support for building with Intel's LLVM-based
    compilers on x86_64 Linux, such as (C) icx, (C++) ipcx and
    (Fortran) ifx from oneAPI 2023.x.y.
  * There is support for using LLVM's flang-new as the Fortran
    compiler from LLVM 16.0.x (preferably 17.0.0 or later).
  UTILITIES:
  * R CMD check reports the use of the Fortran 90 random number
    generator RANDOM_NUMBER() and the subroutines to initialize it.
    'Writing R Extensions' has example code to use R's RNGs from
    Fortran.
  BUG FIXES:
  * substr(x, n, L) &lt;- cc now works (more) correctly for multibyte
    UTF-8 strings x when L &gt; nchar(x), thanks to a report and patch
    by 'Architect 95'.
  * contrib.url(character()) now returns 0-length character() as
    documented, which also avoids spurious warnings from
    available.packages() et al. in the edge case of an empty vector
    of repository URLs.
  * readChar(., 4e8) no longer fails, thanks to Kodi Arfer's report
    (PR#18557).
  * lapply(&lt;list&gt;, as.data.frame) no longer warns falsely for some
    base vector components.
  * Communication between parent and child processes in the multicore
    part of parallel could fail on platforms that do not support an
    arbitrarily large payload in system functions read()/write() on
    pipes (seen on macOS where a restriction to INT_MAX bytes is
    documented, without doing a partial read unlike Linux). The
    payload is now split into 1Gb chunks to avoid that problem.
    (PR#18571)
  * qqplot(x,y, conf.level=.) gives better confidence bounds when
    length(x) != length(y), thanks to Alexander Ploner's report and
    patch proposal (PR#18557).
  * norm(&lt;0-length&gt;, "2") now gives zero instead of an error, as all
    the other norm types, thanks to Mikael Jagan's PR#18542.
  * Build-stage Rd macros \packageAuthor and \packageMaintainer now
    process Authors@R, fixing NA results when the package DESCRIPTION
    omits Author and Maintainer fields.
  * Formatting and printing complex numbers could give things like
    0.1683-0i because of rounding error: -0i is now replaced by +0i.
  * postscript() refused to accept a title comment containing the
    letter "W" (PR#18599).
  * isoreg(c(1,Inf)) signals an error instead of segfaulting, fixing
    PR#18603.
  * tiff(type = "Xlib") was only outputting the last page of
    multi-page plots.
  * tools::latexToUtf8() again knows about \~{n} and other letters
    with tilde, fixing a regression in R 4.3.0, and about \^{i} as an
    alternative to \^{\i} (similarly with other accents).
    Furthermore, LaTeX codes for accented I letters are now correctly
    converted, also fixing related mistakes in
    tools::encoded_text_to_latex().
  * tar(*, tar = "internal") no longer creates out-of-spec tar files
    in the very rare case of user or group names longer than 32
    bytes, fixing PR#17871 with thanks to Ivan Krylov.
  * When using the "internal" timezone datetime code, adding a
    fraction of a second no longer adds one second, fixing PR#16856
    from a patch by Ivan Krylov.
  * tools::checkRd() no longer produces spurious notes about
    "unnecessary braces" from multi-line Rd results of \Sexpr macros.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1709208000">- CHANGES IN R 4.3.3:
  NEW FEATURES:
  * iconv() now fixes up variant encoding names such as "utf8"
    case-insensitively.
  DEPRECATED AND DEFUNCT:
  * The legacy encoding = "MacRoman" is deprecated in pdf() and
    postscript(): support was incomplete in earlier versions of R.
  BUG FIXES:
  * Arguments are now properly forwarded to methods on S4 generics
    with ... in the middle of their formal arguments. This was broken
    for the case when a method introduced an argument but did not
    include ... in its own formals. Thanks to Herv'e Pag`es for the
    report PR#18538.
  * Some invalid file arguments to pictex(), postscript() and xfig()
    opened a file called NA rather than throw an error.  These
    included postscript(NULL) (which some people expected to work
    like pdf(NULL)).
  * Passing filename = NA to svg(), cairo_pdf(), cairo_ps() or the
    Cairo-based bitmap devices opened a file called NA: it now throws
    an error.
  * quartz(file = NA) opened a file called NA, including when used as
    a Quartz-based bitmap device.  It now gives an error.
  * rank(&lt;long vector&gt;) now works, fixing PR#18617, thanks to Ilia
    Kats.
  * seq.int() did not adequately check its length.out argument.
  * match(&lt;POSIXct&gt;, .) is correct again for differing time zones,
    ditto for "POSIXlt", fixing PR#18618 reported by Bastian Klein.
  * drop.terms(*, dropx = &lt;0-length&gt;) now works, fixing PR#18563 as
    proposed by Mikael Jagan.
  * drop.terms(*) keeps + offset(.) terms when it should, PR#18565,
    and drop.terms() no longer makes up a response, PR#18566, fixing
    both bugs thanks to Mikael Jagan.
  * getS3method("t", "test") no longer finds the t.test() function,
    fixing PR#18627.
  * pdf() and postscript() support for the documented Adobe encodings
    "Greek" and "Cyrilllic" was missing (although the corresponding
    Windows' codepages could be used).
  * Computations of glyph metric information for pdf() and
    postscript() did not take into account that transliteration could
    replace one character by two or more (only seen on macOS 14) and
    typically warned that the information was not known.
  * rank(x) no longer overflows during integer addition, when
    computing rank average for largish but not-yet long vector x,
    fixing PR#18630, thanks to Ilia Kats.
  * list.files() on Windows now returns also files with names longer
    that 260 bytes (the Windows limit is 260 characters).
    Previously, some file names particularly with 'East Asian'
    characters were omitted.
  * cov2cor(&lt;0 x 0&gt;) now works, fixing PR#18423 thanks to Mikael
    Jagan and Elin Waring.
  * cov2cor(&lt;negative diagonal&gt;) and similar now give one warning
    instead of two, with better wording, fixing PR#18424 thanks to
    Mikael Jagan.
  * tools:: startDynamicHelp() now ensures port is in proper range,
    fixing PR#18645.
  * pbeta(x, a,b) is correct now for x=0 or 1 in the boundary cases
    where a or b or both are 0, fixing PR#18672 thanks to Michael
    Fay.
  * pmatch(x, table) for large table, also called for data frame row
    selection, dfrm[nm, ], is now interruptible, fixing PR#18656.
  * predict(&lt;rank-deficient lm&gt;, newdata=*) fix computing of nbasis,
    see Russ Lenth's comment 29 in PR#16158.
  * Added a work-around for a bug in macOS 14.3.1 and higher which
    prevents R plots in the Quartz Cocoa device from updating on
    screen.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1713960000">- CHANGES IN R 4.4.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Startup banners, R --version, sessionInfo() and R CMD check no
    longer report (64-bit) as part of the platform as this is almost
    universal - the increasingly rare 32-bit platforms will still
    report (32-bit).
    On Windows, ditto for window titles.
  * is.atomic(NULL) now returns FALSE, as NULL is not an atomic
    vector.  Strict back-compatibility would replace is.atomic(foo)
    by (is.null(foo) || is.atomic(foo)) but should happen only
    sparingly.
  NEW FEATURES:
  * The confint() methods for "glm" and "nls" objects have been
    copied to the stats package.  Previously, they were stubs which
    called versions in package MASS. The MASS namespace is no longer
    loaded if you invoke (say) confint(glmfit).  Further, the "glm"
    method for profile() and the plot() and pairs() methods for class
    "profile" have been copied from MASS to stats.  (profile.nls()
    and plot.profile.nls() were already in stats.)
  * The confint() and profile methods for "glm" objects have gained a
    possibility to do profiling based on the Rao Score statistic in
    addition to the default Likelihood Ratio. This is controlled by a
    new test = argument.
  * The pairs() method for "profile" objects has been extended with a
    which = argument to allow plotting only a subset of the
    parameters.
  * The "glm" method for anova() computes test statistics and
    p-values by default, using a chi-squared test or an F test
    depending on whether the dispersion is fixed or free.  Test
    statistics can be suppressed by giving argument test a false
    logical value.
  * In setRepositories() the repositories can be set using their
    names via name = instead of index ind =.
  * methods() and .S3methods() gain a all.names option for the (rare)
    case where functions starting with a . should be included.
  * Serializations can now be interrupted (e.g., by Ctrl-C on a
    Unix-alike) if they take too long, e.g., from save.image(),
    thanks to suggestions by Ivan Krylov and others on R-devel.
  * New startup option --max-connections to set the maximum number of
    simultaneous connections for the session.  Defaults to 128 as
    before: allowed values up to 4096 (but resource limits may in
    practice restrict to smaller values).
  * R on Windows (since Windows 10 2004) now uses the new Segment
    Heap allocator. This may improve performance of some
    memory-intensive applications.
  * When R packages are built, typically by R CMD build &lt;pkg&gt;, the
    new --user=&lt;build_user&gt; option overrides the (internally
    determined) user name, currently Sys.info()["user"] or LOGNAME.
    This is a (modified) fulfillment of Will Landau's suggestion in
    PR#17530.
  * tools::testInstalledBasic() gets new optional arguments outDir
    and testSrcdir, e.g., allowing to use it in a &lt;builddir&gt; !=
    &lt;srcdir&gt; setup, and in standard "binary" Windows installation
  * if* a source tests/ folder is present.
  * range(&lt;DT_with_Inf&gt;, finite = TRUE) now work for objects of class
    "Date", "POSIXct", and "POSIXlt" with infinite entries,
    analogously to range.default(), as proposed by Davis Vaughan on
    R-devel.  Other range()-methods can make use of new function
    .rangeNum().
  * New .internalGenerics object complementing .S3PrimitiveGenerics,
    for documentation and low-level book-keeping.
  * grid() now invisibly returns the x- and y- coordinates at which
    the grid-lines were drawn.
  * norm(., type) now also works for complex matrices.
  * kappa(., exact = TRUE, norm = *) now works for all norms and also
    for complex matrices.  In symmetric / triangular cases, the new
    argument uplo = "U" | "L" allows the upper or lower triangular
    part to be specified.
  * memDecompress(type = "unknown") recognizes compression in the
    default 'zlib' format as used by memCompress(type = "gzip").
  * memCompress() and memDecompress() will use the libdeflate library
    (&lt;https://github.com/ebiggers/libdeflate&gt;) if installed.  This
    uses the same type of compression for type = "gzip" but is 1.5-2x
    faster than the system libz library on some common platforms: the
    speed-up may depend on the library version.
  * diff() for objects of class "Date", "POSIXct", and "POSIXlt"
    accepts a units argument passed via ....
  * Dynamic help now does a much better job of rendering package
    DESCRIPTION metadata.
  * Rprof() gains an event argument and support for elapsed (real)
    time profiling on Unix (PR#18076).
  * filled.contour() gains a key.border argument.
  * tools::update_pkg_po() gets arguments pot_make and mo_make for
    _not_ re-making the corresponding files, and additionally a
    verbose argument.
  * Hexadecimal string colour specifications are now accepted in
    short form, so, for example, we can use "#123", which is
    equivalent to "#112233".
    Thanks to MikeFC for the original idea and Ella Kaye, Malcolm
    Barrett, George Stagg, and Hanne Oberman for the patch.
  * Plain-text help shows \var markup by angle brackets.
  * The new experimental primitive function declare() is intended to
    eventually allow information about R code to be communicated to
    the interpreter, compiler, and code analysis tools. The syntax
    for declarations is still being developed.
  * Functions psmirnov(), qsmirnov() and rsmirnov() in package stats
    have had argument two.sided renamed to alternative, to take into
    account that the permutation distributions of the one-sided
    statistics can be different in the case of ties.  Consequence of
    PR#18582.
  * sort() is now an implicit S4 generic in methods.
  * Formatting and printing, format(z), print(z), of complex vectors
    z no longer zap relatively small real or imaginary parts to zero,
    fixing PR#16752.  This is an API change, as it was documented
    previously to round real and imaginary parts together on purpose,
    producing nicer looking output.  As mentioned, e.g. in the PR,
    this change is compatible with many other "R-like" programming
    environments.
    We have simplified the internal code and now basically format the
    real and imaginary parts independently of each other.
  * New experimental functions Tailcall() and Exec() to support
    writing stack-space-efficient recursive functions.
  * Where characters are attempted to be plotted by pdf(),
    postscript() and xfig() which are not in the selected 8-bit
    character set (most often Latin-1) and the R session is using a
    UTF-8 locale, the warning messages will show the UTF-8 character
    rather than its bytes and one dot will be substituted per
    character rather than per byte.  (Platforms whose iconv() does
    transliteration silently plot the transliteration.)
    In a UTF-8 locale some transliterations are now done with a
    warning (e.g., dashes and Unicode minus to hyphen, ligatures are
    expanded, permille (‰) is replaced by o/oo), although the OS may
    have got there first.  These are warnings as they will continue
    to be replaced by dots in earlier versions of R.
  * The matrix multiplication functions crossprod() and tcrossprod()
    are now also primitive and S3 generic, as %*% had become in R
    4.3.0.
  * source() and example() have a new optional argument catch.aborts
    which allows continued evaluation of the R code after an error.
  * The non-Quartz tiff() devices allow additional types of
    compression if supported by the platform's libtiff library.
  * The list of base and recommended package names is now provided by
    tools::standard_package_names().
  * cairo_pdf() and cairo_ps() default to onefile = TRUE to closer
    match pdf() and postscript().
  * New option catch.script.errors provides a documented way to catch
    errors and then continue in non-interactive use.
  * L %||% R newly in base is an expressive idiom for the phrases
    if(!is.null(L)) L else R or if(is.null(L)) R else L.
  * The return value from warnings() now always inherits from
    "warnings" as documented, now also in the case of no warnings
    where it previously returned NULL.
  * as.complex("1i") now returns 0 + 1i instead of NA with a warning.
  * z &lt;- c(NA, 1i) now keeps the imaginary part Im(z[1]) == 0, no
    longer coercing to NA_complex_.  Similarly, cumsum(z) correctly
    sums real and imaginary parts separately, i.e., without
    "crosstalk" in case of NAs.
  * On Alpine Linux iconv() now maps "latin2", "latin-2", "latin9"
    and "latin-9" to encoding names the OS knows about
    (case-insensitively).
  * iconv(sub = "Unicode") now always zero-pads to four (hex) digits,
    rather than to 4 or 8.  (This seems to have become the convention
    once Unicode restricted the number of Unicode points to 2^21 - 1
    and so will never need more than 6 digits.)
  * NCOL(NULL) now returns 0 instead of 1, for consistency with
    cbind().
  * The information for the Euro glyph missing from the Adobe .afm
    files for the Courier, Helvetica and Times families has been
    copied from their URW equivalents - this will improve vertical
    centring in the pdf() and postscript() devices.
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.12.0.  The changes are almost entirely cosmetic.
  * The included LAPACK sources have been updated to version 3.12.0
    and some further double-complex routines added.
  * There are new font families for the 2014--5 URW 2.0 fonts (see
    ?pdf) which are included in recent versions of Ghostscript.
    These have font widths for most Greek glyphs and a few others
    which were missing from the original versions (whose font
    families remain available for reproducibility, although
    Ghostscript-based viewers will render using the 2.0 versions).
  * Improve the large-n efficiency of as.matrix(&lt;dist&gt;), thanks an R
    contributors effort, notably by Tim Taylor and Heather Turner,
    see PR#18660.
  * The default and numeric methods of all.equal() get a check.class
    option.
  * zapsmall() gets new optional arguments, function mFUN and min.d,
    for extra flexibility; fulfills a wish in PR#18199.  Also, it is
    now an implicit S4 generic in package methods.
  * The Rd filter for aspell() gains an ignore argument.
  * New generic function sort_by(), primarily useful for the
    data.frame method which can be used to sort rows of a data frame
    by one or more columns.
  * The icence headers for the RPC code in src/extra/xdr have been
    updated to use the GPL-compatible licence published by Oracle
    America in 2010.
  * New function pkg2HTML() in tools to create single-page HTML
    reference manuals for R packages.
  * The byte code evaluator now uses less C stack space for recursive
    calls to byte-compiled functions. It also makes more of an effort
    to avoid allocations for scalar return values.
  * New completion option backtick (disabled by default) allows
    non-syntactic completions to be wrapped in backquotes. This is
    currently only useful for Jupyter notebooks via the IRkernel
    package, and may cause problems for other backends.
  INSTALLATION:
  * The parser has been updated to work with bison 3.8.2, which is
    now used for the pre-generated parsers in gram.c, file.c, and
    gramRd.c. A few parser error messages have changed, which may
    affect code that relies on exact messages.
  INSTALLATION on a UNIX-ALIKE:
  * System valgrind headers are now required to use configure option
  - -with-valgrind-instrumentation with value 1 or 2.
  * configure will warn if it encounters a 32-bit build, as that is
    nowadays almost untested.
  * Environment variable R_SYSTEM_ABI is no longer used and so no
    longer recorded in etc/Renviron (it was not on Windows and was
    only ever used when preparing package tools).
  * If the libdeflate library and headers are available, libdeflate
    rather than libz is used to (de)compress R objects in lazy-load
    databases.  Typically tasks spend up to 5% of their time on such
    operations, although creating lazy-data databases is one of the
    exceptions.
    This can be suppressed if the library is available by the
    configure option --without-libdeflate-compression.
  * configure option --enable-lto=check has not worked reliably since
    2019 and has been removed.
  * The minimum autoconf requirement for a maintainer build has been
    increased to autoconf 2.71.
    It is intended to increase this to 2.72 for R 4.5.0: the
    distributed configure file was generated using 2.72.
  * The minimum version requirement for an external LAPACK has been
    reduced to 3.9.0.
  * No default C++ compiler is set if no C++17 compiler is detected:
    there is no longer an automatic fallback to C++14 or C++11.
    Compilers from the last five years should have sufficient
    support: for others macros CXX and CXXSTD can be set in file
    config.site to provide a fallback if needed.
    The Objective-C++ compiler now by default uses the standard
    selected by R for C++ (currently C++17) rather than the default
    standard for the C++ compiler (which on macOS is still C++98).
  INSTALLATION on macOS:
  * A new configure option --with-newAccelerate makes use of Apple's
    'new' BLAS / LAPACK interfaces in their Accelerate framework.
    Those interfaces are only available in macOS 13.3 or later, and
    building requires SDK 13.3 or later (from the Command Line Tools
    or Xcode 14.3 or later).
    By default the option uses new Accelerate for BLAS calls: to also
    use it for LAPACK use option --with-newAccelerate=lapack.  The
    later interfaces provide LAPACK 3.9.1 rather than 3.2.1: 3.9.1 is
    from 2021-04 and does not include the improved algorithms
    introduced in LAPACK 3.10.0 (including for BLAS calls).
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools44, an update of the Rtools43 toolchain.  It is
    based on GCC 13 and newer versions of MinGW-W64, binutils and
    libraries (targeting 64-bit Intel CPUs).  R-devel can no longer
    be built using Rtools43 without changes.
  * Rtools44 has experimental support for 64-bit ARM (aarch64) CPUs
    _via_ the LLVM 17 toolchain using lld, clang/flang-new and
    libc++.
  UTILITIES:
  * R CMD check notes when S4-style exports are used without
    declaring a strong dependence on package methods.
  * tools::checkRd() (used by R CMD check) detects more problems with
    \Sexpr-based dynamic content, including bad nesting of \Sexprs
    and invalid arguments.
  * tools::checkRd() now reports Rd titles and section names ending
    in a period; this is ignored by R CMD check unless environment
    variable _R_CHECK_RD_CHECKRD_MINLEVEL_ is set to -5 or smaller.
  * R CMD check now notes Rd files without an \alias, as long
    documented in 'Writing R Extensions' §1.3.1.  The check for a
    missing \description has been moved from tools::checkRd() to
    tools::checkRdContents().
  * R CMD check now visits inst/NEWS.Rd and OS-specific man
    subdirectories when checking Rd files.
  * tools::checkDocFiles() and tools::checkRdContents() now also
    check internal Rd files by default, but "specially" (ignoring
    missing documentation of arguments).
  * R CMD Rdiff gets option --useEx.
  * R CMD check now warns on non-portable uses of Fortran KIND such
    as INTEGER(KIND=4) and REAL(KIND=8).
    To see the failing lines set environment variable
    _R_CHECK_FORTRAN_KIND_DETAILS_ to a true value.
  * When checking Rd files, R CMD check now notes some of the "lost
    braces" that tools::checkRd() finds.  Typical problems are Rd
    macros missing the initial backslash (e.g., code{...}), in-text
    set notation (e.g., {1, 2}, where the braces need escaping), and
    \itemize lists with \describe-style entries of the form
    \item{label}{description}.
  * R CMD INSTALL (and hence check) will compile C++ code with
  - DR_NO_REMAP if environment variable _R_CXX_USE_NO_REMAP_ is set
    to a true value.  It is planned that this will in future become
    the default for compiling C++.
  * The new built-in Rd macro \dontdiff{} can be used to mark example
    code whose output should be ignored when comparing check output
    to reference output (tests/Examples/&lt;pkg&gt;-Ex.Rout.save).  The
    \dontdiff tag, like \donttest, is _not_ shown on the rendered
    help page, so provides a clean alternative to ##
    IGNORE_RDIFF_(BEGIN|END) comments.
  * R CMD build when there is no NAMESPACE, now uses the recommended
    exportPattern("^[^.]"), instead of exporting everything.
  * R CMD check now warns about non-ASCII characters in the NAMESPACE
    file (in addition to R files). Such packages are not portable and
    may fail to install on some platforms.
  C-LEVEL FACILITIES:
  * Headers R_ext/Applic.h and R-ext/Linpack.h used to include
    R_ext/BLAS.h although this was undocumented and unneeded by their
    documented entry points.  They no longer do so.
  * New function R_missing(), factored out from do_missing(), used to
    fix PR#18579.
  * SEXP type S4SXP has been renamed to OBJSXP to support
    experimenting with alternative object systems.  The S4SXP value
    can still be used in C code but is now deprecated.  Based on
    contributions from the R Consortium's Object-Oriented Programming
    Working Group.
  * New function pow1p(x,y) for accurate (1+x)^y.
  * mkCharLenCE was incorrectly documented to take a size_t length
    but was implemented with int (and character strings in R are
    limited to 2^31 - 1 bytes).
  DEPRECATED AND DEFUNCT:
  * data() no longer handles zipped data from long-defunct (since R
    2.13.0) --use-zip-data installations.
  * The legacy graphics devices pictex() and xfig() are now
    deprecated.  They do not support recent graphics enhancements and
    their font handling is rudimentary. The intention is to retain
    them for historical interest as long as they remain somewhat
    functional.
  * Support for encoding = "MacRoman" has been removed from the pdf()
    and postscript() devices - this was a legacy encoding supporting
    classic macOS up to 2001 and no longer has universal libiconv
    support.
  * is.R() is deprecated as no other S dialect is known to be in use
    (and this could only identify historical dialects, not future
    ones).
    Further information on calls can be obtained by setting the
    environment variable _R_DEPRECATED_IS_R_ to error which turns the
    deprecation warning into an error and so by default gives a
    traceback.  (This is done by R CMD check --as-cran.)
  * UseMethod() no longer forwards local variables assigned in the
    generic function into method call environments before evaluating
    the method body. This makes method calls behave more like
    standard function calls and makes method code easier to analyze
    correctly.
  * The twelve as.data.frame.&lt;class&gt;() methods which were deprecated
    only via _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ and in R CMD
    check --as-cran are formally deprecated now in favour of calling
    as.data.frame() or as.data.frame.vector().  The deprecation
    "check" now works also when as.data.frame() is S4 generic thanks
    to Ivan Krylov.
  * The default method for the directional comparison operators &lt;, &gt;,
    &lt;=, and &gt;= now signals an error when one of the operands is a
    language object, i.e. a symbol or a call.
  * For terms.formula(), deprecate abb and neg.out arguments
    _formally_ in addition to just documenting it.
  BUG FIXES:
  * The methods package is more robust to not being attached to the
    search path.  More work needs to be done.
  * pairwise.t.test() misbehaved when subgroups had 0 DF for
    variance, even with pool.sd = TRUE.  (PR#18594 by Jack Berry).
  * Probability distribution functions [dpq]&lt;distrib&gt;(x, *), but also
    bessel[IKJY](x, .) now consistently preserve attributes(x) when
    length(x) == 0, e.g., for a 2 x 0 matrix, thanks to Karolis
    Koncevičius' report PR#18509.
  * Group "Summary" computations such as sum(1:3, 4, na.rm = 5, NA,
    7, na.rm = LL) now give an error instead of either 17 or NN for
    LL true or false, as proposed by Ivan Krylov on the R-devel
    mailing list.  (This also means it is now an error to specify
    na.rm more than once.)
  * as.complex(x) now returns complex(real = x, imaginary = 0) for
    _all_ numerical and logical x, notably also for NA or
    NA_integer_.
  * Directories are now omitted by file.copy(, recursive = FALSE) and
    in file.append() (PR#17337).
  * gsub() and sub() are now more robust to integer overflow when
    reporting errors caused by too large input strings (PR#18346).
  * Top-level handlers are now more robust to attempts to remove a
    handler whilst handlers are running (PR#18508).
  * The handling of Alt+F4 in dialogs created on Windows using
    GraphApp has been fixed (PR#13870).
  * density() more consistently computes grid values for the
    FFT-based convolution, following Robert Schlicht's analysis and
    proposal in PR#18337, correcting density values typically by a
    factor of about 0.999.  Argument old.coords = TRUE provides back
    compatibility.
  * palette.colors() gains a name argument that defaults to FALSE
    controlling whether the vector of colours that is returned has
    names (where possible).  PR#18529.
  * tools::xgettext() no longer extracts the (non-translatable) class
    names from warningCondition and errorCondition calls.
  * S3method(&lt;gen&gt;, &lt;class&gt;, &lt;func&gt;) in the NAMESPACE file now works
    (again) when &lt;func&gt; is visible from the namespace, e.g.,
    imported, or in base.
  * getParseData(f) now also works for a function defined in the
    first of several &lt;pkg&gt;/R/*.R source files, thanks to Kirill
    Müller's report and Duncan Murdoch's patch in PR#16756.
  * Rd \Sexpr macros with nested #ifdef conditionals were not
    processed.
  * A non-blocking connection with non-default encoding (such as a
    socket) now correctly returns from readLines() after new data has
    arrived also when its EOF had been reached previously.  Thanks to
    Peter Meilstrup's report on R-devel and Ivan Krylov's report and
    patch proposal in PR#18555.
  * tools::checkRdContents() failed to detect empty argument
    descriptions when they spanned multiple lines, including those
    generated by prompt().  These cases are now noted by R CMD check.
  * Plain-text help no longer outputs spurious colons in the
    arguments list (for multi-line \item labels in the Rd source).
  * kappa() and rcond() work correctly in more cases; kappa(., norm =
    "2") now warns that it computes the 1-norm with (default) exact =
    FALSE; prompted by Mikael Jagan's quite comprehensive PR#18543.
  * Rd skeletons generated by prompt() or promptData() now use a
    dummy title (so R CMD build works).  tools::checkRdContents() has
    been updated to detect such template leftovers, including from
    promptPackage().
  * When S4 method dispatch fails because no method was found, the
    error message now includes the signature argument names; thanks
    to Michael Chirico's proposal on the R-devel list.
  * withAutoprint({ .. }) now preserves srcrefs previously lost,
    thanks to Andrew Simmons' report plus fix in PR#18572.
  * transform.data.frame() no longer adjusts names; in particular,
    untransformed variables are kept as-is, including those with
    syntactically invalid names (PR#17890).
  * The keep.source option for Rd \Sexpr blocks is no longer ignored.
  * The formula methods for t.test() and wilcox.test() now catch when
    paired is passed, addressing PR#14359; use Pair(x1, x2) ~ 1 for a
    paired test.
  * The level reported in the browser prompt was often too large. It
    now shows the number of browser contexts on the stack.
  * For cbind() and rbind(), the optional deparse.level argument is
    now properly passed to methods, thanks to Mikael Jagan's PR#18579
    and comments there.
  * Some error and warning messages for large ('long vector')
    matrix(v, nr, nc) and dim(m) &lt;- d are now correct about sizes,
    using long long formatting, fixing PR#18612 (and more) reported
    by Mikael Jagan.
  * readChar(useBytes = TRUE) now terminates strings even when the
    underlying connection uses extra spaces in the input buffer.
    This fixes problems with extra garbage seen with gzip
    connections, PR#18605.
  * Named capture in PCRE regular expressions now works also with
    more than 127 named groups (PR#18588).
  * Datetime functions are now robust against long jumps when dealing
    with internal time zone changes.  This avoids confusing warnings
    about an invalid time zone, previously triggered by turning
    warnings into errors or handling them via tryCatch (PR#17966,
    PR#17780).
  * Datetime functions now restore even an empty TZ environment
    variable after internal time zone changes (PR#17724).  This makes
    results of datetime functions with this (typically unintentional)
    setting more predictable.
  * drop.terms(*) now drops response as by default, keep.response =
    FALSE, fixing PR#18564 thanks to Mikael Jagan.
  * dummy.coef(.) now also works for lm()-models with character
    categorical predictor variables rather than factor ones, fixing
    PR#18635 reported by Jinsong Zhao.
  * formals(f) &lt;- formals(f) now also works for a function w/o
    arguments and atomic _constant_ body(f).
  * Correct as.function(&lt;invalid list&gt;, .)'s error message.
  * removeSource() is yet more thorough in finding and removing
    "srcref" and the other source references from parsed R language
    chunks, fixing PR#18638 thanks to Andrew Simmons.
  * dgeom() is more accurate now, notably when its result is very
    small, fixing PR#18642 thanks to the proposal of Morten Welinder,
    also improving other instances where C level binom_raw(x, n, ..)
    has x == 0 or x== n.
  * warning() with options(warn = 1) has improved output for
    multi-line messages.
  * axis.Date() and axis.POSIXct() now respect the par("lab") setting
    for the number of pretty() intervals.
  * Comparisons for language objects (which are based on deparsing)
    are now more careful about using accurate deparsed results
    (PR#18676).
  * Plain-text help (Rd2txt) now correctly preserves blank lines
    following single-line \dontrun code.
  * &lt;POSIXlt&gt;[*] no longer sets wrong "balanced" attribute, fixing
    PR#18681 thanks to Mikael Jagan.
  * str(&lt;classed-call&gt;) now deparses the call as expected, fixing
    PR#18684, reported by Dave Slager.
  * In Rd examples, code following the closing brace of a \dontrun,
    \dontshow or \donttest tag on the same line is no longer skipped
    when R CMD check runs the examples.
  * as.data.frame(matrix(*, ncol=0)) now gets valid names() and
    colnames(); reported by Davis Vaughan on the R-devel list.
  * Internal Mathlib function stirlerr(n) is now almost fully
    (52-bit) accurate for all n &gt;= ~5.9 and more accurate also in the
    range 1 -- 5.9.  This entails small ("after 12th decimal")
    changes in density functions, e.g., dgamma() in _some_ regions of
    their support.  The fix was partly prompted by Morten Welinder's
    PR#18640.
  * Numbers like 9876543.2 are now considered non-integer by Mathlib
    internal R_nonint(), amending original fix of PR#15734.
  * Rd comment lines no longer cause broken paragraphs in the
    rendered PDF and plain-text help. In code blocks, pure comment
    lines (starting with %) no longer produce an empty line.
  * xtabs(Freq ~ .) now consistently defaults to na.action = na.pass,
    using na.rm = FALSE (added as an argument) when summing over Freq
    (PR#17770).
  * tools::testInstalledPackage() is no longer silent about failures
    from running examples or tests and its return code no longer
    ignores failures from checking vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1718366400">- CHANGES IN R 4.4.1:
  C-LEVEL FACILITIES:
  * Functions R_atof and R_strtod declared in header R_ext/Utils.h
    are now documented in 'Writing R Extensions' and so formally part
    of the API.
  * The non-API entry points Rf_setSVector, Rf_StringFalse,
    Rf_StringTrue and Rf_isBlankString have been added to those
    reported by R CMD check.
  * The new function Rf_allocLang is now available. This provides an
    alternative to the idiom of calling Rf_allocList followed by
    SET_TYPEOF.
  UTILITIES:
  * R CMD check now reports as warnings what gfortran calls 'Fortran
    2018 deleted features', all of which have long been marked as
    'obsolescent' and some of which were deleted in Fortran 2008 or
    earlier.  Fortran compilers are no longer required to support
    these.
  BUG FIXES:
  * as.numeric(), scan(), type.convert() and other places which use
    the internal C function R_strtod now require a _non-empty_ digit
    sequence in a decimal or binary exponent.  This aligns with the
    C/POSIX standard for strtod and with ?NumericConstants.
  * as.data.frame(m, make.names=NA) now works correctly for a matrix
    m with NA's in row names.
  * The error message from &lt;POSIXlt&gt;[["hour"]] and similar now
    mentions *[[, "hour"]], as wished for in PR#17409 and proposed by
    Michael Chirico.
  * qbinom() and potentially qpois(), qnbinom(), no longer sometimes
    fail accurate inversion (of pbinom(), etc), thanks to Christopher
    Chang's report and patch in PR#18711.
  * The internal help server on Windows can again serve requests sent
    in quick succession, fixing a regression in R 4.4.0.
  * debugcall(&lt;S3Generic&gt;()) now also works when a corresponding
    S4-generic version is in the methods cache (PR#18143).
  * Package tools' toTitleCase(ch0) now returns character(0) when ch0
    is of zero length; fixing PR#18724, reported by David Hugh Jones.
  * R CMD check is no longer broken (without a check result and no
    explanation in 00check.log) for a package which declares an
    invalid VignetteBuilder in DESCRIPTION but has no vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1730376000">- CHANGES IN R 4.4.2:
  C-LEVEL FACILITIES:
  * The S-compatibility macros F77_COM and F77_COMDECL defined in
    header R_ext/RS.h are deprecated and will be removed shortly.  We
    could find no record of their use.
  BUG FIXES:
  * Mathlib function lgammacor(x) no longer warns about underflow to
    zero for large x.
  * Text widths and heights were incorrectly reported by the Quartz
    device if the drawing context didn't exist yet (typically when
    drawing off-screen to a window that is yet to appear, see
    PR#18591).
  * The Quartz device could segfault in cases where paths with spaces
    are used in the new glyph drawing API.  Thanks to Tomek
    Gieorgijewski (PR#18758).
  * On macOS in R CRAN builds, it is again possible to read
    little-endian UTF-16 text with a BOM from a connection using
    encoding="UTF-16".  Users building R from source should avoid
    using the system libiconv in macOS 14.1 and later.
  * methods' internal .requirePackage() now re-enables primitive
    method dispatch when needed; thanks to Ivan Krylov for
    demystifying CRAN package check failures on the R-devel mailing
    list.</changelog>
</package>
<package pkgid="42945bc9cef2f1209fca7fe3a43a8afba3ec6427fae6f19aef246e60ec21e5de59fd5e9582faa227f3b2e383c708a20b4185f44573783c1ca0a3fa023f80a77f" name="R-Matrix-debuginfo" arch="i586">
  <version epoch="0" ver="1.7.1" rel="51.0.2.2.sr20241103"/>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1620302400">- To get in sync with d:l:R:autoCRAN the Matrix package's split
  in -devel was reversed.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339200">- improved spec file according to comments of dimstar in
  https://build.opensuse.org/request/show/892685</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339201">- CHANGES IN R 4.1.0:
  FUTURE DIRECTIONS:
  * It is planned that the 4.1.x series will be the last to support
    32-bit Windows, with production of binary packages for that
    series continuing until early 2023.
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Data set esoph in package datasets now provides the correct
    numbers of controls; previously it had the numbers of cases added
    to these.  (Reported by Alexander Fowler in PR#17964.)
  NEW FEATURES:
  * www.omegahat.net is no longer one of the repositories known by
    default to setRepositories().  (Nowadays it only provides source
    packages and is often unavailable.)
  * Function package_dependencies() (in package tools) can now use
    different dependency types for direct and recursive dependencies.
  * The checking of the size of tarball in R CMD check --as-cran
    &lt;pkg&gt; may be tweaked via the new environment variable
    _R_CHECK_CRAN_INCOMING_TARBALL_THRESHOLD_, as suggested in
    PR#17777 by Jan Gorecki.
  * Using c() to combine a factor with other factors now gives a
    factor, an ordered factor when combining ordered factors with
    identical levels.
  * apply() gains a simplify argument to allow disabling of
    simplification of results.
  * The format() method for class "ftable" gets a new option justify.
    (Suggested by Thomas Soeiro.)
  * New ...names() utility.  (Proposed by Neal Fultz in PR#17705.)
  * type.convert() now warns when its as.is argument is not
    specified, as the help file always said it _should_.  In that
    case, the default is changed to TRUE in line with its change in
    read.table() (related to stringsAsFactor) in R 4.0.0.
  * When printing list arrays, classed objects are now shown _via_
    their format() value if this is a short enough character string,
    or by giving the first elements of their class vector and their
    length.
  * capabilities() gets new entry "Rprof" which is TRUE when R has
    been configured with the equivalent of --enable-R-profiling (as
    it is by default).  (Related to Michael Orlitzky's report
    PR#17836.)
  * str(xS4) now also shows extraneous attributes of an S4 object
    xS4.
  * Rudimentary support for vi-style tags in rtags() and R CMD rtags
    has been added.  (Based on a patch from Neal Fultz in PR#17214.)
  * checkRdContents() is now exported from tools; it and also
    checkDocFiles() have a new option chkInternal allowing to check
    Rd files marked with keyword "internal" as well.  The latter can
    be activated for R CMD check via environment variable
    _R_CHECK_RD_INTERNAL_TOO_.
  * New functions numToBits() and numToInts() extend the raw
    conversion utilities to (double precision) numeric.
  * Functions URLencode() and URLdecode() in package utils now work
    on vectors of URIs.  (Based on patch from Bob Rudis submitted
    with PR#17873.)
  * path.expand() can expand ~user on most Unix-alikes even when
    readline is not in use.  It tries harder to expand ~, for example
    should environment variable HOME be unset.
  * For HTML help (both dynamic and static), Rd file links to help
    pages in external packages are now treated as references to
    topics rather than file names, and fall back to a file link only
    if the topic is not found in the target package. The earlier rule
    which prioritized file names over topics can be restored by
    setting the environment variable _R_HELP_LINKS_TO_TOPICS_ to a
    false value.
  * c() now removes NULL arguments before dispatching to methods,
    thus simplifying the implementation of c() methods, _but_ for
    back compatibility keeps NULL when it is the first argument.
    (From a report and patch proposal by Lionel Henry in PR#17900.)
  * Vectorize()'s result function's environment no longer keeps
    unneeded objects.
  * Function ...elt() now propagates visibility consistently with
    ..n.  (Thanks to Lionel Henry's PR#17905.)
  * capture.output() no longer uses non-standard evaluation to
    evaluate its arguments.  This makes evaluation of functions like
    parent.frame() more consistent.  (Thanks to Lionel Henry's
    PR#17907.)
  * packBits(bits, type="double") now works as inverse of
    numToBits().  (Thanks to Bill Dunlap's proposal in PR#17914.)
  * curlGetHeaders() has two new arguments, timeout to specify the
    timeout for that call (overriding getOption("timeout")) and TLS
    to specify the minimum TLS protocol version to be used for
    https:// URIs (_inter alia_ providing a means to check for sites
    using deprecated TLS versions 1.0 and 1.1).
  * For nls(), an optional constant scaleOffset may be added to the
    denominator of the relative offset convergence test for cases
    where the fit of a model is expected to be exact, thanks to a
    proposal by John Nash.  nls(*, trace=TRUE) now also shows the
    convergence criterion.
  * Numeric differentiation _via_ numericDeriv() gets new optional
    arguments eps and central, the latter for taking central divided
    differences.  The latter can be activated for nls() via
    nls.control(nDcentral = TRUE).
  * nls() now passes the trace and control arguments to getInitial(),
    notably for all self-starting models, so these can also be fit in
    zero-noise situations via a scaleOffset.  For this reason, the
    initial function of a selfStart model must now have ... in its
    argument list.
  * bquote(splice = TRUE) can now splice expression vectors with
    attributes: this makes it possible to splice the result of
    parse(keep.source = TRUE).  (Report and patch provided by Lionel
    Henry in PR#17869.)
  * textConnection() gets an optional name argument.
  * get(), exists(), and get0() now signal an error if the first
    argument has length greater than 1.  Previously additional
    elements were silently ignored.  (Suggested by Antoine Fabri on
    R-devel.)
  * R now provides a shorthand notation for creating functions, e.g.
    \(x) x + 1 is parsed as function(x) x + 1.
  * R now provides a simple native forward pipe syntax |&gt;.  The
    simple form of the forward pipe inserts the left-hand side as the
    first argument in the right-hand side call.  The pipe
    implementation as a syntax transformation was motivated by
    suggestions from Jim Hester and Lionel Henry.
  * all.equal(f, g) for functions now by default also compares their
    environment(.)s, notably via new all.equal method for class
    function.  Comparison of nls() fits, e.g., may now need
    all.equal(m1, m2, check.environment = FALSE).
  * .libPaths() gets a new option include.site, allowing to _not_
    include the site library.  (Thanks to Dario Strbenac's suggestion
    and Gabe Becker's PR#18016.)
  * Lithuanian translations are now available.  (Thanks to Rimantas
    Zakauskas.)
  * names() now works for DOTSXP objects.  On the other hand, in
    R-lang, the R language manual, we now warn against relying on the
    structure or even existence of such dot-dot-dot objects.
  * all.equal() no longer gives an error on DOTSXP objects.
  * capabilities("cairo") now applies only to the file-based devices
    as it is now possible (if very unusual) to build R with Cairo
    support for those but not for X11().
  * There is optional support for tracing the progress of
    loadNamespace() - see its help.
  * (Not Windows.)  l10n_info() reports an additional element, the
    name of the encoding as reported by the OS (which may differ from
    the encoding part (if any) of the result from
    Sys.getlocale("LC_CTYPE").
  * New function gregexec() which generalizes regexec() to find _all_
    disjoint matches and well as all substrings corresponding to
    parenthesized subexpressions of the given regular expression.
    (Contributed by Brodie Gaslam.)
  * New function charClass() in package utils to query the
    wide-character classification functions in use (such as
    iswprint).
  * The names of quantile()'s result no longer depend on the global
    getOption("digits"), but quantile() gets a new optional argument
    digits = 7 instead.
  * grep(), sub(), regexp and variants work considerably faster for
    long factors with few levels.  (Thanks to Michael Chirico's
    PR#18063.)
  * Provide grouping of x11() graphics windows within a window
    manager such as Gnome or Unity; thanks to a patch by Ivan Krylov
    posted to R-devel.
  * The split() method for class data.frame now allows the f argument
    to be specified as a formula.
  * sprintf now warns on arguments unused by the format string.
  * New palettes "Rocket" and "Mako" for hcl.colors() (approximating
    palettes of the same name from the 'viridisLite' package).
    Contributed by Achim Zeileis.
  * The base environment and its namespace are now locked (so one can
    no longer add bindings to these or remove from these).
  * Rterm handling of multi-byte characters has been improved,
    allowing use of such characters when supported by the current
    locale.
  * Rterm now accepts ALT+ +xxxxxxxx sequences to enter Unicode
    characters as hex digits.
  * Environment variable LC_ALL on Windows now takes precedence over
    LC_CTYPE and variables for other supported categories, matching
    the POSIX behaviour.
  * duplicated() and anyDuplicated() are now optimized for integer
    and real vectors that are known to be sorted via the ALTREP
    framework. Contributed by Gabriel Becker via PR#17993.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 14
    and so packages that provide graphics devices should be
    reinstalled.
  * Graphics devices should now specify deviceVersion to indicate
    what version of the graphics engine they support.
  * Graphics devices can now specify deviceClip.  If TRUE, the
    graphics engine will never perform any clipping of output itself.
    The clipping that the graphics engine does perform (for both
    canClip = TRUE and canClip = FALSE) has been improved to avoid
    producing unnecessary artifacts in clipped output.
  * The grid package now allows gpar(fill) to be a linearGradient(),
    a radialGradient(), or a pattern().  The viewport(clip) can now
    also be a grob, which defines a clipping path, and there is a new
    viewport(mask) that can also be a grob, which defines a mask.
    These new features are only supported so far on the Cairo-based
    graphics devices and on the pdf() device.
  * (Not Windows.)  A warning is given when a Cairo-based type is
    specified for a png(), jpeg(), tiff() or bmp() device but Cairo
    is unsupported (so type = "Xlib" is tried instead).
  * grSoftVersion() now reports the versions of FreeType and
    FontConfig if they are used directly (not _via_ Pango), as is
    most commonly done on macOS.
  C-LEVEL FACILITIES:
  * The _standalone_ libRmath math library and R's C API now provide
    log1pexp() again as documented, and gain log1mexp().
  INSTALLATION on a UNIX-ALIKE:
  * configure checks for a program pkgconf if program pkg-config is
    not found.  These are now only looked for on the path (like
    almost all other programs) so if needed specify a full path to
    the command in PKG_CONFIG, for example in file config.site.
  * C99 function iswblank is required - it was last seen missing ca
    2003 so the workaround has been removed.
  * There are new configure options --with-internal-iswxxxxx,
  - -with-internal-towlower and --with-internal-wcwidth which allows
    the system functions for wide-character classification,
    case-switching and width (wcwidth and wcswidth) to be replaced by
    internal ones.  The first has long been used on macOS, AIX (and
    Windows) but this enables it to be unselected there and selected
    for other platforms (it is the new default on Solaris).  The
    second is new in this version of R and is selected by default on
    macOS and Solaris.  The third has long been the default and
    remains so as it contains customizations for East Asian
    languages.
    System versions of these functions are often minimally
    implemented (sometimes only for ASCII characters) and may not
    cover the full range of Unicode points: for example Solaris (and
    Windows) only cover the Basic Multilingual Plane.
  * Cairo installations without X11 are more likely to be detected by
    configure, when the file-based Cairo graphics devices will be
    available but not X11(type = "cairo").
  * There is a new configure option --with-static-cairo which is the
    default on macOS.  This should be used when only static cairo
    (and where relevant, Pango) libraries are available.
  * Cairo-based graphics devices on platforms without Pango but with
    FreeType/FontConfig will make use of the latter for font
    selection.
  LINK-TIME OPTIMIZATION on a UNIX-ALIKE:
  * Configuring with flag --enable-lto=R now also uses LTO when
    installing the recommended packages.
  * R CMD INSTALL and R CMD SHLIB have a new flag --use-LTO to use
    LTO when compiling code, for use with R configured with
  - -enable-lto=R.  For R configured with --enable-lto, they have
    the new flag --no-use-LTO.
    Packages can opt in or out of LTO compilation _via_ a UseLTO
    field in the DESCRIPTION file.  (As usual this can be overridden
    by the command-line flags.)
  BUILDING R on Windows:
  * for GCC &gt;= 8, FC_LEN_T is defined in config.h and hence character
    lengths are passed from C to Fortran in _inter alia_ BLAS and
    LAPACK calls.
  * There is a new text file src/gnuwin32/README.compilation, which
    outlines how C/Fortran code compilation is organized and
    documents new features:
  * R can be built with Link-Time Optimization with a suitable
    compiler - doing so with GCC 9.2 showed several
    inconsistencies which have been corrected.
  * There is support for cross-compiling the C and Fortran code
    in R and standard packages on suitable (Linux) platforms.
    This is mainly intended to allow developers to test later
    versions of compilers - for example using GCC 9.2 or 10.x has
    detected issues that GCC 8.3 in Rtools40 does not.
  * There is experimental support for cross-building R packages
    with C, C++ and/or Fortran code.
  * The R installer can now be optionally built to support a single
    architecture (only 64-bit or only 32-bit).
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++14 where
    available (which it is on all currently checked platforms): if
    not (as before) C++11 is used if available otherwise C++ is not
    supported.
    Packages which specify C++11 will still be installed using C++11.
    C++14 compilers may give deprecation warnings, most often for
    std::random_shuffle (deprecated in C++14 and removed in C++17).
    Either specify C++11 (see 'Writing R Extensions') or modernize
    the code and if needed specify C++14.  The latter has been
    supported since R 3.4.0 so the package's DESCRIPTION would need
    to include something like
    Depends: R (&gt;= 3.4)
  PACKAGE INSTALLATION on Windows:
  * R CMD INSTALL and R CMD SHLIB make use of their flag --use-LTO
    when the LTO_OPT make macro is set in file etc/${R_ARCH}/Makeconf
    or in a personal/site Makevars file.  (For details see 'Writing R
    Extensions' SS4.5.)
    This provides a valuable check on code consistency.  It does work
    with GCC 8.3 as in Rtools40, but that does not detect everything
    the CRAN checks with current GCC do.
  PACKAGE INSTALLATION on macOS:
  * The default personal library directory on builds with
  - -enable-aqua (including CRAN builds) now differs by CPU type,
    one of
    ~/Library/R/x86_64/x.y/library
    ~/Library/R/arm64/x.y/library
    This uses the CPU type R (and hence the packages) were built for,
    so when a x86_64 build of R is run under Rosetta emulation on an
    arm64 Mac, the first is used.
  UTILITIES:
  * R CMD check can now scan package functions for bogus return
    statements, which were possibly intended as return() calls (wish
    of PR#17180, patch by Sebastian Meyer). This check can be
    activated via the new environment variable
    _R_CHECK_BOGUS_RETURN_, true for --as-cran.
  * R CMD build omits tarballs and binaries of previous builds from
    the top-level package directory.  (PR#17828, patch by Sebastian
    Meyer.)
  * R CMD check now runs sanity checks on the use of LazyData, for
    example that a data directory is present and that
    LazyDataCompression is not specified without LazyData and has a
    documented value.  For packages with large LazyData databases
    without specifying LazyDataCompression, there is a reference to
    the code given in 'Writing R Extensions' SS1.1.6 to test the
    choice of compression (as in all the CRAN packages tested a
    non-default method was preferred).
  * R CMD build removes LazyData and LazyDataCompression fields from
    the DESCRIPTION file of packages without a data directory.
  ENCODING-RELATED CHANGES:
  * The parser now treats \Unnnnnnnn escapes larger than the upper
    limit for Unicode points (\U10FFFF) as an error as they cannot be
    represented by valid UTF-8.
    Where such escapes are used for outputting non-printable
    (including unassigned) characters, 6 hex digits are used (rather
    than 8 with leading zeros).  For clarity, braces are used, for
    example \U{0effff}.
  * The parser now looks for non-ASCII spaces on Solaris (as
    previously on most other OSes).
  * There are warnings (including from the parser) on the use of
    unpaired surrogate Unicode points such as \uD834.  (These cannot
    be converted to valid UTF-8.)
  * Functions nchar(), tolower(), toupper() and chartr() and those
    using regular expressions have more support for inputs with a
    marked Latin-1 encoding.
  * The character-classification functions used (by default) to
    replace the system iswxxxxx functions on Windows, macOS and AIX
    have been updated to Unicode 13.0.0.
    The character-width tables have been updated to include new
    assignments in Unicode 13.0.0.
  * The code for evaluating default (extended) regular expressions
    now uses the same character-classification functions as the rest
    of R (previously they differed on Windows, macOS and AIX).
  * There is a build-time option to replace the system's
    wide-character wctrans C function by tables shipped with R: use
    configure option --with-internal-towlower or (on Windows)
  - DUSE_RI18N_CASE in CFLAGS when building R.  This may be needed
    to allow tolower() and toupper() to work with Unicode characters
    beyond the Basic Multilingual Plane where not supported by system
    functions (e.g. on Solaris where it is the new default).
  * R is more careful when truncating UTF-8 and other multi-byte
    strings that are too long to be printed, passed to the system or
    libraries or placed into an internal buffer.  Truncation will no
    longer produce incomplete multibyte characters.
  DEPRECATED AND DEFUNCT:
  * Function plclust() from the package stats and
    package.dependencies(), pkgDepends(), getDepList(),
    installFoundDepends(), and vignetteDepends() from package tools
    are defunct.
  * Defunct functions checkNEWS() and readNEWS() from package tools
    and CRAN.packages() from utils have been removed.
  * R CMD config CXXCPP is defunct (it was deprecated in R 3.6.2).
  * parallel::detectCores() drops support for Irix (retired in 2013).
  * The LINPACK argument to chol.default(), chol2inv(),
    solve.default() and svd() has been defunct since R 3.1.0.  It was
    silently ignored up to R 4.0.3 but now gives an error.
  * Subsetting/indexing, such as ddd[*] or ddd$x on a DOTSXP
    (dot-dot-dot) object ddd has been disabled; it worked by accident
    only and was undocumented.
  BUG FIXES:
  * Many more C-level allocations (mainly by malloc and strdup) are
    checked for success with suitable alternative actions.
  * Bug fix for replayPlot(); this was turning off graphics engine
    display list recording if a recorded plot was replayed in the
    same session.  The impact of the bug became visible if resize the
    device after replay OR if attempted another savePlot() after
    replay (empty display list means empty screen on resize or empty
    saved plot).
  * R CMD check etc now warn when a package exports non-existing S4
    classes or methods, also in case of no "methods" presence.
    (Reported by Alex Bertram; reproducible example and patch by
    Sebastian Meyer in PR#16662.)
  * boxplot() now also accepts calls for labels such as ylab, the
    same as plot().  (Reported by Marius Hofert.)
  * The help page for xtabs() now correctly states that addNA is
    setting na.action = na.pass among others.  (Reported as PR#17770
    by Thomas Soeiro.)
  * The R CMD check &lt;pkg&gt; gives a longer and more comprehensible
    message when DESCRIPTION misses dependencies, e.g., in Imports:.
    (Thanks to the contributors of PR#17179.)
  * update.default() now calls the generic update() on the formula to
    work correctly for models with extended formulas.  (As reported
    and suggested by Neal Fultz in PR#17865.)
  * The horizontal position of leaves in a dendrogram is now correct
    also with center = FALSE.  (PR#14938, patch from Sebastian
    Meyer.)
  * all.equal.POSIXt() no longer warns about and subsequently ignores
    inconsistent "tzone" attributes, but describes the difference in
    its return value (PR#17277).  This check can be disabled _via_
    the new argument check.tzone = FALSE as suggested by Sebastian
    Meyer.
  * as.POSIXct() now populates the "tzone" attribute from its tz
    argument when x is a logical vector consisting entirely of NA
    values.
  * x[[2^31]] &lt;- v now works.  (Thanks to the report and patch by
    Suharto Anggono in PR#17330.)
  * In log-scale graphics, axis() ticks and label positions are now
    computed more carefully and symmetrically in their range,
    typically providing _more_ ticks, fulfilling wishes in PR#17936.
    The change really corresponds to an improved axisTicks() (package
    grDevices), potentially influencing grid and lattice, for
    example.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now correct to at
    least five digits where it was catastrophically wrong,
    previously.
  * sum(df) and similar "Summary"- and "Math"-group member functions
    now work for data frames df with logical columns, notably also of
    zero rows.  (Reported to R-devel by Martin "b706".)
  * unsplit() had trouble with tibbles due to unsound use of rep(NA,
    len)-indexing, which should use NA_integer_ (Reported to R-devel
    by Mario Annau.)
  * pnorm(x, log.p = TRUE) underflows to -Inf slightly later.
  * show(&lt;hidden S4 generic&gt;) prints better and without quotes for
    non-hidden S4 generics.
  * read.table() and relatives treated an "NA" column name as missing
    when check.names = FALSE PR#18007.
  * Parsing strings containing UTF-16 surrogate pairs such as
    "\uD834\uDD1E" works better on some (uncommon) platforms.
    sprintf("%X", utf8ToInt("\uD834\uDD1E")) should now give "1D11E"
    on all platforms.
  * identical(x,y) is no longer true for differing DOTSXP objects,
    fixing PR#18032.
  * str() now works correctly for DOTSXP and related exotics, even
    when these are doomed.
    Additionally, it no longer fails for lists with a class and
    "irregular" method definitions such that e.g. lapply(*) will
    necessarily fail, as currently for different igraph objects.
  * Too long lines in environment files (e.g. Renviron) no longer
    crash R. This limit has been increased to 100,000 bytes.
    (PR#18001.)
  * There is a further workaround for FreeType giving incorrect
    italic font faces with cairo-based graphics devices on macOS.
  * add_datalist(*, force = TRUE) (from package tools) now actually
    updates an existing data/datalist file for new content.  (Thanks
    to a report and patch by Sebastian Meyer in PR#18048.)
  * cut.Date() and cut.POSIXt() could produce an empty last interval
    for breaks = "months" or breaks = "years".  (Reported as PR#18053
    by Christopher Carbone.)
  * Detection of the encoding of 'regular' macOS locales such as
    en_US (which is UTF-8) had been broken by a macOS change:
    fortunately these are now rarely used with en_US.UTF-8 being
    preferred.
  * sub() and gsub(pattern, repl, x, *) now keep attributes of x such
    as names() also when pattern is NA (PR#18079).
  * Time differences ("difftime" objects) get a replacement and a
    rep() method to keep "units" consistent.  (Thanks to a report and
    patch by Nicolas Bennett in PR#18066.)
  * The \RdOpts macro, setting defaults for \Sexpr options in an Rd
    file, had been ineffective since R 2.12.0: it now works again.
    (Thanks to a report and patch by Sebastian Meyer in PR#18073.)
  * mclapply and pvec no longer accidentally terminate parallel
    processes started before by mcparallel or related calls in
    package parallel (PR#18078).
  * grep and other functions for evaluating (extended) regular
    expressions handle in Unicode also strings not explicitly flagged
    UTF-8, but flagged native when running in UTF-8 locale.
  * Fixed a crash in fifo implementation on Windows (PR#18031).
  * Binary mode in fifo on Windows is now properly detected from
    argument open (PR#15600, PR#18031).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1622808000">- The line %{__install} -m 755 -d %{_infodir}
  no longer works in TW or Factory.
  But without that line it works everywhere. So this instruction
  was commented out of the spec file.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1628596800">- CHANGES IN R 4.1.1:
  NEW FEATURES:
  * require(pkg, quietly = TRUE) is quieter and in particular does
    not warn if the package is not found.
  DEPRECATED AND DEFUNCT:
  * Use of ftp:// URIs should be regarded as deprecated, with
    on-going support confined to method = "libcurl" and not routinely
    tested.  (Nowadays no major browser supports them.)
  * The non-default method = "internal" is deprecated for http:// and
    ftp:// URIs for both download.file and url.
  * On Windows, method = "wininet" is deprecated for http://,
    https:// and ftp:// URIs for both download.file and url.  (A
    warning is only given for ftp://.)
    For ftp:// URIs the default method is now "libcurl" if available
    (which it is on CRAN builds).
    method = "wininet" remains the default for http:// and https://
    URIs but if libcurl is available, using method = "libcurl" is
    preferred.
  INSTALLATION:
  * make check now works also without a LaTeX installation.  (Thanks
    to Sebastian Meyer's PR#18103.)
  BUG FIXES:
  * make check-devel works again in an R build configured with
  - -without-recommended-packages.
  * qnbinom(p, size, mu) for large size/mu is correct now in a range
    of cases (PR#18095); similarly for the (size, prob)
    parametrization of the negative binomial.  Also qpois() and
    qbinom() are better and or faster for extreme cases.  The
    underlying C code has been modularized and is common to all four
    cases of discrete distributions.
  * gap.axis is now part of the axis() arguments which are passed
    from bxp(), and hence boxplot().  (Thanks to Martin Smith's
    report and suggestions in PR#18109.)
  * .First and .Last can again be set from the site profile.
  * seq.int(from, to, *) and seq.default(..) now work better in large
    range cases where from-to is infinite where the two boundaries
    are finite.
  * all.equal(x,y) now returns TRUE correctly also when several
    entries of abs(x) and abs(y) are close to .Machine$double.xmax,
    the largest finite numeric.
  * model.frame() now clears the object bit when removing the class
    attribute of a value via na.action (PR#18100).
  * charClass() now works with multi-character strings on Windows
    (PR#18104, fixed by Bill Dunlap).
  * encodeString() on Solaris now works again in Latin-1 encoding on
    characters represented differently in UTF-8.  Support for
    surrogate pairs on Solaris has been improved.
  * file.show() on Windows now works with non-ASCII path names
    representable in the current native encoding (PR#18132).
  * Embedded R on Windows can now find R home directory via the
    registry even when installed only for the current user
    (PR#18135).
  * pretty(x) with finite x now returns finite values also in the
    case where the extreme x values are close in size to the maximal
    representable number .Machine$double.xmax.
    Also, it's been tweaked for very small ranges and when a boundary
    is close (or equal) to zero; e.g., pretty(c(0,1e-317)) no longer
    has negative numbers, currently still warning about a very small
    range, and pretty(2^-(1024 - 2^-1/(c(24,10)))) is more accurate.
  * The error message for not finding vignette files when weaving has
    correct file sizes now. (Thanks to Sebastian Meyer's PR#18154.)
  * dnbinom(20, &lt;large&gt;, 1) now correctly gives 0, and similar cases
    are more accurate with underflow precaution.  (Reported by Francisco Vera Alcivar in PR#18072.)</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635163200">- repaired https://bugzilla.suse.com/show_bug.cgi?id=1191380
  (rpmacros now go to rpmmacrodir)
- minor clean-ups in spec file</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635768000">- CHANGES IN R 4.1.2:
  C-LEVEL FACILITIES:
  * The workaround in headers R.h and Rmath.h (using namespace std;)
    for the Oracle Developer Studio compiler is no longer needed now
    C++11 is required so has been removed.  A couple more usages of
    log() (which should have been std::log()) with an int argument
    are reported on Solaris.
  * The undocumented limit of 4095 bytes on messages from the
    S-compatibility macros PROBLEM and MESSAGE is now documented and
    longer messages will be silently truncated rather than
    potentially causing segfaults.
  * If the R_NO_SEGV_HANDLER environment variable is non-empty, the
    signal handler for SEGV/ILL/BUS signals (which offers recovery
    user interface) is not set. This allows more reliable debugging
    of crashes that involve the console.
  DEPRECATED AND DEFUNCT:
  * The legacy S-compatibility macros PROBLEM, MESSAGE, ERROR, WARN,
    WARNING, RECOVER, ... are deprecated and will be hidden in R
    4.2.0. R's native interface of Rf_error and Rf_warning has long
    been preferred.
  BUG FIXES:
  * .mapply(F, dots, .) no longer segfaults when dots is not a list
    and uses match.fun(F) as always documented; reported by Andrew
    Simmons in PR#18164.
  * hist(&lt;Date&gt;, ...) and hist(&lt;POSIXt&gt;, ...)  no longer pass
    arguments for rect() (such as col and density) to axis().
    (Thanks to Sebastian Meyer's PR#18171.)
  * \Sexpr{ch} now preserves Encoding(ch). (Thanks to report and
    patch by Jeroen Ooms in PR#18152.)
  * Setting the RNG to "Marsaglia-Multicarry" e.g., by RNGkind(), now
    warns in more places, thanks to Andr'e Gillibert's report and
    patch in PR#18168.
  * gray(numeric(), alpha=1/2) no longer segfaults, fixing PR#18183,
    reported by Till Krenz.
  * Fixed dnbinom(x, size=&lt;very_small&gt;, .., log=TRUE) regression,
    reported by Martin Morgan.
  * as.Date.POSIXlt(x) now keeps names(x), thanks to Davis Vaughan's
    report and patch in PR#18188.
  * model.response() now strips an "AsIs" class typically, thanks to
    Duncan Murdoch's report and other discussants in PR#18190.
  * try() is considerably faster in case of an error and long call,
    as e.g., from some do.call().  Thanks to Alexander Kaever's
    suggestion posted to R-devel.
  * qqline(y = &lt;object&gt;) such as y=I(.), now works, see also
    PR#18190.
  * Non-integer mgp par() settings are now handled correctly in
    axis() and mtext(), thanks to Mikael Jagan and Duncan Murdoch's
    report and suggestion in PR#18194.
  * formatC(x) returns length zero character() now, rather than ""
    when x is of length zero, as documented, thanks to Davis
    Vaughan's post to R-devel.
  * removeSource(fn) now retains (other) attributes(fn).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1647000000">- CHANGES IN R 4.1.3:
  NEW FEATURES:
  * The default version of Bioconductor has been changed to 3.14.
    (This is used by setRepositories and the menus in GUIs.)
  UTILITIES:
  * R CMD check --as-cran has a workaround for a bug in versions of
    file up to at least 5.41 which mis-identify DBF files last
    changed in 2022 as executables.
  C-LEVEL FACILITIES:
  * The legacy S-compatibility macros SINGLE_* in R_ext/Constants.h
    (included by R.h) are deprecated and will be removed in R 4.2.0.
  BUG FIXES:
  * Initialization of self-starting nls() models with initialization
    functions following the pre-R-4.1.0 API (without the ...
    argument) works again for now, with a deprecation warning.
  * Fixed quoting of ~autodetect~ in Java setting defaults to avoid
    inadvertent user lookup due to leading ~, reported in PR#18231 by
    Harold Gutch.
  * substr(., start, stop) &lt;- v now treats _negative_ stop values
    correctly.  Reported with a patch in PR#18228 by Brodie Gaslam.
  * Subscripting an array x without dimnames by a
    length(dim(x))-column character matrix gave "random" non-sense,
    now an error; reported in PR#18244 by Mikael Jagan.
  * ...names() now matches names(list(...)) closely, fixing PR#18247.
  * all.equal(*, scale = s) now works as intended when length(s) &gt; 1,
    partly thanks to Michael Chirico's PR#18272.
  * print(x) for long vectors x now also works for named atomic
    vectors or lists and prints the correct number when reaching the
    getOption("max.print") limit; partly thanks to a report and
    proposal by Hugh Parsonage to the R-devel list.
  * all.equal(&lt;selfStart&gt;, *) no longer signals a deprecation
    warning.
  * reformulate(*, response=r) gives a helpful error message now when
    length(r) &gt; 1, thanks to Bill Dunlap's PR#18281.
  * Modifying globalCallingHandlers inside withCallingHandlers() now
    works or fails correctly, thanks to Henrik Bengtsson's PR#18257.
  * hist(&lt;Date&gt;, breaks = "days") and hist(&lt;POSIXt&gt;, breaks = "secs")
    no longer fail for inputs of length 1.
  * qbeta(.001, .9, .009) and similar cases now converge correctly
    thanks to Ben Bolker's report in PR#17746.
  * window(x, start, end) no longer wrongly signals "'start' cannot
    be after 'end'", fixing PR#17527 and PR#18291.
  * data() now checks that its (rarely used) list argument is a
    character vector - a couple of packages passed other types and
    gave incorrect results.
  * which() now checks its arr.ind argument is TRUE rather coercing
    to logical and taking the first element - which gave incorrect
    results in package code.
  * model.weights() and model.offset() more carefully extract their
    model components, thanks to Ben Bolker and Tim Taylor's R-devel
    post.
  * list.files(recursive = TRUE) now shows all broken symlinks
    (previously, some of them may have been omitted, PR#18296).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1650628800">- CHANGES IN R 4.2.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * The formula method of aggregate() now matches the generic in
    naming its first argument x (resolving PR#18299 by Thomas
    Soeiro).
    This means that calling aggregate() with a formula as a named
    first argument requires name formula in earlier versions of R and
    name x now, so portable code should not name the argument (code
    in many packages did).
  * Calling &amp;&amp; or || with either argument of length greater than one
    now gives a warning (which it is intended will become an error).
  * Calling if() or while() with a condition of length greater than
    one gives an error rather than a warning.  Consequently,
    environment variable _R_CHECK_LENGTH_1_CONDITION_ no longer has
    any effect.
  * Windows users should consult the WINDOWS section below for some
    profound changes including
  * Support for 32-bit builds has been dropped.
  * UTF-8 locales are used where available.
  * The default locations for the R installation and personal
    library folder have been changed.
    Thanks to Tomas Kalibera for months of work on the Windows port
    for this release.
  NEW FEATURES:
  * matrix(x, n, m) now warns in more cases where length(x) differs
    from n * m, as suggested by Abby Spurdle and Wolfgang Huber in
    Feb 2021 on the R-devel mailing list.
    This warning can be turned into an error by setting environment
    variable _R_CHECK_MATRIX_DATA_ to TRUE: R CMD check --as-cran
    does so unless it is already set.
  * Function file_test() in package utils gains tests for symlinks,
    readability and writability.
  * capabilities("libxml") is now false.
    The description of capabilities("http/ftp") now reflects that it
    refers to the default method, no longer the internal one.
  * simplify2array() gains an except argument for controlling the
    exceptions used by sapply().
  * Environment variables R_LIBS_USER and R_LIBS_SITE are both now
    set to the R system default if unset or empty, and can be set to
    NULL to indicate an empty list of user or site library
    directories.
  * The warning for axis()(-like) calls in cases of relatively small
    ranges (typically in log-scale situations) is slightly improved
    _and_ suppressed from explicit calls to .axisPars() as has always
    been the intention.
  * The contrasts setter function `contrasts&lt;-` gains an explicit
    default how.many = NULL rather than just using missing(how.many).
  * grid.pretty() gains a new optional argument n = 5.
  * There is a new function .pretty() with option bounds as a
    technical-utility version of pretty().  It and pretty() gain a
    new argument f.min with a better than back-compatible default.
  * Function grDevices::axisTicks() and related functions such as
    graphics::axis() work better, notably for the log scale; partly
    because of the pretty() improvements, but also because care is
    taken e.g., when ylim is finite but diff(ylim) is infinite.
  * nclass.FD() gains a digits option.
  * The R Mathlib internal C function bd0() (called indirectly from a
    dozen probability density and distribution functions such as
    dpois(), dbinom(), dgamma(), pgamma() _etc_) has been
    complemented by a more sophisticated and (mostly) more accurate C
    function ebd0(), currently called only by internal dpois_raw()
    improving accuracy for R level dpois() and potentially others
    calling it such as dnbinom(), dgamma() or pgamma().  (Thanks to
    Morten Welinder's PR#15628.)
  * write.ftable() gains sep = " " argument as suggested by Thomas
    Soeiro.
  * The names of the locale categories supported by R's
    Sys.getlocale() and Sys.setlocale() are now provided by variable
    .LC.categories in the base namespace.
  * The Date and POSIXt methods for hist() and the histogram method
    for plot() now also use the new default col = "lightgray" in
    consistency with the corresponding change to hist()'s default for
    R 4.0.0.
  * hist.default() gains new fuzz argument, and the histogram plot
    method no longer uses fractional axis ticks when displaying
    counts ("Frequency").
  * mapply() and hence Map() now also obey the "max-or-0-if-any"
    recycling rule, such that, e.g., Map(`+`, 1:3, 1[0]) is valid
    now.
  * as.character(&lt;obj&gt;) for "hexmode" or "octmode" objects now
    fulfils the important basic rule as.character(x)[j] ===
    as.character(x[j]).
  * The set utility functions, notably intersect() have been tweaked
    to be more consistent and symmetric in their two set arguments,
    also preserving a common mode.
  * substr(ch, start,end) &lt;- new now e.g., preserves names(ch); ditto
    for substring(), thanks to a patch from Brodie Gaslam.
  * plot(&lt;lm&gt;) gains a extend.ylim.f argument, in partial response to
    PR#15285; further PR#17784 is fixed thanks to several
    contributors and a patch by Elin Waring.  The Cook's dist
    contours get customizable via cook.col and cook.lty with a
    different default color and their legend is nicer by default and
    customizable via cook.legendChanges.
  * Attempting to subset an object that is not subsettable now
    signals an error of class notSubsettableError. The
    non-subsettable object is contained in the object field of the
    error condition.
  * Subscript-out-of-bounds errors are now signaled as errors of
    class subscriptOutOfBoundsError.
  * Stack-overflow errors are now signaled as errors inheriting from
    class stackOverflowError. See ?stackOverflowError for more
    details.
  * New partly experimental Sys.setLanguage() utility, solving the
    main problem of PR#18055.
  * gettext() and gettextf() get a new option trim = TRUE which when
    set to false allows translations for strings such as "Execution
    halted\n" typical for C code.
  * An experimental implementation of hash tables is now available.
    See ?hashtab for more details.
  * identical() gains a extptr.as.ref argument for requesting that
    external pointer objects be compared as reference objects.
  * reorder() gets an argument decreasing which it passes to sort()
    for level creation; based on the wish and patch by Thomas Soeiro
    in PR#18243.
  * as.vector() gains a data.frame method which returns a simple
    named list, also clearing a long standing 'FIXME' to enable
    as.vector(&lt;data.frame&gt;, mode="list").  This breaks code relying
    on as.vector(&lt;data.frame&gt;) to return the unchanged data frame.
  * legend() is now vectorized for arguments cex, x.intersp, and
    text.width.  The latter can now also be specified as a vector
    (one element for each column of the legend) or as NA for
    computing a proper column wise maximum value of strwidth(legend).
    The argument y.intersp can be specified as a vector with one
    entry for each row of the legend.
    legend() also gains new arguments title.cex and title.font.
    Thanks to Swetlana Herbrandt.
  * Deparsing no longer remaps attribute names dim, dimnames, levels,
    names and tsp to historical S-compatible names (which structure()
    maps back).
  * sample() and sample.int() have additional sanity checks on their
    size and n arguments.
    all.equal.numeric() gains a sanity check on its tolerance
    argument - calling all.equal(a, b, c) for three numeric vectors
    is a surprisingly common error.
    mean(na.rm =), rank(na.last =), barplot(legend.text =),
    boxplot(), contour(drawlabels =), polygon(border =) and
    methods::is(class2 =) have more robust sanity checks on their
    arguments.
    R CMD Rd2pdf (used by R CMD check) has a more robust sanity check
    on the format of \alias{} commands.
  * psigamma(x, deriv) for negative x now also works for deriv = 4
    and 5; their underlying C level dpsifn() is documented in
    'Writing R Extensions'.
  * The HTML help system now uses HTML5 (wish of PR#18149).
  * ks.test() now provides exact p-values also with ties and MC
    p-values in the two-sample (Smirnov) case.  By Torsten Hothorn.
  * ks.test() gains a formula interface, with y ~ 1 for the
    one-sample (Kolmogorov) test and y ~ group for the two-sample
    (Smirnov) test.  Contributed by Torsten Hothorn.
  * The return value from ks.test() now has class c("ks.test",
    "htest") - packages using try() need to take care to use
    inherits() and not == on the class.
  * New functions psmirnov(), qsmirnov() and rsmirnov() in package
    stats implementing the asymptotic and exact distributions of the
    two-sample Smirnov statistic.
  * iconv() now allows sub = "c99" to use C99-style escapes for UTF-8
    inputs which cannot be converted to encoding to.
  * In a forward pipe |&gt; expression it is now possible to use a named
    argument with the placeholder _ in the rhs call to specify where
    the lhs is to be inserted.  The placeholder can only appear once
    on the rhs.
  * The included LAPACK sources have been updated to version 3.10.0,
    except for the four Fortran 77 routines which 3.10.0 has
    re-implemented in Fortran 90 (where the older versions have been
    retained as the R build process does not support Fortran 90).
  * path.expand() and most other uses of tilde expansion now warn if
    a path would be too long if expanded.  (An exception is
    file.exists(), which silently returns false.)
  * trunc(&lt;Date&gt;, *) now supports units = "months" or "years" for
    consistency with the POSIXt method, thanks to Dirk Eddelbuettel's
    proposal in PR#18099.
  * list2DF() now checks that its arguments are of the same length,
    rather than use recycling.
  * The HTML help system has several new features: LaTeX-like math
    can be typeset using either KaTeX or MathJax, usage and example
    code is highlighted using Prism, and for dynamic help the output
    of examples and demos can be shown within the browser if the
    knitr package is installed. These features can be disabled by
    setting the environment variable _R_HELP_ENABLE_ENHANCED_HTML_ to
    a false value.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 15
    and so packages that provide graphics devices should be
    reinstalled.
  * The grid package now allows the user to specify a "vector" of
    pattern fills.  The fill argument to gpar() accepts a list of
    gradients and/or patterns and the functions linearGradient(),
    radialGradient(), and pattern() have a new group argument.
    Points grobs (data symbols) can now also have a pattern fill.
    The grobCoords() function now returns a more informative and
    complex result.
  * The grid package has new functions for drawing isolated groups:
    grid.group(), grid.define(), and grid.use().  These functions add
    compositing operators and affine transformations to R's graphics
    capabilities.
    The grid package also has new functions for stroking and filling
    paths: grid.stroke(), grid.fill(), and grid.fillStroke().
    A new function as.path() allows the user to specify the fill rule
    for a path that is to be used for clipping, stroking, or filling;
    available options are "winding" and "evenodd".  A new function
    as.mask() allows the user to specify the type of a mask;
    available options are "alpha" and "luminance".
    These new features are only supported so far (at most) on the
    Cairo-based graphics devices and on the pdf() device.
  * dev.capabilities() reports on device support for the new
    features.
  * par() now warns about unnamed non-character arguments to prevent
    misuse such as {usr &lt;- par("usr"); par(usr)}.
  INSTALLATION:
  * Facilities for accessing ftp:// sites are no longer tested
    (except _pro tem_ for curlGetHeaders()) as modern browsers have
    removed support.
  * R can now be built with DEFS = -DSTRICT_R_HEADERS .
  PACKAGE INSTALLATION:
  * R CMD INSTALL no longer tangles vignettes. This completes an R
    CMD build change in R 3.0.0 and affects packages built before R
    3.0.2. Such packages should be re-made with R CMD build to have
    the tangled R code of vignettes shipped with the tarball.
  * USE_FC_LEN_T will become the default: this uses the correct
    prototypes for Fortran BLAS/LAPACK routines called from C/C++,
    and requires adjustment of most such calls - see 'Writing R
    Extensions' SS6.6.2.  (This has been supported since R 3.6.2.)
  * Package installation speed for packages installed with
    keep.source has been improved. This resolve the issue reported by
    Ofek Shilon in PR#18236.
  UTILITIES:
  * R CMD check can optionally report files/directories left behind
    in home, /tmp (even though TMPDIR is set) and other directories.
    See the "R Internals" manual for details.
  * R CMD check now reports byte-compilation errors during
    installation.  These are not usually fatal but may result in
    parts of the package not being byte-compiled.
  * _R_CHECK_DEPENDS_ONLY_ can be applied selectively to examples,
    tests and/or vignettes in R CMD check: see the "R Internals"
    manual.
  * _R_CHECK_SRC_MINUS_W_IMPLICIT_ now defaults to true: recent
    versions of Apple clang on macOS have made implicit function
    declarations in C into a compilation error.
  * R CMD check --as-cran makes use of the environment variable
    AUTORECONF.  See the "R Internals" manual SS8 for further details.
  * R CMD check --use-valgrind also uses valgrind when re-building
    vignettes as some non-Sweave vignettes unhelpfully comment out
    all their code when R CMD check runs vignettes.
  * Errors in re-building vignettes (unless there are LaTeX errors)
    are reported by R CMD check as ERROR rather than WARNING when
    running vignettes has been skipped (as it frequently is in CRAN
    checks and by --as-cran).
  * R CMD Rd2pdf gains a --quiet option that is used by R CMD build
    when building the PDF package manual.
  * R CMD Rd2pdf now always runs LaTeX in batch mode, consistent with
    Texinfo &gt;= 6.7. The --batch option is ignored.
  * R CMD build and R CMD check now include the Rd file name and line
    numbers in the error message of an \Sexpr evaluation failure.
  * For packages using the \doi Rd macro (now an install-time \Sexpr)
    but no other dynamic Rd content, R CMD build now produces a
    smaller tarball and is considerably faster - skipping temporary
    package installation.
  C-LEVEL FACILITIES:
  * The non-API header R_ext/R-ftp-http.h is no longer provided, as
    the entry points it covered are now all defunct.
  * A number of non-API declarations and macro definitions have been
    moved from the installed header Rinternals.h to the internal
    header Defn.h. Packages that only use entry points and
    definitions documented to be part of the API as specified in
    'Writing R Extensions' SS6 should not be affected.
  * The macro USE_RINTERNALS no longer has any effect when compiling
    package code.  Packages which also use R_NO_REMAP will need to
    ensure that the remapped names are used for calls to API
    functions that were formerly also made available as macros.
  * The deprecated legacy S-compatibility macros PROBLEM, MESSAGE,
    ERROR, WARN, WARNING, RECOVER, ... are no longer defined in
    R_exts/RS.h (included by R.h).  Replace these by calls to
    Rf_error and Rf_warning (defined in header R_ext/Error.h included
    by R.h).
    Header R_ext/RS.h no longer includes R_ext/Error.h.
  * Header R_ext/Constants.h (included by R.h) when included from C++
    now includes the C++ header cfloat rather than the C header
    float.h (now possible as C++11 is required).
  * The legacy S-compatibility macros DOUBLE_* in R_ext/Constants.h
    (included by R.h) are deprecated.
  * The deprecated S-compatibility macros SINGLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * R_Calloc, R_Free and R_Realloc are preferred to their unprefixed
    forms and error messages now use the prefix. These forms were
    introduced in R 3.4.0 and are available even when
    STRICT_R_HEADERS is defined.
  * rmultinom has been documented in 'Writing R Extensions' SS6 so is
    now part of the R API.
  * Similarly, Rtanpi, called from R level tanpi() is now part of the
    R API.
  * The long-deprecated, undocumented and non-API entry point call_R
    is no longer declared in R_ext/RS.h (included by R.h).
  * The header S.h which has been unsupported since Jan 2016 has been
    removed.  Use R.h instead.
  DEPRECATED AND DEFUNCT:
  * The (non-default and deprecated) method = "internal" for
    download.file() and url() no longer supports http:// nor ftp://
    URIs.  (It is used only for file:// URIs.)
    On Windows, download.file(method = "wininet") no longer supports
    ftp:// URIs.  (It is no longer the default method, which is
    "libcurl" and does.)
    On Windows, the deprecated method = "wininet" now gives a warning
    for http:// and https:// URIs for both download.file() and url().
    (It is no longer the default method.)
  * On Windows, the command-line option --max-mem-size and
    environment variable R_MAX_MEM_SIZE are defunct.  The memory
    allocation limit was important for 32-bit builds, but these are
    no longer supported.
  * default.stringsAsFactors() is now formally deprecated, where that
    was only mentioned on its regular help page, previously.  So it
    now gives a warning if called.
  * unix.time() is defunct now; it had been deprecated since R 3.4.0.
  BUG FIXES:
  * Setting digits = 0 in format(), print.default() (and hence
    typically print()) or options() is again invalid.  Its behaviour
    was platform-dependent, and it is unclear what "zero significant
    digits" should mean (PR#18098).
  * Messages from C code in the cairo section of package grDevices
    are now also offered for translation, thanks to Michael Chirico's
    PR#18123.
  * mean(x) with finite x now is finite also without "long.double"
    capability.
  * R CMD Rd2pdf no longer leaves an empty build directory behind
    when it aborts due to an already existing output file.  (Thanks
    to Sebastian Meyer's PR#18141.)
  * density(x, weights = w, na.rm = TRUE) when anyNA(x) is true, now
    removes weights "in parallel" to x, fixing PR#18151, reported by
    Matthias Gondan.  Additionally, it gets a subdensity option.
  * Conversion of \Sexpr[]{&lt;expR&gt;} to LaTeX or HTML no longer
    produces long blocks of empty lines when &lt;expR&gt; itself contains
    several lines all producing empty output.  Thanks to a report and
    patch by Ivan Krylov posted to R-devel.
  * R CMD build no longer fails if a package vignette uses child
    documents and inst/doc exists.  (Thanks to Sebastian Meyer's
    PR#18156.)
  * When an R documentation ('help' source) file man/foo.Rd in a
    package has \donttest{..} examples with a syntax error, it is now
    signalled as ERROR and with correct line numbers relating to the
  * -Ex.R file, thanks to Duncan Murdoch and Sebastian Meyer's
    reports and patch proposals in PR#17501.
  * Improved determination of the correct translation domain in
    non-base packages, addressing the combination of PR#18092 and
    PR#17998 (#c6) with reports and _augmented_ patch #2904 by
    Suharto Anggono.
    Note that "R-base" is no longer the default domain e.g., for
    top-level calls to gettext(); rather translation needs explicit
    domain = * specification in such cases.
  * identical(attrib.as.set=FALSE) now works correctly with data
    frames with default row names (Thanks to Charlie Gao's PR#18179).
  * txtProgressBar() now enforces a non-zero width for argument char,
    without which no progress can be visible.
  * dimnames(table(d)) is more consistent in the case where d is a
    list with a single component, thanks to Thomas Soeiro's report to
    R-devel.
    Further, table(d1, d2) now gives an error when d1 and d2 are data
    frames as suggested by Thomas in PR#18224.
  * Fix for drawing semi-transparent lines and fills on the native
    Windows graphics device (PR#18219 and PR#16694).  Thanks to Nick
    Ray for helpful diagnosis on Bugzilla.
  * The deparser now wraps sub-expressions such as if(A) ..  with
    parentheses when needed; thanks to Duncan Murdoch's PR#18232 and
    Lionel Henry's patches there.
  * remove.packages() no longer tries to uninstall Priority: base
    packages, thanks to a report and suggestions by Colin Fay in
    PR#18227.
  * win.metafile() now has xpinch and ypinch arguments so that the
    user can override Windows' (potentially wrong) guess at device
    dimensions.
  * x[i] and x[[i]] for non-integer i should now behave in all cases
    as always documented: the index used is equivalent to
    as.integer(i) unless that would overflow where trunc(i) is used
    instead; thanks to Suharto Anggono's report and patch proposals
    in PR#17977.
  * asOneSidedFormula() now associates the resulting formula with the
    global environment rather than the evaluation environment created
    for the call.
  * &lt;bibentry&gt;$name now matches the field name case-insensitively,
    consistent with bibentry() creation and the replacement method.
  * cbind() failed to detect some length mismatches with a mixture of
    time-series and non-time-series inputs.
  * The default LaTeX style file Sweave.sty used by the RweaveLatex
    driver no longer loads the obsolete ae package; thanks to a
    report by Thomas Soeiro in PR#18271.  Furthermore, it now skips
    \usepackage[T1]{fontenc} for engines other than pdfTeX (if
    detected) or if the new [nofontenc] option is used.
  * smooth.spline() now stores its logical cv argument more safely,
    fixing a rare bug when printing, and also stores n.
  * smooth.spline(x,y,*) now computes the cv.crit statistic
    correctly, also when is.unsorted(x), fixing PR#18294.
  * The data.frame method of rbind() now warns when binding
    not-wholly-recycling vectors, by analogy to the default method
    (for matrices).
  * setAs() finds the correct class for name to when multiple
    packages define a class with that name. Thanks to Gabor Csardi
    for the report.
  * Fix for detaching a package when two classes of the same name are
    present in method signatures for the same generic. Thanks to
    Gabor Csardi for the report.
  * match.arg("", c("", "a", "B")) gives a better error message, in
    part from PR#17959, thanks to Elin Waring.
  * R CMD Sweave --clean no longer removes pre-existing files or
    subdirectories (PR#18242).
  * The quartz() device no longer splits polylines into subpaths.
    That has caused narrowly-spaced lines with many points to always
    look solid even when dashed line type was used due to dash phase
    restarts.
  * Deparsing constructs such as quote(1 + `!`(2) + 3) works again as
    before R 3.5.0, thanks to the report and patch in PR#18284 by
    Suharto Anggono.
  * as.list(f) for a factor f now keeps names(f), fixing PR#18309.
  * qbeta(.001, .9, .009) and analogous qf() calls now return a
    correct value instead of NaN or wrongly 1, all with a warning;
    thanks to the report by Ludger Goeminne in PR#18302.
  * plot.lm() failed to produce the plot of residuals vs.  factor
    levels (i.e., which=5 when leverages are constant) for models
    with character predictors (PR#17840).
  * interaction.plot(..., xtick = TRUE) misplaced the x-axis line
    (PR#18305).
  * Not strictly fixing a bug, format()ing and print()ing of
    non-finite Date and POSIXt values NaN and +/-Inf no longer show
    as NA but the respective string, e.g., Inf, for consistency with
    numeric vector's behaviour, fulfilling the wish of PR#18308.
  * R CMD check no longer runs test scripts generated from
    corresponding .Rin files twice and now signals an ERROR if
    processing an .Rin script fails.
  * tools::Rd2txt() used for plain-text help pages now renders \hrefs
    (if tools::Rd2txt_options(showURLs = TRUE)) and \urls with
    percent-encoding and standards-compliant delimiting style (angle
    brackets and no URL: prefix).  \email is now rendered with a
    mailto: prefix.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1655985600">- CHANGES IN R 4.2.1:
  NEW FEATURES:
  * New function utils::findCRANmirror() to find out if a CRAN mirror
    has been selected, otherwise fallback to the main site.  This
    behaves in the same way as tools::CRAN_package_db() and is
    intended for packages wishing to access CRAN for purposes other
    than installing packages.
    The need for this was shown by a day when the main CRAN website
    was offline and a dozen or so packages which had its URL
    hardcoded failed their checks.
  INSTALLATION on a UNIX-ALIKE:
  * The libraries searched for by --with-blas (without a value) now
    include BLIS (after OpenBLAS but before ATLAS).  And on macOS,
    the Accelerate framework (after ATLAS).  (This is patterned after
    the AX_BLAS macro from the Autoconf Archive.)
  * The included LAPACK sources have been updated to 3.10.1.
  UTILITIES:
  * The (full path to) the command tidy to be used for HTML
    validation can be set by environment variable R_TIDYCMD.
  * Setting environment variable _R_CHECK_RD_VALIDATE_RD2HTML_ to a
    false value will override R CMD check --as-cran and turn off HTML
    validation.  This provides a way to circumvent a problematic
    tidy.
    The 2006 version that ships with macOS is always skipped.
  C-LEVEL FACILITIES:
  * The undocumented legacy declarations of Sint, Sfloat, SINT_MAX
    and SINT_MIN in header R.h are deprecated.
  BUG FIXES:
  * fisher.test(d) no longer segfaults for "large" d; fixing PR#18336
    by preventing/detecting an integer overflow reliably.
  * tar(., files=*) now produces correctly the warning about invalid
    uid or gid of files, fixing PR#18344, reported by Martin Morgan.
  * tk_choose.files() with multi = FALSE misbehaved on paths
    containing spaces (PR#18334) (regression introduced in R 4.0.0).
  * sort(x, partial = ind, *) now works correctly notably for the
    non-default na.last = FALSE or TRUE, fixing PR#18335 reported by
    James Edwards.
  * Environment variable _R_CHECK_XREFS_REPOSITORIES_ is only used
    for checking .Rd cross-references in R CMD check (as documented)
    and not for other uses looking for a CRAN mirror.
  * The search for a CRAN mirror when checking packages now uses
    getOption("repos") if that specifies a CRAN mirror, even when it
    does not also specify all three Bioconductor repositories (as was
    previously required).
  * The HTML code generated by tools::Rd2HTML() has been improved to
    pass tidy 5.8.0.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1667217600">- CHANGES IN R 4.2.2:
  NEW FEATURES:
  * tools::Rdiff(useDiff = TRUE) checks for the presence of an
    external diff command and switches to useDiff = FALSE if none is
    found.  This allows R CMD Rdiff to always work.
  * On Windows, environment variable R_LIBCURL_SSL_REVOKE_BEST_EFFORT
    can be used to switch to only 'best-effort' SSL certificate
    revocation checks with the default "libcurl" download method.
    This reduces security, but may be needed for downloads to work
    with MITM proxies (PR#18379).
  * (macOS) The run-time check for libraries from XQuartz for X11 and
    Tcl/Tk no longer uses otool from the Apple Developer Tools
    (PR#18400).
  * The LaTeX style for producing the PDF manuals, Rd.sty, now loads
    the standard amsmath, amsfonts and amssymb packages for greater
    coverage of math commands in the Rd \eqn and \deqn macros.  The
    \mathscr LaTeX command is also provided (via the mathrsfs
    package, if available, or the amsfonts bundle otherwise),
    fulfilling the wish of PR#18398.
  * (Windows) The default format of readClipboard() and
    writeClipboard() has been changed to 13 (CF_UNICODETEXT).
  INSTALLATION on a UNIX-ALIKE:
  * The PDF manuals (if built) can be compacted by the new target
    make compact-pdf (at the top level or in directory doc/manual).
  * There is now configure support for LLVM clang 15 on Linux, which
    defaults to position-independent (PIE) executables whereas
    gfortran does not.
  * Many small changes to ease compilation (and suppress warnings)
    with LLVM clang 15.
  BUG FIXES:
  * Rscript -e would fail if stdin were closed (Reported by Henrik
    Bengtsson.)
  * qt(*, log.p=TRUE) in outer tails no longer produces NaN in its
    final steps, thus fixing PR#18360.
  * tools::Rd2latex() now escapes hashes and ampersands when writing
    URLs, fixing LaTeX errors with such URLs in \tabular.
  * When isGeneric(f, fdef=*) is used with mismatching names, the
    warning is better understandable; reported (with fix) in PR#18370
    by Gabe Becker.
  * poly(x, n) now works again (and is now documented) when x is a
    "Date" or "POSIXct" object, or of another class while fulfilling
    mode(x) == "numeric".  This also enables poly(x, *, raw=TRUE) for
    such variables.  Reported by Michael Chirico to R-devel.
  * write.table(), write.csv() and write.csv2() restore their
    numerical precision (internal equivalent of digits = 15) after an
    interrupt (PR#18384).
  * One can now read also byte FF from a clipboard connection
    (PR#18385).
  * source("") and source(character()) now give more helpful error
    messages.
  * R CMD check --as-cran set _R_CHECK_TIMINGS_ too late to have the
    intended effect.
  * as.POSIXlt(x) now also works with very large dates x, fixing
    PR#18401 reported by Hannes M"uhleisen.
  * Files can now be extracted even from very large zip archives
    (PR#18390, thanks to Martin Jakt).
  * Non-finite objects of class "POSIXlt" are now correctly coerced
    to classes "Date" and "POSIXct"; following up on the extension to
    format() them correctly.
  * Added methods for is.finite(), is.infinite() and is.nan() for
    "POSIXlt" date-time objects.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1678881600">- CHANGES IN R 4.2.3:
  C-LEVEL FACILITIES:
  * The definition of DL_FUNC in R_ext/Rdynload.h has been changed to
    be fully C-compliant.  This means that functions loaded _via_ for
    example R_GetCCallable need to be cast to an appropriate type if
    they have any arguments.
  * .Machine has a new element sizeof.time_t to identify old systems
    with a 32-bit type and hence a limited range of date-times (and
    limited support for dates millions of years from present).
  PACKAGE INSTALLATION:
  * (Windows) The default C++ standard had accidentally been left at
    C++11 when it was changed to C++14 on Unix.
  BUG FIXES:
  * As "POSIXlt" objects may be "partially filled" and their list
    components meant to be recycled, length() now is the length of
    the longest component.
  * as.POSIXlt.Date() could underflow for dates in the far past (more
    than half a million years BCE).
  * as.Date.POSIXlt(x) would return "1970-01-01" instead of NA in R
    4.2.2, e.g., for
    x &lt;- as.POSIXlt(c("2019-01-30","2001-1-1"))
    x$mon &lt;- c(0L, NA); as.Date(x)
  * R CMD check failed to apply enabled _R_CHECK_SUGGESTS_ONLY_ to
    examples and vignettes (regression in R 4.2.0).
  * R CMD check did not re-build vignettes in separate processes by
    default (regression in R 4.2.0).
  * Running examples from HTML documentation now restores previous
    knitr settings and options (PR#18420).
  * Quartz: fonts are now located using Core Graphics API instead of
    deprecated ATS which is no longer supported in the macOS 13 SDK
    (PR#18426).  This also addresses an issue where the currently
    used font in the Quartz device context was not correctly
    retained.
  * (Windows) Math symbols in text drawing functions are again
    rendered correctly (PR#18440).  This fixes a regression in R
    4.2.1 caused by a fix in PR#18382 which uncovered an issue in
    GraphApp due to which the symbol charset was not used with TT
    Symbol font face.
  * (Windows) Installing a package with a src/Makefile.{win,ucrt}
    file includes ~/.R/Makevars.win64 in the search for user
    makevars, as documented in "R Installation and Administration"
    and done for packages with a src/Makevars.{win,ucrt} file.
  * format(&lt;POSIXlt_w/_unbalanced_sec&gt;, "....%OS&lt;n&gt;") with n &gt; 0 no
    longer accidentally uses the unbalanced seconds, thanks to
    Suharto Anggono's report (including patch) in PR#18448.
  * solve.default(a, b) works around issues with some versions of
    LAPACK when a contains NA or NaN values.
  * When UseMethod() cannot dispatch, it no longer segfaults
    producing the error message in case of a long class(), thanks to
    Joris Vankerschaver's report (including patch) in PR#18447.
  * When example(foo, ..) produces graphics on an interactive device
    it needs to open itself, it now leaves devAskNewPage() unchanged
    even when it was FALSE, thus fixing a 14 years old '&lt;FIXME&gt;'.
  * packageDescription() again catches errors from encoding
    conversions. This also fixes broken packageVersion() in C locale
    on systems where iconv does not support transliteration.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1681128000">- add patch to build with libcurl &gt;= 8</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1682078400">- CHANGES IN R 4.3.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Calling &amp;&amp; or || with LHS or (if evaluated) RHS of length greater
    than one is now always an error, with a report of the form
    'length = 4' in coercion to 'logical(1)'
    Environment variable _R_CHECK_LENGTH_1_LOGIC2_ no longer has any
    effect.
  NEW FEATURES:
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.10.1.  (This caused some platform-dependent
    changes to package check output.)  And then to the sources from
    LAPACK version 3.11.0 (with changes only to double complex
    subroutines).
  * The included LAPACK sources have been updated to include the four
    Fortran 90 routines rather than their Fortran 77 predecessors.
    This may give some different signs in SVDs or
    eigendecompositions..  (This completes the transition to LAPACK
    3.10.x begun in R 4.2.0.)
  * The LAPACK sources have been updated to version 3.11.0.  (No new
    subroutines have been added, so this almost entirely bug fixes:
    Those fixes do affect some computations with NaNs, including R's
    NA.)
  * The parser now signals _classed_ errors, notably in case of the
    pipe operator |&gt;.  The error object and message now give line and
    column numbers, mostly as proposed and provided by Duncan Murdoch
    in PR#18328.
  * toeplitz() is now generalized for asymmetric cases, with a
    toeplitz2() variant.
  * xy.coords() and xyz.coords() and consequently, e.g., plot(x,y,
    log = "y") now signal a _classed_ warning about negative values
    of y (where log(.) is NA).  Such a warning can be specifically
    suppressed or caught otherwise.
  * Regular expression functions now check more thoroughly whether
    their inputs are valid strings (in their encoding, e.g. in
    UTF-8).
  * The performance of grep(), sub(), gsub() and strsplit() has been
    improved, particularly with perl = TRUE and fixed = TRUE.  Use of
    useBytes = TRUE for performance reasons should no longer be
    needed and is discouraged: it may lead to incorrect results.
  * apropos() gains an argument dot_internals which is used by the
    completion (help(rcompgen)) engine to also see base internals
    such as .POSIXct().
  * Support in tools::Rdiff() for comparing uncompressed PDF files is
    further reduced - see its help page.
  * qqplot(x, y, ...) gains conf.level and conf.args arguments for
    computing and plotting a confidence band for the treatment
    function transforming the distribution of x into the distribution
    of y (Switzer, 1976, _Biometrika_). Contributed by Torsten
    Hothorn.
  * Performance of package_dependencies() has been improved for cases
    when the number of dependencies is large.
  * Strings newly created by gsub(), sub() and strsplit(), when any
    of the inputs is marked as "bytes", are also marked as "bytes".
    This reduces the risk of creating invalid strings and accidental
    substitution of bytes deemed invalid.
  * Support for readLines(encoding = "bytes") has been added to allow
    processing special text files byte-by-byte, without creating
    invalid strings.
  * iconv(from = "") now takes into account any declared encoding of
    the input elements and uses it in preference to the native
    encoding.  This reduces the risk of accidental creation of
    invalid strings, particularly when different elements of the
    input have different encoding (including "bytes").
  * Package repositories in getOption("repos") are now initialized
    from the repositories file when utils is loaded (if not already
    set, e.g., in .Rprofile).  (From a report and patch proposal by
    Gabriel Becker in PR#18405.)
  * compactPDF() gets a verbose option.
  * type.convert() and hence read.table() get new option tryLogical =
    TRUE with back compatible default.  When set to false, converts
    "F" or "T" columns to character.
  * Added new unit prefixes "R" and "Q" for abbreviating
    (unrealistically large) sizes beyond 10^{27} in standard = "SI",
    thanks to Henrik Bengtsson's PR#18435.
  * as.data.frame()'s default method now also works fine with atomic
    objects inheriting from classes such as "roman", "octmode" and
    "hexmode", such fulfilling the wish of PR#18421, by Benjamin
    Feakins.
  * The as.data.frame.vector() utility now errors for wrong-length
    row.names.  It warned for almost six years, with "Will be an
    error!".
  * sessionInfo() now also contains La_version() and reports codepage
    and timezone when relevant, in both print() and toLatex() methods
    which also get new option tzone for displaying timezone
    information when locale = FALSE.
  * New function R_compiled_by() reports the C and Fortran compilers
    used to build R, if known.
  * predict(&lt;lm&gt;, newdata = *) no longer unnecessarily creates an
    offset of all 0s.
  * solve() for complex inputs now uses argument tol and by default
    checks for 'computational singularity' (as it long has done for
    numeric inputs).
  * predict(&lt;rank-deficient lm&gt;, newdata=*) now obeys a new argument
    rankdeficient, with new default "warnif", warning only if there
    are non-estimable cases in newdata.  Other options include
    rankdeficient = "NA", predicting NA for non-estimable newdata
    cases.  This addresses PR#15072 by Russ Lenth and is based on his
    original proposal and discussions in PR#16158 also by David Firth
    and Elin Waring.  Still somewhat experimental.
  * Rgui console implementation now works better with the NVDA screen
    reader when the full blinking cursor is selected.  The underlying
    improvements in cursor handling may help also other screen
    readers on Windows.
  * The drop-field control in GraphApp can now be left with the TAB
    key and all controls can be navigated in the reverse order using
    the Shift+TAB key, improving accessibility of the Rgui
    configuration editor.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now fully accurate
    (instead of to "only" minimally five digits).
  * demo(error.catching) now also shows off withWarnings() and
    tryCatchWEMs().
  * As an experimental feature the placeholder _ can now also be used
    in the rhs of a forward pipe |&gt; expression as the first argument
    in an extraction call, such as _$coef. More generally, it can be
    used as the head of a chain of extractions, such as _$coef[[2]].
  * Spaces in the environment variable used to choose the R session's
    temporary directory (TMPDIR, TMP and TEMP are tried in turn) are
    now fatal.  (On Windows the 'short path' version of the path is
    tried and used if that does not contain a space.)
  * all.equal.numeric() gets a new optional switch giveErr to return
    the numeric error as attribute.  Relatedly,
    stopifnot(all.equal&lt;some&gt;(a, b, ..)) is as "smart" now, as
    stopifnot(all.equal(....)) has been already, thus allowing
    customized all.equal&lt;Some&gt;() wrappers.
  * R on Windows is now able to work with path names longer than 260
    characters when these are enabled in the system (requires at
    least Windows 10 version 1607).  Packages should be updated to
    work with long paths as well, instead of assuming PATH_MAX to be
    the maximum length.  Custom front-ends and applications embedding
    R need to update their manifests if they wish to allow this
    feature.  See
    &lt;https://blog.r-project.org/2023/03/07/path-length-limit-on-windows&gt;
    for more information.
  * 'Object not found' and 'Missing argument' errors now give a more
    accurate error context. Patch provided by Lionel Henry in
    PR#18241.
  * The @ operator is now an S3 generic. Based on contributions by
    Tomasz Kalinowski in PR#18482.
  * New generic chooseOpsMethod() provides a mechanism for objects to
    resolve cases where two suitable methods are found for an Ops
    Group Generic. This supports experimenting with alternative
    object systems. Based on contributions by Tomasz Kalinowski in
    PR#18484.
  * inherits(x, what) now accepts values other than a simple
    character vector for argument what. A new generic, nameOfClass(),
    is called to resolve the class name from what. This supports
    experimenting with alternative object systems. Based on
    contributions by Tomasz Kalinowski in PR#18485.
  * Detection of BLAS/LAPACK in use (sessionInfo()) with FlexiBLAS
    now reports the current backend.
  * The "data.frame" method for subset() now warns about extraneous
    arguments, typically catching the use of = instead of == in the
    subset expression.
  * Calling a:b when numeric a or b is longer than one may now be
    made into an error by setting environment variable
    _R_CHECK_LENGTH_COLON_ to a true value, along the proposal in
    PR#18419 by Henrik Bengtsson.
  * density(x, weights = *) now warns if automatic bandwidth
    selection happens without using weights; new optional warnWbw may
    suppress the warning.  Prompted by Christoph Dalitz' PR#18490 and
    its discussants.
  * rm(list = *) is faster and more readable thanks to Kevin Ushey's
    PR#18492.
  * The plot.lm() function no longer produces a normal Q-Q plot for
    GLMs. Instead it plots a half-normal Q-Q plot of the absolute
    value of the standardized deviance residuals.
  * The print() method for class "summary.glm" no longer shows
    summary statistics for the deviance residuals by default.  Its
    optional argument show.residuals can be used to show them if
    required.
  * The tapply() function now accepts a data frame as its X argument,
    and allows INDEX to be a formula in that case. by.data.frame()
    similarly allows INDICES to be a formula.
  * The performance of df[j] &lt;- value (including for missing j) and
    write.table(df) has been improved for data frames df with a large
    number of columns.  (Thanks to Gabriel Becker's PR#18500,
    PR#18503 and discussants, prompted by a report from Toby Dylan
    Hocking on the R-devel mailing list.)
  * The matrix multiply operator %*% is now an S3 generic, belonging
    to new group generic matrixOps.  From Tomasz Kalinowski's
    contribution in PR#18483.
  * New function array2DF() to convert arrays to data frames,
    particularly useful for the list arrays created by tapply().
  DATES and TIMES:
  * On platforms where (non-UTC) datetimes before 1902 (or before
    1900 as with system functions on recent macOS) are guessed by
    extrapolating time zones from 1902-2037, there is a warning at
    the first use of extrapolation in a session.  (As all time zones
    post 2037 are extrapolation, we do not warn on those.)
  * (Platforms using --with-internal-tzone, including Windows and by
    default macOS). How years are printed in dates or date-times can
    be controlled by environment variable R_PAD_YEARS_BY_ZERO.  The
    default remains to pad to 4 digits by zeroes, but setting value
    no gives no padding (as used by default by glibc).
  * strftime() tries harder to determine the offset for the "%z"
    format, and succeeds on the mainstream R platforms.
  * strftime() has a limit of 2048 bytes on the string produced -
    attempting to exceed this is an error.  (Previously it silently
    truncated at 255 bytes.)
  * sessionInfo() records (and by default prints) the system time
    zone as part of the locale information.  Also, the source
    (system/internal) of the date-time conversion and printing
    functions.
  * Objects of class "POSIXlt" created in this version of R always
    have 11 components: component zone is always set, and component
    gmtoff is set for times in UTC and usually set on the (almost
    all) platforms which have C-level support, otherwise is NA.
  * There are comprehensive validity checks on the structure of
    objects of class "POSIXlt" when converting (including formatting
    and printing).  (This avoids mis-conversions of hand-crafted
    objects.)
  * There is some support for using the native date-time routines on
    macOS: this is only viable on recent versions (e.g. 12.6 and 13)
    and does get wrong some historical changes (before 1900, during
    WWII).  Use of --with-internal-tzone remains the default.
  * as.POSIXct(&lt;numeric&gt;) and as.POSIXlt(.) (without specifying
    origin) now work.  So does as.Date(&lt;numeric&gt;).
  * as.Date.POSIXct(., tz) now treats several tz values, notably
    "GMT" as equivalent to "UTC", proposed and improved by Michael
    Chirico and Joshua Ulrich in PR#17674.
  * Experimental balancePOSIXlt() utility allows using "ragged" and
    or out-of-range "POSIXlt" objects more correctly, e.g., in
    subsetting and subassignments.  Such objects are now documented.
    More experimentally, a "POSIXlt" object may have an attribute
    "balanced" indicating if it is known to be filled or fully
    balanced.
  * Functions axis.Date() and axis.POSIXct() are rewritten to gain
    better default tick locations and better default formats by using
    prettyDate(). Thanks to Swetlana Herbrandt.
  * The mapping of Windows' names for time zones to IANA's 'Olson'
    names has been updated.  When ICU is available (it is by
    default), it is used to get a mapping for the current region set
    in Windows.  This can be overridden by setting environment
    variable TZ to the desired Olson name - see OlsonNames() for
    those currently available.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 16
    and so packages that provide graphics devices should be
    reinstalled.
  * The grDevices and grid packages have new functions for rendering
    typeset glyphs, primarily: grDevices::glyphInfo() and
    grid::grid.glyph().
    Rendering of typeset glyphs is only supported so far on the
    Cairo-based graphics devices and on the pdf() and quartz()
    devices.
  * The defined behaviour for "clear" and "source" compositing
    operators (via grid::grid.group()) has been changed (to align
    better with simple interpretation of original Porter-Duff
    definitions).
  * Support for gradients, patterns, clipping paths, masks, groups,
    compositing operators, and affine transformations has been added
    to the quartz() device.
  INSTALLATION on a UNIX-ALIKE:
  * A system installation of generic LAPACK 3.10.0 or later will be
    preferred to the version in the R sources.
    configure option --with-lapack=no (equivalently --without-lapack)
    forces compilation of the internal LAPACK sources.
    If --with-lapack is not specified, a system liblapack is looked
    for and used if it reports version 3.10.0 or later and does not
    contain BLAS routines.
    Packages using LAPACK will need to be reinstalled if this changes
    to using an external library.
  * On aarch64 Linux platforms using GCC, configure now defaults to
  - fPIC (instead of -fpic), as desired in PR#18326.
  * configure now checks conversion of datetimes between POSIXlt and
    POSIXct around year 2020.  Failure (which has been seen on
    platforms missing tzdata) is fatal.
  * If configure option --with-valgrind-instrumentation is given
    value 1 or 2, option --with-system-valgrind-headers is now the
    default and ignored (with a warning).  It is highly recommended
    that the system headers are installed alongside valgrind: they
    are part of its packaging on some Linux distributions and
    packaged separately (e.g. in the valgrind-devel RPM) on others.
    configure will give a warning if they are not found.
    The system headers will be required in a future release of R to
    build with valgrind instrumentation.
  * libcurl 8.x is now accepted by configure: despite a change in
    major version number it changes neither API nor ABI.
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools43, an update of the Rtools42 toolchain.  It is
    based on gcc 12 and newer versions of MinGW-W64, binutils and
    libraries.  At this time R-devel can still be built using
    Rtools42 without changes, but when R-devel is installed via the
    installer, it will by default look for Rtools43.
  * Old make targets rsync-extsoft and 32-bit ones that are no longer
    needed have been removed.
  * Default builds (including for packages) no longer select C99.
    Thus the C standard used is the default for the compiler, which
    for the toolchain in Rtools43 is C17.  (This is consistent with
    Unix builds.)
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++17 where
    available (which it is on all currently checked platforms): if
    not C++14 or C++11 is used if available otherwise C++ is not
    supported.
  * USE_FC_LEN_T is the default: this uses the correct
    (compiler-dependent) prototypes for Fortran BLAS/LAPACK routines
    called from C/C++, and requires adjustment of many such calls -
    see 'Writing R Extensions' SS6.6.1.
  * There is initial support for C++23 as several compilers are now
    supporting -std=c++23 or -std=c++2b or similar.  As for C++20,
    there no additional configure checks for C++23 features beyond a
    check that the compiler reports a __cplusplus value greater than
    that in the C++20 standard.  C++ feature tests should be used.
  * There is support for a package to indicate the version of the C
    standard which should be used to compile it, and for the
    installing user to specify this.  In most cases R defaults to the
    C compiler's default standard which is C17 (a `bug-fix' of C11) -
    earlier versions of R or compilers may have defaulted to C99.
    Current options are:
    USE_C17 Use a standard that is at most C17.  The intention is to
    allow legacy packages to still be installed when later C
    standards become the default, including packages using new
    keywords as identifiers or with K&amp;R-style function
    declarations.  This will use C17 if available, falling back
    to C11.
    USE_C90 Use the C90 (aka C89) standard.  (As that standard did
    not require compilers to identify that version, all we can
    verify is that the compiler does not claim to be using a
    later standard.  It may accept C99 features - for example
    clang accepts // to make comments.)
    USE_C99 Use the C99 standard. This should be rarely needed - it
    avoids the few new features of C11/C17 which can be useful if
    a package assumes them if C17 is specified and they are not
    implemented.
    USE_C23 Use C23 (or in future, later).  Compiler/library support
    for C23 is still being implemented, but LLVM clang from
    15.0.0 and the upcoming GCC 13 have quite extensive support.
    These can be specified as part of the SystemRequirements field in
    the package's DESCRIPTION file or _via_ options --use-C17 and so
    on of R CMD INSTALL and R CMD SHLIB.
    For further details see "Writing R Extensions" SS1.2.5.
  * (Windows) A src/Makefile.ucrt or src/Makefile.win file is now
    included after R_HOME/etcR_ARCH/Makeconf and so no longer needs
    to include that file itself.  Installation of a package with such
    a file now uses a site Makevars file in the same way as a package
    with a src/Makevars.win file would.
  * configure is now passed crucial variables such as CC and CFLAGS
    in its environment, as many packages were not setting them (as
    documented in 'Writing R Extensions' SS1.2).
    This has most effect where configure is used to compile parts of
    the package - most often by cmake or libtool which obfuscate the
    actual compile commands used.
    Also used for configure.win and configure.ucrt on Windows.
  FORTRAN FLAGS:
  * The flag -fno-optimize-sibling-calls is no longer forced for
    gfortran 7 and later.  It should no longer be needed now using
    'hidden' character-length arguments when calling BLAS/LAPACK
    routines from C/C++ is the default even for packages.  (Unless
    perhaps packages call Fortran code from C/C++ without using R's
    headers and without allowing for these arguments.)
  C-LEVEL FACILITIES:
  * The deprecated S-compatibility macros DOUBLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * The deprecated legacy typedefs of Sint and Sfloat in header R.h
    are no longer defined, and that header no longer includes header
    limits.h from C nor climits from C++.
  * New macro CAD5R() is provided in Rinternals.h and used in a few
    places in the R sources.
  * ALTREP now supports VECSXP vectors. Contributed by Gabor Csardi
    in PR#17620.
  * The Rcomplex definition (in header R_ext/Complex.h) has been
    extended to prevent possible mis-compilation when interfacing
    with Fortran (PR#18430).  The new definition causes compiler
    warnings with static initializers such as {1, 2}, which can be
    changed to {.r=1, .i=2}.
    Using the new definition from C++ depends on compiler extensions
    supporting C features that have not been incorporated into the
    C++ standards but are available in g++ and clang++: this may
    result in C++ compiler warnings but these have been worked around
    for recent versions of common compilers (GCC, Apple/LLVM clang,
    Intel).
    It is intended to change the inclusion of header R_ext/Complex.h
    by other R headers, so C/C++ code files which make use of
    Rcomplex should include that header explicitly.
  UTILITIES:
  * R CMD check does more checking of package .Rd files, warning
    about invalid email addresses and (some) invalid URIs and noting
    empty \item labels in description lists.
  * R CMD check now also reports problems when reading package news
    in md (file NEWS.md) and (optionally) plain text (file NEWS)
    formats.
  * _R_CHECK_TIMINGS_ defaults to a value from the environment even
    for R CMD check --as-cran; this allows for exceptionally fast or
    slow platforms.
    It now applies to checking PDF and HTML versions of the manuals,
    and 'checking CRAN incoming feasibility'.
  * R CMD check can optionally (but included in --as-cran) check
    whether HTML math rendering _via_ KaTeX works for the package .Rd
    files.
  * Non-interactive debugger invocations can be trapped by setting
    the environment variable _R_CHECK_BROWSER_NONINTERACTIVE_ to a
    true value.  This is enabled by R CMD check --as-cran to detect
    the use of leftover browser() statements in the package.
  * The use of sprintf and vsprintf from C/C++ has been deprecated in
    macOS 13 and is a known security risk.  R CMD check now reports
    (on all platforms) if their use is found in compiled code:
    replace by snprintf or vsnprintf respectively. [*NB:* whether
    such calls get compiled into the package is platform-dependent.]
  * Where recorded at installation, R CMD check reports the C and
    Fortran compilers used to build R.
    It reports the OS in use (if known, as given by osVersion) as
    well as that R was built for.
    It notes if a C++ standard was specified which is older than the
    current default: many packages have used C++11 to mean 'not
    C++98' - as C++11 is the minimum supported since R 4.0.0, that
    specification can probably be removed.
  * R CMD INSTALL reports the compilers (and on macOS, the SDK) used,
    and this is copied to the output of R CMD check.
    Where a C++ standard is specified, it is reported.
  * R CMD check's 'checking compilation flags in Makevars' has been
    relaxed to accept the use of flags such as -std=f2008 in
    PKG_FFLAGS.
  * tools::buildVignettes() has a new argument skip, which is used by
    R CMD check to skip (and note) vignettes with unavailable
    \VignetteDepends (PR#18318).
  * New generic .AtNames() added to enable class-specific completions
    after @. The formerly internal function findMatches() is now
    exported, mainly for use in methods for .DollarNames() and
    .AtNames().
  DEPRECATED AND DEFUNCT:
  * default.stringsAsFactors() is defunct.
  * Calling as.data.frame.&lt;class&gt;() directly (for 12 atomic classes)
    is going to be formally deprecated, currently activated by
    setting the environment variable
    _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ to non-empty, which also
    happens in R CMD check --as-cran.
  BUG FIXES:
  * Hashed environments with sizes less than 5 can now grow.
    (Reported to R-devel by Duncan Garmonsway.)
  * as.character(&lt;Rd&gt;, deparse = TRUE) failed to re-escape curly
    braces in LaTeX-like text.  (Reported by Hadley Wickham in
    PR#18324.)
  * library() now passes its lib.loc argument when requiring Depends
    packages; reported (with fix) in PR#18331 by Mikael Jagan.
  * R CMD Stangle: improved message about 'Output' files.
  * head(x, n) and tail(x, n) now signal an error if n is not
    numeric, instead of incidentally "working" sometimes returning
    all of x.  Reported and discussed by Colin Fay, in PR#18357.
  * The "lm" method for summary() now gives the correct F-statistic
    when the model contains an offset.  Reported in PR#18008.
  * C() and `contrasts&lt;-`() now preserve factor level names when
    given a function object (as opposed a function name which did
    preserve names). Reported in PR#17616.
  * c(a = 1, 2)[[]] no longer matches 2 but rather signals a
    _classed_ error.  Reported and analysed by Davis Vaughan in
    PR#18367, a duplicate of PR#18004, by Jan Meis et al.  For
    consistency, NULL[[]] is also erroneous now.  x[[]] &lt;- v gives an
    error of the same class "MissingSubscriptError".
  * The relist() function of utils now supports NULL elements in the
    skeleton (PR#15854).
  * ordered(levels = *) (missing x) now works analogously to factor(,
    ordered=TRUE); reported (with fix) by Achim Zeileis in PR#18389.
  * User-defined Rd macro definitions can now span multiple lines,
    thanks to a patch from Duncan Murdoch. Previously, the Rd parser
    silently ignored everything after the first line.
  * Plain-text help (tools::Rd2txt()) now preserves an initial blank
    line for text following description list items.
  * tools::Rd2HTML() and tools::Rd2latex() no longer split \arguments
    and \value lists at Rd comments.
  * tools::Rd2latex() now correctly handles optional text outside
    \items of argument lists as well as bracketed text at the
    beginning of sections, e.g., \value{[NULL]}.
  * as.character(&lt;POSIXt&gt;) now behaves more in line with the methods
    for atomic vectors such as numbers, and is no longer influenced
    by options().  Ditto for as.character(&lt;Date&gt;).  The
    as.character() method gets arguments digits and OutDec with
    defaults _not_ depending on options().  Use of as.character(*,
    format = .) now warns.
  * Similarly, the as.character.hexmode() and *.octmode() methods
    also behave as good citizen methods and back compatibility option
    keepStr = TRUE.
  * The as.POSIXlt(&lt;POSIXlt&gt;) and as.POSIXct(&lt;POSIXct&gt;) default
    methods now do obey their tz argument, also in this case.
  * as.POSIXlt(&lt;Date&gt;) now does apply a tz (time zone) argument, as
    does as.POSIXct(); partly suggested by Roland Fuss on the R-devel
    mailing list.
  * as.Date.POSIXlt(x) now also works when the list components are of
    unequal length, aka "partially filled" or "ragged".
  * expand.model.frame() looked up variables in the wrong environment
    when applied to models fitted without data.  Reported in
    PR#18414.
  * time() now (also) uses the ts.eps = getOption("ts.eps") argument
    and thus by default rounds values very close to the start (or
    end) of a year.  Based on a proposal by Andre"i V. Kostyrka on
    R-help.
  * Printing of a factanal() result with just one factor and sort =
    TRUE now works regularly, fixing PR#17863 by Timothy Bates,
    thanks to the 'R Contributors' working group.
  * Printing 0-length objects of class "factor", "roman", "hexmode",
    "octmode", "person", "bibentry", or "citation" now prints
    something better, one of which fixes PR#18422, reported by
    Benjamin Feakins.
  * Sys.timezone() queries timedatectl only if systemd is loaded;
    addressing a report by Jan Gorecki in PR#17421.
  * The formula method of cor.test() had scoping problems when
    environment(formula) was not the calling environment; reported
    with a patch proposal by Mao Kobayashi in PR#18439.
  * attach() of an environment with active bindings now preserves the
    active bindings.  Reported by Kevin Ushey in PR#18425.
  * BLAS detection now works also with system-provided libraries not
    available as regular files.  This fixes detection of the
    Accelerate framework on macOS since Big Sur.  Reported by David
    Novgorodsky.
  * download.file() gives a helpful error message in case of an
    invalid download.file.method option, thanks to Colin Fay's report
    in PR#18455.
  * Sporadic crashes of Rterm when using completion have been fixed.
  * Rprof() is now more reliable.  A livelock in thread
    initialization with too short sampling interval has been fixed on
    macOS.  A deadlock in using the C runtime has been fixed on
    Windows.  A potential deadlock has been prevented on Unix.
  * Cursor placement in Rgui now works even after a fixed-width font
    is selected.
  * Mandatory options (options()) are now set on startup so that
    saving and restoring them always works (PR#18372).
  * Package installation, R CMD INSTALL or install.packages(*), now
    parses each of the &lt;pkg&gt;/R/*.R files individually instead of
    first concatenating and then parse()ing the large resulting file.
    This allows parser or syntax errors to be diagnosed with correct
    file names and line numbers, thanks to Simon Dedman's report and
    Bill Dunlap's patch in PR#17859.
    This _does_ require syntactically self contained R source files
    now, fixing another inadvertent bug.
  * predict.lm(&lt;model with offset&gt;) now finds the offset in the
    correct environment, thanks to Andr'e Gillibert's report and patch
    in PR#18456.
  * getInitial(&lt;formula&gt;) now finds the selfStart model in the
    correct environment.  (Reported by Ivan Krylov in PR#18368.)
  * Fix for possible segfault when using recently-added graphics
    features, such as gradients, clipping paths, masks, and groups
    with pdf(file=NULL).
  * class(m) &lt;- class(m) no longer changes a matrix m by adding a
    class _attribute_.
  * packageDate(pkg) now only warns once if there is no pkg.
  * When ts() creates a multivariate time series, "mts", it also
    inherits from "array" now, and is.mts() is documented _and_
    stricter.
  * Rd2txt() now preserves line breaks of \verb Rd content and from
    duplicated \cr.  The former also fixes the rendering of verbatim
    output from Rd \Sexpr in plain-text help.
  * uniroot(f, interval) should no longer wrongly converge _outside_
    the interval in some cases where abs(f(x)) == Inf for an x at the
    interval boundary, thanks to posts by Ben Bolker and Serguei
    Sokol on R-devel.
  * Vectorized alpha handling in palette functions such as in gray(),
    rainbow(), or hcl.colors() works correctly now, thanks to Achim
    Zeileis' report and patch in PR#18476.
  * Formatting and print()ing of bibentry objects has dropped the
    deprecated citation.bibtex.max argument, such that the bibtex
    argument's default for print.bibentry() depends directly on the
    citation.bibtex.max option, whereas in format.bibentry() the
    option no longer applies.
  * Attempting to use a character string naming a foreign function
    entry point in a foreign function call in a package will now
    signal an error if the packages has called R_forceSymbols to
    specify that symbols must be used.
  * An error in table() could permanently set options(warn=2)
    promoting all subsequent warnings to errors.
  * The sigma() function gave misleading results for binary GLMs.  A
    new method for objects of class "glm" returns the square root of
    the estimate of the dispersion parameter using the same
    calculation as summary.glm().
  * bs() and ns() in the (typical) case of automatic knot
    construction, when some of the supposedly inner knots coincide
    with boundary knots, now moves them inside (with a warning),
    building on PR#18442 by Ben Bolker.
  * R CMD on Windows now skips the site profile with --no-site-file
    and --vanilla even when R_PROFILE is set (PR#18512, from Kevin
    Ushey).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1686916800">- CHANGES IN R 4.3.1:
  C-LEVEL FACILITIES:
  * The C-level API version of R's integrate(), Rdqags() in Applic.h,
    now returns the correct number of integrand evaluations neval,
    fixing PR#18515 reported and diagnosed by Stephen Wade.
  * The C prototypes for LAPACK calls dspgv and dtptrs in
    R_exts/Lapack.h had one too many and one too few character length
    arguments - but this has not caused any known issues. To get the
    corrected prototypes, include
    [#]include &lt;Rconfig.h&gt; // for PR18534fixed
    [#]ifdef PR18534fixed
    [#] define usePR18534fix 1
    [#]endif
    [#]include &lt;R_exts/Lapack.h&gt;
    in your C/C++ code (PR#18534).
  INSTALLATION:
  * Many of the checks of esoteric Internet operations and those
    using unreliable external sites have been moved to a new target
    that is not run by default and primarily intended for the core
    developers.  To run them use
    cd tests; make test-Internet-dev
  BUG FIXES:
  * .S3methods(), typically called from methods(), again marks
    methods from package base as visible.
    Also, the visibility of non-base methods is again determined by
    the method's presence in search().
  * tools::Rdiff() is now more robust against invalid strings, fixing
    installation tests on Windows without Rtools installed
    (PR#18530).
  * Fix (new) bug in hcl.colors(2, *), by Achim Zeileis (PR#18523).
  * head(., &lt;illegal&gt;) and tail(..) now produce more useful "Error in
    ...." error messages, fixing PR#18362.
  * Package code syntax on Windows is checked in UTF-8 when UTF-8 is
    the native encoding.
  * na.contiguous(x) now also returns the first run, when it is at
    the beginning and there is a later one of the same length;
    reported to R-devel, including a fix, by Georgi Boshnakov.
    Further, by default, it modifies only an existing attr(*,"tsp")
    but otherwise no longer sets one.
  * chol(&lt;not pos.def&gt;, pivot = &lt;T|F&gt;) now gives a correct error or
    warning message (depending on pivot), thanks to Mikael Jagan's
    (PR#18541).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1699012800">- CHANGES IN R 4.3.2:
  NEW FEATURES:
  * The default initialization of the "repos" option from the
    repositories file at startup can be skipped by setting
    environment variable R_REPOSITORIES to NULL such that
    getOption("repos") is empty if not set elsewhere.
  * qr.X() is now an implicit S4 generic in methods.
  * iconv(to = "ASCII//TRANSLIT") is emulated using substitution on
    platforms which do not support it (notably Alpine Linux).  This
    should give a human-readable conversion in ASCII on all platforms
    (rather than NA_character_).
  * trans3d() gains options continuous and verbose addressing the
    problem of possible "wrap around" when projecting too long
    curves, as reported by Achim Zeileis in PR#18537.
  * tools::showNonASCII() has been rewritten to work better on macOS
    14 (which has a changed implementation of iconv()).
  * tiff(type = "quartz") (the default on macOS) now warns if
    compression is specified: it continues to be ignored.
  INSTALLATION on a UNIX-ALIKE:
  * There is some support for building with Intel's LLVM-based
    compilers on x86_64 Linux, such as (C) icx, (C++) ipcx and
    (Fortran) ifx from oneAPI 2023.x.y.
  * There is support for using LLVM's flang-new as the Fortran
    compiler from LLVM 16.0.x (preferably 17.0.0 or later).
  UTILITIES:
  * R CMD check reports the use of the Fortran 90 random number
    generator RANDOM_NUMBER() and the subroutines to initialize it.
    'Writing R Extensions' has example code to use R's RNGs from
    Fortran.
  BUG FIXES:
  * substr(x, n, L) &lt;- cc now works (more) correctly for multibyte
    UTF-8 strings x when L &gt; nchar(x), thanks to a report and patch
    by 'Architect 95'.
  * contrib.url(character()) now returns 0-length character() as
    documented, which also avoids spurious warnings from
    available.packages() et al. in the edge case of an empty vector
    of repository URLs.
  * readChar(., 4e8) no longer fails, thanks to Kodi Arfer's report
    (PR#18557).
  * lapply(&lt;list&gt;, as.data.frame) no longer warns falsely for some
    base vector components.
  * Communication between parent and child processes in the multicore
    part of parallel could fail on platforms that do not support an
    arbitrarily large payload in system functions read()/write() on
    pipes (seen on macOS where a restriction to INT_MAX bytes is
    documented, without doing a partial read unlike Linux). The
    payload is now split into 1Gb chunks to avoid that problem.
    (PR#18571)
  * qqplot(x,y, conf.level=.) gives better confidence bounds when
    length(x) != length(y), thanks to Alexander Ploner's report and
    patch proposal (PR#18557).
  * norm(&lt;0-length&gt;, "2") now gives zero instead of an error, as all
    the other norm types, thanks to Mikael Jagan's PR#18542.
  * Build-stage Rd macros \packageAuthor and \packageMaintainer now
    process Authors@R, fixing NA results when the package DESCRIPTION
    omits Author and Maintainer fields.
  * Formatting and printing complex numbers could give things like
    0.1683-0i because of rounding error: -0i is now replaced by +0i.
  * postscript() refused to accept a title comment containing the
    letter "W" (PR#18599).
  * isoreg(c(1,Inf)) signals an error instead of segfaulting, fixing
    PR#18603.
  * tiff(type = "Xlib") was only outputting the last page of
    multi-page plots.
  * tools::latexToUtf8() again knows about \~{n} and other letters
    with tilde, fixing a regression in R 4.3.0, and about \^{i} as an
    alternative to \^{\i} (similarly with other accents).
    Furthermore, LaTeX codes for accented I letters are now correctly
    converted, also fixing related mistakes in
    tools::encoded_text_to_latex().
  * tar(*, tar = "internal") no longer creates out-of-spec tar files
    in the very rare case of user or group names longer than 32
    bytes, fixing PR#17871 with thanks to Ivan Krylov.
  * When using the "internal" timezone datetime code, adding a
    fraction of a second no longer adds one second, fixing PR#16856
    from a patch by Ivan Krylov.
  * tools::checkRd() no longer produces spurious notes about
    "unnecessary braces" from multi-line Rd results of \Sexpr macros.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1709208000">- CHANGES IN R 4.3.3:
  NEW FEATURES:
  * iconv() now fixes up variant encoding names such as "utf8"
    case-insensitively.
  DEPRECATED AND DEFUNCT:
  * The legacy encoding = "MacRoman" is deprecated in pdf() and
    postscript(): support was incomplete in earlier versions of R.
  BUG FIXES:
  * Arguments are now properly forwarded to methods on S4 generics
    with ... in the middle of their formal arguments. This was broken
    for the case when a method introduced an argument but did not
    include ... in its own formals. Thanks to Herv'e Pag`es for the
    report PR#18538.
  * Some invalid file arguments to pictex(), postscript() and xfig()
    opened a file called NA rather than throw an error.  These
    included postscript(NULL) (which some people expected to work
    like pdf(NULL)).
  * Passing filename = NA to svg(), cairo_pdf(), cairo_ps() or the
    Cairo-based bitmap devices opened a file called NA: it now throws
    an error.
  * quartz(file = NA) opened a file called NA, including when used as
    a Quartz-based bitmap device.  It now gives an error.
  * rank(&lt;long vector&gt;) now works, fixing PR#18617, thanks to Ilia
    Kats.
  * seq.int() did not adequately check its length.out argument.
  * match(&lt;POSIXct&gt;, .) is correct again for differing time zones,
    ditto for "POSIXlt", fixing PR#18618 reported by Bastian Klein.
  * drop.terms(*, dropx = &lt;0-length&gt;) now works, fixing PR#18563 as
    proposed by Mikael Jagan.
  * drop.terms(*) keeps + offset(.) terms when it should, PR#18565,
    and drop.terms() no longer makes up a response, PR#18566, fixing
    both bugs thanks to Mikael Jagan.
  * getS3method("t", "test") no longer finds the t.test() function,
    fixing PR#18627.
  * pdf() and postscript() support for the documented Adobe encodings
    "Greek" and "Cyrilllic" was missing (although the corresponding
    Windows' codepages could be used).
  * Computations of glyph metric information for pdf() and
    postscript() did not take into account that transliteration could
    replace one character by two or more (only seen on macOS 14) and
    typically warned that the information was not known.
  * rank(x) no longer overflows during integer addition, when
    computing rank average for largish but not-yet long vector x,
    fixing PR#18630, thanks to Ilia Kats.
  * list.files() on Windows now returns also files with names longer
    that 260 bytes (the Windows limit is 260 characters).
    Previously, some file names particularly with 'East Asian'
    characters were omitted.
  * cov2cor(&lt;0 x 0&gt;) now works, fixing PR#18423 thanks to Mikael
    Jagan and Elin Waring.
  * cov2cor(&lt;negative diagonal&gt;) and similar now give one warning
    instead of two, with better wording, fixing PR#18424 thanks to
    Mikael Jagan.
  * tools:: startDynamicHelp() now ensures port is in proper range,
    fixing PR#18645.
  * pbeta(x, a,b) is correct now for x=0 or 1 in the boundary cases
    where a or b or both are 0, fixing PR#18672 thanks to Michael
    Fay.
  * pmatch(x, table) for large table, also called for data frame row
    selection, dfrm[nm, ], is now interruptible, fixing PR#18656.
  * predict(&lt;rank-deficient lm&gt;, newdata=*) fix computing of nbasis,
    see Russ Lenth's comment 29 in PR#16158.
  * Added a work-around for a bug in macOS 14.3.1 and higher which
    prevents R plots in the Quartz Cocoa device from updating on
    screen.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1713960000">- CHANGES IN R 4.4.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Startup banners, R --version, sessionInfo() and R CMD check no
    longer report (64-bit) as part of the platform as this is almost
    universal - the increasingly rare 32-bit platforms will still
    report (32-bit).
    On Windows, ditto for window titles.
  * is.atomic(NULL) now returns FALSE, as NULL is not an atomic
    vector.  Strict back-compatibility would replace is.atomic(foo)
    by (is.null(foo) || is.atomic(foo)) but should happen only
    sparingly.
  NEW FEATURES:
  * The confint() methods for "glm" and "nls" objects have been
    copied to the stats package.  Previously, they were stubs which
    called versions in package MASS. The MASS namespace is no longer
    loaded if you invoke (say) confint(glmfit).  Further, the "glm"
    method for profile() and the plot() and pairs() methods for class
    "profile" have been copied from MASS to stats.  (profile.nls()
    and plot.profile.nls() were already in stats.)
  * The confint() and profile methods for "glm" objects have gained a
    possibility to do profiling based on the Rao Score statistic in
    addition to the default Likelihood Ratio. This is controlled by a
    new test = argument.
  * The pairs() method for "profile" objects has been extended with a
    which = argument to allow plotting only a subset of the
    parameters.
  * The "glm" method for anova() computes test statistics and
    p-values by default, using a chi-squared test or an F test
    depending on whether the dispersion is fixed or free.  Test
    statistics can be suppressed by giving argument test a false
    logical value.
  * In setRepositories() the repositories can be set using their
    names via name = instead of index ind =.
  * methods() and .S3methods() gain a all.names option for the (rare)
    case where functions starting with a . should be included.
  * Serializations can now be interrupted (e.g., by Ctrl-C on a
    Unix-alike) if they take too long, e.g., from save.image(),
    thanks to suggestions by Ivan Krylov and others on R-devel.
  * New startup option --max-connections to set the maximum number of
    simultaneous connections for the session.  Defaults to 128 as
    before: allowed values up to 4096 (but resource limits may in
    practice restrict to smaller values).
  * R on Windows (since Windows 10 2004) now uses the new Segment
    Heap allocator. This may improve performance of some
    memory-intensive applications.
  * When R packages are built, typically by R CMD build &lt;pkg&gt;, the
    new --user=&lt;build_user&gt; option overrides the (internally
    determined) user name, currently Sys.info()["user"] or LOGNAME.
    This is a (modified) fulfillment of Will Landau's suggestion in
    PR#17530.
  * tools::testInstalledBasic() gets new optional arguments outDir
    and testSrcdir, e.g., allowing to use it in a &lt;builddir&gt; !=
    &lt;srcdir&gt; setup, and in standard "binary" Windows installation
  * if* a source tests/ folder is present.
  * range(&lt;DT_with_Inf&gt;, finite = TRUE) now work for objects of class
    "Date", "POSIXct", and "POSIXlt" with infinite entries,
    analogously to range.default(), as proposed by Davis Vaughan on
    R-devel.  Other range()-methods can make use of new function
    .rangeNum().
  * New .internalGenerics object complementing .S3PrimitiveGenerics,
    for documentation and low-level book-keeping.
  * grid() now invisibly returns the x- and y- coordinates at which
    the grid-lines were drawn.
  * norm(., type) now also works for complex matrices.
  * kappa(., exact = TRUE, norm = *) now works for all norms and also
    for complex matrices.  In symmetric / triangular cases, the new
    argument uplo = "U" | "L" allows the upper or lower triangular
    part to be specified.
  * memDecompress(type = "unknown") recognizes compression in the
    default 'zlib' format as used by memCompress(type = "gzip").
  * memCompress() and memDecompress() will use the libdeflate library
    (&lt;https://github.com/ebiggers/libdeflate&gt;) if installed.  This
    uses the same type of compression for type = "gzip" but is 1.5-2x
    faster than the system libz library on some common platforms: the
    speed-up may depend on the library version.
  * diff() for objects of class "Date", "POSIXct", and "POSIXlt"
    accepts a units argument passed via ....
  * Dynamic help now does a much better job of rendering package
    DESCRIPTION metadata.
  * Rprof() gains an event argument and support for elapsed (real)
    time profiling on Unix (PR#18076).
  * filled.contour() gains a key.border argument.
  * tools::update_pkg_po() gets arguments pot_make and mo_make for
    _not_ re-making the corresponding files, and additionally a
    verbose argument.
  * Hexadecimal string colour specifications are now accepted in
    short form, so, for example, we can use "#123", which is
    equivalent to "#112233".
    Thanks to MikeFC for the original idea and Ella Kaye, Malcolm
    Barrett, George Stagg, and Hanne Oberman for the patch.
  * Plain-text help shows \var markup by angle brackets.
  * The new experimental primitive function declare() is intended to
    eventually allow information about R code to be communicated to
    the interpreter, compiler, and code analysis tools. The syntax
    for declarations is still being developed.
  * Functions psmirnov(), qsmirnov() and rsmirnov() in package stats
    have had argument two.sided renamed to alternative, to take into
    account that the permutation distributions of the one-sided
    statistics can be different in the case of ties.  Consequence of
    PR#18582.
  * sort() is now an implicit S4 generic in methods.
  * Formatting and printing, format(z), print(z), of complex vectors
    z no longer zap relatively small real or imaginary parts to zero,
    fixing PR#16752.  This is an API change, as it was documented
    previously to round real and imaginary parts together on purpose,
    producing nicer looking output.  As mentioned, e.g. in the PR,
    this change is compatible with many other "R-like" programming
    environments.
    We have simplified the internal code and now basically format the
    real and imaginary parts independently of each other.
  * New experimental functions Tailcall() and Exec() to support
    writing stack-space-efficient recursive functions.
  * Where characters are attempted to be plotted by pdf(),
    postscript() and xfig() which are not in the selected 8-bit
    character set (most often Latin-1) and the R session is using a
    UTF-8 locale, the warning messages will show the UTF-8 character
    rather than its bytes and one dot will be substituted per
    character rather than per byte.  (Platforms whose iconv() does
    transliteration silently plot the transliteration.)
    In a UTF-8 locale some transliterations are now done with a
    warning (e.g., dashes and Unicode minus to hyphen, ligatures are
    expanded, permille (‰) is replaced by o/oo), although the OS may
    have got there first.  These are warnings as they will continue
    to be replaced by dots in earlier versions of R.
  * The matrix multiplication functions crossprod() and tcrossprod()
    are now also primitive and S3 generic, as %*% had become in R
    4.3.0.
  * source() and example() have a new optional argument catch.aborts
    which allows continued evaluation of the R code after an error.
  * The non-Quartz tiff() devices allow additional types of
    compression if supported by the platform's libtiff library.
  * The list of base and recommended package names is now provided by
    tools::standard_package_names().
  * cairo_pdf() and cairo_ps() default to onefile = TRUE to closer
    match pdf() and postscript().
  * New option catch.script.errors provides a documented way to catch
    errors and then continue in non-interactive use.
  * L %||% R newly in base is an expressive idiom for the phrases
    if(!is.null(L)) L else R or if(is.null(L)) R else L.
  * The return value from warnings() now always inherits from
    "warnings" as documented, now also in the case of no warnings
    where it previously returned NULL.
  * as.complex("1i") now returns 0 + 1i instead of NA with a warning.
  * z &lt;- c(NA, 1i) now keeps the imaginary part Im(z[1]) == 0, no
    longer coercing to NA_complex_.  Similarly, cumsum(z) correctly
    sums real and imaginary parts separately, i.e., without
    "crosstalk" in case of NAs.
  * On Alpine Linux iconv() now maps "latin2", "latin-2", "latin9"
    and "latin-9" to encoding names the OS knows about
    (case-insensitively).
  * iconv(sub = "Unicode") now always zero-pads to four (hex) digits,
    rather than to 4 or 8.  (This seems to have become the convention
    once Unicode restricted the number of Unicode points to 2^21 - 1
    and so will never need more than 6 digits.)
  * NCOL(NULL) now returns 0 instead of 1, for consistency with
    cbind().
  * The information for the Euro glyph missing from the Adobe .afm
    files for the Courier, Helvetica and Times families has been
    copied from their URW equivalents - this will improve vertical
    centring in the pdf() and postscript() devices.
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.12.0.  The changes are almost entirely cosmetic.
  * The included LAPACK sources have been updated to version 3.12.0
    and some further double-complex routines added.
  * There are new font families for the 2014--5 URW 2.0 fonts (see
    ?pdf) which are included in recent versions of Ghostscript.
    These have font widths for most Greek glyphs and a few others
    which were missing from the original versions (whose font
    families remain available for reproducibility, although
    Ghostscript-based viewers will render using the 2.0 versions).
  * Improve the large-n efficiency of as.matrix(&lt;dist&gt;), thanks an R
    contributors effort, notably by Tim Taylor and Heather Turner,
    see PR#18660.
  * The default and numeric methods of all.equal() get a check.class
    option.
  * zapsmall() gets new optional arguments, function mFUN and min.d,
    for extra flexibility; fulfills a wish in PR#18199.  Also, it is
    now an implicit S4 generic in package methods.
  * The Rd filter for aspell() gains an ignore argument.
  * New generic function sort_by(), primarily useful for the
    data.frame method which can be used to sort rows of a data frame
    by one or more columns.
  * The icence headers for the RPC code in src/extra/xdr have been
    updated to use the GPL-compatible licence published by Oracle
    America in 2010.
  * New function pkg2HTML() in tools to create single-page HTML
    reference manuals for R packages.
  * The byte code evaluator now uses less C stack space for recursive
    calls to byte-compiled functions. It also makes more of an effort
    to avoid allocations for scalar return values.
  * New completion option backtick (disabled by default) allows
    non-syntactic completions to be wrapped in backquotes. This is
    currently only useful for Jupyter notebooks via the IRkernel
    package, and may cause problems for other backends.
  INSTALLATION:
  * The parser has been updated to work with bison 3.8.2, which is
    now used for the pre-generated parsers in gram.c, file.c, and
    gramRd.c. A few parser error messages have changed, which may
    affect code that relies on exact messages.
  INSTALLATION on a UNIX-ALIKE:
  * System valgrind headers are now required to use configure option
  - -with-valgrind-instrumentation with value 1 or 2.
  * configure will warn if it encounters a 32-bit build, as that is
    nowadays almost untested.
  * Environment variable R_SYSTEM_ABI is no longer used and so no
    longer recorded in etc/Renviron (it was not on Windows and was
    only ever used when preparing package tools).
  * If the libdeflate library and headers are available, libdeflate
    rather than libz is used to (de)compress R objects in lazy-load
    databases.  Typically tasks spend up to 5% of their time on such
    operations, although creating lazy-data databases is one of the
    exceptions.
    This can be suppressed if the library is available by the
    configure option --without-libdeflate-compression.
  * configure option --enable-lto=check has not worked reliably since
    2019 and has been removed.
  * The minimum autoconf requirement for a maintainer build has been
    increased to autoconf 2.71.
    It is intended to increase this to 2.72 for R 4.5.0: the
    distributed configure file was generated using 2.72.
  * The minimum version requirement for an external LAPACK has been
    reduced to 3.9.0.
  * No default C++ compiler is set if no C++17 compiler is detected:
    there is no longer an automatic fallback to C++14 or C++11.
    Compilers from the last five years should have sufficient
    support: for others macros CXX and CXXSTD can be set in file
    config.site to provide a fallback if needed.
    The Objective-C++ compiler now by default uses the standard
    selected by R for C++ (currently C++17) rather than the default
    standard for the C++ compiler (which on macOS is still C++98).
  INSTALLATION on macOS:
  * A new configure option --with-newAccelerate makes use of Apple's
    'new' BLAS / LAPACK interfaces in their Accelerate framework.
    Those interfaces are only available in macOS 13.3 or later, and
    building requires SDK 13.3 or later (from the Command Line Tools
    or Xcode 14.3 or later).
    By default the option uses new Accelerate for BLAS calls: to also
    use it for LAPACK use option --with-newAccelerate=lapack.  The
    later interfaces provide LAPACK 3.9.1 rather than 3.2.1: 3.9.1 is
    from 2021-04 and does not include the improved algorithms
    introduced in LAPACK 3.10.0 (including for BLAS calls).
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools44, an update of the Rtools43 toolchain.  It is
    based on GCC 13 and newer versions of MinGW-W64, binutils and
    libraries (targeting 64-bit Intel CPUs).  R-devel can no longer
    be built using Rtools43 without changes.
  * Rtools44 has experimental support for 64-bit ARM (aarch64) CPUs
    _via_ the LLVM 17 toolchain using lld, clang/flang-new and
    libc++.
  UTILITIES:
  * R CMD check notes when S4-style exports are used without
    declaring a strong dependence on package methods.
  * tools::checkRd() (used by R CMD check) detects more problems with
    \Sexpr-based dynamic content, including bad nesting of \Sexprs
    and invalid arguments.
  * tools::checkRd() now reports Rd titles and section names ending
    in a period; this is ignored by R CMD check unless environment
    variable _R_CHECK_RD_CHECKRD_MINLEVEL_ is set to -5 or smaller.
  * R CMD check now notes Rd files without an \alias, as long
    documented in 'Writing R Extensions' §1.3.1.  The check for a
    missing \description has been moved from tools::checkRd() to
    tools::checkRdContents().
  * R CMD check now visits inst/NEWS.Rd and OS-specific man
    subdirectories when checking Rd files.
  * tools::checkDocFiles() and tools::checkRdContents() now also
    check internal Rd files by default, but "specially" (ignoring
    missing documentation of arguments).
  * R CMD Rdiff gets option --useEx.
  * R CMD check now warns on non-portable uses of Fortran KIND such
    as INTEGER(KIND=4) and REAL(KIND=8).
    To see the failing lines set environment variable
    _R_CHECK_FORTRAN_KIND_DETAILS_ to a true value.
  * When checking Rd files, R CMD check now notes some of the "lost
    braces" that tools::checkRd() finds.  Typical problems are Rd
    macros missing the initial backslash (e.g., code{...}), in-text
    set notation (e.g., {1, 2}, where the braces need escaping), and
    \itemize lists with \describe-style entries of the form
    \item{label}{description}.
  * R CMD INSTALL (and hence check) will compile C++ code with
  - DR_NO_REMAP if environment variable _R_CXX_USE_NO_REMAP_ is set
    to a true value.  It is planned that this will in future become
    the default for compiling C++.
  * The new built-in Rd macro \dontdiff{} can be used to mark example
    code whose output should be ignored when comparing check output
    to reference output (tests/Examples/&lt;pkg&gt;-Ex.Rout.save).  The
    \dontdiff tag, like \donttest, is _not_ shown on the rendered
    help page, so provides a clean alternative to ##
    IGNORE_RDIFF_(BEGIN|END) comments.
  * R CMD build when there is no NAMESPACE, now uses the recommended
    exportPattern("^[^.]"), instead of exporting everything.
  * R CMD check now warns about non-ASCII characters in the NAMESPACE
    file (in addition to R files). Such packages are not portable and
    may fail to install on some platforms.
  C-LEVEL FACILITIES:
  * Headers R_ext/Applic.h and R-ext/Linpack.h used to include
    R_ext/BLAS.h although this was undocumented and unneeded by their
    documented entry points.  They no longer do so.
  * New function R_missing(), factored out from do_missing(), used to
    fix PR#18579.
  * SEXP type S4SXP has been renamed to OBJSXP to support
    experimenting with alternative object systems.  The S4SXP value
    can still be used in C code but is now deprecated.  Based on
    contributions from the R Consortium's Object-Oriented Programming
    Working Group.
  * New function pow1p(x,y) for accurate (1+x)^y.
  * mkCharLenCE was incorrectly documented to take a size_t length
    but was implemented with int (and character strings in R are
    limited to 2^31 - 1 bytes).
  DEPRECATED AND DEFUNCT:
  * data() no longer handles zipped data from long-defunct (since R
    2.13.0) --use-zip-data installations.
  * The legacy graphics devices pictex() and xfig() are now
    deprecated.  They do not support recent graphics enhancements and
    their font handling is rudimentary. The intention is to retain
    them for historical interest as long as they remain somewhat
    functional.
  * Support for encoding = "MacRoman" has been removed from the pdf()
    and postscript() devices - this was a legacy encoding supporting
    classic macOS up to 2001 and no longer has universal libiconv
    support.
  * is.R() is deprecated as no other S dialect is known to be in use
    (and this could only identify historical dialects, not future
    ones).
    Further information on calls can be obtained by setting the
    environment variable _R_DEPRECATED_IS_R_ to error which turns the
    deprecation warning into an error and so by default gives a
    traceback.  (This is done by R CMD check --as-cran.)
  * UseMethod() no longer forwards local variables assigned in the
    generic function into method call environments before evaluating
    the method body. This makes method calls behave more like
    standard function calls and makes method code easier to analyze
    correctly.
  * The twelve as.data.frame.&lt;class&gt;() methods which were deprecated
    only via _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ and in R CMD
    check --as-cran are formally deprecated now in favour of calling
    as.data.frame() or as.data.frame.vector().  The deprecation
    "check" now works also when as.data.frame() is S4 generic thanks
    to Ivan Krylov.
  * The default method for the directional comparison operators &lt;, &gt;,
    &lt;=, and &gt;= now signals an error when one of the operands is a
    language object, i.e. a symbol or a call.
  * For terms.formula(), deprecate abb and neg.out arguments
    _formally_ in addition to just documenting it.
  BUG FIXES:
  * The methods package is more robust to not being attached to the
    search path.  More work needs to be done.
  * pairwise.t.test() misbehaved when subgroups had 0 DF for
    variance, even with pool.sd = TRUE.  (PR#18594 by Jack Berry).
  * Probability distribution functions [dpq]&lt;distrib&gt;(x, *), but also
    bessel[IKJY](x, .) now consistently preserve attributes(x) when
    length(x) == 0, e.g., for a 2 x 0 matrix, thanks to Karolis
    Koncevičius' report PR#18509.
  * Group "Summary" computations such as sum(1:3, 4, na.rm = 5, NA,
    7, na.rm = LL) now give an error instead of either 17 or NN for
    LL true or false, as proposed by Ivan Krylov on the R-devel
    mailing list.  (This also means it is now an error to specify
    na.rm more than once.)
  * as.complex(x) now returns complex(real = x, imaginary = 0) for
    _all_ numerical and logical x, notably also for NA or
    NA_integer_.
  * Directories are now omitted by file.copy(, recursive = FALSE) and
    in file.append() (PR#17337).
  * gsub() and sub() are now more robust to integer overflow when
    reporting errors caused by too large input strings (PR#18346).
  * Top-level handlers are now more robust to attempts to remove a
    handler whilst handlers are running (PR#18508).
  * The handling of Alt+F4 in dialogs created on Windows using
    GraphApp has been fixed (PR#13870).
  * density() more consistently computes grid values for the
    FFT-based convolution, following Robert Schlicht's analysis and
    proposal in PR#18337, correcting density values typically by a
    factor of about 0.999.  Argument old.coords = TRUE provides back
    compatibility.
  * palette.colors() gains a name argument that defaults to FALSE
    controlling whether the vector of colours that is returned has
    names (where possible).  PR#18529.
  * tools::xgettext() no longer extracts the (non-translatable) class
    names from warningCondition and errorCondition calls.
  * S3method(&lt;gen&gt;, &lt;class&gt;, &lt;func&gt;) in the NAMESPACE file now works
    (again) when &lt;func&gt; is visible from the namespace, e.g.,
    imported, or in base.
  * getParseData(f) now also works for a function defined in the
    first of several &lt;pkg&gt;/R/*.R source files, thanks to Kirill
    Müller's report and Duncan Murdoch's patch in PR#16756.
  * Rd \Sexpr macros with nested #ifdef conditionals were not
    processed.
  * A non-blocking connection with non-default encoding (such as a
    socket) now correctly returns from readLines() after new data has
    arrived also when its EOF had been reached previously.  Thanks to
    Peter Meilstrup's report on R-devel and Ivan Krylov's report and
    patch proposal in PR#18555.
  * tools::checkRdContents() failed to detect empty argument
    descriptions when they spanned multiple lines, including those
    generated by prompt().  These cases are now noted by R CMD check.
  * Plain-text help no longer outputs spurious colons in the
    arguments list (for multi-line \item labels in the Rd source).
  * kappa() and rcond() work correctly in more cases; kappa(., norm =
    "2") now warns that it computes the 1-norm with (default) exact =
    FALSE; prompted by Mikael Jagan's quite comprehensive PR#18543.
  * Rd skeletons generated by prompt() or promptData() now use a
    dummy title (so R CMD build works).  tools::checkRdContents() has
    been updated to detect such template leftovers, including from
    promptPackage().
  * When S4 method dispatch fails because no method was found, the
    error message now includes the signature argument names; thanks
    to Michael Chirico's proposal on the R-devel list.
  * withAutoprint({ .. }) now preserves srcrefs previously lost,
    thanks to Andrew Simmons' report plus fix in PR#18572.
  * transform.data.frame() no longer adjusts names; in particular,
    untransformed variables are kept as-is, including those with
    syntactically invalid names (PR#17890).
  * The keep.source option for Rd \Sexpr blocks is no longer ignored.
  * The formula methods for t.test() and wilcox.test() now catch when
    paired is passed, addressing PR#14359; use Pair(x1, x2) ~ 1 for a
    paired test.
  * The level reported in the browser prompt was often too large. It
    now shows the number of browser contexts on the stack.
  * For cbind() and rbind(), the optional deparse.level argument is
    now properly passed to methods, thanks to Mikael Jagan's PR#18579
    and comments there.
  * Some error and warning messages for large ('long vector')
    matrix(v, nr, nc) and dim(m) &lt;- d are now correct about sizes,
    using long long formatting, fixing PR#18612 (and more) reported
    by Mikael Jagan.
  * readChar(useBytes = TRUE) now terminates strings even when the
    underlying connection uses extra spaces in the input buffer.
    This fixes problems with extra garbage seen with gzip
    connections, PR#18605.
  * Named capture in PCRE regular expressions now works also with
    more than 127 named groups (PR#18588).
  * Datetime functions are now robust against long jumps when dealing
    with internal time zone changes.  This avoids confusing warnings
    about an invalid time zone, previously triggered by turning
    warnings into errors or handling them via tryCatch (PR#17966,
    PR#17780).
  * Datetime functions now restore even an empty TZ environment
    variable after internal time zone changes (PR#17724).  This makes
    results of datetime functions with this (typically unintentional)
    setting more predictable.
  * drop.terms(*) now drops response as by default, keep.response =
    FALSE, fixing PR#18564 thanks to Mikael Jagan.
  * dummy.coef(.) now also works for lm()-models with character
    categorical predictor variables rather than factor ones, fixing
    PR#18635 reported by Jinsong Zhao.
  * formals(f) &lt;- formals(f) now also works for a function w/o
    arguments and atomic _constant_ body(f).
  * Correct as.function(&lt;invalid list&gt;, .)'s error message.
  * removeSource() is yet more thorough in finding and removing
    "srcref" and the other source references from parsed R language
    chunks, fixing PR#18638 thanks to Andrew Simmons.
  * dgeom() is more accurate now, notably when its result is very
    small, fixing PR#18642 thanks to the proposal of Morten Welinder,
    also improving other instances where C level binom_raw(x, n, ..)
    has x == 0 or x== n.
  * warning() with options(warn = 1) has improved output for
    multi-line messages.
  * axis.Date() and axis.POSIXct() now respect the par("lab") setting
    for the number of pretty() intervals.
  * Comparisons for language objects (which are based on deparsing)
    are now more careful about using accurate deparsed results
    (PR#18676).
  * Plain-text help (Rd2txt) now correctly preserves blank lines
    following single-line \dontrun code.
  * &lt;POSIXlt&gt;[*] no longer sets wrong "balanced" attribute, fixing
    PR#18681 thanks to Mikael Jagan.
  * str(&lt;classed-call&gt;) now deparses the call as expected, fixing
    PR#18684, reported by Dave Slager.
  * In Rd examples, code following the closing brace of a \dontrun,
    \dontshow or \donttest tag on the same line is no longer skipped
    when R CMD check runs the examples.
  * as.data.frame(matrix(*, ncol=0)) now gets valid names() and
    colnames(); reported by Davis Vaughan on the R-devel list.
  * Internal Mathlib function stirlerr(n) is now almost fully
    (52-bit) accurate for all n &gt;= ~5.9 and more accurate also in the
    range 1 -- 5.9.  This entails small ("after 12th decimal")
    changes in density functions, e.g., dgamma() in _some_ regions of
    their support.  The fix was partly prompted by Morten Welinder's
    PR#18640.
  * Numbers like 9876543.2 are now considered non-integer by Mathlib
    internal R_nonint(), amending original fix of PR#15734.
  * Rd comment lines no longer cause broken paragraphs in the
    rendered PDF and plain-text help. In code blocks, pure comment
    lines (starting with %) no longer produce an empty line.
  * xtabs(Freq ~ .) now consistently defaults to na.action = na.pass,
    using na.rm = FALSE (added as an argument) when summing over Freq
    (PR#17770).
  * tools::testInstalledPackage() is no longer silent about failures
    from running examples or tests and its return code no longer
    ignores failures from checking vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1718366400">- CHANGES IN R 4.4.1:
  C-LEVEL FACILITIES:
  * Functions R_atof and R_strtod declared in header R_ext/Utils.h
    are now documented in 'Writing R Extensions' and so formally part
    of the API.
  * The non-API entry points Rf_setSVector, Rf_StringFalse,
    Rf_StringTrue and Rf_isBlankString have been added to those
    reported by R CMD check.
  * The new function Rf_allocLang is now available. This provides an
    alternative to the idiom of calling Rf_allocList followed by
    SET_TYPEOF.
  UTILITIES:
  * R CMD check now reports as warnings what gfortran calls 'Fortran
    2018 deleted features', all of which have long been marked as
    'obsolescent' and some of which were deleted in Fortran 2008 or
    earlier.  Fortran compilers are no longer required to support
    these.
  BUG FIXES:
  * as.numeric(), scan(), type.convert() and other places which use
    the internal C function R_strtod now require a _non-empty_ digit
    sequence in a decimal or binary exponent.  This aligns with the
    C/POSIX standard for strtod and with ?NumericConstants.
  * as.data.frame(m, make.names=NA) now works correctly for a matrix
    m with NA's in row names.
  * The error message from &lt;POSIXlt&gt;[["hour"]] and similar now
    mentions *[[, "hour"]], as wished for in PR#17409 and proposed by
    Michael Chirico.
  * qbinom() and potentially qpois(), qnbinom(), no longer sometimes
    fail accurate inversion (of pbinom(), etc), thanks to Christopher
    Chang's report and patch in PR#18711.
  * The internal help server on Windows can again serve requests sent
    in quick succession, fixing a regression in R 4.4.0.
  * debugcall(&lt;S3Generic&gt;()) now also works when a corresponding
    S4-generic version is in the methods cache (PR#18143).
  * Package tools' toTitleCase(ch0) now returns character(0) when ch0
    is of zero length; fixing PR#18724, reported by David Hugh Jones.
  * R CMD check is no longer broken (without a check result and no
    explanation in 00check.log) for a package which declares an
    invalid VignetteBuilder in DESCRIPTION but has no vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1730376000">- CHANGES IN R 4.4.2:
  C-LEVEL FACILITIES:
  * The S-compatibility macros F77_COM and F77_COMDECL defined in
    header R_ext/RS.h are deprecated and will be removed shortly.  We
    could find no record of their use.
  BUG FIXES:
  * Mathlib function lgammacor(x) no longer warns about underflow to
    zero for large x.
  * Text widths and heights were incorrectly reported by the Quartz
    device if the drawing context didn't exist yet (typically when
    drawing off-screen to a window that is yet to appear, see
    PR#18591).
  * The Quartz device could segfault in cases where paths with spaces
    are used in the new glyph drawing API.  Thanks to Tomek
    Gieorgijewski (PR#18758).
  * On macOS in R CRAN builds, it is again possible to read
    little-endian UTF-16 text with a BOM from a connection using
    encoding="UTF-16".  Users building R from source should avoid
    using the system libiconv in macOS 14.1 and later.
  * methods' internal .requirePackage() now re-enables primitive
    method dispatch when needed; thanks to Ivan Krylov for
    demystifying CRAN package check failures on the R-devel mailing
    list.</changelog>
</package>
<package pkgid="9e109f20877d3eb1ff5cb0cdce76fec91636bcc89387bd6bf6bbeb4e5d7683fa537995cb1e75e578c275f0a50c7b92391be91201ba0608b9ce3a5d7772816415" name="R-Matrix-debuginfo" arch="x86_64">
  <version epoch="0" ver="1.7.1" rel="51.0.2.2.sr20241103"/>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1620302400">- To get in sync with d:l:R:autoCRAN the Matrix package's split
  in -devel was reversed.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339200">- improved spec file according to comments of dimstar in
  https://build.opensuse.org/request/show/892685</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339201">- CHANGES IN R 4.1.0:
  FUTURE DIRECTIONS:
  * It is planned that the 4.1.x series will be the last to support
    32-bit Windows, with production of binary packages for that
    series continuing until early 2023.
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Data set esoph in package datasets now provides the correct
    numbers of controls; previously it had the numbers of cases added
    to these.  (Reported by Alexander Fowler in PR#17964.)
  NEW FEATURES:
  * www.omegahat.net is no longer one of the repositories known by
    default to setRepositories().  (Nowadays it only provides source
    packages and is often unavailable.)
  * Function package_dependencies() (in package tools) can now use
    different dependency types for direct and recursive dependencies.
  * The checking of the size of tarball in R CMD check --as-cran
    &lt;pkg&gt; may be tweaked via the new environment variable
    _R_CHECK_CRAN_INCOMING_TARBALL_THRESHOLD_, as suggested in
    PR#17777 by Jan Gorecki.
  * Using c() to combine a factor with other factors now gives a
    factor, an ordered factor when combining ordered factors with
    identical levels.
  * apply() gains a simplify argument to allow disabling of
    simplification of results.
  * The format() method for class "ftable" gets a new option justify.
    (Suggested by Thomas Soeiro.)
  * New ...names() utility.  (Proposed by Neal Fultz in PR#17705.)
  * type.convert() now warns when its as.is argument is not
    specified, as the help file always said it _should_.  In that
    case, the default is changed to TRUE in line with its change in
    read.table() (related to stringsAsFactor) in R 4.0.0.
  * When printing list arrays, classed objects are now shown _via_
    their format() value if this is a short enough character string,
    or by giving the first elements of their class vector and their
    length.
  * capabilities() gets new entry "Rprof" which is TRUE when R has
    been configured with the equivalent of --enable-R-profiling (as
    it is by default).  (Related to Michael Orlitzky's report
    PR#17836.)
  * str(xS4) now also shows extraneous attributes of an S4 object
    xS4.
  * Rudimentary support for vi-style tags in rtags() and R CMD rtags
    has been added.  (Based on a patch from Neal Fultz in PR#17214.)
  * checkRdContents() is now exported from tools; it and also
    checkDocFiles() have a new option chkInternal allowing to check
    Rd files marked with keyword "internal" as well.  The latter can
    be activated for R CMD check via environment variable
    _R_CHECK_RD_INTERNAL_TOO_.
  * New functions numToBits() and numToInts() extend the raw
    conversion utilities to (double precision) numeric.
  * Functions URLencode() and URLdecode() in package utils now work
    on vectors of URIs.  (Based on patch from Bob Rudis submitted
    with PR#17873.)
  * path.expand() can expand ~user on most Unix-alikes even when
    readline is not in use.  It tries harder to expand ~, for example
    should environment variable HOME be unset.
  * For HTML help (both dynamic and static), Rd file links to help
    pages in external packages are now treated as references to
    topics rather than file names, and fall back to a file link only
    if the topic is not found in the target package. The earlier rule
    which prioritized file names over topics can be restored by
    setting the environment variable _R_HELP_LINKS_TO_TOPICS_ to a
    false value.
  * c() now removes NULL arguments before dispatching to methods,
    thus simplifying the implementation of c() methods, _but_ for
    back compatibility keeps NULL when it is the first argument.
    (From a report and patch proposal by Lionel Henry in PR#17900.)
  * Vectorize()'s result function's environment no longer keeps
    unneeded objects.
  * Function ...elt() now propagates visibility consistently with
    ..n.  (Thanks to Lionel Henry's PR#17905.)
  * capture.output() no longer uses non-standard evaluation to
    evaluate its arguments.  This makes evaluation of functions like
    parent.frame() more consistent.  (Thanks to Lionel Henry's
    PR#17907.)
  * packBits(bits, type="double") now works as inverse of
    numToBits().  (Thanks to Bill Dunlap's proposal in PR#17914.)
  * curlGetHeaders() has two new arguments, timeout to specify the
    timeout for that call (overriding getOption("timeout")) and TLS
    to specify the minimum TLS protocol version to be used for
    https:// URIs (_inter alia_ providing a means to check for sites
    using deprecated TLS versions 1.0 and 1.1).
  * For nls(), an optional constant scaleOffset may be added to the
    denominator of the relative offset convergence test for cases
    where the fit of a model is expected to be exact, thanks to a
    proposal by John Nash.  nls(*, trace=TRUE) now also shows the
    convergence criterion.
  * Numeric differentiation _via_ numericDeriv() gets new optional
    arguments eps and central, the latter for taking central divided
    differences.  The latter can be activated for nls() via
    nls.control(nDcentral = TRUE).
  * nls() now passes the trace and control arguments to getInitial(),
    notably for all self-starting models, so these can also be fit in
    zero-noise situations via a scaleOffset.  For this reason, the
    initial function of a selfStart model must now have ... in its
    argument list.
  * bquote(splice = TRUE) can now splice expression vectors with
    attributes: this makes it possible to splice the result of
    parse(keep.source = TRUE).  (Report and patch provided by Lionel
    Henry in PR#17869.)
  * textConnection() gets an optional name argument.
  * get(), exists(), and get0() now signal an error if the first
    argument has length greater than 1.  Previously additional
    elements were silently ignored.  (Suggested by Antoine Fabri on
    R-devel.)
  * R now provides a shorthand notation for creating functions, e.g.
    \(x) x + 1 is parsed as function(x) x + 1.
  * R now provides a simple native forward pipe syntax |&gt;.  The
    simple form of the forward pipe inserts the left-hand side as the
    first argument in the right-hand side call.  The pipe
    implementation as a syntax transformation was motivated by
    suggestions from Jim Hester and Lionel Henry.
  * all.equal(f, g) for functions now by default also compares their
    environment(.)s, notably via new all.equal method for class
    function.  Comparison of nls() fits, e.g., may now need
    all.equal(m1, m2, check.environment = FALSE).
  * .libPaths() gets a new option include.site, allowing to _not_
    include the site library.  (Thanks to Dario Strbenac's suggestion
    and Gabe Becker's PR#18016.)
  * Lithuanian translations are now available.  (Thanks to Rimantas
    Zakauskas.)
  * names() now works for DOTSXP objects.  On the other hand, in
    R-lang, the R language manual, we now warn against relying on the
    structure or even existence of such dot-dot-dot objects.
  * all.equal() no longer gives an error on DOTSXP objects.
  * capabilities("cairo") now applies only to the file-based devices
    as it is now possible (if very unusual) to build R with Cairo
    support for those but not for X11().
  * There is optional support for tracing the progress of
    loadNamespace() - see its help.
  * (Not Windows.)  l10n_info() reports an additional element, the
    name of the encoding as reported by the OS (which may differ from
    the encoding part (if any) of the result from
    Sys.getlocale("LC_CTYPE").
  * New function gregexec() which generalizes regexec() to find _all_
    disjoint matches and well as all substrings corresponding to
    parenthesized subexpressions of the given regular expression.
    (Contributed by Brodie Gaslam.)
  * New function charClass() in package utils to query the
    wide-character classification functions in use (such as
    iswprint).
  * The names of quantile()'s result no longer depend on the global
    getOption("digits"), but quantile() gets a new optional argument
    digits = 7 instead.
  * grep(), sub(), regexp and variants work considerably faster for
    long factors with few levels.  (Thanks to Michael Chirico's
    PR#18063.)
  * Provide grouping of x11() graphics windows within a window
    manager such as Gnome or Unity; thanks to a patch by Ivan Krylov
    posted to R-devel.
  * The split() method for class data.frame now allows the f argument
    to be specified as a formula.
  * sprintf now warns on arguments unused by the format string.
  * New palettes "Rocket" and "Mako" for hcl.colors() (approximating
    palettes of the same name from the 'viridisLite' package).
    Contributed by Achim Zeileis.
  * The base environment and its namespace are now locked (so one can
    no longer add bindings to these or remove from these).
  * Rterm handling of multi-byte characters has been improved,
    allowing use of such characters when supported by the current
    locale.
  * Rterm now accepts ALT+ +xxxxxxxx sequences to enter Unicode
    characters as hex digits.
  * Environment variable LC_ALL on Windows now takes precedence over
    LC_CTYPE and variables for other supported categories, matching
    the POSIX behaviour.
  * duplicated() and anyDuplicated() are now optimized for integer
    and real vectors that are known to be sorted via the ALTREP
    framework. Contributed by Gabriel Becker via PR#17993.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 14
    and so packages that provide graphics devices should be
    reinstalled.
  * Graphics devices should now specify deviceVersion to indicate
    what version of the graphics engine they support.
  * Graphics devices can now specify deviceClip.  If TRUE, the
    graphics engine will never perform any clipping of output itself.
    The clipping that the graphics engine does perform (for both
    canClip = TRUE and canClip = FALSE) has been improved to avoid
    producing unnecessary artifacts in clipped output.
  * The grid package now allows gpar(fill) to be a linearGradient(),
    a radialGradient(), or a pattern().  The viewport(clip) can now
    also be a grob, which defines a clipping path, and there is a new
    viewport(mask) that can also be a grob, which defines a mask.
    These new features are only supported so far on the Cairo-based
    graphics devices and on the pdf() device.
  * (Not Windows.)  A warning is given when a Cairo-based type is
    specified for a png(), jpeg(), tiff() or bmp() device but Cairo
    is unsupported (so type = "Xlib" is tried instead).
  * grSoftVersion() now reports the versions of FreeType and
    FontConfig if they are used directly (not _via_ Pango), as is
    most commonly done on macOS.
  C-LEVEL FACILITIES:
  * The _standalone_ libRmath math library and R's C API now provide
    log1pexp() again as documented, and gain log1mexp().
  INSTALLATION on a UNIX-ALIKE:
  * configure checks for a program pkgconf if program pkg-config is
    not found.  These are now only looked for on the path (like
    almost all other programs) so if needed specify a full path to
    the command in PKG_CONFIG, for example in file config.site.
  * C99 function iswblank is required - it was last seen missing ca
    2003 so the workaround has been removed.
  * There are new configure options --with-internal-iswxxxxx,
  - -with-internal-towlower and --with-internal-wcwidth which allows
    the system functions for wide-character classification,
    case-switching and width (wcwidth and wcswidth) to be replaced by
    internal ones.  The first has long been used on macOS, AIX (and
    Windows) but this enables it to be unselected there and selected
    for other platforms (it is the new default on Solaris).  The
    second is new in this version of R and is selected by default on
    macOS and Solaris.  The third has long been the default and
    remains so as it contains customizations for East Asian
    languages.
    System versions of these functions are often minimally
    implemented (sometimes only for ASCII characters) and may not
    cover the full range of Unicode points: for example Solaris (and
    Windows) only cover the Basic Multilingual Plane.
  * Cairo installations without X11 are more likely to be detected by
    configure, when the file-based Cairo graphics devices will be
    available but not X11(type = "cairo").
  * There is a new configure option --with-static-cairo which is the
    default on macOS.  This should be used when only static cairo
    (and where relevant, Pango) libraries are available.
  * Cairo-based graphics devices on platforms without Pango but with
    FreeType/FontConfig will make use of the latter for font
    selection.
  LINK-TIME OPTIMIZATION on a UNIX-ALIKE:
  * Configuring with flag --enable-lto=R now also uses LTO when
    installing the recommended packages.
  * R CMD INSTALL and R CMD SHLIB have a new flag --use-LTO to use
    LTO when compiling code, for use with R configured with
  - -enable-lto=R.  For R configured with --enable-lto, they have
    the new flag --no-use-LTO.
    Packages can opt in or out of LTO compilation _via_ a UseLTO
    field in the DESCRIPTION file.  (As usual this can be overridden
    by the command-line flags.)
  BUILDING R on Windows:
  * for GCC &gt;= 8, FC_LEN_T is defined in config.h and hence character
    lengths are passed from C to Fortran in _inter alia_ BLAS and
    LAPACK calls.
  * There is a new text file src/gnuwin32/README.compilation, which
    outlines how C/Fortran code compilation is organized and
    documents new features:
  * R can be built with Link-Time Optimization with a suitable
    compiler - doing so with GCC 9.2 showed several
    inconsistencies which have been corrected.
  * There is support for cross-compiling the C and Fortran code
    in R and standard packages on suitable (Linux) platforms.
    This is mainly intended to allow developers to test later
    versions of compilers - for example using GCC 9.2 or 10.x has
    detected issues that GCC 8.3 in Rtools40 does not.
  * There is experimental support for cross-building R packages
    with C, C++ and/or Fortran code.
  * The R installer can now be optionally built to support a single
    architecture (only 64-bit or only 32-bit).
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++14 where
    available (which it is on all currently checked platforms): if
    not (as before) C++11 is used if available otherwise C++ is not
    supported.
    Packages which specify C++11 will still be installed using C++11.
    C++14 compilers may give deprecation warnings, most often for
    std::random_shuffle (deprecated in C++14 and removed in C++17).
    Either specify C++11 (see 'Writing R Extensions') or modernize
    the code and if needed specify C++14.  The latter has been
    supported since R 3.4.0 so the package's DESCRIPTION would need
    to include something like
    Depends: R (&gt;= 3.4)
  PACKAGE INSTALLATION on Windows:
  * R CMD INSTALL and R CMD SHLIB make use of their flag --use-LTO
    when the LTO_OPT make macro is set in file etc/${R_ARCH}/Makeconf
    or in a personal/site Makevars file.  (For details see 'Writing R
    Extensions' SS4.5.)
    This provides a valuable check on code consistency.  It does work
    with GCC 8.3 as in Rtools40, but that does not detect everything
    the CRAN checks with current GCC do.
  PACKAGE INSTALLATION on macOS:
  * The default personal library directory on builds with
  - -enable-aqua (including CRAN builds) now differs by CPU type,
    one of
    ~/Library/R/x86_64/x.y/library
    ~/Library/R/arm64/x.y/library
    This uses the CPU type R (and hence the packages) were built for,
    so when a x86_64 build of R is run under Rosetta emulation on an
    arm64 Mac, the first is used.
  UTILITIES:
  * R CMD check can now scan package functions for bogus return
    statements, which were possibly intended as return() calls (wish
    of PR#17180, patch by Sebastian Meyer). This check can be
    activated via the new environment variable
    _R_CHECK_BOGUS_RETURN_, true for --as-cran.
  * R CMD build omits tarballs and binaries of previous builds from
    the top-level package directory.  (PR#17828, patch by Sebastian
    Meyer.)
  * R CMD check now runs sanity checks on the use of LazyData, for
    example that a data directory is present and that
    LazyDataCompression is not specified without LazyData and has a
    documented value.  For packages with large LazyData databases
    without specifying LazyDataCompression, there is a reference to
    the code given in 'Writing R Extensions' SS1.1.6 to test the
    choice of compression (as in all the CRAN packages tested a
    non-default method was preferred).
  * R CMD build removes LazyData and LazyDataCompression fields from
    the DESCRIPTION file of packages without a data directory.
  ENCODING-RELATED CHANGES:
  * The parser now treats \Unnnnnnnn escapes larger than the upper
    limit for Unicode points (\U10FFFF) as an error as they cannot be
    represented by valid UTF-8.
    Where such escapes are used for outputting non-printable
    (including unassigned) characters, 6 hex digits are used (rather
    than 8 with leading zeros).  For clarity, braces are used, for
    example \U{0effff}.
  * The parser now looks for non-ASCII spaces on Solaris (as
    previously on most other OSes).
  * There are warnings (including from the parser) on the use of
    unpaired surrogate Unicode points such as \uD834.  (These cannot
    be converted to valid UTF-8.)
  * Functions nchar(), tolower(), toupper() and chartr() and those
    using regular expressions have more support for inputs with a
    marked Latin-1 encoding.
  * The character-classification functions used (by default) to
    replace the system iswxxxxx functions on Windows, macOS and AIX
    have been updated to Unicode 13.0.0.
    The character-width tables have been updated to include new
    assignments in Unicode 13.0.0.
  * The code for evaluating default (extended) regular expressions
    now uses the same character-classification functions as the rest
    of R (previously they differed on Windows, macOS and AIX).
  * There is a build-time option to replace the system's
    wide-character wctrans C function by tables shipped with R: use
    configure option --with-internal-towlower or (on Windows)
  - DUSE_RI18N_CASE in CFLAGS when building R.  This may be needed
    to allow tolower() and toupper() to work with Unicode characters
    beyond the Basic Multilingual Plane where not supported by system
    functions (e.g. on Solaris where it is the new default).
  * R is more careful when truncating UTF-8 and other multi-byte
    strings that are too long to be printed, passed to the system or
    libraries or placed into an internal buffer.  Truncation will no
    longer produce incomplete multibyte characters.
  DEPRECATED AND DEFUNCT:
  * Function plclust() from the package stats and
    package.dependencies(), pkgDepends(), getDepList(),
    installFoundDepends(), and vignetteDepends() from package tools
    are defunct.
  * Defunct functions checkNEWS() and readNEWS() from package tools
    and CRAN.packages() from utils have been removed.
  * R CMD config CXXCPP is defunct (it was deprecated in R 3.6.2).
  * parallel::detectCores() drops support for Irix (retired in 2013).
  * The LINPACK argument to chol.default(), chol2inv(),
    solve.default() and svd() has been defunct since R 3.1.0.  It was
    silently ignored up to R 4.0.3 but now gives an error.
  * Subsetting/indexing, such as ddd[*] or ddd$x on a DOTSXP
    (dot-dot-dot) object ddd has been disabled; it worked by accident
    only and was undocumented.
  BUG FIXES:
  * Many more C-level allocations (mainly by malloc and strdup) are
    checked for success with suitable alternative actions.
  * Bug fix for replayPlot(); this was turning off graphics engine
    display list recording if a recorded plot was replayed in the
    same session.  The impact of the bug became visible if resize the
    device after replay OR if attempted another savePlot() after
    replay (empty display list means empty screen on resize or empty
    saved plot).
  * R CMD check etc now warn when a package exports non-existing S4
    classes or methods, also in case of no "methods" presence.
    (Reported by Alex Bertram; reproducible example and patch by
    Sebastian Meyer in PR#16662.)
  * boxplot() now also accepts calls for labels such as ylab, the
    same as plot().  (Reported by Marius Hofert.)
  * The help page for xtabs() now correctly states that addNA is
    setting na.action = na.pass among others.  (Reported as PR#17770
    by Thomas Soeiro.)
  * The R CMD check &lt;pkg&gt; gives a longer and more comprehensible
    message when DESCRIPTION misses dependencies, e.g., in Imports:.
    (Thanks to the contributors of PR#17179.)
  * update.default() now calls the generic update() on the formula to
    work correctly for models with extended formulas.  (As reported
    and suggested by Neal Fultz in PR#17865.)
  * The horizontal position of leaves in a dendrogram is now correct
    also with center = FALSE.  (PR#14938, patch from Sebastian
    Meyer.)
  * all.equal.POSIXt() no longer warns about and subsequently ignores
    inconsistent "tzone" attributes, but describes the difference in
    its return value (PR#17277).  This check can be disabled _via_
    the new argument check.tzone = FALSE as suggested by Sebastian
    Meyer.
  * as.POSIXct() now populates the "tzone" attribute from its tz
    argument when x is a logical vector consisting entirely of NA
    values.
  * x[[2^31]] &lt;- v now works.  (Thanks to the report and patch by
    Suharto Anggono in PR#17330.)
  * In log-scale graphics, axis() ticks and label positions are now
    computed more carefully and symmetrically in their range,
    typically providing _more_ ticks, fulfilling wishes in PR#17936.
    The change really corresponds to an improved axisTicks() (package
    grDevices), potentially influencing grid and lattice, for
    example.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now correct to at
    least five digits where it was catastrophically wrong,
    previously.
  * sum(df) and similar "Summary"- and "Math"-group member functions
    now work for data frames df with logical columns, notably also of
    zero rows.  (Reported to R-devel by Martin "b706".)
  * unsplit() had trouble with tibbles due to unsound use of rep(NA,
    len)-indexing, which should use NA_integer_ (Reported to R-devel
    by Mario Annau.)
  * pnorm(x, log.p = TRUE) underflows to -Inf slightly later.
  * show(&lt;hidden S4 generic&gt;) prints better and without quotes for
    non-hidden S4 generics.
  * read.table() and relatives treated an "NA" column name as missing
    when check.names = FALSE PR#18007.
  * Parsing strings containing UTF-16 surrogate pairs such as
    "\uD834\uDD1E" works better on some (uncommon) platforms.
    sprintf("%X", utf8ToInt("\uD834\uDD1E")) should now give "1D11E"
    on all platforms.
  * identical(x,y) is no longer true for differing DOTSXP objects,
    fixing PR#18032.
  * str() now works correctly for DOTSXP and related exotics, even
    when these are doomed.
    Additionally, it no longer fails for lists with a class and
    "irregular" method definitions such that e.g. lapply(*) will
    necessarily fail, as currently for different igraph objects.
  * Too long lines in environment files (e.g. Renviron) no longer
    crash R. This limit has been increased to 100,000 bytes.
    (PR#18001.)
  * There is a further workaround for FreeType giving incorrect
    italic font faces with cairo-based graphics devices on macOS.
  * add_datalist(*, force = TRUE) (from package tools) now actually
    updates an existing data/datalist file for new content.  (Thanks
    to a report and patch by Sebastian Meyer in PR#18048.)
  * cut.Date() and cut.POSIXt() could produce an empty last interval
    for breaks = "months" or breaks = "years".  (Reported as PR#18053
    by Christopher Carbone.)
  * Detection of the encoding of 'regular' macOS locales such as
    en_US (which is UTF-8) had been broken by a macOS change:
    fortunately these are now rarely used with en_US.UTF-8 being
    preferred.
  * sub() and gsub(pattern, repl, x, *) now keep attributes of x such
    as names() also when pattern is NA (PR#18079).
  * Time differences ("difftime" objects) get a replacement and a
    rep() method to keep "units" consistent.  (Thanks to a report and
    patch by Nicolas Bennett in PR#18066.)
  * The \RdOpts macro, setting defaults for \Sexpr options in an Rd
    file, had been ineffective since R 2.12.0: it now works again.
    (Thanks to a report and patch by Sebastian Meyer in PR#18073.)
  * mclapply and pvec no longer accidentally terminate parallel
    processes started before by mcparallel or related calls in
    package parallel (PR#18078).
  * grep and other functions for evaluating (extended) regular
    expressions handle in Unicode also strings not explicitly flagged
    UTF-8, but flagged native when running in UTF-8 locale.
  * Fixed a crash in fifo implementation on Windows (PR#18031).
  * Binary mode in fifo on Windows is now properly detected from
    argument open (PR#15600, PR#18031).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1622808000">- The line %{__install} -m 755 -d %{_infodir}
  no longer works in TW or Factory.
  But without that line it works everywhere. So this instruction
  was commented out of the spec file.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1628596800">- CHANGES IN R 4.1.1:
  NEW FEATURES:
  * require(pkg, quietly = TRUE) is quieter and in particular does
    not warn if the package is not found.
  DEPRECATED AND DEFUNCT:
  * Use of ftp:// URIs should be regarded as deprecated, with
    on-going support confined to method = "libcurl" and not routinely
    tested.  (Nowadays no major browser supports them.)
  * The non-default method = "internal" is deprecated for http:// and
    ftp:// URIs for both download.file and url.
  * On Windows, method = "wininet" is deprecated for http://,
    https:// and ftp:// URIs for both download.file and url.  (A
    warning is only given for ftp://.)
    For ftp:// URIs the default method is now "libcurl" if available
    (which it is on CRAN builds).
    method = "wininet" remains the default for http:// and https://
    URIs but if libcurl is available, using method = "libcurl" is
    preferred.
  INSTALLATION:
  * make check now works also without a LaTeX installation.  (Thanks
    to Sebastian Meyer's PR#18103.)
  BUG FIXES:
  * make check-devel works again in an R build configured with
  - -without-recommended-packages.
  * qnbinom(p, size, mu) for large size/mu is correct now in a range
    of cases (PR#18095); similarly for the (size, prob)
    parametrization of the negative binomial.  Also qpois() and
    qbinom() are better and or faster for extreme cases.  The
    underlying C code has been modularized and is common to all four
    cases of discrete distributions.
  * gap.axis is now part of the axis() arguments which are passed
    from bxp(), and hence boxplot().  (Thanks to Martin Smith's
    report and suggestions in PR#18109.)
  * .First and .Last can again be set from the site profile.
  * seq.int(from, to, *) and seq.default(..) now work better in large
    range cases where from-to is infinite where the two boundaries
    are finite.
  * all.equal(x,y) now returns TRUE correctly also when several
    entries of abs(x) and abs(y) are close to .Machine$double.xmax,
    the largest finite numeric.
  * model.frame() now clears the object bit when removing the class
    attribute of a value via na.action (PR#18100).
  * charClass() now works with multi-character strings on Windows
    (PR#18104, fixed by Bill Dunlap).
  * encodeString() on Solaris now works again in Latin-1 encoding on
    characters represented differently in UTF-8.  Support for
    surrogate pairs on Solaris has been improved.
  * file.show() on Windows now works with non-ASCII path names
    representable in the current native encoding (PR#18132).
  * Embedded R on Windows can now find R home directory via the
    registry even when installed only for the current user
    (PR#18135).
  * pretty(x) with finite x now returns finite values also in the
    case where the extreme x values are close in size to the maximal
    representable number .Machine$double.xmax.
    Also, it's been tweaked for very small ranges and when a boundary
    is close (or equal) to zero; e.g., pretty(c(0,1e-317)) no longer
    has negative numbers, currently still warning about a very small
    range, and pretty(2^-(1024 - 2^-1/(c(24,10)))) is more accurate.
  * The error message for not finding vignette files when weaving has
    correct file sizes now. (Thanks to Sebastian Meyer's PR#18154.)
  * dnbinom(20, &lt;large&gt;, 1) now correctly gives 0, and similar cases
    are more accurate with underflow precaution.  (Reported by Francisco Vera Alcivar in PR#18072.)</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635163200">- repaired https://bugzilla.suse.com/show_bug.cgi?id=1191380
  (rpmacros now go to rpmmacrodir)
- minor clean-ups in spec file</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635768000">- CHANGES IN R 4.1.2:
  C-LEVEL FACILITIES:
  * The workaround in headers R.h and Rmath.h (using namespace std;)
    for the Oracle Developer Studio compiler is no longer needed now
    C++11 is required so has been removed.  A couple more usages of
    log() (which should have been std::log()) with an int argument
    are reported on Solaris.
  * The undocumented limit of 4095 bytes on messages from the
    S-compatibility macros PROBLEM and MESSAGE is now documented and
    longer messages will be silently truncated rather than
    potentially causing segfaults.
  * If the R_NO_SEGV_HANDLER environment variable is non-empty, the
    signal handler for SEGV/ILL/BUS signals (which offers recovery
    user interface) is not set. This allows more reliable debugging
    of crashes that involve the console.
  DEPRECATED AND DEFUNCT:
  * The legacy S-compatibility macros PROBLEM, MESSAGE, ERROR, WARN,
    WARNING, RECOVER, ... are deprecated and will be hidden in R
    4.2.0. R's native interface of Rf_error and Rf_warning has long
    been preferred.
  BUG FIXES:
  * .mapply(F, dots, .) no longer segfaults when dots is not a list
    and uses match.fun(F) as always documented; reported by Andrew
    Simmons in PR#18164.
  * hist(&lt;Date&gt;, ...) and hist(&lt;POSIXt&gt;, ...)  no longer pass
    arguments for rect() (such as col and density) to axis().
    (Thanks to Sebastian Meyer's PR#18171.)
  * \Sexpr{ch} now preserves Encoding(ch). (Thanks to report and
    patch by Jeroen Ooms in PR#18152.)
  * Setting the RNG to "Marsaglia-Multicarry" e.g., by RNGkind(), now
    warns in more places, thanks to Andr'e Gillibert's report and
    patch in PR#18168.
  * gray(numeric(), alpha=1/2) no longer segfaults, fixing PR#18183,
    reported by Till Krenz.
  * Fixed dnbinom(x, size=&lt;very_small&gt;, .., log=TRUE) regression,
    reported by Martin Morgan.
  * as.Date.POSIXlt(x) now keeps names(x), thanks to Davis Vaughan's
    report and patch in PR#18188.
  * model.response() now strips an "AsIs" class typically, thanks to
    Duncan Murdoch's report and other discussants in PR#18190.
  * try() is considerably faster in case of an error and long call,
    as e.g., from some do.call().  Thanks to Alexander Kaever's
    suggestion posted to R-devel.
  * qqline(y = &lt;object&gt;) such as y=I(.), now works, see also
    PR#18190.
  * Non-integer mgp par() settings are now handled correctly in
    axis() and mtext(), thanks to Mikael Jagan and Duncan Murdoch's
    report and suggestion in PR#18194.
  * formatC(x) returns length zero character() now, rather than ""
    when x is of length zero, as documented, thanks to Davis
    Vaughan's post to R-devel.
  * removeSource(fn) now retains (other) attributes(fn).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1647000000">- CHANGES IN R 4.1.3:
  NEW FEATURES:
  * The default version of Bioconductor has been changed to 3.14.
    (This is used by setRepositories and the menus in GUIs.)
  UTILITIES:
  * R CMD check --as-cran has a workaround for a bug in versions of
    file up to at least 5.41 which mis-identify DBF files last
    changed in 2022 as executables.
  C-LEVEL FACILITIES:
  * The legacy S-compatibility macros SINGLE_* in R_ext/Constants.h
    (included by R.h) are deprecated and will be removed in R 4.2.0.
  BUG FIXES:
  * Initialization of self-starting nls() models with initialization
    functions following the pre-R-4.1.0 API (without the ...
    argument) works again for now, with a deprecation warning.
  * Fixed quoting of ~autodetect~ in Java setting defaults to avoid
    inadvertent user lookup due to leading ~, reported in PR#18231 by
    Harold Gutch.
  * substr(., start, stop) &lt;- v now treats _negative_ stop values
    correctly.  Reported with a patch in PR#18228 by Brodie Gaslam.
  * Subscripting an array x without dimnames by a
    length(dim(x))-column character matrix gave "random" non-sense,
    now an error; reported in PR#18244 by Mikael Jagan.
  * ...names() now matches names(list(...)) closely, fixing PR#18247.
  * all.equal(*, scale = s) now works as intended when length(s) &gt; 1,
    partly thanks to Michael Chirico's PR#18272.
  * print(x) for long vectors x now also works for named atomic
    vectors or lists and prints the correct number when reaching the
    getOption("max.print") limit; partly thanks to a report and
    proposal by Hugh Parsonage to the R-devel list.
  * all.equal(&lt;selfStart&gt;, *) no longer signals a deprecation
    warning.
  * reformulate(*, response=r) gives a helpful error message now when
    length(r) &gt; 1, thanks to Bill Dunlap's PR#18281.
  * Modifying globalCallingHandlers inside withCallingHandlers() now
    works or fails correctly, thanks to Henrik Bengtsson's PR#18257.
  * hist(&lt;Date&gt;, breaks = "days") and hist(&lt;POSIXt&gt;, breaks = "secs")
    no longer fail for inputs of length 1.
  * qbeta(.001, .9, .009) and similar cases now converge correctly
    thanks to Ben Bolker's report in PR#17746.
  * window(x, start, end) no longer wrongly signals "'start' cannot
    be after 'end'", fixing PR#17527 and PR#18291.
  * data() now checks that its (rarely used) list argument is a
    character vector - a couple of packages passed other types and
    gave incorrect results.
  * which() now checks its arr.ind argument is TRUE rather coercing
    to logical and taking the first element - which gave incorrect
    results in package code.
  * model.weights() and model.offset() more carefully extract their
    model components, thanks to Ben Bolker and Tim Taylor's R-devel
    post.
  * list.files(recursive = TRUE) now shows all broken symlinks
    (previously, some of them may have been omitted, PR#18296).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1650628800">- CHANGES IN R 4.2.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * The formula method of aggregate() now matches the generic in
    naming its first argument x (resolving PR#18299 by Thomas
    Soeiro).
    This means that calling aggregate() with a formula as a named
    first argument requires name formula in earlier versions of R and
    name x now, so portable code should not name the argument (code
    in many packages did).
  * Calling &amp;&amp; or || with either argument of length greater than one
    now gives a warning (which it is intended will become an error).
  * Calling if() or while() with a condition of length greater than
    one gives an error rather than a warning.  Consequently,
    environment variable _R_CHECK_LENGTH_1_CONDITION_ no longer has
    any effect.
  * Windows users should consult the WINDOWS section below for some
    profound changes including
  * Support for 32-bit builds has been dropped.
  * UTF-8 locales are used where available.
  * The default locations for the R installation and personal
    library folder have been changed.
    Thanks to Tomas Kalibera for months of work on the Windows port
    for this release.
  NEW FEATURES:
  * matrix(x, n, m) now warns in more cases where length(x) differs
    from n * m, as suggested by Abby Spurdle and Wolfgang Huber in
    Feb 2021 on the R-devel mailing list.
    This warning can be turned into an error by setting environment
    variable _R_CHECK_MATRIX_DATA_ to TRUE: R CMD check --as-cran
    does so unless it is already set.
  * Function file_test() in package utils gains tests for symlinks,
    readability and writability.
  * capabilities("libxml") is now false.
    The description of capabilities("http/ftp") now reflects that it
    refers to the default method, no longer the internal one.
  * simplify2array() gains an except argument for controlling the
    exceptions used by sapply().
  * Environment variables R_LIBS_USER and R_LIBS_SITE are both now
    set to the R system default if unset or empty, and can be set to
    NULL to indicate an empty list of user or site library
    directories.
  * The warning for axis()(-like) calls in cases of relatively small
    ranges (typically in log-scale situations) is slightly improved
    _and_ suppressed from explicit calls to .axisPars() as has always
    been the intention.
  * The contrasts setter function `contrasts&lt;-` gains an explicit
    default how.many = NULL rather than just using missing(how.many).
  * grid.pretty() gains a new optional argument n = 5.
  * There is a new function .pretty() with option bounds as a
    technical-utility version of pretty().  It and pretty() gain a
    new argument f.min with a better than back-compatible default.
  * Function grDevices::axisTicks() and related functions such as
    graphics::axis() work better, notably for the log scale; partly
    because of the pretty() improvements, but also because care is
    taken e.g., when ylim is finite but diff(ylim) is infinite.
  * nclass.FD() gains a digits option.
  * The R Mathlib internal C function bd0() (called indirectly from a
    dozen probability density and distribution functions such as
    dpois(), dbinom(), dgamma(), pgamma() _etc_) has been
    complemented by a more sophisticated and (mostly) more accurate C
    function ebd0(), currently called only by internal dpois_raw()
    improving accuracy for R level dpois() and potentially others
    calling it such as dnbinom(), dgamma() or pgamma().  (Thanks to
    Morten Welinder's PR#15628.)
  * write.ftable() gains sep = " " argument as suggested by Thomas
    Soeiro.
  * The names of the locale categories supported by R's
    Sys.getlocale() and Sys.setlocale() are now provided by variable
    .LC.categories in the base namespace.
  * The Date and POSIXt methods for hist() and the histogram method
    for plot() now also use the new default col = "lightgray" in
    consistency with the corresponding change to hist()'s default for
    R 4.0.0.
  * hist.default() gains new fuzz argument, and the histogram plot
    method no longer uses fractional axis ticks when displaying
    counts ("Frequency").
  * mapply() and hence Map() now also obey the "max-or-0-if-any"
    recycling rule, such that, e.g., Map(`+`, 1:3, 1[0]) is valid
    now.
  * as.character(&lt;obj&gt;) for "hexmode" or "octmode" objects now
    fulfils the important basic rule as.character(x)[j] ===
    as.character(x[j]).
  * The set utility functions, notably intersect() have been tweaked
    to be more consistent and symmetric in their two set arguments,
    also preserving a common mode.
  * substr(ch, start,end) &lt;- new now e.g., preserves names(ch); ditto
    for substring(), thanks to a patch from Brodie Gaslam.
  * plot(&lt;lm&gt;) gains a extend.ylim.f argument, in partial response to
    PR#15285; further PR#17784 is fixed thanks to several
    contributors and a patch by Elin Waring.  The Cook's dist
    contours get customizable via cook.col and cook.lty with a
    different default color and their legend is nicer by default and
    customizable via cook.legendChanges.
  * Attempting to subset an object that is not subsettable now
    signals an error of class notSubsettableError. The
    non-subsettable object is contained in the object field of the
    error condition.
  * Subscript-out-of-bounds errors are now signaled as errors of
    class subscriptOutOfBoundsError.
  * Stack-overflow errors are now signaled as errors inheriting from
    class stackOverflowError. See ?stackOverflowError for more
    details.
  * New partly experimental Sys.setLanguage() utility, solving the
    main problem of PR#18055.
  * gettext() and gettextf() get a new option trim = TRUE which when
    set to false allows translations for strings such as "Execution
    halted\n" typical for C code.
  * An experimental implementation of hash tables is now available.
    See ?hashtab for more details.
  * identical() gains a extptr.as.ref argument for requesting that
    external pointer objects be compared as reference objects.
  * reorder() gets an argument decreasing which it passes to sort()
    for level creation; based on the wish and patch by Thomas Soeiro
    in PR#18243.
  * as.vector() gains a data.frame method which returns a simple
    named list, also clearing a long standing 'FIXME' to enable
    as.vector(&lt;data.frame&gt;, mode="list").  This breaks code relying
    on as.vector(&lt;data.frame&gt;) to return the unchanged data frame.
  * legend() is now vectorized for arguments cex, x.intersp, and
    text.width.  The latter can now also be specified as a vector
    (one element for each column of the legend) or as NA for
    computing a proper column wise maximum value of strwidth(legend).
    The argument y.intersp can be specified as a vector with one
    entry for each row of the legend.
    legend() also gains new arguments title.cex and title.font.
    Thanks to Swetlana Herbrandt.
  * Deparsing no longer remaps attribute names dim, dimnames, levels,
    names and tsp to historical S-compatible names (which structure()
    maps back).
  * sample() and sample.int() have additional sanity checks on their
    size and n arguments.
    all.equal.numeric() gains a sanity check on its tolerance
    argument - calling all.equal(a, b, c) for three numeric vectors
    is a surprisingly common error.
    mean(na.rm =), rank(na.last =), barplot(legend.text =),
    boxplot(), contour(drawlabels =), polygon(border =) and
    methods::is(class2 =) have more robust sanity checks on their
    arguments.
    R CMD Rd2pdf (used by R CMD check) has a more robust sanity check
    on the format of \alias{} commands.
  * psigamma(x, deriv) for negative x now also works for deriv = 4
    and 5; their underlying C level dpsifn() is documented in
    'Writing R Extensions'.
  * The HTML help system now uses HTML5 (wish of PR#18149).
  * ks.test() now provides exact p-values also with ties and MC
    p-values in the two-sample (Smirnov) case.  By Torsten Hothorn.
  * ks.test() gains a formula interface, with y ~ 1 for the
    one-sample (Kolmogorov) test and y ~ group for the two-sample
    (Smirnov) test.  Contributed by Torsten Hothorn.
  * The return value from ks.test() now has class c("ks.test",
    "htest") - packages using try() need to take care to use
    inherits() and not == on the class.
  * New functions psmirnov(), qsmirnov() and rsmirnov() in package
    stats implementing the asymptotic and exact distributions of the
    two-sample Smirnov statistic.
  * iconv() now allows sub = "c99" to use C99-style escapes for UTF-8
    inputs which cannot be converted to encoding to.
  * In a forward pipe |&gt; expression it is now possible to use a named
    argument with the placeholder _ in the rhs call to specify where
    the lhs is to be inserted.  The placeholder can only appear once
    on the rhs.
  * The included LAPACK sources have been updated to version 3.10.0,
    except for the four Fortran 77 routines which 3.10.0 has
    re-implemented in Fortran 90 (where the older versions have been
    retained as the R build process does not support Fortran 90).
  * path.expand() and most other uses of tilde expansion now warn if
    a path would be too long if expanded.  (An exception is
    file.exists(), which silently returns false.)
  * trunc(&lt;Date&gt;, *) now supports units = "months" or "years" for
    consistency with the POSIXt method, thanks to Dirk Eddelbuettel's
    proposal in PR#18099.
  * list2DF() now checks that its arguments are of the same length,
    rather than use recycling.
  * The HTML help system has several new features: LaTeX-like math
    can be typeset using either KaTeX or MathJax, usage and example
    code is highlighted using Prism, and for dynamic help the output
    of examples and demos can be shown within the browser if the
    knitr package is installed. These features can be disabled by
    setting the environment variable _R_HELP_ENABLE_ENHANCED_HTML_ to
    a false value.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 15
    and so packages that provide graphics devices should be
    reinstalled.
  * The grid package now allows the user to specify a "vector" of
    pattern fills.  The fill argument to gpar() accepts a list of
    gradients and/or patterns and the functions linearGradient(),
    radialGradient(), and pattern() have a new group argument.
    Points grobs (data symbols) can now also have a pattern fill.
    The grobCoords() function now returns a more informative and
    complex result.
  * The grid package has new functions for drawing isolated groups:
    grid.group(), grid.define(), and grid.use().  These functions add
    compositing operators and affine transformations to R's graphics
    capabilities.
    The grid package also has new functions for stroking and filling
    paths: grid.stroke(), grid.fill(), and grid.fillStroke().
    A new function as.path() allows the user to specify the fill rule
    for a path that is to be used for clipping, stroking, or filling;
    available options are "winding" and "evenodd".  A new function
    as.mask() allows the user to specify the type of a mask;
    available options are "alpha" and "luminance".
    These new features are only supported so far (at most) on the
    Cairo-based graphics devices and on the pdf() device.
  * dev.capabilities() reports on device support for the new
    features.
  * par() now warns about unnamed non-character arguments to prevent
    misuse such as {usr &lt;- par("usr"); par(usr)}.
  INSTALLATION:
  * Facilities for accessing ftp:// sites are no longer tested
    (except _pro tem_ for curlGetHeaders()) as modern browsers have
    removed support.
  * R can now be built with DEFS = -DSTRICT_R_HEADERS .
  PACKAGE INSTALLATION:
  * R CMD INSTALL no longer tangles vignettes. This completes an R
    CMD build change in R 3.0.0 and affects packages built before R
    3.0.2. Such packages should be re-made with R CMD build to have
    the tangled R code of vignettes shipped with the tarball.
  * USE_FC_LEN_T will become the default: this uses the correct
    prototypes for Fortran BLAS/LAPACK routines called from C/C++,
    and requires adjustment of most such calls - see 'Writing R
    Extensions' SS6.6.2.  (This has been supported since R 3.6.2.)
  * Package installation speed for packages installed with
    keep.source has been improved. This resolve the issue reported by
    Ofek Shilon in PR#18236.
  UTILITIES:
  * R CMD check can optionally report files/directories left behind
    in home, /tmp (even though TMPDIR is set) and other directories.
    See the "R Internals" manual for details.
  * R CMD check now reports byte-compilation errors during
    installation.  These are not usually fatal but may result in
    parts of the package not being byte-compiled.
  * _R_CHECK_DEPENDS_ONLY_ can be applied selectively to examples,
    tests and/or vignettes in R CMD check: see the "R Internals"
    manual.
  * _R_CHECK_SRC_MINUS_W_IMPLICIT_ now defaults to true: recent
    versions of Apple clang on macOS have made implicit function
    declarations in C into a compilation error.
  * R CMD check --as-cran makes use of the environment variable
    AUTORECONF.  See the "R Internals" manual SS8 for further details.
  * R CMD check --use-valgrind also uses valgrind when re-building
    vignettes as some non-Sweave vignettes unhelpfully comment out
    all their code when R CMD check runs vignettes.
  * Errors in re-building vignettes (unless there are LaTeX errors)
    are reported by R CMD check as ERROR rather than WARNING when
    running vignettes has been skipped (as it frequently is in CRAN
    checks and by --as-cran).
  * R CMD Rd2pdf gains a --quiet option that is used by R CMD build
    when building the PDF package manual.
  * R CMD Rd2pdf now always runs LaTeX in batch mode, consistent with
    Texinfo &gt;= 6.7. The --batch option is ignored.
  * R CMD build and R CMD check now include the Rd file name and line
    numbers in the error message of an \Sexpr evaluation failure.
  * For packages using the \doi Rd macro (now an install-time \Sexpr)
    but no other dynamic Rd content, R CMD build now produces a
    smaller tarball and is considerably faster - skipping temporary
    package installation.
  C-LEVEL FACILITIES:
  * The non-API header R_ext/R-ftp-http.h is no longer provided, as
    the entry points it covered are now all defunct.
  * A number of non-API declarations and macro definitions have been
    moved from the installed header Rinternals.h to the internal
    header Defn.h. Packages that only use entry points and
    definitions documented to be part of the API as specified in
    'Writing R Extensions' SS6 should not be affected.
  * The macro USE_RINTERNALS no longer has any effect when compiling
    package code.  Packages which also use R_NO_REMAP will need to
    ensure that the remapped names are used for calls to API
    functions that were formerly also made available as macros.
  * The deprecated legacy S-compatibility macros PROBLEM, MESSAGE,
    ERROR, WARN, WARNING, RECOVER, ... are no longer defined in
    R_exts/RS.h (included by R.h).  Replace these by calls to
    Rf_error and Rf_warning (defined in header R_ext/Error.h included
    by R.h).
    Header R_ext/RS.h no longer includes R_ext/Error.h.
  * Header R_ext/Constants.h (included by R.h) when included from C++
    now includes the C++ header cfloat rather than the C header
    float.h (now possible as C++11 is required).
  * The legacy S-compatibility macros DOUBLE_* in R_ext/Constants.h
    (included by R.h) are deprecated.
  * The deprecated S-compatibility macros SINGLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * R_Calloc, R_Free and R_Realloc are preferred to their unprefixed
    forms and error messages now use the prefix. These forms were
    introduced in R 3.4.0 and are available even when
    STRICT_R_HEADERS is defined.
  * rmultinom has been documented in 'Writing R Extensions' SS6 so is
    now part of the R API.
  * Similarly, Rtanpi, called from R level tanpi() is now part of the
    R API.
  * The long-deprecated, undocumented and non-API entry point call_R
    is no longer declared in R_ext/RS.h (included by R.h).
  * The header S.h which has been unsupported since Jan 2016 has been
    removed.  Use R.h instead.
  DEPRECATED AND DEFUNCT:
  * The (non-default and deprecated) method = "internal" for
    download.file() and url() no longer supports http:// nor ftp://
    URIs.  (It is used only for file:// URIs.)
    On Windows, download.file(method = "wininet") no longer supports
    ftp:// URIs.  (It is no longer the default method, which is
    "libcurl" and does.)
    On Windows, the deprecated method = "wininet" now gives a warning
    for http:// and https:// URIs for both download.file() and url().
    (It is no longer the default method.)
  * On Windows, the command-line option --max-mem-size and
    environment variable R_MAX_MEM_SIZE are defunct.  The memory
    allocation limit was important for 32-bit builds, but these are
    no longer supported.
  * default.stringsAsFactors() is now formally deprecated, where that
    was only mentioned on its regular help page, previously.  So it
    now gives a warning if called.
  * unix.time() is defunct now; it had been deprecated since R 3.4.0.
  BUG FIXES:
  * Setting digits = 0 in format(), print.default() (and hence
    typically print()) or options() is again invalid.  Its behaviour
    was platform-dependent, and it is unclear what "zero significant
    digits" should mean (PR#18098).
  * Messages from C code in the cairo section of package grDevices
    are now also offered for translation, thanks to Michael Chirico's
    PR#18123.
  * mean(x) with finite x now is finite also without "long.double"
    capability.
  * R CMD Rd2pdf no longer leaves an empty build directory behind
    when it aborts due to an already existing output file.  (Thanks
    to Sebastian Meyer's PR#18141.)
  * density(x, weights = w, na.rm = TRUE) when anyNA(x) is true, now
    removes weights "in parallel" to x, fixing PR#18151, reported by
    Matthias Gondan.  Additionally, it gets a subdensity option.
  * Conversion of \Sexpr[]{&lt;expR&gt;} to LaTeX or HTML no longer
    produces long blocks of empty lines when &lt;expR&gt; itself contains
    several lines all producing empty output.  Thanks to a report and
    patch by Ivan Krylov posted to R-devel.
  * R CMD build no longer fails if a package vignette uses child
    documents and inst/doc exists.  (Thanks to Sebastian Meyer's
    PR#18156.)
  * When an R documentation ('help' source) file man/foo.Rd in a
    package has \donttest{..} examples with a syntax error, it is now
    signalled as ERROR and with correct line numbers relating to the
  * -Ex.R file, thanks to Duncan Murdoch and Sebastian Meyer's
    reports and patch proposals in PR#17501.
  * Improved determination of the correct translation domain in
    non-base packages, addressing the combination of PR#18092 and
    PR#17998 (#c6) with reports and _augmented_ patch #2904 by
    Suharto Anggono.
    Note that "R-base" is no longer the default domain e.g., for
    top-level calls to gettext(); rather translation needs explicit
    domain = * specification in such cases.
  * identical(attrib.as.set=FALSE) now works correctly with data
    frames with default row names (Thanks to Charlie Gao's PR#18179).
  * txtProgressBar() now enforces a non-zero width for argument char,
    without which no progress can be visible.
  * dimnames(table(d)) is more consistent in the case where d is a
    list with a single component, thanks to Thomas Soeiro's report to
    R-devel.
    Further, table(d1, d2) now gives an error when d1 and d2 are data
    frames as suggested by Thomas in PR#18224.
  * Fix for drawing semi-transparent lines and fills on the native
    Windows graphics device (PR#18219 and PR#16694).  Thanks to Nick
    Ray for helpful diagnosis on Bugzilla.
  * The deparser now wraps sub-expressions such as if(A) ..  with
    parentheses when needed; thanks to Duncan Murdoch's PR#18232 and
    Lionel Henry's patches there.
  * remove.packages() no longer tries to uninstall Priority: base
    packages, thanks to a report and suggestions by Colin Fay in
    PR#18227.
  * win.metafile() now has xpinch and ypinch arguments so that the
    user can override Windows' (potentially wrong) guess at device
    dimensions.
  * x[i] and x[[i]] for non-integer i should now behave in all cases
    as always documented: the index used is equivalent to
    as.integer(i) unless that would overflow where trunc(i) is used
    instead; thanks to Suharto Anggono's report and patch proposals
    in PR#17977.
  * asOneSidedFormula() now associates the resulting formula with the
    global environment rather than the evaluation environment created
    for the call.
  * &lt;bibentry&gt;$name now matches the field name case-insensitively,
    consistent with bibentry() creation and the replacement method.
  * cbind() failed to detect some length mismatches with a mixture of
    time-series and non-time-series inputs.
  * The default LaTeX style file Sweave.sty used by the RweaveLatex
    driver no longer loads the obsolete ae package; thanks to a
    report by Thomas Soeiro in PR#18271.  Furthermore, it now skips
    \usepackage[T1]{fontenc} for engines other than pdfTeX (if
    detected) or if the new [nofontenc] option is used.
  * smooth.spline() now stores its logical cv argument more safely,
    fixing a rare bug when printing, and also stores n.
  * smooth.spline(x,y,*) now computes the cv.crit statistic
    correctly, also when is.unsorted(x), fixing PR#18294.
  * The data.frame method of rbind() now warns when binding
    not-wholly-recycling vectors, by analogy to the default method
    (for matrices).
  * setAs() finds the correct class for name to when multiple
    packages define a class with that name. Thanks to Gabor Csardi
    for the report.
  * Fix for detaching a package when two classes of the same name are
    present in method signatures for the same generic. Thanks to
    Gabor Csardi for the report.
  * match.arg("", c("", "a", "B")) gives a better error message, in
    part from PR#17959, thanks to Elin Waring.
  * R CMD Sweave --clean no longer removes pre-existing files or
    subdirectories (PR#18242).
  * The quartz() device no longer splits polylines into subpaths.
    That has caused narrowly-spaced lines with many points to always
    look solid even when dashed line type was used due to dash phase
    restarts.
  * Deparsing constructs such as quote(1 + `!`(2) + 3) works again as
    before R 3.5.0, thanks to the report and patch in PR#18284 by
    Suharto Anggono.
  * as.list(f) for a factor f now keeps names(f), fixing PR#18309.
  * qbeta(.001, .9, .009) and analogous qf() calls now return a
    correct value instead of NaN or wrongly 1, all with a warning;
    thanks to the report by Ludger Goeminne in PR#18302.
  * plot.lm() failed to produce the plot of residuals vs.  factor
    levels (i.e., which=5 when leverages are constant) for models
    with character predictors (PR#17840).
  * interaction.plot(..., xtick = TRUE) misplaced the x-axis line
    (PR#18305).
  * Not strictly fixing a bug, format()ing and print()ing of
    non-finite Date and POSIXt values NaN and +/-Inf no longer show
    as NA but the respective string, e.g., Inf, for consistency with
    numeric vector's behaviour, fulfilling the wish of PR#18308.
  * R CMD check no longer runs test scripts generated from
    corresponding .Rin files twice and now signals an ERROR if
    processing an .Rin script fails.
  * tools::Rd2txt() used for plain-text help pages now renders \hrefs
    (if tools::Rd2txt_options(showURLs = TRUE)) and \urls with
    percent-encoding and standards-compliant delimiting style (angle
    brackets and no URL: prefix).  \email is now rendered with a
    mailto: prefix.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1655985600">- CHANGES IN R 4.2.1:
  NEW FEATURES:
  * New function utils::findCRANmirror() to find out if a CRAN mirror
    has been selected, otherwise fallback to the main site.  This
    behaves in the same way as tools::CRAN_package_db() and is
    intended for packages wishing to access CRAN for purposes other
    than installing packages.
    The need for this was shown by a day when the main CRAN website
    was offline and a dozen or so packages which had its URL
    hardcoded failed their checks.
  INSTALLATION on a UNIX-ALIKE:
  * The libraries searched for by --with-blas (without a value) now
    include BLIS (after OpenBLAS but before ATLAS).  And on macOS,
    the Accelerate framework (after ATLAS).  (This is patterned after
    the AX_BLAS macro from the Autoconf Archive.)
  * The included LAPACK sources have been updated to 3.10.1.
  UTILITIES:
  * The (full path to) the command tidy to be used for HTML
    validation can be set by environment variable R_TIDYCMD.
  * Setting environment variable _R_CHECK_RD_VALIDATE_RD2HTML_ to a
    false value will override R CMD check --as-cran and turn off HTML
    validation.  This provides a way to circumvent a problematic
    tidy.
    The 2006 version that ships with macOS is always skipped.
  C-LEVEL FACILITIES:
  * The undocumented legacy declarations of Sint, Sfloat, SINT_MAX
    and SINT_MIN in header R.h are deprecated.
  BUG FIXES:
  * fisher.test(d) no longer segfaults for "large" d; fixing PR#18336
    by preventing/detecting an integer overflow reliably.
  * tar(., files=*) now produces correctly the warning about invalid
    uid or gid of files, fixing PR#18344, reported by Martin Morgan.
  * tk_choose.files() with multi = FALSE misbehaved on paths
    containing spaces (PR#18334) (regression introduced in R 4.0.0).
  * sort(x, partial = ind, *) now works correctly notably for the
    non-default na.last = FALSE or TRUE, fixing PR#18335 reported by
    James Edwards.
  * Environment variable _R_CHECK_XREFS_REPOSITORIES_ is only used
    for checking .Rd cross-references in R CMD check (as documented)
    and not for other uses looking for a CRAN mirror.
  * The search for a CRAN mirror when checking packages now uses
    getOption("repos") if that specifies a CRAN mirror, even when it
    does not also specify all three Bioconductor repositories (as was
    previously required).
  * The HTML code generated by tools::Rd2HTML() has been improved to
    pass tidy 5.8.0.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1667217600">- CHANGES IN R 4.2.2:
  NEW FEATURES:
  * tools::Rdiff(useDiff = TRUE) checks for the presence of an
    external diff command and switches to useDiff = FALSE if none is
    found.  This allows R CMD Rdiff to always work.
  * On Windows, environment variable R_LIBCURL_SSL_REVOKE_BEST_EFFORT
    can be used to switch to only 'best-effort' SSL certificate
    revocation checks with the default "libcurl" download method.
    This reduces security, but may be needed for downloads to work
    with MITM proxies (PR#18379).
  * (macOS) The run-time check for libraries from XQuartz for X11 and
    Tcl/Tk no longer uses otool from the Apple Developer Tools
    (PR#18400).
  * The LaTeX style for producing the PDF manuals, Rd.sty, now loads
    the standard amsmath, amsfonts and amssymb packages for greater
    coverage of math commands in the Rd \eqn and \deqn macros.  The
    \mathscr LaTeX command is also provided (via the mathrsfs
    package, if available, or the amsfonts bundle otherwise),
    fulfilling the wish of PR#18398.
  * (Windows) The default format of readClipboard() and
    writeClipboard() has been changed to 13 (CF_UNICODETEXT).
  INSTALLATION on a UNIX-ALIKE:
  * The PDF manuals (if built) can be compacted by the new target
    make compact-pdf (at the top level or in directory doc/manual).
  * There is now configure support for LLVM clang 15 on Linux, which
    defaults to position-independent (PIE) executables whereas
    gfortran does not.
  * Many small changes to ease compilation (and suppress warnings)
    with LLVM clang 15.
  BUG FIXES:
  * Rscript -e would fail if stdin were closed (Reported by Henrik
    Bengtsson.)
  * qt(*, log.p=TRUE) in outer tails no longer produces NaN in its
    final steps, thus fixing PR#18360.
  * tools::Rd2latex() now escapes hashes and ampersands when writing
    URLs, fixing LaTeX errors with such URLs in \tabular.
  * When isGeneric(f, fdef=*) is used with mismatching names, the
    warning is better understandable; reported (with fix) in PR#18370
    by Gabe Becker.
  * poly(x, n) now works again (and is now documented) when x is a
    "Date" or "POSIXct" object, or of another class while fulfilling
    mode(x) == "numeric".  This also enables poly(x, *, raw=TRUE) for
    such variables.  Reported by Michael Chirico to R-devel.
  * write.table(), write.csv() and write.csv2() restore their
    numerical precision (internal equivalent of digits = 15) after an
    interrupt (PR#18384).
  * One can now read also byte FF from a clipboard connection
    (PR#18385).
  * source("") and source(character()) now give more helpful error
    messages.
  * R CMD check --as-cran set _R_CHECK_TIMINGS_ too late to have the
    intended effect.
  * as.POSIXlt(x) now also works with very large dates x, fixing
    PR#18401 reported by Hannes M"uhleisen.
  * Files can now be extracted even from very large zip archives
    (PR#18390, thanks to Martin Jakt).
  * Non-finite objects of class "POSIXlt" are now correctly coerced
    to classes "Date" and "POSIXct"; following up on the extension to
    format() them correctly.
  * Added methods for is.finite(), is.infinite() and is.nan() for
    "POSIXlt" date-time objects.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1678881600">- CHANGES IN R 4.2.3:
  C-LEVEL FACILITIES:
  * The definition of DL_FUNC in R_ext/Rdynload.h has been changed to
    be fully C-compliant.  This means that functions loaded _via_ for
    example R_GetCCallable need to be cast to an appropriate type if
    they have any arguments.
  * .Machine has a new element sizeof.time_t to identify old systems
    with a 32-bit type and hence a limited range of date-times (and
    limited support for dates millions of years from present).
  PACKAGE INSTALLATION:
  * (Windows) The default C++ standard had accidentally been left at
    C++11 when it was changed to C++14 on Unix.
  BUG FIXES:
  * As "POSIXlt" objects may be "partially filled" and their list
    components meant to be recycled, length() now is the length of
    the longest component.
  * as.POSIXlt.Date() could underflow for dates in the far past (more
    than half a million years BCE).
  * as.Date.POSIXlt(x) would return "1970-01-01" instead of NA in R
    4.2.2, e.g., for
    x &lt;- as.POSIXlt(c("2019-01-30","2001-1-1"))
    x$mon &lt;- c(0L, NA); as.Date(x)
  * R CMD check failed to apply enabled _R_CHECK_SUGGESTS_ONLY_ to
    examples and vignettes (regression in R 4.2.0).
  * R CMD check did not re-build vignettes in separate processes by
    default (regression in R 4.2.0).
  * Running examples from HTML documentation now restores previous
    knitr settings and options (PR#18420).
  * Quartz: fonts are now located using Core Graphics API instead of
    deprecated ATS which is no longer supported in the macOS 13 SDK
    (PR#18426).  This also addresses an issue where the currently
    used font in the Quartz device context was not correctly
    retained.
  * (Windows) Math symbols in text drawing functions are again
    rendered correctly (PR#18440).  This fixes a regression in R
    4.2.1 caused by a fix in PR#18382 which uncovered an issue in
    GraphApp due to which the symbol charset was not used with TT
    Symbol font face.
  * (Windows) Installing a package with a src/Makefile.{win,ucrt}
    file includes ~/.R/Makevars.win64 in the search for user
    makevars, as documented in "R Installation and Administration"
    and done for packages with a src/Makevars.{win,ucrt} file.
  * format(&lt;POSIXlt_w/_unbalanced_sec&gt;, "....%OS&lt;n&gt;") with n &gt; 0 no
    longer accidentally uses the unbalanced seconds, thanks to
    Suharto Anggono's report (including patch) in PR#18448.
  * solve.default(a, b) works around issues with some versions of
    LAPACK when a contains NA or NaN values.
  * When UseMethod() cannot dispatch, it no longer segfaults
    producing the error message in case of a long class(), thanks to
    Joris Vankerschaver's report (including patch) in PR#18447.
  * When example(foo, ..) produces graphics on an interactive device
    it needs to open itself, it now leaves devAskNewPage() unchanged
    even when it was FALSE, thus fixing a 14 years old '&lt;FIXME&gt;'.
  * packageDescription() again catches errors from encoding
    conversions. This also fixes broken packageVersion() in C locale
    on systems where iconv does not support transliteration.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1681128000">- add patch to build with libcurl &gt;= 8</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1682078400">- CHANGES IN R 4.3.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Calling &amp;&amp; or || with LHS or (if evaluated) RHS of length greater
    than one is now always an error, with a report of the form
    'length = 4' in coercion to 'logical(1)'
    Environment variable _R_CHECK_LENGTH_1_LOGIC2_ no longer has any
    effect.
  NEW FEATURES:
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.10.1.  (This caused some platform-dependent
    changes to package check output.)  And then to the sources from
    LAPACK version 3.11.0 (with changes only to double complex
    subroutines).
  * The included LAPACK sources have been updated to include the four
    Fortran 90 routines rather than their Fortran 77 predecessors.
    This may give some different signs in SVDs or
    eigendecompositions..  (This completes the transition to LAPACK
    3.10.x begun in R 4.2.0.)
  * The LAPACK sources have been updated to version 3.11.0.  (No new
    subroutines have been added, so this almost entirely bug fixes:
    Those fixes do affect some computations with NaNs, including R's
    NA.)
  * The parser now signals _classed_ errors, notably in case of the
    pipe operator |&gt;.  The error object and message now give line and
    column numbers, mostly as proposed and provided by Duncan Murdoch
    in PR#18328.
  * toeplitz() is now generalized for asymmetric cases, with a
    toeplitz2() variant.
  * xy.coords() and xyz.coords() and consequently, e.g., plot(x,y,
    log = "y") now signal a _classed_ warning about negative values
    of y (where log(.) is NA).  Such a warning can be specifically
    suppressed or caught otherwise.
  * Regular expression functions now check more thoroughly whether
    their inputs are valid strings (in their encoding, e.g. in
    UTF-8).
  * The performance of grep(), sub(), gsub() and strsplit() has been
    improved, particularly with perl = TRUE and fixed = TRUE.  Use of
    useBytes = TRUE for performance reasons should no longer be
    needed and is discouraged: it may lead to incorrect results.
  * apropos() gains an argument dot_internals which is used by the
    completion (help(rcompgen)) engine to also see base internals
    such as .POSIXct().
  * Support in tools::Rdiff() for comparing uncompressed PDF files is
    further reduced - see its help page.
  * qqplot(x, y, ...) gains conf.level and conf.args arguments for
    computing and plotting a confidence band for the treatment
    function transforming the distribution of x into the distribution
    of y (Switzer, 1976, _Biometrika_). Contributed by Torsten
    Hothorn.
  * Performance of package_dependencies() has been improved for cases
    when the number of dependencies is large.
  * Strings newly created by gsub(), sub() and strsplit(), when any
    of the inputs is marked as "bytes", are also marked as "bytes".
    This reduces the risk of creating invalid strings and accidental
    substitution of bytes deemed invalid.
  * Support for readLines(encoding = "bytes") has been added to allow
    processing special text files byte-by-byte, without creating
    invalid strings.
  * iconv(from = "") now takes into account any declared encoding of
    the input elements and uses it in preference to the native
    encoding.  This reduces the risk of accidental creation of
    invalid strings, particularly when different elements of the
    input have different encoding (including "bytes").
  * Package repositories in getOption("repos") are now initialized
    from the repositories file when utils is loaded (if not already
    set, e.g., in .Rprofile).  (From a report and patch proposal by
    Gabriel Becker in PR#18405.)
  * compactPDF() gets a verbose option.
  * type.convert() and hence read.table() get new option tryLogical =
    TRUE with back compatible default.  When set to false, converts
    "F" or "T" columns to character.
  * Added new unit prefixes "R" and "Q" for abbreviating
    (unrealistically large) sizes beyond 10^{27} in standard = "SI",
    thanks to Henrik Bengtsson's PR#18435.
  * as.data.frame()'s default method now also works fine with atomic
    objects inheriting from classes such as "roman", "octmode" and
    "hexmode", such fulfilling the wish of PR#18421, by Benjamin
    Feakins.
  * The as.data.frame.vector() utility now errors for wrong-length
    row.names.  It warned for almost six years, with "Will be an
    error!".
  * sessionInfo() now also contains La_version() and reports codepage
    and timezone when relevant, in both print() and toLatex() methods
    which also get new option tzone for displaying timezone
    information when locale = FALSE.
  * New function R_compiled_by() reports the C and Fortran compilers
    used to build R, if known.
  * predict(&lt;lm&gt;, newdata = *) no longer unnecessarily creates an
    offset of all 0s.
  * solve() for complex inputs now uses argument tol and by default
    checks for 'computational singularity' (as it long has done for
    numeric inputs).
  * predict(&lt;rank-deficient lm&gt;, newdata=*) now obeys a new argument
    rankdeficient, with new default "warnif", warning only if there
    are non-estimable cases in newdata.  Other options include
    rankdeficient = "NA", predicting NA for non-estimable newdata
    cases.  This addresses PR#15072 by Russ Lenth and is based on his
    original proposal and discussions in PR#16158 also by David Firth
    and Elin Waring.  Still somewhat experimental.
  * Rgui console implementation now works better with the NVDA screen
    reader when the full blinking cursor is selected.  The underlying
    improvements in cursor handling may help also other screen
    readers on Windows.
  * The drop-field control in GraphApp can now be left with the TAB
    key and all controls can be navigated in the reverse order using
    the Shift+TAB key, improving accessibility of the Rgui
    configuration editor.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now fully accurate
    (instead of to "only" minimally five digits).
  * demo(error.catching) now also shows off withWarnings() and
    tryCatchWEMs().
  * As an experimental feature the placeholder _ can now also be used
    in the rhs of a forward pipe |&gt; expression as the first argument
    in an extraction call, such as _$coef. More generally, it can be
    used as the head of a chain of extractions, such as _$coef[[2]].
  * Spaces in the environment variable used to choose the R session's
    temporary directory (TMPDIR, TMP and TEMP are tried in turn) are
    now fatal.  (On Windows the 'short path' version of the path is
    tried and used if that does not contain a space.)
  * all.equal.numeric() gets a new optional switch giveErr to return
    the numeric error as attribute.  Relatedly,
    stopifnot(all.equal&lt;some&gt;(a, b, ..)) is as "smart" now, as
    stopifnot(all.equal(....)) has been already, thus allowing
    customized all.equal&lt;Some&gt;() wrappers.
  * R on Windows is now able to work with path names longer than 260
    characters when these are enabled in the system (requires at
    least Windows 10 version 1607).  Packages should be updated to
    work with long paths as well, instead of assuming PATH_MAX to be
    the maximum length.  Custom front-ends and applications embedding
    R need to update their manifests if they wish to allow this
    feature.  See
    &lt;https://blog.r-project.org/2023/03/07/path-length-limit-on-windows&gt;
    for more information.
  * 'Object not found' and 'Missing argument' errors now give a more
    accurate error context. Patch provided by Lionel Henry in
    PR#18241.
  * The @ operator is now an S3 generic. Based on contributions by
    Tomasz Kalinowski in PR#18482.
  * New generic chooseOpsMethod() provides a mechanism for objects to
    resolve cases where two suitable methods are found for an Ops
    Group Generic. This supports experimenting with alternative
    object systems. Based on contributions by Tomasz Kalinowski in
    PR#18484.
  * inherits(x, what) now accepts values other than a simple
    character vector for argument what. A new generic, nameOfClass(),
    is called to resolve the class name from what. This supports
    experimenting with alternative object systems. Based on
    contributions by Tomasz Kalinowski in PR#18485.
  * Detection of BLAS/LAPACK in use (sessionInfo()) with FlexiBLAS
    now reports the current backend.
  * The "data.frame" method for subset() now warns about extraneous
    arguments, typically catching the use of = instead of == in the
    subset expression.
  * Calling a:b when numeric a or b is longer than one may now be
    made into an error by setting environment variable
    _R_CHECK_LENGTH_COLON_ to a true value, along the proposal in
    PR#18419 by Henrik Bengtsson.
  * density(x, weights = *) now warns if automatic bandwidth
    selection happens without using weights; new optional warnWbw may
    suppress the warning.  Prompted by Christoph Dalitz' PR#18490 and
    its discussants.
  * rm(list = *) is faster and more readable thanks to Kevin Ushey's
    PR#18492.
  * The plot.lm() function no longer produces a normal Q-Q plot for
    GLMs. Instead it plots a half-normal Q-Q plot of the absolute
    value of the standardized deviance residuals.
  * The print() method for class "summary.glm" no longer shows
    summary statistics for the deviance residuals by default.  Its
    optional argument show.residuals can be used to show them if
    required.
  * The tapply() function now accepts a data frame as its X argument,
    and allows INDEX to be a formula in that case. by.data.frame()
    similarly allows INDICES to be a formula.
  * The performance of df[j] &lt;- value (including for missing j) and
    write.table(df) has been improved for data frames df with a large
    number of columns.  (Thanks to Gabriel Becker's PR#18500,
    PR#18503 and discussants, prompted by a report from Toby Dylan
    Hocking on the R-devel mailing list.)
  * The matrix multiply operator %*% is now an S3 generic, belonging
    to new group generic matrixOps.  From Tomasz Kalinowski's
    contribution in PR#18483.
  * New function array2DF() to convert arrays to data frames,
    particularly useful for the list arrays created by tapply().
  DATES and TIMES:
  * On platforms where (non-UTC) datetimes before 1902 (or before
    1900 as with system functions on recent macOS) are guessed by
    extrapolating time zones from 1902-2037, there is a warning at
    the first use of extrapolation in a session.  (As all time zones
    post 2037 are extrapolation, we do not warn on those.)
  * (Platforms using --with-internal-tzone, including Windows and by
    default macOS). How years are printed in dates or date-times can
    be controlled by environment variable R_PAD_YEARS_BY_ZERO.  The
    default remains to pad to 4 digits by zeroes, but setting value
    no gives no padding (as used by default by glibc).
  * strftime() tries harder to determine the offset for the "%z"
    format, and succeeds on the mainstream R platforms.
  * strftime() has a limit of 2048 bytes on the string produced -
    attempting to exceed this is an error.  (Previously it silently
    truncated at 255 bytes.)
  * sessionInfo() records (and by default prints) the system time
    zone as part of the locale information.  Also, the source
    (system/internal) of the date-time conversion and printing
    functions.
  * Objects of class "POSIXlt" created in this version of R always
    have 11 components: component zone is always set, and component
    gmtoff is set for times in UTC and usually set on the (almost
    all) platforms which have C-level support, otherwise is NA.
  * There are comprehensive validity checks on the structure of
    objects of class "POSIXlt" when converting (including formatting
    and printing).  (This avoids mis-conversions of hand-crafted
    objects.)
  * There is some support for using the native date-time routines on
    macOS: this is only viable on recent versions (e.g. 12.6 and 13)
    and does get wrong some historical changes (before 1900, during
    WWII).  Use of --with-internal-tzone remains the default.
  * as.POSIXct(&lt;numeric&gt;) and as.POSIXlt(.) (without specifying
    origin) now work.  So does as.Date(&lt;numeric&gt;).
  * as.Date.POSIXct(., tz) now treats several tz values, notably
    "GMT" as equivalent to "UTC", proposed and improved by Michael
    Chirico and Joshua Ulrich in PR#17674.
  * Experimental balancePOSIXlt() utility allows using "ragged" and
    or out-of-range "POSIXlt" objects more correctly, e.g., in
    subsetting and subassignments.  Such objects are now documented.
    More experimentally, a "POSIXlt" object may have an attribute
    "balanced" indicating if it is known to be filled or fully
    balanced.
  * Functions axis.Date() and axis.POSIXct() are rewritten to gain
    better default tick locations and better default formats by using
    prettyDate(). Thanks to Swetlana Herbrandt.
  * The mapping of Windows' names for time zones to IANA's 'Olson'
    names has been updated.  When ICU is available (it is by
    default), it is used to get a mapping for the current region set
    in Windows.  This can be overridden by setting environment
    variable TZ to the desired Olson name - see OlsonNames() for
    those currently available.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 16
    and so packages that provide graphics devices should be
    reinstalled.
  * The grDevices and grid packages have new functions for rendering
    typeset glyphs, primarily: grDevices::glyphInfo() and
    grid::grid.glyph().
    Rendering of typeset glyphs is only supported so far on the
    Cairo-based graphics devices and on the pdf() and quartz()
    devices.
  * The defined behaviour for "clear" and "source" compositing
    operators (via grid::grid.group()) has been changed (to align
    better with simple interpretation of original Porter-Duff
    definitions).
  * Support for gradients, patterns, clipping paths, masks, groups,
    compositing operators, and affine transformations has been added
    to the quartz() device.
  INSTALLATION on a UNIX-ALIKE:
  * A system installation of generic LAPACK 3.10.0 or later will be
    preferred to the version in the R sources.
    configure option --with-lapack=no (equivalently --without-lapack)
    forces compilation of the internal LAPACK sources.
    If --with-lapack is not specified, a system liblapack is looked
    for and used if it reports version 3.10.0 or later and does not
    contain BLAS routines.
    Packages using LAPACK will need to be reinstalled if this changes
    to using an external library.
  * On aarch64 Linux platforms using GCC, configure now defaults to
  - fPIC (instead of -fpic), as desired in PR#18326.
  * configure now checks conversion of datetimes between POSIXlt and
    POSIXct around year 2020.  Failure (which has been seen on
    platforms missing tzdata) is fatal.
  * If configure option --with-valgrind-instrumentation is given
    value 1 or 2, option --with-system-valgrind-headers is now the
    default and ignored (with a warning).  It is highly recommended
    that the system headers are installed alongside valgrind: they
    are part of its packaging on some Linux distributions and
    packaged separately (e.g. in the valgrind-devel RPM) on others.
    configure will give a warning if they are not found.
    The system headers will be required in a future release of R to
    build with valgrind instrumentation.
  * libcurl 8.x is now accepted by configure: despite a change in
    major version number it changes neither API nor ABI.
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools43, an update of the Rtools42 toolchain.  It is
    based on gcc 12 and newer versions of MinGW-W64, binutils and
    libraries.  At this time R-devel can still be built using
    Rtools42 without changes, but when R-devel is installed via the
    installer, it will by default look for Rtools43.
  * Old make targets rsync-extsoft and 32-bit ones that are no longer
    needed have been removed.
  * Default builds (including for packages) no longer select C99.
    Thus the C standard used is the default for the compiler, which
    for the toolchain in Rtools43 is C17.  (This is consistent with
    Unix builds.)
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++17 where
    available (which it is on all currently checked platforms): if
    not C++14 or C++11 is used if available otherwise C++ is not
    supported.
  * USE_FC_LEN_T is the default: this uses the correct
    (compiler-dependent) prototypes for Fortran BLAS/LAPACK routines
    called from C/C++, and requires adjustment of many such calls -
    see 'Writing R Extensions' SS6.6.1.
  * There is initial support for C++23 as several compilers are now
    supporting -std=c++23 or -std=c++2b or similar.  As for C++20,
    there no additional configure checks for C++23 features beyond a
    check that the compiler reports a __cplusplus value greater than
    that in the C++20 standard.  C++ feature tests should be used.
  * There is support for a package to indicate the version of the C
    standard which should be used to compile it, and for the
    installing user to specify this.  In most cases R defaults to the
    C compiler's default standard which is C17 (a `bug-fix' of C11) -
    earlier versions of R or compilers may have defaulted to C99.
    Current options are:
    USE_C17 Use a standard that is at most C17.  The intention is to
    allow legacy packages to still be installed when later C
    standards become the default, including packages using new
    keywords as identifiers or with K&amp;R-style function
    declarations.  This will use C17 if available, falling back
    to C11.
    USE_C90 Use the C90 (aka C89) standard.  (As that standard did
    not require compilers to identify that version, all we can
    verify is that the compiler does not claim to be using a
    later standard.  It may accept C99 features - for example
    clang accepts // to make comments.)
    USE_C99 Use the C99 standard. This should be rarely needed - it
    avoids the few new features of C11/C17 which can be useful if
    a package assumes them if C17 is specified and they are not
    implemented.
    USE_C23 Use C23 (or in future, later).  Compiler/library support
    for C23 is still being implemented, but LLVM clang from
    15.0.0 and the upcoming GCC 13 have quite extensive support.
    These can be specified as part of the SystemRequirements field in
    the package's DESCRIPTION file or _via_ options --use-C17 and so
    on of R CMD INSTALL and R CMD SHLIB.
    For further details see "Writing R Extensions" SS1.2.5.
  * (Windows) A src/Makefile.ucrt or src/Makefile.win file is now
    included after R_HOME/etcR_ARCH/Makeconf and so no longer needs
    to include that file itself.  Installation of a package with such
    a file now uses a site Makevars file in the same way as a package
    with a src/Makevars.win file would.
  * configure is now passed crucial variables such as CC and CFLAGS
    in its environment, as many packages were not setting them (as
    documented in 'Writing R Extensions' SS1.2).
    This has most effect where configure is used to compile parts of
    the package - most often by cmake or libtool which obfuscate the
    actual compile commands used.
    Also used for configure.win and configure.ucrt on Windows.
  FORTRAN FLAGS:
  * The flag -fno-optimize-sibling-calls is no longer forced for
    gfortran 7 and later.  It should no longer be needed now using
    'hidden' character-length arguments when calling BLAS/LAPACK
    routines from C/C++ is the default even for packages.  (Unless
    perhaps packages call Fortran code from C/C++ without using R's
    headers and without allowing for these arguments.)
  C-LEVEL FACILITIES:
  * The deprecated S-compatibility macros DOUBLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * The deprecated legacy typedefs of Sint and Sfloat in header R.h
    are no longer defined, and that header no longer includes header
    limits.h from C nor climits from C++.
  * New macro CAD5R() is provided in Rinternals.h and used in a few
    places in the R sources.
  * ALTREP now supports VECSXP vectors. Contributed by Gabor Csardi
    in PR#17620.
  * The Rcomplex definition (in header R_ext/Complex.h) has been
    extended to prevent possible mis-compilation when interfacing
    with Fortran (PR#18430).  The new definition causes compiler
    warnings with static initializers such as {1, 2}, which can be
    changed to {.r=1, .i=2}.
    Using the new definition from C++ depends on compiler extensions
    supporting C features that have not been incorporated into the
    C++ standards but are available in g++ and clang++: this may
    result in C++ compiler warnings but these have been worked around
    for recent versions of common compilers (GCC, Apple/LLVM clang,
    Intel).
    It is intended to change the inclusion of header R_ext/Complex.h
    by other R headers, so C/C++ code files which make use of
    Rcomplex should include that header explicitly.
  UTILITIES:
  * R CMD check does more checking of package .Rd files, warning
    about invalid email addresses and (some) invalid URIs and noting
    empty \item labels in description lists.
  * R CMD check now also reports problems when reading package news
    in md (file NEWS.md) and (optionally) plain text (file NEWS)
    formats.
  * _R_CHECK_TIMINGS_ defaults to a value from the environment even
    for R CMD check --as-cran; this allows for exceptionally fast or
    slow platforms.
    It now applies to checking PDF and HTML versions of the manuals,
    and 'checking CRAN incoming feasibility'.
  * R CMD check can optionally (but included in --as-cran) check
    whether HTML math rendering _via_ KaTeX works for the package .Rd
    files.
  * Non-interactive debugger invocations can be trapped by setting
    the environment variable _R_CHECK_BROWSER_NONINTERACTIVE_ to a
    true value.  This is enabled by R CMD check --as-cran to detect
    the use of leftover browser() statements in the package.
  * The use of sprintf and vsprintf from C/C++ has been deprecated in
    macOS 13 and is a known security risk.  R CMD check now reports
    (on all platforms) if their use is found in compiled code:
    replace by snprintf or vsnprintf respectively. [*NB:* whether
    such calls get compiled into the package is platform-dependent.]
  * Where recorded at installation, R CMD check reports the C and
    Fortran compilers used to build R.
    It reports the OS in use (if known, as given by osVersion) as
    well as that R was built for.
    It notes if a C++ standard was specified which is older than the
    current default: many packages have used C++11 to mean 'not
    C++98' - as C++11 is the minimum supported since R 4.0.0, that
    specification can probably be removed.
  * R CMD INSTALL reports the compilers (and on macOS, the SDK) used,
    and this is copied to the output of R CMD check.
    Where a C++ standard is specified, it is reported.
  * R CMD check's 'checking compilation flags in Makevars' has been
    relaxed to accept the use of flags such as -std=f2008 in
    PKG_FFLAGS.
  * tools::buildVignettes() has a new argument skip, which is used by
    R CMD check to skip (and note) vignettes with unavailable
    \VignetteDepends (PR#18318).
  * New generic .AtNames() added to enable class-specific completions
    after @. The formerly internal function findMatches() is now
    exported, mainly for use in methods for .DollarNames() and
    .AtNames().
  DEPRECATED AND DEFUNCT:
  * default.stringsAsFactors() is defunct.
  * Calling as.data.frame.&lt;class&gt;() directly (for 12 atomic classes)
    is going to be formally deprecated, currently activated by
    setting the environment variable
    _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ to non-empty, which also
    happens in R CMD check --as-cran.
  BUG FIXES:
  * Hashed environments with sizes less than 5 can now grow.
    (Reported to R-devel by Duncan Garmonsway.)
  * as.character(&lt;Rd&gt;, deparse = TRUE) failed to re-escape curly
    braces in LaTeX-like text.  (Reported by Hadley Wickham in
    PR#18324.)
  * library() now passes its lib.loc argument when requiring Depends
    packages; reported (with fix) in PR#18331 by Mikael Jagan.
  * R CMD Stangle: improved message about 'Output' files.
  * head(x, n) and tail(x, n) now signal an error if n is not
    numeric, instead of incidentally "working" sometimes returning
    all of x.  Reported and discussed by Colin Fay, in PR#18357.
  * The "lm" method for summary() now gives the correct F-statistic
    when the model contains an offset.  Reported in PR#18008.
  * C() and `contrasts&lt;-`() now preserve factor level names when
    given a function object (as opposed a function name which did
    preserve names). Reported in PR#17616.
  * c(a = 1, 2)[[]] no longer matches 2 but rather signals a
    _classed_ error.  Reported and analysed by Davis Vaughan in
    PR#18367, a duplicate of PR#18004, by Jan Meis et al.  For
    consistency, NULL[[]] is also erroneous now.  x[[]] &lt;- v gives an
    error of the same class "MissingSubscriptError".
  * The relist() function of utils now supports NULL elements in the
    skeleton (PR#15854).
  * ordered(levels = *) (missing x) now works analogously to factor(,
    ordered=TRUE); reported (with fix) by Achim Zeileis in PR#18389.
  * User-defined Rd macro definitions can now span multiple lines,
    thanks to a patch from Duncan Murdoch. Previously, the Rd parser
    silently ignored everything after the first line.
  * Plain-text help (tools::Rd2txt()) now preserves an initial blank
    line for text following description list items.
  * tools::Rd2HTML() and tools::Rd2latex() no longer split \arguments
    and \value lists at Rd comments.
  * tools::Rd2latex() now correctly handles optional text outside
    \items of argument lists as well as bracketed text at the
    beginning of sections, e.g., \value{[NULL]}.
  * as.character(&lt;POSIXt&gt;) now behaves more in line with the methods
    for atomic vectors such as numbers, and is no longer influenced
    by options().  Ditto for as.character(&lt;Date&gt;).  The
    as.character() method gets arguments digits and OutDec with
    defaults _not_ depending on options().  Use of as.character(*,
    format = .) now warns.
  * Similarly, the as.character.hexmode() and *.octmode() methods
    also behave as good citizen methods and back compatibility option
    keepStr = TRUE.
  * The as.POSIXlt(&lt;POSIXlt&gt;) and as.POSIXct(&lt;POSIXct&gt;) default
    methods now do obey their tz argument, also in this case.
  * as.POSIXlt(&lt;Date&gt;) now does apply a tz (time zone) argument, as
    does as.POSIXct(); partly suggested by Roland Fuss on the R-devel
    mailing list.
  * as.Date.POSIXlt(x) now also works when the list components are of
    unequal length, aka "partially filled" or "ragged".
  * expand.model.frame() looked up variables in the wrong environment
    when applied to models fitted without data.  Reported in
    PR#18414.
  * time() now (also) uses the ts.eps = getOption("ts.eps") argument
    and thus by default rounds values very close to the start (or
    end) of a year.  Based on a proposal by Andre"i V. Kostyrka on
    R-help.
  * Printing of a factanal() result with just one factor and sort =
    TRUE now works regularly, fixing PR#17863 by Timothy Bates,
    thanks to the 'R Contributors' working group.
  * Printing 0-length objects of class "factor", "roman", "hexmode",
    "octmode", "person", "bibentry", or "citation" now prints
    something better, one of which fixes PR#18422, reported by
    Benjamin Feakins.
  * Sys.timezone() queries timedatectl only if systemd is loaded;
    addressing a report by Jan Gorecki in PR#17421.
  * The formula method of cor.test() had scoping problems when
    environment(formula) was not the calling environment; reported
    with a patch proposal by Mao Kobayashi in PR#18439.
  * attach() of an environment with active bindings now preserves the
    active bindings.  Reported by Kevin Ushey in PR#18425.
  * BLAS detection now works also with system-provided libraries not
    available as regular files.  This fixes detection of the
    Accelerate framework on macOS since Big Sur.  Reported by David
    Novgorodsky.
  * download.file() gives a helpful error message in case of an
    invalid download.file.method option, thanks to Colin Fay's report
    in PR#18455.
  * Sporadic crashes of Rterm when using completion have been fixed.
  * Rprof() is now more reliable.  A livelock in thread
    initialization with too short sampling interval has been fixed on
    macOS.  A deadlock in using the C runtime has been fixed on
    Windows.  A potential deadlock has been prevented on Unix.
  * Cursor placement in Rgui now works even after a fixed-width font
    is selected.
  * Mandatory options (options()) are now set on startup so that
    saving and restoring them always works (PR#18372).
  * Package installation, R CMD INSTALL or install.packages(*), now
    parses each of the &lt;pkg&gt;/R/*.R files individually instead of
    first concatenating and then parse()ing the large resulting file.
    This allows parser or syntax errors to be diagnosed with correct
    file names and line numbers, thanks to Simon Dedman's report and
    Bill Dunlap's patch in PR#17859.
    This _does_ require syntactically self contained R source files
    now, fixing another inadvertent bug.
  * predict.lm(&lt;model with offset&gt;) now finds the offset in the
    correct environment, thanks to Andr'e Gillibert's report and patch
    in PR#18456.
  * getInitial(&lt;formula&gt;) now finds the selfStart model in the
    correct environment.  (Reported by Ivan Krylov in PR#18368.)
  * Fix for possible segfault when using recently-added graphics
    features, such as gradients, clipping paths, masks, and groups
    with pdf(file=NULL).
  * class(m) &lt;- class(m) no longer changes a matrix m by adding a
    class _attribute_.
  * packageDate(pkg) now only warns once if there is no pkg.
  * When ts() creates a multivariate time series, "mts", it also
    inherits from "array" now, and is.mts() is documented _and_
    stricter.
  * Rd2txt() now preserves line breaks of \verb Rd content and from
    duplicated \cr.  The former also fixes the rendering of verbatim
    output from Rd \Sexpr in plain-text help.
  * uniroot(f, interval) should no longer wrongly converge _outside_
    the interval in some cases where abs(f(x)) == Inf for an x at the
    interval boundary, thanks to posts by Ben Bolker and Serguei
    Sokol on R-devel.
  * Vectorized alpha handling in palette functions such as in gray(),
    rainbow(), or hcl.colors() works correctly now, thanks to Achim
    Zeileis' report and patch in PR#18476.
  * Formatting and print()ing of bibentry objects has dropped the
    deprecated citation.bibtex.max argument, such that the bibtex
    argument's default for print.bibentry() depends directly on the
    citation.bibtex.max option, whereas in format.bibentry() the
    option no longer applies.
  * Attempting to use a character string naming a foreign function
    entry point in a foreign function call in a package will now
    signal an error if the packages has called R_forceSymbols to
    specify that symbols must be used.
  * An error in table() could permanently set options(warn=2)
    promoting all subsequent warnings to errors.
  * The sigma() function gave misleading results for binary GLMs.  A
    new method for objects of class "glm" returns the square root of
    the estimate of the dispersion parameter using the same
    calculation as summary.glm().
  * bs() and ns() in the (typical) case of automatic knot
    construction, when some of the supposedly inner knots coincide
    with boundary knots, now moves them inside (with a warning),
    building on PR#18442 by Ben Bolker.
  * R CMD on Windows now skips the site profile with --no-site-file
    and --vanilla even when R_PROFILE is set (PR#18512, from Kevin
    Ushey).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1686916800">- CHANGES IN R 4.3.1:
  C-LEVEL FACILITIES:
  * The C-level API version of R's integrate(), Rdqags() in Applic.h,
    now returns the correct number of integrand evaluations neval,
    fixing PR#18515 reported and diagnosed by Stephen Wade.
  * The C prototypes for LAPACK calls dspgv and dtptrs in
    R_exts/Lapack.h had one too many and one too few character length
    arguments - but this has not caused any known issues. To get the
    corrected prototypes, include
    [#]include &lt;Rconfig.h&gt; // for PR18534fixed
    [#]ifdef PR18534fixed
    [#] define usePR18534fix 1
    [#]endif
    [#]include &lt;R_exts/Lapack.h&gt;
    in your C/C++ code (PR#18534).
  INSTALLATION:
  * Many of the checks of esoteric Internet operations and those
    using unreliable external sites have been moved to a new target
    that is not run by default and primarily intended for the core
    developers.  To run them use
    cd tests; make test-Internet-dev
  BUG FIXES:
  * .S3methods(), typically called from methods(), again marks
    methods from package base as visible.
    Also, the visibility of non-base methods is again determined by
    the method's presence in search().
  * tools::Rdiff() is now more robust against invalid strings, fixing
    installation tests on Windows without Rtools installed
    (PR#18530).
  * Fix (new) bug in hcl.colors(2, *), by Achim Zeileis (PR#18523).
  * head(., &lt;illegal&gt;) and tail(..) now produce more useful "Error in
    ...." error messages, fixing PR#18362.
  * Package code syntax on Windows is checked in UTF-8 when UTF-8 is
    the native encoding.
  * na.contiguous(x) now also returns the first run, when it is at
    the beginning and there is a later one of the same length;
    reported to R-devel, including a fix, by Georgi Boshnakov.
    Further, by default, it modifies only an existing attr(*,"tsp")
    but otherwise no longer sets one.
  * chol(&lt;not pos.def&gt;, pivot = &lt;T|F&gt;) now gives a correct error or
    warning message (depending on pivot), thanks to Mikael Jagan's
    (PR#18541).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1699012800">- CHANGES IN R 4.3.2:
  NEW FEATURES:
  * The default initialization of the "repos" option from the
    repositories file at startup can be skipped by setting
    environment variable R_REPOSITORIES to NULL such that
    getOption("repos") is empty if not set elsewhere.
  * qr.X() is now an implicit S4 generic in methods.
  * iconv(to = "ASCII//TRANSLIT") is emulated using substitution on
    platforms which do not support it (notably Alpine Linux).  This
    should give a human-readable conversion in ASCII on all platforms
    (rather than NA_character_).
  * trans3d() gains options continuous and verbose addressing the
    problem of possible "wrap around" when projecting too long
    curves, as reported by Achim Zeileis in PR#18537.
  * tools::showNonASCII() has been rewritten to work better on macOS
    14 (which has a changed implementation of iconv()).
  * tiff(type = "quartz") (the default on macOS) now warns if
    compression is specified: it continues to be ignored.
  INSTALLATION on a UNIX-ALIKE:
  * There is some support for building with Intel's LLVM-based
    compilers on x86_64 Linux, such as (C) icx, (C++) ipcx and
    (Fortran) ifx from oneAPI 2023.x.y.
  * There is support for using LLVM's flang-new as the Fortran
    compiler from LLVM 16.0.x (preferably 17.0.0 or later).
  UTILITIES:
  * R CMD check reports the use of the Fortran 90 random number
    generator RANDOM_NUMBER() and the subroutines to initialize it.
    'Writing R Extensions' has example code to use R's RNGs from
    Fortran.
  BUG FIXES:
  * substr(x, n, L) &lt;- cc now works (more) correctly for multibyte
    UTF-8 strings x when L &gt; nchar(x), thanks to a report and patch
    by 'Architect 95'.
  * contrib.url(character()) now returns 0-length character() as
    documented, which also avoids spurious warnings from
    available.packages() et al. in the edge case of an empty vector
    of repository URLs.
  * readChar(., 4e8) no longer fails, thanks to Kodi Arfer's report
    (PR#18557).
  * lapply(&lt;list&gt;, as.data.frame) no longer warns falsely for some
    base vector components.
  * Communication between parent and child processes in the multicore
    part of parallel could fail on platforms that do not support an
    arbitrarily large payload in system functions read()/write() on
    pipes (seen on macOS where a restriction to INT_MAX bytes is
    documented, without doing a partial read unlike Linux). The
    payload is now split into 1Gb chunks to avoid that problem.
    (PR#18571)
  * qqplot(x,y, conf.level=.) gives better confidence bounds when
    length(x) != length(y), thanks to Alexander Ploner's report and
    patch proposal (PR#18557).
  * norm(&lt;0-length&gt;, "2") now gives zero instead of an error, as all
    the other norm types, thanks to Mikael Jagan's PR#18542.
  * Build-stage Rd macros \packageAuthor and \packageMaintainer now
    process Authors@R, fixing NA results when the package DESCRIPTION
    omits Author and Maintainer fields.
  * Formatting and printing complex numbers could give things like
    0.1683-0i because of rounding error: -0i is now replaced by +0i.
  * postscript() refused to accept a title comment containing the
    letter "W" (PR#18599).
  * isoreg(c(1,Inf)) signals an error instead of segfaulting, fixing
    PR#18603.
  * tiff(type = "Xlib") was only outputting the last page of
    multi-page plots.
  * tools::latexToUtf8() again knows about \~{n} and other letters
    with tilde, fixing a regression in R 4.3.0, and about \^{i} as an
    alternative to \^{\i} (similarly with other accents).
    Furthermore, LaTeX codes for accented I letters are now correctly
    converted, also fixing related mistakes in
    tools::encoded_text_to_latex().
  * tar(*, tar = "internal") no longer creates out-of-spec tar files
    in the very rare case of user or group names longer than 32
    bytes, fixing PR#17871 with thanks to Ivan Krylov.
  * When using the "internal" timezone datetime code, adding a
    fraction of a second no longer adds one second, fixing PR#16856
    from a patch by Ivan Krylov.
  * tools::checkRd() no longer produces spurious notes about
    "unnecessary braces" from multi-line Rd results of \Sexpr macros.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1709208000">- CHANGES IN R 4.3.3:
  NEW FEATURES:
  * iconv() now fixes up variant encoding names such as "utf8"
    case-insensitively.
  DEPRECATED AND DEFUNCT:
  * The legacy encoding = "MacRoman" is deprecated in pdf() and
    postscript(): support was incomplete in earlier versions of R.
  BUG FIXES:
  * Arguments are now properly forwarded to methods on S4 generics
    with ... in the middle of their formal arguments. This was broken
    for the case when a method introduced an argument but did not
    include ... in its own formals. Thanks to Herv'e Pag`es for the
    report PR#18538.
  * Some invalid file arguments to pictex(), postscript() and xfig()
    opened a file called NA rather than throw an error.  These
    included postscript(NULL) (which some people expected to work
    like pdf(NULL)).
  * Passing filename = NA to svg(), cairo_pdf(), cairo_ps() or the
    Cairo-based bitmap devices opened a file called NA: it now throws
    an error.
  * quartz(file = NA) opened a file called NA, including when used as
    a Quartz-based bitmap device.  It now gives an error.
  * rank(&lt;long vector&gt;) now works, fixing PR#18617, thanks to Ilia
    Kats.
  * seq.int() did not adequately check its length.out argument.
  * match(&lt;POSIXct&gt;, .) is correct again for differing time zones,
    ditto for "POSIXlt", fixing PR#18618 reported by Bastian Klein.
  * drop.terms(*, dropx = &lt;0-length&gt;) now works, fixing PR#18563 as
    proposed by Mikael Jagan.
  * drop.terms(*) keeps + offset(.) terms when it should, PR#18565,
    and drop.terms() no longer makes up a response, PR#18566, fixing
    both bugs thanks to Mikael Jagan.
  * getS3method("t", "test") no longer finds the t.test() function,
    fixing PR#18627.
  * pdf() and postscript() support for the documented Adobe encodings
    "Greek" and "Cyrilllic" was missing (although the corresponding
    Windows' codepages could be used).
  * Computations of glyph metric information for pdf() and
    postscript() did not take into account that transliteration could
    replace one character by two or more (only seen on macOS 14) and
    typically warned that the information was not known.
  * rank(x) no longer overflows during integer addition, when
    computing rank average for largish but not-yet long vector x,
    fixing PR#18630, thanks to Ilia Kats.
  * list.files() on Windows now returns also files with names longer
    that 260 bytes (the Windows limit is 260 characters).
    Previously, some file names particularly with 'East Asian'
    characters were omitted.
  * cov2cor(&lt;0 x 0&gt;) now works, fixing PR#18423 thanks to Mikael
    Jagan and Elin Waring.
  * cov2cor(&lt;negative diagonal&gt;) and similar now give one warning
    instead of two, with better wording, fixing PR#18424 thanks to
    Mikael Jagan.
  * tools:: startDynamicHelp() now ensures port is in proper range,
    fixing PR#18645.
  * pbeta(x, a,b) is correct now for x=0 or 1 in the boundary cases
    where a or b or both are 0, fixing PR#18672 thanks to Michael
    Fay.
  * pmatch(x, table) for large table, also called for data frame row
    selection, dfrm[nm, ], is now interruptible, fixing PR#18656.
  * predict(&lt;rank-deficient lm&gt;, newdata=*) fix computing of nbasis,
    see Russ Lenth's comment 29 in PR#16158.
  * Added a work-around for a bug in macOS 14.3.1 and higher which
    prevents R plots in the Quartz Cocoa device from updating on
    screen.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1713960000">- CHANGES IN R 4.4.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Startup banners, R --version, sessionInfo() and R CMD check no
    longer report (64-bit) as part of the platform as this is almost
    universal - the increasingly rare 32-bit platforms will still
    report (32-bit).
    On Windows, ditto for window titles.
  * is.atomic(NULL) now returns FALSE, as NULL is not an atomic
    vector.  Strict back-compatibility would replace is.atomic(foo)
    by (is.null(foo) || is.atomic(foo)) but should happen only
    sparingly.
  NEW FEATURES:
  * The confint() methods for "glm" and "nls" objects have been
    copied to the stats package.  Previously, they were stubs which
    called versions in package MASS. The MASS namespace is no longer
    loaded if you invoke (say) confint(glmfit).  Further, the "glm"
    method for profile() and the plot() and pairs() methods for class
    "profile" have been copied from MASS to stats.  (profile.nls()
    and plot.profile.nls() were already in stats.)
  * The confint() and profile methods for "glm" objects have gained a
    possibility to do profiling based on the Rao Score statistic in
    addition to the default Likelihood Ratio. This is controlled by a
    new test = argument.
  * The pairs() method for "profile" objects has been extended with a
    which = argument to allow plotting only a subset of the
    parameters.
  * The "glm" method for anova() computes test statistics and
    p-values by default, using a chi-squared test or an F test
    depending on whether the dispersion is fixed or free.  Test
    statistics can be suppressed by giving argument test a false
    logical value.
  * In setRepositories() the repositories can be set using their
    names via name = instead of index ind =.
  * methods() and .S3methods() gain a all.names option for the (rare)
    case where functions starting with a . should be included.
  * Serializations can now be interrupted (e.g., by Ctrl-C on a
    Unix-alike) if they take too long, e.g., from save.image(),
    thanks to suggestions by Ivan Krylov and others on R-devel.
  * New startup option --max-connections to set the maximum number of
    simultaneous connections for the session.  Defaults to 128 as
    before: allowed values up to 4096 (but resource limits may in
    practice restrict to smaller values).
  * R on Windows (since Windows 10 2004) now uses the new Segment
    Heap allocator. This may improve performance of some
    memory-intensive applications.
  * When R packages are built, typically by R CMD build &lt;pkg&gt;, the
    new --user=&lt;build_user&gt; option overrides the (internally
    determined) user name, currently Sys.info()["user"] or LOGNAME.
    This is a (modified) fulfillment of Will Landau's suggestion in
    PR#17530.
  * tools::testInstalledBasic() gets new optional arguments outDir
    and testSrcdir, e.g., allowing to use it in a &lt;builddir&gt; !=
    &lt;srcdir&gt; setup, and in standard "binary" Windows installation
  * if* a source tests/ folder is present.
  * range(&lt;DT_with_Inf&gt;, finite = TRUE) now work for objects of class
    "Date", "POSIXct", and "POSIXlt" with infinite entries,
    analogously to range.default(), as proposed by Davis Vaughan on
    R-devel.  Other range()-methods can make use of new function
    .rangeNum().
  * New .internalGenerics object complementing .S3PrimitiveGenerics,
    for documentation and low-level book-keeping.
  * grid() now invisibly returns the x- and y- coordinates at which
    the grid-lines were drawn.
  * norm(., type) now also works for complex matrices.
  * kappa(., exact = TRUE, norm = *) now works for all norms and also
    for complex matrices.  In symmetric / triangular cases, the new
    argument uplo = "U" | "L" allows the upper or lower triangular
    part to be specified.
  * memDecompress(type = "unknown") recognizes compression in the
    default 'zlib' format as used by memCompress(type = "gzip").
  * memCompress() and memDecompress() will use the libdeflate library
    (&lt;https://github.com/ebiggers/libdeflate&gt;) if installed.  This
    uses the same type of compression for type = "gzip" but is 1.5-2x
    faster than the system libz library on some common platforms: the
    speed-up may depend on the library version.
  * diff() for objects of class "Date", "POSIXct", and "POSIXlt"
    accepts a units argument passed via ....
  * Dynamic help now does a much better job of rendering package
    DESCRIPTION metadata.
  * Rprof() gains an event argument and support for elapsed (real)
    time profiling on Unix (PR#18076).
  * filled.contour() gains a key.border argument.
  * tools::update_pkg_po() gets arguments pot_make and mo_make for
    _not_ re-making the corresponding files, and additionally a
    verbose argument.
  * Hexadecimal string colour specifications are now accepted in
    short form, so, for example, we can use "#123", which is
    equivalent to "#112233".
    Thanks to MikeFC for the original idea and Ella Kaye, Malcolm
    Barrett, George Stagg, and Hanne Oberman for the patch.
  * Plain-text help shows \var markup by angle brackets.
  * The new experimental primitive function declare() is intended to
    eventually allow information about R code to be communicated to
    the interpreter, compiler, and code analysis tools. The syntax
    for declarations is still being developed.
  * Functions psmirnov(), qsmirnov() and rsmirnov() in package stats
    have had argument two.sided renamed to alternative, to take into
    account that the permutation distributions of the one-sided
    statistics can be different in the case of ties.  Consequence of
    PR#18582.
  * sort() is now an implicit S4 generic in methods.
  * Formatting and printing, format(z), print(z), of complex vectors
    z no longer zap relatively small real or imaginary parts to zero,
    fixing PR#16752.  This is an API change, as it was documented
    previously to round real and imaginary parts together on purpose,
    producing nicer looking output.  As mentioned, e.g. in the PR,
    this change is compatible with many other "R-like" programming
    environments.
    We have simplified the internal code and now basically format the
    real and imaginary parts independently of each other.
  * New experimental functions Tailcall() and Exec() to support
    writing stack-space-efficient recursive functions.
  * Where characters are attempted to be plotted by pdf(),
    postscript() and xfig() which are not in the selected 8-bit
    character set (most often Latin-1) and the R session is using a
    UTF-8 locale, the warning messages will show the UTF-8 character
    rather than its bytes and one dot will be substituted per
    character rather than per byte.  (Platforms whose iconv() does
    transliteration silently plot the transliteration.)
    In a UTF-8 locale some transliterations are now done with a
    warning (e.g., dashes and Unicode minus to hyphen, ligatures are
    expanded, permille (‰) is replaced by o/oo), although the OS may
    have got there first.  These are warnings as they will continue
    to be replaced by dots in earlier versions of R.
  * The matrix multiplication functions crossprod() and tcrossprod()
    are now also primitive and S3 generic, as %*% had become in R
    4.3.0.
  * source() and example() have a new optional argument catch.aborts
    which allows continued evaluation of the R code after an error.
  * The non-Quartz tiff() devices allow additional types of
    compression if supported by the platform's libtiff library.
  * The list of base and recommended package names is now provided by
    tools::standard_package_names().
  * cairo_pdf() and cairo_ps() default to onefile = TRUE to closer
    match pdf() and postscript().
  * New option catch.script.errors provides a documented way to catch
    errors and then continue in non-interactive use.
  * L %||% R newly in base is an expressive idiom for the phrases
    if(!is.null(L)) L else R or if(is.null(L)) R else L.
  * The return value from warnings() now always inherits from
    "warnings" as documented, now also in the case of no warnings
    where it previously returned NULL.
  * as.complex("1i") now returns 0 + 1i instead of NA with a warning.
  * z &lt;- c(NA, 1i) now keeps the imaginary part Im(z[1]) == 0, no
    longer coercing to NA_complex_.  Similarly, cumsum(z) correctly
    sums real and imaginary parts separately, i.e., without
    "crosstalk" in case of NAs.
  * On Alpine Linux iconv() now maps "latin2", "latin-2", "latin9"
    and "latin-9" to encoding names the OS knows about
    (case-insensitively).
  * iconv(sub = "Unicode") now always zero-pads to four (hex) digits,
    rather than to 4 or 8.  (This seems to have become the convention
    once Unicode restricted the number of Unicode points to 2^21 - 1
    and so will never need more than 6 digits.)
  * NCOL(NULL) now returns 0 instead of 1, for consistency with
    cbind().
  * The information for the Euro glyph missing from the Adobe .afm
    files for the Courier, Helvetica and Times families has been
    copied from their URW equivalents - this will improve vertical
    centring in the pdf() and postscript() devices.
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.12.0.  The changes are almost entirely cosmetic.
  * The included LAPACK sources have been updated to version 3.12.0
    and some further double-complex routines added.
  * There are new font families for the 2014--5 URW 2.0 fonts (see
    ?pdf) which are included in recent versions of Ghostscript.
    These have font widths for most Greek glyphs and a few others
    which were missing from the original versions (whose font
    families remain available for reproducibility, although
    Ghostscript-based viewers will render using the 2.0 versions).
  * Improve the large-n efficiency of as.matrix(&lt;dist&gt;), thanks an R
    contributors effort, notably by Tim Taylor and Heather Turner,
    see PR#18660.
  * The default and numeric methods of all.equal() get a check.class
    option.
  * zapsmall() gets new optional arguments, function mFUN and min.d,
    for extra flexibility; fulfills a wish in PR#18199.  Also, it is
    now an implicit S4 generic in package methods.
  * The Rd filter for aspell() gains an ignore argument.
  * New generic function sort_by(), primarily useful for the
    data.frame method which can be used to sort rows of a data frame
    by one or more columns.
  * The icence headers for the RPC code in src/extra/xdr have been
    updated to use the GPL-compatible licence published by Oracle
    America in 2010.
  * New function pkg2HTML() in tools to create single-page HTML
    reference manuals for R packages.
  * The byte code evaluator now uses less C stack space for recursive
    calls to byte-compiled functions. It also makes more of an effort
    to avoid allocations for scalar return values.
  * New completion option backtick (disabled by default) allows
    non-syntactic completions to be wrapped in backquotes. This is
    currently only useful for Jupyter notebooks via the IRkernel
    package, and may cause problems for other backends.
  INSTALLATION:
  * The parser has been updated to work with bison 3.8.2, which is
    now used for the pre-generated parsers in gram.c, file.c, and
    gramRd.c. A few parser error messages have changed, which may
    affect code that relies on exact messages.
  INSTALLATION on a UNIX-ALIKE:
  * System valgrind headers are now required to use configure option
  - -with-valgrind-instrumentation with value 1 or 2.
  * configure will warn if it encounters a 32-bit build, as that is
    nowadays almost untested.
  * Environment variable R_SYSTEM_ABI is no longer used and so no
    longer recorded in etc/Renviron (it was not on Windows and was
    only ever used when preparing package tools).
  * If the libdeflate library and headers are available, libdeflate
    rather than libz is used to (de)compress R objects in lazy-load
    databases.  Typically tasks spend up to 5% of their time on such
    operations, although creating lazy-data databases is one of the
    exceptions.
    This can be suppressed if the library is available by the
    configure option --without-libdeflate-compression.
  * configure option --enable-lto=check has not worked reliably since
    2019 and has been removed.
  * The minimum autoconf requirement for a maintainer build has been
    increased to autoconf 2.71.
    It is intended to increase this to 2.72 for R 4.5.0: the
    distributed configure file was generated using 2.72.
  * The minimum version requirement for an external LAPACK has been
    reduced to 3.9.0.
  * No default C++ compiler is set if no C++17 compiler is detected:
    there is no longer an automatic fallback to C++14 or C++11.
    Compilers from the last five years should have sufficient
    support: for others macros CXX and CXXSTD can be set in file
    config.site to provide a fallback if needed.
    The Objective-C++ compiler now by default uses the standard
    selected by R for C++ (currently C++17) rather than the default
    standard for the C++ compiler (which on macOS is still C++98).
  INSTALLATION on macOS:
  * A new configure option --with-newAccelerate makes use of Apple's
    'new' BLAS / LAPACK interfaces in their Accelerate framework.
    Those interfaces are only available in macOS 13.3 or later, and
    building requires SDK 13.3 or later (from the Command Line Tools
    or Xcode 14.3 or later).
    By default the option uses new Accelerate for BLAS calls: to also
    use it for LAPACK use option --with-newAccelerate=lapack.  The
    later interfaces provide LAPACK 3.9.1 rather than 3.2.1: 3.9.1 is
    from 2021-04 and does not include the improved algorithms
    introduced in LAPACK 3.10.0 (including for BLAS calls).
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools44, an update of the Rtools43 toolchain.  It is
    based on GCC 13 and newer versions of MinGW-W64, binutils and
    libraries (targeting 64-bit Intel CPUs).  R-devel can no longer
    be built using Rtools43 without changes.
  * Rtools44 has experimental support for 64-bit ARM (aarch64) CPUs
    _via_ the LLVM 17 toolchain using lld, clang/flang-new and
    libc++.
  UTILITIES:
  * R CMD check notes when S4-style exports are used without
    declaring a strong dependence on package methods.
  * tools::checkRd() (used by R CMD check) detects more problems with
    \Sexpr-based dynamic content, including bad nesting of \Sexprs
    and invalid arguments.
  * tools::checkRd() now reports Rd titles and section names ending
    in a period; this is ignored by R CMD check unless environment
    variable _R_CHECK_RD_CHECKRD_MINLEVEL_ is set to -5 or smaller.
  * R CMD check now notes Rd files without an \alias, as long
    documented in 'Writing R Extensions' §1.3.1.  The check for a
    missing \description has been moved from tools::checkRd() to
    tools::checkRdContents().
  * R CMD check now visits inst/NEWS.Rd and OS-specific man
    subdirectories when checking Rd files.
  * tools::checkDocFiles() and tools::checkRdContents() now also
    check internal Rd files by default, but "specially" (ignoring
    missing documentation of arguments).
  * R CMD Rdiff gets option --useEx.
  * R CMD check now warns on non-portable uses of Fortran KIND such
    as INTEGER(KIND=4) and REAL(KIND=8).
    To see the failing lines set environment variable
    _R_CHECK_FORTRAN_KIND_DETAILS_ to a true value.
  * When checking Rd files, R CMD check now notes some of the "lost
    braces" that tools::checkRd() finds.  Typical problems are Rd
    macros missing the initial backslash (e.g., code{...}), in-text
    set notation (e.g., {1, 2}, where the braces need escaping), and
    \itemize lists with \describe-style entries of the form
    \item{label}{description}.
  * R CMD INSTALL (and hence check) will compile C++ code with
  - DR_NO_REMAP if environment variable _R_CXX_USE_NO_REMAP_ is set
    to a true value.  It is planned that this will in future become
    the default for compiling C++.
  * The new built-in Rd macro \dontdiff{} can be used to mark example
    code whose output should be ignored when comparing check output
    to reference output (tests/Examples/&lt;pkg&gt;-Ex.Rout.save).  The
    \dontdiff tag, like \donttest, is _not_ shown on the rendered
    help page, so provides a clean alternative to ##
    IGNORE_RDIFF_(BEGIN|END) comments.
  * R CMD build when there is no NAMESPACE, now uses the recommended
    exportPattern("^[^.]"), instead of exporting everything.
  * R CMD check now warns about non-ASCII characters in the NAMESPACE
    file (in addition to R files). Such packages are not portable and
    may fail to install on some platforms.
  C-LEVEL FACILITIES:
  * Headers R_ext/Applic.h and R-ext/Linpack.h used to include
    R_ext/BLAS.h although this was undocumented and unneeded by their
    documented entry points.  They no longer do so.
  * New function R_missing(), factored out from do_missing(), used to
    fix PR#18579.
  * SEXP type S4SXP has been renamed to OBJSXP to support
    experimenting with alternative object systems.  The S4SXP value
    can still be used in C code but is now deprecated.  Based on
    contributions from the R Consortium's Object-Oriented Programming
    Working Group.
  * New function pow1p(x,y) for accurate (1+x)^y.
  * mkCharLenCE was incorrectly documented to take a size_t length
    but was implemented with int (and character strings in R are
    limited to 2^31 - 1 bytes).
  DEPRECATED AND DEFUNCT:
  * data() no longer handles zipped data from long-defunct (since R
    2.13.0) --use-zip-data installations.
  * The legacy graphics devices pictex() and xfig() are now
    deprecated.  They do not support recent graphics enhancements and
    their font handling is rudimentary. The intention is to retain
    them for historical interest as long as they remain somewhat
    functional.
  * Support for encoding = "MacRoman" has been removed from the pdf()
    and postscript() devices - this was a legacy encoding supporting
    classic macOS up to 2001 and no longer has universal libiconv
    support.
  * is.R() is deprecated as no other S dialect is known to be in use
    (and this could only identify historical dialects, not future
    ones).
    Further information on calls can be obtained by setting the
    environment variable _R_DEPRECATED_IS_R_ to error which turns the
    deprecation warning into an error and so by default gives a
    traceback.  (This is done by R CMD check --as-cran.)
  * UseMethod() no longer forwards local variables assigned in the
    generic function into method call environments before evaluating
    the method body. This makes method calls behave more like
    standard function calls and makes method code easier to analyze
    correctly.
  * The twelve as.data.frame.&lt;class&gt;() methods which were deprecated
    only via _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ and in R CMD
    check --as-cran are formally deprecated now in favour of calling
    as.data.frame() or as.data.frame.vector().  The deprecation
    "check" now works also when as.data.frame() is S4 generic thanks
    to Ivan Krylov.
  * The default method for the directional comparison operators &lt;, &gt;,
    &lt;=, and &gt;= now signals an error when one of the operands is a
    language object, i.e. a symbol or a call.
  * For terms.formula(), deprecate abb and neg.out arguments
    _formally_ in addition to just documenting it.
  BUG FIXES:
  * The methods package is more robust to not being attached to the
    search path.  More work needs to be done.
  * pairwise.t.test() misbehaved when subgroups had 0 DF for
    variance, even with pool.sd = TRUE.  (PR#18594 by Jack Berry).
  * Probability distribution functions [dpq]&lt;distrib&gt;(x, *), but also
    bessel[IKJY](x, .) now consistently preserve attributes(x) when
    length(x) == 0, e.g., for a 2 x 0 matrix, thanks to Karolis
    Koncevičius' report PR#18509.
  * Group "Summary" computations such as sum(1:3, 4, na.rm = 5, NA,
    7, na.rm = LL) now give an error instead of either 17 or NN for
    LL true or false, as proposed by Ivan Krylov on the R-devel
    mailing list.  (This also means it is now an error to specify
    na.rm more than once.)
  * as.complex(x) now returns complex(real = x, imaginary = 0) for
    _all_ numerical and logical x, notably also for NA or
    NA_integer_.
  * Directories are now omitted by file.copy(, recursive = FALSE) and
    in file.append() (PR#17337).
  * gsub() and sub() are now more robust to integer overflow when
    reporting errors caused by too large input strings (PR#18346).
  * Top-level handlers are now more robust to attempts to remove a
    handler whilst handlers are running (PR#18508).
  * The handling of Alt+F4 in dialogs created on Windows using
    GraphApp has been fixed (PR#13870).
  * density() more consistently computes grid values for the
    FFT-based convolution, following Robert Schlicht's analysis and
    proposal in PR#18337, correcting density values typically by a
    factor of about 0.999.  Argument old.coords = TRUE provides back
    compatibility.
  * palette.colors() gains a name argument that defaults to FALSE
    controlling whether the vector of colours that is returned has
    names (where possible).  PR#18529.
  * tools::xgettext() no longer extracts the (non-translatable) class
    names from warningCondition and errorCondition calls.
  * S3method(&lt;gen&gt;, &lt;class&gt;, &lt;func&gt;) in the NAMESPACE file now works
    (again) when &lt;func&gt; is visible from the namespace, e.g.,
    imported, or in base.
  * getParseData(f) now also works for a function defined in the
    first of several &lt;pkg&gt;/R/*.R source files, thanks to Kirill
    Müller's report and Duncan Murdoch's patch in PR#16756.
  * Rd \Sexpr macros with nested #ifdef conditionals were not
    processed.
  * A non-blocking connection with non-default encoding (such as a
    socket) now correctly returns from readLines() after new data has
    arrived also when its EOF had been reached previously.  Thanks to
    Peter Meilstrup's report on R-devel and Ivan Krylov's report and
    patch proposal in PR#18555.
  * tools::checkRdContents() failed to detect empty argument
    descriptions when they spanned multiple lines, including those
    generated by prompt().  These cases are now noted by R CMD check.
  * Plain-text help no longer outputs spurious colons in the
    arguments list (for multi-line \item labels in the Rd source).
  * kappa() and rcond() work correctly in more cases; kappa(., norm =
    "2") now warns that it computes the 1-norm with (default) exact =
    FALSE; prompted by Mikael Jagan's quite comprehensive PR#18543.
  * Rd skeletons generated by prompt() or promptData() now use a
    dummy title (so R CMD build works).  tools::checkRdContents() has
    been updated to detect such template leftovers, including from
    promptPackage().
  * When S4 method dispatch fails because no method was found, the
    error message now includes the signature argument names; thanks
    to Michael Chirico's proposal on the R-devel list.
  * withAutoprint({ .. }) now preserves srcrefs previously lost,
    thanks to Andrew Simmons' report plus fix in PR#18572.
  * transform.data.frame() no longer adjusts names; in particular,
    untransformed variables are kept as-is, including those with
    syntactically invalid names (PR#17890).
  * The keep.source option for Rd \Sexpr blocks is no longer ignored.
  * The formula methods for t.test() and wilcox.test() now catch when
    paired is passed, addressing PR#14359; use Pair(x1, x2) ~ 1 for a
    paired test.
  * The level reported in the browser prompt was often too large. It
    now shows the number of browser contexts on the stack.
  * For cbind() and rbind(), the optional deparse.level argument is
    now properly passed to methods, thanks to Mikael Jagan's PR#18579
    and comments there.
  * Some error and warning messages for large ('long vector')
    matrix(v, nr, nc) and dim(m) &lt;- d are now correct about sizes,
    using long long formatting, fixing PR#18612 (and more) reported
    by Mikael Jagan.
  * readChar(useBytes = TRUE) now terminates strings even when the
    underlying connection uses extra spaces in the input buffer.
    This fixes problems with extra garbage seen with gzip
    connections, PR#18605.
  * Named capture in PCRE regular expressions now works also with
    more than 127 named groups (PR#18588).
  * Datetime functions are now robust against long jumps when dealing
    with internal time zone changes.  This avoids confusing warnings
    about an invalid time zone, previously triggered by turning
    warnings into errors or handling them via tryCatch (PR#17966,
    PR#17780).
  * Datetime functions now restore even an empty TZ environment
    variable after internal time zone changes (PR#17724).  This makes
    results of datetime functions with this (typically unintentional)
    setting more predictable.
  * drop.terms(*) now drops response as by default, keep.response =
    FALSE, fixing PR#18564 thanks to Mikael Jagan.
  * dummy.coef(.) now also works for lm()-models with character
    categorical predictor variables rather than factor ones, fixing
    PR#18635 reported by Jinsong Zhao.
  * formals(f) &lt;- formals(f) now also works for a function w/o
    arguments and atomic _constant_ body(f).
  * Correct as.function(&lt;invalid list&gt;, .)'s error message.
  * removeSource() is yet more thorough in finding and removing
    "srcref" and the other source references from parsed R language
    chunks, fixing PR#18638 thanks to Andrew Simmons.
  * dgeom() is more accurate now, notably when its result is very
    small, fixing PR#18642 thanks to the proposal of Morten Welinder,
    also improving other instances where C level binom_raw(x, n, ..)
    has x == 0 or x== n.
  * warning() with options(warn = 1) has improved output for
    multi-line messages.
  * axis.Date() and axis.POSIXct() now respect the par("lab") setting
    for the number of pretty() intervals.
  * Comparisons for language objects (which are based on deparsing)
    are now more careful about using accurate deparsed results
    (PR#18676).
  * Plain-text help (Rd2txt) now correctly preserves blank lines
    following single-line \dontrun code.
  * &lt;POSIXlt&gt;[*] no longer sets wrong "balanced" attribute, fixing
    PR#18681 thanks to Mikael Jagan.
  * str(&lt;classed-call&gt;) now deparses the call as expected, fixing
    PR#18684, reported by Dave Slager.
  * In Rd examples, code following the closing brace of a \dontrun,
    \dontshow or \donttest tag on the same line is no longer skipped
    when R CMD check runs the examples.
  * as.data.frame(matrix(*, ncol=0)) now gets valid names() and
    colnames(); reported by Davis Vaughan on the R-devel list.
  * Internal Mathlib function stirlerr(n) is now almost fully
    (52-bit) accurate for all n &gt;= ~5.9 and more accurate also in the
    range 1 -- 5.9.  This entails small ("after 12th decimal")
    changes in density functions, e.g., dgamma() in _some_ regions of
    their support.  The fix was partly prompted by Morten Welinder's
    PR#18640.
  * Numbers like 9876543.2 are now considered non-integer by Mathlib
    internal R_nonint(), amending original fix of PR#15734.
  * Rd comment lines no longer cause broken paragraphs in the
    rendered PDF and plain-text help. In code blocks, pure comment
    lines (starting with %) no longer produce an empty line.
  * xtabs(Freq ~ .) now consistently defaults to na.action = na.pass,
    using na.rm = FALSE (added as an argument) when summing over Freq
    (PR#17770).
  * tools::testInstalledPackage() is no longer silent about failures
    from running examples or tests and its return code no longer
    ignores failures from checking vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1718366400">- CHANGES IN R 4.4.1:
  C-LEVEL FACILITIES:
  * Functions R_atof and R_strtod declared in header R_ext/Utils.h
    are now documented in 'Writing R Extensions' and so formally part
    of the API.
  * The non-API entry points Rf_setSVector, Rf_StringFalse,
    Rf_StringTrue and Rf_isBlankString have been added to those
    reported by R CMD check.
  * The new function Rf_allocLang is now available. This provides an
    alternative to the idiom of calling Rf_allocList followed by
    SET_TYPEOF.
  UTILITIES:
  * R CMD check now reports as warnings what gfortran calls 'Fortran
    2018 deleted features', all of which have long been marked as
    'obsolescent' and some of which were deleted in Fortran 2008 or
    earlier.  Fortran compilers are no longer required to support
    these.
  BUG FIXES:
  * as.numeric(), scan(), type.convert() and other places which use
    the internal C function R_strtod now require a _non-empty_ digit
    sequence in a decimal or binary exponent.  This aligns with the
    C/POSIX standard for strtod and with ?NumericConstants.
  * as.data.frame(m, make.names=NA) now works correctly for a matrix
    m with NA's in row names.
  * The error message from &lt;POSIXlt&gt;[["hour"]] and similar now
    mentions *[[, "hour"]], as wished for in PR#17409 and proposed by
    Michael Chirico.
  * qbinom() and potentially qpois(), qnbinom(), no longer sometimes
    fail accurate inversion (of pbinom(), etc), thanks to Christopher
    Chang's report and patch in PR#18711.
  * The internal help server on Windows can again serve requests sent
    in quick succession, fixing a regression in R 4.4.0.
  * debugcall(&lt;S3Generic&gt;()) now also works when a corresponding
    S4-generic version is in the methods cache (PR#18143).
  * Package tools' toTitleCase(ch0) now returns character(0) when ch0
    is of zero length; fixing PR#18724, reported by David Hugh Jones.
  * R CMD check is no longer broken (without a check result and no
    explanation in 00check.log) for a package which declares an
    invalid VignetteBuilder in DESCRIPTION but has no vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1730376000">- CHANGES IN R 4.4.2:
  C-LEVEL FACILITIES:
  * The S-compatibility macros F77_COM and F77_COMDECL defined in
    header R_ext/RS.h are deprecated and will be removed shortly.  We
    could find no record of their use.
  BUG FIXES:
  * Mathlib function lgammacor(x) no longer warns about underflow to
    zero for large x.
  * Text widths and heights were incorrectly reported by the Quartz
    device if the drawing context didn't exist yet (typically when
    drawing off-screen to a window that is yet to appear, see
    PR#18591).
  * The Quartz device could segfault in cases where paths with spaces
    are used in the new glyph drawing API.  Thanks to Tomek
    Gieorgijewski (PR#18758).
  * On macOS in R CRAN builds, it is again possible to read
    little-endian UTF-16 text with a BOM from a connection using
    encoding="UTF-16".  Users building R from source should avoid
    using the system libiconv in macOS 14.1 and later.
  * methods' internal .requirePackage() now re-enables primitive
    method dispatch when needed; thanks to Ivan Krylov for
    demystifying CRAN package check failures on the R-devel mailing
    list.</changelog>
</package>
<package pkgid="f9634e8311380636cad57f99dfcd49cd14af8619bf91d0ffe76d4c99a1f9c29e3c4ede5b6e44db80ec920b52ad7e3745006f53f89aa0a68c09339e0a1feae5d3" name="R-base" arch="i586">
  <version epoch="0" ver="4.4.2" rel="51.0.2.2.sr20241103"/>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1620302400">- To get in sync with d:l:R:autoCRAN the Matrix package's split
  in -devel was reversed.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339200">- improved spec file according to comments of dimstar in
  https://build.opensuse.org/request/show/892685</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339201">- CHANGES IN R 4.1.0:
  FUTURE DIRECTIONS:
  * It is planned that the 4.1.x series will be the last to support
    32-bit Windows, with production of binary packages for that
    series continuing until early 2023.
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Data set esoph in package datasets now provides the correct
    numbers of controls; previously it had the numbers of cases added
    to these.  (Reported by Alexander Fowler in PR#17964.)
  NEW FEATURES:
  * www.omegahat.net is no longer one of the repositories known by
    default to setRepositories().  (Nowadays it only provides source
    packages and is often unavailable.)
  * Function package_dependencies() (in package tools) can now use
    different dependency types for direct and recursive dependencies.
  * The checking of the size of tarball in R CMD check --as-cran
    &lt;pkg&gt; may be tweaked via the new environment variable
    _R_CHECK_CRAN_INCOMING_TARBALL_THRESHOLD_, as suggested in
    PR#17777 by Jan Gorecki.
  * Using c() to combine a factor with other factors now gives a
    factor, an ordered factor when combining ordered factors with
    identical levels.
  * apply() gains a simplify argument to allow disabling of
    simplification of results.
  * The format() method for class "ftable" gets a new option justify.
    (Suggested by Thomas Soeiro.)
  * New ...names() utility.  (Proposed by Neal Fultz in PR#17705.)
  * type.convert() now warns when its as.is argument is not
    specified, as the help file always said it _should_.  In that
    case, the default is changed to TRUE in line with its change in
    read.table() (related to stringsAsFactor) in R 4.0.0.
  * When printing list arrays, classed objects are now shown _via_
    their format() value if this is a short enough character string,
    or by giving the first elements of their class vector and their
    length.
  * capabilities() gets new entry "Rprof" which is TRUE when R has
    been configured with the equivalent of --enable-R-profiling (as
    it is by default).  (Related to Michael Orlitzky's report
    PR#17836.)
  * str(xS4) now also shows extraneous attributes of an S4 object
    xS4.
  * Rudimentary support for vi-style tags in rtags() and R CMD rtags
    has been added.  (Based on a patch from Neal Fultz in PR#17214.)
  * checkRdContents() is now exported from tools; it and also
    checkDocFiles() have a new option chkInternal allowing to check
    Rd files marked with keyword "internal" as well.  The latter can
    be activated for R CMD check via environment variable
    _R_CHECK_RD_INTERNAL_TOO_.
  * New functions numToBits() and numToInts() extend the raw
    conversion utilities to (double precision) numeric.
  * Functions URLencode() and URLdecode() in package utils now work
    on vectors of URIs.  (Based on patch from Bob Rudis submitted
    with PR#17873.)
  * path.expand() can expand ~user on most Unix-alikes even when
    readline is not in use.  It tries harder to expand ~, for example
    should environment variable HOME be unset.
  * For HTML help (both dynamic and static), Rd file links to help
    pages in external packages are now treated as references to
    topics rather than file names, and fall back to a file link only
    if the topic is not found in the target package. The earlier rule
    which prioritized file names over topics can be restored by
    setting the environment variable _R_HELP_LINKS_TO_TOPICS_ to a
    false value.
  * c() now removes NULL arguments before dispatching to methods,
    thus simplifying the implementation of c() methods, _but_ for
    back compatibility keeps NULL when it is the first argument.
    (From a report and patch proposal by Lionel Henry in PR#17900.)
  * Vectorize()'s result function's environment no longer keeps
    unneeded objects.
  * Function ...elt() now propagates visibility consistently with
    ..n.  (Thanks to Lionel Henry's PR#17905.)
  * capture.output() no longer uses non-standard evaluation to
    evaluate its arguments.  This makes evaluation of functions like
    parent.frame() more consistent.  (Thanks to Lionel Henry's
    PR#17907.)
  * packBits(bits, type="double") now works as inverse of
    numToBits().  (Thanks to Bill Dunlap's proposal in PR#17914.)
  * curlGetHeaders() has two new arguments, timeout to specify the
    timeout for that call (overriding getOption("timeout")) and TLS
    to specify the minimum TLS protocol version to be used for
    https:// URIs (_inter alia_ providing a means to check for sites
    using deprecated TLS versions 1.0 and 1.1).
  * For nls(), an optional constant scaleOffset may be added to the
    denominator of the relative offset convergence test for cases
    where the fit of a model is expected to be exact, thanks to a
    proposal by John Nash.  nls(*, trace=TRUE) now also shows the
    convergence criterion.
  * Numeric differentiation _via_ numericDeriv() gets new optional
    arguments eps and central, the latter for taking central divided
    differences.  The latter can be activated for nls() via
    nls.control(nDcentral = TRUE).
  * nls() now passes the trace and control arguments to getInitial(),
    notably for all self-starting models, so these can also be fit in
    zero-noise situations via a scaleOffset.  For this reason, the
    initial function of a selfStart model must now have ... in its
    argument list.
  * bquote(splice = TRUE) can now splice expression vectors with
    attributes: this makes it possible to splice the result of
    parse(keep.source = TRUE).  (Report and patch provided by Lionel
    Henry in PR#17869.)
  * textConnection() gets an optional name argument.
  * get(), exists(), and get0() now signal an error if the first
    argument has length greater than 1.  Previously additional
    elements were silently ignored.  (Suggested by Antoine Fabri on
    R-devel.)
  * R now provides a shorthand notation for creating functions, e.g.
    \(x) x + 1 is parsed as function(x) x + 1.
  * R now provides a simple native forward pipe syntax |&gt;.  The
    simple form of the forward pipe inserts the left-hand side as the
    first argument in the right-hand side call.  The pipe
    implementation as a syntax transformation was motivated by
    suggestions from Jim Hester and Lionel Henry.
  * all.equal(f, g) for functions now by default also compares their
    environment(.)s, notably via new all.equal method for class
    function.  Comparison of nls() fits, e.g., may now need
    all.equal(m1, m2, check.environment = FALSE).
  * .libPaths() gets a new option include.site, allowing to _not_
    include the site library.  (Thanks to Dario Strbenac's suggestion
    and Gabe Becker's PR#18016.)
  * Lithuanian translations are now available.  (Thanks to Rimantas
    Zakauskas.)
  * names() now works for DOTSXP objects.  On the other hand, in
    R-lang, the R language manual, we now warn against relying on the
    structure or even existence of such dot-dot-dot objects.
  * all.equal() no longer gives an error on DOTSXP objects.
  * capabilities("cairo") now applies only to the file-based devices
    as it is now possible (if very unusual) to build R with Cairo
    support for those but not for X11().
  * There is optional support for tracing the progress of
    loadNamespace() - see its help.
  * (Not Windows.)  l10n_info() reports an additional element, the
    name of the encoding as reported by the OS (which may differ from
    the encoding part (if any) of the result from
    Sys.getlocale("LC_CTYPE").
  * New function gregexec() which generalizes regexec() to find _all_
    disjoint matches and well as all substrings corresponding to
    parenthesized subexpressions of the given regular expression.
    (Contributed by Brodie Gaslam.)
  * New function charClass() in package utils to query the
    wide-character classification functions in use (such as
    iswprint).
  * The names of quantile()'s result no longer depend on the global
    getOption("digits"), but quantile() gets a new optional argument
    digits = 7 instead.
  * grep(), sub(), regexp and variants work considerably faster for
    long factors with few levels.  (Thanks to Michael Chirico's
    PR#18063.)
  * Provide grouping of x11() graphics windows within a window
    manager such as Gnome or Unity; thanks to a patch by Ivan Krylov
    posted to R-devel.
  * The split() method for class data.frame now allows the f argument
    to be specified as a formula.
  * sprintf now warns on arguments unused by the format string.
  * New palettes "Rocket" and "Mako" for hcl.colors() (approximating
    palettes of the same name from the 'viridisLite' package).
    Contributed by Achim Zeileis.
  * The base environment and its namespace are now locked (so one can
    no longer add bindings to these or remove from these).
  * Rterm handling of multi-byte characters has been improved,
    allowing use of such characters when supported by the current
    locale.
  * Rterm now accepts ALT+ +xxxxxxxx sequences to enter Unicode
    characters as hex digits.
  * Environment variable LC_ALL on Windows now takes precedence over
    LC_CTYPE and variables for other supported categories, matching
    the POSIX behaviour.
  * duplicated() and anyDuplicated() are now optimized for integer
    and real vectors that are known to be sorted via the ALTREP
    framework. Contributed by Gabriel Becker via PR#17993.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 14
    and so packages that provide graphics devices should be
    reinstalled.
  * Graphics devices should now specify deviceVersion to indicate
    what version of the graphics engine they support.
  * Graphics devices can now specify deviceClip.  If TRUE, the
    graphics engine will never perform any clipping of output itself.
    The clipping that the graphics engine does perform (for both
    canClip = TRUE and canClip = FALSE) has been improved to avoid
    producing unnecessary artifacts in clipped output.
  * The grid package now allows gpar(fill) to be a linearGradient(),
    a radialGradient(), or a pattern().  The viewport(clip) can now
    also be a grob, which defines a clipping path, and there is a new
    viewport(mask) that can also be a grob, which defines a mask.
    These new features are only supported so far on the Cairo-based
    graphics devices and on the pdf() device.
  * (Not Windows.)  A warning is given when a Cairo-based type is
    specified for a png(), jpeg(), tiff() or bmp() device but Cairo
    is unsupported (so type = "Xlib" is tried instead).
  * grSoftVersion() now reports the versions of FreeType and
    FontConfig if they are used directly (not _via_ Pango), as is
    most commonly done on macOS.
  C-LEVEL FACILITIES:
  * The _standalone_ libRmath math library and R's C API now provide
    log1pexp() again as documented, and gain log1mexp().
  INSTALLATION on a UNIX-ALIKE:
  * configure checks for a program pkgconf if program pkg-config is
    not found.  These are now only looked for on the path (like
    almost all other programs) so if needed specify a full path to
    the command in PKG_CONFIG, for example in file config.site.
  * C99 function iswblank is required - it was last seen missing ca
    2003 so the workaround has been removed.
  * There are new configure options --with-internal-iswxxxxx,
  - -with-internal-towlower and --with-internal-wcwidth which allows
    the system functions for wide-character classification,
    case-switching and width (wcwidth and wcswidth) to be replaced by
    internal ones.  The first has long been used on macOS, AIX (and
    Windows) but this enables it to be unselected there and selected
    for other platforms (it is the new default on Solaris).  The
    second is new in this version of R and is selected by default on
    macOS and Solaris.  The third has long been the default and
    remains so as it contains customizations for East Asian
    languages.
    System versions of these functions are often minimally
    implemented (sometimes only for ASCII characters) and may not
    cover the full range of Unicode points: for example Solaris (and
    Windows) only cover the Basic Multilingual Plane.
  * Cairo installations without X11 are more likely to be detected by
    configure, when the file-based Cairo graphics devices will be
    available but not X11(type = "cairo").
  * There is a new configure option --with-static-cairo which is the
    default on macOS.  This should be used when only static cairo
    (and where relevant, Pango) libraries are available.
  * Cairo-based graphics devices on platforms without Pango but with
    FreeType/FontConfig will make use of the latter for font
    selection.
  LINK-TIME OPTIMIZATION on a UNIX-ALIKE:
  * Configuring with flag --enable-lto=R now also uses LTO when
    installing the recommended packages.
  * R CMD INSTALL and R CMD SHLIB have a new flag --use-LTO to use
    LTO when compiling code, for use with R configured with
  - -enable-lto=R.  For R configured with --enable-lto, they have
    the new flag --no-use-LTO.
    Packages can opt in or out of LTO compilation _via_ a UseLTO
    field in the DESCRIPTION file.  (As usual this can be overridden
    by the command-line flags.)
  BUILDING R on Windows:
  * for GCC &gt;= 8, FC_LEN_T is defined in config.h and hence character
    lengths are passed from C to Fortran in _inter alia_ BLAS and
    LAPACK calls.
  * There is a new text file src/gnuwin32/README.compilation, which
    outlines how C/Fortran code compilation is organized and
    documents new features:
  * R can be built with Link-Time Optimization with a suitable
    compiler - doing so with GCC 9.2 showed several
    inconsistencies which have been corrected.
  * There is support for cross-compiling the C and Fortran code
    in R and standard packages on suitable (Linux) platforms.
    This is mainly intended to allow developers to test later
    versions of compilers - for example using GCC 9.2 or 10.x has
    detected issues that GCC 8.3 in Rtools40 does not.
  * There is experimental support for cross-building R packages
    with C, C++ and/or Fortran code.
  * The R installer can now be optionally built to support a single
    architecture (only 64-bit or only 32-bit).
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++14 where
    available (which it is on all currently checked platforms): if
    not (as before) C++11 is used if available otherwise C++ is not
    supported.
    Packages which specify C++11 will still be installed using C++11.
    C++14 compilers may give deprecation warnings, most often for
    std::random_shuffle (deprecated in C++14 and removed in C++17).
    Either specify C++11 (see 'Writing R Extensions') or modernize
    the code and if needed specify C++14.  The latter has been
    supported since R 3.4.0 so the package's DESCRIPTION would need
    to include something like
    Depends: R (&gt;= 3.4)
  PACKAGE INSTALLATION on Windows:
  * R CMD INSTALL and R CMD SHLIB make use of their flag --use-LTO
    when the LTO_OPT make macro is set in file etc/${R_ARCH}/Makeconf
    or in a personal/site Makevars file.  (For details see 'Writing R
    Extensions' SS4.5.)
    This provides a valuable check on code consistency.  It does work
    with GCC 8.3 as in Rtools40, but that does not detect everything
    the CRAN checks with current GCC do.
  PACKAGE INSTALLATION on macOS:
  * The default personal library directory on builds with
  - -enable-aqua (including CRAN builds) now differs by CPU type,
    one of
    ~/Library/R/x86_64/x.y/library
    ~/Library/R/arm64/x.y/library
    This uses the CPU type R (and hence the packages) were built for,
    so when a x86_64 build of R is run under Rosetta emulation on an
    arm64 Mac, the first is used.
  UTILITIES:
  * R CMD check can now scan package functions for bogus return
    statements, which were possibly intended as return() calls (wish
    of PR#17180, patch by Sebastian Meyer). This check can be
    activated via the new environment variable
    _R_CHECK_BOGUS_RETURN_, true for --as-cran.
  * R CMD build omits tarballs and binaries of previous builds from
    the top-level package directory.  (PR#17828, patch by Sebastian
    Meyer.)
  * R CMD check now runs sanity checks on the use of LazyData, for
    example that a data directory is present and that
    LazyDataCompression is not specified without LazyData and has a
    documented value.  For packages with large LazyData databases
    without specifying LazyDataCompression, there is a reference to
    the code given in 'Writing R Extensions' SS1.1.6 to test the
    choice of compression (as in all the CRAN packages tested a
    non-default method was preferred).
  * R CMD build removes LazyData and LazyDataCompression fields from
    the DESCRIPTION file of packages without a data directory.
  ENCODING-RELATED CHANGES:
  * The parser now treats \Unnnnnnnn escapes larger than the upper
    limit for Unicode points (\U10FFFF) as an error as they cannot be
    represented by valid UTF-8.
    Where such escapes are used for outputting non-printable
    (including unassigned) characters, 6 hex digits are used (rather
    than 8 with leading zeros).  For clarity, braces are used, for
    example \U{0effff}.
  * The parser now looks for non-ASCII spaces on Solaris (as
    previously on most other OSes).
  * There are warnings (including from the parser) on the use of
    unpaired surrogate Unicode points such as \uD834.  (These cannot
    be converted to valid UTF-8.)
  * Functions nchar(), tolower(), toupper() and chartr() and those
    using regular expressions have more support for inputs with a
    marked Latin-1 encoding.
  * The character-classification functions used (by default) to
    replace the system iswxxxxx functions on Windows, macOS and AIX
    have been updated to Unicode 13.0.0.
    The character-width tables have been updated to include new
    assignments in Unicode 13.0.0.
  * The code for evaluating default (extended) regular expressions
    now uses the same character-classification functions as the rest
    of R (previously they differed on Windows, macOS and AIX).
  * There is a build-time option to replace the system's
    wide-character wctrans C function by tables shipped with R: use
    configure option --with-internal-towlower or (on Windows)
  - DUSE_RI18N_CASE in CFLAGS when building R.  This may be needed
    to allow tolower() and toupper() to work with Unicode characters
    beyond the Basic Multilingual Plane where not supported by system
    functions (e.g. on Solaris where it is the new default).
  * R is more careful when truncating UTF-8 and other multi-byte
    strings that are too long to be printed, passed to the system or
    libraries or placed into an internal buffer.  Truncation will no
    longer produce incomplete multibyte characters.
  DEPRECATED AND DEFUNCT:
  * Function plclust() from the package stats and
    package.dependencies(), pkgDepends(), getDepList(),
    installFoundDepends(), and vignetteDepends() from package tools
    are defunct.
  * Defunct functions checkNEWS() and readNEWS() from package tools
    and CRAN.packages() from utils have been removed.
  * R CMD config CXXCPP is defunct (it was deprecated in R 3.6.2).
  * parallel::detectCores() drops support for Irix (retired in 2013).
  * The LINPACK argument to chol.default(), chol2inv(),
    solve.default() and svd() has been defunct since R 3.1.0.  It was
    silently ignored up to R 4.0.3 but now gives an error.
  * Subsetting/indexing, such as ddd[*] or ddd$x on a DOTSXP
    (dot-dot-dot) object ddd has been disabled; it worked by accident
    only and was undocumented.
  BUG FIXES:
  * Many more C-level allocations (mainly by malloc and strdup) are
    checked for success with suitable alternative actions.
  * Bug fix for replayPlot(); this was turning off graphics engine
    display list recording if a recorded plot was replayed in the
    same session.  The impact of the bug became visible if resize the
    device after replay OR if attempted another savePlot() after
    replay (empty display list means empty screen on resize or empty
    saved plot).
  * R CMD check etc now warn when a package exports non-existing S4
    classes or methods, also in case of no "methods" presence.
    (Reported by Alex Bertram; reproducible example and patch by
    Sebastian Meyer in PR#16662.)
  * boxplot() now also accepts calls for labels such as ylab, the
    same as plot().  (Reported by Marius Hofert.)
  * The help page for xtabs() now correctly states that addNA is
    setting na.action = na.pass among others.  (Reported as PR#17770
    by Thomas Soeiro.)
  * The R CMD check &lt;pkg&gt; gives a longer and more comprehensible
    message when DESCRIPTION misses dependencies, e.g., in Imports:.
    (Thanks to the contributors of PR#17179.)
  * update.default() now calls the generic update() on the formula to
    work correctly for models with extended formulas.  (As reported
    and suggested by Neal Fultz in PR#17865.)
  * The horizontal position of leaves in a dendrogram is now correct
    also with center = FALSE.  (PR#14938, patch from Sebastian
    Meyer.)
  * all.equal.POSIXt() no longer warns about and subsequently ignores
    inconsistent "tzone" attributes, but describes the difference in
    its return value (PR#17277).  This check can be disabled _via_
    the new argument check.tzone = FALSE as suggested by Sebastian
    Meyer.
  * as.POSIXct() now populates the "tzone" attribute from its tz
    argument when x is a logical vector consisting entirely of NA
    values.
  * x[[2^31]] &lt;- v now works.  (Thanks to the report and patch by
    Suharto Anggono in PR#17330.)
  * In log-scale graphics, axis() ticks and label positions are now
    computed more carefully and symmetrically in their range,
    typically providing _more_ ticks, fulfilling wishes in PR#17936.
    The change really corresponds to an improved axisTicks() (package
    grDevices), potentially influencing grid and lattice, for
    example.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now correct to at
    least five digits where it was catastrophically wrong,
    previously.
  * sum(df) and similar "Summary"- and "Math"-group member functions
    now work for data frames df with logical columns, notably also of
    zero rows.  (Reported to R-devel by Martin "b706".)
  * unsplit() had trouble with tibbles due to unsound use of rep(NA,
    len)-indexing, which should use NA_integer_ (Reported to R-devel
    by Mario Annau.)
  * pnorm(x, log.p = TRUE) underflows to -Inf slightly later.
  * show(&lt;hidden S4 generic&gt;) prints better and without quotes for
    non-hidden S4 generics.
  * read.table() and relatives treated an "NA" column name as missing
    when check.names = FALSE PR#18007.
  * Parsing strings containing UTF-16 surrogate pairs such as
    "\uD834\uDD1E" works better on some (uncommon) platforms.
    sprintf("%X", utf8ToInt("\uD834\uDD1E")) should now give "1D11E"
    on all platforms.
  * identical(x,y) is no longer true for differing DOTSXP objects,
    fixing PR#18032.
  * str() now works correctly for DOTSXP and related exotics, even
    when these are doomed.
    Additionally, it no longer fails for lists with a class and
    "irregular" method definitions such that e.g. lapply(*) will
    necessarily fail, as currently for different igraph objects.
  * Too long lines in environment files (e.g. Renviron) no longer
    crash R. This limit has been increased to 100,000 bytes.
    (PR#18001.)
  * There is a further workaround for FreeType giving incorrect
    italic font faces with cairo-based graphics devices on macOS.
  * add_datalist(*, force = TRUE) (from package tools) now actually
    updates an existing data/datalist file for new content.  (Thanks
    to a report and patch by Sebastian Meyer in PR#18048.)
  * cut.Date() and cut.POSIXt() could produce an empty last interval
    for breaks = "months" or breaks = "years".  (Reported as PR#18053
    by Christopher Carbone.)
  * Detection of the encoding of 'regular' macOS locales such as
    en_US (which is UTF-8) had been broken by a macOS change:
    fortunately these are now rarely used with en_US.UTF-8 being
    preferred.
  * sub() and gsub(pattern, repl, x, *) now keep attributes of x such
    as names() also when pattern is NA (PR#18079).
  * Time differences ("difftime" objects) get a replacement and a
    rep() method to keep "units" consistent.  (Thanks to a report and
    patch by Nicolas Bennett in PR#18066.)
  * The \RdOpts macro, setting defaults for \Sexpr options in an Rd
    file, had been ineffective since R 2.12.0: it now works again.
    (Thanks to a report and patch by Sebastian Meyer in PR#18073.)
  * mclapply and pvec no longer accidentally terminate parallel
    processes started before by mcparallel or related calls in
    package parallel (PR#18078).
  * grep and other functions for evaluating (extended) regular
    expressions handle in Unicode also strings not explicitly flagged
    UTF-8, but flagged native when running in UTF-8 locale.
  * Fixed a crash in fifo implementation on Windows (PR#18031).
  * Binary mode in fifo on Windows is now properly detected from
    argument open (PR#15600, PR#18031).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1622808000">- The line %{__install} -m 755 -d %{_infodir}
  no longer works in TW or Factory.
  But without that line it works everywhere. So this instruction
  was commented out of the spec file.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1628596800">- CHANGES IN R 4.1.1:
  NEW FEATURES:
  * require(pkg, quietly = TRUE) is quieter and in particular does
    not warn if the package is not found.
  DEPRECATED AND DEFUNCT:
  * Use of ftp:// URIs should be regarded as deprecated, with
    on-going support confined to method = "libcurl" and not routinely
    tested.  (Nowadays no major browser supports them.)
  * The non-default method = "internal" is deprecated for http:// and
    ftp:// URIs for both download.file and url.
  * On Windows, method = "wininet" is deprecated for http://,
    https:// and ftp:// URIs for both download.file and url.  (A
    warning is only given for ftp://.)
    For ftp:// URIs the default method is now "libcurl" if available
    (which it is on CRAN builds).
    method = "wininet" remains the default for http:// and https://
    URIs but if libcurl is available, using method = "libcurl" is
    preferred.
  INSTALLATION:
  * make check now works also without a LaTeX installation.  (Thanks
    to Sebastian Meyer's PR#18103.)
  BUG FIXES:
  * make check-devel works again in an R build configured with
  - -without-recommended-packages.
  * qnbinom(p, size, mu) for large size/mu is correct now in a range
    of cases (PR#18095); similarly for the (size, prob)
    parametrization of the negative binomial.  Also qpois() and
    qbinom() are better and or faster for extreme cases.  The
    underlying C code has been modularized and is common to all four
    cases of discrete distributions.
  * gap.axis is now part of the axis() arguments which are passed
    from bxp(), and hence boxplot().  (Thanks to Martin Smith's
    report and suggestions in PR#18109.)
  * .First and .Last can again be set from the site profile.
  * seq.int(from, to, *) and seq.default(..) now work better in large
    range cases where from-to is infinite where the two boundaries
    are finite.
  * all.equal(x,y) now returns TRUE correctly also when several
    entries of abs(x) and abs(y) are close to .Machine$double.xmax,
    the largest finite numeric.
  * model.frame() now clears the object bit when removing the class
    attribute of a value via na.action (PR#18100).
  * charClass() now works with multi-character strings on Windows
    (PR#18104, fixed by Bill Dunlap).
  * encodeString() on Solaris now works again in Latin-1 encoding on
    characters represented differently in UTF-8.  Support for
    surrogate pairs on Solaris has been improved.
  * file.show() on Windows now works with non-ASCII path names
    representable in the current native encoding (PR#18132).
  * Embedded R on Windows can now find R home directory via the
    registry even when installed only for the current user
    (PR#18135).
  * pretty(x) with finite x now returns finite values also in the
    case where the extreme x values are close in size to the maximal
    representable number .Machine$double.xmax.
    Also, it's been tweaked for very small ranges and when a boundary
    is close (or equal) to zero; e.g., pretty(c(0,1e-317)) no longer
    has negative numbers, currently still warning about a very small
    range, and pretty(2^-(1024 - 2^-1/(c(24,10)))) is more accurate.
  * The error message for not finding vignette files when weaving has
    correct file sizes now. (Thanks to Sebastian Meyer's PR#18154.)
  * dnbinom(20, &lt;large&gt;, 1) now correctly gives 0, and similar cases
    are more accurate with underflow precaution.  (Reported by Francisco Vera Alcivar in PR#18072.)</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635163200">- repaired https://bugzilla.suse.com/show_bug.cgi?id=1191380
  (rpmacros now go to rpmmacrodir)
- minor clean-ups in spec file</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635768000">- CHANGES IN R 4.1.2:
  C-LEVEL FACILITIES:
  * The workaround in headers R.h and Rmath.h (using namespace std;)
    for the Oracle Developer Studio compiler is no longer needed now
    C++11 is required so has been removed.  A couple more usages of
    log() (which should have been std::log()) with an int argument
    are reported on Solaris.
  * The undocumented limit of 4095 bytes on messages from the
    S-compatibility macros PROBLEM and MESSAGE is now documented and
    longer messages will be silently truncated rather than
    potentially causing segfaults.
  * If the R_NO_SEGV_HANDLER environment variable is non-empty, the
    signal handler for SEGV/ILL/BUS signals (which offers recovery
    user interface) is not set. This allows more reliable debugging
    of crashes that involve the console.
  DEPRECATED AND DEFUNCT:
  * The legacy S-compatibility macros PROBLEM, MESSAGE, ERROR, WARN,
    WARNING, RECOVER, ... are deprecated and will be hidden in R
    4.2.0. R's native interface of Rf_error and Rf_warning has long
    been preferred.
  BUG FIXES:
  * .mapply(F, dots, .) no longer segfaults when dots is not a list
    and uses match.fun(F) as always documented; reported by Andrew
    Simmons in PR#18164.
  * hist(&lt;Date&gt;, ...) and hist(&lt;POSIXt&gt;, ...)  no longer pass
    arguments for rect() (such as col and density) to axis().
    (Thanks to Sebastian Meyer's PR#18171.)
  * \Sexpr{ch} now preserves Encoding(ch). (Thanks to report and
    patch by Jeroen Ooms in PR#18152.)
  * Setting the RNG to "Marsaglia-Multicarry" e.g., by RNGkind(), now
    warns in more places, thanks to Andr'e Gillibert's report and
    patch in PR#18168.
  * gray(numeric(), alpha=1/2) no longer segfaults, fixing PR#18183,
    reported by Till Krenz.
  * Fixed dnbinom(x, size=&lt;very_small&gt;, .., log=TRUE) regression,
    reported by Martin Morgan.
  * as.Date.POSIXlt(x) now keeps names(x), thanks to Davis Vaughan's
    report and patch in PR#18188.
  * model.response() now strips an "AsIs" class typically, thanks to
    Duncan Murdoch's report and other discussants in PR#18190.
  * try() is considerably faster in case of an error and long call,
    as e.g., from some do.call().  Thanks to Alexander Kaever's
    suggestion posted to R-devel.
  * qqline(y = &lt;object&gt;) such as y=I(.), now works, see also
    PR#18190.
  * Non-integer mgp par() settings are now handled correctly in
    axis() and mtext(), thanks to Mikael Jagan and Duncan Murdoch's
    report and suggestion in PR#18194.
  * formatC(x) returns length zero character() now, rather than ""
    when x is of length zero, as documented, thanks to Davis
    Vaughan's post to R-devel.
  * removeSource(fn) now retains (other) attributes(fn).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1647000000">- CHANGES IN R 4.1.3:
  NEW FEATURES:
  * The default version of Bioconductor has been changed to 3.14.
    (This is used by setRepositories and the menus in GUIs.)
  UTILITIES:
  * R CMD check --as-cran has a workaround for a bug in versions of
    file up to at least 5.41 which mis-identify DBF files last
    changed in 2022 as executables.
  C-LEVEL FACILITIES:
  * The legacy S-compatibility macros SINGLE_* in R_ext/Constants.h
    (included by R.h) are deprecated and will be removed in R 4.2.0.
  BUG FIXES:
  * Initialization of self-starting nls() models with initialization
    functions following the pre-R-4.1.0 API (without the ...
    argument) works again for now, with a deprecation warning.
  * Fixed quoting of ~autodetect~ in Java setting defaults to avoid
    inadvertent user lookup due to leading ~, reported in PR#18231 by
    Harold Gutch.
  * substr(., start, stop) &lt;- v now treats _negative_ stop values
    correctly.  Reported with a patch in PR#18228 by Brodie Gaslam.
  * Subscripting an array x without dimnames by a
    length(dim(x))-column character matrix gave "random" non-sense,
    now an error; reported in PR#18244 by Mikael Jagan.
  * ...names() now matches names(list(...)) closely, fixing PR#18247.
  * all.equal(*, scale = s) now works as intended when length(s) &gt; 1,
    partly thanks to Michael Chirico's PR#18272.
  * print(x) for long vectors x now also works for named atomic
    vectors or lists and prints the correct number when reaching the
    getOption("max.print") limit; partly thanks to a report and
    proposal by Hugh Parsonage to the R-devel list.
  * all.equal(&lt;selfStart&gt;, *) no longer signals a deprecation
    warning.
  * reformulate(*, response=r) gives a helpful error message now when
    length(r) &gt; 1, thanks to Bill Dunlap's PR#18281.
  * Modifying globalCallingHandlers inside withCallingHandlers() now
    works or fails correctly, thanks to Henrik Bengtsson's PR#18257.
  * hist(&lt;Date&gt;, breaks = "days") and hist(&lt;POSIXt&gt;, breaks = "secs")
    no longer fail for inputs of length 1.
  * qbeta(.001, .9, .009) and similar cases now converge correctly
    thanks to Ben Bolker's report in PR#17746.
  * window(x, start, end) no longer wrongly signals "'start' cannot
    be after 'end'", fixing PR#17527 and PR#18291.
  * data() now checks that its (rarely used) list argument is a
    character vector - a couple of packages passed other types and
    gave incorrect results.
  * which() now checks its arr.ind argument is TRUE rather coercing
    to logical and taking the first element - which gave incorrect
    results in package code.
  * model.weights() and model.offset() more carefully extract their
    model components, thanks to Ben Bolker and Tim Taylor's R-devel
    post.
  * list.files(recursive = TRUE) now shows all broken symlinks
    (previously, some of them may have been omitted, PR#18296).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1650628800">- CHANGES IN R 4.2.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * The formula method of aggregate() now matches the generic in
    naming its first argument x (resolving PR#18299 by Thomas
    Soeiro).
    This means that calling aggregate() with a formula as a named
    first argument requires name formula in earlier versions of R and
    name x now, so portable code should not name the argument (code
    in many packages did).
  * Calling &amp;&amp; or || with either argument of length greater than one
    now gives a warning (which it is intended will become an error).
  * Calling if() or while() with a condition of length greater than
    one gives an error rather than a warning.  Consequently,
    environment variable _R_CHECK_LENGTH_1_CONDITION_ no longer has
    any effect.
  * Windows users should consult the WINDOWS section below for some
    profound changes including
  * Support for 32-bit builds has been dropped.
  * UTF-8 locales are used where available.
  * The default locations for the R installation and personal
    library folder have been changed.
    Thanks to Tomas Kalibera for months of work on the Windows port
    for this release.
  NEW FEATURES:
  * matrix(x, n, m) now warns in more cases where length(x) differs
    from n * m, as suggested by Abby Spurdle and Wolfgang Huber in
    Feb 2021 on the R-devel mailing list.
    This warning can be turned into an error by setting environment
    variable _R_CHECK_MATRIX_DATA_ to TRUE: R CMD check --as-cran
    does so unless it is already set.
  * Function file_test() in package utils gains tests for symlinks,
    readability and writability.
  * capabilities("libxml") is now false.
    The description of capabilities("http/ftp") now reflects that it
    refers to the default method, no longer the internal one.
  * simplify2array() gains an except argument for controlling the
    exceptions used by sapply().
  * Environment variables R_LIBS_USER and R_LIBS_SITE are both now
    set to the R system default if unset or empty, and can be set to
    NULL to indicate an empty list of user or site library
    directories.
  * The warning for axis()(-like) calls in cases of relatively small
    ranges (typically in log-scale situations) is slightly improved
    _and_ suppressed from explicit calls to .axisPars() as has always
    been the intention.
  * The contrasts setter function `contrasts&lt;-` gains an explicit
    default how.many = NULL rather than just using missing(how.many).
  * grid.pretty() gains a new optional argument n = 5.
  * There is a new function .pretty() with option bounds as a
    technical-utility version of pretty().  It and pretty() gain a
    new argument f.min with a better than back-compatible default.
  * Function grDevices::axisTicks() and related functions such as
    graphics::axis() work better, notably for the log scale; partly
    because of the pretty() improvements, but also because care is
    taken e.g., when ylim is finite but diff(ylim) is infinite.
  * nclass.FD() gains a digits option.
  * The R Mathlib internal C function bd0() (called indirectly from a
    dozen probability density and distribution functions such as
    dpois(), dbinom(), dgamma(), pgamma() _etc_) has been
    complemented by a more sophisticated and (mostly) more accurate C
    function ebd0(), currently called only by internal dpois_raw()
    improving accuracy for R level dpois() and potentially others
    calling it such as dnbinom(), dgamma() or pgamma().  (Thanks to
    Morten Welinder's PR#15628.)
  * write.ftable() gains sep = " " argument as suggested by Thomas
    Soeiro.
  * The names of the locale categories supported by R's
    Sys.getlocale() and Sys.setlocale() are now provided by variable
    .LC.categories in the base namespace.
  * The Date and POSIXt methods for hist() and the histogram method
    for plot() now also use the new default col = "lightgray" in
    consistency with the corresponding change to hist()'s default for
    R 4.0.0.
  * hist.default() gains new fuzz argument, and the histogram plot
    method no longer uses fractional axis ticks when displaying
    counts ("Frequency").
  * mapply() and hence Map() now also obey the "max-or-0-if-any"
    recycling rule, such that, e.g., Map(`+`, 1:3, 1[0]) is valid
    now.
  * as.character(&lt;obj&gt;) for "hexmode" or "octmode" objects now
    fulfils the important basic rule as.character(x)[j] ===
    as.character(x[j]).
  * The set utility functions, notably intersect() have been tweaked
    to be more consistent and symmetric in their two set arguments,
    also preserving a common mode.
  * substr(ch, start,end) &lt;- new now e.g., preserves names(ch); ditto
    for substring(), thanks to a patch from Brodie Gaslam.
  * plot(&lt;lm&gt;) gains a extend.ylim.f argument, in partial response to
    PR#15285; further PR#17784 is fixed thanks to several
    contributors and a patch by Elin Waring.  The Cook's dist
    contours get customizable via cook.col and cook.lty with a
    different default color and their legend is nicer by default and
    customizable via cook.legendChanges.
  * Attempting to subset an object that is not subsettable now
    signals an error of class notSubsettableError. The
    non-subsettable object is contained in the object field of the
    error condition.
  * Subscript-out-of-bounds errors are now signaled as errors of
    class subscriptOutOfBoundsError.
  * Stack-overflow errors are now signaled as errors inheriting from
    class stackOverflowError. See ?stackOverflowError for more
    details.
  * New partly experimental Sys.setLanguage() utility, solving the
    main problem of PR#18055.
  * gettext() and gettextf() get a new option trim = TRUE which when
    set to false allows translations for strings such as "Execution
    halted\n" typical for C code.
  * An experimental implementation of hash tables is now available.
    See ?hashtab for more details.
  * identical() gains a extptr.as.ref argument for requesting that
    external pointer objects be compared as reference objects.
  * reorder() gets an argument decreasing which it passes to sort()
    for level creation; based on the wish and patch by Thomas Soeiro
    in PR#18243.
  * as.vector() gains a data.frame method which returns a simple
    named list, also clearing a long standing 'FIXME' to enable
    as.vector(&lt;data.frame&gt;, mode="list").  This breaks code relying
    on as.vector(&lt;data.frame&gt;) to return the unchanged data frame.
  * legend() is now vectorized for arguments cex, x.intersp, and
    text.width.  The latter can now also be specified as a vector
    (one element for each column of the legend) or as NA for
    computing a proper column wise maximum value of strwidth(legend).
    The argument y.intersp can be specified as a vector with one
    entry for each row of the legend.
    legend() also gains new arguments title.cex and title.font.
    Thanks to Swetlana Herbrandt.
  * Deparsing no longer remaps attribute names dim, dimnames, levels,
    names and tsp to historical S-compatible names (which structure()
    maps back).
  * sample() and sample.int() have additional sanity checks on their
    size and n arguments.
    all.equal.numeric() gains a sanity check on its tolerance
    argument - calling all.equal(a, b, c) for three numeric vectors
    is a surprisingly common error.
    mean(na.rm =), rank(na.last =), barplot(legend.text =),
    boxplot(), contour(drawlabels =), polygon(border =) and
    methods::is(class2 =) have more robust sanity checks on their
    arguments.
    R CMD Rd2pdf (used by R CMD check) has a more robust sanity check
    on the format of \alias{} commands.
  * psigamma(x, deriv) for negative x now also works for deriv = 4
    and 5; their underlying C level dpsifn() is documented in
    'Writing R Extensions'.
  * The HTML help system now uses HTML5 (wish of PR#18149).
  * ks.test() now provides exact p-values also with ties and MC
    p-values in the two-sample (Smirnov) case.  By Torsten Hothorn.
  * ks.test() gains a formula interface, with y ~ 1 for the
    one-sample (Kolmogorov) test and y ~ group for the two-sample
    (Smirnov) test.  Contributed by Torsten Hothorn.
  * The return value from ks.test() now has class c("ks.test",
    "htest") - packages using try() need to take care to use
    inherits() and not == on the class.
  * New functions psmirnov(), qsmirnov() and rsmirnov() in package
    stats implementing the asymptotic and exact distributions of the
    two-sample Smirnov statistic.
  * iconv() now allows sub = "c99" to use C99-style escapes for UTF-8
    inputs which cannot be converted to encoding to.
  * In a forward pipe |&gt; expression it is now possible to use a named
    argument with the placeholder _ in the rhs call to specify where
    the lhs is to be inserted.  The placeholder can only appear once
    on the rhs.
  * The included LAPACK sources have been updated to version 3.10.0,
    except for the four Fortran 77 routines which 3.10.0 has
    re-implemented in Fortran 90 (where the older versions have been
    retained as the R build process does not support Fortran 90).
  * path.expand() and most other uses of tilde expansion now warn if
    a path would be too long if expanded.  (An exception is
    file.exists(), which silently returns false.)
  * trunc(&lt;Date&gt;, *) now supports units = "months" or "years" for
    consistency with the POSIXt method, thanks to Dirk Eddelbuettel's
    proposal in PR#18099.
  * list2DF() now checks that its arguments are of the same length,
    rather than use recycling.
  * The HTML help system has several new features: LaTeX-like math
    can be typeset using either KaTeX or MathJax, usage and example
    code is highlighted using Prism, and for dynamic help the output
    of examples and demos can be shown within the browser if the
    knitr package is installed. These features can be disabled by
    setting the environment variable _R_HELP_ENABLE_ENHANCED_HTML_ to
    a false value.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 15
    and so packages that provide graphics devices should be
    reinstalled.
  * The grid package now allows the user to specify a "vector" of
    pattern fills.  The fill argument to gpar() accepts a list of
    gradients and/or patterns and the functions linearGradient(),
    radialGradient(), and pattern() have a new group argument.
    Points grobs (data symbols) can now also have a pattern fill.
    The grobCoords() function now returns a more informative and
    complex result.
  * The grid package has new functions for drawing isolated groups:
    grid.group(), grid.define(), and grid.use().  These functions add
    compositing operators and affine transformations to R's graphics
    capabilities.
    The grid package also has new functions for stroking and filling
    paths: grid.stroke(), grid.fill(), and grid.fillStroke().
    A new function as.path() allows the user to specify the fill rule
    for a path that is to be used for clipping, stroking, or filling;
    available options are "winding" and "evenodd".  A new function
    as.mask() allows the user to specify the type of a mask;
    available options are "alpha" and "luminance".
    These new features are only supported so far (at most) on the
    Cairo-based graphics devices and on the pdf() device.
  * dev.capabilities() reports on device support for the new
    features.
  * par() now warns about unnamed non-character arguments to prevent
    misuse such as {usr &lt;- par("usr"); par(usr)}.
  INSTALLATION:
  * Facilities for accessing ftp:// sites are no longer tested
    (except _pro tem_ for curlGetHeaders()) as modern browsers have
    removed support.
  * R can now be built with DEFS = -DSTRICT_R_HEADERS .
  PACKAGE INSTALLATION:
  * R CMD INSTALL no longer tangles vignettes. This completes an R
    CMD build change in R 3.0.0 and affects packages built before R
    3.0.2. Such packages should be re-made with R CMD build to have
    the tangled R code of vignettes shipped with the tarball.
  * USE_FC_LEN_T will become the default: this uses the correct
    prototypes for Fortran BLAS/LAPACK routines called from C/C++,
    and requires adjustment of most such calls - see 'Writing R
    Extensions' SS6.6.2.  (This has been supported since R 3.6.2.)
  * Package installation speed for packages installed with
    keep.source has been improved. This resolve the issue reported by
    Ofek Shilon in PR#18236.
  UTILITIES:
  * R CMD check can optionally report files/directories left behind
    in home, /tmp (even though TMPDIR is set) and other directories.
    See the "R Internals" manual for details.
  * R CMD check now reports byte-compilation errors during
    installation.  These are not usually fatal but may result in
    parts of the package not being byte-compiled.
  * _R_CHECK_DEPENDS_ONLY_ can be applied selectively to examples,
    tests and/or vignettes in R CMD check: see the "R Internals"
    manual.
  * _R_CHECK_SRC_MINUS_W_IMPLICIT_ now defaults to true: recent
    versions of Apple clang on macOS have made implicit function
    declarations in C into a compilation error.
  * R CMD check --as-cran makes use of the environment variable
    AUTORECONF.  See the "R Internals" manual SS8 for further details.
  * R CMD check --use-valgrind also uses valgrind when re-building
    vignettes as some non-Sweave vignettes unhelpfully comment out
    all their code when R CMD check runs vignettes.
  * Errors in re-building vignettes (unless there are LaTeX errors)
    are reported by R CMD check as ERROR rather than WARNING when
    running vignettes has been skipped (as it frequently is in CRAN
    checks and by --as-cran).
  * R CMD Rd2pdf gains a --quiet option that is used by R CMD build
    when building the PDF package manual.
  * R CMD Rd2pdf now always runs LaTeX in batch mode, consistent with
    Texinfo &gt;= 6.7. The --batch option is ignored.
  * R CMD build and R CMD check now include the Rd file name and line
    numbers in the error message of an \Sexpr evaluation failure.
  * For packages using the \doi Rd macro (now an install-time \Sexpr)
    but no other dynamic Rd content, R CMD build now produces a
    smaller tarball and is considerably faster - skipping temporary
    package installation.
  C-LEVEL FACILITIES:
  * The non-API header R_ext/R-ftp-http.h is no longer provided, as
    the entry points it covered are now all defunct.
  * A number of non-API declarations and macro definitions have been
    moved from the installed header Rinternals.h to the internal
    header Defn.h. Packages that only use entry points and
    definitions documented to be part of the API as specified in
    'Writing R Extensions' SS6 should not be affected.
  * The macro USE_RINTERNALS no longer has any effect when compiling
    package code.  Packages which also use R_NO_REMAP will need to
    ensure that the remapped names are used for calls to API
    functions that were formerly also made available as macros.
  * The deprecated legacy S-compatibility macros PROBLEM, MESSAGE,
    ERROR, WARN, WARNING, RECOVER, ... are no longer defined in
    R_exts/RS.h (included by R.h).  Replace these by calls to
    Rf_error and Rf_warning (defined in header R_ext/Error.h included
    by R.h).
    Header R_ext/RS.h no longer includes R_ext/Error.h.
  * Header R_ext/Constants.h (included by R.h) when included from C++
    now includes the C++ header cfloat rather than the C header
    float.h (now possible as C++11 is required).
  * The legacy S-compatibility macros DOUBLE_* in R_ext/Constants.h
    (included by R.h) are deprecated.
  * The deprecated S-compatibility macros SINGLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * R_Calloc, R_Free and R_Realloc are preferred to their unprefixed
    forms and error messages now use the prefix. These forms were
    introduced in R 3.4.0 and are available even when
    STRICT_R_HEADERS is defined.
  * rmultinom has been documented in 'Writing R Extensions' SS6 so is
    now part of the R API.
  * Similarly, Rtanpi, called from R level tanpi() is now part of the
    R API.
  * The long-deprecated, undocumented and non-API entry point call_R
    is no longer declared in R_ext/RS.h (included by R.h).
  * The header S.h which has been unsupported since Jan 2016 has been
    removed.  Use R.h instead.
  DEPRECATED AND DEFUNCT:
  * The (non-default and deprecated) method = "internal" for
    download.file() and url() no longer supports http:// nor ftp://
    URIs.  (It is used only for file:// URIs.)
    On Windows, download.file(method = "wininet") no longer supports
    ftp:// URIs.  (It is no longer the default method, which is
    "libcurl" and does.)
    On Windows, the deprecated method = "wininet" now gives a warning
    for http:// and https:// URIs for both download.file() and url().
    (It is no longer the default method.)
  * On Windows, the command-line option --max-mem-size and
    environment variable R_MAX_MEM_SIZE are defunct.  The memory
    allocation limit was important for 32-bit builds, but these are
    no longer supported.
  * default.stringsAsFactors() is now formally deprecated, where that
    was only mentioned on its regular help page, previously.  So it
    now gives a warning if called.
  * unix.time() is defunct now; it had been deprecated since R 3.4.0.
  BUG FIXES:
  * Setting digits = 0 in format(), print.default() (and hence
    typically print()) or options() is again invalid.  Its behaviour
    was platform-dependent, and it is unclear what "zero significant
    digits" should mean (PR#18098).
  * Messages from C code in the cairo section of package grDevices
    are now also offered for translation, thanks to Michael Chirico's
    PR#18123.
  * mean(x) with finite x now is finite also without "long.double"
    capability.
  * R CMD Rd2pdf no longer leaves an empty build directory behind
    when it aborts due to an already existing output file.  (Thanks
    to Sebastian Meyer's PR#18141.)
  * density(x, weights = w, na.rm = TRUE) when anyNA(x) is true, now
    removes weights "in parallel" to x, fixing PR#18151, reported by
    Matthias Gondan.  Additionally, it gets a subdensity option.
  * Conversion of \Sexpr[]{&lt;expR&gt;} to LaTeX or HTML no longer
    produces long blocks of empty lines when &lt;expR&gt; itself contains
    several lines all producing empty output.  Thanks to a report and
    patch by Ivan Krylov posted to R-devel.
  * R CMD build no longer fails if a package vignette uses child
    documents and inst/doc exists.  (Thanks to Sebastian Meyer's
    PR#18156.)
  * When an R documentation ('help' source) file man/foo.Rd in a
    package has \donttest{..} examples with a syntax error, it is now
    signalled as ERROR and with correct line numbers relating to the
  * -Ex.R file, thanks to Duncan Murdoch and Sebastian Meyer's
    reports and patch proposals in PR#17501.
  * Improved determination of the correct translation domain in
    non-base packages, addressing the combination of PR#18092 and
    PR#17998 (#c6) with reports and _augmented_ patch #2904 by
    Suharto Anggono.
    Note that "R-base" is no longer the default domain e.g., for
    top-level calls to gettext(); rather translation needs explicit
    domain = * specification in such cases.
  * identical(attrib.as.set=FALSE) now works correctly with data
    frames with default row names (Thanks to Charlie Gao's PR#18179).
  * txtProgressBar() now enforces a non-zero width for argument char,
    without which no progress can be visible.
  * dimnames(table(d)) is more consistent in the case where d is a
    list with a single component, thanks to Thomas Soeiro's report to
    R-devel.
    Further, table(d1, d2) now gives an error when d1 and d2 are data
    frames as suggested by Thomas in PR#18224.
  * Fix for drawing semi-transparent lines and fills on the native
    Windows graphics device (PR#18219 and PR#16694).  Thanks to Nick
    Ray for helpful diagnosis on Bugzilla.
  * The deparser now wraps sub-expressions such as if(A) ..  with
    parentheses when needed; thanks to Duncan Murdoch's PR#18232 and
    Lionel Henry's patches there.
  * remove.packages() no longer tries to uninstall Priority: base
    packages, thanks to a report and suggestions by Colin Fay in
    PR#18227.
  * win.metafile() now has xpinch and ypinch arguments so that the
    user can override Windows' (potentially wrong) guess at device
    dimensions.
  * x[i] and x[[i]] for non-integer i should now behave in all cases
    as always documented: the index used is equivalent to
    as.integer(i) unless that would overflow where trunc(i) is used
    instead; thanks to Suharto Anggono's report and patch proposals
    in PR#17977.
  * asOneSidedFormula() now associates the resulting formula with the
    global environment rather than the evaluation environment created
    for the call.
  * &lt;bibentry&gt;$name now matches the field name case-insensitively,
    consistent with bibentry() creation and the replacement method.
  * cbind() failed to detect some length mismatches with a mixture of
    time-series and non-time-series inputs.
  * The default LaTeX style file Sweave.sty used by the RweaveLatex
    driver no longer loads the obsolete ae package; thanks to a
    report by Thomas Soeiro in PR#18271.  Furthermore, it now skips
    \usepackage[T1]{fontenc} for engines other than pdfTeX (if
    detected) or if the new [nofontenc] option is used.
  * smooth.spline() now stores its logical cv argument more safely,
    fixing a rare bug when printing, and also stores n.
  * smooth.spline(x,y,*) now computes the cv.crit statistic
    correctly, also when is.unsorted(x), fixing PR#18294.
  * The data.frame method of rbind() now warns when binding
    not-wholly-recycling vectors, by analogy to the default method
    (for matrices).
  * setAs() finds the correct class for name to when multiple
    packages define a class with that name. Thanks to Gabor Csardi
    for the report.
  * Fix for detaching a package when two classes of the same name are
    present in method signatures for the same generic. Thanks to
    Gabor Csardi for the report.
  * match.arg("", c("", "a", "B")) gives a better error message, in
    part from PR#17959, thanks to Elin Waring.
  * R CMD Sweave --clean no longer removes pre-existing files or
    subdirectories (PR#18242).
  * The quartz() device no longer splits polylines into subpaths.
    That has caused narrowly-spaced lines with many points to always
    look solid even when dashed line type was used due to dash phase
    restarts.
  * Deparsing constructs such as quote(1 + `!`(2) + 3) works again as
    before R 3.5.0, thanks to the report and patch in PR#18284 by
    Suharto Anggono.
  * as.list(f) for a factor f now keeps names(f), fixing PR#18309.
  * qbeta(.001, .9, .009) and analogous qf() calls now return a
    correct value instead of NaN or wrongly 1, all with a warning;
    thanks to the report by Ludger Goeminne in PR#18302.
  * plot.lm() failed to produce the plot of residuals vs.  factor
    levels (i.e., which=5 when leverages are constant) for models
    with character predictors (PR#17840).
  * interaction.plot(..., xtick = TRUE) misplaced the x-axis line
    (PR#18305).
  * Not strictly fixing a bug, format()ing and print()ing of
    non-finite Date and POSIXt values NaN and +/-Inf no longer show
    as NA but the respective string, e.g., Inf, for consistency with
    numeric vector's behaviour, fulfilling the wish of PR#18308.
  * R CMD check no longer runs test scripts generated from
    corresponding .Rin files twice and now signals an ERROR if
    processing an .Rin script fails.
  * tools::Rd2txt() used for plain-text help pages now renders \hrefs
    (if tools::Rd2txt_options(showURLs = TRUE)) and \urls with
    percent-encoding and standards-compliant delimiting style (angle
    brackets and no URL: prefix).  \email is now rendered with a
    mailto: prefix.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1655985600">- CHANGES IN R 4.2.1:
  NEW FEATURES:
  * New function utils::findCRANmirror() to find out if a CRAN mirror
    has been selected, otherwise fallback to the main site.  This
    behaves in the same way as tools::CRAN_package_db() and is
    intended for packages wishing to access CRAN for purposes other
    than installing packages.
    The need for this was shown by a day when the main CRAN website
    was offline and a dozen or so packages which had its URL
    hardcoded failed their checks.
  INSTALLATION on a UNIX-ALIKE:
  * The libraries searched for by --with-blas (without a value) now
    include BLIS (after OpenBLAS but before ATLAS).  And on macOS,
    the Accelerate framework (after ATLAS).  (This is patterned after
    the AX_BLAS macro from the Autoconf Archive.)
  * The included LAPACK sources have been updated to 3.10.1.
  UTILITIES:
  * The (full path to) the command tidy to be used for HTML
    validation can be set by environment variable R_TIDYCMD.
  * Setting environment variable _R_CHECK_RD_VALIDATE_RD2HTML_ to a
    false value will override R CMD check --as-cran and turn off HTML
    validation.  This provides a way to circumvent a problematic
    tidy.
    The 2006 version that ships with macOS is always skipped.
  C-LEVEL FACILITIES:
  * The undocumented legacy declarations of Sint, Sfloat, SINT_MAX
    and SINT_MIN in header R.h are deprecated.
  BUG FIXES:
  * fisher.test(d) no longer segfaults for "large" d; fixing PR#18336
    by preventing/detecting an integer overflow reliably.
  * tar(., files=*) now produces correctly the warning about invalid
    uid or gid of files, fixing PR#18344, reported by Martin Morgan.
  * tk_choose.files() with multi = FALSE misbehaved on paths
    containing spaces (PR#18334) (regression introduced in R 4.0.0).
  * sort(x, partial = ind, *) now works correctly notably for the
    non-default na.last = FALSE or TRUE, fixing PR#18335 reported by
    James Edwards.
  * Environment variable _R_CHECK_XREFS_REPOSITORIES_ is only used
    for checking .Rd cross-references in R CMD check (as documented)
    and not for other uses looking for a CRAN mirror.
  * The search for a CRAN mirror when checking packages now uses
    getOption("repos") if that specifies a CRAN mirror, even when it
    does not also specify all three Bioconductor repositories (as was
    previously required).
  * The HTML code generated by tools::Rd2HTML() has been improved to
    pass tidy 5.8.0.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1667217600">- CHANGES IN R 4.2.2:
  NEW FEATURES:
  * tools::Rdiff(useDiff = TRUE) checks for the presence of an
    external diff command and switches to useDiff = FALSE if none is
    found.  This allows R CMD Rdiff to always work.
  * On Windows, environment variable R_LIBCURL_SSL_REVOKE_BEST_EFFORT
    can be used to switch to only 'best-effort' SSL certificate
    revocation checks with the default "libcurl" download method.
    This reduces security, but may be needed for downloads to work
    with MITM proxies (PR#18379).
  * (macOS) The run-time check for libraries from XQuartz for X11 and
    Tcl/Tk no longer uses otool from the Apple Developer Tools
    (PR#18400).
  * The LaTeX style for producing the PDF manuals, Rd.sty, now loads
    the standard amsmath, amsfonts and amssymb packages for greater
    coverage of math commands in the Rd \eqn and \deqn macros.  The
    \mathscr LaTeX command is also provided (via the mathrsfs
    package, if available, or the amsfonts bundle otherwise),
    fulfilling the wish of PR#18398.
  * (Windows) The default format of readClipboard() and
    writeClipboard() has been changed to 13 (CF_UNICODETEXT).
  INSTALLATION on a UNIX-ALIKE:
  * The PDF manuals (if built) can be compacted by the new target
    make compact-pdf (at the top level or in directory doc/manual).
  * There is now configure support for LLVM clang 15 on Linux, which
    defaults to position-independent (PIE) executables whereas
    gfortran does not.
  * Many small changes to ease compilation (and suppress warnings)
    with LLVM clang 15.
  BUG FIXES:
  * Rscript -e would fail if stdin were closed (Reported by Henrik
    Bengtsson.)
  * qt(*, log.p=TRUE) in outer tails no longer produces NaN in its
    final steps, thus fixing PR#18360.
  * tools::Rd2latex() now escapes hashes and ampersands when writing
    URLs, fixing LaTeX errors with such URLs in \tabular.
  * When isGeneric(f, fdef=*) is used with mismatching names, the
    warning is better understandable; reported (with fix) in PR#18370
    by Gabe Becker.
  * poly(x, n) now works again (and is now documented) when x is a
    "Date" or "POSIXct" object, or of another class while fulfilling
    mode(x) == "numeric".  This also enables poly(x, *, raw=TRUE) for
    such variables.  Reported by Michael Chirico to R-devel.
  * write.table(), write.csv() and write.csv2() restore their
    numerical precision (internal equivalent of digits = 15) after an
    interrupt (PR#18384).
  * One can now read also byte FF from a clipboard connection
    (PR#18385).
  * source("") and source(character()) now give more helpful error
    messages.
  * R CMD check --as-cran set _R_CHECK_TIMINGS_ too late to have the
    intended effect.
  * as.POSIXlt(x) now also works with very large dates x, fixing
    PR#18401 reported by Hannes M"uhleisen.
  * Files can now be extracted even from very large zip archives
    (PR#18390, thanks to Martin Jakt).
  * Non-finite objects of class "POSIXlt" are now correctly coerced
    to classes "Date" and "POSIXct"; following up on the extension to
    format() them correctly.
  * Added methods for is.finite(), is.infinite() and is.nan() for
    "POSIXlt" date-time objects.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1678881600">- CHANGES IN R 4.2.3:
  C-LEVEL FACILITIES:
  * The definition of DL_FUNC in R_ext/Rdynload.h has been changed to
    be fully C-compliant.  This means that functions loaded _via_ for
    example R_GetCCallable need to be cast to an appropriate type if
    they have any arguments.
  * .Machine has a new element sizeof.time_t to identify old systems
    with a 32-bit type and hence a limited range of date-times (and
    limited support for dates millions of years from present).
  PACKAGE INSTALLATION:
  * (Windows) The default C++ standard had accidentally been left at
    C++11 when it was changed to C++14 on Unix.
  BUG FIXES:
  * As "POSIXlt" objects may be "partially filled" and their list
    components meant to be recycled, length() now is the length of
    the longest component.
  * as.POSIXlt.Date() could underflow for dates in the far past (more
    than half a million years BCE).
  * as.Date.POSIXlt(x) would return "1970-01-01" instead of NA in R
    4.2.2, e.g., for
    x &lt;- as.POSIXlt(c("2019-01-30","2001-1-1"))
    x$mon &lt;- c(0L, NA); as.Date(x)
  * R CMD check failed to apply enabled _R_CHECK_SUGGESTS_ONLY_ to
    examples and vignettes (regression in R 4.2.0).
  * R CMD check did not re-build vignettes in separate processes by
    default (regression in R 4.2.0).
  * Running examples from HTML documentation now restores previous
    knitr settings and options (PR#18420).
  * Quartz: fonts are now located using Core Graphics API instead of
    deprecated ATS which is no longer supported in the macOS 13 SDK
    (PR#18426).  This also addresses an issue where the currently
    used font in the Quartz device context was not correctly
    retained.
  * (Windows) Math symbols in text drawing functions are again
    rendered correctly (PR#18440).  This fixes a regression in R
    4.2.1 caused by a fix in PR#18382 which uncovered an issue in
    GraphApp due to which the symbol charset was not used with TT
    Symbol font face.
  * (Windows) Installing a package with a src/Makefile.{win,ucrt}
    file includes ~/.R/Makevars.win64 in the search for user
    makevars, as documented in "R Installation and Administration"
    and done for packages with a src/Makevars.{win,ucrt} file.
  * format(&lt;POSIXlt_w/_unbalanced_sec&gt;, "....%OS&lt;n&gt;") with n &gt; 0 no
    longer accidentally uses the unbalanced seconds, thanks to
    Suharto Anggono's report (including patch) in PR#18448.
  * solve.default(a, b) works around issues with some versions of
    LAPACK when a contains NA or NaN values.
  * When UseMethod() cannot dispatch, it no longer segfaults
    producing the error message in case of a long class(), thanks to
    Joris Vankerschaver's report (including patch) in PR#18447.
  * When example(foo, ..) produces graphics on an interactive device
    it needs to open itself, it now leaves devAskNewPage() unchanged
    even when it was FALSE, thus fixing a 14 years old '&lt;FIXME&gt;'.
  * packageDescription() again catches errors from encoding
    conversions. This also fixes broken packageVersion() in C locale
    on systems where iconv does not support transliteration.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1681128000">- add patch to build with libcurl &gt;= 8</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1682078400">- CHANGES IN R 4.3.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Calling &amp;&amp; or || with LHS or (if evaluated) RHS of length greater
    than one is now always an error, with a report of the form
    'length = 4' in coercion to 'logical(1)'
    Environment variable _R_CHECK_LENGTH_1_LOGIC2_ no longer has any
    effect.
  NEW FEATURES:
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.10.1.  (This caused some platform-dependent
    changes to package check output.)  And then to the sources from
    LAPACK version 3.11.0 (with changes only to double complex
    subroutines).
  * The included LAPACK sources have been updated to include the four
    Fortran 90 routines rather than their Fortran 77 predecessors.
    This may give some different signs in SVDs or
    eigendecompositions..  (This completes the transition to LAPACK
    3.10.x begun in R 4.2.0.)
  * The LAPACK sources have been updated to version 3.11.0.  (No new
    subroutines have been added, so this almost entirely bug fixes:
    Those fixes do affect some computations with NaNs, including R's
    NA.)
  * The parser now signals _classed_ errors, notably in case of the
    pipe operator |&gt;.  The error object and message now give line and
    column numbers, mostly as proposed and provided by Duncan Murdoch
    in PR#18328.
  * toeplitz() is now generalized for asymmetric cases, with a
    toeplitz2() variant.
  * xy.coords() and xyz.coords() and consequently, e.g., plot(x,y,
    log = "y") now signal a _classed_ warning about negative values
    of y (where log(.) is NA).  Such a warning can be specifically
    suppressed or caught otherwise.
  * Regular expression functions now check more thoroughly whether
    their inputs are valid strings (in their encoding, e.g. in
    UTF-8).
  * The performance of grep(), sub(), gsub() and strsplit() has been
    improved, particularly with perl = TRUE and fixed = TRUE.  Use of
    useBytes = TRUE for performance reasons should no longer be
    needed and is discouraged: it may lead to incorrect results.
  * apropos() gains an argument dot_internals which is used by the
    completion (help(rcompgen)) engine to also see base internals
    such as .POSIXct().
  * Support in tools::Rdiff() for comparing uncompressed PDF files is
    further reduced - see its help page.
  * qqplot(x, y, ...) gains conf.level and conf.args arguments for
    computing and plotting a confidence band for the treatment
    function transforming the distribution of x into the distribution
    of y (Switzer, 1976, _Biometrika_). Contributed by Torsten
    Hothorn.
  * Performance of package_dependencies() has been improved for cases
    when the number of dependencies is large.
  * Strings newly created by gsub(), sub() and strsplit(), when any
    of the inputs is marked as "bytes", are also marked as "bytes".
    This reduces the risk of creating invalid strings and accidental
    substitution of bytes deemed invalid.
  * Support for readLines(encoding = "bytes") has been added to allow
    processing special text files byte-by-byte, without creating
    invalid strings.
  * iconv(from = "") now takes into account any declared encoding of
    the input elements and uses it in preference to the native
    encoding.  This reduces the risk of accidental creation of
    invalid strings, particularly when different elements of the
    input have different encoding (including "bytes").
  * Package repositories in getOption("repos") are now initialized
    from the repositories file when utils is loaded (if not already
    set, e.g., in .Rprofile).  (From a report and patch proposal by
    Gabriel Becker in PR#18405.)
  * compactPDF() gets a verbose option.
  * type.convert() and hence read.table() get new option tryLogical =
    TRUE with back compatible default.  When set to false, converts
    "F" or "T" columns to character.
  * Added new unit prefixes "R" and "Q" for abbreviating
    (unrealistically large) sizes beyond 10^{27} in standard = "SI",
    thanks to Henrik Bengtsson's PR#18435.
  * as.data.frame()'s default method now also works fine with atomic
    objects inheriting from classes such as "roman", "octmode" and
    "hexmode", such fulfilling the wish of PR#18421, by Benjamin
    Feakins.
  * The as.data.frame.vector() utility now errors for wrong-length
    row.names.  It warned for almost six years, with "Will be an
    error!".
  * sessionInfo() now also contains La_version() and reports codepage
    and timezone when relevant, in both print() and toLatex() methods
    which also get new option tzone for displaying timezone
    information when locale = FALSE.
  * New function R_compiled_by() reports the C and Fortran compilers
    used to build R, if known.
  * predict(&lt;lm&gt;, newdata = *) no longer unnecessarily creates an
    offset of all 0s.
  * solve() for complex inputs now uses argument tol and by default
    checks for 'computational singularity' (as it long has done for
    numeric inputs).
  * predict(&lt;rank-deficient lm&gt;, newdata=*) now obeys a new argument
    rankdeficient, with new default "warnif", warning only if there
    are non-estimable cases in newdata.  Other options include
    rankdeficient = "NA", predicting NA for non-estimable newdata
    cases.  This addresses PR#15072 by Russ Lenth and is based on his
    original proposal and discussions in PR#16158 also by David Firth
    and Elin Waring.  Still somewhat experimental.
  * Rgui console implementation now works better with the NVDA screen
    reader when the full blinking cursor is selected.  The underlying
    improvements in cursor handling may help also other screen
    readers on Windows.
  * The drop-field control in GraphApp can now be left with the TAB
    key and all controls can be navigated in the reverse order using
    the Shift+TAB key, improving accessibility of the Rgui
    configuration editor.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now fully accurate
    (instead of to "only" minimally five digits).
  * demo(error.catching) now also shows off withWarnings() and
    tryCatchWEMs().
  * As an experimental feature the placeholder _ can now also be used
    in the rhs of a forward pipe |&gt; expression as the first argument
    in an extraction call, such as _$coef. More generally, it can be
    used as the head of a chain of extractions, such as _$coef[[2]].
  * Spaces in the environment variable used to choose the R session's
    temporary directory (TMPDIR, TMP and TEMP are tried in turn) are
    now fatal.  (On Windows the 'short path' version of the path is
    tried and used if that does not contain a space.)
  * all.equal.numeric() gets a new optional switch giveErr to return
    the numeric error as attribute.  Relatedly,
    stopifnot(all.equal&lt;some&gt;(a, b, ..)) is as "smart" now, as
    stopifnot(all.equal(....)) has been already, thus allowing
    customized all.equal&lt;Some&gt;() wrappers.
  * R on Windows is now able to work with path names longer than 260
    characters when these are enabled in the system (requires at
    least Windows 10 version 1607).  Packages should be updated to
    work with long paths as well, instead of assuming PATH_MAX to be
    the maximum length.  Custom front-ends and applications embedding
    R need to update their manifests if they wish to allow this
    feature.  See
    &lt;https://blog.r-project.org/2023/03/07/path-length-limit-on-windows&gt;
    for more information.
  * 'Object not found' and 'Missing argument' errors now give a more
    accurate error context. Patch provided by Lionel Henry in
    PR#18241.
  * The @ operator is now an S3 generic. Based on contributions by
    Tomasz Kalinowski in PR#18482.
  * New generic chooseOpsMethod() provides a mechanism for objects to
    resolve cases where two suitable methods are found for an Ops
    Group Generic. This supports experimenting with alternative
    object systems. Based on contributions by Tomasz Kalinowski in
    PR#18484.
  * inherits(x, what) now accepts values other than a simple
    character vector for argument what. A new generic, nameOfClass(),
    is called to resolve the class name from what. This supports
    experimenting with alternative object systems. Based on
    contributions by Tomasz Kalinowski in PR#18485.
  * Detection of BLAS/LAPACK in use (sessionInfo()) with FlexiBLAS
    now reports the current backend.
  * The "data.frame" method for subset() now warns about extraneous
    arguments, typically catching the use of = instead of == in the
    subset expression.
  * Calling a:b when numeric a or b is longer than one may now be
    made into an error by setting environment variable
    _R_CHECK_LENGTH_COLON_ to a true value, along the proposal in
    PR#18419 by Henrik Bengtsson.
  * density(x, weights = *) now warns if automatic bandwidth
    selection happens without using weights; new optional warnWbw may
    suppress the warning.  Prompted by Christoph Dalitz' PR#18490 and
    its discussants.
  * rm(list = *) is faster and more readable thanks to Kevin Ushey's
    PR#18492.
  * The plot.lm() function no longer produces a normal Q-Q plot for
    GLMs. Instead it plots a half-normal Q-Q plot of the absolute
    value of the standardized deviance residuals.
  * The print() method for class "summary.glm" no longer shows
    summary statistics for the deviance residuals by default.  Its
    optional argument show.residuals can be used to show them if
    required.
  * The tapply() function now accepts a data frame as its X argument,
    and allows INDEX to be a formula in that case. by.data.frame()
    similarly allows INDICES to be a formula.
  * The performance of df[j] &lt;- value (including for missing j) and
    write.table(df) has been improved for data frames df with a large
    number of columns.  (Thanks to Gabriel Becker's PR#18500,
    PR#18503 and discussants, prompted by a report from Toby Dylan
    Hocking on the R-devel mailing list.)
  * The matrix multiply operator %*% is now an S3 generic, belonging
    to new group generic matrixOps.  From Tomasz Kalinowski's
    contribution in PR#18483.
  * New function array2DF() to convert arrays to data frames,
    particularly useful for the list arrays created by tapply().
  DATES and TIMES:
  * On platforms where (non-UTC) datetimes before 1902 (or before
    1900 as with system functions on recent macOS) are guessed by
    extrapolating time zones from 1902-2037, there is a warning at
    the first use of extrapolation in a session.  (As all time zones
    post 2037 are extrapolation, we do not warn on those.)
  * (Platforms using --with-internal-tzone, including Windows and by
    default macOS). How years are printed in dates or date-times can
    be controlled by environment variable R_PAD_YEARS_BY_ZERO.  The
    default remains to pad to 4 digits by zeroes, but setting value
    no gives no padding (as used by default by glibc).
  * strftime() tries harder to determine the offset for the "%z"
    format, and succeeds on the mainstream R platforms.
  * strftime() has a limit of 2048 bytes on the string produced -
    attempting to exceed this is an error.  (Previously it silently
    truncated at 255 bytes.)
  * sessionInfo() records (and by default prints) the system time
    zone as part of the locale information.  Also, the source
    (system/internal) of the date-time conversion and printing
    functions.
  * Objects of class "POSIXlt" created in this version of R always
    have 11 components: component zone is always set, and component
    gmtoff is set for times in UTC and usually set on the (almost
    all) platforms which have C-level support, otherwise is NA.
  * There are comprehensive validity checks on the structure of
    objects of class "POSIXlt" when converting (including formatting
    and printing).  (This avoids mis-conversions of hand-crafted
    objects.)
  * There is some support for using the native date-time routines on
    macOS: this is only viable on recent versions (e.g. 12.6 and 13)
    and does get wrong some historical changes (before 1900, during
    WWII).  Use of --with-internal-tzone remains the default.
  * as.POSIXct(&lt;numeric&gt;) and as.POSIXlt(.) (without specifying
    origin) now work.  So does as.Date(&lt;numeric&gt;).
  * as.Date.POSIXct(., tz) now treats several tz values, notably
    "GMT" as equivalent to "UTC", proposed and improved by Michael
    Chirico and Joshua Ulrich in PR#17674.
  * Experimental balancePOSIXlt() utility allows using "ragged" and
    or out-of-range "POSIXlt" objects more correctly, e.g., in
    subsetting and subassignments.  Such objects are now documented.
    More experimentally, a "POSIXlt" object may have an attribute
    "balanced" indicating if it is known to be filled or fully
    balanced.
  * Functions axis.Date() and axis.POSIXct() are rewritten to gain
    better default tick locations and better default formats by using
    prettyDate(). Thanks to Swetlana Herbrandt.
  * The mapping of Windows' names for time zones to IANA's 'Olson'
    names has been updated.  When ICU is available (it is by
    default), it is used to get a mapping for the current region set
    in Windows.  This can be overridden by setting environment
    variable TZ to the desired Olson name - see OlsonNames() for
    those currently available.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 16
    and so packages that provide graphics devices should be
    reinstalled.
  * The grDevices and grid packages have new functions for rendering
    typeset glyphs, primarily: grDevices::glyphInfo() and
    grid::grid.glyph().
    Rendering of typeset glyphs is only supported so far on the
    Cairo-based graphics devices and on the pdf() and quartz()
    devices.
  * The defined behaviour for "clear" and "source" compositing
    operators (via grid::grid.group()) has been changed (to align
    better with simple interpretation of original Porter-Duff
    definitions).
  * Support for gradients, patterns, clipping paths, masks, groups,
    compositing operators, and affine transformations has been added
    to the quartz() device.
  INSTALLATION on a UNIX-ALIKE:
  * A system installation of generic LAPACK 3.10.0 or later will be
    preferred to the version in the R sources.
    configure option --with-lapack=no (equivalently --without-lapack)
    forces compilation of the internal LAPACK sources.
    If --with-lapack is not specified, a system liblapack is looked
    for and used if it reports version 3.10.0 or later and does not
    contain BLAS routines.
    Packages using LAPACK will need to be reinstalled if this changes
    to using an external library.
  * On aarch64 Linux platforms using GCC, configure now defaults to
  - fPIC (instead of -fpic), as desired in PR#18326.
  * configure now checks conversion of datetimes between POSIXlt and
    POSIXct around year 2020.  Failure (which has been seen on
    platforms missing tzdata) is fatal.
  * If configure option --with-valgrind-instrumentation is given
    value 1 or 2, option --with-system-valgrind-headers is now the
    default and ignored (with a warning).  It is highly recommended
    that the system headers are installed alongside valgrind: they
    are part of its packaging on some Linux distributions and
    packaged separately (e.g. in the valgrind-devel RPM) on others.
    configure will give a warning if they are not found.
    The system headers will be required in a future release of R to
    build with valgrind instrumentation.
  * libcurl 8.x is now accepted by configure: despite a change in
    major version number it changes neither API nor ABI.
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools43, an update of the Rtools42 toolchain.  It is
    based on gcc 12 and newer versions of MinGW-W64, binutils and
    libraries.  At this time R-devel can still be built using
    Rtools42 without changes, but when R-devel is installed via the
    installer, it will by default look for Rtools43.
  * Old make targets rsync-extsoft and 32-bit ones that are no longer
    needed have been removed.
  * Default builds (including for packages) no longer select C99.
    Thus the C standard used is the default for the compiler, which
    for the toolchain in Rtools43 is C17.  (This is consistent with
    Unix builds.)
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++17 where
    available (which it is on all currently checked platforms): if
    not C++14 or C++11 is used if available otherwise C++ is not
    supported.
  * USE_FC_LEN_T is the default: this uses the correct
    (compiler-dependent) prototypes for Fortran BLAS/LAPACK routines
    called from C/C++, and requires adjustment of many such calls -
    see 'Writing R Extensions' SS6.6.1.
  * There is initial support for C++23 as several compilers are now
    supporting -std=c++23 or -std=c++2b or similar.  As for C++20,
    there no additional configure checks for C++23 features beyond a
    check that the compiler reports a __cplusplus value greater than
    that in the C++20 standard.  C++ feature tests should be used.
  * There is support for a package to indicate the version of the C
    standard which should be used to compile it, and for the
    installing user to specify this.  In most cases R defaults to the
    C compiler's default standard which is C17 (a `bug-fix' of C11) -
    earlier versions of R or compilers may have defaulted to C99.
    Current options are:
    USE_C17 Use a standard that is at most C17.  The intention is to
    allow legacy packages to still be installed when later C
    standards become the default, including packages using new
    keywords as identifiers or with K&amp;R-style function
    declarations.  This will use C17 if available, falling back
    to C11.
    USE_C90 Use the C90 (aka C89) standard.  (As that standard did
    not require compilers to identify that version, all we can
    verify is that the compiler does not claim to be using a
    later standard.  It may accept C99 features - for example
    clang accepts // to make comments.)
    USE_C99 Use the C99 standard. This should be rarely needed - it
    avoids the few new features of C11/C17 which can be useful if
    a package assumes them if C17 is specified and they are not
    implemented.
    USE_C23 Use C23 (or in future, later).  Compiler/library support
    for C23 is still being implemented, but LLVM clang from
    15.0.0 and the upcoming GCC 13 have quite extensive support.
    These can be specified as part of the SystemRequirements field in
    the package's DESCRIPTION file or _via_ options --use-C17 and so
    on of R CMD INSTALL and R CMD SHLIB.
    For further details see "Writing R Extensions" SS1.2.5.
  * (Windows) A src/Makefile.ucrt or src/Makefile.win file is now
    included after R_HOME/etcR_ARCH/Makeconf and so no longer needs
    to include that file itself.  Installation of a package with such
    a file now uses a site Makevars file in the same way as a package
    with a src/Makevars.win file would.
  * configure is now passed crucial variables such as CC and CFLAGS
    in its environment, as many packages were not setting them (as
    documented in 'Writing R Extensions' SS1.2).
    This has most effect where configure is used to compile parts of
    the package - most often by cmake or libtool which obfuscate the
    actual compile commands used.
    Also used for configure.win and configure.ucrt on Windows.
  FORTRAN FLAGS:
  * The flag -fno-optimize-sibling-calls is no longer forced for
    gfortran 7 and later.  It should no longer be needed now using
    'hidden' character-length arguments when calling BLAS/LAPACK
    routines from C/C++ is the default even for packages.  (Unless
    perhaps packages call Fortran code from C/C++ without using R's
    headers and without allowing for these arguments.)
  C-LEVEL FACILITIES:
  * The deprecated S-compatibility macros DOUBLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * The deprecated legacy typedefs of Sint and Sfloat in header R.h
    are no longer defined, and that header no longer includes header
    limits.h from C nor climits from C++.
  * New macro CAD5R() is provided in Rinternals.h and used in a few
    places in the R sources.
  * ALTREP now supports VECSXP vectors. Contributed by Gabor Csardi
    in PR#17620.
  * The Rcomplex definition (in header R_ext/Complex.h) has been
    extended to prevent possible mis-compilation when interfacing
    with Fortran (PR#18430).  The new definition causes compiler
    warnings with static initializers such as {1, 2}, which can be
    changed to {.r=1, .i=2}.
    Using the new definition from C++ depends on compiler extensions
    supporting C features that have not been incorporated into the
    C++ standards but are available in g++ and clang++: this may
    result in C++ compiler warnings but these have been worked around
    for recent versions of common compilers (GCC, Apple/LLVM clang,
    Intel).
    It is intended to change the inclusion of header R_ext/Complex.h
    by other R headers, so C/C++ code files which make use of
    Rcomplex should include that header explicitly.
  UTILITIES:
  * R CMD check does more checking of package .Rd files, warning
    about invalid email addresses and (some) invalid URIs and noting
    empty \item labels in description lists.
  * R CMD check now also reports problems when reading package news
    in md (file NEWS.md) and (optionally) plain text (file NEWS)
    formats.
  * _R_CHECK_TIMINGS_ defaults to a value from the environment even
    for R CMD check --as-cran; this allows for exceptionally fast or
    slow platforms.
    It now applies to checking PDF and HTML versions of the manuals,
    and 'checking CRAN incoming feasibility'.
  * R CMD check can optionally (but included in --as-cran) check
    whether HTML math rendering _via_ KaTeX works for the package .Rd
    files.
  * Non-interactive debugger invocations can be trapped by setting
    the environment variable _R_CHECK_BROWSER_NONINTERACTIVE_ to a
    true value.  This is enabled by R CMD check --as-cran to detect
    the use of leftover browser() statements in the package.
  * The use of sprintf and vsprintf from C/C++ has been deprecated in
    macOS 13 and is a known security risk.  R CMD check now reports
    (on all platforms) if their use is found in compiled code:
    replace by snprintf or vsnprintf respectively. [*NB:* whether
    such calls get compiled into the package is platform-dependent.]
  * Where recorded at installation, R CMD check reports the C and
    Fortran compilers used to build R.
    It reports the OS in use (if known, as given by osVersion) as
    well as that R was built for.
    It notes if a C++ standard was specified which is older than the
    current default: many packages have used C++11 to mean 'not
    C++98' - as C++11 is the minimum supported since R 4.0.0, that
    specification can probably be removed.
  * R CMD INSTALL reports the compilers (and on macOS, the SDK) used,
    and this is copied to the output of R CMD check.
    Where a C++ standard is specified, it is reported.
  * R CMD check's 'checking compilation flags in Makevars' has been
    relaxed to accept the use of flags such as -std=f2008 in
    PKG_FFLAGS.
  * tools::buildVignettes() has a new argument skip, which is used by
    R CMD check to skip (and note) vignettes with unavailable
    \VignetteDepends (PR#18318).
  * New generic .AtNames() added to enable class-specific completions
    after @. The formerly internal function findMatches() is now
    exported, mainly for use in methods for .DollarNames() and
    .AtNames().
  DEPRECATED AND DEFUNCT:
  * default.stringsAsFactors() is defunct.
  * Calling as.data.frame.&lt;class&gt;() directly (for 12 atomic classes)
    is going to be formally deprecated, currently activated by
    setting the environment variable
    _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ to non-empty, which also
    happens in R CMD check --as-cran.
  BUG FIXES:
  * Hashed environments with sizes less than 5 can now grow.
    (Reported to R-devel by Duncan Garmonsway.)
  * as.character(&lt;Rd&gt;, deparse = TRUE) failed to re-escape curly
    braces in LaTeX-like text.  (Reported by Hadley Wickham in
    PR#18324.)
  * library() now passes its lib.loc argument when requiring Depends
    packages; reported (with fix) in PR#18331 by Mikael Jagan.
  * R CMD Stangle: improved message about 'Output' files.
  * head(x, n) and tail(x, n) now signal an error if n is not
    numeric, instead of incidentally "working" sometimes returning
    all of x.  Reported and discussed by Colin Fay, in PR#18357.
  * The "lm" method for summary() now gives the correct F-statistic
    when the model contains an offset.  Reported in PR#18008.
  * C() and `contrasts&lt;-`() now preserve factor level names when
    given a function object (as opposed a function name which did
    preserve names). Reported in PR#17616.
  * c(a = 1, 2)[[]] no longer matches 2 but rather signals a
    _classed_ error.  Reported and analysed by Davis Vaughan in
    PR#18367, a duplicate of PR#18004, by Jan Meis et al.  For
    consistency, NULL[[]] is also erroneous now.  x[[]] &lt;- v gives an
    error of the same class "MissingSubscriptError".
  * The relist() function of utils now supports NULL elements in the
    skeleton (PR#15854).
  * ordered(levels = *) (missing x) now works analogously to factor(,
    ordered=TRUE); reported (with fix) by Achim Zeileis in PR#18389.
  * User-defined Rd macro definitions can now span multiple lines,
    thanks to a patch from Duncan Murdoch. Previously, the Rd parser
    silently ignored everything after the first line.
  * Plain-text help (tools::Rd2txt()) now preserves an initial blank
    line for text following description list items.
  * tools::Rd2HTML() and tools::Rd2latex() no longer split \arguments
    and \value lists at Rd comments.
  * tools::Rd2latex() now correctly handles optional text outside
    \items of argument lists as well as bracketed text at the
    beginning of sections, e.g., \value{[NULL]}.
  * as.character(&lt;POSIXt&gt;) now behaves more in line with the methods
    for atomic vectors such as numbers, and is no longer influenced
    by options().  Ditto for as.character(&lt;Date&gt;).  The
    as.character() method gets arguments digits and OutDec with
    defaults _not_ depending on options().  Use of as.character(*,
    format = .) now warns.
  * Similarly, the as.character.hexmode() and *.octmode() methods
    also behave as good citizen methods and back compatibility option
    keepStr = TRUE.
  * The as.POSIXlt(&lt;POSIXlt&gt;) and as.POSIXct(&lt;POSIXct&gt;) default
    methods now do obey their tz argument, also in this case.
  * as.POSIXlt(&lt;Date&gt;) now does apply a tz (time zone) argument, as
    does as.POSIXct(); partly suggested by Roland Fuss on the R-devel
    mailing list.
  * as.Date.POSIXlt(x) now also works when the list components are of
    unequal length, aka "partially filled" or "ragged".
  * expand.model.frame() looked up variables in the wrong environment
    when applied to models fitted without data.  Reported in
    PR#18414.
  * time() now (also) uses the ts.eps = getOption("ts.eps") argument
    and thus by default rounds values very close to the start (or
    end) of a year.  Based on a proposal by Andre"i V. Kostyrka on
    R-help.
  * Printing of a factanal() result with just one factor and sort =
    TRUE now works regularly, fixing PR#17863 by Timothy Bates,
    thanks to the 'R Contributors' working group.
  * Printing 0-length objects of class "factor", "roman", "hexmode",
    "octmode", "person", "bibentry", or "citation" now prints
    something better, one of which fixes PR#18422, reported by
    Benjamin Feakins.
  * Sys.timezone() queries timedatectl only if systemd is loaded;
    addressing a report by Jan Gorecki in PR#17421.
  * The formula method of cor.test() had scoping problems when
    environment(formula) was not the calling environment; reported
    with a patch proposal by Mao Kobayashi in PR#18439.
  * attach() of an environment with active bindings now preserves the
    active bindings.  Reported by Kevin Ushey in PR#18425.
  * BLAS detection now works also with system-provided libraries not
    available as regular files.  This fixes detection of the
    Accelerate framework on macOS since Big Sur.  Reported by David
    Novgorodsky.
  * download.file() gives a helpful error message in case of an
    invalid download.file.method option, thanks to Colin Fay's report
    in PR#18455.
  * Sporadic crashes of Rterm when using completion have been fixed.
  * Rprof() is now more reliable.  A livelock in thread
    initialization with too short sampling interval has been fixed on
    macOS.  A deadlock in using the C runtime has been fixed on
    Windows.  A potential deadlock has been prevented on Unix.
  * Cursor placement in Rgui now works even after a fixed-width font
    is selected.
  * Mandatory options (options()) are now set on startup so that
    saving and restoring them always works (PR#18372).
  * Package installation, R CMD INSTALL or install.packages(*), now
    parses each of the &lt;pkg&gt;/R/*.R files individually instead of
    first concatenating and then parse()ing the large resulting file.
    This allows parser or syntax errors to be diagnosed with correct
    file names and line numbers, thanks to Simon Dedman's report and
    Bill Dunlap's patch in PR#17859.
    This _does_ require syntactically self contained R source files
    now, fixing another inadvertent bug.
  * predict.lm(&lt;model with offset&gt;) now finds the offset in the
    correct environment, thanks to Andr'e Gillibert's report and patch
    in PR#18456.
  * getInitial(&lt;formula&gt;) now finds the selfStart model in the
    correct environment.  (Reported by Ivan Krylov in PR#18368.)
  * Fix for possible segfault when using recently-added graphics
    features, such as gradients, clipping paths, masks, and groups
    with pdf(file=NULL).
  * class(m) &lt;- class(m) no longer changes a matrix m by adding a
    class _attribute_.
  * packageDate(pkg) now only warns once if there is no pkg.
  * When ts() creates a multivariate time series, "mts", it also
    inherits from "array" now, and is.mts() is documented _and_
    stricter.
  * Rd2txt() now preserves line breaks of \verb Rd content and from
    duplicated \cr.  The former also fixes the rendering of verbatim
    output from Rd \Sexpr in plain-text help.
  * uniroot(f, interval) should no longer wrongly converge _outside_
    the interval in some cases where abs(f(x)) == Inf for an x at the
    interval boundary, thanks to posts by Ben Bolker and Serguei
    Sokol on R-devel.
  * Vectorized alpha handling in palette functions such as in gray(),
    rainbow(), or hcl.colors() works correctly now, thanks to Achim
    Zeileis' report and patch in PR#18476.
  * Formatting and print()ing of bibentry objects has dropped the
    deprecated citation.bibtex.max argument, such that the bibtex
    argument's default for print.bibentry() depends directly on the
    citation.bibtex.max option, whereas in format.bibentry() the
    option no longer applies.
  * Attempting to use a character string naming a foreign function
    entry point in a foreign function call in a package will now
    signal an error if the packages has called R_forceSymbols to
    specify that symbols must be used.
  * An error in table() could permanently set options(warn=2)
    promoting all subsequent warnings to errors.
  * The sigma() function gave misleading results for binary GLMs.  A
    new method for objects of class "glm" returns the square root of
    the estimate of the dispersion parameter using the same
    calculation as summary.glm().
  * bs() and ns() in the (typical) case of automatic knot
    construction, when some of the supposedly inner knots coincide
    with boundary knots, now moves them inside (with a warning),
    building on PR#18442 by Ben Bolker.
  * R CMD on Windows now skips the site profile with --no-site-file
    and --vanilla even when R_PROFILE is set (PR#18512, from Kevin
    Ushey).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1686916800">- CHANGES IN R 4.3.1:
  C-LEVEL FACILITIES:
  * The C-level API version of R's integrate(), Rdqags() in Applic.h,
    now returns the correct number of integrand evaluations neval,
    fixing PR#18515 reported and diagnosed by Stephen Wade.
  * The C prototypes for LAPACK calls dspgv and dtptrs in
    R_exts/Lapack.h had one too many and one too few character length
    arguments - but this has not caused any known issues. To get the
    corrected prototypes, include
    [#]include &lt;Rconfig.h&gt; // for PR18534fixed
    [#]ifdef PR18534fixed
    [#] define usePR18534fix 1
    [#]endif
    [#]include &lt;R_exts/Lapack.h&gt;
    in your C/C++ code (PR#18534).
  INSTALLATION:
  * Many of the checks of esoteric Internet operations and those
    using unreliable external sites have been moved to a new target
    that is not run by default and primarily intended for the core
    developers.  To run them use
    cd tests; make test-Internet-dev
  BUG FIXES:
  * .S3methods(), typically called from methods(), again marks
    methods from package base as visible.
    Also, the visibility of non-base methods is again determined by
    the method's presence in search().
  * tools::Rdiff() is now more robust against invalid strings, fixing
    installation tests on Windows without Rtools installed
    (PR#18530).
  * Fix (new) bug in hcl.colors(2, *), by Achim Zeileis (PR#18523).
  * head(., &lt;illegal&gt;) and tail(..) now produce more useful "Error in
    ...." error messages, fixing PR#18362.
  * Package code syntax on Windows is checked in UTF-8 when UTF-8 is
    the native encoding.
  * na.contiguous(x) now also returns the first run, when it is at
    the beginning and there is a later one of the same length;
    reported to R-devel, including a fix, by Georgi Boshnakov.
    Further, by default, it modifies only an existing attr(*,"tsp")
    but otherwise no longer sets one.
  * chol(&lt;not pos.def&gt;, pivot = &lt;T|F&gt;) now gives a correct error or
    warning message (depending on pivot), thanks to Mikael Jagan's
    (PR#18541).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1699012800">- CHANGES IN R 4.3.2:
  NEW FEATURES:
  * The default initialization of the "repos" option from the
    repositories file at startup can be skipped by setting
    environment variable R_REPOSITORIES to NULL such that
    getOption("repos") is empty if not set elsewhere.
  * qr.X() is now an implicit S4 generic in methods.
  * iconv(to = "ASCII//TRANSLIT") is emulated using substitution on
    platforms which do not support it (notably Alpine Linux).  This
    should give a human-readable conversion in ASCII on all platforms
    (rather than NA_character_).
  * trans3d() gains options continuous and verbose addressing the
    problem of possible "wrap around" when projecting too long
    curves, as reported by Achim Zeileis in PR#18537.
  * tools::showNonASCII() has been rewritten to work better on macOS
    14 (which has a changed implementation of iconv()).
  * tiff(type = "quartz") (the default on macOS) now warns if
    compression is specified: it continues to be ignored.
  INSTALLATION on a UNIX-ALIKE:
  * There is some support for building with Intel's LLVM-based
    compilers on x86_64 Linux, such as (C) icx, (C++) ipcx and
    (Fortran) ifx from oneAPI 2023.x.y.
  * There is support for using LLVM's flang-new as the Fortran
    compiler from LLVM 16.0.x (preferably 17.0.0 or later).
  UTILITIES:
  * R CMD check reports the use of the Fortran 90 random number
    generator RANDOM_NUMBER() and the subroutines to initialize it.
    'Writing R Extensions' has example code to use R's RNGs from
    Fortran.
  BUG FIXES:
  * substr(x, n, L) &lt;- cc now works (more) correctly for multibyte
    UTF-8 strings x when L &gt; nchar(x), thanks to a report and patch
    by 'Architect 95'.
  * contrib.url(character()) now returns 0-length character() as
    documented, which also avoids spurious warnings from
    available.packages() et al. in the edge case of an empty vector
    of repository URLs.
  * readChar(., 4e8) no longer fails, thanks to Kodi Arfer's report
    (PR#18557).
  * lapply(&lt;list&gt;, as.data.frame) no longer warns falsely for some
    base vector components.
  * Communication between parent and child processes in the multicore
    part of parallel could fail on platforms that do not support an
    arbitrarily large payload in system functions read()/write() on
    pipes (seen on macOS where a restriction to INT_MAX bytes is
    documented, without doing a partial read unlike Linux). The
    payload is now split into 1Gb chunks to avoid that problem.
    (PR#18571)
  * qqplot(x,y, conf.level=.) gives better confidence bounds when
    length(x) != length(y), thanks to Alexander Ploner's report and
    patch proposal (PR#18557).
  * norm(&lt;0-length&gt;, "2") now gives zero instead of an error, as all
    the other norm types, thanks to Mikael Jagan's PR#18542.
  * Build-stage Rd macros \packageAuthor and \packageMaintainer now
    process Authors@R, fixing NA results when the package DESCRIPTION
    omits Author and Maintainer fields.
  * Formatting and printing complex numbers could give things like
    0.1683-0i because of rounding error: -0i is now replaced by +0i.
  * postscript() refused to accept a title comment containing the
    letter "W" (PR#18599).
  * isoreg(c(1,Inf)) signals an error instead of segfaulting, fixing
    PR#18603.
  * tiff(type = "Xlib") was only outputting the last page of
    multi-page plots.
  * tools::latexToUtf8() again knows about \~{n} and other letters
    with tilde, fixing a regression in R 4.3.0, and about \^{i} as an
    alternative to \^{\i} (similarly with other accents).
    Furthermore, LaTeX codes for accented I letters are now correctly
    converted, also fixing related mistakes in
    tools::encoded_text_to_latex().
  * tar(*, tar = "internal") no longer creates out-of-spec tar files
    in the very rare case of user or group names longer than 32
    bytes, fixing PR#17871 with thanks to Ivan Krylov.
  * When using the "internal" timezone datetime code, adding a
    fraction of a second no longer adds one second, fixing PR#16856
    from a patch by Ivan Krylov.
  * tools::checkRd() no longer produces spurious notes about
    "unnecessary braces" from multi-line Rd results of \Sexpr macros.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1709208000">- CHANGES IN R 4.3.3:
  NEW FEATURES:
  * iconv() now fixes up variant encoding names such as "utf8"
    case-insensitively.
  DEPRECATED AND DEFUNCT:
  * The legacy encoding = "MacRoman" is deprecated in pdf() and
    postscript(): support was incomplete in earlier versions of R.
  BUG FIXES:
  * Arguments are now properly forwarded to methods on S4 generics
    with ... in the middle of their formal arguments. This was broken
    for the case when a method introduced an argument but did not
    include ... in its own formals. Thanks to Herv'e Pag`es for the
    report PR#18538.
  * Some invalid file arguments to pictex(), postscript() and xfig()
    opened a file called NA rather than throw an error.  These
    included postscript(NULL) (which some people expected to work
    like pdf(NULL)).
  * Passing filename = NA to svg(), cairo_pdf(), cairo_ps() or the
    Cairo-based bitmap devices opened a file called NA: it now throws
    an error.
  * quartz(file = NA) opened a file called NA, including when used as
    a Quartz-based bitmap device.  It now gives an error.
  * rank(&lt;long vector&gt;) now works, fixing PR#18617, thanks to Ilia
    Kats.
  * seq.int() did not adequately check its length.out argument.
  * match(&lt;POSIXct&gt;, .) is correct again for differing time zones,
    ditto for "POSIXlt", fixing PR#18618 reported by Bastian Klein.
  * drop.terms(*, dropx = &lt;0-length&gt;) now works, fixing PR#18563 as
    proposed by Mikael Jagan.
  * drop.terms(*) keeps + offset(.) terms when it should, PR#18565,
    and drop.terms() no longer makes up a response, PR#18566, fixing
    both bugs thanks to Mikael Jagan.
  * getS3method("t", "test") no longer finds the t.test() function,
    fixing PR#18627.
  * pdf() and postscript() support for the documented Adobe encodings
    "Greek" and "Cyrilllic" was missing (although the corresponding
    Windows' codepages could be used).
  * Computations of glyph metric information for pdf() and
    postscript() did not take into account that transliteration could
    replace one character by two or more (only seen on macOS 14) and
    typically warned that the information was not known.
  * rank(x) no longer overflows during integer addition, when
    computing rank average for largish but not-yet long vector x,
    fixing PR#18630, thanks to Ilia Kats.
  * list.files() on Windows now returns also files with names longer
    that 260 bytes (the Windows limit is 260 characters).
    Previously, some file names particularly with 'East Asian'
    characters were omitted.
  * cov2cor(&lt;0 x 0&gt;) now works, fixing PR#18423 thanks to Mikael
    Jagan and Elin Waring.
  * cov2cor(&lt;negative diagonal&gt;) and similar now give one warning
    instead of two, with better wording, fixing PR#18424 thanks to
    Mikael Jagan.
  * tools:: startDynamicHelp() now ensures port is in proper range,
    fixing PR#18645.
  * pbeta(x, a,b) is correct now for x=0 or 1 in the boundary cases
    where a or b or both are 0, fixing PR#18672 thanks to Michael
    Fay.
  * pmatch(x, table) for large table, also called for data frame row
    selection, dfrm[nm, ], is now interruptible, fixing PR#18656.
  * predict(&lt;rank-deficient lm&gt;, newdata=*) fix computing of nbasis,
    see Russ Lenth's comment 29 in PR#16158.
  * Added a work-around for a bug in macOS 14.3.1 and higher which
    prevents R plots in the Quartz Cocoa device from updating on
    screen.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1713960000">- CHANGES IN R 4.4.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Startup banners, R --version, sessionInfo() and R CMD check no
    longer report (64-bit) as part of the platform as this is almost
    universal - the increasingly rare 32-bit platforms will still
    report (32-bit).
    On Windows, ditto for window titles.
  * is.atomic(NULL) now returns FALSE, as NULL is not an atomic
    vector.  Strict back-compatibility would replace is.atomic(foo)
    by (is.null(foo) || is.atomic(foo)) but should happen only
    sparingly.
  NEW FEATURES:
  * The confint() methods for "glm" and "nls" objects have been
    copied to the stats package.  Previously, they were stubs which
    called versions in package MASS. The MASS namespace is no longer
    loaded if you invoke (say) confint(glmfit).  Further, the "glm"
    method for profile() and the plot() and pairs() methods for class
    "profile" have been copied from MASS to stats.  (profile.nls()
    and plot.profile.nls() were already in stats.)
  * The confint() and profile methods for "glm" objects have gained a
    possibility to do profiling based on the Rao Score statistic in
    addition to the default Likelihood Ratio. This is controlled by a
    new test = argument.
  * The pairs() method for "profile" objects has been extended with a
    which = argument to allow plotting only a subset of the
    parameters.
  * The "glm" method for anova() computes test statistics and
    p-values by default, using a chi-squared test or an F test
    depending on whether the dispersion is fixed or free.  Test
    statistics can be suppressed by giving argument test a false
    logical value.
  * In setRepositories() the repositories can be set using their
    names via name = instead of index ind =.
  * methods() and .S3methods() gain a all.names option for the (rare)
    case where functions starting with a . should be included.
  * Serializations can now be interrupted (e.g., by Ctrl-C on a
    Unix-alike) if they take too long, e.g., from save.image(),
    thanks to suggestions by Ivan Krylov and others on R-devel.
  * New startup option --max-connections to set the maximum number of
    simultaneous connections for the session.  Defaults to 128 as
    before: allowed values up to 4096 (but resource limits may in
    practice restrict to smaller values).
  * R on Windows (since Windows 10 2004) now uses the new Segment
    Heap allocator. This may improve performance of some
    memory-intensive applications.
  * When R packages are built, typically by R CMD build &lt;pkg&gt;, the
    new --user=&lt;build_user&gt; option overrides the (internally
    determined) user name, currently Sys.info()["user"] or LOGNAME.
    This is a (modified) fulfillment of Will Landau's suggestion in
    PR#17530.
  * tools::testInstalledBasic() gets new optional arguments outDir
    and testSrcdir, e.g., allowing to use it in a &lt;builddir&gt; !=
    &lt;srcdir&gt; setup, and in standard "binary" Windows installation
  * if* a source tests/ folder is present.
  * range(&lt;DT_with_Inf&gt;, finite = TRUE) now work for objects of class
    "Date", "POSIXct", and "POSIXlt" with infinite entries,
    analogously to range.default(), as proposed by Davis Vaughan on
    R-devel.  Other range()-methods can make use of new function
    .rangeNum().
  * New .internalGenerics object complementing .S3PrimitiveGenerics,
    for documentation and low-level book-keeping.
  * grid() now invisibly returns the x- and y- coordinates at which
    the grid-lines were drawn.
  * norm(., type) now also works for complex matrices.
  * kappa(., exact = TRUE, norm = *) now works for all norms and also
    for complex matrices.  In symmetric / triangular cases, the new
    argument uplo = "U" | "L" allows the upper or lower triangular
    part to be specified.
  * memDecompress(type = "unknown") recognizes compression in the
    default 'zlib' format as used by memCompress(type = "gzip").
  * memCompress() and memDecompress() will use the libdeflate library
    (&lt;https://github.com/ebiggers/libdeflate&gt;) if installed.  This
    uses the same type of compression for type = "gzip" but is 1.5-2x
    faster than the system libz library on some common platforms: the
    speed-up may depend on the library version.
  * diff() for objects of class "Date", "POSIXct", and "POSIXlt"
    accepts a units argument passed via ....
  * Dynamic help now does a much better job of rendering package
    DESCRIPTION metadata.
  * Rprof() gains an event argument and support for elapsed (real)
    time profiling on Unix (PR#18076).
  * filled.contour() gains a key.border argument.
  * tools::update_pkg_po() gets arguments pot_make and mo_make for
    _not_ re-making the corresponding files, and additionally a
    verbose argument.
  * Hexadecimal string colour specifications are now accepted in
    short form, so, for example, we can use "#123", which is
    equivalent to "#112233".
    Thanks to MikeFC for the original idea and Ella Kaye, Malcolm
    Barrett, George Stagg, and Hanne Oberman for the patch.
  * Plain-text help shows \var markup by angle brackets.
  * The new experimental primitive function declare() is intended to
    eventually allow information about R code to be communicated to
    the interpreter, compiler, and code analysis tools. The syntax
    for declarations is still being developed.
  * Functions psmirnov(), qsmirnov() and rsmirnov() in package stats
    have had argument two.sided renamed to alternative, to take into
    account that the permutation distributions of the one-sided
    statistics can be different in the case of ties.  Consequence of
    PR#18582.
  * sort() is now an implicit S4 generic in methods.
  * Formatting and printing, format(z), print(z), of complex vectors
    z no longer zap relatively small real or imaginary parts to zero,
    fixing PR#16752.  This is an API change, as it was documented
    previously to round real and imaginary parts together on purpose,
    producing nicer looking output.  As mentioned, e.g. in the PR,
    this change is compatible with many other "R-like" programming
    environments.
    We have simplified the internal code and now basically format the
    real and imaginary parts independently of each other.
  * New experimental functions Tailcall() and Exec() to support
    writing stack-space-efficient recursive functions.
  * Where characters are attempted to be plotted by pdf(),
    postscript() and xfig() which are not in the selected 8-bit
    character set (most often Latin-1) and the R session is using a
    UTF-8 locale, the warning messages will show the UTF-8 character
    rather than its bytes and one dot will be substituted per
    character rather than per byte.  (Platforms whose iconv() does
    transliteration silently plot the transliteration.)
    In a UTF-8 locale some transliterations are now done with a
    warning (e.g., dashes and Unicode minus to hyphen, ligatures are
    expanded, permille (‰) is replaced by o/oo), although the OS may
    have got there first.  These are warnings as they will continue
    to be replaced by dots in earlier versions of R.
  * The matrix multiplication functions crossprod() and tcrossprod()
    are now also primitive and S3 generic, as %*% had become in R
    4.3.0.
  * source() and example() have a new optional argument catch.aborts
    which allows continued evaluation of the R code after an error.
  * The non-Quartz tiff() devices allow additional types of
    compression if supported by the platform's libtiff library.
  * The list of base and recommended package names is now provided by
    tools::standard_package_names().
  * cairo_pdf() and cairo_ps() default to onefile = TRUE to closer
    match pdf() and postscript().
  * New option catch.script.errors provides a documented way to catch
    errors and then continue in non-interactive use.
  * L %||% R newly in base is an expressive idiom for the phrases
    if(!is.null(L)) L else R or if(is.null(L)) R else L.
  * The return value from warnings() now always inherits from
    "warnings" as documented, now also in the case of no warnings
    where it previously returned NULL.
  * as.complex("1i") now returns 0 + 1i instead of NA with a warning.
  * z &lt;- c(NA, 1i) now keeps the imaginary part Im(z[1]) == 0, no
    longer coercing to NA_complex_.  Similarly, cumsum(z) correctly
    sums real and imaginary parts separately, i.e., without
    "crosstalk" in case of NAs.
  * On Alpine Linux iconv() now maps "latin2", "latin-2", "latin9"
    and "latin-9" to encoding names the OS knows about
    (case-insensitively).
  * iconv(sub = "Unicode") now always zero-pads to four (hex) digits,
    rather than to 4 or 8.  (This seems to have become the convention
    once Unicode restricted the number of Unicode points to 2^21 - 1
    and so will never need more than 6 digits.)
  * NCOL(NULL) now returns 0 instead of 1, for consistency with
    cbind().
  * The information for the Euro glyph missing from the Adobe .afm
    files for the Courier, Helvetica and Times families has been
    copied from their URW equivalents - this will improve vertical
    centring in the pdf() and postscript() devices.
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.12.0.  The changes are almost entirely cosmetic.
  * The included LAPACK sources have been updated to version 3.12.0
    and some further double-complex routines added.
  * There are new font families for the 2014--5 URW 2.0 fonts (see
    ?pdf) which are included in recent versions of Ghostscript.
    These have font widths for most Greek glyphs and a few others
    which were missing from the original versions (whose font
    families remain available for reproducibility, although
    Ghostscript-based viewers will render using the 2.0 versions).
  * Improve the large-n efficiency of as.matrix(&lt;dist&gt;), thanks an R
    contributors effort, notably by Tim Taylor and Heather Turner,
    see PR#18660.
  * The default and numeric methods of all.equal() get a check.class
    option.
  * zapsmall() gets new optional arguments, function mFUN and min.d,
    for extra flexibility; fulfills a wish in PR#18199.  Also, it is
    now an implicit S4 generic in package methods.
  * The Rd filter for aspell() gains an ignore argument.
  * New generic function sort_by(), primarily useful for the
    data.frame method which can be used to sort rows of a data frame
    by one or more columns.
  * The icence headers for the RPC code in src/extra/xdr have been
    updated to use the GPL-compatible licence published by Oracle
    America in 2010.
  * New function pkg2HTML() in tools to create single-page HTML
    reference manuals for R packages.
  * The byte code evaluator now uses less C stack space for recursive
    calls to byte-compiled functions. It also makes more of an effort
    to avoid allocations for scalar return values.
  * New completion option backtick (disabled by default) allows
    non-syntactic completions to be wrapped in backquotes. This is
    currently only useful for Jupyter notebooks via the IRkernel
    package, and may cause problems for other backends.
  INSTALLATION:
  * The parser has been updated to work with bison 3.8.2, which is
    now used for the pre-generated parsers in gram.c, file.c, and
    gramRd.c. A few parser error messages have changed, which may
    affect code that relies on exact messages.
  INSTALLATION on a UNIX-ALIKE:
  * System valgrind headers are now required to use configure option
  - -with-valgrind-instrumentation with value 1 or 2.
  * configure will warn if it encounters a 32-bit build, as that is
    nowadays almost untested.
  * Environment variable R_SYSTEM_ABI is no longer used and so no
    longer recorded in etc/Renviron (it was not on Windows and was
    only ever used when preparing package tools).
  * If the libdeflate library and headers are available, libdeflate
    rather than libz is used to (de)compress R objects in lazy-load
    databases.  Typically tasks spend up to 5% of their time on such
    operations, although creating lazy-data databases is one of the
    exceptions.
    This can be suppressed if the library is available by the
    configure option --without-libdeflate-compression.
  * configure option --enable-lto=check has not worked reliably since
    2019 and has been removed.
  * The minimum autoconf requirement for a maintainer build has been
    increased to autoconf 2.71.
    It is intended to increase this to 2.72 for R 4.5.0: the
    distributed configure file was generated using 2.72.
  * The minimum version requirement for an external LAPACK has been
    reduced to 3.9.0.
  * No default C++ compiler is set if no C++17 compiler is detected:
    there is no longer an automatic fallback to C++14 or C++11.
    Compilers from the last five years should have sufficient
    support: for others macros CXX and CXXSTD can be set in file
    config.site to provide a fallback if needed.
    The Objective-C++ compiler now by default uses the standard
    selected by R for C++ (currently C++17) rather than the default
    standard for the C++ compiler (which on macOS is still C++98).
  INSTALLATION on macOS:
  * A new configure option --with-newAccelerate makes use of Apple's
    'new' BLAS / LAPACK interfaces in their Accelerate framework.
    Those interfaces are only available in macOS 13.3 or later, and
    building requires SDK 13.3 or later (from the Command Line Tools
    or Xcode 14.3 or later).
    By default the option uses new Accelerate for BLAS calls: to also
    use it for LAPACK use option --with-newAccelerate=lapack.  The
    later interfaces provide LAPACK 3.9.1 rather than 3.2.1: 3.9.1 is
    from 2021-04 and does not include the improved algorithms
    introduced in LAPACK 3.10.0 (including for BLAS calls).
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools44, an update of the Rtools43 toolchain.  It is
    based on GCC 13 and newer versions of MinGW-W64, binutils and
    libraries (targeting 64-bit Intel CPUs).  R-devel can no longer
    be built using Rtools43 without changes.
  * Rtools44 has experimental support for 64-bit ARM (aarch64) CPUs
    _via_ the LLVM 17 toolchain using lld, clang/flang-new and
    libc++.
  UTILITIES:
  * R CMD check notes when S4-style exports are used without
    declaring a strong dependence on package methods.
  * tools::checkRd() (used by R CMD check) detects more problems with
    \Sexpr-based dynamic content, including bad nesting of \Sexprs
    and invalid arguments.
  * tools::checkRd() now reports Rd titles and section names ending
    in a period; this is ignored by R CMD check unless environment
    variable _R_CHECK_RD_CHECKRD_MINLEVEL_ is set to -5 or smaller.
  * R CMD check now notes Rd files without an \alias, as long
    documented in 'Writing R Extensions' §1.3.1.  The check for a
    missing \description has been moved from tools::checkRd() to
    tools::checkRdContents().
  * R CMD check now visits inst/NEWS.Rd and OS-specific man
    subdirectories when checking Rd files.
  * tools::checkDocFiles() and tools::checkRdContents() now also
    check internal Rd files by default, but "specially" (ignoring
    missing documentation of arguments).
  * R CMD Rdiff gets option --useEx.
  * R CMD check now warns on non-portable uses of Fortran KIND such
    as INTEGER(KIND=4) and REAL(KIND=8).
    To see the failing lines set environment variable
    _R_CHECK_FORTRAN_KIND_DETAILS_ to a true value.
  * When checking Rd files, R CMD check now notes some of the "lost
    braces" that tools::checkRd() finds.  Typical problems are Rd
    macros missing the initial backslash (e.g., code{...}), in-text
    set notation (e.g., {1, 2}, where the braces need escaping), and
    \itemize lists with \describe-style entries of the form
    \item{label}{description}.
  * R CMD INSTALL (and hence check) will compile C++ code with
  - DR_NO_REMAP if environment variable _R_CXX_USE_NO_REMAP_ is set
    to a true value.  It is planned that this will in future become
    the default for compiling C++.
  * The new built-in Rd macro \dontdiff{} can be used to mark example
    code whose output should be ignored when comparing check output
    to reference output (tests/Examples/&lt;pkg&gt;-Ex.Rout.save).  The
    \dontdiff tag, like \donttest, is _not_ shown on the rendered
    help page, so provides a clean alternative to ##
    IGNORE_RDIFF_(BEGIN|END) comments.
  * R CMD build when there is no NAMESPACE, now uses the recommended
    exportPattern("^[^.]"), instead of exporting everything.
  * R CMD check now warns about non-ASCII characters in the NAMESPACE
    file (in addition to R files). Such packages are not portable and
    may fail to install on some platforms.
  C-LEVEL FACILITIES:
  * Headers R_ext/Applic.h and R-ext/Linpack.h used to include
    R_ext/BLAS.h although this was undocumented and unneeded by their
    documented entry points.  They no longer do so.
  * New function R_missing(), factored out from do_missing(), used to
    fix PR#18579.
  * SEXP type S4SXP has been renamed to OBJSXP to support
    experimenting with alternative object systems.  The S4SXP value
    can still be used in C code but is now deprecated.  Based on
    contributions from the R Consortium's Object-Oriented Programming
    Working Group.
  * New function pow1p(x,y) for accurate (1+x)^y.
  * mkCharLenCE was incorrectly documented to take a size_t length
    but was implemented with int (and character strings in R are
    limited to 2^31 - 1 bytes).
  DEPRECATED AND DEFUNCT:
  * data() no longer handles zipped data from long-defunct (since R
    2.13.0) --use-zip-data installations.
  * The legacy graphics devices pictex() and xfig() are now
    deprecated.  They do not support recent graphics enhancements and
    their font handling is rudimentary. The intention is to retain
    them for historical interest as long as they remain somewhat
    functional.
  * Support for encoding = "MacRoman" has been removed from the pdf()
    and postscript() devices - this was a legacy encoding supporting
    classic macOS up to 2001 and no longer has universal libiconv
    support.
  * is.R() is deprecated as no other S dialect is known to be in use
    (and this could only identify historical dialects, not future
    ones).
    Further information on calls can be obtained by setting the
    environment variable _R_DEPRECATED_IS_R_ to error which turns the
    deprecation warning into an error and so by default gives a
    traceback.  (This is done by R CMD check --as-cran.)
  * UseMethod() no longer forwards local variables assigned in the
    generic function into method call environments before evaluating
    the method body. This makes method calls behave more like
    standard function calls and makes method code easier to analyze
    correctly.
  * The twelve as.data.frame.&lt;class&gt;() methods which were deprecated
    only via _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ and in R CMD
    check --as-cran are formally deprecated now in favour of calling
    as.data.frame() or as.data.frame.vector().  The deprecation
    "check" now works also when as.data.frame() is S4 generic thanks
    to Ivan Krylov.
  * The default method for the directional comparison operators &lt;, &gt;,
    &lt;=, and &gt;= now signals an error when one of the operands is a
    language object, i.e. a symbol or a call.
  * For terms.formula(), deprecate abb and neg.out arguments
    _formally_ in addition to just documenting it.
  BUG FIXES:
  * The methods package is more robust to not being attached to the
    search path.  More work needs to be done.
  * pairwise.t.test() misbehaved when subgroups had 0 DF for
    variance, even with pool.sd = TRUE.  (PR#18594 by Jack Berry).
  * Probability distribution functions [dpq]&lt;distrib&gt;(x, *), but also
    bessel[IKJY](x, .) now consistently preserve attributes(x) when
    length(x) == 0, e.g., for a 2 x 0 matrix, thanks to Karolis
    Koncevičius' report PR#18509.
  * Group "Summary" computations such as sum(1:3, 4, na.rm = 5, NA,
    7, na.rm = LL) now give an error instead of either 17 or NN for
    LL true or false, as proposed by Ivan Krylov on the R-devel
    mailing list.  (This also means it is now an error to specify
    na.rm more than once.)
  * as.complex(x) now returns complex(real = x, imaginary = 0) for
    _all_ numerical and logical x, notably also for NA or
    NA_integer_.
  * Directories are now omitted by file.copy(, recursive = FALSE) and
    in file.append() (PR#17337).
  * gsub() and sub() are now more robust to integer overflow when
    reporting errors caused by too large input strings (PR#18346).
  * Top-level handlers are now more robust to attempts to remove a
    handler whilst handlers are running (PR#18508).
  * The handling of Alt+F4 in dialogs created on Windows using
    GraphApp has been fixed (PR#13870).
  * density() more consistently computes grid values for the
    FFT-based convolution, following Robert Schlicht's analysis and
    proposal in PR#18337, correcting density values typically by a
    factor of about 0.999.  Argument old.coords = TRUE provides back
    compatibility.
  * palette.colors() gains a name argument that defaults to FALSE
    controlling whether the vector of colours that is returned has
    names (where possible).  PR#18529.
  * tools::xgettext() no longer extracts the (non-translatable) class
    names from warningCondition and errorCondition calls.
  * S3method(&lt;gen&gt;, &lt;class&gt;, &lt;func&gt;) in the NAMESPACE file now works
    (again) when &lt;func&gt; is visible from the namespace, e.g.,
    imported, or in base.
  * getParseData(f) now also works for a function defined in the
    first of several &lt;pkg&gt;/R/*.R source files, thanks to Kirill
    Müller's report and Duncan Murdoch's patch in PR#16756.
  * Rd \Sexpr macros with nested #ifdef conditionals were not
    processed.
  * A non-blocking connection with non-default encoding (such as a
    socket) now correctly returns from readLines() after new data has
    arrived also when its EOF had been reached previously.  Thanks to
    Peter Meilstrup's report on R-devel and Ivan Krylov's report and
    patch proposal in PR#18555.
  * tools::checkRdContents() failed to detect empty argument
    descriptions when they spanned multiple lines, including those
    generated by prompt().  These cases are now noted by R CMD check.
  * Plain-text help no longer outputs spurious colons in the
    arguments list (for multi-line \item labels in the Rd source).
  * kappa() and rcond() work correctly in more cases; kappa(., norm =
    "2") now warns that it computes the 1-norm with (default) exact =
    FALSE; prompted by Mikael Jagan's quite comprehensive PR#18543.
  * Rd skeletons generated by prompt() or promptData() now use a
    dummy title (so R CMD build works).  tools::checkRdContents() has
    been updated to detect such template leftovers, including from
    promptPackage().
  * When S4 method dispatch fails because no method was found, the
    error message now includes the signature argument names; thanks
    to Michael Chirico's proposal on the R-devel list.
  * withAutoprint({ .. }) now preserves srcrefs previously lost,
    thanks to Andrew Simmons' report plus fix in PR#18572.
  * transform.data.frame() no longer adjusts names; in particular,
    untransformed variables are kept as-is, including those with
    syntactically invalid names (PR#17890).
  * The keep.source option for Rd \Sexpr blocks is no longer ignored.
  * The formula methods for t.test() and wilcox.test() now catch when
    paired is passed, addressing PR#14359; use Pair(x1, x2) ~ 1 for a
    paired test.
  * The level reported in the browser prompt was often too large. It
    now shows the number of browser contexts on the stack.
  * For cbind() and rbind(), the optional deparse.level argument is
    now properly passed to methods, thanks to Mikael Jagan's PR#18579
    and comments there.
  * Some error and warning messages for large ('long vector')
    matrix(v, nr, nc) and dim(m) &lt;- d are now correct about sizes,
    using long long formatting, fixing PR#18612 (and more) reported
    by Mikael Jagan.
  * readChar(useBytes = TRUE) now terminates strings even when the
    underlying connection uses extra spaces in the input buffer.
    This fixes problems with extra garbage seen with gzip
    connections, PR#18605.
  * Named capture in PCRE regular expressions now works also with
    more than 127 named groups (PR#18588).
  * Datetime functions are now robust against long jumps when dealing
    with internal time zone changes.  This avoids confusing warnings
    about an invalid time zone, previously triggered by turning
    warnings into errors or handling them via tryCatch (PR#17966,
    PR#17780).
  * Datetime functions now restore even an empty TZ environment
    variable after internal time zone changes (PR#17724).  This makes
    results of datetime functions with this (typically unintentional)
    setting more predictable.
  * drop.terms(*) now drops response as by default, keep.response =
    FALSE, fixing PR#18564 thanks to Mikael Jagan.
  * dummy.coef(.) now also works for lm()-models with character
    categorical predictor variables rather than factor ones, fixing
    PR#18635 reported by Jinsong Zhao.
  * formals(f) &lt;- formals(f) now also works for a function w/o
    arguments and atomic _constant_ body(f).
  * Correct as.function(&lt;invalid list&gt;, .)'s error message.
  * removeSource() is yet more thorough in finding and removing
    "srcref" and the other source references from parsed R language
    chunks, fixing PR#18638 thanks to Andrew Simmons.
  * dgeom() is more accurate now, notably when its result is very
    small, fixing PR#18642 thanks to the proposal of Morten Welinder,
    also improving other instances where C level binom_raw(x, n, ..)
    has x == 0 or x== n.
  * warning() with options(warn = 1) has improved output for
    multi-line messages.
  * axis.Date() and axis.POSIXct() now respect the par("lab") setting
    for the number of pretty() intervals.
  * Comparisons for language objects (which are based on deparsing)
    are now more careful about using accurate deparsed results
    (PR#18676).
  * Plain-text help (Rd2txt) now correctly preserves blank lines
    following single-line \dontrun code.
  * &lt;POSIXlt&gt;[*] no longer sets wrong "balanced" attribute, fixing
    PR#18681 thanks to Mikael Jagan.
  * str(&lt;classed-call&gt;) now deparses the call as expected, fixing
    PR#18684, reported by Dave Slager.
  * In Rd examples, code following the closing brace of a \dontrun,
    \dontshow or \donttest tag on the same line is no longer skipped
    when R CMD check runs the examples.
  * as.data.frame(matrix(*, ncol=0)) now gets valid names() and
    colnames(); reported by Davis Vaughan on the R-devel list.
  * Internal Mathlib function stirlerr(n) is now almost fully
    (52-bit) accurate for all n &gt;= ~5.9 and more accurate also in the
    range 1 -- 5.9.  This entails small ("after 12th decimal")
    changes in density functions, e.g., dgamma() in _some_ regions of
    their support.  The fix was partly prompted by Morten Welinder's
    PR#18640.
  * Numbers like 9876543.2 are now considered non-integer by Mathlib
    internal R_nonint(), amending original fix of PR#15734.
  * Rd comment lines no longer cause broken paragraphs in the
    rendered PDF and plain-text help. In code blocks, pure comment
    lines (starting with %) no longer produce an empty line.
  * xtabs(Freq ~ .) now consistently defaults to na.action = na.pass,
    using na.rm = FALSE (added as an argument) when summing over Freq
    (PR#17770).
  * tools::testInstalledPackage() is no longer silent about failures
    from running examples or tests and its return code no longer
    ignores failures from checking vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1718366400">- CHANGES IN R 4.4.1:
  C-LEVEL FACILITIES:
  * Functions R_atof and R_strtod declared in header R_ext/Utils.h
    are now documented in 'Writing R Extensions' and so formally part
    of the API.
  * The non-API entry points Rf_setSVector, Rf_StringFalse,
    Rf_StringTrue and Rf_isBlankString have been added to those
    reported by R CMD check.
  * The new function Rf_allocLang is now available. This provides an
    alternative to the idiom of calling Rf_allocList followed by
    SET_TYPEOF.
  UTILITIES:
  * R CMD check now reports as warnings what gfortran calls 'Fortran
    2018 deleted features', all of which have long been marked as
    'obsolescent' and some of which were deleted in Fortran 2008 or
    earlier.  Fortran compilers are no longer required to support
    these.
  BUG FIXES:
  * as.numeric(), scan(), type.convert() and other places which use
    the internal C function R_strtod now require a _non-empty_ digit
    sequence in a decimal or binary exponent.  This aligns with the
    C/POSIX standard for strtod and with ?NumericConstants.
  * as.data.frame(m, make.names=NA) now works correctly for a matrix
    m with NA's in row names.
  * The error message from &lt;POSIXlt&gt;[["hour"]] and similar now
    mentions *[[, "hour"]], as wished for in PR#17409 and proposed by
    Michael Chirico.
  * qbinom() and potentially qpois(), qnbinom(), no longer sometimes
    fail accurate inversion (of pbinom(), etc), thanks to Christopher
    Chang's report and patch in PR#18711.
  * The internal help server on Windows can again serve requests sent
    in quick succession, fixing a regression in R 4.4.0.
  * debugcall(&lt;S3Generic&gt;()) now also works when a corresponding
    S4-generic version is in the methods cache (PR#18143).
  * Package tools' toTitleCase(ch0) now returns character(0) when ch0
    is of zero length; fixing PR#18724, reported by David Hugh Jones.
  * R CMD check is no longer broken (without a check result and no
    explanation in 00check.log) for a package which declares an
    invalid VignetteBuilder in DESCRIPTION but has no vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1730376000">- CHANGES IN R 4.4.2:
  C-LEVEL FACILITIES:
  * The S-compatibility macros F77_COM and F77_COMDECL defined in
    header R_ext/RS.h are deprecated and will be removed shortly.  We
    could find no record of their use.
  BUG FIXES:
  * Mathlib function lgammacor(x) no longer warns about underflow to
    zero for large x.
  * Text widths and heights were incorrectly reported by the Quartz
    device if the drawing context didn't exist yet (typically when
    drawing off-screen to a window that is yet to appear, see
    PR#18591).
  * The Quartz device could segfault in cases where paths with spaces
    are used in the new glyph drawing API.  Thanks to Tomek
    Gieorgijewski (PR#18758).
  * On macOS in R CRAN builds, it is again possible to read
    little-endian UTF-16 text with a BOM from a connection using
    encoding="UTF-16".  Users building R from source should avoid
    using the system libiconv in macOS 14.1 and later.
  * methods' internal .requirePackage() now re-enables primitive
    method dispatch when needed; thanks to Ivan Krylov for
    demystifying CRAN package check failures on the R-devel mailing
    list.</changelog>
</package>
<package pkgid="f4cd7f2a701e4d99330ff2d485b7b3ec397a578f3f27bdd071db93ed23d45a26a3fc9ebdd16190247baa76bf63f4c9db1e02b177e0a5f89660096b7f78560aa0" name="R-base" arch="src">
  <version epoch="0" ver="4.4.2" rel="51.0.2.2.sr20241103"/>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1620302400">- To get in sync with d:l:R:autoCRAN the Matrix package's split
  in -devel was reversed.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339200">- improved spec file according to comments of dimstar in
  https://build.opensuse.org/request/show/892685</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339201">- CHANGES IN R 4.1.0:
  FUTURE DIRECTIONS:
  * It is planned that the 4.1.x series will be the last to support
    32-bit Windows, with production of binary packages for that
    series continuing until early 2023.
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Data set esoph in package datasets now provides the correct
    numbers of controls; previously it had the numbers of cases added
    to these.  (Reported by Alexander Fowler in PR#17964.)
  NEW FEATURES:
  * www.omegahat.net is no longer one of the repositories known by
    default to setRepositories().  (Nowadays it only provides source
    packages and is often unavailable.)
  * Function package_dependencies() (in package tools) can now use
    different dependency types for direct and recursive dependencies.
  * The checking of the size of tarball in R CMD check --as-cran
    &lt;pkg&gt; may be tweaked via the new environment variable
    _R_CHECK_CRAN_INCOMING_TARBALL_THRESHOLD_, as suggested in
    PR#17777 by Jan Gorecki.
  * Using c() to combine a factor with other factors now gives a
    factor, an ordered factor when combining ordered factors with
    identical levels.
  * apply() gains a simplify argument to allow disabling of
    simplification of results.
  * The format() method for class "ftable" gets a new option justify.
    (Suggested by Thomas Soeiro.)
  * New ...names() utility.  (Proposed by Neal Fultz in PR#17705.)
  * type.convert() now warns when its as.is argument is not
    specified, as the help file always said it _should_.  In that
    case, the default is changed to TRUE in line with its change in
    read.table() (related to stringsAsFactor) in R 4.0.0.
  * When printing list arrays, classed objects are now shown _via_
    their format() value if this is a short enough character string,
    or by giving the first elements of their class vector and their
    length.
  * capabilities() gets new entry "Rprof" which is TRUE when R has
    been configured with the equivalent of --enable-R-profiling (as
    it is by default).  (Related to Michael Orlitzky's report
    PR#17836.)
  * str(xS4) now also shows extraneous attributes of an S4 object
    xS4.
  * Rudimentary support for vi-style tags in rtags() and R CMD rtags
    has been added.  (Based on a patch from Neal Fultz in PR#17214.)
  * checkRdContents() is now exported from tools; it and also
    checkDocFiles() have a new option chkInternal allowing to check
    Rd files marked with keyword "internal" as well.  The latter can
    be activated for R CMD check via environment variable
    _R_CHECK_RD_INTERNAL_TOO_.
  * New functions numToBits() and numToInts() extend the raw
    conversion utilities to (double precision) numeric.
  * Functions URLencode() and URLdecode() in package utils now work
    on vectors of URIs.  (Based on patch from Bob Rudis submitted
    with PR#17873.)
  * path.expand() can expand ~user on most Unix-alikes even when
    readline is not in use.  It tries harder to expand ~, for example
    should environment variable HOME be unset.
  * For HTML help (both dynamic and static), Rd file links to help
    pages in external packages are now treated as references to
    topics rather than file names, and fall back to a file link only
    if the topic is not found in the target package. The earlier rule
    which prioritized file names over topics can be restored by
    setting the environment variable _R_HELP_LINKS_TO_TOPICS_ to a
    false value.
  * c() now removes NULL arguments before dispatching to methods,
    thus simplifying the implementation of c() methods, _but_ for
    back compatibility keeps NULL when it is the first argument.
    (From a report and patch proposal by Lionel Henry in PR#17900.)
  * Vectorize()'s result function's environment no longer keeps
    unneeded objects.
  * Function ...elt() now propagates visibility consistently with
    ..n.  (Thanks to Lionel Henry's PR#17905.)
  * capture.output() no longer uses non-standard evaluation to
    evaluate its arguments.  This makes evaluation of functions like
    parent.frame() more consistent.  (Thanks to Lionel Henry's
    PR#17907.)
  * packBits(bits, type="double") now works as inverse of
    numToBits().  (Thanks to Bill Dunlap's proposal in PR#17914.)
  * curlGetHeaders() has two new arguments, timeout to specify the
    timeout for that call (overriding getOption("timeout")) and TLS
    to specify the minimum TLS protocol version to be used for
    https:// URIs (_inter alia_ providing a means to check for sites
    using deprecated TLS versions 1.0 and 1.1).
  * For nls(), an optional constant scaleOffset may be added to the
    denominator of the relative offset convergence test for cases
    where the fit of a model is expected to be exact, thanks to a
    proposal by John Nash.  nls(*, trace=TRUE) now also shows the
    convergence criterion.
  * Numeric differentiation _via_ numericDeriv() gets new optional
    arguments eps and central, the latter for taking central divided
    differences.  The latter can be activated for nls() via
    nls.control(nDcentral = TRUE).
  * nls() now passes the trace and control arguments to getInitial(),
    notably for all self-starting models, so these can also be fit in
    zero-noise situations via a scaleOffset.  For this reason, the
    initial function of a selfStart model must now have ... in its
    argument list.
  * bquote(splice = TRUE) can now splice expression vectors with
    attributes: this makes it possible to splice the result of
    parse(keep.source = TRUE).  (Report and patch provided by Lionel
    Henry in PR#17869.)
  * textConnection() gets an optional name argument.
  * get(), exists(), and get0() now signal an error if the first
    argument has length greater than 1.  Previously additional
    elements were silently ignored.  (Suggested by Antoine Fabri on
    R-devel.)
  * R now provides a shorthand notation for creating functions, e.g.
    \(x) x + 1 is parsed as function(x) x + 1.
  * R now provides a simple native forward pipe syntax |&gt;.  The
    simple form of the forward pipe inserts the left-hand side as the
    first argument in the right-hand side call.  The pipe
    implementation as a syntax transformation was motivated by
    suggestions from Jim Hester and Lionel Henry.
  * all.equal(f, g) for functions now by default also compares their
    environment(.)s, notably via new all.equal method for class
    function.  Comparison of nls() fits, e.g., may now need
    all.equal(m1, m2, check.environment = FALSE).
  * .libPaths() gets a new option include.site, allowing to _not_
    include the site library.  (Thanks to Dario Strbenac's suggestion
    and Gabe Becker's PR#18016.)
  * Lithuanian translations are now available.  (Thanks to Rimantas
    Zakauskas.)
  * names() now works for DOTSXP objects.  On the other hand, in
    R-lang, the R language manual, we now warn against relying on the
    structure or even existence of such dot-dot-dot objects.
  * all.equal() no longer gives an error on DOTSXP objects.
  * capabilities("cairo") now applies only to the file-based devices
    as it is now possible (if very unusual) to build R with Cairo
    support for those but not for X11().
  * There is optional support for tracing the progress of
    loadNamespace() - see its help.
  * (Not Windows.)  l10n_info() reports an additional element, the
    name of the encoding as reported by the OS (which may differ from
    the encoding part (if any) of the result from
    Sys.getlocale("LC_CTYPE").
  * New function gregexec() which generalizes regexec() to find _all_
    disjoint matches and well as all substrings corresponding to
    parenthesized subexpressions of the given regular expression.
    (Contributed by Brodie Gaslam.)
  * New function charClass() in package utils to query the
    wide-character classification functions in use (such as
    iswprint).
  * The names of quantile()'s result no longer depend on the global
    getOption("digits"), but quantile() gets a new optional argument
    digits = 7 instead.
  * grep(), sub(), regexp and variants work considerably faster for
    long factors with few levels.  (Thanks to Michael Chirico's
    PR#18063.)
  * Provide grouping of x11() graphics windows within a window
    manager such as Gnome or Unity; thanks to a patch by Ivan Krylov
    posted to R-devel.
  * The split() method for class data.frame now allows the f argument
    to be specified as a formula.
  * sprintf now warns on arguments unused by the format string.
  * New palettes "Rocket" and "Mako" for hcl.colors() (approximating
    palettes of the same name from the 'viridisLite' package).
    Contributed by Achim Zeileis.
  * The base environment and its namespace are now locked (so one can
    no longer add bindings to these or remove from these).
  * Rterm handling of multi-byte characters has been improved,
    allowing use of such characters when supported by the current
    locale.
  * Rterm now accepts ALT+ +xxxxxxxx sequences to enter Unicode
    characters as hex digits.
  * Environment variable LC_ALL on Windows now takes precedence over
    LC_CTYPE and variables for other supported categories, matching
    the POSIX behaviour.
  * duplicated() and anyDuplicated() are now optimized for integer
    and real vectors that are known to be sorted via the ALTREP
    framework. Contributed by Gabriel Becker via PR#17993.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 14
    and so packages that provide graphics devices should be
    reinstalled.
  * Graphics devices should now specify deviceVersion to indicate
    what version of the graphics engine they support.
  * Graphics devices can now specify deviceClip.  If TRUE, the
    graphics engine will never perform any clipping of output itself.
    The clipping that the graphics engine does perform (for both
    canClip = TRUE and canClip = FALSE) has been improved to avoid
    producing unnecessary artifacts in clipped output.
  * The grid package now allows gpar(fill) to be a linearGradient(),
    a radialGradient(), or a pattern().  The viewport(clip) can now
    also be a grob, which defines a clipping path, and there is a new
    viewport(mask) that can also be a grob, which defines a mask.
    These new features are only supported so far on the Cairo-based
    graphics devices and on the pdf() device.
  * (Not Windows.)  A warning is given when a Cairo-based type is
    specified for a png(), jpeg(), tiff() or bmp() device but Cairo
    is unsupported (so type = "Xlib" is tried instead).
  * grSoftVersion() now reports the versions of FreeType and
    FontConfig if they are used directly (not _via_ Pango), as is
    most commonly done on macOS.
  C-LEVEL FACILITIES:
  * The _standalone_ libRmath math library and R's C API now provide
    log1pexp() again as documented, and gain log1mexp().
  INSTALLATION on a UNIX-ALIKE:
  * configure checks for a program pkgconf if program pkg-config is
    not found.  These are now only looked for on the path (like
    almost all other programs) so if needed specify a full path to
    the command in PKG_CONFIG, for example in file config.site.
  * C99 function iswblank is required - it was last seen missing ca
    2003 so the workaround has been removed.
  * There are new configure options --with-internal-iswxxxxx,
  - -with-internal-towlower and --with-internal-wcwidth which allows
    the system functions for wide-character classification,
    case-switching and width (wcwidth and wcswidth) to be replaced by
    internal ones.  The first has long been used on macOS, AIX (and
    Windows) but this enables it to be unselected there and selected
    for other platforms (it is the new default on Solaris).  The
    second is new in this version of R and is selected by default on
    macOS and Solaris.  The third has long been the default and
    remains so as it contains customizations for East Asian
    languages.
    System versions of these functions are often minimally
    implemented (sometimes only for ASCII characters) and may not
    cover the full range of Unicode points: for example Solaris (and
    Windows) only cover the Basic Multilingual Plane.
  * Cairo installations without X11 are more likely to be detected by
    configure, when the file-based Cairo graphics devices will be
    available but not X11(type = "cairo").
  * There is a new configure option --with-static-cairo which is the
    default on macOS.  This should be used when only static cairo
    (and where relevant, Pango) libraries are available.
  * Cairo-based graphics devices on platforms without Pango but with
    FreeType/FontConfig will make use of the latter for font
    selection.
  LINK-TIME OPTIMIZATION on a UNIX-ALIKE:
  * Configuring with flag --enable-lto=R now also uses LTO when
    installing the recommended packages.
  * R CMD INSTALL and R CMD SHLIB have a new flag --use-LTO to use
    LTO when compiling code, for use with R configured with
  - -enable-lto=R.  For R configured with --enable-lto, they have
    the new flag --no-use-LTO.
    Packages can opt in or out of LTO compilation _via_ a UseLTO
    field in the DESCRIPTION file.  (As usual this can be overridden
    by the command-line flags.)
  BUILDING R on Windows:
  * for GCC &gt;= 8, FC_LEN_T is defined in config.h and hence character
    lengths are passed from C to Fortran in _inter alia_ BLAS and
    LAPACK calls.
  * There is a new text file src/gnuwin32/README.compilation, which
    outlines how C/Fortran code compilation is organized and
    documents new features:
  * R can be built with Link-Time Optimization with a suitable
    compiler - doing so with GCC 9.2 showed several
    inconsistencies which have been corrected.
  * There is support for cross-compiling the C and Fortran code
    in R and standard packages on suitable (Linux) platforms.
    This is mainly intended to allow developers to test later
    versions of compilers - for example using GCC 9.2 or 10.x has
    detected issues that GCC 8.3 in Rtools40 does not.
  * There is experimental support for cross-building R packages
    with C, C++ and/or Fortran code.
  * The R installer can now be optionally built to support a single
    architecture (only 64-bit or only 32-bit).
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++14 where
    available (which it is on all currently checked platforms): if
    not (as before) C++11 is used if available otherwise C++ is not
    supported.
    Packages which specify C++11 will still be installed using C++11.
    C++14 compilers may give deprecation warnings, most often for
    std::random_shuffle (deprecated in C++14 and removed in C++17).
    Either specify C++11 (see 'Writing R Extensions') or modernize
    the code and if needed specify C++14.  The latter has been
    supported since R 3.4.0 so the package's DESCRIPTION would need
    to include something like
    Depends: R (&gt;= 3.4)
  PACKAGE INSTALLATION on Windows:
  * R CMD INSTALL and R CMD SHLIB make use of their flag --use-LTO
    when the LTO_OPT make macro is set in file etc/${R_ARCH}/Makeconf
    or in a personal/site Makevars file.  (For details see 'Writing R
    Extensions' SS4.5.)
    This provides a valuable check on code consistency.  It does work
    with GCC 8.3 as in Rtools40, but that does not detect everything
    the CRAN checks with current GCC do.
  PACKAGE INSTALLATION on macOS:
  * The default personal library directory on builds with
  - -enable-aqua (including CRAN builds) now differs by CPU type,
    one of
    ~/Library/R/x86_64/x.y/library
    ~/Library/R/arm64/x.y/library
    This uses the CPU type R (and hence the packages) were built for,
    so when a x86_64 build of R is run under Rosetta emulation on an
    arm64 Mac, the first is used.
  UTILITIES:
  * R CMD check can now scan package functions for bogus return
    statements, which were possibly intended as return() calls (wish
    of PR#17180, patch by Sebastian Meyer). This check can be
    activated via the new environment variable
    _R_CHECK_BOGUS_RETURN_, true for --as-cran.
  * R CMD build omits tarballs and binaries of previous builds from
    the top-level package directory.  (PR#17828, patch by Sebastian
    Meyer.)
  * R CMD check now runs sanity checks on the use of LazyData, for
    example that a data directory is present and that
    LazyDataCompression is not specified without LazyData and has a
    documented value.  For packages with large LazyData databases
    without specifying LazyDataCompression, there is a reference to
    the code given in 'Writing R Extensions' SS1.1.6 to test the
    choice of compression (as in all the CRAN packages tested a
    non-default method was preferred).
  * R CMD build removes LazyData and LazyDataCompression fields from
    the DESCRIPTION file of packages without a data directory.
  ENCODING-RELATED CHANGES:
  * The parser now treats \Unnnnnnnn escapes larger than the upper
    limit for Unicode points (\U10FFFF) as an error as they cannot be
    represented by valid UTF-8.
    Where such escapes are used for outputting non-printable
    (including unassigned) characters, 6 hex digits are used (rather
    than 8 with leading zeros).  For clarity, braces are used, for
    example \U{0effff}.
  * The parser now looks for non-ASCII spaces on Solaris (as
    previously on most other OSes).
  * There are warnings (including from the parser) on the use of
    unpaired surrogate Unicode points such as \uD834.  (These cannot
    be converted to valid UTF-8.)
  * Functions nchar(), tolower(), toupper() and chartr() and those
    using regular expressions have more support for inputs with a
    marked Latin-1 encoding.
  * The character-classification functions used (by default) to
    replace the system iswxxxxx functions on Windows, macOS and AIX
    have been updated to Unicode 13.0.0.
    The character-width tables have been updated to include new
    assignments in Unicode 13.0.0.
  * The code for evaluating default (extended) regular expressions
    now uses the same character-classification functions as the rest
    of R (previously they differed on Windows, macOS and AIX).
  * There is a build-time option to replace the system's
    wide-character wctrans C function by tables shipped with R: use
    configure option --with-internal-towlower or (on Windows)
  - DUSE_RI18N_CASE in CFLAGS when building R.  This may be needed
    to allow tolower() and toupper() to work with Unicode characters
    beyond the Basic Multilingual Plane where not supported by system
    functions (e.g. on Solaris where it is the new default).
  * R is more careful when truncating UTF-8 and other multi-byte
    strings that are too long to be printed, passed to the system or
    libraries or placed into an internal buffer.  Truncation will no
    longer produce incomplete multibyte characters.
  DEPRECATED AND DEFUNCT:
  * Function plclust() from the package stats and
    package.dependencies(), pkgDepends(), getDepList(),
    installFoundDepends(), and vignetteDepends() from package tools
    are defunct.
  * Defunct functions checkNEWS() and readNEWS() from package tools
    and CRAN.packages() from utils have been removed.
  * R CMD config CXXCPP is defunct (it was deprecated in R 3.6.2).
  * parallel::detectCores() drops support for Irix (retired in 2013).
  * The LINPACK argument to chol.default(), chol2inv(),
    solve.default() and svd() has been defunct since R 3.1.0.  It was
    silently ignored up to R 4.0.3 but now gives an error.
  * Subsetting/indexing, such as ddd[*] or ddd$x on a DOTSXP
    (dot-dot-dot) object ddd has been disabled; it worked by accident
    only and was undocumented.
  BUG FIXES:
  * Many more C-level allocations (mainly by malloc and strdup) are
    checked for success with suitable alternative actions.
  * Bug fix for replayPlot(); this was turning off graphics engine
    display list recording if a recorded plot was replayed in the
    same session.  The impact of the bug became visible if resize the
    device after replay OR if attempted another savePlot() after
    replay (empty display list means empty screen on resize or empty
    saved plot).
  * R CMD check etc now warn when a package exports non-existing S4
    classes or methods, also in case of no "methods" presence.
    (Reported by Alex Bertram; reproducible example and patch by
    Sebastian Meyer in PR#16662.)
  * boxplot() now also accepts calls for labels such as ylab, the
    same as plot().  (Reported by Marius Hofert.)
  * The help page for xtabs() now correctly states that addNA is
    setting na.action = na.pass among others.  (Reported as PR#17770
    by Thomas Soeiro.)
  * The R CMD check &lt;pkg&gt; gives a longer and more comprehensible
    message when DESCRIPTION misses dependencies, e.g., in Imports:.
    (Thanks to the contributors of PR#17179.)
  * update.default() now calls the generic update() on the formula to
    work correctly for models with extended formulas.  (As reported
    and suggested by Neal Fultz in PR#17865.)
  * The horizontal position of leaves in a dendrogram is now correct
    also with center = FALSE.  (PR#14938, patch from Sebastian
    Meyer.)
  * all.equal.POSIXt() no longer warns about and subsequently ignores
    inconsistent "tzone" attributes, but describes the difference in
    its return value (PR#17277).  This check can be disabled _via_
    the new argument check.tzone = FALSE as suggested by Sebastian
    Meyer.
  * as.POSIXct() now populates the "tzone" attribute from its tz
    argument when x is a logical vector consisting entirely of NA
    values.
  * x[[2^31]] &lt;- v now works.  (Thanks to the report and patch by
    Suharto Anggono in PR#17330.)
  * In log-scale graphics, axis() ticks and label positions are now
    computed more carefully and symmetrically in their range,
    typically providing _more_ ticks, fulfilling wishes in PR#17936.
    The change really corresponds to an improved axisTicks() (package
    grDevices), potentially influencing grid and lattice, for
    example.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now correct to at
    least five digits where it was catastrophically wrong,
    previously.
  * sum(df) and similar "Summary"- and "Math"-group member functions
    now work for data frames df with logical columns, notably also of
    zero rows.  (Reported to R-devel by Martin "b706".)
  * unsplit() had trouble with tibbles due to unsound use of rep(NA,
    len)-indexing, which should use NA_integer_ (Reported to R-devel
    by Mario Annau.)
  * pnorm(x, log.p = TRUE) underflows to -Inf slightly later.
  * show(&lt;hidden S4 generic&gt;) prints better and without quotes for
    non-hidden S4 generics.
  * read.table() and relatives treated an "NA" column name as missing
    when check.names = FALSE PR#18007.
  * Parsing strings containing UTF-16 surrogate pairs such as
    "\uD834\uDD1E" works better on some (uncommon) platforms.
    sprintf("%X", utf8ToInt("\uD834\uDD1E")) should now give "1D11E"
    on all platforms.
  * identical(x,y) is no longer true for differing DOTSXP objects,
    fixing PR#18032.
  * str() now works correctly for DOTSXP and related exotics, even
    when these are doomed.
    Additionally, it no longer fails for lists with a class and
    "irregular" method definitions such that e.g. lapply(*) will
    necessarily fail, as currently for different igraph objects.
  * Too long lines in environment files (e.g. Renviron) no longer
    crash R. This limit has been increased to 100,000 bytes.
    (PR#18001.)
  * There is a further workaround for FreeType giving incorrect
    italic font faces with cairo-based graphics devices on macOS.
  * add_datalist(*, force = TRUE) (from package tools) now actually
    updates an existing data/datalist file for new content.  (Thanks
    to a report and patch by Sebastian Meyer in PR#18048.)
  * cut.Date() and cut.POSIXt() could produce an empty last interval
    for breaks = "months" or breaks = "years".  (Reported as PR#18053
    by Christopher Carbone.)
  * Detection of the encoding of 'regular' macOS locales such as
    en_US (which is UTF-8) had been broken by a macOS change:
    fortunately these are now rarely used with en_US.UTF-8 being
    preferred.
  * sub() and gsub(pattern, repl, x, *) now keep attributes of x such
    as names() also when pattern is NA (PR#18079).
  * Time differences ("difftime" objects) get a replacement and a
    rep() method to keep "units" consistent.  (Thanks to a report and
    patch by Nicolas Bennett in PR#18066.)
  * The \RdOpts macro, setting defaults for \Sexpr options in an Rd
    file, had been ineffective since R 2.12.0: it now works again.
    (Thanks to a report and patch by Sebastian Meyer in PR#18073.)
  * mclapply and pvec no longer accidentally terminate parallel
    processes started before by mcparallel or related calls in
    package parallel (PR#18078).
  * grep and other functions for evaluating (extended) regular
    expressions handle in Unicode also strings not explicitly flagged
    UTF-8, but flagged native when running in UTF-8 locale.
  * Fixed a crash in fifo implementation on Windows (PR#18031).
  * Binary mode in fifo on Windows is now properly detected from
    argument open (PR#15600, PR#18031).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1622808000">- The line %{__install} -m 755 -d %{_infodir}
  no longer works in TW or Factory.
  But without that line it works everywhere. So this instruction
  was commented out of the spec file.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1628596800">- CHANGES IN R 4.1.1:
  NEW FEATURES:
  * require(pkg, quietly = TRUE) is quieter and in particular does
    not warn if the package is not found.
  DEPRECATED AND DEFUNCT:
  * Use of ftp:// URIs should be regarded as deprecated, with
    on-going support confined to method = "libcurl" and not routinely
    tested.  (Nowadays no major browser supports them.)
  * The non-default method = "internal" is deprecated for http:// and
    ftp:// URIs for both download.file and url.
  * On Windows, method = "wininet" is deprecated for http://,
    https:// and ftp:// URIs for both download.file and url.  (A
    warning is only given for ftp://.)
    For ftp:// URIs the default method is now "libcurl" if available
    (which it is on CRAN builds).
    method = "wininet" remains the default for http:// and https://
    URIs but if libcurl is available, using method = "libcurl" is
    preferred.
  INSTALLATION:
  * make check now works also without a LaTeX installation.  (Thanks
    to Sebastian Meyer's PR#18103.)
  BUG FIXES:
  * make check-devel works again in an R build configured with
  - -without-recommended-packages.
  * qnbinom(p, size, mu) for large size/mu is correct now in a range
    of cases (PR#18095); similarly for the (size, prob)
    parametrization of the negative binomial.  Also qpois() and
    qbinom() are better and or faster for extreme cases.  The
    underlying C code has been modularized and is common to all four
    cases of discrete distributions.
  * gap.axis is now part of the axis() arguments which are passed
    from bxp(), and hence boxplot().  (Thanks to Martin Smith's
    report and suggestions in PR#18109.)
  * .First and .Last can again be set from the site profile.
  * seq.int(from, to, *) and seq.default(..) now work better in large
    range cases where from-to is infinite where the two boundaries
    are finite.
  * all.equal(x,y) now returns TRUE correctly also when several
    entries of abs(x) and abs(y) are close to .Machine$double.xmax,
    the largest finite numeric.
  * model.frame() now clears the object bit when removing the class
    attribute of a value via na.action (PR#18100).
  * charClass() now works with multi-character strings on Windows
    (PR#18104, fixed by Bill Dunlap).
  * encodeString() on Solaris now works again in Latin-1 encoding on
    characters represented differently in UTF-8.  Support for
    surrogate pairs on Solaris has been improved.
  * file.show() on Windows now works with non-ASCII path names
    representable in the current native encoding (PR#18132).
  * Embedded R on Windows can now find R home directory via the
    registry even when installed only for the current user
    (PR#18135).
  * pretty(x) with finite x now returns finite values also in the
    case where the extreme x values are close in size to the maximal
    representable number .Machine$double.xmax.
    Also, it's been tweaked for very small ranges and when a boundary
    is close (or equal) to zero; e.g., pretty(c(0,1e-317)) no longer
    has negative numbers, currently still warning about a very small
    range, and pretty(2^-(1024 - 2^-1/(c(24,10)))) is more accurate.
  * The error message for not finding vignette files when weaving has
    correct file sizes now. (Thanks to Sebastian Meyer's PR#18154.)
  * dnbinom(20, &lt;large&gt;, 1) now correctly gives 0, and similar cases
    are more accurate with underflow precaution.  (Reported by Francisco Vera Alcivar in PR#18072.)</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635163200">- repaired https://bugzilla.suse.com/show_bug.cgi?id=1191380
  (rpmacros now go to rpmmacrodir)
- minor clean-ups in spec file</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635768000">- CHANGES IN R 4.1.2:
  C-LEVEL FACILITIES:
  * The workaround in headers R.h and Rmath.h (using namespace std;)
    for the Oracle Developer Studio compiler is no longer needed now
    C++11 is required so has been removed.  A couple more usages of
    log() (which should have been std::log()) with an int argument
    are reported on Solaris.
  * The undocumented limit of 4095 bytes on messages from the
    S-compatibility macros PROBLEM and MESSAGE is now documented and
    longer messages will be silently truncated rather than
    potentially causing segfaults.
  * If the R_NO_SEGV_HANDLER environment variable is non-empty, the
    signal handler for SEGV/ILL/BUS signals (which offers recovery
    user interface) is not set. This allows more reliable debugging
    of crashes that involve the console.
  DEPRECATED AND DEFUNCT:
  * The legacy S-compatibility macros PROBLEM, MESSAGE, ERROR, WARN,
    WARNING, RECOVER, ... are deprecated and will be hidden in R
    4.2.0. R's native interface of Rf_error and Rf_warning has long
    been preferred.
  BUG FIXES:
  * .mapply(F, dots, .) no longer segfaults when dots is not a list
    and uses match.fun(F) as always documented; reported by Andrew
    Simmons in PR#18164.
  * hist(&lt;Date&gt;, ...) and hist(&lt;POSIXt&gt;, ...)  no longer pass
    arguments for rect() (such as col and density) to axis().
    (Thanks to Sebastian Meyer's PR#18171.)
  * \Sexpr{ch} now preserves Encoding(ch). (Thanks to report and
    patch by Jeroen Ooms in PR#18152.)
  * Setting the RNG to "Marsaglia-Multicarry" e.g., by RNGkind(), now
    warns in more places, thanks to Andr'e Gillibert's report and
    patch in PR#18168.
  * gray(numeric(), alpha=1/2) no longer segfaults, fixing PR#18183,
    reported by Till Krenz.
  * Fixed dnbinom(x, size=&lt;very_small&gt;, .., log=TRUE) regression,
    reported by Martin Morgan.
  * as.Date.POSIXlt(x) now keeps names(x), thanks to Davis Vaughan's
    report and patch in PR#18188.
  * model.response() now strips an "AsIs" class typically, thanks to
    Duncan Murdoch's report and other discussants in PR#18190.
  * try() is considerably faster in case of an error and long call,
    as e.g., from some do.call().  Thanks to Alexander Kaever's
    suggestion posted to R-devel.
  * qqline(y = &lt;object&gt;) such as y=I(.), now works, see also
    PR#18190.
  * Non-integer mgp par() settings are now handled correctly in
    axis() and mtext(), thanks to Mikael Jagan and Duncan Murdoch's
    report and suggestion in PR#18194.
  * formatC(x) returns length zero character() now, rather than ""
    when x is of length zero, as documented, thanks to Davis
    Vaughan's post to R-devel.
  * removeSource(fn) now retains (other) attributes(fn).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1647000000">- CHANGES IN R 4.1.3:
  NEW FEATURES:
  * The default version of Bioconductor has been changed to 3.14.
    (This is used by setRepositories and the menus in GUIs.)
  UTILITIES:
  * R CMD check --as-cran has a workaround for a bug in versions of
    file up to at least 5.41 which mis-identify DBF files last
    changed in 2022 as executables.
  C-LEVEL FACILITIES:
  * The legacy S-compatibility macros SINGLE_* in R_ext/Constants.h
    (included by R.h) are deprecated and will be removed in R 4.2.0.
  BUG FIXES:
  * Initialization of self-starting nls() models with initialization
    functions following the pre-R-4.1.0 API (without the ...
    argument) works again for now, with a deprecation warning.
  * Fixed quoting of ~autodetect~ in Java setting defaults to avoid
    inadvertent user lookup due to leading ~, reported in PR#18231 by
    Harold Gutch.
  * substr(., start, stop) &lt;- v now treats _negative_ stop values
    correctly.  Reported with a patch in PR#18228 by Brodie Gaslam.
  * Subscripting an array x without dimnames by a
    length(dim(x))-column character matrix gave "random" non-sense,
    now an error; reported in PR#18244 by Mikael Jagan.
  * ...names() now matches names(list(...)) closely, fixing PR#18247.
  * all.equal(*, scale = s) now works as intended when length(s) &gt; 1,
    partly thanks to Michael Chirico's PR#18272.
  * print(x) for long vectors x now also works for named atomic
    vectors or lists and prints the correct number when reaching the
    getOption("max.print") limit; partly thanks to a report and
    proposal by Hugh Parsonage to the R-devel list.
  * all.equal(&lt;selfStart&gt;, *) no longer signals a deprecation
    warning.
  * reformulate(*, response=r) gives a helpful error message now when
    length(r) &gt; 1, thanks to Bill Dunlap's PR#18281.
  * Modifying globalCallingHandlers inside withCallingHandlers() now
    works or fails correctly, thanks to Henrik Bengtsson's PR#18257.
  * hist(&lt;Date&gt;, breaks = "days") and hist(&lt;POSIXt&gt;, breaks = "secs")
    no longer fail for inputs of length 1.
  * qbeta(.001, .9, .009) and similar cases now converge correctly
    thanks to Ben Bolker's report in PR#17746.
  * window(x, start, end) no longer wrongly signals "'start' cannot
    be after 'end'", fixing PR#17527 and PR#18291.
  * data() now checks that its (rarely used) list argument is a
    character vector - a couple of packages passed other types and
    gave incorrect results.
  * which() now checks its arr.ind argument is TRUE rather coercing
    to logical and taking the first element - which gave incorrect
    results in package code.
  * model.weights() and model.offset() more carefully extract their
    model components, thanks to Ben Bolker and Tim Taylor's R-devel
    post.
  * list.files(recursive = TRUE) now shows all broken symlinks
    (previously, some of them may have been omitted, PR#18296).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1650628800">- CHANGES IN R 4.2.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * The formula method of aggregate() now matches the generic in
    naming its first argument x (resolving PR#18299 by Thomas
    Soeiro).
    This means that calling aggregate() with a formula as a named
    first argument requires name formula in earlier versions of R and
    name x now, so portable code should not name the argument (code
    in many packages did).
  * Calling &amp;&amp; or || with either argument of length greater than one
    now gives a warning (which it is intended will become an error).
  * Calling if() or while() with a condition of length greater than
    one gives an error rather than a warning.  Consequently,
    environment variable _R_CHECK_LENGTH_1_CONDITION_ no longer has
    any effect.
  * Windows users should consult the WINDOWS section below for some
    profound changes including
  * Support for 32-bit builds has been dropped.
  * UTF-8 locales are used where available.
  * The default locations for the R installation and personal
    library folder have been changed.
    Thanks to Tomas Kalibera for months of work on the Windows port
    for this release.
  NEW FEATURES:
  * matrix(x, n, m) now warns in more cases where length(x) differs
    from n * m, as suggested by Abby Spurdle and Wolfgang Huber in
    Feb 2021 on the R-devel mailing list.
    This warning can be turned into an error by setting environment
    variable _R_CHECK_MATRIX_DATA_ to TRUE: R CMD check --as-cran
    does so unless it is already set.
  * Function file_test() in package utils gains tests for symlinks,
    readability and writability.
  * capabilities("libxml") is now false.
    The description of capabilities("http/ftp") now reflects that it
    refers to the default method, no longer the internal one.
  * simplify2array() gains an except argument for controlling the
    exceptions used by sapply().
  * Environment variables R_LIBS_USER and R_LIBS_SITE are both now
    set to the R system default if unset or empty, and can be set to
    NULL to indicate an empty list of user or site library
    directories.
  * The warning for axis()(-like) calls in cases of relatively small
    ranges (typically in log-scale situations) is slightly improved
    _and_ suppressed from explicit calls to .axisPars() as has always
    been the intention.
  * The contrasts setter function `contrasts&lt;-` gains an explicit
    default how.many = NULL rather than just using missing(how.many).
  * grid.pretty() gains a new optional argument n = 5.
  * There is a new function .pretty() with option bounds as a
    technical-utility version of pretty().  It and pretty() gain a
    new argument f.min with a better than back-compatible default.
  * Function grDevices::axisTicks() and related functions such as
    graphics::axis() work better, notably for the log scale; partly
    because of the pretty() improvements, but also because care is
    taken e.g., when ylim is finite but diff(ylim) is infinite.
  * nclass.FD() gains a digits option.
  * The R Mathlib internal C function bd0() (called indirectly from a
    dozen probability density and distribution functions such as
    dpois(), dbinom(), dgamma(), pgamma() _etc_) has been
    complemented by a more sophisticated and (mostly) more accurate C
    function ebd0(), currently called only by internal dpois_raw()
    improving accuracy for R level dpois() and potentially others
    calling it such as dnbinom(), dgamma() or pgamma().  (Thanks to
    Morten Welinder's PR#15628.)
  * write.ftable() gains sep = " " argument as suggested by Thomas
    Soeiro.
  * The names of the locale categories supported by R's
    Sys.getlocale() and Sys.setlocale() are now provided by variable
    .LC.categories in the base namespace.
  * The Date and POSIXt methods for hist() and the histogram method
    for plot() now also use the new default col = "lightgray" in
    consistency with the corresponding change to hist()'s default for
    R 4.0.0.
  * hist.default() gains new fuzz argument, and the histogram plot
    method no longer uses fractional axis ticks when displaying
    counts ("Frequency").
  * mapply() and hence Map() now also obey the "max-or-0-if-any"
    recycling rule, such that, e.g., Map(`+`, 1:3, 1[0]) is valid
    now.
  * as.character(&lt;obj&gt;) for "hexmode" or "octmode" objects now
    fulfils the important basic rule as.character(x)[j] ===
    as.character(x[j]).
  * The set utility functions, notably intersect() have been tweaked
    to be more consistent and symmetric in their two set arguments,
    also preserving a common mode.
  * substr(ch, start,end) &lt;- new now e.g., preserves names(ch); ditto
    for substring(), thanks to a patch from Brodie Gaslam.
  * plot(&lt;lm&gt;) gains a extend.ylim.f argument, in partial response to
    PR#15285; further PR#17784 is fixed thanks to several
    contributors and a patch by Elin Waring.  The Cook's dist
    contours get customizable via cook.col and cook.lty with a
    different default color and their legend is nicer by default and
    customizable via cook.legendChanges.
  * Attempting to subset an object that is not subsettable now
    signals an error of class notSubsettableError. The
    non-subsettable object is contained in the object field of the
    error condition.
  * Subscript-out-of-bounds errors are now signaled as errors of
    class subscriptOutOfBoundsError.
  * Stack-overflow errors are now signaled as errors inheriting from
    class stackOverflowError. See ?stackOverflowError for more
    details.
  * New partly experimental Sys.setLanguage() utility, solving the
    main problem of PR#18055.
  * gettext() and gettextf() get a new option trim = TRUE which when
    set to false allows translations for strings such as "Execution
    halted\n" typical for C code.
  * An experimental implementation of hash tables is now available.
    See ?hashtab for more details.
  * identical() gains a extptr.as.ref argument for requesting that
    external pointer objects be compared as reference objects.
  * reorder() gets an argument decreasing which it passes to sort()
    for level creation; based on the wish and patch by Thomas Soeiro
    in PR#18243.
  * as.vector() gains a data.frame method which returns a simple
    named list, also clearing a long standing 'FIXME' to enable
    as.vector(&lt;data.frame&gt;, mode="list").  This breaks code relying
    on as.vector(&lt;data.frame&gt;) to return the unchanged data frame.
  * legend() is now vectorized for arguments cex, x.intersp, and
    text.width.  The latter can now also be specified as a vector
    (one element for each column of the legend) or as NA for
    computing a proper column wise maximum value of strwidth(legend).
    The argument y.intersp can be specified as a vector with one
    entry for each row of the legend.
    legend() also gains new arguments title.cex and title.font.
    Thanks to Swetlana Herbrandt.
  * Deparsing no longer remaps attribute names dim, dimnames, levels,
    names and tsp to historical S-compatible names (which structure()
    maps back).
  * sample() and sample.int() have additional sanity checks on their
    size and n arguments.
    all.equal.numeric() gains a sanity check on its tolerance
    argument - calling all.equal(a, b, c) for three numeric vectors
    is a surprisingly common error.
    mean(na.rm =), rank(na.last =), barplot(legend.text =),
    boxplot(), contour(drawlabels =), polygon(border =) and
    methods::is(class2 =) have more robust sanity checks on their
    arguments.
    R CMD Rd2pdf (used by R CMD check) has a more robust sanity check
    on the format of \alias{} commands.
  * psigamma(x, deriv) for negative x now also works for deriv = 4
    and 5; their underlying C level dpsifn() is documented in
    'Writing R Extensions'.
  * The HTML help system now uses HTML5 (wish of PR#18149).
  * ks.test() now provides exact p-values also with ties and MC
    p-values in the two-sample (Smirnov) case.  By Torsten Hothorn.
  * ks.test() gains a formula interface, with y ~ 1 for the
    one-sample (Kolmogorov) test and y ~ group for the two-sample
    (Smirnov) test.  Contributed by Torsten Hothorn.
  * The return value from ks.test() now has class c("ks.test",
    "htest") - packages using try() need to take care to use
    inherits() and not == on the class.
  * New functions psmirnov(), qsmirnov() and rsmirnov() in package
    stats implementing the asymptotic and exact distributions of the
    two-sample Smirnov statistic.
  * iconv() now allows sub = "c99" to use C99-style escapes for UTF-8
    inputs which cannot be converted to encoding to.
  * In a forward pipe |&gt; expression it is now possible to use a named
    argument with the placeholder _ in the rhs call to specify where
    the lhs is to be inserted.  The placeholder can only appear once
    on the rhs.
  * The included LAPACK sources have been updated to version 3.10.0,
    except for the four Fortran 77 routines which 3.10.0 has
    re-implemented in Fortran 90 (where the older versions have been
    retained as the R build process does not support Fortran 90).
  * path.expand() and most other uses of tilde expansion now warn if
    a path would be too long if expanded.  (An exception is
    file.exists(), which silently returns false.)
  * trunc(&lt;Date&gt;, *) now supports units = "months" or "years" for
    consistency with the POSIXt method, thanks to Dirk Eddelbuettel's
    proposal in PR#18099.
  * list2DF() now checks that its arguments are of the same length,
    rather than use recycling.
  * The HTML help system has several new features: LaTeX-like math
    can be typeset using either KaTeX or MathJax, usage and example
    code is highlighted using Prism, and for dynamic help the output
    of examples and demos can be shown within the browser if the
    knitr package is installed. These features can be disabled by
    setting the environment variable _R_HELP_ENABLE_ENHANCED_HTML_ to
    a false value.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 15
    and so packages that provide graphics devices should be
    reinstalled.
  * The grid package now allows the user to specify a "vector" of
    pattern fills.  The fill argument to gpar() accepts a list of
    gradients and/or patterns and the functions linearGradient(),
    radialGradient(), and pattern() have a new group argument.
    Points grobs (data symbols) can now also have a pattern fill.
    The grobCoords() function now returns a more informative and
    complex result.
  * The grid package has new functions for drawing isolated groups:
    grid.group(), grid.define(), and grid.use().  These functions add
    compositing operators and affine transformations to R's graphics
    capabilities.
    The grid package also has new functions for stroking and filling
    paths: grid.stroke(), grid.fill(), and grid.fillStroke().
    A new function as.path() allows the user to specify the fill rule
    for a path that is to be used for clipping, stroking, or filling;
    available options are "winding" and "evenodd".  A new function
    as.mask() allows the user to specify the type of a mask;
    available options are "alpha" and "luminance".
    These new features are only supported so far (at most) on the
    Cairo-based graphics devices and on the pdf() device.
  * dev.capabilities() reports on device support for the new
    features.
  * par() now warns about unnamed non-character arguments to prevent
    misuse such as {usr &lt;- par("usr"); par(usr)}.
  INSTALLATION:
  * Facilities for accessing ftp:// sites are no longer tested
    (except _pro tem_ for curlGetHeaders()) as modern browsers have
    removed support.
  * R can now be built with DEFS = -DSTRICT_R_HEADERS .
  PACKAGE INSTALLATION:
  * R CMD INSTALL no longer tangles vignettes. This completes an R
    CMD build change in R 3.0.0 and affects packages built before R
    3.0.2. Such packages should be re-made with R CMD build to have
    the tangled R code of vignettes shipped with the tarball.
  * USE_FC_LEN_T will become the default: this uses the correct
    prototypes for Fortran BLAS/LAPACK routines called from C/C++,
    and requires adjustment of most such calls - see 'Writing R
    Extensions' SS6.6.2.  (This has been supported since R 3.6.2.)
  * Package installation speed for packages installed with
    keep.source has been improved. This resolve the issue reported by
    Ofek Shilon in PR#18236.
  UTILITIES:
  * R CMD check can optionally report files/directories left behind
    in home, /tmp (even though TMPDIR is set) and other directories.
    See the "R Internals" manual for details.
  * R CMD check now reports byte-compilation errors during
    installation.  These are not usually fatal but may result in
    parts of the package not being byte-compiled.
  * _R_CHECK_DEPENDS_ONLY_ can be applied selectively to examples,
    tests and/or vignettes in R CMD check: see the "R Internals"
    manual.
  * _R_CHECK_SRC_MINUS_W_IMPLICIT_ now defaults to true: recent
    versions of Apple clang on macOS have made implicit function
    declarations in C into a compilation error.
  * R CMD check --as-cran makes use of the environment variable
    AUTORECONF.  See the "R Internals" manual SS8 for further details.
  * R CMD check --use-valgrind also uses valgrind when re-building
    vignettes as some non-Sweave vignettes unhelpfully comment out
    all their code when R CMD check runs vignettes.
  * Errors in re-building vignettes (unless there are LaTeX errors)
    are reported by R CMD check as ERROR rather than WARNING when
    running vignettes has been skipped (as it frequently is in CRAN
    checks and by --as-cran).
  * R CMD Rd2pdf gains a --quiet option that is used by R CMD build
    when building the PDF package manual.
  * R CMD Rd2pdf now always runs LaTeX in batch mode, consistent with
    Texinfo &gt;= 6.7. The --batch option is ignored.
  * R CMD build and R CMD check now include the Rd file name and line
    numbers in the error message of an \Sexpr evaluation failure.
  * For packages using the \doi Rd macro (now an install-time \Sexpr)
    but no other dynamic Rd content, R CMD build now produces a
    smaller tarball and is considerably faster - skipping temporary
    package installation.
  C-LEVEL FACILITIES:
  * The non-API header R_ext/R-ftp-http.h is no longer provided, as
    the entry points it covered are now all defunct.
  * A number of non-API declarations and macro definitions have been
    moved from the installed header Rinternals.h to the internal
    header Defn.h. Packages that only use entry points and
    definitions documented to be part of the API as specified in
    'Writing R Extensions' SS6 should not be affected.
  * The macro USE_RINTERNALS no longer has any effect when compiling
    package code.  Packages which also use R_NO_REMAP will need to
    ensure that the remapped names are used for calls to API
    functions that were formerly also made available as macros.
  * The deprecated legacy S-compatibility macros PROBLEM, MESSAGE,
    ERROR, WARN, WARNING, RECOVER, ... are no longer defined in
    R_exts/RS.h (included by R.h).  Replace these by calls to
    Rf_error and Rf_warning (defined in header R_ext/Error.h included
    by R.h).
    Header R_ext/RS.h no longer includes R_ext/Error.h.
  * Header R_ext/Constants.h (included by R.h) when included from C++
    now includes the C++ header cfloat rather than the C header
    float.h (now possible as C++11 is required).
  * The legacy S-compatibility macros DOUBLE_* in R_ext/Constants.h
    (included by R.h) are deprecated.
  * The deprecated S-compatibility macros SINGLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * R_Calloc, R_Free and R_Realloc are preferred to their unprefixed
    forms and error messages now use the prefix. These forms were
    introduced in R 3.4.0 and are available even when
    STRICT_R_HEADERS is defined.
  * rmultinom has been documented in 'Writing R Extensions' SS6 so is
    now part of the R API.
  * Similarly, Rtanpi, called from R level tanpi() is now part of the
    R API.
  * The long-deprecated, undocumented and non-API entry point call_R
    is no longer declared in R_ext/RS.h (included by R.h).
  * The header S.h which has been unsupported since Jan 2016 has been
    removed.  Use R.h instead.
  DEPRECATED AND DEFUNCT:
  * The (non-default and deprecated) method = "internal" for
    download.file() and url() no longer supports http:// nor ftp://
    URIs.  (It is used only for file:// URIs.)
    On Windows, download.file(method = "wininet") no longer supports
    ftp:// URIs.  (It is no longer the default method, which is
    "libcurl" and does.)
    On Windows, the deprecated method = "wininet" now gives a warning
    for http:// and https:// URIs for both download.file() and url().
    (It is no longer the default method.)
  * On Windows, the command-line option --max-mem-size and
    environment variable R_MAX_MEM_SIZE are defunct.  The memory
    allocation limit was important for 32-bit builds, but these are
    no longer supported.
  * default.stringsAsFactors() is now formally deprecated, where that
    was only mentioned on its regular help page, previously.  So it
    now gives a warning if called.
  * unix.time() is defunct now; it had been deprecated since R 3.4.0.
  BUG FIXES:
  * Setting digits = 0 in format(), print.default() (and hence
    typically print()) or options() is again invalid.  Its behaviour
    was platform-dependent, and it is unclear what "zero significant
    digits" should mean (PR#18098).
  * Messages from C code in the cairo section of package grDevices
    are now also offered for translation, thanks to Michael Chirico's
    PR#18123.
  * mean(x) with finite x now is finite also without "long.double"
    capability.
  * R CMD Rd2pdf no longer leaves an empty build directory behind
    when it aborts due to an already existing output file.  (Thanks
    to Sebastian Meyer's PR#18141.)
  * density(x, weights = w, na.rm = TRUE) when anyNA(x) is true, now
    removes weights "in parallel" to x, fixing PR#18151, reported by
    Matthias Gondan.  Additionally, it gets a subdensity option.
  * Conversion of \Sexpr[]{&lt;expR&gt;} to LaTeX or HTML no longer
    produces long blocks of empty lines when &lt;expR&gt; itself contains
    several lines all producing empty output.  Thanks to a report and
    patch by Ivan Krylov posted to R-devel.
  * R CMD build no longer fails if a package vignette uses child
    documents and inst/doc exists.  (Thanks to Sebastian Meyer's
    PR#18156.)
  * When an R documentation ('help' source) file man/foo.Rd in a
    package has \donttest{..} examples with a syntax error, it is now
    signalled as ERROR and with correct line numbers relating to the
  * -Ex.R file, thanks to Duncan Murdoch and Sebastian Meyer's
    reports and patch proposals in PR#17501.
  * Improved determination of the correct translation domain in
    non-base packages, addressing the combination of PR#18092 and
    PR#17998 (#c6) with reports and _augmented_ patch #2904 by
    Suharto Anggono.
    Note that "R-base" is no longer the default domain e.g., for
    top-level calls to gettext(); rather translation needs explicit
    domain = * specification in such cases.
  * identical(attrib.as.set=FALSE) now works correctly with data
    frames with default row names (Thanks to Charlie Gao's PR#18179).
  * txtProgressBar() now enforces a non-zero width for argument char,
    without which no progress can be visible.
  * dimnames(table(d)) is more consistent in the case where d is a
    list with a single component, thanks to Thomas Soeiro's report to
    R-devel.
    Further, table(d1, d2) now gives an error when d1 and d2 are data
    frames as suggested by Thomas in PR#18224.
  * Fix for drawing semi-transparent lines and fills on the native
    Windows graphics device (PR#18219 and PR#16694).  Thanks to Nick
    Ray for helpful diagnosis on Bugzilla.
  * The deparser now wraps sub-expressions such as if(A) ..  with
    parentheses when needed; thanks to Duncan Murdoch's PR#18232 and
    Lionel Henry's patches there.
  * remove.packages() no longer tries to uninstall Priority: base
    packages, thanks to a report and suggestions by Colin Fay in
    PR#18227.
  * win.metafile() now has xpinch and ypinch arguments so that the
    user can override Windows' (potentially wrong) guess at device
    dimensions.
  * x[i] and x[[i]] for non-integer i should now behave in all cases
    as always documented: the index used is equivalent to
    as.integer(i) unless that would overflow where trunc(i) is used
    instead; thanks to Suharto Anggono's report and patch proposals
    in PR#17977.
  * asOneSidedFormula() now associates the resulting formula with the
    global environment rather than the evaluation environment created
    for the call.
  * &lt;bibentry&gt;$name now matches the field name case-insensitively,
    consistent with bibentry() creation and the replacement method.
  * cbind() failed to detect some length mismatches with a mixture of
    time-series and non-time-series inputs.
  * The default LaTeX style file Sweave.sty used by the RweaveLatex
    driver no longer loads the obsolete ae package; thanks to a
    report by Thomas Soeiro in PR#18271.  Furthermore, it now skips
    \usepackage[T1]{fontenc} for engines other than pdfTeX (if
    detected) or if the new [nofontenc] option is used.
  * smooth.spline() now stores its logical cv argument more safely,
    fixing a rare bug when printing, and also stores n.
  * smooth.spline(x,y,*) now computes the cv.crit statistic
    correctly, also when is.unsorted(x), fixing PR#18294.
  * The data.frame method of rbind() now warns when binding
    not-wholly-recycling vectors, by analogy to the default method
    (for matrices).
  * setAs() finds the correct class for name to when multiple
    packages define a class with that name. Thanks to Gabor Csardi
    for the report.
  * Fix for detaching a package when two classes of the same name are
    present in method signatures for the same generic. Thanks to
    Gabor Csardi for the report.
  * match.arg("", c("", "a", "B")) gives a better error message, in
    part from PR#17959, thanks to Elin Waring.
  * R CMD Sweave --clean no longer removes pre-existing files or
    subdirectories (PR#18242).
  * The quartz() device no longer splits polylines into subpaths.
    That has caused narrowly-spaced lines with many points to always
    look solid even when dashed line type was used due to dash phase
    restarts.
  * Deparsing constructs such as quote(1 + `!`(2) + 3) works again as
    before R 3.5.0, thanks to the report and patch in PR#18284 by
    Suharto Anggono.
  * as.list(f) for a factor f now keeps names(f), fixing PR#18309.
  * qbeta(.001, .9, .009) and analogous qf() calls now return a
    correct value instead of NaN or wrongly 1, all with a warning;
    thanks to the report by Ludger Goeminne in PR#18302.
  * plot.lm() failed to produce the plot of residuals vs.  factor
    levels (i.e., which=5 when leverages are constant) for models
    with character predictors (PR#17840).
  * interaction.plot(..., xtick = TRUE) misplaced the x-axis line
    (PR#18305).
  * Not strictly fixing a bug, format()ing and print()ing of
    non-finite Date and POSIXt values NaN and +/-Inf no longer show
    as NA but the respective string, e.g., Inf, for consistency with
    numeric vector's behaviour, fulfilling the wish of PR#18308.
  * R CMD check no longer runs test scripts generated from
    corresponding .Rin files twice and now signals an ERROR if
    processing an .Rin script fails.
  * tools::Rd2txt() used for plain-text help pages now renders \hrefs
    (if tools::Rd2txt_options(showURLs = TRUE)) and \urls with
    percent-encoding and standards-compliant delimiting style (angle
    brackets and no URL: prefix).  \email is now rendered with a
    mailto: prefix.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1655985600">- CHANGES IN R 4.2.1:
  NEW FEATURES:
  * New function utils::findCRANmirror() to find out if a CRAN mirror
    has been selected, otherwise fallback to the main site.  This
    behaves in the same way as tools::CRAN_package_db() and is
    intended for packages wishing to access CRAN for purposes other
    than installing packages.
    The need for this was shown by a day when the main CRAN website
    was offline and a dozen or so packages which had its URL
    hardcoded failed their checks.
  INSTALLATION on a UNIX-ALIKE:
  * The libraries searched for by --with-blas (without a value) now
    include BLIS (after OpenBLAS but before ATLAS).  And on macOS,
    the Accelerate framework (after ATLAS).  (This is patterned after
    the AX_BLAS macro from the Autoconf Archive.)
  * The included LAPACK sources have been updated to 3.10.1.
  UTILITIES:
  * The (full path to) the command tidy to be used for HTML
    validation can be set by environment variable R_TIDYCMD.
  * Setting environment variable _R_CHECK_RD_VALIDATE_RD2HTML_ to a
    false value will override R CMD check --as-cran and turn off HTML
    validation.  This provides a way to circumvent a problematic
    tidy.
    The 2006 version that ships with macOS is always skipped.
  C-LEVEL FACILITIES:
  * The undocumented legacy declarations of Sint, Sfloat, SINT_MAX
    and SINT_MIN in header R.h are deprecated.
  BUG FIXES:
  * fisher.test(d) no longer segfaults for "large" d; fixing PR#18336
    by preventing/detecting an integer overflow reliably.
  * tar(., files=*) now produces correctly the warning about invalid
    uid or gid of files, fixing PR#18344, reported by Martin Morgan.
  * tk_choose.files() with multi = FALSE misbehaved on paths
    containing spaces (PR#18334) (regression introduced in R 4.0.0).
  * sort(x, partial = ind, *) now works correctly notably for the
    non-default na.last = FALSE or TRUE, fixing PR#18335 reported by
    James Edwards.
  * Environment variable _R_CHECK_XREFS_REPOSITORIES_ is only used
    for checking .Rd cross-references in R CMD check (as documented)
    and not for other uses looking for a CRAN mirror.
  * The search for a CRAN mirror when checking packages now uses
    getOption("repos") if that specifies a CRAN mirror, even when it
    does not also specify all three Bioconductor repositories (as was
    previously required).
  * The HTML code generated by tools::Rd2HTML() has been improved to
    pass tidy 5.8.0.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1667217600">- CHANGES IN R 4.2.2:
  NEW FEATURES:
  * tools::Rdiff(useDiff = TRUE) checks for the presence of an
    external diff command and switches to useDiff = FALSE if none is
    found.  This allows R CMD Rdiff to always work.
  * On Windows, environment variable R_LIBCURL_SSL_REVOKE_BEST_EFFORT
    can be used to switch to only 'best-effort' SSL certificate
    revocation checks with the default "libcurl" download method.
    This reduces security, but may be needed for downloads to work
    with MITM proxies (PR#18379).
  * (macOS) The run-time check for libraries from XQuartz for X11 and
    Tcl/Tk no longer uses otool from the Apple Developer Tools
    (PR#18400).
  * The LaTeX style for producing the PDF manuals, Rd.sty, now loads
    the standard amsmath, amsfonts and amssymb packages for greater
    coverage of math commands in the Rd \eqn and \deqn macros.  The
    \mathscr LaTeX command is also provided (via the mathrsfs
    package, if available, or the amsfonts bundle otherwise),
    fulfilling the wish of PR#18398.
  * (Windows) The default format of readClipboard() and
    writeClipboard() has been changed to 13 (CF_UNICODETEXT).
  INSTALLATION on a UNIX-ALIKE:
  * The PDF manuals (if built) can be compacted by the new target
    make compact-pdf (at the top level or in directory doc/manual).
  * There is now configure support for LLVM clang 15 on Linux, which
    defaults to position-independent (PIE) executables whereas
    gfortran does not.
  * Many small changes to ease compilation (and suppress warnings)
    with LLVM clang 15.
  BUG FIXES:
  * Rscript -e would fail if stdin were closed (Reported by Henrik
    Bengtsson.)
  * qt(*, log.p=TRUE) in outer tails no longer produces NaN in its
    final steps, thus fixing PR#18360.
  * tools::Rd2latex() now escapes hashes and ampersands when writing
    URLs, fixing LaTeX errors with such URLs in \tabular.
  * When isGeneric(f, fdef=*) is used with mismatching names, the
    warning is better understandable; reported (with fix) in PR#18370
    by Gabe Becker.
  * poly(x, n) now works again (and is now documented) when x is a
    "Date" or "POSIXct" object, or of another class while fulfilling
    mode(x) == "numeric".  This also enables poly(x, *, raw=TRUE) for
    such variables.  Reported by Michael Chirico to R-devel.
  * write.table(), write.csv() and write.csv2() restore their
    numerical precision (internal equivalent of digits = 15) after an
    interrupt (PR#18384).
  * One can now read also byte FF from a clipboard connection
    (PR#18385).
  * source("") and source(character()) now give more helpful error
    messages.
  * R CMD check --as-cran set _R_CHECK_TIMINGS_ too late to have the
    intended effect.
  * as.POSIXlt(x) now also works with very large dates x, fixing
    PR#18401 reported by Hannes M"uhleisen.
  * Files can now be extracted even from very large zip archives
    (PR#18390, thanks to Martin Jakt).
  * Non-finite objects of class "POSIXlt" are now correctly coerced
    to classes "Date" and "POSIXct"; following up on the extension to
    format() them correctly.
  * Added methods for is.finite(), is.infinite() and is.nan() for
    "POSIXlt" date-time objects.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1678881600">- CHANGES IN R 4.2.3:
  C-LEVEL FACILITIES:
  * The definition of DL_FUNC in R_ext/Rdynload.h has been changed to
    be fully C-compliant.  This means that functions loaded _via_ for
    example R_GetCCallable need to be cast to an appropriate type if
    they have any arguments.
  * .Machine has a new element sizeof.time_t to identify old systems
    with a 32-bit type and hence a limited range of date-times (and
    limited support for dates millions of years from present).
  PACKAGE INSTALLATION:
  * (Windows) The default C++ standard had accidentally been left at
    C++11 when it was changed to C++14 on Unix.
  BUG FIXES:
  * As "POSIXlt" objects may be "partially filled" and their list
    components meant to be recycled, length() now is the length of
    the longest component.
  * as.POSIXlt.Date() could underflow for dates in the far past (more
    than half a million years BCE).
  * as.Date.POSIXlt(x) would return "1970-01-01" instead of NA in R
    4.2.2, e.g., for
    x &lt;- as.POSIXlt(c("2019-01-30","2001-1-1"))
    x$mon &lt;- c(0L, NA); as.Date(x)
  * R CMD check failed to apply enabled _R_CHECK_SUGGESTS_ONLY_ to
    examples and vignettes (regression in R 4.2.0).
  * R CMD check did not re-build vignettes in separate processes by
    default (regression in R 4.2.0).
  * Running examples from HTML documentation now restores previous
    knitr settings and options (PR#18420).
  * Quartz: fonts are now located using Core Graphics API instead of
    deprecated ATS which is no longer supported in the macOS 13 SDK
    (PR#18426).  This also addresses an issue where the currently
    used font in the Quartz device context was not correctly
    retained.
  * (Windows) Math symbols in text drawing functions are again
    rendered correctly (PR#18440).  This fixes a regression in R
    4.2.1 caused by a fix in PR#18382 which uncovered an issue in
    GraphApp due to which the symbol charset was not used with TT
    Symbol font face.
  * (Windows) Installing a package with a src/Makefile.{win,ucrt}
    file includes ~/.R/Makevars.win64 in the search for user
    makevars, as documented in "R Installation and Administration"
    and done for packages with a src/Makevars.{win,ucrt} file.
  * format(&lt;POSIXlt_w/_unbalanced_sec&gt;, "....%OS&lt;n&gt;") with n &gt; 0 no
    longer accidentally uses the unbalanced seconds, thanks to
    Suharto Anggono's report (including patch) in PR#18448.
  * solve.default(a, b) works around issues with some versions of
    LAPACK when a contains NA or NaN values.
  * When UseMethod() cannot dispatch, it no longer segfaults
    producing the error message in case of a long class(), thanks to
    Joris Vankerschaver's report (including patch) in PR#18447.
  * When example(foo, ..) produces graphics on an interactive device
    it needs to open itself, it now leaves devAskNewPage() unchanged
    even when it was FALSE, thus fixing a 14 years old '&lt;FIXME&gt;'.
  * packageDescription() again catches errors from encoding
    conversions. This also fixes broken packageVersion() in C locale
    on systems where iconv does not support transliteration.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1681128000">- add patch to build with libcurl &gt;= 8</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1682078400">- CHANGES IN R 4.3.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Calling &amp;&amp; or || with LHS or (if evaluated) RHS of length greater
    than one is now always an error, with a report of the form
    'length = 4' in coercion to 'logical(1)'
    Environment variable _R_CHECK_LENGTH_1_LOGIC2_ no longer has any
    effect.
  NEW FEATURES:
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.10.1.  (This caused some platform-dependent
    changes to package check output.)  And then to the sources from
    LAPACK version 3.11.0 (with changes only to double complex
    subroutines).
  * The included LAPACK sources have been updated to include the four
    Fortran 90 routines rather than their Fortran 77 predecessors.
    This may give some different signs in SVDs or
    eigendecompositions..  (This completes the transition to LAPACK
    3.10.x begun in R 4.2.0.)
  * The LAPACK sources have been updated to version 3.11.0.  (No new
    subroutines have been added, so this almost entirely bug fixes:
    Those fixes do affect some computations with NaNs, including R's
    NA.)
  * The parser now signals _classed_ errors, notably in case of the
    pipe operator |&gt;.  The error object and message now give line and
    column numbers, mostly as proposed and provided by Duncan Murdoch
    in PR#18328.
  * toeplitz() is now generalized for asymmetric cases, with a
    toeplitz2() variant.
  * xy.coords() and xyz.coords() and consequently, e.g., plot(x,y,
    log = "y") now signal a _classed_ warning about negative values
    of y (where log(.) is NA).  Such a warning can be specifically
    suppressed or caught otherwise.
  * Regular expression functions now check more thoroughly whether
    their inputs are valid strings (in their encoding, e.g. in
    UTF-8).
  * The performance of grep(), sub(), gsub() and strsplit() has been
    improved, particularly with perl = TRUE and fixed = TRUE.  Use of
    useBytes = TRUE for performance reasons should no longer be
    needed and is discouraged: it may lead to incorrect results.
  * apropos() gains an argument dot_internals which is used by the
    completion (help(rcompgen)) engine to also see base internals
    such as .POSIXct().
  * Support in tools::Rdiff() for comparing uncompressed PDF files is
    further reduced - see its help page.
  * qqplot(x, y, ...) gains conf.level and conf.args arguments for
    computing and plotting a confidence band for the treatment
    function transforming the distribution of x into the distribution
    of y (Switzer, 1976, _Biometrika_). Contributed by Torsten
    Hothorn.
  * Performance of package_dependencies() has been improved for cases
    when the number of dependencies is large.
  * Strings newly created by gsub(), sub() and strsplit(), when any
    of the inputs is marked as "bytes", are also marked as "bytes".
    This reduces the risk of creating invalid strings and accidental
    substitution of bytes deemed invalid.
  * Support for readLines(encoding = "bytes") has been added to allow
    processing special text files byte-by-byte, without creating
    invalid strings.
  * iconv(from = "") now takes into account any declared encoding of
    the input elements and uses it in preference to the native
    encoding.  This reduces the risk of accidental creation of
    invalid strings, particularly when different elements of the
    input have different encoding (including "bytes").
  * Package repositories in getOption("repos") are now initialized
    from the repositories file when utils is loaded (if not already
    set, e.g., in .Rprofile).  (From a report and patch proposal by
    Gabriel Becker in PR#18405.)
  * compactPDF() gets a verbose option.
  * type.convert() and hence read.table() get new option tryLogical =
    TRUE with back compatible default.  When set to false, converts
    "F" or "T" columns to character.
  * Added new unit prefixes "R" and "Q" for abbreviating
    (unrealistically large) sizes beyond 10^{27} in standard = "SI",
    thanks to Henrik Bengtsson's PR#18435.
  * as.data.frame()'s default method now also works fine with atomic
    objects inheriting from classes such as "roman", "octmode" and
    "hexmode", such fulfilling the wish of PR#18421, by Benjamin
    Feakins.
  * The as.data.frame.vector() utility now errors for wrong-length
    row.names.  It warned for almost six years, with "Will be an
    error!".
  * sessionInfo() now also contains La_version() and reports codepage
    and timezone when relevant, in both print() and toLatex() methods
    which also get new option tzone for displaying timezone
    information when locale = FALSE.
  * New function R_compiled_by() reports the C and Fortran compilers
    used to build R, if known.
  * predict(&lt;lm&gt;, newdata = *) no longer unnecessarily creates an
    offset of all 0s.
  * solve() for complex inputs now uses argument tol and by default
    checks for 'computational singularity' (as it long has done for
    numeric inputs).
  * predict(&lt;rank-deficient lm&gt;, newdata=*) now obeys a new argument
    rankdeficient, with new default "warnif", warning only if there
    are non-estimable cases in newdata.  Other options include
    rankdeficient = "NA", predicting NA for non-estimable newdata
    cases.  This addresses PR#15072 by Russ Lenth and is based on his
    original proposal and discussions in PR#16158 also by David Firth
    and Elin Waring.  Still somewhat experimental.
  * Rgui console implementation now works better with the NVDA screen
    reader when the full blinking cursor is selected.  The underlying
    improvements in cursor handling may help also other screen
    readers on Windows.
  * The drop-field control in GraphApp can now be left with the TAB
    key and all controls can be navigated in the reverse order using
    the Shift+TAB key, improving accessibility of the Rgui
    configuration editor.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now fully accurate
    (instead of to "only" minimally five digits).
  * demo(error.catching) now also shows off withWarnings() and
    tryCatchWEMs().
  * As an experimental feature the placeholder _ can now also be used
    in the rhs of a forward pipe |&gt; expression as the first argument
    in an extraction call, such as _$coef. More generally, it can be
    used as the head of a chain of extractions, such as _$coef[[2]].
  * Spaces in the environment variable used to choose the R session's
    temporary directory (TMPDIR, TMP and TEMP are tried in turn) are
    now fatal.  (On Windows the 'short path' version of the path is
    tried and used if that does not contain a space.)
  * all.equal.numeric() gets a new optional switch giveErr to return
    the numeric error as attribute.  Relatedly,
    stopifnot(all.equal&lt;some&gt;(a, b, ..)) is as "smart" now, as
    stopifnot(all.equal(....)) has been already, thus allowing
    customized all.equal&lt;Some&gt;() wrappers.
  * R on Windows is now able to work with path names longer than 260
    characters when these are enabled in the system (requires at
    least Windows 10 version 1607).  Packages should be updated to
    work with long paths as well, instead of assuming PATH_MAX to be
    the maximum length.  Custom front-ends and applications embedding
    R need to update their manifests if they wish to allow this
    feature.  See
    &lt;https://blog.r-project.org/2023/03/07/path-length-limit-on-windows&gt;
    for more information.
  * 'Object not found' and 'Missing argument' errors now give a more
    accurate error context. Patch provided by Lionel Henry in
    PR#18241.
  * The @ operator is now an S3 generic. Based on contributions by
    Tomasz Kalinowski in PR#18482.
  * New generic chooseOpsMethod() provides a mechanism for objects to
    resolve cases where two suitable methods are found for an Ops
    Group Generic. This supports experimenting with alternative
    object systems. Based on contributions by Tomasz Kalinowski in
    PR#18484.
  * inherits(x, what) now accepts values other than a simple
    character vector for argument what. A new generic, nameOfClass(),
    is called to resolve the class name from what. This supports
    experimenting with alternative object systems. Based on
    contributions by Tomasz Kalinowski in PR#18485.
  * Detection of BLAS/LAPACK in use (sessionInfo()) with FlexiBLAS
    now reports the current backend.
  * The "data.frame" method for subset() now warns about extraneous
    arguments, typically catching the use of = instead of == in the
    subset expression.
  * Calling a:b when numeric a or b is longer than one may now be
    made into an error by setting environment variable
    _R_CHECK_LENGTH_COLON_ to a true value, along the proposal in
    PR#18419 by Henrik Bengtsson.
  * density(x, weights = *) now warns if automatic bandwidth
    selection happens without using weights; new optional warnWbw may
    suppress the warning.  Prompted by Christoph Dalitz' PR#18490 and
    its discussants.
  * rm(list = *) is faster and more readable thanks to Kevin Ushey's
    PR#18492.
  * The plot.lm() function no longer produces a normal Q-Q plot for
    GLMs. Instead it plots a half-normal Q-Q plot of the absolute
    value of the standardized deviance residuals.
  * The print() method for class "summary.glm" no longer shows
    summary statistics for the deviance residuals by default.  Its
    optional argument show.residuals can be used to show them if
    required.
  * The tapply() function now accepts a data frame as its X argument,
    and allows INDEX to be a formula in that case. by.data.frame()
    similarly allows INDICES to be a formula.
  * The performance of df[j] &lt;- value (including for missing j) and
    write.table(df) has been improved for data frames df with a large
    number of columns.  (Thanks to Gabriel Becker's PR#18500,
    PR#18503 and discussants, prompted by a report from Toby Dylan
    Hocking on the R-devel mailing list.)
  * The matrix multiply operator %*% is now an S3 generic, belonging
    to new group generic matrixOps.  From Tomasz Kalinowski's
    contribution in PR#18483.
  * New function array2DF() to convert arrays to data frames,
    particularly useful for the list arrays created by tapply().
  DATES and TIMES:
  * On platforms where (non-UTC) datetimes before 1902 (or before
    1900 as with system functions on recent macOS) are guessed by
    extrapolating time zones from 1902-2037, there is a warning at
    the first use of extrapolation in a session.  (As all time zones
    post 2037 are extrapolation, we do not warn on those.)
  * (Platforms using --with-internal-tzone, including Windows and by
    default macOS). How years are printed in dates or date-times can
    be controlled by environment variable R_PAD_YEARS_BY_ZERO.  The
    default remains to pad to 4 digits by zeroes, but setting value
    no gives no padding (as used by default by glibc).
  * strftime() tries harder to determine the offset for the "%z"
    format, and succeeds on the mainstream R platforms.
  * strftime() has a limit of 2048 bytes on the string produced -
    attempting to exceed this is an error.  (Previously it silently
    truncated at 255 bytes.)
  * sessionInfo() records (and by default prints) the system time
    zone as part of the locale information.  Also, the source
    (system/internal) of the date-time conversion and printing
    functions.
  * Objects of class "POSIXlt" created in this version of R always
    have 11 components: component zone is always set, and component
    gmtoff is set for times in UTC and usually set on the (almost
    all) platforms which have C-level support, otherwise is NA.
  * There are comprehensive validity checks on the structure of
    objects of class "POSIXlt" when converting (including formatting
    and printing).  (This avoids mis-conversions of hand-crafted
    objects.)
  * There is some support for using the native date-time routines on
    macOS: this is only viable on recent versions (e.g. 12.6 and 13)
    and does get wrong some historical changes (before 1900, during
    WWII).  Use of --with-internal-tzone remains the default.
  * as.POSIXct(&lt;numeric&gt;) and as.POSIXlt(.) (without specifying
    origin) now work.  So does as.Date(&lt;numeric&gt;).
  * as.Date.POSIXct(., tz) now treats several tz values, notably
    "GMT" as equivalent to "UTC", proposed and improved by Michael
    Chirico and Joshua Ulrich in PR#17674.
  * Experimental balancePOSIXlt() utility allows using "ragged" and
    or out-of-range "POSIXlt" objects more correctly, e.g., in
    subsetting and subassignments.  Such objects are now documented.
    More experimentally, a "POSIXlt" object may have an attribute
    "balanced" indicating if it is known to be filled or fully
    balanced.
  * Functions axis.Date() and axis.POSIXct() are rewritten to gain
    better default tick locations and better default formats by using
    prettyDate(). Thanks to Swetlana Herbrandt.
  * The mapping of Windows' names for time zones to IANA's 'Olson'
    names has been updated.  When ICU is available (it is by
    default), it is used to get a mapping for the current region set
    in Windows.  This can be overridden by setting environment
    variable TZ to the desired Olson name - see OlsonNames() for
    those currently available.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 16
    and so packages that provide graphics devices should be
    reinstalled.
  * The grDevices and grid packages have new functions for rendering
    typeset glyphs, primarily: grDevices::glyphInfo() and
    grid::grid.glyph().
    Rendering of typeset glyphs is only supported so far on the
    Cairo-based graphics devices and on the pdf() and quartz()
    devices.
  * The defined behaviour for "clear" and "source" compositing
    operators (via grid::grid.group()) has been changed (to align
    better with simple interpretation of original Porter-Duff
    definitions).
  * Support for gradients, patterns, clipping paths, masks, groups,
    compositing operators, and affine transformations has been added
    to the quartz() device.
  INSTALLATION on a UNIX-ALIKE:
  * A system installation of generic LAPACK 3.10.0 or later will be
    preferred to the version in the R sources.
    configure option --with-lapack=no (equivalently --without-lapack)
    forces compilation of the internal LAPACK sources.
    If --with-lapack is not specified, a system liblapack is looked
    for and used if it reports version 3.10.0 or later and does not
    contain BLAS routines.
    Packages using LAPACK will need to be reinstalled if this changes
    to using an external library.
  * On aarch64 Linux platforms using GCC, configure now defaults to
  - fPIC (instead of -fpic), as desired in PR#18326.
  * configure now checks conversion of datetimes between POSIXlt and
    POSIXct around year 2020.  Failure (which has been seen on
    platforms missing tzdata) is fatal.
  * If configure option --with-valgrind-instrumentation is given
    value 1 or 2, option --with-system-valgrind-headers is now the
    default and ignored (with a warning).  It is highly recommended
    that the system headers are installed alongside valgrind: they
    are part of its packaging on some Linux distributions and
    packaged separately (e.g. in the valgrind-devel RPM) on others.
    configure will give a warning if they are not found.
    The system headers will be required in a future release of R to
    build with valgrind instrumentation.
  * libcurl 8.x is now accepted by configure: despite a change in
    major version number it changes neither API nor ABI.
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools43, an update of the Rtools42 toolchain.  It is
    based on gcc 12 and newer versions of MinGW-W64, binutils and
    libraries.  At this time R-devel can still be built using
    Rtools42 without changes, but when R-devel is installed via the
    installer, it will by default look for Rtools43.
  * Old make targets rsync-extsoft and 32-bit ones that are no longer
    needed have been removed.
  * Default builds (including for packages) no longer select C99.
    Thus the C standard used is the default for the compiler, which
    for the toolchain in Rtools43 is C17.  (This is consistent with
    Unix builds.)
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++17 where
    available (which it is on all currently checked platforms): if
    not C++14 or C++11 is used if available otherwise C++ is not
    supported.
  * USE_FC_LEN_T is the default: this uses the correct
    (compiler-dependent) prototypes for Fortran BLAS/LAPACK routines
    called from C/C++, and requires adjustment of many such calls -
    see 'Writing R Extensions' SS6.6.1.
  * There is initial support for C++23 as several compilers are now
    supporting -std=c++23 or -std=c++2b or similar.  As for C++20,
    there no additional configure checks for C++23 features beyond a
    check that the compiler reports a __cplusplus value greater than
    that in the C++20 standard.  C++ feature tests should be used.
  * There is support for a package to indicate the version of the C
    standard which should be used to compile it, and for the
    installing user to specify this.  In most cases R defaults to the
    C compiler's default standard which is C17 (a `bug-fix' of C11) -
    earlier versions of R or compilers may have defaulted to C99.
    Current options are:
    USE_C17 Use a standard that is at most C17.  The intention is to
    allow legacy packages to still be installed when later C
    standards become the default, including packages using new
    keywords as identifiers or with K&amp;R-style function
    declarations.  This will use C17 if available, falling back
    to C11.
    USE_C90 Use the C90 (aka C89) standard.  (As that standard did
    not require compilers to identify that version, all we can
    verify is that the compiler does not claim to be using a
    later standard.  It may accept C99 features - for example
    clang accepts // to make comments.)
    USE_C99 Use the C99 standard. This should be rarely needed - it
    avoids the few new features of C11/C17 which can be useful if
    a package assumes them if C17 is specified and they are not
    implemented.
    USE_C23 Use C23 (or in future, later).  Compiler/library support
    for C23 is still being implemented, but LLVM clang from
    15.0.0 and the upcoming GCC 13 have quite extensive support.
    These can be specified as part of the SystemRequirements field in
    the package's DESCRIPTION file or _via_ options --use-C17 and so
    on of R CMD INSTALL and R CMD SHLIB.
    For further details see "Writing R Extensions" SS1.2.5.
  * (Windows) A src/Makefile.ucrt or src/Makefile.win file is now
    included after R_HOME/etcR_ARCH/Makeconf and so no longer needs
    to include that file itself.  Installation of a package with such
    a file now uses a site Makevars file in the same way as a package
    with a src/Makevars.win file would.
  * configure is now passed crucial variables such as CC and CFLAGS
    in its environment, as many packages were not setting them (as
    documented in 'Writing R Extensions' SS1.2).
    This has most effect where configure is used to compile parts of
    the package - most often by cmake or libtool which obfuscate the
    actual compile commands used.
    Also used for configure.win and configure.ucrt on Windows.
  FORTRAN FLAGS:
  * The flag -fno-optimize-sibling-calls is no longer forced for
    gfortran 7 and later.  It should no longer be needed now using
    'hidden' character-length arguments when calling BLAS/LAPACK
    routines from C/C++ is the default even for packages.  (Unless
    perhaps packages call Fortran code from C/C++ without using R's
    headers and without allowing for these arguments.)
  C-LEVEL FACILITIES:
  * The deprecated S-compatibility macros DOUBLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * The deprecated legacy typedefs of Sint and Sfloat in header R.h
    are no longer defined, and that header no longer includes header
    limits.h from C nor climits from C++.
  * New macro CAD5R() is provided in Rinternals.h and used in a few
    places in the R sources.
  * ALTREP now supports VECSXP vectors. Contributed by Gabor Csardi
    in PR#17620.
  * The Rcomplex definition (in header R_ext/Complex.h) has been
    extended to prevent possible mis-compilation when interfacing
    with Fortran (PR#18430).  The new definition causes compiler
    warnings with static initializers such as {1, 2}, which can be
    changed to {.r=1, .i=2}.
    Using the new definition from C++ depends on compiler extensions
    supporting C features that have not been incorporated into the
    C++ standards but are available in g++ and clang++: this may
    result in C++ compiler warnings but these have been worked around
    for recent versions of common compilers (GCC, Apple/LLVM clang,
    Intel).
    It is intended to change the inclusion of header R_ext/Complex.h
    by other R headers, so C/C++ code files which make use of
    Rcomplex should include that header explicitly.
  UTILITIES:
  * R CMD check does more checking of package .Rd files, warning
    about invalid email addresses and (some) invalid URIs and noting
    empty \item labels in description lists.
  * R CMD check now also reports problems when reading package news
    in md (file NEWS.md) and (optionally) plain text (file NEWS)
    formats.
  * _R_CHECK_TIMINGS_ defaults to a value from the environment even
    for R CMD check --as-cran; this allows for exceptionally fast or
    slow platforms.
    It now applies to checking PDF and HTML versions of the manuals,
    and 'checking CRAN incoming feasibility'.
  * R CMD check can optionally (but included in --as-cran) check
    whether HTML math rendering _via_ KaTeX works for the package .Rd
    files.
  * Non-interactive debugger invocations can be trapped by setting
    the environment variable _R_CHECK_BROWSER_NONINTERACTIVE_ to a
    true value.  This is enabled by R CMD check --as-cran to detect
    the use of leftover browser() statements in the package.
  * The use of sprintf and vsprintf from C/C++ has been deprecated in
    macOS 13 and is a known security risk.  R CMD check now reports
    (on all platforms) if their use is found in compiled code:
    replace by snprintf or vsnprintf respectively. [*NB:* whether
    such calls get compiled into the package is platform-dependent.]
  * Where recorded at installation, R CMD check reports the C and
    Fortran compilers used to build R.
    It reports the OS in use (if known, as given by osVersion) as
    well as that R was built for.
    It notes if a C++ standard was specified which is older than the
    current default: many packages have used C++11 to mean 'not
    C++98' - as C++11 is the minimum supported since R 4.0.0, that
    specification can probably be removed.
  * R CMD INSTALL reports the compilers (and on macOS, the SDK) used,
    and this is copied to the output of R CMD check.
    Where a C++ standard is specified, it is reported.
  * R CMD check's 'checking compilation flags in Makevars' has been
    relaxed to accept the use of flags such as -std=f2008 in
    PKG_FFLAGS.
  * tools::buildVignettes() has a new argument skip, which is used by
    R CMD check to skip (and note) vignettes with unavailable
    \VignetteDepends (PR#18318).
  * New generic .AtNames() added to enable class-specific completions
    after @. The formerly internal function findMatches() is now
    exported, mainly for use in methods for .DollarNames() and
    .AtNames().
  DEPRECATED AND DEFUNCT:
  * default.stringsAsFactors() is defunct.
  * Calling as.data.frame.&lt;class&gt;() directly (for 12 atomic classes)
    is going to be formally deprecated, currently activated by
    setting the environment variable
    _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ to non-empty, which also
    happens in R CMD check --as-cran.
  BUG FIXES:
  * Hashed environments with sizes less than 5 can now grow.
    (Reported to R-devel by Duncan Garmonsway.)
  * as.character(&lt;Rd&gt;, deparse = TRUE) failed to re-escape curly
    braces in LaTeX-like text.  (Reported by Hadley Wickham in
    PR#18324.)
  * library() now passes its lib.loc argument when requiring Depends
    packages; reported (with fix) in PR#18331 by Mikael Jagan.
  * R CMD Stangle: improved message about 'Output' files.
  * head(x, n) and tail(x, n) now signal an error if n is not
    numeric, instead of incidentally "working" sometimes returning
    all of x.  Reported and discussed by Colin Fay, in PR#18357.
  * The "lm" method for summary() now gives the correct F-statistic
    when the model contains an offset.  Reported in PR#18008.
  * C() and `contrasts&lt;-`() now preserve factor level names when
    given a function object (as opposed a function name which did
    preserve names). Reported in PR#17616.
  * c(a = 1, 2)[[]] no longer matches 2 but rather signals a
    _classed_ error.  Reported and analysed by Davis Vaughan in
    PR#18367, a duplicate of PR#18004, by Jan Meis et al.  For
    consistency, NULL[[]] is also erroneous now.  x[[]] &lt;- v gives an
    error of the same class "MissingSubscriptError".
  * The relist() function of utils now supports NULL elements in the
    skeleton (PR#15854).
  * ordered(levels = *) (missing x) now works analogously to factor(,
    ordered=TRUE); reported (with fix) by Achim Zeileis in PR#18389.
  * User-defined Rd macro definitions can now span multiple lines,
    thanks to a patch from Duncan Murdoch. Previously, the Rd parser
    silently ignored everything after the first line.
  * Plain-text help (tools::Rd2txt()) now preserves an initial blank
    line for text following description list items.
  * tools::Rd2HTML() and tools::Rd2latex() no longer split \arguments
    and \value lists at Rd comments.
  * tools::Rd2latex() now correctly handles optional text outside
    \items of argument lists as well as bracketed text at the
    beginning of sections, e.g., \value{[NULL]}.
  * as.character(&lt;POSIXt&gt;) now behaves more in line with the methods
    for atomic vectors such as numbers, and is no longer influenced
    by options().  Ditto for as.character(&lt;Date&gt;).  The
    as.character() method gets arguments digits and OutDec with
    defaults _not_ depending on options().  Use of as.character(*,
    format = .) now warns.
  * Similarly, the as.character.hexmode() and *.octmode() methods
    also behave as good citizen methods and back compatibility option
    keepStr = TRUE.
  * The as.POSIXlt(&lt;POSIXlt&gt;) and as.POSIXct(&lt;POSIXct&gt;) default
    methods now do obey their tz argument, also in this case.
  * as.POSIXlt(&lt;Date&gt;) now does apply a tz (time zone) argument, as
    does as.POSIXct(); partly suggested by Roland Fuss on the R-devel
    mailing list.
  * as.Date.POSIXlt(x) now also works when the list components are of
    unequal length, aka "partially filled" or "ragged".
  * expand.model.frame() looked up variables in the wrong environment
    when applied to models fitted without data.  Reported in
    PR#18414.
  * time() now (also) uses the ts.eps = getOption("ts.eps") argument
    and thus by default rounds values very close to the start (or
    end) of a year.  Based on a proposal by Andre"i V. Kostyrka on
    R-help.
  * Printing of a factanal() result with just one factor and sort =
    TRUE now works regularly, fixing PR#17863 by Timothy Bates,
    thanks to the 'R Contributors' working group.
  * Printing 0-length objects of class "factor", "roman", "hexmode",
    "octmode", "person", "bibentry", or "citation" now prints
    something better, one of which fixes PR#18422, reported by
    Benjamin Feakins.
  * Sys.timezone() queries timedatectl only if systemd is loaded;
    addressing a report by Jan Gorecki in PR#17421.
  * The formula method of cor.test() had scoping problems when
    environment(formula) was not the calling environment; reported
    with a patch proposal by Mao Kobayashi in PR#18439.
  * attach() of an environment with active bindings now preserves the
    active bindings.  Reported by Kevin Ushey in PR#18425.
  * BLAS detection now works also with system-provided libraries not
    available as regular files.  This fixes detection of the
    Accelerate framework on macOS since Big Sur.  Reported by David
    Novgorodsky.
  * download.file() gives a helpful error message in case of an
    invalid download.file.method option, thanks to Colin Fay's report
    in PR#18455.
  * Sporadic crashes of Rterm when using completion have been fixed.
  * Rprof() is now more reliable.  A livelock in thread
    initialization with too short sampling interval has been fixed on
    macOS.  A deadlock in using the C runtime has been fixed on
    Windows.  A potential deadlock has been prevented on Unix.
  * Cursor placement in Rgui now works even after a fixed-width font
    is selected.
  * Mandatory options (options()) are now set on startup so that
    saving and restoring them always works (PR#18372).
  * Package installation, R CMD INSTALL or install.packages(*), now
    parses each of the &lt;pkg&gt;/R/*.R files individually instead of
    first concatenating and then parse()ing the large resulting file.
    This allows parser or syntax errors to be diagnosed with correct
    file names and line numbers, thanks to Simon Dedman's report and
    Bill Dunlap's patch in PR#17859.
    This _does_ require syntactically self contained R source files
    now, fixing another inadvertent bug.
  * predict.lm(&lt;model with offset&gt;) now finds the offset in the
    correct environment, thanks to Andr'e Gillibert's report and patch
    in PR#18456.
  * getInitial(&lt;formula&gt;) now finds the selfStart model in the
    correct environment.  (Reported by Ivan Krylov in PR#18368.)
  * Fix for possible segfault when using recently-added graphics
    features, such as gradients, clipping paths, masks, and groups
    with pdf(file=NULL).
  * class(m) &lt;- class(m) no longer changes a matrix m by adding a
    class _attribute_.
  * packageDate(pkg) now only warns once if there is no pkg.
  * When ts() creates a multivariate time series, "mts", it also
    inherits from "array" now, and is.mts() is documented _and_
    stricter.
  * Rd2txt() now preserves line breaks of \verb Rd content and from
    duplicated \cr.  The former also fixes the rendering of verbatim
    output from Rd \Sexpr in plain-text help.
  * uniroot(f, interval) should no longer wrongly converge _outside_
    the interval in some cases where abs(f(x)) == Inf for an x at the
    interval boundary, thanks to posts by Ben Bolker and Serguei
    Sokol on R-devel.
  * Vectorized alpha handling in palette functions such as in gray(),
    rainbow(), or hcl.colors() works correctly now, thanks to Achim
    Zeileis' report and patch in PR#18476.
  * Formatting and print()ing of bibentry objects has dropped the
    deprecated citation.bibtex.max argument, such that the bibtex
    argument's default for print.bibentry() depends directly on the
    citation.bibtex.max option, whereas in format.bibentry() the
    option no longer applies.
  * Attempting to use a character string naming a foreign function
    entry point in a foreign function call in a package will now
    signal an error if the packages has called R_forceSymbols to
    specify that symbols must be used.
  * An error in table() could permanently set options(warn=2)
    promoting all subsequent warnings to errors.
  * The sigma() function gave misleading results for binary GLMs.  A
    new method for objects of class "glm" returns the square root of
    the estimate of the dispersion parameter using the same
    calculation as summary.glm().
  * bs() and ns() in the (typical) case of automatic knot
    construction, when some of the supposedly inner knots coincide
    with boundary knots, now moves them inside (with a warning),
    building on PR#18442 by Ben Bolker.
  * R CMD on Windows now skips the site profile with --no-site-file
    and --vanilla even when R_PROFILE is set (PR#18512, from Kevin
    Ushey).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1686916800">- CHANGES IN R 4.3.1:
  C-LEVEL FACILITIES:
  * The C-level API version of R's integrate(), Rdqags() in Applic.h,
    now returns the correct number of integrand evaluations neval,
    fixing PR#18515 reported and diagnosed by Stephen Wade.
  * The C prototypes for LAPACK calls dspgv and dtptrs in
    R_exts/Lapack.h had one too many and one too few character length
    arguments - but this has not caused any known issues. To get the
    corrected prototypes, include
    [#]include &lt;Rconfig.h&gt; // for PR18534fixed
    [#]ifdef PR18534fixed
    [#] define usePR18534fix 1
    [#]endif
    [#]include &lt;R_exts/Lapack.h&gt;
    in your C/C++ code (PR#18534).
  INSTALLATION:
  * Many of the checks of esoteric Internet operations and those
    using unreliable external sites have been moved to a new target
    that is not run by default and primarily intended for the core
    developers.  To run them use
    cd tests; make test-Internet-dev
  BUG FIXES:
  * .S3methods(), typically called from methods(), again marks
    methods from package base as visible.
    Also, the visibility of non-base methods is again determined by
    the method's presence in search().
  * tools::Rdiff() is now more robust against invalid strings, fixing
    installation tests on Windows without Rtools installed
    (PR#18530).
  * Fix (new) bug in hcl.colors(2, *), by Achim Zeileis (PR#18523).
  * head(., &lt;illegal&gt;) and tail(..) now produce more useful "Error in
    ...." error messages, fixing PR#18362.
  * Package code syntax on Windows is checked in UTF-8 when UTF-8 is
    the native encoding.
  * na.contiguous(x) now also returns the first run, when it is at
    the beginning and there is a later one of the same length;
    reported to R-devel, including a fix, by Georgi Boshnakov.
    Further, by default, it modifies only an existing attr(*,"tsp")
    but otherwise no longer sets one.
  * chol(&lt;not pos.def&gt;, pivot = &lt;T|F&gt;) now gives a correct error or
    warning message (depending on pivot), thanks to Mikael Jagan's
    (PR#18541).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1699012800">- CHANGES IN R 4.3.2:
  NEW FEATURES:
  * The default initialization of the "repos" option from the
    repositories file at startup can be skipped by setting
    environment variable R_REPOSITORIES to NULL such that
    getOption("repos") is empty if not set elsewhere.
  * qr.X() is now an implicit S4 generic in methods.
  * iconv(to = "ASCII//TRANSLIT") is emulated using substitution on
    platforms which do not support it (notably Alpine Linux).  This
    should give a human-readable conversion in ASCII on all platforms
    (rather than NA_character_).
  * trans3d() gains options continuous and verbose addressing the
    problem of possible "wrap around" when projecting too long
    curves, as reported by Achim Zeileis in PR#18537.
  * tools::showNonASCII() has been rewritten to work better on macOS
    14 (which has a changed implementation of iconv()).
  * tiff(type = "quartz") (the default on macOS) now warns if
    compression is specified: it continues to be ignored.
  INSTALLATION on a UNIX-ALIKE:
  * There is some support for building with Intel's LLVM-based
    compilers on x86_64 Linux, such as (C) icx, (C++) ipcx and
    (Fortran) ifx from oneAPI 2023.x.y.
  * There is support for using LLVM's flang-new as the Fortran
    compiler from LLVM 16.0.x (preferably 17.0.0 or later).
  UTILITIES:
  * R CMD check reports the use of the Fortran 90 random number
    generator RANDOM_NUMBER() and the subroutines to initialize it.
    'Writing R Extensions' has example code to use R's RNGs from
    Fortran.
  BUG FIXES:
  * substr(x, n, L) &lt;- cc now works (more) correctly for multibyte
    UTF-8 strings x when L &gt; nchar(x), thanks to a report and patch
    by 'Architect 95'.
  * contrib.url(character()) now returns 0-length character() as
    documented, which also avoids spurious warnings from
    available.packages() et al. in the edge case of an empty vector
    of repository URLs.
  * readChar(., 4e8) no longer fails, thanks to Kodi Arfer's report
    (PR#18557).
  * lapply(&lt;list&gt;, as.data.frame) no longer warns falsely for some
    base vector components.
  * Communication between parent and child processes in the multicore
    part of parallel could fail on platforms that do not support an
    arbitrarily large payload in system functions read()/write() on
    pipes (seen on macOS where a restriction to INT_MAX bytes is
    documented, without doing a partial read unlike Linux). The
    payload is now split into 1Gb chunks to avoid that problem.
    (PR#18571)
  * qqplot(x,y, conf.level=.) gives better confidence bounds when
    length(x) != length(y), thanks to Alexander Ploner's report and
    patch proposal (PR#18557).
  * norm(&lt;0-length&gt;, "2") now gives zero instead of an error, as all
    the other norm types, thanks to Mikael Jagan's PR#18542.
  * Build-stage Rd macros \packageAuthor and \packageMaintainer now
    process Authors@R, fixing NA results when the package DESCRIPTION
    omits Author and Maintainer fields.
  * Formatting and printing complex numbers could give things like
    0.1683-0i because of rounding error: -0i is now replaced by +0i.
  * postscript() refused to accept a title comment containing the
    letter "W" (PR#18599).
  * isoreg(c(1,Inf)) signals an error instead of segfaulting, fixing
    PR#18603.
  * tiff(type = "Xlib") was only outputting the last page of
    multi-page plots.
  * tools::latexToUtf8() again knows about \~{n} and other letters
    with tilde, fixing a regression in R 4.3.0, and about \^{i} as an
    alternative to \^{\i} (similarly with other accents).
    Furthermore, LaTeX codes for accented I letters are now correctly
    converted, also fixing related mistakes in
    tools::encoded_text_to_latex().
  * tar(*, tar = "internal") no longer creates out-of-spec tar files
    in the very rare case of user or group names longer than 32
    bytes, fixing PR#17871 with thanks to Ivan Krylov.
  * When using the "internal" timezone datetime code, adding a
    fraction of a second no longer adds one second, fixing PR#16856
    from a patch by Ivan Krylov.
  * tools::checkRd() no longer produces spurious notes about
    "unnecessary braces" from multi-line Rd results of \Sexpr macros.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1709208000">- CHANGES IN R 4.3.3:
  NEW FEATURES:
  * iconv() now fixes up variant encoding names such as "utf8"
    case-insensitively.
  DEPRECATED AND DEFUNCT:
  * The legacy encoding = "MacRoman" is deprecated in pdf() and
    postscript(): support was incomplete in earlier versions of R.
  BUG FIXES:
  * Arguments are now properly forwarded to methods on S4 generics
    with ... in the middle of their formal arguments. This was broken
    for the case when a method introduced an argument but did not
    include ... in its own formals. Thanks to Herv'e Pag`es for the
    report PR#18538.
  * Some invalid file arguments to pictex(), postscript() and xfig()
    opened a file called NA rather than throw an error.  These
    included postscript(NULL) (which some people expected to work
    like pdf(NULL)).
  * Passing filename = NA to svg(), cairo_pdf(), cairo_ps() or the
    Cairo-based bitmap devices opened a file called NA: it now throws
    an error.
  * quartz(file = NA) opened a file called NA, including when used as
    a Quartz-based bitmap device.  It now gives an error.
  * rank(&lt;long vector&gt;) now works, fixing PR#18617, thanks to Ilia
    Kats.
  * seq.int() did not adequately check its length.out argument.
  * match(&lt;POSIXct&gt;, .) is correct again for differing time zones,
    ditto for "POSIXlt", fixing PR#18618 reported by Bastian Klein.
  * drop.terms(*, dropx = &lt;0-length&gt;) now works, fixing PR#18563 as
    proposed by Mikael Jagan.
  * drop.terms(*) keeps + offset(.) terms when it should, PR#18565,
    and drop.terms() no longer makes up a response, PR#18566, fixing
    both bugs thanks to Mikael Jagan.
  * getS3method("t", "test") no longer finds the t.test() function,
    fixing PR#18627.
  * pdf() and postscript() support for the documented Adobe encodings
    "Greek" and "Cyrilllic" was missing (although the corresponding
    Windows' codepages could be used).
  * Computations of glyph metric information for pdf() and
    postscript() did not take into account that transliteration could
    replace one character by two or more (only seen on macOS 14) and
    typically warned that the information was not known.
  * rank(x) no longer overflows during integer addition, when
    computing rank average for largish but not-yet long vector x,
    fixing PR#18630, thanks to Ilia Kats.
  * list.files() on Windows now returns also files with names longer
    that 260 bytes (the Windows limit is 260 characters).
    Previously, some file names particularly with 'East Asian'
    characters were omitted.
  * cov2cor(&lt;0 x 0&gt;) now works, fixing PR#18423 thanks to Mikael
    Jagan and Elin Waring.
  * cov2cor(&lt;negative diagonal&gt;) and similar now give one warning
    instead of two, with better wording, fixing PR#18424 thanks to
    Mikael Jagan.
  * tools:: startDynamicHelp() now ensures port is in proper range,
    fixing PR#18645.
  * pbeta(x, a,b) is correct now for x=0 or 1 in the boundary cases
    where a or b or both are 0, fixing PR#18672 thanks to Michael
    Fay.
  * pmatch(x, table) for large table, also called for data frame row
    selection, dfrm[nm, ], is now interruptible, fixing PR#18656.
  * predict(&lt;rank-deficient lm&gt;, newdata=*) fix computing of nbasis,
    see Russ Lenth's comment 29 in PR#16158.
  * Added a work-around for a bug in macOS 14.3.1 and higher which
    prevents R plots in the Quartz Cocoa device from updating on
    screen.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1713960000">- CHANGES IN R 4.4.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Startup banners, R --version, sessionInfo() and R CMD check no
    longer report (64-bit) as part of the platform as this is almost
    universal - the increasingly rare 32-bit platforms will still
    report (32-bit).
    On Windows, ditto for window titles.
  * is.atomic(NULL) now returns FALSE, as NULL is not an atomic
    vector.  Strict back-compatibility would replace is.atomic(foo)
    by (is.null(foo) || is.atomic(foo)) but should happen only
    sparingly.
  NEW FEATURES:
  * The confint() methods for "glm" and "nls" objects have been
    copied to the stats package.  Previously, they were stubs which
    called versions in package MASS. The MASS namespace is no longer
    loaded if you invoke (say) confint(glmfit).  Further, the "glm"
    method for profile() and the plot() and pairs() methods for class
    "profile" have been copied from MASS to stats.  (profile.nls()
    and plot.profile.nls() were already in stats.)
  * The confint() and profile methods for "glm" objects have gained a
    possibility to do profiling based on the Rao Score statistic in
    addition to the default Likelihood Ratio. This is controlled by a
    new test = argument.
  * The pairs() method for "profile" objects has been extended with a
    which = argument to allow plotting only a subset of the
    parameters.
  * The "glm" method for anova() computes test statistics and
    p-values by default, using a chi-squared test or an F test
    depending on whether the dispersion is fixed or free.  Test
    statistics can be suppressed by giving argument test a false
    logical value.
  * In setRepositories() the repositories can be set using their
    names via name = instead of index ind =.
  * methods() and .S3methods() gain a all.names option for the (rare)
    case where functions starting with a . should be included.
  * Serializations can now be interrupted (e.g., by Ctrl-C on a
    Unix-alike) if they take too long, e.g., from save.image(),
    thanks to suggestions by Ivan Krylov and others on R-devel.
  * New startup option --max-connections to set the maximum number of
    simultaneous connections for the session.  Defaults to 128 as
    before: allowed values up to 4096 (but resource limits may in
    practice restrict to smaller values).
  * R on Windows (since Windows 10 2004) now uses the new Segment
    Heap allocator. This may improve performance of some
    memory-intensive applications.
  * When R packages are built, typically by R CMD build &lt;pkg&gt;, the
    new --user=&lt;build_user&gt; option overrides the (internally
    determined) user name, currently Sys.info()["user"] or LOGNAME.
    This is a (modified) fulfillment of Will Landau's suggestion in
    PR#17530.
  * tools::testInstalledBasic() gets new optional arguments outDir
    and testSrcdir, e.g., allowing to use it in a &lt;builddir&gt; !=
    &lt;srcdir&gt; setup, and in standard "binary" Windows installation
  * if* a source tests/ folder is present.
  * range(&lt;DT_with_Inf&gt;, finite = TRUE) now work for objects of class
    "Date", "POSIXct", and "POSIXlt" with infinite entries,
    analogously to range.default(), as proposed by Davis Vaughan on
    R-devel.  Other range()-methods can make use of new function
    .rangeNum().
  * New .internalGenerics object complementing .S3PrimitiveGenerics,
    for documentation and low-level book-keeping.
  * grid() now invisibly returns the x- and y- coordinates at which
    the grid-lines were drawn.
  * norm(., type) now also works for complex matrices.
  * kappa(., exact = TRUE, norm = *) now works for all norms and also
    for complex matrices.  In symmetric / triangular cases, the new
    argument uplo = "U" | "L" allows the upper or lower triangular
    part to be specified.
  * memDecompress(type = "unknown") recognizes compression in the
    default 'zlib' format as used by memCompress(type = "gzip").
  * memCompress() and memDecompress() will use the libdeflate library
    (&lt;https://github.com/ebiggers/libdeflate&gt;) if installed.  This
    uses the same type of compression for type = "gzip" but is 1.5-2x
    faster than the system libz library on some common platforms: the
    speed-up may depend on the library version.
  * diff() for objects of class "Date", "POSIXct", and "POSIXlt"
    accepts a units argument passed via ....
  * Dynamic help now does a much better job of rendering package
    DESCRIPTION metadata.
  * Rprof() gains an event argument and support for elapsed (real)
    time profiling on Unix (PR#18076).
  * filled.contour() gains a key.border argument.
  * tools::update_pkg_po() gets arguments pot_make and mo_make for
    _not_ re-making the corresponding files, and additionally a
    verbose argument.
  * Hexadecimal string colour specifications are now accepted in
    short form, so, for example, we can use "#123", which is
    equivalent to "#112233".
    Thanks to MikeFC for the original idea and Ella Kaye, Malcolm
    Barrett, George Stagg, and Hanne Oberman for the patch.
  * Plain-text help shows \var markup by angle brackets.
  * The new experimental primitive function declare() is intended to
    eventually allow information about R code to be communicated to
    the interpreter, compiler, and code analysis tools. The syntax
    for declarations is still being developed.
  * Functions psmirnov(), qsmirnov() and rsmirnov() in package stats
    have had argument two.sided renamed to alternative, to take into
    account that the permutation distributions of the one-sided
    statistics can be different in the case of ties.  Consequence of
    PR#18582.
  * sort() is now an implicit S4 generic in methods.
  * Formatting and printing, format(z), print(z), of complex vectors
    z no longer zap relatively small real or imaginary parts to zero,
    fixing PR#16752.  This is an API change, as it was documented
    previously to round real and imaginary parts together on purpose,
    producing nicer looking output.  As mentioned, e.g. in the PR,
    this change is compatible with many other "R-like" programming
    environments.
    We have simplified the internal code and now basically format the
    real and imaginary parts independently of each other.
  * New experimental functions Tailcall() and Exec() to support
    writing stack-space-efficient recursive functions.
  * Where characters are attempted to be plotted by pdf(),
    postscript() and xfig() which are not in the selected 8-bit
    character set (most often Latin-1) and the R session is using a
    UTF-8 locale, the warning messages will show the UTF-8 character
    rather than its bytes and one dot will be substituted per
    character rather than per byte.  (Platforms whose iconv() does
    transliteration silently plot the transliteration.)
    In a UTF-8 locale some transliterations are now done with a
    warning (e.g., dashes and Unicode minus to hyphen, ligatures are
    expanded, permille (‰) is replaced by o/oo), although the OS may
    have got there first.  These are warnings as they will continue
    to be replaced by dots in earlier versions of R.
  * The matrix multiplication functions crossprod() and tcrossprod()
    are now also primitive and S3 generic, as %*% had become in R
    4.3.0.
  * source() and example() have a new optional argument catch.aborts
    which allows continued evaluation of the R code after an error.
  * The non-Quartz tiff() devices allow additional types of
    compression if supported by the platform's libtiff library.
  * The list of base and recommended package names is now provided by
    tools::standard_package_names().
  * cairo_pdf() and cairo_ps() default to onefile = TRUE to closer
    match pdf() and postscript().
  * New option catch.script.errors provides a documented way to catch
    errors and then continue in non-interactive use.
  * L %||% R newly in base is an expressive idiom for the phrases
    if(!is.null(L)) L else R or if(is.null(L)) R else L.
  * The return value from warnings() now always inherits from
    "warnings" as documented, now also in the case of no warnings
    where it previously returned NULL.
  * as.complex("1i") now returns 0 + 1i instead of NA with a warning.
  * z &lt;- c(NA, 1i) now keeps the imaginary part Im(z[1]) == 0, no
    longer coercing to NA_complex_.  Similarly, cumsum(z) correctly
    sums real and imaginary parts separately, i.e., without
    "crosstalk" in case of NAs.
  * On Alpine Linux iconv() now maps "latin2", "latin-2", "latin9"
    and "latin-9" to encoding names the OS knows about
    (case-insensitively).
  * iconv(sub = "Unicode") now always zero-pads to four (hex) digits,
    rather than to 4 or 8.  (This seems to have become the convention
    once Unicode restricted the number of Unicode points to 2^21 - 1
    and so will never need more than 6 digits.)
  * NCOL(NULL) now returns 0 instead of 1, for consistency with
    cbind().
  * The information for the Euro glyph missing from the Adobe .afm
    files for the Courier, Helvetica and Times families has been
    copied from their URW equivalents - this will improve vertical
    centring in the pdf() and postscript() devices.
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.12.0.  The changes are almost entirely cosmetic.
  * The included LAPACK sources have been updated to version 3.12.0
    and some further double-complex routines added.
  * There are new font families for the 2014--5 URW 2.0 fonts (see
    ?pdf) which are included in recent versions of Ghostscript.
    These have font widths for most Greek glyphs and a few others
    which were missing from the original versions (whose font
    families remain available for reproducibility, although
    Ghostscript-based viewers will render using the 2.0 versions).
  * Improve the large-n efficiency of as.matrix(&lt;dist&gt;), thanks an R
    contributors effort, notably by Tim Taylor and Heather Turner,
    see PR#18660.
  * The default and numeric methods of all.equal() get a check.class
    option.
  * zapsmall() gets new optional arguments, function mFUN and min.d,
    for extra flexibility; fulfills a wish in PR#18199.  Also, it is
    now an implicit S4 generic in package methods.
  * The Rd filter for aspell() gains an ignore argument.
  * New generic function sort_by(), primarily useful for the
    data.frame method which can be used to sort rows of a data frame
    by one or more columns.
  * The icence headers for the RPC code in src/extra/xdr have been
    updated to use the GPL-compatible licence published by Oracle
    America in 2010.
  * New function pkg2HTML() in tools to create single-page HTML
    reference manuals for R packages.
  * The byte code evaluator now uses less C stack space for recursive
    calls to byte-compiled functions. It also makes more of an effort
    to avoid allocations for scalar return values.
  * New completion option backtick (disabled by default) allows
    non-syntactic completions to be wrapped in backquotes. This is
    currently only useful for Jupyter notebooks via the IRkernel
    package, and may cause problems for other backends.
  INSTALLATION:
  * The parser has been updated to work with bison 3.8.2, which is
    now used for the pre-generated parsers in gram.c, file.c, and
    gramRd.c. A few parser error messages have changed, which may
    affect code that relies on exact messages.
  INSTALLATION on a UNIX-ALIKE:
  * System valgrind headers are now required to use configure option
  - -with-valgrind-instrumentation with value 1 or 2.
  * configure will warn if it encounters a 32-bit build, as that is
    nowadays almost untested.
  * Environment variable R_SYSTEM_ABI is no longer used and so no
    longer recorded in etc/Renviron (it was not on Windows and was
    only ever used when preparing package tools).
  * If the libdeflate library and headers are available, libdeflate
    rather than libz is used to (de)compress R objects in lazy-load
    databases.  Typically tasks spend up to 5% of their time on such
    operations, although creating lazy-data databases is one of the
    exceptions.
    This can be suppressed if the library is available by the
    configure option --without-libdeflate-compression.
  * configure option --enable-lto=check has not worked reliably since
    2019 and has been removed.
  * The minimum autoconf requirement for a maintainer build has been
    increased to autoconf 2.71.
    It is intended to increase this to 2.72 for R 4.5.0: the
    distributed configure file was generated using 2.72.
  * The minimum version requirement for an external LAPACK has been
    reduced to 3.9.0.
  * No default C++ compiler is set if no C++17 compiler is detected:
    there is no longer an automatic fallback to C++14 or C++11.
    Compilers from the last five years should have sufficient
    support: for others macros CXX and CXXSTD can be set in file
    config.site to provide a fallback if needed.
    The Objective-C++ compiler now by default uses the standard
    selected by R for C++ (currently C++17) rather than the default
    standard for the C++ compiler (which on macOS is still C++98).
  INSTALLATION on macOS:
  * A new configure option --with-newAccelerate makes use of Apple's
    'new' BLAS / LAPACK interfaces in their Accelerate framework.
    Those interfaces are only available in macOS 13.3 or later, and
    building requires SDK 13.3 or later (from the Command Line Tools
    or Xcode 14.3 or later).
    By default the option uses new Accelerate for BLAS calls: to also
    use it for LAPACK use option --with-newAccelerate=lapack.  The
    later interfaces provide LAPACK 3.9.1 rather than 3.2.1: 3.9.1 is
    from 2021-04 and does not include the improved algorithms
    introduced in LAPACK 3.10.0 (including for BLAS calls).
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools44, an update of the Rtools43 toolchain.  It is
    based on GCC 13 and newer versions of MinGW-W64, binutils and
    libraries (targeting 64-bit Intel CPUs).  R-devel can no longer
    be built using Rtools43 without changes.
  * Rtools44 has experimental support for 64-bit ARM (aarch64) CPUs
    _via_ the LLVM 17 toolchain using lld, clang/flang-new and
    libc++.
  UTILITIES:
  * R CMD check notes when S4-style exports are used without
    declaring a strong dependence on package methods.
  * tools::checkRd() (used by R CMD check) detects more problems with
    \Sexpr-based dynamic content, including bad nesting of \Sexprs
    and invalid arguments.
  * tools::checkRd() now reports Rd titles and section names ending
    in a period; this is ignored by R CMD check unless environment
    variable _R_CHECK_RD_CHECKRD_MINLEVEL_ is set to -5 or smaller.
  * R CMD check now notes Rd files without an \alias, as long
    documented in 'Writing R Extensions' §1.3.1.  The check for a
    missing \description has been moved from tools::checkRd() to
    tools::checkRdContents().
  * R CMD check now visits inst/NEWS.Rd and OS-specific man
    subdirectories when checking Rd files.
  * tools::checkDocFiles() and tools::checkRdContents() now also
    check internal Rd files by default, but "specially" (ignoring
    missing documentation of arguments).
  * R CMD Rdiff gets option --useEx.
  * R CMD check now warns on non-portable uses of Fortran KIND such
    as INTEGER(KIND=4) and REAL(KIND=8).
    To see the failing lines set environment variable
    _R_CHECK_FORTRAN_KIND_DETAILS_ to a true value.
  * When checking Rd files, R CMD check now notes some of the "lost
    braces" that tools::checkRd() finds.  Typical problems are Rd
    macros missing the initial backslash (e.g., code{...}), in-text
    set notation (e.g., {1, 2}, where the braces need escaping), and
    \itemize lists with \describe-style entries of the form
    \item{label}{description}.
  * R CMD INSTALL (and hence check) will compile C++ code with
  - DR_NO_REMAP if environment variable _R_CXX_USE_NO_REMAP_ is set
    to a true value.  It is planned that this will in future become
    the default for compiling C++.
  * The new built-in Rd macro \dontdiff{} can be used to mark example
    code whose output should be ignored when comparing check output
    to reference output (tests/Examples/&lt;pkg&gt;-Ex.Rout.save).  The
    \dontdiff tag, like \donttest, is _not_ shown on the rendered
    help page, so provides a clean alternative to ##
    IGNORE_RDIFF_(BEGIN|END) comments.
  * R CMD build when there is no NAMESPACE, now uses the recommended
    exportPattern("^[^.]"), instead of exporting everything.
  * R CMD check now warns about non-ASCII characters in the NAMESPACE
    file (in addition to R files). Such packages are not portable and
    may fail to install on some platforms.
  C-LEVEL FACILITIES:
  * Headers R_ext/Applic.h and R-ext/Linpack.h used to include
    R_ext/BLAS.h although this was undocumented and unneeded by their
    documented entry points.  They no longer do so.
  * New function R_missing(), factored out from do_missing(), used to
    fix PR#18579.
  * SEXP type S4SXP has been renamed to OBJSXP to support
    experimenting with alternative object systems.  The S4SXP value
    can still be used in C code but is now deprecated.  Based on
    contributions from the R Consortium's Object-Oriented Programming
    Working Group.
  * New function pow1p(x,y) for accurate (1+x)^y.
  * mkCharLenCE was incorrectly documented to take a size_t length
    but was implemented with int (and character strings in R are
    limited to 2^31 - 1 bytes).
  DEPRECATED AND DEFUNCT:
  * data() no longer handles zipped data from long-defunct (since R
    2.13.0) --use-zip-data installations.
  * The legacy graphics devices pictex() and xfig() are now
    deprecated.  They do not support recent graphics enhancements and
    their font handling is rudimentary. The intention is to retain
    them for historical interest as long as they remain somewhat
    functional.
  * Support for encoding = "MacRoman" has been removed from the pdf()
    and postscript() devices - this was a legacy encoding supporting
    classic macOS up to 2001 and no longer has universal libiconv
    support.
  * is.R() is deprecated as no other S dialect is known to be in use
    (and this could only identify historical dialects, not future
    ones).
    Further information on calls can be obtained by setting the
    environment variable _R_DEPRECATED_IS_R_ to error which turns the
    deprecation warning into an error and so by default gives a
    traceback.  (This is done by R CMD check --as-cran.)
  * UseMethod() no longer forwards local variables assigned in the
    generic function into method call environments before evaluating
    the method body. This makes method calls behave more like
    standard function calls and makes method code easier to analyze
    correctly.
  * The twelve as.data.frame.&lt;class&gt;() methods which were deprecated
    only via _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ and in R CMD
    check --as-cran are formally deprecated now in favour of calling
    as.data.frame() or as.data.frame.vector().  The deprecation
    "check" now works also when as.data.frame() is S4 generic thanks
    to Ivan Krylov.
  * The default method for the directional comparison operators &lt;, &gt;,
    &lt;=, and &gt;= now signals an error when one of the operands is a
    language object, i.e. a symbol or a call.
  * For terms.formula(), deprecate abb and neg.out arguments
    _formally_ in addition to just documenting it.
  BUG FIXES:
  * The methods package is more robust to not being attached to the
    search path.  More work needs to be done.
  * pairwise.t.test() misbehaved when subgroups had 0 DF for
    variance, even with pool.sd = TRUE.  (PR#18594 by Jack Berry).
  * Probability distribution functions [dpq]&lt;distrib&gt;(x, *), but also
    bessel[IKJY](x, .) now consistently preserve attributes(x) when
    length(x) == 0, e.g., for a 2 x 0 matrix, thanks to Karolis
    Koncevičius' report PR#18509.
  * Group "Summary" computations such as sum(1:3, 4, na.rm = 5, NA,
    7, na.rm = LL) now give an error instead of either 17 or NN for
    LL true or false, as proposed by Ivan Krylov on the R-devel
    mailing list.  (This also means it is now an error to specify
    na.rm more than once.)
  * as.complex(x) now returns complex(real = x, imaginary = 0) for
    _all_ numerical and logical x, notably also for NA or
    NA_integer_.
  * Directories are now omitted by file.copy(, recursive = FALSE) and
    in file.append() (PR#17337).
  * gsub() and sub() are now more robust to integer overflow when
    reporting errors caused by too large input strings (PR#18346).
  * Top-level handlers are now more robust to attempts to remove a
    handler whilst handlers are running (PR#18508).
  * The handling of Alt+F4 in dialogs created on Windows using
    GraphApp has been fixed (PR#13870).
  * density() more consistently computes grid values for the
    FFT-based convolution, following Robert Schlicht's analysis and
    proposal in PR#18337, correcting density values typically by a
    factor of about 0.999.  Argument old.coords = TRUE provides back
    compatibility.
  * palette.colors() gains a name argument that defaults to FALSE
    controlling whether the vector of colours that is returned has
    names (where possible).  PR#18529.
  * tools::xgettext() no longer extracts the (non-translatable) class
    names from warningCondition and errorCondition calls.
  * S3method(&lt;gen&gt;, &lt;class&gt;, &lt;func&gt;) in the NAMESPACE file now works
    (again) when &lt;func&gt; is visible from the namespace, e.g.,
    imported, or in base.
  * getParseData(f) now also works for a function defined in the
    first of several &lt;pkg&gt;/R/*.R source files, thanks to Kirill
    Müller's report and Duncan Murdoch's patch in PR#16756.
  * Rd \Sexpr macros with nested #ifdef conditionals were not
    processed.
  * A non-blocking connection with non-default encoding (such as a
    socket) now correctly returns from readLines() after new data has
    arrived also when its EOF had been reached previously.  Thanks to
    Peter Meilstrup's report on R-devel and Ivan Krylov's report and
    patch proposal in PR#18555.
  * tools::checkRdContents() failed to detect empty argument
    descriptions when they spanned multiple lines, including those
    generated by prompt().  These cases are now noted by R CMD check.
  * Plain-text help no longer outputs spurious colons in the
    arguments list (for multi-line \item labels in the Rd source).
  * kappa() and rcond() work correctly in more cases; kappa(., norm =
    "2") now warns that it computes the 1-norm with (default) exact =
    FALSE; prompted by Mikael Jagan's quite comprehensive PR#18543.
  * Rd skeletons generated by prompt() or promptData() now use a
    dummy title (so R CMD build works).  tools::checkRdContents() has
    been updated to detect such template leftovers, including from
    promptPackage().
  * When S4 method dispatch fails because no method was found, the
    error message now includes the signature argument names; thanks
    to Michael Chirico's proposal on the R-devel list.
  * withAutoprint({ .. }) now preserves srcrefs previously lost,
    thanks to Andrew Simmons' report plus fix in PR#18572.
  * transform.data.frame() no longer adjusts names; in particular,
    untransformed variables are kept as-is, including those with
    syntactically invalid names (PR#17890).
  * The keep.source option for Rd \Sexpr blocks is no longer ignored.
  * The formula methods for t.test() and wilcox.test() now catch when
    paired is passed, addressing PR#14359; use Pair(x1, x2) ~ 1 for a
    paired test.
  * The level reported in the browser prompt was often too large. It
    now shows the number of browser contexts on the stack.
  * For cbind() and rbind(), the optional deparse.level argument is
    now properly passed to methods, thanks to Mikael Jagan's PR#18579
    and comments there.
  * Some error and warning messages for large ('long vector')
    matrix(v, nr, nc) and dim(m) &lt;- d are now correct about sizes,
    using long long formatting, fixing PR#18612 (and more) reported
    by Mikael Jagan.
  * readChar(useBytes = TRUE) now terminates strings even when the
    underlying connection uses extra spaces in the input buffer.
    This fixes problems with extra garbage seen with gzip
    connections, PR#18605.
  * Named capture in PCRE regular expressions now works also with
    more than 127 named groups (PR#18588).
  * Datetime functions are now robust against long jumps when dealing
    with internal time zone changes.  This avoids confusing warnings
    about an invalid time zone, previously triggered by turning
    warnings into errors or handling them via tryCatch (PR#17966,
    PR#17780).
  * Datetime functions now restore even an empty TZ environment
    variable after internal time zone changes (PR#17724).  This makes
    results of datetime functions with this (typically unintentional)
    setting more predictable.
  * drop.terms(*) now drops response as by default, keep.response =
    FALSE, fixing PR#18564 thanks to Mikael Jagan.
  * dummy.coef(.) now also works for lm()-models with character
    categorical predictor variables rather than factor ones, fixing
    PR#18635 reported by Jinsong Zhao.
  * formals(f) &lt;- formals(f) now also works for a function w/o
    arguments and atomic _constant_ body(f).
  * Correct as.function(&lt;invalid list&gt;, .)'s error message.
  * removeSource() is yet more thorough in finding and removing
    "srcref" and the other source references from parsed R language
    chunks, fixing PR#18638 thanks to Andrew Simmons.
  * dgeom() is more accurate now, notably when its result is very
    small, fixing PR#18642 thanks to the proposal of Morten Welinder,
    also improving other instances where C level binom_raw(x, n, ..)
    has x == 0 or x== n.
  * warning() with options(warn = 1) has improved output for
    multi-line messages.
  * axis.Date() and axis.POSIXct() now respect the par("lab") setting
    for the number of pretty() intervals.
  * Comparisons for language objects (which are based on deparsing)
    are now more careful about using accurate deparsed results
    (PR#18676).
  * Plain-text help (Rd2txt) now correctly preserves blank lines
    following single-line \dontrun code.
  * &lt;POSIXlt&gt;[*] no longer sets wrong "balanced" attribute, fixing
    PR#18681 thanks to Mikael Jagan.
  * str(&lt;classed-call&gt;) now deparses the call as expected, fixing
    PR#18684, reported by Dave Slager.
  * In Rd examples, code following the closing brace of a \dontrun,
    \dontshow or \donttest tag on the same line is no longer skipped
    when R CMD check runs the examples.
  * as.data.frame(matrix(*, ncol=0)) now gets valid names() and
    colnames(); reported by Davis Vaughan on the R-devel list.
  * Internal Mathlib function stirlerr(n) is now almost fully
    (52-bit) accurate for all n &gt;= ~5.9 and more accurate also in the
    range 1 -- 5.9.  This entails small ("after 12th decimal")
    changes in density functions, e.g., dgamma() in _some_ regions of
    their support.  The fix was partly prompted by Morten Welinder's
    PR#18640.
  * Numbers like 9876543.2 are now considered non-integer by Mathlib
    internal R_nonint(), amending original fix of PR#15734.
  * Rd comment lines no longer cause broken paragraphs in the
    rendered PDF and plain-text help. In code blocks, pure comment
    lines (starting with %) no longer produce an empty line.
  * xtabs(Freq ~ .) now consistently defaults to na.action = na.pass,
    using na.rm = FALSE (added as an argument) when summing over Freq
    (PR#17770).
  * tools::testInstalledPackage() is no longer silent about failures
    from running examples or tests and its return code no longer
    ignores failures from checking vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1718366400">- CHANGES IN R 4.4.1:
  C-LEVEL FACILITIES:
  * Functions R_atof and R_strtod declared in header R_ext/Utils.h
    are now documented in 'Writing R Extensions' and so formally part
    of the API.
  * The non-API entry points Rf_setSVector, Rf_StringFalse,
    Rf_StringTrue and Rf_isBlankString have been added to those
    reported by R CMD check.
  * The new function Rf_allocLang is now available. This provides an
    alternative to the idiom of calling Rf_allocList followed by
    SET_TYPEOF.
  UTILITIES:
  * R CMD check now reports as warnings what gfortran calls 'Fortran
    2018 deleted features', all of which have long been marked as
    'obsolescent' and some of which were deleted in Fortran 2008 or
    earlier.  Fortran compilers are no longer required to support
    these.
  BUG FIXES:
  * as.numeric(), scan(), type.convert() and other places which use
    the internal C function R_strtod now require a _non-empty_ digit
    sequence in a decimal or binary exponent.  This aligns with the
    C/POSIX standard for strtod and with ?NumericConstants.
  * as.data.frame(m, make.names=NA) now works correctly for a matrix
    m with NA's in row names.
  * The error message from &lt;POSIXlt&gt;[["hour"]] and similar now
    mentions *[[, "hour"]], as wished for in PR#17409 and proposed by
    Michael Chirico.
  * qbinom() and potentially qpois(), qnbinom(), no longer sometimes
    fail accurate inversion (of pbinom(), etc), thanks to Christopher
    Chang's report and patch in PR#18711.
  * The internal help server on Windows can again serve requests sent
    in quick succession, fixing a regression in R 4.4.0.
  * debugcall(&lt;S3Generic&gt;()) now also works when a corresponding
    S4-generic version is in the methods cache (PR#18143).
  * Package tools' toTitleCase(ch0) now returns character(0) when ch0
    is of zero length; fixing PR#18724, reported by David Hugh Jones.
  * R CMD check is no longer broken (without a check result and no
    explanation in 00check.log) for a package which declares an
    invalid VignetteBuilder in DESCRIPTION but has no vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1730376000">- CHANGES IN R 4.4.2:
  C-LEVEL FACILITIES:
  * The S-compatibility macros F77_COM and F77_COMDECL defined in
    header R_ext/RS.h are deprecated and will be removed shortly.  We
    could find no record of their use.
  BUG FIXES:
  * Mathlib function lgammacor(x) no longer warns about underflow to
    zero for large x.
  * Text widths and heights were incorrectly reported by the Quartz
    device if the drawing context didn't exist yet (typically when
    drawing off-screen to a window that is yet to appear, see
    PR#18591).
  * The Quartz device could segfault in cases where paths with spaces
    are used in the new glyph drawing API.  Thanks to Tomek
    Gieorgijewski (PR#18758).
  * On macOS in R CRAN builds, it is again possible to read
    little-endian UTF-16 text with a BOM from a connection using
    encoding="UTF-16".  Users building R from source should avoid
    using the system libiconv in macOS 14.1 and later.
  * methods' internal .requirePackage() now re-enables primitive
    method dispatch when needed; thanks to Ivan Krylov for
    demystifying CRAN package check failures on the R-devel mailing
    list.</changelog>
</package>
<package pkgid="c6e6de47f92a9f98d49b72311ebde08eb6a75addbe341d31a9581fb6dbc210890866596680f2354966a35c4bf7c54ce369a4fe60c462309f3c5930b6d2ecbe10" name="R-base" arch="x86_64">
  <version epoch="0" ver="4.4.2" rel="51.0.2.2.sr20241103"/>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1620302400">- To get in sync with d:l:R:autoCRAN the Matrix package's split
  in -devel was reversed.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339200">- improved spec file according to comments of dimstar in
  https://build.opensuse.org/request/show/892685</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339201">- CHANGES IN R 4.1.0:
  FUTURE DIRECTIONS:
  * It is planned that the 4.1.x series will be the last to support
    32-bit Windows, with production of binary packages for that
    series continuing until early 2023.
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Data set esoph in package datasets now provides the correct
    numbers of controls; previously it had the numbers of cases added
    to these.  (Reported by Alexander Fowler in PR#17964.)
  NEW FEATURES:
  * www.omegahat.net is no longer one of the repositories known by
    default to setRepositories().  (Nowadays it only provides source
    packages and is often unavailable.)
  * Function package_dependencies() (in package tools) can now use
    different dependency types for direct and recursive dependencies.
  * The checking of the size of tarball in R CMD check --as-cran
    &lt;pkg&gt; may be tweaked via the new environment variable
    _R_CHECK_CRAN_INCOMING_TARBALL_THRESHOLD_, as suggested in
    PR#17777 by Jan Gorecki.
  * Using c() to combine a factor with other factors now gives a
    factor, an ordered factor when combining ordered factors with
    identical levels.
  * apply() gains a simplify argument to allow disabling of
    simplification of results.
  * The format() method for class "ftable" gets a new option justify.
    (Suggested by Thomas Soeiro.)
  * New ...names() utility.  (Proposed by Neal Fultz in PR#17705.)
  * type.convert() now warns when its as.is argument is not
    specified, as the help file always said it _should_.  In that
    case, the default is changed to TRUE in line with its change in
    read.table() (related to stringsAsFactor) in R 4.0.0.
  * When printing list arrays, classed objects are now shown _via_
    their format() value if this is a short enough character string,
    or by giving the first elements of their class vector and their
    length.
  * capabilities() gets new entry "Rprof" which is TRUE when R has
    been configured with the equivalent of --enable-R-profiling (as
    it is by default).  (Related to Michael Orlitzky's report
    PR#17836.)
  * str(xS4) now also shows extraneous attributes of an S4 object
    xS4.
  * Rudimentary support for vi-style tags in rtags() and R CMD rtags
    has been added.  (Based on a patch from Neal Fultz in PR#17214.)
  * checkRdContents() is now exported from tools; it and also
    checkDocFiles() have a new option chkInternal allowing to check
    Rd files marked with keyword "internal" as well.  The latter can
    be activated for R CMD check via environment variable
    _R_CHECK_RD_INTERNAL_TOO_.
  * New functions numToBits() and numToInts() extend the raw
    conversion utilities to (double precision) numeric.
  * Functions URLencode() and URLdecode() in package utils now work
    on vectors of URIs.  (Based on patch from Bob Rudis submitted
    with PR#17873.)
  * path.expand() can expand ~user on most Unix-alikes even when
    readline is not in use.  It tries harder to expand ~, for example
    should environment variable HOME be unset.
  * For HTML help (both dynamic and static), Rd file links to help
    pages in external packages are now treated as references to
    topics rather than file names, and fall back to a file link only
    if the topic is not found in the target package. The earlier rule
    which prioritized file names over topics can be restored by
    setting the environment variable _R_HELP_LINKS_TO_TOPICS_ to a
    false value.
  * c() now removes NULL arguments before dispatching to methods,
    thus simplifying the implementation of c() methods, _but_ for
    back compatibility keeps NULL when it is the first argument.
    (From a report and patch proposal by Lionel Henry in PR#17900.)
  * Vectorize()'s result function's environment no longer keeps
    unneeded objects.
  * Function ...elt() now propagates visibility consistently with
    ..n.  (Thanks to Lionel Henry's PR#17905.)
  * capture.output() no longer uses non-standard evaluation to
    evaluate its arguments.  This makes evaluation of functions like
    parent.frame() more consistent.  (Thanks to Lionel Henry's
    PR#17907.)
  * packBits(bits, type="double") now works as inverse of
    numToBits().  (Thanks to Bill Dunlap's proposal in PR#17914.)
  * curlGetHeaders() has two new arguments, timeout to specify the
    timeout for that call (overriding getOption("timeout")) and TLS
    to specify the minimum TLS protocol version to be used for
    https:// URIs (_inter alia_ providing a means to check for sites
    using deprecated TLS versions 1.0 and 1.1).
  * For nls(), an optional constant scaleOffset may be added to the
    denominator of the relative offset convergence test for cases
    where the fit of a model is expected to be exact, thanks to a
    proposal by John Nash.  nls(*, trace=TRUE) now also shows the
    convergence criterion.
  * Numeric differentiation _via_ numericDeriv() gets new optional
    arguments eps and central, the latter for taking central divided
    differences.  The latter can be activated for nls() via
    nls.control(nDcentral = TRUE).
  * nls() now passes the trace and control arguments to getInitial(),
    notably for all self-starting models, so these can also be fit in
    zero-noise situations via a scaleOffset.  For this reason, the
    initial function of a selfStart model must now have ... in its
    argument list.
  * bquote(splice = TRUE) can now splice expression vectors with
    attributes: this makes it possible to splice the result of
    parse(keep.source = TRUE).  (Report and patch provided by Lionel
    Henry in PR#17869.)
  * textConnection() gets an optional name argument.
  * get(), exists(), and get0() now signal an error if the first
    argument has length greater than 1.  Previously additional
    elements were silently ignored.  (Suggested by Antoine Fabri on
    R-devel.)
  * R now provides a shorthand notation for creating functions, e.g.
    \(x) x + 1 is parsed as function(x) x + 1.
  * R now provides a simple native forward pipe syntax |&gt;.  The
    simple form of the forward pipe inserts the left-hand side as the
    first argument in the right-hand side call.  The pipe
    implementation as a syntax transformation was motivated by
    suggestions from Jim Hester and Lionel Henry.
  * all.equal(f, g) for functions now by default also compares their
    environment(.)s, notably via new all.equal method for class
    function.  Comparison of nls() fits, e.g., may now need
    all.equal(m1, m2, check.environment = FALSE).
  * .libPaths() gets a new option include.site, allowing to _not_
    include the site library.  (Thanks to Dario Strbenac's suggestion
    and Gabe Becker's PR#18016.)
  * Lithuanian translations are now available.  (Thanks to Rimantas
    Zakauskas.)
  * names() now works for DOTSXP objects.  On the other hand, in
    R-lang, the R language manual, we now warn against relying on the
    structure or even existence of such dot-dot-dot objects.
  * all.equal() no longer gives an error on DOTSXP objects.
  * capabilities("cairo") now applies only to the file-based devices
    as it is now possible (if very unusual) to build R with Cairo
    support for those but not for X11().
  * There is optional support for tracing the progress of
    loadNamespace() - see its help.
  * (Not Windows.)  l10n_info() reports an additional element, the
    name of the encoding as reported by the OS (which may differ from
    the encoding part (if any) of the result from
    Sys.getlocale("LC_CTYPE").
  * New function gregexec() which generalizes regexec() to find _all_
    disjoint matches and well as all substrings corresponding to
    parenthesized subexpressions of the given regular expression.
    (Contributed by Brodie Gaslam.)
  * New function charClass() in package utils to query the
    wide-character classification functions in use (such as
    iswprint).
  * The names of quantile()'s result no longer depend on the global
    getOption("digits"), but quantile() gets a new optional argument
    digits = 7 instead.
  * grep(), sub(), regexp and variants work considerably faster for
    long factors with few levels.  (Thanks to Michael Chirico's
    PR#18063.)
  * Provide grouping of x11() graphics windows within a window
    manager such as Gnome or Unity; thanks to a patch by Ivan Krylov
    posted to R-devel.
  * The split() method for class data.frame now allows the f argument
    to be specified as a formula.
  * sprintf now warns on arguments unused by the format string.
  * New palettes "Rocket" and "Mako" for hcl.colors() (approximating
    palettes of the same name from the 'viridisLite' package).
    Contributed by Achim Zeileis.
  * The base environment and its namespace are now locked (so one can
    no longer add bindings to these or remove from these).
  * Rterm handling of multi-byte characters has been improved,
    allowing use of such characters when supported by the current
    locale.
  * Rterm now accepts ALT+ +xxxxxxxx sequences to enter Unicode
    characters as hex digits.
  * Environment variable LC_ALL on Windows now takes precedence over
    LC_CTYPE and variables for other supported categories, matching
    the POSIX behaviour.
  * duplicated() and anyDuplicated() are now optimized for integer
    and real vectors that are known to be sorted via the ALTREP
    framework. Contributed by Gabriel Becker via PR#17993.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 14
    and so packages that provide graphics devices should be
    reinstalled.
  * Graphics devices should now specify deviceVersion to indicate
    what version of the graphics engine they support.
  * Graphics devices can now specify deviceClip.  If TRUE, the
    graphics engine will never perform any clipping of output itself.
    The clipping that the graphics engine does perform (for both
    canClip = TRUE and canClip = FALSE) has been improved to avoid
    producing unnecessary artifacts in clipped output.
  * The grid package now allows gpar(fill) to be a linearGradient(),
    a radialGradient(), or a pattern().  The viewport(clip) can now
    also be a grob, which defines a clipping path, and there is a new
    viewport(mask) that can also be a grob, which defines a mask.
    These new features are only supported so far on the Cairo-based
    graphics devices and on the pdf() device.
  * (Not Windows.)  A warning is given when a Cairo-based type is
    specified for a png(), jpeg(), tiff() or bmp() device but Cairo
    is unsupported (so type = "Xlib" is tried instead).
  * grSoftVersion() now reports the versions of FreeType and
    FontConfig if they are used directly (not _via_ Pango), as is
    most commonly done on macOS.
  C-LEVEL FACILITIES:
  * The _standalone_ libRmath math library and R's C API now provide
    log1pexp() again as documented, and gain log1mexp().
  INSTALLATION on a UNIX-ALIKE:
  * configure checks for a program pkgconf if program pkg-config is
    not found.  These are now only looked for on the path (like
    almost all other programs) so if needed specify a full path to
    the command in PKG_CONFIG, for example in file config.site.
  * C99 function iswblank is required - it was last seen missing ca
    2003 so the workaround has been removed.
  * There are new configure options --with-internal-iswxxxxx,
  - -with-internal-towlower and --with-internal-wcwidth which allows
    the system functions for wide-character classification,
    case-switching and width (wcwidth and wcswidth) to be replaced by
    internal ones.  The first has long been used on macOS, AIX (and
    Windows) but this enables it to be unselected there and selected
    for other platforms (it is the new default on Solaris).  The
    second is new in this version of R and is selected by default on
    macOS and Solaris.  The third has long been the default and
    remains so as it contains customizations for East Asian
    languages.
    System versions of these functions are often minimally
    implemented (sometimes only for ASCII characters) and may not
    cover the full range of Unicode points: for example Solaris (and
    Windows) only cover the Basic Multilingual Plane.
  * Cairo installations without X11 are more likely to be detected by
    configure, when the file-based Cairo graphics devices will be
    available but not X11(type = "cairo").
  * There is a new configure option --with-static-cairo which is the
    default on macOS.  This should be used when only static cairo
    (and where relevant, Pango) libraries are available.
  * Cairo-based graphics devices on platforms without Pango but with
    FreeType/FontConfig will make use of the latter for font
    selection.
  LINK-TIME OPTIMIZATION on a UNIX-ALIKE:
  * Configuring with flag --enable-lto=R now also uses LTO when
    installing the recommended packages.
  * R CMD INSTALL and R CMD SHLIB have a new flag --use-LTO to use
    LTO when compiling code, for use with R configured with
  - -enable-lto=R.  For R configured with --enable-lto, they have
    the new flag --no-use-LTO.
    Packages can opt in or out of LTO compilation _via_ a UseLTO
    field in the DESCRIPTION file.  (As usual this can be overridden
    by the command-line flags.)
  BUILDING R on Windows:
  * for GCC &gt;= 8, FC_LEN_T is defined in config.h and hence character
    lengths are passed from C to Fortran in _inter alia_ BLAS and
    LAPACK calls.
  * There is a new text file src/gnuwin32/README.compilation, which
    outlines how C/Fortran code compilation is organized and
    documents new features:
  * R can be built with Link-Time Optimization with a suitable
    compiler - doing so with GCC 9.2 showed several
    inconsistencies which have been corrected.
  * There is support for cross-compiling the C and Fortran code
    in R and standard packages on suitable (Linux) platforms.
    This is mainly intended to allow developers to test later
    versions of compilers - for example using GCC 9.2 or 10.x has
    detected issues that GCC 8.3 in Rtools40 does not.
  * There is experimental support for cross-building R packages
    with C, C++ and/or Fortran code.
  * The R installer can now be optionally built to support a single
    architecture (only 64-bit or only 32-bit).
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++14 where
    available (which it is on all currently checked platforms): if
    not (as before) C++11 is used if available otherwise C++ is not
    supported.
    Packages which specify C++11 will still be installed using C++11.
    C++14 compilers may give deprecation warnings, most often for
    std::random_shuffle (deprecated in C++14 and removed in C++17).
    Either specify C++11 (see 'Writing R Extensions') or modernize
    the code and if needed specify C++14.  The latter has been
    supported since R 3.4.0 so the package's DESCRIPTION would need
    to include something like
    Depends: R (&gt;= 3.4)
  PACKAGE INSTALLATION on Windows:
  * R CMD INSTALL and R CMD SHLIB make use of their flag --use-LTO
    when the LTO_OPT make macro is set in file etc/${R_ARCH}/Makeconf
    or in a personal/site Makevars file.  (For details see 'Writing R
    Extensions' SS4.5.)
    This provides a valuable check on code consistency.  It does work
    with GCC 8.3 as in Rtools40, but that does not detect everything
    the CRAN checks with current GCC do.
  PACKAGE INSTALLATION on macOS:
  * The default personal library directory on builds with
  - -enable-aqua (including CRAN builds) now differs by CPU type,
    one of
    ~/Library/R/x86_64/x.y/library
    ~/Library/R/arm64/x.y/library
    This uses the CPU type R (and hence the packages) were built for,
    so when a x86_64 build of R is run under Rosetta emulation on an
    arm64 Mac, the first is used.
  UTILITIES:
  * R CMD check can now scan package functions for bogus return
    statements, which were possibly intended as return() calls (wish
    of PR#17180, patch by Sebastian Meyer). This check can be
    activated via the new environment variable
    _R_CHECK_BOGUS_RETURN_, true for --as-cran.
  * R CMD build omits tarballs and binaries of previous builds from
    the top-level package directory.  (PR#17828, patch by Sebastian
    Meyer.)
  * R CMD check now runs sanity checks on the use of LazyData, for
    example that a data directory is present and that
    LazyDataCompression is not specified without LazyData and has a
    documented value.  For packages with large LazyData databases
    without specifying LazyDataCompression, there is a reference to
    the code given in 'Writing R Extensions' SS1.1.6 to test the
    choice of compression (as in all the CRAN packages tested a
    non-default method was preferred).
  * R CMD build removes LazyData and LazyDataCompression fields from
    the DESCRIPTION file of packages without a data directory.
  ENCODING-RELATED CHANGES:
  * The parser now treats \Unnnnnnnn escapes larger than the upper
    limit for Unicode points (\U10FFFF) as an error as they cannot be
    represented by valid UTF-8.
    Where such escapes are used for outputting non-printable
    (including unassigned) characters, 6 hex digits are used (rather
    than 8 with leading zeros).  For clarity, braces are used, for
    example \U{0effff}.
  * The parser now looks for non-ASCII spaces on Solaris (as
    previously on most other OSes).
  * There are warnings (including from the parser) on the use of
    unpaired surrogate Unicode points such as \uD834.  (These cannot
    be converted to valid UTF-8.)
  * Functions nchar(), tolower(), toupper() and chartr() and those
    using regular expressions have more support for inputs with a
    marked Latin-1 encoding.
  * The character-classification functions used (by default) to
    replace the system iswxxxxx functions on Windows, macOS and AIX
    have been updated to Unicode 13.0.0.
    The character-width tables have been updated to include new
    assignments in Unicode 13.0.0.
  * The code for evaluating default (extended) regular expressions
    now uses the same character-classification functions as the rest
    of R (previously they differed on Windows, macOS and AIX).
  * There is a build-time option to replace the system's
    wide-character wctrans C function by tables shipped with R: use
    configure option --with-internal-towlower or (on Windows)
  - DUSE_RI18N_CASE in CFLAGS when building R.  This may be needed
    to allow tolower() and toupper() to work with Unicode characters
    beyond the Basic Multilingual Plane where not supported by system
    functions (e.g. on Solaris where it is the new default).
  * R is more careful when truncating UTF-8 and other multi-byte
    strings that are too long to be printed, passed to the system or
    libraries or placed into an internal buffer.  Truncation will no
    longer produce incomplete multibyte characters.
  DEPRECATED AND DEFUNCT:
  * Function plclust() from the package stats and
    package.dependencies(), pkgDepends(), getDepList(),
    installFoundDepends(), and vignetteDepends() from package tools
    are defunct.
  * Defunct functions checkNEWS() and readNEWS() from package tools
    and CRAN.packages() from utils have been removed.
  * R CMD config CXXCPP is defunct (it was deprecated in R 3.6.2).
  * parallel::detectCores() drops support for Irix (retired in 2013).
  * The LINPACK argument to chol.default(), chol2inv(),
    solve.default() and svd() has been defunct since R 3.1.0.  It was
    silently ignored up to R 4.0.3 but now gives an error.
  * Subsetting/indexing, such as ddd[*] or ddd$x on a DOTSXP
    (dot-dot-dot) object ddd has been disabled; it worked by accident
    only and was undocumented.
  BUG FIXES:
  * Many more C-level allocations (mainly by malloc and strdup) are
    checked for success with suitable alternative actions.
  * Bug fix for replayPlot(); this was turning off graphics engine
    display list recording if a recorded plot was replayed in the
    same session.  The impact of the bug became visible if resize the
    device after replay OR if attempted another savePlot() after
    replay (empty display list means empty screen on resize or empty
    saved plot).
  * R CMD check etc now warn when a package exports non-existing S4
    classes or methods, also in case of no "methods" presence.
    (Reported by Alex Bertram; reproducible example and patch by
    Sebastian Meyer in PR#16662.)
  * boxplot() now also accepts calls for labels such as ylab, the
    same as plot().  (Reported by Marius Hofert.)
  * The help page for xtabs() now correctly states that addNA is
    setting na.action = na.pass among others.  (Reported as PR#17770
    by Thomas Soeiro.)
  * The R CMD check &lt;pkg&gt; gives a longer and more comprehensible
    message when DESCRIPTION misses dependencies, e.g., in Imports:.
    (Thanks to the contributors of PR#17179.)
  * update.default() now calls the generic update() on the formula to
    work correctly for models with extended formulas.  (As reported
    and suggested by Neal Fultz in PR#17865.)
  * The horizontal position of leaves in a dendrogram is now correct
    also with center = FALSE.  (PR#14938, patch from Sebastian
    Meyer.)
  * all.equal.POSIXt() no longer warns about and subsequently ignores
    inconsistent "tzone" attributes, but describes the difference in
    its return value (PR#17277).  This check can be disabled _via_
    the new argument check.tzone = FALSE as suggested by Sebastian
    Meyer.
  * as.POSIXct() now populates the "tzone" attribute from its tz
    argument when x is a logical vector consisting entirely of NA
    values.
  * x[[2^31]] &lt;- v now works.  (Thanks to the report and patch by
    Suharto Anggono in PR#17330.)
  * In log-scale graphics, axis() ticks and label positions are now
    computed more carefully and symmetrically in their range,
    typically providing _more_ ticks, fulfilling wishes in PR#17936.
    The change really corresponds to an improved axisTicks() (package
    grDevices), potentially influencing grid and lattice, for
    example.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now correct to at
    least five digits where it was catastrophically wrong,
    previously.
  * sum(df) and similar "Summary"- and "Math"-group member functions
    now work for data frames df with logical columns, notably also of
    zero rows.  (Reported to R-devel by Martin "b706".)
  * unsplit() had trouble with tibbles due to unsound use of rep(NA,
    len)-indexing, which should use NA_integer_ (Reported to R-devel
    by Mario Annau.)
  * pnorm(x, log.p = TRUE) underflows to -Inf slightly later.
  * show(&lt;hidden S4 generic&gt;) prints better and without quotes for
    non-hidden S4 generics.
  * read.table() and relatives treated an "NA" column name as missing
    when check.names = FALSE PR#18007.
  * Parsing strings containing UTF-16 surrogate pairs such as
    "\uD834\uDD1E" works better on some (uncommon) platforms.
    sprintf("%X", utf8ToInt("\uD834\uDD1E")) should now give "1D11E"
    on all platforms.
  * identical(x,y) is no longer true for differing DOTSXP objects,
    fixing PR#18032.
  * str() now works correctly for DOTSXP and related exotics, even
    when these are doomed.
    Additionally, it no longer fails for lists with a class and
    "irregular" method definitions such that e.g. lapply(*) will
    necessarily fail, as currently for different igraph objects.
  * Too long lines in environment files (e.g. Renviron) no longer
    crash R. This limit has been increased to 100,000 bytes.
    (PR#18001.)
  * There is a further workaround for FreeType giving incorrect
    italic font faces with cairo-based graphics devices on macOS.
  * add_datalist(*, force = TRUE) (from package tools) now actually
    updates an existing data/datalist file for new content.  (Thanks
    to a report and patch by Sebastian Meyer in PR#18048.)
  * cut.Date() and cut.POSIXt() could produce an empty last interval
    for breaks = "months" or breaks = "years".  (Reported as PR#18053
    by Christopher Carbone.)
  * Detection of the encoding of 'regular' macOS locales such as
    en_US (which is UTF-8) had been broken by a macOS change:
    fortunately these are now rarely used with en_US.UTF-8 being
    preferred.
  * sub() and gsub(pattern, repl, x, *) now keep attributes of x such
    as names() also when pattern is NA (PR#18079).
  * Time differences ("difftime" objects) get a replacement and a
    rep() method to keep "units" consistent.  (Thanks to a report and
    patch by Nicolas Bennett in PR#18066.)
  * The \RdOpts macro, setting defaults for \Sexpr options in an Rd
    file, had been ineffective since R 2.12.0: it now works again.
    (Thanks to a report and patch by Sebastian Meyer in PR#18073.)
  * mclapply and pvec no longer accidentally terminate parallel
    processes started before by mcparallel or related calls in
    package parallel (PR#18078).
  * grep and other functions for evaluating (extended) regular
    expressions handle in Unicode also strings not explicitly flagged
    UTF-8, but flagged native when running in UTF-8 locale.
  * Fixed a crash in fifo implementation on Windows (PR#18031).
  * Binary mode in fifo on Windows is now properly detected from
    argument open (PR#15600, PR#18031).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1622808000">- The line %{__install} -m 755 -d %{_infodir}
  no longer works in TW or Factory.
  But without that line it works everywhere. So this instruction
  was commented out of the spec file.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1628596800">- CHANGES IN R 4.1.1:
  NEW FEATURES:
  * require(pkg, quietly = TRUE) is quieter and in particular does
    not warn if the package is not found.
  DEPRECATED AND DEFUNCT:
  * Use of ftp:// URIs should be regarded as deprecated, with
    on-going support confined to method = "libcurl" and not routinely
    tested.  (Nowadays no major browser supports them.)
  * The non-default method = "internal" is deprecated for http:// and
    ftp:// URIs for both download.file and url.
  * On Windows, method = "wininet" is deprecated for http://,
    https:// and ftp:// URIs for both download.file and url.  (A
    warning is only given for ftp://.)
    For ftp:// URIs the default method is now "libcurl" if available
    (which it is on CRAN builds).
    method = "wininet" remains the default for http:// and https://
    URIs but if libcurl is available, using method = "libcurl" is
    preferred.
  INSTALLATION:
  * make check now works also without a LaTeX installation.  (Thanks
    to Sebastian Meyer's PR#18103.)
  BUG FIXES:
  * make check-devel works again in an R build configured with
  - -without-recommended-packages.
  * qnbinom(p, size, mu) for large size/mu is correct now in a range
    of cases (PR#18095); similarly for the (size, prob)
    parametrization of the negative binomial.  Also qpois() and
    qbinom() are better and or faster for extreme cases.  The
    underlying C code has been modularized and is common to all four
    cases of discrete distributions.
  * gap.axis is now part of the axis() arguments which are passed
    from bxp(), and hence boxplot().  (Thanks to Martin Smith's
    report and suggestions in PR#18109.)
  * .First and .Last can again be set from the site profile.
  * seq.int(from, to, *) and seq.default(..) now work better in large
    range cases where from-to is infinite where the two boundaries
    are finite.
  * all.equal(x,y) now returns TRUE correctly also when several
    entries of abs(x) and abs(y) are close to .Machine$double.xmax,
    the largest finite numeric.
  * model.frame() now clears the object bit when removing the class
    attribute of a value via na.action (PR#18100).
  * charClass() now works with multi-character strings on Windows
    (PR#18104, fixed by Bill Dunlap).
  * encodeString() on Solaris now works again in Latin-1 encoding on
    characters represented differently in UTF-8.  Support for
    surrogate pairs on Solaris has been improved.
  * file.show() on Windows now works with non-ASCII path names
    representable in the current native encoding (PR#18132).
  * Embedded R on Windows can now find R home directory via the
    registry even when installed only for the current user
    (PR#18135).
  * pretty(x) with finite x now returns finite values also in the
    case where the extreme x values are close in size to the maximal
    representable number .Machine$double.xmax.
    Also, it's been tweaked for very small ranges and when a boundary
    is close (or equal) to zero; e.g., pretty(c(0,1e-317)) no longer
    has negative numbers, currently still warning about a very small
    range, and pretty(2^-(1024 - 2^-1/(c(24,10)))) is more accurate.
  * The error message for not finding vignette files when weaving has
    correct file sizes now. (Thanks to Sebastian Meyer's PR#18154.)
  * dnbinom(20, &lt;large&gt;, 1) now correctly gives 0, and similar cases
    are more accurate with underflow precaution.  (Reported by Francisco Vera Alcivar in PR#18072.)</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635163200">- repaired https://bugzilla.suse.com/show_bug.cgi?id=1191380
  (rpmacros now go to rpmmacrodir)
- minor clean-ups in spec file</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635768000">- CHANGES IN R 4.1.2:
  C-LEVEL FACILITIES:
  * The workaround in headers R.h and Rmath.h (using namespace std;)
    for the Oracle Developer Studio compiler is no longer needed now
    C++11 is required so has been removed.  A couple more usages of
    log() (which should have been std::log()) with an int argument
    are reported on Solaris.
  * The undocumented limit of 4095 bytes on messages from the
    S-compatibility macros PROBLEM and MESSAGE is now documented and
    longer messages will be silently truncated rather than
    potentially causing segfaults.
  * If the R_NO_SEGV_HANDLER environment variable is non-empty, the
    signal handler for SEGV/ILL/BUS signals (which offers recovery
    user interface) is not set. This allows more reliable debugging
    of crashes that involve the console.
  DEPRECATED AND DEFUNCT:
  * The legacy S-compatibility macros PROBLEM, MESSAGE, ERROR, WARN,
    WARNING, RECOVER, ... are deprecated and will be hidden in R
    4.2.0. R's native interface of Rf_error and Rf_warning has long
    been preferred.
  BUG FIXES:
  * .mapply(F, dots, .) no longer segfaults when dots is not a list
    and uses match.fun(F) as always documented; reported by Andrew
    Simmons in PR#18164.
  * hist(&lt;Date&gt;, ...) and hist(&lt;POSIXt&gt;, ...)  no longer pass
    arguments for rect() (such as col and density) to axis().
    (Thanks to Sebastian Meyer's PR#18171.)
  * \Sexpr{ch} now preserves Encoding(ch). (Thanks to report and
    patch by Jeroen Ooms in PR#18152.)
  * Setting the RNG to "Marsaglia-Multicarry" e.g., by RNGkind(), now
    warns in more places, thanks to Andr'e Gillibert's report and
    patch in PR#18168.
  * gray(numeric(), alpha=1/2) no longer segfaults, fixing PR#18183,
    reported by Till Krenz.
  * Fixed dnbinom(x, size=&lt;very_small&gt;, .., log=TRUE) regression,
    reported by Martin Morgan.
  * as.Date.POSIXlt(x) now keeps names(x), thanks to Davis Vaughan's
    report and patch in PR#18188.
  * model.response() now strips an "AsIs" class typically, thanks to
    Duncan Murdoch's report and other discussants in PR#18190.
  * try() is considerably faster in case of an error and long call,
    as e.g., from some do.call().  Thanks to Alexander Kaever's
    suggestion posted to R-devel.
  * qqline(y = &lt;object&gt;) such as y=I(.), now works, see also
    PR#18190.
  * Non-integer mgp par() settings are now handled correctly in
    axis() and mtext(), thanks to Mikael Jagan and Duncan Murdoch's
    report and suggestion in PR#18194.
  * formatC(x) returns length zero character() now, rather than ""
    when x is of length zero, as documented, thanks to Davis
    Vaughan's post to R-devel.
  * removeSource(fn) now retains (other) attributes(fn).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1647000000">- CHANGES IN R 4.1.3:
  NEW FEATURES:
  * The default version of Bioconductor has been changed to 3.14.
    (This is used by setRepositories and the menus in GUIs.)
  UTILITIES:
  * R CMD check --as-cran has a workaround for a bug in versions of
    file up to at least 5.41 which mis-identify DBF files last
    changed in 2022 as executables.
  C-LEVEL FACILITIES:
  * The legacy S-compatibility macros SINGLE_* in R_ext/Constants.h
    (included by R.h) are deprecated and will be removed in R 4.2.0.
  BUG FIXES:
  * Initialization of self-starting nls() models with initialization
    functions following the pre-R-4.1.0 API (without the ...
    argument) works again for now, with a deprecation warning.
  * Fixed quoting of ~autodetect~ in Java setting defaults to avoid
    inadvertent user lookup due to leading ~, reported in PR#18231 by
    Harold Gutch.
  * substr(., start, stop) &lt;- v now treats _negative_ stop values
    correctly.  Reported with a patch in PR#18228 by Brodie Gaslam.
  * Subscripting an array x without dimnames by a
    length(dim(x))-column character matrix gave "random" non-sense,
    now an error; reported in PR#18244 by Mikael Jagan.
  * ...names() now matches names(list(...)) closely, fixing PR#18247.
  * all.equal(*, scale = s) now works as intended when length(s) &gt; 1,
    partly thanks to Michael Chirico's PR#18272.
  * print(x) for long vectors x now also works for named atomic
    vectors or lists and prints the correct number when reaching the
    getOption("max.print") limit; partly thanks to a report and
    proposal by Hugh Parsonage to the R-devel list.
  * all.equal(&lt;selfStart&gt;, *) no longer signals a deprecation
    warning.
  * reformulate(*, response=r) gives a helpful error message now when
    length(r) &gt; 1, thanks to Bill Dunlap's PR#18281.
  * Modifying globalCallingHandlers inside withCallingHandlers() now
    works or fails correctly, thanks to Henrik Bengtsson's PR#18257.
  * hist(&lt;Date&gt;, breaks = "days") and hist(&lt;POSIXt&gt;, breaks = "secs")
    no longer fail for inputs of length 1.
  * qbeta(.001, .9, .009) and similar cases now converge correctly
    thanks to Ben Bolker's report in PR#17746.
  * window(x, start, end) no longer wrongly signals "'start' cannot
    be after 'end'", fixing PR#17527 and PR#18291.
  * data() now checks that its (rarely used) list argument is a
    character vector - a couple of packages passed other types and
    gave incorrect results.
  * which() now checks its arr.ind argument is TRUE rather coercing
    to logical and taking the first element - which gave incorrect
    results in package code.
  * model.weights() and model.offset() more carefully extract their
    model components, thanks to Ben Bolker and Tim Taylor's R-devel
    post.
  * list.files(recursive = TRUE) now shows all broken symlinks
    (previously, some of them may have been omitted, PR#18296).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1650628800">- CHANGES IN R 4.2.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * The formula method of aggregate() now matches the generic in
    naming its first argument x (resolving PR#18299 by Thomas
    Soeiro).
    This means that calling aggregate() with a formula as a named
    first argument requires name formula in earlier versions of R and
    name x now, so portable code should not name the argument (code
    in many packages did).
  * Calling &amp;&amp; or || with either argument of length greater than one
    now gives a warning (which it is intended will become an error).
  * Calling if() or while() with a condition of length greater than
    one gives an error rather than a warning.  Consequently,
    environment variable _R_CHECK_LENGTH_1_CONDITION_ no longer has
    any effect.
  * Windows users should consult the WINDOWS section below for some
    profound changes including
  * Support for 32-bit builds has been dropped.
  * UTF-8 locales are used where available.
  * The default locations for the R installation and personal
    library folder have been changed.
    Thanks to Tomas Kalibera for months of work on the Windows port
    for this release.
  NEW FEATURES:
  * matrix(x, n, m) now warns in more cases where length(x) differs
    from n * m, as suggested by Abby Spurdle and Wolfgang Huber in
    Feb 2021 on the R-devel mailing list.
    This warning can be turned into an error by setting environment
    variable _R_CHECK_MATRIX_DATA_ to TRUE: R CMD check --as-cran
    does so unless it is already set.
  * Function file_test() in package utils gains tests for symlinks,
    readability and writability.
  * capabilities("libxml") is now false.
    The description of capabilities("http/ftp") now reflects that it
    refers to the default method, no longer the internal one.
  * simplify2array() gains an except argument for controlling the
    exceptions used by sapply().
  * Environment variables R_LIBS_USER and R_LIBS_SITE are both now
    set to the R system default if unset or empty, and can be set to
    NULL to indicate an empty list of user or site library
    directories.
  * The warning for axis()(-like) calls in cases of relatively small
    ranges (typically in log-scale situations) is slightly improved
    _and_ suppressed from explicit calls to .axisPars() as has always
    been the intention.
  * The contrasts setter function `contrasts&lt;-` gains an explicit
    default how.many = NULL rather than just using missing(how.many).
  * grid.pretty() gains a new optional argument n = 5.
  * There is a new function .pretty() with option bounds as a
    technical-utility version of pretty().  It and pretty() gain a
    new argument f.min with a better than back-compatible default.
  * Function grDevices::axisTicks() and related functions such as
    graphics::axis() work better, notably for the log scale; partly
    because of the pretty() improvements, but also because care is
    taken e.g., when ylim is finite but diff(ylim) is infinite.
  * nclass.FD() gains a digits option.
  * The R Mathlib internal C function bd0() (called indirectly from a
    dozen probability density and distribution functions such as
    dpois(), dbinom(), dgamma(), pgamma() _etc_) has been
    complemented by a more sophisticated and (mostly) more accurate C
    function ebd0(), currently called only by internal dpois_raw()
    improving accuracy for R level dpois() and potentially others
    calling it such as dnbinom(), dgamma() or pgamma().  (Thanks to
    Morten Welinder's PR#15628.)
  * write.ftable() gains sep = " " argument as suggested by Thomas
    Soeiro.
  * The names of the locale categories supported by R's
    Sys.getlocale() and Sys.setlocale() are now provided by variable
    .LC.categories in the base namespace.
  * The Date and POSIXt methods for hist() and the histogram method
    for plot() now also use the new default col = "lightgray" in
    consistency with the corresponding change to hist()'s default for
    R 4.0.0.
  * hist.default() gains new fuzz argument, and the histogram plot
    method no longer uses fractional axis ticks when displaying
    counts ("Frequency").
  * mapply() and hence Map() now also obey the "max-or-0-if-any"
    recycling rule, such that, e.g., Map(`+`, 1:3, 1[0]) is valid
    now.
  * as.character(&lt;obj&gt;) for "hexmode" or "octmode" objects now
    fulfils the important basic rule as.character(x)[j] ===
    as.character(x[j]).
  * The set utility functions, notably intersect() have been tweaked
    to be more consistent and symmetric in their two set arguments,
    also preserving a common mode.
  * substr(ch, start,end) &lt;- new now e.g., preserves names(ch); ditto
    for substring(), thanks to a patch from Brodie Gaslam.
  * plot(&lt;lm&gt;) gains a extend.ylim.f argument, in partial response to
    PR#15285; further PR#17784 is fixed thanks to several
    contributors and a patch by Elin Waring.  The Cook's dist
    contours get customizable via cook.col and cook.lty with a
    different default color and their legend is nicer by default and
    customizable via cook.legendChanges.
  * Attempting to subset an object that is not subsettable now
    signals an error of class notSubsettableError. The
    non-subsettable object is contained in the object field of the
    error condition.
  * Subscript-out-of-bounds errors are now signaled as errors of
    class subscriptOutOfBoundsError.
  * Stack-overflow errors are now signaled as errors inheriting from
    class stackOverflowError. See ?stackOverflowError for more
    details.
  * New partly experimental Sys.setLanguage() utility, solving the
    main problem of PR#18055.
  * gettext() and gettextf() get a new option trim = TRUE which when
    set to false allows translations for strings such as "Execution
    halted\n" typical for C code.
  * An experimental implementation of hash tables is now available.
    See ?hashtab for more details.
  * identical() gains a extptr.as.ref argument for requesting that
    external pointer objects be compared as reference objects.
  * reorder() gets an argument decreasing which it passes to sort()
    for level creation; based on the wish and patch by Thomas Soeiro
    in PR#18243.
  * as.vector() gains a data.frame method which returns a simple
    named list, also clearing a long standing 'FIXME' to enable
    as.vector(&lt;data.frame&gt;, mode="list").  This breaks code relying
    on as.vector(&lt;data.frame&gt;) to return the unchanged data frame.
  * legend() is now vectorized for arguments cex, x.intersp, and
    text.width.  The latter can now also be specified as a vector
    (one element for each column of the legend) or as NA for
    computing a proper column wise maximum value of strwidth(legend).
    The argument y.intersp can be specified as a vector with one
    entry for each row of the legend.
    legend() also gains new arguments title.cex and title.font.
    Thanks to Swetlana Herbrandt.
  * Deparsing no longer remaps attribute names dim, dimnames, levels,
    names and tsp to historical S-compatible names (which structure()
    maps back).
  * sample() and sample.int() have additional sanity checks on their
    size and n arguments.
    all.equal.numeric() gains a sanity check on its tolerance
    argument - calling all.equal(a, b, c) for three numeric vectors
    is a surprisingly common error.
    mean(na.rm =), rank(na.last =), barplot(legend.text =),
    boxplot(), contour(drawlabels =), polygon(border =) and
    methods::is(class2 =) have more robust sanity checks on their
    arguments.
    R CMD Rd2pdf (used by R CMD check) has a more robust sanity check
    on the format of \alias{} commands.
  * psigamma(x, deriv) for negative x now also works for deriv = 4
    and 5; their underlying C level dpsifn() is documented in
    'Writing R Extensions'.
  * The HTML help system now uses HTML5 (wish of PR#18149).
  * ks.test() now provides exact p-values also with ties and MC
    p-values in the two-sample (Smirnov) case.  By Torsten Hothorn.
  * ks.test() gains a formula interface, with y ~ 1 for the
    one-sample (Kolmogorov) test and y ~ group for the two-sample
    (Smirnov) test.  Contributed by Torsten Hothorn.
  * The return value from ks.test() now has class c("ks.test",
    "htest") - packages using try() need to take care to use
    inherits() and not == on the class.
  * New functions psmirnov(), qsmirnov() and rsmirnov() in package
    stats implementing the asymptotic and exact distributions of the
    two-sample Smirnov statistic.
  * iconv() now allows sub = "c99" to use C99-style escapes for UTF-8
    inputs which cannot be converted to encoding to.
  * In a forward pipe |&gt; expression it is now possible to use a named
    argument with the placeholder _ in the rhs call to specify where
    the lhs is to be inserted.  The placeholder can only appear once
    on the rhs.
  * The included LAPACK sources have been updated to version 3.10.0,
    except for the four Fortran 77 routines which 3.10.0 has
    re-implemented in Fortran 90 (where the older versions have been
    retained as the R build process does not support Fortran 90).
  * path.expand() and most other uses of tilde expansion now warn if
    a path would be too long if expanded.  (An exception is
    file.exists(), which silently returns false.)
  * trunc(&lt;Date&gt;, *) now supports units = "months" or "years" for
    consistency with the POSIXt method, thanks to Dirk Eddelbuettel's
    proposal in PR#18099.
  * list2DF() now checks that its arguments are of the same length,
    rather than use recycling.
  * The HTML help system has several new features: LaTeX-like math
    can be typeset using either KaTeX or MathJax, usage and example
    code is highlighted using Prism, and for dynamic help the output
    of examples and demos can be shown within the browser if the
    knitr package is installed. These features can be disabled by
    setting the environment variable _R_HELP_ENABLE_ENHANCED_HTML_ to
    a false value.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 15
    and so packages that provide graphics devices should be
    reinstalled.
  * The grid package now allows the user to specify a "vector" of
    pattern fills.  The fill argument to gpar() accepts a list of
    gradients and/or patterns and the functions linearGradient(),
    radialGradient(), and pattern() have a new group argument.
    Points grobs (data symbols) can now also have a pattern fill.
    The grobCoords() function now returns a more informative and
    complex result.
  * The grid package has new functions for drawing isolated groups:
    grid.group(), grid.define(), and grid.use().  These functions add
    compositing operators and affine transformations to R's graphics
    capabilities.
    The grid package also has new functions for stroking and filling
    paths: grid.stroke(), grid.fill(), and grid.fillStroke().
    A new function as.path() allows the user to specify the fill rule
    for a path that is to be used for clipping, stroking, or filling;
    available options are "winding" and "evenodd".  A new function
    as.mask() allows the user to specify the type of a mask;
    available options are "alpha" and "luminance".
    These new features are only supported so far (at most) on the
    Cairo-based graphics devices and on the pdf() device.
  * dev.capabilities() reports on device support for the new
    features.
  * par() now warns about unnamed non-character arguments to prevent
    misuse such as {usr &lt;- par("usr"); par(usr)}.
  INSTALLATION:
  * Facilities for accessing ftp:// sites are no longer tested
    (except _pro tem_ for curlGetHeaders()) as modern browsers have
    removed support.
  * R can now be built with DEFS = -DSTRICT_R_HEADERS .
  PACKAGE INSTALLATION:
  * R CMD INSTALL no longer tangles vignettes. This completes an R
    CMD build change in R 3.0.0 and affects packages built before R
    3.0.2. Such packages should be re-made with R CMD build to have
    the tangled R code of vignettes shipped with the tarball.
  * USE_FC_LEN_T will become the default: this uses the correct
    prototypes for Fortran BLAS/LAPACK routines called from C/C++,
    and requires adjustment of most such calls - see 'Writing R
    Extensions' SS6.6.2.  (This has been supported since R 3.6.2.)
  * Package installation speed for packages installed with
    keep.source has been improved. This resolve the issue reported by
    Ofek Shilon in PR#18236.
  UTILITIES:
  * R CMD check can optionally report files/directories left behind
    in home, /tmp (even though TMPDIR is set) and other directories.
    See the "R Internals" manual for details.
  * R CMD check now reports byte-compilation errors during
    installation.  These are not usually fatal but may result in
    parts of the package not being byte-compiled.
  * _R_CHECK_DEPENDS_ONLY_ can be applied selectively to examples,
    tests and/or vignettes in R CMD check: see the "R Internals"
    manual.
  * _R_CHECK_SRC_MINUS_W_IMPLICIT_ now defaults to true: recent
    versions of Apple clang on macOS have made implicit function
    declarations in C into a compilation error.
  * R CMD check --as-cran makes use of the environment variable
    AUTORECONF.  See the "R Internals" manual SS8 for further details.
  * R CMD check --use-valgrind also uses valgrind when re-building
    vignettes as some non-Sweave vignettes unhelpfully comment out
    all their code when R CMD check runs vignettes.
  * Errors in re-building vignettes (unless there are LaTeX errors)
    are reported by R CMD check as ERROR rather than WARNING when
    running vignettes has been skipped (as it frequently is in CRAN
    checks and by --as-cran).
  * R CMD Rd2pdf gains a --quiet option that is used by R CMD build
    when building the PDF package manual.
  * R CMD Rd2pdf now always runs LaTeX in batch mode, consistent with
    Texinfo &gt;= 6.7. The --batch option is ignored.
  * R CMD build and R CMD check now include the Rd file name and line
    numbers in the error message of an \Sexpr evaluation failure.
  * For packages using the \doi Rd macro (now an install-time \Sexpr)
    but no other dynamic Rd content, R CMD build now produces a
    smaller tarball and is considerably faster - skipping temporary
    package installation.
  C-LEVEL FACILITIES:
  * The non-API header R_ext/R-ftp-http.h is no longer provided, as
    the entry points it covered are now all defunct.
  * A number of non-API declarations and macro definitions have been
    moved from the installed header Rinternals.h to the internal
    header Defn.h. Packages that only use entry points and
    definitions documented to be part of the API as specified in
    'Writing R Extensions' SS6 should not be affected.
  * The macro USE_RINTERNALS no longer has any effect when compiling
    package code.  Packages which also use R_NO_REMAP will need to
    ensure that the remapped names are used for calls to API
    functions that were formerly also made available as macros.
  * The deprecated legacy S-compatibility macros PROBLEM, MESSAGE,
    ERROR, WARN, WARNING, RECOVER, ... are no longer defined in
    R_exts/RS.h (included by R.h).  Replace these by calls to
    Rf_error and Rf_warning (defined in header R_ext/Error.h included
    by R.h).
    Header R_ext/RS.h no longer includes R_ext/Error.h.
  * Header R_ext/Constants.h (included by R.h) when included from C++
    now includes the C++ header cfloat rather than the C header
    float.h (now possible as C++11 is required).
  * The legacy S-compatibility macros DOUBLE_* in R_ext/Constants.h
    (included by R.h) are deprecated.
  * The deprecated S-compatibility macros SINGLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * R_Calloc, R_Free and R_Realloc are preferred to their unprefixed
    forms and error messages now use the prefix. These forms were
    introduced in R 3.4.0 and are available even when
    STRICT_R_HEADERS is defined.
  * rmultinom has been documented in 'Writing R Extensions' SS6 so is
    now part of the R API.
  * Similarly, Rtanpi, called from R level tanpi() is now part of the
    R API.
  * The long-deprecated, undocumented and non-API entry point call_R
    is no longer declared in R_ext/RS.h (included by R.h).
  * The header S.h which has been unsupported since Jan 2016 has been
    removed.  Use R.h instead.
  DEPRECATED AND DEFUNCT:
  * The (non-default and deprecated) method = "internal" for
    download.file() and url() no longer supports http:// nor ftp://
    URIs.  (It is used only for file:// URIs.)
    On Windows, download.file(method = "wininet") no longer supports
    ftp:// URIs.  (It is no longer the default method, which is
    "libcurl" and does.)
    On Windows, the deprecated method = "wininet" now gives a warning
    for http:// and https:// URIs for both download.file() and url().
    (It is no longer the default method.)
  * On Windows, the command-line option --max-mem-size and
    environment variable R_MAX_MEM_SIZE are defunct.  The memory
    allocation limit was important for 32-bit builds, but these are
    no longer supported.
  * default.stringsAsFactors() is now formally deprecated, where that
    was only mentioned on its regular help page, previously.  So it
    now gives a warning if called.
  * unix.time() is defunct now; it had been deprecated since R 3.4.0.
  BUG FIXES:
  * Setting digits = 0 in format(), print.default() (and hence
    typically print()) or options() is again invalid.  Its behaviour
    was platform-dependent, and it is unclear what "zero significant
    digits" should mean (PR#18098).
  * Messages from C code in the cairo section of package grDevices
    are now also offered for translation, thanks to Michael Chirico's
    PR#18123.
  * mean(x) with finite x now is finite also without "long.double"
    capability.
  * R CMD Rd2pdf no longer leaves an empty build directory behind
    when it aborts due to an already existing output file.  (Thanks
    to Sebastian Meyer's PR#18141.)
  * density(x, weights = w, na.rm = TRUE) when anyNA(x) is true, now
    removes weights "in parallel" to x, fixing PR#18151, reported by
    Matthias Gondan.  Additionally, it gets a subdensity option.
  * Conversion of \Sexpr[]{&lt;expR&gt;} to LaTeX or HTML no longer
    produces long blocks of empty lines when &lt;expR&gt; itself contains
    several lines all producing empty output.  Thanks to a report and
    patch by Ivan Krylov posted to R-devel.
  * R CMD build no longer fails if a package vignette uses child
    documents and inst/doc exists.  (Thanks to Sebastian Meyer's
    PR#18156.)
  * When an R documentation ('help' source) file man/foo.Rd in a
    package has \donttest{..} examples with a syntax error, it is now
    signalled as ERROR and with correct line numbers relating to the
  * -Ex.R file, thanks to Duncan Murdoch and Sebastian Meyer's
    reports and patch proposals in PR#17501.
  * Improved determination of the correct translation domain in
    non-base packages, addressing the combination of PR#18092 and
    PR#17998 (#c6) with reports and _augmented_ patch #2904 by
    Suharto Anggono.
    Note that "R-base" is no longer the default domain e.g., for
    top-level calls to gettext(); rather translation needs explicit
    domain = * specification in such cases.
  * identical(attrib.as.set=FALSE) now works correctly with data
    frames with default row names (Thanks to Charlie Gao's PR#18179).
  * txtProgressBar() now enforces a non-zero width for argument char,
    without which no progress can be visible.
  * dimnames(table(d)) is more consistent in the case where d is a
    list with a single component, thanks to Thomas Soeiro's report to
    R-devel.
    Further, table(d1, d2) now gives an error when d1 and d2 are data
    frames as suggested by Thomas in PR#18224.
  * Fix for drawing semi-transparent lines and fills on the native
    Windows graphics device (PR#18219 and PR#16694).  Thanks to Nick
    Ray for helpful diagnosis on Bugzilla.
  * The deparser now wraps sub-expressions such as if(A) ..  with
    parentheses when needed; thanks to Duncan Murdoch's PR#18232 and
    Lionel Henry's patches there.
  * remove.packages() no longer tries to uninstall Priority: base
    packages, thanks to a report and suggestions by Colin Fay in
    PR#18227.
  * win.metafile() now has xpinch and ypinch arguments so that the
    user can override Windows' (potentially wrong) guess at device
    dimensions.
  * x[i] and x[[i]] for non-integer i should now behave in all cases
    as always documented: the index used is equivalent to
    as.integer(i) unless that would overflow where trunc(i) is used
    instead; thanks to Suharto Anggono's report and patch proposals
    in PR#17977.
  * asOneSidedFormula() now associates the resulting formula with the
    global environment rather than the evaluation environment created
    for the call.
  * &lt;bibentry&gt;$name now matches the field name case-insensitively,
    consistent with bibentry() creation and the replacement method.
  * cbind() failed to detect some length mismatches with a mixture of
    time-series and non-time-series inputs.
  * The default LaTeX style file Sweave.sty used by the RweaveLatex
    driver no longer loads the obsolete ae package; thanks to a
    report by Thomas Soeiro in PR#18271.  Furthermore, it now skips
    \usepackage[T1]{fontenc} for engines other than pdfTeX (if
    detected) or if the new [nofontenc] option is used.
  * smooth.spline() now stores its logical cv argument more safely,
    fixing a rare bug when printing, and also stores n.
  * smooth.spline(x,y,*) now computes the cv.crit statistic
    correctly, also when is.unsorted(x), fixing PR#18294.
  * The data.frame method of rbind() now warns when binding
    not-wholly-recycling vectors, by analogy to the default method
    (for matrices).
  * setAs() finds the correct class for name to when multiple
    packages define a class with that name. Thanks to Gabor Csardi
    for the report.
  * Fix for detaching a package when two classes of the same name are
    present in method signatures for the same generic. Thanks to
    Gabor Csardi for the report.
  * match.arg("", c("", "a", "B")) gives a better error message, in
    part from PR#17959, thanks to Elin Waring.
  * R CMD Sweave --clean no longer removes pre-existing files or
    subdirectories (PR#18242).
  * The quartz() device no longer splits polylines into subpaths.
    That has caused narrowly-spaced lines with many points to always
    look solid even when dashed line type was used due to dash phase
    restarts.
  * Deparsing constructs such as quote(1 + `!`(2) + 3) works again as
    before R 3.5.0, thanks to the report and patch in PR#18284 by
    Suharto Anggono.
  * as.list(f) for a factor f now keeps names(f), fixing PR#18309.
  * qbeta(.001, .9, .009) and analogous qf() calls now return a
    correct value instead of NaN or wrongly 1, all with a warning;
    thanks to the report by Ludger Goeminne in PR#18302.
  * plot.lm() failed to produce the plot of residuals vs.  factor
    levels (i.e., which=5 when leverages are constant) for models
    with character predictors (PR#17840).
  * interaction.plot(..., xtick = TRUE) misplaced the x-axis line
    (PR#18305).
  * Not strictly fixing a bug, format()ing and print()ing of
    non-finite Date and POSIXt values NaN and +/-Inf no longer show
    as NA but the respective string, e.g., Inf, for consistency with
    numeric vector's behaviour, fulfilling the wish of PR#18308.
  * R CMD check no longer runs test scripts generated from
    corresponding .Rin files twice and now signals an ERROR if
    processing an .Rin script fails.
  * tools::Rd2txt() used for plain-text help pages now renders \hrefs
    (if tools::Rd2txt_options(showURLs = TRUE)) and \urls with
    percent-encoding and standards-compliant delimiting style (angle
    brackets and no URL: prefix).  \email is now rendered with a
    mailto: prefix.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1655985600">- CHANGES IN R 4.2.1:
  NEW FEATURES:
  * New function utils::findCRANmirror() to find out if a CRAN mirror
    has been selected, otherwise fallback to the main site.  This
    behaves in the same way as tools::CRAN_package_db() and is
    intended for packages wishing to access CRAN for purposes other
    than installing packages.
    The need for this was shown by a day when the main CRAN website
    was offline and a dozen or so packages which had its URL
    hardcoded failed their checks.
  INSTALLATION on a UNIX-ALIKE:
  * The libraries searched for by --with-blas (without a value) now
    include BLIS (after OpenBLAS but before ATLAS).  And on macOS,
    the Accelerate framework (after ATLAS).  (This is patterned after
    the AX_BLAS macro from the Autoconf Archive.)
  * The included LAPACK sources have been updated to 3.10.1.
  UTILITIES:
  * The (full path to) the command tidy to be used for HTML
    validation can be set by environment variable R_TIDYCMD.
  * Setting environment variable _R_CHECK_RD_VALIDATE_RD2HTML_ to a
    false value will override R CMD check --as-cran and turn off HTML
    validation.  This provides a way to circumvent a problematic
    tidy.
    The 2006 version that ships with macOS is always skipped.
  C-LEVEL FACILITIES:
  * The undocumented legacy declarations of Sint, Sfloat, SINT_MAX
    and SINT_MIN in header R.h are deprecated.
  BUG FIXES:
  * fisher.test(d) no longer segfaults for "large" d; fixing PR#18336
    by preventing/detecting an integer overflow reliably.
  * tar(., files=*) now produces correctly the warning about invalid
    uid or gid of files, fixing PR#18344, reported by Martin Morgan.
  * tk_choose.files() with multi = FALSE misbehaved on paths
    containing spaces (PR#18334) (regression introduced in R 4.0.0).
  * sort(x, partial = ind, *) now works correctly notably for the
    non-default na.last = FALSE or TRUE, fixing PR#18335 reported by
    James Edwards.
  * Environment variable _R_CHECK_XREFS_REPOSITORIES_ is only used
    for checking .Rd cross-references in R CMD check (as documented)
    and not for other uses looking for a CRAN mirror.
  * The search for a CRAN mirror when checking packages now uses
    getOption("repos") if that specifies a CRAN mirror, even when it
    does not also specify all three Bioconductor repositories (as was
    previously required).
  * The HTML code generated by tools::Rd2HTML() has been improved to
    pass tidy 5.8.0.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1667217600">- CHANGES IN R 4.2.2:
  NEW FEATURES:
  * tools::Rdiff(useDiff = TRUE) checks for the presence of an
    external diff command and switches to useDiff = FALSE if none is
    found.  This allows R CMD Rdiff to always work.
  * On Windows, environment variable R_LIBCURL_SSL_REVOKE_BEST_EFFORT
    can be used to switch to only 'best-effort' SSL certificate
    revocation checks with the default "libcurl" download method.
    This reduces security, but may be needed for downloads to work
    with MITM proxies (PR#18379).
  * (macOS) The run-time check for libraries from XQuartz for X11 and
    Tcl/Tk no longer uses otool from the Apple Developer Tools
    (PR#18400).
  * The LaTeX style for producing the PDF manuals, Rd.sty, now loads
    the standard amsmath, amsfonts and amssymb packages for greater
    coverage of math commands in the Rd \eqn and \deqn macros.  The
    \mathscr LaTeX command is also provided (via the mathrsfs
    package, if available, or the amsfonts bundle otherwise),
    fulfilling the wish of PR#18398.
  * (Windows) The default format of readClipboard() and
    writeClipboard() has been changed to 13 (CF_UNICODETEXT).
  INSTALLATION on a UNIX-ALIKE:
  * The PDF manuals (if built) can be compacted by the new target
    make compact-pdf (at the top level or in directory doc/manual).
  * There is now configure support for LLVM clang 15 on Linux, which
    defaults to position-independent (PIE) executables whereas
    gfortran does not.
  * Many small changes to ease compilation (and suppress warnings)
    with LLVM clang 15.
  BUG FIXES:
  * Rscript -e would fail if stdin were closed (Reported by Henrik
    Bengtsson.)
  * qt(*, log.p=TRUE) in outer tails no longer produces NaN in its
    final steps, thus fixing PR#18360.
  * tools::Rd2latex() now escapes hashes and ampersands when writing
    URLs, fixing LaTeX errors with such URLs in \tabular.
  * When isGeneric(f, fdef=*) is used with mismatching names, the
    warning is better understandable; reported (with fix) in PR#18370
    by Gabe Becker.
  * poly(x, n) now works again (and is now documented) when x is a
    "Date" or "POSIXct" object, or of another class while fulfilling
    mode(x) == "numeric".  This also enables poly(x, *, raw=TRUE) for
    such variables.  Reported by Michael Chirico to R-devel.
  * write.table(), write.csv() and write.csv2() restore their
    numerical precision (internal equivalent of digits = 15) after an
    interrupt (PR#18384).
  * One can now read also byte FF from a clipboard connection
    (PR#18385).
  * source("") and source(character()) now give more helpful error
    messages.
  * R CMD check --as-cran set _R_CHECK_TIMINGS_ too late to have the
    intended effect.
  * as.POSIXlt(x) now also works with very large dates x, fixing
    PR#18401 reported by Hannes M"uhleisen.
  * Files can now be extracted even from very large zip archives
    (PR#18390, thanks to Martin Jakt).
  * Non-finite objects of class "POSIXlt" are now correctly coerced
    to classes "Date" and "POSIXct"; following up on the extension to
    format() them correctly.
  * Added methods for is.finite(), is.infinite() and is.nan() for
    "POSIXlt" date-time objects.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1678881600">- CHANGES IN R 4.2.3:
  C-LEVEL FACILITIES:
  * The definition of DL_FUNC in R_ext/Rdynload.h has been changed to
    be fully C-compliant.  This means that functions loaded _via_ for
    example R_GetCCallable need to be cast to an appropriate type if
    they have any arguments.
  * .Machine has a new element sizeof.time_t to identify old systems
    with a 32-bit type and hence a limited range of date-times (and
    limited support for dates millions of years from present).
  PACKAGE INSTALLATION:
  * (Windows) The default C++ standard had accidentally been left at
    C++11 when it was changed to C++14 on Unix.
  BUG FIXES:
  * As "POSIXlt" objects may be "partially filled" and their list
    components meant to be recycled, length() now is the length of
    the longest component.
  * as.POSIXlt.Date() could underflow for dates in the far past (more
    than half a million years BCE).
  * as.Date.POSIXlt(x) would return "1970-01-01" instead of NA in R
    4.2.2, e.g., for
    x &lt;- as.POSIXlt(c("2019-01-30","2001-1-1"))
    x$mon &lt;- c(0L, NA); as.Date(x)
  * R CMD check failed to apply enabled _R_CHECK_SUGGESTS_ONLY_ to
    examples and vignettes (regression in R 4.2.0).
  * R CMD check did not re-build vignettes in separate processes by
    default (regression in R 4.2.0).
  * Running examples from HTML documentation now restores previous
    knitr settings and options (PR#18420).
  * Quartz: fonts are now located using Core Graphics API instead of
    deprecated ATS which is no longer supported in the macOS 13 SDK
    (PR#18426).  This also addresses an issue where the currently
    used font in the Quartz device context was not correctly
    retained.
  * (Windows) Math symbols in text drawing functions are again
    rendered correctly (PR#18440).  This fixes a regression in R
    4.2.1 caused by a fix in PR#18382 which uncovered an issue in
    GraphApp due to which the symbol charset was not used with TT
    Symbol font face.
  * (Windows) Installing a package with a src/Makefile.{win,ucrt}
    file includes ~/.R/Makevars.win64 in the search for user
    makevars, as documented in "R Installation and Administration"
    and done for packages with a src/Makevars.{win,ucrt} file.
  * format(&lt;POSIXlt_w/_unbalanced_sec&gt;, "....%OS&lt;n&gt;") with n &gt; 0 no
    longer accidentally uses the unbalanced seconds, thanks to
    Suharto Anggono's report (including patch) in PR#18448.
  * solve.default(a, b) works around issues with some versions of
    LAPACK when a contains NA or NaN values.
  * When UseMethod() cannot dispatch, it no longer segfaults
    producing the error message in case of a long class(), thanks to
    Joris Vankerschaver's report (including patch) in PR#18447.
  * When example(foo, ..) produces graphics on an interactive device
    it needs to open itself, it now leaves devAskNewPage() unchanged
    even when it was FALSE, thus fixing a 14 years old '&lt;FIXME&gt;'.
  * packageDescription() again catches errors from encoding
    conversions. This also fixes broken packageVersion() in C locale
    on systems where iconv does not support transliteration.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1681128000">- add patch to build with libcurl &gt;= 8</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1682078400">- CHANGES IN R 4.3.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Calling &amp;&amp; or || with LHS or (if evaluated) RHS of length greater
    than one is now always an error, with a report of the form
    'length = 4' in coercion to 'logical(1)'
    Environment variable _R_CHECK_LENGTH_1_LOGIC2_ no longer has any
    effect.
  NEW FEATURES:
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.10.1.  (This caused some platform-dependent
    changes to package check output.)  And then to the sources from
    LAPACK version 3.11.0 (with changes only to double complex
    subroutines).
  * The included LAPACK sources have been updated to include the four
    Fortran 90 routines rather than their Fortran 77 predecessors.
    This may give some different signs in SVDs or
    eigendecompositions..  (This completes the transition to LAPACK
    3.10.x begun in R 4.2.0.)
  * The LAPACK sources have been updated to version 3.11.0.  (No new
    subroutines have been added, so this almost entirely bug fixes:
    Those fixes do affect some computations with NaNs, including R's
    NA.)
  * The parser now signals _classed_ errors, notably in case of the
    pipe operator |&gt;.  The error object and message now give line and
    column numbers, mostly as proposed and provided by Duncan Murdoch
    in PR#18328.
  * toeplitz() is now generalized for asymmetric cases, with a
    toeplitz2() variant.
  * xy.coords() and xyz.coords() and consequently, e.g., plot(x,y,
    log = "y") now signal a _classed_ warning about negative values
    of y (where log(.) is NA).  Such a warning can be specifically
    suppressed or caught otherwise.
  * Regular expression functions now check more thoroughly whether
    their inputs are valid strings (in their encoding, e.g. in
    UTF-8).
  * The performance of grep(), sub(), gsub() and strsplit() has been
    improved, particularly with perl = TRUE and fixed = TRUE.  Use of
    useBytes = TRUE for performance reasons should no longer be
    needed and is discouraged: it may lead to incorrect results.
  * apropos() gains an argument dot_internals which is used by the
    completion (help(rcompgen)) engine to also see base internals
    such as .POSIXct().
  * Support in tools::Rdiff() for comparing uncompressed PDF files is
    further reduced - see its help page.
  * qqplot(x, y, ...) gains conf.level and conf.args arguments for
    computing and plotting a confidence band for the treatment
    function transforming the distribution of x into the distribution
    of y (Switzer, 1976, _Biometrika_). Contributed by Torsten
    Hothorn.
  * Performance of package_dependencies() has been improved for cases
    when the number of dependencies is large.
  * Strings newly created by gsub(), sub() and strsplit(), when any
    of the inputs is marked as "bytes", are also marked as "bytes".
    This reduces the risk of creating invalid strings and accidental
    substitution of bytes deemed invalid.
  * Support for readLines(encoding = "bytes") has been added to allow
    processing special text files byte-by-byte, without creating
    invalid strings.
  * iconv(from = "") now takes into account any declared encoding of
    the input elements and uses it in preference to the native
    encoding.  This reduces the risk of accidental creation of
    invalid strings, particularly when different elements of the
    input have different encoding (including "bytes").
  * Package repositories in getOption("repos") are now initialized
    from the repositories file when utils is loaded (if not already
    set, e.g., in .Rprofile).  (From a report and patch proposal by
    Gabriel Becker in PR#18405.)
  * compactPDF() gets a verbose option.
  * type.convert() and hence read.table() get new option tryLogical =
    TRUE with back compatible default.  When set to false, converts
    "F" or "T" columns to character.
  * Added new unit prefixes "R" and "Q" for abbreviating
    (unrealistically large) sizes beyond 10^{27} in standard = "SI",
    thanks to Henrik Bengtsson's PR#18435.
  * as.data.frame()'s default method now also works fine with atomic
    objects inheriting from classes such as "roman", "octmode" and
    "hexmode", such fulfilling the wish of PR#18421, by Benjamin
    Feakins.
  * The as.data.frame.vector() utility now errors for wrong-length
    row.names.  It warned for almost six years, with "Will be an
    error!".
  * sessionInfo() now also contains La_version() and reports codepage
    and timezone when relevant, in both print() and toLatex() methods
    which also get new option tzone for displaying timezone
    information when locale = FALSE.
  * New function R_compiled_by() reports the C and Fortran compilers
    used to build R, if known.
  * predict(&lt;lm&gt;, newdata = *) no longer unnecessarily creates an
    offset of all 0s.
  * solve() for complex inputs now uses argument tol and by default
    checks for 'computational singularity' (as it long has done for
    numeric inputs).
  * predict(&lt;rank-deficient lm&gt;, newdata=*) now obeys a new argument
    rankdeficient, with new default "warnif", warning only if there
    are non-estimable cases in newdata.  Other options include
    rankdeficient = "NA", predicting NA for non-estimable newdata
    cases.  This addresses PR#15072 by Russ Lenth and is based on his
    original proposal and discussions in PR#16158 also by David Firth
    and Elin Waring.  Still somewhat experimental.
  * Rgui console implementation now works better with the NVDA screen
    reader when the full blinking cursor is selected.  The underlying
    improvements in cursor handling may help also other screen
    readers on Windows.
  * The drop-field control in GraphApp can now be left with the TAB
    key and all controls can be navigated in the reverse order using
    the Shift+TAB key, improving accessibility of the Rgui
    configuration editor.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now fully accurate
    (instead of to "only" minimally five digits).
  * demo(error.catching) now also shows off withWarnings() and
    tryCatchWEMs().
  * As an experimental feature the placeholder _ can now also be used
    in the rhs of a forward pipe |&gt; expression as the first argument
    in an extraction call, such as _$coef. More generally, it can be
    used as the head of a chain of extractions, such as _$coef[[2]].
  * Spaces in the environment variable used to choose the R session's
    temporary directory (TMPDIR, TMP and TEMP are tried in turn) are
    now fatal.  (On Windows the 'short path' version of the path is
    tried and used if that does not contain a space.)
  * all.equal.numeric() gets a new optional switch giveErr to return
    the numeric error as attribute.  Relatedly,
    stopifnot(all.equal&lt;some&gt;(a, b, ..)) is as "smart" now, as
    stopifnot(all.equal(....)) has been already, thus allowing
    customized all.equal&lt;Some&gt;() wrappers.
  * R on Windows is now able to work with path names longer than 260
    characters when these are enabled in the system (requires at
    least Windows 10 version 1607).  Packages should be updated to
    work with long paths as well, instead of assuming PATH_MAX to be
    the maximum length.  Custom front-ends and applications embedding
    R need to update their manifests if they wish to allow this
    feature.  See
    &lt;https://blog.r-project.org/2023/03/07/path-length-limit-on-windows&gt;
    for more information.
  * 'Object not found' and 'Missing argument' errors now give a more
    accurate error context. Patch provided by Lionel Henry in
    PR#18241.
  * The @ operator is now an S3 generic. Based on contributions by
    Tomasz Kalinowski in PR#18482.
  * New generic chooseOpsMethod() provides a mechanism for objects to
    resolve cases where two suitable methods are found for an Ops
    Group Generic. This supports experimenting with alternative
    object systems. Based on contributions by Tomasz Kalinowski in
    PR#18484.
  * inherits(x, what) now accepts values other than a simple
    character vector for argument what. A new generic, nameOfClass(),
    is called to resolve the class name from what. This supports
    experimenting with alternative object systems. Based on
    contributions by Tomasz Kalinowski in PR#18485.
  * Detection of BLAS/LAPACK in use (sessionInfo()) with FlexiBLAS
    now reports the current backend.
  * The "data.frame" method for subset() now warns about extraneous
    arguments, typically catching the use of = instead of == in the
    subset expression.
  * Calling a:b when numeric a or b is longer than one may now be
    made into an error by setting environment variable
    _R_CHECK_LENGTH_COLON_ to a true value, along the proposal in
    PR#18419 by Henrik Bengtsson.
  * density(x, weights = *) now warns if automatic bandwidth
    selection happens without using weights; new optional warnWbw may
    suppress the warning.  Prompted by Christoph Dalitz' PR#18490 and
    its discussants.
  * rm(list = *) is faster and more readable thanks to Kevin Ushey's
    PR#18492.
  * The plot.lm() function no longer produces a normal Q-Q plot for
    GLMs. Instead it plots a half-normal Q-Q plot of the absolute
    value of the standardized deviance residuals.
  * The print() method for class "summary.glm" no longer shows
    summary statistics for the deviance residuals by default.  Its
    optional argument show.residuals can be used to show them if
    required.
  * The tapply() function now accepts a data frame as its X argument,
    and allows INDEX to be a formula in that case. by.data.frame()
    similarly allows INDICES to be a formula.
  * The performance of df[j] &lt;- value (including for missing j) and
    write.table(df) has been improved for data frames df with a large
    number of columns.  (Thanks to Gabriel Becker's PR#18500,
    PR#18503 and discussants, prompted by a report from Toby Dylan
    Hocking on the R-devel mailing list.)
  * The matrix multiply operator %*% is now an S3 generic, belonging
    to new group generic matrixOps.  From Tomasz Kalinowski's
    contribution in PR#18483.
  * New function array2DF() to convert arrays to data frames,
    particularly useful for the list arrays created by tapply().
  DATES and TIMES:
  * On platforms where (non-UTC) datetimes before 1902 (or before
    1900 as with system functions on recent macOS) are guessed by
    extrapolating time zones from 1902-2037, there is a warning at
    the first use of extrapolation in a session.  (As all time zones
    post 2037 are extrapolation, we do not warn on those.)
  * (Platforms using --with-internal-tzone, including Windows and by
    default macOS). How years are printed in dates or date-times can
    be controlled by environment variable R_PAD_YEARS_BY_ZERO.  The
    default remains to pad to 4 digits by zeroes, but setting value
    no gives no padding (as used by default by glibc).
  * strftime() tries harder to determine the offset for the "%z"
    format, and succeeds on the mainstream R platforms.
  * strftime() has a limit of 2048 bytes on the string produced -
    attempting to exceed this is an error.  (Previously it silently
    truncated at 255 bytes.)
  * sessionInfo() records (and by default prints) the system time
    zone as part of the locale information.  Also, the source
    (system/internal) of the date-time conversion and printing
    functions.
  * Objects of class "POSIXlt" created in this version of R always
    have 11 components: component zone is always set, and component
    gmtoff is set for times in UTC and usually set on the (almost
    all) platforms which have C-level support, otherwise is NA.
  * There are comprehensive validity checks on the structure of
    objects of class "POSIXlt" when converting (including formatting
    and printing).  (This avoids mis-conversions of hand-crafted
    objects.)
  * There is some support for using the native date-time routines on
    macOS: this is only viable on recent versions (e.g. 12.6 and 13)
    and does get wrong some historical changes (before 1900, during
    WWII).  Use of --with-internal-tzone remains the default.
  * as.POSIXct(&lt;numeric&gt;) and as.POSIXlt(.) (without specifying
    origin) now work.  So does as.Date(&lt;numeric&gt;).
  * as.Date.POSIXct(., tz) now treats several tz values, notably
    "GMT" as equivalent to "UTC", proposed and improved by Michael
    Chirico and Joshua Ulrich in PR#17674.
  * Experimental balancePOSIXlt() utility allows using "ragged" and
    or out-of-range "POSIXlt" objects more correctly, e.g., in
    subsetting and subassignments.  Such objects are now documented.
    More experimentally, a "POSIXlt" object may have an attribute
    "balanced" indicating if it is known to be filled or fully
    balanced.
  * Functions axis.Date() and axis.POSIXct() are rewritten to gain
    better default tick locations and better default formats by using
    prettyDate(). Thanks to Swetlana Herbrandt.
  * The mapping of Windows' names for time zones to IANA's 'Olson'
    names has been updated.  When ICU is available (it is by
    default), it is used to get a mapping for the current region set
    in Windows.  This can be overridden by setting environment
    variable TZ to the desired Olson name - see OlsonNames() for
    those currently available.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 16
    and so packages that provide graphics devices should be
    reinstalled.
  * The grDevices and grid packages have new functions for rendering
    typeset glyphs, primarily: grDevices::glyphInfo() and
    grid::grid.glyph().
    Rendering of typeset glyphs is only supported so far on the
    Cairo-based graphics devices and on the pdf() and quartz()
    devices.
  * The defined behaviour for "clear" and "source" compositing
    operators (via grid::grid.group()) has been changed (to align
    better with simple interpretation of original Porter-Duff
    definitions).
  * Support for gradients, patterns, clipping paths, masks, groups,
    compositing operators, and affine transformations has been added
    to the quartz() device.
  INSTALLATION on a UNIX-ALIKE:
  * A system installation of generic LAPACK 3.10.0 or later will be
    preferred to the version in the R sources.
    configure option --with-lapack=no (equivalently --without-lapack)
    forces compilation of the internal LAPACK sources.
    If --with-lapack is not specified, a system liblapack is looked
    for and used if it reports version 3.10.0 or later and does not
    contain BLAS routines.
    Packages using LAPACK will need to be reinstalled if this changes
    to using an external library.
  * On aarch64 Linux platforms using GCC, configure now defaults to
  - fPIC (instead of -fpic), as desired in PR#18326.
  * configure now checks conversion of datetimes between POSIXlt and
    POSIXct around year 2020.  Failure (which has been seen on
    platforms missing tzdata) is fatal.
  * If configure option --with-valgrind-instrumentation is given
    value 1 or 2, option --with-system-valgrind-headers is now the
    default and ignored (with a warning).  It is highly recommended
    that the system headers are installed alongside valgrind: they
    are part of its packaging on some Linux distributions and
    packaged separately (e.g. in the valgrind-devel RPM) on others.
    configure will give a warning if they are not found.
    The system headers will be required in a future release of R to
    build with valgrind instrumentation.
  * libcurl 8.x is now accepted by configure: despite a change in
    major version number it changes neither API nor ABI.
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools43, an update of the Rtools42 toolchain.  It is
    based on gcc 12 and newer versions of MinGW-W64, binutils and
    libraries.  At this time R-devel can still be built using
    Rtools42 without changes, but when R-devel is installed via the
    installer, it will by default look for Rtools43.
  * Old make targets rsync-extsoft and 32-bit ones that are no longer
    needed have been removed.
  * Default builds (including for packages) no longer select C99.
    Thus the C standard used is the default for the compiler, which
    for the toolchain in Rtools43 is C17.  (This is consistent with
    Unix builds.)
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++17 where
    available (which it is on all currently checked platforms): if
    not C++14 or C++11 is used if available otherwise C++ is not
    supported.
  * USE_FC_LEN_T is the default: this uses the correct
    (compiler-dependent) prototypes for Fortran BLAS/LAPACK routines
    called from C/C++, and requires adjustment of many such calls -
    see 'Writing R Extensions' SS6.6.1.
  * There is initial support for C++23 as several compilers are now
    supporting -std=c++23 or -std=c++2b or similar.  As for C++20,
    there no additional configure checks for C++23 features beyond a
    check that the compiler reports a __cplusplus value greater than
    that in the C++20 standard.  C++ feature tests should be used.
  * There is support for a package to indicate the version of the C
    standard which should be used to compile it, and for the
    installing user to specify this.  In most cases R defaults to the
    C compiler's default standard which is C17 (a `bug-fix' of C11) -
    earlier versions of R or compilers may have defaulted to C99.
    Current options are:
    USE_C17 Use a standard that is at most C17.  The intention is to
    allow legacy packages to still be installed when later C
    standards become the default, including packages using new
    keywords as identifiers or with K&amp;R-style function
    declarations.  This will use C17 if available, falling back
    to C11.
    USE_C90 Use the C90 (aka C89) standard.  (As that standard did
    not require compilers to identify that version, all we can
    verify is that the compiler does not claim to be using a
    later standard.  It may accept C99 features - for example
    clang accepts // to make comments.)
    USE_C99 Use the C99 standard. This should be rarely needed - it
    avoids the few new features of C11/C17 which can be useful if
    a package assumes them if C17 is specified and they are not
    implemented.
    USE_C23 Use C23 (or in future, later).  Compiler/library support
    for C23 is still being implemented, but LLVM clang from
    15.0.0 and the upcoming GCC 13 have quite extensive support.
    These can be specified as part of the SystemRequirements field in
    the package's DESCRIPTION file or _via_ options --use-C17 and so
    on of R CMD INSTALL and R CMD SHLIB.
    For further details see "Writing R Extensions" SS1.2.5.
  * (Windows) A src/Makefile.ucrt or src/Makefile.win file is now
    included after R_HOME/etcR_ARCH/Makeconf and so no longer needs
    to include that file itself.  Installation of a package with such
    a file now uses a site Makevars file in the same way as a package
    with a src/Makevars.win file would.
  * configure is now passed crucial variables such as CC and CFLAGS
    in its environment, as many packages were not setting them (as
    documented in 'Writing R Extensions' SS1.2).
    This has most effect where configure is used to compile parts of
    the package - most often by cmake or libtool which obfuscate the
    actual compile commands used.
    Also used for configure.win and configure.ucrt on Windows.
  FORTRAN FLAGS:
  * The flag -fno-optimize-sibling-calls is no longer forced for
    gfortran 7 and later.  It should no longer be needed now using
    'hidden' character-length arguments when calling BLAS/LAPACK
    routines from C/C++ is the default even for packages.  (Unless
    perhaps packages call Fortran code from C/C++ without using R's
    headers and without allowing for these arguments.)
  C-LEVEL FACILITIES:
  * The deprecated S-compatibility macros DOUBLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * The deprecated legacy typedefs of Sint and Sfloat in header R.h
    are no longer defined, and that header no longer includes header
    limits.h from C nor climits from C++.
  * New macro CAD5R() is provided in Rinternals.h and used in a few
    places in the R sources.
  * ALTREP now supports VECSXP vectors. Contributed by Gabor Csardi
    in PR#17620.
  * The Rcomplex definition (in header R_ext/Complex.h) has been
    extended to prevent possible mis-compilation when interfacing
    with Fortran (PR#18430).  The new definition causes compiler
    warnings with static initializers such as {1, 2}, which can be
    changed to {.r=1, .i=2}.
    Using the new definition from C++ depends on compiler extensions
    supporting C features that have not been incorporated into the
    C++ standards but are available in g++ and clang++: this may
    result in C++ compiler warnings but these have been worked around
    for recent versions of common compilers (GCC, Apple/LLVM clang,
    Intel).
    It is intended to change the inclusion of header R_ext/Complex.h
    by other R headers, so C/C++ code files which make use of
    Rcomplex should include that header explicitly.
  UTILITIES:
  * R CMD check does more checking of package .Rd files, warning
    about invalid email addresses and (some) invalid URIs and noting
    empty \item labels in description lists.
  * R CMD check now also reports problems when reading package news
    in md (file NEWS.md) and (optionally) plain text (file NEWS)
    formats.
  * _R_CHECK_TIMINGS_ defaults to a value from the environment even
    for R CMD check --as-cran; this allows for exceptionally fast or
    slow platforms.
    It now applies to checking PDF and HTML versions of the manuals,
    and 'checking CRAN incoming feasibility'.
  * R CMD check can optionally (but included in --as-cran) check
    whether HTML math rendering _via_ KaTeX works for the package .Rd
    files.
  * Non-interactive debugger invocations can be trapped by setting
    the environment variable _R_CHECK_BROWSER_NONINTERACTIVE_ to a
    true value.  This is enabled by R CMD check --as-cran to detect
    the use of leftover browser() statements in the package.
  * The use of sprintf and vsprintf from C/C++ has been deprecated in
    macOS 13 and is a known security risk.  R CMD check now reports
    (on all platforms) if their use is found in compiled code:
    replace by snprintf or vsnprintf respectively. [*NB:* whether
    such calls get compiled into the package is platform-dependent.]
  * Where recorded at installation, R CMD check reports the C and
    Fortran compilers used to build R.
    It reports the OS in use (if known, as given by osVersion) as
    well as that R was built for.
    It notes if a C++ standard was specified which is older than the
    current default: many packages have used C++11 to mean 'not
    C++98' - as C++11 is the minimum supported since R 4.0.0, that
    specification can probably be removed.
  * R CMD INSTALL reports the compilers (and on macOS, the SDK) used,
    and this is copied to the output of R CMD check.
    Where a C++ standard is specified, it is reported.
  * R CMD check's 'checking compilation flags in Makevars' has been
    relaxed to accept the use of flags such as -std=f2008 in
    PKG_FFLAGS.
  * tools::buildVignettes() has a new argument skip, which is used by
    R CMD check to skip (and note) vignettes with unavailable
    \VignetteDepends (PR#18318).
  * New generic .AtNames() added to enable class-specific completions
    after @. The formerly internal function findMatches() is now
    exported, mainly for use in methods for .DollarNames() and
    .AtNames().
  DEPRECATED AND DEFUNCT:
  * default.stringsAsFactors() is defunct.
  * Calling as.data.frame.&lt;class&gt;() directly (for 12 atomic classes)
    is going to be formally deprecated, currently activated by
    setting the environment variable
    _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ to non-empty, which also
    happens in R CMD check --as-cran.
  BUG FIXES:
  * Hashed environments with sizes less than 5 can now grow.
    (Reported to R-devel by Duncan Garmonsway.)
  * as.character(&lt;Rd&gt;, deparse = TRUE) failed to re-escape curly
    braces in LaTeX-like text.  (Reported by Hadley Wickham in
    PR#18324.)
  * library() now passes its lib.loc argument when requiring Depends
    packages; reported (with fix) in PR#18331 by Mikael Jagan.
  * R CMD Stangle: improved message about 'Output' files.
  * head(x, n) and tail(x, n) now signal an error if n is not
    numeric, instead of incidentally "working" sometimes returning
    all of x.  Reported and discussed by Colin Fay, in PR#18357.
  * The "lm" method for summary() now gives the correct F-statistic
    when the model contains an offset.  Reported in PR#18008.
  * C() and `contrasts&lt;-`() now preserve factor level names when
    given a function object (as opposed a function name which did
    preserve names). Reported in PR#17616.
  * c(a = 1, 2)[[]] no longer matches 2 but rather signals a
    _classed_ error.  Reported and analysed by Davis Vaughan in
    PR#18367, a duplicate of PR#18004, by Jan Meis et al.  For
    consistency, NULL[[]] is also erroneous now.  x[[]] &lt;- v gives an
    error of the same class "MissingSubscriptError".
  * The relist() function of utils now supports NULL elements in the
    skeleton (PR#15854).
  * ordered(levels = *) (missing x) now works analogously to factor(,
    ordered=TRUE); reported (with fix) by Achim Zeileis in PR#18389.
  * User-defined Rd macro definitions can now span multiple lines,
    thanks to a patch from Duncan Murdoch. Previously, the Rd parser
    silently ignored everything after the first line.
  * Plain-text help (tools::Rd2txt()) now preserves an initial blank
    line for text following description list items.
  * tools::Rd2HTML() and tools::Rd2latex() no longer split \arguments
    and \value lists at Rd comments.
  * tools::Rd2latex() now correctly handles optional text outside
    \items of argument lists as well as bracketed text at the
    beginning of sections, e.g., \value{[NULL]}.
  * as.character(&lt;POSIXt&gt;) now behaves more in line with the methods
    for atomic vectors such as numbers, and is no longer influenced
    by options().  Ditto for as.character(&lt;Date&gt;).  The
    as.character() method gets arguments digits and OutDec with
    defaults _not_ depending on options().  Use of as.character(*,
    format = .) now warns.
  * Similarly, the as.character.hexmode() and *.octmode() methods
    also behave as good citizen methods and back compatibility option
    keepStr = TRUE.
  * The as.POSIXlt(&lt;POSIXlt&gt;) and as.POSIXct(&lt;POSIXct&gt;) default
    methods now do obey their tz argument, also in this case.
  * as.POSIXlt(&lt;Date&gt;) now does apply a tz (time zone) argument, as
    does as.POSIXct(); partly suggested by Roland Fuss on the R-devel
    mailing list.
  * as.Date.POSIXlt(x) now also works when the list components are of
    unequal length, aka "partially filled" or "ragged".
  * expand.model.frame() looked up variables in the wrong environment
    when applied to models fitted without data.  Reported in
    PR#18414.
  * time() now (also) uses the ts.eps = getOption("ts.eps") argument
    and thus by default rounds values very close to the start (or
    end) of a year.  Based on a proposal by Andre"i V. Kostyrka on
    R-help.
  * Printing of a factanal() result with just one factor and sort =
    TRUE now works regularly, fixing PR#17863 by Timothy Bates,
    thanks to the 'R Contributors' working group.
  * Printing 0-length objects of class "factor", "roman", "hexmode",
    "octmode", "person", "bibentry", or "citation" now prints
    something better, one of which fixes PR#18422, reported by
    Benjamin Feakins.
  * Sys.timezone() queries timedatectl only if systemd is loaded;
    addressing a report by Jan Gorecki in PR#17421.
  * The formula method of cor.test() had scoping problems when
    environment(formula) was not the calling environment; reported
    with a patch proposal by Mao Kobayashi in PR#18439.
  * attach() of an environment with active bindings now preserves the
    active bindings.  Reported by Kevin Ushey in PR#18425.
  * BLAS detection now works also with system-provided libraries not
    available as regular files.  This fixes detection of the
    Accelerate framework on macOS since Big Sur.  Reported by David
    Novgorodsky.
  * download.file() gives a helpful error message in case of an
    invalid download.file.method option, thanks to Colin Fay's report
    in PR#18455.
  * Sporadic crashes of Rterm when using completion have been fixed.
  * Rprof() is now more reliable.  A livelock in thread
    initialization with too short sampling interval has been fixed on
    macOS.  A deadlock in using the C runtime has been fixed on
    Windows.  A potential deadlock has been prevented on Unix.
  * Cursor placement in Rgui now works even after a fixed-width font
    is selected.
  * Mandatory options (options()) are now set on startup so that
    saving and restoring them always works (PR#18372).
  * Package installation, R CMD INSTALL or install.packages(*), now
    parses each of the &lt;pkg&gt;/R/*.R files individually instead of
    first concatenating and then parse()ing the large resulting file.
    This allows parser or syntax errors to be diagnosed with correct
    file names and line numbers, thanks to Simon Dedman's report and
    Bill Dunlap's patch in PR#17859.
    This _does_ require syntactically self contained R source files
    now, fixing another inadvertent bug.
  * predict.lm(&lt;model with offset&gt;) now finds the offset in the
    correct environment, thanks to Andr'e Gillibert's report and patch
    in PR#18456.
  * getInitial(&lt;formula&gt;) now finds the selfStart model in the
    correct environment.  (Reported by Ivan Krylov in PR#18368.)
  * Fix for possible segfault when using recently-added graphics
    features, such as gradients, clipping paths, masks, and groups
    with pdf(file=NULL).
  * class(m) &lt;- class(m) no longer changes a matrix m by adding a
    class _attribute_.
  * packageDate(pkg) now only warns once if there is no pkg.
  * When ts() creates a multivariate time series, "mts", it also
    inherits from "array" now, and is.mts() is documented _and_
    stricter.
  * Rd2txt() now preserves line breaks of \verb Rd content and from
    duplicated \cr.  The former also fixes the rendering of verbatim
    output from Rd \Sexpr in plain-text help.
  * uniroot(f, interval) should no longer wrongly converge _outside_
    the interval in some cases where abs(f(x)) == Inf for an x at the
    interval boundary, thanks to posts by Ben Bolker and Serguei
    Sokol on R-devel.
  * Vectorized alpha handling in palette functions such as in gray(),
    rainbow(), or hcl.colors() works correctly now, thanks to Achim
    Zeileis' report and patch in PR#18476.
  * Formatting and print()ing of bibentry objects has dropped the
    deprecated citation.bibtex.max argument, such that the bibtex
    argument's default for print.bibentry() depends directly on the
    citation.bibtex.max option, whereas in format.bibentry() the
    option no longer applies.
  * Attempting to use a character string naming a foreign function
    entry point in a foreign function call in a package will now
    signal an error if the packages has called R_forceSymbols to
    specify that symbols must be used.
  * An error in table() could permanently set options(warn=2)
    promoting all subsequent warnings to errors.
  * The sigma() function gave misleading results for binary GLMs.  A
    new method for objects of class "glm" returns the square root of
    the estimate of the dispersion parameter using the same
    calculation as summary.glm().
  * bs() and ns() in the (typical) case of automatic knot
    construction, when some of the supposedly inner knots coincide
    with boundary knots, now moves them inside (with a warning),
    building on PR#18442 by Ben Bolker.
  * R CMD on Windows now skips the site profile with --no-site-file
    and --vanilla even when R_PROFILE is set (PR#18512, from Kevin
    Ushey).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1686916800">- CHANGES IN R 4.3.1:
  C-LEVEL FACILITIES:
  * The C-level API version of R's integrate(), Rdqags() in Applic.h,
    now returns the correct number of integrand evaluations neval,
    fixing PR#18515 reported and diagnosed by Stephen Wade.
  * The C prototypes for LAPACK calls dspgv and dtptrs in
    R_exts/Lapack.h had one too many and one too few character length
    arguments - but this has not caused any known issues. To get the
    corrected prototypes, include
    [#]include &lt;Rconfig.h&gt; // for PR18534fixed
    [#]ifdef PR18534fixed
    [#] define usePR18534fix 1
    [#]endif
    [#]include &lt;R_exts/Lapack.h&gt;
    in your C/C++ code (PR#18534).
  INSTALLATION:
  * Many of the checks of esoteric Internet operations and those
    using unreliable external sites have been moved to a new target
    that is not run by default and primarily intended for the core
    developers.  To run them use
    cd tests; make test-Internet-dev
  BUG FIXES:
  * .S3methods(), typically called from methods(), again marks
    methods from package base as visible.
    Also, the visibility of non-base methods is again determined by
    the method's presence in search().
  * tools::Rdiff() is now more robust against invalid strings, fixing
    installation tests on Windows without Rtools installed
    (PR#18530).
  * Fix (new) bug in hcl.colors(2, *), by Achim Zeileis (PR#18523).
  * head(., &lt;illegal&gt;) and tail(..) now produce more useful "Error in
    ...." error messages, fixing PR#18362.
  * Package code syntax on Windows is checked in UTF-8 when UTF-8 is
    the native encoding.
  * na.contiguous(x) now also returns the first run, when it is at
    the beginning and there is a later one of the same length;
    reported to R-devel, including a fix, by Georgi Boshnakov.
    Further, by default, it modifies only an existing attr(*,"tsp")
    but otherwise no longer sets one.
  * chol(&lt;not pos.def&gt;, pivot = &lt;T|F&gt;) now gives a correct error or
    warning message (depending on pivot), thanks to Mikael Jagan's
    (PR#18541).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1699012800">- CHANGES IN R 4.3.2:
  NEW FEATURES:
  * The default initialization of the "repos" option from the
    repositories file at startup can be skipped by setting
    environment variable R_REPOSITORIES to NULL such that
    getOption("repos") is empty if not set elsewhere.
  * qr.X() is now an implicit S4 generic in methods.
  * iconv(to = "ASCII//TRANSLIT") is emulated using substitution on
    platforms which do not support it (notably Alpine Linux).  This
    should give a human-readable conversion in ASCII on all platforms
    (rather than NA_character_).
  * trans3d() gains options continuous and verbose addressing the
    problem of possible "wrap around" when projecting too long
    curves, as reported by Achim Zeileis in PR#18537.
  * tools::showNonASCII() has been rewritten to work better on macOS
    14 (which has a changed implementation of iconv()).
  * tiff(type = "quartz") (the default on macOS) now warns if
    compression is specified: it continues to be ignored.
  INSTALLATION on a UNIX-ALIKE:
  * There is some support for building with Intel's LLVM-based
    compilers on x86_64 Linux, such as (C) icx, (C++) ipcx and
    (Fortran) ifx from oneAPI 2023.x.y.
  * There is support for using LLVM's flang-new as the Fortran
    compiler from LLVM 16.0.x (preferably 17.0.0 or later).
  UTILITIES:
  * R CMD check reports the use of the Fortran 90 random number
    generator RANDOM_NUMBER() and the subroutines to initialize it.
    'Writing R Extensions' has example code to use R's RNGs from
    Fortran.
  BUG FIXES:
  * substr(x, n, L) &lt;- cc now works (more) correctly for multibyte
    UTF-8 strings x when L &gt; nchar(x), thanks to a report and patch
    by 'Architect 95'.
  * contrib.url(character()) now returns 0-length character() as
    documented, which also avoids spurious warnings from
    available.packages() et al. in the edge case of an empty vector
    of repository URLs.
  * readChar(., 4e8) no longer fails, thanks to Kodi Arfer's report
    (PR#18557).
  * lapply(&lt;list&gt;, as.data.frame) no longer warns falsely for some
    base vector components.
  * Communication between parent and child processes in the multicore
    part of parallel could fail on platforms that do not support an
    arbitrarily large payload in system functions read()/write() on
    pipes (seen on macOS where a restriction to INT_MAX bytes is
    documented, without doing a partial read unlike Linux). The
    payload is now split into 1Gb chunks to avoid that problem.
    (PR#18571)
  * qqplot(x,y, conf.level=.) gives better confidence bounds when
    length(x) != length(y), thanks to Alexander Ploner's report and
    patch proposal (PR#18557).
  * norm(&lt;0-length&gt;, "2") now gives zero instead of an error, as all
    the other norm types, thanks to Mikael Jagan's PR#18542.
  * Build-stage Rd macros \packageAuthor and \packageMaintainer now
    process Authors@R, fixing NA results when the package DESCRIPTION
    omits Author and Maintainer fields.
  * Formatting and printing complex numbers could give things like
    0.1683-0i because of rounding error: -0i is now replaced by +0i.
  * postscript() refused to accept a title comment containing the
    letter "W" (PR#18599).
  * isoreg(c(1,Inf)) signals an error instead of segfaulting, fixing
    PR#18603.
  * tiff(type = "Xlib") was only outputting the last page of
    multi-page plots.
  * tools::latexToUtf8() again knows about \~{n} and other letters
    with tilde, fixing a regression in R 4.3.0, and about \^{i} as an
    alternative to \^{\i} (similarly with other accents).
    Furthermore, LaTeX codes for accented I letters are now correctly
    converted, also fixing related mistakes in
    tools::encoded_text_to_latex().
  * tar(*, tar = "internal") no longer creates out-of-spec tar files
    in the very rare case of user or group names longer than 32
    bytes, fixing PR#17871 with thanks to Ivan Krylov.
  * When using the "internal" timezone datetime code, adding a
    fraction of a second no longer adds one second, fixing PR#16856
    from a patch by Ivan Krylov.
  * tools::checkRd() no longer produces spurious notes about
    "unnecessary braces" from multi-line Rd results of \Sexpr macros.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1709208000">- CHANGES IN R 4.3.3:
  NEW FEATURES:
  * iconv() now fixes up variant encoding names such as "utf8"
    case-insensitively.
  DEPRECATED AND DEFUNCT:
  * The legacy encoding = "MacRoman" is deprecated in pdf() and
    postscript(): support was incomplete in earlier versions of R.
  BUG FIXES:
  * Arguments are now properly forwarded to methods on S4 generics
    with ... in the middle of their formal arguments. This was broken
    for the case when a method introduced an argument but did not
    include ... in its own formals. Thanks to Herv'e Pag`es for the
    report PR#18538.
  * Some invalid file arguments to pictex(), postscript() and xfig()
    opened a file called NA rather than throw an error.  These
    included postscript(NULL) (which some people expected to work
    like pdf(NULL)).
  * Passing filename = NA to svg(), cairo_pdf(), cairo_ps() or the
    Cairo-based bitmap devices opened a file called NA: it now throws
    an error.
  * quartz(file = NA) opened a file called NA, including when used as
    a Quartz-based bitmap device.  It now gives an error.
  * rank(&lt;long vector&gt;) now works, fixing PR#18617, thanks to Ilia
    Kats.
  * seq.int() did not adequately check its length.out argument.
  * match(&lt;POSIXct&gt;, .) is correct again for differing time zones,
    ditto for "POSIXlt", fixing PR#18618 reported by Bastian Klein.
  * drop.terms(*, dropx = &lt;0-length&gt;) now works, fixing PR#18563 as
    proposed by Mikael Jagan.
  * drop.terms(*) keeps + offset(.) terms when it should, PR#18565,
    and drop.terms() no longer makes up a response, PR#18566, fixing
    both bugs thanks to Mikael Jagan.
  * getS3method("t", "test") no longer finds the t.test() function,
    fixing PR#18627.
  * pdf() and postscript() support for the documented Adobe encodings
    "Greek" and "Cyrilllic" was missing (although the corresponding
    Windows' codepages could be used).
  * Computations of glyph metric information for pdf() and
    postscript() did not take into account that transliteration could
    replace one character by two or more (only seen on macOS 14) and
    typically warned that the information was not known.
  * rank(x) no longer overflows during integer addition, when
    computing rank average for largish but not-yet long vector x,
    fixing PR#18630, thanks to Ilia Kats.
  * list.files() on Windows now returns also files with names longer
    that 260 bytes (the Windows limit is 260 characters).
    Previously, some file names particularly with 'East Asian'
    characters were omitted.
  * cov2cor(&lt;0 x 0&gt;) now works, fixing PR#18423 thanks to Mikael
    Jagan and Elin Waring.
  * cov2cor(&lt;negative diagonal&gt;) and similar now give one warning
    instead of two, with better wording, fixing PR#18424 thanks to
    Mikael Jagan.
  * tools:: startDynamicHelp() now ensures port is in proper range,
    fixing PR#18645.
  * pbeta(x, a,b) is correct now for x=0 or 1 in the boundary cases
    where a or b or both are 0, fixing PR#18672 thanks to Michael
    Fay.
  * pmatch(x, table) for large table, also called for data frame row
    selection, dfrm[nm, ], is now interruptible, fixing PR#18656.
  * predict(&lt;rank-deficient lm&gt;, newdata=*) fix computing of nbasis,
    see Russ Lenth's comment 29 in PR#16158.
  * Added a work-around for a bug in macOS 14.3.1 and higher which
    prevents R plots in the Quartz Cocoa device from updating on
    screen.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1713960000">- CHANGES IN R 4.4.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Startup banners, R --version, sessionInfo() and R CMD check no
    longer report (64-bit) as part of the platform as this is almost
    universal - the increasingly rare 32-bit platforms will still
    report (32-bit).
    On Windows, ditto for window titles.
  * is.atomic(NULL) now returns FALSE, as NULL is not an atomic
    vector.  Strict back-compatibility would replace is.atomic(foo)
    by (is.null(foo) || is.atomic(foo)) but should happen only
    sparingly.
  NEW FEATURES:
  * The confint() methods for "glm" and "nls" objects have been
    copied to the stats package.  Previously, they were stubs which
    called versions in package MASS. The MASS namespace is no longer
    loaded if you invoke (say) confint(glmfit).  Further, the "glm"
    method for profile() and the plot() and pairs() methods for class
    "profile" have been copied from MASS to stats.  (profile.nls()
    and plot.profile.nls() were already in stats.)
  * The confint() and profile methods for "glm" objects have gained a
    possibility to do profiling based on the Rao Score statistic in
    addition to the default Likelihood Ratio. This is controlled by a
    new test = argument.
  * The pairs() method for "profile" objects has been extended with a
    which = argument to allow plotting only a subset of the
    parameters.
  * The "glm" method for anova() computes test statistics and
    p-values by default, using a chi-squared test or an F test
    depending on whether the dispersion is fixed or free.  Test
    statistics can be suppressed by giving argument test a false
    logical value.
  * In setRepositories() the repositories can be set using their
    names via name = instead of index ind =.
  * methods() and .S3methods() gain a all.names option for the (rare)
    case where functions starting with a . should be included.
  * Serializations can now be interrupted (e.g., by Ctrl-C on a
    Unix-alike) if they take too long, e.g., from save.image(),
    thanks to suggestions by Ivan Krylov and others on R-devel.
  * New startup option --max-connections to set the maximum number of
    simultaneous connections for the session.  Defaults to 128 as
    before: allowed values up to 4096 (but resource limits may in
    practice restrict to smaller values).
  * R on Windows (since Windows 10 2004) now uses the new Segment
    Heap allocator. This may improve performance of some
    memory-intensive applications.
  * When R packages are built, typically by R CMD build &lt;pkg&gt;, the
    new --user=&lt;build_user&gt; option overrides the (internally
    determined) user name, currently Sys.info()["user"] or LOGNAME.
    This is a (modified) fulfillment of Will Landau's suggestion in
    PR#17530.
  * tools::testInstalledBasic() gets new optional arguments outDir
    and testSrcdir, e.g., allowing to use it in a &lt;builddir&gt; !=
    &lt;srcdir&gt; setup, and in standard "binary" Windows installation
  * if* a source tests/ folder is present.
  * range(&lt;DT_with_Inf&gt;, finite = TRUE) now work for objects of class
    "Date", "POSIXct", and "POSIXlt" with infinite entries,
    analogously to range.default(), as proposed by Davis Vaughan on
    R-devel.  Other range()-methods can make use of new function
    .rangeNum().
  * New .internalGenerics object complementing .S3PrimitiveGenerics,
    for documentation and low-level book-keeping.
  * grid() now invisibly returns the x- and y- coordinates at which
    the grid-lines were drawn.
  * norm(., type) now also works for complex matrices.
  * kappa(., exact = TRUE, norm = *) now works for all norms and also
    for complex matrices.  In symmetric / triangular cases, the new
    argument uplo = "U" | "L" allows the upper or lower triangular
    part to be specified.
  * memDecompress(type = "unknown") recognizes compression in the
    default 'zlib' format as used by memCompress(type = "gzip").
  * memCompress() and memDecompress() will use the libdeflate library
    (&lt;https://github.com/ebiggers/libdeflate&gt;) if installed.  This
    uses the same type of compression for type = "gzip" but is 1.5-2x
    faster than the system libz library on some common platforms: the
    speed-up may depend on the library version.
  * diff() for objects of class "Date", "POSIXct", and "POSIXlt"
    accepts a units argument passed via ....
  * Dynamic help now does a much better job of rendering package
    DESCRIPTION metadata.
  * Rprof() gains an event argument and support for elapsed (real)
    time profiling on Unix (PR#18076).
  * filled.contour() gains a key.border argument.
  * tools::update_pkg_po() gets arguments pot_make and mo_make for
    _not_ re-making the corresponding files, and additionally a
    verbose argument.
  * Hexadecimal string colour specifications are now accepted in
    short form, so, for example, we can use "#123", which is
    equivalent to "#112233".
    Thanks to MikeFC for the original idea and Ella Kaye, Malcolm
    Barrett, George Stagg, and Hanne Oberman for the patch.
  * Plain-text help shows \var markup by angle brackets.
  * The new experimental primitive function declare() is intended to
    eventually allow information about R code to be communicated to
    the interpreter, compiler, and code analysis tools. The syntax
    for declarations is still being developed.
  * Functions psmirnov(), qsmirnov() and rsmirnov() in package stats
    have had argument two.sided renamed to alternative, to take into
    account that the permutation distributions of the one-sided
    statistics can be different in the case of ties.  Consequence of
    PR#18582.
  * sort() is now an implicit S4 generic in methods.
  * Formatting and printing, format(z), print(z), of complex vectors
    z no longer zap relatively small real or imaginary parts to zero,
    fixing PR#16752.  This is an API change, as it was documented
    previously to round real and imaginary parts together on purpose,
    producing nicer looking output.  As mentioned, e.g. in the PR,
    this change is compatible with many other "R-like" programming
    environments.
    We have simplified the internal code and now basically format the
    real and imaginary parts independently of each other.
  * New experimental functions Tailcall() and Exec() to support
    writing stack-space-efficient recursive functions.
  * Where characters are attempted to be plotted by pdf(),
    postscript() and xfig() which are not in the selected 8-bit
    character set (most often Latin-1) and the R session is using a
    UTF-8 locale, the warning messages will show the UTF-8 character
    rather than its bytes and one dot will be substituted per
    character rather than per byte.  (Platforms whose iconv() does
    transliteration silently plot the transliteration.)
    In a UTF-8 locale some transliterations are now done with a
    warning (e.g., dashes and Unicode minus to hyphen, ligatures are
    expanded, permille (‰) is replaced by o/oo), although the OS may
    have got there first.  These are warnings as they will continue
    to be replaced by dots in earlier versions of R.
  * The matrix multiplication functions crossprod() and tcrossprod()
    are now also primitive and S3 generic, as %*% had become in R
    4.3.0.
  * source() and example() have a new optional argument catch.aborts
    which allows continued evaluation of the R code after an error.
  * The non-Quartz tiff() devices allow additional types of
    compression if supported by the platform's libtiff library.
  * The list of base and recommended package names is now provided by
    tools::standard_package_names().
  * cairo_pdf() and cairo_ps() default to onefile = TRUE to closer
    match pdf() and postscript().
  * New option catch.script.errors provides a documented way to catch
    errors and then continue in non-interactive use.
  * L %||% R newly in base is an expressive idiom for the phrases
    if(!is.null(L)) L else R or if(is.null(L)) R else L.
  * The return value from warnings() now always inherits from
    "warnings" as documented, now also in the case of no warnings
    where it previously returned NULL.
  * as.complex("1i") now returns 0 + 1i instead of NA with a warning.
  * z &lt;- c(NA, 1i) now keeps the imaginary part Im(z[1]) == 0, no
    longer coercing to NA_complex_.  Similarly, cumsum(z) correctly
    sums real and imaginary parts separately, i.e., without
    "crosstalk" in case of NAs.
  * On Alpine Linux iconv() now maps "latin2", "latin-2", "latin9"
    and "latin-9" to encoding names the OS knows about
    (case-insensitively).
  * iconv(sub = "Unicode") now always zero-pads to four (hex) digits,
    rather than to 4 or 8.  (This seems to have become the convention
    once Unicode restricted the number of Unicode points to 2^21 - 1
    and so will never need more than 6 digits.)
  * NCOL(NULL) now returns 0 instead of 1, for consistency with
    cbind().
  * The information for the Euro glyph missing from the Adobe .afm
    files for the Courier, Helvetica and Times families has been
    copied from their URW equivalents - this will improve vertical
    centring in the pdf() and postscript() devices.
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.12.0.  The changes are almost entirely cosmetic.
  * The included LAPACK sources have been updated to version 3.12.0
    and some further double-complex routines added.
  * There are new font families for the 2014--5 URW 2.0 fonts (see
    ?pdf) which are included in recent versions of Ghostscript.
    These have font widths for most Greek glyphs and a few others
    which were missing from the original versions (whose font
    families remain available for reproducibility, although
    Ghostscript-based viewers will render using the 2.0 versions).
  * Improve the large-n efficiency of as.matrix(&lt;dist&gt;), thanks an R
    contributors effort, notably by Tim Taylor and Heather Turner,
    see PR#18660.
  * The default and numeric methods of all.equal() get a check.class
    option.
  * zapsmall() gets new optional arguments, function mFUN and min.d,
    for extra flexibility; fulfills a wish in PR#18199.  Also, it is
    now an implicit S4 generic in package methods.
  * The Rd filter for aspell() gains an ignore argument.
  * New generic function sort_by(), primarily useful for the
    data.frame method which can be used to sort rows of a data frame
    by one or more columns.
  * The icence headers for the RPC code in src/extra/xdr have been
    updated to use the GPL-compatible licence published by Oracle
    America in 2010.
  * New function pkg2HTML() in tools to create single-page HTML
    reference manuals for R packages.
  * The byte code evaluator now uses less C stack space for recursive
    calls to byte-compiled functions. It also makes more of an effort
    to avoid allocations for scalar return values.
  * New completion option backtick (disabled by default) allows
    non-syntactic completions to be wrapped in backquotes. This is
    currently only useful for Jupyter notebooks via the IRkernel
    package, and may cause problems for other backends.
  INSTALLATION:
  * The parser has been updated to work with bison 3.8.2, which is
    now used for the pre-generated parsers in gram.c, file.c, and
    gramRd.c. A few parser error messages have changed, which may
    affect code that relies on exact messages.
  INSTALLATION on a UNIX-ALIKE:
  * System valgrind headers are now required to use configure option
  - -with-valgrind-instrumentation with value 1 or 2.
  * configure will warn if it encounters a 32-bit build, as that is
    nowadays almost untested.
  * Environment variable R_SYSTEM_ABI is no longer used and so no
    longer recorded in etc/Renviron (it was not on Windows and was
    only ever used when preparing package tools).
  * If the libdeflate library and headers are available, libdeflate
    rather than libz is used to (de)compress R objects in lazy-load
    databases.  Typically tasks spend up to 5% of their time on such
    operations, although creating lazy-data databases is one of the
    exceptions.
    This can be suppressed if the library is available by the
    configure option --without-libdeflate-compression.
  * configure option --enable-lto=check has not worked reliably since
    2019 and has been removed.
  * The minimum autoconf requirement for a maintainer build has been
    increased to autoconf 2.71.
    It is intended to increase this to 2.72 for R 4.5.0: the
    distributed configure file was generated using 2.72.
  * The minimum version requirement for an external LAPACK has been
    reduced to 3.9.0.
  * No default C++ compiler is set if no C++17 compiler is detected:
    there is no longer an automatic fallback to C++14 or C++11.
    Compilers from the last five years should have sufficient
    support: for others macros CXX and CXXSTD can be set in file
    config.site to provide a fallback if needed.
    The Objective-C++ compiler now by default uses the standard
    selected by R for C++ (currently C++17) rather than the default
    standard for the C++ compiler (which on macOS is still C++98).
  INSTALLATION on macOS:
  * A new configure option --with-newAccelerate makes use of Apple's
    'new' BLAS / LAPACK interfaces in their Accelerate framework.
    Those interfaces are only available in macOS 13.3 or later, and
    building requires SDK 13.3 or later (from the Command Line Tools
    or Xcode 14.3 or later).
    By default the option uses new Accelerate for BLAS calls: to also
    use it for LAPACK use option --with-newAccelerate=lapack.  The
    later interfaces provide LAPACK 3.9.1 rather than 3.2.1: 3.9.1 is
    from 2021-04 and does not include the improved algorithms
    introduced in LAPACK 3.10.0 (including for BLAS calls).
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools44, an update of the Rtools43 toolchain.  It is
    based on GCC 13 and newer versions of MinGW-W64, binutils and
    libraries (targeting 64-bit Intel CPUs).  R-devel can no longer
    be built using Rtools43 without changes.
  * Rtools44 has experimental support for 64-bit ARM (aarch64) CPUs
    _via_ the LLVM 17 toolchain using lld, clang/flang-new and
    libc++.
  UTILITIES:
  * R CMD check notes when S4-style exports are used without
    declaring a strong dependence on package methods.
  * tools::checkRd() (used by R CMD check) detects more problems with
    \Sexpr-based dynamic content, including bad nesting of \Sexprs
    and invalid arguments.
  * tools::checkRd() now reports Rd titles and section names ending
    in a period; this is ignored by R CMD check unless environment
    variable _R_CHECK_RD_CHECKRD_MINLEVEL_ is set to -5 or smaller.
  * R CMD check now notes Rd files without an \alias, as long
    documented in 'Writing R Extensions' §1.3.1.  The check for a
    missing \description has been moved from tools::checkRd() to
    tools::checkRdContents().
  * R CMD check now visits inst/NEWS.Rd and OS-specific man
    subdirectories when checking Rd files.
  * tools::checkDocFiles() and tools::checkRdContents() now also
    check internal Rd files by default, but "specially" (ignoring
    missing documentation of arguments).
  * R CMD Rdiff gets option --useEx.
  * R CMD check now warns on non-portable uses of Fortran KIND such
    as INTEGER(KIND=4) and REAL(KIND=8).
    To see the failing lines set environment variable
    _R_CHECK_FORTRAN_KIND_DETAILS_ to a true value.
  * When checking Rd files, R CMD check now notes some of the "lost
    braces" that tools::checkRd() finds.  Typical problems are Rd
    macros missing the initial backslash (e.g., code{...}), in-text
    set notation (e.g., {1, 2}, where the braces need escaping), and
    \itemize lists with \describe-style entries of the form
    \item{label}{description}.
  * R CMD INSTALL (and hence check) will compile C++ code with
  - DR_NO_REMAP if environment variable _R_CXX_USE_NO_REMAP_ is set
    to a true value.  It is planned that this will in future become
    the default for compiling C++.
  * The new built-in Rd macro \dontdiff{} can be used to mark example
    code whose output should be ignored when comparing check output
    to reference output (tests/Examples/&lt;pkg&gt;-Ex.Rout.save).  The
    \dontdiff tag, like \donttest, is _not_ shown on the rendered
    help page, so provides a clean alternative to ##
    IGNORE_RDIFF_(BEGIN|END) comments.
  * R CMD build when there is no NAMESPACE, now uses the recommended
    exportPattern("^[^.]"), instead of exporting everything.
  * R CMD check now warns about non-ASCII characters in the NAMESPACE
    file (in addition to R files). Such packages are not portable and
    may fail to install on some platforms.
  C-LEVEL FACILITIES:
  * Headers R_ext/Applic.h and R-ext/Linpack.h used to include
    R_ext/BLAS.h although this was undocumented and unneeded by their
    documented entry points.  They no longer do so.
  * New function R_missing(), factored out from do_missing(), used to
    fix PR#18579.
  * SEXP type S4SXP has been renamed to OBJSXP to support
    experimenting with alternative object systems.  The S4SXP value
    can still be used in C code but is now deprecated.  Based on
    contributions from the R Consortium's Object-Oriented Programming
    Working Group.
  * New function pow1p(x,y) for accurate (1+x)^y.
  * mkCharLenCE was incorrectly documented to take a size_t length
    but was implemented with int (and character strings in R are
    limited to 2^31 - 1 bytes).
  DEPRECATED AND DEFUNCT:
  * data() no longer handles zipped data from long-defunct (since R
    2.13.0) --use-zip-data installations.
  * The legacy graphics devices pictex() and xfig() are now
    deprecated.  They do not support recent graphics enhancements and
    their font handling is rudimentary. The intention is to retain
    them for historical interest as long as they remain somewhat
    functional.
  * Support for encoding = "MacRoman" has been removed from the pdf()
    and postscript() devices - this was a legacy encoding supporting
    classic macOS up to 2001 and no longer has universal libiconv
    support.
  * is.R() is deprecated as no other S dialect is known to be in use
    (and this could only identify historical dialects, not future
    ones).
    Further information on calls can be obtained by setting the
    environment variable _R_DEPRECATED_IS_R_ to error which turns the
    deprecation warning into an error and so by default gives a
    traceback.  (This is done by R CMD check --as-cran.)
  * UseMethod() no longer forwards local variables assigned in the
    generic function into method call environments before evaluating
    the method body. This makes method calls behave more like
    standard function calls and makes method code easier to analyze
    correctly.
  * The twelve as.data.frame.&lt;class&gt;() methods which were deprecated
    only via _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ and in R CMD
    check --as-cran are formally deprecated now in favour of calling
    as.data.frame() or as.data.frame.vector().  The deprecation
    "check" now works also when as.data.frame() is S4 generic thanks
    to Ivan Krylov.
  * The default method for the directional comparison operators &lt;, &gt;,
    &lt;=, and &gt;= now signals an error when one of the operands is a
    language object, i.e. a symbol or a call.
  * For terms.formula(), deprecate abb and neg.out arguments
    _formally_ in addition to just documenting it.
  BUG FIXES:
  * The methods package is more robust to not being attached to the
    search path.  More work needs to be done.
  * pairwise.t.test() misbehaved when subgroups had 0 DF for
    variance, even with pool.sd = TRUE.  (PR#18594 by Jack Berry).
  * Probability distribution functions [dpq]&lt;distrib&gt;(x, *), but also
    bessel[IKJY](x, .) now consistently preserve attributes(x) when
    length(x) == 0, e.g., for a 2 x 0 matrix, thanks to Karolis
    Koncevičius' report PR#18509.
  * Group "Summary" computations such as sum(1:3, 4, na.rm = 5, NA,
    7, na.rm = LL) now give an error instead of either 17 or NN for
    LL true or false, as proposed by Ivan Krylov on the R-devel
    mailing list.  (This also means it is now an error to specify
    na.rm more than once.)
  * as.complex(x) now returns complex(real = x, imaginary = 0) for
    _all_ numerical and logical x, notably also for NA or
    NA_integer_.
  * Directories are now omitted by file.copy(, recursive = FALSE) and
    in file.append() (PR#17337).
  * gsub() and sub() are now more robust to integer overflow when
    reporting errors caused by too large input strings (PR#18346).
  * Top-level handlers are now more robust to attempts to remove a
    handler whilst handlers are running (PR#18508).
  * The handling of Alt+F4 in dialogs created on Windows using
    GraphApp has been fixed (PR#13870).
  * density() more consistently computes grid values for the
    FFT-based convolution, following Robert Schlicht's analysis and
    proposal in PR#18337, correcting density values typically by a
    factor of about 0.999.  Argument old.coords = TRUE provides back
    compatibility.
  * palette.colors() gains a name argument that defaults to FALSE
    controlling whether the vector of colours that is returned has
    names (where possible).  PR#18529.
  * tools::xgettext() no longer extracts the (non-translatable) class
    names from warningCondition and errorCondition calls.
  * S3method(&lt;gen&gt;, &lt;class&gt;, &lt;func&gt;) in the NAMESPACE file now works
    (again) when &lt;func&gt; is visible from the namespace, e.g.,
    imported, or in base.
  * getParseData(f) now also works for a function defined in the
    first of several &lt;pkg&gt;/R/*.R source files, thanks to Kirill
    Müller's report and Duncan Murdoch's patch in PR#16756.
  * Rd \Sexpr macros with nested #ifdef conditionals were not
    processed.
  * A non-blocking connection with non-default encoding (such as a
    socket) now correctly returns from readLines() after new data has
    arrived also when its EOF had been reached previously.  Thanks to
    Peter Meilstrup's report on R-devel and Ivan Krylov's report and
    patch proposal in PR#18555.
  * tools::checkRdContents() failed to detect empty argument
    descriptions when they spanned multiple lines, including those
    generated by prompt().  These cases are now noted by R CMD check.
  * Plain-text help no longer outputs spurious colons in the
    arguments list (for multi-line \item labels in the Rd source).
  * kappa() and rcond() work correctly in more cases; kappa(., norm =
    "2") now warns that it computes the 1-norm with (default) exact =
    FALSE; prompted by Mikael Jagan's quite comprehensive PR#18543.
  * Rd skeletons generated by prompt() or promptData() now use a
    dummy title (so R CMD build works).  tools::checkRdContents() has
    been updated to detect such template leftovers, including from
    promptPackage().
  * When S4 method dispatch fails because no method was found, the
    error message now includes the signature argument names; thanks
    to Michael Chirico's proposal on the R-devel list.
  * withAutoprint({ .. }) now preserves srcrefs previously lost,
    thanks to Andrew Simmons' report plus fix in PR#18572.
  * transform.data.frame() no longer adjusts names; in particular,
    untransformed variables are kept as-is, including those with
    syntactically invalid names (PR#17890).
  * The keep.source option for Rd \Sexpr blocks is no longer ignored.
  * The formula methods for t.test() and wilcox.test() now catch when
    paired is passed, addressing PR#14359; use Pair(x1, x2) ~ 1 for a
    paired test.
  * The level reported in the browser prompt was often too large. It
    now shows the number of browser contexts on the stack.
  * For cbind() and rbind(), the optional deparse.level argument is
    now properly passed to methods, thanks to Mikael Jagan's PR#18579
    and comments there.
  * Some error and warning messages for large ('long vector')
    matrix(v, nr, nc) and dim(m) &lt;- d are now correct about sizes,
    using long long formatting, fixing PR#18612 (and more) reported
    by Mikael Jagan.
  * readChar(useBytes = TRUE) now terminates strings even when the
    underlying connection uses extra spaces in the input buffer.
    This fixes problems with extra garbage seen with gzip
    connections, PR#18605.
  * Named capture in PCRE regular expressions now works also with
    more than 127 named groups (PR#18588).
  * Datetime functions are now robust against long jumps when dealing
    with internal time zone changes.  This avoids confusing warnings
    about an invalid time zone, previously triggered by turning
    warnings into errors or handling them via tryCatch (PR#17966,
    PR#17780).
  * Datetime functions now restore even an empty TZ environment
    variable after internal time zone changes (PR#17724).  This makes
    results of datetime functions with this (typically unintentional)
    setting more predictable.
  * drop.terms(*) now drops response as by default, keep.response =
    FALSE, fixing PR#18564 thanks to Mikael Jagan.
  * dummy.coef(.) now also works for lm()-models with character
    categorical predictor variables rather than factor ones, fixing
    PR#18635 reported by Jinsong Zhao.
  * formals(f) &lt;- formals(f) now also works for a function w/o
    arguments and atomic _constant_ body(f).
  * Correct as.function(&lt;invalid list&gt;, .)'s error message.
  * removeSource() is yet more thorough in finding and removing
    "srcref" and the other source references from parsed R language
    chunks, fixing PR#18638 thanks to Andrew Simmons.
  * dgeom() is more accurate now, notably when its result is very
    small, fixing PR#18642 thanks to the proposal of Morten Welinder,
    also improving other instances where C level binom_raw(x, n, ..)
    has x == 0 or x== n.
  * warning() with options(warn = 1) has improved output for
    multi-line messages.
  * axis.Date() and axis.POSIXct() now respect the par("lab") setting
    for the number of pretty() intervals.
  * Comparisons for language objects (which are based on deparsing)
    are now more careful about using accurate deparsed results
    (PR#18676).
  * Plain-text help (Rd2txt) now correctly preserves blank lines
    following single-line \dontrun code.
  * &lt;POSIXlt&gt;[*] no longer sets wrong "balanced" attribute, fixing
    PR#18681 thanks to Mikael Jagan.
  * str(&lt;classed-call&gt;) now deparses the call as expected, fixing
    PR#18684, reported by Dave Slager.
  * In Rd examples, code following the closing brace of a \dontrun,
    \dontshow or \donttest tag on the same line is no longer skipped
    when R CMD check runs the examples.
  * as.data.frame(matrix(*, ncol=0)) now gets valid names() and
    colnames(); reported by Davis Vaughan on the R-devel list.
  * Internal Mathlib function stirlerr(n) is now almost fully
    (52-bit) accurate for all n &gt;= ~5.9 and more accurate also in the
    range 1 -- 5.9.  This entails small ("after 12th decimal")
    changes in density functions, e.g., dgamma() in _some_ regions of
    their support.  The fix was partly prompted by Morten Welinder's
    PR#18640.
  * Numbers like 9876543.2 are now considered non-integer by Mathlib
    internal R_nonint(), amending original fix of PR#15734.
  * Rd comment lines no longer cause broken paragraphs in the
    rendered PDF and plain-text help. In code blocks, pure comment
    lines (starting with %) no longer produce an empty line.
  * xtabs(Freq ~ .) now consistently defaults to na.action = na.pass,
    using na.rm = FALSE (added as an argument) when summing over Freq
    (PR#17770).
  * tools::testInstalledPackage() is no longer silent about failures
    from running examples or tests and its return code no longer
    ignores failures from checking vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1718366400">- CHANGES IN R 4.4.1:
  C-LEVEL FACILITIES:
  * Functions R_atof and R_strtod declared in header R_ext/Utils.h
    are now documented in 'Writing R Extensions' and so formally part
    of the API.
  * The non-API entry points Rf_setSVector, Rf_StringFalse,
    Rf_StringTrue and Rf_isBlankString have been added to those
    reported by R CMD check.
  * The new function Rf_allocLang is now available. This provides an
    alternative to the idiom of calling Rf_allocList followed by
    SET_TYPEOF.
  UTILITIES:
  * R CMD check now reports as warnings what gfortran calls 'Fortran
    2018 deleted features', all of which have long been marked as
    'obsolescent' and some of which were deleted in Fortran 2008 or
    earlier.  Fortran compilers are no longer required to support
    these.
  BUG FIXES:
  * as.numeric(), scan(), type.convert() and other places which use
    the internal C function R_strtod now require a _non-empty_ digit
    sequence in a decimal or binary exponent.  This aligns with the
    C/POSIX standard for strtod and with ?NumericConstants.
  * as.data.frame(m, make.names=NA) now works correctly for a matrix
    m with NA's in row names.
  * The error message from &lt;POSIXlt&gt;[["hour"]] and similar now
    mentions *[[, "hour"]], as wished for in PR#17409 and proposed by
    Michael Chirico.
  * qbinom() and potentially qpois(), qnbinom(), no longer sometimes
    fail accurate inversion (of pbinom(), etc), thanks to Christopher
    Chang's report and patch in PR#18711.
  * The internal help server on Windows can again serve requests sent
    in quick succession, fixing a regression in R 4.4.0.
  * debugcall(&lt;S3Generic&gt;()) now also works when a corresponding
    S4-generic version is in the methods cache (PR#18143).
  * Package tools' toTitleCase(ch0) now returns character(0) when ch0
    is of zero length; fixing PR#18724, reported by David Hugh Jones.
  * R CMD check is no longer broken (without a check result and no
    explanation in 00check.log) for a package which declares an
    invalid VignetteBuilder in DESCRIPTION but has no vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1730376000">- CHANGES IN R 4.4.2:
  C-LEVEL FACILITIES:
  * The S-compatibility macros F77_COM and F77_COMDECL defined in
    header R_ext/RS.h are deprecated and will be removed shortly.  We
    could find no record of their use.
  BUG FIXES:
  * Mathlib function lgammacor(x) no longer warns about underflow to
    zero for large x.
  * Text widths and heights were incorrectly reported by the Quartz
    device if the drawing context didn't exist yet (typically when
    drawing off-screen to a window that is yet to appear, see
    PR#18591).
  * The Quartz device could segfault in cases where paths with spaces
    are used in the new glyph drawing API.  Thanks to Tomek
    Gieorgijewski (PR#18758).
  * On macOS in R CRAN builds, it is again possible to read
    little-endian UTF-16 text with a BOM from a connection using
    encoding="UTF-16".  Users building R from source should avoid
    using the system libiconv in macOS 14.1 and later.
  * methods' internal .requirePackage() now re-enables primitive
    method dispatch when needed; thanks to Ivan Krylov for
    demystifying CRAN package check failures on the R-devel mailing
    list.</changelog>
</package>
<package pkgid="b4df23ded80ad54f3e9f3dbbb847af42e9dbfb46a6c5fcf7570317b57f6280d82f8a637651c294066c7e3644c3aae40d879ae4a12df12fe3bf2cd613dbfae348" name="R-base-debuginfo" arch="i586">
  <version epoch="0" ver="4.4.2" rel="51.0.2.2.sr20241103"/>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1620302400">- To get in sync with d:l:R:autoCRAN the Matrix package's split
  in -devel was reversed.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339200">- improved spec file according to comments of dimstar in
  https://build.opensuse.org/request/show/892685</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339201">- CHANGES IN R 4.1.0:
  FUTURE DIRECTIONS:
  * It is planned that the 4.1.x series will be the last to support
    32-bit Windows, with production of binary packages for that
    series continuing until early 2023.
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Data set esoph in package datasets now provides the correct
    numbers of controls; previously it had the numbers of cases added
    to these.  (Reported by Alexander Fowler in PR#17964.)
  NEW FEATURES:
  * www.omegahat.net is no longer one of the repositories known by
    default to setRepositories().  (Nowadays it only provides source
    packages and is often unavailable.)
  * Function package_dependencies() (in package tools) can now use
    different dependency types for direct and recursive dependencies.
  * The checking of the size of tarball in R CMD check --as-cran
    &lt;pkg&gt; may be tweaked via the new environment variable
    _R_CHECK_CRAN_INCOMING_TARBALL_THRESHOLD_, as suggested in
    PR#17777 by Jan Gorecki.
  * Using c() to combine a factor with other factors now gives a
    factor, an ordered factor when combining ordered factors with
    identical levels.
  * apply() gains a simplify argument to allow disabling of
    simplification of results.
  * The format() method for class "ftable" gets a new option justify.
    (Suggested by Thomas Soeiro.)
  * New ...names() utility.  (Proposed by Neal Fultz in PR#17705.)
  * type.convert() now warns when its as.is argument is not
    specified, as the help file always said it _should_.  In that
    case, the default is changed to TRUE in line with its change in
    read.table() (related to stringsAsFactor) in R 4.0.0.
  * When printing list arrays, classed objects are now shown _via_
    their format() value if this is a short enough character string,
    or by giving the first elements of their class vector and their
    length.
  * capabilities() gets new entry "Rprof" which is TRUE when R has
    been configured with the equivalent of --enable-R-profiling (as
    it is by default).  (Related to Michael Orlitzky's report
    PR#17836.)
  * str(xS4) now also shows extraneous attributes of an S4 object
    xS4.
  * Rudimentary support for vi-style tags in rtags() and R CMD rtags
    has been added.  (Based on a patch from Neal Fultz in PR#17214.)
  * checkRdContents() is now exported from tools; it and also
    checkDocFiles() have a new option chkInternal allowing to check
    Rd files marked with keyword "internal" as well.  The latter can
    be activated for R CMD check via environment variable
    _R_CHECK_RD_INTERNAL_TOO_.
  * New functions numToBits() and numToInts() extend the raw
    conversion utilities to (double precision) numeric.
  * Functions URLencode() and URLdecode() in package utils now work
    on vectors of URIs.  (Based on patch from Bob Rudis submitted
    with PR#17873.)
  * path.expand() can expand ~user on most Unix-alikes even when
    readline is not in use.  It tries harder to expand ~, for example
    should environment variable HOME be unset.
  * For HTML help (both dynamic and static), Rd file links to help
    pages in external packages are now treated as references to
    topics rather than file names, and fall back to a file link only
    if the topic is not found in the target package. The earlier rule
    which prioritized file names over topics can be restored by
    setting the environment variable _R_HELP_LINKS_TO_TOPICS_ to a
    false value.
  * c() now removes NULL arguments before dispatching to methods,
    thus simplifying the implementation of c() methods, _but_ for
    back compatibility keeps NULL when it is the first argument.
    (From a report and patch proposal by Lionel Henry in PR#17900.)
  * Vectorize()'s result function's environment no longer keeps
    unneeded objects.
  * Function ...elt() now propagates visibility consistently with
    ..n.  (Thanks to Lionel Henry's PR#17905.)
  * capture.output() no longer uses non-standard evaluation to
    evaluate its arguments.  This makes evaluation of functions like
    parent.frame() more consistent.  (Thanks to Lionel Henry's
    PR#17907.)
  * packBits(bits, type="double") now works as inverse of
    numToBits().  (Thanks to Bill Dunlap's proposal in PR#17914.)
  * curlGetHeaders() has two new arguments, timeout to specify the
    timeout for that call (overriding getOption("timeout")) and TLS
    to specify the minimum TLS protocol version to be used for
    https:// URIs (_inter alia_ providing a means to check for sites
    using deprecated TLS versions 1.0 and 1.1).
  * For nls(), an optional constant scaleOffset may be added to the
    denominator of the relative offset convergence test for cases
    where the fit of a model is expected to be exact, thanks to a
    proposal by John Nash.  nls(*, trace=TRUE) now also shows the
    convergence criterion.
  * Numeric differentiation _via_ numericDeriv() gets new optional
    arguments eps and central, the latter for taking central divided
    differences.  The latter can be activated for nls() via
    nls.control(nDcentral = TRUE).
  * nls() now passes the trace and control arguments to getInitial(),
    notably for all self-starting models, so these can also be fit in
    zero-noise situations via a scaleOffset.  For this reason, the
    initial function of a selfStart model must now have ... in its
    argument list.
  * bquote(splice = TRUE) can now splice expression vectors with
    attributes: this makes it possible to splice the result of
    parse(keep.source = TRUE).  (Report and patch provided by Lionel
    Henry in PR#17869.)
  * textConnection() gets an optional name argument.
  * get(), exists(), and get0() now signal an error if the first
    argument has length greater than 1.  Previously additional
    elements were silently ignored.  (Suggested by Antoine Fabri on
    R-devel.)
  * R now provides a shorthand notation for creating functions, e.g.
    \(x) x + 1 is parsed as function(x) x + 1.
  * R now provides a simple native forward pipe syntax |&gt;.  The
    simple form of the forward pipe inserts the left-hand side as the
    first argument in the right-hand side call.  The pipe
    implementation as a syntax transformation was motivated by
    suggestions from Jim Hester and Lionel Henry.
  * all.equal(f, g) for functions now by default also compares their
    environment(.)s, notably via new all.equal method for class
    function.  Comparison of nls() fits, e.g., may now need
    all.equal(m1, m2, check.environment = FALSE).
  * .libPaths() gets a new option include.site, allowing to _not_
    include the site library.  (Thanks to Dario Strbenac's suggestion
    and Gabe Becker's PR#18016.)
  * Lithuanian translations are now available.  (Thanks to Rimantas
    Zakauskas.)
  * names() now works for DOTSXP objects.  On the other hand, in
    R-lang, the R language manual, we now warn against relying on the
    structure or even existence of such dot-dot-dot objects.
  * all.equal() no longer gives an error on DOTSXP objects.
  * capabilities("cairo") now applies only to the file-based devices
    as it is now possible (if very unusual) to build R with Cairo
    support for those but not for X11().
  * There is optional support for tracing the progress of
    loadNamespace() - see its help.
  * (Not Windows.)  l10n_info() reports an additional element, the
    name of the encoding as reported by the OS (which may differ from
    the encoding part (if any) of the result from
    Sys.getlocale("LC_CTYPE").
  * New function gregexec() which generalizes regexec() to find _all_
    disjoint matches and well as all substrings corresponding to
    parenthesized subexpressions of the given regular expression.
    (Contributed by Brodie Gaslam.)
  * New function charClass() in package utils to query the
    wide-character classification functions in use (such as
    iswprint).
  * The names of quantile()'s result no longer depend on the global
    getOption("digits"), but quantile() gets a new optional argument
    digits = 7 instead.
  * grep(), sub(), regexp and variants work considerably faster for
    long factors with few levels.  (Thanks to Michael Chirico's
    PR#18063.)
  * Provide grouping of x11() graphics windows within a window
    manager such as Gnome or Unity; thanks to a patch by Ivan Krylov
    posted to R-devel.
  * The split() method for class data.frame now allows the f argument
    to be specified as a formula.
  * sprintf now warns on arguments unused by the format string.
  * New palettes "Rocket" and "Mako" for hcl.colors() (approximating
    palettes of the same name from the 'viridisLite' package).
    Contributed by Achim Zeileis.
  * The base environment and its namespace are now locked (so one can
    no longer add bindings to these or remove from these).
  * Rterm handling of multi-byte characters has been improved,
    allowing use of such characters when supported by the current
    locale.
  * Rterm now accepts ALT+ +xxxxxxxx sequences to enter Unicode
    characters as hex digits.
  * Environment variable LC_ALL on Windows now takes precedence over
    LC_CTYPE and variables for other supported categories, matching
    the POSIX behaviour.
  * duplicated() and anyDuplicated() are now optimized for integer
    and real vectors that are known to be sorted via the ALTREP
    framework. Contributed by Gabriel Becker via PR#17993.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 14
    and so packages that provide graphics devices should be
    reinstalled.
  * Graphics devices should now specify deviceVersion to indicate
    what version of the graphics engine they support.
  * Graphics devices can now specify deviceClip.  If TRUE, the
    graphics engine will never perform any clipping of output itself.
    The clipping that the graphics engine does perform (for both
    canClip = TRUE and canClip = FALSE) has been improved to avoid
    producing unnecessary artifacts in clipped output.
  * The grid package now allows gpar(fill) to be a linearGradient(),
    a radialGradient(), or a pattern().  The viewport(clip) can now
    also be a grob, which defines a clipping path, and there is a new
    viewport(mask) that can also be a grob, which defines a mask.
    These new features are only supported so far on the Cairo-based
    graphics devices and on the pdf() device.
  * (Not Windows.)  A warning is given when a Cairo-based type is
    specified for a png(), jpeg(), tiff() or bmp() device but Cairo
    is unsupported (so type = "Xlib" is tried instead).
  * grSoftVersion() now reports the versions of FreeType and
    FontConfig if they are used directly (not _via_ Pango), as is
    most commonly done on macOS.
  C-LEVEL FACILITIES:
  * The _standalone_ libRmath math library and R's C API now provide
    log1pexp() again as documented, and gain log1mexp().
  INSTALLATION on a UNIX-ALIKE:
  * configure checks for a program pkgconf if program pkg-config is
    not found.  These are now only looked for on the path (like
    almost all other programs) so if needed specify a full path to
    the command in PKG_CONFIG, for example in file config.site.
  * C99 function iswblank is required - it was last seen missing ca
    2003 so the workaround has been removed.
  * There are new configure options --with-internal-iswxxxxx,
  - -with-internal-towlower and --with-internal-wcwidth which allows
    the system functions for wide-character classification,
    case-switching and width (wcwidth and wcswidth) to be replaced by
    internal ones.  The first has long been used on macOS, AIX (and
    Windows) but this enables it to be unselected there and selected
    for other platforms (it is the new default on Solaris).  The
    second is new in this version of R and is selected by default on
    macOS and Solaris.  The third has long been the default and
    remains so as it contains customizations for East Asian
    languages.
    System versions of these functions are often minimally
    implemented (sometimes only for ASCII characters) and may not
    cover the full range of Unicode points: for example Solaris (and
    Windows) only cover the Basic Multilingual Plane.
  * Cairo installations without X11 are more likely to be detected by
    configure, when the file-based Cairo graphics devices will be
    available but not X11(type = "cairo").
  * There is a new configure option --with-static-cairo which is the
    default on macOS.  This should be used when only static cairo
    (and where relevant, Pango) libraries are available.
  * Cairo-based graphics devices on platforms without Pango but with
    FreeType/FontConfig will make use of the latter for font
    selection.
  LINK-TIME OPTIMIZATION on a UNIX-ALIKE:
  * Configuring with flag --enable-lto=R now also uses LTO when
    installing the recommended packages.
  * R CMD INSTALL and R CMD SHLIB have a new flag --use-LTO to use
    LTO when compiling code, for use with R configured with
  - -enable-lto=R.  For R configured with --enable-lto, they have
    the new flag --no-use-LTO.
    Packages can opt in or out of LTO compilation _via_ a UseLTO
    field in the DESCRIPTION file.  (As usual this can be overridden
    by the command-line flags.)
  BUILDING R on Windows:
  * for GCC &gt;= 8, FC_LEN_T is defined in config.h and hence character
    lengths are passed from C to Fortran in _inter alia_ BLAS and
    LAPACK calls.
  * There is a new text file src/gnuwin32/README.compilation, which
    outlines how C/Fortran code compilation is organized and
    documents new features:
  * R can be built with Link-Time Optimization with a suitable
    compiler - doing so with GCC 9.2 showed several
    inconsistencies which have been corrected.
  * There is support for cross-compiling the C and Fortran code
    in R and standard packages on suitable (Linux) platforms.
    This is mainly intended to allow developers to test later
    versions of compilers - for example using GCC 9.2 or 10.x has
    detected issues that GCC 8.3 in Rtools40 does not.
  * There is experimental support for cross-building R packages
    with C, C++ and/or Fortran code.
  * The R installer can now be optionally built to support a single
    architecture (only 64-bit or only 32-bit).
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++14 where
    available (which it is on all currently checked platforms): if
    not (as before) C++11 is used if available otherwise C++ is not
    supported.
    Packages which specify C++11 will still be installed using C++11.
    C++14 compilers may give deprecation warnings, most often for
    std::random_shuffle (deprecated in C++14 and removed in C++17).
    Either specify C++11 (see 'Writing R Extensions') or modernize
    the code and if needed specify C++14.  The latter has been
    supported since R 3.4.0 so the package's DESCRIPTION would need
    to include something like
    Depends: R (&gt;= 3.4)
  PACKAGE INSTALLATION on Windows:
  * R CMD INSTALL and R CMD SHLIB make use of their flag --use-LTO
    when the LTO_OPT make macro is set in file etc/${R_ARCH}/Makeconf
    or in a personal/site Makevars file.  (For details see 'Writing R
    Extensions' SS4.5.)
    This provides a valuable check on code consistency.  It does work
    with GCC 8.3 as in Rtools40, but that does not detect everything
    the CRAN checks with current GCC do.
  PACKAGE INSTALLATION on macOS:
  * The default personal library directory on builds with
  - -enable-aqua (including CRAN builds) now differs by CPU type,
    one of
    ~/Library/R/x86_64/x.y/library
    ~/Library/R/arm64/x.y/library
    This uses the CPU type R (and hence the packages) were built for,
    so when a x86_64 build of R is run under Rosetta emulation on an
    arm64 Mac, the first is used.
  UTILITIES:
  * R CMD check can now scan package functions for bogus return
    statements, which were possibly intended as return() calls (wish
    of PR#17180, patch by Sebastian Meyer). This check can be
    activated via the new environment variable
    _R_CHECK_BOGUS_RETURN_, true for --as-cran.
  * R CMD build omits tarballs and binaries of previous builds from
    the top-level package directory.  (PR#17828, patch by Sebastian
    Meyer.)
  * R CMD check now runs sanity checks on the use of LazyData, for
    example that a data directory is present and that
    LazyDataCompression is not specified without LazyData and has a
    documented value.  For packages with large LazyData databases
    without specifying LazyDataCompression, there is a reference to
    the code given in 'Writing R Extensions' SS1.1.6 to test the
    choice of compression (as in all the CRAN packages tested a
    non-default method was preferred).
  * R CMD build removes LazyData and LazyDataCompression fields from
    the DESCRIPTION file of packages without a data directory.
  ENCODING-RELATED CHANGES:
  * The parser now treats \Unnnnnnnn escapes larger than the upper
    limit for Unicode points (\U10FFFF) as an error as they cannot be
    represented by valid UTF-8.
    Where such escapes are used for outputting non-printable
    (including unassigned) characters, 6 hex digits are used (rather
    than 8 with leading zeros).  For clarity, braces are used, for
    example \U{0effff}.
  * The parser now looks for non-ASCII spaces on Solaris (as
    previously on most other OSes).
  * There are warnings (including from the parser) on the use of
    unpaired surrogate Unicode points such as \uD834.  (These cannot
    be converted to valid UTF-8.)
  * Functions nchar(), tolower(), toupper() and chartr() and those
    using regular expressions have more support for inputs with a
    marked Latin-1 encoding.
  * The character-classification functions used (by default) to
    replace the system iswxxxxx functions on Windows, macOS and AIX
    have been updated to Unicode 13.0.0.
    The character-width tables have been updated to include new
    assignments in Unicode 13.0.0.
  * The code for evaluating default (extended) regular expressions
    now uses the same character-classification functions as the rest
    of R (previously they differed on Windows, macOS and AIX).
  * There is a build-time option to replace the system's
    wide-character wctrans C function by tables shipped with R: use
    configure option --with-internal-towlower or (on Windows)
  - DUSE_RI18N_CASE in CFLAGS when building R.  This may be needed
    to allow tolower() and toupper() to work with Unicode characters
    beyond the Basic Multilingual Plane where not supported by system
    functions (e.g. on Solaris where it is the new default).
  * R is more careful when truncating UTF-8 and other multi-byte
    strings that are too long to be printed, passed to the system or
    libraries or placed into an internal buffer.  Truncation will no
    longer produce incomplete multibyte characters.
  DEPRECATED AND DEFUNCT:
  * Function plclust() from the package stats and
    package.dependencies(), pkgDepends(), getDepList(),
    installFoundDepends(), and vignetteDepends() from package tools
    are defunct.
  * Defunct functions checkNEWS() and readNEWS() from package tools
    and CRAN.packages() from utils have been removed.
  * R CMD config CXXCPP is defunct (it was deprecated in R 3.6.2).
  * parallel::detectCores() drops support for Irix (retired in 2013).
  * The LINPACK argument to chol.default(), chol2inv(),
    solve.default() and svd() has been defunct since R 3.1.0.  It was
    silently ignored up to R 4.0.3 but now gives an error.
  * Subsetting/indexing, such as ddd[*] or ddd$x on a DOTSXP
    (dot-dot-dot) object ddd has been disabled; it worked by accident
    only and was undocumented.
  BUG FIXES:
  * Many more C-level allocations (mainly by malloc and strdup) are
    checked for success with suitable alternative actions.
  * Bug fix for replayPlot(); this was turning off graphics engine
    display list recording if a recorded plot was replayed in the
    same session.  The impact of the bug became visible if resize the
    device after replay OR if attempted another savePlot() after
    replay (empty display list means empty screen on resize or empty
    saved plot).
  * R CMD check etc now warn when a package exports non-existing S4
    classes or methods, also in case of no "methods" presence.
    (Reported by Alex Bertram; reproducible example and patch by
    Sebastian Meyer in PR#16662.)
  * boxplot() now also accepts calls for labels such as ylab, the
    same as plot().  (Reported by Marius Hofert.)
  * The help page for xtabs() now correctly states that addNA is
    setting na.action = na.pass among others.  (Reported as PR#17770
    by Thomas Soeiro.)
  * The R CMD check &lt;pkg&gt; gives a longer and more comprehensible
    message when DESCRIPTION misses dependencies, e.g., in Imports:.
    (Thanks to the contributors of PR#17179.)
  * update.default() now calls the generic update() on the formula to
    work correctly for models with extended formulas.  (As reported
    and suggested by Neal Fultz in PR#17865.)
  * The horizontal position of leaves in a dendrogram is now correct
    also with center = FALSE.  (PR#14938, patch from Sebastian
    Meyer.)
  * all.equal.POSIXt() no longer warns about and subsequently ignores
    inconsistent "tzone" attributes, but describes the difference in
    its return value (PR#17277).  This check can be disabled _via_
    the new argument check.tzone = FALSE as suggested by Sebastian
    Meyer.
  * as.POSIXct() now populates the "tzone" attribute from its tz
    argument when x is a logical vector consisting entirely of NA
    values.
  * x[[2^31]] &lt;- v now works.  (Thanks to the report and patch by
    Suharto Anggono in PR#17330.)
  * In log-scale graphics, axis() ticks and label positions are now
    computed more carefully and symmetrically in their range,
    typically providing _more_ ticks, fulfilling wishes in PR#17936.
    The change really corresponds to an improved axisTicks() (package
    grDevices), potentially influencing grid and lattice, for
    example.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now correct to at
    least five digits where it was catastrophically wrong,
    previously.
  * sum(df) and similar "Summary"- and "Math"-group member functions
    now work for data frames df with logical columns, notably also of
    zero rows.  (Reported to R-devel by Martin "b706".)
  * unsplit() had trouble with tibbles due to unsound use of rep(NA,
    len)-indexing, which should use NA_integer_ (Reported to R-devel
    by Mario Annau.)
  * pnorm(x, log.p = TRUE) underflows to -Inf slightly later.
  * show(&lt;hidden S4 generic&gt;) prints better and without quotes for
    non-hidden S4 generics.
  * read.table() and relatives treated an "NA" column name as missing
    when check.names = FALSE PR#18007.
  * Parsing strings containing UTF-16 surrogate pairs such as
    "\uD834\uDD1E" works better on some (uncommon) platforms.
    sprintf("%X", utf8ToInt("\uD834\uDD1E")) should now give "1D11E"
    on all platforms.
  * identical(x,y) is no longer true for differing DOTSXP objects,
    fixing PR#18032.
  * str() now works correctly for DOTSXP and related exotics, even
    when these are doomed.
    Additionally, it no longer fails for lists with a class and
    "irregular" method definitions such that e.g. lapply(*) will
    necessarily fail, as currently for different igraph objects.
  * Too long lines in environment files (e.g. Renviron) no longer
    crash R. This limit has been increased to 100,000 bytes.
    (PR#18001.)
  * There is a further workaround for FreeType giving incorrect
    italic font faces with cairo-based graphics devices on macOS.
  * add_datalist(*, force = TRUE) (from package tools) now actually
    updates an existing data/datalist file for new content.  (Thanks
    to a report and patch by Sebastian Meyer in PR#18048.)
  * cut.Date() and cut.POSIXt() could produce an empty last interval
    for breaks = "months" or breaks = "years".  (Reported as PR#18053
    by Christopher Carbone.)
  * Detection of the encoding of 'regular' macOS locales such as
    en_US (which is UTF-8) had been broken by a macOS change:
    fortunately these are now rarely used with en_US.UTF-8 being
    preferred.
  * sub() and gsub(pattern, repl, x, *) now keep attributes of x such
    as names() also when pattern is NA (PR#18079).
  * Time differences ("difftime" objects) get a replacement and a
    rep() method to keep "units" consistent.  (Thanks to a report and
    patch by Nicolas Bennett in PR#18066.)
  * The \RdOpts macro, setting defaults for \Sexpr options in an Rd
    file, had been ineffective since R 2.12.0: it now works again.
    (Thanks to a report and patch by Sebastian Meyer in PR#18073.)
  * mclapply and pvec no longer accidentally terminate parallel
    processes started before by mcparallel or related calls in
    package parallel (PR#18078).
  * grep and other functions for evaluating (extended) regular
    expressions handle in Unicode also strings not explicitly flagged
    UTF-8, but flagged native when running in UTF-8 locale.
  * Fixed a crash in fifo implementation on Windows (PR#18031).
  * Binary mode in fifo on Windows is now properly detected from
    argument open (PR#15600, PR#18031).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1622808000">- The line %{__install} -m 755 -d %{_infodir}
  no longer works in TW or Factory.
  But without that line it works everywhere. So this instruction
  was commented out of the spec file.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1628596800">- CHANGES IN R 4.1.1:
  NEW FEATURES:
  * require(pkg, quietly = TRUE) is quieter and in particular does
    not warn if the package is not found.
  DEPRECATED AND DEFUNCT:
  * Use of ftp:// URIs should be regarded as deprecated, with
    on-going support confined to method = "libcurl" and not routinely
    tested.  (Nowadays no major browser supports them.)
  * The non-default method = "internal" is deprecated for http:// and
    ftp:// URIs for both download.file and url.
  * On Windows, method = "wininet" is deprecated for http://,
    https:// and ftp:// URIs for both download.file and url.  (A
    warning is only given for ftp://.)
    For ftp:// URIs the default method is now "libcurl" if available
    (which it is on CRAN builds).
    method = "wininet" remains the default for http:// and https://
    URIs but if libcurl is available, using method = "libcurl" is
    preferred.
  INSTALLATION:
  * make check now works also without a LaTeX installation.  (Thanks
    to Sebastian Meyer's PR#18103.)
  BUG FIXES:
  * make check-devel works again in an R build configured with
  - -without-recommended-packages.
  * qnbinom(p, size, mu) for large size/mu is correct now in a range
    of cases (PR#18095); similarly for the (size, prob)
    parametrization of the negative binomial.  Also qpois() and
    qbinom() are better and or faster for extreme cases.  The
    underlying C code has been modularized and is common to all four
    cases of discrete distributions.
  * gap.axis is now part of the axis() arguments which are passed
    from bxp(), and hence boxplot().  (Thanks to Martin Smith's
    report and suggestions in PR#18109.)
  * .First and .Last can again be set from the site profile.
  * seq.int(from, to, *) and seq.default(..) now work better in large
    range cases where from-to is infinite where the two boundaries
    are finite.
  * all.equal(x,y) now returns TRUE correctly also when several
    entries of abs(x) and abs(y) are close to .Machine$double.xmax,
    the largest finite numeric.
  * model.frame() now clears the object bit when removing the class
    attribute of a value via na.action (PR#18100).
  * charClass() now works with multi-character strings on Windows
    (PR#18104, fixed by Bill Dunlap).
  * encodeString() on Solaris now works again in Latin-1 encoding on
    characters represented differently in UTF-8.  Support for
    surrogate pairs on Solaris has been improved.
  * file.show() on Windows now works with non-ASCII path names
    representable in the current native encoding (PR#18132).
  * Embedded R on Windows can now find R home directory via the
    registry even when installed only for the current user
    (PR#18135).
  * pretty(x) with finite x now returns finite values also in the
    case where the extreme x values are close in size to the maximal
    representable number .Machine$double.xmax.
    Also, it's been tweaked for very small ranges and when a boundary
    is close (or equal) to zero; e.g., pretty(c(0,1e-317)) no longer
    has negative numbers, currently still warning about a very small
    range, and pretty(2^-(1024 - 2^-1/(c(24,10)))) is more accurate.
  * The error message for not finding vignette files when weaving has
    correct file sizes now. (Thanks to Sebastian Meyer's PR#18154.)
  * dnbinom(20, &lt;large&gt;, 1) now correctly gives 0, and similar cases
    are more accurate with underflow precaution.  (Reported by Francisco Vera Alcivar in PR#18072.)</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635163200">- repaired https://bugzilla.suse.com/show_bug.cgi?id=1191380
  (rpmacros now go to rpmmacrodir)
- minor clean-ups in spec file</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635768000">- CHANGES IN R 4.1.2:
  C-LEVEL FACILITIES:
  * The workaround in headers R.h and Rmath.h (using namespace std;)
    for the Oracle Developer Studio compiler is no longer needed now
    C++11 is required so has been removed.  A couple more usages of
    log() (which should have been std::log()) with an int argument
    are reported on Solaris.
  * The undocumented limit of 4095 bytes on messages from the
    S-compatibility macros PROBLEM and MESSAGE is now documented and
    longer messages will be silently truncated rather than
    potentially causing segfaults.
  * If the R_NO_SEGV_HANDLER environment variable is non-empty, the
    signal handler for SEGV/ILL/BUS signals (which offers recovery
    user interface) is not set. This allows more reliable debugging
    of crashes that involve the console.
  DEPRECATED AND DEFUNCT:
  * The legacy S-compatibility macros PROBLEM, MESSAGE, ERROR, WARN,
    WARNING, RECOVER, ... are deprecated and will be hidden in R
    4.2.0. R's native interface of Rf_error and Rf_warning has long
    been preferred.
  BUG FIXES:
  * .mapply(F, dots, .) no longer segfaults when dots is not a list
    and uses match.fun(F) as always documented; reported by Andrew
    Simmons in PR#18164.
  * hist(&lt;Date&gt;, ...) and hist(&lt;POSIXt&gt;, ...)  no longer pass
    arguments for rect() (such as col and density) to axis().
    (Thanks to Sebastian Meyer's PR#18171.)
  * \Sexpr{ch} now preserves Encoding(ch). (Thanks to report and
    patch by Jeroen Ooms in PR#18152.)
  * Setting the RNG to "Marsaglia-Multicarry" e.g., by RNGkind(), now
    warns in more places, thanks to Andr'e Gillibert's report and
    patch in PR#18168.
  * gray(numeric(), alpha=1/2) no longer segfaults, fixing PR#18183,
    reported by Till Krenz.
  * Fixed dnbinom(x, size=&lt;very_small&gt;, .., log=TRUE) regression,
    reported by Martin Morgan.
  * as.Date.POSIXlt(x) now keeps names(x), thanks to Davis Vaughan's
    report and patch in PR#18188.
  * model.response() now strips an "AsIs" class typically, thanks to
    Duncan Murdoch's report and other discussants in PR#18190.
  * try() is considerably faster in case of an error and long call,
    as e.g., from some do.call().  Thanks to Alexander Kaever's
    suggestion posted to R-devel.
  * qqline(y = &lt;object&gt;) such as y=I(.), now works, see also
    PR#18190.
  * Non-integer mgp par() settings are now handled correctly in
    axis() and mtext(), thanks to Mikael Jagan and Duncan Murdoch's
    report and suggestion in PR#18194.
  * formatC(x) returns length zero character() now, rather than ""
    when x is of length zero, as documented, thanks to Davis
    Vaughan's post to R-devel.
  * removeSource(fn) now retains (other) attributes(fn).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1647000000">- CHANGES IN R 4.1.3:
  NEW FEATURES:
  * The default version of Bioconductor has been changed to 3.14.
    (This is used by setRepositories and the menus in GUIs.)
  UTILITIES:
  * R CMD check --as-cran has a workaround for a bug in versions of
    file up to at least 5.41 which mis-identify DBF files last
    changed in 2022 as executables.
  C-LEVEL FACILITIES:
  * The legacy S-compatibility macros SINGLE_* in R_ext/Constants.h
    (included by R.h) are deprecated and will be removed in R 4.2.0.
  BUG FIXES:
  * Initialization of self-starting nls() models with initialization
    functions following the pre-R-4.1.0 API (without the ...
    argument) works again for now, with a deprecation warning.
  * Fixed quoting of ~autodetect~ in Java setting defaults to avoid
    inadvertent user lookup due to leading ~, reported in PR#18231 by
    Harold Gutch.
  * substr(., start, stop) &lt;- v now treats _negative_ stop values
    correctly.  Reported with a patch in PR#18228 by Brodie Gaslam.
  * Subscripting an array x without dimnames by a
    length(dim(x))-column character matrix gave "random" non-sense,
    now an error; reported in PR#18244 by Mikael Jagan.
  * ...names() now matches names(list(...)) closely, fixing PR#18247.
  * all.equal(*, scale = s) now works as intended when length(s) &gt; 1,
    partly thanks to Michael Chirico's PR#18272.
  * print(x) for long vectors x now also works for named atomic
    vectors or lists and prints the correct number when reaching the
    getOption("max.print") limit; partly thanks to a report and
    proposal by Hugh Parsonage to the R-devel list.
  * all.equal(&lt;selfStart&gt;, *) no longer signals a deprecation
    warning.
  * reformulate(*, response=r) gives a helpful error message now when
    length(r) &gt; 1, thanks to Bill Dunlap's PR#18281.
  * Modifying globalCallingHandlers inside withCallingHandlers() now
    works or fails correctly, thanks to Henrik Bengtsson's PR#18257.
  * hist(&lt;Date&gt;, breaks = "days") and hist(&lt;POSIXt&gt;, breaks = "secs")
    no longer fail for inputs of length 1.
  * qbeta(.001, .9, .009) and similar cases now converge correctly
    thanks to Ben Bolker's report in PR#17746.
  * window(x, start, end) no longer wrongly signals "'start' cannot
    be after 'end'", fixing PR#17527 and PR#18291.
  * data() now checks that its (rarely used) list argument is a
    character vector - a couple of packages passed other types and
    gave incorrect results.
  * which() now checks its arr.ind argument is TRUE rather coercing
    to logical and taking the first element - which gave incorrect
    results in package code.
  * model.weights() and model.offset() more carefully extract their
    model components, thanks to Ben Bolker and Tim Taylor's R-devel
    post.
  * list.files(recursive = TRUE) now shows all broken symlinks
    (previously, some of them may have been omitted, PR#18296).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1650628800">- CHANGES IN R 4.2.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * The formula method of aggregate() now matches the generic in
    naming its first argument x (resolving PR#18299 by Thomas
    Soeiro).
    This means that calling aggregate() with a formula as a named
    first argument requires name formula in earlier versions of R and
    name x now, so portable code should not name the argument (code
    in many packages did).
  * Calling &amp;&amp; or || with either argument of length greater than one
    now gives a warning (which it is intended will become an error).
  * Calling if() or while() with a condition of length greater than
    one gives an error rather than a warning.  Consequently,
    environment variable _R_CHECK_LENGTH_1_CONDITION_ no longer has
    any effect.
  * Windows users should consult the WINDOWS section below for some
    profound changes including
  * Support for 32-bit builds has been dropped.
  * UTF-8 locales are used where available.
  * The default locations for the R installation and personal
    library folder have been changed.
    Thanks to Tomas Kalibera for months of work on the Windows port
    for this release.
  NEW FEATURES:
  * matrix(x, n, m) now warns in more cases where length(x) differs
    from n * m, as suggested by Abby Spurdle and Wolfgang Huber in
    Feb 2021 on the R-devel mailing list.
    This warning can be turned into an error by setting environment
    variable _R_CHECK_MATRIX_DATA_ to TRUE: R CMD check --as-cran
    does so unless it is already set.
  * Function file_test() in package utils gains tests for symlinks,
    readability and writability.
  * capabilities("libxml") is now false.
    The description of capabilities("http/ftp") now reflects that it
    refers to the default method, no longer the internal one.
  * simplify2array() gains an except argument for controlling the
    exceptions used by sapply().
  * Environment variables R_LIBS_USER and R_LIBS_SITE are both now
    set to the R system default if unset or empty, and can be set to
    NULL to indicate an empty list of user or site library
    directories.
  * The warning for axis()(-like) calls in cases of relatively small
    ranges (typically in log-scale situations) is slightly improved
    _and_ suppressed from explicit calls to .axisPars() as has always
    been the intention.
  * The contrasts setter function `contrasts&lt;-` gains an explicit
    default how.many = NULL rather than just using missing(how.many).
  * grid.pretty() gains a new optional argument n = 5.
  * There is a new function .pretty() with option bounds as a
    technical-utility version of pretty().  It and pretty() gain a
    new argument f.min with a better than back-compatible default.
  * Function grDevices::axisTicks() and related functions such as
    graphics::axis() work better, notably for the log scale; partly
    because of the pretty() improvements, but also because care is
    taken e.g., when ylim is finite but diff(ylim) is infinite.
  * nclass.FD() gains a digits option.
  * The R Mathlib internal C function bd0() (called indirectly from a
    dozen probability density and distribution functions such as
    dpois(), dbinom(), dgamma(), pgamma() _etc_) has been
    complemented by a more sophisticated and (mostly) more accurate C
    function ebd0(), currently called only by internal dpois_raw()
    improving accuracy for R level dpois() and potentially others
    calling it such as dnbinom(), dgamma() or pgamma().  (Thanks to
    Morten Welinder's PR#15628.)
  * write.ftable() gains sep = " " argument as suggested by Thomas
    Soeiro.
  * The names of the locale categories supported by R's
    Sys.getlocale() and Sys.setlocale() are now provided by variable
    .LC.categories in the base namespace.
  * The Date and POSIXt methods for hist() and the histogram method
    for plot() now also use the new default col = "lightgray" in
    consistency with the corresponding change to hist()'s default for
    R 4.0.0.
  * hist.default() gains new fuzz argument, and the histogram plot
    method no longer uses fractional axis ticks when displaying
    counts ("Frequency").
  * mapply() and hence Map() now also obey the "max-or-0-if-any"
    recycling rule, such that, e.g., Map(`+`, 1:3, 1[0]) is valid
    now.
  * as.character(&lt;obj&gt;) for "hexmode" or "octmode" objects now
    fulfils the important basic rule as.character(x)[j] ===
    as.character(x[j]).
  * The set utility functions, notably intersect() have been tweaked
    to be more consistent and symmetric in their two set arguments,
    also preserving a common mode.
  * substr(ch, start,end) &lt;- new now e.g., preserves names(ch); ditto
    for substring(), thanks to a patch from Brodie Gaslam.
  * plot(&lt;lm&gt;) gains a extend.ylim.f argument, in partial response to
    PR#15285; further PR#17784 is fixed thanks to several
    contributors and a patch by Elin Waring.  The Cook's dist
    contours get customizable via cook.col and cook.lty with a
    different default color and their legend is nicer by default and
    customizable via cook.legendChanges.
  * Attempting to subset an object that is not subsettable now
    signals an error of class notSubsettableError. The
    non-subsettable object is contained in the object field of the
    error condition.
  * Subscript-out-of-bounds errors are now signaled as errors of
    class subscriptOutOfBoundsError.
  * Stack-overflow errors are now signaled as errors inheriting from
    class stackOverflowError. See ?stackOverflowError for more
    details.
  * New partly experimental Sys.setLanguage() utility, solving the
    main problem of PR#18055.
  * gettext() and gettextf() get a new option trim = TRUE which when
    set to false allows translations for strings such as "Execution
    halted\n" typical for C code.
  * An experimental implementation of hash tables is now available.
    See ?hashtab for more details.
  * identical() gains a extptr.as.ref argument for requesting that
    external pointer objects be compared as reference objects.
  * reorder() gets an argument decreasing which it passes to sort()
    for level creation; based on the wish and patch by Thomas Soeiro
    in PR#18243.
  * as.vector() gains a data.frame method which returns a simple
    named list, also clearing a long standing 'FIXME' to enable
    as.vector(&lt;data.frame&gt;, mode="list").  This breaks code relying
    on as.vector(&lt;data.frame&gt;) to return the unchanged data frame.
  * legend() is now vectorized for arguments cex, x.intersp, and
    text.width.  The latter can now also be specified as a vector
    (one element for each column of the legend) or as NA for
    computing a proper column wise maximum value of strwidth(legend).
    The argument y.intersp can be specified as a vector with one
    entry for each row of the legend.
    legend() also gains new arguments title.cex and title.font.
    Thanks to Swetlana Herbrandt.
  * Deparsing no longer remaps attribute names dim, dimnames, levels,
    names and tsp to historical S-compatible names (which structure()
    maps back).
  * sample() and sample.int() have additional sanity checks on their
    size and n arguments.
    all.equal.numeric() gains a sanity check on its tolerance
    argument - calling all.equal(a, b, c) for three numeric vectors
    is a surprisingly common error.
    mean(na.rm =), rank(na.last =), barplot(legend.text =),
    boxplot(), contour(drawlabels =), polygon(border =) and
    methods::is(class2 =) have more robust sanity checks on their
    arguments.
    R CMD Rd2pdf (used by R CMD check) has a more robust sanity check
    on the format of \alias{} commands.
  * psigamma(x, deriv) for negative x now also works for deriv = 4
    and 5; their underlying C level dpsifn() is documented in
    'Writing R Extensions'.
  * The HTML help system now uses HTML5 (wish of PR#18149).
  * ks.test() now provides exact p-values also with ties and MC
    p-values in the two-sample (Smirnov) case.  By Torsten Hothorn.
  * ks.test() gains a formula interface, with y ~ 1 for the
    one-sample (Kolmogorov) test and y ~ group for the two-sample
    (Smirnov) test.  Contributed by Torsten Hothorn.
  * The return value from ks.test() now has class c("ks.test",
    "htest") - packages using try() need to take care to use
    inherits() and not == on the class.
  * New functions psmirnov(), qsmirnov() and rsmirnov() in package
    stats implementing the asymptotic and exact distributions of the
    two-sample Smirnov statistic.
  * iconv() now allows sub = "c99" to use C99-style escapes for UTF-8
    inputs which cannot be converted to encoding to.
  * In a forward pipe |&gt; expression it is now possible to use a named
    argument with the placeholder _ in the rhs call to specify where
    the lhs is to be inserted.  The placeholder can only appear once
    on the rhs.
  * The included LAPACK sources have been updated to version 3.10.0,
    except for the four Fortran 77 routines which 3.10.0 has
    re-implemented in Fortran 90 (where the older versions have been
    retained as the R build process does not support Fortran 90).
  * path.expand() and most other uses of tilde expansion now warn if
    a path would be too long if expanded.  (An exception is
    file.exists(), which silently returns false.)
  * trunc(&lt;Date&gt;, *) now supports units = "months" or "years" for
    consistency with the POSIXt method, thanks to Dirk Eddelbuettel's
    proposal in PR#18099.
  * list2DF() now checks that its arguments are of the same length,
    rather than use recycling.
  * The HTML help system has several new features: LaTeX-like math
    can be typeset using either KaTeX or MathJax, usage and example
    code is highlighted using Prism, and for dynamic help the output
    of examples and demos can be shown within the browser if the
    knitr package is installed. These features can be disabled by
    setting the environment variable _R_HELP_ENABLE_ENHANCED_HTML_ to
    a false value.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 15
    and so packages that provide graphics devices should be
    reinstalled.
  * The grid package now allows the user to specify a "vector" of
    pattern fills.  The fill argument to gpar() accepts a list of
    gradients and/or patterns and the functions linearGradient(),
    radialGradient(), and pattern() have a new group argument.
    Points grobs (data symbols) can now also have a pattern fill.
    The grobCoords() function now returns a more informative and
    complex result.
  * The grid package has new functions for drawing isolated groups:
    grid.group(), grid.define(), and grid.use().  These functions add
    compositing operators and affine transformations to R's graphics
    capabilities.
    The grid package also has new functions for stroking and filling
    paths: grid.stroke(), grid.fill(), and grid.fillStroke().
    A new function as.path() allows the user to specify the fill rule
    for a path that is to be used for clipping, stroking, or filling;
    available options are "winding" and "evenodd".  A new function
    as.mask() allows the user to specify the type of a mask;
    available options are "alpha" and "luminance".
    These new features are only supported so far (at most) on the
    Cairo-based graphics devices and on the pdf() device.
  * dev.capabilities() reports on device support for the new
    features.
  * par() now warns about unnamed non-character arguments to prevent
    misuse such as {usr &lt;- par("usr"); par(usr)}.
  INSTALLATION:
  * Facilities for accessing ftp:// sites are no longer tested
    (except _pro tem_ for curlGetHeaders()) as modern browsers have
    removed support.
  * R can now be built with DEFS = -DSTRICT_R_HEADERS .
  PACKAGE INSTALLATION:
  * R CMD INSTALL no longer tangles vignettes. This completes an R
    CMD build change in R 3.0.0 and affects packages built before R
    3.0.2. Such packages should be re-made with R CMD build to have
    the tangled R code of vignettes shipped with the tarball.
  * USE_FC_LEN_T will become the default: this uses the correct
    prototypes for Fortran BLAS/LAPACK routines called from C/C++,
    and requires adjustment of most such calls - see 'Writing R
    Extensions' SS6.6.2.  (This has been supported since R 3.6.2.)
  * Package installation speed for packages installed with
    keep.source has been improved. This resolve the issue reported by
    Ofek Shilon in PR#18236.
  UTILITIES:
  * R CMD check can optionally report files/directories left behind
    in home, /tmp (even though TMPDIR is set) and other directories.
    See the "R Internals" manual for details.
  * R CMD check now reports byte-compilation errors during
    installation.  These are not usually fatal but may result in
    parts of the package not being byte-compiled.
  * _R_CHECK_DEPENDS_ONLY_ can be applied selectively to examples,
    tests and/or vignettes in R CMD check: see the "R Internals"
    manual.
  * _R_CHECK_SRC_MINUS_W_IMPLICIT_ now defaults to true: recent
    versions of Apple clang on macOS have made implicit function
    declarations in C into a compilation error.
  * R CMD check --as-cran makes use of the environment variable
    AUTORECONF.  See the "R Internals" manual SS8 for further details.
  * R CMD check --use-valgrind also uses valgrind when re-building
    vignettes as some non-Sweave vignettes unhelpfully comment out
    all their code when R CMD check runs vignettes.
  * Errors in re-building vignettes (unless there are LaTeX errors)
    are reported by R CMD check as ERROR rather than WARNING when
    running vignettes has been skipped (as it frequently is in CRAN
    checks and by --as-cran).
  * R CMD Rd2pdf gains a --quiet option that is used by R CMD build
    when building the PDF package manual.
  * R CMD Rd2pdf now always runs LaTeX in batch mode, consistent with
    Texinfo &gt;= 6.7. The --batch option is ignored.
  * R CMD build and R CMD check now include the Rd file name and line
    numbers in the error message of an \Sexpr evaluation failure.
  * For packages using the \doi Rd macro (now an install-time \Sexpr)
    but no other dynamic Rd content, R CMD build now produces a
    smaller tarball and is considerably faster - skipping temporary
    package installation.
  C-LEVEL FACILITIES:
  * The non-API header R_ext/R-ftp-http.h is no longer provided, as
    the entry points it covered are now all defunct.
  * A number of non-API declarations and macro definitions have been
    moved from the installed header Rinternals.h to the internal
    header Defn.h. Packages that only use entry points and
    definitions documented to be part of the API as specified in
    'Writing R Extensions' SS6 should not be affected.
  * The macro USE_RINTERNALS no longer has any effect when compiling
    package code.  Packages which also use R_NO_REMAP will need to
    ensure that the remapped names are used for calls to API
    functions that were formerly also made available as macros.
  * The deprecated legacy S-compatibility macros PROBLEM, MESSAGE,
    ERROR, WARN, WARNING, RECOVER, ... are no longer defined in
    R_exts/RS.h (included by R.h).  Replace these by calls to
    Rf_error and Rf_warning (defined in header R_ext/Error.h included
    by R.h).
    Header R_ext/RS.h no longer includes R_ext/Error.h.
  * Header R_ext/Constants.h (included by R.h) when included from C++
    now includes the C++ header cfloat rather than the C header
    float.h (now possible as C++11 is required).
  * The legacy S-compatibility macros DOUBLE_* in R_ext/Constants.h
    (included by R.h) are deprecated.
  * The deprecated S-compatibility macros SINGLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * R_Calloc, R_Free and R_Realloc are preferred to their unprefixed
    forms and error messages now use the prefix. These forms were
    introduced in R 3.4.0 and are available even when
    STRICT_R_HEADERS is defined.
  * rmultinom has been documented in 'Writing R Extensions' SS6 so is
    now part of the R API.
  * Similarly, Rtanpi, called from R level tanpi() is now part of the
    R API.
  * The long-deprecated, undocumented and non-API entry point call_R
    is no longer declared in R_ext/RS.h (included by R.h).
  * The header S.h which has been unsupported since Jan 2016 has been
    removed.  Use R.h instead.
  DEPRECATED AND DEFUNCT:
  * The (non-default and deprecated) method = "internal" for
    download.file() and url() no longer supports http:// nor ftp://
    URIs.  (It is used only for file:// URIs.)
    On Windows, download.file(method = "wininet") no longer supports
    ftp:// URIs.  (It is no longer the default method, which is
    "libcurl" and does.)
    On Windows, the deprecated method = "wininet" now gives a warning
    for http:// and https:// URIs for both download.file() and url().
    (It is no longer the default method.)
  * On Windows, the command-line option --max-mem-size and
    environment variable R_MAX_MEM_SIZE are defunct.  The memory
    allocation limit was important for 32-bit builds, but these are
    no longer supported.
  * default.stringsAsFactors() is now formally deprecated, where that
    was only mentioned on its regular help page, previously.  So it
    now gives a warning if called.
  * unix.time() is defunct now; it had been deprecated since R 3.4.0.
  BUG FIXES:
  * Setting digits = 0 in format(), print.default() (and hence
    typically print()) or options() is again invalid.  Its behaviour
    was platform-dependent, and it is unclear what "zero significant
    digits" should mean (PR#18098).
  * Messages from C code in the cairo section of package grDevices
    are now also offered for translation, thanks to Michael Chirico's
    PR#18123.
  * mean(x) with finite x now is finite also without "long.double"
    capability.
  * R CMD Rd2pdf no longer leaves an empty build directory behind
    when it aborts due to an already existing output file.  (Thanks
    to Sebastian Meyer's PR#18141.)
  * density(x, weights = w, na.rm = TRUE) when anyNA(x) is true, now
    removes weights "in parallel" to x, fixing PR#18151, reported by
    Matthias Gondan.  Additionally, it gets a subdensity option.
  * Conversion of \Sexpr[]{&lt;expR&gt;} to LaTeX or HTML no longer
    produces long blocks of empty lines when &lt;expR&gt; itself contains
    several lines all producing empty output.  Thanks to a report and
    patch by Ivan Krylov posted to R-devel.
  * R CMD build no longer fails if a package vignette uses child
    documents and inst/doc exists.  (Thanks to Sebastian Meyer's
    PR#18156.)
  * When an R documentation ('help' source) file man/foo.Rd in a
    package has \donttest{..} examples with a syntax error, it is now
    signalled as ERROR and with correct line numbers relating to the
  * -Ex.R file, thanks to Duncan Murdoch and Sebastian Meyer's
    reports and patch proposals in PR#17501.
  * Improved determination of the correct translation domain in
    non-base packages, addressing the combination of PR#18092 and
    PR#17998 (#c6) with reports and _augmented_ patch #2904 by
    Suharto Anggono.
    Note that "R-base" is no longer the default domain e.g., for
    top-level calls to gettext(); rather translation needs explicit
    domain = * specification in such cases.
  * identical(attrib.as.set=FALSE) now works correctly with data
    frames with default row names (Thanks to Charlie Gao's PR#18179).
  * txtProgressBar() now enforces a non-zero width for argument char,
    without which no progress can be visible.
  * dimnames(table(d)) is more consistent in the case where d is a
    list with a single component, thanks to Thomas Soeiro's report to
    R-devel.
    Further, table(d1, d2) now gives an error when d1 and d2 are data
    frames as suggested by Thomas in PR#18224.
  * Fix for drawing semi-transparent lines and fills on the native
    Windows graphics device (PR#18219 and PR#16694).  Thanks to Nick
    Ray for helpful diagnosis on Bugzilla.
  * The deparser now wraps sub-expressions such as if(A) ..  with
    parentheses when needed; thanks to Duncan Murdoch's PR#18232 and
    Lionel Henry's patches there.
  * remove.packages() no longer tries to uninstall Priority: base
    packages, thanks to a report and suggestions by Colin Fay in
    PR#18227.
  * win.metafile() now has xpinch and ypinch arguments so that the
    user can override Windows' (potentially wrong) guess at device
    dimensions.
  * x[i] and x[[i]] for non-integer i should now behave in all cases
    as always documented: the index used is equivalent to
    as.integer(i) unless that would overflow where trunc(i) is used
    instead; thanks to Suharto Anggono's report and patch proposals
    in PR#17977.
  * asOneSidedFormula() now associates the resulting formula with the
    global environment rather than the evaluation environment created
    for the call.
  * &lt;bibentry&gt;$name now matches the field name case-insensitively,
    consistent with bibentry() creation and the replacement method.
  * cbind() failed to detect some length mismatches with a mixture of
    time-series and non-time-series inputs.
  * The default LaTeX style file Sweave.sty used by the RweaveLatex
    driver no longer loads the obsolete ae package; thanks to a
    report by Thomas Soeiro in PR#18271.  Furthermore, it now skips
    \usepackage[T1]{fontenc} for engines other than pdfTeX (if
    detected) or if the new [nofontenc] option is used.
  * smooth.spline() now stores its logical cv argument more safely,
    fixing a rare bug when printing, and also stores n.
  * smooth.spline(x,y,*) now computes the cv.crit statistic
    correctly, also when is.unsorted(x), fixing PR#18294.
  * The data.frame method of rbind() now warns when binding
    not-wholly-recycling vectors, by analogy to the default method
    (for matrices).
  * setAs() finds the correct class for name to when multiple
    packages define a class with that name. Thanks to Gabor Csardi
    for the report.
  * Fix for detaching a package when two classes of the same name are
    present in method signatures for the same generic. Thanks to
    Gabor Csardi for the report.
  * match.arg("", c("", "a", "B")) gives a better error message, in
    part from PR#17959, thanks to Elin Waring.
  * R CMD Sweave --clean no longer removes pre-existing files or
    subdirectories (PR#18242).
  * The quartz() device no longer splits polylines into subpaths.
    That has caused narrowly-spaced lines with many points to always
    look solid even when dashed line type was used due to dash phase
    restarts.
  * Deparsing constructs such as quote(1 + `!`(2) + 3) works again as
    before R 3.5.0, thanks to the report and patch in PR#18284 by
    Suharto Anggono.
  * as.list(f) for a factor f now keeps names(f), fixing PR#18309.
  * qbeta(.001, .9, .009) and analogous qf() calls now return a
    correct value instead of NaN or wrongly 1, all with a warning;
    thanks to the report by Ludger Goeminne in PR#18302.
  * plot.lm() failed to produce the plot of residuals vs.  factor
    levels (i.e., which=5 when leverages are constant) for models
    with character predictors (PR#17840).
  * interaction.plot(..., xtick = TRUE) misplaced the x-axis line
    (PR#18305).
  * Not strictly fixing a bug, format()ing and print()ing of
    non-finite Date and POSIXt values NaN and +/-Inf no longer show
    as NA but the respective string, e.g., Inf, for consistency with
    numeric vector's behaviour, fulfilling the wish of PR#18308.
  * R CMD check no longer runs test scripts generated from
    corresponding .Rin files twice and now signals an ERROR if
    processing an .Rin script fails.
  * tools::Rd2txt() used for plain-text help pages now renders \hrefs
    (if tools::Rd2txt_options(showURLs = TRUE)) and \urls with
    percent-encoding and standards-compliant delimiting style (angle
    brackets and no URL: prefix).  \email is now rendered with a
    mailto: prefix.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1655985600">- CHANGES IN R 4.2.1:
  NEW FEATURES:
  * New function utils::findCRANmirror() to find out if a CRAN mirror
    has been selected, otherwise fallback to the main site.  This
    behaves in the same way as tools::CRAN_package_db() and is
    intended for packages wishing to access CRAN for purposes other
    than installing packages.
    The need for this was shown by a day when the main CRAN website
    was offline and a dozen or so packages which had its URL
    hardcoded failed their checks.
  INSTALLATION on a UNIX-ALIKE:
  * The libraries searched for by --with-blas (without a value) now
    include BLIS (after OpenBLAS but before ATLAS).  And on macOS,
    the Accelerate framework (after ATLAS).  (This is patterned after
    the AX_BLAS macro from the Autoconf Archive.)
  * The included LAPACK sources have been updated to 3.10.1.
  UTILITIES:
  * The (full path to) the command tidy to be used for HTML
    validation can be set by environment variable R_TIDYCMD.
  * Setting environment variable _R_CHECK_RD_VALIDATE_RD2HTML_ to a
    false value will override R CMD check --as-cran and turn off HTML
    validation.  This provides a way to circumvent a problematic
    tidy.
    The 2006 version that ships with macOS is always skipped.
  C-LEVEL FACILITIES:
  * The undocumented legacy declarations of Sint, Sfloat, SINT_MAX
    and SINT_MIN in header R.h are deprecated.
  BUG FIXES:
  * fisher.test(d) no longer segfaults for "large" d; fixing PR#18336
    by preventing/detecting an integer overflow reliably.
  * tar(., files=*) now produces correctly the warning about invalid
    uid or gid of files, fixing PR#18344, reported by Martin Morgan.
  * tk_choose.files() with multi = FALSE misbehaved on paths
    containing spaces (PR#18334) (regression introduced in R 4.0.0).
  * sort(x, partial = ind, *) now works correctly notably for the
    non-default na.last = FALSE or TRUE, fixing PR#18335 reported by
    James Edwards.
  * Environment variable _R_CHECK_XREFS_REPOSITORIES_ is only used
    for checking .Rd cross-references in R CMD check (as documented)
    and not for other uses looking for a CRAN mirror.
  * The search for a CRAN mirror when checking packages now uses
    getOption("repos") if that specifies a CRAN mirror, even when it
    does not also specify all three Bioconductor repositories (as was
    previously required).
  * The HTML code generated by tools::Rd2HTML() has been improved to
    pass tidy 5.8.0.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1667217600">- CHANGES IN R 4.2.2:
  NEW FEATURES:
  * tools::Rdiff(useDiff = TRUE) checks for the presence of an
    external diff command and switches to useDiff = FALSE if none is
    found.  This allows R CMD Rdiff to always work.
  * On Windows, environment variable R_LIBCURL_SSL_REVOKE_BEST_EFFORT
    can be used to switch to only 'best-effort' SSL certificate
    revocation checks with the default "libcurl" download method.
    This reduces security, but may be needed for downloads to work
    with MITM proxies (PR#18379).
  * (macOS) The run-time check for libraries from XQuartz for X11 and
    Tcl/Tk no longer uses otool from the Apple Developer Tools
    (PR#18400).
  * The LaTeX style for producing the PDF manuals, Rd.sty, now loads
    the standard amsmath, amsfonts and amssymb packages for greater
    coverage of math commands in the Rd \eqn and \deqn macros.  The
    \mathscr LaTeX command is also provided (via the mathrsfs
    package, if available, or the amsfonts bundle otherwise),
    fulfilling the wish of PR#18398.
  * (Windows) The default format of readClipboard() and
    writeClipboard() has been changed to 13 (CF_UNICODETEXT).
  INSTALLATION on a UNIX-ALIKE:
  * The PDF manuals (if built) can be compacted by the new target
    make compact-pdf (at the top level or in directory doc/manual).
  * There is now configure support for LLVM clang 15 on Linux, which
    defaults to position-independent (PIE) executables whereas
    gfortran does not.
  * Many small changes to ease compilation (and suppress warnings)
    with LLVM clang 15.
  BUG FIXES:
  * Rscript -e would fail if stdin were closed (Reported by Henrik
    Bengtsson.)
  * qt(*, log.p=TRUE) in outer tails no longer produces NaN in its
    final steps, thus fixing PR#18360.
  * tools::Rd2latex() now escapes hashes and ampersands when writing
    URLs, fixing LaTeX errors with such URLs in \tabular.
  * When isGeneric(f, fdef=*) is used with mismatching names, the
    warning is better understandable; reported (with fix) in PR#18370
    by Gabe Becker.
  * poly(x, n) now works again (and is now documented) when x is a
    "Date" or "POSIXct" object, or of another class while fulfilling
    mode(x) == "numeric".  This also enables poly(x, *, raw=TRUE) for
    such variables.  Reported by Michael Chirico to R-devel.
  * write.table(), write.csv() and write.csv2() restore their
    numerical precision (internal equivalent of digits = 15) after an
    interrupt (PR#18384).
  * One can now read also byte FF from a clipboard connection
    (PR#18385).
  * source("") and source(character()) now give more helpful error
    messages.
  * R CMD check --as-cran set _R_CHECK_TIMINGS_ too late to have the
    intended effect.
  * as.POSIXlt(x) now also works with very large dates x, fixing
    PR#18401 reported by Hannes M"uhleisen.
  * Files can now be extracted even from very large zip archives
    (PR#18390, thanks to Martin Jakt).
  * Non-finite objects of class "POSIXlt" are now correctly coerced
    to classes "Date" and "POSIXct"; following up on the extension to
    format() them correctly.
  * Added methods for is.finite(), is.infinite() and is.nan() for
    "POSIXlt" date-time objects.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1678881600">- CHANGES IN R 4.2.3:
  C-LEVEL FACILITIES:
  * The definition of DL_FUNC in R_ext/Rdynload.h has been changed to
    be fully C-compliant.  This means that functions loaded _via_ for
    example R_GetCCallable need to be cast to an appropriate type if
    they have any arguments.
  * .Machine has a new element sizeof.time_t to identify old systems
    with a 32-bit type and hence a limited range of date-times (and
    limited support for dates millions of years from present).
  PACKAGE INSTALLATION:
  * (Windows) The default C++ standard had accidentally been left at
    C++11 when it was changed to C++14 on Unix.
  BUG FIXES:
  * As "POSIXlt" objects may be "partially filled" and their list
    components meant to be recycled, length() now is the length of
    the longest component.
  * as.POSIXlt.Date() could underflow for dates in the far past (more
    than half a million years BCE).
  * as.Date.POSIXlt(x) would return "1970-01-01" instead of NA in R
    4.2.2, e.g., for
    x &lt;- as.POSIXlt(c("2019-01-30","2001-1-1"))
    x$mon &lt;- c(0L, NA); as.Date(x)
  * R CMD check failed to apply enabled _R_CHECK_SUGGESTS_ONLY_ to
    examples and vignettes (regression in R 4.2.0).
  * R CMD check did not re-build vignettes in separate processes by
    default (regression in R 4.2.0).
  * Running examples from HTML documentation now restores previous
    knitr settings and options (PR#18420).
  * Quartz: fonts are now located using Core Graphics API instead of
    deprecated ATS which is no longer supported in the macOS 13 SDK
    (PR#18426).  This also addresses an issue where the currently
    used font in the Quartz device context was not correctly
    retained.
  * (Windows) Math symbols in text drawing functions are again
    rendered correctly (PR#18440).  This fixes a regression in R
    4.2.1 caused by a fix in PR#18382 which uncovered an issue in
    GraphApp due to which the symbol charset was not used with TT
    Symbol font face.
  * (Windows) Installing a package with a src/Makefile.{win,ucrt}
    file includes ~/.R/Makevars.win64 in the search for user
    makevars, as documented in "R Installation and Administration"
    and done for packages with a src/Makevars.{win,ucrt} file.
  * format(&lt;POSIXlt_w/_unbalanced_sec&gt;, "....%OS&lt;n&gt;") with n &gt; 0 no
    longer accidentally uses the unbalanced seconds, thanks to
    Suharto Anggono's report (including patch) in PR#18448.
  * solve.default(a, b) works around issues with some versions of
    LAPACK when a contains NA or NaN values.
  * When UseMethod() cannot dispatch, it no longer segfaults
    producing the error message in case of a long class(), thanks to
    Joris Vankerschaver's report (including patch) in PR#18447.
  * When example(foo, ..) produces graphics on an interactive device
    it needs to open itself, it now leaves devAskNewPage() unchanged
    even when it was FALSE, thus fixing a 14 years old '&lt;FIXME&gt;'.
  * packageDescription() again catches errors from encoding
    conversions. This also fixes broken packageVersion() in C locale
    on systems where iconv does not support transliteration.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1681128000">- add patch to build with libcurl &gt;= 8</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1682078400">- CHANGES IN R 4.3.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Calling &amp;&amp; or || with LHS or (if evaluated) RHS of length greater
    than one is now always an error, with a report of the form
    'length = 4' in coercion to 'logical(1)'
    Environment variable _R_CHECK_LENGTH_1_LOGIC2_ no longer has any
    effect.
  NEW FEATURES:
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.10.1.  (This caused some platform-dependent
    changes to package check output.)  And then to the sources from
    LAPACK version 3.11.0 (with changes only to double complex
    subroutines).
  * The included LAPACK sources have been updated to include the four
    Fortran 90 routines rather than their Fortran 77 predecessors.
    This may give some different signs in SVDs or
    eigendecompositions..  (This completes the transition to LAPACK
    3.10.x begun in R 4.2.0.)
  * The LAPACK sources have been updated to version 3.11.0.  (No new
    subroutines have been added, so this almost entirely bug fixes:
    Those fixes do affect some computations with NaNs, including R's
    NA.)
  * The parser now signals _classed_ errors, notably in case of the
    pipe operator |&gt;.  The error object and message now give line and
    column numbers, mostly as proposed and provided by Duncan Murdoch
    in PR#18328.
  * toeplitz() is now generalized for asymmetric cases, with a
    toeplitz2() variant.
  * xy.coords() and xyz.coords() and consequently, e.g., plot(x,y,
    log = "y") now signal a _classed_ warning about negative values
    of y (where log(.) is NA).  Such a warning can be specifically
    suppressed or caught otherwise.
  * Regular expression functions now check more thoroughly whether
    their inputs are valid strings (in their encoding, e.g. in
    UTF-8).
  * The performance of grep(), sub(), gsub() and strsplit() has been
    improved, particularly with perl = TRUE and fixed = TRUE.  Use of
    useBytes = TRUE for performance reasons should no longer be
    needed and is discouraged: it may lead to incorrect results.
  * apropos() gains an argument dot_internals which is used by the
    completion (help(rcompgen)) engine to also see base internals
    such as .POSIXct().
  * Support in tools::Rdiff() for comparing uncompressed PDF files is
    further reduced - see its help page.
  * qqplot(x, y, ...) gains conf.level and conf.args arguments for
    computing and plotting a confidence band for the treatment
    function transforming the distribution of x into the distribution
    of y (Switzer, 1976, _Biometrika_). Contributed by Torsten
    Hothorn.
  * Performance of package_dependencies() has been improved for cases
    when the number of dependencies is large.
  * Strings newly created by gsub(), sub() and strsplit(), when any
    of the inputs is marked as "bytes", are also marked as "bytes".
    This reduces the risk of creating invalid strings and accidental
    substitution of bytes deemed invalid.
  * Support for readLines(encoding = "bytes") has been added to allow
    processing special text files byte-by-byte, without creating
    invalid strings.
  * iconv(from = "") now takes into account any declared encoding of
    the input elements and uses it in preference to the native
    encoding.  This reduces the risk of accidental creation of
    invalid strings, particularly when different elements of the
    input have different encoding (including "bytes").
  * Package repositories in getOption("repos") are now initialized
    from the repositories file when utils is loaded (if not already
    set, e.g., in .Rprofile).  (From a report and patch proposal by
    Gabriel Becker in PR#18405.)
  * compactPDF() gets a verbose option.
  * type.convert() and hence read.table() get new option tryLogical =
    TRUE with back compatible default.  When set to false, converts
    "F" or "T" columns to character.
  * Added new unit prefixes "R" and "Q" for abbreviating
    (unrealistically large) sizes beyond 10^{27} in standard = "SI",
    thanks to Henrik Bengtsson's PR#18435.
  * as.data.frame()'s default method now also works fine with atomic
    objects inheriting from classes such as "roman", "octmode" and
    "hexmode", such fulfilling the wish of PR#18421, by Benjamin
    Feakins.
  * The as.data.frame.vector() utility now errors for wrong-length
    row.names.  It warned for almost six years, with "Will be an
    error!".
  * sessionInfo() now also contains La_version() and reports codepage
    and timezone when relevant, in both print() and toLatex() methods
    which also get new option tzone for displaying timezone
    information when locale = FALSE.
  * New function R_compiled_by() reports the C and Fortran compilers
    used to build R, if known.
  * predict(&lt;lm&gt;, newdata = *) no longer unnecessarily creates an
    offset of all 0s.
  * solve() for complex inputs now uses argument tol and by default
    checks for 'computational singularity' (as it long has done for
    numeric inputs).
  * predict(&lt;rank-deficient lm&gt;, newdata=*) now obeys a new argument
    rankdeficient, with new default "warnif", warning only if there
    are non-estimable cases in newdata.  Other options include
    rankdeficient = "NA", predicting NA for non-estimable newdata
    cases.  This addresses PR#15072 by Russ Lenth and is based on his
    original proposal and discussions in PR#16158 also by David Firth
    and Elin Waring.  Still somewhat experimental.
  * Rgui console implementation now works better with the NVDA screen
    reader when the full blinking cursor is selected.  The underlying
    improvements in cursor handling may help also other screen
    readers on Windows.
  * The drop-field control in GraphApp can now be left with the TAB
    key and all controls can be navigated in the reverse order using
    the Shift+TAB key, improving accessibility of the Rgui
    configuration editor.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now fully accurate
    (instead of to "only" minimally five digits).
  * demo(error.catching) now also shows off withWarnings() and
    tryCatchWEMs().
  * As an experimental feature the placeholder _ can now also be used
    in the rhs of a forward pipe |&gt; expression as the first argument
    in an extraction call, such as _$coef. More generally, it can be
    used as the head of a chain of extractions, such as _$coef[[2]].
  * Spaces in the environment variable used to choose the R session's
    temporary directory (TMPDIR, TMP and TEMP are tried in turn) are
    now fatal.  (On Windows the 'short path' version of the path is
    tried and used if that does not contain a space.)
  * all.equal.numeric() gets a new optional switch giveErr to return
    the numeric error as attribute.  Relatedly,
    stopifnot(all.equal&lt;some&gt;(a, b, ..)) is as "smart" now, as
    stopifnot(all.equal(....)) has been already, thus allowing
    customized all.equal&lt;Some&gt;() wrappers.
  * R on Windows is now able to work with path names longer than 260
    characters when these are enabled in the system (requires at
    least Windows 10 version 1607).  Packages should be updated to
    work with long paths as well, instead of assuming PATH_MAX to be
    the maximum length.  Custom front-ends and applications embedding
    R need to update their manifests if they wish to allow this
    feature.  See
    &lt;https://blog.r-project.org/2023/03/07/path-length-limit-on-windows&gt;
    for more information.
  * 'Object not found' and 'Missing argument' errors now give a more
    accurate error context. Patch provided by Lionel Henry in
    PR#18241.
  * The @ operator is now an S3 generic. Based on contributions by
    Tomasz Kalinowski in PR#18482.
  * New generic chooseOpsMethod() provides a mechanism for objects to
    resolve cases where two suitable methods are found for an Ops
    Group Generic. This supports experimenting with alternative
    object systems. Based on contributions by Tomasz Kalinowski in
    PR#18484.
  * inherits(x, what) now accepts values other than a simple
    character vector for argument what. A new generic, nameOfClass(),
    is called to resolve the class name from what. This supports
    experimenting with alternative object systems. Based on
    contributions by Tomasz Kalinowski in PR#18485.
  * Detection of BLAS/LAPACK in use (sessionInfo()) with FlexiBLAS
    now reports the current backend.
  * The "data.frame" method for subset() now warns about extraneous
    arguments, typically catching the use of = instead of == in the
    subset expression.
  * Calling a:b when numeric a or b is longer than one may now be
    made into an error by setting environment variable
    _R_CHECK_LENGTH_COLON_ to a true value, along the proposal in
    PR#18419 by Henrik Bengtsson.
  * density(x, weights = *) now warns if automatic bandwidth
    selection happens without using weights; new optional warnWbw may
    suppress the warning.  Prompted by Christoph Dalitz' PR#18490 and
    its discussants.
  * rm(list = *) is faster and more readable thanks to Kevin Ushey's
    PR#18492.
  * The plot.lm() function no longer produces a normal Q-Q plot for
    GLMs. Instead it plots a half-normal Q-Q plot of the absolute
    value of the standardized deviance residuals.
  * The print() method for class "summary.glm" no longer shows
    summary statistics for the deviance residuals by default.  Its
    optional argument show.residuals can be used to show them if
    required.
  * The tapply() function now accepts a data frame as its X argument,
    and allows INDEX to be a formula in that case. by.data.frame()
    similarly allows INDICES to be a formula.
  * The performance of df[j] &lt;- value (including for missing j) and
    write.table(df) has been improved for data frames df with a large
    number of columns.  (Thanks to Gabriel Becker's PR#18500,
    PR#18503 and discussants, prompted by a report from Toby Dylan
    Hocking on the R-devel mailing list.)
  * The matrix multiply operator %*% is now an S3 generic, belonging
    to new group generic matrixOps.  From Tomasz Kalinowski's
    contribution in PR#18483.
  * New function array2DF() to convert arrays to data frames,
    particularly useful for the list arrays created by tapply().
  DATES and TIMES:
  * On platforms where (non-UTC) datetimes before 1902 (or before
    1900 as with system functions on recent macOS) are guessed by
    extrapolating time zones from 1902-2037, there is a warning at
    the first use of extrapolation in a session.  (As all time zones
    post 2037 are extrapolation, we do not warn on those.)
  * (Platforms using --with-internal-tzone, including Windows and by
    default macOS). How years are printed in dates or date-times can
    be controlled by environment variable R_PAD_YEARS_BY_ZERO.  The
    default remains to pad to 4 digits by zeroes, but setting value
    no gives no padding (as used by default by glibc).
  * strftime() tries harder to determine the offset for the "%z"
    format, and succeeds on the mainstream R platforms.
  * strftime() has a limit of 2048 bytes on the string produced -
    attempting to exceed this is an error.  (Previously it silently
    truncated at 255 bytes.)
  * sessionInfo() records (and by default prints) the system time
    zone as part of the locale information.  Also, the source
    (system/internal) of the date-time conversion and printing
    functions.
  * Objects of class "POSIXlt" created in this version of R always
    have 11 components: component zone is always set, and component
    gmtoff is set for times in UTC and usually set on the (almost
    all) platforms which have C-level support, otherwise is NA.
  * There are comprehensive validity checks on the structure of
    objects of class "POSIXlt" when converting (including formatting
    and printing).  (This avoids mis-conversions of hand-crafted
    objects.)
  * There is some support for using the native date-time routines on
    macOS: this is only viable on recent versions (e.g. 12.6 and 13)
    and does get wrong some historical changes (before 1900, during
    WWII).  Use of --with-internal-tzone remains the default.
  * as.POSIXct(&lt;numeric&gt;) and as.POSIXlt(.) (without specifying
    origin) now work.  So does as.Date(&lt;numeric&gt;).
  * as.Date.POSIXct(., tz) now treats several tz values, notably
    "GMT" as equivalent to "UTC", proposed and improved by Michael
    Chirico and Joshua Ulrich in PR#17674.
  * Experimental balancePOSIXlt() utility allows using "ragged" and
    or out-of-range "POSIXlt" objects more correctly, e.g., in
    subsetting and subassignments.  Such objects are now documented.
    More experimentally, a "POSIXlt" object may have an attribute
    "balanced" indicating if it is known to be filled or fully
    balanced.
  * Functions axis.Date() and axis.POSIXct() are rewritten to gain
    better default tick locations and better default formats by using
    prettyDate(). Thanks to Swetlana Herbrandt.
  * The mapping of Windows' names for time zones to IANA's 'Olson'
    names has been updated.  When ICU is available (it is by
    default), it is used to get a mapping for the current region set
    in Windows.  This can be overridden by setting environment
    variable TZ to the desired Olson name - see OlsonNames() for
    those currently available.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 16
    and so packages that provide graphics devices should be
    reinstalled.
  * The grDevices and grid packages have new functions for rendering
    typeset glyphs, primarily: grDevices::glyphInfo() and
    grid::grid.glyph().
    Rendering of typeset glyphs is only supported so far on the
    Cairo-based graphics devices and on the pdf() and quartz()
    devices.
  * The defined behaviour for "clear" and "source" compositing
    operators (via grid::grid.group()) has been changed (to align
    better with simple interpretation of original Porter-Duff
    definitions).
  * Support for gradients, patterns, clipping paths, masks, groups,
    compositing operators, and affine transformations has been added
    to the quartz() device.
  INSTALLATION on a UNIX-ALIKE:
  * A system installation of generic LAPACK 3.10.0 or later will be
    preferred to the version in the R sources.
    configure option --with-lapack=no (equivalently --without-lapack)
    forces compilation of the internal LAPACK sources.
    If --with-lapack is not specified, a system liblapack is looked
    for and used if it reports version 3.10.0 or later and does not
    contain BLAS routines.
    Packages using LAPACK will need to be reinstalled if this changes
    to using an external library.
  * On aarch64 Linux platforms using GCC, configure now defaults to
  - fPIC (instead of -fpic), as desired in PR#18326.
  * configure now checks conversion of datetimes between POSIXlt and
    POSIXct around year 2020.  Failure (which has been seen on
    platforms missing tzdata) is fatal.
  * If configure option --with-valgrind-instrumentation is given
    value 1 or 2, option --with-system-valgrind-headers is now the
    default and ignored (with a warning).  It is highly recommended
    that the system headers are installed alongside valgrind: they
    are part of its packaging on some Linux distributions and
    packaged separately (e.g. in the valgrind-devel RPM) on others.
    configure will give a warning if they are not found.
    The system headers will be required in a future release of R to
    build with valgrind instrumentation.
  * libcurl 8.x is now accepted by configure: despite a change in
    major version number it changes neither API nor ABI.
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools43, an update of the Rtools42 toolchain.  It is
    based on gcc 12 and newer versions of MinGW-W64, binutils and
    libraries.  At this time R-devel can still be built using
    Rtools42 without changes, but when R-devel is installed via the
    installer, it will by default look for Rtools43.
  * Old make targets rsync-extsoft and 32-bit ones that are no longer
    needed have been removed.
  * Default builds (including for packages) no longer select C99.
    Thus the C standard used is the default for the compiler, which
    for the toolchain in Rtools43 is C17.  (This is consistent with
    Unix builds.)
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++17 where
    available (which it is on all currently checked platforms): if
    not C++14 or C++11 is used if available otherwise C++ is not
    supported.
  * USE_FC_LEN_T is the default: this uses the correct
    (compiler-dependent) prototypes for Fortran BLAS/LAPACK routines
    called from C/C++, and requires adjustment of many such calls -
    see 'Writing R Extensions' SS6.6.1.
  * There is initial support for C++23 as several compilers are now
    supporting -std=c++23 or -std=c++2b or similar.  As for C++20,
    there no additional configure checks for C++23 features beyond a
    check that the compiler reports a __cplusplus value greater than
    that in the C++20 standard.  C++ feature tests should be used.
  * There is support for a package to indicate the version of the C
    standard which should be used to compile it, and for the
    installing user to specify this.  In most cases R defaults to the
    C compiler's default standard which is C17 (a `bug-fix' of C11) -
    earlier versions of R or compilers may have defaulted to C99.
    Current options are:
    USE_C17 Use a standard that is at most C17.  The intention is to
    allow legacy packages to still be installed when later C
    standards become the default, including packages using new
    keywords as identifiers or with K&amp;R-style function
    declarations.  This will use C17 if available, falling back
    to C11.
    USE_C90 Use the C90 (aka C89) standard.  (As that standard did
    not require compilers to identify that version, all we can
    verify is that the compiler does not claim to be using a
    later standard.  It may accept C99 features - for example
    clang accepts // to make comments.)
    USE_C99 Use the C99 standard. This should be rarely needed - it
    avoids the few new features of C11/C17 which can be useful if
    a package assumes them if C17 is specified and they are not
    implemented.
    USE_C23 Use C23 (or in future, later).  Compiler/library support
    for C23 is still being implemented, but LLVM clang from
    15.0.0 and the upcoming GCC 13 have quite extensive support.
    These can be specified as part of the SystemRequirements field in
    the package's DESCRIPTION file or _via_ options --use-C17 and so
    on of R CMD INSTALL and R CMD SHLIB.
    For further details see "Writing R Extensions" SS1.2.5.
  * (Windows) A src/Makefile.ucrt or src/Makefile.win file is now
    included after R_HOME/etcR_ARCH/Makeconf and so no longer needs
    to include that file itself.  Installation of a package with such
    a file now uses a site Makevars file in the same way as a package
    with a src/Makevars.win file would.
  * configure is now passed crucial variables such as CC and CFLAGS
    in its environment, as many packages were not setting them (as
    documented in 'Writing R Extensions' SS1.2).
    This has most effect where configure is used to compile parts of
    the package - most often by cmake or libtool which obfuscate the
    actual compile commands used.
    Also used for configure.win and configure.ucrt on Windows.
  FORTRAN FLAGS:
  * The flag -fno-optimize-sibling-calls is no longer forced for
    gfortran 7 and later.  It should no longer be needed now using
    'hidden' character-length arguments when calling BLAS/LAPACK
    routines from C/C++ is the default even for packages.  (Unless
    perhaps packages call Fortran code from C/C++ without using R's
    headers and without allowing for these arguments.)
  C-LEVEL FACILITIES:
  * The deprecated S-compatibility macros DOUBLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * The deprecated legacy typedefs of Sint and Sfloat in header R.h
    are no longer defined, and that header no longer includes header
    limits.h from C nor climits from C++.
  * New macro CAD5R() is provided in Rinternals.h and used in a few
    places in the R sources.
  * ALTREP now supports VECSXP vectors. Contributed by Gabor Csardi
    in PR#17620.
  * The Rcomplex definition (in header R_ext/Complex.h) has been
    extended to prevent possible mis-compilation when interfacing
    with Fortran (PR#18430).  The new definition causes compiler
    warnings with static initializers such as {1, 2}, which can be
    changed to {.r=1, .i=2}.
    Using the new definition from C++ depends on compiler extensions
    supporting C features that have not been incorporated into the
    C++ standards but are available in g++ and clang++: this may
    result in C++ compiler warnings but these have been worked around
    for recent versions of common compilers (GCC, Apple/LLVM clang,
    Intel).
    It is intended to change the inclusion of header R_ext/Complex.h
    by other R headers, so C/C++ code files which make use of
    Rcomplex should include that header explicitly.
  UTILITIES:
  * R CMD check does more checking of package .Rd files, warning
    about invalid email addresses and (some) invalid URIs and noting
    empty \item labels in description lists.
  * R CMD check now also reports problems when reading package news
    in md (file NEWS.md) and (optionally) plain text (file NEWS)
    formats.
  * _R_CHECK_TIMINGS_ defaults to a value from the environment even
    for R CMD check --as-cran; this allows for exceptionally fast or
    slow platforms.
    It now applies to checking PDF and HTML versions of the manuals,
    and 'checking CRAN incoming feasibility'.
  * R CMD check can optionally (but included in --as-cran) check
    whether HTML math rendering _via_ KaTeX works for the package .Rd
    files.
  * Non-interactive debugger invocations can be trapped by setting
    the environment variable _R_CHECK_BROWSER_NONINTERACTIVE_ to a
    true value.  This is enabled by R CMD check --as-cran to detect
    the use of leftover browser() statements in the package.
  * The use of sprintf and vsprintf from C/C++ has been deprecated in
    macOS 13 and is a known security risk.  R CMD check now reports
    (on all platforms) if their use is found in compiled code:
    replace by snprintf or vsnprintf respectively. [*NB:* whether
    such calls get compiled into the package is platform-dependent.]
  * Where recorded at installation, R CMD check reports the C and
    Fortran compilers used to build R.
    It reports the OS in use (if known, as given by osVersion) as
    well as that R was built for.
    It notes if a C++ standard was specified which is older than the
    current default: many packages have used C++11 to mean 'not
    C++98' - as C++11 is the minimum supported since R 4.0.0, that
    specification can probably be removed.
  * R CMD INSTALL reports the compilers (and on macOS, the SDK) used,
    and this is copied to the output of R CMD check.
    Where a C++ standard is specified, it is reported.
  * R CMD check's 'checking compilation flags in Makevars' has been
    relaxed to accept the use of flags such as -std=f2008 in
    PKG_FFLAGS.
  * tools::buildVignettes() has a new argument skip, which is used by
    R CMD check to skip (and note) vignettes with unavailable
    \VignetteDepends (PR#18318).
  * New generic .AtNames() added to enable class-specific completions
    after @. The formerly internal function findMatches() is now
    exported, mainly for use in methods for .DollarNames() and
    .AtNames().
  DEPRECATED AND DEFUNCT:
  * default.stringsAsFactors() is defunct.
  * Calling as.data.frame.&lt;class&gt;() directly (for 12 atomic classes)
    is going to be formally deprecated, currently activated by
    setting the environment variable
    _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ to non-empty, which also
    happens in R CMD check --as-cran.
  BUG FIXES:
  * Hashed environments with sizes less than 5 can now grow.
    (Reported to R-devel by Duncan Garmonsway.)
  * as.character(&lt;Rd&gt;, deparse = TRUE) failed to re-escape curly
    braces in LaTeX-like text.  (Reported by Hadley Wickham in
    PR#18324.)
  * library() now passes its lib.loc argument when requiring Depends
    packages; reported (with fix) in PR#18331 by Mikael Jagan.
  * R CMD Stangle: improved message about 'Output' files.
  * head(x, n) and tail(x, n) now signal an error if n is not
    numeric, instead of incidentally "working" sometimes returning
    all of x.  Reported and discussed by Colin Fay, in PR#18357.
  * The "lm" method for summary() now gives the correct F-statistic
    when the model contains an offset.  Reported in PR#18008.
  * C() and `contrasts&lt;-`() now preserve factor level names when
    given a function object (as opposed a function name which did
    preserve names). Reported in PR#17616.
  * c(a = 1, 2)[[]] no longer matches 2 but rather signals a
    _classed_ error.  Reported and analysed by Davis Vaughan in
    PR#18367, a duplicate of PR#18004, by Jan Meis et al.  For
    consistency, NULL[[]] is also erroneous now.  x[[]] &lt;- v gives an
    error of the same class "MissingSubscriptError".
  * The relist() function of utils now supports NULL elements in the
    skeleton (PR#15854).
  * ordered(levels = *) (missing x) now works analogously to factor(,
    ordered=TRUE); reported (with fix) by Achim Zeileis in PR#18389.
  * User-defined Rd macro definitions can now span multiple lines,
    thanks to a patch from Duncan Murdoch. Previously, the Rd parser
    silently ignored everything after the first line.
  * Plain-text help (tools::Rd2txt()) now preserves an initial blank
    line for text following description list items.
  * tools::Rd2HTML() and tools::Rd2latex() no longer split \arguments
    and \value lists at Rd comments.
  * tools::Rd2latex() now correctly handles optional text outside
    \items of argument lists as well as bracketed text at the
    beginning of sections, e.g., \value{[NULL]}.
  * as.character(&lt;POSIXt&gt;) now behaves more in line with the methods
    for atomic vectors such as numbers, and is no longer influenced
    by options().  Ditto for as.character(&lt;Date&gt;).  The
    as.character() method gets arguments digits and OutDec with
    defaults _not_ depending on options().  Use of as.character(*,
    format = .) now warns.
  * Similarly, the as.character.hexmode() and *.octmode() methods
    also behave as good citizen methods and back compatibility option
    keepStr = TRUE.
  * The as.POSIXlt(&lt;POSIXlt&gt;) and as.POSIXct(&lt;POSIXct&gt;) default
    methods now do obey their tz argument, also in this case.
  * as.POSIXlt(&lt;Date&gt;) now does apply a tz (time zone) argument, as
    does as.POSIXct(); partly suggested by Roland Fuss on the R-devel
    mailing list.
  * as.Date.POSIXlt(x) now also works when the list components are of
    unequal length, aka "partially filled" or "ragged".
  * expand.model.frame() looked up variables in the wrong environment
    when applied to models fitted without data.  Reported in
    PR#18414.
  * time() now (also) uses the ts.eps = getOption("ts.eps") argument
    and thus by default rounds values very close to the start (or
    end) of a year.  Based on a proposal by Andre"i V. Kostyrka on
    R-help.
  * Printing of a factanal() result with just one factor and sort =
    TRUE now works regularly, fixing PR#17863 by Timothy Bates,
    thanks to the 'R Contributors' working group.
  * Printing 0-length objects of class "factor", "roman", "hexmode",
    "octmode", "person", "bibentry", or "citation" now prints
    something better, one of which fixes PR#18422, reported by
    Benjamin Feakins.
  * Sys.timezone() queries timedatectl only if systemd is loaded;
    addressing a report by Jan Gorecki in PR#17421.
  * The formula method of cor.test() had scoping problems when
    environment(formula) was not the calling environment; reported
    with a patch proposal by Mao Kobayashi in PR#18439.
  * attach() of an environment with active bindings now preserves the
    active bindings.  Reported by Kevin Ushey in PR#18425.
  * BLAS detection now works also with system-provided libraries not
    available as regular files.  This fixes detection of the
    Accelerate framework on macOS since Big Sur.  Reported by David
    Novgorodsky.
  * download.file() gives a helpful error message in case of an
    invalid download.file.method option, thanks to Colin Fay's report
    in PR#18455.
  * Sporadic crashes of Rterm when using completion have been fixed.
  * Rprof() is now more reliable.  A livelock in thread
    initialization with too short sampling interval has been fixed on
    macOS.  A deadlock in using the C runtime has been fixed on
    Windows.  A potential deadlock has been prevented on Unix.
  * Cursor placement in Rgui now works even after a fixed-width font
    is selected.
  * Mandatory options (options()) are now set on startup so that
    saving and restoring them always works (PR#18372).
  * Package installation, R CMD INSTALL or install.packages(*), now
    parses each of the &lt;pkg&gt;/R/*.R files individually instead of
    first concatenating and then parse()ing the large resulting file.
    This allows parser or syntax errors to be diagnosed with correct
    file names and line numbers, thanks to Simon Dedman's report and
    Bill Dunlap's patch in PR#17859.
    This _does_ require syntactically self contained R source files
    now, fixing another inadvertent bug.
  * predict.lm(&lt;model with offset&gt;) now finds the offset in the
    correct environment, thanks to Andr'e Gillibert's report and patch
    in PR#18456.
  * getInitial(&lt;formula&gt;) now finds the selfStart model in the
    correct environment.  (Reported by Ivan Krylov in PR#18368.)
  * Fix for possible segfault when using recently-added graphics
    features, such as gradients, clipping paths, masks, and groups
    with pdf(file=NULL).
  * class(m) &lt;- class(m) no longer changes a matrix m by adding a
    class _attribute_.
  * packageDate(pkg) now only warns once if there is no pkg.
  * When ts() creates a multivariate time series, "mts", it also
    inherits from "array" now, and is.mts() is documented _and_
    stricter.
  * Rd2txt() now preserves line breaks of \verb Rd content and from
    duplicated \cr.  The former also fixes the rendering of verbatim
    output from Rd \Sexpr in plain-text help.
  * uniroot(f, interval) should no longer wrongly converge _outside_
    the interval in some cases where abs(f(x)) == Inf for an x at the
    interval boundary, thanks to posts by Ben Bolker and Serguei
    Sokol on R-devel.
  * Vectorized alpha handling in palette functions such as in gray(),
    rainbow(), or hcl.colors() works correctly now, thanks to Achim
    Zeileis' report and patch in PR#18476.
  * Formatting and print()ing of bibentry objects has dropped the
    deprecated citation.bibtex.max argument, such that the bibtex
    argument's default for print.bibentry() depends directly on the
    citation.bibtex.max option, whereas in format.bibentry() the
    option no longer applies.
  * Attempting to use a character string naming a foreign function
    entry point in a foreign function call in a package will now
    signal an error if the packages has called R_forceSymbols to
    specify that symbols must be used.
  * An error in table() could permanently set options(warn=2)
    promoting all subsequent warnings to errors.
  * The sigma() function gave misleading results for binary GLMs.  A
    new method for objects of class "glm" returns the square root of
    the estimate of the dispersion parameter using the same
    calculation as summary.glm().
  * bs() and ns() in the (typical) case of automatic knot
    construction, when some of the supposedly inner knots coincide
    with boundary knots, now moves them inside (with a warning),
    building on PR#18442 by Ben Bolker.
  * R CMD on Windows now skips the site profile with --no-site-file
    and --vanilla even when R_PROFILE is set (PR#18512, from Kevin
    Ushey).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1686916800">- CHANGES IN R 4.3.1:
  C-LEVEL FACILITIES:
  * The C-level API version of R's integrate(), Rdqags() in Applic.h,
    now returns the correct number of integrand evaluations neval,
    fixing PR#18515 reported and diagnosed by Stephen Wade.
  * The C prototypes for LAPACK calls dspgv and dtptrs in
    R_exts/Lapack.h had one too many and one too few character length
    arguments - but this has not caused any known issues. To get the
    corrected prototypes, include
    [#]include &lt;Rconfig.h&gt; // for PR18534fixed
    [#]ifdef PR18534fixed
    [#] define usePR18534fix 1
    [#]endif
    [#]include &lt;R_exts/Lapack.h&gt;
    in your C/C++ code (PR#18534).
  INSTALLATION:
  * Many of the checks of esoteric Internet operations and those
    using unreliable external sites have been moved to a new target
    that is not run by default and primarily intended for the core
    developers.  To run them use
    cd tests; make test-Internet-dev
  BUG FIXES:
  * .S3methods(), typically called from methods(), again marks
    methods from package base as visible.
    Also, the visibility of non-base methods is again determined by
    the method's presence in search().
  * tools::Rdiff() is now more robust against invalid strings, fixing
    installation tests on Windows without Rtools installed
    (PR#18530).
  * Fix (new) bug in hcl.colors(2, *), by Achim Zeileis (PR#18523).
  * head(., &lt;illegal&gt;) and tail(..) now produce more useful "Error in
    ...." error messages, fixing PR#18362.
  * Package code syntax on Windows is checked in UTF-8 when UTF-8 is
    the native encoding.
  * na.contiguous(x) now also returns the first run, when it is at
    the beginning and there is a later one of the same length;
    reported to R-devel, including a fix, by Georgi Boshnakov.
    Further, by default, it modifies only an existing attr(*,"tsp")
    but otherwise no longer sets one.
  * chol(&lt;not pos.def&gt;, pivot = &lt;T|F&gt;) now gives a correct error or
    warning message (depending on pivot), thanks to Mikael Jagan's
    (PR#18541).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1699012800">- CHANGES IN R 4.3.2:
  NEW FEATURES:
  * The default initialization of the "repos" option from the
    repositories file at startup can be skipped by setting
    environment variable R_REPOSITORIES to NULL such that
    getOption("repos") is empty if not set elsewhere.
  * qr.X() is now an implicit S4 generic in methods.
  * iconv(to = "ASCII//TRANSLIT") is emulated using substitution on
    platforms which do not support it (notably Alpine Linux).  This
    should give a human-readable conversion in ASCII on all platforms
    (rather than NA_character_).
  * trans3d() gains options continuous and verbose addressing the
    problem of possible "wrap around" when projecting too long
    curves, as reported by Achim Zeileis in PR#18537.
  * tools::showNonASCII() has been rewritten to work better on macOS
    14 (which has a changed implementation of iconv()).
  * tiff(type = "quartz") (the default on macOS) now warns if
    compression is specified: it continues to be ignored.
  INSTALLATION on a UNIX-ALIKE:
  * There is some support for building with Intel's LLVM-based
    compilers on x86_64 Linux, such as (C) icx, (C++) ipcx and
    (Fortran) ifx from oneAPI 2023.x.y.
  * There is support for using LLVM's flang-new as the Fortran
    compiler from LLVM 16.0.x (preferably 17.0.0 or later).
  UTILITIES:
  * R CMD check reports the use of the Fortran 90 random number
    generator RANDOM_NUMBER() and the subroutines to initialize it.
    'Writing R Extensions' has example code to use R's RNGs from
    Fortran.
  BUG FIXES:
  * substr(x, n, L) &lt;- cc now works (more) correctly for multibyte
    UTF-8 strings x when L &gt; nchar(x), thanks to a report and patch
    by 'Architect 95'.
  * contrib.url(character()) now returns 0-length character() as
    documented, which also avoids spurious warnings from
    available.packages() et al. in the edge case of an empty vector
    of repository URLs.
  * readChar(., 4e8) no longer fails, thanks to Kodi Arfer's report
    (PR#18557).
  * lapply(&lt;list&gt;, as.data.frame) no longer warns falsely for some
    base vector components.
  * Communication between parent and child processes in the multicore
    part of parallel could fail on platforms that do not support an
    arbitrarily large payload in system functions read()/write() on
    pipes (seen on macOS where a restriction to INT_MAX bytes is
    documented, without doing a partial read unlike Linux). The
    payload is now split into 1Gb chunks to avoid that problem.
    (PR#18571)
  * qqplot(x,y, conf.level=.) gives better confidence bounds when
    length(x) != length(y), thanks to Alexander Ploner's report and
    patch proposal (PR#18557).
  * norm(&lt;0-length&gt;, "2") now gives zero instead of an error, as all
    the other norm types, thanks to Mikael Jagan's PR#18542.
  * Build-stage Rd macros \packageAuthor and \packageMaintainer now
    process Authors@R, fixing NA results when the package DESCRIPTION
    omits Author and Maintainer fields.
  * Formatting and printing complex numbers could give things like
    0.1683-0i because of rounding error: -0i is now replaced by +0i.
  * postscript() refused to accept a title comment containing the
    letter "W" (PR#18599).
  * isoreg(c(1,Inf)) signals an error instead of segfaulting, fixing
    PR#18603.
  * tiff(type = "Xlib") was only outputting the last page of
    multi-page plots.
  * tools::latexToUtf8() again knows about \~{n} and other letters
    with tilde, fixing a regression in R 4.3.0, and about \^{i} as an
    alternative to \^{\i} (similarly with other accents).
    Furthermore, LaTeX codes for accented I letters are now correctly
    converted, also fixing related mistakes in
    tools::encoded_text_to_latex().
  * tar(*, tar = "internal") no longer creates out-of-spec tar files
    in the very rare case of user or group names longer than 32
    bytes, fixing PR#17871 with thanks to Ivan Krylov.
  * When using the "internal" timezone datetime code, adding a
    fraction of a second no longer adds one second, fixing PR#16856
    from a patch by Ivan Krylov.
  * tools::checkRd() no longer produces spurious notes about
    "unnecessary braces" from multi-line Rd results of \Sexpr macros.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1709208000">- CHANGES IN R 4.3.3:
  NEW FEATURES:
  * iconv() now fixes up variant encoding names such as "utf8"
    case-insensitively.
  DEPRECATED AND DEFUNCT:
  * The legacy encoding = "MacRoman" is deprecated in pdf() and
    postscript(): support was incomplete in earlier versions of R.
  BUG FIXES:
  * Arguments are now properly forwarded to methods on S4 generics
    with ... in the middle of their formal arguments. This was broken
    for the case when a method introduced an argument but did not
    include ... in its own formals. Thanks to Herv'e Pag`es for the
    report PR#18538.
  * Some invalid file arguments to pictex(), postscript() and xfig()
    opened a file called NA rather than throw an error.  These
    included postscript(NULL) (which some people expected to work
    like pdf(NULL)).
  * Passing filename = NA to svg(), cairo_pdf(), cairo_ps() or the
    Cairo-based bitmap devices opened a file called NA: it now throws
    an error.
  * quartz(file = NA) opened a file called NA, including when used as
    a Quartz-based bitmap device.  It now gives an error.
  * rank(&lt;long vector&gt;) now works, fixing PR#18617, thanks to Ilia
    Kats.
  * seq.int() did not adequately check its length.out argument.
  * match(&lt;POSIXct&gt;, .) is correct again for differing time zones,
    ditto for "POSIXlt", fixing PR#18618 reported by Bastian Klein.
  * drop.terms(*, dropx = &lt;0-length&gt;) now works, fixing PR#18563 as
    proposed by Mikael Jagan.
  * drop.terms(*) keeps + offset(.) terms when it should, PR#18565,
    and drop.terms() no longer makes up a response, PR#18566, fixing
    both bugs thanks to Mikael Jagan.
  * getS3method("t", "test") no longer finds the t.test() function,
    fixing PR#18627.
  * pdf() and postscript() support for the documented Adobe encodings
    "Greek" and "Cyrilllic" was missing (although the corresponding
    Windows' codepages could be used).
  * Computations of glyph metric information for pdf() and
    postscript() did not take into account that transliteration could
    replace one character by two or more (only seen on macOS 14) and
    typically warned that the information was not known.
  * rank(x) no longer overflows during integer addition, when
    computing rank average for largish but not-yet long vector x,
    fixing PR#18630, thanks to Ilia Kats.
  * list.files() on Windows now returns also files with names longer
    that 260 bytes (the Windows limit is 260 characters).
    Previously, some file names particularly with 'East Asian'
    characters were omitted.
  * cov2cor(&lt;0 x 0&gt;) now works, fixing PR#18423 thanks to Mikael
    Jagan and Elin Waring.
  * cov2cor(&lt;negative diagonal&gt;) and similar now give one warning
    instead of two, with better wording, fixing PR#18424 thanks to
    Mikael Jagan.
  * tools:: startDynamicHelp() now ensures port is in proper range,
    fixing PR#18645.
  * pbeta(x, a,b) is correct now for x=0 or 1 in the boundary cases
    where a or b or both are 0, fixing PR#18672 thanks to Michael
    Fay.
  * pmatch(x, table) for large table, also called for data frame row
    selection, dfrm[nm, ], is now interruptible, fixing PR#18656.
  * predict(&lt;rank-deficient lm&gt;, newdata=*) fix computing of nbasis,
    see Russ Lenth's comment 29 in PR#16158.
  * Added a work-around for a bug in macOS 14.3.1 and higher which
    prevents R plots in the Quartz Cocoa device from updating on
    screen.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1713960000">- CHANGES IN R 4.4.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Startup banners, R --version, sessionInfo() and R CMD check no
    longer report (64-bit) as part of the platform as this is almost
    universal - the increasingly rare 32-bit platforms will still
    report (32-bit).
    On Windows, ditto for window titles.
  * is.atomic(NULL) now returns FALSE, as NULL is not an atomic
    vector.  Strict back-compatibility would replace is.atomic(foo)
    by (is.null(foo) || is.atomic(foo)) but should happen only
    sparingly.
  NEW FEATURES:
  * The confint() methods for "glm" and "nls" objects have been
    copied to the stats package.  Previously, they were stubs which
    called versions in package MASS. The MASS namespace is no longer
    loaded if you invoke (say) confint(glmfit).  Further, the "glm"
    method for profile() and the plot() and pairs() methods for class
    "profile" have been copied from MASS to stats.  (profile.nls()
    and plot.profile.nls() were already in stats.)
  * The confint() and profile methods for "glm" objects have gained a
    possibility to do profiling based on the Rao Score statistic in
    addition to the default Likelihood Ratio. This is controlled by a
    new test = argument.
  * The pairs() method for "profile" objects has been extended with a
    which = argument to allow plotting only a subset of the
    parameters.
  * The "glm" method for anova() computes test statistics and
    p-values by default, using a chi-squared test or an F test
    depending on whether the dispersion is fixed or free.  Test
    statistics can be suppressed by giving argument test a false
    logical value.
  * In setRepositories() the repositories can be set using their
    names via name = instead of index ind =.
  * methods() and .S3methods() gain a all.names option for the (rare)
    case where functions starting with a . should be included.
  * Serializations can now be interrupted (e.g., by Ctrl-C on a
    Unix-alike) if they take too long, e.g., from save.image(),
    thanks to suggestions by Ivan Krylov and others on R-devel.
  * New startup option --max-connections to set the maximum number of
    simultaneous connections for the session.  Defaults to 128 as
    before: allowed values up to 4096 (but resource limits may in
    practice restrict to smaller values).
  * R on Windows (since Windows 10 2004) now uses the new Segment
    Heap allocator. This may improve performance of some
    memory-intensive applications.
  * When R packages are built, typically by R CMD build &lt;pkg&gt;, the
    new --user=&lt;build_user&gt; option overrides the (internally
    determined) user name, currently Sys.info()["user"] or LOGNAME.
    This is a (modified) fulfillment of Will Landau's suggestion in
    PR#17530.
  * tools::testInstalledBasic() gets new optional arguments outDir
    and testSrcdir, e.g., allowing to use it in a &lt;builddir&gt; !=
    &lt;srcdir&gt; setup, and in standard "binary" Windows installation
  * if* a source tests/ folder is present.
  * range(&lt;DT_with_Inf&gt;, finite = TRUE) now work for objects of class
    "Date", "POSIXct", and "POSIXlt" with infinite entries,
    analogously to range.default(), as proposed by Davis Vaughan on
    R-devel.  Other range()-methods can make use of new function
    .rangeNum().
  * New .internalGenerics object complementing .S3PrimitiveGenerics,
    for documentation and low-level book-keeping.
  * grid() now invisibly returns the x- and y- coordinates at which
    the grid-lines were drawn.
  * norm(., type) now also works for complex matrices.
  * kappa(., exact = TRUE, norm = *) now works for all norms and also
    for complex matrices.  In symmetric / triangular cases, the new
    argument uplo = "U" | "L" allows the upper or lower triangular
    part to be specified.
  * memDecompress(type = "unknown") recognizes compression in the
    default 'zlib' format as used by memCompress(type = "gzip").
  * memCompress() and memDecompress() will use the libdeflate library
    (&lt;https://github.com/ebiggers/libdeflate&gt;) if installed.  This
    uses the same type of compression for type = "gzip" but is 1.5-2x
    faster than the system libz library on some common platforms: the
    speed-up may depend on the library version.
  * diff() for objects of class "Date", "POSIXct", and "POSIXlt"
    accepts a units argument passed via ....
  * Dynamic help now does a much better job of rendering package
    DESCRIPTION metadata.
  * Rprof() gains an event argument and support for elapsed (real)
    time profiling on Unix (PR#18076).
  * filled.contour() gains a key.border argument.
  * tools::update_pkg_po() gets arguments pot_make and mo_make for
    _not_ re-making the corresponding files, and additionally a
    verbose argument.
  * Hexadecimal string colour specifications are now accepted in
    short form, so, for example, we can use "#123", which is
    equivalent to "#112233".
    Thanks to MikeFC for the original idea and Ella Kaye, Malcolm
    Barrett, George Stagg, and Hanne Oberman for the patch.
  * Plain-text help shows \var markup by angle brackets.
  * The new experimental primitive function declare() is intended to
    eventually allow information about R code to be communicated to
    the interpreter, compiler, and code analysis tools. The syntax
    for declarations is still being developed.
  * Functions psmirnov(), qsmirnov() and rsmirnov() in package stats
    have had argument two.sided renamed to alternative, to take into
    account that the permutation distributions of the one-sided
    statistics can be different in the case of ties.  Consequence of
    PR#18582.
  * sort() is now an implicit S4 generic in methods.
  * Formatting and printing, format(z), print(z), of complex vectors
    z no longer zap relatively small real or imaginary parts to zero,
    fixing PR#16752.  This is an API change, as it was documented
    previously to round real and imaginary parts together on purpose,
    producing nicer looking output.  As mentioned, e.g. in the PR,
    this change is compatible with many other "R-like" programming
    environments.
    We have simplified the internal code and now basically format the
    real and imaginary parts independently of each other.
  * New experimental functions Tailcall() and Exec() to support
    writing stack-space-efficient recursive functions.
  * Where characters are attempted to be plotted by pdf(),
    postscript() and xfig() which are not in the selected 8-bit
    character set (most often Latin-1) and the R session is using a
    UTF-8 locale, the warning messages will show the UTF-8 character
    rather than its bytes and one dot will be substituted per
    character rather than per byte.  (Platforms whose iconv() does
    transliteration silently plot the transliteration.)
    In a UTF-8 locale some transliterations are now done with a
    warning (e.g., dashes and Unicode minus to hyphen, ligatures are
    expanded, permille (‰) is replaced by o/oo), although the OS may
    have got there first.  These are warnings as they will continue
    to be replaced by dots in earlier versions of R.
  * The matrix multiplication functions crossprod() and tcrossprod()
    are now also primitive and S3 generic, as %*% had become in R
    4.3.0.
  * source() and example() have a new optional argument catch.aborts
    which allows continued evaluation of the R code after an error.
  * The non-Quartz tiff() devices allow additional types of
    compression if supported by the platform's libtiff library.
  * The list of base and recommended package names is now provided by
    tools::standard_package_names().
  * cairo_pdf() and cairo_ps() default to onefile = TRUE to closer
    match pdf() and postscript().
  * New option catch.script.errors provides a documented way to catch
    errors and then continue in non-interactive use.
  * L %||% R newly in base is an expressive idiom for the phrases
    if(!is.null(L)) L else R or if(is.null(L)) R else L.
  * The return value from warnings() now always inherits from
    "warnings" as documented, now also in the case of no warnings
    where it previously returned NULL.
  * as.complex("1i") now returns 0 + 1i instead of NA with a warning.
  * z &lt;- c(NA, 1i) now keeps the imaginary part Im(z[1]) == 0, no
    longer coercing to NA_complex_.  Similarly, cumsum(z) correctly
    sums real and imaginary parts separately, i.e., without
    "crosstalk" in case of NAs.
  * On Alpine Linux iconv() now maps "latin2", "latin-2", "latin9"
    and "latin-9" to encoding names the OS knows about
    (case-insensitively).
  * iconv(sub = "Unicode") now always zero-pads to four (hex) digits,
    rather than to 4 or 8.  (This seems to have become the convention
    once Unicode restricted the number of Unicode points to 2^21 - 1
    and so will never need more than 6 digits.)
  * NCOL(NULL) now returns 0 instead of 1, for consistency with
    cbind().
  * The information for the Euro glyph missing from the Adobe .afm
    files for the Courier, Helvetica and Times families has been
    copied from their URW equivalents - this will improve vertical
    centring in the pdf() and postscript() devices.
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.12.0.  The changes are almost entirely cosmetic.
  * The included LAPACK sources have been updated to version 3.12.0
    and some further double-complex routines added.
  * There are new font families for the 2014--5 URW 2.0 fonts (see
    ?pdf) which are included in recent versions of Ghostscript.
    These have font widths for most Greek glyphs and a few others
    which were missing from the original versions (whose font
    families remain available for reproducibility, although
    Ghostscript-based viewers will render using the 2.0 versions).
  * Improve the large-n efficiency of as.matrix(&lt;dist&gt;), thanks an R
    contributors effort, notably by Tim Taylor and Heather Turner,
    see PR#18660.
  * The default and numeric methods of all.equal() get a check.class
    option.
  * zapsmall() gets new optional arguments, function mFUN and min.d,
    for extra flexibility; fulfills a wish in PR#18199.  Also, it is
    now an implicit S4 generic in package methods.
  * The Rd filter for aspell() gains an ignore argument.
  * New generic function sort_by(), primarily useful for the
    data.frame method which can be used to sort rows of a data frame
    by one or more columns.
  * The icence headers for the RPC code in src/extra/xdr have been
    updated to use the GPL-compatible licence published by Oracle
    America in 2010.
  * New function pkg2HTML() in tools to create single-page HTML
    reference manuals for R packages.
  * The byte code evaluator now uses less C stack space for recursive
    calls to byte-compiled functions. It also makes more of an effort
    to avoid allocations for scalar return values.
  * New completion option backtick (disabled by default) allows
    non-syntactic completions to be wrapped in backquotes. This is
    currently only useful for Jupyter notebooks via the IRkernel
    package, and may cause problems for other backends.
  INSTALLATION:
  * The parser has been updated to work with bison 3.8.2, which is
    now used for the pre-generated parsers in gram.c, file.c, and
    gramRd.c. A few parser error messages have changed, which may
    affect code that relies on exact messages.
  INSTALLATION on a UNIX-ALIKE:
  * System valgrind headers are now required to use configure option
  - -with-valgrind-instrumentation with value 1 or 2.
  * configure will warn if it encounters a 32-bit build, as that is
    nowadays almost untested.
  * Environment variable R_SYSTEM_ABI is no longer used and so no
    longer recorded in etc/Renviron (it was not on Windows and was
    only ever used when preparing package tools).
  * If the libdeflate library and headers are available, libdeflate
    rather than libz is used to (de)compress R objects in lazy-load
    databases.  Typically tasks spend up to 5% of their time on such
    operations, although creating lazy-data databases is one of the
    exceptions.
    This can be suppressed if the library is available by the
    configure option --without-libdeflate-compression.
  * configure option --enable-lto=check has not worked reliably since
    2019 and has been removed.
  * The minimum autoconf requirement for a maintainer build has been
    increased to autoconf 2.71.
    It is intended to increase this to 2.72 for R 4.5.0: the
    distributed configure file was generated using 2.72.
  * The minimum version requirement for an external LAPACK has been
    reduced to 3.9.0.
  * No default C++ compiler is set if no C++17 compiler is detected:
    there is no longer an automatic fallback to C++14 or C++11.
    Compilers from the last five years should have sufficient
    support: for others macros CXX and CXXSTD can be set in file
    config.site to provide a fallback if needed.
    The Objective-C++ compiler now by default uses the standard
    selected by R for C++ (currently C++17) rather than the default
    standard for the C++ compiler (which on macOS is still C++98).
  INSTALLATION on macOS:
  * A new configure option --with-newAccelerate makes use of Apple's
    'new' BLAS / LAPACK interfaces in their Accelerate framework.
    Those interfaces are only available in macOS 13.3 or later, and
    building requires SDK 13.3 or later (from the Command Line Tools
    or Xcode 14.3 or later).
    By default the option uses new Accelerate for BLAS calls: to also
    use it for LAPACK use option --with-newAccelerate=lapack.  The
    later interfaces provide LAPACK 3.9.1 rather than 3.2.1: 3.9.1 is
    from 2021-04 and does not include the improved algorithms
    introduced in LAPACK 3.10.0 (including for BLAS calls).
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools44, an update of the Rtools43 toolchain.  It is
    based on GCC 13 and newer versions of MinGW-W64, binutils and
    libraries (targeting 64-bit Intel CPUs).  R-devel can no longer
    be built using Rtools43 without changes.
  * Rtools44 has experimental support for 64-bit ARM (aarch64) CPUs
    _via_ the LLVM 17 toolchain using lld, clang/flang-new and
    libc++.
  UTILITIES:
  * R CMD check notes when S4-style exports are used without
    declaring a strong dependence on package methods.
  * tools::checkRd() (used by R CMD check) detects more problems with
    \Sexpr-based dynamic content, including bad nesting of \Sexprs
    and invalid arguments.
  * tools::checkRd() now reports Rd titles and section names ending
    in a period; this is ignored by R CMD check unless environment
    variable _R_CHECK_RD_CHECKRD_MINLEVEL_ is set to -5 or smaller.
  * R CMD check now notes Rd files without an \alias, as long
    documented in 'Writing R Extensions' §1.3.1.  The check for a
    missing \description has been moved from tools::checkRd() to
    tools::checkRdContents().
  * R CMD check now visits inst/NEWS.Rd and OS-specific man
    subdirectories when checking Rd files.
  * tools::checkDocFiles() and tools::checkRdContents() now also
    check internal Rd files by default, but "specially" (ignoring
    missing documentation of arguments).
  * R CMD Rdiff gets option --useEx.
  * R CMD check now warns on non-portable uses of Fortran KIND such
    as INTEGER(KIND=4) and REAL(KIND=8).
    To see the failing lines set environment variable
    _R_CHECK_FORTRAN_KIND_DETAILS_ to a true value.
  * When checking Rd files, R CMD check now notes some of the "lost
    braces" that tools::checkRd() finds.  Typical problems are Rd
    macros missing the initial backslash (e.g., code{...}), in-text
    set notation (e.g., {1, 2}, where the braces need escaping), and
    \itemize lists with \describe-style entries of the form
    \item{label}{description}.
  * R CMD INSTALL (and hence check) will compile C++ code with
  - DR_NO_REMAP if environment variable _R_CXX_USE_NO_REMAP_ is set
    to a true value.  It is planned that this will in future become
    the default for compiling C++.
  * The new built-in Rd macro \dontdiff{} can be used to mark example
    code whose output should be ignored when comparing check output
    to reference output (tests/Examples/&lt;pkg&gt;-Ex.Rout.save).  The
    \dontdiff tag, like \donttest, is _not_ shown on the rendered
    help page, so provides a clean alternative to ##
    IGNORE_RDIFF_(BEGIN|END) comments.
  * R CMD build when there is no NAMESPACE, now uses the recommended
    exportPattern("^[^.]"), instead of exporting everything.
  * R CMD check now warns about non-ASCII characters in the NAMESPACE
    file (in addition to R files). Such packages are not portable and
    may fail to install on some platforms.
  C-LEVEL FACILITIES:
  * Headers R_ext/Applic.h and R-ext/Linpack.h used to include
    R_ext/BLAS.h although this was undocumented and unneeded by their
    documented entry points.  They no longer do so.
  * New function R_missing(), factored out from do_missing(), used to
    fix PR#18579.
  * SEXP type S4SXP has been renamed to OBJSXP to support
    experimenting with alternative object systems.  The S4SXP value
    can still be used in C code but is now deprecated.  Based on
    contributions from the R Consortium's Object-Oriented Programming
    Working Group.
  * New function pow1p(x,y) for accurate (1+x)^y.
  * mkCharLenCE was incorrectly documented to take a size_t length
    but was implemented with int (and character strings in R are
    limited to 2^31 - 1 bytes).
  DEPRECATED AND DEFUNCT:
  * data() no longer handles zipped data from long-defunct (since R
    2.13.0) --use-zip-data installations.
  * The legacy graphics devices pictex() and xfig() are now
    deprecated.  They do not support recent graphics enhancements and
    their font handling is rudimentary. The intention is to retain
    them for historical interest as long as they remain somewhat
    functional.
  * Support for encoding = "MacRoman" has been removed from the pdf()
    and postscript() devices - this was a legacy encoding supporting
    classic macOS up to 2001 and no longer has universal libiconv
    support.
  * is.R() is deprecated as no other S dialect is known to be in use
    (and this could only identify historical dialects, not future
    ones).
    Further information on calls can be obtained by setting the
    environment variable _R_DEPRECATED_IS_R_ to error which turns the
    deprecation warning into an error and so by default gives a
    traceback.  (This is done by R CMD check --as-cran.)
  * UseMethod() no longer forwards local variables assigned in the
    generic function into method call environments before evaluating
    the method body. This makes method calls behave more like
    standard function calls and makes method code easier to analyze
    correctly.
  * The twelve as.data.frame.&lt;class&gt;() methods which were deprecated
    only via _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ and in R CMD
    check --as-cran are formally deprecated now in favour of calling
    as.data.frame() or as.data.frame.vector().  The deprecation
    "check" now works also when as.data.frame() is S4 generic thanks
    to Ivan Krylov.
  * The default method for the directional comparison operators &lt;, &gt;,
    &lt;=, and &gt;= now signals an error when one of the operands is a
    language object, i.e. a symbol or a call.
  * For terms.formula(), deprecate abb and neg.out arguments
    _formally_ in addition to just documenting it.
  BUG FIXES:
  * The methods package is more robust to not being attached to the
    search path.  More work needs to be done.
  * pairwise.t.test() misbehaved when subgroups had 0 DF for
    variance, even with pool.sd = TRUE.  (PR#18594 by Jack Berry).
  * Probability distribution functions [dpq]&lt;distrib&gt;(x, *), but also
    bessel[IKJY](x, .) now consistently preserve attributes(x) when
    length(x) == 0, e.g., for a 2 x 0 matrix, thanks to Karolis
    Koncevičius' report PR#18509.
  * Group "Summary" computations such as sum(1:3, 4, na.rm = 5, NA,
    7, na.rm = LL) now give an error instead of either 17 or NN for
    LL true or false, as proposed by Ivan Krylov on the R-devel
    mailing list.  (This also means it is now an error to specify
    na.rm more than once.)
  * as.complex(x) now returns complex(real = x, imaginary = 0) for
    _all_ numerical and logical x, notably also for NA or
    NA_integer_.
  * Directories are now omitted by file.copy(, recursive = FALSE) and
    in file.append() (PR#17337).
  * gsub() and sub() are now more robust to integer overflow when
    reporting errors caused by too large input strings (PR#18346).
  * Top-level handlers are now more robust to attempts to remove a
    handler whilst handlers are running (PR#18508).
  * The handling of Alt+F4 in dialogs created on Windows using
    GraphApp has been fixed (PR#13870).
  * density() more consistently computes grid values for the
    FFT-based convolution, following Robert Schlicht's analysis and
    proposal in PR#18337, correcting density values typically by a
    factor of about 0.999.  Argument old.coords = TRUE provides back
    compatibility.
  * palette.colors() gains a name argument that defaults to FALSE
    controlling whether the vector of colours that is returned has
    names (where possible).  PR#18529.
  * tools::xgettext() no longer extracts the (non-translatable) class
    names from warningCondition and errorCondition calls.
  * S3method(&lt;gen&gt;, &lt;class&gt;, &lt;func&gt;) in the NAMESPACE file now works
    (again) when &lt;func&gt; is visible from the namespace, e.g.,
    imported, or in base.
  * getParseData(f) now also works for a function defined in the
    first of several &lt;pkg&gt;/R/*.R source files, thanks to Kirill
    Müller's report and Duncan Murdoch's patch in PR#16756.
  * Rd \Sexpr macros with nested #ifdef conditionals were not
    processed.
  * A non-blocking connection with non-default encoding (such as a
    socket) now correctly returns from readLines() after new data has
    arrived also when its EOF had been reached previously.  Thanks to
    Peter Meilstrup's report on R-devel and Ivan Krylov's report and
    patch proposal in PR#18555.
  * tools::checkRdContents() failed to detect empty argument
    descriptions when they spanned multiple lines, including those
    generated by prompt().  These cases are now noted by R CMD check.
  * Plain-text help no longer outputs spurious colons in the
    arguments list (for multi-line \item labels in the Rd source).
  * kappa() and rcond() work correctly in more cases; kappa(., norm =
    "2") now warns that it computes the 1-norm with (default) exact =
    FALSE; prompted by Mikael Jagan's quite comprehensive PR#18543.
  * Rd skeletons generated by prompt() or promptData() now use a
    dummy title (so R CMD build works).  tools::checkRdContents() has
    been updated to detect such template leftovers, including from
    promptPackage().
  * When S4 method dispatch fails because no method was found, the
    error message now includes the signature argument names; thanks
    to Michael Chirico's proposal on the R-devel list.
  * withAutoprint({ .. }) now preserves srcrefs previously lost,
    thanks to Andrew Simmons' report plus fix in PR#18572.
  * transform.data.frame() no longer adjusts names; in particular,
    untransformed variables are kept as-is, including those with
    syntactically invalid names (PR#17890).
  * The keep.source option for Rd \Sexpr blocks is no longer ignored.
  * The formula methods for t.test() and wilcox.test() now catch when
    paired is passed, addressing PR#14359; use Pair(x1, x2) ~ 1 for a
    paired test.
  * The level reported in the browser prompt was often too large. It
    now shows the number of browser contexts on the stack.
  * For cbind() and rbind(), the optional deparse.level argument is
    now properly passed to methods, thanks to Mikael Jagan's PR#18579
    and comments there.
  * Some error and warning messages for large ('long vector')
    matrix(v, nr, nc) and dim(m) &lt;- d are now correct about sizes,
    using long long formatting, fixing PR#18612 (and more) reported
    by Mikael Jagan.
  * readChar(useBytes = TRUE) now terminates strings even when the
    underlying connection uses extra spaces in the input buffer.
    This fixes problems with extra garbage seen with gzip
    connections, PR#18605.
  * Named capture in PCRE regular expressions now works also with
    more than 127 named groups (PR#18588).
  * Datetime functions are now robust against long jumps when dealing
    with internal time zone changes.  This avoids confusing warnings
    about an invalid time zone, previously triggered by turning
    warnings into errors or handling them via tryCatch (PR#17966,
    PR#17780).
  * Datetime functions now restore even an empty TZ environment
    variable after internal time zone changes (PR#17724).  This makes
    results of datetime functions with this (typically unintentional)
    setting more predictable.
  * drop.terms(*) now drops response as by default, keep.response =
    FALSE, fixing PR#18564 thanks to Mikael Jagan.
  * dummy.coef(.) now also works for lm()-models with character
    categorical predictor variables rather than factor ones, fixing
    PR#18635 reported by Jinsong Zhao.
  * formals(f) &lt;- formals(f) now also works for a function w/o
    arguments and atomic _constant_ body(f).
  * Correct as.function(&lt;invalid list&gt;, .)'s error message.
  * removeSource() is yet more thorough in finding and removing
    "srcref" and the other source references from parsed R language
    chunks, fixing PR#18638 thanks to Andrew Simmons.
  * dgeom() is more accurate now, notably when its result is very
    small, fixing PR#18642 thanks to the proposal of Morten Welinder,
    also improving other instances where C level binom_raw(x, n, ..)
    has x == 0 or x== n.
  * warning() with options(warn = 1) has improved output for
    multi-line messages.
  * axis.Date() and axis.POSIXct() now respect the par("lab") setting
    for the number of pretty() intervals.
  * Comparisons for language objects (which are based on deparsing)
    are now more careful about using accurate deparsed results
    (PR#18676).
  * Plain-text help (Rd2txt) now correctly preserves blank lines
    following single-line \dontrun code.
  * &lt;POSIXlt&gt;[*] no longer sets wrong "balanced" attribute, fixing
    PR#18681 thanks to Mikael Jagan.
  * str(&lt;classed-call&gt;) now deparses the call as expected, fixing
    PR#18684, reported by Dave Slager.
  * In Rd examples, code following the closing brace of a \dontrun,
    \dontshow or \donttest tag on the same line is no longer skipped
    when R CMD check runs the examples.
  * as.data.frame(matrix(*, ncol=0)) now gets valid names() and
    colnames(); reported by Davis Vaughan on the R-devel list.
  * Internal Mathlib function stirlerr(n) is now almost fully
    (52-bit) accurate for all n &gt;= ~5.9 and more accurate also in the
    range 1 -- 5.9.  This entails small ("after 12th decimal")
    changes in density functions, e.g., dgamma() in _some_ regions of
    their support.  The fix was partly prompted by Morten Welinder's
    PR#18640.
  * Numbers like 9876543.2 are now considered non-integer by Mathlib
    internal R_nonint(), amending original fix of PR#15734.
  * Rd comment lines no longer cause broken paragraphs in the
    rendered PDF and plain-text help. In code blocks, pure comment
    lines (starting with %) no longer produce an empty line.
  * xtabs(Freq ~ .) now consistently defaults to na.action = na.pass,
    using na.rm = FALSE (added as an argument) when summing over Freq
    (PR#17770).
  * tools::testInstalledPackage() is no longer silent about failures
    from running examples or tests and its return code no longer
    ignores failures from checking vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1718366400">- CHANGES IN R 4.4.1:
  C-LEVEL FACILITIES:
  * Functions R_atof and R_strtod declared in header R_ext/Utils.h
    are now documented in 'Writing R Extensions' and so formally part
    of the API.
  * The non-API entry points Rf_setSVector, Rf_StringFalse,
    Rf_StringTrue and Rf_isBlankString have been added to those
    reported by R CMD check.
  * The new function Rf_allocLang is now available. This provides an
    alternative to the idiom of calling Rf_allocList followed by
    SET_TYPEOF.
  UTILITIES:
  * R CMD check now reports as warnings what gfortran calls 'Fortran
    2018 deleted features', all of which have long been marked as
    'obsolescent' and some of which were deleted in Fortran 2008 or
    earlier.  Fortran compilers are no longer required to support
    these.
  BUG FIXES:
  * as.numeric(), scan(), type.convert() and other places which use
    the internal C function R_strtod now require a _non-empty_ digit
    sequence in a decimal or binary exponent.  This aligns with the
    C/POSIX standard for strtod and with ?NumericConstants.
  * as.data.frame(m, make.names=NA) now works correctly for a matrix
    m with NA's in row names.
  * The error message from &lt;POSIXlt&gt;[["hour"]] and similar now
    mentions *[[, "hour"]], as wished for in PR#17409 and proposed by
    Michael Chirico.
  * qbinom() and potentially qpois(), qnbinom(), no longer sometimes
    fail accurate inversion (of pbinom(), etc), thanks to Christopher
    Chang's report and patch in PR#18711.
  * The internal help server on Windows can again serve requests sent
    in quick succession, fixing a regression in R 4.4.0.
  * debugcall(&lt;S3Generic&gt;()) now also works when a corresponding
    S4-generic version is in the methods cache (PR#18143).
  * Package tools' toTitleCase(ch0) now returns character(0) when ch0
    is of zero length; fixing PR#18724, reported by David Hugh Jones.
  * R CMD check is no longer broken (without a check result and no
    explanation in 00check.log) for a package which declares an
    invalid VignetteBuilder in DESCRIPTION but has no vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1730376000">- CHANGES IN R 4.4.2:
  C-LEVEL FACILITIES:
  * The S-compatibility macros F77_COM and F77_COMDECL defined in
    header R_ext/RS.h are deprecated and will be removed shortly.  We
    could find no record of their use.
  BUG FIXES:
  * Mathlib function lgammacor(x) no longer warns about underflow to
    zero for large x.
  * Text widths and heights were incorrectly reported by the Quartz
    device if the drawing context didn't exist yet (typically when
    drawing off-screen to a window that is yet to appear, see
    PR#18591).
  * The Quartz device could segfault in cases where paths with spaces
    are used in the new glyph drawing API.  Thanks to Tomek
    Gieorgijewski (PR#18758).
  * On macOS in R CRAN builds, it is again possible to read
    little-endian UTF-16 text with a BOM from a connection using
    encoding="UTF-16".  Users building R from source should avoid
    using the system libiconv in macOS 14.1 and later.
  * methods' internal .requirePackage() now re-enables primitive
    method dispatch when needed; thanks to Ivan Krylov for
    demystifying CRAN package check failures on the R-devel mailing
    list.</changelog>
</package>
<package pkgid="d7ab4c90c0dd19825ada22d9284c3f151024a37bf69aac849645183ba751aea4fb5a02277089dd91c0126acca79e8ba7d079c6d8f518eb412c7e8efc0953ca57" name="R-base-debuginfo" arch="x86_64">
  <version epoch="0" ver="4.4.2" rel="51.0.2.2.sr20241103"/>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1620302400">- To get in sync with d:l:R:autoCRAN the Matrix package's split
  in -devel was reversed.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339200">- improved spec file according to comments of dimstar in
  https://build.opensuse.org/request/show/892685</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339201">- CHANGES IN R 4.1.0:
  FUTURE DIRECTIONS:
  * It is planned that the 4.1.x series will be the last to support
    32-bit Windows, with production of binary packages for that
    series continuing until early 2023.
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Data set esoph in package datasets now provides the correct
    numbers of controls; previously it had the numbers of cases added
    to these.  (Reported by Alexander Fowler in PR#17964.)
  NEW FEATURES:
  * www.omegahat.net is no longer one of the repositories known by
    default to setRepositories().  (Nowadays it only provides source
    packages and is often unavailable.)
  * Function package_dependencies() (in package tools) can now use
    different dependency types for direct and recursive dependencies.
  * The checking of the size of tarball in R CMD check --as-cran
    &lt;pkg&gt; may be tweaked via the new environment variable
    _R_CHECK_CRAN_INCOMING_TARBALL_THRESHOLD_, as suggested in
    PR#17777 by Jan Gorecki.
  * Using c() to combine a factor with other factors now gives a
    factor, an ordered factor when combining ordered factors with
    identical levels.
  * apply() gains a simplify argument to allow disabling of
    simplification of results.
  * The format() method for class "ftable" gets a new option justify.
    (Suggested by Thomas Soeiro.)
  * New ...names() utility.  (Proposed by Neal Fultz in PR#17705.)
  * type.convert() now warns when its as.is argument is not
    specified, as the help file always said it _should_.  In that
    case, the default is changed to TRUE in line with its change in
    read.table() (related to stringsAsFactor) in R 4.0.0.
  * When printing list arrays, classed objects are now shown _via_
    their format() value if this is a short enough character string,
    or by giving the first elements of their class vector and their
    length.
  * capabilities() gets new entry "Rprof" which is TRUE when R has
    been configured with the equivalent of --enable-R-profiling (as
    it is by default).  (Related to Michael Orlitzky's report
    PR#17836.)
  * str(xS4) now also shows extraneous attributes of an S4 object
    xS4.
  * Rudimentary support for vi-style tags in rtags() and R CMD rtags
    has been added.  (Based on a patch from Neal Fultz in PR#17214.)
  * checkRdContents() is now exported from tools; it and also
    checkDocFiles() have a new option chkInternal allowing to check
    Rd files marked with keyword "internal" as well.  The latter can
    be activated for R CMD check via environment variable
    _R_CHECK_RD_INTERNAL_TOO_.
  * New functions numToBits() and numToInts() extend the raw
    conversion utilities to (double precision) numeric.
  * Functions URLencode() and URLdecode() in package utils now work
    on vectors of URIs.  (Based on patch from Bob Rudis submitted
    with PR#17873.)
  * path.expand() can expand ~user on most Unix-alikes even when
    readline is not in use.  It tries harder to expand ~, for example
    should environment variable HOME be unset.
  * For HTML help (both dynamic and static), Rd file links to help
    pages in external packages are now treated as references to
    topics rather than file names, and fall back to a file link only
    if the topic is not found in the target package. The earlier rule
    which prioritized file names over topics can be restored by
    setting the environment variable _R_HELP_LINKS_TO_TOPICS_ to a
    false value.
  * c() now removes NULL arguments before dispatching to methods,
    thus simplifying the implementation of c() methods, _but_ for
    back compatibility keeps NULL when it is the first argument.
    (From a report and patch proposal by Lionel Henry in PR#17900.)
  * Vectorize()'s result function's environment no longer keeps
    unneeded objects.
  * Function ...elt() now propagates visibility consistently with
    ..n.  (Thanks to Lionel Henry's PR#17905.)
  * capture.output() no longer uses non-standard evaluation to
    evaluate its arguments.  This makes evaluation of functions like
    parent.frame() more consistent.  (Thanks to Lionel Henry's
    PR#17907.)
  * packBits(bits, type="double") now works as inverse of
    numToBits().  (Thanks to Bill Dunlap's proposal in PR#17914.)
  * curlGetHeaders() has two new arguments, timeout to specify the
    timeout for that call (overriding getOption("timeout")) and TLS
    to specify the minimum TLS protocol version to be used for
    https:// URIs (_inter alia_ providing a means to check for sites
    using deprecated TLS versions 1.0 and 1.1).
  * For nls(), an optional constant scaleOffset may be added to the
    denominator of the relative offset convergence test for cases
    where the fit of a model is expected to be exact, thanks to a
    proposal by John Nash.  nls(*, trace=TRUE) now also shows the
    convergence criterion.
  * Numeric differentiation _via_ numericDeriv() gets new optional
    arguments eps and central, the latter for taking central divided
    differences.  The latter can be activated for nls() via
    nls.control(nDcentral = TRUE).
  * nls() now passes the trace and control arguments to getInitial(),
    notably for all self-starting models, so these can also be fit in
    zero-noise situations via a scaleOffset.  For this reason, the
    initial function of a selfStart model must now have ... in its
    argument list.
  * bquote(splice = TRUE) can now splice expression vectors with
    attributes: this makes it possible to splice the result of
    parse(keep.source = TRUE).  (Report and patch provided by Lionel
    Henry in PR#17869.)
  * textConnection() gets an optional name argument.
  * get(), exists(), and get0() now signal an error if the first
    argument has length greater than 1.  Previously additional
    elements were silently ignored.  (Suggested by Antoine Fabri on
    R-devel.)
  * R now provides a shorthand notation for creating functions, e.g.
    \(x) x + 1 is parsed as function(x) x + 1.
  * R now provides a simple native forward pipe syntax |&gt;.  The
    simple form of the forward pipe inserts the left-hand side as the
    first argument in the right-hand side call.  The pipe
    implementation as a syntax transformation was motivated by
    suggestions from Jim Hester and Lionel Henry.
  * all.equal(f, g) for functions now by default also compares their
    environment(.)s, notably via new all.equal method for class
    function.  Comparison of nls() fits, e.g., may now need
    all.equal(m1, m2, check.environment = FALSE).
  * .libPaths() gets a new option include.site, allowing to _not_
    include the site library.  (Thanks to Dario Strbenac's suggestion
    and Gabe Becker's PR#18016.)
  * Lithuanian translations are now available.  (Thanks to Rimantas
    Zakauskas.)
  * names() now works for DOTSXP objects.  On the other hand, in
    R-lang, the R language manual, we now warn against relying on the
    structure or even existence of such dot-dot-dot objects.
  * all.equal() no longer gives an error on DOTSXP objects.
  * capabilities("cairo") now applies only to the file-based devices
    as it is now possible (if very unusual) to build R with Cairo
    support for those but not for X11().
  * There is optional support for tracing the progress of
    loadNamespace() - see its help.
  * (Not Windows.)  l10n_info() reports an additional element, the
    name of the encoding as reported by the OS (which may differ from
    the encoding part (if any) of the result from
    Sys.getlocale("LC_CTYPE").
  * New function gregexec() which generalizes regexec() to find _all_
    disjoint matches and well as all substrings corresponding to
    parenthesized subexpressions of the given regular expression.
    (Contributed by Brodie Gaslam.)
  * New function charClass() in package utils to query the
    wide-character classification functions in use (such as
    iswprint).
  * The names of quantile()'s result no longer depend on the global
    getOption("digits"), but quantile() gets a new optional argument
    digits = 7 instead.
  * grep(), sub(), regexp and variants work considerably faster for
    long factors with few levels.  (Thanks to Michael Chirico's
    PR#18063.)
  * Provide grouping of x11() graphics windows within a window
    manager such as Gnome or Unity; thanks to a patch by Ivan Krylov
    posted to R-devel.
  * The split() method for class data.frame now allows the f argument
    to be specified as a formula.
  * sprintf now warns on arguments unused by the format string.
  * New palettes "Rocket" and "Mako" for hcl.colors() (approximating
    palettes of the same name from the 'viridisLite' package).
    Contributed by Achim Zeileis.
  * The base environment and its namespace are now locked (so one can
    no longer add bindings to these or remove from these).
  * Rterm handling of multi-byte characters has been improved,
    allowing use of such characters when supported by the current
    locale.
  * Rterm now accepts ALT+ +xxxxxxxx sequences to enter Unicode
    characters as hex digits.
  * Environment variable LC_ALL on Windows now takes precedence over
    LC_CTYPE and variables for other supported categories, matching
    the POSIX behaviour.
  * duplicated() and anyDuplicated() are now optimized for integer
    and real vectors that are known to be sorted via the ALTREP
    framework. Contributed by Gabriel Becker via PR#17993.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 14
    and so packages that provide graphics devices should be
    reinstalled.
  * Graphics devices should now specify deviceVersion to indicate
    what version of the graphics engine they support.
  * Graphics devices can now specify deviceClip.  If TRUE, the
    graphics engine will never perform any clipping of output itself.
    The clipping that the graphics engine does perform (for both
    canClip = TRUE and canClip = FALSE) has been improved to avoid
    producing unnecessary artifacts in clipped output.
  * The grid package now allows gpar(fill) to be a linearGradient(),
    a radialGradient(), or a pattern().  The viewport(clip) can now
    also be a grob, which defines a clipping path, and there is a new
    viewport(mask) that can also be a grob, which defines a mask.
    These new features are only supported so far on the Cairo-based
    graphics devices and on the pdf() device.
  * (Not Windows.)  A warning is given when a Cairo-based type is
    specified for a png(), jpeg(), tiff() or bmp() device but Cairo
    is unsupported (so type = "Xlib" is tried instead).
  * grSoftVersion() now reports the versions of FreeType and
    FontConfig if they are used directly (not _via_ Pango), as is
    most commonly done on macOS.
  C-LEVEL FACILITIES:
  * The _standalone_ libRmath math library and R's C API now provide
    log1pexp() again as documented, and gain log1mexp().
  INSTALLATION on a UNIX-ALIKE:
  * configure checks for a program pkgconf if program pkg-config is
    not found.  These are now only looked for on the path (like
    almost all other programs) so if needed specify a full path to
    the command in PKG_CONFIG, for example in file config.site.
  * C99 function iswblank is required - it was last seen missing ca
    2003 so the workaround has been removed.
  * There are new configure options --with-internal-iswxxxxx,
  - -with-internal-towlower and --with-internal-wcwidth which allows
    the system functions for wide-character classification,
    case-switching and width (wcwidth and wcswidth) to be replaced by
    internal ones.  The first has long been used on macOS, AIX (and
    Windows) but this enables it to be unselected there and selected
    for other platforms (it is the new default on Solaris).  The
    second is new in this version of R and is selected by default on
    macOS and Solaris.  The third has long been the default and
    remains so as it contains customizations for East Asian
    languages.
    System versions of these functions are often minimally
    implemented (sometimes only for ASCII characters) and may not
    cover the full range of Unicode points: for example Solaris (and
    Windows) only cover the Basic Multilingual Plane.
  * Cairo installations without X11 are more likely to be detected by
    configure, when the file-based Cairo graphics devices will be
    available but not X11(type = "cairo").
  * There is a new configure option --with-static-cairo which is the
    default on macOS.  This should be used when only static cairo
    (and where relevant, Pango) libraries are available.
  * Cairo-based graphics devices on platforms without Pango but with
    FreeType/FontConfig will make use of the latter for font
    selection.
  LINK-TIME OPTIMIZATION on a UNIX-ALIKE:
  * Configuring with flag --enable-lto=R now also uses LTO when
    installing the recommended packages.
  * R CMD INSTALL and R CMD SHLIB have a new flag --use-LTO to use
    LTO when compiling code, for use with R configured with
  - -enable-lto=R.  For R configured with --enable-lto, they have
    the new flag --no-use-LTO.
    Packages can opt in or out of LTO compilation _via_ a UseLTO
    field in the DESCRIPTION file.  (As usual this can be overridden
    by the command-line flags.)
  BUILDING R on Windows:
  * for GCC &gt;= 8, FC_LEN_T is defined in config.h and hence character
    lengths are passed from C to Fortran in _inter alia_ BLAS and
    LAPACK calls.
  * There is a new text file src/gnuwin32/README.compilation, which
    outlines how C/Fortran code compilation is organized and
    documents new features:
  * R can be built with Link-Time Optimization with a suitable
    compiler - doing so with GCC 9.2 showed several
    inconsistencies which have been corrected.
  * There is support for cross-compiling the C and Fortran code
    in R and standard packages on suitable (Linux) platforms.
    This is mainly intended to allow developers to test later
    versions of compilers - for example using GCC 9.2 or 10.x has
    detected issues that GCC 8.3 in Rtools40 does not.
  * There is experimental support for cross-building R packages
    with C, C++ and/or Fortran code.
  * The R installer can now be optionally built to support a single
    architecture (only 64-bit or only 32-bit).
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++14 where
    available (which it is on all currently checked platforms): if
    not (as before) C++11 is used if available otherwise C++ is not
    supported.
    Packages which specify C++11 will still be installed using C++11.
    C++14 compilers may give deprecation warnings, most often for
    std::random_shuffle (deprecated in C++14 and removed in C++17).
    Either specify C++11 (see 'Writing R Extensions') or modernize
    the code and if needed specify C++14.  The latter has been
    supported since R 3.4.0 so the package's DESCRIPTION would need
    to include something like
    Depends: R (&gt;= 3.4)
  PACKAGE INSTALLATION on Windows:
  * R CMD INSTALL and R CMD SHLIB make use of their flag --use-LTO
    when the LTO_OPT make macro is set in file etc/${R_ARCH}/Makeconf
    or in a personal/site Makevars file.  (For details see 'Writing R
    Extensions' SS4.5.)
    This provides a valuable check on code consistency.  It does work
    with GCC 8.3 as in Rtools40, but that does not detect everything
    the CRAN checks with current GCC do.
  PACKAGE INSTALLATION on macOS:
  * The default personal library directory on builds with
  - -enable-aqua (including CRAN builds) now differs by CPU type,
    one of
    ~/Library/R/x86_64/x.y/library
    ~/Library/R/arm64/x.y/library
    This uses the CPU type R (and hence the packages) were built for,
    so when a x86_64 build of R is run under Rosetta emulation on an
    arm64 Mac, the first is used.
  UTILITIES:
  * R CMD check can now scan package functions for bogus return
    statements, which were possibly intended as return() calls (wish
    of PR#17180, patch by Sebastian Meyer). This check can be
    activated via the new environment variable
    _R_CHECK_BOGUS_RETURN_, true for --as-cran.
  * R CMD build omits tarballs and binaries of previous builds from
    the top-level package directory.  (PR#17828, patch by Sebastian
    Meyer.)
  * R CMD check now runs sanity checks on the use of LazyData, for
    example that a data directory is present and that
    LazyDataCompression is not specified without LazyData and has a
    documented value.  For packages with large LazyData databases
    without specifying LazyDataCompression, there is a reference to
    the code given in 'Writing R Extensions' SS1.1.6 to test the
    choice of compression (as in all the CRAN packages tested a
    non-default method was preferred).
  * R CMD build removes LazyData and LazyDataCompression fields from
    the DESCRIPTION file of packages without a data directory.
  ENCODING-RELATED CHANGES:
  * The parser now treats \Unnnnnnnn escapes larger than the upper
    limit for Unicode points (\U10FFFF) as an error as they cannot be
    represented by valid UTF-8.
    Where such escapes are used for outputting non-printable
    (including unassigned) characters, 6 hex digits are used (rather
    than 8 with leading zeros).  For clarity, braces are used, for
    example \U{0effff}.
  * The parser now looks for non-ASCII spaces on Solaris (as
    previously on most other OSes).
  * There are warnings (including from the parser) on the use of
    unpaired surrogate Unicode points such as \uD834.  (These cannot
    be converted to valid UTF-8.)
  * Functions nchar(), tolower(), toupper() and chartr() and those
    using regular expressions have more support for inputs with a
    marked Latin-1 encoding.
  * The character-classification functions used (by default) to
    replace the system iswxxxxx functions on Windows, macOS and AIX
    have been updated to Unicode 13.0.0.
    The character-width tables have been updated to include new
    assignments in Unicode 13.0.0.
  * The code for evaluating default (extended) regular expressions
    now uses the same character-classification functions as the rest
    of R (previously they differed on Windows, macOS and AIX).
  * There is a build-time option to replace the system's
    wide-character wctrans C function by tables shipped with R: use
    configure option --with-internal-towlower or (on Windows)
  - DUSE_RI18N_CASE in CFLAGS when building R.  This may be needed
    to allow tolower() and toupper() to work with Unicode characters
    beyond the Basic Multilingual Plane where not supported by system
    functions (e.g. on Solaris where it is the new default).
  * R is more careful when truncating UTF-8 and other multi-byte
    strings that are too long to be printed, passed to the system or
    libraries or placed into an internal buffer.  Truncation will no
    longer produce incomplete multibyte characters.
  DEPRECATED AND DEFUNCT:
  * Function plclust() from the package stats and
    package.dependencies(), pkgDepends(), getDepList(),
    installFoundDepends(), and vignetteDepends() from package tools
    are defunct.
  * Defunct functions checkNEWS() and readNEWS() from package tools
    and CRAN.packages() from utils have been removed.
  * R CMD config CXXCPP is defunct (it was deprecated in R 3.6.2).
  * parallel::detectCores() drops support for Irix (retired in 2013).
  * The LINPACK argument to chol.default(), chol2inv(),
    solve.default() and svd() has been defunct since R 3.1.0.  It was
    silently ignored up to R 4.0.3 but now gives an error.
  * Subsetting/indexing, such as ddd[*] or ddd$x on a DOTSXP
    (dot-dot-dot) object ddd has been disabled; it worked by accident
    only and was undocumented.
  BUG FIXES:
  * Many more C-level allocations (mainly by malloc and strdup) are
    checked for success with suitable alternative actions.
  * Bug fix for replayPlot(); this was turning off graphics engine
    display list recording if a recorded plot was replayed in the
    same session.  The impact of the bug became visible if resize the
    device after replay OR if attempted another savePlot() after
    replay (empty display list means empty screen on resize or empty
    saved plot).
  * R CMD check etc now warn when a package exports non-existing S4
    classes or methods, also in case of no "methods" presence.
    (Reported by Alex Bertram; reproducible example and patch by
    Sebastian Meyer in PR#16662.)
  * boxplot() now also accepts calls for labels such as ylab, the
    same as plot().  (Reported by Marius Hofert.)
  * The help page for xtabs() now correctly states that addNA is
    setting na.action = na.pass among others.  (Reported as PR#17770
    by Thomas Soeiro.)
  * The R CMD check &lt;pkg&gt; gives a longer and more comprehensible
    message when DESCRIPTION misses dependencies, e.g., in Imports:.
    (Thanks to the contributors of PR#17179.)
  * update.default() now calls the generic update() on the formula to
    work correctly for models with extended formulas.  (As reported
    and suggested by Neal Fultz in PR#17865.)
  * The horizontal position of leaves in a dendrogram is now correct
    also with center = FALSE.  (PR#14938, patch from Sebastian
    Meyer.)
  * all.equal.POSIXt() no longer warns about and subsequently ignores
    inconsistent "tzone" attributes, but describes the difference in
    its return value (PR#17277).  This check can be disabled _via_
    the new argument check.tzone = FALSE as suggested by Sebastian
    Meyer.
  * as.POSIXct() now populates the "tzone" attribute from its tz
    argument when x is a logical vector consisting entirely of NA
    values.
  * x[[2^31]] &lt;- v now works.  (Thanks to the report and patch by
    Suharto Anggono in PR#17330.)
  * In log-scale graphics, axis() ticks and label positions are now
    computed more carefully and symmetrically in their range,
    typically providing _more_ ticks, fulfilling wishes in PR#17936.
    The change really corresponds to an improved axisTicks() (package
    grDevices), potentially influencing grid and lattice, for
    example.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now correct to at
    least five digits where it was catastrophically wrong,
    previously.
  * sum(df) and similar "Summary"- and "Math"-group member functions
    now work for data frames df with logical columns, notably also of
    zero rows.  (Reported to R-devel by Martin "b706".)
  * unsplit() had trouble with tibbles due to unsound use of rep(NA,
    len)-indexing, which should use NA_integer_ (Reported to R-devel
    by Mario Annau.)
  * pnorm(x, log.p = TRUE) underflows to -Inf slightly later.
  * show(&lt;hidden S4 generic&gt;) prints better and without quotes for
    non-hidden S4 generics.
  * read.table() and relatives treated an "NA" column name as missing
    when check.names = FALSE PR#18007.
  * Parsing strings containing UTF-16 surrogate pairs such as
    "\uD834\uDD1E" works better on some (uncommon) platforms.
    sprintf("%X", utf8ToInt("\uD834\uDD1E")) should now give "1D11E"
    on all platforms.
  * identical(x,y) is no longer true for differing DOTSXP objects,
    fixing PR#18032.
  * str() now works correctly for DOTSXP and related exotics, even
    when these are doomed.
    Additionally, it no longer fails for lists with a class and
    "irregular" method definitions such that e.g. lapply(*) will
    necessarily fail, as currently for different igraph objects.
  * Too long lines in environment files (e.g. Renviron) no longer
    crash R. This limit has been increased to 100,000 bytes.
    (PR#18001.)
  * There is a further workaround for FreeType giving incorrect
    italic font faces with cairo-based graphics devices on macOS.
  * add_datalist(*, force = TRUE) (from package tools) now actually
    updates an existing data/datalist file for new content.  (Thanks
    to a report and patch by Sebastian Meyer in PR#18048.)
  * cut.Date() and cut.POSIXt() could produce an empty last interval
    for breaks = "months" or breaks = "years".  (Reported as PR#18053
    by Christopher Carbone.)
  * Detection of the encoding of 'regular' macOS locales such as
    en_US (which is UTF-8) had been broken by a macOS change:
    fortunately these are now rarely used with en_US.UTF-8 being
    preferred.
  * sub() and gsub(pattern, repl, x, *) now keep attributes of x such
    as names() also when pattern is NA (PR#18079).
  * Time differences ("difftime" objects) get a replacement and a
    rep() method to keep "units" consistent.  (Thanks to a report and
    patch by Nicolas Bennett in PR#18066.)
  * The \RdOpts macro, setting defaults for \Sexpr options in an Rd
    file, had been ineffective since R 2.12.0: it now works again.
    (Thanks to a report and patch by Sebastian Meyer in PR#18073.)
  * mclapply and pvec no longer accidentally terminate parallel
    processes started before by mcparallel or related calls in
    package parallel (PR#18078).
  * grep and other functions for evaluating (extended) regular
    expressions handle in Unicode also strings not explicitly flagged
    UTF-8, but flagged native when running in UTF-8 locale.
  * Fixed a crash in fifo implementation on Windows (PR#18031).
  * Binary mode in fifo on Windows is now properly detected from
    argument open (PR#15600, PR#18031).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1622808000">- The line %{__install} -m 755 -d %{_infodir}
  no longer works in TW or Factory.
  But without that line it works everywhere. So this instruction
  was commented out of the spec file.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1628596800">- CHANGES IN R 4.1.1:
  NEW FEATURES:
  * require(pkg, quietly = TRUE) is quieter and in particular does
    not warn if the package is not found.
  DEPRECATED AND DEFUNCT:
  * Use of ftp:// URIs should be regarded as deprecated, with
    on-going support confined to method = "libcurl" and not routinely
    tested.  (Nowadays no major browser supports them.)
  * The non-default method = "internal" is deprecated for http:// and
    ftp:// URIs for both download.file and url.
  * On Windows, method = "wininet" is deprecated for http://,
    https:// and ftp:// URIs for both download.file and url.  (A
    warning is only given for ftp://.)
    For ftp:// URIs the default method is now "libcurl" if available
    (which it is on CRAN builds).
    method = "wininet" remains the default for http:// and https://
    URIs but if libcurl is available, using method = "libcurl" is
    preferred.
  INSTALLATION:
  * make check now works also without a LaTeX installation.  (Thanks
    to Sebastian Meyer's PR#18103.)
  BUG FIXES:
  * make check-devel works again in an R build configured with
  - -without-recommended-packages.
  * qnbinom(p, size, mu) for large size/mu is correct now in a range
    of cases (PR#18095); similarly for the (size, prob)
    parametrization of the negative binomial.  Also qpois() and
    qbinom() are better and or faster for extreme cases.  The
    underlying C code has been modularized and is common to all four
    cases of discrete distributions.
  * gap.axis is now part of the axis() arguments which are passed
    from bxp(), and hence boxplot().  (Thanks to Martin Smith's
    report and suggestions in PR#18109.)
  * .First and .Last can again be set from the site profile.
  * seq.int(from, to, *) and seq.default(..) now work better in large
    range cases where from-to is infinite where the two boundaries
    are finite.
  * all.equal(x,y) now returns TRUE correctly also when several
    entries of abs(x) and abs(y) are close to .Machine$double.xmax,
    the largest finite numeric.
  * model.frame() now clears the object bit when removing the class
    attribute of a value via na.action (PR#18100).
  * charClass() now works with multi-character strings on Windows
    (PR#18104, fixed by Bill Dunlap).
  * encodeString() on Solaris now works again in Latin-1 encoding on
    characters represented differently in UTF-8.  Support for
    surrogate pairs on Solaris has been improved.
  * file.show() on Windows now works with non-ASCII path names
    representable in the current native encoding (PR#18132).
  * Embedded R on Windows can now find R home directory via the
    registry even when installed only for the current user
    (PR#18135).
  * pretty(x) with finite x now returns finite values also in the
    case where the extreme x values are close in size to the maximal
    representable number .Machine$double.xmax.
    Also, it's been tweaked for very small ranges and when a boundary
    is close (or equal) to zero; e.g., pretty(c(0,1e-317)) no longer
    has negative numbers, currently still warning about a very small
    range, and pretty(2^-(1024 - 2^-1/(c(24,10)))) is more accurate.
  * The error message for not finding vignette files when weaving has
    correct file sizes now. (Thanks to Sebastian Meyer's PR#18154.)
  * dnbinom(20, &lt;large&gt;, 1) now correctly gives 0, and similar cases
    are more accurate with underflow precaution.  (Reported by Francisco Vera Alcivar in PR#18072.)</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635163200">- repaired https://bugzilla.suse.com/show_bug.cgi?id=1191380
  (rpmacros now go to rpmmacrodir)
- minor clean-ups in spec file</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635768000">- CHANGES IN R 4.1.2:
  C-LEVEL FACILITIES:
  * The workaround in headers R.h and Rmath.h (using namespace std;)
    for the Oracle Developer Studio compiler is no longer needed now
    C++11 is required so has been removed.  A couple more usages of
    log() (which should have been std::log()) with an int argument
    are reported on Solaris.
  * The undocumented limit of 4095 bytes on messages from the
    S-compatibility macros PROBLEM and MESSAGE is now documented and
    longer messages will be silently truncated rather than
    potentially causing segfaults.
  * If the R_NO_SEGV_HANDLER environment variable is non-empty, the
    signal handler for SEGV/ILL/BUS signals (which offers recovery
    user interface) is not set. This allows more reliable debugging
    of crashes that involve the console.
  DEPRECATED AND DEFUNCT:
  * The legacy S-compatibility macros PROBLEM, MESSAGE, ERROR, WARN,
    WARNING, RECOVER, ... are deprecated and will be hidden in R
    4.2.0. R's native interface of Rf_error and Rf_warning has long
    been preferred.
  BUG FIXES:
  * .mapply(F, dots, .) no longer segfaults when dots is not a list
    and uses match.fun(F) as always documented; reported by Andrew
    Simmons in PR#18164.
  * hist(&lt;Date&gt;, ...) and hist(&lt;POSIXt&gt;, ...)  no longer pass
    arguments for rect() (such as col and density) to axis().
    (Thanks to Sebastian Meyer's PR#18171.)
  * \Sexpr{ch} now preserves Encoding(ch). (Thanks to report and
    patch by Jeroen Ooms in PR#18152.)
  * Setting the RNG to "Marsaglia-Multicarry" e.g., by RNGkind(), now
    warns in more places, thanks to Andr'e Gillibert's report and
    patch in PR#18168.
  * gray(numeric(), alpha=1/2) no longer segfaults, fixing PR#18183,
    reported by Till Krenz.
  * Fixed dnbinom(x, size=&lt;very_small&gt;, .., log=TRUE) regression,
    reported by Martin Morgan.
  * as.Date.POSIXlt(x) now keeps names(x), thanks to Davis Vaughan's
    report and patch in PR#18188.
  * model.response() now strips an "AsIs" class typically, thanks to
    Duncan Murdoch's report and other discussants in PR#18190.
  * try() is considerably faster in case of an error and long call,
    as e.g., from some do.call().  Thanks to Alexander Kaever's
    suggestion posted to R-devel.
  * qqline(y = &lt;object&gt;) such as y=I(.), now works, see also
    PR#18190.
  * Non-integer mgp par() settings are now handled correctly in
    axis() and mtext(), thanks to Mikael Jagan and Duncan Murdoch's
    report and suggestion in PR#18194.
  * formatC(x) returns length zero character() now, rather than ""
    when x is of length zero, as documented, thanks to Davis
    Vaughan's post to R-devel.
  * removeSource(fn) now retains (other) attributes(fn).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1647000000">- CHANGES IN R 4.1.3:
  NEW FEATURES:
  * The default version of Bioconductor has been changed to 3.14.
    (This is used by setRepositories and the menus in GUIs.)
  UTILITIES:
  * R CMD check --as-cran has a workaround for a bug in versions of
    file up to at least 5.41 which mis-identify DBF files last
    changed in 2022 as executables.
  C-LEVEL FACILITIES:
  * The legacy S-compatibility macros SINGLE_* in R_ext/Constants.h
    (included by R.h) are deprecated and will be removed in R 4.2.0.
  BUG FIXES:
  * Initialization of self-starting nls() models with initialization
    functions following the pre-R-4.1.0 API (without the ...
    argument) works again for now, with a deprecation warning.
  * Fixed quoting of ~autodetect~ in Java setting defaults to avoid
    inadvertent user lookup due to leading ~, reported in PR#18231 by
    Harold Gutch.
  * substr(., start, stop) &lt;- v now treats _negative_ stop values
    correctly.  Reported with a patch in PR#18228 by Brodie Gaslam.
  * Subscripting an array x without dimnames by a
    length(dim(x))-column character matrix gave "random" non-sense,
    now an error; reported in PR#18244 by Mikael Jagan.
  * ...names() now matches names(list(...)) closely, fixing PR#18247.
  * all.equal(*, scale = s) now works as intended when length(s) &gt; 1,
    partly thanks to Michael Chirico's PR#18272.
  * print(x) for long vectors x now also works for named atomic
    vectors or lists and prints the correct number when reaching the
    getOption("max.print") limit; partly thanks to a report and
    proposal by Hugh Parsonage to the R-devel list.
  * all.equal(&lt;selfStart&gt;, *) no longer signals a deprecation
    warning.
  * reformulate(*, response=r) gives a helpful error message now when
    length(r) &gt; 1, thanks to Bill Dunlap's PR#18281.
  * Modifying globalCallingHandlers inside withCallingHandlers() now
    works or fails correctly, thanks to Henrik Bengtsson's PR#18257.
  * hist(&lt;Date&gt;, breaks = "days") and hist(&lt;POSIXt&gt;, breaks = "secs")
    no longer fail for inputs of length 1.
  * qbeta(.001, .9, .009) and similar cases now converge correctly
    thanks to Ben Bolker's report in PR#17746.
  * window(x, start, end) no longer wrongly signals "'start' cannot
    be after 'end'", fixing PR#17527 and PR#18291.
  * data() now checks that its (rarely used) list argument is a
    character vector - a couple of packages passed other types and
    gave incorrect results.
  * which() now checks its arr.ind argument is TRUE rather coercing
    to logical and taking the first element - which gave incorrect
    results in package code.
  * model.weights() and model.offset() more carefully extract their
    model components, thanks to Ben Bolker and Tim Taylor's R-devel
    post.
  * list.files(recursive = TRUE) now shows all broken symlinks
    (previously, some of them may have been omitted, PR#18296).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1650628800">- CHANGES IN R 4.2.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * The formula method of aggregate() now matches the generic in
    naming its first argument x (resolving PR#18299 by Thomas
    Soeiro).
    This means that calling aggregate() with a formula as a named
    first argument requires name formula in earlier versions of R and
    name x now, so portable code should not name the argument (code
    in many packages did).
  * Calling &amp;&amp; or || with either argument of length greater than one
    now gives a warning (which it is intended will become an error).
  * Calling if() or while() with a condition of length greater than
    one gives an error rather than a warning.  Consequently,
    environment variable _R_CHECK_LENGTH_1_CONDITION_ no longer has
    any effect.
  * Windows users should consult the WINDOWS section below for some
    profound changes including
  * Support for 32-bit builds has been dropped.
  * UTF-8 locales are used where available.
  * The default locations for the R installation and personal
    library folder have been changed.
    Thanks to Tomas Kalibera for months of work on the Windows port
    for this release.
  NEW FEATURES:
  * matrix(x, n, m) now warns in more cases where length(x) differs
    from n * m, as suggested by Abby Spurdle and Wolfgang Huber in
    Feb 2021 on the R-devel mailing list.
    This warning can be turned into an error by setting environment
    variable _R_CHECK_MATRIX_DATA_ to TRUE: R CMD check --as-cran
    does so unless it is already set.
  * Function file_test() in package utils gains tests for symlinks,
    readability and writability.
  * capabilities("libxml") is now false.
    The description of capabilities("http/ftp") now reflects that it
    refers to the default method, no longer the internal one.
  * simplify2array() gains an except argument for controlling the
    exceptions used by sapply().
  * Environment variables R_LIBS_USER and R_LIBS_SITE are both now
    set to the R system default if unset or empty, and can be set to
    NULL to indicate an empty list of user or site library
    directories.
  * The warning for axis()(-like) calls in cases of relatively small
    ranges (typically in log-scale situations) is slightly improved
    _and_ suppressed from explicit calls to .axisPars() as has always
    been the intention.
  * The contrasts setter function `contrasts&lt;-` gains an explicit
    default how.many = NULL rather than just using missing(how.many).
  * grid.pretty() gains a new optional argument n = 5.
  * There is a new function .pretty() with option bounds as a
    technical-utility version of pretty().  It and pretty() gain a
    new argument f.min with a better than back-compatible default.
  * Function grDevices::axisTicks() and related functions such as
    graphics::axis() work better, notably for the log scale; partly
    because of the pretty() improvements, but also because care is
    taken e.g., when ylim is finite but diff(ylim) is infinite.
  * nclass.FD() gains a digits option.
  * The R Mathlib internal C function bd0() (called indirectly from a
    dozen probability density and distribution functions such as
    dpois(), dbinom(), dgamma(), pgamma() _etc_) has been
    complemented by a more sophisticated and (mostly) more accurate C
    function ebd0(), currently called only by internal dpois_raw()
    improving accuracy for R level dpois() and potentially others
    calling it such as dnbinom(), dgamma() or pgamma().  (Thanks to
    Morten Welinder's PR#15628.)
  * write.ftable() gains sep = " " argument as suggested by Thomas
    Soeiro.
  * The names of the locale categories supported by R's
    Sys.getlocale() and Sys.setlocale() are now provided by variable
    .LC.categories in the base namespace.
  * The Date and POSIXt methods for hist() and the histogram method
    for plot() now also use the new default col = "lightgray" in
    consistency with the corresponding change to hist()'s default for
    R 4.0.0.
  * hist.default() gains new fuzz argument, and the histogram plot
    method no longer uses fractional axis ticks when displaying
    counts ("Frequency").
  * mapply() and hence Map() now also obey the "max-or-0-if-any"
    recycling rule, such that, e.g., Map(`+`, 1:3, 1[0]) is valid
    now.
  * as.character(&lt;obj&gt;) for "hexmode" or "octmode" objects now
    fulfils the important basic rule as.character(x)[j] ===
    as.character(x[j]).
  * The set utility functions, notably intersect() have been tweaked
    to be more consistent and symmetric in their two set arguments,
    also preserving a common mode.
  * substr(ch, start,end) &lt;- new now e.g., preserves names(ch); ditto
    for substring(), thanks to a patch from Brodie Gaslam.
  * plot(&lt;lm&gt;) gains a extend.ylim.f argument, in partial response to
    PR#15285; further PR#17784 is fixed thanks to several
    contributors and a patch by Elin Waring.  The Cook's dist
    contours get customizable via cook.col and cook.lty with a
    different default color and their legend is nicer by default and
    customizable via cook.legendChanges.
  * Attempting to subset an object that is not subsettable now
    signals an error of class notSubsettableError. The
    non-subsettable object is contained in the object field of the
    error condition.
  * Subscript-out-of-bounds errors are now signaled as errors of
    class subscriptOutOfBoundsError.
  * Stack-overflow errors are now signaled as errors inheriting from
    class stackOverflowError. See ?stackOverflowError for more
    details.
  * New partly experimental Sys.setLanguage() utility, solving the
    main problem of PR#18055.
  * gettext() and gettextf() get a new option trim = TRUE which when
    set to false allows translations for strings such as "Execution
    halted\n" typical for C code.
  * An experimental implementation of hash tables is now available.
    See ?hashtab for more details.
  * identical() gains a extptr.as.ref argument for requesting that
    external pointer objects be compared as reference objects.
  * reorder() gets an argument decreasing which it passes to sort()
    for level creation; based on the wish and patch by Thomas Soeiro
    in PR#18243.
  * as.vector() gains a data.frame method which returns a simple
    named list, also clearing a long standing 'FIXME' to enable
    as.vector(&lt;data.frame&gt;, mode="list").  This breaks code relying
    on as.vector(&lt;data.frame&gt;) to return the unchanged data frame.
  * legend() is now vectorized for arguments cex, x.intersp, and
    text.width.  The latter can now also be specified as a vector
    (one element for each column of the legend) or as NA for
    computing a proper column wise maximum value of strwidth(legend).
    The argument y.intersp can be specified as a vector with one
    entry for each row of the legend.
    legend() also gains new arguments title.cex and title.font.
    Thanks to Swetlana Herbrandt.
  * Deparsing no longer remaps attribute names dim, dimnames, levels,
    names and tsp to historical S-compatible names (which structure()
    maps back).
  * sample() and sample.int() have additional sanity checks on their
    size and n arguments.
    all.equal.numeric() gains a sanity check on its tolerance
    argument - calling all.equal(a, b, c) for three numeric vectors
    is a surprisingly common error.
    mean(na.rm =), rank(na.last =), barplot(legend.text =),
    boxplot(), contour(drawlabels =), polygon(border =) and
    methods::is(class2 =) have more robust sanity checks on their
    arguments.
    R CMD Rd2pdf (used by R CMD check) has a more robust sanity check
    on the format of \alias{} commands.
  * psigamma(x, deriv) for negative x now also works for deriv = 4
    and 5; their underlying C level dpsifn() is documented in
    'Writing R Extensions'.
  * The HTML help system now uses HTML5 (wish of PR#18149).
  * ks.test() now provides exact p-values also with ties and MC
    p-values in the two-sample (Smirnov) case.  By Torsten Hothorn.
  * ks.test() gains a formula interface, with y ~ 1 for the
    one-sample (Kolmogorov) test and y ~ group for the two-sample
    (Smirnov) test.  Contributed by Torsten Hothorn.
  * The return value from ks.test() now has class c("ks.test",
    "htest") - packages using try() need to take care to use
    inherits() and not == on the class.
  * New functions psmirnov(), qsmirnov() and rsmirnov() in package
    stats implementing the asymptotic and exact distributions of the
    two-sample Smirnov statistic.
  * iconv() now allows sub = "c99" to use C99-style escapes for UTF-8
    inputs which cannot be converted to encoding to.
  * In a forward pipe |&gt; expression it is now possible to use a named
    argument with the placeholder _ in the rhs call to specify where
    the lhs is to be inserted.  The placeholder can only appear once
    on the rhs.
  * The included LAPACK sources have been updated to version 3.10.0,
    except for the four Fortran 77 routines which 3.10.0 has
    re-implemented in Fortran 90 (where the older versions have been
    retained as the R build process does not support Fortran 90).
  * path.expand() and most other uses of tilde expansion now warn if
    a path would be too long if expanded.  (An exception is
    file.exists(), which silently returns false.)
  * trunc(&lt;Date&gt;, *) now supports units = "months" or "years" for
    consistency with the POSIXt method, thanks to Dirk Eddelbuettel's
    proposal in PR#18099.
  * list2DF() now checks that its arguments are of the same length,
    rather than use recycling.
  * The HTML help system has several new features: LaTeX-like math
    can be typeset using either KaTeX or MathJax, usage and example
    code is highlighted using Prism, and for dynamic help the output
    of examples and demos can be shown within the browser if the
    knitr package is installed. These features can be disabled by
    setting the environment variable _R_HELP_ENABLE_ENHANCED_HTML_ to
    a false value.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 15
    and so packages that provide graphics devices should be
    reinstalled.
  * The grid package now allows the user to specify a "vector" of
    pattern fills.  The fill argument to gpar() accepts a list of
    gradients and/or patterns and the functions linearGradient(),
    radialGradient(), and pattern() have a new group argument.
    Points grobs (data symbols) can now also have a pattern fill.
    The grobCoords() function now returns a more informative and
    complex result.
  * The grid package has new functions for drawing isolated groups:
    grid.group(), grid.define(), and grid.use().  These functions add
    compositing operators and affine transformations to R's graphics
    capabilities.
    The grid package also has new functions for stroking and filling
    paths: grid.stroke(), grid.fill(), and grid.fillStroke().
    A new function as.path() allows the user to specify the fill rule
    for a path that is to be used for clipping, stroking, or filling;
    available options are "winding" and "evenodd".  A new function
    as.mask() allows the user to specify the type of a mask;
    available options are "alpha" and "luminance".
    These new features are only supported so far (at most) on the
    Cairo-based graphics devices and on the pdf() device.
  * dev.capabilities() reports on device support for the new
    features.
  * par() now warns about unnamed non-character arguments to prevent
    misuse such as {usr &lt;- par("usr"); par(usr)}.
  INSTALLATION:
  * Facilities for accessing ftp:// sites are no longer tested
    (except _pro tem_ for curlGetHeaders()) as modern browsers have
    removed support.
  * R can now be built with DEFS = -DSTRICT_R_HEADERS .
  PACKAGE INSTALLATION:
  * R CMD INSTALL no longer tangles vignettes. This completes an R
    CMD build change in R 3.0.0 and affects packages built before R
    3.0.2. Such packages should be re-made with R CMD build to have
    the tangled R code of vignettes shipped with the tarball.
  * USE_FC_LEN_T will become the default: this uses the correct
    prototypes for Fortran BLAS/LAPACK routines called from C/C++,
    and requires adjustment of most such calls - see 'Writing R
    Extensions' SS6.6.2.  (This has been supported since R 3.6.2.)
  * Package installation speed for packages installed with
    keep.source has been improved. This resolve the issue reported by
    Ofek Shilon in PR#18236.
  UTILITIES:
  * R CMD check can optionally report files/directories left behind
    in home, /tmp (even though TMPDIR is set) and other directories.
    See the "R Internals" manual for details.
  * R CMD check now reports byte-compilation errors during
    installation.  These are not usually fatal but may result in
    parts of the package not being byte-compiled.
  * _R_CHECK_DEPENDS_ONLY_ can be applied selectively to examples,
    tests and/or vignettes in R CMD check: see the "R Internals"
    manual.
  * _R_CHECK_SRC_MINUS_W_IMPLICIT_ now defaults to true: recent
    versions of Apple clang on macOS have made implicit function
    declarations in C into a compilation error.
  * R CMD check --as-cran makes use of the environment variable
    AUTORECONF.  See the "R Internals" manual SS8 for further details.
  * R CMD check --use-valgrind also uses valgrind when re-building
    vignettes as some non-Sweave vignettes unhelpfully comment out
    all their code when R CMD check runs vignettes.
  * Errors in re-building vignettes (unless there are LaTeX errors)
    are reported by R CMD check as ERROR rather than WARNING when
    running vignettes has been skipped (as it frequently is in CRAN
    checks and by --as-cran).
  * R CMD Rd2pdf gains a --quiet option that is used by R CMD build
    when building the PDF package manual.
  * R CMD Rd2pdf now always runs LaTeX in batch mode, consistent with
    Texinfo &gt;= 6.7. The --batch option is ignored.
  * R CMD build and R CMD check now include the Rd file name and line
    numbers in the error message of an \Sexpr evaluation failure.
  * For packages using the \doi Rd macro (now an install-time \Sexpr)
    but no other dynamic Rd content, R CMD build now produces a
    smaller tarball and is considerably faster - skipping temporary
    package installation.
  C-LEVEL FACILITIES:
  * The non-API header R_ext/R-ftp-http.h is no longer provided, as
    the entry points it covered are now all defunct.
  * A number of non-API declarations and macro definitions have been
    moved from the installed header Rinternals.h to the internal
    header Defn.h. Packages that only use entry points and
    definitions documented to be part of the API as specified in
    'Writing R Extensions' SS6 should not be affected.
  * The macro USE_RINTERNALS no longer has any effect when compiling
    package code.  Packages which also use R_NO_REMAP will need to
    ensure that the remapped names are used for calls to API
    functions that were formerly also made available as macros.
  * The deprecated legacy S-compatibility macros PROBLEM, MESSAGE,
    ERROR, WARN, WARNING, RECOVER, ... are no longer defined in
    R_exts/RS.h (included by R.h).  Replace these by calls to
    Rf_error and Rf_warning (defined in header R_ext/Error.h included
    by R.h).
    Header R_ext/RS.h no longer includes R_ext/Error.h.
  * Header R_ext/Constants.h (included by R.h) when included from C++
    now includes the C++ header cfloat rather than the C header
    float.h (now possible as C++11 is required).
  * The legacy S-compatibility macros DOUBLE_* in R_ext/Constants.h
    (included by R.h) are deprecated.
  * The deprecated S-compatibility macros SINGLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * R_Calloc, R_Free and R_Realloc are preferred to their unprefixed
    forms and error messages now use the prefix. These forms were
    introduced in R 3.4.0 and are available even when
    STRICT_R_HEADERS is defined.
  * rmultinom has been documented in 'Writing R Extensions' SS6 so is
    now part of the R API.
  * Similarly, Rtanpi, called from R level tanpi() is now part of the
    R API.
  * The long-deprecated, undocumented and non-API entry point call_R
    is no longer declared in R_ext/RS.h (included by R.h).
  * The header S.h which has been unsupported since Jan 2016 has been
    removed.  Use R.h instead.
  DEPRECATED AND DEFUNCT:
  * The (non-default and deprecated) method = "internal" for
    download.file() and url() no longer supports http:// nor ftp://
    URIs.  (It is used only for file:// URIs.)
    On Windows, download.file(method = "wininet") no longer supports
    ftp:// URIs.  (It is no longer the default method, which is
    "libcurl" and does.)
    On Windows, the deprecated method = "wininet" now gives a warning
    for http:// and https:// URIs for both download.file() and url().
    (It is no longer the default method.)
  * On Windows, the command-line option --max-mem-size and
    environment variable R_MAX_MEM_SIZE are defunct.  The memory
    allocation limit was important for 32-bit builds, but these are
    no longer supported.
  * default.stringsAsFactors() is now formally deprecated, where that
    was only mentioned on its regular help page, previously.  So it
    now gives a warning if called.
  * unix.time() is defunct now; it had been deprecated since R 3.4.0.
  BUG FIXES:
  * Setting digits = 0 in format(), print.default() (and hence
    typically print()) or options() is again invalid.  Its behaviour
    was platform-dependent, and it is unclear what "zero significant
    digits" should mean (PR#18098).
  * Messages from C code in the cairo section of package grDevices
    are now also offered for translation, thanks to Michael Chirico's
    PR#18123.
  * mean(x) with finite x now is finite also without "long.double"
    capability.
  * R CMD Rd2pdf no longer leaves an empty build directory behind
    when it aborts due to an already existing output file.  (Thanks
    to Sebastian Meyer's PR#18141.)
  * density(x, weights = w, na.rm = TRUE) when anyNA(x) is true, now
    removes weights "in parallel" to x, fixing PR#18151, reported by
    Matthias Gondan.  Additionally, it gets a subdensity option.
  * Conversion of \Sexpr[]{&lt;expR&gt;} to LaTeX or HTML no longer
    produces long blocks of empty lines when &lt;expR&gt; itself contains
    several lines all producing empty output.  Thanks to a report and
    patch by Ivan Krylov posted to R-devel.
  * R CMD build no longer fails if a package vignette uses child
    documents and inst/doc exists.  (Thanks to Sebastian Meyer's
    PR#18156.)
  * When an R documentation ('help' source) file man/foo.Rd in a
    package has \donttest{..} examples with a syntax error, it is now
    signalled as ERROR and with correct line numbers relating to the
  * -Ex.R file, thanks to Duncan Murdoch and Sebastian Meyer's
    reports and patch proposals in PR#17501.
  * Improved determination of the correct translation domain in
    non-base packages, addressing the combination of PR#18092 and
    PR#17998 (#c6) with reports and _augmented_ patch #2904 by
    Suharto Anggono.
    Note that "R-base" is no longer the default domain e.g., for
    top-level calls to gettext(); rather translation needs explicit
    domain = * specification in such cases.
  * identical(attrib.as.set=FALSE) now works correctly with data
    frames with default row names (Thanks to Charlie Gao's PR#18179).
  * txtProgressBar() now enforces a non-zero width for argument char,
    without which no progress can be visible.
  * dimnames(table(d)) is more consistent in the case where d is a
    list with a single component, thanks to Thomas Soeiro's report to
    R-devel.
    Further, table(d1, d2) now gives an error when d1 and d2 are data
    frames as suggested by Thomas in PR#18224.
  * Fix for drawing semi-transparent lines and fills on the native
    Windows graphics device (PR#18219 and PR#16694).  Thanks to Nick
    Ray for helpful diagnosis on Bugzilla.
  * The deparser now wraps sub-expressions such as if(A) ..  with
    parentheses when needed; thanks to Duncan Murdoch's PR#18232 and
    Lionel Henry's patches there.
  * remove.packages() no longer tries to uninstall Priority: base
    packages, thanks to a report and suggestions by Colin Fay in
    PR#18227.
  * win.metafile() now has xpinch and ypinch arguments so that the
    user can override Windows' (potentially wrong) guess at device
    dimensions.
  * x[i] and x[[i]] for non-integer i should now behave in all cases
    as always documented: the index used is equivalent to
    as.integer(i) unless that would overflow where trunc(i) is used
    instead; thanks to Suharto Anggono's report and patch proposals
    in PR#17977.
  * asOneSidedFormula() now associates the resulting formula with the
    global environment rather than the evaluation environment created
    for the call.
  * &lt;bibentry&gt;$name now matches the field name case-insensitively,
    consistent with bibentry() creation and the replacement method.
  * cbind() failed to detect some length mismatches with a mixture of
    time-series and non-time-series inputs.
  * The default LaTeX style file Sweave.sty used by the RweaveLatex
    driver no longer loads the obsolete ae package; thanks to a
    report by Thomas Soeiro in PR#18271.  Furthermore, it now skips
    \usepackage[T1]{fontenc} for engines other than pdfTeX (if
    detected) or if the new [nofontenc] option is used.
  * smooth.spline() now stores its logical cv argument more safely,
    fixing a rare bug when printing, and also stores n.
  * smooth.spline(x,y,*) now computes the cv.crit statistic
    correctly, also when is.unsorted(x), fixing PR#18294.
  * The data.frame method of rbind() now warns when binding
    not-wholly-recycling vectors, by analogy to the default method
    (for matrices).
  * setAs() finds the correct class for name to when multiple
    packages define a class with that name. Thanks to Gabor Csardi
    for the report.
  * Fix for detaching a package when two classes of the same name are
    present in method signatures for the same generic. Thanks to
    Gabor Csardi for the report.
  * match.arg("", c("", "a", "B")) gives a better error message, in
    part from PR#17959, thanks to Elin Waring.
  * R CMD Sweave --clean no longer removes pre-existing files or
    subdirectories (PR#18242).
  * The quartz() device no longer splits polylines into subpaths.
    That has caused narrowly-spaced lines with many points to always
    look solid even when dashed line type was used due to dash phase
    restarts.
  * Deparsing constructs such as quote(1 + `!`(2) + 3) works again as
    before R 3.5.0, thanks to the report and patch in PR#18284 by
    Suharto Anggono.
  * as.list(f) for a factor f now keeps names(f), fixing PR#18309.
  * qbeta(.001, .9, .009) and analogous qf() calls now return a
    correct value instead of NaN or wrongly 1, all with a warning;
    thanks to the report by Ludger Goeminne in PR#18302.
  * plot.lm() failed to produce the plot of residuals vs.  factor
    levels (i.e., which=5 when leverages are constant) for models
    with character predictors (PR#17840).
  * interaction.plot(..., xtick = TRUE) misplaced the x-axis line
    (PR#18305).
  * Not strictly fixing a bug, format()ing and print()ing of
    non-finite Date and POSIXt values NaN and +/-Inf no longer show
    as NA but the respective string, e.g., Inf, for consistency with
    numeric vector's behaviour, fulfilling the wish of PR#18308.
  * R CMD check no longer runs test scripts generated from
    corresponding .Rin files twice and now signals an ERROR if
    processing an .Rin script fails.
  * tools::Rd2txt() used for plain-text help pages now renders \hrefs
    (if tools::Rd2txt_options(showURLs = TRUE)) and \urls with
    percent-encoding and standards-compliant delimiting style (angle
    brackets and no URL: prefix).  \email is now rendered with a
    mailto: prefix.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1655985600">- CHANGES IN R 4.2.1:
  NEW FEATURES:
  * New function utils::findCRANmirror() to find out if a CRAN mirror
    has been selected, otherwise fallback to the main site.  This
    behaves in the same way as tools::CRAN_package_db() and is
    intended for packages wishing to access CRAN for purposes other
    than installing packages.
    The need for this was shown by a day when the main CRAN website
    was offline and a dozen or so packages which had its URL
    hardcoded failed their checks.
  INSTALLATION on a UNIX-ALIKE:
  * The libraries searched for by --with-blas (without a value) now
    include BLIS (after OpenBLAS but before ATLAS).  And on macOS,
    the Accelerate framework (after ATLAS).  (This is patterned after
    the AX_BLAS macro from the Autoconf Archive.)
  * The included LAPACK sources have been updated to 3.10.1.
  UTILITIES:
  * The (full path to) the command tidy to be used for HTML
    validation can be set by environment variable R_TIDYCMD.
  * Setting environment variable _R_CHECK_RD_VALIDATE_RD2HTML_ to a
    false value will override R CMD check --as-cran and turn off HTML
    validation.  This provides a way to circumvent a problematic
    tidy.
    The 2006 version that ships with macOS is always skipped.
  C-LEVEL FACILITIES:
  * The undocumented legacy declarations of Sint, Sfloat, SINT_MAX
    and SINT_MIN in header R.h are deprecated.
  BUG FIXES:
  * fisher.test(d) no longer segfaults for "large" d; fixing PR#18336
    by preventing/detecting an integer overflow reliably.
  * tar(., files=*) now produces correctly the warning about invalid
    uid or gid of files, fixing PR#18344, reported by Martin Morgan.
  * tk_choose.files() with multi = FALSE misbehaved on paths
    containing spaces (PR#18334) (regression introduced in R 4.0.0).
  * sort(x, partial = ind, *) now works correctly notably for the
    non-default na.last = FALSE or TRUE, fixing PR#18335 reported by
    James Edwards.
  * Environment variable _R_CHECK_XREFS_REPOSITORIES_ is only used
    for checking .Rd cross-references in R CMD check (as documented)
    and not for other uses looking for a CRAN mirror.
  * The search for a CRAN mirror when checking packages now uses
    getOption("repos") if that specifies a CRAN mirror, even when it
    does not also specify all three Bioconductor repositories (as was
    previously required).
  * The HTML code generated by tools::Rd2HTML() has been improved to
    pass tidy 5.8.0.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1667217600">- CHANGES IN R 4.2.2:
  NEW FEATURES:
  * tools::Rdiff(useDiff = TRUE) checks for the presence of an
    external diff command and switches to useDiff = FALSE if none is
    found.  This allows R CMD Rdiff to always work.
  * On Windows, environment variable R_LIBCURL_SSL_REVOKE_BEST_EFFORT
    can be used to switch to only 'best-effort' SSL certificate
    revocation checks with the default "libcurl" download method.
    This reduces security, but may be needed for downloads to work
    with MITM proxies (PR#18379).
  * (macOS) The run-time check for libraries from XQuartz for X11 and
    Tcl/Tk no longer uses otool from the Apple Developer Tools
    (PR#18400).
  * The LaTeX style for producing the PDF manuals, Rd.sty, now loads
    the standard amsmath, amsfonts and amssymb packages for greater
    coverage of math commands in the Rd \eqn and \deqn macros.  The
    \mathscr LaTeX command is also provided (via the mathrsfs
    package, if available, or the amsfonts bundle otherwise),
    fulfilling the wish of PR#18398.
  * (Windows) The default format of readClipboard() and
    writeClipboard() has been changed to 13 (CF_UNICODETEXT).
  INSTALLATION on a UNIX-ALIKE:
  * The PDF manuals (if built) can be compacted by the new target
    make compact-pdf (at the top level or in directory doc/manual).
  * There is now configure support for LLVM clang 15 on Linux, which
    defaults to position-independent (PIE) executables whereas
    gfortran does not.
  * Many small changes to ease compilation (and suppress warnings)
    with LLVM clang 15.
  BUG FIXES:
  * Rscript -e would fail if stdin were closed (Reported by Henrik
    Bengtsson.)
  * qt(*, log.p=TRUE) in outer tails no longer produces NaN in its
    final steps, thus fixing PR#18360.
  * tools::Rd2latex() now escapes hashes and ampersands when writing
    URLs, fixing LaTeX errors with such URLs in \tabular.
  * When isGeneric(f, fdef=*) is used with mismatching names, the
    warning is better understandable; reported (with fix) in PR#18370
    by Gabe Becker.
  * poly(x, n) now works again (and is now documented) when x is a
    "Date" or "POSIXct" object, or of another class while fulfilling
    mode(x) == "numeric".  This also enables poly(x, *, raw=TRUE) for
    such variables.  Reported by Michael Chirico to R-devel.
  * write.table(), write.csv() and write.csv2() restore their
    numerical precision (internal equivalent of digits = 15) after an
    interrupt (PR#18384).
  * One can now read also byte FF from a clipboard connection
    (PR#18385).
  * source("") and source(character()) now give more helpful error
    messages.
  * R CMD check --as-cran set _R_CHECK_TIMINGS_ too late to have the
    intended effect.
  * as.POSIXlt(x) now also works with very large dates x, fixing
    PR#18401 reported by Hannes M"uhleisen.
  * Files can now be extracted even from very large zip archives
    (PR#18390, thanks to Martin Jakt).
  * Non-finite objects of class "POSIXlt" are now correctly coerced
    to classes "Date" and "POSIXct"; following up on the extension to
    format() them correctly.
  * Added methods for is.finite(), is.infinite() and is.nan() for
    "POSIXlt" date-time objects.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1678881600">- CHANGES IN R 4.2.3:
  C-LEVEL FACILITIES:
  * The definition of DL_FUNC in R_ext/Rdynload.h has been changed to
    be fully C-compliant.  This means that functions loaded _via_ for
    example R_GetCCallable need to be cast to an appropriate type if
    they have any arguments.
  * .Machine has a new element sizeof.time_t to identify old systems
    with a 32-bit type and hence a limited range of date-times (and
    limited support for dates millions of years from present).
  PACKAGE INSTALLATION:
  * (Windows) The default C++ standard had accidentally been left at
    C++11 when it was changed to C++14 on Unix.
  BUG FIXES:
  * As "POSIXlt" objects may be "partially filled" and their list
    components meant to be recycled, length() now is the length of
    the longest component.
  * as.POSIXlt.Date() could underflow for dates in the far past (more
    than half a million years BCE).
  * as.Date.POSIXlt(x) would return "1970-01-01" instead of NA in R
    4.2.2, e.g., for
    x &lt;- as.POSIXlt(c("2019-01-30","2001-1-1"))
    x$mon &lt;- c(0L, NA); as.Date(x)
  * R CMD check failed to apply enabled _R_CHECK_SUGGESTS_ONLY_ to
    examples and vignettes (regression in R 4.2.0).
  * R CMD check did not re-build vignettes in separate processes by
    default (regression in R 4.2.0).
  * Running examples from HTML documentation now restores previous
    knitr settings and options (PR#18420).
  * Quartz: fonts are now located using Core Graphics API instead of
    deprecated ATS which is no longer supported in the macOS 13 SDK
    (PR#18426).  This also addresses an issue where the currently
    used font in the Quartz device context was not correctly
    retained.
  * (Windows) Math symbols in text drawing functions are again
    rendered correctly (PR#18440).  This fixes a regression in R
    4.2.1 caused by a fix in PR#18382 which uncovered an issue in
    GraphApp due to which the symbol charset was not used with TT
    Symbol font face.
  * (Windows) Installing a package with a src/Makefile.{win,ucrt}
    file includes ~/.R/Makevars.win64 in the search for user
    makevars, as documented in "R Installation and Administration"
    and done for packages with a src/Makevars.{win,ucrt} file.
  * format(&lt;POSIXlt_w/_unbalanced_sec&gt;, "....%OS&lt;n&gt;") with n &gt; 0 no
    longer accidentally uses the unbalanced seconds, thanks to
    Suharto Anggono's report (including patch) in PR#18448.
  * solve.default(a, b) works around issues with some versions of
    LAPACK when a contains NA or NaN values.
  * When UseMethod() cannot dispatch, it no longer segfaults
    producing the error message in case of a long class(), thanks to
    Joris Vankerschaver's report (including patch) in PR#18447.
  * When example(foo, ..) produces graphics on an interactive device
    it needs to open itself, it now leaves devAskNewPage() unchanged
    even when it was FALSE, thus fixing a 14 years old '&lt;FIXME&gt;'.
  * packageDescription() again catches errors from encoding
    conversions. This also fixes broken packageVersion() in C locale
    on systems where iconv does not support transliteration.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1681128000">- add patch to build with libcurl &gt;= 8</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1682078400">- CHANGES IN R 4.3.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Calling &amp;&amp; or || with LHS or (if evaluated) RHS of length greater
    than one is now always an error, with a report of the form
    'length = 4' in coercion to 'logical(1)'
    Environment variable _R_CHECK_LENGTH_1_LOGIC2_ no longer has any
    effect.
  NEW FEATURES:
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.10.1.  (This caused some platform-dependent
    changes to package check output.)  And then to the sources from
    LAPACK version 3.11.0 (with changes only to double complex
    subroutines).
  * The included LAPACK sources have been updated to include the four
    Fortran 90 routines rather than their Fortran 77 predecessors.
    This may give some different signs in SVDs or
    eigendecompositions..  (This completes the transition to LAPACK
    3.10.x begun in R 4.2.0.)
  * The LAPACK sources have been updated to version 3.11.0.  (No new
    subroutines have been added, so this almost entirely bug fixes:
    Those fixes do affect some computations with NaNs, including R's
    NA.)
  * The parser now signals _classed_ errors, notably in case of the
    pipe operator |&gt;.  The error object and message now give line and
    column numbers, mostly as proposed and provided by Duncan Murdoch
    in PR#18328.
  * toeplitz() is now generalized for asymmetric cases, with a
    toeplitz2() variant.
  * xy.coords() and xyz.coords() and consequently, e.g., plot(x,y,
    log = "y") now signal a _classed_ warning about negative values
    of y (where log(.) is NA).  Such a warning can be specifically
    suppressed or caught otherwise.
  * Regular expression functions now check more thoroughly whether
    their inputs are valid strings (in their encoding, e.g. in
    UTF-8).
  * The performance of grep(), sub(), gsub() and strsplit() has been
    improved, particularly with perl = TRUE and fixed = TRUE.  Use of
    useBytes = TRUE for performance reasons should no longer be
    needed and is discouraged: it may lead to incorrect results.
  * apropos() gains an argument dot_internals which is used by the
    completion (help(rcompgen)) engine to also see base internals
    such as .POSIXct().
  * Support in tools::Rdiff() for comparing uncompressed PDF files is
    further reduced - see its help page.
  * qqplot(x, y, ...) gains conf.level and conf.args arguments for
    computing and plotting a confidence band for the treatment
    function transforming the distribution of x into the distribution
    of y (Switzer, 1976, _Biometrika_). Contributed by Torsten
    Hothorn.
  * Performance of package_dependencies() has been improved for cases
    when the number of dependencies is large.
  * Strings newly created by gsub(), sub() and strsplit(), when any
    of the inputs is marked as "bytes", are also marked as "bytes".
    This reduces the risk of creating invalid strings and accidental
    substitution of bytes deemed invalid.
  * Support for readLines(encoding = "bytes") has been added to allow
    processing special text files byte-by-byte, without creating
    invalid strings.
  * iconv(from = "") now takes into account any declared encoding of
    the input elements and uses it in preference to the native
    encoding.  This reduces the risk of accidental creation of
    invalid strings, particularly when different elements of the
    input have different encoding (including "bytes").
  * Package repositories in getOption("repos") are now initialized
    from the repositories file when utils is loaded (if not already
    set, e.g., in .Rprofile).  (From a report and patch proposal by
    Gabriel Becker in PR#18405.)
  * compactPDF() gets a verbose option.
  * type.convert() and hence read.table() get new option tryLogical =
    TRUE with back compatible default.  When set to false, converts
    "F" or "T" columns to character.
  * Added new unit prefixes "R" and "Q" for abbreviating
    (unrealistically large) sizes beyond 10^{27} in standard = "SI",
    thanks to Henrik Bengtsson's PR#18435.
  * as.data.frame()'s default method now also works fine with atomic
    objects inheriting from classes such as "roman", "octmode" and
    "hexmode", such fulfilling the wish of PR#18421, by Benjamin
    Feakins.
  * The as.data.frame.vector() utility now errors for wrong-length
    row.names.  It warned for almost six years, with "Will be an
    error!".
  * sessionInfo() now also contains La_version() and reports codepage
    and timezone when relevant, in both print() and toLatex() methods
    which also get new option tzone for displaying timezone
    information when locale = FALSE.
  * New function R_compiled_by() reports the C and Fortran compilers
    used to build R, if known.
  * predict(&lt;lm&gt;, newdata = *) no longer unnecessarily creates an
    offset of all 0s.
  * solve() for complex inputs now uses argument tol and by default
    checks for 'computational singularity' (as it long has done for
    numeric inputs).
  * predict(&lt;rank-deficient lm&gt;, newdata=*) now obeys a new argument
    rankdeficient, with new default "warnif", warning only if there
    are non-estimable cases in newdata.  Other options include
    rankdeficient = "NA", predicting NA for non-estimable newdata
    cases.  This addresses PR#15072 by Russ Lenth and is based on his
    original proposal and discussions in PR#16158 also by David Firth
    and Elin Waring.  Still somewhat experimental.
  * Rgui console implementation now works better with the NVDA screen
    reader when the full blinking cursor is selected.  The underlying
    improvements in cursor handling may help also other screen
    readers on Windows.
  * The drop-field control in GraphApp can now be left with the TAB
    key and all controls can be navigated in the reverse order using
    the Shift+TAB key, improving accessibility of the Rgui
    configuration editor.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now fully accurate
    (instead of to "only" minimally five digits).
  * demo(error.catching) now also shows off withWarnings() and
    tryCatchWEMs().
  * As an experimental feature the placeholder _ can now also be used
    in the rhs of a forward pipe |&gt; expression as the first argument
    in an extraction call, such as _$coef. More generally, it can be
    used as the head of a chain of extractions, such as _$coef[[2]].
  * Spaces in the environment variable used to choose the R session's
    temporary directory (TMPDIR, TMP and TEMP are tried in turn) are
    now fatal.  (On Windows the 'short path' version of the path is
    tried and used if that does not contain a space.)
  * all.equal.numeric() gets a new optional switch giveErr to return
    the numeric error as attribute.  Relatedly,
    stopifnot(all.equal&lt;some&gt;(a, b, ..)) is as "smart" now, as
    stopifnot(all.equal(....)) has been already, thus allowing
    customized all.equal&lt;Some&gt;() wrappers.
  * R on Windows is now able to work with path names longer than 260
    characters when these are enabled in the system (requires at
    least Windows 10 version 1607).  Packages should be updated to
    work with long paths as well, instead of assuming PATH_MAX to be
    the maximum length.  Custom front-ends and applications embedding
    R need to update their manifests if they wish to allow this
    feature.  See
    &lt;https://blog.r-project.org/2023/03/07/path-length-limit-on-windows&gt;
    for more information.
  * 'Object not found' and 'Missing argument' errors now give a more
    accurate error context. Patch provided by Lionel Henry in
    PR#18241.
  * The @ operator is now an S3 generic. Based on contributions by
    Tomasz Kalinowski in PR#18482.
  * New generic chooseOpsMethod() provides a mechanism for objects to
    resolve cases where two suitable methods are found for an Ops
    Group Generic. This supports experimenting with alternative
    object systems. Based on contributions by Tomasz Kalinowski in
    PR#18484.
  * inherits(x, what) now accepts values other than a simple
    character vector for argument what. A new generic, nameOfClass(),
    is called to resolve the class name from what. This supports
    experimenting with alternative object systems. Based on
    contributions by Tomasz Kalinowski in PR#18485.
  * Detection of BLAS/LAPACK in use (sessionInfo()) with FlexiBLAS
    now reports the current backend.
  * The "data.frame" method for subset() now warns about extraneous
    arguments, typically catching the use of = instead of == in the
    subset expression.
  * Calling a:b when numeric a or b is longer than one may now be
    made into an error by setting environment variable
    _R_CHECK_LENGTH_COLON_ to a true value, along the proposal in
    PR#18419 by Henrik Bengtsson.
  * density(x, weights = *) now warns if automatic bandwidth
    selection happens without using weights; new optional warnWbw may
    suppress the warning.  Prompted by Christoph Dalitz' PR#18490 and
    its discussants.
  * rm(list = *) is faster and more readable thanks to Kevin Ushey's
    PR#18492.
  * The plot.lm() function no longer produces a normal Q-Q plot for
    GLMs. Instead it plots a half-normal Q-Q plot of the absolute
    value of the standardized deviance residuals.
  * The print() method for class "summary.glm" no longer shows
    summary statistics for the deviance residuals by default.  Its
    optional argument show.residuals can be used to show them if
    required.
  * The tapply() function now accepts a data frame as its X argument,
    and allows INDEX to be a formula in that case. by.data.frame()
    similarly allows INDICES to be a formula.
  * The performance of df[j] &lt;- value (including for missing j) and
    write.table(df) has been improved for data frames df with a large
    number of columns.  (Thanks to Gabriel Becker's PR#18500,
    PR#18503 and discussants, prompted by a report from Toby Dylan
    Hocking on the R-devel mailing list.)
  * The matrix multiply operator %*% is now an S3 generic, belonging
    to new group generic matrixOps.  From Tomasz Kalinowski's
    contribution in PR#18483.
  * New function array2DF() to convert arrays to data frames,
    particularly useful for the list arrays created by tapply().
  DATES and TIMES:
  * On platforms where (non-UTC) datetimes before 1902 (or before
    1900 as with system functions on recent macOS) are guessed by
    extrapolating time zones from 1902-2037, there is a warning at
    the first use of extrapolation in a session.  (As all time zones
    post 2037 are extrapolation, we do not warn on those.)
  * (Platforms using --with-internal-tzone, including Windows and by
    default macOS). How years are printed in dates or date-times can
    be controlled by environment variable R_PAD_YEARS_BY_ZERO.  The
    default remains to pad to 4 digits by zeroes, but setting value
    no gives no padding (as used by default by glibc).
  * strftime() tries harder to determine the offset for the "%z"
    format, and succeeds on the mainstream R platforms.
  * strftime() has a limit of 2048 bytes on the string produced -
    attempting to exceed this is an error.  (Previously it silently
    truncated at 255 bytes.)
  * sessionInfo() records (and by default prints) the system time
    zone as part of the locale information.  Also, the source
    (system/internal) of the date-time conversion and printing
    functions.
  * Objects of class "POSIXlt" created in this version of R always
    have 11 components: component zone is always set, and component
    gmtoff is set for times in UTC and usually set on the (almost
    all) platforms which have C-level support, otherwise is NA.
  * There are comprehensive validity checks on the structure of
    objects of class "POSIXlt" when converting (including formatting
    and printing).  (This avoids mis-conversions of hand-crafted
    objects.)
  * There is some support for using the native date-time routines on
    macOS: this is only viable on recent versions (e.g. 12.6 and 13)
    and does get wrong some historical changes (before 1900, during
    WWII).  Use of --with-internal-tzone remains the default.
  * as.POSIXct(&lt;numeric&gt;) and as.POSIXlt(.) (without specifying
    origin) now work.  So does as.Date(&lt;numeric&gt;).
  * as.Date.POSIXct(., tz) now treats several tz values, notably
    "GMT" as equivalent to "UTC", proposed and improved by Michael
    Chirico and Joshua Ulrich in PR#17674.
  * Experimental balancePOSIXlt() utility allows using "ragged" and
    or out-of-range "POSIXlt" objects more correctly, e.g., in
    subsetting and subassignments.  Such objects are now documented.
    More experimentally, a "POSIXlt" object may have an attribute
    "balanced" indicating if it is known to be filled or fully
    balanced.
  * Functions axis.Date() and axis.POSIXct() are rewritten to gain
    better default tick locations and better default formats by using
    prettyDate(). Thanks to Swetlana Herbrandt.
  * The mapping of Windows' names for time zones to IANA's 'Olson'
    names has been updated.  When ICU is available (it is by
    default), it is used to get a mapping for the current region set
    in Windows.  This can be overridden by setting environment
    variable TZ to the desired Olson name - see OlsonNames() for
    those currently available.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 16
    and so packages that provide graphics devices should be
    reinstalled.
  * The grDevices and grid packages have new functions for rendering
    typeset glyphs, primarily: grDevices::glyphInfo() and
    grid::grid.glyph().
    Rendering of typeset glyphs is only supported so far on the
    Cairo-based graphics devices and on the pdf() and quartz()
    devices.
  * The defined behaviour for "clear" and "source" compositing
    operators (via grid::grid.group()) has been changed (to align
    better with simple interpretation of original Porter-Duff
    definitions).
  * Support for gradients, patterns, clipping paths, masks, groups,
    compositing operators, and affine transformations has been added
    to the quartz() device.
  INSTALLATION on a UNIX-ALIKE:
  * A system installation of generic LAPACK 3.10.0 or later will be
    preferred to the version in the R sources.
    configure option --with-lapack=no (equivalently --without-lapack)
    forces compilation of the internal LAPACK sources.
    If --with-lapack is not specified, a system liblapack is looked
    for and used if it reports version 3.10.0 or later and does not
    contain BLAS routines.
    Packages using LAPACK will need to be reinstalled if this changes
    to using an external library.
  * On aarch64 Linux platforms using GCC, configure now defaults to
  - fPIC (instead of -fpic), as desired in PR#18326.
  * configure now checks conversion of datetimes between POSIXlt and
    POSIXct around year 2020.  Failure (which has been seen on
    platforms missing tzdata) is fatal.
  * If configure option --with-valgrind-instrumentation is given
    value 1 or 2, option --with-system-valgrind-headers is now the
    default and ignored (with a warning).  It is highly recommended
    that the system headers are installed alongside valgrind: they
    are part of its packaging on some Linux distributions and
    packaged separately (e.g. in the valgrind-devel RPM) on others.
    configure will give a warning if they are not found.
    The system headers will be required in a future release of R to
    build with valgrind instrumentation.
  * libcurl 8.x is now accepted by configure: despite a change in
    major version number it changes neither API nor ABI.
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools43, an update of the Rtools42 toolchain.  It is
    based on gcc 12 and newer versions of MinGW-W64, binutils and
    libraries.  At this time R-devel can still be built using
    Rtools42 without changes, but when R-devel is installed via the
    installer, it will by default look for Rtools43.
  * Old make targets rsync-extsoft and 32-bit ones that are no longer
    needed have been removed.
  * Default builds (including for packages) no longer select C99.
    Thus the C standard used is the default for the compiler, which
    for the toolchain in Rtools43 is C17.  (This is consistent with
    Unix builds.)
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++17 where
    available (which it is on all currently checked platforms): if
    not C++14 or C++11 is used if available otherwise C++ is not
    supported.
  * USE_FC_LEN_T is the default: this uses the correct
    (compiler-dependent) prototypes for Fortran BLAS/LAPACK routines
    called from C/C++, and requires adjustment of many such calls -
    see 'Writing R Extensions' SS6.6.1.
  * There is initial support for C++23 as several compilers are now
    supporting -std=c++23 or -std=c++2b or similar.  As for C++20,
    there no additional configure checks for C++23 features beyond a
    check that the compiler reports a __cplusplus value greater than
    that in the C++20 standard.  C++ feature tests should be used.
  * There is support for a package to indicate the version of the C
    standard which should be used to compile it, and for the
    installing user to specify this.  In most cases R defaults to the
    C compiler's default standard which is C17 (a `bug-fix' of C11) -
    earlier versions of R or compilers may have defaulted to C99.
    Current options are:
    USE_C17 Use a standard that is at most C17.  The intention is to
    allow legacy packages to still be installed when later C
    standards become the default, including packages using new
    keywords as identifiers or with K&amp;R-style function
    declarations.  This will use C17 if available, falling back
    to C11.
    USE_C90 Use the C90 (aka C89) standard.  (As that standard did
    not require compilers to identify that version, all we can
    verify is that the compiler does not claim to be using a
    later standard.  It may accept C99 features - for example
    clang accepts // to make comments.)
    USE_C99 Use the C99 standard. This should be rarely needed - it
    avoids the few new features of C11/C17 which can be useful if
    a package assumes them if C17 is specified and they are not
    implemented.
    USE_C23 Use C23 (or in future, later).  Compiler/library support
    for C23 is still being implemented, but LLVM clang from
    15.0.0 and the upcoming GCC 13 have quite extensive support.
    These can be specified as part of the SystemRequirements field in
    the package's DESCRIPTION file or _via_ options --use-C17 and so
    on of R CMD INSTALL and R CMD SHLIB.
    For further details see "Writing R Extensions" SS1.2.5.
  * (Windows) A src/Makefile.ucrt or src/Makefile.win file is now
    included after R_HOME/etcR_ARCH/Makeconf and so no longer needs
    to include that file itself.  Installation of a package with such
    a file now uses a site Makevars file in the same way as a package
    with a src/Makevars.win file would.
  * configure is now passed crucial variables such as CC and CFLAGS
    in its environment, as many packages were not setting them (as
    documented in 'Writing R Extensions' SS1.2).
    This has most effect where configure is used to compile parts of
    the package - most often by cmake or libtool which obfuscate the
    actual compile commands used.
    Also used for configure.win and configure.ucrt on Windows.
  FORTRAN FLAGS:
  * The flag -fno-optimize-sibling-calls is no longer forced for
    gfortran 7 and later.  It should no longer be needed now using
    'hidden' character-length arguments when calling BLAS/LAPACK
    routines from C/C++ is the default even for packages.  (Unless
    perhaps packages call Fortran code from C/C++ without using R's
    headers and without allowing for these arguments.)
  C-LEVEL FACILITIES:
  * The deprecated S-compatibility macros DOUBLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * The deprecated legacy typedefs of Sint and Sfloat in header R.h
    are no longer defined, and that header no longer includes header
    limits.h from C nor climits from C++.
  * New macro CAD5R() is provided in Rinternals.h and used in a few
    places in the R sources.
  * ALTREP now supports VECSXP vectors. Contributed by Gabor Csardi
    in PR#17620.
  * The Rcomplex definition (in header R_ext/Complex.h) has been
    extended to prevent possible mis-compilation when interfacing
    with Fortran (PR#18430).  The new definition causes compiler
    warnings with static initializers such as {1, 2}, which can be
    changed to {.r=1, .i=2}.
    Using the new definition from C++ depends on compiler extensions
    supporting C features that have not been incorporated into the
    C++ standards but are available in g++ and clang++: this may
    result in C++ compiler warnings but these have been worked around
    for recent versions of common compilers (GCC, Apple/LLVM clang,
    Intel).
    It is intended to change the inclusion of header R_ext/Complex.h
    by other R headers, so C/C++ code files which make use of
    Rcomplex should include that header explicitly.
  UTILITIES:
  * R CMD check does more checking of package .Rd files, warning
    about invalid email addresses and (some) invalid URIs and noting
    empty \item labels in description lists.
  * R CMD check now also reports problems when reading package news
    in md (file NEWS.md) and (optionally) plain text (file NEWS)
    formats.
  * _R_CHECK_TIMINGS_ defaults to a value from the environment even
    for R CMD check --as-cran; this allows for exceptionally fast or
    slow platforms.
    It now applies to checking PDF and HTML versions of the manuals,
    and 'checking CRAN incoming feasibility'.
  * R CMD check can optionally (but included in --as-cran) check
    whether HTML math rendering _via_ KaTeX works for the package .Rd
    files.
  * Non-interactive debugger invocations can be trapped by setting
    the environment variable _R_CHECK_BROWSER_NONINTERACTIVE_ to a
    true value.  This is enabled by R CMD check --as-cran to detect
    the use of leftover browser() statements in the package.
  * The use of sprintf and vsprintf from C/C++ has been deprecated in
    macOS 13 and is a known security risk.  R CMD check now reports
    (on all platforms) if their use is found in compiled code:
    replace by snprintf or vsnprintf respectively. [*NB:* whether
    such calls get compiled into the package is platform-dependent.]
  * Where recorded at installation, R CMD check reports the C and
    Fortran compilers used to build R.
    It reports the OS in use (if known, as given by osVersion) as
    well as that R was built for.
    It notes if a C++ standard was specified which is older than the
    current default: many packages have used C++11 to mean 'not
    C++98' - as C++11 is the minimum supported since R 4.0.0, that
    specification can probably be removed.
  * R CMD INSTALL reports the compilers (and on macOS, the SDK) used,
    and this is copied to the output of R CMD check.
    Where a C++ standard is specified, it is reported.
  * R CMD check's 'checking compilation flags in Makevars' has been
    relaxed to accept the use of flags such as -std=f2008 in
    PKG_FFLAGS.
  * tools::buildVignettes() has a new argument skip, which is used by
    R CMD check to skip (and note) vignettes with unavailable
    \VignetteDepends (PR#18318).
  * New generic .AtNames() added to enable class-specific completions
    after @. The formerly internal function findMatches() is now
    exported, mainly for use in methods for .DollarNames() and
    .AtNames().
  DEPRECATED AND DEFUNCT:
  * default.stringsAsFactors() is defunct.
  * Calling as.data.frame.&lt;class&gt;() directly (for 12 atomic classes)
    is going to be formally deprecated, currently activated by
    setting the environment variable
    _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ to non-empty, which also
    happens in R CMD check --as-cran.
  BUG FIXES:
  * Hashed environments with sizes less than 5 can now grow.
    (Reported to R-devel by Duncan Garmonsway.)
  * as.character(&lt;Rd&gt;, deparse = TRUE) failed to re-escape curly
    braces in LaTeX-like text.  (Reported by Hadley Wickham in
    PR#18324.)
  * library() now passes its lib.loc argument when requiring Depends
    packages; reported (with fix) in PR#18331 by Mikael Jagan.
  * R CMD Stangle: improved message about 'Output' files.
  * head(x, n) and tail(x, n) now signal an error if n is not
    numeric, instead of incidentally "working" sometimes returning
    all of x.  Reported and discussed by Colin Fay, in PR#18357.
  * The "lm" method for summary() now gives the correct F-statistic
    when the model contains an offset.  Reported in PR#18008.
  * C() and `contrasts&lt;-`() now preserve factor level names when
    given a function object (as opposed a function name which did
    preserve names). Reported in PR#17616.
  * c(a = 1, 2)[[]] no longer matches 2 but rather signals a
    _classed_ error.  Reported and analysed by Davis Vaughan in
    PR#18367, a duplicate of PR#18004, by Jan Meis et al.  For
    consistency, NULL[[]] is also erroneous now.  x[[]] &lt;- v gives an
    error of the same class "MissingSubscriptError".
  * The relist() function of utils now supports NULL elements in the
    skeleton (PR#15854).
  * ordered(levels = *) (missing x) now works analogously to factor(,
    ordered=TRUE); reported (with fix) by Achim Zeileis in PR#18389.
  * User-defined Rd macro definitions can now span multiple lines,
    thanks to a patch from Duncan Murdoch. Previously, the Rd parser
    silently ignored everything after the first line.
  * Plain-text help (tools::Rd2txt()) now preserves an initial blank
    line for text following description list items.
  * tools::Rd2HTML() and tools::Rd2latex() no longer split \arguments
    and \value lists at Rd comments.
  * tools::Rd2latex() now correctly handles optional text outside
    \items of argument lists as well as bracketed text at the
    beginning of sections, e.g., \value{[NULL]}.
  * as.character(&lt;POSIXt&gt;) now behaves more in line with the methods
    for atomic vectors such as numbers, and is no longer influenced
    by options().  Ditto for as.character(&lt;Date&gt;).  The
    as.character() method gets arguments digits and OutDec with
    defaults _not_ depending on options().  Use of as.character(*,
    format = .) now warns.
  * Similarly, the as.character.hexmode() and *.octmode() methods
    also behave as good citizen methods and back compatibility option
    keepStr = TRUE.
  * The as.POSIXlt(&lt;POSIXlt&gt;) and as.POSIXct(&lt;POSIXct&gt;) default
    methods now do obey their tz argument, also in this case.
  * as.POSIXlt(&lt;Date&gt;) now does apply a tz (time zone) argument, as
    does as.POSIXct(); partly suggested by Roland Fuss on the R-devel
    mailing list.
  * as.Date.POSIXlt(x) now also works when the list components are of
    unequal length, aka "partially filled" or "ragged".
  * expand.model.frame() looked up variables in the wrong environment
    when applied to models fitted without data.  Reported in
    PR#18414.
  * time() now (also) uses the ts.eps = getOption("ts.eps") argument
    and thus by default rounds values very close to the start (or
    end) of a year.  Based on a proposal by Andre"i V. Kostyrka on
    R-help.
  * Printing of a factanal() result with just one factor and sort =
    TRUE now works regularly, fixing PR#17863 by Timothy Bates,
    thanks to the 'R Contributors' working group.
  * Printing 0-length objects of class "factor", "roman", "hexmode",
    "octmode", "person", "bibentry", or "citation" now prints
    something better, one of which fixes PR#18422, reported by
    Benjamin Feakins.
  * Sys.timezone() queries timedatectl only if systemd is loaded;
    addressing a report by Jan Gorecki in PR#17421.
  * The formula method of cor.test() had scoping problems when
    environment(formula) was not the calling environment; reported
    with a patch proposal by Mao Kobayashi in PR#18439.
  * attach() of an environment with active bindings now preserves the
    active bindings.  Reported by Kevin Ushey in PR#18425.
  * BLAS detection now works also with system-provided libraries not
    available as regular files.  This fixes detection of the
    Accelerate framework on macOS since Big Sur.  Reported by David
    Novgorodsky.
  * download.file() gives a helpful error message in case of an
    invalid download.file.method option, thanks to Colin Fay's report
    in PR#18455.
  * Sporadic crashes of Rterm when using completion have been fixed.
  * Rprof() is now more reliable.  A livelock in thread
    initialization with too short sampling interval has been fixed on
    macOS.  A deadlock in using the C runtime has been fixed on
    Windows.  A potential deadlock has been prevented on Unix.
  * Cursor placement in Rgui now works even after a fixed-width font
    is selected.
  * Mandatory options (options()) are now set on startup so that
    saving and restoring them always works (PR#18372).
  * Package installation, R CMD INSTALL or install.packages(*), now
    parses each of the &lt;pkg&gt;/R/*.R files individually instead of
    first concatenating and then parse()ing the large resulting file.
    This allows parser or syntax errors to be diagnosed with correct
    file names and line numbers, thanks to Simon Dedman's report and
    Bill Dunlap's patch in PR#17859.
    This _does_ require syntactically self contained R source files
    now, fixing another inadvertent bug.
  * predict.lm(&lt;model with offset&gt;) now finds the offset in the
    correct environment, thanks to Andr'e Gillibert's report and patch
    in PR#18456.
  * getInitial(&lt;formula&gt;) now finds the selfStart model in the
    correct environment.  (Reported by Ivan Krylov in PR#18368.)
  * Fix for possible segfault when using recently-added graphics
    features, such as gradients, clipping paths, masks, and groups
    with pdf(file=NULL).
  * class(m) &lt;- class(m) no longer changes a matrix m by adding a
    class _attribute_.
  * packageDate(pkg) now only warns once if there is no pkg.
  * When ts() creates a multivariate time series, "mts", it also
    inherits from "array" now, and is.mts() is documented _and_
    stricter.
  * Rd2txt() now preserves line breaks of \verb Rd content and from
    duplicated \cr.  The former also fixes the rendering of verbatim
    output from Rd \Sexpr in plain-text help.
  * uniroot(f, interval) should no longer wrongly converge _outside_
    the interval in some cases where abs(f(x)) == Inf for an x at the
    interval boundary, thanks to posts by Ben Bolker and Serguei
    Sokol on R-devel.
  * Vectorized alpha handling in palette functions such as in gray(),
    rainbow(), or hcl.colors() works correctly now, thanks to Achim
    Zeileis' report and patch in PR#18476.
  * Formatting and print()ing of bibentry objects has dropped the
    deprecated citation.bibtex.max argument, such that the bibtex
    argument's default for print.bibentry() depends directly on the
    citation.bibtex.max option, whereas in format.bibentry() the
    option no longer applies.
  * Attempting to use a character string naming a foreign function
    entry point in a foreign function call in a package will now
    signal an error if the packages has called R_forceSymbols to
    specify that symbols must be used.
  * An error in table() could permanently set options(warn=2)
    promoting all subsequent warnings to errors.
  * The sigma() function gave misleading results for binary GLMs.  A
    new method for objects of class "glm" returns the square root of
    the estimate of the dispersion parameter using the same
    calculation as summary.glm().
  * bs() and ns() in the (typical) case of automatic knot
    construction, when some of the supposedly inner knots coincide
    with boundary knots, now moves them inside (with a warning),
    building on PR#18442 by Ben Bolker.
  * R CMD on Windows now skips the site profile with --no-site-file
    and --vanilla even when R_PROFILE is set (PR#18512, from Kevin
    Ushey).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1686916800">- CHANGES IN R 4.3.1:
  C-LEVEL FACILITIES:
  * The C-level API version of R's integrate(), Rdqags() in Applic.h,
    now returns the correct number of integrand evaluations neval,
    fixing PR#18515 reported and diagnosed by Stephen Wade.
  * The C prototypes for LAPACK calls dspgv and dtptrs in
    R_exts/Lapack.h had one too many and one too few character length
    arguments - but this has not caused any known issues. To get the
    corrected prototypes, include
    [#]include &lt;Rconfig.h&gt; // for PR18534fixed
    [#]ifdef PR18534fixed
    [#] define usePR18534fix 1
    [#]endif
    [#]include &lt;R_exts/Lapack.h&gt;
    in your C/C++ code (PR#18534).
  INSTALLATION:
  * Many of the checks of esoteric Internet operations and those
    using unreliable external sites have been moved to a new target
    that is not run by default and primarily intended for the core
    developers.  To run them use
    cd tests; make test-Internet-dev
  BUG FIXES:
  * .S3methods(), typically called from methods(), again marks
    methods from package base as visible.
    Also, the visibility of non-base methods is again determined by
    the method's presence in search().
  * tools::Rdiff() is now more robust against invalid strings, fixing
    installation tests on Windows without Rtools installed
    (PR#18530).
  * Fix (new) bug in hcl.colors(2, *), by Achim Zeileis (PR#18523).
  * head(., &lt;illegal&gt;) and tail(..) now produce more useful "Error in
    ...." error messages, fixing PR#18362.
  * Package code syntax on Windows is checked in UTF-8 when UTF-8 is
    the native encoding.
  * na.contiguous(x) now also returns the first run, when it is at
    the beginning and there is a later one of the same length;
    reported to R-devel, including a fix, by Georgi Boshnakov.
    Further, by default, it modifies only an existing attr(*,"tsp")
    but otherwise no longer sets one.
  * chol(&lt;not pos.def&gt;, pivot = &lt;T|F&gt;) now gives a correct error or
    warning message (depending on pivot), thanks to Mikael Jagan's
    (PR#18541).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1699012800">- CHANGES IN R 4.3.2:
  NEW FEATURES:
  * The default initialization of the "repos" option from the
    repositories file at startup can be skipped by setting
    environment variable R_REPOSITORIES to NULL such that
    getOption("repos") is empty if not set elsewhere.
  * qr.X() is now an implicit S4 generic in methods.
  * iconv(to = "ASCII//TRANSLIT") is emulated using substitution on
    platforms which do not support it (notably Alpine Linux).  This
    should give a human-readable conversion in ASCII on all platforms
    (rather than NA_character_).
  * trans3d() gains options continuous and verbose addressing the
    problem of possible "wrap around" when projecting too long
    curves, as reported by Achim Zeileis in PR#18537.
  * tools::showNonASCII() has been rewritten to work better on macOS
    14 (which has a changed implementation of iconv()).
  * tiff(type = "quartz") (the default on macOS) now warns if
    compression is specified: it continues to be ignored.
  INSTALLATION on a UNIX-ALIKE:
  * There is some support for building with Intel's LLVM-based
    compilers on x86_64 Linux, such as (C) icx, (C++) ipcx and
    (Fortran) ifx from oneAPI 2023.x.y.
  * There is support for using LLVM's flang-new as the Fortran
    compiler from LLVM 16.0.x (preferably 17.0.0 or later).
  UTILITIES:
  * R CMD check reports the use of the Fortran 90 random number
    generator RANDOM_NUMBER() and the subroutines to initialize it.
    'Writing R Extensions' has example code to use R's RNGs from
    Fortran.
  BUG FIXES:
  * substr(x, n, L) &lt;- cc now works (more) correctly for multibyte
    UTF-8 strings x when L &gt; nchar(x), thanks to a report and patch
    by 'Architect 95'.
  * contrib.url(character()) now returns 0-length character() as
    documented, which also avoids spurious warnings from
    available.packages() et al. in the edge case of an empty vector
    of repository URLs.
  * readChar(., 4e8) no longer fails, thanks to Kodi Arfer's report
    (PR#18557).
  * lapply(&lt;list&gt;, as.data.frame) no longer warns falsely for some
    base vector components.
  * Communication between parent and child processes in the multicore
    part of parallel could fail on platforms that do not support an
    arbitrarily large payload in system functions read()/write() on
    pipes (seen on macOS where a restriction to INT_MAX bytes is
    documented, without doing a partial read unlike Linux). The
    payload is now split into 1Gb chunks to avoid that problem.
    (PR#18571)
  * qqplot(x,y, conf.level=.) gives better confidence bounds when
    length(x) != length(y), thanks to Alexander Ploner's report and
    patch proposal (PR#18557).
  * norm(&lt;0-length&gt;, "2") now gives zero instead of an error, as all
    the other norm types, thanks to Mikael Jagan's PR#18542.
  * Build-stage Rd macros \packageAuthor and \packageMaintainer now
    process Authors@R, fixing NA results when the package DESCRIPTION
    omits Author and Maintainer fields.
  * Formatting and printing complex numbers could give things like
    0.1683-0i because of rounding error: -0i is now replaced by +0i.
  * postscript() refused to accept a title comment containing the
    letter "W" (PR#18599).
  * isoreg(c(1,Inf)) signals an error instead of segfaulting, fixing
    PR#18603.
  * tiff(type = "Xlib") was only outputting the last page of
    multi-page plots.
  * tools::latexToUtf8() again knows about \~{n} and other letters
    with tilde, fixing a regression in R 4.3.0, and about \^{i} as an
    alternative to \^{\i} (similarly with other accents).
    Furthermore, LaTeX codes for accented I letters are now correctly
    converted, also fixing related mistakes in
    tools::encoded_text_to_latex().
  * tar(*, tar = "internal") no longer creates out-of-spec tar files
    in the very rare case of user or group names longer than 32
    bytes, fixing PR#17871 with thanks to Ivan Krylov.
  * When using the "internal" timezone datetime code, adding a
    fraction of a second no longer adds one second, fixing PR#16856
    from a patch by Ivan Krylov.
  * tools::checkRd() no longer produces spurious notes about
    "unnecessary braces" from multi-line Rd results of \Sexpr macros.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1709208000">- CHANGES IN R 4.3.3:
  NEW FEATURES:
  * iconv() now fixes up variant encoding names such as "utf8"
    case-insensitively.
  DEPRECATED AND DEFUNCT:
  * The legacy encoding = "MacRoman" is deprecated in pdf() and
    postscript(): support was incomplete in earlier versions of R.
  BUG FIXES:
  * Arguments are now properly forwarded to methods on S4 generics
    with ... in the middle of their formal arguments. This was broken
    for the case when a method introduced an argument but did not
    include ... in its own formals. Thanks to Herv'e Pag`es for the
    report PR#18538.
  * Some invalid file arguments to pictex(), postscript() and xfig()
    opened a file called NA rather than throw an error.  These
    included postscript(NULL) (which some people expected to work
    like pdf(NULL)).
  * Passing filename = NA to svg(), cairo_pdf(), cairo_ps() or the
    Cairo-based bitmap devices opened a file called NA: it now throws
    an error.
  * quartz(file = NA) opened a file called NA, including when used as
    a Quartz-based bitmap device.  It now gives an error.
  * rank(&lt;long vector&gt;) now works, fixing PR#18617, thanks to Ilia
    Kats.
  * seq.int() did not adequately check its length.out argument.
  * match(&lt;POSIXct&gt;, .) is correct again for differing time zones,
    ditto for "POSIXlt", fixing PR#18618 reported by Bastian Klein.
  * drop.terms(*, dropx = &lt;0-length&gt;) now works, fixing PR#18563 as
    proposed by Mikael Jagan.
  * drop.terms(*) keeps + offset(.) terms when it should, PR#18565,
    and drop.terms() no longer makes up a response, PR#18566, fixing
    both bugs thanks to Mikael Jagan.
  * getS3method("t", "test") no longer finds the t.test() function,
    fixing PR#18627.
  * pdf() and postscript() support for the documented Adobe encodings
    "Greek" and "Cyrilllic" was missing (although the corresponding
    Windows' codepages could be used).
  * Computations of glyph metric information for pdf() and
    postscript() did not take into account that transliteration could
    replace one character by two or more (only seen on macOS 14) and
    typically warned that the information was not known.
  * rank(x) no longer overflows during integer addition, when
    computing rank average for largish but not-yet long vector x,
    fixing PR#18630, thanks to Ilia Kats.
  * list.files() on Windows now returns also files with names longer
    that 260 bytes (the Windows limit is 260 characters).
    Previously, some file names particularly with 'East Asian'
    characters were omitted.
  * cov2cor(&lt;0 x 0&gt;) now works, fixing PR#18423 thanks to Mikael
    Jagan and Elin Waring.
  * cov2cor(&lt;negative diagonal&gt;) and similar now give one warning
    instead of two, with better wording, fixing PR#18424 thanks to
    Mikael Jagan.
  * tools:: startDynamicHelp() now ensures port is in proper range,
    fixing PR#18645.
  * pbeta(x, a,b) is correct now for x=0 or 1 in the boundary cases
    where a or b or both are 0, fixing PR#18672 thanks to Michael
    Fay.
  * pmatch(x, table) for large table, also called for data frame row
    selection, dfrm[nm, ], is now interruptible, fixing PR#18656.
  * predict(&lt;rank-deficient lm&gt;, newdata=*) fix computing of nbasis,
    see Russ Lenth's comment 29 in PR#16158.
  * Added a work-around for a bug in macOS 14.3.1 and higher which
    prevents R plots in the Quartz Cocoa device from updating on
    screen.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1713960000">- CHANGES IN R 4.4.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Startup banners, R --version, sessionInfo() and R CMD check no
    longer report (64-bit) as part of the platform as this is almost
    universal - the increasingly rare 32-bit platforms will still
    report (32-bit).
    On Windows, ditto for window titles.
  * is.atomic(NULL) now returns FALSE, as NULL is not an atomic
    vector.  Strict back-compatibility would replace is.atomic(foo)
    by (is.null(foo) || is.atomic(foo)) but should happen only
    sparingly.
  NEW FEATURES:
  * The confint() methods for "glm" and "nls" objects have been
    copied to the stats package.  Previously, they were stubs which
    called versions in package MASS. The MASS namespace is no longer
    loaded if you invoke (say) confint(glmfit).  Further, the "glm"
    method for profile() and the plot() and pairs() methods for class
    "profile" have been copied from MASS to stats.  (profile.nls()
    and plot.profile.nls() were already in stats.)
  * The confint() and profile methods for "glm" objects have gained a
    possibility to do profiling based on the Rao Score statistic in
    addition to the default Likelihood Ratio. This is controlled by a
    new test = argument.
  * The pairs() method for "profile" objects has been extended with a
    which = argument to allow plotting only a subset of the
    parameters.
  * The "glm" method for anova() computes test statistics and
    p-values by default, using a chi-squared test or an F test
    depending on whether the dispersion is fixed or free.  Test
    statistics can be suppressed by giving argument test a false
    logical value.
  * In setRepositories() the repositories can be set using their
    names via name = instead of index ind =.
  * methods() and .S3methods() gain a all.names option for the (rare)
    case where functions starting with a . should be included.
  * Serializations can now be interrupted (e.g., by Ctrl-C on a
    Unix-alike) if they take too long, e.g., from save.image(),
    thanks to suggestions by Ivan Krylov and others on R-devel.
  * New startup option --max-connections to set the maximum number of
    simultaneous connections for the session.  Defaults to 128 as
    before: allowed values up to 4096 (but resource limits may in
    practice restrict to smaller values).
  * R on Windows (since Windows 10 2004) now uses the new Segment
    Heap allocator. This may improve performance of some
    memory-intensive applications.
  * When R packages are built, typically by R CMD build &lt;pkg&gt;, the
    new --user=&lt;build_user&gt; option overrides the (internally
    determined) user name, currently Sys.info()["user"] or LOGNAME.
    This is a (modified) fulfillment of Will Landau's suggestion in
    PR#17530.
  * tools::testInstalledBasic() gets new optional arguments outDir
    and testSrcdir, e.g., allowing to use it in a &lt;builddir&gt; !=
    &lt;srcdir&gt; setup, and in standard "binary" Windows installation
  * if* a source tests/ folder is present.
  * range(&lt;DT_with_Inf&gt;, finite = TRUE) now work for objects of class
    "Date", "POSIXct", and "POSIXlt" with infinite entries,
    analogously to range.default(), as proposed by Davis Vaughan on
    R-devel.  Other range()-methods can make use of new function
    .rangeNum().
  * New .internalGenerics object complementing .S3PrimitiveGenerics,
    for documentation and low-level book-keeping.
  * grid() now invisibly returns the x- and y- coordinates at which
    the grid-lines were drawn.
  * norm(., type) now also works for complex matrices.
  * kappa(., exact = TRUE, norm = *) now works for all norms and also
    for complex matrices.  In symmetric / triangular cases, the new
    argument uplo = "U" | "L" allows the upper or lower triangular
    part to be specified.
  * memDecompress(type = "unknown") recognizes compression in the
    default 'zlib' format as used by memCompress(type = "gzip").
  * memCompress() and memDecompress() will use the libdeflate library
    (&lt;https://github.com/ebiggers/libdeflate&gt;) if installed.  This
    uses the same type of compression for type = "gzip" but is 1.5-2x
    faster than the system libz library on some common platforms: the
    speed-up may depend on the library version.
  * diff() for objects of class "Date", "POSIXct", and "POSIXlt"
    accepts a units argument passed via ....
  * Dynamic help now does a much better job of rendering package
    DESCRIPTION metadata.
  * Rprof() gains an event argument and support for elapsed (real)
    time profiling on Unix (PR#18076).
  * filled.contour() gains a key.border argument.
  * tools::update_pkg_po() gets arguments pot_make and mo_make for
    _not_ re-making the corresponding files, and additionally a
    verbose argument.
  * Hexadecimal string colour specifications are now accepted in
    short form, so, for example, we can use "#123", which is
    equivalent to "#112233".
    Thanks to MikeFC for the original idea and Ella Kaye, Malcolm
    Barrett, George Stagg, and Hanne Oberman for the patch.
  * Plain-text help shows \var markup by angle brackets.
  * The new experimental primitive function declare() is intended to
    eventually allow information about R code to be communicated to
    the interpreter, compiler, and code analysis tools. The syntax
    for declarations is still being developed.
  * Functions psmirnov(), qsmirnov() and rsmirnov() in package stats
    have had argument two.sided renamed to alternative, to take into
    account that the permutation distributions of the one-sided
    statistics can be different in the case of ties.  Consequence of
    PR#18582.
  * sort() is now an implicit S4 generic in methods.
  * Formatting and printing, format(z), print(z), of complex vectors
    z no longer zap relatively small real or imaginary parts to zero,
    fixing PR#16752.  This is an API change, as it was documented
    previously to round real and imaginary parts together on purpose,
    producing nicer looking output.  As mentioned, e.g. in the PR,
    this change is compatible with many other "R-like" programming
    environments.
    We have simplified the internal code and now basically format the
    real and imaginary parts independently of each other.
  * New experimental functions Tailcall() and Exec() to support
    writing stack-space-efficient recursive functions.
  * Where characters are attempted to be plotted by pdf(),
    postscript() and xfig() which are not in the selected 8-bit
    character set (most often Latin-1) and the R session is using a
    UTF-8 locale, the warning messages will show the UTF-8 character
    rather than its bytes and one dot will be substituted per
    character rather than per byte.  (Platforms whose iconv() does
    transliteration silently plot the transliteration.)
    In a UTF-8 locale some transliterations are now done with a
    warning (e.g., dashes and Unicode minus to hyphen, ligatures are
    expanded, permille (‰) is replaced by o/oo), although the OS may
    have got there first.  These are warnings as they will continue
    to be replaced by dots in earlier versions of R.
  * The matrix multiplication functions crossprod() and tcrossprod()
    are now also primitive and S3 generic, as %*% had become in R
    4.3.0.
  * source() and example() have a new optional argument catch.aborts
    which allows continued evaluation of the R code after an error.
  * The non-Quartz tiff() devices allow additional types of
    compression if supported by the platform's libtiff library.
  * The list of base and recommended package names is now provided by
    tools::standard_package_names().
  * cairo_pdf() and cairo_ps() default to onefile = TRUE to closer
    match pdf() and postscript().
  * New option catch.script.errors provides a documented way to catch
    errors and then continue in non-interactive use.
  * L %||% R newly in base is an expressive idiom for the phrases
    if(!is.null(L)) L else R or if(is.null(L)) R else L.
  * The return value from warnings() now always inherits from
    "warnings" as documented, now also in the case of no warnings
    where it previously returned NULL.
  * as.complex("1i") now returns 0 + 1i instead of NA with a warning.
  * z &lt;- c(NA, 1i) now keeps the imaginary part Im(z[1]) == 0, no
    longer coercing to NA_complex_.  Similarly, cumsum(z) correctly
    sums real and imaginary parts separately, i.e., without
    "crosstalk" in case of NAs.
  * On Alpine Linux iconv() now maps "latin2", "latin-2", "latin9"
    and "latin-9" to encoding names the OS knows about
    (case-insensitively).
  * iconv(sub = "Unicode") now always zero-pads to four (hex) digits,
    rather than to 4 or 8.  (This seems to have become the convention
    once Unicode restricted the number of Unicode points to 2^21 - 1
    and so will never need more than 6 digits.)
  * NCOL(NULL) now returns 0 instead of 1, for consistency with
    cbind().
  * The information for the Euro glyph missing from the Adobe .afm
    files for the Courier, Helvetica and Times families has been
    copied from their URW equivalents - this will improve vertical
    centring in the pdf() and postscript() devices.
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.12.0.  The changes are almost entirely cosmetic.
  * The included LAPACK sources have been updated to version 3.12.0
    and some further double-complex routines added.
  * There are new font families for the 2014--5 URW 2.0 fonts (see
    ?pdf) which are included in recent versions of Ghostscript.
    These have font widths for most Greek glyphs and a few others
    which were missing from the original versions (whose font
    families remain available for reproducibility, although
    Ghostscript-based viewers will render using the 2.0 versions).
  * Improve the large-n efficiency of as.matrix(&lt;dist&gt;), thanks an R
    contributors effort, notably by Tim Taylor and Heather Turner,
    see PR#18660.
  * The default and numeric methods of all.equal() get a check.class
    option.
  * zapsmall() gets new optional arguments, function mFUN and min.d,
    for extra flexibility; fulfills a wish in PR#18199.  Also, it is
    now an implicit S4 generic in package methods.
  * The Rd filter for aspell() gains an ignore argument.
  * New generic function sort_by(), primarily useful for the
    data.frame method which can be used to sort rows of a data frame
    by one or more columns.
  * The icence headers for the RPC code in src/extra/xdr have been
    updated to use the GPL-compatible licence published by Oracle
    America in 2010.
  * New function pkg2HTML() in tools to create single-page HTML
    reference manuals for R packages.
  * The byte code evaluator now uses less C stack space for recursive
    calls to byte-compiled functions. It also makes more of an effort
    to avoid allocations for scalar return values.
  * New completion option backtick (disabled by default) allows
    non-syntactic completions to be wrapped in backquotes. This is
    currently only useful for Jupyter notebooks via the IRkernel
    package, and may cause problems for other backends.
  INSTALLATION:
  * The parser has been updated to work with bison 3.8.2, which is
    now used for the pre-generated parsers in gram.c, file.c, and
    gramRd.c. A few parser error messages have changed, which may
    affect code that relies on exact messages.
  INSTALLATION on a UNIX-ALIKE:
  * System valgrind headers are now required to use configure option
  - -with-valgrind-instrumentation with value 1 or 2.
  * configure will warn if it encounters a 32-bit build, as that is
    nowadays almost untested.
  * Environment variable R_SYSTEM_ABI is no longer used and so no
    longer recorded in etc/Renviron (it was not on Windows and was
    only ever used when preparing package tools).
  * If the libdeflate library and headers are available, libdeflate
    rather than libz is used to (de)compress R objects in lazy-load
    databases.  Typically tasks spend up to 5% of their time on such
    operations, although creating lazy-data databases is one of the
    exceptions.
    This can be suppressed if the library is available by the
    configure option --without-libdeflate-compression.
  * configure option --enable-lto=check has not worked reliably since
    2019 and has been removed.
  * The minimum autoconf requirement for a maintainer build has been
    increased to autoconf 2.71.
    It is intended to increase this to 2.72 for R 4.5.0: the
    distributed configure file was generated using 2.72.
  * The minimum version requirement for an external LAPACK has been
    reduced to 3.9.0.
  * No default C++ compiler is set if no C++17 compiler is detected:
    there is no longer an automatic fallback to C++14 or C++11.
    Compilers from the last five years should have sufficient
    support: for others macros CXX and CXXSTD can be set in file
    config.site to provide a fallback if needed.
    The Objective-C++ compiler now by default uses the standard
    selected by R for C++ (currently C++17) rather than the default
    standard for the C++ compiler (which on macOS is still C++98).
  INSTALLATION on macOS:
  * A new configure option --with-newAccelerate makes use of Apple's
    'new' BLAS / LAPACK interfaces in their Accelerate framework.
    Those interfaces are only available in macOS 13.3 or later, and
    building requires SDK 13.3 or later (from the Command Line Tools
    or Xcode 14.3 or later).
    By default the option uses new Accelerate for BLAS calls: to also
    use it for LAPACK use option --with-newAccelerate=lapack.  The
    later interfaces provide LAPACK 3.9.1 rather than 3.2.1: 3.9.1 is
    from 2021-04 and does not include the improved algorithms
    introduced in LAPACK 3.10.0 (including for BLAS calls).
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools44, an update of the Rtools43 toolchain.  It is
    based on GCC 13 and newer versions of MinGW-W64, binutils and
    libraries (targeting 64-bit Intel CPUs).  R-devel can no longer
    be built using Rtools43 without changes.
  * Rtools44 has experimental support for 64-bit ARM (aarch64) CPUs
    _via_ the LLVM 17 toolchain using lld, clang/flang-new and
    libc++.
  UTILITIES:
  * R CMD check notes when S4-style exports are used without
    declaring a strong dependence on package methods.
  * tools::checkRd() (used by R CMD check) detects more problems with
    \Sexpr-based dynamic content, including bad nesting of \Sexprs
    and invalid arguments.
  * tools::checkRd() now reports Rd titles and section names ending
    in a period; this is ignored by R CMD check unless environment
    variable _R_CHECK_RD_CHECKRD_MINLEVEL_ is set to -5 or smaller.
  * R CMD check now notes Rd files without an \alias, as long
    documented in 'Writing R Extensions' §1.3.1.  The check for a
    missing \description has been moved from tools::checkRd() to
    tools::checkRdContents().
  * R CMD check now visits inst/NEWS.Rd and OS-specific man
    subdirectories when checking Rd files.
  * tools::checkDocFiles() and tools::checkRdContents() now also
    check internal Rd files by default, but "specially" (ignoring
    missing documentation of arguments).
  * R CMD Rdiff gets option --useEx.
  * R CMD check now warns on non-portable uses of Fortran KIND such
    as INTEGER(KIND=4) and REAL(KIND=8).
    To see the failing lines set environment variable
    _R_CHECK_FORTRAN_KIND_DETAILS_ to a true value.
  * When checking Rd files, R CMD check now notes some of the "lost
    braces" that tools::checkRd() finds.  Typical problems are Rd
    macros missing the initial backslash (e.g., code{...}), in-text
    set notation (e.g., {1, 2}, where the braces need escaping), and
    \itemize lists with \describe-style entries of the form
    \item{label}{description}.
  * R CMD INSTALL (and hence check) will compile C++ code with
  - DR_NO_REMAP if environment variable _R_CXX_USE_NO_REMAP_ is set
    to a true value.  It is planned that this will in future become
    the default for compiling C++.
  * The new built-in Rd macro \dontdiff{} can be used to mark example
    code whose output should be ignored when comparing check output
    to reference output (tests/Examples/&lt;pkg&gt;-Ex.Rout.save).  The
    \dontdiff tag, like \donttest, is _not_ shown on the rendered
    help page, so provides a clean alternative to ##
    IGNORE_RDIFF_(BEGIN|END) comments.
  * R CMD build when there is no NAMESPACE, now uses the recommended
    exportPattern("^[^.]"), instead of exporting everything.
  * R CMD check now warns about non-ASCII characters in the NAMESPACE
    file (in addition to R files). Such packages are not portable and
    may fail to install on some platforms.
  C-LEVEL FACILITIES:
  * Headers R_ext/Applic.h and R-ext/Linpack.h used to include
    R_ext/BLAS.h although this was undocumented and unneeded by their
    documented entry points.  They no longer do so.
  * New function R_missing(), factored out from do_missing(), used to
    fix PR#18579.
  * SEXP type S4SXP has been renamed to OBJSXP to support
    experimenting with alternative object systems.  The S4SXP value
    can still be used in C code but is now deprecated.  Based on
    contributions from the R Consortium's Object-Oriented Programming
    Working Group.
  * New function pow1p(x,y) for accurate (1+x)^y.
  * mkCharLenCE was incorrectly documented to take a size_t length
    but was implemented with int (and character strings in R are
    limited to 2^31 - 1 bytes).
  DEPRECATED AND DEFUNCT:
  * data() no longer handles zipped data from long-defunct (since R
    2.13.0) --use-zip-data installations.
  * The legacy graphics devices pictex() and xfig() are now
    deprecated.  They do not support recent graphics enhancements and
    their font handling is rudimentary. The intention is to retain
    them for historical interest as long as they remain somewhat
    functional.
  * Support for encoding = "MacRoman" has been removed from the pdf()
    and postscript() devices - this was a legacy encoding supporting
    classic macOS up to 2001 and no longer has universal libiconv
    support.
  * is.R() is deprecated as no other S dialect is known to be in use
    (and this could only identify historical dialects, not future
    ones).
    Further information on calls can be obtained by setting the
    environment variable _R_DEPRECATED_IS_R_ to error which turns the
    deprecation warning into an error and so by default gives a
    traceback.  (This is done by R CMD check --as-cran.)
  * UseMethod() no longer forwards local variables assigned in the
    generic function into method call environments before evaluating
    the method body. This makes method calls behave more like
    standard function calls and makes method code easier to analyze
    correctly.
  * The twelve as.data.frame.&lt;class&gt;() methods which were deprecated
    only via _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ and in R CMD
    check --as-cran are formally deprecated now in favour of calling
    as.data.frame() or as.data.frame.vector().  The deprecation
    "check" now works also when as.data.frame() is S4 generic thanks
    to Ivan Krylov.
  * The default method for the directional comparison operators &lt;, &gt;,
    &lt;=, and &gt;= now signals an error when one of the operands is a
    language object, i.e. a symbol or a call.
  * For terms.formula(), deprecate abb and neg.out arguments
    _formally_ in addition to just documenting it.
  BUG FIXES:
  * The methods package is more robust to not being attached to the
    search path.  More work needs to be done.
  * pairwise.t.test() misbehaved when subgroups had 0 DF for
    variance, even with pool.sd = TRUE.  (PR#18594 by Jack Berry).
  * Probability distribution functions [dpq]&lt;distrib&gt;(x, *), but also
    bessel[IKJY](x, .) now consistently preserve attributes(x) when
    length(x) == 0, e.g., for a 2 x 0 matrix, thanks to Karolis
    Koncevičius' report PR#18509.
  * Group "Summary" computations such as sum(1:3, 4, na.rm = 5, NA,
    7, na.rm = LL) now give an error instead of either 17 or NN for
    LL true or false, as proposed by Ivan Krylov on the R-devel
    mailing list.  (This also means it is now an error to specify
    na.rm more than once.)
  * as.complex(x) now returns complex(real = x, imaginary = 0) for
    _all_ numerical and logical x, notably also for NA or
    NA_integer_.
  * Directories are now omitted by file.copy(, recursive = FALSE) and
    in file.append() (PR#17337).
  * gsub() and sub() are now more robust to integer overflow when
    reporting errors caused by too large input strings (PR#18346).
  * Top-level handlers are now more robust to attempts to remove a
    handler whilst handlers are running (PR#18508).
  * The handling of Alt+F4 in dialogs created on Windows using
    GraphApp has been fixed (PR#13870).
  * density() more consistently computes grid values for the
    FFT-based convolution, following Robert Schlicht's analysis and
    proposal in PR#18337, correcting density values typically by a
    factor of about 0.999.  Argument old.coords = TRUE provides back
    compatibility.
  * palette.colors() gains a name argument that defaults to FALSE
    controlling whether the vector of colours that is returned has
    names (where possible).  PR#18529.
  * tools::xgettext() no longer extracts the (non-translatable) class
    names from warningCondition and errorCondition calls.
  * S3method(&lt;gen&gt;, &lt;class&gt;, &lt;func&gt;) in the NAMESPACE file now works
    (again) when &lt;func&gt; is visible from the namespace, e.g.,
    imported, or in base.
  * getParseData(f) now also works for a function defined in the
    first of several &lt;pkg&gt;/R/*.R source files, thanks to Kirill
    Müller's report and Duncan Murdoch's patch in PR#16756.
  * Rd \Sexpr macros with nested #ifdef conditionals were not
    processed.
  * A non-blocking connection with non-default encoding (such as a
    socket) now correctly returns from readLines() after new data has
    arrived also when its EOF had been reached previously.  Thanks to
    Peter Meilstrup's report on R-devel and Ivan Krylov's report and
    patch proposal in PR#18555.
  * tools::checkRdContents() failed to detect empty argument
    descriptions when they spanned multiple lines, including those
    generated by prompt().  These cases are now noted by R CMD check.
  * Plain-text help no longer outputs spurious colons in the
    arguments list (for multi-line \item labels in the Rd source).
  * kappa() and rcond() work correctly in more cases; kappa(., norm =
    "2") now warns that it computes the 1-norm with (default) exact =
    FALSE; prompted by Mikael Jagan's quite comprehensive PR#18543.
  * Rd skeletons generated by prompt() or promptData() now use a
    dummy title (so R CMD build works).  tools::checkRdContents() has
    been updated to detect such template leftovers, including from
    promptPackage().
  * When S4 method dispatch fails because no method was found, the
    error message now includes the signature argument names; thanks
    to Michael Chirico's proposal on the R-devel list.
  * withAutoprint({ .. }) now preserves srcrefs previously lost,
    thanks to Andrew Simmons' report plus fix in PR#18572.
  * transform.data.frame() no longer adjusts names; in particular,
    untransformed variables are kept as-is, including those with
    syntactically invalid names (PR#17890).
  * The keep.source option for Rd \Sexpr blocks is no longer ignored.
  * The formula methods for t.test() and wilcox.test() now catch when
    paired is passed, addressing PR#14359; use Pair(x1, x2) ~ 1 for a
    paired test.
  * The level reported in the browser prompt was often too large. It
    now shows the number of browser contexts on the stack.
  * For cbind() and rbind(), the optional deparse.level argument is
    now properly passed to methods, thanks to Mikael Jagan's PR#18579
    and comments there.
  * Some error and warning messages for large ('long vector')
    matrix(v, nr, nc) and dim(m) &lt;- d are now correct about sizes,
    using long long formatting, fixing PR#18612 (and more) reported
    by Mikael Jagan.
  * readChar(useBytes = TRUE) now terminates strings even when the
    underlying connection uses extra spaces in the input buffer.
    This fixes problems with extra garbage seen with gzip
    connections, PR#18605.
  * Named capture in PCRE regular expressions now works also with
    more than 127 named groups (PR#18588).
  * Datetime functions are now robust against long jumps when dealing
    with internal time zone changes.  This avoids confusing warnings
    about an invalid time zone, previously triggered by turning
    warnings into errors or handling them via tryCatch (PR#17966,
    PR#17780).
  * Datetime functions now restore even an empty TZ environment
    variable after internal time zone changes (PR#17724).  This makes
    results of datetime functions with this (typically unintentional)
    setting more predictable.
  * drop.terms(*) now drops response as by default, keep.response =
    FALSE, fixing PR#18564 thanks to Mikael Jagan.
  * dummy.coef(.) now also works for lm()-models with character
    categorical predictor variables rather than factor ones, fixing
    PR#18635 reported by Jinsong Zhao.
  * formals(f) &lt;- formals(f) now also works for a function w/o
    arguments and atomic _constant_ body(f).
  * Correct as.function(&lt;invalid list&gt;, .)'s error message.
  * removeSource() is yet more thorough in finding and removing
    "srcref" and the other source references from parsed R language
    chunks, fixing PR#18638 thanks to Andrew Simmons.
  * dgeom() is more accurate now, notably when its result is very
    small, fixing PR#18642 thanks to the proposal of Morten Welinder,
    also improving other instances where C level binom_raw(x, n, ..)
    has x == 0 or x== n.
  * warning() with options(warn = 1) has improved output for
    multi-line messages.
  * axis.Date() and axis.POSIXct() now respect the par("lab") setting
    for the number of pretty() intervals.
  * Comparisons for language objects (which are based on deparsing)
    are now more careful about using accurate deparsed results
    (PR#18676).
  * Plain-text help (Rd2txt) now correctly preserves blank lines
    following single-line \dontrun code.
  * &lt;POSIXlt&gt;[*] no longer sets wrong "balanced" attribute, fixing
    PR#18681 thanks to Mikael Jagan.
  * str(&lt;classed-call&gt;) now deparses the call as expected, fixing
    PR#18684, reported by Dave Slager.
  * In Rd examples, code following the closing brace of a \dontrun,
    \dontshow or \donttest tag on the same line is no longer skipped
    when R CMD check runs the examples.
  * as.data.frame(matrix(*, ncol=0)) now gets valid names() and
    colnames(); reported by Davis Vaughan on the R-devel list.
  * Internal Mathlib function stirlerr(n) is now almost fully
    (52-bit) accurate for all n &gt;= ~5.9 and more accurate also in the
    range 1 -- 5.9.  This entails small ("after 12th decimal")
    changes in density functions, e.g., dgamma() in _some_ regions of
    their support.  The fix was partly prompted by Morten Welinder's
    PR#18640.
  * Numbers like 9876543.2 are now considered non-integer by Mathlib
    internal R_nonint(), amending original fix of PR#15734.
  * Rd comment lines no longer cause broken paragraphs in the
    rendered PDF and plain-text help. In code blocks, pure comment
    lines (starting with %) no longer produce an empty line.
  * xtabs(Freq ~ .) now consistently defaults to na.action = na.pass,
    using na.rm = FALSE (added as an argument) when summing over Freq
    (PR#17770).
  * tools::testInstalledPackage() is no longer silent about failures
    from running examples or tests and its return code no longer
    ignores failures from checking vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1718366400">- CHANGES IN R 4.4.1:
  C-LEVEL FACILITIES:
  * Functions R_atof and R_strtod declared in header R_ext/Utils.h
    are now documented in 'Writing R Extensions' and so formally part
    of the API.
  * The non-API entry points Rf_setSVector, Rf_StringFalse,
    Rf_StringTrue and Rf_isBlankString have been added to those
    reported by R CMD check.
  * The new function Rf_allocLang is now available. This provides an
    alternative to the idiom of calling Rf_allocList followed by
    SET_TYPEOF.
  UTILITIES:
  * R CMD check now reports as warnings what gfortran calls 'Fortran
    2018 deleted features', all of which have long been marked as
    'obsolescent' and some of which were deleted in Fortran 2008 or
    earlier.  Fortran compilers are no longer required to support
    these.
  BUG FIXES:
  * as.numeric(), scan(), type.convert() and other places which use
    the internal C function R_strtod now require a _non-empty_ digit
    sequence in a decimal or binary exponent.  This aligns with the
    C/POSIX standard for strtod and with ?NumericConstants.
  * as.data.frame(m, make.names=NA) now works correctly for a matrix
    m with NA's in row names.
  * The error message from &lt;POSIXlt&gt;[["hour"]] and similar now
    mentions *[[, "hour"]], as wished for in PR#17409 and proposed by
    Michael Chirico.
  * qbinom() and potentially qpois(), qnbinom(), no longer sometimes
    fail accurate inversion (of pbinom(), etc), thanks to Christopher
    Chang's report and patch in PR#18711.
  * The internal help server on Windows can again serve requests sent
    in quick succession, fixing a regression in R 4.4.0.
  * debugcall(&lt;S3Generic&gt;()) now also works when a corresponding
    S4-generic version is in the methods cache (PR#18143).
  * Package tools' toTitleCase(ch0) now returns character(0) when ch0
    is of zero length; fixing PR#18724, reported by David Hugh Jones.
  * R CMD check is no longer broken (without a check result and no
    explanation in 00check.log) for a package which declares an
    invalid VignetteBuilder in DESCRIPTION but has no vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1730376000">- CHANGES IN R 4.4.2:
  C-LEVEL FACILITIES:
  * The S-compatibility macros F77_COM and F77_COMDECL defined in
    header R_ext/RS.h are deprecated and will be removed shortly.  We
    could find no record of their use.
  BUG FIXES:
  * Mathlib function lgammacor(x) no longer warns about underflow to
    zero for large x.
  * Text widths and heights were incorrectly reported by the Quartz
    device if the drawing context didn't exist yet (typically when
    drawing off-screen to a window that is yet to appear, see
    PR#18591).
  * The Quartz device could segfault in cases where paths with spaces
    are used in the new glyph drawing API.  Thanks to Tomek
    Gieorgijewski (PR#18758).
  * On macOS in R CRAN builds, it is again possible to read
    little-endian UTF-16 text with a BOM from a connection using
    encoding="UTF-16".  Users building R from source should avoid
    using the system libiconv in macOS 14.1 and later.
  * methods' internal .requirePackage() now re-enables primitive
    method dispatch when needed; thanks to Ivan Krylov for
    demystifying CRAN package check failures on the R-devel mailing
    list.</changelog>
</package>
<package pkgid="43736c4da81927f2bbd59042d2824e9aa4bbe8f2b696bd30ebd061266c08ebd9f9dad3c593a7245bbfaa93dd1899a73b6311c791e351b1ed9a51494ff8ee4a17" name="R-base-debugsource" arch="i586">
  <version epoch="0" ver="4.4.2" rel="51.0.2.2.sr20241103"/>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1620302400">- To get in sync with d:l:R:autoCRAN the Matrix package's split
  in -devel was reversed.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339200">- improved spec file according to comments of dimstar in
  https://build.opensuse.org/request/show/892685</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339201">- CHANGES IN R 4.1.0:
  FUTURE DIRECTIONS:
  * It is planned that the 4.1.x series will be the last to support
    32-bit Windows, with production of binary packages for that
    series continuing until early 2023.
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Data set esoph in package datasets now provides the correct
    numbers of controls; previously it had the numbers of cases added
    to these.  (Reported by Alexander Fowler in PR#17964.)
  NEW FEATURES:
  * www.omegahat.net is no longer one of the repositories known by
    default to setRepositories().  (Nowadays it only provides source
    packages and is often unavailable.)
  * Function package_dependencies() (in package tools) can now use
    different dependency types for direct and recursive dependencies.
  * The checking of the size of tarball in R CMD check --as-cran
    &lt;pkg&gt; may be tweaked via the new environment variable
    _R_CHECK_CRAN_INCOMING_TARBALL_THRESHOLD_, as suggested in
    PR#17777 by Jan Gorecki.
  * Using c() to combine a factor with other factors now gives a
    factor, an ordered factor when combining ordered factors with
    identical levels.
  * apply() gains a simplify argument to allow disabling of
    simplification of results.
  * The format() method for class "ftable" gets a new option justify.
    (Suggested by Thomas Soeiro.)
  * New ...names() utility.  (Proposed by Neal Fultz in PR#17705.)
  * type.convert() now warns when its as.is argument is not
    specified, as the help file always said it _should_.  In that
    case, the default is changed to TRUE in line with its change in
    read.table() (related to stringsAsFactor) in R 4.0.0.
  * When printing list arrays, classed objects are now shown _via_
    their format() value if this is a short enough character string,
    or by giving the first elements of their class vector and their
    length.
  * capabilities() gets new entry "Rprof" which is TRUE when R has
    been configured with the equivalent of --enable-R-profiling (as
    it is by default).  (Related to Michael Orlitzky's report
    PR#17836.)
  * str(xS4) now also shows extraneous attributes of an S4 object
    xS4.
  * Rudimentary support for vi-style tags in rtags() and R CMD rtags
    has been added.  (Based on a patch from Neal Fultz in PR#17214.)
  * checkRdContents() is now exported from tools; it and also
    checkDocFiles() have a new option chkInternal allowing to check
    Rd files marked with keyword "internal" as well.  The latter can
    be activated for R CMD check via environment variable
    _R_CHECK_RD_INTERNAL_TOO_.
  * New functions numToBits() and numToInts() extend the raw
    conversion utilities to (double precision) numeric.
  * Functions URLencode() and URLdecode() in package utils now work
    on vectors of URIs.  (Based on patch from Bob Rudis submitted
    with PR#17873.)
  * path.expand() can expand ~user on most Unix-alikes even when
    readline is not in use.  It tries harder to expand ~, for example
    should environment variable HOME be unset.
  * For HTML help (both dynamic and static), Rd file links to help
    pages in external packages are now treated as references to
    topics rather than file names, and fall back to a file link only
    if the topic is not found in the target package. The earlier rule
    which prioritized file names over topics can be restored by
    setting the environment variable _R_HELP_LINKS_TO_TOPICS_ to a
    false value.
  * c() now removes NULL arguments before dispatching to methods,
    thus simplifying the implementation of c() methods, _but_ for
    back compatibility keeps NULL when it is the first argument.
    (From a report and patch proposal by Lionel Henry in PR#17900.)
  * Vectorize()'s result function's environment no longer keeps
    unneeded objects.
  * Function ...elt() now propagates visibility consistently with
    ..n.  (Thanks to Lionel Henry's PR#17905.)
  * capture.output() no longer uses non-standard evaluation to
    evaluate its arguments.  This makes evaluation of functions like
    parent.frame() more consistent.  (Thanks to Lionel Henry's
    PR#17907.)
  * packBits(bits, type="double") now works as inverse of
    numToBits().  (Thanks to Bill Dunlap's proposal in PR#17914.)
  * curlGetHeaders() has two new arguments, timeout to specify the
    timeout for that call (overriding getOption("timeout")) and TLS
    to specify the minimum TLS protocol version to be used for
    https:// URIs (_inter alia_ providing a means to check for sites
    using deprecated TLS versions 1.0 and 1.1).
  * For nls(), an optional constant scaleOffset may be added to the
    denominator of the relative offset convergence test for cases
    where the fit of a model is expected to be exact, thanks to a
    proposal by John Nash.  nls(*, trace=TRUE) now also shows the
    convergence criterion.
  * Numeric differentiation _via_ numericDeriv() gets new optional
    arguments eps and central, the latter for taking central divided
    differences.  The latter can be activated for nls() via
    nls.control(nDcentral = TRUE).
  * nls() now passes the trace and control arguments to getInitial(),
    notably for all self-starting models, so these can also be fit in
    zero-noise situations via a scaleOffset.  For this reason, the
    initial function of a selfStart model must now have ... in its
    argument list.
  * bquote(splice = TRUE) can now splice expression vectors with
    attributes: this makes it possible to splice the result of
    parse(keep.source = TRUE).  (Report and patch provided by Lionel
    Henry in PR#17869.)
  * textConnection() gets an optional name argument.
  * get(), exists(), and get0() now signal an error if the first
    argument has length greater than 1.  Previously additional
    elements were silently ignored.  (Suggested by Antoine Fabri on
    R-devel.)
  * R now provides a shorthand notation for creating functions, e.g.
    \(x) x + 1 is parsed as function(x) x + 1.
  * R now provides a simple native forward pipe syntax |&gt;.  The
    simple form of the forward pipe inserts the left-hand side as the
    first argument in the right-hand side call.  The pipe
    implementation as a syntax transformation was motivated by
    suggestions from Jim Hester and Lionel Henry.
  * all.equal(f, g) for functions now by default also compares their
    environment(.)s, notably via new all.equal method for class
    function.  Comparison of nls() fits, e.g., may now need
    all.equal(m1, m2, check.environment = FALSE).
  * .libPaths() gets a new option include.site, allowing to _not_
    include the site library.  (Thanks to Dario Strbenac's suggestion
    and Gabe Becker's PR#18016.)
  * Lithuanian translations are now available.  (Thanks to Rimantas
    Zakauskas.)
  * names() now works for DOTSXP objects.  On the other hand, in
    R-lang, the R language manual, we now warn against relying on the
    structure or even existence of such dot-dot-dot objects.
  * all.equal() no longer gives an error on DOTSXP objects.
  * capabilities("cairo") now applies only to the file-based devices
    as it is now possible (if very unusual) to build R with Cairo
    support for those but not for X11().
  * There is optional support for tracing the progress of
    loadNamespace() - see its help.
  * (Not Windows.)  l10n_info() reports an additional element, the
    name of the encoding as reported by the OS (which may differ from
    the encoding part (if any) of the result from
    Sys.getlocale("LC_CTYPE").
  * New function gregexec() which generalizes regexec() to find _all_
    disjoint matches and well as all substrings corresponding to
    parenthesized subexpressions of the given regular expression.
    (Contributed by Brodie Gaslam.)
  * New function charClass() in package utils to query the
    wide-character classification functions in use (such as
    iswprint).
  * The names of quantile()'s result no longer depend on the global
    getOption("digits"), but quantile() gets a new optional argument
    digits = 7 instead.
  * grep(), sub(), regexp and variants work considerably faster for
    long factors with few levels.  (Thanks to Michael Chirico's
    PR#18063.)
  * Provide grouping of x11() graphics windows within a window
    manager such as Gnome or Unity; thanks to a patch by Ivan Krylov
    posted to R-devel.
  * The split() method for class data.frame now allows the f argument
    to be specified as a formula.
  * sprintf now warns on arguments unused by the format string.
  * New palettes "Rocket" and "Mako" for hcl.colors() (approximating
    palettes of the same name from the 'viridisLite' package).
    Contributed by Achim Zeileis.
  * The base environment and its namespace are now locked (so one can
    no longer add bindings to these or remove from these).
  * Rterm handling of multi-byte characters has been improved,
    allowing use of such characters when supported by the current
    locale.
  * Rterm now accepts ALT+ +xxxxxxxx sequences to enter Unicode
    characters as hex digits.
  * Environment variable LC_ALL on Windows now takes precedence over
    LC_CTYPE and variables for other supported categories, matching
    the POSIX behaviour.
  * duplicated() and anyDuplicated() are now optimized for integer
    and real vectors that are known to be sorted via the ALTREP
    framework. Contributed by Gabriel Becker via PR#17993.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 14
    and so packages that provide graphics devices should be
    reinstalled.
  * Graphics devices should now specify deviceVersion to indicate
    what version of the graphics engine they support.
  * Graphics devices can now specify deviceClip.  If TRUE, the
    graphics engine will never perform any clipping of output itself.
    The clipping that the graphics engine does perform (for both
    canClip = TRUE and canClip = FALSE) has been improved to avoid
    producing unnecessary artifacts in clipped output.
  * The grid package now allows gpar(fill) to be a linearGradient(),
    a radialGradient(), or a pattern().  The viewport(clip) can now
    also be a grob, which defines a clipping path, and there is a new
    viewport(mask) that can also be a grob, which defines a mask.
    These new features are only supported so far on the Cairo-based
    graphics devices and on the pdf() device.
  * (Not Windows.)  A warning is given when a Cairo-based type is
    specified for a png(), jpeg(), tiff() or bmp() device but Cairo
    is unsupported (so type = "Xlib" is tried instead).
  * grSoftVersion() now reports the versions of FreeType and
    FontConfig if they are used directly (not _via_ Pango), as is
    most commonly done on macOS.
  C-LEVEL FACILITIES:
  * The _standalone_ libRmath math library and R's C API now provide
    log1pexp() again as documented, and gain log1mexp().
  INSTALLATION on a UNIX-ALIKE:
  * configure checks for a program pkgconf if program pkg-config is
    not found.  These are now only looked for on the path (like
    almost all other programs) so if needed specify a full path to
    the command in PKG_CONFIG, for example in file config.site.
  * C99 function iswblank is required - it was last seen missing ca
    2003 so the workaround has been removed.
  * There are new configure options --with-internal-iswxxxxx,
  - -with-internal-towlower and --with-internal-wcwidth which allows
    the system functions for wide-character classification,
    case-switching and width (wcwidth and wcswidth) to be replaced by
    internal ones.  The first has long been used on macOS, AIX (and
    Windows) but this enables it to be unselected there and selected
    for other platforms (it is the new default on Solaris).  The
    second is new in this version of R and is selected by default on
    macOS and Solaris.  The third has long been the default and
    remains so as it contains customizations for East Asian
    languages.
    System versions of these functions are often minimally
    implemented (sometimes only for ASCII characters) and may not
    cover the full range of Unicode points: for example Solaris (and
    Windows) only cover the Basic Multilingual Plane.
  * Cairo installations without X11 are more likely to be detected by
    configure, when the file-based Cairo graphics devices will be
    available but not X11(type = "cairo").
  * There is a new configure option --with-static-cairo which is the
    default on macOS.  This should be used when only static cairo
    (and where relevant, Pango) libraries are available.
  * Cairo-based graphics devices on platforms without Pango but with
    FreeType/FontConfig will make use of the latter for font
    selection.
  LINK-TIME OPTIMIZATION on a UNIX-ALIKE:
  * Configuring with flag --enable-lto=R now also uses LTO when
    installing the recommended packages.
  * R CMD INSTALL and R CMD SHLIB have a new flag --use-LTO to use
    LTO when compiling code, for use with R configured with
  - -enable-lto=R.  For R configured with --enable-lto, they have
    the new flag --no-use-LTO.
    Packages can opt in or out of LTO compilation _via_ a UseLTO
    field in the DESCRIPTION file.  (As usual this can be overridden
    by the command-line flags.)
  BUILDING R on Windows:
  * for GCC &gt;= 8, FC_LEN_T is defined in config.h and hence character
    lengths are passed from C to Fortran in _inter alia_ BLAS and
    LAPACK calls.
  * There is a new text file src/gnuwin32/README.compilation, which
    outlines how C/Fortran code compilation is organized and
    documents new features:
  * R can be built with Link-Time Optimization with a suitable
    compiler - doing so with GCC 9.2 showed several
    inconsistencies which have been corrected.
  * There is support for cross-compiling the C and Fortran code
    in R and standard packages on suitable (Linux) platforms.
    This is mainly intended to allow developers to test later
    versions of compilers - for example using GCC 9.2 or 10.x has
    detected issues that GCC 8.3 in Rtools40 does not.
  * There is experimental support for cross-building R packages
    with C, C++ and/or Fortran code.
  * The R installer can now be optionally built to support a single
    architecture (only 64-bit or only 32-bit).
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++14 where
    available (which it is on all currently checked platforms): if
    not (as before) C++11 is used if available otherwise C++ is not
    supported.
    Packages which specify C++11 will still be installed using C++11.
    C++14 compilers may give deprecation warnings, most often for
    std::random_shuffle (deprecated in C++14 and removed in C++17).
    Either specify C++11 (see 'Writing R Extensions') or modernize
    the code and if needed specify C++14.  The latter has been
    supported since R 3.4.0 so the package's DESCRIPTION would need
    to include something like
    Depends: R (&gt;= 3.4)
  PACKAGE INSTALLATION on Windows:
  * R CMD INSTALL and R CMD SHLIB make use of their flag --use-LTO
    when the LTO_OPT make macro is set in file etc/${R_ARCH}/Makeconf
    or in a personal/site Makevars file.  (For details see 'Writing R
    Extensions' SS4.5.)
    This provides a valuable check on code consistency.  It does work
    with GCC 8.3 as in Rtools40, but that does not detect everything
    the CRAN checks with current GCC do.
  PACKAGE INSTALLATION on macOS:
  * The default personal library directory on builds with
  - -enable-aqua (including CRAN builds) now differs by CPU type,
    one of
    ~/Library/R/x86_64/x.y/library
    ~/Library/R/arm64/x.y/library
    This uses the CPU type R (and hence the packages) were built for,
    so when a x86_64 build of R is run under Rosetta emulation on an
    arm64 Mac, the first is used.
  UTILITIES:
  * R CMD check can now scan package functions for bogus return
    statements, which were possibly intended as return() calls (wish
    of PR#17180, patch by Sebastian Meyer). This check can be
    activated via the new environment variable
    _R_CHECK_BOGUS_RETURN_, true for --as-cran.
  * R CMD build omits tarballs and binaries of previous builds from
    the top-level package directory.  (PR#17828, patch by Sebastian
    Meyer.)
  * R CMD check now runs sanity checks on the use of LazyData, for
    example that a data directory is present and that
    LazyDataCompression is not specified without LazyData and has a
    documented value.  For packages with large LazyData databases
    without specifying LazyDataCompression, there is a reference to
    the code given in 'Writing R Extensions' SS1.1.6 to test the
    choice of compression (as in all the CRAN packages tested a
    non-default method was preferred).
  * R CMD build removes LazyData and LazyDataCompression fields from
    the DESCRIPTION file of packages without a data directory.
  ENCODING-RELATED CHANGES:
  * The parser now treats \Unnnnnnnn escapes larger than the upper
    limit for Unicode points (\U10FFFF) as an error as they cannot be
    represented by valid UTF-8.
    Where such escapes are used for outputting non-printable
    (including unassigned) characters, 6 hex digits are used (rather
    than 8 with leading zeros).  For clarity, braces are used, for
    example \U{0effff}.
  * The parser now looks for non-ASCII spaces on Solaris (as
    previously on most other OSes).
  * There are warnings (including from the parser) on the use of
    unpaired surrogate Unicode points such as \uD834.  (These cannot
    be converted to valid UTF-8.)
  * Functions nchar(), tolower(), toupper() and chartr() and those
    using regular expressions have more support for inputs with a
    marked Latin-1 encoding.
  * The character-classification functions used (by default) to
    replace the system iswxxxxx functions on Windows, macOS and AIX
    have been updated to Unicode 13.0.0.
    The character-width tables have been updated to include new
    assignments in Unicode 13.0.0.
  * The code for evaluating default (extended) regular expressions
    now uses the same character-classification functions as the rest
    of R (previously they differed on Windows, macOS and AIX).
  * There is a build-time option to replace the system's
    wide-character wctrans C function by tables shipped with R: use
    configure option --with-internal-towlower or (on Windows)
  - DUSE_RI18N_CASE in CFLAGS when building R.  This may be needed
    to allow tolower() and toupper() to work with Unicode characters
    beyond the Basic Multilingual Plane where not supported by system
    functions (e.g. on Solaris where it is the new default).
  * R is more careful when truncating UTF-8 and other multi-byte
    strings that are too long to be printed, passed to the system or
    libraries or placed into an internal buffer.  Truncation will no
    longer produce incomplete multibyte characters.
  DEPRECATED AND DEFUNCT:
  * Function plclust() from the package stats and
    package.dependencies(), pkgDepends(), getDepList(),
    installFoundDepends(), and vignetteDepends() from package tools
    are defunct.
  * Defunct functions checkNEWS() and readNEWS() from package tools
    and CRAN.packages() from utils have been removed.
  * R CMD config CXXCPP is defunct (it was deprecated in R 3.6.2).
  * parallel::detectCores() drops support for Irix (retired in 2013).
  * The LINPACK argument to chol.default(), chol2inv(),
    solve.default() and svd() has been defunct since R 3.1.0.  It was
    silently ignored up to R 4.0.3 but now gives an error.
  * Subsetting/indexing, such as ddd[*] or ddd$x on a DOTSXP
    (dot-dot-dot) object ddd has been disabled; it worked by accident
    only and was undocumented.
  BUG FIXES:
  * Many more C-level allocations (mainly by malloc and strdup) are
    checked for success with suitable alternative actions.
  * Bug fix for replayPlot(); this was turning off graphics engine
    display list recording if a recorded plot was replayed in the
    same session.  The impact of the bug became visible if resize the
    device after replay OR if attempted another savePlot() after
    replay (empty display list means empty screen on resize or empty
    saved plot).
  * R CMD check etc now warn when a package exports non-existing S4
    classes or methods, also in case of no "methods" presence.
    (Reported by Alex Bertram; reproducible example and patch by
    Sebastian Meyer in PR#16662.)
  * boxplot() now also accepts calls for labels such as ylab, the
    same as plot().  (Reported by Marius Hofert.)
  * The help page for xtabs() now correctly states that addNA is
    setting na.action = na.pass among others.  (Reported as PR#17770
    by Thomas Soeiro.)
  * The R CMD check &lt;pkg&gt; gives a longer and more comprehensible
    message when DESCRIPTION misses dependencies, e.g., in Imports:.
    (Thanks to the contributors of PR#17179.)
  * update.default() now calls the generic update() on the formula to
    work correctly for models with extended formulas.  (As reported
    and suggested by Neal Fultz in PR#17865.)
  * The horizontal position of leaves in a dendrogram is now correct
    also with center = FALSE.  (PR#14938, patch from Sebastian
    Meyer.)
  * all.equal.POSIXt() no longer warns about and subsequently ignores
    inconsistent "tzone" attributes, but describes the difference in
    its return value (PR#17277).  This check can be disabled _via_
    the new argument check.tzone = FALSE as suggested by Sebastian
    Meyer.
  * as.POSIXct() now populates the "tzone" attribute from its tz
    argument when x is a logical vector consisting entirely of NA
    values.
  * x[[2^31]] &lt;- v now works.  (Thanks to the report and patch by
    Suharto Anggono in PR#17330.)
  * In log-scale graphics, axis() ticks and label positions are now
    computed more carefully and symmetrically in their range,
    typically providing _more_ ticks, fulfilling wishes in PR#17936.
    The change really corresponds to an improved axisTicks() (package
    grDevices), potentially influencing grid and lattice, for
    example.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now correct to at
    least five digits where it was catastrophically wrong,
    previously.
  * sum(df) and similar "Summary"- and "Math"-group member functions
    now work for data frames df with logical columns, notably also of
    zero rows.  (Reported to R-devel by Martin "b706".)
  * unsplit() had trouble with tibbles due to unsound use of rep(NA,
    len)-indexing, which should use NA_integer_ (Reported to R-devel
    by Mario Annau.)
  * pnorm(x, log.p = TRUE) underflows to -Inf slightly later.
  * show(&lt;hidden S4 generic&gt;) prints better and without quotes for
    non-hidden S4 generics.
  * read.table() and relatives treated an "NA" column name as missing
    when check.names = FALSE PR#18007.
  * Parsing strings containing UTF-16 surrogate pairs such as
    "\uD834\uDD1E" works better on some (uncommon) platforms.
    sprintf("%X", utf8ToInt("\uD834\uDD1E")) should now give "1D11E"
    on all platforms.
  * identical(x,y) is no longer true for differing DOTSXP objects,
    fixing PR#18032.
  * str() now works correctly for DOTSXP and related exotics, even
    when these are doomed.
    Additionally, it no longer fails for lists with a class and
    "irregular" method definitions such that e.g. lapply(*) will
    necessarily fail, as currently for different igraph objects.
  * Too long lines in environment files (e.g. Renviron) no longer
    crash R. This limit has been increased to 100,000 bytes.
    (PR#18001.)
  * There is a further workaround for FreeType giving incorrect
    italic font faces with cairo-based graphics devices on macOS.
  * add_datalist(*, force = TRUE) (from package tools) now actually
    updates an existing data/datalist file for new content.  (Thanks
    to a report and patch by Sebastian Meyer in PR#18048.)
  * cut.Date() and cut.POSIXt() could produce an empty last interval
    for breaks = "months" or breaks = "years".  (Reported as PR#18053
    by Christopher Carbone.)
  * Detection of the encoding of 'regular' macOS locales such as
    en_US (which is UTF-8) had been broken by a macOS change:
    fortunately these are now rarely used with en_US.UTF-8 being
    preferred.
  * sub() and gsub(pattern, repl, x, *) now keep attributes of x such
    as names() also when pattern is NA (PR#18079).
  * Time differences ("difftime" objects) get a replacement and a
    rep() method to keep "units" consistent.  (Thanks to a report and
    patch by Nicolas Bennett in PR#18066.)
  * The \RdOpts macro, setting defaults for \Sexpr options in an Rd
    file, had been ineffective since R 2.12.0: it now works again.
    (Thanks to a report and patch by Sebastian Meyer in PR#18073.)
  * mclapply and pvec no longer accidentally terminate parallel
    processes started before by mcparallel or related calls in
    package parallel (PR#18078).
  * grep and other functions for evaluating (extended) regular
    expressions handle in Unicode also strings not explicitly flagged
    UTF-8, but flagged native when running in UTF-8 locale.
  * Fixed a crash in fifo implementation on Windows (PR#18031).
  * Binary mode in fifo on Windows is now properly detected from
    argument open (PR#15600, PR#18031).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1622808000">- The line %{__install} -m 755 -d %{_infodir}
  no longer works in TW or Factory.
  But without that line it works everywhere. So this instruction
  was commented out of the spec file.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1628596800">- CHANGES IN R 4.1.1:
  NEW FEATURES:
  * require(pkg, quietly = TRUE) is quieter and in particular does
    not warn if the package is not found.
  DEPRECATED AND DEFUNCT:
  * Use of ftp:// URIs should be regarded as deprecated, with
    on-going support confined to method = "libcurl" and not routinely
    tested.  (Nowadays no major browser supports them.)
  * The non-default method = "internal" is deprecated for http:// and
    ftp:// URIs for both download.file and url.
  * On Windows, method = "wininet" is deprecated for http://,
    https:// and ftp:// URIs for both download.file and url.  (A
    warning is only given for ftp://.)
    For ftp:// URIs the default method is now "libcurl" if available
    (which it is on CRAN builds).
    method = "wininet" remains the default for http:// and https://
    URIs but if libcurl is available, using method = "libcurl" is
    preferred.
  INSTALLATION:
  * make check now works also without a LaTeX installation.  (Thanks
    to Sebastian Meyer's PR#18103.)
  BUG FIXES:
  * make check-devel works again in an R build configured with
  - -without-recommended-packages.
  * qnbinom(p, size, mu) for large size/mu is correct now in a range
    of cases (PR#18095); similarly for the (size, prob)
    parametrization of the negative binomial.  Also qpois() and
    qbinom() are better and or faster for extreme cases.  The
    underlying C code has been modularized and is common to all four
    cases of discrete distributions.
  * gap.axis is now part of the axis() arguments which are passed
    from bxp(), and hence boxplot().  (Thanks to Martin Smith's
    report and suggestions in PR#18109.)
  * .First and .Last can again be set from the site profile.
  * seq.int(from, to, *) and seq.default(..) now work better in large
    range cases where from-to is infinite where the two boundaries
    are finite.
  * all.equal(x,y) now returns TRUE correctly also when several
    entries of abs(x) and abs(y) are close to .Machine$double.xmax,
    the largest finite numeric.
  * model.frame() now clears the object bit when removing the class
    attribute of a value via na.action (PR#18100).
  * charClass() now works with multi-character strings on Windows
    (PR#18104, fixed by Bill Dunlap).
  * encodeString() on Solaris now works again in Latin-1 encoding on
    characters represented differently in UTF-8.  Support for
    surrogate pairs on Solaris has been improved.
  * file.show() on Windows now works with non-ASCII path names
    representable in the current native encoding (PR#18132).
  * Embedded R on Windows can now find R home directory via the
    registry even when installed only for the current user
    (PR#18135).
  * pretty(x) with finite x now returns finite values also in the
    case where the extreme x values are close in size to the maximal
    representable number .Machine$double.xmax.
    Also, it's been tweaked for very small ranges and when a boundary
    is close (or equal) to zero; e.g., pretty(c(0,1e-317)) no longer
    has negative numbers, currently still warning about a very small
    range, and pretty(2^-(1024 - 2^-1/(c(24,10)))) is more accurate.
  * The error message for not finding vignette files when weaving has
    correct file sizes now. (Thanks to Sebastian Meyer's PR#18154.)
  * dnbinom(20, &lt;large&gt;, 1) now correctly gives 0, and similar cases
    are more accurate with underflow precaution.  (Reported by Francisco Vera Alcivar in PR#18072.)</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635163200">- repaired https://bugzilla.suse.com/show_bug.cgi?id=1191380
  (rpmacros now go to rpmmacrodir)
- minor clean-ups in spec file</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635768000">- CHANGES IN R 4.1.2:
  C-LEVEL FACILITIES:
  * The workaround in headers R.h and Rmath.h (using namespace std;)
    for the Oracle Developer Studio compiler is no longer needed now
    C++11 is required so has been removed.  A couple more usages of
    log() (which should have been std::log()) with an int argument
    are reported on Solaris.
  * The undocumented limit of 4095 bytes on messages from the
    S-compatibility macros PROBLEM and MESSAGE is now documented and
    longer messages will be silently truncated rather than
    potentially causing segfaults.
  * If the R_NO_SEGV_HANDLER environment variable is non-empty, the
    signal handler for SEGV/ILL/BUS signals (which offers recovery
    user interface) is not set. This allows more reliable debugging
    of crashes that involve the console.
  DEPRECATED AND DEFUNCT:
  * The legacy S-compatibility macros PROBLEM, MESSAGE, ERROR, WARN,
    WARNING, RECOVER, ... are deprecated and will be hidden in R
    4.2.0. R's native interface of Rf_error and Rf_warning has long
    been preferred.
  BUG FIXES:
  * .mapply(F, dots, .) no longer segfaults when dots is not a list
    and uses match.fun(F) as always documented; reported by Andrew
    Simmons in PR#18164.
  * hist(&lt;Date&gt;, ...) and hist(&lt;POSIXt&gt;, ...)  no longer pass
    arguments for rect() (such as col and density) to axis().
    (Thanks to Sebastian Meyer's PR#18171.)
  * \Sexpr{ch} now preserves Encoding(ch). (Thanks to report and
    patch by Jeroen Ooms in PR#18152.)
  * Setting the RNG to "Marsaglia-Multicarry" e.g., by RNGkind(), now
    warns in more places, thanks to Andr'e Gillibert's report and
    patch in PR#18168.
  * gray(numeric(), alpha=1/2) no longer segfaults, fixing PR#18183,
    reported by Till Krenz.
  * Fixed dnbinom(x, size=&lt;very_small&gt;, .., log=TRUE) regression,
    reported by Martin Morgan.
  * as.Date.POSIXlt(x) now keeps names(x), thanks to Davis Vaughan's
    report and patch in PR#18188.
  * model.response() now strips an "AsIs" class typically, thanks to
    Duncan Murdoch's report and other discussants in PR#18190.
  * try() is considerably faster in case of an error and long call,
    as e.g., from some do.call().  Thanks to Alexander Kaever's
    suggestion posted to R-devel.
  * qqline(y = &lt;object&gt;) such as y=I(.), now works, see also
    PR#18190.
  * Non-integer mgp par() settings are now handled correctly in
    axis() and mtext(), thanks to Mikael Jagan and Duncan Murdoch's
    report and suggestion in PR#18194.
  * formatC(x) returns length zero character() now, rather than ""
    when x is of length zero, as documented, thanks to Davis
    Vaughan's post to R-devel.
  * removeSource(fn) now retains (other) attributes(fn).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1647000000">- CHANGES IN R 4.1.3:
  NEW FEATURES:
  * The default version of Bioconductor has been changed to 3.14.
    (This is used by setRepositories and the menus in GUIs.)
  UTILITIES:
  * R CMD check --as-cran has a workaround for a bug in versions of
    file up to at least 5.41 which mis-identify DBF files last
    changed in 2022 as executables.
  C-LEVEL FACILITIES:
  * The legacy S-compatibility macros SINGLE_* in R_ext/Constants.h
    (included by R.h) are deprecated and will be removed in R 4.2.0.
  BUG FIXES:
  * Initialization of self-starting nls() models with initialization
    functions following the pre-R-4.1.0 API (without the ...
    argument) works again for now, with a deprecation warning.
  * Fixed quoting of ~autodetect~ in Java setting defaults to avoid
    inadvertent user lookup due to leading ~, reported in PR#18231 by
    Harold Gutch.
  * substr(., start, stop) &lt;- v now treats _negative_ stop values
    correctly.  Reported with a patch in PR#18228 by Brodie Gaslam.
  * Subscripting an array x without dimnames by a
    length(dim(x))-column character matrix gave "random" non-sense,
    now an error; reported in PR#18244 by Mikael Jagan.
  * ...names() now matches names(list(...)) closely, fixing PR#18247.
  * all.equal(*, scale = s) now works as intended when length(s) &gt; 1,
    partly thanks to Michael Chirico's PR#18272.
  * print(x) for long vectors x now also works for named atomic
    vectors or lists and prints the correct number when reaching the
    getOption("max.print") limit; partly thanks to a report and
    proposal by Hugh Parsonage to the R-devel list.
  * all.equal(&lt;selfStart&gt;, *) no longer signals a deprecation
    warning.
  * reformulate(*, response=r) gives a helpful error message now when
    length(r) &gt; 1, thanks to Bill Dunlap's PR#18281.
  * Modifying globalCallingHandlers inside withCallingHandlers() now
    works or fails correctly, thanks to Henrik Bengtsson's PR#18257.
  * hist(&lt;Date&gt;, breaks = "days") and hist(&lt;POSIXt&gt;, breaks = "secs")
    no longer fail for inputs of length 1.
  * qbeta(.001, .9, .009) and similar cases now converge correctly
    thanks to Ben Bolker's report in PR#17746.
  * window(x, start, end) no longer wrongly signals "'start' cannot
    be after 'end'", fixing PR#17527 and PR#18291.
  * data() now checks that its (rarely used) list argument is a
    character vector - a couple of packages passed other types and
    gave incorrect results.
  * which() now checks its arr.ind argument is TRUE rather coercing
    to logical and taking the first element - which gave incorrect
    results in package code.
  * model.weights() and model.offset() more carefully extract their
    model components, thanks to Ben Bolker and Tim Taylor's R-devel
    post.
  * list.files(recursive = TRUE) now shows all broken symlinks
    (previously, some of them may have been omitted, PR#18296).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1650628800">- CHANGES IN R 4.2.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * The formula method of aggregate() now matches the generic in
    naming its first argument x (resolving PR#18299 by Thomas
    Soeiro).
    This means that calling aggregate() with a formula as a named
    first argument requires name formula in earlier versions of R and
    name x now, so portable code should not name the argument (code
    in many packages did).
  * Calling &amp;&amp; or || with either argument of length greater than one
    now gives a warning (which it is intended will become an error).
  * Calling if() or while() with a condition of length greater than
    one gives an error rather than a warning.  Consequently,
    environment variable _R_CHECK_LENGTH_1_CONDITION_ no longer has
    any effect.
  * Windows users should consult the WINDOWS section below for some
    profound changes including
  * Support for 32-bit builds has been dropped.
  * UTF-8 locales are used where available.
  * The default locations for the R installation and personal
    library folder have been changed.
    Thanks to Tomas Kalibera for months of work on the Windows port
    for this release.
  NEW FEATURES:
  * matrix(x, n, m) now warns in more cases where length(x) differs
    from n * m, as suggested by Abby Spurdle and Wolfgang Huber in
    Feb 2021 on the R-devel mailing list.
    This warning can be turned into an error by setting environment
    variable _R_CHECK_MATRIX_DATA_ to TRUE: R CMD check --as-cran
    does so unless it is already set.
  * Function file_test() in package utils gains tests for symlinks,
    readability and writability.
  * capabilities("libxml") is now false.
    The description of capabilities("http/ftp") now reflects that it
    refers to the default method, no longer the internal one.
  * simplify2array() gains an except argument for controlling the
    exceptions used by sapply().
  * Environment variables R_LIBS_USER and R_LIBS_SITE are both now
    set to the R system default if unset or empty, and can be set to
    NULL to indicate an empty list of user or site library
    directories.
  * The warning for axis()(-like) calls in cases of relatively small
    ranges (typically in log-scale situations) is slightly improved
    _and_ suppressed from explicit calls to .axisPars() as has always
    been the intention.
  * The contrasts setter function `contrasts&lt;-` gains an explicit
    default how.many = NULL rather than just using missing(how.many).
  * grid.pretty() gains a new optional argument n = 5.
  * There is a new function .pretty() with option bounds as a
    technical-utility version of pretty().  It and pretty() gain a
    new argument f.min with a better than back-compatible default.
  * Function grDevices::axisTicks() and related functions such as
    graphics::axis() work better, notably for the log scale; partly
    because of the pretty() improvements, but also because care is
    taken e.g., when ylim is finite but diff(ylim) is infinite.
  * nclass.FD() gains a digits option.
  * The R Mathlib internal C function bd0() (called indirectly from a
    dozen probability density and distribution functions such as
    dpois(), dbinom(), dgamma(), pgamma() _etc_) has been
    complemented by a more sophisticated and (mostly) more accurate C
    function ebd0(), currently called only by internal dpois_raw()
    improving accuracy for R level dpois() and potentially others
    calling it such as dnbinom(), dgamma() or pgamma().  (Thanks to
    Morten Welinder's PR#15628.)
  * write.ftable() gains sep = " " argument as suggested by Thomas
    Soeiro.
  * The names of the locale categories supported by R's
    Sys.getlocale() and Sys.setlocale() are now provided by variable
    .LC.categories in the base namespace.
  * The Date and POSIXt methods for hist() and the histogram method
    for plot() now also use the new default col = "lightgray" in
    consistency with the corresponding change to hist()'s default for
    R 4.0.0.
  * hist.default() gains new fuzz argument, and the histogram plot
    method no longer uses fractional axis ticks when displaying
    counts ("Frequency").
  * mapply() and hence Map() now also obey the "max-or-0-if-any"
    recycling rule, such that, e.g., Map(`+`, 1:3, 1[0]) is valid
    now.
  * as.character(&lt;obj&gt;) for "hexmode" or "octmode" objects now
    fulfils the important basic rule as.character(x)[j] ===
    as.character(x[j]).
  * The set utility functions, notably intersect() have been tweaked
    to be more consistent and symmetric in their two set arguments,
    also preserving a common mode.
  * substr(ch, start,end) &lt;- new now e.g., preserves names(ch); ditto
    for substring(), thanks to a patch from Brodie Gaslam.
  * plot(&lt;lm&gt;) gains a extend.ylim.f argument, in partial response to
    PR#15285; further PR#17784 is fixed thanks to several
    contributors and a patch by Elin Waring.  The Cook's dist
    contours get customizable via cook.col and cook.lty with a
    different default color and their legend is nicer by default and
    customizable via cook.legendChanges.
  * Attempting to subset an object that is not subsettable now
    signals an error of class notSubsettableError. The
    non-subsettable object is contained in the object field of the
    error condition.
  * Subscript-out-of-bounds errors are now signaled as errors of
    class subscriptOutOfBoundsError.
  * Stack-overflow errors are now signaled as errors inheriting from
    class stackOverflowError. See ?stackOverflowError for more
    details.
  * New partly experimental Sys.setLanguage() utility, solving the
    main problem of PR#18055.
  * gettext() and gettextf() get a new option trim = TRUE which when
    set to false allows translations for strings such as "Execution
    halted\n" typical for C code.
  * An experimental implementation of hash tables is now available.
    See ?hashtab for more details.
  * identical() gains a extptr.as.ref argument for requesting that
    external pointer objects be compared as reference objects.
  * reorder() gets an argument decreasing which it passes to sort()
    for level creation; based on the wish and patch by Thomas Soeiro
    in PR#18243.
  * as.vector() gains a data.frame method which returns a simple
    named list, also clearing a long standing 'FIXME' to enable
    as.vector(&lt;data.frame&gt;, mode="list").  This breaks code relying
    on as.vector(&lt;data.frame&gt;) to return the unchanged data frame.
  * legend() is now vectorized for arguments cex, x.intersp, and
    text.width.  The latter can now also be specified as a vector
    (one element for each column of the legend) or as NA for
    computing a proper column wise maximum value of strwidth(legend).
    The argument y.intersp can be specified as a vector with one
    entry for each row of the legend.
    legend() also gains new arguments title.cex and title.font.
    Thanks to Swetlana Herbrandt.
  * Deparsing no longer remaps attribute names dim, dimnames, levels,
    names and tsp to historical S-compatible names (which structure()
    maps back).
  * sample() and sample.int() have additional sanity checks on their
    size and n arguments.
    all.equal.numeric() gains a sanity check on its tolerance
    argument - calling all.equal(a, b, c) for three numeric vectors
    is a surprisingly common error.
    mean(na.rm =), rank(na.last =), barplot(legend.text =),
    boxplot(), contour(drawlabels =), polygon(border =) and
    methods::is(class2 =) have more robust sanity checks on their
    arguments.
    R CMD Rd2pdf (used by R CMD check) has a more robust sanity check
    on the format of \alias{} commands.
  * psigamma(x, deriv) for negative x now also works for deriv = 4
    and 5; their underlying C level dpsifn() is documented in
    'Writing R Extensions'.
  * The HTML help system now uses HTML5 (wish of PR#18149).
  * ks.test() now provides exact p-values also with ties and MC
    p-values in the two-sample (Smirnov) case.  By Torsten Hothorn.
  * ks.test() gains a formula interface, with y ~ 1 for the
    one-sample (Kolmogorov) test and y ~ group for the two-sample
    (Smirnov) test.  Contributed by Torsten Hothorn.
  * The return value from ks.test() now has class c("ks.test",
    "htest") - packages using try() need to take care to use
    inherits() and not == on the class.
  * New functions psmirnov(), qsmirnov() and rsmirnov() in package
    stats implementing the asymptotic and exact distributions of the
    two-sample Smirnov statistic.
  * iconv() now allows sub = "c99" to use C99-style escapes for UTF-8
    inputs which cannot be converted to encoding to.
  * In a forward pipe |&gt; expression it is now possible to use a named
    argument with the placeholder _ in the rhs call to specify where
    the lhs is to be inserted.  The placeholder can only appear once
    on the rhs.
  * The included LAPACK sources have been updated to version 3.10.0,
    except for the four Fortran 77 routines which 3.10.0 has
    re-implemented in Fortran 90 (where the older versions have been
    retained as the R build process does not support Fortran 90).
  * path.expand() and most other uses of tilde expansion now warn if
    a path would be too long if expanded.  (An exception is
    file.exists(), which silently returns false.)
  * trunc(&lt;Date&gt;, *) now supports units = "months" or "years" for
    consistency with the POSIXt method, thanks to Dirk Eddelbuettel's
    proposal in PR#18099.
  * list2DF() now checks that its arguments are of the same length,
    rather than use recycling.
  * The HTML help system has several new features: LaTeX-like math
    can be typeset using either KaTeX or MathJax, usage and example
    code is highlighted using Prism, and for dynamic help the output
    of examples and demos can be shown within the browser if the
    knitr package is installed. These features can be disabled by
    setting the environment variable _R_HELP_ENABLE_ENHANCED_HTML_ to
    a false value.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 15
    and so packages that provide graphics devices should be
    reinstalled.
  * The grid package now allows the user to specify a "vector" of
    pattern fills.  The fill argument to gpar() accepts a list of
    gradients and/or patterns and the functions linearGradient(),
    radialGradient(), and pattern() have a new group argument.
    Points grobs (data symbols) can now also have a pattern fill.
    The grobCoords() function now returns a more informative and
    complex result.
  * The grid package has new functions for drawing isolated groups:
    grid.group(), grid.define(), and grid.use().  These functions add
    compositing operators and affine transformations to R's graphics
    capabilities.
    The grid package also has new functions for stroking and filling
    paths: grid.stroke(), grid.fill(), and grid.fillStroke().
    A new function as.path() allows the user to specify the fill rule
    for a path that is to be used for clipping, stroking, or filling;
    available options are "winding" and "evenodd".  A new function
    as.mask() allows the user to specify the type of a mask;
    available options are "alpha" and "luminance".
    These new features are only supported so far (at most) on the
    Cairo-based graphics devices and on the pdf() device.
  * dev.capabilities() reports on device support for the new
    features.
  * par() now warns about unnamed non-character arguments to prevent
    misuse such as {usr &lt;- par("usr"); par(usr)}.
  INSTALLATION:
  * Facilities for accessing ftp:// sites are no longer tested
    (except _pro tem_ for curlGetHeaders()) as modern browsers have
    removed support.
  * R can now be built with DEFS = -DSTRICT_R_HEADERS .
  PACKAGE INSTALLATION:
  * R CMD INSTALL no longer tangles vignettes. This completes an R
    CMD build change in R 3.0.0 and affects packages built before R
    3.0.2. Such packages should be re-made with R CMD build to have
    the tangled R code of vignettes shipped with the tarball.
  * USE_FC_LEN_T will become the default: this uses the correct
    prototypes for Fortran BLAS/LAPACK routines called from C/C++,
    and requires adjustment of most such calls - see 'Writing R
    Extensions' SS6.6.2.  (This has been supported since R 3.6.2.)
  * Package installation speed for packages installed with
    keep.source has been improved. This resolve the issue reported by
    Ofek Shilon in PR#18236.
  UTILITIES:
  * R CMD check can optionally report files/directories left behind
    in home, /tmp (even though TMPDIR is set) and other directories.
    See the "R Internals" manual for details.
  * R CMD check now reports byte-compilation errors during
    installation.  These are not usually fatal but may result in
    parts of the package not being byte-compiled.
  * _R_CHECK_DEPENDS_ONLY_ can be applied selectively to examples,
    tests and/or vignettes in R CMD check: see the "R Internals"
    manual.
  * _R_CHECK_SRC_MINUS_W_IMPLICIT_ now defaults to true: recent
    versions of Apple clang on macOS have made implicit function
    declarations in C into a compilation error.
  * R CMD check --as-cran makes use of the environment variable
    AUTORECONF.  See the "R Internals" manual SS8 for further details.
  * R CMD check --use-valgrind also uses valgrind when re-building
    vignettes as some non-Sweave vignettes unhelpfully comment out
    all their code when R CMD check runs vignettes.
  * Errors in re-building vignettes (unless there are LaTeX errors)
    are reported by R CMD check as ERROR rather than WARNING when
    running vignettes has been skipped (as it frequently is in CRAN
    checks and by --as-cran).
  * R CMD Rd2pdf gains a --quiet option that is used by R CMD build
    when building the PDF package manual.
  * R CMD Rd2pdf now always runs LaTeX in batch mode, consistent with
    Texinfo &gt;= 6.7. The --batch option is ignored.
  * R CMD build and R CMD check now include the Rd file name and line
    numbers in the error message of an \Sexpr evaluation failure.
  * For packages using the \doi Rd macro (now an install-time \Sexpr)
    but no other dynamic Rd content, R CMD build now produces a
    smaller tarball and is considerably faster - skipping temporary
    package installation.
  C-LEVEL FACILITIES:
  * The non-API header R_ext/R-ftp-http.h is no longer provided, as
    the entry points it covered are now all defunct.
  * A number of non-API declarations and macro definitions have been
    moved from the installed header Rinternals.h to the internal
    header Defn.h. Packages that only use entry points and
    definitions documented to be part of the API as specified in
    'Writing R Extensions' SS6 should not be affected.
  * The macro USE_RINTERNALS no longer has any effect when compiling
    package code.  Packages which also use R_NO_REMAP will need to
    ensure that the remapped names are used for calls to API
    functions that were formerly also made available as macros.
  * The deprecated legacy S-compatibility macros PROBLEM, MESSAGE,
    ERROR, WARN, WARNING, RECOVER, ... are no longer defined in
    R_exts/RS.h (included by R.h).  Replace these by calls to
    Rf_error and Rf_warning (defined in header R_ext/Error.h included
    by R.h).
    Header R_ext/RS.h no longer includes R_ext/Error.h.
  * Header R_ext/Constants.h (included by R.h) when included from C++
    now includes the C++ header cfloat rather than the C header
    float.h (now possible as C++11 is required).
  * The legacy S-compatibility macros DOUBLE_* in R_ext/Constants.h
    (included by R.h) are deprecated.
  * The deprecated S-compatibility macros SINGLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * R_Calloc, R_Free and R_Realloc are preferred to their unprefixed
    forms and error messages now use the prefix. These forms were
    introduced in R 3.4.0 and are available even when
    STRICT_R_HEADERS is defined.
  * rmultinom has been documented in 'Writing R Extensions' SS6 so is
    now part of the R API.
  * Similarly, Rtanpi, called from R level tanpi() is now part of the
    R API.
  * The long-deprecated, undocumented and non-API entry point call_R
    is no longer declared in R_ext/RS.h (included by R.h).
  * The header S.h which has been unsupported since Jan 2016 has been
    removed.  Use R.h instead.
  DEPRECATED AND DEFUNCT:
  * The (non-default and deprecated) method = "internal" for
    download.file() and url() no longer supports http:// nor ftp://
    URIs.  (It is used only for file:// URIs.)
    On Windows, download.file(method = "wininet") no longer supports
    ftp:// URIs.  (It is no longer the default method, which is
    "libcurl" and does.)
    On Windows, the deprecated method = "wininet" now gives a warning
    for http:// and https:// URIs for both download.file() and url().
    (It is no longer the default method.)
  * On Windows, the command-line option --max-mem-size and
    environment variable R_MAX_MEM_SIZE are defunct.  The memory
    allocation limit was important for 32-bit builds, but these are
    no longer supported.
  * default.stringsAsFactors() is now formally deprecated, where that
    was only mentioned on its regular help page, previously.  So it
    now gives a warning if called.
  * unix.time() is defunct now; it had been deprecated since R 3.4.0.
  BUG FIXES:
  * Setting digits = 0 in format(), print.default() (and hence
    typically print()) or options() is again invalid.  Its behaviour
    was platform-dependent, and it is unclear what "zero significant
    digits" should mean (PR#18098).
  * Messages from C code in the cairo section of package grDevices
    are now also offered for translation, thanks to Michael Chirico's
    PR#18123.
  * mean(x) with finite x now is finite also without "long.double"
    capability.
  * R CMD Rd2pdf no longer leaves an empty build directory behind
    when it aborts due to an already existing output file.  (Thanks
    to Sebastian Meyer's PR#18141.)
  * density(x, weights = w, na.rm = TRUE) when anyNA(x) is true, now
    removes weights "in parallel" to x, fixing PR#18151, reported by
    Matthias Gondan.  Additionally, it gets a subdensity option.
  * Conversion of \Sexpr[]{&lt;expR&gt;} to LaTeX or HTML no longer
    produces long blocks of empty lines when &lt;expR&gt; itself contains
    several lines all producing empty output.  Thanks to a report and
    patch by Ivan Krylov posted to R-devel.
  * R CMD build no longer fails if a package vignette uses child
    documents and inst/doc exists.  (Thanks to Sebastian Meyer's
    PR#18156.)
  * When an R documentation ('help' source) file man/foo.Rd in a
    package has \donttest{..} examples with a syntax error, it is now
    signalled as ERROR and with correct line numbers relating to the
  * -Ex.R file, thanks to Duncan Murdoch and Sebastian Meyer's
    reports and patch proposals in PR#17501.
  * Improved determination of the correct translation domain in
    non-base packages, addressing the combination of PR#18092 and
    PR#17998 (#c6) with reports and _augmented_ patch #2904 by
    Suharto Anggono.
    Note that "R-base" is no longer the default domain e.g., for
    top-level calls to gettext(); rather translation needs explicit
    domain = * specification in such cases.
  * identical(attrib.as.set=FALSE) now works correctly with data
    frames with default row names (Thanks to Charlie Gao's PR#18179).
  * txtProgressBar() now enforces a non-zero width for argument char,
    without which no progress can be visible.
  * dimnames(table(d)) is more consistent in the case where d is a
    list with a single component, thanks to Thomas Soeiro's report to
    R-devel.
    Further, table(d1, d2) now gives an error when d1 and d2 are data
    frames as suggested by Thomas in PR#18224.
  * Fix for drawing semi-transparent lines and fills on the native
    Windows graphics device (PR#18219 and PR#16694).  Thanks to Nick
    Ray for helpful diagnosis on Bugzilla.
  * The deparser now wraps sub-expressions such as if(A) ..  with
    parentheses when needed; thanks to Duncan Murdoch's PR#18232 and
    Lionel Henry's patches there.
  * remove.packages() no longer tries to uninstall Priority: base
    packages, thanks to a report and suggestions by Colin Fay in
    PR#18227.
  * win.metafile() now has xpinch and ypinch arguments so that the
    user can override Windows' (potentially wrong) guess at device
    dimensions.
  * x[i] and x[[i]] for non-integer i should now behave in all cases
    as always documented: the index used is equivalent to
    as.integer(i) unless that would overflow where trunc(i) is used
    instead; thanks to Suharto Anggono's report and patch proposals
    in PR#17977.
  * asOneSidedFormula() now associates the resulting formula with the
    global environment rather than the evaluation environment created
    for the call.
  * &lt;bibentry&gt;$name now matches the field name case-insensitively,
    consistent with bibentry() creation and the replacement method.
  * cbind() failed to detect some length mismatches with a mixture of
    time-series and non-time-series inputs.
  * The default LaTeX style file Sweave.sty used by the RweaveLatex
    driver no longer loads the obsolete ae package; thanks to a
    report by Thomas Soeiro in PR#18271.  Furthermore, it now skips
    \usepackage[T1]{fontenc} for engines other than pdfTeX (if
    detected) or if the new [nofontenc] option is used.
  * smooth.spline() now stores its logical cv argument more safely,
    fixing a rare bug when printing, and also stores n.
  * smooth.spline(x,y,*) now computes the cv.crit statistic
    correctly, also when is.unsorted(x), fixing PR#18294.
  * The data.frame method of rbind() now warns when binding
    not-wholly-recycling vectors, by analogy to the default method
    (for matrices).
  * setAs() finds the correct class for name to when multiple
    packages define a class with that name. Thanks to Gabor Csardi
    for the report.
  * Fix for detaching a package when two classes of the same name are
    present in method signatures for the same generic. Thanks to
    Gabor Csardi for the report.
  * match.arg("", c("", "a", "B")) gives a better error message, in
    part from PR#17959, thanks to Elin Waring.
  * R CMD Sweave --clean no longer removes pre-existing files or
    subdirectories (PR#18242).
  * The quartz() device no longer splits polylines into subpaths.
    That has caused narrowly-spaced lines with many points to always
    look solid even when dashed line type was used due to dash phase
    restarts.
  * Deparsing constructs such as quote(1 + `!`(2) + 3) works again as
    before R 3.5.0, thanks to the report and patch in PR#18284 by
    Suharto Anggono.
  * as.list(f) for a factor f now keeps names(f), fixing PR#18309.
  * qbeta(.001, .9, .009) and analogous qf() calls now return a
    correct value instead of NaN or wrongly 1, all with a warning;
    thanks to the report by Ludger Goeminne in PR#18302.
  * plot.lm() failed to produce the plot of residuals vs.  factor
    levels (i.e., which=5 when leverages are constant) for models
    with character predictors (PR#17840).
  * interaction.plot(..., xtick = TRUE) misplaced the x-axis line
    (PR#18305).
  * Not strictly fixing a bug, format()ing and print()ing of
    non-finite Date and POSIXt values NaN and +/-Inf no longer show
    as NA but the respective string, e.g., Inf, for consistency with
    numeric vector's behaviour, fulfilling the wish of PR#18308.
  * R CMD check no longer runs test scripts generated from
    corresponding .Rin files twice and now signals an ERROR if
    processing an .Rin script fails.
  * tools::Rd2txt() used for plain-text help pages now renders \hrefs
    (if tools::Rd2txt_options(showURLs = TRUE)) and \urls with
    percent-encoding and standards-compliant delimiting style (angle
    brackets and no URL: prefix).  \email is now rendered with a
    mailto: prefix.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1655985600">- CHANGES IN R 4.2.1:
  NEW FEATURES:
  * New function utils::findCRANmirror() to find out if a CRAN mirror
    has been selected, otherwise fallback to the main site.  This
    behaves in the same way as tools::CRAN_package_db() and is
    intended for packages wishing to access CRAN for purposes other
    than installing packages.
    The need for this was shown by a day when the main CRAN website
    was offline and a dozen or so packages which had its URL
    hardcoded failed their checks.
  INSTALLATION on a UNIX-ALIKE:
  * The libraries searched for by --with-blas (without a value) now
    include BLIS (after OpenBLAS but before ATLAS).  And on macOS,
    the Accelerate framework (after ATLAS).  (This is patterned after
    the AX_BLAS macro from the Autoconf Archive.)
  * The included LAPACK sources have been updated to 3.10.1.
  UTILITIES:
  * The (full path to) the command tidy to be used for HTML
    validation can be set by environment variable R_TIDYCMD.
  * Setting environment variable _R_CHECK_RD_VALIDATE_RD2HTML_ to a
    false value will override R CMD check --as-cran and turn off HTML
    validation.  This provides a way to circumvent a problematic
    tidy.
    The 2006 version that ships with macOS is always skipped.
  C-LEVEL FACILITIES:
  * The undocumented legacy declarations of Sint, Sfloat, SINT_MAX
    and SINT_MIN in header R.h are deprecated.
  BUG FIXES:
  * fisher.test(d) no longer segfaults for "large" d; fixing PR#18336
    by preventing/detecting an integer overflow reliably.
  * tar(., files=*) now produces correctly the warning about invalid
    uid or gid of files, fixing PR#18344, reported by Martin Morgan.
  * tk_choose.files() with multi = FALSE misbehaved on paths
    containing spaces (PR#18334) (regression introduced in R 4.0.0).
  * sort(x, partial = ind, *) now works correctly notably for the
    non-default na.last = FALSE or TRUE, fixing PR#18335 reported by
    James Edwards.
  * Environment variable _R_CHECK_XREFS_REPOSITORIES_ is only used
    for checking .Rd cross-references in R CMD check (as documented)
    and not for other uses looking for a CRAN mirror.
  * The search for a CRAN mirror when checking packages now uses
    getOption("repos") if that specifies a CRAN mirror, even when it
    does not also specify all three Bioconductor repositories (as was
    previously required).
  * The HTML code generated by tools::Rd2HTML() has been improved to
    pass tidy 5.8.0.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1667217600">- CHANGES IN R 4.2.2:
  NEW FEATURES:
  * tools::Rdiff(useDiff = TRUE) checks for the presence of an
    external diff command and switches to useDiff = FALSE if none is
    found.  This allows R CMD Rdiff to always work.
  * On Windows, environment variable R_LIBCURL_SSL_REVOKE_BEST_EFFORT
    can be used to switch to only 'best-effort' SSL certificate
    revocation checks with the default "libcurl" download method.
    This reduces security, but may be needed for downloads to work
    with MITM proxies (PR#18379).
  * (macOS) The run-time check for libraries from XQuartz for X11 and
    Tcl/Tk no longer uses otool from the Apple Developer Tools
    (PR#18400).
  * The LaTeX style for producing the PDF manuals, Rd.sty, now loads
    the standard amsmath, amsfonts and amssymb packages for greater
    coverage of math commands in the Rd \eqn and \deqn macros.  The
    \mathscr LaTeX command is also provided (via the mathrsfs
    package, if available, or the amsfonts bundle otherwise),
    fulfilling the wish of PR#18398.
  * (Windows) The default format of readClipboard() and
    writeClipboard() has been changed to 13 (CF_UNICODETEXT).
  INSTALLATION on a UNIX-ALIKE:
  * The PDF manuals (if built) can be compacted by the new target
    make compact-pdf (at the top level or in directory doc/manual).
  * There is now configure support for LLVM clang 15 on Linux, which
    defaults to position-independent (PIE) executables whereas
    gfortran does not.
  * Many small changes to ease compilation (and suppress warnings)
    with LLVM clang 15.
  BUG FIXES:
  * Rscript -e would fail if stdin were closed (Reported by Henrik
    Bengtsson.)
  * qt(*, log.p=TRUE) in outer tails no longer produces NaN in its
    final steps, thus fixing PR#18360.
  * tools::Rd2latex() now escapes hashes and ampersands when writing
    URLs, fixing LaTeX errors with such URLs in \tabular.
  * When isGeneric(f, fdef=*) is used with mismatching names, the
    warning is better understandable; reported (with fix) in PR#18370
    by Gabe Becker.
  * poly(x, n) now works again (and is now documented) when x is a
    "Date" or "POSIXct" object, or of another class while fulfilling
    mode(x) == "numeric".  This also enables poly(x, *, raw=TRUE) for
    such variables.  Reported by Michael Chirico to R-devel.
  * write.table(), write.csv() and write.csv2() restore their
    numerical precision (internal equivalent of digits = 15) after an
    interrupt (PR#18384).
  * One can now read also byte FF from a clipboard connection
    (PR#18385).
  * source("") and source(character()) now give more helpful error
    messages.
  * R CMD check --as-cran set _R_CHECK_TIMINGS_ too late to have the
    intended effect.
  * as.POSIXlt(x) now also works with very large dates x, fixing
    PR#18401 reported by Hannes M"uhleisen.
  * Files can now be extracted even from very large zip archives
    (PR#18390, thanks to Martin Jakt).
  * Non-finite objects of class "POSIXlt" are now correctly coerced
    to classes "Date" and "POSIXct"; following up on the extension to
    format() them correctly.
  * Added methods for is.finite(), is.infinite() and is.nan() for
    "POSIXlt" date-time objects.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1678881600">- CHANGES IN R 4.2.3:
  C-LEVEL FACILITIES:
  * The definition of DL_FUNC in R_ext/Rdynload.h has been changed to
    be fully C-compliant.  This means that functions loaded _via_ for
    example R_GetCCallable need to be cast to an appropriate type if
    they have any arguments.
  * .Machine has a new element sizeof.time_t to identify old systems
    with a 32-bit type and hence a limited range of date-times (and
    limited support for dates millions of years from present).
  PACKAGE INSTALLATION:
  * (Windows) The default C++ standard had accidentally been left at
    C++11 when it was changed to C++14 on Unix.
  BUG FIXES:
  * As "POSIXlt" objects may be "partially filled" and their list
    components meant to be recycled, length() now is the length of
    the longest component.
  * as.POSIXlt.Date() could underflow for dates in the far past (more
    than half a million years BCE).
  * as.Date.POSIXlt(x) would return "1970-01-01" instead of NA in R
    4.2.2, e.g., for
    x &lt;- as.POSIXlt(c("2019-01-30","2001-1-1"))
    x$mon &lt;- c(0L, NA); as.Date(x)
  * R CMD check failed to apply enabled _R_CHECK_SUGGESTS_ONLY_ to
    examples and vignettes (regression in R 4.2.0).
  * R CMD check did not re-build vignettes in separate processes by
    default (regression in R 4.2.0).
  * Running examples from HTML documentation now restores previous
    knitr settings and options (PR#18420).
  * Quartz: fonts are now located using Core Graphics API instead of
    deprecated ATS which is no longer supported in the macOS 13 SDK
    (PR#18426).  This also addresses an issue where the currently
    used font in the Quartz device context was not correctly
    retained.
  * (Windows) Math symbols in text drawing functions are again
    rendered correctly (PR#18440).  This fixes a regression in R
    4.2.1 caused by a fix in PR#18382 which uncovered an issue in
    GraphApp due to which the symbol charset was not used with TT
    Symbol font face.
  * (Windows) Installing a package with a src/Makefile.{win,ucrt}
    file includes ~/.R/Makevars.win64 in the search for user
    makevars, as documented in "R Installation and Administration"
    and done for packages with a src/Makevars.{win,ucrt} file.
  * format(&lt;POSIXlt_w/_unbalanced_sec&gt;, "....%OS&lt;n&gt;") with n &gt; 0 no
    longer accidentally uses the unbalanced seconds, thanks to
    Suharto Anggono's report (including patch) in PR#18448.
  * solve.default(a, b) works around issues with some versions of
    LAPACK when a contains NA or NaN values.
  * When UseMethod() cannot dispatch, it no longer segfaults
    producing the error message in case of a long class(), thanks to
    Joris Vankerschaver's report (including patch) in PR#18447.
  * When example(foo, ..) produces graphics on an interactive device
    it needs to open itself, it now leaves devAskNewPage() unchanged
    even when it was FALSE, thus fixing a 14 years old '&lt;FIXME&gt;'.
  * packageDescription() again catches errors from encoding
    conversions. This also fixes broken packageVersion() in C locale
    on systems where iconv does not support transliteration.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1681128000">- add patch to build with libcurl &gt;= 8</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1682078400">- CHANGES IN R 4.3.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Calling &amp;&amp; or || with LHS or (if evaluated) RHS of length greater
    than one is now always an error, with a report of the form
    'length = 4' in coercion to 'logical(1)'
    Environment variable _R_CHECK_LENGTH_1_LOGIC2_ no longer has any
    effect.
  NEW FEATURES:
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.10.1.  (This caused some platform-dependent
    changes to package check output.)  And then to the sources from
    LAPACK version 3.11.0 (with changes only to double complex
    subroutines).
  * The included LAPACK sources have been updated to include the four
    Fortran 90 routines rather than their Fortran 77 predecessors.
    This may give some different signs in SVDs or
    eigendecompositions..  (This completes the transition to LAPACK
    3.10.x begun in R 4.2.0.)
  * The LAPACK sources have been updated to version 3.11.0.  (No new
    subroutines have been added, so this almost entirely bug fixes:
    Those fixes do affect some computations with NaNs, including R's
    NA.)
  * The parser now signals _classed_ errors, notably in case of the
    pipe operator |&gt;.  The error object and message now give line and
    column numbers, mostly as proposed and provided by Duncan Murdoch
    in PR#18328.
  * toeplitz() is now generalized for asymmetric cases, with a
    toeplitz2() variant.
  * xy.coords() and xyz.coords() and consequently, e.g., plot(x,y,
    log = "y") now signal a _classed_ warning about negative values
    of y (where log(.) is NA).  Such a warning can be specifically
    suppressed or caught otherwise.
  * Regular expression functions now check more thoroughly whether
    their inputs are valid strings (in their encoding, e.g. in
    UTF-8).
  * The performance of grep(), sub(), gsub() and strsplit() has been
    improved, particularly with perl = TRUE and fixed = TRUE.  Use of
    useBytes = TRUE for performance reasons should no longer be
    needed and is discouraged: it may lead to incorrect results.
  * apropos() gains an argument dot_internals which is used by the
    completion (help(rcompgen)) engine to also see base internals
    such as .POSIXct().
  * Support in tools::Rdiff() for comparing uncompressed PDF files is
    further reduced - see its help page.
  * qqplot(x, y, ...) gains conf.level and conf.args arguments for
    computing and plotting a confidence band for the treatment
    function transforming the distribution of x into the distribution
    of y (Switzer, 1976, _Biometrika_). Contributed by Torsten
    Hothorn.
  * Performance of package_dependencies() has been improved for cases
    when the number of dependencies is large.
  * Strings newly created by gsub(), sub() and strsplit(), when any
    of the inputs is marked as "bytes", are also marked as "bytes".
    This reduces the risk of creating invalid strings and accidental
    substitution of bytes deemed invalid.
  * Support for readLines(encoding = "bytes") has been added to allow
    processing special text files byte-by-byte, without creating
    invalid strings.
  * iconv(from = "") now takes into account any declared encoding of
    the input elements and uses it in preference to the native
    encoding.  This reduces the risk of accidental creation of
    invalid strings, particularly when different elements of the
    input have different encoding (including "bytes").
  * Package repositories in getOption("repos") are now initialized
    from the repositories file when utils is loaded (if not already
    set, e.g., in .Rprofile).  (From a report and patch proposal by
    Gabriel Becker in PR#18405.)
  * compactPDF() gets a verbose option.
  * type.convert() and hence read.table() get new option tryLogical =
    TRUE with back compatible default.  When set to false, converts
    "F" or "T" columns to character.
  * Added new unit prefixes "R" and "Q" for abbreviating
    (unrealistically large) sizes beyond 10^{27} in standard = "SI",
    thanks to Henrik Bengtsson's PR#18435.
  * as.data.frame()'s default method now also works fine with atomic
    objects inheriting from classes such as "roman", "octmode" and
    "hexmode", such fulfilling the wish of PR#18421, by Benjamin
    Feakins.
  * The as.data.frame.vector() utility now errors for wrong-length
    row.names.  It warned for almost six years, with "Will be an
    error!".
  * sessionInfo() now also contains La_version() and reports codepage
    and timezone when relevant, in both print() and toLatex() methods
    which also get new option tzone for displaying timezone
    information when locale = FALSE.
  * New function R_compiled_by() reports the C and Fortran compilers
    used to build R, if known.
  * predict(&lt;lm&gt;, newdata = *) no longer unnecessarily creates an
    offset of all 0s.
  * solve() for complex inputs now uses argument tol and by default
    checks for 'computational singularity' (as it long has done for
    numeric inputs).
  * predict(&lt;rank-deficient lm&gt;, newdata=*) now obeys a new argument
    rankdeficient, with new default "warnif", warning only if there
    are non-estimable cases in newdata.  Other options include
    rankdeficient = "NA", predicting NA for non-estimable newdata
    cases.  This addresses PR#15072 by Russ Lenth and is based on his
    original proposal and discussions in PR#16158 also by David Firth
    and Elin Waring.  Still somewhat experimental.
  * Rgui console implementation now works better with the NVDA screen
    reader when the full blinking cursor is selected.  The underlying
    improvements in cursor handling may help also other screen
    readers on Windows.
  * The drop-field control in GraphApp can now be left with the TAB
    key and all controls can be navigated in the reverse order using
    the Shift+TAB key, improving accessibility of the Rgui
    configuration editor.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now fully accurate
    (instead of to "only" minimally five digits).
  * demo(error.catching) now also shows off withWarnings() and
    tryCatchWEMs().
  * As an experimental feature the placeholder _ can now also be used
    in the rhs of a forward pipe |&gt; expression as the first argument
    in an extraction call, such as _$coef. More generally, it can be
    used as the head of a chain of extractions, such as _$coef[[2]].
  * Spaces in the environment variable used to choose the R session's
    temporary directory (TMPDIR, TMP and TEMP are tried in turn) are
    now fatal.  (On Windows the 'short path' version of the path is
    tried and used if that does not contain a space.)
  * all.equal.numeric() gets a new optional switch giveErr to return
    the numeric error as attribute.  Relatedly,
    stopifnot(all.equal&lt;some&gt;(a, b, ..)) is as "smart" now, as
    stopifnot(all.equal(....)) has been already, thus allowing
    customized all.equal&lt;Some&gt;() wrappers.
  * R on Windows is now able to work with path names longer than 260
    characters when these are enabled in the system (requires at
    least Windows 10 version 1607).  Packages should be updated to
    work with long paths as well, instead of assuming PATH_MAX to be
    the maximum length.  Custom front-ends and applications embedding
    R need to update their manifests if they wish to allow this
    feature.  See
    &lt;https://blog.r-project.org/2023/03/07/path-length-limit-on-windows&gt;
    for more information.
  * 'Object not found' and 'Missing argument' errors now give a more
    accurate error context. Patch provided by Lionel Henry in
    PR#18241.
  * The @ operator is now an S3 generic. Based on contributions by
    Tomasz Kalinowski in PR#18482.
  * New generic chooseOpsMethod() provides a mechanism for objects to
    resolve cases where two suitable methods are found for an Ops
    Group Generic. This supports experimenting with alternative
    object systems. Based on contributions by Tomasz Kalinowski in
    PR#18484.
  * inherits(x, what) now accepts values other than a simple
    character vector for argument what. A new generic, nameOfClass(),
    is called to resolve the class name from what. This supports
    experimenting with alternative object systems. Based on
    contributions by Tomasz Kalinowski in PR#18485.
  * Detection of BLAS/LAPACK in use (sessionInfo()) with FlexiBLAS
    now reports the current backend.
  * The "data.frame" method for subset() now warns about extraneous
    arguments, typically catching the use of = instead of == in the
    subset expression.
  * Calling a:b when numeric a or b is longer than one may now be
    made into an error by setting environment variable
    _R_CHECK_LENGTH_COLON_ to a true value, along the proposal in
    PR#18419 by Henrik Bengtsson.
  * density(x, weights = *) now warns if automatic bandwidth
    selection happens without using weights; new optional warnWbw may
    suppress the warning.  Prompted by Christoph Dalitz' PR#18490 and
    its discussants.
  * rm(list = *) is faster and more readable thanks to Kevin Ushey's
    PR#18492.
  * The plot.lm() function no longer produces a normal Q-Q plot for
    GLMs. Instead it plots a half-normal Q-Q plot of the absolute
    value of the standardized deviance residuals.
  * The print() method for class "summary.glm" no longer shows
    summary statistics for the deviance residuals by default.  Its
    optional argument show.residuals can be used to show them if
    required.
  * The tapply() function now accepts a data frame as its X argument,
    and allows INDEX to be a formula in that case. by.data.frame()
    similarly allows INDICES to be a formula.
  * The performance of df[j] &lt;- value (including for missing j) and
    write.table(df) has been improved for data frames df with a large
    number of columns.  (Thanks to Gabriel Becker's PR#18500,
    PR#18503 and discussants, prompted by a report from Toby Dylan
    Hocking on the R-devel mailing list.)
  * The matrix multiply operator %*% is now an S3 generic, belonging
    to new group generic matrixOps.  From Tomasz Kalinowski's
    contribution in PR#18483.
  * New function array2DF() to convert arrays to data frames,
    particularly useful for the list arrays created by tapply().
  DATES and TIMES:
  * On platforms where (non-UTC) datetimes before 1902 (or before
    1900 as with system functions on recent macOS) are guessed by
    extrapolating time zones from 1902-2037, there is a warning at
    the first use of extrapolation in a session.  (As all time zones
    post 2037 are extrapolation, we do not warn on those.)
  * (Platforms using --with-internal-tzone, including Windows and by
    default macOS). How years are printed in dates or date-times can
    be controlled by environment variable R_PAD_YEARS_BY_ZERO.  The
    default remains to pad to 4 digits by zeroes, but setting value
    no gives no padding (as used by default by glibc).
  * strftime() tries harder to determine the offset for the "%z"
    format, and succeeds on the mainstream R platforms.
  * strftime() has a limit of 2048 bytes on the string produced -
    attempting to exceed this is an error.  (Previously it silently
    truncated at 255 bytes.)
  * sessionInfo() records (and by default prints) the system time
    zone as part of the locale information.  Also, the source
    (system/internal) of the date-time conversion and printing
    functions.
  * Objects of class "POSIXlt" created in this version of R always
    have 11 components: component zone is always set, and component
    gmtoff is set for times in UTC and usually set on the (almost
    all) platforms which have C-level support, otherwise is NA.
  * There are comprehensive validity checks on the structure of
    objects of class "POSIXlt" when converting (including formatting
    and printing).  (This avoids mis-conversions of hand-crafted
    objects.)
  * There is some support for using the native date-time routines on
    macOS: this is only viable on recent versions (e.g. 12.6 and 13)
    and does get wrong some historical changes (before 1900, during
    WWII).  Use of --with-internal-tzone remains the default.
  * as.POSIXct(&lt;numeric&gt;) and as.POSIXlt(.) (without specifying
    origin) now work.  So does as.Date(&lt;numeric&gt;).
  * as.Date.POSIXct(., tz) now treats several tz values, notably
    "GMT" as equivalent to "UTC", proposed and improved by Michael
    Chirico and Joshua Ulrich in PR#17674.
  * Experimental balancePOSIXlt() utility allows using "ragged" and
    or out-of-range "POSIXlt" objects more correctly, e.g., in
    subsetting and subassignments.  Such objects are now documented.
    More experimentally, a "POSIXlt" object may have an attribute
    "balanced" indicating if it is known to be filled or fully
    balanced.
  * Functions axis.Date() and axis.POSIXct() are rewritten to gain
    better default tick locations and better default formats by using
    prettyDate(). Thanks to Swetlana Herbrandt.
  * The mapping of Windows' names for time zones to IANA's 'Olson'
    names has been updated.  When ICU is available (it is by
    default), it is used to get a mapping for the current region set
    in Windows.  This can be overridden by setting environment
    variable TZ to the desired Olson name - see OlsonNames() for
    those currently available.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 16
    and so packages that provide graphics devices should be
    reinstalled.
  * The grDevices and grid packages have new functions for rendering
    typeset glyphs, primarily: grDevices::glyphInfo() and
    grid::grid.glyph().
    Rendering of typeset glyphs is only supported so far on the
    Cairo-based graphics devices and on the pdf() and quartz()
    devices.
  * The defined behaviour for "clear" and "source" compositing
    operators (via grid::grid.group()) has been changed (to align
    better with simple interpretation of original Porter-Duff
    definitions).
  * Support for gradients, patterns, clipping paths, masks, groups,
    compositing operators, and affine transformations has been added
    to the quartz() device.
  INSTALLATION on a UNIX-ALIKE:
  * A system installation of generic LAPACK 3.10.0 or later will be
    preferred to the version in the R sources.
    configure option --with-lapack=no (equivalently --without-lapack)
    forces compilation of the internal LAPACK sources.
    If --with-lapack is not specified, a system liblapack is looked
    for and used if it reports version 3.10.0 or later and does not
    contain BLAS routines.
    Packages using LAPACK will need to be reinstalled if this changes
    to using an external library.
  * On aarch64 Linux platforms using GCC, configure now defaults to
  - fPIC (instead of -fpic), as desired in PR#18326.
  * configure now checks conversion of datetimes between POSIXlt and
    POSIXct around year 2020.  Failure (which has been seen on
    platforms missing tzdata) is fatal.
  * If configure option --with-valgrind-instrumentation is given
    value 1 or 2, option --with-system-valgrind-headers is now the
    default and ignored (with a warning).  It is highly recommended
    that the system headers are installed alongside valgrind: they
    are part of its packaging on some Linux distributions and
    packaged separately (e.g. in the valgrind-devel RPM) on others.
    configure will give a warning if they are not found.
    The system headers will be required in a future release of R to
    build with valgrind instrumentation.
  * libcurl 8.x is now accepted by configure: despite a change in
    major version number it changes neither API nor ABI.
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools43, an update of the Rtools42 toolchain.  It is
    based on gcc 12 and newer versions of MinGW-W64, binutils and
    libraries.  At this time R-devel can still be built using
    Rtools42 without changes, but when R-devel is installed via the
    installer, it will by default look for Rtools43.
  * Old make targets rsync-extsoft and 32-bit ones that are no longer
    needed have been removed.
  * Default builds (including for packages) no longer select C99.
    Thus the C standard used is the default for the compiler, which
    for the toolchain in Rtools43 is C17.  (This is consistent with
    Unix builds.)
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++17 where
    available (which it is on all currently checked platforms): if
    not C++14 or C++11 is used if available otherwise C++ is not
    supported.
  * USE_FC_LEN_T is the default: this uses the correct
    (compiler-dependent) prototypes for Fortran BLAS/LAPACK routines
    called from C/C++, and requires adjustment of many such calls -
    see 'Writing R Extensions' SS6.6.1.
  * There is initial support for C++23 as several compilers are now
    supporting -std=c++23 or -std=c++2b or similar.  As for C++20,
    there no additional configure checks for C++23 features beyond a
    check that the compiler reports a __cplusplus value greater than
    that in the C++20 standard.  C++ feature tests should be used.
  * There is support for a package to indicate the version of the C
    standard which should be used to compile it, and for the
    installing user to specify this.  In most cases R defaults to the
    C compiler's default standard which is C17 (a `bug-fix' of C11) -
    earlier versions of R or compilers may have defaulted to C99.
    Current options are:
    USE_C17 Use a standard that is at most C17.  The intention is to
    allow legacy packages to still be installed when later C
    standards become the default, including packages using new
    keywords as identifiers or with K&amp;R-style function
    declarations.  This will use C17 if available, falling back
    to C11.
    USE_C90 Use the C90 (aka C89) standard.  (As that standard did
    not require compilers to identify that version, all we can
    verify is that the compiler does not claim to be using a
    later standard.  It may accept C99 features - for example
    clang accepts // to make comments.)
    USE_C99 Use the C99 standard. This should be rarely needed - it
    avoids the few new features of C11/C17 which can be useful if
    a package assumes them if C17 is specified and they are not
    implemented.
    USE_C23 Use C23 (or in future, later).  Compiler/library support
    for C23 is still being implemented, but LLVM clang from
    15.0.0 and the upcoming GCC 13 have quite extensive support.
    These can be specified as part of the SystemRequirements field in
    the package's DESCRIPTION file or _via_ options --use-C17 and so
    on of R CMD INSTALL and R CMD SHLIB.
    For further details see "Writing R Extensions" SS1.2.5.
  * (Windows) A src/Makefile.ucrt or src/Makefile.win file is now
    included after R_HOME/etcR_ARCH/Makeconf and so no longer needs
    to include that file itself.  Installation of a package with such
    a file now uses a site Makevars file in the same way as a package
    with a src/Makevars.win file would.
  * configure is now passed crucial variables such as CC and CFLAGS
    in its environment, as many packages were not setting them (as
    documented in 'Writing R Extensions' SS1.2).
    This has most effect where configure is used to compile parts of
    the package - most often by cmake or libtool which obfuscate the
    actual compile commands used.
    Also used for configure.win and configure.ucrt on Windows.
  FORTRAN FLAGS:
  * The flag -fno-optimize-sibling-calls is no longer forced for
    gfortran 7 and later.  It should no longer be needed now using
    'hidden' character-length arguments when calling BLAS/LAPACK
    routines from C/C++ is the default even for packages.  (Unless
    perhaps packages call Fortran code from C/C++ without using R's
    headers and without allowing for these arguments.)
  C-LEVEL FACILITIES:
  * The deprecated S-compatibility macros DOUBLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * The deprecated legacy typedefs of Sint and Sfloat in header R.h
    are no longer defined, and that header no longer includes header
    limits.h from C nor climits from C++.
  * New macro CAD5R() is provided in Rinternals.h and used in a few
    places in the R sources.
  * ALTREP now supports VECSXP vectors. Contributed by Gabor Csardi
    in PR#17620.
  * The Rcomplex definition (in header R_ext/Complex.h) has been
    extended to prevent possible mis-compilation when interfacing
    with Fortran (PR#18430).  The new definition causes compiler
    warnings with static initializers such as {1, 2}, which can be
    changed to {.r=1, .i=2}.
    Using the new definition from C++ depends on compiler extensions
    supporting C features that have not been incorporated into the
    C++ standards but are available in g++ and clang++: this may
    result in C++ compiler warnings but these have been worked around
    for recent versions of common compilers (GCC, Apple/LLVM clang,
    Intel).
    It is intended to change the inclusion of header R_ext/Complex.h
    by other R headers, so C/C++ code files which make use of
    Rcomplex should include that header explicitly.
  UTILITIES:
  * R CMD check does more checking of package .Rd files, warning
    about invalid email addresses and (some) invalid URIs and noting
    empty \item labels in description lists.
  * R CMD check now also reports problems when reading package news
    in md (file NEWS.md) and (optionally) plain text (file NEWS)
    formats.
  * _R_CHECK_TIMINGS_ defaults to a value from the environment even
    for R CMD check --as-cran; this allows for exceptionally fast or
    slow platforms.
    It now applies to checking PDF and HTML versions of the manuals,
    and 'checking CRAN incoming feasibility'.
  * R CMD check can optionally (but included in --as-cran) check
    whether HTML math rendering _via_ KaTeX works for the package .Rd
    files.
  * Non-interactive debugger invocations can be trapped by setting
    the environment variable _R_CHECK_BROWSER_NONINTERACTIVE_ to a
    true value.  This is enabled by R CMD check --as-cran to detect
    the use of leftover browser() statements in the package.
  * The use of sprintf and vsprintf from C/C++ has been deprecated in
    macOS 13 and is a known security risk.  R CMD check now reports
    (on all platforms) if their use is found in compiled code:
    replace by snprintf or vsnprintf respectively. [*NB:* whether
    such calls get compiled into the package is platform-dependent.]
  * Where recorded at installation, R CMD check reports the C and
    Fortran compilers used to build R.
    It reports the OS in use (if known, as given by osVersion) as
    well as that R was built for.
    It notes if a C++ standard was specified which is older than the
    current default: many packages have used C++11 to mean 'not
    C++98' - as C++11 is the minimum supported since R 4.0.0, that
    specification can probably be removed.
  * R CMD INSTALL reports the compilers (and on macOS, the SDK) used,
    and this is copied to the output of R CMD check.
    Where a C++ standard is specified, it is reported.
  * R CMD check's 'checking compilation flags in Makevars' has been
    relaxed to accept the use of flags such as -std=f2008 in
    PKG_FFLAGS.
  * tools::buildVignettes() has a new argument skip, which is used by
    R CMD check to skip (and note) vignettes with unavailable
    \VignetteDepends (PR#18318).
  * New generic .AtNames() added to enable class-specific completions
    after @. The formerly internal function findMatches() is now
    exported, mainly for use in methods for .DollarNames() and
    .AtNames().
  DEPRECATED AND DEFUNCT:
  * default.stringsAsFactors() is defunct.
  * Calling as.data.frame.&lt;class&gt;() directly (for 12 atomic classes)
    is going to be formally deprecated, currently activated by
    setting the environment variable
    _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ to non-empty, which also
    happens in R CMD check --as-cran.
  BUG FIXES:
  * Hashed environments with sizes less than 5 can now grow.
    (Reported to R-devel by Duncan Garmonsway.)
  * as.character(&lt;Rd&gt;, deparse = TRUE) failed to re-escape curly
    braces in LaTeX-like text.  (Reported by Hadley Wickham in
    PR#18324.)
  * library() now passes its lib.loc argument when requiring Depends
    packages; reported (with fix) in PR#18331 by Mikael Jagan.
  * R CMD Stangle: improved message about 'Output' files.
  * head(x, n) and tail(x, n) now signal an error if n is not
    numeric, instead of incidentally "working" sometimes returning
    all of x.  Reported and discussed by Colin Fay, in PR#18357.
  * The "lm" method for summary() now gives the correct F-statistic
    when the model contains an offset.  Reported in PR#18008.
  * C() and `contrasts&lt;-`() now preserve factor level names when
    given a function object (as opposed a function name which did
    preserve names). Reported in PR#17616.
  * c(a = 1, 2)[[]] no longer matches 2 but rather signals a
    _classed_ error.  Reported and analysed by Davis Vaughan in
    PR#18367, a duplicate of PR#18004, by Jan Meis et al.  For
    consistency, NULL[[]] is also erroneous now.  x[[]] &lt;- v gives an
    error of the same class "MissingSubscriptError".
  * The relist() function of utils now supports NULL elements in the
    skeleton (PR#15854).
  * ordered(levels = *) (missing x) now works analogously to factor(,
    ordered=TRUE); reported (with fix) by Achim Zeileis in PR#18389.
  * User-defined Rd macro definitions can now span multiple lines,
    thanks to a patch from Duncan Murdoch. Previously, the Rd parser
    silently ignored everything after the first line.
  * Plain-text help (tools::Rd2txt()) now preserves an initial blank
    line for text following description list items.
  * tools::Rd2HTML() and tools::Rd2latex() no longer split \arguments
    and \value lists at Rd comments.
  * tools::Rd2latex() now correctly handles optional text outside
    \items of argument lists as well as bracketed text at the
    beginning of sections, e.g., \value{[NULL]}.
  * as.character(&lt;POSIXt&gt;) now behaves more in line with the methods
    for atomic vectors such as numbers, and is no longer influenced
    by options().  Ditto for as.character(&lt;Date&gt;).  The
    as.character() method gets arguments digits and OutDec with
    defaults _not_ depending on options().  Use of as.character(*,
    format = .) now warns.
  * Similarly, the as.character.hexmode() and *.octmode() methods
    also behave as good citizen methods and back compatibility option
    keepStr = TRUE.
  * The as.POSIXlt(&lt;POSIXlt&gt;) and as.POSIXct(&lt;POSIXct&gt;) default
    methods now do obey their tz argument, also in this case.
  * as.POSIXlt(&lt;Date&gt;) now does apply a tz (time zone) argument, as
    does as.POSIXct(); partly suggested by Roland Fuss on the R-devel
    mailing list.
  * as.Date.POSIXlt(x) now also works when the list components are of
    unequal length, aka "partially filled" or "ragged".
  * expand.model.frame() looked up variables in the wrong environment
    when applied to models fitted without data.  Reported in
    PR#18414.
  * time() now (also) uses the ts.eps = getOption("ts.eps") argument
    and thus by default rounds values very close to the start (or
    end) of a year.  Based on a proposal by Andre"i V. Kostyrka on
    R-help.
  * Printing of a factanal() result with just one factor and sort =
    TRUE now works regularly, fixing PR#17863 by Timothy Bates,
    thanks to the 'R Contributors' working group.
  * Printing 0-length objects of class "factor", "roman", "hexmode",
    "octmode", "person", "bibentry", or "citation" now prints
    something better, one of which fixes PR#18422, reported by
    Benjamin Feakins.
  * Sys.timezone() queries timedatectl only if systemd is loaded;
    addressing a report by Jan Gorecki in PR#17421.
  * The formula method of cor.test() had scoping problems when
    environment(formula) was not the calling environment; reported
    with a patch proposal by Mao Kobayashi in PR#18439.
  * attach() of an environment with active bindings now preserves the
    active bindings.  Reported by Kevin Ushey in PR#18425.
  * BLAS detection now works also with system-provided libraries not
    available as regular files.  This fixes detection of the
    Accelerate framework on macOS since Big Sur.  Reported by David
    Novgorodsky.
  * download.file() gives a helpful error message in case of an
    invalid download.file.method option, thanks to Colin Fay's report
    in PR#18455.
  * Sporadic crashes of Rterm when using completion have been fixed.
  * Rprof() is now more reliable.  A livelock in thread
    initialization with too short sampling interval has been fixed on
    macOS.  A deadlock in using the C runtime has been fixed on
    Windows.  A potential deadlock has been prevented on Unix.
  * Cursor placement in Rgui now works even after a fixed-width font
    is selected.
  * Mandatory options (options()) are now set on startup so that
    saving and restoring them always works (PR#18372).
  * Package installation, R CMD INSTALL or install.packages(*), now
    parses each of the &lt;pkg&gt;/R/*.R files individually instead of
    first concatenating and then parse()ing the large resulting file.
    This allows parser or syntax errors to be diagnosed with correct
    file names and line numbers, thanks to Simon Dedman's report and
    Bill Dunlap's patch in PR#17859.
    This _does_ require syntactically self contained R source files
    now, fixing another inadvertent bug.
  * predict.lm(&lt;model with offset&gt;) now finds the offset in the
    correct environment, thanks to Andr'e Gillibert's report and patch
    in PR#18456.
  * getInitial(&lt;formula&gt;) now finds the selfStart model in the
    correct environment.  (Reported by Ivan Krylov in PR#18368.)
  * Fix for possible segfault when using recently-added graphics
    features, such as gradients, clipping paths, masks, and groups
    with pdf(file=NULL).
  * class(m) &lt;- class(m) no longer changes a matrix m by adding a
    class _attribute_.
  * packageDate(pkg) now only warns once if there is no pkg.
  * When ts() creates a multivariate time series, "mts", it also
    inherits from "array" now, and is.mts() is documented _and_
    stricter.
  * Rd2txt() now preserves line breaks of \verb Rd content and from
    duplicated \cr.  The former also fixes the rendering of verbatim
    output from Rd \Sexpr in plain-text help.
  * uniroot(f, interval) should no longer wrongly converge _outside_
    the interval in some cases where abs(f(x)) == Inf for an x at the
    interval boundary, thanks to posts by Ben Bolker and Serguei
    Sokol on R-devel.
  * Vectorized alpha handling in palette functions such as in gray(),
    rainbow(), or hcl.colors() works correctly now, thanks to Achim
    Zeileis' report and patch in PR#18476.
  * Formatting and print()ing of bibentry objects has dropped the
    deprecated citation.bibtex.max argument, such that the bibtex
    argument's default for print.bibentry() depends directly on the
    citation.bibtex.max option, whereas in format.bibentry() the
    option no longer applies.
  * Attempting to use a character string naming a foreign function
    entry point in a foreign function call in a package will now
    signal an error if the packages has called R_forceSymbols to
    specify that symbols must be used.
  * An error in table() could permanently set options(warn=2)
    promoting all subsequent warnings to errors.
  * The sigma() function gave misleading results for binary GLMs.  A
    new method for objects of class "glm" returns the square root of
    the estimate of the dispersion parameter using the same
    calculation as summary.glm().
  * bs() and ns() in the (typical) case of automatic knot
    construction, when some of the supposedly inner knots coincide
    with boundary knots, now moves them inside (with a warning),
    building on PR#18442 by Ben Bolker.
  * R CMD on Windows now skips the site profile with --no-site-file
    and --vanilla even when R_PROFILE is set (PR#18512, from Kevin
    Ushey).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1686916800">- CHANGES IN R 4.3.1:
  C-LEVEL FACILITIES:
  * The C-level API version of R's integrate(), Rdqags() in Applic.h,
    now returns the correct number of integrand evaluations neval,
    fixing PR#18515 reported and diagnosed by Stephen Wade.
  * The C prototypes for LAPACK calls dspgv and dtptrs in
    R_exts/Lapack.h had one too many and one too few character length
    arguments - but this has not caused any known issues. To get the
    corrected prototypes, include
    [#]include &lt;Rconfig.h&gt; // for PR18534fixed
    [#]ifdef PR18534fixed
    [#] define usePR18534fix 1
    [#]endif
    [#]include &lt;R_exts/Lapack.h&gt;
    in your C/C++ code (PR#18534).
  INSTALLATION:
  * Many of the checks of esoteric Internet operations and those
    using unreliable external sites have been moved to a new target
    that is not run by default and primarily intended for the core
    developers.  To run them use
    cd tests; make test-Internet-dev
  BUG FIXES:
  * .S3methods(), typically called from methods(), again marks
    methods from package base as visible.
    Also, the visibility of non-base methods is again determined by
    the method's presence in search().
  * tools::Rdiff() is now more robust against invalid strings, fixing
    installation tests on Windows without Rtools installed
    (PR#18530).
  * Fix (new) bug in hcl.colors(2, *), by Achim Zeileis (PR#18523).
  * head(., &lt;illegal&gt;) and tail(..) now produce more useful "Error in
    ...." error messages, fixing PR#18362.
  * Package code syntax on Windows is checked in UTF-8 when UTF-8 is
    the native encoding.
  * na.contiguous(x) now also returns the first run, when it is at
    the beginning and there is a later one of the same length;
    reported to R-devel, including a fix, by Georgi Boshnakov.
    Further, by default, it modifies only an existing attr(*,"tsp")
    but otherwise no longer sets one.
  * chol(&lt;not pos.def&gt;, pivot = &lt;T|F&gt;) now gives a correct error or
    warning message (depending on pivot), thanks to Mikael Jagan's
    (PR#18541).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1699012800">- CHANGES IN R 4.3.2:
  NEW FEATURES:
  * The default initialization of the "repos" option from the
    repositories file at startup can be skipped by setting
    environment variable R_REPOSITORIES to NULL such that
    getOption("repos") is empty if not set elsewhere.
  * qr.X() is now an implicit S4 generic in methods.
  * iconv(to = "ASCII//TRANSLIT") is emulated using substitution on
    platforms which do not support it (notably Alpine Linux).  This
    should give a human-readable conversion in ASCII on all platforms
    (rather than NA_character_).
  * trans3d() gains options continuous and verbose addressing the
    problem of possible "wrap around" when projecting too long
    curves, as reported by Achim Zeileis in PR#18537.
  * tools::showNonASCII() has been rewritten to work better on macOS
    14 (which has a changed implementation of iconv()).
  * tiff(type = "quartz") (the default on macOS) now warns if
    compression is specified: it continues to be ignored.
  INSTALLATION on a UNIX-ALIKE:
  * There is some support for building with Intel's LLVM-based
    compilers on x86_64 Linux, such as (C) icx, (C++) ipcx and
    (Fortran) ifx from oneAPI 2023.x.y.
  * There is support for using LLVM's flang-new as the Fortran
    compiler from LLVM 16.0.x (preferably 17.0.0 or later).
  UTILITIES:
  * R CMD check reports the use of the Fortran 90 random number
    generator RANDOM_NUMBER() and the subroutines to initialize it.
    'Writing R Extensions' has example code to use R's RNGs from
    Fortran.
  BUG FIXES:
  * substr(x, n, L) &lt;- cc now works (more) correctly for multibyte
    UTF-8 strings x when L &gt; nchar(x), thanks to a report and patch
    by 'Architect 95'.
  * contrib.url(character()) now returns 0-length character() as
    documented, which also avoids spurious warnings from
    available.packages() et al. in the edge case of an empty vector
    of repository URLs.
  * readChar(., 4e8) no longer fails, thanks to Kodi Arfer's report
    (PR#18557).
  * lapply(&lt;list&gt;, as.data.frame) no longer warns falsely for some
    base vector components.
  * Communication between parent and child processes in the multicore
    part of parallel could fail on platforms that do not support an
    arbitrarily large payload in system functions read()/write() on
    pipes (seen on macOS where a restriction to INT_MAX bytes is
    documented, without doing a partial read unlike Linux). The
    payload is now split into 1Gb chunks to avoid that problem.
    (PR#18571)
  * qqplot(x,y, conf.level=.) gives better confidence bounds when
    length(x) != length(y), thanks to Alexander Ploner's report and
    patch proposal (PR#18557).
  * norm(&lt;0-length&gt;, "2") now gives zero instead of an error, as all
    the other norm types, thanks to Mikael Jagan's PR#18542.
  * Build-stage Rd macros \packageAuthor and \packageMaintainer now
    process Authors@R, fixing NA results when the package DESCRIPTION
    omits Author and Maintainer fields.
  * Formatting and printing complex numbers could give things like
    0.1683-0i because of rounding error: -0i is now replaced by +0i.
  * postscript() refused to accept a title comment containing the
    letter "W" (PR#18599).
  * isoreg(c(1,Inf)) signals an error instead of segfaulting, fixing
    PR#18603.
  * tiff(type = "Xlib") was only outputting the last page of
    multi-page plots.
  * tools::latexToUtf8() again knows about \~{n} and other letters
    with tilde, fixing a regression in R 4.3.0, and about \^{i} as an
    alternative to \^{\i} (similarly with other accents).
    Furthermore, LaTeX codes for accented I letters are now correctly
    converted, also fixing related mistakes in
    tools::encoded_text_to_latex().
  * tar(*, tar = "internal") no longer creates out-of-spec tar files
    in the very rare case of user or group names longer than 32
    bytes, fixing PR#17871 with thanks to Ivan Krylov.
  * When using the "internal" timezone datetime code, adding a
    fraction of a second no longer adds one second, fixing PR#16856
    from a patch by Ivan Krylov.
  * tools::checkRd() no longer produces spurious notes about
    "unnecessary braces" from multi-line Rd results of \Sexpr macros.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1709208000">- CHANGES IN R 4.3.3:
  NEW FEATURES:
  * iconv() now fixes up variant encoding names such as "utf8"
    case-insensitively.
  DEPRECATED AND DEFUNCT:
  * The legacy encoding = "MacRoman" is deprecated in pdf() and
    postscript(): support was incomplete in earlier versions of R.
  BUG FIXES:
  * Arguments are now properly forwarded to methods on S4 generics
    with ... in the middle of their formal arguments. This was broken
    for the case when a method introduced an argument but did not
    include ... in its own formals. Thanks to Herv'e Pag`es for the
    report PR#18538.
  * Some invalid file arguments to pictex(), postscript() and xfig()
    opened a file called NA rather than throw an error.  These
    included postscript(NULL) (which some people expected to work
    like pdf(NULL)).
  * Passing filename = NA to svg(), cairo_pdf(), cairo_ps() or the
    Cairo-based bitmap devices opened a file called NA: it now throws
    an error.
  * quartz(file = NA) opened a file called NA, including when used as
    a Quartz-based bitmap device.  It now gives an error.
  * rank(&lt;long vector&gt;) now works, fixing PR#18617, thanks to Ilia
    Kats.
  * seq.int() did not adequately check its length.out argument.
  * match(&lt;POSIXct&gt;, .) is correct again for differing time zones,
    ditto for "POSIXlt", fixing PR#18618 reported by Bastian Klein.
  * drop.terms(*, dropx = &lt;0-length&gt;) now works, fixing PR#18563 as
    proposed by Mikael Jagan.
  * drop.terms(*) keeps + offset(.) terms when it should, PR#18565,
    and drop.terms() no longer makes up a response, PR#18566, fixing
    both bugs thanks to Mikael Jagan.
  * getS3method("t", "test") no longer finds the t.test() function,
    fixing PR#18627.
  * pdf() and postscript() support for the documented Adobe encodings
    "Greek" and "Cyrilllic" was missing (although the corresponding
    Windows' codepages could be used).
  * Computations of glyph metric information for pdf() and
    postscript() did not take into account that transliteration could
    replace one character by two or more (only seen on macOS 14) and
    typically warned that the information was not known.
  * rank(x) no longer overflows during integer addition, when
    computing rank average for largish but not-yet long vector x,
    fixing PR#18630, thanks to Ilia Kats.
  * list.files() on Windows now returns also files with names longer
    that 260 bytes (the Windows limit is 260 characters).
    Previously, some file names particularly with 'East Asian'
    characters were omitted.
  * cov2cor(&lt;0 x 0&gt;) now works, fixing PR#18423 thanks to Mikael
    Jagan and Elin Waring.
  * cov2cor(&lt;negative diagonal&gt;) and similar now give one warning
    instead of two, with better wording, fixing PR#18424 thanks to
    Mikael Jagan.
  * tools:: startDynamicHelp() now ensures port is in proper range,
    fixing PR#18645.
  * pbeta(x, a,b) is correct now for x=0 or 1 in the boundary cases
    where a or b or both are 0, fixing PR#18672 thanks to Michael
    Fay.
  * pmatch(x, table) for large table, also called for data frame row
    selection, dfrm[nm, ], is now interruptible, fixing PR#18656.
  * predict(&lt;rank-deficient lm&gt;, newdata=*) fix computing of nbasis,
    see Russ Lenth's comment 29 in PR#16158.
  * Added a work-around for a bug in macOS 14.3.1 and higher which
    prevents R plots in the Quartz Cocoa device from updating on
    screen.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1713960000">- CHANGES IN R 4.4.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Startup banners, R --version, sessionInfo() and R CMD check no
    longer report (64-bit) as part of the platform as this is almost
    universal - the increasingly rare 32-bit platforms will still
    report (32-bit).
    On Windows, ditto for window titles.
  * is.atomic(NULL) now returns FALSE, as NULL is not an atomic
    vector.  Strict back-compatibility would replace is.atomic(foo)
    by (is.null(foo) || is.atomic(foo)) but should happen only
    sparingly.
  NEW FEATURES:
  * The confint() methods for "glm" and "nls" objects have been
    copied to the stats package.  Previously, they were stubs which
    called versions in package MASS. The MASS namespace is no longer
    loaded if you invoke (say) confint(glmfit).  Further, the "glm"
    method for profile() and the plot() and pairs() methods for class
    "profile" have been copied from MASS to stats.  (profile.nls()
    and plot.profile.nls() were already in stats.)
  * The confint() and profile methods for "glm" objects have gained a
    possibility to do profiling based on the Rao Score statistic in
    addition to the default Likelihood Ratio. This is controlled by a
    new test = argument.
  * The pairs() method for "profile" objects has been extended with a
    which = argument to allow plotting only a subset of the
    parameters.
  * The "glm" method for anova() computes test statistics and
    p-values by default, using a chi-squared test or an F test
    depending on whether the dispersion is fixed or free.  Test
    statistics can be suppressed by giving argument test a false
    logical value.
  * In setRepositories() the repositories can be set using their
    names via name = instead of index ind =.
  * methods() and .S3methods() gain a all.names option for the (rare)
    case where functions starting with a . should be included.
  * Serializations can now be interrupted (e.g., by Ctrl-C on a
    Unix-alike) if they take too long, e.g., from save.image(),
    thanks to suggestions by Ivan Krylov and others on R-devel.
  * New startup option --max-connections to set the maximum number of
    simultaneous connections for the session.  Defaults to 128 as
    before: allowed values up to 4096 (but resource limits may in
    practice restrict to smaller values).
  * R on Windows (since Windows 10 2004) now uses the new Segment
    Heap allocator. This may improve performance of some
    memory-intensive applications.
  * When R packages are built, typically by R CMD build &lt;pkg&gt;, the
    new --user=&lt;build_user&gt; option overrides the (internally
    determined) user name, currently Sys.info()["user"] or LOGNAME.
    This is a (modified) fulfillment of Will Landau's suggestion in
    PR#17530.
  * tools::testInstalledBasic() gets new optional arguments outDir
    and testSrcdir, e.g., allowing to use it in a &lt;builddir&gt; !=
    &lt;srcdir&gt; setup, and in standard "binary" Windows installation
  * if* a source tests/ folder is present.
  * range(&lt;DT_with_Inf&gt;, finite = TRUE) now work for objects of class
    "Date", "POSIXct", and "POSIXlt" with infinite entries,
    analogously to range.default(), as proposed by Davis Vaughan on
    R-devel.  Other range()-methods can make use of new function
    .rangeNum().
  * New .internalGenerics object complementing .S3PrimitiveGenerics,
    for documentation and low-level book-keeping.
  * grid() now invisibly returns the x- and y- coordinates at which
    the grid-lines were drawn.
  * norm(., type) now also works for complex matrices.
  * kappa(., exact = TRUE, norm = *) now works for all norms and also
    for complex matrices.  In symmetric / triangular cases, the new
    argument uplo = "U" | "L" allows the upper or lower triangular
    part to be specified.
  * memDecompress(type = "unknown") recognizes compression in the
    default 'zlib' format as used by memCompress(type = "gzip").
  * memCompress() and memDecompress() will use the libdeflate library
    (&lt;https://github.com/ebiggers/libdeflate&gt;) if installed.  This
    uses the same type of compression for type = "gzip" but is 1.5-2x
    faster than the system libz library on some common platforms: the
    speed-up may depend on the library version.
  * diff() for objects of class "Date", "POSIXct", and "POSIXlt"
    accepts a units argument passed via ....
  * Dynamic help now does a much better job of rendering package
    DESCRIPTION metadata.
  * Rprof() gains an event argument and support for elapsed (real)
    time profiling on Unix (PR#18076).
  * filled.contour() gains a key.border argument.
  * tools::update_pkg_po() gets arguments pot_make and mo_make for
    _not_ re-making the corresponding files, and additionally a
    verbose argument.
  * Hexadecimal string colour specifications are now accepted in
    short form, so, for example, we can use "#123", which is
    equivalent to "#112233".
    Thanks to MikeFC for the original idea and Ella Kaye, Malcolm
    Barrett, George Stagg, and Hanne Oberman for the patch.
  * Plain-text help shows \var markup by angle brackets.
  * The new experimental primitive function declare() is intended to
    eventually allow information about R code to be communicated to
    the interpreter, compiler, and code analysis tools. The syntax
    for declarations is still being developed.
  * Functions psmirnov(), qsmirnov() and rsmirnov() in package stats
    have had argument two.sided renamed to alternative, to take into
    account that the permutation distributions of the one-sided
    statistics can be different in the case of ties.  Consequence of
    PR#18582.
  * sort() is now an implicit S4 generic in methods.
  * Formatting and printing, format(z), print(z), of complex vectors
    z no longer zap relatively small real or imaginary parts to zero,
    fixing PR#16752.  This is an API change, as it was documented
    previously to round real and imaginary parts together on purpose,
    producing nicer looking output.  As mentioned, e.g. in the PR,
    this change is compatible with many other "R-like" programming
    environments.
    We have simplified the internal code and now basically format the
    real and imaginary parts independently of each other.
  * New experimental functions Tailcall() and Exec() to support
    writing stack-space-efficient recursive functions.
  * Where characters are attempted to be plotted by pdf(),
    postscript() and xfig() which are not in the selected 8-bit
    character set (most often Latin-1) and the R session is using a
    UTF-8 locale, the warning messages will show the UTF-8 character
    rather than its bytes and one dot will be substituted per
    character rather than per byte.  (Platforms whose iconv() does
    transliteration silently plot the transliteration.)
    In a UTF-8 locale some transliterations are now done with a
    warning (e.g., dashes and Unicode minus to hyphen, ligatures are
    expanded, permille (‰) is replaced by o/oo), although the OS may
    have got there first.  These are warnings as they will continue
    to be replaced by dots in earlier versions of R.
  * The matrix multiplication functions crossprod() and tcrossprod()
    are now also primitive and S3 generic, as %*% had become in R
    4.3.0.
  * source() and example() have a new optional argument catch.aborts
    which allows continued evaluation of the R code after an error.
  * The non-Quartz tiff() devices allow additional types of
    compression if supported by the platform's libtiff library.
  * The list of base and recommended package names is now provided by
    tools::standard_package_names().
  * cairo_pdf() and cairo_ps() default to onefile = TRUE to closer
    match pdf() and postscript().
  * New option catch.script.errors provides a documented way to catch
    errors and then continue in non-interactive use.
  * L %||% R newly in base is an expressive idiom for the phrases
    if(!is.null(L)) L else R or if(is.null(L)) R else L.
  * The return value from warnings() now always inherits from
    "warnings" as documented, now also in the case of no warnings
    where it previously returned NULL.
  * as.complex("1i") now returns 0 + 1i instead of NA with a warning.
  * z &lt;- c(NA, 1i) now keeps the imaginary part Im(z[1]) == 0, no
    longer coercing to NA_complex_.  Similarly, cumsum(z) correctly
    sums real and imaginary parts separately, i.e., without
    "crosstalk" in case of NAs.
  * On Alpine Linux iconv() now maps "latin2", "latin-2", "latin9"
    and "latin-9" to encoding names the OS knows about
    (case-insensitively).
  * iconv(sub = "Unicode") now always zero-pads to four (hex) digits,
    rather than to 4 or 8.  (This seems to have become the convention
    once Unicode restricted the number of Unicode points to 2^21 - 1
    and so will never need more than 6 digits.)
  * NCOL(NULL) now returns 0 instead of 1, for consistency with
    cbind().
  * The information for the Euro glyph missing from the Adobe .afm
    files for the Courier, Helvetica and Times families has been
    copied from their URW equivalents - this will improve vertical
    centring in the pdf() and postscript() devices.
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.12.0.  The changes are almost entirely cosmetic.
  * The included LAPACK sources have been updated to version 3.12.0
    and some further double-complex routines added.
  * There are new font families for the 2014--5 URW 2.0 fonts (see
    ?pdf) which are included in recent versions of Ghostscript.
    These have font widths for most Greek glyphs and a few others
    which were missing from the original versions (whose font
    families remain available for reproducibility, although
    Ghostscript-based viewers will render using the 2.0 versions).
  * Improve the large-n efficiency of as.matrix(&lt;dist&gt;), thanks an R
    contributors effort, notably by Tim Taylor and Heather Turner,
    see PR#18660.
  * The default and numeric methods of all.equal() get a check.class
    option.
  * zapsmall() gets new optional arguments, function mFUN and min.d,
    for extra flexibility; fulfills a wish in PR#18199.  Also, it is
    now an implicit S4 generic in package methods.
  * The Rd filter for aspell() gains an ignore argument.
  * New generic function sort_by(), primarily useful for the
    data.frame method which can be used to sort rows of a data frame
    by one or more columns.
  * The icence headers for the RPC code in src/extra/xdr have been
    updated to use the GPL-compatible licence published by Oracle
    America in 2010.
  * New function pkg2HTML() in tools to create single-page HTML
    reference manuals for R packages.
  * The byte code evaluator now uses less C stack space for recursive
    calls to byte-compiled functions. It also makes more of an effort
    to avoid allocations for scalar return values.
  * New completion option backtick (disabled by default) allows
    non-syntactic completions to be wrapped in backquotes. This is
    currently only useful for Jupyter notebooks via the IRkernel
    package, and may cause problems for other backends.
  INSTALLATION:
  * The parser has been updated to work with bison 3.8.2, which is
    now used for the pre-generated parsers in gram.c, file.c, and
    gramRd.c. A few parser error messages have changed, which may
    affect code that relies on exact messages.
  INSTALLATION on a UNIX-ALIKE:
  * System valgrind headers are now required to use configure option
  - -with-valgrind-instrumentation with value 1 or 2.
  * configure will warn if it encounters a 32-bit build, as that is
    nowadays almost untested.
  * Environment variable R_SYSTEM_ABI is no longer used and so no
    longer recorded in etc/Renviron (it was not on Windows and was
    only ever used when preparing package tools).
  * If the libdeflate library and headers are available, libdeflate
    rather than libz is used to (de)compress R objects in lazy-load
    databases.  Typically tasks spend up to 5% of their time on such
    operations, although creating lazy-data databases is one of the
    exceptions.
    This can be suppressed if the library is available by the
    configure option --without-libdeflate-compression.
  * configure option --enable-lto=check has not worked reliably since
    2019 and has been removed.
  * The minimum autoconf requirement for a maintainer build has been
    increased to autoconf 2.71.
    It is intended to increase this to 2.72 for R 4.5.0: the
    distributed configure file was generated using 2.72.
  * The minimum version requirement for an external LAPACK has been
    reduced to 3.9.0.
  * No default C++ compiler is set if no C++17 compiler is detected:
    there is no longer an automatic fallback to C++14 or C++11.
    Compilers from the last five years should have sufficient
    support: for others macros CXX and CXXSTD can be set in file
    config.site to provide a fallback if needed.
    The Objective-C++ compiler now by default uses the standard
    selected by R for C++ (currently C++17) rather than the default
    standard for the C++ compiler (which on macOS is still C++98).
  INSTALLATION on macOS:
  * A new configure option --with-newAccelerate makes use of Apple's
    'new' BLAS / LAPACK interfaces in their Accelerate framework.
    Those interfaces are only available in macOS 13.3 or later, and
    building requires SDK 13.3 or later (from the Command Line Tools
    or Xcode 14.3 or later).
    By default the option uses new Accelerate for BLAS calls: to also
    use it for LAPACK use option --with-newAccelerate=lapack.  The
    later interfaces provide LAPACK 3.9.1 rather than 3.2.1: 3.9.1 is
    from 2021-04 and does not include the improved algorithms
    introduced in LAPACK 3.10.0 (including for BLAS calls).
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools44, an update of the Rtools43 toolchain.  It is
    based on GCC 13 and newer versions of MinGW-W64, binutils and
    libraries (targeting 64-bit Intel CPUs).  R-devel can no longer
    be built using Rtools43 without changes.
  * Rtools44 has experimental support for 64-bit ARM (aarch64) CPUs
    _via_ the LLVM 17 toolchain using lld, clang/flang-new and
    libc++.
  UTILITIES:
  * R CMD check notes when S4-style exports are used without
    declaring a strong dependence on package methods.
  * tools::checkRd() (used by R CMD check) detects more problems with
    \Sexpr-based dynamic content, including bad nesting of \Sexprs
    and invalid arguments.
  * tools::checkRd() now reports Rd titles and section names ending
    in a period; this is ignored by R CMD check unless environment
    variable _R_CHECK_RD_CHECKRD_MINLEVEL_ is set to -5 or smaller.
  * R CMD check now notes Rd files without an \alias, as long
    documented in 'Writing R Extensions' §1.3.1.  The check for a
    missing \description has been moved from tools::checkRd() to
    tools::checkRdContents().
  * R CMD check now visits inst/NEWS.Rd and OS-specific man
    subdirectories when checking Rd files.
  * tools::checkDocFiles() and tools::checkRdContents() now also
    check internal Rd files by default, but "specially" (ignoring
    missing documentation of arguments).
  * R CMD Rdiff gets option --useEx.
  * R CMD check now warns on non-portable uses of Fortran KIND such
    as INTEGER(KIND=4) and REAL(KIND=8).
    To see the failing lines set environment variable
    _R_CHECK_FORTRAN_KIND_DETAILS_ to a true value.
  * When checking Rd files, R CMD check now notes some of the "lost
    braces" that tools::checkRd() finds.  Typical problems are Rd
    macros missing the initial backslash (e.g., code{...}), in-text
    set notation (e.g., {1, 2}, where the braces need escaping), and
    \itemize lists with \describe-style entries of the form
    \item{label}{description}.
  * R CMD INSTALL (and hence check) will compile C++ code with
  - DR_NO_REMAP if environment variable _R_CXX_USE_NO_REMAP_ is set
    to a true value.  It is planned that this will in future become
    the default for compiling C++.
  * The new built-in Rd macro \dontdiff{} can be used to mark example
    code whose output should be ignored when comparing check output
    to reference output (tests/Examples/&lt;pkg&gt;-Ex.Rout.save).  The
    \dontdiff tag, like \donttest, is _not_ shown on the rendered
    help page, so provides a clean alternative to ##
    IGNORE_RDIFF_(BEGIN|END) comments.
  * R CMD build when there is no NAMESPACE, now uses the recommended
    exportPattern("^[^.]"), instead of exporting everything.
  * R CMD check now warns about non-ASCII characters in the NAMESPACE
    file (in addition to R files). Such packages are not portable and
    may fail to install on some platforms.
  C-LEVEL FACILITIES:
  * Headers R_ext/Applic.h and R-ext/Linpack.h used to include
    R_ext/BLAS.h although this was undocumented and unneeded by their
    documented entry points.  They no longer do so.
  * New function R_missing(), factored out from do_missing(), used to
    fix PR#18579.
  * SEXP type S4SXP has been renamed to OBJSXP to support
    experimenting with alternative object systems.  The S4SXP value
    can still be used in C code but is now deprecated.  Based on
    contributions from the R Consortium's Object-Oriented Programming
    Working Group.
  * New function pow1p(x,y) for accurate (1+x)^y.
  * mkCharLenCE was incorrectly documented to take a size_t length
    but was implemented with int (and character strings in R are
    limited to 2^31 - 1 bytes).
  DEPRECATED AND DEFUNCT:
  * data() no longer handles zipped data from long-defunct (since R
    2.13.0) --use-zip-data installations.
  * The legacy graphics devices pictex() and xfig() are now
    deprecated.  They do not support recent graphics enhancements and
    their font handling is rudimentary. The intention is to retain
    them for historical interest as long as they remain somewhat
    functional.
  * Support for encoding = "MacRoman" has been removed from the pdf()
    and postscript() devices - this was a legacy encoding supporting
    classic macOS up to 2001 and no longer has universal libiconv
    support.
  * is.R() is deprecated as no other S dialect is known to be in use
    (and this could only identify historical dialects, not future
    ones).
    Further information on calls can be obtained by setting the
    environment variable _R_DEPRECATED_IS_R_ to error which turns the
    deprecation warning into an error and so by default gives a
    traceback.  (This is done by R CMD check --as-cran.)
  * UseMethod() no longer forwards local variables assigned in the
    generic function into method call environments before evaluating
    the method body. This makes method calls behave more like
    standard function calls and makes method code easier to analyze
    correctly.
  * The twelve as.data.frame.&lt;class&gt;() methods which were deprecated
    only via _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ and in R CMD
    check --as-cran are formally deprecated now in favour of calling
    as.data.frame() or as.data.frame.vector().  The deprecation
    "check" now works also when as.data.frame() is S4 generic thanks
    to Ivan Krylov.
  * The default method for the directional comparison operators &lt;, &gt;,
    &lt;=, and &gt;= now signals an error when one of the operands is a
    language object, i.e. a symbol or a call.
  * For terms.formula(), deprecate abb and neg.out arguments
    _formally_ in addition to just documenting it.
  BUG FIXES:
  * The methods package is more robust to not being attached to the
    search path.  More work needs to be done.
  * pairwise.t.test() misbehaved when subgroups had 0 DF for
    variance, even with pool.sd = TRUE.  (PR#18594 by Jack Berry).
  * Probability distribution functions [dpq]&lt;distrib&gt;(x, *), but also
    bessel[IKJY](x, .) now consistently preserve attributes(x) when
    length(x) == 0, e.g., for a 2 x 0 matrix, thanks to Karolis
    Koncevičius' report PR#18509.
  * Group "Summary" computations such as sum(1:3, 4, na.rm = 5, NA,
    7, na.rm = LL) now give an error instead of either 17 or NN for
    LL true or false, as proposed by Ivan Krylov on the R-devel
    mailing list.  (This also means it is now an error to specify
    na.rm more than once.)
  * as.complex(x) now returns complex(real = x, imaginary = 0) for
    _all_ numerical and logical x, notably also for NA or
    NA_integer_.
  * Directories are now omitted by file.copy(, recursive = FALSE) and
    in file.append() (PR#17337).
  * gsub() and sub() are now more robust to integer overflow when
    reporting errors caused by too large input strings (PR#18346).
  * Top-level handlers are now more robust to attempts to remove a
    handler whilst handlers are running (PR#18508).
  * The handling of Alt+F4 in dialogs created on Windows using
    GraphApp has been fixed (PR#13870).
  * density() more consistently computes grid values for the
    FFT-based convolution, following Robert Schlicht's analysis and
    proposal in PR#18337, correcting density values typically by a
    factor of about 0.999.  Argument old.coords = TRUE provides back
    compatibility.
  * palette.colors() gains a name argument that defaults to FALSE
    controlling whether the vector of colours that is returned has
    names (where possible).  PR#18529.
  * tools::xgettext() no longer extracts the (non-translatable) class
    names from warningCondition and errorCondition calls.
  * S3method(&lt;gen&gt;, &lt;class&gt;, &lt;func&gt;) in the NAMESPACE file now works
    (again) when &lt;func&gt; is visible from the namespace, e.g.,
    imported, or in base.
  * getParseData(f) now also works for a function defined in the
    first of several &lt;pkg&gt;/R/*.R source files, thanks to Kirill
    Müller's report and Duncan Murdoch's patch in PR#16756.
  * Rd \Sexpr macros with nested #ifdef conditionals were not
    processed.
  * A non-blocking connection with non-default encoding (such as a
    socket) now correctly returns from readLines() after new data has
    arrived also when its EOF had been reached previously.  Thanks to
    Peter Meilstrup's report on R-devel and Ivan Krylov's report and
    patch proposal in PR#18555.
  * tools::checkRdContents() failed to detect empty argument
    descriptions when they spanned multiple lines, including those
    generated by prompt().  These cases are now noted by R CMD check.
  * Plain-text help no longer outputs spurious colons in the
    arguments list (for multi-line \item labels in the Rd source).
  * kappa() and rcond() work correctly in more cases; kappa(., norm =
    "2") now warns that it computes the 1-norm with (default) exact =
    FALSE; prompted by Mikael Jagan's quite comprehensive PR#18543.
  * Rd skeletons generated by prompt() or promptData() now use a
    dummy title (so R CMD build works).  tools::checkRdContents() has
    been updated to detect such template leftovers, including from
    promptPackage().
  * When S4 method dispatch fails because no method was found, the
    error message now includes the signature argument names; thanks
    to Michael Chirico's proposal on the R-devel list.
  * withAutoprint({ .. }) now preserves srcrefs previously lost,
    thanks to Andrew Simmons' report plus fix in PR#18572.
  * transform.data.frame() no longer adjusts names; in particular,
    untransformed variables are kept as-is, including those with
    syntactically invalid names (PR#17890).
  * The keep.source option for Rd \Sexpr blocks is no longer ignored.
  * The formula methods for t.test() and wilcox.test() now catch when
    paired is passed, addressing PR#14359; use Pair(x1, x2) ~ 1 for a
    paired test.
  * The level reported in the browser prompt was often too large. It
    now shows the number of browser contexts on the stack.
  * For cbind() and rbind(), the optional deparse.level argument is
    now properly passed to methods, thanks to Mikael Jagan's PR#18579
    and comments there.
  * Some error and warning messages for large ('long vector')
    matrix(v, nr, nc) and dim(m) &lt;- d are now correct about sizes,
    using long long formatting, fixing PR#18612 (and more) reported
    by Mikael Jagan.
  * readChar(useBytes = TRUE) now terminates strings even when the
    underlying connection uses extra spaces in the input buffer.
    This fixes problems with extra garbage seen with gzip
    connections, PR#18605.
  * Named capture in PCRE regular expressions now works also with
    more than 127 named groups (PR#18588).
  * Datetime functions are now robust against long jumps when dealing
    with internal time zone changes.  This avoids confusing warnings
    about an invalid time zone, previously triggered by turning
    warnings into errors or handling them via tryCatch (PR#17966,
    PR#17780).
  * Datetime functions now restore even an empty TZ environment
    variable after internal time zone changes (PR#17724).  This makes
    results of datetime functions with this (typically unintentional)
    setting more predictable.
  * drop.terms(*) now drops response as by default, keep.response =
    FALSE, fixing PR#18564 thanks to Mikael Jagan.
  * dummy.coef(.) now also works for lm()-models with character
    categorical predictor variables rather than factor ones, fixing
    PR#18635 reported by Jinsong Zhao.
  * formals(f) &lt;- formals(f) now also works for a function w/o
    arguments and atomic _constant_ body(f).
  * Correct as.function(&lt;invalid list&gt;, .)'s error message.
  * removeSource() is yet more thorough in finding and removing
    "srcref" and the other source references from parsed R language
    chunks, fixing PR#18638 thanks to Andrew Simmons.
  * dgeom() is more accurate now, notably when its result is very
    small, fixing PR#18642 thanks to the proposal of Morten Welinder,
    also improving other instances where C level binom_raw(x, n, ..)
    has x == 0 or x== n.
  * warning() with options(warn = 1) has improved output for
    multi-line messages.
  * axis.Date() and axis.POSIXct() now respect the par("lab") setting
    for the number of pretty() intervals.
  * Comparisons for language objects (which are based on deparsing)
    are now more careful about using accurate deparsed results
    (PR#18676).
  * Plain-text help (Rd2txt) now correctly preserves blank lines
    following single-line \dontrun code.
  * &lt;POSIXlt&gt;[*] no longer sets wrong "balanced" attribute, fixing
    PR#18681 thanks to Mikael Jagan.
  * str(&lt;classed-call&gt;) now deparses the call as expected, fixing
    PR#18684, reported by Dave Slager.
  * In Rd examples, code following the closing brace of a \dontrun,
    \dontshow or \donttest tag on the same line is no longer skipped
    when R CMD check runs the examples.
  * as.data.frame(matrix(*, ncol=0)) now gets valid names() and
    colnames(); reported by Davis Vaughan on the R-devel list.
  * Internal Mathlib function stirlerr(n) is now almost fully
    (52-bit) accurate for all n &gt;= ~5.9 and more accurate also in the
    range 1 -- 5.9.  This entails small ("after 12th decimal")
    changes in density functions, e.g., dgamma() in _some_ regions of
    their support.  The fix was partly prompted by Morten Welinder's
    PR#18640.
  * Numbers like 9876543.2 are now considered non-integer by Mathlib
    internal R_nonint(), amending original fix of PR#15734.
  * Rd comment lines no longer cause broken paragraphs in the
    rendered PDF and plain-text help. In code blocks, pure comment
    lines (starting with %) no longer produce an empty line.
  * xtabs(Freq ~ .) now consistently defaults to na.action = na.pass,
    using na.rm = FALSE (added as an argument) when summing over Freq
    (PR#17770).
  * tools::testInstalledPackage() is no longer silent about failures
    from running examples or tests and its return code no longer
    ignores failures from checking vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1718366400">- CHANGES IN R 4.4.1:
  C-LEVEL FACILITIES:
  * Functions R_atof and R_strtod declared in header R_ext/Utils.h
    are now documented in 'Writing R Extensions' and so formally part
    of the API.
  * The non-API entry points Rf_setSVector, Rf_StringFalse,
    Rf_StringTrue and Rf_isBlankString have been added to those
    reported by R CMD check.
  * The new function Rf_allocLang is now available. This provides an
    alternative to the idiom of calling Rf_allocList followed by
    SET_TYPEOF.
  UTILITIES:
  * R CMD check now reports as warnings what gfortran calls 'Fortran
    2018 deleted features', all of which have long been marked as
    'obsolescent' and some of which were deleted in Fortran 2008 or
    earlier.  Fortran compilers are no longer required to support
    these.
  BUG FIXES:
  * as.numeric(), scan(), type.convert() and other places which use
    the internal C function R_strtod now require a _non-empty_ digit
    sequence in a decimal or binary exponent.  This aligns with the
    C/POSIX standard for strtod and with ?NumericConstants.
  * as.data.frame(m, make.names=NA) now works correctly for a matrix
    m with NA's in row names.
  * The error message from &lt;POSIXlt&gt;[["hour"]] and similar now
    mentions *[[, "hour"]], as wished for in PR#17409 and proposed by
    Michael Chirico.
  * qbinom() and potentially qpois(), qnbinom(), no longer sometimes
    fail accurate inversion (of pbinom(), etc), thanks to Christopher
    Chang's report and patch in PR#18711.
  * The internal help server on Windows can again serve requests sent
    in quick succession, fixing a regression in R 4.4.0.
  * debugcall(&lt;S3Generic&gt;()) now also works when a corresponding
    S4-generic version is in the methods cache (PR#18143).
  * Package tools' toTitleCase(ch0) now returns character(0) when ch0
    is of zero length; fixing PR#18724, reported by David Hugh Jones.
  * R CMD check is no longer broken (without a check result and no
    explanation in 00check.log) for a package which declares an
    invalid VignetteBuilder in DESCRIPTION but has no vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1730376000">- CHANGES IN R 4.4.2:
  C-LEVEL FACILITIES:
  * The S-compatibility macros F77_COM and F77_COMDECL defined in
    header R_ext/RS.h are deprecated and will be removed shortly.  We
    could find no record of their use.
  BUG FIXES:
  * Mathlib function lgammacor(x) no longer warns about underflow to
    zero for large x.
  * Text widths and heights were incorrectly reported by the Quartz
    device if the drawing context didn't exist yet (typically when
    drawing off-screen to a window that is yet to appear, see
    PR#18591).
  * The Quartz device could segfault in cases where paths with spaces
    are used in the new glyph drawing API.  Thanks to Tomek
    Gieorgijewski (PR#18758).
  * On macOS in R CRAN builds, it is again possible to read
    little-endian UTF-16 text with a BOM from a connection using
    encoding="UTF-16".  Users building R from source should avoid
    using the system libiconv in macOS 14.1 and later.
  * methods' internal .requirePackage() now re-enables primitive
    method dispatch when needed; thanks to Ivan Krylov for
    demystifying CRAN package check failures on the R-devel mailing
    list.</changelog>
</package>
<package pkgid="80fb708abc36ea420132eb40bbecb0289666e96ecef06ec90237a032762650ba0434e57206813d1309a9849005d0fe86dc93d1865d066e925aeed0a73feeaa96" name="R-base-debugsource" arch="x86_64">
  <version epoch="0" ver="4.4.2" rel="51.0.2.2.sr20241103"/>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1620302400">- To get in sync with d:l:R:autoCRAN the Matrix package's split
  in -devel was reversed.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339200">- improved spec file according to comments of dimstar in
  https://build.opensuse.org/request/show/892685</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339201">- CHANGES IN R 4.1.0:
  FUTURE DIRECTIONS:
  * It is planned that the 4.1.x series will be the last to support
    32-bit Windows, with production of binary packages for that
    series continuing until early 2023.
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Data set esoph in package datasets now provides the correct
    numbers of controls; previously it had the numbers of cases added
    to these.  (Reported by Alexander Fowler in PR#17964.)
  NEW FEATURES:
  * www.omegahat.net is no longer one of the repositories known by
    default to setRepositories().  (Nowadays it only provides source
    packages and is often unavailable.)
  * Function package_dependencies() (in package tools) can now use
    different dependency types for direct and recursive dependencies.
  * The checking of the size of tarball in R CMD check --as-cran
    &lt;pkg&gt; may be tweaked via the new environment variable
    _R_CHECK_CRAN_INCOMING_TARBALL_THRESHOLD_, as suggested in
    PR#17777 by Jan Gorecki.
  * Using c() to combine a factor with other factors now gives a
    factor, an ordered factor when combining ordered factors with
    identical levels.
  * apply() gains a simplify argument to allow disabling of
    simplification of results.
  * The format() method for class "ftable" gets a new option justify.
    (Suggested by Thomas Soeiro.)
  * New ...names() utility.  (Proposed by Neal Fultz in PR#17705.)
  * type.convert() now warns when its as.is argument is not
    specified, as the help file always said it _should_.  In that
    case, the default is changed to TRUE in line with its change in
    read.table() (related to stringsAsFactor) in R 4.0.0.
  * When printing list arrays, classed objects are now shown _via_
    their format() value if this is a short enough character string,
    or by giving the first elements of their class vector and their
    length.
  * capabilities() gets new entry "Rprof" which is TRUE when R has
    been configured with the equivalent of --enable-R-profiling (as
    it is by default).  (Related to Michael Orlitzky's report
    PR#17836.)
  * str(xS4) now also shows extraneous attributes of an S4 object
    xS4.
  * Rudimentary support for vi-style tags in rtags() and R CMD rtags
    has been added.  (Based on a patch from Neal Fultz in PR#17214.)
  * checkRdContents() is now exported from tools; it and also
    checkDocFiles() have a new option chkInternal allowing to check
    Rd files marked with keyword "internal" as well.  The latter can
    be activated for R CMD check via environment variable
    _R_CHECK_RD_INTERNAL_TOO_.
  * New functions numToBits() and numToInts() extend the raw
    conversion utilities to (double precision) numeric.
  * Functions URLencode() and URLdecode() in package utils now work
    on vectors of URIs.  (Based on patch from Bob Rudis submitted
    with PR#17873.)
  * path.expand() can expand ~user on most Unix-alikes even when
    readline is not in use.  It tries harder to expand ~, for example
    should environment variable HOME be unset.
  * For HTML help (both dynamic and static), Rd file links to help
    pages in external packages are now treated as references to
    topics rather than file names, and fall back to a file link only
    if the topic is not found in the target package. The earlier rule
    which prioritized file names over topics can be restored by
    setting the environment variable _R_HELP_LINKS_TO_TOPICS_ to a
    false value.
  * c() now removes NULL arguments before dispatching to methods,
    thus simplifying the implementation of c() methods, _but_ for
    back compatibility keeps NULL when it is the first argument.
    (From a report and patch proposal by Lionel Henry in PR#17900.)
  * Vectorize()'s result function's environment no longer keeps
    unneeded objects.
  * Function ...elt() now propagates visibility consistently with
    ..n.  (Thanks to Lionel Henry's PR#17905.)
  * capture.output() no longer uses non-standard evaluation to
    evaluate its arguments.  This makes evaluation of functions like
    parent.frame() more consistent.  (Thanks to Lionel Henry's
    PR#17907.)
  * packBits(bits, type="double") now works as inverse of
    numToBits().  (Thanks to Bill Dunlap's proposal in PR#17914.)
  * curlGetHeaders() has two new arguments, timeout to specify the
    timeout for that call (overriding getOption("timeout")) and TLS
    to specify the minimum TLS protocol version to be used for
    https:// URIs (_inter alia_ providing a means to check for sites
    using deprecated TLS versions 1.0 and 1.1).
  * For nls(), an optional constant scaleOffset may be added to the
    denominator of the relative offset convergence test for cases
    where the fit of a model is expected to be exact, thanks to a
    proposal by John Nash.  nls(*, trace=TRUE) now also shows the
    convergence criterion.
  * Numeric differentiation _via_ numericDeriv() gets new optional
    arguments eps and central, the latter for taking central divided
    differences.  The latter can be activated for nls() via
    nls.control(nDcentral = TRUE).
  * nls() now passes the trace and control arguments to getInitial(),
    notably for all self-starting models, so these can also be fit in
    zero-noise situations via a scaleOffset.  For this reason, the
    initial function of a selfStart model must now have ... in its
    argument list.
  * bquote(splice = TRUE) can now splice expression vectors with
    attributes: this makes it possible to splice the result of
    parse(keep.source = TRUE).  (Report and patch provided by Lionel
    Henry in PR#17869.)
  * textConnection() gets an optional name argument.
  * get(), exists(), and get0() now signal an error if the first
    argument has length greater than 1.  Previously additional
    elements were silently ignored.  (Suggested by Antoine Fabri on
    R-devel.)
  * R now provides a shorthand notation for creating functions, e.g.
    \(x) x + 1 is parsed as function(x) x + 1.
  * R now provides a simple native forward pipe syntax |&gt;.  The
    simple form of the forward pipe inserts the left-hand side as the
    first argument in the right-hand side call.  The pipe
    implementation as a syntax transformation was motivated by
    suggestions from Jim Hester and Lionel Henry.
  * all.equal(f, g) for functions now by default also compares their
    environment(.)s, notably via new all.equal method for class
    function.  Comparison of nls() fits, e.g., may now need
    all.equal(m1, m2, check.environment = FALSE).
  * .libPaths() gets a new option include.site, allowing to _not_
    include the site library.  (Thanks to Dario Strbenac's suggestion
    and Gabe Becker's PR#18016.)
  * Lithuanian translations are now available.  (Thanks to Rimantas
    Zakauskas.)
  * names() now works for DOTSXP objects.  On the other hand, in
    R-lang, the R language manual, we now warn against relying on the
    structure or even existence of such dot-dot-dot objects.
  * all.equal() no longer gives an error on DOTSXP objects.
  * capabilities("cairo") now applies only to the file-based devices
    as it is now possible (if very unusual) to build R with Cairo
    support for those but not for X11().
  * There is optional support for tracing the progress of
    loadNamespace() - see its help.
  * (Not Windows.)  l10n_info() reports an additional element, the
    name of the encoding as reported by the OS (which may differ from
    the encoding part (if any) of the result from
    Sys.getlocale("LC_CTYPE").
  * New function gregexec() which generalizes regexec() to find _all_
    disjoint matches and well as all substrings corresponding to
    parenthesized subexpressions of the given regular expression.
    (Contributed by Brodie Gaslam.)
  * New function charClass() in package utils to query the
    wide-character classification functions in use (such as
    iswprint).
  * The names of quantile()'s result no longer depend on the global
    getOption("digits"), but quantile() gets a new optional argument
    digits = 7 instead.
  * grep(), sub(), regexp and variants work considerably faster for
    long factors with few levels.  (Thanks to Michael Chirico's
    PR#18063.)
  * Provide grouping of x11() graphics windows within a window
    manager such as Gnome or Unity; thanks to a patch by Ivan Krylov
    posted to R-devel.
  * The split() method for class data.frame now allows the f argument
    to be specified as a formula.
  * sprintf now warns on arguments unused by the format string.
  * New palettes "Rocket" and "Mako" for hcl.colors() (approximating
    palettes of the same name from the 'viridisLite' package).
    Contributed by Achim Zeileis.
  * The base environment and its namespace are now locked (so one can
    no longer add bindings to these or remove from these).
  * Rterm handling of multi-byte characters has been improved,
    allowing use of such characters when supported by the current
    locale.
  * Rterm now accepts ALT+ +xxxxxxxx sequences to enter Unicode
    characters as hex digits.
  * Environment variable LC_ALL on Windows now takes precedence over
    LC_CTYPE and variables for other supported categories, matching
    the POSIX behaviour.
  * duplicated() and anyDuplicated() are now optimized for integer
    and real vectors that are known to be sorted via the ALTREP
    framework. Contributed by Gabriel Becker via PR#17993.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 14
    and so packages that provide graphics devices should be
    reinstalled.
  * Graphics devices should now specify deviceVersion to indicate
    what version of the graphics engine they support.
  * Graphics devices can now specify deviceClip.  If TRUE, the
    graphics engine will never perform any clipping of output itself.
    The clipping that the graphics engine does perform (for both
    canClip = TRUE and canClip = FALSE) has been improved to avoid
    producing unnecessary artifacts in clipped output.
  * The grid package now allows gpar(fill) to be a linearGradient(),
    a radialGradient(), or a pattern().  The viewport(clip) can now
    also be a grob, which defines a clipping path, and there is a new
    viewport(mask) that can also be a grob, which defines a mask.
    These new features are only supported so far on the Cairo-based
    graphics devices and on the pdf() device.
  * (Not Windows.)  A warning is given when a Cairo-based type is
    specified for a png(), jpeg(), tiff() or bmp() device but Cairo
    is unsupported (so type = "Xlib" is tried instead).
  * grSoftVersion() now reports the versions of FreeType and
    FontConfig if they are used directly (not _via_ Pango), as is
    most commonly done on macOS.
  C-LEVEL FACILITIES:
  * The _standalone_ libRmath math library and R's C API now provide
    log1pexp() again as documented, and gain log1mexp().
  INSTALLATION on a UNIX-ALIKE:
  * configure checks for a program pkgconf if program pkg-config is
    not found.  These are now only looked for on the path (like
    almost all other programs) so if needed specify a full path to
    the command in PKG_CONFIG, for example in file config.site.
  * C99 function iswblank is required - it was last seen missing ca
    2003 so the workaround has been removed.
  * There are new configure options --with-internal-iswxxxxx,
  - -with-internal-towlower and --with-internal-wcwidth which allows
    the system functions for wide-character classification,
    case-switching and width (wcwidth and wcswidth) to be replaced by
    internal ones.  The first has long been used on macOS, AIX (and
    Windows) but this enables it to be unselected there and selected
    for other platforms (it is the new default on Solaris).  The
    second is new in this version of R and is selected by default on
    macOS and Solaris.  The third has long been the default and
    remains so as it contains customizations for East Asian
    languages.
    System versions of these functions are often minimally
    implemented (sometimes only for ASCII characters) and may not
    cover the full range of Unicode points: for example Solaris (and
    Windows) only cover the Basic Multilingual Plane.
  * Cairo installations without X11 are more likely to be detected by
    configure, when the file-based Cairo graphics devices will be
    available but not X11(type = "cairo").
  * There is a new configure option --with-static-cairo which is the
    default on macOS.  This should be used when only static cairo
    (and where relevant, Pango) libraries are available.
  * Cairo-based graphics devices on platforms without Pango but with
    FreeType/FontConfig will make use of the latter for font
    selection.
  LINK-TIME OPTIMIZATION on a UNIX-ALIKE:
  * Configuring with flag --enable-lto=R now also uses LTO when
    installing the recommended packages.
  * R CMD INSTALL and R CMD SHLIB have a new flag --use-LTO to use
    LTO when compiling code, for use with R configured with
  - -enable-lto=R.  For R configured with --enable-lto, they have
    the new flag --no-use-LTO.
    Packages can opt in or out of LTO compilation _via_ a UseLTO
    field in the DESCRIPTION file.  (As usual this can be overridden
    by the command-line flags.)
  BUILDING R on Windows:
  * for GCC &gt;= 8, FC_LEN_T is defined in config.h and hence character
    lengths are passed from C to Fortran in _inter alia_ BLAS and
    LAPACK calls.
  * There is a new text file src/gnuwin32/README.compilation, which
    outlines how C/Fortran code compilation is organized and
    documents new features:
  * R can be built with Link-Time Optimization with a suitable
    compiler - doing so with GCC 9.2 showed several
    inconsistencies which have been corrected.
  * There is support for cross-compiling the C and Fortran code
    in R and standard packages on suitable (Linux) platforms.
    This is mainly intended to allow developers to test later
    versions of compilers - for example using GCC 9.2 or 10.x has
    detected issues that GCC 8.3 in Rtools40 does not.
  * There is experimental support for cross-building R packages
    with C, C++ and/or Fortran code.
  * The R installer can now be optionally built to support a single
    architecture (only 64-bit or only 32-bit).
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++14 where
    available (which it is on all currently checked platforms): if
    not (as before) C++11 is used if available otherwise C++ is not
    supported.
    Packages which specify C++11 will still be installed using C++11.
    C++14 compilers may give deprecation warnings, most often for
    std::random_shuffle (deprecated in C++14 and removed in C++17).
    Either specify C++11 (see 'Writing R Extensions') or modernize
    the code and if needed specify C++14.  The latter has been
    supported since R 3.4.0 so the package's DESCRIPTION would need
    to include something like
    Depends: R (&gt;= 3.4)
  PACKAGE INSTALLATION on Windows:
  * R CMD INSTALL and R CMD SHLIB make use of their flag --use-LTO
    when the LTO_OPT make macro is set in file etc/${R_ARCH}/Makeconf
    or in a personal/site Makevars file.  (For details see 'Writing R
    Extensions' SS4.5.)
    This provides a valuable check on code consistency.  It does work
    with GCC 8.3 as in Rtools40, but that does not detect everything
    the CRAN checks with current GCC do.
  PACKAGE INSTALLATION on macOS:
  * The default personal library directory on builds with
  - -enable-aqua (including CRAN builds) now differs by CPU type,
    one of
    ~/Library/R/x86_64/x.y/library
    ~/Library/R/arm64/x.y/library
    This uses the CPU type R (and hence the packages) were built for,
    so when a x86_64 build of R is run under Rosetta emulation on an
    arm64 Mac, the first is used.
  UTILITIES:
  * R CMD check can now scan package functions for bogus return
    statements, which were possibly intended as return() calls (wish
    of PR#17180, patch by Sebastian Meyer). This check can be
    activated via the new environment variable
    _R_CHECK_BOGUS_RETURN_, true for --as-cran.
  * R CMD build omits tarballs and binaries of previous builds from
    the top-level package directory.  (PR#17828, patch by Sebastian
    Meyer.)
  * R CMD check now runs sanity checks on the use of LazyData, for
    example that a data directory is present and that
    LazyDataCompression is not specified without LazyData and has a
    documented value.  For packages with large LazyData databases
    without specifying LazyDataCompression, there is a reference to
    the code given in 'Writing R Extensions' SS1.1.6 to test the
    choice of compression (as in all the CRAN packages tested a
    non-default method was preferred).
  * R CMD build removes LazyData and LazyDataCompression fields from
    the DESCRIPTION file of packages without a data directory.
  ENCODING-RELATED CHANGES:
  * The parser now treats \Unnnnnnnn escapes larger than the upper
    limit for Unicode points (\U10FFFF) as an error as they cannot be
    represented by valid UTF-8.
    Where such escapes are used for outputting non-printable
    (including unassigned) characters, 6 hex digits are used (rather
    than 8 with leading zeros).  For clarity, braces are used, for
    example \U{0effff}.
  * The parser now looks for non-ASCII spaces on Solaris (as
    previously on most other OSes).
  * There are warnings (including from the parser) on the use of
    unpaired surrogate Unicode points such as \uD834.  (These cannot
    be converted to valid UTF-8.)
  * Functions nchar(), tolower(), toupper() and chartr() and those
    using regular expressions have more support for inputs with a
    marked Latin-1 encoding.
  * The character-classification functions used (by default) to
    replace the system iswxxxxx functions on Windows, macOS and AIX
    have been updated to Unicode 13.0.0.
    The character-width tables have been updated to include new
    assignments in Unicode 13.0.0.
  * The code for evaluating default (extended) regular expressions
    now uses the same character-classification functions as the rest
    of R (previously they differed on Windows, macOS and AIX).
  * There is a build-time option to replace the system's
    wide-character wctrans C function by tables shipped with R: use
    configure option --with-internal-towlower or (on Windows)
  - DUSE_RI18N_CASE in CFLAGS when building R.  This may be needed
    to allow tolower() and toupper() to work with Unicode characters
    beyond the Basic Multilingual Plane where not supported by system
    functions (e.g. on Solaris where it is the new default).
  * R is more careful when truncating UTF-8 and other multi-byte
    strings that are too long to be printed, passed to the system or
    libraries or placed into an internal buffer.  Truncation will no
    longer produce incomplete multibyte characters.
  DEPRECATED AND DEFUNCT:
  * Function plclust() from the package stats and
    package.dependencies(), pkgDepends(), getDepList(),
    installFoundDepends(), and vignetteDepends() from package tools
    are defunct.
  * Defunct functions checkNEWS() and readNEWS() from package tools
    and CRAN.packages() from utils have been removed.
  * R CMD config CXXCPP is defunct (it was deprecated in R 3.6.2).
  * parallel::detectCores() drops support for Irix (retired in 2013).
  * The LINPACK argument to chol.default(), chol2inv(),
    solve.default() and svd() has been defunct since R 3.1.0.  It was
    silently ignored up to R 4.0.3 but now gives an error.
  * Subsetting/indexing, such as ddd[*] or ddd$x on a DOTSXP
    (dot-dot-dot) object ddd has been disabled; it worked by accident
    only and was undocumented.
  BUG FIXES:
  * Many more C-level allocations (mainly by malloc and strdup) are
    checked for success with suitable alternative actions.
  * Bug fix for replayPlot(); this was turning off graphics engine
    display list recording if a recorded plot was replayed in the
    same session.  The impact of the bug became visible if resize the
    device after replay OR if attempted another savePlot() after
    replay (empty display list means empty screen on resize or empty
    saved plot).
  * R CMD check etc now warn when a package exports non-existing S4
    classes or methods, also in case of no "methods" presence.
    (Reported by Alex Bertram; reproducible example and patch by
    Sebastian Meyer in PR#16662.)
  * boxplot() now also accepts calls for labels such as ylab, the
    same as plot().  (Reported by Marius Hofert.)
  * The help page for xtabs() now correctly states that addNA is
    setting na.action = na.pass among others.  (Reported as PR#17770
    by Thomas Soeiro.)
  * The R CMD check &lt;pkg&gt; gives a longer and more comprehensible
    message when DESCRIPTION misses dependencies, e.g., in Imports:.
    (Thanks to the contributors of PR#17179.)
  * update.default() now calls the generic update() on the formula to
    work correctly for models with extended formulas.  (As reported
    and suggested by Neal Fultz in PR#17865.)
  * The horizontal position of leaves in a dendrogram is now correct
    also with center = FALSE.  (PR#14938, patch from Sebastian
    Meyer.)
  * all.equal.POSIXt() no longer warns about and subsequently ignores
    inconsistent "tzone" attributes, but describes the difference in
    its return value (PR#17277).  This check can be disabled _via_
    the new argument check.tzone = FALSE as suggested by Sebastian
    Meyer.
  * as.POSIXct() now populates the "tzone" attribute from its tz
    argument when x is a logical vector consisting entirely of NA
    values.
  * x[[2^31]] &lt;- v now works.  (Thanks to the report and patch by
    Suharto Anggono in PR#17330.)
  * In log-scale graphics, axis() ticks and label positions are now
    computed more carefully and symmetrically in their range,
    typically providing _more_ ticks, fulfilling wishes in PR#17936.
    The change really corresponds to an improved axisTicks() (package
    grDevices), potentially influencing grid and lattice, for
    example.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now correct to at
    least five digits where it was catastrophically wrong,
    previously.
  * sum(df) and similar "Summary"- and "Math"-group member functions
    now work for data frames df with logical columns, notably also of
    zero rows.  (Reported to R-devel by Martin "b706".)
  * unsplit() had trouble with tibbles due to unsound use of rep(NA,
    len)-indexing, which should use NA_integer_ (Reported to R-devel
    by Mario Annau.)
  * pnorm(x, log.p = TRUE) underflows to -Inf slightly later.
  * show(&lt;hidden S4 generic&gt;) prints better and without quotes for
    non-hidden S4 generics.
  * read.table() and relatives treated an "NA" column name as missing
    when check.names = FALSE PR#18007.
  * Parsing strings containing UTF-16 surrogate pairs such as
    "\uD834\uDD1E" works better on some (uncommon) platforms.
    sprintf("%X", utf8ToInt("\uD834\uDD1E")) should now give "1D11E"
    on all platforms.
  * identical(x,y) is no longer true for differing DOTSXP objects,
    fixing PR#18032.
  * str() now works correctly for DOTSXP and related exotics, even
    when these are doomed.
    Additionally, it no longer fails for lists with a class and
    "irregular" method definitions such that e.g. lapply(*) will
    necessarily fail, as currently for different igraph objects.
  * Too long lines in environment files (e.g. Renviron) no longer
    crash R. This limit has been increased to 100,000 bytes.
    (PR#18001.)
  * There is a further workaround for FreeType giving incorrect
    italic font faces with cairo-based graphics devices on macOS.
  * add_datalist(*, force = TRUE) (from package tools) now actually
    updates an existing data/datalist file for new content.  (Thanks
    to a report and patch by Sebastian Meyer in PR#18048.)
  * cut.Date() and cut.POSIXt() could produce an empty last interval
    for breaks = "months" or breaks = "years".  (Reported as PR#18053
    by Christopher Carbone.)
  * Detection of the encoding of 'regular' macOS locales such as
    en_US (which is UTF-8) had been broken by a macOS change:
    fortunately these are now rarely used with en_US.UTF-8 being
    preferred.
  * sub() and gsub(pattern, repl, x, *) now keep attributes of x such
    as names() also when pattern is NA (PR#18079).
  * Time differences ("difftime" objects) get a replacement and a
    rep() method to keep "units" consistent.  (Thanks to a report and
    patch by Nicolas Bennett in PR#18066.)
  * The \RdOpts macro, setting defaults for \Sexpr options in an Rd
    file, had been ineffective since R 2.12.0: it now works again.
    (Thanks to a report and patch by Sebastian Meyer in PR#18073.)
  * mclapply and pvec no longer accidentally terminate parallel
    processes started before by mcparallel or related calls in
    package parallel (PR#18078).
  * grep and other functions for evaluating (extended) regular
    expressions handle in Unicode also strings not explicitly flagged
    UTF-8, but flagged native when running in UTF-8 locale.
  * Fixed a crash in fifo implementation on Windows (PR#18031).
  * Binary mode in fifo on Windows is now properly detected from
    argument open (PR#15600, PR#18031).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1622808000">- The line %{__install} -m 755 -d %{_infodir}
  no longer works in TW or Factory.
  But without that line it works everywhere. So this instruction
  was commented out of the spec file.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1628596800">- CHANGES IN R 4.1.1:
  NEW FEATURES:
  * require(pkg, quietly = TRUE) is quieter and in particular does
    not warn if the package is not found.
  DEPRECATED AND DEFUNCT:
  * Use of ftp:// URIs should be regarded as deprecated, with
    on-going support confined to method = "libcurl" and not routinely
    tested.  (Nowadays no major browser supports them.)
  * The non-default method = "internal" is deprecated for http:// and
    ftp:// URIs for both download.file and url.
  * On Windows, method = "wininet" is deprecated for http://,
    https:// and ftp:// URIs for both download.file and url.  (A
    warning is only given for ftp://.)
    For ftp:// URIs the default method is now "libcurl" if available
    (which it is on CRAN builds).
    method = "wininet" remains the default for http:// and https://
    URIs but if libcurl is available, using method = "libcurl" is
    preferred.
  INSTALLATION:
  * make check now works also without a LaTeX installation.  (Thanks
    to Sebastian Meyer's PR#18103.)
  BUG FIXES:
  * make check-devel works again in an R build configured with
  - -without-recommended-packages.
  * qnbinom(p, size, mu) for large size/mu is correct now in a range
    of cases (PR#18095); similarly for the (size, prob)
    parametrization of the negative binomial.  Also qpois() and
    qbinom() are better and or faster for extreme cases.  The
    underlying C code has been modularized and is common to all four
    cases of discrete distributions.
  * gap.axis is now part of the axis() arguments which are passed
    from bxp(), and hence boxplot().  (Thanks to Martin Smith's
    report and suggestions in PR#18109.)
  * .First and .Last can again be set from the site profile.
  * seq.int(from, to, *) and seq.default(..) now work better in large
    range cases where from-to is infinite where the two boundaries
    are finite.
  * all.equal(x,y) now returns TRUE correctly also when several
    entries of abs(x) and abs(y) are close to .Machine$double.xmax,
    the largest finite numeric.
  * model.frame() now clears the object bit when removing the class
    attribute of a value via na.action (PR#18100).
  * charClass() now works with multi-character strings on Windows
    (PR#18104, fixed by Bill Dunlap).
  * encodeString() on Solaris now works again in Latin-1 encoding on
    characters represented differently in UTF-8.  Support for
    surrogate pairs on Solaris has been improved.
  * file.show() on Windows now works with non-ASCII path names
    representable in the current native encoding (PR#18132).
  * Embedded R on Windows can now find R home directory via the
    registry even when installed only for the current user
    (PR#18135).
  * pretty(x) with finite x now returns finite values also in the
    case where the extreme x values are close in size to the maximal
    representable number .Machine$double.xmax.
    Also, it's been tweaked for very small ranges and when a boundary
    is close (or equal) to zero; e.g., pretty(c(0,1e-317)) no longer
    has negative numbers, currently still warning about a very small
    range, and pretty(2^-(1024 - 2^-1/(c(24,10)))) is more accurate.
  * The error message for not finding vignette files when weaving has
    correct file sizes now. (Thanks to Sebastian Meyer's PR#18154.)
  * dnbinom(20, &lt;large&gt;, 1) now correctly gives 0, and similar cases
    are more accurate with underflow precaution.  (Reported by Francisco Vera Alcivar in PR#18072.)</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635163200">- repaired https://bugzilla.suse.com/show_bug.cgi?id=1191380
  (rpmacros now go to rpmmacrodir)
- minor clean-ups in spec file</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635768000">- CHANGES IN R 4.1.2:
  C-LEVEL FACILITIES:
  * The workaround in headers R.h and Rmath.h (using namespace std;)
    for the Oracle Developer Studio compiler is no longer needed now
    C++11 is required so has been removed.  A couple more usages of
    log() (which should have been std::log()) with an int argument
    are reported on Solaris.
  * The undocumented limit of 4095 bytes on messages from the
    S-compatibility macros PROBLEM and MESSAGE is now documented and
    longer messages will be silently truncated rather than
    potentially causing segfaults.
  * If the R_NO_SEGV_HANDLER environment variable is non-empty, the
    signal handler for SEGV/ILL/BUS signals (which offers recovery
    user interface) is not set. This allows more reliable debugging
    of crashes that involve the console.
  DEPRECATED AND DEFUNCT:
  * The legacy S-compatibility macros PROBLEM, MESSAGE, ERROR, WARN,
    WARNING, RECOVER, ... are deprecated and will be hidden in R
    4.2.0. R's native interface of Rf_error and Rf_warning has long
    been preferred.
  BUG FIXES:
  * .mapply(F, dots, .) no longer segfaults when dots is not a list
    and uses match.fun(F) as always documented; reported by Andrew
    Simmons in PR#18164.
  * hist(&lt;Date&gt;, ...) and hist(&lt;POSIXt&gt;, ...)  no longer pass
    arguments for rect() (such as col and density) to axis().
    (Thanks to Sebastian Meyer's PR#18171.)
  * \Sexpr{ch} now preserves Encoding(ch). (Thanks to report and
    patch by Jeroen Ooms in PR#18152.)
  * Setting the RNG to "Marsaglia-Multicarry" e.g., by RNGkind(), now
    warns in more places, thanks to Andr'e Gillibert's report and
    patch in PR#18168.
  * gray(numeric(), alpha=1/2) no longer segfaults, fixing PR#18183,
    reported by Till Krenz.
  * Fixed dnbinom(x, size=&lt;very_small&gt;, .., log=TRUE) regression,
    reported by Martin Morgan.
  * as.Date.POSIXlt(x) now keeps names(x), thanks to Davis Vaughan's
    report and patch in PR#18188.
  * model.response() now strips an "AsIs" class typically, thanks to
    Duncan Murdoch's report and other discussants in PR#18190.
  * try() is considerably faster in case of an error and long call,
    as e.g., from some do.call().  Thanks to Alexander Kaever's
    suggestion posted to R-devel.
  * qqline(y = &lt;object&gt;) such as y=I(.), now works, see also
    PR#18190.
  * Non-integer mgp par() settings are now handled correctly in
    axis() and mtext(), thanks to Mikael Jagan and Duncan Murdoch's
    report and suggestion in PR#18194.
  * formatC(x) returns length zero character() now, rather than ""
    when x is of length zero, as documented, thanks to Davis
    Vaughan's post to R-devel.
  * removeSource(fn) now retains (other) attributes(fn).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1647000000">- CHANGES IN R 4.1.3:
  NEW FEATURES:
  * The default version of Bioconductor has been changed to 3.14.
    (This is used by setRepositories and the menus in GUIs.)
  UTILITIES:
  * R CMD check --as-cran has a workaround for a bug in versions of
    file up to at least 5.41 which mis-identify DBF files last
    changed in 2022 as executables.
  C-LEVEL FACILITIES:
  * The legacy S-compatibility macros SINGLE_* in R_ext/Constants.h
    (included by R.h) are deprecated and will be removed in R 4.2.0.
  BUG FIXES:
  * Initialization of self-starting nls() models with initialization
    functions following the pre-R-4.1.0 API (without the ...
    argument) works again for now, with a deprecation warning.
  * Fixed quoting of ~autodetect~ in Java setting defaults to avoid
    inadvertent user lookup due to leading ~, reported in PR#18231 by
    Harold Gutch.
  * substr(., start, stop) &lt;- v now treats _negative_ stop values
    correctly.  Reported with a patch in PR#18228 by Brodie Gaslam.
  * Subscripting an array x without dimnames by a
    length(dim(x))-column character matrix gave "random" non-sense,
    now an error; reported in PR#18244 by Mikael Jagan.
  * ...names() now matches names(list(...)) closely, fixing PR#18247.
  * all.equal(*, scale = s) now works as intended when length(s) &gt; 1,
    partly thanks to Michael Chirico's PR#18272.
  * print(x) for long vectors x now also works for named atomic
    vectors or lists and prints the correct number when reaching the
    getOption("max.print") limit; partly thanks to a report and
    proposal by Hugh Parsonage to the R-devel list.
  * all.equal(&lt;selfStart&gt;, *) no longer signals a deprecation
    warning.
  * reformulate(*, response=r) gives a helpful error message now when
    length(r) &gt; 1, thanks to Bill Dunlap's PR#18281.
  * Modifying globalCallingHandlers inside withCallingHandlers() now
    works or fails correctly, thanks to Henrik Bengtsson's PR#18257.
  * hist(&lt;Date&gt;, breaks = "days") and hist(&lt;POSIXt&gt;, breaks = "secs")
    no longer fail for inputs of length 1.
  * qbeta(.001, .9, .009) and similar cases now converge correctly
    thanks to Ben Bolker's report in PR#17746.
  * window(x, start, end) no longer wrongly signals "'start' cannot
    be after 'end'", fixing PR#17527 and PR#18291.
  * data() now checks that its (rarely used) list argument is a
    character vector - a couple of packages passed other types and
    gave incorrect results.
  * which() now checks its arr.ind argument is TRUE rather coercing
    to logical and taking the first element - which gave incorrect
    results in package code.
  * model.weights() and model.offset() more carefully extract their
    model components, thanks to Ben Bolker and Tim Taylor's R-devel
    post.
  * list.files(recursive = TRUE) now shows all broken symlinks
    (previously, some of them may have been omitted, PR#18296).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1650628800">- CHANGES IN R 4.2.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * The formula method of aggregate() now matches the generic in
    naming its first argument x (resolving PR#18299 by Thomas
    Soeiro).
    This means that calling aggregate() with a formula as a named
    first argument requires name formula in earlier versions of R and
    name x now, so portable code should not name the argument (code
    in many packages did).
  * Calling &amp;&amp; or || with either argument of length greater than one
    now gives a warning (which it is intended will become an error).
  * Calling if() or while() with a condition of length greater than
    one gives an error rather than a warning.  Consequently,
    environment variable _R_CHECK_LENGTH_1_CONDITION_ no longer has
    any effect.
  * Windows users should consult the WINDOWS section below for some
    profound changes including
  * Support for 32-bit builds has been dropped.
  * UTF-8 locales are used where available.
  * The default locations for the R installation and personal
    library folder have been changed.
    Thanks to Tomas Kalibera for months of work on the Windows port
    for this release.
  NEW FEATURES:
  * matrix(x, n, m) now warns in more cases where length(x) differs
    from n * m, as suggested by Abby Spurdle and Wolfgang Huber in
    Feb 2021 on the R-devel mailing list.
    This warning can be turned into an error by setting environment
    variable _R_CHECK_MATRIX_DATA_ to TRUE: R CMD check --as-cran
    does so unless it is already set.
  * Function file_test() in package utils gains tests for symlinks,
    readability and writability.
  * capabilities("libxml") is now false.
    The description of capabilities("http/ftp") now reflects that it
    refers to the default method, no longer the internal one.
  * simplify2array() gains an except argument for controlling the
    exceptions used by sapply().
  * Environment variables R_LIBS_USER and R_LIBS_SITE are both now
    set to the R system default if unset or empty, and can be set to
    NULL to indicate an empty list of user or site library
    directories.
  * The warning for axis()(-like) calls in cases of relatively small
    ranges (typically in log-scale situations) is slightly improved
    _and_ suppressed from explicit calls to .axisPars() as has always
    been the intention.
  * The contrasts setter function `contrasts&lt;-` gains an explicit
    default how.many = NULL rather than just using missing(how.many).
  * grid.pretty() gains a new optional argument n = 5.
  * There is a new function .pretty() with option bounds as a
    technical-utility version of pretty().  It and pretty() gain a
    new argument f.min with a better than back-compatible default.
  * Function grDevices::axisTicks() and related functions such as
    graphics::axis() work better, notably for the log scale; partly
    because of the pretty() improvements, but also because care is
    taken e.g., when ylim is finite but diff(ylim) is infinite.
  * nclass.FD() gains a digits option.
  * The R Mathlib internal C function bd0() (called indirectly from a
    dozen probability density and distribution functions such as
    dpois(), dbinom(), dgamma(), pgamma() _etc_) has been
    complemented by a more sophisticated and (mostly) more accurate C
    function ebd0(), currently called only by internal dpois_raw()
    improving accuracy for R level dpois() and potentially others
    calling it such as dnbinom(), dgamma() or pgamma().  (Thanks to
    Morten Welinder's PR#15628.)
  * write.ftable() gains sep = " " argument as suggested by Thomas
    Soeiro.
  * The names of the locale categories supported by R's
    Sys.getlocale() and Sys.setlocale() are now provided by variable
    .LC.categories in the base namespace.
  * The Date and POSIXt methods for hist() and the histogram method
    for plot() now also use the new default col = "lightgray" in
    consistency with the corresponding change to hist()'s default for
    R 4.0.0.
  * hist.default() gains new fuzz argument, and the histogram plot
    method no longer uses fractional axis ticks when displaying
    counts ("Frequency").
  * mapply() and hence Map() now also obey the "max-or-0-if-any"
    recycling rule, such that, e.g., Map(`+`, 1:3, 1[0]) is valid
    now.
  * as.character(&lt;obj&gt;) for "hexmode" or "octmode" objects now
    fulfils the important basic rule as.character(x)[j] ===
    as.character(x[j]).
  * The set utility functions, notably intersect() have been tweaked
    to be more consistent and symmetric in their two set arguments,
    also preserving a common mode.
  * substr(ch, start,end) &lt;- new now e.g., preserves names(ch); ditto
    for substring(), thanks to a patch from Brodie Gaslam.
  * plot(&lt;lm&gt;) gains a extend.ylim.f argument, in partial response to
    PR#15285; further PR#17784 is fixed thanks to several
    contributors and a patch by Elin Waring.  The Cook's dist
    contours get customizable via cook.col and cook.lty with a
    different default color and their legend is nicer by default and
    customizable via cook.legendChanges.
  * Attempting to subset an object that is not subsettable now
    signals an error of class notSubsettableError. The
    non-subsettable object is contained in the object field of the
    error condition.
  * Subscript-out-of-bounds errors are now signaled as errors of
    class subscriptOutOfBoundsError.
  * Stack-overflow errors are now signaled as errors inheriting from
    class stackOverflowError. See ?stackOverflowError for more
    details.
  * New partly experimental Sys.setLanguage() utility, solving the
    main problem of PR#18055.
  * gettext() and gettextf() get a new option trim = TRUE which when
    set to false allows translations for strings such as "Execution
    halted\n" typical for C code.
  * An experimental implementation of hash tables is now available.
    See ?hashtab for more details.
  * identical() gains a extptr.as.ref argument for requesting that
    external pointer objects be compared as reference objects.
  * reorder() gets an argument decreasing which it passes to sort()
    for level creation; based on the wish and patch by Thomas Soeiro
    in PR#18243.
  * as.vector() gains a data.frame method which returns a simple
    named list, also clearing a long standing 'FIXME' to enable
    as.vector(&lt;data.frame&gt;, mode="list").  This breaks code relying
    on as.vector(&lt;data.frame&gt;) to return the unchanged data frame.
  * legend() is now vectorized for arguments cex, x.intersp, and
    text.width.  The latter can now also be specified as a vector
    (one element for each column of the legend) or as NA for
    computing a proper column wise maximum value of strwidth(legend).
    The argument y.intersp can be specified as a vector with one
    entry for each row of the legend.
    legend() also gains new arguments title.cex and title.font.
    Thanks to Swetlana Herbrandt.
  * Deparsing no longer remaps attribute names dim, dimnames, levels,
    names and tsp to historical S-compatible names (which structure()
    maps back).
  * sample() and sample.int() have additional sanity checks on their
    size and n arguments.
    all.equal.numeric() gains a sanity check on its tolerance
    argument - calling all.equal(a, b, c) for three numeric vectors
    is a surprisingly common error.
    mean(na.rm =), rank(na.last =), barplot(legend.text =),
    boxplot(), contour(drawlabels =), polygon(border =) and
    methods::is(class2 =) have more robust sanity checks on their
    arguments.
    R CMD Rd2pdf (used by R CMD check) has a more robust sanity check
    on the format of \alias{} commands.
  * psigamma(x, deriv) for negative x now also works for deriv = 4
    and 5; their underlying C level dpsifn() is documented in
    'Writing R Extensions'.
  * The HTML help system now uses HTML5 (wish of PR#18149).
  * ks.test() now provides exact p-values also with ties and MC
    p-values in the two-sample (Smirnov) case.  By Torsten Hothorn.
  * ks.test() gains a formula interface, with y ~ 1 for the
    one-sample (Kolmogorov) test and y ~ group for the two-sample
    (Smirnov) test.  Contributed by Torsten Hothorn.
  * The return value from ks.test() now has class c("ks.test",
    "htest") - packages using try() need to take care to use
    inherits() and not == on the class.
  * New functions psmirnov(), qsmirnov() and rsmirnov() in package
    stats implementing the asymptotic and exact distributions of the
    two-sample Smirnov statistic.
  * iconv() now allows sub = "c99" to use C99-style escapes for UTF-8
    inputs which cannot be converted to encoding to.
  * In a forward pipe |&gt; expression it is now possible to use a named
    argument with the placeholder _ in the rhs call to specify where
    the lhs is to be inserted.  The placeholder can only appear once
    on the rhs.
  * The included LAPACK sources have been updated to version 3.10.0,
    except for the four Fortran 77 routines which 3.10.0 has
    re-implemented in Fortran 90 (where the older versions have been
    retained as the R build process does not support Fortran 90).
  * path.expand() and most other uses of tilde expansion now warn if
    a path would be too long if expanded.  (An exception is
    file.exists(), which silently returns false.)
  * trunc(&lt;Date&gt;, *) now supports units = "months" or "years" for
    consistency with the POSIXt method, thanks to Dirk Eddelbuettel's
    proposal in PR#18099.
  * list2DF() now checks that its arguments are of the same length,
    rather than use recycling.
  * The HTML help system has several new features: LaTeX-like math
    can be typeset using either KaTeX or MathJax, usage and example
    code is highlighted using Prism, and for dynamic help the output
    of examples and demos can be shown within the browser if the
    knitr package is installed. These features can be disabled by
    setting the environment variable _R_HELP_ENABLE_ENHANCED_HTML_ to
    a false value.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 15
    and so packages that provide graphics devices should be
    reinstalled.
  * The grid package now allows the user to specify a "vector" of
    pattern fills.  The fill argument to gpar() accepts a list of
    gradients and/or patterns and the functions linearGradient(),
    radialGradient(), and pattern() have a new group argument.
    Points grobs (data symbols) can now also have a pattern fill.
    The grobCoords() function now returns a more informative and
    complex result.
  * The grid package has new functions for drawing isolated groups:
    grid.group(), grid.define(), and grid.use().  These functions add
    compositing operators and affine transformations to R's graphics
    capabilities.
    The grid package also has new functions for stroking and filling
    paths: grid.stroke(), grid.fill(), and grid.fillStroke().
    A new function as.path() allows the user to specify the fill rule
    for a path that is to be used for clipping, stroking, or filling;
    available options are "winding" and "evenodd".  A new function
    as.mask() allows the user to specify the type of a mask;
    available options are "alpha" and "luminance".
    These new features are only supported so far (at most) on the
    Cairo-based graphics devices and on the pdf() device.
  * dev.capabilities() reports on device support for the new
    features.
  * par() now warns about unnamed non-character arguments to prevent
    misuse such as {usr &lt;- par("usr"); par(usr)}.
  INSTALLATION:
  * Facilities for accessing ftp:// sites are no longer tested
    (except _pro tem_ for curlGetHeaders()) as modern browsers have
    removed support.
  * R can now be built with DEFS = -DSTRICT_R_HEADERS .
  PACKAGE INSTALLATION:
  * R CMD INSTALL no longer tangles vignettes. This completes an R
    CMD build change in R 3.0.0 and affects packages built before R
    3.0.2. Such packages should be re-made with R CMD build to have
    the tangled R code of vignettes shipped with the tarball.
  * USE_FC_LEN_T will become the default: this uses the correct
    prototypes for Fortran BLAS/LAPACK routines called from C/C++,
    and requires adjustment of most such calls - see 'Writing R
    Extensions' SS6.6.2.  (This has been supported since R 3.6.2.)
  * Package installation speed for packages installed with
    keep.source has been improved. This resolve the issue reported by
    Ofek Shilon in PR#18236.
  UTILITIES:
  * R CMD check can optionally report files/directories left behind
    in home, /tmp (even though TMPDIR is set) and other directories.
    See the "R Internals" manual for details.
  * R CMD check now reports byte-compilation errors during
    installation.  These are not usually fatal but may result in
    parts of the package not being byte-compiled.
  * _R_CHECK_DEPENDS_ONLY_ can be applied selectively to examples,
    tests and/or vignettes in R CMD check: see the "R Internals"
    manual.
  * _R_CHECK_SRC_MINUS_W_IMPLICIT_ now defaults to true: recent
    versions of Apple clang on macOS have made implicit function
    declarations in C into a compilation error.
  * R CMD check --as-cran makes use of the environment variable
    AUTORECONF.  See the "R Internals" manual SS8 for further details.
  * R CMD check --use-valgrind also uses valgrind when re-building
    vignettes as some non-Sweave vignettes unhelpfully comment out
    all their code when R CMD check runs vignettes.
  * Errors in re-building vignettes (unless there are LaTeX errors)
    are reported by R CMD check as ERROR rather than WARNING when
    running vignettes has been skipped (as it frequently is in CRAN
    checks and by --as-cran).
  * R CMD Rd2pdf gains a --quiet option that is used by R CMD build
    when building the PDF package manual.
  * R CMD Rd2pdf now always runs LaTeX in batch mode, consistent with
    Texinfo &gt;= 6.7. The --batch option is ignored.
  * R CMD build and R CMD check now include the Rd file name and line
    numbers in the error message of an \Sexpr evaluation failure.
  * For packages using the \doi Rd macro (now an install-time \Sexpr)
    but no other dynamic Rd content, R CMD build now produces a
    smaller tarball and is considerably faster - skipping temporary
    package installation.
  C-LEVEL FACILITIES:
  * The non-API header R_ext/R-ftp-http.h is no longer provided, as
    the entry points it covered are now all defunct.
  * A number of non-API declarations and macro definitions have been
    moved from the installed header Rinternals.h to the internal
    header Defn.h. Packages that only use entry points and
    definitions documented to be part of the API as specified in
    'Writing R Extensions' SS6 should not be affected.
  * The macro USE_RINTERNALS no longer has any effect when compiling
    package code.  Packages which also use R_NO_REMAP will need to
    ensure that the remapped names are used for calls to API
    functions that were formerly also made available as macros.
  * The deprecated legacy S-compatibility macros PROBLEM, MESSAGE,
    ERROR, WARN, WARNING, RECOVER, ... are no longer defined in
    R_exts/RS.h (included by R.h).  Replace these by calls to
    Rf_error and Rf_warning (defined in header R_ext/Error.h included
    by R.h).
    Header R_ext/RS.h no longer includes R_ext/Error.h.
  * Header R_ext/Constants.h (included by R.h) when included from C++
    now includes the C++ header cfloat rather than the C header
    float.h (now possible as C++11 is required).
  * The legacy S-compatibility macros DOUBLE_* in R_ext/Constants.h
    (included by R.h) are deprecated.
  * The deprecated S-compatibility macros SINGLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * R_Calloc, R_Free and R_Realloc are preferred to their unprefixed
    forms and error messages now use the prefix. These forms were
    introduced in R 3.4.0 and are available even when
    STRICT_R_HEADERS is defined.
  * rmultinom has been documented in 'Writing R Extensions' SS6 so is
    now part of the R API.
  * Similarly, Rtanpi, called from R level tanpi() is now part of the
    R API.
  * The long-deprecated, undocumented and non-API entry point call_R
    is no longer declared in R_ext/RS.h (included by R.h).
  * The header S.h which has been unsupported since Jan 2016 has been
    removed.  Use R.h instead.
  DEPRECATED AND DEFUNCT:
  * The (non-default and deprecated) method = "internal" for
    download.file() and url() no longer supports http:// nor ftp://
    URIs.  (It is used only for file:// URIs.)
    On Windows, download.file(method = "wininet") no longer supports
    ftp:// URIs.  (It is no longer the default method, which is
    "libcurl" and does.)
    On Windows, the deprecated method = "wininet" now gives a warning
    for http:// and https:// URIs for both download.file() and url().
    (It is no longer the default method.)
  * On Windows, the command-line option --max-mem-size and
    environment variable R_MAX_MEM_SIZE are defunct.  The memory
    allocation limit was important for 32-bit builds, but these are
    no longer supported.
  * default.stringsAsFactors() is now formally deprecated, where that
    was only mentioned on its regular help page, previously.  So it
    now gives a warning if called.
  * unix.time() is defunct now; it had been deprecated since R 3.4.0.
  BUG FIXES:
  * Setting digits = 0 in format(), print.default() (and hence
    typically print()) or options() is again invalid.  Its behaviour
    was platform-dependent, and it is unclear what "zero significant
    digits" should mean (PR#18098).
  * Messages from C code in the cairo section of package grDevices
    are now also offered for translation, thanks to Michael Chirico's
    PR#18123.
  * mean(x) with finite x now is finite also without "long.double"
    capability.
  * R CMD Rd2pdf no longer leaves an empty build directory behind
    when it aborts due to an already existing output file.  (Thanks
    to Sebastian Meyer's PR#18141.)
  * density(x, weights = w, na.rm = TRUE) when anyNA(x) is true, now
    removes weights "in parallel" to x, fixing PR#18151, reported by
    Matthias Gondan.  Additionally, it gets a subdensity option.
  * Conversion of \Sexpr[]{&lt;expR&gt;} to LaTeX or HTML no longer
    produces long blocks of empty lines when &lt;expR&gt; itself contains
    several lines all producing empty output.  Thanks to a report and
    patch by Ivan Krylov posted to R-devel.
  * R CMD build no longer fails if a package vignette uses child
    documents and inst/doc exists.  (Thanks to Sebastian Meyer's
    PR#18156.)
  * When an R documentation ('help' source) file man/foo.Rd in a
    package has \donttest{..} examples with a syntax error, it is now
    signalled as ERROR and with correct line numbers relating to the
  * -Ex.R file, thanks to Duncan Murdoch and Sebastian Meyer's
    reports and patch proposals in PR#17501.
  * Improved determination of the correct translation domain in
    non-base packages, addressing the combination of PR#18092 and
    PR#17998 (#c6) with reports and _augmented_ patch #2904 by
    Suharto Anggono.
    Note that "R-base" is no longer the default domain e.g., for
    top-level calls to gettext(); rather translation needs explicit
    domain = * specification in such cases.
  * identical(attrib.as.set=FALSE) now works correctly with data
    frames with default row names (Thanks to Charlie Gao's PR#18179).
  * txtProgressBar() now enforces a non-zero width for argument char,
    without which no progress can be visible.
  * dimnames(table(d)) is more consistent in the case where d is a
    list with a single component, thanks to Thomas Soeiro's report to
    R-devel.
    Further, table(d1, d2) now gives an error when d1 and d2 are data
    frames as suggested by Thomas in PR#18224.
  * Fix for drawing semi-transparent lines and fills on the native
    Windows graphics device (PR#18219 and PR#16694).  Thanks to Nick
    Ray for helpful diagnosis on Bugzilla.
  * The deparser now wraps sub-expressions such as if(A) ..  with
    parentheses when needed; thanks to Duncan Murdoch's PR#18232 and
    Lionel Henry's patches there.
  * remove.packages() no longer tries to uninstall Priority: base
    packages, thanks to a report and suggestions by Colin Fay in
    PR#18227.
  * win.metafile() now has xpinch and ypinch arguments so that the
    user can override Windows' (potentially wrong) guess at device
    dimensions.
  * x[i] and x[[i]] for non-integer i should now behave in all cases
    as always documented: the index used is equivalent to
    as.integer(i) unless that would overflow where trunc(i) is used
    instead; thanks to Suharto Anggono's report and patch proposals
    in PR#17977.
  * asOneSidedFormula() now associates the resulting formula with the
    global environment rather than the evaluation environment created
    for the call.
  * &lt;bibentry&gt;$name now matches the field name case-insensitively,
    consistent with bibentry() creation and the replacement method.
  * cbind() failed to detect some length mismatches with a mixture of
    time-series and non-time-series inputs.
  * The default LaTeX style file Sweave.sty used by the RweaveLatex
    driver no longer loads the obsolete ae package; thanks to a
    report by Thomas Soeiro in PR#18271.  Furthermore, it now skips
    \usepackage[T1]{fontenc} for engines other than pdfTeX (if
    detected) or if the new [nofontenc] option is used.
  * smooth.spline() now stores its logical cv argument more safely,
    fixing a rare bug when printing, and also stores n.
  * smooth.spline(x,y,*) now computes the cv.crit statistic
    correctly, also when is.unsorted(x), fixing PR#18294.
  * The data.frame method of rbind() now warns when binding
    not-wholly-recycling vectors, by analogy to the default method
    (for matrices).
  * setAs() finds the correct class for name to when multiple
    packages define a class with that name. Thanks to Gabor Csardi
    for the report.
  * Fix for detaching a package when two classes of the same name are
    present in method signatures for the same generic. Thanks to
    Gabor Csardi for the report.
  * match.arg("", c("", "a", "B")) gives a better error message, in
    part from PR#17959, thanks to Elin Waring.
  * R CMD Sweave --clean no longer removes pre-existing files or
    subdirectories (PR#18242).
  * The quartz() device no longer splits polylines into subpaths.
    That has caused narrowly-spaced lines with many points to always
    look solid even when dashed line type was used due to dash phase
    restarts.
  * Deparsing constructs such as quote(1 + `!`(2) + 3) works again as
    before R 3.5.0, thanks to the report and patch in PR#18284 by
    Suharto Anggono.
  * as.list(f) for a factor f now keeps names(f), fixing PR#18309.
  * qbeta(.001, .9, .009) and analogous qf() calls now return a
    correct value instead of NaN or wrongly 1, all with a warning;
    thanks to the report by Ludger Goeminne in PR#18302.
  * plot.lm() failed to produce the plot of residuals vs.  factor
    levels (i.e., which=5 when leverages are constant) for models
    with character predictors (PR#17840).
  * interaction.plot(..., xtick = TRUE) misplaced the x-axis line
    (PR#18305).
  * Not strictly fixing a bug, format()ing and print()ing of
    non-finite Date and POSIXt values NaN and +/-Inf no longer show
    as NA but the respective string, e.g., Inf, for consistency with
    numeric vector's behaviour, fulfilling the wish of PR#18308.
  * R CMD check no longer runs test scripts generated from
    corresponding .Rin files twice and now signals an ERROR if
    processing an .Rin script fails.
  * tools::Rd2txt() used for plain-text help pages now renders \hrefs
    (if tools::Rd2txt_options(showURLs = TRUE)) and \urls with
    percent-encoding and standards-compliant delimiting style (angle
    brackets and no URL: prefix).  \email is now rendered with a
    mailto: prefix.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1655985600">- CHANGES IN R 4.2.1:
  NEW FEATURES:
  * New function utils::findCRANmirror() to find out if a CRAN mirror
    has been selected, otherwise fallback to the main site.  This
    behaves in the same way as tools::CRAN_package_db() and is
    intended for packages wishing to access CRAN for purposes other
    than installing packages.
    The need for this was shown by a day when the main CRAN website
    was offline and a dozen or so packages which had its URL
    hardcoded failed their checks.
  INSTALLATION on a UNIX-ALIKE:
  * The libraries searched for by --with-blas (without a value) now
    include BLIS (after OpenBLAS but before ATLAS).  And on macOS,
    the Accelerate framework (after ATLAS).  (This is patterned after
    the AX_BLAS macro from the Autoconf Archive.)
  * The included LAPACK sources have been updated to 3.10.1.
  UTILITIES:
  * The (full path to) the command tidy to be used for HTML
    validation can be set by environment variable R_TIDYCMD.
  * Setting environment variable _R_CHECK_RD_VALIDATE_RD2HTML_ to a
    false value will override R CMD check --as-cran and turn off HTML
    validation.  This provides a way to circumvent a problematic
    tidy.
    The 2006 version that ships with macOS is always skipped.
  C-LEVEL FACILITIES:
  * The undocumented legacy declarations of Sint, Sfloat, SINT_MAX
    and SINT_MIN in header R.h are deprecated.
  BUG FIXES:
  * fisher.test(d) no longer segfaults for "large" d; fixing PR#18336
    by preventing/detecting an integer overflow reliably.
  * tar(., files=*) now produces correctly the warning about invalid
    uid or gid of files, fixing PR#18344, reported by Martin Morgan.
  * tk_choose.files() with multi = FALSE misbehaved on paths
    containing spaces (PR#18334) (regression introduced in R 4.0.0).
  * sort(x, partial = ind, *) now works correctly notably for the
    non-default na.last = FALSE or TRUE, fixing PR#18335 reported by
    James Edwards.
  * Environment variable _R_CHECK_XREFS_REPOSITORIES_ is only used
    for checking .Rd cross-references in R CMD check (as documented)
    and not for other uses looking for a CRAN mirror.
  * The search for a CRAN mirror when checking packages now uses
    getOption("repos") if that specifies a CRAN mirror, even when it
    does not also specify all three Bioconductor repositories (as was
    previously required).
  * The HTML code generated by tools::Rd2HTML() has been improved to
    pass tidy 5.8.0.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1667217600">- CHANGES IN R 4.2.2:
  NEW FEATURES:
  * tools::Rdiff(useDiff = TRUE) checks for the presence of an
    external diff command and switches to useDiff = FALSE if none is
    found.  This allows R CMD Rdiff to always work.
  * On Windows, environment variable R_LIBCURL_SSL_REVOKE_BEST_EFFORT
    can be used to switch to only 'best-effort' SSL certificate
    revocation checks with the default "libcurl" download method.
    This reduces security, but may be needed for downloads to work
    with MITM proxies (PR#18379).
  * (macOS) The run-time check for libraries from XQuartz for X11 and
    Tcl/Tk no longer uses otool from the Apple Developer Tools
    (PR#18400).
  * The LaTeX style for producing the PDF manuals, Rd.sty, now loads
    the standard amsmath, amsfonts and amssymb packages for greater
    coverage of math commands in the Rd \eqn and \deqn macros.  The
    \mathscr LaTeX command is also provided (via the mathrsfs
    package, if available, or the amsfonts bundle otherwise),
    fulfilling the wish of PR#18398.
  * (Windows) The default format of readClipboard() and
    writeClipboard() has been changed to 13 (CF_UNICODETEXT).
  INSTALLATION on a UNIX-ALIKE:
  * The PDF manuals (if built) can be compacted by the new target
    make compact-pdf (at the top level or in directory doc/manual).
  * There is now configure support for LLVM clang 15 on Linux, which
    defaults to position-independent (PIE) executables whereas
    gfortran does not.
  * Many small changes to ease compilation (and suppress warnings)
    with LLVM clang 15.
  BUG FIXES:
  * Rscript -e would fail if stdin were closed (Reported by Henrik
    Bengtsson.)
  * qt(*, log.p=TRUE) in outer tails no longer produces NaN in its
    final steps, thus fixing PR#18360.
  * tools::Rd2latex() now escapes hashes and ampersands when writing
    URLs, fixing LaTeX errors with such URLs in \tabular.
  * When isGeneric(f, fdef=*) is used with mismatching names, the
    warning is better understandable; reported (with fix) in PR#18370
    by Gabe Becker.
  * poly(x, n) now works again (and is now documented) when x is a
    "Date" or "POSIXct" object, or of another class while fulfilling
    mode(x) == "numeric".  This also enables poly(x, *, raw=TRUE) for
    such variables.  Reported by Michael Chirico to R-devel.
  * write.table(), write.csv() and write.csv2() restore their
    numerical precision (internal equivalent of digits = 15) after an
    interrupt (PR#18384).
  * One can now read also byte FF from a clipboard connection
    (PR#18385).
  * source("") and source(character()) now give more helpful error
    messages.
  * R CMD check --as-cran set _R_CHECK_TIMINGS_ too late to have the
    intended effect.
  * as.POSIXlt(x) now also works with very large dates x, fixing
    PR#18401 reported by Hannes M"uhleisen.
  * Files can now be extracted even from very large zip archives
    (PR#18390, thanks to Martin Jakt).
  * Non-finite objects of class "POSIXlt" are now correctly coerced
    to classes "Date" and "POSIXct"; following up on the extension to
    format() them correctly.
  * Added methods for is.finite(), is.infinite() and is.nan() for
    "POSIXlt" date-time objects.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1678881600">- CHANGES IN R 4.2.3:
  C-LEVEL FACILITIES:
  * The definition of DL_FUNC in R_ext/Rdynload.h has been changed to
    be fully C-compliant.  This means that functions loaded _via_ for
    example R_GetCCallable need to be cast to an appropriate type if
    they have any arguments.
  * .Machine has a new element sizeof.time_t to identify old systems
    with a 32-bit type and hence a limited range of date-times (and
    limited support for dates millions of years from present).
  PACKAGE INSTALLATION:
  * (Windows) The default C++ standard had accidentally been left at
    C++11 when it was changed to C++14 on Unix.
  BUG FIXES:
  * As "POSIXlt" objects may be "partially filled" and their list
    components meant to be recycled, length() now is the length of
    the longest component.
  * as.POSIXlt.Date() could underflow for dates in the far past (more
    than half a million years BCE).
  * as.Date.POSIXlt(x) would return "1970-01-01" instead of NA in R
    4.2.2, e.g., for
    x &lt;- as.POSIXlt(c("2019-01-30","2001-1-1"))
    x$mon &lt;- c(0L, NA); as.Date(x)
  * R CMD check failed to apply enabled _R_CHECK_SUGGESTS_ONLY_ to
    examples and vignettes (regression in R 4.2.0).
  * R CMD check did not re-build vignettes in separate processes by
    default (regression in R 4.2.0).
  * Running examples from HTML documentation now restores previous
    knitr settings and options (PR#18420).
  * Quartz: fonts are now located using Core Graphics API instead of
    deprecated ATS which is no longer supported in the macOS 13 SDK
    (PR#18426).  This also addresses an issue where the currently
    used font in the Quartz device context was not correctly
    retained.
  * (Windows) Math symbols in text drawing functions are again
    rendered correctly (PR#18440).  This fixes a regression in R
    4.2.1 caused by a fix in PR#18382 which uncovered an issue in
    GraphApp due to which the symbol charset was not used with TT
    Symbol font face.
  * (Windows) Installing a package with a src/Makefile.{win,ucrt}
    file includes ~/.R/Makevars.win64 in the search for user
    makevars, as documented in "R Installation and Administration"
    and done for packages with a src/Makevars.{win,ucrt} file.
  * format(&lt;POSIXlt_w/_unbalanced_sec&gt;, "....%OS&lt;n&gt;") with n &gt; 0 no
    longer accidentally uses the unbalanced seconds, thanks to
    Suharto Anggono's report (including patch) in PR#18448.
  * solve.default(a, b) works around issues with some versions of
    LAPACK when a contains NA or NaN values.
  * When UseMethod() cannot dispatch, it no longer segfaults
    producing the error message in case of a long class(), thanks to
    Joris Vankerschaver's report (including patch) in PR#18447.
  * When example(foo, ..) produces graphics on an interactive device
    it needs to open itself, it now leaves devAskNewPage() unchanged
    even when it was FALSE, thus fixing a 14 years old '&lt;FIXME&gt;'.
  * packageDescription() again catches errors from encoding
    conversions. This also fixes broken packageVersion() in C locale
    on systems where iconv does not support transliteration.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1681128000">- add patch to build with libcurl &gt;= 8</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1682078400">- CHANGES IN R 4.3.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Calling &amp;&amp; or || with LHS or (if evaluated) RHS of length greater
    than one is now always an error, with a report of the form
    'length = 4' in coercion to 'logical(1)'
    Environment variable _R_CHECK_LENGTH_1_LOGIC2_ no longer has any
    effect.
  NEW FEATURES:
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.10.1.  (This caused some platform-dependent
    changes to package check output.)  And then to the sources from
    LAPACK version 3.11.0 (with changes only to double complex
    subroutines).
  * The included LAPACK sources have been updated to include the four
    Fortran 90 routines rather than their Fortran 77 predecessors.
    This may give some different signs in SVDs or
    eigendecompositions..  (This completes the transition to LAPACK
    3.10.x begun in R 4.2.0.)
  * The LAPACK sources have been updated to version 3.11.0.  (No new
    subroutines have been added, so this almost entirely bug fixes:
    Those fixes do affect some computations with NaNs, including R's
    NA.)
  * The parser now signals _classed_ errors, notably in case of the
    pipe operator |&gt;.  The error object and message now give line and
    column numbers, mostly as proposed and provided by Duncan Murdoch
    in PR#18328.
  * toeplitz() is now generalized for asymmetric cases, with a
    toeplitz2() variant.
  * xy.coords() and xyz.coords() and consequently, e.g., plot(x,y,
    log = "y") now signal a _classed_ warning about negative values
    of y (where log(.) is NA).  Such a warning can be specifically
    suppressed or caught otherwise.
  * Regular expression functions now check more thoroughly whether
    their inputs are valid strings (in their encoding, e.g. in
    UTF-8).
  * The performance of grep(), sub(), gsub() and strsplit() has been
    improved, particularly with perl = TRUE and fixed = TRUE.  Use of
    useBytes = TRUE for performance reasons should no longer be
    needed and is discouraged: it may lead to incorrect results.
  * apropos() gains an argument dot_internals which is used by the
    completion (help(rcompgen)) engine to also see base internals
    such as .POSIXct().
  * Support in tools::Rdiff() for comparing uncompressed PDF files is
    further reduced - see its help page.
  * qqplot(x, y, ...) gains conf.level and conf.args arguments for
    computing and plotting a confidence band for the treatment
    function transforming the distribution of x into the distribution
    of y (Switzer, 1976, _Biometrika_). Contributed by Torsten
    Hothorn.
  * Performance of package_dependencies() has been improved for cases
    when the number of dependencies is large.
  * Strings newly created by gsub(), sub() and strsplit(), when any
    of the inputs is marked as "bytes", are also marked as "bytes".
    This reduces the risk of creating invalid strings and accidental
    substitution of bytes deemed invalid.
  * Support for readLines(encoding = "bytes") has been added to allow
    processing special text files byte-by-byte, without creating
    invalid strings.
  * iconv(from = "") now takes into account any declared encoding of
    the input elements and uses it in preference to the native
    encoding.  This reduces the risk of accidental creation of
    invalid strings, particularly when different elements of the
    input have different encoding (including "bytes").
  * Package repositories in getOption("repos") are now initialized
    from the repositories file when utils is loaded (if not already
    set, e.g., in .Rprofile).  (From a report and patch proposal by
    Gabriel Becker in PR#18405.)
  * compactPDF() gets a verbose option.
  * type.convert() and hence read.table() get new option tryLogical =
    TRUE with back compatible default.  When set to false, converts
    "F" or "T" columns to character.
  * Added new unit prefixes "R" and "Q" for abbreviating
    (unrealistically large) sizes beyond 10^{27} in standard = "SI",
    thanks to Henrik Bengtsson's PR#18435.
  * as.data.frame()'s default method now also works fine with atomic
    objects inheriting from classes such as "roman", "octmode" and
    "hexmode", such fulfilling the wish of PR#18421, by Benjamin
    Feakins.
  * The as.data.frame.vector() utility now errors for wrong-length
    row.names.  It warned for almost six years, with "Will be an
    error!".
  * sessionInfo() now also contains La_version() and reports codepage
    and timezone when relevant, in both print() and toLatex() methods
    which also get new option tzone for displaying timezone
    information when locale = FALSE.
  * New function R_compiled_by() reports the C and Fortran compilers
    used to build R, if known.
  * predict(&lt;lm&gt;, newdata = *) no longer unnecessarily creates an
    offset of all 0s.
  * solve() for complex inputs now uses argument tol and by default
    checks for 'computational singularity' (as it long has done for
    numeric inputs).
  * predict(&lt;rank-deficient lm&gt;, newdata=*) now obeys a new argument
    rankdeficient, with new default "warnif", warning only if there
    are non-estimable cases in newdata.  Other options include
    rankdeficient = "NA", predicting NA for non-estimable newdata
    cases.  This addresses PR#15072 by Russ Lenth and is based on his
    original proposal and discussions in PR#16158 also by David Firth
    and Elin Waring.  Still somewhat experimental.
  * Rgui console implementation now works better with the NVDA screen
    reader when the full blinking cursor is selected.  The underlying
    improvements in cursor handling may help also other screen
    readers on Windows.
  * The drop-field control in GraphApp can now be left with the TAB
    key and all controls can be navigated in the reverse order using
    the Shift+TAB key, improving accessibility of the Rgui
    configuration editor.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now fully accurate
    (instead of to "only" minimally five digits).
  * demo(error.catching) now also shows off withWarnings() and
    tryCatchWEMs().
  * As an experimental feature the placeholder _ can now also be used
    in the rhs of a forward pipe |&gt; expression as the first argument
    in an extraction call, such as _$coef. More generally, it can be
    used as the head of a chain of extractions, such as _$coef[[2]].
  * Spaces in the environment variable used to choose the R session's
    temporary directory (TMPDIR, TMP and TEMP are tried in turn) are
    now fatal.  (On Windows the 'short path' version of the path is
    tried and used if that does not contain a space.)
  * all.equal.numeric() gets a new optional switch giveErr to return
    the numeric error as attribute.  Relatedly,
    stopifnot(all.equal&lt;some&gt;(a, b, ..)) is as "smart" now, as
    stopifnot(all.equal(....)) has been already, thus allowing
    customized all.equal&lt;Some&gt;() wrappers.
  * R on Windows is now able to work with path names longer than 260
    characters when these are enabled in the system (requires at
    least Windows 10 version 1607).  Packages should be updated to
    work with long paths as well, instead of assuming PATH_MAX to be
    the maximum length.  Custom front-ends and applications embedding
    R need to update their manifests if they wish to allow this
    feature.  See
    &lt;https://blog.r-project.org/2023/03/07/path-length-limit-on-windows&gt;
    for more information.
  * 'Object not found' and 'Missing argument' errors now give a more
    accurate error context. Patch provided by Lionel Henry in
    PR#18241.
  * The @ operator is now an S3 generic. Based on contributions by
    Tomasz Kalinowski in PR#18482.
  * New generic chooseOpsMethod() provides a mechanism for objects to
    resolve cases where two suitable methods are found for an Ops
    Group Generic. This supports experimenting with alternative
    object systems. Based on contributions by Tomasz Kalinowski in
    PR#18484.
  * inherits(x, what) now accepts values other than a simple
    character vector for argument what. A new generic, nameOfClass(),
    is called to resolve the class name from what. This supports
    experimenting with alternative object systems. Based on
    contributions by Tomasz Kalinowski in PR#18485.
  * Detection of BLAS/LAPACK in use (sessionInfo()) with FlexiBLAS
    now reports the current backend.
  * The "data.frame" method for subset() now warns about extraneous
    arguments, typically catching the use of = instead of == in the
    subset expression.
  * Calling a:b when numeric a or b is longer than one may now be
    made into an error by setting environment variable
    _R_CHECK_LENGTH_COLON_ to a true value, along the proposal in
    PR#18419 by Henrik Bengtsson.
  * density(x, weights = *) now warns if automatic bandwidth
    selection happens without using weights; new optional warnWbw may
    suppress the warning.  Prompted by Christoph Dalitz' PR#18490 and
    its discussants.
  * rm(list = *) is faster and more readable thanks to Kevin Ushey's
    PR#18492.
  * The plot.lm() function no longer produces a normal Q-Q plot for
    GLMs. Instead it plots a half-normal Q-Q plot of the absolute
    value of the standardized deviance residuals.
  * The print() method for class "summary.glm" no longer shows
    summary statistics for the deviance residuals by default.  Its
    optional argument show.residuals can be used to show them if
    required.
  * The tapply() function now accepts a data frame as its X argument,
    and allows INDEX to be a formula in that case. by.data.frame()
    similarly allows INDICES to be a formula.
  * The performance of df[j] &lt;- value (including for missing j) and
    write.table(df) has been improved for data frames df with a large
    number of columns.  (Thanks to Gabriel Becker's PR#18500,
    PR#18503 and discussants, prompted by a report from Toby Dylan
    Hocking on the R-devel mailing list.)
  * The matrix multiply operator %*% is now an S3 generic, belonging
    to new group generic matrixOps.  From Tomasz Kalinowski's
    contribution in PR#18483.
  * New function array2DF() to convert arrays to data frames,
    particularly useful for the list arrays created by tapply().
  DATES and TIMES:
  * On platforms where (non-UTC) datetimes before 1902 (or before
    1900 as with system functions on recent macOS) are guessed by
    extrapolating time zones from 1902-2037, there is a warning at
    the first use of extrapolation in a session.  (As all time zones
    post 2037 are extrapolation, we do not warn on those.)
  * (Platforms using --with-internal-tzone, including Windows and by
    default macOS). How years are printed in dates or date-times can
    be controlled by environment variable R_PAD_YEARS_BY_ZERO.  The
    default remains to pad to 4 digits by zeroes, but setting value
    no gives no padding (as used by default by glibc).
  * strftime() tries harder to determine the offset for the "%z"
    format, and succeeds on the mainstream R platforms.
  * strftime() has a limit of 2048 bytes on the string produced -
    attempting to exceed this is an error.  (Previously it silently
    truncated at 255 bytes.)
  * sessionInfo() records (and by default prints) the system time
    zone as part of the locale information.  Also, the source
    (system/internal) of the date-time conversion and printing
    functions.
  * Objects of class "POSIXlt" created in this version of R always
    have 11 components: component zone is always set, and component
    gmtoff is set for times in UTC and usually set on the (almost
    all) platforms which have C-level support, otherwise is NA.
  * There are comprehensive validity checks on the structure of
    objects of class "POSIXlt" when converting (including formatting
    and printing).  (This avoids mis-conversions of hand-crafted
    objects.)
  * There is some support for using the native date-time routines on
    macOS: this is only viable on recent versions (e.g. 12.6 and 13)
    and does get wrong some historical changes (before 1900, during
    WWII).  Use of --with-internal-tzone remains the default.
  * as.POSIXct(&lt;numeric&gt;) and as.POSIXlt(.) (without specifying
    origin) now work.  So does as.Date(&lt;numeric&gt;).
  * as.Date.POSIXct(., tz) now treats several tz values, notably
    "GMT" as equivalent to "UTC", proposed and improved by Michael
    Chirico and Joshua Ulrich in PR#17674.
  * Experimental balancePOSIXlt() utility allows using "ragged" and
    or out-of-range "POSIXlt" objects more correctly, e.g., in
    subsetting and subassignments.  Such objects are now documented.
    More experimentally, a "POSIXlt" object may have an attribute
    "balanced" indicating if it is known to be filled or fully
    balanced.
  * Functions axis.Date() and axis.POSIXct() are rewritten to gain
    better default tick locations and better default formats by using
    prettyDate(). Thanks to Swetlana Herbrandt.
  * The mapping of Windows' names for time zones to IANA's 'Olson'
    names has been updated.  When ICU is available (it is by
    default), it is used to get a mapping for the current region set
    in Windows.  This can be overridden by setting environment
    variable TZ to the desired Olson name - see OlsonNames() for
    those currently available.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 16
    and so packages that provide graphics devices should be
    reinstalled.
  * The grDevices and grid packages have new functions for rendering
    typeset glyphs, primarily: grDevices::glyphInfo() and
    grid::grid.glyph().
    Rendering of typeset glyphs is only supported so far on the
    Cairo-based graphics devices and on the pdf() and quartz()
    devices.
  * The defined behaviour for "clear" and "source" compositing
    operators (via grid::grid.group()) has been changed (to align
    better with simple interpretation of original Porter-Duff
    definitions).
  * Support for gradients, patterns, clipping paths, masks, groups,
    compositing operators, and affine transformations has been added
    to the quartz() device.
  INSTALLATION on a UNIX-ALIKE:
  * A system installation of generic LAPACK 3.10.0 or later will be
    preferred to the version in the R sources.
    configure option --with-lapack=no (equivalently --without-lapack)
    forces compilation of the internal LAPACK sources.
    If --with-lapack is not specified, a system liblapack is looked
    for and used if it reports version 3.10.0 or later and does not
    contain BLAS routines.
    Packages using LAPACK will need to be reinstalled if this changes
    to using an external library.
  * On aarch64 Linux platforms using GCC, configure now defaults to
  - fPIC (instead of -fpic), as desired in PR#18326.
  * configure now checks conversion of datetimes between POSIXlt and
    POSIXct around year 2020.  Failure (which has been seen on
    platforms missing tzdata) is fatal.
  * If configure option --with-valgrind-instrumentation is given
    value 1 or 2, option --with-system-valgrind-headers is now the
    default and ignored (with a warning).  It is highly recommended
    that the system headers are installed alongside valgrind: they
    are part of its packaging on some Linux distributions and
    packaged separately (e.g. in the valgrind-devel RPM) on others.
    configure will give a warning if they are not found.
    The system headers will be required in a future release of R to
    build with valgrind instrumentation.
  * libcurl 8.x is now accepted by configure: despite a change in
    major version number it changes neither API nor ABI.
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools43, an update of the Rtools42 toolchain.  It is
    based on gcc 12 and newer versions of MinGW-W64, binutils and
    libraries.  At this time R-devel can still be built using
    Rtools42 without changes, but when R-devel is installed via the
    installer, it will by default look for Rtools43.
  * Old make targets rsync-extsoft and 32-bit ones that are no longer
    needed have been removed.
  * Default builds (including for packages) no longer select C99.
    Thus the C standard used is the default for the compiler, which
    for the toolchain in Rtools43 is C17.  (This is consistent with
    Unix builds.)
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++17 where
    available (which it is on all currently checked platforms): if
    not C++14 or C++11 is used if available otherwise C++ is not
    supported.
  * USE_FC_LEN_T is the default: this uses the correct
    (compiler-dependent) prototypes for Fortran BLAS/LAPACK routines
    called from C/C++, and requires adjustment of many such calls -
    see 'Writing R Extensions' SS6.6.1.
  * There is initial support for C++23 as several compilers are now
    supporting -std=c++23 or -std=c++2b or similar.  As for C++20,
    there no additional configure checks for C++23 features beyond a
    check that the compiler reports a __cplusplus value greater than
    that in the C++20 standard.  C++ feature tests should be used.
  * There is support for a package to indicate the version of the C
    standard which should be used to compile it, and for the
    installing user to specify this.  In most cases R defaults to the
    C compiler's default standard which is C17 (a `bug-fix' of C11) -
    earlier versions of R or compilers may have defaulted to C99.
    Current options are:
    USE_C17 Use a standard that is at most C17.  The intention is to
    allow legacy packages to still be installed when later C
    standards become the default, including packages using new
    keywords as identifiers or with K&amp;R-style function
    declarations.  This will use C17 if available, falling back
    to C11.
    USE_C90 Use the C90 (aka C89) standard.  (As that standard did
    not require compilers to identify that version, all we can
    verify is that the compiler does not claim to be using a
    later standard.  It may accept C99 features - for example
    clang accepts // to make comments.)
    USE_C99 Use the C99 standard. This should be rarely needed - it
    avoids the few new features of C11/C17 which can be useful if
    a package assumes them if C17 is specified and they are not
    implemented.
    USE_C23 Use C23 (or in future, later).  Compiler/library support
    for C23 is still being implemented, but LLVM clang from
    15.0.0 and the upcoming GCC 13 have quite extensive support.
    These can be specified as part of the SystemRequirements field in
    the package's DESCRIPTION file or _via_ options --use-C17 and so
    on of R CMD INSTALL and R CMD SHLIB.
    For further details see "Writing R Extensions" SS1.2.5.
  * (Windows) A src/Makefile.ucrt or src/Makefile.win file is now
    included after R_HOME/etcR_ARCH/Makeconf and so no longer needs
    to include that file itself.  Installation of a package with such
    a file now uses a site Makevars file in the same way as a package
    with a src/Makevars.win file would.
  * configure is now passed crucial variables such as CC and CFLAGS
    in its environment, as many packages were not setting them (as
    documented in 'Writing R Extensions' SS1.2).
    This has most effect where configure is used to compile parts of
    the package - most often by cmake or libtool which obfuscate the
    actual compile commands used.
    Also used for configure.win and configure.ucrt on Windows.
  FORTRAN FLAGS:
  * The flag -fno-optimize-sibling-calls is no longer forced for
    gfortran 7 and later.  It should no longer be needed now using
    'hidden' character-length arguments when calling BLAS/LAPACK
    routines from C/C++ is the default even for packages.  (Unless
    perhaps packages call Fortran code from C/C++ without using R's
    headers and without allowing for these arguments.)
  C-LEVEL FACILITIES:
  * The deprecated S-compatibility macros DOUBLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * The deprecated legacy typedefs of Sint and Sfloat in header R.h
    are no longer defined, and that header no longer includes header
    limits.h from C nor climits from C++.
  * New macro CAD5R() is provided in Rinternals.h and used in a few
    places in the R sources.
  * ALTREP now supports VECSXP vectors. Contributed by Gabor Csardi
    in PR#17620.
  * The Rcomplex definition (in header R_ext/Complex.h) has been
    extended to prevent possible mis-compilation when interfacing
    with Fortran (PR#18430).  The new definition causes compiler
    warnings with static initializers such as {1, 2}, which can be
    changed to {.r=1, .i=2}.
    Using the new definition from C++ depends on compiler extensions
    supporting C features that have not been incorporated into the
    C++ standards but are available in g++ and clang++: this may
    result in C++ compiler warnings but these have been worked around
    for recent versions of common compilers (GCC, Apple/LLVM clang,
    Intel).
    It is intended to change the inclusion of header R_ext/Complex.h
    by other R headers, so C/C++ code files which make use of
    Rcomplex should include that header explicitly.
  UTILITIES:
  * R CMD check does more checking of package .Rd files, warning
    about invalid email addresses and (some) invalid URIs and noting
    empty \item labels in description lists.
  * R CMD check now also reports problems when reading package news
    in md (file NEWS.md) and (optionally) plain text (file NEWS)
    formats.
  * _R_CHECK_TIMINGS_ defaults to a value from the environment even
    for R CMD check --as-cran; this allows for exceptionally fast or
    slow platforms.
    It now applies to checking PDF and HTML versions of the manuals,
    and 'checking CRAN incoming feasibility'.
  * R CMD check can optionally (but included in --as-cran) check
    whether HTML math rendering _via_ KaTeX works for the package .Rd
    files.
  * Non-interactive debugger invocations can be trapped by setting
    the environment variable _R_CHECK_BROWSER_NONINTERACTIVE_ to a
    true value.  This is enabled by R CMD check --as-cran to detect
    the use of leftover browser() statements in the package.
  * The use of sprintf and vsprintf from C/C++ has been deprecated in
    macOS 13 and is a known security risk.  R CMD check now reports
    (on all platforms) if their use is found in compiled code:
    replace by snprintf or vsnprintf respectively. [*NB:* whether
    such calls get compiled into the package is platform-dependent.]
  * Where recorded at installation, R CMD check reports the C and
    Fortran compilers used to build R.
    It reports the OS in use (if known, as given by osVersion) as
    well as that R was built for.
    It notes if a C++ standard was specified which is older than the
    current default: many packages have used C++11 to mean 'not
    C++98' - as C++11 is the minimum supported since R 4.0.0, that
    specification can probably be removed.
  * R CMD INSTALL reports the compilers (and on macOS, the SDK) used,
    and this is copied to the output of R CMD check.
    Where a C++ standard is specified, it is reported.
  * R CMD check's 'checking compilation flags in Makevars' has been
    relaxed to accept the use of flags such as -std=f2008 in
    PKG_FFLAGS.
  * tools::buildVignettes() has a new argument skip, which is used by
    R CMD check to skip (and note) vignettes with unavailable
    \VignetteDepends (PR#18318).
  * New generic .AtNames() added to enable class-specific completions
    after @. The formerly internal function findMatches() is now
    exported, mainly for use in methods for .DollarNames() and
    .AtNames().
  DEPRECATED AND DEFUNCT:
  * default.stringsAsFactors() is defunct.
  * Calling as.data.frame.&lt;class&gt;() directly (for 12 atomic classes)
    is going to be formally deprecated, currently activated by
    setting the environment variable
    _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ to non-empty, which also
    happens in R CMD check --as-cran.
  BUG FIXES:
  * Hashed environments with sizes less than 5 can now grow.
    (Reported to R-devel by Duncan Garmonsway.)
  * as.character(&lt;Rd&gt;, deparse = TRUE) failed to re-escape curly
    braces in LaTeX-like text.  (Reported by Hadley Wickham in
    PR#18324.)
  * library() now passes its lib.loc argument when requiring Depends
    packages; reported (with fix) in PR#18331 by Mikael Jagan.
  * R CMD Stangle: improved message about 'Output' files.
  * head(x, n) and tail(x, n) now signal an error if n is not
    numeric, instead of incidentally "working" sometimes returning
    all of x.  Reported and discussed by Colin Fay, in PR#18357.
  * The "lm" method for summary() now gives the correct F-statistic
    when the model contains an offset.  Reported in PR#18008.
  * C() and `contrasts&lt;-`() now preserve factor level names when
    given a function object (as opposed a function name which did
    preserve names). Reported in PR#17616.
  * c(a = 1, 2)[[]] no longer matches 2 but rather signals a
    _classed_ error.  Reported and analysed by Davis Vaughan in
    PR#18367, a duplicate of PR#18004, by Jan Meis et al.  For
    consistency, NULL[[]] is also erroneous now.  x[[]] &lt;- v gives an
    error of the same class "MissingSubscriptError".
  * The relist() function of utils now supports NULL elements in the
    skeleton (PR#15854).
  * ordered(levels = *) (missing x) now works analogously to factor(,
    ordered=TRUE); reported (with fix) by Achim Zeileis in PR#18389.
  * User-defined Rd macro definitions can now span multiple lines,
    thanks to a patch from Duncan Murdoch. Previously, the Rd parser
    silently ignored everything after the first line.
  * Plain-text help (tools::Rd2txt()) now preserves an initial blank
    line for text following description list items.
  * tools::Rd2HTML() and tools::Rd2latex() no longer split \arguments
    and \value lists at Rd comments.
  * tools::Rd2latex() now correctly handles optional text outside
    \items of argument lists as well as bracketed text at the
    beginning of sections, e.g., \value{[NULL]}.
  * as.character(&lt;POSIXt&gt;) now behaves more in line with the methods
    for atomic vectors such as numbers, and is no longer influenced
    by options().  Ditto for as.character(&lt;Date&gt;).  The
    as.character() method gets arguments digits and OutDec with
    defaults _not_ depending on options().  Use of as.character(*,
    format = .) now warns.
  * Similarly, the as.character.hexmode() and *.octmode() methods
    also behave as good citizen methods and back compatibility option
    keepStr = TRUE.
  * The as.POSIXlt(&lt;POSIXlt&gt;) and as.POSIXct(&lt;POSIXct&gt;) default
    methods now do obey their tz argument, also in this case.
  * as.POSIXlt(&lt;Date&gt;) now does apply a tz (time zone) argument, as
    does as.POSIXct(); partly suggested by Roland Fuss on the R-devel
    mailing list.
  * as.Date.POSIXlt(x) now also works when the list components are of
    unequal length, aka "partially filled" or "ragged".
  * expand.model.frame() looked up variables in the wrong environment
    when applied to models fitted without data.  Reported in
    PR#18414.
  * time() now (also) uses the ts.eps = getOption("ts.eps") argument
    and thus by default rounds values very close to the start (or
    end) of a year.  Based on a proposal by Andre"i V. Kostyrka on
    R-help.
  * Printing of a factanal() result with just one factor and sort =
    TRUE now works regularly, fixing PR#17863 by Timothy Bates,
    thanks to the 'R Contributors' working group.
  * Printing 0-length objects of class "factor", "roman", "hexmode",
    "octmode", "person", "bibentry", or "citation" now prints
    something better, one of which fixes PR#18422, reported by
    Benjamin Feakins.
  * Sys.timezone() queries timedatectl only if systemd is loaded;
    addressing a report by Jan Gorecki in PR#17421.
  * The formula method of cor.test() had scoping problems when
    environment(formula) was not the calling environment; reported
    with a patch proposal by Mao Kobayashi in PR#18439.
  * attach() of an environment with active bindings now preserves the
    active bindings.  Reported by Kevin Ushey in PR#18425.
  * BLAS detection now works also with system-provided libraries not
    available as regular files.  This fixes detection of the
    Accelerate framework on macOS since Big Sur.  Reported by David
    Novgorodsky.
  * download.file() gives a helpful error message in case of an
    invalid download.file.method option, thanks to Colin Fay's report
    in PR#18455.
  * Sporadic crashes of Rterm when using completion have been fixed.
  * Rprof() is now more reliable.  A livelock in thread
    initialization with too short sampling interval has been fixed on
    macOS.  A deadlock in using the C runtime has been fixed on
    Windows.  A potential deadlock has been prevented on Unix.
  * Cursor placement in Rgui now works even after a fixed-width font
    is selected.
  * Mandatory options (options()) are now set on startup so that
    saving and restoring them always works (PR#18372).
  * Package installation, R CMD INSTALL or install.packages(*), now
    parses each of the &lt;pkg&gt;/R/*.R files individually instead of
    first concatenating and then parse()ing the large resulting file.
    This allows parser or syntax errors to be diagnosed with correct
    file names and line numbers, thanks to Simon Dedman's report and
    Bill Dunlap's patch in PR#17859.
    This _does_ require syntactically self contained R source files
    now, fixing another inadvertent bug.
  * predict.lm(&lt;model with offset&gt;) now finds the offset in the
    correct environment, thanks to Andr'e Gillibert's report and patch
    in PR#18456.
  * getInitial(&lt;formula&gt;) now finds the selfStart model in the
    correct environment.  (Reported by Ivan Krylov in PR#18368.)
  * Fix for possible segfault when using recently-added graphics
    features, such as gradients, clipping paths, masks, and groups
    with pdf(file=NULL).
  * class(m) &lt;- class(m) no longer changes a matrix m by adding a
    class _attribute_.
  * packageDate(pkg) now only warns once if there is no pkg.
  * When ts() creates a multivariate time series, "mts", it also
    inherits from "array" now, and is.mts() is documented _and_
    stricter.
  * Rd2txt() now preserves line breaks of \verb Rd content and from
    duplicated \cr.  The former also fixes the rendering of verbatim
    output from Rd \Sexpr in plain-text help.
  * uniroot(f, interval) should no longer wrongly converge _outside_
    the interval in some cases where abs(f(x)) == Inf for an x at the
    interval boundary, thanks to posts by Ben Bolker and Serguei
    Sokol on R-devel.
  * Vectorized alpha handling in palette functions such as in gray(),
    rainbow(), or hcl.colors() works correctly now, thanks to Achim
    Zeileis' report and patch in PR#18476.
  * Formatting and print()ing of bibentry objects has dropped the
    deprecated citation.bibtex.max argument, such that the bibtex
    argument's default for print.bibentry() depends directly on the
    citation.bibtex.max option, whereas in format.bibentry() the
    option no longer applies.
  * Attempting to use a character string naming a foreign function
    entry point in a foreign function call in a package will now
    signal an error if the packages has called R_forceSymbols to
    specify that symbols must be used.
  * An error in table() could permanently set options(warn=2)
    promoting all subsequent warnings to errors.
  * The sigma() function gave misleading results for binary GLMs.  A
    new method for objects of class "glm" returns the square root of
    the estimate of the dispersion parameter using the same
    calculation as summary.glm().
  * bs() and ns() in the (typical) case of automatic knot
    construction, when some of the supposedly inner knots coincide
    with boundary knots, now moves them inside (with a warning),
    building on PR#18442 by Ben Bolker.
  * R CMD on Windows now skips the site profile with --no-site-file
    and --vanilla even when R_PROFILE is set (PR#18512, from Kevin
    Ushey).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1686916800">- CHANGES IN R 4.3.1:
  C-LEVEL FACILITIES:
  * The C-level API version of R's integrate(), Rdqags() in Applic.h,
    now returns the correct number of integrand evaluations neval,
    fixing PR#18515 reported and diagnosed by Stephen Wade.
  * The C prototypes for LAPACK calls dspgv and dtptrs in
    R_exts/Lapack.h had one too many and one too few character length
    arguments - but this has not caused any known issues. To get the
    corrected prototypes, include
    [#]include &lt;Rconfig.h&gt; // for PR18534fixed
    [#]ifdef PR18534fixed
    [#] define usePR18534fix 1
    [#]endif
    [#]include &lt;R_exts/Lapack.h&gt;
    in your C/C++ code (PR#18534).
  INSTALLATION:
  * Many of the checks of esoteric Internet operations and those
    using unreliable external sites have been moved to a new target
    that is not run by default and primarily intended for the core
    developers.  To run them use
    cd tests; make test-Internet-dev
  BUG FIXES:
  * .S3methods(), typically called from methods(), again marks
    methods from package base as visible.
    Also, the visibility of non-base methods is again determined by
    the method's presence in search().
  * tools::Rdiff() is now more robust against invalid strings, fixing
    installation tests on Windows without Rtools installed
    (PR#18530).
  * Fix (new) bug in hcl.colors(2, *), by Achim Zeileis (PR#18523).
  * head(., &lt;illegal&gt;) and tail(..) now produce more useful "Error in
    ...." error messages, fixing PR#18362.
  * Package code syntax on Windows is checked in UTF-8 when UTF-8 is
    the native encoding.
  * na.contiguous(x) now also returns the first run, when it is at
    the beginning and there is a later one of the same length;
    reported to R-devel, including a fix, by Georgi Boshnakov.
    Further, by default, it modifies only an existing attr(*,"tsp")
    but otherwise no longer sets one.
  * chol(&lt;not pos.def&gt;, pivot = &lt;T|F&gt;) now gives a correct error or
    warning message (depending on pivot), thanks to Mikael Jagan's
    (PR#18541).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1699012800">- CHANGES IN R 4.3.2:
  NEW FEATURES:
  * The default initialization of the "repos" option from the
    repositories file at startup can be skipped by setting
    environment variable R_REPOSITORIES to NULL such that
    getOption("repos") is empty if not set elsewhere.
  * qr.X() is now an implicit S4 generic in methods.
  * iconv(to = "ASCII//TRANSLIT") is emulated using substitution on
    platforms which do not support it (notably Alpine Linux).  This
    should give a human-readable conversion in ASCII on all platforms
    (rather than NA_character_).
  * trans3d() gains options continuous and verbose addressing the
    problem of possible "wrap around" when projecting too long
    curves, as reported by Achim Zeileis in PR#18537.
  * tools::showNonASCII() has been rewritten to work better on macOS
    14 (which has a changed implementation of iconv()).
  * tiff(type = "quartz") (the default on macOS) now warns if
    compression is specified: it continues to be ignored.
  INSTALLATION on a UNIX-ALIKE:
  * There is some support for building with Intel's LLVM-based
    compilers on x86_64 Linux, such as (C) icx, (C++) ipcx and
    (Fortran) ifx from oneAPI 2023.x.y.
  * There is support for using LLVM's flang-new as the Fortran
    compiler from LLVM 16.0.x (preferably 17.0.0 or later).
  UTILITIES:
  * R CMD check reports the use of the Fortran 90 random number
    generator RANDOM_NUMBER() and the subroutines to initialize it.
    'Writing R Extensions' has example code to use R's RNGs from
    Fortran.
  BUG FIXES:
  * substr(x, n, L) &lt;- cc now works (more) correctly for multibyte
    UTF-8 strings x when L &gt; nchar(x), thanks to a report and patch
    by 'Architect 95'.
  * contrib.url(character()) now returns 0-length character() as
    documented, which also avoids spurious warnings from
    available.packages() et al. in the edge case of an empty vector
    of repository URLs.
  * readChar(., 4e8) no longer fails, thanks to Kodi Arfer's report
    (PR#18557).
  * lapply(&lt;list&gt;, as.data.frame) no longer warns falsely for some
    base vector components.
  * Communication between parent and child processes in the multicore
    part of parallel could fail on platforms that do not support an
    arbitrarily large payload in system functions read()/write() on
    pipes (seen on macOS where a restriction to INT_MAX bytes is
    documented, without doing a partial read unlike Linux). The
    payload is now split into 1Gb chunks to avoid that problem.
    (PR#18571)
  * qqplot(x,y, conf.level=.) gives better confidence bounds when
    length(x) != length(y), thanks to Alexander Ploner's report and
    patch proposal (PR#18557).
  * norm(&lt;0-length&gt;, "2") now gives zero instead of an error, as all
    the other norm types, thanks to Mikael Jagan's PR#18542.
  * Build-stage Rd macros \packageAuthor and \packageMaintainer now
    process Authors@R, fixing NA results when the package DESCRIPTION
    omits Author and Maintainer fields.
  * Formatting and printing complex numbers could give things like
    0.1683-0i because of rounding error: -0i is now replaced by +0i.
  * postscript() refused to accept a title comment containing the
    letter "W" (PR#18599).
  * isoreg(c(1,Inf)) signals an error instead of segfaulting, fixing
    PR#18603.
  * tiff(type = "Xlib") was only outputting the last page of
    multi-page plots.
  * tools::latexToUtf8() again knows about \~{n} and other letters
    with tilde, fixing a regression in R 4.3.0, and about \^{i} as an
    alternative to \^{\i} (similarly with other accents).
    Furthermore, LaTeX codes for accented I letters are now correctly
    converted, also fixing related mistakes in
    tools::encoded_text_to_latex().
  * tar(*, tar = "internal") no longer creates out-of-spec tar files
    in the very rare case of user or group names longer than 32
    bytes, fixing PR#17871 with thanks to Ivan Krylov.
  * When using the "internal" timezone datetime code, adding a
    fraction of a second no longer adds one second, fixing PR#16856
    from a patch by Ivan Krylov.
  * tools::checkRd() no longer produces spurious notes about
    "unnecessary braces" from multi-line Rd results of \Sexpr macros.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1709208000">- CHANGES IN R 4.3.3:
  NEW FEATURES:
  * iconv() now fixes up variant encoding names such as "utf8"
    case-insensitively.
  DEPRECATED AND DEFUNCT:
  * The legacy encoding = "MacRoman" is deprecated in pdf() and
    postscript(): support was incomplete in earlier versions of R.
  BUG FIXES:
  * Arguments are now properly forwarded to methods on S4 generics
    with ... in the middle of their formal arguments. This was broken
    for the case when a method introduced an argument but did not
    include ... in its own formals. Thanks to Herv'e Pag`es for the
    report PR#18538.
  * Some invalid file arguments to pictex(), postscript() and xfig()
    opened a file called NA rather than throw an error.  These
    included postscript(NULL) (which some people expected to work
    like pdf(NULL)).
  * Passing filename = NA to svg(), cairo_pdf(), cairo_ps() or the
    Cairo-based bitmap devices opened a file called NA: it now throws
    an error.
  * quartz(file = NA) opened a file called NA, including when used as
    a Quartz-based bitmap device.  It now gives an error.
  * rank(&lt;long vector&gt;) now works, fixing PR#18617, thanks to Ilia
    Kats.
  * seq.int() did not adequately check its length.out argument.
  * match(&lt;POSIXct&gt;, .) is correct again for differing time zones,
    ditto for "POSIXlt", fixing PR#18618 reported by Bastian Klein.
  * drop.terms(*, dropx = &lt;0-length&gt;) now works, fixing PR#18563 as
    proposed by Mikael Jagan.
  * drop.terms(*) keeps + offset(.) terms when it should, PR#18565,
    and drop.terms() no longer makes up a response, PR#18566, fixing
    both bugs thanks to Mikael Jagan.
  * getS3method("t", "test") no longer finds the t.test() function,
    fixing PR#18627.
  * pdf() and postscript() support for the documented Adobe encodings
    "Greek" and "Cyrilllic" was missing (although the corresponding
    Windows' codepages could be used).
  * Computations of glyph metric information for pdf() and
    postscript() did not take into account that transliteration could
    replace one character by two or more (only seen on macOS 14) and
    typically warned that the information was not known.
  * rank(x) no longer overflows during integer addition, when
    computing rank average for largish but not-yet long vector x,
    fixing PR#18630, thanks to Ilia Kats.
  * list.files() on Windows now returns also files with names longer
    that 260 bytes (the Windows limit is 260 characters).
    Previously, some file names particularly with 'East Asian'
    characters were omitted.
  * cov2cor(&lt;0 x 0&gt;) now works, fixing PR#18423 thanks to Mikael
    Jagan and Elin Waring.
  * cov2cor(&lt;negative diagonal&gt;) and similar now give one warning
    instead of two, with better wording, fixing PR#18424 thanks to
    Mikael Jagan.
  * tools:: startDynamicHelp() now ensures port is in proper range,
    fixing PR#18645.
  * pbeta(x, a,b) is correct now for x=0 or 1 in the boundary cases
    where a or b or both are 0, fixing PR#18672 thanks to Michael
    Fay.
  * pmatch(x, table) for large table, also called for data frame row
    selection, dfrm[nm, ], is now interruptible, fixing PR#18656.
  * predict(&lt;rank-deficient lm&gt;, newdata=*) fix computing of nbasis,
    see Russ Lenth's comment 29 in PR#16158.
  * Added a work-around for a bug in macOS 14.3.1 and higher which
    prevents R plots in the Quartz Cocoa device from updating on
    screen.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1713960000">- CHANGES IN R 4.4.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Startup banners, R --version, sessionInfo() and R CMD check no
    longer report (64-bit) as part of the platform as this is almost
    universal - the increasingly rare 32-bit platforms will still
    report (32-bit).
    On Windows, ditto for window titles.
  * is.atomic(NULL) now returns FALSE, as NULL is not an atomic
    vector.  Strict back-compatibility would replace is.atomic(foo)
    by (is.null(foo) || is.atomic(foo)) but should happen only
    sparingly.
  NEW FEATURES:
  * The confint() methods for "glm" and "nls" objects have been
    copied to the stats package.  Previously, they were stubs which
    called versions in package MASS. The MASS namespace is no longer
    loaded if you invoke (say) confint(glmfit).  Further, the "glm"
    method for profile() and the plot() and pairs() methods for class
    "profile" have been copied from MASS to stats.  (profile.nls()
    and plot.profile.nls() were already in stats.)
  * The confint() and profile methods for "glm" objects have gained a
    possibility to do profiling based on the Rao Score statistic in
    addition to the default Likelihood Ratio. This is controlled by a
    new test = argument.
  * The pairs() method for "profile" objects has been extended with a
    which = argument to allow plotting only a subset of the
    parameters.
  * The "glm" method for anova() computes test statistics and
    p-values by default, using a chi-squared test or an F test
    depending on whether the dispersion is fixed or free.  Test
    statistics can be suppressed by giving argument test a false
    logical value.
  * In setRepositories() the repositories can be set using their
    names via name = instead of index ind =.
  * methods() and .S3methods() gain a all.names option for the (rare)
    case where functions starting with a . should be included.
  * Serializations can now be interrupted (e.g., by Ctrl-C on a
    Unix-alike) if they take too long, e.g., from save.image(),
    thanks to suggestions by Ivan Krylov and others on R-devel.
  * New startup option --max-connections to set the maximum number of
    simultaneous connections for the session.  Defaults to 128 as
    before: allowed values up to 4096 (but resource limits may in
    practice restrict to smaller values).
  * R on Windows (since Windows 10 2004) now uses the new Segment
    Heap allocator. This may improve performance of some
    memory-intensive applications.
  * When R packages are built, typically by R CMD build &lt;pkg&gt;, the
    new --user=&lt;build_user&gt; option overrides the (internally
    determined) user name, currently Sys.info()["user"] or LOGNAME.
    This is a (modified) fulfillment of Will Landau's suggestion in
    PR#17530.
  * tools::testInstalledBasic() gets new optional arguments outDir
    and testSrcdir, e.g., allowing to use it in a &lt;builddir&gt; !=
    &lt;srcdir&gt; setup, and in standard "binary" Windows installation
  * if* a source tests/ folder is present.
  * range(&lt;DT_with_Inf&gt;, finite = TRUE) now work for objects of class
    "Date", "POSIXct", and "POSIXlt" with infinite entries,
    analogously to range.default(), as proposed by Davis Vaughan on
    R-devel.  Other range()-methods can make use of new function
    .rangeNum().
  * New .internalGenerics object complementing .S3PrimitiveGenerics,
    for documentation and low-level book-keeping.
  * grid() now invisibly returns the x- and y- coordinates at which
    the grid-lines were drawn.
  * norm(., type) now also works for complex matrices.
  * kappa(., exact = TRUE, norm = *) now works for all norms and also
    for complex matrices.  In symmetric / triangular cases, the new
    argument uplo = "U" | "L" allows the upper or lower triangular
    part to be specified.
  * memDecompress(type = "unknown") recognizes compression in the
    default 'zlib' format as used by memCompress(type = "gzip").
  * memCompress() and memDecompress() will use the libdeflate library
    (&lt;https://github.com/ebiggers/libdeflate&gt;) if installed.  This
    uses the same type of compression for type = "gzip" but is 1.5-2x
    faster than the system libz library on some common platforms: the
    speed-up may depend on the library version.
  * diff() for objects of class "Date", "POSIXct", and "POSIXlt"
    accepts a units argument passed via ....
  * Dynamic help now does a much better job of rendering package
    DESCRIPTION metadata.
  * Rprof() gains an event argument and support for elapsed (real)
    time profiling on Unix (PR#18076).
  * filled.contour() gains a key.border argument.
  * tools::update_pkg_po() gets arguments pot_make and mo_make for
    _not_ re-making the corresponding files, and additionally a
    verbose argument.
  * Hexadecimal string colour specifications are now accepted in
    short form, so, for example, we can use "#123", which is
    equivalent to "#112233".
    Thanks to MikeFC for the original idea and Ella Kaye, Malcolm
    Barrett, George Stagg, and Hanne Oberman for the patch.
  * Plain-text help shows \var markup by angle brackets.
  * The new experimental primitive function declare() is intended to
    eventually allow information about R code to be communicated to
    the interpreter, compiler, and code analysis tools. The syntax
    for declarations is still being developed.
  * Functions psmirnov(), qsmirnov() and rsmirnov() in package stats
    have had argument two.sided renamed to alternative, to take into
    account that the permutation distributions of the one-sided
    statistics can be different in the case of ties.  Consequence of
    PR#18582.
  * sort() is now an implicit S4 generic in methods.
  * Formatting and printing, format(z), print(z), of complex vectors
    z no longer zap relatively small real or imaginary parts to zero,
    fixing PR#16752.  This is an API change, as it was documented
    previously to round real and imaginary parts together on purpose,
    producing nicer looking output.  As mentioned, e.g. in the PR,
    this change is compatible with many other "R-like" programming
    environments.
    We have simplified the internal code and now basically format the
    real and imaginary parts independently of each other.
  * New experimental functions Tailcall() and Exec() to support
    writing stack-space-efficient recursive functions.
  * Where characters are attempted to be plotted by pdf(),
    postscript() and xfig() which are not in the selected 8-bit
    character set (most often Latin-1) and the R session is using a
    UTF-8 locale, the warning messages will show the UTF-8 character
    rather than its bytes and one dot will be substituted per
    character rather than per byte.  (Platforms whose iconv() does
    transliteration silently plot the transliteration.)
    In a UTF-8 locale some transliterations are now done with a
    warning (e.g., dashes and Unicode minus to hyphen, ligatures are
    expanded, permille (‰) is replaced by o/oo), although the OS may
    have got there first.  These are warnings as they will continue
    to be replaced by dots in earlier versions of R.
  * The matrix multiplication functions crossprod() and tcrossprod()
    are now also primitive and S3 generic, as %*% had become in R
    4.3.0.
  * source() and example() have a new optional argument catch.aborts
    which allows continued evaluation of the R code after an error.
  * The non-Quartz tiff() devices allow additional types of
    compression if supported by the platform's libtiff library.
  * The list of base and recommended package names is now provided by
    tools::standard_package_names().
  * cairo_pdf() and cairo_ps() default to onefile = TRUE to closer
    match pdf() and postscript().
  * New option catch.script.errors provides a documented way to catch
    errors and then continue in non-interactive use.
  * L %||% R newly in base is an expressive idiom for the phrases
    if(!is.null(L)) L else R or if(is.null(L)) R else L.
  * The return value from warnings() now always inherits from
    "warnings" as documented, now also in the case of no warnings
    where it previously returned NULL.
  * as.complex("1i") now returns 0 + 1i instead of NA with a warning.
  * z &lt;- c(NA, 1i) now keeps the imaginary part Im(z[1]) == 0, no
    longer coercing to NA_complex_.  Similarly, cumsum(z) correctly
    sums real and imaginary parts separately, i.e., without
    "crosstalk" in case of NAs.
  * On Alpine Linux iconv() now maps "latin2", "latin-2", "latin9"
    and "latin-9" to encoding names the OS knows about
    (case-insensitively).
  * iconv(sub = "Unicode") now always zero-pads to four (hex) digits,
    rather than to 4 or 8.  (This seems to have become the convention
    once Unicode restricted the number of Unicode points to 2^21 - 1
    and so will never need more than 6 digits.)
  * NCOL(NULL) now returns 0 instead of 1, for consistency with
    cbind().
  * The information for the Euro glyph missing from the Adobe .afm
    files for the Courier, Helvetica and Times families has been
    copied from their URW equivalents - this will improve vertical
    centring in the pdf() and postscript() devices.
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.12.0.  The changes are almost entirely cosmetic.
  * The included LAPACK sources have been updated to version 3.12.0
    and some further double-complex routines added.
  * There are new font families for the 2014--5 URW 2.0 fonts (see
    ?pdf) which are included in recent versions of Ghostscript.
    These have font widths for most Greek glyphs and a few others
    which were missing from the original versions (whose font
    families remain available for reproducibility, although
    Ghostscript-based viewers will render using the 2.0 versions).
  * Improve the large-n efficiency of as.matrix(&lt;dist&gt;), thanks an R
    contributors effort, notably by Tim Taylor and Heather Turner,
    see PR#18660.
  * The default and numeric methods of all.equal() get a check.class
    option.
  * zapsmall() gets new optional arguments, function mFUN and min.d,
    for extra flexibility; fulfills a wish in PR#18199.  Also, it is
    now an implicit S4 generic in package methods.
  * The Rd filter for aspell() gains an ignore argument.
  * New generic function sort_by(), primarily useful for the
    data.frame method which can be used to sort rows of a data frame
    by one or more columns.
  * The icence headers for the RPC code in src/extra/xdr have been
    updated to use the GPL-compatible licence published by Oracle
    America in 2010.
  * New function pkg2HTML() in tools to create single-page HTML
    reference manuals for R packages.
  * The byte code evaluator now uses less C stack space for recursive
    calls to byte-compiled functions. It also makes more of an effort
    to avoid allocations for scalar return values.
  * New completion option backtick (disabled by default) allows
    non-syntactic completions to be wrapped in backquotes. This is
    currently only useful for Jupyter notebooks via the IRkernel
    package, and may cause problems for other backends.
  INSTALLATION:
  * The parser has been updated to work with bison 3.8.2, which is
    now used for the pre-generated parsers in gram.c, file.c, and
    gramRd.c. A few parser error messages have changed, which may
    affect code that relies on exact messages.
  INSTALLATION on a UNIX-ALIKE:
  * System valgrind headers are now required to use configure option
  - -with-valgrind-instrumentation with value 1 or 2.
  * configure will warn if it encounters a 32-bit build, as that is
    nowadays almost untested.
  * Environment variable R_SYSTEM_ABI is no longer used and so no
    longer recorded in etc/Renviron (it was not on Windows and was
    only ever used when preparing package tools).
  * If the libdeflate library and headers are available, libdeflate
    rather than libz is used to (de)compress R objects in lazy-load
    databases.  Typically tasks spend up to 5% of their time on such
    operations, although creating lazy-data databases is one of the
    exceptions.
    This can be suppressed if the library is available by the
    configure option --without-libdeflate-compression.
  * configure option --enable-lto=check has not worked reliably since
    2019 and has been removed.
  * The minimum autoconf requirement for a maintainer build has been
    increased to autoconf 2.71.
    It is intended to increase this to 2.72 for R 4.5.0: the
    distributed configure file was generated using 2.72.
  * The minimum version requirement for an external LAPACK has been
    reduced to 3.9.0.
  * No default C++ compiler is set if no C++17 compiler is detected:
    there is no longer an automatic fallback to C++14 or C++11.
    Compilers from the last five years should have sufficient
    support: for others macros CXX and CXXSTD can be set in file
    config.site to provide a fallback if needed.
    The Objective-C++ compiler now by default uses the standard
    selected by R for C++ (currently C++17) rather than the default
    standard for the C++ compiler (which on macOS is still C++98).
  INSTALLATION on macOS:
  * A new configure option --with-newAccelerate makes use of Apple's
    'new' BLAS / LAPACK interfaces in their Accelerate framework.
    Those interfaces are only available in macOS 13.3 or later, and
    building requires SDK 13.3 or later (from the Command Line Tools
    or Xcode 14.3 or later).
    By default the option uses new Accelerate for BLAS calls: to also
    use it for LAPACK use option --with-newAccelerate=lapack.  The
    later interfaces provide LAPACK 3.9.1 rather than 3.2.1: 3.9.1 is
    from 2021-04 and does not include the improved algorithms
    introduced in LAPACK 3.10.0 (including for BLAS calls).
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools44, an update of the Rtools43 toolchain.  It is
    based on GCC 13 and newer versions of MinGW-W64, binutils and
    libraries (targeting 64-bit Intel CPUs).  R-devel can no longer
    be built using Rtools43 without changes.
  * Rtools44 has experimental support for 64-bit ARM (aarch64) CPUs
    _via_ the LLVM 17 toolchain using lld, clang/flang-new and
    libc++.
  UTILITIES:
  * R CMD check notes when S4-style exports are used without
    declaring a strong dependence on package methods.
  * tools::checkRd() (used by R CMD check) detects more problems with
    \Sexpr-based dynamic content, including bad nesting of \Sexprs
    and invalid arguments.
  * tools::checkRd() now reports Rd titles and section names ending
    in a period; this is ignored by R CMD check unless environment
    variable _R_CHECK_RD_CHECKRD_MINLEVEL_ is set to -5 or smaller.
  * R CMD check now notes Rd files without an \alias, as long
    documented in 'Writing R Extensions' §1.3.1.  The check for a
    missing \description has been moved from tools::checkRd() to
    tools::checkRdContents().
  * R CMD check now visits inst/NEWS.Rd and OS-specific man
    subdirectories when checking Rd files.
  * tools::checkDocFiles() and tools::checkRdContents() now also
    check internal Rd files by default, but "specially" (ignoring
    missing documentation of arguments).
  * R CMD Rdiff gets option --useEx.
  * R CMD check now warns on non-portable uses of Fortran KIND such
    as INTEGER(KIND=4) and REAL(KIND=8).
    To see the failing lines set environment variable
    _R_CHECK_FORTRAN_KIND_DETAILS_ to a true value.
  * When checking Rd files, R CMD check now notes some of the "lost
    braces" that tools::checkRd() finds.  Typical problems are Rd
    macros missing the initial backslash (e.g., code{...}), in-text
    set notation (e.g., {1, 2}, where the braces need escaping), and
    \itemize lists with \describe-style entries of the form
    \item{label}{description}.
  * R CMD INSTALL (and hence check) will compile C++ code with
  - DR_NO_REMAP if environment variable _R_CXX_USE_NO_REMAP_ is set
    to a true value.  It is planned that this will in future become
    the default for compiling C++.
  * The new built-in Rd macro \dontdiff{} can be used to mark example
    code whose output should be ignored when comparing check output
    to reference output (tests/Examples/&lt;pkg&gt;-Ex.Rout.save).  The
    \dontdiff tag, like \donttest, is _not_ shown on the rendered
    help page, so provides a clean alternative to ##
    IGNORE_RDIFF_(BEGIN|END) comments.
  * R CMD build when there is no NAMESPACE, now uses the recommended
    exportPattern("^[^.]"), instead of exporting everything.
  * R CMD check now warns about non-ASCII characters in the NAMESPACE
    file (in addition to R files). Such packages are not portable and
    may fail to install on some platforms.
  C-LEVEL FACILITIES:
  * Headers R_ext/Applic.h and R-ext/Linpack.h used to include
    R_ext/BLAS.h although this was undocumented and unneeded by their
    documented entry points.  They no longer do so.
  * New function R_missing(), factored out from do_missing(), used to
    fix PR#18579.
  * SEXP type S4SXP has been renamed to OBJSXP to support
    experimenting with alternative object systems.  The S4SXP value
    can still be used in C code but is now deprecated.  Based on
    contributions from the R Consortium's Object-Oriented Programming
    Working Group.
  * New function pow1p(x,y) for accurate (1+x)^y.
  * mkCharLenCE was incorrectly documented to take a size_t length
    but was implemented with int (and character strings in R are
    limited to 2^31 - 1 bytes).
  DEPRECATED AND DEFUNCT:
  * data() no longer handles zipped data from long-defunct (since R
    2.13.0) --use-zip-data installations.
  * The legacy graphics devices pictex() and xfig() are now
    deprecated.  They do not support recent graphics enhancements and
    their font handling is rudimentary. The intention is to retain
    them for historical interest as long as they remain somewhat
    functional.
  * Support for encoding = "MacRoman" has been removed from the pdf()
    and postscript() devices - this was a legacy encoding supporting
    classic macOS up to 2001 and no longer has universal libiconv
    support.
  * is.R() is deprecated as no other S dialect is known to be in use
    (and this could only identify historical dialects, not future
    ones).
    Further information on calls can be obtained by setting the
    environment variable _R_DEPRECATED_IS_R_ to error which turns the
    deprecation warning into an error and so by default gives a
    traceback.  (This is done by R CMD check --as-cran.)
  * UseMethod() no longer forwards local variables assigned in the
    generic function into method call environments before evaluating
    the method body. This makes method calls behave more like
    standard function calls and makes method code easier to analyze
    correctly.
  * The twelve as.data.frame.&lt;class&gt;() methods which were deprecated
    only via _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ and in R CMD
    check --as-cran are formally deprecated now in favour of calling
    as.data.frame() or as.data.frame.vector().  The deprecation
    "check" now works also when as.data.frame() is S4 generic thanks
    to Ivan Krylov.
  * The default method for the directional comparison operators &lt;, &gt;,
    &lt;=, and &gt;= now signals an error when one of the operands is a
    language object, i.e. a symbol or a call.
  * For terms.formula(), deprecate abb and neg.out arguments
    _formally_ in addition to just documenting it.
  BUG FIXES:
  * The methods package is more robust to not being attached to the
    search path.  More work needs to be done.
  * pairwise.t.test() misbehaved when subgroups had 0 DF for
    variance, even with pool.sd = TRUE.  (PR#18594 by Jack Berry).
  * Probability distribution functions [dpq]&lt;distrib&gt;(x, *), but also
    bessel[IKJY](x, .) now consistently preserve attributes(x) when
    length(x) == 0, e.g., for a 2 x 0 matrix, thanks to Karolis
    Koncevičius' report PR#18509.
  * Group "Summary" computations such as sum(1:3, 4, na.rm = 5, NA,
    7, na.rm = LL) now give an error instead of either 17 or NN for
    LL true or false, as proposed by Ivan Krylov on the R-devel
    mailing list.  (This also means it is now an error to specify
    na.rm more than once.)
  * as.complex(x) now returns complex(real = x, imaginary = 0) for
    _all_ numerical and logical x, notably also for NA or
    NA_integer_.
  * Directories are now omitted by file.copy(, recursive = FALSE) and
    in file.append() (PR#17337).
  * gsub() and sub() are now more robust to integer overflow when
    reporting errors caused by too large input strings (PR#18346).
  * Top-level handlers are now more robust to attempts to remove a
    handler whilst handlers are running (PR#18508).
  * The handling of Alt+F4 in dialogs created on Windows using
    GraphApp has been fixed (PR#13870).
  * density() more consistently computes grid values for the
    FFT-based convolution, following Robert Schlicht's analysis and
    proposal in PR#18337, correcting density values typically by a
    factor of about 0.999.  Argument old.coords = TRUE provides back
    compatibility.
  * palette.colors() gains a name argument that defaults to FALSE
    controlling whether the vector of colours that is returned has
    names (where possible).  PR#18529.
  * tools::xgettext() no longer extracts the (non-translatable) class
    names from warningCondition and errorCondition calls.
  * S3method(&lt;gen&gt;, &lt;class&gt;, &lt;func&gt;) in the NAMESPACE file now works
    (again) when &lt;func&gt; is visible from the namespace, e.g.,
    imported, or in base.
  * getParseData(f) now also works for a function defined in the
    first of several &lt;pkg&gt;/R/*.R source files, thanks to Kirill
    Müller's report and Duncan Murdoch's patch in PR#16756.
  * Rd \Sexpr macros with nested #ifdef conditionals were not
    processed.
  * A non-blocking connection with non-default encoding (such as a
    socket) now correctly returns from readLines() after new data has
    arrived also when its EOF had been reached previously.  Thanks to
    Peter Meilstrup's report on R-devel and Ivan Krylov's report and
    patch proposal in PR#18555.
  * tools::checkRdContents() failed to detect empty argument
    descriptions when they spanned multiple lines, including those
    generated by prompt().  These cases are now noted by R CMD check.
  * Plain-text help no longer outputs spurious colons in the
    arguments list (for multi-line \item labels in the Rd source).
  * kappa() and rcond() work correctly in more cases; kappa(., norm =
    "2") now warns that it computes the 1-norm with (default) exact =
    FALSE; prompted by Mikael Jagan's quite comprehensive PR#18543.
  * Rd skeletons generated by prompt() or promptData() now use a
    dummy title (so R CMD build works).  tools::checkRdContents() has
    been updated to detect such template leftovers, including from
    promptPackage().
  * When S4 method dispatch fails because no method was found, the
    error message now includes the signature argument names; thanks
    to Michael Chirico's proposal on the R-devel list.
  * withAutoprint({ .. }) now preserves srcrefs previously lost,
    thanks to Andrew Simmons' report plus fix in PR#18572.
  * transform.data.frame() no longer adjusts names; in particular,
    untransformed variables are kept as-is, including those with
    syntactically invalid names (PR#17890).
  * The keep.source option for Rd \Sexpr blocks is no longer ignored.
  * The formula methods for t.test() and wilcox.test() now catch when
    paired is passed, addressing PR#14359; use Pair(x1, x2) ~ 1 for a
    paired test.
  * The level reported in the browser prompt was often too large. It
    now shows the number of browser contexts on the stack.
  * For cbind() and rbind(), the optional deparse.level argument is
    now properly passed to methods, thanks to Mikael Jagan's PR#18579
    and comments there.
  * Some error and warning messages for large ('long vector')
    matrix(v, nr, nc) and dim(m) &lt;- d are now correct about sizes,
    using long long formatting, fixing PR#18612 (and more) reported
    by Mikael Jagan.
  * readChar(useBytes = TRUE) now terminates strings even when the
    underlying connection uses extra spaces in the input buffer.
    This fixes problems with extra garbage seen with gzip
    connections, PR#18605.
  * Named capture in PCRE regular expressions now works also with
    more than 127 named groups (PR#18588).
  * Datetime functions are now robust against long jumps when dealing
    with internal time zone changes.  This avoids confusing warnings
    about an invalid time zone, previously triggered by turning
    warnings into errors or handling them via tryCatch (PR#17966,
    PR#17780).
  * Datetime functions now restore even an empty TZ environment
    variable after internal time zone changes (PR#17724).  This makes
    results of datetime functions with this (typically unintentional)
    setting more predictable.
  * drop.terms(*) now drops response as by default, keep.response =
    FALSE, fixing PR#18564 thanks to Mikael Jagan.
  * dummy.coef(.) now also works for lm()-models with character
    categorical predictor variables rather than factor ones, fixing
    PR#18635 reported by Jinsong Zhao.
  * formals(f) &lt;- formals(f) now also works for a function w/o
    arguments and atomic _constant_ body(f).
  * Correct as.function(&lt;invalid list&gt;, .)'s error message.
  * removeSource() is yet more thorough in finding and removing
    "srcref" and the other source references from parsed R language
    chunks, fixing PR#18638 thanks to Andrew Simmons.
  * dgeom() is more accurate now, notably when its result is very
    small, fixing PR#18642 thanks to the proposal of Morten Welinder,
    also improving other instances where C level binom_raw(x, n, ..)
    has x == 0 or x== n.
  * warning() with options(warn = 1) has improved output for
    multi-line messages.
  * axis.Date() and axis.POSIXct() now respect the par("lab") setting
    for the number of pretty() intervals.
  * Comparisons for language objects (which are based on deparsing)
    are now more careful about using accurate deparsed results
    (PR#18676).
  * Plain-text help (Rd2txt) now correctly preserves blank lines
    following single-line \dontrun code.
  * &lt;POSIXlt&gt;[*] no longer sets wrong "balanced" attribute, fixing
    PR#18681 thanks to Mikael Jagan.
  * str(&lt;classed-call&gt;) now deparses the call as expected, fixing
    PR#18684, reported by Dave Slager.
  * In Rd examples, code following the closing brace of a \dontrun,
    \dontshow or \donttest tag on the same line is no longer skipped
    when R CMD check runs the examples.
  * as.data.frame(matrix(*, ncol=0)) now gets valid names() and
    colnames(); reported by Davis Vaughan on the R-devel list.
  * Internal Mathlib function stirlerr(n) is now almost fully
    (52-bit) accurate for all n &gt;= ~5.9 and more accurate also in the
    range 1 -- 5.9.  This entails small ("after 12th decimal")
    changes in density functions, e.g., dgamma() in _some_ regions of
    their support.  The fix was partly prompted by Morten Welinder's
    PR#18640.
  * Numbers like 9876543.2 are now considered non-integer by Mathlib
    internal R_nonint(), amending original fix of PR#15734.
  * Rd comment lines no longer cause broken paragraphs in the
    rendered PDF and plain-text help. In code blocks, pure comment
    lines (starting with %) no longer produce an empty line.
  * xtabs(Freq ~ .) now consistently defaults to na.action = na.pass,
    using na.rm = FALSE (added as an argument) when summing over Freq
    (PR#17770).
  * tools::testInstalledPackage() is no longer silent about failures
    from running examples or tests and its return code no longer
    ignores failures from checking vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1718366400">- CHANGES IN R 4.4.1:
  C-LEVEL FACILITIES:
  * Functions R_atof and R_strtod declared in header R_ext/Utils.h
    are now documented in 'Writing R Extensions' and so formally part
    of the API.
  * The non-API entry points Rf_setSVector, Rf_StringFalse,
    Rf_StringTrue and Rf_isBlankString have been added to those
    reported by R CMD check.
  * The new function Rf_allocLang is now available. This provides an
    alternative to the idiom of calling Rf_allocList followed by
    SET_TYPEOF.
  UTILITIES:
  * R CMD check now reports as warnings what gfortran calls 'Fortran
    2018 deleted features', all of which have long been marked as
    'obsolescent' and some of which were deleted in Fortran 2008 or
    earlier.  Fortran compilers are no longer required to support
    these.
  BUG FIXES:
  * as.numeric(), scan(), type.convert() and other places which use
    the internal C function R_strtod now require a _non-empty_ digit
    sequence in a decimal or binary exponent.  This aligns with the
    C/POSIX standard for strtod and with ?NumericConstants.
  * as.data.frame(m, make.names=NA) now works correctly for a matrix
    m with NA's in row names.
  * The error message from &lt;POSIXlt&gt;[["hour"]] and similar now
    mentions *[[, "hour"]], as wished for in PR#17409 and proposed by
    Michael Chirico.
  * qbinom() and potentially qpois(), qnbinom(), no longer sometimes
    fail accurate inversion (of pbinom(), etc), thanks to Christopher
    Chang's report and patch in PR#18711.
  * The internal help server on Windows can again serve requests sent
    in quick succession, fixing a regression in R 4.4.0.
  * debugcall(&lt;S3Generic&gt;()) now also works when a corresponding
    S4-generic version is in the methods cache (PR#18143).
  * Package tools' toTitleCase(ch0) now returns character(0) when ch0
    is of zero length; fixing PR#18724, reported by David Hugh Jones.
  * R CMD check is no longer broken (without a check result and no
    explanation in 00check.log) for a package which declares an
    invalid VignetteBuilder in DESCRIPTION but has no vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1730376000">- CHANGES IN R 4.4.2:
  C-LEVEL FACILITIES:
  * The S-compatibility macros F77_COM and F77_COMDECL defined in
    header R_ext/RS.h are deprecated and will be removed shortly.  We
    could find no record of their use.
  BUG FIXES:
  * Mathlib function lgammacor(x) no longer warns about underflow to
    zero for large x.
  * Text widths and heights were incorrectly reported by the Quartz
    device if the drawing context didn't exist yet (typically when
    drawing off-screen to a window that is yet to appear, see
    PR#18591).
  * The Quartz device could segfault in cases where paths with spaces
    are used in the new glyph drawing API.  Thanks to Tomek
    Gieorgijewski (PR#18758).
  * On macOS in R CRAN builds, it is again possible to read
    little-endian UTF-16 text with a BOM from a connection using
    encoding="UTF-16".  Users building R from source should avoid
    using the system libiconv in macOS 14.1 and later.
  * methods' internal .requirePackage() now re-enables primitive
    method dispatch when needed; thanks to Ivan Krylov for
    demystifying CRAN package check failures on the R-devel mailing
    list.</changelog>
</package>
<package pkgid="816a479829a3e513f3f1370745583e6b99fc7ff348f7cbfaba83a767b5f80ad9048a5ebf7cef89dbb867d60c79c04a9261cbea0574e8e4a578d2049c6f42d1e4" name="R-base-devel" arch="i586">
  <version epoch="0" ver="4.4.2" rel="51.0.2.2.sr20241103"/>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1620302400">- To get in sync with d:l:R:autoCRAN the Matrix package's split
  in -devel was reversed.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339200">- improved spec file according to comments of dimstar in
  https://build.opensuse.org/request/show/892685</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339201">- CHANGES IN R 4.1.0:
  FUTURE DIRECTIONS:
  * It is planned that the 4.1.x series will be the last to support
    32-bit Windows, with production of binary packages for that
    series continuing until early 2023.
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Data set esoph in package datasets now provides the correct
    numbers of controls; previously it had the numbers of cases added
    to these.  (Reported by Alexander Fowler in PR#17964.)
  NEW FEATURES:
  * www.omegahat.net is no longer one of the repositories known by
    default to setRepositories().  (Nowadays it only provides source
    packages and is often unavailable.)
  * Function package_dependencies() (in package tools) can now use
    different dependency types for direct and recursive dependencies.
  * The checking of the size of tarball in R CMD check --as-cran
    &lt;pkg&gt; may be tweaked via the new environment variable
    _R_CHECK_CRAN_INCOMING_TARBALL_THRESHOLD_, as suggested in
    PR#17777 by Jan Gorecki.
  * Using c() to combine a factor with other factors now gives a
    factor, an ordered factor when combining ordered factors with
    identical levels.
  * apply() gains a simplify argument to allow disabling of
    simplification of results.
  * The format() method for class "ftable" gets a new option justify.
    (Suggested by Thomas Soeiro.)
  * New ...names() utility.  (Proposed by Neal Fultz in PR#17705.)
  * type.convert() now warns when its as.is argument is not
    specified, as the help file always said it _should_.  In that
    case, the default is changed to TRUE in line with its change in
    read.table() (related to stringsAsFactor) in R 4.0.0.
  * When printing list arrays, classed objects are now shown _via_
    their format() value if this is a short enough character string,
    or by giving the first elements of their class vector and their
    length.
  * capabilities() gets new entry "Rprof" which is TRUE when R has
    been configured with the equivalent of --enable-R-profiling (as
    it is by default).  (Related to Michael Orlitzky's report
    PR#17836.)
  * str(xS4) now also shows extraneous attributes of an S4 object
    xS4.
  * Rudimentary support for vi-style tags in rtags() and R CMD rtags
    has been added.  (Based on a patch from Neal Fultz in PR#17214.)
  * checkRdContents() is now exported from tools; it and also
    checkDocFiles() have a new option chkInternal allowing to check
    Rd files marked with keyword "internal" as well.  The latter can
    be activated for R CMD check via environment variable
    _R_CHECK_RD_INTERNAL_TOO_.
  * New functions numToBits() and numToInts() extend the raw
    conversion utilities to (double precision) numeric.
  * Functions URLencode() and URLdecode() in package utils now work
    on vectors of URIs.  (Based on patch from Bob Rudis submitted
    with PR#17873.)
  * path.expand() can expand ~user on most Unix-alikes even when
    readline is not in use.  It tries harder to expand ~, for example
    should environment variable HOME be unset.
  * For HTML help (both dynamic and static), Rd file links to help
    pages in external packages are now treated as references to
    topics rather than file names, and fall back to a file link only
    if the topic is not found in the target package. The earlier rule
    which prioritized file names over topics can be restored by
    setting the environment variable _R_HELP_LINKS_TO_TOPICS_ to a
    false value.
  * c() now removes NULL arguments before dispatching to methods,
    thus simplifying the implementation of c() methods, _but_ for
    back compatibility keeps NULL when it is the first argument.
    (From a report and patch proposal by Lionel Henry in PR#17900.)
  * Vectorize()'s result function's environment no longer keeps
    unneeded objects.
  * Function ...elt() now propagates visibility consistently with
    ..n.  (Thanks to Lionel Henry's PR#17905.)
  * capture.output() no longer uses non-standard evaluation to
    evaluate its arguments.  This makes evaluation of functions like
    parent.frame() more consistent.  (Thanks to Lionel Henry's
    PR#17907.)
  * packBits(bits, type="double") now works as inverse of
    numToBits().  (Thanks to Bill Dunlap's proposal in PR#17914.)
  * curlGetHeaders() has two new arguments, timeout to specify the
    timeout for that call (overriding getOption("timeout")) and TLS
    to specify the minimum TLS protocol version to be used for
    https:// URIs (_inter alia_ providing a means to check for sites
    using deprecated TLS versions 1.0 and 1.1).
  * For nls(), an optional constant scaleOffset may be added to the
    denominator of the relative offset convergence test for cases
    where the fit of a model is expected to be exact, thanks to a
    proposal by John Nash.  nls(*, trace=TRUE) now also shows the
    convergence criterion.
  * Numeric differentiation _via_ numericDeriv() gets new optional
    arguments eps and central, the latter for taking central divided
    differences.  The latter can be activated for nls() via
    nls.control(nDcentral = TRUE).
  * nls() now passes the trace and control arguments to getInitial(),
    notably for all self-starting models, so these can also be fit in
    zero-noise situations via a scaleOffset.  For this reason, the
    initial function of a selfStart model must now have ... in its
    argument list.
  * bquote(splice = TRUE) can now splice expression vectors with
    attributes: this makes it possible to splice the result of
    parse(keep.source = TRUE).  (Report and patch provided by Lionel
    Henry in PR#17869.)
  * textConnection() gets an optional name argument.
  * get(), exists(), and get0() now signal an error if the first
    argument has length greater than 1.  Previously additional
    elements were silently ignored.  (Suggested by Antoine Fabri on
    R-devel.)
  * R now provides a shorthand notation for creating functions, e.g.
    \(x) x + 1 is parsed as function(x) x + 1.
  * R now provides a simple native forward pipe syntax |&gt;.  The
    simple form of the forward pipe inserts the left-hand side as the
    first argument in the right-hand side call.  The pipe
    implementation as a syntax transformation was motivated by
    suggestions from Jim Hester and Lionel Henry.
  * all.equal(f, g) for functions now by default also compares their
    environment(.)s, notably via new all.equal method for class
    function.  Comparison of nls() fits, e.g., may now need
    all.equal(m1, m2, check.environment = FALSE).
  * .libPaths() gets a new option include.site, allowing to _not_
    include the site library.  (Thanks to Dario Strbenac's suggestion
    and Gabe Becker's PR#18016.)
  * Lithuanian translations are now available.  (Thanks to Rimantas
    Zakauskas.)
  * names() now works for DOTSXP objects.  On the other hand, in
    R-lang, the R language manual, we now warn against relying on the
    structure or even existence of such dot-dot-dot objects.
  * all.equal() no longer gives an error on DOTSXP objects.
  * capabilities("cairo") now applies only to the file-based devices
    as it is now possible (if very unusual) to build R with Cairo
    support for those but not for X11().
  * There is optional support for tracing the progress of
    loadNamespace() - see its help.
  * (Not Windows.)  l10n_info() reports an additional element, the
    name of the encoding as reported by the OS (which may differ from
    the encoding part (if any) of the result from
    Sys.getlocale("LC_CTYPE").
  * New function gregexec() which generalizes regexec() to find _all_
    disjoint matches and well as all substrings corresponding to
    parenthesized subexpressions of the given regular expression.
    (Contributed by Brodie Gaslam.)
  * New function charClass() in package utils to query the
    wide-character classification functions in use (such as
    iswprint).
  * The names of quantile()'s result no longer depend on the global
    getOption("digits"), but quantile() gets a new optional argument
    digits = 7 instead.
  * grep(), sub(), regexp and variants work considerably faster for
    long factors with few levels.  (Thanks to Michael Chirico's
    PR#18063.)
  * Provide grouping of x11() graphics windows within a window
    manager such as Gnome or Unity; thanks to a patch by Ivan Krylov
    posted to R-devel.
  * The split() method for class data.frame now allows the f argument
    to be specified as a formula.
  * sprintf now warns on arguments unused by the format string.
  * New palettes "Rocket" and "Mako" for hcl.colors() (approximating
    palettes of the same name from the 'viridisLite' package).
    Contributed by Achim Zeileis.
  * The base environment and its namespace are now locked (so one can
    no longer add bindings to these or remove from these).
  * Rterm handling of multi-byte characters has been improved,
    allowing use of such characters when supported by the current
    locale.
  * Rterm now accepts ALT+ +xxxxxxxx sequences to enter Unicode
    characters as hex digits.
  * Environment variable LC_ALL on Windows now takes precedence over
    LC_CTYPE and variables for other supported categories, matching
    the POSIX behaviour.
  * duplicated() and anyDuplicated() are now optimized for integer
    and real vectors that are known to be sorted via the ALTREP
    framework. Contributed by Gabriel Becker via PR#17993.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 14
    and so packages that provide graphics devices should be
    reinstalled.
  * Graphics devices should now specify deviceVersion to indicate
    what version of the graphics engine they support.
  * Graphics devices can now specify deviceClip.  If TRUE, the
    graphics engine will never perform any clipping of output itself.
    The clipping that the graphics engine does perform (for both
    canClip = TRUE and canClip = FALSE) has been improved to avoid
    producing unnecessary artifacts in clipped output.
  * The grid package now allows gpar(fill) to be a linearGradient(),
    a radialGradient(), or a pattern().  The viewport(clip) can now
    also be a grob, which defines a clipping path, and there is a new
    viewport(mask) that can also be a grob, which defines a mask.
    These new features are only supported so far on the Cairo-based
    graphics devices and on the pdf() device.
  * (Not Windows.)  A warning is given when a Cairo-based type is
    specified for a png(), jpeg(), tiff() or bmp() device but Cairo
    is unsupported (so type = "Xlib" is tried instead).
  * grSoftVersion() now reports the versions of FreeType and
    FontConfig if they are used directly (not _via_ Pango), as is
    most commonly done on macOS.
  C-LEVEL FACILITIES:
  * The _standalone_ libRmath math library and R's C API now provide
    log1pexp() again as documented, and gain log1mexp().
  INSTALLATION on a UNIX-ALIKE:
  * configure checks for a program pkgconf if program pkg-config is
    not found.  These are now only looked for on the path (like
    almost all other programs) so if needed specify a full path to
    the command in PKG_CONFIG, for example in file config.site.
  * C99 function iswblank is required - it was last seen missing ca
    2003 so the workaround has been removed.
  * There are new configure options --with-internal-iswxxxxx,
  - -with-internal-towlower and --with-internal-wcwidth which allows
    the system functions for wide-character classification,
    case-switching and width (wcwidth and wcswidth) to be replaced by
    internal ones.  The first has long been used on macOS, AIX (and
    Windows) but this enables it to be unselected there and selected
    for other platforms (it is the new default on Solaris).  The
    second is new in this version of R and is selected by default on
    macOS and Solaris.  The third has long been the default and
    remains so as it contains customizations for East Asian
    languages.
    System versions of these functions are often minimally
    implemented (sometimes only for ASCII characters) and may not
    cover the full range of Unicode points: for example Solaris (and
    Windows) only cover the Basic Multilingual Plane.
  * Cairo installations without X11 are more likely to be detected by
    configure, when the file-based Cairo graphics devices will be
    available but not X11(type = "cairo").
  * There is a new configure option --with-static-cairo which is the
    default on macOS.  This should be used when only static cairo
    (and where relevant, Pango) libraries are available.
  * Cairo-based graphics devices on platforms without Pango but with
    FreeType/FontConfig will make use of the latter for font
    selection.
  LINK-TIME OPTIMIZATION on a UNIX-ALIKE:
  * Configuring with flag --enable-lto=R now also uses LTO when
    installing the recommended packages.
  * R CMD INSTALL and R CMD SHLIB have a new flag --use-LTO to use
    LTO when compiling code, for use with R configured with
  - -enable-lto=R.  For R configured with --enable-lto, they have
    the new flag --no-use-LTO.
    Packages can opt in or out of LTO compilation _via_ a UseLTO
    field in the DESCRIPTION file.  (As usual this can be overridden
    by the command-line flags.)
  BUILDING R on Windows:
  * for GCC &gt;= 8, FC_LEN_T is defined in config.h and hence character
    lengths are passed from C to Fortran in _inter alia_ BLAS and
    LAPACK calls.
  * There is a new text file src/gnuwin32/README.compilation, which
    outlines how C/Fortran code compilation is organized and
    documents new features:
  * R can be built with Link-Time Optimization with a suitable
    compiler - doing so with GCC 9.2 showed several
    inconsistencies which have been corrected.
  * There is support for cross-compiling the C and Fortran code
    in R and standard packages on suitable (Linux) platforms.
    This is mainly intended to allow developers to test later
    versions of compilers - for example using GCC 9.2 or 10.x has
    detected issues that GCC 8.3 in Rtools40 does not.
  * There is experimental support for cross-building R packages
    with C, C++ and/or Fortran code.
  * The R installer can now be optionally built to support a single
    architecture (only 64-bit or only 32-bit).
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++14 where
    available (which it is on all currently checked platforms): if
    not (as before) C++11 is used if available otherwise C++ is not
    supported.
    Packages which specify C++11 will still be installed using C++11.
    C++14 compilers may give deprecation warnings, most often for
    std::random_shuffle (deprecated in C++14 and removed in C++17).
    Either specify C++11 (see 'Writing R Extensions') or modernize
    the code and if needed specify C++14.  The latter has been
    supported since R 3.4.0 so the package's DESCRIPTION would need
    to include something like
    Depends: R (&gt;= 3.4)
  PACKAGE INSTALLATION on Windows:
  * R CMD INSTALL and R CMD SHLIB make use of their flag --use-LTO
    when the LTO_OPT make macro is set in file etc/${R_ARCH}/Makeconf
    or in a personal/site Makevars file.  (For details see 'Writing R
    Extensions' SS4.5.)
    This provides a valuable check on code consistency.  It does work
    with GCC 8.3 as in Rtools40, but that does not detect everything
    the CRAN checks with current GCC do.
  PACKAGE INSTALLATION on macOS:
  * The default personal library directory on builds with
  - -enable-aqua (including CRAN builds) now differs by CPU type,
    one of
    ~/Library/R/x86_64/x.y/library
    ~/Library/R/arm64/x.y/library
    This uses the CPU type R (and hence the packages) were built for,
    so when a x86_64 build of R is run under Rosetta emulation on an
    arm64 Mac, the first is used.
  UTILITIES:
  * R CMD check can now scan package functions for bogus return
    statements, which were possibly intended as return() calls (wish
    of PR#17180, patch by Sebastian Meyer). This check can be
    activated via the new environment variable
    _R_CHECK_BOGUS_RETURN_, true for --as-cran.
  * R CMD build omits tarballs and binaries of previous builds from
    the top-level package directory.  (PR#17828, patch by Sebastian
    Meyer.)
  * R CMD check now runs sanity checks on the use of LazyData, for
    example that a data directory is present and that
    LazyDataCompression is not specified without LazyData and has a
    documented value.  For packages with large LazyData databases
    without specifying LazyDataCompression, there is a reference to
    the code given in 'Writing R Extensions' SS1.1.6 to test the
    choice of compression (as in all the CRAN packages tested a
    non-default method was preferred).
  * R CMD build removes LazyData and LazyDataCompression fields from
    the DESCRIPTION file of packages without a data directory.
  ENCODING-RELATED CHANGES:
  * The parser now treats \Unnnnnnnn escapes larger than the upper
    limit for Unicode points (\U10FFFF) as an error as they cannot be
    represented by valid UTF-8.
    Where such escapes are used for outputting non-printable
    (including unassigned) characters, 6 hex digits are used (rather
    than 8 with leading zeros).  For clarity, braces are used, for
    example \U{0effff}.
  * The parser now looks for non-ASCII spaces on Solaris (as
    previously on most other OSes).
  * There are warnings (including from the parser) on the use of
    unpaired surrogate Unicode points such as \uD834.  (These cannot
    be converted to valid UTF-8.)
  * Functions nchar(), tolower(), toupper() and chartr() and those
    using regular expressions have more support for inputs with a
    marked Latin-1 encoding.
  * The character-classification functions used (by default) to
    replace the system iswxxxxx functions on Windows, macOS and AIX
    have been updated to Unicode 13.0.0.
    The character-width tables have been updated to include new
    assignments in Unicode 13.0.0.
  * The code for evaluating default (extended) regular expressions
    now uses the same character-classification functions as the rest
    of R (previously they differed on Windows, macOS and AIX).
  * There is a build-time option to replace the system's
    wide-character wctrans C function by tables shipped with R: use
    configure option --with-internal-towlower or (on Windows)
  - DUSE_RI18N_CASE in CFLAGS when building R.  This may be needed
    to allow tolower() and toupper() to work with Unicode characters
    beyond the Basic Multilingual Plane where not supported by system
    functions (e.g. on Solaris where it is the new default).
  * R is more careful when truncating UTF-8 and other multi-byte
    strings that are too long to be printed, passed to the system or
    libraries or placed into an internal buffer.  Truncation will no
    longer produce incomplete multibyte characters.
  DEPRECATED AND DEFUNCT:
  * Function plclust() from the package stats and
    package.dependencies(), pkgDepends(), getDepList(),
    installFoundDepends(), and vignetteDepends() from package tools
    are defunct.
  * Defunct functions checkNEWS() and readNEWS() from package tools
    and CRAN.packages() from utils have been removed.
  * R CMD config CXXCPP is defunct (it was deprecated in R 3.6.2).
  * parallel::detectCores() drops support for Irix (retired in 2013).
  * The LINPACK argument to chol.default(), chol2inv(),
    solve.default() and svd() has been defunct since R 3.1.0.  It was
    silently ignored up to R 4.0.3 but now gives an error.
  * Subsetting/indexing, such as ddd[*] or ddd$x on a DOTSXP
    (dot-dot-dot) object ddd has been disabled; it worked by accident
    only and was undocumented.
  BUG FIXES:
  * Many more C-level allocations (mainly by malloc and strdup) are
    checked for success with suitable alternative actions.
  * Bug fix for replayPlot(); this was turning off graphics engine
    display list recording if a recorded plot was replayed in the
    same session.  The impact of the bug became visible if resize the
    device after replay OR if attempted another savePlot() after
    replay (empty display list means empty screen on resize or empty
    saved plot).
  * R CMD check etc now warn when a package exports non-existing S4
    classes or methods, also in case of no "methods" presence.
    (Reported by Alex Bertram; reproducible example and patch by
    Sebastian Meyer in PR#16662.)
  * boxplot() now also accepts calls for labels such as ylab, the
    same as plot().  (Reported by Marius Hofert.)
  * The help page for xtabs() now correctly states that addNA is
    setting na.action = na.pass among others.  (Reported as PR#17770
    by Thomas Soeiro.)
  * The R CMD check &lt;pkg&gt; gives a longer and more comprehensible
    message when DESCRIPTION misses dependencies, e.g., in Imports:.
    (Thanks to the contributors of PR#17179.)
  * update.default() now calls the generic update() on the formula to
    work correctly for models with extended formulas.  (As reported
    and suggested by Neal Fultz in PR#17865.)
  * The horizontal position of leaves in a dendrogram is now correct
    also with center = FALSE.  (PR#14938, patch from Sebastian
    Meyer.)
  * all.equal.POSIXt() no longer warns about and subsequently ignores
    inconsistent "tzone" attributes, but describes the difference in
    its return value (PR#17277).  This check can be disabled _via_
    the new argument check.tzone = FALSE as suggested by Sebastian
    Meyer.
  * as.POSIXct() now populates the "tzone" attribute from its tz
    argument when x is a logical vector consisting entirely of NA
    values.
  * x[[2^31]] &lt;- v now works.  (Thanks to the report and patch by
    Suharto Anggono in PR#17330.)
  * In log-scale graphics, axis() ticks and label positions are now
    computed more carefully and symmetrically in their range,
    typically providing _more_ ticks, fulfilling wishes in PR#17936.
    The change really corresponds to an improved axisTicks() (package
    grDevices), potentially influencing grid and lattice, for
    example.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now correct to at
    least five digits where it was catastrophically wrong,
    previously.
  * sum(df) and similar "Summary"- and "Math"-group member functions
    now work for data frames df with logical columns, notably also of
    zero rows.  (Reported to R-devel by Martin "b706".)
  * unsplit() had trouble with tibbles due to unsound use of rep(NA,
    len)-indexing, which should use NA_integer_ (Reported to R-devel
    by Mario Annau.)
  * pnorm(x, log.p = TRUE) underflows to -Inf slightly later.
  * show(&lt;hidden S4 generic&gt;) prints better and without quotes for
    non-hidden S4 generics.
  * read.table() and relatives treated an "NA" column name as missing
    when check.names = FALSE PR#18007.
  * Parsing strings containing UTF-16 surrogate pairs such as
    "\uD834\uDD1E" works better on some (uncommon) platforms.
    sprintf("%X", utf8ToInt("\uD834\uDD1E")) should now give "1D11E"
    on all platforms.
  * identical(x,y) is no longer true for differing DOTSXP objects,
    fixing PR#18032.
  * str() now works correctly for DOTSXP and related exotics, even
    when these are doomed.
    Additionally, it no longer fails for lists with a class and
    "irregular" method definitions such that e.g. lapply(*) will
    necessarily fail, as currently for different igraph objects.
  * Too long lines in environment files (e.g. Renviron) no longer
    crash R. This limit has been increased to 100,000 bytes.
    (PR#18001.)
  * There is a further workaround for FreeType giving incorrect
    italic font faces with cairo-based graphics devices on macOS.
  * add_datalist(*, force = TRUE) (from package tools) now actually
    updates an existing data/datalist file for new content.  (Thanks
    to a report and patch by Sebastian Meyer in PR#18048.)
  * cut.Date() and cut.POSIXt() could produce an empty last interval
    for breaks = "months" or breaks = "years".  (Reported as PR#18053
    by Christopher Carbone.)
  * Detection of the encoding of 'regular' macOS locales such as
    en_US (which is UTF-8) had been broken by a macOS change:
    fortunately these are now rarely used with en_US.UTF-8 being
    preferred.
  * sub() and gsub(pattern, repl, x, *) now keep attributes of x such
    as names() also when pattern is NA (PR#18079).
  * Time differences ("difftime" objects) get a replacement and a
    rep() method to keep "units" consistent.  (Thanks to a report and
    patch by Nicolas Bennett in PR#18066.)
  * The \RdOpts macro, setting defaults for \Sexpr options in an Rd
    file, had been ineffective since R 2.12.0: it now works again.
    (Thanks to a report and patch by Sebastian Meyer in PR#18073.)
  * mclapply and pvec no longer accidentally terminate parallel
    processes started before by mcparallel or related calls in
    package parallel (PR#18078).
  * grep and other functions for evaluating (extended) regular
    expressions handle in Unicode also strings not explicitly flagged
    UTF-8, but flagged native when running in UTF-8 locale.
  * Fixed a crash in fifo implementation on Windows (PR#18031).
  * Binary mode in fifo on Windows is now properly detected from
    argument open (PR#15600, PR#18031).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1622808000">- The line %{__install} -m 755 -d %{_infodir}
  no longer works in TW or Factory.
  But without that line it works everywhere. So this instruction
  was commented out of the spec file.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1628596800">- CHANGES IN R 4.1.1:
  NEW FEATURES:
  * require(pkg, quietly = TRUE) is quieter and in particular does
    not warn if the package is not found.
  DEPRECATED AND DEFUNCT:
  * Use of ftp:// URIs should be regarded as deprecated, with
    on-going support confined to method = "libcurl" and not routinely
    tested.  (Nowadays no major browser supports them.)
  * The non-default method = "internal" is deprecated for http:// and
    ftp:// URIs for both download.file and url.
  * On Windows, method = "wininet" is deprecated for http://,
    https:// and ftp:// URIs for both download.file and url.  (A
    warning is only given for ftp://.)
    For ftp:// URIs the default method is now "libcurl" if available
    (which it is on CRAN builds).
    method = "wininet" remains the default for http:// and https://
    URIs but if libcurl is available, using method = "libcurl" is
    preferred.
  INSTALLATION:
  * make check now works also without a LaTeX installation.  (Thanks
    to Sebastian Meyer's PR#18103.)
  BUG FIXES:
  * make check-devel works again in an R build configured with
  - -without-recommended-packages.
  * qnbinom(p, size, mu) for large size/mu is correct now in a range
    of cases (PR#18095); similarly for the (size, prob)
    parametrization of the negative binomial.  Also qpois() and
    qbinom() are better and or faster for extreme cases.  The
    underlying C code has been modularized and is common to all four
    cases of discrete distributions.
  * gap.axis is now part of the axis() arguments which are passed
    from bxp(), and hence boxplot().  (Thanks to Martin Smith's
    report and suggestions in PR#18109.)
  * .First and .Last can again be set from the site profile.
  * seq.int(from, to, *) and seq.default(..) now work better in large
    range cases where from-to is infinite where the two boundaries
    are finite.
  * all.equal(x,y) now returns TRUE correctly also when several
    entries of abs(x) and abs(y) are close to .Machine$double.xmax,
    the largest finite numeric.
  * model.frame() now clears the object bit when removing the class
    attribute of a value via na.action (PR#18100).
  * charClass() now works with multi-character strings on Windows
    (PR#18104, fixed by Bill Dunlap).
  * encodeString() on Solaris now works again in Latin-1 encoding on
    characters represented differently in UTF-8.  Support for
    surrogate pairs on Solaris has been improved.
  * file.show() on Windows now works with non-ASCII path names
    representable in the current native encoding (PR#18132).
  * Embedded R on Windows can now find R home directory via the
    registry even when installed only for the current user
    (PR#18135).
  * pretty(x) with finite x now returns finite values also in the
    case where the extreme x values are close in size to the maximal
    representable number .Machine$double.xmax.
    Also, it's been tweaked for very small ranges and when a boundary
    is close (or equal) to zero; e.g., pretty(c(0,1e-317)) no longer
    has negative numbers, currently still warning about a very small
    range, and pretty(2^-(1024 - 2^-1/(c(24,10)))) is more accurate.
  * The error message for not finding vignette files when weaving has
    correct file sizes now. (Thanks to Sebastian Meyer's PR#18154.)
  * dnbinom(20, &lt;large&gt;, 1) now correctly gives 0, and similar cases
    are more accurate with underflow precaution.  (Reported by Francisco Vera Alcivar in PR#18072.)</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635163200">- repaired https://bugzilla.suse.com/show_bug.cgi?id=1191380
  (rpmacros now go to rpmmacrodir)
- minor clean-ups in spec file</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635768000">- CHANGES IN R 4.1.2:
  C-LEVEL FACILITIES:
  * The workaround in headers R.h and Rmath.h (using namespace std;)
    for the Oracle Developer Studio compiler is no longer needed now
    C++11 is required so has been removed.  A couple more usages of
    log() (which should have been std::log()) with an int argument
    are reported on Solaris.
  * The undocumented limit of 4095 bytes on messages from the
    S-compatibility macros PROBLEM and MESSAGE is now documented and
    longer messages will be silently truncated rather than
    potentially causing segfaults.
  * If the R_NO_SEGV_HANDLER environment variable is non-empty, the
    signal handler for SEGV/ILL/BUS signals (which offers recovery
    user interface) is not set. This allows more reliable debugging
    of crashes that involve the console.
  DEPRECATED AND DEFUNCT:
  * The legacy S-compatibility macros PROBLEM, MESSAGE, ERROR, WARN,
    WARNING, RECOVER, ... are deprecated and will be hidden in R
    4.2.0. R's native interface of Rf_error and Rf_warning has long
    been preferred.
  BUG FIXES:
  * .mapply(F, dots, .) no longer segfaults when dots is not a list
    and uses match.fun(F) as always documented; reported by Andrew
    Simmons in PR#18164.
  * hist(&lt;Date&gt;, ...) and hist(&lt;POSIXt&gt;, ...)  no longer pass
    arguments for rect() (such as col and density) to axis().
    (Thanks to Sebastian Meyer's PR#18171.)
  * \Sexpr{ch} now preserves Encoding(ch). (Thanks to report and
    patch by Jeroen Ooms in PR#18152.)
  * Setting the RNG to "Marsaglia-Multicarry" e.g., by RNGkind(), now
    warns in more places, thanks to Andr'e Gillibert's report and
    patch in PR#18168.
  * gray(numeric(), alpha=1/2) no longer segfaults, fixing PR#18183,
    reported by Till Krenz.
  * Fixed dnbinom(x, size=&lt;very_small&gt;, .., log=TRUE) regression,
    reported by Martin Morgan.
  * as.Date.POSIXlt(x) now keeps names(x), thanks to Davis Vaughan's
    report and patch in PR#18188.
  * model.response() now strips an "AsIs" class typically, thanks to
    Duncan Murdoch's report and other discussants in PR#18190.
  * try() is considerably faster in case of an error and long call,
    as e.g., from some do.call().  Thanks to Alexander Kaever's
    suggestion posted to R-devel.
  * qqline(y = &lt;object&gt;) such as y=I(.), now works, see also
    PR#18190.
  * Non-integer mgp par() settings are now handled correctly in
    axis() and mtext(), thanks to Mikael Jagan and Duncan Murdoch's
    report and suggestion in PR#18194.
  * formatC(x) returns length zero character() now, rather than ""
    when x is of length zero, as documented, thanks to Davis
    Vaughan's post to R-devel.
  * removeSource(fn) now retains (other) attributes(fn).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1647000000">- CHANGES IN R 4.1.3:
  NEW FEATURES:
  * The default version of Bioconductor has been changed to 3.14.
    (This is used by setRepositories and the menus in GUIs.)
  UTILITIES:
  * R CMD check --as-cran has a workaround for a bug in versions of
    file up to at least 5.41 which mis-identify DBF files last
    changed in 2022 as executables.
  C-LEVEL FACILITIES:
  * The legacy S-compatibility macros SINGLE_* in R_ext/Constants.h
    (included by R.h) are deprecated and will be removed in R 4.2.0.
  BUG FIXES:
  * Initialization of self-starting nls() models with initialization
    functions following the pre-R-4.1.0 API (without the ...
    argument) works again for now, with a deprecation warning.
  * Fixed quoting of ~autodetect~ in Java setting defaults to avoid
    inadvertent user lookup due to leading ~, reported in PR#18231 by
    Harold Gutch.
  * substr(., start, stop) &lt;- v now treats _negative_ stop values
    correctly.  Reported with a patch in PR#18228 by Brodie Gaslam.
  * Subscripting an array x without dimnames by a
    length(dim(x))-column character matrix gave "random" non-sense,
    now an error; reported in PR#18244 by Mikael Jagan.
  * ...names() now matches names(list(...)) closely, fixing PR#18247.
  * all.equal(*, scale = s) now works as intended when length(s) &gt; 1,
    partly thanks to Michael Chirico's PR#18272.
  * print(x) for long vectors x now also works for named atomic
    vectors or lists and prints the correct number when reaching the
    getOption("max.print") limit; partly thanks to a report and
    proposal by Hugh Parsonage to the R-devel list.
  * all.equal(&lt;selfStart&gt;, *) no longer signals a deprecation
    warning.
  * reformulate(*, response=r) gives a helpful error message now when
    length(r) &gt; 1, thanks to Bill Dunlap's PR#18281.
  * Modifying globalCallingHandlers inside withCallingHandlers() now
    works or fails correctly, thanks to Henrik Bengtsson's PR#18257.
  * hist(&lt;Date&gt;, breaks = "days") and hist(&lt;POSIXt&gt;, breaks = "secs")
    no longer fail for inputs of length 1.
  * qbeta(.001, .9, .009) and similar cases now converge correctly
    thanks to Ben Bolker's report in PR#17746.
  * window(x, start, end) no longer wrongly signals "'start' cannot
    be after 'end'", fixing PR#17527 and PR#18291.
  * data() now checks that its (rarely used) list argument is a
    character vector - a couple of packages passed other types and
    gave incorrect results.
  * which() now checks its arr.ind argument is TRUE rather coercing
    to logical and taking the first element - which gave incorrect
    results in package code.
  * model.weights() and model.offset() more carefully extract their
    model components, thanks to Ben Bolker and Tim Taylor's R-devel
    post.
  * list.files(recursive = TRUE) now shows all broken symlinks
    (previously, some of them may have been omitted, PR#18296).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1650628800">- CHANGES IN R 4.2.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * The formula method of aggregate() now matches the generic in
    naming its first argument x (resolving PR#18299 by Thomas
    Soeiro).
    This means that calling aggregate() with a formula as a named
    first argument requires name formula in earlier versions of R and
    name x now, so portable code should not name the argument (code
    in many packages did).
  * Calling &amp;&amp; or || with either argument of length greater than one
    now gives a warning (which it is intended will become an error).
  * Calling if() or while() with a condition of length greater than
    one gives an error rather than a warning.  Consequently,
    environment variable _R_CHECK_LENGTH_1_CONDITION_ no longer has
    any effect.
  * Windows users should consult the WINDOWS section below for some
    profound changes including
  * Support for 32-bit builds has been dropped.
  * UTF-8 locales are used where available.
  * The default locations for the R installation and personal
    library folder have been changed.
    Thanks to Tomas Kalibera for months of work on the Windows port
    for this release.
  NEW FEATURES:
  * matrix(x, n, m) now warns in more cases where length(x) differs
    from n * m, as suggested by Abby Spurdle and Wolfgang Huber in
    Feb 2021 on the R-devel mailing list.
    This warning can be turned into an error by setting environment
    variable _R_CHECK_MATRIX_DATA_ to TRUE: R CMD check --as-cran
    does so unless it is already set.
  * Function file_test() in package utils gains tests for symlinks,
    readability and writability.
  * capabilities("libxml") is now false.
    The description of capabilities("http/ftp") now reflects that it
    refers to the default method, no longer the internal one.
  * simplify2array() gains an except argument for controlling the
    exceptions used by sapply().
  * Environment variables R_LIBS_USER and R_LIBS_SITE are both now
    set to the R system default if unset or empty, and can be set to
    NULL to indicate an empty list of user or site library
    directories.
  * The warning for axis()(-like) calls in cases of relatively small
    ranges (typically in log-scale situations) is slightly improved
    _and_ suppressed from explicit calls to .axisPars() as has always
    been the intention.
  * The contrasts setter function `contrasts&lt;-` gains an explicit
    default how.many = NULL rather than just using missing(how.many).
  * grid.pretty() gains a new optional argument n = 5.
  * There is a new function .pretty() with option bounds as a
    technical-utility version of pretty().  It and pretty() gain a
    new argument f.min with a better than back-compatible default.
  * Function grDevices::axisTicks() and related functions such as
    graphics::axis() work better, notably for the log scale; partly
    because of the pretty() improvements, but also because care is
    taken e.g., when ylim is finite but diff(ylim) is infinite.
  * nclass.FD() gains a digits option.
  * The R Mathlib internal C function bd0() (called indirectly from a
    dozen probability density and distribution functions such as
    dpois(), dbinom(), dgamma(), pgamma() _etc_) has been
    complemented by a more sophisticated and (mostly) more accurate C
    function ebd0(), currently called only by internal dpois_raw()
    improving accuracy for R level dpois() and potentially others
    calling it such as dnbinom(), dgamma() or pgamma().  (Thanks to
    Morten Welinder's PR#15628.)
  * write.ftable() gains sep = " " argument as suggested by Thomas
    Soeiro.
  * The names of the locale categories supported by R's
    Sys.getlocale() and Sys.setlocale() are now provided by variable
    .LC.categories in the base namespace.
  * The Date and POSIXt methods for hist() and the histogram method
    for plot() now also use the new default col = "lightgray" in
    consistency with the corresponding change to hist()'s default for
    R 4.0.0.
  * hist.default() gains new fuzz argument, and the histogram plot
    method no longer uses fractional axis ticks when displaying
    counts ("Frequency").
  * mapply() and hence Map() now also obey the "max-or-0-if-any"
    recycling rule, such that, e.g., Map(`+`, 1:3, 1[0]) is valid
    now.
  * as.character(&lt;obj&gt;) for "hexmode" or "octmode" objects now
    fulfils the important basic rule as.character(x)[j] ===
    as.character(x[j]).
  * The set utility functions, notably intersect() have been tweaked
    to be more consistent and symmetric in their two set arguments,
    also preserving a common mode.
  * substr(ch, start,end) &lt;- new now e.g., preserves names(ch); ditto
    for substring(), thanks to a patch from Brodie Gaslam.
  * plot(&lt;lm&gt;) gains a extend.ylim.f argument, in partial response to
    PR#15285; further PR#17784 is fixed thanks to several
    contributors and a patch by Elin Waring.  The Cook's dist
    contours get customizable via cook.col and cook.lty with a
    different default color and their legend is nicer by default and
    customizable via cook.legendChanges.
  * Attempting to subset an object that is not subsettable now
    signals an error of class notSubsettableError. The
    non-subsettable object is contained in the object field of the
    error condition.
  * Subscript-out-of-bounds errors are now signaled as errors of
    class subscriptOutOfBoundsError.
  * Stack-overflow errors are now signaled as errors inheriting from
    class stackOverflowError. See ?stackOverflowError for more
    details.
  * New partly experimental Sys.setLanguage() utility, solving the
    main problem of PR#18055.
  * gettext() and gettextf() get a new option trim = TRUE which when
    set to false allows translations for strings such as "Execution
    halted\n" typical for C code.
  * An experimental implementation of hash tables is now available.
    See ?hashtab for more details.
  * identical() gains a extptr.as.ref argument for requesting that
    external pointer objects be compared as reference objects.
  * reorder() gets an argument decreasing which it passes to sort()
    for level creation; based on the wish and patch by Thomas Soeiro
    in PR#18243.
  * as.vector() gains a data.frame method which returns a simple
    named list, also clearing a long standing 'FIXME' to enable
    as.vector(&lt;data.frame&gt;, mode="list").  This breaks code relying
    on as.vector(&lt;data.frame&gt;) to return the unchanged data frame.
  * legend() is now vectorized for arguments cex, x.intersp, and
    text.width.  The latter can now also be specified as a vector
    (one element for each column of the legend) or as NA for
    computing a proper column wise maximum value of strwidth(legend).
    The argument y.intersp can be specified as a vector with one
    entry for each row of the legend.
    legend() also gains new arguments title.cex and title.font.
    Thanks to Swetlana Herbrandt.
  * Deparsing no longer remaps attribute names dim, dimnames, levels,
    names and tsp to historical S-compatible names (which structure()
    maps back).
  * sample() and sample.int() have additional sanity checks on their
    size and n arguments.
    all.equal.numeric() gains a sanity check on its tolerance
    argument - calling all.equal(a, b, c) for three numeric vectors
    is a surprisingly common error.
    mean(na.rm =), rank(na.last =), barplot(legend.text =),
    boxplot(), contour(drawlabels =), polygon(border =) and
    methods::is(class2 =) have more robust sanity checks on their
    arguments.
    R CMD Rd2pdf (used by R CMD check) has a more robust sanity check
    on the format of \alias{} commands.
  * psigamma(x, deriv) for negative x now also works for deriv = 4
    and 5; their underlying C level dpsifn() is documented in
    'Writing R Extensions'.
  * The HTML help system now uses HTML5 (wish of PR#18149).
  * ks.test() now provides exact p-values also with ties and MC
    p-values in the two-sample (Smirnov) case.  By Torsten Hothorn.
  * ks.test() gains a formula interface, with y ~ 1 for the
    one-sample (Kolmogorov) test and y ~ group for the two-sample
    (Smirnov) test.  Contributed by Torsten Hothorn.
  * The return value from ks.test() now has class c("ks.test",
    "htest") - packages using try() need to take care to use
    inherits() and not == on the class.
  * New functions psmirnov(), qsmirnov() and rsmirnov() in package
    stats implementing the asymptotic and exact distributions of the
    two-sample Smirnov statistic.
  * iconv() now allows sub = "c99" to use C99-style escapes for UTF-8
    inputs which cannot be converted to encoding to.
  * In a forward pipe |&gt; expression it is now possible to use a named
    argument with the placeholder _ in the rhs call to specify where
    the lhs is to be inserted.  The placeholder can only appear once
    on the rhs.
  * The included LAPACK sources have been updated to version 3.10.0,
    except for the four Fortran 77 routines which 3.10.0 has
    re-implemented in Fortran 90 (where the older versions have been
    retained as the R build process does not support Fortran 90).
  * path.expand() and most other uses of tilde expansion now warn if
    a path would be too long if expanded.  (An exception is
    file.exists(), which silently returns false.)
  * trunc(&lt;Date&gt;, *) now supports units = "months" or "years" for
    consistency with the POSIXt method, thanks to Dirk Eddelbuettel's
    proposal in PR#18099.
  * list2DF() now checks that its arguments are of the same length,
    rather than use recycling.
  * The HTML help system has several new features: LaTeX-like math
    can be typeset using either KaTeX or MathJax, usage and example
    code is highlighted using Prism, and for dynamic help the output
    of examples and demos can be shown within the browser if the
    knitr package is installed. These features can be disabled by
    setting the environment variable _R_HELP_ENABLE_ENHANCED_HTML_ to
    a false value.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 15
    and so packages that provide graphics devices should be
    reinstalled.
  * The grid package now allows the user to specify a "vector" of
    pattern fills.  The fill argument to gpar() accepts a list of
    gradients and/or patterns and the functions linearGradient(),
    radialGradient(), and pattern() have a new group argument.
    Points grobs (data symbols) can now also have a pattern fill.
    The grobCoords() function now returns a more informative and
    complex result.
  * The grid package has new functions for drawing isolated groups:
    grid.group(), grid.define(), and grid.use().  These functions add
    compositing operators and affine transformations to R's graphics
    capabilities.
    The grid package also has new functions for stroking and filling
    paths: grid.stroke(), grid.fill(), and grid.fillStroke().
    A new function as.path() allows the user to specify the fill rule
    for a path that is to be used for clipping, stroking, or filling;
    available options are "winding" and "evenodd".  A new function
    as.mask() allows the user to specify the type of a mask;
    available options are "alpha" and "luminance".
    These new features are only supported so far (at most) on the
    Cairo-based graphics devices and on the pdf() device.
  * dev.capabilities() reports on device support for the new
    features.
  * par() now warns about unnamed non-character arguments to prevent
    misuse such as {usr &lt;- par("usr"); par(usr)}.
  INSTALLATION:
  * Facilities for accessing ftp:// sites are no longer tested
    (except _pro tem_ for curlGetHeaders()) as modern browsers have
    removed support.
  * R can now be built with DEFS = -DSTRICT_R_HEADERS .
  PACKAGE INSTALLATION:
  * R CMD INSTALL no longer tangles vignettes. This completes an R
    CMD build change in R 3.0.0 and affects packages built before R
    3.0.2. Such packages should be re-made with R CMD build to have
    the tangled R code of vignettes shipped with the tarball.
  * USE_FC_LEN_T will become the default: this uses the correct
    prototypes for Fortran BLAS/LAPACK routines called from C/C++,
    and requires adjustment of most such calls - see 'Writing R
    Extensions' SS6.6.2.  (This has been supported since R 3.6.2.)
  * Package installation speed for packages installed with
    keep.source has been improved. This resolve the issue reported by
    Ofek Shilon in PR#18236.
  UTILITIES:
  * R CMD check can optionally report files/directories left behind
    in home, /tmp (even though TMPDIR is set) and other directories.
    See the "R Internals" manual for details.
  * R CMD check now reports byte-compilation errors during
    installation.  These are not usually fatal but may result in
    parts of the package not being byte-compiled.
  * _R_CHECK_DEPENDS_ONLY_ can be applied selectively to examples,
    tests and/or vignettes in R CMD check: see the "R Internals"
    manual.
  * _R_CHECK_SRC_MINUS_W_IMPLICIT_ now defaults to true: recent
    versions of Apple clang on macOS have made implicit function
    declarations in C into a compilation error.
  * R CMD check --as-cran makes use of the environment variable
    AUTORECONF.  See the "R Internals" manual SS8 for further details.
  * R CMD check --use-valgrind also uses valgrind when re-building
    vignettes as some non-Sweave vignettes unhelpfully comment out
    all their code when R CMD check runs vignettes.
  * Errors in re-building vignettes (unless there are LaTeX errors)
    are reported by R CMD check as ERROR rather than WARNING when
    running vignettes has been skipped (as it frequently is in CRAN
    checks and by --as-cran).
  * R CMD Rd2pdf gains a --quiet option that is used by R CMD build
    when building the PDF package manual.
  * R CMD Rd2pdf now always runs LaTeX in batch mode, consistent with
    Texinfo &gt;= 6.7. The --batch option is ignored.
  * R CMD build and R CMD check now include the Rd file name and line
    numbers in the error message of an \Sexpr evaluation failure.
  * For packages using the \doi Rd macro (now an install-time \Sexpr)
    but no other dynamic Rd content, R CMD build now produces a
    smaller tarball and is considerably faster - skipping temporary
    package installation.
  C-LEVEL FACILITIES:
  * The non-API header R_ext/R-ftp-http.h is no longer provided, as
    the entry points it covered are now all defunct.
  * A number of non-API declarations and macro definitions have been
    moved from the installed header Rinternals.h to the internal
    header Defn.h. Packages that only use entry points and
    definitions documented to be part of the API as specified in
    'Writing R Extensions' SS6 should not be affected.
  * The macro USE_RINTERNALS no longer has any effect when compiling
    package code.  Packages which also use R_NO_REMAP will need to
    ensure that the remapped names are used for calls to API
    functions that were formerly also made available as macros.
  * The deprecated legacy S-compatibility macros PROBLEM, MESSAGE,
    ERROR, WARN, WARNING, RECOVER, ... are no longer defined in
    R_exts/RS.h (included by R.h).  Replace these by calls to
    Rf_error and Rf_warning (defined in header R_ext/Error.h included
    by R.h).
    Header R_ext/RS.h no longer includes R_ext/Error.h.
  * Header R_ext/Constants.h (included by R.h) when included from C++
    now includes the C++ header cfloat rather than the C header
    float.h (now possible as C++11 is required).
  * The legacy S-compatibility macros DOUBLE_* in R_ext/Constants.h
    (included by R.h) are deprecated.
  * The deprecated S-compatibility macros SINGLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * R_Calloc, R_Free and R_Realloc are preferred to their unprefixed
    forms and error messages now use the prefix. These forms were
    introduced in R 3.4.0 and are available even when
    STRICT_R_HEADERS is defined.
  * rmultinom has been documented in 'Writing R Extensions' SS6 so is
    now part of the R API.
  * Similarly, Rtanpi, called from R level tanpi() is now part of the
    R API.
  * The long-deprecated, undocumented and non-API entry point call_R
    is no longer declared in R_ext/RS.h (included by R.h).
  * The header S.h which has been unsupported since Jan 2016 has been
    removed.  Use R.h instead.
  DEPRECATED AND DEFUNCT:
  * The (non-default and deprecated) method = "internal" for
    download.file() and url() no longer supports http:// nor ftp://
    URIs.  (It is used only for file:// URIs.)
    On Windows, download.file(method = "wininet") no longer supports
    ftp:// URIs.  (It is no longer the default method, which is
    "libcurl" and does.)
    On Windows, the deprecated method = "wininet" now gives a warning
    for http:// and https:// URIs for both download.file() and url().
    (It is no longer the default method.)
  * On Windows, the command-line option --max-mem-size and
    environment variable R_MAX_MEM_SIZE are defunct.  The memory
    allocation limit was important for 32-bit builds, but these are
    no longer supported.
  * default.stringsAsFactors() is now formally deprecated, where that
    was only mentioned on its regular help page, previously.  So it
    now gives a warning if called.
  * unix.time() is defunct now; it had been deprecated since R 3.4.0.
  BUG FIXES:
  * Setting digits = 0 in format(), print.default() (and hence
    typically print()) or options() is again invalid.  Its behaviour
    was platform-dependent, and it is unclear what "zero significant
    digits" should mean (PR#18098).
  * Messages from C code in the cairo section of package grDevices
    are now also offered for translation, thanks to Michael Chirico's
    PR#18123.
  * mean(x) with finite x now is finite also without "long.double"
    capability.
  * R CMD Rd2pdf no longer leaves an empty build directory behind
    when it aborts due to an already existing output file.  (Thanks
    to Sebastian Meyer's PR#18141.)
  * density(x, weights = w, na.rm = TRUE) when anyNA(x) is true, now
    removes weights "in parallel" to x, fixing PR#18151, reported by
    Matthias Gondan.  Additionally, it gets a subdensity option.
  * Conversion of \Sexpr[]{&lt;expR&gt;} to LaTeX or HTML no longer
    produces long blocks of empty lines when &lt;expR&gt; itself contains
    several lines all producing empty output.  Thanks to a report and
    patch by Ivan Krylov posted to R-devel.
  * R CMD build no longer fails if a package vignette uses child
    documents and inst/doc exists.  (Thanks to Sebastian Meyer's
    PR#18156.)
  * When an R documentation ('help' source) file man/foo.Rd in a
    package has \donttest{..} examples with a syntax error, it is now
    signalled as ERROR and with correct line numbers relating to the
  * -Ex.R file, thanks to Duncan Murdoch and Sebastian Meyer's
    reports and patch proposals in PR#17501.
  * Improved determination of the correct translation domain in
    non-base packages, addressing the combination of PR#18092 and
    PR#17998 (#c6) with reports and _augmented_ patch #2904 by
    Suharto Anggono.
    Note that "R-base" is no longer the default domain e.g., for
    top-level calls to gettext(); rather translation needs explicit
    domain = * specification in such cases.
  * identical(attrib.as.set=FALSE) now works correctly with data
    frames with default row names (Thanks to Charlie Gao's PR#18179).
  * txtProgressBar() now enforces a non-zero width for argument char,
    without which no progress can be visible.
  * dimnames(table(d)) is more consistent in the case where d is a
    list with a single component, thanks to Thomas Soeiro's report to
    R-devel.
    Further, table(d1, d2) now gives an error when d1 and d2 are data
    frames as suggested by Thomas in PR#18224.
  * Fix for drawing semi-transparent lines and fills on the native
    Windows graphics device (PR#18219 and PR#16694).  Thanks to Nick
    Ray for helpful diagnosis on Bugzilla.
  * The deparser now wraps sub-expressions such as if(A) ..  with
    parentheses when needed; thanks to Duncan Murdoch's PR#18232 and
    Lionel Henry's patches there.
  * remove.packages() no longer tries to uninstall Priority: base
    packages, thanks to a report and suggestions by Colin Fay in
    PR#18227.
  * win.metafile() now has xpinch and ypinch arguments so that the
    user can override Windows' (potentially wrong) guess at device
    dimensions.
  * x[i] and x[[i]] for non-integer i should now behave in all cases
    as always documented: the index used is equivalent to
    as.integer(i) unless that would overflow where trunc(i) is used
    instead; thanks to Suharto Anggono's report and patch proposals
    in PR#17977.
  * asOneSidedFormula() now associates the resulting formula with the
    global environment rather than the evaluation environment created
    for the call.
  * &lt;bibentry&gt;$name now matches the field name case-insensitively,
    consistent with bibentry() creation and the replacement method.
  * cbind() failed to detect some length mismatches with a mixture of
    time-series and non-time-series inputs.
  * The default LaTeX style file Sweave.sty used by the RweaveLatex
    driver no longer loads the obsolete ae package; thanks to a
    report by Thomas Soeiro in PR#18271.  Furthermore, it now skips
    \usepackage[T1]{fontenc} for engines other than pdfTeX (if
    detected) or if the new [nofontenc] option is used.
  * smooth.spline() now stores its logical cv argument more safely,
    fixing a rare bug when printing, and also stores n.
  * smooth.spline(x,y,*) now computes the cv.crit statistic
    correctly, also when is.unsorted(x), fixing PR#18294.
  * The data.frame method of rbind() now warns when binding
    not-wholly-recycling vectors, by analogy to the default method
    (for matrices).
  * setAs() finds the correct class for name to when multiple
    packages define a class with that name. Thanks to Gabor Csardi
    for the report.
  * Fix for detaching a package when two classes of the same name are
    present in method signatures for the same generic. Thanks to
    Gabor Csardi for the report.
  * match.arg("", c("", "a", "B")) gives a better error message, in
    part from PR#17959, thanks to Elin Waring.
  * R CMD Sweave --clean no longer removes pre-existing files or
    subdirectories (PR#18242).
  * The quartz() device no longer splits polylines into subpaths.
    That has caused narrowly-spaced lines with many points to always
    look solid even when dashed line type was used due to dash phase
    restarts.
  * Deparsing constructs such as quote(1 + `!`(2) + 3) works again as
    before R 3.5.0, thanks to the report and patch in PR#18284 by
    Suharto Anggono.
  * as.list(f) for a factor f now keeps names(f), fixing PR#18309.
  * qbeta(.001, .9, .009) and analogous qf() calls now return a
    correct value instead of NaN or wrongly 1, all with a warning;
    thanks to the report by Ludger Goeminne in PR#18302.
  * plot.lm() failed to produce the plot of residuals vs.  factor
    levels (i.e., which=5 when leverages are constant) for models
    with character predictors (PR#17840).
  * interaction.plot(..., xtick = TRUE) misplaced the x-axis line
    (PR#18305).
  * Not strictly fixing a bug, format()ing and print()ing of
    non-finite Date and POSIXt values NaN and +/-Inf no longer show
    as NA but the respective string, e.g., Inf, for consistency with
    numeric vector's behaviour, fulfilling the wish of PR#18308.
  * R CMD check no longer runs test scripts generated from
    corresponding .Rin files twice and now signals an ERROR if
    processing an .Rin script fails.
  * tools::Rd2txt() used for plain-text help pages now renders \hrefs
    (if tools::Rd2txt_options(showURLs = TRUE)) and \urls with
    percent-encoding and standards-compliant delimiting style (angle
    brackets and no URL: prefix).  \email is now rendered with a
    mailto: prefix.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1655985600">- CHANGES IN R 4.2.1:
  NEW FEATURES:
  * New function utils::findCRANmirror() to find out if a CRAN mirror
    has been selected, otherwise fallback to the main site.  This
    behaves in the same way as tools::CRAN_package_db() and is
    intended for packages wishing to access CRAN for purposes other
    than installing packages.
    The need for this was shown by a day when the main CRAN website
    was offline and a dozen or so packages which had its URL
    hardcoded failed their checks.
  INSTALLATION on a UNIX-ALIKE:
  * The libraries searched for by --with-blas (without a value) now
    include BLIS (after OpenBLAS but before ATLAS).  And on macOS,
    the Accelerate framework (after ATLAS).  (This is patterned after
    the AX_BLAS macro from the Autoconf Archive.)
  * The included LAPACK sources have been updated to 3.10.1.
  UTILITIES:
  * The (full path to) the command tidy to be used for HTML
    validation can be set by environment variable R_TIDYCMD.
  * Setting environment variable _R_CHECK_RD_VALIDATE_RD2HTML_ to a
    false value will override R CMD check --as-cran and turn off HTML
    validation.  This provides a way to circumvent a problematic
    tidy.
    The 2006 version that ships with macOS is always skipped.
  C-LEVEL FACILITIES:
  * The undocumented legacy declarations of Sint, Sfloat, SINT_MAX
    and SINT_MIN in header R.h are deprecated.
  BUG FIXES:
  * fisher.test(d) no longer segfaults for "large" d; fixing PR#18336
    by preventing/detecting an integer overflow reliably.
  * tar(., files=*) now produces correctly the warning about invalid
    uid or gid of files, fixing PR#18344, reported by Martin Morgan.
  * tk_choose.files() with multi = FALSE misbehaved on paths
    containing spaces (PR#18334) (regression introduced in R 4.0.0).
  * sort(x, partial = ind, *) now works correctly notably for the
    non-default na.last = FALSE or TRUE, fixing PR#18335 reported by
    James Edwards.
  * Environment variable _R_CHECK_XREFS_REPOSITORIES_ is only used
    for checking .Rd cross-references in R CMD check (as documented)
    and not for other uses looking for a CRAN mirror.
  * The search for a CRAN mirror when checking packages now uses
    getOption("repos") if that specifies a CRAN mirror, even when it
    does not also specify all three Bioconductor repositories (as was
    previously required).
  * The HTML code generated by tools::Rd2HTML() has been improved to
    pass tidy 5.8.0.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1667217600">- CHANGES IN R 4.2.2:
  NEW FEATURES:
  * tools::Rdiff(useDiff = TRUE) checks for the presence of an
    external diff command and switches to useDiff = FALSE if none is
    found.  This allows R CMD Rdiff to always work.
  * On Windows, environment variable R_LIBCURL_SSL_REVOKE_BEST_EFFORT
    can be used to switch to only 'best-effort' SSL certificate
    revocation checks with the default "libcurl" download method.
    This reduces security, but may be needed for downloads to work
    with MITM proxies (PR#18379).
  * (macOS) The run-time check for libraries from XQuartz for X11 and
    Tcl/Tk no longer uses otool from the Apple Developer Tools
    (PR#18400).
  * The LaTeX style for producing the PDF manuals, Rd.sty, now loads
    the standard amsmath, amsfonts and amssymb packages for greater
    coverage of math commands in the Rd \eqn and \deqn macros.  The
    \mathscr LaTeX command is also provided (via the mathrsfs
    package, if available, or the amsfonts bundle otherwise),
    fulfilling the wish of PR#18398.
  * (Windows) The default format of readClipboard() and
    writeClipboard() has been changed to 13 (CF_UNICODETEXT).
  INSTALLATION on a UNIX-ALIKE:
  * The PDF manuals (if built) can be compacted by the new target
    make compact-pdf (at the top level or in directory doc/manual).
  * There is now configure support for LLVM clang 15 on Linux, which
    defaults to position-independent (PIE) executables whereas
    gfortran does not.
  * Many small changes to ease compilation (and suppress warnings)
    with LLVM clang 15.
  BUG FIXES:
  * Rscript -e would fail if stdin were closed (Reported by Henrik
    Bengtsson.)
  * qt(*, log.p=TRUE) in outer tails no longer produces NaN in its
    final steps, thus fixing PR#18360.
  * tools::Rd2latex() now escapes hashes and ampersands when writing
    URLs, fixing LaTeX errors with such URLs in \tabular.
  * When isGeneric(f, fdef=*) is used with mismatching names, the
    warning is better understandable; reported (with fix) in PR#18370
    by Gabe Becker.
  * poly(x, n) now works again (and is now documented) when x is a
    "Date" or "POSIXct" object, or of another class while fulfilling
    mode(x) == "numeric".  This also enables poly(x, *, raw=TRUE) for
    such variables.  Reported by Michael Chirico to R-devel.
  * write.table(), write.csv() and write.csv2() restore their
    numerical precision (internal equivalent of digits = 15) after an
    interrupt (PR#18384).
  * One can now read also byte FF from a clipboard connection
    (PR#18385).
  * source("") and source(character()) now give more helpful error
    messages.
  * R CMD check --as-cran set _R_CHECK_TIMINGS_ too late to have the
    intended effect.
  * as.POSIXlt(x) now also works with very large dates x, fixing
    PR#18401 reported by Hannes M"uhleisen.
  * Files can now be extracted even from very large zip archives
    (PR#18390, thanks to Martin Jakt).
  * Non-finite objects of class "POSIXlt" are now correctly coerced
    to classes "Date" and "POSIXct"; following up on the extension to
    format() them correctly.
  * Added methods for is.finite(), is.infinite() and is.nan() for
    "POSIXlt" date-time objects.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1678881600">- CHANGES IN R 4.2.3:
  C-LEVEL FACILITIES:
  * The definition of DL_FUNC in R_ext/Rdynload.h has been changed to
    be fully C-compliant.  This means that functions loaded _via_ for
    example R_GetCCallable need to be cast to an appropriate type if
    they have any arguments.
  * .Machine has a new element sizeof.time_t to identify old systems
    with a 32-bit type and hence a limited range of date-times (and
    limited support for dates millions of years from present).
  PACKAGE INSTALLATION:
  * (Windows) The default C++ standard had accidentally been left at
    C++11 when it was changed to C++14 on Unix.
  BUG FIXES:
  * As "POSIXlt" objects may be "partially filled" and their list
    components meant to be recycled, length() now is the length of
    the longest component.
  * as.POSIXlt.Date() could underflow for dates in the far past (more
    than half a million years BCE).
  * as.Date.POSIXlt(x) would return "1970-01-01" instead of NA in R
    4.2.2, e.g., for
    x &lt;- as.POSIXlt(c("2019-01-30","2001-1-1"))
    x$mon &lt;- c(0L, NA); as.Date(x)
  * R CMD check failed to apply enabled _R_CHECK_SUGGESTS_ONLY_ to
    examples and vignettes (regression in R 4.2.0).
  * R CMD check did not re-build vignettes in separate processes by
    default (regression in R 4.2.0).
  * Running examples from HTML documentation now restores previous
    knitr settings and options (PR#18420).
  * Quartz: fonts are now located using Core Graphics API instead of
    deprecated ATS which is no longer supported in the macOS 13 SDK
    (PR#18426).  This also addresses an issue where the currently
    used font in the Quartz device context was not correctly
    retained.
  * (Windows) Math symbols in text drawing functions are again
    rendered correctly (PR#18440).  This fixes a regression in R
    4.2.1 caused by a fix in PR#18382 which uncovered an issue in
    GraphApp due to which the symbol charset was not used with TT
    Symbol font face.
  * (Windows) Installing a package with a src/Makefile.{win,ucrt}
    file includes ~/.R/Makevars.win64 in the search for user
    makevars, as documented in "R Installation and Administration"
    and done for packages with a src/Makevars.{win,ucrt} file.
  * format(&lt;POSIXlt_w/_unbalanced_sec&gt;, "....%OS&lt;n&gt;") with n &gt; 0 no
    longer accidentally uses the unbalanced seconds, thanks to
    Suharto Anggono's report (including patch) in PR#18448.
  * solve.default(a, b) works around issues with some versions of
    LAPACK when a contains NA or NaN values.
  * When UseMethod() cannot dispatch, it no longer segfaults
    producing the error message in case of a long class(), thanks to
    Joris Vankerschaver's report (including patch) in PR#18447.
  * When example(foo, ..) produces graphics on an interactive device
    it needs to open itself, it now leaves devAskNewPage() unchanged
    even when it was FALSE, thus fixing a 14 years old '&lt;FIXME&gt;'.
  * packageDescription() again catches errors from encoding
    conversions. This also fixes broken packageVersion() in C locale
    on systems where iconv does not support transliteration.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1681128000">- add patch to build with libcurl &gt;= 8</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1682078400">- CHANGES IN R 4.3.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Calling &amp;&amp; or || with LHS or (if evaluated) RHS of length greater
    than one is now always an error, with a report of the form
    'length = 4' in coercion to 'logical(1)'
    Environment variable _R_CHECK_LENGTH_1_LOGIC2_ no longer has any
    effect.
  NEW FEATURES:
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.10.1.  (This caused some platform-dependent
    changes to package check output.)  And then to the sources from
    LAPACK version 3.11.0 (with changes only to double complex
    subroutines).
  * The included LAPACK sources have been updated to include the four
    Fortran 90 routines rather than their Fortran 77 predecessors.
    This may give some different signs in SVDs or
    eigendecompositions..  (This completes the transition to LAPACK
    3.10.x begun in R 4.2.0.)
  * The LAPACK sources have been updated to version 3.11.0.  (No new
    subroutines have been added, so this almost entirely bug fixes:
    Those fixes do affect some computations with NaNs, including R's
    NA.)
  * The parser now signals _classed_ errors, notably in case of the
    pipe operator |&gt;.  The error object and message now give line and
    column numbers, mostly as proposed and provided by Duncan Murdoch
    in PR#18328.
  * toeplitz() is now generalized for asymmetric cases, with a
    toeplitz2() variant.
  * xy.coords() and xyz.coords() and consequently, e.g., plot(x,y,
    log = "y") now signal a _classed_ warning about negative values
    of y (where log(.) is NA).  Such a warning can be specifically
    suppressed or caught otherwise.
  * Regular expression functions now check more thoroughly whether
    their inputs are valid strings (in their encoding, e.g. in
    UTF-8).
  * The performance of grep(), sub(), gsub() and strsplit() has been
    improved, particularly with perl = TRUE and fixed = TRUE.  Use of
    useBytes = TRUE for performance reasons should no longer be
    needed and is discouraged: it may lead to incorrect results.
  * apropos() gains an argument dot_internals which is used by the
    completion (help(rcompgen)) engine to also see base internals
    such as .POSIXct().
  * Support in tools::Rdiff() for comparing uncompressed PDF files is
    further reduced - see its help page.
  * qqplot(x, y, ...) gains conf.level and conf.args arguments for
    computing and plotting a confidence band for the treatment
    function transforming the distribution of x into the distribution
    of y (Switzer, 1976, _Biometrika_). Contributed by Torsten
    Hothorn.
  * Performance of package_dependencies() has been improved for cases
    when the number of dependencies is large.
  * Strings newly created by gsub(), sub() and strsplit(), when any
    of the inputs is marked as "bytes", are also marked as "bytes".
    This reduces the risk of creating invalid strings and accidental
    substitution of bytes deemed invalid.
  * Support for readLines(encoding = "bytes") has been added to allow
    processing special text files byte-by-byte, without creating
    invalid strings.
  * iconv(from = "") now takes into account any declared encoding of
    the input elements and uses it in preference to the native
    encoding.  This reduces the risk of accidental creation of
    invalid strings, particularly when different elements of the
    input have different encoding (including "bytes").
  * Package repositories in getOption("repos") are now initialized
    from the repositories file when utils is loaded (if not already
    set, e.g., in .Rprofile).  (From a report and patch proposal by
    Gabriel Becker in PR#18405.)
  * compactPDF() gets a verbose option.
  * type.convert() and hence read.table() get new option tryLogical =
    TRUE with back compatible default.  When set to false, converts
    "F" or "T" columns to character.
  * Added new unit prefixes "R" and "Q" for abbreviating
    (unrealistically large) sizes beyond 10^{27} in standard = "SI",
    thanks to Henrik Bengtsson's PR#18435.
  * as.data.frame()'s default method now also works fine with atomic
    objects inheriting from classes such as "roman", "octmode" and
    "hexmode", such fulfilling the wish of PR#18421, by Benjamin
    Feakins.
  * The as.data.frame.vector() utility now errors for wrong-length
    row.names.  It warned for almost six years, with "Will be an
    error!".
  * sessionInfo() now also contains La_version() and reports codepage
    and timezone when relevant, in both print() and toLatex() methods
    which also get new option tzone for displaying timezone
    information when locale = FALSE.
  * New function R_compiled_by() reports the C and Fortran compilers
    used to build R, if known.
  * predict(&lt;lm&gt;, newdata = *) no longer unnecessarily creates an
    offset of all 0s.
  * solve() for complex inputs now uses argument tol and by default
    checks for 'computational singularity' (as it long has done for
    numeric inputs).
  * predict(&lt;rank-deficient lm&gt;, newdata=*) now obeys a new argument
    rankdeficient, with new default "warnif", warning only if there
    are non-estimable cases in newdata.  Other options include
    rankdeficient = "NA", predicting NA for non-estimable newdata
    cases.  This addresses PR#15072 by Russ Lenth and is based on his
    original proposal and discussions in PR#16158 also by David Firth
    and Elin Waring.  Still somewhat experimental.
  * Rgui console implementation now works better with the NVDA screen
    reader when the full blinking cursor is selected.  The underlying
    improvements in cursor handling may help also other screen
    readers on Windows.
  * The drop-field control in GraphApp can now be left with the TAB
    key and all controls can be navigated in the reverse order using
    the Shift+TAB key, improving accessibility of the Rgui
    configuration editor.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now fully accurate
    (instead of to "only" minimally five digits).
  * demo(error.catching) now also shows off withWarnings() and
    tryCatchWEMs().
  * As an experimental feature the placeholder _ can now also be used
    in the rhs of a forward pipe |&gt; expression as the first argument
    in an extraction call, such as _$coef. More generally, it can be
    used as the head of a chain of extractions, such as _$coef[[2]].
  * Spaces in the environment variable used to choose the R session's
    temporary directory (TMPDIR, TMP and TEMP are tried in turn) are
    now fatal.  (On Windows the 'short path' version of the path is
    tried and used if that does not contain a space.)
  * all.equal.numeric() gets a new optional switch giveErr to return
    the numeric error as attribute.  Relatedly,
    stopifnot(all.equal&lt;some&gt;(a, b, ..)) is as "smart" now, as
    stopifnot(all.equal(....)) has been already, thus allowing
    customized all.equal&lt;Some&gt;() wrappers.
  * R on Windows is now able to work with path names longer than 260
    characters when these are enabled in the system (requires at
    least Windows 10 version 1607).  Packages should be updated to
    work with long paths as well, instead of assuming PATH_MAX to be
    the maximum length.  Custom front-ends and applications embedding
    R need to update their manifests if they wish to allow this
    feature.  See
    &lt;https://blog.r-project.org/2023/03/07/path-length-limit-on-windows&gt;
    for more information.
  * 'Object not found' and 'Missing argument' errors now give a more
    accurate error context. Patch provided by Lionel Henry in
    PR#18241.
  * The @ operator is now an S3 generic. Based on contributions by
    Tomasz Kalinowski in PR#18482.
  * New generic chooseOpsMethod() provides a mechanism for objects to
    resolve cases where two suitable methods are found for an Ops
    Group Generic. This supports experimenting with alternative
    object systems. Based on contributions by Tomasz Kalinowski in
    PR#18484.
  * inherits(x, what) now accepts values other than a simple
    character vector for argument what. A new generic, nameOfClass(),
    is called to resolve the class name from what. This supports
    experimenting with alternative object systems. Based on
    contributions by Tomasz Kalinowski in PR#18485.
  * Detection of BLAS/LAPACK in use (sessionInfo()) with FlexiBLAS
    now reports the current backend.
  * The "data.frame" method for subset() now warns about extraneous
    arguments, typically catching the use of = instead of == in the
    subset expression.
  * Calling a:b when numeric a or b is longer than one may now be
    made into an error by setting environment variable
    _R_CHECK_LENGTH_COLON_ to a true value, along the proposal in
    PR#18419 by Henrik Bengtsson.
  * density(x, weights = *) now warns if automatic bandwidth
    selection happens without using weights; new optional warnWbw may
    suppress the warning.  Prompted by Christoph Dalitz' PR#18490 and
    its discussants.
  * rm(list = *) is faster and more readable thanks to Kevin Ushey's
    PR#18492.
  * The plot.lm() function no longer produces a normal Q-Q plot for
    GLMs. Instead it plots a half-normal Q-Q plot of the absolute
    value of the standardized deviance residuals.
  * The print() method for class "summary.glm" no longer shows
    summary statistics for the deviance residuals by default.  Its
    optional argument show.residuals can be used to show them if
    required.
  * The tapply() function now accepts a data frame as its X argument,
    and allows INDEX to be a formula in that case. by.data.frame()
    similarly allows INDICES to be a formula.
  * The performance of df[j] &lt;- value (including for missing j) and
    write.table(df) has been improved for data frames df with a large
    number of columns.  (Thanks to Gabriel Becker's PR#18500,
    PR#18503 and discussants, prompted by a report from Toby Dylan
    Hocking on the R-devel mailing list.)
  * The matrix multiply operator %*% is now an S3 generic, belonging
    to new group generic matrixOps.  From Tomasz Kalinowski's
    contribution in PR#18483.
  * New function array2DF() to convert arrays to data frames,
    particularly useful for the list arrays created by tapply().
  DATES and TIMES:
  * On platforms where (non-UTC) datetimes before 1902 (or before
    1900 as with system functions on recent macOS) are guessed by
    extrapolating time zones from 1902-2037, there is a warning at
    the first use of extrapolation in a session.  (As all time zones
    post 2037 are extrapolation, we do not warn on those.)
  * (Platforms using --with-internal-tzone, including Windows and by
    default macOS). How years are printed in dates or date-times can
    be controlled by environment variable R_PAD_YEARS_BY_ZERO.  The
    default remains to pad to 4 digits by zeroes, but setting value
    no gives no padding (as used by default by glibc).
  * strftime() tries harder to determine the offset for the "%z"
    format, and succeeds on the mainstream R platforms.
  * strftime() has a limit of 2048 bytes on the string produced -
    attempting to exceed this is an error.  (Previously it silently
    truncated at 255 bytes.)
  * sessionInfo() records (and by default prints) the system time
    zone as part of the locale information.  Also, the source
    (system/internal) of the date-time conversion and printing
    functions.
  * Objects of class "POSIXlt" created in this version of R always
    have 11 components: component zone is always set, and component
    gmtoff is set for times in UTC and usually set on the (almost
    all) platforms which have C-level support, otherwise is NA.
  * There are comprehensive validity checks on the structure of
    objects of class "POSIXlt" when converting (including formatting
    and printing).  (This avoids mis-conversions of hand-crafted
    objects.)
  * There is some support for using the native date-time routines on
    macOS: this is only viable on recent versions (e.g. 12.6 and 13)
    and does get wrong some historical changes (before 1900, during
    WWII).  Use of --with-internal-tzone remains the default.
  * as.POSIXct(&lt;numeric&gt;) and as.POSIXlt(.) (without specifying
    origin) now work.  So does as.Date(&lt;numeric&gt;).
  * as.Date.POSIXct(., tz) now treats several tz values, notably
    "GMT" as equivalent to "UTC", proposed and improved by Michael
    Chirico and Joshua Ulrich in PR#17674.
  * Experimental balancePOSIXlt() utility allows using "ragged" and
    or out-of-range "POSIXlt" objects more correctly, e.g., in
    subsetting and subassignments.  Such objects are now documented.
    More experimentally, a "POSIXlt" object may have an attribute
    "balanced" indicating if it is known to be filled or fully
    balanced.
  * Functions axis.Date() and axis.POSIXct() are rewritten to gain
    better default tick locations and better default formats by using
    prettyDate(). Thanks to Swetlana Herbrandt.
  * The mapping of Windows' names for time zones to IANA's 'Olson'
    names has been updated.  When ICU is available (it is by
    default), it is used to get a mapping for the current region set
    in Windows.  This can be overridden by setting environment
    variable TZ to the desired Olson name - see OlsonNames() for
    those currently available.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 16
    and so packages that provide graphics devices should be
    reinstalled.
  * The grDevices and grid packages have new functions for rendering
    typeset glyphs, primarily: grDevices::glyphInfo() and
    grid::grid.glyph().
    Rendering of typeset glyphs is only supported so far on the
    Cairo-based graphics devices and on the pdf() and quartz()
    devices.
  * The defined behaviour for "clear" and "source" compositing
    operators (via grid::grid.group()) has been changed (to align
    better with simple interpretation of original Porter-Duff
    definitions).
  * Support for gradients, patterns, clipping paths, masks, groups,
    compositing operators, and affine transformations has been added
    to the quartz() device.
  INSTALLATION on a UNIX-ALIKE:
  * A system installation of generic LAPACK 3.10.0 or later will be
    preferred to the version in the R sources.
    configure option --with-lapack=no (equivalently --without-lapack)
    forces compilation of the internal LAPACK sources.
    If --with-lapack is not specified, a system liblapack is looked
    for and used if it reports version 3.10.0 or later and does not
    contain BLAS routines.
    Packages using LAPACK will need to be reinstalled if this changes
    to using an external library.
  * On aarch64 Linux platforms using GCC, configure now defaults to
  - fPIC (instead of -fpic), as desired in PR#18326.
  * configure now checks conversion of datetimes between POSIXlt and
    POSIXct around year 2020.  Failure (which has been seen on
    platforms missing tzdata) is fatal.
  * If configure option --with-valgrind-instrumentation is given
    value 1 or 2, option --with-system-valgrind-headers is now the
    default and ignored (with a warning).  It is highly recommended
    that the system headers are installed alongside valgrind: they
    are part of its packaging on some Linux distributions and
    packaged separately (e.g. in the valgrind-devel RPM) on others.
    configure will give a warning if they are not found.
    The system headers will be required in a future release of R to
    build with valgrind instrumentation.
  * libcurl 8.x is now accepted by configure: despite a change in
    major version number it changes neither API nor ABI.
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools43, an update of the Rtools42 toolchain.  It is
    based on gcc 12 and newer versions of MinGW-W64, binutils and
    libraries.  At this time R-devel can still be built using
    Rtools42 without changes, but when R-devel is installed via the
    installer, it will by default look for Rtools43.
  * Old make targets rsync-extsoft and 32-bit ones that are no longer
    needed have been removed.
  * Default builds (including for packages) no longer select C99.
    Thus the C standard used is the default for the compiler, which
    for the toolchain in Rtools43 is C17.  (This is consistent with
    Unix builds.)
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++17 where
    available (which it is on all currently checked platforms): if
    not C++14 or C++11 is used if available otherwise C++ is not
    supported.
  * USE_FC_LEN_T is the default: this uses the correct
    (compiler-dependent) prototypes for Fortran BLAS/LAPACK routines
    called from C/C++, and requires adjustment of many such calls -
    see 'Writing R Extensions' SS6.6.1.
  * There is initial support for C++23 as several compilers are now
    supporting -std=c++23 or -std=c++2b or similar.  As for C++20,
    there no additional configure checks for C++23 features beyond a
    check that the compiler reports a __cplusplus value greater than
    that in the C++20 standard.  C++ feature tests should be used.
  * There is support for a package to indicate the version of the C
    standard which should be used to compile it, and for the
    installing user to specify this.  In most cases R defaults to the
    C compiler's default standard which is C17 (a `bug-fix' of C11) -
    earlier versions of R or compilers may have defaulted to C99.
    Current options are:
    USE_C17 Use a standard that is at most C17.  The intention is to
    allow legacy packages to still be installed when later C
    standards become the default, including packages using new
    keywords as identifiers or with K&amp;R-style function
    declarations.  This will use C17 if available, falling back
    to C11.
    USE_C90 Use the C90 (aka C89) standard.  (As that standard did
    not require compilers to identify that version, all we can
    verify is that the compiler does not claim to be using a
    later standard.  It may accept C99 features - for example
    clang accepts // to make comments.)
    USE_C99 Use the C99 standard. This should be rarely needed - it
    avoids the few new features of C11/C17 which can be useful if
    a package assumes them if C17 is specified and they are not
    implemented.
    USE_C23 Use C23 (or in future, later).  Compiler/library support
    for C23 is still being implemented, but LLVM clang from
    15.0.0 and the upcoming GCC 13 have quite extensive support.
    These can be specified as part of the SystemRequirements field in
    the package's DESCRIPTION file or _via_ options --use-C17 and so
    on of R CMD INSTALL and R CMD SHLIB.
    For further details see "Writing R Extensions" SS1.2.5.
  * (Windows) A src/Makefile.ucrt or src/Makefile.win file is now
    included after R_HOME/etcR_ARCH/Makeconf and so no longer needs
    to include that file itself.  Installation of a package with such
    a file now uses a site Makevars file in the same way as a package
    with a src/Makevars.win file would.
  * configure is now passed crucial variables such as CC and CFLAGS
    in its environment, as many packages were not setting them (as
    documented in 'Writing R Extensions' SS1.2).
    This has most effect where configure is used to compile parts of
    the package - most often by cmake or libtool which obfuscate the
    actual compile commands used.
    Also used for configure.win and configure.ucrt on Windows.
  FORTRAN FLAGS:
  * The flag -fno-optimize-sibling-calls is no longer forced for
    gfortran 7 and later.  It should no longer be needed now using
    'hidden' character-length arguments when calling BLAS/LAPACK
    routines from C/C++ is the default even for packages.  (Unless
    perhaps packages call Fortran code from C/C++ without using R's
    headers and without allowing for these arguments.)
  C-LEVEL FACILITIES:
  * The deprecated S-compatibility macros DOUBLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * The deprecated legacy typedefs of Sint and Sfloat in header R.h
    are no longer defined, and that header no longer includes header
    limits.h from C nor climits from C++.
  * New macro CAD5R() is provided in Rinternals.h and used in a few
    places in the R sources.
  * ALTREP now supports VECSXP vectors. Contributed by Gabor Csardi
    in PR#17620.
  * The Rcomplex definition (in header R_ext/Complex.h) has been
    extended to prevent possible mis-compilation when interfacing
    with Fortran (PR#18430).  The new definition causes compiler
    warnings with static initializers such as {1, 2}, which can be
    changed to {.r=1, .i=2}.
    Using the new definition from C++ depends on compiler extensions
    supporting C features that have not been incorporated into the
    C++ standards but are available in g++ and clang++: this may
    result in C++ compiler warnings but these have been worked around
    for recent versions of common compilers (GCC, Apple/LLVM clang,
    Intel).
    It is intended to change the inclusion of header R_ext/Complex.h
    by other R headers, so C/C++ code files which make use of
    Rcomplex should include that header explicitly.
  UTILITIES:
  * R CMD check does more checking of package .Rd files, warning
    about invalid email addresses and (some) invalid URIs and noting
    empty \item labels in description lists.
  * R CMD check now also reports problems when reading package news
    in md (file NEWS.md) and (optionally) plain text (file NEWS)
    formats.
  * _R_CHECK_TIMINGS_ defaults to a value from the environment even
    for R CMD check --as-cran; this allows for exceptionally fast or
    slow platforms.
    It now applies to checking PDF and HTML versions of the manuals,
    and 'checking CRAN incoming feasibility'.
  * R CMD check can optionally (but included in --as-cran) check
    whether HTML math rendering _via_ KaTeX works for the package .Rd
    files.
  * Non-interactive debugger invocations can be trapped by setting
    the environment variable _R_CHECK_BROWSER_NONINTERACTIVE_ to a
    true value.  This is enabled by R CMD check --as-cran to detect
    the use of leftover browser() statements in the package.
  * The use of sprintf and vsprintf from C/C++ has been deprecated in
    macOS 13 and is a known security risk.  R CMD check now reports
    (on all platforms) if their use is found in compiled code:
    replace by snprintf or vsnprintf respectively. [*NB:* whether
    such calls get compiled into the package is platform-dependent.]
  * Where recorded at installation, R CMD check reports the C and
    Fortran compilers used to build R.
    It reports the OS in use (if known, as given by osVersion) as
    well as that R was built for.
    It notes if a C++ standard was specified which is older than the
    current default: many packages have used C++11 to mean 'not
    C++98' - as C++11 is the minimum supported since R 4.0.0, that
    specification can probably be removed.
  * R CMD INSTALL reports the compilers (and on macOS, the SDK) used,
    and this is copied to the output of R CMD check.
    Where a C++ standard is specified, it is reported.
  * R CMD check's 'checking compilation flags in Makevars' has been
    relaxed to accept the use of flags such as -std=f2008 in
    PKG_FFLAGS.
  * tools::buildVignettes() has a new argument skip, which is used by
    R CMD check to skip (and note) vignettes with unavailable
    \VignetteDepends (PR#18318).
  * New generic .AtNames() added to enable class-specific completions
    after @. The formerly internal function findMatches() is now
    exported, mainly for use in methods for .DollarNames() and
    .AtNames().
  DEPRECATED AND DEFUNCT:
  * default.stringsAsFactors() is defunct.
  * Calling as.data.frame.&lt;class&gt;() directly (for 12 atomic classes)
    is going to be formally deprecated, currently activated by
    setting the environment variable
    _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ to non-empty, which also
    happens in R CMD check --as-cran.
  BUG FIXES:
  * Hashed environments with sizes less than 5 can now grow.
    (Reported to R-devel by Duncan Garmonsway.)
  * as.character(&lt;Rd&gt;, deparse = TRUE) failed to re-escape curly
    braces in LaTeX-like text.  (Reported by Hadley Wickham in
    PR#18324.)
  * library() now passes its lib.loc argument when requiring Depends
    packages; reported (with fix) in PR#18331 by Mikael Jagan.
  * R CMD Stangle: improved message about 'Output' files.
  * head(x, n) and tail(x, n) now signal an error if n is not
    numeric, instead of incidentally "working" sometimes returning
    all of x.  Reported and discussed by Colin Fay, in PR#18357.
  * The "lm" method for summary() now gives the correct F-statistic
    when the model contains an offset.  Reported in PR#18008.
  * C() and `contrasts&lt;-`() now preserve factor level names when
    given a function object (as opposed a function name which did
    preserve names). Reported in PR#17616.
  * c(a = 1, 2)[[]] no longer matches 2 but rather signals a
    _classed_ error.  Reported and analysed by Davis Vaughan in
    PR#18367, a duplicate of PR#18004, by Jan Meis et al.  For
    consistency, NULL[[]] is also erroneous now.  x[[]] &lt;- v gives an
    error of the same class "MissingSubscriptError".
  * The relist() function of utils now supports NULL elements in the
    skeleton (PR#15854).
  * ordered(levels = *) (missing x) now works analogously to factor(,
    ordered=TRUE); reported (with fix) by Achim Zeileis in PR#18389.
  * User-defined Rd macro definitions can now span multiple lines,
    thanks to a patch from Duncan Murdoch. Previously, the Rd parser
    silently ignored everything after the first line.
  * Plain-text help (tools::Rd2txt()) now preserves an initial blank
    line for text following description list items.
  * tools::Rd2HTML() and tools::Rd2latex() no longer split \arguments
    and \value lists at Rd comments.
  * tools::Rd2latex() now correctly handles optional text outside
    \items of argument lists as well as bracketed text at the
    beginning of sections, e.g., \value{[NULL]}.
  * as.character(&lt;POSIXt&gt;) now behaves more in line with the methods
    for atomic vectors such as numbers, and is no longer influenced
    by options().  Ditto for as.character(&lt;Date&gt;).  The
    as.character() method gets arguments digits and OutDec with
    defaults _not_ depending on options().  Use of as.character(*,
    format = .) now warns.
  * Similarly, the as.character.hexmode() and *.octmode() methods
    also behave as good citizen methods and back compatibility option
    keepStr = TRUE.
  * The as.POSIXlt(&lt;POSIXlt&gt;) and as.POSIXct(&lt;POSIXct&gt;) default
    methods now do obey their tz argument, also in this case.
  * as.POSIXlt(&lt;Date&gt;) now does apply a tz (time zone) argument, as
    does as.POSIXct(); partly suggested by Roland Fuss on the R-devel
    mailing list.
  * as.Date.POSIXlt(x) now also works when the list components are of
    unequal length, aka "partially filled" or "ragged".
  * expand.model.frame() looked up variables in the wrong environment
    when applied to models fitted without data.  Reported in
    PR#18414.
  * time() now (also) uses the ts.eps = getOption("ts.eps") argument
    and thus by default rounds values very close to the start (or
    end) of a year.  Based on a proposal by Andre"i V. Kostyrka on
    R-help.
  * Printing of a factanal() result with just one factor and sort =
    TRUE now works regularly, fixing PR#17863 by Timothy Bates,
    thanks to the 'R Contributors' working group.
  * Printing 0-length objects of class "factor", "roman", "hexmode",
    "octmode", "person", "bibentry", or "citation" now prints
    something better, one of which fixes PR#18422, reported by
    Benjamin Feakins.
  * Sys.timezone() queries timedatectl only if systemd is loaded;
    addressing a report by Jan Gorecki in PR#17421.
  * The formula method of cor.test() had scoping problems when
    environment(formula) was not the calling environment; reported
    with a patch proposal by Mao Kobayashi in PR#18439.
  * attach() of an environment with active bindings now preserves the
    active bindings.  Reported by Kevin Ushey in PR#18425.
  * BLAS detection now works also with system-provided libraries not
    available as regular files.  This fixes detection of the
    Accelerate framework on macOS since Big Sur.  Reported by David
    Novgorodsky.
  * download.file() gives a helpful error message in case of an
    invalid download.file.method option, thanks to Colin Fay's report
    in PR#18455.
  * Sporadic crashes of Rterm when using completion have been fixed.
  * Rprof() is now more reliable.  A livelock in thread
    initialization with too short sampling interval has been fixed on
    macOS.  A deadlock in using the C runtime has been fixed on
    Windows.  A potential deadlock has been prevented on Unix.
  * Cursor placement in Rgui now works even after a fixed-width font
    is selected.
  * Mandatory options (options()) are now set on startup so that
    saving and restoring them always works (PR#18372).
  * Package installation, R CMD INSTALL or install.packages(*), now
    parses each of the &lt;pkg&gt;/R/*.R files individually instead of
    first concatenating and then parse()ing the large resulting file.
    This allows parser or syntax errors to be diagnosed with correct
    file names and line numbers, thanks to Simon Dedman's report and
    Bill Dunlap's patch in PR#17859.
    This _does_ require syntactically self contained R source files
    now, fixing another inadvertent bug.
  * predict.lm(&lt;model with offset&gt;) now finds the offset in the
    correct environment, thanks to Andr'e Gillibert's report and patch
    in PR#18456.
  * getInitial(&lt;formula&gt;) now finds the selfStart model in the
    correct environment.  (Reported by Ivan Krylov in PR#18368.)
  * Fix for possible segfault when using recently-added graphics
    features, such as gradients, clipping paths, masks, and groups
    with pdf(file=NULL).
  * class(m) &lt;- class(m) no longer changes a matrix m by adding a
    class _attribute_.
  * packageDate(pkg) now only warns once if there is no pkg.
  * When ts() creates a multivariate time series, "mts", it also
    inherits from "array" now, and is.mts() is documented _and_
    stricter.
  * Rd2txt() now preserves line breaks of \verb Rd content and from
    duplicated \cr.  The former also fixes the rendering of verbatim
    output from Rd \Sexpr in plain-text help.
  * uniroot(f, interval) should no longer wrongly converge _outside_
    the interval in some cases where abs(f(x)) == Inf for an x at the
    interval boundary, thanks to posts by Ben Bolker and Serguei
    Sokol on R-devel.
  * Vectorized alpha handling in palette functions such as in gray(),
    rainbow(), or hcl.colors() works correctly now, thanks to Achim
    Zeileis' report and patch in PR#18476.
  * Formatting and print()ing of bibentry objects has dropped the
    deprecated citation.bibtex.max argument, such that the bibtex
    argument's default for print.bibentry() depends directly on the
    citation.bibtex.max option, whereas in format.bibentry() the
    option no longer applies.
  * Attempting to use a character string naming a foreign function
    entry point in a foreign function call in a package will now
    signal an error if the packages has called R_forceSymbols to
    specify that symbols must be used.
  * An error in table() could permanently set options(warn=2)
    promoting all subsequent warnings to errors.
  * The sigma() function gave misleading results for binary GLMs.  A
    new method for objects of class "glm" returns the square root of
    the estimate of the dispersion parameter using the same
    calculation as summary.glm().
  * bs() and ns() in the (typical) case of automatic knot
    construction, when some of the supposedly inner knots coincide
    with boundary knots, now moves them inside (with a warning),
    building on PR#18442 by Ben Bolker.
  * R CMD on Windows now skips the site profile with --no-site-file
    and --vanilla even when R_PROFILE is set (PR#18512, from Kevin
    Ushey).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1686916800">- CHANGES IN R 4.3.1:
  C-LEVEL FACILITIES:
  * The C-level API version of R's integrate(), Rdqags() in Applic.h,
    now returns the correct number of integrand evaluations neval,
    fixing PR#18515 reported and diagnosed by Stephen Wade.
  * The C prototypes for LAPACK calls dspgv and dtptrs in
    R_exts/Lapack.h had one too many and one too few character length
    arguments - but this has not caused any known issues. To get the
    corrected prototypes, include
    [#]include &lt;Rconfig.h&gt; // for PR18534fixed
    [#]ifdef PR18534fixed
    [#] define usePR18534fix 1
    [#]endif
    [#]include &lt;R_exts/Lapack.h&gt;
    in your C/C++ code (PR#18534).
  INSTALLATION:
  * Many of the checks of esoteric Internet operations and those
    using unreliable external sites have been moved to a new target
    that is not run by default and primarily intended for the core
    developers.  To run them use
    cd tests; make test-Internet-dev
  BUG FIXES:
  * .S3methods(), typically called from methods(), again marks
    methods from package base as visible.
    Also, the visibility of non-base methods is again determined by
    the method's presence in search().
  * tools::Rdiff() is now more robust against invalid strings, fixing
    installation tests on Windows without Rtools installed
    (PR#18530).
  * Fix (new) bug in hcl.colors(2, *), by Achim Zeileis (PR#18523).
  * head(., &lt;illegal&gt;) and tail(..) now produce more useful "Error in
    ...." error messages, fixing PR#18362.
  * Package code syntax on Windows is checked in UTF-8 when UTF-8 is
    the native encoding.
  * na.contiguous(x) now also returns the first run, when it is at
    the beginning and there is a later one of the same length;
    reported to R-devel, including a fix, by Georgi Boshnakov.
    Further, by default, it modifies only an existing attr(*,"tsp")
    but otherwise no longer sets one.
  * chol(&lt;not pos.def&gt;, pivot = &lt;T|F&gt;) now gives a correct error or
    warning message (depending on pivot), thanks to Mikael Jagan's
    (PR#18541).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1699012800">- CHANGES IN R 4.3.2:
  NEW FEATURES:
  * The default initialization of the "repos" option from the
    repositories file at startup can be skipped by setting
    environment variable R_REPOSITORIES to NULL such that
    getOption("repos") is empty if not set elsewhere.
  * qr.X() is now an implicit S4 generic in methods.
  * iconv(to = "ASCII//TRANSLIT") is emulated using substitution on
    platforms which do not support it (notably Alpine Linux).  This
    should give a human-readable conversion in ASCII on all platforms
    (rather than NA_character_).
  * trans3d() gains options continuous and verbose addressing the
    problem of possible "wrap around" when projecting too long
    curves, as reported by Achim Zeileis in PR#18537.
  * tools::showNonASCII() has been rewritten to work better on macOS
    14 (which has a changed implementation of iconv()).
  * tiff(type = "quartz") (the default on macOS) now warns if
    compression is specified: it continues to be ignored.
  INSTALLATION on a UNIX-ALIKE:
  * There is some support for building with Intel's LLVM-based
    compilers on x86_64 Linux, such as (C) icx, (C++) ipcx and
    (Fortran) ifx from oneAPI 2023.x.y.
  * There is support for using LLVM's flang-new as the Fortran
    compiler from LLVM 16.0.x (preferably 17.0.0 or later).
  UTILITIES:
  * R CMD check reports the use of the Fortran 90 random number
    generator RANDOM_NUMBER() and the subroutines to initialize it.
    'Writing R Extensions' has example code to use R's RNGs from
    Fortran.
  BUG FIXES:
  * substr(x, n, L) &lt;- cc now works (more) correctly for multibyte
    UTF-8 strings x when L &gt; nchar(x), thanks to a report and patch
    by 'Architect 95'.
  * contrib.url(character()) now returns 0-length character() as
    documented, which also avoids spurious warnings from
    available.packages() et al. in the edge case of an empty vector
    of repository URLs.
  * readChar(., 4e8) no longer fails, thanks to Kodi Arfer's report
    (PR#18557).
  * lapply(&lt;list&gt;, as.data.frame) no longer warns falsely for some
    base vector components.
  * Communication between parent and child processes in the multicore
    part of parallel could fail on platforms that do not support an
    arbitrarily large payload in system functions read()/write() on
    pipes (seen on macOS where a restriction to INT_MAX bytes is
    documented, without doing a partial read unlike Linux). The
    payload is now split into 1Gb chunks to avoid that problem.
    (PR#18571)
  * qqplot(x,y, conf.level=.) gives better confidence bounds when
    length(x) != length(y), thanks to Alexander Ploner's report and
    patch proposal (PR#18557).
  * norm(&lt;0-length&gt;, "2") now gives zero instead of an error, as all
    the other norm types, thanks to Mikael Jagan's PR#18542.
  * Build-stage Rd macros \packageAuthor and \packageMaintainer now
    process Authors@R, fixing NA results when the package DESCRIPTION
    omits Author and Maintainer fields.
  * Formatting and printing complex numbers could give things like
    0.1683-0i because of rounding error: -0i is now replaced by +0i.
  * postscript() refused to accept a title comment containing the
    letter "W" (PR#18599).
  * isoreg(c(1,Inf)) signals an error instead of segfaulting, fixing
    PR#18603.
  * tiff(type = "Xlib") was only outputting the last page of
    multi-page plots.
  * tools::latexToUtf8() again knows about \~{n} and other letters
    with tilde, fixing a regression in R 4.3.0, and about \^{i} as an
    alternative to \^{\i} (similarly with other accents).
    Furthermore, LaTeX codes for accented I letters are now correctly
    converted, also fixing related mistakes in
    tools::encoded_text_to_latex().
  * tar(*, tar = "internal") no longer creates out-of-spec tar files
    in the very rare case of user or group names longer than 32
    bytes, fixing PR#17871 with thanks to Ivan Krylov.
  * When using the "internal" timezone datetime code, adding a
    fraction of a second no longer adds one second, fixing PR#16856
    from a patch by Ivan Krylov.
  * tools::checkRd() no longer produces spurious notes about
    "unnecessary braces" from multi-line Rd results of \Sexpr macros.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1709208000">- CHANGES IN R 4.3.3:
  NEW FEATURES:
  * iconv() now fixes up variant encoding names such as "utf8"
    case-insensitively.
  DEPRECATED AND DEFUNCT:
  * The legacy encoding = "MacRoman" is deprecated in pdf() and
    postscript(): support was incomplete in earlier versions of R.
  BUG FIXES:
  * Arguments are now properly forwarded to methods on S4 generics
    with ... in the middle of their formal arguments. This was broken
    for the case when a method introduced an argument but did not
    include ... in its own formals. Thanks to Herv'e Pag`es for the
    report PR#18538.
  * Some invalid file arguments to pictex(), postscript() and xfig()
    opened a file called NA rather than throw an error.  These
    included postscript(NULL) (which some people expected to work
    like pdf(NULL)).
  * Passing filename = NA to svg(), cairo_pdf(), cairo_ps() or the
    Cairo-based bitmap devices opened a file called NA: it now throws
    an error.
  * quartz(file = NA) opened a file called NA, including when used as
    a Quartz-based bitmap device.  It now gives an error.
  * rank(&lt;long vector&gt;) now works, fixing PR#18617, thanks to Ilia
    Kats.
  * seq.int() did not adequately check its length.out argument.
  * match(&lt;POSIXct&gt;, .) is correct again for differing time zones,
    ditto for "POSIXlt", fixing PR#18618 reported by Bastian Klein.
  * drop.terms(*, dropx = &lt;0-length&gt;) now works, fixing PR#18563 as
    proposed by Mikael Jagan.
  * drop.terms(*) keeps + offset(.) terms when it should, PR#18565,
    and drop.terms() no longer makes up a response, PR#18566, fixing
    both bugs thanks to Mikael Jagan.
  * getS3method("t", "test") no longer finds the t.test() function,
    fixing PR#18627.
  * pdf() and postscript() support for the documented Adobe encodings
    "Greek" and "Cyrilllic" was missing (although the corresponding
    Windows' codepages could be used).
  * Computations of glyph metric information for pdf() and
    postscript() did not take into account that transliteration could
    replace one character by two or more (only seen on macOS 14) and
    typically warned that the information was not known.
  * rank(x) no longer overflows during integer addition, when
    computing rank average for largish but not-yet long vector x,
    fixing PR#18630, thanks to Ilia Kats.
  * list.files() on Windows now returns also files with names longer
    that 260 bytes (the Windows limit is 260 characters).
    Previously, some file names particularly with 'East Asian'
    characters were omitted.
  * cov2cor(&lt;0 x 0&gt;) now works, fixing PR#18423 thanks to Mikael
    Jagan and Elin Waring.
  * cov2cor(&lt;negative diagonal&gt;) and similar now give one warning
    instead of two, with better wording, fixing PR#18424 thanks to
    Mikael Jagan.
  * tools:: startDynamicHelp() now ensures port is in proper range,
    fixing PR#18645.
  * pbeta(x, a,b) is correct now for x=0 or 1 in the boundary cases
    where a or b or both are 0, fixing PR#18672 thanks to Michael
    Fay.
  * pmatch(x, table) for large table, also called for data frame row
    selection, dfrm[nm, ], is now interruptible, fixing PR#18656.
  * predict(&lt;rank-deficient lm&gt;, newdata=*) fix computing of nbasis,
    see Russ Lenth's comment 29 in PR#16158.
  * Added a work-around for a bug in macOS 14.3.1 and higher which
    prevents R plots in the Quartz Cocoa device from updating on
    screen.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1713960000">- CHANGES IN R 4.4.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Startup banners, R --version, sessionInfo() and R CMD check no
    longer report (64-bit) as part of the platform as this is almost
    universal - the increasingly rare 32-bit platforms will still
    report (32-bit).
    On Windows, ditto for window titles.
  * is.atomic(NULL) now returns FALSE, as NULL is not an atomic
    vector.  Strict back-compatibility would replace is.atomic(foo)
    by (is.null(foo) || is.atomic(foo)) but should happen only
    sparingly.
  NEW FEATURES:
  * The confint() methods for "glm" and "nls" objects have been
    copied to the stats package.  Previously, they were stubs which
    called versions in package MASS. The MASS namespace is no longer
    loaded if you invoke (say) confint(glmfit).  Further, the "glm"
    method for profile() and the plot() and pairs() methods for class
    "profile" have been copied from MASS to stats.  (profile.nls()
    and plot.profile.nls() were already in stats.)
  * The confint() and profile methods for "glm" objects have gained a
    possibility to do profiling based on the Rao Score statistic in
    addition to the default Likelihood Ratio. This is controlled by a
    new test = argument.
  * The pairs() method for "profile" objects has been extended with a
    which = argument to allow plotting only a subset of the
    parameters.
  * The "glm" method for anova() computes test statistics and
    p-values by default, using a chi-squared test or an F test
    depending on whether the dispersion is fixed or free.  Test
    statistics can be suppressed by giving argument test a false
    logical value.
  * In setRepositories() the repositories can be set using their
    names via name = instead of index ind =.
  * methods() and .S3methods() gain a all.names option for the (rare)
    case where functions starting with a . should be included.
  * Serializations can now be interrupted (e.g., by Ctrl-C on a
    Unix-alike) if they take too long, e.g., from save.image(),
    thanks to suggestions by Ivan Krylov and others on R-devel.
  * New startup option --max-connections to set the maximum number of
    simultaneous connections for the session.  Defaults to 128 as
    before: allowed values up to 4096 (but resource limits may in
    practice restrict to smaller values).
  * R on Windows (since Windows 10 2004) now uses the new Segment
    Heap allocator. This may improve performance of some
    memory-intensive applications.
  * When R packages are built, typically by R CMD build &lt;pkg&gt;, the
    new --user=&lt;build_user&gt; option overrides the (internally
    determined) user name, currently Sys.info()["user"] or LOGNAME.
    This is a (modified) fulfillment of Will Landau's suggestion in
    PR#17530.
  * tools::testInstalledBasic() gets new optional arguments outDir
    and testSrcdir, e.g., allowing to use it in a &lt;builddir&gt; !=
    &lt;srcdir&gt; setup, and in standard "binary" Windows installation
  * if* a source tests/ folder is present.
  * range(&lt;DT_with_Inf&gt;, finite = TRUE) now work for objects of class
    "Date", "POSIXct", and "POSIXlt" with infinite entries,
    analogously to range.default(), as proposed by Davis Vaughan on
    R-devel.  Other range()-methods can make use of new function
    .rangeNum().
  * New .internalGenerics object complementing .S3PrimitiveGenerics,
    for documentation and low-level book-keeping.
  * grid() now invisibly returns the x- and y- coordinates at which
    the grid-lines were drawn.
  * norm(., type) now also works for complex matrices.
  * kappa(., exact = TRUE, norm = *) now works for all norms and also
    for complex matrices.  In symmetric / triangular cases, the new
    argument uplo = "U" | "L" allows the upper or lower triangular
    part to be specified.
  * memDecompress(type = "unknown") recognizes compression in the
    default 'zlib' format as used by memCompress(type = "gzip").
  * memCompress() and memDecompress() will use the libdeflate library
    (&lt;https://github.com/ebiggers/libdeflate&gt;) if installed.  This
    uses the same type of compression for type = "gzip" but is 1.5-2x
    faster than the system libz library on some common platforms: the
    speed-up may depend on the library version.
  * diff() for objects of class "Date", "POSIXct", and "POSIXlt"
    accepts a units argument passed via ....
  * Dynamic help now does a much better job of rendering package
    DESCRIPTION metadata.
  * Rprof() gains an event argument and support for elapsed (real)
    time profiling on Unix (PR#18076).
  * filled.contour() gains a key.border argument.
  * tools::update_pkg_po() gets arguments pot_make and mo_make for
    _not_ re-making the corresponding files, and additionally a
    verbose argument.
  * Hexadecimal string colour specifications are now accepted in
    short form, so, for example, we can use "#123", which is
    equivalent to "#112233".
    Thanks to MikeFC for the original idea and Ella Kaye, Malcolm
    Barrett, George Stagg, and Hanne Oberman for the patch.
  * Plain-text help shows \var markup by angle brackets.
  * The new experimental primitive function declare() is intended to
    eventually allow information about R code to be communicated to
    the interpreter, compiler, and code analysis tools. The syntax
    for declarations is still being developed.
  * Functions psmirnov(), qsmirnov() and rsmirnov() in package stats
    have had argument two.sided renamed to alternative, to take into
    account that the permutation distributions of the one-sided
    statistics can be different in the case of ties.  Consequence of
    PR#18582.
  * sort() is now an implicit S4 generic in methods.
  * Formatting and printing, format(z), print(z), of complex vectors
    z no longer zap relatively small real or imaginary parts to zero,
    fixing PR#16752.  This is an API change, as it was documented
    previously to round real and imaginary parts together on purpose,
    producing nicer looking output.  As mentioned, e.g. in the PR,
    this change is compatible with many other "R-like" programming
    environments.
    We have simplified the internal code and now basically format the
    real and imaginary parts independently of each other.
  * New experimental functions Tailcall() and Exec() to support
    writing stack-space-efficient recursive functions.
  * Where characters are attempted to be plotted by pdf(),
    postscript() and xfig() which are not in the selected 8-bit
    character set (most often Latin-1) and the R session is using a
    UTF-8 locale, the warning messages will show the UTF-8 character
    rather than its bytes and one dot will be substituted per
    character rather than per byte.  (Platforms whose iconv() does
    transliteration silently plot the transliteration.)
    In a UTF-8 locale some transliterations are now done with a
    warning (e.g., dashes and Unicode minus to hyphen, ligatures are
    expanded, permille (‰) is replaced by o/oo), although the OS may
    have got there first.  These are warnings as they will continue
    to be replaced by dots in earlier versions of R.
  * The matrix multiplication functions crossprod() and tcrossprod()
    are now also primitive and S3 generic, as %*% had become in R
    4.3.0.
  * source() and example() have a new optional argument catch.aborts
    which allows continued evaluation of the R code after an error.
  * The non-Quartz tiff() devices allow additional types of
    compression if supported by the platform's libtiff library.
  * The list of base and recommended package names is now provided by
    tools::standard_package_names().
  * cairo_pdf() and cairo_ps() default to onefile = TRUE to closer
    match pdf() and postscript().
  * New option catch.script.errors provides a documented way to catch
    errors and then continue in non-interactive use.
  * L %||% R newly in base is an expressive idiom for the phrases
    if(!is.null(L)) L else R or if(is.null(L)) R else L.
  * The return value from warnings() now always inherits from
    "warnings" as documented, now also in the case of no warnings
    where it previously returned NULL.
  * as.complex("1i") now returns 0 + 1i instead of NA with a warning.
  * z &lt;- c(NA, 1i) now keeps the imaginary part Im(z[1]) == 0, no
    longer coercing to NA_complex_.  Similarly, cumsum(z) correctly
    sums real and imaginary parts separately, i.e., without
    "crosstalk" in case of NAs.
  * On Alpine Linux iconv() now maps "latin2", "latin-2", "latin9"
    and "latin-9" to encoding names the OS knows about
    (case-insensitively).
  * iconv(sub = "Unicode") now always zero-pads to four (hex) digits,
    rather than to 4 or 8.  (This seems to have become the convention
    once Unicode restricted the number of Unicode points to 2^21 - 1
    and so will never need more than 6 digits.)
  * NCOL(NULL) now returns 0 instead of 1, for consistency with
    cbind().
  * The information for the Euro glyph missing from the Adobe .afm
    files for the Courier, Helvetica and Times families has been
    copied from their URW equivalents - this will improve vertical
    centring in the pdf() and postscript() devices.
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.12.0.  The changes are almost entirely cosmetic.
  * The included LAPACK sources have been updated to version 3.12.0
    and some further double-complex routines added.
  * There are new font families for the 2014--5 URW 2.0 fonts (see
    ?pdf) which are included in recent versions of Ghostscript.
    These have font widths for most Greek glyphs and a few others
    which were missing from the original versions (whose font
    families remain available for reproducibility, although
    Ghostscript-based viewers will render using the 2.0 versions).
  * Improve the large-n efficiency of as.matrix(&lt;dist&gt;), thanks an R
    contributors effort, notably by Tim Taylor and Heather Turner,
    see PR#18660.
  * The default and numeric methods of all.equal() get a check.class
    option.
  * zapsmall() gets new optional arguments, function mFUN and min.d,
    for extra flexibility; fulfills a wish in PR#18199.  Also, it is
    now an implicit S4 generic in package methods.
  * The Rd filter for aspell() gains an ignore argument.
  * New generic function sort_by(), primarily useful for the
    data.frame method which can be used to sort rows of a data frame
    by one or more columns.
  * The icence headers for the RPC code in src/extra/xdr have been
    updated to use the GPL-compatible licence published by Oracle
    America in 2010.
  * New function pkg2HTML() in tools to create single-page HTML
    reference manuals for R packages.
  * The byte code evaluator now uses less C stack space for recursive
    calls to byte-compiled functions. It also makes more of an effort
    to avoid allocations for scalar return values.
  * New completion option backtick (disabled by default) allows
    non-syntactic completions to be wrapped in backquotes. This is
    currently only useful for Jupyter notebooks via the IRkernel
    package, and may cause problems for other backends.
  INSTALLATION:
  * The parser has been updated to work with bison 3.8.2, which is
    now used for the pre-generated parsers in gram.c, file.c, and
    gramRd.c. A few parser error messages have changed, which may
    affect code that relies on exact messages.
  INSTALLATION on a UNIX-ALIKE:
  * System valgrind headers are now required to use configure option
  - -with-valgrind-instrumentation with value 1 or 2.
  * configure will warn if it encounters a 32-bit build, as that is
    nowadays almost untested.
  * Environment variable R_SYSTEM_ABI is no longer used and so no
    longer recorded in etc/Renviron (it was not on Windows and was
    only ever used when preparing package tools).
  * If the libdeflate library and headers are available, libdeflate
    rather than libz is used to (de)compress R objects in lazy-load
    databases.  Typically tasks spend up to 5% of their time on such
    operations, although creating lazy-data databases is one of the
    exceptions.
    This can be suppressed if the library is available by the
    configure option --without-libdeflate-compression.
  * configure option --enable-lto=check has not worked reliably since
    2019 and has been removed.
  * The minimum autoconf requirement for a maintainer build has been
    increased to autoconf 2.71.
    It is intended to increase this to 2.72 for R 4.5.0: the
    distributed configure file was generated using 2.72.
  * The minimum version requirement for an external LAPACK has been
    reduced to 3.9.0.
  * No default C++ compiler is set if no C++17 compiler is detected:
    there is no longer an automatic fallback to C++14 or C++11.
    Compilers from the last five years should have sufficient
    support: for others macros CXX and CXXSTD can be set in file
    config.site to provide a fallback if needed.
    The Objective-C++ compiler now by default uses the standard
    selected by R for C++ (currently C++17) rather than the default
    standard for the C++ compiler (which on macOS is still C++98).
  INSTALLATION on macOS:
  * A new configure option --with-newAccelerate makes use of Apple's
    'new' BLAS / LAPACK interfaces in their Accelerate framework.
    Those interfaces are only available in macOS 13.3 or later, and
    building requires SDK 13.3 or later (from the Command Line Tools
    or Xcode 14.3 or later).
    By default the option uses new Accelerate for BLAS calls: to also
    use it for LAPACK use option --with-newAccelerate=lapack.  The
    later interfaces provide LAPACK 3.9.1 rather than 3.2.1: 3.9.1 is
    from 2021-04 and does not include the improved algorithms
    introduced in LAPACK 3.10.0 (including for BLAS calls).
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools44, an update of the Rtools43 toolchain.  It is
    based on GCC 13 and newer versions of MinGW-W64, binutils and
    libraries (targeting 64-bit Intel CPUs).  R-devel can no longer
    be built using Rtools43 without changes.
  * Rtools44 has experimental support for 64-bit ARM (aarch64) CPUs
    _via_ the LLVM 17 toolchain using lld, clang/flang-new and
    libc++.
  UTILITIES:
  * R CMD check notes when S4-style exports are used without
    declaring a strong dependence on package methods.
  * tools::checkRd() (used by R CMD check) detects more problems with
    \Sexpr-based dynamic content, including bad nesting of \Sexprs
    and invalid arguments.
  * tools::checkRd() now reports Rd titles and section names ending
    in a period; this is ignored by R CMD check unless environment
    variable _R_CHECK_RD_CHECKRD_MINLEVEL_ is set to -5 or smaller.
  * R CMD check now notes Rd files without an \alias, as long
    documented in 'Writing R Extensions' §1.3.1.  The check for a
    missing \description has been moved from tools::checkRd() to
    tools::checkRdContents().
  * R CMD check now visits inst/NEWS.Rd and OS-specific man
    subdirectories when checking Rd files.
  * tools::checkDocFiles() and tools::checkRdContents() now also
    check internal Rd files by default, but "specially" (ignoring
    missing documentation of arguments).
  * R CMD Rdiff gets option --useEx.
  * R CMD check now warns on non-portable uses of Fortran KIND such
    as INTEGER(KIND=4) and REAL(KIND=8).
    To see the failing lines set environment variable
    _R_CHECK_FORTRAN_KIND_DETAILS_ to a true value.
  * When checking Rd files, R CMD check now notes some of the "lost
    braces" that tools::checkRd() finds.  Typical problems are Rd
    macros missing the initial backslash (e.g., code{...}), in-text
    set notation (e.g., {1, 2}, where the braces need escaping), and
    \itemize lists with \describe-style entries of the form
    \item{label}{description}.
  * R CMD INSTALL (and hence check) will compile C++ code with
  - DR_NO_REMAP if environment variable _R_CXX_USE_NO_REMAP_ is set
    to a true value.  It is planned that this will in future become
    the default for compiling C++.
  * The new built-in Rd macro \dontdiff{} can be used to mark example
    code whose output should be ignored when comparing check output
    to reference output (tests/Examples/&lt;pkg&gt;-Ex.Rout.save).  The
    \dontdiff tag, like \donttest, is _not_ shown on the rendered
    help page, so provides a clean alternative to ##
    IGNORE_RDIFF_(BEGIN|END) comments.
  * R CMD build when there is no NAMESPACE, now uses the recommended
    exportPattern("^[^.]"), instead of exporting everything.
  * R CMD check now warns about non-ASCII characters in the NAMESPACE
    file (in addition to R files). Such packages are not portable and
    may fail to install on some platforms.
  C-LEVEL FACILITIES:
  * Headers R_ext/Applic.h and R-ext/Linpack.h used to include
    R_ext/BLAS.h although this was undocumented and unneeded by their
    documented entry points.  They no longer do so.
  * New function R_missing(), factored out from do_missing(), used to
    fix PR#18579.
  * SEXP type S4SXP has been renamed to OBJSXP to support
    experimenting with alternative object systems.  The S4SXP value
    can still be used in C code but is now deprecated.  Based on
    contributions from the R Consortium's Object-Oriented Programming
    Working Group.
  * New function pow1p(x,y) for accurate (1+x)^y.
  * mkCharLenCE was incorrectly documented to take a size_t length
    but was implemented with int (and character strings in R are
    limited to 2^31 - 1 bytes).
  DEPRECATED AND DEFUNCT:
  * data() no longer handles zipped data from long-defunct (since R
    2.13.0) --use-zip-data installations.
  * The legacy graphics devices pictex() and xfig() are now
    deprecated.  They do not support recent graphics enhancements and
    their font handling is rudimentary. The intention is to retain
    them for historical interest as long as they remain somewhat
    functional.
  * Support for encoding = "MacRoman" has been removed from the pdf()
    and postscript() devices - this was a legacy encoding supporting
    classic macOS up to 2001 and no longer has universal libiconv
    support.
  * is.R() is deprecated as no other S dialect is known to be in use
    (and this could only identify historical dialects, not future
    ones).
    Further information on calls can be obtained by setting the
    environment variable _R_DEPRECATED_IS_R_ to error which turns the
    deprecation warning into an error and so by default gives a
    traceback.  (This is done by R CMD check --as-cran.)
  * UseMethod() no longer forwards local variables assigned in the
    generic function into method call environments before evaluating
    the method body. This makes method calls behave more like
    standard function calls and makes method code easier to analyze
    correctly.
  * The twelve as.data.frame.&lt;class&gt;() methods which were deprecated
    only via _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ and in R CMD
    check --as-cran are formally deprecated now in favour of calling
    as.data.frame() or as.data.frame.vector().  The deprecation
    "check" now works also when as.data.frame() is S4 generic thanks
    to Ivan Krylov.
  * The default method for the directional comparison operators &lt;, &gt;,
    &lt;=, and &gt;= now signals an error when one of the operands is a
    language object, i.e. a symbol or a call.
  * For terms.formula(), deprecate abb and neg.out arguments
    _formally_ in addition to just documenting it.
  BUG FIXES:
  * The methods package is more robust to not being attached to the
    search path.  More work needs to be done.
  * pairwise.t.test() misbehaved when subgroups had 0 DF for
    variance, even with pool.sd = TRUE.  (PR#18594 by Jack Berry).
  * Probability distribution functions [dpq]&lt;distrib&gt;(x, *), but also
    bessel[IKJY](x, .) now consistently preserve attributes(x) when
    length(x) == 0, e.g., for a 2 x 0 matrix, thanks to Karolis
    Koncevičius' report PR#18509.
  * Group "Summary" computations such as sum(1:3, 4, na.rm = 5, NA,
    7, na.rm = LL) now give an error instead of either 17 or NN for
    LL true or false, as proposed by Ivan Krylov on the R-devel
    mailing list.  (This also means it is now an error to specify
    na.rm more than once.)
  * as.complex(x) now returns complex(real = x, imaginary = 0) for
    _all_ numerical and logical x, notably also for NA or
    NA_integer_.
  * Directories are now omitted by file.copy(, recursive = FALSE) and
    in file.append() (PR#17337).
  * gsub() and sub() are now more robust to integer overflow when
    reporting errors caused by too large input strings (PR#18346).
  * Top-level handlers are now more robust to attempts to remove a
    handler whilst handlers are running (PR#18508).
  * The handling of Alt+F4 in dialogs created on Windows using
    GraphApp has been fixed (PR#13870).
  * density() more consistently computes grid values for the
    FFT-based convolution, following Robert Schlicht's analysis and
    proposal in PR#18337, correcting density values typically by a
    factor of about 0.999.  Argument old.coords = TRUE provides back
    compatibility.
  * palette.colors() gains a name argument that defaults to FALSE
    controlling whether the vector of colours that is returned has
    names (where possible).  PR#18529.
  * tools::xgettext() no longer extracts the (non-translatable) class
    names from warningCondition and errorCondition calls.
  * S3method(&lt;gen&gt;, &lt;class&gt;, &lt;func&gt;) in the NAMESPACE file now works
    (again) when &lt;func&gt; is visible from the namespace, e.g.,
    imported, or in base.
  * getParseData(f) now also works for a function defined in the
    first of several &lt;pkg&gt;/R/*.R source files, thanks to Kirill
    Müller's report and Duncan Murdoch's patch in PR#16756.
  * Rd \Sexpr macros with nested #ifdef conditionals were not
    processed.
  * A non-blocking connection with non-default encoding (such as a
    socket) now correctly returns from readLines() after new data has
    arrived also when its EOF had been reached previously.  Thanks to
    Peter Meilstrup's report on R-devel and Ivan Krylov's report and
    patch proposal in PR#18555.
  * tools::checkRdContents() failed to detect empty argument
    descriptions when they spanned multiple lines, including those
    generated by prompt().  These cases are now noted by R CMD check.
  * Plain-text help no longer outputs spurious colons in the
    arguments list (for multi-line \item labels in the Rd source).
  * kappa() and rcond() work correctly in more cases; kappa(., norm =
    "2") now warns that it computes the 1-norm with (default) exact =
    FALSE; prompted by Mikael Jagan's quite comprehensive PR#18543.
  * Rd skeletons generated by prompt() or promptData() now use a
    dummy title (so R CMD build works).  tools::checkRdContents() has
    been updated to detect such template leftovers, including from
    promptPackage().
  * When S4 method dispatch fails because no method was found, the
    error message now includes the signature argument names; thanks
    to Michael Chirico's proposal on the R-devel list.
  * withAutoprint({ .. }) now preserves srcrefs previously lost,
    thanks to Andrew Simmons' report plus fix in PR#18572.
  * transform.data.frame() no longer adjusts names; in particular,
    untransformed variables are kept as-is, including those with
    syntactically invalid names (PR#17890).
  * The keep.source option for Rd \Sexpr blocks is no longer ignored.
  * The formula methods for t.test() and wilcox.test() now catch when
    paired is passed, addressing PR#14359; use Pair(x1, x2) ~ 1 for a
    paired test.
  * The level reported in the browser prompt was often too large. It
    now shows the number of browser contexts on the stack.
  * For cbind() and rbind(), the optional deparse.level argument is
    now properly passed to methods, thanks to Mikael Jagan's PR#18579
    and comments there.
  * Some error and warning messages for large ('long vector')
    matrix(v, nr, nc) and dim(m) &lt;- d are now correct about sizes,
    using long long formatting, fixing PR#18612 (and more) reported
    by Mikael Jagan.
  * readChar(useBytes = TRUE) now terminates strings even when the
    underlying connection uses extra spaces in the input buffer.
    This fixes problems with extra garbage seen with gzip
    connections, PR#18605.
  * Named capture in PCRE regular expressions now works also with
    more than 127 named groups (PR#18588).
  * Datetime functions are now robust against long jumps when dealing
    with internal time zone changes.  This avoids confusing warnings
    about an invalid time zone, previously triggered by turning
    warnings into errors or handling them via tryCatch (PR#17966,
    PR#17780).
  * Datetime functions now restore even an empty TZ environment
    variable after internal time zone changes (PR#17724).  This makes
    results of datetime functions with this (typically unintentional)
    setting more predictable.
  * drop.terms(*) now drops response as by default, keep.response =
    FALSE, fixing PR#18564 thanks to Mikael Jagan.
  * dummy.coef(.) now also works for lm()-models with character
    categorical predictor variables rather than factor ones, fixing
    PR#18635 reported by Jinsong Zhao.
  * formals(f) &lt;- formals(f) now also works for a function w/o
    arguments and atomic _constant_ body(f).
  * Correct as.function(&lt;invalid list&gt;, .)'s error message.
  * removeSource() is yet more thorough in finding and removing
    "srcref" and the other source references from parsed R language
    chunks, fixing PR#18638 thanks to Andrew Simmons.
  * dgeom() is more accurate now, notably when its result is very
    small, fixing PR#18642 thanks to the proposal of Morten Welinder,
    also improving other instances where C level binom_raw(x, n, ..)
    has x == 0 or x== n.
  * warning() with options(warn = 1) has improved output for
    multi-line messages.
  * axis.Date() and axis.POSIXct() now respect the par("lab") setting
    for the number of pretty() intervals.
  * Comparisons for language objects (which are based on deparsing)
    are now more careful about using accurate deparsed results
    (PR#18676).
  * Plain-text help (Rd2txt) now correctly preserves blank lines
    following single-line \dontrun code.
  * &lt;POSIXlt&gt;[*] no longer sets wrong "balanced" attribute, fixing
    PR#18681 thanks to Mikael Jagan.
  * str(&lt;classed-call&gt;) now deparses the call as expected, fixing
    PR#18684, reported by Dave Slager.
  * In Rd examples, code following the closing brace of a \dontrun,
    \dontshow or \donttest tag on the same line is no longer skipped
    when R CMD check runs the examples.
  * as.data.frame(matrix(*, ncol=0)) now gets valid names() and
    colnames(); reported by Davis Vaughan on the R-devel list.
  * Internal Mathlib function stirlerr(n) is now almost fully
    (52-bit) accurate for all n &gt;= ~5.9 and more accurate also in the
    range 1 -- 5.9.  This entails small ("after 12th decimal")
    changes in density functions, e.g., dgamma() in _some_ regions of
    their support.  The fix was partly prompted by Morten Welinder's
    PR#18640.
  * Numbers like 9876543.2 are now considered non-integer by Mathlib
    internal R_nonint(), amending original fix of PR#15734.
  * Rd comment lines no longer cause broken paragraphs in the
    rendered PDF and plain-text help. In code blocks, pure comment
    lines (starting with %) no longer produce an empty line.
  * xtabs(Freq ~ .) now consistently defaults to na.action = na.pass,
    using na.rm = FALSE (added as an argument) when summing over Freq
    (PR#17770).
  * tools::testInstalledPackage() is no longer silent about failures
    from running examples or tests and its return code no longer
    ignores failures from checking vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1718366400">- CHANGES IN R 4.4.1:
  C-LEVEL FACILITIES:
  * Functions R_atof and R_strtod declared in header R_ext/Utils.h
    are now documented in 'Writing R Extensions' and so formally part
    of the API.
  * The non-API entry points Rf_setSVector, Rf_StringFalse,
    Rf_StringTrue and Rf_isBlankString have been added to those
    reported by R CMD check.
  * The new function Rf_allocLang is now available. This provides an
    alternative to the idiom of calling Rf_allocList followed by
    SET_TYPEOF.
  UTILITIES:
  * R CMD check now reports as warnings what gfortran calls 'Fortran
    2018 deleted features', all of which have long been marked as
    'obsolescent' and some of which were deleted in Fortran 2008 or
    earlier.  Fortran compilers are no longer required to support
    these.
  BUG FIXES:
  * as.numeric(), scan(), type.convert() and other places which use
    the internal C function R_strtod now require a _non-empty_ digit
    sequence in a decimal or binary exponent.  This aligns with the
    C/POSIX standard for strtod and with ?NumericConstants.
  * as.data.frame(m, make.names=NA) now works correctly for a matrix
    m with NA's in row names.
  * The error message from &lt;POSIXlt&gt;[["hour"]] and similar now
    mentions *[[, "hour"]], as wished for in PR#17409 and proposed by
    Michael Chirico.
  * qbinom() and potentially qpois(), qnbinom(), no longer sometimes
    fail accurate inversion (of pbinom(), etc), thanks to Christopher
    Chang's report and patch in PR#18711.
  * The internal help server on Windows can again serve requests sent
    in quick succession, fixing a regression in R 4.4.0.
  * debugcall(&lt;S3Generic&gt;()) now also works when a corresponding
    S4-generic version is in the methods cache (PR#18143).
  * Package tools' toTitleCase(ch0) now returns character(0) when ch0
    is of zero length; fixing PR#18724, reported by David Hugh Jones.
  * R CMD check is no longer broken (without a check result and no
    explanation in 00check.log) for a package which declares an
    invalid VignetteBuilder in DESCRIPTION but has no vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1730376000">- CHANGES IN R 4.4.2:
  C-LEVEL FACILITIES:
  * The S-compatibility macros F77_COM and F77_COMDECL defined in
    header R_ext/RS.h are deprecated and will be removed shortly.  We
    could find no record of their use.
  BUG FIXES:
  * Mathlib function lgammacor(x) no longer warns about underflow to
    zero for large x.
  * Text widths and heights were incorrectly reported by the Quartz
    device if the drawing context didn't exist yet (typically when
    drawing off-screen to a window that is yet to appear, see
    PR#18591).
  * The Quartz device could segfault in cases where paths with spaces
    are used in the new glyph drawing API.  Thanks to Tomek
    Gieorgijewski (PR#18758).
  * On macOS in R CRAN builds, it is again possible to read
    little-endian UTF-16 text with a BOM from a connection using
    encoding="UTF-16".  Users building R from source should avoid
    using the system libiconv in macOS 14.1 and later.
  * methods' internal .requirePackage() now re-enables primitive
    method dispatch when needed; thanks to Ivan Krylov for
    demystifying CRAN package check failures on the R-devel mailing
    list.</changelog>
</package>
<package pkgid="930b8212f5f17af91f3ae6acaa9f92d20f66ca0bab94a5b3f7006f39cda727d4efabc0dca46de539b47509e6ad6bf84d908aa666f16effa89975bf3581453f19" name="R-base-devel" arch="x86_64">
  <version epoch="0" ver="4.4.2" rel="51.0.2.2.sr20241103"/>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1620302400">- To get in sync with d:l:R:autoCRAN the Matrix package's split
  in -devel was reversed.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339200">- improved spec file according to comments of dimstar in
  https://build.opensuse.org/request/show/892685</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339201">- CHANGES IN R 4.1.0:
  FUTURE DIRECTIONS:
  * It is planned that the 4.1.x series will be the last to support
    32-bit Windows, with production of binary packages for that
    series continuing until early 2023.
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Data set esoph in package datasets now provides the correct
    numbers of controls; previously it had the numbers of cases added
    to these.  (Reported by Alexander Fowler in PR#17964.)
  NEW FEATURES:
  * www.omegahat.net is no longer one of the repositories known by
    default to setRepositories().  (Nowadays it only provides source
    packages and is often unavailable.)
  * Function package_dependencies() (in package tools) can now use
    different dependency types for direct and recursive dependencies.
  * The checking of the size of tarball in R CMD check --as-cran
    &lt;pkg&gt; may be tweaked via the new environment variable
    _R_CHECK_CRAN_INCOMING_TARBALL_THRESHOLD_, as suggested in
    PR#17777 by Jan Gorecki.
  * Using c() to combine a factor with other factors now gives a
    factor, an ordered factor when combining ordered factors with
    identical levels.
  * apply() gains a simplify argument to allow disabling of
    simplification of results.
  * The format() method for class "ftable" gets a new option justify.
    (Suggested by Thomas Soeiro.)
  * New ...names() utility.  (Proposed by Neal Fultz in PR#17705.)
  * type.convert() now warns when its as.is argument is not
    specified, as the help file always said it _should_.  In that
    case, the default is changed to TRUE in line with its change in
    read.table() (related to stringsAsFactor) in R 4.0.0.
  * When printing list arrays, classed objects are now shown _via_
    their format() value if this is a short enough character string,
    or by giving the first elements of their class vector and their
    length.
  * capabilities() gets new entry "Rprof" which is TRUE when R has
    been configured with the equivalent of --enable-R-profiling (as
    it is by default).  (Related to Michael Orlitzky's report
    PR#17836.)
  * str(xS4) now also shows extraneous attributes of an S4 object
    xS4.
  * Rudimentary support for vi-style tags in rtags() and R CMD rtags
    has been added.  (Based on a patch from Neal Fultz in PR#17214.)
  * checkRdContents() is now exported from tools; it and also
    checkDocFiles() have a new option chkInternal allowing to check
    Rd files marked with keyword "internal" as well.  The latter can
    be activated for R CMD check via environment variable
    _R_CHECK_RD_INTERNAL_TOO_.
  * New functions numToBits() and numToInts() extend the raw
    conversion utilities to (double precision) numeric.
  * Functions URLencode() and URLdecode() in package utils now work
    on vectors of URIs.  (Based on patch from Bob Rudis submitted
    with PR#17873.)
  * path.expand() can expand ~user on most Unix-alikes even when
    readline is not in use.  It tries harder to expand ~, for example
    should environment variable HOME be unset.
  * For HTML help (both dynamic and static), Rd file links to help
    pages in external packages are now treated as references to
    topics rather than file names, and fall back to a file link only
    if the topic is not found in the target package. The earlier rule
    which prioritized file names over topics can be restored by
    setting the environment variable _R_HELP_LINKS_TO_TOPICS_ to a
    false value.
  * c() now removes NULL arguments before dispatching to methods,
    thus simplifying the implementation of c() methods, _but_ for
    back compatibility keeps NULL when it is the first argument.
    (From a report and patch proposal by Lionel Henry in PR#17900.)
  * Vectorize()'s result function's environment no longer keeps
    unneeded objects.
  * Function ...elt() now propagates visibility consistently with
    ..n.  (Thanks to Lionel Henry's PR#17905.)
  * capture.output() no longer uses non-standard evaluation to
    evaluate its arguments.  This makes evaluation of functions like
    parent.frame() more consistent.  (Thanks to Lionel Henry's
    PR#17907.)
  * packBits(bits, type="double") now works as inverse of
    numToBits().  (Thanks to Bill Dunlap's proposal in PR#17914.)
  * curlGetHeaders() has two new arguments, timeout to specify the
    timeout for that call (overriding getOption("timeout")) and TLS
    to specify the minimum TLS protocol version to be used for
    https:// URIs (_inter alia_ providing a means to check for sites
    using deprecated TLS versions 1.0 and 1.1).
  * For nls(), an optional constant scaleOffset may be added to the
    denominator of the relative offset convergence test for cases
    where the fit of a model is expected to be exact, thanks to a
    proposal by John Nash.  nls(*, trace=TRUE) now also shows the
    convergence criterion.
  * Numeric differentiation _via_ numericDeriv() gets new optional
    arguments eps and central, the latter for taking central divided
    differences.  The latter can be activated for nls() via
    nls.control(nDcentral = TRUE).
  * nls() now passes the trace and control arguments to getInitial(),
    notably for all self-starting models, so these can also be fit in
    zero-noise situations via a scaleOffset.  For this reason, the
    initial function of a selfStart model must now have ... in its
    argument list.
  * bquote(splice = TRUE) can now splice expression vectors with
    attributes: this makes it possible to splice the result of
    parse(keep.source = TRUE).  (Report and patch provided by Lionel
    Henry in PR#17869.)
  * textConnection() gets an optional name argument.
  * get(), exists(), and get0() now signal an error if the first
    argument has length greater than 1.  Previously additional
    elements were silently ignored.  (Suggested by Antoine Fabri on
    R-devel.)
  * R now provides a shorthand notation for creating functions, e.g.
    \(x) x + 1 is parsed as function(x) x + 1.
  * R now provides a simple native forward pipe syntax |&gt;.  The
    simple form of the forward pipe inserts the left-hand side as the
    first argument in the right-hand side call.  The pipe
    implementation as a syntax transformation was motivated by
    suggestions from Jim Hester and Lionel Henry.
  * all.equal(f, g) for functions now by default also compares their
    environment(.)s, notably via new all.equal method for class
    function.  Comparison of nls() fits, e.g., may now need
    all.equal(m1, m2, check.environment = FALSE).
  * .libPaths() gets a new option include.site, allowing to _not_
    include the site library.  (Thanks to Dario Strbenac's suggestion
    and Gabe Becker's PR#18016.)
  * Lithuanian translations are now available.  (Thanks to Rimantas
    Zakauskas.)
  * names() now works for DOTSXP objects.  On the other hand, in
    R-lang, the R language manual, we now warn against relying on the
    structure or even existence of such dot-dot-dot objects.
  * all.equal() no longer gives an error on DOTSXP objects.
  * capabilities("cairo") now applies only to the file-based devices
    as it is now possible (if very unusual) to build R with Cairo
    support for those but not for X11().
  * There is optional support for tracing the progress of
    loadNamespace() - see its help.
  * (Not Windows.)  l10n_info() reports an additional element, the
    name of the encoding as reported by the OS (which may differ from
    the encoding part (if any) of the result from
    Sys.getlocale("LC_CTYPE").
  * New function gregexec() which generalizes regexec() to find _all_
    disjoint matches and well as all substrings corresponding to
    parenthesized subexpressions of the given regular expression.
    (Contributed by Brodie Gaslam.)
  * New function charClass() in package utils to query the
    wide-character classification functions in use (such as
    iswprint).
  * The names of quantile()'s result no longer depend on the global
    getOption("digits"), but quantile() gets a new optional argument
    digits = 7 instead.
  * grep(), sub(), regexp and variants work considerably faster for
    long factors with few levels.  (Thanks to Michael Chirico's
    PR#18063.)
  * Provide grouping of x11() graphics windows within a window
    manager such as Gnome or Unity; thanks to a patch by Ivan Krylov
    posted to R-devel.
  * The split() method for class data.frame now allows the f argument
    to be specified as a formula.
  * sprintf now warns on arguments unused by the format string.
  * New palettes "Rocket" and "Mako" for hcl.colors() (approximating
    palettes of the same name from the 'viridisLite' package).
    Contributed by Achim Zeileis.
  * The base environment and its namespace are now locked (so one can
    no longer add bindings to these or remove from these).
  * Rterm handling of multi-byte characters has been improved,
    allowing use of such characters when supported by the current
    locale.
  * Rterm now accepts ALT+ +xxxxxxxx sequences to enter Unicode
    characters as hex digits.
  * Environment variable LC_ALL on Windows now takes precedence over
    LC_CTYPE and variables for other supported categories, matching
    the POSIX behaviour.
  * duplicated() and anyDuplicated() are now optimized for integer
    and real vectors that are known to be sorted via the ALTREP
    framework. Contributed by Gabriel Becker via PR#17993.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 14
    and so packages that provide graphics devices should be
    reinstalled.
  * Graphics devices should now specify deviceVersion to indicate
    what version of the graphics engine they support.
  * Graphics devices can now specify deviceClip.  If TRUE, the
    graphics engine will never perform any clipping of output itself.
    The clipping that the graphics engine does perform (for both
    canClip = TRUE and canClip = FALSE) has been improved to avoid
    producing unnecessary artifacts in clipped output.
  * The grid package now allows gpar(fill) to be a linearGradient(),
    a radialGradient(), or a pattern().  The viewport(clip) can now
    also be a grob, which defines a clipping path, and there is a new
    viewport(mask) that can also be a grob, which defines a mask.
    These new features are only supported so far on the Cairo-based
    graphics devices and on the pdf() device.
  * (Not Windows.)  A warning is given when a Cairo-based type is
    specified for a png(), jpeg(), tiff() or bmp() device but Cairo
    is unsupported (so type = "Xlib" is tried instead).
  * grSoftVersion() now reports the versions of FreeType and
    FontConfig if they are used directly (not _via_ Pango), as is
    most commonly done on macOS.
  C-LEVEL FACILITIES:
  * The _standalone_ libRmath math library and R's C API now provide
    log1pexp() again as documented, and gain log1mexp().
  INSTALLATION on a UNIX-ALIKE:
  * configure checks for a program pkgconf if program pkg-config is
    not found.  These are now only looked for on the path (like
    almost all other programs) so if needed specify a full path to
    the command in PKG_CONFIG, for example in file config.site.
  * C99 function iswblank is required - it was last seen missing ca
    2003 so the workaround has been removed.
  * There are new configure options --with-internal-iswxxxxx,
  - -with-internal-towlower and --with-internal-wcwidth which allows
    the system functions for wide-character classification,
    case-switching and width (wcwidth and wcswidth) to be replaced by
    internal ones.  The first has long been used on macOS, AIX (and
    Windows) but this enables it to be unselected there and selected
    for other platforms (it is the new default on Solaris).  The
    second is new in this version of R and is selected by default on
    macOS and Solaris.  The third has long been the default and
    remains so as it contains customizations for East Asian
    languages.
    System versions of these functions are often minimally
    implemented (sometimes only for ASCII characters) and may not
    cover the full range of Unicode points: for example Solaris (and
    Windows) only cover the Basic Multilingual Plane.
  * Cairo installations without X11 are more likely to be detected by
    configure, when the file-based Cairo graphics devices will be
    available but not X11(type = "cairo").
  * There is a new configure option --with-static-cairo which is the
    default on macOS.  This should be used when only static cairo
    (and where relevant, Pango) libraries are available.
  * Cairo-based graphics devices on platforms without Pango but with
    FreeType/FontConfig will make use of the latter for font
    selection.
  LINK-TIME OPTIMIZATION on a UNIX-ALIKE:
  * Configuring with flag --enable-lto=R now also uses LTO when
    installing the recommended packages.
  * R CMD INSTALL and R CMD SHLIB have a new flag --use-LTO to use
    LTO when compiling code, for use with R configured with
  - -enable-lto=R.  For R configured with --enable-lto, they have
    the new flag --no-use-LTO.
    Packages can opt in or out of LTO compilation _via_ a UseLTO
    field in the DESCRIPTION file.  (As usual this can be overridden
    by the command-line flags.)
  BUILDING R on Windows:
  * for GCC &gt;= 8, FC_LEN_T is defined in config.h and hence character
    lengths are passed from C to Fortran in _inter alia_ BLAS and
    LAPACK calls.
  * There is a new text file src/gnuwin32/README.compilation, which
    outlines how C/Fortran code compilation is organized and
    documents new features:
  * R can be built with Link-Time Optimization with a suitable
    compiler - doing so with GCC 9.2 showed several
    inconsistencies which have been corrected.
  * There is support for cross-compiling the C and Fortran code
    in R and standard packages on suitable (Linux) platforms.
    This is mainly intended to allow developers to test later
    versions of compilers - for example using GCC 9.2 or 10.x has
    detected issues that GCC 8.3 in Rtools40 does not.
  * There is experimental support for cross-building R packages
    with C, C++ and/or Fortran code.
  * The R installer can now be optionally built to support a single
    architecture (only 64-bit or only 32-bit).
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++14 where
    available (which it is on all currently checked platforms): if
    not (as before) C++11 is used if available otherwise C++ is not
    supported.
    Packages which specify C++11 will still be installed using C++11.
    C++14 compilers may give deprecation warnings, most often for
    std::random_shuffle (deprecated in C++14 and removed in C++17).
    Either specify C++11 (see 'Writing R Extensions') or modernize
    the code and if needed specify C++14.  The latter has been
    supported since R 3.4.0 so the package's DESCRIPTION would need
    to include something like
    Depends: R (&gt;= 3.4)
  PACKAGE INSTALLATION on Windows:
  * R CMD INSTALL and R CMD SHLIB make use of their flag --use-LTO
    when the LTO_OPT make macro is set in file etc/${R_ARCH}/Makeconf
    or in a personal/site Makevars file.  (For details see 'Writing R
    Extensions' SS4.5.)
    This provides a valuable check on code consistency.  It does work
    with GCC 8.3 as in Rtools40, but that does not detect everything
    the CRAN checks with current GCC do.
  PACKAGE INSTALLATION on macOS:
  * The default personal library directory on builds with
  - -enable-aqua (including CRAN builds) now differs by CPU type,
    one of
    ~/Library/R/x86_64/x.y/library
    ~/Library/R/arm64/x.y/library
    This uses the CPU type R (and hence the packages) were built for,
    so when a x86_64 build of R is run under Rosetta emulation on an
    arm64 Mac, the first is used.
  UTILITIES:
  * R CMD check can now scan package functions for bogus return
    statements, which were possibly intended as return() calls (wish
    of PR#17180, patch by Sebastian Meyer). This check can be
    activated via the new environment variable
    _R_CHECK_BOGUS_RETURN_, true for --as-cran.
  * R CMD build omits tarballs and binaries of previous builds from
    the top-level package directory.  (PR#17828, patch by Sebastian
    Meyer.)
  * R CMD check now runs sanity checks on the use of LazyData, for
    example that a data directory is present and that
    LazyDataCompression is not specified without LazyData and has a
    documented value.  For packages with large LazyData databases
    without specifying LazyDataCompression, there is a reference to
    the code given in 'Writing R Extensions' SS1.1.6 to test the
    choice of compression (as in all the CRAN packages tested a
    non-default method was preferred).
  * R CMD build removes LazyData and LazyDataCompression fields from
    the DESCRIPTION file of packages without a data directory.
  ENCODING-RELATED CHANGES:
  * The parser now treats \Unnnnnnnn escapes larger than the upper
    limit for Unicode points (\U10FFFF) as an error as they cannot be
    represented by valid UTF-8.
    Where such escapes are used for outputting non-printable
    (including unassigned) characters, 6 hex digits are used (rather
    than 8 with leading zeros).  For clarity, braces are used, for
    example \U{0effff}.
  * The parser now looks for non-ASCII spaces on Solaris (as
    previously on most other OSes).
  * There are warnings (including from the parser) on the use of
    unpaired surrogate Unicode points such as \uD834.  (These cannot
    be converted to valid UTF-8.)
  * Functions nchar(), tolower(), toupper() and chartr() and those
    using regular expressions have more support for inputs with a
    marked Latin-1 encoding.
  * The character-classification functions used (by default) to
    replace the system iswxxxxx functions on Windows, macOS and AIX
    have been updated to Unicode 13.0.0.
    The character-width tables have been updated to include new
    assignments in Unicode 13.0.0.
  * The code for evaluating default (extended) regular expressions
    now uses the same character-classification functions as the rest
    of R (previously they differed on Windows, macOS and AIX).
  * There is a build-time option to replace the system's
    wide-character wctrans C function by tables shipped with R: use
    configure option --with-internal-towlower or (on Windows)
  - DUSE_RI18N_CASE in CFLAGS when building R.  This may be needed
    to allow tolower() and toupper() to work with Unicode characters
    beyond the Basic Multilingual Plane where not supported by system
    functions (e.g. on Solaris where it is the new default).
  * R is more careful when truncating UTF-8 and other multi-byte
    strings that are too long to be printed, passed to the system or
    libraries or placed into an internal buffer.  Truncation will no
    longer produce incomplete multibyte characters.
  DEPRECATED AND DEFUNCT:
  * Function plclust() from the package stats and
    package.dependencies(), pkgDepends(), getDepList(),
    installFoundDepends(), and vignetteDepends() from package tools
    are defunct.
  * Defunct functions checkNEWS() and readNEWS() from package tools
    and CRAN.packages() from utils have been removed.
  * R CMD config CXXCPP is defunct (it was deprecated in R 3.6.2).
  * parallel::detectCores() drops support for Irix (retired in 2013).
  * The LINPACK argument to chol.default(), chol2inv(),
    solve.default() and svd() has been defunct since R 3.1.0.  It was
    silently ignored up to R 4.0.3 but now gives an error.
  * Subsetting/indexing, such as ddd[*] or ddd$x on a DOTSXP
    (dot-dot-dot) object ddd has been disabled; it worked by accident
    only and was undocumented.
  BUG FIXES:
  * Many more C-level allocations (mainly by malloc and strdup) are
    checked for success with suitable alternative actions.
  * Bug fix for replayPlot(); this was turning off graphics engine
    display list recording if a recorded plot was replayed in the
    same session.  The impact of the bug became visible if resize the
    device after replay OR if attempted another savePlot() after
    replay (empty display list means empty screen on resize or empty
    saved plot).
  * R CMD check etc now warn when a package exports non-existing S4
    classes or methods, also in case of no "methods" presence.
    (Reported by Alex Bertram; reproducible example and patch by
    Sebastian Meyer in PR#16662.)
  * boxplot() now also accepts calls for labels such as ylab, the
    same as plot().  (Reported by Marius Hofert.)
  * The help page for xtabs() now correctly states that addNA is
    setting na.action = na.pass among others.  (Reported as PR#17770
    by Thomas Soeiro.)
  * The R CMD check &lt;pkg&gt; gives a longer and more comprehensible
    message when DESCRIPTION misses dependencies, e.g., in Imports:.
    (Thanks to the contributors of PR#17179.)
  * update.default() now calls the generic update() on the formula to
    work correctly for models with extended formulas.  (As reported
    and suggested by Neal Fultz in PR#17865.)
  * The horizontal position of leaves in a dendrogram is now correct
    also with center = FALSE.  (PR#14938, patch from Sebastian
    Meyer.)
  * all.equal.POSIXt() no longer warns about and subsequently ignores
    inconsistent "tzone" attributes, but describes the difference in
    its return value (PR#17277).  This check can be disabled _via_
    the new argument check.tzone = FALSE as suggested by Sebastian
    Meyer.
  * as.POSIXct() now populates the "tzone" attribute from its tz
    argument when x is a logical vector consisting entirely of NA
    values.
  * x[[2^31]] &lt;- v now works.  (Thanks to the report and patch by
    Suharto Anggono in PR#17330.)
  * In log-scale graphics, axis() ticks and label positions are now
    computed more carefully and symmetrically in their range,
    typically providing _more_ ticks, fulfilling wishes in PR#17936.
    The change really corresponds to an improved axisTicks() (package
    grDevices), potentially influencing grid and lattice, for
    example.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now correct to at
    least five digits where it was catastrophically wrong,
    previously.
  * sum(df) and similar "Summary"- and "Math"-group member functions
    now work for data frames df with logical columns, notably also of
    zero rows.  (Reported to R-devel by Martin "b706".)
  * unsplit() had trouble with tibbles due to unsound use of rep(NA,
    len)-indexing, which should use NA_integer_ (Reported to R-devel
    by Mario Annau.)
  * pnorm(x, log.p = TRUE) underflows to -Inf slightly later.
  * show(&lt;hidden S4 generic&gt;) prints better and without quotes for
    non-hidden S4 generics.
  * read.table() and relatives treated an "NA" column name as missing
    when check.names = FALSE PR#18007.
  * Parsing strings containing UTF-16 surrogate pairs such as
    "\uD834\uDD1E" works better on some (uncommon) platforms.
    sprintf("%X", utf8ToInt("\uD834\uDD1E")) should now give "1D11E"
    on all platforms.
  * identical(x,y) is no longer true for differing DOTSXP objects,
    fixing PR#18032.
  * str() now works correctly for DOTSXP and related exotics, even
    when these are doomed.
    Additionally, it no longer fails for lists with a class and
    "irregular" method definitions such that e.g. lapply(*) will
    necessarily fail, as currently for different igraph objects.
  * Too long lines in environment files (e.g. Renviron) no longer
    crash R. This limit has been increased to 100,000 bytes.
    (PR#18001.)
  * There is a further workaround for FreeType giving incorrect
    italic font faces with cairo-based graphics devices on macOS.
  * add_datalist(*, force = TRUE) (from package tools) now actually
    updates an existing data/datalist file for new content.  (Thanks
    to a report and patch by Sebastian Meyer in PR#18048.)
  * cut.Date() and cut.POSIXt() could produce an empty last interval
    for breaks = "months" or breaks = "years".  (Reported as PR#18053
    by Christopher Carbone.)
  * Detection of the encoding of 'regular' macOS locales such as
    en_US (which is UTF-8) had been broken by a macOS change:
    fortunately these are now rarely used with en_US.UTF-8 being
    preferred.
  * sub() and gsub(pattern, repl, x, *) now keep attributes of x such
    as names() also when pattern is NA (PR#18079).
  * Time differences ("difftime" objects) get a replacement and a
    rep() method to keep "units" consistent.  (Thanks to a report and
    patch by Nicolas Bennett in PR#18066.)
  * The \RdOpts macro, setting defaults for \Sexpr options in an Rd
    file, had been ineffective since R 2.12.0: it now works again.
    (Thanks to a report and patch by Sebastian Meyer in PR#18073.)
  * mclapply and pvec no longer accidentally terminate parallel
    processes started before by mcparallel or related calls in
    package parallel (PR#18078).
  * grep and other functions for evaluating (extended) regular
    expressions handle in Unicode also strings not explicitly flagged
    UTF-8, but flagged native when running in UTF-8 locale.
  * Fixed a crash in fifo implementation on Windows (PR#18031).
  * Binary mode in fifo on Windows is now properly detected from
    argument open (PR#15600, PR#18031).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1622808000">- The line %{__install} -m 755 -d %{_infodir}
  no longer works in TW or Factory.
  But without that line it works everywhere. So this instruction
  was commented out of the spec file.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1628596800">- CHANGES IN R 4.1.1:
  NEW FEATURES:
  * require(pkg, quietly = TRUE) is quieter and in particular does
    not warn if the package is not found.
  DEPRECATED AND DEFUNCT:
  * Use of ftp:// URIs should be regarded as deprecated, with
    on-going support confined to method = "libcurl" and not routinely
    tested.  (Nowadays no major browser supports them.)
  * The non-default method = "internal" is deprecated for http:// and
    ftp:// URIs for both download.file and url.
  * On Windows, method = "wininet" is deprecated for http://,
    https:// and ftp:// URIs for both download.file and url.  (A
    warning is only given for ftp://.)
    For ftp:// URIs the default method is now "libcurl" if available
    (which it is on CRAN builds).
    method = "wininet" remains the default for http:// and https://
    URIs but if libcurl is available, using method = "libcurl" is
    preferred.
  INSTALLATION:
  * make check now works also without a LaTeX installation.  (Thanks
    to Sebastian Meyer's PR#18103.)
  BUG FIXES:
  * make check-devel works again in an R build configured with
  - -without-recommended-packages.
  * qnbinom(p, size, mu) for large size/mu is correct now in a range
    of cases (PR#18095); similarly for the (size, prob)
    parametrization of the negative binomial.  Also qpois() and
    qbinom() are better and or faster for extreme cases.  The
    underlying C code has been modularized and is common to all four
    cases of discrete distributions.
  * gap.axis is now part of the axis() arguments which are passed
    from bxp(), and hence boxplot().  (Thanks to Martin Smith's
    report and suggestions in PR#18109.)
  * .First and .Last can again be set from the site profile.
  * seq.int(from, to, *) and seq.default(..) now work better in large
    range cases where from-to is infinite where the two boundaries
    are finite.
  * all.equal(x,y) now returns TRUE correctly also when several
    entries of abs(x) and abs(y) are close to .Machine$double.xmax,
    the largest finite numeric.
  * model.frame() now clears the object bit when removing the class
    attribute of a value via na.action (PR#18100).
  * charClass() now works with multi-character strings on Windows
    (PR#18104, fixed by Bill Dunlap).
  * encodeString() on Solaris now works again in Latin-1 encoding on
    characters represented differently in UTF-8.  Support for
    surrogate pairs on Solaris has been improved.
  * file.show() on Windows now works with non-ASCII path names
    representable in the current native encoding (PR#18132).
  * Embedded R on Windows can now find R home directory via the
    registry even when installed only for the current user
    (PR#18135).
  * pretty(x) with finite x now returns finite values also in the
    case where the extreme x values are close in size to the maximal
    representable number .Machine$double.xmax.
    Also, it's been tweaked for very small ranges and when a boundary
    is close (or equal) to zero; e.g., pretty(c(0,1e-317)) no longer
    has negative numbers, currently still warning about a very small
    range, and pretty(2^-(1024 - 2^-1/(c(24,10)))) is more accurate.
  * The error message for not finding vignette files when weaving has
    correct file sizes now. (Thanks to Sebastian Meyer's PR#18154.)
  * dnbinom(20, &lt;large&gt;, 1) now correctly gives 0, and similar cases
    are more accurate with underflow precaution.  (Reported by Francisco Vera Alcivar in PR#18072.)</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635163200">- repaired https://bugzilla.suse.com/show_bug.cgi?id=1191380
  (rpmacros now go to rpmmacrodir)
- minor clean-ups in spec file</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635768000">- CHANGES IN R 4.1.2:
  C-LEVEL FACILITIES:
  * The workaround in headers R.h and Rmath.h (using namespace std;)
    for the Oracle Developer Studio compiler is no longer needed now
    C++11 is required so has been removed.  A couple more usages of
    log() (which should have been std::log()) with an int argument
    are reported on Solaris.
  * The undocumented limit of 4095 bytes on messages from the
    S-compatibility macros PROBLEM and MESSAGE is now documented and
    longer messages will be silently truncated rather than
    potentially causing segfaults.
  * If the R_NO_SEGV_HANDLER environment variable is non-empty, the
    signal handler for SEGV/ILL/BUS signals (which offers recovery
    user interface) is not set. This allows more reliable debugging
    of crashes that involve the console.
  DEPRECATED AND DEFUNCT:
  * The legacy S-compatibility macros PROBLEM, MESSAGE, ERROR, WARN,
    WARNING, RECOVER, ... are deprecated and will be hidden in R
    4.2.0. R's native interface of Rf_error and Rf_warning has long
    been preferred.
  BUG FIXES:
  * .mapply(F, dots, .) no longer segfaults when dots is not a list
    and uses match.fun(F) as always documented; reported by Andrew
    Simmons in PR#18164.
  * hist(&lt;Date&gt;, ...) and hist(&lt;POSIXt&gt;, ...)  no longer pass
    arguments for rect() (such as col and density) to axis().
    (Thanks to Sebastian Meyer's PR#18171.)
  * \Sexpr{ch} now preserves Encoding(ch). (Thanks to report and
    patch by Jeroen Ooms in PR#18152.)
  * Setting the RNG to "Marsaglia-Multicarry" e.g., by RNGkind(), now
    warns in more places, thanks to Andr'e Gillibert's report and
    patch in PR#18168.
  * gray(numeric(), alpha=1/2) no longer segfaults, fixing PR#18183,
    reported by Till Krenz.
  * Fixed dnbinom(x, size=&lt;very_small&gt;, .., log=TRUE) regression,
    reported by Martin Morgan.
  * as.Date.POSIXlt(x) now keeps names(x), thanks to Davis Vaughan's
    report and patch in PR#18188.
  * model.response() now strips an "AsIs" class typically, thanks to
    Duncan Murdoch's report and other discussants in PR#18190.
  * try() is considerably faster in case of an error and long call,
    as e.g., from some do.call().  Thanks to Alexander Kaever's
    suggestion posted to R-devel.
  * qqline(y = &lt;object&gt;) such as y=I(.), now works, see also
    PR#18190.
  * Non-integer mgp par() settings are now handled correctly in
    axis() and mtext(), thanks to Mikael Jagan and Duncan Murdoch's
    report and suggestion in PR#18194.
  * formatC(x) returns length zero character() now, rather than ""
    when x is of length zero, as documented, thanks to Davis
    Vaughan's post to R-devel.
  * removeSource(fn) now retains (other) attributes(fn).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1647000000">- CHANGES IN R 4.1.3:
  NEW FEATURES:
  * The default version of Bioconductor has been changed to 3.14.
    (This is used by setRepositories and the menus in GUIs.)
  UTILITIES:
  * R CMD check --as-cran has a workaround for a bug in versions of
    file up to at least 5.41 which mis-identify DBF files last
    changed in 2022 as executables.
  C-LEVEL FACILITIES:
  * The legacy S-compatibility macros SINGLE_* in R_ext/Constants.h
    (included by R.h) are deprecated and will be removed in R 4.2.0.
  BUG FIXES:
  * Initialization of self-starting nls() models with initialization
    functions following the pre-R-4.1.0 API (without the ...
    argument) works again for now, with a deprecation warning.
  * Fixed quoting of ~autodetect~ in Java setting defaults to avoid
    inadvertent user lookup due to leading ~, reported in PR#18231 by
    Harold Gutch.
  * substr(., start, stop) &lt;- v now treats _negative_ stop values
    correctly.  Reported with a patch in PR#18228 by Brodie Gaslam.
  * Subscripting an array x without dimnames by a
    length(dim(x))-column character matrix gave "random" non-sense,
    now an error; reported in PR#18244 by Mikael Jagan.
  * ...names() now matches names(list(...)) closely, fixing PR#18247.
  * all.equal(*, scale = s) now works as intended when length(s) &gt; 1,
    partly thanks to Michael Chirico's PR#18272.
  * print(x) for long vectors x now also works for named atomic
    vectors or lists and prints the correct number when reaching the
    getOption("max.print") limit; partly thanks to a report and
    proposal by Hugh Parsonage to the R-devel list.
  * all.equal(&lt;selfStart&gt;, *) no longer signals a deprecation
    warning.
  * reformulate(*, response=r) gives a helpful error message now when
    length(r) &gt; 1, thanks to Bill Dunlap's PR#18281.
  * Modifying globalCallingHandlers inside withCallingHandlers() now
    works or fails correctly, thanks to Henrik Bengtsson's PR#18257.
  * hist(&lt;Date&gt;, breaks = "days") and hist(&lt;POSIXt&gt;, breaks = "secs")
    no longer fail for inputs of length 1.
  * qbeta(.001, .9, .009) and similar cases now converge correctly
    thanks to Ben Bolker's report in PR#17746.
  * window(x, start, end) no longer wrongly signals "'start' cannot
    be after 'end'", fixing PR#17527 and PR#18291.
  * data() now checks that its (rarely used) list argument is a
    character vector - a couple of packages passed other types and
    gave incorrect results.
  * which() now checks its arr.ind argument is TRUE rather coercing
    to logical and taking the first element - which gave incorrect
    results in package code.
  * model.weights() and model.offset() more carefully extract their
    model components, thanks to Ben Bolker and Tim Taylor's R-devel
    post.
  * list.files(recursive = TRUE) now shows all broken symlinks
    (previously, some of them may have been omitted, PR#18296).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1650628800">- CHANGES IN R 4.2.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * The formula method of aggregate() now matches the generic in
    naming its first argument x (resolving PR#18299 by Thomas
    Soeiro).
    This means that calling aggregate() with a formula as a named
    first argument requires name formula in earlier versions of R and
    name x now, so portable code should not name the argument (code
    in many packages did).
  * Calling &amp;&amp; or || with either argument of length greater than one
    now gives a warning (which it is intended will become an error).
  * Calling if() or while() with a condition of length greater than
    one gives an error rather than a warning.  Consequently,
    environment variable _R_CHECK_LENGTH_1_CONDITION_ no longer has
    any effect.
  * Windows users should consult the WINDOWS section below for some
    profound changes including
  * Support for 32-bit builds has been dropped.
  * UTF-8 locales are used where available.
  * The default locations for the R installation and personal
    library folder have been changed.
    Thanks to Tomas Kalibera for months of work on the Windows port
    for this release.
  NEW FEATURES:
  * matrix(x, n, m) now warns in more cases where length(x) differs
    from n * m, as suggested by Abby Spurdle and Wolfgang Huber in
    Feb 2021 on the R-devel mailing list.
    This warning can be turned into an error by setting environment
    variable _R_CHECK_MATRIX_DATA_ to TRUE: R CMD check --as-cran
    does so unless it is already set.
  * Function file_test() in package utils gains tests for symlinks,
    readability and writability.
  * capabilities("libxml") is now false.
    The description of capabilities("http/ftp") now reflects that it
    refers to the default method, no longer the internal one.
  * simplify2array() gains an except argument for controlling the
    exceptions used by sapply().
  * Environment variables R_LIBS_USER and R_LIBS_SITE are both now
    set to the R system default if unset or empty, and can be set to
    NULL to indicate an empty list of user or site library
    directories.
  * The warning for axis()(-like) calls in cases of relatively small
    ranges (typically in log-scale situations) is slightly improved
    _and_ suppressed from explicit calls to .axisPars() as has always
    been the intention.
  * The contrasts setter function `contrasts&lt;-` gains an explicit
    default how.many = NULL rather than just using missing(how.many).
  * grid.pretty() gains a new optional argument n = 5.
  * There is a new function .pretty() with option bounds as a
    technical-utility version of pretty().  It and pretty() gain a
    new argument f.min with a better than back-compatible default.
  * Function grDevices::axisTicks() and related functions such as
    graphics::axis() work better, notably for the log scale; partly
    because of the pretty() improvements, but also because care is
    taken e.g., when ylim is finite but diff(ylim) is infinite.
  * nclass.FD() gains a digits option.
  * The R Mathlib internal C function bd0() (called indirectly from a
    dozen probability density and distribution functions such as
    dpois(), dbinom(), dgamma(), pgamma() _etc_) has been
    complemented by a more sophisticated and (mostly) more accurate C
    function ebd0(), currently called only by internal dpois_raw()
    improving accuracy for R level dpois() and potentially others
    calling it such as dnbinom(), dgamma() or pgamma().  (Thanks to
    Morten Welinder's PR#15628.)
  * write.ftable() gains sep = " " argument as suggested by Thomas
    Soeiro.
  * The names of the locale categories supported by R's
    Sys.getlocale() and Sys.setlocale() are now provided by variable
    .LC.categories in the base namespace.
  * The Date and POSIXt methods for hist() and the histogram method
    for plot() now also use the new default col = "lightgray" in
    consistency with the corresponding change to hist()'s default for
    R 4.0.0.
  * hist.default() gains new fuzz argument, and the histogram plot
    method no longer uses fractional axis ticks when displaying
    counts ("Frequency").
  * mapply() and hence Map() now also obey the "max-or-0-if-any"
    recycling rule, such that, e.g., Map(`+`, 1:3, 1[0]) is valid
    now.
  * as.character(&lt;obj&gt;) for "hexmode" or "octmode" objects now
    fulfils the important basic rule as.character(x)[j] ===
    as.character(x[j]).
  * The set utility functions, notably intersect() have been tweaked
    to be more consistent and symmetric in their two set arguments,
    also preserving a common mode.
  * substr(ch, start,end) &lt;- new now e.g., preserves names(ch); ditto
    for substring(), thanks to a patch from Brodie Gaslam.
  * plot(&lt;lm&gt;) gains a extend.ylim.f argument, in partial response to
    PR#15285; further PR#17784 is fixed thanks to several
    contributors and a patch by Elin Waring.  The Cook's dist
    contours get customizable via cook.col and cook.lty with a
    different default color and their legend is nicer by default and
    customizable via cook.legendChanges.
  * Attempting to subset an object that is not subsettable now
    signals an error of class notSubsettableError. The
    non-subsettable object is contained in the object field of the
    error condition.
  * Subscript-out-of-bounds errors are now signaled as errors of
    class subscriptOutOfBoundsError.
  * Stack-overflow errors are now signaled as errors inheriting from
    class stackOverflowError. See ?stackOverflowError for more
    details.
  * New partly experimental Sys.setLanguage() utility, solving the
    main problem of PR#18055.
  * gettext() and gettextf() get a new option trim = TRUE which when
    set to false allows translations for strings such as "Execution
    halted\n" typical for C code.
  * An experimental implementation of hash tables is now available.
    See ?hashtab for more details.
  * identical() gains a extptr.as.ref argument for requesting that
    external pointer objects be compared as reference objects.
  * reorder() gets an argument decreasing which it passes to sort()
    for level creation; based on the wish and patch by Thomas Soeiro
    in PR#18243.
  * as.vector() gains a data.frame method which returns a simple
    named list, also clearing a long standing 'FIXME' to enable
    as.vector(&lt;data.frame&gt;, mode="list").  This breaks code relying
    on as.vector(&lt;data.frame&gt;) to return the unchanged data frame.
  * legend() is now vectorized for arguments cex, x.intersp, and
    text.width.  The latter can now also be specified as a vector
    (one element for each column of the legend) or as NA for
    computing a proper column wise maximum value of strwidth(legend).
    The argument y.intersp can be specified as a vector with one
    entry for each row of the legend.
    legend() also gains new arguments title.cex and title.font.
    Thanks to Swetlana Herbrandt.
  * Deparsing no longer remaps attribute names dim, dimnames, levels,
    names and tsp to historical S-compatible names (which structure()
    maps back).
  * sample() and sample.int() have additional sanity checks on their
    size and n arguments.
    all.equal.numeric() gains a sanity check on its tolerance
    argument - calling all.equal(a, b, c) for three numeric vectors
    is a surprisingly common error.
    mean(na.rm =), rank(na.last =), barplot(legend.text =),
    boxplot(), contour(drawlabels =), polygon(border =) and
    methods::is(class2 =) have more robust sanity checks on their
    arguments.
    R CMD Rd2pdf (used by R CMD check) has a more robust sanity check
    on the format of \alias{} commands.
  * psigamma(x, deriv) for negative x now also works for deriv = 4
    and 5; their underlying C level dpsifn() is documented in
    'Writing R Extensions'.
  * The HTML help system now uses HTML5 (wish of PR#18149).
  * ks.test() now provides exact p-values also with ties and MC
    p-values in the two-sample (Smirnov) case.  By Torsten Hothorn.
  * ks.test() gains a formula interface, with y ~ 1 for the
    one-sample (Kolmogorov) test and y ~ group for the two-sample
    (Smirnov) test.  Contributed by Torsten Hothorn.
  * The return value from ks.test() now has class c("ks.test",
    "htest") - packages using try() need to take care to use
    inherits() and not == on the class.
  * New functions psmirnov(), qsmirnov() and rsmirnov() in package
    stats implementing the asymptotic and exact distributions of the
    two-sample Smirnov statistic.
  * iconv() now allows sub = "c99" to use C99-style escapes for UTF-8
    inputs which cannot be converted to encoding to.
  * In a forward pipe |&gt; expression it is now possible to use a named
    argument with the placeholder _ in the rhs call to specify where
    the lhs is to be inserted.  The placeholder can only appear once
    on the rhs.
  * The included LAPACK sources have been updated to version 3.10.0,
    except for the four Fortran 77 routines which 3.10.0 has
    re-implemented in Fortran 90 (where the older versions have been
    retained as the R build process does not support Fortran 90).
  * path.expand() and most other uses of tilde expansion now warn if
    a path would be too long if expanded.  (An exception is
    file.exists(), which silently returns false.)
  * trunc(&lt;Date&gt;, *) now supports units = "months" or "years" for
    consistency with the POSIXt method, thanks to Dirk Eddelbuettel's
    proposal in PR#18099.
  * list2DF() now checks that its arguments are of the same length,
    rather than use recycling.
  * The HTML help system has several new features: LaTeX-like math
    can be typeset using either KaTeX or MathJax, usage and example
    code is highlighted using Prism, and for dynamic help the output
    of examples and demos can be shown within the browser if the
    knitr package is installed. These features can be disabled by
    setting the environment variable _R_HELP_ENABLE_ENHANCED_HTML_ to
    a false value.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 15
    and so packages that provide graphics devices should be
    reinstalled.
  * The grid package now allows the user to specify a "vector" of
    pattern fills.  The fill argument to gpar() accepts a list of
    gradients and/or patterns and the functions linearGradient(),
    radialGradient(), and pattern() have a new group argument.
    Points grobs (data symbols) can now also have a pattern fill.
    The grobCoords() function now returns a more informative and
    complex result.
  * The grid package has new functions for drawing isolated groups:
    grid.group(), grid.define(), and grid.use().  These functions add
    compositing operators and affine transformations to R's graphics
    capabilities.
    The grid package also has new functions for stroking and filling
    paths: grid.stroke(), grid.fill(), and grid.fillStroke().
    A new function as.path() allows the user to specify the fill rule
    for a path that is to be used for clipping, stroking, or filling;
    available options are "winding" and "evenodd".  A new function
    as.mask() allows the user to specify the type of a mask;
    available options are "alpha" and "luminance".
    These new features are only supported so far (at most) on the
    Cairo-based graphics devices and on the pdf() device.
  * dev.capabilities() reports on device support for the new
    features.
  * par() now warns about unnamed non-character arguments to prevent
    misuse such as {usr &lt;- par("usr"); par(usr)}.
  INSTALLATION:
  * Facilities for accessing ftp:// sites are no longer tested
    (except _pro tem_ for curlGetHeaders()) as modern browsers have
    removed support.
  * R can now be built with DEFS = -DSTRICT_R_HEADERS .
  PACKAGE INSTALLATION:
  * R CMD INSTALL no longer tangles vignettes. This completes an R
    CMD build change in R 3.0.0 and affects packages built before R
    3.0.2. Such packages should be re-made with R CMD build to have
    the tangled R code of vignettes shipped with the tarball.
  * USE_FC_LEN_T will become the default: this uses the correct
    prototypes for Fortran BLAS/LAPACK routines called from C/C++,
    and requires adjustment of most such calls - see 'Writing R
    Extensions' SS6.6.2.  (This has been supported since R 3.6.2.)
  * Package installation speed for packages installed with
    keep.source has been improved. This resolve the issue reported by
    Ofek Shilon in PR#18236.
  UTILITIES:
  * R CMD check can optionally report files/directories left behind
    in home, /tmp (even though TMPDIR is set) and other directories.
    See the "R Internals" manual for details.
  * R CMD check now reports byte-compilation errors during
    installation.  These are not usually fatal but may result in
    parts of the package not being byte-compiled.
  * _R_CHECK_DEPENDS_ONLY_ can be applied selectively to examples,
    tests and/or vignettes in R CMD check: see the "R Internals"
    manual.
  * _R_CHECK_SRC_MINUS_W_IMPLICIT_ now defaults to true: recent
    versions of Apple clang on macOS have made implicit function
    declarations in C into a compilation error.
  * R CMD check --as-cran makes use of the environment variable
    AUTORECONF.  See the "R Internals" manual SS8 for further details.
  * R CMD check --use-valgrind also uses valgrind when re-building
    vignettes as some non-Sweave vignettes unhelpfully comment out
    all their code when R CMD check runs vignettes.
  * Errors in re-building vignettes (unless there are LaTeX errors)
    are reported by R CMD check as ERROR rather than WARNING when
    running vignettes has been skipped (as it frequently is in CRAN
    checks and by --as-cran).
  * R CMD Rd2pdf gains a --quiet option that is used by R CMD build
    when building the PDF package manual.
  * R CMD Rd2pdf now always runs LaTeX in batch mode, consistent with
    Texinfo &gt;= 6.7. The --batch option is ignored.
  * R CMD build and R CMD check now include the Rd file name and line
    numbers in the error message of an \Sexpr evaluation failure.
  * For packages using the \doi Rd macro (now an install-time \Sexpr)
    but no other dynamic Rd content, R CMD build now produces a
    smaller tarball and is considerably faster - skipping temporary
    package installation.
  C-LEVEL FACILITIES:
  * The non-API header R_ext/R-ftp-http.h is no longer provided, as
    the entry points it covered are now all defunct.
  * A number of non-API declarations and macro definitions have been
    moved from the installed header Rinternals.h to the internal
    header Defn.h. Packages that only use entry points and
    definitions documented to be part of the API as specified in
    'Writing R Extensions' SS6 should not be affected.
  * The macro USE_RINTERNALS no longer has any effect when compiling
    package code.  Packages which also use R_NO_REMAP will need to
    ensure that the remapped names are used for calls to API
    functions that were formerly also made available as macros.
  * The deprecated legacy S-compatibility macros PROBLEM, MESSAGE,
    ERROR, WARN, WARNING, RECOVER, ... are no longer defined in
    R_exts/RS.h (included by R.h).  Replace these by calls to
    Rf_error and Rf_warning (defined in header R_ext/Error.h included
    by R.h).
    Header R_ext/RS.h no longer includes R_ext/Error.h.
  * Header R_ext/Constants.h (included by R.h) when included from C++
    now includes the C++ header cfloat rather than the C header
    float.h (now possible as C++11 is required).
  * The legacy S-compatibility macros DOUBLE_* in R_ext/Constants.h
    (included by R.h) are deprecated.
  * The deprecated S-compatibility macros SINGLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * R_Calloc, R_Free and R_Realloc are preferred to their unprefixed
    forms and error messages now use the prefix. These forms were
    introduced in R 3.4.0 and are available even when
    STRICT_R_HEADERS is defined.
  * rmultinom has been documented in 'Writing R Extensions' SS6 so is
    now part of the R API.
  * Similarly, Rtanpi, called from R level tanpi() is now part of the
    R API.
  * The long-deprecated, undocumented and non-API entry point call_R
    is no longer declared in R_ext/RS.h (included by R.h).
  * The header S.h which has been unsupported since Jan 2016 has been
    removed.  Use R.h instead.
  DEPRECATED AND DEFUNCT:
  * The (non-default and deprecated) method = "internal" for
    download.file() and url() no longer supports http:// nor ftp://
    URIs.  (It is used only for file:// URIs.)
    On Windows, download.file(method = "wininet") no longer supports
    ftp:// URIs.  (It is no longer the default method, which is
    "libcurl" and does.)
    On Windows, the deprecated method = "wininet" now gives a warning
    for http:// and https:// URIs for both download.file() and url().
    (It is no longer the default method.)
  * On Windows, the command-line option --max-mem-size and
    environment variable R_MAX_MEM_SIZE are defunct.  The memory
    allocation limit was important for 32-bit builds, but these are
    no longer supported.
  * default.stringsAsFactors() is now formally deprecated, where that
    was only mentioned on its regular help page, previously.  So it
    now gives a warning if called.
  * unix.time() is defunct now; it had been deprecated since R 3.4.0.
  BUG FIXES:
  * Setting digits = 0 in format(), print.default() (and hence
    typically print()) or options() is again invalid.  Its behaviour
    was platform-dependent, and it is unclear what "zero significant
    digits" should mean (PR#18098).
  * Messages from C code in the cairo section of package grDevices
    are now also offered for translation, thanks to Michael Chirico's
    PR#18123.
  * mean(x) with finite x now is finite also without "long.double"
    capability.
  * R CMD Rd2pdf no longer leaves an empty build directory behind
    when it aborts due to an already existing output file.  (Thanks
    to Sebastian Meyer's PR#18141.)
  * density(x, weights = w, na.rm = TRUE) when anyNA(x) is true, now
    removes weights "in parallel" to x, fixing PR#18151, reported by
    Matthias Gondan.  Additionally, it gets a subdensity option.
  * Conversion of \Sexpr[]{&lt;expR&gt;} to LaTeX or HTML no longer
    produces long blocks of empty lines when &lt;expR&gt; itself contains
    several lines all producing empty output.  Thanks to a report and
    patch by Ivan Krylov posted to R-devel.
  * R CMD build no longer fails if a package vignette uses child
    documents and inst/doc exists.  (Thanks to Sebastian Meyer's
    PR#18156.)
  * When an R documentation ('help' source) file man/foo.Rd in a
    package has \donttest{..} examples with a syntax error, it is now
    signalled as ERROR and with correct line numbers relating to the
  * -Ex.R file, thanks to Duncan Murdoch and Sebastian Meyer's
    reports and patch proposals in PR#17501.
  * Improved determination of the correct translation domain in
    non-base packages, addressing the combination of PR#18092 and
    PR#17998 (#c6) with reports and _augmented_ patch #2904 by
    Suharto Anggono.
    Note that "R-base" is no longer the default domain e.g., for
    top-level calls to gettext(); rather translation needs explicit
    domain = * specification in such cases.
  * identical(attrib.as.set=FALSE) now works correctly with data
    frames with default row names (Thanks to Charlie Gao's PR#18179).
  * txtProgressBar() now enforces a non-zero width for argument char,
    without which no progress can be visible.
  * dimnames(table(d)) is more consistent in the case where d is a
    list with a single component, thanks to Thomas Soeiro's report to
    R-devel.
    Further, table(d1, d2) now gives an error when d1 and d2 are data
    frames as suggested by Thomas in PR#18224.
  * Fix for drawing semi-transparent lines and fills on the native
    Windows graphics device (PR#18219 and PR#16694).  Thanks to Nick
    Ray for helpful diagnosis on Bugzilla.
  * The deparser now wraps sub-expressions such as if(A) ..  with
    parentheses when needed; thanks to Duncan Murdoch's PR#18232 and
    Lionel Henry's patches there.
  * remove.packages() no longer tries to uninstall Priority: base
    packages, thanks to a report and suggestions by Colin Fay in
    PR#18227.
  * win.metafile() now has xpinch and ypinch arguments so that the
    user can override Windows' (potentially wrong) guess at device
    dimensions.
  * x[i] and x[[i]] for non-integer i should now behave in all cases
    as always documented: the index used is equivalent to
    as.integer(i) unless that would overflow where trunc(i) is used
    instead; thanks to Suharto Anggono's report and patch proposals
    in PR#17977.
  * asOneSidedFormula() now associates the resulting formula with the
    global environment rather than the evaluation environment created
    for the call.
  * &lt;bibentry&gt;$name now matches the field name case-insensitively,
    consistent with bibentry() creation and the replacement method.
  * cbind() failed to detect some length mismatches with a mixture of
    time-series and non-time-series inputs.
  * The default LaTeX style file Sweave.sty used by the RweaveLatex
    driver no longer loads the obsolete ae package; thanks to a
    report by Thomas Soeiro in PR#18271.  Furthermore, it now skips
    \usepackage[T1]{fontenc} for engines other than pdfTeX (if
    detected) or if the new [nofontenc] option is used.
  * smooth.spline() now stores its logical cv argument more safely,
    fixing a rare bug when printing, and also stores n.
  * smooth.spline(x,y,*) now computes the cv.crit statistic
    correctly, also when is.unsorted(x), fixing PR#18294.
  * The data.frame method of rbind() now warns when binding
    not-wholly-recycling vectors, by analogy to the default method
    (for matrices).
  * setAs() finds the correct class for name to when multiple
    packages define a class with that name. Thanks to Gabor Csardi
    for the report.
  * Fix for detaching a package when two classes of the same name are
    present in method signatures for the same generic. Thanks to
    Gabor Csardi for the report.
  * match.arg("", c("", "a", "B")) gives a better error message, in
    part from PR#17959, thanks to Elin Waring.
  * R CMD Sweave --clean no longer removes pre-existing files or
    subdirectories (PR#18242).
  * The quartz() device no longer splits polylines into subpaths.
    That has caused narrowly-spaced lines with many points to always
    look solid even when dashed line type was used due to dash phase
    restarts.
  * Deparsing constructs such as quote(1 + `!`(2) + 3) works again as
    before R 3.5.0, thanks to the report and patch in PR#18284 by
    Suharto Anggono.
  * as.list(f) for a factor f now keeps names(f), fixing PR#18309.
  * qbeta(.001, .9, .009) and analogous qf() calls now return a
    correct value instead of NaN or wrongly 1, all with a warning;
    thanks to the report by Ludger Goeminne in PR#18302.
  * plot.lm() failed to produce the plot of residuals vs.  factor
    levels (i.e., which=5 when leverages are constant) for models
    with character predictors (PR#17840).
  * interaction.plot(..., xtick = TRUE) misplaced the x-axis line
    (PR#18305).
  * Not strictly fixing a bug, format()ing and print()ing of
    non-finite Date and POSIXt values NaN and +/-Inf no longer show
    as NA but the respective string, e.g., Inf, for consistency with
    numeric vector's behaviour, fulfilling the wish of PR#18308.
  * R CMD check no longer runs test scripts generated from
    corresponding .Rin files twice and now signals an ERROR if
    processing an .Rin script fails.
  * tools::Rd2txt() used for plain-text help pages now renders \hrefs
    (if tools::Rd2txt_options(showURLs = TRUE)) and \urls with
    percent-encoding and standards-compliant delimiting style (angle
    brackets and no URL: prefix).  \email is now rendered with a
    mailto: prefix.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1655985600">- CHANGES IN R 4.2.1:
  NEW FEATURES:
  * New function utils::findCRANmirror() to find out if a CRAN mirror
    has been selected, otherwise fallback to the main site.  This
    behaves in the same way as tools::CRAN_package_db() and is
    intended for packages wishing to access CRAN for purposes other
    than installing packages.
    The need for this was shown by a day when the main CRAN website
    was offline and a dozen or so packages which had its URL
    hardcoded failed their checks.
  INSTALLATION on a UNIX-ALIKE:
  * The libraries searched for by --with-blas (without a value) now
    include BLIS (after OpenBLAS but before ATLAS).  And on macOS,
    the Accelerate framework (after ATLAS).  (This is patterned after
    the AX_BLAS macro from the Autoconf Archive.)
  * The included LAPACK sources have been updated to 3.10.1.
  UTILITIES:
  * The (full path to) the command tidy to be used for HTML
    validation can be set by environment variable R_TIDYCMD.
  * Setting environment variable _R_CHECK_RD_VALIDATE_RD2HTML_ to a
    false value will override R CMD check --as-cran and turn off HTML
    validation.  This provides a way to circumvent a problematic
    tidy.
    The 2006 version that ships with macOS is always skipped.
  C-LEVEL FACILITIES:
  * The undocumented legacy declarations of Sint, Sfloat, SINT_MAX
    and SINT_MIN in header R.h are deprecated.
  BUG FIXES:
  * fisher.test(d) no longer segfaults for "large" d; fixing PR#18336
    by preventing/detecting an integer overflow reliably.
  * tar(., files=*) now produces correctly the warning about invalid
    uid or gid of files, fixing PR#18344, reported by Martin Morgan.
  * tk_choose.files() with multi = FALSE misbehaved on paths
    containing spaces (PR#18334) (regression introduced in R 4.0.0).
  * sort(x, partial = ind, *) now works correctly notably for the
    non-default na.last = FALSE or TRUE, fixing PR#18335 reported by
    James Edwards.
  * Environment variable _R_CHECK_XREFS_REPOSITORIES_ is only used
    for checking .Rd cross-references in R CMD check (as documented)
    and not for other uses looking for a CRAN mirror.
  * The search for a CRAN mirror when checking packages now uses
    getOption("repos") if that specifies a CRAN mirror, even when it
    does not also specify all three Bioconductor repositories (as was
    previously required).
  * The HTML code generated by tools::Rd2HTML() has been improved to
    pass tidy 5.8.0.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1667217600">- CHANGES IN R 4.2.2:
  NEW FEATURES:
  * tools::Rdiff(useDiff = TRUE) checks for the presence of an
    external diff command and switches to useDiff = FALSE if none is
    found.  This allows R CMD Rdiff to always work.
  * On Windows, environment variable R_LIBCURL_SSL_REVOKE_BEST_EFFORT
    can be used to switch to only 'best-effort' SSL certificate
    revocation checks with the default "libcurl" download method.
    This reduces security, but may be needed for downloads to work
    with MITM proxies (PR#18379).
  * (macOS) The run-time check for libraries from XQuartz for X11 and
    Tcl/Tk no longer uses otool from the Apple Developer Tools
    (PR#18400).
  * The LaTeX style for producing the PDF manuals, Rd.sty, now loads
    the standard amsmath, amsfonts and amssymb packages for greater
    coverage of math commands in the Rd \eqn and \deqn macros.  The
    \mathscr LaTeX command is also provided (via the mathrsfs
    package, if available, or the amsfonts bundle otherwise),
    fulfilling the wish of PR#18398.
  * (Windows) The default format of readClipboard() and
    writeClipboard() has been changed to 13 (CF_UNICODETEXT).
  INSTALLATION on a UNIX-ALIKE:
  * The PDF manuals (if built) can be compacted by the new target
    make compact-pdf (at the top level or in directory doc/manual).
  * There is now configure support for LLVM clang 15 on Linux, which
    defaults to position-independent (PIE) executables whereas
    gfortran does not.
  * Many small changes to ease compilation (and suppress warnings)
    with LLVM clang 15.
  BUG FIXES:
  * Rscript -e would fail if stdin were closed (Reported by Henrik
    Bengtsson.)
  * qt(*, log.p=TRUE) in outer tails no longer produces NaN in its
    final steps, thus fixing PR#18360.
  * tools::Rd2latex() now escapes hashes and ampersands when writing
    URLs, fixing LaTeX errors with such URLs in \tabular.
  * When isGeneric(f, fdef=*) is used with mismatching names, the
    warning is better understandable; reported (with fix) in PR#18370
    by Gabe Becker.
  * poly(x, n) now works again (and is now documented) when x is a
    "Date" or "POSIXct" object, or of another class while fulfilling
    mode(x) == "numeric".  This also enables poly(x, *, raw=TRUE) for
    such variables.  Reported by Michael Chirico to R-devel.
  * write.table(), write.csv() and write.csv2() restore their
    numerical precision (internal equivalent of digits = 15) after an
    interrupt (PR#18384).
  * One can now read also byte FF from a clipboard connection
    (PR#18385).
  * source("") and source(character()) now give more helpful error
    messages.
  * R CMD check --as-cran set _R_CHECK_TIMINGS_ too late to have the
    intended effect.
  * as.POSIXlt(x) now also works with very large dates x, fixing
    PR#18401 reported by Hannes M"uhleisen.
  * Files can now be extracted even from very large zip archives
    (PR#18390, thanks to Martin Jakt).
  * Non-finite objects of class "POSIXlt" are now correctly coerced
    to classes "Date" and "POSIXct"; following up on the extension to
    format() them correctly.
  * Added methods for is.finite(), is.infinite() and is.nan() for
    "POSIXlt" date-time objects.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1678881600">- CHANGES IN R 4.2.3:
  C-LEVEL FACILITIES:
  * The definition of DL_FUNC in R_ext/Rdynload.h has been changed to
    be fully C-compliant.  This means that functions loaded _via_ for
    example R_GetCCallable need to be cast to an appropriate type if
    they have any arguments.
  * .Machine has a new element sizeof.time_t to identify old systems
    with a 32-bit type and hence a limited range of date-times (and
    limited support for dates millions of years from present).
  PACKAGE INSTALLATION:
  * (Windows) The default C++ standard had accidentally been left at
    C++11 when it was changed to C++14 on Unix.
  BUG FIXES:
  * As "POSIXlt" objects may be "partially filled" and their list
    components meant to be recycled, length() now is the length of
    the longest component.
  * as.POSIXlt.Date() could underflow for dates in the far past (more
    than half a million years BCE).
  * as.Date.POSIXlt(x) would return "1970-01-01" instead of NA in R
    4.2.2, e.g., for
    x &lt;- as.POSIXlt(c("2019-01-30","2001-1-1"))
    x$mon &lt;- c(0L, NA); as.Date(x)
  * R CMD check failed to apply enabled _R_CHECK_SUGGESTS_ONLY_ to
    examples and vignettes (regression in R 4.2.0).
  * R CMD check did not re-build vignettes in separate processes by
    default (regression in R 4.2.0).
  * Running examples from HTML documentation now restores previous
    knitr settings and options (PR#18420).
  * Quartz: fonts are now located using Core Graphics API instead of
    deprecated ATS which is no longer supported in the macOS 13 SDK
    (PR#18426).  This also addresses an issue where the currently
    used font in the Quartz device context was not correctly
    retained.
  * (Windows) Math symbols in text drawing functions are again
    rendered correctly (PR#18440).  This fixes a regression in R
    4.2.1 caused by a fix in PR#18382 which uncovered an issue in
    GraphApp due to which the symbol charset was not used with TT
    Symbol font face.
  * (Windows) Installing a package with a src/Makefile.{win,ucrt}
    file includes ~/.R/Makevars.win64 in the search for user
    makevars, as documented in "R Installation and Administration"
    and done for packages with a src/Makevars.{win,ucrt} file.
  * format(&lt;POSIXlt_w/_unbalanced_sec&gt;, "....%OS&lt;n&gt;") with n &gt; 0 no
    longer accidentally uses the unbalanced seconds, thanks to
    Suharto Anggono's report (including patch) in PR#18448.
  * solve.default(a, b) works around issues with some versions of
    LAPACK when a contains NA or NaN values.
  * When UseMethod() cannot dispatch, it no longer segfaults
    producing the error message in case of a long class(), thanks to
    Joris Vankerschaver's report (including patch) in PR#18447.
  * When example(foo, ..) produces graphics on an interactive device
    it needs to open itself, it now leaves devAskNewPage() unchanged
    even when it was FALSE, thus fixing a 14 years old '&lt;FIXME&gt;'.
  * packageDescription() again catches errors from encoding
    conversions. This also fixes broken packageVersion() in C locale
    on systems where iconv does not support transliteration.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1681128000">- add patch to build with libcurl &gt;= 8</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1682078400">- CHANGES IN R 4.3.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Calling &amp;&amp; or || with LHS or (if evaluated) RHS of length greater
    than one is now always an error, with a report of the form
    'length = 4' in coercion to 'logical(1)'
    Environment variable _R_CHECK_LENGTH_1_LOGIC2_ no longer has any
    effect.
  NEW FEATURES:
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.10.1.  (This caused some platform-dependent
    changes to package check output.)  And then to the sources from
    LAPACK version 3.11.0 (with changes only to double complex
    subroutines).
  * The included LAPACK sources have been updated to include the four
    Fortran 90 routines rather than their Fortran 77 predecessors.
    This may give some different signs in SVDs or
    eigendecompositions..  (This completes the transition to LAPACK
    3.10.x begun in R 4.2.0.)
  * The LAPACK sources have been updated to version 3.11.0.  (No new
    subroutines have been added, so this almost entirely bug fixes:
    Those fixes do affect some computations with NaNs, including R's
    NA.)
  * The parser now signals _classed_ errors, notably in case of the
    pipe operator |&gt;.  The error object and message now give line and
    column numbers, mostly as proposed and provided by Duncan Murdoch
    in PR#18328.
  * toeplitz() is now generalized for asymmetric cases, with a
    toeplitz2() variant.
  * xy.coords() and xyz.coords() and consequently, e.g., plot(x,y,
    log = "y") now signal a _classed_ warning about negative values
    of y (where log(.) is NA).  Such a warning can be specifically
    suppressed or caught otherwise.
  * Regular expression functions now check more thoroughly whether
    their inputs are valid strings (in their encoding, e.g. in
    UTF-8).
  * The performance of grep(), sub(), gsub() and strsplit() has been
    improved, particularly with perl = TRUE and fixed = TRUE.  Use of
    useBytes = TRUE for performance reasons should no longer be
    needed and is discouraged: it may lead to incorrect results.
  * apropos() gains an argument dot_internals which is used by the
    completion (help(rcompgen)) engine to also see base internals
    such as .POSIXct().
  * Support in tools::Rdiff() for comparing uncompressed PDF files is
    further reduced - see its help page.
  * qqplot(x, y, ...) gains conf.level and conf.args arguments for
    computing and plotting a confidence band for the treatment
    function transforming the distribution of x into the distribution
    of y (Switzer, 1976, _Biometrika_). Contributed by Torsten
    Hothorn.
  * Performance of package_dependencies() has been improved for cases
    when the number of dependencies is large.
  * Strings newly created by gsub(), sub() and strsplit(), when any
    of the inputs is marked as "bytes", are also marked as "bytes".
    This reduces the risk of creating invalid strings and accidental
    substitution of bytes deemed invalid.
  * Support for readLines(encoding = "bytes") has been added to allow
    processing special text files byte-by-byte, without creating
    invalid strings.
  * iconv(from = "") now takes into account any declared encoding of
    the input elements and uses it in preference to the native
    encoding.  This reduces the risk of accidental creation of
    invalid strings, particularly when different elements of the
    input have different encoding (including "bytes").
  * Package repositories in getOption("repos") are now initialized
    from the repositories file when utils is loaded (if not already
    set, e.g., in .Rprofile).  (From a report and patch proposal by
    Gabriel Becker in PR#18405.)
  * compactPDF() gets a verbose option.
  * type.convert() and hence read.table() get new option tryLogical =
    TRUE with back compatible default.  When set to false, converts
    "F" or "T" columns to character.
  * Added new unit prefixes "R" and "Q" for abbreviating
    (unrealistically large) sizes beyond 10^{27} in standard = "SI",
    thanks to Henrik Bengtsson's PR#18435.
  * as.data.frame()'s default method now also works fine with atomic
    objects inheriting from classes such as "roman", "octmode" and
    "hexmode", such fulfilling the wish of PR#18421, by Benjamin
    Feakins.
  * The as.data.frame.vector() utility now errors for wrong-length
    row.names.  It warned for almost six years, with "Will be an
    error!".
  * sessionInfo() now also contains La_version() and reports codepage
    and timezone when relevant, in both print() and toLatex() methods
    which also get new option tzone for displaying timezone
    information when locale = FALSE.
  * New function R_compiled_by() reports the C and Fortran compilers
    used to build R, if known.
  * predict(&lt;lm&gt;, newdata = *) no longer unnecessarily creates an
    offset of all 0s.
  * solve() for complex inputs now uses argument tol and by default
    checks for 'computational singularity' (as it long has done for
    numeric inputs).
  * predict(&lt;rank-deficient lm&gt;, newdata=*) now obeys a new argument
    rankdeficient, with new default "warnif", warning only if there
    are non-estimable cases in newdata.  Other options include
    rankdeficient = "NA", predicting NA for non-estimable newdata
    cases.  This addresses PR#15072 by Russ Lenth and is based on his
    original proposal and discussions in PR#16158 also by David Firth
    and Elin Waring.  Still somewhat experimental.
  * Rgui console implementation now works better with the NVDA screen
    reader when the full blinking cursor is selected.  The underlying
    improvements in cursor handling may help also other screen
    readers on Windows.
  * The drop-field control in GraphApp can now be left with the TAB
    key and all controls can be navigated in the reverse order using
    the Shift+TAB key, improving accessibility of the Rgui
    configuration editor.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now fully accurate
    (instead of to "only" minimally five digits).
  * demo(error.catching) now also shows off withWarnings() and
    tryCatchWEMs().
  * As an experimental feature the placeholder _ can now also be used
    in the rhs of a forward pipe |&gt; expression as the first argument
    in an extraction call, such as _$coef. More generally, it can be
    used as the head of a chain of extractions, such as _$coef[[2]].
  * Spaces in the environment variable used to choose the R session's
    temporary directory (TMPDIR, TMP and TEMP are tried in turn) are
    now fatal.  (On Windows the 'short path' version of the path is
    tried and used if that does not contain a space.)
  * all.equal.numeric() gets a new optional switch giveErr to return
    the numeric error as attribute.  Relatedly,
    stopifnot(all.equal&lt;some&gt;(a, b, ..)) is as "smart" now, as
    stopifnot(all.equal(....)) has been already, thus allowing
    customized all.equal&lt;Some&gt;() wrappers.
  * R on Windows is now able to work with path names longer than 260
    characters when these are enabled in the system (requires at
    least Windows 10 version 1607).  Packages should be updated to
    work with long paths as well, instead of assuming PATH_MAX to be
    the maximum length.  Custom front-ends and applications embedding
    R need to update their manifests if they wish to allow this
    feature.  See
    &lt;https://blog.r-project.org/2023/03/07/path-length-limit-on-windows&gt;
    for more information.
  * 'Object not found' and 'Missing argument' errors now give a more
    accurate error context. Patch provided by Lionel Henry in
    PR#18241.
  * The @ operator is now an S3 generic. Based on contributions by
    Tomasz Kalinowski in PR#18482.
  * New generic chooseOpsMethod() provides a mechanism for objects to
    resolve cases where two suitable methods are found for an Ops
    Group Generic. This supports experimenting with alternative
    object systems. Based on contributions by Tomasz Kalinowski in
    PR#18484.
  * inherits(x, what) now accepts values other than a simple
    character vector for argument what. A new generic, nameOfClass(),
    is called to resolve the class name from what. This supports
    experimenting with alternative object systems. Based on
    contributions by Tomasz Kalinowski in PR#18485.
  * Detection of BLAS/LAPACK in use (sessionInfo()) with FlexiBLAS
    now reports the current backend.
  * The "data.frame" method for subset() now warns about extraneous
    arguments, typically catching the use of = instead of == in the
    subset expression.
  * Calling a:b when numeric a or b is longer than one may now be
    made into an error by setting environment variable
    _R_CHECK_LENGTH_COLON_ to a true value, along the proposal in
    PR#18419 by Henrik Bengtsson.
  * density(x, weights = *) now warns if automatic bandwidth
    selection happens without using weights; new optional warnWbw may
    suppress the warning.  Prompted by Christoph Dalitz' PR#18490 and
    its discussants.
  * rm(list = *) is faster and more readable thanks to Kevin Ushey's
    PR#18492.
  * The plot.lm() function no longer produces a normal Q-Q plot for
    GLMs. Instead it plots a half-normal Q-Q plot of the absolute
    value of the standardized deviance residuals.
  * The print() method for class "summary.glm" no longer shows
    summary statistics for the deviance residuals by default.  Its
    optional argument show.residuals can be used to show them if
    required.
  * The tapply() function now accepts a data frame as its X argument,
    and allows INDEX to be a formula in that case. by.data.frame()
    similarly allows INDICES to be a formula.
  * The performance of df[j] &lt;- value (including for missing j) and
    write.table(df) has been improved for data frames df with a large
    number of columns.  (Thanks to Gabriel Becker's PR#18500,
    PR#18503 and discussants, prompted by a report from Toby Dylan
    Hocking on the R-devel mailing list.)
  * The matrix multiply operator %*% is now an S3 generic, belonging
    to new group generic matrixOps.  From Tomasz Kalinowski's
    contribution in PR#18483.
  * New function array2DF() to convert arrays to data frames,
    particularly useful for the list arrays created by tapply().
  DATES and TIMES:
  * On platforms where (non-UTC) datetimes before 1902 (or before
    1900 as with system functions on recent macOS) are guessed by
    extrapolating time zones from 1902-2037, there is a warning at
    the first use of extrapolation in a session.  (As all time zones
    post 2037 are extrapolation, we do not warn on those.)
  * (Platforms using --with-internal-tzone, including Windows and by
    default macOS). How years are printed in dates or date-times can
    be controlled by environment variable R_PAD_YEARS_BY_ZERO.  The
    default remains to pad to 4 digits by zeroes, but setting value
    no gives no padding (as used by default by glibc).
  * strftime() tries harder to determine the offset for the "%z"
    format, and succeeds on the mainstream R platforms.
  * strftime() has a limit of 2048 bytes on the string produced -
    attempting to exceed this is an error.  (Previously it silently
    truncated at 255 bytes.)
  * sessionInfo() records (and by default prints) the system time
    zone as part of the locale information.  Also, the source
    (system/internal) of the date-time conversion and printing
    functions.
  * Objects of class "POSIXlt" created in this version of R always
    have 11 components: component zone is always set, and component
    gmtoff is set for times in UTC and usually set on the (almost
    all) platforms which have C-level support, otherwise is NA.
  * There are comprehensive validity checks on the structure of
    objects of class "POSIXlt" when converting (including formatting
    and printing).  (This avoids mis-conversions of hand-crafted
    objects.)
  * There is some support for using the native date-time routines on
    macOS: this is only viable on recent versions (e.g. 12.6 and 13)
    and does get wrong some historical changes (before 1900, during
    WWII).  Use of --with-internal-tzone remains the default.
  * as.POSIXct(&lt;numeric&gt;) and as.POSIXlt(.) (without specifying
    origin) now work.  So does as.Date(&lt;numeric&gt;).
  * as.Date.POSIXct(., tz) now treats several tz values, notably
    "GMT" as equivalent to "UTC", proposed and improved by Michael
    Chirico and Joshua Ulrich in PR#17674.
  * Experimental balancePOSIXlt() utility allows using "ragged" and
    or out-of-range "POSIXlt" objects more correctly, e.g., in
    subsetting and subassignments.  Such objects are now documented.
    More experimentally, a "POSIXlt" object may have an attribute
    "balanced" indicating if it is known to be filled or fully
    balanced.
  * Functions axis.Date() and axis.POSIXct() are rewritten to gain
    better default tick locations and better default formats by using
    prettyDate(). Thanks to Swetlana Herbrandt.
  * The mapping of Windows' names for time zones to IANA's 'Olson'
    names has been updated.  When ICU is available (it is by
    default), it is used to get a mapping for the current region set
    in Windows.  This can be overridden by setting environment
    variable TZ to the desired Olson name - see OlsonNames() for
    those currently available.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 16
    and so packages that provide graphics devices should be
    reinstalled.
  * The grDevices and grid packages have new functions for rendering
    typeset glyphs, primarily: grDevices::glyphInfo() and
    grid::grid.glyph().
    Rendering of typeset glyphs is only supported so far on the
    Cairo-based graphics devices and on the pdf() and quartz()
    devices.
  * The defined behaviour for "clear" and "source" compositing
    operators (via grid::grid.group()) has been changed (to align
    better with simple interpretation of original Porter-Duff
    definitions).
  * Support for gradients, patterns, clipping paths, masks, groups,
    compositing operators, and affine transformations has been added
    to the quartz() device.
  INSTALLATION on a UNIX-ALIKE:
  * A system installation of generic LAPACK 3.10.0 or later will be
    preferred to the version in the R sources.
    configure option --with-lapack=no (equivalently --without-lapack)
    forces compilation of the internal LAPACK sources.
    If --with-lapack is not specified, a system liblapack is looked
    for and used if it reports version 3.10.0 or later and does not
    contain BLAS routines.
    Packages using LAPACK will need to be reinstalled if this changes
    to using an external library.
  * On aarch64 Linux platforms using GCC, configure now defaults to
  - fPIC (instead of -fpic), as desired in PR#18326.
  * configure now checks conversion of datetimes between POSIXlt and
    POSIXct around year 2020.  Failure (which has been seen on
    platforms missing tzdata) is fatal.
  * If configure option --with-valgrind-instrumentation is given
    value 1 or 2, option --with-system-valgrind-headers is now the
    default and ignored (with a warning).  It is highly recommended
    that the system headers are installed alongside valgrind: they
    are part of its packaging on some Linux distributions and
    packaged separately (e.g. in the valgrind-devel RPM) on others.
    configure will give a warning if they are not found.
    The system headers will be required in a future release of R to
    build with valgrind instrumentation.
  * libcurl 8.x is now accepted by configure: despite a change in
    major version number it changes neither API nor ABI.
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools43, an update of the Rtools42 toolchain.  It is
    based on gcc 12 and newer versions of MinGW-W64, binutils and
    libraries.  At this time R-devel can still be built using
    Rtools42 without changes, but when R-devel is installed via the
    installer, it will by default look for Rtools43.
  * Old make targets rsync-extsoft and 32-bit ones that are no longer
    needed have been removed.
  * Default builds (including for packages) no longer select C99.
    Thus the C standard used is the default for the compiler, which
    for the toolchain in Rtools43 is C17.  (This is consistent with
    Unix builds.)
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++17 where
    available (which it is on all currently checked platforms): if
    not C++14 or C++11 is used if available otherwise C++ is not
    supported.
  * USE_FC_LEN_T is the default: this uses the correct
    (compiler-dependent) prototypes for Fortran BLAS/LAPACK routines
    called from C/C++, and requires adjustment of many such calls -
    see 'Writing R Extensions' SS6.6.1.
  * There is initial support for C++23 as several compilers are now
    supporting -std=c++23 or -std=c++2b or similar.  As for C++20,
    there no additional configure checks for C++23 features beyond a
    check that the compiler reports a __cplusplus value greater than
    that in the C++20 standard.  C++ feature tests should be used.
  * There is support for a package to indicate the version of the C
    standard which should be used to compile it, and for the
    installing user to specify this.  In most cases R defaults to the
    C compiler's default standard which is C17 (a `bug-fix' of C11) -
    earlier versions of R or compilers may have defaulted to C99.
    Current options are:
    USE_C17 Use a standard that is at most C17.  The intention is to
    allow legacy packages to still be installed when later C
    standards become the default, including packages using new
    keywords as identifiers or with K&amp;R-style function
    declarations.  This will use C17 if available, falling back
    to C11.
    USE_C90 Use the C90 (aka C89) standard.  (As that standard did
    not require compilers to identify that version, all we can
    verify is that the compiler does not claim to be using a
    later standard.  It may accept C99 features - for example
    clang accepts // to make comments.)
    USE_C99 Use the C99 standard. This should be rarely needed - it
    avoids the few new features of C11/C17 which can be useful if
    a package assumes them if C17 is specified and they are not
    implemented.
    USE_C23 Use C23 (or in future, later).  Compiler/library support
    for C23 is still being implemented, but LLVM clang from
    15.0.0 and the upcoming GCC 13 have quite extensive support.
    These can be specified as part of the SystemRequirements field in
    the package's DESCRIPTION file or _via_ options --use-C17 and so
    on of R CMD INSTALL and R CMD SHLIB.
    For further details see "Writing R Extensions" SS1.2.5.
  * (Windows) A src/Makefile.ucrt or src/Makefile.win file is now
    included after R_HOME/etcR_ARCH/Makeconf and so no longer needs
    to include that file itself.  Installation of a package with such
    a file now uses a site Makevars file in the same way as a package
    with a src/Makevars.win file would.
  * configure is now passed crucial variables such as CC and CFLAGS
    in its environment, as many packages were not setting them (as
    documented in 'Writing R Extensions' SS1.2).
    This has most effect where configure is used to compile parts of
    the package - most often by cmake or libtool which obfuscate the
    actual compile commands used.
    Also used for configure.win and configure.ucrt on Windows.
  FORTRAN FLAGS:
  * The flag -fno-optimize-sibling-calls is no longer forced for
    gfortran 7 and later.  It should no longer be needed now using
    'hidden' character-length arguments when calling BLAS/LAPACK
    routines from C/C++ is the default even for packages.  (Unless
    perhaps packages call Fortran code from C/C++ without using R's
    headers and without allowing for these arguments.)
  C-LEVEL FACILITIES:
  * The deprecated S-compatibility macros DOUBLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * The deprecated legacy typedefs of Sint and Sfloat in header R.h
    are no longer defined, and that header no longer includes header
    limits.h from C nor climits from C++.
  * New macro CAD5R() is provided in Rinternals.h and used in a few
    places in the R sources.
  * ALTREP now supports VECSXP vectors. Contributed by Gabor Csardi
    in PR#17620.
  * The Rcomplex definition (in header R_ext/Complex.h) has been
    extended to prevent possible mis-compilation when interfacing
    with Fortran (PR#18430).  The new definition causes compiler
    warnings with static initializers such as {1, 2}, which can be
    changed to {.r=1, .i=2}.
    Using the new definition from C++ depends on compiler extensions
    supporting C features that have not been incorporated into the
    C++ standards but are available in g++ and clang++: this may
    result in C++ compiler warnings but these have been worked around
    for recent versions of common compilers (GCC, Apple/LLVM clang,
    Intel).
    It is intended to change the inclusion of header R_ext/Complex.h
    by other R headers, so C/C++ code files which make use of
    Rcomplex should include that header explicitly.
  UTILITIES:
  * R CMD check does more checking of package .Rd files, warning
    about invalid email addresses and (some) invalid URIs and noting
    empty \item labels in description lists.
  * R CMD check now also reports problems when reading package news
    in md (file NEWS.md) and (optionally) plain text (file NEWS)
    formats.
  * _R_CHECK_TIMINGS_ defaults to a value from the environment even
    for R CMD check --as-cran; this allows for exceptionally fast or
    slow platforms.
    It now applies to checking PDF and HTML versions of the manuals,
    and 'checking CRAN incoming feasibility'.
  * R CMD check can optionally (but included in --as-cran) check
    whether HTML math rendering _via_ KaTeX works for the package .Rd
    files.
  * Non-interactive debugger invocations can be trapped by setting
    the environment variable _R_CHECK_BROWSER_NONINTERACTIVE_ to a
    true value.  This is enabled by R CMD check --as-cran to detect
    the use of leftover browser() statements in the package.
  * The use of sprintf and vsprintf from C/C++ has been deprecated in
    macOS 13 and is a known security risk.  R CMD check now reports
    (on all platforms) if their use is found in compiled code:
    replace by snprintf or vsnprintf respectively. [*NB:* whether
    such calls get compiled into the package is platform-dependent.]
  * Where recorded at installation, R CMD check reports the C and
    Fortran compilers used to build R.
    It reports the OS in use (if known, as given by osVersion) as
    well as that R was built for.
    It notes if a C++ standard was specified which is older than the
    current default: many packages have used C++11 to mean 'not
    C++98' - as C++11 is the minimum supported since R 4.0.0, that
    specification can probably be removed.
  * R CMD INSTALL reports the compilers (and on macOS, the SDK) used,
    and this is copied to the output of R CMD check.
    Where a C++ standard is specified, it is reported.
  * R CMD check's 'checking compilation flags in Makevars' has been
    relaxed to accept the use of flags such as -std=f2008 in
    PKG_FFLAGS.
  * tools::buildVignettes() has a new argument skip, which is used by
    R CMD check to skip (and note) vignettes with unavailable
    \VignetteDepends (PR#18318).
  * New generic .AtNames() added to enable class-specific completions
    after @. The formerly internal function findMatches() is now
    exported, mainly for use in methods for .DollarNames() and
    .AtNames().
  DEPRECATED AND DEFUNCT:
  * default.stringsAsFactors() is defunct.
  * Calling as.data.frame.&lt;class&gt;() directly (for 12 atomic classes)
    is going to be formally deprecated, currently activated by
    setting the environment variable
    _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ to non-empty, which also
    happens in R CMD check --as-cran.
  BUG FIXES:
  * Hashed environments with sizes less than 5 can now grow.
    (Reported to R-devel by Duncan Garmonsway.)
  * as.character(&lt;Rd&gt;, deparse = TRUE) failed to re-escape curly
    braces in LaTeX-like text.  (Reported by Hadley Wickham in
    PR#18324.)
  * library() now passes its lib.loc argument when requiring Depends
    packages; reported (with fix) in PR#18331 by Mikael Jagan.
  * R CMD Stangle: improved message about 'Output' files.
  * head(x, n) and tail(x, n) now signal an error if n is not
    numeric, instead of incidentally "working" sometimes returning
    all of x.  Reported and discussed by Colin Fay, in PR#18357.
  * The "lm" method for summary() now gives the correct F-statistic
    when the model contains an offset.  Reported in PR#18008.
  * C() and `contrasts&lt;-`() now preserve factor level names when
    given a function object (as opposed a function name which did
    preserve names). Reported in PR#17616.
  * c(a = 1, 2)[[]] no longer matches 2 but rather signals a
    _classed_ error.  Reported and analysed by Davis Vaughan in
    PR#18367, a duplicate of PR#18004, by Jan Meis et al.  For
    consistency, NULL[[]] is also erroneous now.  x[[]] &lt;- v gives an
    error of the same class "MissingSubscriptError".
  * The relist() function of utils now supports NULL elements in the
    skeleton (PR#15854).
  * ordered(levels = *) (missing x) now works analogously to factor(,
    ordered=TRUE); reported (with fix) by Achim Zeileis in PR#18389.
  * User-defined Rd macro definitions can now span multiple lines,
    thanks to a patch from Duncan Murdoch. Previously, the Rd parser
    silently ignored everything after the first line.
  * Plain-text help (tools::Rd2txt()) now preserves an initial blank
    line for text following description list items.
  * tools::Rd2HTML() and tools::Rd2latex() no longer split \arguments
    and \value lists at Rd comments.
  * tools::Rd2latex() now correctly handles optional text outside
    \items of argument lists as well as bracketed text at the
    beginning of sections, e.g., \value{[NULL]}.
  * as.character(&lt;POSIXt&gt;) now behaves more in line with the methods
    for atomic vectors such as numbers, and is no longer influenced
    by options().  Ditto for as.character(&lt;Date&gt;).  The
    as.character() method gets arguments digits and OutDec with
    defaults _not_ depending on options().  Use of as.character(*,
    format = .) now warns.
  * Similarly, the as.character.hexmode() and *.octmode() methods
    also behave as good citizen methods and back compatibility option
    keepStr = TRUE.
  * The as.POSIXlt(&lt;POSIXlt&gt;) and as.POSIXct(&lt;POSIXct&gt;) default
    methods now do obey their tz argument, also in this case.
  * as.POSIXlt(&lt;Date&gt;) now does apply a tz (time zone) argument, as
    does as.POSIXct(); partly suggested by Roland Fuss on the R-devel
    mailing list.
  * as.Date.POSIXlt(x) now also works when the list components are of
    unequal length, aka "partially filled" or "ragged".
  * expand.model.frame() looked up variables in the wrong environment
    when applied to models fitted without data.  Reported in
    PR#18414.
  * time() now (also) uses the ts.eps = getOption("ts.eps") argument
    and thus by default rounds values very close to the start (or
    end) of a year.  Based on a proposal by Andre"i V. Kostyrka on
    R-help.
  * Printing of a factanal() result with just one factor and sort =
    TRUE now works regularly, fixing PR#17863 by Timothy Bates,
    thanks to the 'R Contributors' working group.
  * Printing 0-length objects of class "factor", "roman", "hexmode",
    "octmode", "person", "bibentry", or "citation" now prints
    something better, one of which fixes PR#18422, reported by
    Benjamin Feakins.
  * Sys.timezone() queries timedatectl only if systemd is loaded;
    addressing a report by Jan Gorecki in PR#17421.
  * The formula method of cor.test() had scoping problems when
    environment(formula) was not the calling environment; reported
    with a patch proposal by Mao Kobayashi in PR#18439.
  * attach() of an environment with active bindings now preserves the
    active bindings.  Reported by Kevin Ushey in PR#18425.
  * BLAS detection now works also with system-provided libraries not
    available as regular files.  This fixes detection of the
    Accelerate framework on macOS since Big Sur.  Reported by David
    Novgorodsky.
  * download.file() gives a helpful error message in case of an
    invalid download.file.method option, thanks to Colin Fay's report
    in PR#18455.
  * Sporadic crashes of Rterm when using completion have been fixed.
  * Rprof() is now more reliable.  A livelock in thread
    initialization with too short sampling interval has been fixed on
    macOS.  A deadlock in using the C runtime has been fixed on
    Windows.  A potential deadlock has been prevented on Unix.
  * Cursor placement in Rgui now works even after a fixed-width font
    is selected.
  * Mandatory options (options()) are now set on startup so that
    saving and restoring them always works (PR#18372).
  * Package installation, R CMD INSTALL or install.packages(*), now
    parses each of the &lt;pkg&gt;/R/*.R files individually instead of
    first concatenating and then parse()ing the large resulting file.
    This allows parser or syntax errors to be diagnosed with correct
    file names and line numbers, thanks to Simon Dedman's report and
    Bill Dunlap's patch in PR#17859.
    This _does_ require syntactically self contained R source files
    now, fixing another inadvertent bug.
  * predict.lm(&lt;model with offset&gt;) now finds the offset in the
    correct environment, thanks to Andr'e Gillibert's report and patch
    in PR#18456.
  * getInitial(&lt;formula&gt;) now finds the selfStart model in the
    correct environment.  (Reported by Ivan Krylov in PR#18368.)
  * Fix for possible segfault when using recently-added graphics
    features, such as gradients, clipping paths, masks, and groups
    with pdf(file=NULL).
  * class(m) &lt;- class(m) no longer changes a matrix m by adding a
    class _attribute_.
  * packageDate(pkg) now only warns once if there is no pkg.
  * When ts() creates a multivariate time series, "mts", it also
    inherits from "array" now, and is.mts() is documented _and_
    stricter.
  * Rd2txt() now preserves line breaks of \verb Rd content and from
    duplicated \cr.  The former also fixes the rendering of verbatim
    output from Rd \Sexpr in plain-text help.
  * uniroot(f, interval) should no longer wrongly converge _outside_
    the interval in some cases where abs(f(x)) == Inf for an x at the
    interval boundary, thanks to posts by Ben Bolker and Serguei
    Sokol on R-devel.
  * Vectorized alpha handling in palette functions such as in gray(),
    rainbow(), or hcl.colors() works correctly now, thanks to Achim
    Zeileis' report and patch in PR#18476.
  * Formatting and print()ing of bibentry objects has dropped the
    deprecated citation.bibtex.max argument, such that the bibtex
    argument's default for print.bibentry() depends directly on the
    citation.bibtex.max option, whereas in format.bibentry() the
    option no longer applies.
  * Attempting to use a character string naming a foreign function
    entry point in a foreign function call in a package will now
    signal an error if the packages has called R_forceSymbols to
    specify that symbols must be used.
  * An error in table() could permanently set options(warn=2)
    promoting all subsequent warnings to errors.
  * The sigma() function gave misleading results for binary GLMs.  A
    new method for objects of class "glm" returns the square root of
    the estimate of the dispersion parameter using the same
    calculation as summary.glm().
  * bs() and ns() in the (typical) case of automatic knot
    construction, when some of the supposedly inner knots coincide
    with boundary knots, now moves them inside (with a warning),
    building on PR#18442 by Ben Bolker.
  * R CMD on Windows now skips the site profile with --no-site-file
    and --vanilla even when R_PROFILE is set (PR#18512, from Kevin
    Ushey).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1686916800">- CHANGES IN R 4.3.1:
  C-LEVEL FACILITIES:
  * The C-level API version of R's integrate(), Rdqags() in Applic.h,
    now returns the correct number of integrand evaluations neval,
    fixing PR#18515 reported and diagnosed by Stephen Wade.
  * The C prototypes for LAPACK calls dspgv and dtptrs in
    R_exts/Lapack.h had one too many and one too few character length
    arguments - but this has not caused any known issues. To get the
    corrected prototypes, include
    [#]include &lt;Rconfig.h&gt; // for PR18534fixed
    [#]ifdef PR18534fixed
    [#] define usePR18534fix 1
    [#]endif
    [#]include &lt;R_exts/Lapack.h&gt;
    in your C/C++ code (PR#18534).
  INSTALLATION:
  * Many of the checks of esoteric Internet operations and those
    using unreliable external sites have been moved to a new target
    that is not run by default and primarily intended for the core
    developers.  To run them use
    cd tests; make test-Internet-dev
  BUG FIXES:
  * .S3methods(), typically called from methods(), again marks
    methods from package base as visible.
    Also, the visibility of non-base methods is again determined by
    the method's presence in search().
  * tools::Rdiff() is now more robust against invalid strings, fixing
    installation tests on Windows without Rtools installed
    (PR#18530).
  * Fix (new) bug in hcl.colors(2, *), by Achim Zeileis (PR#18523).
  * head(., &lt;illegal&gt;) and tail(..) now produce more useful "Error in
    ...." error messages, fixing PR#18362.
  * Package code syntax on Windows is checked in UTF-8 when UTF-8 is
    the native encoding.
  * na.contiguous(x) now also returns the first run, when it is at
    the beginning and there is a later one of the same length;
    reported to R-devel, including a fix, by Georgi Boshnakov.
    Further, by default, it modifies only an existing attr(*,"tsp")
    but otherwise no longer sets one.
  * chol(&lt;not pos.def&gt;, pivot = &lt;T|F&gt;) now gives a correct error or
    warning message (depending on pivot), thanks to Mikael Jagan's
    (PR#18541).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1699012800">- CHANGES IN R 4.3.2:
  NEW FEATURES:
  * The default initialization of the "repos" option from the
    repositories file at startup can be skipped by setting
    environment variable R_REPOSITORIES to NULL such that
    getOption("repos") is empty if not set elsewhere.
  * qr.X() is now an implicit S4 generic in methods.
  * iconv(to = "ASCII//TRANSLIT") is emulated using substitution on
    platforms which do not support it (notably Alpine Linux).  This
    should give a human-readable conversion in ASCII on all platforms
    (rather than NA_character_).
  * trans3d() gains options continuous and verbose addressing the
    problem of possible "wrap around" when projecting too long
    curves, as reported by Achim Zeileis in PR#18537.
  * tools::showNonASCII() has been rewritten to work better on macOS
    14 (which has a changed implementation of iconv()).
  * tiff(type = "quartz") (the default on macOS) now warns if
    compression is specified: it continues to be ignored.
  INSTALLATION on a UNIX-ALIKE:
  * There is some support for building with Intel's LLVM-based
    compilers on x86_64 Linux, such as (C) icx, (C++) ipcx and
    (Fortran) ifx from oneAPI 2023.x.y.
  * There is support for using LLVM's flang-new as the Fortran
    compiler from LLVM 16.0.x (preferably 17.0.0 or later).
  UTILITIES:
  * R CMD check reports the use of the Fortran 90 random number
    generator RANDOM_NUMBER() and the subroutines to initialize it.
    'Writing R Extensions' has example code to use R's RNGs from
    Fortran.
  BUG FIXES:
  * substr(x, n, L) &lt;- cc now works (more) correctly for multibyte
    UTF-8 strings x when L &gt; nchar(x), thanks to a report and patch
    by 'Architect 95'.
  * contrib.url(character()) now returns 0-length character() as
    documented, which also avoids spurious warnings from
    available.packages() et al. in the edge case of an empty vector
    of repository URLs.
  * readChar(., 4e8) no longer fails, thanks to Kodi Arfer's report
    (PR#18557).
  * lapply(&lt;list&gt;, as.data.frame) no longer warns falsely for some
    base vector components.
  * Communication between parent and child processes in the multicore
    part of parallel could fail on platforms that do not support an
    arbitrarily large payload in system functions read()/write() on
    pipes (seen on macOS where a restriction to INT_MAX bytes is
    documented, without doing a partial read unlike Linux). The
    payload is now split into 1Gb chunks to avoid that problem.
    (PR#18571)
  * qqplot(x,y, conf.level=.) gives better confidence bounds when
    length(x) != length(y), thanks to Alexander Ploner's report and
    patch proposal (PR#18557).
  * norm(&lt;0-length&gt;, "2") now gives zero instead of an error, as all
    the other norm types, thanks to Mikael Jagan's PR#18542.
  * Build-stage Rd macros \packageAuthor and \packageMaintainer now
    process Authors@R, fixing NA results when the package DESCRIPTION
    omits Author and Maintainer fields.
  * Formatting and printing complex numbers could give things like
    0.1683-0i because of rounding error: -0i is now replaced by +0i.
  * postscript() refused to accept a title comment containing the
    letter "W" (PR#18599).
  * isoreg(c(1,Inf)) signals an error instead of segfaulting, fixing
    PR#18603.
  * tiff(type = "Xlib") was only outputting the last page of
    multi-page plots.
  * tools::latexToUtf8() again knows about \~{n} and other letters
    with tilde, fixing a regression in R 4.3.0, and about \^{i} as an
    alternative to \^{\i} (similarly with other accents).
    Furthermore, LaTeX codes for accented I letters are now correctly
    converted, also fixing related mistakes in
    tools::encoded_text_to_latex().
  * tar(*, tar = "internal") no longer creates out-of-spec tar files
    in the very rare case of user or group names longer than 32
    bytes, fixing PR#17871 with thanks to Ivan Krylov.
  * When using the "internal" timezone datetime code, adding a
    fraction of a second no longer adds one second, fixing PR#16856
    from a patch by Ivan Krylov.
  * tools::checkRd() no longer produces spurious notes about
    "unnecessary braces" from multi-line Rd results of \Sexpr macros.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1709208000">- CHANGES IN R 4.3.3:
  NEW FEATURES:
  * iconv() now fixes up variant encoding names such as "utf8"
    case-insensitively.
  DEPRECATED AND DEFUNCT:
  * The legacy encoding = "MacRoman" is deprecated in pdf() and
    postscript(): support was incomplete in earlier versions of R.
  BUG FIXES:
  * Arguments are now properly forwarded to methods on S4 generics
    with ... in the middle of their formal arguments. This was broken
    for the case when a method introduced an argument but did not
    include ... in its own formals. Thanks to Herv'e Pag`es for the
    report PR#18538.
  * Some invalid file arguments to pictex(), postscript() and xfig()
    opened a file called NA rather than throw an error.  These
    included postscript(NULL) (which some people expected to work
    like pdf(NULL)).
  * Passing filename = NA to svg(), cairo_pdf(), cairo_ps() or the
    Cairo-based bitmap devices opened a file called NA: it now throws
    an error.
  * quartz(file = NA) opened a file called NA, including when used as
    a Quartz-based bitmap device.  It now gives an error.
  * rank(&lt;long vector&gt;) now works, fixing PR#18617, thanks to Ilia
    Kats.
  * seq.int() did not adequately check its length.out argument.
  * match(&lt;POSIXct&gt;, .) is correct again for differing time zones,
    ditto for "POSIXlt", fixing PR#18618 reported by Bastian Klein.
  * drop.terms(*, dropx = &lt;0-length&gt;) now works, fixing PR#18563 as
    proposed by Mikael Jagan.
  * drop.terms(*) keeps + offset(.) terms when it should, PR#18565,
    and drop.terms() no longer makes up a response, PR#18566, fixing
    both bugs thanks to Mikael Jagan.
  * getS3method("t", "test") no longer finds the t.test() function,
    fixing PR#18627.
  * pdf() and postscript() support for the documented Adobe encodings
    "Greek" and "Cyrilllic" was missing (although the corresponding
    Windows' codepages could be used).
  * Computations of glyph metric information for pdf() and
    postscript() did not take into account that transliteration could
    replace one character by two or more (only seen on macOS 14) and
    typically warned that the information was not known.
  * rank(x) no longer overflows during integer addition, when
    computing rank average for largish but not-yet long vector x,
    fixing PR#18630, thanks to Ilia Kats.
  * list.files() on Windows now returns also files with names longer
    that 260 bytes (the Windows limit is 260 characters).
    Previously, some file names particularly with 'East Asian'
    characters were omitted.
  * cov2cor(&lt;0 x 0&gt;) now works, fixing PR#18423 thanks to Mikael
    Jagan and Elin Waring.
  * cov2cor(&lt;negative diagonal&gt;) and similar now give one warning
    instead of two, with better wording, fixing PR#18424 thanks to
    Mikael Jagan.
  * tools:: startDynamicHelp() now ensures port is in proper range,
    fixing PR#18645.
  * pbeta(x, a,b) is correct now for x=0 or 1 in the boundary cases
    where a or b or both are 0, fixing PR#18672 thanks to Michael
    Fay.
  * pmatch(x, table) for large table, also called for data frame row
    selection, dfrm[nm, ], is now interruptible, fixing PR#18656.
  * predict(&lt;rank-deficient lm&gt;, newdata=*) fix computing of nbasis,
    see Russ Lenth's comment 29 in PR#16158.
  * Added a work-around for a bug in macOS 14.3.1 and higher which
    prevents R plots in the Quartz Cocoa device from updating on
    screen.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1713960000">- CHANGES IN R 4.4.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Startup banners, R --version, sessionInfo() and R CMD check no
    longer report (64-bit) as part of the platform as this is almost
    universal - the increasingly rare 32-bit platforms will still
    report (32-bit).
    On Windows, ditto for window titles.
  * is.atomic(NULL) now returns FALSE, as NULL is not an atomic
    vector.  Strict back-compatibility would replace is.atomic(foo)
    by (is.null(foo) || is.atomic(foo)) but should happen only
    sparingly.
  NEW FEATURES:
  * The confint() methods for "glm" and "nls" objects have been
    copied to the stats package.  Previously, they were stubs which
    called versions in package MASS. The MASS namespace is no longer
    loaded if you invoke (say) confint(glmfit).  Further, the "glm"
    method for profile() and the plot() and pairs() methods for class
    "profile" have been copied from MASS to stats.  (profile.nls()
    and plot.profile.nls() were already in stats.)
  * The confint() and profile methods for "glm" objects have gained a
    possibility to do profiling based on the Rao Score statistic in
    addition to the default Likelihood Ratio. This is controlled by a
    new test = argument.
  * The pairs() method for "profile" objects has been extended with a
    which = argument to allow plotting only a subset of the
    parameters.
  * The "glm" method for anova() computes test statistics and
    p-values by default, using a chi-squared test or an F test
    depending on whether the dispersion is fixed or free.  Test
    statistics can be suppressed by giving argument test a false
    logical value.
  * In setRepositories() the repositories can be set using their
    names via name = instead of index ind =.
  * methods() and .S3methods() gain a all.names option for the (rare)
    case where functions starting with a . should be included.
  * Serializations can now be interrupted (e.g., by Ctrl-C on a
    Unix-alike) if they take too long, e.g., from save.image(),
    thanks to suggestions by Ivan Krylov and others on R-devel.
  * New startup option --max-connections to set the maximum number of
    simultaneous connections for the session.  Defaults to 128 as
    before: allowed values up to 4096 (but resource limits may in
    practice restrict to smaller values).
  * R on Windows (since Windows 10 2004) now uses the new Segment
    Heap allocator. This may improve performance of some
    memory-intensive applications.
  * When R packages are built, typically by R CMD build &lt;pkg&gt;, the
    new --user=&lt;build_user&gt; option overrides the (internally
    determined) user name, currently Sys.info()["user"] or LOGNAME.
    This is a (modified) fulfillment of Will Landau's suggestion in
    PR#17530.
  * tools::testInstalledBasic() gets new optional arguments outDir
    and testSrcdir, e.g., allowing to use it in a &lt;builddir&gt; !=
    &lt;srcdir&gt; setup, and in standard "binary" Windows installation
  * if* a source tests/ folder is present.
  * range(&lt;DT_with_Inf&gt;, finite = TRUE) now work for objects of class
    "Date", "POSIXct", and "POSIXlt" with infinite entries,
    analogously to range.default(), as proposed by Davis Vaughan on
    R-devel.  Other range()-methods can make use of new function
    .rangeNum().
  * New .internalGenerics object complementing .S3PrimitiveGenerics,
    for documentation and low-level book-keeping.
  * grid() now invisibly returns the x- and y- coordinates at which
    the grid-lines were drawn.
  * norm(., type) now also works for complex matrices.
  * kappa(., exact = TRUE, norm = *) now works for all norms and also
    for complex matrices.  In symmetric / triangular cases, the new
    argument uplo = "U" | "L" allows the upper or lower triangular
    part to be specified.
  * memDecompress(type = "unknown") recognizes compression in the
    default 'zlib' format as used by memCompress(type = "gzip").
  * memCompress() and memDecompress() will use the libdeflate library
    (&lt;https://github.com/ebiggers/libdeflate&gt;) if installed.  This
    uses the same type of compression for type = "gzip" but is 1.5-2x
    faster than the system libz library on some common platforms: the
    speed-up may depend on the library version.
  * diff() for objects of class "Date", "POSIXct", and "POSIXlt"
    accepts a units argument passed via ....
  * Dynamic help now does a much better job of rendering package
    DESCRIPTION metadata.
  * Rprof() gains an event argument and support for elapsed (real)
    time profiling on Unix (PR#18076).
  * filled.contour() gains a key.border argument.
  * tools::update_pkg_po() gets arguments pot_make and mo_make for
    _not_ re-making the corresponding files, and additionally a
    verbose argument.
  * Hexadecimal string colour specifications are now accepted in
    short form, so, for example, we can use "#123", which is
    equivalent to "#112233".
    Thanks to MikeFC for the original idea and Ella Kaye, Malcolm
    Barrett, George Stagg, and Hanne Oberman for the patch.
  * Plain-text help shows \var markup by angle brackets.
  * The new experimental primitive function declare() is intended to
    eventually allow information about R code to be communicated to
    the interpreter, compiler, and code analysis tools. The syntax
    for declarations is still being developed.
  * Functions psmirnov(), qsmirnov() and rsmirnov() in package stats
    have had argument two.sided renamed to alternative, to take into
    account that the permutation distributions of the one-sided
    statistics can be different in the case of ties.  Consequence of
    PR#18582.
  * sort() is now an implicit S4 generic in methods.
  * Formatting and printing, format(z), print(z), of complex vectors
    z no longer zap relatively small real or imaginary parts to zero,
    fixing PR#16752.  This is an API change, as it was documented
    previously to round real and imaginary parts together on purpose,
    producing nicer looking output.  As mentioned, e.g. in the PR,
    this change is compatible with many other "R-like" programming
    environments.
    We have simplified the internal code and now basically format the
    real and imaginary parts independently of each other.
  * New experimental functions Tailcall() and Exec() to support
    writing stack-space-efficient recursive functions.
  * Where characters are attempted to be plotted by pdf(),
    postscript() and xfig() which are not in the selected 8-bit
    character set (most often Latin-1) and the R session is using a
    UTF-8 locale, the warning messages will show the UTF-8 character
    rather than its bytes and one dot will be substituted per
    character rather than per byte.  (Platforms whose iconv() does
    transliteration silently plot the transliteration.)
    In a UTF-8 locale some transliterations are now done with a
    warning (e.g., dashes and Unicode minus to hyphen, ligatures are
    expanded, permille (‰) is replaced by o/oo), although the OS may
    have got there first.  These are warnings as they will continue
    to be replaced by dots in earlier versions of R.
  * The matrix multiplication functions crossprod() and tcrossprod()
    are now also primitive and S3 generic, as %*% had become in R
    4.3.0.
  * source() and example() have a new optional argument catch.aborts
    which allows continued evaluation of the R code after an error.
  * The non-Quartz tiff() devices allow additional types of
    compression if supported by the platform's libtiff library.
  * The list of base and recommended package names is now provided by
    tools::standard_package_names().
  * cairo_pdf() and cairo_ps() default to onefile = TRUE to closer
    match pdf() and postscript().
  * New option catch.script.errors provides a documented way to catch
    errors and then continue in non-interactive use.
  * L %||% R newly in base is an expressive idiom for the phrases
    if(!is.null(L)) L else R or if(is.null(L)) R else L.
  * The return value from warnings() now always inherits from
    "warnings" as documented, now also in the case of no warnings
    where it previously returned NULL.
  * as.complex("1i") now returns 0 + 1i instead of NA with a warning.
  * z &lt;- c(NA, 1i) now keeps the imaginary part Im(z[1]) == 0, no
    longer coercing to NA_complex_.  Similarly, cumsum(z) correctly
    sums real and imaginary parts separately, i.e., without
    "crosstalk" in case of NAs.
  * On Alpine Linux iconv() now maps "latin2", "latin-2", "latin9"
    and "latin-9" to encoding names the OS knows about
    (case-insensitively).
  * iconv(sub = "Unicode") now always zero-pads to four (hex) digits,
    rather than to 4 or 8.  (This seems to have become the convention
    once Unicode restricted the number of Unicode points to 2^21 - 1
    and so will never need more than 6 digits.)
  * NCOL(NULL) now returns 0 instead of 1, for consistency with
    cbind().
  * The information for the Euro glyph missing from the Adobe .afm
    files for the Courier, Helvetica and Times families has been
    copied from their URW equivalents - this will improve vertical
    centring in the pdf() and postscript() devices.
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.12.0.  The changes are almost entirely cosmetic.
  * The included LAPACK sources have been updated to version 3.12.0
    and some further double-complex routines added.
  * There are new font families for the 2014--5 URW 2.0 fonts (see
    ?pdf) which are included in recent versions of Ghostscript.
    These have font widths for most Greek glyphs and a few others
    which were missing from the original versions (whose font
    families remain available for reproducibility, although
    Ghostscript-based viewers will render using the 2.0 versions).
  * Improve the large-n efficiency of as.matrix(&lt;dist&gt;), thanks an R
    contributors effort, notably by Tim Taylor and Heather Turner,
    see PR#18660.
  * The default and numeric methods of all.equal() get a check.class
    option.
  * zapsmall() gets new optional arguments, function mFUN and min.d,
    for extra flexibility; fulfills a wish in PR#18199.  Also, it is
    now an implicit S4 generic in package methods.
  * The Rd filter for aspell() gains an ignore argument.
  * New generic function sort_by(), primarily useful for the
    data.frame method which can be used to sort rows of a data frame
    by one or more columns.
  * The icence headers for the RPC code in src/extra/xdr have been
    updated to use the GPL-compatible licence published by Oracle
    America in 2010.
  * New function pkg2HTML() in tools to create single-page HTML
    reference manuals for R packages.
  * The byte code evaluator now uses less C stack space for recursive
    calls to byte-compiled functions. It also makes more of an effort
    to avoid allocations for scalar return values.
  * New completion option backtick (disabled by default) allows
    non-syntactic completions to be wrapped in backquotes. This is
    currently only useful for Jupyter notebooks via the IRkernel
    package, and may cause problems for other backends.
  INSTALLATION:
  * The parser has been updated to work with bison 3.8.2, which is
    now used for the pre-generated parsers in gram.c, file.c, and
    gramRd.c. A few parser error messages have changed, which may
    affect code that relies on exact messages.
  INSTALLATION on a UNIX-ALIKE:
  * System valgrind headers are now required to use configure option
  - -with-valgrind-instrumentation with value 1 or 2.
  * configure will warn if it encounters a 32-bit build, as that is
    nowadays almost untested.
  * Environment variable R_SYSTEM_ABI is no longer used and so no
    longer recorded in etc/Renviron (it was not on Windows and was
    only ever used when preparing package tools).
  * If the libdeflate library and headers are available, libdeflate
    rather than libz is used to (de)compress R objects in lazy-load
    databases.  Typically tasks spend up to 5% of their time on such
    operations, although creating lazy-data databases is one of the
    exceptions.
    This can be suppressed if the library is available by the
    configure option --without-libdeflate-compression.
  * configure option --enable-lto=check has not worked reliably since
    2019 and has been removed.
  * The minimum autoconf requirement for a maintainer build has been
    increased to autoconf 2.71.
    It is intended to increase this to 2.72 for R 4.5.0: the
    distributed configure file was generated using 2.72.
  * The minimum version requirement for an external LAPACK has been
    reduced to 3.9.0.
  * No default C++ compiler is set if no C++17 compiler is detected:
    there is no longer an automatic fallback to C++14 or C++11.
    Compilers from the last five years should have sufficient
    support: for others macros CXX and CXXSTD can be set in file
    config.site to provide a fallback if needed.
    The Objective-C++ compiler now by default uses the standard
    selected by R for C++ (currently C++17) rather than the default
    standard for the C++ compiler (which on macOS is still C++98).
  INSTALLATION on macOS:
  * A new configure option --with-newAccelerate makes use of Apple's
    'new' BLAS / LAPACK interfaces in their Accelerate framework.
    Those interfaces are only available in macOS 13.3 or later, and
    building requires SDK 13.3 or later (from the Command Line Tools
    or Xcode 14.3 or later).
    By default the option uses new Accelerate for BLAS calls: to also
    use it for LAPACK use option --with-newAccelerate=lapack.  The
    later interfaces provide LAPACK 3.9.1 rather than 3.2.1: 3.9.1 is
    from 2021-04 and does not include the improved algorithms
    introduced in LAPACK 3.10.0 (including for BLAS calls).
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools44, an update of the Rtools43 toolchain.  It is
    based on GCC 13 and newer versions of MinGW-W64, binutils and
    libraries (targeting 64-bit Intel CPUs).  R-devel can no longer
    be built using Rtools43 without changes.
  * Rtools44 has experimental support for 64-bit ARM (aarch64) CPUs
    _via_ the LLVM 17 toolchain using lld, clang/flang-new and
    libc++.
  UTILITIES:
  * R CMD check notes when S4-style exports are used without
    declaring a strong dependence on package methods.
  * tools::checkRd() (used by R CMD check) detects more problems with
    \Sexpr-based dynamic content, including bad nesting of \Sexprs
    and invalid arguments.
  * tools::checkRd() now reports Rd titles and section names ending
    in a period; this is ignored by R CMD check unless environment
    variable _R_CHECK_RD_CHECKRD_MINLEVEL_ is set to -5 or smaller.
  * R CMD check now notes Rd files without an \alias, as long
    documented in 'Writing R Extensions' §1.3.1.  The check for a
    missing \description has been moved from tools::checkRd() to
    tools::checkRdContents().
  * R CMD check now visits inst/NEWS.Rd and OS-specific man
    subdirectories when checking Rd files.
  * tools::checkDocFiles() and tools::checkRdContents() now also
    check internal Rd files by default, but "specially" (ignoring
    missing documentation of arguments).
  * R CMD Rdiff gets option --useEx.
  * R CMD check now warns on non-portable uses of Fortran KIND such
    as INTEGER(KIND=4) and REAL(KIND=8).
    To see the failing lines set environment variable
    _R_CHECK_FORTRAN_KIND_DETAILS_ to a true value.
  * When checking Rd files, R CMD check now notes some of the "lost
    braces" that tools::checkRd() finds.  Typical problems are Rd
    macros missing the initial backslash (e.g., code{...}), in-text
    set notation (e.g., {1, 2}, where the braces need escaping), and
    \itemize lists with \describe-style entries of the form
    \item{label}{description}.
  * R CMD INSTALL (and hence check) will compile C++ code with
  - DR_NO_REMAP if environment variable _R_CXX_USE_NO_REMAP_ is set
    to a true value.  It is planned that this will in future become
    the default for compiling C++.
  * The new built-in Rd macro \dontdiff{} can be used to mark example
    code whose output should be ignored when comparing check output
    to reference output (tests/Examples/&lt;pkg&gt;-Ex.Rout.save).  The
    \dontdiff tag, like \donttest, is _not_ shown on the rendered
    help page, so provides a clean alternative to ##
    IGNORE_RDIFF_(BEGIN|END) comments.
  * R CMD build when there is no NAMESPACE, now uses the recommended
    exportPattern("^[^.]"), instead of exporting everything.
  * R CMD check now warns about non-ASCII characters in the NAMESPACE
    file (in addition to R files). Such packages are not portable and
    may fail to install on some platforms.
  C-LEVEL FACILITIES:
  * Headers R_ext/Applic.h and R-ext/Linpack.h used to include
    R_ext/BLAS.h although this was undocumented and unneeded by their
    documented entry points.  They no longer do so.
  * New function R_missing(), factored out from do_missing(), used to
    fix PR#18579.
  * SEXP type S4SXP has been renamed to OBJSXP to support
    experimenting with alternative object systems.  The S4SXP value
    can still be used in C code but is now deprecated.  Based on
    contributions from the R Consortium's Object-Oriented Programming
    Working Group.
  * New function pow1p(x,y) for accurate (1+x)^y.
  * mkCharLenCE was incorrectly documented to take a size_t length
    but was implemented with int (and character strings in R are
    limited to 2^31 - 1 bytes).
  DEPRECATED AND DEFUNCT:
  * data() no longer handles zipped data from long-defunct (since R
    2.13.0) --use-zip-data installations.
  * The legacy graphics devices pictex() and xfig() are now
    deprecated.  They do not support recent graphics enhancements and
    their font handling is rudimentary. The intention is to retain
    them for historical interest as long as they remain somewhat
    functional.
  * Support for encoding = "MacRoman" has been removed from the pdf()
    and postscript() devices - this was a legacy encoding supporting
    classic macOS up to 2001 and no longer has universal libiconv
    support.
  * is.R() is deprecated as no other S dialect is known to be in use
    (and this could only identify historical dialects, not future
    ones).
    Further information on calls can be obtained by setting the
    environment variable _R_DEPRECATED_IS_R_ to error which turns the
    deprecation warning into an error and so by default gives a
    traceback.  (This is done by R CMD check --as-cran.)
  * UseMethod() no longer forwards local variables assigned in the
    generic function into method call environments before evaluating
    the method body. This makes method calls behave more like
    standard function calls and makes method code easier to analyze
    correctly.
  * The twelve as.data.frame.&lt;class&gt;() methods which were deprecated
    only via _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ and in R CMD
    check --as-cran are formally deprecated now in favour of calling
    as.data.frame() or as.data.frame.vector().  The deprecation
    "check" now works also when as.data.frame() is S4 generic thanks
    to Ivan Krylov.
  * The default method for the directional comparison operators &lt;, &gt;,
    &lt;=, and &gt;= now signals an error when one of the operands is a
    language object, i.e. a symbol or a call.
  * For terms.formula(), deprecate abb and neg.out arguments
    _formally_ in addition to just documenting it.
  BUG FIXES:
  * The methods package is more robust to not being attached to the
    search path.  More work needs to be done.
  * pairwise.t.test() misbehaved when subgroups had 0 DF for
    variance, even with pool.sd = TRUE.  (PR#18594 by Jack Berry).
  * Probability distribution functions [dpq]&lt;distrib&gt;(x, *), but also
    bessel[IKJY](x, .) now consistently preserve attributes(x) when
    length(x) == 0, e.g., for a 2 x 0 matrix, thanks to Karolis
    Koncevičius' report PR#18509.
  * Group "Summary" computations such as sum(1:3, 4, na.rm = 5, NA,
    7, na.rm = LL) now give an error instead of either 17 or NN for
    LL true or false, as proposed by Ivan Krylov on the R-devel
    mailing list.  (This also means it is now an error to specify
    na.rm more than once.)
  * as.complex(x) now returns complex(real = x, imaginary = 0) for
    _all_ numerical and logical x, notably also for NA or
    NA_integer_.
  * Directories are now omitted by file.copy(, recursive = FALSE) and
    in file.append() (PR#17337).
  * gsub() and sub() are now more robust to integer overflow when
    reporting errors caused by too large input strings (PR#18346).
  * Top-level handlers are now more robust to attempts to remove a
    handler whilst handlers are running (PR#18508).
  * The handling of Alt+F4 in dialogs created on Windows using
    GraphApp has been fixed (PR#13870).
  * density() more consistently computes grid values for the
    FFT-based convolution, following Robert Schlicht's analysis and
    proposal in PR#18337, correcting density values typically by a
    factor of about 0.999.  Argument old.coords = TRUE provides back
    compatibility.
  * palette.colors() gains a name argument that defaults to FALSE
    controlling whether the vector of colours that is returned has
    names (where possible).  PR#18529.
  * tools::xgettext() no longer extracts the (non-translatable) class
    names from warningCondition and errorCondition calls.
  * S3method(&lt;gen&gt;, &lt;class&gt;, &lt;func&gt;) in the NAMESPACE file now works
    (again) when &lt;func&gt; is visible from the namespace, e.g.,
    imported, or in base.
  * getParseData(f) now also works for a function defined in the
    first of several &lt;pkg&gt;/R/*.R source files, thanks to Kirill
    Müller's report and Duncan Murdoch's patch in PR#16756.
  * Rd \Sexpr macros with nested #ifdef conditionals were not
    processed.
  * A non-blocking connection with non-default encoding (such as a
    socket) now correctly returns from readLines() after new data has
    arrived also when its EOF had been reached previously.  Thanks to
    Peter Meilstrup's report on R-devel and Ivan Krylov's report and
    patch proposal in PR#18555.
  * tools::checkRdContents() failed to detect empty argument
    descriptions when they spanned multiple lines, including those
    generated by prompt().  These cases are now noted by R CMD check.
  * Plain-text help no longer outputs spurious colons in the
    arguments list (for multi-line \item labels in the Rd source).
  * kappa() and rcond() work correctly in more cases; kappa(., norm =
    "2") now warns that it computes the 1-norm with (default) exact =
    FALSE; prompted by Mikael Jagan's quite comprehensive PR#18543.
  * Rd skeletons generated by prompt() or promptData() now use a
    dummy title (so R CMD build works).  tools::checkRdContents() has
    been updated to detect such template leftovers, including from
    promptPackage().
  * When S4 method dispatch fails because no method was found, the
    error message now includes the signature argument names; thanks
    to Michael Chirico's proposal on the R-devel list.
  * withAutoprint({ .. }) now preserves srcrefs previously lost,
    thanks to Andrew Simmons' report plus fix in PR#18572.
  * transform.data.frame() no longer adjusts names; in particular,
    untransformed variables are kept as-is, including those with
    syntactically invalid names (PR#17890).
  * The keep.source option for Rd \Sexpr blocks is no longer ignored.
  * The formula methods for t.test() and wilcox.test() now catch when
    paired is passed, addressing PR#14359; use Pair(x1, x2) ~ 1 for a
    paired test.
  * The level reported in the browser prompt was often too large. It
    now shows the number of browser contexts on the stack.
  * For cbind() and rbind(), the optional deparse.level argument is
    now properly passed to methods, thanks to Mikael Jagan's PR#18579
    and comments there.
  * Some error and warning messages for large ('long vector')
    matrix(v, nr, nc) and dim(m) &lt;- d are now correct about sizes,
    using long long formatting, fixing PR#18612 (and more) reported
    by Mikael Jagan.
  * readChar(useBytes = TRUE) now terminates strings even when the
    underlying connection uses extra spaces in the input buffer.
    This fixes problems with extra garbage seen with gzip
    connections, PR#18605.
  * Named capture in PCRE regular expressions now works also with
    more than 127 named groups (PR#18588).
  * Datetime functions are now robust against long jumps when dealing
    with internal time zone changes.  This avoids confusing warnings
    about an invalid time zone, previously triggered by turning
    warnings into errors or handling them via tryCatch (PR#17966,
    PR#17780).
  * Datetime functions now restore even an empty TZ environment
    variable after internal time zone changes (PR#17724).  This makes
    results of datetime functions with this (typically unintentional)
    setting more predictable.
  * drop.terms(*) now drops response as by default, keep.response =
    FALSE, fixing PR#18564 thanks to Mikael Jagan.
  * dummy.coef(.) now also works for lm()-models with character
    categorical predictor variables rather than factor ones, fixing
    PR#18635 reported by Jinsong Zhao.
  * formals(f) &lt;- formals(f) now also works for a function w/o
    arguments and atomic _constant_ body(f).
  * Correct as.function(&lt;invalid list&gt;, .)'s error message.
  * removeSource() is yet more thorough in finding and removing
    "srcref" and the other source references from parsed R language
    chunks, fixing PR#18638 thanks to Andrew Simmons.
  * dgeom() is more accurate now, notably when its result is very
    small, fixing PR#18642 thanks to the proposal of Morten Welinder,
    also improving other instances where C level binom_raw(x, n, ..)
    has x == 0 or x== n.
  * warning() with options(warn = 1) has improved output for
    multi-line messages.
  * axis.Date() and axis.POSIXct() now respect the par("lab") setting
    for the number of pretty() intervals.
  * Comparisons for language objects (which are based on deparsing)
    are now more careful about using accurate deparsed results
    (PR#18676).
  * Plain-text help (Rd2txt) now correctly preserves blank lines
    following single-line \dontrun code.
  * &lt;POSIXlt&gt;[*] no longer sets wrong "balanced" attribute, fixing
    PR#18681 thanks to Mikael Jagan.
  * str(&lt;classed-call&gt;) now deparses the call as expected, fixing
    PR#18684, reported by Dave Slager.
  * In Rd examples, code following the closing brace of a \dontrun,
    \dontshow or \donttest tag on the same line is no longer skipped
    when R CMD check runs the examples.
  * as.data.frame(matrix(*, ncol=0)) now gets valid names() and
    colnames(); reported by Davis Vaughan on the R-devel list.
  * Internal Mathlib function stirlerr(n) is now almost fully
    (52-bit) accurate for all n &gt;= ~5.9 and more accurate also in the
    range 1 -- 5.9.  This entails small ("after 12th decimal")
    changes in density functions, e.g., dgamma() in _some_ regions of
    their support.  The fix was partly prompted by Morten Welinder's
    PR#18640.
  * Numbers like 9876543.2 are now considered non-integer by Mathlib
    internal R_nonint(), amending original fix of PR#15734.
  * Rd comment lines no longer cause broken paragraphs in the
    rendered PDF and plain-text help. In code blocks, pure comment
    lines (starting with %) no longer produce an empty line.
  * xtabs(Freq ~ .) now consistently defaults to na.action = na.pass,
    using na.rm = FALSE (added as an argument) when summing over Freq
    (PR#17770).
  * tools::testInstalledPackage() is no longer silent about failures
    from running examples or tests and its return code no longer
    ignores failures from checking vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1718366400">- CHANGES IN R 4.4.1:
  C-LEVEL FACILITIES:
  * Functions R_atof and R_strtod declared in header R_ext/Utils.h
    are now documented in 'Writing R Extensions' and so formally part
    of the API.
  * The non-API entry points Rf_setSVector, Rf_StringFalse,
    Rf_StringTrue and Rf_isBlankString have been added to those
    reported by R CMD check.
  * The new function Rf_allocLang is now available. This provides an
    alternative to the idiom of calling Rf_allocList followed by
    SET_TYPEOF.
  UTILITIES:
  * R CMD check now reports as warnings what gfortran calls 'Fortran
    2018 deleted features', all of which have long been marked as
    'obsolescent' and some of which were deleted in Fortran 2008 or
    earlier.  Fortran compilers are no longer required to support
    these.
  BUG FIXES:
  * as.numeric(), scan(), type.convert() and other places which use
    the internal C function R_strtod now require a _non-empty_ digit
    sequence in a decimal or binary exponent.  This aligns with the
    C/POSIX standard for strtod and with ?NumericConstants.
  * as.data.frame(m, make.names=NA) now works correctly for a matrix
    m with NA's in row names.
  * The error message from &lt;POSIXlt&gt;[["hour"]] and similar now
    mentions *[[, "hour"]], as wished for in PR#17409 and proposed by
    Michael Chirico.
  * qbinom() and potentially qpois(), qnbinom(), no longer sometimes
    fail accurate inversion (of pbinom(), etc), thanks to Christopher
    Chang's report and patch in PR#18711.
  * The internal help server on Windows can again serve requests sent
    in quick succession, fixing a regression in R 4.4.0.
  * debugcall(&lt;S3Generic&gt;()) now also works when a corresponding
    S4-generic version is in the methods cache (PR#18143).
  * Package tools' toTitleCase(ch0) now returns character(0) when ch0
    is of zero length; fixing PR#18724, reported by David Hugh Jones.
  * R CMD check is no longer broken (without a check result and no
    explanation in 00check.log) for a package which declares an
    invalid VignetteBuilder in DESCRIPTION but has no vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1730376000">- CHANGES IN R 4.4.2:
  C-LEVEL FACILITIES:
  * The S-compatibility macros F77_COM and F77_COMDECL defined in
    header R_ext/RS.h are deprecated and will be removed shortly.  We
    could find no record of their use.
  BUG FIXES:
  * Mathlib function lgammacor(x) no longer warns about underflow to
    zero for large x.
  * Text widths and heights were incorrectly reported by the Quartz
    device if the drawing context didn't exist yet (typically when
    drawing off-screen to a window that is yet to appear, see
    PR#18591).
  * The Quartz device could segfault in cases where paths with spaces
    are used in the new glyph drawing API.  Thanks to Tomek
    Gieorgijewski (PR#18758).
  * On macOS in R CRAN builds, it is again possible to read
    little-endian UTF-16 text with a BOM from a connection using
    encoding="UTF-16".  Users building R from source should avoid
    using the system libiconv in macOS 14.1 and later.
  * methods' internal .requirePackage() now re-enables primitive
    method dispatch when needed; thanks to Ivan Krylov for
    demystifying CRAN package check failures on the R-devel mailing
    list.</changelog>
</package>
<package pkgid="3e20ea92923f898e6302b5d9c696c9bab370f729ebc7206364181ec98cd0b428eebff60a59a6973038f075d7a1e949e4b87a0d079fb0c087125841aa1ba04188" name="R-boot" arch="i586">
  <version epoch="0" ver="1.3.31" rel="51.0.2.2.sr20241103"/>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1620302400">- To get in sync with d:l:R:autoCRAN the Matrix package's split
  in -devel was reversed.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339200">- improved spec file according to comments of dimstar in
  https://build.opensuse.org/request/show/892685</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339201">- CHANGES IN R 4.1.0:
  FUTURE DIRECTIONS:
  * It is planned that the 4.1.x series will be the last to support
    32-bit Windows, with production of binary packages for that
    series continuing until early 2023.
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Data set esoph in package datasets now provides the correct
    numbers of controls; previously it had the numbers of cases added
    to these.  (Reported by Alexander Fowler in PR#17964.)
  NEW FEATURES:
  * www.omegahat.net is no longer one of the repositories known by
    default to setRepositories().  (Nowadays it only provides source
    packages and is often unavailable.)
  * Function package_dependencies() (in package tools) can now use
    different dependency types for direct and recursive dependencies.
  * The checking of the size of tarball in R CMD check --as-cran
    &lt;pkg&gt; may be tweaked via the new environment variable
    _R_CHECK_CRAN_INCOMING_TARBALL_THRESHOLD_, as suggested in
    PR#17777 by Jan Gorecki.
  * Using c() to combine a factor with other factors now gives a
    factor, an ordered factor when combining ordered factors with
    identical levels.
  * apply() gains a simplify argument to allow disabling of
    simplification of results.
  * The format() method for class "ftable" gets a new option justify.
    (Suggested by Thomas Soeiro.)
  * New ...names() utility.  (Proposed by Neal Fultz in PR#17705.)
  * type.convert() now warns when its as.is argument is not
    specified, as the help file always said it _should_.  In that
    case, the default is changed to TRUE in line with its change in
    read.table() (related to stringsAsFactor) in R 4.0.0.
  * When printing list arrays, classed objects are now shown _via_
    their format() value if this is a short enough character string,
    or by giving the first elements of their class vector and their
    length.
  * capabilities() gets new entry "Rprof" which is TRUE when R has
    been configured with the equivalent of --enable-R-profiling (as
    it is by default).  (Related to Michael Orlitzky's report
    PR#17836.)
  * str(xS4) now also shows extraneous attributes of an S4 object
    xS4.
  * Rudimentary support for vi-style tags in rtags() and R CMD rtags
    has been added.  (Based on a patch from Neal Fultz in PR#17214.)
  * checkRdContents() is now exported from tools; it and also
    checkDocFiles() have a new option chkInternal allowing to check
    Rd files marked with keyword "internal" as well.  The latter can
    be activated for R CMD check via environment variable
    _R_CHECK_RD_INTERNAL_TOO_.
  * New functions numToBits() and numToInts() extend the raw
    conversion utilities to (double precision) numeric.
  * Functions URLencode() and URLdecode() in package utils now work
    on vectors of URIs.  (Based on patch from Bob Rudis submitted
    with PR#17873.)
  * path.expand() can expand ~user on most Unix-alikes even when
    readline is not in use.  It tries harder to expand ~, for example
    should environment variable HOME be unset.
  * For HTML help (both dynamic and static), Rd file links to help
    pages in external packages are now treated as references to
    topics rather than file names, and fall back to a file link only
    if the topic is not found in the target package. The earlier rule
    which prioritized file names over topics can be restored by
    setting the environment variable _R_HELP_LINKS_TO_TOPICS_ to a
    false value.
  * c() now removes NULL arguments before dispatching to methods,
    thus simplifying the implementation of c() methods, _but_ for
    back compatibility keeps NULL when it is the first argument.
    (From a report and patch proposal by Lionel Henry in PR#17900.)
  * Vectorize()'s result function's environment no longer keeps
    unneeded objects.
  * Function ...elt() now propagates visibility consistently with
    ..n.  (Thanks to Lionel Henry's PR#17905.)
  * capture.output() no longer uses non-standard evaluation to
    evaluate its arguments.  This makes evaluation of functions like
    parent.frame() more consistent.  (Thanks to Lionel Henry's
    PR#17907.)
  * packBits(bits, type="double") now works as inverse of
    numToBits().  (Thanks to Bill Dunlap's proposal in PR#17914.)
  * curlGetHeaders() has two new arguments, timeout to specify the
    timeout for that call (overriding getOption("timeout")) and TLS
    to specify the minimum TLS protocol version to be used for
    https:// URIs (_inter alia_ providing a means to check for sites
    using deprecated TLS versions 1.0 and 1.1).
  * For nls(), an optional constant scaleOffset may be added to the
    denominator of the relative offset convergence test for cases
    where the fit of a model is expected to be exact, thanks to a
    proposal by John Nash.  nls(*, trace=TRUE) now also shows the
    convergence criterion.
  * Numeric differentiation _via_ numericDeriv() gets new optional
    arguments eps and central, the latter for taking central divided
    differences.  The latter can be activated for nls() via
    nls.control(nDcentral = TRUE).
  * nls() now passes the trace and control arguments to getInitial(),
    notably for all self-starting models, so these can also be fit in
    zero-noise situations via a scaleOffset.  For this reason, the
    initial function of a selfStart model must now have ... in its
    argument list.
  * bquote(splice = TRUE) can now splice expression vectors with
    attributes: this makes it possible to splice the result of
    parse(keep.source = TRUE).  (Report and patch provided by Lionel
    Henry in PR#17869.)
  * textConnection() gets an optional name argument.
  * get(), exists(), and get0() now signal an error if the first
    argument has length greater than 1.  Previously additional
    elements were silently ignored.  (Suggested by Antoine Fabri on
    R-devel.)
  * R now provides a shorthand notation for creating functions, e.g.
    \(x) x + 1 is parsed as function(x) x + 1.
  * R now provides a simple native forward pipe syntax |&gt;.  The
    simple form of the forward pipe inserts the left-hand side as the
    first argument in the right-hand side call.  The pipe
    implementation as a syntax transformation was motivated by
    suggestions from Jim Hester and Lionel Henry.
  * all.equal(f, g) for functions now by default also compares their
    environment(.)s, notably via new all.equal method for class
    function.  Comparison of nls() fits, e.g., may now need
    all.equal(m1, m2, check.environment = FALSE).
  * .libPaths() gets a new option include.site, allowing to _not_
    include the site library.  (Thanks to Dario Strbenac's suggestion
    and Gabe Becker's PR#18016.)
  * Lithuanian translations are now available.  (Thanks to Rimantas
    Zakauskas.)
  * names() now works for DOTSXP objects.  On the other hand, in
    R-lang, the R language manual, we now warn against relying on the
    structure or even existence of such dot-dot-dot objects.
  * all.equal() no longer gives an error on DOTSXP objects.
  * capabilities("cairo") now applies only to the file-based devices
    as it is now possible (if very unusual) to build R with Cairo
    support for those but not for X11().
  * There is optional support for tracing the progress of
    loadNamespace() - see its help.
  * (Not Windows.)  l10n_info() reports an additional element, the
    name of the encoding as reported by the OS (which may differ from
    the encoding part (if any) of the result from
    Sys.getlocale("LC_CTYPE").
  * New function gregexec() which generalizes regexec() to find _all_
    disjoint matches and well as all substrings corresponding to
    parenthesized subexpressions of the given regular expression.
    (Contributed by Brodie Gaslam.)
  * New function charClass() in package utils to query the
    wide-character classification functions in use (such as
    iswprint).
  * The names of quantile()'s result no longer depend on the global
    getOption("digits"), but quantile() gets a new optional argument
    digits = 7 instead.
  * grep(), sub(), regexp and variants work considerably faster for
    long factors with few levels.  (Thanks to Michael Chirico's
    PR#18063.)
  * Provide grouping of x11() graphics windows within a window
    manager such as Gnome or Unity; thanks to a patch by Ivan Krylov
    posted to R-devel.
  * The split() method for class data.frame now allows the f argument
    to be specified as a formula.
  * sprintf now warns on arguments unused by the format string.
  * New palettes "Rocket" and "Mako" for hcl.colors() (approximating
    palettes of the same name from the 'viridisLite' package).
    Contributed by Achim Zeileis.
  * The base environment and its namespace are now locked (so one can
    no longer add bindings to these or remove from these).
  * Rterm handling of multi-byte characters has been improved,
    allowing use of such characters when supported by the current
    locale.
  * Rterm now accepts ALT+ +xxxxxxxx sequences to enter Unicode
    characters as hex digits.
  * Environment variable LC_ALL on Windows now takes precedence over
    LC_CTYPE and variables for other supported categories, matching
    the POSIX behaviour.
  * duplicated() and anyDuplicated() are now optimized for integer
    and real vectors that are known to be sorted via the ALTREP
    framework. Contributed by Gabriel Becker via PR#17993.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 14
    and so packages that provide graphics devices should be
    reinstalled.
  * Graphics devices should now specify deviceVersion to indicate
    what version of the graphics engine they support.
  * Graphics devices can now specify deviceClip.  If TRUE, the
    graphics engine will never perform any clipping of output itself.
    The clipping that the graphics engine does perform (for both
    canClip = TRUE and canClip = FALSE) has been improved to avoid
    producing unnecessary artifacts in clipped output.
  * The grid package now allows gpar(fill) to be a linearGradient(),
    a radialGradient(), or a pattern().  The viewport(clip) can now
    also be a grob, which defines a clipping path, and there is a new
    viewport(mask) that can also be a grob, which defines a mask.
    These new features are only supported so far on the Cairo-based
    graphics devices and on the pdf() device.
  * (Not Windows.)  A warning is given when a Cairo-based type is
    specified for a png(), jpeg(), tiff() or bmp() device but Cairo
    is unsupported (so type = "Xlib" is tried instead).
  * grSoftVersion() now reports the versions of FreeType and
    FontConfig if they are used directly (not _via_ Pango), as is
    most commonly done on macOS.
  C-LEVEL FACILITIES:
  * The _standalone_ libRmath math library and R's C API now provide
    log1pexp() again as documented, and gain log1mexp().
  INSTALLATION on a UNIX-ALIKE:
  * configure checks for a program pkgconf if program pkg-config is
    not found.  These are now only looked for on the path (like
    almost all other programs) so if needed specify a full path to
    the command in PKG_CONFIG, for example in file config.site.
  * C99 function iswblank is required - it was last seen missing ca
    2003 so the workaround has been removed.
  * There are new configure options --with-internal-iswxxxxx,
  - -with-internal-towlower and --with-internal-wcwidth which allows
    the system functions for wide-character classification,
    case-switching and width (wcwidth and wcswidth) to be replaced by
    internal ones.  The first has long been used on macOS, AIX (and
    Windows) but this enables it to be unselected there and selected
    for other platforms (it is the new default on Solaris).  The
    second is new in this version of R and is selected by default on
    macOS and Solaris.  The third has long been the default and
    remains so as it contains customizations for East Asian
    languages.
    System versions of these functions are often minimally
    implemented (sometimes only for ASCII characters) and may not
    cover the full range of Unicode points: for example Solaris (and
    Windows) only cover the Basic Multilingual Plane.
  * Cairo installations without X11 are more likely to be detected by
    configure, when the file-based Cairo graphics devices will be
    available but not X11(type = "cairo").
  * There is a new configure option --with-static-cairo which is the
    default on macOS.  This should be used when only static cairo
    (and where relevant, Pango) libraries are available.
  * Cairo-based graphics devices on platforms without Pango but with
    FreeType/FontConfig will make use of the latter for font
    selection.
  LINK-TIME OPTIMIZATION on a UNIX-ALIKE:
  * Configuring with flag --enable-lto=R now also uses LTO when
    installing the recommended packages.
  * R CMD INSTALL and R CMD SHLIB have a new flag --use-LTO to use
    LTO when compiling code, for use with R configured with
  - -enable-lto=R.  For R configured with --enable-lto, they have
    the new flag --no-use-LTO.
    Packages can opt in or out of LTO compilation _via_ a UseLTO
    field in the DESCRIPTION file.  (As usual this can be overridden
    by the command-line flags.)
  BUILDING R on Windows:
  * for GCC &gt;= 8, FC_LEN_T is defined in config.h and hence character
    lengths are passed from C to Fortran in _inter alia_ BLAS and
    LAPACK calls.
  * There is a new text file src/gnuwin32/README.compilation, which
    outlines how C/Fortran code compilation is organized and
    documents new features:
  * R can be built with Link-Time Optimization with a suitable
    compiler - doing so with GCC 9.2 showed several
    inconsistencies which have been corrected.
  * There is support for cross-compiling the C and Fortran code
    in R and standard packages on suitable (Linux) platforms.
    This is mainly intended to allow developers to test later
    versions of compilers - for example using GCC 9.2 or 10.x has
    detected issues that GCC 8.3 in Rtools40 does not.
  * There is experimental support for cross-building R packages
    with C, C++ and/or Fortran code.
  * The R installer can now be optionally built to support a single
    architecture (only 64-bit or only 32-bit).
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++14 where
    available (which it is on all currently checked platforms): if
    not (as before) C++11 is used if available otherwise C++ is not
    supported.
    Packages which specify C++11 will still be installed using C++11.
    C++14 compilers may give deprecation warnings, most often for
    std::random_shuffle (deprecated in C++14 and removed in C++17).
    Either specify C++11 (see 'Writing R Extensions') or modernize
    the code and if needed specify C++14.  The latter has been
    supported since R 3.4.0 so the package's DESCRIPTION would need
    to include something like
    Depends: R (&gt;= 3.4)
  PACKAGE INSTALLATION on Windows:
  * R CMD INSTALL and R CMD SHLIB make use of their flag --use-LTO
    when the LTO_OPT make macro is set in file etc/${R_ARCH}/Makeconf
    or in a personal/site Makevars file.  (For details see 'Writing R
    Extensions' SS4.5.)
    This provides a valuable check on code consistency.  It does work
    with GCC 8.3 as in Rtools40, but that does not detect everything
    the CRAN checks with current GCC do.
  PACKAGE INSTALLATION on macOS:
  * The default personal library directory on builds with
  - -enable-aqua (including CRAN builds) now differs by CPU type,
    one of
    ~/Library/R/x86_64/x.y/library
    ~/Library/R/arm64/x.y/library
    This uses the CPU type R (and hence the packages) were built for,
    so when a x86_64 build of R is run under Rosetta emulation on an
    arm64 Mac, the first is used.
  UTILITIES:
  * R CMD check can now scan package functions for bogus return
    statements, which were possibly intended as return() calls (wish
    of PR#17180, patch by Sebastian Meyer). This check can be
    activated via the new environment variable
    _R_CHECK_BOGUS_RETURN_, true for --as-cran.
  * R CMD build omits tarballs and binaries of previous builds from
    the top-level package directory.  (PR#17828, patch by Sebastian
    Meyer.)
  * R CMD check now runs sanity checks on the use of LazyData, for
    example that a data directory is present and that
    LazyDataCompression is not specified without LazyData and has a
    documented value.  For packages with large LazyData databases
    without specifying LazyDataCompression, there is a reference to
    the code given in 'Writing R Extensions' SS1.1.6 to test the
    choice of compression (as in all the CRAN packages tested a
    non-default method was preferred).
  * R CMD build removes LazyData and LazyDataCompression fields from
    the DESCRIPTION file of packages without a data directory.
  ENCODING-RELATED CHANGES:
  * The parser now treats \Unnnnnnnn escapes larger than the upper
    limit for Unicode points (\U10FFFF) as an error as they cannot be
    represented by valid UTF-8.
    Where such escapes are used for outputting non-printable
    (including unassigned) characters, 6 hex digits are used (rather
    than 8 with leading zeros).  For clarity, braces are used, for
    example \U{0effff}.
  * The parser now looks for non-ASCII spaces on Solaris (as
    previously on most other OSes).
  * There are warnings (including from the parser) on the use of
    unpaired surrogate Unicode points such as \uD834.  (These cannot
    be converted to valid UTF-8.)
  * Functions nchar(), tolower(), toupper() and chartr() and those
    using regular expressions have more support for inputs with a
    marked Latin-1 encoding.
  * The character-classification functions used (by default) to
    replace the system iswxxxxx functions on Windows, macOS and AIX
    have been updated to Unicode 13.0.0.
    The character-width tables have been updated to include new
    assignments in Unicode 13.0.0.
  * The code for evaluating default (extended) regular expressions
    now uses the same character-classification functions as the rest
    of R (previously they differed on Windows, macOS and AIX).
  * There is a build-time option to replace the system's
    wide-character wctrans C function by tables shipped with R: use
    configure option --with-internal-towlower or (on Windows)
  - DUSE_RI18N_CASE in CFLAGS when building R.  This may be needed
    to allow tolower() and toupper() to work with Unicode characters
    beyond the Basic Multilingual Plane where not supported by system
    functions (e.g. on Solaris where it is the new default).
  * R is more careful when truncating UTF-8 and other multi-byte
    strings that are too long to be printed, passed to the system or
    libraries or placed into an internal buffer.  Truncation will no
    longer produce incomplete multibyte characters.
  DEPRECATED AND DEFUNCT:
  * Function plclust() from the package stats and
    package.dependencies(), pkgDepends(), getDepList(),
    installFoundDepends(), and vignetteDepends() from package tools
    are defunct.
  * Defunct functions checkNEWS() and readNEWS() from package tools
    and CRAN.packages() from utils have been removed.
  * R CMD config CXXCPP is defunct (it was deprecated in R 3.6.2).
  * parallel::detectCores() drops support for Irix (retired in 2013).
  * The LINPACK argument to chol.default(), chol2inv(),
    solve.default() and svd() has been defunct since R 3.1.0.  It was
    silently ignored up to R 4.0.3 but now gives an error.
  * Subsetting/indexing, such as ddd[*] or ddd$x on a DOTSXP
    (dot-dot-dot) object ddd has been disabled; it worked by accident
    only and was undocumented.
  BUG FIXES:
  * Many more C-level allocations (mainly by malloc and strdup) are
    checked for success with suitable alternative actions.
  * Bug fix for replayPlot(); this was turning off graphics engine
    display list recording if a recorded plot was replayed in the
    same session.  The impact of the bug became visible if resize the
    device after replay OR if attempted another savePlot() after
    replay (empty display list means empty screen on resize or empty
    saved plot).
  * R CMD check etc now warn when a package exports non-existing S4
    classes or methods, also in case of no "methods" presence.
    (Reported by Alex Bertram; reproducible example and patch by
    Sebastian Meyer in PR#16662.)
  * boxplot() now also accepts calls for labels such as ylab, the
    same as plot().  (Reported by Marius Hofert.)
  * The help page for xtabs() now correctly states that addNA is
    setting na.action = na.pass among others.  (Reported as PR#17770
    by Thomas Soeiro.)
  * The R CMD check &lt;pkg&gt; gives a longer and more comprehensible
    message when DESCRIPTION misses dependencies, e.g., in Imports:.
    (Thanks to the contributors of PR#17179.)
  * update.default() now calls the generic update() on the formula to
    work correctly for models with extended formulas.  (As reported
    and suggested by Neal Fultz in PR#17865.)
  * The horizontal position of leaves in a dendrogram is now correct
    also with center = FALSE.  (PR#14938, patch from Sebastian
    Meyer.)
  * all.equal.POSIXt() no longer warns about and subsequently ignores
    inconsistent "tzone" attributes, but describes the difference in
    its return value (PR#17277).  This check can be disabled _via_
    the new argument check.tzone = FALSE as suggested by Sebastian
    Meyer.
  * as.POSIXct() now populates the "tzone" attribute from its tz
    argument when x is a logical vector consisting entirely of NA
    values.
  * x[[2^31]] &lt;- v now works.  (Thanks to the report and patch by
    Suharto Anggono in PR#17330.)
  * In log-scale graphics, axis() ticks and label positions are now
    computed more carefully and symmetrically in their range,
    typically providing _more_ ticks, fulfilling wishes in PR#17936.
    The change really corresponds to an improved axisTicks() (package
    grDevices), potentially influencing grid and lattice, for
    example.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now correct to at
    least five digits where it was catastrophically wrong,
    previously.
  * sum(df) and similar "Summary"- and "Math"-group member functions
    now work for data frames df with logical columns, notably also of
    zero rows.  (Reported to R-devel by Martin "b706".)
  * unsplit() had trouble with tibbles due to unsound use of rep(NA,
    len)-indexing, which should use NA_integer_ (Reported to R-devel
    by Mario Annau.)
  * pnorm(x, log.p = TRUE) underflows to -Inf slightly later.
  * show(&lt;hidden S4 generic&gt;) prints better and without quotes for
    non-hidden S4 generics.
  * read.table() and relatives treated an "NA" column name as missing
    when check.names = FALSE PR#18007.
  * Parsing strings containing UTF-16 surrogate pairs such as
    "\uD834\uDD1E" works better on some (uncommon) platforms.
    sprintf("%X", utf8ToInt("\uD834\uDD1E")) should now give "1D11E"
    on all platforms.
  * identical(x,y) is no longer true for differing DOTSXP objects,
    fixing PR#18032.
  * str() now works correctly for DOTSXP and related exotics, even
    when these are doomed.
    Additionally, it no longer fails for lists with a class and
    "irregular" method definitions such that e.g. lapply(*) will
    necessarily fail, as currently for different igraph objects.
  * Too long lines in environment files (e.g. Renviron) no longer
    crash R. This limit has been increased to 100,000 bytes.
    (PR#18001.)
  * There is a further workaround for FreeType giving incorrect
    italic font faces with cairo-based graphics devices on macOS.
  * add_datalist(*, force = TRUE) (from package tools) now actually
    updates an existing data/datalist file for new content.  (Thanks
    to a report and patch by Sebastian Meyer in PR#18048.)
  * cut.Date() and cut.POSIXt() could produce an empty last interval
    for breaks = "months" or breaks = "years".  (Reported as PR#18053
    by Christopher Carbone.)
  * Detection of the encoding of 'regular' macOS locales such as
    en_US (which is UTF-8) had been broken by a macOS change:
    fortunately these are now rarely used with en_US.UTF-8 being
    preferred.
  * sub() and gsub(pattern, repl, x, *) now keep attributes of x such
    as names() also when pattern is NA (PR#18079).
  * Time differences ("difftime" objects) get a replacement and a
    rep() method to keep "units" consistent.  (Thanks to a report and
    patch by Nicolas Bennett in PR#18066.)
  * The \RdOpts macro, setting defaults for \Sexpr options in an Rd
    file, had been ineffective since R 2.12.0: it now works again.
    (Thanks to a report and patch by Sebastian Meyer in PR#18073.)
  * mclapply and pvec no longer accidentally terminate parallel
    processes started before by mcparallel or related calls in
    package parallel (PR#18078).
  * grep and other functions for evaluating (extended) regular
    expressions handle in Unicode also strings not explicitly flagged
    UTF-8, but flagged native when running in UTF-8 locale.
  * Fixed a crash in fifo implementation on Windows (PR#18031).
  * Binary mode in fifo on Windows is now properly detected from
    argument open (PR#15600, PR#18031).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1622808000">- The line %{__install} -m 755 -d %{_infodir}
  no longer works in TW or Factory.
  But without that line it works everywhere. So this instruction
  was commented out of the spec file.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1628596800">- CHANGES IN R 4.1.1:
  NEW FEATURES:
  * require(pkg, quietly = TRUE) is quieter and in particular does
    not warn if the package is not found.
  DEPRECATED AND DEFUNCT:
  * Use of ftp:// URIs should be regarded as deprecated, with
    on-going support confined to method = "libcurl" and not routinely
    tested.  (Nowadays no major browser supports them.)
  * The non-default method = "internal" is deprecated for http:// and
    ftp:// URIs for both download.file and url.
  * On Windows, method = "wininet" is deprecated for http://,
    https:// and ftp:// URIs for both download.file and url.  (A
    warning is only given for ftp://.)
    For ftp:// URIs the default method is now "libcurl" if available
    (which it is on CRAN builds).
    method = "wininet" remains the default for http:// and https://
    URIs but if libcurl is available, using method = "libcurl" is
    preferred.
  INSTALLATION:
  * make check now works also without a LaTeX installation.  (Thanks
    to Sebastian Meyer's PR#18103.)
  BUG FIXES:
  * make check-devel works again in an R build configured with
  - -without-recommended-packages.
  * qnbinom(p, size, mu) for large size/mu is correct now in a range
    of cases (PR#18095); similarly for the (size, prob)
    parametrization of the negative binomial.  Also qpois() and
    qbinom() are better and or faster for extreme cases.  The
    underlying C code has been modularized and is common to all four
    cases of discrete distributions.
  * gap.axis is now part of the axis() arguments which are passed
    from bxp(), and hence boxplot().  (Thanks to Martin Smith's
    report and suggestions in PR#18109.)
  * .First and .Last can again be set from the site profile.
  * seq.int(from, to, *) and seq.default(..) now work better in large
    range cases where from-to is infinite where the two boundaries
    are finite.
  * all.equal(x,y) now returns TRUE correctly also when several
    entries of abs(x) and abs(y) are close to .Machine$double.xmax,
    the largest finite numeric.
  * model.frame() now clears the object bit when removing the class
    attribute of a value via na.action (PR#18100).
  * charClass() now works with multi-character strings on Windows
    (PR#18104, fixed by Bill Dunlap).
  * encodeString() on Solaris now works again in Latin-1 encoding on
    characters represented differently in UTF-8.  Support for
    surrogate pairs on Solaris has been improved.
  * file.show() on Windows now works with non-ASCII path names
    representable in the current native encoding (PR#18132).
  * Embedded R on Windows can now find R home directory via the
    registry even when installed only for the current user
    (PR#18135).
  * pretty(x) with finite x now returns finite values also in the
    case where the extreme x values are close in size to the maximal
    representable number .Machine$double.xmax.
    Also, it's been tweaked for very small ranges and when a boundary
    is close (or equal) to zero; e.g., pretty(c(0,1e-317)) no longer
    has negative numbers, currently still warning about a very small
    range, and pretty(2^-(1024 - 2^-1/(c(24,10)))) is more accurate.
  * The error message for not finding vignette files when weaving has
    correct file sizes now. (Thanks to Sebastian Meyer's PR#18154.)
  * dnbinom(20, &lt;large&gt;, 1) now correctly gives 0, and similar cases
    are more accurate with underflow precaution.  (Reported by Francisco Vera Alcivar in PR#18072.)</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635163200">- repaired https://bugzilla.suse.com/show_bug.cgi?id=1191380
  (rpmacros now go to rpmmacrodir)
- minor clean-ups in spec file</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635768000">- CHANGES IN R 4.1.2:
  C-LEVEL FACILITIES:
  * The workaround in headers R.h and Rmath.h (using namespace std;)
    for the Oracle Developer Studio compiler is no longer needed now
    C++11 is required so has been removed.  A couple more usages of
    log() (which should have been std::log()) with an int argument
    are reported on Solaris.
  * The undocumented limit of 4095 bytes on messages from the
    S-compatibility macros PROBLEM and MESSAGE is now documented and
    longer messages will be silently truncated rather than
    potentially causing segfaults.
  * If the R_NO_SEGV_HANDLER environment variable is non-empty, the
    signal handler for SEGV/ILL/BUS signals (which offers recovery
    user interface) is not set. This allows more reliable debugging
    of crashes that involve the console.
  DEPRECATED AND DEFUNCT:
  * The legacy S-compatibility macros PROBLEM, MESSAGE, ERROR, WARN,
    WARNING, RECOVER, ... are deprecated and will be hidden in R
    4.2.0. R's native interface of Rf_error and Rf_warning has long
    been preferred.
  BUG FIXES:
  * .mapply(F, dots, .) no longer segfaults when dots is not a list
    and uses match.fun(F) as always documented; reported by Andrew
    Simmons in PR#18164.
  * hist(&lt;Date&gt;, ...) and hist(&lt;POSIXt&gt;, ...)  no longer pass
    arguments for rect() (such as col and density) to axis().
    (Thanks to Sebastian Meyer's PR#18171.)
  * \Sexpr{ch} now preserves Encoding(ch). (Thanks to report and
    patch by Jeroen Ooms in PR#18152.)
  * Setting the RNG to "Marsaglia-Multicarry" e.g., by RNGkind(), now
    warns in more places, thanks to Andr'e Gillibert's report and
    patch in PR#18168.
  * gray(numeric(), alpha=1/2) no longer segfaults, fixing PR#18183,
    reported by Till Krenz.
  * Fixed dnbinom(x, size=&lt;very_small&gt;, .., log=TRUE) regression,
    reported by Martin Morgan.
  * as.Date.POSIXlt(x) now keeps names(x), thanks to Davis Vaughan's
    report and patch in PR#18188.
  * model.response() now strips an "AsIs" class typically, thanks to
    Duncan Murdoch's report and other discussants in PR#18190.
  * try() is considerably faster in case of an error and long call,
    as e.g., from some do.call().  Thanks to Alexander Kaever's
    suggestion posted to R-devel.
  * qqline(y = &lt;object&gt;) such as y=I(.), now works, see also
    PR#18190.
  * Non-integer mgp par() settings are now handled correctly in
    axis() and mtext(), thanks to Mikael Jagan and Duncan Murdoch's
    report and suggestion in PR#18194.
  * formatC(x) returns length zero character() now, rather than ""
    when x is of length zero, as documented, thanks to Davis
    Vaughan's post to R-devel.
  * removeSource(fn) now retains (other) attributes(fn).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1647000000">- CHANGES IN R 4.1.3:
  NEW FEATURES:
  * The default version of Bioconductor has been changed to 3.14.
    (This is used by setRepositories and the menus in GUIs.)
  UTILITIES:
  * R CMD check --as-cran has a workaround for a bug in versions of
    file up to at least 5.41 which mis-identify DBF files last
    changed in 2022 as executables.
  C-LEVEL FACILITIES:
  * The legacy S-compatibility macros SINGLE_* in R_ext/Constants.h
    (included by R.h) are deprecated and will be removed in R 4.2.0.
  BUG FIXES:
  * Initialization of self-starting nls() models with initialization
    functions following the pre-R-4.1.0 API (without the ...
    argument) works again for now, with a deprecation warning.
  * Fixed quoting of ~autodetect~ in Java setting defaults to avoid
    inadvertent user lookup due to leading ~, reported in PR#18231 by
    Harold Gutch.
  * substr(., start, stop) &lt;- v now treats _negative_ stop values
    correctly.  Reported with a patch in PR#18228 by Brodie Gaslam.
  * Subscripting an array x without dimnames by a
    length(dim(x))-column character matrix gave "random" non-sense,
    now an error; reported in PR#18244 by Mikael Jagan.
  * ...names() now matches names(list(...)) closely, fixing PR#18247.
  * all.equal(*, scale = s) now works as intended when length(s) &gt; 1,
    partly thanks to Michael Chirico's PR#18272.
  * print(x) for long vectors x now also works for named atomic
    vectors or lists and prints the correct number when reaching the
    getOption("max.print") limit; partly thanks to a report and
    proposal by Hugh Parsonage to the R-devel list.
  * all.equal(&lt;selfStart&gt;, *) no longer signals a deprecation
    warning.
  * reformulate(*, response=r) gives a helpful error message now when
    length(r) &gt; 1, thanks to Bill Dunlap's PR#18281.
  * Modifying globalCallingHandlers inside withCallingHandlers() now
    works or fails correctly, thanks to Henrik Bengtsson's PR#18257.
  * hist(&lt;Date&gt;, breaks = "days") and hist(&lt;POSIXt&gt;, breaks = "secs")
    no longer fail for inputs of length 1.
  * qbeta(.001, .9, .009) and similar cases now converge correctly
    thanks to Ben Bolker's report in PR#17746.
  * window(x, start, end) no longer wrongly signals "'start' cannot
    be after 'end'", fixing PR#17527 and PR#18291.
  * data() now checks that its (rarely used) list argument is a
    character vector - a couple of packages passed other types and
    gave incorrect results.
  * which() now checks its arr.ind argument is TRUE rather coercing
    to logical and taking the first element - which gave incorrect
    results in package code.
  * model.weights() and model.offset() more carefully extract their
    model components, thanks to Ben Bolker and Tim Taylor's R-devel
    post.
  * list.files(recursive = TRUE) now shows all broken symlinks
    (previously, some of them may have been omitted, PR#18296).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1650628800">- CHANGES IN R 4.2.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * The formula method of aggregate() now matches the generic in
    naming its first argument x (resolving PR#18299 by Thomas
    Soeiro).
    This means that calling aggregate() with a formula as a named
    first argument requires name formula in earlier versions of R and
    name x now, so portable code should not name the argument (code
    in many packages did).
  * Calling &amp;&amp; or || with either argument of length greater than one
    now gives a warning (which it is intended will become an error).
  * Calling if() or while() with a condition of length greater than
    one gives an error rather than a warning.  Consequently,
    environment variable _R_CHECK_LENGTH_1_CONDITION_ no longer has
    any effect.
  * Windows users should consult the WINDOWS section below for some
    profound changes including
  * Support for 32-bit builds has been dropped.
  * UTF-8 locales are used where available.
  * The default locations for the R installation and personal
    library folder have been changed.
    Thanks to Tomas Kalibera for months of work on the Windows port
    for this release.
  NEW FEATURES:
  * matrix(x, n, m) now warns in more cases where length(x) differs
    from n * m, as suggested by Abby Spurdle and Wolfgang Huber in
    Feb 2021 on the R-devel mailing list.
    This warning can be turned into an error by setting environment
    variable _R_CHECK_MATRIX_DATA_ to TRUE: R CMD check --as-cran
    does so unless it is already set.
  * Function file_test() in package utils gains tests for symlinks,
    readability and writability.
  * capabilities("libxml") is now false.
    The description of capabilities("http/ftp") now reflects that it
    refers to the default method, no longer the internal one.
  * simplify2array() gains an except argument for controlling the
    exceptions used by sapply().
  * Environment variables R_LIBS_USER and R_LIBS_SITE are both now
    set to the R system default if unset or empty, and can be set to
    NULL to indicate an empty list of user or site library
    directories.
  * The warning for axis()(-like) calls in cases of relatively small
    ranges (typically in log-scale situations) is slightly improved
    _and_ suppressed from explicit calls to .axisPars() as has always
    been the intention.
  * The contrasts setter function `contrasts&lt;-` gains an explicit
    default how.many = NULL rather than just using missing(how.many).
  * grid.pretty() gains a new optional argument n = 5.
  * There is a new function .pretty() with option bounds as a
    technical-utility version of pretty().  It and pretty() gain a
    new argument f.min with a better than back-compatible default.
  * Function grDevices::axisTicks() and related functions such as
    graphics::axis() work better, notably for the log scale; partly
    because of the pretty() improvements, but also because care is
    taken e.g., when ylim is finite but diff(ylim) is infinite.
  * nclass.FD() gains a digits option.
  * The R Mathlib internal C function bd0() (called indirectly from a
    dozen probability density and distribution functions such as
    dpois(), dbinom(), dgamma(), pgamma() _etc_) has been
    complemented by a more sophisticated and (mostly) more accurate C
    function ebd0(), currently called only by internal dpois_raw()
    improving accuracy for R level dpois() and potentially others
    calling it such as dnbinom(), dgamma() or pgamma().  (Thanks to
    Morten Welinder's PR#15628.)
  * write.ftable() gains sep = " " argument as suggested by Thomas
    Soeiro.
  * The names of the locale categories supported by R's
    Sys.getlocale() and Sys.setlocale() are now provided by variable
    .LC.categories in the base namespace.
  * The Date and POSIXt methods for hist() and the histogram method
    for plot() now also use the new default col = "lightgray" in
    consistency with the corresponding change to hist()'s default for
    R 4.0.0.
  * hist.default() gains new fuzz argument, and the histogram plot
    method no longer uses fractional axis ticks when displaying
    counts ("Frequency").
  * mapply() and hence Map() now also obey the "max-or-0-if-any"
    recycling rule, such that, e.g., Map(`+`, 1:3, 1[0]) is valid
    now.
  * as.character(&lt;obj&gt;) for "hexmode" or "octmode" objects now
    fulfils the important basic rule as.character(x)[j] ===
    as.character(x[j]).
  * The set utility functions, notably intersect() have been tweaked
    to be more consistent and symmetric in their two set arguments,
    also preserving a common mode.
  * substr(ch, start,end) &lt;- new now e.g., preserves names(ch); ditto
    for substring(), thanks to a patch from Brodie Gaslam.
  * plot(&lt;lm&gt;) gains a extend.ylim.f argument, in partial response to
    PR#15285; further PR#17784 is fixed thanks to several
    contributors and a patch by Elin Waring.  The Cook's dist
    contours get customizable via cook.col and cook.lty with a
    different default color and their legend is nicer by default and
    customizable via cook.legendChanges.
  * Attempting to subset an object that is not subsettable now
    signals an error of class notSubsettableError. The
    non-subsettable object is contained in the object field of the
    error condition.
  * Subscript-out-of-bounds errors are now signaled as errors of
    class subscriptOutOfBoundsError.
  * Stack-overflow errors are now signaled as errors inheriting from
    class stackOverflowError. See ?stackOverflowError for more
    details.
  * New partly experimental Sys.setLanguage() utility, solving the
    main problem of PR#18055.
  * gettext() and gettextf() get a new option trim = TRUE which when
    set to false allows translations for strings such as "Execution
    halted\n" typical for C code.
  * An experimental implementation of hash tables is now available.
    See ?hashtab for more details.
  * identical() gains a extptr.as.ref argument for requesting that
    external pointer objects be compared as reference objects.
  * reorder() gets an argument decreasing which it passes to sort()
    for level creation; based on the wish and patch by Thomas Soeiro
    in PR#18243.
  * as.vector() gains a data.frame method which returns a simple
    named list, also clearing a long standing 'FIXME' to enable
    as.vector(&lt;data.frame&gt;, mode="list").  This breaks code relying
    on as.vector(&lt;data.frame&gt;) to return the unchanged data frame.
  * legend() is now vectorized for arguments cex, x.intersp, and
    text.width.  The latter can now also be specified as a vector
    (one element for each column of the legend) or as NA for
    computing a proper column wise maximum value of strwidth(legend).
    The argument y.intersp can be specified as a vector with one
    entry for each row of the legend.
    legend() also gains new arguments title.cex and title.font.
    Thanks to Swetlana Herbrandt.
  * Deparsing no longer remaps attribute names dim, dimnames, levels,
    names and tsp to historical S-compatible names (which structure()
    maps back).
  * sample() and sample.int() have additional sanity checks on their
    size and n arguments.
    all.equal.numeric() gains a sanity check on its tolerance
    argument - calling all.equal(a, b, c) for three numeric vectors
    is a surprisingly common error.
    mean(na.rm =), rank(na.last =), barplot(legend.text =),
    boxplot(), contour(drawlabels =), polygon(border =) and
    methods::is(class2 =) have more robust sanity checks on their
    arguments.
    R CMD Rd2pdf (used by R CMD check) has a more robust sanity check
    on the format of \alias{} commands.
  * psigamma(x, deriv) for negative x now also works for deriv = 4
    and 5; their underlying C level dpsifn() is documented in
    'Writing R Extensions'.
  * The HTML help system now uses HTML5 (wish of PR#18149).
  * ks.test() now provides exact p-values also with ties and MC
    p-values in the two-sample (Smirnov) case.  By Torsten Hothorn.
  * ks.test() gains a formula interface, with y ~ 1 for the
    one-sample (Kolmogorov) test and y ~ group for the two-sample
    (Smirnov) test.  Contributed by Torsten Hothorn.
  * The return value from ks.test() now has class c("ks.test",
    "htest") - packages using try() need to take care to use
    inherits() and not == on the class.
  * New functions psmirnov(), qsmirnov() and rsmirnov() in package
    stats implementing the asymptotic and exact distributions of the
    two-sample Smirnov statistic.
  * iconv() now allows sub = "c99" to use C99-style escapes for UTF-8
    inputs which cannot be converted to encoding to.
  * In a forward pipe |&gt; expression it is now possible to use a named
    argument with the placeholder _ in the rhs call to specify where
    the lhs is to be inserted.  The placeholder can only appear once
    on the rhs.
  * The included LAPACK sources have been updated to version 3.10.0,
    except for the four Fortran 77 routines which 3.10.0 has
    re-implemented in Fortran 90 (where the older versions have been
    retained as the R build process does not support Fortran 90).
  * path.expand() and most other uses of tilde expansion now warn if
    a path would be too long if expanded.  (An exception is
    file.exists(), which silently returns false.)
  * trunc(&lt;Date&gt;, *) now supports units = "months" or "years" for
    consistency with the POSIXt method, thanks to Dirk Eddelbuettel's
    proposal in PR#18099.
  * list2DF() now checks that its arguments are of the same length,
    rather than use recycling.
  * The HTML help system has several new features: LaTeX-like math
    can be typeset using either KaTeX or MathJax, usage and example
    code is highlighted using Prism, and for dynamic help the output
    of examples and demos can be shown within the browser if the
    knitr package is installed. These features can be disabled by
    setting the environment variable _R_HELP_ENABLE_ENHANCED_HTML_ to
    a false value.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 15
    and so packages that provide graphics devices should be
    reinstalled.
  * The grid package now allows the user to specify a "vector" of
    pattern fills.  The fill argument to gpar() accepts a list of
    gradients and/or patterns and the functions linearGradient(),
    radialGradient(), and pattern() have a new group argument.
    Points grobs (data symbols) can now also have a pattern fill.
    The grobCoords() function now returns a more informative and
    complex result.
  * The grid package has new functions for drawing isolated groups:
    grid.group(), grid.define(), and grid.use().  These functions add
    compositing operators and affine transformations to R's graphics
    capabilities.
    The grid package also has new functions for stroking and filling
    paths: grid.stroke(), grid.fill(), and grid.fillStroke().
    A new function as.path() allows the user to specify the fill rule
    for a path that is to be used for clipping, stroking, or filling;
    available options are "winding" and "evenodd".  A new function
    as.mask() allows the user to specify the type of a mask;
    available options are "alpha" and "luminance".
    These new features are only supported so far (at most) on the
    Cairo-based graphics devices and on the pdf() device.
  * dev.capabilities() reports on device support for the new
    features.
  * par() now warns about unnamed non-character arguments to prevent
    misuse such as {usr &lt;- par("usr"); par(usr)}.
  INSTALLATION:
  * Facilities for accessing ftp:// sites are no longer tested
    (except _pro tem_ for curlGetHeaders()) as modern browsers have
    removed support.
  * R can now be built with DEFS = -DSTRICT_R_HEADERS .
  PACKAGE INSTALLATION:
  * R CMD INSTALL no longer tangles vignettes. This completes an R
    CMD build change in R 3.0.0 and affects packages built before R
    3.0.2. Such packages should be re-made with R CMD build to have
    the tangled R code of vignettes shipped with the tarball.
  * USE_FC_LEN_T will become the default: this uses the correct
    prototypes for Fortran BLAS/LAPACK routines called from C/C++,
    and requires adjustment of most such calls - see 'Writing R
    Extensions' SS6.6.2.  (This has been supported since R 3.6.2.)
  * Package installation speed for packages installed with
    keep.source has been improved. This resolve the issue reported by
    Ofek Shilon in PR#18236.
  UTILITIES:
  * R CMD check can optionally report files/directories left behind
    in home, /tmp (even though TMPDIR is set) and other directories.
    See the "R Internals" manual for details.
  * R CMD check now reports byte-compilation errors during
    installation.  These are not usually fatal but may result in
    parts of the package not being byte-compiled.
  * _R_CHECK_DEPENDS_ONLY_ can be applied selectively to examples,
    tests and/or vignettes in R CMD check: see the "R Internals"
    manual.
  * _R_CHECK_SRC_MINUS_W_IMPLICIT_ now defaults to true: recent
    versions of Apple clang on macOS have made implicit function
    declarations in C into a compilation error.
  * R CMD check --as-cran makes use of the environment variable
    AUTORECONF.  See the "R Internals" manual SS8 for further details.
  * R CMD check --use-valgrind also uses valgrind when re-building
    vignettes as some non-Sweave vignettes unhelpfully comment out
    all their code when R CMD check runs vignettes.
  * Errors in re-building vignettes (unless there are LaTeX errors)
    are reported by R CMD check as ERROR rather than WARNING when
    running vignettes has been skipped (as it frequently is in CRAN
    checks and by --as-cran).
  * R CMD Rd2pdf gains a --quiet option that is used by R CMD build
    when building the PDF package manual.
  * R CMD Rd2pdf now always runs LaTeX in batch mode, consistent with
    Texinfo &gt;= 6.7. The --batch option is ignored.
  * R CMD build and R CMD check now include the Rd file name and line
    numbers in the error message of an \Sexpr evaluation failure.
  * For packages using the \doi Rd macro (now an install-time \Sexpr)
    but no other dynamic Rd content, R CMD build now produces a
    smaller tarball and is considerably faster - skipping temporary
    package installation.
  C-LEVEL FACILITIES:
  * The non-API header R_ext/R-ftp-http.h is no longer provided, as
    the entry points it covered are now all defunct.
  * A number of non-API declarations and macro definitions have been
    moved from the installed header Rinternals.h to the internal
    header Defn.h. Packages that only use entry points and
    definitions documented to be part of the API as specified in
    'Writing R Extensions' SS6 should not be affected.
  * The macro USE_RINTERNALS no longer has any effect when compiling
    package code.  Packages which also use R_NO_REMAP will need to
    ensure that the remapped names are used for calls to API
    functions that were formerly also made available as macros.
  * The deprecated legacy S-compatibility macros PROBLEM, MESSAGE,
    ERROR, WARN, WARNING, RECOVER, ... are no longer defined in
    R_exts/RS.h (included by R.h).  Replace these by calls to
    Rf_error and Rf_warning (defined in header R_ext/Error.h included
    by R.h).
    Header R_ext/RS.h no longer includes R_ext/Error.h.
  * Header R_ext/Constants.h (included by R.h) when included from C++
    now includes the C++ header cfloat rather than the C header
    float.h (now possible as C++11 is required).
  * The legacy S-compatibility macros DOUBLE_* in R_ext/Constants.h
    (included by R.h) are deprecated.
  * The deprecated S-compatibility macros SINGLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * R_Calloc, R_Free and R_Realloc are preferred to their unprefixed
    forms and error messages now use the prefix. These forms were
    introduced in R 3.4.0 and are available even when
    STRICT_R_HEADERS is defined.
  * rmultinom has been documented in 'Writing R Extensions' SS6 so is
    now part of the R API.
  * Similarly, Rtanpi, called from R level tanpi() is now part of the
    R API.
  * The long-deprecated, undocumented and non-API entry point call_R
    is no longer declared in R_ext/RS.h (included by R.h).
  * The header S.h which has been unsupported since Jan 2016 has been
    removed.  Use R.h instead.
  DEPRECATED AND DEFUNCT:
  * The (non-default and deprecated) method = "internal" for
    download.file() and url() no longer supports http:// nor ftp://
    URIs.  (It is used only for file:// URIs.)
    On Windows, download.file(method = "wininet") no longer supports
    ftp:// URIs.  (It is no longer the default method, which is
    "libcurl" and does.)
    On Windows, the deprecated method = "wininet" now gives a warning
    for http:// and https:// URIs for both download.file() and url().
    (It is no longer the default method.)
  * On Windows, the command-line option --max-mem-size and
    environment variable R_MAX_MEM_SIZE are defunct.  The memory
    allocation limit was important for 32-bit builds, but these are
    no longer supported.
  * default.stringsAsFactors() is now formally deprecated, where that
    was only mentioned on its regular help page, previously.  So it
    now gives a warning if called.
  * unix.time() is defunct now; it had been deprecated since R 3.4.0.
  BUG FIXES:
  * Setting digits = 0 in format(), print.default() (and hence
    typically print()) or options() is again invalid.  Its behaviour
    was platform-dependent, and it is unclear what "zero significant
    digits" should mean (PR#18098).
  * Messages from C code in the cairo section of package grDevices
    are now also offered for translation, thanks to Michael Chirico's
    PR#18123.
  * mean(x) with finite x now is finite also without "long.double"
    capability.
  * R CMD Rd2pdf no longer leaves an empty build directory behind
    when it aborts due to an already existing output file.  (Thanks
    to Sebastian Meyer's PR#18141.)
  * density(x, weights = w, na.rm = TRUE) when anyNA(x) is true, now
    removes weights "in parallel" to x, fixing PR#18151, reported by
    Matthias Gondan.  Additionally, it gets a subdensity option.
  * Conversion of \Sexpr[]{&lt;expR&gt;} to LaTeX or HTML no longer
    produces long blocks of empty lines when &lt;expR&gt; itself contains
    several lines all producing empty output.  Thanks to a report and
    patch by Ivan Krylov posted to R-devel.
  * R CMD build no longer fails if a package vignette uses child
    documents and inst/doc exists.  (Thanks to Sebastian Meyer's
    PR#18156.)
  * When an R documentation ('help' source) file man/foo.Rd in a
    package has \donttest{..} examples with a syntax error, it is now
    signalled as ERROR and with correct line numbers relating to the
  * -Ex.R file, thanks to Duncan Murdoch and Sebastian Meyer's
    reports and patch proposals in PR#17501.
  * Improved determination of the correct translation domain in
    non-base packages, addressing the combination of PR#18092 and
    PR#17998 (#c6) with reports and _augmented_ patch #2904 by
    Suharto Anggono.
    Note that "R-base" is no longer the default domain e.g., for
    top-level calls to gettext(); rather translation needs explicit
    domain = * specification in such cases.
  * identical(attrib.as.set=FALSE) now works correctly with data
    frames with default row names (Thanks to Charlie Gao's PR#18179).
  * txtProgressBar() now enforces a non-zero width for argument char,
    without which no progress can be visible.
  * dimnames(table(d)) is more consistent in the case where d is a
    list with a single component, thanks to Thomas Soeiro's report to
    R-devel.
    Further, table(d1, d2) now gives an error when d1 and d2 are data
    frames as suggested by Thomas in PR#18224.
  * Fix for drawing semi-transparent lines and fills on the native
    Windows graphics device (PR#18219 and PR#16694).  Thanks to Nick
    Ray for helpful diagnosis on Bugzilla.
  * The deparser now wraps sub-expressions such as if(A) ..  with
    parentheses when needed; thanks to Duncan Murdoch's PR#18232 and
    Lionel Henry's patches there.
  * remove.packages() no longer tries to uninstall Priority: base
    packages, thanks to a report and suggestions by Colin Fay in
    PR#18227.
  * win.metafile() now has xpinch and ypinch arguments so that the
    user can override Windows' (potentially wrong) guess at device
    dimensions.
  * x[i] and x[[i]] for non-integer i should now behave in all cases
    as always documented: the index used is equivalent to
    as.integer(i) unless that would overflow where trunc(i) is used
    instead; thanks to Suharto Anggono's report and patch proposals
    in PR#17977.
  * asOneSidedFormula() now associates the resulting formula with the
    global environment rather than the evaluation environment created
    for the call.
  * &lt;bibentry&gt;$name now matches the field name case-insensitively,
    consistent with bibentry() creation and the replacement method.
  * cbind() failed to detect some length mismatches with a mixture of
    time-series and non-time-series inputs.
  * The default LaTeX style file Sweave.sty used by the RweaveLatex
    driver no longer loads the obsolete ae package; thanks to a
    report by Thomas Soeiro in PR#18271.  Furthermore, it now skips
    \usepackage[T1]{fontenc} for engines other than pdfTeX (if
    detected) or if the new [nofontenc] option is used.
  * smooth.spline() now stores its logical cv argument more safely,
    fixing a rare bug when printing, and also stores n.
  * smooth.spline(x,y,*) now computes the cv.crit statistic
    correctly, also when is.unsorted(x), fixing PR#18294.
  * The data.frame method of rbind() now warns when binding
    not-wholly-recycling vectors, by analogy to the default method
    (for matrices).
  * setAs() finds the correct class for name to when multiple
    packages define a class with that name. Thanks to Gabor Csardi
    for the report.
  * Fix for detaching a package when two classes of the same name are
    present in method signatures for the same generic. Thanks to
    Gabor Csardi for the report.
  * match.arg("", c("", "a", "B")) gives a better error message, in
    part from PR#17959, thanks to Elin Waring.
  * R CMD Sweave --clean no longer removes pre-existing files or
    subdirectories (PR#18242).
  * The quartz() device no longer splits polylines into subpaths.
    That has caused narrowly-spaced lines with many points to always
    look solid even when dashed line type was used due to dash phase
    restarts.
  * Deparsing constructs such as quote(1 + `!`(2) + 3) works again as
    before R 3.5.0, thanks to the report and patch in PR#18284 by
    Suharto Anggono.
  * as.list(f) for a factor f now keeps names(f), fixing PR#18309.
  * qbeta(.001, .9, .009) and analogous qf() calls now return a
    correct value instead of NaN or wrongly 1, all with a warning;
    thanks to the report by Ludger Goeminne in PR#18302.
  * plot.lm() failed to produce the plot of residuals vs.  factor
    levels (i.e., which=5 when leverages are constant) for models
    with character predictors (PR#17840).
  * interaction.plot(..., xtick = TRUE) misplaced the x-axis line
    (PR#18305).
  * Not strictly fixing a bug, format()ing and print()ing of
    non-finite Date and POSIXt values NaN and +/-Inf no longer show
    as NA but the respective string, e.g., Inf, for consistency with
    numeric vector's behaviour, fulfilling the wish of PR#18308.
  * R CMD check no longer runs test scripts generated from
    corresponding .Rin files twice and now signals an ERROR if
    processing an .Rin script fails.
  * tools::Rd2txt() used for plain-text help pages now renders \hrefs
    (if tools::Rd2txt_options(showURLs = TRUE)) and \urls with
    percent-encoding and standards-compliant delimiting style (angle
    brackets and no URL: prefix).  \email is now rendered with a
    mailto: prefix.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1655985600">- CHANGES IN R 4.2.1:
  NEW FEATURES:
  * New function utils::findCRANmirror() to find out if a CRAN mirror
    has been selected, otherwise fallback to the main site.  This
    behaves in the same way as tools::CRAN_package_db() and is
    intended for packages wishing to access CRAN for purposes other
    than installing packages.
    The need for this was shown by a day when the main CRAN website
    was offline and a dozen or so packages which had its URL
    hardcoded failed their checks.
  INSTALLATION on a UNIX-ALIKE:
  * The libraries searched for by --with-blas (without a value) now
    include BLIS (after OpenBLAS but before ATLAS).  And on macOS,
    the Accelerate framework (after ATLAS).  (This is patterned after
    the AX_BLAS macro from the Autoconf Archive.)
  * The included LAPACK sources have been updated to 3.10.1.
  UTILITIES:
  * The (full path to) the command tidy to be used for HTML
    validation can be set by environment variable R_TIDYCMD.
  * Setting environment variable _R_CHECK_RD_VALIDATE_RD2HTML_ to a
    false value will override R CMD check --as-cran and turn off HTML
    validation.  This provides a way to circumvent a problematic
    tidy.
    The 2006 version that ships with macOS is always skipped.
  C-LEVEL FACILITIES:
  * The undocumented legacy declarations of Sint, Sfloat, SINT_MAX
    and SINT_MIN in header R.h are deprecated.
  BUG FIXES:
  * fisher.test(d) no longer segfaults for "large" d; fixing PR#18336
    by preventing/detecting an integer overflow reliably.
  * tar(., files=*) now produces correctly the warning about invalid
    uid or gid of files, fixing PR#18344, reported by Martin Morgan.
  * tk_choose.files() with multi = FALSE misbehaved on paths
    containing spaces (PR#18334) (regression introduced in R 4.0.0).
  * sort(x, partial = ind, *) now works correctly notably for the
    non-default na.last = FALSE or TRUE, fixing PR#18335 reported by
    James Edwards.
  * Environment variable _R_CHECK_XREFS_REPOSITORIES_ is only used
    for checking .Rd cross-references in R CMD check (as documented)
    and not for other uses looking for a CRAN mirror.
  * The search for a CRAN mirror when checking packages now uses
    getOption("repos") if that specifies a CRAN mirror, even when it
    does not also specify all three Bioconductor repositories (as was
    previously required).
  * The HTML code generated by tools::Rd2HTML() has been improved to
    pass tidy 5.8.0.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1667217600">- CHANGES IN R 4.2.2:
  NEW FEATURES:
  * tools::Rdiff(useDiff = TRUE) checks for the presence of an
    external diff command and switches to useDiff = FALSE if none is
    found.  This allows R CMD Rdiff to always work.
  * On Windows, environment variable R_LIBCURL_SSL_REVOKE_BEST_EFFORT
    can be used to switch to only 'best-effort' SSL certificate
    revocation checks with the default "libcurl" download method.
    This reduces security, but may be needed for downloads to work
    with MITM proxies (PR#18379).
  * (macOS) The run-time check for libraries from XQuartz for X11 and
    Tcl/Tk no longer uses otool from the Apple Developer Tools
    (PR#18400).
  * The LaTeX style for producing the PDF manuals, Rd.sty, now loads
    the standard amsmath, amsfonts and amssymb packages for greater
    coverage of math commands in the Rd \eqn and \deqn macros.  The
    \mathscr LaTeX command is also provided (via the mathrsfs
    package, if available, or the amsfonts bundle otherwise),
    fulfilling the wish of PR#18398.
  * (Windows) The default format of readClipboard() and
    writeClipboard() has been changed to 13 (CF_UNICODETEXT).
  INSTALLATION on a UNIX-ALIKE:
  * The PDF manuals (if built) can be compacted by the new target
    make compact-pdf (at the top level or in directory doc/manual).
  * There is now configure support for LLVM clang 15 on Linux, which
    defaults to position-independent (PIE) executables whereas
    gfortran does not.
  * Many small changes to ease compilation (and suppress warnings)
    with LLVM clang 15.
  BUG FIXES:
  * Rscript -e would fail if stdin were closed (Reported by Henrik
    Bengtsson.)
  * qt(*, log.p=TRUE) in outer tails no longer produces NaN in its
    final steps, thus fixing PR#18360.
  * tools::Rd2latex() now escapes hashes and ampersands when writing
    URLs, fixing LaTeX errors with such URLs in \tabular.
  * When isGeneric(f, fdef=*) is used with mismatching names, the
    warning is better understandable; reported (with fix) in PR#18370
    by Gabe Becker.
  * poly(x, n) now works again (and is now documented) when x is a
    "Date" or "POSIXct" object, or of another class while fulfilling
    mode(x) == "numeric".  This also enables poly(x, *, raw=TRUE) for
    such variables.  Reported by Michael Chirico to R-devel.
  * write.table(), write.csv() and write.csv2() restore their
    numerical precision (internal equivalent of digits = 15) after an
    interrupt (PR#18384).
  * One can now read also byte FF from a clipboard connection
    (PR#18385).
  * source("") and source(character()) now give more helpful error
    messages.
  * R CMD check --as-cran set _R_CHECK_TIMINGS_ too late to have the
    intended effect.
  * as.POSIXlt(x) now also works with very large dates x, fixing
    PR#18401 reported by Hannes M"uhleisen.
  * Files can now be extracted even from very large zip archives
    (PR#18390, thanks to Martin Jakt).
  * Non-finite objects of class "POSIXlt" are now correctly coerced
    to classes "Date" and "POSIXct"; following up on the extension to
    format() them correctly.
  * Added methods for is.finite(), is.infinite() and is.nan() for
    "POSIXlt" date-time objects.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1678881600">- CHANGES IN R 4.2.3:
  C-LEVEL FACILITIES:
  * The definition of DL_FUNC in R_ext/Rdynload.h has been changed to
    be fully C-compliant.  This means that functions loaded _via_ for
    example R_GetCCallable need to be cast to an appropriate type if
    they have any arguments.
  * .Machine has a new element sizeof.time_t to identify old systems
    with a 32-bit type and hence a limited range of date-times (and
    limited support for dates millions of years from present).
  PACKAGE INSTALLATION:
  * (Windows) The default C++ standard had accidentally been left at
    C++11 when it was changed to C++14 on Unix.
  BUG FIXES:
  * As "POSIXlt" objects may be "partially filled" and their list
    components meant to be recycled, length() now is the length of
    the longest component.
  * as.POSIXlt.Date() could underflow for dates in the far past (more
    than half a million years BCE).
  * as.Date.POSIXlt(x) would return "1970-01-01" instead of NA in R
    4.2.2, e.g., for
    x &lt;- as.POSIXlt(c("2019-01-30","2001-1-1"))
    x$mon &lt;- c(0L, NA); as.Date(x)
  * R CMD check failed to apply enabled _R_CHECK_SUGGESTS_ONLY_ to
    examples and vignettes (regression in R 4.2.0).
  * R CMD check did not re-build vignettes in separate processes by
    default (regression in R 4.2.0).
  * Running examples from HTML documentation now restores previous
    knitr settings and options (PR#18420).
  * Quartz: fonts are now located using Core Graphics API instead of
    deprecated ATS which is no longer supported in the macOS 13 SDK
    (PR#18426).  This also addresses an issue where the currently
    used font in the Quartz device context was not correctly
    retained.
  * (Windows) Math symbols in text drawing functions are again
    rendered correctly (PR#18440).  This fixes a regression in R
    4.2.1 caused by a fix in PR#18382 which uncovered an issue in
    GraphApp due to which the symbol charset was not used with TT
    Symbol font face.
  * (Windows) Installing a package with a src/Makefile.{win,ucrt}
    file includes ~/.R/Makevars.win64 in the search for user
    makevars, as documented in "R Installation and Administration"
    and done for packages with a src/Makevars.{win,ucrt} file.
  * format(&lt;POSIXlt_w/_unbalanced_sec&gt;, "....%OS&lt;n&gt;") with n &gt; 0 no
    longer accidentally uses the unbalanced seconds, thanks to
    Suharto Anggono's report (including patch) in PR#18448.
  * solve.default(a, b) works around issues with some versions of
    LAPACK when a contains NA or NaN values.
  * When UseMethod() cannot dispatch, it no longer segfaults
    producing the error message in case of a long class(), thanks to
    Joris Vankerschaver's report (including patch) in PR#18447.
  * When example(foo, ..) produces graphics on an interactive device
    it needs to open itself, it now leaves devAskNewPage() unchanged
    even when it was FALSE, thus fixing a 14 years old '&lt;FIXME&gt;'.
  * packageDescription() again catches errors from encoding
    conversions. This also fixes broken packageVersion() in C locale
    on systems where iconv does not support transliteration.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1681128000">- add patch to build with libcurl &gt;= 8</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1682078400">- CHANGES IN R 4.3.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Calling &amp;&amp; or || with LHS or (if evaluated) RHS of length greater
    than one is now always an error, with a report of the form
    'length = 4' in coercion to 'logical(1)'
    Environment variable _R_CHECK_LENGTH_1_LOGIC2_ no longer has any
    effect.
  NEW FEATURES:
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.10.1.  (This caused some platform-dependent
    changes to package check output.)  And then to the sources from
    LAPACK version 3.11.0 (with changes only to double complex
    subroutines).
  * The included LAPACK sources have been updated to include the four
    Fortran 90 routines rather than their Fortran 77 predecessors.
    This may give some different signs in SVDs or
    eigendecompositions..  (This completes the transition to LAPACK
    3.10.x begun in R 4.2.0.)
  * The LAPACK sources have been updated to version 3.11.0.  (No new
    subroutines have been added, so this almost entirely bug fixes:
    Those fixes do affect some computations with NaNs, including R's
    NA.)
  * The parser now signals _classed_ errors, notably in case of the
    pipe operator |&gt;.  The error object and message now give line and
    column numbers, mostly as proposed and provided by Duncan Murdoch
    in PR#18328.
  * toeplitz() is now generalized for asymmetric cases, with a
    toeplitz2() variant.
  * xy.coords() and xyz.coords() and consequently, e.g., plot(x,y,
    log = "y") now signal a _classed_ warning about negative values
    of y (where log(.) is NA).  Such a warning can be specifically
    suppressed or caught otherwise.
  * Regular expression functions now check more thoroughly whether
    their inputs are valid strings (in their encoding, e.g. in
    UTF-8).
  * The performance of grep(), sub(), gsub() and strsplit() has been
    improved, particularly with perl = TRUE and fixed = TRUE.  Use of
    useBytes = TRUE for performance reasons should no longer be
    needed and is discouraged: it may lead to incorrect results.
  * apropos() gains an argument dot_internals which is used by the
    completion (help(rcompgen)) engine to also see base internals
    such as .POSIXct().
  * Support in tools::Rdiff() for comparing uncompressed PDF files is
    further reduced - see its help page.
  * qqplot(x, y, ...) gains conf.level and conf.args arguments for
    computing and plotting a confidence band for the treatment
    function transforming the distribution of x into the distribution
    of y (Switzer, 1976, _Biometrika_). Contributed by Torsten
    Hothorn.
  * Performance of package_dependencies() has been improved for cases
    when the number of dependencies is large.
  * Strings newly created by gsub(), sub() and strsplit(), when any
    of the inputs is marked as "bytes", are also marked as "bytes".
    This reduces the risk of creating invalid strings and accidental
    substitution of bytes deemed invalid.
  * Support for readLines(encoding = "bytes") has been added to allow
    processing special text files byte-by-byte, without creating
    invalid strings.
  * iconv(from = "") now takes into account any declared encoding of
    the input elements and uses it in preference to the native
    encoding.  This reduces the risk of accidental creation of
    invalid strings, particularly when different elements of the
    input have different encoding (including "bytes").
  * Package repositories in getOption("repos") are now initialized
    from the repositories file when utils is loaded (if not already
    set, e.g., in .Rprofile).  (From a report and patch proposal by
    Gabriel Becker in PR#18405.)
  * compactPDF() gets a verbose option.
  * type.convert() and hence read.table() get new option tryLogical =
    TRUE with back compatible default.  When set to false, converts
    "F" or "T" columns to character.
  * Added new unit prefixes "R" and "Q" for abbreviating
    (unrealistically large) sizes beyond 10^{27} in standard = "SI",
    thanks to Henrik Bengtsson's PR#18435.
  * as.data.frame()'s default method now also works fine with atomic
    objects inheriting from classes such as "roman", "octmode" and
    "hexmode", such fulfilling the wish of PR#18421, by Benjamin
    Feakins.
  * The as.data.frame.vector() utility now errors for wrong-length
    row.names.  It warned for almost six years, with "Will be an
    error!".
  * sessionInfo() now also contains La_version() and reports codepage
    and timezone when relevant, in both print() and toLatex() methods
    which also get new option tzone for displaying timezone
    information when locale = FALSE.
  * New function R_compiled_by() reports the C and Fortran compilers
    used to build R, if known.
  * predict(&lt;lm&gt;, newdata = *) no longer unnecessarily creates an
    offset of all 0s.
  * solve() for complex inputs now uses argument tol and by default
    checks for 'computational singularity' (as it long has done for
    numeric inputs).
  * predict(&lt;rank-deficient lm&gt;, newdata=*) now obeys a new argument
    rankdeficient, with new default "warnif", warning only if there
    are non-estimable cases in newdata.  Other options include
    rankdeficient = "NA", predicting NA for non-estimable newdata
    cases.  This addresses PR#15072 by Russ Lenth and is based on his
    original proposal and discussions in PR#16158 also by David Firth
    and Elin Waring.  Still somewhat experimental.
  * Rgui console implementation now works better with the NVDA screen
    reader when the full blinking cursor is selected.  The underlying
    improvements in cursor handling may help also other screen
    readers on Windows.
  * The drop-field control in GraphApp can now be left with the TAB
    key and all controls can be navigated in the reverse order using
    the Shift+TAB key, improving accessibility of the Rgui
    configuration editor.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now fully accurate
    (instead of to "only" minimally five digits).
  * demo(error.catching) now also shows off withWarnings() and
    tryCatchWEMs().
  * As an experimental feature the placeholder _ can now also be used
    in the rhs of a forward pipe |&gt; expression as the first argument
    in an extraction call, such as _$coef. More generally, it can be
    used as the head of a chain of extractions, such as _$coef[[2]].
  * Spaces in the environment variable used to choose the R session's
    temporary directory (TMPDIR, TMP and TEMP are tried in turn) are
    now fatal.  (On Windows the 'short path' version of the path is
    tried and used if that does not contain a space.)
  * all.equal.numeric() gets a new optional switch giveErr to return
    the numeric error as attribute.  Relatedly,
    stopifnot(all.equal&lt;some&gt;(a, b, ..)) is as "smart" now, as
    stopifnot(all.equal(....)) has been already, thus allowing
    customized all.equal&lt;Some&gt;() wrappers.
  * R on Windows is now able to work with path names longer than 260
    characters when these are enabled in the system (requires at
    least Windows 10 version 1607).  Packages should be updated to
    work with long paths as well, instead of assuming PATH_MAX to be
    the maximum length.  Custom front-ends and applications embedding
    R need to update their manifests if they wish to allow this
    feature.  See
    &lt;https://blog.r-project.org/2023/03/07/path-length-limit-on-windows&gt;
    for more information.
  * 'Object not found' and 'Missing argument' errors now give a more
    accurate error context. Patch provided by Lionel Henry in
    PR#18241.
  * The @ operator is now an S3 generic. Based on contributions by
    Tomasz Kalinowski in PR#18482.
  * New generic chooseOpsMethod() provides a mechanism for objects to
    resolve cases where two suitable methods are found for an Ops
    Group Generic. This supports experimenting with alternative
    object systems. Based on contributions by Tomasz Kalinowski in
    PR#18484.
  * inherits(x, what) now accepts values other than a simple
    character vector for argument what. A new generic, nameOfClass(),
    is called to resolve the class name from what. This supports
    experimenting with alternative object systems. Based on
    contributions by Tomasz Kalinowski in PR#18485.
  * Detection of BLAS/LAPACK in use (sessionInfo()) with FlexiBLAS
    now reports the current backend.
  * The "data.frame" method for subset() now warns about extraneous
    arguments, typically catching the use of = instead of == in the
    subset expression.
  * Calling a:b when numeric a or b is longer than one may now be
    made into an error by setting environment variable
    _R_CHECK_LENGTH_COLON_ to a true value, along the proposal in
    PR#18419 by Henrik Bengtsson.
  * density(x, weights = *) now warns if automatic bandwidth
    selection happens without using weights; new optional warnWbw may
    suppress the warning.  Prompted by Christoph Dalitz' PR#18490 and
    its discussants.
  * rm(list = *) is faster and more readable thanks to Kevin Ushey's
    PR#18492.
  * The plot.lm() function no longer produces a normal Q-Q plot for
    GLMs. Instead it plots a half-normal Q-Q plot of the absolute
    value of the standardized deviance residuals.
  * The print() method for class "summary.glm" no longer shows
    summary statistics for the deviance residuals by default.  Its
    optional argument show.residuals can be used to show them if
    required.
  * The tapply() function now accepts a data frame as its X argument,
    and allows INDEX to be a formula in that case. by.data.frame()
    similarly allows INDICES to be a formula.
  * The performance of df[j] &lt;- value (including for missing j) and
    write.table(df) has been improved for data frames df with a large
    number of columns.  (Thanks to Gabriel Becker's PR#18500,
    PR#18503 and discussants, prompted by a report from Toby Dylan
    Hocking on the R-devel mailing list.)
  * The matrix multiply operator %*% is now an S3 generic, belonging
    to new group generic matrixOps.  From Tomasz Kalinowski's
    contribution in PR#18483.
  * New function array2DF() to convert arrays to data frames,
    particularly useful for the list arrays created by tapply().
  DATES and TIMES:
  * On platforms where (non-UTC) datetimes before 1902 (or before
    1900 as with system functions on recent macOS) are guessed by
    extrapolating time zones from 1902-2037, there is a warning at
    the first use of extrapolation in a session.  (As all time zones
    post 2037 are extrapolation, we do not warn on those.)
  * (Platforms using --with-internal-tzone, including Windows and by
    default macOS). How years are printed in dates or date-times can
    be controlled by environment variable R_PAD_YEARS_BY_ZERO.  The
    default remains to pad to 4 digits by zeroes, but setting value
    no gives no padding (as used by default by glibc).
  * strftime() tries harder to determine the offset for the "%z"
    format, and succeeds on the mainstream R platforms.
  * strftime() has a limit of 2048 bytes on the string produced -
    attempting to exceed this is an error.  (Previously it silently
    truncated at 255 bytes.)
  * sessionInfo() records (and by default prints) the system time
    zone as part of the locale information.  Also, the source
    (system/internal) of the date-time conversion and printing
    functions.
  * Objects of class "POSIXlt" created in this version of R always
    have 11 components: component zone is always set, and component
    gmtoff is set for times in UTC and usually set on the (almost
    all) platforms which have C-level support, otherwise is NA.
  * There are comprehensive validity checks on the structure of
    objects of class "POSIXlt" when converting (including formatting
    and printing).  (This avoids mis-conversions of hand-crafted
    objects.)
  * There is some support for using the native date-time routines on
    macOS: this is only viable on recent versions (e.g. 12.6 and 13)
    and does get wrong some historical changes (before 1900, during
    WWII).  Use of --with-internal-tzone remains the default.
  * as.POSIXct(&lt;numeric&gt;) and as.POSIXlt(.) (without specifying
    origin) now work.  So does as.Date(&lt;numeric&gt;).
  * as.Date.POSIXct(., tz) now treats several tz values, notably
    "GMT" as equivalent to "UTC", proposed and improved by Michael
    Chirico and Joshua Ulrich in PR#17674.
  * Experimental balancePOSIXlt() utility allows using "ragged" and
    or out-of-range "POSIXlt" objects more correctly, e.g., in
    subsetting and subassignments.  Such objects are now documented.
    More experimentally, a "POSIXlt" object may have an attribute
    "balanced" indicating if it is known to be filled or fully
    balanced.
  * Functions axis.Date() and axis.POSIXct() are rewritten to gain
    better default tick locations and better default formats by using
    prettyDate(). Thanks to Swetlana Herbrandt.
  * The mapping of Windows' names for time zones to IANA's 'Olson'
    names has been updated.  When ICU is available (it is by
    default), it is used to get a mapping for the current region set
    in Windows.  This can be overridden by setting environment
    variable TZ to the desired Olson name - see OlsonNames() for
    those currently available.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 16
    and so packages that provide graphics devices should be
    reinstalled.
  * The grDevices and grid packages have new functions for rendering
    typeset glyphs, primarily: grDevices::glyphInfo() and
    grid::grid.glyph().
    Rendering of typeset glyphs is only supported so far on the
    Cairo-based graphics devices and on the pdf() and quartz()
    devices.
  * The defined behaviour for "clear" and "source" compositing
    operators (via grid::grid.group()) has been changed (to align
    better with simple interpretation of original Porter-Duff
    definitions).
  * Support for gradients, patterns, clipping paths, masks, groups,
    compositing operators, and affine transformations has been added
    to the quartz() device.
  INSTALLATION on a UNIX-ALIKE:
  * A system installation of generic LAPACK 3.10.0 or later will be
    preferred to the version in the R sources.
    configure option --with-lapack=no (equivalently --without-lapack)
    forces compilation of the internal LAPACK sources.
    If --with-lapack is not specified, a system liblapack is looked
    for and used if it reports version 3.10.0 or later and does not
    contain BLAS routines.
    Packages using LAPACK will need to be reinstalled if this changes
    to using an external library.
  * On aarch64 Linux platforms using GCC, configure now defaults to
  - fPIC (instead of -fpic), as desired in PR#18326.
  * configure now checks conversion of datetimes between POSIXlt and
    POSIXct around year 2020.  Failure (which has been seen on
    platforms missing tzdata) is fatal.
  * If configure option --with-valgrind-instrumentation is given
    value 1 or 2, option --with-system-valgrind-headers is now the
    default and ignored (with a warning).  It is highly recommended
    that the system headers are installed alongside valgrind: they
    are part of its packaging on some Linux distributions and
    packaged separately (e.g. in the valgrind-devel RPM) on others.
    configure will give a warning if they are not found.
    The system headers will be required in a future release of R to
    build with valgrind instrumentation.
  * libcurl 8.x is now accepted by configure: despite a change in
    major version number it changes neither API nor ABI.
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools43, an update of the Rtools42 toolchain.  It is
    based on gcc 12 and newer versions of MinGW-W64, binutils and
    libraries.  At this time R-devel can still be built using
    Rtools42 without changes, but when R-devel is installed via the
    installer, it will by default look for Rtools43.
  * Old make targets rsync-extsoft and 32-bit ones that are no longer
    needed have been removed.
  * Default builds (including for packages) no longer select C99.
    Thus the C standard used is the default for the compiler, which
    for the toolchain in Rtools43 is C17.  (This is consistent with
    Unix builds.)
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++17 where
    available (which it is on all currently checked platforms): if
    not C++14 or C++11 is used if available otherwise C++ is not
    supported.
  * USE_FC_LEN_T is the default: this uses the correct
    (compiler-dependent) prototypes for Fortran BLAS/LAPACK routines
    called from C/C++, and requires adjustment of many such calls -
    see 'Writing R Extensions' SS6.6.1.
  * There is initial support for C++23 as several compilers are now
    supporting -std=c++23 or -std=c++2b or similar.  As for C++20,
    there no additional configure checks for C++23 features beyond a
    check that the compiler reports a __cplusplus value greater than
    that in the C++20 standard.  C++ feature tests should be used.
  * There is support for a package to indicate the version of the C
    standard which should be used to compile it, and for the
    installing user to specify this.  In most cases R defaults to the
    C compiler's default standard which is C17 (a `bug-fix' of C11) -
    earlier versions of R or compilers may have defaulted to C99.
    Current options are:
    USE_C17 Use a standard that is at most C17.  The intention is to
    allow legacy packages to still be installed when later C
    standards become the default, including packages using new
    keywords as identifiers or with K&amp;R-style function
    declarations.  This will use C17 if available, falling back
    to C11.
    USE_C90 Use the C90 (aka C89) standard.  (As that standard did
    not require compilers to identify that version, all we can
    verify is that the compiler does not claim to be using a
    later standard.  It may accept C99 features - for example
    clang accepts // to make comments.)
    USE_C99 Use the C99 standard. This should be rarely needed - it
    avoids the few new features of C11/C17 which can be useful if
    a package assumes them if C17 is specified and they are not
    implemented.
    USE_C23 Use C23 (or in future, later).  Compiler/library support
    for C23 is still being implemented, but LLVM clang from
    15.0.0 and the upcoming GCC 13 have quite extensive support.
    These can be specified as part of the SystemRequirements field in
    the package's DESCRIPTION file or _via_ options --use-C17 and so
    on of R CMD INSTALL and R CMD SHLIB.
    For further details see "Writing R Extensions" SS1.2.5.
  * (Windows) A src/Makefile.ucrt or src/Makefile.win file is now
    included after R_HOME/etcR_ARCH/Makeconf and so no longer needs
    to include that file itself.  Installation of a package with such
    a file now uses a site Makevars file in the same way as a package
    with a src/Makevars.win file would.
  * configure is now passed crucial variables such as CC and CFLAGS
    in its environment, as many packages were not setting them (as
    documented in 'Writing R Extensions' SS1.2).
    This has most effect where configure is used to compile parts of
    the package - most often by cmake or libtool which obfuscate the
    actual compile commands used.
    Also used for configure.win and configure.ucrt on Windows.
  FORTRAN FLAGS:
  * The flag -fno-optimize-sibling-calls is no longer forced for
    gfortran 7 and later.  It should no longer be needed now using
    'hidden' character-length arguments when calling BLAS/LAPACK
    routines from C/C++ is the default even for packages.  (Unless
    perhaps packages call Fortran code from C/C++ without using R's
    headers and without allowing for these arguments.)
  C-LEVEL FACILITIES:
  * The deprecated S-compatibility macros DOUBLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * The deprecated legacy typedefs of Sint and Sfloat in header R.h
    are no longer defined, and that header no longer includes header
    limits.h from C nor climits from C++.
  * New macro CAD5R() is provided in Rinternals.h and used in a few
    places in the R sources.
  * ALTREP now supports VECSXP vectors. Contributed by Gabor Csardi
    in PR#17620.
  * The Rcomplex definition (in header R_ext/Complex.h) has been
    extended to prevent possible mis-compilation when interfacing
    with Fortran (PR#18430).  The new definition causes compiler
    warnings with static initializers such as {1, 2}, which can be
    changed to {.r=1, .i=2}.
    Using the new definition from C++ depends on compiler extensions
    supporting C features that have not been incorporated into the
    C++ standards but are available in g++ and clang++: this may
    result in C++ compiler warnings but these have been worked around
    for recent versions of common compilers (GCC, Apple/LLVM clang,
    Intel).
    It is intended to change the inclusion of header R_ext/Complex.h
    by other R headers, so C/C++ code files which make use of
    Rcomplex should include that header explicitly.
  UTILITIES:
  * R CMD check does more checking of package .Rd files, warning
    about invalid email addresses and (some) invalid URIs and noting
    empty \item labels in description lists.
  * R CMD check now also reports problems when reading package news
    in md (file NEWS.md) and (optionally) plain text (file NEWS)
    formats.
  * _R_CHECK_TIMINGS_ defaults to a value from the environment even
    for R CMD check --as-cran; this allows for exceptionally fast or
    slow platforms.
    It now applies to checking PDF and HTML versions of the manuals,
    and 'checking CRAN incoming feasibility'.
  * R CMD check can optionally (but included in --as-cran) check
    whether HTML math rendering _via_ KaTeX works for the package .Rd
    files.
  * Non-interactive debugger invocations can be trapped by setting
    the environment variable _R_CHECK_BROWSER_NONINTERACTIVE_ to a
    true value.  This is enabled by R CMD check --as-cran to detect
    the use of leftover browser() statements in the package.
  * The use of sprintf and vsprintf from C/C++ has been deprecated in
    macOS 13 and is a known security risk.  R CMD check now reports
    (on all platforms) if their use is found in compiled code:
    replace by snprintf or vsnprintf respectively. [*NB:* whether
    such calls get compiled into the package is platform-dependent.]
  * Where recorded at installation, R CMD check reports the C and
    Fortran compilers used to build R.
    It reports the OS in use (if known, as given by osVersion) as
    well as that R was built for.
    It notes if a C++ standard was specified which is older than the
    current default: many packages have used C++11 to mean 'not
    C++98' - as C++11 is the minimum supported since R 4.0.0, that
    specification can probably be removed.
  * R CMD INSTALL reports the compilers (and on macOS, the SDK) used,
    and this is copied to the output of R CMD check.
    Where a C++ standard is specified, it is reported.
  * R CMD check's 'checking compilation flags in Makevars' has been
    relaxed to accept the use of flags such as -std=f2008 in
    PKG_FFLAGS.
  * tools::buildVignettes() has a new argument skip, which is used by
    R CMD check to skip (and note) vignettes with unavailable
    \VignetteDepends (PR#18318).
  * New generic .AtNames() added to enable class-specific completions
    after @. The formerly internal function findMatches() is now
    exported, mainly for use in methods for .DollarNames() and
    .AtNames().
  DEPRECATED AND DEFUNCT:
  * default.stringsAsFactors() is defunct.
  * Calling as.data.frame.&lt;class&gt;() directly (for 12 atomic classes)
    is going to be formally deprecated, currently activated by
    setting the environment variable
    _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ to non-empty, which also
    happens in R CMD check --as-cran.
  BUG FIXES:
  * Hashed environments with sizes less than 5 can now grow.
    (Reported to R-devel by Duncan Garmonsway.)
  * as.character(&lt;Rd&gt;, deparse = TRUE) failed to re-escape curly
    braces in LaTeX-like text.  (Reported by Hadley Wickham in
    PR#18324.)
  * library() now passes its lib.loc argument when requiring Depends
    packages; reported (with fix) in PR#18331 by Mikael Jagan.
  * R CMD Stangle: improved message about 'Output' files.
  * head(x, n) and tail(x, n) now signal an error if n is not
    numeric, instead of incidentally "working" sometimes returning
    all of x.  Reported and discussed by Colin Fay, in PR#18357.
  * The "lm" method for summary() now gives the correct F-statistic
    when the model contains an offset.  Reported in PR#18008.
  * C() and `contrasts&lt;-`() now preserve factor level names when
    given a function object (as opposed a function name which did
    preserve names). Reported in PR#17616.
  * c(a = 1, 2)[[]] no longer matches 2 but rather signals a
    _classed_ error.  Reported and analysed by Davis Vaughan in
    PR#18367, a duplicate of PR#18004, by Jan Meis et al.  For
    consistency, NULL[[]] is also erroneous now.  x[[]] &lt;- v gives an
    error of the same class "MissingSubscriptError".
  * The relist() function of utils now supports NULL elements in the
    skeleton (PR#15854).
  * ordered(levels = *) (missing x) now works analogously to factor(,
    ordered=TRUE); reported (with fix) by Achim Zeileis in PR#18389.
  * User-defined Rd macro definitions can now span multiple lines,
    thanks to a patch from Duncan Murdoch. Previously, the Rd parser
    silently ignored everything after the first line.
  * Plain-text help (tools::Rd2txt()) now preserves an initial blank
    line for text following description list items.
  * tools::Rd2HTML() and tools::Rd2latex() no longer split \arguments
    and \value lists at Rd comments.
  * tools::Rd2latex() now correctly handles optional text outside
    \items of argument lists as well as bracketed text at the
    beginning of sections, e.g., \value{[NULL]}.
  * as.character(&lt;POSIXt&gt;) now behaves more in line with the methods
    for atomic vectors such as numbers, and is no longer influenced
    by options().  Ditto for as.character(&lt;Date&gt;).  The
    as.character() method gets arguments digits and OutDec with
    defaults _not_ depending on options().  Use of as.character(*,
    format = .) now warns.
  * Similarly, the as.character.hexmode() and *.octmode() methods
    also behave as good citizen methods and back compatibility option
    keepStr = TRUE.
  * The as.POSIXlt(&lt;POSIXlt&gt;) and as.POSIXct(&lt;POSIXct&gt;) default
    methods now do obey their tz argument, also in this case.
  * as.POSIXlt(&lt;Date&gt;) now does apply a tz (time zone) argument, as
    does as.POSIXct(); partly suggested by Roland Fuss on the R-devel
    mailing list.
  * as.Date.POSIXlt(x) now also works when the list components are of
    unequal length, aka "partially filled" or "ragged".
  * expand.model.frame() looked up variables in the wrong environment
    when applied to models fitted without data.  Reported in
    PR#18414.
  * time() now (also) uses the ts.eps = getOption("ts.eps") argument
    and thus by default rounds values very close to the start (or
    end) of a year.  Based on a proposal by Andre"i V. Kostyrka on
    R-help.
  * Printing of a factanal() result with just one factor and sort =
    TRUE now works regularly, fixing PR#17863 by Timothy Bates,
    thanks to the 'R Contributors' working group.
  * Printing 0-length objects of class "factor", "roman", "hexmode",
    "octmode", "person", "bibentry", or "citation" now prints
    something better, one of which fixes PR#18422, reported by
    Benjamin Feakins.
  * Sys.timezone() queries timedatectl only if systemd is loaded;
    addressing a report by Jan Gorecki in PR#17421.
  * The formula method of cor.test() had scoping problems when
    environment(formula) was not the calling environment; reported
    with a patch proposal by Mao Kobayashi in PR#18439.
  * attach() of an environment with active bindings now preserves the
    active bindings.  Reported by Kevin Ushey in PR#18425.
  * BLAS detection now works also with system-provided libraries not
    available as regular files.  This fixes detection of the
    Accelerate framework on macOS since Big Sur.  Reported by David
    Novgorodsky.
  * download.file() gives a helpful error message in case of an
    invalid download.file.method option, thanks to Colin Fay's report
    in PR#18455.
  * Sporadic crashes of Rterm when using completion have been fixed.
  * Rprof() is now more reliable.  A livelock in thread
    initialization with too short sampling interval has been fixed on
    macOS.  A deadlock in using the C runtime has been fixed on
    Windows.  A potential deadlock has been prevented on Unix.
  * Cursor placement in Rgui now works even after a fixed-width font
    is selected.
  * Mandatory options (options()) are now set on startup so that
    saving and restoring them always works (PR#18372).
  * Package installation, R CMD INSTALL or install.packages(*), now
    parses each of the &lt;pkg&gt;/R/*.R files individually instead of
    first concatenating and then parse()ing the large resulting file.
    This allows parser or syntax errors to be diagnosed with correct
    file names and line numbers, thanks to Simon Dedman's report and
    Bill Dunlap's patch in PR#17859.
    This _does_ require syntactically self contained R source files
    now, fixing another inadvertent bug.
  * predict.lm(&lt;model with offset&gt;) now finds the offset in the
    correct environment, thanks to Andr'e Gillibert's report and patch
    in PR#18456.
  * getInitial(&lt;formula&gt;) now finds the selfStart model in the
    correct environment.  (Reported by Ivan Krylov in PR#18368.)
  * Fix for possible segfault when using recently-added graphics
    features, such as gradients, clipping paths, masks, and groups
    with pdf(file=NULL).
  * class(m) &lt;- class(m) no longer changes a matrix m by adding a
    class _attribute_.
  * packageDate(pkg) now only warns once if there is no pkg.
  * When ts() creates a multivariate time series, "mts", it also
    inherits from "array" now, and is.mts() is documented _and_
    stricter.
  * Rd2txt() now preserves line breaks of \verb Rd content and from
    duplicated \cr.  The former also fixes the rendering of verbatim
    output from Rd \Sexpr in plain-text help.
  * uniroot(f, interval) should no longer wrongly converge _outside_
    the interval in some cases where abs(f(x)) == Inf for an x at the
    interval boundary, thanks to posts by Ben Bolker and Serguei
    Sokol on R-devel.
  * Vectorized alpha handling in palette functions such as in gray(),
    rainbow(), or hcl.colors() works correctly now, thanks to Achim
    Zeileis' report and patch in PR#18476.
  * Formatting and print()ing of bibentry objects has dropped the
    deprecated citation.bibtex.max argument, such that the bibtex
    argument's default for print.bibentry() depends directly on the
    citation.bibtex.max option, whereas in format.bibentry() the
    option no longer applies.
  * Attempting to use a character string naming a foreign function
    entry point in a foreign function call in a package will now
    signal an error if the packages has called R_forceSymbols to
    specify that symbols must be used.
  * An error in table() could permanently set options(warn=2)
    promoting all subsequent warnings to errors.
  * The sigma() function gave misleading results for binary GLMs.  A
    new method for objects of class "glm" returns the square root of
    the estimate of the dispersion parameter using the same
    calculation as summary.glm().
  * bs() and ns() in the (typical) case of automatic knot
    construction, when some of the supposedly inner knots coincide
    with boundary knots, now moves them inside (with a warning),
    building on PR#18442 by Ben Bolker.
  * R CMD on Windows now skips the site profile with --no-site-file
    and --vanilla even when R_PROFILE is set (PR#18512, from Kevin
    Ushey).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1686916800">- CHANGES IN R 4.3.1:
  C-LEVEL FACILITIES:
  * The C-level API version of R's integrate(), Rdqags() in Applic.h,
    now returns the correct number of integrand evaluations neval,
    fixing PR#18515 reported and diagnosed by Stephen Wade.
  * The C prototypes for LAPACK calls dspgv and dtptrs in
    R_exts/Lapack.h had one too many and one too few character length
    arguments - but this has not caused any known issues. To get the
    corrected prototypes, include
    [#]include &lt;Rconfig.h&gt; // for PR18534fixed
    [#]ifdef PR18534fixed
    [#] define usePR18534fix 1
    [#]endif
    [#]include &lt;R_exts/Lapack.h&gt;
    in your C/C++ code (PR#18534).
  INSTALLATION:
  * Many of the checks of esoteric Internet operations and those
    using unreliable external sites have been moved to a new target
    that is not run by default and primarily intended for the core
    developers.  To run them use
    cd tests; make test-Internet-dev
  BUG FIXES:
  * .S3methods(), typically called from methods(), again marks
    methods from package base as visible.
    Also, the visibility of non-base methods is again determined by
    the method's presence in search().
  * tools::Rdiff() is now more robust against invalid strings, fixing
    installation tests on Windows without Rtools installed
    (PR#18530).
  * Fix (new) bug in hcl.colors(2, *), by Achim Zeileis (PR#18523).
  * head(., &lt;illegal&gt;) and tail(..) now produce more useful "Error in
    ...." error messages, fixing PR#18362.
  * Package code syntax on Windows is checked in UTF-8 when UTF-8 is
    the native encoding.
  * na.contiguous(x) now also returns the first run, when it is at
    the beginning and there is a later one of the same length;
    reported to R-devel, including a fix, by Georgi Boshnakov.
    Further, by default, it modifies only an existing attr(*,"tsp")
    but otherwise no longer sets one.
  * chol(&lt;not pos.def&gt;, pivot = &lt;T|F&gt;) now gives a correct error or
    warning message (depending on pivot), thanks to Mikael Jagan's
    (PR#18541).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1699012800">- CHANGES IN R 4.3.2:
  NEW FEATURES:
  * The default initialization of the "repos" option from the
    repositories file at startup can be skipped by setting
    environment variable R_REPOSITORIES to NULL such that
    getOption("repos") is empty if not set elsewhere.
  * qr.X() is now an implicit S4 generic in methods.
  * iconv(to = "ASCII//TRANSLIT") is emulated using substitution on
    platforms which do not support it (notably Alpine Linux).  This
    should give a human-readable conversion in ASCII on all platforms
    (rather than NA_character_).
  * trans3d() gains options continuous and verbose addressing the
    problem of possible "wrap around" when projecting too long
    curves, as reported by Achim Zeileis in PR#18537.
  * tools::showNonASCII() has been rewritten to work better on macOS
    14 (which has a changed implementation of iconv()).
  * tiff(type = "quartz") (the default on macOS) now warns if
    compression is specified: it continues to be ignored.
  INSTALLATION on a UNIX-ALIKE:
  * There is some support for building with Intel's LLVM-based
    compilers on x86_64 Linux, such as (C) icx, (C++) ipcx and
    (Fortran) ifx from oneAPI 2023.x.y.
  * There is support for using LLVM's flang-new as the Fortran
    compiler from LLVM 16.0.x (preferably 17.0.0 or later).
  UTILITIES:
  * R CMD check reports the use of the Fortran 90 random number
    generator RANDOM_NUMBER() and the subroutines to initialize it.
    'Writing R Extensions' has example code to use R's RNGs from
    Fortran.
  BUG FIXES:
  * substr(x, n, L) &lt;- cc now works (more) correctly for multibyte
    UTF-8 strings x when L &gt; nchar(x), thanks to a report and patch
    by 'Architect 95'.
  * contrib.url(character()) now returns 0-length character() as
    documented, which also avoids spurious warnings from
    available.packages() et al. in the edge case of an empty vector
    of repository URLs.
  * readChar(., 4e8) no longer fails, thanks to Kodi Arfer's report
    (PR#18557).
  * lapply(&lt;list&gt;, as.data.frame) no longer warns falsely for some
    base vector components.
  * Communication between parent and child processes in the multicore
    part of parallel could fail on platforms that do not support an
    arbitrarily large payload in system functions read()/write() on
    pipes (seen on macOS where a restriction to INT_MAX bytes is
    documented, without doing a partial read unlike Linux). The
    payload is now split into 1Gb chunks to avoid that problem.
    (PR#18571)
  * qqplot(x,y, conf.level=.) gives better confidence bounds when
    length(x) != length(y), thanks to Alexander Ploner's report and
    patch proposal (PR#18557).
  * norm(&lt;0-length&gt;, "2") now gives zero instead of an error, as all
    the other norm types, thanks to Mikael Jagan's PR#18542.
  * Build-stage Rd macros \packageAuthor and \packageMaintainer now
    process Authors@R, fixing NA results when the package DESCRIPTION
    omits Author and Maintainer fields.
  * Formatting and printing complex numbers could give things like
    0.1683-0i because of rounding error: -0i is now replaced by +0i.
  * postscript() refused to accept a title comment containing the
    letter "W" (PR#18599).
  * isoreg(c(1,Inf)) signals an error instead of segfaulting, fixing
    PR#18603.
  * tiff(type = "Xlib") was only outputting the last page of
    multi-page plots.
  * tools::latexToUtf8() again knows about \~{n} and other letters
    with tilde, fixing a regression in R 4.3.0, and about \^{i} as an
    alternative to \^{\i} (similarly with other accents).
    Furthermore, LaTeX codes for accented I letters are now correctly
    converted, also fixing related mistakes in
    tools::encoded_text_to_latex().
  * tar(*, tar = "internal") no longer creates out-of-spec tar files
    in the very rare case of user or group names longer than 32
    bytes, fixing PR#17871 with thanks to Ivan Krylov.
  * When using the "internal" timezone datetime code, adding a
    fraction of a second no longer adds one second, fixing PR#16856
    from a patch by Ivan Krylov.
  * tools::checkRd() no longer produces spurious notes about
    "unnecessary braces" from multi-line Rd results of \Sexpr macros.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1709208000">- CHANGES IN R 4.3.3:
  NEW FEATURES:
  * iconv() now fixes up variant encoding names such as "utf8"
    case-insensitively.
  DEPRECATED AND DEFUNCT:
  * The legacy encoding = "MacRoman" is deprecated in pdf() and
    postscript(): support was incomplete in earlier versions of R.
  BUG FIXES:
  * Arguments are now properly forwarded to methods on S4 generics
    with ... in the middle of their formal arguments. This was broken
    for the case when a method introduced an argument but did not
    include ... in its own formals. Thanks to Herv'e Pag`es for the
    report PR#18538.
  * Some invalid file arguments to pictex(), postscript() and xfig()
    opened a file called NA rather than throw an error.  These
    included postscript(NULL) (which some people expected to work
    like pdf(NULL)).
  * Passing filename = NA to svg(), cairo_pdf(), cairo_ps() or the
    Cairo-based bitmap devices opened a file called NA: it now throws
    an error.
  * quartz(file = NA) opened a file called NA, including when used as
    a Quartz-based bitmap device.  It now gives an error.
  * rank(&lt;long vector&gt;) now works, fixing PR#18617, thanks to Ilia
    Kats.
  * seq.int() did not adequately check its length.out argument.
  * match(&lt;POSIXct&gt;, .) is correct again for differing time zones,
    ditto for "POSIXlt", fixing PR#18618 reported by Bastian Klein.
  * drop.terms(*, dropx = &lt;0-length&gt;) now works, fixing PR#18563 as
    proposed by Mikael Jagan.
  * drop.terms(*) keeps + offset(.) terms when it should, PR#18565,
    and drop.terms() no longer makes up a response, PR#18566, fixing
    both bugs thanks to Mikael Jagan.
  * getS3method("t", "test") no longer finds the t.test() function,
    fixing PR#18627.
  * pdf() and postscript() support for the documented Adobe encodings
    "Greek" and "Cyrilllic" was missing (although the corresponding
    Windows' codepages could be used).
  * Computations of glyph metric information for pdf() and
    postscript() did not take into account that transliteration could
    replace one character by two or more (only seen on macOS 14) and
    typically warned that the information was not known.
  * rank(x) no longer overflows during integer addition, when
    computing rank average for largish but not-yet long vector x,
    fixing PR#18630, thanks to Ilia Kats.
  * list.files() on Windows now returns also files with names longer
    that 260 bytes (the Windows limit is 260 characters).
    Previously, some file names particularly with 'East Asian'
    characters were omitted.
  * cov2cor(&lt;0 x 0&gt;) now works, fixing PR#18423 thanks to Mikael
    Jagan and Elin Waring.
  * cov2cor(&lt;negative diagonal&gt;) and similar now give one warning
    instead of two, with better wording, fixing PR#18424 thanks to
    Mikael Jagan.
  * tools:: startDynamicHelp() now ensures port is in proper range,
    fixing PR#18645.
  * pbeta(x, a,b) is correct now for x=0 or 1 in the boundary cases
    where a or b or both are 0, fixing PR#18672 thanks to Michael
    Fay.
  * pmatch(x, table) for large table, also called for data frame row
    selection, dfrm[nm, ], is now interruptible, fixing PR#18656.
  * predict(&lt;rank-deficient lm&gt;, newdata=*) fix computing of nbasis,
    see Russ Lenth's comment 29 in PR#16158.
  * Added a work-around for a bug in macOS 14.3.1 and higher which
    prevents R plots in the Quartz Cocoa device from updating on
    screen.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1713960000">- CHANGES IN R 4.4.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Startup banners, R --version, sessionInfo() and R CMD check no
    longer report (64-bit) as part of the platform as this is almost
    universal - the increasingly rare 32-bit platforms will still
    report (32-bit).
    On Windows, ditto for window titles.
  * is.atomic(NULL) now returns FALSE, as NULL is not an atomic
    vector.  Strict back-compatibility would replace is.atomic(foo)
    by (is.null(foo) || is.atomic(foo)) but should happen only
    sparingly.
  NEW FEATURES:
  * The confint() methods for "glm" and "nls" objects have been
    copied to the stats package.  Previously, they were stubs which
    called versions in package MASS. The MASS namespace is no longer
    loaded if you invoke (say) confint(glmfit).  Further, the "glm"
    method for profile() and the plot() and pairs() methods for class
    "profile" have been copied from MASS to stats.  (profile.nls()
    and plot.profile.nls() were already in stats.)
  * The confint() and profile methods for "glm" objects have gained a
    possibility to do profiling based on the Rao Score statistic in
    addition to the default Likelihood Ratio. This is controlled by a
    new test = argument.
  * The pairs() method for "profile" objects has been extended with a
    which = argument to allow plotting only a subset of the
    parameters.
  * The "glm" method for anova() computes test statistics and
    p-values by default, using a chi-squared test or an F test
    depending on whether the dispersion is fixed or free.  Test
    statistics can be suppressed by giving argument test a false
    logical value.
  * In setRepositories() the repositories can be set using their
    names via name = instead of index ind =.
  * methods() and .S3methods() gain a all.names option for the (rare)
    case where functions starting with a . should be included.
  * Serializations can now be interrupted (e.g., by Ctrl-C on a
    Unix-alike) if they take too long, e.g., from save.image(),
    thanks to suggestions by Ivan Krylov and others on R-devel.
  * New startup option --max-connections to set the maximum number of
    simultaneous connections for the session.  Defaults to 128 as
    before: allowed values up to 4096 (but resource limits may in
    practice restrict to smaller values).
  * R on Windows (since Windows 10 2004) now uses the new Segment
    Heap allocator. This may improve performance of some
    memory-intensive applications.
  * When R packages are built, typically by R CMD build &lt;pkg&gt;, the
    new --user=&lt;build_user&gt; option overrides the (internally
    determined) user name, currently Sys.info()["user"] or LOGNAME.
    This is a (modified) fulfillment of Will Landau's suggestion in
    PR#17530.
  * tools::testInstalledBasic() gets new optional arguments outDir
    and testSrcdir, e.g., allowing to use it in a &lt;builddir&gt; !=
    &lt;srcdir&gt; setup, and in standard "binary" Windows installation
  * if* a source tests/ folder is present.
  * range(&lt;DT_with_Inf&gt;, finite = TRUE) now work for objects of class
    "Date", "POSIXct", and "POSIXlt" with infinite entries,
    analogously to range.default(), as proposed by Davis Vaughan on
    R-devel.  Other range()-methods can make use of new function
    .rangeNum().
  * New .internalGenerics object complementing .S3PrimitiveGenerics,
    for documentation and low-level book-keeping.
  * grid() now invisibly returns the x- and y- coordinates at which
    the grid-lines were drawn.
  * norm(., type) now also works for complex matrices.
  * kappa(., exact = TRUE, norm = *) now works for all norms and also
    for complex matrices.  In symmetric / triangular cases, the new
    argument uplo = "U" | "L" allows the upper or lower triangular
    part to be specified.
  * memDecompress(type = "unknown") recognizes compression in the
    default 'zlib' format as used by memCompress(type = "gzip").
  * memCompress() and memDecompress() will use the libdeflate library
    (&lt;https://github.com/ebiggers/libdeflate&gt;) if installed.  This
    uses the same type of compression for type = "gzip" but is 1.5-2x
    faster than the system libz library on some common platforms: the
    speed-up may depend on the library version.
  * diff() for objects of class "Date", "POSIXct", and "POSIXlt"
    accepts a units argument passed via ....
  * Dynamic help now does a much better job of rendering package
    DESCRIPTION metadata.
  * Rprof() gains an event argument and support for elapsed (real)
    time profiling on Unix (PR#18076).
  * filled.contour() gains a key.border argument.
  * tools::update_pkg_po() gets arguments pot_make and mo_make for
    _not_ re-making the corresponding files, and additionally a
    verbose argument.
  * Hexadecimal string colour specifications are now accepted in
    short form, so, for example, we can use "#123", which is
    equivalent to "#112233".
    Thanks to MikeFC for the original idea and Ella Kaye, Malcolm
    Barrett, George Stagg, and Hanne Oberman for the patch.
  * Plain-text help shows \var markup by angle brackets.
  * The new experimental primitive function declare() is intended to
    eventually allow information about R code to be communicated to
    the interpreter, compiler, and code analysis tools. The syntax
    for declarations is still being developed.
  * Functions psmirnov(), qsmirnov() and rsmirnov() in package stats
    have had argument two.sided renamed to alternative, to take into
    account that the permutation distributions of the one-sided
    statistics can be different in the case of ties.  Consequence of
    PR#18582.
  * sort() is now an implicit S4 generic in methods.
  * Formatting and printing, format(z), print(z), of complex vectors
    z no longer zap relatively small real or imaginary parts to zero,
    fixing PR#16752.  This is an API change, as it was documented
    previously to round real and imaginary parts together on purpose,
    producing nicer looking output.  As mentioned, e.g. in the PR,
    this change is compatible with many other "R-like" programming
    environments.
    We have simplified the internal code and now basically format the
    real and imaginary parts independently of each other.
  * New experimental functions Tailcall() and Exec() to support
    writing stack-space-efficient recursive functions.
  * Where characters are attempted to be plotted by pdf(),
    postscript() and xfig() which are not in the selected 8-bit
    character set (most often Latin-1) and the R session is using a
    UTF-8 locale, the warning messages will show the UTF-8 character
    rather than its bytes and one dot will be substituted per
    character rather than per byte.  (Platforms whose iconv() does
    transliteration silently plot the transliteration.)
    In a UTF-8 locale some transliterations are now done with a
    warning (e.g., dashes and Unicode minus to hyphen, ligatures are
    expanded, permille (‰) is replaced by o/oo), although the OS may
    have got there first.  These are warnings as they will continue
    to be replaced by dots in earlier versions of R.
  * The matrix multiplication functions crossprod() and tcrossprod()
    are now also primitive and S3 generic, as %*% had become in R
    4.3.0.
  * source() and example() have a new optional argument catch.aborts
    which allows continued evaluation of the R code after an error.
  * The non-Quartz tiff() devices allow additional types of
    compression if supported by the platform's libtiff library.
  * The list of base and recommended package names is now provided by
    tools::standard_package_names().
  * cairo_pdf() and cairo_ps() default to onefile = TRUE to closer
    match pdf() and postscript().
  * New option catch.script.errors provides a documented way to catch
    errors and then continue in non-interactive use.
  * L %||% R newly in base is an expressive idiom for the phrases
    if(!is.null(L)) L else R or if(is.null(L)) R else L.
  * The return value from warnings() now always inherits from
    "warnings" as documented, now also in the case of no warnings
    where it previously returned NULL.
  * as.complex("1i") now returns 0 + 1i instead of NA with a warning.
  * z &lt;- c(NA, 1i) now keeps the imaginary part Im(z[1]) == 0, no
    longer coercing to NA_complex_.  Similarly, cumsum(z) correctly
    sums real and imaginary parts separately, i.e., without
    "crosstalk" in case of NAs.
  * On Alpine Linux iconv() now maps "latin2", "latin-2", "latin9"
    and "latin-9" to encoding names the OS knows about
    (case-insensitively).
  * iconv(sub = "Unicode") now always zero-pads to four (hex) digits,
    rather than to 4 or 8.  (This seems to have become the convention
    once Unicode restricted the number of Unicode points to 2^21 - 1
    and so will never need more than 6 digits.)
  * NCOL(NULL) now returns 0 instead of 1, for consistency with
    cbind().
  * The information for the Euro glyph missing from the Adobe .afm
    files for the Courier, Helvetica and Times families has been
    copied from their URW equivalents - this will improve vertical
    centring in the pdf() and postscript() devices.
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.12.0.  The changes are almost entirely cosmetic.
  * The included LAPACK sources have been updated to version 3.12.0
    and some further double-complex routines added.
  * There are new font families for the 2014--5 URW 2.0 fonts (see
    ?pdf) which are included in recent versions of Ghostscript.
    These have font widths for most Greek glyphs and a few others
    which were missing from the original versions (whose font
    families remain available for reproducibility, although
    Ghostscript-based viewers will render using the 2.0 versions).
  * Improve the large-n efficiency of as.matrix(&lt;dist&gt;), thanks an R
    contributors effort, notably by Tim Taylor and Heather Turner,
    see PR#18660.
  * The default and numeric methods of all.equal() get a check.class
    option.
  * zapsmall() gets new optional arguments, function mFUN and min.d,
    for extra flexibility; fulfills a wish in PR#18199.  Also, it is
    now an implicit S4 generic in package methods.
  * The Rd filter for aspell() gains an ignore argument.
  * New generic function sort_by(), primarily useful for the
    data.frame method which can be used to sort rows of a data frame
    by one or more columns.
  * The icence headers for the RPC code in src/extra/xdr have been
    updated to use the GPL-compatible licence published by Oracle
    America in 2010.
  * New function pkg2HTML() in tools to create single-page HTML
    reference manuals for R packages.
  * The byte code evaluator now uses less C stack space for recursive
    calls to byte-compiled functions. It also makes more of an effort
    to avoid allocations for scalar return values.
  * New completion option backtick (disabled by default) allows
    non-syntactic completions to be wrapped in backquotes. This is
    currently only useful for Jupyter notebooks via the IRkernel
    package, and may cause problems for other backends.
  INSTALLATION:
  * The parser has been updated to work with bison 3.8.2, which is
    now used for the pre-generated parsers in gram.c, file.c, and
    gramRd.c. A few parser error messages have changed, which may
    affect code that relies on exact messages.
  INSTALLATION on a UNIX-ALIKE:
  * System valgrind headers are now required to use configure option
  - -with-valgrind-instrumentation with value 1 or 2.
  * configure will warn if it encounters a 32-bit build, as that is
    nowadays almost untested.
  * Environment variable R_SYSTEM_ABI is no longer used and so no
    longer recorded in etc/Renviron (it was not on Windows and was
    only ever used when preparing package tools).
  * If the libdeflate library and headers are available, libdeflate
    rather than libz is used to (de)compress R objects in lazy-load
    databases.  Typically tasks spend up to 5% of their time on such
    operations, although creating lazy-data databases is one of the
    exceptions.
    This can be suppressed if the library is available by the
    configure option --without-libdeflate-compression.
  * configure option --enable-lto=check has not worked reliably since
    2019 and has been removed.
  * The minimum autoconf requirement for a maintainer build has been
    increased to autoconf 2.71.
    It is intended to increase this to 2.72 for R 4.5.0: the
    distributed configure file was generated using 2.72.
  * The minimum version requirement for an external LAPACK has been
    reduced to 3.9.0.
  * No default C++ compiler is set if no C++17 compiler is detected:
    there is no longer an automatic fallback to C++14 or C++11.
    Compilers from the last five years should have sufficient
    support: for others macros CXX and CXXSTD can be set in file
    config.site to provide a fallback if needed.
    The Objective-C++ compiler now by default uses the standard
    selected by R for C++ (currently C++17) rather than the default
    standard for the C++ compiler (which on macOS is still C++98).
  INSTALLATION on macOS:
  * A new configure option --with-newAccelerate makes use of Apple's
    'new' BLAS / LAPACK interfaces in their Accelerate framework.
    Those interfaces are only available in macOS 13.3 or later, and
    building requires SDK 13.3 or later (from the Command Line Tools
    or Xcode 14.3 or later).
    By default the option uses new Accelerate for BLAS calls: to also
    use it for LAPACK use option --with-newAccelerate=lapack.  The
    later interfaces provide LAPACK 3.9.1 rather than 3.2.1: 3.9.1 is
    from 2021-04 and does not include the improved algorithms
    introduced in LAPACK 3.10.0 (including for BLAS calls).
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools44, an update of the Rtools43 toolchain.  It is
    based on GCC 13 and newer versions of MinGW-W64, binutils and
    libraries (targeting 64-bit Intel CPUs).  R-devel can no longer
    be built using Rtools43 without changes.
  * Rtools44 has experimental support for 64-bit ARM (aarch64) CPUs
    _via_ the LLVM 17 toolchain using lld, clang/flang-new and
    libc++.
  UTILITIES:
  * R CMD check notes when S4-style exports are used without
    declaring a strong dependence on package methods.
  * tools::checkRd() (used by R CMD check) detects more problems with
    \Sexpr-based dynamic content, including bad nesting of \Sexprs
    and invalid arguments.
  * tools::checkRd() now reports Rd titles and section names ending
    in a period; this is ignored by R CMD check unless environment
    variable _R_CHECK_RD_CHECKRD_MINLEVEL_ is set to -5 or smaller.
  * R CMD check now notes Rd files without an \alias, as long
    documented in 'Writing R Extensions' §1.3.1.  The check for a
    missing \description has been moved from tools::checkRd() to
    tools::checkRdContents().
  * R CMD check now visits inst/NEWS.Rd and OS-specific man
    subdirectories when checking Rd files.
  * tools::checkDocFiles() and tools::checkRdContents() now also
    check internal Rd files by default, but "specially" (ignoring
    missing documentation of arguments).
  * R CMD Rdiff gets option --useEx.
  * R CMD check now warns on non-portable uses of Fortran KIND such
    as INTEGER(KIND=4) and REAL(KIND=8).
    To see the failing lines set environment variable
    _R_CHECK_FORTRAN_KIND_DETAILS_ to a true value.
  * When checking Rd files, R CMD check now notes some of the "lost
    braces" that tools::checkRd() finds.  Typical problems are Rd
    macros missing the initial backslash (e.g., code{...}), in-text
    set notation (e.g., {1, 2}, where the braces need escaping), and
    \itemize lists with \describe-style entries of the form
    \item{label}{description}.
  * R CMD INSTALL (and hence check) will compile C++ code with
  - DR_NO_REMAP if environment variable _R_CXX_USE_NO_REMAP_ is set
    to a true value.  It is planned that this will in future become
    the default for compiling C++.
  * The new built-in Rd macro \dontdiff{} can be used to mark example
    code whose output should be ignored when comparing check output
    to reference output (tests/Examples/&lt;pkg&gt;-Ex.Rout.save).  The
    \dontdiff tag, like \donttest, is _not_ shown on the rendered
    help page, so provides a clean alternative to ##
    IGNORE_RDIFF_(BEGIN|END) comments.
  * R CMD build when there is no NAMESPACE, now uses the recommended
    exportPattern("^[^.]"), instead of exporting everything.
  * R CMD check now warns about non-ASCII characters in the NAMESPACE
    file (in addition to R files). Such packages are not portable and
    may fail to install on some platforms.
  C-LEVEL FACILITIES:
  * Headers R_ext/Applic.h and R-ext/Linpack.h used to include
    R_ext/BLAS.h although this was undocumented and unneeded by their
    documented entry points.  They no longer do so.
  * New function R_missing(), factored out from do_missing(), used to
    fix PR#18579.
  * SEXP type S4SXP has been renamed to OBJSXP to support
    experimenting with alternative object systems.  The S4SXP value
    can still be used in C code but is now deprecated.  Based on
    contributions from the R Consortium's Object-Oriented Programming
    Working Group.
  * New function pow1p(x,y) for accurate (1+x)^y.
  * mkCharLenCE was incorrectly documented to take a size_t length
    but was implemented with int (and character strings in R are
    limited to 2^31 - 1 bytes).
  DEPRECATED AND DEFUNCT:
  * data() no longer handles zipped data from long-defunct (since R
    2.13.0) --use-zip-data installations.
  * The legacy graphics devices pictex() and xfig() are now
    deprecated.  They do not support recent graphics enhancements and
    their font handling is rudimentary. The intention is to retain
    them for historical interest as long as they remain somewhat
    functional.
  * Support for encoding = "MacRoman" has been removed from the pdf()
    and postscript() devices - this was a legacy encoding supporting
    classic macOS up to 2001 and no longer has universal libiconv
    support.
  * is.R() is deprecated as no other S dialect is known to be in use
    (and this could only identify historical dialects, not future
    ones).
    Further information on calls can be obtained by setting the
    environment variable _R_DEPRECATED_IS_R_ to error which turns the
    deprecation warning into an error and so by default gives a
    traceback.  (This is done by R CMD check --as-cran.)
  * UseMethod() no longer forwards local variables assigned in the
    generic function into method call environments before evaluating
    the method body. This makes method calls behave more like
    standard function calls and makes method code easier to analyze
    correctly.
  * The twelve as.data.frame.&lt;class&gt;() methods which were deprecated
    only via _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ and in R CMD
    check --as-cran are formally deprecated now in favour of calling
    as.data.frame() or as.data.frame.vector().  The deprecation
    "check" now works also when as.data.frame() is S4 generic thanks
    to Ivan Krylov.
  * The default method for the directional comparison operators &lt;, &gt;,
    &lt;=, and &gt;= now signals an error when one of the operands is a
    language object, i.e. a symbol or a call.
  * For terms.formula(), deprecate abb and neg.out arguments
    _formally_ in addition to just documenting it.
  BUG FIXES:
  * The methods package is more robust to not being attached to the
    search path.  More work needs to be done.
  * pairwise.t.test() misbehaved when subgroups had 0 DF for
    variance, even with pool.sd = TRUE.  (PR#18594 by Jack Berry).
  * Probability distribution functions [dpq]&lt;distrib&gt;(x, *), but also
    bessel[IKJY](x, .) now consistently preserve attributes(x) when
    length(x) == 0, e.g., for a 2 x 0 matrix, thanks to Karolis
    Koncevičius' report PR#18509.
  * Group "Summary" computations such as sum(1:3, 4, na.rm = 5, NA,
    7, na.rm = LL) now give an error instead of either 17 or NN for
    LL true or false, as proposed by Ivan Krylov on the R-devel
    mailing list.  (This also means it is now an error to specify
    na.rm more than once.)
  * as.complex(x) now returns complex(real = x, imaginary = 0) for
    _all_ numerical and logical x, notably also for NA or
    NA_integer_.
  * Directories are now omitted by file.copy(, recursive = FALSE) and
    in file.append() (PR#17337).
  * gsub() and sub() are now more robust to integer overflow when
    reporting errors caused by too large input strings (PR#18346).
  * Top-level handlers are now more robust to attempts to remove a
    handler whilst handlers are running (PR#18508).
  * The handling of Alt+F4 in dialogs created on Windows using
    GraphApp has been fixed (PR#13870).
  * density() more consistently computes grid values for the
    FFT-based convolution, following Robert Schlicht's analysis and
    proposal in PR#18337, correcting density values typically by a
    factor of about 0.999.  Argument old.coords = TRUE provides back
    compatibility.
  * palette.colors() gains a name argument that defaults to FALSE
    controlling whether the vector of colours that is returned has
    names (where possible).  PR#18529.
  * tools::xgettext() no longer extracts the (non-translatable) class
    names from warningCondition and errorCondition calls.
  * S3method(&lt;gen&gt;, &lt;class&gt;, &lt;func&gt;) in the NAMESPACE file now works
    (again) when &lt;func&gt; is visible from the namespace, e.g.,
    imported, or in base.
  * getParseData(f) now also works for a function defined in the
    first of several &lt;pkg&gt;/R/*.R source files, thanks to Kirill
    Müller's report and Duncan Murdoch's patch in PR#16756.
  * Rd \Sexpr macros with nested #ifdef conditionals were not
    processed.
  * A non-blocking connection with non-default encoding (such as a
    socket) now correctly returns from readLines() after new data has
    arrived also when its EOF had been reached previously.  Thanks to
    Peter Meilstrup's report on R-devel and Ivan Krylov's report and
    patch proposal in PR#18555.
  * tools::checkRdContents() failed to detect empty argument
    descriptions when they spanned multiple lines, including those
    generated by prompt().  These cases are now noted by R CMD check.
  * Plain-text help no longer outputs spurious colons in the
    arguments list (for multi-line \item labels in the Rd source).
  * kappa() and rcond() work correctly in more cases; kappa(., norm =
    "2") now warns that it computes the 1-norm with (default) exact =
    FALSE; prompted by Mikael Jagan's quite comprehensive PR#18543.
  * Rd skeletons generated by prompt() or promptData() now use a
    dummy title (so R CMD build works).  tools::checkRdContents() has
    been updated to detect such template leftovers, including from
    promptPackage().
  * When S4 method dispatch fails because no method was found, the
    error message now includes the signature argument names; thanks
    to Michael Chirico's proposal on the R-devel list.
  * withAutoprint({ .. }) now preserves srcrefs previously lost,
    thanks to Andrew Simmons' report plus fix in PR#18572.
  * transform.data.frame() no longer adjusts names; in particular,
    untransformed variables are kept as-is, including those with
    syntactically invalid names (PR#17890).
  * The keep.source option for Rd \Sexpr blocks is no longer ignored.
  * The formula methods for t.test() and wilcox.test() now catch when
    paired is passed, addressing PR#14359; use Pair(x1, x2) ~ 1 for a
    paired test.
  * The level reported in the browser prompt was often too large. It
    now shows the number of browser contexts on the stack.
  * For cbind() and rbind(), the optional deparse.level argument is
    now properly passed to methods, thanks to Mikael Jagan's PR#18579
    and comments there.
  * Some error and warning messages for large ('long vector')
    matrix(v, nr, nc) and dim(m) &lt;- d are now correct about sizes,
    using long long formatting, fixing PR#18612 (and more) reported
    by Mikael Jagan.
  * readChar(useBytes = TRUE) now terminates strings even when the
    underlying connection uses extra spaces in the input buffer.
    This fixes problems with extra garbage seen with gzip
    connections, PR#18605.
  * Named capture in PCRE regular expressions now works also with
    more than 127 named groups (PR#18588).
  * Datetime functions are now robust against long jumps when dealing
    with internal time zone changes.  This avoids confusing warnings
    about an invalid time zone, previously triggered by turning
    warnings into errors or handling them via tryCatch (PR#17966,
    PR#17780).
  * Datetime functions now restore even an empty TZ environment
    variable after internal time zone changes (PR#17724).  This makes
    results of datetime functions with this (typically unintentional)
    setting more predictable.
  * drop.terms(*) now drops response as by default, keep.response =
    FALSE, fixing PR#18564 thanks to Mikael Jagan.
  * dummy.coef(.) now also works for lm()-models with character
    categorical predictor variables rather than factor ones, fixing
    PR#18635 reported by Jinsong Zhao.
  * formals(f) &lt;- formals(f) now also works for a function w/o
    arguments and atomic _constant_ body(f).
  * Correct as.function(&lt;invalid list&gt;, .)'s error message.
  * removeSource() is yet more thorough in finding and removing
    "srcref" and the other source references from parsed R language
    chunks, fixing PR#18638 thanks to Andrew Simmons.
  * dgeom() is more accurate now, notably when its result is very
    small, fixing PR#18642 thanks to the proposal of Morten Welinder,
    also improving other instances where C level binom_raw(x, n, ..)
    has x == 0 or x== n.
  * warning() with options(warn = 1) has improved output for
    multi-line messages.
  * axis.Date() and axis.POSIXct() now respect the par("lab") setting
    for the number of pretty() intervals.
  * Comparisons for language objects (which are based on deparsing)
    are now more careful about using accurate deparsed results
    (PR#18676).
  * Plain-text help (Rd2txt) now correctly preserves blank lines
    following single-line \dontrun code.
  * &lt;POSIXlt&gt;[*] no longer sets wrong "balanced" attribute, fixing
    PR#18681 thanks to Mikael Jagan.
  * str(&lt;classed-call&gt;) now deparses the call as expected, fixing
    PR#18684, reported by Dave Slager.
  * In Rd examples, code following the closing brace of a \dontrun,
    \dontshow or \donttest tag on the same line is no longer skipped
    when R CMD check runs the examples.
  * as.data.frame(matrix(*, ncol=0)) now gets valid names() and
    colnames(); reported by Davis Vaughan on the R-devel list.
  * Internal Mathlib function stirlerr(n) is now almost fully
    (52-bit) accurate for all n &gt;= ~5.9 and more accurate also in the
    range 1 -- 5.9.  This entails small ("after 12th decimal")
    changes in density functions, e.g., dgamma() in _some_ regions of
    their support.  The fix was partly prompted by Morten Welinder's
    PR#18640.
  * Numbers like 9876543.2 are now considered non-integer by Mathlib
    internal R_nonint(), amending original fix of PR#15734.
  * Rd comment lines no longer cause broken paragraphs in the
    rendered PDF and plain-text help. In code blocks, pure comment
    lines (starting with %) no longer produce an empty line.
  * xtabs(Freq ~ .) now consistently defaults to na.action = na.pass,
    using na.rm = FALSE (added as an argument) when summing over Freq
    (PR#17770).
  * tools::testInstalledPackage() is no longer silent about failures
    from running examples or tests and its return code no longer
    ignores failures from checking vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1718366400">- CHANGES IN R 4.4.1:
  C-LEVEL FACILITIES:
  * Functions R_atof and R_strtod declared in header R_ext/Utils.h
    are now documented in 'Writing R Extensions' and so formally part
    of the API.
  * The non-API entry points Rf_setSVector, Rf_StringFalse,
    Rf_StringTrue and Rf_isBlankString have been added to those
    reported by R CMD check.
  * The new function Rf_allocLang is now available. This provides an
    alternative to the idiom of calling Rf_allocList followed by
    SET_TYPEOF.
  UTILITIES:
  * R CMD check now reports as warnings what gfortran calls 'Fortran
    2018 deleted features', all of which have long been marked as
    'obsolescent' and some of which were deleted in Fortran 2008 or
    earlier.  Fortran compilers are no longer required to support
    these.
  BUG FIXES:
  * as.numeric(), scan(), type.convert() and other places which use
    the internal C function R_strtod now require a _non-empty_ digit
    sequence in a decimal or binary exponent.  This aligns with the
    C/POSIX standard for strtod and with ?NumericConstants.
  * as.data.frame(m, make.names=NA) now works correctly for a matrix
    m with NA's in row names.
  * The error message from &lt;POSIXlt&gt;[["hour"]] and similar now
    mentions *[[, "hour"]], as wished for in PR#17409 and proposed by
    Michael Chirico.
  * qbinom() and potentially qpois(), qnbinom(), no longer sometimes
    fail accurate inversion (of pbinom(), etc), thanks to Christopher
    Chang's report and patch in PR#18711.
  * The internal help server on Windows can again serve requests sent
    in quick succession, fixing a regression in R 4.4.0.
  * debugcall(&lt;S3Generic&gt;()) now also works when a corresponding
    S4-generic version is in the methods cache (PR#18143).
  * Package tools' toTitleCase(ch0) now returns character(0) when ch0
    is of zero length; fixing PR#18724, reported by David Hugh Jones.
  * R CMD check is no longer broken (without a check result and no
    explanation in 00check.log) for a package which declares an
    invalid VignetteBuilder in DESCRIPTION but has no vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1730376000">- CHANGES IN R 4.4.2:
  C-LEVEL FACILITIES:
  * The S-compatibility macros F77_COM and F77_COMDECL defined in
    header R_ext/RS.h are deprecated and will be removed shortly.  We
    could find no record of their use.
  BUG FIXES:
  * Mathlib function lgammacor(x) no longer warns about underflow to
    zero for large x.
  * Text widths and heights were incorrectly reported by the Quartz
    device if the drawing context didn't exist yet (typically when
    drawing off-screen to a window that is yet to appear, see
    PR#18591).
  * The Quartz device could segfault in cases where paths with spaces
    are used in the new glyph drawing API.  Thanks to Tomek
    Gieorgijewski (PR#18758).
  * On macOS in R CRAN builds, it is again possible to read
    little-endian UTF-16 text with a BOM from a connection using
    encoding="UTF-16".  Users building R from source should avoid
    using the system libiconv in macOS 14.1 and later.
  * methods' internal .requirePackage() now re-enables primitive
    method dispatch when needed; thanks to Ivan Krylov for
    demystifying CRAN package check failures on the R-devel mailing
    list.</changelog>
</package>
<package pkgid="b356cc16b2bd9e40ac92d653e94ab85e6a0ded62d9fee309c1bb5a87b6b0de146ee5959c096bdfd9e29aab98b34dcc9410f6e01603e29f7ae21f1fff029cb304" name="R-boot" arch="x86_64">
  <version epoch="0" ver="1.3.31" rel="51.0.2.2.sr20241103"/>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1620302400">- To get in sync with d:l:R:autoCRAN the Matrix package's split
  in -devel was reversed.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339200">- improved spec file according to comments of dimstar in
  https://build.opensuse.org/request/show/892685</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339201">- CHANGES IN R 4.1.0:
  FUTURE DIRECTIONS:
  * It is planned that the 4.1.x series will be the last to support
    32-bit Windows, with production of binary packages for that
    series continuing until early 2023.
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Data set esoph in package datasets now provides the correct
    numbers of controls; previously it had the numbers of cases added
    to these.  (Reported by Alexander Fowler in PR#17964.)
  NEW FEATURES:
  * www.omegahat.net is no longer one of the repositories known by
    default to setRepositories().  (Nowadays it only provides source
    packages and is often unavailable.)
  * Function package_dependencies() (in package tools) can now use
    different dependency types for direct and recursive dependencies.
  * The checking of the size of tarball in R CMD check --as-cran
    &lt;pkg&gt; may be tweaked via the new environment variable
    _R_CHECK_CRAN_INCOMING_TARBALL_THRESHOLD_, as suggested in
    PR#17777 by Jan Gorecki.
  * Using c() to combine a factor with other factors now gives a
    factor, an ordered factor when combining ordered factors with
    identical levels.
  * apply() gains a simplify argument to allow disabling of
    simplification of results.
  * The format() method for class "ftable" gets a new option justify.
    (Suggested by Thomas Soeiro.)
  * New ...names() utility.  (Proposed by Neal Fultz in PR#17705.)
  * type.convert() now warns when its as.is argument is not
    specified, as the help file always said it _should_.  In that
    case, the default is changed to TRUE in line with its change in
    read.table() (related to stringsAsFactor) in R 4.0.0.
  * When printing list arrays, classed objects are now shown _via_
    their format() value if this is a short enough character string,
    or by giving the first elements of their class vector and their
    length.
  * capabilities() gets new entry "Rprof" which is TRUE when R has
    been configured with the equivalent of --enable-R-profiling (as
    it is by default).  (Related to Michael Orlitzky's report
    PR#17836.)
  * str(xS4) now also shows extraneous attributes of an S4 object
    xS4.
  * Rudimentary support for vi-style tags in rtags() and R CMD rtags
    has been added.  (Based on a patch from Neal Fultz in PR#17214.)
  * checkRdContents() is now exported from tools; it and also
    checkDocFiles() have a new option chkInternal allowing to check
    Rd files marked with keyword "internal" as well.  The latter can
    be activated for R CMD check via environment variable
    _R_CHECK_RD_INTERNAL_TOO_.
  * New functions numToBits() and numToInts() extend the raw
    conversion utilities to (double precision) numeric.
  * Functions URLencode() and URLdecode() in package utils now work
    on vectors of URIs.  (Based on patch from Bob Rudis submitted
    with PR#17873.)
  * path.expand() can expand ~user on most Unix-alikes even when
    readline is not in use.  It tries harder to expand ~, for example
    should environment variable HOME be unset.
  * For HTML help (both dynamic and static), Rd file links to help
    pages in external packages are now treated as references to
    topics rather than file names, and fall back to a file link only
    if the topic is not found in the target package. The earlier rule
    which prioritized file names over topics can be restored by
    setting the environment variable _R_HELP_LINKS_TO_TOPICS_ to a
    false value.
  * c() now removes NULL arguments before dispatching to methods,
    thus simplifying the implementation of c() methods, _but_ for
    back compatibility keeps NULL when it is the first argument.
    (From a report and patch proposal by Lionel Henry in PR#17900.)
  * Vectorize()'s result function's environment no longer keeps
    unneeded objects.
  * Function ...elt() now propagates visibility consistently with
    ..n.  (Thanks to Lionel Henry's PR#17905.)
  * capture.output() no longer uses non-standard evaluation to
    evaluate its arguments.  This makes evaluation of functions like
    parent.frame() more consistent.  (Thanks to Lionel Henry's
    PR#17907.)
  * packBits(bits, type="double") now works as inverse of
    numToBits().  (Thanks to Bill Dunlap's proposal in PR#17914.)
  * curlGetHeaders() has two new arguments, timeout to specify the
    timeout for that call (overriding getOption("timeout")) and TLS
    to specify the minimum TLS protocol version to be used for
    https:// URIs (_inter alia_ providing a means to check for sites
    using deprecated TLS versions 1.0 and 1.1).
  * For nls(), an optional constant scaleOffset may be added to the
    denominator of the relative offset convergence test for cases
    where the fit of a model is expected to be exact, thanks to a
    proposal by John Nash.  nls(*, trace=TRUE) now also shows the
    convergence criterion.
  * Numeric differentiation _via_ numericDeriv() gets new optional
    arguments eps and central, the latter for taking central divided
    differences.  The latter can be activated for nls() via
    nls.control(nDcentral = TRUE).
  * nls() now passes the trace and control arguments to getInitial(),
    notably for all self-starting models, so these can also be fit in
    zero-noise situations via a scaleOffset.  For this reason, the
    initial function of a selfStart model must now have ... in its
    argument list.
  * bquote(splice = TRUE) can now splice expression vectors with
    attributes: this makes it possible to splice the result of
    parse(keep.source = TRUE).  (Report and patch provided by Lionel
    Henry in PR#17869.)
  * textConnection() gets an optional name argument.
  * get(), exists(), and get0() now signal an error if the first
    argument has length greater than 1.  Previously additional
    elements were silently ignored.  (Suggested by Antoine Fabri on
    R-devel.)
  * R now provides a shorthand notation for creating functions, e.g.
    \(x) x + 1 is parsed as function(x) x + 1.
  * R now provides a simple native forward pipe syntax |&gt;.  The
    simple form of the forward pipe inserts the left-hand side as the
    first argument in the right-hand side call.  The pipe
    implementation as a syntax transformation was motivated by
    suggestions from Jim Hester and Lionel Henry.
  * all.equal(f, g) for functions now by default also compares their
    environment(.)s, notably via new all.equal method for class
    function.  Comparison of nls() fits, e.g., may now need
    all.equal(m1, m2, check.environment = FALSE).
  * .libPaths() gets a new option include.site, allowing to _not_
    include the site library.  (Thanks to Dario Strbenac's suggestion
    and Gabe Becker's PR#18016.)
  * Lithuanian translations are now available.  (Thanks to Rimantas
    Zakauskas.)
  * names() now works for DOTSXP objects.  On the other hand, in
    R-lang, the R language manual, we now warn against relying on the
    structure or even existence of such dot-dot-dot objects.
  * all.equal() no longer gives an error on DOTSXP objects.
  * capabilities("cairo") now applies only to the file-based devices
    as it is now possible (if very unusual) to build R with Cairo
    support for those but not for X11().
  * There is optional support for tracing the progress of
    loadNamespace() - see its help.
  * (Not Windows.)  l10n_info() reports an additional element, the
    name of the encoding as reported by the OS (which may differ from
    the encoding part (if any) of the result from
    Sys.getlocale("LC_CTYPE").
  * New function gregexec() which generalizes regexec() to find _all_
    disjoint matches and well as all substrings corresponding to
    parenthesized subexpressions of the given regular expression.
    (Contributed by Brodie Gaslam.)
  * New function charClass() in package utils to query the
    wide-character classification functions in use (such as
    iswprint).
  * The names of quantile()'s result no longer depend on the global
    getOption("digits"), but quantile() gets a new optional argument
    digits = 7 instead.
  * grep(), sub(), regexp and variants work considerably faster for
    long factors with few levels.  (Thanks to Michael Chirico's
    PR#18063.)
  * Provide grouping of x11() graphics windows within a window
    manager such as Gnome or Unity; thanks to a patch by Ivan Krylov
    posted to R-devel.
  * The split() method for class data.frame now allows the f argument
    to be specified as a formula.
  * sprintf now warns on arguments unused by the format string.
  * New palettes "Rocket" and "Mako" for hcl.colors() (approximating
    palettes of the same name from the 'viridisLite' package).
    Contributed by Achim Zeileis.
  * The base environment and its namespace are now locked (so one can
    no longer add bindings to these or remove from these).
  * Rterm handling of multi-byte characters has been improved,
    allowing use of such characters when supported by the current
    locale.
  * Rterm now accepts ALT+ +xxxxxxxx sequences to enter Unicode
    characters as hex digits.
  * Environment variable LC_ALL on Windows now takes precedence over
    LC_CTYPE and variables for other supported categories, matching
    the POSIX behaviour.
  * duplicated() and anyDuplicated() are now optimized for integer
    and real vectors that are known to be sorted via the ALTREP
    framework. Contributed by Gabriel Becker via PR#17993.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 14
    and so packages that provide graphics devices should be
    reinstalled.
  * Graphics devices should now specify deviceVersion to indicate
    what version of the graphics engine they support.
  * Graphics devices can now specify deviceClip.  If TRUE, the
    graphics engine will never perform any clipping of output itself.
    The clipping that the graphics engine does perform (for both
    canClip = TRUE and canClip = FALSE) has been improved to avoid
    producing unnecessary artifacts in clipped output.
  * The grid package now allows gpar(fill) to be a linearGradient(),
    a radialGradient(), or a pattern().  The viewport(clip) can now
    also be a grob, which defines a clipping path, and there is a new
    viewport(mask) that can also be a grob, which defines a mask.
    These new features are only supported so far on the Cairo-based
    graphics devices and on the pdf() device.
  * (Not Windows.)  A warning is given when a Cairo-based type is
    specified for a png(), jpeg(), tiff() or bmp() device but Cairo
    is unsupported (so type = "Xlib" is tried instead).
  * grSoftVersion() now reports the versions of FreeType and
    FontConfig if they are used directly (not _via_ Pango), as is
    most commonly done on macOS.
  C-LEVEL FACILITIES:
  * The _standalone_ libRmath math library and R's C API now provide
    log1pexp() again as documented, and gain log1mexp().
  INSTALLATION on a UNIX-ALIKE:
  * configure checks for a program pkgconf if program pkg-config is
    not found.  These are now only looked for on the path (like
    almost all other programs) so if needed specify a full path to
    the command in PKG_CONFIG, for example in file config.site.
  * C99 function iswblank is required - it was last seen missing ca
    2003 so the workaround has been removed.
  * There are new configure options --with-internal-iswxxxxx,
  - -with-internal-towlower and --with-internal-wcwidth which allows
    the system functions for wide-character classification,
    case-switching and width (wcwidth and wcswidth) to be replaced by
    internal ones.  The first has long been used on macOS, AIX (and
    Windows) but this enables it to be unselected there and selected
    for other platforms (it is the new default on Solaris).  The
    second is new in this version of R and is selected by default on
    macOS and Solaris.  The third has long been the default and
    remains so as it contains customizations for East Asian
    languages.
    System versions of these functions are often minimally
    implemented (sometimes only for ASCII characters) and may not
    cover the full range of Unicode points: for example Solaris (and
    Windows) only cover the Basic Multilingual Plane.
  * Cairo installations without X11 are more likely to be detected by
    configure, when the file-based Cairo graphics devices will be
    available but not X11(type = "cairo").
  * There is a new configure option --with-static-cairo which is the
    default on macOS.  This should be used when only static cairo
    (and where relevant, Pango) libraries are available.
  * Cairo-based graphics devices on platforms without Pango but with
    FreeType/FontConfig will make use of the latter for font
    selection.
  LINK-TIME OPTIMIZATION on a UNIX-ALIKE:
  * Configuring with flag --enable-lto=R now also uses LTO when
    installing the recommended packages.
  * R CMD INSTALL and R CMD SHLIB have a new flag --use-LTO to use
    LTO when compiling code, for use with R configured with
  - -enable-lto=R.  For R configured with --enable-lto, they have
    the new flag --no-use-LTO.
    Packages can opt in or out of LTO compilation _via_ a UseLTO
    field in the DESCRIPTION file.  (As usual this can be overridden
    by the command-line flags.)
  BUILDING R on Windows:
  * for GCC &gt;= 8, FC_LEN_T is defined in config.h and hence character
    lengths are passed from C to Fortran in _inter alia_ BLAS and
    LAPACK calls.
  * There is a new text file src/gnuwin32/README.compilation, which
    outlines how C/Fortran code compilation is organized and
    documents new features:
  * R can be built with Link-Time Optimization with a suitable
    compiler - doing so with GCC 9.2 showed several
    inconsistencies which have been corrected.
  * There is support for cross-compiling the C and Fortran code
    in R and standard packages on suitable (Linux) platforms.
    This is mainly intended to allow developers to test later
    versions of compilers - for example using GCC 9.2 or 10.x has
    detected issues that GCC 8.3 in Rtools40 does not.
  * There is experimental support for cross-building R packages
    with C, C++ and/or Fortran code.
  * The R installer can now be optionally built to support a single
    architecture (only 64-bit or only 32-bit).
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++14 where
    available (which it is on all currently checked platforms): if
    not (as before) C++11 is used if available otherwise C++ is not
    supported.
    Packages which specify C++11 will still be installed using C++11.
    C++14 compilers may give deprecation warnings, most often for
    std::random_shuffle (deprecated in C++14 and removed in C++17).
    Either specify C++11 (see 'Writing R Extensions') or modernize
    the code and if needed specify C++14.  The latter has been
    supported since R 3.4.0 so the package's DESCRIPTION would need
    to include something like
    Depends: R (&gt;= 3.4)
  PACKAGE INSTALLATION on Windows:
  * R CMD INSTALL and R CMD SHLIB make use of their flag --use-LTO
    when the LTO_OPT make macro is set in file etc/${R_ARCH}/Makeconf
    or in a personal/site Makevars file.  (For details see 'Writing R
    Extensions' SS4.5.)
    This provides a valuable check on code consistency.  It does work
    with GCC 8.3 as in Rtools40, but that does not detect everything
    the CRAN checks with current GCC do.
  PACKAGE INSTALLATION on macOS:
  * The default personal library directory on builds with
  - -enable-aqua (including CRAN builds) now differs by CPU type,
    one of
    ~/Library/R/x86_64/x.y/library
    ~/Library/R/arm64/x.y/library
    This uses the CPU type R (and hence the packages) were built for,
    so when a x86_64 build of R is run under Rosetta emulation on an
    arm64 Mac, the first is used.
  UTILITIES:
  * R CMD check can now scan package functions for bogus return
    statements, which were possibly intended as return() calls (wish
    of PR#17180, patch by Sebastian Meyer). This check can be
    activated via the new environment variable
    _R_CHECK_BOGUS_RETURN_, true for --as-cran.
  * R CMD build omits tarballs and binaries of previous builds from
    the top-level package directory.  (PR#17828, patch by Sebastian
    Meyer.)
  * R CMD check now runs sanity checks on the use of LazyData, for
    example that a data directory is present and that
    LazyDataCompression is not specified without LazyData and has a
    documented value.  For packages with large LazyData databases
    without specifying LazyDataCompression, there is a reference to
    the code given in 'Writing R Extensions' SS1.1.6 to test the
    choice of compression (as in all the CRAN packages tested a
    non-default method was preferred).
  * R CMD build removes LazyData and LazyDataCompression fields from
    the DESCRIPTION file of packages without a data directory.
  ENCODING-RELATED CHANGES:
  * The parser now treats \Unnnnnnnn escapes larger than the upper
    limit for Unicode points (\U10FFFF) as an error as they cannot be
    represented by valid UTF-8.
    Where such escapes are used for outputting non-printable
    (including unassigned) characters, 6 hex digits are used (rather
    than 8 with leading zeros).  For clarity, braces are used, for
    example \U{0effff}.
  * The parser now looks for non-ASCII spaces on Solaris (as
    previously on most other OSes).
  * There are warnings (including from the parser) on the use of
    unpaired surrogate Unicode points such as \uD834.  (These cannot
    be converted to valid UTF-8.)
  * Functions nchar(), tolower(), toupper() and chartr() and those
    using regular expressions have more support for inputs with a
    marked Latin-1 encoding.
  * The character-classification functions used (by default) to
    replace the system iswxxxxx functions on Windows, macOS and AIX
    have been updated to Unicode 13.0.0.
    The character-width tables have been updated to include new
    assignments in Unicode 13.0.0.
  * The code for evaluating default (extended) regular expressions
    now uses the same character-classification functions as the rest
    of R (previously they differed on Windows, macOS and AIX).
  * There is a build-time option to replace the system's
    wide-character wctrans C function by tables shipped with R: use
    configure option --with-internal-towlower or (on Windows)
  - DUSE_RI18N_CASE in CFLAGS when building R.  This may be needed
    to allow tolower() and toupper() to work with Unicode characters
    beyond the Basic Multilingual Plane where not supported by system
    functions (e.g. on Solaris where it is the new default).
  * R is more careful when truncating UTF-8 and other multi-byte
    strings that are too long to be printed, passed to the system or
    libraries or placed into an internal buffer.  Truncation will no
    longer produce incomplete multibyte characters.
  DEPRECATED AND DEFUNCT:
  * Function plclust() from the package stats and
    package.dependencies(), pkgDepends(), getDepList(),
    installFoundDepends(), and vignetteDepends() from package tools
    are defunct.
  * Defunct functions checkNEWS() and readNEWS() from package tools
    and CRAN.packages() from utils have been removed.
  * R CMD config CXXCPP is defunct (it was deprecated in R 3.6.2).
  * parallel::detectCores() drops support for Irix (retired in 2013).
  * The LINPACK argument to chol.default(), chol2inv(),
    solve.default() and svd() has been defunct since R 3.1.0.  It was
    silently ignored up to R 4.0.3 but now gives an error.
  * Subsetting/indexing, such as ddd[*] or ddd$x on a DOTSXP
    (dot-dot-dot) object ddd has been disabled; it worked by accident
    only and was undocumented.
  BUG FIXES:
  * Many more C-level allocations (mainly by malloc and strdup) are
    checked for success with suitable alternative actions.
  * Bug fix for replayPlot(); this was turning off graphics engine
    display list recording if a recorded plot was replayed in the
    same session.  The impact of the bug became visible if resize the
    device after replay OR if attempted another savePlot() after
    replay (empty display list means empty screen on resize or empty
    saved plot).
  * R CMD check etc now warn when a package exports non-existing S4
    classes or methods, also in case of no "methods" presence.
    (Reported by Alex Bertram; reproducible example and patch by
    Sebastian Meyer in PR#16662.)
  * boxplot() now also accepts calls for labels such as ylab, the
    same as plot().  (Reported by Marius Hofert.)
  * The help page for xtabs() now correctly states that addNA is
    setting na.action = na.pass among others.  (Reported as PR#17770
    by Thomas Soeiro.)
  * The R CMD check &lt;pkg&gt; gives a longer and more comprehensible
    message when DESCRIPTION misses dependencies, e.g., in Imports:.
    (Thanks to the contributors of PR#17179.)
  * update.default() now calls the generic update() on the formula to
    work correctly for models with extended formulas.  (As reported
    and suggested by Neal Fultz in PR#17865.)
  * The horizontal position of leaves in a dendrogram is now correct
    also with center = FALSE.  (PR#14938, patch from Sebastian
    Meyer.)
  * all.equal.POSIXt() no longer warns about and subsequently ignores
    inconsistent "tzone" attributes, but describes the difference in
    its return value (PR#17277).  This check can be disabled _via_
    the new argument check.tzone = FALSE as suggested by Sebastian
    Meyer.
  * as.POSIXct() now populates the "tzone" attribute from its tz
    argument when x is a logical vector consisting entirely of NA
    values.
  * x[[2^31]] &lt;- v now works.  (Thanks to the report and patch by
    Suharto Anggono in PR#17330.)
  * In log-scale graphics, axis() ticks and label positions are now
    computed more carefully and symmetrically in their range,
    typically providing _more_ ticks, fulfilling wishes in PR#17936.
    The change really corresponds to an improved axisTicks() (package
    grDevices), potentially influencing grid and lattice, for
    example.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now correct to at
    least five digits where it was catastrophically wrong,
    previously.
  * sum(df) and similar "Summary"- and "Math"-group member functions
    now work for data frames df with logical columns, notably also of
    zero rows.  (Reported to R-devel by Martin "b706".)
  * unsplit() had trouble with tibbles due to unsound use of rep(NA,
    len)-indexing, which should use NA_integer_ (Reported to R-devel
    by Mario Annau.)
  * pnorm(x, log.p = TRUE) underflows to -Inf slightly later.
  * show(&lt;hidden S4 generic&gt;) prints better and without quotes for
    non-hidden S4 generics.
  * read.table() and relatives treated an "NA" column name as missing
    when check.names = FALSE PR#18007.
  * Parsing strings containing UTF-16 surrogate pairs such as
    "\uD834\uDD1E" works better on some (uncommon) platforms.
    sprintf("%X", utf8ToInt("\uD834\uDD1E")) should now give "1D11E"
    on all platforms.
  * identical(x,y) is no longer true for differing DOTSXP objects,
    fixing PR#18032.
  * str() now works correctly for DOTSXP and related exotics, even
    when these are doomed.
    Additionally, it no longer fails for lists with a class and
    "irregular" method definitions such that e.g. lapply(*) will
    necessarily fail, as currently for different igraph objects.
  * Too long lines in environment files (e.g. Renviron) no longer
    crash R. This limit has been increased to 100,000 bytes.
    (PR#18001.)
  * There is a further workaround for FreeType giving incorrect
    italic font faces with cairo-based graphics devices on macOS.
  * add_datalist(*, force = TRUE) (from package tools) now actually
    updates an existing data/datalist file for new content.  (Thanks
    to a report and patch by Sebastian Meyer in PR#18048.)
  * cut.Date() and cut.POSIXt() could produce an empty last interval
    for breaks = "months" or breaks = "years".  (Reported as PR#18053
    by Christopher Carbone.)
  * Detection of the encoding of 'regular' macOS locales such as
    en_US (which is UTF-8) had been broken by a macOS change:
    fortunately these are now rarely used with en_US.UTF-8 being
    preferred.
  * sub() and gsub(pattern, repl, x, *) now keep attributes of x such
    as names() also when pattern is NA (PR#18079).
  * Time differences ("difftime" objects) get a replacement and a
    rep() method to keep "units" consistent.  (Thanks to a report and
    patch by Nicolas Bennett in PR#18066.)
  * The \RdOpts macro, setting defaults for \Sexpr options in an Rd
    file, had been ineffective since R 2.12.0: it now works again.
    (Thanks to a report and patch by Sebastian Meyer in PR#18073.)
  * mclapply and pvec no longer accidentally terminate parallel
    processes started before by mcparallel or related calls in
    package parallel (PR#18078).
  * grep and other functions for evaluating (extended) regular
    expressions handle in Unicode also strings not explicitly flagged
    UTF-8, but flagged native when running in UTF-8 locale.
  * Fixed a crash in fifo implementation on Windows (PR#18031).
  * Binary mode in fifo on Windows is now properly detected from
    argument open (PR#15600, PR#18031).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1622808000">- The line %{__install} -m 755 -d %{_infodir}
  no longer works in TW or Factory.
  But without that line it works everywhere. So this instruction
  was commented out of the spec file.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1628596800">- CHANGES IN R 4.1.1:
  NEW FEATURES:
  * require(pkg, quietly = TRUE) is quieter and in particular does
    not warn if the package is not found.
  DEPRECATED AND DEFUNCT:
  * Use of ftp:// URIs should be regarded as deprecated, with
    on-going support confined to method = "libcurl" and not routinely
    tested.  (Nowadays no major browser supports them.)
  * The non-default method = "internal" is deprecated for http:// and
    ftp:// URIs for both download.file and url.
  * On Windows, method = "wininet" is deprecated for http://,
    https:// and ftp:// URIs for both download.file and url.  (A
    warning is only given for ftp://.)
    For ftp:// URIs the default method is now "libcurl" if available
    (which it is on CRAN builds).
    method = "wininet" remains the default for http:// and https://
    URIs but if libcurl is available, using method = "libcurl" is
    preferred.
  INSTALLATION:
  * make check now works also without a LaTeX installation.  (Thanks
    to Sebastian Meyer's PR#18103.)
  BUG FIXES:
  * make check-devel works again in an R build configured with
  - -without-recommended-packages.
  * qnbinom(p, size, mu) for large size/mu is correct now in a range
    of cases (PR#18095); similarly for the (size, prob)
    parametrization of the negative binomial.  Also qpois() and
    qbinom() are better and or faster for extreme cases.  The
    underlying C code has been modularized and is common to all four
    cases of discrete distributions.
  * gap.axis is now part of the axis() arguments which are passed
    from bxp(), and hence boxplot().  (Thanks to Martin Smith's
    report and suggestions in PR#18109.)
  * .First and .Last can again be set from the site profile.
  * seq.int(from, to, *) and seq.default(..) now work better in large
    range cases where from-to is infinite where the two boundaries
    are finite.
  * all.equal(x,y) now returns TRUE correctly also when several
    entries of abs(x) and abs(y) are close to .Machine$double.xmax,
    the largest finite numeric.
  * model.frame() now clears the object bit when removing the class
    attribute of a value via na.action (PR#18100).
  * charClass() now works with multi-character strings on Windows
    (PR#18104, fixed by Bill Dunlap).
  * encodeString() on Solaris now works again in Latin-1 encoding on
    characters represented differently in UTF-8.  Support for
    surrogate pairs on Solaris has been improved.
  * file.show() on Windows now works with non-ASCII path names
    representable in the current native encoding (PR#18132).
  * Embedded R on Windows can now find R home directory via the
    registry even when installed only for the current user
    (PR#18135).
  * pretty(x) with finite x now returns finite values also in the
    case where the extreme x values are close in size to the maximal
    representable number .Machine$double.xmax.
    Also, it's been tweaked for very small ranges and when a boundary
    is close (or equal) to zero; e.g., pretty(c(0,1e-317)) no longer
    has negative numbers, currently still warning about a very small
    range, and pretty(2^-(1024 - 2^-1/(c(24,10)))) is more accurate.
  * The error message for not finding vignette files when weaving has
    correct file sizes now. (Thanks to Sebastian Meyer's PR#18154.)
  * dnbinom(20, &lt;large&gt;, 1) now correctly gives 0, and similar cases
    are more accurate with underflow precaution.  (Reported by Francisco Vera Alcivar in PR#18072.)</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635163200">- repaired https://bugzilla.suse.com/show_bug.cgi?id=1191380
  (rpmacros now go to rpmmacrodir)
- minor clean-ups in spec file</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635768000">- CHANGES IN R 4.1.2:
  C-LEVEL FACILITIES:
  * The workaround in headers R.h and Rmath.h (using namespace std;)
    for the Oracle Developer Studio compiler is no longer needed now
    C++11 is required so has been removed.  A couple more usages of
    log() (which should have been std::log()) with an int argument
    are reported on Solaris.
  * The undocumented limit of 4095 bytes on messages from the
    S-compatibility macros PROBLEM and MESSAGE is now documented and
    longer messages will be silently truncated rather than
    potentially causing segfaults.
  * If the R_NO_SEGV_HANDLER environment variable is non-empty, the
    signal handler for SEGV/ILL/BUS signals (which offers recovery
    user interface) is not set. This allows more reliable debugging
    of crashes that involve the console.
  DEPRECATED AND DEFUNCT:
  * The legacy S-compatibility macros PROBLEM, MESSAGE, ERROR, WARN,
    WARNING, RECOVER, ... are deprecated and will be hidden in R
    4.2.0. R's native interface of Rf_error and Rf_warning has long
    been preferred.
  BUG FIXES:
  * .mapply(F, dots, .) no longer segfaults when dots is not a list
    and uses match.fun(F) as always documented; reported by Andrew
    Simmons in PR#18164.
  * hist(&lt;Date&gt;, ...) and hist(&lt;POSIXt&gt;, ...)  no longer pass
    arguments for rect() (such as col and density) to axis().
    (Thanks to Sebastian Meyer's PR#18171.)
  * \Sexpr{ch} now preserves Encoding(ch). (Thanks to report and
    patch by Jeroen Ooms in PR#18152.)
  * Setting the RNG to "Marsaglia-Multicarry" e.g., by RNGkind(), now
    warns in more places, thanks to Andr'e Gillibert's report and
    patch in PR#18168.
  * gray(numeric(), alpha=1/2) no longer segfaults, fixing PR#18183,
    reported by Till Krenz.
  * Fixed dnbinom(x, size=&lt;very_small&gt;, .., log=TRUE) regression,
    reported by Martin Morgan.
  * as.Date.POSIXlt(x) now keeps names(x), thanks to Davis Vaughan's
    report and patch in PR#18188.
  * model.response() now strips an "AsIs" class typically, thanks to
    Duncan Murdoch's report and other discussants in PR#18190.
  * try() is considerably faster in case of an error and long call,
    as e.g., from some do.call().  Thanks to Alexander Kaever's
    suggestion posted to R-devel.
  * qqline(y = &lt;object&gt;) such as y=I(.), now works, see also
    PR#18190.
  * Non-integer mgp par() settings are now handled correctly in
    axis() and mtext(), thanks to Mikael Jagan and Duncan Murdoch's
    report and suggestion in PR#18194.
  * formatC(x) returns length zero character() now, rather than ""
    when x is of length zero, as documented, thanks to Davis
    Vaughan's post to R-devel.
  * removeSource(fn) now retains (other) attributes(fn).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1647000000">- CHANGES IN R 4.1.3:
  NEW FEATURES:
  * The default version of Bioconductor has been changed to 3.14.
    (This is used by setRepositories and the menus in GUIs.)
  UTILITIES:
  * R CMD check --as-cran has a workaround for a bug in versions of
    file up to at least 5.41 which mis-identify DBF files last
    changed in 2022 as executables.
  C-LEVEL FACILITIES:
  * The legacy S-compatibility macros SINGLE_* in R_ext/Constants.h
    (included by R.h) are deprecated and will be removed in R 4.2.0.
  BUG FIXES:
  * Initialization of self-starting nls() models with initialization
    functions following the pre-R-4.1.0 API (without the ...
    argument) works again for now, with a deprecation warning.
  * Fixed quoting of ~autodetect~ in Java setting defaults to avoid
    inadvertent user lookup due to leading ~, reported in PR#18231 by
    Harold Gutch.
  * substr(., start, stop) &lt;- v now treats _negative_ stop values
    correctly.  Reported with a patch in PR#18228 by Brodie Gaslam.
  * Subscripting an array x without dimnames by a
    length(dim(x))-column character matrix gave "random" non-sense,
    now an error; reported in PR#18244 by Mikael Jagan.
  * ...names() now matches names(list(...)) closely, fixing PR#18247.
  * all.equal(*, scale = s) now works as intended when length(s) &gt; 1,
    partly thanks to Michael Chirico's PR#18272.
  * print(x) for long vectors x now also works for named atomic
    vectors or lists and prints the correct number when reaching the
    getOption("max.print") limit; partly thanks to a report and
    proposal by Hugh Parsonage to the R-devel list.
  * all.equal(&lt;selfStart&gt;, *) no longer signals a deprecation
    warning.
  * reformulate(*, response=r) gives a helpful error message now when
    length(r) &gt; 1, thanks to Bill Dunlap's PR#18281.
  * Modifying globalCallingHandlers inside withCallingHandlers() now
    works or fails correctly, thanks to Henrik Bengtsson's PR#18257.
  * hist(&lt;Date&gt;, breaks = "days") and hist(&lt;POSIXt&gt;, breaks = "secs")
    no longer fail for inputs of length 1.
  * qbeta(.001, .9, .009) and similar cases now converge correctly
    thanks to Ben Bolker's report in PR#17746.
  * window(x, start, end) no longer wrongly signals "'start' cannot
    be after 'end'", fixing PR#17527 and PR#18291.
  * data() now checks that its (rarely used) list argument is a
    character vector - a couple of packages passed other types and
    gave incorrect results.
  * which() now checks its arr.ind argument is TRUE rather coercing
    to logical and taking the first element - which gave incorrect
    results in package code.
  * model.weights() and model.offset() more carefully extract their
    model components, thanks to Ben Bolker and Tim Taylor's R-devel
    post.
  * list.files(recursive = TRUE) now shows all broken symlinks
    (previously, some of them may have been omitted, PR#18296).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1650628800">- CHANGES IN R 4.2.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * The formula method of aggregate() now matches the generic in
    naming its first argument x (resolving PR#18299 by Thomas
    Soeiro).
    This means that calling aggregate() with a formula as a named
    first argument requires name formula in earlier versions of R and
    name x now, so portable code should not name the argument (code
    in many packages did).
  * Calling &amp;&amp; or || with either argument of length greater than one
    now gives a warning (which it is intended will become an error).
  * Calling if() or while() with a condition of length greater than
    one gives an error rather than a warning.  Consequently,
    environment variable _R_CHECK_LENGTH_1_CONDITION_ no longer has
    any effect.
  * Windows users should consult the WINDOWS section below for some
    profound changes including
  * Support for 32-bit builds has been dropped.
  * UTF-8 locales are used where available.
  * The default locations for the R installation and personal
    library folder have been changed.
    Thanks to Tomas Kalibera for months of work on the Windows port
    for this release.
  NEW FEATURES:
  * matrix(x, n, m) now warns in more cases where length(x) differs
    from n * m, as suggested by Abby Spurdle and Wolfgang Huber in
    Feb 2021 on the R-devel mailing list.
    This warning can be turned into an error by setting environment
    variable _R_CHECK_MATRIX_DATA_ to TRUE: R CMD check --as-cran
    does so unless it is already set.
  * Function file_test() in package utils gains tests for symlinks,
    readability and writability.
  * capabilities("libxml") is now false.
    The description of capabilities("http/ftp") now reflects that it
    refers to the default method, no longer the internal one.
  * simplify2array() gains an except argument for controlling the
    exceptions used by sapply().
  * Environment variables R_LIBS_USER and R_LIBS_SITE are both now
    set to the R system default if unset or empty, and can be set to
    NULL to indicate an empty list of user or site library
    directories.
  * The warning for axis()(-like) calls in cases of relatively small
    ranges (typically in log-scale situations) is slightly improved
    _and_ suppressed from explicit calls to .axisPars() as has always
    been the intention.
  * The contrasts setter function `contrasts&lt;-` gains an explicit
    default how.many = NULL rather than just using missing(how.many).
  * grid.pretty() gains a new optional argument n = 5.
  * There is a new function .pretty() with option bounds as a
    technical-utility version of pretty().  It and pretty() gain a
    new argument f.min with a better than back-compatible default.
  * Function grDevices::axisTicks() and related functions such as
    graphics::axis() work better, notably for the log scale; partly
    because of the pretty() improvements, but also because care is
    taken e.g., when ylim is finite but diff(ylim) is infinite.
  * nclass.FD() gains a digits option.
  * The R Mathlib internal C function bd0() (called indirectly from a
    dozen probability density and distribution functions such as
    dpois(), dbinom(), dgamma(), pgamma() _etc_) has been
    complemented by a more sophisticated and (mostly) more accurate C
    function ebd0(), currently called only by internal dpois_raw()
    improving accuracy for R level dpois() and potentially others
    calling it such as dnbinom(), dgamma() or pgamma().  (Thanks to
    Morten Welinder's PR#15628.)
  * write.ftable() gains sep = " " argument as suggested by Thomas
    Soeiro.
  * The names of the locale categories supported by R's
    Sys.getlocale() and Sys.setlocale() are now provided by variable
    .LC.categories in the base namespace.
  * The Date and POSIXt methods for hist() and the histogram method
    for plot() now also use the new default col = "lightgray" in
    consistency with the corresponding change to hist()'s default for
    R 4.0.0.
  * hist.default() gains new fuzz argument, and the histogram plot
    method no longer uses fractional axis ticks when displaying
    counts ("Frequency").
  * mapply() and hence Map() now also obey the "max-or-0-if-any"
    recycling rule, such that, e.g., Map(`+`, 1:3, 1[0]) is valid
    now.
  * as.character(&lt;obj&gt;) for "hexmode" or "octmode" objects now
    fulfils the important basic rule as.character(x)[j] ===
    as.character(x[j]).
  * The set utility functions, notably intersect() have been tweaked
    to be more consistent and symmetric in their two set arguments,
    also preserving a common mode.
  * substr(ch, start,end) &lt;- new now e.g., preserves names(ch); ditto
    for substring(), thanks to a patch from Brodie Gaslam.
  * plot(&lt;lm&gt;) gains a extend.ylim.f argument, in partial response to
    PR#15285; further PR#17784 is fixed thanks to several
    contributors and a patch by Elin Waring.  The Cook's dist
    contours get customizable via cook.col and cook.lty with a
    different default color and their legend is nicer by default and
    customizable via cook.legendChanges.
  * Attempting to subset an object that is not subsettable now
    signals an error of class notSubsettableError. The
    non-subsettable object is contained in the object field of the
    error condition.
  * Subscript-out-of-bounds errors are now signaled as errors of
    class subscriptOutOfBoundsError.
  * Stack-overflow errors are now signaled as errors inheriting from
    class stackOverflowError. See ?stackOverflowError for more
    details.
  * New partly experimental Sys.setLanguage() utility, solving the
    main problem of PR#18055.
  * gettext() and gettextf() get a new option trim = TRUE which when
    set to false allows translations for strings such as "Execution
    halted\n" typical for C code.
  * An experimental implementation of hash tables is now available.
    See ?hashtab for more details.
  * identical() gains a extptr.as.ref argument for requesting that
    external pointer objects be compared as reference objects.
  * reorder() gets an argument decreasing which it passes to sort()
    for level creation; based on the wish and patch by Thomas Soeiro
    in PR#18243.
  * as.vector() gains a data.frame method which returns a simple
    named list, also clearing a long standing 'FIXME' to enable
    as.vector(&lt;data.frame&gt;, mode="list").  This breaks code relying
    on as.vector(&lt;data.frame&gt;) to return the unchanged data frame.
  * legend() is now vectorized for arguments cex, x.intersp, and
    text.width.  The latter can now also be specified as a vector
    (one element for each column of the legend) or as NA for
    computing a proper column wise maximum value of strwidth(legend).
    The argument y.intersp can be specified as a vector with one
    entry for each row of the legend.
    legend() also gains new arguments title.cex and title.font.
    Thanks to Swetlana Herbrandt.
  * Deparsing no longer remaps attribute names dim, dimnames, levels,
    names and tsp to historical S-compatible names (which structure()
    maps back).
  * sample() and sample.int() have additional sanity checks on their
    size and n arguments.
    all.equal.numeric() gains a sanity check on its tolerance
    argument - calling all.equal(a, b, c) for three numeric vectors
    is a surprisingly common error.
    mean(na.rm =), rank(na.last =), barplot(legend.text =),
    boxplot(), contour(drawlabels =), polygon(border =) and
    methods::is(class2 =) have more robust sanity checks on their
    arguments.
    R CMD Rd2pdf (used by R CMD check) has a more robust sanity check
    on the format of \alias{} commands.
  * psigamma(x, deriv) for negative x now also works for deriv = 4
    and 5; their underlying C level dpsifn() is documented in
    'Writing R Extensions'.
  * The HTML help system now uses HTML5 (wish of PR#18149).
  * ks.test() now provides exact p-values also with ties and MC
    p-values in the two-sample (Smirnov) case.  By Torsten Hothorn.
  * ks.test() gains a formula interface, with y ~ 1 for the
    one-sample (Kolmogorov) test and y ~ group for the two-sample
    (Smirnov) test.  Contributed by Torsten Hothorn.
  * The return value from ks.test() now has class c("ks.test",
    "htest") - packages using try() need to take care to use
    inherits() and not == on the class.
  * New functions psmirnov(), qsmirnov() and rsmirnov() in package
    stats implementing the asymptotic and exact distributions of the
    two-sample Smirnov statistic.
  * iconv() now allows sub = "c99" to use C99-style escapes for UTF-8
    inputs which cannot be converted to encoding to.
  * In a forward pipe |&gt; expression it is now possible to use a named
    argument with the placeholder _ in the rhs call to specify where
    the lhs is to be inserted.  The placeholder can only appear once
    on the rhs.
  * The included LAPACK sources have been updated to version 3.10.0,
    except for the four Fortran 77 routines which 3.10.0 has
    re-implemented in Fortran 90 (where the older versions have been
    retained as the R build process does not support Fortran 90).
  * path.expand() and most other uses of tilde expansion now warn if
    a path would be too long if expanded.  (An exception is
    file.exists(), which silently returns false.)
  * trunc(&lt;Date&gt;, *) now supports units = "months" or "years" for
    consistency with the POSIXt method, thanks to Dirk Eddelbuettel's
    proposal in PR#18099.
  * list2DF() now checks that its arguments are of the same length,
    rather than use recycling.
  * The HTML help system has several new features: LaTeX-like math
    can be typeset using either KaTeX or MathJax, usage and example
    code is highlighted using Prism, and for dynamic help the output
    of examples and demos can be shown within the browser if the
    knitr package is installed. These features can be disabled by
    setting the environment variable _R_HELP_ENABLE_ENHANCED_HTML_ to
    a false value.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 15
    and so packages that provide graphics devices should be
    reinstalled.
  * The grid package now allows the user to specify a "vector" of
    pattern fills.  The fill argument to gpar() accepts a list of
    gradients and/or patterns and the functions linearGradient(),
    radialGradient(), and pattern() have a new group argument.
    Points grobs (data symbols) can now also have a pattern fill.
    The grobCoords() function now returns a more informative and
    complex result.
  * The grid package has new functions for drawing isolated groups:
    grid.group(), grid.define(), and grid.use().  These functions add
    compositing operators and affine transformations to R's graphics
    capabilities.
    The grid package also has new functions for stroking and filling
    paths: grid.stroke(), grid.fill(), and grid.fillStroke().
    A new function as.path() allows the user to specify the fill rule
    for a path that is to be used for clipping, stroking, or filling;
    available options are "winding" and "evenodd".  A new function
    as.mask() allows the user to specify the type of a mask;
    available options are "alpha" and "luminance".
    These new features are only supported so far (at most) on the
    Cairo-based graphics devices and on the pdf() device.
  * dev.capabilities() reports on device support for the new
    features.
  * par() now warns about unnamed non-character arguments to prevent
    misuse such as {usr &lt;- par("usr"); par(usr)}.
  INSTALLATION:
  * Facilities for accessing ftp:// sites are no longer tested
    (except _pro tem_ for curlGetHeaders()) as modern browsers have
    removed support.
  * R can now be built with DEFS = -DSTRICT_R_HEADERS .
  PACKAGE INSTALLATION:
  * R CMD INSTALL no longer tangles vignettes. This completes an R
    CMD build change in R 3.0.0 and affects packages built before R
    3.0.2. Such packages should be re-made with R CMD build to have
    the tangled R code of vignettes shipped with the tarball.
  * USE_FC_LEN_T will become the default: this uses the correct
    prototypes for Fortran BLAS/LAPACK routines called from C/C++,
    and requires adjustment of most such calls - see 'Writing R
    Extensions' SS6.6.2.  (This has been supported since R 3.6.2.)
  * Package installation speed for packages installed with
    keep.source has been improved. This resolve the issue reported by
    Ofek Shilon in PR#18236.
  UTILITIES:
  * R CMD check can optionally report files/directories left behind
    in home, /tmp (even though TMPDIR is set) and other directories.
    See the "R Internals" manual for details.
  * R CMD check now reports byte-compilation errors during
    installation.  These are not usually fatal but may result in
    parts of the package not being byte-compiled.
  * _R_CHECK_DEPENDS_ONLY_ can be applied selectively to examples,
    tests and/or vignettes in R CMD check: see the "R Internals"
    manual.
  * _R_CHECK_SRC_MINUS_W_IMPLICIT_ now defaults to true: recent
    versions of Apple clang on macOS have made implicit function
    declarations in C into a compilation error.
  * R CMD check --as-cran makes use of the environment variable
    AUTORECONF.  See the "R Internals" manual SS8 for further details.
  * R CMD check --use-valgrind also uses valgrind when re-building
    vignettes as some non-Sweave vignettes unhelpfully comment out
    all their code when R CMD check runs vignettes.
  * Errors in re-building vignettes (unless there are LaTeX errors)
    are reported by R CMD check as ERROR rather than WARNING when
    running vignettes has been skipped (as it frequently is in CRAN
    checks and by --as-cran).
  * R CMD Rd2pdf gains a --quiet option that is used by R CMD build
    when building the PDF package manual.
  * R CMD Rd2pdf now always runs LaTeX in batch mode, consistent with
    Texinfo &gt;= 6.7. The --batch option is ignored.
  * R CMD build and R CMD check now include the Rd file name and line
    numbers in the error message of an \Sexpr evaluation failure.
  * For packages using the \doi Rd macro (now an install-time \Sexpr)
    but no other dynamic Rd content, R CMD build now produces a
    smaller tarball and is considerably faster - skipping temporary
    package installation.
  C-LEVEL FACILITIES:
  * The non-API header R_ext/R-ftp-http.h is no longer provided, as
    the entry points it covered are now all defunct.
  * A number of non-API declarations and macro definitions have been
    moved from the installed header Rinternals.h to the internal
    header Defn.h. Packages that only use entry points and
    definitions documented to be part of the API as specified in
    'Writing R Extensions' SS6 should not be affected.
  * The macro USE_RINTERNALS no longer has any effect when compiling
    package code.  Packages which also use R_NO_REMAP will need to
    ensure that the remapped names are used for calls to API
    functions that were formerly also made available as macros.
  * The deprecated legacy S-compatibility macros PROBLEM, MESSAGE,
    ERROR, WARN, WARNING, RECOVER, ... are no longer defined in
    R_exts/RS.h (included by R.h).  Replace these by calls to
    Rf_error and Rf_warning (defined in header R_ext/Error.h included
    by R.h).
    Header R_ext/RS.h no longer includes R_ext/Error.h.
  * Header R_ext/Constants.h (included by R.h) when included from C++
    now includes the C++ header cfloat rather than the C header
    float.h (now possible as C++11 is required).
  * The legacy S-compatibility macros DOUBLE_* in R_ext/Constants.h
    (included by R.h) are deprecated.
  * The deprecated S-compatibility macros SINGLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * R_Calloc, R_Free and R_Realloc are preferred to their unprefixed
    forms and error messages now use the prefix. These forms were
    introduced in R 3.4.0 and are available even when
    STRICT_R_HEADERS is defined.
  * rmultinom has been documented in 'Writing R Extensions' SS6 so is
    now part of the R API.
  * Similarly, Rtanpi, called from R level tanpi() is now part of the
    R API.
  * The long-deprecated, undocumented and non-API entry point call_R
    is no longer declared in R_ext/RS.h (included by R.h).
  * The header S.h which has been unsupported since Jan 2016 has been
    removed.  Use R.h instead.
  DEPRECATED AND DEFUNCT:
  * The (non-default and deprecated) method = "internal" for
    download.file() and url() no longer supports http:// nor ftp://
    URIs.  (It is used only for file:// URIs.)
    On Windows, download.file(method = "wininet") no longer supports
    ftp:// URIs.  (It is no longer the default method, which is
    "libcurl" and does.)
    On Windows, the deprecated method = "wininet" now gives a warning
    for http:// and https:// URIs for both download.file() and url().
    (It is no longer the default method.)
  * On Windows, the command-line option --max-mem-size and
    environment variable R_MAX_MEM_SIZE are defunct.  The memory
    allocation limit was important for 32-bit builds, but these are
    no longer supported.
  * default.stringsAsFactors() is now formally deprecated, where that
    was only mentioned on its regular help page, previously.  So it
    now gives a warning if called.
  * unix.time() is defunct now; it had been deprecated since R 3.4.0.
  BUG FIXES:
  * Setting digits = 0 in format(), print.default() (and hence
    typically print()) or options() is again invalid.  Its behaviour
    was platform-dependent, and it is unclear what "zero significant
    digits" should mean (PR#18098).
  * Messages from C code in the cairo section of package grDevices
    are now also offered for translation, thanks to Michael Chirico's
    PR#18123.
  * mean(x) with finite x now is finite also without "long.double"
    capability.
  * R CMD Rd2pdf no longer leaves an empty build directory behind
    when it aborts due to an already existing output file.  (Thanks
    to Sebastian Meyer's PR#18141.)
  * density(x, weights = w, na.rm = TRUE) when anyNA(x) is true, now
    removes weights "in parallel" to x, fixing PR#18151, reported by
    Matthias Gondan.  Additionally, it gets a subdensity option.
  * Conversion of \Sexpr[]{&lt;expR&gt;} to LaTeX or HTML no longer
    produces long blocks of empty lines when &lt;expR&gt; itself contains
    several lines all producing empty output.  Thanks to a report and
    patch by Ivan Krylov posted to R-devel.
  * R CMD build no longer fails if a package vignette uses child
    documents and inst/doc exists.  (Thanks to Sebastian Meyer's
    PR#18156.)
  * When an R documentation ('help' source) file man/foo.Rd in a
    package has \donttest{..} examples with a syntax error, it is now
    signalled as ERROR and with correct line numbers relating to the
  * -Ex.R file, thanks to Duncan Murdoch and Sebastian Meyer's
    reports and patch proposals in PR#17501.
  * Improved determination of the correct translation domain in
    non-base packages, addressing the combination of PR#18092 and
    PR#17998 (#c6) with reports and _augmented_ patch #2904 by
    Suharto Anggono.
    Note that "R-base" is no longer the default domain e.g., for
    top-level calls to gettext(); rather translation needs explicit
    domain = * specification in such cases.
  * identical(attrib.as.set=FALSE) now works correctly with data
    frames with default row names (Thanks to Charlie Gao's PR#18179).
  * txtProgressBar() now enforces a non-zero width for argument char,
    without which no progress can be visible.
  * dimnames(table(d)) is more consistent in the case where d is a
    list with a single component, thanks to Thomas Soeiro's report to
    R-devel.
    Further, table(d1, d2) now gives an error when d1 and d2 are data
    frames as suggested by Thomas in PR#18224.
  * Fix for drawing semi-transparent lines and fills on the native
    Windows graphics device (PR#18219 and PR#16694).  Thanks to Nick
    Ray for helpful diagnosis on Bugzilla.
  * The deparser now wraps sub-expressions such as if(A) ..  with
    parentheses when needed; thanks to Duncan Murdoch's PR#18232 and
    Lionel Henry's patches there.
  * remove.packages() no longer tries to uninstall Priority: base
    packages, thanks to a report and suggestions by Colin Fay in
    PR#18227.
  * win.metafile() now has xpinch and ypinch arguments so that the
    user can override Windows' (potentially wrong) guess at device
    dimensions.
  * x[i] and x[[i]] for non-integer i should now behave in all cases
    as always documented: the index used is equivalent to
    as.integer(i) unless that would overflow where trunc(i) is used
    instead; thanks to Suharto Anggono's report and patch proposals
    in PR#17977.
  * asOneSidedFormula() now associates the resulting formula with the
    global environment rather than the evaluation environment created
    for the call.
  * &lt;bibentry&gt;$name now matches the field name case-insensitively,
    consistent with bibentry() creation and the replacement method.
  * cbind() failed to detect some length mismatches with a mixture of
    time-series and non-time-series inputs.
  * The default LaTeX style file Sweave.sty used by the RweaveLatex
    driver no longer loads the obsolete ae package; thanks to a
    report by Thomas Soeiro in PR#18271.  Furthermore, it now skips
    \usepackage[T1]{fontenc} for engines other than pdfTeX (if
    detected) or if the new [nofontenc] option is used.
  * smooth.spline() now stores its logical cv argument more safely,
    fixing a rare bug when printing, and also stores n.
  * smooth.spline(x,y,*) now computes the cv.crit statistic
    correctly, also when is.unsorted(x), fixing PR#18294.
  * The data.frame method of rbind() now warns when binding
    not-wholly-recycling vectors, by analogy to the default method
    (for matrices).
  * setAs() finds the correct class for name to when multiple
    packages define a class with that name. Thanks to Gabor Csardi
    for the report.
  * Fix for detaching a package when two classes of the same name are
    present in method signatures for the same generic. Thanks to
    Gabor Csardi for the report.
  * match.arg("", c("", "a", "B")) gives a better error message, in
    part from PR#17959, thanks to Elin Waring.
  * R CMD Sweave --clean no longer removes pre-existing files or
    subdirectories (PR#18242).
  * The quartz() device no longer splits polylines into subpaths.
    That has caused narrowly-spaced lines with many points to always
    look solid even when dashed line type was used due to dash phase
    restarts.
  * Deparsing constructs such as quote(1 + `!`(2) + 3) works again as
    before R 3.5.0, thanks to the report and patch in PR#18284 by
    Suharto Anggono.
  * as.list(f) for a factor f now keeps names(f), fixing PR#18309.
  * qbeta(.001, .9, .009) and analogous qf() calls now return a
    correct value instead of NaN or wrongly 1, all with a warning;
    thanks to the report by Ludger Goeminne in PR#18302.
  * plot.lm() failed to produce the plot of residuals vs.  factor
    levels (i.e., which=5 when leverages are constant) for models
    with character predictors (PR#17840).
  * interaction.plot(..., xtick = TRUE) misplaced the x-axis line
    (PR#18305).
  * Not strictly fixing a bug, format()ing and print()ing of
    non-finite Date and POSIXt values NaN and +/-Inf no longer show
    as NA but the respective string, e.g., Inf, for consistency with
    numeric vector's behaviour, fulfilling the wish of PR#18308.
  * R CMD check no longer runs test scripts generated from
    corresponding .Rin files twice and now signals an ERROR if
    processing an .Rin script fails.
  * tools::Rd2txt() used for plain-text help pages now renders \hrefs
    (if tools::Rd2txt_options(showURLs = TRUE)) and \urls with
    percent-encoding and standards-compliant delimiting style (angle
    brackets and no URL: prefix).  \email is now rendered with a
    mailto: prefix.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1655985600">- CHANGES IN R 4.2.1:
  NEW FEATURES:
  * New function utils::findCRANmirror() to find out if a CRAN mirror
    has been selected, otherwise fallback to the main site.  This
    behaves in the same way as tools::CRAN_package_db() and is
    intended for packages wishing to access CRAN for purposes other
    than installing packages.
    The need for this was shown by a day when the main CRAN website
    was offline and a dozen or so packages which had its URL
    hardcoded failed their checks.
  INSTALLATION on a UNIX-ALIKE:
  * The libraries searched for by --with-blas (without a value) now
    include BLIS (after OpenBLAS but before ATLAS).  And on macOS,
    the Accelerate framework (after ATLAS).  (This is patterned after
    the AX_BLAS macro from the Autoconf Archive.)
  * The included LAPACK sources have been updated to 3.10.1.
  UTILITIES:
  * The (full path to) the command tidy to be used for HTML
    validation can be set by environment variable R_TIDYCMD.
  * Setting environment variable _R_CHECK_RD_VALIDATE_RD2HTML_ to a
    false value will override R CMD check --as-cran and turn off HTML
    validation.  This provides a way to circumvent a problematic
    tidy.
    The 2006 version that ships with macOS is always skipped.
  C-LEVEL FACILITIES:
  * The undocumented legacy declarations of Sint, Sfloat, SINT_MAX
    and SINT_MIN in header R.h are deprecated.
  BUG FIXES:
  * fisher.test(d) no longer segfaults for "large" d; fixing PR#18336
    by preventing/detecting an integer overflow reliably.
  * tar(., files=*) now produces correctly the warning about invalid
    uid or gid of files, fixing PR#18344, reported by Martin Morgan.
  * tk_choose.files() with multi = FALSE misbehaved on paths
    containing spaces (PR#18334) (regression introduced in R 4.0.0).
  * sort(x, partial = ind, *) now works correctly notably for the
    non-default na.last = FALSE or TRUE, fixing PR#18335 reported by
    James Edwards.
  * Environment variable _R_CHECK_XREFS_REPOSITORIES_ is only used
    for checking .Rd cross-references in R CMD check (as documented)
    and not for other uses looking for a CRAN mirror.
  * The search for a CRAN mirror when checking packages now uses
    getOption("repos") if that specifies a CRAN mirror, even when it
    does not also specify all three Bioconductor repositories (as was
    previously required).
  * The HTML code generated by tools::Rd2HTML() has been improved to
    pass tidy 5.8.0.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1667217600">- CHANGES IN R 4.2.2:
  NEW FEATURES:
  * tools::Rdiff(useDiff = TRUE) checks for the presence of an
    external diff command and switches to useDiff = FALSE if none is
    found.  This allows R CMD Rdiff to always work.
  * On Windows, environment variable R_LIBCURL_SSL_REVOKE_BEST_EFFORT
    can be used to switch to only 'best-effort' SSL certificate
    revocation checks with the default "libcurl" download method.
    This reduces security, but may be needed for downloads to work
    with MITM proxies (PR#18379).
  * (macOS) The run-time check for libraries from XQuartz for X11 and
    Tcl/Tk no longer uses otool from the Apple Developer Tools
    (PR#18400).
  * The LaTeX style for producing the PDF manuals, Rd.sty, now loads
    the standard amsmath, amsfonts and amssymb packages for greater
    coverage of math commands in the Rd \eqn and \deqn macros.  The
    \mathscr LaTeX command is also provided (via the mathrsfs
    package, if available, or the amsfonts bundle otherwise),
    fulfilling the wish of PR#18398.
  * (Windows) The default format of readClipboard() and
    writeClipboard() has been changed to 13 (CF_UNICODETEXT).
  INSTALLATION on a UNIX-ALIKE:
  * The PDF manuals (if built) can be compacted by the new target
    make compact-pdf (at the top level or in directory doc/manual).
  * There is now configure support for LLVM clang 15 on Linux, which
    defaults to position-independent (PIE) executables whereas
    gfortran does not.
  * Many small changes to ease compilation (and suppress warnings)
    with LLVM clang 15.
  BUG FIXES:
  * Rscript -e would fail if stdin were closed (Reported by Henrik
    Bengtsson.)
  * qt(*, log.p=TRUE) in outer tails no longer produces NaN in its
    final steps, thus fixing PR#18360.
  * tools::Rd2latex() now escapes hashes and ampersands when writing
    URLs, fixing LaTeX errors with such URLs in \tabular.
  * When isGeneric(f, fdef=*) is used with mismatching names, the
    warning is better understandable; reported (with fix) in PR#18370
    by Gabe Becker.
  * poly(x, n) now works again (and is now documented) when x is a
    "Date" or "POSIXct" object, or of another class while fulfilling
    mode(x) == "numeric".  This also enables poly(x, *, raw=TRUE) for
    such variables.  Reported by Michael Chirico to R-devel.
  * write.table(), write.csv() and write.csv2() restore their
    numerical precision (internal equivalent of digits = 15) after an
    interrupt (PR#18384).
  * One can now read also byte FF from a clipboard connection
    (PR#18385).
  * source("") and source(character()) now give more helpful error
    messages.
  * R CMD check --as-cran set _R_CHECK_TIMINGS_ too late to have the
    intended effect.
  * as.POSIXlt(x) now also works with very large dates x, fixing
    PR#18401 reported by Hannes M"uhleisen.
  * Files can now be extracted even from very large zip archives
    (PR#18390, thanks to Martin Jakt).
  * Non-finite objects of class "POSIXlt" are now correctly coerced
    to classes "Date" and "POSIXct"; following up on the extension to
    format() them correctly.
  * Added methods for is.finite(), is.infinite() and is.nan() for
    "POSIXlt" date-time objects.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1678881600">- CHANGES IN R 4.2.3:
  C-LEVEL FACILITIES:
  * The definition of DL_FUNC in R_ext/Rdynload.h has been changed to
    be fully C-compliant.  This means that functions loaded _via_ for
    example R_GetCCallable need to be cast to an appropriate type if
    they have any arguments.
  * .Machine has a new element sizeof.time_t to identify old systems
    with a 32-bit type and hence a limited range of date-times (and
    limited support for dates millions of years from present).
  PACKAGE INSTALLATION:
  * (Windows) The default C++ standard had accidentally been left at
    C++11 when it was changed to C++14 on Unix.
  BUG FIXES:
  * As "POSIXlt" objects may be "partially filled" and their list
    components meant to be recycled, length() now is the length of
    the longest component.
  * as.POSIXlt.Date() could underflow for dates in the far past (more
    than half a million years BCE).
  * as.Date.POSIXlt(x) would return "1970-01-01" instead of NA in R
    4.2.2, e.g., for
    x &lt;- as.POSIXlt(c("2019-01-30","2001-1-1"))
    x$mon &lt;- c(0L, NA); as.Date(x)
  * R CMD check failed to apply enabled _R_CHECK_SUGGESTS_ONLY_ to
    examples and vignettes (regression in R 4.2.0).
  * R CMD check did not re-build vignettes in separate processes by
    default (regression in R 4.2.0).
  * Running examples from HTML documentation now restores previous
    knitr settings and options (PR#18420).
  * Quartz: fonts are now located using Core Graphics API instead of
    deprecated ATS which is no longer supported in the macOS 13 SDK
    (PR#18426).  This also addresses an issue where the currently
    used font in the Quartz device context was not correctly
    retained.
  * (Windows) Math symbols in text drawing functions are again
    rendered correctly (PR#18440).  This fixes a regression in R
    4.2.1 caused by a fix in PR#18382 which uncovered an issue in
    GraphApp due to which the symbol charset was not used with TT
    Symbol font face.
  * (Windows) Installing a package with a src/Makefile.{win,ucrt}
    file includes ~/.R/Makevars.win64 in the search for user
    makevars, as documented in "R Installation and Administration"
    and done for packages with a src/Makevars.{win,ucrt} file.
  * format(&lt;POSIXlt_w/_unbalanced_sec&gt;, "....%OS&lt;n&gt;") with n &gt; 0 no
    longer accidentally uses the unbalanced seconds, thanks to
    Suharto Anggono's report (including patch) in PR#18448.
  * solve.default(a, b) works around issues with some versions of
    LAPACK when a contains NA or NaN values.
  * When UseMethod() cannot dispatch, it no longer segfaults
    producing the error message in case of a long class(), thanks to
    Joris Vankerschaver's report (including patch) in PR#18447.
  * When example(foo, ..) produces graphics on an interactive device
    it needs to open itself, it now leaves devAskNewPage() unchanged
    even when it was FALSE, thus fixing a 14 years old '&lt;FIXME&gt;'.
  * packageDescription() again catches errors from encoding
    conversions. This also fixes broken packageVersion() in C locale
    on systems where iconv does not support transliteration.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1681128000">- add patch to build with libcurl &gt;= 8</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1682078400">- CHANGES IN R 4.3.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Calling &amp;&amp; or || with LHS or (if evaluated) RHS of length greater
    than one is now always an error, with a report of the form
    'length = 4' in coercion to 'logical(1)'
    Environment variable _R_CHECK_LENGTH_1_LOGIC2_ no longer has any
    effect.
  NEW FEATURES:
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.10.1.  (This caused some platform-dependent
    changes to package check output.)  And then to the sources from
    LAPACK version 3.11.0 (with changes only to double complex
    subroutines).
  * The included LAPACK sources have been updated to include the four
    Fortran 90 routines rather than their Fortran 77 predecessors.
    This may give some different signs in SVDs or
    eigendecompositions..  (This completes the transition to LAPACK
    3.10.x begun in R 4.2.0.)
  * The LAPACK sources have been updated to version 3.11.0.  (No new
    subroutines have been added, so this almost entirely bug fixes:
    Those fixes do affect some computations with NaNs, including R's
    NA.)
  * The parser now signals _classed_ errors, notably in case of the
    pipe operator |&gt;.  The error object and message now give line and
    column numbers, mostly as proposed and provided by Duncan Murdoch
    in PR#18328.
  * toeplitz() is now generalized for asymmetric cases, with a
    toeplitz2() variant.
  * xy.coords() and xyz.coords() and consequently, e.g., plot(x,y,
    log = "y") now signal a _classed_ warning about negative values
    of y (where log(.) is NA).  Such a warning can be specifically
    suppressed or caught otherwise.
  * Regular expression functions now check more thoroughly whether
    their inputs are valid strings (in their encoding, e.g. in
    UTF-8).
  * The performance of grep(), sub(), gsub() and strsplit() has been
    improved, particularly with perl = TRUE and fixed = TRUE.  Use of
    useBytes = TRUE for performance reasons should no longer be
    needed and is discouraged: it may lead to incorrect results.
  * apropos() gains an argument dot_internals which is used by the
    completion (help(rcompgen)) engine to also see base internals
    such as .POSIXct().
  * Support in tools::Rdiff() for comparing uncompressed PDF files is
    further reduced - see its help page.
  * qqplot(x, y, ...) gains conf.level and conf.args arguments for
    computing and plotting a confidence band for the treatment
    function transforming the distribution of x into the distribution
    of y (Switzer, 1976, _Biometrika_). Contributed by Torsten
    Hothorn.
  * Performance of package_dependencies() has been improved for cases
    when the number of dependencies is large.
  * Strings newly created by gsub(), sub() and strsplit(), when any
    of the inputs is marked as "bytes", are also marked as "bytes".
    This reduces the risk of creating invalid strings and accidental
    substitution of bytes deemed invalid.
  * Support for readLines(encoding = "bytes") has been added to allow
    processing special text files byte-by-byte, without creating
    invalid strings.
  * iconv(from = "") now takes into account any declared encoding of
    the input elements and uses it in preference to the native
    encoding.  This reduces the risk of accidental creation of
    invalid strings, particularly when different elements of the
    input have different encoding (including "bytes").
  * Package repositories in getOption("repos") are now initialized
    from the repositories file when utils is loaded (if not already
    set, e.g., in .Rprofile).  (From a report and patch proposal by
    Gabriel Becker in PR#18405.)
  * compactPDF() gets a verbose option.
  * type.convert() and hence read.table() get new option tryLogical =
    TRUE with back compatible default.  When set to false, converts
    "F" or "T" columns to character.
  * Added new unit prefixes "R" and "Q" for abbreviating
    (unrealistically large) sizes beyond 10^{27} in standard = "SI",
    thanks to Henrik Bengtsson's PR#18435.
  * as.data.frame()'s default method now also works fine with atomic
    objects inheriting from classes such as "roman", "octmode" and
    "hexmode", such fulfilling the wish of PR#18421, by Benjamin
    Feakins.
  * The as.data.frame.vector() utility now errors for wrong-length
    row.names.  It warned for almost six years, with "Will be an
    error!".
  * sessionInfo() now also contains La_version() and reports codepage
    and timezone when relevant, in both print() and toLatex() methods
    which also get new option tzone for displaying timezone
    information when locale = FALSE.
  * New function R_compiled_by() reports the C and Fortran compilers
    used to build R, if known.
  * predict(&lt;lm&gt;, newdata = *) no longer unnecessarily creates an
    offset of all 0s.
  * solve() for complex inputs now uses argument tol and by default
    checks for 'computational singularity' (as it long has done for
    numeric inputs).
  * predict(&lt;rank-deficient lm&gt;, newdata=*) now obeys a new argument
    rankdeficient, with new default "warnif", warning only if there
    are non-estimable cases in newdata.  Other options include
    rankdeficient = "NA", predicting NA for non-estimable newdata
    cases.  This addresses PR#15072 by Russ Lenth and is based on his
    original proposal and discussions in PR#16158 also by David Firth
    and Elin Waring.  Still somewhat experimental.
  * Rgui console implementation now works better with the NVDA screen
    reader when the full blinking cursor is selected.  The underlying
    improvements in cursor handling may help also other screen
    readers on Windows.
  * The drop-field control in GraphApp can now be left with the TAB
    key and all controls can be navigated in the reverse order using
    the Shift+TAB key, improving accessibility of the Rgui
    configuration editor.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now fully accurate
    (instead of to "only" minimally five digits).
  * demo(error.catching) now also shows off withWarnings() and
    tryCatchWEMs().
  * As an experimental feature the placeholder _ can now also be used
    in the rhs of a forward pipe |&gt; expression as the first argument
    in an extraction call, such as _$coef. More generally, it can be
    used as the head of a chain of extractions, such as _$coef[[2]].
  * Spaces in the environment variable used to choose the R session's
    temporary directory (TMPDIR, TMP and TEMP are tried in turn) are
    now fatal.  (On Windows the 'short path' version of the path is
    tried and used if that does not contain a space.)
  * all.equal.numeric() gets a new optional switch giveErr to return
    the numeric error as attribute.  Relatedly,
    stopifnot(all.equal&lt;some&gt;(a, b, ..)) is as "smart" now, as
    stopifnot(all.equal(....)) has been already, thus allowing
    customized all.equal&lt;Some&gt;() wrappers.
  * R on Windows is now able to work with path names longer than 260
    characters when these are enabled in the system (requires at
    least Windows 10 version 1607).  Packages should be updated to
    work with long paths as well, instead of assuming PATH_MAX to be
    the maximum length.  Custom front-ends and applications embedding
    R need to update their manifests if they wish to allow this
    feature.  See
    &lt;https://blog.r-project.org/2023/03/07/path-length-limit-on-windows&gt;
    for more information.
  * 'Object not found' and 'Missing argument' errors now give a more
    accurate error context. Patch provided by Lionel Henry in
    PR#18241.
  * The @ operator is now an S3 generic. Based on contributions by
    Tomasz Kalinowski in PR#18482.
  * New generic chooseOpsMethod() provides a mechanism for objects to
    resolve cases where two suitable methods are found for an Ops
    Group Generic. This supports experimenting with alternative
    object systems. Based on contributions by Tomasz Kalinowski in
    PR#18484.
  * inherits(x, what) now accepts values other than a simple
    character vector for argument what. A new generic, nameOfClass(),
    is called to resolve the class name from what. This supports
    experimenting with alternative object systems. Based on
    contributions by Tomasz Kalinowski in PR#18485.
  * Detection of BLAS/LAPACK in use (sessionInfo()) with FlexiBLAS
    now reports the current backend.
  * The "data.frame" method for subset() now warns about extraneous
    arguments, typically catching the use of = instead of == in the
    subset expression.
  * Calling a:b when numeric a or b is longer than one may now be
    made into an error by setting environment variable
    _R_CHECK_LENGTH_COLON_ to a true value, along the proposal in
    PR#18419 by Henrik Bengtsson.
  * density(x, weights = *) now warns if automatic bandwidth
    selection happens without using weights; new optional warnWbw may
    suppress the warning.  Prompted by Christoph Dalitz' PR#18490 and
    its discussants.
  * rm(list = *) is faster and more readable thanks to Kevin Ushey's
    PR#18492.
  * The plot.lm() function no longer produces a normal Q-Q plot for
    GLMs. Instead it plots a half-normal Q-Q plot of the absolute
    value of the standardized deviance residuals.
  * The print() method for class "summary.glm" no longer shows
    summary statistics for the deviance residuals by default.  Its
    optional argument show.residuals can be used to show them if
    required.
  * The tapply() function now accepts a data frame as its X argument,
    and allows INDEX to be a formula in that case. by.data.frame()
    similarly allows INDICES to be a formula.
  * The performance of df[j] &lt;- value (including for missing j) and
    write.table(df) has been improved for data frames df with a large
    number of columns.  (Thanks to Gabriel Becker's PR#18500,
    PR#18503 and discussants, prompted by a report from Toby Dylan
    Hocking on the R-devel mailing list.)
  * The matrix multiply operator %*% is now an S3 generic, belonging
    to new group generic matrixOps.  From Tomasz Kalinowski's
    contribution in PR#18483.
  * New function array2DF() to convert arrays to data frames,
    particularly useful for the list arrays created by tapply().
  DATES and TIMES:
  * On platforms where (non-UTC) datetimes before 1902 (or before
    1900 as with system functions on recent macOS) are guessed by
    extrapolating time zones from 1902-2037, there is a warning at
    the first use of extrapolation in a session.  (As all time zones
    post 2037 are extrapolation, we do not warn on those.)
  * (Platforms using --with-internal-tzone, including Windows and by
    default macOS). How years are printed in dates or date-times can
    be controlled by environment variable R_PAD_YEARS_BY_ZERO.  The
    default remains to pad to 4 digits by zeroes, but setting value
    no gives no padding (as used by default by glibc).
  * strftime() tries harder to determine the offset for the "%z"
    format, and succeeds on the mainstream R platforms.
  * strftime() has a limit of 2048 bytes on the string produced -
    attempting to exceed this is an error.  (Previously it silently
    truncated at 255 bytes.)
  * sessionInfo() records (and by default prints) the system time
    zone as part of the locale information.  Also, the source
    (system/internal) of the date-time conversion and printing
    functions.
  * Objects of class "POSIXlt" created in this version of R always
    have 11 components: component zone is always set, and component
    gmtoff is set for times in UTC and usually set on the (almost
    all) platforms which have C-level support, otherwise is NA.
  * There are comprehensive validity checks on the structure of
    objects of class "POSIXlt" when converting (including formatting
    and printing).  (This avoids mis-conversions of hand-crafted
    objects.)
  * There is some support for using the native date-time routines on
    macOS: this is only viable on recent versions (e.g. 12.6 and 13)
    and does get wrong some historical changes (before 1900, during
    WWII).  Use of --with-internal-tzone remains the default.
  * as.POSIXct(&lt;numeric&gt;) and as.POSIXlt(.) (without specifying
    origin) now work.  So does as.Date(&lt;numeric&gt;).
  * as.Date.POSIXct(., tz) now treats several tz values, notably
    "GMT" as equivalent to "UTC", proposed and improved by Michael
    Chirico and Joshua Ulrich in PR#17674.
  * Experimental balancePOSIXlt() utility allows using "ragged" and
    or out-of-range "POSIXlt" objects more correctly, e.g., in
    subsetting and subassignments.  Such objects are now documented.
    More experimentally, a "POSIXlt" object may have an attribute
    "balanced" indicating if it is known to be filled or fully
    balanced.
  * Functions axis.Date() and axis.POSIXct() are rewritten to gain
    better default tick locations and better default formats by using
    prettyDate(). Thanks to Swetlana Herbrandt.
  * The mapping of Windows' names for time zones to IANA's 'Olson'
    names has been updated.  When ICU is available (it is by
    default), it is used to get a mapping for the current region set
    in Windows.  This can be overridden by setting environment
    variable TZ to the desired Olson name - see OlsonNames() for
    those currently available.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 16
    and so packages that provide graphics devices should be
    reinstalled.
  * The grDevices and grid packages have new functions for rendering
    typeset glyphs, primarily: grDevices::glyphInfo() and
    grid::grid.glyph().
    Rendering of typeset glyphs is only supported so far on the
    Cairo-based graphics devices and on the pdf() and quartz()
    devices.
  * The defined behaviour for "clear" and "source" compositing
    operators (via grid::grid.group()) has been changed (to align
    better with simple interpretation of original Porter-Duff
    definitions).
  * Support for gradients, patterns, clipping paths, masks, groups,
    compositing operators, and affine transformations has been added
    to the quartz() device.
  INSTALLATION on a UNIX-ALIKE:
  * A system installation of generic LAPACK 3.10.0 or later will be
    preferred to the version in the R sources.
    configure option --with-lapack=no (equivalently --without-lapack)
    forces compilation of the internal LAPACK sources.
    If --with-lapack is not specified, a system liblapack is looked
    for and used if it reports version 3.10.0 or later and does not
    contain BLAS routines.
    Packages using LAPACK will need to be reinstalled if this changes
    to using an external library.
  * On aarch64 Linux platforms using GCC, configure now defaults to
  - fPIC (instead of -fpic), as desired in PR#18326.
  * configure now checks conversion of datetimes between POSIXlt and
    POSIXct around year 2020.  Failure (which has been seen on
    platforms missing tzdata) is fatal.
  * If configure option --with-valgrind-instrumentation is given
    value 1 or 2, option --with-system-valgrind-headers is now the
    default and ignored (with a warning).  It is highly recommended
    that the system headers are installed alongside valgrind: they
    are part of its packaging on some Linux distributions and
    packaged separately (e.g. in the valgrind-devel RPM) on others.
    configure will give a warning if they are not found.
    The system headers will be required in a future release of R to
    build with valgrind instrumentation.
  * libcurl 8.x is now accepted by configure: despite a change in
    major version number it changes neither API nor ABI.
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools43, an update of the Rtools42 toolchain.  It is
    based on gcc 12 and newer versions of MinGW-W64, binutils and
    libraries.  At this time R-devel can still be built using
    Rtools42 without changes, but when R-devel is installed via the
    installer, it will by default look for Rtools43.
  * Old make targets rsync-extsoft and 32-bit ones that are no longer
    needed have been removed.
  * Default builds (including for packages) no longer select C99.
    Thus the C standard used is the default for the compiler, which
    for the toolchain in Rtools43 is C17.  (This is consistent with
    Unix builds.)
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++17 where
    available (which it is on all currently checked platforms): if
    not C++14 or C++11 is used if available otherwise C++ is not
    supported.
  * USE_FC_LEN_T is the default: this uses the correct
    (compiler-dependent) prototypes for Fortran BLAS/LAPACK routines
    called from C/C++, and requires adjustment of many such calls -
    see 'Writing R Extensions' SS6.6.1.
  * There is initial support for C++23 as several compilers are now
    supporting -std=c++23 or -std=c++2b or similar.  As for C++20,
    there no additional configure checks for C++23 features beyond a
    check that the compiler reports a __cplusplus value greater than
    that in the C++20 standard.  C++ feature tests should be used.
  * There is support for a package to indicate the version of the C
    standard which should be used to compile it, and for the
    installing user to specify this.  In most cases R defaults to the
    C compiler's default standard which is C17 (a `bug-fix' of C11) -
    earlier versions of R or compilers may have defaulted to C99.
    Current options are:
    USE_C17 Use a standard that is at most C17.  The intention is to
    allow legacy packages to still be installed when later C
    standards become the default, including packages using new
    keywords as identifiers or with K&amp;R-style function
    declarations.  This will use C17 if available, falling back
    to C11.
    USE_C90 Use the C90 (aka C89) standard.  (As that standard did
    not require compilers to identify that version, all we can
    verify is that the compiler does not claim to be using a
    later standard.  It may accept C99 features - for example
    clang accepts // to make comments.)
    USE_C99 Use the C99 standard. This should be rarely needed - it
    avoids the few new features of C11/C17 which can be useful if
    a package assumes them if C17 is specified and they are not
    implemented.
    USE_C23 Use C23 (or in future, later).  Compiler/library support
    for C23 is still being implemented, but LLVM clang from
    15.0.0 and the upcoming GCC 13 have quite extensive support.
    These can be specified as part of the SystemRequirements field in
    the package's DESCRIPTION file or _via_ options --use-C17 and so
    on of R CMD INSTALL and R CMD SHLIB.
    For further details see "Writing R Extensions" SS1.2.5.
  * (Windows) A src/Makefile.ucrt or src/Makefile.win file is now
    included after R_HOME/etcR_ARCH/Makeconf and so no longer needs
    to include that file itself.  Installation of a package with such
    a file now uses a site Makevars file in the same way as a package
    with a src/Makevars.win file would.
  * configure is now passed crucial variables such as CC and CFLAGS
    in its environment, as many packages were not setting them (as
    documented in 'Writing R Extensions' SS1.2).
    This has most effect where configure is used to compile parts of
    the package - most often by cmake or libtool which obfuscate the
    actual compile commands used.
    Also used for configure.win and configure.ucrt on Windows.
  FORTRAN FLAGS:
  * The flag -fno-optimize-sibling-calls is no longer forced for
    gfortran 7 and later.  It should no longer be needed now using
    'hidden' character-length arguments when calling BLAS/LAPACK
    routines from C/C++ is the default even for packages.  (Unless
    perhaps packages call Fortran code from C/C++ without using R's
    headers and without allowing for these arguments.)
  C-LEVEL FACILITIES:
  * The deprecated S-compatibility macros DOUBLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * The deprecated legacy typedefs of Sint and Sfloat in header R.h
    are no longer defined, and that header no longer includes header
    limits.h from C nor climits from C++.
  * New macro CAD5R() is provided in Rinternals.h and used in a few
    places in the R sources.
  * ALTREP now supports VECSXP vectors. Contributed by Gabor Csardi
    in PR#17620.
  * The Rcomplex definition (in header R_ext/Complex.h) has been
    extended to prevent possible mis-compilation when interfacing
    with Fortran (PR#18430).  The new definition causes compiler
    warnings with static initializers such as {1, 2}, which can be
    changed to {.r=1, .i=2}.
    Using the new definition from C++ depends on compiler extensions
    supporting C features that have not been incorporated into the
    C++ standards but are available in g++ and clang++: this may
    result in C++ compiler warnings but these have been worked around
    for recent versions of common compilers (GCC, Apple/LLVM clang,
    Intel).
    It is intended to change the inclusion of header R_ext/Complex.h
    by other R headers, so C/C++ code files which make use of
    Rcomplex should include that header explicitly.
  UTILITIES:
  * R CMD check does more checking of package .Rd files, warning
    about invalid email addresses and (some) invalid URIs and noting
    empty \item labels in description lists.
  * R CMD check now also reports problems when reading package news
    in md (file NEWS.md) and (optionally) plain text (file NEWS)
    formats.
  * _R_CHECK_TIMINGS_ defaults to a value from the environment even
    for R CMD check --as-cran; this allows for exceptionally fast or
    slow platforms.
    It now applies to checking PDF and HTML versions of the manuals,
    and 'checking CRAN incoming feasibility'.
  * R CMD check can optionally (but included in --as-cran) check
    whether HTML math rendering _via_ KaTeX works for the package .Rd
    files.
  * Non-interactive debugger invocations can be trapped by setting
    the environment variable _R_CHECK_BROWSER_NONINTERACTIVE_ to a
    true value.  This is enabled by R CMD check --as-cran to detect
    the use of leftover browser() statements in the package.
  * The use of sprintf and vsprintf from C/C++ has been deprecated in
    macOS 13 and is a known security risk.  R CMD check now reports
    (on all platforms) if their use is found in compiled code:
    replace by snprintf or vsnprintf respectively. [*NB:* whether
    such calls get compiled into the package is platform-dependent.]
  * Where recorded at installation, R CMD check reports the C and
    Fortran compilers used to build R.
    It reports the OS in use (if known, as given by osVersion) as
    well as that R was built for.
    It notes if a C++ standard was specified which is older than the
    current default: many packages have used C++11 to mean 'not
    C++98' - as C++11 is the minimum supported since R 4.0.0, that
    specification can probably be removed.
  * R CMD INSTALL reports the compilers (and on macOS, the SDK) used,
    and this is copied to the output of R CMD check.
    Where a C++ standard is specified, it is reported.
  * R CMD check's 'checking compilation flags in Makevars' has been
    relaxed to accept the use of flags such as -std=f2008 in
    PKG_FFLAGS.
  * tools::buildVignettes() has a new argument skip, which is used by
    R CMD check to skip (and note) vignettes with unavailable
    \VignetteDepends (PR#18318).
  * New generic .AtNames() added to enable class-specific completions
    after @. The formerly internal function findMatches() is now
    exported, mainly for use in methods for .DollarNames() and
    .AtNames().
  DEPRECATED AND DEFUNCT:
  * default.stringsAsFactors() is defunct.
  * Calling as.data.frame.&lt;class&gt;() directly (for 12 atomic classes)
    is going to be formally deprecated, currently activated by
    setting the environment variable
    _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ to non-empty, which also
    happens in R CMD check --as-cran.
  BUG FIXES:
  * Hashed environments with sizes less than 5 can now grow.
    (Reported to R-devel by Duncan Garmonsway.)
  * as.character(&lt;Rd&gt;, deparse = TRUE) failed to re-escape curly
    braces in LaTeX-like text.  (Reported by Hadley Wickham in
    PR#18324.)
  * library() now passes its lib.loc argument when requiring Depends
    packages; reported (with fix) in PR#18331 by Mikael Jagan.
  * R CMD Stangle: improved message about 'Output' files.
  * head(x, n) and tail(x, n) now signal an error if n is not
    numeric, instead of incidentally "working" sometimes returning
    all of x.  Reported and discussed by Colin Fay, in PR#18357.
  * The "lm" method for summary() now gives the correct F-statistic
    when the model contains an offset.  Reported in PR#18008.
  * C() and `contrasts&lt;-`() now preserve factor level names when
    given a function object (as opposed a function name which did
    preserve names). Reported in PR#17616.
  * c(a = 1, 2)[[]] no longer matches 2 but rather signals a
    _classed_ error.  Reported and analysed by Davis Vaughan in
    PR#18367, a duplicate of PR#18004, by Jan Meis et al.  For
    consistency, NULL[[]] is also erroneous now.  x[[]] &lt;- v gives an
    error of the same class "MissingSubscriptError".
  * The relist() function of utils now supports NULL elements in the
    skeleton (PR#15854).
  * ordered(levels = *) (missing x) now works analogously to factor(,
    ordered=TRUE); reported (with fix) by Achim Zeileis in PR#18389.
  * User-defined Rd macro definitions can now span multiple lines,
    thanks to a patch from Duncan Murdoch. Previously, the Rd parser
    silently ignored everything after the first line.
  * Plain-text help (tools::Rd2txt()) now preserves an initial blank
    line for text following description list items.
  * tools::Rd2HTML() and tools::Rd2latex() no longer split \arguments
    and \value lists at Rd comments.
  * tools::Rd2latex() now correctly handles optional text outside
    \items of argument lists as well as bracketed text at the
    beginning of sections, e.g., \value{[NULL]}.
  * as.character(&lt;POSIXt&gt;) now behaves more in line with the methods
    for atomic vectors such as numbers, and is no longer influenced
    by options().  Ditto for as.character(&lt;Date&gt;).  The
    as.character() method gets arguments digits and OutDec with
    defaults _not_ depending on options().  Use of as.character(*,
    format = .) now warns.
  * Similarly, the as.character.hexmode() and *.octmode() methods
    also behave as good citizen methods and back compatibility option
    keepStr = TRUE.
  * The as.POSIXlt(&lt;POSIXlt&gt;) and as.POSIXct(&lt;POSIXct&gt;) default
    methods now do obey their tz argument, also in this case.
  * as.POSIXlt(&lt;Date&gt;) now does apply a tz (time zone) argument, as
    does as.POSIXct(); partly suggested by Roland Fuss on the R-devel
    mailing list.
  * as.Date.POSIXlt(x) now also works when the list components are of
    unequal length, aka "partially filled" or "ragged".
  * expand.model.frame() looked up variables in the wrong environment
    when applied to models fitted without data.  Reported in
    PR#18414.
  * time() now (also) uses the ts.eps = getOption("ts.eps") argument
    and thus by default rounds values very close to the start (or
    end) of a year.  Based on a proposal by Andre"i V. Kostyrka on
    R-help.
  * Printing of a factanal() result with just one factor and sort =
    TRUE now works regularly, fixing PR#17863 by Timothy Bates,
    thanks to the 'R Contributors' working group.
  * Printing 0-length objects of class "factor", "roman", "hexmode",
    "octmode", "person", "bibentry", or "citation" now prints
    something better, one of which fixes PR#18422, reported by
    Benjamin Feakins.
  * Sys.timezone() queries timedatectl only if systemd is loaded;
    addressing a report by Jan Gorecki in PR#17421.
  * The formula method of cor.test() had scoping problems when
    environment(formula) was not the calling environment; reported
    with a patch proposal by Mao Kobayashi in PR#18439.
  * attach() of an environment with active bindings now preserves the
    active bindings.  Reported by Kevin Ushey in PR#18425.
  * BLAS detection now works also with system-provided libraries not
    available as regular files.  This fixes detection of the
    Accelerate framework on macOS since Big Sur.  Reported by David
    Novgorodsky.
  * download.file() gives a helpful error message in case of an
    invalid download.file.method option, thanks to Colin Fay's report
    in PR#18455.
  * Sporadic crashes of Rterm when using completion have been fixed.
  * Rprof() is now more reliable.  A livelock in thread
    initialization with too short sampling interval has been fixed on
    macOS.  A deadlock in using the C runtime has been fixed on
    Windows.  A potential deadlock has been prevented on Unix.
  * Cursor placement in Rgui now works even after a fixed-width font
    is selected.
  * Mandatory options (options()) are now set on startup so that
    saving and restoring them always works (PR#18372).
  * Package installation, R CMD INSTALL or install.packages(*), now
    parses each of the &lt;pkg&gt;/R/*.R files individually instead of
    first concatenating and then parse()ing the large resulting file.
    This allows parser or syntax errors to be diagnosed with correct
    file names and line numbers, thanks to Simon Dedman's report and
    Bill Dunlap's patch in PR#17859.
    This _does_ require syntactically self contained R source files
    now, fixing another inadvertent bug.
  * predict.lm(&lt;model with offset&gt;) now finds the offset in the
    correct environment, thanks to Andr'e Gillibert's report and patch
    in PR#18456.
  * getInitial(&lt;formula&gt;) now finds the selfStart model in the
    correct environment.  (Reported by Ivan Krylov in PR#18368.)
  * Fix for possible segfault when using recently-added graphics
    features, such as gradients, clipping paths, masks, and groups
    with pdf(file=NULL).
  * class(m) &lt;- class(m) no longer changes a matrix m by adding a
    class _attribute_.
  * packageDate(pkg) now only warns once if there is no pkg.
  * When ts() creates a multivariate time series, "mts", it also
    inherits from "array" now, and is.mts() is documented _and_
    stricter.
  * Rd2txt() now preserves line breaks of \verb Rd content and from
    duplicated \cr.  The former also fixes the rendering of verbatim
    output from Rd \Sexpr in plain-text help.
  * uniroot(f, interval) should no longer wrongly converge _outside_
    the interval in some cases where abs(f(x)) == Inf for an x at the
    interval boundary, thanks to posts by Ben Bolker and Serguei
    Sokol on R-devel.
  * Vectorized alpha handling in palette functions such as in gray(),
    rainbow(), or hcl.colors() works correctly now, thanks to Achim
    Zeileis' report and patch in PR#18476.
  * Formatting and print()ing of bibentry objects has dropped the
    deprecated citation.bibtex.max argument, such that the bibtex
    argument's default for print.bibentry() depends directly on the
    citation.bibtex.max option, whereas in format.bibentry() the
    option no longer applies.
  * Attempting to use a character string naming a foreign function
    entry point in a foreign function call in a package will now
    signal an error if the packages has called R_forceSymbols to
    specify that symbols must be used.
  * An error in table() could permanently set options(warn=2)
    promoting all subsequent warnings to errors.
  * The sigma() function gave misleading results for binary GLMs.  A
    new method for objects of class "glm" returns the square root of
    the estimate of the dispersion parameter using the same
    calculation as summary.glm().
  * bs() and ns() in the (typical) case of automatic knot
    construction, when some of the supposedly inner knots coincide
    with boundary knots, now moves them inside (with a warning),
    building on PR#18442 by Ben Bolker.
  * R CMD on Windows now skips the site profile with --no-site-file
    and --vanilla even when R_PROFILE is set (PR#18512, from Kevin
    Ushey).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1686916800">- CHANGES IN R 4.3.1:
  C-LEVEL FACILITIES:
  * The C-level API version of R's integrate(), Rdqags() in Applic.h,
    now returns the correct number of integrand evaluations neval,
    fixing PR#18515 reported and diagnosed by Stephen Wade.
  * The C prototypes for LAPACK calls dspgv and dtptrs in
    R_exts/Lapack.h had one too many and one too few character length
    arguments - but this has not caused any known issues. To get the
    corrected prototypes, include
    [#]include &lt;Rconfig.h&gt; // for PR18534fixed
    [#]ifdef PR18534fixed
    [#] define usePR18534fix 1
    [#]endif
    [#]include &lt;R_exts/Lapack.h&gt;
    in your C/C++ code (PR#18534).
  INSTALLATION:
  * Many of the checks of esoteric Internet operations and those
    using unreliable external sites have been moved to a new target
    that is not run by default and primarily intended for the core
    developers.  To run them use
    cd tests; make test-Internet-dev
  BUG FIXES:
  * .S3methods(), typically called from methods(), again marks
    methods from package base as visible.
    Also, the visibility of non-base methods is again determined by
    the method's presence in search().
  * tools::Rdiff() is now more robust against invalid strings, fixing
    installation tests on Windows without Rtools installed
    (PR#18530).
  * Fix (new) bug in hcl.colors(2, *), by Achim Zeileis (PR#18523).
  * head(., &lt;illegal&gt;) and tail(..) now produce more useful "Error in
    ...." error messages, fixing PR#18362.
  * Package code syntax on Windows is checked in UTF-8 when UTF-8 is
    the native encoding.
  * na.contiguous(x) now also returns the first run, when it is at
    the beginning and there is a later one of the same length;
    reported to R-devel, including a fix, by Georgi Boshnakov.
    Further, by default, it modifies only an existing attr(*,"tsp")
    but otherwise no longer sets one.
  * chol(&lt;not pos.def&gt;, pivot = &lt;T|F&gt;) now gives a correct error or
    warning message (depending on pivot), thanks to Mikael Jagan's
    (PR#18541).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1699012800">- CHANGES IN R 4.3.2:
  NEW FEATURES:
  * The default initialization of the "repos" option from the
    repositories file at startup can be skipped by setting
    environment variable R_REPOSITORIES to NULL such that
    getOption("repos") is empty if not set elsewhere.
  * qr.X() is now an implicit S4 generic in methods.
  * iconv(to = "ASCII//TRANSLIT") is emulated using substitution on
    platforms which do not support it (notably Alpine Linux).  This
    should give a human-readable conversion in ASCII on all platforms
    (rather than NA_character_).
  * trans3d() gains options continuous and verbose addressing the
    problem of possible "wrap around" when projecting too long
    curves, as reported by Achim Zeileis in PR#18537.
  * tools::showNonASCII() has been rewritten to work better on macOS
    14 (which has a changed implementation of iconv()).
  * tiff(type = "quartz") (the default on macOS) now warns if
    compression is specified: it continues to be ignored.
  INSTALLATION on a UNIX-ALIKE:
  * There is some support for building with Intel's LLVM-based
    compilers on x86_64 Linux, such as (C) icx, (C++) ipcx and
    (Fortran) ifx from oneAPI 2023.x.y.
  * There is support for using LLVM's flang-new as the Fortran
    compiler from LLVM 16.0.x (preferably 17.0.0 or later).
  UTILITIES:
  * R CMD check reports the use of the Fortran 90 random number
    generator RANDOM_NUMBER() and the subroutines to initialize it.
    'Writing R Extensions' has example code to use R's RNGs from
    Fortran.
  BUG FIXES:
  * substr(x, n, L) &lt;- cc now works (more) correctly for multibyte
    UTF-8 strings x when L &gt; nchar(x), thanks to a report and patch
    by 'Architect 95'.
  * contrib.url(character()) now returns 0-length character() as
    documented, which also avoids spurious warnings from
    available.packages() et al. in the edge case of an empty vector
    of repository URLs.
  * readChar(., 4e8) no longer fails, thanks to Kodi Arfer's report
    (PR#18557).
  * lapply(&lt;list&gt;, as.data.frame) no longer warns falsely for some
    base vector components.
  * Communication between parent and child processes in the multicore
    part of parallel could fail on platforms that do not support an
    arbitrarily large payload in system functions read()/write() on
    pipes (seen on macOS where a restriction to INT_MAX bytes is
    documented, without doing a partial read unlike Linux). The
    payload is now split into 1Gb chunks to avoid that problem.
    (PR#18571)
  * qqplot(x,y, conf.level=.) gives better confidence bounds when
    length(x) != length(y), thanks to Alexander Ploner's report and
    patch proposal (PR#18557).
  * norm(&lt;0-length&gt;, "2") now gives zero instead of an error, as all
    the other norm types, thanks to Mikael Jagan's PR#18542.
  * Build-stage Rd macros \packageAuthor and \packageMaintainer now
    process Authors@R, fixing NA results when the package DESCRIPTION
    omits Author and Maintainer fields.
  * Formatting and printing complex numbers could give things like
    0.1683-0i because of rounding error: -0i is now replaced by +0i.
  * postscript() refused to accept a title comment containing the
    letter "W" (PR#18599).
  * isoreg(c(1,Inf)) signals an error instead of segfaulting, fixing
    PR#18603.
  * tiff(type = "Xlib") was only outputting the last page of
    multi-page plots.
  * tools::latexToUtf8() again knows about \~{n} and other letters
    with tilde, fixing a regression in R 4.3.0, and about \^{i} as an
    alternative to \^{\i} (similarly with other accents).
    Furthermore, LaTeX codes for accented I letters are now correctly
    converted, also fixing related mistakes in
    tools::encoded_text_to_latex().
  * tar(*, tar = "internal") no longer creates out-of-spec tar files
    in the very rare case of user or group names longer than 32
    bytes, fixing PR#17871 with thanks to Ivan Krylov.
  * When using the "internal" timezone datetime code, adding a
    fraction of a second no longer adds one second, fixing PR#16856
    from a patch by Ivan Krylov.
  * tools::checkRd() no longer produces spurious notes about
    "unnecessary braces" from multi-line Rd results of \Sexpr macros.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1709208000">- CHANGES IN R 4.3.3:
  NEW FEATURES:
  * iconv() now fixes up variant encoding names such as "utf8"
    case-insensitively.
  DEPRECATED AND DEFUNCT:
  * The legacy encoding = "MacRoman" is deprecated in pdf() and
    postscript(): support was incomplete in earlier versions of R.
  BUG FIXES:
  * Arguments are now properly forwarded to methods on S4 generics
    with ... in the middle of their formal arguments. This was broken
    for the case when a method introduced an argument but did not
    include ... in its own formals. Thanks to Herv'e Pag`es for the
    report PR#18538.
  * Some invalid file arguments to pictex(), postscript() and xfig()
    opened a file called NA rather than throw an error.  These
    included postscript(NULL) (which some people expected to work
    like pdf(NULL)).
  * Passing filename = NA to svg(), cairo_pdf(), cairo_ps() or the
    Cairo-based bitmap devices opened a file called NA: it now throws
    an error.
  * quartz(file = NA) opened a file called NA, including when used as
    a Quartz-based bitmap device.  It now gives an error.
  * rank(&lt;long vector&gt;) now works, fixing PR#18617, thanks to Ilia
    Kats.
  * seq.int() did not adequately check its length.out argument.
  * match(&lt;POSIXct&gt;, .) is correct again for differing time zones,
    ditto for "POSIXlt", fixing PR#18618 reported by Bastian Klein.
  * drop.terms(*, dropx = &lt;0-length&gt;) now works, fixing PR#18563 as
    proposed by Mikael Jagan.
  * drop.terms(*) keeps + offset(.) terms when it should, PR#18565,
    and drop.terms() no longer makes up a response, PR#18566, fixing
    both bugs thanks to Mikael Jagan.
  * getS3method("t", "test") no longer finds the t.test() function,
    fixing PR#18627.
  * pdf() and postscript() support for the documented Adobe encodings
    "Greek" and "Cyrilllic" was missing (although the corresponding
    Windows' codepages could be used).
  * Computations of glyph metric information for pdf() and
    postscript() did not take into account that transliteration could
    replace one character by two or more (only seen on macOS 14) and
    typically warned that the information was not known.
  * rank(x) no longer overflows during integer addition, when
    computing rank average for largish but not-yet long vector x,
    fixing PR#18630, thanks to Ilia Kats.
  * list.files() on Windows now returns also files with names longer
    that 260 bytes (the Windows limit is 260 characters).
    Previously, some file names particularly with 'East Asian'
    characters were omitted.
  * cov2cor(&lt;0 x 0&gt;) now works, fixing PR#18423 thanks to Mikael
    Jagan and Elin Waring.
  * cov2cor(&lt;negative diagonal&gt;) and similar now give one warning
    instead of two, with better wording, fixing PR#18424 thanks to
    Mikael Jagan.
  * tools:: startDynamicHelp() now ensures port is in proper range,
    fixing PR#18645.
  * pbeta(x, a,b) is correct now for x=0 or 1 in the boundary cases
    where a or b or both are 0, fixing PR#18672 thanks to Michael
    Fay.
  * pmatch(x, table) for large table, also called for data frame row
    selection, dfrm[nm, ], is now interruptible, fixing PR#18656.
  * predict(&lt;rank-deficient lm&gt;, newdata=*) fix computing of nbasis,
    see Russ Lenth's comment 29 in PR#16158.
  * Added a work-around for a bug in macOS 14.3.1 and higher which
    prevents R plots in the Quartz Cocoa device from updating on
    screen.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1713960000">- CHANGES IN R 4.4.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Startup banners, R --version, sessionInfo() and R CMD check no
    longer report (64-bit) as part of the platform as this is almost
    universal - the increasingly rare 32-bit platforms will still
    report (32-bit).
    On Windows, ditto for window titles.
  * is.atomic(NULL) now returns FALSE, as NULL is not an atomic
    vector.  Strict back-compatibility would replace is.atomic(foo)
    by (is.null(foo) || is.atomic(foo)) but should happen only
    sparingly.
  NEW FEATURES:
  * The confint() methods for "glm" and "nls" objects have been
    copied to the stats package.  Previously, they were stubs which
    called versions in package MASS. The MASS namespace is no longer
    loaded if you invoke (say) confint(glmfit).  Further, the "glm"
    method for profile() and the plot() and pairs() methods for class
    "profile" have been copied from MASS to stats.  (profile.nls()
    and plot.profile.nls() were already in stats.)
  * The confint() and profile methods for "glm" objects have gained a
    possibility to do profiling based on the Rao Score statistic in
    addition to the default Likelihood Ratio. This is controlled by a
    new test = argument.
  * The pairs() method for "profile" objects has been extended with a
    which = argument to allow plotting only a subset of the
    parameters.
  * The "glm" method for anova() computes test statistics and
    p-values by default, using a chi-squared test or an F test
    depending on whether the dispersion is fixed or free.  Test
    statistics can be suppressed by giving argument test a false
    logical value.
  * In setRepositories() the repositories can be set using their
    names via name = instead of index ind =.
  * methods() and .S3methods() gain a all.names option for the (rare)
    case where functions starting with a . should be included.
  * Serializations can now be interrupted (e.g., by Ctrl-C on a
    Unix-alike) if they take too long, e.g., from save.image(),
    thanks to suggestions by Ivan Krylov and others on R-devel.
  * New startup option --max-connections to set the maximum number of
    simultaneous connections for the session.  Defaults to 128 as
    before: allowed values up to 4096 (but resource limits may in
    practice restrict to smaller values).
  * R on Windows (since Windows 10 2004) now uses the new Segment
    Heap allocator. This may improve performance of some
    memory-intensive applications.
  * When R packages are built, typically by R CMD build &lt;pkg&gt;, the
    new --user=&lt;build_user&gt; option overrides the (internally
    determined) user name, currently Sys.info()["user"] or LOGNAME.
    This is a (modified) fulfillment of Will Landau's suggestion in
    PR#17530.
  * tools::testInstalledBasic() gets new optional arguments outDir
    and testSrcdir, e.g., allowing to use it in a &lt;builddir&gt; !=
    &lt;srcdir&gt; setup, and in standard "binary" Windows installation
  * if* a source tests/ folder is present.
  * range(&lt;DT_with_Inf&gt;, finite = TRUE) now work for objects of class
    "Date", "POSIXct", and "POSIXlt" with infinite entries,
    analogously to range.default(), as proposed by Davis Vaughan on
    R-devel.  Other range()-methods can make use of new function
    .rangeNum().
  * New .internalGenerics object complementing .S3PrimitiveGenerics,
    for documentation and low-level book-keeping.
  * grid() now invisibly returns the x- and y- coordinates at which
    the grid-lines were drawn.
  * norm(., type) now also works for complex matrices.
  * kappa(., exact = TRUE, norm = *) now works for all norms and also
    for complex matrices.  In symmetric / triangular cases, the new
    argument uplo = "U" | "L" allows the upper or lower triangular
    part to be specified.
  * memDecompress(type = "unknown") recognizes compression in the
    default 'zlib' format as used by memCompress(type = "gzip").
  * memCompress() and memDecompress() will use the libdeflate library
    (&lt;https://github.com/ebiggers/libdeflate&gt;) if installed.  This
    uses the same type of compression for type = "gzip" but is 1.5-2x
    faster than the system libz library on some common platforms: the
    speed-up may depend on the library version.
  * diff() for objects of class "Date", "POSIXct", and "POSIXlt"
    accepts a units argument passed via ....
  * Dynamic help now does a much better job of rendering package
    DESCRIPTION metadata.
  * Rprof() gains an event argument and support for elapsed (real)
    time profiling on Unix (PR#18076).
  * filled.contour() gains a key.border argument.
  * tools::update_pkg_po() gets arguments pot_make and mo_make for
    _not_ re-making the corresponding files, and additionally a
    verbose argument.
  * Hexadecimal string colour specifications are now accepted in
    short form, so, for example, we can use "#123", which is
    equivalent to "#112233".
    Thanks to MikeFC for the original idea and Ella Kaye, Malcolm
    Barrett, George Stagg, and Hanne Oberman for the patch.
  * Plain-text help shows \var markup by angle brackets.
  * The new experimental primitive function declare() is intended to
    eventually allow information about R code to be communicated to
    the interpreter, compiler, and code analysis tools. The syntax
    for declarations is still being developed.
  * Functions psmirnov(), qsmirnov() and rsmirnov() in package stats
    have had argument two.sided renamed to alternative, to take into
    account that the permutation distributions of the one-sided
    statistics can be different in the case of ties.  Consequence of
    PR#18582.
  * sort() is now an implicit S4 generic in methods.
  * Formatting and printing, format(z), print(z), of complex vectors
    z no longer zap relatively small real or imaginary parts to zero,
    fixing PR#16752.  This is an API change, as it was documented
    previously to round real and imaginary parts together on purpose,
    producing nicer looking output.  As mentioned, e.g. in the PR,
    this change is compatible with many other "R-like" programming
    environments.
    We have simplified the internal code and now basically format the
    real and imaginary parts independently of each other.
  * New experimental functions Tailcall() and Exec() to support
    writing stack-space-efficient recursive functions.
  * Where characters are attempted to be plotted by pdf(),
    postscript() and xfig() which are not in the selected 8-bit
    character set (most often Latin-1) and the R session is using a
    UTF-8 locale, the warning messages will show the UTF-8 character
    rather than its bytes and one dot will be substituted per
    character rather than per byte.  (Platforms whose iconv() does
    transliteration silently plot the transliteration.)
    In a UTF-8 locale some transliterations are now done with a
    warning (e.g., dashes and Unicode minus to hyphen, ligatures are
    expanded, permille (‰) is replaced by o/oo), although the OS may
    have got there first.  These are warnings as they will continue
    to be replaced by dots in earlier versions of R.
  * The matrix multiplication functions crossprod() and tcrossprod()
    are now also primitive and S3 generic, as %*% had become in R
    4.3.0.
  * source() and example() have a new optional argument catch.aborts
    which allows continued evaluation of the R code after an error.
  * The non-Quartz tiff() devices allow additional types of
    compression if supported by the platform's libtiff library.
  * The list of base and recommended package names is now provided by
    tools::standard_package_names().
  * cairo_pdf() and cairo_ps() default to onefile = TRUE to closer
    match pdf() and postscript().
  * New option catch.script.errors provides a documented way to catch
    errors and then continue in non-interactive use.
  * L %||% R newly in base is an expressive idiom for the phrases
    if(!is.null(L)) L else R or if(is.null(L)) R else L.
  * The return value from warnings() now always inherits from
    "warnings" as documented, now also in the case of no warnings
    where it previously returned NULL.
  * as.complex("1i") now returns 0 + 1i instead of NA with a warning.
  * z &lt;- c(NA, 1i) now keeps the imaginary part Im(z[1]) == 0, no
    longer coercing to NA_complex_.  Similarly, cumsum(z) correctly
    sums real and imaginary parts separately, i.e., without
    "crosstalk" in case of NAs.
  * On Alpine Linux iconv() now maps "latin2", "latin-2", "latin9"
    and "latin-9" to encoding names the OS knows about
    (case-insensitively).
  * iconv(sub = "Unicode") now always zero-pads to four (hex) digits,
    rather than to 4 or 8.  (This seems to have become the convention
    once Unicode restricted the number of Unicode points to 2^21 - 1
    and so will never need more than 6 digits.)
  * NCOL(NULL) now returns 0 instead of 1, for consistency with
    cbind().
  * The information for the Euro glyph missing from the Adobe .afm
    files for the Courier, Helvetica and Times families has been
    copied from their URW equivalents - this will improve vertical
    centring in the pdf() and postscript() devices.
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.12.0.  The changes are almost entirely cosmetic.
  * The included LAPACK sources have been updated to version 3.12.0
    and some further double-complex routines added.
  * There are new font families for the 2014--5 URW 2.0 fonts (see
    ?pdf) which are included in recent versions of Ghostscript.
    These have font widths for most Greek glyphs and a few others
    which were missing from the original versions (whose font
    families remain available for reproducibility, although
    Ghostscript-based viewers will render using the 2.0 versions).
  * Improve the large-n efficiency of as.matrix(&lt;dist&gt;), thanks an R
    contributors effort, notably by Tim Taylor and Heather Turner,
    see PR#18660.
  * The default and numeric methods of all.equal() get a check.class
    option.
  * zapsmall() gets new optional arguments, function mFUN and min.d,
    for extra flexibility; fulfills a wish in PR#18199.  Also, it is
    now an implicit S4 generic in package methods.
  * The Rd filter for aspell() gains an ignore argument.
  * New generic function sort_by(), primarily useful for the
    data.frame method which can be used to sort rows of a data frame
    by one or more columns.
  * The icence headers for the RPC code in src/extra/xdr have been
    updated to use the GPL-compatible licence published by Oracle
    America in 2010.
  * New function pkg2HTML() in tools to create single-page HTML
    reference manuals for R packages.
  * The byte code evaluator now uses less C stack space for recursive
    calls to byte-compiled functions. It also makes more of an effort
    to avoid allocations for scalar return values.
  * New completion option backtick (disabled by default) allows
    non-syntactic completions to be wrapped in backquotes. This is
    currently only useful for Jupyter notebooks via the IRkernel
    package, and may cause problems for other backends.
  INSTALLATION:
  * The parser has been updated to work with bison 3.8.2, which is
    now used for the pre-generated parsers in gram.c, file.c, and
    gramRd.c. A few parser error messages have changed, which may
    affect code that relies on exact messages.
  INSTALLATION on a UNIX-ALIKE:
  * System valgrind headers are now required to use configure option
  - -with-valgrind-instrumentation with value 1 or 2.
  * configure will warn if it encounters a 32-bit build, as that is
    nowadays almost untested.
  * Environment variable R_SYSTEM_ABI is no longer used and so no
    longer recorded in etc/Renviron (it was not on Windows and was
    only ever used when preparing package tools).
  * If the libdeflate library and headers are available, libdeflate
    rather than libz is used to (de)compress R objects in lazy-load
    databases.  Typically tasks spend up to 5% of their time on such
    operations, although creating lazy-data databases is one of the
    exceptions.
    This can be suppressed if the library is available by the
    configure option --without-libdeflate-compression.
  * configure option --enable-lto=check has not worked reliably since
    2019 and has been removed.
  * The minimum autoconf requirement for a maintainer build has been
    increased to autoconf 2.71.
    It is intended to increase this to 2.72 for R 4.5.0: the
    distributed configure file was generated using 2.72.
  * The minimum version requirement for an external LAPACK has been
    reduced to 3.9.0.
  * No default C++ compiler is set if no C++17 compiler is detected:
    there is no longer an automatic fallback to C++14 or C++11.
    Compilers from the last five years should have sufficient
    support: for others macros CXX and CXXSTD can be set in file
    config.site to provide a fallback if needed.
    The Objective-C++ compiler now by default uses the standard
    selected by R for C++ (currently C++17) rather than the default
    standard for the C++ compiler (which on macOS is still C++98).
  INSTALLATION on macOS:
  * A new configure option --with-newAccelerate makes use of Apple's
    'new' BLAS / LAPACK interfaces in their Accelerate framework.
    Those interfaces are only available in macOS 13.3 or later, and
    building requires SDK 13.3 or later (from the Command Line Tools
    or Xcode 14.3 or later).
    By default the option uses new Accelerate for BLAS calls: to also
    use it for LAPACK use option --with-newAccelerate=lapack.  The
    later interfaces provide LAPACK 3.9.1 rather than 3.2.1: 3.9.1 is
    from 2021-04 and does not include the improved algorithms
    introduced in LAPACK 3.10.0 (including for BLAS calls).
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools44, an update of the Rtools43 toolchain.  It is
    based on GCC 13 and newer versions of MinGW-W64, binutils and
    libraries (targeting 64-bit Intel CPUs).  R-devel can no longer
    be built using Rtools43 without changes.
  * Rtools44 has experimental support for 64-bit ARM (aarch64) CPUs
    _via_ the LLVM 17 toolchain using lld, clang/flang-new and
    libc++.
  UTILITIES:
  * R CMD check notes when S4-style exports are used without
    declaring a strong dependence on package methods.
  * tools::checkRd() (used by R CMD check) detects more problems with
    \Sexpr-based dynamic content, including bad nesting of \Sexprs
    and invalid arguments.
  * tools::checkRd() now reports Rd titles and section names ending
    in a period; this is ignored by R CMD check unless environment
    variable _R_CHECK_RD_CHECKRD_MINLEVEL_ is set to -5 or smaller.
  * R CMD check now notes Rd files without an \alias, as long
    documented in 'Writing R Extensions' §1.3.1.  The check for a
    missing \description has been moved from tools::checkRd() to
    tools::checkRdContents().
  * R CMD check now visits inst/NEWS.Rd and OS-specific man
    subdirectories when checking Rd files.
  * tools::checkDocFiles() and tools::checkRdContents() now also
    check internal Rd files by default, but "specially" (ignoring
    missing documentation of arguments).
  * R CMD Rdiff gets option --useEx.
  * R CMD check now warns on non-portable uses of Fortran KIND such
    as INTEGER(KIND=4) and REAL(KIND=8).
    To see the failing lines set environment variable
    _R_CHECK_FORTRAN_KIND_DETAILS_ to a true value.
  * When checking Rd files, R CMD check now notes some of the "lost
    braces" that tools::checkRd() finds.  Typical problems are Rd
    macros missing the initial backslash (e.g., code{...}), in-text
    set notation (e.g., {1, 2}, where the braces need escaping), and
    \itemize lists with \describe-style entries of the form
    \item{label}{description}.
  * R CMD INSTALL (and hence check) will compile C++ code with
  - DR_NO_REMAP if environment variable _R_CXX_USE_NO_REMAP_ is set
    to a true value.  It is planned that this will in future become
    the default for compiling C++.
  * The new built-in Rd macro \dontdiff{} can be used to mark example
    code whose output should be ignored when comparing check output
    to reference output (tests/Examples/&lt;pkg&gt;-Ex.Rout.save).  The
    \dontdiff tag, like \donttest, is _not_ shown on the rendered
    help page, so provides a clean alternative to ##
    IGNORE_RDIFF_(BEGIN|END) comments.
  * R CMD build when there is no NAMESPACE, now uses the recommended
    exportPattern("^[^.]"), instead of exporting everything.
  * R CMD check now warns about non-ASCII characters in the NAMESPACE
    file (in addition to R files). Such packages are not portable and
    may fail to install on some platforms.
  C-LEVEL FACILITIES:
  * Headers R_ext/Applic.h and R-ext/Linpack.h used to include
    R_ext/BLAS.h although this was undocumented and unneeded by their
    documented entry points.  They no longer do so.
  * New function R_missing(), factored out from do_missing(), used to
    fix PR#18579.
  * SEXP type S4SXP has been renamed to OBJSXP to support
    experimenting with alternative object systems.  The S4SXP value
    can still be used in C code but is now deprecated.  Based on
    contributions from the R Consortium's Object-Oriented Programming
    Working Group.
  * New function pow1p(x,y) for accurate (1+x)^y.
  * mkCharLenCE was incorrectly documented to take a size_t length
    but was implemented with int (and character strings in R are
    limited to 2^31 - 1 bytes).
  DEPRECATED AND DEFUNCT:
  * data() no longer handles zipped data from long-defunct (since R
    2.13.0) --use-zip-data installations.
  * The legacy graphics devices pictex() and xfig() are now
    deprecated.  They do not support recent graphics enhancements and
    their font handling is rudimentary. The intention is to retain
    them for historical interest as long as they remain somewhat
    functional.
  * Support for encoding = "MacRoman" has been removed from the pdf()
    and postscript() devices - this was a legacy encoding supporting
    classic macOS up to 2001 and no longer has universal libiconv
    support.
  * is.R() is deprecated as no other S dialect is known to be in use
    (and this could only identify historical dialects, not future
    ones).
    Further information on calls can be obtained by setting the
    environment variable _R_DEPRECATED_IS_R_ to error which turns the
    deprecation warning into an error and so by default gives a
    traceback.  (This is done by R CMD check --as-cran.)
  * UseMethod() no longer forwards local variables assigned in the
    generic function into method call environments before evaluating
    the method body. This makes method calls behave more like
    standard function calls and makes method code easier to analyze
    correctly.
  * The twelve as.data.frame.&lt;class&gt;() methods which were deprecated
    only via _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ and in R CMD
    check --as-cran are formally deprecated now in favour of calling
    as.data.frame() or as.data.frame.vector().  The deprecation
    "check" now works also when as.data.frame() is S4 generic thanks
    to Ivan Krylov.
  * The default method for the directional comparison operators &lt;, &gt;,
    &lt;=, and &gt;= now signals an error when one of the operands is a
    language object, i.e. a symbol or a call.
  * For terms.formula(), deprecate abb and neg.out arguments
    _formally_ in addition to just documenting it.
  BUG FIXES:
  * The methods package is more robust to not being attached to the
    search path.  More work needs to be done.
  * pairwise.t.test() misbehaved when subgroups had 0 DF for
    variance, even with pool.sd = TRUE.  (PR#18594 by Jack Berry).
  * Probability distribution functions [dpq]&lt;distrib&gt;(x, *), but also
    bessel[IKJY](x, .) now consistently preserve attributes(x) when
    length(x) == 0, e.g., for a 2 x 0 matrix, thanks to Karolis
    Koncevičius' report PR#18509.
  * Group "Summary" computations such as sum(1:3, 4, na.rm = 5, NA,
    7, na.rm = LL) now give an error instead of either 17 or NN for
    LL true or false, as proposed by Ivan Krylov on the R-devel
    mailing list.  (This also means it is now an error to specify
    na.rm more than once.)
  * as.complex(x) now returns complex(real = x, imaginary = 0) for
    _all_ numerical and logical x, notably also for NA or
    NA_integer_.
  * Directories are now omitted by file.copy(, recursive = FALSE) and
    in file.append() (PR#17337).
  * gsub() and sub() are now more robust to integer overflow when
    reporting errors caused by too large input strings (PR#18346).
  * Top-level handlers are now more robust to attempts to remove a
    handler whilst handlers are running (PR#18508).
  * The handling of Alt+F4 in dialogs created on Windows using
    GraphApp has been fixed (PR#13870).
  * density() more consistently computes grid values for the
    FFT-based convolution, following Robert Schlicht's analysis and
    proposal in PR#18337, correcting density values typically by a
    factor of about 0.999.  Argument old.coords = TRUE provides back
    compatibility.
  * palette.colors() gains a name argument that defaults to FALSE
    controlling whether the vector of colours that is returned has
    names (where possible).  PR#18529.
  * tools::xgettext() no longer extracts the (non-translatable) class
    names from warningCondition and errorCondition calls.
  * S3method(&lt;gen&gt;, &lt;class&gt;, &lt;func&gt;) in the NAMESPACE file now works
    (again) when &lt;func&gt; is visible from the namespace, e.g.,
    imported, or in base.
  * getParseData(f) now also works for a function defined in the
    first of several &lt;pkg&gt;/R/*.R source files, thanks to Kirill
    Müller's report and Duncan Murdoch's patch in PR#16756.
  * Rd \Sexpr macros with nested #ifdef conditionals were not
    processed.
  * A non-blocking connection with non-default encoding (such as a
    socket) now correctly returns from readLines() after new data has
    arrived also when its EOF had been reached previously.  Thanks to
    Peter Meilstrup's report on R-devel and Ivan Krylov's report and
    patch proposal in PR#18555.
  * tools::checkRdContents() failed to detect empty argument
    descriptions when they spanned multiple lines, including those
    generated by prompt().  These cases are now noted by R CMD check.
  * Plain-text help no longer outputs spurious colons in the
    arguments list (for multi-line \item labels in the Rd source).
  * kappa() and rcond() work correctly in more cases; kappa(., norm =
    "2") now warns that it computes the 1-norm with (default) exact =
    FALSE; prompted by Mikael Jagan's quite comprehensive PR#18543.
  * Rd skeletons generated by prompt() or promptData() now use a
    dummy title (so R CMD build works).  tools::checkRdContents() has
    been updated to detect such template leftovers, including from
    promptPackage().
  * When S4 method dispatch fails because no method was found, the
    error message now includes the signature argument names; thanks
    to Michael Chirico's proposal on the R-devel list.
  * withAutoprint({ .. }) now preserves srcrefs previously lost,
    thanks to Andrew Simmons' report plus fix in PR#18572.
  * transform.data.frame() no longer adjusts names; in particular,
    untransformed variables are kept as-is, including those with
    syntactically invalid names (PR#17890).
  * The keep.source option for Rd \Sexpr blocks is no longer ignored.
  * The formula methods for t.test() and wilcox.test() now catch when
    paired is passed, addressing PR#14359; use Pair(x1, x2) ~ 1 for a
    paired test.
  * The level reported in the browser prompt was often too large. It
    now shows the number of browser contexts on the stack.
  * For cbind() and rbind(), the optional deparse.level argument is
    now properly passed to methods, thanks to Mikael Jagan's PR#18579
    and comments there.
  * Some error and warning messages for large ('long vector')
    matrix(v, nr, nc) and dim(m) &lt;- d are now correct about sizes,
    using long long formatting, fixing PR#18612 (and more) reported
    by Mikael Jagan.
  * readChar(useBytes = TRUE) now terminates strings even when the
    underlying connection uses extra spaces in the input buffer.
    This fixes problems with extra garbage seen with gzip
    connections, PR#18605.
  * Named capture in PCRE regular expressions now works also with
    more than 127 named groups (PR#18588).
  * Datetime functions are now robust against long jumps when dealing
    with internal time zone changes.  This avoids confusing warnings
    about an invalid time zone, previously triggered by turning
    warnings into errors or handling them via tryCatch (PR#17966,
    PR#17780).
  * Datetime functions now restore even an empty TZ environment
    variable after internal time zone changes (PR#17724).  This makes
    results of datetime functions with this (typically unintentional)
    setting more predictable.
  * drop.terms(*) now drops response as by default, keep.response =
    FALSE, fixing PR#18564 thanks to Mikael Jagan.
  * dummy.coef(.) now also works for lm()-models with character
    categorical predictor variables rather than factor ones, fixing
    PR#18635 reported by Jinsong Zhao.
  * formals(f) &lt;- formals(f) now also works for a function w/o
    arguments and atomic _constant_ body(f).
  * Correct as.function(&lt;invalid list&gt;, .)'s error message.
  * removeSource() is yet more thorough in finding and removing
    "srcref" and the other source references from parsed R language
    chunks, fixing PR#18638 thanks to Andrew Simmons.
  * dgeom() is more accurate now, notably when its result is very
    small, fixing PR#18642 thanks to the proposal of Morten Welinder,
    also improving other instances where C level binom_raw(x, n, ..)
    has x == 0 or x== n.
  * warning() with options(warn = 1) has improved output for
    multi-line messages.
  * axis.Date() and axis.POSIXct() now respect the par("lab") setting
    for the number of pretty() intervals.
  * Comparisons for language objects (which are based on deparsing)
    are now more careful about using accurate deparsed results
    (PR#18676).
  * Plain-text help (Rd2txt) now correctly preserves blank lines
    following single-line \dontrun code.
  * &lt;POSIXlt&gt;[*] no longer sets wrong "balanced" attribute, fixing
    PR#18681 thanks to Mikael Jagan.
  * str(&lt;classed-call&gt;) now deparses the call as expected, fixing
    PR#18684, reported by Dave Slager.
  * In Rd examples, code following the closing brace of a \dontrun,
    \dontshow or \donttest tag on the same line is no longer skipped
    when R CMD check runs the examples.
  * as.data.frame(matrix(*, ncol=0)) now gets valid names() and
    colnames(); reported by Davis Vaughan on the R-devel list.
  * Internal Mathlib function stirlerr(n) is now almost fully
    (52-bit) accurate for all n &gt;= ~5.9 and more accurate also in the
    range 1 -- 5.9.  This entails small ("after 12th decimal")
    changes in density functions, e.g., dgamma() in _some_ regions of
    their support.  The fix was partly prompted by Morten Welinder's
    PR#18640.
  * Numbers like 9876543.2 are now considered non-integer by Mathlib
    internal R_nonint(), amending original fix of PR#15734.
  * Rd comment lines no longer cause broken paragraphs in the
    rendered PDF and plain-text help. In code blocks, pure comment
    lines (starting with %) no longer produce an empty line.
  * xtabs(Freq ~ .) now consistently defaults to na.action = na.pass,
    using na.rm = FALSE (added as an argument) when summing over Freq
    (PR#17770).
  * tools::testInstalledPackage() is no longer silent about failures
    from running examples or tests and its return code no longer
    ignores failures from checking vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1718366400">- CHANGES IN R 4.4.1:
  C-LEVEL FACILITIES:
  * Functions R_atof and R_strtod declared in header R_ext/Utils.h
    are now documented in 'Writing R Extensions' and so formally part
    of the API.
  * The non-API entry points Rf_setSVector, Rf_StringFalse,
    Rf_StringTrue and Rf_isBlankString have been added to those
    reported by R CMD check.
  * The new function Rf_allocLang is now available. This provides an
    alternative to the idiom of calling Rf_allocList followed by
    SET_TYPEOF.
  UTILITIES:
  * R CMD check now reports as warnings what gfortran calls 'Fortran
    2018 deleted features', all of which have long been marked as
    'obsolescent' and some of which were deleted in Fortran 2008 or
    earlier.  Fortran compilers are no longer required to support
    these.
  BUG FIXES:
  * as.numeric(), scan(), type.convert() and other places which use
    the internal C function R_strtod now require a _non-empty_ digit
    sequence in a decimal or binary exponent.  This aligns with the
    C/POSIX standard for strtod and with ?NumericConstants.
  * as.data.frame(m, make.names=NA) now works correctly for a matrix
    m with NA's in row names.
  * The error message from &lt;POSIXlt&gt;[["hour"]] and similar now
    mentions *[[, "hour"]], as wished for in PR#17409 and proposed by
    Michael Chirico.
  * qbinom() and potentially qpois(), qnbinom(), no longer sometimes
    fail accurate inversion (of pbinom(), etc), thanks to Christopher
    Chang's report and patch in PR#18711.
  * The internal help server on Windows can again serve requests sent
    in quick succession, fixing a regression in R 4.4.0.
  * debugcall(&lt;S3Generic&gt;()) now also works when a corresponding
    S4-generic version is in the methods cache (PR#18143).
  * Package tools' toTitleCase(ch0) now returns character(0) when ch0
    is of zero length; fixing PR#18724, reported by David Hugh Jones.
  * R CMD check is no longer broken (without a check result and no
    explanation in 00check.log) for a package which declares an
    invalid VignetteBuilder in DESCRIPTION but has no vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1730376000">- CHANGES IN R 4.4.2:
  C-LEVEL FACILITIES:
  * The S-compatibility macros F77_COM and F77_COMDECL defined in
    header R_ext/RS.h are deprecated and will be removed shortly.  We
    could find no record of their use.
  BUG FIXES:
  * Mathlib function lgammacor(x) no longer warns about underflow to
    zero for large x.
  * Text widths and heights were incorrectly reported by the Quartz
    device if the drawing context didn't exist yet (typically when
    drawing off-screen to a window that is yet to appear, see
    PR#18591).
  * The Quartz device could segfault in cases where paths with spaces
    are used in the new glyph drawing API.  Thanks to Tomek
    Gieorgijewski (PR#18758).
  * On macOS in R CRAN builds, it is again possible to read
    little-endian UTF-16 text with a BOM from a connection using
    encoding="UTF-16".  Users building R from source should avoid
    using the system libiconv in macOS 14.1 and later.
  * methods' internal .requirePackage() now re-enables primitive
    method dispatch when needed; thanks to Ivan Krylov for
    demystifying CRAN package check failures on the R-devel mailing
    list.</changelog>
</package>
<package pkgid="3da380580a443dcd56a1184e2d6de51e1879e312690faaefca6dc902549fae716a5cbdb41fd43fddb3dc0d86c0a30d4920d68418ddfc6c34246a964021f98781" name="R-class" arch="i586">
  <version epoch="0" ver="7.3.22" rel="51.0.2.2.sr20241103"/>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1620302400">- To get in sync with d:l:R:autoCRAN the Matrix package's split
  in -devel was reversed.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339200">- improved spec file according to comments of dimstar in
  https://build.opensuse.org/request/show/892685</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339201">- CHANGES IN R 4.1.0:
  FUTURE DIRECTIONS:
  * It is planned that the 4.1.x series will be the last to support
    32-bit Windows, with production of binary packages for that
    series continuing until early 2023.
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Data set esoph in package datasets now provides the correct
    numbers of controls; previously it had the numbers of cases added
    to these.  (Reported by Alexander Fowler in PR#17964.)
  NEW FEATURES:
  * www.omegahat.net is no longer one of the repositories known by
    default to setRepositories().  (Nowadays it only provides source
    packages and is often unavailable.)
  * Function package_dependencies() (in package tools) can now use
    different dependency types for direct and recursive dependencies.
  * The checking of the size of tarball in R CMD check --as-cran
    &lt;pkg&gt; may be tweaked via the new environment variable
    _R_CHECK_CRAN_INCOMING_TARBALL_THRESHOLD_, as suggested in
    PR#17777 by Jan Gorecki.
  * Using c() to combine a factor with other factors now gives a
    factor, an ordered factor when combining ordered factors with
    identical levels.
  * apply() gains a simplify argument to allow disabling of
    simplification of results.
  * The format() method for class "ftable" gets a new option justify.
    (Suggested by Thomas Soeiro.)
  * New ...names() utility.  (Proposed by Neal Fultz in PR#17705.)
  * type.convert() now warns when its as.is argument is not
    specified, as the help file always said it _should_.  In that
    case, the default is changed to TRUE in line with its change in
    read.table() (related to stringsAsFactor) in R 4.0.0.
  * When printing list arrays, classed objects are now shown _via_
    their format() value if this is a short enough character string,
    or by giving the first elements of their class vector and their
    length.
  * capabilities() gets new entry "Rprof" which is TRUE when R has
    been configured with the equivalent of --enable-R-profiling (as
    it is by default).  (Related to Michael Orlitzky's report
    PR#17836.)
  * str(xS4) now also shows extraneous attributes of an S4 object
    xS4.
  * Rudimentary support for vi-style tags in rtags() and R CMD rtags
    has been added.  (Based on a patch from Neal Fultz in PR#17214.)
  * checkRdContents() is now exported from tools; it and also
    checkDocFiles() have a new option chkInternal allowing to check
    Rd files marked with keyword "internal" as well.  The latter can
    be activated for R CMD check via environment variable
    _R_CHECK_RD_INTERNAL_TOO_.
  * New functions numToBits() and numToInts() extend the raw
    conversion utilities to (double precision) numeric.
  * Functions URLencode() and URLdecode() in package utils now work
    on vectors of URIs.  (Based on patch from Bob Rudis submitted
    with PR#17873.)
  * path.expand() can expand ~user on most Unix-alikes even when
    readline is not in use.  It tries harder to expand ~, for example
    should environment variable HOME be unset.
  * For HTML help (both dynamic and static), Rd file links to help
    pages in external packages are now treated as references to
    topics rather than file names, and fall back to a file link only
    if the topic is not found in the target package. The earlier rule
    which prioritized file names over topics can be restored by
    setting the environment variable _R_HELP_LINKS_TO_TOPICS_ to a
    false value.
  * c() now removes NULL arguments before dispatching to methods,
    thus simplifying the implementation of c() methods, _but_ for
    back compatibility keeps NULL when it is the first argument.
    (From a report and patch proposal by Lionel Henry in PR#17900.)
  * Vectorize()'s result function's environment no longer keeps
    unneeded objects.
  * Function ...elt() now propagates visibility consistently with
    ..n.  (Thanks to Lionel Henry's PR#17905.)
  * capture.output() no longer uses non-standard evaluation to
    evaluate its arguments.  This makes evaluation of functions like
    parent.frame() more consistent.  (Thanks to Lionel Henry's
    PR#17907.)
  * packBits(bits, type="double") now works as inverse of
    numToBits().  (Thanks to Bill Dunlap's proposal in PR#17914.)
  * curlGetHeaders() has two new arguments, timeout to specify the
    timeout for that call (overriding getOption("timeout")) and TLS
    to specify the minimum TLS protocol version to be used for
    https:// URIs (_inter alia_ providing a means to check for sites
    using deprecated TLS versions 1.0 and 1.1).
  * For nls(), an optional constant scaleOffset may be added to the
    denominator of the relative offset convergence test for cases
    where the fit of a model is expected to be exact, thanks to a
    proposal by John Nash.  nls(*, trace=TRUE) now also shows the
    convergence criterion.
  * Numeric differentiation _via_ numericDeriv() gets new optional
    arguments eps and central, the latter for taking central divided
    differences.  The latter can be activated for nls() via
    nls.control(nDcentral = TRUE).
  * nls() now passes the trace and control arguments to getInitial(),
    notably for all self-starting models, so these can also be fit in
    zero-noise situations via a scaleOffset.  For this reason, the
    initial function of a selfStart model must now have ... in its
    argument list.
  * bquote(splice = TRUE) can now splice expression vectors with
    attributes: this makes it possible to splice the result of
    parse(keep.source = TRUE).  (Report and patch provided by Lionel
    Henry in PR#17869.)
  * textConnection() gets an optional name argument.
  * get(), exists(), and get0() now signal an error if the first
    argument has length greater than 1.  Previously additional
    elements were silently ignored.  (Suggested by Antoine Fabri on
    R-devel.)
  * R now provides a shorthand notation for creating functions, e.g.
    \(x) x + 1 is parsed as function(x) x + 1.
  * R now provides a simple native forward pipe syntax |&gt;.  The
    simple form of the forward pipe inserts the left-hand side as the
    first argument in the right-hand side call.  The pipe
    implementation as a syntax transformation was motivated by
    suggestions from Jim Hester and Lionel Henry.
  * all.equal(f, g) for functions now by default also compares their
    environment(.)s, notably via new all.equal method for class
    function.  Comparison of nls() fits, e.g., may now need
    all.equal(m1, m2, check.environment = FALSE).
  * .libPaths() gets a new option include.site, allowing to _not_
    include the site library.  (Thanks to Dario Strbenac's suggestion
    and Gabe Becker's PR#18016.)
  * Lithuanian translations are now available.  (Thanks to Rimantas
    Zakauskas.)
  * names() now works for DOTSXP objects.  On the other hand, in
    R-lang, the R language manual, we now warn against relying on the
    structure or even existence of such dot-dot-dot objects.
  * all.equal() no longer gives an error on DOTSXP objects.
  * capabilities("cairo") now applies only to the file-based devices
    as it is now possible (if very unusual) to build R with Cairo
    support for those but not for X11().
  * There is optional support for tracing the progress of
    loadNamespace() - see its help.
  * (Not Windows.)  l10n_info() reports an additional element, the
    name of the encoding as reported by the OS (which may differ from
    the encoding part (if any) of the result from
    Sys.getlocale("LC_CTYPE").
  * New function gregexec() which generalizes regexec() to find _all_
    disjoint matches and well as all substrings corresponding to
    parenthesized subexpressions of the given regular expression.
    (Contributed by Brodie Gaslam.)
  * New function charClass() in package utils to query the
    wide-character classification functions in use (such as
    iswprint).
  * The names of quantile()'s result no longer depend on the global
    getOption("digits"), but quantile() gets a new optional argument
    digits = 7 instead.
  * grep(), sub(), regexp and variants work considerably faster for
    long factors with few levels.  (Thanks to Michael Chirico's
    PR#18063.)
  * Provide grouping of x11() graphics windows within a window
    manager such as Gnome or Unity; thanks to a patch by Ivan Krylov
    posted to R-devel.
  * The split() method for class data.frame now allows the f argument
    to be specified as a formula.
  * sprintf now warns on arguments unused by the format string.
  * New palettes "Rocket" and "Mako" for hcl.colors() (approximating
    palettes of the same name from the 'viridisLite' package).
    Contributed by Achim Zeileis.
  * The base environment and its namespace are now locked (so one can
    no longer add bindings to these or remove from these).
  * Rterm handling of multi-byte characters has been improved,
    allowing use of such characters when supported by the current
    locale.
  * Rterm now accepts ALT+ +xxxxxxxx sequences to enter Unicode
    characters as hex digits.
  * Environment variable LC_ALL on Windows now takes precedence over
    LC_CTYPE and variables for other supported categories, matching
    the POSIX behaviour.
  * duplicated() and anyDuplicated() are now optimized for integer
    and real vectors that are known to be sorted via the ALTREP
    framework. Contributed by Gabriel Becker via PR#17993.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 14
    and so packages that provide graphics devices should be
    reinstalled.
  * Graphics devices should now specify deviceVersion to indicate
    what version of the graphics engine they support.
  * Graphics devices can now specify deviceClip.  If TRUE, the
    graphics engine will never perform any clipping of output itself.
    The clipping that the graphics engine does perform (for both
    canClip = TRUE and canClip = FALSE) has been improved to avoid
    producing unnecessary artifacts in clipped output.
  * The grid package now allows gpar(fill) to be a linearGradient(),
    a radialGradient(), or a pattern().  The viewport(clip) can now
    also be a grob, which defines a clipping path, and there is a new
    viewport(mask) that can also be a grob, which defines a mask.
    These new features are only supported so far on the Cairo-based
    graphics devices and on the pdf() device.
  * (Not Windows.)  A warning is given when a Cairo-based type is
    specified for a png(), jpeg(), tiff() or bmp() device but Cairo
    is unsupported (so type = "Xlib" is tried instead).
  * grSoftVersion() now reports the versions of FreeType and
    FontConfig if they are used directly (not _via_ Pango), as is
    most commonly done on macOS.
  C-LEVEL FACILITIES:
  * The _standalone_ libRmath math library and R's C API now provide
    log1pexp() again as documented, and gain log1mexp().
  INSTALLATION on a UNIX-ALIKE:
  * configure checks for a program pkgconf if program pkg-config is
    not found.  These are now only looked for on the path (like
    almost all other programs) so if needed specify a full path to
    the command in PKG_CONFIG, for example in file config.site.
  * C99 function iswblank is required - it was last seen missing ca
    2003 so the workaround has been removed.
  * There are new configure options --with-internal-iswxxxxx,
  - -with-internal-towlower and --with-internal-wcwidth which allows
    the system functions for wide-character classification,
    case-switching and width (wcwidth and wcswidth) to be replaced by
    internal ones.  The first has long been used on macOS, AIX (and
    Windows) but this enables it to be unselected there and selected
    for other platforms (it is the new default on Solaris).  The
    second is new in this version of R and is selected by default on
    macOS and Solaris.  The third has long been the default and
    remains so as it contains customizations for East Asian
    languages.
    System versions of these functions are often minimally
    implemented (sometimes only for ASCII characters) and may not
    cover the full range of Unicode points: for example Solaris (and
    Windows) only cover the Basic Multilingual Plane.
  * Cairo installations without X11 are more likely to be detected by
    configure, when the file-based Cairo graphics devices will be
    available but not X11(type = "cairo").
  * There is a new configure option --with-static-cairo which is the
    default on macOS.  This should be used when only static cairo
    (and where relevant, Pango) libraries are available.
  * Cairo-based graphics devices on platforms without Pango but with
    FreeType/FontConfig will make use of the latter for font
    selection.
  LINK-TIME OPTIMIZATION on a UNIX-ALIKE:
  * Configuring with flag --enable-lto=R now also uses LTO when
    installing the recommended packages.
  * R CMD INSTALL and R CMD SHLIB have a new flag --use-LTO to use
    LTO when compiling code, for use with R configured with
  - -enable-lto=R.  For R configured with --enable-lto, they have
    the new flag --no-use-LTO.
    Packages can opt in or out of LTO compilation _via_ a UseLTO
    field in the DESCRIPTION file.  (As usual this can be overridden
    by the command-line flags.)
  BUILDING R on Windows:
  * for GCC &gt;= 8, FC_LEN_T is defined in config.h and hence character
    lengths are passed from C to Fortran in _inter alia_ BLAS and
    LAPACK calls.
  * There is a new text file src/gnuwin32/README.compilation, which
    outlines how C/Fortran code compilation is organized and
    documents new features:
  * R can be built with Link-Time Optimization with a suitable
    compiler - doing so with GCC 9.2 showed several
    inconsistencies which have been corrected.
  * There is support for cross-compiling the C and Fortran code
    in R and standard packages on suitable (Linux) platforms.
    This is mainly intended to allow developers to test later
    versions of compilers - for example using GCC 9.2 or 10.x has
    detected issues that GCC 8.3 in Rtools40 does not.
  * There is experimental support for cross-building R packages
    with C, C++ and/or Fortran code.
  * The R installer can now be optionally built to support a single
    architecture (only 64-bit or only 32-bit).
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++14 where
    available (which it is on all currently checked platforms): if
    not (as before) C++11 is used if available otherwise C++ is not
    supported.
    Packages which specify C++11 will still be installed using C++11.
    C++14 compilers may give deprecation warnings, most often for
    std::random_shuffle (deprecated in C++14 and removed in C++17).
    Either specify C++11 (see 'Writing R Extensions') or modernize
    the code and if needed specify C++14.  The latter has been
    supported since R 3.4.0 so the package's DESCRIPTION would need
    to include something like
    Depends: R (&gt;= 3.4)
  PACKAGE INSTALLATION on Windows:
  * R CMD INSTALL and R CMD SHLIB make use of their flag --use-LTO
    when the LTO_OPT make macro is set in file etc/${R_ARCH}/Makeconf
    or in a personal/site Makevars file.  (For details see 'Writing R
    Extensions' SS4.5.)
    This provides a valuable check on code consistency.  It does work
    with GCC 8.3 as in Rtools40, but that does not detect everything
    the CRAN checks with current GCC do.
  PACKAGE INSTALLATION on macOS:
  * The default personal library directory on builds with
  - -enable-aqua (including CRAN builds) now differs by CPU type,
    one of
    ~/Library/R/x86_64/x.y/library
    ~/Library/R/arm64/x.y/library
    This uses the CPU type R (and hence the packages) were built for,
    so when a x86_64 build of R is run under Rosetta emulation on an
    arm64 Mac, the first is used.
  UTILITIES:
  * R CMD check can now scan package functions for bogus return
    statements, which were possibly intended as return() calls (wish
    of PR#17180, patch by Sebastian Meyer). This check can be
    activated via the new environment variable
    _R_CHECK_BOGUS_RETURN_, true for --as-cran.
  * R CMD build omits tarballs and binaries of previous builds from
    the top-level package directory.  (PR#17828, patch by Sebastian
    Meyer.)
  * R CMD check now runs sanity checks on the use of LazyData, for
    example that a data directory is present and that
    LazyDataCompression is not specified without LazyData and has a
    documented value.  For packages with large LazyData databases
    without specifying LazyDataCompression, there is a reference to
    the code given in 'Writing R Extensions' SS1.1.6 to test the
    choice of compression (as in all the CRAN packages tested a
    non-default method was preferred).
  * R CMD build removes LazyData and LazyDataCompression fields from
    the DESCRIPTION file of packages without a data directory.
  ENCODING-RELATED CHANGES:
  * The parser now treats \Unnnnnnnn escapes larger than the upper
    limit for Unicode points (\U10FFFF) as an error as they cannot be
    represented by valid UTF-8.
    Where such escapes are used for outputting non-printable
    (including unassigned) characters, 6 hex digits are used (rather
    than 8 with leading zeros).  For clarity, braces are used, for
    example \U{0effff}.
  * The parser now looks for non-ASCII spaces on Solaris (as
    previously on most other OSes).
  * There are warnings (including from the parser) on the use of
    unpaired surrogate Unicode points such as \uD834.  (These cannot
    be converted to valid UTF-8.)
  * Functions nchar(), tolower(), toupper() and chartr() and those
    using regular expressions have more support for inputs with a
    marked Latin-1 encoding.
  * The character-classification functions used (by default) to
    replace the system iswxxxxx functions on Windows, macOS and AIX
    have been updated to Unicode 13.0.0.
    The character-width tables have been updated to include new
    assignments in Unicode 13.0.0.
  * The code for evaluating default (extended) regular expressions
    now uses the same character-classification functions as the rest
    of R (previously they differed on Windows, macOS and AIX).
  * There is a build-time option to replace the system's
    wide-character wctrans C function by tables shipped with R: use
    configure option --with-internal-towlower or (on Windows)
  - DUSE_RI18N_CASE in CFLAGS when building R.  This may be needed
    to allow tolower() and toupper() to work with Unicode characters
    beyond the Basic Multilingual Plane where not supported by system
    functions (e.g. on Solaris where it is the new default).
  * R is more careful when truncating UTF-8 and other multi-byte
    strings that are too long to be printed, passed to the system or
    libraries or placed into an internal buffer.  Truncation will no
    longer produce incomplete multibyte characters.
  DEPRECATED AND DEFUNCT:
  * Function plclust() from the package stats and
    package.dependencies(), pkgDepends(), getDepList(),
    installFoundDepends(), and vignetteDepends() from package tools
    are defunct.
  * Defunct functions checkNEWS() and readNEWS() from package tools
    and CRAN.packages() from utils have been removed.
  * R CMD config CXXCPP is defunct (it was deprecated in R 3.6.2).
  * parallel::detectCores() drops support for Irix (retired in 2013).
  * The LINPACK argument to chol.default(), chol2inv(),
    solve.default() and svd() has been defunct since R 3.1.0.  It was
    silently ignored up to R 4.0.3 but now gives an error.
  * Subsetting/indexing, such as ddd[*] or ddd$x on a DOTSXP
    (dot-dot-dot) object ddd has been disabled; it worked by accident
    only and was undocumented.
  BUG FIXES:
  * Many more C-level allocations (mainly by malloc and strdup) are
    checked for success with suitable alternative actions.
  * Bug fix for replayPlot(); this was turning off graphics engine
    display list recording if a recorded plot was replayed in the
    same session.  The impact of the bug became visible if resize the
    device after replay OR if attempted another savePlot() after
    replay (empty display list means empty screen on resize or empty
    saved plot).
  * R CMD check etc now warn when a package exports non-existing S4
    classes or methods, also in case of no "methods" presence.
    (Reported by Alex Bertram; reproducible example and patch by
    Sebastian Meyer in PR#16662.)
  * boxplot() now also accepts calls for labels such as ylab, the
    same as plot().  (Reported by Marius Hofert.)
  * The help page for xtabs() now correctly states that addNA is
    setting na.action = na.pass among others.  (Reported as PR#17770
    by Thomas Soeiro.)
  * The R CMD check &lt;pkg&gt; gives a longer and more comprehensible
    message when DESCRIPTION misses dependencies, e.g., in Imports:.
    (Thanks to the contributors of PR#17179.)
  * update.default() now calls the generic update() on the formula to
    work correctly for models with extended formulas.  (As reported
    and suggested by Neal Fultz in PR#17865.)
  * The horizontal position of leaves in a dendrogram is now correct
    also with center = FALSE.  (PR#14938, patch from Sebastian
    Meyer.)
  * all.equal.POSIXt() no longer warns about and subsequently ignores
    inconsistent "tzone" attributes, but describes the difference in
    its return value (PR#17277).  This check can be disabled _via_
    the new argument check.tzone = FALSE as suggested by Sebastian
    Meyer.
  * as.POSIXct() now populates the "tzone" attribute from its tz
    argument when x is a logical vector consisting entirely of NA
    values.
  * x[[2^31]] &lt;- v now works.  (Thanks to the report and patch by
    Suharto Anggono in PR#17330.)
  * In log-scale graphics, axis() ticks and label positions are now
    computed more carefully and symmetrically in their range,
    typically providing _more_ ticks, fulfilling wishes in PR#17936.
    The change really corresponds to an improved axisTicks() (package
    grDevices), potentially influencing grid and lattice, for
    example.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now correct to at
    least five digits where it was catastrophically wrong,
    previously.
  * sum(df) and similar "Summary"- and "Math"-group member functions
    now work for data frames df with logical columns, notably also of
    zero rows.  (Reported to R-devel by Martin "b706".)
  * unsplit() had trouble with tibbles due to unsound use of rep(NA,
    len)-indexing, which should use NA_integer_ (Reported to R-devel
    by Mario Annau.)
  * pnorm(x, log.p = TRUE) underflows to -Inf slightly later.
  * show(&lt;hidden S4 generic&gt;) prints better and without quotes for
    non-hidden S4 generics.
  * read.table() and relatives treated an "NA" column name as missing
    when check.names = FALSE PR#18007.
  * Parsing strings containing UTF-16 surrogate pairs such as
    "\uD834\uDD1E" works better on some (uncommon) platforms.
    sprintf("%X", utf8ToInt("\uD834\uDD1E")) should now give "1D11E"
    on all platforms.
  * identical(x,y) is no longer true for differing DOTSXP objects,
    fixing PR#18032.
  * str() now works correctly for DOTSXP and related exotics, even
    when these are doomed.
    Additionally, it no longer fails for lists with a class and
    "irregular" method definitions such that e.g. lapply(*) will
    necessarily fail, as currently for different igraph objects.
  * Too long lines in environment files (e.g. Renviron) no longer
    crash R. This limit has been increased to 100,000 bytes.
    (PR#18001.)
  * There is a further workaround for FreeType giving incorrect
    italic font faces with cairo-based graphics devices on macOS.
  * add_datalist(*, force = TRUE) (from package tools) now actually
    updates an existing data/datalist file for new content.  (Thanks
    to a report and patch by Sebastian Meyer in PR#18048.)
  * cut.Date() and cut.POSIXt() could produce an empty last interval
    for breaks = "months" or breaks = "years".  (Reported as PR#18053
    by Christopher Carbone.)
  * Detection of the encoding of 'regular' macOS locales such as
    en_US (which is UTF-8) had been broken by a macOS change:
    fortunately these are now rarely used with en_US.UTF-8 being
    preferred.
  * sub() and gsub(pattern, repl, x, *) now keep attributes of x such
    as names() also when pattern is NA (PR#18079).
  * Time differences ("difftime" objects) get a replacement and a
    rep() method to keep "units" consistent.  (Thanks to a report and
    patch by Nicolas Bennett in PR#18066.)
  * The \RdOpts macro, setting defaults for \Sexpr options in an Rd
    file, had been ineffective since R 2.12.0: it now works again.
    (Thanks to a report and patch by Sebastian Meyer in PR#18073.)
  * mclapply and pvec no longer accidentally terminate parallel
    processes started before by mcparallel or related calls in
    package parallel (PR#18078).
  * grep and other functions for evaluating (extended) regular
    expressions handle in Unicode also strings not explicitly flagged
    UTF-8, but flagged native when running in UTF-8 locale.
  * Fixed a crash in fifo implementation on Windows (PR#18031).
  * Binary mode in fifo on Windows is now properly detected from
    argument open (PR#15600, PR#18031).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1622808000">- The line %{__install} -m 755 -d %{_infodir}
  no longer works in TW or Factory.
  But without that line it works everywhere. So this instruction
  was commented out of the spec file.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1628596800">- CHANGES IN R 4.1.1:
  NEW FEATURES:
  * require(pkg, quietly = TRUE) is quieter and in particular does
    not warn if the package is not found.
  DEPRECATED AND DEFUNCT:
  * Use of ftp:// URIs should be regarded as deprecated, with
    on-going support confined to method = "libcurl" and not routinely
    tested.  (Nowadays no major browser supports them.)
  * The non-default method = "internal" is deprecated for http:// and
    ftp:// URIs for both download.file and url.
  * On Windows, method = "wininet" is deprecated for http://,
    https:// and ftp:// URIs for both download.file and url.  (A
    warning is only given for ftp://.)
    For ftp:// URIs the default method is now "libcurl" if available
    (which it is on CRAN builds).
    method = "wininet" remains the default for http:// and https://
    URIs but if libcurl is available, using method = "libcurl" is
    preferred.
  INSTALLATION:
  * make check now works also without a LaTeX installation.  (Thanks
    to Sebastian Meyer's PR#18103.)
  BUG FIXES:
  * make check-devel works again in an R build configured with
  - -without-recommended-packages.
  * qnbinom(p, size, mu) for large size/mu is correct now in a range
    of cases (PR#18095); similarly for the (size, prob)
    parametrization of the negative binomial.  Also qpois() and
    qbinom() are better and or faster for extreme cases.  The
    underlying C code has been modularized and is common to all four
    cases of discrete distributions.
  * gap.axis is now part of the axis() arguments which are passed
    from bxp(), and hence boxplot().  (Thanks to Martin Smith's
    report and suggestions in PR#18109.)
  * .First and .Last can again be set from the site profile.
  * seq.int(from, to, *) and seq.default(..) now work better in large
    range cases where from-to is infinite where the two boundaries
    are finite.
  * all.equal(x,y) now returns TRUE correctly also when several
    entries of abs(x) and abs(y) are close to .Machine$double.xmax,
    the largest finite numeric.
  * model.frame() now clears the object bit when removing the class
    attribute of a value via na.action (PR#18100).
  * charClass() now works with multi-character strings on Windows
    (PR#18104, fixed by Bill Dunlap).
  * encodeString() on Solaris now works again in Latin-1 encoding on
    characters represented differently in UTF-8.  Support for
    surrogate pairs on Solaris has been improved.
  * file.show() on Windows now works with non-ASCII path names
    representable in the current native encoding (PR#18132).
  * Embedded R on Windows can now find R home directory via the
    registry even when installed only for the current user
    (PR#18135).
  * pretty(x) with finite x now returns finite values also in the
    case where the extreme x values are close in size to the maximal
    representable number .Machine$double.xmax.
    Also, it's been tweaked for very small ranges and when a boundary
    is close (or equal) to zero; e.g., pretty(c(0,1e-317)) no longer
    has negative numbers, currently still warning about a very small
    range, and pretty(2^-(1024 - 2^-1/(c(24,10)))) is more accurate.
  * The error message for not finding vignette files when weaving has
    correct file sizes now. (Thanks to Sebastian Meyer's PR#18154.)
  * dnbinom(20, &lt;large&gt;, 1) now correctly gives 0, and similar cases
    are more accurate with underflow precaution.  (Reported by Francisco Vera Alcivar in PR#18072.)</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635163200">- repaired https://bugzilla.suse.com/show_bug.cgi?id=1191380
  (rpmacros now go to rpmmacrodir)
- minor clean-ups in spec file</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635768000">- CHANGES IN R 4.1.2:
  C-LEVEL FACILITIES:
  * The workaround in headers R.h and Rmath.h (using namespace std;)
    for the Oracle Developer Studio compiler is no longer needed now
    C++11 is required so has been removed.  A couple more usages of
    log() (which should have been std::log()) with an int argument
    are reported on Solaris.
  * The undocumented limit of 4095 bytes on messages from the
    S-compatibility macros PROBLEM and MESSAGE is now documented and
    longer messages will be silently truncated rather than
    potentially causing segfaults.
  * If the R_NO_SEGV_HANDLER environment variable is non-empty, the
    signal handler for SEGV/ILL/BUS signals (which offers recovery
    user interface) is not set. This allows more reliable debugging
    of crashes that involve the console.
  DEPRECATED AND DEFUNCT:
  * The legacy S-compatibility macros PROBLEM, MESSAGE, ERROR, WARN,
    WARNING, RECOVER, ... are deprecated and will be hidden in R
    4.2.0. R's native interface of Rf_error and Rf_warning has long
    been preferred.
  BUG FIXES:
  * .mapply(F, dots, .) no longer segfaults when dots is not a list
    and uses match.fun(F) as always documented; reported by Andrew
    Simmons in PR#18164.
  * hist(&lt;Date&gt;, ...) and hist(&lt;POSIXt&gt;, ...)  no longer pass
    arguments for rect() (such as col and density) to axis().
    (Thanks to Sebastian Meyer's PR#18171.)
  * \Sexpr{ch} now preserves Encoding(ch). (Thanks to report and
    patch by Jeroen Ooms in PR#18152.)
  * Setting the RNG to "Marsaglia-Multicarry" e.g., by RNGkind(), now
    warns in more places, thanks to Andr'e Gillibert's report and
    patch in PR#18168.
  * gray(numeric(), alpha=1/2) no longer segfaults, fixing PR#18183,
    reported by Till Krenz.
  * Fixed dnbinom(x, size=&lt;very_small&gt;, .., log=TRUE) regression,
    reported by Martin Morgan.
  * as.Date.POSIXlt(x) now keeps names(x), thanks to Davis Vaughan's
    report and patch in PR#18188.
  * model.response() now strips an "AsIs" class typically, thanks to
    Duncan Murdoch's report and other discussants in PR#18190.
  * try() is considerably faster in case of an error and long call,
    as e.g., from some do.call().  Thanks to Alexander Kaever's
    suggestion posted to R-devel.
  * qqline(y = &lt;object&gt;) such as y=I(.), now works, see also
    PR#18190.
  * Non-integer mgp par() settings are now handled correctly in
    axis() and mtext(), thanks to Mikael Jagan and Duncan Murdoch's
    report and suggestion in PR#18194.
  * formatC(x) returns length zero character() now, rather than ""
    when x is of length zero, as documented, thanks to Davis
    Vaughan's post to R-devel.
  * removeSource(fn) now retains (other) attributes(fn).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1647000000">- CHANGES IN R 4.1.3:
  NEW FEATURES:
  * The default version of Bioconductor has been changed to 3.14.
    (This is used by setRepositories and the menus in GUIs.)
  UTILITIES:
  * R CMD check --as-cran has a workaround for a bug in versions of
    file up to at least 5.41 which mis-identify DBF files last
    changed in 2022 as executables.
  C-LEVEL FACILITIES:
  * The legacy S-compatibility macros SINGLE_* in R_ext/Constants.h
    (included by R.h) are deprecated and will be removed in R 4.2.0.
  BUG FIXES:
  * Initialization of self-starting nls() models with initialization
    functions following the pre-R-4.1.0 API (without the ...
    argument) works again for now, with a deprecation warning.
  * Fixed quoting of ~autodetect~ in Java setting defaults to avoid
    inadvertent user lookup due to leading ~, reported in PR#18231 by
    Harold Gutch.
  * substr(., start, stop) &lt;- v now treats _negative_ stop values
    correctly.  Reported with a patch in PR#18228 by Brodie Gaslam.
  * Subscripting an array x without dimnames by a
    length(dim(x))-column character matrix gave "random" non-sense,
    now an error; reported in PR#18244 by Mikael Jagan.
  * ...names() now matches names(list(...)) closely, fixing PR#18247.
  * all.equal(*, scale = s) now works as intended when length(s) &gt; 1,
    partly thanks to Michael Chirico's PR#18272.
  * print(x) for long vectors x now also works for named atomic
    vectors or lists and prints the correct number when reaching the
    getOption("max.print") limit; partly thanks to a report and
    proposal by Hugh Parsonage to the R-devel list.
  * all.equal(&lt;selfStart&gt;, *) no longer signals a deprecation
    warning.
  * reformulate(*, response=r) gives a helpful error message now when
    length(r) &gt; 1, thanks to Bill Dunlap's PR#18281.
  * Modifying globalCallingHandlers inside withCallingHandlers() now
    works or fails correctly, thanks to Henrik Bengtsson's PR#18257.
  * hist(&lt;Date&gt;, breaks = "days") and hist(&lt;POSIXt&gt;, breaks = "secs")
    no longer fail for inputs of length 1.
  * qbeta(.001, .9, .009) and similar cases now converge correctly
    thanks to Ben Bolker's report in PR#17746.
  * window(x, start, end) no longer wrongly signals "'start' cannot
    be after 'end'", fixing PR#17527 and PR#18291.
  * data() now checks that its (rarely used) list argument is a
    character vector - a couple of packages passed other types and
    gave incorrect results.
  * which() now checks its arr.ind argument is TRUE rather coercing
    to logical and taking the first element - which gave incorrect
    results in package code.
  * model.weights() and model.offset() more carefully extract their
    model components, thanks to Ben Bolker and Tim Taylor's R-devel
    post.
  * list.files(recursive = TRUE) now shows all broken symlinks
    (previously, some of them may have been omitted, PR#18296).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1650628800">- CHANGES IN R 4.2.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * The formula method of aggregate() now matches the generic in
    naming its first argument x (resolving PR#18299 by Thomas
    Soeiro).
    This means that calling aggregate() with a formula as a named
    first argument requires name formula in earlier versions of R and
    name x now, so portable code should not name the argument (code
    in many packages did).
  * Calling &amp;&amp; or || with either argument of length greater than one
    now gives a warning (which it is intended will become an error).
  * Calling if() or while() with a condition of length greater than
    one gives an error rather than a warning.  Consequently,
    environment variable _R_CHECK_LENGTH_1_CONDITION_ no longer has
    any effect.
  * Windows users should consult the WINDOWS section below for some
    profound changes including
  * Support for 32-bit builds has been dropped.
  * UTF-8 locales are used where available.
  * The default locations for the R installation and personal
    library folder have been changed.
    Thanks to Tomas Kalibera for months of work on the Windows port
    for this release.
  NEW FEATURES:
  * matrix(x, n, m) now warns in more cases where length(x) differs
    from n * m, as suggested by Abby Spurdle and Wolfgang Huber in
    Feb 2021 on the R-devel mailing list.
    This warning can be turned into an error by setting environment
    variable _R_CHECK_MATRIX_DATA_ to TRUE: R CMD check --as-cran
    does so unless it is already set.
  * Function file_test() in package utils gains tests for symlinks,
    readability and writability.
  * capabilities("libxml") is now false.
    The description of capabilities("http/ftp") now reflects that it
    refers to the default method, no longer the internal one.
  * simplify2array() gains an except argument for controlling the
    exceptions used by sapply().
  * Environment variables R_LIBS_USER and R_LIBS_SITE are both now
    set to the R system default if unset or empty, and can be set to
    NULL to indicate an empty list of user or site library
    directories.
  * The warning for axis()(-like) calls in cases of relatively small
    ranges (typically in log-scale situations) is slightly improved
    _and_ suppressed from explicit calls to .axisPars() as has always
    been the intention.
  * The contrasts setter function `contrasts&lt;-` gains an explicit
    default how.many = NULL rather than just using missing(how.many).
  * grid.pretty() gains a new optional argument n = 5.
  * There is a new function .pretty() with option bounds as a
    technical-utility version of pretty().  It and pretty() gain a
    new argument f.min with a better than back-compatible default.
  * Function grDevices::axisTicks() and related functions such as
    graphics::axis() work better, notably for the log scale; partly
    because of the pretty() improvements, but also because care is
    taken e.g., when ylim is finite but diff(ylim) is infinite.
  * nclass.FD() gains a digits option.
  * The R Mathlib internal C function bd0() (called indirectly from a
    dozen probability density and distribution functions such as
    dpois(), dbinom(), dgamma(), pgamma() _etc_) has been
    complemented by a more sophisticated and (mostly) more accurate C
    function ebd0(), currently called only by internal dpois_raw()
    improving accuracy for R level dpois() and potentially others
    calling it such as dnbinom(), dgamma() or pgamma().  (Thanks to
    Morten Welinder's PR#15628.)
  * write.ftable() gains sep = " " argument as suggested by Thomas
    Soeiro.
  * The names of the locale categories supported by R's
    Sys.getlocale() and Sys.setlocale() are now provided by variable
    .LC.categories in the base namespace.
  * The Date and POSIXt methods for hist() and the histogram method
    for plot() now also use the new default col = "lightgray" in
    consistency with the corresponding change to hist()'s default for
    R 4.0.0.
  * hist.default() gains new fuzz argument, and the histogram plot
    method no longer uses fractional axis ticks when displaying
    counts ("Frequency").
  * mapply() and hence Map() now also obey the "max-or-0-if-any"
    recycling rule, such that, e.g., Map(`+`, 1:3, 1[0]) is valid
    now.
  * as.character(&lt;obj&gt;) for "hexmode" or "octmode" objects now
    fulfils the important basic rule as.character(x)[j] ===
    as.character(x[j]).
  * The set utility functions, notably intersect() have been tweaked
    to be more consistent and symmetric in their two set arguments,
    also preserving a common mode.
  * substr(ch, start,end) &lt;- new now e.g., preserves names(ch); ditto
    for substring(), thanks to a patch from Brodie Gaslam.
  * plot(&lt;lm&gt;) gains a extend.ylim.f argument, in partial response to
    PR#15285; further PR#17784 is fixed thanks to several
    contributors and a patch by Elin Waring.  The Cook's dist
    contours get customizable via cook.col and cook.lty with a
    different default color and their legend is nicer by default and
    customizable via cook.legendChanges.
  * Attempting to subset an object that is not subsettable now
    signals an error of class notSubsettableError. The
    non-subsettable object is contained in the object field of the
    error condition.
  * Subscript-out-of-bounds errors are now signaled as errors of
    class subscriptOutOfBoundsError.
  * Stack-overflow errors are now signaled as errors inheriting from
    class stackOverflowError. See ?stackOverflowError for more
    details.
  * New partly experimental Sys.setLanguage() utility, solving the
    main problem of PR#18055.
  * gettext() and gettextf() get a new option trim = TRUE which when
    set to false allows translations for strings such as "Execution
    halted\n" typical for C code.
  * An experimental implementation of hash tables is now available.
    See ?hashtab for more details.
  * identical() gains a extptr.as.ref argument for requesting that
    external pointer objects be compared as reference objects.
  * reorder() gets an argument decreasing which it passes to sort()
    for level creation; based on the wish and patch by Thomas Soeiro
    in PR#18243.
  * as.vector() gains a data.frame method which returns a simple
    named list, also clearing a long standing 'FIXME' to enable
    as.vector(&lt;data.frame&gt;, mode="list").  This breaks code relying
    on as.vector(&lt;data.frame&gt;) to return the unchanged data frame.
  * legend() is now vectorized for arguments cex, x.intersp, and
    text.width.  The latter can now also be specified as a vector
    (one element for each column of the legend) or as NA for
    computing a proper column wise maximum value of strwidth(legend).
    The argument y.intersp can be specified as a vector with one
    entry for each row of the legend.
    legend() also gains new arguments title.cex and title.font.
    Thanks to Swetlana Herbrandt.
  * Deparsing no longer remaps attribute names dim, dimnames, levels,
    names and tsp to historical S-compatible names (which structure()
    maps back).
  * sample() and sample.int() have additional sanity checks on their
    size and n arguments.
    all.equal.numeric() gains a sanity check on its tolerance
    argument - calling all.equal(a, b, c) for three numeric vectors
    is a surprisingly common error.
    mean(na.rm =), rank(na.last =), barplot(legend.text =),
    boxplot(), contour(drawlabels =), polygon(border =) and
    methods::is(class2 =) have more robust sanity checks on their
    arguments.
    R CMD Rd2pdf (used by R CMD check) has a more robust sanity check
    on the format of \alias{} commands.
  * psigamma(x, deriv) for negative x now also works for deriv = 4
    and 5; their underlying C level dpsifn() is documented in
    'Writing R Extensions'.
  * The HTML help system now uses HTML5 (wish of PR#18149).
  * ks.test() now provides exact p-values also with ties and MC
    p-values in the two-sample (Smirnov) case.  By Torsten Hothorn.
  * ks.test() gains a formula interface, with y ~ 1 for the
    one-sample (Kolmogorov) test and y ~ group for the two-sample
    (Smirnov) test.  Contributed by Torsten Hothorn.
  * The return value from ks.test() now has class c("ks.test",
    "htest") - packages using try() need to take care to use
    inherits() and not == on the class.
  * New functions psmirnov(), qsmirnov() and rsmirnov() in package
    stats implementing the asymptotic and exact distributions of the
    two-sample Smirnov statistic.
  * iconv() now allows sub = "c99" to use C99-style escapes for UTF-8
    inputs which cannot be converted to encoding to.
  * In a forward pipe |&gt; expression it is now possible to use a named
    argument with the placeholder _ in the rhs call to specify where
    the lhs is to be inserted.  The placeholder can only appear once
    on the rhs.
  * The included LAPACK sources have been updated to version 3.10.0,
    except for the four Fortran 77 routines which 3.10.0 has
    re-implemented in Fortran 90 (where the older versions have been
    retained as the R build process does not support Fortran 90).
  * path.expand() and most other uses of tilde expansion now warn if
    a path would be too long if expanded.  (An exception is
    file.exists(), which silently returns false.)
  * trunc(&lt;Date&gt;, *) now supports units = "months" or "years" for
    consistency with the POSIXt method, thanks to Dirk Eddelbuettel's
    proposal in PR#18099.
  * list2DF() now checks that its arguments are of the same length,
    rather than use recycling.
  * The HTML help system has several new features: LaTeX-like math
    can be typeset using either KaTeX or MathJax, usage and example
    code is highlighted using Prism, and for dynamic help the output
    of examples and demos can be shown within the browser if the
    knitr package is installed. These features can be disabled by
    setting the environment variable _R_HELP_ENABLE_ENHANCED_HTML_ to
    a false value.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 15
    and so packages that provide graphics devices should be
    reinstalled.
  * The grid package now allows the user to specify a "vector" of
    pattern fills.  The fill argument to gpar() accepts a list of
    gradients and/or patterns and the functions linearGradient(),
    radialGradient(), and pattern() have a new group argument.
    Points grobs (data symbols) can now also have a pattern fill.
    The grobCoords() function now returns a more informative and
    complex result.
  * The grid package has new functions for drawing isolated groups:
    grid.group(), grid.define(), and grid.use().  These functions add
    compositing operators and affine transformations to R's graphics
    capabilities.
    The grid package also has new functions for stroking and filling
    paths: grid.stroke(), grid.fill(), and grid.fillStroke().
    A new function as.path() allows the user to specify the fill rule
    for a path that is to be used for clipping, stroking, or filling;
    available options are "winding" and "evenodd".  A new function
    as.mask() allows the user to specify the type of a mask;
    available options are "alpha" and "luminance".
    These new features are only supported so far (at most) on the
    Cairo-based graphics devices and on the pdf() device.
  * dev.capabilities() reports on device support for the new
    features.
  * par() now warns about unnamed non-character arguments to prevent
    misuse such as {usr &lt;- par("usr"); par(usr)}.
  INSTALLATION:
  * Facilities for accessing ftp:// sites are no longer tested
    (except _pro tem_ for curlGetHeaders()) as modern browsers have
    removed support.
  * R can now be built with DEFS = -DSTRICT_R_HEADERS .
  PACKAGE INSTALLATION:
  * R CMD INSTALL no longer tangles vignettes. This completes an R
    CMD build change in R 3.0.0 and affects packages built before R
    3.0.2. Such packages should be re-made with R CMD build to have
    the tangled R code of vignettes shipped with the tarball.
  * USE_FC_LEN_T will become the default: this uses the correct
    prototypes for Fortran BLAS/LAPACK routines called from C/C++,
    and requires adjustment of most such calls - see 'Writing R
    Extensions' SS6.6.2.  (This has been supported since R 3.6.2.)
  * Package installation speed for packages installed with
    keep.source has been improved. This resolve the issue reported by
    Ofek Shilon in PR#18236.
  UTILITIES:
  * R CMD check can optionally report files/directories left behind
    in home, /tmp (even though TMPDIR is set) and other directories.
    See the "R Internals" manual for details.
  * R CMD check now reports byte-compilation errors during
    installation.  These are not usually fatal but may result in
    parts of the package not being byte-compiled.
  * _R_CHECK_DEPENDS_ONLY_ can be applied selectively to examples,
    tests and/or vignettes in R CMD check: see the "R Internals"
    manual.
  * _R_CHECK_SRC_MINUS_W_IMPLICIT_ now defaults to true: recent
    versions of Apple clang on macOS have made implicit function
    declarations in C into a compilation error.
  * R CMD check --as-cran makes use of the environment variable
    AUTORECONF.  See the "R Internals" manual SS8 for further details.
  * R CMD check --use-valgrind also uses valgrind when re-building
    vignettes as some non-Sweave vignettes unhelpfully comment out
    all their code when R CMD check runs vignettes.
  * Errors in re-building vignettes (unless there are LaTeX errors)
    are reported by R CMD check as ERROR rather than WARNING when
    running vignettes has been skipped (as it frequently is in CRAN
    checks and by --as-cran).
  * R CMD Rd2pdf gains a --quiet option that is used by R CMD build
    when building the PDF package manual.
  * R CMD Rd2pdf now always runs LaTeX in batch mode, consistent with
    Texinfo &gt;= 6.7. The --batch option is ignored.
  * R CMD build and R CMD check now include the Rd file name and line
    numbers in the error message of an \Sexpr evaluation failure.
  * For packages using the \doi Rd macro (now an install-time \Sexpr)
    but no other dynamic Rd content, R CMD build now produces a
    smaller tarball and is considerably faster - skipping temporary
    package installation.
  C-LEVEL FACILITIES:
  * The non-API header R_ext/R-ftp-http.h is no longer provided, as
    the entry points it covered are now all defunct.
  * A number of non-API declarations and macro definitions have been
    moved from the installed header Rinternals.h to the internal
    header Defn.h. Packages that only use entry points and
    definitions documented to be part of the API as specified in
    'Writing R Extensions' SS6 should not be affected.
  * The macro USE_RINTERNALS no longer has any effect when compiling
    package code.  Packages which also use R_NO_REMAP will need to
    ensure that the remapped names are used for calls to API
    functions that were formerly also made available as macros.
  * The deprecated legacy S-compatibility macros PROBLEM, MESSAGE,
    ERROR, WARN, WARNING, RECOVER, ... are no longer defined in
    R_exts/RS.h (included by R.h).  Replace these by calls to
    Rf_error and Rf_warning (defined in header R_ext/Error.h included
    by R.h).
    Header R_ext/RS.h no longer includes R_ext/Error.h.
  * Header R_ext/Constants.h (included by R.h) when included from C++
    now includes the C++ header cfloat rather than the C header
    float.h (now possible as C++11 is required).
  * The legacy S-compatibility macros DOUBLE_* in R_ext/Constants.h
    (included by R.h) are deprecated.
  * The deprecated S-compatibility macros SINGLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * R_Calloc, R_Free and R_Realloc are preferred to their unprefixed
    forms and error messages now use the prefix. These forms were
    introduced in R 3.4.0 and are available even when
    STRICT_R_HEADERS is defined.
  * rmultinom has been documented in 'Writing R Extensions' SS6 so is
    now part of the R API.
  * Similarly, Rtanpi, called from R level tanpi() is now part of the
    R API.
  * The long-deprecated, undocumented and non-API entry point call_R
    is no longer declared in R_ext/RS.h (included by R.h).
  * The header S.h which has been unsupported since Jan 2016 has been
    removed.  Use R.h instead.
  DEPRECATED AND DEFUNCT:
  * The (non-default and deprecated) method = "internal" for
    download.file() and url() no longer supports http:// nor ftp://
    URIs.  (It is used only for file:// URIs.)
    On Windows, download.file(method = "wininet") no longer supports
    ftp:// URIs.  (It is no longer the default method, which is
    "libcurl" and does.)
    On Windows, the deprecated method = "wininet" now gives a warning
    for http:// and https:// URIs for both download.file() and url().
    (It is no longer the default method.)
  * On Windows, the command-line option --max-mem-size and
    environment variable R_MAX_MEM_SIZE are defunct.  The memory
    allocation limit was important for 32-bit builds, but these are
    no longer supported.
  * default.stringsAsFactors() is now formally deprecated, where that
    was only mentioned on its regular help page, previously.  So it
    now gives a warning if called.
  * unix.time() is defunct now; it had been deprecated since R 3.4.0.
  BUG FIXES:
  * Setting digits = 0 in format(), print.default() (and hence
    typically print()) or options() is again invalid.  Its behaviour
    was platform-dependent, and it is unclear what "zero significant
    digits" should mean (PR#18098).
  * Messages from C code in the cairo section of package grDevices
    are now also offered for translation, thanks to Michael Chirico's
    PR#18123.
  * mean(x) with finite x now is finite also without "long.double"
    capability.
  * R CMD Rd2pdf no longer leaves an empty build directory behind
    when it aborts due to an already existing output file.  (Thanks
    to Sebastian Meyer's PR#18141.)
  * density(x, weights = w, na.rm = TRUE) when anyNA(x) is true, now
    removes weights "in parallel" to x, fixing PR#18151, reported by
    Matthias Gondan.  Additionally, it gets a subdensity option.
  * Conversion of \Sexpr[]{&lt;expR&gt;} to LaTeX or HTML no longer
    produces long blocks of empty lines when &lt;expR&gt; itself contains
    several lines all producing empty output.  Thanks to a report and
    patch by Ivan Krylov posted to R-devel.
  * R CMD build no longer fails if a package vignette uses child
    documents and inst/doc exists.  (Thanks to Sebastian Meyer's
    PR#18156.)
  * When an R documentation ('help' source) file man/foo.Rd in a
    package has \donttest{..} examples with a syntax error, it is now
    signalled as ERROR and with correct line numbers relating to the
  * -Ex.R file, thanks to Duncan Murdoch and Sebastian Meyer's
    reports and patch proposals in PR#17501.
  * Improved determination of the correct translation domain in
    non-base packages, addressing the combination of PR#18092 and
    PR#17998 (#c6) with reports and _augmented_ patch #2904 by
    Suharto Anggono.
    Note that "R-base" is no longer the default domain e.g., for
    top-level calls to gettext(); rather translation needs explicit
    domain = * specification in such cases.
  * identical(attrib.as.set=FALSE) now works correctly with data
    frames with default row names (Thanks to Charlie Gao's PR#18179).
  * txtProgressBar() now enforces a non-zero width for argument char,
    without which no progress can be visible.
  * dimnames(table(d)) is more consistent in the case where d is a
    list with a single component, thanks to Thomas Soeiro's report to
    R-devel.
    Further, table(d1, d2) now gives an error when d1 and d2 are data
    frames as suggested by Thomas in PR#18224.
  * Fix for drawing semi-transparent lines and fills on the native
    Windows graphics device (PR#18219 and PR#16694).  Thanks to Nick
    Ray for helpful diagnosis on Bugzilla.
  * The deparser now wraps sub-expressions such as if(A) ..  with
    parentheses when needed; thanks to Duncan Murdoch's PR#18232 and
    Lionel Henry's patches there.
  * remove.packages() no longer tries to uninstall Priority: base
    packages, thanks to a report and suggestions by Colin Fay in
    PR#18227.
  * win.metafile() now has xpinch and ypinch arguments so that the
    user can override Windows' (potentially wrong) guess at device
    dimensions.
  * x[i] and x[[i]] for non-integer i should now behave in all cases
    as always documented: the index used is equivalent to
    as.integer(i) unless that would overflow where trunc(i) is used
    instead; thanks to Suharto Anggono's report and patch proposals
    in PR#17977.
  * asOneSidedFormula() now associates the resulting formula with the
    global environment rather than the evaluation environment created
    for the call.
  * &lt;bibentry&gt;$name now matches the field name case-insensitively,
    consistent with bibentry() creation and the replacement method.
  * cbind() failed to detect some length mismatches with a mixture of
    time-series and non-time-series inputs.
  * The default LaTeX style file Sweave.sty used by the RweaveLatex
    driver no longer loads the obsolete ae package; thanks to a
    report by Thomas Soeiro in PR#18271.  Furthermore, it now skips
    \usepackage[T1]{fontenc} for engines other than pdfTeX (if
    detected) or if the new [nofontenc] option is used.
  * smooth.spline() now stores its logical cv argument more safely,
    fixing a rare bug when printing, and also stores n.
  * smooth.spline(x,y,*) now computes the cv.crit statistic
    correctly, also when is.unsorted(x), fixing PR#18294.
  * The data.frame method of rbind() now warns when binding
    not-wholly-recycling vectors, by analogy to the default method
    (for matrices).
  * setAs() finds the correct class for name to when multiple
    packages define a class with that name. Thanks to Gabor Csardi
    for the report.
  * Fix for detaching a package when two classes of the same name are
    present in method signatures for the same generic. Thanks to
    Gabor Csardi for the report.
  * match.arg("", c("", "a", "B")) gives a better error message, in
    part from PR#17959, thanks to Elin Waring.
  * R CMD Sweave --clean no longer removes pre-existing files or
    subdirectories (PR#18242).
  * The quartz() device no longer splits polylines into subpaths.
    That has caused narrowly-spaced lines with many points to always
    look solid even when dashed line type was used due to dash phase
    restarts.
  * Deparsing constructs such as quote(1 + `!`(2) + 3) works again as
    before R 3.5.0, thanks to the report and patch in PR#18284 by
    Suharto Anggono.
  * as.list(f) for a factor f now keeps names(f), fixing PR#18309.
  * qbeta(.001, .9, .009) and analogous qf() calls now return a
    correct value instead of NaN or wrongly 1, all with a warning;
    thanks to the report by Ludger Goeminne in PR#18302.
  * plot.lm() failed to produce the plot of residuals vs.  factor
    levels (i.e., which=5 when leverages are constant) for models
    with character predictors (PR#17840).
  * interaction.plot(..., xtick = TRUE) misplaced the x-axis line
    (PR#18305).
  * Not strictly fixing a bug, format()ing and print()ing of
    non-finite Date and POSIXt values NaN and +/-Inf no longer show
    as NA but the respective string, e.g., Inf, for consistency with
    numeric vector's behaviour, fulfilling the wish of PR#18308.
  * R CMD check no longer runs test scripts generated from
    corresponding .Rin files twice and now signals an ERROR if
    processing an .Rin script fails.
  * tools::Rd2txt() used for plain-text help pages now renders \hrefs
    (if tools::Rd2txt_options(showURLs = TRUE)) and \urls with
    percent-encoding and standards-compliant delimiting style (angle
    brackets and no URL: prefix).  \email is now rendered with a
    mailto: prefix.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1655985600">- CHANGES IN R 4.2.1:
  NEW FEATURES:
  * New function utils::findCRANmirror() to find out if a CRAN mirror
    has been selected, otherwise fallback to the main site.  This
    behaves in the same way as tools::CRAN_package_db() and is
    intended for packages wishing to access CRAN for purposes other
    than installing packages.
    The need for this was shown by a day when the main CRAN website
    was offline and a dozen or so packages which had its URL
    hardcoded failed their checks.
  INSTALLATION on a UNIX-ALIKE:
  * The libraries searched for by --with-blas (without a value) now
    include BLIS (after OpenBLAS but before ATLAS).  And on macOS,
    the Accelerate framework (after ATLAS).  (This is patterned after
    the AX_BLAS macro from the Autoconf Archive.)
  * The included LAPACK sources have been updated to 3.10.1.
  UTILITIES:
  * The (full path to) the command tidy to be used for HTML
    validation can be set by environment variable R_TIDYCMD.
  * Setting environment variable _R_CHECK_RD_VALIDATE_RD2HTML_ to a
    false value will override R CMD check --as-cran and turn off HTML
    validation.  This provides a way to circumvent a problematic
    tidy.
    The 2006 version that ships with macOS is always skipped.
  C-LEVEL FACILITIES:
  * The undocumented legacy declarations of Sint, Sfloat, SINT_MAX
    and SINT_MIN in header R.h are deprecated.
  BUG FIXES:
  * fisher.test(d) no longer segfaults for "large" d; fixing PR#18336
    by preventing/detecting an integer overflow reliably.
  * tar(., files=*) now produces correctly the warning about invalid
    uid or gid of files, fixing PR#18344, reported by Martin Morgan.
  * tk_choose.files() with multi = FALSE misbehaved on paths
    containing spaces (PR#18334) (regression introduced in R 4.0.0).
  * sort(x, partial = ind, *) now works correctly notably for the
    non-default na.last = FALSE or TRUE, fixing PR#18335 reported by
    James Edwards.
  * Environment variable _R_CHECK_XREFS_REPOSITORIES_ is only used
    for checking .Rd cross-references in R CMD check (as documented)
    and not for other uses looking for a CRAN mirror.
  * The search for a CRAN mirror when checking packages now uses
    getOption("repos") if that specifies a CRAN mirror, even when it
    does not also specify all three Bioconductor repositories (as was
    previously required).
  * The HTML code generated by tools::Rd2HTML() has been improved to
    pass tidy 5.8.0.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1667217600">- CHANGES IN R 4.2.2:
  NEW FEATURES:
  * tools::Rdiff(useDiff = TRUE) checks for the presence of an
    external diff command and switches to useDiff = FALSE if none is
    found.  This allows R CMD Rdiff to always work.
  * On Windows, environment variable R_LIBCURL_SSL_REVOKE_BEST_EFFORT
    can be used to switch to only 'best-effort' SSL certificate
    revocation checks with the default "libcurl" download method.
    This reduces security, but may be needed for downloads to work
    with MITM proxies (PR#18379).
  * (macOS) The run-time check for libraries from XQuartz for X11 and
    Tcl/Tk no longer uses otool from the Apple Developer Tools
    (PR#18400).
  * The LaTeX style for producing the PDF manuals, Rd.sty, now loads
    the standard amsmath, amsfonts and amssymb packages for greater
    coverage of math commands in the Rd \eqn and \deqn macros.  The
    \mathscr LaTeX command is also provided (via the mathrsfs
    package, if available, or the amsfonts bundle otherwise),
    fulfilling the wish of PR#18398.
  * (Windows) The default format of readClipboard() and
    writeClipboard() has been changed to 13 (CF_UNICODETEXT).
  INSTALLATION on a UNIX-ALIKE:
  * The PDF manuals (if built) can be compacted by the new target
    make compact-pdf (at the top level or in directory doc/manual).
  * There is now configure support for LLVM clang 15 on Linux, which
    defaults to position-independent (PIE) executables whereas
    gfortran does not.
  * Many small changes to ease compilation (and suppress warnings)
    with LLVM clang 15.
  BUG FIXES:
  * Rscript -e would fail if stdin were closed (Reported by Henrik
    Bengtsson.)
  * qt(*, log.p=TRUE) in outer tails no longer produces NaN in its
    final steps, thus fixing PR#18360.
  * tools::Rd2latex() now escapes hashes and ampersands when writing
    URLs, fixing LaTeX errors with such URLs in \tabular.
  * When isGeneric(f, fdef=*) is used with mismatching names, the
    warning is better understandable; reported (with fix) in PR#18370
    by Gabe Becker.
  * poly(x, n) now works again (and is now documented) when x is a
    "Date" or "POSIXct" object, or of another class while fulfilling
    mode(x) == "numeric".  This also enables poly(x, *, raw=TRUE) for
    such variables.  Reported by Michael Chirico to R-devel.
  * write.table(), write.csv() and write.csv2() restore their
    numerical precision (internal equivalent of digits = 15) after an
    interrupt (PR#18384).
  * One can now read also byte FF from a clipboard connection
    (PR#18385).
  * source("") and source(character()) now give more helpful error
    messages.
  * R CMD check --as-cran set _R_CHECK_TIMINGS_ too late to have the
    intended effect.
  * as.POSIXlt(x) now also works with very large dates x, fixing
    PR#18401 reported by Hannes M"uhleisen.
  * Files can now be extracted even from very large zip archives
    (PR#18390, thanks to Martin Jakt).
  * Non-finite objects of class "POSIXlt" are now correctly coerced
    to classes "Date" and "POSIXct"; following up on the extension to
    format() them correctly.
  * Added methods for is.finite(), is.infinite() and is.nan() for
    "POSIXlt" date-time objects.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1678881600">- CHANGES IN R 4.2.3:
  C-LEVEL FACILITIES:
  * The definition of DL_FUNC in R_ext/Rdynload.h has been changed to
    be fully C-compliant.  This means that functions loaded _via_ for
    example R_GetCCallable need to be cast to an appropriate type if
    they have any arguments.
  * .Machine has a new element sizeof.time_t to identify old systems
    with a 32-bit type and hence a limited range of date-times (and
    limited support for dates millions of years from present).
  PACKAGE INSTALLATION:
  * (Windows) The default C++ standard had accidentally been left at
    C++11 when it was changed to C++14 on Unix.
  BUG FIXES:
  * As "POSIXlt" objects may be "partially filled" and their list
    components meant to be recycled, length() now is the length of
    the longest component.
  * as.POSIXlt.Date() could underflow for dates in the far past (more
    than half a million years BCE).
  * as.Date.POSIXlt(x) would return "1970-01-01" instead of NA in R
    4.2.2, e.g., for
    x &lt;- as.POSIXlt(c("2019-01-30","2001-1-1"))
    x$mon &lt;- c(0L, NA); as.Date(x)
  * R CMD check failed to apply enabled _R_CHECK_SUGGESTS_ONLY_ to
    examples and vignettes (regression in R 4.2.0).
  * R CMD check did not re-build vignettes in separate processes by
    default (regression in R 4.2.0).
  * Running examples from HTML documentation now restores previous
    knitr settings and options (PR#18420).
  * Quartz: fonts are now located using Core Graphics API instead of
    deprecated ATS which is no longer supported in the macOS 13 SDK
    (PR#18426).  This also addresses an issue where the currently
    used font in the Quartz device context was not correctly
    retained.
  * (Windows) Math symbols in text drawing functions are again
    rendered correctly (PR#18440).  This fixes a regression in R
    4.2.1 caused by a fix in PR#18382 which uncovered an issue in
    GraphApp due to which the symbol charset was not used with TT
    Symbol font face.
  * (Windows) Installing a package with a src/Makefile.{win,ucrt}
    file includes ~/.R/Makevars.win64 in the search for user
    makevars, as documented in "R Installation and Administration"
    and done for packages with a src/Makevars.{win,ucrt} file.
  * format(&lt;POSIXlt_w/_unbalanced_sec&gt;, "....%OS&lt;n&gt;") with n &gt; 0 no
    longer accidentally uses the unbalanced seconds, thanks to
    Suharto Anggono's report (including patch) in PR#18448.
  * solve.default(a, b) works around issues with some versions of
    LAPACK when a contains NA or NaN values.
  * When UseMethod() cannot dispatch, it no longer segfaults
    producing the error message in case of a long class(), thanks to
    Joris Vankerschaver's report (including patch) in PR#18447.
  * When example(foo, ..) produces graphics on an interactive device
    it needs to open itself, it now leaves devAskNewPage() unchanged
    even when it was FALSE, thus fixing a 14 years old '&lt;FIXME&gt;'.
  * packageDescription() again catches errors from encoding
    conversions. This also fixes broken packageVersion() in C locale
    on systems where iconv does not support transliteration.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1681128000">- add patch to build with libcurl &gt;= 8</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1682078400">- CHANGES IN R 4.3.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Calling &amp;&amp; or || with LHS or (if evaluated) RHS of length greater
    than one is now always an error, with a report of the form
    'length = 4' in coercion to 'logical(1)'
    Environment variable _R_CHECK_LENGTH_1_LOGIC2_ no longer has any
    effect.
  NEW FEATURES:
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.10.1.  (This caused some platform-dependent
    changes to package check output.)  And then to the sources from
    LAPACK version 3.11.0 (with changes only to double complex
    subroutines).
  * The included LAPACK sources have been updated to include the four
    Fortran 90 routines rather than their Fortran 77 predecessors.
    This may give some different signs in SVDs or
    eigendecompositions..  (This completes the transition to LAPACK
    3.10.x begun in R 4.2.0.)
  * The LAPACK sources have been updated to version 3.11.0.  (No new
    subroutines have been added, so this almost entirely bug fixes:
    Those fixes do affect some computations with NaNs, including R's
    NA.)
  * The parser now signals _classed_ errors, notably in case of the
    pipe operator |&gt;.  The error object and message now give line and
    column numbers, mostly as proposed and provided by Duncan Murdoch
    in PR#18328.
  * toeplitz() is now generalized for asymmetric cases, with a
    toeplitz2() variant.
  * xy.coords() and xyz.coords() and consequently, e.g., plot(x,y,
    log = "y") now signal a _classed_ warning about negative values
    of y (where log(.) is NA).  Such a warning can be specifically
    suppressed or caught otherwise.
  * Regular expression functions now check more thoroughly whether
    their inputs are valid strings (in their encoding, e.g. in
    UTF-8).
  * The performance of grep(), sub(), gsub() and strsplit() has been
    improved, particularly with perl = TRUE and fixed = TRUE.  Use of
    useBytes = TRUE for performance reasons should no longer be
    needed and is discouraged: it may lead to incorrect results.
  * apropos() gains an argument dot_internals which is used by the
    completion (help(rcompgen)) engine to also see base internals
    such as .POSIXct().
  * Support in tools::Rdiff() for comparing uncompressed PDF files is
    further reduced - see its help page.
  * qqplot(x, y, ...) gains conf.level and conf.args arguments for
    computing and plotting a confidence band for the treatment
    function transforming the distribution of x into the distribution
    of y (Switzer, 1976, _Biometrika_). Contributed by Torsten
    Hothorn.
  * Performance of package_dependencies() has been improved for cases
    when the number of dependencies is large.
  * Strings newly created by gsub(), sub() and strsplit(), when any
    of the inputs is marked as "bytes", are also marked as "bytes".
    This reduces the risk of creating invalid strings and accidental
    substitution of bytes deemed invalid.
  * Support for readLines(encoding = "bytes") has been added to allow
    processing special text files byte-by-byte, without creating
    invalid strings.
  * iconv(from = "") now takes into account any declared encoding of
    the input elements and uses it in preference to the native
    encoding.  This reduces the risk of accidental creation of
    invalid strings, particularly when different elements of the
    input have different encoding (including "bytes").
  * Package repositories in getOption("repos") are now initialized
    from the repositories file when utils is loaded (if not already
    set, e.g., in .Rprofile).  (From a report and patch proposal by
    Gabriel Becker in PR#18405.)
  * compactPDF() gets a verbose option.
  * type.convert() and hence read.table() get new option tryLogical =
    TRUE with back compatible default.  When set to false, converts
    "F" or "T" columns to character.
  * Added new unit prefixes "R" and "Q" for abbreviating
    (unrealistically large) sizes beyond 10^{27} in standard = "SI",
    thanks to Henrik Bengtsson's PR#18435.
  * as.data.frame()'s default method now also works fine with atomic
    objects inheriting from classes such as "roman", "octmode" and
    "hexmode", such fulfilling the wish of PR#18421, by Benjamin
    Feakins.
  * The as.data.frame.vector() utility now errors for wrong-length
    row.names.  It warned for almost six years, with "Will be an
    error!".
  * sessionInfo() now also contains La_version() and reports codepage
    and timezone when relevant, in both print() and toLatex() methods
    which also get new option tzone for displaying timezone
    information when locale = FALSE.
  * New function R_compiled_by() reports the C and Fortran compilers
    used to build R, if known.
  * predict(&lt;lm&gt;, newdata = *) no longer unnecessarily creates an
    offset of all 0s.
  * solve() for complex inputs now uses argument tol and by default
    checks for 'computational singularity' (as it long has done for
    numeric inputs).
  * predict(&lt;rank-deficient lm&gt;, newdata=*) now obeys a new argument
    rankdeficient, with new default "warnif", warning only if there
    are non-estimable cases in newdata.  Other options include
    rankdeficient = "NA", predicting NA for non-estimable newdata
    cases.  This addresses PR#15072 by Russ Lenth and is based on his
    original proposal and discussions in PR#16158 also by David Firth
    and Elin Waring.  Still somewhat experimental.
  * Rgui console implementation now works better with the NVDA screen
    reader when the full blinking cursor is selected.  The underlying
    improvements in cursor handling may help also other screen
    readers on Windows.
  * The drop-field control in GraphApp can now be left with the TAB
    key and all controls can be navigated in the reverse order using
    the Shift+TAB key, improving accessibility of the Rgui
    configuration editor.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now fully accurate
    (instead of to "only" minimally five digits).
  * demo(error.catching) now also shows off withWarnings() and
    tryCatchWEMs().
  * As an experimental feature the placeholder _ can now also be used
    in the rhs of a forward pipe |&gt; expression as the first argument
    in an extraction call, such as _$coef. More generally, it can be
    used as the head of a chain of extractions, such as _$coef[[2]].
  * Spaces in the environment variable used to choose the R session's
    temporary directory (TMPDIR, TMP and TEMP are tried in turn) are
    now fatal.  (On Windows the 'short path' version of the path is
    tried and used if that does not contain a space.)
  * all.equal.numeric() gets a new optional switch giveErr to return
    the numeric error as attribute.  Relatedly,
    stopifnot(all.equal&lt;some&gt;(a, b, ..)) is as "smart" now, as
    stopifnot(all.equal(....)) has been already, thus allowing
    customized all.equal&lt;Some&gt;() wrappers.
  * R on Windows is now able to work with path names longer than 260
    characters when these are enabled in the system (requires at
    least Windows 10 version 1607).  Packages should be updated to
    work with long paths as well, instead of assuming PATH_MAX to be
    the maximum length.  Custom front-ends and applications embedding
    R need to update their manifests if they wish to allow this
    feature.  See
    &lt;https://blog.r-project.org/2023/03/07/path-length-limit-on-windows&gt;
    for more information.
  * 'Object not found' and 'Missing argument' errors now give a more
    accurate error context. Patch provided by Lionel Henry in
    PR#18241.
  * The @ operator is now an S3 generic. Based on contributions by
    Tomasz Kalinowski in PR#18482.
  * New generic chooseOpsMethod() provides a mechanism for objects to
    resolve cases where two suitable methods are found for an Ops
    Group Generic. This supports experimenting with alternative
    object systems. Based on contributions by Tomasz Kalinowski in
    PR#18484.
  * inherits(x, what) now accepts values other than a simple
    character vector for argument what. A new generic, nameOfClass(),
    is called to resolve the class name from what. This supports
    experimenting with alternative object systems. Based on
    contributions by Tomasz Kalinowski in PR#18485.
  * Detection of BLAS/LAPACK in use (sessionInfo()) with FlexiBLAS
    now reports the current backend.
  * The "data.frame" method for subset() now warns about extraneous
    arguments, typically catching the use of = instead of == in the
    subset expression.
  * Calling a:b when numeric a or b is longer than one may now be
    made into an error by setting environment variable
    _R_CHECK_LENGTH_COLON_ to a true value, along the proposal in
    PR#18419 by Henrik Bengtsson.
  * density(x, weights = *) now warns if automatic bandwidth
    selection happens without using weights; new optional warnWbw may
    suppress the warning.  Prompted by Christoph Dalitz' PR#18490 and
    its discussants.
  * rm(list = *) is faster and more readable thanks to Kevin Ushey's
    PR#18492.
  * The plot.lm() function no longer produces a normal Q-Q plot for
    GLMs. Instead it plots a half-normal Q-Q plot of the absolute
    value of the standardized deviance residuals.
  * The print() method for class "summary.glm" no longer shows
    summary statistics for the deviance residuals by default.  Its
    optional argument show.residuals can be used to show them if
    required.
  * The tapply() function now accepts a data frame as its X argument,
    and allows INDEX to be a formula in that case. by.data.frame()
    similarly allows INDICES to be a formula.
  * The performance of df[j] &lt;- value (including for missing j) and
    write.table(df) has been improved for data frames df with a large
    number of columns.  (Thanks to Gabriel Becker's PR#18500,
    PR#18503 and discussants, prompted by a report from Toby Dylan
    Hocking on the R-devel mailing list.)
  * The matrix multiply operator %*% is now an S3 generic, belonging
    to new group generic matrixOps.  From Tomasz Kalinowski's
    contribution in PR#18483.
  * New function array2DF() to convert arrays to data frames,
    particularly useful for the list arrays created by tapply().
  DATES and TIMES:
  * On platforms where (non-UTC) datetimes before 1902 (or before
    1900 as with system functions on recent macOS) are guessed by
    extrapolating time zones from 1902-2037, there is a warning at
    the first use of extrapolation in a session.  (As all time zones
    post 2037 are extrapolation, we do not warn on those.)
  * (Platforms using --with-internal-tzone, including Windows and by
    default macOS). How years are printed in dates or date-times can
    be controlled by environment variable R_PAD_YEARS_BY_ZERO.  The
    default remains to pad to 4 digits by zeroes, but setting value
    no gives no padding (as used by default by glibc).
  * strftime() tries harder to determine the offset for the "%z"
    format, and succeeds on the mainstream R platforms.
  * strftime() has a limit of 2048 bytes on the string produced -
    attempting to exceed this is an error.  (Previously it silently
    truncated at 255 bytes.)
  * sessionInfo() records (and by default prints) the system time
    zone as part of the locale information.  Also, the source
    (system/internal) of the date-time conversion and printing
    functions.
  * Objects of class "POSIXlt" created in this version of R always
    have 11 components: component zone is always set, and component
    gmtoff is set for times in UTC and usually set on the (almost
    all) platforms which have C-level support, otherwise is NA.
  * There are comprehensive validity checks on the structure of
    objects of class "POSIXlt" when converting (including formatting
    and printing).  (This avoids mis-conversions of hand-crafted
    objects.)
  * There is some support for using the native date-time routines on
    macOS: this is only viable on recent versions (e.g. 12.6 and 13)
    and does get wrong some historical changes (before 1900, during
    WWII).  Use of --with-internal-tzone remains the default.
  * as.POSIXct(&lt;numeric&gt;) and as.POSIXlt(.) (without specifying
    origin) now work.  So does as.Date(&lt;numeric&gt;).
  * as.Date.POSIXct(., tz) now treats several tz values, notably
    "GMT" as equivalent to "UTC", proposed and improved by Michael
    Chirico and Joshua Ulrich in PR#17674.
  * Experimental balancePOSIXlt() utility allows using "ragged" and
    or out-of-range "POSIXlt" objects more correctly, e.g., in
    subsetting and subassignments.  Such objects are now documented.
    More experimentally, a "POSIXlt" object may have an attribute
    "balanced" indicating if it is known to be filled or fully
    balanced.
  * Functions axis.Date() and axis.POSIXct() are rewritten to gain
    better default tick locations and better default formats by using
    prettyDate(). Thanks to Swetlana Herbrandt.
  * The mapping of Windows' names for time zones to IANA's 'Olson'
    names has been updated.  When ICU is available (it is by
    default), it is used to get a mapping for the current region set
    in Windows.  This can be overridden by setting environment
    variable TZ to the desired Olson name - see OlsonNames() for
    those currently available.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 16
    and so packages that provide graphics devices should be
    reinstalled.
  * The grDevices and grid packages have new functions for rendering
    typeset glyphs, primarily: grDevices::glyphInfo() and
    grid::grid.glyph().
    Rendering of typeset glyphs is only supported so far on the
    Cairo-based graphics devices and on the pdf() and quartz()
    devices.
  * The defined behaviour for "clear" and "source" compositing
    operators (via grid::grid.group()) has been changed (to align
    better with simple interpretation of original Porter-Duff
    definitions).
  * Support for gradients, patterns, clipping paths, masks, groups,
    compositing operators, and affine transformations has been added
    to the quartz() device.
  INSTALLATION on a UNIX-ALIKE:
  * A system installation of generic LAPACK 3.10.0 or later will be
    preferred to the version in the R sources.
    configure option --with-lapack=no (equivalently --without-lapack)
    forces compilation of the internal LAPACK sources.
    If --with-lapack is not specified, a system liblapack is looked
    for and used if it reports version 3.10.0 or later and does not
    contain BLAS routines.
    Packages using LAPACK will need to be reinstalled if this changes
    to using an external library.
  * On aarch64 Linux platforms using GCC, configure now defaults to
  - fPIC (instead of -fpic), as desired in PR#18326.
  * configure now checks conversion of datetimes between POSIXlt and
    POSIXct around year 2020.  Failure (which has been seen on
    platforms missing tzdata) is fatal.
  * If configure option --with-valgrind-instrumentation is given
    value 1 or 2, option --with-system-valgrind-headers is now the
    default and ignored (with a warning).  It is highly recommended
    that the system headers are installed alongside valgrind: they
    are part of its packaging on some Linux distributions and
    packaged separately (e.g. in the valgrind-devel RPM) on others.
    configure will give a warning if they are not found.
    The system headers will be required in a future release of R to
    build with valgrind instrumentation.
  * libcurl 8.x is now accepted by configure: despite a change in
    major version number it changes neither API nor ABI.
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools43, an update of the Rtools42 toolchain.  It is
    based on gcc 12 and newer versions of MinGW-W64, binutils and
    libraries.  At this time R-devel can still be built using
    Rtools42 without changes, but when R-devel is installed via the
    installer, it will by default look for Rtools43.
  * Old make targets rsync-extsoft and 32-bit ones that are no longer
    needed have been removed.
  * Default builds (including for packages) no longer select C99.
    Thus the C standard used is the default for the compiler, which
    for the toolchain in Rtools43 is C17.  (This is consistent with
    Unix builds.)
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++17 where
    available (which it is on all currently checked platforms): if
    not C++14 or C++11 is used if available otherwise C++ is not
    supported.
  * USE_FC_LEN_T is the default: this uses the correct
    (compiler-dependent) prototypes for Fortran BLAS/LAPACK routines
    called from C/C++, and requires adjustment of many such calls -
    see 'Writing R Extensions' SS6.6.1.
  * There is initial support for C++23 as several compilers are now
    supporting -std=c++23 or -std=c++2b or similar.  As for C++20,
    there no additional configure checks for C++23 features beyond a
    check that the compiler reports a __cplusplus value greater than
    that in the C++20 standard.  C++ feature tests should be used.
  * There is support for a package to indicate the version of the C
    standard which should be used to compile it, and for the
    installing user to specify this.  In most cases R defaults to the
    C compiler's default standard which is C17 (a `bug-fix' of C11) -
    earlier versions of R or compilers may have defaulted to C99.
    Current options are:
    USE_C17 Use a standard that is at most C17.  The intention is to
    allow legacy packages to still be installed when later C
    standards become the default, including packages using new
    keywords as identifiers or with K&amp;R-style function
    declarations.  This will use C17 if available, falling back
    to C11.
    USE_C90 Use the C90 (aka C89) standard.  (As that standard did
    not require compilers to identify that version, all we can
    verify is that the compiler does not claim to be using a
    later standard.  It may accept C99 features - for example
    clang accepts // to make comments.)
    USE_C99 Use the C99 standard. This should be rarely needed - it
    avoids the few new features of C11/C17 which can be useful if
    a package assumes them if C17 is specified and they are not
    implemented.
    USE_C23 Use C23 (or in future, later).  Compiler/library support
    for C23 is still being implemented, but LLVM clang from
    15.0.0 and the upcoming GCC 13 have quite extensive support.
    These can be specified as part of the SystemRequirements field in
    the package's DESCRIPTION file or _via_ options --use-C17 and so
    on of R CMD INSTALL and R CMD SHLIB.
    For further details see "Writing R Extensions" SS1.2.5.
  * (Windows) A src/Makefile.ucrt or src/Makefile.win file is now
    included after R_HOME/etcR_ARCH/Makeconf and so no longer needs
    to include that file itself.  Installation of a package with such
    a file now uses a site Makevars file in the same way as a package
    with a src/Makevars.win file would.
  * configure is now passed crucial variables such as CC and CFLAGS
    in its environment, as many packages were not setting them (as
    documented in 'Writing R Extensions' SS1.2).
    This has most effect where configure is used to compile parts of
    the package - most often by cmake or libtool which obfuscate the
    actual compile commands used.
    Also used for configure.win and configure.ucrt on Windows.
  FORTRAN FLAGS:
  * The flag -fno-optimize-sibling-calls is no longer forced for
    gfortran 7 and later.  It should no longer be needed now using
    'hidden' character-length arguments when calling BLAS/LAPACK
    routines from C/C++ is the default even for packages.  (Unless
    perhaps packages call Fortran code from C/C++ without using R's
    headers and without allowing for these arguments.)
  C-LEVEL FACILITIES:
  * The deprecated S-compatibility macros DOUBLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * The deprecated legacy typedefs of Sint and Sfloat in header R.h
    are no longer defined, and that header no longer includes header
    limits.h from C nor climits from C++.
  * New macro CAD5R() is provided in Rinternals.h and used in a few
    places in the R sources.
  * ALTREP now supports VECSXP vectors. Contributed by Gabor Csardi
    in PR#17620.
  * The Rcomplex definition (in header R_ext/Complex.h) has been
    extended to prevent possible mis-compilation when interfacing
    with Fortran (PR#18430).  The new definition causes compiler
    warnings with static initializers such as {1, 2}, which can be
    changed to {.r=1, .i=2}.
    Using the new definition from C++ depends on compiler extensions
    supporting C features that have not been incorporated into the
    C++ standards but are available in g++ and clang++: this may
    result in C++ compiler warnings but these have been worked around
    for recent versions of common compilers (GCC, Apple/LLVM clang,
    Intel).
    It is intended to change the inclusion of header R_ext/Complex.h
    by other R headers, so C/C++ code files which make use of
    Rcomplex should include that header explicitly.
  UTILITIES:
  * R CMD check does more checking of package .Rd files, warning
    about invalid email addresses and (some) invalid URIs and noting
    empty \item labels in description lists.
  * R CMD check now also reports problems when reading package news
    in md (file NEWS.md) and (optionally) plain text (file NEWS)
    formats.
  * _R_CHECK_TIMINGS_ defaults to a value from the environment even
    for R CMD check --as-cran; this allows for exceptionally fast or
    slow platforms.
    It now applies to checking PDF and HTML versions of the manuals,
    and 'checking CRAN incoming feasibility'.
  * R CMD check can optionally (but included in --as-cran) check
    whether HTML math rendering _via_ KaTeX works for the package .Rd
    files.
  * Non-interactive debugger invocations can be trapped by setting
    the environment variable _R_CHECK_BROWSER_NONINTERACTIVE_ to a
    true value.  This is enabled by R CMD check --as-cran to detect
    the use of leftover browser() statements in the package.
  * The use of sprintf and vsprintf from C/C++ has been deprecated in
    macOS 13 and is a known security risk.  R CMD check now reports
    (on all platforms) if their use is found in compiled code:
    replace by snprintf or vsnprintf respectively. [*NB:* whether
    such calls get compiled into the package is platform-dependent.]
  * Where recorded at installation, R CMD check reports the C and
    Fortran compilers used to build R.
    It reports the OS in use (if known, as given by osVersion) as
    well as that R was built for.
    It notes if a C++ standard was specified which is older than the
    current default: many packages have used C++11 to mean 'not
    C++98' - as C++11 is the minimum supported since R 4.0.0, that
    specification can probably be removed.
  * R CMD INSTALL reports the compilers (and on macOS, the SDK) used,
    and this is copied to the output of R CMD check.
    Where a C++ standard is specified, it is reported.
  * R CMD check's 'checking compilation flags in Makevars' has been
    relaxed to accept the use of flags such as -std=f2008 in
    PKG_FFLAGS.
  * tools::buildVignettes() has a new argument skip, which is used by
    R CMD check to skip (and note) vignettes with unavailable
    \VignetteDepends (PR#18318).
  * New generic .AtNames() added to enable class-specific completions
    after @. The formerly internal function findMatches() is now
    exported, mainly for use in methods for .DollarNames() and
    .AtNames().
  DEPRECATED AND DEFUNCT:
  * default.stringsAsFactors() is defunct.
  * Calling as.data.frame.&lt;class&gt;() directly (for 12 atomic classes)
    is going to be formally deprecated, currently activated by
    setting the environment variable
    _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ to non-empty, which also
    happens in R CMD check --as-cran.
  BUG FIXES:
  * Hashed environments with sizes less than 5 can now grow.
    (Reported to R-devel by Duncan Garmonsway.)
  * as.character(&lt;Rd&gt;, deparse = TRUE) failed to re-escape curly
    braces in LaTeX-like text.  (Reported by Hadley Wickham in
    PR#18324.)
  * library() now passes its lib.loc argument when requiring Depends
    packages; reported (with fix) in PR#18331 by Mikael Jagan.
  * R CMD Stangle: improved message about 'Output' files.
  * head(x, n) and tail(x, n) now signal an error if n is not
    numeric, instead of incidentally "working" sometimes returning
    all of x.  Reported and discussed by Colin Fay, in PR#18357.
  * The "lm" method for summary() now gives the correct F-statistic
    when the model contains an offset.  Reported in PR#18008.
  * C() and `contrasts&lt;-`() now preserve factor level names when
    given a function object (as opposed a function name which did
    preserve names). Reported in PR#17616.
  * c(a = 1, 2)[[]] no longer matches 2 but rather signals a
    _classed_ error.  Reported and analysed by Davis Vaughan in
    PR#18367, a duplicate of PR#18004, by Jan Meis et al.  For
    consistency, NULL[[]] is also erroneous now.  x[[]] &lt;- v gives an
    error of the same class "MissingSubscriptError".
  * The relist() function of utils now supports NULL elements in the
    skeleton (PR#15854).
  * ordered(levels = *) (missing x) now works analogously to factor(,
    ordered=TRUE); reported (with fix) by Achim Zeileis in PR#18389.
  * User-defined Rd macro definitions can now span multiple lines,
    thanks to a patch from Duncan Murdoch. Previously, the Rd parser
    silently ignored everything after the first line.
  * Plain-text help (tools::Rd2txt()) now preserves an initial blank
    line for text following description list items.
  * tools::Rd2HTML() and tools::Rd2latex() no longer split \arguments
    and \value lists at Rd comments.
  * tools::Rd2latex() now correctly handles optional text outside
    \items of argument lists as well as bracketed text at the
    beginning of sections, e.g., \value{[NULL]}.
  * as.character(&lt;POSIXt&gt;) now behaves more in line with the methods
    for atomic vectors such as numbers, and is no longer influenced
    by options().  Ditto for as.character(&lt;Date&gt;).  The
    as.character() method gets arguments digits and OutDec with
    defaults _not_ depending on options().  Use of as.character(*,
    format = .) now warns.
  * Similarly, the as.character.hexmode() and *.octmode() methods
    also behave as good citizen methods and back compatibility option
    keepStr = TRUE.
  * The as.POSIXlt(&lt;POSIXlt&gt;) and as.POSIXct(&lt;POSIXct&gt;) default
    methods now do obey their tz argument, also in this case.
  * as.POSIXlt(&lt;Date&gt;) now does apply a tz (time zone) argument, as
    does as.POSIXct(); partly suggested by Roland Fuss on the R-devel
    mailing list.
  * as.Date.POSIXlt(x) now also works when the list components are of
    unequal length, aka "partially filled" or "ragged".
  * expand.model.frame() looked up variables in the wrong environment
    when applied to models fitted without data.  Reported in
    PR#18414.
  * time() now (also) uses the ts.eps = getOption("ts.eps") argument
    and thus by default rounds values very close to the start (or
    end) of a year.  Based on a proposal by Andre"i V. Kostyrka on
    R-help.
  * Printing of a factanal() result with just one factor and sort =
    TRUE now works regularly, fixing PR#17863 by Timothy Bates,
    thanks to the 'R Contributors' working group.
  * Printing 0-length objects of class "factor", "roman", "hexmode",
    "octmode", "person", "bibentry", or "citation" now prints
    something better, one of which fixes PR#18422, reported by
    Benjamin Feakins.
  * Sys.timezone() queries timedatectl only if systemd is loaded;
    addressing a report by Jan Gorecki in PR#17421.
  * The formula method of cor.test() had scoping problems when
    environment(formula) was not the calling environment; reported
    with a patch proposal by Mao Kobayashi in PR#18439.
  * attach() of an environment with active bindings now preserves the
    active bindings.  Reported by Kevin Ushey in PR#18425.
  * BLAS detection now works also with system-provided libraries not
    available as regular files.  This fixes detection of the
    Accelerate framework on macOS since Big Sur.  Reported by David
    Novgorodsky.
  * download.file() gives a helpful error message in case of an
    invalid download.file.method option, thanks to Colin Fay's report
    in PR#18455.
  * Sporadic crashes of Rterm when using completion have been fixed.
  * Rprof() is now more reliable.  A livelock in thread
    initialization with too short sampling interval has been fixed on
    macOS.  A deadlock in using the C runtime has been fixed on
    Windows.  A potential deadlock has been prevented on Unix.
  * Cursor placement in Rgui now works even after a fixed-width font
    is selected.
  * Mandatory options (options()) are now set on startup so that
    saving and restoring them always works (PR#18372).
  * Package installation, R CMD INSTALL or install.packages(*), now
    parses each of the &lt;pkg&gt;/R/*.R files individually instead of
    first concatenating and then parse()ing the large resulting file.
    This allows parser or syntax errors to be diagnosed with correct
    file names and line numbers, thanks to Simon Dedman's report and
    Bill Dunlap's patch in PR#17859.
    This _does_ require syntactically self contained R source files
    now, fixing another inadvertent bug.
  * predict.lm(&lt;model with offset&gt;) now finds the offset in the
    correct environment, thanks to Andr'e Gillibert's report and patch
    in PR#18456.
  * getInitial(&lt;formula&gt;) now finds the selfStart model in the
    correct environment.  (Reported by Ivan Krylov in PR#18368.)
  * Fix for possible segfault when using recently-added graphics
    features, such as gradients, clipping paths, masks, and groups
    with pdf(file=NULL).
  * class(m) &lt;- class(m) no longer changes a matrix m by adding a
    class _attribute_.
  * packageDate(pkg) now only warns once if there is no pkg.
  * When ts() creates a multivariate time series, "mts", it also
    inherits from "array" now, and is.mts() is documented _and_
    stricter.
  * Rd2txt() now preserves line breaks of \verb Rd content and from
    duplicated \cr.  The former also fixes the rendering of verbatim
    output from Rd \Sexpr in plain-text help.
  * uniroot(f, interval) should no longer wrongly converge _outside_
    the interval in some cases where abs(f(x)) == Inf for an x at the
    interval boundary, thanks to posts by Ben Bolker and Serguei
    Sokol on R-devel.
  * Vectorized alpha handling in palette functions such as in gray(),
    rainbow(), or hcl.colors() works correctly now, thanks to Achim
    Zeileis' report and patch in PR#18476.
  * Formatting and print()ing of bibentry objects has dropped the
    deprecated citation.bibtex.max argument, such that the bibtex
    argument's default for print.bibentry() depends directly on the
    citation.bibtex.max option, whereas in format.bibentry() the
    option no longer applies.
  * Attempting to use a character string naming a foreign function
    entry point in a foreign function call in a package will now
    signal an error if the packages has called R_forceSymbols to
    specify that symbols must be used.
  * An error in table() could permanently set options(warn=2)
    promoting all subsequent warnings to errors.
  * The sigma() function gave misleading results for binary GLMs.  A
    new method for objects of class "glm" returns the square root of
    the estimate of the dispersion parameter using the same
    calculation as summary.glm().
  * bs() and ns() in the (typical) case of automatic knot
    construction, when some of the supposedly inner knots coincide
    with boundary knots, now moves them inside (with a warning),
    building on PR#18442 by Ben Bolker.
  * R CMD on Windows now skips the site profile with --no-site-file
    and --vanilla even when R_PROFILE is set (PR#18512, from Kevin
    Ushey).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1686916800">- CHANGES IN R 4.3.1:
  C-LEVEL FACILITIES:
  * The C-level API version of R's integrate(), Rdqags() in Applic.h,
    now returns the correct number of integrand evaluations neval,
    fixing PR#18515 reported and diagnosed by Stephen Wade.
  * The C prototypes for LAPACK calls dspgv and dtptrs in
    R_exts/Lapack.h had one too many and one too few character length
    arguments - but this has not caused any known issues. To get the
    corrected prototypes, include
    [#]include &lt;Rconfig.h&gt; // for PR18534fixed
    [#]ifdef PR18534fixed
    [#] define usePR18534fix 1
    [#]endif
    [#]include &lt;R_exts/Lapack.h&gt;
    in your C/C++ code (PR#18534).
  INSTALLATION:
  * Many of the checks of esoteric Internet operations and those
    using unreliable external sites have been moved to a new target
    that is not run by default and primarily intended for the core
    developers.  To run them use
    cd tests; make test-Internet-dev
  BUG FIXES:
  * .S3methods(), typically called from methods(), again marks
    methods from package base as visible.
    Also, the visibility of non-base methods is again determined by
    the method's presence in search().
  * tools::Rdiff() is now more robust against invalid strings, fixing
    installation tests on Windows without Rtools installed
    (PR#18530).
  * Fix (new) bug in hcl.colors(2, *), by Achim Zeileis (PR#18523).
  * head(., &lt;illegal&gt;) and tail(..) now produce more useful "Error in
    ...." error messages, fixing PR#18362.
  * Package code syntax on Windows is checked in UTF-8 when UTF-8 is
    the native encoding.
  * na.contiguous(x) now also returns the first run, when it is at
    the beginning and there is a later one of the same length;
    reported to R-devel, including a fix, by Georgi Boshnakov.
    Further, by default, it modifies only an existing attr(*,"tsp")
    but otherwise no longer sets one.
  * chol(&lt;not pos.def&gt;, pivot = &lt;T|F&gt;) now gives a correct error or
    warning message (depending on pivot), thanks to Mikael Jagan's
    (PR#18541).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1699012800">- CHANGES IN R 4.3.2:
  NEW FEATURES:
  * The default initialization of the "repos" option from the
    repositories file at startup can be skipped by setting
    environment variable R_REPOSITORIES to NULL such that
    getOption("repos") is empty if not set elsewhere.
  * qr.X() is now an implicit S4 generic in methods.
  * iconv(to = "ASCII//TRANSLIT") is emulated using substitution on
    platforms which do not support it (notably Alpine Linux).  This
    should give a human-readable conversion in ASCII on all platforms
    (rather than NA_character_).
  * trans3d() gains options continuous and verbose addressing the
    problem of possible "wrap around" when projecting too long
    curves, as reported by Achim Zeileis in PR#18537.
  * tools::showNonASCII() has been rewritten to work better on macOS
    14 (which has a changed implementation of iconv()).
  * tiff(type = "quartz") (the default on macOS) now warns if
    compression is specified: it continues to be ignored.
  INSTALLATION on a UNIX-ALIKE:
  * There is some support for building with Intel's LLVM-based
    compilers on x86_64 Linux, such as (C) icx, (C++) ipcx and
    (Fortran) ifx from oneAPI 2023.x.y.
  * There is support for using LLVM's flang-new as the Fortran
    compiler from LLVM 16.0.x (preferably 17.0.0 or later).
  UTILITIES:
  * R CMD check reports the use of the Fortran 90 random number
    generator RANDOM_NUMBER() and the subroutines to initialize it.
    'Writing R Extensions' has example code to use R's RNGs from
    Fortran.
  BUG FIXES:
  * substr(x, n, L) &lt;- cc now works (more) correctly for multibyte
    UTF-8 strings x when L &gt; nchar(x), thanks to a report and patch
    by 'Architect 95'.
  * contrib.url(character()) now returns 0-length character() as
    documented, which also avoids spurious warnings from
    available.packages() et al. in the edge case of an empty vector
    of repository URLs.
  * readChar(., 4e8) no longer fails, thanks to Kodi Arfer's report
    (PR#18557).
  * lapply(&lt;list&gt;, as.data.frame) no longer warns falsely for some
    base vector components.
  * Communication between parent and child processes in the multicore
    part of parallel could fail on platforms that do not support an
    arbitrarily large payload in system functions read()/write() on
    pipes (seen on macOS where a restriction to INT_MAX bytes is
    documented, without doing a partial read unlike Linux). The
    payload is now split into 1Gb chunks to avoid that problem.
    (PR#18571)
  * qqplot(x,y, conf.level=.) gives better confidence bounds when
    length(x) != length(y), thanks to Alexander Ploner's report and
    patch proposal (PR#18557).
  * norm(&lt;0-length&gt;, "2") now gives zero instead of an error, as all
    the other norm types, thanks to Mikael Jagan's PR#18542.
  * Build-stage Rd macros \packageAuthor and \packageMaintainer now
    process Authors@R, fixing NA results when the package DESCRIPTION
    omits Author and Maintainer fields.
  * Formatting and printing complex numbers could give things like
    0.1683-0i because of rounding error: -0i is now replaced by +0i.
  * postscript() refused to accept a title comment containing the
    letter "W" (PR#18599).
  * isoreg(c(1,Inf)) signals an error instead of segfaulting, fixing
    PR#18603.
  * tiff(type = "Xlib") was only outputting the last page of
    multi-page plots.
  * tools::latexToUtf8() again knows about \~{n} and other letters
    with tilde, fixing a regression in R 4.3.0, and about \^{i} as an
    alternative to \^{\i} (similarly with other accents).
    Furthermore, LaTeX codes for accented I letters are now correctly
    converted, also fixing related mistakes in
    tools::encoded_text_to_latex().
  * tar(*, tar = "internal") no longer creates out-of-spec tar files
    in the very rare case of user or group names longer than 32
    bytes, fixing PR#17871 with thanks to Ivan Krylov.
  * When using the "internal" timezone datetime code, adding a
    fraction of a second no longer adds one second, fixing PR#16856
    from a patch by Ivan Krylov.
  * tools::checkRd() no longer produces spurious notes about
    "unnecessary braces" from multi-line Rd results of \Sexpr macros.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1709208000">- CHANGES IN R 4.3.3:
  NEW FEATURES:
  * iconv() now fixes up variant encoding names such as "utf8"
    case-insensitively.
  DEPRECATED AND DEFUNCT:
  * The legacy encoding = "MacRoman" is deprecated in pdf() and
    postscript(): support was incomplete in earlier versions of R.
  BUG FIXES:
  * Arguments are now properly forwarded to methods on S4 generics
    with ... in the middle of their formal arguments. This was broken
    for the case when a method introduced an argument but did not
    include ... in its own formals. Thanks to Herv'e Pag`es for the
    report PR#18538.
  * Some invalid file arguments to pictex(), postscript() and xfig()
    opened a file called NA rather than throw an error.  These
    included postscript(NULL) (which some people expected to work
    like pdf(NULL)).
  * Passing filename = NA to svg(), cairo_pdf(), cairo_ps() or the
    Cairo-based bitmap devices opened a file called NA: it now throws
    an error.
  * quartz(file = NA) opened a file called NA, including when used as
    a Quartz-based bitmap device.  It now gives an error.
  * rank(&lt;long vector&gt;) now works, fixing PR#18617, thanks to Ilia
    Kats.
  * seq.int() did not adequately check its length.out argument.
  * match(&lt;POSIXct&gt;, .) is correct again for differing time zones,
    ditto for "POSIXlt", fixing PR#18618 reported by Bastian Klein.
  * drop.terms(*, dropx = &lt;0-length&gt;) now works, fixing PR#18563 as
    proposed by Mikael Jagan.
  * drop.terms(*) keeps + offset(.) terms when it should, PR#18565,
    and drop.terms() no longer makes up a response, PR#18566, fixing
    both bugs thanks to Mikael Jagan.
  * getS3method("t", "test") no longer finds the t.test() function,
    fixing PR#18627.
  * pdf() and postscript() support for the documented Adobe encodings
    "Greek" and "Cyrilllic" was missing (although the corresponding
    Windows' codepages could be used).
  * Computations of glyph metric information for pdf() and
    postscript() did not take into account that transliteration could
    replace one character by two or more (only seen on macOS 14) and
    typically warned that the information was not known.
  * rank(x) no longer overflows during integer addition, when
    computing rank average for largish but not-yet long vector x,
    fixing PR#18630, thanks to Ilia Kats.
  * list.files() on Windows now returns also files with names longer
    that 260 bytes (the Windows limit is 260 characters).
    Previously, some file names particularly with 'East Asian'
    characters were omitted.
  * cov2cor(&lt;0 x 0&gt;) now works, fixing PR#18423 thanks to Mikael
    Jagan and Elin Waring.
  * cov2cor(&lt;negative diagonal&gt;) and similar now give one warning
    instead of two, with better wording, fixing PR#18424 thanks to
    Mikael Jagan.
  * tools:: startDynamicHelp() now ensures port is in proper range,
    fixing PR#18645.
  * pbeta(x, a,b) is correct now for x=0 or 1 in the boundary cases
    where a or b or both are 0, fixing PR#18672 thanks to Michael
    Fay.
  * pmatch(x, table) for large table, also called for data frame row
    selection, dfrm[nm, ], is now interruptible, fixing PR#18656.
  * predict(&lt;rank-deficient lm&gt;, newdata=*) fix computing of nbasis,
    see Russ Lenth's comment 29 in PR#16158.
  * Added a work-around for a bug in macOS 14.3.1 and higher which
    prevents R plots in the Quartz Cocoa device from updating on
    screen.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1713960000">- CHANGES IN R 4.4.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Startup banners, R --version, sessionInfo() and R CMD check no
    longer report (64-bit) as part of the platform as this is almost
    universal - the increasingly rare 32-bit platforms will still
    report (32-bit).
    On Windows, ditto for window titles.
  * is.atomic(NULL) now returns FALSE, as NULL is not an atomic
    vector.  Strict back-compatibility would replace is.atomic(foo)
    by (is.null(foo) || is.atomic(foo)) but should happen only
    sparingly.
  NEW FEATURES:
  * The confint() methods for "glm" and "nls" objects have been
    copied to the stats package.  Previously, they were stubs which
    called versions in package MASS. The MASS namespace is no longer
    loaded if you invoke (say) confint(glmfit).  Further, the "glm"
    method for profile() and the plot() and pairs() methods for class
    "profile" have been copied from MASS to stats.  (profile.nls()
    and plot.profile.nls() were already in stats.)
  * The confint() and profile methods for "glm" objects have gained a
    possibility to do profiling based on the Rao Score statistic in
    addition to the default Likelihood Ratio. This is controlled by a
    new test = argument.
  * The pairs() method for "profile" objects has been extended with a
    which = argument to allow plotting only a subset of the
    parameters.
  * The "glm" method for anova() computes test statistics and
    p-values by default, using a chi-squared test or an F test
    depending on whether the dispersion is fixed or free.  Test
    statistics can be suppressed by giving argument test a false
    logical value.
  * In setRepositories() the repositories can be set using their
    names via name = instead of index ind =.
  * methods() and .S3methods() gain a all.names option for the (rare)
    case where functions starting with a . should be included.
  * Serializations can now be interrupted (e.g., by Ctrl-C on a
    Unix-alike) if they take too long, e.g., from save.image(),
    thanks to suggestions by Ivan Krylov and others on R-devel.
  * New startup option --max-connections to set the maximum number of
    simultaneous connections for the session.  Defaults to 128 as
    before: allowed values up to 4096 (but resource limits may in
    practice restrict to smaller values).
  * R on Windows (since Windows 10 2004) now uses the new Segment
    Heap allocator. This may improve performance of some
    memory-intensive applications.
  * When R packages are built, typically by R CMD build &lt;pkg&gt;, the
    new --user=&lt;build_user&gt; option overrides the (internally
    determined) user name, currently Sys.info()["user"] or LOGNAME.
    This is a (modified) fulfillment of Will Landau's suggestion in
    PR#17530.
  * tools::testInstalledBasic() gets new optional arguments outDir
    and testSrcdir, e.g., allowing to use it in a &lt;builddir&gt; !=
    &lt;srcdir&gt; setup, and in standard "binary" Windows installation
  * if* a source tests/ folder is present.
  * range(&lt;DT_with_Inf&gt;, finite = TRUE) now work for objects of class
    "Date", "POSIXct", and "POSIXlt" with infinite entries,
    analogously to range.default(), as proposed by Davis Vaughan on
    R-devel.  Other range()-methods can make use of new function
    .rangeNum().
  * New .internalGenerics object complementing .S3PrimitiveGenerics,
    for documentation and low-level book-keeping.
  * grid() now invisibly returns the x- and y- coordinates at which
    the grid-lines were drawn.
  * norm(., type) now also works for complex matrices.
  * kappa(., exact = TRUE, norm = *) now works for all norms and also
    for complex matrices.  In symmetric / triangular cases, the new
    argument uplo = "U" | "L" allows the upper or lower triangular
    part to be specified.
  * memDecompress(type = "unknown") recognizes compression in the
    default 'zlib' format as used by memCompress(type = "gzip").
  * memCompress() and memDecompress() will use the libdeflate library
    (&lt;https://github.com/ebiggers/libdeflate&gt;) if installed.  This
    uses the same type of compression for type = "gzip" but is 1.5-2x
    faster than the system libz library on some common platforms: the
    speed-up may depend on the library version.
  * diff() for objects of class "Date", "POSIXct", and "POSIXlt"
    accepts a units argument passed via ....
  * Dynamic help now does a much better job of rendering package
    DESCRIPTION metadata.
  * Rprof() gains an event argument and support for elapsed (real)
    time profiling on Unix (PR#18076).
  * filled.contour() gains a key.border argument.
  * tools::update_pkg_po() gets arguments pot_make and mo_make for
    _not_ re-making the corresponding files, and additionally a
    verbose argument.
  * Hexadecimal string colour specifications are now accepted in
    short form, so, for example, we can use "#123", which is
    equivalent to "#112233".
    Thanks to MikeFC for the original idea and Ella Kaye, Malcolm
    Barrett, George Stagg, and Hanne Oberman for the patch.
  * Plain-text help shows \var markup by angle brackets.
  * The new experimental primitive function declare() is intended to
    eventually allow information about R code to be communicated to
    the interpreter, compiler, and code analysis tools. The syntax
    for declarations is still being developed.
  * Functions psmirnov(), qsmirnov() and rsmirnov() in package stats
    have had argument two.sided renamed to alternative, to take into
    account that the permutation distributions of the one-sided
    statistics can be different in the case of ties.  Consequence of
    PR#18582.
  * sort() is now an implicit S4 generic in methods.
  * Formatting and printing, format(z), print(z), of complex vectors
    z no longer zap relatively small real or imaginary parts to zero,
    fixing PR#16752.  This is an API change, as it was documented
    previously to round real and imaginary parts together on purpose,
    producing nicer looking output.  As mentioned, e.g. in the PR,
    this change is compatible with many other "R-like" programming
    environments.
    We have simplified the internal code and now basically format the
    real and imaginary parts independently of each other.
  * New experimental functions Tailcall() and Exec() to support
    writing stack-space-efficient recursive functions.
  * Where characters are attempted to be plotted by pdf(),
    postscript() and xfig() which are not in the selected 8-bit
    character set (most often Latin-1) and the R session is using a
    UTF-8 locale, the warning messages will show the UTF-8 character
    rather than its bytes and one dot will be substituted per
    character rather than per byte.  (Platforms whose iconv() does
    transliteration silently plot the transliteration.)
    In a UTF-8 locale some transliterations are now done with a
    warning (e.g., dashes and Unicode minus to hyphen, ligatures are
    expanded, permille (‰) is replaced by o/oo), although the OS may
    have got there first.  These are warnings as they will continue
    to be replaced by dots in earlier versions of R.
  * The matrix multiplication functions crossprod() and tcrossprod()
    are now also primitive and S3 generic, as %*% had become in R
    4.3.0.
  * source() and example() have a new optional argument catch.aborts
    which allows continued evaluation of the R code after an error.
  * The non-Quartz tiff() devices allow additional types of
    compression if supported by the platform's libtiff library.
  * The list of base and recommended package names is now provided by
    tools::standard_package_names().
  * cairo_pdf() and cairo_ps() default to onefile = TRUE to closer
    match pdf() and postscript().
  * New option catch.script.errors provides a documented way to catch
    errors and then continue in non-interactive use.
  * L %||% R newly in base is an expressive idiom for the phrases
    if(!is.null(L)) L else R or if(is.null(L)) R else L.
  * The return value from warnings() now always inherits from
    "warnings" as documented, now also in the case of no warnings
    where it previously returned NULL.
  * as.complex("1i") now returns 0 + 1i instead of NA with a warning.
  * z &lt;- c(NA, 1i) now keeps the imaginary part Im(z[1]) == 0, no
    longer coercing to NA_complex_.  Similarly, cumsum(z) correctly
    sums real and imaginary parts separately, i.e., without
    "crosstalk" in case of NAs.
  * On Alpine Linux iconv() now maps "latin2", "latin-2", "latin9"
    and "latin-9" to encoding names the OS knows about
    (case-insensitively).
  * iconv(sub = "Unicode") now always zero-pads to four (hex) digits,
    rather than to 4 or 8.  (This seems to have become the convention
    once Unicode restricted the number of Unicode points to 2^21 - 1
    and so will never need more than 6 digits.)
  * NCOL(NULL) now returns 0 instead of 1, for consistency with
    cbind().
  * The information for the Euro glyph missing from the Adobe .afm
    files for the Courier, Helvetica and Times families has been
    copied from their URW equivalents - this will improve vertical
    centring in the pdf() and postscript() devices.
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.12.0.  The changes are almost entirely cosmetic.
  * The included LAPACK sources have been updated to version 3.12.0
    and some further double-complex routines added.
  * There are new font families for the 2014--5 URW 2.0 fonts (see
    ?pdf) which are included in recent versions of Ghostscript.
    These have font widths for most Greek glyphs and a few others
    which were missing from the original versions (whose font
    families remain available for reproducibility, although
    Ghostscript-based viewers will render using the 2.0 versions).
  * Improve the large-n efficiency of as.matrix(&lt;dist&gt;), thanks an R
    contributors effort, notably by Tim Taylor and Heather Turner,
    see PR#18660.
  * The default and numeric methods of all.equal() get a check.class
    option.
  * zapsmall() gets new optional arguments, function mFUN and min.d,
    for extra flexibility; fulfills a wish in PR#18199.  Also, it is
    now an implicit S4 generic in package methods.
  * The Rd filter for aspell() gains an ignore argument.
  * New generic function sort_by(), primarily useful for the
    data.frame method which can be used to sort rows of a data frame
    by one or more columns.
  * The icence headers for the RPC code in src/extra/xdr have been
    updated to use the GPL-compatible licence published by Oracle
    America in 2010.
  * New function pkg2HTML() in tools to create single-page HTML
    reference manuals for R packages.
  * The byte code evaluator now uses less C stack space for recursive
    calls to byte-compiled functions. It also makes more of an effort
    to avoid allocations for scalar return values.
  * New completion option backtick (disabled by default) allows
    non-syntactic completions to be wrapped in backquotes. This is
    currently only useful for Jupyter notebooks via the IRkernel
    package, and may cause problems for other backends.
  INSTALLATION:
  * The parser has been updated to work with bison 3.8.2, which is
    now used for the pre-generated parsers in gram.c, file.c, and
    gramRd.c. A few parser error messages have changed, which may
    affect code that relies on exact messages.
  INSTALLATION on a UNIX-ALIKE:
  * System valgrind headers are now required to use configure option
  - -with-valgrind-instrumentation with value 1 or 2.
  * configure will warn if it encounters a 32-bit build, as that is
    nowadays almost untested.
  * Environment variable R_SYSTEM_ABI is no longer used and so no
    longer recorded in etc/Renviron (it was not on Windows and was
    only ever used when preparing package tools).
  * If the libdeflate library and headers are available, libdeflate
    rather than libz is used to (de)compress R objects in lazy-load
    databases.  Typically tasks spend up to 5% of their time on such
    operations, although creating lazy-data databases is one of the
    exceptions.
    This can be suppressed if the library is available by the
    configure option --without-libdeflate-compression.
  * configure option --enable-lto=check has not worked reliably since
    2019 and has been removed.
  * The minimum autoconf requirement for a maintainer build has been
    increased to autoconf 2.71.
    It is intended to increase this to 2.72 for R 4.5.0: the
    distributed configure file was generated using 2.72.
  * The minimum version requirement for an external LAPACK has been
    reduced to 3.9.0.
  * No default C++ compiler is set if no C++17 compiler is detected:
    there is no longer an automatic fallback to C++14 or C++11.
    Compilers from the last five years should have sufficient
    support: for others macros CXX and CXXSTD can be set in file
    config.site to provide a fallback if needed.
    The Objective-C++ compiler now by default uses the standard
    selected by R for C++ (currently C++17) rather than the default
    standard for the C++ compiler (which on macOS is still C++98).
  INSTALLATION on macOS:
  * A new configure option --with-newAccelerate makes use of Apple's
    'new' BLAS / LAPACK interfaces in their Accelerate framework.
    Those interfaces are only available in macOS 13.3 or later, and
    building requires SDK 13.3 or later (from the Command Line Tools
    or Xcode 14.3 or later).
    By default the option uses new Accelerate for BLAS calls: to also
    use it for LAPACK use option --with-newAccelerate=lapack.  The
    later interfaces provide LAPACK 3.9.1 rather than 3.2.1: 3.9.1 is
    from 2021-04 and does not include the improved algorithms
    introduced in LAPACK 3.10.0 (including for BLAS calls).
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools44, an update of the Rtools43 toolchain.  It is
    based on GCC 13 and newer versions of MinGW-W64, binutils and
    libraries (targeting 64-bit Intel CPUs).  R-devel can no longer
    be built using Rtools43 without changes.
  * Rtools44 has experimental support for 64-bit ARM (aarch64) CPUs
    _via_ the LLVM 17 toolchain using lld, clang/flang-new and
    libc++.
  UTILITIES:
  * R CMD check notes when S4-style exports are used without
    declaring a strong dependence on package methods.
  * tools::checkRd() (used by R CMD check) detects more problems with
    \Sexpr-based dynamic content, including bad nesting of \Sexprs
    and invalid arguments.
  * tools::checkRd() now reports Rd titles and section names ending
    in a period; this is ignored by R CMD check unless environment
    variable _R_CHECK_RD_CHECKRD_MINLEVEL_ is set to -5 or smaller.
  * R CMD check now notes Rd files without an \alias, as long
    documented in 'Writing R Extensions' §1.3.1.  The check for a
    missing \description has been moved from tools::checkRd() to
    tools::checkRdContents().
  * R CMD check now visits inst/NEWS.Rd and OS-specific man
    subdirectories when checking Rd files.
  * tools::checkDocFiles() and tools::checkRdContents() now also
    check internal Rd files by default, but "specially" (ignoring
    missing documentation of arguments).
  * R CMD Rdiff gets option --useEx.
  * R CMD check now warns on non-portable uses of Fortran KIND such
    as INTEGER(KIND=4) and REAL(KIND=8).
    To see the failing lines set environment variable
    _R_CHECK_FORTRAN_KIND_DETAILS_ to a true value.
  * When checking Rd files, R CMD check now notes some of the "lost
    braces" that tools::checkRd() finds.  Typical problems are Rd
    macros missing the initial backslash (e.g., code{...}), in-text
    set notation (e.g., {1, 2}, where the braces need escaping), and
    \itemize lists with \describe-style entries of the form
    \item{label}{description}.
  * R CMD INSTALL (and hence check) will compile C++ code with
  - DR_NO_REMAP if environment variable _R_CXX_USE_NO_REMAP_ is set
    to a true value.  It is planned that this will in future become
    the default for compiling C++.
  * The new built-in Rd macro \dontdiff{} can be used to mark example
    code whose output should be ignored when comparing check output
    to reference output (tests/Examples/&lt;pkg&gt;-Ex.Rout.save).  The
    \dontdiff tag, like \donttest, is _not_ shown on the rendered
    help page, so provides a clean alternative to ##
    IGNORE_RDIFF_(BEGIN|END) comments.
  * R CMD build when there is no NAMESPACE, now uses the recommended
    exportPattern("^[^.]"), instead of exporting everything.
  * R CMD check now warns about non-ASCII characters in the NAMESPACE
    file (in addition to R files). Such packages are not portable and
    may fail to install on some platforms.
  C-LEVEL FACILITIES:
  * Headers R_ext/Applic.h and R-ext/Linpack.h used to include
    R_ext/BLAS.h although this was undocumented and unneeded by their
    documented entry points.  They no longer do so.
  * New function R_missing(), factored out from do_missing(), used to
    fix PR#18579.
  * SEXP type S4SXP has been renamed to OBJSXP to support
    experimenting with alternative object systems.  The S4SXP value
    can still be used in C code but is now deprecated.  Based on
    contributions from the R Consortium's Object-Oriented Programming
    Working Group.
  * New function pow1p(x,y) for accurate (1+x)^y.
  * mkCharLenCE was incorrectly documented to take a size_t length
    but was implemented with int (and character strings in R are
    limited to 2^31 - 1 bytes).
  DEPRECATED AND DEFUNCT:
  * data() no longer handles zipped data from long-defunct (since R
    2.13.0) --use-zip-data installations.
  * The legacy graphics devices pictex() and xfig() are now
    deprecated.  They do not support recent graphics enhancements and
    their font handling is rudimentary. The intention is to retain
    them for historical interest as long as they remain somewhat
    functional.
  * Support for encoding = "MacRoman" has been removed from the pdf()
    and postscript() devices - this was a legacy encoding supporting
    classic macOS up to 2001 and no longer has universal libiconv
    support.
  * is.R() is deprecated as no other S dialect is known to be in use
    (and this could only identify historical dialects, not future
    ones).
    Further information on calls can be obtained by setting the
    environment variable _R_DEPRECATED_IS_R_ to error which turns the
    deprecation warning into an error and so by default gives a
    traceback.  (This is done by R CMD check --as-cran.)
  * UseMethod() no longer forwards local variables assigned in the
    generic function into method call environments before evaluating
    the method body. This makes method calls behave more like
    standard function calls and makes method code easier to analyze
    correctly.
  * The twelve as.data.frame.&lt;class&gt;() methods which were deprecated
    only via _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ and in R CMD
    check --as-cran are formally deprecated now in favour of calling
    as.data.frame() or as.data.frame.vector().  The deprecation
    "check" now works also when as.data.frame() is S4 generic thanks
    to Ivan Krylov.
  * The default method for the directional comparison operators &lt;, &gt;,
    &lt;=, and &gt;= now signals an error when one of the operands is a
    language object, i.e. a symbol or a call.
  * For terms.formula(), deprecate abb and neg.out arguments
    _formally_ in addition to just documenting it.
  BUG FIXES:
  * The methods package is more robust to not being attached to the
    search path.  More work needs to be done.
  * pairwise.t.test() misbehaved when subgroups had 0 DF for
    variance, even with pool.sd = TRUE.  (PR#18594 by Jack Berry).
  * Probability distribution functions [dpq]&lt;distrib&gt;(x, *), but also
    bessel[IKJY](x, .) now consistently preserve attributes(x) when
    length(x) == 0, e.g., for a 2 x 0 matrix, thanks to Karolis
    Koncevičius' report PR#18509.
  * Group "Summary" computations such as sum(1:3, 4, na.rm = 5, NA,
    7, na.rm = LL) now give an error instead of either 17 or NN for
    LL true or false, as proposed by Ivan Krylov on the R-devel
    mailing list.  (This also means it is now an error to specify
    na.rm more than once.)
  * as.complex(x) now returns complex(real = x, imaginary = 0) for
    _all_ numerical and logical x, notably also for NA or
    NA_integer_.
  * Directories are now omitted by file.copy(, recursive = FALSE) and
    in file.append() (PR#17337).
  * gsub() and sub() are now more robust to integer overflow when
    reporting errors caused by too large input strings (PR#18346).
  * Top-level handlers are now more robust to attempts to remove a
    handler whilst handlers are running (PR#18508).
  * The handling of Alt+F4 in dialogs created on Windows using
    GraphApp has been fixed (PR#13870).
  * density() more consistently computes grid values for the
    FFT-based convolution, following Robert Schlicht's analysis and
    proposal in PR#18337, correcting density values typically by a
    factor of about 0.999.  Argument old.coords = TRUE provides back
    compatibility.
  * palette.colors() gains a name argument that defaults to FALSE
    controlling whether the vector of colours that is returned has
    names (where possible).  PR#18529.
  * tools::xgettext() no longer extracts the (non-translatable) class
    names from warningCondition and errorCondition calls.
  * S3method(&lt;gen&gt;, &lt;class&gt;, &lt;func&gt;) in the NAMESPACE file now works
    (again) when &lt;func&gt; is visible from the namespace, e.g.,
    imported, or in base.
  * getParseData(f) now also works for a function defined in the
    first of several &lt;pkg&gt;/R/*.R source files, thanks to Kirill
    Müller's report and Duncan Murdoch's patch in PR#16756.
  * Rd \Sexpr macros with nested #ifdef conditionals were not
    processed.
  * A non-blocking connection with non-default encoding (such as a
    socket) now correctly returns from readLines() after new data has
    arrived also when its EOF had been reached previously.  Thanks to
    Peter Meilstrup's report on R-devel and Ivan Krylov's report and
    patch proposal in PR#18555.
  * tools::checkRdContents() failed to detect empty argument
    descriptions when they spanned multiple lines, including those
    generated by prompt().  These cases are now noted by R CMD check.
  * Plain-text help no longer outputs spurious colons in the
    arguments list (for multi-line \item labels in the Rd source).
  * kappa() and rcond() work correctly in more cases; kappa(., norm =
    "2") now warns that it computes the 1-norm with (default) exact =
    FALSE; prompted by Mikael Jagan's quite comprehensive PR#18543.
  * Rd skeletons generated by prompt() or promptData() now use a
    dummy title (so R CMD build works).  tools::checkRdContents() has
    been updated to detect such template leftovers, including from
    promptPackage().
  * When S4 method dispatch fails because no method was found, the
    error message now includes the signature argument names; thanks
    to Michael Chirico's proposal on the R-devel list.
  * withAutoprint({ .. }) now preserves srcrefs previously lost,
    thanks to Andrew Simmons' report plus fix in PR#18572.
  * transform.data.frame() no longer adjusts names; in particular,
    untransformed variables are kept as-is, including those with
    syntactically invalid names (PR#17890).
  * The keep.source option for Rd \Sexpr blocks is no longer ignored.
  * The formula methods for t.test() and wilcox.test() now catch when
    paired is passed, addressing PR#14359; use Pair(x1, x2) ~ 1 for a
    paired test.
  * The level reported in the browser prompt was often too large. It
    now shows the number of browser contexts on the stack.
  * For cbind() and rbind(), the optional deparse.level argument is
    now properly passed to methods, thanks to Mikael Jagan's PR#18579
    and comments there.
  * Some error and warning messages for large ('long vector')
    matrix(v, nr, nc) and dim(m) &lt;- d are now correct about sizes,
    using long long formatting, fixing PR#18612 (and more) reported
    by Mikael Jagan.
  * readChar(useBytes = TRUE) now terminates strings even when the
    underlying connection uses extra spaces in the input buffer.
    This fixes problems with extra garbage seen with gzip
    connections, PR#18605.
  * Named capture in PCRE regular expressions now works also with
    more than 127 named groups (PR#18588).
  * Datetime functions are now robust against long jumps when dealing
    with internal time zone changes.  This avoids confusing warnings
    about an invalid time zone, previously triggered by turning
    warnings into errors or handling them via tryCatch (PR#17966,
    PR#17780).
  * Datetime functions now restore even an empty TZ environment
    variable after internal time zone changes (PR#17724).  This makes
    results of datetime functions with this (typically unintentional)
    setting more predictable.
  * drop.terms(*) now drops response as by default, keep.response =
    FALSE, fixing PR#18564 thanks to Mikael Jagan.
  * dummy.coef(.) now also works for lm()-models with character
    categorical predictor variables rather than factor ones, fixing
    PR#18635 reported by Jinsong Zhao.
  * formals(f) &lt;- formals(f) now also works for a function w/o
    arguments and atomic _constant_ body(f).
  * Correct as.function(&lt;invalid list&gt;, .)'s error message.
  * removeSource() is yet more thorough in finding and removing
    "srcref" and the other source references from parsed R language
    chunks, fixing PR#18638 thanks to Andrew Simmons.
  * dgeom() is more accurate now, notably when its result is very
    small, fixing PR#18642 thanks to the proposal of Morten Welinder,
    also improving other instances where C level binom_raw(x, n, ..)
    has x == 0 or x== n.
  * warning() with options(warn = 1) has improved output for
    multi-line messages.
  * axis.Date() and axis.POSIXct() now respect the par("lab") setting
    for the number of pretty() intervals.
  * Comparisons for language objects (which are based on deparsing)
    are now more careful about using accurate deparsed results
    (PR#18676).
  * Plain-text help (Rd2txt) now correctly preserves blank lines
    following single-line \dontrun code.
  * &lt;POSIXlt&gt;[*] no longer sets wrong "balanced" attribute, fixing
    PR#18681 thanks to Mikael Jagan.
  * str(&lt;classed-call&gt;) now deparses the call as expected, fixing
    PR#18684, reported by Dave Slager.
  * In Rd examples, code following the closing brace of a \dontrun,
    \dontshow or \donttest tag on the same line is no longer skipped
    when R CMD check runs the examples.
  * as.data.frame(matrix(*, ncol=0)) now gets valid names() and
    colnames(); reported by Davis Vaughan on the R-devel list.
  * Internal Mathlib function stirlerr(n) is now almost fully
    (52-bit) accurate for all n &gt;= ~5.9 and more accurate also in the
    range 1 -- 5.9.  This entails small ("after 12th decimal")
    changes in density functions, e.g., dgamma() in _some_ regions of
    their support.  The fix was partly prompted by Morten Welinder's
    PR#18640.
  * Numbers like 9876543.2 are now considered non-integer by Mathlib
    internal R_nonint(), amending original fix of PR#15734.
  * Rd comment lines no longer cause broken paragraphs in the
    rendered PDF and plain-text help. In code blocks, pure comment
    lines (starting with %) no longer produce an empty line.
  * xtabs(Freq ~ .) now consistently defaults to na.action = na.pass,
    using na.rm = FALSE (added as an argument) when summing over Freq
    (PR#17770).
  * tools::testInstalledPackage() is no longer silent about failures
    from running examples or tests and its return code no longer
    ignores failures from checking vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1718366400">- CHANGES IN R 4.4.1:
  C-LEVEL FACILITIES:
  * Functions R_atof and R_strtod declared in header R_ext/Utils.h
    are now documented in 'Writing R Extensions' and so formally part
    of the API.
  * The non-API entry points Rf_setSVector, Rf_StringFalse,
    Rf_StringTrue and Rf_isBlankString have been added to those
    reported by R CMD check.
  * The new function Rf_allocLang is now available. This provides an
    alternative to the idiom of calling Rf_allocList followed by
    SET_TYPEOF.
  UTILITIES:
  * R CMD check now reports as warnings what gfortran calls 'Fortran
    2018 deleted features', all of which have long been marked as
    'obsolescent' and some of which were deleted in Fortran 2008 or
    earlier.  Fortran compilers are no longer required to support
    these.
  BUG FIXES:
  * as.numeric(), scan(), type.convert() and other places which use
    the internal C function R_strtod now require a _non-empty_ digit
    sequence in a decimal or binary exponent.  This aligns with the
    C/POSIX standard for strtod and with ?NumericConstants.
  * as.data.frame(m, make.names=NA) now works correctly for a matrix
    m with NA's in row names.
  * The error message from &lt;POSIXlt&gt;[["hour"]] and similar now
    mentions *[[, "hour"]], as wished for in PR#17409 and proposed by
    Michael Chirico.
  * qbinom() and potentially qpois(), qnbinom(), no longer sometimes
    fail accurate inversion (of pbinom(), etc), thanks to Christopher
    Chang's report and patch in PR#18711.
  * The internal help server on Windows can again serve requests sent
    in quick succession, fixing a regression in R 4.4.0.
  * debugcall(&lt;S3Generic&gt;()) now also works when a corresponding
    S4-generic version is in the methods cache (PR#18143).
  * Package tools' toTitleCase(ch0) now returns character(0) when ch0
    is of zero length; fixing PR#18724, reported by David Hugh Jones.
  * R CMD check is no longer broken (without a check result and no
    explanation in 00check.log) for a package which declares an
    invalid VignetteBuilder in DESCRIPTION but has no vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1730376000">- CHANGES IN R 4.4.2:
  C-LEVEL FACILITIES:
  * The S-compatibility macros F77_COM and F77_COMDECL defined in
    header R_ext/RS.h are deprecated and will be removed shortly.  We
    could find no record of their use.
  BUG FIXES:
  * Mathlib function lgammacor(x) no longer warns about underflow to
    zero for large x.
  * Text widths and heights were incorrectly reported by the Quartz
    device if the drawing context didn't exist yet (typically when
    drawing off-screen to a window that is yet to appear, see
    PR#18591).
  * The Quartz device could segfault in cases where paths with spaces
    are used in the new glyph drawing API.  Thanks to Tomek
    Gieorgijewski (PR#18758).
  * On macOS in R CRAN builds, it is again possible to read
    little-endian UTF-16 text with a BOM from a connection using
    encoding="UTF-16".  Users building R from source should avoid
    using the system libiconv in macOS 14.1 and later.
  * methods' internal .requirePackage() now re-enables primitive
    method dispatch when needed; thanks to Ivan Krylov for
    demystifying CRAN package check failures on the R-devel mailing
    list.</changelog>
</package>
<package pkgid="47770d96e79b7723dfebdd66c715962ae5503ecf1d325bbea33f8623e05859ff2645162045fea5d9c14aa06f0b188078cd80e080a37fd731ea2124430370c95c" name="R-class" arch="x86_64">
  <version epoch="0" ver="7.3.22" rel="51.0.2.2.sr20241103"/>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1620302400">- To get in sync with d:l:R:autoCRAN the Matrix package's split
  in -devel was reversed.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339200">- improved spec file according to comments of dimstar in
  https://build.opensuse.org/request/show/892685</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339201">- CHANGES IN R 4.1.0:
  FUTURE DIRECTIONS:
  * It is planned that the 4.1.x series will be the last to support
    32-bit Windows, with production of binary packages for that
    series continuing until early 2023.
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Data set esoph in package datasets now provides the correct
    numbers of controls; previously it had the numbers of cases added
    to these.  (Reported by Alexander Fowler in PR#17964.)
  NEW FEATURES:
  * www.omegahat.net is no longer one of the repositories known by
    default to setRepositories().  (Nowadays it only provides source
    packages and is often unavailable.)
  * Function package_dependencies() (in package tools) can now use
    different dependency types for direct and recursive dependencies.
  * The checking of the size of tarball in R CMD check --as-cran
    &lt;pkg&gt; may be tweaked via the new environment variable
    _R_CHECK_CRAN_INCOMING_TARBALL_THRESHOLD_, as suggested in
    PR#17777 by Jan Gorecki.
  * Using c() to combine a factor with other factors now gives a
    factor, an ordered factor when combining ordered factors with
    identical levels.
  * apply() gains a simplify argument to allow disabling of
    simplification of results.
  * The format() method for class "ftable" gets a new option justify.
    (Suggested by Thomas Soeiro.)
  * New ...names() utility.  (Proposed by Neal Fultz in PR#17705.)
  * type.convert() now warns when its as.is argument is not
    specified, as the help file always said it _should_.  In that
    case, the default is changed to TRUE in line with its change in
    read.table() (related to stringsAsFactor) in R 4.0.0.
  * When printing list arrays, classed objects are now shown _via_
    their format() value if this is a short enough character string,
    or by giving the first elements of their class vector and their
    length.
  * capabilities() gets new entry "Rprof" which is TRUE when R has
    been configured with the equivalent of --enable-R-profiling (as
    it is by default).  (Related to Michael Orlitzky's report
    PR#17836.)
  * str(xS4) now also shows extraneous attributes of an S4 object
    xS4.
  * Rudimentary support for vi-style tags in rtags() and R CMD rtags
    has been added.  (Based on a patch from Neal Fultz in PR#17214.)
  * checkRdContents() is now exported from tools; it and also
    checkDocFiles() have a new option chkInternal allowing to check
    Rd files marked with keyword "internal" as well.  The latter can
    be activated for R CMD check via environment variable
    _R_CHECK_RD_INTERNAL_TOO_.
  * New functions numToBits() and numToInts() extend the raw
    conversion utilities to (double precision) numeric.
  * Functions URLencode() and URLdecode() in package utils now work
    on vectors of URIs.  (Based on patch from Bob Rudis submitted
    with PR#17873.)
  * path.expand() can expand ~user on most Unix-alikes even when
    readline is not in use.  It tries harder to expand ~, for example
    should environment variable HOME be unset.
  * For HTML help (both dynamic and static), Rd file links to help
    pages in external packages are now treated as references to
    topics rather than file names, and fall back to a file link only
    if the topic is not found in the target package. The earlier rule
    which prioritized file names over topics can be restored by
    setting the environment variable _R_HELP_LINKS_TO_TOPICS_ to a
    false value.
  * c() now removes NULL arguments before dispatching to methods,
    thus simplifying the implementation of c() methods, _but_ for
    back compatibility keeps NULL when it is the first argument.
    (From a report and patch proposal by Lionel Henry in PR#17900.)
  * Vectorize()'s result function's environment no longer keeps
    unneeded objects.
  * Function ...elt() now propagates visibility consistently with
    ..n.  (Thanks to Lionel Henry's PR#17905.)
  * capture.output() no longer uses non-standard evaluation to
    evaluate its arguments.  This makes evaluation of functions like
    parent.frame() more consistent.  (Thanks to Lionel Henry's
    PR#17907.)
  * packBits(bits, type="double") now works as inverse of
    numToBits().  (Thanks to Bill Dunlap's proposal in PR#17914.)
  * curlGetHeaders() has two new arguments, timeout to specify the
    timeout for that call (overriding getOption("timeout")) and TLS
    to specify the minimum TLS protocol version to be used for
    https:// URIs (_inter alia_ providing a means to check for sites
    using deprecated TLS versions 1.0 and 1.1).
  * For nls(), an optional constant scaleOffset may be added to the
    denominator of the relative offset convergence test for cases
    where the fit of a model is expected to be exact, thanks to a
    proposal by John Nash.  nls(*, trace=TRUE) now also shows the
    convergence criterion.
  * Numeric differentiation _via_ numericDeriv() gets new optional
    arguments eps and central, the latter for taking central divided
    differences.  The latter can be activated for nls() via
    nls.control(nDcentral = TRUE).
  * nls() now passes the trace and control arguments to getInitial(),
    notably for all self-starting models, so these can also be fit in
    zero-noise situations via a scaleOffset.  For this reason, the
    initial function of a selfStart model must now have ... in its
    argument list.
  * bquote(splice = TRUE) can now splice expression vectors with
    attributes: this makes it possible to splice the result of
    parse(keep.source = TRUE).  (Report and patch provided by Lionel
    Henry in PR#17869.)
  * textConnection() gets an optional name argument.
  * get(), exists(), and get0() now signal an error if the first
    argument has length greater than 1.  Previously additional
    elements were silently ignored.  (Suggested by Antoine Fabri on
    R-devel.)
  * R now provides a shorthand notation for creating functions, e.g.
    \(x) x + 1 is parsed as function(x) x + 1.
  * R now provides a simple native forward pipe syntax |&gt;.  The
    simple form of the forward pipe inserts the left-hand side as the
    first argument in the right-hand side call.  The pipe
    implementation as a syntax transformation was motivated by
    suggestions from Jim Hester and Lionel Henry.
  * all.equal(f, g) for functions now by default also compares their
    environment(.)s, notably via new all.equal method for class
    function.  Comparison of nls() fits, e.g., may now need
    all.equal(m1, m2, check.environment = FALSE).
  * .libPaths() gets a new option include.site, allowing to _not_
    include the site library.  (Thanks to Dario Strbenac's suggestion
    and Gabe Becker's PR#18016.)
  * Lithuanian translations are now available.  (Thanks to Rimantas
    Zakauskas.)
  * names() now works for DOTSXP objects.  On the other hand, in
    R-lang, the R language manual, we now warn against relying on the
    structure or even existence of such dot-dot-dot objects.
  * all.equal() no longer gives an error on DOTSXP objects.
  * capabilities("cairo") now applies only to the file-based devices
    as it is now possible (if very unusual) to build R with Cairo
    support for those but not for X11().
  * There is optional support for tracing the progress of
    loadNamespace() - see its help.
  * (Not Windows.)  l10n_info() reports an additional element, the
    name of the encoding as reported by the OS (which may differ from
    the encoding part (if any) of the result from
    Sys.getlocale("LC_CTYPE").
  * New function gregexec() which generalizes regexec() to find _all_
    disjoint matches and well as all substrings corresponding to
    parenthesized subexpressions of the given regular expression.
    (Contributed by Brodie Gaslam.)
  * New function charClass() in package utils to query the
    wide-character classification functions in use (such as
    iswprint).
  * The names of quantile()'s result no longer depend on the global
    getOption("digits"), but quantile() gets a new optional argument
    digits = 7 instead.
  * grep(), sub(), regexp and variants work considerably faster for
    long factors with few levels.  (Thanks to Michael Chirico's
    PR#18063.)
  * Provide grouping of x11() graphics windows within a window
    manager such as Gnome or Unity; thanks to a patch by Ivan Krylov
    posted to R-devel.
  * The split() method for class data.frame now allows the f argument
    to be specified as a formula.
  * sprintf now warns on arguments unused by the format string.
  * New palettes "Rocket" and "Mako" for hcl.colors() (approximating
    palettes of the same name from the 'viridisLite' package).
    Contributed by Achim Zeileis.
  * The base environment and its namespace are now locked (so one can
    no longer add bindings to these or remove from these).
  * Rterm handling of multi-byte characters has been improved,
    allowing use of such characters when supported by the current
    locale.
  * Rterm now accepts ALT+ +xxxxxxxx sequences to enter Unicode
    characters as hex digits.
  * Environment variable LC_ALL on Windows now takes precedence over
    LC_CTYPE and variables for other supported categories, matching
    the POSIX behaviour.
  * duplicated() and anyDuplicated() are now optimized for integer
    and real vectors that are known to be sorted via the ALTREP
    framework. Contributed by Gabriel Becker via PR#17993.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 14
    and so packages that provide graphics devices should be
    reinstalled.
  * Graphics devices should now specify deviceVersion to indicate
    what version of the graphics engine they support.
  * Graphics devices can now specify deviceClip.  If TRUE, the
    graphics engine will never perform any clipping of output itself.
    The clipping that the graphics engine does perform (for both
    canClip = TRUE and canClip = FALSE) has been improved to avoid
    producing unnecessary artifacts in clipped output.
  * The grid package now allows gpar(fill) to be a linearGradient(),
    a radialGradient(), or a pattern().  The viewport(clip) can now
    also be a grob, which defines a clipping path, and there is a new
    viewport(mask) that can also be a grob, which defines a mask.
    These new features are only supported so far on the Cairo-based
    graphics devices and on the pdf() device.
  * (Not Windows.)  A warning is given when a Cairo-based type is
    specified for a png(), jpeg(), tiff() or bmp() device but Cairo
    is unsupported (so type = "Xlib" is tried instead).
  * grSoftVersion() now reports the versions of FreeType and
    FontConfig if they are used directly (not _via_ Pango), as is
    most commonly done on macOS.
  C-LEVEL FACILITIES:
  * The _standalone_ libRmath math library and R's C API now provide
    log1pexp() again as documented, and gain log1mexp().
  INSTALLATION on a UNIX-ALIKE:
  * configure checks for a program pkgconf if program pkg-config is
    not found.  These are now only looked for on the path (like
    almost all other programs) so if needed specify a full path to
    the command in PKG_CONFIG, for example in file config.site.
  * C99 function iswblank is required - it was last seen missing ca
    2003 so the workaround has been removed.
  * There are new configure options --with-internal-iswxxxxx,
  - -with-internal-towlower and --with-internal-wcwidth which allows
    the system functions for wide-character classification,
    case-switching and width (wcwidth and wcswidth) to be replaced by
    internal ones.  The first has long been used on macOS, AIX (and
    Windows) but this enables it to be unselected there and selected
    for other platforms (it is the new default on Solaris).  The
    second is new in this version of R and is selected by default on
    macOS and Solaris.  The third has long been the default and
    remains so as it contains customizations for East Asian
    languages.
    System versions of these functions are often minimally
    implemented (sometimes only for ASCII characters) and may not
    cover the full range of Unicode points: for example Solaris (and
    Windows) only cover the Basic Multilingual Plane.
  * Cairo installations without X11 are more likely to be detected by
    configure, when the file-based Cairo graphics devices will be
    available but not X11(type = "cairo").
  * There is a new configure option --with-static-cairo which is the
    default on macOS.  This should be used when only static cairo
    (and where relevant, Pango) libraries are available.
  * Cairo-based graphics devices on platforms without Pango but with
    FreeType/FontConfig will make use of the latter for font
    selection.
  LINK-TIME OPTIMIZATION on a UNIX-ALIKE:
  * Configuring with flag --enable-lto=R now also uses LTO when
    installing the recommended packages.
  * R CMD INSTALL and R CMD SHLIB have a new flag --use-LTO to use
    LTO when compiling code, for use with R configured with
  - -enable-lto=R.  For R configured with --enable-lto, they have
    the new flag --no-use-LTO.
    Packages can opt in or out of LTO compilation _via_ a UseLTO
    field in the DESCRIPTION file.  (As usual this can be overridden
    by the command-line flags.)
  BUILDING R on Windows:
  * for GCC &gt;= 8, FC_LEN_T is defined in config.h and hence character
    lengths are passed from C to Fortran in _inter alia_ BLAS and
    LAPACK calls.
  * There is a new text file src/gnuwin32/README.compilation, which
    outlines how C/Fortran code compilation is organized and
    documents new features:
  * R can be built with Link-Time Optimization with a suitable
    compiler - doing so with GCC 9.2 showed several
    inconsistencies which have been corrected.
  * There is support for cross-compiling the C and Fortran code
    in R and standard packages on suitable (Linux) platforms.
    This is mainly intended to allow developers to test later
    versions of compilers - for example using GCC 9.2 or 10.x has
    detected issues that GCC 8.3 in Rtools40 does not.
  * There is experimental support for cross-building R packages
    with C, C++ and/or Fortran code.
  * The R installer can now be optionally built to support a single
    architecture (only 64-bit or only 32-bit).
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++14 where
    available (which it is on all currently checked platforms): if
    not (as before) C++11 is used if available otherwise C++ is not
    supported.
    Packages which specify C++11 will still be installed using C++11.
    C++14 compilers may give deprecation warnings, most often for
    std::random_shuffle (deprecated in C++14 and removed in C++17).
    Either specify C++11 (see 'Writing R Extensions') or modernize
    the code and if needed specify C++14.  The latter has been
    supported since R 3.4.0 so the package's DESCRIPTION would need
    to include something like
    Depends: R (&gt;= 3.4)
  PACKAGE INSTALLATION on Windows:
  * R CMD INSTALL and R CMD SHLIB make use of their flag --use-LTO
    when the LTO_OPT make macro is set in file etc/${R_ARCH}/Makeconf
    or in a personal/site Makevars file.  (For details see 'Writing R
    Extensions' SS4.5.)
    This provides a valuable check on code consistency.  It does work
    with GCC 8.3 as in Rtools40, but that does not detect everything
    the CRAN checks with current GCC do.
  PACKAGE INSTALLATION on macOS:
  * The default personal library directory on builds with
  - -enable-aqua (including CRAN builds) now differs by CPU type,
    one of
    ~/Library/R/x86_64/x.y/library
    ~/Library/R/arm64/x.y/library
    This uses the CPU type R (and hence the packages) were built for,
    so when a x86_64 build of R is run under Rosetta emulation on an
    arm64 Mac, the first is used.
  UTILITIES:
  * R CMD check can now scan package functions for bogus return
    statements, which were possibly intended as return() calls (wish
    of PR#17180, patch by Sebastian Meyer). This check can be
    activated via the new environment variable
    _R_CHECK_BOGUS_RETURN_, true for --as-cran.
  * R CMD build omits tarballs and binaries of previous builds from
    the top-level package directory.  (PR#17828, patch by Sebastian
    Meyer.)
  * R CMD check now runs sanity checks on the use of LazyData, for
    example that a data directory is present and that
    LazyDataCompression is not specified without LazyData and has a
    documented value.  For packages with large LazyData databases
    without specifying LazyDataCompression, there is a reference to
    the code given in 'Writing R Extensions' SS1.1.6 to test the
    choice of compression (as in all the CRAN packages tested a
    non-default method was preferred).
  * R CMD build removes LazyData and LazyDataCompression fields from
    the DESCRIPTION file of packages without a data directory.
  ENCODING-RELATED CHANGES:
  * The parser now treats \Unnnnnnnn escapes larger than the upper
    limit for Unicode points (\U10FFFF) as an error as they cannot be
    represented by valid UTF-8.
    Where such escapes are used for outputting non-printable
    (including unassigned) characters, 6 hex digits are used (rather
    than 8 with leading zeros).  For clarity, braces are used, for
    example \U{0effff}.
  * The parser now looks for non-ASCII spaces on Solaris (as
    previously on most other OSes).
  * There are warnings (including from the parser) on the use of
    unpaired surrogate Unicode points such as \uD834.  (These cannot
    be converted to valid UTF-8.)
  * Functions nchar(), tolower(), toupper() and chartr() and those
    using regular expressions have more support for inputs with a
    marked Latin-1 encoding.
  * The character-classification functions used (by default) to
    replace the system iswxxxxx functions on Windows, macOS and AIX
    have been updated to Unicode 13.0.0.
    The character-width tables have been updated to include new
    assignments in Unicode 13.0.0.
  * The code for evaluating default (extended) regular expressions
    now uses the same character-classification functions as the rest
    of R (previously they differed on Windows, macOS and AIX).
  * There is a build-time option to replace the system's
    wide-character wctrans C function by tables shipped with R: use
    configure option --with-internal-towlower or (on Windows)
  - DUSE_RI18N_CASE in CFLAGS when building R.  This may be needed
    to allow tolower() and toupper() to work with Unicode characters
    beyond the Basic Multilingual Plane where not supported by system
    functions (e.g. on Solaris where it is the new default).
  * R is more careful when truncating UTF-8 and other multi-byte
    strings that are too long to be printed, passed to the system or
    libraries or placed into an internal buffer.  Truncation will no
    longer produce incomplete multibyte characters.
  DEPRECATED AND DEFUNCT:
  * Function plclust() from the package stats and
    package.dependencies(), pkgDepends(), getDepList(),
    installFoundDepends(), and vignetteDepends() from package tools
    are defunct.
  * Defunct functions checkNEWS() and readNEWS() from package tools
    and CRAN.packages() from utils have been removed.
  * R CMD config CXXCPP is defunct (it was deprecated in R 3.6.2).
  * parallel::detectCores() drops support for Irix (retired in 2013).
  * The LINPACK argument to chol.default(), chol2inv(),
    solve.default() and svd() has been defunct since R 3.1.0.  It was
    silently ignored up to R 4.0.3 but now gives an error.
  * Subsetting/indexing, such as ddd[*] or ddd$x on a DOTSXP
    (dot-dot-dot) object ddd has been disabled; it worked by accident
    only and was undocumented.
  BUG FIXES:
  * Many more C-level allocations (mainly by malloc and strdup) are
    checked for success with suitable alternative actions.
  * Bug fix for replayPlot(); this was turning off graphics engine
    display list recording if a recorded plot was replayed in the
    same session.  The impact of the bug became visible if resize the
    device after replay OR if attempted another savePlot() after
    replay (empty display list means empty screen on resize or empty
    saved plot).
  * R CMD check etc now warn when a package exports non-existing S4
    classes or methods, also in case of no "methods" presence.
    (Reported by Alex Bertram; reproducible example and patch by
    Sebastian Meyer in PR#16662.)
  * boxplot() now also accepts calls for labels such as ylab, the
    same as plot().  (Reported by Marius Hofert.)
  * The help page for xtabs() now correctly states that addNA is
    setting na.action = na.pass among others.  (Reported as PR#17770
    by Thomas Soeiro.)
  * The R CMD check &lt;pkg&gt; gives a longer and more comprehensible
    message when DESCRIPTION misses dependencies, e.g., in Imports:.
    (Thanks to the contributors of PR#17179.)
  * update.default() now calls the generic update() on the formula to
    work correctly for models with extended formulas.  (As reported
    and suggested by Neal Fultz in PR#17865.)
  * The horizontal position of leaves in a dendrogram is now correct
    also with center = FALSE.  (PR#14938, patch from Sebastian
    Meyer.)
  * all.equal.POSIXt() no longer warns about and subsequently ignores
    inconsistent "tzone" attributes, but describes the difference in
    its return value (PR#17277).  This check can be disabled _via_
    the new argument check.tzone = FALSE as suggested by Sebastian
    Meyer.
  * as.POSIXct() now populates the "tzone" attribute from its tz
    argument when x is a logical vector consisting entirely of NA
    values.
  * x[[2^31]] &lt;- v now works.  (Thanks to the report and patch by
    Suharto Anggono in PR#17330.)
  * In log-scale graphics, axis() ticks and label positions are now
    computed more carefully and symmetrically in their range,
    typically providing _more_ ticks, fulfilling wishes in PR#17936.
    The change really corresponds to an improved axisTicks() (package
    grDevices), potentially influencing grid and lattice, for
    example.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now correct to at
    least five digits where it was catastrophically wrong,
    previously.
  * sum(df) and similar "Summary"- and "Math"-group member functions
    now work for data frames df with logical columns, notably also of
    zero rows.  (Reported to R-devel by Martin "b706".)
  * unsplit() had trouble with tibbles due to unsound use of rep(NA,
    len)-indexing, which should use NA_integer_ (Reported to R-devel
    by Mario Annau.)
  * pnorm(x, log.p = TRUE) underflows to -Inf slightly later.
  * show(&lt;hidden S4 generic&gt;) prints better and without quotes for
    non-hidden S4 generics.
  * read.table() and relatives treated an "NA" column name as missing
    when check.names = FALSE PR#18007.
  * Parsing strings containing UTF-16 surrogate pairs such as
    "\uD834\uDD1E" works better on some (uncommon) platforms.
    sprintf("%X", utf8ToInt("\uD834\uDD1E")) should now give "1D11E"
    on all platforms.
  * identical(x,y) is no longer true for differing DOTSXP objects,
    fixing PR#18032.
  * str() now works correctly for DOTSXP and related exotics, even
    when these are doomed.
    Additionally, it no longer fails for lists with a class and
    "irregular" method definitions such that e.g. lapply(*) will
    necessarily fail, as currently for different igraph objects.
  * Too long lines in environment files (e.g. Renviron) no longer
    crash R. This limit has been increased to 100,000 bytes.
    (PR#18001.)
  * There is a further workaround for FreeType giving incorrect
    italic font faces with cairo-based graphics devices on macOS.
  * add_datalist(*, force = TRUE) (from package tools) now actually
    updates an existing data/datalist file for new content.  (Thanks
    to a report and patch by Sebastian Meyer in PR#18048.)
  * cut.Date() and cut.POSIXt() could produce an empty last interval
    for breaks = "months" or breaks = "years".  (Reported as PR#18053
    by Christopher Carbone.)
  * Detection of the encoding of 'regular' macOS locales such as
    en_US (which is UTF-8) had been broken by a macOS change:
    fortunately these are now rarely used with en_US.UTF-8 being
    preferred.
  * sub() and gsub(pattern, repl, x, *) now keep attributes of x such
    as names() also when pattern is NA (PR#18079).
  * Time differences ("difftime" objects) get a replacement and a
    rep() method to keep "units" consistent.  (Thanks to a report and
    patch by Nicolas Bennett in PR#18066.)
  * The \RdOpts macro, setting defaults for \Sexpr options in an Rd
    file, had been ineffective since R 2.12.0: it now works again.
    (Thanks to a report and patch by Sebastian Meyer in PR#18073.)
  * mclapply and pvec no longer accidentally terminate parallel
    processes started before by mcparallel or related calls in
    package parallel (PR#18078).
  * grep and other functions for evaluating (extended) regular
    expressions handle in Unicode also strings not explicitly flagged
    UTF-8, but flagged native when running in UTF-8 locale.
  * Fixed a crash in fifo implementation on Windows (PR#18031).
  * Binary mode in fifo on Windows is now properly detected from
    argument open (PR#15600, PR#18031).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1622808000">- The line %{__install} -m 755 -d %{_infodir}
  no longer works in TW or Factory.
  But without that line it works everywhere. So this instruction
  was commented out of the spec file.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1628596800">- CHANGES IN R 4.1.1:
  NEW FEATURES:
  * require(pkg, quietly = TRUE) is quieter and in particular does
    not warn if the package is not found.
  DEPRECATED AND DEFUNCT:
  * Use of ftp:// URIs should be regarded as deprecated, with
    on-going support confined to method = "libcurl" and not routinely
    tested.  (Nowadays no major browser supports them.)
  * The non-default method = "internal" is deprecated for http:// and
    ftp:// URIs for both download.file and url.
  * On Windows, method = "wininet" is deprecated for http://,
    https:// and ftp:// URIs for both download.file and url.  (A
    warning is only given for ftp://.)
    For ftp:// URIs the default method is now "libcurl" if available
    (which it is on CRAN builds).
    method = "wininet" remains the default for http:// and https://
    URIs but if libcurl is available, using method = "libcurl" is
    preferred.
  INSTALLATION:
  * make check now works also without a LaTeX installation.  (Thanks
    to Sebastian Meyer's PR#18103.)
  BUG FIXES:
  * make check-devel works again in an R build configured with
  - -without-recommended-packages.
  * qnbinom(p, size, mu) for large size/mu is correct now in a range
    of cases (PR#18095); similarly for the (size, prob)
    parametrization of the negative binomial.  Also qpois() and
    qbinom() are better and or faster for extreme cases.  The
    underlying C code has been modularized and is common to all four
    cases of discrete distributions.
  * gap.axis is now part of the axis() arguments which are passed
    from bxp(), and hence boxplot().  (Thanks to Martin Smith's
    report and suggestions in PR#18109.)
  * .First and .Last can again be set from the site profile.
  * seq.int(from, to, *) and seq.default(..) now work better in large
    range cases where from-to is infinite where the two boundaries
    are finite.
  * all.equal(x,y) now returns TRUE correctly also when several
    entries of abs(x) and abs(y) are close to .Machine$double.xmax,
    the largest finite numeric.
  * model.frame() now clears the object bit when removing the class
    attribute of a value via na.action (PR#18100).
  * charClass() now works with multi-character strings on Windows
    (PR#18104, fixed by Bill Dunlap).
  * encodeString() on Solaris now works again in Latin-1 encoding on
    characters represented differently in UTF-8.  Support for
    surrogate pairs on Solaris has been improved.
  * file.show() on Windows now works with non-ASCII path names
    representable in the current native encoding (PR#18132).
  * Embedded R on Windows can now find R home directory via the
    registry even when installed only for the current user
    (PR#18135).
  * pretty(x) with finite x now returns finite values also in the
    case where the extreme x values are close in size to the maximal
    representable number .Machine$double.xmax.
    Also, it's been tweaked for very small ranges and when a boundary
    is close (or equal) to zero; e.g., pretty(c(0,1e-317)) no longer
    has negative numbers, currently still warning about a very small
    range, and pretty(2^-(1024 - 2^-1/(c(24,10)))) is more accurate.
  * The error message for not finding vignette files when weaving has
    correct file sizes now. (Thanks to Sebastian Meyer's PR#18154.)
  * dnbinom(20, &lt;large&gt;, 1) now correctly gives 0, and similar cases
    are more accurate with underflow precaution.  (Reported by Francisco Vera Alcivar in PR#18072.)</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635163200">- repaired https://bugzilla.suse.com/show_bug.cgi?id=1191380
  (rpmacros now go to rpmmacrodir)
- minor clean-ups in spec file</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635768000">- CHANGES IN R 4.1.2:
  C-LEVEL FACILITIES:
  * The workaround in headers R.h and Rmath.h (using namespace std;)
    for the Oracle Developer Studio compiler is no longer needed now
    C++11 is required so has been removed.  A couple more usages of
    log() (which should have been std::log()) with an int argument
    are reported on Solaris.
  * The undocumented limit of 4095 bytes on messages from the
    S-compatibility macros PROBLEM and MESSAGE is now documented and
    longer messages will be silently truncated rather than
    potentially causing segfaults.
  * If the R_NO_SEGV_HANDLER environment variable is non-empty, the
    signal handler for SEGV/ILL/BUS signals (which offers recovery
    user interface) is not set. This allows more reliable debugging
    of crashes that involve the console.
  DEPRECATED AND DEFUNCT:
  * The legacy S-compatibility macros PROBLEM, MESSAGE, ERROR, WARN,
    WARNING, RECOVER, ... are deprecated and will be hidden in R
    4.2.0. R's native interface of Rf_error and Rf_warning has long
    been preferred.
  BUG FIXES:
  * .mapply(F, dots, .) no longer segfaults when dots is not a list
    and uses match.fun(F) as always documented; reported by Andrew
    Simmons in PR#18164.
  * hist(&lt;Date&gt;, ...) and hist(&lt;POSIXt&gt;, ...)  no longer pass
    arguments for rect() (such as col and density) to axis().
    (Thanks to Sebastian Meyer's PR#18171.)
  * \Sexpr{ch} now preserves Encoding(ch). (Thanks to report and
    patch by Jeroen Ooms in PR#18152.)
  * Setting the RNG to "Marsaglia-Multicarry" e.g., by RNGkind(), now
    warns in more places, thanks to Andr'e Gillibert's report and
    patch in PR#18168.
  * gray(numeric(), alpha=1/2) no longer segfaults, fixing PR#18183,
    reported by Till Krenz.
  * Fixed dnbinom(x, size=&lt;very_small&gt;, .., log=TRUE) regression,
    reported by Martin Morgan.
  * as.Date.POSIXlt(x) now keeps names(x), thanks to Davis Vaughan's
    report and patch in PR#18188.
  * model.response() now strips an "AsIs" class typically, thanks to
    Duncan Murdoch's report and other discussants in PR#18190.
  * try() is considerably faster in case of an error and long call,
    as e.g., from some do.call().  Thanks to Alexander Kaever's
    suggestion posted to R-devel.
  * qqline(y = &lt;object&gt;) such as y=I(.), now works, see also
    PR#18190.
  * Non-integer mgp par() settings are now handled correctly in
    axis() and mtext(), thanks to Mikael Jagan and Duncan Murdoch's
    report and suggestion in PR#18194.
  * formatC(x) returns length zero character() now, rather than ""
    when x is of length zero, as documented, thanks to Davis
    Vaughan's post to R-devel.
  * removeSource(fn) now retains (other) attributes(fn).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1647000000">- CHANGES IN R 4.1.3:
  NEW FEATURES:
  * The default version of Bioconductor has been changed to 3.14.
    (This is used by setRepositories and the menus in GUIs.)
  UTILITIES:
  * R CMD check --as-cran has a workaround for a bug in versions of
    file up to at least 5.41 which mis-identify DBF files last
    changed in 2022 as executables.
  C-LEVEL FACILITIES:
  * The legacy S-compatibility macros SINGLE_* in R_ext/Constants.h
    (included by R.h) are deprecated and will be removed in R 4.2.0.
  BUG FIXES:
  * Initialization of self-starting nls() models with initialization
    functions following the pre-R-4.1.0 API (without the ...
    argument) works again for now, with a deprecation warning.
  * Fixed quoting of ~autodetect~ in Java setting defaults to avoid
    inadvertent user lookup due to leading ~, reported in PR#18231 by
    Harold Gutch.
  * substr(., start, stop) &lt;- v now treats _negative_ stop values
    correctly.  Reported with a patch in PR#18228 by Brodie Gaslam.
  * Subscripting an array x without dimnames by a
    length(dim(x))-column character matrix gave "random" non-sense,
    now an error; reported in PR#18244 by Mikael Jagan.
  * ...names() now matches names(list(...)) closely, fixing PR#18247.
  * all.equal(*, scale = s) now works as intended when length(s) &gt; 1,
    partly thanks to Michael Chirico's PR#18272.
  * print(x) for long vectors x now also works for named atomic
    vectors or lists and prints the correct number when reaching the
    getOption("max.print") limit; partly thanks to a report and
    proposal by Hugh Parsonage to the R-devel list.
  * all.equal(&lt;selfStart&gt;, *) no longer signals a deprecation
    warning.
  * reformulate(*, response=r) gives a helpful error message now when
    length(r) &gt; 1, thanks to Bill Dunlap's PR#18281.
  * Modifying globalCallingHandlers inside withCallingHandlers() now
    works or fails correctly, thanks to Henrik Bengtsson's PR#18257.
  * hist(&lt;Date&gt;, breaks = "days") and hist(&lt;POSIXt&gt;, breaks = "secs")
    no longer fail for inputs of length 1.
  * qbeta(.001, .9, .009) and similar cases now converge correctly
    thanks to Ben Bolker's report in PR#17746.
  * window(x, start, end) no longer wrongly signals "'start' cannot
    be after 'end'", fixing PR#17527 and PR#18291.
  * data() now checks that its (rarely used) list argument is a
    character vector - a couple of packages passed other types and
    gave incorrect results.
  * which() now checks its arr.ind argument is TRUE rather coercing
    to logical and taking the first element - which gave incorrect
    results in package code.
  * model.weights() and model.offset() more carefully extract their
    model components, thanks to Ben Bolker and Tim Taylor's R-devel
    post.
  * list.files(recursive = TRUE) now shows all broken symlinks
    (previously, some of them may have been omitted, PR#18296).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1650628800">- CHANGES IN R 4.2.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * The formula method of aggregate() now matches the generic in
    naming its first argument x (resolving PR#18299 by Thomas
    Soeiro).
    This means that calling aggregate() with a formula as a named
    first argument requires name formula in earlier versions of R and
    name x now, so portable code should not name the argument (code
    in many packages did).
  * Calling &amp;&amp; or || with either argument of length greater than one
    now gives a warning (which it is intended will become an error).
  * Calling if() or while() with a condition of length greater than
    one gives an error rather than a warning.  Consequently,
    environment variable _R_CHECK_LENGTH_1_CONDITION_ no longer has
    any effect.
  * Windows users should consult the WINDOWS section below for some
    profound changes including
  * Support for 32-bit builds has been dropped.
  * UTF-8 locales are used where available.
  * The default locations for the R installation and personal
    library folder have been changed.
    Thanks to Tomas Kalibera for months of work on the Windows port
    for this release.
  NEW FEATURES:
  * matrix(x, n, m) now warns in more cases where length(x) differs
    from n * m, as suggested by Abby Spurdle and Wolfgang Huber in
    Feb 2021 on the R-devel mailing list.
    This warning can be turned into an error by setting environment
    variable _R_CHECK_MATRIX_DATA_ to TRUE: R CMD check --as-cran
    does so unless it is already set.
  * Function file_test() in package utils gains tests for symlinks,
    readability and writability.
  * capabilities("libxml") is now false.
    The description of capabilities("http/ftp") now reflects that it
    refers to the default method, no longer the internal one.
  * simplify2array() gains an except argument for controlling the
    exceptions used by sapply().
  * Environment variables R_LIBS_USER and R_LIBS_SITE are both now
    set to the R system default if unset or empty, and can be set to
    NULL to indicate an empty list of user or site library
    directories.
  * The warning for axis()(-like) calls in cases of relatively small
    ranges (typically in log-scale situations) is slightly improved
    _and_ suppressed from explicit calls to .axisPars() as has always
    been the intention.
  * The contrasts setter function `contrasts&lt;-` gains an explicit
    default how.many = NULL rather than just using missing(how.many).
  * grid.pretty() gains a new optional argument n = 5.
  * There is a new function .pretty() with option bounds as a
    technical-utility version of pretty().  It and pretty() gain a
    new argument f.min with a better than back-compatible default.
  * Function grDevices::axisTicks() and related functions such as
    graphics::axis() work better, notably for the log scale; partly
    because of the pretty() improvements, but also because care is
    taken e.g., when ylim is finite but diff(ylim) is infinite.
  * nclass.FD() gains a digits option.
  * The R Mathlib internal C function bd0() (called indirectly from a
    dozen probability density and distribution functions such as
    dpois(), dbinom(), dgamma(), pgamma() _etc_) has been
    complemented by a more sophisticated and (mostly) more accurate C
    function ebd0(), currently called only by internal dpois_raw()
    improving accuracy for R level dpois() and potentially others
    calling it such as dnbinom(), dgamma() or pgamma().  (Thanks to
    Morten Welinder's PR#15628.)
  * write.ftable() gains sep = " " argument as suggested by Thomas
    Soeiro.
  * The names of the locale categories supported by R's
    Sys.getlocale() and Sys.setlocale() are now provided by variable
    .LC.categories in the base namespace.
  * The Date and POSIXt methods for hist() and the histogram method
    for plot() now also use the new default col = "lightgray" in
    consistency with the corresponding change to hist()'s default for
    R 4.0.0.
  * hist.default() gains new fuzz argument, and the histogram plot
    method no longer uses fractional axis ticks when displaying
    counts ("Frequency").
  * mapply() and hence Map() now also obey the "max-or-0-if-any"
    recycling rule, such that, e.g., Map(`+`, 1:3, 1[0]) is valid
    now.
  * as.character(&lt;obj&gt;) for "hexmode" or "octmode" objects now
    fulfils the important basic rule as.character(x)[j] ===
    as.character(x[j]).
  * The set utility functions, notably intersect() have been tweaked
    to be more consistent and symmetric in their two set arguments,
    also preserving a common mode.
  * substr(ch, start,end) &lt;- new now e.g., preserves names(ch); ditto
    for substring(), thanks to a patch from Brodie Gaslam.
  * plot(&lt;lm&gt;) gains a extend.ylim.f argument, in partial response to
    PR#15285; further PR#17784 is fixed thanks to several
    contributors and a patch by Elin Waring.  The Cook's dist
    contours get customizable via cook.col and cook.lty with a
    different default color and their legend is nicer by default and
    customizable via cook.legendChanges.
  * Attempting to subset an object that is not subsettable now
    signals an error of class notSubsettableError. The
    non-subsettable object is contained in the object field of the
    error condition.
  * Subscript-out-of-bounds errors are now signaled as errors of
    class subscriptOutOfBoundsError.
  * Stack-overflow errors are now signaled as errors inheriting from
    class stackOverflowError. See ?stackOverflowError for more
    details.
  * New partly experimental Sys.setLanguage() utility, solving the
    main problem of PR#18055.
  * gettext() and gettextf() get a new option trim = TRUE which when
    set to false allows translations for strings such as "Execution
    halted\n" typical for C code.
  * An experimental implementation of hash tables is now available.
    See ?hashtab for more details.
  * identical() gains a extptr.as.ref argument for requesting that
    external pointer objects be compared as reference objects.
  * reorder() gets an argument decreasing which it passes to sort()
    for level creation; based on the wish and patch by Thomas Soeiro
    in PR#18243.
  * as.vector() gains a data.frame method which returns a simple
    named list, also clearing a long standing 'FIXME' to enable
    as.vector(&lt;data.frame&gt;, mode="list").  This breaks code relying
    on as.vector(&lt;data.frame&gt;) to return the unchanged data frame.
  * legend() is now vectorized for arguments cex, x.intersp, and
    text.width.  The latter can now also be specified as a vector
    (one element for each column of the legend) or as NA for
    computing a proper column wise maximum value of strwidth(legend).
    The argument y.intersp can be specified as a vector with one
    entry for each row of the legend.
    legend() also gains new arguments title.cex and title.font.
    Thanks to Swetlana Herbrandt.
  * Deparsing no longer remaps attribute names dim, dimnames, levels,
    names and tsp to historical S-compatible names (which structure()
    maps back).
  * sample() and sample.int() have additional sanity checks on their
    size and n arguments.
    all.equal.numeric() gains a sanity check on its tolerance
    argument - calling all.equal(a, b, c) for three numeric vectors
    is a surprisingly common error.
    mean(na.rm =), rank(na.last =), barplot(legend.text =),
    boxplot(), contour(drawlabels =), polygon(border =) and
    methods::is(class2 =) have more robust sanity checks on their
    arguments.
    R CMD Rd2pdf (used by R CMD check) has a more robust sanity check
    on the format of \alias{} commands.
  * psigamma(x, deriv) for negative x now also works for deriv = 4
    and 5; their underlying C level dpsifn() is documented in
    'Writing R Extensions'.
  * The HTML help system now uses HTML5 (wish of PR#18149).
  * ks.test() now provides exact p-values also with ties and MC
    p-values in the two-sample (Smirnov) case.  By Torsten Hothorn.
  * ks.test() gains a formula interface, with y ~ 1 for the
    one-sample (Kolmogorov) test and y ~ group for the two-sample
    (Smirnov) test.  Contributed by Torsten Hothorn.
  * The return value from ks.test() now has class c("ks.test",
    "htest") - packages using try() need to take care to use
    inherits() and not == on the class.
  * New functions psmirnov(), qsmirnov() and rsmirnov() in package
    stats implementing the asymptotic and exact distributions of the
    two-sample Smirnov statistic.
  * iconv() now allows sub = "c99" to use C99-style escapes for UTF-8
    inputs which cannot be converted to encoding to.
  * In a forward pipe |&gt; expression it is now possible to use a named
    argument with the placeholder _ in the rhs call to specify where
    the lhs is to be inserted.  The placeholder can only appear once
    on the rhs.
  * The included LAPACK sources have been updated to version 3.10.0,
    except for the four Fortran 77 routines which 3.10.0 has
    re-implemented in Fortran 90 (where the older versions have been
    retained as the R build process does not support Fortran 90).
  * path.expand() and most other uses of tilde expansion now warn if
    a path would be too long if expanded.  (An exception is
    file.exists(), which silently returns false.)
  * trunc(&lt;Date&gt;, *) now supports units = "months" or "years" for
    consistency with the POSIXt method, thanks to Dirk Eddelbuettel's
    proposal in PR#18099.
  * list2DF() now checks that its arguments are of the same length,
    rather than use recycling.
  * The HTML help system has several new features: LaTeX-like math
    can be typeset using either KaTeX or MathJax, usage and example
    code is highlighted using Prism, and for dynamic help the output
    of examples and demos can be shown within the browser if the
    knitr package is installed. These features can be disabled by
    setting the environment variable _R_HELP_ENABLE_ENHANCED_HTML_ to
    a false value.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 15
    and so packages that provide graphics devices should be
    reinstalled.
  * The grid package now allows the user to specify a "vector" of
    pattern fills.  The fill argument to gpar() accepts a list of
    gradients and/or patterns and the functions linearGradient(),
    radialGradient(), and pattern() have a new group argument.
    Points grobs (data symbols) can now also have a pattern fill.
    The grobCoords() function now returns a more informative and
    complex result.
  * The grid package has new functions for drawing isolated groups:
    grid.group(), grid.define(), and grid.use().  These functions add
    compositing operators and affine transformations to R's graphics
    capabilities.
    The grid package also has new functions for stroking and filling
    paths: grid.stroke(), grid.fill(), and grid.fillStroke().
    A new function as.path() allows the user to specify the fill rule
    for a path that is to be used for clipping, stroking, or filling;
    available options are "winding" and "evenodd".  A new function
    as.mask() allows the user to specify the type of a mask;
    available options are "alpha" and "luminance".
    These new features are only supported so far (at most) on the
    Cairo-based graphics devices and on the pdf() device.
  * dev.capabilities() reports on device support for the new
    features.
  * par() now warns about unnamed non-character arguments to prevent
    misuse such as {usr &lt;- par("usr"); par(usr)}.
  INSTALLATION:
  * Facilities for accessing ftp:// sites are no longer tested
    (except _pro tem_ for curlGetHeaders()) as modern browsers have
    removed support.
  * R can now be built with DEFS = -DSTRICT_R_HEADERS .
  PACKAGE INSTALLATION:
  * R CMD INSTALL no longer tangles vignettes. This completes an R
    CMD build change in R 3.0.0 and affects packages built before R
    3.0.2. Such packages should be re-made with R CMD build to have
    the tangled R code of vignettes shipped with the tarball.
  * USE_FC_LEN_T will become the default: this uses the correct
    prototypes for Fortran BLAS/LAPACK routines called from C/C++,
    and requires adjustment of most such calls - see 'Writing R
    Extensions' SS6.6.2.  (This has been supported since R 3.6.2.)
  * Package installation speed for packages installed with
    keep.source has been improved. This resolve the issue reported by
    Ofek Shilon in PR#18236.
  UTILITIES:
  * R CMD check can optionally report files/directories left behind
    in home, /tmp (even though TMPDIR is set) and other directories.
    See the "R Internals" manual for details.
  * R CMD check now reports byte-compilation errors during
    installation.  These are not usually fatal but may result in
    parts of the package not being byte-compiled.
  * _R_CHECK_DEPENDS_ONLY_ can be applied selectively to examples,
    tests and/or vignettes in R CMD check: see the "R Internals"
    manual.
  * _R_CHECK_SRC_MINUS_W_IMPLICIT_ now defaults to true: recent
    versions of Apple clang on macOS have made implicit function
    declarations in C into a compilation error.
  * R CMD check --as-cran makes use of the environment variable
    AUTORECONF.  See the "R Internals" manual SS8 for further details.
  * R CMD check --use-valgrind also uses valgrind when re-building
    vignettes as some non-Sweave vignettes unhelpfully comment out
    all their code when R CMD check runs vignettes.
  * Errors in re-building vignettes (unless there are LaTeX errors)
    are reported by R CMD check as ERROR rather than WARNING when
    running vignettes has been skipped (as it frequently is in CRAN
    checks and by --as-cran).
  * R CMD Rd2pdf gains a --quiet option that is used by R CMD build
    when building the PDF package manual.
  * R CMD Rd2pdf now always runs LaTeX in batch mode, consistent with
    Texinfo &gt;= 6.7. The --batch option is ignored.
  * R CMD build and R CMD check now include the Rd file name and line
    numbers in the error message of an \Sexpr evaluation failure.
  * For packages using the \doi Rd macro (now an install-time \Sexpr)
    but no other dynamic Rd content, R CMD build now produces a
    smaller tarball and is considerably faster - skipping temporary
    package installation.
  C-LEVEL FACILITIES:
  * The non-API header R_ext/R-ftp-http.h is no longer provided, as
    the entry points it covered are now all defunct.
  * A number of non-API declarations and macro definitions have been
    moved from the installed header Rinternals.h to the internal
    header Defn.h. Packages that only use entry points and
    definitions documented to be part of the API as specified in
    'Writing R Extensions' SS6 should not be affected.
  * The macro USE_RINTERNALS no longer has any effect when compiling
    package code.  Packages which also use R_NO_REMAP will need to
    ensure that the remapped names are used for calls to API
    functions that were formerly also made available as macros.
  * The deprecated legacy S-compatibility macros PROBLEM, MESSAGE,
    ERROR, WARN, WARNING, RECOVER, ... are no longer defined in
    R_exts/RS.h (included by R.h).  Replace these by calls to
    Rf_error and Rf_warning (defined in header R_ext/Error.h included
    by R.h).
    Header R_ext/RS.h no longer includes R_ext/Error.h.
  * Header R_ext/Constants.h (included by R.h) when included from C++
    now includes the C++ header cfloat rather than the C header
    float.h (now possible as C++11 is required).
  * The legacy S-compatibility macros DOUBLE_* in R_ext/Constants.h
    (included by R.h) are deprecated.
  * The deprecated S-compatibility macros SINGLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * R_Calloc, R_Free and R_Realloc are preferred to their unprefixed
    forms and error messages now use the prefix. These forms were
    introduced in R 3.4.0 and are available even when
    STRICT_R_HEADERS is defined.
  * rmultinom has been documented in 'Writing R Extensions' SS6 so is
    now part of the R API.
  * Similarly, Rtanpi, called from R level tanpi() is now part of the
    R API.
  * The long-deprecated, undocumented and non-API entry point call_R
    is no longer declared in R_ext/RS.h (included by R.h).
  * The header S.h which has been unsupported since Jan 2016 has been
    removed.  Use R.h instead.
  DEPRECATED AND DEFUNCT:
  * The (non-default and deprecated) method = "internal" for
    download.file() and url() no longer supports http:// nor ftp://
    URIs.  (It is used only for file:// URIs.)
    On Windows, download.file(method = "wininet") no longer supports
    ftp:// URIs.  (It is no longer the default method, which is
    "libcurl" and does.)
    On Windows, the deprecated method = "wininet" now gives a warning
    for http:// and https:// URIs for both download.file() and url().
    (It is no longer the default method.)
  * On Windows, the command-line option --max-mem-size and
    environment variable R_MAX_MEM_SIZE are defunct.  The memory
    allocation limit was important for 32-bit builds, but these are
    no longer supported.
  * default.stringsAsFactors() is now formally deprecated, where that
    was only mentioned on its regular help page, previously.  So it
    now gives a warning if called.
  * unix.time() is defunct now; it had been deprecated since R 3.4.0.
  BUG FIXES:
  * Setting digits = 0 in format(), print.default() (and hence
    typically print()) or options() is again invalid.  Its behaviour
    was platform-dependent, and it is unclear what "zero significant
    digits" should mean (PR#18098).
  * Messages from C code in the cairo section of package grDevices
    are now also offered for translation, thanks to Michael Chirico's
    PR#18123.
  * mean(x) with finite x now is finite also without "long.double"
    capability.
  * R CMD Rd2pdf no longer leaves an empty build directory behind
    when it aborts due to an already existing output file.  (Thanks
    to Sebastian Meyer's PR#18141.)
  * density(x, weights = w, na.rm = TRUE) when anyNA(x) is true, now
    removes weights "in parallel" to x, fixing PR#18151, reported by
    Matthias Gondan.  Additionally, it gets a subdensity option.
  * Conversion of \Sexpr[]{&lt;expR&gt;} to LaTeX or HTML no longer
    produces long blocks of empty lines when &lt;expR&gt; itself contains
    several lines all producing empty output.  Thanks to a report and
    patch by Ivan Krylov posted to R-devel.
  * R CMD build no longer fails if a package vignette uses child
    documents and inst/doc exists.  (Thanks to Sebastian Meyer's
    PR#18156.)
  * When an R documentation ('help' source) file man/foo.Rd in a
    package has \donttest{..} examples with a syntax error, it is now
    signalled as ERROR and with correct line numbers relating to the
  * -Ex.R file, thanks to Duncan Murdoch and Sebastian Meyer's
    reports and patch proposals in PR#17501.
  * Improved determination of the correct translation domain in
    non-base packages, addressing the combination of PR#18092 and
    PR#17998 (#c6) with reports and _augmented_ patch #2904 by
    Suharto Anggono.
    Note that "R-base" is no longer the default domain e.g., for
    top-level calls to gettext(); rather translation needs explicit
    domain = * specification in such cases.
  * identical(attrib.as.set=FALSE) now works correctly with data
    frames with default row names (Thanks to Charlie Gao's PR#18179).
  * txtProgressBar() now enforces a non-zero width for argument char,
    without which no progress can be visible.
  * dimnames(table(d)) is more consistent in the case where d is a
    list with a single component, thanks to Thomas Soeiro's report to
    R-devel.
    Further, table(d1, d2) now gives an error when d1 and d2 are data
    frames as suggested by Thomas in PR#18224.
  * Fix for drawing semi-transparent lines and fills on the native
    Windows graphics device (PR#18219 and PR#16694).  Thanks to Nick
    Ray for helpful diagnosis on Bugzilla.
  * The deparser now wraps sub-expressions such as if(A) ..  with
    parentheses when needed; thanks to Duncan Murdoch's PR#18232 and
    Lionel Henry's patches there.
  * remove.packages() no longer tries to uninstall Priority: base
    packages, thanks to a report and suggestions by Colin Fay in
    PR#18227.
  * win.metafile() now has xpinch and ypinch arguments so that the
    user can override Windows' (potentially wrong) guess at device
    dimensions.
  * x[i] and x[[i]] for non-integer i should now behave in all cases
    as always documented: the index used is equivalent to
    as.integer(i) unless that would overflow where trunc(i) is used
    instead; thanks to Suharto Anggono's report and patch proposals
    in PR#17977.
  * asOneSidedFormula() now associates the resulting formula with the
    global environment rather than the evaluation environment created
    for the call.
  * &lt;bibentry&gt;$name now matches the field name case-insensitively,
    consistent with bibentry() creation and the replacement method.
  * cbind() failed to detect some length mismatches with a mixture of
    time-series and non-time-series inputs.
  * The default LaTeX style file Sweave.sty used by the RweaveLatex
    driver no longer loads the obsolete ae package; thanks to a
    report by Thomas Soeiro in PR#18271.  Furthermore, it now skips
    \usepackage[T1]{fontenc} for engines other than pdfTeX (if
    detected) or if the new [nofontenc] option is used.
  * smooth.spline() now stores its logical cv argument more safely,
    fixing a rare bug when printing, and also stores n.
  * smooth.spline(x,y,*) now computes the cv.crit statistic
    correctly, also when is.unsorted(x), fixing PR#18294.
  * The data.frame method of rbind() now warns when binding
    not-wholly-recycling vectors, by analogy to the default method
    (for matrices).
  * setAs() finds the correct class for name to when multiple
    packages define a class with that name. Thanks to Gabor Csardi
    for the report.
  * Fix for detaching a package when two classes of the same name are
    present in method signatures for the same generic. Thanks to
    Gabor Csardi for the report.
  * match.arg("", c("", "a", "B")) gives a better error message, in
    part from PR#17959, thanks to Elin Waring.
  * R CMD Sweave --clean no longer removes pre-existing files or
    subdirectories (PR#18242).
  * The quartz() device no longer splits polylines into subpaths.
    That has caused narrowly-spaced lines with many points to always
    look solid even when dashed line type was used due to dash phase
    restarts.
  * Deparsing constructs such as quote(1 + `!`(2) + 3) works again as
    before R 3.5.0, thanks to the report and patch in PR#18284 by
    Suharto Anggono.
  * as.list(f) for a factor f now keeps names(f), fixing PR#18309.
  * qbeta(.001, .9, .009) and analogous qf() calls now return a
    correct value instead of NaN or wrongly 1, all with a warning;
    thanks to the report by Ludger Goeminne in PR#18302.
  * plot.lm() failed to produce the plot of residuals vs.  factor
    levels (i.e., which=5 when leverages are constant) for models
    with character predictors (PR#17840).
  * interaction.plot(..., xtick = TRUE) misplaced the x-axis line
    (PR#18305).
  * Not strictly fixing a bug, format()ing and print()ing of
    non-finite Date and POSIXt values NaN and +/-Inf no longer show
    as NA but the respective string, e.g., Inf, for consistency with
    numeric vector's behaviour, fulfilling the wish of PR#18308.
  * R CMD check no longer runs test scripts generated from
    corresponding .Rin files twice and now signals an ERROR if
    processing an .Rin script fails.
  * tools::Rd2txt() used for plain-text help pages now renders \hrefs
    (if tools::Rd2txt_options(showURLs = TRUE)) and \urls with
    percent-encoding and standards-compliant delimiting style (angle
    brackets and no URL: prefix).  \email is now rendered with a
    mailto: prefix.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1655985600">- CHANGES IN R 4.2.1:
  NEW FEATURES:
  * New function utils::findCRANmirror() to find out if a CRAN mirror
    has been selected, otherwise fallback to the main site.  This
    behaves in the same way as tools::CRAN_package_db() and is
    intended for packages wishing to access CRAN for purposes other
    than installing packages.
    The need for this was shown by a day when the main CRAN website
    was offline and a dozen or so packages which had its URL
    hardcoded failed their checks.
  INSTALLATION on a UNIX-ALIKE:
  * The libraries searched for by --with-blas (without a value) now
    include BLIS (after OpenBLAS but before ATLAS).  And on macOS,
    the Accelerate framework (after ATLAS).  (This is patterned after
    the AX_BLAS macro from the Autoconf Archive.)
  * The included LAPACK sources have been updated to 3.10.1.
  UTILITIES:
  * The (full path to) the command tidy to be used for HTML
    validation can be set by environment variable R_TIDYCMD.
  * Setting environment variable _R_CHECK_RD_VALIDATE_RD2HTML_ to a
    false value will override R CMD check --as-cran and turn off HTML
    validation.  This provides a way to circumvent a problematic
    tidy.
    The 2006 version that ships with macOS is always skipped.
  C-LEVEL FACILITIES:
  * The undocumented legacy declarations of Sint, Sfloat, SINT_MAX
    and SINT_MIN in header R.h are deprecated.
  BUG FIXES:
  * fisher.test(d) no longer segfaults for "large" d; fixing PR#18336
    by preventing/detecting an integer overflow reliably.
  * tar(., files=*) now produces correctly the warning about invalid
    uid or gid of files, fixing PR#18344, reported by Martin Morgan.
  * tk_choose.files() with multi = FALSE misbehaved on paths
    containing spaces (PR#18334) (regression introduced in R 4.0.0).
  * sort(x, partial = ind, *) now works correctly notably for the
    non-default na.last = FALSE or TRUE, fixing PR#18335 reported by
    James Edwards.
  * Environment variable _R_CHECK_XREFS_REPOSITORIES_ is only used
    for checking .Rd cross-references in R CMD check (as documented)
    and not for other uses looking for a CRAN mirror.
  * The search for a CRAN mirror when checking packages now uses
    getOption("repos") if that specifies a CRAN mirror, even when it
    does not also specify all three Bioconductor repositories (as was
    previously required).
  * The HTML code generated by tools::Rd2HTML() has been improved to
    pass tidy 5.8.0.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1667217600">- CHANGES IN R 4.2.2:
  NEW FEATURES:
  * tools::Rdiff(useDiff = TRUE) checks for the presence of an
    external diff command and switches to useDiff = FALSE if none is
    found.  This allows R CMD Rdiff to always work.
  * On Windows, environment variable R_LIBCURL_SSL_REVOKE_BEST_EFFORT
    can be used to switch to only 'best-effort' SSL certificate
    revocation checks with the default "libcurl" download method.
    This reduces security, but may be needed for downloads to work
    with MITM proxies (PR#18379).
  * (macOS) The run-time check for libraries from XQuartz for X11 and
    Tcl/Tk no longer uses otool from the Apple Developer Tools
    (PR#18400).
  * The LaTeX style for producing the PDF manuals, Rd.sty, now loads
    the standard amsmath, amsfonts and amssymb packages for greater
    coverage of math commands in the Rd \eqn and \deqn macros.  The
    \mathscr LaTeX command is also provided (via the mathrsfs
    package, if available, or the amsfonts bundle otherwise),
    fulfilling the wish of PR#18398.
  * (Windows) The default format of readClipboard() and
    writeClipboard() has been changed to 13 (CF_UNICODETEXT).
  INSTALLATION on a UNIX-ALIKE:
  * The PDF manuals (if built) can be compacted by the new target
    make compact-pdf (at the top level or in directory doc/manual).
  * There is now configure support for LLVM clang 15 on Linux, which
    defaults to position-independent (PIE) executables whereas
    gfortran does not.
  * Many small changes to ease compilation (and suppress warnings)
    with LLVM clang 15.
  BUG FIXES:
  * Rscript -e would fail if stdin were closed (Reported by Henrik
    Bengtsson.)
  * qt(*, log.p=TRUE) in outer tails no longer produces NaN in its
    final steps, thus fixing PR#18360.
  * tools::Rd2latex() now escapes hashes and ampersands when writing
    URLs, fixing LaTeX errors with such URLs in \tabular.
  * When isGeneric(f, fdef=*) is used with mismatching names, the
    warning is better understandable; reported (with fix) in PR#18370
    by Gabe Becker.
  * poly(x, n) now works again (and is now documented) when x is a
    "Date" or "POSIXct" object, or of another class while fulfilling
    mode(x) == "numeric".  This also enables poly(x, *, raw=TRUE) for
    such variables.  Reported by Michael Chirico to R-devel.
  * write.table(), write.csv() and write.csv2() restore their
    numerical precision (internal equivalent of digits = 15) after an
    interrupt (PR#18384).
  * One can now read also byte FF from a clipboard connection
    (PR#18385).
  * source("") and source(character()) now give more helpful error
    messages.
  * R CMD check --as-cran set _R_CHECK_TIMINGS_ too late to have the
    intended effect.
  * as.POSIXlt(x) now also works with very large dates x, fixing
    PR#18401 reported by Hannes M"uhleisen.
  * Files can now be extracted even from very large zip archives
    (PR#18390, thanks to Martin Jakt).
  * Non-finite objects of class "POSIXlt" are now correctly coerced
    to classes "Date" and "POSIXct"; following up on the extension to
    format() them correctly.
  * Added methods for is.finite(), is.infinite() and is.nan() for
    "POSIXlt" date-time objects.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1678881600">- CHANGES IN R 4.2.3:
  C-LEVEL FACILITIES:
  * The definition of DL_FUNC in R_ext/Rdynload.h has been changed to
    be fully C-compliant.  This means that functions loaded _via_ for
    example R_GetCCallable need to be cast to an appropriate type if
    they have any arguments.
  * .Machine has a new element sizeof.time_t to identify old systems
    with a 32-bit type and hence a limited range of date-times (and
    limited support for dates millions of years from present).
  PACKAGE INSTALLATION:
  * (Windows) The default C++ standard had accidentally been left at
    C++11 when it was changed to C++14 on Unix.
  BUG FIXES:
  * As "POSIXlt" objects may be "partially filled" and their list
    components meant to be recycled, length() now is the length of
    the longest component.
  * as.POSIXlt.Date() could underflow for dates in the far past (more
    than half a million years BCE).
  * as.Date.POSIXlt(x) would return "1970-01-01" instead of NA in R
    4.2.2, e.g., for
    x &lt;- as.POSIXlt(c("2019-01-30","2001-1-1"))
    x$mon &lt;- c(0L, NA); as.Date(x)
  * R CMD check failed to apply enabled _R_CHECK_SUGGESTS_ONLY_ to
    examples and vignettes (regression in R 4.2.0).
  * R CMD check did not re-build vignettes in separate processes by
    default (regression in R 4.2.0).
  * Running examples from HTML documentation now restores previous
    knitr settings and options (PR#18420).
  * Quartz: fonts are now located using Core Graphics API instead of
    deprecated ATS which is no longer supported in the macOS 13 SDK
    (PR#18426).  This also addresses an issue where the currently
    used font in the Quartz device context was not correctly
    retained.
  * (Windows) Math symbols in text drawing functions are again
    rendered correctly (PR#18440).  This fixes a regression in R
    4.2.1 caused by a fix in PR#18382 which uncovered an issue in
    GraphApp due to which the symbol charset was not used with TT
    Symbol font face.
  * (Windows) Installing a package with a src/Makefile.{win,ucrt}
    file includes ~/.R/Makevars.win64 in the search for user
    makevars, as documented in "R Installation and Administration"
    and done for packages with a src/Makevars.{win,ucrt} file.
  * format(&lt;POSIXlt_w/_unbalanced_sec&gt;, "....%OS&lt;n&gt;") with n &gt; 0 no
    longer accidentally uses the unbalanced seconds, thanks to
    Suharto Anggono's report (including patch) in PR#18448.
  * solve.default(a, b) works around issues with some versions of
    LAPACK when a contains NA or NaN values.
  * When UseMethod() cannot dispatch, it no longer segfaults
    producing the error message in case of a long class(), thanks to
    Joris Vankerschaver's report (including patch) in PR#18447.
  * When example(foo, ..) produces graphics on an interactive device
    it needs to open itself, it now leaves devAskNewPage() unchanged
    even when it was FALSE, thus fixing a 14 years old '&lt;FIXME&gt;'.
  * packageDescription() again catches errors from encoding
    conversions. This also fixes broken packageVersion() in C locale
    on systems where iconv does not support transliteration.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1681128000">- add patch to build with libcurl &gt;= 8</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1682078400">- CHANGES IN R 4.3.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Calling &amp;&amp; or || with LHS or (if evaluated) RHS of length greater
    than one is now always an error, with a report of the form
    'length = 4' in coercion to 'logical(1)'
    Environment variable _R_CHECK_LENGTH_1_LOGIC2_ no longer has any
    effect.
  NEW FEATURES:
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.10.1.  (This caused some platform-dependent
    changes to package check output.)  And then to the sources from
    LAPACK version 3.11.0 (with changes only to double complex
    subroutines).
  * The included LAPACK sources have been updated to include the four
    Fortran 90 routines rather than their Fortran 77 predecessors.
    This may give some different signs in SVDs or
    eigendecompositions..  (This completes the transition to LAPACK
    3.10.x begun in R 4.2.0.)
  * The LAPACK sources have been updated to version 3.11.0.  (No new
    subroutines have been added, so this almost entirely bug fixes:
    Those fixes do affect some computations with NaNs, including R's
    NA.)
  * The parser now signals _classed_ errors, notably in case of the
    pipe operator |&gt;.  The error object and message now give line and
    column numbers, mostly as proposed and provided by Duncan Murdoch
    in PR#18328.
  * toeplitz() is now generalized for asymmetric cases, with a
    toeplitz2() variant.
  * xy.coords() and xyz.coords() and consequently, e.g., plot(x,y,
    log = "y") now signal a _classed_ warning about negative values
    of y (where log(.) is NA).  Such a warning can be specifically
    suppressed or caught otherwise.
  * Regular expression functions now check more thoroughly whether
    their inputs are valid strings (in their encoding, e.g. in
    UTF-8).
  * The performance of grep(), sub(), gsub() and strsplit() has been
    improved, particularly with perl = TRUE and fixed = TRUE.  Use of
    useBytes = TRUE for performance reasons should no longer be
    needed and is discouraged: it may lead to incorrect results.
  * apropos() gains an argument dot_internals which is used by the
    completion (help(rcompgen)) engine to also see base internals
    such as .POSIXct().
  * Support in tools::Rdiff() for comparing uncompressed PDF files is
    further reduced - see its help page.
  * qqplot(x, y, ...) gains conf.level and conf.args arguments for
    computing and plotting a confidence band for the treatment
    function transforming the distribution of x into the distribution
    of y (Switzer, 1976, _Biometrika_). Contributed by Torsten
    Hothorn.
  * Performance of package_dependencies() has been improved for cases
    when the number of dependencies is large.
  * Strings newly created by gsub(), sub() and strsplit(), when any
    of the inputs is marked as "bytes", are also marked as "bytes".
    This reduces the risk of creating invalid strings and accidental
    substitution of bytes deemed invalid.
  * Support for readLines(encoding = "bytes") has been added to allow
    processing special text files byte-by-byte, without creating
    invalid strings.
  * iconv(from = "") now takes into account any declared encoding of
    the input elements and uses it in preference to the native
    encoding.  This reduces the risk of accidental creation of
    invalid strings, particularly when different elements of the
    input have different encoding (including "bytes").
  * Package repositories in getOption("repos") are now initialized
    from the repositories file when utils is loaded (if not already
    set, e.g., in .Rprofile).  (From a report and patch proposal by
    Gabriel Becker in PR#18405.)
  * compactPDF() gets a verbose option.
  * type.convert() and hence read.table() get new option tryLogical =
    TRUE with back compatible default.  When set to false, converts
    "F" or "T" columns to character.
  * Added new unit prefixes "R" and "Q" for abbreviating
    (unrealistically large) sizes beyond 10^{27} in standard = "SI",
    thanks to Henrik Bengtsson's PR#18435.
  * as.data.frame()'s default method now also works fine with atomic
    objects inheriting from classes such as "roman", "octmode" and
    "hexmode", such fulfilling the wish of PR#18421, by Benjamin
    Feakins.
  * The as.data.frame.vector() utility now errors for wrong-length
    row.names.  It warned for almost six years, with "Will be an
    error!".
  * sessionInfo() now also contains La_version() and reports codepage
    and timezone when relevant, in both print() and toLatex() methods
    which also get new option tzone for displaying timezone
    information when locale = FALSE.
  * New function R_compiled_by() reports the C and Fortran compilers
    used to build R, if known.
  * predict(&lt;lm&gt;, newdata = *) no longer unnecessarily creates an
    offset of all 0s.
  * solve() for complex inputs now uses argument tol and by default
    checks for 'computational singularity' (as it long has done for
    numeric inputs).
  * predict(&lt;rank-deficient lm&gt;, newdata=*) now obeys a new argument
    rankdeficient, with new default "warnif", warning only if there
    are non-estimable cases in newdata.  Other options include
    rankdeficient = "NA", predicting NA for non-estimable newdata
    cases.  This addresses PR#15072 by Russ Lenth and is based on his
    original proposal and discussions in PR#16158 also by David Firth
    and Elin Waring.  Still somewhat experimental.
  * Rgui console implementation now works better with the NVDA screen
    reader when the full blinking cursor is selected.  The underlying
    improvements in cursor handling may help also other screen
    readers on Windows.
  * The drop-field control in GraphApp can now be left with the TAB
    key and all controls can be navigated in the reverse order using
    the Shift+TAB key, improving accessibility of the Rgui
    configuration editor.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now fully accurate
    (instead of to "only" minimally five digits).
  * demo(error.catching) now also shows off withWarnings() and
    tryCatchWEMs().
  * As an experimental feature the placeholder _ can now also be used
    in the rhs of a forward pipe |&gt; expression as the first argument
    in an extraction call, such as _$coef. More generally, it can be
    used as the head of a chain of extractions, such as _$coef[[2]].
  * Spaces in the environment variable used to choose the R session's
    temporary directory (TMPDIR, TMP and TEMP are tried in turn) are
    now fatal.  (On Windows the 'short path' version of the path is
    tried and used if that does not contain a space.)
  * all.equal.numeric() gets a new optional switch giveErr to return
    the numeric error as attribute.  Relatedly,
    stopifnot(all.equal&lt;some&gt;(a, b, ..)) is as "smart" now, as
    stopifnot(all.equal(....)) has been already, thus allowing
    customized all.equal&lt;Some&gt;() wrappers.
  * R on Windows is now able to work with path names longer than 260
    characters when these are enabled in the system (requires at
    least Windows 10 version 1607).  Packages should be updated to
    work with long paths as well, instead of assuming PATH_MAX to be
    the maximum length.  Custom front-ends and applications embedding
    R need to update their manifests if they wish to allow this
    feature.  See
    &lt;https://blog.r-project.org/2023/03/07/path-length-limit-on-windows&gt;
    for more information.
  * 'Object not found' and 'Missing argument' errors now give a more
    accurate error context. Patch provided by Lionel Henry in
    PR#18241.
  * The @ operator is now an S3 generic. Based on contributions by
    Tomasz Kalinowski in PR#18482.
  * New generic chooseOpsMethod() provides a mechanism for objects to
    resolve cases where two suitable methods are found for an Ops
    Group Generic. This supports experimenting with alternative
    object systems. Based on contributions by Tomasz Kalinowski in
    PR#18484.
  * inherits(x, what) now accepts values other than a simple
    character vector for argument what. A new generic, nameOfClass(),
    is called to resolve the class name from what. This supports
    experimenting with alternative object systems. Based on
    contributions by Tomasz Kalinowski in PR#18485.
  * Detection of BLAS/LAPACK in use (sessionInfo()) with FlexiBLAS
    now reports the current backend.
  * The "data.frame" method for subset() now warns about extraneous
    arguments, typically catching the use of = instead of == in the
    subset expression.
  * Calling a:b when numeric a or b is longer than one may now be
    made into an error by setting environment variable
    _R_CHECK_LENGTH_COLON_ to a true value, along the proposal in
    PR#18419 by Henrik Bengtsson.
  * density(x, weights = *) now warns if automatic bandwidth
    selection happens without using weights; new optional warnWbw may
    suppress the warning.  Prompted by Christoph Dalitz' PR#18490 and
    its discussants.
  * rm(list = *) is faster and more readable thanks to Kevin Ushey's
    PR#18492.
  * The plot.lm() function no longer produces a normal Q-Q plot for
    GLMs. Instead it plots a half-normal Q-Q plot of the absolute
    value of the standardized deviance residuals.
  * The print() method for class "summary.glm" no longer shows
    summary statistics for the deviance residuals by default.  Its
    optional argument show.residuals can be used to show them if
    required.
  * The tapply() function now accepts a data frame as its X argument,
    and allows INDEX to be a formula in that case. by.data.frame()
    similarly allows INDICES to be a formula.
  * The performance of df[j] &lt;- value (including for missing j) and
    write.table(df) has been improved for data frames df with a large
    number of columns.  (Thanks to Gabriel Becker's PR#18500,
    PR#18503 and discussants, prompted by a report from Toby Dylan
    Hocking on the R-devel mailing list.)
  * The matrix multiply operator %*% is now an S3 generic, belonging
    to new group generic matrixOps.  From Tomasz Kalinowski's
    contribution in PR#18483.
  * New function array2DF() to convert arrays to data frames,
    particularly useful for the list arrays created by tapply().
  DATES and TIMES:
  * On platforms where (non-UTC) datetimes before 1902 (or before
    1900 as with system functions on recent macOS) are guessed by
    extrapolating time zones from 1902-2037, there is a warning at
    the first use of extrapolation in a session.  (As all time zones
    post 2037 are extrapolation, we do not warn on those.)
  * (Platforms using --with-internal-tzone, including Windows and by
    default macOS). How years are printed in dates or date-times can
    be controlled by environment variable R_PAD_YEARS_BY_ZERO.  The
    default remains to pad to 4 digits by zeroes, but setting value
    no gives no padding (as used by default by glibc).
  * strftime() tries harder to determine the offset for the "%z"
    format, and succeeds on the mainstream R platforms.
  * strftime() has a limit of 2048 bytes on the string produced -
    attempting to exceed this is an error.  (Previously it silently
    truncated at 255 bytes.)
  * sessionInfo() records (and by default prints) the system time
    zone as part of the locale information.  Also, the source
    (system/internal) of the date-time conversion and printing
    functions.
  * Objects of class "POSIXlt" created in this version of R always
    have 11 components: component zone is always set, and component
    gmtoff is set for times in UTC and usually set on the (almost
    all) platforms which have C-level support, otherwise is NA.
  * There are comprehensive validity checks on the structure of
    objects of class "POSIXlt" when converting (including formatting
    and printing).  (This avoids mis-conversions of hand-crafted
    objects.)
  * There is some support for using the native date-time routines on
    macOS: this is only viable on recent versions (e.g. 12.6 and 13)
    and does get wrong some historical changes (before 1900, during
    WWII).  Use of --with-internal-tzone remains the default.
  * as.POSIXct(&lt;numeric&gt;) and as.POSIXlt(.) (without specifying
    origin) now work.  So does as.Date(&lt;numeric&gt;).
  * as.Date.POSIXct(., tz) now treats several tz values, notably
    "GMT" as equivalent to "UTC", proposed and improved by Michael
    Chirico and Joshua Ulrich in PR#17674.
  * Experimental balancePOSIXlt() utility allows using "ragged" and
    or out-of-range "POSIXlt" objects more correctly, e.g., in
    subsetting and subassignments.  Such objects are now documented.
    More experimentally, a "POSIXlt" object may have an attribute
    "balanced" indicating if it is known to be filled or fully
    balanced.
  * Functions axis.Date() and axis.POSIXct() are rewritten to gain
    better default tick locations and better default formats by using
    prettyDate(). Thanks to Swetlana Herbrandt.
  * The mapping of Windows' names for time zones to IANA's 'Olson'
    names has been updated.  When ICU is available (it is by
    default), it is used to get a mapping for the current region set
    in Windows.  This can be overridden by setting environment
    variable TZ to the desired Olson name - see OlsonNames() for
    those currently available.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 16
    and so packages that provide graphics devices should be
    reinstalled.
  * The grDevices and grid packages have new functions for rendering
    typeset glyphs, primarily: grDevices::glyphInfo() and
    grid::grid.glyph().
    Rendering of typeset glyphs is only supported so far on the
    Cairo-based graphics devices and on the pdf() and quartz()
    devices.
  * The defined behaviour for "clear" and "source" compositing
    operators (via grid::grid.group()) has been changed (to align
    better with simple interpretation of original Porter-Duff
    definitions).
  * Support for gradients, patterns, clipping paths, masks, groups,
    compositing operators, and affine transformations has been added
    to the quartz() device.
  INSTALLATION on a UNIX-ALIKE:
  * A system installation of generic LAPACK 3.10.0 or later will be
    preferred to the version in the R sources.
    configure option --with-lapack=no (equivalently --without-lapack)
    forces compilation of the internal LAPACK sources.
    If --with-lapack is not specified, a system liblapack is looked
    for and used if it reports version 3.10.0 or later and does not
    contain BLAS routines.
    Packages using LAPACK will need to be reinstalled if this changes
    to using an external library.
  * On aarch64 Linux platforms using GCC, configure now defaults to
  - fPIC (instead of -fpic), as desired in PR#18326.
  * configure now checks conversion of datetimes between POSIXlt and
    POSIXct around year 2020.  Failure (which has been seen on
    platforms missing tzdata) is fatal.
  * If configure option --with-valgrind-instrumentation is given
    value 1 or 2, option --with-system-valgrind-headers is now the
    default and ignored (with a warning).  It is highly recommended
    that the system headers are installed alongside valgrind: they
    are part of its packaging on some Linux distributions and
    packaged separately (e.g. in the valgrind-devel RPM) on others.
    configure will give a warning if they are not found.
    The system headers will be required in a future release of R to
    build with valgrind instrumentation.
  * libcurl 8.x is now accepted by configure: despite a change in
    major version number it changes neither API nor ABI.
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools43, an update of the Rtools42 toolchain.  It is
    based on gcc 12 and newer versions of MinGW-W64, binutils and
    libraries.  At this time R-devel can still be built using
    Rtools42 without changes, but when R-devel is installed via the
    installer, it will by default look for Rtools43.
  * Old make targets rsync-extsoft and 32-bit ones that are no longer
    needed have been removed.
  * Default builds (including for packages) no longer select C99.
    Thus the C standard used is the default for the compiler, which
    for the toolchain in Rtools43 is C17.  (This is consistent with
    Unix builds.)
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++17 where
    available (which it is on all currently checked platforms): if
    not C++14 or C++11 is used if available otherwise C++ is not
    supported.
  * USE_FC_LEN_T is the default: this uses the correct
    (compiler-dependent) prototypes for Fortran BLAS/LAPACK routines
    called from C/C++, and requires adjustment of many such calls -
    see 'Writing R Extensions' SS6.6.1.
  * There is initial support for C++23 as several compilers are now
    supporting -std=c++23 or -std=c++2b or similar.  As for C++20,
    there no additional configure checks for C++23 features beyond a
    check that the compiler reports a __cplusplus value greater than
    that in the C++20 standard.  C++ feature tests should be used.
  * There is support for a package to indicate the version of the C
    standard which should be used to compile it, and for the
    installing user to specify this.  In most cases R defaults to the
    C compiler's default standard which is C17 (a `bug-fix' of C11) -
    earlier versions of R or compilers may have defaulted to C99.
    Current options are:
    USE_C17 Use a standard that is at most C17.  The intention is to
    allow legacy packages to still be installed when later C
    standards become the default, including packages using new
    keywords as identifiers or with K&amp;R-style function
    declarations.  This will use C17 if available, falling back
    to C11.
    USE_C90 Use the C90 (aka C89) standard.  (As that standard did
    not require compilers to identify that version, all we can
    verify is that the compiler does not claim to be using a
    later standard.  It may accept C99 features - for example
    clang accepts // to make comments.)
    USE_C99 Use the C99 standard. This should be rarely needed - it
    avoids the few new features of C11/C17 which can be useful if
    a package assumes them if C17 is specified and they are not
    implemented.
    USE_C23 Use C23 (or in future, later).  Compiler/library support
    for C23 is still being implemented, but LLVM clang from
    15.0.0 and the upcoming GCC 13 have quite extensive support.
    These can be specified as part of the SystemRequirements field in
    the package's DESCRIPTION file or _via_ options --use-C17 and so
    on of R CMD INSTALL and R CMD SHLIB.
    For further details see "Writing R Extensions" SS1.2.5.
  * (Windows) A src/Makefile.ucrt or src/Makefile.win file is now
    included after R_HOME/etcR_ARCH/Makeconf and so no longer needs
    to include that file itself.  Installation of a package with such
    a file now uses a site Makevars file in the same way as a package
    with a src/Makevars.win file would.
  * configure is now passed crucial variables such as CC and CFLAGS
    in its environment, as many packages were not setting them (as
    documented in 'Writing R Extensions' SS1.2).
    This has most effect where configure is used to compile parts of
    the package - most often by cmake or libtool which obfuscate the
    actual compile commands used.
    Also used for configure.win and configure.ucrt on Windows.
  FORTRAN FLAGS:
  * The flag -fno-optimize-sibling-calls is no longer forced for
    gfortran 7 and later.  It should no longer be needed now using
    'hidden' character-length arguments when calling BLAS/LAPACK
    routines from C/C++ is the default even for packages.  (Unless
    perhaps packages call Fortran code from C/C++ without using R's
    headers and without allowing for these arguments.)
  C-LEVEL FACILITIES:
  * The deprecated S-compatibility macros DOUBLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * The deprecated legacy typedefs of Sint and Sfloat in header R.h
    are no longer defined, and that header no longer includes header
    limits.h from C nor climits from C++.
  * New macro CAD5R() is provided in Rinternals.h and used in a few
    places in the R sources.
  * ALTREP now supports VECSXP vectors. Contributed by Gabor Csardi
    in PR#17620.
  * The Rcomplex definition (in header R_ext/Complex.h) has been
    extended to prevent possible mis-compilation when interfacing
    with Fortran (PR#18430).  The new definition causes compiler
    warnings with static initializers such as {1, 2}, which can be
    changed to {.r=1, .i=2}.
    Using the new definition from C++ depends on compiler extensions
    supporting C features that have not been incorporated into the
    C++ standards but are available in g++ and clang++: this may
    result in C++ compiler warnings but these have been worked around
    for recent versions of common compilers (GCC, Apple/LLVM clang,
    Intel).
    It is intended to change the inclusion of header R_ext/Complex.h
    by other R headers, so C/C++ code files which make use of
    Rcomplex should include that header explicitly.
  UTILITIES:
  * R CMD check does more checking of package .Rd files, warning
    about invalid email addresses and (some) invalid URIs and noting
    empty \item labels in description lists.
  * R CMD check now also reports problems when reading package news
    in md (file NEWS.md) and (optionally) plain text (file NEWS)
    formats.
  * _R_CHECK_TIMINGS_ defaults to a value from the environment even
    for R CMD check --as-cran; this allows for exceptionally fast or
    slow platforms.
    It now applies to checking PDF and HTML versions of the manuals,
    and 'checking CRAN incoming feasibility'.
  * R CMD check can optionally (but included in --as-cran) check
    whether HTML math rendering _via_ KaTeX works for the package .Rd
    files.
  * Non-interactive debugger invocations can be trapped by setting
    the environment variable _R_CHECK_BROWSER_NONINTERACTIVE_ to a
    true value.  This is enabled by R CMD check --as-cran to detect
    the use of leftover browser() statements in the package.
  * The use of sprintf and vsprintf from C/C++ has been deprecated in
    macOS 13 and is a known security risk.  R CMD check now reports
    (on all platforms) if their use is found in compiled code:
    replace by snprintf or vsnprintf respectively. [*NB:* whether
    such calls get compiled into the package is platform-dependent.]
  * Where recorded at installation, R CMD check reports the C and
    Fortran compilers used to build R.
    It reports the OS in use (if known, as given by osVersion) as
    well as that R was built for.
    It notes if a C++ standard was specified which is older than the
    current default: many packages have used C++11 to mean 'not
    C++98' - as C++11 is the minimum supported since R 4.0.0, that
    specification can probably be removed.
  * R CMD INSTALL reports the compilers (and on macOS, the SDK) used,
    and this is copied to the output of R CMD check.
    Where a C++ standard is specified, it is reported.
  * R CMD check's 'checking compilation flags in Makevars' has been
    relaxed to accept the use of flags such as -std=f2008 in
    PKG_FFLAGS.
  * tools::buildVignettes() has a new argument skip, which is used by
    R CMD check to skip (and note) vignettes with unavailable
    \VignetteDepends (PR#18318).
  * New generic .AtNames() added to enable class-specific completions
    after @. The formerly internal function findMatches() is now
    exported, mainly for use in methods for .DollarNames() and
    .AtNames().
  DEPRECATED AND DEFUNCT:
  * default.stringsAsFactors() is defunct.
  * Calling as.data.frame.&lt;class&gt;() directly (for 12 atomic classes)
    is going to be formally deprecated, currently activated by
    setting the environment variable
    _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ to non-empty, which also
    happens in R CMD check --as-cran.
  BUG FIXES:
  * Hashed environments with sizes less than 5 can now grow.
    (Reported to R-devel by Duncan Garmonsway.)
  * as.character(&lt;Rd&gt;, deparse = TRUE) failed to re-escape curly
    braces in LaTeX-like text.  (Reported by Hadley Wickham in
    PR#18324.)
  * library() now passes its lib.loc argument when requiring Depends
    packages; reported (with fix) in PR#18331 by Mikael Jagan.
  * R CMD Stangle: improved message about 'Output' files.
  * head(x, n) and tail(x, n) now signal an error if n is not
    numeric, instead of incidentally "working" sometimes returning
    all of x.  Reported and discussed by Colin Fay, in PR#18357.
  * The "lm" method for summary() now gives the correct F-statistic
    when the model contains an offset.  Reported in PR#18008.
  * C() and `contrasts&lt;-`() now preserve factor level names when
    given a function object (as opposed a function name which did
    preserve names). Reported in PR#17616.
  * c(a = 1, 2)[[]] no longer matches 2 but rather signals a
    _classed_ error.  Reported and analysed by Davis Vaughan in
    PR#18367, a duplicate of PR#18004, by Jan Meis et al.  For
    consistency, NULL[[]] is also erroneous now.  x[[]] &lt;- v gives an
    error of the same class "MissingSubscriptError".
  * The relist() function of utils now supports NULL elements in the
    skeleton (PR#15854).
  * ordered(levels = *) (missing x) now works analogously to factor(,
    ordered=TRUE); reported (with fix) by Achim Zeileis in PR#18389.
  * User-defined Rd macro definitions can now span multiple lines,
    thanks to a patch from Duncan Murdoch. Previously, the Rd parser
    silently ignored everything after the first line.
  * Plain-text help (tools::Rd2txt()) now preserves an initial blank
    line for text following description list items.
  * tools::Rd2HTML() and tools::Rd2latex() no longer split \arguments
    and \value lists at Rd comments.
  * tools::Rd2latex() now correctly handles optional text outside
    \items of argument lists as well as bracketed text at the
    beginning of sections, e.g., \value{[NULL]}.
  * as.character(&lt;POSIXt&gt;) now behaves more in line with the methods
    for atomic vectors such as numbers, and is no longer influenced
    by options().  Ditto for as.character(&lt;Date&gt;).  The
    as.character() method gets arguments digits and OutDec with
    defaults _not_ depending on options().  Use of as.character(*,
    format = .) now warns.
  * Similarly, the as.character.hexmode() and *.octmode() methods
    also behave as good citizen methods and back compatibility option
    keepStr = TRUE.
  * The as.POSIXlt(&lt;POSIXlt&gt;) and as.POSIXct(&lt;POSIXct&gt;) default
    methods now do obey their tz argument, also in this case.
  * as.POSIXlt(&lt;Date&gt;) now does apply a tz (time zone) argument, as
    does as.POSIXct(); partly suggested by Roland Fuss on the R-devel
    mailing list.
  * as.Date.POSIXlt(x) now also works when the list components are of
    unequal length, aka "partially filled" or "ragged".
  * expand.model.frame() looked up variables in the wrong environment
    when applied to models fitted without data.  Reported in
    PR#18414.
  * time() now (also) uses the ts.eps = getOption("ts.eps") argument
    and thus by default rounds values very close to the start (or
    end) of a year.  Based on a proposal by Andre"i V. Kostyrka on
    R-help.
  * Printing of a factanal() result with just one factor and sort =
    TRUE now works regularly, fixing PR#17863 by Timothy Bates,
    thanks to the 'R Contributors' working group.
  * Printing 0-length objects of class "factor", "roman", "hexmode",
    "octmode", "person", "bibentry", or "citation" now prints
    something better, one of which fixes PR#18422, reported by
    Benjamin Feakins.
  * Sys.timezone() queries timedatectl only if systemd is loaded;
    addressing a report by Jan Gorecki in PR#17421.
  * The formula method of cor.test() had scoping problems when
    environment(formula) was not the calling environment; reported
    with a patch proposal by Mao Kobayashi in PR#18439.
  * attach() of an environment with active bindings now preserves the
    active bindings.  Reported by Kevin Ushey in PR#18425.
  * BLAS detection now works also with system-provided libraries not
    available as regular files.  This fixes detection of the
    Accelerate framework on macOS since Big Sur.  Reported by David
    Novgorodsky.
  * download.file() gives a helpful error message in case of an
    invalid download.file.method option, thanks to Colin Fay's report
    in PR#18455.
  * Sporadic crashes of Rterm when using completion have been fixed.
  * Rprof() is now more reliable.  A livelock in thread
    initialization with too short sampling interval has been fixed on
    macOS.  A deadlock in using the C runtime has been fixed on
    Windows.  A potential deadlock has been prevented on Unix.
  * Cursor placement in Rgui now works even after a fixed-width font
    is selected.
  * Mandatory options (options()) are now set on startup so that
    saving and restoring them always works (PR#18372).
  * Package installation, R CMD INSTALL or install.packages(*), now
    parses each of the &lt;pkg&gt;/R/*.R files individually instead of
    first concatenating and then parse()ing the large resulting file.
    This allows parser or syntax errors to be diagnosed with correct
    file names and line numbers, thanks to Simon Dedman's report and
    Bill Dunlap's patch in PR#17859.
    This _does_ require syntactically self contained R source files
    now, fixing another inadvertent bug.
  * predict.lm(&lt;model with offset&gt;) now finds the offset in the
    correct environment, thanks to Andr'e Gillibert's report and patch
    in PR#18456.
  * getInitial(&lt;formula&gt;) now finds the selfStart model in the
    correct environment.  (Reported by Ivan Krylov in PR#18368.)
  * Fix for possible segfault when using recently-added graphics
    features, such as gradients, clipping paths, masks, and groups
    with pdf(file=NULL).
  * class(m) &lt;- class(m) no longer changes a matrix m by adding a
    class _attribute_.
  * packageDate(pkg) now only warns once if there is no pkg.
  * When ts() creates a multivariate time series, "mts", it also
    inherits from "array" now, and is.mts() is documented _and_
    stricter.
  * Rd2txt() now preserves line breaks of \verb Rd content and from
    duplicated \cr.  The former also fixes the rendering of verbatim
    output from Rd \Sexpr in plain-text help.
  * uniroot(f, interval) should no longer wrongly converge _outside_
    the interval in some cases where abs(f(x)) == Inf for an x at the
    interval boundary, thanks to posts by Ben Bolker and Serguei
    Sokol on R-devel.
  * Vectorized alpha handling in palette functions such as in gray(),
    rainbow(), or hcl.colors() works correctly now, thanks to Achim
    Zeileis' report and patch in PR#18476.
  * Formatting and print()ing of bibentry objects has dropped the
    deprecated citation.bibtex.max argument, such that the bibtex
    argument's default for print.bibentry() depends directly on the
    citation.bibtex.max option, whereas in format.bibentry() the
    option no longer applies.
  * Attempting to use a character string naming a foreign function
    entry point in a foreign function call in a package will now
    signal an error if the packages has called R_forceSymbols to
    specify that symbols must be used.
  * An error in table() could permanently set options(warn=2)
    promoting all subsequent warnings to errors.
  * The sigma() function gave misleading results for binary GLMs.  A
    new method for objects of class "glm" returns the square root of
    the estimate of the dispersion parameter using the same
    calculation as summary.glm().
  * bs() and ns() in the (typical) case of automatic knot
    construction, when some of the supposedly inner knots coincide
    with boundary knots, now moves them inside (with a warning),
    building on PR#18442 by Ben Bolker.
  * R CMD on Windows now skips the site profile with --no-site-file
    and --vanilla even when R_PROFILE is set (PR#18512, from Kevin
    Ushey).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1686916800">- CHANGES IN R 4.3.1:
  C-LEVEL FACILITIES:
  * The C-level API version of R's integrate(), Rdqags() in Applic.h,
    now returns the correct number of integrand evaluations neval,
    fixing PR#18515 reported and diagnosed by Stephen Wade.
  * The C prototypes for LAPACK calls dspgv and dtptrs in
    R_exts/Lapack.h had one too many and one too few character length
    arguments - but this has not caused any known issues. To get the
    corrected prototypes, include
    [#]include &lt;Rconfig.h&gt; // for PR18534fixed
    [#]ifdef PR18534fixed
    [#] define usePR18534fix 1
    [#]endif
    [#]include &lt;R_exts/Lapack.h&gt;
    in your C/C++ code (PR#18534).
  INSTALLATION:
  * Many of the checks of esoteric Internet operations and those
    using unreliable external sites have been moved to a new target
    that is not run by default and primarily intended for the core
    developers.  To run them use
    cd tests; make test-Internet-dev
  BUG FIXES:
  * .S3methods(), typically called from methods(), again marks
    methods from package base as visible.
    Also, the visibility of non-base methods is again determined by
    the method's presence in search().
  * tools::Rdiff() is now more robust against invalid strings, fixing
    installation tests on Windows without Rtools installed
    (PR#18530).
  * Fix (new) bug in hcl.colors(2, *), by Achim Zeileis (PR#18523).
  * head(., &lt;illegal&gt;) and tail(..) now produce more useful "Error in
    ...." error messages, fixing PR#18362.
  * Package code syntax on Windows is checked in UTF-8 when UTF-8 is
    the native encoding.
  * na.contiguous(x) now also returns the first run, when it is at
    the beginning and there is a later one of the same length;
    reported to R-devel, including a fix, by Georgi Boshnakov.
    Further, by default, it modifies only an existing attr(*,"tsp")
    but otherwise no longer sets one.
  * chol(&lt;not pos.def&gt;, pivot = &lt;T|F&gt;) now gives a correct error or
    warning message (depending on pivot), thanks to Mikael Jagan's
    (PR#18541).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1699012800">- CHANGES IN R 4.3.2:
  NEW FEATURES:
  * The default initialization of the "repos" option from the
    repositories file at startup can be skipped by setting
    environment variable R_REPOSITORIES to NULL such that
    getOption("repos") is empty if not set elsewhere.
  * qr.X() is now an implicit S4 generic in methods.
  * iconv(to = "ASCII//TRANSLIT") is emulated using substitution on
    platforms which do not support it (notably Alpine Linux).  This
    should give a human-readable conversion in ASCII on all platforms
    (rather than NA_character_).
  * trans3d() gains options continuous and verbose addressing the
    problem of possible "wrap around" when projecting too long
    curves, as reported by Achim Zeileis in PR#18537.
  * tools::showNonASCII() has been rewritten to work better on macOS
    14 (which has a changed implementation of iconv()).
  * tiff(type = "quartz") (the default on macOS) now warns if
    compression is specified: it continues to be ignored.
  INSTALLATION on a UNIX-ALIKE:
  * There is some support for building with Intel's LLVM-based
    compilers on x86_64 Linux, such as (C) icx, (C++) ipcx and
    (Fortran) ifx from oneAPI 2023.x.y.
  * There is support for using LLVM's flang-new as the Fortran
    compiler from LLVM 16.0.x (preferably 17.0.0 or later).
  UTILITIES:
  * R CMD check reports the use of the Fortran 90 random number
    generator RANDOM_NUMBER() and the subroutines to initialize it.
    'Writing R Extensions' has example code to use R's RNGs from
    Fortran.
  BUG FIXES:
  * substr(x, n, L) &lt;- cc now works (more) correctly for multibyte
    UTF-8 strings x when L &gt; nchar(x), thanks to a report and patch
    by 'Architect 95'.
  * contrib.url(character()) now returns 0-length character() as
    documented, which also avoids spurious warnings from
    available.packages() et al. in the edge case of an empty vector
    of repository URLs.
  * readChar(., 4e8) no longer fails, thanks to Kodi Arfer's report
    (PR#18557).
  * lapply(&lt;list&gt;, as.data.frame) no longer warns falsely for some
    base vector components.
  * Communication between parent and child processes in the multicore
    part of parallel could fail on platforms that do not support an
    arbitrarily large payload in system functions read()/write() on
    pipes (seen on macOS where a restriction to INT_MAX bytes is
    documented, without doing a partial read unlike Linux). The
    payload is now split into 1Gb chunks to avoid that problem.
    (PR#18571)
  * qqplot(x,y, conf.level=.) gives better confidence bounds when
    length(x) != length(y), thanks to Alexander Ploner's report and
    patch proposal (PR#18557).
  * norm(&lt;0-length&gt;, "2") now gives zero instead of an error, as all
    the other norm types, thanks to Mikael Jagan's PR#18542.
  * Build-stage Rd macros \packageAuthor and \packageMaintainer now
    process Authors@R, fixing NA results when the package DESCRIPTION
    omits Author and Maintainer fields.
  * Formatting and printing complex numbers could give things like
    0.1683-0i because of rounding error: -0i is now replaced by +0i.
  * postscript() refused to accept a title comment containing the
    letter "W" (PR#18599).
  * isoreg(c(1,Inf)) signals an error instead of segfaulting, fixing
    PR#18603.
  * tiff(type = "Xlib") was only outputting the last page of
    multi-page plots.
  * tools::latexToUtf8() again knows about \~{n} and other letters
    with tilde, fixing a regression in R 4.3.0, and about \^{i} as an
    alternative to \^{\i} (similarly with other accents).
    Furthermore, LaTeX codes for accented I letters are now correctly
    converted, also fixing related mistakes in
    tools::encoded_text_to_latex().
  * tar(*, tar = "internal") no longer creates out-of-spec tar files
    in the very rare case of user or group names longer than 32
    bytes, fixing PR#17871 with thanks to Ivan Krylov.
  * When using the "internal" timezone datetime code, adding a
    fraction of a second no longer adds one second, fixing PR#16856
    from a patch by Ivan Krylov.
  * tools::checkRd() no longer produces spurious notes about
    "unnecessary braces" from multi-line Rd results of \Sexpr macros.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1709208000">- CHANGES IN R 4.3.3:
  NEW FEATURES:
  * iconv() now fixes up variant encoding names such as "utf8"
    case-insensitively.
  DEPRECATED AND DEFUNCT:
  * The legacy encoding = "MacRoman" is deprecated in pdf() and
    postscript(): support was incomplete in earlier versions of R.
  BUG FIXES:
  * Arguments are now properly forwarded to methods on S4 generics
    with ... in the middle of their formal arguments. This was broken
    for the case when a method introduced an argument but did not
    include ... in its own formals. Thanks to Herv'e Pag`es for the
    report PR#18538.
  * Some invalid file arguments to pictex(), postscript() and xfig()
    opened a file called NA rather than throw an error.  These
    included postscript(NULL) (which some people expected to work
    like pdf(NULL)).
  * Passing filename = NA to svg(), cairo_pdf(), cairo_ps() or the
    Cairo-based bitmap devices opened a file called NA: it now throws
    an error.
  * quartz(file = NA) opened a file called NA, including when used as
    a Quartz-based bitmap device.  It now gives an error.
  * rank(&lt;long vector&gt;) now works, fixing PR#18617, thanks to Ilia
    Kats.
  * seq.int() did not adequately check its length.out argument.
  * match(&lt;POSIXct&gt;, .) is correct again for differing time zones,
    ditto for "POSIXlt", fixing PR#18618 reported by Bastian Klein.
  * drop.terms(*, dropx = &lt;0-length&gt;) now works, fixing PR#18563 as
    proposed by Mikael Jagan.
  * drop.terms(*) keeps + offset(.) terms when it should, PR#18565,
    and drop.terms() no longer makes up a response, PR#18566, fixing
    both bugs thanks to Mikael Jagan.
  * getS3method("t", "test") no longer finds the t.test() function,
    fixing PR#18627.
  * pdf() and postscript() support for the documented Adobe encodings
    "Greek" and "Cyrilllic" was missing (although the corresponding
    Windows' codepages could be used).
  * Computations of glyph metric information for pdf() and
    postscript() did not take into account that transliteration could
    replace one character by two or more (only seen on macOS 14) and
    typically warned that the information was not known.
  * rank(x) no longer overflows during integer addition, when
    computing rank average for largish but not-yet long vector x,
    fixing PR#18630, thanks to Ilia Kats.
  * list.files() on Windows now returns also files with names longer
    that 260 bytes (the Windows limit is 260 characters).
    Previously, some file names particularly with 'East Asian'
    characters were omitted.
  * cov2cor(&lt;0 x 0&gt;) now works, fixing PR#18423 thanks to Mikael
    Jagan and Elin Waring.
  * cov2cor(&lt;negative diagonal&gt;) and similar now give one warning
    instead of two, with better wording, fixing PR#18424 thanks to
    Mikael Jagan.
  * tools:: startDynamicHelp() now ensures port is in proper range,
    fixing PR#18645.
  * pbeta(x, a,b) is correct now for x=0 or 1 in the boundary cases
    where a or b or both are 0, fixing PR#18672 thanks to Michael
    Fay.
  * pmatch(x, table) for large table, also called for data frame row
    selection, dfrm[nm, ], is now interruptible, fixing PR#18656.
  * predict(&lt;rank-deficient lm&gt;, newdata=*) fix computing of nbasis,
    see Russ Lenth's comment 29 in PR#16158.
  * Added a work-around for a bug in macOS 14.3.1 and higher which
    prevents R plots in the Quartz Cocoa device from updating on
    screen.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1713960000">- CHANGES IN R 4.4.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Startup banners, R --version, sessionInfo() and R CMD check no
    longer report (64-bit) as part of the platform as this is almost
    universal - the increasingly rare 32-bit platforms will still
    report (32-bit).
    On Windows, ditto for window titles.
  * is.atomic(NULL) now returns FALSE, as NULL is not an atomic
    vector.  Strict back-compatibility would replace is.atomic(foo)
    by (is.null(foo) || is.atomic(foo)) but should happen only
    sparingly.
  NEW FEATURES:
  * The confint() methods for "glm" and "nls" objects have been
    copied to the stats package.  Previously, they were stubs which
    called versions in package MASS. The MASS namespace is no longer
    loaded if you invoke (say) confint(glmfit).  Further, the "glm"
    method for profile() and the plot() and pairs() methods for class
    "profile" have been copied from MASS to stats.  (profile.nls()
    and plot.profile.nls() were already in stats.)
  * The confint() and profile methods for "glm" objects have gained a
    possibility to do profiling based on the Rao Score statistic in
    addition to the default Likelihood Ratio. This is controlled by a
    new test = argument.
  * The pairs() method for "profile" objects has been extended with a
    which = argument to allow plotting only a subset of the
    parameters.
  * The "glm" method for anova() computes test statistics and
    p-values by default, using a chi-squared test or an F test
    depending on whether the dispersion is fixed or free.  Test
    statistics can be suppressed by giving argument test a false
    logical value.
  * In setRepositories() the repositories can be set using their
    names via name = instead of index ind =.
  * methods() and .S3methods() gain a all.names option for the (rare)
    case where functions starting with a . should be included.
  * Serializations can now be interrupted (e.g., by Ctrl-C on a
    Unix-alike) if they take too long, e.g., from save.image(),
    thanks to suggestions by Ivan Krylov and others on R-devel.
  * New startup option --max-connections to set the maximum number of
    simultaneous connections for the session.  Defaults to 128 as
    before: allowed values up to 4096 (but resource limits may in
    practice restrict to smaller values).
  * R on Windows (since Windows 10 2004) now uses the new Segment
    Heap allocator. This may improve performance of some
    memory-intensive applications.
  * When R packages are built, typically by R CMD build &lt;pkg&gt;, the
    new --user=&lt;build_user&gt; option overrides the (internally
    determined) user name, currently Sys.info()["user"] or LOGNAME.
    This is a (modified) fulfillment of Will Landau's suggestion in
    PR#17530.
  * tools::testInstalledBasic() gets new optional arguments outDir
    and testSrcdir, e.g., allowing to use it in a &lt;builddir&gt; !=
    &lt;srcdir&gt; setup, and in standard "binary" Windows installation
  * if* a source tests/ folder is present.
  * range(&lt;DT_with_Inf&gt;, finite = TRUE) now work for objects of class
    "Date", "POSIXct", and "POSIXlt" with infinite entries,
    analogously to range.default(), as proposed by Davis Vaughan on
    R-devel.  Other range()-methods can make use of new function
    .rangeNum().
  * New .internalGenerics object complementing .S3PrimitiveGenerics,
    for documentation and low-level book-keeping.
  * grid() now invisibly returns the x- and y- coordinates at which
    the grid-lines were drawn.
  * norm(., type) now also works for complex matrices.
  * kappa(., exact = TRUE, norm = *) now works for all norms and also
    for complex matrices.  In symmetric / triangular cases, the new
    argument uplo = "U" | "L" allows the upper or lower triangular
    part to be specified.
  * memDecompress(type = "unknown") recognizes compression in the
    default 'zlib' format as used by memCompress(type = "gzip").
  * memCompress() and memDecompress() will use the libdeflate library
    (&lt;https://github.com/ebiggers/libdeflate&gt;) if installed.  This
    uses the same type of compression for type = "gzip" but is 1.5-2x
    faster than the system libz library on some common platforms: the
    speed-up may depend on the library version.
  * diff() for objects of class "Date", "POSIXct", and "POSIXlt"
    accepts a units argument passed via ....
  * Dynamic help now does a much better job of rendering package
    DESCRIPTION metadata.
  * Rprof() gains an event argument and support for elapsed (real)
    time profiling on Unix (PR#18076).
  * filled.contour() gains a key.border argument.
  * tools::update_pkg_po() gets arguments pot_make and mo_make for
    _not_ re-making the corresponding files, and additionally a
    verbose argument.
  * Hexadecimal string colour specifications are now accepted in
    short form, so, for example, we can use "#123", which is
    equivalent to "#112233".
    Thanks to MikeFC for the original idea and Ella Kaye, Malcolm
    Barrett, George Stagg, and Hanne Oberman for the patch.
  * Plain-text help shows \var markup by angle brackets.
  * The new experimental primitive function declare() is intended to
    eventually allow information about R code to be communicated to
    the interpreter, compiler, and code analysis tools. The syntax
    for declarations is still being developed.
  * Functions psmirnov(), qsmirnov() and rsmirnov() in package stats
    have had argument two.sided renamed to alternative, to take into
    account that the permutation distributions of the one-sided
    statistics can be different in the case of ties.  Consequence of
    PR#18582.
  * sort() is now an implicit S4 generic in methods.
  * Formatting and printing, format(z), print(z), of complex vectors
    z no longer zap relatively small real or imaginary parts to zero,
    fixing PR#16752.  This is an API change, as it was documented
    previously to round real and imaginary parts together on purpose,
    producing nicer looking output.  As mentioned, e.g. in the PR,
    this change is compatible with many other "R-like" programming
    environments.
    We have simplified the internal code and now basically format the
    real and imaginary parts independently of each other.
  * New experimental functions Tailcall() and Exec() to support
    writing stack-space-efficient recursive functions.
  * Where characters are attempted to be plotted by pdf(),
    postscript() and xfig() which are not in the selected 8-bit
    character set (most often Latin-1) and the R session is using a
    UTF-8 locale, the warning messages will show the UTF-8 character
    rather than its bytes and one dot will be substituted per
    character rather than per byte.  (Platforms whose iconv() does
    transliteration silently plot the transliteration.)
    In a UTF-8 locale some transliterations are now done with a
    warning (e.g., dashes and Unicode minus to hyphen, ligatures are
    expanded, permille (‰) is replaced by o/oo), although the OS may
    have got there first.  These are warnings as they will continue
    to be replaced by dots in earlier versions of R.
  * The matrix multiplication functions crossprod() and tcrossprod()
    are now also primitive and S3 generic, as %*% had become in R
    4.3.0.
  * source() and example() have a new optional argument catch.aborts
    which allows continued evaluation of the R code after an error.
  * The non-Quartz tiff() devices allow additional types of
    compression if supported by the platform's libtiff library.
  * The list of base and recommended package names is now provided by
    tools::standard_package_names().
  * cairo_pdf() and cairo_ps() default to onefile = TRUE to closer
    match pdf() and postscript().
  * New option catch.script.errors provides a documented way to catch
    errors and then continue in non-interactive use.
  * L %||% R newly in base is an expressive idiom for the phrases
    if(!is.null(L)) L else R or if(is.null(L)) R else L.
  * The return value from warnings() now always inherits from
    "warnings" as documented, now also in the case of no warnings
    where it previously returned NULL.
  * as.complex("1i") now returns 0 + 1i instead of NA with a warning.
  * z &lt;- c(NA, 1i) now keeps the imaginary part Im(z[1]) == 0, no
    longer coercing to NA_complex_.  Similarly, cumsum(z) correctly
    sums real and imaginary parts separately, i.e., without
    "crosstalk" in case of NAs.
  * On Alpine Linux iconv() now maps "latin2", "latin-2", "latin9"
    and "latin-9" to encoding names the OS knows about
    (case-insensitively).
  * iconv(sub = "Unicode") now always zero-pads to four (hex) digits,
    rather than to 4 or 8.  (This seems to have become the convention
    once Unicode restricted the number of Unicode points to 2^21 - 1
    and so will never need more than 6 digits.)
  * NCOL(NULL) now returns 0 instead of 1, for consistency with
    cbind().
  * The information for the Euro glyph missing from the Adobe .afm
    files for the Courier, Helvetica and Times families has been
    copied from their URW equivalents - this will improve vertical
    centring in the pdf() and postscript() devices.
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.12.0.  The changes are almost entirely cosmetic.
  * The included LAPACK sources have been updated to version 3.12.0
    and some further double-complex routines added.
  * There are new font families for the 2014--5 URW 2.0 fonts (see
    ?pdf) which are included in recent versions of Ghostscript.
    These have font widths for most Greek glyphs and a few others
    which were missing from the original versions (whose font
    families remain available for reproducibility, although
    Ghostscript-based viewers will render using the 2.0 versions).
  * Improve the large-n efficiency of as.matrix(&lt;dist&gt;), thanks an R
    contributors effort, notably by Tim Taylor and Heather Turner,
    see PR#18660.
  * The default and numeric methods of all.equal() get a check.class
    option.
  * zapsmall() gets new optional arguments, function mFUN and min.d,
    for extra flexibility; fulfills a wish in PR#18199.  Also, it is
    now an implicit S4 generic in package methods.
  * The Rd filter for aspell() gains an ignore argument.
  * New generic function sort_by(), primarily useful for the
    data.frame method which can be used to sort rows of a data frame
    by one or more columns.
  * The icence headers for the RPC code in src/extra/xdr have been
    updated to use the GPL-compatible licence published by Oracle
    America in 2010.
  * New function pkg2HTML() in tools to create single-page HTML
    reference manuals for R packages.
  * The byte code evaluator now uses less C stack space for recursive
    calls to byte-compiled functions. It also makes more of an effort
    to avoid allocations for scalar return values.
  * New completion option backtick (disabled by default) allows
    non-syntactic completions to be wrapped in backquotes. This is
    currently only useful for Jupyter notebooks via the IRkernel
    package, and may cause problems for other backends.
  INSTALLATION:
  * The parser has been updated to work with bison 3.8.2, which is
    now used for the pre-generated parsers in gram.c, file.c, and
    gramRd.c. A few parser error messages have changed, which may
    affect code that relies on exact messages.
  INSTALLATION on a UNIX-ALIKE:
  * System valgrind headers are now required to use configure option
  - -with-valgrind-instrumentation with value 1 or 2.
  * configure will warn if it encounters a 32-bit build, as that is
    nowadays almost untested.
  * Environment variable R_SYSTEM_ABI is no longer used and so no
    longer recorded in etc/Renviron (it was not on Windows and was
    only ever used when preparing package tools).
  * If the libdeflate library and headers are available, libdeflate
    rather than libz is used to (de)compress R objects in lazy-load
    databases.  Typically tasks spend up to 5% of their time on such
    operations, although creating lazy-data databases is one of the
    exceptions.
    This can be suppressed if the library is available by the
    configure option --without-libdeflate-compression.
  * configure option --enable-lto=check has not worked reliably since
    2019 and has been removed.
  * The minimum autoconf requirement for a maintainer build has been
    increased to autoconf 2.71.
    It is intended to increase this to 2.72 for R 4.5.0: the
    distributed configure file was generated using 2.72.
  * The minimum version requirement for an external LAPACK has been
    reduced to 3.9.0.
  * No default C++ compiler is set if no C++17 compiler is detected:
    there is no longer an automatic fallback to C++14 or C++11.
    Compilers from the last five years should have sufficient
    support: for others macros CXX and CXXSTD can be set in file
    config.site to provide a fallback if needed.
    The Objective-C++ compiler now by default uses the standard
    selected by R for C++ (currently C++17) rather than the default
    standard for the C++ compiler (which on macOS is still C++98).
  INSTALLATION on macOS:
  * A new configure option --with-newAccelerate makes use of Apple's
    'new' BLAS / LAPACK interfaces in their Accelerate framework.
    Those interfaces are only available in macOS 13.3 or later, and
    building requires SDK 13.3 or later (from the Command Line Tools
    or Xcode 14.3 or later).
    By default the option uses new Accelerate for BLAS calls: to also
    use it for LAPACK use option --with-newAccelerate=lapack.  The
    later interfaces provide LAPACK 3.9.1 rather than 3.2.1: 3.9.1 is
    from 2021-04 and does not include the improved algorithms
    introduced in LAPACK 3.10.0 (including for BLAS calls).
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools44, an update of the Rtools43 toolchain.  It is
    based on GCC 13 and newer versions of MinGW-W64, binutils and
    libraries (targeting 64-bit Intel CPUs).  R-devel can no longer
    be built using Rtools43 without changes.
  * Rtools44 has experimental support for 64-bit ARM (aarch64) CPUs
    _via_ the LLVM 17 toolchain using lld, clang/flang-new and
    libc++.
  UTILITIES:
  * R CMD check notes when S4-style exports are used without
    declaring a strong dependence on package methods.
  * tools::checkRd() (used by R CMD check) detects more problems with
    \Sexpr-based dynamic content, including bad nesting of \Sexprs
    and invalid arguments.
  * tools::checkRd() now reports Rd titles and section names ending
    in a period; this is ignored by R CMD check unless environment
    variable _R_CHECK_RD_CHECKRD_MINLEVEL_ is set to -5 or smaller.
  * R CMD check now notes Rd files without an \alias, as long
    documented in 'Writing R Extensions' §1.3.1.  The check for a
    missing \description has been moved from tools::checkRd() to
    tools::checkRdContents().
  * R CMD check now visits inst/NEWS.Rd and OS-specific man
    subdirectories when checking Rd files.
  * tools::checkDocFiles() and tools::checkRdContents() now also
    check internal Rd files by default, but "specially" (ignoring
    missing documentation of arguments).
  * R CMD Rdiff gets option --useEx.
  * R CMD check now warns on non-portable uses of Fortran KIND such
    as INTEGER(KIND=4) and REAL(KIND=8).
    To see the failing lines set environment variable
    _R_CHECK_FORTRAN_KIND_DETAILS_ to a true value.
  * When checking Rd files, R CMD check now notes some of the "lost
    braces" that tools::checkRd() finds.  Typical problems are Rd
    macros missing the initial backslash (e.g., code{...}), in-text
    set notation (e.g., {1, 2}, where the braces need escaping), and
    \itemize lists with \describe-style entries of the form
    \item{label}{description}.
  * R CMD INSTALL (and hence check) will compile C++ code with
  - DR_NO_REMAP if environment variable _R_CXX_USE_NO_REMAP_ is set
    to a true value.  It is planned that this will in future become
    the default for compiling C++.
  * The new built-in Rd macro \dontdiff{} can be used to mark example
    code whose output should be ignored when comparing check output
    to reference output (tests/Examples/&lt;pkg&gt;-Ex.Rout.save).  The
    \dontdiff tag, like \donttest, is _not_ shown on the rendered
    help page, so provides a clean alternative to ##
    IGNORE_RDIFF_(BEGIN|END) comments.
  * R CMD build when there is no NAMESPACE, now uses the recommended
    exportPattern("^[^.]"), instead of exporting everything.
  * R CMD check now warns about non-ASCII characters in the NAMESPACE
    file (in addition to R files). Such packages are not portable and
    may fail to install on some platforms.
  C-LEVEL FACILITIES:
  * Headers R_ext/Applic.h and R-ext/Linpack.h used to include
    R_ext/BLAS.h although this was undocumented and unneeded by their
    documented entry points.  They no longer do so.
  * New function R_missing(), factored out from do_missing(), used to
    fix PR#18579.
  * SEXP type S4SXP has been renamed to OBJSXP to support
    experimenting with alternative object systems.  The S4SXP value
    can still be used in C code but is now deprecated.  Based on
    contributions from the R Consortium's Object-Oriented Programming
    Working Group.
  * New function pow1p(x,y) for accurate (1+x)^y.
  * mkCharLenCE was incorrectly documented to take a size_t length
    but was implemented with int (and character strings in R are
    limited to 2^31 - 1 bytes).
  DEPRECATED AND DEFUNCT:
  * data() no longer handles zipped data from long-defunct (since R
    2.13.0) --use-zip-data installations.
  * The legacy graphics devices pictex() and xfig() are now
    deprecated.  They do not support recent graphics enhancements and
    their font handling is rudimentary. The intention is to retain
    them for historical interest as long as they remain somewhat
    functional.
  * Support for encoding = "MacRoman" has been removed from the pdf()
    and postscript() devices - this was a legacy encoding supporting
    classic macOS up to 2001 and no longer has universal libiconv
    support.
  * is.R() is deprecated as no other S dialect is known to be in use
    (and this could only identify historical dialects, not future
    ones).
    Further information on calls can be obtained by setting the
    environment variable _R_DEPRECATED_IS_R_ to error which turns the
    deprecation warning into an error and so by default gives a
    traceback.  (This is done by R CMD check --as-cran.)
  * UseMethod() no longer forwards local variables assigned in the
    generic function into method call environments before evaluating
    the method body. This makes method calls behave more like
    standard function calls and makes method code easier to analyze
    correctly.
  * The twelve as.data.frame.&lt;class&gt;() methods which were deprecated
    only via _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ and in R CMD
    check --as-cran are formally deprecated now in favour of calling
    as.data.frame() or as.data.frame.vector().  The deprecation
    "check" now works also when as.data.frame() is S4 generic thanks
    to Ivan Krylov.
  * The default method for the directional comparison operators &lt;, &gt;,
    &lt;=, and &gt;= now signals an error when one of the operands is a
    language object, i.e. a symbol or a call.
  * For terms.formula(), deprecate abb and neg.out arguments
    _formally_ in addition to just documenting it.
  BUG FIXES:
  * The methods package is more robust to not being attached to the
    search path.  More work needs to be done.
  * pairwise.t.test() misbehaved when subgroups had 0 DF for
    variance, even with pool.sd = TRUE.  (PR#18594 by Jack Berry).
  * Probability distribution functions [dpq]&lt;distrib&gt;(x, *), but also
    bessel[IKJY](x, .) now consistently preserve attributes(x) when
    length(x) == 0, e.g., for a 2 x 0 matrix, thanks to Karolis
    Koncevičius' report PR#18509.
  * Group "Summary" computations such as sum(1:3, 4, na.rm = 5, NA,
    7, na.rm = LL) now give an error instead of either 17 or NN for
    LL true or false, as proposed by Ivan Krylov on the R-devel
    mailing list.  (This also means it is now an error to specify
    na.rm more than once.)
  * as.complex(x) now returns complex(real = x, imaginary = 0) for
    _all_ numerical and logical x, notably also for NA or
    NA_integer_.
  * Directories are now omitted by file.copy(, recursive = FALSE) and
    in file.append() (PR#17337).
  * gsub() and sub() are now more robust to integer overflow when
    reporting errors caused by too large input strings (PR#18346).
  * Top-level handlers are now more robust to attempts to remove a
    handler whilst handlers are running (PR#18508).
  * The handling of Alt+F4 in dialogs created on Windows using
    GraphApp has been fixed (PR#13870).
  * density() more consistently computes grid values for the
    FFT-based convolution, following Robert Schlicht's analysis and
    proposal in PR#18337, correcting density values typically by a
    factor of about 0.999.  Argument old.coords = TRUE provides back
    compatibility.
  * palette.colors() gains a name argument that defaults to FALSE
    controlling whether the vector of colours that is returned has
    names (where possible).  PR#18529.
  * tools::xgettext() no longer extracts the (non-translatable) class
    names from warningCondition and errorCondition calls.
  * S3method(&lt;gen&gt;, &lt;class&gt;, &lt;func&gt;) in the NAMESPACE file now works
    (again) when &lt;func&gt; is visible from the namespace, e.g.,
    imported, or in base.
  * getParseData(f) now also works for a function defined in the
    first of several &lt;pkg&gt;/R/*.R source files, thanks to Kirill
    Müller's report and Duncan Murdoch's patch in PR#16756.
  * Rd \Sexpr macros with nested #ifdef conditionals were not
    processed.
  * A non-blocking connection with non-default encoding (such as a
    socket) now correctly returns from readLines() after new data has
    arrived also when its EOF had been reached previously.  Thanks to
    Peter Meilstrup's report on R-devel and Ivan Krylov's report and
    patch proposal in PR#18555.
  * tools::checkRdContents() failed to detect empty argument
    descriptions when they spanned multiple lines, including those
    generated by prompt().  These cases are now noted by R CMD check.
  * Plain-text help no longer outputs spurious colons in the
    arguments list (for multi-line \item labels in the Rd source).
  * kappa() and rcond() work correctly in more cases; kappa(., norm =
    "2") now warns that it computes the 1-norm with (default) exact =
    FALSE; prompted by Mikael Jagan's quite comprehensive PR#18543.
  * Rd skeletons generated by prompt() or promptData() now use a
    dummy title (so R CMD build works).  tools::checkRdContents() has
    been updated to detect such template leftovers, including from
    promptPackage().
  * When S4 method dispatch fails because no method was found, the
    error message now includes the signature argument names; thanks
    to Michael Chirico's proposal on the R-devel list.
  * withAutoprint({ .. }) now preserves srcrefs previously lost,
    thanks to Andrew Simmons' report plus fix in PR#18572.
  * transform.data.frame() no longer adjusts names; in particular,
    untransformed variables are kept as-is, including those with
    syntactically invalid names (PR#17890).
  * The keep.source option for Rd \Sexpr blocks is no longer ignored.
  * The formula methods for t.test() and wilcox.test() now catch when
    paired is passed, addressing PR#14359; use Pair(x1, x2) ~ 1 for a
    paired test.
  * The level reported in the browser prompt was often too large. It
    now shows the number of browser contexts on the stack.
  * For cbind() and rbind(), the optional deparse.level argument is
    now properly passed to methods, thanks to Mikael Jagan's PR#18579
    and comments there.
  * Some error and warning messages for large ('long vector')
    matrix(v, nr, nc) and dim(m) &lt;- d are now correct about sizes,
    using long long formatting, fixing PR#18612 (and more) reported
    by Mikael Jagan.
  * readChar(useBytes = TRUE) now terminates strings even when the
    underlying connection uses extra spaces in the input buffer.
    This fixes problems with extra garbage seen with gzip
    connections, PR#18605.
  * Named capture in PCRE regular expressions now works also with
    more than 127 named groups (PR#18588).
  * Datetime functions are now robust against long jumps when dealing
    with internal time zone changes.  This avoids confusing warnings
    about an invalid time zone, previously triggered by turning
    warnings into errors or handling them via tryCatch (PR#17966,
    PR#17780).
  * Datetime functions now restore even an empty TZ environment
    variable after internal time zone changes (PR#17724).  This makes
    results of datetime functions with this (typically unintentional)
    setting more predictable.
  * drop.terms(*) now drops response as by default, keep.response =
    FALSE, fixing PR#18564 thanks to Mikael Jagan.
  * dummy.coef(.) now also works for lm()-models with character
    categorical predictor variables rather than factor ones, fixing
    PR#18635 reported by Jinsong Zhao.
  * formals(f) &lt;- formals(f) now also works for a function w/o
    arguments and atomic _constant_ body(f).
  * Correct as.function(&lt;invalid list&gt;, .)'s error message.
  * removeSource() is yet more thorough in finding and removing
    "srcref" and the other source references from parsed R language
    chunks, fixing PR#18638 thanks to Andrew Simmons.
  * dgeom() is more accurate now, notably when its result is very
    small, fixing PR#18642 thanks to the proposal of Morten Welinder,
    also improving other instances where C level binom_raw(x, n, ..)
    has x == 0 or x== n.
  * warning() with options(warn = 1) has improved output for
    multi-line messages.
  * axis.Date() and axis.POSIXct() now respect the par("lab") setting
    for the number of pretty() intervals.
  * Comparisons for language objects (which are based on deparsing)
    are now more careful about using accurate deparsed results
    (PR#18676).
  * Plain-text help (Rd2txt) now correctly preserves blank lines
    following single-line \dontrun code.
  * &lt;POSIXlt&gt;[*] no longer sets wrong "balanced" attribute, fixing
    PR#18681 thanks to Mikael Jagan.
  * str(&lt;classed-call&gt;) now deparses the call as expected, fixing
    PR#18684, reported by Dave Slager.
  * In Rd examples, code following the closing brace of a \dontrun,
    \dontshow or \donttest tag on the same line is no longer skipped
    when R CMD check runs the examples.
  * as.data.frame(matrix(*, ncol=0)) now gets valid names() and
    colnames(); reported by Davis Vaughan on the R-devel list.
  * Internal Mathlib function stirlerr(n) is now almost fully
    (52-bit) accurate for all n &gt;= ~5.9 and more accurate also in the
    range 1 -- 5.9.  This entails small ("after 12th decimal")
    changes in density functions, e.g., dgamma() in _some_ regions of
    their support.  The fix was partly prompted by Morten Welinder's
    PR#18640.
  * Numbers like 9876543.2 are now considered non-integer by Mathlib
    internal R_nonint(), amending original fix of PR#15734.
  * Rd comment lines no longer cause broken paragraphs in the
    rendered PDF and plain-text help. In code blocks, pure comment
    lines (starting with %) no longer produce an empty line.
  * xtabs(Freq ~ .) now consistently defaults to na.action = na.pass,
    using na.rm = FALSE (added as an argument) when summing over Freq
    (PR#17770).
  * tools::testInstalledPackage() is no longer silent about failures
    from running examples or tests and its return code no longer
    ignores failures from checking vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1718366400">- CHANGES IN R 4.4.1:
  C-LEVEL FACILITIES:
  * Functions R_atof and R_strtod declared in header R_ext/Utils.h
    are now documented in 'Writing R Extensions' and so formally part
    of the API.
  * The non-API entry points Rf_setSVector, Rf_StringFalse,
    Rf_StringTrue and Rf_isBlankString have been added to those
    reported by R CMD check.
  * The new function Rf_allocLang is now available. This provides an
    alternative to the idiom of calling Rf_allocList followed by
    SET_TYPEOF.
  UTILITIES:
  * R CMD check now reports as warnings what gfortran calls 'Fortran
    2018 deleted features', all of which have long been marked as
    'obsolescent' and some of which were deleted in Fortran 2008 or
    earlier.  Fortran compilers are no longer required to support
    these.
  BUG FIXES:
  * as.numeric(), scan(), type.convert() and other places which use
    the internal C function R_strtod now require a _non-empty_ digit
    sequence in a decimal or binary exponent.  This aligns with the
    C/POSIX standard for strtod and with ?NumericConstants.
  * as.data.frame(m, make.names=NA) now works correctly for a matrix
    m with NA's in row names.
  * The error message from &lt;POSIXlt&gt;[["hour"]] and similar now
    mentions *[[, "hour"]], as wished for in PR#17409 and proposed by
    Michael Chirico.
  * qbinom() and potentially qpois(), qnbinom(), no longer sometimes
    fail accurate inversion (of pbinom(), etc), thanks to Christopher
    Chang's report and patch in PR#18711.
  * The internal help server on Windows can again serve requests sent
    in quick succession, fixing a regression in R 4.4.0.
  * debugcall(&lt;S3Generic&gt;()) now also works when a corresponding
    S4-generic version is in the methods cache (PR#18143).
  * Package tools' toTitleCase(ch0) now returns character(0) when ch0
    is of zero length; fixing PR#18724, reported by David Hugh Jones.
  * R CMD check is no longer broken (without a check result and no
    explanation in 00check.log) for a package which declares an
    invalid VignetteBuilder in DESCRIPTION but has no vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1730376000">- CHANGES IN R 4.4.2:
  C-LEVEL FACILITIES:
  * The S-compatibility macros F77_COM and F77_COMDECL defined in
    header R_ext/RS.h are deprecated and will be removed shortly.  We
    could find no record of their use.
  BUG FIXES:
  * Mathlib function lgammacor(x) no longer warns about underflow to
    zero for large x.
  * Text widths and heights were incorrectly reported by the Quartz
    device if the drawing context didn't exist yet (typically when
    drawing off-screen to a window that is yet to appear, see
    PR#18591).
  * The Quartz device could segfault in cases where paths with spaces
    are used in the new glyph drawing API.  Thanks to Tomek
    Gieorgijewski (PR#18758).
  * On macOS in R CRAN builds, it is again possible to read
    little-endian UTF-16 text with a BOM from a connection using
    encoding="UTF-16".  Users building R from source should avoid
    using the system libiconv in macOS 14.1 and later.
  * methods' internal .requirePackage() now re-enables primitive
    method dispatch when needed; thanks to Ivan Krylov for
    demystifying CRAN package check failures on the R-devel mailing
    list.</changelog>
</package>
<package pkgid="70d1e25038d02a930b419e15b081b83646aa806b718a247f652a982700681a3feac8043441019bc9f53453bca7973fa76f318be127092eec656d89fee5fbdc82" name="R-class-debuginfo" arch="i586">
  <version epoch="0" ver="7.3.22" rel="51.0.2.2.sr20241103"/>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1620302400">- To get in sync with d:l:R:autoCRAN the Matrix package's split
  in -devel was reversed.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339200">- improved spec file according to comments of dimstar in
  https://build.opensuse.org/request/show/892685</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339201">- CHANGES IN R 4.1.0:
  FUTURE DIRECTIONS:
  * It is planned that the 4.1.x series will be the last to support
    32-bit Windows, with production of binary packages for that
    series continuing until early 2023.
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Data set esoph in package datasets now provides the correct
    numbers of controls; previously it had the numbers of cases added
    to these.  (Reported by Alexander Fowler in PR#17964.)
  NEW FEATURES:
  * www.omegahat.net is no longer one of the repositories known by
    default to setRepositories().  (Nowadays it only provides source
    packages and is often unavailable.)
  * Function package_dependencies() (in package tools) can now use
    different dependency types for direct and recursive dependencies.
  * The checking of the size of tarball in R CMD check --as-cran
    &lt;pkg&gt; may be tweaked via the new environment variable
    _R_CHECK_CRAN_INCOMING_TARBALL_THRESHOLD_, as suggested in
    PR#17777 by Jan Gorecki.
  * Using c() to combine a factor with other factors now gives a
    factor, an ordered factor when combining ordered factors with
    identical levels.
  * apply() gains a simplify argument to allow disabling of
    simplification of results.
  * The format() method for class "ftable" gets a new option justify.
    (Suggested by Thomas Soeiro.)
  * New ...names() utility.  (Proposed by Neal Fultz in PR#17705.)
  * type.convert() now warns when its as.is argument is not
    specified, as the help file always said it _should_.  In that
    case, the default is changed to TRUE in line with its change in
    read.table() (related to stringsAsFactor) in R 4.0.0.
  * When printing list arrays, classed objects are now shown _via_
    their format() value if this is a short enough character string,
    or by giving the first elements of their class vector and their
    length.
  * capabilities() gets new entry "Rprof" which is TRUE when R has
    been configured with the equivalent of --enable-R-profiling (as
    it is by default).  (Related to Michael Orlitzky's report
    PR#17836.)
  * str(xS4) now also shows extraneous attributes of an S4 object
    xS4.
  * Rudimentary support for vi-style tags in rtags() and R CMD rtags
    has been added.  (Based on a patch from Neal Fultz in PR#17214.)
  * checkRdContents() is now exported from tools; it and also
    checkDocFiles() have a new option chkInternal allowing to check
    Rd files marked with keyword "internal" as well.  The latter can
    be activated for R CMD check via environment variable
    _R_CHECK_RD_INTERNAL_TOO_.
  * New functions numToBits() and numToInts() extend the raw
    conversion utilities to (double precision) numeric.
  * Functions URLencode() and URLdecode() in package utils now work
    on vectors of URIs.  (Based on patch from Bob Rudis submitted
    with PR#17873.)
  * path.expand() can expand ~user on most Unix-alikes even when
    readline is not in use.  It tries harder to expand ~, for example
    should environment variable HOME be unset.
  * For HTML help (both dynamic and static), Rd file links to help
    pages in external packages are now treated as references to
    topics rather than file names, and fall back to a file link only
    if the topic is not found in the target package. The earlier rule
    which prioritized file names over topics can be restored by
    setting the environment variable _R_HELP_LINKS_TO_TOPICS_ to a
    false value.
  * c() now removes NULL arguments before dispatching to methods,
    thus simplifying the implementation of c() methods, _but_ for
    back compatibility keeps NULL when it is the first argument.
    (From a report and patch proposal by Lionel Henry in PR#17900.)
  * Vectorize()'s result function's environment no longer keeps
    unneeded objects.
  * Function ...elt() now propagates visibility consistently with
    ..n.  (Thanks to Lionel Henry's PR#17905.)
  * capture.output() no longer uses non-standard evaluation to
    evaluate its arguments.  This makes evaluation of functions like
    parent.frame() more consistent.  (Thanks to Lionel Henry's
    PR#17907.)
  * packBits(bits, type="double") now works as inverse of
    numToBits().  (Thanks to Bill Dunlap's proposal in PR#17914.)
  * curlGetHeaders() has two new arguments, timeout to specify the
    timeout for that call (overriding getOption("timeout")) and TLS
    to specify the minimum TLS protocol version to be used for
    https:// URIs (_inter alia_ providing a means to check for sites
    using deprecated TLS versions 1.0 and 1.1).
  * For nls(), an optional constant scaleOffset may be added to the
    denominator of the relative offset convergence test for cases
    where the fit of a model is expected to be exact, thanks to a
    proposal by John Nash.  nls(*, trace=TRUE) now also shows the
    convergence criterion.
  * Numeric differentiation _via_ numericDeriv() gets new optional
    arguments eps and central, the latter for taking central divided
    differences.  The latter can be activated for nls() via
    nls.control(nDcentral = TRUE).
  * nls() now passes the trace and control arguments to getInitial(),
    notably for all self-starting models, so these can also be fit in
    zero-noise situations via a scaleOffset.  For this reason, the
    initial function of a selfStart model must now have ... in its
    argument list.
  * bquote(splice = TRUE) can now splice expression vectors with
    attributes: this makes it possible to splice the result of
    parse(keep.source = TRUE).  (Report and patch provided by Lionel
    Henry in PR#17869.)
  * textConnection() gets an optional name argument.
  * get(), exists(), and get0() now signal an error if the first
    argument has length greater than 1.  Previously additional
    elements were silently ignored.  (Suggested by Antoine Fabri on
    R-devel.)
  * R now provides a shorthand notation for creating functions, e.g.
    \(x) x + 1 is parsed as function(x) x + 1.
  * R now provides a simple native forward pipe syntax |&gt;.  The
    simple form of the forward pipe inserts the left-hand side as the
    first argument in the right-hand side call.  The pipe
    implementation as a syntax transformation was motivated by
    suggestions from Jim Hester and Lionel Henry.
  * all.equal(f, g) for functions now by default also compares their
    environment(.)s, notably via new all.equal method for class
    function.  Comparison of nls() fits, e.g., may now need
    all.equal(m1, m2, check.environment = FALSE).
  * .libPaths() gets a new option include.site, allowing to _not_
    include the site library.  (Thanks to Dario Strbenac's suggestion
    and Gabe Becker's PR#18016.)
  * Lithuanian translations are now available.  (Thanks to Rimantas
    Zakauskas.)
  * names() now works for DOTSXP objects.  On the other hand, in
    R-lang, the R language manual, we now warn against relying on the
    structure or even existence of such dot-dot-dot objects.
  * all.equal() no longer gives an error on DOTSXP objects.
  * capabilities("cairo") now applies only to the file-based devices
    as it is now possible (if very unusual) to build R with Cairo
    support for those but not for X11().
  * There is optional support for tracing the progress of
    loadNamespace() - see its help.
  * (Not Windows.)  l10n_info() reports an additional element, the
    name of the encoding as reported by the OS (which may differ from
    the encoding part (if any) of the result from
    Sys.getlocale("LC_CTYPE").
  * New function gregexec() which generalizes regexec() to find _all_
    disjoint matches and well as all substrings corresponding to
    parenthesized subexpressions of the given regular expression.
    (Contributed by Brodie Gaslam.)
  * New function charClass() in package utils to query the
    wide-character classification functions in use (such as
    iswprint).
  * The names of quantile()'s result no longer depend on the global
    getOption("digits"), but quantile() gets a new optional argument
    digits = 7 instead.
  * grep(), sub(), regexp and variants work considerably faster for
    long factors with few levels.  (Thanks to Michael Chirico's
    PR#18063.)
  * Provide grouping of x11() graphics windows within a window
    manager such as Gnome or Unity; thanks to a patch by Ivan Krylov
    posted to R-devel.
  * The split() method for class data.frame now allows the f argument
    to be specified as a formula.
  * sprintf now warns on arguments unused by the format string.
  * New palettes "Rocket" and "Mako" for hcl.colors() (approximating
    palettes of the same name from the 'viridisLite' package).
    Contributed by Achim Zeileis.
  * The base environment and its namespace are now locked (so one can
    no longer add bindings to these or remove from these).
  * Rterm handling of multi-byte characters has been improved,
    allowing use of such characters when supported by the current
    locale.
  * Rterm now accepts ALT+ +xxxxxxxx sequences to enter Unicode
    characters as hex digits.
  * Environment variable LC_ALL on Windows now takes precedence over
    LC_CTYPE and variables for other supported categories, matching
    the POSIX behaviour.
  * duplicated() and anyDuplicated() are now optimized for integer
    and real vectors that are known to be sorted via the ALTREP
    framework. Contributed by Gabriel Becker via PR#17993.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 14
    and so packages that provide graphics devices should be
    reinstalled.
  * Graphics devices should now specify deviceVersion to indicate
    what version of the graphics engine they support.
  * Graphics devices can now specify deviceClip.  If TRUE, the
    graphics engine will never perform any clipping of output itself.
    The clipping that the graphics engine does perform (for both
    canClip = TRUE and canClip = FALSE) has been improved to avoid
    producing unnecessary artifacts in clipped output.
  * The grid package now allows gpar(fill) to be a linearGradient(),
    a radialGradient(), or a pattern().  The viewport(clip) can now
    also be a grob, which defines a clipping path, and there is a new
    viewport(mask) that can also be a grob, which defines a mask.
    These new features are only supported so far on the Cairo-based
    graphics devices and on the pdf() device.
  * (Not Windows.)  A warning is given when a Cairo-based type is
    specified for a png(), jpeg(), tiff() or bmp() device but Cairo
    is unsupported (so type = "Xlib" is tried instead).
  * grSoftVersion() now reports the versions of FreeType and
    FontConfig if they are used directly (not _via_ Pango), as is
    most commonly done on macOS.
  C-LEVEL FACILITIES:
  * The _standalone_ libRmath math library and R's C API now provide
    log1pexp() again as documented, and gain log1mexp().
  INSTALLATION on a UNIX-ALIKE:
  * configure checks for a program pkgconf if program pkg-config is
    not found.  These are now only looked for on the path (like
    almost all other programs) so if needed specify a full path to
    the command in PKG_CONFIG, for example in file config.site.
  * C99 function iswblank is required - it was last seen missing ca
    2003 so the workaround has been removed.
  * There are new configure options --with-internal-iswxxxxx,
  - -with-internal-towlower and --with-internal-wcwidth which allows
    the system functions for wide-character classification,
    case-switching and width (wcwidth and wcswidth) to be replaced by
    internal ones.  The first has long been used on macOS, AIX (and
    Windows) but this enables it to be unselected there and selected
    for other platforms (it is the new default on Solaris).  The
    second is new in this version of R and is selected by default on
    macOS and Solaris.  The third has long been the default and
    remains so as it contains customizations for East Asian
    languages.
    System versions of these functions are often minimally
    implemented (sometimes only for ASCII characters) and may not
    cover the full range of Unicode points: for example Solaris (and
    Windows) only cover the Basic Multilingual Plane.
  * Cairo installations without X11 are more likely to be detected by
    configure, when the file-based Cairo graphics devices will be
    available but not X11(type = "cairo").
  * There is a new configure option --with-static-cairo which is the
    default on macOS.  This should be used when only static cairo
    (and where relevant, Pango) libraries are available.
  * Cairo-based graphics devices on platforms without Pango but with
    FreeType/FontConfig will make use of the latter for font
    selection.
  LINK-TIME OPTIMIZATION on a UNIX-ALIKE:
  * Configuring with flag --enable-lto=R now also uses LTO when
    installing the recommended packages.
  * R CMD INSTALL and R CMD SHLIB have a new flag --use-LTO to use
    LTO when compiling code, for use with R configured with
  - -enable-lto=R.  For R configured with --enable-lto, they have
    the new flag --no-use-LTO.
    Packages can opt in or out of LTO compilation _via_ a UseLTO
    field in the DESCRIPTION file.  (As usual this can be overridden
    by the command-line flags.)
  BUILDING R on Windows:
  * for GCC &gt;= 8, FC_LEN_T is defined in config.h and hence character
    lengths are passed from C to Fortran in _inter alia_ BLAS and
    LAPACK calls.
  * There is a new text file src/gnuwin32/README.compilation, which
    outlines how C/Fortran code compilation is organized and
    documents new features:
  * R can be built with Link-Time Optimization with a suitable
    compiler - doing so with GCC 9.2 showed several
    inconsistencies which have been corrected.
  * There is support for cross-compiling the C and Fortran code
    in R and standard packages on suitable (Linux) platforms.
    This is mainly intended to allow developers to test later
    versions of compilers - for example using GCC 9.2 or 10.x has
    detected issues that GCC 8.3 in Rtools40 does not.
  * There is experimental support for cross-building R packages
    with C, C++ and/or Fortran code.
  * The R installer can now be optionally built to support a single
    architecture (only 64-bit or only 32-bit).
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++14 where
    available (which it is on all currently checked platforms): if
    not (as before) C++11 is used if available otherwise C++ is not
    supported.
    Packages which specify C++11 will still be installed using C++11.
    C++14 compilers may give deprecation warnings, most often for
    std::random_shuffle (deprecated in C++14 and removed in C++17).
    Either specify C++11 (see 'Writing R Extensions') or modernize
    the code and if needed specify C++14.  The latter has been
    supported since R 3.4.0 so the package's DESCRIPTION would need
    to include something like
    Depends: R (&gt;= 3.4)
  PACKAGE INSTALLATION on Windows:
  * R CMD INSTALL and R CMD SHLIB make use of their flag --use-LTO
    when the LTO_OPT make macro is set in file etc/${R_ARCH}/Makeconf
    or in a personal/site Makevars file.  (For details see 'Writing R
    Extensions' SS4.5.)
    This provides a valuable check on code consistency.  It does work
    with GCC 8.3 as in Rtools40, but that does not detect everything
    the CRAN checks with current GCC do.
  PACKAGE INSTALLATION on macOS:
  * The default personal library directory on builds with
  - -enable-aqua (including CRAN builds) now differs by CPU type,
    one of
    ~/Library/R/x86_64/x.y/library
    ~/Library/R/arm64/x.y/library
    This uses the CPU type R (and hence the packages) were built for,
    so when a x86_64 build of R is run under Rosetta emulation on an
    arm64 Mac, the first is used.
  UTILITIES:
  * R CMD check can now scan package functions for bogus return
    statements, which were possibly intended as return() calls (wish
    of PR#17180, patch by Sebastian Meyer). This check can be
    activated via the new environment variable
    _R_CHECK_BOGUS_RETURN_, true for --as-cran.
  * R CMD build omits tarballs and binaries of previous builds from
    the top-level package directory.  (PR#17828, patch by Sebastian
    Meyer.)
  * R CMD check now runs sanity checks on the use of LazyData, for
    example that a data directory is present and that
    LazyDataCompression is not specified without LazyData and has a
    documented value.  For packages with large LazyData databases
    without specifying LazyDataCompression, there is a reference to
    the code given in 'Writing R Extensions' SS1.1.6 to test the
    choice of compression (as in all the CRAN packages tested a
    non-default method was preferred).
  * R CMD build removes LazyData and LazyDataCompression fields from
    the DESCRIPTION file of packages without a data directory.
  ENCODING-RELATED CHANGES:
  * The parser now treats \Unnnnnnnn escapes larger than the upper
    limit for Unicode points (\U10FFFF) as an error as they cannot be
    represented by valid UTF-8.
    Where such escapes are used for outputting non-printable
    (including unassigned) characters, 6 hex digits are used (rather
    than 8 with leading zeros).  For clarity, braces are used, for
    example \U{0effff}.
  * The parser now looks for non-ASCII spaces on Solaris (as
    previously on most other OSes).
  * There are warnings (including from the parser) on the use of
    unpaired surrogate Unicode points such as \uD834.  (These cannot
    be converted to valid UTF-8.)
  * Functions nchar(), tolower(), toupper() and chartr() and those
    using regular expressions have more support for inputs with a
    marked Latin-1 encoding.
  * The character-classification functions used (by default) to
    replace the system iswxxxxx functions on Windows, macOS and AIX
    have been updated to Unicode 13.0.0.
    The character-width tables have been updated to include new
    assignments in Unicode 13.0.0.
  * The code for evaluating default (extended) regular expressions
    now uses the same character-classification functions as the rest
    of R (previously they differed on Windows, macOS and AIX).
  * There is a build-time option to replace the system's
    wide-character wctrans C function by tables shipped with R: use
    configure option --with-internal-towlower or (on Windows)
  - DUSE_RI18N_CASE in CFLAGS when building R.  This may be needed
    to allow tolower() and toupper() to work with Unicode characters
    beyond the Basic Multilingual Plane where not supported by system
    functions (e.g. on Solaris where it is the new default).
  * R is more careful when truncating UTF-8 and other multi-byte
    strings that are too long to be printed, passed to the system or
    libraries or placed into an internal buffer.  Truncation will no
    longer produce incomplete multibyte characters.
  DEPRECATED AND DEFUNCT:
  * Function plclust() from the package stats and
    package.dependencies(), pkgDepends(), getDepList(),
    installFoundDepends(), and vignetteDepends() from package tools
    are defunct.
  * Defunct functions checkNEWS() and readNEWS() from package tools
    and CRAN.packages() from utils have been removed.
  * R CMD config CXXCPP is defunct (it was deprecated in R 3.6.2).
  * parallel::detectCores() drops support for Irix (retired in 2013).
  * The LINPACK argument to chol.default(), chol2inv(),
    solve.default() and svd() has been defunct since R 3.1.0.  It was
    silently ignored up to R 4.0.3 but now gives an error.
  * Subsetting/indexing, such as ddd[*] or ddd$x on a DOTSXP
    (dot-dot-dot) object ddd has been disabled; it worked by accident
    only and was undocumented.
  BUG FIXES:
  * Many more C-level allocations (mainly by malloc and strdup) are
    checked for success with suitable alternative actions.
  * Bug fix for replayPlot(); this was turning off graphics engine
    display list recording if a recorded plot was replayed in the
    same session.  The impact of the bug became visible if resize the
    device after replay OR if attempted another savePlot() after
    replay (empty display list means empty screen on resize or empty
    saved plot).
  * R CMD check etc now warn when a package exports non-existing S4
    classes or methods, also in case of no "methods" presence.
    (Reported by Alex Bertram; reproducible example and patch by
    Sebastian Meyer in PR#16662.)
  * boxplot() now also accepts calls for labels such as ylab, the
    same as plot().  (Reported by Marius Hofert.)
  * The help page for xtabs() now correctly states that addNA is
    setting na.action = na.pass among others.  (Reported as PR#17770
    by Thomas Soeiro.)
  * The R CMD check &lt;pkg&gt; gives a longer and more comprehensible
    message when DESCRIPTION misses dependencies, e.g., in Imports:.
    (Thanks to the contributors of PR#17179.)
  * update.default() now calls the generic update() on the formula to
    work correctly for models with extended formulas.  (As reported
    and suggested by Neal Fultz in PR#17865.)
  * The horizontal position of leaves in a dendrogram is now correct
    also with center = FALSE.  (PR#14938, patch from Sebastian
    Meyer.)
  * all.equal.POSIXt() no longer warns about and subsequently ignores
    inconsistent "tzone" attributes, but describes the difference in
    its return value (PR#17277).  This check can be disabled _via_
    the new argument check.tzone = FALSE as suggested by Sebastian
    Meyer.
  * as.POSIXct() now populates the "tzone" attribute from its tz
    argument when x is a logical vector consisting entirely of NA
    values.
  * x[[2^31]] &lt;- v now works.  (Thanks to the report and patch by
    Suharto Anggono in PR#17330.)
  * In log-scale graphics, axis() ticks and label positions are now
    computed more carefully and symmetrically in their range,
    typically providing _more_ ticks, fulfilling wishes in PR#17936.
    The change really corresponds to an improved axisTicks() (package
    grDevices), potentially influencing grid and lattice, for
    example.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now correct to at
    least five digits where it was catastrophically wrong,
    previously.
  * sum(df) and similar "Summary"- and "Math"-group member functions
    now work for data frames df with logical columns, notably also of
    zero rows.  (Reported to R-devel by Martin "b706".)
  * unsplit() had trouble with tibbles due to unsound use of rep(NA,
    len)-indexing, which should use NA_integer_ (Reported to R-devel
    by Mario Annau.)
  * pnorm(x, log.p = TRUE) underflows to -Inf slightly later.
  * show(&lt;hidden S4 generic&gt;) prints better and without quotes for
    non-hidden S4 generics.
  * read.table() and relatives treated an "NA" column name as missing
    when check.names = FALSE PR#18007.
  * Parsing strings containing UTF-16 surrogate pairs such as
    "\uD834\uDD1E" works better on some (uncommon) platforms.
    sprintf("%X", utf8ToInt("\uD834\uDD1E")) should now give "1D11E"
    on all platforms.
  * identical(x,y) is no longer true for differing DOTSXP objects,
    fixing PR#18032.
  * str() now works correctly for DOTSXP and related exotics, even
    when these are doomed.
    Additionally, it no longer fails for lists with a class and
    "irregular" method definitions such that e.g. lapply(*) will
    necessarily fail, as currently for different igraph objects.
  * Too long lines in environment files (e.g. Renviron) no longer
    crash R. This limit has been increased to 100,000 bytes.
    (PR#18001.)
  * There is a further workaround for FreeType giving incorrect
    italic font faces with cairo-based graphics devices on macOS.
  * add_datalist(*, force = TRUE) (from package tools) now actually
    updates an existing data/datalist file for new content.  (Thanks
    to a report and patch by Sebastian Meyer in PR#18048.)
  * cut.Date() and cut.POSIXt() could produce an empty last interval
    for breaks = "months" or breaks = "years".  (Reported as PR#18053
    by Christopher Carbone.)
  * Detection of the encoding of 'regular' macOS locales such as
    en_US (which is UTF-8) had been broken by a macOS change:
    fortunately these are now rarely used with en_US.UTF-8 being
    preferred.
  * sub() and gsub(pattern, repl, x, *) now keep attributes of x such
    as names() also when pattern is NA (PR#18079).
  * Time differences ("difftime" objects) get a replacement and a
    rep() method to keep "units" consistent.  (Thanks to a report and
    patch by Nicolas Bennett in PR#18066.)
  * The \RdOpts macro, setting defaults for \Sexpr options in an Rd
    file, had been ineffective since R 2.12.0: it now works again.
    (Thanks to a report and patch by Sebastian Meyer in PR#18073.)
  * mclapply and pvec no longer accidentally terminate parallel
    processes started before by mcparallel or related calls in
    package parallel (PR#18078).
  * grep and other functions for evaluating (extended) regular
    expressions handle in Unicode also strings not explicitly flagged
    UTF-8, but flagged native when running in UTF-8 locale.
  * Fixed a crash in fifo implementation on Windows (PR#18031).
  * Binary mode in fifo on Windows is now properly detected from
    argument open (PR#15600, PR#18031).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1622808000">- The line %{__install} -m 755 -d %{_infodir}
  no longer works in TW or Factory.
  But without that line it works everywhere. So this instruction
  was commented out of the spec file.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1628596800">- CHANGES IN R 4.1.1:
  NEW FEATURES:
  * require(pkg, quietly = TRUE) is quieter and in particular does
    not warn if the package is not found.
  DEPRECATED AND DEFUNCT:
  * Use of ftp:// URIs should be regarded as deprecated, with
    on-going support confined to method = "libcurl" and not routinely
    tested.  (Nowadays no major browser supports them.)
  * The non-default method = "internal" is deprecated for http:// and
    ftp:// URIs for both download.file and url.
  * On Windows, method = "wininet" is deprecated for http://,
    https:// and ftp:// URIs for both download.file and url.  (A
    warning is only given for ftp://.)
    For ftp:// URIs the default method is now "libcurl" if available
    (which it is on CRAN builds).
    method = "wininet" remains the default for http:// and https://
    URIs but if libcurl is available, using method = "libcurl" is
    preferred.
  INSTALLATION:
  * make check now works also without a LaTeX installation.  (Thanks
    to Sebastian Meyer's PR#18103.)
  BUG FIXES:
  * make check-devel works again in an R build configured with
  - -without-recommended-packages.
  * qnbinom(p, size, mu) for large size/mu is correct now in a range
    of cases (PR#18095); similarly for the (size, prob)
    parametrization of the negative binomial.  Also qpois() and
    qbinom() are better and or faster for extreme cases.  The
    underlying C code has been modularized and is common to all four
    cases of discrete distributions.
  * gap.axis is now part of the axis() arguments which are passed
    from bxp(), and hence boxplot().  (Thanks to Martin Smith's
    report and suggestions in PR#18109.)
  * .First and .Last can again be set from the site profile.
  * seq.int(from, to, *) and seq.default(..) now work better in large
    range cases where from-to is infinite where the two boundaries
    are finite.
  * all.equal(x,y) now returns TRUE correctly also when several
    entries of abs(x) and abs(y) are close to .Machine$double.xmax,
    the largest finite numeric.
  * model.frame() now clears the object bit when removing the class
    attribute of a value via na.action (PR#18100).
  * charClass() now works with multi-character strings on Windows
    (PR#18104, fixed by Bill Dunlap).
  * encodeString() on Solaris now works again in Latin-1 encoding on
    characters represented differently in UTF-8.  Support for
    surrogate pairs on Solaris has been improved.
  * file.show() on Windows now works with non-ASCII path names
    representable in the current native encoding (PR#18132).
  * Embedded R on Windows can now find R home directory via the
    registry even when installed only for the current user
    (PR#18135).
  * pretty(x) with finite x now returns finite values also in the
    case where the extreme x values are close in size to the maximal
    representable number .Machine$double.xmax.
    Also, it's been tweaked for very small ranges and when a boundary
    is close (or equal) to zero; e.g., pretty(c(0,1e-317)) no longer
    has negative numbers, currently still warning about a very small
    range, and pretty(2^-(1024 - 2^-1/(c(24,10)))) is more accurate.
  * The error message for not finding vignette files when weaving has
    correct file sizes now. (Thanks to Sebastian Meyer's PR#18154.)
  * dnbinom(20, &lt;large&gt;, 1) now correctly gives 0, and similar cases
    are more accurate with underflow precaution.  (Reported by Francisco Vera Alcivar in PR#18072.)</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635163200">- repaired https://bugzilla.suse.com/show_bug.cgi?id=1191380
  (rpmacros now go to rpmmacrodir)
- minor clean-ups in spec file</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635768000">- CHANGES IN R 4.1.2:
  C-LEVEL FACILITIES:
  * The workaround in headers R.h and Rmath.h (using namespace std;)
    for the Oracle Developer Studio compiler is no longer needed now
    C++11 is required so has been removed.  A couple more usages of
    log() (which should have been std::log()) with an int argument
    are reported on Solaris.
  * The undocumented limit of 4095 bytes on messages from the
    S-compatibility macros PROBLEM and MESSAGE is now documented and
    longer messages will be silently truncated rather than
    potentially causing segfaults.
  * If the R_NO_SEGV_HANDLER environment variable is non-empty, the
    signal handler for SEGV/ILL/BUS signals (which offers recovery
    user interface) is not set. This allows more reliable debugging
    of crashes that involve the console.
  DEPRECATED AND DEFUNCT:
  * The legacy S-compatibility macros PROBLEM, MESSAGE, ERROR, WARN,
    WARNING, RECOVER, ... are deprecated and will be hidden in R
    4.2.0. R's native interface of Rf_error and Rf_warning has long
    been preferred.
  BUG FIXES:
  * .mapply(F, dots, .) no longer segfaults when dots is not a list
    and uses match.fun(F) as always documented; reported by Andrew
    Simmons in PR#18164.
  * hist(&lt;Date&gt;, ...) and hist(&lt;POSIXt&gt;, ...)  no longer pass
    arguments for rect() (such as col and density) to axis().
    (Thanks to Sebastian Meyer's PR#18171.)
  * \Sexpr{ch} now preserves Encoding(ch). (Thanks to report and
    patch by Jeroen Ooms in PR#18152.)
  * Setting the RNG to "Marsaglia-Multicarry" e.g., by RNGkind(), now
    warns in more places, thanks to Andr'e Gillibert's report and
    patch in PR#18168.
  * gray(numeric(), alpha=1/2) no longer segfaults, fixing PR#18183,
    reported by Till Krenz.
  * Fixed dnbinom(x, size=&lt;very_small&gt;, .., log=TRUE) regression,
    reported by Martin Morgan.
  * as.Date.POSIXlt(x) now keeps names(x), thanks to Davis Vaughan's
    report and patch in PR#18188.
  * model.response() now strips an "AsIs" class typically, thanks to
    Duncan Murdoch's report and other discussants in PR#18190.
  * try() is considerably faster in case of an error and long call,
    as e.g., from some do.call().  Thanks to Alexander Kaever's
    suggestion posted to R-devel.
  * qqline(y = &lt;object&gt;) such as y=I(.), now works, see also
    PR#18190.
  * Non-integer mgp par() settings are now handled correctly in
    axis() and mtext(), thanks to Mikael Jagan and Duncan Murdoch's
    report and suggestion in PR#18194.
  * formatC(x) returns length zero character() now, rather than ""
    when x is of length zero, as documented, thanks to Davis
    Vaughan's post to R-devel.
  * removeSource(fn) now retains (other) attributes(fn).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1647000000">- CHANGES IN R 4.1.3:
  NEW FEATURES:
  * The default version of Bioconductor has been changed to 3.14.
    (This is used by setRepositories and the menus in GUIs.)
  UTILITIES:
  * R CMD check --as-cran has a workaround for a bug in versions of
    file up to at least 5.41 which mis-identify DBF files last
    changed in 2022 as executables.
  C-LEVEL FACILITIES:
  * The legacy S-compatibility macros SINGLE_* in R_ext/Constants.h
    (included by R.h) are deprecated and will be removed in R 4.2.0.
  BUG FIXES:
  * Initialization of self-starting nls() models with initialization
    functions following the pre-R-4.1.0 API (without the ...
    argument) works again for now, with a deprecation warning.
  * Fixed quoting of ~autodetect~ in Java setting defaults to avoid
    inadvertent user lookup due to leading ~, reported in PR#18231 by
    Harold Gutch.
  * substr(., start, stop) &lt;- v now treats _negative_ stop values
    correctly.  Reported with a patch in PR#18228 by Brodie Gaslam.
  * Subscripting an array x without dimnames by a
    length(dim(x))-column character matrix gave "random" non-sense,
    now an error; reported in PR#18244 by Mikael Jagan.
  * ...names() now matches names(list(...)) closely, fixing PR#18247.
  * all.equal(*, scale = s) now works as intended when length(s) &gt; 1,
    partly thanks to Michael Chirico's PR#18272.
  * print(x) for long vectors x now also works for named atomic
    vectors or lists and prints the correct number when reaching the
    getOption("max.print") limit; partly thanks to a report and
    proposal by Hugh Parsonage to the R-devel list.
  * all.equal(&lt;selfStart&gt;, *) no longer signals a deprecation
    warning.
  * reformulate(*, response=r) gives a helpful error message now when
    length(r) &gt; 1, thanks to Bill Dunlap's PR#18281.
  * Modifying globalCallingHandlers inside withCallingHandlers() now
    works or fails correctly, thanks to Henrik Bengtsson's PR#18257.
  * hist(&lt;Date&gt;, breaks = "days") and hist(&lt;POSIXt&gt;, breaks = "secs")
    no longer fail for inputs of length 1.
  * qbeta(.001, .9, .009) and similar cases now converge correctly
    thanks to Ben Bolker's report in PR#17746.
  * window(x, start, end) no longer wrongly signals "'start' cannot
    be after 'end'", fixing PR#17527 and PR#18291.
  * data() now checks that its (rarely used) list argument is a
    character vector - a couple of packages passed other types and
    gave incorrect results.
  * which() now checks its arr.ind argument is TRUE rather coercing
    to logical and taking the first element - which gave incorrect
    results in package code.
  * model.weights() and model.offset() more carefully extract their
    model components, thanks to Ben Bolker and Tim Taylor's R-devel
    post.
  * list.files(recursive = TRUE) now shows all broken symlinks
    (previously, some of them may have been omitted, PR#18296).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1650628800">- CHANGES IN R 4.2.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * The formula method of aggregate() now matches the generic in
    naming its first argument x (resolving PR#18299 by Thomas
    Soeiro).
    This means that calling aggregate() with a formula as a named
    first argument requires name formula in earlier versions of R and
    name x now, so portable code should not name the argument (code
    in many packages did).
  * Calling &amp;&amp; or || with either argument of length greater than one
    now gives a warning (which it is intended will become an error).
  * Calling if() or while() with a condition of length greater than
    one gives an error rather than a warning.  Consequently,
    environment variable _R_CHECK_LENGTH_1_CONDITION_ no longer has
    any effect.
  * Windows users should consult the WINDOWS section below for some
    profound changes including
  * Support for 32-bit builds has been dropped.
  * UTF-8 locales are used where available.
  * The default locations for the R installation and personal
    library folder have been changed.
    Thanks to Tomas Kalibera for months of work on the Windows port
    for this release.
  NEW FEATURES:
  * matrix(x, n, m) now warns in more cases where length(x) differs
    from n * m, as suggested by Abby Spurdle and Wolfgang Huber in
    Feb 2021 on the R-devel mailing list.
    This warning can be turned into an error by setting environment
    variable _R_CHECK_MATRIX_DATA_ to TRUE: R CMD check --as-cran
    does so unless it is already set.
  * Function file_test() in package utils gains tests for symlinks,
    readability and writability.
  * capabilities("libxml") is now false.
    The description of capabilities("http/ftp") now reflects that it
    refers to the default method, no longer the internal one.
  * simplify2array() gains an except argument for controlling the
    exceptions used by sapply().
  * Environment variables R_LIBS_USER and R_LIBS_SITE are both now
    set to the R system default if unset or empty, and can be set to
    NULL to indicate an empty list of user or site library
    directories.
  * The warning for axis()(-like) calls in cases of relatively small
    ranges (typically in log-scale situations) is slightly improved
    _and_ suppressed from explicit calls to .axisPars() as has always
    been the intention.
  * The contrasts setter function `contrasts&lt;-` gains an explicit
    default how.many = NULL rather than just using missing(how.many).
  * grid.pretty() gains a new optional argument n = 5.
  * There is a new function .pretty() with option bounds as a
    technical-utility version of pretty().  It and pretty() gain a
    new argument f.min with a better than back-compatible default.
  * Function grDevices::axisTicks() and related functions such as
    graphics::axis() work better, notably for the log scale; partly
    because of the pretty() improvements, but also because care is
    taken e.g., when ylim is finite but diff(ylim) is infinite.
  * nclass.FD() gains a digits option.
  * The R Mathlib internal C function bd0() (called indirectly from a
    dozen probability density and distribution functions such as
    dpois(), dbinom(), dgamma(), pgamma() _etc_) has been
    complemented by a more sophisticated and (mostly) more accurate C
    function ebd0(), currently called only by internal dpois_raw()
    improving accuracy for R level dpois() and potentially others
    calling it such as dnbinom(), dgamma() or pgamma().  (Thanks to
    Morten Welinder's PR#15628.)
  * write.ftable() gains sep = " " argument as suggested by Thomas
    Soeiro.
  * The names of the locale categories supported by R's
    Sys.getlocale() and Sys.setlocale() are now provided by variable
    .LC.categories in the base namespace.
  * The Date and POSIXt methods for hist() and the histogram method
    for plot() now also use the new default col = "lightgray" in
    consistency with the corresponding change to hist()'s default for
    R 4.0.0.
  * hist.default() gains new fuzz argument, and the histogram plot
    method no longer uses fractional axis ticks when displaying
    counts ("Frequency").
  * mapply() and hence Map() now also obey the "max-or-0-if-any"
    recycling rule, such that, e.g., Map(`+`, 1:3, 1[0]) is valid
    now.
  * as.character(&lt;obj&gt;) for "hexmode" or "octmode" objects now
    fulfils the important basic rule as.character(x)[j] ===
    as.character(x[j]).
  * The set utility functions, notably intersect() have been tweaked
    to be more consistent and symmetric in their two set arguments,
    also preserving a common mode.
  * substr(ch, start,end) &lt;- new now e.g., preserves names(ch); ditto
    for substring(), thanks to a patch from Brodie Gaslam.
  * plot(&lt;lm&gt;) gains a extend.ylim.f argument, in partial response to
    PR#15285; further PR#17784 is fixed thanks to several
    contributors and a patch by Elin Waring.  The Cook's dist
    contours get customizable via cook.col and cook.lty with a
    different default color and their legend is nicer by default and
    customizable via cook.legendChanges.
  * Attempting to subset an object that is not subsettable now
    signals an error of class notSubsettableError. The
    non-subsettable object is contained in the object field of the
    error condition.
  * Subscript-out-of-bounds errors are now signaled as errors of
    class subscriptOutOfBoundsError.
  * Stack-overflow errors are now signaled as errors inheriting from
    class stackOverflowError. See ?stackOverflowError for more
    details.
  * New partly experimental Sys.setLanguage() utility, solving the
    main problem of PR#18055.
  * gettext() and gettextf() get a new option trim = TRUE which when
    set to false allows translations for strings such as "Execution
    halted\n" typical for C code.
  * An experimental implementation of hash tables is now available.
    See ?hashtab for more details.
  * identical() gains a extptr.as.ref argument for requesting that
    external pointer objects be compared as reference objects.
  * reorder() gets an argument decreasing which it passes to sort()
    for level creation; based on the wish and patch by Thomas Soeiro
    in PR#18243.
  * as.vector() gains a data.frame method which returns a simple
    named list, also clearing a long standing 'FIXME' to enable
    as.vector(&lt;data.frame&gt;, mode="list").  This breaks code relying
    on as.vector(&lt;data.frame&gt;) to return the unchanged data frame.
  * legend() is now vectorized for arguments cex, x.intersp, and
    text.width.  The latter can now also be specified as a vector
    (one element for each column of the legend) or as NA for
    computing a proper column wise maximum value of strwidth(legend).
    The argument y.intersp can be specified as a vector with one
    entry for each row of the legend.
    legend() also gains new arguments title.cex and title.font.
    Thanks to Swetlana Herbrandt.
  * Deparsing no longer remaps attribute names dim, dimnames, levels,
    names and tsp to historical S-compatible names (which structure()
    maps back).
  * sample() and sample.int() have additional sanity checks on their
    size and n arguments.
    all.equal.numeric() gains a sanity check on its tolerance
    argument - calling all.equal(a, b, c) for three numeric vectors
    is a surprisingly common error.
    mean(na.rm =), rank(na.last =), barplot(legend.text =),
    boxplot(), contour(drawlabels =), polygon(border =) and
    methods::is(class2 =) have more robust sanity checks on their
    arguments.
    R CMD Rd2pdf (used by R CMD check) has a more robust sanity check
    on the format of \alias{} commands.
  * psigamma(x, deriv) for negative x now also works for deriv = 4
    and 5; their underlying C level dpsifn() is documented in
    'Writing R Extensions'.
  * The HTML help system now uses HTML5 (wish of PR#18149).
  * ks.test() now provides exact p-values also with ties and MC
    p-values in the two-sample (Smirnov) case.  By Torsten Hothorn.
  * ks.test() gains a formula interface, with y ~ 1 for the
    one-sample (Kolmogorov) test and y ~ group for the two-sample
    (Smirnov) test.  Contributed by Torsten Hothorn.
  * The return value from ks.test() now has class c("ks.test",
    "htest") - packages using try() need to take care to use
    inherits() and not == on the class.
  * New functions psmirnov(), qsmirnov() and rsmirnov() in package
    stats implementing the asymptotic and exact distributions of the
    two-sample Smirnov statistic.
  * iconv() now allows sub = "c99" to use C99-style escapes for UTF-8
    inputs which cannot be converted to encoding to.
  * In a forward pipe |&gt; expression it is now possible to use a named
    argument with the placeholder _ in the rhs call to specify where
    the lhs is to be inserted.  The placeholder can only appear once
    on the rhs.
  * The included LAPACK sources have been updated to version 3.10.0,
    except for the four Fortran 77 routines which 3.10.0 has
    re-implemented in Fortran 90 (where the older versions have been
    retained as the R build process does not support Fortran 90).
  * path.expand() and most other uses of tilde expansion now warn if
    a path would be too long if expanded.  (An exception is
    file.exists(), which silently returns false.)
  * trunc(&lt;Date&gt;, *) now supports units = "months" or "years" for
    consistency with the POSIXt method, thanks to Dirk Eddelbuettel's
    proposal in PR#18099.
  * list2DF() now checks that its arguments are of the same length,
    rather than use recycling.
  * The HTML help system has several new features: LaTeX-like math
    can be typeset using either KaTeX or MathJax, usage and example
    code is highlighted using Prism, and for dynamic help the output
    of examples and demos can be shown within the browser if the
    knitr package is installed. These features can be disabled by
    setting the environment variable _R_HELP_ENABLE_ENHANCED_HTML_ to
    a false value.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 15
    and so packages that provide graphics devices should be
    reinstalled.
  * The grid package now allows the user to specify a "vector" of
    pattern fills.  The fill argument to gpar() accepts a list of
    gradients and/or patterns and the functions linearGradient(),
    radialGradient(), and pattern() have a new group argument.
    Points grobs (data symbols) can now also have a pattern fill.
    The grobCoords() function now returns a more informative and
    complex result.
  * The grid package has new functions for drawing isolated groups:
    grid.group(), grid.define(), and grid.use().  These functions add
    compositing operators and affine transformations to R's graphics
    capabilities.
    The grid package also has new functions for stroking and filling
    paths: grid.stroke(), grid.fill(), and grid.fillStroke().
    A new function as.path() allows the user to specify the fill rule
    for a path that is to be used for clipping, stroking, or filling;
    available options are "winding" and "evenodd".  A new function
    as.mask() allows the user to specify the type of a mask;
    available options are "alpha" and "luminance".
    These new features are only supported so far (at most) on the
    Cairo-based graphics devices and on the pdf() device.
  * dev.capabilities() reports on device support for the new
    features.
  * par() now warns about unnamed non-character arguments to prevent
    misuse such as {usr &lt;- par("usr"); par(usr)}.
  INSTALLATION:
  * Facilities for accessing ftp:// sites are no longer tested
    (except _pro tem_ for curlGetHeaders()) as modern browsers have
    removed support.
  * R can now be built with DEFS = -DSTRICT_R_HEADERS .
  PACKAGE INSTALLATION:
  * R CMD INSTALL no longer tangles vignettes. This completes an R
    CMD build change in R 3.0.0 and affects packages built before R
    3.0.2. Such packages should be re-made with R CMD build to have
    the tangled R code of vignettes shipped with the tarball.
  * USE_FC_LEN_T will become the default: this uses the correct
    prototypes for Fortran BLAS/LAPACK routines called from C/C++,
    and requires adjustment of most such calls - see 'Writing R
    Extensions' SS6.6.2.  (This has been supported since R 3.6.2.)
  * Package installation speed for packages installed with
    keep.source has been improved. This resolve the issue reported by
    Ofek Shilon in PR#18236.
  UTILITIES:
  * R CMD check can optionally report files/directories left behind
    in home, /tmp (even though TMPDIR is set) and other directories.
    See the "R Internals" manual for details.
  * R CMD check now reports byte-compilation errors during
    installation.  These are not usually fatal but may result in
    parts of the package not being byte-compiled.
  * _R_CHECK_DEPENDS_ONLY_ can be applied selectively to examples,
    tests and/or vignettes in R CMD check: see the "R Internals"
    manual.
  * _R_CHECK_SRC_MINUS_W_IMPLICIT_ now defaults to true: recent
    versions of Apple clang on macOS have made implicit function
    declarations in C into a compilation error.
  * R CMD check --as-cran makes use of the environment variable
    AUTORECONF.  See the "R Internals" manual SS8 for further details.
  * R CMD check --use-valgrind also uses valgrind when re-building
    vignettes as some non-Sweave vignettes unhelpfully comment out
    all their code when R CMD check runs vignettes.
  * Errors in re-building vignettes (unless there are LaTeX errors)
    are reported by R CMD check as ERROR rather than WARNING when
    running vignettes has been skipped (as it frequently is in CRAN
    checks and by --as-cran).
  * R CMD Rd2pdf gains a --quiet option that is used by R CMD build
    when building the PDF package manual.
  * R CMD Rd2pdf now always runs LaTeX in batch mode, consistent with
    Texinfo &gt;= 6.7. The --batch option is ignored.
  * R CMD build and R CMD check now include the Rd file name and line
    numbers in the error message of an \Sexpr evaluation failure.
  * For packages using the \doi Rd macro (now an install-time \Sexpr)
    but no other dynamic Rd content, R CMD build now produces a
    smaller tarball and is considerably faster - skipping temporary
    package installation.
  C-LEVEL FACILITIES:
  * The non-API header R_ext/R-ftp-http.h is no longer provided, as
    the entry points it covered are now all defunct.
  * A number of non-API declarations and macro definitions have been
    moved from the installed header Rinternals.h to the internal
    header Defn.h. Packages that only use entry points and
    definitions documented to be part of the API as specified in
    'Writing R Extensions' SS6 should not be affected.
  * The macro USE_RINTERNALS no longer has any effect when compiling
    package code.  Packages which also use R_NO_REMAP will need to
    ensure that the remapped names are used for calls to API
    functions that were formerly also made available as macros.
  * The deprecated legacy S-compatibility macros PROBLEM, MESSAGE,
    ERROR, WARN, WARNING, RECOVER, ... are no longer defined in
    R_exts/RS.h (included by R.h).  Replace these by calls to
    Rf_error and Rf_warning (defined in header R_ext/Error.h included
    by R.h).
    Header R_ext/RS.h no longer includes R_ext/Error.h.
  * Header R_ext/Constants.h (included by R.h) when included from C++
    now includes the C++ header cfloat rather than the C header
    float.h (now possible as C++11 is required).
  * The legacy S-compatibility macros DOUBLE_* in R_ext/Constants.h
    (included by R.h) are deprecated.
  * The deprecated S-compatibility macros SINGLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * R_Calloc, R_Free and R_Realloc are preferred to their unprefixed
    forms and error messages now use the prefix. These forms were
    introduced in R 3.4.0 and are available even when
    STRICT_R_HEADERS is defined.
  * rmultinom has been documented in 'Writing R Extensions' SS6 so is
    now part of the R API.
  * Similarly, Rtanpi, called from R level tanpi() is now part of the
    R API.
  * The long-deprecated, undocumented and non-API entry point call_R
    is no longer declared in R_ext/RS.h (included by R.h).
  * The header S.h which has been unsupported since Jan 2016 has been
    removed.  Use R.h instead.
  DEPRECATED AND DEFUNCT:
  * The (non-default and deprecated) method = "internal" for
    download.file() and url() no longer supports http:// nor ftp://
    URIs.  (It is used only for file:// URIs.)
    On Windows, download.file(method = "wininet") no longer supports
    ftp:// URIs.  (It is no longer the default method, which is
    "libcurl" and does.)
    On Windows, the deprecated method = "wininet" now gives a warning
    for http:// and https:// URIs for both download.file() and url().
    (It is no longer the default method.)
  * On Windows, the command-line option --max-mem-size and
    environment variable R_MAX_MEM_SIZE are defunct.  The memory
    allocation limit was important for 32-bit builds, but these are
    no longer supported.
  * default.stringsAsFactors() is now formally deprecated, where that
    was only mentioned on its regular help page, previously.  So it
    now gives a warning if called.
  * unix.time() is defunct now; it had been deprecated since R 3.4.0.
  BUG FIXES:
  * Setting digits = 0 in format(), print.default() (and hence
    typically print()) or options() is again invalid.  Its behaviour
    was platform-dependent, and it is unclear what "zero significant
    digits" should mean (PR#18098).
  * Messages from C code in the cairo section of package grDevices
    are now also offered for translation, thanks to Michael Chirico's
    PR#18123.
  * mean(x) with finite x now is finite also without "long.double"
    capability.
  * R CMD Rd2pdf no longer leaves an empty build directory behind
    when it aborts due to an already existing output file.  (Thanks
    to Sebastian Meyer's PR#18141.)
  * density(x, weights = w, na.rm = TRUE) when anyNA(x) is true, now
    removes weights "in parallel" to x, fixing PR#18151, reported by
    Matthias Gondan.  Additionally, it gets a subdensity option.
  * Conversion of \Sexpr[]{&lt;expR&gt;} to LaTeX or HTML no longer
    produces long blocks of empty lines when &lt;expR&gt; itself contains
    several lines all producing empty output.  Thanks to a report and
    patch by Ivan Krylov posted to R-devel.
  * R CMD build no longer fails if a package vignette uses child
    documents and inst/doc exists.  (Thanks to Sebastian Meyer's
    PR#18156.)
  * When an R documentation ('help' source) file man/foo.Rd in a
    package has \donttest{..} examples with a syntax error, it is now
    signalled as ERROR and with correct line numbers relating to the
  * -Ex.R file, thanks to Duncan Murdoch and Sebastian Meyer's
    reports and patch proposals in PR#17501.
  * Improved determination of the correct translation domain in
    non-base packages, addressing the combination of PR#18092 and
    PR#17998 (#c6) with reports and _augmented_ patch #2904 by
    Suharto Anggono.
    Note that "R-base" is no longer the default domain e.g., for
    top-level calls to gettext(); rather translation needs explicit
    domain = * specification in such cases.
  * identical(attrib.as.set=FALSE) now works correctly with data
    frames with default row names (Thanks to Charlie Gao's PR#18179).
  * txtProgressBar() now enforces a non-zero width for argument char,
    without which no progress can be visible.
  * dimnames(table(d)) is more consistent in the case where d is a
    list with a single component, thanks to Thomas Soeiro's report to
    R-devel.
    Further, table(d1, d2) now gives an error when d1 and d2 are data
    frames as suggested by Thomas in PR#18224.
  * Fix for drawing semi-transparent lines and fills on the native
    Windows graphics device (PR#18219 and PR#16694).  Thanks to Nick
    Ray for helpful diagnosis on Bugzilla.
  * The deparser now wraps sub-expressions such as if(A) ..  with
    parentheses when needed; thanks to Duncan Murdoch's PR#18232 and
    Lionel Henry's patches there.
  * remove.packages() no longer tries to uninstall Priority: base
    packages, thanks to a report and suggestions by Colin Fay in
    PR#18227.
  * win.metafile() now has xpinch and ypinch arguments so that the
    user can override Windows' (potentially wrong) guess at device
    dimensions.
  * x[i] and x[[i]] for non-integer i should now behave in all cases
    as always documented: the index used is equivalent to
    as.integer(i) unless that would overflow where trunc(i) is used
    instead; thanks to Suharto Anggono's report and patch proposals
    in PR#17977.
  * asOneSidedFormula() now associates the resulting formula with the
    global environment rather than the evaluation environment created
    for the call.
  * &lt;bibentry&gt;$name now matches the field name case-insensitively,
    consistent with bibentry() creation and the replacement method.
  * cbind() failed to detect some length mismatches with a mixture of
    time-series and non-time-series inputs.
  * The default LaTeX style file Sweave.sty used by the RweaveLatex
    driver no longer loads the obsolete ae package; thanks to a
    report by Thomas Soeiro in PR#18271.  Furthermore, it now skips
    \usepackage[T1]{fontenc} for engines other than pdfTeX (if
    detected) or if the new [nofontenc] option is used.
  * smooth.spline() now stores its logical cv argument more safely,
    fixing a rare bug when printing, and also stores n.
  * smooth.spline(x,y,*) now computes the cv.crit statistic
    correctly, also when is.unsorted(x), fixing PR#18294.
  * The data.frame method of rbind() now warns when binding
    not-wholly-recycling vectors, by analogy to the default method
    (for matrices).
  * setAs() finds the correct class for name to when multiple
    packages define a class with that name. Thanks to Gabor Csardi
    for the report.
  * Fix for detaching a package when two classes of the same name are
    present in method signatures for the same generic. Thanks to
    Gabor Csardi for the report.
  * match.arg("", c("", "a", "B")) gives a better error message, in
    part from PR#17959, thanks to Elin Waring.
  * R CMD Sweave --clean no longer removes pre-existing files or
    subdirectories (PR#18242).
  * The quartz() device no longer splits polylines into subpaths.
    That has caused narrowly-spaced lines with many points to always
    look solid even when dashed line type was used due to dash phase
    restarts.
  * Deparsing constructs such as quote(1 + `!`(2) + 3) works again as
    before R 3.5.0, thanks to the report and patch in PR#18284 by
    Suharto Anggono.
  * as.list(f) for a factor f now keeps names(f), fixing PR#18309.
  * qbeta(.001, .9, .009) and analogous qf() calls now return a
    correct value instead of NaN or wrongly 1, all with a warning;
    thanks to the report by Ludger Goeminne in PR#18302.
  * plot.lm() failed to produce the plot of residuals vs.  factor
    levels (i.e., which=5 when leverages are constant) for models
    with character predictors (PR#17840).
  * interaction.plot(..., xtick = TRUE) misplaced the x-axis line
    (PR#18305).
  * Not strictly fixing a bug, format()ing and print()ing of
    non-finite Date and POSIXt values NaN and +/-Inf no longer show
    as NA but the respective string, e.g., Inf, for consistency with
    numeric vector's behaviour, fulfilling the wish of PR#18308.
  * R CMD check no longer runs test scripts generated from
    corresponding .Rin files twice and now signals an ERROR if
    processing an .Rin script fails.
  * tools::Rd2txt() used for plain-text help pages now renders \hrefs
    (if tools::Rd2txt_options(showURLs = TRUE)) and \urls with
    percent-encoding and standards-compliant delimiting style (angle
    brackets and no URL: prefix).  \email is now rendered with a
    mailto: prefix.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1655985600">- CHANGES IN R 4.2.1:
  NEW FEATURES:
  * New function utils::findCRANmirror() to find out if a CRAN mirror
    has been selected, otherwise fallback to the main site.  This
    behaves in the same way as tools::CRAN_package_db() and is
    intended for packages wishing to access CRAN for purposes other
    than installing packages.
    The need for this was shown by a day when the main CRAN website
    was offline and a dozen or so packages which had its URL
    hardcoded failed their checks.
  INSTALLATION on a UNIX-ALIKE:
  * The libraries searched for by --with-blas (without a value) now
    include BLIS (after OpenBLAS but before ATLAS).  And on macOS,
    the Accelerate framework (after ATLAS).  (This is patterned after
    the AX_BLAS macro from the Autoconf Archive.)
  * The included LAPACK sources have been updated to 3.10.1.
  UTILITIES:
  * The (full path to) the command tidy to be used for HTML
    validation can be set by environment variable R_TIDYCMD.
  * Setting environment variable _R_CHECK_RD_VALIDATE_RD2HTML_ to a
    false value will override R CMD check --as-cran and turn off HTML
    validation.  This provides a way to circumvent a problematic
    tidy.
    The 2006 version that ships with macOS is always skipped.
  C-LEVEL FACILITIES:
  * The undocumented legacy declarations of Sint, Sfloat, SINT_MAX
    and SINT_MIN in header R.h are deprecated.
  BUG FIXES:
  * fisher.test(d) no longer segfaults for "large" d; fixing PR#18336
    by preventing/detecting an integer overflow reliably.
  * tar(., files=*) now produces correctly the warning about invalid
    uid or gid of files, fixing PR#18344, reported by Martin Morgan.
  * tk_choose.files() with multi = FALSE misbehaved on paths
    containing spaces (PR#18334) (regression introduced in R 4.0.0).
  * sort(x, partial = ind, *) now works correctly notably for the
    non-default na.last = FALSE or TRUE, fixing PR#18335 reported by
    James Edwards.
  * Environment variable _R_CHECK_XREFS_REPOSITORIES_ is only used
    for checking .Rd cross-references in R CMD check (as documented)
    and not for other uses looking for a CRAN mirror.
  * The search for a CRAN mirror when checking packages now uses
    getOption("repos") if that specifies a CRAN mirror, even when it
    does not also specify all three Bioconductor repositories (as was
    previously required).
  * The HTML code generated by tools::Rd2HTML() has been improved to
    pass tidy 5.8.0.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1667217600">- CHANGES IN R 4.2.2:
  NEW FEATURES:
  * tools::Rdiff(useDiff = TRUE) checks for the presence of an
    external diff command and switches to useDiff = FALSE if none is
    found.  This allows R CMD Rdiff to always work.
  * On Windows, environment variable R_LIBCURL_SSL_REVOKE_BEST_EFFORT
    can be used to switch to only 'best-effort' SSL certificate
    revocation checks with the default "libcurl" download method.
    This reduces security, but may be needed for downloads to work
    with MITM proxies (PR#18379).
  * (macOS) The run-time check for libraries from XQuartz for X11 and
    Tcl/Tk no longer uses otool from the Apple Developer Tools
    (PR#18400).
  * The LaTeX style for producing the PDF manuals, Rd.sty, now loads
    the standard amsmath, amsfonts and amssymb packages for greater
    coverage of math commands in the Rd \eqn and \deqn macros.  The
    \mathscr LaTeX command is also provided (via the mathrsfs
    package, if available, or the amsfonts bundle otherwise),
    fulfilling the wish of PR#18398.
  * (Windows) The default format of readClipboard() and
    writeClipboard() has been changed to 13 (CF_UNICODETEXT).
  INSTALLATION on a UNIX-ALIKE:
  * The PDF manuals (if built) can be compacted by the new target
    make compact-pdf (at the top level or in directory doc/manual).
  * There is now configure support for LLVM clang 15 on Linux, which
    defaults to position-independent (PIE) executables whereas
    gfortran does not.
  * Many small changes to ease compilation (and suppress warnings)
    with LLVM clang 15.
  BUG FIXES:
  * Rscript -e would fail if stdin were closed (Reported by Henrik
    Bengtsson.)
  * qt(*, log.p=TRUE) in outer tails no longer produces NaN in its
    final steps, thus fixing PR#18360.
  * tools::Rd2latex() now escapes hashes and ampersands when writing
    URLs, fixing LaTeX errors with such URLs in \tabular.
  * When isGeneric(f, fdef=*) is used with mismatching names, the
    warning is better understandable; reported (with fix) in PR#18370
    by Gabe Becker.
  * poly(x, n) now works again (and is now documented) when x is a
    "Date" or "POSIXct" object, or of another class while fulfilling
    mode(x) == "numeric".  This also enables poly(x, *, raw=TRUE) for
    such variables.  Reported by Michael Chirico to R-devel.
  * write.table(), write.csv() and write.csv2() restore their
    numerical precision (internal equivalent of digits = 15) after an
    interrupt (PR#18384).
  * One can now read also byte FF from a clipboard connection
    (PR#18385).
  * source("") and source(character()) now give more helpful error
    messages.
  * R CMD check --as-cran set _R_CHECK_TIMINGS_ too late to have the
    intended effect.
  * as.POSIXlt(x) now also works with very large dates x, fixing
    PR#18401 reported by Hannes M"uhleisen.
  * Files can now be extracted even from very large zip archives
    (PR#18390, thanks to Martin Jakt).
  * Non-finite objects of class "POSIXlt" are now correctly coerced
    to classes "Date" and "POSIXct"; following up on the extension to
    format() them correctly.
  * Added methods for is.finite(), is.infinite() and is.nan() for
    "POSIXlt" date-time objects.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1678881600">- CHANGES IN R 4.2.3:
  C-LEVEL FACILITIES:
  * The definition of DL_FUNC in R_ext/Rdynload.h has been changed to
    be fully C-compliant.  This means that functions loaded _via_ for
    example R_GetCCallable need to be cast to an appropriate type if
    they have any arguments.
  * .Machine has a new element sizeof.time_t to identify old systems
    with a 32-bit type and hence a limited range of date-times (and
    limited support for dates millions of years from present).
  PACKAGE INSTALLATION:
  * (Windows) The default C++ standard had accidentally been left at
    C++11 when it was changed to C++14 on Unix.
  BUG FIXES:
  * As "POSIXlt" objects may be "partially filled" and their list
    components meant to be recycled, length() now is the length of
    the longest component.
  * as.POSIXlt.Date() could underflow for dates in the far past (more
    than half a million years BCE).
  * as.Date.POSIXlt(x) would return "1970-01-01" instead of NA in R
    4.2.2, e.g., for
    x &lt;- as.POSIXlt(c("2019-01-30","2001-1-1"))
    x$mon &lt;- c(0L, NA); as.Date(x)
  * R CMD check failed to apply enabled _R_CHECK_SUGGESTS_ONLY_ to
    examples and vignettes (regression in R 4.2.0).
  * R CMD check did not re-build vignettes in separate processes by
    default (regression in R 4.2.0).
  * Running examples from HTML documentation now restores previous
    knitr settings and options (PR#18420).
  * Quartz: fonts are now located using Core Graphics API instead of
    deprecated ATS which is no longer supported in the macOS 13 SDK
    (PR#18426).  This also addresses an issue where the currently
    used font in the Quartz device context was not correctly
    retained.
  * (Windows) Math symbols in text drawing functions are again
    rendered correctly (PR#18440).  This fixes a regression in R
    4.2.1 caused by a fix in PR#18382 which uncovered an issue in
    GraphApp due to which the symbol charset was not used with TT
    Symbol font face.
  * (Windows) Installing a package with a src/Makefile.{win,ucrt}
    file includes ~/.R/Makevars.win64 in the search for user
    makevars, as documented in "R Installation and Administration"
    and done for packages with a src/Makevars.{win,ucrt} file.
  * format(&lt;POSIXlt_w/_unbalanced_sec&gt;, "....%OS&lt;n&gt;") with n &gt; 0 no
    longer accidentally uses the unbalanced seconds, thanks to
    Suharto Anggono's report (including patch) in PR#18448.
  * solve.default(a, b) works around issues with some versions of
    LAPACK when a contains NA or NaN values.
  * When UseMethod() cannot dispatch, it no longer segfaults
    producing the error message in case of a long class(), thanks to
    Joris Vankerschaver's report (including patch) in PR#18447.
  * When example(foo, ..) produces graphics on an interactive device
    it needs to open itself, it now leaves devAskNewPage() unchanged
    even when it was FALSE, thus fixing a 14 years old '&lt;FIXME&gt;'.
  * packageDescription() again catches errors from encoding
    conversions. This also fixes broken packageVersion() in C locale
    on systems where iconv does not support transliteration.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1681128000">- add patch to build with libcurl &gt;= 8</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1682078400">- CHANGES IN R 4.3.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Calling &amp;&amp; or || with LHS or (if evaluated) RHS of length greater
    than one is now always an error, with a report of the form
    'length = 4' in coercion to 'logical(1)'
    Environment variable _R_CHECK_LENGTH_1_LOGIC2_ no longer has any
    effect.
  NEW FEATURES:
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.10.1.  (This caused some platform-dependent
    changes to package check output.)  And then to the sources from
    LAPACK version 3.11.0 (with changes only to double complex
    subroutines).
  * The included LAPACK sources have been updated to include the four
    Fortran 90 routines rather than their Fortran 77 predecessors.
    This may give some different signs in SVDs or
    eigendecompositions..  (This completes the transition to LAPACK
    3.10.x begun in R 4.2.0.)
  * The LAPACK sources have been updated to version 3.11.0.  (No new
    subroutines have been added, so this almost entirely bug fixes:
    Those fixes do affect some computations with NaNs, including R's
    NA.)
  * The parser now signals _classed_ errors, notably in case of the
    pipe operator |&gt;.  The error object and message now give line and
    column numbers, mostly as proposed and provided by Duncan Murdoch
    in PR#18328.
  * toeplitz() is now generalized for asymmetric cases, with a
    toeplitz2() variant.
  * xy.coords() and xyz.coords() and consequently, e.g., plot(x,y,
    log = "y") now signal a _classed_ warning about negative values
    of y (where log(.) is NA).  Such a warning can be specifically
    suppressed or caught otherwise.
  * Regular expression functions now check more thoroughly whether
    their inputs are valid strings (in their encoding, e.g. in
    UTF-8).
  * The performance of grep(), sub(), gsub() and strsplit() has been
    improved, particularly with perl = TRUE and fixed = TRUE.  Use of
    useBytes = TRUE for performance reasons should no longer be
    needed and is discouraged: it may lead to incorrect results.
  * apropos() gains an argument dot_internals which is used by the
    completion (help(rcompgen)) engine to also see base internals
    such as .POSIXct().
  * Support in tools::Rdiff() for comparing uncompressed PDF files is
    further reduced - see its help page.
  * qqplot(x, y, ...) gains conf.level and conf.args arguments for
    computing and plotting a confidence band for the treatment
    function transforming the distribution of x into the distribution
    of y (Switzer, 1976, _Biometrika_). Contributed by Torsten
    Hothorn.
  * Performance of package_dependencies() has been improved for cases
    when the number of dependencies is large.
  * Strings newly created by gsub(), sub() and strsplit(), when any
    of the inputs is marked as "bytes", are also marked as "bytes".
    This reduces the risk of creating invalid strings and accidental
    substitution of bytes deemed invalid.
  * Support for readLines(encoding = "bytes") has been added to allow
    processing special text files byte-by-byte, without creating
    invalid strings.
  * iconv(from = "") now takes into account any declared encoding of
    the input elements and uses it in preference to the native
    encoding.  This reduces the risk of accidental creation of
    invalid strings, particularly when different elements of the
    input have different encoding (including "bytes").
  * Package repositories in getOption("repos") are now initialized
    from the repositories file when utils is loaded (if not already
    set, e.g., in .Rprofile).  (From a report and patch proposal by
    Gabriel Becker in PR#18405.)
  * compactPDF() gets a verbose option.
  * type.convert() and hence read.table() get new option tryLogical =
    TRUE with back compatible default.  When set to false, converts
    "F" or "T" columns to character.
  * Added new unit prefixes "R" and "Q" for abbreviating
    (unrealistically large) sizes beyond 10^{27} in standard = "SI",
    thanks to Henrik Bengtsson's PR#18435.
  * as.data.frame()'s default method now also works fine with atomic
    objects inheriting from classes such as "roman", "octmode" and
    "hexmode", such fulfilling the wish of PR#18421, by Benjamin
    Feakins.
  * The as.data.frame.vector() utility now errors for wrong-length
    row.names.  It warned for almost six years, with "Will be an
    error!".
  * sessionInfo() now also contains La_version() and reports codepage
    and timezone when relevant, in both print() and toLatex() methods
    which also get new option tzone for displaying timezone
    information when locale = FALSE.
  * New function R_compiled_by() reports the C and Fortran compilers
    used to build R, if known.
  * predict(&lt;lm&gt;, newdata = *) no longer unnecessarily creates an
    offset of all 0s.
  * solve() for complex inputs now uses argument tol and by default
    checks for 'computational singularity' (as it long has done for
    numeric inputs).
  * predict(&lt;rank-deficient lm&gt;, newdata=*) now obeys a new argument
    rankdeficient, with new default "warnif", warning only if there
    are non-estimable cases in newdata.  Other options include
    rankdeficient = "NA", predicting NA for non-estimable newdata
    cases.  This addresses PR#15072 by Russ Lenth and is based on his
    original proposal and discussions in PR#16158 also by David Firth
    and Elin Waring.  Still somewhat experimental.
  * Rgui console implementation now works better with the NVDA screen
    reader when the full blinking cursor is selected.  The underlying
    improvements in cursor handling may help also other screen
    readers on Windows.
  * The drop-field control in GraphApp can now be left with the TAB
    key and all controls can be navigated in the reverse order using
    the Shift+TAB key, improving accessibility of the Rgui
    configuration editor.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now fully accurate
    (instead of to "only" minimally five digits).
  * demo(error.catching) now also shows off withWarnings() and
    tryCatchWEMs().
  * As an experimental feature the placeholder _ can now also be used
    in the rhs of a forward pipe |&gt; expression as the first argument
    in an extraction call, such as _$coef. More generally, it can be
    used as the head of a chain of extractions, such as _$coef[[2]].
  * Spaces in the environment variable used to choose the R session's
    temporary directory (TMPDIR, TMP and TEMP are tried in turn) are
    now fatal.  (On Windows the 'short path' version of the path is
    tried and used if that does not contain a space.)
  * all.equal.numeric() gets a new optional switch giveErr to return
    the numeric error as attribute.  Relatedly,
    stopifnot(all.equal&lt;some&gt;(a, b, ..)) is as "smart" now, as
    stopifnot(all.equal(....)) has been already, thus allowing
    customized all.equal&lt;Some&gt;() wrappers.
  * R on Windows is now able to work with path names longer than 260
    characters when these are enabled in the system (requires at
    least Windows 10 version 1607).  Packages should be updated to
    work with long paths as well, instead of assuming PATH_MAX to be
    the maximum length.  Custom front-ends and applications embedding
    R need to update their manifests if they wish to allow this
    feature.  See
    &lt;https://blog.r-project.org/2023/03/07/path-length-limit-on-windows&gt;
    for more information.
  * 'Object not found' and 'Missing argument' errors now give a more
    accurate error context. Patch provided by Lionel Henry in
    PR#18241.
  * The @ operator is now an S3 generic. Based on contributions by
    Tomasz Kalinowski in PR#18482.
  * New generic chooseOpsMethod() provides a mechanism for objects to
    resolve cases where two suitable methods are found for an Ops
    Group Generic. This supports experimenting with alternative
    object systems. Based on contributions by Tomasz Kalinowski in
    PR#18484.
  * inherits(x, what) now accepts values other than a simple
    character vector for argument what. A new generic, nameOfClass(),
    is called to resolve the class name from what. This supports
    experimenting with alternative object systems. Based on
    contributions by Tomasz Kalinowski in PR#18485.
  * Detection of BLAS/LAPACK in use (sessionInfo()) with FlexiBLAS
    now reports the current backend.
  * The "data.frame" method for subset() now warns about extraneous
    arguments, typically catching the use of = instead of == in the
    subset expression.
  * Calling a:b when numeric a or b is longer than one may now be
    made into an error by setting environment variable
    _R_CHECK_LENGTH_COLON_ to a true value, along the proposal in
    PR#18419 by Henrik Bengtsson.
  * density(x, weights = *) now warns if automatic bandwidth
    selection happens without using weights; new optional warnWbw may
    suppress the warning.  Prompted by Christoph Dalitz' PR#18490 and
    its discussants.
  * rm(list = *) is faster and more readable thanks to Kevin Ushey's
    PR#18492.
  * The plot.lm() function no longer produces a normal Q-Q plot for
    GLMs. Instead it plots a half-normal Q-Q plot of the absolute
    value of the standardized deviance residuals.
  * The print() method for class "summary.glm" no longer shows
    summary statistics for the deviance residuals by default.  Its
    optional argument show.residuals can be used to show them if
    required.
  * The tapply() function now accepts a data frame as its X argument,
    and allows INDEX to be a formula in that case. by.data.frame()
    similarly allows INDICES to be a formula.
  * The performance of df[j] &lt;- value (including for missing j) and
    write.table(df) has been improved for data frames df with a large
    number of columns.  (Thanks to Gabriel Becker's PR#18500,
    PR#18503 and discussants, prompted by a report from Toby Dylan
    Hocking on the R-devel mailing list.)
  * The matrix multiply operator %*% is now an S3 generic, belonging
    to new group generic matrixOps.  From Tomasz Kalinowski's
    contribution in PR#18483.
  * New function array2DF() to convert arrays to data frames,
    particularly useful for the list arrays created by tapply().
  DATES and TIMES:
  * On platforms where (non-UTC) datetimes before 1902 (or before
    1900 as with system functions on recent macOS) are guessed by
    extrapolating time zones from 1902-2037, there is a warning at
    the first use of extrapolation in a session.  (As all time zones
    post 2037 are extrapolation, we do not warn on those.)
  * (Platforms using --with-internal-tzone, including Windows and by
    default macOS). How years are printed in dates or date-times can
    be controlled by environment variable R_PAD_YEARS_BY_ZERO.  The
    default remains to pad to 4 digits by zeroes, but setting value
    no gives no padding (as used by default by glibc).
  * strftime() tries harder to determine the offset for the "%z"
    format, and succeeds on the mainstream R platforms.
  * strftime() has a limit of 2048 bytes on the string produced -
    attempting to exceed this is an error.  (Previously it silently
    truncated at 255 bytes.)
  * sessionInfo() records (and by default prints) the system time
    zone as part of the locale information.  Also, the source
    (system/internal) of the date-time conversion and printing
    functions.
  * Objects of class "POSIXlt" created in this version of R always
    have 11 components: component zone is always set, and component
    gmtoff is set for times in UTC and usually set on the (almost
    all) platforms which have C-level support, otherwise is NA.
  * There are comprehensive validity checks on the structure of
    objects of class "POSIXlt" when converting (including formatting
    and printing).  (This avoids mis-conversions of hand-crafted
    objects.)
  * There is some support for using the native date-time routines on
    macOS: this is only viable on recent versions (e.g. 12.6 and 13)
    and does get wrong some historical changes (before 1900, during
    WWII).  Use of --with-internal-tzone remains the default.
  * as.POSIXct(&lt;numeric&gt;) and as.POSIXlt(.) (without specifying
    origin) now work.  So does as.Date(&lt;numeric&gt;).
  * as.Date.POSIXct(., tz) now treats several tz values, notably
    "GMT" as equivalent to "UTC", proposed and improved by Michael
    Chirico and Joshua Ulrich in PR#17674.
  * Experimental balancePOSIXlt() utility allows using "ragged" and
    or out-of-range "POSIXlt" objects more correctly, e.g., in
    subsetting and subassignments.  Such objects are now documented.
    More experimentally, a "POSIXlt" object may have an attribute
    "balanced" indicating if it is known to be filled or fully
    balanced.
  * Functions axis.Date() and axis.POSIXct() are rewritten to gain
    better default tick locations and better default formats by using
    prettyDate(). Thanks to Swetlana Herbrandt.
  * The mapping of Windows' names for time zones to IANA's 'Olson'
    names has been updated.  When ICU is available (it is by
    default), it is used to get a mapping for the current region set
    in Windows.  This can be overridden by setting environment
    variable TZ to the desired Olson name - see OlsonNames() for
    those currently available.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 16
    and so packages that provide graphics devices should be
    reinstalled.
  * The grDevices and grid packages have new functions for rendering
    typeset glyphs, primarily: grDevices::glyphInfo() and
    grid::grid.glyph().
    Rendering of typeset glyphs is only supported so far on the
    Cairo-based graphics devices and on the pdf() and quartz()
    devices.
  * The defined behaviour for "clear" and "source" compositing
    operators (via grid::grid.group()) has been changed (to align
    better with simple interpretation of original Porter-Duff
    definitions).
  * Support for gradients, patterns, clipping paths, masks, groups,
    compositing operators, and affine transformations has been added
    to the quartz() device.
  INSTALLATION on a UNIX-ALIKE:
  * A system installation of generic LAPACK 3.10.0 or later will be
    preferred to the version in the R sources.
    configure option --with-lapack=no (equivalently --without-lapack)
    forces compilation of the internal LAPACK sources.
    If --with-lapack is not specified, a system liblapack is looked
    for and used if it reports version 3.10.0 or later and does not
    contain BLAS routines.
    Packages using LAPACK will need to be reinstalled if this changes
    to using an external library.
  * On aarch64 Linux platforms using GCC, configure now defaults to
  - fPIC (instead of -fpic), as desired in PR#18326.
  * configure now checks conversion of datetimes between POSIXlt and
    POSIXct around year 2020.  Failure (which has been seen on
    platforms missing tzdata) is fatal.
  * If configure option --with-valgrind-instrumentation is given
    value 1 or 2, option --with-system-valgrind-headers is now the
    default and ignored (with a warning).  It is highly recommended
    that the system headers are installed alongside valgrind: they
    are part of its packaging on some Linux distributions and
    packaged separately (e.g. in the valgrind-devel RPM) on others.
    configure will give a warning if they are not found.
    The system headers will be required in a future release of R to
    build with valgrind instrumentation.
  * libcurl 8.x is now accepted by configure: despite a change in
    major version number it changes neither API nor ABI.
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools43, an update of the Rtools42 toolchain.  It is
    based on gcc 12 and newer versions of MinGW-W64, binutils and
    libraries.  At this time R-devel can still be built using
    Rtools42 without changes, but when R-devel is installed via the
    installer, it will by default look for Rtools43.
  * Old make targets rsync-extsoft and 32-bit ones that are no longer
    needed have been removed.
  * Default builds (including for packages) no longer select C99.
    Thus the C standard used is the default for the compiler, which
    for the toolchain in Rtools43 is C17.  (This is consistent with
    Unix builds.)
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++17 where
    available (which it is on all currently checked platforms): if
    not C++14 or C++11 is used if available otherwise C++ is not
    supported.
  * USE_FC_LEN_T is the default: this uses the correct
    (compiler-dependent) prototypes for Fortran BLAS/LAPACK routines
    called from C/C++, and requires adjustment of many such calls -
    see 'Writing R Extensions' SS6.6.1.
  * There is initial support for C++23 as several compilers are now
    supporting -std=c++23 or -std=c++2b or similar.  As for C++20,
    there no additional configure checks for C++23 features beyond a
    check that the compiler reports a __cplusplus value greater than
    that in the C++20 standard.  C++ feature tests should be used.
  * There is support for a package to indicate the version of the C
    standard which should be used to compile it, and for the
    installing user to specify this.  In most cases R defaults to the
    C compiler's default standard which is C17 (a `bug-fix' of C11) -
    earlier versions of R or compilers may have defaulted to C99.
    Current options are:
    USE_C17 Use a standard that is at most C17.  The intention is to
    allow legacy packages to still be installed when later C
    standards become the default, including packages using new
    keywords as identifiers or with K&amp;R-style function
    declarations.  This will use C17 if available, falling back
    to C11.
    USE_C90 Use the C90 (aka C89) standard.  (As that standard did
    not require compilers to identify that version, all we can
    verify is that the compiler does not claim to be using a
    later standard.  It may accept C99 features - for example
    clang accepts // to make comments.)
    USE_C99 Use the C99 standard. This should be rarely needed - it
    avoids the few new features of C11/C17 which can be useful if
    a package assumes them if C17 is specified and they are not
    implemented.
    USE_C23 Use C23 (or in future, later).  Compiler/library support
    for C23 is still being implemented, but LLVM clang from
    15.0.0 and the upcoming GCC 13 have quite extensive support.
    These can be specified as part of the SystemRequirements field in
    the package's DESCRIPTION file or _via_ options --use-C17 and so
    on of R CMD INSTALL and R CMD SHLIB.
    For further details see "Writing R Extensions" SS1.2.5.
  * (Windows) A src/Makefile.ucrt or src/Makefile.win file is now
    included after R_HOME/etcR_ARCH/Makeconf and so no longer needs
    to include that file itself.  Installation of a package with such
    a file now uses a site Makevars file in the same way as a package
    with a src/Makevars.win file would.
  * configure is now passed crucial variables such as CC and CFLAGS
    in its environment, as many packages were not setting them (as
    documented in 'Writing R Extensions' SS1.2).
    This has most effect where configure is used to compile parts of
    the package - most often by cmake or libtool which obfuscate the
    actual compile commands used.
    Also used for configure.win and configure.ucrt on Windows.
  FORTRAN FLAGS:
  * The flag -fno-optimize-sibling-calls is no longer forced for
    gfortran 7 and later.  It should no longer be needed now using
    'hidden' character-length arguments when calling BLAS/LAPACK
    routines from C/C++ is the default even for packages.  (Unless
    perhaps packages call Fortran code from C/C++ without using R's
    headers and without allowing for these arguments.)
  C-LEVEL FACILITIES:
  * The deprecated S-compatibility macros DOUBLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * The deprecated legacy typedefs of Sint and Sfloat in header R.h
    are no longer defined, and that header no longer includes header
    limits.h from C nor climits from C++.
  * New macro CAD5R() is provided in Rinternals.h and used in a few
    places in the R sources.
  * ALTREP now supports VECSXP vectors. Contributed by Gabor Csardi
    in PR#17620.
  * The Rcomplex definition (in header R_ext/Complex.h) has been
    extended to prevent possible mis-compilation when interfacing
    with Fortran (PR#18430).  The new definition causes compiler
    warnings with static initializers such as {1, 2}, which can be
    changed to {.r=1, .i=2}.
    Using the new definition from C++ depends on compiler extensions
    supporting C features that have not been incorporated into the
    C++ standards but are available in g++ and clang++: this may
    result in C++ compiler warnings but these have been worked around
    for recent versions of common compilers (GCC, Apple/LLVM clang,
    Intel).
    It is intended to change the inclusion of header R_ext/Complex.h
    by other R headers, so C/C++ code files which make use of
    Rcomplex should include that header explicitly.
  UTILITIES:
  * R CMD check does more checking of package .Rd files, warning
    about invalid email addresses and (some) invalid URIs and noting
    empty \item labels in description lists.
  * R CMD check now also reports problems when reading package news
    in md (file NEWS.md) and (optionally) plain text (file NEWS)
    formats.
  * _R_CHECK_TIMINGS_ defaults to a value from the environment even
    for R CMD check --as-cran; this allows for exceptionally fast or
    slow platforms.
    It now applies to checking PDF and HTML versions of the manuals,
    and 'checking CRAN incoming feasibility'.
  * R CMD check can optionally (but included in --as-cran) check
    whether HTML math rendering _via_ KaTeX works for the package .Rd
    files.
  * Non-interactive debugger invocations can be trapped by setting
    the environment variable _R_CHECK_BROWSER_NONINTERACTIVE_ to a
    true value.  This is enabled by R CMD check --as-cran to detect
    the use of leftover browser() statements in the package.
  * The use of sprintf and vsprintf from C/C++ has been deprecated in
    macOS 13 and is a known security risk.  R CMD check now reports
    (on all platforms) if their use is found in compiled code:
    replace by snprintf or vsnprintf respectively. [*NB:* whether
    such calls get compiled into the package is platform-dependent.]
  * Where recorded at installation, R CMD check reports the C and
    Fortran compilers used to build R.
    It reports the OS in use (if known, as given by osVersion) as
    well as that R was built for.
    It notes if a C++ standard was specified which is older than the
    current default: many packages have used C++11 to mean 'not
    C++98' - as C++11 is the minimum supported since R 4.0.0, that
    specification can probably be removed.
  * R CMD INSTALL reports the compilers (and on macOS, the SDK) used,
    and this is copied to the output of R CMD check.
    Where a C++ standard is specified, it is reported.
  * R CMD check's 'checking compilation flags in Makevars' has been
    relaxed to accept the use of flags such as -std=f2008 in
    PKG_FFLAGS.
  * tools::buildVignettes() has a new argument skip, which is used by
    R CMD check to skip (and note) vignettes with unavailable
    \VignetteDepends (PR#18318).
  * New generic .AtNames() added to enable class-specific completions
    after @. The formerly internal function findMatches() is now
    exported, mainly for use in methods for .DollarNames() and
    .AtNames().
  DEPRECATED AND DEFUNCT:
  * default.stringsAsFactors() is defunct.
  * Calling as.data.frame.&lt;class&gt;() directly (for 12 atomic classes)
    is going to be formally deprecated, currently activated by
    setting the environment variable
    _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ to non-empty, which also
    happens in R CMD check --as-cran.
  BUG FIXES:
  * Hashed environments with sizes less than 5 can now grow.
    (Reported to R-devel by Duncan Garmonsway.)
  * as.character(&lt;Rd&gt;, deparse = TRUE) failed to re-escape curly
    braces in LaTeX-like text.  (Reported by Hadley Wickham in
    PR#18324.)
  * library() now passes its lib.loc argument when requiring Depends
    packages; reported (with fix) in PR#18331 by Mikael Jagan.
  * R CMD Stangle: improved message about 'Output' files.
  * head(x, n) and tail(x, n) now signal an error if n is not
    numeric, instead of incidentally "working" sometimes returning
    all of x.  Reported and discussed by Colin Fay, in PR#18357.
  * The "lm" method for summary() now gives the correct F-statistic
    when the model contains an offset.  Reported in PR#18008.
  * C() and `contrasts&lt;-`() now preserve factor level names when
    given a function object (as opposed a function name which did
    preserve names). Reported in PR#17616.
  * c(a = 1, 2)[[]] no longer matches 2 but rather signals a
    _classed_ error.  Reported and analysed by Davis Vaughan in
    PR#18367, a duplicate of PR#18004, by Jan Meis et al.  For
    consistency, NULL[[]] is also erroneous now.  x[[]] &lt;- v gives an
    error of the same class "MissingSubscriptError".
  * The relist() function of utils now supports NULL elements in the
    skeleton (PR#15854).
  * ordered(levels = *) (missing x) now works analogously to factor(,
    ordered=TRUE); reported (with fix) by Achim Zeileis in PR#18389.
  * User-defined Rd macro definitions can now span multiple lines,
    thanks to a patch from Duncan Murdoch. Previously, the Rd parser
    silently ignored everything after the first line.
  * Plain-text help (tools::Rd2txt()) now preserves an initial blank
    line for text following description list items.
  * tools::Rd2HTML() and tools::Rd2latex() no longer split \arguments
    and \value lists at Rd comments.
  * tools::Rd2latex() now correctly handles optional text outside
    \items of argument lists as well as bracketed text at the
    beginning of sections, e.g., \value{[NULL]}.
  * as.character(&lt;POSIXt&gt;) now behaves more in line with the methods
    for atomic vectors such as numbers, and is no longer influenced
    by options().  Ditto for as.character(&lt;Date&gt;).  The
    as.character() method gets arguments digits and OutDec with
    defaults _not_ depending on options().  Use of as.character(*,
    format = .) now warns.
  * Similarly, the as.character.hexmode() and *.octmode() methods
    also behave as good citizen methods and back compatibility option
    keepStr = TRUE.
  * The as.POSIXlt(&lt;POSIXlt&gt;) and as.POSIXct(&lt;POSIXct&gt;) default
    methods now do obey their tz argument, also in this case.
  * as.POSIXlt(&lt;Date&gt;) now does apply a tz (time zone) argument, as
    does as.POSIXct(); partly suggested by Roland Fuss on the R-devel
    mailing list.
  * as.Date.POSIXlt(x) now also works when the list components are of
    unequal length, aka "partially filled" or "ragged".
  * expand.model.frame() looked up variables in the wrong environment
    when applied to models fitted without data.  Reported in
    PR#18414.
  * time() now (also) uses the ts.eps = getOption("ts.eps") argument
    and thus by default rounds values very close to the start (or
    end) of a year.  Based on a proposal by Andre"i V. Kostyrka on
    R-help.
  * Printing of a factanal() result with just one factor and sort =
    TRUE now works regularly, fixing PR#17863 by Timothy Bates,
    thanks to the 'R Contributors' working group.
  * Printing 0-length objects of class "factor", "roman", "hexmode",
    "octmode", "person", "bibentry", or "citation" now prints
    something better, one of which fixes PR#18422, reported by
    Benjamin Feakins.
  * Sys.timezone() queries timedatectl only if systemd is loaded;
    addressing a report by Jan Gorecki in PR#17421.
  * The formula method of cor.test() had scoping problems when
    environment(formula) was not the calling environment; reported
    with a patch proposal by Mao Kobayashi in PR#18439.
  * attach() of an environment with active bindings now preserves the
    active bindings.  Reported by Kevin Ushey in PR#18425.
  * BLAS detection now works also with system-provided libraries not
    available as regular files.  This fixes detection of the
    Accelerate framework on macOS since Big Sur.  Reported by David
    Novgorodsky.
  * download.file() gives a helpful error message in case of an
    invalid download.file.method option, thanks to Colin Fay's report
    in PR#18455.
  * Sporadic crashes of Rterm when using completion have been fixed.
  * Rprof() is now more reliable.  A livelock in thread
    initialization with too short sampling interval has been fixed on
    macOS.  A deadlock in using the C runtime has been fixed on
    Windows.  A potential deadlock has been prevented on Unix.
  * Cursor placement in Rgui now works even after a fixed-width font
    is selected.
  * Mandatory options (options()) are now set on startup so that
    saving and restoring them always works (PR#18372).
  * Package installation, R CMD INSTALL or install.packages(*), now
    parses each of the &lt;pkg&gt;/R/*.R files individually instead of
    first concatenating and then parse()ing the large resulting file.
    This allows parser or syntax errors to be diagnosed with correct
    file names and line numbers, thanks to Simon Dedman's report and
    Bill Dunlap's patch in PR#17859.
    This _does_ require syntactically self contained R source files
    now, fixing another inadvertent bug.
  * predict.lm(&lt;model with offset&gt;) now finds the offset in the
    correct environment, thanks to Andr'e Gillibert's report and patch
    in PR#18456.
  * getInitial(&lt;formula&gt;) now finds the selfStart model in the
    correct environment.  (Reported by Ivan Krylov in PR#18368.)
  * Fix for possible segfault when using recently-added graphics
    features, such as gradients, clipping paths, masks, and groups
    with pdf(file=NULL).
  * class(m) &lt;- class(m) no longer changes a matrix m by adding a
    class _attribute_.
  * packageDate(pkg) now only warns once if there is no pkg.
  * When ts() creates a multivariate time series, "mts", it also
    inherits from "array" now, and is.mts() is documented _and_
    stricter.
  * Rd2txt() now preserves line breaks of \verb Rd content and from
    duplicated \cr.  The former also fixes the rendering of verbatim
    output from Rd \Sexpr in plain-text help.
  * uniroot(f, interval) should no longer wrongly converge _outside_
    the interval in some cases where abs(f(x)) == Inf for an x at the
    interval boundary, thanks to posts by Ben Bolker and Serguei
    Sokol on R-devel.
  * Vectorized alpha handling in palette functions such as in gray(),
    rainbow(), or hcl.colors() works correctly now, thanks to Achim
    Zeileis' report and patch in PR#18476.
  * Formatting and print()ing of bibentry objects has dropped the
    deprecated citation.bibtex.max argument, such that the bibtex
    argument's default for print.bibentry() depends directly on the
    citation.bibtex.max option, whereas in format.bibentry() the
    option no longer applies.
  * Attempting to use a character string naming a foreign function
    entry point in a foreign function call in a package will now
    signal an error if the packages has called R_forceSymbols to
    specify that symbols must be used.
  * An error in table() could permanently set options(warn=2)
    promoting all subsequent warnings to errors.
  * The sigma() function gave misleading results for binary GLMs.  A
    new method for objects of class "glm" returns the square root of
    the estimate of the dispersion parameter using the same
    calculation as summary.glm().
  * bs() and ns() in the (typical) case of automatic knot
    construction, when some of the supposedly inner knots coincide
    with boundary knots, now moves them inside (with a warning),
    building on PR#18442 by Ben Bolker.
  * R CMD on Windows now skips the site profile with --no-site-file
    and --vanilla even when R_PROFILE is set (PR#18512, from Kevin
    Ushey).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1686916800">- CHANGES IN R 4.3.1:
  C-LEVEL FACILITIES:
  * The C-level API version of R's integrate(), Rdqags() in Applic.h,
    now returns the correct number of integrand evaluations neval,
    fixing PR#18515 reported and diagnosed by Stephen Wade.
  * The C prototypes for LAPACK calls dspgv and dtptrs in
    R_exts/Lapack.h had one too many and one too few character length
    arguments - but this has not caused any known issues. To get the
    corrected prototypes, include
    [#]include &lt;Rconfig.h&gt; // for PR18534fixed
    [#]ifdef PR18534fixed
    [#] define usePR18534fix 1
    [#]endif
    [#]include &lt;R_exts/Lapack.h&gt;
    in your C/C++ code (PR#18534).
  INSTALLATION:
  * Many of the checks of esoteric Internet operations and those
    using unreliable external sites have been moved to a new target
    that is not run by default and primarily intended for the core
    developers.  To run them use
    cd tests; make test-Internet-dev
  BUG FIXES:
  * .S3methods(), typically called from methods(), again marks
    methods from package base as visible.
    Also, the visibility of non-base methods is again determined by
    the method's presence in search().
  * tools::Rdiff() is now more robust against invalid strings, fixing
    installation tests on Windows without Rtools installed
    (PR#18530).
  * Fix (new) bug in hcl.colors(2, *), by Achim Zeileis (PR#18523).
  * head(., &lt;illegal&gt;) and tail(..) now produce more useful "Error in
    ...." error messages, fixing PR#18362.
  * Package code syntax on Windows is checked in UTF-8 when UTF-8 is
    the native encoding.
  * na.contiguous(x) now also returns the first run, when it is at
    the beginning and there is a later one of the same length;
    reported to R-devel, including a fix, by Georgi Boshnakov.
    Further, by default, it modifies only an existing attr(*,"tsp")
    but otherwise no longer sets one.
  * chol(&lt;not pos.def&gt;, pivot = &lt;T|F&gt;) now gives a correct error or
    warning message (depending on pivot), thanks to Mikael Jagan's
    (PR#18541).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1699012800">- CHANGES IN R 4.3.2:
  NEW FEATURES:
  * The default initialization of the "repos" option from the
    repositories file at startup can be skipped by setting
    environment variable R_REPOSITORIES to NULL such that
    getOption("repos") is empty if not set elsewhere.
  * qr.X() is now an implicit S4 generic in methods.
  * iconv(to = "ASCII//TRANSLIT") is emulated using substitution on
    platforms which do not support it (notably Alpine Linux).  This
    should give a human-readable conversion in ASCII on all platforms
    (rather than NA_character_).
  * trans3d() gains options continuous and verbose addressing the
    problem of possible "wrap around" when projecting too long
    curves, as reported by Achim Zeileis in PR#18537.
  * tools::showNonASCII() has been rewritten to work better on macOS
    14 (which has a changed implementation of iconv()).
  * tiff(type = "quartz") (the default on macOS) now warns if
    compression is specified: it continues to be ignored.
  INSTALLATION on a UNIX-ALIKE:
  * There is some support for building with Intel's LLVM-based
    compilers on x86_64 Linux, such as (C) icx, (C++) ipcx and
    (Fortran) ifx from oneAPI 2023.x.y.
  * There is support for using LLVM's flang-new as the Fortran
    compiler from LLVM 16.0.x (preferably 17.0.0 or later).
  UTILITIES:
  * R CMD check reports the use of the Fortran 90 random number
    generator RANDOM_NUMBER() and the subroutines to initialize it.
    'Writing R Extensions' has example code to use R's RNGs from
    Fortran.
  BUG FIXES:
  * substr(x, n, L) &lt;- cc now works (more) correctly for multibyte
    UTF-8 strings x when L &gt; nchar(x), thanks to a report and patch
    by 'Architect 95'.
  * contrib.url(character()) now returns 0-length character() as
    documented, which also avoids spurious warnings from
    available.packages() et al. in the edge case of an empty vector
    of repository URLs.
  * readChar(., 4e8) no longer fails, thanks to Kodi Arfer's report
    (PR#18557).
  * lapply(&lt;list&gt;, as.data.frame) no longer warns falsely for some
    base vector components.
  * Communication between parent and child processes in the multicore
    part of parallel could fail on platforms that do not support an
    arbitrarily large payload in system functions read()/write() on
    pipes (seen on macOS where a restriction to INT_MAX bytes is
    documented, without doing a partial read unlike Linux). The
    payload is now split into 1Gb chunks to avoid that problem.
    (PR#18571)
  * qqplot(x,y, conf.level=.) gives better confidence bounds when
    length(x) != length(y), thanks to Alexander Ploner's report and
    patch proposal (PR#18557).
  * norm(&lt;0-length&gt;, "2") now gives zero instead of an error, as all
    the other norm types, thanks to Mikael Jagan's PR#18542.
  * Build-stage Rd macros \packageAuthor and \packageMaintainer now
    process Authors@R, fixing NA results when the package DESCRIPTION
    omits Author and Maintainer fields.
  * Formatting and printing complex numbers could give things like
    0.1683-0i because of rounding error: -0i is now replaced by +0i.
  * postscript() refused to accept a title comment containing the
    letter "W" (PR#18599).
  * isoreg(c(1,Inf)) signals an error instead of segfaulting, fixing
    PR#18603.
  * tiff(type = "Xlib") was only outputting the last page of
    multi-page plots.
  * tools::latexToUtf8() again knows about \~{n} and other letters
    with tilde, fixing a regression in R 4.3.0, and about \^{i} as an
    alternative to \^{\i} (similarly with other accents).
    Furthermore, LaTeX codes for accented I letters are now correctly
    converted, also fixing related mistakes in
    tools::encoded_text_to_latex().
  * tar(*, tar = "internal") no longer creates out-of-spec tar files
    in the very rare case of user or group names longer than 32
    bytes, fixing PR#17871 with thanks to Ivan Krylov.
  * When using the "internal" timezone datetime code, adding a
    fraction of a second no longer adds one second, fixing PR#16856
    from a patch by Ivan Krylov.
  * tools::checkRd() no longer produces spurious notes about
    "unnecessary braces" from multi-line Rd results of \Sexpr macros.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1709208000">- CHANGES IN R 4.3.3:
  NEW FEATURES:
  * iconv() now fixes up variant encoding names such as "utf8"
    case-insensitively.
  DEPRECATED AND DEFUNCT:
  * The legacy encoding = "MacRoman" is deprecated in pdf() and
    postscript(): support was incomplete in earlier versions of R.
  BUG FIXES:
  * Arguments are now properly forwarded to methods on S4 generics
    with ... in the middle of their formal arguments. This was broken
    for the case when a method introduced an argument but did not
    include ... in its own formals. Thanks to Herv'e Pag`es for the
    report PR#18538.
  * Some invalid file arguments to pictex(), postscript() and xfig()
    opened a file called NA rather than throw an error.  These
    included postscript(NULL) (which some people expected to work
    like pdf(NULL)).
  * Passing filename = NA to svg(), cairo_pdf(), cairo_ps() or the
    Cairo-based bitmap devices opened a file called NA: it now throws
    an error.
  * quartz(file = NA) opened a file called NA, including when used as
    a Quartz-based bitmap device.  It now gives an error.
  * rank(&lt;long vector&gt;) now works, fixing PR#18617, thanks to Ilia
    Kats.
  * seq.int() did not adequately check its length.out argument.
  * match(&lt;POSIXct&gt;, .) is correct again for differing time zones,
    ditto for "POSIXlt", fixing PR#18618 reported by Bastian Klein.
  * drop.terms(*, dropx = &lt;0-length&gt;) now works, fixing PR#18563 as
    proposed by Mikael Jagan.
  * drop.terms(*) keeps + offset(.) terms when it should, PR#18565,
    and drop.terms() no longer makes up a response, PR#18566, fixing
    both bugs thanks to Mikael Jagan.
  * getS3method("t", "test") no longer finds the t.test() function,
    fixing PR#18627.
  * pdf() and postscript() support for the documented Adobe encodings
    "Greek" and "Cyrilllic" was missing (although the corresponding
    Windows' codepages could be used).
  * Computations of glyph metric information for pdf() and
    postscript() did not take into account that transliteration could
    replace one character by two or more (only seen on macOS 14) and
    typically warned that the information was not known.
  * rank(x) no longer overflows during integer addition, when
    computing rank average for largish but not-yet long vector x,
    fixing PR#18630, thanks to Ilia Kats.
  * list.files() on Windows now returns also files with names longer
    that 260 bytes (the Windows limit is 260 characters).
    Previously, some file names particularly with 'East Asian'
    characters were omitted.
  * cov2cor(&lt;0 x 0&gt;) now works, fixing PR#18423 thanks to Mikael
    Jagan and Elin Waring.
  * cov2cor(&lt;negative diagonal&gt;) and similar now give one warning
    instead of two, with better wording, fixing PR#18424 thanks to
    Mikael Jagan.
  * tools:: startDynamicHelp() now ensures port is in proper range,
    fixing PR#18645.
  * pbeta(x, a,b) is correct now for x=0 or 1 in the boundary cases
    where a or b or both are 0, fixing PR#18672 thanks to Michael
    Fay.
  * pmatch(x, table) for large table, also called for data frame row
    selection, dfrm[nm, ], is now interruptible, fixing PR#18656.
  * predict(&lt;rank-deficient lm&gt;, newdata=*) fix computing of nbasis,
    see Russ Lenth's comment 29 in PR#16158.
  * Added a work-around for a bug in macOS 14.3.1 and higher which
    prevents R plots in the Quartz Cocoa device from updating on
    screen.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1713960000">- CHANGES IN R 4.4.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Startup banners, R --version, sessionInfo() and R CMD check no
    longer report (64-bit) as part of the platform as this is almost
    universal - the increasingly rare 32-bit platforms will still
    report (32-bit).
    On Windows, ditto for window titles.
  * is.atomic(NULL) now returns FALSE, as NULL is not an atomic
    vector.  Strict back-compatibility would replace is.atomic(foo)
    by (is.null(foo) || is.atomic(foo)) but should happen only
    sparingly.
  NEW FEATURES:
  * The confint() methods for "glm" and "nls" objects have been
    copied to the stats package.  Previously, they were stubs which
    called versions in package MASS. The MASS namespace is no longer
    loaded if you invoke (say) confint(glmfit).  Further, the "glm"
    method for profile() and the plot() and pairs() methods for class
    "profile" have been copied from MASS to stats.  (profile.nls()
    and plot.profile.nls() were already in stats.)
  * The confint() and profile methods for "glm" objects have gained a
    possibility to do profiling based on the Rao Score statistic in
    addition to the default Likelihood Ratio. This is controlled by a
    new test = argument.
  * The pairs() method for "profile" objects has been extended with a
    which = argument to allow plotting only a subset of the
    parameters.
  * The "glm" method for anova() computes test statistics and
    p-values by default, using a chi-squared test or an F test
    depending on whether the dispersion is fixed or free.  Test
    statistics can be suppressed by giving argument test a false
    logical value.
  * In setRepositories() the repositories can be set using their
    names via name = instead of index ind =.
  * methods() and .S3methods() gain a all.names option for the (rare)
    case where functions starting with a . should be included.
  * Serializations can now be interrupted (e.g., by Ctrl-C on a
    Unix-alike) if they take too long, e.g., from save.image(),
    thanks to suggestions by Ivan Krylov and others on R-devel.
  * New startup option --max-connections to set the maximum number of
    simultaneous connections for the session.  Defaults to 128 as
    before: allowed values up to 4096 (but resource limits may in
    practice restrict to smaller values).
  * R on Windows (since Windows 10 2004) now uses the new Segment
    Heap allocator. This may improve performance of some
    memory-intensive applications.
  * When R packages are built, typically by R CMD build &lt;pkg&gt;, the
    new --user=&lt;build_user&gt; option overrides the (internally
    determined) user name, currently Sys.info()["user"] or LOGNAME.
    This is a (modified) fulfillment of Will Landau's suggestion in
    PR#17530.
  * tools::testInstalledBasic() gets new optional arguments outDir
    and testSrcdir, e.g., allowing to use it in a &lt;builddir&gt; !=
    &lt;srcdir&gt; setup, and in standard "binary" Windows installation
  * if* a source tests/ folder is present.
  * range(&lt;DT_with_Inf&gt;, finite = TRUE) now work for objects of class
    "Date", "POSIXct", and "POSIXlt" with infinite entries,
    analogously to range.default(), as proposed by Davis Vaughan on
    R-devel.  Other range()-methods can make use of new function
    .rangeNum().
  * New .internalGenerics object complementing .S3PrimitiveGenerics,
    for documentation and low-level book-keeping.
  * grid() now invisibly returns the x- and y- coordinates at which
    the grid-lines were drawn.
  * norm(., type) now also works for complex matrices.
  * kappa(., exact = TRUE, norm = *) now works for all norms and also
    for complex matrices.  In symmetric / triangular cases, the new
    argument uplo = "U" | "L" allows the upper or lower triangular
    part to be specified.
  * memDecompress(type = "unknown") recognizes compression in the
    default 'zlib' format as used by memCompress(type = "gzip").
  * memCompress() and memDecompress() will use the libdeflate library
    (&lt;https://github.com/ebiggers/libdeflate&gt;) if installed.  This
    uses the same type of compression for type = "gzip" but is 1.5-2x
    faster than the system libz library on some common platforms: the
    speed-up may depend on the library version.
  * diff() for objects of class "Date", "POSIXct", and "POSIXlt"
    accepts a units argument passed via ....
  * Dynamic help now does a much better job of rendering package
    DESCRIPTION metadata.
  * Rprof() gains an event argument and support for elapsed (real)
    time profiling on Unix (PR#18076).
  * filled.contour() gains a key.border argument.
  * tools::update_pkg_po() gets arguments pot_make and mo_make for
    _not_ re-making the corresponding files, and additionally a
    verbose argument.
  * Hexadecimal string colour specifications are now accepted in
    short form, so, for example, we can use "#123", which is
    equivalent to "#112233".
    Thanks to MikeFC for the original idea and Ella Kaye, Malcolm
    Barrett, George Stagg, and Hanne Oberman for the patch.
  * Plain-text help shows \var markup by angle brackets.
  * The new experimental primitive function declare() is intended to
    eventually allow information about R code to be communicated to
    the interpreter, compiler, and code analysis tools. The syntax
    for declarations is still being developed.
  * Functions psmirnov(), qsmirnov() and rsmirnov() in package stats
    have had argument two.sided renamed to alternative, to take into
    account that the permutation distributions of the one-sided
    statistics can be different in the case of ties.  Consequence of
    PR#18582.
  * sort() is now an implicit S4 generic in methods.
  * Formatting and printing, format(z), print(z), of complex vectors
    z no longer zap relatively small real or imaginary parts to zero,
    fixing PR#16752.  This is an API change, as it was documented
    previously to round real and imaginary parts together on purpose,
    producing nicer looking output.  As mentioned, e.g. in the PR,
    this change is compatible with many other "R-like" programming
    environments.
    We have simplified the internal code and now basically format the
    real and imaginary parts independently of each other.
  * New experimental functions Tailcall() and Exec() to support
    writing stack-space-efficient recursive functions.
  * Where characters are attempted to be plotted by pdf(),
    postscript() and xfig() which are not in the selected 8-bit
    character set (most often Latin-1) and the R session is using a
    UTF-8 locale, the warning messages will show the UTF-8 character
    rather than its bytes and one dot will be substituted per
    character rather than per byte.  (Platforms whose iconv() does
    transliteration silently plot the transliteration.)
    In a UTF-8 locale some transliterations are now done with a
    warning (e.g., dashes and Unicode minus to hyphen, ligatures are
    expanded, permille (‰) is replaced by o/oo), although the OS may
    have got there first.  These are warnings as they will continue
    to be replaced by dots in earlier versions of R.
  * The matrix multiplication functions crossprod() and tcrossprod()
    are now also primitive and S3 generic, as %*% had become in R
    4.3.0.
  * source() and example() have a new optional argument catch.aborts
    which allows continued evaluation of the R code after an error.
  * The non-Quartz tiff() devices allow additional types of
    compression if supported by the platform's libtiff library.
  * The list of base and recommended package names is now provided by
    tools::standard_package_names().
  * cairo_pdf() and cairo_ps() default to onefile = TRUE to closer
    match pdf() and postscript().
  * New option catch.script.errors provides a documented way to catch
    errors and then continue in non-interactive use.
  * L %||% R newly in base is an expressive idiom for the phrases
    if(!is.null(L)) L else R or if(is.null(L)) R else L.
  * The return value from warnings() now always inherits from
    "warnings" as documented, now also in the case of no warnings
    where it previously returned NULL.
  * as.complex("1i") now returns 0 + 1i instead of NA with a warning.
  * z &lt;- c(NA, 1i) now keeps the imaginary part Im(z[1]) == 0, no
    longer coercing to NA_complex_.  Similarly, cumsum(z) correctly
    sums real and imaginary parts separately, i.e., without
    "crosstalk" in case of NAs.
  * On Alpine Linux iconv() now maps "latin2", "latin-2", "latin9"
    and "latin-9" to encoding names the OS knows about
    (case-insensitively).
  * iconv(sub = "Unicode") now always zero-pads to four (hex) digits,
    rather than to 4 or 8.  (This seems to have become the convention
    once Unicode restricted the number of Unicode points to 2^21 - 1
    and so will never need more than 6 digits.)
  * NCOL(NULL) now returns 0 instead of 1, for consistency with
    cbind().
  * The information for the Euro glyph missing from the Adobe .afm
    files for the Courier, Helvetica and Times families has been
    copied from their URW equivalents - this will improve vertical
    centring in the pdf() and postscript() devices.
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.12.0.  The changes are almost entirely cosmetic.
  * The included LAPACK sources have been updated to version 3.12.0
    and some further double-complex routines added.
  * There are new font families for the 2014--5 URW 2.0 fonts (see
    ?pdf) which are included in recent versions of Ghostscript.
    These have font widths for most Greek glyphs and a few others
    which were missing from the original versions (whose font
    families remain available for reproducibility, although
    Ghostscript-based viewers will render using the 2.0 versions).
  * Improve the large-n efficiency of as.matrix(&lt;dist&gt;), thanks an R
    contributors effort, notably by Tim Taylor and Heather Turner,
    see PR#18660.
  * The default and numeric methods of all.equal() get a check.class
    option.
  * zapsmall() gets new optional arguments, function mFUN and min.d,
    for extra flexibility; fulfills a wish in PR#18199.  Also, it is
    now an implicit S4 generic in package methods.
  * The Rd filter for aspell() gains an ignore argument.
  * New generic function sort_by(), primarily useful for the
    data.frame method which can be used to sort rows of a data frame
    by one or more columns.
  * The icence headers for the RPC code in src/extra/xdr have been
    updated to use the GPL-compatible licence published by Oracle
    America in 2010.
  * New function pkg2HTML() in tools to create single-page HTML
    reference manuals for R packages.
  * The byte code evaluator now uses less C stack space for recursive
    calls to byte-compiled functions. It also makes more of an effort
    to avoid allocations for scalar return values.
  * New completion option backtick (disabled by default) allows
    non-syntactic completions to be wrapped in backquotes. This is
    currently only useful for Jupyter notebooks via the IRkernel
    package, and may cause problems for other backends.
  INSTALLATION:
  * The parser has been updated to work with bison 3.8.2, which is
    now used for the pre-generated parsers in gram.c, file.c, and
    gramRd.c. A few parser error messages have changed, which may
    affect code that relies on exact messages.
  INSTALLATION on a UNIX-ALIKE:
  * System valgrind headers are now required to use configure option
  - -with-valgrind-instrumentation with value 1 or 2.
  * configure will warn if it encounters a 32-bit build, as that is
    nowadays almost untested.
  * Environment variable R_SYSTEM_ABI is no longer used and so no
    longer recorded in etc/Renviron (it was not on Windows and was
    only ever used when preparing package tools).
  * If the libdeflate library and headers are available, libdeflate
    rather than libz is used to (de)compress R objects in lazy-load
    databases.  Typically tasks spend up to 5% of their time on such
    operations, although creating lazy-data databases is one of the
    exceptions.
    This can be suppressed if the library is available by the
    configure option --without-libdeflate-compression.
  * configure option --enable-lto=check has not worked reliably since
    2019 and has been removed.
  * The minimum autoconf requirement for a maintainer build has been
    increased to autoconf 2.71.
    It is intended to increase this to 2.72 for R 4.5.0: the
    distributed configure file was generated using 2.72.
  * The minimum version requirement for an external LAPACK has been
    reduced to 3.9.0.
  * No default C++ compiler is set if no C++17 compiler is detected:
    there is no longer an automatic fallback to C++14 or C++11.
    Compilers from the last five years should have sufficient
    support: for others macros CXX and CXXSTD can be set in file
    config.site to provide a fallback if needed.
    The Objective-C++ compiler now by default uses the standard
    selected by R for C++ (currently C++17) rather than the default
    standard for the C++ compiler (which on macOS is still C++98).
  INSTALLATION on macOS:
  * A new configure option --with-newAccelerate makes use of Apple's
    'new' BLAS / LAPACK interfaces in their Accelerate framework.
    Those interfaces are only available in macOS 13.3 or later, and
    building requires SDK 13.3 or later (from the Command Line Tools
    or Xcode 14.3 or later).
    By default the option uses new Accelerate for BLAS calls: to also
    use it for LAPACK use option --with-newAccelerate=lapack.  The
    later interfaces provide LAPACK 3.9.1 rather than 3.2.1: 3.9.1 is
    from 2021-04 and does not include the improved algorithms
    introduced in LAPACK 3.10.0 (including for BLAS calls).
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools44, an update of the Rtools43 toolchain.  It is
    based on GCC 13 and newer versions of MinGW-W64, binutils and
    libraries (targeting 64-bit Intel CPUs).  R-devel can no longer
    be built using Rtools43 without changes.
  * Rtools44 has experimental support for 64-bit ARM (aarch64) CPUs
    _via_ the LLVM 17 toolchain using lld, clang/flang-new and
    libc++.
  UTILITIES:
  * R CMD check notes when S4-style exports are used without
    declaring a strong dependence on package methods.
  * tools::checkRd() (used by R CMD check) detects more problems with
    \Sexpr-based dynamic content, including bad nesting of \Sexprs
    and invalid arguments.
  * tools::checkRd() now reports Rd titles and section names ending
    in a period; this is ignored by R CMD check unless environment
    variable _R_CHECK_RD_CHECKRD_MINLEVEL_ is set to -5 or smaller.
  * R CMD check now notes Rd files without an \alias, as long
    documented in 'Writing R Extensions' §1.3.1.  The check for a
    missing \description has been moved from tools::checkRd() to
    tools::checkRdContents().
  * R CMD check now visits inst/NEWS.Rd and OS-specific man
    subdirectories when checking Rd files.
  * tools::checkDocFiles() and tools::checkRdContents() now also
    check internal Rd files by default, but "specially" (ignoring
    missing documentation of arguments).
  * R CMD Rdiff gets option --useEx.
  * R CMD check now warns on non-portable uses of Fortran KIND such
    as INTEGER(KIND=4) and REAL(KIND=8).
    To see the failing lines set environment variable
    _R_CHECK_FORTRAN_KIND_DETAILS_ to a true value.
  * When checking Rd files, R CMD check now notes some of the "lost
    braces" that tools::checkRd() finds.  Typical problems are Rd
    macros missing the initial backslash (e.g., code{...}), in-text
    set notation (e.g., {1, 2}, where the braces need escaping), and
    \itemize lists with \describe-style entries of the form
    \item{label}{description}.
  * R CMD INSTALL (and hence check) will compile C++ code with
  - DR_NO_REMAP if environment variable _R_CXX_USE_NO_REMAP_ is set
    to a true value.  It is planned that this will in future become
    the default for compiling C++.
  * The new built-in Rd macro \dontdiff{} can be used to mark example
    code whose output should be ignored when comparing check output
    to reference output (tests/Examples/&lt;pkg&gt;-Ex.Rout.save).  The
    \dontdiff tag, like \donttest, is _not_ shown on the rendered
    help page, so provides a clean alternative to ##
    IGNORE_RDIFF_(BEGIN|END) comments.
  * R CMD build when there is no NAMESPACE, now uses the recommended
    exportPattern("^[^.]"), instead of exporting everything.
  * R CMD check now warns about non-ASCII characters in the NAMESPACE
    file (in addition to R files). Such packages are not portable and
    may fail to install on some platforms.
  C-LEVEL FACILITIES:
  * Headers R_ext/Applic.h and R-ext/Linpack.h used to include
    R_ext/BLAS.h although this was undocumented and unneeded by their
    documented entry points.  They no longer do so.
  * New function R_missing(), factored out from do_missing(), used to
    fix PR#18579.
  * SEXP type S4SXP has been renamed to OBJSXP to support
    experimenting with alternative object systems.  The S4SXP value
    can still be used in C code but is now deprecated.  Based on
    contributions from the R Consortium's Object-Oriented Programming
    Working Group.
  * New function pow1p(x,y) for accurate (1+x)^y.
  * mkCharLenCE was incorrectly documented to take a size_t length
    but was implemented with int (and character strings in R are
    limited to 2^31 - 1 bytes).
  DEPRECATED AND DEFUNCT:
  * data() no longer handles zipped data from long-defunct (since R
    2.13.0) --use-zip-data installations.
  * The legacy graphics devices pictex() and xfig() are now
    deprecated.  They do not support recent graphics enhancements and
    their font handling is rudimentary. The intention is to retain
    them for historical interest as long as they remain somewhat
    functional.
  * Support for encoding = "MacRoman" has been removed from the pdf()
    and postscript() devices - this was a legacy encoding supporting
    classic macOS up to 2001 and no longer has universal libiconv
    support.
  * is.R() is deprecated as no other S dialect is known to be in use
    (and this could only identify historical dialects, not future
    ones).
    Further information on calls can be obtained by setting the
    environment variable _R_DEPRECATED_IS_R_ to error which turns the
    deprecation warning into an error and so by default gives a
    traceback.  (This is done by R CMD check --as-cran.)
  * UseMethod() no longer forwards local variables assigned in the
    generic function into method call environments before evaluating
    the method body. This makes method calls behave more like
    standard function calls and makes method code easier to analyze
    correctly.
  * The twelve as.data.frame.&lt;class&gt;() methods which were deprecated
    only via _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ and in R CMD
    check --as-cran are formally deprecated now in favour of calling
    as.data.frame() or as.data.frame.vector().  The deprecation
    "check" now works also when as.data.frame() is S4 generic thanks
    to Ivan Krylov.
  * The default method for the directional comparison operators &lt;, &gt;,
    &lt;=, and &gt;= now signals an error when one of the operands is a
    language object, i.e. a symbol or a call.
  * For terms.formula(), deprecate abb and neg.out arguments
    _formally_ in addition to just documenting it.
  BUG FIXES:
  * The methods package is more robust to not being attached to the
    search path.  More work needs to be done.
  * pairwise.t.test() misbehaved when subgroups had 0 DF for
    variance, even with pool.sd = TRUE.  (PR#18594 by Jack Berry).
  * Probability distribution functions [dpq]&lt;distrib&gt;(x, *), but also
    bessel[IKJY](x, .) now consistently preserve attributes(x) when
    length(x) == 0, e.g., for a 2 x 0 matrix, thanks to Karolis
    Koncevičius' report PR#18509.
  * Group "Summary" computations such as sum(1:3, 4, na.rm = 5, NA,
    7, na.rm = LL) now give an error instead of either 17 or NN for
    LL true or false, as proposed by Ivan Krylov on the R-devel
    mailing list.  (This also means it is now an error to specify
    na.rm more than once.)
  * as.complex(x) now returns complex(real = x, imaginary = 0) for
    _all_ numerical and logical x, notably also for NA or
    NA_integer_.
  * Directories are now omitted by file.copy(, recursive = FALSE) and
    in file.append() (PR#17337).
  * gsub() and sub() are now more robust to integer overflow when
    reporting errors caused by too large input strings (PR#18346).
  * Top-level handlers are now more robust to attempts to remove a
    handler whilst handlers are running (PR#18508).
  * The handling of Alt+F4 in dialogs created on Windows using
    GraphApp has been fixed (PR#13870).
  * density() more consistently computes grid values for the
    FFT-based convolution, following Robert Schlicht's analysis and
    proposal in PR#18337, correcting density values typically by a
    factor of about 0.999.  Argument old.coords = TRUE provides back
    compatibility.
  * palette.colors() gains a name argument that defaults to FALSE
    controlling whether the vector of colours that is returned has
    names (where possible).  PR#18529.
  * tools::xgettext() no longer extracts the (non-translatable) class
    names from warningCondition and errorCondition calls.
  * S3method(&lt;gen&gt;, &lt;class&gt;, &lt;func&gt;) in the NAMESPACE file now works
    (again) when &lt;func&gt; is visible from the namespace, e.g.,
    imported, or in base.
  * getParseData(f) now also works for a function defined in the
    first of several &lt;pkg&gt;/R/*.R source files, thanks to Kirill
    Müller's report and Duncan Murdoch's patch in PR#16756.
  * Rd \Sexpr macros with nested #ifdef conditionals were not
    processed.
  * A non-blocking connection with non-default encoding (such as a
    socket) now correctly returns from readLines() after new data has
    arrived also when its EOF had been reached previously.  Thanks to
    Peter Meilstrup's report on R-devel and Ivan Krylov's report and
    patch proposal in PR#18555.
  * tools::checkRdContents() failed to detect empty argument
    descriptions when they spanned multiple lines, including those
    generated by prompt().  These cases are now noted by R CMD check.
  * Plain-text help no longer outputs spurious colons in the
    arguments list (for multi-line \item labels in the Rd source).
  * kappa() and rcond() work correctly in more cases; kappa(., norm =
    "2") now warns that it computes the 1-norm with (default) exact =
    FALSE; prompted by Mikael Jagan's quite comprehensive PR#18543.
  * Rd skeletons generated by prompt() or promptData() now use a
    dummy title (so R CMD build works).  tools::checkRdContents() has
    been updated to detect such template leftovers, including from
    promptPackage().
  * When S4 method dispatch fails because no method was found, the
    error message now includes the signature argument names; thanks
    to Michael Chirico's proposal on the R-devel list.
  * withAutoprint({ .. }) now preserves srcrefs previously lost,
    thanks to Andrew Simmons' report plus fix in PR#18572.
  * transform.data.frame() no longer adjusts names; in particular,
    untransformed variables are kept as-is, including those with
    syntactically invalid names (PR#17890).
  * The keep.source option for Rd \Sexpr blocks is no longer ignored.
  * The formula methods for t.test() and wilcox.test() now catch when
    paired is passed, addressing PR#14359; use Pair(x1, x2) ~ 1 for a
    paired test.
  * The level reported in the browser prompt was often too large. It
    now shows the number of browser contexts on the stack.
  * For cbind() and rbind(), the optional deparse.level argument is
    now properly passed to methods, thanks to Mikael Jagan's PR#18579
    and comments there.
  * Some error and warning messages for large ('long vector')
    matrix(v, nr, nc) and dim(m) &lt;- d are now correct about sizes,
    using long long formatting, fixing PR#18612 (and more) reported
    by Mikael Jagan.
  * readChar(useBytes = TRUE) now terminates strings even when the
    underlying connection uses extra spaces in the input buffer.
    This fixes problems with extra garbage seen with gzip
    connections, PR#18605.
  * Named capture in PCRE regular expressions now works also with
    more than 127 named groups (PR#18588).
  * Datetime functions are now robust against long jumps when dealing
    with internal time zone changes.  This avoids confusing warnings
    about an invalid time zone, previously triggered by turning
    warnings into errors or handling them via tryCatch (PR#17966,
    PR#17780).
  * Datetime functions now restore even an empty TZ environment
    variable after internal time zone changes (PR#17724).  This makes
    results of datetime functions with this (typically unintentional)
    setting more predictable.
  * drop.terms(*) now drops response as by default, keep.response =
    FALSE, fixing PR#18564 thanks to Mikael Jagan.
  * dummy.coef(.) now also works for lm()-models with character
    categorical predictor variables rather than factor ones, fixing
    PR#18635 reported by Jinsong Zhao.
  * formals(f) &lt;- formals(f) now also works for a function w/o
    arguments and atomic _constant_ body(f).
  * Correct as.function(&lt;invalid list&gt;, .)'s error message.
  * removeSource() is yet more thorough in finding and removing
    "srcref" and the other source references from parsed R language
    chunks, fixing PR#18638 thanks to Andrew Simmons.
  * dgeom() is more accurate now, notably when its result is very
    small, fixing PR#18642 thanks to the proposal of Morten Welinder,
    also improving other instances where C level binom_raw(x, n, ..)
    has x == 0 or x== n.
  * warning() with options(warn = 1) has improved output for
    multi-line messages.
  * axis.Date() and axis.POSIXct() now respect the par("lab") setting
    for the number of pretty() intervals.
  * Comparisons for language objects (which are based on deparsing)
    are now more careful about using accurate deparsed results
    (PR#18676).
  * Plain-text help (Rd2txt) now correctly preserves blank lines
    following single-line \dontrun code.
  * &lt;POSIXlt&gt;[*] no longer sets wrong "balanced" attribute, fixing
    PR#18681 thanks to Mikael Jagan.
  * str(&lt;classed-call&gt;) now deparses the call as expected, fixing
    PR#18684, reported by Dave Slager.
  * In Rd examples, code following the closing brace of a \dontrun,
    \dontshow or \donttest tag on the same line is no longer skipped
    when R CMD check runs the examples.
  * as.data.frame(matrix(*, ncol=0)) now gets valid names() and
    colnames(); reported by Davis Vaughan on the R-devel list.
  * Internal Mathlib function stirlerr(n) is now almost fully
    (52-bit) accurate for all n &gt;= ~5.9 and more accurate also in the
    range 1 -- 5.9.  This entails small ("after 12th decimal")
    changes in density functions, e.g., dgamma() in _some_ regions of
    their support.  The fix was partly prompted by Morten Welinder's
    PR#18640.
  * Numbers like 9876543.2 are now considered non-integer by Mathlib
    internal R_nonint(), amending original fix of PR#15734.
  * Rd comment lines no longer cause broken paragraphs in the
    rendered PDF and plain-text help. In code blocks, pure comment
    lines (starting with %) no longer produce an empty line.
  * xtabs(Freq ~ .) now consistently defaults to na.action = na.pass,
    using na.rm = FALSE (added as an argument) when summing over Freq
    (PR#17770).
  * tools::testInstalledPackage() is no longer silent about failures
    from running examples or tests and its return code no longer
    ignores failures from checking vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1718366400">- CHANGES IN R 4.4.1:
  C-LEVEL FACILITIES:
  * Functions R_atof and R_strtod declared in header R_ext/Utils.h
    are now documented in 'Writing R Extensions' and so formally part
    of the API.
  * The non-API entry points Rf_setSVector, Rf_StringFalse,
    Rf_StringTrue and Rf_isBlankString have been added to those
    reported by R CMD check.
  * The new function Rf_allocLang is now available. This provides an
    alternative to the idiom of calling Rf_allocList followed by
    SET_TYPEOF.
  UTILITIES:
  * R CMD check now reports as warnings what gfortran calls 'Fortran
    2018 deleted features', all of which have long been marked as
    'obsolescent' and some of which were deleted in Fortran 2008 or
    earlier.  Fortran compilers are no longer required to support
    these.
  BUG FIXES:
  * as.numeric(), scan(), type.convert() and other places which use
    the internal C function R_strtod now require a _non-empty_ digit
    sequence in a decimal or binary exponent.  This aligns with the
    C/POSIX standard for strtod and with ?NumericConstants.
  * as.data.frame(m, make.names=NA) now works correctly for a matrix
    m with NA's in row names.
  * The error message from &lt;POSIXlt&gt;[["hour"]] and similar now
    mentions *[[, "hour"]], as wished for in PR#17409 and proposed by
    Michael Chirico.
  * qbinom() and potentially qpois(), qnbinom(), no longer sometimes
    fail accurate inversion (of pbinom(), etc), thanks to Christopher
    Chang's report and patch in PR#18711.
  * The internal help server on Windows can again serve requests sent
    in quick succession, fixing a regression in R 4.4.0.
  * debugcall(&lt;S3Generic&gt;()) now also works when a corresponding
    S4-generic version is in the methods cache (PR#18143).
  * Package tools' toTitleCase(ch0) now returns character(0) when ch0
    is of zero length; fixing PR#18724, reported by David Hugh Jones.
  * R CMD check is no longer broken (without a check result and no
    explanation in 00check.log) for a package which declares an
    invalid VignetteBuilder in DESCRIPTION but has no vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1730376000">- CHANGES IN R 4.4.2:
  C-LEVEL FACILITIES:
  * The S-compatibility macros F77_COM and F77_COMDECL defined in
    header R_ext/RS.h are deprecated and will be removed shortly.  We
    could find no record of their use.
  BUG FIXES:
  * Mathlib function lgammacor(x) no longer warns about underflow to
    zero for large x.
  * Text widths and heights were incorrectly reported by the Quartz
    device if the drawing context didn't exist yet (typically when
    drawing off-screen to a window that is yet to appear, see
    PR#18591).
  * The Quartz device could segfault in cases where paths with spaces
    are used in the new glyph drawing API.  Thanks to Tomek
    Gieorgijewski (PR#18758).
  * On macOS in R CRAN builds, it is again possible to read
    little-endian UTF-16 text with a BOM from a connection using
    encoding="UTF-16".  Users building R from source should avoid
    using the system libiconv in macOS 14.1 and later.
  * methods' internal .requirePackage() now re-enables primitive
    method dispatch when needed; thanks to Ivan Krylov for
    demystifying CRAN package check failures on the R-devel mailing
    list.</changelog>
</package>
<package pkgid="5cfc0d30bcf320e651a48ca4d25c65cea7f48f97829fd9f6e22ad7ef8548ed7126821f3b21f17034518d2aea59f30ee1f27b3b13f3ff176724ee1bd14b234a5f" name="R-class-debuginfo" arch="x86_64">
  <version epoch="0" ver="7.3.22" rel="51.0.2.2.sr20241103"/>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1620302400">- To get in sync with d:l:R:autoCRAN the Matrix package's split
  in -devel was reversed.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339200">- improved spec file according to comments of dimstar in
  https://build.opensuse.org/request/show/892685</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339201">- CHANGES IN R 4.1.0:
  FUTURE DIRECTIONS:
  * It is planned that the 4.1.x series will be the last to support
    32-bit Windows, with production of binary packages for that
    series continuing until early 2023.
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Data set esoph in package datasets now provides the correct
    numbers of controls; previously it had the numbers of cases added
    to these.  (Reported by Alexander Fowler in PR#17964.)
  NEW FEATURES:
  * www.omegahat.net is no longer one of the repositories known by
    default to setRepositories().  (Nowadays it only provides source
    packages and is often unavailable.)
  * Function package_dependencies() (in package tools) can now use
    different dependency types for direct and recursive dependencies.
  * The checking of the size of tarball in R CMD check --as-cran
    &lt;pkg&gt; may be tweaked via the new environment variable
    _R_CHECK_CRAN_INCOMING_TARBALL_THRESHOLD_, as suggested in
    PR#17777 by Jan Gorecki.
  * Using c() to combine a factor with other factors now gives a
    factor, an ordered factor when combining ordered factors with
    identical levels.
  * apply() gains a simplify argument to allow disabling of
    simplification of results.
  * The format() method for class "ftable" gets a new option justify.
    (Suggested by Thomas Soeiro.)
  * New ...names() utility.  (Proposed by Neal Fultz in PR#17705.)
  * type.convert() now warns when its as.is argument is not
    specified, as the help file always said it _should_.  In that
    case, the default is changed to TRUE in line with its change in
    read.table() (related to stringsAsFactor) in R 4.0.0.
  * When printing list arrays, classed objects are now shown _via_
    their format() value if this is a short enough character string,
    or by giving the first elements of their class vector and their
    length.
  * capabilities() gets new entry "Rprof" which is TRUE when R has
    been configured with the equivalent of --enable-R-profiling (as
    it is by default).  (Related to Michael Orlitzky's report
    PR#17836.)
  * str(xS4) now also shows extraneous attributes of an S4 object
    xS4.
  * Rudimentary support for vi-style tags in rtags() and R CMD rtags
    has been added.  (Based on a patch from Neal Fultz in PR#17214.)
  * checkRdContents() is now exported from tools; it and also
    checkDocFiles() have a new option chkInternal allowing to check
    Rd files marked with keyword "internal" as well.  The latter can
    be activated for R CMD check via environment variable
    _R_CHECK_RD_INTERNAL_TOO_.
  * New functions numToBits() and numToInts() extend the raw
    conversion utilities to (double precision) numeric.
  * Functions URLencode() and URLdecode() in package utils now work
    on vectors of URIs.  (Based on patch from Bob Rudis submitted
    with PR#17873.)
  * path.expand() can expand ~user on most Unix-alikes even when
    readline is not in use.  It tries harder to expand ~, for example
    should environment variable HOME be unset.
  * For HTML help (both dynamic and static), Rd file links to help
    pages in external packages are now treated as references to
    topics rather than file names, and fall back to a file link only
    if the topic is not found in the target package. The earlier rule
    which prioritized file names over topics can be restored by
    setting the environment variable _R_HELP_LINKS_TO_TOPICS_ to a
    false value.
  * c() now removes NULL arguments before dispatching to methods,
    thus simplifying the implementation of c() methods, _but_ for
    back compatibility keeps NULL when it is the first argument.
    (From a report and patch proposal by Lionel Henry in PR#17900.)
  * Vectorize()'s result function's environment no longer keeps
    unneeded objects.
  * Function ...elt() now propagates visibility consistently with
    ..n.  (Thanks to Lionel Henry's PR#17905.)
  * capture.output() no longer uses non-standard evaluation to
    evaluate its arguments.  This makes evaluation of functions like
    parent.frame() more consistent.  (Thanks to Lionel Henry's
    PR#17907.)
  * packBits(bits, type="double") now works as inverse of
    numToBits().  (Thanks to Bill Dunlap's proposal in PR#17914.)
  * curlGetHeaders() has two new arguments, timeout to specify the
    timeout for that call (overriding getOption("timeout")) and TLS
    to specify the minimum TLS protocol version to be used for
    https:// URIs (_inter alia_ providing a means to check for sites
    using deprecated TLS versions 1.0 and 1.1).
  * For nls(), an optional constant scaleOffset may be added to the
    denominator of the relative offset convergence test for cases
    where the fit of a model is expected to be exact, thanks to a
    proposal by John Nash.  nls(*, trace=TRUE) now also shows the
    convergence criterion.
  * Numeric differentiation _via_ numericDeriv() gets new optional
    arguments eps and central, the latter for taking central divided
    differences.  The latter can be activated for nls() via
    nls.control(nDcentral = TRUE).
  * nls() now passes the trace and control arguments to getInitial(),
    notably for all self-starting models, so these can also be fit in
    zero-noise situations via a scaleOffset.  For this reason, the
    initial function of a selfStart model must now have ... in its
    argument list.
  * bquote(splice = TRUE) can now splice expression vectors with
    attributes: this makes it possible to splice the result of
    parse(keep.source = TRUE).  (Report and patch provided by Lionel
    Henry in PR#17869.)
  * textConnection() gets an optional name argument.
  * get(), exists(), and get0() now signal an error if the first
    argument has length greater than 1.  Previously additional
    elements were silently ignored.  (Suggested by Antoine Fabri on
    R-devel.)
  * R now provides a shorthand notation for creating functions, e.g.
    \(x) x + 1 is parsed as function(x) x + 1.
  * R now provides a simple native forward pipe syntax |&gt;.  The
    simple form of the forward pipe inserts the left-hand side as the
    first argument in the right-hand side call.  The pipe
    implementation as a syntax transformation was motivated by
    suggestions from Jim Hester and Lionel Henry.
  * all.equal(f, g) for functions now by default also compares their
    environment(.)s, notably via new all.equal method for class
    function.  Comparison of nls() fits, e.g., may now need
    all.equal(m1, m2, check.environment = FALSE).
  * .libPaths() gets a new option include.site, allowing to _not_
    include the site library.  (Thanks to Dario Strbenac's suggestion
    and Gabe Becker's PR#18016.)
  * Lithuanian translations are now available.  (Thanks to Rimantas
    Zakauskas.)
  * names() now works for DOTSXP objects.  On the other hand, in
    R-lang, the R language manual, we now warn against relying on the
    structure or even existence of such dot-dot-dot objects.
  * all.equal() no longer gives an error on DOTSXP objects.
  * capabilities("cairo") now applies only to the file-based devices
    as it is now possible (if very unusual) to build R with Cairo
    support for those but not for X11().
  * There is optional support for tracing the progress of
    loadNamespace() - see its help.
  * (Not Windows.)  l10n_info() reports an additional element, the
    name of the encoding as reported by the OS (which may differ from
    the encoding part (if any) of the result from
    Sys.getlocale("LC_CTYPE").
  * New function gregexec() which generalizes regexec() to find _all_
    disjoint matches and well as all substrings corresponding to
    parenthesized subexpressions of the given regular expression.
    (Contributed by Brodie Gaslam.)
  * New function charClass() in package utils to query the
    wide-character classification functions in use (such as
    iswprint).
  * The names of quantile()'s result no longer depend on the global
    getOption("digits"), but quantile() gets a new optional argument
    digits = 7 instead.
  * grep(), sub(), regexp and variants work considerably faster for
    long factors with few levels.  (Thanks to Michael Chirico's
    PR#18063.)
  * Provide grouping of x11() graphics windows within a window
    manager such as Gnome or Unity; thanks to a patch by Ivan Krylov
    posted to R-devel.
  * The split() method for class data.frame now allows the f argument
    to be specified as a formula.
  * sprintf now warns on arguments unused by the format string.
  * New palettes "Rocket" and "Mako" for hcl.colors() (approximating
    palettes of the same name from the 'viridisLite' package).
    Contributed by Achim Zeileis.
  * The base environment and its namespace are now locked (so one can
    no longer add bindings to these or remove from these).
  * Rterm handling of multi-byte characters has been improved,
    allowing use of such characters when supported by the current
    locale.
  * Rterm now accepts ALT+ +xxxxxxxx sequences to enter Unicode
    characters as hex digits.
  * Environment variable LC_ALL on Windows now takes precedence over
    LC_CTYPE and variables for other supported categories, matching
    the POSIX behaviour.
  * duplicated() and anyDuplicated() are now optimized for integer
    and real vectors that are known to be sorted via the ALTREP
    framework. Contributed by Gabriel Becker via PR#17993.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 14
    and so packages that provide graphics devices should be
    reinstalled.
  * Graphics devices should now specify deviceVersion to indicate
    what version of the graphics engine they support.
  * Graphics devices can now specify deviceClip.  If TRUE, the
    graphics engine will never perform any clipping of output itself.
    The clipping that the graphics engine does perform (for both
    canClip = TRUE and canClip = FALSE) has been improved to avoid
    producing unnecessary artifacts in clipped output.
  * The grid package now allows gpar(fill) to be a linearGradient(),
    a radialGradient(), or a pattern().  The viewport(clip) can now
    also be a grob, which defines a clipping path, and there is a new
    viewport(mask) that can also be a grob, which defines a mask.
    These new features are only supported so far on the Cairo-based
    graphics devices and on the pdf() device.
  * (Not Windows.)  A warning is given when a Cairo-based type is
    specified for a png(), jpeg(), tiff() or bmp() device but Cairo
    is unsupported (so type = "Xlib" is tried instead).
  * grSoftVersion() now reports the versions of FreeType and
    FontConfig if they are used directly (not _via_ Pango), as is
    most commonly done on macOS.
  C-LEVEL FACILITIES:
  * The _standalone_ libRmath math library and R's C API now provide
    log1pexp() again as documented, and gain log1mexp().
  INSTALLATION on a UNIX-ALIKE:
  * configure checks for a program pkgconf if program pkg-config is
    not found.  These are now only looked for on the path (like
    almost all other programs) so if needed specify a full path to
    the command in PKG_CONFIG, for example in file config.site.
  * C99 function iswblank is required - it was last seen missing ca
    2003 so the workaround has been removed.
  * There are new configure options --with-internal-iswxxxxx,
  - -with-internal-towlower and --with-internal-wcwidth which allows
    the system functions for wide-character classification,
    case-switching and width (wcwidth and wcswidth) to be replaced by
    internal ones.  The first has long been used on macOS, AIX (and
    Windows) but this enables it to be unselected there and selected
    for other platforms (it is the new default on Solaris).  The
    second is new in this version of R and is selected by default on
    macOS and Solaris.  The third has long been the default and
    remains so as it contains customizations for East Asian
    languages.
    System versions of these functions are often minimally
    implemented (sometimes only for ASCII characters) and may not
    cover the full range of Unicode points: for example Solaris (and
    Windows) only cover the Basic Multilingual Plane.
  * Cairo installations without X11 are more likely to be detected by
    configure, when the file-based Cairo graphics devices will be
    available but not X11(type = "cairo").
  * There is a new configure option --with-static-cairo which is the
    default on macOS.  This should be used when only static cairo
    (and where relevant, Pango) libraries are available.
  * Cairo-based graphics devices on platforms without Pango but with
    FreeType/FontConfig will make use of the latter for font
    selection.
  LINK-TIME OPTIMIZATION on a UNIX-ALIKE:
  * Configuring with flag --enable-lto=R now also uses LTO when
    installing the recommended packages.
  * R CMD INSTALL and R CMD SHLIB have a new flag --use-LTO to use
    LTO when compiling code, for use with R configured with
  - -enable-lto=R.  For R configured with --enable-lto, they have
    the new flag --no-use-LTO.
    Packages can opt in or out of LTO compilation _via_ a UseLTO
    field in the DESCRIPTION file.  (As usual this can be overridden
    by the command-line flags.)
  BUILDING R on Windows:
  * for GCC &gt;= 8, FC_LEN_T is defined in config.h and hence character
    lengths are passed from C to Fortran in _inter alia_ BLAS and
    LAPACK calls.
  * There is a new text file src/gnuwin32/README.compilation, which
    outlines how C/Fortran code compilation is organized and
    documents new features:
  * R can be built with Link-Time Optimization with a suitable
    compiler - doing so with GCC 9.2 showed several
    inconsistencies which have been corrected.
  * There is support for cross-compiling the C and Fortran code
    in R and standard packages on suitable (Linux) platforms.
    This is mainly intended to allow developers to test later
    versions of compilers - for example using GCC 9.2 or 10.x has
    detected issues that GCC 8.3 in Rtools40 does not.
  * There is experimental support for cross-building R packages
    with C, C++ and/or Fortran code.
  * The R installer can now be optionally built to support a single
    architecture (only 64-bit or only 32-bit).
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++14 where
    available (which it is on all currently checked platforms): if
    not (as before) C++11 is used if available otherwise C++ is not
    supported.
    Packages which specify C++11 will still be installed using C++11.
    C++14 compilers may give deprecation warnings, most often for
    std::random_shuffle (deprecated in C++14 and removed in C++17).
    Either specify C++11 (see 'Writing R Extensions') or modernize
    the code and if needed specify C++14.  The latter has been
    supported since R 3.4.0 so the package's DESCRIPTION would need
    to include something like
    Depends: R (&gt;= 3.4)
  PACKAGE INSTALLATION on Windows:
  * R CMD INSTALL and R CMD SHLIB make use of their flag --use-LTO
    when the LTO_OPT make macro is set in file etc/${R_ARCH}/Makeconf
    or in a personal/site Makevars file.  (For details see 'Writing R
    Extensions' SS4.5.)
    This provides a valuable check on code consistency.  It does work
    with GCC 8.3 as in Rtools40, but that does not detect everything
    the CRAN checks with current GCC do.
  PACKAGE INSTALLATION on macOS:
  * The default personal library directory on builds with
  - -enable-aqua (including CRAN builds) now differs by CPU type,
    one of
    ~/Library/R/x86_64/x.y/library
    ~/Library/R/arm64/x.y/library
    This uses the CPU type R (and hence the packages) were built for,
    so when a x86_64 build of R is run under Rosetta emulation on an
    arm64 Mac, the first is used.
  UTILITIES:
  * R CMD check can now scan package functions for bogus return
    statements, which were possibly intended as return() calls (wish
    of PR#17180, patch by Sebastian Meyer). This check can be
    activated via the new environment variable
    _R_CHECK_BOGUS_RETURN_, true for --as-cran.
  * R CMD build omits tarballs and binaries of previous builds from
    the top-level package directory.  (PR#17828, patch by Sebastian
    Meyer.)
  * R CMD check now runs sanity checks on the use of LazyData, for
    example that a data directory is present and that
    LazyDataCompression is not specified without LazyData and has a
    documented value.  For packages with large LazyData databases
    without specifying LazyDataCompression, there is a reference to
    the code given in 'Writing R Extensions' SS1.1.6 to test the
    choice of compression (as in all the CRAN packages tested a
    non-default method was preferred).
  * R CMD build removes LazyData and LazyDataCompression fields from
    the DESCRIPTION file of packages without a data directory.
  ENCODING-RELATED CHANGES:
  * The parser now treats \Unnnnnnnn escapes larger than the upper
    limit for Unicode points (\U10FFFF) as an error as they cannot be
    represented by valid UTF-8.
    Where such escapes are used for outputting non-printable
    (including unassigned) characters, 6 hex digits are used (rather
    than 8 with leading zeros).  For clarity, braces are used, for
    example \U{0effff}.
  * The parser now looks for non-ASCII spaces on Solaris (as
    previously on most other OSes).
  * There are warnings (including from the parser) on the use of
    unpaired surrogate Unicode points such as \uD834.  (These cannot
    be converted to valid UTF-8.)
  * Functions nchar(), tolower(), toupper() and chartr() and those
    using regular expressions have more support for inputs with a
    marked Latin-1 encoding.
  * The character-classification functions used (by default) to
    replace the system iswxxxxx functions on Windows, macOS and AIX
    have been updated to Unicode 13.0.0.
    The character-width tables have been updated to include new
    assignments in Unicode 13.0.0.
  * The code for evaluating default (extended) regular expressions
    now uses the same character-classification functions as the rest
    of R (previously they differed on Windows, macOS and AIX).
  * There is a build-time option to replace the system's
    wide-character wctrans C function by tables shipped with R: use
    configure option --with-internal-towlower or (on Windows)
  - DUSE_RI18N_CASE in CFLAGS when building R.  This may be needed
    to allow tolower() and toupper() to work with Unicode characters
    beyond the Basic Multilingual Plane where not supported by system
    functions (e.g. on Solaris where it is the new default).
  * R is more careful when truncating UTF-8 and other multi-byte
    strings that are too long to be printed, passed to the system or
    libraries or placed into an internal buffer.  Truncation will no
    longer produce incomplete multibyte characters.
  DEPRECATED AND DEFUNCT:
  * Function plclust() from the package stats and
    package.dependencies(), pkgDepends(), getDepList(),
    installFoundDepends(), and vignetteDepends() from package tools
    are defunct.
  * Defunct functions checkNEWS() and readNEWS() from package tools
    and CRAN.packages() from utils have been removed.
  * R CMD config CXXCPP is defunct (it was deprecated in R 3.6.2).
  * parallel::detectCores() drops support for Irix (retired in 2013).
  * The LINPACK argument to chol.default(), chol2inv(),
    solve.default() and svd() has been defunct since R 3.1.0.  It was
    silently ignored up to R 4.0.3 but now gives an error.
  * Subsetting/indexing, such as ddd[*] or ddd$x on a DOTSXP
    (dot-dot-dot) object ddd has been disabled; it worked by accident
    only and was undocumented.
  BUG FIXES:
  * Many more C-level allocations (mainly by malloc and strdup) are
    checked for success with suitable alternative actions.
  * Bug fix for replayPlot(); this was turning off graphics engine
    display list recording if a recorded plot was replayed in the
    same session.  The impact of the bug became visible if resize the
    device after replay OR if attempted another savePlot() after
    replay (empty display list means empty screen on resize or empty
    saved plot).
  * R CMD check etc now warn when a package exports non-existing S4
    classes or methods, also in case of no "methods" presence.
    (Reported by Alex Bertram; reproducible example and patch by
    Sebastian Meyer in PR#16662.)
  * boxplot() now also accepts calls for labels such as ylab, the
    same as plot().  (Reported by Marius Hofert.)
  * The help page for xtabs() now correctly states that addNA is
    setting na.action = na.pass among others.  (Reported as PR#17770
    by Thomas Soeiro.)
  * The R CMD check &lt;pkg&gt; gives a longer and more comprehensible
    message when DESCRIPTION misses dependencies, e.g., in Imports:.
    (Thanks to the contributors of PR#17179.)
  * update.default() now calls the generic update() on the formula to
    work correctly for models with extended formulas.  (As reported
    and suggested by Neal Fultz in PR#17865.)
  * The horizontal position of leaves in a dendrogram is now correct
    also with center = FALSE.  (PR#14938, patch from Sebastian
    Meyer.)
  * all.equal.POSIXt() no longer warns about and subsequently ignores
    inconsistent "tzone" attributes, but describes the difference in
    its return value (PR#17277).  This check can be disabled _via_
    the new argument check.tzone = FALSE as suggested by Sebastian
    Meyer.
  * as.POSIXct() now populates the "tzone" attribute from its tz
    argument when x is a logical vector consisting entirely of NA
    values.
  * x[[2^31]] &lt;- v now works.  (Thanks to the report and patch by
    Suharto Anggono in PR#17330.)
  * In log-scale graphics, axis() ticks and label positions are now
    computed more carefully and symmetrically in their range,
    typically providing _more_ ticks, fulfilling wishes in PR#17936.
    The change really corresponds to an improved axisTicks() (package
    grDevices), potentially influencing grid and lattice, for
    example.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now correct to at
    least five digits where it was catastrophically wrong,
    previously.
  * sum(df) and similar "Summary"- and "Math"-group member functions
    now work for data frames df with logical columns, notably also of
    zero rows.  (Reported to R-devel by Martin "b706".)
  * unsplit() had trouble with tibbles due to unsound use of rep(NA,
    len)-indexing, which should use NA_integer_ (Reported to R-devel
    by Mario Annau.)
  * pnorm(x, log.p = TRUE) underflows to -Inf slightly later.
  * show(&lt;hidden S4 generic&gt;) prints better and without quotes for
    non-hidden S4 generics.
  * read.table() and relatives treated an "NA" column name as missing
    when check.names = FALSE PR#18007.
  * Parsing strings containing UTF-16 surrogate pairs such as
    "\uD834\uDD1E" works better on some (uncommon) platforms.
    sprintf("%X", utf8ToInt("\uD834\uDD1E")) should now give "1D11E"
    on all platforms.
  * identical(x,y) is no longer true for differing DOTSXP objects,
    fixing PR#18032.
  * str() now works correctly for DOTSXP and related exotics, even
    when these are doomed.
    Additionally, it no longer fails for lists with a class and
    "irregular" method definitions such that e.g. lapply(*) will
    necessarily fail, as currently for different igraph objects.
  * Too long lines in environment files (e.g. Renviron) no longer
    crash R. This limit has been increased to 100,000 bytes.
    (PR#18001.)
  * There is a further workaround for FreeType giving incorrect
    italic font faces with cairo-based graphics devices on macOS.
  * add_datalist(*, force = TRUE) (from package tools) now actually
    updates an existing data/datalist file for new content.  (Thanks
    to a report and patch by Sebastian Meyer in PR#18048.)
  * cut.Date() and cut.POSIXt() could produce an empty last interval
    for breaks = "months" or breaks = "years".  (Reported as PR#18053
    by Christopher Carbone.)
  * Detection of the encoding of 'regular' macOS locales such as
    en_US (which is UTF-8) had been broken by a macOS change:
    fortunately these are now rarely used with en_US.UTF-8 being
    preferred.
  * sub() and gsub(pattern, repl, x, *) now keep attributes of x such
    as names() also when pattern is NA (PR#18079).
  * Time differences ("difftime" objects) get a replacement and a
    rep() method to keep "units" consistent.  (Thanks to a report and
    patch by Nicolas Bennett in PR#18066.)
  * The \RdOpts macro, setting defaults for \Sexpr options in an Rd
    file, had been ineffective since R 2.12.0: it now works again.
    (Thanks to a report and patch by Sebastian Meyer in PR#18073.)
  * mclapply and pvec no longer accidentally terminate parallel
    processes started before by mcparallel or related calls in
    package parallel (PR#18078).
  * grep and other functions for evaluating (extended) regular
    expressions handle in Unicode also strings not explicitly flagged
    UTF-8, but flagged native when running in UTF-8 locale.
  * Fixed a crash in fifo implementation on Windows (PR#18031).
  * Binary mode in fifo on Windows is now properly detected from
    argument open (PR#15600, PR#18031).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1622808000">- The line %{__install} -m 755 -d %{_infodir}
  no longer works in TW or Factory.
  But without that line it works everywhere. So this instruction
  was commented out of the spec file.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1628596800">- CHANGES IN R 4.1.1:
  NEW FEATURES:
  * require(pkg, quietly = TRUE) is quieter and in particular does
    not warn if the package is not found.
  DEPRECATED AND DEFUNCT:
  * Use of ftp:// URIs should be regarded as deprecated, with
    on-going support confined to method = "libcurl" and not routinely
    tested.  (Nowadays no major browser supports them.)
  * The non-default method = "internal" is deprecated for http:// and
    ftp:// URIs for both download.file and url.
  * On Windows, method = "wininet" is deprecated for http://,
    https:// and ftp:// URIs for both download.file and url.  (A
    warning is only given for ftp://.)
    For ftp:// URIs the default method is now "libcurl" if available
    (which it is on CRAN builds).
    method = "wininet" remains the default for http:// and https://
    URIs but if libcurl is available, using method = "libcurl" is
    preferred.
  INSTALLATION:
  * make check now works also without a LaTeX installation.  (Thanks
    to Sebastian Meyer's PR#18103.)
  BUG FIXES:
  * make check-devel works again in an R build configured with
  - -without-recommended-packages.
  * qnbinom(p, size, mu) for large size/mu is correct now in a range
    of cases (PR#18095); similarly for the (size, prob)
    parametrization of the negative binomial.  Also qpois() and
    qbinom() are better and or faster for extreme cases.  The
    underlying C code has been modularized and is common to all four
    cases of discrete distributions.
  * gap.axis is now part of the axis() arguments which are passed
    from bxp(), and hence boxplot().  (Thanks to Martin Smith's
    report and suggestions in PR#18109.)
  * .First and .Last can again be set from the site profile.
  * seq.int(from, to, *) and seq.default(..) now work better in large
    range cases where from-to is infinite where the two boundaries
    are finite.
  * all.equal(x,y) now returns TRUE correctly also when several
    entries of abs(x) and abs(y) are close to .Machine$double.xmax,
    the largest finite numeric.
  * model.frame() now clears the object bit when removing the class
    attribute of a value via na.action (PR#18100).
  * charClass() now works with multi-character strings on Windows
    (PR#18104, fixed by Bill Dunlap).
  * encodeString() on Solaris now works again in Latin-1 encoding on
    characters represented differently in UTF-8.  Support for
    surrogate pairs on Solaris has been improved.
  * file.show() on Windows now works with non-ASCII path names
    representable in the current native encoding (PR#18132).
  * Embedded R on Windows can now find R home directory via the
    registry even when installed only for the current user
    (PR#18135).
  * pretty(x) with finite x now returns finite values also in the
    case where the extreme x values are close in size to the maximal
    representable number .Machine$double.xmax.
    Also, it's been tweaked for very small ranges and when a boundary
    is close (or equal) to zero; e.g., pretty(c(0,1e-317)) no longer
    has negative numbers, currently still warning about a very small
    range, and pretty(2^-(1024 - 2^-1/(c(24,10)))) is more accurate.
  * The error message for not finding vignette files when weaving has
    correct file sizes now. (Thanks to Sebastian Meyer's PR#18154.)
  * dnbinom(20, &lt;large&gt;, 1) now correctly gives 0, and similar cases
    are more accurate with underflow precaution.  (Reported by Francisco Vera Alcivar in PR#18072.)</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635163200">- repaired https://bugzilla.suse.com/show_bug.cgi?id=1191380
  (rpmacros now go to rpmmacrodir)
- minor clean-ups in spec file</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635768000">- CHANGES IN R 4.1.2:
  C-LEVEL FACILITIES:
  * The workaround in headers R.h and Rmath.h (using namespace std;)
    for the Oracle Developer Studio compiler is no longer needed now
    C++11 is required so has been removed.  A couple more usages of
    log() (which should have been std::log()) with an int argument
    are reported on Solaris.
  * The undocumented limit of 4095 bytes on messages from the
    S-compatibility macros PROBLEM and MESSAGE is now documented and
    longer messages will be silently truncated rather than
    potentially causing segfaults.
  * If the R_NO_SEGV_HANDLER environment variable is non-empty, the
    signal handler for SEGV/ILL/BUS signals (which offers recovery
    user interface) is not set. This allows more reliable debugging
    of crashes that involve the console.
  DEPRECATED AND DEFUNCT:
  * The legacy S-compatibility macros PROBLEM, MESSAGE, ERROR, WARN,
    WARNING, RECOVER, ... are deprecated and will be hidden in R
    4.2.0. R's native interface of Rf_error and Rf_warning has long
    been preferred.
  BUG FIXES:
  * .mapply(F, dots, .) no longer segfaults when dots is not a list
    and uses match.fun(F) as always documented; reported by Andrew
    Simmons in PR#18164.
  * hist(&lt;Date&gt;, ...) and hist(&lt;POSIXt&gt;, ...)  no longer pass
    arguments for rect() (such as col and density) to axis().
    (Thanks to Sebastian Meyer's PR#18171.)
  * \Sexpr{ch} now preserves Encoding(ch). (Thanks to report and
    patch by Jeroen Ooms in PR#18152.)
  * Setting the RNG to "Marsaglia-Multicarry" e.g., by RNGkind(), now
    warns in more places, thanks to Andr'e Gillibert's report and
    patch in PR#18168.
  * gray(numeric(), alpha=1/2) no longer segfaults, fixing PR#18183,
    reported by Till Krenz.
  * Fixed dnbinom(x, size=&lt;very_small&gt;, .., log=TRUE) regression,
    reported by Martin Morgan.
  * as.Date.POSIXlt(x) now keeps names(x), thanks to Davis Vaughan's
    report and patch in PR#18188.
  * model.response() now strips an "AsIs" class typically, thanks to
    Duncan Murdoch's report and other discussants in PR#18190.
  * try() is considerably faster in case of an error and long call,
    as e.g., from some do.call().  Thanks to Alexander Kaever's
    suggestion posted to R-devel.
  * qqline(y = &lt;object&gt;) such as y=I(.), now works, see also
    PR#18190.
  * Non-integer mgp par() settings are now handled correctly in
    axis() and mtext(), thanks to Mikael Jagan and Duncan Murdoch's
    report and suggestion in PR#18194.
  * formatC(x) returns length zero character() now, rather than ""
    when x is of length zero, as documented, thanks to Davis
    Vaughan's post to R-devel.
  * removeSource(fn) now retains (other) attributes(fn).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1647000000">- CHANGES IN R 4.1.3:
  NEW FEATURES:
  * The default version of Bioconductor has been changed to 3.14.
    (This is used by setRepositories and the menus in GUIs.)
  UTILITIES:
  * R CMD check --as-cran has a workaround for a bug in versions of
    file up to at least 5.41 which mis-identify DBF files last
    changed in 2022 as executables.
  C-LEVEL FACILITIES:
  * The legacy S-compatibility macros SINGLE_* in R_ext/Constants.h
    (included by R.h) are deprecated and will be removed in R 4.2.0.
  BUG FIXES:
  * Initialization of self-starting nls() models with initialization
    functions following the pre-R-4.1.0 API (without the ...
    argument) works again for now, with a deprecation warning.
  * Fixed quoting of ~autodetect~ in Java setting defaults to avoid
    inadvertent user lookup due to leading ~, reported in PR#18231 by
    Harold Gutch.
  * substr(., start, stop) &lt;- v now treats _negative_ stop values
    correctly.  Reported with a patch in PR#18228 by Brodie Gaslam.
  * Subscripting an array x without dimnames by a
    length(dim(x))-column character matrix gave "random" non-sense,
    now an error; reported in PR#18244 by Mikael Jagan.
  * ...names() now matches names(list(...)) closely, fixing PR#18247.
  * all.equal(*, scale = s) now works as intended when length(s) &gt; 1,
    partly thanks to Michael Chirico's PR#18272.
  * print(x) for long vectors x now also works for named atomic
    vectors or lists and prints the correct number when reaching the
    getOption("max.print") limit; partly thanks to a report and
    proposal by Hugh Parsonage to the R-devel list.
  * all.equal(&lt;selfStart&gt;, *) no longer signals a deprecation
    warning.
  * reformulate(*, response=r) gives a helpful error message now when
    length(r) &gt; 1, thanks to Bill Dunlap's PR#18281.
  * Modifying globalCallingHandlers inside withCallingHandlers() now
    works or fails correctly, thanks to Henrik Bengtsson's PR#18257.
  * hist(&lt;Date&gt;, breaks = "days") and hist(&lt;POSIXt&gt;, breaks = "secs")
    no longer fail for inputs of length 1.
  * qbeta(.001, .9, .009) and similar cases now converge correctly
    thanks to Ben Bolker's report in PR#17746.
  * window(x, start, end) no longer wrongly signals "'start' cannot
    be after 'end'", fixing PR#17527 and PR#18291.
  * data() now checks that its (rarely used) list argument is a
    character vector - a couple of packages passed other types and
    gave incorrect results.
  * which() now checks its arr.ind argument is TRUE rather coercing
    to logical and taking the first element - which gave incorrect
    results in package code.
  * model.weights() and model.offset() more carefully extract their
    model components, thanks to Ben Bolker and Tim Taylor's R-devel
    post.
  * list.files(recursive = TRUE) now shows all broken symlinks
    (previously, some of them may have been omitted, PR#18296).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1650628800">- CHANGES IN R 4.2.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * The formula method of aggregate() now matches the generic in
    naming its first argument x (resolving PR#18299 by Thomas
    Soeiro).
    This means that calling aggregate() with a formula as a named
    first argument requires name formula in earlier versions of R and
    name x now, so portable code should not name the argument (code
    in many packages did).
  * Calling &amp;&amp; or || with either argument of length greater than one
    now gives a warning (which it is intended will become an error).
  * Calling if() or while() with a condition of length greater than
    one gives an error rather than a warning.  Consequently,
    environment variable _R_CHECK_LENGTH_1_CONDITION_ no longer has
    any effect.
  * Windows users should consult the WINDOWS section below for some
    profound changes including
  * Support for 32-bit builds has been dropped.
  * UTF-8 locales are used where available.
  * The default locations for the R installation and personal
    library folder have been changed.
    Thanks to Tomas Kalibera for months of work on the Windows port
    for this release.
  NEW FEATURES:
  * matrix(x, n, m) now warns in more cases where length(x) differs
    from n * m, as suggested by Abby Spurdle and Wolfgang Huber in
    Feb 2021 on the R-devel mailing list.
    This warning can be turned into an error by setting environment
    variable _R_CHECK_MATRIX_DATA_ to TRUE: R CMD check --as-cran
    does so unless it is already set.
  * Function file_test() in package utils gains tests for symlinks,
    readability and writability.
  * capabilities("libxml") is now false.
    The description of capabilities("http/ftp") now reflects that it
    refers to the default method, no longer the internal one.
  * simplify2array() gains an except argument for controlling the
    exceptions used by sapply().
  * Environment variables R_LIBS_USER and R_LIBS_SITE are both now
    set to the R system default if unset or empty, and can be set to
    NULL to indicate an empty list of user or site library
    directories.
  * The warning for axis()(-like) calls in cases of relatively small
    ranges (typically in log-scale situations) is slightly improved
    _and_ suppressed from explicit calls to .axisPars() as has always
    been the intention.
  * The contrasts setter function `contrasts&lt;-` gains an explicit
    default how.many = NULL rather than just using missing(how.many).
  * grid.pretty() gains a new optional argument n = 5.
  * There is a new function .pretty() with option bounds as a
    technical-utility version of pretty().  It and pretty() gain a
    new argument f.min with a better than back-compatible default.
  * Function grDevices::axisTicks() and related functions such as
    graphics::axis() work better, notably for the log scale; partly
    because of the pretty() improvements, but also because care is
    taken e.g., when ylim is finite but diff(ylim) is infinite.
  * nclass.FD() gains a digits option.
  * The R Mathlib internal C function bd0() (called indirectly from a
    dozen probability density and distribution functions such as
    dpois(), dbinom(), dgamma(), pgamma() _etc_) has been
    complemented by a more sophisticated and (mostly) more accurate C
    function ebd0(), currently called only by internal dpois_raw()
    improving accuracy for R level dpois() and potentially others
    calling it such as dnbinom(), dgamma() or pgamma().  (Thanks to
    Morten Welinder's PR#15628.)
  * write.ftable() gains sep = " " argument as suggested by Thomas
    Soeiro.
  * The names of the locale categories supported by R's
    Sys.getlocale() and Sys.setlocale() are now provided by variable
    .LC.categories in the base namespace.
  * The Date and POSIXt methods for hist() and the histogram method
    for plot() now also use the new default col = "lightgray" in
    consistency with the corresponding change to hist()'s default for
    R 4.0.0.
  * hist.default() gains new fuzz argument, and the histogram plot
    method no longer uses fractional axis ticks when displaying
    counts ("Frequency").
  * mapply() and hence Map() now also obey the "max-or-0-if-any"
    recycling rule, such that, e.g., Map(`+`, 1:3, 1[0]) is valid
    now.
  * as.character(&lt;obj&gt;) for "hexmode" or "octmode" objects now
    fulfils the important basic rule as.character(x)[j] ===
    as.character(x[j]).
  * The set utility functions, notably intersect() have been tweaked
    to be more consistent and symmetric in their two set arguments,
    also preserving a common mode.
  * substr(ch, start,end) &lt;- new now e.g., preserves names(ch); ditto
    for substring(), thanks to a patch from Brodie Gaslam.
  * plot(&lt;lm&gt;) gains a extend.ylim.f argument, in partial response to
    PR#15285; further PR#17784 is fixed thanks to several
    contributors and a patch by Elin Waring.  The Cook's dist
    contours get customizable via cook.col and cook.lty with a
    different default color and their legend is nicer by default and
    customizable via cook.legendChanges.
  * Attempting to subset an object that is not subsettable now
    signals an error of class notSubsettableError. The
    non-subsettable object is contained in the object field of the
    error condition.
  * Subscript-out-of-bounds errors are now signaled as errors of
    class subscriptOutOfBoundsError.
  * Stack-overflow errors are now signaled as errors inheriting from
    class stackOverflowError. See ?stackOverflowError for more
    details.
  * New partly experimental Sys.setLanguage() utility, solving the
    main problem of PR#18055.
  * gettext() and gettextf() get a new option trim = TRUE which when
    set to false allows translations for strings such as "Execution
    halted\n" typical for C code.
  * An experimental implementation of hash tables is now available.
    See ?hashtab for more details.
  * identical() gains a extptr.as.ref argument for requesting that
    external pointer objects be compared as reference objects.
  * reorder() gets an argument decreasing which it passes to sort()
    for level creation; based on the wish and patch by Thomas Soeiro
    in PR#18243.
  * as.vector() gains a data.frame method which returns a simple
    named list, also clearing a long standing 'FIXME' to enable
    as.vector(&lt;data.frame&gt;, mode="list").  This breaks code relying
    on as.vector(&lt;data.frame&gt;) to return the unchanged data frame.
  * legend() is now vectorized for arguments cex, x.intersp, and
    text.width.  The latter can now also be specified as a vector
    (one element for each column of the legend) or as NA for
    computing a proper column wise maximum value of strwidth(legend).
    The argument y.intersp can be specified as a vector with one
    entry for each row of the legend.
    legend() also gains new arguments title.cex and title.font.
    Thanks to Swetlana Herbrandt.
  * Deparsing no longer remaps attribute names dim, dimnames, levels,
    names and tsp to historical S-compatible names (which structure()
    maps back).
  * sample() and sample.int() have additional sanity checks on their
    size and n arguments.
    all.equal.numeric() gains a sanity check on its tolerance
    argument - calling all.equal(a, b, c) for three numeric vectors
    is a surprisingly common error.
    mean(na.rm =), rank(na.last =), barplot(legend.text =),
    boxplot(), contour(drawlabels =), polygon(border =) and
    methods::is(class2 =) have more robust sanity checks on their
    arguments.
    R CMD Rd2pdf (used by R CMD check) has a more robust sanity check
    on the format of \alias{} commands.
  * psigamma(x, deriv) for negative x now also works for deriv = 4
    and 5; their underlying C level dpsifn() is documented in
    'Writing R Extensions'.
  * The HTML help system now uses HTML5 (wish of PR#18149).
  * ks.test() now provides exact p-values also with ties and MC
    p-values in the two-sample (Smirnov) case.  By Torsten Hothorn.
  * ks.test() gains a formula interface, with y ~ 1 for the
    one-sample (Kolmogorov) test and y ~ group for the two-sample
    (Smirnov) test.  Contributed by Torsten Hothorn.
  * The return value from ks.test() now has class c("ks.test",
    "htest") - packages using try() need to take care to use
    inherits() and not == on the class.
  * New functions psmirnov(), qsmirnov() and rsmirnov() in package
    stats implementing the asymptotic and exact distributions of the
    two-sample Smirnov statistic.
  * iconv() now allows sub = "c99" to use C99-style escapes for UTF-8
    inputs which cannot be converted to encoding to.
  * In a forward pipe |&gt; expression it is now possible to use a named
    argument with the placeholder _ in the rhs call to specify where
    the lhs is to be inserted.  The placeholder can only appear once
    on the rhs.
  * The included LAPACK sources have been updated to version 3.10.0,
    except for the four Fortran 77 routines which 3.10.0 has
    re-implemented in Fortran 90 (where the older versions have been
    retained as the R build process does not support Fortran 90).
  * path.expand() and most other uses of tilde expansion now warn if
    a path would be too long if expanded.  (An exception is
    file.exists(), which silently returns false.)
  * trunc(&lt;Date&gt;, *) now supports units = "months" or "years" for
    consistency with the POSIXt method, thanks to Dirk Eddelbuettel's
    proposal in PR#18099.
  * list2DF() now checks that its arguments are of the same length,
    rather than use recycling.
  * The HTML help system has several new features: LaTeX-like math
    can be typeset using either KaTeX or MathJax, usage and example
    code is highlighted using Prism, and for dynamic help the output
    of examples and demos can be shown within the browser if the
    knitr package is installed. These features can be disabled by
    setting the environment variable _R_HELP_ENABLE_ENHANCED_HTML_ to
    a false value.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 15
    and so packages that provide graphics devices should be
    reinstalled.
  * The grid package now allows the user to specify a "vector" of
    pattern fills.  The fill argument to gpar() accepts a list of
    gradients and/or patterns and the functions linearGradient(),
    radialGradient(), and pattern() have a new group argument.
    Points grobs (data symbols) can now also have a pattern fill.
    The grobCoords() function now returns a more informative and
    complex result.
  * The grid package has new functions for drawing isolated groups:
    grid.group(), grid.define(), and grid.use().  These functions add
    compositing operators and affine transformations to R's graphics
    capabilities.
    The grid package also has new functions for stroking and filling
    paths: grid.stroke(), grid.fill(), and grid.fillStroke().
    A new function as.path() allows the user to specify the fill rule
    for a path that is to be used for clipping, stroking, or filling;
    available options are "winding" and "evenodd".  A new function
    as.mask() allows the user to specify the type of a mask;
    available options are "alpha" and "luminance".
    These new features are only supported so far (at most) on the
    Cairo-based graphics devices and on the pdf() device.
  * dev.capabilities() reports on device support for the new
    features.
  * par() now warns about unnamed non-character arguments to prevent
    misuse such as {usr &lt;- par("usr"); par(usr)}.
  INSTALLATION:
  * Facilities for accessing ftp:// sites are no longer tested
    (except _pro tem_ for curlGetHeaders()) as modern browsers have
    removed support.
  * R can now be built with DEFS = -DSTRICT_R_HEADERS .
  PACKAGE INSTALLATION:
  * R CMD INSTALL no longer tangles vignettes. This completes an R
    CMD build change in R 3.0.0 and affects packages built before R
    3.0.2. Such packages should be re-made with R CMD build to have
    the tangled R code of vignettes shipped with the tarball.
  * USE_FC_LEN_T will become the default: this uses the correct
    prototypes for Fortran BLAS/LAPACK routines called from C/C++,
    and requires adjustment of most such calls - see 'Writing R
    Extensions' SS6.6.2.  (This has been supported since R 3.6.2.)
  * Package installation speed for packages installed with
    keep.source has been improved. This resolve the issue reported by
    Ofek Shilon in PR#18236.
  UTILITIES:
  * R CMD check can optionally report files/directories left behind
    in home, /tmp (even though TMPDIR is set) and other directories.
    See the "R Internals" manual for details.
  * R CMD check now reports byte-compilation errors during
    installation.  These are not usually fatal but may result in
    parts of the package not being byte-compiled.
  * _R_CHECK_DEPENDS_ONLY_ can be applied selectively to examples,
    tests and/or vignettes in R CMD check: see the "R Internals"
    manual.
  * _R_CHECK_SRC_MINUS_W_IMPLICIT_ now defaults to true: recent
    versions of Apple clang on macOS have made implicit function
    declarations in C into a compilation error.
  * R CMD check --as-cran makes use of the environment variable
    AUTORECONF.  See the "R Internals" manual SS8 for further details.
  * R CMD check --use-valgrind also uses valgrind when re-building
    vignettes as some non-Sweave vignettes unhelpfully comment out
    all their code when R CMD check runs vignettes.
  * Errors in re-building vignettes (unless there are LaTeX errors)
    are reported by R CMD check as ERROR rather than WARNING when
    running vignettes has been skipped (as it frequently is in CRAN
    checks and by --as-cran).
  * R CMD Rd2pdf gains a --quiet option that is used by R CMD build
    when building the PDF package manual.
  * R CMD Rd2pdf now always runs LaTeX in batch mode, consistent with
    Texinfo &gt;= 6.7. The --batch option is ignored.
  * R CMD build and R CMD check now include the Rd file name and line
    numbers in the error message of an \Sexpr evaluation failure.
  * For packages using the \doi Rd macro (now an install-time \Sexpr)
    but no other dynamic Rd content, R CMD build now produces a
    smaller tarball and is considerably faster - skipping temporary
    package installation.
  C-LEVEL FACILITIES:
  * The non-API header R_ext/R-ftp-http.h is no longer provided, as
    the entry points it covered are now all defunct.
  * A number of non-API declarations and macro definitions have been
    moved from the installed header Rinternals.h to the internal
    header Defn.h. Packages that only use entry points and
    definitions documented to be part of the API as specified in
    'Writing R Extensions' SS6 should not be affected.
  * The macro USE_RINTERNALS no longer has any effect when compiling
    package code.  Packages which also use R_NO_REMAP will need to
    ensure that the remapped names are used for calls to API
    functions that were formerly also made available as macros.
  * The deprecated legacy S-compatibility macros PROBLEM, MESSAGE,
    ERROR, WARN, WARNING, RECOVER, ... are no longer defined in
    R_exts/RS.h (included by R.h).  Replace these by calls to
    Rf_error and Rf_warning (defined in header R_ext/Error.h included
    by R.h).
    Header R_ext/RS.h no longer includes R_ext/Error.h.
  * Header R_ext/Constants.h (included by R.h) when included from C++
    now includes the C++ header cfloat rather than the C header
    float.h (now possible as C++11 is required).
  * The legacy S-compatibility macros DOUBLE_* in R_ext/Constants.h
    (included by R.h) are deprecated.
  * The deprecated S-compatibility macros SINGLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * R_Calloc, R_Free and R_Realloc are preferred to their unprefixed
    forms and error messages now use the prefix. These forms were
    introduced in R 3.4.0 and are available even when
    STRICT_R_HEADERS is defined.
  * rmultinom has been documented in 'Writing R Extensions' SS6 so is
    now part of the R API.
  * Similarly, Rtanpi, called from R level tanpi() is now part of the
    R API.
  * The long-deprecated, undocumented and non-API entry point call_R
    is no longer declared in R_ext/RS.h (included by R.h).
  * The header S.h which has been unsupported since Jan 2016 has been
    removed.  Use R.h instead.
  DEPRECATED AND DEFUNCT:
  * The (non-default and deprecated) method = "internal" for
    download.file() and url() no longer supports http:// nor ftp://
    URIs.  (It is used only for file:// URIs.)
    On Windows, download.file(method = "wininet") no longer supports
    ftp:// URIs.  (It is no longer the default method, which is
    "libcurl" and does.)
    On Windows, the deprecated method = "wininet" now gives a warning
    for http:// and https:// URIs for both download.file() and url().
    (It is no longer the default method.)
  * On Windows, the command-line option --max-mem-size and
    environment variable R_MAX_MEM_SIZE are defunct.  The memory
    allocation limit was important for 32-bit builds, but these are
    no longer supported.
  * default.stringsAsFactors() is now formally deprecated, where that
    was only mentioned on its regular help page, previously.  So it
    now gives a warning if called.
  * unix.time() is defunct now; it had been deprecated since R 3.4.0.
  BUG FIXES:
  * Setting digits = 0 in format(), print.default() (and hence
    typically print()) or options() is again invalid.  Its behaviour
    was platform-dependent, and it is unclear what "zero significant
    digits" should mean (PR#18098).
  * Messages from C code in the cairo section of package grDevices
    are now also offered for translation, thanks to Michael Chirico's
    PR#18123.
  * mean(x) with finite x now is finite also without "long.double"
    capability.
  * R CMD Rd2pdf no longer leaves an empty build directory behind
    when it aborts due to an already existing output file.  (Thanks
    to Sebastian Meyer's PR#18141.)
  * density(x, weights = w, na.rm = TRUE) when anyNA(x) is true, now
    removes weights "in parallel" to x, fixing PR#18151, reported by
    Matthias Gondan.  Additionally, it gets a subdensity option.
  * Conversion of \Sexpr[]{&lt;expR&gt;} to LaTeX or HTML no longer
    produces long blocks of empty lines when &lt;expR&gt; itself contains
    several lines all producing empty output.  Thanks to a report and
    patch by Ivan Krylov posted to R-devel.
  * R CMD build no longer fails if a package vignette uses child
    documents and inst/doc exists.  (Thanks to Sebastian Meyer's
    PR#18156.)
  * When an R documentation ('help' source) file man/foo.Rd in a
    package has \donttest{..} examples with a syntax error, it is now
    signalled as ERROR and with correct line numbers relating to the
  * -Ex.R file, thanks to Duncan Murdoch and Sebastian Meyer's
    reports and patch proposals in PR#17501.
  * Improved determination of the correct translation domain in
    non-base packages, addressing the combination of PR#18092 and
    PR#17998 (#c6) with reports and _augmented_ patch #2904 by
    Suharto Anggono.
    Note that "R-base" is no longer the default domain e.g., for
    top-level calls to gettext(); rather translation needs explicit
    domain = * specification in such cases.
  * identical(attrib.as.set=FALSE) now works correctly with data
    frames with default row names (Thanks to Charlie Gao's PR#18179).
  * txtProgressBar() now enforces a non-zero width for argument char,
    without which no progress can be visible.
  * dimnames(table(d)) is more consistent in the case where d is a
    list with a single component, thanks to Thomas Soeiro's report to
    R-devel.
    Further, table(d1, d2) now gives an error when d1 and d2 are data
    frames as suggested by Thomas in PR#18224.
  * Fix for drawing semi-transparent lines and fills on the native
    Windows graphics device (PR#18219 and PR#16694).  Thanks to Nick
    Ray for helpful diagnosis on Bugzilla.
  * The deparser now wraps sub-expressions such as if(A) ..  with
    parentheses when needed; thanks to Duncan Murdoch's PR#18232 and
    Lionel Henry's patches there.
  * remove.packages() no longer tries to uninstall Priority: base
    packages, thanks to a report and suggestions by Colin Fay in
    PR#18227.
  * win.metafile() now has xpinch and ypinch arguments so that the
    user can override Windows' (potentially wrong) guess at device
    dimensions.
  * x[i] and x[[i]] for non-integer i should now behave in all cases
    as always documented: the index used is equivalent to
    as.integer(i) unless that would overflow where trunc(i) is used
    instead; thanks to Suharto Anggono's report and patch proposals
    in PR#17977.
  * asOneSidedFormula() now associates the resulting formula with the
    global environment rather than the evaluation environment created
    for the call.
  * &lt;bibentry&gt;$name now matches the field name case-insensitively,
    consistent with bibentry() creation and the replacement method.
  * cbind() failed to detect some length mismatches with a mixture of
    time-series and non-time-series inputs.
  * The default LaTeX style file Sweave.sty used by the RweaveLatex
    driver no longer loads the obsolete ae package; thanks to a
    report by Thomas Soeiro in PR#18271.  Furthermore, it now skips
    \usepackage[T1]{fontenc} for engines other than pdfTeX (if
    detected) or if the new [nofontenc] option is used.
  * smooth.spline() now stores its logical cv argument more safely,
    fixing a rare bug when printing, and also stores n.
  * smooth.spline(x,y,*) now computes the cv.crit statistic
    correctly, also when is.unsorted(x), fixing PR#18294.
  * The data.frame method of rbind() now warns when binding
    not-wholly-recycling vectors, by analogy to the default method
    (for matrices).
  * setAs() finds the correct class for name to when multiple
    packages define a class with that name. Thanks to Gabor Csardi
    for the report.
  * Fix for detaching a package when two classes of the same name are
    present in method signatures for the same generic. Thanks to
    Gabor Csardi for the report.
  * match.arg("", c("", "a", "B")) gives a better error message, in
    part from PR#17959, thanks to Elin Waring.
  * R CMD Sweave --clean no longer removes pre-existing files or
    subdirectories (PR#18242).
  * The quartz() device no longer splits polylines into subpaths.
    That has caused narrowly-spaced lines with many points to always
    look solid even when dashed line type was used due to dash phase
    restarts.
  * Deparsing constructs such as quote(1 + `!`(2) + 3) works again as
    before R 3.5.0, thanks to the report and patch in PR#18284 by
    Suharto Anggono.
  * as.list(f) for a factor f now keeps names(f), fixing PR#18309.
  * qbeta(.001, .9, .009) and analogous qf() calls now return a
    correct value instead of NaN or wrongly 1, all with a warning;
    thanks to the report by Ludger Goeminne in PR#18302.
  * plot.lm() failed to produce the plot of residuals vs.  factor
    levels (i.e., which=5 when leverages are constant) for models
    with character predictors (PR#17840).
  * interaction.plot(..., xtick = TRUE) misplaced the x-axis line
    (PR#18305).
  * Not strictly fixing a bug, format()ing and print()ing of
    non-finite Date and POSIXt values NaN and +/-Inf no longer show
    as NA but the respective string, e.g., Inf, for consistency with
    numeric vector's behaviour, fulfilling the wish of PR#18308.
  * R CMD check no longer runs test scripts generated from
    corresponding .Rin files twice and now signals an ERROR if
    processing an .Rin script fails.
  * tools::Rd2txt() used for plain-text help pages now renders \hrefs
    (if tools::Rd2txt_options(showURLs = TRUE)) and \urls with
    percent-encoding and standards-compliant delimiting style (angle
    brackets and no URL: prefix).  \email is now rendered with a
    mailto: prefix.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1655985600">- CHANGES IN R 4.2.1:
  NEW FEATURES:
  * New function utils::findCRANmirror() to find out if a CRAN mirror
    has been selected, otherwise fallback to the main site.  This
    behaves in the same way as tools::CRAN_package_db() and is
    intended for packages wishing to access CRAN for purposes other
    than installing packages.
    The need for this was shown by a day when the main CRAN website
    was offline and a dozen or so packages which had its URL
    hardcoded failed their checks.
  INSTALLATION on a UNIX-ALIKE:
  * The libraries searched for by --with-blas (without a value) now
    include BLIS (after OpenBLAS but before ATLAS).  And on macOS,
    the Accelerate framework (after ATLAS).  (This is patterned after
    the AX_BLAS macro from the Autoconf Archive.)
  * The included LAPACK sources have been updated to 3.10.1.
  UTILITIES:
  * The (full path to) the command tidy to be used for HTML
    validation can be set by environment variable R_TIDYCMD.
  * Setting environment variable _R_CHECK_RD_VALIDATE_RD2HTML_ to a
    false value will override R CMD check --as-cran and turn off HTML
    validation.  This provides a way to circumvent a problematic
    tidy.
    The 2006 version that ships with macOS is always skipped.
  C-LEVEL FACILITIES:
  * The undocumented legacy declarations of Sint, Sfloat, SINT_MAX
    and SINT_MIN in header R.h are deprecated.
  BUG FIXES:
  * fisher.test(d) no longer segfaults for "large" d; fixing PR#18336
    by preventing/detecting an integer overflow reliably.
  * tar(., files=*) now produces correctly the warning about invalid
    uid or gid of files, fixing PR#18344, reported by Martin Morgan.
  * tk_choose.files() with multi = FALSE misbehaved on paths
    containing spaces (PR#18334) (regression introduced in R 4.0.0).
  * sort(x, partial = ind, *) now works correctly notably for the
    non-default na.last = FALSE or TRUE, fixing PR#18335 reported by
    James Edwards.
  * Environment variable _R_CHECK_XREFS_REPOSITORIES_ is only used
    for checking .Rd cross-references in R CMD check (as documented)
    and not for other uses looking for a CRAN mirror.
  * The search for a CRAN mirror when checking packages now uses
    getOption("repos") if that specifies a CRAN mirror, even when it
    does not also specify all three Bioconductor repositories (as was
    previously required).
  * The HTML code generated by tools::Rd2HTML() has been improved to
    pass tidy 5.8.0.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1667217600">- CHANGES IN R 4.2.2:
  NEW FEATURES:
  * tools::Rdiff(useDiff = TRUE) checks for the presence of an
    external diff command and switches to useDiff = FALSE if none is
    found.  This allows R CMD Rdiff to always work.
  * On Windows, environment variable R_LIBCURL_SSL_REVOKE_BEST_EFFORT
    can be used to switch to only 'best-effort' SSL certificate
    revocation checks with the default "libcurl" download method.
    This reduces security, but may be needed for downloads to work
    with MITM proxies (PR#18379).
  * (macOS) The run-time check for libraries from XQuartz for X11 and
    Tcl/Tk no longer uses otool from the Apple Developer Tools
    (PR#18400).
  * The LaTeX style for producing the PDF manuals, Rd.sty, now loads
    the standard amsmath, amsfonts and amssymb packages for greater
    coverage of math commands in the Rd \eqn and \deqn macros.  The
    \mathscr LaTeX command is also provided (via the mathrsfs
    package, if available, or the amsfonts bundle otherwise),
    fulfilling the wish of PR#18398.
  * (Windows) The default format of readClipboard() and
    writeClipboard() has been changed to 13 (CF_UNICODETEXT).
  INSTALLATION on a UNIX-ALIKE:
  * The PDF manuals (if built) can be compacted by the new target
    make compact-pdf (at the top level or in directory doc/manual).
  * There is now configure support for LLVM clang 15 on Linux, which
    defaults to position-independent (PIE) executables whereas
    gfortran does not.
  * Many small changes to ease compilation (and suppress warnings)
    with LLVM clang 15.
  BUG FIXES:
  * Rscript -e would fail if stdin were closed (Reported by Henrik
    Bengtsson.)
  * qt(*, log.p=TRUE) in outer tails no longer produces NaN in its
    final steps, thus fixing PR#18360.
  * tools::Rd2latex() now escapes hashes and ampersands when writing
    URLs, fixing LaTeX errors with such URLs in \tabular.
  * When isGeneric(f, fdef=*) is used with mismatching names, the
    warning is better understandable; reported (with fix) in PR#18370
    by Gabe Becker.
  * poly(x, n) now works again (and is now documented) when x is a
    "Date" or "POSIXct" object, or of another class while fulfilling
    mode(x) == "numeric".  This also enables poly(x, *, raw=TRUE) for
    such variables.  Reported by Michael Chirico to R-devel.
  * write.table(), write.csv() and write.csv2() restore their
    numerical precision (internal equivalent of digits = 15) after an
    interrupt (PR#18384).
  * One can now read also byte FF from a clipboard connection
    (PR#18385).
  * source("") and source(character()) now give more helpful error
    messages.
  * R CMD check --as-cran set _R_CHECK_TIMINGS_ too late to have the
    intended effect.
  * as.POSIXlt(x) now also works with very large dates x, fixing
    PR#18401 reported by Hannes M"uhleisen.
  * Files can now be extracted even from very large zip archives
    (PR#18390, thanks to Martin Jakt).
  * Non-finite objects of class "POSIXlt" are now correctly coerced
    to classes "Date" and "POSIXct"; following up on the extension to
    format() them correctly.
  * Added methods for is.finite(), is.infinite() and is.nan() for
    "POSIXlt" date-time objects.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1678881600">- CHANGES IN R 4.2.3:
  C-LEVEL FACILITIES:
  * The definition of DL_FUNC in R_ext/Rdynload.h has been changed to
    be fully C-compliant.  This means that functions loaded _via_ for
    example R_GetCCallable need to be cast to an appropriate type if
    they have any arguments.
  * .Machine has a new element sizeof.time_t to identify old systems
    with a 32-bit type and hence a limited range of date-times (and
    limited support for dates millions of years from present).
  PACKAGE INSTALLATION:
  * (Windows) The default C++ standard had accidentally been left at
    C++11 when it was changed to C++14 on Unix.
  BUG FIXES:
  * As "POSIXlt" objects may be "partially filled" and their list
    components meant to be recycled, length() now is the length of
    the longest component.
  * as.POSIXlt.Date() could underflow for dates in the far past (more
    than half a million years BCE).
  * as.Date.POSIXlt(x) would return "1970-01-01" instead of NA in R
    4.2.2, e.g., for
    x &lt;- as.POSIXlt(c("2019-01-30","2001-1-1"))
    x$mon &lt;- c(0L, NA); as.Date(x)
  * R CMD check failed to apply enabled _R_CHECK_SUGGESTS_ONLY_ to
    examples and vignettes (regression in R 4.2.0).
  * R CMD check did not re-build vignettes in separate processes by
    default (regression in R 4.2.0).
  * Running examples from HTML documentation now restores previous
    knitr settings and options (PR#18420).
  * Quartz: fonts are now located using Core Graphics API instead of
    deprecated ATS which is no longer supported in the macOS 13 SDK
    (PR#18426).  This also addresses an issue where the currently
    used font in the Quartz device context was not correctly
    retained.
  * (Windows) Math symbols in text drawing functions are again
    rendered correctly (PR#18440).  This fixes a regression in R
    4.2.1 caused by a fix in PR#18382 which uncovered an issue in
    GraphApp due to which the symbol charset was not used with TT
    Symbol font face.
  * (Windows) Installing a package with a src/Makefile.{win,ucrt}
    file includes ~/.R/Makevars.win64 in the search for user
    makevars, as documented in "R Installation and Administration"
    and done for packages with a src/Makevars.{win,ucrt} file.
  * format(&lt;POSIXlt_w/_unbalanced_sec&gt;, "....%OS&lt;n&gt;") with n &gt; 0 no
    longer accidentally uses the unbalanced seconds, thanks to
    Suharto Anggono's report (including patch) in PR#18448.
  * solve.default(a, b) works around issues with some versions of
    LAPACK when a contains NA or NaN values.
  * When UseMethod() cannot dispatch, it no longer segfaults
    producing the error message in case of a long class(), thanks to
    Joris Vankerschaver's report (including patch) in PR#18447.
  * When example(foo, ..) produces graphics on an interactive device
    it needs to open itself, it now leaves devAskNewPage() unchanged
    even when it was FALSE, thus fixing a 14 years old '&lt;FIXME&gt;'.
  * packageDescription() again catches errors from encoding
    conversions. This also fixes broken packageVersion() in C locale
    on systems where iconv does not support transliteration.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1681128000">- add patch to build with libcurl &gt;= 8</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1682078400">- CHANGES IN R 4.3.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Calling &amp;&amp; or || with LHS or (if evaluated) RHS of length greater
    than one is now always an error, with a report of the form
    'length = 4' in coercion to 'logical(1)'
    Environment variable _R_CHECK_LENGTH_1_LOGIC2_ no longer has any
    effect.
  NEW FEATURES:
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.10.1.  (This caused some platform-dependent
    changes to package check output.)  And then to the sources from
    LAPACK version 3.11.0 (with changes only to double complex
    subroutines).
  * The included LAPACK sources have been updated to include the four
    Fortran 90 routines rather than their Fortran 77 predecessors.
    This may give some different signs in SVDs or
    eigendecompositions..  (This completes the transition to LAPACK
    3.10.x begun in R 4.2.0.)
  * The LAPACK sources have been updated to version 3.11.0.  (No new
    subroutines have been added, so this almost entirely bug fixes:
    Those fixes do affect some computations with NaNs, including R's
    NA.)
  * The parser now signals _classed_ errors, notably in case of the
    pipe operator |&gt;.  The error object and message now give line and
    column numbers, mostly as proposed and provided by Duncan Murdoch
    in PR#18328.
  * toeplitz() is now generalized for asymmetric cases, with a
    toeplitz2() variant.
  * xy.coords() and xyz.coords() and consequently, e.g., plot(x,y,
    log = "y") now signal a _classed_ warning about negative values
    of y (where log(.) is NA).  Such a warning can be specifically
    suppressed or caught otherwise.
  * Regular expression functions now check more thoroughly whether
    their inputs are valid strings (in their encoding, e.g. in
    UTF-8).
  * The performance of grep(), sub(), gsub() and strsplit() has been
    improved, particularly with perl = TRUE and fixed = TRUE.  Use of
    useBytes = TRUE for performance reasons should no longer be
    needed and is discouraged: it may lead to incorrect results.
  * apropos() gains an argument dot_internals which is used by the
    completion (help(rcompgen)) engine to also see base internals
    such as .POSIXct().
  * Support in tools::Rdiff() for comparing uncompressed PDF files is
    further reduced - see its help page.
  * qqplot(x, y, ...) gains conf.level and conf.args arguments for
    computing and plotting a confidence band for the treatment
    function transforming the distribution of x into the distribution
    of y (Switzer, 1976, _Biometrika_). Contributed by Torsten
    Hothorn.
  * Performance of package_dependencies() has been improved for cases
    when the number of dependencies is large.
  * Strings newly created by gsub(), sub() and strsplit(), when any
    of the inputs is marked as "bytes", are also marked as "bytes".
    This reduces the risk of creating invalid strings and accidental
    substitution of bytes deemed invalid.
  * Support for readLines(encoding = "bytes") has been added to allow
    processing special text files byte-by-byte, without creating
    invalid strings.
  * iconv(from = "") now takes into account any declared encoding of
    the input elements and uses it in preference to the native
    encoding.  This reduces the risk of accidental creation of
    invalid strings, particularly when different elements of the
    input have different encoding (including "bytes").
  * Package repositories in getOption("repos") are now initialized
    from the repositories file when utils is loaded (if not already
    set, e.g., in .Rprofile).  (From a report and patch proposal by
    Gabriel Becker in PR#18405.)
  * compactPDF() gets a verbose option.
  * type.convert() and hence read.table() get new option tryLogical =
    TRUE with back compatible default.  When set to false, converts
    "F" or "T" columns to character.
  * Added new unit prefixes "R" and "Q" for abbreviating
    (unrealistically large) sizes beyond 10^{27} in standard = "SI",
    thanks to Henrik Bengtsson's PR#18435.
  * as.data.frame()'s default method now also works fine with atomic
    objects inheriting from classes such as "roman", "octmode" and
    "hexmode", such fulfilling the wish of PR#18421, by Benjamin
    Feakins.
  * The as.data.frame.vector() utility now errors for wrong-length
    row.names.  It warned for almost six years, with "Will be an
    error!".
  * sessionInfo() now also contains La_version() and reports codepage
    and timezone when relevant, in both print() and toLatex() methods
    which also get new option tzone for displaying timezone
    information when locale = FALSE.
  * New function R_compiled_by() reports the C and Fortran compilers
    used to build R, if known.
  * predict(&lt;lm&gt;, newdata = *) no longer unnecessarily creates an
    offset of all 0s.
  * solve() for complex inputs now uses argument tol and by default
    checks for 'computational singularity' (as it long has done for
    numeric inputs).
  * predict(&lt;rank-deficient lm&gt;, newdata=*) now obeys a new argument
    rankdeficient, with new default "warnif", warning only if there
    are non-estimable cases in newdata.  Other options include
    rankdeficient = "NA", predicting NA for non-estimable newdata
    cases.  This addresses PR#15072 by Russ Lenth and is based on his
    original proposal and discussions in PR#16158 also by David Firth
    and Elin Waring.  Still somewhat experimental.
  * Rgui console implementation now works better with the NVDA screen
    reader when the full blinking cursor is selected.  The underlying
    improvements in cursor handling may help also other screen
    readers on Windows.
  * The drop-field control in GraphApp can now be left with the TAB
    key and all controls can be navigated in the reverse order using
    the Shift+TAB key, improving accessibility of the Rgui
    configuration editor.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now fully accurate
    (instead of to "only" minimally five digits).
  * demo(error.catching) now also shows off withWarnings() and
    tryCatchWEMs().
  * As an experimental feature the placeholder _ can now also be used
    in the rhs of a forward pipe |&gt; expression as the first argument
    in an extraction call, such as _$coef. More generally, it can be
    used as the head of a chain of extractions, such as _$coef[[2]].
  * Spaces in the environment variable used to choose the R session's
    temporary directory (TMPDIR, TMP and TEMP are tried in turn) are
    now fatal.  (On Windows the 'short path' version of the path is
    tried and used if that does not contain a space.)
  * all.equal.numeric() gets a new optional switch giveErr to return
    the numeric error as attribute.  Relatedly,
    stopifnot(all.equal&lt;some&gt;(a, b, ..)) is as "smart" now, as
    stopifnot(all.equal(....)) has been already, thus allowing
    customized all.equal&lt;Some&gt;() wrappers.
  * R on Windows is now able to work with path names longer than 260
    characters when these are enabled in the system (requires at
    least Windows 10 version 1607).  Packages should be updated to
    work with long paths as well, instead of assuming PATH_MAX to be
    the maximum length.  Custom front-ends and applications embedding
    R need to update their manifests if they wish to allow this
    feature.  See
    &lt;https://blog.r-project.org/2023/03/07/path-length-limit-on-windows&gt;
    for more information.
  * 'Object not found' and 'Missing argument' errors now give a more
    accurate error context. Patch provided by Lionel Henry in
    PR#18241.
  * The @ operator is now an S3 generic. Based on contributions by
    Tomasz Kalinowski in PR#18482.
  * New generic chooseOpsMethod() provides a mechanism for objects to
    resolve cases where two suitable methods are found for an Ops
    Group Generic. This supports experimenting with alternative
    object systems. Based on contributions by Tomasz Kalinowski in
    PR#18484.
  * inherits(x, what) now accepts values other than a simple
    character vector for argument what. A new generic, nameOfClass(),
    is called to resolve the class name from what. This supports
    experimenting with alternative object systems. Based on
    contributions by Tomasz Kalinowski in PR#18485.
  * Detection of BLAS/LAPACK in use (sessionInfo()) with FlexiBLAS
    now reports the current backend.
  * The "data.frame" method for subset() now warns about extraneous
    arguments, typically catching the use of = instead of == in the
    subset expression.
  * Calling a:b when numeric a or b is longer than one may now be
    made into an error by setting environment variable
    _R_CHECK_LENGTH_COLON_ to a true value, along the proposal in
    PR#18419 by Henrik Bengtsson.
  * density(x, weights = *) now warns if automatic bandwidth
    selection happens without using weights; new optional warnWbw may
    suppress the warning.  Prompted by Christoph Dalitz' PR#18490 and
    its discussants.
  * rm(list = *) is faster and more readable thanks to Kevin Ushey's
    PR#18492.
  * The plot.lm() function no longer produces a normal Q-Q plot for
    GLMs. Instead it plots a half-normal Q-Q plot of the absolute
    value of the standardized deviance residuals.
  * The print() method for class "summary.glm" no longer shows
    summary statistics for the deviance residuals by default.  Its
    optional argument show.residuals can be used to show them if
    required.
  * The tapply() function now accepts a data frame as its X argument,
    and allows INDEX to be a formula in that case. by.data.frame()
    similarly allows INDICES to be a formula.
  * The performance of df[j] &lt;- value (including for missing j) and
    write.table(df) has been improved for data frames df with a large
    number of columns.  (Thanks to Gabriel Becker's PR#18500,
    PR#18503 and discussants, prompted by a report from Toby Dylan
    Hocking on the R-devel mailing list.)
  * The matrix multiply operator %*% is now an S3 generic, belonging
    to new group generic matrixOps.  From Tomasz Kalinowski's
    contribution in PR#18483.
  * New function array2DF() to convert arrays to data frames,
    particularly useful for the list arrays created by tapply().
  DATES and TIMES:
  * On platforms where (non-UTC) datetimes before 1902 (or before
    1900 as with system functions on recent macOS) are guessed by
    extrapolating time zones from 1902-2037, there is a warning at
    the first use of extrapolation in a session.  (As all time zones
    post 2037 are extrapolation, we do not warn on those.)
  * (Platforms using --with-internal-tzone, including Windows and by
    default macOS). How years are printed in dates or date-times can
    be controlled by environment variable R_PAD_YEARS_BY_ZERO.  The
    default remains to pad to 4 digits by zeroes, but setting value
    no gives no padding (as used by default by glibc).
  * strftime() tries harder to determine the offset for the "%z"
    format, and succeeds on the mainstream R platforms.
  * strftime() has a limit of 2048 bytes on the string produced -
    attempting to exceed this is an error.  (Previously it silently
    truncated at 255 bytes.)
  * sessionInfo() records (and by default prints) the system time
    zone as part of the locale information.  Also, the source
    (system/internal) of the date-time conversion and printing
    functions.
  * Objects of class "POSIXlt" created in this version of R always
    have 11 components: component zone is always set, and component
    gmtoff is set for times in UTC and usually set on the (almost
    all) platforms which have C-level support, otherwise is NA.
  * There are comprehensive validity checks on the structure of
    objects of class "POSIXlt" when converting (including formatting
    and printing).  (This avoids mis-conversions of hand-crafted
    objects.)
  * There is some support for using the native date-time routines on
    macOS: this is only viable on recent versions (e.g. 12.6 and 13)
    and does get wrong some historical changes (before 1900, during
    WWII).  Use of --with-internal-tzone remains the default.
  * as.POSIXct(&lt;numeric&gt;) and as.POSIXlt(.) (without specifying
    origin) now work.  So does as.Date(&lt;numeric&gt;).
  * as.Date.POSIXct(., tz) now treats several tz values, notably
    "GMT" as equivalent to "UTC", proposed and improved by Michael
    Chirico and Joshua Ulrich in PR#17674.
  * Experimental balancePOSIXlt() utility allows using "ragged" and
    or out-of-range "POSIXlt" objects more correctly, e.g., in
    subsetting and subassignments.  Such objects are now documented.
    More experimentally, a "POSIXlt" object may have an attribute
    "balanced" indicating if it is known to be filled or fully
    balanced.
  * Functions axis.Date() and axis.POSIXct() are rewritten to gain
    better default tick locations and better default formats by using
    prettyDate(). Thanks to Swetlana Herbrandt.
  * The mapping of Windows' names for time zones to IANA's 'Olson'
    names has been updated.  When ICU is available (it is by
    default), it is used to get a mapping for the current region set
    in Windows.  This can be overridden by setting environment
    variable TZ to the desired Olson name - see OlsonNames() for
    those currently available.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 16
    and so packages that provide graphics devices should be
    reinstalled.
  * The grDevices and grid packages have new functions for rendering
    typeset glyphs, primarily: grDevices::glyphInfo() and
    grid::grid.glyph().
    Rendering of typeset glyphs is only supported so far on the
    Cairo-based graphics devices and on the pdf() and quartz()
    devices.
  * The defined behaviour for "clear" and "source" compositing
    operators (via grid::grid.group()) has been changed (to align
    better with simple interpretation of original Porter-Duff
    definitions).
  * Support for gradients, patterns, clipping paths, masks, groups,
    compositing operators, and affine transformations has been added
    to the quartz() device.
  INSTALLATION on a UNIX-ALIKE:
  * A system installation of generic LAPACK 3.10.0 or later will be
    preferred to the version in the R sources.
    configure option --with-lapack=no (equivalently --without-lapack)
    forces compilation of the internal LAPACK sources.
    If --with-lapack is not specified, a system liblapack is looked
    for and used if it reports version 3.10.0 or later and does not
    contain BLAS routines.
    Packages using LAPACK will need to be reinstalled if this changes
    to using an external library.
  * On aarch64 Linux platforms using GCC, configure now defaults to
  - fPIC (instead of -fpic), as desired in PR#18326.
  * configure now checks conversion of datetimes between POSIXlt and
    POSIXct around year 2020.  Failure (which has been seen on
    platforms missing tzdata) is fatal.
  * If configure option --with-valgrind-instrumentation is given
    value 1 or 2, option --with-system-valgrind-headers is now the
    default and ignored (with a warning).  It is highly recommended
    that the system headers are installed alongside valgrind: they
    are part of its packaging on some Linux distributions and
    packaged separately (e.g. in the valgrind-devel RPM) on others.
    configure will give a warning if they are not found.
    The system headers will be required in a future release of R to
    build with valgrind instrumentation.
  * libcurl 8.x is now accepted by configure: despite a change in
    major version number it changes neither API nor ABI.
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools43, an update of the Rtools42 toolchain.  It is
    based on gcc 12 and newer versions of MinGW-W64, binutils and
    libraries.  At this time R-devel can still be built using
    Rtools42 without changes, but when R-devel is installed via the
    installer, it will by default look for Rtools43.
  * Old make targets rsync-extsoft and 32-bit ones that are no longer
    needed have been removed.
  * Default builds (including for packages) no longer select C99.
    Thus the C standard used is the default for the compiler, which
    for the toolchain in Rtools43 is C17.  (This is consistent with
    Unix builds.)
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++17 where
    available (which it is on all currently checked platforms): if
    not C++14 or C++11 is used if available otherwise C++ is not
    supported.
  * USE_FC_LEN_T is the default: this uses the correct
    (compiler-dependent) prototypes for Fortran BLAS/LAPACK routines
    called from C/C++, and requires adjustment of many such calls -
    see 'Writing R Extensions' SS6.6.1.
  * There is initial support for C++23 as several compilers are now
    supporting -std=c++23 or -std=c++2b or similar.  As for C++20,
    there no additional configure checks for C++23 features beyond a
    check that the compiler reports a __cplusplus value greater than
    that in the C++20 standard.  C++ feature tests should be used.
  * There is support for a package to indicate the version of the C
    standard which should be used to compile it, and for the
    installing user to specify this.  In most cases R defaults to the
    C compiler's default standard which is C17 (a `bug-fix' of C11) -
    earlier versions of R or compilers may have defaulted to C99.
    Current options are:
    USE_C17 Use a standard that is at most C17.  The intention is to
    allow legacy packages to still be installed when later C
    standards become the default, including packages using new
    keywords as identifiers or with K&amp;R-style function
    declarations.  This will use C17 if available, falling back
    to C11.
    USE_C90 Use the C90 (aka C89) standard.  (As that standard did
    not require compilers to identify that version, all we can
    verify is that the compiler does not claim to be using a
    later standard.  It may accept C99 features - for example
    clang accepts // to make comments.)
    USE_C99 Use the C99 standard. This should be rarely needed - it
    avoids the few new features of C11/C17 which can be useful if
    a package assumes them if C17 is specified and they are not
    implemented.
    USE_C23 Use C23 (or in future, later).  Compiler/library support
    for C23 is still being implemented, but LLVM clang from
    15.0.0 and the upcoming GCC 13 have quite extensive support.
    These can be specified as part of the SystemRequirements field in
    the package's DESCRIPTION file or _via_ options --use-C17 and so
    on of R CMD INSTALL and R CMD SHLIB.
    For further details see "Writing R Extensions" SS1.2.5.
  * (Windows) A src/Makefile.ucrt or src/Makefile.win file is now
    included after R_HOME/etcR_ARCH/Makeconf and so no longer needs
    to include that file itself.  Installation of a package with such
    a file now uses a site Makevars file in the same way as a package
    with a src/Makevars.win file would.
  * configure is now passed crucial variables such as CC and CFLAGS
    in its environment, as many packages were not setting them (as
    documented in 'Writing R Extensions' SS1.2).
    This has most effect where configure is used to compile parts of
    the package - most often by cmake or libtool which obfuscate the
    actual compile commands used.
    Also used for configure.win and configure.ucrt on Windows.
  FORTRAN FLAGS:
  * The flag -fno-optimize-sibling-calls is no longer forced for
    gfortran 7 and later.  It should no longer be needed now using
    'hidden' character-length arguments when calling BLAS/LAPACK
    routines from C/C++ is the default even for packages.  (Unless
    perhaps packages call Fortran code from C/C++ without using R's
    headers and without allowing for these arguments.)
  C-LEVEL FACILITIES:
  * The deprecated S-compatibility macros DOUBLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * The deprecated legacy typedefs of Sint and Sfloat in header R.h
    are no longer defined, and that header no longer includes header
    limits.h from C nor climits from C++.
  * New macro CAD5R() is provided in Rinternals.h and used in a few
    places in the R sources.
  * ALTREP now supports VECSXP vectors. Contributed by Gabor Csardi
    in PR#17620.
  * The Rcomplex definition (in header R_ext/Complex.h) has been
    extended to prevent possible mis-compilation when interfacing
    with Fortran (PR#18430).  The new definition causes compiler
    warnings with static initializers such as {1, 2}, which can be
    changed to {.r=1, .i=2}.
    Using the new definition from C++ depends on compiler extensions
    supporting C features that have not been incorporated into the
    C++ standards but are available in g++ and clang++: this may
    result in C++ compiler warnings but these have been worked around
    for recent versions of common compilers (GCC, Apple/LLVM clang,
    Intel).
    It is intended to change the inclusion of header R_ext/Complex.h
    by other R headers, so C/C++ code files which make use of
    Rcomplex should include that header explicitly.
  UTILITIES:
  * R CMD check does more checking of package .Rd files, warning
    about invalid email addresses and (some) invalid URIs and noting
    empty \item labels in description lists.
  * R CMD check now also reports problems when reading package news
    in md (file NEWS.md) and (optionally) plain text (file NEWS)
    formats.
  * _R_CHECK_TIMINGS_ defaults to a value from the environment even
    for R CMD check --as-cran; this allows for exceptionally fast or
    slow platforms.
    It now applies to checking PDF and HTML versions of the manuals,
    and 'checking CRAN incoming feasibility'.
  * R CMD check can optionally (but included in --as-cran) check
    whether HTML math rendering _via_ KaTeX works for the package .Rd
    files.
  * Non-interactive debugger invocations can be trapped by setting
    the environment variable _R_CHECK_BROWSER_NONINTERACTIVE_ to a
    true value.  This is enabled by R CMD check --as-cran to detect
    the use of leftover browser() statements in the package.
  * The use of sprintf and vsprintf from C/C++ has been deprecated in
    macOS 13 and is a known security risk.  R CMD check now reports
    (on all platforms) if their use is found in compiled code:
    replace by snprintf or vsnprintf respectively. [*NB:* whether
    such calls get compiled into the package is platform-dependent.]
  * Where recorded at installation, R CMD check reports the C and
    Fortran compilers used to build R.
    It reports the OS in use (if known, as given by osVersion) as
    well as that R was built for.
    It notes if a C++ standard was specified which is older than the
    current default: many packages have used C++11 to mean 'not
    C++98' - as C++11 is the minimum supported since R 4.0.0, that
    specification can probably be removed.
  * R CMD INSTALL reports the compilers (and on macOS, the SDK) used,
    and this is copied to the output of R CMD check.
    Where a C++ standard is specified, it is reported.
  * R CMD check's 'checking compilation flags in Makevars' has been
    relaxed to accept the use of flags such as -std=f2008 in
    PKG_FFLAGS.
  * tools::buildVignettes() has a new argument skip, which is used by
    R CMD check to skip (and note) vignettes with unavailable
    \VignetteDepends (PR#18318).
  * New generic .AtNames() added to enable class-specific completions
    after @. The formerly internal function findMatches() is now
    exported, mainly for use in methods for .DollarNames() and
    .AtNames().
  DEPRECATED AND DEFUNCT:
  * default.stringsAsFactors() is defunct.
  * Calling as.data.frame.&lt;class&gt;() directly (for 12 atomic classes)
    is going to be formally deprecated, currently activated by
    setting the environment variable
    _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ to non-empty, which also
    happens in R CMD check --as-cran.
  BUG FIXES:
  * Hashed environments with sizes less than 5 can now grow.
    (Reported to R-devel by Duncan Garmonsway.)
  * as.character(&lt;Rd&gt;, deparse = TRUE) failed to re-escape curly
    braces in LaTeX-like text.  (Reported by Hadley Wickham in
    PR#18324.)
  * library() now passes its lib.loc argument when requiring Depends
    packages; reported (with fix) in PR#18331 by Mikael Jagan.
  * R CMD Stangle: improved message about 'Output' files.
  * head(x, n) and tail(x, n) now signal an error if n is not
    numeric, instead of incidentally "working" sometimes returning
    all of x.  Reported and discussed by Colin Fay, in PR#18357.
  * The "lm" method for summary() now gives the correct F-statistic
    when the model contains an offset.  Reported in PR#18008.
  * C() and `contrasts&lt;-`() now preserve factor level names when
    given a function object (as opposed a function name which did
    preserve names). Reported in PR#17616.
  * c(a = 1, 2)[[]] no longer matches 2 but rather signals a
    _classed_ error.  Reported and analysed by Davis Vaughan in
    PR#18367, a duplicate of PR#18004, by Jan Meis et al.  For
    consistency, NULL[[]] is also erroneous now.  x[[]] &lt;- v gives an
    error of the same class "MissingSubscriptError".
  * The relist() function of utils now supports NULL elements in the
    skeleton (PR#15854).
  * ordered(levels = *) (missing x) now works analogously to factor(,
    ordered=TRUE); reported (with fix) by Achim Zeileis in PR#18389.
  * User-defined Rd macro definitions can now span multiple lines,
    thanks to a patch from Duncan Murdoch. Previously, the Rd parser
    silently ignored everything after the first line.
  * Plain-text help (tools::Rd2txt()) now preserves an initial blank
    line for text following description list items.
  * tools::Rd2HTML() and tools::Rd2latex() no longer split \arguments
    and \value lists at Rd comments.
  * tools::Rd2latex() now correctly handles optional text outside
    \items of argument lists as well as bracketed text at the
    beginning of sections, e.g., \value{[NULL]}.
  * as.character(&lt;POSIXt&gt;) now behaves more in line with the methods
    for atomic vectors such as numbers, and is no longer influenced
    by options().  Ditto for as.character(&lt;Date&gt;).  The
    as.character() method gets arguments digits and OutDec with
    defaults _not_ depending on options().  Use of as.character(*,
    format = .) now warns.
  * Similarly, the as.character.hexmode() and *.octmode() methods
    also behave as good citizen methods and back compatibility option
    keepStr = TRUE.
  * The as.POSIXlt(&lt;POSIXlt&gt;) and as.POSIXct(&lt;POSIXct&gt;) default
    methods now do obey their tz argument, also in this case.
  * as.POSIXlt(&lt;Date&gt;) now does apply a tz (time zone) argument, as
    does as.POSIXct(); partly suggested by Roland Fuss on the R-devel
    mailing list.
  * as.Date.POSIXlt(x) now also works when the list components are of
    unequal length, aka "partially filled" or "ragged".
  * expand.model.frame() looked up variables in the wrong environment
    when applied to models fitted without data.  Reported in
    PR#18414.
  * time() now (also) uses the ts.eps = getOption("ts.eps") argument
    and thus by default rounds values very close to the start (or
    end) of a year.  Based on a proposal by Andre"i V. Kostyrka on
    R-help.
  * Printing of a factanal() result with just one factor and sort =
    TRUE now works regularly, fixing PR#17863 by Timothy Bates,
    thanks to the 'R Contributors' working group.
  * Printing 0-length objects of class "factor", "roman", "hexmode",
    "octmode", "person", "bibentry", or "citation" now prints
    something better, one of which fixes PR#18422, reported by
    Benjamin Feakins.
  * Sys.timezone() queries timedatectl only if systemd is loaded;
    addressing a report by Jan Gorecki in PR#17421.
  * The formula method of cor.test() had scoping problems when
    environment(formula) was not the calling environment; reported
    with a patch proposal by Mao Kobayashi in PR#18439.
  * attach() of an environment with active bindings now preserves the
    active bindings.  Reported by Kevin Ushey in PR#18425.
  * BLAS detection now works also with system-provided libraries not
    available as regular files.  This fixes detection of the
    Accelerate framework on macOS since Big Sur.  Reported by David
    Novgorodsky.
  * download.file() gives a helpful error message in case of an
    invalid download.file.method option, thanks to Colin Fay's report
    in PR#18455.
  * Sporadic crashes of Rterm when using completion have been fixed.
  * Rprof() is now more reliable.  A livelock in thread
    initialization with too short sampling interval has been fixed on
    macOS.  A deadlock in using the C runtime has been fixed on
    Windows.  A potential deadlock has been prevented on Unix.
  * Cursor placement in Rgui now works even after a fixed-width font
    is selected.
  * Mandatory options (options()) are now set on startup so that
    saving and restoring them always works (PR#18372).
  * Package installation, R CMD INSTALL or install.packages(*), now
    parses each of the &lt;pkg&gt;/R/*.R files individually instead of
    first concatenating and then parse()ing the large resulting file.
    This allows parser or syntax errors to be diagnosed with correct
    file names and line numbers, thanks to Simon Dedman's report and
    Bill Dunlap's patch in PR#17859.
    This _does_ require syntactically self contained R source files
    now, fixing another inadvertent bug.
  * predict.lm(&lt;model with offset&gt;) now finds the offset in the
    correct environment, thanks to Andr'e Gillibert's report and patch
    in PR#18456.
  * getInitial(&lt;formula&gt;) now finds the selfStart model in the
    correct environment.  (Reported by Ivan Krylov in PR#18368.)
  * Fix for possible segfault when using recently-added graphics
    features, such as gradients, clipping paths, masks, and groups
    with pdf(file=NULL).
  * class(m) &lt;- class(m) no longer changes a matrix m by adding a
    class _attribute_.
  * packageDate(pkg) now only warns once if there is no pkg.
  * When ts() creates a multivariate time series, "mts", it also
    inherits from "array" now, and is.mts() is documented _and_
    stricter.
  * Rd2txt() now preserves line breaks of \verb Rd content and from
    duplicated \cr.  The former also fixes the rendering of verbatim
    output from Rd \Sexpr in plain-text help.
  * uniroot(f, interval) should no longer wrongly converge _outside_
    the interval in some cases where abs(f(x)) == Inf for an x at the
    interval boundary, thanks to posts by Ben Bolker and Serguei
    Sokol on R-devel.
  * Vectorized alpha handling in palette functions such as in gray(),
    rainbow(), or hcl.colors() works correctly now, thanks to Achim
    Zeileis' report and patch in PR#18476.
  * Formatting and print()ing of bibentry objects has dropped the
    deprecated citation.bibtex.max argument, such that the bibtex
    argument's default for print.bibentry() depends directly on the
    citation.bibtex.max option, whereas in format.bibentry() the
    option no longer applies.
  * Attempting to use a character string naming a foreign function
    entry point in a foreign function call in a package will now
    signal an error if the packages has called R_forceSymbols to
    specify that symbols must be used.
  * An error in table() could permanently set options(warn=2)
    promoting all subsequent warnings to errors.
  * The sigma() function gave misleading results for binary GLMs.  A
    new method for objects of class "glm" returns the square root of
    the estimate of the dispersion parameter using the same
    calculation as summary.glm().
  * bs() and ns() in the (typical) case of automatic knot
    construction, when some of the supposedly inner knots coincide
    with boundary knots, now moves them inside (with a warning),
    building on PR#18442 by Ben Bolker.
  * R CMD on Windows now skips the site profile with --no-site-file
    and --vanilla even when R_PROFILE is set (PR#18512, from Kevin
    Ushey).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1686916800">- CHANGES IN R 4.3.1:
  C-LEVEL FACILITIES:
  * The C-level API version of R's integrate(), Rdqags() in Applic.h,
    now returns the correct number of integrand evaluations neval,
    fixing PR#18515 reported and diagnosed by Stephen Wade.
  * The C prototypes for LAPACK calls dspgv and dtptrs in
    R_exts/Lapack.h had one too many and one too few character length
    arguments - but this has not caused any known issues. To get the
    corrected prototypes, include
    [#]include &lt;Rconfig.h&gt; // for PR18534fixed
    [#]ifdef PR18534fixed
    [#] define usePR18534fix 1
    [#]endif
    [#]include &lt;R_exts/Lapack.h&gt;
    in your C/C++ code (PR#18534).
  INSTALLATION:
  * Many of the checks of esoteric Internet operations and those
    using unreliable external sites have been moved to a new target
    that is not run by default and primarily intended for the core
    developers.  To run them use
    cd tests; make test-Internet-dev
  BUG FIXES:
  * .S3methods(), typically called from methods(), again marks
    methods from package base as visible.
    Also, the visibility of non-base methods is again determined by
    the method's presence in search().
  * tools::Rdiff() is now more robust against invalid strings, fixing
    installation tests on Windows without Rtools installed
    (PR#18530).
  * Fix (new) bug in hcl.colors(2, *), by Achim Zeileis (PR#18523).
  * head(., &lt;illegal&gt;) and tail(..) now produce more useful "Error in
    ...." error messages, fixing PR#18362.
  * Package code syntax on Windows is checked in UTF-8 when UTF-8 is
    the native encoding.
  * na.contiguous(x) now also returns the first run, when it is at
    the beginning and there is a later one of the same length;
    reported to R-devel, including a fix, by Georgi Boshnakov.
    Further, by default, it modifies only an existing attr(*,"tsp")
    but otherwise no longer sets one.
  * chol(&lt;not pos.def&gt;, pivot = &lt;T|F&gt;) now gives a correct error or
    warning message (depending on pivot), thanks to Mikael Jagan's
    (PR#18541).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1699012800">- CHANGES IN R 4.3.2:
  NEW FEATURES:
  * The default initialization of the "repos" option from the
    repositories file at startup can be skipped by setting
    environment variable R_REPOSITORIES to NULL such that
    getOption("repos") is empty if not set elsewhere.
  * qr.X() is now an implicit S4 generic in methods.
  * iconv(to = "ASCII//TRANSLIT") is emulated using substitution on
    platforms which do not support it (notably Alpine Linux).  This
    should give a human-readable conversion in ASCII on all platforms
    (rather than NA_character_).
  * trans3d() gains options continuous and verbose addressing the
    problem of possible "wrap around" when projecting too long
    curves, as reported by Achim Zeileis in PR#18537.
  * tools::showNonASCII() has been rewritten to work better on macOS
    14 (which has a changed implementation of iconv()).
  * tiff(type = "quartz") (the default on macOS) now warns if
    compression is specified: it continues to be ignored.
  INSTALLATION on a UNIX-ALIKE:
  * There is some support for building with Intel's LLVM-based
    compilers on x86_64 Linux, such as (C) icx, (C++) ipcx and
    (Fortran) ifx from oneAPI 2023.x.y.
  * There is support for using LLVM's flang-new as the Fortran
    compiler from LLVM 16.0.x (preferably 17.0.0 or later).
  UTILITIES:
  * R CMD check reports the use of the Fortran 90 random number
    generator RANDOM_NUMBER() and the subroutines to initialize it.
    'Writing R Extensions' has example code to use R's RNGs from
    Fortran.
  BUG FIXES:
  * substr(x, n, L) &lt;- cc now works (more) correctly for multibyte
    UTF-8 strings x when L &gt; nchar(x), thanks to a report and patch
    by 'Architect 95'.
  * contrib.url(character()) now returns 0-length character() as
    documented, which also avoids spurious warnings from
    available.packages() et al. in the edge case of an empty vector
    of repository URLs.
  * readChar(., 4e8) no longer fails, thanks to Kodi Arfer's report
    (PR#18557).
  * lapply(&lt;list&gt;, as.data.frame) no longer warns falsely for some
    base vector components.
  * Communication between parent and child processes in the multicore
    part of parallel could fail on platforms that do not support an
    arbitrarily large payload in system functions read()/write() on
    pipes (seen on macOS where a restriction to INT_MAX bytes is
    documented, without doing a partial read unlike Linux). The
    payload is now split into 1Gb chunks to avoid that problem.
    (PR#18571)
  * qqplot(x,y, conf.level=.) gives better confidence bounds when
    length(x) != length(y), thanks to Alexander Ploner's report and
    patch proposal (PR#18557).
  * norm(&lt;0-length&gt;, "2") now gives zero instead of an error, as all
    the other norm types, thanks to Mikael Jagan's PR#18542.
  * Build-stage Rd macros \packageAuthor and \packageMaintainer now
    process Authors@R, fixing NA results when the package DESCRIPTION
    omits Author and Maintainer fields.
  * Formatting and printing complex numbers could give things like
    0.1683-0i because of rounding error: -0i is now replaced by +0i.
  * postscript() refused to accept a title comment containing the
    letter "W" (PR#18599).
  * isoreg(c(1,Inf)) signals an error instead of segfaulting, fixing
    PR#18603.
  * tiff(type = "Xlib") was only outputting the last page of
    multi-page plots.
  * tools::latexToUtf8() again knows about \~{n} and other letters
    with tilde, fixing a regression in R 4.3.0, and about \^{i} as an
    alternative to \^{\i} (similarly with other accents).
    Furthermore, LaTeX codes for accented I letters are now correctly
    converted, also fixing related mistakes in
    tools::encoded_text_to_latex().
  * tar(*, tar = "internal") no longer creates out-of-spec tar files
    in the very rare case of user or group names longer than 32
    bytes, fixing PR#17871 with thanks to Ivan Krylov.
  * When using the "internal" timezone datetime code, adding a
    fraction of a second no longer adds one second, fixing PR#16856
    from a patch by Ivan Krylov.
  * tools::checkRd() no longer produces spurious notes about
    "unnecessary braces" from multi-line Rd results of \Sexpr macros.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1709208000">- CHANGES IN R 4.3.3:
  NEW FEATURES:
  * iconv() now fixes up variant encoding names such as "utf8"
    case-insensitively.
  DEPRECATED AND DEFUNCT:
  * The legacy encoding = "MacRoman" is deprecated in pdf() and
    postscript(): support was incomplete in earlier versions of R.
  BUG FIXES:
  * Arguments are now properly forwarded to methods on S4 generics
    with ... in the middle of their formal arguments. This was broken
    for the case when a method introduced an argument but did not
    include ... in its own formals. Thanks to Herv'e Pag`es for the
    report PR#18538.
  * Some invalid file arguments to pictex(), postscript() and xfig()
    opened a file called NA rather than throw an error.  These
    included postscript(NULL) (which some people expected to work
    like pdf(NULL)).
  * Passing filename = NA to svg(), cairo_pdf(), cairo_ps() or the
    Cairo-based bitmap devices opened a file called NA: it now throws
    an error.
  * quartz(file = NA) opened a file called NA, including when used as
    a Quartz-based bitmap device.  It now gives an error.
  * rank(&lt;long vector&gt;) now works, fixing PR#18617, thanks to Ilia
    Kats.
  * seq.int() did not adequately check its length.out argument.
  * match(&lt;POSIXct&gt;, .) is correct again for differing time zones,
    ditto for "POSIXlt", fixing PR#18618 reported by Bastian Klein.
  * drop.terms(*, dropx = &lt;0-length&gt;) now works, fixing PR#18563 as
    proposed by Mikael Jagan.
  * drop.terms(*) keeps + offset(.) terms when it should, PR#18565,
    and drop.terms() no longer makes up a response, PR#18566, fixing
    both bugs thanks to Mikael Jagan.
  * getS3method("t", "test") no longer finds the t.test() function,
    fixing PR#18627.
  * pdf() and postscript() support for the documented Adobe encodings
    "Greek" and "Cyrilllic" was missing (although the corresponding
    Windows' codepages could be used).
  * Computations of glyph metric information for pdf() and
    postscript() did not take into account that transliteration could
    replace one character by two or more (only seen on macOS 14) and
    typically warned that the information was not known.
  * rank(x) no longer overflows during integer addition, when
    computing rank average for largish but not-yet long vector x,
    fixing PR#18630, thanks to Ilia Kats.
  * list.files() on Windows now returns also files with names longer
    that 260 bytes (the Windows limit is 260 characters).
    Previously, some file names particularly with 'East Asian'
    characters were omitted.
  * cov2cor(&lt;0 x 0&gt;) now works, fixing PR#18423 thanks to Mikael
    Jagan and Elin Waring.
  * cov2cor(&lt;negative diagonal&gt;) and similar now give one warning
    instead of two, with better wording, fixing PR#18424 thanks to
    Mikael Jagan.
  * tools:: startDynamicHelp() now ensures port is in proper range,
    fixing PR#18645.
  * pbeta(x, a,b) is correct now for x=0 or 1 in the boundary cases
    where a or b or both are 0, fixing PR#18672 thanks to Michael
    Fay.
  * pmatch(x, table) for large table, also called for data frame row
    selection, dfrm[nm, ], is now interruptible, fixing PR#18656.
  * predict(&lt;rank-deficient lm&gt;, newdata=*) fix computing of nbasis,
    see Russ Lenth's comment 29 in PR#16158.
  * Added a work-around for a bug in macOS 14.3.1 and higher which
    prevents R plots in the Quartz Cocoa device from updating on
    screen.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1713960000">- CHANGES IN R 4.4.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Startup banners, R --version, sessionInfo() and R CMD check no
    longer report (64-bit) as part of the platform as this is almost
    universal - the increasingly rare 32-bit platforms will still
    report (32-bit).
    On Windows, ditto for window titles.
  * is.atomic(NULL) now returns FALSE, as NULL is not an atomic
    vector.  Strict back-compatibility would replace is.atomic(foo)
    by (is.null(foo) || is.atomic(foo)) but should happen only
    sparingly.
  NEW FEATURES:
  * The confint() methods for "glm" and "nls" objects have been
    copied to the stats package.  Previously, they were stubs which
    called versions in package MASS. The MASS namespace is no longer
    loaded if you invoke (say) confint(glmfit).  Further, the "glm"
    method for profile() and the plot() and pairs() methods for class
    "profile" have been copied from MASS to stats.  (profile.nls()
    and plot.profile.nls() were already in stats.)
  * The confint() and profile methods for "glm" objects have gained a
    possibility to do profiling based on the Rao Score statistic in
    addition to the default Likelihood Ratio. This is controlled by a
    new test = argument.
  * The pairs() method for "profile" objects has been extended with a
    which = argument to allow plotting only a subset of the
    parameters.
  * The "glm" method for anova() computes test statistics and
    p-values by default, using a chi-squared test or an F test
    depending on whether the dispersion is fixed or free.  Test
    statistics can be suppressed by giving argument test a false
    logical value.
  * In setRepositories() the repositories can be set using their
    names via name = instead of index ind =.
  * methods() and .S3methods() gain a all.names option for the (rare)
    case where functions starting with a . should be included.
  * Serializations can now be interrupted (e.g., by Ctrl-C on a
    Unix-alike) if they take too long, e.g., from save.image(),
    thanks to suggestions by Ivan Krylov and others on R-devel.
  * New startup option --max-connections to set the maximum number of
    simultaneous connections for the session.  Defaults to 128 as
    before: allowed values up to 4096 (but resource limits may in
    practice restrict to smaller values).
  * R on Windows (since Windows 10 2004) now uses the new Segment
    Heap allocator. This may improve performance of some
    memory-intensive applications.
  * When R packages are built, typically by R CMD build &lt;pkg&gt;, the
    new --user=&lt;build_user&gt; option overrides the (internally
    determined) user name, currently Sys.info()["user"] or LOGNAME.
    This is a (modified) fulfillment of Will Landau's suggestion in
    PR#17530.
  * tools::testInstalledBasic() gets new optional arguments outDir
    and testSrcdir, e.g., allowing to use it in a &lt;builddir&gt; !=
    &lt;srcdir&gt; setup, and in standard "binary" Windows installation
  * if* a source tests/ folder is present.
  * range(&lt;DT_with_Inf&gt;, finite = TRUE) now work for objects of class
    "Date", "POSIXct", and "POSIXlt" with infinite entries,
    analogously to range.default(), as proposed by Davis Vaughan on
    R-devel.  Other range()-methods can make use of new function
    .rangeNum().
  * New .internalGenerics object complementing .S3PrimitiveGenerics,
    for documentation and low-level book-keeping.
  * grid() now invisibly returns the x- and y- coordinates at which
    the grid-lines were drawn.
  * norm(., type) now also works for complex matrices.
  * kappa(., exact = TRUE, norm = *) now works for all norms and also
    for complex matrices.  In symmetric / triangular cases, the new
    argument uplo = "U" | "L" allows the upper or lower triangular
    part to be specified.
  * memDecompress(type = "unknown") recognizes compression in the
    default 'zlib' format as used by memCompress(type = "gzip").
  * memCompress() and memDecompress() will use the libdeflate library
    (&lt;https://github.com/ebiggers/libdeflate&gt;) if installed.  This
    uses the same type of compression for type = "gzip" but is 1.5-2x
    faster than the system libz library on some common platforms: the
    speed-up may depend on the library version.
  * diff() for objects of class "Date", "POSIXct", and "POSIXlt"
    accepts a units argument passed via ....
  * Dynamic help now does a much better job of rendering package
    DESCRIPTION metadata.
  * Rprof() gains an event argument and support for elapsed (real)
    time profiling on Unix (PR#18076).
  * filled.contour() gains a key.border argument.
  * tools::update_pkg_po() gets arguments pot_make and mo_make for
    _not_ re-making the corresponding files, and additionally a
    verbose argument.
  * Hexadecimal string colour specifications are now accepted in
    short form, so, for example, we can use "#123", which is
    equivalent to "#112233".
    Thanks to MikeFC for the original idea and Ella Kaye, Malcolm
    Barrett, George Stagg, and Hanne Oberman for the patch.
  * Plain-text help shows \var markup by angle brackets.
  * The new experimental primitive function declare() is intended to
    eventually allow information about R code to be communicated to
    the interpreter, compiler, and code analysis tools. The syntax
    for declarations is still being developed.
  * Functions psmirnov(), qsmirnov() and rsmirnov() in package stats
    have had argument two.sided renamed to alternative, to take into
    account that the permutation distributions of the one-sided
    statistics can be different in the case of ties.  Consequence of
    PR#18582.
  * sort() is now an implicit S4 generic in methods.
  * Formatting and printing, format(z), print(z), of complex vectors
    z no longer zap relatively small real or imaginary parts to zero,
    fixing PR#16752.  This is an API change, as it was documented
    previously to round real and imaginary parts together on purpose,
    producing nicer looking output.  As mentioned, e.g. in the PR,
    this change is compatible with many other "R-like" programming
    environments.
    We have simplified the internal code and now basically format the
    real and imaginary parts independently of each other.
  * New experimental functions Tailcall() and Exec() to support
    writing stack-space-efficient recursive functions.
  * Where characters are attempted to be plotted by pdf(),
    postscript() and xfig() which are not in the selected 8-bit
    character set (most often Latin-1) and the R session is using a
    UTF-8 locale, the warning messages will show the UTF-8 character
    rather than its bytes and one dot will be substituted per
    character rather than per byte.  (Platforms whose iconv() does
    transliteration silently plot the transliteration.)
    In a UTF-8 locale some transliterations are now done with a
    warning (e.g., dashes and Unicode minus to hyphen, ligatures are
    expanded, permille (‰) is replaced by o/oo), although the OS may
    have got there first.  These are warnings as they will continue
    to be replaced by dots in earlier versions of R.
  * The matrix multiplication functions crossprod() and tcrossprod()
    are now also primitive and S3 generic, as %*% had become in R
    4.3.0.
  * source() and example() have a new optional argument catch.aborts
    which allows continued evaluation of the R code after an error.
  * The non-Quartz tiff() devices allow additional types of
    compression if supported by the platform's libtiff library.
  * The list of base and recommended package names is now provided by
    tools::standard_package_names().
  * cairo_pdf() and cairo_ps() default to onefile = TRUE to closer
    match pdf() and postscript().
  * New option catch.script.errors provides a documented way to catch
    errors and then continue in non-interactive use.
  * L %||% R newly in base is an expressive idiom for the phrases
    if(!is.null(L)) L else R or if(is.null(L)) R else L.
  * The return value from warnings() now always inherits from
    "warnings" as documented, now also in the case of no warnings
    where it previously returned NULL.
  * as.complex("1i") now returns 0 + 1i instead of NA with a warning.
  * z &lt;- c(NA, 1i) now keeps the imaginary part Im(z[1]) == 0, no
    longer coercing to NA_complex_.  Similarly, cumsum(z) correctly
    sums real and imaginary parts separately, i.e., without
    "crosstalk" in case of NAs.
  * On Alpine Linux iconv() now maps "latin2", "latin-2", "latin9"
    and "latin-9" to encoding names the OS knows about
    (case-insensitively).
  * iconv(sub = "Unicode") now always zero-pads to four (hex) digits,
    rather than to 4 or 8.  (This seems to have become the convention
    once Unicode restricted the number of Unicode points to 2^21 - 1
    and so will never need more than 6 digits.)
  * NCOL(NULL) now returns 0 instead of 1, for consistency with
    cbind().
  * The information for the Euro glyph missing from the Adobe .afm
    files for the Courier, Helvetica and Times families has been
    copied from their URW equivalents - this will improve vertical
    centring in the pdf() and postscript() devices.
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.12.0.  The changes are almost entirely cosmetic.
  * The included LAPACK sources have been updated to version 3.12.0
    and some further double-complex routines added.
  * There are new font families for the 2014--5 URW 2.0 fonts (see
    ?pdf) which are included in recent versions of Ghostscript.
    These have font widths for most Greek glyphs and a few others
    which were missing from the original versions (whose font
    families remain available for reproducibility, although
    Ghostscript-based viewers will render using the 2.0 versions).
  * Improve the large-n efficiency of as.matrix(&lt;dist&gt;), thanks an R
    contributors effort, notably by Tim Taylor and Heather Turner,
    see PR#18660.
  * The default and numeric methods of all.equal() get a check.class
    option.
  * zapsmall() gets new optional arguments, function mFUN and min.d,
    for extra flexibility; fulfills a wish in PR#18199.  Also, it is
    now an implicit S4 generic in package methods.
  * The Rd filter for aspell() gains an ignore argument.
  * New generic function sort_by(), primarily useful for the
    data.frame method which can be used to sort rows of a data frame
    by one or more columns.
  * The icence headers for the RPC code in src/extra/xdr have been
    updated to use the GPL-compatible licence published by Oracle
    America in 2010.
  * New function pkg2HTML() in tools to create single-page HTML
    reference manuals for R packages.
  * The byte code evaluator now uses less C stack space for recursive
    calls to byte-compiled functions. It also makes more of an effort
    to avoid allocations for scalar return values.
  * New completion option backtick (disabled by default) allows
    non-syntactic completions to be wrapped in backquotes. This is
    currently only useful for Jupyter notebooks via the IRkernel
    package, and may cause problems for other backends.
  INSTALLATION:
  * The parser has been updated to work with bison 3.8.2, which is
    now used for the pre-generated parsers in gram.c, file.c, and
    gramRd.c. A few parser error messages have changed, which may
    affect code that relies on exact messages.
  INSTALLATION on a UNIX-ALIKE:
  * System valgrind headers are now required to use configure option
  - -with-valgrind-instrumentation with value 1 or 2.
  * configure will warn if it encounters a 32-bit build, as that is
    nowadays almost untested.
  * Environment variable R_SYSTEM_ABI is no longer used and so no
    longer recorded in etc/Renviron (it was not on Windows and was
    only ever used when preparing package tools).
  * If the libdeflate library and headers are available, libdeflate
    rather than libz is used to (de)compress R objects in lazy-load
    databases.  Typically tasks spend up to 5% of their time on such
    operations, although creating lazy-data databases is one of the
    exceptions.
    This can be suppressed if the library is available by the
    configure option --without-libdeflate-compression.
  * configure option --enable-lto=check has not worked reliably since
    2019 and has been removed.
  * The minimum autoconf requirement for a maintainer build has been
    increased to autoconf 2.71.
    It is intended to increase this to 2.72 for R 4.5.0: the
    distributed configure file was generated using 2.72.
  * The minimum version requirement for an external LAPACK has been
    reduced to 3.9.0.
  * No default C++ compiler is set if no C++17 compiler is detected:
    there is no longer an automatic fallback to C++14 or C++11.
    Compilers from the last five years should have sufficient
    support: for others macros CXX and CXXSTD can be set in file
    config.site to provide a fallback if needed.
    The Objective-C++ compiler now by default uses the standard
    selected by R for C++ (currently C++17) rather than the default
    standard for the C++ compiler (which on macOS is still C++98).
  INSTALLATION on macOS:
  * A new configure option --with-newAccelerate makes use of Apple's
    'new' BLAS / LAPACK interfaces in their Accelerate framework.
    Those interfaces are only available in macOS 13.3 or later, and
    building requires SDK 13.3 or later (from the Command Line Tools
    or Xcode 14.3 or later).
    By default the option uses new Accelerate for BLAS calls: to also
    use it for LAPACK use option --with-newAccelerate=lapack.  The
    later interfaces provide LAPACK 3.9.1 rather than 3.2.1: 3.9.1 is
    from 2021-04 and does not include the improved algorithms
    introduced in LAPACK 3.10.0 (including for BLAS calls).
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools44, an update of the Rtools43 toolchain.  It is
    based on GCC 13 and newer versions of MinGW-W64, binutils and
    libraries (targeting 64-bit Intel CPUs).  R-devel can no longer
    be built using Rtools43 without changes.
  * Rtools44 has experimental support for 64-bit ARM (aarch64) CPUs
    _via_ the LLVM 17 toolchain using lld, clang/flang-new and
    libc++.
  UTILITIES:
  * R CMD check notes when S4-style exports are used without
    declaring a strong dependence on package methods.
  * tools::checkRd() (used by R CMD check) detects more problems with
    \Sexpr-based dynamic content, including bad nesting of \Sexprs
    and invalid arguments.
  * tools::checkRd() now reports Rd titles and section names ending
    in a period; this is ignored by R CMD check unless environment
    variable _R_CHECK_RD_CHECKRD_MINLEVEL_ is set to -5 or smaller.
  * R CMD check now notes Rd files without an \alias, as long
    documented in 'Writing R Extensions' §1.3.1.  The check for a
    missing \description has been moved from tools::checkRd() to
    tools::checkRdContents().
  * R CMD check now visits inst/NEWS.Rd and OS-specific man
    subdirectories when checking Rd files.
  * tools::checkDocFiles() and tools::checkRdContents() now also
    check internal Rd files by default, but "specially" (ignoring
    missing documentation of arguments).
  * R CMD Rdiff gets option --useEx.
  * R CMD check now warns on non-portable uses of Fortran KIND such
    as INTEGER(KIND=4) and REAL(KIND=8).
    To see the failing lines set environment variable
    _R_CHECK_FORTRAN_KIND_DETAILS_ to a true value.
  * When checking Rd files, R CMD check now notes some of the "lost
    braces" that tools::checkRd() finds.  Typical problems are Rd
    macros missing the initial backslash (e.g., code{...}), in-text
    set notation (e.g., {1, 2}, where the braces need escaping), and
    \itemize lists with \describe-style entries of the form
    \item{label}{description}.
  * R CMD INSTALL (and hence check) will compile C++ code with
  - DR_NO_REMAP if environment variable _R_CXX_USE_NO_REMAP_ is set
    to a true value.  It is planned that this will in future become
    the default for compiling C++.
  * The new built-in Rd macro \dontdiff{} can be used to mark example
    code whose output should be ignored when comparing check output
    to reference output (tests/Examples/&lt;pkg&gt;-Ex.Rout.save).  The
    \dontdiff tag, like \donttest, is _not_ shown on the rendered
    help page, so provides a clean alternative to ##
    IGNORE_RDIFF_(BEGIN|END) comments.
  * R CMD build when there is no NAMESPACE, now uses the recommended
    exportPattern("^[^.]"), instead of exporting everything.
  * R CMD check now warns about non-ASCII characters in the NAMESPACE
    file (in addition to R files). Such packages are not portable and
    may fail to install on some platforms.
  C-LEVEL FACILITIES:
  * Headers R_ext/Applic.h and R-ext/Linpack.h used to include
    R_ext/BLAS.h although this was undocumented and unneeded by their
    documented entry points.  They no longer do so.
  * New function R_missing(), factored out from do_missing(), used to
    fix PR#18579.
  * SEXP type S4SXP has been renamed to OBJSXP to support
    experimenting with alternative object systems.  The S4SXP value
    can still be used in C code but is now deprecated.  Based on
    contributions from the R Consortium's Object-Oriented Programming
    Working Group.
  * New function pow1p(x,y) for accurate (1+x)^y.
  * mkCharLenCE was incorrectly documented to take a size_t length
    but was implemented with int (and character strings in R are
    limited to 2^31 - 1 bytes).
  DEPRECATED AND DEFUNCT:
  * data() no longer handles zipped data from long-defunct (since R
    2.13.0) --use-zip-data installations.
  * The legacy graphics devices pictex() and xfig() are now
    deprecated.  They do not support recent graphics enhancements and
    their font handling is rudimentary. The intention is to retain
    them for historical interest as long as they remain somewhat
    functional.
  * Support for encoding = "MacRoman" has been removed from the pdf()
    and postscript() devices - this was a legacy encoding supporting
    classic macOS up to 2001 and no longer has universal libiconv
    support.
  * is.R() is deprecated as no other S dialect is known to be in use
    (and this could only identify historical dialects, not future
    ones).
    Further information on calls can be obtained by setting the
    environment variable _R_DEPRECATED_IS_R_ to error which turns the
    deprecation warning into an error and so by default gives a
    traceback.  (This is done by R CMD check --as-cran.)
  * UseMethod() no longer forwards local variables assigned in the
    generic function into method call environments before evaluating
    the method body. This makes method calls behave more like
    standard function calls and makes method code easier to analyze
    correctly.
  * The twelve as.data.frame.&lt;class&gt;() methods which were deprecated
    only via _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ and in R CMD
    check --as-cran are formally deprecated now in favour of calling
    as.data.frame() or as.data.frame.vector().  The deprecation
    "check" now works also when as.data.frame() is S4 generic thanks
    to Ivan Krylov.
  * The default method for the directional comparison operators &lt;, &gt;,
    &lt;=, and &gt;= now signals an error when one of the operands is a
    language object, i.e. a symbol or a call.
  * For terms.formula(), deprecate abb and neg.out arguments
    _formally_ in addition to just documenting it.
  BUG FIXES:
  * The methods package is more robust to not being attached to the
    search path.  More work needs to be done.
  * pairwise.t.test() misbehaved when subgroups had 0 DF for
    variance, even with pool.sd = TRUE.  (PR#18594 by Jack Berry).
  * Probability distribution functions [dpq]&lt;distrib&gt;(x, *), but also
    bessel[IKJY](x, .) now consistently preserve attributes(x) when
    length(x) == 0, e.g., for a 2 x 0 matrix, thanks to Karolis
    Koncevičius' report PR#18509.
  * Group "Summary" computations such as sum(1:3, 4, na.rm = 5, NA,
    7, na.rm = LL) now give an error instead of either 17 or NN for
    LL true or false, as proposed by Ivan Krylov on the R-devel
    mailing list.  (This also means it is now an error to specify
    na.rm more than once.)
  * as.complex(x) now returns complex(real = x, imaginary = 0) for
    _all_ numerical and logical x, notably also for NA or
    NA_integer_.
  * Directories are now omitted by file.copy(, recursive = FALSE) and
    in file.append() (PR#17337).
  * gsub() and sub() are now more robust to integer overflow when
    reporting errors caused by too large input strings (PR#18346).
  * Top-level handlers are now more robust to attempts to remove a
    handler whilst handlers are running (PR#18508).
  * The handling of Alt+F4 in dialogs created on Windows using
    GraphApp has been fixed (PR#13870).
  * density() more consistently computes grid values for the
    FFT-based convolution, following Robert Schlicht's analysis and
    proposal in PR#18337, correcting density values typically by a
    factor of about 0.999.  Argument old.coords = TRUE provides back
    compatibility.
  * palette.colors() gains a name argument that defaults to FALSE
    controlling whether the vector of colours that is returned has
    names (where possible).  PR#18529.
  * tools::xgettext() no longer extracts the (non-translatable) class
    names from warningCondition and errorCondition calls.
  * S3method(&lt;gen&gt;, &lt;class&gt;, &lt;func&gt;) in the NAMESPACE file now works
    (again) when &lt;func&gt; is visible from the namespace, e.g.,
    imported, or in base.
  * getParseData(f) now also works for a function defined in the
    first of several &lt;pkg&gt;/R/*.R source files, thanks to Kirill
    Müller's report and Duncan Murdoch's patch in PR#16756.
  * Rd \Sexpr macros with nested #ifdef conditionals were not
    processed.
  * A non-blocking connection with non-default encoding (such as a
    socket) now correctly returns from readLines() after new data has
    arrived also when its EOF had been reached previously.  Thanks to
    Peter Meilstrup's report on R-devel and Ivan Krylov's report and
    patch proposal in PR#18555.
  * tools::checkRdContents() failed to detect empty argument
    descriptions when they spanned multiple lines, including those
    generated by prompt().  These cases are now noted by R CMD check.
  * Plain-text help no longer outputs spurious colons in the
    arguments list (for multi-line \item labels in the Rd source).
  * kappa() and rcond() work correctly in more cases; kappa(., norm =
    "2") now warns that it computes the 1-norm with (default) exact =
    FALSE; prompted by Mikael Jagan's quite comprehensive PR#18543.
  * Rd skeletons generated by prompt() or promptData() now use a
    dummy title (so R CMD build works).  tools::checkRdContents() has
    been updated to detect such template leftovers, including from
    promptPackage().
  * When S4 method dispatch fails because no method was found, the
    error message now includes the signature argument names; thanks
    to Michael Chirico's proposal on the R-devel list.
  * withAutoprint({ .. }) now preserves srcrefs previously lost,
    thanks to Andrew Simmons' report plus fix in PR#18572.
  * transform.data.frame() no longer adjusts names; in particular,
    untransformed variables are kept as-is, including those with
    syntactically invalid names (PR#17890).
  * The keep.source option for Rd \Sexpr blocks is no longer ignored.
  * The formula methods for t.test() and wilcox.test() now catch when
    paired is passed, addressing PR#14359; use Pair(x1, x2) ~ 1 for a
    paired test.
  * The level reported in the browser prompt was often too large. It
    now shows the number of browser contexts on the stack.
  * For cbind() and rbind(), the optional deparse.level argument is
    now properly passed to methods, thanks to Mikael Jagan's PR#18579
    and comments there.
  * Some error and warning messages for large ('long vector')
    matrix(v, nr, nc) and dim(m) &lt;- d are now correct about sizes,
    using long long formatting, fixing PR#18612 (and more) reported
    by Mikael Jagan.
  * readChar(useBytes = TRUE) now terminates strings even when the
    underlying connection uses extra spaces in the input buffer.
    This fixes problems with extra garbage seen with gzip
    connections, PR#18605.
  * Named capture in PCRE regular expressions now works also with
    more than 127 named groups (PR#18588).
  * Datetime functions are now robust against long jumps when dealing
    with internal time zone changes.  This avoids confusing warnings
    about an invalid time zone, previously triggered by turning
    warnings into errors or handling them via tryCatch (PR#17966,
    PR#17780).
  * Datetime functions now restore even an empty TZ environment
    variable after internal time zone changes (PR#17724).  This makes
    results of datetime functions with this (typically unintentional)
    setting more predictable.
  * drop.terms(*) now drops response as by default, keep.response =
    FALSE, fixing PR#18564 thanks to Mikael Jagan.
  * dummy.coef(.) now also works for lm()-models with character
    categorical predictor variables rather than factor ones, fixing
    PR#18635 reported by Jinsong Zhao.
  * formals(f) &lt;- formals(f) now also works for a function w/o
    arguments and atomic _constant_ body(f).
  * Correct as.function(&lt;invalid list&gt;, .)'s error message.
  * removeSource() is yet more thorough in finding and removing
    "srcref" and the other source references from parsed R language
    chunks, fixing PR#18638 thanks to Andrew Simmons.
  * dgeom() is more accurate now, notably when its result is very
    small, fixing PR#18642 thanks to the proposal of Morten Welinder,
    also improving other instances where C level binom_raw(x, n, ..)
    has x == 0 or x== n.
  * warning() with options(warn = 1) has improved output for
    multi-line messages.
  * axis.Date() and axis.POSIXct() now respect the par("lab") setting
    for the number of pretty() intervals.
  * Comparisons for language objects (which are based on deparsing)
    are now more careful about using accurate deparsed results
    (PR#18676).
  * Plain-text help (Rd2txt) now correctly preserves blank lines
    following single-line \dontrun code.
  * &lt;POSIXlt&gt;[*] no longer sets wrong "balanced" attribute, fixing
    PR#18681 thanks to Mikael Jagan.
  * str(&lt;classed-call&gt;) now deparses the call as expected, fixing
    PR#18684, reported by Dave Slager.
  * In Rd examples, code following the closing brace of a \dontrun,
    \dontshow or \donttest tag on the same line is no longer skipped
    when R CMD check runs the examples.
  * as.data.frame(matrix(*, ncol=0)) now gets valid names() and
    colnames(); reported by Davis Vaughan on the R-devel list.
  * Internal Mathlib function stirlerr(n) is now almost fully
    (52-bit) accurate for all n &gt;= ~5.9 and more accurate also in the
    range 1 -- 5.9.  This entails small ("after 12th decimal")
    changes in density functions, e.g., dgamma() in _some_ regions of
    their support.  The fix was partly prompted by Morten Welinder's
    PR#18640.
  * Numbers like 9876543.2 are now considered non-integer by Mathlib
    internal R_nonint(), amending original fix of PR#15734.
  * Rd comment lines no longer cause broken paragraphs in the
    rendered PDF and plain-text help. In code blocks, pure comment
    lines (starting with %) no longer produce an empty line.
  * xtabs(Freq ~ .) now consistently defaults to na.action = na.pass,
    using na.rm = FALSE (added as an argument) when summing over Freq
    (PR#17770).
  * tools::testInstalledPackage() is no longer silent about failures
    from running examples or tests and its return code no longer
    ignores failures from checking vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1718366400">- CHANGES IN R 4.4.1:
  C-LEVEL FACILITIES:
  * Functions R_atof and R_strtod declared in header R_ext/Utils.h
    are now documented in 'Writing R Extensions' and so formally part
    of the API.
  * The non-API entry points Rf_setSVector, Rf_StringFalse,
    Rf_StringTrue and Rf_isBlankString have been added to those
    reported by R CMD check.
  * The new function Rf_allocLang is now available. This provides an
    alternative to the idiom of calling Rf_allocList followed by
    SET_TYPEOF.
  UTILITIES:
  * R CMD check now reports as warnings what gfortran calls 'Fortran
    2018 deleted features', all of which have long been marked as
    'obsolescent' and some of which were deleted in Fortran 2008 or
    earlier.  Fortran compilers are no longer required to support
    these.
  BUG FIXES:
  * as.numeric(), scan(), type.convert() and other places which use
    the internal C function R_strtod now require a _non-empty_ digit
    sequence in a decimal or binary exponent.  This aligns with the
    C/POSIX standard for strtod and with ?NumericConstants.
  * as.data.frame(m, make.names=NA) now works correctly for a matrix
    m with NA's in row names.
  * The error message from &lt;POSIXlt&gt;[["hour"]] and similar now
    mentions *[[, "hour"]], as wished for in PR#17409 and proposed by
    Michael Chirico.
  * qbinom() and potentially qpois(), qnbinom(), no longer sometimes
    fail accurate inversion (of pbinom(), etc), thanks to Christopher
    Chang's report and patch in PR#18711.
  * The internal help server on Windows can again serve requests sent
    in quick succession, fixing a regression in R 4.4.0.
  * debugcall(&lt;S3Generic&gt;()) now also works when a corresponding
    S4-generic version is in the methods cache (PR#18143).
  * Package tools' toTitleCase(ch0) now returns character(0) when ch0
    is of zero length; fixing PR#18724, reported by David Hugh Jones.
  * R CMD check is no longer broken (without a check result and no
    explanation in 00check.log) for a package which declares an
    invalid VignetteBuilder in DESCRIPTION but has no vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1730376000">- CHANGES IN R 4.4.2:
  C-LEVEL FACILITIES:
  * The S-compatibility macros F77_COM and F77_COMDECL defined in
    header R_ext/RS.h are deprecated and will be removed shortly.  We
    could find no record of their use.
  BUG FIXES:
  * Mathlib function lgammacor(x) no longer warns about underflow to
    zero for large x.
  * Text widths and heights were incorrectly reported by the Quartz
    device if the drawing context didn't exist yet (typically when
    drawing off-screen to a window that is yet to appear, see
    PR#18591).
  * The Quartz device could segfault in cases where paths with spaces
    are used in the new glyph drawing API.  Thanks to Tomek
    Gieorgijewski (PR#18758).
  * On macOS in R CRAN builds, it is again possible to read
    little-endian UTF-16 text with a BOM from a connection using
    encoding="UTF-16".  Users building R from source should avoid
    using the system libiconv in macOS 14.1 and later.
  * methods' internal .requirePackage() now re-enables primitive
    method dispatch when needed; thanks to Ivan Krylov for
    demystifying CRAN package check failures on the R-devel mailing
    list.</changelog>
</package>
<package pkgid="576714235c6dc17478f74552dbef8e5968d9e3616a0c43bb6b147529b823e4e36a59cef3c59ea6b89cfa07b3c0e3d6d12485009e74e50fca27449bde111a3af0" name="R-cluster" arch="i586">
  <version epoch="0" ver="2.1.6" rel="51.0.2.2.sr20241103"/>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1620302400">- To get in sync with d:l:R:autoCRAN the Matrix package's split
  in -devel was reversed.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339200">- improved spec file according to comments of dimstar in
  https://build.opensuse.org/request/show/892685</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339201">- CHANGES IN R 4.1.0:
  FUTURE DIRECTIONS:
  * It is planned that the 4.1.x series will be the last to support
    32-bit Windows, with production of binary packages for that
    series continuing until early 2023.
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Data set esoph in package datasets now provides the correct
    numbers of controls; previously it had the numbers of cases added
    to these.  (Reported by Alexander Fowler in PR#17964.)
  NEW FEATURES:
  * www.omegahat.net is no longer one of the repositories known by
    default to setRepositories().  (Nowadays it only provides source
    packages and is often unavailable.)
  * Function package_dependencies() (in package tools) can now use
    different dependency types for direct and recursive dependencies.
  * The checking of the size of tarball in R CMD check --as-cran
    &lt;pkg&gt; may be tweaked via the new environment variable
    _R_CHECK_CRAN_INCOMING_TARBALL_THRESHOLD_, as suggested in
    PR#17777 by Jan Gorecki.
  * Using c() to combine a factor with other factors now gives a
    factor, an ordered factor when combining ordered factors with
    identical levels.
  * apply() gains a simplify argument to allow disabling of
    simplification of results.
  * The format() method for class "ftable" gets a new option justify.
    (Suggested by Thomas Soeiro.)
  * New ...names() utility.  (Proposed by Neal Fultz in PR#17705.)
  * type.convert() now warns when its as.is argument is not
    specified, as the help file always said it _should_.  In that
    case, the default is changed to TRUE in line with its change in
    read.table() (related to stringsAsFactor) in R 4.0.0.
  * When printing list arrays, classed objects are now shown _via_
    their format() value if this is a short enough character string,
    or by giving the first elements of their class vector and their
    length.
  * capabilities() gets new entry "Rprof" which is TRUE when R has
    been configured with the equivalent of --enable-R-profiling (as
    it is by default).  (Related to Michael Orlitzky's report
    PR#17836.)
  * str(xS4) now also shows extraneous attributes of an S4 object
    xS4.
  * Rudimentary support for vi-style tags in rtags() and R CMD rtags
    has been added.  (Based on a patch from Neal Fultz in PR#17214.)
  * checkRdContents() is now exported from tools; it and also
    checkDocFiles() have a new option chkInternal allowing to check
    Rd files marked with keyword "internal" as well.  The latter can
    be activated for R CMD check via environment variable
    _R_CHECK_RD_INTERNAL_TOO_.
  * New functions numToBits() and numToInts() extend the raw
    conversion utilities to (double precision) numeric.
  * Functions URLencode() and URLdecode() in package utils now work
    on vectors of URIs.  (Based on patch from Bob Rudis submitted
    with PR#17873.)
  * path.expand() can expand ~user on most Unix-alikes even when
    readline is not in use.  It tries harder to expand ~, for example
    should environment variable HOME be unset.
  * For HTML help (both dynamic and static), Rd file links to help
    pages in external packages are now treated as references to
    topics rather than file names, and fall back to a file link only
    if the topic is not found in the target package. The earlier rule
    which prioritized file names over topics can be restored by
    setting the environment variable _R_HELP_LINKS_TO_TOPICS_ to a
    false value.
  * c() now removes NULL arguments before dispatching to methods,
    thus simplifying the implementation of c() methods, _but_ for
    back compatibility keeps NULL when it is the first argument.
    (From a report and patch proposal by Lionel Henry in PR#17900.)
  * Vectorize()'s result function's environment no longer keeps
    unneeded objects.
  * Function ...elt() now propagates visibility consistently with
    ..n.  (Thanks to Lionel Henry's PR#17905.)
  * capture.output() no longer uses non-standard evaluation to
    evaluate its arguments.  This makes evaluation of functions like
    parent.frame() more consistent.  (Thanks to Lionel Henry's
    PR#17907.)
  * packBits(bits, type="double") now works as inverse of
    numToBits().  (Thanks to Bill Dunlap's proposal in PR#17914.)
  * curlGetHeaders() has two new arguments, timeout to specify the
    timeout for that call (overriding getOption("timeout")) and TLS
    to specify the minimum TLS protocol version to be used for
    https:// URIs (_inter alia_ providing a means to check for sites
    using deprecated TLS versions 1.0 and 1.1).
  * For nls(), an optional constant scaleOffset may be added to the
    denominator of the relative offset convergence test for cases
    where the fit of a model is expected to be exact, thanks to a
    proposal by John Nash.  nls(*, trace=TRUE) now also shows the
    convergence criterion.
  * Numeric differentiation _via_ numericDeriv() gets new optional
    arguments eps and central, the latter for taking central divided
    differences.  The latter can be activated for nls() via
    nls.control(nDcentral = TRUE).
  * nls() now passes the trace and control arguments to getInitial(),
    notably for all self-starting models, so these can also be fit in
    zero-noise situations via a scaleOffset.  For this reason, the
    initial function of a selfStart model must now have ... in its
    argument list.
  * bquote(splice = TRUE) can now splice expression vectors with
    attributes: this makes it possible to splice the result of
    parse(keep.source = TRUE).  (Report and patch provided by Lionel
    Henry in PR#17869.)
  * textConnection() gets an optional name argument.
  * get(), exists(), and get0() now signal an error if the first
    argument has length greater than 1.  Previously additional
    elements were silently ignored.  (Suggested by Antoine Fabri on
    R-devel.)
  * R now provides a shorthand notation for creating functions, e.g.
    \(x) x + 1 is parsed as function(x) x + 1.
  * R now provides a simple native forward pipe syntax |&gt;.  The
    simple form of the forward pipe inserts the left-hand side as the
    first argument in the right-hand side call.  The pipe
    implementation as a syntax transformation was motivated by
    suggestions from Jim Hester and Lionel Henry.
  * all.equal(f, g) for functions now by default also compares their
    environment(.)s, notably via new all.equal method for class
    function.  Comparison of nls() fits, e.g., may now need
    all.equal(m1, m2, check.environment = FALSE).
  * .libPaths() gets a new option include.site, allowing to _not_
    include the site library.  (Thanks to Dario Strbenac's suggestion
    and Gabe Becker's PR#18016.)
  * Lithuanian translations are now available.  (Thanks to Rimantas
    Zakauskas.)
  * names() now works for DOTSXP objects.  On the other hand, in
    R-lang, the R language manual, we now warn against relying on the
    structure or even existence of such dot-dot-dot objects.
  * all.equal() no longer gives an error on DOTSXP objects.
  * capabilities("cairo") now applies only to the file-based devices
    as it is now possible (if very unusual) to build R with Cairo
    support for those but not for X11().
  * There is optional support for tracing the progress of
    loadNamespace() - see its help.
  * (Not Windows.)  l10n_info() reports an additional element, the
    name of the encoding as reported by the OS (which may differ from
    the encoding part (if any) of the result from
    Sys.getlocale("LC_CTYPE").
  * New function gregexec() which generalizes regexec() to find _all_
    disjoint matches and well as all substrings corresponding to
    parenthesized subexpressions of the given regular expression.
    (Contributed by Brodie Gaslam.)
  * New function charClass() in package utils to query the
    wide-character classification functions in use (such as
    iswprint).
  * The names of quantile()'s result no longer depend on the global
    getOption("digits"), but quantile() gets a new optional argument
    digits = 7 instead.
  * grep(), sub(), regexp and variants work considerably faster for
    long factors with few levels.  (Thanks to Michael Chirico's
    PR#18063.)
  * Provide grouping of x11() graphics windows within a window
    manager such as Gnome or Unity; thanks to a patch by Ivan Krylov
    posted to R-devel.
  * The split() method for class data.frame now allows the f argument
    to be specified as a formula.
  * sprintf now warns on arguments unused by the format string.
  * New palettes "Rocket" and "Mako" for hcl.colors() (approximating
    palettes of the same name from the 'viridisLite' package).
    Contributed by Achim Zeileis.
  * The base environment and its namespace are now locked (so one can
    no longer add bindings to these or remove from these).
  * Rterm handling of multi-byte characters has been improved,
    allowing use of such characters when supported by the current
    locale.
  * Rterm now accepts ALT+ +xxxxxxxx sequences to enter Unicode
    characters as hex digits.
  * Environment variable LC_ALL on Windows now takes precedence over
    LC_CTYPE and variables for other supported categories, matching
    the POSIX behaviour.
  * duplicated() and anyDuplicated() are now optimized for integer
    and real vectors that are known to be sorted via the ALTREP
    framework. Contributed by Gabriel Becker via PR#17993.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 14
    and so packages that provide graphics devices should be
    reinstalled.
  * Graphics devices should now specify deviceVersion to indicate
    what version of the graphics engine they support.
  * Graphics devices can now specify deviceClip.  If TRUE, the
    graphics engine will never perform any clipping of output itself.
    The clipping that the graphics engine does perform (for both
    canClip = TRUE and canClip = FALSE) has been improved to avoid
    producing unnecessary artifacts in clipped output.
  * The grid package now allows gpar(fill) to be a linearGradient(),
    a radialGradient(), or a pattern().  The viewport(clip) can now
    also be a grob, which defines a clipping path, and there is a new
    viewport(mask) that can also be a grob, which defines a mask.
    These new features are only supported so far on the Cairo-based
    graphics devices and on the pdf() device.
  * (Not Windows.)  A warning is given when a Cairo-based type is
    specified for a png(), jpeg(), tiff() or bmp() device but Cairo
    is unsupported (so type = "Xlib" is tried instead).
  * grSoftVersion() now reports the versions of FreeType and
    FontConfig if they are used directly (not _via_ Pango), as is
    most commonly done on macOS.
  C-LEVEL FACILITIES:
  * The _standalone_ libRmath math library and R's C API now provide
    log1pexp() again as documented, and gain log1mexp().
  INSTALLATION on a UNIX-ALIKE:
  * configure checks for a program pkgconf if program pkg-config is
    not found.  These are now only looked for on the path (like
    almost all other programs) so if needed specify a full path to
    the command in PKG_CONFIG, for example in file config.site.
  * C99 function iswblank is required - it was last seen missing ca
    2003 so the workaround has been removed.
  * There are new configure options --with-internal-iswxxxxx,
  - -with-internal-towlower and --with-internal-wcwidth which allows
    the system functions for wide-character classification,
    case-switching and width (wcwidth and wcswidth) to be replaced by
    internal ones.  The first has long been used on macOS, AIX (and
    Windows) but this enables it to be unselected there and selected
    for other platforms (it is the new default on Solaris).  The
    second is new in this version of R and is selected by default on
    macOS and Solaris.  The third has long been the default and
    remains so as it contains customizations for East Asian
    languages.
    System versions of these functions are often minimally
    implemented (sometimes only for ASCII characters) and may not
    cover the full range of Unicode points: for example Solaris (and
    Windows) only cover the Basic Multilingual Plane.
  * Cairo installations without X11 are more likely to be detected by
    configure, when the file-based Cairo graphics devices will be
    available but not X11(type = "cairo").
  * There is a new configure option --with-static-cairo which is the
    default on macOS.  This should be used when only static cairo
    (and where relevant, Pango) libraries are available.
  * Cairo-based graphics devices on platforms without Pango but with
    FreeType/FontConfig will make use of the latter for font
    selection.
  LINK-TIME OPTIMIZATION on a UNIX-ALIKE:
  * Configuring with flag --enable-lto=R now also uses LTO when
    installing the recommended packages.
  * R CMD INSTALL and R CMD SHLIB have a new flag --use-LTO to use
    LTO when compiling code, for use with R configured with
  - -enable-lto=R.  For R configured with --enable-lto, they have
    the new flag --no-use-LTO.
    Packages can opt in or out of LTO compilation _via_ a UseLTO
    field in the DESCRIPTION file.  (As usual this can be overridden
    by the command-line flags.)
  BUILDING R on Windows:
  * for GCC &gt;= 8, FC_LEN_T is defined in config.h and hence character
    lengths are passed from C to Fortran in _inter alia_ BLAS and
    LAPACK calls.
  * There is a new text file src/gnuwin32/README.compilation, which
    outlines how C/Fortran code compilation is organized and
    documents new features:
  * R can be built with Link-Time Optimization with a suitable
    compiler - doing so with GCC 9.2 showed several
    inconsistencies which have been corrected.
  * There is support for cross-compiling the C and Fortran code
    in R and standard packages on suitable (Linux) platforms.
    This is mainly intended to allow developers to test later
    versions of compilers - for example using GCC 9.2 or 10.x has
    detected issues that GCC 8.3 in Rtools40 does not.
  * There is experimental support for cross-building R packages
    with C, C++ and/or Fortran code.
  * The R installer can now be optionally built to support a single
    architecture (only 64-bit or only 32-bit).
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++14 where
    available (which it is on all currently checked platforms): if
    not (as before) C++11 is used if available otherwise C++ is not
    supported.
    Packages which specify C++11 will still be installed using C++11.
    C++14 compilers may give deprecation warnings, most often for
    std::random_shuffle (deprecated in C++14 and removed in C++17).
    Either specify C++11 (see 'Writing R Extensions') or modernize
    the code and if needed specify C++14.  The latter has been
    supported since R 3.4.0 so the package's DESCRIPTION would need
    to include something like
    Depends: R (&gt;= 3.4)
  PACKAGE INSTALLATION on Windows:
  * R CMD INSTALL and R CMD SHLIB make use of their flag --use-LTO
    when the LTO_OPT make macro is set in file etc/${R_ARCH}/Makeconf
    or in a personal/site Makevars file.  (For details see 'Writing R
    Extensions' SS4.5.)
    This provides a valuable check on code consistency.  It does work
    with GCC 8.3 as in Rtools40, but that does not detect everything
    the CRAN checks with current GCC do.
  PACKAGE INSTALLATION on macOS:
  * The default personal library directory on builds with
  - -enable-aqua (including CRAN builds) now differs by CPU type,
    one of
    ~/Library/R/x86_64/x.y/library
    ~/Library/R/arm64/x.y/library
    This uses the CPU type R (and hence the packages) were built for,
    so when a x86_64 build of R is run under Rosetta emulation on an
    arm64 Mac, the first is used.
  UTILITIES:
  * R CMD check can now scan package functions for bogus return
    statements, which were possibly intended as return() calls (wish
    of PR#17180, patch by Sebastian Meyer). This check can be
    activated via the new environment variable
    _R_CHECK_BOGUS_RETURN_, true for --as-cran.
  * R CMD build omits tarballs and binaries of previous builds from
    the top-level package directory.  (PR#17828, patch by Sebastian
    Meyer.)
  * R CMD check now runs sanity checks on the use of LazyData, for
    example that a data directory is present and that
    LazyDataCompression is not specified without LazyData and has a
    documented value.  For packages with large LazyData databases
    without specifying LazyDataCompression, there is a reference to
    the code given in 'Writing R Extensions' SS1.1.6 to test the
    choice of compression (as in all the CRAN packages tested a
    non-default method was preferred).
  * R CMD build removes LazyData and LazyDataCompression fields from
    the DESCRIPTION file of packages without a data directory.
  ENCODING-RELATED CHANGES:
  * The parser now treats \Unnnnnnnn escapes larger than the upper
    limit for Unicode points (\U10FFFF) as an error as they cannot be
    represented by valid UTF-8.
    Where such escapes are used for outputting non-printable
    (including unassigned) characters, 6 hex digits are used (rather
    than 8 with leading zeros).  For clarity, braces are used, for
    example \U{0effff}.
  * The parser now looks for non-ASCII spaces on Solaris (as
    previously on most other OSes).
  * There are warnings (including from the parser) on the use of
    unpaired surrogate Unicode points such as \uD834.  (These cannot
    be converted to valid UTF-8.)
  * Functions nchar(), tolower(), toupper() and chartr() and those
    using regular expressions have more support for inputs with a
    marked Latin-1 encoding.
  * The character-classification functions used (by default) to
    replace the system iswxxxxx functions on Windows, macOS and AIX
    have been updated to Unicode 13.0.0.
    The character-width tables have been updated to include new
    assignments in Unicode 13.0.0.
  * The code for evaluating default (extended) regular expressions
    now uses the same character-classification functions as the rest
    of R (previously they differed on Windows, macOS and AIX).
  * There is a build-time option to replace the system's
    wide-character wctrans C function by tables shipped with R: use
    configure option --with-internal-towlower or (on Windows)
  - DUSE_RI18N_CASE in CFLAGS when building R.  This may be needed
    to allow tolower() and toupper() to work with Unicode characters
    beyond the Basic Multilingual Plane where not supported by system
    functions (e.g. on Solaris where it is the new default).
  * R is more careful when truncating UTF-8 and other multi-byte
    strings that are too long to be printed, passed to the system or
    libraries or placed into an internal buffer.  Truncation will no
    longer produce incomplete multibyte characters.
  DEPRECATED AND DEFUNCT:
  * Function plclust() from the package stats and
    package.dependencies(), pkgDepends(), getDepList(),
    installFoundDepends(), and vignetteDepends() from package tools
    are defunct.
  * Defunct functions checkNEWS() and readNEWS() from package tools
    and CRAN.packages() from utils have been removed.
  * R CMD config CXXCPP is defunct (it was deprecated in R 3.6.2).
  * parallel::detectCores() drops support for Irix (retired in 2013).
  * The LINPACK argument to chol.default(), chol2inv(),
    solve.default() and svd() has been defunct since R 3.1.0.  It was
    silently ignored up to R 4.0.3 but now gives an error.
  * Subsetting/indexing, such as ddd[*] or ddd$x on a DOTSXP
    (dot-dot-dot) object ddd has been disabled; it worked by accident
    only and was undocumented.
  BUG FIXES:
  * Many more C-level allocations (mainly by malloc and strdup) are
    checked for success with suitable alternative actions.
  * Bug fix for replayPlot(); this was turning off graphics engine
    display list recording if a recorded plot was replayed in the
    same session.  The impact of the bug became visible if resize the
    device after replay OR if attempted another savePlot() after
    replay (empty display list means empty screen on resize or empty
    saved plot).
  * R CMD check etc now warn when a package exports non-existing S4
    classes or methods, also in case of no "methods" presence.
    (Reported by Alex Bertram; reproducible example and patch by
    Sebastian Meyer in PR#16662.)
  * boxplot() now also accepts calls for labels such as ylab, the
    same as plot().  (Reported by Marius Hofert.)
  * The help page for xtabs() now correctly states that addNA is
    setting na.action = na.pass among others.  (Reported as PR#17770
    by Thomas Soeiro.)
  * The R CMD check &lt;pkg&gt; gives a longer and more comprehensible
    message when DESCRIPTION misses dependencies, e.g., in Imports:.
    (Thanks to the contributors of PR#17179.)
  * update.default() now calls the generic update() on the formula to
    work correctly for models with extended formulas.  (As reported
    and suggested by Neal Fultz in PR#17865.)
  * The horizontal position of leaves in a dendrogram is now correct
    also with center = FALSE.  (PR#14938, patch from Sebastian
    Meyer.)
  * all.equal.POSIXt() no longer warns about and subsequently ignores
    inconsistent "tzone" attributes, but describes the difference in
    its return value (PR#17277).  This check can be disabled _via_
    the new argument check.tzone = FALSE as suggested by Sebastian
    Meyer.
  * as.POSIXct() now populates the "tzone" attribute from its tz
    argument when x is a logical vector consisting entirely of NA
    values.
  * x[[2^31]] &lt;- v now works.  (Thanks to the report and patch by
    Suharto Anggono in PR#17330.)
  * In log-scale graphics, axis() ticks and label positions are now
    computed more carefully and symmetrically in their range,
    typically providing _more_ ticks, fulfilling wishes in PR#17936.
    The change really corresponds to an improved axisTicks() (package
    grDevices), potentially influencing grid and lattice, for
    example.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now correct to at
    least five digits where it was catastrophically wrong,
    previously.
  * sum(df) and similar "Summary"- and "Math"-group member functions
    now work for data frames df with logical columns, notably also of
    zero rows.  (Reported to R-devel by Martin "b706".)
  * unsplit() had trouble with tibbles due to unsound use of rep(NA,
    len)-indexing, which should use NA_integer_ (Reported to R-devel
    by Mario Annau.)
  * pnorm(x, log.p = TRUE) underflows to -Inf slightly later.
  * show(&lt;hidden S4 generic&gt;) prints better and without quotes for
    non-hidden S4 generics.
  * read.table() and relatives treated an "NA" column name as missing
    when check.names = FALSE PR#18007.
  * Parsing strings containing UTF-16 surrogate pairs such as
    "\uD834\uDD1E" works better on some (uncommon) platforms.
    sprintf("%X", utf8ToInt("\uD834\uDD1E")) should now give "1D11E"
    on all platforms.
  * identical(x,y) is no longer true for differing DOTSXP objects,
    fixing PR#18032.
  * str() now works correctly for DOTSXP and related exotics, even
    when these are doomed.
    Additionally, it no longer fails for lists with a class and
    "irregular" method definitions such that e.g. lapply(*) will
    necessarily fail, as currently for different igraph objects.
  * Too long lines in environment files (e.g. Renviron) no longer
    crash R. This limit has been increased to 100,000 bytes.
    (PR#18001.)
  * There is a further workaround for FreeType giving incorrect
    italic font faces with cairo-based graphics devices on macOS.
  * add_datalist(*, force = TRUE) (from package tools) now actually
    updates an existing data/datalist file for new content.  (Thanks
    to a report and patch by Sebastian Meyer in PR#18048.)
  * cut.Date() and cut.POSIXt() could produce an empty last interval
    for breaks = "months" or breaks = "years".  (Reported as PR#18053
    by Christopher Carbone.)
  * Detection of the encoding of 'regular' macOS locales such as
    en_US (which is UTF-8) had been broken by a macOS change:
    fortunately these are now rarely used with en_US.UTF-8 being
    preferred.
  * sub() and gsub(pattern, repl, x, *) now keep attributes of x such
    as names() also when pattern is NA (PR#18079).
  * Time differences ("difftime" objects) get a replacement and a
    rep() method to keep "units" consistent.  (Thanks to a report and
    patch by Nicolas Bennett in PR#18066.)
  * The \RdOpts macro, setting defaults for \Sexpr options in an Rd
    file, had been ineffective since R 2.12.0: it now works again.
    (Thanks to a report and patch by Sebastian Meyer in PR#18073.)
  * mclapply and pvec no longer accidentally terminate parallel
    processes started before by mcparallel or related calls in
    package parallel (PR#18078).
  * grep and other functions for evaluating (extended) regular
    expressions handle in Unicode also strings not explicitly flagged
    UTF-8, but flagged native when running in UTF-8 locale.
  * Fixed a crash in fifo implementation on Windows (PR#18031).
  * Binary mode in fifo on Windows is now properly detected from
    argument open (PR#15600, PR#18031).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1622808000">- The line %{__install} -m 755 -d %{_infodir}
  no longer works in TW or Factory.
  But without that line it works everywhere. So this instruction
  was commented out of the spec file.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1628596800">- CHANGES IN R 4.1.1:
  NEW FEATURES:
  * require(pkg, quietly = TRUE) is quieter and in particular does
    not warn if the package is not found.
  DEPRECATED AND DEFUNCT:
  * Use of ftp:// URIs should be regarded as deprecated, with
    on-going support confined to method = "libcurl" and not routinely
    tested.  (Nowadays no major browser supports them.)
  * The non-default method = "internal" is deprecated for http:// and
    ftp:// URIs for both download.file and url.
  * On Windows, method = "wininet" is deprecated for http://,
    https:// and ftp:// URIs for both download.file and url.  (A
    warning is only given for ftp://.)
    For ftp:// URIs the default method is now "libcurl" if available
    (which it is on CRAN builds).
    method = "wininet" remains the default for http:// and https://
    URIs but if libcurl is available, using method = "libcurl" is
    preferred.
  INSTALLATION:
  * make check now works also without a LaTeX installation.  (Thanks
    to Sebastian Meyer's PR#18103.)
  BUG FIXES:
  * make check-devel works again in an R build configured with
  - -without-recommended-packages.
  * qnbinom(p, size, mu) for large size/mu is correct now in a range
    of cases (PR#18095); similarly for the (size, prob)
    parametrization of the negative binomial.  Also qpois() and
    qbinom() are better and or faster for extreme cases.  The
    underlying C code has been modularized and is common to all four
    cases of discrete distributions.
  * gap.axis is now part of the axis() arguments which are passed
    from bxp(), and hence boxplot().  (Thanks to Martin Smith's
    report and suggestions in PR#18109.)
  * .First and .Last can again be set from the site profile.
  * seq.int(from, to, *) and seq.default(..) now work better in large
    range cases where from-to is infinite where the two boundaries
    are finite.
  * all.equal(x,y) now returns TRUE correctly also when several
    entries of abs(x) and abs(y) are close to .Machine$double.xmax,
    the largest finite numeric.
  * model.frame() now clears the object bit when removing the class
    attribute of a value via na.action (PR#18100).
  * charClass() now works with multi-character strings on Windows
    (PR#18104, fixed by Bill Dunlap).
  * encodeString() on Solaris now works again in Latin-1 encoding on
    characters represented differently in UTF-8.  Support for
    surrogate pairs on Solaris has been improved.
  * file.show() on Windows now works with non-ASCII path names
    representable in the current native encoding (PR#18132).
  * Embedded R on Windows can now find R home directory via the
    registry even when installed only for the current user
    (PR#18135).
  * pretty(x) with finite x now returns finite values also in the
    case where the extreme x values are close in size to the maximal
    representable number .Machine$double.xmax.
    Also, it's been tweaked for very small ranges and when a boundary
    is close (or equal) to zero; e.g., pretty(c(0,1e-317)) no longer
    has negative numbers, currently still warning about a very small
    range, and pretty(2^-(1024 - 2^-1/(c(24,10)))) is more accurate.
  * The error message for not finding vignette files when weaving has
    correct file sizes now. (Thanks to Sebastian Meyer's PR#18154.)
  * dnbinom(20, &lt;large&gt;, 1) now correctly gives 0, and similar cases
    are more accurate with underflow precaution.  (Reported by Francisco Vera Alcivar in PR#18072.)</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635163200">- repaired https://bugzilla.suse.com/show_bug.cgi?id=1191380
  (rpmacros now go to rpmmacrodir)
- minor clean-ups in spec file</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635768000">- CHANGES IN R 4.1.2:
  C-LEVEL FACILITIES:
  * The workaround in headers R.h and Rmath.h (using namespace std;)
    for the Oracle Developer Studio compiler is no longer needed now
    C++11 is required so has been removed.  A couple more usages of
    log() (which should have been std::log()) with an int argument
    are reported on Solaris.
  * The undocumented limit of 4095 bytes on messages from the
    S-compatibility macros PROBLEM and MESSAGE is now documented and
    longer messages will be silently truncated rather than
    potentially causing segfaults.
  * If the R_NO_SEGV_HANDLER environment variable is non-empty, the
    signal handler for SEGV/ILL/BUS signals (which offers recovery
    user interface) is not set. This allows more reliable debugging
    of crashes that involve the console.
  DEPRECATED AND DEFUNCT:
  * The legacy S-compatibility macros PROBLEM, MESSAGE, ERROR, WARN,
    WARNING, RECOVER, ... are deprecated and will be hidden in R
    4.2.0. R's native interface of Rf_error and Rf_warning has long
    been preferred.
  BUG FIXES:
  * .mapply(F, dots, .) no longer segfaults when dots is not a list
    and uses match.fun(F) as always documented; reported by Andrew
    Simmons in PR#18164.
  * hist(&lt;Date&gt;, ...) and hist(&lt;POSIXt&gt;, ...)  no longer pass
    arguments for rect() (such as col and density) to axis().
    (Thanks to Sebastian Meyer's PR#18171.)
  * \Sexpr{ch} now preserves Encoding(ch). (Thanks to report and
    patch by Jeroen Ooms in PR#18152.)
  * Setting the RNG to "Marsaglia-Multicarry" e.g., by RNGkind(), now
    warns in more places, thanks to Andr'e Gillibert's report and
    patch in PR#18168.
  * gray(numeric(), alpha=1/2) no longer segfaults, fixing PR#18183,
    reported by Till Krenz.
  * Fixed dnbinom(x, size=&lt;very_small&gt;, .., log=TRUE) regression,
    reported by Martin Morgan.
  * as.Date.POSIXlt(x) now keeps names(x), thanks to Davis Vaughan's
    report and patch in PR#18188.
  * model.response() now strips an "AsIs" class typically, thanks to
    Duncan Murdoch's report and other discussants in PR#18190.
  * try() is considerably faster in case of an error and long call,
    as e.g., from some do.call().  Thanks to Alexander Kaever's
    suggestion posted to R-devel.
  * qqline(y = &lt;object&gt;) such as y=I(.), now works, see also
    PR#18190.
  * Non-integer mgp par() settings are now handled correctly in
    axis() and mtext(), thanks to Mikael Jagan and Duncan Murdoch's
    report and suggestion in PR#18194.
  * formatC(x) returns length zero character() now, rather than ""
    when x is of length zero, as documented, thanks to Davis
    Vaughan's post to R-devel.
  * removeSource(fn) now retains (other) attributes(fn).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1647000000">- CHANGES IN R 4.1.3:
  NEW FEATURES:
  * The default version of Bioconductor has been changed to 3.14.
    (This is used by setRepositories and the menus in GUIs.)
  UTILITIES:
  * R CMD check --as-cran has a workaround for a bug in versions of
    file up to at least 5.41 which mis-identify DBF files last
    changed in 2022 as executables.
  C-LEVEL FACILITIES:
  * The legacy S-compatibility macros SINGLE_* in R_ext/Constants.h
    (included by R.h) are deprecated and will be removed in R 4.2.0.
  BUG FIXES:
  * Initialization of self-starting nls() models with initialization
    functions following the pre-R-4.1.0 API (without the ...
    argument) works again for now, with a deprecation warning.
  * Fixed quoting of ~autodetect~ in Java setting defaults to avoid
    inadvertent user lookup due to leading ~, reported in PR#18231 by
    Harold Gutch.
  * substr(., start, stop) &lt;- v now treats _negative_ stop values
    correctly.  Reported with a patch in PR#18228 by Brodie Gaslam.
  * Subscripting an array x without dimnames by a
    length(dim(x))-column character matrix gave "random" non-sense,
    now an error; reported in PR#18244 by Mikael Jagan.
  * ...names() now matches names(list(...)) closely, fixing PR#18247.
  * all.equal(*, scale = s) now works as intended when length(s) &gt; 1,
    partly thanks to Michael Chirico's PR#18272.
  * print(x) for long vectors x now also works for named atomic
    vectors or lists and prints the correct number when reaching the
    getOption("max.print") limit; partly thanks to a report and
    proposal by Hugh Parsonage to the R-devel list.
  * all.equal(&lt;selfStart&gt;, *) no longer signals a deprecation
    warning.
  * reformulate(*, response=r) gives a helpful error message now when
    length(r) &gt; 1, thanks to Bill Dunlap's PR#18281.
  * Modifying globalCallingHandlers inside withCallingHandlers() now
    works or fails correctly, thanks to Henrik Bengtsson's PR#18257.
  * hist(&lt;Date&gt;, breaks = "days") and hist(&lt;POSIXt&gt;, breaks = "secs")
    no longer fail for inputs of length 1.
  * qbeta(.001, .9, .009) and similar cases now converge correctly
    thanks to Ben Bolker's report in PR#17746.
  * window(x, start, end) no longer wrongly signals "'start' cannot
    be after 'end'", fixing PR#17527 and PR#18291.
  * data() now checks that its (rarely used) list argument is a
    character vector - a couple of packages passed other types and
    gave incorrect results.
  * which() now checks its arr.ind argument is TRUE rather coercing
    to logical and taking the first element - which gave incorrect
    results in package code.
  * model.weights() and model.offset() more carefully extract their
    model components, thanks to Ben Bolker and Tim Taylor's R-devel
    post.
  * list.files(recursive = TRUE) now shows all broken symlinks
    (previously, some of them may have been omitted, PR#18296).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1650628800">- CHANGES IN R 4.2.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * The formula method of aggregate() now matches the generic in
    naming its first argument x (resolving PR#18299 by Thomas
    Soeiro).
    This means that calling aggregate() with a formula as a named
    first argument requires name formula in earlier versions of R and
    name x now, so portable code should not name the argument (code
    in many packages did).
  * Calling &amp;&amp; or || with either argument of length greater than one
    now gives a warning (which it is intended will become an error).
  * Calling if() or while() with a condition of length greater than
    one gives an error rather than a warning.  Consequently,
    environment variable _R_CHECK_LENGTH_1_CONDITION_ no longer has
    any effect.
  * Windows users should consult the WINDOWS section below for some
    profound changes including
  * Support for 32-bit builds has been dropped.
  * UTF-8 locales are used where available.
  * The default locations for the R installation and personal
    library folder have been changed.
    Thanks to Tomas Kalibera for months of work on the Windows port
    for this release.
  NEW FEATURES:
  * matrix(x, n, m) now warns in more cases where length(x) differs
    from n * m, as suggested by Abby Spurdle and Wolfgang Huber in
    Feb 2021 on the R-devel mailing list.
    This warning can be turned into an error by setting environment
    variable _R_CHECK_MATRIX_DATA_ to TRUE: R CMD check --as-cran
    does so unless it is already set.
  * Function file_test() in package utils gains tests for symlinks,
    readability and writability.
  * capabilities("libxml") is now false.
    The description of capabilities("http/ftp") now reflects that it
    refers to the default method, no longer the internal one.
  * simplify2array() gains an except argument for controlling the
    exceptions used by sapply().
  * Environment variables R_LIBS_USER and R_LIBS_SITE are both now
    set to the R system default if unset or empty, and can be set to
    NULL to indicate an empty list of user or site library
    directories.
  * The warning for axis()(-like) calls in cases of relatively small
    ranges (typically in log-scale situations) is slightly improved
    _and_ suppressed from explicit calls to .axisPars() as has always
    been the intention.
  * The contrasts setter function `contrasts&lt;-` gains an explicit
    default how.many = NULL rather than just using missing(how.many).
  * grid.pretty() gains a new optional argument n = 5.
  * There is a new function .pretty() with option bounds as a
    technical-utility version of pretty().  It and pretty() gain a
    new argument f.min with a better than back-compatible default.
  * Function grDevices::axisTicks() and related functions such as
    graphics::axis() work better, notably for the log scale; partly
    because of the pretty() improvements, but also because care is
    taken e.g., when ylim is finite but diff(ylim) is infinite.
  * nclass.FD() gains a digits option.
  * The R Mathlib internal C function bd0() (called indirectly from a
    dozen probability density and distribution functions such as
    dpois(), dbinom(), dgamma(), pgamma() _etc_) has been
    complemented by a more sophisticated and (mostly) more accurate C
    function ebd0(), currently called only by internal dpois_raw()
    improving accuracy for R level dpois() and potentially others
    calling it such as dnbinom(), dgamma() or pgamma().  (Thanks to
    Morten Welinder's PR#15628.)
  * write.ftable() gains sep = " " argument as suggested by Thomas
    Soeiro.
  * The names of the locale categories supported by R's
    Sys.getlocale() and Sys.setlocale() are now provided by variable
    .LC.categories in the base namespace.
  * The Date and POSIXt methods for hist() and the histogram method
    for plot() now also use the new default col = "lightgray" in
    consistency with the corresponding change to hist()'s default for
    R 4.0.0.
  * hist.default() gains new fuzz argument, and the histogram plot
    method no longer uses fractional axis ticks when displaying
    counts ("Frequency").
  * mapply() and hence Map() now also obey the "max-or-0-if-any"
    recycling rule, such that, e.g., Map(`+`, 1:3, 1[0]) is valid
    now.
  * as.character(&lt;obj&gt;) for "hexmode" or "octmode" objects now
    fulfils the important basic rule as.character(x)[j] ===
    as.character(x[j]).
  * The set utility functions, notably intersect() have been tweaked
    to be more consistent and symmetric in their two set arguments,
    also preserving a common mode.
  * substr(ch, start,end) &lt;- new now e.g., preserves names(ch); ditto
    for substring(), thanks to a patch from Brodie Gaslam.
  * plot(&lt;lm&gt;) gains a extend.ylim.f argument, in partial response to
    PR#15285; further PR#17784 is fixed thanks to several
    contributors and a patch by Elin Waring.  The Cook's dist
    contours get customizable via cook.col and cook.lty with a
    different default color and their legend is nicer by default and
    customizable via cook.legendChanges.
  * Attempting to subset an object that is not subsettable now
    signals an error of class notSubsettableError. The
    non-subsettable object is contained in the object field of the
    error condition.
  * Subscript-out-of-bounds errors are now signaled as errors of
    class subscriptOutOfBoundsError.
  * Stack-overflow errors are now signaled as errors inheriting from
    class stackOverflowError. See ?stackOverflowError for more
    details.
  * New partly experimental Sys.setLanguage() utility, solving the
    main problem of PR#18055.
  * gettext() and gettextf() get a new option trim = TRUE which when
    set to false allows translations for strings such as "Execution
    halted\n" typical for C code.
  * An experimental implementation of hash tables is now available.
    See ?hashtab for more details.
  * identical() gains a extptr.as.ref argument for requesting that
    external pointer objects be compared as reference objects.
  * reorder() gets an argument decreasing which it passes to sort()
    for level creation; based on the wish and patch by Thomas Soeiro
    in PR#18243.
  * as.vector() gains a data.frame method which returns a simple
    named list, also clearing a long standing 'FIXME' to enable
    as.vector(&lt;data.frame&gt;, mode="list").  This breaks code relying
    on as.vector(&lt;data.frame&gt;) to return the unchanged data frame.
  * legend() is now vectorized for arguments cex, x.intersp, and
    text.width.  The latter can now also be specified as a vector
    (one element for each column of the legend) or as NA for
    computing a proper column wise maximum value of strwidth(legend).
    The argument y.intersp can be specified as a vector with one
    entry for each row of the legend.
    legend() also gains new arguments title.cex and title.font.
    Thanks to Swetlana Herbrandt.
  * Deparsing no longer remaps attribute names dim, dimnames, levels,
    names and tsp to historical S-compatible names (which structure()
    maps back).
  * sample() and sample.int() have additional sanity checks on their
    size and n arguments.
    all.equal.numeric() gains a sanity check on its tolerance
    argument - calling all.equal(a, b, c) for three numeric vectors
    is a surprisingly common error.
    mean(na.rm =), rank(na.last =), barplot(legend.text =),
    boxplot(), contour(drawlabels =), polygon(border =) and
    methods::is(class2 =) have more robust sanity checks on their
    arguments.
    R CMD Rd2pdf (used by R CMD check) has a more robust sanity check
    on the format of \alias{} commands.
  * psigamma(x, deriv) for negative x now also works for deriv = 4
    and 5; their underlying C level dpsifn() is documented in
    'Writing R Extensions'.
  * The HTML help system now uses HTML5 (wish of PR#18149).
  * ks.test() now provides exact p-values also with ties and MC
    p-values in the two-sample (Smirnov) case.  By Torsten Hothorn.
  * ks.test() gains a formula interface, with y ~ 1 for the
    one-sample (Kolmogorov) test and y ~ group for the two-sample
    (Smirnov) test.  Contributed by Torsten Hothorn.
  * The return value from ks.test() now has class c("ks.test",
    "htest") - packages using try() need to take care to use
    inherits() and not == on the class.
  * New functions psmirnov(), qsmirnov() and rsmirnov() in package
    stats implementing the asymptotic and exact distributions of the
    two-sample Smirnov statistic.
  * iconv() now allows sub = "c99" to use C99-style escapes for UTF-8
    inputs which cannot be converted to encoding to.
  * In a forward pipe |&gt; expression it is now possible to use a named
    argument with the placeholder _ in the rhs call to specify where
    the lhs is to be inserted.  The placeholder can only appear once
    on the rhs.
  * The included LAPACK sources have been updated to version 3.10.0,
    except for the four Fortran 77 routines which 3.10.0 has
    re-implemented in Fortran 90 (where the older versions have been
    retained as the R build process does not support Fortran 90).
  * path.expand() and most other uses of tilde expansion now warn if
    a path would be too long if expanded.  (An exception is
    file.exists(), which silently returns false.)
  * trunc(&lt;Date&gt;, *) now supports units = "months" or "years" for
    consistency with the POSIXt method, thanks to Dirk Eddelbuettel's
    proposal in PR#18099.
  * list2DF() now checks that its arguments are of the same length,
    rather than use recycling.
  * The HTML help system has several new features: LaTeX-like math
    can be typeset using either KaTeX or MathJax, usage and example
    code is highlighted using Prism, and for dynamic help the output
    of examples and demos can be shown within the browser if the
    knitr package is installed. These features can be disabled by
    setting the environment variable _R_HELP_ENABLE_ENHANCED_HTML_ to
    a false value.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 15
    and so packages that provide graphics devices should be
    reinstalled.
  * The grid package now allows the user to specify a "vector" of
    pattern fills.  The fill argument to gpar() accepts a list of
    gradients and/or patterns and the functions linearGradient(),
    radialGradient(), and pattern() have a new group argument.
    Points grobs (data symbols) can now also have a pattern fill.
    The grobCoords() function now returns a more informative and
    complex result.
  * The grid package has new functions for drawing isolated groups:
    grid.group(), grid.define(), and grid.use().  These functions add
    compositing operators and affine transformations to R's graphics
    capabilities.
    The grid package also has new functions for stroking and filling
    paths: grid.stroke(), grid.fill(), and grid.fillStroke().
    A new function as.path() allows the user to specify the fill rule
    for a path that is to be used for clipping, stroking, or filling;
    available options are "winding" and "evenodd".  A new function
    as.mask() allows the user to specify the type of a mask;
    available options are "alpha" and "luminance".
    These new features are only supported so far (at most) on the
    Cairo-based graphics devices and on the pdf() device.
  * dev.capabilities() reports on device support for the new
    features.
  * par() now warns about unnamed non-character arguments to prevent
    misuse such as {usr &lt;- par("usr"); par(usr)}.
  INSTALLATION:
  * Facilities for accessing ftp:// sites are no longer tested
    (except _pro tem_ for curlGetHeaders()) as modern browsers have
    removed support.
  * R can now be built with DEFS = -DSTRICT_R_HEADERS .
  PACKAGE INSTALLATION:
  * R CMD INSTALL no longer tangles vignettes. This completes an R
    CMD build change in R 3.0.0 and affects packages built before R
    3.0.2. Such packages should be re-made with R CMD build to have
    the tangled R code of vignettes shipped with the tarball.
  * USE_FC_LEN_T will become the default: this uses the correct
    prototypes for Fortran BLAS/LAPACK routines called from C/C++,
    and requires adjustment of most such calls - see 'Writing R
    Extensions' SS6.6.2.  (This has been supported since R 3.6.2.)
  * Package installation speed for packages installed with
    keep.source has been improved. This resolve the issue reported by
    Ofek Shilon in PR#18236.
  UTILITIES:
  * R CMD check can optionally report files/directories left behind
    in home, /tmp (even though TMPDIR is set) and other directories.
    See the "R Internals" manual for details.
  * R CMD check now reports byte-compilation errors during
    installation.  These are not usually fatal but may result in
    parts of the package not being byte-compiled.
  * _R_CHECK_DEPENDS_ONLY_ can be applied selectively to examples,
    tests and/or vignettes in R CMD check: see the "R Internals"
    manual.
  * _R_CHECK_SRC_MINUS_W_IMPLICIT_ now defaults to true: recent
    versions of Apple clang on macOS have made implicit function
    declarations in C into a compilation error.
  * R CMD check --as-cran makes use of the environment variable
    AUTORECONF.  See the "R Internals" manual SS8 for further details.
  * R CMD check --use-valgrind also uses valgrind when re-building
    vignettes as some non-Sweave vignettes unhelpfully comment out
    all their code when R CMD check runs vignettes.
  * Errors in re-building vignettes (unless there are LaTeX errors)
    are reported by R CMD check as ERROR rather than WARNING when
    running vignettes has been skipped (as it frequently is in CRAN
    checks and by --as-cran).
  * R CMD Rd2pdf gains a --quiet option that is used by R CMD build
    when building the PDF package manual.
  * R CMD Rd2pdf now always runs LaTeX in batch mode, consistent with
    Texinfo &gt;= 6.7. The --batch option is ignored.
  * R CMD build and R CMD check now include the Rd file name and line
    numbers in the error message of an \Sexpr evaluation failure.
  * For packages using the \doi Rd macro (now an install-time \Sexpr)
    but no other dynamic Rd content, R CMD build now produces a
    smaller tarball and is considerably faster - skipping temporary
    package installation.
  C-LEVEL FACILITIES:
  * The non-API header R_ext/R-ftp-http.h is no longer provided, as
    the entry points it covered are now all defunct.
  * A number of non-API declarations and macro definitions have been
    moved from the installed header Rinternals.h to the internal
    header Defn.h. Packages that only use entry points and
    definitions documented to be part of the API as specified in
    'Writing R Extensions' SS6 should not be affected.
  * The macro USE_RINTERNALS no longer has any effect when compiling
    package code.  Packages which also use R_NO_REMAP will need to
    ensure that the remapped names are used for calls to API
    functions that were formerly also made available as macros.
  * The deprecated legacy S-compatibility macros PROBLEM, MESSAGE,
    ERROR, WARN, WARNING, RECOVER, ... are no longer defined in
    R_exts/RS.h (included by R.h).  Replace these by calls to
    Rf_error and Rf_warning (defined in header R_ext/Error.h included
    by R.h).
    Header R_ext/RS.h no longer includes R_ext/Error.h.
  * Header R_ext/Constants.h (included by R.h) when included from C++
    now includes the C++ header cfloat rather than the C header
    float.h (now possible as C++11 is required).
  * The legacy S-compatibility macros DOUBLE_* in R_ext/Constants.h
    (included by R.h) are deprecated.
  * The deprecated S-compatibility macros SINGLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * R_Calloc, R_Free and R_Realloc are preferred to their unprefixed
    forms and error messages now use the prefix. These forms were
    introduced in R 3.4.0 and are available even when
    STRICT_R_HEADERS is defined.
  * rmultinom has been documented in 'Writing R Extensions' SS6 so is
    now part of the R API.
  * Similarly, Rtanpi, called from R level tanpi() is now part of the
    R API.
  * The long-deprecated, undocumented and non-API entry point call_R
    is no longer declared in R_ext/RS.h (included by R.h).
  * The header S.h which has been unsupported since Jan 2016 has been
    removed.  Use R.h instead.
  DEPRECATED AND DEFUNCT:
  * The (non-default and deprecated) method = "internal" for
    download.file() and url() no longer supports http:// nor ftp://
    URIs.  (It is used only for file:// URIs.)
    On Windows, download.file(method = "wininet") no longer supports
    ftp:// URIs.  (It is no longer the default method, which is
    "libcurl" and does.)
    On Windows, the deprecated method = "wininet" now gives a warning
    for http:// and https:// URIs for both download.file() and url().
    (It is no longer the default method.)
  * On Windows, the command-line option --max-mem-size and
    environment variable R_MAX_MEM_SIZE are defunct.  The memory
    allocation limit was important for 32-bit builds, but these are
    no longer supported.
  * default.stringsAsFactors() is now formally deprecated, where that
    was only mentioned on its regular help page, previously.  So it
    now gives a warning if called.
  * unix.time() is defunct now; it had been deprecated since R 3.4.0.
  BUG FIXES:
  * Setting digits = 0 in format(), print.default() (and hence
    typically print()) or options() is again invalid.  Its behaviour
    was platform-dependent, and it is unclear what "zero significant
    digits" should mean (PR#18098).
  * Messages from C code in the cairo section of package grDevices
    are now also offered for translation, thanks to Michael Chirico's
    PR#18123.
  * mean(x) with finite x now is finite also without "long.double"
    capability.
  * R CMD Rd2pdf no longer leaves an empty build directory behind
    when it aborts due to an already existing output file.  (Thanks
    to Sebastian Meyer's PR#18141.)
  * density(x, weights = w, na.rm = TRUE) when anyNA(x) is true, now
    removes weights "in parallel" to x, fixing PR#18151, reported by
    Matthias Gondan.  Additionally, it gets a subdensity option.
  * Conversion of \Sexpr[]{&lt;expR&gt;} to LaTeX or HTML no longer
    produces long blocks of empty lines when &lt;expR&gt; itself contains
    several lines all producing empty output.  Thanks to a report and
    patch by Ivan Krylov posted to R-devel.
  * R CMD build no longer fails if a package vignette uses child
    documents and inst/doc exists.  (Thanks to Sebastian Meyer's
    PR#18156.)
  * When an R documentation ('help' source) file man/foo.Rd in a
    package has \donttest{..} examples with a syntax error, it is now
    signalled as ERROR and with correct line numbers relating to the
  * -Ex.R file, thanks to Duncan Murdoch and Sebastian Meyer's
    reports and patch proposals in PR#17501.
  * Improved determination of the correct translation domain in
    non-base packages, addressing the combination of PR#18092 and
    PR#17998 (#c6) with reports and _augmented_ patch #2904 by
    Suharto Anggono.
    Note that "R-base" is no longer the default domain e.g., for
    top-level calls to gettext(); rather translation needs explicit
    domain = * specification in such cases.
  * identical(attrib.as.set=FALSE) now works correctly with data
    frames with default row names (Thanks to Charlie Gao's PR#18179).
  * txtProgressBar() now enforces a non-zero width for argument char,
    without which no progress can be visible.
  * dimnames(table(d)) is more consistent in the case where d is a
    list with a single component, thanks to Thomas Soeiro's report to
    R-devel.
    Further, table(d1, d2) now gives an error when d1 and d2 are data
    frames as suggested by Thomas in PR#18224.
  * Fix for drawing semi-transparent lines and fills on the native
    Windows graphics device (PR#18219 and PR#16694).  Thanks to Nick
    Ray for helpful diagnosis on Bugzilla.
  * The deparser now wraps sub-expressions such as if(A) ..  with
    parentheses when needed; thanks to Duncan Murdoch's PR#18232 and
    Lionel Henry's patches there.
  * remove.packages() no longer tries to uninstall Priority: base
    packages, thanks to a report and suggestions by Colin Fay in
    PR#18227.
  * win.metafile() now has xpinch and ypinch arguments so that the
    user can override Windows' (potentially wrong) guess at device
    dimensions.
  * x[i] and x[[i]] for non-integer i should now behave in all cases
    as always documented: the index used is equivalent to
    as.integer(i) unless that would overflow where trunc(i) is used
    instead; thanks to Suharto Anggono's report and patch proposals
    in PR#17977.
  * asOneSidedFormula() now associates the resulting formula with the
    global environment rather than the evaluation environment created
    for the call.
  * &lt;bibentry&gt;$name now matches the field name case-insensitively,
    consistent with bibentry() creation and the replacement method.
  * cbind() failed to detect some length mismatches with a mixture of
    time-series and non-time-series inputs.
  * The default LaTeX style file Sweave.sty used by the RweaveLatex
    driver no longer loads the obsolete ae package; thanks to a
    report by Thomas Soeiro in PR#18271.  Furthermore, it now skips
    \usepackage[T1]{fontenc} for engines other than pdfTeX (if
    detected) or if the new [nofontenc] option is used.
  * smooth.spline() now stores its logical cv argument more safely,
    fixing a rare bug when printing, and also stores n.
  * smooth.spline(x,y,*) now computes the cv.crit statistic
    correctly, also when is.unsorted(x), fixing PR#18294.
  * The data.frame method of rbind() now warns when binding
    not-wholly-recycling vectors, by analogy to the default method
    (for matrices).
  * setAs() finds the correct class for name to when multiple
    packages define a class with that name. Thanks to Gabor Csardi
    for the report.
  * Fix for detaching a package when two classes of the same name are
    present in method signatures for the same generic. Thanks to
    Gabor Csardi for the report.
  * match.arg("", c("", "a", "B")) gives a better error message, in
    part from PR#17959, thanks to Elin Waring.
  * R CMD Sweave --clean no longer removes pre-existing files or
    subdirectories (PR#18242).
  * The quartz() device no longer splits polylines into subpaths.
    That has caused narrowly-spaced lines with many points to always
    look solid even when dashed line type was used due to dash phase
    restarts.
  * Deparsing constructs such as quote(1 + `!`(2) + 3) works again as
    before R 3.5.0, thanks to the report and patch in PR#18284 by
    Suharto Anggono.
  * as.list(f) for a factor f now keeps names(f), fixing PR#18309.
  * qbeta(.001, .9, .009) and analogous qf() calls now return a
    correct value instead of NaN or wrongly 1, all with a warning;
    thanks to the report by Ludger Goeminne in PR#18302.
  * plot.lm() failed to produce the plot of residuals vs.  factor
    levels (i.e., which=5 when leverages are constant) for models
    with character predictors (PR#17840).
  * interaction.plot(..., xtick = TRUE) misplaced the x-axis line
    (PR#18305).
  * Not strictly fixing a bug, format()ing and print()ing of
    non-finite Date and POSIXt values NaN and +/-Inf no longer show
    as NA but the respective string, e.g., Inf, for consistency with
    numeric vector's behaviour, fulfilling the wish of PR#18308.
  * R CMD check no longer runs test scripts generated from
    corresponding .Rin files twice and now signals an ERROR if
    processing an .Rin script fails.
  * tools::Rd2txt() used for plain-text help pages now renders \hrefs
    (if tools::Rd2txt_options(showURLs = TRUE)) and \urls with
    percent-encoding and standards-compliant delimiting style (angle
    brackets and no URL: prefix).  \email is now rendered with a
    mailto: prefix.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1655985600">- CHANGES IN R 4.2.1:
  NEW FEATURES:
  * New function utils::findCRANmirror() to find out if a CRAN mirror
    has been selected, otherwise fallback to the main site.  This
    behaves in the same way as tools::CRAN_package_db() and is
    intended for packages wishing to access CRAN for purposes other
    than installing packages.
    The need for this was shown by a day when the main CRAN website
    was offline and a dozen or so packages which had its URL
    hardcoded failed their checks.
  INSTALLATION on a UNIX-ALIKE:
  * The libraries searched for by --with-blas (without a value) now
    include BLIS (after OpenBLAS but before ATLAS).  And on macOS,
    the Accelerate framework (after ATLAS).  (This is patterned after
    the AX_BLAS macro from the Autoconf Archive.)
  * The included LAPACK sources have been updated to 3.10.1.
  UTILITIES:
  * The (full path to) the command tidy to be used for HTML
    validation can be set by environment variable R_TIDYCMD.
  * Setting environment variable _R_CHECK_RD_VALIDATE_RD2HTML_ to a
    false value will override R CMD check --as-cran and turn off HTML
    validation.  This provides a way to circumvent a problematic
    tidy.
    The 2006 version that ships with macOS is always skipped.
  C-LEVEL FACILITIES:
  * The undocumented legacy declarations of Sint, Sfloat, SINT_MAX
    and SINT_MIN in header R.h are deprecated.
  BUG FIXES:
  * fisher.test(d) no longer segfaults for "large" d; fixing PR#18336
    by preventing/detecting an integer overflow reliably.
  * tar(., files=*) now produces correctly the warning about invalid
    uid or gid of files, fixing PR#18344, reported by Martin Morgan.
  * tk_choose.files() with multi = FALSE misbehaved on paths
    containing spaces (PR#18334) (regression introduced in R 4.0.0).
  * sort(x, partial = ind, *) now works correctly notably for the
    non-default na.last = FALSE or TRUE, fixing PR#18335 reported by
    James Edwards.
  * Environment variable _R_CHECK_XREFS_REPOSITORIES_ is only used
    for checking .Rd cross-references in R CMD check (as documented)
    and not for other uses looking for a CRAN mirror.
  * The search for a CRAN mirror when checking packages now uses
    getOption("repos") if that specifies a CRAN mirror, even when it
    does not also specify all three Bioconductor repositories (as was
    previously required).
  * The HTML code generated by tools::Rd2HTML() has been improved to
    pass tidy 5.8.0.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1667217600">- CHANGES IN R 4.2.2:
  NEW FEATURES:
  * tools::Rdiff(useDiff = TRUE) checks for the presence of an
    external diff command and switches to useDiff = FALSE if none is
    found.  This allows R CMD Rdiff to always work.
  * On Windows, environment variable R_LIBCURL_SSL_REVOKE_BEST_EFFORT
    can be used to switch to only 'best-effort' SSL certificate
    revocation checks with the default "libcurl" download method.
    This reduces security, but may be needed for downloads to work
    with MITM proxies (PR#18379).
  * (macOS) The run-time check for libraries from XQuartz for X11 and
    Tcl/Tk no longer uses otool from the Apple Developer Tools
    (PR#18400).
  * The LaTeX style for producing the PDF manuals, Rd.sty, now loads
    the standard amsmath, amsfonts and amssymb packages for greater
    coverage of math commands in the Rd \eqn and \deqn macros.  The
    \mathscr LaTeX command is also provided (via the mathrsfs
    package, if available, or the amsfonts bundle otherwise),
    fulfilling the wish of PR#18398.
  * (Windows) The default format of readClipboard() and
    writeClipboard() has been changed to 13 (CF_UNICODETEXT).
  INSTALLATION on a UNIX-ALIKE:
  * The PDF manuals (if built) can be compacted by the new target
    make compact-pdf (at the top level or in directory doc/manual).
  * There is now configure support for LLVM clang 15 on Linux, which
    defaults to position-independent (PIE) executables whereas
    gfortran does not.
  * Many small changes to ease compilation (and suppress warnings)
    with LLVM clang 15.
  BUG FIXES:
  * Rscript -e would fail if stdin were closed (Reported by Henrik
    Bengtsson.)
  * qt(*, log.p=TRUE) in outer tails no longer produces NaN in its
    final steps, thus fixing PR#18360.
  * tools::Rd2latex() now escapes hashes and ampersands when writing
    URLs, fixing LaTeX errors with such URLs in \tabular.
  * When isGeneric(f, fdef=*) is used with mismatching names, the
    warning is better understandable; reported (with fix) in PR#18370
    by Gabe Becker.
  * poly(x, n) now works again (and is now documented) when x is a
    "Date" or "POSIXct" object, or of another class while fulfilling
    mode(x) == "numeric".  This also enables poly(x, *, raw=TRUE) for
    such variables.  Reported by Michael Chirico to R-devel.
  * write.table(), write.csv() and write.csv2() restore their
    numerical precision (internal equivalent of digits = 15) after an
    interrupt (PR#18384).
  * One can now read also byte FF from a clipboard connection
    (PR#18385).
  * source("") and source(character()) now give more helpful error
    messages.
  * R CMD check --as-cran set _R_CHECK_TIMINGS_ too late to have the
    intended effect.
  * as.POSIXlt(x) now also works with very large dates x, fixing
    PR#18401 reported by Hannes M"uhleisen.
  * Files can now be extracted even from very large zip archives
    (PR#18390, thanks to Martin Jakt).
  * Non-finite objects of class "POSIXlt" are now correctly coerced
    to classes "Date" and "POSIXct"; following up on the extension to
    format() them correctly.
  * Added methods for is.finite(), is.infinite() and is.nan() for
    "POSIXlt" date-time objects.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1678881600">- CHANGES IN R 4.2.3:
  C-LEVEL FACILITIES:
  * The definition of DL_FUNC in R_ext/Rdynload.h has been changed to
    be fully C-compliant.  This means that functions loaded _via_ for
    example R_GetCCallable need to be cast to an appropriate type if
    they have any arguments.
  * .Machine has a new element sizeof.time_t to identify old systems
    with a 32-bit type and hence a limited range of date-times (and
    limited support for dates millions of years from present).
  PACKAGE INSTALLATION:
  * (Windows) The default C++ standard had accidentally been left at
    C++11 when it was changed to C++14 on Unix.
  BUG FIXES:
  * As "POSIXlt" objects may be "partially filled" and their list
    components meant to be recycled, length() now is the length of
    the longest component.
  * as.POSIXlt.Date() could underflow for dates in the far past (more
    than half a million years BCE).
  * as.Date.POSIXlt(x) would return "1970-01-01" instead of NA in R
    4.2.2, e.g., for
    x &lt;- as.POSIXlt(c("2019-01-30","2001-1-1"))
    x$mon &lt;- c(0L, NA); as.Date(x)
  * R CMD check failed to apply enabled _R_CHECK_SUGGESTS_ONLY_ to
    examples and vignettes (regression in R 4.2.0).
  * R CMD check did not re-build vignettes in separate processes by
    default (regression in R 4.2.0).
  * Running examples from HTML documentation now restores previous
    knitr settings and options (PR#18420).
  * Quartz: fonts are now located using Core Graphics API instead of
    deprecated ATS which is no longer supported in the macOS 13 SDK
    (PR#18426).  This also addresses an issue where the currently
    used font in the Quartz device context was not correctly
    retained.
  * (Windows) Math symbols in text drawing functions are again
    rendered correctly (PR#18440).  This fixes a regression in R
    4.2.1 caused by a fix in PR#18382 which uncovered an issue in
    GraphApp due to which the symbol charset was not used with TT
    Symbol font face.
  * (Windows) Installing a package with a src/Makefile.{win,ucrt}
    file includes ~/.R/Makevars.win64 in the search for user
    makevars, as documented in "R Installation and Administration"
    and done for packages with a src/Makevars.{win,ucrt} file.
  * format(&lt;POSIXlt_w/_unbalanced_sec&gt;, "....%OS&lt;n&gt;") with n &gt; 0 no
    longer accidentally uses the unbalanced seconds, thanks to
    Suharto Anggono's report (including patch) in PR#18448.
  * solve.default(a, b) works around issues with some versions of
    LAPACK when a contains NA or NaN values.
  * When UseMethod() cannot dispatch, it no longer segfaults
    producing the error message in case of a long class(), thanks to
    Joris Vankerschaver's report (including patch) in PR#18447.
  * When example(foo, ..) produces graphics on an interactive device
    it needs to open itself, it now leaves devAskNewPage() unchanged
    even when it was FALSE, thus fixing a 14 years old '&lt;FIXME&gt;'.
  * packageDescription() again catches errors from encoding
    conversions. This also fixes broken packageVersion() in C locale
    on systems where iconv does not support transliteration.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1681128000">- add patch to build with libcurl &gt;= 8</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1682078400">- CHANGES IN R 4.3.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Calling &amp;&amp; or || with LHS or (if evaluated) RHS of length greater
    than one is now always an error, with a report of the form
    'length = 4' in coercion to 'logical(1)'
    Environment variable _R_CHECK_LENGTH_1_LOGIC2_ no longer has any
    effect.
  NEW FEATURES:
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.10.1.  (This caused some platform-dependent
    changes to package check output.)  And then to the sources from
    LAPACK version 3.11.0 (with changes only to double complex
    subroutines).
  * The included LAPACK sources have been updated to include the four
    Fortran 90 routines rather than their Fortran 77 predecessors.
    This may give some different signs in SVDs or
    eigendecompositions..  (This completes the transition to LAPACK
    3.10.x begun in R 4.2.0.)
  * The LAPACK sources have been updated to version 3.11.0.  (No new
    subroutines have been added, so this almost entirely bug fixes:
    Those fixes do affect some computations with NaNs, including R's
    NA.)
  * The parser now signals _classed_ errors, notably in case of the
    pipe operator |&gt;.  The error object and message now give line and
    column numbers, mostly as proposed and provided by Duncan Murdoch
    in PR#18328.
  * toeplitz() is now generalized for asymmetric cases, with a
    toeplitz2() variant.
  * xy.coords() and xyz.coords() and consequently, e.g., plot(x,y,
    log = "y") now signal a _classed_ warning about negative values
    of y (where log(.) is NA).  Such a warning can be specifically
    suppressed or caught otherwise.
  * Regular expression functions now check more thoroughly whether
    their inputs are valid strings (in their encoding, e.g. in
    UTF-8).
  * The performance of grep(), sub(), gsub() and strsplit() has been
    improved, particularly with perl = TRUE and fixed = TRUE.  Use of
    useBytes = TRUE for performance reasons should no longer be
    needed and is discouraged: it may lead to incorrect results.
  * apropos() gains an argument dot_internals which is used by the
    completion (help(rcompgen)) engine to also see base internals
    such as .POSIXct().
  * Support in tools::Rdiff() for comparing uncompressed PDF files is
    further reduced - see its help page.
  * qqplot(x, y, ...) gains conf.level and conf.args arguments for
    computing and plotting a confidence band for the treatment
    function transforming the distribution of x into the distribution
    of y (Switzer, 1976, _Biometrika_). Contributed by Torsten
    Hothorn.
  * Performance of package_dependencies() has been improved for cases
    when the number of dependencies is large.
  * Strings newly created by gsub(), sub() and strsplit(), when any
    of the inputs is marked as "bytes", are also marked as "bytes".
    This reduces the risk of creating invalid strings and accidental
    substitution of bytes deemed invalid.
  * Support for readLines(encoding = "bytes") has been added to allow
    processing special text files byte-by-byte, without creating
    invalid strings.
  * iconv(from = "") now takes into account any declared encoding of
    the input elements and uses it in preference to the native
    encoding.  This reduces the risk of accidental creation of
    invalid strings, particularly when different elements of the
    input have different encoding (including "bytes").
  * Package repositories in getOption("repos") are now initialized
    from the repositories file when utils is loaded (if not already
    set, e.g., in .Rprofile).  (From a report and patch proposal by
    Gabriel Becker in PR#18405.)
  * compactPDF() gets a verbose option.
  * type.convert() and hence read.table() get new option tryLogical =
    TRUE with back compatible default.  When set to false, converts
    "F" or "T" columns to character.
  * Added new unit prefixes "R" and "Q" for abbreviating
    (unrealistically large) sizes beyond 10^{27} in standard = "SI",
    thanks to Henrik Bengtsson's PR#18435.
  * as.data.frame()'s default method now also works fine with atomic
    objects inheriting from classes such as "roman", "octmode" and
    "hexmode", such fulfilling the wish of PR#18421, by Benjamin
    Feakins.
  * The as.data.frame.vector() utility now errors for wrong-length
    row.names.  It warned for almost six years, with "Will be an
    error!".
  * sessionInfo() now also contains La_version() and reports codepage
    and timezone when relevant, in both print() and toLatex() methods
    which also get new option tzone for displaying timezone
    information when locale = FALSE.
  * New function R_compiled_by() reports the C and Fortran compilers
    used to build R, if known.
  * predict(&lt;lm&gt;, newdata = *) no longer unnecessarily creates an
    offset of all 0s.
  * solve() for complex inputs now uses argument tol and by default
    checks for 'computational singularity' (as it long has done for
    numeric inputs).
  * predict(&lt;rank-deficient lm&gt;, newdata=*) now obeys a new argument
    rankdeficient, with new default "warnif", warning only if there
    are non-estimable cases in newdata.  Other options include
    rankdeficient = "NA", predicting NA for non-estimable newdata
    cases.  This addresses PR#15072 by Russ Lenth and is based on his
    original proposal and discussions in PR#16158 also by David Firth
    and Elin Waring.  Still somewhat experimental.
  * Rgui console implementation now works better with the NVDA screen
    reader when the full blinking cursor is selected.  The underlying
    improvements in cursor handling may help also other screen
    readers on Windows.
  * The drop-field control in GraphApp can now be left with the TAB
    key and all controls can be navigated in the reverse order using
    the Shift+TAB key, improving accessibility of the Rgui
    configuration editor.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now fully accurate
    (instead of to "only" minimally five digits).
  * demo(error.catching) now also shows off withWarnings() and
    tryCatchWEMs().
  * As an experimental feature the placeholder _ can now also be used
    in the rhs of a forward pipe |&gt; expression as the first argument
    in an extraction call, such as _$coef. More generally, it can be
    used as the head of a chain of extractions, such as _$coef[[2]].
  * Spaces in the environment variable used to choose the R session's
    temporary directory (TMPDIR, TMP and TEMP are tried in turn) are
    now fatal.  (On Windows the 'short path' version of the path is
    tried and used if that does not contain a space.)
  * all.equal.numeric() gets a new optional switch giveErr to return
    the numeric error as attribute.  Relatedly,
    stopifnot(all.equal&lt;some&gt;(a, b, ..)) is as "smart" now, as
    stopifnot(all.equal(....)) has been already, thus allowing
    customized all.equal&lt;Some&gt;() wrappers.
  * R on Windows is now able to work with path names longer than 260
    characters when these are enabled in the system (requires at
    least Windows 10 version 1607).  Packages should be updated to
    work with long paths as well, instead of assuming PATH_MAX to be
    the maximum length.  Custom front-ends and applications embedding
    R need to update their manifests if they wish to allow this
    feature.  See
    &lt;https://blog.r-project.org/2023/03/07/path-length-limit-on-windows&gt;
    for more information.
  * 'Object not found' and 'Missing argument' errors now give a more
    accurate error context. Patch provided by Lionel Henry in
    PR#18241.
  * The @ operator is now an S3 generic. Based on contributions by
    Tomasz Kalinowski in PR#18482.
  * New generic chooseOpsMethod() provides a mechanism for objects to
    resolve cases where two suitable methods are found for an Ops
    Group Generic. This supports experimenting with alternative
    object systems. Based on contributions by Tomasz Kalinowski in
    PR#18484.
  * inherits(x, what) now accepts values other than a simple
    character vector for argument what. A new generic, nameOfClass(),
    is called to resolve the class name from what. This supports
    experimenting with alternative object systems. Based on
    contributions by Tomasz Kalinowski in PR#18485.
  * Detection of BLAS/LAPACK in use (sessionInfo()) with FlexiBLAS
    now reports the current backend.
  * The "data.frame" method for subset() now warns about extraneous
    arguments, typically catching the use of = instead of == in the
    subset expression.
  * Calling a:b when numeric a or b is longer than one may now be
    made into an error by setting environment variable
    _R_CHECK_LENGTH_COLON_ to a true value, along the proposal in
    PR#18419 by Henrik Bengtsson.
  * density(x, weights = *) now warns if automatic bandwidth
    selection happens without using weights; new optional warnWbw may
    suppress the warning.  Prompted by Christoph Dalitz' PR#18490 and
    its discussants.
  * rm(list = *) is faster and more readable thanks to Kevin Ushey's
    PR#18492.
  * The plot.lm() function no longer produces a normal Q-Q plot for
    GLMs. Instead it plots a half-normal Q-Q plot of the absolute
    value of the standardized deviance residuals.
  * The print() method for class "summary.glm" no longer shows
    summary statistics for the deviance residuals by default.  Its
    optional argument show.residuals can be used to show them if
    required.
  * The tapply() function now accepts a data frame as its X argument,
    and allows INDEX to be a formula in that case. by.data.frame()
    similarly allows INDICES to be a formula.
  * The performance of df[j] &lt;- value (including for missing j) and
    write.table(df) has been improved for data frames df with a large
    number of columns.  (Thanks to Gabriel Becker's PR#18500,
    PR#18503 and discussants, prompted by a report from Toby Dylan
    Hocking on the R-devel mailing list.)
  * The matrix multiply operator %*% is now an S3 generic, belonging
    to new group generic matrixOps.  From Tomasz Kalinowski's
    contribution in PR#18483.
  * New function array2DF() to convert arrays to data frames,
    particularly useful for the list arrays created by tapply().
  DATES and TIMES:
  * On platforms where (non-UTC) datetimes before 1902 (or before
    1900 as with system functions on recent macOS) are guessed by
    extrapolating time zones from 1902-2037, there is a warning at
    the first use of extrapolation in a session.  (As all time zones
    post 2037 are extrapolation, we do not warn on those.)
  * (Platforms using --with-internal-tzone, including Windows and by
    default macOS). How years are printed in dates or date-times can
    be controlled by environment variable R_PAD_YEARS_BY_ZERO.  The
    default remains to pad to 4 digits by zeroes, but setting value
    no gives no padding (as used by default by glibc).
  * strftime() tries harder to determine the offset for the "%z"
    format, and succeeds on the mainstream R platforms.
  * strftime() has a limit of 2048 bytes on the string produced -
    attempting to exceed this is an error.  (Previously it silently
    truncated at 255 bytes.)
  * sessionInfo() records (and by default prints) the system time
    zone as part of the locale information.  Also, the source
    (system/internal) of the date-time conversion and printing
    functions.
  * Objects of class "POSIXlt" created in this version of R always
    have 11 components: component zone is always set, and component
    gmtoff is set for times in UTC and usually set on the (almost
    all) platforms which have C-level support, otherwise is NA.
  * There are comprehensive validity checks on the structure of
    objects of class "POSIXlt" when converting (including formatting
    and printing).  (This avoids mis-conversions of hand-crafted
    objects.)
  * There is some support for using the native date-time routines on
    macOS: this is only viable on recent versions (e.g. 12.6 and 13)
    and does get wrong some historical changes (before 1900, during
    WWII).  Use of --with-internal-tzone remains the default.
  * as.POSIXct(&lt;numeric&gt;) and as.POSIXlt(.) (without specifying
    origin) now work.  So does as.Date(&lt;numeric&gt;).
  * as.Date.POSIXct(., tz) now treats several tz values, notably
    "GMT" as equivalent to "UTC", proposed and improved by Michael
    Chirico and Joshua Ulrich in PR#17674.
  * Experimental balancePOSIXlt() utility allows using "ragged" and
    or out-of-range "POSIXlt" objects more correctly, e.g., in
    subsetting and subassignments.  Such objects are now documented.
    More experimentally, a "POSIXlt" object may have an attribute
    "balanced" indicating if it is known to be filled or fully
    balanced.
  * Functions axis.Date() and axis.POSIXct() are rewritten to gain
    better default tick locations and better default formats by using
    prettyDate(). Thanks to Swetlana Herbrandt.
  * The mapping of Windows' names for time zones to IANA's 'Olson'
    names has been updated.  When ICU is available (it is by
    default), it is used to get a mapping for the current region set
    in Windows.  This can be overridden by setting environment
    variable TZ to the desired Olson name - see OlsonNames() for
    those currently available.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 16
    and so packages that provide graphics devices should be
    reinstalled.
  * The grDevices and grid packages have new functions for rendering
    typeset glyphs, primarily: grDevices::glyphInfo() and
    grid::grid.glyph().
    Rendering of typeset glyphs is only supported so far on the
    Cairo-based graphics devices and on the pdf() and quartz()
    devices.
  * The defined behaviour for "clear" and "source" compositing
    operators (via grid::grid.group()) has been changed (to align
    better with simple interpretation of original Porter-Duff
    definitions).
  * Support for gradients, patterns, clipping paths, masks, groups,
    compositing operators, and affine transformations has been added
    to the quartz() device.
  INSTALLATION on a UNIX-ALIKE:
  * A system installation of generic LAPACK 3.10.0 or later will be
    preferred to the version in the R sources.
    configure option --with-lapack=no (equivalently --without-lapack)
    forces compilation of the internal LAPACK sources.
    If --with-lapack is not specified, a system liblapack is looked
    for and used if it reports version 3.10.0 or later and does not
    contain BLAS routines.
    Packages using LAPACK will need to be reinstalled if this changes
    to using an external library.
  * On aarch64 Linux platforms using GCC, configure now defaults to
  - fPIC (instead of -fpic), as desired in PR#18326.
  * configure now checks conversion of datetimes between POSIXlt and
    POSIXct around year 2020.  Failure (which has been seen on
    platforms missing tzdata) is fatal.
  * If configure option --with-valgrind-instrumentation is given
    value 1 or 2, option --with-system-valgrind-headers is now the
    default and ignored (with a warning).  It is highly recommended
    that the system headers are installed alongside valgrind: they
    are part of its packaging on some Linux distributions and
    packaged separately (e.g. in the valgrind-devel RPM) on others.
    configure will give a warning if they are not found.
    The system headers will be required in a future release of R to
    build with valgrind instrumentation.
  * libcurl 8.x is now accepted by configure: despite a change in
    major version number it changes neither API nor ABI.
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools43, an update of the Rtools42 toolchain.  It is
    based on gcc 12 and newer versions of MinGW-W64, binutils and
    libraries.  At this time R-devel can still be built using
    Rtools42 without changes, but when R-devel is installed via the
    installer, it will by default look for Rtools43.
  * Old make targets rsync-extsoft and 32-bit ones that are no longer
    needed have been removed.
  * Default builds (including for packages) no longer select C99.
    Thus the C standard used is the default for the compiler, which
    for the toolchain in Rtools43 is C17.  (This is consistent with
    Unix builds.)
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++17 where
    available (which it is on all currently checked platforms): if
    not C++14 or C++11 is used if available otherwise C++ is not
    supported.
  * USE_FC_LEN_T is the default: this uses the correct
    (compiler-dependent) prototypes for Fortran BLAS/LAPACK routines
    called from C/C++, and requires adjustment of many such calls -
    see 'Writing R Extensions' SS6.6.1.
  * There is initial support for C++23 as several compilers are now
    supporting -std=c++23 or -std=c++2b or similar.  As for C++20,
    there no additional configure checks for C++23 features beyond a
    check that the compiler reports a __cplusplus value greater than
    that in the C++20 standard.  C++ feature tests should be used.
  * There is support for a package to indicate the version of the C
    standard which should be used to compile it, and for the
    installing user to specify this.  In most cases R defaults to the
    C compiler's default standard which is C17 (a `bug-fix' of C11) -
    earlier versions of R or compilers may have defaulted to C99.
    Current options are:
    USE_C17 Use a standard that is at most C17.  The intention is to
    allow legacy packages to still be installed when later C
    standards become the default, including packages using new
    keywords as identifiers or with K&amp;R-style function
    declarations.  This will use C17 if available, falling back
    to C11.
    USE_C90 Use the C90 (aka C89) standard.  (As that standard did
    not require compilers to identify that version, all we can
    verify is that the compiler does not claim to be using a
    later standard.  It may accept C99 features - for example
    clang accepts // to make comments.)
    USE_C99 Use the C99 standard. This should be rarely needed - it
    avoids the few new features of C11/C17 which can be useful if
    a package assumes them if C17 is specified and they are not
    implemented.
    USE_C23 Use C23 (or in future, later).  Compiler/library support
    for C23 is still being implemented, but LLVM clang from
    15.0.0 and the upcoming GCC 13 have quite extensive support.
    These can be specified as part of the SystemRequirements field in
    the package's DESCRIPTION file or _via_ options --use-C17 and so
    on of R CMD INSTALL and R CMD SHLIB.
    For further details see "Writing R Extensions" SS1.2.5.
  * (Windows) A src/Makefile.ucrt or src/Makefile.win file is now
    included after R_HOME/etcR_ARCH/Makeconf and so no longer needs
    to include that file itself.  Installation of a package with such
    a file now uses a site Makevars file in the same way as a package
    with a src/Makevars.win file would.
  * configure is now passed crucial variables such as CC and CFLAGS
    in its environment, as many packages were not setting them (as
    documented in 'Writing R Extensions' SS1.2).
    This has most effect where configure is used to compile parts of
    the package - most often by cmake or libtool which obfuscate the
    actual compile commands used.
    Also used for configure.win and configure.ucrt on Windows.
  FORTRAN FLAGS:
  * The flag -fno-optimize-sibling-calls is no longer forced for
    gfortran 7 and later.  It should no longer be needed now using
    'hidden' character-length arguments when calling BLAS/LAPACK
    routines from C/C++ is the default even for packages.  (Unless
    perhaps packages call Fortran code from C/C++ without using R's
    headers and without allowing for these arguments.)
  C-LEVEL FACILITIES:
  * The deprecated S-compatibility macros DOUBLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * The deprecated legacy typedefs of Sint and Sfloat in header R.h
    are no longer defined, and that header no longer includes header
    limits.h from C nor climits from C++.
  * New macro CAD5R() is provided in Rinternals.h and used in a few
    places in the R sources.
  * ALTREP now supports VECSXP vectors. Contributed by Gabor Csardi
    in PR#17620.
  * The Rcomplex definition (in header R_ext/Complex.h) has been
    extended to prevent possible mis-compilation when interfacing
    with Fortran (PR#18430).  The new definition causes compiler
    warnings with static initializers such as {1, 2}, which can be
    changed to {.r=1, .i=2}.
    Using the new definition from C++ depends on compiler extensions
    supporting C features that have not been incorporated into the
    C++ standards but are available in g++ and clang++: this may
    result in C++ compiler warnings but these have been worked around
    for recent versions of common compilers (GCC, Apple/LLVM clang,
    Intel).
    It is intended to change the inclusion of header R_ext/Complex.h
    by other R headers, so C/C++ code files which make use of
    Rcomplex should include that header explicitly.
  UTILITIES:
  * R CMD check does more checking of package .Rd files, warning
    about invalid email addresses and (some) invalid URIs and noting
    empty \item labels in description lists.
  * R CMD check now also reports problems when reading package news
    in md (file NEWS.md) and (optionally) plain text (file NEWS)
    formats.
  * _R_CHECK_TIMINGS_ defaults to a value from the environment even
    for R CMD check --as-cran; this allows for exceptionally fast or
    slow platforms.
    It now applies to checking PDF and HTML versions of the manuals,
    and 'checking CRAN incoming feasibility'.
  * R CMD check can optionally (but included in --as-cran) check
    whether HTML math rendering _via_ KaTeX works for the package .Rd
    files.
  * Non-interactive debugger invocations can be trapped by setting
    the environment variable _R_CHECK_BROWSER_NONINTERACTIVE_ to a
    true value.  This is enabled by R CMD check --as-cran to detect
    the use of leftover browser() statements in the package.
  * The use of sprintf and vsprintf from C/C++ has been deprecated in
    macOS 13 and is a known security risk.  R CMD check now reports
    (on all platforms) if their use is found in compiled code:
    replace by snprintf or vsnprintf respectively. [*NB:* whether
    such calls get compiled into the package is platform-dependent.]
  * Where recorded at installation, R CMD check reports the C and
    Fortran compilers used to build R.
    It reports the OS in use (if known, as given by osVersion) as
    well as that R was built for.
    It notes if a C++ standard was specified which is older than the
    current default: many packages have used C++11 to mean 'not
    C++98' - as C++11 is the minimum supported since R 4.0.0, that
    specification can probably be removed.
  * R CMD INSTALL reports the compilers (and on macOS, the SDK) used,
    and this is copied to the output of R CMD check.
    Where a C++ standard is specified, it is reported.
  * R CMD check's 'checking compilation flags in Makevars' has been
    relaxed to accept the use of flags such as -std=f2008 in
    PKG_FFLAGS.
  * tools::buildVignettes() has a new argument skip, which is used by
    R CMD check to skip (and note) vignettes with unavailable
    \VignetteDepends (PR#18318).
  * New generic .AtNames() added to enable class-specific completions
    after @. The formerly internal function findMatches() is now
    exported, mainly for use in methods for .DollarNames() and
    .AtNames().
  DEPRECATED AND DEFUNCT:
  * default.stringsAsFactors() is defunct.
  * Calling as.data.frame.&lt;class&gt;() directly (for 12 atomic classes)
    is going to be formally deprecated, currently activated by
    setting the environment variable
    _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ to non-empty, which also
    happens in R CMD check --as-cran.
  BUG FIXES:
  * Hashed environments with sizes less than 5 can now grow.
    (Reported to R-devel by Duncan Garmonsway.)
  * as.character(&lt;Rd&gt;, deparse = TRUE) failed to re-escape curly
    braces in LaTeX-like text.  (Reported by Hadley Wickham in
    PR#18324.)
  * library() now passes its lib.loc argument when requiring Depends
    packages; reported (with fix) in PR#18331 by Mikael Jagan.
  * R CMD Stangle: improved message about 'Output' files.
  * head(x, n) and tail(x, n) now signal an error if n is not
    numeric, instead of incidentally "working" sometimes returning
    all of x.  Reported and discussed by Colin Fay, in PR#18357.
  * The "lm" method for summary() now gives the correct F-statistic
    when the model contains an offset.  Reported in PR#18008.
  * C() and `contrasts&lt;-`() now preserve factor level names when
    given a function object (as opposed a function name which did
    preserve names). Reported in PR#17616.
  * c(a = 1, 2)[[]] no longer matches 2 but rather signals a
    _classed_ error.  Reported and analysed by Davis Vaughan in
    PR#18367, a duplicate of PR#18004, by Jan Meis et al.  For
    consistency, NULL[[]] is also erroneous now.  x[[]] &lt;- v gives an
    error of the same class "MissingSubscriptError".
  * The relist() function of utils now supports NULL elements in the
    skeleton (PR#15854).
  * ordered(levels = *) (missing x) now works analogously to factor(,
    ordered=TRUE); reported (with fix) by Achim Zeileis in PR#18389.
  * User-defined Rd macro definitions can now span multiple lines,
    thanks to a patch from Duncan Murdoch. Previously, the Rd parser
    silently ignored everything after the first line.
  * Plain-text help (tools::Rd2txt()) now preserves an initial blank
    line for text following description list items.
  * tools::Rd2HTML() and tools::Rd2latex() no longer split \arguments
    and \value lists at Rd comments.
  * tools::Rd2latex() now correctly handles optional text outside
    \items of argument lists as well as bracketed text at the
    beginning of sections, e.g., \value{[NULL]}.
  * as.character(&lt;POSIXt&gt;) now behaves more in line with the methods
    for atomic vectors such as numbers, and is no longer influenced
    by options().  Ditto for as.character(&lt;Date&gt;).  The
    as.character() method gets arguments digits and OutDec with
    defaults _not_ depending on options().  Use of as.character(*,
    format = .) now warns.
  * Similarly, the as.character.hexmode() and *.octmode() methods
    also behave as good citizen methods and back compatibility option
    keepStr = TRUE.
  * The as.POSIXlt(&lt;POSIXlt&gt;) and as.POSIXct(&lt;POSIXct&gt;) default
    methods now do obey their tz argument, also in this case.
  * as.POSIXlt(&lt;Date&gt;) now does apply a tz (time zone) argument, as
    does as.POSIXct(); partly suggested by Roland Fuss on the R-devel
    mailing list.
  * as.Date.POSIXlt(x) now also works when the list components are of
    unequal length, aka "partially filled" or "ragged".
  * expand.model.frame() looked up variables in the wrong environment
    when applied to models fitted without data.  Reported in
    PR#18414.
  * time() now (also) uses the ts.eps = getOption("ts.eps") argument
    and thus by default rounds values very close to the start (or
    end) of a year.  Based on a proposal by Andre"i V. Kostyrka on
    R-help.
  * Printing of a factanal() result with just one factor and sort =
    TRUE now works regularly, fixing PR#17863 by Timothy Bates,
    thanks to the 'R Contributors' working group.
  * Printing 0-length objects of class "factor", "roman", "hexmode",
    "octmode", "person", "bibentry", or "citation" now prints
    something better, one of which fixes PR#18422, reported by
    Benjamin Feakins.
  * Sys.timezone() queries timedatectl only if systemd is loaded;
    addressing a report by Jan Gorecki in PR#17421.
  * The formula method of cor.test() had scoping problems when
    environment(formula) was not the calling environment; reported
    with a patch proposal by Mao Kobayashi in PR#18439.
  * attach() of an environment with active bindings now preserves the
    active bindings.  Reported by Kevin Ushey in PR#18425.
  * BLAS detection now works also with system-provided libraries not
    available as regular files.  This fixes detection of the
    Accelerate framework on macOS since Big Sur.  Reported by David
    Novgorodsky.
  * download.file() gives a helpful error message in case of an
    invalid download.file.method option, thanks to Colin Fay's report
    in PR#18455.
  * Sporadic crashes of Rterm when using completion have been fixed.
  * Rprof() is now more reliable.  A livelock in thread
    initialization with too short sampling interval has been fixed on
    macOS.  A deadlock in using the C runtime has been fixed on
    Windows.  A potential deadlock has been prevented on Unix.
  * Cursor placement in Rgui now works even after a fixed-width font
    is selected.
  * Mandatory options (options()) are now set on startup so that
    saving and restoring them always works (PR#18372).
  * Package installation, R CMD INSTALL or install.packages(*), now
    parses each of the &lt;pkg&gt;/R/*.R files individually instead of
    first concatenating and then parse()ing the large resulting file.
    This allows parser or syntax errors to be diagnosed with correct
    file names and line numbers, thanks to Simon Dedman's report and
    Bill Dunlap's patch in PR#17859.
    This _does_ require syntactically self contained R source files
    now, fixing another inadvertent bug.
  * predict.lm(&lt;model with offset&gt;) now finds the offset in the
    correct environment, thanks to Andr'e Gillibert's report and patch
    in PR#18456.
  * getInitial(&lt;formula&gt;) now finds the selfStart model in the
    correct environment.  (Reported by Ivan Krylov in PR#18368.)
  * Fix for possible segfault when using recently-added graphics
    features, such as gradients, clipping paths, masks, and groups
    with pdf(file=NULL).
  * class(m) &lt;- class(m) no longer changes a matrix m by adding a
    class _attribute_.
  * packageDate(pkg) now only warns once if there is no pkg.
  * When ts() creates a multivariate time series, "mts", it also
    inherits from "array" now, and is.mts() is documented _and_
    stricter.
  * Rd2txt() now preserves line breaks of \verb Rd content and from
    duplicated \cr.  The former also fixes the rendering of verbatim
    output from Rd \Sexpr in plain-text help.
  * uniroot(f, interval) should no longer wrongly converge _outside_
    the interval in some cases where abs(f(x)) == Inf for an x at the
    interval boundary, thanks to posts by Ben Bolker and Serguei
    Sokol on R-devel.
  * Vectorized alpha handling in palette functions such as in gray(),
    rainbow(), or hcl.colors() works correctly now, thanks to Achim
    Zeileis' report and patch in PR#18476.
  * Formatting and print()ing of bibentry objects has dropped the
    deprecated citation.bibtex.max argument, such that the bibtex
    argument's default for print.bibentry() depends directly on the
    citation.bibtex.max option, whereas in format.bibentry() the
    option no longer applies.
  * Attempting to use a character string naming a foreign function
    entry point in a foreign function call in a package will now
    signal an error if the packages has called R_forceSymbols to
    specify that symbols must be used.
  * An error in table() could permanently set options(warn=2)
    promoting all subsequent warnings to errors.
  * The sigma() function gave misleading results for binary GLMs.  A
    new method for objects of class "glm" returns the square root of
    the estimate of the dispersion parameter using the same
    calculation as summary.glm().
  * bs() and ns() in the (typical) case of automatic knot
    construction, when some of the supposedly inner knots coincide
    with boundary knots, now moves them inside (with a warning),
    building on PR#18442 by Ben Bolker.
  * R CMD on Windows now skips the site profile with --no-site-file
    and --vanilla even when R_PROFILE is set (PR#18512, from Kevin
    Ushey).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1686916800">- CHANGES IN R 4.3.1:
  C-LEVEL FACILITIES:
  * The C-level API version of R's integrate(), Rdqags() in Applic.h,
    now returns the correct number of integrand evaluations neval,
    fixing PR#18515 reported and diagnosed by Stephen Wade.
  * The C prototypes for LAPACK calls dspgv and dtptrs in
    R_exts/Lapack.h had one too many and one too few character length
    arguments - but this has not caused any known issues. To get the
    corrected prototypes, include
    [#]include &lt;Rconfig.h&gt; // for PR18534fixed
    [#]ifdef PR18534fixed
    [#] define usePR18534fix 1
    [#]endif
    [#]include &lt;R_exts/Lapack.h&gt;
    in your C/C++ code (PR#18534).
  INSTALLATION:
  * Many of the checks of esoteric Internet operations and those
    using unreliable external sites have been moved to a new target
    that is not run by default and primarily intended for the core
    developers.  To run them use
    cd tests; make test-Internet-dev
  BUG FIXES:
  * .S3methods(), typically called from methods(), again marks
    methods from package base as visible.
    Also, the visibility of non-base methods is again determined by
    the method's presence in search().
  * tools::Rdiff() is now more robust against invalid strings, fixing
    installation tests on Windows without Rtools installed
    (PR#18530).
  * Fix (new) bug in hcl.colors(2, *), by Achim Zeileis (PR#18523).
  * head(., &lt;illegal&gt;) and tail(..) now produce more useful "Error in
    ...." error messages, fixing PR#18362.
  * Package code syntax on Windows is checked in UTF-8 when UTF-8 is
    the native encoding.
  * na.contiguous(x) now also returns the first run, when it is at
    the beginning and there is a later one of the same length;
    reported to R-devel, including a fix, by Georgi Boshnakov.
    Further, by default, it modifies only an existing attr(*,"tsp")
    but otherwise no longer sets one.
  * chol(&lt;not pos.def&gt;, pivot = &lt;T|F&gt;) now gives a correct error or
    warning message (depending on pivot), thanks to Mikael Jagan's
    (PR#18541).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1699012800">- CHANGES IN R 4.3.2:
  NEW FEATURES:
  * The default initialization of the "repos" option from the
    repositories file at startup can be skipped by setting
    environment variable R_REPOSITORIES to NULL such that
    getOption("repos") is empty if not set elsewhere.
  * qr.X() is now an implicit S4 generic in methods.
  * iconv(to = "ASCII//TRANSLIT") is emulated using substitution on
    platforms which do not support it (notably Alpine Linux).  This
    should give a human-readable conversion in ASCII on all platforms
    (rather than NA_character_).
  * trans3d() gains options continuous and verbose addressing the
    problem of possible "wrap around" when projecting too long
    curves, as reported by Achim Zeileis in PR#18537.
  * tools::showNonASCII() has been rewritten to work better on macOS
    14 (which has a changed implementation of iconv()).
  * tiff(type = "quartz") (the default on macOS) now warns if
    compression is specified: it continues to be ignored.
  INSTALLATION on a UNIX-ALIKE:
  * There is some support for building with Intel's LLVM-based
    compilers on x86_64 Linux, such as (C) icx, (C++) ipcx and
    (Fortran) ifx from oneAPI 2023.x.y.
  * There is support for using LLVM's flang-new as the Fortran
    compiler from LLVM 16.0.x (preferably 17.0.0 or later).
  UTILITIES:
  * R CMD check reports the use of the Fortran 90 random number
    generator RANDOM_NUMBER() and the subroutines to initialize it.
    'Writing R Extensions' has example code to use R's RNGs from
    Fortran.
  BUG FIXES:
  * substr(x, n, L) &lt;- cc now works (more) correctly for multibyte
    UTF-8 strings x when L &gt; nchar(x), thanks to a report and patch
    by 'Architect 95'.
  * contrib.url(character()) now returns 0-length character() as
    documented, which also avoids spurious warnings from
    available.packages() et al. in the edge case of an empty vector
    of repository URLs.
  * readChar(., 4e8) no longer fails, thanks to Kodi Arfer's report
    (PR#18557).
  * lapply(&lt;list&gt;, as.data.frame) no longer warns falsely for some
    base vector components.
  * Communication between parent and child processes in the multicore
    part of parallel could fail on platforms that do not support an
    arbitrarily large payload in system functions read()/write() on
    pipes (seen on macOS where a restriction to INT_MAX bytes is
    documented, without doing a partial read unlike Linux). The
    payload is now split into 1Gb chunks to avoid that problem.
    (PR#18571)
  * qqplot(x,y, conf.level=.) gives better confidence bounds when
    length(x) != length(y), thanks to Alexander Ploner's report and
    patch proposal (PR#18557).
  * norm(&lt;0-length&gt;, "2") now gives zero instead of an error, as all
    the other norm types, thanks to Mikael Jagan's PR#18542.
  * Build-stage Rd macros \packageAuthor and \packageMaintainer now
    process Authors@R, fixing NA results when the package DESCRIPTION
    omits Author and Maintainer fields.
  * Formatting and printing complex numbers could give things like
    0.1683-0i because of rounding error: -0i is now replaced by +0i.
  * postscript() refused to accept a title comment containing the
    letter "W" (PR#18599).
  * isoreg(c(1,Inf)) signals an error instead of segfaulting, fixing
    PR#18603.
  * tiff(type = "Xlib") was only outputting the last page of
    multi-page plots.
  * tools::latexToUtf8() again knows about \~{n} and other letters
    with tilde, fixing a regression in R 4.3.0, and about \^{i} as an
    alternative to \^{\i} (similarly with other accents).
    Furthermore, LaTeX codes for accented I letters are now correctly
    converted, also fixing related mistakes in
    tools::encoded_text_to_latex().
  * tar(*, tar = "internal") no longer creates out-of-spec tar files
    in the very rare case of user or group names longer than 32
    bytes, fixing PR#17871 with thanks to Ivan Krylov.
  * When using the "internal" timezone datetime code, adding a
    fraction of a second no longer adds one second, fixing PR#16856
    from a patch by Ivan Krylov.
  * tools::checkRd() no longer produces spurious notes about
    "unnecessary braces" from multi-line Rd results of \Sexpr macros.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1709208000">- CHANGES IN R 4.3.3:
  NEW FEATURES:
  * iconv() now fixes up variant encoding names such as "utf8"
    case-insensitively.
  DEPRECATED AND DEFUNCT:
  * The legacy encoding = "MacRoman" is deprecated in pdf() and
    postscript(): support was incomplete in earlier versions of R.
  BUG FIXES:
  * Arguments are now properly forwarded to methods on S4 generics
    with ... in the middle of their formal arguments. This was broken
    for the case when a method introduced an argument but did not
    include ... in its own formals. Thanks to Herv'e Pag`es for the
    report PR#18538.
  * Some invalid file arguments to pictex(), postscript() and xfig()
    opened a file called NA rather than throw an error.  These
    included postscript(NULL) (which some people expected to work
    like pdf(NULL)).
  * Passing filename = NA to svg(), cairo_pdf(), cairo_ps() or the
    Cairo-based bitmap devices opened a file called NA: it now throws
    an error.
  * quartz(file = NA) opened a file called NA, including when used as
    a Quartz-based bitmap device.  It now gives an error.
  * rank(&lt;long vector&gt;) now works, fixing PR#18617, thanks to Ilia
    Kats.
  * seq.int() did not adequately check its length.out argument.
  * match(&lt;POSIXct&gt;, .) is correct again for differing time zones,
    ditto for "POSIXlt", fixing PR#18618 reported by Bastian Klein.
  * drop.terms(*, dropx = &lt;0-length&gt;) now works, fixing PR#18563 as
    proposed by Mikael Jagan.
  * drop.terms(*) keeps + offset(.) terms when it should, PR#18565,
    and drop.terms() no longer makes up a response, PR#18566, fixing
    both bugs thanks to Mikael Jagan.
  * getS3method("t", "test") no longer finds the t.test() function,
    fixing PR#18627.
  * pdf() and postscript() support for the documented Adobe encodings
    "Greek" and "Cyrilllic" was missing (although the corresponding
    Windows' codepages could be used).
  * Computations of glyph metric information for pdf() and
    postscript() did not take into account that transliteration could
    replace one character by two or more (only seen on macOS 14) and
    typically warned that the information was not known.
  * rank(x) no longer overflows during integer addition, when
    computing rank average for largish but not-yet long vector x,
    fixing PR#18630, thanks to Ilia Kats.
  * list.files() on Windows now returns also files with names longer
    that 260 bytes (the Windows limit is 260 characters).
    Previously, some file names particularly with 'East Asian'
    characters were omitted.
  * cov2cor(&lt;0 x 0&gt;) now works, fixing PR#18423 thanks to Mikael
    Jagan and Elin Waring.
  * cov2cor(&lt;negative diagonal&gt;) and similar now give one warning
    instead of two, with better wording, fixing PR#18424 thanks to
    Mikael Jagan.
  * tools:: startDynamicHelp() now ensures port is in proper range,
    fixing PR#18645.
  * pbeta(x, a,b) is correct now for x=0 or 1 in the boundary cases
    where a or b or both are 0, fixing PR#18672 thanks to Michael
    Fay.
  * pmatch(x, table) for large table, also called for data frame row
    selection, dfrm[nm, ], is now interruptible, fixing PR#18656.
  * predict(&lt;rank-deficient lm&gt;, newdata=*) fix computing of nbasis,
    see Russ Lenth's comment 29 in PR#16158.
  * Added a work-around for a bug in macOS 14.3.1 and higher which
    prevents R plots in the Quartz Cocoa device from updating on
    screen.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1713960000">- CHANGES IN R 4.4.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Startup banners, R --version, sessionInfo() and R CMD check no
    longer report (64-bit) as part of the platform as this is almost
    universal - the increasingly rare 32-bit platforms will still
    report (32-bit).
    On Windows, ditto for window titles.
  * is.atomic(NULL) now returns FALSE, as NULL is not an atomic
    vector.  Strict back-compatibility would replace is.atomic(foo)
    by (is.null(foo) || is.atomic(foo)) but should happen only
    sparingly.
  NEW FEATURES:
  * The confint() methods for "glm" and "nls" objects have been
    copied to the stats package.  Previously, they were stubs which
    called versions in package MASS. The MASS namespace is no longer
    loaded if you invoke (say) confint(glmfit).  Further, the "glm"
    method for profile() and the plot() and pairs() methods for class
    "profile" have been copied from MASS to stats.  (profile.nls()
    and plot.profile.nls() were already in stats.)
  * The confint() and profile methods for "glm" objects have gained a
    possibility to do profiling based on the Rao Score statistic in
    addition to the default Likelihood Ratio. This is controlled by a
    new test = argument.
  * The pairs() method for "profile" objects has been extended with a
    which = argument to allow plotting only a subset of the
    parameters.
  * The "glm" method for anova() computes test statistics and
    p-values by default, using a chi-squared test or an F test
    depending on whether the dispersion is fixed or free.  Test
    statistics can be suppressed by giving argument test a false
    logical value.
  * In setRepositories() the repositories can be set using their
    names via name = instead of index ind =.
  * methods() and .S3methods() gain a all.names option for the (rare)
    case where functions starting with a . should be included.
  * Serializations can now be interrupted (e.g., by Ctrl-C on a
    Unix-alike) if they take too long, e.g., from save.image(),
    thanks to suggestions by Ivan Krylov and others on R-devel.
  * New startup option --max-connections to set the maximum number of
    simultaneous connections for the session.  Defaults to 128 as
    before: allowed values up to 4096 (but resource limits may in
    practice restrict to smaller values).
  * R on Windows (since Windows 10 2004) now uses the new Segment
    Heap allocator. This may improve performance of some
    memory-intensive applications.
  * When R packages are built, typically by R CMD build &lt;pkg&gt;, the
    new --user=&lt;build_user&gt; option overrides the (internally
    determined) user name, currently Sys.info()["user"] or LOGNAME.
    This is a (modified) fulfillment of Will Landau's suggestion in
    PR#17530.
  * tools::testInstalledBasic() gets new optional arguments outDir
    and testSrcdir, e.g., allowing to use it in a &lt;builddir&gt; !=
    &lt;srcdir&gt; setup, and in standard "binary" Windows installation
  * if* a source tests/ folder is present.
  * range(&lt;DT_with_Inf&gt;, finite = TRUE) now work for objects of class
    "Date", "POSIXct", and "POSIXlt" with infinite entries,
    analogously to range.default(), as proposed by Davis Vaughan on
    R-devel.  Other range()-methods can make use of new function
    .rangeNum().
  * New .internalGenerics object complementing .S3PrimitiveGenerics,
    for documentation and low-level book-keeping.
  * grid() now invisibly returns the x- and y- coordinates at which
    the grid-lines were drawn.
  * norm(., type) now also works for complex matrices.
  * kappa(., exact = TRUE, norm = *) now works for all norms and also
    for complex matrices.  In symmetric / triangular cases, the new
    argument uplo = "U" | "L" allows the upper or lower triangular
    part to be specified.
  * memDecompress(type = "unknown") recognizes compression in the
    default 'zlib' format as used by memCompress(type = "gzip").
  * memCompress() and memDecompress() will use the libdeflate library
    (&lt;https://github.com/ebiggers/libdeflate&gt;) if installed.  This
    uses the same type of compression for type = "gzip" but is 1.5-2x
    faster than the system libz library on some common platforms: the
    speed-up may depend on the library version.
  * diff() for objects of class "Date", "POSIXct", and "POSIXlt"
    accepts a units argument passed via ....
  * Dynamic help now does a much better job of rendering package
    DESCRIPTION metadata.
  * Rprof() gains an event argument and support for elapsed (real)
    time profiling on Unix (PR#18076).
  * filled.contour() gains a key.border argument.
  * tools::update_pkg_po() gets arguments pot_make and mo_make for
    _not_ re-making the corresponding files, and additionally a
    verbose argument.
  * Hexadecimal string colour specifications are now accepted in
    short form, so, for example, we can use "#123", which is
    equivalent to "#112233".
    Thanks to MikeFC for the original idea and Ella Kaye, Malcolm
    Barrett, George Stagg, and Hanne Oberman for the patch.
  * Plain-text help shows \var markup by angle brackets.
  * The new experimental primitive function declare() is intended to
    eventually allow information about R code to be communicated to
    the interpreter, compiler, and code analysis tools. The syntax
    for declarations is still being developed.
  * Functions psmirnov(), qsmirnov() and rsmirnov() in package stats
    have had argument two.sided renamed to alternative, to take into
    account that the permutation distributions of the one-sided
    statistics can be different in the case of ties.  Consequence of
    PR#18582.
  * sort() is now an implicit S4 generic in methods.
  * Formatting and printing, format(z), print(z), of complex vectors
    z no longer zap relatively small real or imaginary parts to zero,
    fixing PR#16752.  This is an API change, as it was documented
    previously to round real and imaginary parts together on purpose,
    producing nicer looking output.  As mentioned, e.g. in the PR,
    this change is compatible with many other "R-like" programming
    environments.
    We have simplified the internal code and now basically format the
    real and imaginary parts independently of each other.
  * New experimental functions Tailcall() and Exec() to support
    writing stack-space-efficient recursive functions.
  * Where characters are attempted to be plotted by pdf(),
    postscript() and xfig() which are not in the selected 8-bit
    character set (most often Latin-1) and the R session is using a
    UTF-8 locale, the warning messages will show the UTF-8 character
    rather than its bytes and one dot will be substituted per
    character rather than per byte.  (Platforms whose iconv() does
    transliteration silently plot the transliteration.)
    In a UTF-8 locale some transliterations are now done with a
    warning (e.g., dashes and Unicode minus to hyphen, ligatures are
    expanded, permille (‰) is replaced by o/oo), although the OS may
    have got there first.  These are warnings as they will continue
    to be replaced by dots in earlier versions of R.
  * The matrix multiplication functions crossprod() and tcrossprod()
    are now also primitive and S3 generic, as %*% had become in R
    4.3.0.
  * source() and example() have a new optional argument catch.aborts
    which allows continued evaluation of the R code after an error.
  * The non-Quartz tiff() devices allow additional types of
    compression if supported by the platform's libtiff library.
  * The list of base and recommended package names is now provided by
    tools::standard_package_names().
  * cairo_pdf() and cairo_ps() default to onefile = TRUE to closer
    match pdf() and postscript().
  * New option catch.script.errors provides a documented way to catch
    errors and then continue in non-interactive use.
  * L %||% R newly in base is an expressive idiom for the phrases
    if(!is.null(L)) L else R or if(is.null(L)) R else L.
  * The return value from warnings() now always inherits from
    "warnings" as documented, now also in the case of no warnings
    where it previously returned NULL.
  * as.complex("1i") now returns 0 + 1i instead of NA with a warning.
  * z &lt;- c(NA, 1i) now keeps the imaginary part Im(z[1]) == 0, no
    longer coercing to NA_complex_.  Similarly, cumsum(z) correctly
    sums real and imaginary parts separately, i.e., without
    "crosstalk" in case of NAs.
  * On Alpine Linux iconv() now maps "latin2", "latin-2", "latin9"
    and "latin-9" to encoding names the OS knows about
    (case-insensitively).
  * iconv(sub = "Unicode") now always zero-pads to four (hex) digits,
    rather than to 4 or 8.  (This seems to have become the convention
    once Unicode restricted the number of Unicode points to 2^21 - 1
    and so will never need more than 6 digits.)
  * NCOL(NULL) now returns 0 instead of 1, for consistency with
    cbind().
  * The information for the Euro glyph missing from the Adobe .afm
    files for the Courier, Helvetica and Times families has been
    copied from their URW equivalents - this will improve vertical
    centring in the pdf() and postscript() devices.
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.12.0.  The changes are almost entirely cosmetic.
  * The included LAPACK sources have been updated to version 3.12.0
    and some further double-complex routines added.
  * There are new font families for the 2014--5 URW 2.0 fonts (see
    ?pdf) which are included in recent versions of Ghostscript.
    These have font widths for most Greek glyphs and a few others
    which were missing from the original versions (whose font
    families remain available for reproducibility, although
    Ghostscript-based viewers will render using the 2.0 versions).
  * Improve the large-n efficiency of as.matrix(&lt;dist&gt;), thanks an R
    contributors effort, notably by Tim Taylor and Heather Turner,
    see PR#18660.
  * The default and numeric methods of all.equal() get a check.class
    option.
  * zapsmall() gets new optional arguments, function mFUN and min.d,
    for extra flexibility; fulfills a wish in PR#18199.  Also, it is
    now an implicit S4 generic in package methods.
  * The Rd filter for aspell() gains an ignore argument.
  * New generic function sort_by(), primarily useful for the
    data.frame method which can be used to sort rows of a data frame
    by one or more columns.
  * The icence headers for the RPC code in src/extra/xdr have been
    updated to use the GPL-compatible licence published by Oracle
    America in 2010.
  * New function pkg2HTML() in tools to create single-page HTML
    reference manuals for R packages.
  * The byte code evaluator now uses less C stack space for recursive
    calls to byte-compiled functions. It also makes more of an effort
    to avoid allocations for scalar return values.
  * New completion option backtick (disabled by default) allows
    non-syntactic completions to be wrapped in backquotes. This is
    currently only useful for Jupyter notebooks via the IRkernel
    package, and may cause problems for other backends.
  INSTALLATION:
  * The parser has been updated to work with bison 3.8.2, which is
    now used for the pre-generated parsers in gram.c, file.c, and
    gramRd.c. A few parser error messages have changed, which may
    affect code that relies on exact messages.
  INSTALLATION on a UNIX-ALIKE:
  * System valgrind headers are now required to use configure option
  - -with-valgrind-instrumentation with value 1 or 2.
  * configure will warn if it encounters a 32-bit build, as that is
    nowadays almost untested.
  * Environment variable R_SYSTEM_ABI is no longer used and so no
    longer recorded in etc/Renviron (it was not on Windows and was
    only ever used when preparing package tools).
  * If the libdeflate library and headers are available, libdeflate
    rather than libz is used to (de)compress R objects in lazy-load
    databases.  Typically tasks spend up to 5% of their time on such
    operations, although creating lazy-data databases is one of the
    exceptions.
    This can be suppressed if the library is available by the
    configure option --without-libdeflate-compression.
  * configure option --enable-lto=check has not worked reliably since
    2019 and has been removed.
  * The minimum autoconf requirement for a maintainer build has been
    increased to autoconf 2.71.
    It is intended to increase this to 2.72 for R 4.5.0: the
    distributed configure file was generated using 2.72.
  * The minimum version requirement for an external LAPACK has been
    reduced to 3.9.0.
  * No default C++ compiler is set if no C++17 compiler is detected:
    there is no longer an automatic fallback to C++14 or C++11.
    Compilers from the last five years should have sufficient
    support: for others macros CXX and CXXSTD can be set in file
    config.site to provide a fallback if needed.
    The Objective-C++ compiler now by default uses the standard
    selected by R for C++ (currently C++17) rather than the default
    standard for the C++ compiler (which on macOS is still C++98).
  INSTALLATION on macOS:
  * A new configure option --with-newAccelerate makes use of Apple's
    'new' BLAS / LAPACK interfaces in their Accelerate framework.
    Those interfaces are only available in macOS 13.3 or later, and
    building requires SDK 13.3 or later (from the Command Line Tools
    or Xcode 14.3 or later).
    By default the option uses new Accelerate for BLAS calls: to also
    use it for LAPACK use option --with-newAccelerate=lapack.  The
    later interfaces provide LAPACK 3.9.1 rather than 3.2.1: 3.9.1 is
    from 2021-04 and does not include the improved algorithms
    introduced in LAPACK 3.10.0 (including for BLAS calls).
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools44, an update of the Rtools43 toolchain.  It is
    based on GCC 13 and newer versions of MinGW-W64, binutils and
    libraries (targeting 64-bit Intel CPUs).  R-devel can no longer
    be built using Rtools43 without changes.
  * Rtools44 has experimental support for 64-bit ARM (aarch64) CPUs
    _via_ the LLVM 17 toolchain using lld, clang/flang-new and
    libc++.
  UTILITIES:
  * R CMD check notes when S4-style exports are used without
    declaring a strong dependence on package methods.
  * tools::checkRd() (used by R CMD check) detects more problems with
    \Sexpr-based dynamic content, including bad nesting of \Sexprs
    and invalid arguments.
  * tools::checkRd() now reports Rd titles and section names ending
    in a period; this is ignored by R CMD check unless environment
    variable _R_CHECK_RD_CHECKRD_MINLEVEL_ is set to -5 or smaller.
  * R CMD check now notes Rd files without an \alias, as long
    documented in 'Writing R Extensions' §1.3.1.  The check for a
    missing \description has been moved from tools::checkRd() to
    tools::checkRdContents().
  * R CMD check now visits inst/NEWS.Rd and OS-specific man
    subdirectories when checking Rd files.
  * tools::checkDocFiles() and tools::checkRdContents() now also
    check internal Rd files by default, but "specially" (ignoring
    missing documentation of arguments).
  * R CMD Rdiff gets option --useEx.
  * R CMD check now warns on non-portable uses of Fortran KIND such
    as INTEGER(KIND=4) and REAL(KIND=8).
    To see the failing lines set environment variable
    _R_CHECK_FORTRAN_KIND_DETAILS_ to a true value.
  * When checking Rd files, R CMD check now notes some of the "lost
    braces" that tools::checkRd() finds.  Typical problems are Rd
    macros missing the initial backslash (e.g., code{...}), in-text
    set notation (e.g., {1, 2}, where the braces need escaping), and
    \itemize lists with \describe-style entries of the form
    \item{label}{description}.
  * R CMD INSTALL (and hence check) will compile C++ code with
  - DR_NO_REMAP if environment variable _R_CXX_USE_NO_REMAP_ is set
    to a true value.  It is planned that this will in future become
    the default for compiling C++.
  * The new built-in Rd macro \dontdiff{} can be used to mark example
    code whose output should be ignored when comparing check output
    to reference output (tests/Examples/&lt;pkg&gt;-Ex.Rout.save).  The
    \dontdiff tag, like \donttest, is _not_ shown on the rendered
    help page, so provides a clean alternative to ##
    IGNORE_RDIFF_(BEGIN|END) comments.
  * R CMD build when there is no NAMESPACE, now uses the recommended
    exportPattern("^[^.]"), instead of exporting everything.
  * R CMD check now warns about non-ASCII characters in the NAMESPACE
    file (in addition to R files). Such packages are not portable and
    may fail to install on some platforms.
  C-LEVEL FACILITIES:
  * Headers R_ext/Applic.h and R-ext/Linpack.h used to include
    R_ext/BLAS.h although this was undocumented and unneeded by their
    documented entry points.  They no longer do so.
  * New function R_missing(), factored out from do_missing(), used to
    fix PR#18579.
  * SEXP type S4SXP has been renamed to OBJSXP to support
    experimenting with alternative object systems.  The S4SXP value
    can still be used in C code but is now deprecated.  Based on
    contributions from the R Consortium's Object-Oriented Programming
    Working Group.
  * New function pow1p(x,y) for accurate (1+x)^y.
  * mkCharLenCE was incorrectly documented to take a size_t length
    but was implemented with int (and character strings in R are
    limited to 2^31 - 1 bytes).
  DEPRECATED AND DEFUNCT:
  * data() no longer handles zipped data from long-defunct (since R
    2.13.0) --use-zip-data installations.
  * The legacy graphics devices pictex() and xfig() are now
    deprecated.  They do not support recent graphics enhancements and
    their font handling is rudimentary. The intention is to retain
    them for historical interest as long as they remain somewhat
    functional.
  * Support for encoding = "MacRoman" has been removed from the pdf()
    and postscript() devices - this was a legacy encoding supporting
    classic macOS up to 2001 and no longer has universal libiconv
    support.
  * is.R() is deprecated as no other S dialect is known to be in use
    (and this could only identify historical dialects, not future
    ones).
    Further information on calls can be obtained by setting the
    environment variable _R_DEPRECATED_IS_R_ to error which turns the
    deprecation warning into an error and so by default gives a
    traceback.  (This is done by R CMD check --as-cran.)
  * UseMethod() no longer forwards local variables assigned in the
    generic function into method call environments before evaluating
    the method body. This makes method calls behave more like
    standard function calls and makes method code easier to analyze
    correctly.
  * The twelve as.data.frame.&lt;class&gt;() methods which were deprecated
    only via _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ and in R CMD
    check --as-cran are formally deprecated now in favour of calling
    as.data.frame() or as.data.frame.vector().  The deprecation
    "check" now works also when as.data.frame() is S4 generic thanks
    to Ivan Krylov.
  * The default method for the directional comparison operators &lt;, &gt;,
    &lt;=, and &gt;= now signals an error when one of the operands is a
    language object, i.e. a symbol or a call.
  * For terms.formula(), deprecate abb and neg.out arguments
    _formally_ in addition to just documenting it.
  BUG FIXES:
  * The methods package is more robust to not being attached to the
    search path.  More work needs to be done.
  * pairwise.t.test() misbehaved when subgroups had 0 DF for
    variance, even with pool.sd = TRUE.  (PR#18594 by Jack Berry).
  * Probability distribution functions [dpq]&lt;distrib&gt;(x, *), but also
    bessel[IKJY](x, .) now consistently preserve attributes(x) when
    length(x) == 0, e.g., for a 2 x 0 matrix, thanks to Karolis
    Koncevičius' report PR#18509.
  * Group "Summary" computations such as sum(1:3, 4, na.rm = 5, NA,
    7, na.rm = LL) now give an error instead of either 17 or NN for
    LL true or false, as proposed by Ivan Krylov on the R-devel
    mailing list.  (This also means it is now an error to specify
    na.rm more than once.)
  * as.complex(x) now returns complex(real = x, imaginary = 0) for
    _all_ numerical and logical x, notably also for NA or
    NA_integer_.
  * Directories are now omitted by file.copy(, recursive = FALSE) and
    in file.append() (PR#17337).
  * gsub() and sub() are now more robust to integer overflow when
    reporting errors caused by too large input strings (PR#18346).
  * Top-level handlers are now more robust to attempts to remove a
    handler whilst handlers are running (PR#18508).
  * The handling of Alt+F4 in dialogs created on Windows using
    GraphApp has been fixed (PR#13870).
  * density() more consistently computes grid values for the
    FFT-based convolution, following Robert Schlicht's analysis and
    proposal in PR#18337, correcting density values typically by a
    factor of about 0.999.  Argument old.coords = TRUE provides back
    compatibility.
  * palette.colors() gains a name argument that defaults to FALSE
    controlling whether the vector of colours that is returned has
    names (where possible).  PR#18529.
  * tools::xgettext() no longer extracts the (non-translatable) class
    names from warningCondition and errorCondition calls.
  * S3method(&lt;gen&gt;, &lt;class&gt;, &lt;func&gt;) in the NAMESPACE file now works
    (again) when &lt;func&gt; is visible from the namespace, e.g.,
    imported, or in base.
  * getParseData(f) now also works for a function defined in the
    first of several &lt;pkg&gt;/R/*.R source files, thanks to Kirill
    Müller's report and Duncan Murdoch's patch in PR#16756.
  * Rd \Sexpr macros with nested #ifdef conditionals were not
    processed.
  * A non-blocking connection with non-default encoding (such as a
    socket) now correctly returns from readLines() after new data has
    arrived also when its EOF had been reached previously.  Thanks to
    Peter Meilstrup's report on R-devel and Ivan Krylov's report and
    patch proposal in PR#18555.
  * tools::checkRdContents() failed to detect empty argument
    descriptions when they spanned multiple lines, including those
    generated by prompt().  These cases are now noted by R CMD check.
  * Plain-text help no longer outputs spurious colons in the
    arguments list (for multi-line \item labels in the Rd source).
  * kappa() and rcond() work correctly in more cases; kappa(., norm =
    "2") now warns that it computes the 1-norm with (default) exact =
    FALSE; prompted by Mikael Jagan's quite comprehensive PR#18543.
  * Rd skeletons generated by prompt() or promptData() now use a
    dummy title (so R CMD build works).  tools::checkRdContents() has
    been updated to detect such template leftovers, including from
    promptPackage().
  * When S4 method dispatch fails because no method was found, the
    error message now includes the signature argument names; thanks
    to Michael Chirico's proposal on the R-devel list.
  * withAutoprint({ .. }) now preserves srcrefs previously lost,
    thanks to Andrew Simmons' report plus fix in PR#18572.
  * transform.data.frame() no longer adjusts names; in particular,
    untransformed variables are kept as-is, including those with
    syntactically invalid names (PR#17890).
  * The keep.source option for Rd \Sexpr blocks is no longer ignored.
  * The formula methods for t.test() and wilcox.test() now catch when
    paired is passed, addressing PR#14359; use Pair(x1, x2) ~ 1 for a
    paired test.
  * The level reported in the browser prompt was often too large. It
    now shows the number of browser contexts on the stack.
  * For cbind() and rbind(), the optional deparse.level argument is
    now properly passed to methods, thanks to Mikael Jagan's PR#18579
    and comments there.
  * Some error and warning messages for large ('long vector')
    matrix(v, nr, nc) and dim(m) &lt;- d are now correct about sizes,
    using long long formatting, fixing PR#18612 (and more) reported
    by Mikael Jagan.
  * readChar(useBytes = TRUE) now terminates strings even when the
    underlying connection uses extra spaces in the input buffer.
    This fixes problems with extra garbage seen with gzip
    connections, PR#18605.
  * Named capture in PCRE regular expressions now works also with
    more than 127 named groups (PR#18588).
  * Datetime functions are now robust against long jumps when dealing
    with internal time zone changes.  This avoids confusing warnings
    about an invalid time zone, previously triggered by turning
    warnings into errors or handling them via tryCatch (PR#17966,
    PR#17780).
  * Datetime functions now restore even an empty TZ environment
    variable after internal time zone changes (PR#17724).  This makes
    results of datetime functions with this (typically unintentional)
    setting more predictable.
  * drop.terms(*) now drops response as by default, keep.response =
    FALSE, fixing PR#18564 thanks to Mikael Jagan.
  * dummy.coef(.) now also works for lm()-models with character
    categorical predictor variables rather than factor ones, fixing
    PR#18635 reported by Jinsong Zhao.
  * formals(f) &lt;- formals(f) now also works for a function w/o
    arguments and atomic _constant_ body(f).
  * Correct as.function(&lt;invalid list&gt;, .)'s error message.
  * removeSource() is yet more thorough in finding and removing
    "srcref" and the other source references from parsed R language
    chunks, fixing PR#18638 thanks to Andrew Simmons.
  * dgeom() is more accurate now, notably when its result is very
    small, fixing PR#18642 thanks to the proposal of Morten Welinder,
    also improving other instances where C level binom_raw(x, n, ..)
    has x == 0 or x== n.
  * warning() with options(warn = 1) has improved output for
    multi-line messages.
  * axis.Date() and axis.POSIXct() now respect the par("lab") setting
    for the number of pretty() intervals.
  * Comparisons for language objects (which are based on deparsing)
    are now more careful about using accurate deparsed results
    (PR#18676).
  * Plain-text help (Rd2txt) now correctly preserves blank lines
    following single-line \dontrun code.
  * &lt;POSIXlt&gt;[*] no longer sets wrong "balanced" attribute, fixing
    PR#18681 thanks to Mikael Jagan.
  * str(&lt;classed-call&gt;) now deparses the call as expected, fixing
    PR#18684, reported by Dave Slager.
  * In Rd examples, code following the closing brace of a \dontrun,
    \dontshow or \donttest tag on the same line is no longer skipped
    when R CMD check runs the examples.
  * as.data.frame(matrix(*, ncol=0)) now gets valid names() and
    colnames(); reported by Davis Vaughan on the R-devel list.
  * Internal Mathlib function stirlerr(n) is now almost fully
    (52-bit) accurate for all n &gt;= ~5.9 and more accurate also in the
    range 1 -- 5.9.  This entails small ("after 12th decimal")
    changes in density functions, e.g., dgamma() in _some_ regions of
    their support.  The fix was partly prompted by Morten Welinder's
    PR#18640.
  * Numbers like 9876543.2 are now considered non-integer by Mathlib
    internal R_nonint(), amending original fix of PR#15734.
  * Rd comment lines no longer cause broken paragraphs in the
    rendered PDF and plain-text help. In code blocks, pure comment
    lines (starting with %) no longer produce an empty line.
  * xtabs(Freq ~ .) now consistently defaults to na.action = na.pass,
    using na.rm = FALSE (added as an argument) when summing over Freq
    (PR#17770).
  * tools::testInstalledPackage() is no longer silent about failures
    from running examples or tests and its return code no longer
    ignores failures from checking vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1718366400">- CHANGES IN R 4.4.1:
  C-LEVEL FACILITIES:
  * Functions R_atof and R_strtod declared in header R_ext/Utils.h
    are now documented in 'Writing R Extensions' and so formally part
    of the API.
  * The non-API entry points Rf_setSVector, Rf_StringFalse,
    Rf_StringTrue and Rf_isBlankString have been added to those
    reported by R CMD check.
  * The new function Rf_allocLang is now available. This provides an
    alternative to the idiom of calling Rf_allocList followed by
    SET_TYPEOF.
  UTILITIES:
  * R CMD check now reports as warnings what gfortran calls 'Fortran
    2018 deleted features', all of which have long been marked as
    'obsolescent' and some of which were deleted in Fortran 2008 or
    earlier.  Fortran compilers are no longer required to support
    these.
  BUG FIXES:
  * as.numeric(), scan(), type.convert() and other places which use
    the internal C function R_strtod now require a _non-empty_ digit
    sequence in a decimal or binary exponent.  This aligns with the
    C/POSIX standard for strtod and with ?NumericConstants.
  * as.data.frame(m, make.names=NA) now works correctly for a matrix
    m with NA's in row names.
  * The error message from &lt;POSIXlt&gt;[["hour"]] and similar now
    mentions *[[, "hour"]], as wished for in PR#17409 and proposed by
    Michael Chirico.
  * qbinom() and potentially qpois(), qnbinom(), no longer sometimes
    fail accurate inversion (of pbinom(), etc), thanks to Christopher
    Chang's report and patch in PR#18711.
  * The internal help server on Windows can again serve requests sent
    in quick succession, fixing a regression in R 4.4.0.
  * debugcall(&lt;S3Generic&gt;()) now also works when a corresponding
    S4-generic version is in the methods cache (PR#18143).
  * Package tools' toTitleCase(ch0) now returns character(0) when ch0
    is of zero length; fixing PR#18724, reported by David Hugh Jones.
  * R CMD check is no longer broken (without a check result and no
    explanation in 00check.log) for a package which declares an
    invalid VignetteBuilder in DESCRIPTION but has no vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1730376000">- CHANGES IN R 4.4.2:
  C-LEVEL FACILITIES:
  * The S-compatibility macros F77_COM and F77_COMDECL defined in
    header R_ext/RS.h are deprecated and will be removed shortly.  We
    could find no record of their use.
  BUG FIXES:
  * Mathlib function lgammacor(x) no longer warns about underflow to
    zero for large x.
  * Text widths and heights were incorrectly reported by the Quartz
    device if the drawing context didn't exist yet (typically when
    drawing off-screen to a window that is yet to appear, see
    PR#18591).
  * The Quartz device could segfault in cases where paths with spaces
    are used in the new glyph drawing API.  Thanks to Tomek
    Gieorgijewski (PR#18758).
  * On macOS in R CRAN builds, it is again possible to read
    little-endian UTF-16 text with a BOM from a connection using
    encoding="UTF-16".  Users building R from source should avoid
    using the system libiconv in macOS 14.1 and later.
  * methods' internal .requirePackage() now re-enables primitive
    method dispatch when needed; thanks to Ivan Krylov for
    demystifying CRAN package check failures on the R-devel mailing
    list.</changelog>
</package>
<package pkgid="ee90f6e1d0b540bec74e64f7c9151c48e2b049f8e6f4b8513b6f9fa7431c0d51ca6a3090ce03504ddad855fc84049ba230ef98b29e1d5b39f4cd4b42432d961a" name="R-cluster" arch="x86_64">
  <version epoch="0" ver="2.1.6" rel="51.0.2.2.sr20241103"/>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1620302400">- To get in sync with d:l:R:autoCRAN the Matrix package's split
  in -devel was reversed.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339200">- improved spec file according to comments of dimstar in
  https://build.opensuse.org/request/show/892685</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339201">- CHANGES IN R 4.1.0:
  FUTURE DIRECTIONS:
  * It is planned that the 4.1.x series will be the last to support
    32-bit Windows, with production of binary packages for that
    series continuing until early 2023.
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Data set esoph in package datasets now provides the correct
    numbers of controls; previously it had the numbers of cases added
    to these.  (Reported by Alexander Fowler in PR#17964.)
  NEW FEATURES:
  * www.omegahat.net is no longer one of the repositories known by
    default to setRepositories().  (Nowadays it only provides source
    packages and is often unavailable.)
  * Function package_dependencies() (in package tools) can now use
    different dependency types for direct and recursive dependencies.
  * The checking of the size of tarball in R CMD check --as-cran
    &lt;pkg&gt; may be tweaked via the new environment variable
    _R_CHECK_CRAN_INCOMING_TARBALL_THRESHOLD_, as suggested in
    PR#17777 by Jan Gorecki.
  * Using c() to combine a factor with other factors now gives a
    factor, an ordered factor when combining ordered factors with
    identical levels.
  * apply() gains a simplify argument to allow disabling of
    simplification of results.
  * The format() method for class "ftable" gets a new option justify.
    (Suggested by Thomas Soeiro.)
  * New ...names() utility.  (Proposed by Neal Fultz in PR#17705.)
  * type.convert() now warns when its as.is argument is not
    specified, as the help file always said it _should_.  In that
    case, the default is changed to TRUE in line with its change in
    read.table() (related to stringsAsFactor) in R 4.0.0.
  * When printing list arrays, classed objects are now shown _via_
    their format() value if this is a short enough character string,
    or by giving the first elements of their class vector and their
    length.
  * capabilities() gets new entry "Rprof" which is TRUE when R has
    been configured with the equivalent of --enable-R-profiling (as
    it is by default).  (Related to Michael Orlitzky's report
    PR#17836.)
  * str(xS4) now also shows extraneous attributes of an S4 object
    xS4.
  * Rudimentary support for vi-style tags in rtags() and R CMD rtags
    has been added.  (Based on a patch from Neal Fultz in PR#17214.)
  * checkRdContents() is now exported from tools; it and also
    checkDocFiles() have a new option chkInternal allowing to check
    Rd files marked with keyword "internal" as well.  The latter can
    be activated for R CMD check via environment variable
    _R_CHECK_RD_INTERNAL_TOO_.
  * New functions numToBits() and numToInts() extend the raw
    conversion utilities to (double precision) numeric.
  * Functions URLencode() and URLdecode() in package utils now work
    on vectors of URIs.  (Based on patch from Bob Rudis submitted
    with PR#17873.)
  * path.expand() can expand ~user on most Unix-alikes even when
    readline is not in use.  It tries harder to expand ~, for example
    should environment variable HOME be unset.
  * For HTML help (both dynamic and static), Rd file links to help
    pages in external packages are now treated as references to
    topics rather than file names, and fall back to a file link only
    if the topic is not found in the target package. The earlier rule
    which prioritized file names over topics can be restored by
    setting the environment variable _R_HELP_LINKS_TO_TOPICS_ to a
    false value.
  * c() now removes NULL arguments before dispatching to methods,
    thus simplifying the implementation of c() methods, _but_ for
    back compatibility keeps NULL when it is the first argument.
    (From a report and patch proposal by Lionel Henry in PR#17900.)
  * Vectorize()'s result function's environment no longer keeps
    unneeded objects.
  * Function ...elt() now propagates visibility consistently with
    ..n.  (Thanks to Lionel Henry's PR#17905.)
  * capture.output() no longer uses non-standard evaluation to
    evaluate its arguments.  This makes evaluation of functions like
    parent.frame() more consistent.  (Thanks to Lionel Henry's
    PR#17907.)
  * packBits(bits, type="double") now works as inverse of
    numToBits().  (Thanks to Bill Dunlap's proposal in PR#17914.)
  * curlGetHeaders() has two new arguments, timeout to specify the
    timeout for that call (overriding getOption("timeout")) and TLS
    to specify the minimum TLS protocol version to be used for
    https:// URIs (_inter alia_ providing a means to check for sites
    using deprecated TLS versions 1.0 and 1.1).
  * For nls(), an optional constant scaleOffset may be added to the
    denominator of the relative offset convergence test for cases
    where the fit of a model is expected to be exact, thanks to a
    proposal by John Nash.  nls(*, trace=TRUE) now also shows the
    convergence criterion.
  * Numeric differentiation _via_ numericDeriv() gets new optional
    arguments eps and central, the latter for taking central divided
    differences.  The latter can be activated for nls() via
    nls.control(nDcentral = TRUE).
  * nls() now passes the trace and control arguments to getInitial(),
    notably for all self-starting models, so these can also be fit in
    zero-noise situations via a scaleOffset.  For this reason, the
    initial function of a selfStart model must now have ... in its
    argument list.
  * bquote(splice = TRUE) can now splice expression vectors with
    attributes: this makes it possible to splice the result of
    parse(keep.source = TRUE).  (Report and patch provided by Lionel
    Henry in PR#17869.)
  * textConnection() gets an optional name argument.
  * get(), exists(), and get0() now signal an error if the first
    argument has length greater than 1.  Previously additional
    elements were silently ignored.  (Suggested by Antoine Fabri on
    R-devel.)
  * R now provides a shorthand notation for creating functions, e.g.
    \(x) x + 1 is parsed as function(x) x + 1.
  * R now provides a simple native forward pipe syntax |&gt;.  The
    simple form of the forward pipe inserts the left-hand side as the
    first argument in the right-hand side call.  The pipe
    implementation as a syntax transformation was motivated by
    suggestions from Jim Hester and Lionel Henry.
  * all.equal(f, g) for functions now by default also compares their
    environment(.)s, notably via new all.equal method for class
    function.  Comparison of nls() fits, e.g., may now need
    all.equal(m1, m2, check.environment = FALSE).
  * .libPaths() gets a new option include.site, allowing to _not_
    include the site library.  (Thanks to Dario Strbenac's suggestion
    and Gabe Becker's PR#18016.)
  * Lithuanian translations are now available.  (Thanks to Rimantas
    Zakauskas.)
  * names() now works for DOTSXP objects.  On the other hand, in
    R-lang, the R language manual, we now warn against relying on the
    structure or even existence of such dot-dot-dot objects.
  * all.equal() no longer gives an error on DOTSXP objects.
  * capabilities("cairo") now applies only to the file-based devices
    as it is now possible (if very unusual) to build R with Cairo
    support for those but not for X11().
  * There is optional support for tracing the progress of
    loadNamespace() - see its help.
  * (Not Windows.)  l10n_info() reports an additional element, the
    name of the encoding as reported by the OS (which may differ from
    the encoding part (if any) of the result from
    Sys.getlocale("LC_CTYPE").
  * New function gregexec() which generalizes regexec() to find _all_
    disjoint matches and well as all substrings corresponding to
    parenthesized subexpressions of the given regular expression.
    (Contributed by Brodie Gaslam.)
  * New function charClass() in package utils to query the
    wide-character classification functions in use (such as
    iswprint).
  * The names of quantile()'s result no longer depend on the global
    getOption("digits"), but quantile() gets a new optional argument
    digits = 7 instead.
  * grep(), sub(), regexp and variants work considerably faster for
    long factors with few levels.  (Thanks to Michael Chirico's
    PR#18063.)
  * Provide grouping of x11() graphics windows within a window
    manager such as Gnome or Unity; thanks to a patch by Ivan Krylov
    posted to R-devel.
  * The split() method for class data.frame now allows the f argument
    to be specified as a formula.
  * sprintf now warns on arguments unused by the format string.
  * New palettes "Rocket" and "Mako" for hcl.colors() (approximating
    palettes of the same name from the 'viridisLite' package).
    Contributed by Achim Zeileis.
  * The base environment and its namespace are now locked (so one can
    no longer add bindings to these or remove from these).
  * Rterm handling of multi-byte characters has been improved,
    allowing use of such characters when supported by the current
    locale.
  * Rterm now accepts ALT+ +xxxxxxxx sequences to enter Unicode
    characters as hex digits.
  * Environment variable LC_ALL on Windows now takes precedence over
    LC_CTYPE and variables for other supported categories, matching
    the POSIX behaviour.
  * duplicated() and anyDuplicated() are now optimized for integer
    and real vectors that are known to be sorted via the ALTREP
    framework. Contributed by Gabriel Becker via PR#17993.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 14
    and so packages that provide graphics devices should be
    reinstalled.
  * Graphics devices should now specify deviceVersion to indicate
    what version of the graphics engine they support.
  * Graphics devices can now specify deviceClip.  If TRUE, the
    graphics engine will never perform any clipping of output itself.
    The clipping that the graphics engine does perform (for both
    canClip = TRUE and canClip = FALSE) has been improved to avoid
    producing unnecessary artifacts in clipped output.
  * The grid package now allows gpar(fill) to be a linearGradient(),
    a radialGradient(), or a pattern().  The viewport(clip) can now
    also be a grob, which defines a clipping path, and there is a new
    viewport(mask) that can also be a grob, which defines a mask.
    These new features are only supported so far on the Cairo-based
    graphics devices and on the pdf() device.
  * (Not Windows.)  A warning is given when a Cairo-based type is
    specified for a png(), jpeg(), tiff() or bmp() device but Cairo
    is unsupported (so type = "Xlib" is tried instead).
  * grSoftVersion() now reports the versions of FreeType and
    FontConfig if they are used directly (not _via_ Pango), as is
    most commonly done on macOS.
  C-LEVEL FACILITIES:
  * The _standalone_ libRmath math library and R's C API now provide
    log1pexp() again as documented, and gain log1mexp().
  INSTALLATION on a UNIX-ALIKE:
  * configure checks for a program pkgconf if program pkg-config is
    not found.  These are now only looked for on the path (like
    almost all other programs) so if needed specify a full path to
    the command in PKG_CONFIG, for example in file config.site.
  * C99 function iswblank is required - it was last seen missing ca
    2003 so the workaround has been removed.
  * There are new configure options --with-internal-iswxxxxx,
  - -with-internal-towlower and --with-internal-wcwidth which allows
    the system functions for wide-character classification,
    case-switching and width (wcwidth and wcswidth) to be replaced by
    internal ones.  The first has long been used on macOS, AIX (and
    Windows) but this enables it to be unselected there and selected
    for other platforms (it is the new default on Solaris).  The
    second is new in this version of R and is selected by default on
    macOS and Solaris.  The third has long been the default and
    remains so as it contains customizations for East Asian
    languages.
    System versions of these functions are often minimally
    implemented (sometimes only for ASCII characters) and may not
    cover the full range of Unicode points: for example Solaris (and
    Windows) only cover the Basic Multilingual Plane.
  * Cairo installations without X11 are more likely to be detected by
    configure, when the file-based Cairo graphics devices will be
    available but not X11(type = "cairo").
  * There is a new configure option --with-static-cairo which is the
    default on macOS.  This should be used when only static cairo
    (and where relevant, Pango) libraries are available.
  * Cairo-based graphics devices on platforms without Pango but with
    FreeType/FontConfig will make use of the latter for font
    selection.
  LINK-TIME OPTIMIZATION on a UNIX-ALIKE:
  * Configuring with flag --enable-lto=R now also uses LTO when
    installing the recommended packages.
  * R CMD INSTALL and R CMD SHLIB have a new flag --use-LTO to use
    LTO when compiling code, for use with R configured with
  - -enable-lto=R.  For R configured with --enable-lto, they have
    the new flag --no-use-LTO.
    Packages can opt in or out of LTO compilation _via_ a UseLTO
    field in the DESCRIPTION file.  (As usual this can be overridden
    by the command-line flags.)
  BUILDING R on Windows:
  * for GCC &gt;= 8, FC_LEN_T is defined in config.h and hence character
    lengths are passed from C to Fortran in _inter alia_ BLAS and
    LAPACK calls.
  * There is a new text file src/gnuwin32/README.compilation, which
    outlines how C/Fortran code compilation is organized and
    documents new features:
  * R can be built with Link-Time Optimization with a suitable
    compiler - doing so with GCC 9.2 showed several
    inconsistencies which have been corrected.
  * There is support for cross-compiling the C and Fortran code
    in R and standard packages on suitable (Linux) platforms.
    This is mainly intended to allow developers to test later
    versions of compilers - for example using GCC 9.2 or 10.x has
    detected issues that GCC 8.3 in Rtools40 does not.
  * There is experimental support for cross-building R packages
    with C, C++ and/or Fortran code.
  * The R installer can now be optionally built to support a single
    architecture (only 64-bit or only 32-bit).
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++14 where
    available (which it is on all currently checked platforms): if
    not (as before) C++11 is used if available otherwise C++ is not
    supported.
    Packages which specify C++11 will still be installed using C++11.
    C++14 compilers may give deprecation warnings, most often for
    std::random_shuffle (deprecated in C++14 and removed in C++17).
    Either specify C++11 (see 'Writing R Extensions') or modernize
    the code and if needed specify C++14.  The latter has been
    supported since R 3.4.0 so the package's DESCRIPTION would need
    to include something like
    Depends: R (&gt;= 3.4)
  PACKAGE INSTALLATION on Windows:
  * R CMD INSTALL and R CMD SHLIB make use of their flag --use-LTO
    when the LTO_OPT make macro is set in file etc/${R_ARCH}/Makeconf
    or in a personal/site Makevars file.  (For details see 'Writing R
    Extensions' SS4.5.)
    This provides a valuable check on code consistency.  It does work
    with GCC 8.3 as in Rtools40, but that does not detect everything
    the CRAN checks with current GCC do.
  PACKAGE INSTALLATION on macOS:
  * The default personal library directory on builds with
  - -enable-aqua (including CRAN builds) now differs by CPU type,
    one of
    ~/Library/R/x86_64/x.y/library
    ~/Library/R/arm64/x.y/library
    This uses the CPU type R (and hence the packages) were built for,
    so when a x86_64 build of R is run under Rosetta emulation on an
    arm64 Mac, the first is used.
  UTILITIES:
  * R CMD check can now scan package functions for bogus return
    statements, which were possibly intended as return() calls (wish
    of PR#17180, patch by Sebastian Meyer). This check can be
    activated via the new environment variable
    _R_CHECK_BOGUS_RETURN_, true for --as-cran.
  * R CMD build omits tarballs and binaries of previous builds from
    the top-level package directory.  (PR#17828, patch by Sebastian
    Meyer.)
  * R CMD check now runs sanity checks on the use of LazyData, for
    example that a data directory is present and that
    LazyDataCompression is not specified without LazyData and has a
    documented value.  For packages with large LazyData databases
    without specifying LazyDataCompression, there is a reference to
    the code given in 'Writing R Extensions' SS1.1.6 to test the
    choice of compression (as in all the CRAN packages tested a
    non-default method was preferred).
  * R CMD build removes LazyData and LazyDataCompression fields from
    the DESCRIPTION file of packages without a data directory.
  ENCODING-RELATED CHANGES:
  * The parser now treats \Unnnnnnnn escapes larger than the upper
    limit for Unicode points (\U10FFFF) as an error as they cannot be
    represented by valid UTF-8.
    Where such escapes are used for outputting non-printable
    (including unassigned) characters, 6 hex digits are used (rather
    than 8 with leading zeros).  For clarity, braces are used, for
    example \U{0effff}.
  * The parser now looks for non-ASCII spaces on Solaris (as
    previously on most other OSes).
  * There are warnings (including from the parser) on the use of
    unpaired surrogate Unicode points such as \uD834.  (These cannot
    be converted to valid UTF-8.)
  * Functions nchar(), tolower(), toupper() and chartr() and those
    using regular expressions have more support for inputs with a
    marked Latin-1 encoding.
  * The character-classification functions used (by default) to
    replace the system iswxxxxx functions on Windows, macOS and AIX
    have been updated to Unicode 13.0.0.
    The character-width tables have been updated to include new
    assignments in Unicode 13.0.0.
  * The code for evaluating default (extended) regular expressions
    now uses the same character-classification functions as the rest
    of R (previously they differed on Windows, macOS and AIX).
  * There is a build-time option to replace the system's
    wide-character wctrans C function by tables shipped with R: use
    configure option --with-internal-towlower or (on Windows)
  - DUSE_RI18N_CASE in CFLAGS when building R.  This may be needed
    to allow tolower() and toupper() to work with Unicode characters
    beyond the Basic Multilingual Plane where not supported by system
    functions (e.g. on Solaris where it is the new default).
  * R is more careful when truncating UTF-8 and other multi-byte
    strings that are too long to be printed, passed to the system or
    libraries or placed into an internal buffer.  Truncation will no
    longer produce incomplete multibyte characters.
  DEPRECATED AND DEFUNCT:
  * Function plclust() from the package stats and
    package.dependencies(), pkgDepends(), getDepList(),
    installFoundDepends(), and vignetteDepends() from package tools
    are defunct.
  * Defunct functions checkNEWS() and readNEWS() from package tools
    and CRAN.packages() from utils have been removed.
  * R CMD config CXXCPP is defunct (it was deprecated in R 3.6.2).
  * parallel::detectCores() drops support for Irix (retired in 2013).
  * The LINPACK argument to chol.default(), chol2inv(),
    solve.default() and svd() has been defunct since R 3.1.0.  It was
    silently ignored up to R 4.0.3 but now gives an error.
  * Subsetting/indexing, such as ddd[*] or ddd$x on a DOTSXP
    (dot-dot-dot) object ddd has been disabled; it worked by accident
    only and was undocumented.
  BUG FIXES:
  * Many more C-level allocations (mainly by malloc and strdup) are
    checked for success with suitable alternative actions.
  * Bug fix for replayPlot(); this was turning off graphics engine
    display list recording if a recorded plot was replayed in the
    same session.  The impact of the bug became visible if resize the
    device after replay OR if attempted another savePlot() after
    replay (empty display list means empty screen on resize or empty
    saved plot).
  * R CMD check etc now warn when a package exports non-existing S4
    classes or methods, also in case of no "methods" presence.
    (Reported by Alex Bertram; reproducible example and patch by
    Sebastian Meyer in PR#16662.)
  * boxplot() now also accepts calls for labels such as ylab, the
    same as plot().  (Reported by Marius Hofert.)
  * The help page for xtabs() now correctly states that addNA is
    setting na.action = na.pass among others.  (Reported as PR#17770
    by Thomas Soeiro.)
  * The R CMD check &lt;pkg&gt; gives a longer and more comprehensible
    message when DESCRIPTION misses dependencies, e.g., in Imports:.
    (Thanks to the contributors of PR#17179.)
  * update.default() now calls the generic update() on the formula to
    work correctly for models with extended formulas.  (As reported
    and suggested by Neal Fultz in PR#17865.)
  * The horizontal position of leaves in a dendrogram is now correct
    also with center = FALSE.  (PR#14938, patch from Sebastian
    Meyer.)
  * all.equal.POSIXt() no longer warns about and subsequently ignores
    inconsistent "tzone" attributes, but describes the difference in
    its return value (PR#17277).  This check can be disabled _via_
    the new argument check.tzone = FALSE as suggested by Sebastian
    Meyer.
  * as.POSIXct() now populates the "tzone" attribute from its tz
    argument when x is a logical vector consisting entirely of NA
    values.
  * x[[2^31]] &lt;- v now works.  (Thanks to the report and patch by
    Suharto Anggono in PR#17330.)
  * In log-scale graphics, axis() ticks and label positions are now
    computed more carefully and symmetrically in their range,
    typically providing _more_ ticks, fulfilling wishes in PR#17936.
    The change really corresponds to an improved axisTicks() (package
    grDevices), potentially influencing grid and lattice, for
    example.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now correct to at
    least five digits where it was catastrophically wrong,
    previously.
  * sum(df) and similar "Summary"- and "Math"-group member functions
    now work for data frames df with logical columns, notably also of
    zero rows.  (Reported to R-devel by Martin "b706".)
  * unsplit() had trouble with tibbles due to unsound use of rep(NA,
    len)-indexing, which should use NA_integer_ (Reported to R-devel
    by Mario Annau.)
  * pnorm(x, log.p = TRUE) underflows to -Inf slightly later.
  * show(&lt;hidden S4 generic&gt;) prints better and without quotes for
    non-hidden S4 generics.
  * read.table() and relatives treated an "NA" column name as missing
    when check.names = FALSE PR#18007.
  * Parsing strings containing UTF-16 surrogate pairs such as
    "\uD834\uDD1E" works better on some (uncommon) platforms.
    sprintf("%X", utf8ToInt("\uD834\uDD1E")) should now give "1D11E"
    on all platforms.
  * identical(x,y) is no longer true for differing DOTSXP objects,
    fixing PR#18032.
  * str() now works correctly for DOTSXP and related exotics, even
    when these are doomed.
    Additionally, it no longer fails for lists with a class and
    "irregular" method definitions such that e.g. lapply(*) will
    necessarily fail, as currently for different igraph objects.
  * Too long lines in environment files (e.g. Renviron) no longer
    crash R. This limit has been increased to 100,000 bytes.
    (PR#18001.)
  * There is a further workaround for FreeType giving incorrect
    italic font faces with cairo-based graphics devices on macOS.
  * add_datalist(*, force = TRUE) (from package tools) now actually
    updates an existing data/datalist file for new content.  (Thanks
    to a report and patch by Sebastian Meyer in PR#18048.)
  * cut.Date() and cut.POSIXt() could produce an empty last interval
    for breaks = "months" or breaks = "years".  (Reported as PR#18053
    by Christopher Carbone.)
  * Detection of the encoding of 'regular' macOS locales such as
    en_US (which is UTF-8) had been broken by a macOS change:
    fortunately these are now rarely used with en_US.UTF-8 being
    preferred.
  * sub() and gsub(pattern, repl, x, *) now keep attributes of x such
    as names() also when pattern is NA (PR#18079).
  * Time differences ("difftime" objects) get a replacement and a
    rep() method to keep "units" consistent.  (Thanks to a report and
    patch by Nicolas Bennett in PR#18066.)
  * The \RdOpts macro, setting defaults for \Sexpr options in an Rd
    file, had been ineffective since R 2.12.0: it now works again.
    (Thanks to a report and patch by Sebastian Meyer in PR#18073.)
  * mclapply and pvec no longer accidentally terminate parallel
    processes started before by mcparallel or related calls in
    package parallel (PR#18078).
  * grep and other functions for evaluating (extended) regular
    expressions handle in Unicode also strings not explicitly flagged
    UTF-8, but flagged native when running in UTF-8 locale.
  * Fixed a crash in fifo implementation on Windows (PR#18031).
  * Binary mode in fifo on Windows is now properly detected from
    argument open (PR#15600, PR#18031).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1622808000">- The line %{__install} -m 755 -d %{_infodir}
  no longer works in TW or Factory.
  But without that line it works everywhere. So this instruction
  was commented out of the spec file.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1628596800">- CHANGES IN R 4.1.1:
  NEW FEATURES:
  * require(pkg, quietly = TRUE) is quieter and in particular does
    not warn if the package is not found.
  DEPRECATED AND DEFUNCT:
  * Use of ftp:// URIs should be regarded as deprecated, with
    on-going support confined to method = "libcurl" and not routinely
    tested.  (Nowadays no major browser supports them.)
  * The non-default method = "internal" is deprecated for http:// and
    ftp:// URIs for both download.file and url.
  * On Windows, method = "wininet" is deprecated for http://,
    https:// and ftp:// URIs for both download.file and url.  (A
    warning is only given for ftp://.)
    For ftp:// URIs the default method is now "libcurl" if available
    (which it is on CRAN builds).
    method = "wininet" remains the default for http:// and https://
    URIs but if libcurl is available, using method = "libcurl" is
    preferred.
  INSTALLATION:
  * make check now works also without a LaTeX installation.  (Thanks
    to Sebastian Meyer's PR#18103.)
  BUG FIXES:
  * make check-devel works again in an R build configured with
  - -without-recommended-packages.
  * qnbinom(p, size, mu) for large size/mu is correct now in a range
    of cases (PR#18095); similarly for the (size, prob)
    parametrization of the negative binomial.  Also qpois() and
    qbinom() are better and or faster for extreme cases.  The
    underlying C code has been modularized and is common to all four
    cases of discrete distributions.
  * gap.axis is now part of the axis() arguments which are passed
    from bxp(), and hence boxplot().  (Thanks to Martin Smith's
    report and suggestions in PR#18109.)
  * .First and .Last can again be set from the site profile.
  * seq.int(from, to, *) and seq.default(..) now work better in large
    range cases where from-to is infinite where the two boundaries
    are finite.
  * all.equal(x,y) now returns TRUE correctly also when several
    entries of abs(x) and abs(y) are close to .Machine$double.xmax,
    the largest finite numeric.
  * model.frame() now clears the object bit when removing the class
    attribute of a value via na.action (PR#18100).
  * charClass() now works with multi-character strings on Windows
    (PR#18104, fixed by Bill Dunlap).
  * encodeString() on Solaris now works again in Latin-1 encoding on
    characters represented differently in UTF-8.  Support for
    surrogate pairs on Solaris has been improved.
  * file.show() on Windows now works with non-ASCII path names
    representable in the current native encoding (PR#18132).
  * Embedded R on Windows can now find R home directory via the
    registry even when installed only for the current user
    (PR#18135).
  * pretty(x) with finite x now returns finite values also in the
    case where the extreme x values are close in size to the maximal
    representable number .Machine$double.xmax.
    Also, it's been tweaked for very small ranges and when a boundary
    is close (or equal) to zero; e.g., pretty(c(0,1e-317)) no longer
    has negative numbers, currently still warning about a very small
    range, and pretty(2^-(1024 - 2^-1/(c(24,10)))) is more accurate.
  * The error message for not finding vignette files when weaving has
    correct file sizes now. (Thanks to Sebastian Meyer's PR#18154.)
  * dnbinom(20, &lt;large&gt;, 1) now correctly gives 0, and similar cases
    are more accurate with underflow precaution.  (Reported by Francisco Vera Alcivar in PR#18072.)</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635163200">- repaired https://bugzilla.suse.com/show_bug.cgi?id=1191380
  (rpmacros now go to rpmmacrodir)
- minor clean-ups in spec file</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635768000">- CHANGES IN R 4.1.2:
  C-LEVEL FACILITIES:
  * The workaround in headers R.h and Rmath.h (using namespace std;)
    for the Oracle Developer Studio compiler is no longer needed now
    C++11 is required so has been removed.  A couple more usages of
    log() (which should have been std::log()) with an int argument
    are reported on Solaris.
  * The undocumented limit of 4095 bytes on messages from the
    S-compatibility macros PROBLEM and MESSAGE is now documented and
    longer messages will be silently truncated rather than
    potentially causing segfaults.
  * If the R_NO_SEGV_HANDLER environment variable is non-empty, the
    signal handler for SEGV/ILL/BUS signals (which offers recovery
    user interface) is not set. This allows more reliable debugging
    of crashes that involve the console.
  DEPRECATED AND DEFUNCT:
  * The legacy S-compatibility macros PROBLEM, MESSAGE, ERROR, WARN,
    WARNING, RECOVER, ... are deprecated and will be hidden in R
    4.2.0. R's native interface of Rf_error and Rf_warning has long
    been preferred.
  BUG FIXES:
  * .mapply(F, dots, .) no longer segfaults when dots is not a list
    and uses match.fun(F) as always documented; reported by Andrew
    Simmons in PR#18164.
  * hist(&lt;Date&gt;, ...) and hist(&lt;POSIXt&gt;, ...)  no longer pass
    arguments for rect() (such as col and density) to axis().
    (Thanks to Sebastian Meyer's PR#18171.)
  * \Sexpr{ch} now preserves Encoding(ch). (Thanks to report and
    patch by Jeroen Ooms in PR#18152.)
  * Setting the RNG to "Marsaglia-Multicarry" e.g., by RNGkind(), now
    warns in more places, thanks to Andr'e Gillibert's report and
    patch in PR#18168.
  * gray(numeric(), alpha=1/2) no longer segfaults, fixing PR#18183,
    reported by Till Krenz.
  * Fixed dnbinom(x, size=&lt;very_small&gt;, .., log=TRUE) regression,
    reported by Martin Morgan.
  * as.Date.POSIXlt(x) now keeps names(x), thanks to Davis Vaughan's
    report and patch in PR#18188.
  * model.response() now strips an "AsIs" class typically, thanks to
    Duncan Murdoch's report and other discussants in PR#18190.
  * try() is considerably faster in case of an error and long call,
    as e.g., from some do.call().  Thanks to Alexander Kaever's
    suggestion posted to R-devel.
  * qqline(y = &lt;object&gt;) such as y=I(.), now works, see also
    PR#18190.
  * Non-integer mgp par() settings are now handled correctly in
    axis() and mtext(), thanks to Mikael Jagan and Duncan Murdoch's
    report and suggestion in PR#18194.
  * formatC(x) returns length zero character() now, rather than ""
    when x is of length zero, as documented, thanks to Davis
    Vaughan's post to R-devel.
  * removeSource(fn) now retains (other) attributes(fn).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1647000000">- CHANGES IN R 4.1.3:
  NEW FEATURES:
  * The default version of Bioconductor has been changed to 3.14.
    (This is used by setRepositories and the menus in GUIs.)
  UTILITIES:
  * R CMD check --as-cran has a workaround for a bug in versions of
    file up to at least 5.41 which mis-identify DBF files last
    changed in 2022 as executables.
  C-LEVEL FACILITIES:
  * The legacy S-compatibility macros SINGLE_* in R_ext/Constants.h
    (included by R.h) are deprecated and will be removed in R 4.2.0.
  BUG FIXES:
  * Initialization of self-starting nls() models with initialization
    functions following the pre-R-4.1.0 API (without the ...
    argument) works again for now, with a deprecation warning.
  * Fixed quoting of ~autodetect~ in Java setting defaults to avoid
    inadvertent user lookup due to leading ~, reported in PR#18231 by
    Harold Gutch.
  * substr(., start, stop) &lt;- v now treats _negative_ stop values
    correctly.  Reported with a patch in PR#18228 by Brodie Gaslam.
  * Subscripting an array x without dimnames by a
    length(dim(x))-column character matrix gave "random" non-sense,
    now an error; reported in PR#18244 by Mikael Jagan.
  * ...names() now matches names(list(...)) closely, fixing PR#18247.
  * all.equal(*, scale = s) now works as intended when length(s) &gt; 1,
    partly thanks to Michael Chirico's PR#18272.
  * print(x) for long vectors x now also works for named atomic
    vectors or lists and prints the correct number when reaching the
    getOption("max.print") limit; partly thanks to a report and
    proposal by Hugh Parsonage to the R-devel list.
  * all.equal(&lt;selfStart&gt;, *) no longer signals a deprecation
    warning.
  * reformulate(*, response=r) gives a helpful error message now when
    length(r) &gt; 1, thanks to Bill Dunlap's PR#18281.
  * Modifying globalCallingHandlers inside withCallingHandlers() now
    works or fails correctly, thanks to Henrik Bengtsson's PR#18257.
  * hist(&lt;Date&gt;, breaks = "days") and hist(&lt;POSIXt&gt;, breaks = "secs")
    no longer fail for inputs of length 1.
  * qbeta(.001, .9, .009) and similar cases now converge correctly
    thanks to Ben Bolker's report in PR#17746.
  * window(x, start, end) no longer wrongly signals "'start' cannot
    be after 'end'", fixing PR#17527 and PR#18291.
  * data() now checks that its (rarely used) list argument is a
    character vector - a couple of packages passed other types and
    gave incorrect results.
  * which() now checks its arr.ind argument is TRUE rather coercing
    to logical and taking the first element - which gave incorrect
    results in package code.
  * model.weights() and model.offset() more carefully extract their
    model components, thanks to Ben Bolker and Tim Taylor's R-devel
    post.
  * list.files(recursive = TRUE) now shows all broken symlinks
    (previously, some of them may have been omitted, PR#18296).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1650628800">- CHANGES IN R 4.2.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * The formula method of aggregate() now matches the generic in
    naming its first argument x (resolving PR#18299 by Thomas
    Soeiro).
    This means that calling aggregate() with a formula as a named
    first argument requires name formula in earlier versions of R and
    name x now, so portable code should not name the argument (code
    in many packages did).
  * Calling &amp;&amp; or || with either argument of length greater than one
    now gives a warning (which it is intended will become an error).
  * Calling if() or while() with a condition of length greater than
    one gives an error rather than a warning.  Consequently,
    environment variable _R_CHECK_LENGTH_1_CONDITION_ no longer has
    any effect.
  * Windows users should consult the WINDOWS section below for some
    profound changes including
  * Support for 32-bit builds has been dropped.
  * UTF-8 locales are used where available.
  * The default locations for the R installation and personal
    library folder have been changed.
    Thanks to Tomas Kalibera for months of work on the Windows port
    for this release.
  NEW FEATURES:
  * matrix(x, n, m) now warns in more cases where length(x) differs
    from n * m, as suggested by Abby Spurdle and Wolfgang Huber in
    Feb 2021 on the R-devel mailing list.
    This warning can be turned into an error by setting environment
    variable _R_CHECK_MATRIX_DATA_ to TRUE: R CMD check --as-cran
    does so unless it is already set.
  * Function file_test() in package utils gains tests for symlinks,
    readability and writability.
  * capabilities("libxml") is now false.
    The description of capabilities("http/ftp") now reflects that it
    refers to the default method, no longer the internal one.
  * simplify2array() gains an except argument for controlling the
    exceptions used by sapply().
  * Environment variables R_LIBS_USER and R_LIBS_SITE are both now
    set to the R system default if unset or empty, and can be set to
    NULL to indicate an empty list of user or site library
    directories.
  * The warning for axis()(-like) calls in cases of relatively small
    ranges (typically in log-scale situations) is slightly improved
    _and_ suppressed from explicit calls to .axisPars() as has always
    been the intention.
  * The contrasts setter function `contrasts&lt;-` gains an explicit
    default how.many = NULL rather than just using missing(how.many).
  * grid.pretty() gains a new optional argument n = 5.
  * There is a new function .pretty() with option bounds as a
    technical-utility version of pretty().  It and pretty() gain a
    new argument f.min with a better than back-compatible default.
  * Function grDevices::axisTicks() and related functions such as
    graphics::axis() work better, notably for the log scale; partly
    because of the pretty() improvements, but also because care is
    taken e.g., when ylim is finite but diff(ylim) is infinite.
  * nclass.FD() gains a digits option.
  * The R Mathlib internal C function bd0() (called indirectly from a
    dozen probability density and distribution functions such as
    dpois(), dbinom(), dgamma(), pgamma() _etc_) has been
    complemented by a more sophisticated and (mostly) more accurate C
    function ebd0(), currently called only by internal dpois_raw()
    improving accuracy for R level dpois() and potentially others
    calling it such as dnbinom(), dgamma() or pgamma().  (Thanks to
    Morten Welinder's PR#15628.)
  * write.ftable() gains sep = " " argument as suggested by Thomas
    Soeiro.
  * The names of the locale categories supported by R's
    Sys.getlocale() and Sys.setlocale() are now provided by variable
    .LC.categories in the base namespace.
  * The Date and POSIXt methods for hist() and the histogram method
    for plot() now also use the new default col = "lightgray" in
    consistency with the corresponding change to hist()'s default for
    R 4.0.0.
  * hist.default() gains new fuzz argument, and the histogram plot
    method no longer uses fractional axis ticks when displaying
    counts ("Frequency").
  * mapply() and hence Map() now also obey the "max-or-0-if-any"
    recycling rule, such that, e.g., Map(`+`, 1:3, 1[0]) is valid
    now.
  * as.character(&lt;obj&gt;) for "hexmode" or "octmode" objects now
    fulfils the important basic rule as.character(x)[j] ===
    as.character(x[j]).
  * The set utility functions, notably intersect() have been tweaked
    to be more consistent and symmetric in their two set arguments,
    also preserving a common mode.
  * substr(ch, start,end) &lt;- new now e.g., preserves names(ch); ditto
    for substring(), thanks to a patch from Brodie Gaslam.
  * plot(&lt;lm&gt;) gains a extend.ylim.f argument, in partial response to
    PR#15285; further PR#17784 is fixed thanks to several
    contributors and a patch by Elin Waring.  The Cook's dist
    contours get customizable via cook.col and cook.lty with a
    different default color and their legend is nicer by default and
    customizable via cook.legendChanges.
  * Attempting to subset an object that is not subsettable now
    signals an error of class notSubsettableError. The
    non-subsettable object is contained in the object field of the
    error condition.
  * Subscript-out-of-bounds errors are now signaled as errors of
    class subscriptOutOfBoundsError.
  * Stack-overflow errors are now signaled as errors inheriting from
    class stackOverflowError. See ?stackOverflowError for more
    details.
  * New partly experimental Sys.setLanguage() utility, solving the
    main problem of PR#18055.
  * gettext() and gettextf() get a new option trim = TRUE which when
    set to false allows translations for strings such as "Execution
    halted\n" typical for C code.
  * An experimental implementation of hash tables is now available.
    See ?hashtab for more details.
  * identical() gains a extptr.as.ref argument for requesting that
    external pointer objects be compared as reference objects.
  * reorder() gets an argument decreasing which it passes to sort()
    for level creation; based on the wish and patch by Thomas Soeiro
    in PR#18243.
  * as.vector() gains a data.frame method which returns a simple
    named list, also clearing a long standing 'FIXME' to enable
    as.vector(&lt;data.frame&gt;, mode="list").  This breaks code relying
    on as.vector(&lt;data.frame&gt;) to return the unchanged data frame.
  * legend() is now vectorized for arguments cex, x.intersp, and
    text.width.  The latter can now also be specified as a vector
    (one element for each column of the legend) or as NA for
    computing a proper column wise maximum value of strwidth(legend).
    The argument y.intersp can be specified as a vector with one
    entry for each row of the legend.
    legend() also gains new arguments title.cex and title.font.
    Thanks to Swetlana Herbrandt.
  * Deparsing no longer remaps attribute names dim, dimnames, levels,
    names and tsp to historical S-compatible names (which structure()
    maps back).
  * sample() and sample.int() have additional sanity checks on their
    size and n arguments.
    all.equal.numeric() gains a sanity check on its tolerance
    argument - calling all.equal(a, b, c) for three numeric vectors
    is a surprisingly common error.
    mean(na.rm =), rank(na.last =), barplot(legend.text =),
    boxplot(), contour(drawlabels =), polygon(border =) and
    methods::is(class2 =) have more robust sanity checks on their
    arguments.
    R CMD Rd2pdf (used by R CMD check) has a more robust sanity check
    on the format of \alias{} commands.
  * psigamma(x, deriv) for negative x now also works for deriv = 4
    and 5; their underlying C level dpsifn() is documented in
    'Writing R Extensions'.
  * The HTML help system now uses HTML5 (wish of PR#18149).
  * ks.test() now provides exact p-values also with ties and MC
    p-values in the two-sample (Smirnov) case.  By Torsten Hothorn.
  * ks.test() gains a formula interface, with y ~ 1 for the
    one-sample (Kolmogorov) test and y ~ group for the two-sample
    (Smirnov) test.  Contributed by Torsten Hothorn.
  * The return value from ks.test() now has class c("ks.test",
    "htest") - packages using try() need to take care to use
    inherits() and not == on the class.
  * New functions psmirnov(), qsmirnov() and rsmirnov() in package
    stats implementing the asymptotic and exact distributions of the
    two-sample Smirnov statistic.
  * iconv() now allows sub = "c99" to use C99-style escapes for UTF-8
    inputs which cannot be converted to encoding to.
  * In a forward pipe |&gt; expression it is now possible to use a named
    argument with the placeholder _ in the rhs call to specify where
    the lhs is to be inserted.  The placeholder can only appear once
    on the rhs.
  * The included LAPACK sources have been updated to version 3.10.0,
    except for the four Fortran 77 routines which 3.10.0 has
    re-implemented in Fortran 90 (where the older versions have been
    retained as the R build process does not support Fortran 90).
  * path.expand() and most other uses of tilde expansion now warn if
    a path would be too long if expanded.  (An exception is
    file.exists(), which silently returns false.)
  * trunc(&lt;Date&gt;, *) now supports units = "months" or "years" for
    consistency with the POSIXt method, thanks to Dirk Eddelbuettel's
    proposal in PR#18099.
  * list2DF() now checks that its arguments are of the same length,
    rather than use recycling.
  * The HTML help system has several new features: LaTeX-like math
    can be typeset using either KaTeX or MathJax, usage and example
    code is highlighted using Prism, and for dynamic help the output
    of examples and demos can be shown within the browser if the
    knitr package is installed. These features can be disabled by
    setting the environment variable _R_HELP_ENABLE_ENHANCED_HTML_ to
    a false value.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 15
    and so packages that provide graphics devices should be
    reinstalled.
  * The grid package now allows the user to specify a "vector" of
    pattern fills.  The fill argument to gpar() accepts a list of
    gradients and/or patterns and the functions linearGradient(),
    radialGradient(), and pattern() have a new group argument.
    Points grobs (data symbols) can now also have a pattern fill.
    The grobCoords() function now returns a more informative and
    complex result.
  * The grid package has new functions for drawing isolated groups:
    grid.group(), grid.define(), and grid.use().  These functions add
    compositing operators and affine transformations to R's graphics
    capabilities.
    The grid package also has new functions for stroking and filling
    paths: grid.stroke(), grid.fill(), and grid.fillStroke().
    A new function as.path() allows the user to specify the fill rule
    for a path that is to be used for clipping, stroking, or filling;
    available options are "winding" and "evenodd".  A new function
    as.mask() allows the user to specify the type of a mask;
    available options are "alpha" and "luminance".
    These new features are only supported so far (at most) on the
    Cairo-based graphics devices and on the pdf() device.
  * dev.capabilities() reports on device support for the new
    features.
  * par() now warns about unnamed non-character arguments to prevent
    misuse such as {usr &lt;- par("usr"); par(usr)}.
  INSTALLATION:
  * Facilities for accessing ftp:// sites are no longer tested
    (except _pro tem_ for curlGetHeaders()) as modern browsers have
    removed support.
  * R can now be built with DEFS = -DSTRICT_R_HEADERS .
  PACKAGE INSTALLATION:
  * R CMD INSTALL no longer tangles vignettes. This completes an R
    CMD build change in R 3.0.0 and affects packages built before R
    3.0.2. Such packages should be re-made with R CMD build to have
    the tangled R code of vignettes shipped with the tarball.
  * USE_FC_LEN_T will become the default: this uses the correct
    prototypes for Fortran BLAS/LAPACK routines called from C/C++,
    and requires adjustment of most such calls - see 'Writing R
    Extensions' SS6.6.2.  (This has been supported since R 3.6.2.)
  * Package installation speed for packages installed with
    keep.source has been improved. This resolve the issue reported by
    Ofek Shilon in PR#18236.
  UTILITIES:
  * R CMD check can optionally report files/directories left behind
    in home, /tmp (even though TMPDIR is set) and other directories.
    See the "R Internals" manual for details.
  * R CMD check now reports byte-compilation errors during
    installation.  These are not usually fatal but may result in
    parts of the package not being byte-compiled.
  * _R_CHECK_DEPENDS_ONLY_ can be applied selectively to examples,
    tests and/or vignettes in R CMD check: see the "R Internals"
    manual.
  * _R_CHECK_SRC_MINUS_W_IMPLICIT_ now defaults to true: recent
    versions of Apple clang on macOS have made implicit function
    declarations in C into a compilation error.
  * R CMD check --as-cran makes use of the environment variable
    AUTORECONF.  See the "R Internals" manual SS8 for further details.
  * R CMD check --use-valgrind also uses valgrind when re-building
    vignettes as some non-Sweave vignettes unhelpfully comment out
    all their code when R CMD check runs vignettes.
  * Errors in re-building vignettes (unless there are LaTeX errors)
    are reported by R CMD check as ERROR rather than WARNING when
    running vignettes has been skipped (as it frequently is in CRAN
    checks and by --as-cran).
  * R CMD Rd2pdf gains a --quiet option that is used by R CMD build
    when building the PDF package manual.
  * R CMD Rd2pdf now always runs LaTeX in batch mode, consistent with
    Texinfo &gt;= 6.7. The --batch option is ignored.
  * R CMD build and R CMD check now include the Rd file name and line
    numbers in the error message of an \Sexpr evaluation failure.
  * For packages using the \doi Rd macro (now an install-time \Sexpr)
    but no other dynamic Rd content, R CMD build now produces a
    smaller tarball and is considerably faster - skipping temporary
    package installation.
  C-LEVEL FACILITIES:
  * The non-API header R_ext/R-ftp-http.h is no longer provided, as
    the entry points it covered are now all defunct.
  * A number of non-API declarations and macro definitions have been
    moved from the installed header Rinternals.h to the internal
    header Defn.h. Packages that only use entry points and
    definitions documented to be part of the API as specified in
    'Writing R Extensions' SS6 should not be affected.
  * The macro USE_RINTERNALS no longer has any effect when compiling
    package code.  Packages which also use R_NO_REMAP will need to
    ensure that the remapped names are used for calls to API
    functions that were formerly also made available as macros.
  * The deprecated legacy S-compatibility macros PROBLEM, MESSAGE,
    ERROR, WARN, WARNING, RECOVER, ... are no longer defined in
    R_exts/RS.h (included by R.h).  Replace these by calls to
    Rf_error and Rf_warning (defined in header R_ext/Error.h included
    by R.h).
    Header R_ext/RS.h no longer includes R_ext/Error.h.
  * Header R_ext/Constants.h (included by R.h) when included from C++
    now includes the C++ header cfloat rather than the C header
    float.h (now possible as C++11 is required).
  * The legacy S-compatibility macros DOUBLE_* in R_ext/Constants.h
    (included by R.h) are deprecated.
  * The deprecated S-compatibility macros SINGLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * R_Calloc, R_Free and R_Realloc are preferred to their unprefixed
    forms and error messages now use the prefix. These forms were
    introduced in R 3.4.0 and are available even when
    STRICT_R_HEADERS is defined.
  * rmultinom has been documented in 'Writing R Extensions' SS6 so is
    now part of the R API.
  * Similarly, Rtanpi, called from R level tanpi() is now part of the
    R API.
  * The long-deprecated, undocumented and non-API entry point call_R
    is no longer declared in R_ext/RS.h (included by R.h).
  * The header S.h which has been unsupported since Jan 2016 has been
    removed.  Use R.h instead.
  DEPRECATED AND DEFUNCT:
  * The (non-default and deprecated) method = "internal" for
    download.file() and url() no longer supports http:// nor ftp://
    URIs.  (It is used only for file:// URIs.)
    On Windows, download.file(method = "wininet") no longer supports
    ftp:// URIs.  (It is no longer the default method, which is
    "libcurl" and does.)
    On Windows, the deprecated method = "wininet" now gives a warning
    for http:// and https:// URIs for both download.file() and url().
    (It is no longer the default method.)
  * On Windows, the command-line option --max-mem-size and
    environment variable R_MAX_MEM_SIZE are defunct.  The memory
    allocation limit was important for 32-bit builds, but these are
    no longer supported.
  * default.stringsAsFactors() is now formally deprecated, where that
    was only mentioned on its regular help page, previously.  So it
    now gives a warning if called.
  * unix.time() is defunct now; it had been deprecated since R 3.4.0.
  BUG FIXES:
  * Setting digits = 0 in format(), print.default() (and hence
    typically print()) or options() is again invalid.  Its behaviour
    was platform-dependent, and it is unclear what "zero significant
    digits" should mean (PR#18098).
  * Messages from C code in the cairo section of package grDevices
    are now also offered for translation, thanks to Michael Chirico's
    PR#18123.
  * mean(x) with finite x now is finite also without "long.double"
    capability.
  * R CMD Rd2pdf no longer leaves an empty build directory behind
    when it aborts due to an already existing output file.  (Thanks
    to Sebastian Meyer's PR#18141.)
  * density(x, weights = w, na.rm = TRUE) when anyNA(x) is true, now
    removes weights "in parallel" to x, fixing PR#18151, reported by
    Matthias Gondan.  Additionally, it gets a subdensity option.
  * Conversion of \Sexpr[]{&lt;expR&gt;} to LaTeX or HTML no longer
    produces long blocks of empty lines when &lt;expR&gt; itself contains
    several lines all producing empty output.  Thanks to a report and
    patch by Ivan Krylov posted to R-devel.
  * R CMD build no longer fails if a package vignette uses child
    documents and inst/doc exists.  (Thanks to Sebastian Meyer's
    PR#18156.)
  * When an R documentation ('help' source) file man/foo.Rd in a
    package has \donttest{..} examples with a syntax error, it is now
    signalled as ERROR and with correct line numbers relating to the
  * -Ex.R file, thanks to Duncan Murdoch and Sebastian Meyer's
    reports and patch proposals in PR#17501.
  * Improved determination of the correct translation domain in
    non-base packages, addressing the combination of PR#18092 and
    PR#17998 (#c6) with reports and _augmented_ patch #2904 by
    Suharto Anggono.
    Note that "R-base" is no longer the default domain e.g., for
    top-level calls to gettext(); rather translation needs explicit
    domain = * specification in such cases.
  * identical(attrib.as.set=FALSE) now works correctly with data
    frames with default row names (Thanks to Charlie Gao's PR#18179).
  * txtProgressBar() now enforces a non-zero width for argument char,
    without which no progress can be visible.
  * dimnames(table(d)) is more consistent in the case where d is a
    list with a single component, thanks to Thomas Soeiro's report to
    R-devel.
    Further, table(d1, d2) now gives an error when d1 and d2 are data
    frames as suggested by Thomas in PR#18224.
  * Fix for drawing semi-transparent lines and fills on the native
    Windows graphics device (PR#18219 and PR#16694).  Thanks to Nick
    Ray for helpful diagnosis on Bugzilla.
  * The deparser now wraps sub-expressions such as if(A) ..  with
    parentheses when needed; thanks to Duncan Murdoch's PR#18232 and
    Lionel Henry's patches there.
  * remove.packages() no longer tries to uninstall Priority: base
    packages, thanks to a report and suggestions by Colin Fay in
    PR#18227.
  * win.metafile() now has xpinch and ypinch arguments so that the
    user can override Windows' (potentially wrong) guess at device
    dimensions.
  * x[i] and x[[i]] for non-integer i should now behave in all cases
    as always documented: the index used is equivalent to
    as.integer(i) unless that would overflow where trunc(i) is used
    instead; thanks to Suharto Anggono's report and patch proposals
    in PR#17977.
  * asOneSidedFormula() now associates the resulting formula with the
    global environment rather than the evaluation environment created
    for the call.
  * &lt;bibentry&gt;$name now matches the field name case-insensitively,
    consistent with bibentry() creation and the replacement method.
  * cbind() failed to detect some length mismatches with a mixture of
    time-series and non-time-series inputs.
  * The default LaTeX style file Sweave.sty used by the RweaveLatex
    driver no longer loads the obsolete ae package; thanks to a
    report by Thomas Soeiro in PR#18271.  Furthermore, it now skips
    \usepackage[T1]{fontenc} for engines other than pdfTeX (if
    detected) or if the new [nofontenc] option is used.
  * smooth.spline() now stores its logical cv argument more safely,
    fixing a rare bug when printing, and also stores n.
  * smooth.spline(x,y,*) now computes the cv.crit statistic
    correctly, also when is.unsorted(x), fixing PR#18294.
  * The data.frame method of rbind() now warns when binding
    not-wholly-recycling vectors, by analogy to the default method
    (for matrices).
  * setAs() finds the correct class for name to when multiple
    packages define a class with that name. Thanks to Gabor Csardi
    for the report.
  * Fix for detaching a package when two classes of the same name are
    present in method signatures for the same generic. Thanks to
    Gabor Csardi for the report.
  * match.arg("", c("", "a", "B")) gives a better error message, in
    part from PR#17959, thanks to Elin Waring.
  * R CMD Sweave --clean no longer removes pre-existing files or
    subdirectories (PR#18242).
  * The quartz() device no longer splits polylines into subpaths.
    That has caused narrowly-spaced lines with many points to always
    look solid even when dashed line type was used due to dash phase
    restarts.
  * Deparsing constructs such as quote(1 + `!`(2) + 3) works again as
    before R 3.5.0, thanks to the report and patch in PR#18284 by
    Suharto Anggono.
  * as.list(f) for a factor f now keeps names(f), fixing PR#18309.
  * qbeta(.001, .9, .009) and analogous qf() calls now return a
    correct value instead of NaN or wrongly 1, all with a warning;
    thanks to the report by Ludger Goeminne in PR#18302.
  * plot.lm() failed to produce the plot of residuals vs.  factor
    levels (i.e., which=5 when leverages are constant) for models
    with character predictors (PR#17840).
  * interaction.plot(..., xtick = TRUE) misplaced the x-axis line
    (PR#18305).
  * Not strictly fixing a bug, format()ing and print()ing of
    non-finite Date and POSIXt values NaN and +/-Inf no longer show
    as NA but the respective string, e.g., Inf, for consistency with
    numeric vector's behaviour, fulfilling the wish of PR#18308.
  * R CMD check no longer runs test scripts generated from
    corresponding .Rin files twice and now signals an ERROR if
    processing an .Rin script fails.
  * tools::Rd2txt() used for plain-text help pages now renders \hrefs
    (if tools::Rd2txt_options(showURLs = TRUE)) and \urls with
    percent-encoding and standards-compliant delimiting style (angle
    brackets and no URL: prefix).  \email is now rendered with a
    mailto: prefix.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1655985600">- CHANGES IN R 4.2.1:
  NEW FEATURES:
  * New function utils::findCRANmirror() to find out if a CRAN mirror
    has been selected, otherwise fallback to the main site.  This
    behaves in the same way as tools::CRAN_package_db() and is
    intended for packages wishing to access CRAN for purposes other
    than installing packages.
    The need for this was shown by a day when the main CRAN website
    was offline and a dozen or so packages which had its URL
    hardcoded failed their checks.
  INSTALLATION on a UNIX-ALIKE:
  * The libraries searched for by --with-blas (without a value) now
    include BLIS (after OpenBLAS but before ATLAS).  And on macOS,
    the Accelerate framework (after ATLAS).  (This is patterned after
    the AX_BLAS macro from the Autoconf Archive.)
  * The included LAPACK sources have been updated to 3.10.1.
  UTILITIES:
  * The (full path to) the command tidy to be used for HTML
    validation can be set by environment variable R_TIDYCMD.
  * Setting environment variable _R_CHECK_RD_VALIDATE_RD2HTML_ to a
    false value will override R CMD check --as-cran and turn off HTML
    validation.  This provides a way to circumvent a problematic
    tidy.
    The 2006 version that ships with macOS is always skipped.
  C-LEVEL FACILITIES:
  * The undocumented legacy declarations of Sint, Sfloat, SINT_MAX
    and SINT_MIN in header R.h are deprecated.
  BUG FIXES:
  * fisher.test(d) no longer segfaults for "large" d; fixing PR#18336
    by preventing/detecting an integer overflow reliably.
  * tar(., files=*) now produces correctly the warning about invalid
    uid or gid of files, fixing PR#18344, reported by Martin Morgan.
  * tk_choose.files() with multi = FALSE misbehaved on paths
    containing spaces (PR#18334) (regression introduced in R 4.0.0).
  * sort(x, partial = ind, *) now works correctly notably for the
    non-default na.last = FALSE or TRUE, fixing PR#18335 reported by
    James Edwards.
  * Environment variable _R_CHECK_XREFS_REPOSITORIES_ is only used
    for checking .Rd cross-references in R CMD check (as documented)
    and not for other uses looking for a CRAN mirror.
  * The search for a CRAN mirror when checking packages now uses
    getOption("repos") if that specifies a CRAN mirror, even when it
    does not also specify all three Bioconductor repositories (as was
    previously required).
  * The HTML code generated by tools::Rd2HTML() has been improved to
    pass tidy 5.8.0.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1667217600">- CHANGES IN R 4.2.2:
  NEW FEATURES:
  * tools::Rdiff(useDiff = TRUE) checks for the presence of an
    external diff command and switches to useDiff = FALSE if none is
    found.  This allows R CMD Rdiff to always work.
  * On Windows, environment variable R_LIBCURL_SSL_REVOKE_BEST_EFFORT
    can be used to switch to only 'best-effort' SSL certificate
    revocation checks with the default "libcurl" download method.
    This reduces security, but may be needed for downloads to work
    with MITM proxies (PR#18379).
  * (macOS) The run-time check for libraries from XQuartz for X11 and
    Tcl/Tk no longer uses otool from the Apple Developer Tools
    (PR#18400).
  * The LaTeX style for producing the PDF manuals, Rd.sty, now loads
    the standard amsmath, amsfonts and amssymb packages for greater
    coverage of math commands in the Rd \eqn and \deqn macros.  The
    \mathscr LaTeX command is also provided (via the mathrsfs
    package, if available, or the amsfonts bundle otherwise),
    fulfilling the wish of PR#18398.
  * (Windows) The default format of readClipboard() and
    writeClipboard() has been changed to 13 (CF_UNICODETEXT).
  INSTALLATION on a UNIX-ALIKE:
  * The PDF manuals (if built) can be compacted by the new target
    make compact-pdf (at the top level or in directory doc/manual).
  * There is now configure support for LLVM clang 15 on Linux, which
    defaults to position-independent (PIE) executables whereas
    gfortran does not.
  * Many small changes to ease compilation (and suppress warnings)
    with LLVM clang 15.
  BUG FIXES:
  * Rscript -e would fail if stdin were closed (Reported by Henrik
    Bengtsson.)
  * qt(*, log.p=TRUE) in outer tails no longer produces NaN in its
    final steps, thus fixing PR#18360.
  * tools::Rd2latex() now escapes hashes and ampersands when writing
    URLs, fixing LaTeX errors with such URLs in \tabular.
  * When isGeneric(f, fdef=*) is used with mismatching names, the
    warning is better understandable; reported (with fix) in PR#18370
    by Gabe Becker.
  * poly(x, n) now works again (and is now documented) when x is a
    "Date" or "POSIXct" object, or of another class while fulfilling
    mode(x) == "numeric".  This also enables poly(x, *, raw=TRUE) for
    such variables.  Reported by Michael Chirico to R-devel.
  * write.table(), write.csv() and write.csv2() restore their
    numerical precision (internal equivalent of digits = 15) after an
    interrupt (PR#18384).
  * One can now read also byte FF from a clipboard connection
    (PR#18385).
  * source("") and source(character()) now give more helpful error
    messages.
  * R CMD check --as-cran set _R_CHECK_TIMINGS_ too late to have the
    intended effect.
  * as.POSIXlt(x) now also works with very large dates x, fixing
    PR#18401 reported by Hannes M"uhleisen.
  * Files can now be extracted even from very large zip archives
    (PR#18390, thanks to Martin Jakt).
  * Non-finite objects of class "POSIXlt" are now correctly coerced
    to classes "Date" and "POSIXct"; following up on the extension to
    format() them correctly.
  * Added methods for is.finite(), is.infinite() and is.nan() for
    "POSIXlt" date-time objects.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1678881600">- CHANGES IN R 4.2.3:
  C-LEVEL FACILITIES:
  * The definition of DL_FUNC in R_ext/Rdynload.h has been changed to
    be fully C-compliant.  This means that functions loaded _via_ for
    example R_GetCCallable need to be cast to an appropriate type if
    they have any arguments.
  * .Machine has a new element sizeof.time_t to identify old systems
    with a 32-bit type and hence a limited range of date-times (and
    limited support for dates millions of years from present).
  PACKAGE INSTALLATION:
  * (Windows) The default C++ standard had accidentally been left at
    C++11 when it was changed to C++14 on Unix.
  BUG FIXES:
  * As "POSIXlt" objects may be "partially filled" and their list
    components meant to be recycled, length() now is the length of
    the longest component.
  * as.POSIXlt.Date() could underflow for dates in the far past (more
    than half a million years BCE).
  * as.Date.POSIXlt(x) would return "1970-01-01" instead of NA in R
    4.2.2, e.g., for
    x &lt;- as.POSIXlt(c("2019-01-30","2001-1-1"))
    x$mon &lt;- c(0L, NA); as.Date(x)
  * R CMD check failed to apply enabled _R_CHECK_SUGGESTS_ONLY_ to
    examples and vignettes (regression in R 4.2.0).
  * R CMD check did not re-build vignettes in separate processes by
    default (regression in R 4.2.0).
  * Running examples from HTML documentation now restores previous
    knitr settings and options (PR#18420).
  * Quartz: fonts are now located using Core Graphics API instead of
    deprecated ATS which is no longer supported in the macOS 13 SDK
    (PR#18426).  This also addresses an issue where the currently
    used font in the Quartz device context was not correctly
    retained.
  * (Windows) Math symbols in text drawing functions are again
    rendered correctly (PR#18440).  This fixes a regression in R
    4.2.1 caused by a fix in PR#18382 which uncovered an issue in
    GraphApp due to which the symbol charset was not used with TT
    Symbol font face.
  * (Windows) Installing a package with a src/Makefile.{win,ucrt}
    file includes ~/.R/Makevars.win64 in the search for user
    makevars, as documented in "R Installation and Administration"
    and done for packages with a src/Makevars.{win,ucrt} file.
  * format(&lt;POSIXlt_w/_unbalanced_sec&gt;, "....%OS&lt;n&gt;") with n &gt; 0 no
    longer accidentally uses the unbalanced seconds, thanks to
    Suharto Anggono's report (including patch) in PR#18448.
  * solve.default(a, b) works around issues with some versions of
    LAPACK when a contains NA or NaN values.
  * When UseMethod() cannot dispatch, it no longer segfaults
    producing the error message in case of a long class(), thanks to
    Joris Vankerschaver's report (including patch) in PR#18447.
  * When example(foo, ..) produces graphics on an interactive device
    it needs to open itself, it now leaves devAskNewPage() unchanged
    even when it was FALSE, thus fixing a 14 years old '&lt;FIXME&gt;'.
  * packageDescription() again catches errors from encoding
    conversions. This also fixes broken packageVersion() in C locale
    on systems where iconv does not support transliteration.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1681128000">- add patch to build with libcurl &gt;= 8</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1682078400">- CHANGES IN R 4.3.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Calling &amp;&amp; or || with LHS or (if evaluated) RHS of length greater
    than one is now always an error, with a report of the form
    'length = 4' in coercion to 'logical(1)'
    Environment variable _R_CHECK_LENGTH_1_LOGIC2_ no longer has any
    effect.
  NEW FEATURES:
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.10.1.  (This caused some platform-dependent
    changes to package check output.)  And then to the sources from
    LAPACK version 3.11.0 (with changes only to double complex
    subroutines).
  * The included LAPACK sources have been updated to include the four
    Fortran 90 routines rather than their Fortran 77 predecessors.
    This may give some different signs in SVDs or
    eigendecompositions..  (This completes the transition to LAPACK
    3.10.x begun in R 4.2.0.)
  * The LAPACK sources have been updated to version 3.11.0.  (No new
    subroutines have been added, so this almost entirely bug fixes:
    Those fixes do affect some computations with NaNs, including R's
    NA.)
  * The parser now signals _classed_ errors, notably in case of the
    pipe operator |&gt;.  The error object and message now give line and
    column numbers, mostly as proposed and provided by Duncan Murdoch
    in PR#18328.
  * toeplitz() is now generalized for asymmetric cases, with a
    toeplitz2() variant.
  * xy.coords() and xyz.coords() and consequently, e.g., plot(x,y,
    log = "y") now signal a _classed_ warning about negative values
    of y (where log(.) is NA).  Such a warning can be specifically
    suppressed or caught otherwise.
  * Regular expression functions now check more thoroughly whether
    their inputs are valid strings (in their encoding, e.g. in
    UTF-8).
  * The performance of grep(), sub(), gsub() and strsplit() has been
    improved, particularly with perl = TRUE and fixed = TRUE.  Use of
    useBytes = TRUE for performance reasons should no longer be
    needed and is discouraged: it may lead to incorrect results.
  * apropos() gains an argument dot_internals which is used by the
    completion (help(rcompgen)) engine to also see base internals
    such as .POSIXct().
  * Support in tools::Rdiff() for comparing uncompressed PDF files is
    further reduced - see its help page.
  * qqplot(x, y, ...) gains conf.level and conf.args arguments for
    computing and plotting a confidence band for the treatment
    function transforming the distribution of x into the distribution
    of y (Switzer, 1976, _Biometrika_). Contributed by Torsten
    Hothorn.
  * Performance of package_dependencies() has been improved for cases
    when the number of dependencies is large.
  * Strings newly created by gsub(), sub() and strsplit(), when any
    of the inputs is marked as "bytes", are also marked as "bytes".
    This reduces the risk of creating invalid strings and accidental
    substitution of bytes deemed invalid.
  * Support for readLines(encoding = "bytes") has been added to allow
    processing special text files byte-by-byte, without creating
    invalid strings.
  * iconv(from = "") now takes into account any declared encoding of
    the input elements and uses it in preference to the native
    encoding.  This reduces the risk of accidental creation of
    invalid strings, particularly when different elements of the
    input have different encoding (including "bytes").
  * Package repositories in getOption("repos") are now initialized
    from the repositories file when utils is loaded (if not already
    set, e.g., in .Rprofile).  (From a report and patch proposal by
    Gabriel Becker in PR#18405.)
  * compactPDF() gets a verbose option.
  * type.convert() and hence read.table() get new option tryLogical =
    TRUE with back compatible default.  When set to false, converts
    "F" or "T" columns to character.
  * Added new unit prefixes "R" and "Q" for abbreviating
    (unrealistically large) sizes beyond 10^{27} in standard = "SI",
    thanks to Henrik Bengtsson's PR#18435.
  * as.data.frame()'s default method now also works fine with atomic
    objects inheriting from classes such as "roman", "octmode" and
    "hexmode", such fulfilling the wish of PR#18421, by Benjamin
    Feakins.
  * The as.data.frame.vector() utility now errors for wrong-length
    row.names.  It warned for almost six years, with "Will be an
    error!".
  * sessionInfo() now also contains La_version() and reports codepage
    and timezone when relevant, in both print() and toLatex() methods
    which also get new option tzone for displaying timezone
    information when locale = FALSE.
  * New function R_compiled_by() reports the C and Fortran compilers
    used to build R, if known.
  * predict(&lt;lm&gt;, newdata = *) no longer unnecessarily creates an
    offset of all 0s.
  * solve() for complex inputs now uses argument tol and by default
    checks for 'computational singularity' (as it long has done for
    numeric inputs).
  * predict(&lt;rank-deficient lm&gt;, newdata=*) now obeys a new argument
    rankdeficient, with new default "warnif", warning only if there
    are non-estimable cases in newdata.  Other options include
    rankdeficient = "NA", predicting NA for non-estimable newdata
    cases.  This addresses PR#15072 by Russ Lenth and is based on his
    original proposal and discussions in PR#16158 also by David Firth
    and Elin Waring.  Still somewhat experimental.
  * Rgui console implementation now works better with the NVDA screen
    reader when the full blinking cursor is selected.  The underlying
    improvements in cursor handling may help also other screen
    readers on Windows.
  * The drop-field control in GraphApp can now be left with the TAB
    key and all controls can be navigated in the reverse order using
    the Shift+TAB key, improving accessibility of the Rgui
    configuration editor.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now fully accurate
    (instead of to "only" minimally five digits).
  * demo(error.catching) now also shows off withWarnings() and
    tryCatchWEMs().
  * As an experimental feature the placeholder _ can now also be used
    in the rhs of a forward pipe |&gt; expression as the first argument
    in an extraction call, such as _$coef. More generally, it can be
    used as the head of a chain of extractions, such as _$coef[[2]].
  * Spaces in the environment variable used to choose the R session's
    temporary directory (TMPDIR, TMP and TEMP are tried in turn) are
    now fatal.  (On Windows the 'short path' version of the path is
    tried and used if that does not contain a space.)
  * all.equal.numeric() gets a new optional switch giveErr to return
    the numeric error as attribute.  Relatedly,
    stopifnot(all.equal&lt;some&gt;(a, b, ..)) is as "smart" now, as
    stopifnot(all.equal(....)) has been already, thus allowing
    customized all.equal&lt;Some&gt;() wrappers.
  * R on Windows is now able to work with path names longer than 260
    characters when these are enabled in the system (requires at
    least Windows 10 version 1607).  Packages should be updated to
    work with long paths as well, instead of assuming PATH_MAX to be
    the maximum length.  Custom front-ends and applications embedding
    R need to update their manifests if they wish to allow this
    feature.  See
    &lt;https://blog.r-project.org/2023/03/07/path-length-limit-on-windows&gt;
    for more information.
  * 'Object not found' and 'Missing argument' errors now give a more
    accurate error context. Patch provided by Lionel Henry in
    PR#18241.
  * The @ operator is now an S3 generic. Based on contributions by
    Tomasz Kalinowski in PR#18482.
  * New generic chooseOpsMethod() provides a mechanism for objects to
    resolve cases where two suitable methods are found for an Ops
    Group Generic. This supports experimenting with alternative
    object systems. Based on contributions by Tomasz Kalinowski in
    PR#18484.
  * inherits(x, what) now accepts values other than a simple
    character vector for argument what. A new generic, nameOfClass(),
    is called to resolve the class name from what. This supports
    experimenting with alternative object systems. Based on
    contributions by Tomasz Kalinowski in PR#18485.
  * Detection of BLAS/LAPACK in use (sessionInfo()) with FlexiBLAS
    now reports the current backend.
  * The "data.frame" method for subset() now warns about extraneous
    arguments, typically catching the use of = instead of == in the
    subset expression.
  * Calling a:b when numeric a or b is longer than one may now be
    made into an error by setting environment variable
    _R_CHECK_LENGTH_COLON_ to a true value, along the proposal in
    PR#18419 by Henrik Bengtsson.
  * density(x, weights = *) now warns if automatic bandwidth
    selection happens without using weights; new optional warnWbw may
    suppress the warning.  Prompted by Christoph Dalitz' PR#18490 and
    its discussants.
  * rm(list = *) is faster and more readable thanks to Kevin Ushey's
    PR#18492.
  * The plot.lm() function no longer produces a normal Q-Q plot for
    GLMs. Instead it plots a half-normal Q-Q plot of the absolute
    value of the standardized deviance residuals.
  * The print() method for class "summary.glm" no longer shows
    summary statistics for the deviance residuals by default.  Its
    optional argument show.residuals can be used to show them if
    required.
  * The tapply() function now accepts a data frame as its X argument,
    and allows INDEX to be a formula in that case. by.data.frame()
    similarly allows INDICES to be a formula.
  * The performance of df[j] &lt;- value (including for missing j) and
    write.table(df) has been improved for data frames df with a large
    number of columns.  (Thanks to Gabriel Becker's PR#18500,
    PR#18503 and discussants, prompted by a report from Toby Dylan
    Hocking on the R-devel mailing list.)
  * The matrix multiply operator %*% is now an S3 generic, belonging
    to new group generic matrixOps.  From Tomasz Kalinowski's
    contribution in PR#18483.
  * New function array2DF() to convert arrays to data frames,
    particularly useful for the list arrays created by tapply().
  DATES and TIMES:
  * On platforms where (non-UTC) datetimes before 1902 (or before
    1900 as with system functions on recent macOS) are guessed by
    extrapolating time zones from 1902-2037, there is a warning at
    the first use of extrapolation in a session.  (As all time zones
    post 2037 are extrapolation, we do not warn on those.)
  * (Platforms using --with-internal-tzone, including Windows and by
    default macOS). How years are printed in dates or date-times can
    be controlled by environment variable R_PAD_YEARS_BY_ZERO.  The
    default remains to pad to 4 digits by zeroes, but setting value
    no gives no padding (as used by default by glibc).
  * strftime() tries harder to determine the offset for the "%z"
    format, and succeeds on the mainstream R platforms.
  * strftime() has a limit of 2048 bytes on the string produced -
    attempting to exceed this is an error.  (Previously it silently
    truncated at 255 bytes.)
  * sessionInfo() records (and by default prints) the system time
    zone as part of the locale information.  Also, the source
    (system/internal) of the date-time conversion and printing
    functions.
  * Objects of class "POSIXlt" created in this version of R always
    have 11 components: component zone is always set, and component
    gmtoff is set for times in UTC and usually set on the (almost
    all) platforms which have C-level support, otherwise is NA.
  * There are comprehensive validity checks on the structure of
    objects of class "POSIXlt" when converting (including formatting
    and printing).  (This avoids mis-conversions of hand-crafted
    objects.)
  * There is some support for using the native date-time routines on
    macOS: this is only viable on recent versions (e.g. 12.6 and 13)
    and does get wrong some historical changes (before 1900, during
    WWII).  Use of --with-internal-tzone remains the default.
  * as.POSIXct(&lt;numeric&gt;) and as.POSIXlt(.) (without specifying
    origin) now work.  So does as.Date(&lt;numeric&gt;).
  * as.Date.POSIXct(., tz) now treats several tz values, notably
    "GMT" as equivalent to "UTC", proposed and improved by Michael
    Chirico and Joshua Ulrich in PR#17674.
  * Experimental balancePOSIXlt() utility allows using "ragged" and
    or out-of-range "POSIXlt" objects more correctly, e.g., in
    subsetting and subassignments.  Such objects are now documented.
    More experimentally, a "POSIXlt" object may have an attribute
    "balanced" indicating if it is known to be filled or fully
    balanced.
  * Functions axis.Date() and axis.POSIXct() are rewritten to gain
    better default tick locations and better default formats by using
    prettyDate(). Thanks to Swetlana Herbrandt.
  * The mapping of Windows' names for time zones to IANA's 'Olson'
    names has been updated.  When ICU is available (it is by
    default), it is used to get a mapping for the current region set
    in Windows.  This can be overridden by setting environment
    variable TZ to the desired Olson name - see OlsonNames() for
    those currently available.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 16
    and so packages that provide graphics devices should be
    reinstalled.
  * The grDevices and grid packages have new functions for rendering
    typeset glyphs, primarily: grDevices::glyphInfo() and
    grid::grid.glyph().
    Rendering of typeset glyphs is only supported so far on the
    Cairo-based graphics devices and on the pdf() and quartz()
    devices.
  * The defined behaviour for "clear" and "source" compositing
    operators (via grid::grid.group()) has been changed (to align
    better with simple interpretation of original Porter-Duff
    definitions).
  * Support for gradients, patterns, clipping paths, masks, groups,
    compositing operators, and affine transformations has been added
    to the quartz() device.
  INSTALLATION on a UNIX-ALIKE:
  * A system installation of generic LAPACK 3.10.0 or later will be
    preferred to the version in the R sources.
    configure option --with-lapack=no (equivalently --without-lapack)
    forces compilation of the internal LAPACK sources.
    If --with-lapack is not specified, a system liblapack is looked
    for and used if it reports version 3.10.0 or later and does not
    contain BLAS routines.
    Packages using LAPACK will need to be reinstalled if this changes
    to using an external library.
  * On aarch64 Linux platforms using GCC, configure now defaults to
  - fPIC (instead of -fpic), as desired in PR#18326.
  * configure now checks conversion of datetimes between POSIXlt and
    POSIXct around year 2020.  Failure (which has been seen on
    platforms missing tzdata) is fatal.
  * If configure option --with-valgrind-instrumentation is given
    value 1 or 2, option --with-system-valgrind-headers is now the
    default and ignored (with a warning).  It is highly recommended
    that the system headers are installed alongside valgrind: they
    are part of its packaging on some Linux distributions and
    packaged separately (e.g. in the valgrind-devel RPM) on others.
    configure will give a warning if they are not found.
    The system headers will be required in a future release of R to
    build with valgrind instrumentation.
  * libcurl 8.x is now accepted by configure: despite a change in
    major version number it changes neither API nor ABI.
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools43, an update of the Rtools42 toolchain.  It is
    based on gcc 12 and newer versions of MinGW-W64, binutils and
    libraries.  At this time R-devel can still be built using
    Rtools42 without changes, but when R-devel is installed via the
    installer, it will by default look for Rtools43.
  * Old make targets rsync-extsoft and 32-bit ones that are no longer
    needed have been removed.
  * Default builds (including for packages) no longer select C99.
    Thus the C standard used is the default for the compiler, which
    for the toolchain in Rtools43 is C17.  (This is consistent with
    Unix builds.)
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++17 where
    available (which it is on all currently checked platforms): if
    not C++14 or C++11 is used if available otherwise C++ is not
    supported.
  * USE_FC_LEN_T is the default: this uses the correct
    (compiler-dependent) prototypes for Fortran BLAS/LAPACK routines
    called from C/C++, and requires adjustment of many such calls -
    see 'Writing R Extensions' SS6.6.1.
  * There is initial support for C++23 as several compilers are now
    supporting -std=c++23 or -std=c++2b or similar.  As for C++20,
    there no additional configure checks for C++23 features beyond a
    check that the compiler reports a __cplusplus value greater than
    that in the C++20 standard.  C++ feature tests should be used.
  * There is support for a package to indicate the version of the C
    standard which should be used to compile it, and for the
    installing user to specify this.  In most cases R defaults to the
    C compiler's default standard which is C17 (a `bug-fix' of C11) -
    earlier versions of R or compilers may have defaulted to C99.
    Current options are:
    USE_C17 Use a standard that is at most C17.  The intention is to
    allow legacy packages to still be installed when later C
    standards become the default, including packages using new
    keywords as identifiers or with K&amp;R-style function
    declarations.  This will use C17 if available, falling back
    to C11.
    USE_C90 Use the C90 (aka C89) standard.  (As that standard did
    not require compilers to identify that version, all we can
    verify is that the compiler does not claim to be using a
    later standard.  It may accept C99 features - for example
    clang accepts // to make comments.)
    USE_C99 Use the C99 standard. This should be rarely needed - it
    avoids the few new features of C11/C17 which can be useful if
    a package assumes them if C17 is specified and they are not
    implemented.
    USE_C23 Use C23 (or in future, later).  Compiler/library support
    for C23 is still being implemented, but LLVM clang from
    15.0.0 and the upcoming GCC 13 have quite extensive support.
    These can be specified as part of the SystemRequirements field in
    the package's DESCRIPTION file or _via_ options --use-C17 and so
    on of R CMD INSTALL and R CMD SHLIB.
    For further details see "Writing R Extensions" SS1.2.5.
  * (Windows) A src/Makefile.ucrt or src/Makefile.win file is now
    included after R_HOME/etcR_ARCH/Makeconf and so no longer needs
    to include that file itself.  Installation of a package with such
    a file now uses a site Makevars file in the same way as a package
    with a src/Makevars.win file would.
  * configure is now passed crucial variables such as CC and CFLAGS
    in its environment, as many packages were not setting them (as
    documented in 'Writing R Extensions' SS1.2).
    This has most effect where configure is used to compile parts of
    the package - most often by cmake or libtool which obfuscate the
    actual compile commands used.
    Also used for configure.win and configure.ucrt on Windows.
  FORTRAN FLAGS:
  * The flag -fno-optimize-sibling-calls is no longer forced for
    gfortran 7 and later.  It should no longer be needed now using
    'hidden' character-length arguments when calling BLAS/LAPACK
    routines from C/C++ is the default even for packages.  (Unless
    perhaps packages call Fortran code from C/C++ without using R's
    headers and without allowing for these arguments.)
  C-LEVEL FACILITIES:
  * The deprecated S-compatibility macros DOUBLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * The deprecated legacy typedefs of Sint and Sfloat in header R.h
    are no longer defined, and that header no longer includes header
    limits.h from C nor climits from C++.
  * New macro CAD5R() is provided in Rinternals.h and used in a few
    places in the R sources.
  * ALTREP now supports VECSXP vectors. Contributed by Gabor Csardi
    in PR#17620.
  * The Rcomplex definition (in header R_ext/Complex.h) has been
    extended to prevent possible mis-compilation when interfacing
    with Fortran (PR#18430).  The new definition causes compiler
    warnings with static initializers such as {1, 2}, which can be
    changed to {.r=1, .i=2}.
    Using the new definition from C++ depends on compiler extensions
    supporting C features that have not been incorporated into the
    C++ standards but are available in g++ and clang++: this may
    result in C++ compiler warnings but these have been worked around
    for recent versions of common compilers (GCC, Apple/LLVM clang,
    Intel).
    It is intended to change the inclusion of header R_ext/Complex.h
    by other R headers, so C/C++ code files which make use of
    Rcomplex should include that header explicitly.
  UTILITIES:
  * R CMD check does more checking of package .Rd files, warning
    about invalid email addresses and (some) invalid URIs and noting
    empty \item labels in description lists.
  * R CMD check now also reports problems when reading package news
    in md (file NEWS.md) and (optionally) plain text (file NEWS)
    formats.
  * _R_CHECK_TIMINGS_ defaults to a value from the environment even
    for R CMD check --as-cran; this allows for exceptionally fast or
    slow platforms.
    It now applies to checking PDF and HTML versions of the manuals,
    and 'checking CRAN incoming feasibility'.
  * R CMD check can optionally (but included in --as-cran) check
    whether HTML math rendering _via_ KaTeX works for the package .Rd
    files.
  * Non-interactive debugger invocations can be trapped by setting
    the environment variable _R_CHECK_BROWSER_NONINTERACTIVE_ to a
    true value.  This is enabled by R CMD check --as-cran to detect
    the use of leftover browser() statements in the package.
  * The use of sprintf and vsprintf from C/C++ has been deprecated in
    macOS 13 and is a known security risk.  R CMD check now reports
    (on all platforms) if their use is found in compiled code:
    replace by snprintf or vsnprintf respectively. [*NB:* whether
    such calls get compiled into the package is platform-dependent.]
  * Where recorded at installation, R CMD check reports the C and
    Fortran compilers used to build R.
    It reports the OS in use (if known, as given by osVersion) as
    well as that R was built for.
    It notes if a C++ standard was specified which is older than the
    current default: many packages have used C++11 to mean 'not
    C++98' - as C++11 is the minimum supported since R 4.0.0, that
    specification can probably be removed.
  * R CMD INSTALL reports the compilers (and on macOS, the SDK) used,
    and this is copied to the output of R CMD check.
    Where a C++ standard is specified, it is reported.
  * R CMD check's 'checking compilation flags in Makevars' has been
    relaxed to accept the use of flags such as -std=f2008 in
    PKG_FFLAGS.
  * tools::buildVignettes() has a new argument skip, which is used by
    R CMD check to skip (and note) vignettes with unavailable
    \VignetteDepends (PR#18318).
  * New generic .AtNames() added to enable class-specific completions
    after @. The formerly internal function findMatches() is now
    exported, mainly for use in methods for .DollarNames() and
    .AtNames().
  DEPRECATED AND DEFUNCT:
  * default.stringsAsFactors() is defunct.
  * Calling as.data.frame.&lt;class&gt;() directly (for 12 atomic classes)
    is going to be formally deprecated, currently activated by
    setting the environment variable
    _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ to non-empty, which also
    happens in R CMD check --as-cran.
  BUG FIXES:
  * Hashed environments with sizes less than 5 can now grow.
    (Reported to R-devel by Duncan Garmonsway.)
  * as.character(&lt;Rd&gt;, deparse = TRUE) failed to re-escape curly
    braces in LaTeX-like text.  (Reported by Hadley Wickham in
    PR#18324.)
  * library() now passes its lib.loc argument when requiring Depends
    packages; reported (with fix) in PR#18331 by Mikael Jagan.
  * R CMD Stangle: improved message about 'Output' files.
  * head(x, n) and tail(x, n) now signal an error if n is not
    numeric, instead of incidentally "working" sometimes returning
    all of x.  Reported and discussed by Colin Fay, in PR#18357.
  * The "lm" method for summary() now gives the correct F-statistic
    when the model contains an offset.  Reported in PR#18008.
  * C() and `contrasts&lt;-`() now preserve factor level names when
    given a function object (as opposed a function name which did
    preserve names). Reported in PR#17616.
  * c(a = 1, 2)[[]] no longer matches 2 but rather signals a
    _classed_ error.  Reported and analysed by Davis Vaughan in
    PR#18367, a duplicate of PR#18004, by Jan Meis et al.  For
    consistency, NULL[[]] is also erroneous now.  x[[]] &lt;- v gives an
    error of the same class "MissingSubscriptError".
  * The relist() function of utils now supports NULL elements in the
    skeleton (PR#15854).
  * ordered(levels = *) (missing x) now works analogously to factor(,
    ordered=TRUE); reported (with fix) by Achim Zeileis in PR#18389.
  * User-defined Rd macro definitions can now span multiple lines,
    thanks to a patch from Duncan Murdoch. Previously, the Rd parser
    silently ignored everything after the first line.
  * Plain-text help (tools::Rd2txt()) now preserves an initial blank
    line for text following description list items.
  * tools::Rd2HTML() and tools::Rd2latex() no longer split \arguments
    and \value lists at Rd comments.
  * tools::Rd2latex() now correctly handles optional text outside
    \items of argument lists as well as bracketed text at the
    beginning of sections, e.g., \value{[NULL]}.
  * as.character(&lt;POSIXt&gt;) now behaves more in line with the methods
    for atomic vectors such as numbers, and is no longer influenced
    by options().  Ditto for as.character(&lt;Date&gt;).  The
    as.character() method gets arguments digits and OutDec with
    defaults _not_ depending on options().  Use of as.character(*,
    format = .) now warns.
  * Similarly, the as.character.hexmode() and *.octmode() methods
    also behave as good citizen methods and back compatibility option
    keepStr = TRUE.
  * The as.POSIXlt(&lt;POSIXlt&gt;) and as.POSIXct(&lt;POSIXct&gt;) default
    methods now do obey their tz argument, also in this case.
  * as.POSIXlt(&lt;Date&gt;) now does apply a tz (time zone) argument, as
    does as.POSIXct(); partly suggested by Roland Fuss on the R-devel
    mailing list.
  * as.Date.POSIXlt(x) now also works when the list components are of
    unequal length, aka "partially filled" or "ragged".
  * expand.model.frame() looked up variables in the wrong environment
    when applied to models fitted without data.  Reported in
    PR#18414.
  * time() now (also) uses the ts.eps = getOption("ts.eps") argument
    and thus by default rounds values very close to the start (or
    end) of a year.  Based on a proposal by Andre"i V. Kostyrka on
    R-help.
  * Printing of a factanal() result with just one factor and sort =
    TRUE now works regularly, fixing PR#17863 by Timothy Bates,
    thanks to the 'R Contributors' working group.
  * Printing 0-length objects of class "factor", "roman", "hexmode",
    "octmode", "person", "bibentry", or "citation" now prints
    something better, one of which fixes PR#18422, reported by
    Benjamin Feakins.
  * Sys.timezone() queries timedatectl only if systemd is loaded;
    addressing a report by Jan Gorecki in PR#17421.
  * The formula method of cor.test() had scoping problems when
    environment(formula) was not the calling environment; reported
    with a patch proposal by Mao Kobayashi in PR#18439.
  * attach() of an environment with active bindings now preserves the
    active bindings.  Reported by Kevin Ushey in PR#18425.
  * BLAS detection now works also with system-provided libraries not
    available as regular files.  This fixes detection of the
    Accelerate framework on macOS since Big Sur.  Reported by David
    Novgorodsky.
  * download.file() gives a helpful error message in case of an
    invalid download.file.method option, thanks to Colin Fay's report
    in PR#18455.
  * Sporadic crashes of Rterm when using completion have been fixed.
  * Rprof() is now more reliable.  A livelock in thread
    initialization with too short sampling interval has been fixed on
    macOS.  A deadlock in using the C runtime has been fixed on
    Windows.  A potential deadlock has been prevented on Unix.
  * Cursor placement in Rgui now works even after a fixed-width font
    is selected.
  * Mandatory options (options()) are now set on startup so that
    saving and restoring them always works (PR#18372).
  * Package installation, R CMD INSTALL or install.packages(*), now
    parses each of the &lt;pkg&gt;/R/*.R files individually instead of
    first concatenating and then parse()ing the large resulting file.
    This allows parser or syntax errors to be diagnosed with correct
    file names and line numbers, thanks to Simon Dedman's report and
    Bill Dunlap's patch in PR#17859.
    This _does_ require syntactically self contained R source files
    now, fixing another inadvertent bug.
  * predict.lm(&lt;model with offset&gt;) now finds the offset in the
    correct environment, thanks to Andr'e Gillibert's report and patch
    in PR#18456.
  * getInitial(&lt;formula&gt;) now finds the selfStart model in the
    correct environment.  (Reported by Ivan Krylov in PR#18368.)
  * Fix for possible segfault when using recently-added graphics
    features, such as gradients, clipping paths, masks, and groups
    with pdf(file=NULL).
  * class(m) &lt;- class(m) no longer changes a matrix m by adding a
    class _attribute_.
  * packageDate(pkg) now only warns once if there is no pkg.
  * When ts() creates a multivariate time series, "mts", it also
    inherits from "array" now, and is.mts() is documented _and_
    stricter.
  * Rd2txt() now preserves line breaks of \verb Rd content and from
    duplicated \cr.  The former also fixes the rendering of verbatim
    output from Rd \Sexpr in plain-text help.
  * uniroot(f, interval) should no longer wrongly converge _outside_
    the interval in some cases where abs(f(x)) == Inf for an x at the
    interval boundary, thanks to posts by Ben Bolker and Serguei
    Sokol on R-devel.
  * Vectorized alpha handling in palette functions such as in gray(),
    rainbow(), or hcl.colors() works correctly now, thanks to Achim
    Zeileis' report and patch in PR#18476.
  * Formatting and print()ing of bibentry objects has dropped the
    deprecated citation.bibtex.max argument, such that the bibtex
    argument's default for print.bibentry() depends directly on the
    citation.bibtex.max option, whereas in format.bibentry() the
    option no longer applies.
  * Attempting to use a character string naming a foreign function
    entry point in a foreign function call in a package will now
    signal an error if the packages has called R_forceSymbols to
    specify that symbols must be used.
  * An error in table() could permanently set options(warn=2)
    promoting all subsequent warnings to errors.
  * The sigma() function gave misleading results for binary GLMs.  A
    new method for objects of class "glm" returns the square root of
    the estimate of the dispersion parameter using the same
    calculation as summary.glm().
  * bs() and ns() in the (typical) case of automatic knot
    construction, when some of the supposedly inner knots coincide
    with boundary knots, now moves them inside (with a warning),
    building on PR#18442 by Ben Bolker.
  * R CMD on Windows now skips the site profile with --no-site-file
    and --vanilla even when R_PROFILE is set (PR#18512, from Kevin
    Ushey).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1686916800">- CHANGES IN R 4.3.1:
  C-LEVEL FACILITIES:
  * The C-level API version of R's integrate(), Rdqags() in Applic.h,
    now returns the correct number of integrand evaluations neval,
    fixing PR#18515 reported and diagnosed by Stephen Wade.
  * The C prototypes for LAPACK calls dspgv and dtptrs in
    R_exts/Lapack.h had one too many and one too few character length
    arguments - but this has not caused any known issues. To get the
    corrected prototypes, include
    [#]include &lt;Rconfig.h&gt; // for PR18534fixed
    [#]ifdef PR18534fixed
    [#] define usePR18534fix 1
    [#]endif
    [#]include &lt;R_exts/Lapack.h&gt;
    in your C/C++ code (PR#18534).
  INSTALLATION:
  * Many of the checks of esoteric Internet operations and those
    using unreliable external sites have been moved to a new target
    that is not run by default and primarily intended for the core
    developers.  To run them use
    cd tests; make test-Internet-dev
  BUG FIXES:
  * .S3methods(), typically called from methods(), again marks
    methods from package base as visible.
    Also, the visibility of non-base methods is again determined by
    the method's presence in search().
  * tools::Rdiff() is now more robust against invalid strings, fixing
    installation tests on Windows without Rtools installed
    (PR#18530).
  * Fix (new) bug in hcl.colors(2, *), by Achim Zeileis (PR#18523).
  * head(., &lt;illegal&gt;) and tail(..) now produce more useful "Error in
    ...." error messages, fixing PR#18362.
  * Package code syntax on Windows is checked in UTF-8 when UTF-8 is
    the native encoding.
  * na.contiguous(x) now also returns the first run, when it is at
    the beginning and there is a later one of the same length;
    reported to R-devel, including a fix, by Georgi Boshnakov.
    Further, by default, it modifies only an existing attr(*,"tsp")
    but otherwise no longer sets one.
  * chol(&lt;not pos.def&gt;, pivot = &lt;T|F&gt;) now gives a correct error or
    warning message (depending on pivot), thanks to Mikael Jagan's
    (PR#18541).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1699012800">- CHANGES IN R 4.3.2:
  NEW FEATURES:
  * The default initialization of the "repos" option from the
    repositories file at startup can be skipped by setting
    environment variable R_REPOSITORIES to NULL such that
    getOption("repos") is empty if not set elsewhere.
  * qr.X() is now an implicit S4 generic in methods.
  * iconv(to = "ASCII//TRANSLIT") is emulated using substitution on
    platforms which do not support it (notably Alpine Linux).  This
    should give a human-readable conversion in ASCII on all platforms
    (rather than NA_character_).
  * trans3d() gains options continuous and verbose addressing the
    problem of possible "wrap around" when projecting too long
    curves, as reported by Achim Zeileis in PR#18537.
  * tools::showNonASCII() has been rewritten to work better on macOS
    14 (which has a changed implementation of iconv()).
  * tiff(type = "quartz") (the default on macOS) now warns if
    compression is specified: it continues to be ignored.
  INSTALLATION on a UNIX-ALIKE:
  * There is some support for building with Intel's LLVM-based
    compilers on x86_64 Linux, such as (C) icx, (C++) ipcx and
    (Fortran) ifx from oneAPI 2023.x.y.
  * There is support for using LLVM's flang-new as the Fortran
    compiler from LLVM 16.0.x (preferably 17.0.0 or later).
  UTILITIES:
  * R CMD check reports the use of the Fortran 90 random number
    generator RANDOM_NUMBER() and the subroutines to initialize it.
    'Writing R Extensions' has example code to use R's RNGs from
    Fortran.
  BUG FIXES:
  * substr(x, n, L) &lt;- cc now works (more) correctly for multibyte
    UTF-8 strings x when L &gt; nchar(x), thanks to a report and patch
    by 'Architect 95'.
  * contrib.url(character()) now returns 0-length character() as
    documented, which also avoids spurious warnings from
    available.packages() et al. in the edge case of an empty vector
    of repository URLs.
  * readChar(., 4e8) no longer fails, thanks to Kodi Arfer's report
    (PR#18557).
  * lapply(&lt;list&gt;, as.data.frame) no longer warns falsely for some
    base vector components.
  * Communication between parent and child processes in the multicore
    part of parallel could fail on platforms that do not support an
    arbitrarily large payload in system functions read()/write() on
    pipes (seen on macOS where a restriction to INT_MAX bytes is
    documented, without doing a partial read unlike Linux). The
    payload is now split into 1Gb chunks to avoid that problem.
    (PR#18571)
  * qqplot(x,y, conf.level=.) gives better confidence bounds when
    length(x) != length(y), thanks to Alexander Ploner's report and
    patch proposal (PR#18557).
  * norm(&lt;0-length&gt;, "2") now gives zero instead of an error, as all
    the other norm types, thanks to Mikael Jagan's PR#18542.
  * Build-stage Rd macros \packageAuthor and \packageMaintainer now
    process Authors@R, fixing NA results when the package DESCRIPTION
    omits Author and Maintainer fields.
  * Formatting and printing complex numbers could give things like
    0.1683-0i because of rounding error: -0i is now replaced by +0i.
  * postscript() refused to accept a title comment containing the
    letter "W" (PR#18599).
  * isoreg(c(1,Inf)) signals an error instead of segfaulting, fixing
    PR#18603.
  * tiff(type = "Xlib") was only outputting the last page of
    multi-page plots.
  * tools::latexToUtf8() again knows about \~{n} and other letters
    with tilde, fixing a regression in R 4.3.0, and about \^{i} as an
    alternative to \^{\i} (similarly with other accents).
    Furthermore, LaTeX codes for accented I letters are now correctly
    converted, also fixing related mistakes in
    tools::encoded_text_to_latex().
  * tar(*, tar = "internal") no longer creates out-of-spec tar files
    in the very rare case of user or group names longer than 32
    bytes, fixing PR#17871 with thanks to Ivan Krylov.
  * When using the "internal" timezone datetime code, adding a
    fraction of a second no longer adds one second, fixing PR#16856
    from a patch by Ivan Krylov.
  * tools::checkRd() no longer produces spurious notes about
    "unnecessary braces" from multi-line Rd results of \Sexpr macros.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1709208000">- CHANGES IN R 4.3.3:
  NEW FEATURES:
  * iconv() now fixes up variant encoding names such as "utf8"
    case-insensitively.
  DEPRECATED AND DEFUNCT:
  * The legacy encoding = "MacRoman" is deprecated in pdf() and
    postscript(): support was incomplete in earlier versions of R.
  BUG FIXES:
  * Arguments are now properly forwarded to methods on S4 generics
    with ... in the middle of their formal arguments. This was broken
    for the case when a method introduced an argument but did not
    include ... in its own formals. Thanks to Herv'e Pag`es for the
    report PR#18538.
  * Some invalid file arguments to pictex(), postscript() and xfig()
    opened a file called NA rather than throw an error.  These
    included postscript(NULL) (which some people expected to work
    like pdf(NULL)).
  * Passing filename = NA to svg(), cairo_pdf(), cairo_ps() or the
    Cairo-based bitmap devices opened a file called NA: it now throws
    an error.
  * quartz(file = NA) opened a file called NA, including when used as
    a Quartz-based bitmap device.  It now gives an error.
  * rank(&lt;long vector&gt;) now works, fixing PR#18617, thanks to Ilia
    Kats.
  * seq.int() did not adequately check its length.out argument.
  * match(&lt;POSIXct&gt;, .) is correct again for differing time zones,
    ditto for "POSIXlt", fixing PR#18618 reported by Bastian Klein.
  * drop.terms(*, dropx = &lt;0-length&gt;) now works, fixing PR#18563 as
    proposed by Mikael Jagan.
  * drop.terms(*) keeps + offset(.) terms when it should, PR#18565,
    and drop.terms() no longer makes up a response, PR#18566, fixing
    both bugs thanks to Mikael Jagan.
  * getS3method("t", "test") no longer finds the t.test() function,
    fixing PR#18627.
  * pdf() and postscript() support for the documented Adobe encodings
    "Greek" and "Cyrilllic" was missing (although the corresponding
    Windows' codepages could be used).
  * Computations of glyph metric information for pdf() and
    postscript() did not take into account that transliteration could
    replace one character by two or more (only seen on macOS 14) and
    typically warned that the information was not known.
  * rank(x) no longer overflows during integer addition, when
    computing rank average for largish but not-yet long vector x,
    fixing PR#18630, thanks to Ilia Kats.
  * list.files() on Windows now returns also files with names longer
    that 260 bytes (the Windows limit is 260 characters).
    Previously, some file names particularly with 'East Asian'
    characters were omitted.
  * cov2cor(&lt;0 x 0&gt;) now works, fixing PR#18423 thanks to Mikael
    Jagan and Elin Waring.
  * cov2cor(&lt;negative diagonal&gt;) and similar now give one warning
    instead of two, with better wording, fixing PR#18424 thanks to
    Mikael Jagan.
  * tools:: startDynamicHelp() now ensures port is in proper range,
    fixing PR#18645.
  * pbeta(x, a,b) is correct now for x=0 or 1 in the boundary cases
    where a or b or both are 0, fixing PR#18672 thanks to Michael
    Fay.
  * pmatch(x, table) for large table, also called for data frame row
    selection, dfrm[nm, ], is now interruptible, fixing PR#18656.
  * predict(&lt;rank-deficient lm&gt;, newdata=*) fix computing of nbasis,
    see Russ Lenth's comment 29 in PR#16158.
  * Added a work-around for a bug in macOS 14.3.1 and higher which
    prevents R plots in the Quartz Cocoa device from updating on
    screen.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1713960000">- CHANGES IN R 4.4.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Startup banners, R --version, sessionInfo() and R CMD check no
    longer report (64-bit) as part of the platform as this is almost
    universal - the increasingly rare 32-bit platforms will still
    report (32-bit).
    On Windows, ditto for window titles.
  * is.atomic(NULL) now returns FALSE, as NULL is not an atomic
    vector.  Strict back-compatibility would replace is.atomic(foo)
    by (is.null(foo) || is.atomic(foo)) but should happen only
    sparingly.
  NEW FEATURES:
  * The confint() methods for "glm" and "nls" objects have been
    copied to the stats package.  Previously, they were stubs which
    called versions in package MASS. The MASS namespace is no longer
    loaded if you invoke (say) confint(glmfit).  Further, the "glm"
    method for profile() and the plot() and pairs() methods for class
    "profile" have been copied from MASS to stats.  (profile.nls()
    and plot.profile.nls() were already in stats.)
  * The confint() and profile methods for "glm" objects have gained a
    possibility to do profiling based on the Rao Score statistic in
    addition to the default Likelihood Ratio. This is controlled by a
    new test = argument.
  * The pairs() method for "profile" objects has been extended with a
    which = argument to allow plotting only a subset of the
    parameters.
  * The "glm" method for anova() computes test statistics and
    p-values by default, using a chi-squared test or an F test
    depending on whether the dispersion is fixed or free.  Test
    statistics can be suppressed by giving argument test a false
    logical value.
  * In setRepositories() the repositories can be set using their
    names via name = instead of index ind =.
  * methods() and .S3methods() gain a all.names option for the (rare)
    case where functions starting with a . should be included.
  * Serializations can now be interrupted (e.g., by Ctrl-C on a
    Unix-alike) if they take too long, e.g., from save.image(),
    thanks to suggestions by Ivan Krylov and others on R-devel.
  * New startup option --max-connections to set the maximum number of
    simultaneous connections for the session.  Defaults to 128 as
    before: allowed values up to 4096 (but resource limits may in
    practice restrict to smaller values).
  * R on Windows (since Windows 10 2004) now uses the new Segment
    Heap allocator. This may improve performance of some
    memory-intensive applications.
  * When R packages are built, typically by R CMD build &lt;pkg&gt;, the
    new --user=&lt;build_user&gt; option overrides the (internally
    determined) user name, currently Sys.info()["user"] or LOGNAME.
    This is a (modified) fulfillment of Will Landau's suggestion in
    PR#17530.
  * tools::testInstalledBasic() gets new optional arguments outDir
    and testSrcdir, e.g., allowing to use it in a &lt;builddir&gt; !=
    &lt;srcdir&gt; setup, and in standard "binary" Windows installation
  * if* a source tests/ folder is present.
  * range(&lt;DT_with_Inf&gt;, finite = TRUE) now work for objects of class
    "Date", "POSIXct", and "POSIXlt" with infinite entries,
    analogously to range.default(), as proposed by Davis Vaughan on
    R-devel.  Other range()-methods can make use of new function
    .rangeNum().
  * New .internalGenerics object complementing .S3PrimitiveGenerics,
    for documentation and low-level book-keeping.
  * grid() now invisibly returns the x- and y- coordinates at which
    the grid-lines were drawn.
  * norm(., type) now also works for complex matrices.
  * kappa(., exact = TRUE, norm = *) now works for all norms and also
    for complex matrices.  In symmetric / triangular cases, the new
    argument uplo = "U" | "L" allows the upper or lower triangular
    part to be specified.
  * memDecompress(type = "unknown") recognizes compression in the
    default 'zlib' format as used by memCompress(type = "gzip").
  * memCompress() and memDecompress() will use the libdeflate library
    (&lt;https://github.com/ebiggers/libdeflate&gt;) if installed.  This
    uses the same type of compression for type = "gzip" but is 1.5-2x
    faster than the system libz library on some common platforms: the
    speed-up may depend on the library version.
  * diff() for objects of class "Date", "POSIXct", and "POSIXlt"
    accepts a units argument passed via ....
  * Dynamic help now does a much better job of rendering package
    DESCRIPTION metadata.
  * Rprof() gains an event argument and support for elapsed (real)
    time profiling on Unix (PR#18076).
  * filled.contour() gains a key.border argument.
  * tools::update_pkg_po() gets arguments pot_make and mo_make for
    _not_ re-making the corresponding files, and additionally a
    verbose argument.
  * Hexadecimal string colour specifications are now accepted in
    short form, so, for example, we can use "#123", which is
    equivalent to "#112233".
    Thanks to MikeFC for the original idea and Ella Kaye, Malcolm
    Barrett, George Stagg, and Hanne Oberman for the patch.
  * Plain-text help shows \var markup by angle brackets.
  * The new experimental primitive function declare() is intended to
    eventually allow information about R code to be communicated to
    the interpreter, compiler, and code analysis tools. The syntax
    for declarations is still being developed.
  * Functions psmirnov(), qsmirnov() and rsmirnov() in package stats
    have had argument two.sided renamed to alternative, to take into
    account that the permutation distributions of the one-sided
    statistics can be different in the case of ties.  Consequence of
    PR#18582.
  * sort() is now an implicit S4 generic in methods.
  * Formatting and printing, format(z), print(z), of complex vectors
    z no longer zap relatively small real or imaginary parts to zero,
    fixing PR#16752.  This is an API change, as it was documented
    previously to round real and imaginary parts together on purpose,
    producing nicer looking output.  As mentioned, e.g. in the PR,
    this change is compatible with many other "R-like" programming
    environments.
    We have simplified the internal code and now basically format the
    real and imaginary parts independently of each other.
  * New experimental functions Tailcall() and Exec() to support
    writing stack-space-efficient recursive functions.
  * Where characters are attempted to be plotted by pdf(),
    postscript() and xfig() which are not in the selected 8-bit
    character set (most often Latin-1) and the R session is using a
    UTF-8 locale, the warning messages will show the UTF-8 character
    rather than its bytes and one dot will be substituted per
    character rather than per byte.  (Platforms whose iconv() does
    transliteration silently plot the transliteration.)
    In a UTF-8 locale some transliterations are now done with a
    warning (e.g., dashes and Unicode minus to hyphen, ligatures are
    expanded, permille (‰) is replaced by o/oo), although the OS may
    have got there first.  These are warnings as they will continue
    to be replaced by dots in earlier versions of R.
  * The matrix multiplication functions crossprod() and tcrossprod()
    are now also primitive and S3 generic, as %*% had become in R
    4.3.0.
  * source() and example() have a new optional argument catch.aborts
    which allows continued evaluation of the R code after an error.
  * The non-Quartz tiff() devices allow additional types of
    compression if supported by the platform's libtiff library.
  * The list of base and recommended package names is now provided by
    tools::standard_package_names().
  * cairo_pdf() and cairo_ps() default to onefile = TRUE to closer
    match pdf() and postscript().
  * New option catch.script.errors provides a documented way to catch
    errors and then continue in non-interactive use.
  * L %||% R newly in base is an expressive idiom for the phrases
    if(!is.null(L)) L else R or if(is.null(L)) R else L.
  * The return value from warnings() now always inherits from
    "warnings" as documented, now also in the case of no warnings
    where it previously returned NULL.
  * as.complex("1i") now returns 0 + 1i instead of NA with a warning.
  * z &lt;- c(NA, 1i) now keeps the imaginary part Im(z[1]) == 0, no
    longer coercing to NA_complex_.  Similarly, cumsum(z) correctly
    sums real and imaginary parts separately, i.e., without
    "crosstalk" in case of NAs.
  * On Alpine Linux iconv() now maps "latin2", "latin-2", "latin9"
    and "latin-9" to encoding names the OS knows about
    (case-insensitively).
  * iconv(sub = "Unicode") now always zero-pads to four (hex) digits,
    rather than to 4 or 8.  (This seems to have become the convention
    once Unicode restricted the number of Unicode points to 2^21 - 1
    and so will never need more than 6 digits.)
  * NCOL(NULL) now returns 0 instead of 1, for consistency with
    cbind().
  * The information for the Euro glyph missing from the Adobe .afm
    files for the Courier, Helvetica and Times families has been
    copied from their URW equivalents - this will improve vertical
    centring in the pdf() and postscript() devices.
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.12.0.  The changes are almost entirely cosmetic.
  * The included LAPACK sources have been updated to version 3.12.0
    and some further double-complex routines added.
  * There are new font families for the 2014--5 URW 2.0 fonts (see
    ?pdf) which are included in recent versions of Ghostscript.
    These have font widths for most Greek glyphs and a few others
    which were missing from the original versions (whose font
    families remain available for reproducibility, although
    Ghostscript-based viewers will render using the 2.0 versions).
  * Improve the large-n efficiency of as.matrix(&lt;dist&gt;), thanks an R
    contributors effort, notably by Tim Taylor and Heather Turner,
    see PR#18660.
  * The default and numeric methods of all.equal() get a check.class
    option.
  * zapsmall() gets new optional arguments, function mFUN and min.d,
    for extra flexibility; fulfills a wish in PR#18199.  Also, it is
    now an implicit S4 generic in package methods.
  * The Rd filter for aspell() gains an ignore argument.
  * New generic function sort_by(), primarily useful for the
    data.frame method which can be used to sort rows of a data frame
    by one or more columns.
  * The icence headers for the RPC code in src/extra/xdr have been
    updated to use the GPL-compatible licence published by Oracle
    America in 2010.
  * New function pkg2HTML() in tools to create single-page HTML
    reference manuals for R packages.
  * The byte code evaluator now uses less C stack space for recursive
    calls to byte-compiled functions. It also makes more of an effort
    to avoid allocations for scalar return values.
  * New completion option backtick (disabled by default) allows
    non-syntactic completions to be wrapped in backquotes. This is
    currently only useful for Jupyter notebooks via the IRkernel
    package, and may cause problems for other backends.
  INSTALLATION:
  * The parser has been updated to work with bison 3.8.2, which is
    now used for the pre-generated parsers in gram.c, file.c, and
    gramRd.c. A few parser error messages have changed, which may
    affect code that relies on exact messages.
  INSTALLATION on a UNIX-ALIKE:
  * System valgrind headers are now required to use configure option
  - -with-valgrind-instrumentation with value 1 or 2.
  * configure will warn if it encounters a 32-bit build, as that is
    nowadays almost untested.
  * Environment variable R_SYSTEM_ABI is no longer used and so no
    longer recorded in etc/Renviron (it was not on Windows and was
    only ever used when preparing package tools).
  * If the libdeflate library and headers are available, libdeflate
    rather than libz is used to (de)compress R objects in lazy-load
    databases.  Typically tasks spend up to 5% of their time on such
    operations, although creating lazy-data databases is one of the
    exceptions.
    This can be suppressed if the library is available by the
    configure option --without-libdeflate-compression.
  * configure option --enable-lto=check has not worked reliably since
    2019 and has been removed.
  * The minimum autoconf requirement for a maintainer build has been
    increased to autoconf 2.71.
    It is intended to increase this to 2.72 for R 4.5.0: the
    distributed configure file was generated using 2.72.
  * The minimum version requirement for an external LAPACK has been
    reduced to 3.9.0.
  * No default C++ compiler is set if no C++17 compiler is detected:
    there is no longer an automatic fallback to C++14 or C++11.
    Compilers from the last five years should have sufficient
    support: for others macros CXX and CXXSTD can be set in file
    config.site to provide a fallback if needed.
    The Objective-C++ compiler now by default uses the standard
    selected by R for C++ (currently C++17) rather than the default
    standard for the C++ compiler (which on macOS is still C++98).
  INSTALLATION on macOS:
  * A new configure option --with-newAccelerate makes use of Apple's
    'new' BLAS / LAPACK interfaces in their Accelerate framework.
    Those interfaces are only available in macOS 13.3 or later, and
    building requires SDK 13.3 or later (from the Command Line Tools
    or Xcode 14.3 or later).
    By default the option uses new Accelerate for BLAS calls: to also
    use it for LAPACK use option --with-newAccelerate=lapack.  The
    later interfaces provide LAPACK 3.9.1 rather than 3.2.1: 3.9.1 is
    from 2021-04 and does not include the improved algorithms
    introduced in LAPACK 3.10.0 (including for BLAS calls).
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools44, an update of the Rtools43 toolchain.  It is
    based on GCC 13 and newer versions of MinGW-W64, binutils and
    libraries (targeting 64-bit Intel CPUs).  R-devel can no longer
    be built using Rtools43 without changes.
  * Rtools44 has experimental support for 64-bit ARM (aarch64) CPUs
    _via_ the LLVM 17 toolchain using lld, clang/flang-new and
    libc++.
  UTILITIES:
  * R CMD check notes when S4-style exports are used without
    declaring a strong dependence on package methods.
  * tools::checkRd() (used by R CMD check) detects more problems with
    \Sexpr-based dynamic content, including bad nesting of \Sexprs
    and invalid arguments.
  * tools::checkRd() now reports Rd titles and section names ending
    in a period; this is ignored by R CMD check unless environment
    variable _R_CHECK_RD_CHECKRD_MINLEVEL_ is set to -5 or smaller.
  * R CMD check now notes Rd files without an \alias, as long
    documented in 'Writing R Extensions' §1.3.1.  The check for a
    missing \description has been moved from tools::checkRd() to
    tools::checkRdContents().
  * R CMD check now visits inst/NEWS.Rd and OS-specific man
    subdirectories when checking Rd files.
  * tools::checkDocFiles() and tools::checkRdContents() now also
    check internal Rd files by default, but "specially" (ignoring
    missing documentation of arguments).
  * R CMD Rdiff gets option --useEx.
  * R CMD check now warns on non-portable uses of Fortran KIND such
    as INTEGER(KIND=4) and REAL(KIND=8).
    To see the failing lines set environment variable
    _R_CHECK_FORTRAN_KIND_DETAILS_ to a true value.
  * When checking Rd files, R CMD check now notes some of the "lost
    braces" that tools::checkRd() finds.  Typical problems are Rd
    macros missing the initial backslash (e.g., code{...}), in-text
    set notation (e.g., {1, 2}, where the braces need escaping), and
    \itemize lists with \describe-style entries of the form
    \item{label}{description}.
  * R CMD INSTALL (and hence check) will compile C++ code with
  - DR_NO_REMAP if environment variable _R_CXX_USE_NO_REMAP_ is set
    to a true value.  It is planned that this will in future become
    the default for compiling C++.
  * The new built-in Rd macro \dontdiff{} can be used to mark example
    code whose output should be ignored when comparing check output
    to reference output (tests/Examples/&lt;pkg&gt;-Ex.Rout.save).  The
    \dontdiff tag, like \donttest, is _not_ shown on the rendered
    help page, so provides a clean alternative to ##
    IGNORE_RDIFF_(BEGIN|END) comments.
  * R CMD build when there is no NAMESPACE, now uses the recommended
    exportPattern("^[^.]"), instead of exporting everything.
  * R CMD check now warns about non-ASCII characters in the NAMESPACE
    file (in addition to R files). Such packages are not portable and
    may fail to install on some platforms.
  C-LEVEL FACILITIES:
  * Headers R_ext/Applic.h and R-ext/Linpack.h used to include
    R_ext/BLAS.h although this was undocumented and unneeded by their
    documented entry points.  They no longer do so.
  * New function R_missing(), factored out from do_missing(), used to
    fix PR#18579.
  * SEXP type S4SXP has been renamed to OBJSXP to support
    experimenting with alternative object systems.  The S4SXP value
    can still be used in C code but is now deprecated.  Based on
    contributions from the R Consortium's Object-Oriented Programming
    Working Group.
  * New function pow1p(x,y) for accurate (1+x)^y.
  * mkCharLenCE was incorrectly documented to take a size_t length
    but was implemented with int (and character strings in R are
    limited to 2^31 - 1 bytes).
  DEPRECATED AND DEFUNCT:
  * data() no longer handles zipped data from long-defunct (since R
    2.13.0) --use-zip-data installations.
  * The legacy graphics devices pictex() and xfig() are now
    deprecated.  They do not support recent graphics enhancements and
    their font handling is rudimentary. The intention is to retain
    them for historical interest as long as they remain somewhat
    functional.
  * Support for encoding = "MacRoman" has been removed from the pdf()
    and postscript() devices - this was a legacy encoding supporting
    classic macOS up to 2001 and no longer has universal libiconv
    support.
  * is.R() is deprecated as no other S dialect is known to be in use
    (and this could only identify historical dialects, not future
    ones).
    Further information on calls can be obtained by setting the
    environment variable _R_DEPRECATED_IS_R_ to error which turns the
    deprecation warning into an error and so by default gives a
    traceback.  (This is done by R CMD check --as-cran.)
  * UseMethod() no longer forwards local variables assigned in the
    generic function into method call environments before evaluating
    the method body. This makes method calls behave more like
    standard function calls and makes method code easier to analyze
    correctly.
  * The twelve as.data.frame.&lt;class&gt;() methods which were deprecated
    only via _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ and in R CMD
    check --as-cran are formally deprecated now in favour of calling
    as.data.frame() or as.data.frame.vector().  The deprecation
    "check" now works also when as.data.frame() is S4 generic thanks
    to Ivan Krylov.
  * The default method for the directional comparison operators &lt;, &gt;,
    &lt;=, and &gt;= now signals an error when one of the operands is a
    language object, i.e. a symbol or a call.
  * For terms.formula(), deprecate abb and neg.out arguments
    _formally_ in addition to just documenting it.
  BUG FIXES:
  * The methods package is more robust to not being attached to the
    search path.  More work needs to be done.
  * pairwise.t.test() misbehaved when subgroups had 0 DF for
    variance, even with pool.sd = TRUE.  (PR#18594 by Jack Berry).
  * Probability distribution functions [dpq]&lt;distrib&gt;(x, *), but also
    bessel[IKJY](x, .) now consistently preserve attributes(x) when
    length(x) == 0, e.g., for a 2 x 0 matrix, thanks to Karolis
    Koncevičius' report PR#18509.
  * Group "Summary" computations such as sum(1:3, 4, na.rm = 5, NA,
    7, na.rm = LL) now give an error instead of either 17 or NN for
    LL true or false, as proposed by Ivan Krylov on the R-devel
    mailing list.  (This also means it is now an error to specify
    na.rm more than once.)
  * as.complex(x) now returns complex(real = x, imaginary = 0) for
    _all_ numerical and logical x, notably also for NA or
    NA_integer_.
  * Directories are now omitted by file.copy(, recursive = FALSE) and
    in file.append() (PR#17337).
  * gsub() and sub() are now more robust to integer overflow when
    reporting errors caused by too large input strings (PR#18346).
  * Top-level handlers are now more robust to attempts to remove a
    handler whilst handlers are running (PR#18508).
  * The handling of Alt+F4 in dialogs created on Windows using
    GraphApp has been fixed (PR#13870).
  * density() more consistently computes grid values for the
    FFT-based convolution, following Robert Schlicht's analysis and
    proposal in PR#18337, correcting density values typically by a
    factor of about 0.999.  Argument old.coords = TRUE provides back
    compatibility.
  * palette.colors() gains a name argument that defaults to FALSE
    controlling whether the vector of colours that is returned has
    names (where possible).  PR#18529.
  * tools::xgettext() no longer extracts the (non-translatable) class
    names from warningCondition and errorCondition calls.
  * S3method(&lt;gen&gt;, &lt;class&gt;, &lt;func&gt;) in the NAMESPACE file now works
    (again) when &lt;func&gt; is visible from the namespace, e.g.,
    imported, or in base.
  * getParseData(f) now also works for a function defined in the
    first of several &lt;pkg&gt;/R/*.R source files, thanks to Kirill
    Müller's report and Duncan Murdoch's patch in PR#16756.
  * Rd \Sexpr macros with nested #ifdef conditionals were not
    processed.
  * A non-blocking connection with non-default encoding (such as a
    socket) now correctly returns from readLines() after new data has
    arrived also when its EOF had been reached previously.  Thanks to
    Peter Meilstrup's report on R-devel and Ivan Krylov's report and
    patch proposal in PR#18555.
  * tools::checkRdContents() failed to detect empty argument
    descriptions when they spanned multiple lines, including those
    generated by prompt().  These cases are now noted by R CMD check.
  * Plain-text help no longer outputs spurious colons in the
    arguments list (for multi-line \item labels in the Rd source).
  * kappa() and rcond() work correctly in more cases; kappa(., norm =
    "2") now warns that it computes the 1-norm with (default) exact =
    FALSE; prompted by Mikael Jagan's quite comprehensive PR#18543.
  * Rd skeletons generated by prompt() or promptData() now use a
    dummy title (so R CMD build works).  tools::checkRdContents() has
    been updated to detect such template leftovers, including from
    promptPackage().
  * When S4 method dispatch fails because no method was found, the
    error message now includes the signature argument names; thanks
    to Michael Chirico's proposal on the R-devel list.
  * withAutoprint({ .. }) now preserves srcrefs previously lost,
    thanks to Andrew Simmons' report plus fix in PR#18572.
  * transform.data.frame() no longer adjusts names; in particular,
    untransformed variables are kept as-is, including those with
    syntactically invalid names (PR#17890).
  * The keep.source option for Rd \Sexpr blocks is no longer ignored.
  * The formula methods for t.test() and wilcox.test() now catch when
    paired is passed, addressing PR#14359; use Pair(x1, x2) ~ 1 for a
    paired test.
  * The level reported in the browser prompt was often too large. It
    now shows the number of browser contexts on the stack.
  * For cbind() and rbind(), the optional deparse.level argument is
    now properly passed to methods, thanks to Mikael Jagan's PR#18579
    and comments there.
  * Some error and warning messages for large ('long vector')
    matrix(v, nr, nc) and dim(m) &lt;- d are now correct about sizes,
    using long long formatting, fixing PR#18612 (and more) reported
    by Mikael Jagan.
  * readChar(useBytes = TRUE) now terminates strings even when the
    underlying connection uses extra spaces in the input buffer.
    This fixes problems with extra garbage seen with gzip
    connections, PR#18605.
  * Named capture in PCRE regular expressions now works also with
    more than 127 named groups (PR#18588).
  * Datetime functions are now robust against long jumps when dealing
    with internal time zone changes.  This avoids confusing warnings
    about an invalid time zone, previously triggered by turning
    warnings into errors or handling them via tryCatch (PR#17966,
    PR#17780).
  * Datetime functions now restore even an empty TZ environment
    variable after internal time zone changes (PR#17724).  This makes
    results of datetime functions with this (typically unintentional)
    setting more predictable.
  * drop.terms(*) now drops response as by default, keep.response =
    FALSE, fixing PR#18564 thanks to Mikael Jagan.
  * dummy.coef(.) now also works for lm()-models with character
    categorical predictor variables rather than factor ones, fixing
    PR#18635 reported by Jinsong Zhao.
  * formals(f) &lt;- formals(f) now also works for a function w/o
    arguments and atomic _constant_ body(f).
  * Correct as.function(&lt;invalid list&gt;, .)'s error message.
  * removeSource() is yet more thorough in finding and removing
    "srcref" and the other source references from parsed R language
    chunks, fixing PR#18638 thanks to Andrew Simmons.
  * dgeom() is more accurate now, notably when its result is very
    small, fixing PR#18642 thanks to the proposal of Morten Welinder,
    also improving other instances where C level binom_raw(x, n, ..)
    has x == 0 or x== n.
  * warning() with options(warn = 1) has improved output for
    multi-line messages.
  * axis.Date() and axis.POSIXct() now respect the par("lab") setting
    for the number of pretty() intervals.
  * Comparisons for language objects (which are based on deparsing)
    are now more careful about using accurate deparsed results
    (PR#18676).
  * Plain-text help (Rd2txt) now correctly preserves blank lines
    following single-line \dontrun code.
  * &lt;POSIXlt&gt;[*] no longer sets wrong "balanced" attribute, fixing
    PR#18681 thanks to Mikael Jagan.
  * str(&lt;classed-call&gt;) now deparses the call as expected, fixing
    PR#18684, reported by Dave Slager.
  * In Rd examples, code following the closing brace of a \dontrun,
    \dontshow or \donttest tag on the same line is no longer skipped
    when R CMD check runs the examples.
  * as.data.frame(matrix(*, ncol=0)) now gets valid names() and
    colnames(); reported by Davis Vaughan on the R-devel list.
  * Internal Mathlib function stirlerr(n) is now almost fully
    (52-bit) accurate for all n &gt;= ~5.9 and more accurate also in the
    range 1 -- 5.9.  This entails small ("after 12th decimal")
    changes in density functions, e.g., dgamma() in _some_ regions of
    their support.  The fix was partly prompted by Morten Welinder's
    PR#18640.
  * Numbers like 9876543.2 are now considered non-integer by Mathlib
    internal R_nonint(), amending original fix of PR#15734.
  * Rd comment lines no longer cause broken paragraphs in the
    rendered PDF and plain-text help. In code blocks, pure comment
    lines (starting with %) no longer produce an empty line.
  * xtabs(Freq ~ .) now consistently defaults to na.action = na.pass,
    using na.rm = FALSE (added as an argument) when summing over Freq
    (PR#17770).
  * tools::testInstalledPackage() is no longer silent about failures
    from running examples or tests and its return code no longer
    ignores failures from checking vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1718366400">- CHANGES IN R 4.4.1:
  C-LEVEL FACILITIES:
  * Functions R_atof and R_strtod declared in header R_ext/Utils.h
    are now documented in 'Writing R Extensions' and so formally part
    of the API.
  * The non-API entry points Rf_setSVector, Rf_StringFalse,
    Rf_StringTrue and Rf_isBlankString have been added to those
    reported by R CMD check.
  * The new function Rf_allocLang is now available. This provides an
    alternative to the idiom of calling Rf_allocList followed by
    SET_TYPEOF.
  UTILITIES:
  * R CMD check now reports as warnings what gfortran calls 'Fortran
    2018 deleted features', all of which have long been marked as
    'obsolescent' and some of which were deleted in Fortran 2008 or
    earlier.  Fortran compilers are no longer required to support
    these.
  BUG FIXES:
  * as.numeric(), scan(), type.convert() and other places which use
    the internal C function R_strtod now require a _non-empty_ digit
    sequence in a decimal or binary exponent.  This aligns with the
    C/POSIX standard for strtod and with ?NumericConstants.
  * as.data.frame(m, make.names=NA) now works correctly for a matrix
    m with NA's in row names.
  * The error message from &lt;POSIXlt&gt;[["hour"]] and similar now
    mentions *[[, "hour"]], as wished for in PR#17409 and proposed by
    Michael Chirico.
  * qbinom() and potentially qpois(), qnbinom(), no longer sometimes
    fail accurate inversion (of pbinom(), etc), thanks to Christopher
    Chang's report and patch in PR#18711.
  * The internal help server on Windows can again serve requests sent
    in quick succession, fixing a regression in R 4.4.0.
  * debugcall(&lt;S3Generic&gt;()) now also works when a corresponding
    S4-generic version is in the methods cache (PR#18143).
  * Package tools' toTitleCase(ch0) now returns character(0) when ch0
    is of zero length; fixing PR#18724, reported by David Hugh Jones.
  * R CMD check is no longer broken (without a check result and no
    explanation in 00check.log) for a package which declares an
    invalid VignetteBuilder in DESCRIPTION but has no vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1730376000">- CHANGES IN R 4.4.2:
  C-LEVEL FACILITIES:
  * The S-compatibility macros F77_COM and F77_COMDECL defined in
    header R_ext/RS.h are deprecated and will be removed shortly.  We
    could find no record of their use.
  BUG FIXES:
  * Mathlib function lgammacor(x) no longer warns about underflow to
    zero for large x.
  * Text widths and heights were incorrectly reported by the Quartz
    device if the drawing context didn't exist yet (typically when
    drawing off-screen to a window that is yet to appear, see
    PR#18591).
  * The Quartz device could segfault in cases where paths with spaces
    are used in the new glyph drawing API.  Thanks to Tomek
    Gieorgijewski (PR#18758).
  * On macOS in R CRAN builds, it is again possible to read
    little-endian UTF-16 text with a BOM from a connection using
    encoding="UTF-16".  Users building R from source should avoid
    using the system libiconv in macOS 14.1 and later.
  * methods' internal .requirePackage() now re-enables primitive
    method dispatch when needed; thanks to Ivan Krylov for
    demystifying CRAN package check failures on the R-devel mailing
    list.</changelog>
</package>
<package pkgid="82d7a9e416f607181ea493ea838bf1d8936329807fe6bbbd6165d1337294a959f1df1635be917615d788ad9a7ee8f7e6143c1418a0cc8865678d397133268bb0" name="R-cluster-debuginfo" arch="i586">
  <version epoch="0" ver="2.1.6" rel="51.0.2.2.sr20241103"/>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1620302400">- To get in sync with d:l:R:autoCRAN the Matrix package's split
  in -devel was reversed.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339200">- improved spec file according to comments of dimstar in
  https://build.opensuse.org/request/show/892685</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339201">- CHANGES IN R 4.1.0:
  FUTURE DIRECTIONS:
  * It is planned that the 4.1.x series will be the last to support
    32-bit Windows, with production of binary packages for that
    series continuing until early 2023.
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Data set esoph in package datasets now provides the correct
    numbers of controls; previously it had the numbers of cases added
    to these.  (Reported by Alexander Fowler in PR#17964.)
  NEW FEATURES:
  * www.omegahat.net is no longer one of the repositories known by
    default to setRepositories().  (Nowadays it only provides source
    packages and is often unavailable.)
  * Function package_dependencies() (in package tools) can now use
    different dependency types for direct and recursive dependencies.
  * The checking of the size of tarball in R CMD check --as-cran
    &lt;pkg&gt; may be tweaked via the new environment variable
    _R_CHECK_CRAN_INCOMING_TARBALL_THRESHOLD_, as suggested in
    PR#17777 by Jan Gorecki.
  * Using c() to combine a factor with other factors now gives a
    factor, an ordered factor when combining ordered factors with
    identical levels.
  * apply() gains a simplify argument to allow disabling of
    simplification of results.
  * The format() method for class "ftable" gets a new option justify.
    (Suggested by Thomas Soeiro.)
  * New ...names() utility.  (Proposed by Neal Fultz in PR#17705.)
  * type.convert() now warns when its as.is argument is not
    specified, as the help file always said it _should_.  In that
    case, the default is changed to TRUE in line with its change in
    read.table() (related to stringsAsFactor) in R 4.0.0.
  * When printing list arrays, classed objects are now shown _via_
    their format() value if this is a short enough character string,
    or by giving the first elements of their class vector and their
    length.
  * capabilities() gets new entry "Rprof" which is TRUE when R has
    been configured with the equivalent of --enable-R-profiling (as
    it is by default).  (Related to Michael Orlitzky's report
    PR#17836.)
  * str(xS4) now also shows extraneous attributes of an S4 object
    xS4.
  * Rudimentary support for vi-style tags in rtags() and R CMD rtags
    has been added.  (Based on a patch from Neal Fultz in PR#17214.)
  * checkRdContents() is now exported from tools; it and also
    checkDocFiles() have a new option chkInternal allowing to check
    Rd files marked with keyword "internal" as well.  The latter can
    be activated for R CMD check via environment variable
    _R_CHECK_RD_INTERNAL_TOO_.
  * New functions numToBits() and numToInts() extend the raw
    conversion utilities to (double precision) numeric.
  * Functions URLencode() and URLdecode() in package utils now work
    on vectors of URIs.  (Based on patch from Bob Rudis submitted
    with PR#17873.)
  * path.expand() can expand ~user on most Unix-alikes even when
    readline is not in use.  It tries harder to expand ~, for example
    should environment variable HOME be unset.
  * For HTML help (both dynamic and static), Rd file links to help
    pages in external packages are now treated as references to
    topics rather than file names, and fall back to a file link only
    if the topic is not found in the target package. The earlier rule
    which prioritized file names over topics can be restored by
    setting the environment variable _R_HELP_LINKS_TO_TOPICS_ to a
    false value.
  * c() now removes NULL arguments before dispatching to methods,
    thus simplifying the implementation of c() methods, _but_ for
    back compatibility keeps NULL when it is the first argument.
    (From a report and patch proposal by Lionel Henry in PR#17900.)
  * Vectorize()'s result function's environment no longer keeps
    unneeded objects.
  * Function ...elt() now propagates visibility consistently with
    ..n.  (Thanks to Lionel Henry's PR#17905.)
  * capture.output() no longer uses non-standard evaluation to
    evaluate its arguments.  This makes evaluation of functions like
    parent.frame() more consistent.  (Thanks to Lionel Henry's
    PR#17907.)
  * packBits(bits, type="double") now works as inverse of
    numToBits().  (Thanks to Bill Dunlap's proposal in PR#17914.)
  * curlGetHeaders() has two new arguments, timeout to specify the
    timeout for that call (overriding getOption("timeout")) and TLS
    to specify the minimum TLS protocol version to be used for
    https:// URIs (_inter alia_ providing a means to check for sites
    using deprecated TLS versions 1.0 and 1.1).
  * For nls(), an optional constant scaleOffset may be added to the
    denominator of the relative offset convergence test for cases
    where the fit of a model is expected to be exact, thanks to a
    proposal by John Nash.  nls(*, trace=TRUE) now also shows the
    convergence criterion.
  * Numeric differentiation _via_ numericDeriv() gets new optional
    arguments eps and central, the latter for taking central divided
    differences.  The latter can be activated for nls() via
    nls.control(nDcentral = TRUE).
  * nls() now passes the trace and control arguments to getInitial(),
    notably for all self-starting models, so these can also be fit in
    zero-noise situations via a scaleOffset.  For this reason, the
    initial function of a selfStart model must now have ... in its
    argument list.
  * bquote(splice = TRUE) can now splice expression vectors with
    attributes: this makes it possible to splice the result of
    parse(keep.source = TRUE).  (Report and patch provided by Lionel
    Henry in PR#17869.)
  * textConnection() gets an optional name argument.
  * get(), exists(), and get0() now signal an error if the first
    argument has length greater than 1.  Previously additional
    elements were silently ignored.  (Suggested by Antoine Fabri on
    R-devel.)
  * R now provides a shorthand notation for creating functions, e.g.
    \(x) x + 1 is parsed as function(x) x + 1.
  * R now provides a simple native forward pipe syntax |&gt;.  The
    simple form of the forward pipe inserts the left-hand side as the
    first argument in the right-hand side call.  The pipe
    implementation as a syntax transformation was motivated by
    suggestions from Jim Hester and Lionel Henry.
  * all.equal(f, g) for functions now by default also compares their
    environment(.)s, notably via new all.equal method for class
    function.  Comparison of nls() fits, e.g., may now need
    all.equal(m1, m2, check.environment = FALSE).
  * .libPaths() gets a new option include.site, allowing to _not_
    include the site library.  (Thanks to Dario Strbenac's suggestion
    and Gabe Becker's PR#18016.)
  * Lithuanian translations are now available.  (Thanks to Rimantas
    Zakauskas.)
  * names() now works for DOTSXP objects.  On the other hand, in
    R-lang, the R language manual, we now warn against relying on the
    structure or even existence of such dot-dot-dot objects.
  * all.equal() no longer gives an error on DOTSXP objects.
  * capabilities("cairo") now applies only to the file-based devices
    as it is now possible (if very unusual) to build R with Cairo
    support for those but not for X11().
  * There is optional support for tracing the progress of
    loadNamespace() - see its help.
  * (Not Windows.)  l10n_info() reports an additional element, the
    name of the encoding as reported by the OS (which may differ from
    the encoding part (if any) of the result from
    Sys.getlocale("LC_CTYPE").
  * New function gregexec() which generalizes regexec() to find _all_
    disjoint matches and well as all substrings corresponding to
    parenthesized subexpressions of the given regular expression.
    (Contributed by Brodie Gaslam.)
  * New function charClass() in package utils to query the
    wide-character classification functions in use (such as
    iswprint).
  * The names of quantile()'s result no longer depend on the global
    getOption("digits"), but quantile() gets a new optional argument
    digits = 7 instead.
  * grep(), sub(), regexp and variants work considerably faster for
    long factors with few levels.  (Thanks to Michael Chirico's
    PR#18063.)
  * Provide grouping of x11() graphics windows within a window
    manager such as Gnome or Unity; thanks to a patch by Ivan Krylov
    posted to R-devel.
  * The split() method for class data.frame now allows the f argument
    to be specified as a formula.
  * sprintf now warns on arguments unused by the format string.
  * New palettes "Rocket" and "Mako" for hcl.colors() (approximating
    palettes of the same name from the 'viridisLite' package).
    Contributed by Achim Zeileis.
  * The base environment and its namespace are now locked (so one can
    no longer add bindings to these or remove from these).
  * Rterm handling of multi-byte characters has been improved,
    allowing use of such characters when supported by the current
    locale.
  * Rterm now accepts ALT+ +xxxxxxxx sequences to enter Unicode
    characters as hex digits.
  * Environment variable LC_ALL on Windows now takes precedence over
    LC_CTYPE and variables for other supported categories, matching
    the POSIX behaviour.
  * duplicated() and anyDuplicated() are now optimized for integer
    and real vectors that are known to be sorted via the ALTREP
    framework. Contributed by Gabriel Becker via PR#17993.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 14
    and so packages that provide graphics devices should be
    reinstalled.
  * Graphics devices should now specify deviceVersion to indicate
    what version of the graphics engine they support.
  * Graphics devices can now specify deviceClip.  If TRUE, the
    graphics engine will never perform any clipping of output itself.
    The clipping that the graphics engine does perform (for both
    canClip = TRUE and canClip = FALSE) has been improved to avoid
    producing unnecessary artifacts in clipped output.
  * The grid package now allows gpar(fill) to be a linearGradient(),
    a radialGradient(), or a pattern().  The viewport(clip) can now
    also be a grob, which defines a clipping path, and there is a new
    viewport(mask) that can also be a grob, which defines a mask.
    These new features are only supported so far on the Cairo-based
    graphics devices and on the pdf() device.
  * (Not Windows.)  A warning is given when a Cairo-based type is
    specified for a png(), jpeg(), tiff() or bmp() device but Cairo
    is unsupported (so type = "Xlib" is tried instead).
  * grSoftVersion() now reports the versions of FreeType and
    FontConfig if they are used directly (not _via_ Pango), as is
    most commonly done on macOS.
  C-LEVEL FACILITIES:
  * The _standalone_ libRmath math library and R's C API now provide
    log1pexp() again as documented, and gain log1mexp().
  INSTALLATION on a UNIX-ALIKE:
  * configure checks for a program pkgconf if program pkg-config is
    not found.  These are now only looked for on the path (like
    almost all other programs) so if needed specify a full path to
    the command in PKG_CONFIG, for example in file config.site.
  * C99 function iswblank is required - it was last seen missing ca
    2003 so the workaround has been removed.
  * There are new configure options --with-internal-iswxxxxx,
  - -with-internal-towlower and --with-internal-wcwidth which allows
    the system functions for wide-character classification,
    case-switching and width (wcwidth and wcswidth) to be replaced by
    internal ones.  The first has long been used on macOS, AIX (and
    Windows) but this enables it to be unselected there and selected
    for other platforms (it is the new default on Solaris).  The
    second is new in this version of R and is selected by default on
    macOS and Solaris.  The third has long been the default and
    remains so as it contains customizations for East Asian
    languages.
    System versions of these functions are often minimally
    implemented (sometimes only for ASCII characters) and may not
    cover the full range of Unicode points: for example Solaris (and
    Windows) only cover the Basic Multilingual Plane.
  * Cairo installations without X11 are more likely to be detected by
    configure, when the file-based Cairo graphics devices will be
    available but not X11(type = "cairo").
  * There is a new configure option --with-static-cairo which is the
    default on macOS.  This should be used when only static cairo
    (and where relevant, Pango) libraries are available.
  * Cairo-based graphics devices on platforms without Pango but with
    FreeType/FontConfig will make use of the latter for font
    selection.
  LINK-TIME OPTIMIZATION on a UNIX-ALIKE:
  * Configuring with flag --enable-lto=R now also uses LTO when
    installing the recommended packages.
  * R CMD INSTALL and R CMD SHLIB have a new flag --use-LTO to use
    LTO when compiling code, for use with R configured with
  - -enable-lto=R.  For R configured with --enable-lto, they have
    the new flag --no-use-LTO.
    Packages can opt in or out of LTO compilation _via_ a UseLTO
    field in the DESCRIPTION file.  (As usual this can be overridden
    by the command-line flags.)
  BUILDING R on Windows:
  * for GCC &gt;= 8, FC_LEN_T is defined in config.h and hence character
    lengths are passed from C to Fortran in _inter alia_ BLAS and
    LAPACK calls.
  * There is a new text file src/gnuwin32/README.compilation, which
    outlines how C/Fortran code compilation is organized and
    documents new features:
  * R can be built with Link-Time Optimization with a suitable
    compiler - doing so with GCC 9.2 showed several
    inconsistencies which have been corrected.
  * There is support for cross-compiling the C and Fortran code
    in R and standard packages on suitable (Linux) platforms.
    This is mainly intended to allow developers to test later
    versions of compilers - for example using GCC 9.2 or 10.x has
    detected issues that GCC 8.3 in Rtools40 does not.
  * There is experimental support for cross-building R packages
    with C, C++ and/or Fortran code.
  * The R installer can now be optionally built to support a single
    architecture (only 64-bit or only 32-bit).
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++14 where
    available (which it is on all currently checked platforms): if
    not (as before) C++11 is used if available otherwise C++ is not
    supported.
    Packages which specify C++11 will still be installed using C++11.
    C++14 compilers may give deprecation warnings, most often for
    std::random_shuffle (deprecated in C++14 and removed in C++17).
    Either specify C++11 (see 'Writing R Extensions') or modernize
    the code and if needed specify C++14.  The latter has been
    supported since R 3.4.0 so the package's DESCRIPTION would need
    to include something like
    Depends: R (&gt;= 3.4)
  PACKAGE INSTALLATION on Windows:
  * R CMD INSTALL and R CMD SHLIB make use of their flag --use-LTO
    when the LTO_OPT make macro is set in file etc/${R_ARCH}/Makeconf
    or in a personal/site Makevars file.  (For details see 'Writing R
    Extensions' SS4.5.)
    This provides a valuable check on code consistency.  It does work
    with GCC 8.3 as in Rtools40, but that does not detect everything
    the CRAN checks with current GCC do.
  PACKAGE INSTALLATION on macOS:
  * The default personal library directory on builds with
  - -enable-aqua (including CRAN builds) now differs by CPU type,
    one of
    ~/Library/R/x86_64/x.y/library
    ~/Library/R/arm64/x.y/library
    This uses the CPU type R (and hence the packages) were built for,
    so when a x86_64 build of R is run under Rosetta emulation on an
    arm64 Mac, the first is used.
  UTILITIES:
  * R CMD check can now scan package functions for bogus return
    statements, which were possibly intended as return() calls (wish
    of PR#17180, patch by Sebastian Meyer). This check can be
    activated via the new environment variable
    _R_CHECK_BOGUS_RETURN_, true for --as-cran.
  * R CMD build omits tarballs and binaries of previous builds from
    the top-level package directory.  (PR#17828, patch by Sebastian
    Meyer.)
  * R CMD check now runs sanity checks on the use of LazyData, for
    example that a data directory is present and that
    LazyDataCompression is not specified without LazyData and has a
    documented value.  For packages with large LazyData databases
    without specifying LazyDataCompression, there is a reference to
    the code given in 'Writing R Extensions' SS1.1.6 to test the
    choice of compression (as in all the CRAN packages tested a
    non-default method was preferred).
  * R CMD build removes LazyData and LazyDataCompression fields from
    the DESCRIPTION file of packages without a data directory.
  ENCODING-RELATED CHANGES:
  * The parser now treats \Unnnnnnnn escapes larger than the upper
    limit for Unicode points (\U10FFFF) as an error as they cannot be
    represented by valid UTF-8.
    Where such escapes are used for outputting non-printable
    (including unassigned) characters, 6 hex digits are used (rather
    than 8 with leading zeros).  For clarity, braces are used, for
    example \U{0effff}.
  * The parser now looks for non-ASCII spaces on Solaris (as
    previously on most other OSes).
  * There are warnings (including from the parser) on the use of
    unpaired surrogate Unicode points such as \uD834.  (These cannot
    be converted to valid UTF-8.)
  * Functions nchar(), tolower(), toupper() and chartr() and those
    using regular expressions have more support for inputs with a
    marked Latin-1 encoding.
  * The character-classification functions used (by default) to
    replace the system iswxxxxx functions on Windows, macOS and AIX
    have been updated to Unicode 13.0.0.
    The character-width tables have been updated to include new
    assignments in Unicode 13.0.0.
  * The code for evaluating default (extended) regular expressions
    now uses the same character-classification functions as the rest
    of R (previously they differed on Windows, macOS and AIX).
  * There is a build-time option to replace the system's
    wide-character wctrans C function by tables shipped with R: use
    configure option --with-internal-towlower or (on Windows)
  - DUSE_RI18N_CASE in CFLAGS when building R.  This may be needed
    to allow tolower() and toupper() to work with Unicode characters
    beyond the Basic Multilingual Plane where not supported by system
    functions (e.g. on Solaris where it is the new default).
  * R is more careful when truncating UTF-8 and other multi-byte
    strings that are too long to be printed, passed to the system or
    libraries or placed into an internal buffer.  Truncation will no
    longer produce incomplete multibyte characters.
  DEPRECATED AND DEFUNCT:
  * Function plclust() from the package stats and
    package.dependencies(), pkgDepends(), getDepList(),
    installFoundDepends(), and vignetteDepends() from package tools
    are defunct.
  * Defunct functions checkNEWS() and readNEWS() from package tools
    and CRAN.packages() from utils have been removed.
  * R CMD config CXXCPP is defunct (it was deprecated in R 3.6.2).
  * parallel::detectCores() drops support for Irix (retired in 2013).
  * The LINPACK argument to chol.default(), chol2inv(),
    solve.default() and svd() has been defunct since R 3.1.0.  It was
    silently ignored up to R 4.0.3 but now gives an error.
  * Subsetting/indexing, such as ddd[*] or ddd$x on a DOTSXP
    (dot-dot-dot) object ddd has been disabled; it worked by accident
    only and was undocumented.
  BUG FIXES:
  * Many more C-level allocations (mainly by malloc and strdup) are
    checked for success with suitable alternative actions.
  * Bug fix for replayPlot(); this was turning off graphics engine
    display list recording if a recorded plot was replayed in the
    same session.  The impact of the bug became visible if resize the
    device after replay OR if attempted another savePlot() after
    replay (empty display list means empty screen on resize or empty
    saved plot).
  * R CMD check etc now warn when a package exports non-existing S4
    classes or methods, also in case of no "methods" presence.
    (Reported by Alex Bertram; reproducible example and patch by
    Sebastian Meyer in PR#16662.)
  * boxplot() now also accepts calls for labels such as ylab, the
    same as plot().  (Reported by Marius Hofert.)
  * The help page for xtabs() now correctly states that addNA is
    setting na.action = na.pass among others.  (Reported as PR#17770
    by Thomas Soeiro.)
  * The R CMD check &lt;pkg&gt; gives a longer and more comprehensible
    message when DESCRIPTION misses dependencies, e.g., in Imports:.
    (Thanks to the contributors of PR#17179.)
  * update.default() now calls the generic update() on the formula to
    work correctly for models with extended formulas.  (As reported
    and suggested by Neal Fultz in PR#17865.)
  * The horizontal position of leaves in a dendrogram is now correct
    also with center = FALSE.  (PR#14938, patch from Sebastian
    Meyer.)
  * all.equal.POSIXt() no longer warns about and subsequently ignores
    inconsistent "tzone" attributes, but describes the difference in
    its return value (PR#17277).  This check can be disabled _via_
    the new argument check.tzone = FALSE as suggested by Sebastian
    Meyer.
  * as.POSIXct() now populates the "tzone" attribute from its tz
    argument when x is a logical vector consisting entirely of NA
    values.
  * x[[2^31]] &lt;- v now works.  (Thanks to the report and patch by
    Suharto Anggono in PR#17330.)
  * In log-scale graphics, axis() ticks and label positions are now
    computed more carefully and symmetrically in their range,
    typically providing _more_ ticks, fulfilling wishes in PR#17936.
    The change really corresponds to an improved axisTicks() (package
    grDevices), potentially influencing grid and lattice, for
    example.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now correct to at
    least five digits where it was catastrophically wrong,
    previously.
  * sum(df) and similar "Summary"- and "Math"-group member functions
    now work for data frames df with logical columns, notably also of
    zero rows.  (Reported to R-devel by Martin "b706".)
  * unsplit() had trouble with tibbles due to unsound use of rep(NA,
    len)-indexing, which should use NA_integer_ (Reported to R-devel
    by Mario Annau.)
  * pnorm(x, log.p = TRUE) underflows to -Inf slightly later.
  * show(&lt;hidden S4 generic&gt;) prints better and without quotes for
    non-hidden S4 generics.
  * read.table() and relatives treated an "NA" column name as missing
    when check.names = FALSE PR#18007.
  * Parsing strings containing UTF-16 surrogate pairs such as
    "\uD834\uDD1E" works better on some (uncommon) platforms.
    sprintf("%X", utf8ToInt("\uD834\uDD1E")) should now give "1D11E"
    on all platforms.
  * identical(x,y) is no longer true for differing DOTSXP objects,
    fixing PR#18032.
  * str() now works correctly for DOTSXP and related exotics, even
    when these are doomed.
    Additionally, it no longer fails for lists with a class and
    "irregular" method definitions such that e.g. lapply(*) will
    necessarily fail, as currently for different igraph objects.
  * Too long lines in environment files (e.g. Renviron) no longer
    crash R. This limit has been increased to 100,000 bytes.
    (PR#18001.)
  * There is a further workaround for FreeType giving incorrect
    italic font faces with cairo-based graphics devices on macOS.
  * add_datalist(*, force = TRUE) (from package tools) now actually
    updates an existing data/datalist file for new content.  (Thanks
    to a report and patch by Sebastian Meyer in PR#18048.)
  * cut.Date() and cut.POSIXt() could produce an empty last interval
    for breaks = "months" or breaks = "years".  (Reported as PR#18053
    by Christopher Carbone.)
  * Detection of the encoding of 'regular' macOS locales such as
    en_US (which is UTF-8) had been broken by a macOS change:
    fortunately these are now rarely used with en_US.UTF-8 being
    preferred.
  * sub() and gsub(pattern, repl, x, *) now keep attributes of x such
    as names() also when pattern is NA (PR#18079).
  * Time differences ("difftime" objects) get a replacement and a
    rep() method to keep "units" consistent.  (Thanks to a report and
    patch by Nicolas Bennett in PR#18066.)
  * The \RdOpts macro, setting defaults for \Sexpr options in an Rd
    file, had been ineffective since R 2.12.0: it now works again.
    (Thanks to a report and patch by Sebastian Meyer in PR#18073.)
  * mclapply and pvec no longer accidentally terminate parallel
    processes started before by mcparallel or related calls in
    package parallel (PR#18078).
  * grep and other functions for evaluating (extended) regular
    expressions handle in Unicode also strings not explicitly flagged
    UTF-8, but flagged native when running in UTF-8 locale.
  * Fixed a crash in fifo implementation on Windows (PR#18031).
  * Binary mode in fifo on Windows is now properly detected from
    argument open (PR#15600, PR#18031).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1622808000">- The line %{__install} -m 755 -d %{_infodir}
  no longer works in TW or Factory.
  But without that line it works everywhere. So this instruction
  was commented out of the spec file.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1628596800">- CHANGES IN R 4.1.1:
  NEW FEATURES:
  * require(pkg, quietly = TRUE) is quieter and in particular does
    not warn if the package is not found.
  DEPRECATED AND DEFUNCT:
  * Use of ftp:// URIs should be regarded as deprecated, with
    on-going support confined to method = "libcurl" and not routinely
    tested.  (Nowadays no major browser supports them.)
  * The non-default method = "internal" is deprecated for http:// and
    ftp:// URIs for both download.file and url.
  * On Windows, method = "wininet" is deprecated for http://,
    https:// and ftp:// URIs for both download.file and url.  (A
    warning is only given for ftp://.)
    For ftp:// URIs the default method is now "libcurl" if available
    (which it is on CRAN builds).
    method = "wininet" remains the default for http:// and https://
    URIs but if libcurl is available, using method = "libcurl" is
    preferred.
  INSTALLATION:
  * make check now works also without a LaTeX installation.  (Thanks
    to Sebastian Meyer's PR#18103.)
  BUG FIXES:
  * make check-devel works again in an R build configured with
  - -without-recommended-packages.
  * qnbinom(p, size, mu) for large size/mu is correct now in a range
    of cases (PR#18095); similarly for the (size, prob)
    parametrization of the negative binomial.  Also qpois() and
    qbinom() are better and or faster for extreme cases.  The
    underlying C code has been modularized and is common to all four
    cases of discrete distributions.
  * gap.axis is now part of the axis() arguments which are passed
    from bxp(), and hence boxplot().  (Thanks to Martin Smith's
    report and suggestions in PR#18109.)
  * .First and .Last can again be set from the site profile.
  * seq.int(from, to, *) and seq.default(..) now work better in large
    range cases where from-to is infinite where the two boundaries
    are finite.
  * all.equal(x,y) now returns TRUE correctly also when several
    entries of abs(x) and abs(y) are close to .Machine$double.xmax,
    the largest finite numeric.
  * model.frame() now clears the object bit when removing the class
    attribute of a value via na.action (PR#18100).
  * charClass() now works with multi-character strings on Windows
    (PR#18104, fixed by Bill Dunlap).
  * encodeString() on Solaris now works again in Latin-1 encoding on
    characters represented differently in UTF-8.  Support for
    surrogate pairs on Solaris has been improved.
  * file.show() on Windows now works with non-ASCII path names
    representable in the current native encoding (PR#18132).
  * Embedded R on Windows can now find R home directory via the
    registry even when installed only for the current user
    (PR#18135).
  * pretty(x) with finite x now returns finite values also in the
    case where the extreme x values are close in size to the maximal
    representable number .Machine$double.xmax.
    Also, it's been tweaked for very small ranges and when a boundary
    is close (or equal) to zero; e.g., pretty(c(0,1e-317)) no longer
    has negative numbers, currently still warning about a very small
    range, and pretty(2^-(1024 - 2^-1/(c(24,10)))) is more accurate.
  * The error message for not finding vignette files when weaving has
    correct file sizes now. (Thanks to Sebastian Meyer's PR#18154.)
  * dnbinom(20, &lt;large&gt;, 1) now correctly gives 0, and similar cases
    are more accurate with underflow precaution.  (Reported by Francisco Vera Alcivar in PR#18072.)</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635163200">- repaired https://bugzilla.suse.com/show_bug.cgi?id=1191380
  (rpmacros now go to rpmmacrodir)
- minor clean-ups in spec file</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635768000">- CHANGES IN R 4.1.2:
  C-LEVEL FACILITIES:
  * The workaround in headers R.h and Rmath.h (using namespace std;)
    for the Oracle Developer Studio compiler is no longer needed now
    C++11 is required so has been removed.  A couple more usages of
    log() (which should have been std::log()) with an int argument
    are reported on Solaris.
  * The undocumented limit of 4095 bytes on messages from the
    S-compatibility macros PROBLEM and MESSAGE is now documented and
    longer messages will be silently truncated rather than
    potentially causing segfaults.
  * If the R_NO_SEGV_HANDLER environment variable is non-empty, the
    signal handler for SEGV/ILL/BUS signals (which offers recovery
    user interface) is not set. This allows more reliable debugging
    of crashes that involve the console.
  DEPRECATED AND DEFUNCT:
  * The legacy S-compatibility macros PROBLEM, MESSAGE, ERROR, WARN,
    WARNING, RECOVER, ... are deprecated and will be hidden in R
    4.2.0. R's native interface of Rf_error and Rf_warning has long
    been preferred.
  BUG FIXES:
  * .mapply(F, dots, .) no longer segfaults when dots is not a list
    and uses match.fun(F) as always documented; reported by Andrew
    Simmons in PR#18164.
  * hist(&lt;Date&gt;, ...) and hist(&lt;POSIXt&gt;, ...)  no longer pass
    arguments for rect() (such as col and density) to axis().
    (Thanks to Sebastian Meyer's PR#18171.)
  * \Sexpr{ch} now preserves Encoding(ch). (Thanks to report and
    patch by Jeroen Ooms in PR#18152.)
  * Setting the RNG to "Marsaglia-Multicarry" e.g., by RNGkind(), now
    warns in more places, thanks to Andr'e Gillibert's report and
    patch in PR#18168.
  * gray(numeric(), alpha=1/2) no longer segfaults, fixing PR#18183,
    reported by Till Krenz.
  * Fixed dnbinom(x, size=&lt;very_small&gt;, .., log=TRUE) regression,
    reported by Martin Morgan.
  * as.Date.POSIXlt(x) now keeps names(x), thanks to Davis Vaughan's
    report and patch in PR#18188.
  * model.response() now strips an "AsIs" class typically, thanks to
    Duncan Murdoch's report and other discussants in PR#18190.
  * try() is considerably faster in case of an error and long call,
    as e.g., from some do.call().  Thanks to Alexander Kaever's
    suggestion posted to R-devel.
  * qqline(y = &lt;object&gt;) such as y=I(.), now works, see also
    PR#18190.
  * Non-integer mgp par() settings are now handled correctly in
    axis() and mtext(), thanks to Mikael Jagan and Duncan Murdoch's
    report and suggestion in PR#18194.
  * formatC(x) returns length zero character() now, rather than ""
    when x is of length zero, as documented, thanks to Davis
    Vaughan's post to R-devel.
  * removeSource(fn) now retains (other) attributes(fn).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1647000000">- CHANGES IN R 4.1.3:
  NEW FEATURES:
  * The default version of Bioconductor has been changed to 3.14.
    (This is used by setRepositories and the menus in GUIs.)
  UTILITIES:
  * R CMD check --as-cran has a workaround for a bug in versions of
    file up to at least 5.41 which mis-identify DBF files last
    changed in 2022 as executables.
  C-LEVEL FACILITIES:
  * The legacy S-compatibility macros SINGLE_* in R_ext/Constants.h
    (included by R.h) are deprecated and will be removed in R 4.2.0.
  BUG FIXES:
  * Initialization of self-starting nls() models with initialization
    functions following the pre-R-4.1.0 API (without the ...
    argument) works again for now, with a deprecation warning.
  * Fixed quoting of ~autodetect~ in Java setting defaults to avoid
    inadvertent user lookup due to leading ~, reported in PR#18231 by
    Harold Gutch.
  * substr(., start, stop) &lt;- v now treats _negative_ stop values
    correctly.  Reported with a patch in PR#18228 by Brodie Gaslam.
  * Subscripting an array x without dimnames by a
    length(dim(x))-column character matrix gave "random" non-sense,
    now an error; reported in PR#18244 by Mikael Jagan.
  * ...names() now matches names(list(...)) closely, fixing PR#18247.
  * all.equal(*, scale = s) now works as intended when length(s) &gt; 1,
    partly thanks to Michael Chirico's PR#18272.
  * print(x) for long vectors x now also works for named atomic
    vectors or lists and prints the correct number when reaching the
    getOption("max.print") limit; partly thanks to a report and
    proposal by Hugh Parsonage to the R-devel list.
  * all.equal(&lt;selfStart&gt;, *) no longer signals a deprecation
    warning.
  * reformulate(*, response=r) gives a helpful error message now when
    length(r) &gt; 1, thanks to Bill Dunlap's PR#18281.
  * Modifying globalCallingHandlers inside withCallingHandlers() now
    works or fails correctly, thanks to Henrik Bengtsson's PR#18257.
  * hist(&lt;Date&gt;, breaks = "days") and hist(&lt;POSIXt&gt;, breaks = "secs")
    no longer fail for inputs of length 1.
  * qbeta(.001, .9, .009) and similar cases now converge correctly
    thanks to Ben Bolker's report in PR#17746.
  * window(x, start, end) no longer wrongly signals "'start' cannot
    be after 'end'", fixing PR#17527 and PR#18291.
  * data() now checks that its (rarely used) list argument is a
    character vector - a couple of packages passed other types and
    gave incorrect results.
  * which() now checks its arr.ind argument is TRUE rather coercing
    to logical and taking the first element - which gave incorrect
    results in package code.
  * model.weights() and model.offset() more carefully extract their
    model components, thanks to Ben Bolker and Tim Taylor's R-devel
    post.
  * list.files(recursive = TRUE) now shows all broken symlinks
    (previously, some of them may have been omitted, PR#18296).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1650628800">- CHANGES IN R 4.2.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * The formula method of aggregate() now matches the generic in
    naming its first argument x (resolving PR#18299 by Thomas
    Soeiro).
    This means that calling aggregate() with a formula as a named
    first argument requires name formula in earlier versions of R and
    name x now, so portable code should not name the argument (code
    in many packages did).
  * Calling &amp;&amp; or || with either argument of length greater than one
    now gives a warning (which it is intended will become an error).
  * Calling if() or while() with a condition of length greater than
    one gives an error rather than a warning.  Consequently,
    environment variable _R_CHECK_LENGTH_1_CONDITION_ no longer has
    any effect.
  * Windows users should consult the WINDOWS section below for some
    profound changes including
  * Support for 32-bit builds has been dropped.
  * UTF-8 locales are used where available.
  * The default locations for the R installation and personal
    library folder have been changed.
    Thanks to Tomas Kalibera for months of work on the Windows port
    for this release.
  NEW FEATURES:
  * matrix(x, n, m) now warns in more cases where length(x) differs
    from n * m, as suggested by Abby Spurdle and Wolfgang Huber in
    Feb 2021 on the R-devel mailing list.
    This warning can be turned into an error by setting environment
    variable _R_CHECK_MATRIX_DATA_ to TRUE: R CMD check --as-cran
    does so unless it is already set.
  * Function file_test() in package utils gains tests for symlinks,
    readability and writability.
  * capabilities("libxml") is now false.
    The description of capabilities("http/ftp") now reflects that it
    refers to the default method, no longer the internal one.
  * simplify2array() gains an except argument for controlling the
    exceptions used by sapply().
  * Environment variables R_LIBS_USER and R_LIBS_SITE are both now
    set to the R system default if unset or empty, and can be set to
    NULL to indicate an empty list of user or site library
    directories.
  * The warning for axis()(-like) calls in cases of relatively small
    ranges (typically in log-scale situations) is slightly improved
    _and_ suppressed from explicit calls to .axisPars() as has always
    been the intention.
  * The contrasts setter function `contrasts&lt;-` gains an explicit
    default how.many = NULL rather than just using missing(how.many).
  * grid.pretty() gains a new optional argument n = 5.
  * There is a new function .pretty() with option bounds as a
    technical-utility version of pretty().  It and pretty() gain a
    new argument f.min with a better than back-compatible default.
  * Function grDevices::axisTicks() and related functions such as
    graphics::axis() work better, notably for the log scale; partly
    because of the pretty() improvements, but also because care is
    taken e.g., when ylim is finite but diff(ylim) is infinite.
  * nclass.FD() gains a digits option.
  * The R Mathlib internal C function bd0() (called indirectly from a
    dozen probability density and distribution functions such as
    dpois(), dbinom(), dgamma(), pgamma() _etc_) has been
    complemented by a more sophisticated and (mostly) more accurate C
    function ebd0(), currently called only by internal dpois_raw()
    improving accuracy for R level dpois() and potentially others
    calling it such as dnbinom(), dgamma() or pgamma().  (Thanks to
    Morten Welinder's PR#15628.)
  * write.ftable() gains sep = " " argument as suggested by Thomas
    Soeiro.
  * The names of the locale categories supported by R's
    Sys.getlocale() and Sys.setlocale() are now provided by variable
    .LC.categories in the base namespace.
  * The Date and POSIXt methods for hist() and the histogram method
    for plot() now also use the new default col = "lightgray" in
    consistency with the corresponding change to hist()'s default for
    R 4.0.0.
  * hist.default() gains new fuzz argument, and the histogram plot
    method no longer uses fractional axis ticks when displaying
    counts ("Frequency").
  * mapply() and hence Map() now also obey the "max-or-0-if-any"
    recycling rule, such that, e.g., Map(`+`, 1:3, 1[0]) is valid
    now.
  * as.character(&lt;obj&gt;) for "hexmode" or "octmode" objects now
    fulfils the important basic rule as.character(x)[j] ===
    as.character(x[j]).
  * The set utility functions, notably intersect() have been tweaked
    to be more consistent and symmetric in their two set arguments,
    also preserving a common mode.
  * substr(ch, start,end) &lt;- new now e.g., preserves names(ch); ditto
    for substring(), thanks to a patch from Brodie Gaslam.
  * plot(&lt;lm&gt;) gains a extend.ylim.f argument, in partial response to
    PR#15285; further PR#17784 is fixed thanks to several
    contributors and a patch by Elin Waring.  The Cook's dist
    contours get customizable via cook.col and cook.lty with a
    different default color and their legend is nicer by default and
    customizable via cook.legendChanges.
  * Attempting to subset an object that is not subsettable now
    signals an error of class notSubsettableError. The
    non-subsettable object is contained in the object field of the
    error condition.
  * Subscript-out-of-bounds errors are now signaled as errors of
    class subscriptOutOfBoundsError.
  * Stack-overflow errors are now signaled as errors inheriting from
    class stackOverflowError. See ?stackOverflowError for more
    details.
  * New partly experimental Sys.setLanguage() utility, solving the
    main problem of PR#18055.
  * gettext() and gettextf() get a new option trim = TRUE which when
    set to false allows translations for strings such as "Execution
    halted\n" typical for C code.
  * An experimental implementation of hash tables is now available.
    See ?hashtab for more details.
  * identical() gains a extptr.as.ref argument for requesting that
    external pointer objects be compared as reference objects.
  * reorder() gets an argument decreasing which it passes to sort()
    for level creation; based on the wish and patch by Thomas Soeiro
    in PR#18243.
  * as.vector() gains a data.frame method which returns a simple
    named list, also clearing a long standing 'FIXME' to enable
    as.vector(&lt;data.frame&gt;, mode="list").  This breaks code relying
    on as.vector(&lt;data.frame&gt;) to return the unchanged data frame.
  * legend() is now vectorized for arguments cex, x.intersp, and
    text.width.  The latter can now also be specified as a vector
    (one element for each column of the legend) or as NA for
    computing a proper column wise maximum value of strwidth(legend).
    The argument y.intersp can be specified as a vector with one
    entry for each row of the legend.
    legend() also gains new arguments title.cex and title.font.
    Thanks to Swetlana Herbrandt.
  * Deparsing no longer remaps attribute names dim, dimnames, levels,
    names and tsp to historical S-compatible names (which structure()
    maps back).
  * sample() and sample.int() have additional sanity checks on their
    size and n arguments.
    all.equal.numeric() gains a sanity check on its tolerance
    argument - calling all.equal(a, b, c) for three numeric vectors
    is a surprisingly common error.
    mean(na.rm =), rank(na.last =), barplot(legend.text =),
    boxplot(), contour(drawlabels =), polygon(border =) and
    methods::is(class2 =) have more robust sanity checks on their
    arguments.
    R CMD Rd2pdf (used by R CMD check) has a more robust sanity check
    on the format of \alias{} commands.
  * psigamma(x, deriv) for negative x now also works for deriv = 4
    and 5; their underlying C level dpsifn() is documented in
    'Writing R Extensions'.
  * The HTML help system now uses HTML5 (wish of PR#18149).
  * ks.test() now provides exact p-values also with ties and MC
    p-values in the two-sample (Smirnov) case.  By Torsten Hothorn.
  * ks.test() gains a formula interface, with y ~ 1 for the
    one-sample (Kolmogorov) test and y ~ group for the two-sample
    (Smirnov) test.  Contributed by Torsten Hothorn.
  * The return value from ks.test() now has class c("ks.test",
    "htest") - packages using try() need to take care to use
    inherits() and not == on the class.
  * New functions psmirnov(), qsmirnov() and rsmirnov() in package
    stats implementing the asymptotic and exact distributions of the
    two-sample Smirnov statistic.
  * iconv() now allows sub = "c99" to use C99-style escapes for UTF-8
    inputs which cannot be converted to encoding to.
  * In a forward pipe |&gt; expression it is now possible to use a named
    argument with the placeholder _ in the rhs call to specify where
    the lhs is to be inserted.  The placeholder can only appear once
    on the rhs.
  * The included LAPACK sources have been updated to version 3.10.0,
    except for the four Fortran 77 routines which 3.10.0 has
    re-implemented in Fortran 90 (where the older versions have been
    retained as the R build process does not support Fortran 90).
  * path.expand() and most other uses of tilde expansion now warn if
    a path would be too long if expanded.  (An exception is
    file.exists(), which silently returns false.)
  * trunc(&lt;Date&gt;, *) now supports units = "months" or "years" for
    consistency with the POSIXt method, thanks to Dirk Eddelbuettel's
    proposal in PR#18099.
  * list2DF() now checks that its arguments are of the same length,
    rather than use recycling.
  * The HTML help system has several new features: LaTeX-like math
    can be typeset using either KaTeX or MathJax, usage and example
    code is highlighted using Prism, and for dynamic help the output
    of examples and demos can be shown within the browser if the
    knitr package is installed. These features can be disabled by
    setting the environment variable _R_HELP_ENABLE_ENHANCED_HTML_ to
    a false value.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 15
    and so packages that provide graphics devices should be
    reinstalled.
  * The grid package now allows the user to specify a "vector" of
    pattern fills.  The fill argument to gpar() accepts a list of
    gradients and/or patterns and the functions linearGradient(),
    radialGradient(), and pattern() have a new group argument.
    Points grobs (data symbols) can now also have a pattern fill.
    The grobCoords() function now returns a more informative and
    complex result.
  * The grid package has new functions for drawing isolated groups:
    grid.group(), grid.define(), and grid.use().  These functions add
    compositing operators and affine transformations to R's graphics
    capabilities.
    The grid package also has new functions for stroking and filling
    paths: grid.stroke(), grid.fill(), and grid.fillStroke().
    A new function as.path() allows the user to specify the fill rule
    for a path that is to be used for clipping, stroking, or filling;
    available options are "winding" and "evenodd".  A new function
    as.mask() allows the user to specify the type of a mask;
    available options are "alpha" and "luminance".
    These new features are only supported so far (at most) on the
    Cairo-based graphics devices and on the pdf() device.
  * dev.capabilities() reports on device support for the new
    features.
  * par() now warns about unnamed non-character arguments to prevent
    misuse such as {usr &lt;- par("usr"); par(usr)}.
  INSTALLATION:
  * Facilities for accessing ftp:// sites are no longer tested
    (except _pro tem_ for curlGetHeaders()) as modern browsers have
    removed support.
  * R can now be built with DEFS = -DSTRICT_R_HEADERS .
  PACKAGE INSTALLATION:
  * R CMD INSTALL no longer tangles vignettes. This completes an R
    CMD build change in R 3.0.0 and affects packages built before R
    3.0.2. Such packages should be re-made with R CMD build to have
    the tangled R code of vignettes shipped with the tarball.
  * USE_FC_LEN_T will become the default: this uses the correct
    prototypes for Fortran BLAS/LAPACK routines called from C/C++,
    and requires adjustment of most such calls - see 'Writing R
    Extensions' SS6.6.2.  (This has been supported since R 3.6.2.)
  * Package installation speed for packages installed with
    keep.source has been improved. This resolve the issue reported by
    Ofek Shilon in PR#18236.
  UTILITIES:
  * R CMD check can optionally report files/directories left behind
    in home, /tmp (even though TMPDIR is set) and other directories.
    See the "R Internals" manual for details.
  * R CMD check now reports byte-compilation errors during
    installation.  These are not usually fatal but may result in
    parts of the package not being byte-compiled.
  * _R_CHECK_DEPENDS_ONLY_ can be applied selectively to examples,
    tests and/or vignettes in R CMD check: see the "R Internals"
    manual.
  * _R_CHECK_SRC_MINUS_W_IMPLICIT_ now defaults to true: recent
    versions of Apple clang on macOS have made implicit function
    declarations in C into a compilation error.
  * R CMD check --as-cran makes use of the environment variable
    AUTORECONF.  See the "R Internals" manual SS8 for further details.
  * R CMD check --use-valgrind also uses valgrind when re-building
    vignettes as some non-Sweave vignettes unhelpfully comment out
    all their code when R CMD check runs vignettes.
  * Errors in re-building vignettes (unless there are LaTeX errors)
    are reported by R CMD check as ERROR rather than WARNING when
    running vignettes has been skipped (as it frequently is in CRAN
    checks and by --as-cran).
  * R CMD Rd2pdf gains a --quiet option that is used by R CMD build
    when building the PDF package manual.
  * R CMD Rd2pdf now always runs LaTeX in batch mode, consistent with
    Texinfo &gt;= 6.7. The --batch option is ignored.
  * R CMD build and R CMD check now include the Rd file name and line
    numbers in the error message of an \Sexpr evaluation failure.
  * For packages using the \doi Rd macro (now an install-time \Sexpr)
    but no other dynamic Rd content, R CMD build now produces a
    smaller tarball and is considerably faster - skipping temporary
    package installation.
  C-LEVEL FACILITIES:
  * The non-API header R_ext/R-ftp-http.h is no longer provided, as
    the entry points it covered are now all defunct.
  * A number of non-API declarations and macro definitions have been
    moved from the installed header Rinternals.h to the internal
    header Defn.h. Packages that only use entry points and
    definitions documented to be part of the API as specified in
    'Writing R Extensions' SS6 should not be affected.
  * The macro USE_RINTERNALS no longer has any effect when compiling
    package code.  Packages which also use R_NO_REMAP will need to
    ensure that the remapped names are used for calls to API
    functions that were formerly also made available as macros.
  * The deprecated legacy S-compatibility macros PROBLEM, MESSAGE,
    ERROR, WARN, WARNING, RECOVER, ... are no longer defined in
    R_exts/RS.h (included by R.h).  Replace these by calls to
    Rf_error and Rf_warning (defined in header R_ext/Error.h included
    by R.h).
    Header R_ext/RS.h no longer includes R_ext/Error.h.
  * Header R_ext/Constants.h (included by R.h) when included from C++
    now includes the C++ header cfloat rather than the C header
    float.h (now possible as C++11 is required).
  * The legacy S-compatibility macros DOUBLE_* in R_ext/Constants.h
    (included by R.h) are deprecated.
  * The deprecated S-compatibility macros SINGLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * R_Calloc, R_Free and R_Realloc are preferred to their unprefixed
    forms and error messages now use the prefix. These forms were
    introduced in R 3.4.0 and are available even when
    STRICT_R_HEADERS is defined.
  * rmultinom has been documented in 'Writing R Extensions' SS6 so is
    now part of the R API.
  * Similarly, Rtanpi, called from R level tanpi() is now part of the
    R API.
  * The long-deprecated, undocumented and non-API entry point call_R
    is no longer declared in R_ext/RS.h (included by R.h).
  * The header S.h which has been unsupported since Jan 2016 has been
    removed.  Use R.h instead.
  DEPRECATED AND DEFUNCT:
  * The (non-default and deprecated) method = "internal" for
    download.file() and url() no longer supports http:// nor ftp://
    URIs.  (It is used only for file:// URIs.)
    On Windows, download.file(method = "wininet") no longer supports
    ftp:// URIs.  (It is no longer the default method, which is
    "libcurl" and does.)
    On Windows, the deprecated method = "wininet" now gives a warning
    for http:// and https:// URIs for both download.file() and url().
    (It is no longer the default method.)
  * On Windows, the command-line option --max-mem-size and
    environment variable R_MAX_MEM_SIZE are defunct.  The memory
    allocation limit was important for 32-bit builds, but these are
    no longer supported.
  * default.stringsAsFactors() is now formally deprecated, where that
    was only mentioned on its regular help page, previously.  So it
    now gives a warning if called.
  * unix.time() is defunct now; it had been deprecated since R 3.4.0.
  BUG FIXES:
  * Setting digits = 0 in format(), print.default() (and hence
    typically print()) or options() is again invalid.  Its behaviour
    was platform-dependent, and it is unclear what "zero significant
    digits" should mean (PR#18098).
  * Messages from C code in the cairo section of package grDevices
    are now also offered for translation, thanks to Michael Chirico's
    PR#18123.
  * mean(x) with finite x now is finite also without "long.double"
    capability.
  * R CMD Rd2pdf no longer leaves an empty build directory behind
    when it aborts due to an already existing output file.  (Thanks
    to Sebastian Meyer's PR#18141.)
  * density(x, weights = w, na.rm = TRUE) when anyNA(x) is true, now
    removes weights "in parallel" to x, fixing PR#18151, reported by
    Matthias Gondan.  Additionally, it gets a subdensity option.
  * Conversion of \Sexpr[]{&lt;expR&gt;} to LaTeX or HTML no longer
    produces long blocks of empty lines when &lt;expR&gt; itself contains
    several lines all producing empty output.  Thanks to a report and
    patch by Ivan Krylov posted to R-devel.
  * R CMD build no longer fails if a package vignette uses child
    documents and inst/doc exists.  (Thanks to Sebastian Meyer's
    PR#18156.)
  * When an R documentation ('help' source) file man/foo.Rd in a
    package has \donttest{..} examples with a syntax error, it is now
    signalled as ERROR and with correct line numbers relating to the
  * -Ex.R file, thanks to Duncan Murdoch and Sebastian Meyer's
    reports and patch proposals in PR#17501.
  * Improved determination of the correct translation domain in
    non-base packages, addressing the combination of PR#18092 and
    PR#17998 (#c6) with reports and _augmented_ patch #2904 by
    Suharto Anggono.
    Note that "R-base" is no longer the default domain e.g., for
    top-level calls to gettext(); rather translation needs explicit
    domain = * specification in such cases.
  * identical(attrib.as.set=FALSE) now works correctly with data
    frames with default row names (Thanks to Charlie Gao's PR#18179).
  * txtProgressBar() now enforces a non-zero width for argument char,
    without which no progress can be visible.
  * dimnames(table(d)) is more consistent in the case where d is a
    list with a single component, thanks to Thomas Soeiro's report to
    R-devel.
    Further, table(d1, d2) now gives an error when d1 and d2 are data
    frames as suggested by Thomas in PR#18224.
  * Fix for drawing semi-transparent lines and fills on the native
    Windows graphics device (PR#18219 and PR#16694).  Thanks to Nick
    Ray for helpful diagnosis on Bugzilla.
  * The deparser now wraps sub-expressions such as if(A) ..  with
    parentheses when needed; thanks to Duncan Murdoch's PR#18232 and
    Lionel Henry's patches there.
  * remove.packages() no longer tries to uninstall Priority: base
    packages, thanks to a report and suggestions by Colin Fay in
    PR#18227.
  * win.metafile() now has xpinch and ypinch arguments so that the
    user can override Windows' (potentially wrong) guess at device
    dimensions.
  * x[i] and x[[i]] for non-integer i should now behave in all cases
    as always documented: the index used is equivalent to
    as.integer(i) unless that would overflow where trunc(i) is used
    instead; thanks to Suharto Anggono's report and patch proposals
    in PR#17977.
  * asOneSidedFormula() now associates the resulting formula with the
    global environment rather than the evaluation environment created
    for the call.
  * &lt;bibentry&gt;$name now matches the field name case-insensitively,
    consistent with bibentry() creation and the replacement method.
  * cbind() failed to detect some length mismatches with a mixture of
    time-series and non-time-series inputs.
  * The default LaTeX style file Sweave.sty used by the RweaveLatex
    driver no longer loads the obsolete ae package; thanks to a
    report by Thomas Soeiro in PR#18271.  Furthermore, it now skips
    \usepackage[T1]{fontenc} for engines other than pdfTeX (if
    detected) or if the new [nofontenc] option is used.
  * smooth.spline() now stores its logical cv argument more safely,
    fixing a rare bug when printing, and also stores n.
  * smooth.spline(x,y,*) now computes the cv.crit statistic
    correctly, also when is.unsorted(x), fixing PR#18294.
  * The data.frame method of rbind() now warns when binding
    not-wholly-recycling vectors, by analogy to the default method
    (for matrices).
  * setAs() finds the correct class for name to when multiple
    packages define a class with that name. Thanks to Gabor Csardi
    for the report.
  * Fix for detaching a package when two classes of the same name are
    present in method signatures for the same generic. Thanks to
    Gabor Csardi for the report.
  * match.arg("", c("", "a", "B")) gives a better error message, in
    part from PR#17959, thanks to Elin Waring.
  * R CMD Sweave --clean no longer removes pre-existing files or
    subdirectories (PR#18242).
  * The quartz() device no longer splits polylines into subpaths.
    That has caused narrowly-spaced lines with many points to always
    look solid even when dashed line type was used due to dash phase
    restarts.
  * Deparsing constructs such as quote(1 + `!`(2) + 3) works again as
    before R 3.5.0, thanks to the report and patch in PR#18284 by
    Suharto Anggono.
  * as.list(f) for a factor f now keeps names(f), fixing PR#18309.
  * qbeta(.001, .9, .009) and analogous qf() calls now return a
    correct value instead of NaN or wrongly 1, all with a warning;
    thanks to the report by Ludger Goeminne in PR#18302.
  * plot.lm() failed to produce the plot of residuals vs.  factor
    levels (i.e., which=5 when leverages are constant) for models
    with character predictors (PR#17840).
  * interaction.plot(..., xtick = TRUE) misplaced the x-axis line
    (PR#18305).
  * Not strictly fixing a bug, format()ing and print()ing of
    non-finite Date and POSIXt values NaN and +/-Inf no longer show
    as NA but the respective string, e.g., Inf, for consistency with
    numeric vector's behaviour, fulfilling the wish of PR#18308.
  * R CMD check no longer runs test scripts generated from
    corresponding .Rin files twice and now signals an ERROR if
    processing an .Rin script fails.
  * tools::Rd2txt() used for plain-text help pages now renders \hrefs
    (if tools::Rd2txt_options(showURLs = TRUE)) and \urls with
    percent-encoding and standards-compliant delimiting style (angle
    brackets and no URL: prefix).  \email is now rendered with a
    mailto: prefix.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1655985600">- CHANGES IN R 4.2.1:
  NEW FEATURES:
  * New function utils::findCRANmirror() to find out if a CRAN mirror
    has been selected, otherwise fallback to the main site.  This
    behaves in the same way as tools::CRAN_package_db() and is
    intended for packages wishing to access CRAN for purposes other
    than installing packages.
    The need for this was shown by a day when the main CRAN website
    was offline and a dozen or so packages which had its URL
    hardcoded failed their checks.
  INSTALLATION on a UNIX-ALIKE:
  * The libraries searched for by --with-blas (without a value) now
    include BLIS (after OpenBLAS but before ATLAS).  And on macOS,
    the Accelerate framework (after ATLAS).  (This is patterned after
    the AX_BLAS macro from the Autoconf Archive.)
  * The included LAPACK sources have been updated to 3.10.1.
  UTILITIES:
  * The (full path to) the command tidy to be used for HTML
    validation can be set by environment variable R_TIDYCMD.
  * Setting environment variable _R_CHECK_RD_VALIDATE_RD2HTML_ to a
    false value will override R CMD check --as-cran and turn off HTML
    validation.  This provides a way to circumvent a problematic
    tidy.
    The 2006 version that ships with macOS is always skipped.
  C-LEVEL FACILITIES:
  * The undocumented legacy declarations of Sint, Sfloat, SINT_MAX
    and SINT_MIN in header R.h are deprecated.
  BUG FIXES:
  * fisher.test(d) no longer segfaults for "large" d; fixing PR#18336
    by preventing/detecting an integer overflow reliably.
  * tar(., files=*) now produces correctly the warning about invalid
    uid or gid of files, fixing PR#18344, reported by Martin Morgan.
  * tk_choose.files() with multi = FALSE misbehaved on paths
    containing spaces (PR#18334) (regression introduced in R 4.0.0).
  * sort(x, partial = ind, *) now works correctly notably for the
    non-default na.last = FALSE or TRUE, fixing PR#18335 reported by
    James Edwards.
  * Environment variable _R_CHECK_XREFS_REPOSITORIES_ is only used
    for checking .Rd cross-references in R CMD check (as documented)
    and not for other uses looking for a CRAN mirror.
  * The search for a CRAN mirror when checking packages now uses
    getOption("repos") if that specifies a CRAN mirror, even when it
    does not also specify all three Bioconductor repositories (as was
    previously required).
  * The HTML code generated by tools::Rd2HTML() has been improved to
    pass tidy 5.8.0.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1667217600">- CHANGES IN R 4.2.2:
  NEW FEATURES:
  * tools::Rdiff(useDiff = TRUE) checks for the presence of an
    external diff command and switches to useDiff = FALSE if none is
    found.  This allows R CMD Rdiff to always work.
  * On Windows, environment variable R_LIBCURL_SSL_REVOKE_BEST_EFFORT
    can be used to switch to only 'best-effort' SSL certificate
    revocation checks with the default "libcurl" download method.
    This reduces security, but may be needed for downloads to work
    with MITM proxies (PR#18379).
  * (macOS) The run-time check for libraries from XQuartz for X11 and
    Tcl/Tk no longer uses otool from the Apple Developer Tools
    (PR#18400).
  * The LaTeX style for producing the PDF manuals, Rd.sty, now loads
    the standard amsmath, amsfonts and amssymb packages for greater
    coverage of math commands in the Rd \eqn and \deqn macros.  The
    \mathscr LaTeX command is also provided (via the mathrsfs
    package, if available, or the amsfonts bundle otherwise),
    fulfilling the wish of PR#18398.
  * (Windows) The default format of readClipboard() and
    writeClipboard() has been changed to 13 (CF_UNICODETEXT).
  INSTALLATION on a UNIX-ALIKE:
  * The PDF manuals (if built) can be compacted by the new target
    make compact-pdf (at the top level or in directory doc/manual).
  * There is now configure support for LLVM clang 15 on Linux, which
    defaults to position-independent (PIE) executables whereas
    gfortran does not.
  * Many small changes to ease compilation (and suppress warnings)
    with LLVM clang 15.
  BUG FIXES:
  * Rscript -e would fail if stdin were closed (Reported by Henrik
    Bengtsson.)
  * qt(*, log.p=TRUE) in outer tails no longer produces NaN in its
    final steps, thus fixing PR#18360.
  * tools::Rd2latex() now escapes hashes and ampersands when writing
    URLs, fixing LaTeX errors with such URLs in \tabular.
  * When isGeneric(f, fdef=*) is used with mismatching names, the
    warning is better understandable; reported (with fix) in PR#18370
    by Gabe Becker.
  * poly(x, n) now works again (and is now documented) when x is a
    "Date" or "POSIXct" object, or of another class while fulfilling
    mode(x) == "numeric".  This also enables poly(x, *, raw=TRUE) for
    such variables.  Reported by Michael Chirico to R-devel.
  * write.table(), write.csv() and write.csv2() restore their
    numerical precision (internal equivalent of digits = 15) after an
    interrupt (PR#18384).
  * One can now read also byte FF from a clipboard connection
    (PR#18385).
  * source("") and source(character()) now give more helpful error
    messages.
  * R CMD check --as-cran set _R_CHECK_TIMINGS_ too late to have the
    intended effect.
  * as.POSIXlt(x) now also works with very large dates x, fixing
    PR#18401 reported by Hannes M"uhleisen.
  * Files can now be extracted even from very large zip archives
    (PR#18390, thanks to Martin Jakt).
  * Non-finite objects of class "POSIXlt" are now correctly coerced
    to classes "Date" and "POSIXct"; following up on the extension to
    format() them correctly.
  * Added methods for is.finite(), is.infinite() and is.nan() for
    "POSIXlt" date-time objects.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1678881600">- CHANGES IN R 4.2.3:
  C-LEVEL FACILITIES:
  * The definition of DL_FUNC in R_ext/Rdynload.h has been changed to
    be fully C-compliant.  This means that functions loaded _via_ for
    example R_GetCCallable need to be cast to an appropriate type if
    they have any arguments.
  * .Machine has a new element sizeof.time_t to identify old systems
    with a 32-bit type and hence a limited range of date-times (and
    limited support for dates millions of years from present).
  PACKAGE INSTALLATION:
  * (Windows) The default C++ standard had accidentally been left at
    C++11 when it was changed to C++14 on Unix.
  BUG FIXES:
  * As "POSIXlt" objects may be "partially filled" and their list
    components meant to be recycled, length() now is the length of
    the longest component.
  * as.POSIXlt.Date() could underflow for dates in the far past (more
    than half a million years BCE).
  * as.Date.POSIXlt(x) would return "1970-01-01" instead of NA in R
    4.2.2, e.g., for
    x &lt;- as.POSIXlt(c("2019-01-30","2001-1-1"))
    x$mon &lt;- c(0L, NA); as.Date(x)
  * R CMD check failed to apply enabled _R_CHECK_SUGGESTS_ONLY_ to
    examples and vignettes (regression in R 4.2.0).
  * R CMD check did not re-build vignettes in separate processes by
    default (regression in R 4.2.0).
  * Running examples from HTML documentation now restores previous
    knitr settings and options (PR#18420).
  * Quartz: fonts are now located using Core Graphics API instead of
    deprecated ATS which is no longer supported in the macOS 13 SDK
    (PR#18426).  This also addresses an issue where the currently
    used font in the Quartz device context was not correctly
    retained.
  * (Windows) Math symbols in text drawing functions are again
    rendered correctly (PR#18440).  This fixes a regression in R
    4.2.1 caused by a fix in PR#18382 which uncovered an issue in
    GraphApp due to which the symbol charset was not used with TT
    Symbol font face.
  * (Windows) Installing a package with a src/Makefile.{win,ucrt}
    file includes ~/.R/Makevars.win64 in the search for user
    makevars, as documented in "R Installation and Administration"
    and done for packages with a src/Makevars.{win,ucrt} file.
  * format(&lt;POSIXlt_w/_unbalanced_sec&gt;, "....%OS&lt;n&gt;") with n &gt; 0 no
    longer accidentally uses the unbalanced seconds, thanks to
    Suharto Anggono's report (including patch) in PR#18448.
  * solve.default(a, b) works around issues with some versions of
    LAPACK when a contains NA or NaN values.
  * When UseMethod() cannot dispatch, it no longer segfaults
    producing the error message in case of a long class(), thanks to
    Joris Vankerschaver's report (including patch) in PR#18447.
  * When example(foo, ..) produces graphics on an interactive device
    it needs to open itself, it now leaves devAskNewPage() unchanged
    even when it was FALSE, thus fixing a 14 years old '&lt;FIXME&gt;'.
  * packageDescription() again catches errors from encoding
    conversions. This also fixes broken packageVersion() in C locale
    on systems where iconv does not support transliteration.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1681128000">- add patch to build with libcurl &gt;= 8</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1682078400">- CHANGES IN R 4.3.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Calling &amp;&amp; or || with LHS or (if evaluated) RHS of length greater
    than one is now always an error, with a report of the form
    'length = 4' in coercion to 'logical(1)'
    Environment variable _R_CHECK_LENGTH_1_LOGIC2_ no longer has any
    effect.
  NEW FEATURES:
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.10.1.  (This caused some platform-dependent
    changes to package check output.)  And then to the sources from
    LAPACK version 3.11.0 (with changes only to double complex
    subroutines).
  * The included LAPACK sources have been updated to include the four
    Fortran 90 routines rather than their Fortran 77 predecessors.
    This may give some different signs in SVDs or
    eigendecompositions..  (This completes the transition to LAPACK
    3.10.x begun in R 4.2.0.)
  * The LAPACK sources have been updated to version 3.11.0.  (No new
    subroutines have been added, so this almost entirely bug fixes:
    Those fixes do affect some computations with NaNs, including R's
    NA.)
  * The parser now signals _classed_ errors, notably in case of the
    pipe operator |&gt;.  The error object and message now give line and
    column numbers, mostly as proposed and provided by Duncan Murdoch
    in PR#18328.
  * toeplitz() is now generalized for asymmetric cases, with a
    toeplitz2() variant.
  * xy.coords() and xyz.coords() and consequently, e.g., plot(x,y,
    log = "y") now signal a _classed_ warning about negative values
    of y (where log(.) is NA).  Such a warning can be specifically
    suppressed or caught otherwise.
  * Regular expression functions now check more thoroughly whether
    their inputs are valid strings (in their encoding, e.g. in
    UTF-8).
  * The performance of grep(), sub(), gsub() and strsplit() has been
    improved, particularly with perl = TRUE and fixed = TRUE.  Use of
    useBytes = TRUE for performance reasons should no longer be
    needed and is discouraged: it may lead to incorrect results.
  * apropos() gains an argument dot_internals which is used by the
    completion (help(rcompgen)) engine to also see base internals
    such as .POSIXct().
  * Support in tools::Rdiff() for comparing uncompressed PDF files is
    further reduced - see its help page.
  * qqplot(x, y, ...) gains conf.level and conf.args arguments for
    computing and plotting a confidence band for the treatment
    function transforming the distribution of x into the distribution
    of y (Switzer, 1976, _Biometrika_). Contributed by Torsten
    Hothorn.
  * Performance of package_dependencies() has been improved for cases
    when the number of dependencies is large.
  * Strings newly created by gsub(), sub() and strsplit(), when any
    of the inputs is marked as "bytes", are also marked as "bytes".
    This reduces the risk of creating invalid strings and accidental
    substitution of bytes deemed invalid.
  * Support for readLines(encoding = "bytes") has been added to allow
    processing special text files byte-by-byte, without creating
    invalid strings.
  * iconv(from = "") now takes into account any declared encoding of
    the input elements and uses it in preference to the native
    encoding.  This reduces the risk of accidental creation of
    invalid strings, particularly when different elements of the
    input have different encoding (including "bytes").
  * Package repositories in getOption("repos") are now initialized
    from the repositories file when utils is loaded (if not already
    set, e.g., in .Rprofile).  (From a report and patch proposal by
    Gabriel Becker in PR#18405.)
  * compactPDF() gets a verbose option.
  * type.convert() and hence read.table() get new option tryLogical =
    TRUE with back compatible default.  When set to false, converts
    "F" or "T" columns to character.
  * Added new unit prefixes "R" and "Q" for abbreviating
    (unrealistically large) sizes beyond 10^{27} in standard = "SI",
    thanks to Henrik Bengtsson's PR#18435.
  * as.data.frame()'s default method now also works fine with atomic
    objects inheriting from classes such as "roman", "octmode" and
    "hexmode", such fulfilling the wish of PR#18421, by Benjamin
    Feakins.
  * The as.data.frame.vector() utility now errors for wrong-length
    row.names.  It warned for almost six years, with "Will be an
    error!".
  * sessionInfo() now also contains La_version() and reports codepage
    and timezone when relevant, in both print() and toLatex() methods
    which also get new option tzone for displaying timezone
    information when locale = FALSE.
  * New function R_compiled_by() reports the C and Fortran compilers
    used to build R, if known.
  * predict(&lt;lm&gt;, newdata = *) no longer unnecessarily creates an
    offset of all 0s.
  * solve() for complex inputs now uses argument tol and by default
    checks for 'computational singularity' (as it long has done for
    numeric inputs).
  * predict(&lt;rank-deficient lm&gt;, newdata=*) now obeys a new argument
    rankdeficient, with new default "warnif", warning only if there
    are non-estimable cases in newdata.  Other options include
    rankdeficient = "NA", predicting NA for non-estimable newdata
    cases.  This addresses PR#15072 by Russ Lenth and is based on his
    original proposal and discussions in PR#16158 also by David Firth
    and Elin Waring.  Still somewhat experimental.
  * Rgui console implementation now works better with the NVDA screen
    reader when the full blinking cursor is selected.  The underlying
    improvements in cursor handling may help also other screen
    readers on Windows.
  * The drop-field control in GraphApp can now be left with the TAB
    key and all controls can be navigated in the reverse order using
    the Shift+TAB key, improving accessibility of the Rgui
    configuration editor.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now fully accurate
    (instead of to "only" minimally five digits).
  * demo(error.catching) now also shows off withWarnings() and
    tryCatchWEMs().
  * As an experimental feature the placeholder _ can now also be used
    in the rhs of a forward pipe |&gt; expression as the first argument
    in an extraction call, such as _$coef. More generally, it can be
    used as the head of a chain of extractions, such as _$coef[[2]].
  * Spaces in the environment variable used to choose the R session's
    temporary directory (TMPDIR, TMP and TEMP are tried in turn) are
    now fatal.  (On Windows the 'short path' version of the path is
    tried and used if that does not contain a space.)
  * all.equal.numeric() gets a new optional switch giveErr to return
    the numeric error as attribute.  Relatedly,
    stopifnot(all.equal&lt;some&gt;(a, b, ..)) is as "smart" now, as
    stopifnot(all.equal(....)) has been already, thus allowing
    customized all.equal&lt;Some&gt;() wrappers.
  * R on Windows is now able to work with path names longer than 260
    characters when these are enabled in the system (requires at
    least Windows 10 version 1607).  Packages should be updated to
    work with long paths as well, instead of assuming PATH_MAX to be
    the maximum length.  Custom front-ends and applications embedding
    R need to update their manifests if they wish to allow this
    feature.  See
    &lt;https://blog.r-project.org/2023/03/07/path-length-limit-on-windows&gt;
    for more information.
  * 'Object not found' and 'Missing argument' errors now give a more
    accurate error context. Patch provided by Lionel Henry in
    PR#18241.
  * The @ operator is now an S3 generic. Based on contributions by
    Tomasz Kalinowski in PR#18482.
  * New generic chooseOpsMethod() provides a mechanism for objects to
    resolve cases where two suitable methods are found for an Ops
    Group Generic. This supports experimenting with alternative
    object systems. Based on contributions by Tomasz Kalinowski in
    PR#18484.
  * inherits(x, what) now accepts values other than a simple
    character vector for argument what. A new generic, nameOfClass(),
    is called to resolve the class name from what. This supports
    experimenting with alternative object systems. Based on
    contributions by Tomasz Kalinowski in PR#18485.
  * Detection of BLAS/LAPACK in use (sessionInfo()) with FlexiBLAS
    now reports the current backend.
  * The "data.frame" method for subset() now warns about extraneous
    arguments, typically catching the use of = instead of == in the
    subset expression.
  * Calling a:b when numeric a or b is longer than one may now be
    made into an error by setting environment variable
    _R_CHECK_LENGTH_COLON_ to a true value, along the proposal in
    PR#18419 by Henrik Bengtsson.
  * density(x, weights = *) now warns if automatic bandwidth
    selection happens without using weights; new optional warnWbw may
    suppress the warning.  Prompted by Christoph Dalitz' PR#18490 and
    its discussants.
  * rm(list = *) is faster and more readable thanks to Kevin Ushey's
    PR#18492.
  * The plot.lm() function no longer produces a normal Q-Q plot for
    GLMs. Instead it plots a half-normal Q-Q plot of the absolute
    value of the standardized deviance residuals.
  * The print() method for class "summary.glm" no longer shows
    summary statistics for the deviance residuals by default.  Its
    optional argument show.residuals can be used to show them if
    required.
  * The tapply() function now accepts a data frame as its X argument,
    and allows INDEX to be a formula in that case. by.data.frame()
    similarly allows INDICES to be a formula.
  * The performance of df[j] &lt;- value (including for missing j) and
    write.table(df) has been improved for data frames df with a large
    number of columns.  (Thanks to Gabriel Becker's PR#18500,
    PR#18503 and discussants, prompted by a report from Toby Dylan
    Hocking on the R-devel mailing list.)
  * The matrix multiply operator %*% is now an S3 generic, belonging
    to new group generic matrixOps.  From Tomasz Kalinowski's
    contribution in PR#18483.
  * New function array2DF() to convert arrays to data frames,
    particularly useful for the list arrays created by tapply().
  DATES and TIMES:
  * On platforms where (non-UTC) datetimes before 1902 (or before
    1900 as with system functions on recent macOS) are guessed by
    extrapolating time zones from 1902-2037, there is a warning at
    the first use of extrapolation in a session.  (As all time zones
    post 2037 are extrapolation, we do not warn on those.)
  * (Platforms using --with-internal-tzone, including Windows and by
    default macOS). How years are printed in dates or date-times can
    be controlled by environment variable R_PAD_YEARS_BY_ZERO.  The
    default remains to pad to 4 digits by zeroes, but setting value
    no gives no padding (as used by default by glibc).
  * strftime() tries harder to determine the offset for the "%z"
    format, and succeeds on the mainstream R platforms.
  * strftime() has a limit of 2048 bytes on the string produced -
    attempting to exceed this is an error.  (Previously it silently
    truncated at 255 bytes.)
  * sessionInfo() records (and by default prints) the system time
    zone as part of the locale information.  Also, the source
    (system/internal) of the date-time conversion and printing
    functions.
  * Objects of class "POSIXlt" created in this version of R always
    have 11 components: component zone is always set, and component
    gmtoff is set for times in UTC and usually set on the (almost
    all) platforms which have C-level support, otherwise is NA.
  * There are comprehensive validity checks on the structure of
    objects of class "POSIXlt" when converting (including formatting
    and printing).  (This avoids mis-conversions of hand-crafted
    objects.)
  * There is some support for using the native date-time routines on
    macOS: this is only viable on recent versions (e.g. 12.6 and 13)
    and does get wrong some historical changes (before 1900, during
    WWII).  Use of --with-internal-tzone remains the default.
  * as.POSIXct(&lt;numeric&gt;) and as.POSIXlt(.) (without specifying
    origin) now work.  So does as.Date(&lt;numeric&gt;).
  * as.Date.POSIXct(., tz) now treats several tz values, notably
    "GMT" as equivalent to "UTC", proposed and improved by Michael
    Chirico and Joshua Ulrich in PR#17674.
  * Experimental balancePOSIXlt() utility allows using "ragged" and
    or out-of-range "POSIXlt" objects more correctly, e.g., in
    subsetting and subassignments.  Such objects are now documented.
    More experimentally, a "POSIXlt" object may have an attribute
    "balanced" indicating if it is known to be filled or fully
    balanced.
  * Functions axis.Date() and axis.POSIXct() are rewritten to gain
    better default tick locations and better default formats by using
    prettyDate(). Thanks to Swetlana Herbrandt.
  * The mapping of Windows' names for time zones to IANA's 'Olson'
    names has been updated.  When ICU is available (it is by
    default), it is used to get a mapping for the current region set
    in Windows.  This can be overridden by setting environment
    variable TZ to the desired Olson name - see OlsonNames() for
    those currently available.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 16
    and so packages that provide graphics devices should be
    reinstalled.
  * The grDevices and grid packages have new functions for rendering
    typeset glyphs, primarily: grDevices::glyphInfo() and
    grid::grid.glyph().
    Rendering of typeset glyphs is only supported so far on the
    Cairo-based graphics devices and on the pdf() and quartz()
    devices.
  * The defined behaviour for "clear" and "source" compositing
    operators (via grid::grid.group()) has been changed (to align
    better with simple interpretation of original Porter-Duff
    definitions).
  * Support for gradients, patterns, clipping paths, masks, groups,
    compositing operators, and affine transformations has been added
    to the quartz() device.
  INSTALLATION on a UNIX-ALIKE:
  * A system installation of generic LAPACK 3.10.0 or later will be
    preferred to the version in the R sources.
    configure option --with-lapack=no (equivalently --without-lapack)
    forces compilation of the internal LAPACK sources.
    If --with-lapack is not specified, a system liblapack is looked
    for and used if it reports version 3.10.0 or later and does not
    contain BLAS routines.
    Packages using LAPACK will need to be reinstalled if this changes
    to using an external library.
  * On aarch64 Linux platforms using GCC, configure now defaults to
  - fPIC (instead of -fpic), as desired in PR#18326.
  * configure now checks conversion of datetimes between POSIXlt and
    POSIXct around year 2020.  Failure (which has been seen on
    platforms missing tzdata) is fatal.
  * If configure option --with-valgrind-instrumentation is given
    value 1 or 2, option --with-system-valgrind-headers is now the
    default and ignored (with a warning).  It is highly recommended
    that the system headers are installed alongside valgrind: they
    are part of its packaging on some Linux distributions and
    packaged separately (e.g. in the valgrind-devel RPM) on others.
    configure will give a warning if they are not found.
    The system headers will be required in a future release of R to
    build with valgrind instrumentation.
  * libcurl 8.x is now accepted by configure: despite a change in
    major version number it changes neither API nor ABI.
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools43, an update of the Rtools42 toolchain.  It is
    based on gcc 12 and newer versions of MinGW-W64, binutils and
    libraries.  At this time R-devel can still be built using
    Rtools42 without changes, but when R-devel is installed via the
    installer, it will by default look for Rtools43.
  * Old make targets rsync-extsoft and 32-bit ones that are no longer
    needed have been removed.
  * Default builds (including for packages) no longer select C99.
    Thus the C standard used is the default for the compiler, which
    for the toolchain in Rtools43 is C17.  (This is consistent with
    Unix builds.)
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++17 where
    available (which it is on all currently checked platforms): if
    not C++14 or C++11 is used if available otherwise C++ is not
    supported.
  * USE_FC_LEN_T is the default: this uses the correct
    (compiler-dependent) prototypes for Fortran BLAS/LAPACK routines
    called from C/C++, and requires adjustment of many such calls -
    see 'Writing R Extensions' SS6.6.1.
  * There is initial support for C++23 as several compilers are now
    supporting -std=c++23 or -std=c++2b or similar.  As for C++20,
    there no additional configure checks for C++23 features beyond a
    check that the compiler reports a __cplusplus value greater than
    that in the C++20 standard.  C++ feature tests should be used.
  * There is support for a package to indicate the version of the C
    standard which should be used to compile it, and for the
    installing user to specify this.  In most cases R defaults to the
    C compiler's default standard which is C17 (a `bug-fix' of C11) -
    earlier versions of R or compilers may have defaulted to C99.
    Current options are:
    USE_C17 Use a standard that is at most C17.  The intention is to
    allow legacy packages to still be installed when later C
    standards become the default, including packages using new
    keywords as identifiers or with K&amp;R-style function
    declarations.  This will use C17 if available, falling back
    to C11.
    USE_C90 Use the C90 (aka C89) standard.  (As that standard did
    not require compilers to identify that version, all we can
    verify is that the compiler does not claim to be using a
    later standard.  It may accept C99 features - for example
    clang accepts // to make comments.)
    USE_C99 Use the C99 standard. This should be rarely needed - it
    avoids the few new features of C11/C17 which can be useful if
    a package assumes them if C17 is specified and they are not
    implemented.
    USE_C23 Use C23 (or in future, later).  Compiler/library support
    for C23 is still being implemented, but LLVM clang from
    15.0.0 and the upcoming GCC 13 have quite extensive support.
    These can be specified as part of the SystemRequirements field in
    the package's DESCRIPTION file or _via_ options --use-C17 and so
    on of R CMD INSTALL and R CMD SHLIB.
    For further details see "Writing R Extensions" SS1.2.5.
  * (Windows) A src/Makefile.ucrt or src/Makefile.win file is now
    included after R_HOME/etcR_ARCH/Makeconf and so no longer needs
    to include that file itself.  Installation of a package with such
    a file now uses a site Makevars file in the same way as a package
    with a src/Makevars.win file would.
  * configure is now passed crucial variables such as CC and CFLAGS
    in its environment, as many packages were not setting them (as
    documented in 'Writing R Extensions' SS1.2).
    This has most effect where configure is used to compile parts of
    the package - most often by cmake or libtool which obfuscate the
    actual compile commands used.
    Also used for configure.win and configure.ucrt on Windows.
  FORTRAN FLAGS:
  * The flag -fno-optimize-sibling-calls is no longer forced for
    gfortran 7 and later.  It should no longer be needed now using
    'hidden' character-length arguments when calling BLAS/LAPACK
    routines from C/C++ is the default even for packages.  (Unless
    perhaps packages call Fortran code from C/C++ without using R's
    headers and without allowing for these arguments.)
  C-LEVEL FACILITIES:
  * The deprecated S-compatibility macros DOUBLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * The deprecated legacy typedefs of Sint and Sfloat in header R.h
    are no longer defined, and that header no longer includes header
    limits.h from C nor climits from C++.
  * New macro CAD5R() is provided in Rinternals.h and used in a few
    places in the R sources.
  * ALTREP now supports VECSXP vectors. Contributed by Gabor Csardi
    in PR#17620.
  * The Rcomplex definition (in header R_ext/Complex.h) has been
    extended to prevent possible mis-compilation when interfacing
    with Fortran (PR#18430).  The new definition causes compiler
    warnings with static initializers such as {1, 2}, which can be
    changed to {.r=1, .i=2}.
    Using the new definition from C++ depends on compiler extensions
    supporting C features that have not been incorporated into the
    C++ standards but are available in g++ and clang++: this may
    result in C++ compiler warnings but these have been worked around
    for recent versions of common compilers (GCC, Apple/LLVM clang,
    Intel).
    It is intended to change the inclusion of header R_ext/Complex.h
    by other R headers, so C/C++ code files which make use of
    Rcomplex should include that header explicitly.
  UTILITIES:
  * R CMD check does more checking of package .Rd files, warning
    about invalid email addresses and (some) invalid URIs and noting
    empty \item labels in description lists.
  * R CMD check now also reports problems when reading package news
    in md (file NEWS.md) and (optionally) plain text (file NEWS)
    formats.
  * _R_CHECK_TIMINGS_ defaults to a value from the environment even
    for R CMD check --as-cran; this allows for exceptionally fast or
    slow platforms.
    It now applies to checking PDF and HTML versions of the manuals,
    and 'checking CRAN incoming feasibility'.
  * R CMD check can optionally (but included in --as-cran) check
    whether HTML math rendering _via_ KaTeX works for the package .Rd
    files.
  * Non-interactive debugger invocations can be trapped by setting
    the environment variable _R_CHECK_BROWSER_NONINTERACTIVE_ to a
    true value.  This is enabled by R CMD check --as-cran to detect
    the use of leftover browser() statements in the package.
  * The use of sprintf and vsprintf from C/C++ has been deprecated in
    macOS 13 and is a known security risk.  R CMD check now reports
    (on all platforms) if their use is found in compiled code:
    replace by snprintf or vsnprintf respectively. [*NB:* whether
    such calls get compiled into the package is platform-dependent.]
  * Where recorded at installation, R CMD check reports the C and
    Fortran compilers used to build R.
    It reports the OS in use (if known, as given by osVersion) as
    well as that R was built for.
    It notes if a C++ standard was specified which is older than the
    current default: many packages have used C++11 to mean 'not
    C++98' - as C++11 is the minimum supported since R 4.0.0, that
    specification can probably be removed.
  * R CMD INSTALL reports the compilers (and on macOS, the SDK) used,
    and this is copied to the output of R CMD check.
    Where a C++ standard is specified, it is reported.
  * R CMD check's 'checking compilation flags in Makevars' has been
    relaxed to accept the use of flags such as -std=f2008 in
    PKG_FFLAGS.
  * tools::buildVignettes() has a new argument skip, which is used by
    R CMD check to skip (and note) vignettes with unavailable
    \VignetteDepends (PR#18318).
  * New generic .AtNames() added to enable class-specific completions
    after @. The formerly internal function findMatches() is now
    exported, mainly for use in methods for .DollarNames() and
    .AtNames().
  DEPRECATED AND DEFUNCT:
  * default.stringsAsFactors() is defunct.
  * Calling as.data.frame.&lt;class&gt;() directly (for 12 atomic classes)
    is going to be formally deprecated, currently activated by
    setting the environment variable
    _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ to non-empty, which also
    happens in R CMD check --as-cran.
  BUG FIXES:
  * Hashed environments with sizes less than 5 can now grow.
    (Reported to R-devel by Duncan Garmonsway.)
  * as.character(&lt;Rd&gt;, deparse = TRUE) failed to re-escape curly
    braces in LaTeX-like text.  (Reported by Hadley Wickham in
    PR#18324.)
  * library() now passes its lib.loc argument when requiring Depends
    packages; reported (with fix) in PR#18331 by Mikael Jagan.
  * R CMD Stangle: improved message about 'Output' files.
  * head(x, n) and tail(x, n) now signal an error if n is not
    numeric, instead of incidentally "working" sometimes returning
    all of x.  Reported and discussed by Colin Fay, in PR#18357.
  * The "lm" method for summary() now gives the correct F-statistic
    when the model contains an offset.  Reported in PR#18008.
  * C() and `contrasts&lt;-`() now preserve factor level names when
    given a function object (as opposed a function name which did
    preserve names). Reported in PR#17616.
  * c(a = 1, 2)[[]] no longer matches 2 but rather signals a
    _classed_ error.  Reported and analysed by Davis Vaughan in
    PR#18367, a duplicate of PR#18004, by Jan Meis et al.  For
    consistency, NULL[[]] is also erroneous now.  x[[]] &lt;- v gives an
    error of the same class "MissingSubscriptError".
  * The relist() function of utils now supports NULL elements in the
    skeleton (PR#15854).
  * ordered(levels = *) (missing x) now works analogously to factor(,
    ordered=TRUE); reported (with fix) by Achim Zeileis in PR#18389.
  * User-defined Rd macro definitions can now span multiple lines,
    thanks to a patch from Duncan Murdoch. Previously, the Rd parser
    silently ignored everything after the first line.
  * Plain-text help (tools::Rd2txt()) now preserves an initial blank
    line for text following description list items.
  * tools::Rd2HTML() and tools::Rd2latex() no longer split \arguments
    and \value lists at Rd comments.
  * tools::Rd2latex() now correctly handles optional text outside
    \items of argument lists as well as bracketed text at the
    beginning of sections, e.g., \value{[NULL]}.
  * as.character(&lt;POSIXt&gt;) now behaves more in line with the methods
    for atomic vectors such as numbers, and is no longer influenced
    by options().  Ditto for as.character(&lt;Date&gt;).  The
    as.character() method gets arguments digits and OutDec with
    defaults _not_ depending on options().  Use of as.character(*,
    format = .) now warns.
  * Similarly, the as.character.hexmode() and *.octmode() methods
    also behave as good citizen methods and back compatibility option
    keepStr = TRUE.
  * The as.POSIXlt(&lt;POSIXlt&gt;) and as.POSIXct(&lt;POSIXct&gt;) default
    methods now do obey their tz argument, also in this case.
  * as.POSIXlt(&lt;Date&gt;) now does apply a tz (time zone) argument, as
    does as.POSIXct(); partly suggested by Roland Fuss on the R-devel
    mailing list.
  * as.Date.POSIXlt(x) now also works when the list components are of
    unequal length, aka "partially filled" or "ragged".
  * expand.model.frame() looked up variables in the wrong environment
    when applied to models fitted without data.  Reported in
    PR#18414.
  * time() now (also) uses the ts.eps = getOption("ts.eps") argument
    and thus by default rounds values very close to the start (or
    end) of a year.  Based on a proposal by Andre"i V. Kostyrka on
    R-help.
  * Printing of a factanal() result with just one factor and sort =
    TRUE now works regularly, fixing PR#17863 by Timothy Bates,
    thanks to the 'R Contributors' working group.
  * Printing 0-length objects of class "factor", "roman", "hexmode",
    "octmode", "person", "bibentry", or "citation" now prints
    something better, one of which fixes PR#18422, reported by
    Benjamin Feakins.
  * Sys.timezone() queries timedatectl only if systemd is loaded;
    addressing a report by Jan Gorecki in PR#17421.
  * The formula method of cor.test() had scoping problems when
    environment(formula) was not the calling environment; reported
    with a patch proposal by Mao Kobayashi in PR#18439.
  * attach() of an environment with active bindings now preserves the
    active bindings.  Reported by Kevin Ushey in PR#18425.
  * BLAS detection now works also with system-provided libraries not
    available as regular files.  This fixes detection of the
    Accelerate framework on macOS since Big Sur.  Reported by David
    Novgorodsky.
  * download.file() gives a helpful error message in case of an
    invalid download.file.method option, thanks to Colin Fay's report
    in PR#18455.
  * Sporadic crashes of Rterm when using completion have been fixed.
  * Rprof() is now more reliable.  A livelock in thread
    initialization with too short sampling interval has been fixed on
    macOS.  A deadlock in using the C runtime has been fixed on
    Windows.  A potential deadlock has been prevented on Unix.
  * Cursor placement in Rgui now works even after a fixed-width font
    is selected.
  * Mandatory options (options()) are now set on startup so that
    saving and restoring them always works (PR#18372).
  * Package installation, R CMD INSTALL or install.packages(*), now
    parses each of the &lt;pkg&gt;/R/*.R files individually instead of
    first concatenating and then parse()ing the large resulting file.
    This allows parser or syntax errors to be diagnosed with correct
    file names and line numbers, thanks to Simon Dedman's report and
    Bill Dunlap's patch in PR#17859.
    This _does_ require syntactically self contained R source files
    now, fixing another inadvertent bug.
  * predict.lm(&lt;model with offset&gt;) now finds the offset in the
    correct environment, thanks to Andr'e Gillibert's report and patch
    in PR#18456.
  * getInitial(&lt;formula&gt;) now finds the selfStart model in the
    correct environment.  (Reported by Ivan Krylov in PR#18368.)
  * Fix for possible segfault when using recently-added graphics
    features, such as gradients, clipping paths, masks, and groups
    with pdf(file=NULL).
  * class(m) &lt;- class(m) no longer changes a matrix m by adding a
    class _attribute_.
  * packageDate(pkg) now only warns once if there is no pkg.
  * When ts() creates a multivariate time series, "mts", it also
    inherits from "array" now, and is.mts() is documented _and_
    stricter.
  * Rd2txt() now preserves line breaks of \verb Rd content and from
    duplicated \cr.  The former also fixes the rendering of verbatim
    output from Rd \Sexpr in plain-text help.
  * uniroot(f, interval) should no longer wrongly converge _outside_
    the interval in some cases where abs(f(x)) == Inf for an x at the
    interval boundary, thanks to posts by Ben Bolker and Serguei
    Sokol on R-devel.
  * Vectorized alpha handling in palette functions such as in gray(),
    rainbow(), or hcl.colors() works correctly now, thanks to Achim
    Zeileis' report and patch in PR#18476.
  * Formatting and print()ing of bibentry objects has dropped the
    deprecated citation.bibtex.max argument, such that the bibtex
    argument's default for print.bibentry() depends directly on the
    citation.bibtex.max option, whereas in format.bibentry() the
    option no longer applies.
  * Attempting to use a character string naming a foreign function
    entry point in a foreign function call in a package will now
    signal an error if the packages has called R_forceSymbols to
    specify that symbols must be used.
  * An error in table() could permanently set options(warn=2)
    promoting all subsequent warnings to errors.
  * The sigma() function gave misleading results for binary GLMs.  A
    new method for objects of class "glm" returns the square root of
    the estimate of the dispersion parameter using the same
    calculation as summary.glm().
  * bs() and ns() in the (typical) case of automatic knot
    construction, when some of the supposedly inner knots coincide
    with boundary knots, now moves them inside (with a warning),
    building on PR#18442 by Ben Bolker.
  * R CMD on Windows now skips the site profile with --no-site-file
    and --vanilla even when R_PROFILE is set (PR#18512, from Kevin
    Ushey).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1686916800">- CHANGES IN R 4.3.1:
  C-LEVEL FACILITIES:
  * The C-level API version of R's integrate(), Rdqags() in Applic.h,
    now returns the correct number of integrand evaluations neval,
    fixing PR#18515 reported and diagnosed by Stephen Wade.
  * The C prototypes for LAPACK calls dspgv and dtptrs in
    R_exts/Lapack.h had one too many and one too few character length
    arguments - but this has not caused any known issues. To get the
    corrected prototypes, include
    [#]include &lt;Rconfig.h&gt; // for PR18534fixed
    [#]ifdef PR18534fixed
    [#] define usePR18534fix 1
    [#]endif
    [#]include &lt;R_exts/Lapack.h&gt;
    in your C/C++ code (PR#18534).
  INSTALLATION:
  * Many of the checks of esoteric Internet operations and those
    using unreliable external sites have been moved to a new target
    that is not run by default and primarily intended for the core
    developers.  To run them use
    cd tests; make test-Internet-dev
  BUG FIXES:
  * .S3methods(), typically called from methods(), again marks
    methods from package base as visible.
    Also, the visibility of non-base methods is again determined by
    the method's presence in search().
  * tools::Rdiff() is now more robust against invalid strings, fixing
    installation tests on Windows without Rtools installed
    (PR#18530).
  * Fix (new) bug in hcl.colors(2, *), by Achim Zeileis (PR#18523).
  * head(., &lt;illegal&gt;) and tail(..) now produce more useful "Error in
    ...." error messages, fixing PR#18362.
  * Package code syntax on Windows is checked in UTF-8 when UTF-8 is
    the native encoding.
  * na.contiguous(x) now also returns the first run, when it is at
    the beginning and there is a later one of the same length;
    reported to R-devel, including a fix, by Georgi Boshnakov.
    Further, by default, it modifies only an existing attr(*,"tsp")
    but otherwise no longer sets one.
  * chol(&lt;not pos.def&gt;, pivot = &lt;T|F&gt;) now gives a correct error or
    warning message (depending on pivot), thanks to Mikael Jagan's
    (PR#18541).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1699012800">- CHANGES IN R 4.3.2:
  NEW FEATURES:
  * The default initialization of the "repos" option from the
    repositories file at startup can be skipped by setting
    environment variable R_REPOSITORIES to NULL such that
    getOption("repos") is empty if not set elsewhere.
  * qr.X() is now an implicit S4 generic in methods.
  * iconv(to = "ASCII//TRANSLIT") is emulated using substitution on
    platforms which do not support it (notably Alpine Linux).  This
    should give a human-readable conversion in ASCII on all platforms
    (rather than NA_character_).
  * trans3d() gains options continuous and verbose addressing the
    problem of possible "wrap around" when projecting too long
    curves, as reported by Achim Zeileis in PR#18537.
  * tools::showNonASCII() has been rewritten to work better on macOS
    14 (which has a changed implementation of iconv()).
  * tiff(type = "quartz") (the default on macOS) now warns if
    compression is specified: it continues to be ignored.
  INSTALLATION on a UNIX-ALIKE:
  * There is some support for building with Intel's LLVM-based
    compilers on x86_64 Linux, such as (C) icx, (C++) ipcx and
    (Fortran) ifx from oneAPI 2023.x.y.
  * There is support for using LLVM's flang-new as the Fortran
    compiler from LLVM 16.0.x (preferably 17.0.0 or later).
  UTILITIES:
  * R CMD check reports the use of the Fortran 90 random number
    generator RANDOM_NUMBER() and the subroutines to initialize it.
    'Writing R Extensions' has example code to use R's RNGs from
    Fortran.
  BUG FIXES:
  * substr(x, n, L) &lt;- cc now works (more) correctly for multibyte
    UTF-8 strings x when L &gt; nchar(x), thanks to a report and patch
    by 'Architect 95'.
  * contrib.url(character()) now returns 0-length character() as
    documented, which also avoids spurious warnings from
    available.packages() et al. in the edge case of an empty vector
    of repository URLs.
  * readChar(., 4e8) no longer fails, thanks to Kodi Arfer's report
    (PR#18557).
  * lapply(&lt;list&gt;, as.data.frame) no longer warns falsely for some
    base vector components.
  * Communication between parent and child processes in the multicore
    part of parallel could fail on platforms that do not support an
    arbitrarily large payload in system functions read()/write() on
    pipes (seen on macOS where a restriction to INT_MAX bytes is
    documented, without doing a partial read unlike Linux). The
    payload is now split into 1Gb chunks to avoid that problem.
    (PR#18571)
  * qqplot(x,y, conf.level=.) gives better confidence bounds when
    length(x) != length(y), thanks to Alexander Ploner's report and
    patch proposal (PR#18557).
  * norm(&lt;0-length&gt;, "2") now gives zero instead of an error, as all
    the other norm types, thanks to Mikael Jagan's PR#18542.
  * Build-stage Rd macros \packageAuthor and \packageMaintainer now
    process Authors@R, fixing NA results when the package DESCRIPTION
    omits Author and Maintainer fields.
  * Formatting and printing complex numbers could give things like
    0.1683-0i because of rounding error: -0i is now replaced by +0i.
  * postscript() refused to accept a title comment containing the
    letter "W" (PR#18599).
  * isoreg(c(1,Inf)) signals an error instead of segfaulting, fixing
    PR#18603.
  * tiff(type = "Xlib") was only outputting the last page of
    multi-page plots.
  * tools::latexToUtf8() again knows about \~{n} and other letters
    with tilde, fixing a regression in R 4.3.0, and about \^{i} as an
    alternative to \^{\i} (similarly with other accents).
    Furthermore, LaTeX codes for accented I letters are now correctly
    converted, also fixing related mistakes in
    tools::encoded_text_to_latex().
  * tar(*, tar = "internal") no longer creates out-of-spec tar files
    in the very rare case of user or group names longer than 32
    bytes, fixing PR#17871 with thanks to Ivan Krylov.
  * When using the "internal" timezone datetime code, adding a
    fraction of a second no longer adds one second, fixing PR#16856
    from a patch by Ivan Krylov.
  * tools::checkRd() no longer produces spurious notes about
    "unnecessary braces" from multi-line Rd results of \Sexpr macros.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1709208000">- CHANGES IN R 4.3.3:
  NEW FEATURES:
  * iconv() now fixes up variant encoding names such as "utf8"
    case-insensitively.
  DEPRECATED AND DEFUNCT:
  * The legacy encoding = "MacRoman" is deprecated in pdf() and
    postscript(): support was incomplete in earlier versions of R.
  BUG FIXES:
  * Arguments are now properly forwarded to methods on S4 generics
    with ... in the middle of their formal arguments. This was broken
    for the case when a method introduced an argument but did not
    include ... in its own formals. Thanks to Herv'e Pag`es for the
    report PR#18538.
  * Some invalid file arguments to pictex(), postscript() and xfig()
    opened a file called NA rather than throw an error.  These
    included postscript(NULL) (which some people expected to work
    like pdf(NULL)).
  * Passing filename = NA to svg(), cairo_pdf(), cairo_ps() or the
    Cairo-based bitmap devices opened a file called NA: it now throws
    an error.
  * quartz(file = NA) opened a file called NA, including when used as
    a Quartz-based bitmap device.  It now gives an error.
  * rank(&lt;long vector&gt;) now works, fixing PR#18617, thanks to Ilia
    Kats.
  * seq.int() did not adequately check its length.out argument.
  * match(&lt;POSIXct&gt;, .) is correct again for differing time zones,
    ditto for "POSIXlt", fixing PR#18618 reported by Bastian Klein.
  * drop.terms(*, dropx = &lt;0-length&gt;) now works, fixing PR#18563 as
    proposed by Mikael Jagan.
  * drop.terms(*) keeps + offset(.) terms when it should, PR#18565,
    and drop.terms() no longer makes up a response, PR#18566, fixing
    both bugs thanks to Mikael Jagan.
  * getS3method("t", "test") no longer finds the t.test() function,
    fixing PR#18627.
  * pdf() and postscript() support for the documented Adobe encodings
    "Greek" and "Cyrilllic" was missing (although the corresponding
    Windows' codepages could be used).
  * Computations of glyph metric information for pdf() and
    postscript() did not take into account that transliteration could
    replace one character by two or more (only seen on macOS 14) and
    typically warned that the information was not known.
  * rank(x) no longer overflows during integer addition, when
    computing rank average for largish but not-yet long vector x,
    fixing PR#18630, thanks to Ilia Kats.
  * list.files() on Windows now returns also files with names longer
    that 260 bytes (the Windows limit is 260 characters).
    Previously, some file names particularly with 'East Asian'
    characters were omitted.
  * cov2cor(&lt;0 x 0&gt;) now works, fixing PR#18423 thanks to Mikael
    Jagan and Elin Waring.
  * cov2cor(&lt;negative diagonal&gt;) and similar now give one warning
    instead of two, with better wording, fixing PR#18424 thanks to
    Mikael Jagan.
  * tools:: startDynamicHelp() now ensures port is in proper range,
    fixing PR#18645.
  * pbeta(x, a,b) is correct now for x=0 or 1 in the boundary cases
    where a or b or both are 0, fixing PR#18672 thanks to Michael
    Fay.
  * pmatch(x, table) for large table, also called for data frame row
    selection, dfrm[nm, ], is now interruptible, fixing PR#18656.
  * predict(&lt;rank-deficient lm&gt;, newdata=*) fix computing of nbasis,
    see Russ Lenth's comment 29 in PR#16158.
  * Added a work-around for a bug in macOS 14.3.1 and higher which
    prevents R plots in the Quartz Cocoa device from updating on
    screen.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1713960000">- CHANGES IN R 4.4.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Startup banners, R --version, sessionInfo() and R CMD check no
    longer report (64-bit) as part of the platform as this is almost
    universal - the increasingly rare 32-bit platforms will still
    report (32-bit).
    On Windows, ditto for window titles.
  * is.atomic(NULL) now returns FALSE, as NULL is not an atomic
    vector.  Strict back-compatibility would replace is.atomic(foo)
    by (is.null(foo) || is.atomic(foo)) but should happen only
    sparingly.
  NEW FEATURES:
  * The confint() methods for "glm" and "nls" objects have been
    copied to the stats package.  Previously, they were stubs which
    called versions in package MASS. The MASS namespace is no longer
    loaded if you invoke (say) confint(glmfit).  Further, the "glm"
    method for profile() and the plot() and pairs() methods for class
    "profile" have been copied from MASS to stats.  (profile.nls()
    and plot.profile.nls() were already in stats.)
  * The confint() and profile methods for "glm" objects have gained a
    possibility to do profiling based on the Rao Score statistic in
    addition to the default Likelihood Ratio. This is controlled by a
    new test = argument.
  * The pairs() method for "profile" objects has been extended with a
    which = argument to allow plotting only a subset of the
    parameters.
  * The "glm" method for anova() computes test statistics and
    p-values by default, using a chi-squared test or an F test
    depending on whether the dispersion is fixed or free.  Test
    statistics can be suppressed by giving argument test a false
    logical value.
  * In setRepositories() the repositories can be set using their
    names via name = instead of index ind =.
  * methods() and .S3methods() gain a all.names option for the (rare)
    case where functions starting with a . should be included.
  * Serializations can now be interrupted (e.g., by Ctrl-C on a
    Unix-alike) if they take too long, e.g., from save.image(),
    thanks to suggestions by Ivan Krylov and others on R-devel.
  * New startup option --max-connections to set the maximum number of
    simultaneous connections for the session.  Defaults to 128 as
    before: allowed values up to 4096 (but resource limits may in
    practice restrict to smaller values).
  * R on Windows (since Windows 10 2004) now uses the new Segment
    Heap allocator. This may improve performance of some
    memory-intensive applications.
  * When R packages are built, typically by R CMD build &lt;pkg&gt;, the
    new --user=&lt;build_user&gt; option overrides the (internally
    determined) user name, currently Sys.info()["user"] or LOGNAME.
    This is a (modified) fulfillment of Will Landau's suggestion in
    PR#17530.
  * tools::testInstalledBasic() gets new optional arguments outDir
    and testSrcdir, e.g., allowing to use it in a &lt;builddir&gt; !=
    &lt;srcdir&gt; setup, and in standard "binary" Windows installation
  * if* a source tests/ folder is present.
  * range(&lt;DT_with_Inf&gt;, finite = TRUE) now work for objects of class
    "Date", "POSIXct", and "POSIXlt" with infinite entries,
    analogously to range.default(), as proposed by Davis Vaughan on
    R-devel.  Other range()-methods can make use of new function
    .rangeNum().
  * New .internalGenerics object complementing .S3PrimitiveGenerics,
    for documentation and low-level book-keeping.
  * grid() now invisibly returns the x- and y- coordinates at which
    the grid-lines were drawn.
  * norm(., type) now also works for complex matrices.
  * kappa(., exact = TRUE, norm = *) now works for all norms and also
    for complex matrices.  In symmetric / triangular cases, the new
    argument uplo = "U" | "L" allows the upper or lower triangular
    part to be specified.
  * memDecompress(type = "unknown") recognizes compression in the
    default 'zlib' format as used by memCompress(type = "gzip").
  * memCompress() and memDecompress() will use the libdeflate library
    (&lt;https://github.com/ebiggers/libdeflate&gt;) if installed.  This
    uses the same type of compression for type = "gzip" but is 1.5-2x
    faster than the system libz library on some common platforms: the
    speed-up may depend on the library version.
  * diff() for objects of class "Date", "POSIXct", and "POSIXlt"
    accepts a units argument passed via ....
  * Dynamic help now does a much better job of rendering package
    DESCRIPTION metadata.
  * Rprof() gains an event argument and support for elapsed (real)
    time profiling on Unix (PR#18076).
  * filled.contour() gains a key.border argument.
  * tools::update_pkg_po() gets arguments pot_make and mo_make for
    _not_ re-making the corresponding files, and additionally a
    verbose argument.
  * Hexadecimal string colour specifications are now accepted in
    short form, so, for example, we can use "#123", which is
    equivalent to "#112233".
    Thanks to MikeFC for the original idea and Ella Kaye, Malcolm
    Barrett, George Stagg, and Hanne Oberman for the patch.
  * Plain-text help shows \var markup by angle brackets.
  * The new experimental primitive function declare() is intended to
    eventually allow information about R code to be communicated to
    the interpreter, compiler, and code analysis tools. The syntax
    for declarations is still being developed.
  * Functions psmirnov(), qsmirnov() and rsmirnov() in package stats
    have had argument two.sided renamed to alternative, to take into
    account that the permutation distributions of the one-sided
    statistics can be different in the case of ties.  Consequence of
    PR#18582.
  * sort() is now an implicit S4 generic in methods.
  * Formatting and printing, format(z), print(z), of complex vectors
    z no longer zap relatively small real or imaginary parts to zero,
    fixing PR#16752.  This is an API change, as it was documented
    previously to round real and imaginary parts together on purpose,
    producing nicer looking output.  As mentioned, e.g. in the PR,
    this change is compatible with many other "R-like" programming
    environments.
    We have simplified the internal code and now basically format the
    real and imaginary parts independently of each other.
  * New experimental functions Tailcall() and Exec() to support
    writing stack-space-efficient recursive functions.
  * Where characters are attempted to be plotted by pdf(),
    postscript() and xfig() which are not in the selected 8-bit
    character set (most often Latin-1) and the R session is using a
    UTF-8 locale, the warning messages will show the UTF-8 character
    rather than its bytes and one dot will be substituted per
    character rather than per byte.  (Platforms whose iconv() does
    transliteration silently plot the transliteration.)
    In a UTF-8 locale some transliterations are now done with a
    warning (e.g., dashes and Unicode minus to hyphen, ligatures are
    expanded, permille (‰) is replaced by o/oo), although the OS may
    have got there first.  These are warnings as they will continue
    to be replaced by dots in earlier versions of R.
  * The matrix multiplication functions crossprod() and tcrossprod()
    are now also primitive and S3 generic, as %*% had become in R
    4.3.0.
  * source() and example() have a new optional argument catch.aborts
    which allows continued evaluation of the R code after an error.
  * The non-Quartz tiff() devices allow additional types of
    compression if supported by the platform's libtiff library.
  * The list of base and recommended package names is now provided by
    tools::standard_package_names().
  * cairo_pdf() and cairo_ps() default to onefile = TRUE to closer
    match pdf() and postscript().
  * New option catch.script.errors provides a documented way to catch
    errors and then continue in non-interactive use.
  * L %||% R newly in base is an expressive idiom for the phrases
    if(!is.null(L)) L else R or if(is.null(L)) R else L.
  * The return value from warnings() now always inherits from
    "warnings" as documented, now also in the case of no warnings
    where it previously returned NULL.
  * as.complex("1i") now returns 0 + 1i instead of NA with a warning.
  * z &lt;- c(NA, 1i) now keeps the imaginary part Im(z[1]) == 0, no
    longer coercing to NA_complex_.  Similarly, cumsum(z) correctly
    sums real and imaginary parts separately, i.e., without
    "crosstalk" in case of NAs.
  * On Alpine Linux iconv() now maps "latin2", "latin-2", "latin9"
    and "latin-9" to encoding names the OS knows about
    (case-insensitively).
  * iconv(sub = "Unicode") now always zero-pads to four (hex) digits,
    rather than to 4 or 8.  (This seems to have become the convention
    once Unicode restricted the number of Unicode points to 2^21 - 1
    and so will never need more than 6 digits.)
  * NCOL(NULL) now returns 0 instead of 1, for consistency with
    cbind().
  * The information for the Euro glyph missing from the Adobe .afm
    files for the Courier, Helvetica and Times families has been
    copied from their URW equivalents - this will improve vertical
    centring in the pdf() and postscript() devices.
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.12.0.  The changes are almost entirely cosmetic.
  * The included LAPACK sources have been updated to version 3.12.0
    and some further double-complex routines added.
  * There are new font families for the 2014--5 URW 2.0 fonts (see
    ?pdf) which are included in recent versions of Ghostscript.
    These have font widths for most Greek glyphs and a few others
    which were missing from the original versions (whose font
    families remain available for reproducibility, although
    Ghostscript-based viewers will render using the 2.0 versions).
  * Improve the large-n efficiency of as.matrix(&lt;dist&gt;), thanks an R
    contributors effort, notably by Tim Taylor and Heather Turner,
    see PR#18660.
  * The default and numeric methods of all.equal() get a check.class
    option.
  * zapsmall() gets new optional arguments, function mFUN and min.d,
    for extra flexibility; fulfills a wish in PR#18199.  Also, it is
    now an implicit S4 generic in package methods.
  * The Rd filter for aspell() gains an ignore argument.
  * New generic function sort_by(), primarily useful for the
    data.frame method which can be used to sort rows of a data frame
    by one or more columns.
  * The icence headers for the RPC code in src/extra/xdr have been
    updated to use the GPL-compatible licence published by Oracle
    America in 2010.
  * New function pkg2HTML() in tools to create single-page HTML
    reference manuals for R packages.
  * The byte code evaluator now uses less C stack space for recursive
    calls to byte-compiled functions. It also makes more of an effort
    to avoid allocations for scalar return values.
  * New completion option backtick (disabled by default) allows
    non-syntactic completions to be wrapped in backquotes. This is
    currently only useful for Jupyter notebooks via the IRkernel
    package, and may cause problems for other backends.
  INSTALLATION:
  * The parser has been updated to work with bison 3.8.2, which is
    now used for the pre-generated parsers in gram.c, file.c, and
    gramRd.c. A few parser error messages have changed, which may
    affect code that relies on exact messages.
  INSTALLATION on a UNIX-ALIKE:
  * System valgrind headers are now required to use configure option
  - -with-valgrind-instrumentation with value 1 or 2.
  * configure will warn if it encounters a 32-bit build, as that is
    nowadays almost untested.
  * Environment variable R_SYSTEM_ABI is no longer used and so no
    longer recorded in etc/Renviron (it was not on Windows and was
    only ever used when preparing package tools).
  * If the libdeflate library and headers are available, libdeflate
    rather than libz is used to (de)compress R objects in lazy-load
    databases.  Typically tasks spend up to 5% of their time on such
    operations, although creating lazy-data databases is one of the
    exceptions.
    This can be suppressed if the library is available by the
    configure option --without-libdeflate-compression.
  * configure option --enable-lto=check has not worked reliably since
    2019 and has been removed.
  * The minimum autoconf requirement for a maintainer build has been
    increased to autoconf 2.71.
    It is intended to increase this to 2.72 for R 4.5.0: the
    distributed configure file was generated using 2.72.
  * The minimum version requirement for an external LAPACK has been
    reduced to 3.9.0.
  * No default C++ compiler is set if no C++17 compiler is detected:
    there is no longer an automatic fallback to C++14 or C++11.
    Compilers from the last five years should have sufficient
    support: for others macros CXX and CXXSTD can be set in file
    config.site to provide a fallback if needed.
    The Objective-C++ compiler now by default uses the standard
    selected by R for C++ (currently C++17) rather than the default
    standard for the C++ compiler (which on macOS is still C++98).
  INSTALLATION on macOS:
  * A new configure option --with-newAccelerate makes use of Apple's
    'new' BLAS / LAPACK interfaces in their Accelerate framework.
    Those interfaces are only available in macOS 13.3 or later, and
    building requires SDK 13.3 or later (from the Command Line Tools
    or Xcode 14.3 or later).
    By default the option uses new Accelerate for BLAS calls: to also
    use it for LAPACK use option --with-newAccelerate=lapack.  The
    later interfaces provide LAPACK 3.9.1 rather than 3.2.1: 3.9.1 is
    from 2021-04 and does not include the improved algorithms
    introduced in LAPACK 3.10.0 (including for BLAS calls).
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools44, an update of the Rtools43 toolchain.  It is
    based on GCC 13 and newer versions of MinGW-W64, binutils and
    libraries (targeting 64-bit Intel CPUs).  R-devel can no longer
    be built using Rtools43 without changes.
  * Rtools44 has experimental support for 64-bit ARM (aarch64) CPUs
    _via_ the LLVM 17 toolchain using lld, clang/flang-new and
    libc++.
  UTILITIES:
  * R CMD check notes when S4-style exports are used without
    declaring a strong dependence on package methods.
  * tools::checkRd() (used by R CMD check) detects more problems with
    \Sexpr-based dynamic content, including bad nesting of \Sexprs
    and invalid arguments.
  * tools::checkRd() now reports Rd titles and section names ending
    in a period; this is ignored by R CMD check unless environment
    variable _R_CHECK_RD_CHECKRD_MINLEVEL_ is set to -5 or smaller.
  * R CMD check now notes Rd files without an \alias, as long
    documented in 'Writing R Extensions' §1.3.1.  The check for a
    missing \description has been moved from tools::checkRd() to
    tools::checkRdContents().
  * R CMD check now visits inst/NEWS.Rd and OS-specific man
    subdirectories when checking Rd files.
  * tools::checkDocFiles() and tools::checkRdContents() now also
    check internal Rd files by default, but "specially" (ignoring
    missing documentation of arguments).
  * R CMD Rdiff gets option --useEx.
  * R CMD check now warns on non-portable uses of Fortran KIND such
    as INTEGER(KIND=4) and REAL(KIND=8).
    To see the failing lines set environment variable
    _R_CHECK_FORTRAN_KIND_DETAILS_ to a true value.
  * When checking Rd files, R CMD check now notes some of the "lost
    braces" that tools::checkRd() finds.  Typical problems are Rd
    macros missing the initial backslash (e.g., code{...}), in-text
    set notation (e.g., {1, 2}, where the braces need escaping), and
    \itemize lists with \describe-style entries of the form
    \item{label}{description}.
  * R CMD INSTALL (and hence check) will compile C++ code with
  - DR_NO_REMAP if environment variable _R_CXX_USE_NO_REMAP_ is set
    to a true value.  It is planned that this will in future become
    the default for compiling C++.
  * The new built-in Rd macro \dontdiff{} can be used to mark example
    code whose output should be ignored when comparing check output
    to reference output (tests/Examples/&lt;pkg&gt;-Ex.Rout.save).  The
    \dontdiff tag, like \donttest, is _not_ shown on the rendered
    help page, so provides a clean alternative to ##
    IGNORE_RDIFF_(BEGIN|END) comments.
  * R CMD build when there is no NAMESPACE, now uses the recommended
    exportPattern("^[^.]"), instead of exporting everything.
  * R CMD check now warns about non-ASCII characters in the NAMESPACE
    file (in addition to R files). Such packages are not portable and
    may fail to install on some platforms.
  C-LEVEL FACILITIES:
  * Headers R_ext/Applic.h and R-ext/Linpack.h used to include
    R_ext/BLAS.h although this was undocumented and unneeded by their
    documented entry points.  They no longer do so.
  * New function R_missing(), factored out from do_missing(), used to
    fix PR#18579.
  * SEXP type S4SXP has been renamed to OBJSXP to support
    experimenting with alternative object systems.  The S4SXP value
    can still be used in C code but is now deprecated.  Based on
    contributions from the R Consortium's Object-Oriented Programming
    Working Group.
  * New function pow1p(x,y) for accurate (1+x)^y.
  * mkCharLenCE was incorrectly documented to take a size_t length
    but was implemented with int (and character strings in R are
    limited to 2^31 - 1 bytes).
  DEPRECATED AND DEFUNCT:
  * data() no longer handles zipped data from long-defunct (since R
    2.13.0) --use-zip-data installations.
  * The legacy graphics devices pictex() and xfig() are now
    deprecated.  They do not support recent graphics enhancements and
    their font handling is rudimentary. The intention is to retain
    them for historical interest as long as they remain somewhat
    functional.
  * Support for encoding = "MacRoman" has been removed from the pdf()
    and postscript() devices - this was a legacy encoding supporting
    classic macOS up to 2001 and no longer has universal libiconv
    support.
  * is.R() is deprecated as no other S dialect is known to be in use
    (and this could only identify historical dialects, not future
    ones).
    Further information on calls can be obtained by setting the
    environment variable _R_DEPRECATED_IS_R_ to error which turns the
    deprecation warning into an error and so by default gives a
    traceback.  (This is done by R CMD check --as-cran.)
  * UseMethod() no longer forwards local variables assigned in the
    generic function into method call environments before evaluating
    the method body. This makes method calls behave more like
    standard function calls and makes method code easier to analyze
    correctly.
  * The twelve as.data.frame.&lt;class&gt;() methods which were deprecated
    only via _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ and in R CMD
    check --as-cran are formally deprecated now in favour of calling
    as.data.frame() or as.data.frame.vector().  The deprecation
    "check" now works also when as.data.frame() is S4 generic thanks
    to Ivan Krylov.
  * The default method for the directional comparison operators &lt;, &gt;,
    &lt;=, and &gt;= now signals an error when one of the operands is a
    language object, i.e. a symbol or a call.
  * For terms.formula(), deprecate abb and neg.out arguments
    _formally_ in addition to just documenting it.
  BUG FIXES:
  * The methods package is more robust to not being attached to the
    search path.  More work needs to be done.
  * pairwise.t.test() misbehaved when subgroups had 0 DF for
    variance, even with pool.sd = TRUE.  (PR#18594 by Jack Berry).
  * Probability distribution functions [dpq]&lt;distrib&gt;(x, *), but also
    bessel[IKJY](x, .) now consistently preserve attributes(x) when
    length(x) == 0, e.g., for a 2 x 0 matrix, thanks to Karolis
    Koncevičius' report PR#18509.
  * Group "Summary" computations such as sum(1:3, 4, na.rm = 5, NA,
    7, na.rm = LL) now give an error instead of either 17 or NN for
    LL true or false, as proposed by Ivan Krylov on the R-devel
    mailing list.  (This also means it is now an error to specify
    na.rm more than once.)
  * as.complex(x) now returns complex(real = x, imaginary = 0) for
    _all_ numerical and logical x, notably also for NA or
    NA_integer_.
  * Directories are now omitted by file.copy(, recursive = FALSE) and
    in file.append() (PR#17337).
  * gsub() and sub() are now more robust to integer overflow when
    reporting errors caused by too large input strings (PR#18346).
  * Top-level handlers are now more robust to attempts to remove a
    handler whilst handlers are running (PR#18508).
  * The handling of Alt+F4 in dialogs created on Windows using
    GraphApp has been fixed (PR#13870).
  * density() more consistently computes grid values for the
    FFT-based convolution, following Robert Schlicht's analysis and
    proposal in PR#18337, correcting density values typically by a
    factor of about 0.999.  Argument old.coords = TRUE provides back
    compatibility.
  * palette.colors() gains a name argument that defaults to FALSE
    controlling whether the vector of colours that is returned has
    names (where possible).  PR#18529.
  * tools::xgettext() no longer extracts the (non-translatable) class
    names from warningCondition and errorCondition calls.
  * S3method(&lt;gen&gt;, &lt;class&gt;, &lt;func&gt;) in the NAMESPACE file now works
    (again) when &lt;func&gt; is visible from the namespace, e.g.,
    imported, or in base.
  * getParseData(f) now also works for a function defined in the
    first of several &lt;pkg&gt;/R/*.R source files, thanks to Kirill
    Müller's report and Duncan Murdoch's patch in PR#16756.
  * Rd \Sexpr macros with nested #ifdef conditionals were not
    processed.
  * A non-blocking connection with non-default encoding (such as a
    socket) now correctly returns from readLines() after new data has
    arrived also when its EOF had been reached previously.  Thanks to
    Peter Meilstrup's report on R-devel and Ivan Krylov's report and
    patch proposal in PR#18555.
  * tools::checkRdContents() failed to detect empty argument
    descriptions when they spanned multiple lines, including those
    generated by prompt().  These cases are now noted by R CMD check.
  * Plain-text help no longer outputs spurious colons in the
    arguments list (for multi-line \item labels in the Rd source).
  * kappa() and rcond() work correctly in more cases; kappa(., norm =
    "2") now warns that it computes the 1-norm with (default) exact =
    FALSE; prompted by Mikael Jagan's quite comprehensive PR#18543.
  * Rd skeletons generated by prompt() or promptData() now use a
    dummy title (so R CMD build works).  tools::checkRdContents() has
    been updated to detect such template leftovers, including from
    promptPackage().
  * When S4 method dispatch fails because no method was found, the
    error message now includes the signature argument names; thanks
    to Michael Chirico's proposal on the R-devel list.
  * withAutoprint({ .. }) now preserves srcrefs previously lost,
    thanks to Andrew Simmons' report plus fix in PR#18572.
  * transform.data.frame() no longer adjusts names; in particular,
    untransformed variables are kept as-is, including those with
    syntactically invalid names (PR#17890).
  * The keep.source option for Rd \Sexpr blocks is no longer ignored.
  * The formula methods for t.test() and wilcox.test() now catch when
    paired is passed, addressing PR#14359; use Pair(x1, x2) ~ 1 for a
    paired test.
  * The level reported in the browser prompt was often too large. It
    now shows the number of browser contexts on the stack.
  * For cbind() and rbind(), the optional deparse.level argument is
    now properly passed to methods, thanks to Mikael Jagan's PR#18579
    and comments there.
  * Some error and warning messages for large ('long vector')
    matrix(v, nr, nc) and dim(m) &lt;- d are now correct about sizes,
    using long long formatting, fixing PR#18612 (and more) reported
    by Mikael Jagan.
  * readChar(useBytes = TRUE) now terminates strings even when the
    underlying connection uses extra spaces in the input buffer.
    This fixes problems with extra garbage seen with gzip
    connections, PR#18605.
  * Named capture in PCRE regular expressions now works also with
    more than 127 named groups (PR#18588).
  * Datetime functions are now robust against long jumps when dealing
    with internal time zone changes.  This avoids confusing warnings
    about an invalid time zone, previously triggered by turning
    warnings into errors or handling them via tryCatch (PR#17966,
    PR#17780).
  * Datetime functions now restore even an empty TZ environment
    variable after internal time zone changes (PR#17724).  This makes
    results of datetime functions with this (typically unintentional)
    setting more predictable.
  * drop.terms(*) now drops response as by default, keep.response =
    FALSE, fixing PR#18564 thanks to Mikael Jagan.
  * dummy.coef(.) now also works for lm()-models with character
    categorical predictor variables rather than factor ones, fixing
    PR#18635 reported by Jinsong Zhao.
  * formals(f) &lt;- formals(f) now also works for a function w/o
    arguments and atomic _constant_ body(f).
  * Correct as.function(&lt;invalid list&gt;, .)'s error message.
  * removeSource() is yet more thorough in finding and removing
    "srcref" and the other source references from parsed R language
    chunks, fixing PR#18638 thanks to Andrew Simmons.
  * dgeom() is more accurate now, notably when its result is very
    small, fixing PR#18642 thanks to the proposal of Morten Welinder,
    also improving other instances where C level binom_raw(x, n, ..)
    has x == 0 or x== n.
  * warning() with options(warn = 1) has improved output for
    multi-line messages.
  * axis.Date() and axis.POSIXct() now respect the par("lab") setting
    for the number of pretty() intervals.
  * Comparisons for language objects (which are based on deparsing)
    are now more careful about using accurate deparsed results
    (PR#18676).
  * Plain-text help (Rd2txt) now correctly preserves blank lines
    following single-line \dontrun code.
  * &lt;POSIXlt&gt;[*] no longer sets wrong "balanced" attribute, fixing
    PR#18681 thanks to Mikael Jagan.
  * str(&lt;classed-call&gt;) now deparses the call as expected, fixing
    PR#18684, reported by Dave Slager.
  * In Rd examples, code following the closing brace of a \dontrun,
    \dontshow or \donttest tag on the same line is no longer skipped
    when R CMD check runs the examples.
  * as.data.frame(matrix(*, ncol=0)) now gets valid names() and
    colnames(); reported by Davis Vaughan on the R-devel list.
  * Internal Mathlib function stirlerr(n) is now almost fully
    (52-bit) accurate for all n &gt;= ~5.9 and more accurate also in the
    range 1 -- 5.9.  This entails small ("after 12th decimal")
    changes in density functions, e.g., dgamma() in _some_ regions of
    their support.  The fix was partly prompted by Morten Welinder's
    PR#18640.
  * Numbers like 9876543.2 are now considered non-integer by Mathlib
    internal R_nonint(), amending original fix of PR#15734.
  * Rd comment lines no longer cause broken paragraphs in the
    rendered PDF and plain-text help. In code blocks, pure comment
    lines (starting with %) no longer produce an empty line.
  * xtabs(Freq ~ .) now consistently defaults to na.action = na.pass,
    using na.rm = FALSE (added as an argument) when summing over Freq
    (PR#17770).
  * tools::testInstalledPackage() is no longer silent about failures
    from running examples or tests and its return code no longer
    ignores failures from checking vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1718366400">- CHANGES IN R 4.4.1:
  C-LEVEL FACILITIES:
  * Functions R_atof and R_strtod declared in header R_ext/Utils.h
    are now documented in 'Writing R Extensions' and so formally part
    of the API.
  * The non-API entry points Rf_setSVector, Rf_StringFalse,
    Rf_StringTrue and Rf_isBlankString have been added to those
    reported by R CMD check.
  * The new function Rf_allocLang is now available. This provides an
    alternative to the idiom of calling Rf_allocList followed by
    SET_TYPEOF.
  UTILITIES:
  * R CMD check now reports as warnings what gfortran calls 'Fortran
    2018 deleted features', all of which have long been marked as
    'obsolescent' and some of which were deleted in Fortran 2008 or
    earlier.  Fortran compilers are no longer required to support
    these.
  BUG FIXES:
  * as.numeric(), scan(), type.convert() and other places which use
    the internal C function R_strtod now require a _non-empty_ digit
    sequence in a decimal or binary exponent.  This aligns with the
    C/POSIX standard for strtod and with ?NumericConstants.
  * as.data.frame(m, make.names=NA) now works correctly for a matrix
    m with NA's in row names.
  * The error message from &lt;POSIXlt&gt;[["hour"]] and similar now
    mentions *[[, "hour"]], as wished for in PR#17409 and proposed by
    Michael Chirico.
  * qbinom() and potentially qpois(), qnbinom(), no longer sometimes
    fail accurate inversion (of pbinom(), etc), thanks to Christopher
    Chang's report and patch in PR#18711.
  * The internal help server on Windows can again serve requests sent
    in quick succession, fixing a regression in R 4.4.0.
  * debugcall(&lt;S3Generic&gt;()) now also works when a corresponding
    S4-generic version is in the methods cache (PR#18143).
  * Package tools' toTitleCase(ch0) now returns character(0) when ch0
    is of zero length; fixing PR#18724, reported by David Hugh Jones.
  * R CMD check is no longer broken (without a check result and no
    explanation in 00check.log) for a package which declares an
    invalid VignetteBuilder in DESCRIPTION but has no vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1730376000">- CHANGES IN R 4.4.2:
  C-LEVEL FACILITIES:
  * The S-compatibility macros F77_COM and F77_COMDECL defined in
    header R_ext/RS.h are deprecated and will be removed shortly.  We
    could find no record of their use.
  BUG FIXES:
  * Mathlib function lgammacor(x) no longer warns about underflow to
    zero for large x.
  * Text widths and heights were incorrectly reported by the Quartz
    device if the drawing context didn't exist yet (typically when
    drawing off-screen to a window that is yet to appear, see
    PR#18591).
  * The Quartz device could segfault in cases where paths with spaces
    are used in the new glyph drawing API.  Thanks to Tomek
    Gieorgijewski (PR#18758).
  * On macOS in R CRAN builds, it is again possible to read
    little-endian UTF-16 text with a BOM from a connection using
    encoding="UTF-16".  Users building R from source should avoid
    using the system libiconv in macOS 14.1 and later.
  * methods' internal .requirePackage() now re-enables primitive
    method dispatch when needed; thanks to Ivan Krylov for
    demystifying CRAN package check failures on the R-devel mailing
    list.</changelog>
</package>
<package pkgid="5bf1f215b75ca1c2dfcdb58846d63b07b412570b5af8c922131805166264d352a34b1ebf64f0aeb5a7f6072ccf49d5e0de641d9ad53f40d24140d5d7e9f453ea" name="R-cluster-debuginfo" arch="x86_64">
  <version epoch="0" ver="2.1.6" rel="51.0.2.2.sr20241103"/>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1620302400">- To get in sync with d:l:R:autoCRAN the Matrix package's split
  in -devel was reversed.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339200">- improved spec file according to comments of dimstar in
  https://build.opensuse.org/request/show/892685</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339201">- CHANGES IN R 4.1.0:
  FUTURE DIRECTIONS:
  * It is planned that the 4.1.x series will be the last to support
    32-bit Windows, with production of binary packages for that
    series continuing until early 2023.
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Data set esoph in package datasets now provides the correct
    numbers of controls; previously it had the numbers of cases added
    to these.  (Reported by Alexander Fowler in PR#17964.)
  NEW FEATURES:
  * www.omegahat.net is no longer one of the repositories known by
    default to setRepositories().  (Nowadays it only provides source
    packages and is often unavailable.)
  * Function package_dependencies() (in package tools) can now use
    different dependency types for direct and recursive dependencies.
  * The checking of the size of tarball in R CMD check --as-cran
    &lt;pkg&gt; may be tweaked via the new environment variable
    _R_CHECK_CRAN_INCOMING_TARBALL_THRESHOLD_, as suggested in
    PR#17777 by Jan Gorecki.
  * Using c() to combine a factor with other factors now gives a
    factor, an ordered factor when combining ordered factors with
    identical levels.
  * apply() gains a simplify argument to allow disabling of
    simplification of results.
  * The format() method for class "ftable" gets a new option justify.
    (Suggested by Thomas Soeiro.)
  * New ...names() utility.  (Proposed by Neal Fultz in PR#17705.)
  * type.convert() now warns when its as.is argument is not
    specified, as the help file always said it _should_.  In that
    case, the default is changed to TRUE in line with its change in
    read.table() (related to stringsAsFactor) in R 4.0.0.
  * When printing list arrays, classed objects are now shown _via_
    their format() value if this is a short enough character string,
    or by giving the first elements of their class vector and their
    length.
  * capabilities() gets new entry "Rprof" which is TRUE when R has
    been configured with the equivalent of --enable-R-profiling (as
    it is by default).  (Related to Michael Orlitzky's report
    PR#17836.)
  * str(xS4) now also shows extraneous attributes of an S4 object
    xS4.
  * Rudimentary support for vi-style tags in rtags() and R CMD rtags
    has been added.  (Based on a patch from Neal Fultz in PR#17214.)
  * checkRdContents() is now exported from tools; it and also
    checkDocFiles() have a new option chkInternal allowing to check
    Rd files marked with keyword "internal" as well.  The latter can
    be activated for R CMD check via environment variable
    _R_CHECK_RD_INTERNAL_TOO_.
  * New functions numToBits() and numToInts() extend the raw
    conversion utilities to (double precision) numeric.
  * Functions URLencode() and URLdecode() in package utils now work
    on vectors of URIs.  (Based on patch from Bob Rudis submitted
    with PR#17873.)
  * path.expand() can expand ~user on most Unix-alikes even when
    readline is not in use.  It tries harder to expand ~, for example
    should environment variable HOME be unset.
  * For HTML help (both dynamic and static), Rd file links to help
    pages in external packages are now treated as references to
    topics rather than file names, and fall back to a file link only
    if the topic is not found in the target package. The earlier rule
    which prioritized file names over topics can be restored by
    setting the environment variable _R_HELP_LINKS_TO_TOPICS_ to a
    false value.
  * c() now removes NULL arguments before dispatching to methods,
    thus simplifying the implementation of c() methods, _but_ for
    back compatibility keeps NULL when it is the first argument.
    (From a report and patch proposal by Lionel Henry in PR#17900.)
  * Vectorize()'s result function's environment no longer keeps
    unneeded objects.
  * Function ...elt() now propagates visibility consistently with
    ..n.  (Thanks to Lionel Henry's PR#17905.)
  * capture.output() no longer uses non-standard evaluation to
    evaluate its arguments.  This makes evaluation of functions like
    parent.frame() more consistent.  (Thanks to Lionel Henry's
    PR#17907.)
  * packBits(bits, type="double") now works as inverse of
    numToBits().  (Thanks to Bill Dunlap's proposal in PR#17914.)
  * curlGetHeaders() has two new arguments, timeout to specify the
    timeout for that call (overriding getOption("timeout")) and TLS
    to specify the minimum TLS protocol version to be used for
    https:// URIs (_inter alia_ providing a means to check for sites
    using deprecated TLS versions 1.0 and 1.1).
  * For nls(), an optional constant scaleOffset may be added to the
    denominator of the relative offset convergence test for cases
    where the fit of a model is expected to be exact, thanks to a
    proposal by John Nash.  nls(*, trace=TRUE) now also shows the
    convergence criterion.
  * Numeric differentiation _via_ numericDeriv() gets new optional
    arguments eps and central, the latter for taking central divided
    differences.  The latter can be activated for nls() via
    nls.control(nDcentral = TRUE).
  * nls() now passes the trace and control arguments to getInitial(),
    notably for all self-starting models, so these can also be fit in
    zero-noise situations via a scaleOffset.  For this reason, the
    initial function of a selfStart model must now have ... in its
    argument list.
  * bquote(splice = TRUE) can now splice expression vectors with
    attributes: this makes it possible to splice the result of
    parse(keep.source = TRUE).  (Report and patch provided by Lionel
    Henry in PR#17869.)
  * textConnection() gets an optional name argument.
  * get(), exists(), and get0() now signal an error if the first
    argument has length greater than 1.  Previously additional
    elements were silently ignored.  (Suggested by Antoine Fabri on
    R-devel.)
  * R now provides a shorthand notation for creating functions, e.g.
    \(x) x + 1 is parsed as function(x) x + 1.
  * R now provides a simple native forward pipe syntax |&gt;.  The
    simple form of the forward pipe inserts the left-hand side as the
    first argument in the right-hand side call.  The pipe
    implementation as a syntax transformation was motivated by
    suggestions from Jim Hester and Lionel Henry.
  * all.equal(f, g) for functions now by default also compares their
    environment(.)s, notably via new all.equal method for class
    function.  Comparison of nls() fits, e.g., may now need
    all.equal(m1, m2, check.environment = FALSE).
  * .libPaths() gets a new option include.site, allowing to _not_
    include the site library.  (Thanks to Dario Strbenac's suggestion
    and Gabe Becker's PR#18016.)
  * Lithuanian translations are now available.  (Thanks to Rimantas
    Zakauskas.)
  * names() now works for DOTSXP objects.  On the other hand, in
    R-lang, the R language manual, we now warn against relying on the
    structure or even existence of such dot-dot-dot objects.
  * all.equal() no longer gives an error on DOTSXP objects.
  * capabilities("cairo") now applies only to the file-based devices
    as it is now possible (if very unusual) to build R with Cairo
    support for those but not for X11().
  * There is optional support for tracing the progress of
    loadNamespace() - see its help.
  * (Not Windows.)  l10n_info() reports an additional element, the
    name of the encoding as reported by the OS (which may differ from
    the encoding part (if any) of the result from
    Sys.getlocale("LC_CTYPE").
  * New function gregexec() which generalizes regexec() to find _all_
    disjoint matches and well as all substrings corresponding to
    parenthesized subexpressions of the given regular expression.
    (Contributed by Brodie Gaslam.)
  * New function charClass() in package utils to query the
    wide-character classification functions in use (such as
    iswprint).
  * The names of quantile()'s result no longer depend on the global
    getOption("digits"), but quantile() gets a new optional argument
    digits = 7 instead.
  * grep(), sub(), regexp and variants work considerably faster for
    long factors with few levels.  (Thanks to Michael Chirico's
    PR#18063.)
  * Provide grouping of x11() graphics windows within a window
    manager such as Gnome or Unity; thanks to a patch by Ivan Krylov
    posted to R-devel.
  * The split() method for class data.frame now allows the f argument
    to be specified as a formula.
  * sprintf now warns on arguments unused by the format string.
  * New palettes "Rocket" and "Mako" for hcl.colors() (approximating
    palettes of the same name from the 'viridisLite' package).
    Contributed by Achim Zeileis.
  * The base environment and its namespace are now locked (so one can
    no longer add bindings to these or remove from these).
  * Rterm handling of multi-byte characters has been improved,
    allowing use of such characters when supported by the current
    locale.
  * Rterm now accepts ALT+ +xxxxxxxx sequences to enter Unicode
    characters as hex digits.
  * Environment variable LC_ALL on Windows now takes precedence over
    LC_CTYPE and variables for other supported categories, matching
    the POSIX behaviour.
  * duplicated() and anyDuplicated() are now optimized for integer
    and real vectors that are known to be sorted via the ALTREP
    framework. Contributed by Gabriel Becker via PR#17993.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 14
    and so packages that provide graphics devices should be
    reinstalled.
  * Graphics devices should now specify deviceVersion to indicate
    what version of the graphics engine they support.
  * Graphics devices can now specify deviceClip.  If TRUE, the
    graphics engine will never perform any clipping of output itself.
    The clipping that the graphics engine does perform (for both
    canClip = TRUE and canClip = FALSE) has been improved to avoid
    producing unnecessary artifacts in clipped output.
  * The grid package now allows gpar(fill) to be a linearGradient(),
    a radialGradient(), or a pattern().  The viewport(clip) can now
    also be a grob, which defines a clipping path, and there is a new
    viewport(mask) that can also be a grob, which defines a mask.
    These new features are only supported so far on the Cairo-based
    graphics devices and on the pdf() device.
  * (Not Windows.)  A warning is given when a Cairo-based type is
    specified for a png(), jpeg(), tiff() or bmp() device but Cairo
    is unsupported (so type = "Xlib" is tried instead).
  * grSoftVersion() now reports the versions of FreeType and
    FontConfig if they are used directly (not _via_ Pango), as is
    most commonly done on macOS.
  C-LEVEL FACILITIES:
  * The _standalone_ libRmath math library and R's C API now provide
    log1pexp() again as documented, and gain log1mexp().
  INSTALLATION on a UNIX-ALIKE:
  * configure checks for a program pkgconf if program pkg-config is
    not found.  These are now only looked for on the path (like
    almost all other programs) so if needed specify a full path to
    the command in PKG_CONFIG, for example in file config.site.
  * C99 function iswblank is required - it was last seen missing ca
    2003 so the workaround has been removed.
  * There are new configure options --with-internal-iswxxxxx,
  - -with-internal-towlower and --with-internal-wcwidth which allows
    the system functions for wide-character classification,
    case-switching and width (wcwidth and wcswidth) to be replaced by
    internal ones.  The first has long been used on macOS, AIX (and
    Windows) but this enables it to be unselected there and selected
    for other platforms (it is the new default on Solaris).  The
    second is new in this version of R and is selected by default on
    macOS and Solaris.  The third has long been the default and
    remains so as it contains customizations for East Asian
    languages.
    System versions of these functions are often minimally
    implemented (sometimes only for ASCII characters) and may not
    cover the full range of Unicode points: for example Solaris (and
    Windows) only cover the Basic Multilingual Plane.
  * Cairo installations without X11 are more likely to be detected by
    configure, when the file-based Cairo graphics devices will be
    available but not X11(type = "cairo").
  * There is a new configure option --with-static-cairo which is the
    default on macOS.  This should be used when only static cairo
    (and where relevant, Pango) libraries are available.
  * Cairo-based graphics devices on platforms without Pango but with
    FreeType/FontConfig will make use of the latter for font
    selection.
  LINK-TIME OPTIMIZATION on a UNIX-ALIKE:
  * Configuring with flag --enable-lto=R now also uses LTO when
    installing the recommended packages.
  * R CMD INSTALL and R CMD SHLIB have a new flag --use-LTO to use
    LTO when compiling code, for use with R configured with
  - -enable-lto=R.  For R configured with --enable-lto, they have
    the new flag --no-use-LTO.
    Packages can opt in or out of LTO compilation _via_ a UseLTO
    field in the DESCRIPTION file.  (As usual this can be overridden
    by the command-line flags.)
  BUILDING R on Windows:
  * for GCC &gt;= 8, FC_LEN_T is defined in config.h and hence character
    lengths are passed from C to Fortran in _inter alia_ BLAS and
    LAPACK calls.
  * There is a new text file src/gnuwin32/README.compilation, which
    outlines how C/Fortran code compilation is organized and
    documents new features:
  * R can be built with Link-Time Optimization with a suitable
    compiler - doing so with GCC 9.2 showed several
    inconsistencies which have been corrected.
  * There is support for cross-compiling the C and Fortran code
    in R and standard packages on suitable (Linux) platforms.
    This is mainly intended to allow developers to test later
    versions of compilers - for example using GCC 9.2 or 10.x has
    detected issues that GCC 8.3 in Rtools40 does not.
  * There is experimental support for cross-building R packages
    with C, C++ and/or Fortran code.
  * The R installer can now be optionally built to support a single
    architecture (only 64-bit or only 32-bit).
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++14 where
    available (which it is on all currently checked platforms): if
    not (as before) C++11 is used if available otherwise C++ is not
    supported.
    Packages which specify C++11 will still be installed using C++11.
    C++14 compilers may give deprecation warnings, most often for
    std::random_shuffle (deprecated in C++14 and removed in C++17).
    Either specify C++11 (see 'Writing R Extensions') or modernize
    the code and if needed specify C++14.  The latter has been
    supported since R 3.4.0 so the package's DESCRIPTION would need
    to include something like
    Depends: R (&gt;= 3.4)
  PACKAGE INSTALLATION on Windows:
  * R CMD INSTALL and R CMD SHLIB make use of their flag --use-LTO
    when the LTO_OPT make macro is set in file etc/${R_ARCH}/Makeconf
    or in a personal/site Makevars file.  (For details see 'Writing R
    Extensions' SS4.5.)
    This provides a valuable check on code consistency.  It does work
    with GCC 8.3 as in Rtools40, but that does not detect everything
    the CRAN checks with current GCC do.
  PACKAGE INSTALLATION on macOS:
  * The default personal library directory on builds with
  - -enable-aqua (including CRAN builds) now differs by CPU type,
    one of
    ~/Library/R/x86_64/x.y/library
    ~/Library/R/arm64/x.y/library
    This uses the CPU type R (and hence the packages) were built for,
    so when a x86_64 build of R is run under Rosetta emulation on an
    arm64 Mac, the first is used.
  UTILITIES:
  * R CMD check can now scan package functions for bogus return
    statements, which were possibly intended as return() calls (wish
    of PR#17180, patch by Sebastian Meyer). This check can be
    activated via the new environment variable
    _R_CHECK_BOGUS_RETURN_, true for --as-cran.
  * R CMD build omits tarballs and binaries of previous builds from
    the top-level package directory.  (PR#17828, patch by Sebastian
    Meyer.)
  * R CMD check now runs sanity checks on the use of LazyData, for
    example that a data directory is present and that
    LazyDataCompression is not specified without LazyData and has a
    documented value.  For packages with large LazyData databases
    without specifying LazyDataCompression, there is a reference to
    the code given in 'Writing R Extensions' SS1.1.6 to test the
    choice of compression (as in all the CRAN packages tested a
    non-default method was preferred).
  * R CMD build removes LazyData and LazyDataCompression fields from
    the DESCRIPTION file of packages without a data directory.
  ENCODING-RELATED CHANGES:
  * The parser now treats \Unnnnnnnn escapes larger than the upper
    limit for Unicode points (\U10FFFF) as an error as they cannot be
    represented by valid UTF-8.
    Where such escapes are used for outputting non-printable
    (including unassigned) characters, 6 hex digits are used (rather
    than 8 with leading zeros).  For clarity, braces are used, for
    example \U{0effff}.
  * The parser now looks for non-ASCII spaces on Solaris (as
    previously on most other OSes).
  * There are warnings (including from the parser) on the use of
    unpaired surrogate Unicode points such as \uD834.  (These cannot
    be converted to valid UTF-8.)
  * Functions nchar(), tolower(), toupper() and chartr() and those
    using regular expressions have more support for inputs with a
    marked Latin-1 encoding.
  * The character-classification functions used (by default) to
    replace the system iswxxxxx functions on Windows, macOS and AIX
    have been updated to Unicode 13.0.0.
    The character-width tables have been updated to include new
    assignments in Unicode 13.0.0.
  * The code for evaluating default (extended) regular expressions
    now uses the same character-classification functions as the rest
    of R (previously they differed on Windows, macOS and AIX).
  * There is a build-time option to replace the system's
    wide-character wctrans C function by tables shipped with R: use
    configure option --with-internal-towlower or (on Windows)
  - DUSE_RI18N_CASE in CFLAGS when building R.  This may be needed
    to allow tolower() and toupper() to work with Unicode characters
    beyond the Basic Multilingual Plane where not supported by system
    functions (e.g. on Solaris where it is the new default).
  * R is more careful when truncating UTF-8 and other multi-byte
    strings that are too long to be printed, passed to the system or
    libraries or placed into an internal buffer.  Truncation will no
    longer produce incomplete multibyte characters.
  DEPRECATED AND DEFUNCT:
  * Function plclust() from the package stats and
    package.dependencies(), pkgDepends(), getDepList(),
    installFoundDepends(), and vignetteDepends() from package tools
    are defunct.
  * Defunct functions checkNEWS() and readNEWS() from package tools
    and CRAN.packages() from utils have been removed.
  * R CMD config CXXCPP is defunct (it was deprecated in R 3.6.2).
  * parallel::detectCores() drops support for Irix (retired in 2013).
  * The LINPACK argument to chol.default(), chol2inv(),
    solve.default() and svd() has been defunct since R 3.1.0.  It was
    silently ignored up to R 4.0.3 but now gives an error.
  * Subsetting/indexing, such as ddd[*] or ddd$x on a DOTSXP
    (dot-dot-dot) object ddd has been disabled; it worked by accident
    only and was undocumented.
  BUG FIXES:
  * Many more C-level allocations (mainly by malloc and strdup) are
    checked for success with suitable alternative actions.
  * Bug fix for replayPlot(); this was turning off graphics engine
    display list recording if a recorded plot was replayed in the
    same session.  The impact of the bug became visible if resize the
    device after replay OR if attempted another savePlot() after
    replay (empty display list means empty screen on resize or empty
    saved plot).
  * R CMD check etc now warn when a package exports non-existing S4
    classes or methods, also in case of no "methods" presence.
    (Reported by Alex Bertram; reproducible example and patch by
    Sebastian Meyer in PR#16662.)
  * boxplot() now also accepts calls for labels such as ylab, the
    same as plot().  (Reported by Marius Hofert.)
  * The help page for xtabs() now correctly states that addNA is
    setting na.action = na.pass among others.  (Reported as PR#17770
    by Thomas Soeiro.)
  * The R CMD check &lt;pkg&gt; gives a longer and more comprehensible
    message when DESCRIPTION misses dependencies, e.g., in Imports:.
    (Thanks to the contributors of PR#17179.)
  * update.default() now calls the generic update() on the formula to
    work correctly for models with extended formulas.  (As reported
    and suggested by Neal Fultz in PR#17865.)
  * The horizontal position of leaves in a dendrogram is now correct
    also with center = FALSE.  (PR#14938, patch from Sebastian
    Meyer.)
  * all.equal.POSIXt() no longer warns about and subsequently ignores
    inconsistent "tzone" attributes, but describes the difference in
    its return value (PR#17277).  This check can be disabled _via_
    the new argument check.tzone = FALSE as suggested by Sebastian
    Meyer.
  * as.POSIXct() now populates the "tzone" attribute from its tz
    argument when x is a logical vector consisting entirely of NA
    values.
  * x[[2^31]] &lt;- v now works.  (Thanks to the report and patch by
    Suharto Anggono in PR#17330.)
  * In log-scale graphics, axis() ticks and label positions are now
    computed more carefully and symmetrically in their range,
    typically providing _more_ ticks, fulfilling wishes in PR#17936.
    The change really corresponds to an improved axisTicks() (package
    grDevices), potentially influencing grid and lattice, for
    example.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now correct to at
    least five digits where it was catastrophically wrong,
    previously.
  * sum(df) and similar "Summary"- and "Math"-group member functions
    now work for data frames df with logical columns, notably also of
    zero rows.  (Reported to R-devel by Martin "b706".)
  * unsplit() had trouble with tibbles due to unsound use of rep(NA,
    len)-indexing, which should use NA_integer_ (Reported to R-devel
    by Mario Annau.)
  * pnorm(x, log.p = TRUE) underflows to -Inf slightly later.
  * show(&lt;hidden S4 generic&gt;) prints better and without quotes for
    non-hidden S4 generics.
  * read.table() and relatives treated an "NA" column name as missing
    when check.names = FALSE PR#18007.
  * Parsing strings containing UTF-16 surrogate pairs such as
    "\uD834\uDD1E" works better on some (uncommon) platforms.
    sprintf("%X", utf8ToInt("\uD834\uDD1E")) should now give "1D11E"
    on all platforms.
  * identical(x,y) is no longer true for differing DOTSXP objects,
    fixing PR#18032.
  * str() now works correctly for DOTSXP and related exotics, even
    when these are doomed.
    Additionally, it no longer fails for lists with a class and
    "irregular" method definitions such that e.g. lapply(*) will
    necessarily fail, as currently for different igraph objects.
  * Too long lines in environment files (e.g. Renviron) no longer
    crash R. This limit has been increased to 100,000 bytes.
    (PR#18001.)
  * There is a further workaround for FreeType giving incorrect
    italic font faces with cairo-based graphics devices on macOS.
  * add_datalist(*, force = TRUE) (from package tools) now actually
    updates an existing data/datalist file for new content.  (Thanks
    to a report and patch by Sebastian Meyer in PR#18048.)
  * cut.Date() and cut.POSIXt() could produce an empty last interval
    for breaks = "months" or breaks = "years".  (Reported as PR#18053
    by Christopher Carbone.)
  * Detection of the encoding of 'regular' macOS locales such as
    en_US (which is UTF-8) had been broken by a macOS change:
    fortunately these are now rarely used with en_US.UTF-8 being
    preferred.
  * sub() and gsub(pattern, repl, x, *) now keep attributes of x such
    as names() also when pattern is NA (PR#18079).
  * Time differences ("difftime" objects) get a replacement and a
    rep() method to keep "units" consistent.  (Thanks to a report and
    patch by Nicolas Bennett in PR#18066.)
  * The \RdOpts macro, setting defaults for \Sexpr options in an Rd
    file, had been ineffective since R 2.12.0: it now works again.
    (Thanks to a report and patch by Sebastian Meyer in PR#18073.)
  * mclapply and pvec no longer accidentally terminate parallel
    processes started before by mcparallel or related calls in
    package parallel (PR#18078).
  * grep and other functions for evaluating (extended) regular
    expressions handle in Unicode also strings not explicitly flagged
    UTF-8, but flagged native when running in UTF-8 locale.
  * Fixed a crash in fifo implementation on Windows (PR#18031).
  * Binary mode in fifo on Windows is now properly detected from
    argument open (PR#15600, PR#18031).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1622808000">- The line %{__install} -m 755 -d %{_infodir}
  no longer works in TW or Factory.
  But without that line it works everywhere. So this instruction
  was commented out of the spec file.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1628596800">- CHANGES IN R 4.1.1:
  NEW FEATURES:
  * require(pkg, quietly = TRUE) is quieter and in particular does
    not warn if the package is not found.
  DEPRECATED AND DEFUNCT:
  * Use of ftp:// URIs should be regarded as deprecated, with
    on-going support confined to method = "libcurl" and not routinely
    tested.  (Nowadays no major browser supports them.)
  * The non-default method = "internal" is deprecated for http:// and
    ftp:// URIs for both download.file and url.
  * On Windows, method = "wininet" is deprecated for http://,
    https:// and ftp:// URIs for both download.file and url.  (A
    warning is only given for ftp://.)
    For ftp:// URIs the default method is now "libcurl" if available
    (which it is on CRAN builds).
    method = "wininet" remains the default for http:// and https://
    URIs but if libcurl is available, using method = "libcurl" is
    preferred.
  INSTALLATION:
  * make check now works also without a LaTeX installation.  (Thanks
    to Sebastian Meyer's PR#18103.)
  BUG FIXES:
  * make check-devel works again in an R build configured with
  - -without-recommended-packages.
  * qnbinom(p, size, mu) for large size/mu is correct now in a range
    of cases (PR#18095); similarly for the (size, prob)
    parametrization of the negative binomial.  Also qpois() and
    qbinom() are better and or faster for extreme cases.  The
    underlying C code has been modularized and is common to all four
    cases of discrete distributions.
  * gap.axis is now part of the axis() arguments which are passed
    from bxp(), and hence boxplot().  (Thanks to Martin Smith's
    report and suggestions in PR#18109.)
  * .First and .Last can again be set from the site profile.
  * seq.int(from, to, *) and seq.default(..) now work better in large
    range cases where from-to is infinite where the two boundaries
    are finite.
  * all.equal(x,y) now returns TRUE correctly also when several
    entries of abs(x) and abs(y) are close to .Machine$double.xmax,
    the largest finite numeric.
  * model.frame() now clears the object bit when removing the class
    attribute of a value via na.action (PR#18100).
  * charClass() now works with multi-character strings on Windows
    (PR#18104, fixed by Bill Dunlap).
  * encodeString() on Solaris now works again in Latin-1 encoding on
    characters represented differently in UTF-8.  Support for
    surrogate pairs on Solaris has been improved.
  * file.show() on Windows now works with non-ASCII path names
    representable in the current native encoding (PR#18132).
  * Embedded R on Windows can now find R home directory via the
    registry even when installed only for the current user
    (PR#18135).
  * pretty(x) with finite x now returns finite values also in the
    case where the extreme x values are close in size to the maximal
    representable number .Machine$double.xmax.
    Also, it's been tweaked for very small ranges and when a boundary
    is close (or equal) to zero; e.g., pretty(c(0,1e-317)) no longer
    has negative numbers, currently still warning about a very small
    range, and pretty(2^-(1024 - 2^-1/(c(24,10)))) is more accurate.
  * The error message for not finding vignette files when weaving has
    correct file sizes now. (Thanks to Sebastian Meyer's PR#18154.)
  * dnbinom(20, &lt;large&gt;, 1) now correctly gives 0, and similar cases
    are more accurate with underflow precaution.  (Reported by Francisco Vera Alcivar in PR#18072.)</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635163200">- repaired https://bugzilla.suse.com/show_bug.cgi?id=1191380
  (rpmacros now go to rpmmacrodir)
- minor clean-ups in spec file</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635768000">- CHANGES IN R 4.1.2:
  C-LEVEL FACILITIES:
  * The workaround in headers R.h and Rmath.h (using namespace std;)
    for the Oracle Developer Studio compiler is no longer needed now
    C++11 is required so has been removed.  A couple more usages of
    log() (which should have been std::log()) with an int argument
    are reported on Solaris.
  * The undocumented limit of 4095 bytes on messages from the
    S-compatibility macros PROBLEM and MESSAGE is now documented and
    longer messages will be silently truncated rather than
    potentially causing segfaults.
  * If the R_NO_SEGV_HANDLER environment variable is non-empty, the
    signal handler for SEGV/ILL/BUS signals (which offers recovery
    user interface) is not set. This allows more reliable debugging
    of crashes that involve the console.
  DEPRECATED AND DEFUNCT:
  * The legacy S-compatibility macros PROBLEM, MESSAGE, ERROR, WARN,
    WARNING, RECOVER, ... are deprecated and will be hidden in R
    4.2.0. R's native interface of Rf_error and Rf_warning has long
    been preferred.
  BUG FIXES:
  * .mapply(F, dots, .) no longer segfaults when dots is not a list
    and uses match.fun(F) as always documented; reported by Andrew
    Simmons in PR#18164.
  * hist(&lt;Date&gt;, ...) and hist(&lt;POSIXt&gt;, ...)  no longer pass
    arguments for rect() (such as col and density) to axis().
    (Thanks to Sebastian Meyer's PR#18171.)
  * \Sexpr{ch} now preserves Encoding(ch). (Thanks to report and
    patch by Jeroen Ooms in PR#18152.)
  * Setting the RNG to "Marsaglia-Multicarry" e.g., by RNGkind(), now
    warns in more places, thanks to Andr'e Gillibert's report and
    patch in PR#18168.
  * gray(numeric(), alpha=1/2) no longer segfaults, fixing PR#18183,
    reported by Till Krenz.
  * Fixed dnbinom(x, size=&lt;very_small&gt;, .., log=TRUE) regression,
    reported by Martin Morgan.
  * as.Date.POSIXlt(x) now keeps names(x), thanks to Davis Vaughan's
    report and patch in PR#18188.
  * model.response() now strips an "AsIs" class typically, thanks to
    Duncan Murdoch's report and other discussants in PR#18190.
  * try() is considerably faster in case of an error and long call,
    as e.g., from some do.call().  Thanks to Alexander Kaever's
    suggestion posted to R-devel.
  * qqline(y = &lt;object&gt;) such as y=I(.), now works, see also
    PR#18190.
  * Non-integer mgp par() settings are now handled correctly in
    axis() and mtext(), thanks to Mikael Jagan and Duncan Murdoch's
    report and suggestion in PR#18194.
  * formatC(x) returns length zero character() now, rather than ""
    when x is of length zero, as documented, thanks to Davis
    Vaughan's post to R-devel.
  * removeSource(fn) now retains (other) attributes(fn).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1647000000">- CHANGES IN R 4.1.3:
  NEW FEATURES:
  * The default version of Bioconductor has been changed to 3.14.
    (This is used by setRepositories and the menus in GUIs.)
  UTILITIES:
  * R CMD check --as-cran has a workaround for a bug in versions of
    file up to at least 5.41 which mis-identify DBF files last
    changed in 2022 as executables.
  C-LEVEL FACILITIES:
  * The legacy S-compatibility macros SINGLE_* in R_ext/Constants.h
    (included by R.h) are deprecated and will be removed in R 4.2.0.
  BUG FIXES:
  * Initialization of self-starting nls() models with initialization
    functions following the pre-R-4.1.0 API (without the ...
    argument) works again for now, with a deprecation warning.
  * Fixed quoting of ~autodetect~ in Java setting defaults to avoid
    inadvertent user lookup due to leading ~, reported in PR#18231 by
    Harold Gutch.
  * substr(., start, stop) &lt;- v now treats _negative_ stop values
    correctly.  Reported with a patch in PR#18228 by Brodie Gaslam.
  * Subscripting an array x without dimnames by a
    length(dim(x))-column character matrix gave "random" non-sense,
    now an error; reported in PR#18244 by Mikael Jagan.
  * ...names() now matches names(list(...)) closely, fixing PR#18247.
  * all.equal(*, scale = s) now works as intended when length(s) &gt; 1,
    partly thanks to Michael Chirico's PR#18272.
  * print(x) for long vectors x now also works for named atomic
    vectors or lists and prints the correct number when reaching the
    getOption("max.print") limit; partly thanks to a report and
    proposal by Hugh Parsonage to the R-devel list.
  * all.equal(&lt;selfStart&gt;, *) no longer signals a deprecation
    warning.
  * reformulate(*, response=r) gives a helpful error message now when
    length(r) &gt; 1, thanks to Bill Dunlap's PR#18281.
  * Modifying globalCallingHandlers inside withCallingHandlers() now
    works or fails correctly, thanks to Henrik Bengtsson's PR#18257.
  * hist(&lt;Date&gt;, breaks = "days") and hist(&lt;POSIXt&gt;, breaks = "secs")
    no longer fail for inputs of length 1.
  * qbeta(.001, .9, .009) and similar cases now converge correctly
    thanks to Ben Bolker's report in PR#17746.
  * window(x, start, end) no longer wrongly signals "'start' cannot
    be after 'end'", fixing PR#17527 and PR#18291.
  * data() now checks that its (rarely used) list argument is a
    character vector - a couple of packages passed other types and
    gave incorrect results.
  * which() now checks its arr.ind argument is TRUE rather coercing
    to logical and taking the first element - which gave incorrect
    results in package code.
  * model.weights() and model.offset() more carefully extract their
    model components, thanks to Ben Bolker and Tim Taylor's R-devel
    post.
  * list.files(recursive = TRUE) now shows all broken symlinks
    (previously, some of them may have been omitted, PR#18296).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1650628800">- CHANGES IN R 4.2.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * The formula method of aggregate() now matches the generic in
    naming its first argument x (resolving PR#18299 by Thomas
    Soeiro).
    This means that calling aggregate() with a formula as a named
    first argument requires name formula in earlier versions of R and
    name x now, so portable code should not name the argument (code
    in many packages did).
  * Calling &amp;&amp; or || with either argument of length greater than one
    now gives a warning (which it is intended will become an error).
  * Calling if() or while() with a condition of length greater than
    one gives an error rather than a warning.  Consequently,
    environment variable _R_CHECK_LENGTH_1_CONDITION_ no longer has
    any effect.
  * Windows users should consult the WINDOWS section below for some
    profound changes including
  * Support for 32-bit builds has been dropped.
  * UTF-8 locales are used where available.
  * The default locations for the R installation and personal
    library folder have been changed.
    Thanks to Tomas Kalibera for months of work on the Windows port
    for this release.
  NEW FEATURES:
  * matrix(x, n, m) now warns in more cases where length(x) differs
    from n * m, as suggested by Abby Spurdle and Wolfgang Huber in
    Feb 2021 on the R-devel mailing list.
    This warning can be turned into an error by setting environment
    variable _R_CHECK_MATRIX_DATA_ to TRUE: R CMD check --as-cran
    does so unless it is already set.
  * Function file_test() in package utils gains tests for symlinks,
    readability and writability.
  * capabilities("libxml") is now false.
    The description of capabilities("http/ftp") now reflects that it
    refers to the default method, no longer the internal one.
  * simplify2array() gains an except argument for controlling the
    exceptions used by sapply().
  * Environment variables R_LIBS_USER and R_LIBS_SITE are both now
    set to the R system default if unset or empty, and can be set to
    NULL to indicate an empty list of user or site library
    directories.
  * The warning for axis()(-like) calls in cases of relatively small
    ranges (typically in log-scale situations) is slightly improved
    _and_ suppressed from explicit calls to .axisPars() as has always
    been the intention.
  * The contrasts setter function `contrasts&lt;-` gains an explicit
    default how.many = NULL rather than just using missing(how.many).
  * grid.pretty() gains a new optional argument n = 5.
  * There is a new function .pretty() with option bounds as a
    technical-utility version of pretty().  It and pretty() gain a
    new argument f.min with a better than back-compatible default.
  * Function grDevices::axisTicks() and related functions such as
    graphics::axis() work better, notably for the log scale; partly
    because of the pretty() improvements, but also because care is
    taken e.g., when ylim is finite but diff(ylim) is infinite.
  * nclass.FD() gains a digits option.
  * The R Mathlib internal C function bd0() (called indirectly from a
    dozen probability density and distribution functions such as
    dpois(), dbinom(), dgamma(), pgamma() _etc_) has been
    complemented by a more sophisticated and (mostly) more accurate C
    function ebd0(), currently called only by internal dpois_raw()
    improving accuracy for R level dpois() and potentially others
    calling it such as dnbinom(), dgamma() or pgamma().  (Thanks to
    Morten Welinder's PR#15628.)
  * write.ftable() gains sep = " " argument as suggested by Thomas
    Soeiro.
  * The names of the locale categories supported by R's
    Sys.getlocale() and Sys.setlocale() are now provided by variable
    .LC.categories in the base namespace.
  * The Date and POSIXt methods for hist() and the histogram method
    for plot() now also use the new default col = "lightgray" in
    consistency with the corresponding change to hist()'s default for
    R 4.0.0.
  * hist.default() gains new fuzz argument, and the histogram plot
    method no longer uses fractional axis ticks when displaying
    counts ("Frequency").
  * mapply() and hence Map() now also obey the "max-or-0-if-any"
    recycling rule, such that, e.g., Map(`+`, 1:3, 1[0]) is valid
    now.
  * as.character(&lt;obj&gt;) for "hexmode" or "octmode" objects now
    fulfils the important basic rule as.character(x)[j] ===
    as.character(x[j]).
  * The set utility functions, notably intersect() have been tweaked
    to be more consistent and symmetric in their two set arguments,
    also preserving a common mode.
  * substr(ch, start,end) &lt;- new now e.g., preserves names(ch); ditto
    for substring(), thanks to a patch from Brodie Gaslam.
  * plot(&lt;lm&gt;) gains a extend.ylim.f argument, in partial response to
    PR#15285; further PR#17784 is fixed thanks to several
    contributors and a patch by Elin Waring.  The Cook's dist
    contours get customizable via cook.col and cook.lty with a
    different default color and their legend is nicer by default and
    customizable via cook.legendChanges.
  * Attempting to subset an object that is not subsettable now
    signals an error of class notSubsettableError. The
    non-subsettable object is contained in the object field of the
    error condition.
  * Subscript-out-of-bounds errors are now signaled as errors of
    class subscriptOutOfBoundsError.
  * Stack-overflow errors are now signaled as errors inheriting from
    class stackOverflowError. See ?stackOverflowError for more
    details.
  * New partly experimental Sys.setLanguage() utility, solving the
    main problem of PR#18055.
  * gettext() and gettextf() get a new option trim = TRUE which when
    set to false allows translations for strings such as "Execution
    halted\n" typical for C code.
  * An experimental implementation of hash tables is now available.
    See ?hashtab for more details.
  * identical() gains a extptr.as.ref argument for requesting that
    external pointer objects be compared as reference objects.
  * reorder() gets an argument decreasing which it passes to sort()
    for level creation; based on the wish and patch by Thomas Soeiro
    in PR#18243.
  * as.vector() gains a data.frame method which returns a simple
    named list, also clearing a long standing 'FIXME' to enable
    as.vector(&lt;data.frame&gt;, mode="list").  This breaks code relying
    on as.vector(&lt;data.frame&gt;) to return the unchanged data frame.
  * legend() is now vectorized for arguments cex, x.intersp, and
    text.width.  The latter can now also be specified as a vector
    (one element for each column of the legend) or as NA for
    computing a proper column wise maximum value of strwidth(legend).
    The argument y.intersp can be specified as a vector with one
    entry for each row of the legend.
    legend() also gains new arguments title.cex and title.font.
    Thanks to Swetlana Herbrandt.
  * Deparsing no longer remaps attribute names dim, dimnames, levels,
    names and tsp to historical S-compatible names (which structure()
    maps back).
  * sample() and sample.int() have additional sanity checks on their
    size and n arguments.
    all.equal.numeric() gains a sanity check on its tolerance
    argument - calling all.equal(a, b, c) for three numeric vectors
    is a surprisingly common error.
    mean(na.rm =), rank(na.last =), barplot(legend.text =),
    boxplot(), contour(drawlabels =), polygon(border =) and
    methods::is(class2 =) have more robust sanity checks on their
    arguments.
    R CMD Rd2pdf (used by R CMD check) has a more robust sanity check
    on the format of \alias{} commands.
  * psigamma(x, deriv) for negative x now also works for deriv = 4
    and 5; their underlying C level dpsifn() is documented in
    'Writing R Extensions'.
  * The HTML help system now uses HTML5 (wish of PR#18149).
  * ks.test() now provides exact p-values also with ties and MC
    p-values in the two-sample (Smirnov) case.  By Torsten Hothorn.
  * ks.test() gains a formula interface, with y ~ 1 for the
    one-sample (Kolmogorov) test and y ~ group for the two-sample
    (Smirnov) test.  Contributed by Torsten Hothorn.
  * The return value from ks.test() now has class c("ks.test",
    "htest") - packages using try() need to take care to use
    inherits() and not == on the class.
  * New functions psmirnov(), qsmirnov() and rsmirnov() in package
    stats implementing the asymptotic and exact distributions of the
    two-sample Smirnov statistic.
  * iconv() now allows sub = "c99" to use C99-style escapes for UTF-8
    inputs which cannot be converted to encoding to.
  * In a forward pipe |&gt; expression it is now possible to use a named
    argument with the placeholder _ in the rhs call to specify where
    the lhs is to be inserted.  The placeholder can only appear once
    on the rhs.
  * The included LAPACK sources have been updated to version 3.10.0,
    except for the four Fortran 77 routines which 3.10.0 has
    re-implemented in Fortran 90 (where the older versions have been
    retained as the R build process does not support Fortran 90).
  * path.expand() and most other uses of tilde expansion now warn if
    a path would be too long if expanded.  (An exception is
    file.exists(), which silently returns false.)
  * trunc(&lt;Date&gt;, *) now supports units = "months" or "years" for
    consistency with the POSIXt method, thanks to Dirk Eddelbuettel's
    proposal in PR#18099.
  * list2DF() now checks that its arguments are of the same length,
    rather than use recycling.
  * The HTML help system has several new features: LaTeX-like math
    can be typeset using either KaTeX or MathJax, usage and example
    code is highlighted using Prism, and for dynamic help the output
    of examples and demos can be shown within the browser if the
    knitr package is installed. These features can be disabled by
    setting the environment variable _R_HELP_ENABLE_ENHANCED_HTML_ to
    a false value.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 15
    and so packages that provide graphics devices should be
    reinstalled.
  * The grid package now allows the user to specify a "vector" of
    pattern fills.  The fill argument to gpar() accepts a list of
    gradients and/or patterns and the functions linearGradient(),
    radialGradient(), and pattern() have a new group argument.
    Points grobs (data symbols) can now also have a pattern fill.
    The grobCoords() function now returns a more informative and
    complex result.
  * The grid package has new functions for drawing isolated groups:
    grid.group(), grid.define(), and grid.use().  These functions add
    compositing operators and affine transformations to R's graphics
    capabilities.
    The grid package also has new functions for stroking and filling
    paths: grid.stroke(), grid.fill(), and grid.fillStroke().
    A new function as.path() allows the user to specify the fill rule
    for a path that is to be used for clipping, stroking, or filling;
    available options are "winding" and "evenodd".  A new function
    as.mask() allows the user to specify the type of a mask;
    available options are "alpha" and "luminance".
    These new features are only supported so far (at most) on the
    Cairo-based graphics devices and on the pdf() device.
  * dev.capabilities() reports on device support for the new
    features.
  * par() now warns about unnamed non-character arguments to prevent
    misuse such as {usr &lt;- par("usr"); par(usr)}.
  INSTALLATION:
  * Facilities for accessing ftp:// sites are no longer tested
    (except _pro tem_ for curlGetHeaders()) as modern browsers have
    removed support.
  * R can now be built with DEFS = -DSTRICT_R_HEADERS .
  PACKAGE INSTALLATION:
  * R CMD INSTALL no longer tangles vignettes. This completes an R
    CMD build change in R 3.0.0 and affects packages built before R
    3.0.2. Such packages should be re-made with R CMD build to have
    the tangled R code of vignettes shipped with the tarball.
  * USE_FC_LEN_T will become the default: this uses the correct
    prototypes for Fortran BLAS/LAPACK routines called from C/C++,
    and requires adjustment of most such calls - see 'Writing R
    Extensions' SS6.6.2.  (This has been supported since R 3.6.2.)
  * Package installation speed for packages installed with
    keep.source has been improved. This resolve the issue reported by
    Ofek Shilon in PR#18236.
  UTILITIES:
  * R CMD check can optionally report files/directories left behind
    in home, /tmp (even though TMPDIR is set) and other directories.
    See the "R Internals" manual for details.
  * R CMD check now reports byte-compilation errors during
    installation.  These are not usually fatal but may result in
    parts of the package not being byte-compiled.
  * _R_CHECK_DEPENDS_ONLY_ can be applied selectively to examples,
    tests and/or vignettes in R CMD check: see the "R Internals"
    manual.
  * _R_CHECK_SRC_MINUS_W_IMPLICIT_ now defaults to true: recent
    versions of Apple clang on macOS have made implicit function
    declarations in C into a compilation error.
  * R CMD check --as-cran makes use of the environment variable
    AUTORECONF.  See the "R Internals" manual SS8 for further details.
  * R CMD check --use-valgrind also uses valgrind when re-building
    vignettes as some non-Sweave vignettes unhelpfully comment out
    all their code when R CMD check runs vignettes.
  * Errors in re-building vignettes (unless there are LaTeX errors)
    are reported by R CMD check as ERROR rather than WARNING when
    running vignettes has been skipped (as it frequently is in CRAN
    checks and by --as-cran).
  * R CMD Rd2pdf gains a --quiet option that is used by R CMD build
    when building the PDF package manual.
  * R CMD Rd2pdf now always runs LaTeX in batch mode, consistent with
    Texinfo &gt;= 6.7. The --batch option is ignored.
  * R CMD build and R CMD check now include the Rd file name and line
    numbers in the error message of an \Sexpr evaluation failure.
  * For packages using the \doi Rd macro (now an install-time \Sexpr)
    but no other dynamic Rd content, R CMD build now produces a
    smaller tarball and is considerably faster - skipping temporary
    package installation.
  C-LEVEL FACILITIES:
  * The non-API header R_ext/R-ftp-http.h is no longer provided, as
    the entry points it covered are now all defunct.
  * A number of non-API declarations and macro definitions have been
    moved from the installed header Rinternals.h to the internal
    header Defn.h. Packages that only use entry points and
    definitions documented to be part of the API as specified in
    'Writing R Extensions' SS6 should not be affected.
  * The macro USE_RINTERNALS no longer has any effect when compiling
    package code.  Packages which also use R_NO_REMAP will need to
    ensure that the remapped names are used for calls to API
    functions that were formerly also made available as macros.
  * The deprecated legacy S-compatibility macros PROBLEM, MESSAGE,
    ERROR, WARN, WARNING, RECOVER, ... are no longer defined in
    R_exts/RS.h (included by R.h).  Replace these by calls to
    Rf_error and Rf_warning (defined in header R_ext/Error.h included
    by R.h).
    Header R_ext/RS.h no longer includes R_ext/Error.h.
  * Header R_ext/Constants.h (included by R.h) when included from C++
    now includes the C++ header cfloat rather than the C header
    float.h (now possible as C++11 is required).
  * The legacy S-compatibility macros DOUBLE_* in R_ext/Constants.h
    (included by R.h) are deprecated.
  * The deprecated S-compatibility macros SINGLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * R_Calloc, R_Free and R_Realloc are preferred to their unprefixed
    forms and error messages now use the prefix. These forms were
    introduced in R 3.4.0 and are available even when
    STRICT_R_HEADERS is defined.
  * rmultinom has been documented in 'Writing R Extensions' SS6 so is
    now part of the R API.
  * Similarly, Rtanpi, called from R level tanpi() is now part of the
    R API.
  * The long-deprecated, undocumented and non-API entry point call_R
    is no longer declared in R_ext/RS.h (included by R.h).
  * The header S.h which has been unsupported since Jan 2016 has been
    removed.  Use R.h instead.
  DEPRECATED AND DEFUNCT:
  * The (non-default and deprecated) method = "internal" for
    download.file() and url() no longer supports http:// nor ftp://
    URIs.  (It is used only for file:// URIs.)
    On Windows, download.file(method = "wininet") no longer supports
    ftp:// URIs.  (It is no longer the default method, which is
    "libcurl" and does.)
    On Windows, the deprecated method = "wininet" now gives a warning
    for http:// and https:// URIs for both download.file() and url().
    (It is no longer the default method.)
  * On Windows, the command-line option --max-mem-size and
    environment variable R_MAX_MEM_SIZE are defunct.  The memory
    allocation limit was important for 32-bit builds, but these are
    no longer supported.
  * default.stringsAsFactors() is now formally deprecated, where that
    was only mentioned on its regular help page, previously.  So it
    now gives a warning if called.
  * unix.time() is defunct now; it had been deprecated since R 3.4.0.
  BUG FIXES:
  * Setting digits = 0 in format(), print.default() (and hence
    typically print()) or options() is again invalid.  Its behaviour
    was platform-dependent, and it is unclear what "zero significant
    digits" should mean (PR#18098).
  * Messages from C code in the cairo section of package grDevices
    are now also offered for translation, thanks to Michael Chirico's
    PR#18123.
  * mean(x) with finite x now is finite also without "long.double"
    capability.
  * R CMD Rd2pdf no longer leaves an empty build directory behind
    when it aborts due to an already existing output file.  (Thanks
    to Sebastian Meyer's PR#18141.)
  * density(x, weights = w, na.rm = TRUE) when anyNA(x) is true, now
    removes weights "in parallel" to x, fixing PR#18151, reported by
    Matthias Gondan.  Additionally, it gets a subdensity option.
  * Conversion of \Sexpr[]{&lt;expR&gt;} to LaTeX or HTML no longer
    produces long blocks of empty lines when &lt;expR&gt; itself contains
    several lines all producing empty output.  Thanks to a report and
    patch by Ivan Krylov posted to R-devel.
  * R CMD build no longer fails if a package vignette uses child
    documents and inst/doc exists.  (Thanks to Sebastian Meyer's
    PR#18156.)
  * When an R documentation ('help' source) file man/foo.Rd in a
    package has \donttest{..} examples with a syntax error, it is now
    signalled as ERROR and with correct line numbers relating to the
  * -Ex.R file, thanks to Duncan Murdoch and Sebastian Meyer's
    reports and patch proposals in PR#17501.
  * Improved determination of the correct translation domain in
    non-base packages, addressing the combination of PR#18092 and
    PR#17998 (#c6) with reports and _augmented_ patch #2904 by
    Suharto Anggono.
    Note that "R-base" is no longer the default domain e.g., for
    top-level calls to gettext(); rather translation needs explicit
    domain = * specification in such cases.
  * identical(attrib.as.set=FALSE) now works correctly with data
    frames with default row names (Thanks to Charlie Gao's PR#18179).
  * txtProgressBar() now enforces a non-zero width for argument char,
    without which no progress can be visible.
  * dimnames(table(d)) is more consistent in the case where d is a
    list with a single component, thanks to Thomas Soeiro's report to
    R-devel.
    Further, table(d1, d2) now gives an error when d1 and d2 are data
    frames as suggested by Thomas in PR#18224.
  * Fix for drawing semi-transparent lines and fills on the native
    Windows graphics device (PR#18219 and PR#16694).  Thanks to Nick
    Ray for helpful diagnosis on Bugzilla.
  * The deparser now wraps sub-expressions such as if(A) ..  with
    parentheses when needed; thanks to Duncan Murdoch's PR#18232 and
    Lionel Henry's patches there.
  * remove.packages() no longer tries to uninstall Priority: base
    packages, thanks to a report and suggestions by Colin Fay in
    PR#18227.
  * win.metafile() now has xpinch and ypinch arguments so that the
    user can override Windows' (potentially wrong) guess at device
    dimensions.
  * x[i] and x[[i]] for non-integer i should now behave in all cases
    as always documented: the index used is equivalent to
    as.integer(i) unless that would overflow where trunc(i) is used
    instead; thanks to Suharto Anggono's report and patch proposals
    in PR#17977.
  * asOneSidedFormula() now associates the resulting formula with the
    global environment rather than the evaluation environment created
    for the call.
  * &lt;bibentry&gt;$name now matches the field name case-insensitively,
    consistent with bibentry() creation and the replacement method.
  * cbind() failed to detect some length mismatches with a mixture of
    time-series and non-time-series inputs.
  * The default LaTeX style file Sweave.sty used by the RweaveLatex
    driver no longer loads the obsolete ae package; thanks to a
    report by Thomas Soeiro in PR#18271.  Furthermore, it now skips
    \usepackage[T1]{fontenc} for engines other than pdfTeX (if
    detected) or if the new [nofontenc] option is used.
  * smooth.spline() now stores its logical cv argument more safely,
    fixing a rare bug when printing, and also stores n.
  * smooth.spline(x,y,*) now computes the cv.crit statistic
    correctly, also when is.unsorted(x), fixing PR#18294.
  * The data.frame method of rbind() now warns when binding
    not-wholly-recycling vectors, by analogy to the default method
    (for matrices).
  * setAs() finds the correct class for name to when multiple
    packages define a class with that name. Thanks to Gabor Csardi
    for the report.
  * Fix for detaching a package when two classes of the same name are
    present in method signatures for the same generic. Thanks to
    Gabor Csardi for the report.
  * match.arg("", c("", "a", "B")) gives a better error message, in
    part from PR#17959, thanks to Elin Waring.
  * R CMD Sweave --clean no longer removes pre-existing files or
    subdirectories (PR#18242).
  * The quartz() device no longer splits polylines into subpaths.
    That has caused narrowly-spaced lines with many points to always
    look solid even when dashed line type was used due to dash phase
    restarts.
  * Deparsing constructs such as quote(1 + `!`(2) + 3) works again as
    before R 3.5.0, thanks to the report and patch in PR#18284 by
    Suharto Anggono.
  * as.list(f) for a factor f now keeps names(f), fixing PR#18309.
  * qbeta(.001, .9, .009) and analogous qf() calls now return a
    correct value instead of NaN or wrongly 1, all with a warning;
    thanks to the report by Ludger Goeminne in PR#18302.
  * plot.lm() failed to produce the plot of residuals vs.  factor
    levels (i.e., which=5 when leverages are constant) for models
    with character predictors (PR#17840).
  * interaction.plot(..., xtick = TRUE) misplaced the x-axis line
    (PR#18305).
  * Not strictly fixing a bug, format()ing and print()ing of
    non-finite Date and POSIXt values NaN and +/-Inf no longer show
    as NA but the respective string, e.g., Inf, for consistency with
    numeric vector's behaviour, fulfilling the wish of PR#18308.
  * R CMD check no longer runs test scripts generated from
    corresponding .Rin files twice and now signals an ERROR if
    processing an .Rin script fails.
  * tools::Rd2txt() used for plain-text help pages now renders \hrefs
    (if tools::Rd2txt_options(showURLs = TRUE)) and \urls with
    percent-encoding and standards-compliant delimiting style (angle
    brackets and no URL: prefix).  \email is now rendered with a
    mailto: prefix.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1655985600">- CHANGES IN R 4.2.1:
  NEW FEATURES:
  * New function utils::findCRANmirror() to find out if a CRAN mirror
    has been selected, otherwise fallback to the main site.  This
    behaves in the same way as tools::CRAN_package_db() and is
    intended for packages wishing to access CRAN for purposes other
    than installing packages.
    The need for this was shown by a day when the main CRAN website
    was offline and a dozen or so packages which had its URL
    hardcoded failed their checks.
  INSTALLATION on a UNIX-ALIKE:
  * The libraries searched for by --with-blas (without a value) now
    include BLIS (after OpenBLAS but before ATLAS).  And on macOS,
    the Accelerate framework (after ATLAS).  (This is patterned after
    the AX_BLAS macro from the Autoconf Archive.)
  * The included LAPACK sources have been updated to 3.10.1.
  UTILITIES:
  * The (full path to) the command tidy to be used for HTML
    validation can be set by environment variable R_TIDYCMD.
  * Setting environment variable _R_CHECK_RD_VALIDATE_RD2HTML_ to a
    false value will override R CMD check --as-cran and turn off HTML
    validation.  This provides a way to circumvent a problematic
    tidy.
    The 2006 version that ships with macOS is always skipped.
  C-LEVEL FACILITIES:
  * The undocumented legacy declarations of Sint, Sfloat, SINT_MAX
    and SINT_MIN in header R.h are deprecated.
  BUG FIXES:
  * fisher.test(d) no longer segfaults for "large" d; fixing PR#18336
    by preventing/detecting an integer overflow reliably.
  * tar(., files=*) now produces correctly the warning about invalid
    uid or gid of files, fixing PR#18344, reported by Martin Morgan.
  * tk_choose.files() with multi = FALSE misbehaved on paths
    containing spaces (PR#18334) (regression introduced in R 4.0.0).
  * sort(x, partial = ind, *) now works correctly notably for the
    non-default na.last = FALSE or TRUE, fixing PR#18335 reported by
    James Edwards.
  * Environment variable _R_CHECK_XREFS_REPOSITORIES_ is only used
    for checking .Rd cross-references in R CMD check (as documented)
    and not for other uses looking for a CRAN mirror.
  * The search for a CRAN mirror when checking packages now uses
    getOption("repos") if that specifies a CRAN mirror, even when it
    does not also specify all three Bioconductor repositories (as was
    previously required).
  * The HTML code generated by tools::Rd2HTML() has been improved to
    pass tidy 5.8.0.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1667217600">- CHANGES IN R 4.2.2:
  NEW FEATURES:
  * tools::Rdiff(useDiff = TRUE) checks for the presence of an
    external diff command and switches to useDiff = FALSE if none is
    found.  This allows R CMD Rdiff to always work.
  * On Windows, environment variable R_LIBCURL_SSL_REVOKE_BEST_EFFORT
    can be used to switch to only 'best-effort' SSL certificate
    revocation checks with the default "libcurl" download method.
    This reduces security, but may be needed for downloads to work
    with MITM proxies (PR#18379).
  * (macOS) The run-time check for libraries from XQuartz for X11 and
    Tcl/Tk no longer uses otool from the Apple Developer Tools
    (PR#18400).
  * The LaTeX style for producing the PDF manuals, Rd.sty, now loads
    the standard amsmath, amsfonts and amssymb packages for greater
    coverage of math commands in the Rd \eqn and \deqn macros.  The
    \mathscr LaTeX command is also provided (via the mathrsfs
    package, if available, or the amsfonts bundle otherwise),
    fulfilling the wish of PR#18398.
  * (Windows) The default format of readClipboard() and
    writeClipboard() has been changed to 13 (CF_UNICODETEXT).
  INSTALLATION on a UNIX-ALIKE:
  * The PDF manuals (if built) can be compacted by the new target
    make compact-pdf (at the top level or in directory doc/manual).
  * There is now configure support for LLVM clang 15 on Linux, which
    defaults to position-independent (PIE) executables whereas
    gfortran does not.
  * Many small changes to ease compilation (and suppress warnings)
    with LLVM clang 15.
  BUG FIXES:
  * Rscript -e would fail if stdin were closed (Reported by Henrik
    Bengtsson.)
  * qt(*, log.p=TRUE) in outer tails no longer produces NaN in its
    final steps, thus fixing PR#18360.
  * tools::Rd2latex() now escapes hashes and ampersands when writing
    URLs, fixing LaTeX errors with such URLs in \tabular.
  * When isGeneric(f, fdef=*) is used with mismatching names, the
    warning is better understandable; reported (with fix) in PR#18370
    by Gabe Becker.
  * poly(x, n) now works again (and is now documented) when x is a
    "Date" or "POSIXct" object, or of another class while fulfilling
    mode(x) == "numeric".  This also enables poly(x, *, raw=TRUE) for
    such variables.  Reported by Michael Chirico to R-devel.
  * write.table(), write.csv() and write.csv2() restore their
    numerical precision (internal equivalent of digits = 15) after an
    interrupt (PR#18384).
  * One can now read also byte FF from a clipboard connection
    (PR#18385).
  * source("") and source(character()) now give more helpful error
    messages.
  * R CMD check --as-cran set _R_CHECK_TIMINGS_ too late to have the
    intended effect.
  * as.POSIXlt(x) now also works with very large dates x, fixing
    PR#18401 reported by Hannes M"uhleisen.
  * Files can now be extracted even from very large zip archives
    (PR#18390, thanks to Martin Jakt).
  * Non-finite objects of class "POSIXlt" are now correctly coerced
    to classes "Date" and "POSIXct"; following up on the extension to
    format() them correctly.
  * Added methods for is.finite(), is.infinite() and is.nan() for
    "POSIXlt" date-time objects.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1678881600">- CHANGES IN R 4.2.3:
  C-LEVEL FACILITIES:
  * The definition of DL_FUNC in R_ext/Rdynload.h has been changed to
    be fully C-compliant.  This means that functions loaded _via_ for
    example R_GetCCallable need to be cast to an appropriate type if
    they have any arguments.
  * .Machine has a new element sizeof.time_t to identify old systems
    with a 32-bit type and hence a limited range of date-times (and
    limited support for dates millions of years from present).
  PACKAGE INSTALLATION:
  * (Windows) The default C++ standard had accidentally been left at
    C++11 when it was changed to C++14 on Unix.
  BUG FIXES:
  * As "POSIXlt" objects may be "partially filled" and their list
    components meant to be recycled, length() now is the length of
    the longest component.
  * as.POSIXlt.Date() could underflow for dates in the far past (more
    than half a million years BCE).
  * as.Date.POSIXlt(x) would return "1970-01-01" instead of NA in R
    4.2.2, e.g., for
    x &lt;- as.POSIXlt(c("2019-01-30","2001-1-1"))
    x$mon &lt;- c(0L, NA); as.Date(x)
  * R CMD check failed to apply enabled _R_CHECK_SUGGESTS_ONLY_ to
    examples and vignettes (regression in R 4.2.0).
  * R CMD check did not re-build vignettes in separate processes by
    default (regression in R 4.2.0).
  * Running examples from HTML documentation now restores previous
    knitr settings and options (PR#18420).
  * Quartz: fonts are now located using Core Graphics API instead of
    deprecated ATS which is no longer supported in the macOS 13 SDK
    (PR#18426).  This also addresses an issue where the currently
    used font in the Quartz device context was not correctly
    retained.
  * (Windows) Math symbols in text drawing functions are again
    rendered correctly (PR#18440).  This fixes a regression in R
    4.2.1 caused by a fix in PR#18382 which uncovered an issue in
    GraphApp due to which the symbol charset was not used with TT
    Symbol font face.
  * (Windows) Installing a package with a src/Makefile.{win,ucrt}
    file includes ~/.R/Makevars.win64 in the search for user
    makevars, as documented in "R Installation and Administration"
    and done for packages with a src/Makevars.{win,ucrt} file.
  * format(&lt;POSIXlt_w/_unbalanced_sec&gt;, "....%OS&lt;n&gt;") with n &gt; 0 no
    longer accidentally uses the unbalanced seconds, thanks to
    Suharto Anggono's report (including patch) in PR#18448.
  * solve.default(a, b) works around issues with some versions of
    LAPACK when a contains NA or NaN values.
  * When UseMethod() cannot dispatch, it no longer segfaults
    producing the error message in case of a long class(), thanks to
    Joris Vankerschaver's report (including patch) in PR#18447.
  * When example(foo, ..) produces graphics on an interactive device
    it needs to open itself, it now leaves devAskNewPage() unchanged
    even when it was FALSE, thus fixing a 14 years old '&lt;FIXME&gt;'.
  * packageDescription() again catches errors from encoding
    conversions. This also fixes broken packageVersion() in C locale
    on systems where iconv does not support transliteration.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1681128000">- add patch to build with libcurl &gt;= 8</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1682078400">- CHANGES IN R 4.3.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Calling &amp;&amp; or || with LHS or (if evaluated) RHS of length greater
    than one is now always an error, with a report of the form
    'length = 4' in coercion to 'logical(1)'
    Environment variable _R_CHECK_LENGTH_1_LOGIC2_ no longer has any
    effect.
  NEW FEATURES:
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.10.1.  (This caused some platform-dependent
    changes to package check output.)  And then to the sources from
    LAPACK version 3.11.0 (with changes only to double complex
    subroutines).
  * The included LAPACK sources have been updated to include the four
    Fortran 90 routines rather than their Fortran 77 predecessors.
    This may give some different signs in SVDs or
    eigendecompositions..  (This completes the transition to LAPACK
    3.10.x begun in R 4.2.0.)
  * The LAPACK sources have been updated to version 3.11.0.  (No new
    subroutines have been added, so this almost entirely bug fixes:
    Those fixes do affect some computations with NaNs, including R's
    NA.)
  * The parser now signals _classed_ errors, notably in case of the
    pipe operator |&gt;.  The error object and message now give line and
    column numbers, mostly as proposed and provided by Duncan Murdoch
    in PR#18328.
  * toeplitz() is now generalized for asymmetric cases, with a
    toeplitz2() variant.
  * xy.coords() and xyz.coords() and consequently, e.g., plot(x,y,
    log = "y") now signal a _classed_ warning about negative values
    of y (where log(.) is NA).  Such a warning can be specifically
    suppressed or caught otherwise.
  * Regular expression functions now check more thoroughly whether
    their inputs are valid strings (in their encoding, e.g. in
    UTF-8).
  * The performance of grep(), sub(), gsub() and strsplit() has been
    improved, particularly with perl = TRUE and fixed = TRUE.  Use of
    useBytes = TRUE for performance reasons should no longer be
    needed and is discouraged: it may lead to incorrect results.
  * apropos() gains an argument dot_internals which is used by the
    completion (help(rcompgen)) engine to also see base internals
    such as .POSIXct().
  * Support in tools::Rdiff() for comparing uncompressed PDF files is
    further reduced - see its help page.
  * qqplot(x, y, ...) gains conf.level and conf.args arguments for
    computing and plotting a confidence band for the treatment
    function transforming the distribution of x into the distribution
    of y (Switzer, 1976, _Biometrika_). Contributed by Torsten
    Hothorn.
  * Performance of package_dependencies() has been improved for cases
    when the number of dependencies is large.
  * Strings newly created by gsub(), sub() and strsplit(), when any
    of the inputs is marked as "bytes", are also marked as "bytes".
    This reduces the risk of creating invalid strings and accidental
    substitution of bytes deemed invalid.
  * Support for readLines(encoding = "bytes") has been added to allow
    processing special text files byte-by-byte, without creating
    invalid strings.
  * iconv(from = "") now takes into account any declared encoding of
    the input elements and uses it in preference to the native
    encoding.  This reduces the risk of accidental creation of
    invalid strings, particularly when different elements of the
    input have different encoding (including "bytes").
  * Package repositories in getOption("repos") are now initialized
    from the repositories file when utils is loaded (if not already
    set, e.g., in .Rprofile).  (From a report and patch proposal by
    Gabriel Becker in PR#18405.)
  * compactPDF() gets a verbose option.
  * type.convert() and hence read.table() get new option tryLogical =
    TRUE with back compatible default.  When set to false, converts
    "F" or "T" columns to character.
  * Added new unit prefixes "R" and "Q" for abbreviating
    (unrealistically large) sizes beyond 10^{27} in standard = "SI",
    thanks to Henrik Bengtsson's PR#18435.
  * as.data.frame()'s default method now also works fine with atomic
    objects inheriting from classes such as "roman", "octmode" and
    "hexmode", such fulfilling the wish of PR#18421, by Benjamin
    Feakins.
  * The as.data.frame.vector() utility now errors for wrong-length
    row.names.  It warned for almost six years, with "Will be an
    error!".
  * sessionInfo() now also contains La_version() and reports codepage
    and timezone when relevant, in both print() and toLatex() methods
    which also get new option tzone for displaying timezone
    information when locale = FALSE.
  * New function R_compiled_by() reports the C and Fortran compilers
    used to build R, if known.
  * predict(&lt;lm&gt;, newdata = *) no longer unnecessarily creates an
    offset of all 0s.
  * solve() for complex inputs now uses argument tol and by default
    checks for 'computational singularity' (as it long has done for
    numeric inputs).
  * predict(&lt;rank-deficient lm&gt;, newdata=*) now obeys a new argument
    rankdeficient, with new default "warnif", warning only if there
    are non-estimable cases in newdata.  Other options include
    rankdeficient = "NA", predicting NA for non-estimable newdata
    cases.  This addresses PR#15072 by Russ Lenth and is based on his
    original proposal and discussions in PR#16158 also by David Firth
    and Elin Waring.  Still somewhat experimental.
  * Rgui console implementation now works better with the NVDA screen
    reader when the full blinking cursor is selected.  The underlying
    improvements in cursor handling may help also other screen
    readers on Windows.
  * The drop-field control in GraphApp can now be left with the TAB
    key and all controls can be navigated in the reverse order using
    the Shift+TAB key, improving accessibility of the Rgui
    configuration editor.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now fully accurate
    (instead of to "only" minimally five digits).
  * demo(error.catching) now also shows off withWarnings() and
    tryCatchWEMs().
  * As an experimental feature the placeholder _ can now also be used
    in the rhs of a forward pipe |&gt; expression as the first argument
    in an extraction call, such as _$coef. More generally, it can be
    used as the head of a chain of extractions, such as _$coef[[2]].
  * Spaces in the environment variable used to choose the R session's
    temporary directory (TMPDIR, TMP and TEMP are tried in turn) are
    now fatal.  (On Windows the 'short path' version of the path is
    tried and used if that does not contain a space.)
  * all.equal.numeric() gets a new optional switch giveErr to return
    the numeric error as attribute.  Relatedly,
    stopifnot(all.equal&lt;some&gt;(a, b, ..)) is as "smart" now, as
    stopifnot(all.equal(....)) has been already, thus allowing
    customized all.equal&lt;Some&gt;() wrappers.
  * R on Windows is now able to work with path names longer than 260
    characters when these are enabled in the system (requires at
    least Windows 10 version 1607).  Packages should be updated to
    work with long paths as well, instead of assuming PATH_MAX to be
    the maximum length.  Custom front-ends and applications embedding
    R need to update their manifests if they wish to allow this
    feature.  See
    &lt;https://blog.r-project.org/2023/03/07/path-length-limit-on-windows&gt;
    for more information.
  * 'Object not found' and 'Missing argument' errors now give a more
    accurate error context. Patch provided by Lionel Henry in
    PR#18241.
  * The @ operator is now an S3 generic. Based on contributions by
    Tomasz Kalinowski in PR#18482.
  * New generic chooseOpsMethod() provides a mechanism for objects to
    resolve cases where two suitable methods are found for an Ops
    Group Generic. This supports experimenting with alternative
    object systems. Based on contributions by Tomasz Kalinowski in
    PR#18484.
  * inherits(x, what) now accepts values other than a simple
    character vector for argument what. A new generic, nameOfClass(),
    is called to resolve the class name from what. This supports
    experimenting with alternative object systems. Based on
    contributions by Tomasz Kalinowski in PR#18485.
  * Detection of BLAS/LAPACK in use (sessionInfo()) with FlexiBLAS
    now reports the current backend.
  * The "data.frame" method for subset() now warns about extraneous
    arguments, typically catching the use of = instead of == in the
    subset expression.
  * Calling a:b when numeric a or b is longer than one may now be
    made into an error by setting environment variable
    _R_CHECK_LENGTH_COLON_ to a true value, along the proposal in
    PR#18419 by Henrik Bengtsson.
  * density(x, weights = *) now warns if automatic bandwidth
    selection happens without using weights; new optional warnWbw may
    suppress the warning.  Prompted by Christoph Dalitz' PR#18490 and
    its discussants.
  * rm(list = *) is faster and more readable thanks to Kevin Ushey's
    PR#18492.
  * The plot.lm() function no longer produces a normal Q-Q plot for
    GLMs. Instead it plots a half-normal Q-Q plot of the absolute
    value of the standardized deviance residuals.
  * The print() method for class "summary.glm" no longer shows
    summary statistics for the deviance residuals by default.  Its
    optional argument show.residuals can be used to show them if
    required.
  * The tapply() function now accepts a data frame as its X argument,
    and allows INDEX to be a formula in that case. by.data.frame()
    similarly allows INDICES to be a formula.
  * The performance of df[j] &lt;- value (including for missing j) and
    write.table(df) has been improved for data frames df with a large
    number of columns.  (Thanks to Gabriel Becker's PR#18500,
    PR#18503 and discussants, prompted by a report from Toby Dylan
    Hocking on the R-devel mailing list.)
  * The matrix multiply operator %*% is now an S3 generic, belonging
    to new group generic matrixOps.  From Tomasz Kalinowski's
    contribution in PR#18483.
  * New function array2DF() to convert arrays to data frames,
    particularly useful for the list arrays created by tapply().
  DATES and TIMES:
  * On platforms where (non-UTC) datetimes before 1902 (or before
    1900 as with system functions on recent macOS) are guessed by
    extrapolating time zones from 1902-2037, there is a warning at
    the first use of extrapolation in a session.  (As all time zones
    post 2037 are extrapolation, we do not warn on those.)
  * (Platforms using --with-internal-tzone, including Windows and by
    default macOS). How years are printed in dates or date-times can
    be controlled by environment variable R_PAD_YEARS_BY_ZERO.  The
    default remains to pad to 4 digits by zeroes, but setting value
    no gives no padding (as used by default by glibc).
  * strftime() tries harder to determine the offset for the "%z"
    format, and succeeds on the mainstream R platforms.
  * strftime() has a limit of 2048 bytes on the string produced -
    attempting to exceed this is an error.  (Previously it silently
    truncated at 255 bytes.)
  * sessionInfo() records (and by default prints) the system time
    zone as part of the locale information.  Also, the source
    (system/internal) of the date-time conversion and printing
    functions.
  * Objects of class "POSIXlt" created in this version of R always
    have 11 components: component zone is always set, and component
    gmtoff is set for times in UTC and usually set on the (almost
    all) platforms which have C-level support, otherwise is NA.
  * There are comprehensive validity checks on the structure of
    objects of class "POSIXlt" when converting (including formatting
    and printing).  (This avoids mis-conversions of hand-crafted
    objects.)
  * There is some support for using the native date-time routines on
    macOS: this is only viable on recent versions (e.g. 12.6 and 13)
    and does get wrong some historical changes (before 1900, during
    WWII).  Use of --with-internal-tzone remains the default.
  * as.POSIXct(&lt;numeric&gt;) and as.POSIXlt(.) (without specifying
    origin) now work.  So does as.Date(&lt;numeric&gt;).
  * as.Date.POSIXct(., tz) now treats several tz values, notably
    "GMT" as equivalent to "UTC", proposed and improved by Michael
    Chirico and Joshua Ulrich in PR#17674.
  * Experimental balancePOSIXlt() utility allows using "ragged" and
    or out-of-range "POSIXlt" objects more correctly, e.g., in
    subsetting and subassignments.  Such objects are now documented.
    More experimentally, a "POSIXlt" object may have an attribute
    "balanced" indicating if it is known to be filled or fully
    balanced.
  * Functions axis.Date() and axis.POSIXct() are rewritten to gain
    better default tick locations and better default formats by using
    prettyDate(). Thanks to Swetlana Herbrandt.
  * The mapping of Windows' names for time zones to IANA's 'Olson'
    names has been updated.  When ICU is available (it is by
    default), it is used to get a mapping for the current region set
    in Windows.  This can be overridden by setting environment
    variable TZ to the desired Olson name - see OlsonNames() for
    those currently available.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 16
    and so packages that provide graphics devices should be
    reinstalled.
  * The grDevices and grid packages have new functions for rendering
    typeset glyphs, primarily: grDevices::glyphInfo() and
    grid::grid.glyph().
    Rendering of typeset glyphs is only supported so far on the
    Cairo-based graphics devices and on the pdf() and quartz()
    devices.
  * The defined behaviour for "clear" and "source" compositing
    operators (via grid::grid.group()) has been changed (to align
    better with simple interpretation of original Porter-Duff
    definitions).
  * Support for gradients, patterns, clipping paths, masks, groups,
    compositing operators, and affine transformations has been added
    to the quartz() device.
  INSTALLATION on a UNIX-ALIKE:
  * A system installation of generic LAPACK 3.10.0 or later will be
    preferred to the version in the R sources.
    configure option --with-lapack=no (equivalently --without-lapack)
    forces compilation of the internal LAPACK sources.
    If --with-lapack is not specified, a system liblapack is looked
    for and used if it reports version 3.10.0 or later and does not
    contain BLAS routines.
    Packages using LAPACK will need to be reinstalled if this changes
    to using an external library.
  * On aarch64 Linux platforms using GCC, configure now defaults to
  - fPIC (instead of -fpic), as desired in PR#18326.
  * configure now checks conversion of datetimes between POSIXlt and
    POSIXct around year 2020.  Failure (which has been seen on
    platforms missing tzdata) is fatal.
  * If configure option --with-valgrind-instrumentation is given
    value 1 or 2, option --with-system-valgrind-headers is now the
    default and ignored (with a warning).  It is highly recommended
    that the system headers are installed alongside valgrind: they
    are part of its packaging on some Linux distributions and
    packaged separately (e.g. in the valgrind-devel RPM) on others.
    configure will give a warning if they are not found.
    The system headers will be required in a future release of R to
    build with valgrind instrumentation.
  * libcurl 8.x is now accepted by configure: despite a change in
    major version number it changes neither API nor ABI.
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools43, an update of the Rtools42 toolchain.  It is
    based on gcc 12 and newer versions of MinGW-W64, binutils and
    libraries.  At this time R-devel can still be built using
    Rtools42 without changes, but when R-devel is installed via the
    installer, it will by default look for Rtools43.
  * Old make targets rsync-extsoft and 32-bit ones that are no longer
    needed have been removed.
  * Default builds (including for packages) no longer select C99.
    Thus the C standard used is the default for the compiler, which
    for the toolchain in Rtools43 is C17.  (This is consistent with
    Unix builds.)
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++17 where
    available (which it is on all currently checked platforms): if
    not C++14 or C++11 is used if available otherwise C++ is not
    supported.
  * USE_FC_LEN_T is the default: this uses the correct
    (compiler-dependent) prototypes for Fortran BLAS/LAPACK routines
    called from C/C++, and requires adjustment of many such calls -
    see 'Writing R Extensions' SS6.6.1.
  * There is initial support for C++23 as several compilers are now
    supporting -std=c++23 or -std=c++2b or similar.  As for C++20,
    there no additional configure checks for C++23 features beyond a
    check that the compiler reports a __cplusplus value greater than
    that in the C++20 standard.  C++ feature tests should be used.
  * There is support for a package to indicate the version of the C
    standard which should be used to compile it, and for the
    installing user to specify this.  In most cases R defaults to the
    C compiler's default standard which is C17 (a `bug-fix' of C11) -
    earlier versions of R or compilers may have defaulted to C99.
    Current options are:
    USE_C17 Use a standard that is at most C17.  The intention is to
    allow legacy packages to still be installed when later C
    standards become the default, including packages using new
    keywords as identifiers or with K&amp;R-style function
    declarations.  This will use C17 if available, falling back
    to C11.
    USE_C90 Use the C90 (aka C89) standard.  (As that standard did
    not require compilers to identify that version, all we can
    verify is that the compiler does not claim to be using a
    later standard.  It may accept C99 features - for example
    clang accepts // to make comments.)
    USE_C99 Use the C99 standard. This should be rarely needed - it
    avoids the few new features of C11/C17 which can be useful if
    a package assumes them if C17 is specified and they are not
    implemented.
    USE_C23 Use C23 (or in future, later).  Compiler/library support
    for C23 is still being implemented, but LLVM clang from
    15.0.0 and the upcoming GCC 13 have quite extensive support.
    These can be specified as part of the SystemRequirements field in
    the package's DESCRIPTION file or _via_ options --use-C17 and so
    on of R CMD INSTALL and R CMD SHLIB.
    For further details see "Writing R Extensions" SS1.2.5.
  * (Windows) A src/Makefile.ucrt or src/Makefile.win file is now
    included after R_HOME/etcR_ARCH/Makeconf and so no longer needs
    to include that file itself.  Installation of a package with such
    a file now uses a site Makevars file in the same way as a package
    with a src/Makevars.win file would.
  * configure is now passed crucial variables such as CC and CFLAGS
    in its environment, as many packages were not setting them (as
    documented in 'Writing R Extensions' SS1.2).
    This has most effect where configure is used to compile parts of
    the package - most often by cmake or libtool which obfuscate the
    actual compile commands used.
    Also used for configure.win and configure.ucrt on Windows.
  FORTRAN FLAGS:
  * The flag -fno-optimize-sibling-calls is no longer forced for
    gfortran 7 and later.  It should no longer be needed now using
    'hidden' character-length arguments when calling BLAS/LAPACK
    routines from C/C++ is the default even for packages.  (Unless
    perhaps packages call Fortran code from C/C++ without using R's
    headers and without allowing for these arguments.)
  C-LEVEL FACILITIES:
  * The deprecated S-compatibility macros DOUBLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * The deprecated legacy typedefs of Sint and Sfloat in header R.h
    are no longer defined, and that header no longer includes header
    limits.h from C nor climits from C++.
  * New macro CAD5R() is provided in Rinternals.h and used in a few
    places in the R sources.
  * ALTREP now supports VECSXP vectors. Contributed by Gabor Csardi
    in PR#17620.
  * The Rcomplex definition (in header R_ext/Complex.h) has been
    extended to prevent possible mis-compilation when interfacing
    with Fortran (PR#18430).  The new definition causes compiler
    warnings with static initializers such as {1, 2}, which can be
    changed to {.r=1, .i=2}.
    Using the new definition from C++ depends on compiler extensions
    supporting C features that have not been incorporated into the
    C++ standards but are available in g++ and clang++: this may
    result in C++ compiler warnings but these have been worked around
    for recent versions of common compilers (GCC, Apple/LLVM clang,
    Intel).
    It is intended to change the inclusion of header R_ext/Complex.h
    by other R headers, so C/C++ code files which make use of
    Rcomplex should include that header explicitly.
  UTILITIES:
  * R CMD check does more checking of package .Rd files, warning
    about invalid email addresses and (some) invalid URIs and noting
    empty \item labels in description lists.
  * R CMD check now also reports problems when reading package news
    in md (file NEWS.md) and (optionally) plain text (file NEWS)
    formats.
  * _R_CHECK_TIMINGS_ defaults to a value from the environment even
    for R CMD check --as-cran; this allows for exceptionally fast or
    slow platforms.
    It now applies to checking PDF and HTML versions of the manuals,
    and 'checking CRAN incoming feasibility'.
  * R CMD check can optionally (but included in --as-cran) check
    whether HTML math rendering _via_ KaTeX works for the package .Rd
    files.
  * Non-interactive debugger invocations can be trapped by setting
    the environment variable _R_CHECK_BROWSER_NONINTERACTIVE_ to a
    true value.  This is enabled by R CMD check --as-cran to detect
    the use of leftover browser() statements in the package.
  * The use of sprintf and vsprintf from C/C++ has been deprecated in
    macOS 13 and is a known security risk.  R CMD check now reports
    (on all platforms) if their use is found in compiled code:
    replace by snprintf or vsnprintf respectively. [*NB:* whether
    such calls get compiled into the package is platform-dependent.]
  * Where recorded at installation, R CMD check reports the C and
    Fortran compilers used to build R.
    It reports the OS in use (if known, as given by osVersion) as
    well as that R was built for.
    It notes if a C++ standard was specified which is older than the
    current default: many packages have used C++11 to mean 'not
    C++98' - as C++11 is the minimum supported since R 4.0.0, that
    specification can probably be removed.
  * R CMD INSTALL reports the compilers (and on macOS, the SDK) used,
    and this is copied to the output of R CMD check.
    Where a C++ standard is specified, it is reported.
  * R CMD check's 'checking compilation flags in Makevars' has been
    relaxed to accept the use of flags such as -std=f2008 in
    PKG_FFLAGS.
  * tools::buildVignettes() has a new argument skip, which is used by
    R CMD check to skip (and note) vignettes with unavailable
    \VignetteDepends (PR#18318).
  * New generic .AtNames() added to enable class-specific completions
    after @. The formerly internal function findMatches() is now
    exported, mainly for use in methods for .DollarNames() and
    .AtNames().
  DEPRECATED AND DEFUNCT:
  * default.stringsAsFactors() is defunct.
  * Calling as.data.frame.&lt;class&gt;() directly (for 12 atomic classes)
    is going to be formally deprecated, currently activated by
    setting the environment variable
    _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ to non-empty, which also
    happens in R CMD check --as-cran.
  BUG FIXES:
  * Hashed environments with sizes less than 5 can now grow.
    (Reported to R-devel by Duncan Garmonsway.)
  * as.character(&lt;Rd&gt;, deparse = TRUE) failed to re-escape curly
    braces in LaTeX-like text.  (Reported by Hadley Wickham in
    PR#18324.)
  * library() now passes its lib.loc argument when requiring Depends
    packages; reported (with fix) in PR#18331 by Mikael Jagan.
  * R CMD Stangle: improved message about 'Output' files.
  * head(x, n) and tail(x, n) now signal an error if n is not
    numeric, instead of incidentally "working" sometimes returning
    all of x.  Reported and discussed by Colin Fay, in PR#18357.
  * The "lm" method for summary() now gives the correct F-statistic
    when the model contains an offset.  Reported in PR#18008.
  * C() and `contrasts&lt;-`() now preserve factor level names when
    given a function object (as opposed a function name which did
    preserve names). Reported in PR#17616.
  * c(a = 1, 2)[[]] no longer matches 2 but rather signals a
    _classed_ error.  Reported and analysed by Davis Vaughan in
    PR#18367, a duplicate of PR#18004, by Jan Meis et al.  For
    consistency, NULL[[]] is also erroneous now.  x[[]] &lt;- v gives an
    error of the same class "MissingSubscriptError".
  * The relist() function of utils now supports NULL elements in the
    skeleton (PR#15854).
  * ordered(levels = *) (missing x) now works analogously to factor(,
    ordered=TRUE); reported (with fix) by Achim Zeileis in PR#18389.
  * User-defined Rd macro definitions can now span multiple lines,
    thanks to a patch from Duncan Murdoch. Previously, the Rd parser
    silently ignored everything after the first line.
  * Plain-text help (tools::Rd2txt()) now preserves an initial blank
    line for text following description list items.
  * tools::Rd2HTML() and tools::Rd2latex() no longer split \arguments
    and \value lists at Rd comments.
  * tools::Rd2latex() now correctly handles optional text outside
    \items of argument lists as well as bracketed text at the
    beginning of sections, e.g., \value{[NULL]}.
  * as.character(&lt;POSIXt&gt;) now behaves more in line with the methods
    for atomic vectors such as numbers, and is no longer influenced
    by options().  Ditto for as.character(&lt;Date&gt;).  The
    as.character() method gets arguments digits and OutDec with
    defaults _not_ depending on options().  Use of as.character(*,
    format = .) now warns.
  * Similarly, the as.character.hexmode() and *.octmode() methods
    also behave as good citizen methods and back compatibility option
    keepStr = TRUE.
  * The as.POSIXlt(&lt;POSIXlt&gt;) and as.POSIXct(&lt;POSIXct&gt;) default
    methods now do obey their tz argument, also in this case.
  * as.POSIXlt(&lt;Date&gt;) now does apply a tz (time zone) argument, as
    does as.POSIXct(); partly suggested by Roland Fuss on the R-devel
    mailing list.
  * as.Date.POSIXlt(x) now also works when the list components are of
    unequal length, aka "partially filled" or "ragged".
  * expand.model.frame() looked up variables in the wrong environment
    when applied to models fitted without data.  Reported in
    PR#18414.
  * time() now (also) uses the ts.eps = getOption("ts.eps") argument
    and thus by default rounds values very close to the start (or
    end) of a year.  Based on a proposal by Andre"i V. Kostyrka on
    R-help.
  * Printing of a factanal() result with just one factor and sort =
    TRUE now works regularly, fixing PR#17863 by Timothy Bates,
    thanks to the 'R Contributors' working group.
  * Printing 0-length objects of class "factor", "roman", "hexmode",
    "octmode", "person", "bibentry", or "citation" now prints
    something better, one of which fixes PR#18422, reported by
    Benjamin Feakins.
  * Sys.timezone() queries timedatectl only if systemd is loaded;
    addressing a report by Jan Gorecki in PR#17421.
  * The formula method of cor.test() had scoping problems when
    environment(formula) was not the calling environment; reported
    with a patch proposal by Mao Kobayashi in PR#18439.
  * attach() of an environment with active bindings now preserves the
    active bindings.  Reported by Kevin Ushey in PR#18425.
  * BLAS detection now works also with system-provided libraries not
    available as regular files.  This fixes detection of the
    Accelerate framework on macOS since Big Sur.  Reported by David
    Novgorodsky.
  * download.file() gives a helpful error message in case of an
    invalid download.file.method option, thanks to Colin Fay's report
    in PR#18455.
  * Sporadic crashes of Rterm when using completion have been fixed.
  * Rprof() is now more reliable.  A livelock in thread
    initialization with too short sampling interval has been fixed on
    macOS.  A deadlock in using the C runtime has been fixed on
    Windows.  A potential deadlock has been prevented on Unix.
  * Cursor placement in Rgui now works even after a fixed-width font
    is selected.
  * Mandatory options (options()) are now set on startup so that
    saving and restoring them always works (PR#18372).
  * Package installation, R CMD INSTALL or install.packages(*), now
    parses each of the &lt;pkg&gt;/R/*.R files individually instead of
    first concatenating and then parse()ing the large resulting file.
    This allows parser or syntax errors to be diagnosed with correct
    file names and line numbers, thanks to Simon Dedman's report and
    Bill Dunlap's patch in PR#17859.
    This _does_ require syntactically self contained R source files
    now, fixing another inadvertent bug.
  * predict.lm(&lt;model with offset&gt;) now finds the offset in the
    correct environment, thanks to Andr'e Gillibert's report and patch
    in PR#18456.
  * getInitial(&lt;formula&gt;) now finds the selfStart model in the
    correct environment.  (Reported by Ivan Krylov in PR#18368.)
  * Fix for possible segfault when using recently-added graphics
    features, such as gradients, clipping paths, masks, and groups
    with pdf(file=NULL).
  * class(m) &lt;- class(m) no longer changes a matrix m by adding a
    class _attribute_.
  * packageDate(pkg) now only warns once if there is no pkg.
  * When ts() creates a multivariate time series, "mts", it also
    inherits from "array" now, and is.mts() is documented _and_
    stricter.
  * Rd2txt() now preserves line breaks of \verb Rd content and from
    duplicated \cr.  The former also fixes the rendering of verbatim
    output from Rd \Sexpr in plain-text help.
  * uniroot(f, interval) should no longer wrongly converge _outside_
    the interval in some cases where abs(f(x)) == Inf for an x at the
    interval boundary, thanks to posts by Ben Bolker and Serguei
    Sokol on R-devel.
  * Vectorized alpha handling in palette functions such as in gray(),
    rainbow(), or hcl.colors() works correctly now, thanks to Achim
    Zeileis' report and patch in PR#18476.
  * Formatting and print()ing of bibentry objects has dropped the
    deprecated citation.bibtex.max argument, such that the bibtex
    argument's default for print.bibentry() depends directly on the
    citation.bibtex.max option, whereas in format.bibentry() the
    option no longer applies.
  * Attempting to use a character string naming a foreign function
    entry point in a foreign function call in a package will now
    signal an error if the packages has called R_forceSymbols to
    specify that symbols must be used.
  * An error in table() could permanently set options(warn=2)
    promoting all subsequent warnings to errors.
  * The sigma() function gave misleading results for binary GLMs.  A
    new method for objects of class "glm" returns the square root of
    the estimate of the dispersion parameter using the same
    calculation as summary.glm().
  * bs() and ns() in the (typical) case of automatic knot
    construction, when some of the supposedly inner knots coincide
    with boundary knots, now moves them inside (with a warning),
    building on PR#18442 by Ben Bolker.
  * R CMD on Windows now skips the site profile with --no-site-file
    and --vanilla even when R_PROFILE is set (PR#18512, from Kevin
    Ushey).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1686916800">- CHANGES IN R 4.3.1:
  C-LEVEL FACILITIES:
  * The C-level API version of R's integrate(), Rdqags() in Applic.h,
    now returns the correct number of integrand evaluations neval,
    fixing PR#18515 reported and diagnosed by Stephen Wade.
  * The C prototypes for LAPACK calls dspgv and dtptrs in
    R_exts/Lapack.h had one too many and one too few character length
    arguments - but this has not caused any known issues. To get the
    corrected prototypes, include
    [#]include &lt;Rconfig.h&gt; // for PR18534fixed
    [#]ifdef PR18534fixed
    [#] define usePR18534fix 1
    [#]endif
    [#]include &lt;R_exts/Lapack.h&gt;
    in your C/C++ code (PR#18534).
  INSTALLATION:
  * Many of the checks of esoteric Internet operations and those
    using unreliable external sites have been moved to a new target
    that is not run by default and primarily intended for the core
    developers.  To run them use
    cd tests; make test-Internet-dev
  BUG FIXES:
  * .S3methods(), typically called from methods(), again marks
    methods from package base as visible.
    Also, the visibility of non-base methods is again determined by
    the method's presence in search().
  * tools::Rdiff() is now more robust against invalid strings, fixing
    installation tests on Windows without Rtools installed
    (PR#18530).
  * Fix (new) bug in hcl.colors(2, *), by Achim Zeileis (PR#18523).
  * head(., &lt;illegal&gt;) and tail(..) now produce more useful "Error in
    ...." error messages, fixing PR#18362.
  * Package code syntax on Windows is checked in UTF-8 when UTF-8 is
    the native encoding.
  * na.contiguous(x) now also returns the first run, when it is at
    the beginning and there is a later one of the same length;
    reported to R-devel, including a fix, by Georgi Boshnakov.
    Further, by default, it modifies only an existing attr(*,"tsp")
    but otherwise no longer sets one.
  * chol(&lt;not pos.def&gt;, pivot = &lt;T|F&gt;) now gives a correct error or
    warning message (depending on pivot), thanks to Mikael Jagan's
    (PR#18541).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1699012800">- CHANGES IN R 4.3.2:
  NEW FEATURES:
  * The default initialization of the "repos" option from the
    repositories file at startup can be skipped by setting
    environment variable R_REPOSITORIES to NULL such that
    getOption("repos") is empty if not set elsewhere.
  * qr.X() is now an implicit S4 generic in methods.
  * iconv(to = "ASCII//TRANSLIT") is emulated using substitution on
    platforms which do not support it (notably Alpine Linux).  This
    should give a human-readable conversion in ASCII on all platforms
    (rather than NA_character_).
  * trans3d() gains options continuous and verbose addressing the
    problem of possible "wrap around" when projecting too long
    curves, as reported by Achim Zeileis in PR#18537.
  * tools::showNonASCII() has been rewritten to work better on macOS
    14 (which has a changed implementation of iconv()).
  * tiff(type = "quartz") (the default on macOS) now warns if
    compression is specified: it continues to be ignored.
  INSTALLATION on a UNIX-ALIKE:
  * There is some support for building with Intel's LLVM-based
    compilers on x86_64 Linux, such as (C) icx, (C++) ipcx and
    (Fortran) ifx from oneAPI 2023.x.y.
  * There is support for using LLVM's flang-new as the Fortran
    compiler from LLVM 16.0.x (preferably 17.0.0 or later).
  UTILITIES:
  * R CMD check reports the use of the Fortran 90 random number
    generator RANDOM_NUMBER() and the subroutines to initialize it.
    'Writing R Extensions' has example code to use R's RNGs from
    Fortran.
  BUG FIXES:
  * substr(x, n, L) &lt;- cc now works (more) correctly for multibyte
    UTF-8 strings x when L &gt; nchar(x), thanks to a report and patch
    by 'Architect 95'.
  * contrib.url(character()) now returns 0-length character() as
    documented, which also avoids spurious warnings from
    available.packages() et al. in the edge case of an empty vector
    of repository URLs.
  * readChar(., 4e8) no longer fails, thanks to Kodi Arfer's report
    (PR#18557).
  * lapply(&lt;list&gt;, as.data.frame) no longer warns falsely for some
    base vector components.
  * Communication between parent and child processes in the multicore
    part of parallel could fail on platforms that do not support an
    arbitrarily large payload in system functions read()/write() on
    pipes (seen on macOS where a restriction to INT_MAX bytes is
    documented, without doing a partial read unlike Linux). The
    payload is now split into 1Gb chunks to avoid that problem.
    (PR#18571)
  * qqplot(x,y, conf.level=.) gives better confidence bounds when
    length(x) != length(y), thanks to Alexander Ploner's report and
    patch proposal (PR#18557).
  * norm(&lt;0-length&gt;, "2") now gives zero instead of an error, as all
    the other norm types, thanks to Mikael Jagan's PR#18542.
  * Build-stage Rd macros \packageAuthor and \packageMaintainer now
    process Authors@R, fixing NA results when the package DESCRIPTION
    omits Author and Maintainer fields.
  * Formatting and printing complex numbers could give things like
    0.1683-0i because of rounding error: -0i is now replaced by +0i.
  * postscript() refused to accept a title comment containing the
    letter "W" (PR#18599).
  * isoreg(c(1,Inf)) signals an error instead of segfaulting, fixing
    PR#18603.
  * tiff(type = "Xlib") was only outputting the last page of
    multi-page plots.
  * tools::latexToUtf8() again knows about \~{n} and other letters
    with tilde, fixing a regression in R 4.3.0, and about \^{i} as an
    alternative to \^{\i} (similarly with other accents).
    Furthermore, LaTeX codes for accented I letters are now correctly
    converted, also fixing related mistakes in
    tools::encoded_text_to_latex().
  * tar(*, tar = "internal") no longer creates out-of-spec tar files
    in the very rare case of user or group names longer than 32
    bytes, fixing PR#17871 with thanks to Ivan Krylov.
  * When using the "internal" timezone datetime code, adding a
    fraction of a second no longer adds one second, fixing PR#16856
    from a patch by Ivan Krylov.
  * tools::checkRd() no longer produces spurious notes about
    "unnecessary braces" from multi-line Rd results of \Sexpr macros.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1709208000">- CHANGES IN R 4.3.3:
  NEW FEATURES:
  * iconv() now fixes up variant encoding names such as "utf8"
    case-insensitively.
  DEPRECATED AND DEFUNCT:
  * The legacy encoding = "MacRoman" is deprecated in pdf() and
    postscript(): support was incomplete in earlier versions of R.
  BUG FIXES:
  * Arguments are now properly forwarded to methods on S4 generics
    with ... in the middle of their formal arguments. This was broken
    for the case when a method introduced an argument but did not
    include ... in its own formals. Thanks to Herv'e Pag`es for the
    report PR#18538.
  * Some invalid file arguments to pictex(), postscript() and xfig()
    opened a file called NA rather than throw an error.  These
    included postscript(NULL) (which some people expected to work
    like pdf(NULL)).
  * Passing filename = NA to svg(), cairo_pdf(), cairo_ps() or the
    Cairo-based bitmap devices opened a file called NA: it now throws
    an error.
  * quartz(file = NA) opened a file called NA, including when used as
    a Quartz-based bitmap device.  It now gives an error.
  * rank(&lt;long vector&gt;) now works, fixing PR#18617, thanks to Ilia
    Kats.
  * seq.int() did not adequately check its length.out argument.
  * match(&lt;POSIXct&gt;, .) is correct again for differing time zones,
    ditto for "POSIXlt", fixing PR#18618 reported by Bastian Klein.
  * drop.terms(*, dropx = &lt;0-length&gt;) now works, fixing PR#18563 as
    proposed by Mikael Jagan.
  * drop.terms(*) keeps + offset(.) terms when it should, PR#18565,
    and drop.terms() no longer makes up a response, PR#18566, fixing
    both bugs thanks to Mikael Jagan.
  * getS3method("t", "test") no longer finds the t.test() function,
    fixing PR#18627.
  * pdf() and postscript() support for the documented Adobe encodings
    "Greek" and "Cyrilllic" was missing (although the corresponding
    Windows' codepages could be used).
  * Computations of glyph metric information for pdf() and
    postscript() did not take into account that transliteration could
    replace one character by two or more (only seen on macOS 14) and
    typically warned that the information was not known.
  * rank(x) no longer overflows during integer addition, when
    computing rank average for largish but not-yet long vector x,
    fixing PR#18630, thanks to Ilia Kats.
  * list.files() on Windows now returns also files with names longer
    that 260 bytes (the Windows limit is 260 characters).
    Previously, some file names particularly with 'East Asian'
    characters were omitted.
  * cov2cor(&lt;0 x 0&gt;) now works, fixing PR#18423 thanks to Mikael
    Jagan and Elin Waring.
  * cov2cor(&lt;negative diagonal&gt;) and similar now give one warning
    instead of two, with better wording, fixing PR#18424 thanks to
    Mikael Jagan.
  * tools:: startDynamicHelp() now ensures port is in proper range,
    fixing PR#18645.
  * pbeta(x, a,b) is correct now for x=0 or 1 in the boundary cases
    where a or b or both are 0, fixing PR#18672 thanks to Michael
    Fay.
  * pmatch(x, table) for large table, also called for data frame row
    selection, dfrm[nm, ], is now interruptible, fixing PR#18656.
  * predict(&lt;rank-deficient lm&gt;, newdata=*) fix computing of nbasis,
    see Russ Lenth's comment 29 in PR#16158.
  * Added a work-around for a bug in macOS 14.3.1 and higher which
    prevents R plots in the Quartz Cocoa device from updating on
    screen.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1713960000">- CHANGES IN R 4.4.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Startup banners, R --version, sessionInfo() and R CMD check no
    longer report (64-bit) as part of the platform as this is almost
    universal - the increasingly rare 32-bit platforms will still
    report (32-bit).
    On Windows, ditto for window titles.
  * is.atomic(NULL) now returns FALSE, as NULL is not an atomic
    vector.  Strict back-compatibility would replace is.atomic(foo)
    by (is.null(foo) || is.atomic(foo)) but should happen only
    sparingly.
  NEW FEATURES:
  * The confint() methods for "glm" and "nls" objects have been
    copied to the stats package.  Previously, they were stubs which
    called versions in package MASS. The MASS namespace is no longer
    loaded if you invoke (say) confint(glmfit).  Further, the "glm"
    method for profile() and the plot() and pairs() methods for class
    "profile" have been copied from MASS to stats.  (profile.nls()
    and plot.profile.nls() were already in stats.)
  * The confint() and profile methods for "glm" objects have gained a
    possibility to do profiling based on the Rao Score statistic in
    addition to the default Likelihood Ratio. This is controlled by a
    new test = argument.
  * The pairs() method for "profile" objects has been extended with a
    which = argument to allow plotting only a subset of the
    parameters.
  * The "glm" method for anova() computes test statistics and
    p-values by default, using a chi-squared test or an F test
    depending on whether the dispersion is fixed or free.  Test
    statistics can be suppressed by giving argument test a false
    logical value.
  * In setRepositories() the repositories can be set using their
    names via name = instead of index ind =.
  * methods() and .S3methods() gain a all.names option for the (rare)
    case where functions starting with a . should be included.
  * Serializations can now be interrupted (e.g., by Ctrl-C on a
    Unix-alike) if they take too long, e.g., from save.image(),
    thanks to suggestions by Ivan Krylov and others on R-devel.
  * New startup option --max-connections to set the maximum number of
    simultaneous connections for the session.  Defaults to 128 as
    before: allowed values up to 4096 (but resource limits may in
    practice restrict to smaller values).
  * R on Windows (since Windows 10 2004) now uses the new Segment
    Heap allocator. This may improve performance of some
    memory-intensive applications.
  * When R packages are built, typically by R CMD build &lt;pkg&gt;, the
    new --user=&lt;build_user&gt; option overrides the (internally
    determined) user name, currently Sys.info()["user"] or LOGNAME.
    This is a (modified) fulfillment of Will Landau's suggestion in
    PR#17530.
  * tools::testInstalledBasic() gets new optional arguments outDir
    and testSrcdir, e.g., allowing to use it in a &lt;builddir&gt; !=
    &lt;srcdir&gt; setup, and in standard "binary" Windows installation
  * if* a source tests/ folder is present.
  * range(&lt;DT_with_Inf&gt;, finite = TRUE) now work for objects of class
    "Date", "POSIXct", and "POSIXlt" with infinite entries,
    analogously to range.default(), as proposed by Davis Vaughan on
    R-devel.  Other range()-methods can make use of new function
    .rangeNum().
  * New .internalGenerics object complementing .S3PrimitiveGenerics,
    for documentation and low-level book-keeping.
  * grid() now invisibly returns the x- and y- coordinates at which
    the grid-lines were drawn.
  * norm(., type) now also works for complex matrices.
  * kappa(., exact = TRUE, norm = *) now works for all norms and also
    for complex matrices.  In symmetric / triangular cases, the new
    argument uplo = "U" | "L" allows the upper or lower triangular
    part to be specified.
  * memDecompress(type = "unknown") recognizes compression in the
    default 'zlib' format as used by memCompress(type = "gzip").
  * memCompress() and memDecompress() will use the libdeflate library
    (&lt;https://github.com/ebiggers/libdeflate&gt;) if installed.  This
    uses the same type of compression for type = "gzip" but is 1.5-2x
    faster than the system libz library on some common platforms: the
    speed-up may depend on the library version.
  * diff() for objects of class "Date", "POSIXct", and "POSIXlt"
    accepts a units argument passed via ....
  * Dynamic help now does a much better job of rendering package
    DESCRIPTION metadata.
  * Rprof() gains an event argument and support for elapsed (real)
    time profiling on Unix (PR#18076).
  * filled.contour() gains a key.border argument.
  * tools::update_pkg_po() gets arguments pot_make and mo_make for
    _not_ re-making the corresponding files, and additionally a
    verbose argument.
  * Hexadecimal string colour specifications are now accepted in
    short form, so, for example, we can use "#123", which is
    equivalent to "#112233".
    Thanks to MikeFC for the original idea and Ella Kaye, Malcolm
    Barrett, George Stagg, and Hanne Oberman for the patch.
  * Plain-text help shows \var markup by angle brackets.
  * The new experimental primitive function declare() is intended to
    eventually allow information about R code to be communicated to
    the interpreter, compiler, and code analysis tools. The syntax
    for declarations is still being developed.
  * Functions psmirnov(), qsmirnov() and rsmirnov() in package stats
    have had argument two.sided renamed to alternative, to take into
    account that the permutation distributions of the one-sided
    statistics can be different in the case of ties.  Consequence of
    PR#18582.
  * sort() is now an implicit S4 generic in methods.
  * Formatting and printing, format(z), print(z), of complex vectors
    z no longer zap relatively small real or imaginary parts to zero,
    fixing PR#16752.  This is an API change, as it was documented
    previously to round real and imaginary parts together on purpose,
    producing nicer looking output.  As mentioned, e.g. in the PR,
    this change is compatible with many other "R-like" programming
    environments.
    We have simplified the internal code and now basically format the
    real and imaginary parts independently of each other.
  * New experimental functions Tailcall() and Exec() to support
    writing stack-space-efficient recursive functions.
  * Where characters are attempted to be plotted by pdf(),
    postscript() and xfig() which are not in the selected 8-bit
    character set (most often Latin-1) and the R session is using a
    UTF-8 locale, the warning messages will show the UTF-8 character
    rather than its bytes and one dot will be substituted per
    character rather than per byte.  (Platforms whose iconv() does
    transliteration silently plot the transliteration.)
    In a UTF-8 locale some transliterations are now done with a
    warning (e.g., dashes and Unicode minus to hyphen, ligatures are
    expanded, permille (‰) is replaced by o/oo), although the OS may
    have got there first.  These are warnings as they will continue
    to be replaced by dots in earlier versions of R.
  * The matrix multiplication functions crossprod() and tcrossprod()
    are now also primitive and S3 generic, as %*% had become in R
    4.3.0.
  * source() and example() have a new optional argument catch.aborts
    which allows continued evaluation of the R code after an error.
  * The non-Quartz tiff() devices allow additional types of
    compression if supported by the platform's libtiff library.
  * The list of base and recommended package names is now provided by
    tools::standard_package_names().
  * cairo_pdf() and cairo_ps() default to onefile = TRUE to closer
    match pdf() and postscript().
  * New option catch.script.errors provides a documented way to catch
    errors and then continue in non-interactive use.
  * L %||% R newly in base is an expressive idiom for the phrases
    if(!is.null(L)) L else R or if(is.null(L)) R else L.
  * The return value from warnings() now always inherits from
    "warnings" as documented, now also in the case of no warnings
    where it previously returned NULL.
  * as.complex("1i") now returns 0 + 1i instead of NA with a warning.
  * z &lt;- c(NA, 1i) now keeps the imaginary part Im(z[1]) == 0, no
    longer coercing to NA_complex_.  Similarly, cumsum(z) correctly
    sums real and imaginary parts separately, i.e., without
    "crosstalk" in case of NAs.
  * On Alpine Linux iconv() now maps "latin2", "latin-2", "latin9"
    and "latin-9" to encoding names the OS knows about
    (case-insensitively).
  * iconv(sub = "Unicode") now always zero-pads to four (hex) digits,
    rather than to 4 or 8.  (This seems to have become the convention
    once Unicode restricted the number of Unicode points to 2^21 - 1
    and so will never need more than 6 digits.)
  * NCOL(NULL) now returns 0 instead of 1, for consistency with
    cbind().
  * The information for the Euro glyph missing from the Adobe .afm
    files for the Courier, Helvetica and Times families has been
    copied from their URW equivalents - this will improve vertical
    centring in the pdf() and postscript() devices.
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.12.0.  The changes are almost entirely cosmetic.
  * The included LAPACK sources have been updated to version 3.12.0
    and some further double-complex routines added.
  * There are new font families for the 2014--5 URW 2.0 fonts (see
    ?pdf) which are included in recent versions of Ghostscript.
    These have font widths for most Greek glyphs and a few others
    which were missing from the original versions (whose font
    families remain available for reproducibility, although
    Ghostscript-based viewers will render using the 2.0 versions).
  * Improve the large-n efficiency of as.matrix(&lt;dist&gt;), thanks an R
    contributors effort, notably by Tim Taylor and Heather Turner,
    see PR#18660.
  * The default and numeric methods of all.equal() get a check.class
    option.
  * zapsmall() gets new optional arguments, function mFUN and min.d,
    for extra flexibility; fulfills a wish in PR#18199.  Also, it is
    now an implicit S4 generic in package methods.
  * The Rd filter for aspell() gains an ignore argument.
  * New generic function sort_by(), primarily useful for the
    data.frame method which can be used to sort rows of a data frame
    by one or more columns.
  * The icence headers for the RPC code in src/extra/xdr have been
    updated to use the GPL-compatible licence published by Oracle
    America in 2010.
  * New function pkg2HTML() in tools to create single-page HTML
    reference manuals for R packages.
  * The byte code evaluator now uses less C stack space for recursive
    calls to byte-compiled functions. It also makes more of an effort
    to avoid allocations for scalar return values.
  * New completion option backtick (disabled by default) allows
    non-syntactic completions to be wrapped in backquotes. This is
    currently only useful for Jupyter notebooks via the IRkernel
    package, and may cause problems for other backends.
  INSTALLATION:
  * The parser has been updated to work with bison 3.8.2, which is
    now used for the pre-generated parsers in gram.c, file.c, and
    gramRd.c. A few parser error messages have changed, which may
    affect code that relies on exact messages.
  INSTALLATION on a UNIX-ALIKE:
  * System valgrind headers are now required to use configure option
  - -with-valgrind-instrumentation with value 1 or 2.
  * configure will warn if it encounters a 32-bit build, as that is
    nowadays almost untested.
  * Environment variable R_SYSTEM_ABI is no longer used and so no
    longer recorded in etc/Renviron (it was not on Windows and was
    only ever used when preparing package tools).
  * If the libdeflate library and headers are available, libdeflate
    rather than libz is used to (de)compress R objects in lazy-load
    databases.  Typically tasks spend up to 5% of their time on such
    operations, although creating lazy-data databases is one of the
    exceptions.
    This can be suppressed if the library is available by the
    configure option --without-libdeflate-compression.
  * configure option --enable-lto=check has not worked reliably since
    2019 and has been removed.
  * The minimum autoconf requirement for a maintainer build has been
    increased to autoconf 2.71.
    It is intended to increase this to 2.72 for R 4.5.0: the
    distributed configure file was generated using 2.72.
  * The minimum version requirement for an external LAPACK has been
    reduced to 3.9.0.
  * No default C++ compiler is set if no C++17 compiler is detected:
    there is no longer an automatic fallback to C++14 or C++11.
    Compilers from the last five years should have sufficient
    support: for others macros CXX and CXXSTD can be set in file
    config.site to provide a fallback if needed.
    The Objective-C++ compiler now by default uses the standard
    selected by R for C++ (currently C++17) rather than the default
    standard for the C++ compiler (which on macOS is still C++98).
  INSTALLATION on macOS:
  * A new configure option --with-newAccelerate makes use of Apple's
    'new' BLAS / LAPACK interfaces in their Accelerate framework.
    Those interfaces are only available in macOS 13.3 or later, and
    building requires SDK 13.3 or later (from the Command Line Tools
    or Xcode 14.3 or later).
    By default the option uses new Accelerate for BLAS calls: to also
    use it for LAPACK use option --with-newAccelerate=lapack.  The
    later interfaces provide LAPACK 3.9.1 rather than 3.2.1: 3.9.1 is
    from 2021-04 and does not include the improved algorithms
    introduced in LAPACK 3.10.0 (including for BLAS calls).
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools44, an update of the Rtools43 toolchain.  It is
    based on GCC 13 and newer versions of MinGW-W64, binutils and
    libraries (targeting 64-bit Intel CPUs).  R-devel can no longer
    be built using Rtools43 without changes.
  * Rtools44 has experimental support for 64-bit ARM (aarch64) CPUs
    _via_ the LLVM 17 toolchain using lld, clang/flang-new and
    libc++.
  UTILITIES:
  * R CMD check notes when S4-style exports are used without
    declaring a strong dependence on package methods.
  * tools::checkRd() (used by R CMD check) detects more problems with
    \Sexpr-based dynamic content, including bad nesting of \Sexprs
    and invalid arguments.
  * tools::checkRd() now reports Rd titles and section names ending
    in a period; this is ignored by R CMD check unless environment
    variable _R_CHECK_RD_CHECKRD_MINLEVEL_ is set to -5 or smaller.
  * R CMD check now notes Rd files without an \alias, as long
    documented in 'Writing R Extensions' §1.3.1.  The check for a
    missing \description has been moved from tools::checkRd() to
    tools::checkRdContents().
  * R CMD check now visits inst/NEWS.Rd and OS-specific man
    subdirectories when checking Rd files.
  * tools::checkDocFiles() and tools::checkRdContents() now also
    check internal Rd files by default, but "specially" (ignoring
    missing documentation of arguments).
  * R CMD Rdiff gets option --useEx.
  * R CMD check now warns on non-portable uses of Fortran KIND such
    as INTEGER(KIND=4) and REAL(KIND=8).
    To see the failing lines set environment variable
    _R_CHECK_FORTRAN_KIND_DETAILS_ to a true value.
  * When checking Rd files, R CMD check now notes some of the "lost
    braces" that tools::checkRd() finds.  Typical problems are Rd
    macros missing the initial backslash (e.g., code{...}), in-text
    set notation (e.g., {1, 2}, where the braces need escaping), and
    \itemize lists with \describe-style entries of the form
    \item{label}{description}.
  * R CMD INSTALL (and hence check) will compile C++ code with
  - DR_NO_REMAP if environment variable _R_CXX_USE_NO_REMAP_ is set
    to a true value.  It is planned that this will in future become
    the default for compiling C++.
  * The new built-in Rd macro \dontdiff{} can be used to mark example
    code whose output should be ignored when comparing check output
    to reference output (tests/Examples/&lt;pkg&gt;-Ex.Rout.save).  The
    \dontdiff tag, like \donttest, is _not_ shown on the rendered
    help page, so provides a clean alternative to ##
    IGNORE_RDIFF_(BEGIN|END) comments.
  * R CMD build when there is no NAMESPACE, now uses the recommended
    exportPattern("^[^.]"), instead of exporting everything.
  * R CMD check now warns about non-ASCII characters in the NAMESPACE
    file (in addition to R files). Such packages are not portable and
    may fail to install on some platforms.
  C-LEVEL FACILITIES:
  * Headers R_ext/Applic.h and R-ext/Linpack.h used to include
    R_ext/BLAS.h although this was undocumented and unneeded by their
    documented entry points.  They no longer do so.
  * New function R_missing(), factored out from do_missing(), used to
    fix PR#18579.
  * SEXP type S4SXP has been renamed to OBJSXP to support
    experimenting with alternative object systems.  The S4SXP value
    can still be used in C code but is now deprecated.  Based on
    contributions from the R Consortium's Object-Oriented Programming
    Working Group.
  * New function pow1p(x,y) for accurate (1+x)^y.
  * mkCharLenCE was incorrectly documented to take a size_t length
    but was implemented with int (and character strings in R are
    limited to 2^31 - 1 bytes).
  DEPRECATED AND DEFUNCT:
  * data() no longer handles zipped data from long-defunct (since R
    2.13.0) --use-zip-data installations.
  * The legacy graphics devices pictex() and xfig() are now
    deprecated.  They do not support recent graphics enhancements and
    their font handling is rudimentary. The intention is to retain
    them for historical interest as long as they remain somewhat
    functional.
  * Support for encoding = "MacRoman" has been removed from the pdf()
    and postscript() devices - this was a legacy encoding supporting
    classic macOS up to 2001 and no longer has universal libiconv
    support.
  * is.R() is deprecated as no other S dialect is known to be in use
    (and this could only identify historical dialects, not future
    ones).
    Further information on calls can be obtained by setting the
    environment variable _R_DEPRECATED_IS_R_ to error which turns the
    deprecation warning into an error and so by default gives a
    traceback.  (This is done by R CMD check --as-cran.)
  * UseMethod() no longer forwards local variables assigned in the
    generic function into method call environments before evaluating
    the method body. This makes method calls behave more like
    standard function calls and makes method code easier to analyze
    correctly.
  * The twelve as.data.frame.&lt;class&gt;() methods which were deprecated
    only via _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ and in R CMD
    check --as-cran are formally deprecated now in favour of calling
    as.data.frame() or as.data.frame.vector().  The deprecation
    "check" now works also when as.data.frame() is S4 generic thanks
    to Ivan Krylov.
  * The default method for the directional comparison operators &lt;, &gt;,
    &lt;=, and &gt;= now signals an error when one of the operands is a
    language object, i.e. a symbol or a call.
  * For terms.formula(), deprecate abb and neg.out arguments
    _formally_ in addition to just documenting it.
  BUG FIXES:
  * The methods package is more robust to not being attached to the
    search path.  More work needs to be done.
  * pairwise.t.test() misbehaved when subgroups had 0 DF for
    variance, even with pool.sd = TRUE.  (PR#18594 by Jack Berry).
  * Probability distribution functions [dpq]&lt;distrib&gt;(x, *), but also
    bessel[IKJY](x, .) now consistently preserve attributes(x) when
    length(x) == 0, e.g., for a 2 x 0 matrix, thanks to Karolis
    Koncevičius' report PR#18509.
  * Group "Summary" computations such as sum(1:3, 4, na.rm = 5, NA,
    7, na.rm = LL) now give an error instead of either 17 or NN for
    LL true or false, as proposed by Ivan Krylov on the R-devel
    mailing list.  (This also means it is now an error to specify
    na.rm more than once.)
  * as.complex(x) now returns complex(real = x, imaginary = 0) for
    _all_ numerical and logical x, notably also for NA or
    NA_integer_.
  * Directories are now omitted by file.copy(, recursive = FALSE) and
    in file.append() (PR#17337).
  * gsub() and sub() are now more robust to integer overflow when
    reporting errors caused by too large input strings (PR#18346).
  * Top-level handlers are now more robust to attempts to remove a
    handler whilst handlers are running (PR#18508).
  * The handling of Alt+F4 in dialogs created on Windows using
    GraphApp has been fixed (PR#13870).
  * density() more consistently computes grid values for the
    FFT-based convolution, following Robert Schlicht's analysis and
    proposal in PR#18337, correcting density values typically by a
    factor of about 0.999.  Argument old.coords = TRUE provides back
    compatibility.
  * palette.colors() gains a name argument that defaults to FALSE
    controlling whether the vector of colours that is returned has
    names (where possible).  PR#18529.
  * tools::xgettext() no longer extracts the (non-translatable) class
    names from warningCondition and errorCondition calls.
  * S3method(&lt;gen&gt;, &lt;class&gt;, &lt;func&gt;) in the NAMESPACE file now works
    (again) when &lt;func&gt; is visible from the namespace, e.g.,
    imported, or in base.
  * getParseData(f) now also works for a function defined in the
    first of several &lt;pkg&gt;/R/*.R source files, thanks to Kirill
    Müller's report and Duncan Murdoch's patch in PR#16756.
  * Rd \Sexpr macros with nested #ifdef conditionals were not
    processed.
  * A non-blocking connection with non-default encoding (such as a
    socket) now correctly returns from readLines() after new data has
    arrived also when its EOF had been reached previously.  Thanks to
    Peter Meilstrup's report on R-devel and Ivan Krylov's report and
    patch proposal in PR#18555.
  * tools::checkRdContents() failed to detect empty argument
    descriptions when they spanned multiple lines, including those
    generated by prompt().  These cases are now noted by R CMD check.
  * Plain-text help no longer outputs spurious colons in the
    arguments list (for multi-line \item labels in the Rd source).
  * kappa() and rcond() work correctly in more cases; kappa(., norm =
    "2") now warns that it computes the 1-norm with (default) exact =
    FALSE; prompted by Mikael Jagan's quite comprehensive PR#18543.
  * Rd skeletons generated by prompt() or promptData() now use a
    dummy title (so R CMD build works).  tools::checkRdContents() has
    been updated to detect such template leftovers, including from
    promptPackage().
  * When S4 method dispatch fails because no method was found, the
    error message now includes the signature argument names; thanks
    to Michael Chirico's proposal on the R-devel list.
  * withAutoprint({ .. }) now preserves srcrefs previously lost,
    thanks to Andrew Simmons' report plus fix in PR#18572.
  * transform.data.frame() no longer adjusts names; in particular,
    untransformed variables are kept as-is, including those with
    syntactically invalid names (PR#17890).
  * The keep.source option for Rd \Sexpr blocks is no longer ignored.
  * The formula methods for t.test() and wilcox.test() now catch when
    paired is passed, addressing PR#14359; use Pair(x1, x2) ~ 1 for a
    paired test.
  * The level reported in the browser prompt was often too large. It
    now shows the number of browser contexts on the stack.
  * For cbind() and rbind(), the optional deparse.level argument is
    now properly passed to methods, thanks to Mikael Jagan's PR#18579
    and comments there.
  * Some error and warning messages for large ('long vector')
    matrix(v, nr, nc) and dim(m) &lt;- d are now correct about sizes,
    using long long formatting, fixing PR#18612 (and more) reported
    by Mikael Jagan.
  * readChar(useBytes = TRUE) now terminates strings even when the
    underlying connection uses extra spaces in the input buffer.
    This fixes problems with extra garbage seen with gzip
    connections, PR#18605.
  * Named capture in PCRE regular expressions now works also with
    more than 127 named groups (PR#18588).
  * Datetime functions are now robust against long jumps when dealing
    with internal time zone changes.  This avoids confusing warnings
    about an invalid time zone, previously triggered by turning
    warnings into errors or handling them via tryCatch (PR#17966,
    PR#17780).
  * Datetime functions now restore even an empty TZ environment
    variable after internal time zone changes (PR#17724).  This makes
    results of datetime functions with this (typically unintentional)
    setting more predictable.
  * drop.terms(*) now drops response as by default, keep.response =
    FALSE, fixing PR#18564 thanks to Mikael Jagan.
  * dummy.coef(.) now also works for lm()-models with character
    categorical predictor variables rather than factor ones, fixing
    PR#18635 reported by Jinsong Zhao.
  * formals(f) &lt;- formals(f) now also works for a function w/o
    arguments and atomic _constant_ body(f).
  * Correct as.function(&lt;invalid list&gt;, .)'s error message.
  * removeSource() is yet more thorough in finding and removing
    "srcref" and the other source references from parsed R language
    chunks, fixing PR#18638 thanks to Andrew Simmons.
  * dgeom() is more accurate now, notably when its result is very
    small, fixing PR#18642 thanks to the proposal of Morten Welinder,
    also improving other instances where C level binom_raw(x, n, ..)
    has x == 0 or x== n.
  * warning() with options(warn = 1) has improved output for
    multi-line messages.
  * axis.Date() and axis.POSIXct() now respect the par("lab") setting
    for the number of pretty() intervals.
  * Comparisons for language objects (which are based on deparsing)
    are now more careful about using accurate deparsed results
    (PR#18676).
  * Plain-text help (Rd2txt) now correctly preserves blank lines
    following single-line \dontrun code.
  * &lt;POSIXlt&gt;[*] no longer sets wrong "balanced" attribute, fixing
    PR#18681 thanks to Mikael Jagan.
  * str(&lt;classed-call&gt;) now deparses the call as expected, fixing
    PR#18684, reported by Dave Slager.
  * In Rd examples, code following the closing brace of a \dontrun,
    \dontshow or \donttest tag on the same line is no longer skipped
    when R CMD check runs the examples.
  * as.data.frame(matrix(*, ncol=0)) now gets valid names() and
    colnames(); reported by Davis Vaughan on the R-devel list.
  * Internal Mathlib function stirlerr(n) is now almost fully
    (52-bit) accurate for all n &gt;= ~5.9 and more accurate also in the
    range 1 -- 5.9.  This entails small ("after 12th decimal")
    changes in density functions, e.g., dgamma() in _some_ regions of
    their support.  The fix was partly prompted by Morten Welinder's
    PR#18640.
  * Numbers like 9876543.2 are now considered non-integer by Mathlib
    internal R_nonint(), amending original fix of PR#15734.
  * Rd comment lines no longer cause broken paragraphs in the
    rendered PDF and plain-text help. In code blocks, pure comment
    lines (starting with %) no longer produce an empty line.
  * xtabs(Freq ~ .) now consistently defaults to na.action = na.pass,
    using na.rm = FALSE (added as an argument) when summing over Freq
    (PR#17770).
  * tools::testInstalledPackage() is no longer silent about failures
    from running examples or tests and its return code no longer
    ignores failures from checking vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1718366400">- CHANGES IN R 4.4.1:
  C-LEVEL FACILITIES:
  * Functions R_atof and R_strtod declared in header R_ext/Utils.h
    are now documented in 'Writing R Extensions' and so formally part
    of the API.
  * The non-API entry points Rf_setSVector, Rf_StringFalse,
    Rf_StringTrue and Rf_isBlankString have been added to those
    reported by R CMD check.
  * The new function Rf_allocLang is now available. This provides an
    alternative to the idiom of calling Rf_allocList followed by
    SET_TYPEOF.
  UTILITIES:
  * R CMD check now reports as warnings what gfortran calls 'Fortran
    2018 deleted features', all of which have long been marked as
    'obsolescent' and some of which were deleted in Fortran 2008 or
    earlier.  Fortran compilers are no longer required to support
    these.
  BUG FIXES:
  * as.numeric(), scan(), type.convert() and other places which use
    the internal C function R_strtod now require a _non-empty_ digit
    sequence in a decimal or binary exponent.  This aligns with the
    C/POSIX standard for strtod and with ?NumericConstants.
  * as.data.frame(m, make.names=NA) now works correctly for a matrix
    m with NA's in row names.
  * The error message from &lt;POSIXlt&gt;[["hour"]] and similar now
    mentions *[[, "hour"]], as wished for in PR#17409 and proposed by
    Michael Chirico.
  * qbinom() and potentially qpois(), qnbinom(), no longer sometimes
    fail accurate inversion (of pbinom(), etc), thanks to Christopher
    Chang's report and patch in PR#18711.
  * The internal help server on Windows can again serve requests sent
    in quick succession, fixing a regression in R 4.4.0.
  * debugcall(&lt;S3Generic&gt;()) now also works when a corresponding
    S4-generic version is in the methods cache (PR#18143).
  * Package tools' toTitleCase(ch0) now returns character(0) when ch0
    is of zero length; fixing PR#18724, reported by David Hugh Jones.
  * R CMD check is no longer broken (without a check result and no
    explanation in 00check.log) for a package which declares an
    invalid VignetteBuilder in DESCRIPTION but has no vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1730376000">- CHANGES IN R 4.4.2:
  C-LEVEL FACILITIES:
  * The S-compatibility macros F77_COM and F77_COMDECL defined in
    header R_ext/RS.h are deprecated and will be removed shortly.  We
    could find no record of their use.
  BUG FIXES:
  * Mathlib function lgammacor(x) no longer warns about underflow to
    zero for large x.
  * Text widths and heights were incorrectly reported by the Quartz
    device if the drawing context didn't exist yet (typically when
    drawing off-screen to a window that is yet to appear, see
    PR#18591).
  * The Quartz device could segfault in cases where paths with spaces
    are used in the new glyph drawing API.  Thanks to Tomek
    Gieorgijewski (PR#18758).
  * On macOS in R CRAN builds, it is again possible to read
    little-endian UTF-16 text with a BOM from a connection using
    encoding="UTF-16".  Users building R from source should avoid
    using the system libiconv in macOS 14.1 and later.
  * methods' internal .requirePackage() now re-enables primitive
    method dispatch when needed; thanks to Ivan Krylov for
    demystifying CRAN package check failures on the R-devel mailing
    list.</changelog>
</package>
<package pkgid="32a821ea41fbf37c949aa23c152c1111bc1256bca1f22ffee964ac2e255fd2db4fdecfe8c1d43d61a9541d6df09251ac57cf196aa740a55c7ef528938ef5ee4b" name="R-codetools" arch="i586">
  <version epoch="0" ver="0.2.20" rel="51.0.2.2.sr20241103"/>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1620302400">- To get in sync with d:l:R:autoCRAN the Matrix package's split
  in -devel was reversed.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339200">- improved spec file according to comments of dimstar in
  https://build.opensuse.org/request/show/892685</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339201">- CHANGES IN R 4.1.0:
  FUTURE DIRECTIONS:
  * It is planned that the 4.1.x series will be the last to support
    32-bit Windows, with production of binary packages for that
    series continuing until early 2023.
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Data set esoph in package datasets now provides the correct
    numbers of controls; previously it had the numbers of cases added
    to these.  (Reported by Alexander Fowler in PR#17964.)
  NEW FEATURES:
  * www.omegahat.net is no longer one of the repositories known by
    default to setRepositories().  (Nowadays it only provides source
    packages and is often unavailable.)
  * Function package_dependencies() (in package tools) can now use
    different dependency types for direct and recursive dependencies.
  * The checking of the size of tarball in R CMD check --as-cran
    &lt;pkg&gt; may be tweaked via the new environment variable
    _R_CHECK_CRAN_INCOMING_TARBALL_THRESHOLD_, as suggested in
    PR#17777 by Jan Gorecki.
  * Using c() to combine a factor with other factors now gives a
    factor, an ordered factor when combining ordered factors with
    identical levels.
  * apply() gains a simplify argument to allow disabling of
    simplification of results.
  * The format() method for class "ftable" gets a new option justify.
    (Suggested by Thomas Soeiro.)
  * New ...names() utility.  (Proposed by Neal Fultz in PR#17705.)
  * type.convert() now warns when its as.is argument is not
    specified, as the help file always said it _should_.  In that
    case, the default is changed to TRUE in line with its change in
    read.table() (related to stringsAsFactor) in R 4.0.0.
  * When printing list arrays, classed objects are now shown _via_
    their format() value if this is a short enough character string,
    or by giving the first elements of their class vector and their
    length.
  * capabilities() gets new entry "Rprof" which is TRUE when R has
    been configured with the equivalent of --enable-R-profiling (as
    it is by default).  (Related to Michael Orlitzky's report
    PR#17836.)
  * str(xS4) now also shows extraneous attributes of an S4 object
    xS4.
  * Rudimentary support for vi-style tags in rtags() and R CMD rtags
    has been added.  (Based on a patch from Neal Fultz in PR#17214.)
  * checkRdContents() is now exported from tools; it and also
    checkDocFiles() have a new option chkInternal allowing to check
    Rd files marked with keyword "internal" as well.  The latter can
    be activated for R CMD check via environment variable
    _R_CHECK_RD_INTERNAL_TOO_.
  * New functions numToBits() and numToInts() extend the raw
    conversion utilities to (double precision) numeric.
  * Functions URLencode() and URLdecode() in package utils now work
    on vectors of URIs.  (Based on patch from Bob Rudis submitted
    with PR#17873.)
  * path.expand() can expand ~user on most Unix-alikes even when
    readline is not in use.  It tries harder to expand ~, for example
    should environment variable HOME be unset.
  * For HTML help (both dynamic and static), Rd file links to help
    pages in external packages are now treated as references to
    topics rather than file names, and fall back to a file link only
    if the topic is not found in the target package. The earlier rule
    which prioritized file names over topics can be restored by
    setting the environment variable _R_HELP_LINKS_TO_TOPICS_ to a
    false value.
  * c() now removes NULL arguments before dispatching to methods,
    thus simplifying the implementation of c() methods, _but_ for
    back compatibility keeps NULL when it is the first argument.
    (From a report and patch proposal by Lionel Henry in PR#17900.)
  * Vectorize()'s result function's environment no longer keeps
    unneeded objects.
  * Function ...elt() now propagates visibility consistently with
    ..n.  (Thanks to Lionel Henry's PR#17905.)
  * capture.output() no longer uses non-standard evaluation to
    evaluate its arguments.  This makes evaluation of functions like
    parent.frame() more consistent.  (Thanks to Lionel Henry's
    PR#17907.)
  * packBits(bits, type="double") now works as inverse of
    numToBits().  (Thanks to Bill Dunlap's proposal in PR#17914.)
  * curlGetHeaders() has two new arguments, timeout to specify the
    timeout for that call (overriding getOption("timeout")) and TLS
    to specify the minimum TLS protocol version to be used for
    https:// URIs (_inter alia_ providing a means to check for sites
    using deprecated TLS versions 1.0 and 1.1).
  * For nls(), an optional constant scaleOffset may be added to the
    denominator of the relative offset convergence test for cases
    where the fit of a model is expected to be exact, thanks to a
    proposal by John Nash.  nls(*, trace=TRUE) now also shows the
    convergence criterion.
  * Numeric differentiation _via_ numericDeriv() gets new optional
    arguments eps and central, the latter for taking central divided
    differences.  The latter can be activated for nls() via
    nls.control(nDcentral = TRUE).
  * nls() now passes the trace and control arguments to getInitial(),
    notably for all self-starting models, so these can also be fit in
    zero-noise situations via a scaleOffset.  For this reason, the
    initial function of a selfStart model must now have ... in its
    argument list.
  * bquote(splice = TRUE) can now splice expression vectors with
    attributes: this makes it possible to splice the result of
    parse(keep.source = TRUE).  (Report and patch provided by Lionel
    Henry in PR#17869.)
  * textConnection() gets an optional name argument.
  * get(), exists(), and get0() now signal an error if the first
    argument has length greater than 1.  Previously additional
    elements were silently ignored.  (Suggested by Antoine Fabri on
    R-devel.)
  * R now provides a shorthand notation for creating functions, e.g.
    \(x) x + 1 is parsed as function(x) x + 1.
  * R now provides a simple native forward pipe syntax |&gt;.  The
    simple form of the forward pipe inserts the left-hand side as the
    first argument in the right-hand side call.  The pipe
    implementation as a syntax transformation was motivated by
    suggestions from Jim Hester and Lionel Henry.
  * all.equal(f, g) for functions now by default also compares their
    environment(.)s, notably via new all.equal method for class
    function.  Comparison of nls() fits, e.g., may now need
    all.equal(m1, m2, check.environment = FALSE).
  * .libPaths() gets a new option include.site, allowing to _not_
    include the site library.  (Thanks to Dario Strbenac's suggestion
    and Gabe Becker's PR#18016.)
  * Lithuanian translations are now available.  (Thanks to Rimantas
    Zakauskas.)
  * names() now works for DOTSXP objects.  On the other hand, in
    R-lang, the R language manual, we now warn against relying on the
    structure or even existence of such dot-dot-dot objects.
  * all.equal() no longer gives an error on DOTSXP objects.
  * capabilities("cairo") now applies only to the file-based devices
    as it is now possible (if very unusual) to build R with Cairo
    support for those but not for X11().
  * There is optional support for tracing the progress of
    loadNamespace() - see its help.
  * (Not Windows.)  l10n_info() reports an additional element, the
    name of the encoding as reported by the OS (which may differ from
    the encoding part (if any) of the result from
    Sys.getlocale("LC_CTYPE").
  * New function gregexec() which generalizes regexec() to find _all_
    disjoint matches and well as all substrings corresponding to
    parenthesized subexpressions of the given regular expression.
    (Contributed by Brodie Gaslam.)
  * New function charClass() in package utils to query the
    wide-character classification functions in use (such as
    iswprint).
  * The names of quantile()'s result no longer depend on the global
    getOption("digits"), but quantile() gets a new optional argument
    digits = 7 instead.
  * grep(), sub(), regexp and variants work considerably faster for
    long factors with few levels.  (Thanks to Michael Chirico's
    PR#18063.)
  * Provide grouping of x11() graphics windows within a window
    manager such as Gnome or Unity; thanks to a patch by Ivan Krylov
    posted to R-devel.
  * The split() method for class data.frame now allows the f argument
    to be specified as a formula.
  * sprintf now warns on arguments unused by the format string.
  * New palettes "Rocket" and "Mako" for hcl.colors() (approximating
    palettes of the same name from the 'viridisLite' package).
    Contributed by Achim Zeileis.
  * The base environment and its namespace are now locked (so one can
    no longer add bindings to these or remove from these).
  * Rterm handling of multi-byte characters has been improved,
    allowing use of such characters when supported by the current
    locale.
  * Rterm now accepts ALT+ +xxxxxxxx sequences to enter Unicode
    characters as hex digits.
  * Environment variable LC_ALL on Windows now takes precedence over
    LC_CTYPE and variables for other supported categories, matching
    the POSIX behaviour.
  * duplicated() and anyDuplicated() are now optimized for integer
    and real vectors that are known to be sorted via the ALTREP
    framework. Contributed by Gabriel Becker via PR#17993.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 14
    and so packages that provide graphics devices should be
    reinstalled.
  * Graphics devices should now specify deviceVersion to indicate
    what version of the graphics engine they support.
  * Graphics devices can now specify deviceClip.  If TRUE, the
    graphics engine will never perform any clipping of output itself.
    The clipping that the graphics engine does perform (for both
    canClip = TRUE and canClip = FALSE) has been improved to avoid
    producing unnecessary artifacts in clipped output.
  * The grid package now allows gpar(fill) to be a linearGradient(),
    a radialGradient(), or a pattern().  The viewport(clip) can now
    also be a grob, which defines a clipping path, and there is a new
    viewport(mask) that can also be a grob, which defines a mask.
    These new features are only supported so far on the Cairo-based
    graphics devices and on the pdf() device.
  * (Not Windows.)  A warning is given when a Cairo-based type is
    specified for a png(), jpeg(), tiff() or bmp() device but Cairo
    is unsupported (so type = "Xlib" is tried instead).
  * grSoftVersion() now reports the versions of FreeType and
    FontConfig if they are used directly (not _via_ Pango), as is
    most commonly done on macOS.
  C-LEVEL FACILITIES:
  * The _standalone_ libRmath math library and R's C API now provide
    log1pexp() again as documented, and gain log1mexp().
  INSTALLATION on a UNIX-ALIKE:
  * configure checks for a program pkgconf if program pkg-config is
    not found.  These are now only looked for on the path (like
    almost all other programs) so if needed specify a full path to
    the command in PKG_CONFIG, for example in file config.site.
  * C99 function iswblank is required - it was last seen missing ca
    2003 so the workaround has been removed.
  * There are new configure options --with-internal-iswxxxxx,
  - -with-internal-towlower and --with-internal-wcwidth which allows
    the system functions for wide-character classification,
    case-switching and width (wcwidth and wcswidth) to be replaced by
    internal ones.  The first has long been used on macOS, AIX (and
    Windows) but this enables it to be unselected there and selected
    for other platforms (it is the new default on Solaris).  The
    second is new in this version of R and is selected by default on
    macOS and Solaris.  The third has long been the default and
    remains so as it contains customizations for East Asian
    languages.
    System versions of these functions are often minimally
    implemented (sometimes only for ASCII characters) and may not
    cover the full range of Unicode points: for example Solaris (and
    Windows) only cover the Basic Multilingual Plane.
  * Cairo installations without X11 are more likely to be detected by
    configure, when the file-based Cairo graphics devices will be
    available but not X11(type = "cairo").
  * There is a new configure option --with-static-cairo which is the
    default on macOS.  This should be used when only static cairo
    (and where relevant, Pango) libraries are available.
  * Cairo-based graphics devices on platforms without Pango but with
    FreeType/FontConfig will make use of the latter for font
    selection.
  LINK-TIME OPTIMIZATION on a UNIX-ALIKE:
  * Configuring with flag --enable-lto=R now also uses LTO when
    installing the recommended packages.
  * R CMD INSTALL and R CMD SHLIB have a new flag --use-LTO to use
    LTO when compiling code, for use with R configured with
  - -enable-lto=R.  For R configured with --enable-lto, they have
    the new flag --no-use-LTO.
    Packages can opt in or out of LTO compilation _via_ a UseLTO
    field in the DESCRIPTION file.  (As usual this can be overridden
    by the command-line flags.)
  BUILDING R on Windows:
  * for GCC &gt;= 8, FC_LEN_T is defined in config.h and hence character
    lengths are passed from C to Fortran in _inter alia_ BLAS and
    LAPACK calls.
  * There is a new text file src/gnuwin32/README.compilation, which
    outlines how C/Fortran code compilation is organized and
    documents new features:
  * R can be built with Link-Time Optimization with a suitable
    compiler - doing so with GCC 9.2 showed several
    inconsistencies which have been corrected.
  * There is support for cross-compiling the C and Fortran code
    in R and standard packages on suitable (Linux) platforms.
    This is mainly intended to allow developers to test later
    versions of compilers - for example using GCC 9.2 or 10.x has
    detected issues that GCC 8.3 in Rtools40 does not.
  * There is experimental support for cross-building R packages
    with C, C++ and/or Fortran code.
  * The R installer can now be optionally built to support a single
    architecture (only 64-bit or only 32-bit).
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++14 where
    available (which it is on all currently checked platforms): if
    not (as before) C++11 is used if available otherwise C++ is not
    supported.
    Packages which specify C++11 will still be installed using C++11.
    C++14 compilers may give deprecation warnings, most often for
    std::random_shuffle (deprecated in C++14 and removed in C++17).
    Either specify C++11 (see 'Writing R Extensions') or modernize
    the code and if needed specify C++14.  The latter has been
    supported since R 3.4.0 so the package's DESCRIPTION would need
    to include something like
    Depends: R (&gt;= 3.4)
  PACKAGE INSTALLATION on Windows:
  * R CMD INSTALL and R CMD SHLIB make use of their flag --use-LTO
    when the LTO_OPT make macro is set in file etc/${R_ARCH}/Makeconf
    or in a personal/site Makevars file.  (For details see 'Writing R
    Extensions' SS4.5.)
    This provides a valuable check on code consistency.  It does work
    with GCC 8.3 as in Rtools40, but that does not detect everything
    the CRAN checks with current GCC do.
  PACKAGE INSTALLATION on macOS:
  * The default personal library directory on builds with
  - -enable-aqua (including CRAN builds) now differs by CPU type,
    one of
    ~/Library/R/x86_64/x.y/library
    ~/Library/R/arm64/x.y/library
    This uses the CPU type R (and hence the packages) were built for,
    so when a x86_64 build of R is run under Rosetta emulation on an
    arm64 Mac, the first is used.
  UTILITIES:
  * R CMD check can now scan package functions for bogus return
    statements, which were possibly intended as return() calls (wish
    of PR#17180, patch by Sebastian Meyer). This check can be
    activated via the new environment variable
    _R_CHECK_BOGUS_RETURN_, true for --as-cran.
  * R CMD build omits tarballs and binaries of previous builds from
    the top-level package directory.  (PR#17828, patch by Sebastian
    Meyer.)
  * R CMD check now runs sanity checks on the use of LazyData, for
    example that a data directory is present and that
    LazyDataCompression is not specified without LazyData and has a
    documented value.  For packages with large LazyData databases
    without specifying LazyDataCompression, there is a reference to
    the code given in 'Writing R Extensions' SS1.1.6 to test the
    choice of compression (as in all the CRAN packages tested a
    non-default method was preferred).
  * R CMD build removes LazyData and LazyDataCompression fields from
    the DESCRIPTION file of packages without a data directory.
  ENCODING-RELATED CHANGES:
  * The parser now treats \Unnnnnnnn escapes larger than the upper
    limit for Unicode points (\U10FFFF) as an error as they cannot be
    represented by valid UTF-8.
    Where such escapes are used for outputting non-printable
    (including unassigned) characters, 6 hex digits are used (rather
    than 8 with leading zeros).  For clarity, braces are used, for
    example \U{0effff}.
  * The parser now looks for non-ASCII spaces on Solaris (as
    previously on most other OSes).
  * There are warnings (including from the parser) on the use of
    unpaired surrogate Unicode points such as \uD834.  (These cannot
    be converted to valid UTF-8.)
  * Functions nchar(), tolower(), toupper() and chartr() and those
    using regular expressions have more support for inputs with a
    marked Latin-1 encoding.
  * The character-classification functions used (by default) to
    replace the system iswxxxxx functions on Windows, macOS and AIX
    have been updated to Unicode 13.0.0.
    The character-width tables have been updated to include new
    assignments in Unicode 13.0.0.
  * The code for evaluating default (extended) regular expressions
    now uses the same character-classification functions as the rest
    of R (previously they differed on Windows, macOS and AIX).
  * There is a build-time option to replace the system's
    wide-character wctrans C function by tables shipped with R: use
    configure option --with-internal-towlower or (on Windows)
  - DUSE_RI18N_CASE in CFLAGS when building R.  This may be needed
    to allow tolower() and toupper() to work with Unicode characters
    beyond the Basic Multilingual Plane where not supported by system
    functions (e.g. on Solaris where it is the new default).
  * R is more careful when truncating UTF-8 and other multi-byte
    strings that are too long to be printed, passed to the system or
    libraries or placed into an internal buffer.  Truncation will no
    longer produce incomplete multibyte characters.
  DEPRECATED AND DEFUNCT:
  * Function plclust() from the package stats and
    package.dependencies(), pkgDepends(), getDepList(),
    installFoundDepends(), and vignetteDepends() from package tools
    are defunct.
  * Defunct functions checkNEWS() and readNEWS() from package tools
    and CRAN.packages() from utils have been removed.
  * R CMD config CXXCPP is defunct (it was deprecated in R 3.6.2).
  * parallel::detectCores() drops support for Irix (retired in 2013).
  * The LINPACK argument to chol.default(), chol2inv(),
    solve.default() and svd() has been defunct since R 3.1.0.  It was
    silently ignored up to R 4.0.3 but now gives an error.
  * Subsetting/indexing, such as ddd[*] or ddd$x on a DOTSXP
    (dot-dot-dot) object ddd has been disabled; it worked by accident
    only and was undocumented.
  BUG FIXES:
  * Many more C-level allocations (mainly by malloc and strdup) are
    checked for success with suitable alternative actions.
  * Bug fix for replayPlot(); this was turning off graphics engine
    display list recording if a recorded plot was replayed in the
    same session.  The impact of the bug became visible if resize the
    device after replay OR if attempted another savePlot() after
    replay (empty display list means empty screen on resize or empty
    saved plot).
  * R CMD check etc now warn when a package exports non-existing S4
    classes or methods, also in case of no "methods" presence.
    (Reported by Alex Bertram; reproducible example and patch by
    Sebastian Meyer in PR#16662.)
  * boxplot() now also accepts calls for labels such as ylab, the
    same as plot().  (Reported by Marius Hofert.)
  * The help page for xtabs() now correctly states that addNA is
    setting na.action = na.pass among others.  (Reported as PR#17770
    by Thomas Soeiro.)
  * The R CMD check &lt;pkg&gt; gives a longer and more comprehensible
    message when DESCRIPTION misses dependencies, e.g., in Imports:.
    (Thanks to the contributors of PR#17179.)
  * update.default() now calls the generic update() on the formula to
    work correctly for models with extended formulas.  (As reported
    and suggested by Neal Fultz in PR#17865.)
  * The horizontal position of leaves in a dendrogram is now correct
    also with center = FALSE.  (PR#14938, patch from Sebastian
    Meyer.)
  * all.equal.POSIXt() no longer warns about and subsequently ignores
    inconsistent "tzone" attributes, but describes the difference in
    its return value (PR#17277).  This check can be disabled _via_
    the new argument check.tzone = FALSE as suggested by Sebastian
    Meyer.
  * as.POSIXct() now populates the "tzone" attribute from its tz
    argument when x is a logical vector consisting entirely of NA
    values.
  * x[[2^31]] &lt;- v now works.  (Thanks to the report and patch by
    Suharto Anggono in PR#17330.)
  * In log-scale graphics, axis() ticks and label positions are now
    computed more carefully and symmetrically in their range,
    typically providing _more_ ticks, fulfilling wishes in PR#17936.
    The change really corresponds to an improved axisTicks() (package
    grDevices), potentially influencing grid and lattice, for
    example.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now correct to at
    least five digits where it was catastrophically wrong,
    previously.
  * sum(df) and similar "Summary"- and "Math"-group member functions
    now work for data frames df with logical columns, notably also of
    zero rows.  (Reported to R-devel by Martin "b706".)
  * unsplit() had trouble with tibbles due to unsound use of rep(NA,
    len)-indexing, which should use NA_integer_ (Reported to R-devel
    by Mario Annau.)
  * pnorm(x, log.p = TRUE) underflows to -Inf slightly later.
  * show(&lt;hidden S4 generic&gt;) prints better and without quotes for
    non-hidden S4 generics.
  * read.table() and relatives treated an "NA" column name as missing
    when check.names = FALSE PR#18007.
  * Parsing strings containing UTF-16 surrogate pairs such as
    "\uD834\uDD1E" works better on some (uncommon) platforms.
    sprintf("%X", utf8ToInt("\uD834\uDD1E")) should now give "1D11E"
    on all platforms.
  * identical(x,y) is no longer true for differing DOTSXP objects,
    fixing PR#18032.
  * str() now works correctly for DOTSXP and related exotics, even
    when these are doomed.
    Additionally, it no longer fails for lists with a class and
    "irregular" method definitions such that e.g. lapply(*) will
    necessarily fail, as currently for different igraph objects.
  * Too long lines in environment files (e.g. Renviron) no longer
    crash R. This limit has been increased to 100,000 bytes.
    (PR#18001.)
  * There is a further workaround for FreeType giving incorrect
    italic font faces with cairo-based graphics devices on macOS.
  * add_datalist(*, force = TRUE) (from package tools) now actually
    updates an existing data/datalist file for new content.  (Thanks
    to a report and patch by Sebastian Meyer in PR#18048.)
  * cut.Date() and cut.POSIXt() could produce an empty last interval
    for breaks = "months" or breaks = "years".  (Reported as PR#18053
    by Christopher Carbone.)
  * Detection of the encoding of 'regular' macOS locales such as
    en_US (which is UTF-8) had been broken by a macOS change:
    fortunately these are now rarely used with en_US.UTF-8 being
    preferred.
  * sub() and gsub(pattern, repl, x, *) now keep attributes of x such
    as names() also when pattern is NA (PR#18079).
  * Time differences ("difftime" objects) get a replacement and a
    rep() method to keep "units" consistent.  (Thanks to a report and
    patch by Nicolas Bennett in PR#18066.)
  * The \RdOpts macro, setting defaults for \Sexpr options in an Rd
    file, had been ineffective since R 2.12.0: it now works again.
    (Thanks to a report and patch by Sebastian Meyer in PR#18073.)
  * mclapply and pvec no longer accidentally terminate parallel
    processes started before by mcparallel or related calls in
    package parallel (PR#18078).
  * grep and other functions for evaluating (extended) regular
    expressions handle in Unicode also strings not explicitly flagged
    UTF-8, but flagged native when running in UTF-8 locale.
  * Fixed a crash in fifo implementation on Windows (PR#18031).
  * Binary mode in fifo on Windows is now properly detected from
    argument open (PR#15600, PR#18031).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1622808000">- The line %{__install} -m 755 -d %{_infodir}
  no longer works in TW or Factory.
  But without that line it works everywhere. So this instruction
  was commented out of the spec file.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1628596800">- CHANGES IN R 4.1.1:
  NEW FEATURES:
  * require(pkg, quietly = TRUE) is quieter and in particular does
    not warn if the package is not found.
  DEPRECATED AND DEFUNCT:
  * Use of ftp:// URIs should be regarded as deprecated, with
    on-going support confined to method = "libcurl" and not routinely
    tested.  (Nowadays no major browser supports them.)
  * The non-default method = "internal" is deprecated for http:// and
    ftp:// URIs for both download.file and url.
  * On Windows, method = "wininet" is deprecated for http://,
    https:// and ftp:// URIs for both download.file and url.  (A
    warning is only given for ftp://.)
    For ftp:// URIs the default method is now "libcurl" if available
    (which it is on CRAN builds).
    method = "wininet" remains the default for http:// and https://
    URIs but if libcurl is available, using method = "libcurl" is
    preferred.
  INSTALLATION:
  * make check now works also without a LaTeX installation.  (Thanks
    to Sebastian Meyer's PR#18103.)
  BUG FIXES:
  * make check-devel works again in an R build configured with
  - -without-recommended-packages.
  * qnbinom(p, size, mu) for large size/mu is correct now in a range
    of cases (PR#18095); similarly for the (size, prob)
    parametrization of the negative binomial.  Also qpois() and
    qbinom() are better and or faster for extreme cases.  The
    underlying C code has been modularized and is common to all four
    cases of discrete distributions.
  * gap.axis is now part of the axis() arguments which are passed
    from bxp(), and hence boxplot().  (Thanks to Martin Smith's
    report and suggestions in PR#18109.)
  * .First and .Last can again be set from the site profile.
  * seq.int(from, to, *) and seq.default(..) now work better in large
    range cases where from-to is infinite where the two boundaries
    are finite.
  * all.equal(x,y) now returns TRUE correctly also when several
    entries of abs(x) and abs(y) are close to .Machine$double.xmax,
    the largest finite numeric.
  * model.frame() now clears the object bit when removing the class
    attribute of a value via na.action (PR#18100).
  * charClass() now works with multi-character strings on Windows
    (PR#18104, fixed by Bill Dunlap).
  * encodeString() on Solaris now works again in Latin-1 encoding on
    characters represented differently in UTF-8.  Support for
    surrogate pairs on Solaris has been improved.
  * file.show() on Windows now works with non-ASCII path names
    representable in the current native encoding (PR#18132).
  * Embedded R on Windows can now find R home directory via the
    registry even when installed only for the current user
    (PR#18135).
  * pretty(x) with finite x now returns finite values also in the
    case where the extreme x values are close in size to the maximal
    representable number .Machine$double.xmax.
    Also, it's been tweaked for very small ranges and when a boundary
    is close (or equal) to zero; e.g., pretty(c(0,1e-317)) no longer
    has negative numbers, currently still warning about a very small
    range, and pretty(2^-(1024 - 2^-1/(c(24,10)))) is more accurate.
  * The error message for not finding vignette files when weaving has
    correct file sizes now. (Thanks to Sebastian Meyer's PR#18154.)
  * dnbinom(20, &lt;large&gt;, 1) now correctly gives 0, and similar cases
    are more accurate with underflow precaution.  (Reported by Francisco Vera Alcivar in PR#18072.)</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635163200">- repaired https://bugzilla.suse.com/show_bug.cgi?id=1191380
  (rpmacros now go to rpmmacrodir)
- minor clean-ups in spec file</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635768000">- CHANGES IN R 4.1.2:
  C-LEVEL FACILITIES:
  * The workaround in headers R.h and Rmath.h (using namespace std;)
    for the Oracle Developer Studio compiler is no longer needed now
    C++11 is required so has been removed.  A couple more usages of
    log() (which should have been std::log()) with an int argument
    are reported on Solaris.
  * The undocumented limit of 4095 bytes on messages from the
    S-compatibility macros PROBLEM and MESSAGE is now documented and
    longer messages will be silently truncated rather than
    potentially causing segfaults.
  * If the R_NO_SEGV_HANDLER environment variable is non-empty, the
    signal handler for SEGV/ILL/BUS signals (which offers recovery
    user interface) is not set. This allows more reliable debugging
    of crashes that involve the console.
  DEPRECATED AND DEFUNCT:
  * The legacy S-compatibility macros PROBLEM, MESSAGE, ERROR, WARN,
    WARNING, RECOVER, ... are deprecated and will be hidden in R
    4.2.0. R's native interface of Rf_error and Rf_warning has long
    been preferred.
  BUG FIXES:
  * .mapply(F, dots, .) no longer segfaults when dots is not a list
    and uses match.fun(F) as always documented; reported by Andrew
    Simmons in PR#18164.
  * hist(&lt;Date&gt;, ...) and hist(&lt;POSIXt&gt;, ...)  no longer pass
    arguments for rect() (such as col and density) to axis().
    (Thanks to Sebastian Meyer's PR#18171.)
  * \Sexpr{ch} now preserves Encoding(ch). (Thanks to report and
    patch by Jeroen Ooms in PR#18152.)
  * Setting the RNG to "Marsaglia-Multicarry" e.g., by RNGkind(), now
    warns in more places, thanks to Andr'e Gillibert's report and
    patch in PR#18168.
  * gray(numeric(), alpha=1/2) no longer segfaults, fixing PR#18183,
    reported by Till Krenz.
  * Fixed dnbinom(x, size=&lt;very_small&gt;, .., log=TRUE) regression,
    reported by Martin Morgan.
  * as.Date.POSIXlt(x) now keeps names(x), thanks to Davis Vaughan's
    report and patch in PR#18188.
  * model.response() now strips an "AsIs" class typically, thanks to
    Duncan Murdoch's report and other discussants in PR#18190.
  * try() is considerably faster in case of an error and long call,
    as e.g., from some do.call().  Thanks to Alexander Kaever's
    suggestion posted to R-devel.
  * qqline(y = &lt;object&gt;) such as y=I(.), now works, see also
    PR#18190.
  * Non-integer mgp par() settings are now handled correctly in
    axis() and mtext(), thanks to Mikael Jagan and Duncan Murdoch's
    report and suggestion in PR#18194.
  * formatC(x) returns length zero character() now, rather than ""
    when x is of length zero, as documented, thanks to Davis
    Vaughan's post to R-devel.
  * removeSource(fn) now retains (other) attributes(fn).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1647000000">- CHANGES IN R 4.1.3:
  NEW FEATURES:
  * The default version of Bioconductor has been changed to 3.14.
    (This is used by setRepositories and the menus in GUIs.)
  UTILITIES:
  * R CMD check --as-cran has a workaround for a bug in versions of
    file up to at least 5.41 which mis-identify DBF files last
    changed in 2022 as executables.
  C-LEVEL FACILITIES:
  * The legacy S-compatibility macros SINGLE_* in R_ext/Constants.h
    (included by R.h) are deprecated and will be removed in R 4.2.0.
  BUG FIXES:
  * Initialization of self-starting nls() models with initialization
    functions following the pre-R-4.1.0 API (without the ...
    argument) works again for now, with a deprecation warning.
  * Fixed quoting of ~autodetect~ in Java setting defaults to avoid
    inadvertent user lookup due to leading ~, reported in PR#18231 by
    Harold Gutch.
  * substr(., start, stop) &lt;- v now treats _negative_ stop values
    correctly.  Reported with a patch in PR#18228 by Brodie Gaslam.
  * Subscripting an array x without dimnames by a
    length(dim(x))-column character matrix gave "random" non-sense,
    now an error; reported in PR#18244 by Mikael Jagan.
  * ...names() now matches names(list(...)) closely, fixing PR#18247.
  * all.equal(*, scale = s) now works as intended when length(s) &gt; 1,
    partly thanks to Michael Chirico's PR#18272.
  * print(x) for long vectors x now also works for named atomic
    vectors or lists and prints the correct number when reaching the
    getOption("max.print") limit; partly thanks to a report and
    proposal by Hugh Parsonage to the R-devel list.
  * all.equal(&lt;selfStart&gt;, *) no longer signals a deprecation
    warning.
  * reformulate(*, response=r) gives a helpful error message now when
    length(r) &gt; 1, thanks to Bill Dunlap's PR#18281.
  * Modifying globalCallingHandlers inside withCallingHandlers() now
    works or fails correctly, thanks to Henrik Bengtsson's PR#18257.
  * hist(&lt;Date&gt;, breaks = "days") and hist(&lt;POSIXt&gt;, breaks = "secs")
    no longer fail for inputs of length 1.
  * qbeta(.001, .9, .009) and similar cases now converge correctly
    thanks to Ben Bolker's report in PR#17746.
  * window(x, start, end) no longer wrongly signals "'start' cannot
    be after 'end'", fixing PR#17527 and PR#18291.
  * data() now checks that its (rarely used) list argument is a
    character vector - a couple of packages passed other types and
    gave incorrect results.
  * which() now checks its arr.ind argument is TRUE rather coercing
    to logical and taking the first element - which gave incorrect
    results in package code.
  * model.weights() and model.offset() more carefully extract their
    model components, thanks to Ben Bolker and Tim Taylor's R-devel
    post.
  * list.files(recursive = TRUE) now shows all broken symlinks
    (previously, some of them may have been omitted, PR#18296).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1650628800">- CHANGES IN R 4.2.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * The formula method of aggregate() now matches the generic in
    naming its first argument x (resolving PR#18299 by Thomas
    Soeiro).
    This means that calling aggregate() with a formula as a named
    first argument requires name formula in earlier versions of R and
    name x now, so portable code should not name the argument (code
    in many packages did).
  * Calling &amp;&amp; or || with either argument of length greater than one
    now gives a warning (which it is intended will become an error).
  * Calling if() or while() with a condition of length greater than
    one gives an error rather than a warning.  Consequently,
    environment variable _R_CHECK_LENGTH_1_CONDITION_ no longer has
    any effect.
  * Windows users should consult the WINDOWS section below for some
    profound changes including
  * Support for 32-bit builds has been dropped.
  * UTF-8 locales are used where available.
  * The default locations for the R installation and personal
    library folder have been changed.
    Thanks to Tomas Kalibera for months of work on the Windows port
    for this release.
  NEW FEATURES:
  * matrix(x, n, m) now warns in more cases where length(x) differs
    from n * m, as suggested by Abby Spurdle and Wolfgang Huber in
    Feb 2021 on the R-devel mailing list.
    This warning can be turned into an error by setting environment
    variable _R_CHECK_MATRIX_DATA_ to TRUE: R CMD check --as-cran
    does so unless it is already set.
  * Function file_test() in package utils gains tests for symlinks,
    readability and writability.
  * capabilities("libxml") is now false.
    The description of capabilities("http/ftp") now reflects that it
    refers to the default method, no longer the internal one.
  * simplify2array() gains an except argument for controlling the
    exceptions used by sapply().
  * Environment variables R_LIBS_USER and R_LIBS_SITE are both now
    set to the R system default if unset or empty, and can be set to
    NULL to indicate an empty list of user or site library
    directories.
  * The warning for axis()(-like) calls in cases of relatively small
    ranges (typically in log-scale situations) is slightly improved
    _and_ suppressed from explicit calls to .axisPars() as has always
    been the intention.
  * The contrasts setter function `contrasts&lt;-` gains an explicit
    default how.many = NULL rather than just using missing(how.many).
  * grid.pretty() gains a new optional argument n = 5.
  * There is a new function .pretty() with option bounds as a
    technical-utility version of pretty().  It and pretty() gain a
    new argument f.min with a better than back-compatible default.
  * Function grDevices::axisTicks() and related functions such as
    graphics::axis() work better, notably for the log scale; partly
    because of the pretty() improvements, but also because care is
    taken e.g., when ylim is finite but diff(ylim) is infinite.
  * nclass.FD() gains a digits option.
  * The R Mathlib internal C function bd0() (called indirectly from a
    dozen probability density and distribution functions such as
    dpois(), dbinom(), dgamma(), pgamma() _etc_) has been
    complemented by a more sophisticated and (mostly) more accurate C
    function ebd0(), currently called only by internal dpois_raw()
    improving accuracy for R level dpois() and potentially others
    calling it such as dnbinom(), dgamma() or pgamma().  (Thanks to
    Morten Welinder's PR#15628.)
  * write.ftable() gains sep = " " argument as suggested by Thomas
    Soeiro.
  * The names of the locale categories supported by R's
    Sys.getlocale() and Sys.setlocale() are now provided by variable
    .LC.categories in the base namespace.
  * The Date and POSIXt methods for hist() and the histogram method
    for plot() now also use the new default col = "lightgray" in
    consistency with the corresponding change to hist()'s default for
    R 4.0.0.
  * hist.default() gains new fuzz argument, and the histogram plot
    method no longer uses fractional axis ticks when displaying
    counts ("Frequency").
  * mapply() and hence Map() now also obey the "max-or-0-if-any"
    recycling rule, such that, e.g., Map(`+`, 1:3, 1[0]) is valid
    now.
  * as.character(&lt;obj&gt;) for "hexmode" or "octmode" objects now
    fulfils the important basic rule as.character(x)[j] ===
    as.character(x[j]).
  * The set utility functions, notably intersect() have been tweaked
    to be more consistent and symmetric in their two set arguments,
    also preserving a common mode.
  * substr(ch, start,end) &lt;- new now e.g., preserves names(ch); ditto
    for substring(), thanks to a patch from Brodie Gaslam.
  * plot(&lt;lm&gt;) gains a extend.ylim.f argument, in partial response to
    PR#15285; further PR#17784 is fixed thanks to several
    contributors and a patch by Elin Waring.  The Cook's dist
    contours get customizable via cook.col and cook.lty with a
    different default color and their legend is nicer by default and
    customizable via cook.legendChanges.
  * Attempting to subset an object that is not subsettable now
    signals an error of class notSubsettableError. The
    non-subsettable object is contained in the object field of the
    error condition.
  * Subscript-out-of-bounds errors are now signaled as errors of
    class subscriptOutOfBoundsError.
  * Stack-overflow errors are now signaled as errors inheriting from
    class stackOverflowError. See ?stackOverflowError for more
    details.
  * New partly experimental Sys.setLanguage() utility, solving the
    main problem of PR#18055.
  * gettext() and gettextf() get a new option trim = TRUE which when
    set to false allows translations for strings such as "Execution
    halted\n" typical for C code.
  * An experimental implementation of hash tables is now available.
    See ?hashtab for more details.
  * identical() gains a extptr.as.ref argument for requesting that
    external pointer objects be compared as reference objects.
  * reorder() gets an argument decreasing which it passes to sort()
    for level creation; based on the wish and patch by Thomas Soeiro
    in PR#18243.
  * as.vector() gains a data.frame method which returns a simple
    named list, also clearing a long standing 'FIXME' to enable
    as.vector(&lt;data.frame&gt;, mode="list").  This breaks code relying
    on as.vector(&lt;data.frame&gt;) to return the unchanged data frame.
  * legend() is now vectorized for arguments cex, x.intersp, and
    text.width.  The latter can now also be specified as a vector
    (one element for each column of the legend) or as NA for
    computing a proper column wise maximum value of strwidth(legend).
    The argument y.intersp can be specified as a vector with one
    entry for each row of the legend.
    legend() also gains new arguments title.cex and title.font.
    Thanks to Swetlana Herbrandt.
  * Deparsing no longer remaps attribute names dim, dimnames, levels,
    names and tsp to historical S-compatible names (which structure()
    maps back).
  * sample() and sample.int() have additional sanity checks on their
    size and n arguments.
    all.equal.numeric() gains a sanity check on its tolerance
    argument - calling all.equal(a, b, c) for three numeric vectors
    is a surprisingly common error.
    mean(na.rm =), rank(na.last =), barplot(legend.text =),
    boxplot(), contour(drawlabels =), polygon(border =) and
    methods::is(class2 =) have more robust sanity checks on their
    arguments.
    R CMD Rd2pdf (used by R CMD check) has a more robust sanity check
    on the format of \alias{} commands.
  * psigamma(x, deriv) for negative x now also works for deriv = 4
    and 5; their underlying C level dpsifn() is documented in
    'Writing R Extensions'.
  * The HTML help system now uses HTML5 (wish of PR#18149).
  * ks.test() now provides exact p-values also with ties and MC
    p-values in the two-sample (Smirnov) case.  By Torsten Hothorn.
  * ks.test() gains a formula interface, with y ~ 1 for the
    one-sample (Kolmogorov) test and y ~ group for the two-sample
    (Smirnov) test.  Contributed by Torsten Hothorn.
  * The return value from ks.test() now has class c("ks.test",
    "htest") - packages using try() need to take care to use
    inherits() and not == on the class.
  * New functions psmirnov(), qsmirnov() and rsmirnov() in package
    stats implementing the asymptotic and exact distributions of the
    two-sample Smirnov statistic.
  * iconv() now allows sub = "c99" to use C99-style escapes for UTF-8
    inputs which cannot be converted to encoding to.
  * In a forward pipe |&gt; expression it is now possible to use a named
    argument with the placeholder _ in the rhs call to specify where
    the lhs is to be inserted.  The placeholder can only appear once
    on the rhs.
  * The included LAPACK sources have been updated to version 3.10.0,
    except for the four Fortran 77 routines which 3.10.0 has
    re-implemented in Fortran 90 (where the older versions have been
    retained as the R build process does not support Fortran 90).
  * path.expand() and most other uses of tilde expansion now warn if
    a path would be too long if expanded.  (An exception is
    file.exists(), which silently returns false.)
  * trunc(&lt;Date&gt;, *) now supports units = "months" or "years" for
    consistency with the POSIXt method, thanks to Dirk Eddelbuettel's
    proposal in PR#18099.
  * list2DF() now checks that its arguments are of the same length,
    rather than use recycling.
  * The HTML help system has several new features: LaTeX-like math
    can be typeset using either KaTeX or MathJax, usage and example
    code is highlighted using Prism, and for dynamic help the output
    of examples and demos can be shown within the browser if the
    knitr package is installed. These features can be disabled by
    setting the environment variable _R_HELP_ENABLE_ENHANCED_HTML_ to
    a false value.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 15
    and so packages that provide graphics devices should be
    reinstalled.
  * The grid package now allows the user to specify a "vector" of
    pattern fills.  The fill argument to gpar() accepts a list of
    gradients and/or patterns and the functions linearGradient(),
    radialGradient(), and pattern() have a new group argument.
    Points grobs (data symbols) can now also have a pattern fill.
    The grobCoords() function now returns a more informative and
    complex result.
  * The grid package has new functions for drawing isolated groups:
    grid.group(), grid.define(), and grid.use().  These functions add
    compositing operators and affine transformations to R's graphics
    capabilities.
    The grid package also has new functions for stroking and filling
    paths: grid.stroke(), grid.fill(), and grid.fillStroke().
    A new function as.path() allows the user to specify the fill rule
    for a path that is to be used for clipping, stroking, or filling;
    available options are "winding" and "evenodd".  A new function
    as.mask() allows the user to specify the type of a mask;
    available options are "alpha" and "luminance".
    These new features are only supported so far (at most) on the
    Cairo-based graphics devices and on the pdf() device.
  * dev.capabilities() reports on device support for the new
    features.
  * par() now warns about unnamed non-character arguments to prevent
    misuse such as {usr &lt;- par("usr"); par(usr)}.
  INSTALLATION:
  * Facilities for accessing ftp:// sites are no longer tested
    (except _pro tem_ for curlGetHeaders()) as modern browsers have
    removed support.
  * R can now be built with DEFS = -DSTRICT_R_HEADERS .
  PACKAGE INSTALLATION:
  * R CMD INSTALL no longer tangles vignettes. This completes an R
    CMD build change in R 3.0.0 and affects packages built before R
    3.0.2. Such packages should be re-made with R CMD build to have
    the tangled R code of vignettes shipped with the tarball.
  * USE_FC_LEN_T will become the default: this uses the correct
    prototypes for Fortran BLAS/LAPACK routines called from C/C++,
    and requires adjustment of most such calls - see 'Writing R
    Extensions' SS6.6.2.  (This has been supported since R 3.6.2.)
  * Package installation speed for packages installed with
    keep.source has been improved. This resolve the issue reported by
    Ofek Shilon in PR#18236.
  UTILITIES:
  * R CMD check can optionally report files/directories left behind
    in home, /tmp (even though TMPDIR is set) and other directories.
    See the "R Internals" manual for details.
  * R CMD check now reports byte-compilation errors during
    installation.  These are not usually fatal but may result in
    parts of the package not being byte-compiled.
  * _R_CHECK_DEPENDS_ONLY_ can be applied selectively to examples,
    tests and/or vignettes in R CMD check: see the "R Internals"
    manual.
  * _R_CHECK_SRC_MINUS_W_IMPLICIT_ now defaults to true: recent
    versions of Apple clang on macOS have made implicit function
    declarations in C into a compilation error.
  * R CMD check --as-cran makes use of the environment variable
    AUTORECONF.  See the "R Internals" manual SS8 for further details.
  * R CMD check --use-valgrind also uses valgrind when re-building
    vignettes as some non-Sweave vignettes unhelpfully comment out
    all their code when R CMD check runs vignettes.
  * Errors in re-building vignettes (unless there are LaTeX errors)
    are reported by R CMD check as ERROR rather than WARNING when
    running vignettes has been skipped (as it frequently is in CRAN
    checks and by --as-cran).
  * R CMD Rd2pdf gains a --quiet option that is used by R CMD build
    when building the PDF package manual.
  * R CMD Rd2pdf now always runs LaTeX in batch mode, consistent with
    Texinfo &gt;= 6.7. The --batch option is ignored.
  * R CMD build and R CMD check now include the Rd file name and line
    numbers in the error message of an \Sexpr evaluation failure.
  * For packages using the \doi Rd macro (now an install-time \Sexpr)
    but no other dynamic Rd content, R CMD build now produces a
    smaller tarball and is considerably faster - skipping temporary
    package installation.
  C-LEVEL FACILITIES:
  * The non-API header R_ext/R-ftp-http.h is no longer provided, as
    the entry points it covered are now all defunct.
  * A number of non-API declarations and macro definitions have been
    moved from the installed header Rinternals.h to the internal
    header Defn.h. Packages that only use entry points and
    definitions documented to be part of the API as specified in
    'Writing R Extensions' SS6 should not be affected.
  * The macro USE_RINTERNALS no longer has any effect when compiling
    package code.  Packages which also use R_NO_REMAP will need to
    ensure that the remapped names are used for calls to API
    functions that were formerly also made available as macros.
  * The deprecated legacy S-compatibility macros PROBLEM, MESSAGE,
    ERROR, WARN, WARNING, RECOVER, ... are no longer defined in
    R_exts/RS.h (included by R.h).  Replace these by calls to
    Rf_error and Rf_warning (defined in header R_ext/Error.h included
    by R.h).
    Header R_ext/RS.h no longer includes R_ext/Error.h.
  * Header R_ext/Constants.h (included by R.h) when included from C++
    now includes the C++ header cfloat rather than the C header
    float.h (now possible as C++11 is required).
  * The legacy S-compatibility macros DOUBLE_* in R_ext/Constants.h
    (included by R.h) are deprecated.
  * The deprecated S-compatibility macros SINGLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * R_Calloc, R_Free and R_Realloc are preferred to their unprefixed
    forms and error messages now use the prefix. These forms were
    introduced in R 3.4.0 and are available even when
    STRICT_R_HEADERS is defined.
  * rmultinom has been documented in 'Writing R Extensions' SS6 so is
    now part of the R API.
  * Similarly, Rtanpi, called from R level tanpi() is now part of the
    R API.
  * The long-deprecated, undocumented and non-API entry point call_R
    is no longer declared in R_ext/RS.h (included by R.h).
  * The header S.h which has been unsupported since Jan 2016 has been
    removed.  Use R.h instead.
  DEPRECATED AND DEFUNCT:
  * The (non-default and deprecated) method = "internal" for
    download.file() and url() no longer supports http:// nor ftp://
    URIs.  (It is used only for file:// URIs.)
    On Windows, download.file(method = "wininet") no longer supports
    ftp:// URIs.  (It is no longer the default method, which is
    "libcurl" and does.)
    On Windows, the deprecated method = "wininet" now gives a warning
    for http:// and https:// URIs for both download.file() and url().
    (It is no longer the default method.)
  * On Windows, the command-line option --max-mem-size and
    environment variable R_MAX_MEM_SIZE are defunct.  The memory
    allocation limit was important for 32-bit builds, but these are
    no longer supported.
  * default.stringsAsFactors() is now formally deprecated, where that
    was only mentioned on its regular help page, previously.  So it
    now gives a warning if called.
  * unix.time() is defunct now; it had been deprecated since R 3.4.0.
  BUG FIXES:
  * Setting digits = 0 in format(), print.default() (and hence
    typically print()) or options() is again invalid.  Its behaviour
    was platform-dependent, and it is unclear what "zero significant
    digits" should mean (PR#18098).
  * Messages from C code in the cairo section of package grDevices
    are now also offered for translation, thanks to Michael Chirico's
    PR#18123.
  * mean(x) with finite x now is finite also without "long.double"
    capability.
  * R CMD Rd2pdf no longer leaves an empty build directory behind
    when it aborts due to an already existing output file.  (Thanks
    to Sebastian Meyer's PR#18141.)
  * density(x, weights = w, na.rm = TRUE) when anyNA(x) is true, now
    removes weights "in parallel" to x, fixing PR#18151, reported by
    Matthias Gondan.  Additionally, it gets a subdensity option.
  * Conversion of \Sexpr[]{&lt;expR&gt;} to LaTeX or HTML no longer
    produces long blocks of empty lines when &lt;expR&gt; itself contains
    several lines all producing empty output.  Thanks to a report and
    patch by Ivan Krylov posted to R-devel.
  * R CMD build no longer fails if a package vignette uses child
    documents and inst/doc exists.  (Thanks to Sebastian Meyer's
    PR#18156.)
  * When an R documentation ('help' source) file man/foo.Rd in a
    package has \donttest{..} examples with a syntax error, it is now
    signalled as ERROR and with correct line numbers relating to the
  * -Ex.R file, thanks to Duncan Murdoch and Sebastian Meyer's
    reports and patch proposals in PR#17501.
  * Improved determination of the correct translation domain in
    non-base packages, addressing the combination of PR#18092 and
    PR#17998 (#c6) with reports and _augmented_ patch #2904 by
    Suharto Anggono.
    Note that "R-base" is no longer the default domain e.g., for
    top-level calls to gettext(); rather translation needs explicit
    domain = * specification in such cases.
  * identical(attrib.as.set=FALSE) now works correctly with data
    frames with default row names (Thanks to Charlie Gao's PR#18179).
  * txtProgressBar() now enforces a non-zero width for argument char,
    without which no progress can be visible.
  * dimnames(table(d)) is more consistent in the case where d is a
    list with a single component, thanks to Thomas Soeiro's report to
    R-devel.
    Further, table(d1, d2) now gives an error when d1 and d2 are data
    frames as suggested by Thomas in PR#18224.
  * Fix for drawing semi-transparent lines and fills on the native
    Windows graphics device (PR#18219 and PR#16694).  Thanks to Nick
    Ray for helpful diagnosis on Bugzilla.
  * The deparser now wraps sub-expressions such as if(A) ..  with
    parentheses when needed; thanks to Duncan Murdoch's PR#18232 and
    Lionel Henry's patches there.
  * remove.packages() no longer tries to uninstall Priority: base
    packages, thanks to a report and suggestions by Colin Fay in
    PR#18227.
  * win.metafile() now has xpinch and ypinch arguments so that the
    user can override Windows' (potentially wrong) guess at device
    dimensions.
  * x[i] and x[[i]] for non-integer i should now behave in all cases
    as always documented: the index used is equivalent to
    as.integer(i) unless that would overflow where trunc(i) is used
    instead; thanks to Suharto Anggono's report and patch proposals
    in PR#17977.
  * asOneSidedFormula() now associates the resulting formula with the
    global environment rather than the evaluation environment created
    for the call.
  * &lt;bibentry&gt;$name now matches the field name case-insensitively,
    consistent with bibentry() creation and the replacement method.
  * cbind() failed to detect some length mismatches with a mixture of
    time-series and non-time-series inputs.
  * The default LaTeX style file Sweave.sty used by the RweaveLatex
    driver no longer loads the obsolete ae package; thanks to a
    report by Thomas Soeiro in PR#18271.  Furthermore, it now skips
    \usepackage[T1]{fontenc} for engines other than pdfTeX (if
    detected) or if the new [nofontenc] option is used.
  * smooth.spline() now stores its logical cv argument more safely,
    fixing a rare bug when printing, and also stores n.
  * smooth.spline(x,y,*) now computes the cv.crit statistic
    correctly, also when is.unsorted(x), fixing PR#18294.
  * The data.frame method of rbind() now warns when binding
    not-wholly-recycling vectors, by analogy to the default method
    (for matrices).
  * setAs() finds the correct class for name to when multiple
    packages define a class with that name. Thanks to Gabor Csardi
    for the report.
  * Fix for detaching a package when two classes of the same name are
    present in method signatures for the same generic. Thanks to
    Gabor Csardi for the report.
  * match.arg("", c("", "a", "B")) gives a better error message, in
    part from PR#17959, thanks to Elin Waring.
  * R CMD Sweave --clean no longer removes pre-existing files or
    subdirectories (PR#18242).
  * The quartz() device no longer splits polylines into subpaths.
    That has caused narrowly-spaced lines with many points to always
    look solid even when dashed line type was used due to dash phase
    restarts.
  * Deparsing constructs such as quote(1 + `!`(2) + 3) works again as
    before R 3.5.0, thanks to the report and patch in PR#18284 by
    Suharto Anggono.
  * as.list(f) for a factor f now keeps names(f), fixing PR#18309.
  * qbeta(.001, .9, .009) and analogous qf() calls now return a
    correct value instead of NaN or wrongly 1, all with a warning;
    thanks to the report by Ludger Goeminne in PR#18302.
  * plot.lm() failed to produce the plot of residuals vs.  factor
    levels (i.e., which=5 when leverages are constant) for models
    with character predictors (PR#17840).
  * interaction.plot(..., xtick = TRUE) misplaced the x-axis line
    (PR#18305).
  * Not strictly fixing a bug, format()ing and print()ing of
    non-finite Date and POSIXt values NaN and +/-Inf no longer show
    as NA but the respective string, e.g., Inf, for consistency with
    numeric vector's behaviour, fulfilling the wish of PR#18308.
  * R CMD check no longer runs test scripts generated from
    corresponding .Rin files twice and now signals an ERROR if
    processing an .Rin script fails.
  * tools::Rd2txt() used for plain-text help pages now renders \hrefs
    (if tools::Rd2txt_options(showURLs = TRUE)) and \urls with
    percent-encoding and standards-compliant delimiting style (angle
    brackets and no URL: prefix).  \email is now rendered with a
    mailto: prefix.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1655985600">- CHANGES IN R 4.2.1:
  NEW FEATURES:
  * New function utils::findCRANmirror() to find out if a CRAN mirror
    has been selected, otherwise fallback to the main site.  This
    behaves in the same way as tools::CRAN_package_db() and is
    intended for packages wishing to access CRAN for purposes other
    than installing packages.
    The need for this was shown by a day when the main CRAN website
    was offline and a dozen or so packages which had its URL
    hardcoded failed their checks.
  INSTALLATION on a UNIX-ALIKE:
  * The libraries searched for by --with-blas (without a value) now
    include BLIS (after OpenBLAS but before ATLAS).  And on macOS,
    the Accelerate framework (after ATLAS).  (This is patterned after
    the AX_BLAS macro from the Autoconf Archive.)
  * The included LAPACK sources have been updated to 3.10.1.
  UTILITIES:
  * The (full path to) the command tidy to be used for HTML
    validation can be set by environment variable R_TIDYCMD.
  * Setting environment variable _R_CHECK_RD_VALIDATE_RD2HTML_ to a
    false value will override R CMD check --as-cran and turn off HTML
    validation.  This provides a way to circumvent a problematic
    tidy.
    The 2006 version that ships with macOS is always skipped.
  C-LEVEL FACILITIES:
  * The undocumented legacy declarations of Sint, Sfloat, SINT_MAX
    and SINT_MIN in header R.h are deprecated.
  BUG FIXES:
  * fisher.test(d) no longer segfaults for "large" d; fixing PR#18336
    by preventing/detecting an integer overflow reliably.
  * tar(., files=*) now produces correctly the warning about invalid
    uid or gid of files, fixing PR#18344, reported by Martin Morgan.
  * tk_choose.files() with multi = FALSE misbehaved on paths
    containing spaces (PR#18334) (regression introduced in R 4.0.0).
  * sort(x, partial = ind, *) now works correctly notably for the
    non-default na.last = FALSE or TRUE, fixing PR#18335 reported by
    James Edwards.
  * Environment variable _R_CHECK_XREFS_REPOSITORIES_ is only used
    for checking .Rd cross-references in R CMD check (as documented)
    and not for other uses looking for a CRAN mirror.
  * The search for a CRAN mirror when checking packages now uses
    getOption("repos") if that specifies a CRAN mirror, even when it
    does not also specify all three Bioconductor repositories (as was
    previously required).
  * The HTML code generated by tools::Rd2HTML() has been improved to
    pass tidy 5.8.0.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1667217600">- CHANGES IN R 4.2.2:
  NEW FEATURES:
  * tools::Rdiff(useDiff = TRUE) checks for the presence of an
    external diff command and switches to useDiff = FALSE if none is
    found.  This allows R CMD Rdiff to always work.
  * On Windows, environment variable R_LIBCURL_SSL_REVOKE_BEST_EFFORT
    can be used to switch to only 'best-effort' SSL certificate
    revocation checks with the default "libcurl" download method.
    This reduces security, but may be needed for downloads to work
    with MITM proxies (PR#18379).
  * (macOS) The run-time check for libraries from XQuartz for X11 and
    Tcl/Tk no longer uses otool from the Apple Developer Tools
    (PR#18400).
  * The LaTeX style for producing the PDF manuals, Rd.sty, now loads
    the standard amsmath, amsfonts and amssymb packages for greater
    coverage of math commands in the Rd \eqn and \deqn macros.  The
    \mathscr LaTeX command is also provided (via the mathrsfs
    package, if available, or the amsfonts bundle otherwise),
    fulfilling the wish of PR#18398.
  * (Windows) The default format of readClipboard() and
    writeClipboard() has been changed to 13 (CF_UNICODETEXT).
  INSTALLATION on a UNIX-ALIKE:
  * The PDF manuals (if built) can be compacted by the new target
    make compact-pdf (at the top level or in directory doc/manual).
  * There is now configure support for LLVM clang 15 on Linux, which
    defaults to position-independent (PIE) executables whereas
    gfortran does not.
  * Many small changes to ease compilation (and suppress warnings)
    with LLVM clang 15.
  BUG FIXES:
  * Rscript -e would fail if stdin were closed (Reported by Henrik
    Bengtsson.)
  * qt(*, log.p=TRUE) in outer tails no longer produces NaN in its
    final steps, thus fixing PR#18360.
  * tools::Rd2latex() now escapes hashes and ampersands when writing
    URLs, fixing LaTeX errors with such URLs in \tabular.
  * When isGeneric(f, fdef=*) is used with mismatching names, the
    warning is better understandable; reported (with fix) in PR#18370
    by Gabe Becker.
  * poly(x, n) now works again (and is now documented) when x is a
    "Date" or "POSIXct" object, or of another class while fulfilling
    mode(x) == "numeric".  This also enables poly(x, *, raw=TRUE) for
    such variables.  Reported by Michael Chirico to R-devel.
  * write.table(), write.csv() and write.csv2() restore their
    numerical precision (internal equivalent of digits = 15) after an
    interrupt (PR#18384).
  * One can now read also byte FF from a clipboard connection
    (PR#18385).
  * source("") and source(character()) now give more helpful error
    messages.
  * R CMD check --as-cran set _R_CHECK_TIMINGS_ too late to have the
    intended effect.
  * as.POSIXlt(x) now also works with very large dates x, fixing
    PR#18401 reported by Hannes M"uhleisen.
  * Files can now be extracted even from very large zip archives
    (PR#18390, thanks to Martin Jakt).
  * Non-finite objects of class "POSIXlt" are now correctly coerced
    to classes "Date" and "POSIXct"; following up on the extension to
    format() them correctly.
  * Added methods for is.finite(), is.infinite() and is.nan() for
    "POSIXlt" date-time objects.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1678881600">- CHANGES IN R 4.2.3:
  C-LEVEL FACILITIES:
  * The definition of DL_FUNC in R_ext/Rdynload.h has been changed to
    be fully C-compliant.  This means that functions loaded _via_ for
    example R_GetCCallable need to be cast to an appropriate type if
    they have any arguments.
  * .Machine has a new element sizeof.time_t to identify old systems
    with a 32-bit type and hence a limited range of date-times (and
    limited support for dates millions of years from present).
  PACKAGE INSTALLATION:
  * (Windows) The default C++ standard had accidentally been left at
    C++11 when it was changed to C++14 on Unix.
  BUG FIXES:
  * As "POSIXlt" objects may be "partially filled" and their list
    components meant to be recycled, length() now is the length of
    the longest component.
  * as.POSIXlt.Date() could underflow for dates in the far past (more
    than half a million years BCE).
  * as.Date.POSIXlt(x) would return "1970-01-01" instead of NA in R
    4.2.2, e.g., for
    x &lt;- as.POSIXlt(c("2019-01-30","2001-1-1"))
    x$mon &lt;- c(0L, NA); as.Date(x)
  * R CMD check failed to apply enabled _R_CHECK_SUGGESTS_ONLY_ to
    examples and vignettes (regression in R 4.2.0).
  * R CMD check did not re-build vignettes in separate processes by
    default (regression in R 4.2.0).
  * Running examples from HTML documentation now restores previous
    knitr settings and options (PR#18420).
  * Quartz: fonts are now located using Core Graphics API instead of
    deprecated ATS which is no longer supported in the macOS 13 SDK
    (PR#18426).  This also addresses an issue where the currently
    used font in the Quartz device context was not correctly
    retained.
  * (Windows) Math symbols in text drawing functions are again
    rendered correctly (PR#18440).  This fixes a regression in R
    4.2.1 caused by a fix in PR#18382 which uncovered an issue in
    GraphApp due to which the symbol charset was not used with TT
    Symbol font face.
  * (Windows) Installing a package with a src/Makefile.{win,ucrt}
    file includes ~/.R/Makevars.win64 in the search for user
    makevars, as documented in "R Installation and Administration"
    and done for packages with a src/Makevars.{win,ucrt} file.
  * format(&lt;POSIXlt_w/_unbalanced_sec&gt;, "....%OS&lt;n&gt;") with n &gt; 0 no
    longer accidentally uses the unbalanced seconds, thanks to
    Suharto Anggono's report (including patch) in PR#18448.
  * solve.default(a, b) works around issues with some versions of
    LAPACK when a contains NA or NaN values.
  * When UseMethod() cannot dispatch, it no longer segfaults
    producing the error message in case of a long class(), thanks to
    Joris Vankerschaver's report (including patch) in PR#18447.
  * When example(foo, ..) produces graphics on an interactive device
    it needs to open itself, it now leaves devAskNewPage() unchanged
    even when it was FALSE, thus fixing a 14 years old '&lt;FIXME&gt;'.
  * packageDescription() again catches errors from encoding
    conversions. This also fixes broken packageVersion() in C locale
    on systems where iconv does not support transliteration.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1681128000">- add patch to build with libcurl &gt;= 8</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1682078400">- CHANGES IN R 4.3.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Calling &amp;&amp; or || with LHS or (if evaluated) RHS of length greater
    than one is now always an error, with a report of the form
    'length = 4' in coercion to 'logical(1)'
    Environment variable _R_CHECK_LENGTH_1_LOGIC2_ no longer has any
    effect.
  NEW FEATURES:
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.10.1.  (This caused some platform-dependent
    changes to package check output.)  And then to the sources from
    LAPACK version 3.11.0 (with changes only to double complex
    subroutines).
  * The included LAPACK sources have been updated to include the four
    Fortran 90 routines rather than their Fortran 77 predecessors.
    This may give some different signs in SVDs or
    eigendecompositions..  (This completes the transition to LAPACK
    3.10.x begun in R 4.2.0.)
  * The LAPACK sources have been updated to version 3.11.0.  (No new
    subroutines have been added, so this almost entirely bug fixes:
    Those fixes do affect some computations with NaNs, including R's
    NA.)
  * The parser now signals _classed_ errors, notably in case of the
    pipe operator |&gt;.  The error object and message now give line and
    column numbers, mostly as proposed and provided by Duncan Murdoch
    in PR#18328.
  * toeplitz() is now generalized for asymmetric cases, with a
    toeplitz2() variant.
  * xy.coords() and xyz.coords() and consequently, e.g., plot(x,y,
    log = "y") now signal a _classed_ warning about negative values
    of y (where log(.) is NA).  Such a warning can be specifically
    suppressed or caught otherwise.
  * Regular expression functions now check more thoroughly whether
    their inputs are valid strings (in their encoding, e.g. in
    UTF-8).
  * The performance of grep(), sub(), gsub() and strsplit() has been
    improved, particularly with perl = TRUE and fixed = TRUE.  Use of
    useBytes = TRUE for performance reasons should no longer be
    needed and is discouraged: it may lead to incorrect results.
  * apropos() gains an argument dot_internals which is used by the
    completion (help(rcompgen)) engine to also see base internals
    such as .POSIXct().
  * Support in tools::Rdiff() for comparing uncompressed PDF files is
    further reduced - see its help page.
  * qqplot(x, y, ...) gains conf.level and conf.args arguments for
    computing and plotting a confidence band for the treatment
    function transforming the distribution of x into the distribution
    of y (Switzer, 1976, _Biometrika_). Contributed by Torsten
    Hothorn.
  * Performance of package_dependencies() has been improved for cases
    when the number of dependencies is large.
  * Strings newly created by gsub(), sub() and strsplit(), when any
    of the inputs is marked as "bytes", are also marked as "bytes".
    This reduces the risk of creating invalid strings and accidental
    substitution of bytes deemed invalid.
  * Support for readLines(encoding = "bytes") has been added to allow
    processing special text files byte-by-byte, without creating
    invalid strings.
  * iconv(from = "") now takes into account any declared encoding of
    the input elements and uses it in preference to the native
    encoding.  This reduces the risk of accidental creation of
    invalid strings, particularly when different elements of the
    input have different encoding (including "bytes").
  * Package repositories in getOption("repos") are now initialized
    from the repositories file when utils is loaded (if not already
    set, e.g., in .Rprofile).  (From a report and patch proposal by
    Gabriel Becker in PR#18405.)
  * compactPDF() gets a verbose option.
  * type.convert() and hence read.table() get new option tryLogical =
    TRUE with back compatible default.  When set to false, converts
    "F" or "T" columns to character.
  * Added new unit prefixes "R" and "Q" for abbreviating
    (unrealistically large) sizes beyond 10^{27} in standard = "SI",
    thanks to Henrik Bengtsson's PR#18435.
  * as.data.frame()'s default method now also works fine with atomic
    objects inheriting from classes such as "roman", "octmode" and
    "hexmode", such fulfilling the wish of PR#18421, by Benjamin
    Feakins.
  * The as.data.frame.vector() utility now errors for wrong-length
    row.names.  It warned for almost six years, with "Will be an
    error!".
  * sessionInfo() now also contains La_version() and reports codepage
    and timezone when relevant, in both print() and toLatex() methods
    which also get new option tzone for displaying timezone
    information when locale = FALSE.
  * New function R_compiled_by() reports the C and Fortran compilers
    used to build R, if known.
  * predict(&lt;lm&gt;, newdata = *) no longer unnecessarily creates an
    offset of all 0s.
  * solve() for complex inputs now uses argument tol and by default
    checks for 'computational singularity' (as it long has done for
    numeric inputs).
  * predict(&lt;rank-deficient lm&gt;, newdata=*) now obeys a new argument
    rankdeficient, with new default "warnif", warning only if there
    are non-estimable cases in newdata.  Other options include
    rankdeficient = "NA", predicting NA for non-estimable newdata
    cases.  This addresses PR#15072 by Russ Lenth and is based on his
    original proposal and discussions in PR#16158 also by David Firth
    and Elin Waring.  Still somewhat experimental.
  * Rgui console implementation now works better with the NVDA screen
    reader when the full blinking cursor is selected.  The underlying
    improvements in cursor handling may help also other screen
    readers on Windows.
  * The drop-field control in GraphApp can now be left with the TAB
    key and all controls can be navigated in the reverse order using
    the Shift+TAB key, improving accessibility of the Rgui
    configuration editor.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now fully accurate
    (instead of to "only" minimally five digits).
  * demo(error.catching) now also shows off withWarnings() and
    tryCatchWEMs().
  * As an experimental feature the placeholder _ can now also be used
    in the rhs of a forward pipe |&gt; expression as the first argument
    in an extraction call, such as _$coef. More generally, it can be
    used as the head of a chain of extractions, such as _$coef[[2]].
  * Spaces in the environment variable used to choose the R session's
    temporary directory (TMPDIR, TMP and TEMP are tried in turn) are
    now fatal.  (On Windows the 'short path' version of the path is
    tried and used if that does not contain a space.)
  * all.equal.numeric() gets a new optional switch giveErr to return
    the numeric error as attribute.  Relatedly,
    stopifnot(all.equal&lt;some&gt;(a, b, ..)) is as "smart" now, as
    stopifnot(all.equal(....)) has been already, thus allowing
    customized all.equal&lt;Some&gt;() wrappers.
  * R on Windows is now able to work with path names longer than 260
    characters when these are enabled in the system (requires at
    least Windows 10 version 1607).  Packages should be updated to
    work with long paths as well, instead of assuming PATH_MAX to be
    the maximum length.  Custom front-ends and applications embedding
    R need to update their manifests if they wish to allow this
    feature.  See
    &lt;https://blog.r-project.org/2023/03/07/path-length-limit-on-windows&gt;
    for more information.
  * 'Object not found' and 'Missing argument' errors now give a more
    accurate error context. Patch provided by Lionel Henry in
    PR#18241.
  * The @ operator is now an S3 generic. Based on contributions by
    Tomasz Kalinowski in PR#18482.
  * New generic chooseOpsMethod() provides a mechanism for objects to
    resolve cases where two suitable methods are found for an Ops
    Group Generic. This supports experimenting with alternative
    object systems. Based on contributions by Tomasz Kalinowski in
    PR#18484.
  * inherits(x, what) now accepts values other than a simple
    character vector for argument what. A new generic, nameOfClass(),
    is called to resolve the class name from what. This supports
    experimenting with alternative object systems. Based on
    contributions by Tomasz Kalinowski in PR#18485.
  * Detection of BLAS/LAPACK in use (sessionInfo()) with FlexiBLAS
    now reports the current backend.
  * The "data.frame" method for subset() now warns about extraneous
    arguments, typically catching the use of = instead of == in the
    subset expression.
  * Calling a:b when numeric a or b is longer than one may now be
    made into an error by setting environment variable
    _R_CHECK_LENGTH_COLON_ to a true value, along the proposal in
    PR#18419 by Henrik Bengtsson.
  * density(x, weights = *) now warns if automatic bandwidth
    selection happens without using weights; new optional warnWbw may
    suppress the warning.  Prompted by Christoph Dalitz' PR#18490 and
    its discussants.
  * rm(list = *) is faster and more readable thanks to Kevin Ushey's
    PR#18492.
  * The plot.lm() function no longer produces a normal Q-Q plot for
    GLMs. Instead it plots a half-normal Q-Q plot of the absolute
    value of the standardized deviance residuals.
  * The print() method for class "summary.glm" no longer shows
    summary statistics for the deviance residuals by default.  Its
    optional argument show.residuals can be used to show them if
    required.
  * The tapply() function now accepts a data frame as its X argument,
    and allows INDEX to be a formula in that case. by.data.frame()
    similarly allows INDICES to be a formula.
  * The performance of df[j] &lt;- value (including for missing j) and
    write.table(df) has been improved for data frames df with a large
    number of columns.  (Thanks to Gabriel Becker's PR#18500,
    PR#18503 and discussants, prompted by a report from Toby Dylan
    Hocking on the R-devel mailing list.)
  * The matrix multiply operator %*% is now an S3 generic, belonging
    to new group generic matrixOps.  From Tomasz Kalinowski's
    contribution in PR#18483.
  * New function array2DF() to convert arrays to data frames,
    particularly useful for the list arrays created by tapply().
  DATES and TIMES:
  * On platforms where (non-UTC) datetimes before 1902 (or before
    1900 as with system functions on recent macOS) are guessed by
    extrapolating time zones from 1902-2037, there is a warning at
    the first use of extrapolation in a session.  (As all time zones
    post 2037 are extrapolation, we do not warn on those.)
  * (Platforms using --with-internal-tzone, including Windows and by
    default macOS). How years are printed in dates or date-times can
    be controlled by environment variable R_PAD_YEARS_BY_ZERO.  The
    default remains to pad to 4 digits by zeroes, but setting value
    no gives no padding (as used by default by glibc).
  * strftime() tries harder to determine the offset for the "%z"
    format, and succeeds on the mainstream R platforms.
  * strftime() has a limit of 2048 bytes on the string produced -
    attempting to exceed this is an error.  (Previously it silently
    truncated at 255 bytes.)
  * sessionInfo() records (and by default prints) the system time
    zone as part of the locale information.  Also, the source
    (system/internal) of the date-time conversion and printing
    functions.
  * Objects of class "POSIXlt" created in this version of R always
    have 11 components: component zone is always set, and component
    gmtoff is set for times in UTC and usually set on the (almost
    all) platforms which have C-level support, otherwise is NA.
  * There are comprehensive validity checks on the structure of
    objects of class "POSIXlt" when converting (including formatting
    and printing).  (This avoids mis-conversions of hand-crafted
    objects.)
  * There is some support for using the native date-time routines on
    macOS: this is only viable on recent versions (e.g. 12.6 and 13)
    and does get wrong some historical changes (before 1900, during
    WWII).  Use of --with-internal-tzone remains the default.
  * as.POSIXct(&lt;numeric&gt;) and as.POSIXlt(.) (without specifying
    origin) now work.  So does as.Date(&lt;numeric&gt;).
  * as.Date.POSIXct(., tz) now treats several tz values, notably
    "GMT" as equivalent to "UTC", proposed and improved by Michael
    Chirico and Joshua Ulrich in PR#17674.
  * Experimental balancePOSIXlt() utility allows using "ragged" and
    or out-of-range "POSIXlt" objects more correctly, e.g., in
    subsetting and subassignments.  Such objects are now documented.
    More experimentally, a "POSIXlt" object may have an attribute
    "balanced" indicating if it is known to be filled or fully
    balanced.
  * Functions axis.Date() and axis.POSIXct() are rewritten to gain
    better default tick locations and better default formats by using
    prettyDate(). Thanks to Swetlana Herbrandt.
  * The mapping of Windows' names for time zones to IANA's 'Olson'
    names has been updated.  When ICU is available (it is by
    default), it is used to get a mapping for the current region set
    in Windows.  This can be overridden by setting environment
    variable TZ to the desired Olson name - see OlsonNames() for
    those currently available.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 16
    and so packages that provide graphics devices should be
    reinstalled.
  * The grDevices and grid packages have new functions for rendering
    typeset glyphs, primarily: grDevices::glyphInfo() and
    grid::grid.glyph().
    Rendering of typeset glyphs is only supported so far on the
    Cairo-based graphics devices and on the pdf() and quartz()
    devices.
  * The defined behaviour for "clear" and "source" compositing
    operators (via grid::grid.group()) has been changed (to align
    better with simple interpretation of original Porter-Duff
    definitions).
  * Support for gradients, patterns, clipping paths, masks, groups,
    compositing operators, and affine transformations has been added
    to the quartz() device.
  INSTALLATION on a UNIX-ALIKE:
  * A system installation of generic LAPACK 3.10.0 or later will be
    preferred to the version in the R sources.
    configure option --with-lapack=no (equivalently --without-lapack)
    forces compilation of the internal LAPACK sources.
    If --with-lapack is not specified, a system liblapack is looked
    for and used if it reports version 3.10.0 or later and does not
    contain BLAS routines.
    Packages using LAPACK will need to be reinstalled if this changes
    to using an external library.
  * On aarch64 Linux platforms using GCC, configure now defaults to
  - fPIC (instead of -fpic), as desired in PR#18326.
  * configure now checks conversion of datetimes between POSIXlt and
    POSIXct around year 2020.  Failure (which has been seen on
    platforms missing tzdata) is fatal.
  * If configure option --with-valgrind-instrumentation is given
    value 1 or 2, option --with-system-valgrind-headers is now the
    default and ignored (with a warning).  It is highly recommended
    that the system headers are installed alongside valgrind: they
    are part of its packaging on some Linux distributions and
    packaged separately (e.g. in the valgrind-devel RPM) on others.
    configure will give a warning if they are not found.
    The system headers will be required in a future release of R to
    build with valgrind instrumentation.
  * libcurl 8.x is now accepted by configure: despite a change in
    major version number it changes neither API nor ABI.
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools43, an update of the Rtools42 toolchain.  It is
    based on gcc 12 and newer versions of MinGW-W64, binutils and
    libraries.  At this time R-devel can still be built using
    Rtools42 without changes, but when R-devel is installed via the
    installer, it will by default look for Rtools43.
  * Old make targets rsync-extsoft and 32-bit ones that are no longer
    needed have been removed.
  * Default builds (including for packages) no longer select C99.
    Thus the C standard used is the default for the compiler, which
    for the toolchain in Rtools43 is C17.  (This is consistent with
    Unix builds.)
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++17 where
    available (which it is on all currently checked platforms): if
    not C++14 or C++11 is used if available otherwise C++ is not
    supported.
  * USE_FC_LEN_T is the default: this uses the correct
    (compiler-dependent) prototypes for Fortran BLAS/LAPACK routines
    called from C/C++, and requires adjustment of many such calls -
    see 'Writing R Extensions' SS6.6.1.
  * There is initial support for C++23 as several compilers are now
    supporting -std=c++23 or -std=c++2b or similar.  As for C++20,
    there no additional configure checks for C++23 features beyond a
    check that the compiler reports a __cplusplus value greater than
    that in the C++20 standard.  C++ feature tests should be used.
  * There is support for a package to indicate the version of the C
    standard which should be used to compile it, and for the
    installing user to specify this.  In most cases R defaults to the
    C compiler's default standard which is C17 (a `bug-fix' of C11) -
    earlier versions of R or compilers may have defaulted to C99.
    Current options are:
    USE_C17 Use a standard that is at most C17.  The intention is to
    allow legacy packages to still be installed when later C
    standards become the default, including packages using new
    keywords as identifiers or with K&amp;R-style function
    declarations.  This will use C17 if available, falling back
    to C11.
    USE_C90 Use the C90 (aka C89) standard.  (As that standard did
    not require compilers to identify that version, all we can
    verify is that the compiler does not claim to be using a
    later standard.  It may accept C99 features - for example
    clang accepts // to make comments.)
    USE_C99 Use the C99 standard. This should be rarely needed - it
    avoids the few new features of C11/C17 which can be useful if
    a package assumes them if C17 is specified and they are not
    implemented.
    USE_C23 Use C23 (or in future, later).  Compiler/library support
    for C23 is still being implemented, but LLVM clang from
    15.0.0 and the upcoming GCC 13 have quite extensive support.
    These can be specified as part of the SystemRequirements field in
    the package's DESCRIPTION file or _via_ options --use-C17 and so
    on of R CMD INSTALL and R CMD SHLIB.
    For further details see "Writing R Extensions" SS1.2.5.
  * (Windows) A src/Makefile.ucrt or src/Makefile.win file is now
    included after R_HOME/etcR_ARCH/Makeconf and so no longer needs
    to include that file itself.  Installation of a package with such
    a file now uses a site Makevars file in the same way as a package
    with a src/Makevars.win file would.
  * configure is now passed crucial variables such as CC and CFLAGS
    in its environment, as many packages were not setting them (as
    documented in 'Writing R Extensions' SS1.2).
    This has most effect where configure is used to compile parts of
    the package - most often by cmake or libtool which obfuscate the
    actual compile commands used.
    Also used for configure.win and configure.ucrt on Windows.
  FORTRAN FLAGS:
  * The flag -fno-optimize-sibling-calls is no longer forced for
    gfortran 7 and later.  It should no longer be needed now using
    'hidden' character-length arguments when calling BLAS/LAPACK
    routines from C/C++ is the default even for packages.  (Unless
    perhaps packages call Fortran code from C/C++ without using R's
    headers and without allowing for these arguments.)
  C-LEVEL FACILITIES:
  * The deprecated S-compatibility macros DOUBLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * The deprecated legacy typedefs of Sint and Sfloat in header R.h
    are no longer defined, and that header no longer includes header
    limits.h from C nor climits from C++.
  * New macro CAD5R() is provided in Rinternals.h and used in a few
    places in the R sources.
  * ALTREP now supports VECSXP vectors. Contributed by Gabor Csardi
    in PR#17620.
  * The Rcomplex definition (in header R_ext/Complex.h) has been
    extended to prevent possible mis-compilation when interfacing
    with Fortran (PR#18430).  The new definition causes compiler
    warnings with static initializers such as {1, 2}, which can be
    changed to {.r=1, .i=2}.
    Using the new definition from C++ depends on compiler extensions
    supporting C features that have not been incorporated into the
    C++ standards but are available in g++ and clang++: this may
    result in C++ compiler warnings but these have been worked around
    for recent versions of common compilers (GCC, Apple/LLVM clang,
    Intel).
    It is intended to change the inclusion of header R_ext/Complex.h
    by other R headers, so C/C++ code files which make use of
    Rcomplex should include that header explicitly.
  UTILITIES:
  * R CMD check does more checking of package .Rd files, warning
    about invalid email addresses and (some) invalid URIs and noting
    empty \item labels in description lists.
  * R CMD check now also reports problems when reading package news
    in md (file NEWS.md) and (optionally) plain text (file NEWS)
    formats.
  * _R_CHECK_TIMINGS_ defaults to a value from the environment even
    for R CMD check --as-cran; this allows for exceptionally fast or
    slow platforms.
    It now applies to checking PDF and HTML versions of the manuals,
    and 'checking CRAN incoming feasibility'.
  * R CMD check can optionally (but included in --as-cran) check
    whether HTML math rendering _via_ KaTeX works for the package .Rd
    files.
  * Non-interactive debugger invocations can be trapped by setting
    the environment variable _R_CHECK_BROWSER_NONINTERACTIVE_ to a
    true value.  This is enabled by R CMD check --as-cran to detect
    the use of leftover browser() statements in the package.
  * The use of sprintf and vsprintf from C/C++ has been deprecated in
    macOS 13 and is a known security risk.  R CMD check now reports
    (on all platforms) if their use is found in compiled code:
    replace by snprintf or vsnprintf respectively. [*NB:* whether
    such calls get compiled into the package is platform-dependent.]
  * Where recorded at installation, R CMD check reports the C and
    Fortran compilers used to build R.
    It reports the OS in use (if known, as given by osVersion) as
    well as that R was built for.
    It notes if a C++ standard was specified which is older than the
    current default: many packages have used C++11 to mean 'not
    C++98' - as C++11 is the minimum supported since R 4.0.0, that
    specification can probably be removed.
  * R CMD INSTALL reports the compilers (and on macOS, the SDK) used,
    and this is copied to the output of R CMD check.
    Where a C++ standard is specified, it is reported.
  * R CMD check's 'checking compilation flags in Makevars' has been
    relaxed to accept the use of flags such as -std=f2008 in
    PKG_FFLAGS.
  * tools::buildVignettes() has a new argument skip, which is used by
    R CMD check to skip (and note) vignettes with unavailable
    \VignetteDepends (PR#18318).
  * New generic .AtNames() added to enable class-specific completions
    after @. The formerly internal function findMatches() is now
    exported, mainly for use in methods for .DollarNames() and
    .AtNames().
  DEPRECATED AND DEFUNCT:
  * default.stringsAsFactors() is defunct.
  * Calling as.data.frame.&lt;class&gt;() directly (for 12 atomic classes)
    is going to be formally deprecated, currently activated by
    setting the environment variable
    _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ to non-empty, which also
    happens in R CMD check --as-cran.
  BUG FIXES:
  * Hashed environments with sizes less than 5 can now grow.
    (Reported to R-devel by Duncan Garmonsway.)
  * as.character(&lt;Rd&gt;, deparse = TRUE) failed to re-escape curly
    braces in LaTeX-like text.  (Reported by Hadley Wickham in
    PR#18324.)
  * library() now passes its lib.loc argument when requiring Depends
    packages; reported (with fix) in PR#18331 by Mikael Jagan.
  * R CMD Stangle: improved message about 'Output' files.
  * head(x, n) and tail(x, n) now signal an error if n is not
    numeric, instead of incidentally "working" sometimes returning
    all of x.  Reported and discussed by Colin Fay, in PR#18357.
  * The "lm" method for summary() now gives the correct F-statistic
    when the model contains an offset.  Reported in PR#18008.
  * C() and `contrasts&lt;-`() now preserve factor level names when
    given a function object (as opposed a function name which did
    preserve names). Reported in PR#17616.
  * c(a = 1, 2)[[]] no longer matches 2 but rather signals a
    _classed_ error.  Reported and analysed by Davis Vaughan in
    PR#18367, a duplicate of PR#18004, by Jan Meis et al.  For
    consistency, NULL[[]] is also erroneous now.  x[[]] &lt;- v gives an
    error of the same class "MissingSubscriptError".
  * The relist() function of utils now supports NULL elements in the
    skeleton (PR#15854).
  * ordered(levels = *) (missing x) now works analogously to factor(,
    ordered=TRUE); reported (with fix) by Achim Zeileis in PR#18389.
  * User-defined Rd macro definitions can now span multiple lines,
    thanks to a patch from Duncan Murdoch. Previously, the Rd parser
    silently ignored everything after the first line.
  * Plain-text help (tools::Rd2txt()) now preserves an initial blank
    line for text following description list items.
  * tools::Rd2HTML() and tools::Rd2latex() no longer split \arguments
    and \value lists at Rd comments.
  * tools::Rd2latex() now correctly handles optional text outside
    \items of argument lists as well as bracketed text at the
    beginning of sections, e.g., \value{[NULL]}.
  * as.character(&lt;POSIXt&gt;) now behaves more in line with the methods
    for atomic vectors such as numbers, and is no longer influenced
    by options().  Ditto for as.character(&lt;Date&gt;).  The
    as.character() method gets arguments digits and OutDec with
    defaults _not_ depending on options().  Use of as.character(*,
    format = .) now warns.
  * Similarly, the as.character.hexmode() and *.octmode() methods
    also behave as good citizen methods and back compatibility option
    keepStr = TRUE.
  * The as.POSIXlt(&lt;POSIXlt&gt;) and as.POSIXct(&lt;POSIXct&gt;) default
    methods now do obey their tz argument, also in this case.
  * as.POSIXlt(&lt;Date&gt;) now does apply a tz (time zone) argument, as
    does as.POSIXct(); partly suggested by Roland Fuss on the R-devel
    mailing list.
  * as.Date.POSIXlt(x) now also works when the list components are of
    unequal length, aka "partially filled" or "ragged".
  * expand.model.frame() looked up variables in the wrong environment
    when applied to models fitted without data.  Reported in
    PR#18414.
  * time() now (also) uses the ts.eps = getOption("ts.eps") argument
    and thus by default rounds values very close to the start (or
    end) of a year.  Based on a proposal by Andre"i V. Kostyrka on
    R-help.
  * Printing of a factanal() result with just one factor and sort =
    TRUE now works regularly, fixing PR#17863 by Timothy Bates,
    thanks to the 'R Contributors' working group.
  * Printing 0-length objects of class "factor", "roman", "hexmode",
    "octmode", "person", "bibentry", or "citation" now prints
    something better, one of which fixes PR#18422, reported by
    Benjamin Feakins.
  * Sys.timezone() queries timedatectl only if systemd is loaded;
    addressing a report by Jan Gorecki in PR#17421.
  * The formula method of cor.test() had scoping problems when
    environment(formula) was not the calling environment; reported
    with a patch proposal by Mao Kobayashi in PR#18439.
  * attach() of an environment with active bindings now preserves the
    active bindings.  Reported by Kevin Ushey in PR#18425.
  * BLAS detection now works also with system-provided libraries not
    available as regular files.  This fixes detection of the
    Accelerate framework on macOS since Big Sur.  Reported by David
    Novgorodsky.
  * download.file() gives a helpful error message in case of an
    invalid download.file.method option, thanks to Colin Fay's report
    in PR#18455.
  * Sporadic crashes of Rterm when using completion have been fixed.
  * Rprof() is now more reliable.  A livelock in thread
    initialization with too short sampling interval has been fixed on
    macOS.  A deadlock in using the C runtime has been fixed on
    Windows.  A potential deadlock has been prevented on Unix.
  * Cursor placement in Rgui now works even after a fixed-width font
    is selected.
  * Mandatory options (options()) are now set on startup so that
    saving and restoring them always works (PR#18372).
  * Package installation, R CMD INSTALL or install.packages(*), now
    parses each of the &lt;pkg&gt;/R/*.R files individually instead of
    first concatenating and then parse()ing the large resulting file.
    This allows parser or syntax errors to be diagnosed with correct
    file names and line numbers, thanks to Simon Dedman's report and
    Bill Dunlap's patch in PR#17859.
    This _does_ require syntactically self contained R source files
    now, fixing another inadvertent bug.
  * predict.lm(&lt;model with offset&gt;) now finds the offset in the
    correct environment, thanks to Andr'e Gillibert's report and patch
    in PR#18456.
  * getInitial(&lt;formula&gt;) now finds the selfStart model in the
    correct environment.  (Reported by Ivan Krylov in PR#18368.)
  * Fix for possible segfault when using recently-added graphics
    features, such as gradients, clipping paths, masks, and groups
    with pdf(file=NULL).
  * class(m) &lt;- class(m) no longer changes a matrix m by adding a
    class _attribute_.
  * packageDate(pkg) now only warns once if there is no pkg.
  * When ts() creates a multivariate time series, "mts", it also
    inherits from "array" now, and is.mts() is documented _and_
    stricter.
  * Rd2txt() now preserves line breaks of \verb Rd content and from
    duplicated \cr.  The former also fixes the rendering of verbatim
    output from Rd \Sexpr in plain-text help.
  * uniroot(f, interval) should no longer wrongly converge _outside_
    the interval in some cases where abs(f(x)) == Inf for an x at the
    interval boundary, thanks to posts by Ben Bolker and Serguei
    Sokol on R-devel.
  * Vectorized alpha handling in palette functions such as in gray(),
    rainbow(), or hcl.colors() works correctly now, thanks to Achim
    Zeileis' report and patch in PR#18476.
  * Formatting and print()ing of bibentry objects has dropped the
    deprecated citation.bibtex.max argument, such that the bibtex
    argument's default for print.bibentry() depends directly on the
    citation.bibtex.max option, whereas in format.bibentry() the
    option no longer applies.
  * Attempting to use a character string naming a foreign function
    entry point in a foreign function call in a package will now
    signal an error if the packages has called R_forceSymbols to
    specify that symbols must be used.
  * An error in table() could permanently set options(warn=2)
    promoting all subsequent warnings to errors.
  * The sigma() function gave misleading results for binary GLMs.  A
    new method for objects of class "glm" returns the square root of
    the estimate of the dispersion parameter using the same
    calculation as summary.glm().
  * bs() and ns() in the (typical) case of automatic knot
    construction, when some of the supposedly inner knots coincide
    with boundary knots, now moves them inside (with a warning),
    building on PR#18442 by Ben Bolker.
  * R CMD on Windows now skips the site profile with --no-site-file
    and --vanilla even when R_PROFILE is set (PR#18512, from Kevin
    Ushey).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1686916800">- CHANGES IN R 4.3.1:
  C-LEVEL FACILITIES:
  * The C-level API version of R's integrate(), Rdqags() in Applic.h,
    now returns the correct number of integrand evaluations neval,
    fixing PR#18515 reported and diagnosed by Stephen Wade.
  * The C prototypes for LAPACK calls dspgv and dtptrs in
    R_exts/Lapack.h had one too many and one too few character length
    arguments - but this has not caused any known issues. To get the
    corrected prototypes, include
    [#]include &lt;Rconfig.h&gt; // for PR18534fixed
    [#]ifdef PR18534fixed
    [#] define usePR18534fix 1
    [#]endif
    [#]include &lt;R_exts/Lapack.h&gt;
    in your C/C++ code (PR#18534).
  INSTALLATION:
  * Many of the checks of esoteric Internet operations and those
    using unreliable external sites have been moved to a new target
    that is not run by default and primarily intended for the core
    developers.  To run them use
    cd tests; make test-Internet-dev
  BUG FIXES:
  * .S3methods(), typically called from methods(), again marks
    methods from package base as visible.
    Also, the visibility of non-base methods is again determined by
    the method's presence in search().
  * tools::Rdiff() is now more robust against invalid strings, fixing
    installation tests on Windows without Rtools installed
    (PR#18530).
  * Fix (new) bug in hcl.colors(2, *), by Achim Zeileis (PR#18523).
  * head(., &lt;illegal&gt;) and tail(..) now produce more useful "Error in
    ...." error messages, fixing PR#18362.
  * Package code syntax on Windows is checked in UTF-8 when UTF-8 is
    the native encoding.
  * na.contiguous(x) now also returns the first run, when it is at
    the beginning and there is a later one of the same length;
    reported to R-devel, including a fix, by Georgi Boshnakov.
    Further, by default, it modifies only an existing attr(*,"tsp")
    but otherwise no longer sets one.
  * chol(&lt;not pos.def&gt;, pivot = &lt;T|F&gt;) now gives a correct error or
    warning message (depending on pivot), thanks to Mikael Jagan's
    (PR#18541).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1699012800">- CHANGES IN R 4.3.2:
  NEW FEATURES:
  * The default initialization of the "repos" option from the
    repositories file at startup can be skipped by setting
    environment variable R_REPOSITORIES to NULL such that
    getOption("repos") is empty if not set elsewhere.
  * qr.X() is now an implicit S4 generic in methods.
  * iconv(to = "ASCII//TRANSLIT") is emulated using substitution on
    platforms which do not support it (notably Alpine Linux).  This
    should give a human-readable conversion in ASCII on all platforms
    (rather than NA_character_).
  * trans3d() gains options continuous and verbose addressing the
    problem of possible "wrap around" when projecting too long
    curves, as reported by Achim Zeileis in PR#18537.
  * tools::showNonASCII() has been rewritten to work better on macOS
    14 (which has a changed implementation of iconv()).
  * tiff(type = "quartz") (the default on macOS) now warns if
    compression is specified: it continues to be ignored.
  INSTALLATION on a UNIX-ALIKE:
  * There is some support for building with Intel's LLVM-based
    compilers on x86_64 Linux, such as (C) icx, (C++) ipcx and
    (Fortran) ifx from oneAPI 2023.x.y.
  * There is support for using LLVM's flang-new as the Fortran
    compiler from LLVM 16.0.x (preferably 17.0.0 or later).
  UTILITIES:
  * R CMD check reports the use of the Fortran 90 random number
    generator RANDOM_NUMBER() and the subroutines to initialize it.
    'Writing R Extensions' has example code to use R's RNGs from
    Fortran.
  BUG FIXES:
  * substr(x, n, L) &lt;- cc now works (more) correctly for multibyte
    UTF-8 strings x when L &gt; nchar(x), thanks to a report and patch
    by 'Architect 95'.
  * contrib.url(character()) now returns 0-length character() as
    documented, which also avoids spurious warnings from
    available.packages() et al. in the edge case of an empty vector
    of repository URLs.
  * readChar(., 4e8) no longer fails, thanks to Kodi Arfer's report
    (PR#18557).
  * lapply(&lt;list&gt;, as.data.frame) no longer warns falsely for some
    base vector components.
  * Communication between parent and child processes in the multicore
    part of parallel could fail on platforms that do not support an
    arbitrarily large payload in system functions read()/write() on
    pipes (seen on macOS where a restriction to INT_MAX bytes is
    documented, without doing a partial read unlike Linux). The
    payload is now split into 1Gb chunks to avoid that problem.
    (PR#18571)
  * qqplot(x,y, conf.level=.) gives better confidence bounds when
    length(x) != length(y), thanks to Alexander Ploner's report and
    patch proposal (PR#18557).
  * norm(&lt;0-length&gt;, "2") now gives zero instead of an error, as all
    the other norm types, thanks to Mikael Jagan's PR#18542.
  * Build-stage Rd macros \packageAuthor and \packageMaintainer now
    process Authors@R, fixing NA results when the package DESCRIPTION
    omits Author and Maintainer fields.
  * Formatting and printing complex numbers could give things like
    0.1683-0i because of rounding error: -0i is now replaced by +0i.
  * postscript() refused to accept a title comment containing the
    letter "W" (PR#18599).
  * isoreg(c(1,Inf)) signals an error instead of segfaulting, fixing
    PR#18603.
  * tiff(type = "Xlib") was only outputting the last page of
    multi-page plots.
  * tools::latexToUtf8() again knows about \~{n} and other letters
    with tilde, fixing a regression in R 4.3.0, and about \^{i} as an
    alternative to \^{\i} (similarly with other accents).
    Furthermore, LaTeX codes for accented I letters are now correctly
    converted, also fixing related mistakes in
    tools::encoded_text_to_latex().
  * tar(*, tar = "internal") no longer creates out-of-spec tar files
    in the very rare case of user or group names longer than 32
    bytes, fixing PR#17871 with thanks to Ivan Krylov.
  * When using the "internal" timezone datetime code, adding a
    fraction of a second no longer adds one second, fixing PR#16856
    from a patch by Ivan Krylov.
  * tools::checkRd() no longer produces spurious notes about
    "unnecessary braces" from multi-line Rd results of \Sexpr macros.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1709208000">- CHANGES IN R 4.3.3:
  NEW FEATURES:
  * iconv() now fixes up variant encoding names such as "utf8"
    case-insensitively.
  DEPRECATED AND DEFUNCT:
  * The legacy encoding = "MacRoman" is deprecated in pdf() and
    postscript(): support was incomplete in earlier versions of R.
  BUG FIXES:
  * Arguments are now properly forwarded to methods on S4 generics
    with ... in the middle of their formal arguments. This was broken
    for the case when a method introduced an argument but did not
    include ... in its own formals. Thanks to Herv'e Pag`es for the
    report PR#18538.
  * Some invalid file arguments to pictex(), postscript() and xfig()
    opened a file called NA rather than throw an error.  These
    included postscript(NULL) (which some people expected to work
    like pdf(NULL)).
  * Passing filename = NA to svg(), cairo_pdf(), cairo_ps() or the
    Cairo-based bitmap devices opened a file called NA: it now throws
    an error.
  * quartz(file = NA) opened a file called NA, including when used as
    a Quartz-based bitmap device.  It now gives an error.
  * rank(&lt;long vector&gt;) now works, fixing PR#18617, thanks to Ilia
    Kats.
  * seq.int() did not adequately check its length.out argument.
  * match(&lt;POSIXct&gt;, .) is correct again for differing time zones,
    ditto for "POSIXlt", fixing PR#18618 reported by Bastian Klein.
  * drop.terms(*, dropx = &lt;0-length&gt;) now works, fixing PR#18563 as
    proposed by Mikael Jagan.
  * drop.terms(*) keeps + offset(.) terms when it should, PR#18565,
    and drop.terms() no longer makes up a response, PR#18566, fixing
    both bugs thanks to Mikael Jagan.
  * getS3method("t", "test") no longer finds the t.test() function,
    fixing PR#18627.
  * pdf() and postscript() support for the documented Adobe encodings
    "Greek" and "Cyrilllic" was missing (although the corresponding
    Windows' codepages could be used).
  * Computations of glyph metric information for pdf() and
    postscript() did not take into account that transliteration could
    replace one character by two or more (only seen on macOS 14) and
    typically warned that the information was not known.
  * rank(x) no longer overflows during integer addition, when
    computing rank average for largish but not-yet long vector x,
    fixing PR#18630, thanks to Ilia Kats.
  * list.files() on Windows now returns also files with names longer
    that 260 bytes (the Windows limit is 260 characters).
    Previously, some file names particularly with 'East Asian'
    characters were omitted.
  * cov2cor(&lt;0 x 0&gt;) now works, fixing PR#18423 thanks to Mikael
    Jagan and Elin Waring.
  * cov2cor(&lt;negative diagonal&gt;) and similar now give one warning
    instead of two, with better wording, fixing PR#18424 thanks to
    Mikael Jagan.
  * tools:: startDynamicHelp() now ensures port is in proper range,
    fixing PR#18645.
  * pbeta(x, a,b) is correct now for x=0 or 1 in the boundary cases
    where a or b or both are 0, fixing PR#18672 thanks to Michael
    Fay.
  * pmatch(x, table) for large table, also called for data frame row
    selection, dfrm[nm, ], is now interruptible, fixing PR#18656.
  * predict(&lt;rank-deficient lm&gt;, newdata=*) fix computing of nbasis,
    see Russ Lenth's comment 29 in PR#16158.
  * Added a work-around for a bug in macOS 14.3.1 and higher which
    prevents R plots in the Quartz Cocoa device from updating on
    screen.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1713960000">- CHANGES IN R 4.4.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Startup banners, R --version, sessionInfo() and R CMD check no
    longer report (64-bit) as part of the platform as this is almost
    universal - the increasingly rare 32-bit platforms will still
    report (32-bit).
    On Windows, ditto for window titles.
  * is.atomic(NULL) now returns FALSE, as NULL is not an atomic
    vector.  Strict back-compatibility would replace is.atomic(foo)
    by (is.null(foo) || is.atomic(foo)) but should happen only
    sparingly.
  NEW FEATURES:
  * The confint() methods for "glm" and "nls" objects have been
    copied to the stats package.  Previously, they were stubs which
    called versions in package MASS. The MASS namespace is no longer
    loaded if you invoke (say) confint(glmfit).  Further, the "glm"
    method for profile() and the plot() and pairs() methods for class
    "profile" have been copied from MASS to stats.  (profile.nls()
    and plot.profile.nls() were already in stats.)
  * The confint() and profile methods for "glm" objects have gained a
    possibility to do profiling based on the Rao Score statistic in
    addition to the default Likelihood Ratio. This is controlled by a
    new test = argument.
  * The pairs() method for "profile" objects has been extended with a
    which = argument to allow plotting only a subset of the
    parameters.
  * The "glm" method for anova() computes test statistics and
    p-values by default, using a chi-squared test or an F test
    depending on whether the dispersion is fixed or free.  Test
    statistics can be suppressed by giving argument test a false
    logical value.
  * In setRepositories() the repositories can be set using their
    names via name = instead of index ind =.
  * methods() and .S3methods() gain a all.names option for the (rare)
    case where functions starting with a . should be included.
  * Serializations can now be interrupted (e.g., by Ctrl-C on a
    Unix-alike) if they take too long, e.g., from save.image(),
    thanks to suggestions by Ivan Krylov and others on R-devel.
  * New startup option --max-connections to set the maximum number of
    simultaneous connections for the session.  Defaults to 128 as
    before: allowed values up to 4096 (but resource limits may in
    practice restrict to smaller values).
  * R on Windows (since Windows 10 2004) now uses the new Segment
    Heap allocator. This may improve performance of some
    memory-intensive applications.
  * When R packages are built, typically by R CMD build &lt;pkg&gt;, the
    new --user=&lt;build_user&gt; option overrides the (internally
    determined) user name, currently Sys.info()["user"] or LOGNAME.
    This is a (modified) fulfillment of Will Landau's suggestion in
    PR#17530.
  * tools::testInstalledBasic() gets new optional arguments outDir
    and testSrcdir, e.g., allowing to use it in a &lt;builddir&gt; !=
    &lt;srcdir&gt; setup, and in standard "binary" Windows installation
  * if* a source tests/ folder is present.
  * range(&lt;DT_with_Inf&gt;, finite = TRUE) now work for objects of class
    "Date", "POSIXct", and "POSIXlt" with infinite entries,
    analogously to range.default(), as proposed by Davis Vaughan on
    R-devel.  Other range()-methods can make use of new function
    .rangeNum().
  * New .internalGenerics object complementing .S3PrimitiveGenerics,
    for documentation and low-level book-keeping.
  * grid() now invisibly returns the x- and y- coordinates at which
    the grid-lines were drawn.
  * norm(., type) now also works for complex matrices.
  * kappa(., exact = TRUE, norm = *) now works for all norms and also
    for complex matrices.  In symmetric / triangular cases, the new
    argument uplo = "U" | "L" allows the upper or lower triangular
    part to be specified.
  * memDecompress(type = "unknown") recognizes compression in the
    default 'zlib' format as used by memCompress(type = "gzip").
  * memCompress() and memDecompress() will use the libdeflate library
    (&lt;https://github.com/ebiggers/libdeflate&gt;) if installed.  This
    uses the same type of compression for type = "gzip" but is 1.5-2x
    faster than the system libz library on some common platforms: the
    speed-up may depend on the library version.
  * diff() for objects of class "Date", "POSIXct", and "POSIXlt"
    accepts a units argument passed via ....
  * Dynamic help now does a much better job of rendering package
    DESCRIPTION metadata.
  * Rprof() gains an event argument and support for elapsed (real)
    time profiling on Unix (PR#18076).
  * filled.contour() gains a key.border argument.
  * tools::update_pkg_po() gets arguments pot_make and mo_make for
    _not_ re-making the corresponding files, and additionally a
    verbose argument.
  * Hexadecimal string colour specifications are now accepted in
    short form, so, for example, we can use "#123", which is
    equivalent to "#112233".
    Thanks to MikeFC for the original idea and Ella Kaye, Malcolm
    Barrett, George Stagg, and Hanne Oberman for the patch.
  * Plain-text help shows \var markup by angle brackets.
  * The new experimental primitive function declare() is intended to
    eventually allow information about R code to be communicated to
    the interpreter, compiler, and code analysis tools. The syntax
    for declarations is still being developed.
  * Functions psmirnov(), qsmirnov() and rsmirnov() in package stats
    have had argument two.sided renamed to alternative, to take into
    account that the permutation distributions of the one-sided
    statistics can be different in the case of ties.  Consequence of
    PR#18582.
  * sort() is now an implicit S4 generic in methods.
  * Formatting and printing, format(z), print(z), of complex vectors
    z no longer zap relatively small real or imaginary parts to zero,
    fixing PR#16752.  This is an API change, as it was documented
    previously to round real and imaginary parts together on purpose,
    producing nicer looking output.  As mentioned, e.g. in the PR,
    this change is compatible with many other "R-like" programming
    environments.
    We have simplified the internal code and now basically format the
    real and imaginary parts independently of each other.
  * New experimental functions Tailcall() and Exec() to support
    writing stack-space-efficient recursive functions.
  * Where characters are attempted to be plotted by pdf(),
    postscript() and xfig() which are not in the selected 8-bit
    character set (most often Latin-1) and the R session is using a
    UTF-8 locale, the warning messages will show the UTF-8 character
    rather than its bytes and one dot will be substituted per
    character rather than per byte.  (Platforms whose iconv() does
    transliteration silently plot the transliteration.)
    In a UTF-8 locale some transliterations are now done with a
    warning (e.g., dashes and Unicode minus to hyphen, ligatures are
    expanded, permille (‰) is replaced by o/oo), although the OS may
    have got there first.  These are warnings as they will continue
    to be replaced by dots in earlier versions of R.
  * The matrix multiplication functions crossprod() and tcrossprod()
    are now also primitive and S3 generic, as %*% had become in R
    4.3.0.
  * source() and example() have a new optional argument catch.aborts
    which allows continued evaluation of the R code after an error.
  * The non-Quartz tiff() devices allow additional types of
    compression if supported by the platform's libtiff library.
  * The list of base and recommended package names is now provided by
    tools::standard_package_names().
  * cairo_pdf() and cairo_ps() default to onefile = TRUE to closer
    match pdf() and postscript().
  * New option catch.script.errors provides a documented way to catch
    errors and then continue in non-interactive use.
  * L %||% R newly in base is an expressive idiom for the phrases
    if(!is.null(L)) L else R or if(is.null(L)) R else L.
  * The return value from warnings() now always inherits from
    "warnings" as documented, now also in the case of no warnings
    where it previously returned NULL.
  * as.complex("1i") now returns 0 + 1i instead of NA with a warning.
  * z &lt;- c(NA, 1i) now keeps the imaginary part Im(z[1]) == 0, no
    longer coercing to NA_complex_.  Similarly, cumsum(z) correctly
    sums real and imaginary parts separately, i.e., without
    "crosstalk" in case of NAs.
  * On Alpine Linux iconv() now maps "latin2", "latin-2", "latin9"
    and "latin-9" to encoding names the OS knows about
    (case-insensitively).
  * iconv(sub = "Unicode") now always zero-pads to four (hex) digits,
    rather than to 4 or 8.  (This seems to have become the convention
    once Unicode restricted the number of Unicode points to 2^21 - 1
    and so will never need more than 6 digits.)
  * NCOL(NULL) now returns 0 instead of 1, for consistency with
    cbind().
  * The information for the Euro glyph missing from the Adobe .afm
    files for the Courier, Helvetica and Times families has been
    copied from their URW equivalents - this will improve vertical
    centring in the pdf() and postscript() devices.
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.12.0.  The changes are almost entirely cosmetic.
  * The included LAPACK sources have been updated to version 3.12.0
    and some further double-complex routines added.
  * There are new font families for the 2014--5 URW 2.0 fonts (see
    ?pdf) which are included in recent versions of Ghostscript.
    These have font widths for most Greek glyphs and a few others
    which were missing from the original versions (whose font
    families remain available for reproducibility, although
    Ghostscript-based viewers will render using the 2.0 versions).
  * Improve the large-n efficiency of as.matrix(&lt;dist&gt;), thanks an R
    contributors effort, notably by Tim Taylor and Heather Turner,
    see PR#18660.
  * The default and numeric methods of all.equal() get a check.class
    option.
  * zapsmall() gets new optional arguments, function mFUN and min.d,
    for extra flexibility; fulfills a wish in PR#18199.  Also, it is
    now an implicit S4 generic in package methods.
  * The Rd filter for aspell() gains an ignore argument.
  * New generic function sort_by(), primarily useful for the
    data.frame method which can be used to sort rows of a data frame
    by one or more columns.
  * The icence headers for the RPC code in src/extra/xdr have been
    updated to use the GPL-compatible licence published by Oracle
    America in 2010.
  * New function pkg2HTML() in tools to create single-page HTML
    reference manuals for R packages.
  * The byte code evaluator now uses less C stack space for recursive
    calls to byte-compiled functions. It also makes more of an effort
    to avoid allocations for scalar return values.
  * New completion option backtick (disabled by default) allows
    non-syntactic completions to be wrapped in backquotes. This is
    currently only useful for Jupyter notebooks via the IRkernel
    package, and may cause problems for other backends.
  INSTALLATION:
  * The parser has been updated to work with bison 3.8.2, which is
    now used for the pre-generated parsers in gram.c, file.c, and
    gramRd.c. A few parser error messages have changed, which may
    affect code that relies on exact messages.
  INSTALLATION on a UNIX-ALIKE:
  * System valgrind headers are now required to use configure option
  - -with-valgrind-instrumentation with value 1 or 2.
  * configure will warn if it encounters a 32-bit build, as that is
    nowadays almost untested.
  * Environment variable R_SYSTEM_ABI is no longer used and so no
    longer recorded in etc/Renviron (it was not on Windows and was
    only ever used when preparing package tools).
  * If the libdeflate library and headers are available, libdeflate
    rather than libz is used to (de)compress R objects in lazy-load
    databases.  Typically tasks spend up to 5% of their time on such
    operations, although creating lazy-data databases is one of the
    exceptions.
    This can be suppressed if the library is available by the
    configure option --without-libdeflate-compression.
  * configure option --enable-lto=check has not worked reliably since
    2019 and has been removed.
  * The minimum autoconf requirement for a maintainer build has been
    increased to autoconf 2.71.
    It is intended to increase this to 2.72 for R 4.5.0: the
    distributed configure file was generated using 2.72.
  * The minimum version requirement for an external LAPACK has been
    reduced to 3.9.0.
  * No default C++ compiler is set if no C++17 compiler is detected:
    there is no longer an automatic fallback to C++14 or C++11.
    Compilers from the last five years should have sufficient
    support: for others macros CXX and CXXSTD can be set in file
    config.site to provide a fallback if needed.
    The Objective-C++ compiler now by default uses the standard
    selected by R for C++ (currently C++17) rather than the default
    standard for the C++ compiler (which on macOS is still C++98).
  INSTALLATION on macOS:
  * A new configure option --with-newAccelerate makes use of Apple's
    'new' BLAS / LAPACK interfaces in their Accelerate framework.
    Those interfaces are only available in macOS 13.3 or later, and
    building requires SDK 13.3 or later (from the Command Line Tools
    or Xcode 14.3 or later).
    By default the option uses new Accelerate for BLAS calls: to also
    use it for LAPACK use option --with-newAccelerate=lapack.  The
    later interfaces provide LAPACK 3.9.1 rather than 3.2.1: 3.9.1 is
    from 2021-04 and does not include the improved algorithms
    introduced in LAPACK 3.10.0 (including for BLAS calls).
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools44, an update of the Rtools43 toolchain.  It is
    based on GCC 13 and newer versions of MinGW-W64, binutils and
    libraries (targeting 64-bit Intel CPUs).  R-devel can no longer
    be built using Rtools43 without changes.
  * Rtools44 has experimental support for 64-bit ARM (aarch64) CPUs
    _via_ the LLVM 17 toolchain using lld, clang/flang-new and
    libc++.
  UTILITIES:
  * R CMD check notes when S4-style exports are used without
    declaring a strong dependence on package methods.
  * tools::checkRd() (used by R CMD check) detects more problems with
    \Sexpr-based dynamic content, including bad nesting of \Sexprs
    and invalid arguments.
  * tools::checkRd() now reports Rd titles and section names ending
    in a period; this is ignored by R CMD check unless environment
    variable _R_CHECK_RD_CHECKRD_MINLEVEL_ is set to -5 or smaller.
  * R CMD check now notes Rd files without an \alias, as long
    documented in 'Writing R Extensions' §1.3.1.  The check for a
    missing \description has been moved from tools::checkRd() to
    tools::checkRdContents().
  * R CMD check now visits inst/NEWS.Rd and OS-specific man
    subdirectories when checking Rd files.
  * tools::checkDocFiles() and tools::checkRdContents() now also
    check internal Rd files by default, but "specially" (ignoring
    missing documentation of arguments).
  * R CMD Rdiff gets option --useEx.
  * R CMD check now warns on non-portable uses of Fortran KIND such
    as INTEGER(KIND=4) and REAL(KIND=8).
    To see the failing lines set environment variable
    _R_CHECK_FORTRAN_KIND_DETAILS_ to a true value.
  * When checking Rd files, R CMD check now notes some of the "lost
    braces" that tools::checkRd() finds.  Typical problems are Rd
    macros missing the initial backslash (e.g., code{...}), in-text
    set notation (e.g., {1, 2}, where the braces need escaping), and
    \itemize lists with \describe-style entries of the form
    \item{label}{description}.
  * R CMD INSTALL (and hence check) will compile C++ code with
  - DR_NO_REMAP if environment variable _R_CXX_USE_NO_REMAP_ is set
    to a true value.  It is planned that this will in future become
    the default for compiling C++.
  * The new built-in Rd macro \dontdiff{} can be used to mark example
    code whose output should be ignored when comparing check output
    to reference output (tests/Examples/&lt;pkg&gt;-Ex.Rout.save).  The
    \dontdiff tag, like \donttest, is _not_ shown on the rendered
    help page, so provides a clean alternative to ##
    IGNORE_RDIFF_(BEGIN|END) comments.
  * R CMD build when there is no NAMESPACE, now uses the recommended
    exportPattern("^[^.]"), instead of exporting everything.
  * R CMD check now warns about non-ASCII characters in the NAMESPACE
    file (in addition to R files). Such packages are not portable and
    may fail to install on some platforms.
  C-LEVEL FACILITIES:
  * Headers R_ext/Applic.h and R-ext/Linpack.h used to include
    R_ext/BLAS.h although this was undocumented and unneeded by their
    documented entry points.  They no longer do so.
  * New function R_missing(), factored out from do_missing(), used to
    fix PR#18579.
  * SEXP type S4SXP has been renamed to OBJSXP to support
    experimenting with alternative object systems.  The S4SXP value
    can still be used in C code but is now deprecated.  Based on
    contributions from the R Consortium's Object-Oriented Programming
    Working Group.
  * New function pow1p(x,y) for accurate (1+x)^y.
  * mkCharLenCE was incorrectly documented to take a size_t length
    but was implemented with int (and character strings in R are
    limited to 2^31 - 1 bytes).
  DEPRECATED AND DEFUNCT:
  * data() no longer handles zipped data from long-defunct (since R
    2.13.0) --use-zip-data installations.
  * The legacy graphics devices pictex() and xfig() are now
    deprecated.  They do not support recent graphics enhancements and
    their font handling is rudimentary. The intention is to retain
    them for historical interest as long as they remain somewhat
    functional.
  * Support for encoding = "MacRoman" has been removed from the pdf()
    and postscript() devices - this was a legacy encoding supporting
    classic macOS up to 2001 and no longer has universal libiconv
    support.
  * is.R() is deprecated as no other S dialect is known to be in use
    (and this could only identify historical dialects, not future
    ones).
    Further information on calls can be obtained by setting the
    environment variable _R_DEPRECATED_IS_R_ to error which turns the
    deprecation warning into an error and so by default gives a
    traceback.  (This is done by R CMD check --as-cran.)
  * UseMethod() no longer forwards local variables assigned in the
    generic function into method call environments before evaluating
    the method body. This makes method calls behave more like
    standard function calls and makes method code easier to analyze
    correctly.
  * The twelve as.data.frame.&lt;class&gt;() methods which were deprecated
    only via _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ and in R CMD
    check --as-cran are formally deprecated now in favour of calling
    as.data.frame() or as.data.frame.vector().  The deprecation
    "check" now works also when as.data.frame() is S4 generic thanks
    to Ivan Krylov.
  * The default method for the directional comparison operators &lt;, &gt;,
    &lt;=, and &gt;= now signals an error when one of the operands is a
    language object, i.e. a symbol or a call.
  * For terms.formula(), deprecate abb and neg.out arguments
    _formally_ in addition to just documenting it.
  BUG FIXES:
  * The methods package is more robust to not being attached to the
    search path.  More work needs to be done.
  * pairwise.t.test() misbehaved when subgroups had 0 DF for
    variance, even with pool.sd = TRUE.  (PR#18594 by Jack Berry).
  * Probability distribution functions [dpq]&lt;distrib&gt;(x, *), but also
    bessel[IKJY](x, .) now consistently preserve attributes(x) when
    length(x) == 0, e.g., for a 2 x 0 matrix, thanks to Karolis
    Koncevičius' report PR#18509.
  * Group "Summary" computations such as sum(1:3, 4, na.rm = 5, NA,
    7, na.rm = LL) now give an error instead of either 17 or NN for
    LL true or false, as proposed by Ivan Krylov on the R-devel
    mailing list.  (This also means it is now an error to specify
    na.rm more than once.)
  * as.complex(x) now returns complex(real = x, imaginary = 0) for
    _all_ numerical and logical x, notably also for NA or
    NA_integer_.
  * Directories are now omitted by file.copy(, recursive = FALSE) and
    in file.append() (PR#17337).
  * gsub() and sub() are now more robust to integer overflow when
    reporting errors caused by too large input strings (PR#18346).
  * Top-level handlers are now more robust to attempts to remove a
    handler whilst handlers are running (PR#18508).
  * The handling of Alt+F4 in dialogs created on Windows using
    GraphApp has been fixed (PR#13870).
  * density() more consistently computes grid values for the
    FFT-based convolution, following Robert Schlicht's analysis and
    proposal in PR#18337, correcting density values typically by a
    factor of about 0.999.  Argument old.coords = TRUE provides back
    compatibility.
  * palette.colors() gains a name argument that defaults to FALSE
    controlling whether the vector of colours that is returned has
    names (where possible).  PR#18529.
  * tools::xgettext() no longer extracts the (non-translatable) class
    names from warningCondition and errorCondition calls.
  * S3method(&lt;gen&gt;, &lt;class&gt;, &lt;func&gt;) in the NAMESPACE file now works
    (again) when &lt;func&gt; is visible from the namespace, e.g.,
    imported, or in base.
  * getParseData(f) now also works for a function defined in the
    first of several &lt;pkg&gt;/R/*.R source files, thanks to Kirill
    Müller's report and Duncan Murdoch's patch in PR#16756.
  * Rd \Sexpr macros with nested #ifdef conditionals were not
    processed.
  * A non-blocking connection with non-default encoding (such as a
    socket) now correctly returns from readLines() after new data has
    arrived also when its EOF had been reached previously.  Thanks to
    Peter Meilstrup's report on R-devel and Ivan Krylov's report and
    patch proposal in PR#18555.
  * tools::checkRdContents() failed to detect empty argument
    descriptions when they spanned multiple lines, including those
    generated by prompt().  These cases are now noted by R CMD check.
  * Plain-text help no longer outputs spurious colons in the
    arguments list (for multi-line \item labels in the Rd source).
  * kappa() and rcond() work correctly in more cases; kappa(., norm =
    "2") now warns that it computes the 1-norm with (default) exact =
    FALSE; prompted by Mikael Jagan's quite comprehensive PR#18543.
  * Rd skeletons generated by prompt() or promptData() now use a
    dummy title (so R CMD build works).  tools::checkRdContents() has
    been updated to detect such template leftovers, including from
    promptPackage().
  * When S4 method dispatch fails because no method was found, the
    error message now includes the signature argument names; thanks
    to Michael Chirico's proposal on the R-devel list.
  * withAutoprint({ .. }) now preserves srcrefs previously lost,
    thanks to Andrew Simmons' report plus fix in PR#18572.
  * transform.data.frame() no longer adjusts names; in particular,
    untransformed variables are kept as-is, including those with
    syntactically invalid names (PR#17890).
  * The keep.source option for Rd \Sexpr blocks is no longer ignored.
  * The formula methods for t.test() and wilcox.test() now catch when
    paired is passed, addressing PR#14359; use Pair(x1, x2) ~ 1 for a
    paired test.
  * The level reported in the browser prompt was often too large. It
    now shows the number of browser contexts on the stack.
  * For cbind() and rbind(), the optional deparse.level argument is
    now properly passed to methods, thanks to Mikael Jagan's PR#18579
    and comments there.
  * Some error and warning messages for large ('long vector')
    matrix(v, nr, nc) and dim(m) &lt;- d are now correct about sizes,
    using long long formatting, fixing PR#18612 (and more) reported
    by Mikael Jagan.
  * readChar(useBytes = TRUE) now terminates strings even when the
    underlying connection uses extra spaces in the input buffer.
    This fixes problems with extra garbage seen with gzip
    connections, PR#18605.
  * Named capture in PCRE regular expressions now works also with
    more than 127 named groups (PR#18588).
  * Datetime functions are now robust against long jumps when dealing
    with internal time zone changes.  This avoids confusing warnings
    about an invalid time zone, previously triggered by turning
    warnings into errors or handling them via tryCatch (PR#17966,
    PR#17780).
  * Datetime functions now restore even an empty TZ environment
    variable after internal time zone changes (PR#17724).  This makes
    results of datetime functions with this (typically unintentional)
    setting more predictable.
  * drop.terms(*) now drops response as by default, keep.response =
    FALSE, fixing PR#18564 thanks to Mikael Jagan.
  * dummy.coef(.) now also works for lm()-models with character
    categorical predictor variables rather than factor ones, fixing
    PR#18635 reported by Jinsong Zhao.
  * formals(f) &lt;- formals(f) now also works for a function w/o
    arguments and atomic _constant_ body(f).
  * Correct as.function(&lt;invalid list&gt;, .)'s error message.
  * removeSource() is yet more thorough in finding and removing
    "srcref" and the other source references from parsed R language
    chunks, fixing PR#18638 thanks to Andrew Simmons.
  * dgeom() is more accurate now, notably when its result is very
    small, fixing PR#18642 thanks to the proposal of Morten Welinder,
    also improving other instances where C level binom_raw(x, n, ..)
    has x == 0 or x== n.
  * warning() with options(warn = 1) has improved output for
    multi-line messages.
  * axis.Date() and axis.POSIXct() now respect the par("lab") setting
    for the number of pretty() intervals.
  * Comparisons for language objects (which are based on deparsing)
    are now more careful about using accurate deparsed results
    (PR#18676).
  * Plain-text help (Rd2txt) now correctly preserves blank lines
    following single-line \dontrun code.
  * &lt;POSIXlt&gt;[*] no longer sets wrong "balanced" attribute, fixing
    PR#18681 thanks to Mikael Jagan.
  * str(&lt;classed-call&gt;) now deparses the call as expected, fixing
    PR#18684, reported by Dave Slager.
  * In Rd examples, code following the closing brace of a \dontrun,
    \dontshow or \donttest tag on the same line is no longer skipped
    when R CMD check runs the examples.
  * as.data.frame(matrix(*, ncol=0)) now gets valid names() and
    colnames(); reported by Davis Vaughan on the R-devel list.
  * Internal Mathlib function stirlerr(n) is now almost fully
    (52-bit) accurate for all n &gt;= ~5.9 and more accurate also in the
    range 1 -- 5.9.  This entails small ("after 12th decimal")
    changes in density functions, e.g., dgamma() in _some_ regions of
    their support.  The fix was partly prompted by Morten Welinder's
    PR#18640.
  * Numbers like 9876543.2 are now considered non-integer by Mathlib
    internal R_nonint(), amending original fix of PR#15734.
  * Rd comment lines no longer cause broken paragraphs in the
    rendered PDF and plain-text help. In code blocks, pure comment
    lines (starting with %) no longer produce an empty line.
  * xtabs(Freq ~ .) now consistently defaults to na.action = na.pass,
    using na.rm = FALSE (added as an argument) when summing over Freq
    (PR#17770).
  * tools::testInstalledPackage() is no longer silent about failures
    from running examples or tests and its return code no longer
    ignores failures from checking vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1718366400">- CHANGES IN R 4.4.1:
  C-LEVEL FACILITIES:
  * Functions R_atof and R_strtod declared in header R_ext/Utils.h
    are now documented in 'Writing R Extensions' and so formally part
    of the API.
  * The non-API entry points Rf_setSVector, Rf_StringFalse,
    Rf_StringTrue and Rf_isBlankString have been added to those
    reported by R CMD check.
  * The new function Rf_allocLang is now available. This provides an
    alternative to the idiom of calling Rf_allocList followed by
    SET_TYPEOF.
  UTILITIES:
  * R CMD check now reports as warnings what gfortran calls 'Fortran
    2018 deleted features', all of which have long been marked as
    'obsolescent' and some of which were deleted in Fortran 2008 or
    earlier.  Fortran compilers are no longer required to support
    these.
  BUG FIXES:
  * as.numeric(), scan(), type.convert() and other places which use
    the internal C function R_strtod now require a _non-empty_ digit
    sequence in a decimal or binary exponent.  This aligns with the
    C/POSIX standard for strtod and with ?NumericConstants.
  * as.data.frame(m, make.names=NA) now works correctly for a matrix
    m with NA's in row names.
  * The error message from &lt;POSIXlt&gt;[["hour"]] and similar now
    mentions *[[, "hour"]], as wished for in PR#17409 and proposed by
    Michael Chirico.
  * qbinom() and potentially qpois(), qnbinom(), no longer sometimes
    fail accurate inversion (of pbinom(), etc), thanks to Christopher
    Chang's report and patch in PR#18711.
  * The internal help server on Windows can again serve requests sent
    in quick succession, fixing a regression in R 4.4.0.
  * debugcall(&lt;S3Generic&gt;()) now also works when a corresponding
    S4-generic version is in the methods cache (PR#18143).
  * Package tools' toTitleCase(ch0) now returns character(0) when ch0
    is of zero length; fixing PR#18724, reported by David Hugh Jones.
  * R CMD check is no longer broken (without a check result and no
    explanation in 00check.log) for a package which declares an
    invalid VignetteBuilder in DESCRIPTION but has no vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1730376000">- CHANGES IN R 4.4.2:
  C-LEVEL FACILITIES:
  * The S-compatibility macros F77_COM and F77_COMDECL defined in
    header R_ext/RS.h are deprecated and will be removed shortly.  We
    could find no record of their use.
  BUG FIXES:
  * Mathlib function lgammacor(x) no longer warns about underflow to
    zero for large x.
  * Text widths and heights were incorrectly reported by the Quartz
    device if the drawing context didn't exist yet (typically when
    drawing off-screen to a window that is yet to appear, see
    PR#18591).
  * The Quartz device could segfault in cases where paths with spaces
    are used in the new glyph drawing API.  Thanks to Tomek
    Gieorgijewski (PR#18758).
  * On macOS in R CRAN builds, it is again possible to read
    little-endian UTF-16 text with a BOM from a connection using
    encoding="UTF-16".  Users building R from source should avoid
    using the system libiconv in macOS 14.1 and later.
  * methods' internal .requirePackage() now re-enables primitive
    method dispatch when needed; thanks to Ivan Krylov for
    demystifying CRAN package check failures on the R-devel mailing
    list.</changelog>
</package>
<package pkgid="46a65d1ae3bb112454db7a75a00655cf79480f0da37d0a04d1cf15fa29d6497e04cb7f3c5fa7ca60c1ce9e2148732f8cb8a240f3154ae368810a33d225176148" name="R-codetools" arch="x86_64">
  <version epoch="0" ver="0.2.20" rel="51.0.2.2.sr20241103"/>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1620302400">- To get in sync with d:l:R:autoCRAN the Matrix package's split
  in -devel was reversed.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339200">- improved spec file according to comments of dimstar in
  https://build.opensuse.org/request/show/892685</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339201">- CHANGES IN R 4.1.0:
  FUTURE DIRECTIONS:
  * It is planned that the 4.1.x series will be the last to support
    32-bit Windows, with production of binary packages for that
    series continuing until early 2023.
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Data set esoph in package datasets now provides the correct
    numbers of controls; previously it had the numbers of cases added
    to these.  (Reported by Alexander Fowler in PR#17964.)
  NEW FEATURES:
  * www.omegahat.net is no longer one of the repositories known by
    default to setRepositories().  (Nowadays it only provides source
    packages and is often unavailable.)
  * Function package_dependencies() (in package tools) can now use
    different dependency types for direct and recursive dependencies.
  * The checking of the size of tarball in R CMD check --as-cran
    &lt;pkg&gt; may be tweaked via the new environment variable
    _R_CHECK_CRAN_INCOMING_TARBALL_THRESHOLD_, as suggested in
    PR#17777 by Jan Gorecki.
  * Using c() to combine a factor with other factors now gives a
    factor, an ordered factor when combining ordered factors with
    identical levels.
  * apply() gains a simplify argument to allow disabling of
    simplification of results.
  * The format() method for class "ftable" gets a new option justify.
    (Suggested by Thomas Soeiro.)
  * New ...names() utility.  (Proposed by Neal Fultz in PR#17705.)
  * type.convert() now warns when its as.is argument is not
    specified, as the help file always said it _should_.  In that
    case, the default is changed to TRUE in line with its change in
    read.table() (related to stringsAsFactor) in R 4.0.0.
  * When printing list arrays, classed objects are now shown _via_
    their format() value if this is a short enough character string,
    or by giving the first elements of their class vector and their
    length.
  * capabilities() gets new entry "Rprof" which is TRUE when R has
    been configured with the equivalent of --enable-R-profiling (as
    it is by default).  (Related to Michael Orlitzky's report
    PR#17836.)
  * str(xS4) now also shows extraneous attributes of an S4 object
    xS4.
  * Rudimentary support for vi-style tags in rtags() and R CMD rtags
    has been added.  (Based on a patch from Neal Fultz in PR#17214.)
  * checkRdContents() is now exported from tools; it and also
    checkDocFiles() have a new option chkInternal allowing to check
    Rd files marked with keyword "internal" as well.  The latter can
    be activated for R CMD check via environment variable
    _R_CHECK_RD_INTERNAL_TOO_.
  * New functions numToBits() and numToInts() extend the raw
    conversion utilities to (double precision) numeric.
  * Functions URLencode() and URLdecode() in package utils now work
    on vectors of URIs.  (Based on patch from Bob Rudis submitted
    with PR#17873.)
  * path.expand() can expand ~user on most Unix-alikes even when
    readline is not in use.  It tries harder to expand ~, for example
    should environment variable HOME be unset.
  * For HTML help (both dynamic and static), Rd file links to help
    pages in external packages are now treated as references to
    topics rather than file names, and fall back to a file link only
    if the topic is not found in the target package. The earlier rule
    which prioritized file names over topics can be restored by
    setting the environment variable _R_HELP_LINKS_TO_TOPICS_ to a
    false value.
  * c() now removes NULL arguments before dispatching to methods,
    thus simplifying the implementation of c() methods, _but_ for
    back compatibility keeps NULL when it is the first argument.
    (From a report and patch proposal by Lionel Henry in PR#17900.)
  * Vectorize()'s result function's environment no longer keeps
    unneeded objects.
  * Function ...elt() now propagates visibility consistently with
    ..n.  (Thanks to Lionel Henry's PR#17905.)
  * capture.output() no longer uses non-standard evaluation to
    evaluate its arguments.  This makes evaluation of functions like
    parent.frame() more consistent.  (Thanks to Lionel Henry's
    PR#17907.)
  * packBits(bits, type="double") now works as inverse of
    numToBits().  (Thanks to Bill Dunlap's proposal in PR#17914.)
  * curlGetHeaders() has two new arguments, timeout to specify the
    timeout for that call (overriding getOption("timeout")) and TLS
    to specify the minimum TLS protocol version to be used for
    https:// URIs (_inter alia_ providing a means to check for sites
    using deprecated TLS versions 1.0 and 1.1).
  * For nls(), an optional constant scaleOffset may be added to the
    denominator of the relative offset convergence test for cases
    where the fit of a model is expected to be exact, thanks to a
    proposal by John Nash.  nls(*, trace=TRUE) now also shows the
    convergence criterion.
  * Numeric differentiation _via_ numericDeriv() gets new optional
    arguments eps and central, the latter for taking central divided
    differences.  The latter can be activated for nls() via
    nls.control(nDcentral = TRUE).
  * nls() now passes the trace and control arguments to getInitial(),
    notably for all self-starting models, so these can also be fit in
    zero-noise situations via a scaleOffset.  For this reason, the
    initial function of a selfStart model must now have ... in its
    argument list.
  * bquote(splice = TRUE) can now splice expression vectors with
    attributes: this makes it possible to splice the result of
    parse(keep.source = TRUE).  (Report and patch provided by Lionel
    Henry in PR#17869.)
  * textConnection() gets an optional name argument.
  * get(), exists(), and get0() now signal an error if the first
    argument has length greater than 1.  Previously additional
    elements were silently ignored.  (Suggested by Antoine Fabri on
    R-devel.)
  * R now provides a shorthand notation for creating functions, e.g.
    \(x) x + 1 is parsed as function(x) x + 1.
  * R now provides a simple native forward pipe syntax |&gt;.  The
    simple form of the forward pipe inserts the left-hand side as the
    first argument in the right-hand side call.  The pipe
    implementation as a syntax transformation was motivated by
    suggestions from Jim Hester and Lionel Henry.
  * all.equal(f, g) for functions now by default also compares their
    environment(.)s, notably via new all.equal method for class
    function.  Comparison of nls() fits, e.g., may now need
    all.equal(m1, m2, check.environment = FALSE).
  * .libPaths() gets a new option include.site, allowing to _not_
    include the site library.  (Thanks to Dario Strbenac's suggestion
    and Gabe Becker's PR#18016.)
  * Lithuanian translations are now available.  (Thanks to Rimantas
    Zakauskas.)
  * names() now works for DOTSXP objects.  On the other hand, in
    R-lang, the R language manual, we now warn against relying on the
    structure or even existence of such dot-dot-dot objects.
  * all.equal() no longer gives an error on DOTSXP objects.
  * capabilities("cairo") now applies only to the file-based devices
    as it is now possible (if very unusual) to build R with Cairo
    support for those but not for X11().
  * There is optional support for tracing the progress of
    loadNamespace() - see its help.
  * (Not Windows.)  l10n_info() reports an additional element, the
    name of the encoding as reported by the OS (which may differ from
    the encoding part (if any) of the result from
    Sys.getlocale("LC_CTYPE").
  * New function gregexec() which generalizes regexec() to find _all_
    disjoint matches and well as all substrings corresponding to
    parenthesized subexpressions of the given regular expression.
    (Contributed by Brodie Gaslam.)
  * New function charClass() in package utils to query the
    wide-character classification functions in use (such as
    iswprint).
  * The names of quantile()'s result no longer depend on the global
    getOption("digits"), but quantile() gets a new optional argument
    digits = 7 instead.
  * grep(), sub(), regexp and variants work considerably faster for
    long factors with few levels.  (Thanks to Michael Chirico's
    PR#18063.)
  * Provide grouping of x11() graphics windows within a window
    manager such as Gnome or Unity; thanks to a patch by Ivan Krylov
    posted to R-devel.
  * The split() method for class data.frame now allows the f argument
    to be specified as a formula.
  * sprintf now warns on arguments unused by the format string.
  * New palettes "Rocket" and "Mako" for hcl.colors() (approximating
    palettes of the same name from the 'viridisLite' package).
    Contributed by Achim Zeileis.
  * The base environment and its namespace are now locked (so one can
    no longer add bindings to these or remove from these).
  * Rterm handling of multi-byte characters has been improved,
    allowing use of such characters when supported by the current
    locale.
  * Rterm now accepts ALT+ +xxxxxxxx sequences to enter Unicode
    characters as hex digits.
  * Environment variable LC_ALL on Windows now takes precedence over
    LC_CTYPE and variables for other supported categories, matching
    the POSIX behaviour.
  * duplicated() and anyDuplicated() are now optimized for integer
    and real vectors that are known to be sorted via the ALTREP
    framework. Contributed by Gabriel Becker via PR#17993.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 14
    and so packages that provide graphics devices should be
    reinstalled.
  * Graphics devices should now specify deviceVersion to indicate
    what version of the graphics engine they support.
  * Graphics devices can now specify deviceClip.  If TRUE, the
    graphics engine will never perform any clipping of output itself.
    The clipping that the graphics engine does perform (for both
    canClip = TRUE and canClip = FALSE) has been improved to avoid
    producing unnecessary artifacts in clipped output.
  * The grid package now allows gpar(fill) to be a linearGradient(),
    a radialGradient(), or a pattern().  The viewport(clip) can now
    also be a grob, which defines a clipping path, and there is a new
    viewport(mask) that can also be a grob, which defines a mask.
    These new features are only supported so far on the Cairo-based
    graphics devices and on the pdf() device.
  * (Not Windows.)  A warning is given when a Cairo-based type is
    specified for a png(), jpeg(), tiff() or bmp() device but Cairo
    is unsupported (so type = "Xlib" is tried instead).
  * grSoftVersion() now reports the versions of FreeType and
    FontConfig if they are used directly (not _via_ Pango), as is
    most commonly done on macOS.
  C-LEVEL FACILITIES:
  * The _standalone_ libRmath math library and R's C API now provide
    log1pexp() again as documented, and gain log1mexp().
  INSTALLATION on a UNIX-ALIKE:
  * configure checks for a program pkgconf if program pkg-config is
    not found.  These are now only looked for on the path (like
    almost all other programs) so if needed specify a full path to
    the command in PKG_CONFIG, for example in file config.site.
  * C99 function iswblank is required - it was last seen missing ca
    2003 so the workaround has been removed.
  * There are new configure options --with-internal-iswxxxxx,
  - -with-internal-towlower and --with-internal-wcwidth which allows
    the system functions for wide-character classification,
    case-switching and width (wcwidth and wcswidth) to be replaced by
    internal ones.  The first has long been used on macOS, AIX (and
    Windows) but this enables it to be unselected there and selected
    for other platforms (it is the new default on Solaris).  The
    second is new in this version of R and is selected by default on
    macOS and Solaris.  The third has long been the default and
    remains so as it contains customizations for East Asian
    languages.
    System versions of these functions are often minimally
    implemented (sometimes only for ASCII characters) and may not
    cover the full range of Unicode points: for example Solaris (and
    Windows) only cover the Basic Multilingual Plane.
  * Cairo installations without X11 are more likely to be detected by
    configure, when the file-based Cairo graphics devices will be
    available but not X11(type = "cairo").
  * There is a new configure option --with-static-cairo which is the
    default on macOS.  This should be used when only static cairo
    (and where relevant, Pango) libraries are available.
  * Cairo-based graphics devices on platforms without Pango but with
    FreeType/FontConfig will make use of the latter for font
    selection.
  LINK-TIME OPTIMIZATION on a UNIX-ALIKE:
  * Configuring with flag --enable-lto=R now also uses LTO when
    installing the recommended packages.
  * R CMD INSTALL and R CMD SHLIB have a new flag --use-LTO to use
    LTO when compiling code, for use with R configured with
  - -enable-lto=R.  For R configured with --enable-lto, they have
    the new flag --no-use-LTO.
    Packages can opt in or out of LTO compilation _via_ a UseLTO
    field in the DESCRIPTION file.  (As usual this can be overridden
    by the command-line flags.)
  BUILDING R on Windows:
  * for GCC &gt;= 8, FC_LEN_T is defined in config.h and hence character
    lengths are passed from C to Fortran in _inter alia_ BLAS and
    LAPACK calls.
  * There is a new text file src/gnuwin32/README.compilation, which
    outlines how C/Fortran code compilation is organized and
    documents new features:
  * R can be built with Link-Time Optimization with a suitable
    compiler - doing so with GCC 9.2 showed several
    inconsistencies which have been corrected.
  * There is support for cross-compiling the C and Fortran code
    in R and standard packages on suitable (Linux) platforms.
    This is mainly intended to allow developers to test later
    versions of compilers - for example using GCC 9.2 or 10.x has
    detected issues that GCC 8.3 in Rtools40 does not.
  * There is experimental support for cross-building R packages
    with C, C++ and/or Fortran code.
  * The R installer can now be optionally built to support a single
    architecture (only 64-bit or only 32-bit).
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++14 where
    available (which it is on all currently checked platforms): if
    not (as before) C++11 is used if available otherwise C++ is not
    supported.
    Packages which specify C++11 will still be installed using C++11.
    C++14 compilers may give deprecation warnings, most often for
    std::random_shuffle (deprecated in C++14 and removed in C++17).
    Either specify C++11 (see 'Writing R Extensions') or modernize
    the code and if needed specify C++14.  The latter has been
    supported since R 3.4.0 so the package's DESCRIPTION would need
    to include something like
    Depends: R (&gt;= 3.4)
  PACKAGE INSTALLATION on Windows:
  * R CMD INSTALL and R CMD SHLIB make use of their flag --use-LTO
    when the LTO_OPT make macro is set in file etc/${R_ARCH}/Makeconf
    or in a personal/site Makevars file.  (For details see 'Writing R
    Extensions' SS4.5.)
    This provides a valuable check on code consistency.  It does work
    with GCC 8.3 as in Rtools40, but that does not detect everything
    the CRAN checks with current GCC do.
  PACKAGE INSTALLATION on macOS:
  * The default personal library directory on builds with
  - -enable-aqua (including CRAN builds) now differs by CPU type,
    one of
    ~/Library/R/x86_64/x.y/library
    ~/Library/R/arm64/x.y/library
    This uses the CPU type R (and hence the packages) were built for,
    so when a x86_64 build of R is run under Rosetta emulation on an
    arm64 Mac, the first is used.
  UTILITIES:
  * R CMD check can now scan package functions for bogus return
    statements, which were possibly intended as return() calls (wish
    of PR#17180, patch by Sebastian Meyer). This check can be
    activated via the new environment variable
    _R_CHECK_BOGUS_RETURN_, true for --as-cran.
  * R CMD build omits tarballs and binaries of previous builds from
    the top-level package directory.  (PR#17828, patch by Sebastian
    Meyer.)
  * R CMD check now runs sanity checks on the use of LazyData, for
    example that a data directory is present and that
    LazyDataCompression is not specified without LazyData and has a
    documented value.  For packages with large LazyData databases
    without specifying LazyDataCompression, there is a reference to
    the code given in 'Writing R Extensions' SS1.1.6 to test the
    choice of compression (as in all the CRAN packages tested a
    non-default method was preferred).
  * R CMD build removes LazyData and LazyDataCompression fields from
    the DESCRIPTION file of packages without a data directory.
  ENCODING-RELATED CHANGES:
  * The parser now treats \Unnnnnnnn escapes larger than the upper
    limit for Unicode points (\U10FFFF) as an error as they cannot be
    represented by valid UTF-8.
    Where such escapes are used for outputting non-printable
    (including unassigned) characters, 6 hex digits are used (rather
    than 8 with leading zeros).  For clarity, braces are used, for
    example \U{0effff}.
  * The parser now looks for non-ASCII spaces on Solaris (as
    previously on most other OSes).
  * There are warnings (including from the parser) on the use of
    unpaired surrogate Unicode points such as \uD834.  (These cannot
    be converted to valid UTF-8.)
  * Functions nchar(), tolower(), toupper() and chartr() and those
    using regular expressions have more support for inputs with a
    marked Latin-1 encoding.
  * The character-classification functions used (by default) to
    replace the system iswxxxxx functions on Windows, macOS and AIX
    have been updated to Unicode 13.0.0.
    The character-width tables have been updated to include new
    assignments in Unicode 13.0.0.
  * The code for evaluating default (extended) regular expressions
    now uses the same character-classification functions as the rest
    of R (previously they differed on Windows, macOS and AIX).
  * There is a build-time option to replace the system's
    wide-character wctrans C function by tables shipped with R: use
    configure option --with-internal-towlower or (on Windows)
  - DUSE_RI18N_CASE in CFLAGS when building R.  This may be needed
    to allow tolower() and toupper() to work with Unicode characters
    beyond the Basic Multilingual Plane where not supported by system
    functions (e.g. on Solaris where it is the new default).
  * R is more careful when truncating UTF-8 and other multi-byte
    strings that are too long to be printed, passed to the system or
    libraries or placed into an internal buffer.  Truncation will no
    longer produce incomplete multibyte characters.
  DEPRECATED AND DEFUNCT:
  * Function plclust() from the package stats and
    package.dependencies(), pkgDepends(), getDepList(),
    installFoundDepends(), and vignetteDepends() from package tools
    are defunct.
  * Defunct functions checkNEWS() and readNEWS() from package tools
    and CRAN.packages() from utils have been removed.
  * R CMD config CXXCPP is defunct (it was deprecated in R 3.6.2).
  * parallel::detectCores() drops support for Irix (retired in 2013).
  * The LINPACK argument to chol.default(), chol2inv(),
    solve.default() and svd() has been defunct since R 3.1.0.  It was
    silently ignored up to R 4.0.3 but now gives an error.
  * Subsetting/indexing, such as ddd[*] or ddd$x on a DOTSXP
    (dot-dot-dot) object ddd has been disabled; it worked by accident
    only and was undocumented.
  BUG FIXES:
  * Many more C-level allocations (mainly by malloc and strdup) are
    checked for success with suitable alternative actions.
  * Bug fix for replayPlot(); this was turning off graphics engine
    display list recording if a recorded plot was replayed in the
    same session.  The impact of the bug became visible if resize the
    device after replay OR if attempted another savePlot() after
    replay (empty display list means empty screen on resize or empty
    saved plot).
  * R CMD check etc now warn when a package exports non-existing S4
    classes or methods, also in case of no "methods" presence.
    (Reported by Alex Bertram; reproducible example and patch by
    Sebastian Meyer in PR#16662.)
  * boxplot() now also accepts calls for labels such as ylab, the
    same as plot().  (Reported by Marius Hofert.)
  * The help page for xtabs() now correctly states that addNA is
    setting na.action = na.pass among others.  (Reported as PR#17770
    by Thomas Soeiro.)
  * The R CMD check &lt;pkg&gt; gives a longer and more comprehensible
    message when DESCRIPTION misses dependencies, e.g., in Imports:.
    (Thanks to the contributors of PR#17179.)
  * update.default() now calls the generic update() on the formula to
    work correctly for models with extended formulas.  (As reported
    and suggested by Neal Fultz in PR#17865.)
  * The horizontal position of leaves in a dendrogram is now correct
    also with center = FALSE.  (PR#14938, patch from Sebastian
    Meyer.)
  * all.equal.POSIXt() no longer warns about and subsequently ignores
    inconsistent "tzone" attributes, but describes the difference in
    its return value (PR#17277).  This check can be disabled _via_
    the new argument check.tzone = FALSE as suggested by Sebastian
    Meyer.
  * as.POSIXct() now populates the "tzone" attribute from its tz
    argument when x is a logical vector consisting entirely of NA
    values.
  * x[[2^31]] &lt;- v now works.  (Thanks to the report and patch by
    Suharto Anggono in PR#17330.)
  * In log-scale graphics, axis() ticks and label positions are now
    computed more carefully and symmetrically in their range,
    typically providing _more_ ticks, fulfilling wishes in PR#17936.
    The change really corresponds to an improved axisTicks() (package
    grDevices), potentially influencing grid and lattice, for
    example.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now correct to at
    least five digits where it was catastrophically wrong,
    previously.
  * sum(df) and similar "Summary"- and "Math"-group member functions
    now work for data frames df with logical columns, notably also of
    zero rows.  (Reported to R-devel by Martin "b706".)
  * unsplit() had trouble with tibbles due to unsound use of rep(NA,
    len)-indexing, which should use NA_integer_ (Reported to R-devel
    by Mario Annau.)
  * pnorm(x, log.p = TRUE) underflows to -Inf slightly later.
  * show(&lt;hidden S4 generic&gt;) prints better and without quotes for
    non-hidden S4 generics.
  * read.table() and relatives treated an "NA" column name as missing
    when check.names = FALSE PR#18007.
  * Parsing strings containing UTF-16 surrogate pairs such as
    "\uD834\uDD1E" works better on some (uncommon) platforms.
    sprintf("%X", utf8ToInt("\uD834\uDD1E")) should now give "1D11E"
    on all platforms.
  * identical(x,y) is no longer true for differing DOTSXP objects,
    fixing PR#18032.
  * str() now works correctly for DOTSXP and related exotics, even
    when these are doomed.
    Additionally, it no longer fails for lists with a class and
    "irregular" method definitions such that e.g. lapply(*) will
    necessarily fail, as currently for different igraph objects.
  * Too long lines in environment files (e.g. Renviron) no longer
    crash R. This limit has been increased to 100,000 bytes.
    (PR#18001.)
  * There is a further workaround for FreeType giving incorrect
    italic font faces with cairo-based graphics devices on macOS.
  * add_datalist(*, force = TRUE) (from package tools) now actually
    updates an existing data/datalist file for new content.  (Thanks
    to a report and patch by Sebastian Meyer in PR#18048.)
  * cut.Date() and cut.POSIXt() could produce an empty last interval
    for breaks = "months" or breaks = "years".  (Reported as PR#18053
    by Christopher Carbone.)
  * Detection of the encoding of 'regular' macOS locales such as
    en_US (which is UTF-8) had been broken by a macOS change:
    fortunately these are now rarely used with en_US.UTF-8 being
    preferred.
  * sub() and gsub(pattern, repl, x, *) now keep attributes of x such
    as names() also when pattern is NA (PR#18079).
  * Time differences ("difftime" objects) get a replacement and a
    rep() method to keep "units" consistent.  (Thanks to a report and
    patch by Nicolas Bennett in PR#18066.)
  * The \RdOpts macro, setting defaults for \Sexpr options in an Rd
    file, had been ineffective since R 2.12.0: it now works again.
    (Thanks to a report and patch by Sebastian Meyer in PR#18073.)
  * mclapply and pvec no longer accidentally terminate parallel
    processes started before by mcparallel or related calls in
    package parallel (PR#18078).
  * grep and other functions for evaluating (extended) regular
    expressions handle in Unicode also strings not explicitly flagged
    UTF-8, but flagged native when running in UTF-8 locale.
  * Fixed a crash in fifo implementation on Windows (PR#18031).
  * Binary mode in fifo on Windows is now properly detected from
    argument open (PR#15600, PR#18031).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1622808000">- The line %{__install} -m 755 -d %{_infodir}
  no longer works in TW or Factory.
  But without that line it works everywhere. So this instruction
  was commented out of the spec file.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1628596800">- CHANGES IN R 4.1.1:
  NEW FEATURES:
  * require(pkg, quietly = TRUE) is quieter and in particular does
    not warn if the package is not found.
  DEPRECATED AND DEFUNCT:
  * Use of ftp:// URIs should be regarded as deprecated, with
    on-going support confined to method = "libcurl" and not routinely
    tested.  (Nowadays no major browser supports them.)
  * The non-default method = "internal" is deprecated for http:// and
    ftp:// URIs for both download.file and url.
  * On Windows, method = "wininet" is deprecated for http://,
    https:// and ftp:// URIs for both download.file and url.  (A
    warning is only given for ftp://.)
    For ftp:// URIs the default method is now "libcurl" if available
    (which it is on CRAN builds).
    method = "wininet" remains the default for http:// and https://
    URIs but if libcurl is available, using method = "libcurl" is
    preferred.
  INSTALLATION:
  * make check now works also without a LaTeX installation.  (Thanks
    to Sebastian Meyer's PR#18103.)
  BUG FIXES:
  * make check-devel works again in an R build configured with
  - -without-recommended-packages.
  * qnbinom(p, size, mu) for large size/mu is correct now in a range
    of cases (PR#18095); similarly for the (size, prob)
    parametrization of the negative binomial.  Also qpois() and
    qbinom() are better and or faster for extreme cases.  The
    underlying C code has been modularized and is common to all four
    cases of discrete distributions.
  * gap.axis is now part of the axis() arguments which are passed
    from bxp(), and hence boxplot().  (Thanks to Martin Smith's
    report and suggestions in PR#18109.)
  * .First and .Last can again be set from the site profile.
  * seq.int(from, to, *) and seq.default(..) now work better in large
    range cases where from-to is infinite where the two boundaries
    are finite.
  * all.equal(x,y) now returns TRUE correctly also when several
    entries of abs(x) and abs(y) are close to .Machine$double.xmax,
    the largest finite numeric.
  * model.frame() now clears the object bit when removing the class
    attribute of a value via na.action (PR#18100).
  * charClass() now works with multi-character strings on Windows
    (PR#18104, fixed by Bill Dunlap).
  * encodeString() on Solaris now works again in Latin-1 encoding on
    characters represented differently in UTF-8.  Support for
    surrogate pairs on Solaris has been improved.
  * file.show() on Windows now works with non-ASCII path names
    representable in the current native encoding (PR#18132).
  * Embedded R on Windows can now find R home directory via the
    registry even when installed only for the current user
    (PR#18135).
  * pretty(x) with finite x now returns finite values also in the
    case where the extreme x values are close in size to the maximal
    representable number .Machine$double.xmax.
    Also, it's been tweaked for very small ranges and when a boundary
    is close (or equal) to zero; e.g., pretty(c(0,1e-317)) no longer
    has negative numbers, currently still warning about a very small
    range, and pretty(2^-(1024 - 2^-1/(c(24,10)))) is more accurate.
  * The error message for not finding vignette files when weaving has
    correct file sizes now. (Thanks to Sebastian Meyer's PR#18154.)
  * dnbinom(20, &lt;large&gt;, 1) now correctly gives 0, and similar cases
    are more accurate with underflow precaution.  (Reported by Francisco Vera Alcivar in PR#18072.)</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635163200">- repaired https://bugzilla.suse.com/show_bug.cgi?id=1191380
  (rpmacros now go to rpmmacrodir)
- minor clean-ups in spec file</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635768000">- CHANGES IN R 4.1.2:
  C-LEVEL FACILITIES:
  * The workaround in headers R.h and Rmath.h (using namespace std;)
    for the Oracle Developer Studio compiler is no longer needed now
    C++11 is required so has been removed.  A couple more usages of
    log() (which should have been std::log()) with an int argument
    are reported on Solaris.
  * The undocumented limit of 4095 bytes on messages from the
    S-compatibility macros PROBLEM and MESSAGE is now documented and
    longer messages will be silently truncated rather than
    potentially causing segfaults.
  * If the R_NO_SEGV_HANDLER environment variable is non-empty, the
    signal handler for SEGV/ILL/BUS signals (which offers recovery
    user interface) is not set. This allows more reliable debugging
    of crashes that involve the console.
  DEPRECATED AND DEFUNCT:
  * The legacy S-compatibility macros PROBLEM, MESSAGE, ERROR, WARN,
    WARNING, RECOVER, ... are deprecated and will be hidden in R
    4.2.0. R's native interface of Rf_error and Rf_warning has long
    been preferred.
  BUG FIXES:
  * .mapply(F, dots, .) no longer segfaults when dots is not a list
    and uses match.fun(F) as always documented; reported by Andrew
    Simmons in PR#18164.
  * hist(&lt;Date&gt;, ...) and hist(&lt;POSIXt&gt;, ...)  no longer pass
    arguments for rect() (such as col and density) to axis().
    (Thanks to Sebastian Meyer's PR#18171.)
  * \Sexpr{ch} now preserves Encoding(ch). (Thanks to report and
    patch by Jeroen Ooms in PR#18152.)
  * Setting the RNG to "Marsaglia-Multicarry" e.g., by RNGkind(), now
    warns in more places, thanks to Andr'e Gillibert's report and
    patch in PR#18168.
  * gray(numeric(), alpha=1/2) no longer segfaults, fixing PR#18183,
    reported by Till Krenz.
  * Fixed dnbinom(x, size=&lt;very_small&gt;, .., log=TRUE) regression,
    reported by Martin Morgan.
  * as.Date.POSIXlt(x) now keeps names(x), thanks to Davis Vaughan's
    report and patch in PR#18188.
  * model.response() now strips an "AsIs" class typically, thanks to
    Duncan Murdoch's report and other discussants in PR#18190.
  * try() is considerably faster in case of an error and long call,
    as e.g., from some do.call().  Thanks to Alexander Kaever's
    suggestion posted to R-devel.
  * qqline(y = &lt;object&gt;) such as y=I(.), now works, see also
    PR#18190.
  * Non-integer mgp par() settings are now handled correctly in
    axis() and mtext(), thanks to Mikael Jagan and Duncan Murdoch's
    report and suggestion in PR#18194.
  * formatC(x) returns length zero character() now, rather than ""
    when x is of length zero, as documented, thanks to Davis
    Vaughan's post to R-devel.
  * removeSource(fn) now retains (other) attributes(fn).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1647000000">- CHANGES IN R 4.1.3:
  NEW FEATURES:
  * The default version of Bioconductor has been changed to 3.14.
    (This is used by setRepositories and the menus in GUIs.)
  UTILITIES:
  * R CMD check --as-cran has a workaround for a bug in versions of
    file up to at least 5.41 which mis-identify DBF files last
    changed in 2022 as executables.
  C-LEVEL FACILITIES:
  * The legacy S-compatibility macros SINGLE_* in R_ext/Constants.h
    (included by R.h) are deprecated and will be removed in R 4.2.0.
  BUG FIXES:
  * Initialization of self-starting nls() models with initialization
    functions following the pre-R-4.1.0 API (without the ...
    argument) works again for now, with a deprecation warning.
  * Fixed quoting of ~autodetect~ in Java setting defaults to avoid
    inadvertent user lookup due to leading ~, reported in PR#18231 by
    Harold Gutch.
  * substr(., start, stop) &lt;- v now treats _negative_ stop values
    correctly.  Reported with a patch in PR#18228 by Brodie Gaslam.
  * Subscripting an array x without dimnames by a
    length(dim(x))-column character matrix gave "random" non-sense,
    now an error; reported in PR#18244 by Mikael Jagan.
  * ...names() now matches names(list(...)) closely, fixing PR#18247.
  * all.equal(*, scale = s) now works as intended when length(s) &gt; 1,
    partly thanks to Michael Chirico's PR#18272.
  * print(x) for long vectors x now also works for named atomic
    vectors or lists and prints the correct number when reaching the
    getOption("max.print") limit; partly thanks to a report and
    proposal by Hugh Parsonage to the R-devel list.
  * all.equal(&lt;selfStart&gt;, *) no longer signals a deprecation
    warning.
  * reformulate(*, response=r) gives a helpful error message now when
    length(r) &gt; 1, thanks to Bill Dunlap's PR#18281.
  * Modifying globalCallingHandlers inside withCallingHandlers() now
    works or fails correctly, thanks to Henrik Bengtsson's PR#18257.
  * hist(&lt;Date&gt;, breaks = "days") and hist(&lt;POSIXt&gt;, breaks = "secs")
    no longer fail for inputs of length 1.
  * qbeta(.001, .9, .009) and similar cases now converge correctly
    thanks to Ben Bolker's report in PR#17746.
  * window(x, start, end) no longer wrongly signals "'start' cannot
    be after 'end'", fixing PR#17527 and PR#18291.
  * data() now checks that its (rarely used) list argument is a
    character vector - a couple of packages passed other types and
    gave incorrect results.
  * which() now checks its arr.ind argument is TRUE rather coercing
    to logical and taking the first element - which gave incorrect
    results in package code.
  * model.weights() and model.offset() more carefully extract their
    model components, thanks to Ben Bolker and Tim Taylor's R-devel
    post.
  * list.files(recursive = TRUE) now shows all broken symlinks
    (previously, some of them may have been omitted, PR#18296).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1650628800">- CHANGES IN R 4.2.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * The formula method of aggregate() now matches the generic in
    naming its first argument x (resolving PR#18299 by Thomas
    Soeiro).
    This means that calling aggregate() with a formula as a named
    first argument requires name formula in earlier versions of R and
    name x now, so portable code should not name the argument (code
    in many packages did).
  * Calling &amp;&amp; or || with either argument of length greater than one
    now gives a warning (which it is intended will become an error).
  * Calling if() or while() with a condition of length greater than
    one gives an error rather than a warning.  Consequently,
    environment variable _R_CHECK_LENGTH_1_CONDITION_ no longer has
    any effect.
  * Windows users should consult the WINDOWS section below for some
    profound changes including
  * Support for 32-bit builds has been dropped.
  * UTF-8 locales are used where available.
  * The default locations for the R installation and personal
    library folder have been changed.
    Thanks to Tomas Kalibera for months of work on the Windows port
    for this release.
  NEW FEATURES:
  * matrix(x, n, m) now warns in more cases where length(x) differs
    from n * m, as suggested by Abby Spurdle and Wolfgang Huber in
    Feb 2021 on the R-devel mailing list.
    This warning can be turned into an error by setting environment
    variable _R_CHECK_MATRIX_DATA_ to TRUE: R CMD check --as-cran
    does so unless it is already set.
  * Function file_test() in package utils gains tests for symlinks,
    readability and writability.
  * capabilities("libxml") is now false.
    The description of capabilities("http/ftp") now reflects that it
    refers to the default method, no longer the internal one.
  * simplify2array() gains an except argument for controlling the
    exceptions used by sapply().
  * Environment variables R_LIBS_USER and R_LIBS_SITE are both now
    set to the R system default if unset or empty, and can be set to
    NULL to indicate an empty list of user or site library
    directories.
  * The warning for axis()(-like) calls in cases of relatively small
    ranges (typically in log-scale situations) is slightly improved
    _and_ suppressed from explicit calls to .axisPars() as has always
    been the intention.
  * The contrasts setter function `contrasts&lt;-` gains an explicit
    default how.many = NULL rather than just using missing(how.many).
  * grid.pretty() gains a new optional argument n = 5.
  * There is a new function .pretty() with option bounds as a
    technical-utility version of pretty().  It and pretty() gain a
    new argument f.min with a better than back-compatible default.
  * Function grDevices::axisTicks() and related functions such as
    graphics::axis() work better, notably for the log scale; partly
    because of the pretty() improvements, but also because care is
    taken e.g., when ylim is finite but diff(ylim) is infinite.
  * nclass.FD() gains a digits option.
  * The R Mathlib internal C function bd0() (called indirectly from a
    dozen probability density and distribution functions such as
    dpois(), dbinom(), dgamma(), pgamma() _etc_) has been
    complemented by a more sophisticated and (mostly) more accurate C
    function ebd0(), currently called only by internal dpois_raw()
    improving accuracy for R level dpois() and potentially others
    calling it such as dnbinom(), dgamma() or pgamma().  (Thanks to
    Morten Welinder's PR#15628.)
  * write.ftable() gains sep = " " argument as suggested by Thomas
    Soeiro.
  * The names of the locale categories supported by R's
    Sys.getlocale() and Sys.setlocale() are now provided by variable
    .LC.categories in the base namespace.
  * The Date and POSIXt methods for hist() and the histogram method
    for plot() now also use the new default col = "lightgray" in
    consistency with the corresponding change to hist()'s default for
    R 4.0.0.
  * hist.default() gains new fuzz argument, and the histogram plot
    method no longer uses fractional axis ticks when displaying
    counts ("Frequency").
  * mapply() and hence Map() now also obey the "max-or-0-if-any"
    recycling rule, such that, e.g., Map(`+`, 1:3, 1[0]) is valid
    now.
  * as.character(&lt;obj&gt;) for "hexmode" or "octmode" objects now
    fulfils the important basic rule as.character(x)[j] ===
    as.character(x[j]).
  * The set utility functions, notably intersect() have been tweaked
    to be more consistent and symmetric in their two set arguments,
    also preserving a common mode.
  * substr(ch, start,end) &lt;- new now e.g., preserves names(ch); ditto
    for substring(), thanks to a patch from Brodie Gaslam.
  * plot(&lt;lm&gt;) gains a extend.ylim.f argument, in partial response to
    PR#15285; further PR#17784 is fixed thanks to several
    contributors and a patch by Elin Waring.  The Cook's dist
    contours get customizable via cook.col and cook.lty with a
    different default color and their legend is nicer by default and
    customizable via cook.legendChanges.
  * Attempting to subset an object that is not subsettable now
    signals an error of class notSubsettableError. The
    non-subsettable object is contained in the object field of the
    error condition.
  * Subscript-out-of-bounds errors are now signaled as errors of
    class subscriptOutOfBoundsError.
  * Stack-overflow errors are now signaled as errors inheriting from
    class stackOverflowError. See ?stackOverflowError for more
    details.
  * New partly experimental Sys.setLanguage() utility, solving the
    main problem of PR#18055.
  * gettext() and gettextf() get a new option trim = TRUE which when
    set to false allows translations for strings such as "Execution
    halted\n" typical for C code.
  * An experimental implementation of hash tables is now available.
    See ?hashtab for more details.
  * identical() gains a extptr.as.ref argument for requesting that
    external pointer objects be compared as reference objects.
  * reorder() gets an argument decreasing which it passes to sort()
    for level creation; based on the wish and patch by Thomas Soeiro
    in PR#18243.
  * as.vector() gains a data.frame method which returns a simple
    named list, also clearing a long standing 'FIXME' to enable
    as.vector(&lt;data.frame&gt;, mode="list").  This breaks code relying
    on as.vector(&lt;data.frame&gt;) to return the unchanged data frame.
  * legend() is now vectorized for arguments cex, x.intersp, and
    text.width.  The latter can now also be specified as a vector
    (one element for each column of the legend) or as NA for
    computing a proper column wise maximum value of strwidth(legend).
    The argument y.intersp can be specified as a vector with one
    entry for each row of the legend.
    legend() also gains new arguments title.cex and title.font.
    Thanks to Swetlana Herbrandt.
  * Deparsing no longer remaps attribute names dim, dimnames, levels,
    names and tsp to historical S-compatible names (which structure()
    maps back).
  * sample() and sample.int() have additional sanity checks on their
    size and n arguments.
    all.equal.numeric() gains a sanity check on its tolerance
    argument - calling all.equal(a, b, c) for three numeric vectors
    is a surprisingly common error.
    mean(na.rm =), rank(na.last =), barplot(legend.text =),
    boxplot(), contour(drawlabels =), polygon(border =) and
    methods::is(class2 =) have more robust sanity checks on their
    arguments.
    R CMD Rd2pdf (used by R CMD check) has a more robust sanity check
    on the format of \alias{} commands.
  * psigamma(x, deriv) for negative x now also works for deriv = 4
    and 5; their underlying C level dpsifn() is documented in
    'Writing R Extensions'.
  * The HTML help system now uses HTML5 (wish of PR#18149).
  * ks.test() now provides exact p-values also with ties and MC
    p-values in the two-sample (Smirnov) case.  By Torsten Hothorn.
  * ks.test() gains a formula interface, with y ~ 1 for the
    one-sample (Kolmogorov) test and y ~ group for the two-sample
    (Smirnov) test.  Contributed by Torsten Hothorn.
  * The return value from ks.test() now has class c("ks.test",
    "htest") - packages using try() need to take care to use
    inherits() and not == on the class.
  * New functions psmirnov(), qsmirnov() and rsmirnov() in package
    stats implementing the asymptotic and exact distributions of the
    two-sample Smirnov statistic.
  * iconv() now allows sub = "c99" to use C99-style escapes for UTF-8
    inputs which cannot be converted to encoding to.
  * In a forward pipe |&gt; expression it is now possible to use a named
    argument with the placeholder _ in the rhs call to specify where
    the lhs is to be inserted.  The placeholder can only appear once
    on the rhs.
  * The included LAPACK sources have been updated to version 3.10.0,
    except for the four Fortran 77 routines which 3.10.0 has
    re-implemented in Fortran 90 (where the older versions have been
    retained as the R build process does not support Fortran 90).
  * path.expand() and most other uses of tilde expansion now warn if
    a path would be too long if expanded.  (An exception is
    file.exists(), which silently returns false.)
  * trunc(&lt;Date&gt;, *) now supports units = "months" or "years" for
    consistency with the POSIXt method, thanks to Dirk Eddelbuettel's
    proposal in PR#18099.
  * list2DF() now checks that its arguments are of the same length,
    rather than use recycling.
  * The HTML help system has several new features: LaTeX-like math
    can be typeset using either KaTeX or MathJax, usage and example
    code is highlighted using Prism, and for dynamic help the output
    of examples and demos can be shown within the browser if the
    knitr package is installed. These features can be disabled by
    setting the environment variable _R_HELP_ENABLE_ENHANCED_HTML_ to
    a false value.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 15
    and so packages that provide graphics devices should be
    reinstalled.
  * The grid package now allows the user to specify a "vector" of
    pattern fills.  The fill argument to gpar() accepts a list of
    gradients and/or patterns and the functions linearGradient(),
    radialGradient(), and pattern() have a new group argument.
    Points grobs (data symbols) can now also have a pattern fill.
    The grobCoords() function now returns a more informative and
    complex result.
  * The grid package has new functions for drawing isolated groups:
    grid.group(), grid.define(), and grid.use().  These functions add
    compositing operators and affine transformations to R's graphics
    capabilities.
    The grid package also has new functions for stroking and filling
    paths: grid.stroke(), grid.fill(), and grid.fillStroke().
    A new function as.path() allows the user to specify the fill rule
    for a path that is to be used for clipping, stroking, or filling;
    available options are "winding" and "evenodd".  A new function
    as.mask() allows the user to specify the type of a mask;
    available options are "alpha" and "luminance".
    These new features are only supported so far (at most) on the
    Cairo-based graphics devices and on the pdf() device.
  * dev.capabilities() reports on device support for the new
    features.
  * par() now warns about unnamed non-character arguments to prevent
    misuse such as {usr &lt;- par("usr"); par(usr)}.
  INSTALLATION:
  * Facilities for accessing ftp:// sites are no longer tested
    (except _pro tem_ for curlGetHeaders()) as modern browsers have
    removed support.
  * R can now be built with DEFS = -DSTRICT_R_HEADERS .
  PACKAGE INSTALLATION:
  * R CMD INSTALL no longer tangles vignettes. This completes an R
    CMD build change in R 3.0.0 and affects packages built before R
    3.0.2. Such packages should be re-made with R CMD build to have
    the tangled R code of vignettes shipped with the tarball.
  * USE_FC_LEN_T will become the default: this uses the correct
    prototypes for Fortran BLAS/LAPACK routines called from C/C++,
    and requires adjustment of most such calls - see 'Writing R
    Extensions' SS6.6.2.  (This has been supported since R 3.6.2.)
  * Package installation speed for packages installed with
    keep.source has been improved. This resolve the issue reported by
    Ofek Shilon in PR#18236.
  UTILITIES:
  * R CMD check can optionally report files/directories left behind
    in home, /tmp (even though TMPDIR is set) and other directories.
    See the "R Internals" manual for details.
  * R CMD check now reports byte-compilation errors during
    installation.  These are not usually fatal but may result in
    parts of the package not being byte-compiled.
  * _R_CHECK_DEPENDS_ONLY_ can be applied selectively to examples,
    tests and/or vignettes in R CMD check: see the "R Internals"
    manual.
  * _R_CHECK_SRC_MINUS_W_IMPLICIT_ now defaults to true: recent
    versions of Apple clang on macOS have made implicit function
    declarations in C into a compilation error.
  * R CMD check --as-cran makes use of the environment variable
    AUTORECONF.  See the "R Internals" manual SS8 for further details.
  * R CMD check --use-valgrind also uses valgrind when re-building
    vignettes as some non-Sweave vignettes unhelpfully comment out
    all their code when R CMD check runs vignettes.
  * Errors in re-building vignettes (unless there are LaTeX errors)
    are reported by R CMD check as ERROR rather than WARNING when
    running vignettes has been skipped (as it frequently is in CRAN
    checks and by --as-cran).
  * R CMD Rd2pdf gains a --quiet option that is used by R CMD build
    when building the PDF package manual.
  * R CMD Rd2pdf now always runs LaTeX in batch mode, consistent with
    Texinfo &gt;= 6.7. The --batch option is ignored.
  * R CMD build and R CMD check now include the Rd file name and line
    numbers in the error message of an \Sexpr evaluation failure.
  * For packages using the \doi Rd macro (now an install-time \Sexpr)
    but no other dynamic Rd content, R CMD build now produces a
    smaller tarball and is considerably faster - skipping temporary
    package installation.
  C-LEVEL FACILITIES:
  * The non-API header R_ext/R-ftp-http.h is no longer provided, as
    the entry points it covered are now all defunct.
  * A number of non-API declarations and macro definitions have been
    moved from the installed header Rinternals.h to the internal
    header Defn.h. Packages that only use entry points and
    definitions documented to be part of the API as specified in
    'Writing R Extensions' SS6 should not be affected.
  * The macro USE_RINTERNALS no longer has any effect when compiling
    package code.  Packages which also use R_NO_REMAP will need to
    ensure that the remapped names are used for calls to API
    functions that were formerly also made available as macros.
  * The deprecated legacy S-compatibility macros PROBLEM, MESSAGE,
    ERROR, WARN, WARNING, RECOVER, ... are no longer defined in
    R_exts/RS.h (included by R.h).  Replace these by calls to
    Rf_error and Rf_warning (defined in header R_ext/Error.h included
    by R.h).
    Header R_ext/RS.h no longer includes R_ext/Error.h.
  * Header R_ext/Constants.h (included by R.h) when included from C++
    now includes the C++ header cfloat rather than the C header
    float.h (now possible as C++11 is required).
  * The legacy S-compatibility macros DOUBLE_* in R_ext/Constants.h
    (included by R.h) are deprecated.
  * The deprecated S-compatibility macros SINGLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * R_Calloc, R_Free and R_Realloc are preferred to their unprefixed
    forms and error messages now use the prefix. These forms were
    introduced in R 3.4.0 and are available even when
    STRICT_R_HEADERS is defined.
  * rmultinom has been documented in 'Writing R Extensions' SS6 so is
    now part of the R API.
  * Similarly, Rtanpi, called from R level tanpi() is now part of the
    R API.
  * The long-deprecated, undocumented and non-API entry point call_R
    is no longer declared in R_ext/RS.h (included by R.h).
  * The header S.h which has been unsupported since Jan 2016 has been
    removed.  Use R.h instead.
  DEPRECATED AND DEFUNCT:
  * The (non-default and deprecated) method = "internal" for
    download.file() and url() no longer supports http:// nor ftp://
    URIs.  (It is used only for file:// URIs.)
    On Windows, download.file(method = "wininet") no longer supports
    ftp:// URIs.  (It is no longer the default method, which is
    "libcurl" and does.)
    On Windows, the deprecated method = "wininet" now gives a warning
    for http:// and https:// URIs for both download.file() and url().
    (It is no longer the default method.)
  * On Windows, the command-line option --max-mem-size and
    environment variable R_MAX_MEM_SIZE are defunct.  The memory
    allocation limit was important for 32-bit builds, but these are
    no longer supported.
  * default.stringsAsFactors() is now formally deprecated, where that
    was only mentioned on its regular help page, previously.  So it
    now gives a warning if called.
  * unix.time() is defunct now; it had been deprecated since R 3.4.0.
  BUG FIXES:
  * Setting digits = 0 in format(), print.default() (and hence
    typically print()) or options() is again invalid.  Its behaviour
    was platform-dependent, and it is unclear what "zero significant
    digits" should mean (PR#18098).
  * Messages from C code in the cairo section of package grDevices
    are now also offered for translation, thanks to Michael Chirico's
    PR#18123.
  * mean(x) with finite x now is finite also without "long.double"
    capability.
  * R CMD Rd2pdf no longer leaves an empty build directory behind
    when it aborts due to an already existing output file.  (Thanks
    to Sebastian Meyer's PR#18141.)
  * density(x, weights = w, na.rm = TRUE) when anyNA(x) is true, now
    removes weights "in parallel" to x, fixing PR#18151, reported by
    Matthias Gondan.  Additionally, it gets a subdensity option.
  * Conversion of \Sexpr[]{&lt;expR&gt;} to LaTeX or HTML no longer
    produces long blocks of empty lines when &lt;expR&gt; itself contains
    several lines all producing empty output.  Thanks to a report and
    patch by Ivan Krylov posted to R-devel.
  * R CMD build no longer fails if a package vignette uses child
    documents and inst/doc exists.  (Thanks to Sebastian Meyer's
    PR#18156.)
  * When an R documentation ('help' source) file man/foo.Rd in a
    package has \donttest{..} examples with a syntax error, it is now
    signalled as ERROR and with correct line numbers relating to the
  * -Ex.R file, thanks to Duncan Murdoch and Sebastian Meyer's
    reports and patch proposals in PR#17501.
  * Improved determination of the correct translation domain in
    non-base packages, addressing the combination of PR#18092 and
    PR#17998 (#c6) with reports and _augmented_ patch #2904 by
    Suharto Anggono.
    Note that "R-base" is no longer the default domain e.g., for
    top-level calls to gettext(); rather translation needs explicit
    domain = * specification in such cases.
  * identical(attrib.as.set=FALSE) now works correctly with data
    frames with default row names (Thanks to Charlie Gao's PR#18179).
  * txtProgressBar() now enforces a non-zero width for argument char,
    without which no progress can be visible.
  * dimnames(table(d)) is more consistent in the case where d is a
    list with a single component, thanks to Thomas Soeiro's report to
    R-devel.
    Further, table(d1, d2) now gives an error when d1 and d2 are data
    frames as suggested by Thomas in PR#18224.
  * Fix for drawing semi-transparent lines and fills on the native
    Windows graphics device (PR#18219 and PR#16694).  Thanks to Nick
    Ray for helpful diagnosis on Bugzilla.
  * The deparser now wraps sub-expressions such as if(A) ..  with
    parentheses when needed; thanks to Duncan Murdoch's PR#18232 and
    Lionel Henry's patches there.
  * remove.packages() no longer tries to uninstall Priority: base
    packages, thanks to a report and suggestions by Colin Fay in
    PR#18227.
  * win.metafile() now has xpinch and ypinch arguments so that the
    user can override Windows' (potentially wrong) guess at device
    dimensions.
  * x[i] and x[[i]] for non-integer i should now behave in all cases
    as always documented: the index used is equivalent to
    as.integer(i) unless that would overflow where trunc(i) is used
    instead; thanks to Suharto Anggono's report and patch proposals
    in PR#17977.
  * asOneSidedFormula() now associates the resulting formula with the
    global environment rather than the evaluation environment created
    for the call.
  * &lt;bibentry&gt;$name now matches the field name case-insensitively,
    consistent with bibentry() creation and the replacement method.
  * cbind() failed to detect some length mismatches with a mixture of
    time-series and non-time-series inputs.
  * The default LaTeX style file Sweave.sty used by the RweaveLatex
    driver no longer loads the obsolete ae package; thanks to a
    report by Thomas Soeiro in PR#18271.  Furthermore, it now skips
    \usepackage[T1]{fontenc} for engines other than pdfTeX (if
    detected) or if the new [nofontenc] option is used.
  * smooth.spline() now stores its logical cv argument more safely,
    fixing a rare bug when printing, and also stores n.
  * smooth.spline(x,y,*) now computes the cv.crit statistic
    correctly, also when is.unsorted(x), fixing PR#18294.
  * The data.frame method of rbind() now warns when binding
    not-wholly-recycling vectors, by analogy to the default method
    (for matrices).
  * setAs() finds the correct class for name to when multiple
    packages define a class with that name. Thanks to Gabor Csardi
    for the report.
  * Fix for detaching a package when two classes of the same name are
    present in method signatures for the same generic. Thanks to
    Gabor Csardi for the report.
  * match.arg("", c("", "a", "B")) gives a better error message, in
    part from PR#17959, thanks to Elin Waring.
  * R CMD Sweave --clean no longer removes pre-existing files or
    subdirectories (PR#18242).
  * The quartz() device no longer splits polylines into subpaths.
    That has caused narrowly-spaced lines with many points to always
    look solid even when dashed line type was used due to dash phase
    restarts.
  * Deparsing constructs such as quote(1 + `!`(2) + 3) works again as
    before R 3.5.0, thanks to the report and patch in PR#18284 by
    Suharto Anggono.
  * as.list(f) for a factor f now keeps names(f), fixing PR#18309.
  * qbeta(.001, .9, .009) and analogous qf() calls now return a
    correct value instead of NaN or wrongly 1, all with a warning;
    thanks to the report by Ludger Goeminne in PR#18302.
  * plot.lm() failed to produce the plot of residuals vs.  factor
    levels (i.e., which=5 when leverages are constant) for models
    with character predictors (PR#17840).
  * interaction.plot(..., xtick = TRUE) misplaced the x-axis line
    (PR#18305).
  * Not strictly fixing a bug, format()ing and print()ing of
    non-finite Date and POSIXt values NaN and +/-Inf no longer show
    as NA but the respective string, e.g., Inf, for consistency with
    numeric vector's behaviour, fulfilling the wish of PR#18308.
  * R CMD check no longer runs test scripts generated from
    corresponding .Rin files twice and now signals an ERROR if
    processing an .Rin script fails.
  * tools::Rd2txt() used for plain-text help pages now renders \hrefs
    (if tools::Rd2txt_options(showURLs = TRUE)) and \urls with
    percent-encoding and standards-compliant delimiting style (angle
    brackets and no URL: prefix).  \email is now rendered with a
    mailto: prefix.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1655985600">- CHANGES IN R 4.2.1:
  NEW FEATURES:
  * New function utils::findCRANmirror() to find out if a CRAN mirror
    has been selected, otherwise fallback to the main site.  This
    behaves in the same way as tools::CRAN_package_db() and is
    intended for packages wishing to access CRAN for purposes other
    than installing packages.
    The need for this was shown by a day when the main CRAN website
    was offline and a dozen or so packages which had its URL
    hardcoded failed their checks.
  INSTALLATION on a UNIX-ALIKE:
  * The libraries searched for by --with-blas (without a value) now
    include BLIS (after OpenBLAS but before ATLAS).  And on macOS,
    the Accelerate framework (after ATLAS).  (This is patterned after
    the AX_BLAS macro from the Autoconf Archive.)
  * The included LAPACK sources have been updated to 3.10.1.
  UTILITIES:
  * The (full path to) the command tidy to be used for HTML
    validation can be set by environment variable R_TIDYCMD.
  * Setting environment variable _R_CHECK_RD_VALIDATE_RD2HTML_ to a
    false value will override R CMD check --as-cran and turn off HTML
    validation.  This provides a way to circumvent a problematic
    tidy.
    The 2006 version that ships with macOS is always skipped.
  C-LEVEL FACILITIES:
  * The undocumented legacy declarations of Sint, Sfloat, SINT_MAX
    and SINT_MIN in header R.h are deprecated.
  BUG FIXES:
  * fisher.test(d) no longer segfaults for "large" d; fixing PR#18336
    by preventing/detecting an integer overflow reliably.
  * tar(., files=*) now produces correctly the warning about invalid
    uid or gid of files, fixing PR#18344, reported by Martin Morgan.
  * tk_choose.files() with multi = FALSE misbehaved on paths
    containing spaces (PR#18334) (regression introduced in R 4.0.0).
  * sort(x, partial = ind, *) now works correctly notably for the
    non-default na.last = FALSE or TRUE, fixing PR#18335 reported by
    James Edwards.
  * Environment variable _R_CHECK_XREFS_REPOSITORIES_ is only used
    for checking .Rd cross-references in R CMD check (as documented)
    and not for other uses looking for a CRAN mirror.
  * The search for a CRAN mirror when checking packages now uses
    getOption("repos") if that specifies a CRAN mirror, even when it
    does not also specify all three Bioconductor repositories (as was
    previously required).
  * The HTML code generated by tools::Rd2HTML() has been improved to
    pass tidy 5.8.0.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1667217600">- CHANGES IN R 4.2.2:
  NEW FEATURES:
  * tools::Rdiff(useDiff = TRUE) checks for the presence of an
    external diff command and switches to useDiff = FALSE if none is
    found.  This allows R CMD Rdiff to always work.
  * On Windows, environment variable R_LIBCURL_SSL_REVOKE_BEST_EFFORT
    can be used to switch to only 'best-effort' SSL certificate
    revocation checks with the default "libcurl" download method.
    This reduces security, but may be needed for downloads to work
    with MITM proxies (PR#18379).
  * (macOS) The run-time check for libraries from XQuartz for X11 and
    Tcl/Tk no longer uses otool from the Apple Developer Tools
    (PR#18400).
  * The LaTeX style for producing the PDF manuals, Rd.sty, now loads
    the standard amsmath, amsfonts and amssymb packages for greater
    coverage of math commands in the Rd \eqn and \deqn macros.  The
    \mathscr LaTeX command is also provided (via the mathrsfs
    package, if available, or the amsfonts bundle otherwise),
    fulfilling the wish of PR#18398.
  * (Windows) The default format of readClipboard() and
    writeClipboard() has been changed to 13 (CF_UNICODETEXT).
  INSTALLATION on a UNIX-ALIKE:
  * The PDF manuals (if built) can be compacted by the new target
    make compact-pdf (at the top level or in directory doc/manual).
  * There is now configure support for LLVM clang 15 on Linux, which
    defaults to position-independent (PIE) executables whereas
    gfortran does not.
  * Many small changes to ease compilation (and suppress warnings)
    with LLVM clang 15.
  BUG FIXES:
  * Rscript -e would fail if stdin were closed (Reported by Henrik
    Bengtsson.)
  * qt(*, log.p=TRUE) in outer tails no longer produces NaN in its
    final steps, thus fixing PR#18360.
  * tools::Rd2latex() now escapes hashes and ampersands when writing
    URLs, fixing LaTeX errors with such URLs in \tabular.
  * When isGeneric(f, fdef=*) is used with mismatching names, the
    warning is better understandable; reported (with fix) in PR#18370
    by Gabe Becker.
  * poly(x, n) now works again (and is now documented) when x is a
    "Date" or "POSIXct" object, or of another class while fulfilling
    mode(x) == "numeric".  This also enables poly(x, *, raw=TRUE) for
    such variables.  Reported by Michael Chirico to R-devel.
  * write.table(), write.csv() and write.csv2() restore their
    numerical precision (internal equivalent of digits = 15) after an
    interrupt (PR#18384).
  * One can now read also byte FF from a clipboard connection
    (PR#18385).
  * source("") and source(character()) now give more helpful error
    messages.
  * R CMD check --as-cran set _R_CHECK_TIMINGS_ too late to have the
    intended effect.
  * as.POSIXlt(x) now also works with very large dates x, fixing
    PR#18401 reported by Hannes M"uhleisen.
  * Files can now be extracted even from very large zip archives
    (PR#18390, thanks to Martin Jakt).
  * Non-finite objects of class "POSIXlt" are now correctly coerced
    to classes "Date" and "POSIXct"; following up on the extension to
    format() them correctly.
  * Added methods for is.finite(), is.infinite() and is.nan() for
    "POSIXlt" date-time objects.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1678881600">- CHANGES IN R 4.2.3:
  C-LEVEL FACILITIES:
  * The definition of DL_FUNC in R_ext/Rdynload.h has been changed to
    be fully C-compliant.  This means that functions loaded _via_ for
    example R_GetCCallable need to be cast to an appropriate type if
    they have any arguments.
  * .Machine has a new element sizeof.time_t to identify old systems
    with a 32-bit type and hence a limited range of date-times (and
    limited support for dates millions of years from present).
  PACKAGE INSTALLATION:
  * (Windows) The default C++ standard had accidentally been left at
    C++11 when it was changed to C++14 on Unix.
  BUG FIXES:
  * As "POSIXlt" objects may be "partially filled" and their list
    components meant to be recycled, length() now is the length of
    the longest component.
  * as.POSIXlt.Date() could underflow for dates in the far past (more
    than half a million years BCE).
  * as.Date.POSIXlt(x) would return "1970-01-01" instead of NA in R
    4.2.2, e.g., for
    x &lt;- as.POSIXlt(c("2019-01-30","2001-1-1"))
    x$mon &lt;- c(0L, NA); as.Date(x)
  * R CMD check failed to apply enabled _R_CHECK_SUGGESTS_ONLY_ to
    examples and vignettes (regression in R 4.2.0).
  * R CMD check did not re-build vignettes in separate processes by
    default (regression in R 4.2.0).
  * Running examples from HTML documentation now restores previous
    knitr settings and options (PR#18420).
  * Quartz: fonts are now located using Core Graphics API instead of
    deprecated ATS which is no longer supported in the macOS 13 SDK
    (PR#18426).  This also addresses an issue where the currently
    used font in the Quartz device context was not correctly
    retained.
  * (Windows) Math symbols in text drawing functions are again
    rendered correctly (PR#18440).  This fixes a regression in R
    4.2.1 caused by a fix in PR#18382 which uncovered an issue in
    GraphApp due to which the symbol charset was not used with TT
    Symbol font face.
  * (Windows) Installing a package with a src/Makefile.{win,ucrt}
    file includes ~/.R/Makevars.win64 in the search for user
    makevars, as documented in "R Installation and Administration"
    and done for packages with a src/Makevars.{win,ucrt} file.
  * format(&lt;POSIXlt_w/_unbalanced_sec&gt;, "....%OS&lt;n&gt;") with n &gt; 0 no
    longer accidentally uses the unbalanced seconds, thanks to
    Suharto Anggono's report (including patch) in PR#18448.
  * solve.default(a, b) works around issues with some versions of
    LAPACK when a contains NA or NaN values.
  * When UseMethod() cannot dispatch, it no longer segfaults
    producing the error message in case of a long class(), thanks to
    Joris Vankerschaver's report (including patch) in PR#18447.
  * When example(foo, ..) produces graphics on an interactive device
    it needs to open itself, it now leaves devAskNewPage() unchanged
    even when it was FALSE, thus fixing a 14 years old '&lt;FIXME&gt;'.
  * packageDescription() again catches errors from encoding
    conversions. This also fixes broken packageVersion() in C locale
    on systems where iconv does not support transliteration.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1681128000">- add patch to build with libcurl &gt;= 8</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1682078400">- CHANGES IN R 4.3.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Calling &amp;&amp; or || with LHS or (if evaluated) RHS of length greater
    than one is now always an error, with a report of the form
    'length = 4' in coercion to 'logical(1)'
    Environment variable _R_CHECK_LENGTH_1_LOGIC2_ no longer has any
    effect.
  NEW FEATURES:
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.10.1.  (This caused some platform-dependent
    changes to package check output.)  And then to the sources from
    LAPACK version 3.11.0 (with changes only to double complex
    subroutines).
  * The included LAPACK sources have been updated to include the four
    Fortran 90 routines rather than their Fortran 77 predecessors.
    This may give some different signs in SVDs or
    eigendecompositions..  (This completes the transition to LAPACK
    3.10.x begun in R 4.2.0.)
  * The LAPACK sources have been updated to version 3.11.0.  (No new
    subroutines have been added, so this almost entirely bug fixes:
    Those fixes do affect some computations with NaNs, including R's
    NA.)
  * The parser now signals _classed_ errors, notably in case of the
    pipe operator |&gt;.  The error object and message now give line and
    column numbers, mostly as proposed and provided by Duncan Murdoch
    in PR#18328.
  * toeplitz() is now generalized for asymmetric cases, with a
    toeplitz2() variant.
  * xy.coords() and xyz.coords() and consequently, e.g., plot(x,y,
    log = "y") now signal a _classed_ warning about negative values
    of y (where log(.) is NA).  Such a warning can be specifically
    suppressed or caught otherwise.
  * Regular expression functions now check more thoroughly whether
    their inputs are valid strings (in their encoding, e.g. in
    UTF-8).
  * The performance of grep(), sub(), gsub() and strsplit() has been
    improved, particularly with perl = TRUE and fixed = TRUE.  Use of
    useBytes = TRUE for performance reasons should no longer be
    needed and is discouraged: it may lead to incorrect results.
  * apropos() gains an argument dot_internals which is used by the
    completion (help(rcompgen)) engine to also see base internals
    such as .POSIXct().
  * Support in tools::Rdiff() for comparing uncompressed PDF files is
    further reduced - see its help page.
  * qqplot(x, y, ...) gains conf.level and conf.args arguments for
    computing and plotting a confidence band for the treatment
    function transforming the distribution of x into the distribution
    of y (Switzer, 1976, _Biometrika_). Contributed by Torsten
    Hothorn.
  * Performance of package_dependencies() has been improved for cases
    when the number of dependencies is large.
  * Strings newly created by gsub(), sub() and strsplit(), when any
    of the inputs is marked as "bytes", are also marked as "bytes".
    This reduces the risk of creating invalid strings and accidental
    substitution of bytes deemed invalid.
  * Support for readLines(encoding = "bytes") has been added to allow
    processing special text files byte-by-byte, without creating
    invalid strings.
  * iconv(from = "") now takes into account any declared encoding of
    the input elements and uses it in preference to the native
    encoding.  This reduces the risk of accidental creation of
    invalid strings, particularly when different elements of the
    input have different encoding (including "bytes").
  * Package repositories in getOption("repos") are now initialized
    from the repositories file when utils is loaded (if not already
    set, e.g., in .Rprofile).  (From a report and patch proposal by
    Gabriel Becker in PR#18405.)
  * compactPDF() gets a verbose option.
  * type.convert() and hence read.table() get new option tryLogical =
    TRUE with back compatible default.  When set to false, converts
    "F" or "T" columns to character.
  * Added new unit prefixes "R" and "Q" for abbreviating
    (unrealistically large) sizes beyond 10^{27} in standard = "SI",
    thanks to Henrik Bengtsson's PR#18435.
  * as.data.frame()'s default method now also works fine with atomic
    objects inheriting from classes such as "roman", "octmode" and
    "hexmode", such fulfilling the wish of PR#18421, by Benjamin
    Feakins.
  * The as.data.frame.vector() utility now errors for wrong-length
    row.names.  It warned for almost six years, with "Will be an
    error!".
  * sessionInfo() now also contains La_version() and reports codepage
    and timezone when relevant, in both print() and toLatex() methods
    which also get new option tzone for displaying timezone
    information when locale = FALSE.
  * New function R_compiled_by() reports the C and Fortran compilers
    used to build R, if known.
  * predict(&lt;lm&gt;, newdata = *) no longer unnecessarily creates an
    offset of all 0s.
  * solve() for complex inputs now uses argument tol and by default
    checks for 'computational singularity' (as it long has done for
    numeric inputs).
  * predict(&lt;rank-deficient lm&gt;, newdata=*) now obeys a new argument
    rankdeficient, with new default "warnif", warning only if there
    are non-estimable cases in newdata.  Other options include
    rankdeficient = "NA", predicting NA for non-estimable newdata
    cases.  This addresses PR#15072 by Russ Lenth and is based on his
    original proposal and discussions in PR#16158 also by David Firth
    and Elin Waring.  Still somewhat experimental.
  * Rgui console implementation now works better with the NVDA screen
    reader when the full blinking cursor is selected.  The underlying
    improvements in cursor handling may help also other screen
    readers on Windows.
  * The drop-field control in GraphApp can now be left with the TAB
    key and all controls can be navigated in the reverse order using
    the Shift+TAB key, improving accessibility of the Rgui
    configuration editor.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now fully accurate
    (instead of to "only" minimally five digits).
  * demo(error.catching) now also shows off withWarnings() and
    tryCatchWEMs().
  * As an experimental feature the placeholder _ can now also be used
    in the rhs of a forward pipe |&gt; expression as the first argument
    in an extraction call, such as _$coef. More generally, it can be
    used as the head of a chain of extractions, such as _$coef[[2]].
  * Spaces in the environment variable used to choose the R session's
    temporary directory (TMPDIR, TMP and TEMP are tried in turn) are
    now fatal.  (On Windows the 'short path' version of the path is
    tried and used if that does not contain a space.)
  * all.equal.numeric() gets a new optional switch giveErr to return
    the numeric error as attribute.  Relatedly,
    stopifnot(all.equal&lt;some&gt;(a, b, ..)) is as "smart" now, as
    stopifnot(all.equal(....)) has been already, thus allowing
    customized all.equal&lt;Some&gt;() wrappers.
  * R on Windows is now able to work with path names longer than 260
    characters when these are enabled in the system (requires at
    least Windows 10 version 1607).  Packages should be updated to
    work with long paths as well, instead of assuming PATH_MAX to be
    the maximum length.  Custom front-ends and applications embedding
    R need to update their manifests if they wish to allow this
    feature.  See
    &lt;https://blog.r-project.org/2023/03/07/path-length-limit-on-windows&gt;
    for more information.
  * 'Object not found' and 'Missing argument' errors now give a more
    accurate error context. Patch provided by Lionel Henry in
    PR#18241.
  * The @ operator is now an S3 generic. Based on contributions by
    Tomasz Kalinowski in PR#18482.
  * New generic chooseOpsMethod() provides a mechanism for objects to
    resolve cases where two suitable methods are found for an Ops
    Group Generic. This supports experimenting with alternative
    object systems. Based on contributions by Tomasz Kalinowski in
    PR#18484.
  * inherits(x, what) now accepts values other than a simple
    character vector for argument what. A new generic, nameOfClass(),
    is called to resolve the class name from what. This supports
    experimenting with alternative object systems. Based on
    contributions by Tomasz Kalinowski in PR#18485.
  * Detection of BLAS/LAPACK in use (sessionInfo()) with FlexiBLAS
    now reports the current backend.
  * The "data.frame" method for subset() now warns about extraneous
    arguments, typically catching the use of = instead of == in the
    subset expression.
  * Calling a:b when numeric a or b is longer than one may now be
    made into an error by setting environment variable
    _R_CHECK_LENGTH_COLON_ to a true value, along the proposal in
    PR#18419 by Henrik Bengtsson.
  * density(x, weights = *) now warns if automatic bandwidth
    selection happens without using weights; new optional warnWbw may
    suppress the warning.  Prompted by Christoph Dalitz' PR#18490 and
    its discussants.
  * rm(list = *) is faster and more readable thanks to Kevin Ushey's
    PR#18492.
  * The plot.lm() function no longer produces a normal Q-Q plot for
    GLMs. Instead it plots a half-normal Q-Q plot of the absolute
    value of the standardized deviance residuals.
  * The print() method for class "summary.glm" no longer shows
    summary statistics for the deviance residuals by default.  Its
    optional argument show.residuals can be used to show them if
    required.
  * The tapply() function now accepts a data frame as its X argument,
    and allows INDEX to be a formula in that case. by.data.frame()
    similarly allows INDICES to be a formula.
  * The performance of df[j] &lt;- value (including for missing j) and
    write.table(df) has been improved for data frames df with a large
    number of columns.  (Thanks to Gabriel Becker's PR#18500,
    PR#18503 and discussants, prompted by a report from Toby Dylan
    Hocking on the R-devel mailing list.)
  * The matrix multiply operator %*% is now an S3 generic, belonging
    to new group generic matrixOps.  From Tomasz Kalinowski's
    contribution in PR#18483.
  * New function array2DF() to convert arrays to data frames,
    particularly useful for the list arrays created by tapply().
  DATES and TIMES:
  * On platforms where (non-UTC) datetimes before 1902 (or before
    1900 as with system functions on recent macOS) are guessed by
    extrapolating time zones from 1902-2037, there is a warning at
    the first use of extrapolation in a session.  (As all time zones
    post 2037 are extrapolation, we do not warn on those.)
  * (Platforms using --with-internal-tzone, including Windows and by
    default macOS). How years are printed in dates or date-times can
    be controlled by environment variable R_PAD_YEARS_BY_ZERO.  The
    default remains to pad to 4 digits by zeroes, but setting value
    no gives no padding (as used by default by glibc).
  * strftime() tries harder to determine the offset for the "%z"
    format, and succeeds on the mainstream R platforms.
  * strftime() has a limit of 2048 bytes on the string produced -
    attempting to exceed this is an error.  (Previously it silently
    truncated at 255 bytes.)
  * sessionInfo() records (and by default prints) the system time
    zone as part of the locale information.  Also, the source
    (system/internal) of the date-time conversion and printing
    functions.
  * Objects of class "POSIXlt" created in this version of R always
    have 11 components: component zone is always set, and component
    gmtoff is set for times in UTC and usually set on the (almost
    all) platforms which have C-level support, otherwise is NA.
  * There are comprehensive validity checks on the structure of
    objects of class "POSIXlt" when converting (including formatting
    and printing).  (This avoids mis-conversions of hand-crafted
    objects.)
  * There is some support for using the native date-time routines on
    macOS: this is only viable on recent versions (e.g. 12.6 and 13)
    and does get wrong some historical changes (before 1900, during
    WWII).  Use of --with-internal-tzone remains the default.
  * as.POSIXct(&lt;numeric&gt;) and as.POSIXlt(.) (without specifying
    origin) now work.  So does as.Date(&lt;numeric&gt;).
  * as.Date.POSIXct(., tz) now treats several tz values, notably
    "GMT" as equivalent to "UTC", proposed and improved by Michael
    Chirico and Joshua Ulrich in PR#17674.
  * Experimental balancePOSIXlt() utility allows using "ragged" and
    or out-of-range "POSIXlt" objects more correctly, e.g., in
    subsetting and subassignments.  Such objects are now documented.
    More experimentally, a "POSIXlt" object may have an attribute
    "balanced" indicating if it is known to be filled or fully
    balanced.
  * Functions axis.Date() and axis.POSIXct() are rewritten to gain
    better default tick locations and better default formats by using
    prettyDate(). Thanks to Swetlana Herbrandt.
  * The mapping of Windows' names for time zones to IANA's 'Olson'
    names has been updated.  When ICU is available (it is by
    default), it is used to get a mapping for the current region set
    in Windows.  This can be overridden by setting environment
    variable TZ to the desired Olson name - see OlsonNames() for
    those currently available.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 16
    and so packages that provide graphics devices should be
    reinstalled.
  * The grDevices and grid packages have new functions for rendering
    typeset glyphs, primarily: grDevices::glyphInfo() and
    grid::grid.glyph().
    Rendering of typeset glyphs is only supported so far on the
    Cairo-based graphics devices and on the pdf() and quartz()
    devices.
  * The defined behaviour for "clear" and "source" compositing
    operators (via grid::grid.group()) has been changed (to align
    better with simple interpretation of original Porter-Duff
    definitions).
  * Support for gradients, patterns, clipping paths, masks, groups,
    compositing operators, and affine transformations has been added
    to the quartz() device.
  INSTALLATION on a UNIX-ALIKE:
  * A system installation of generic LAPACK 3.10.0 or later will be
    preferred to the version in the R sources.
    configure option --with-lapack=no (equivalently --without-lapack)
    forces compilation of the internal LAPACK sources.
    If --with-lapack is not specified, a system liblapack is looked
    for and used if it reports version 3.10.0 or later and does not
    contain BLAS routines.
    Packages using LAPACK will need to be reinstalled if this changes
    to using an external library.
  * On aarch64 Linux platforms using GCC, configure now defaults to
  - fPIC (instead of -fpic), as desired in PR#18326.
  * configure now checks conversion of datetimes between POSIXlt and
    POSIXct around year 2020.  Failure (which has been seen on
    platforms missing tzdata) is fatal.
  * If configure option --with-valgrind-instrumentation is given
    value 1 or 2, option --with-system-valgrind-headers is now the
    default and ignored (with a warning).  It is highly recommended
    that the system headers are installed alongside valgrind: they
    are part of its packaging on some Linux distributions and
    packaged separately (e.g. in the valgrind-devel RPM) on others.
    configure will give a warning if they are not found.
    The system headers will be required in a future release of R to
    build with valgrind instrumentation.
  * libcurl 8.x is now accepted by configure: despite a change in
    major version number it changes neither API nor ABI.
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools43, an update of the Rtools42 toolchain.  It is
    based on gcc 12 and newer versions of MinGW-W64, binutils and
    libraries.  At this time R-devel can still be built using
    Rtools42 without changes, but when R-devel is installed via the
    installer, it will by default look for Rtools43.
  * Old make targets rsync-extsoft and 32-bit ones that are no longer
    needed have been removed.
  * Default builds (including for packages) no longer select C99.
    Thus the C standard used is the default for the compiler, which
    for the toolchain in Rtools43 is C17.  (This is consistent with
    Unix builds.)
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++17 where
    available (which it is on all currently checked platforms): if
    not C++14 or C++11 is used if available otherwise C++ is not
    supported.
  * USE_FC_LEN_T is the default: this uses the correct
    (compiler-dependent) prototypes for Fortran BLAS/LAPACK routines
    called from C/C++, and requires adjustment of many such calls -
    see 'Writing R Extensions' SS6.6.1.
  * There is initial support for C++23 as several compilers are now
    supporting -std=c++23 or -std=c++2b or similar.  As for C++20,
    there no additional configure checks for C++23 features beyond a
    check that the compiler reports a __cplusplus value greater than
    that in the C++20 standard.  C++ feature tests should be used.
  * There is support for a package to indicate the version of the C
    standard which should be used to compile it, and for the
    installing user to specify this.  In most cases R defaults to the
    C compiler's default standard which is C17 (a `bug-fix' of C11) -
    earlier versions of R or compilers may have defaulted to C99.
    Current options are:
    USE_C17 Use a standard that is at most C17.  The intention is to
    allow legacy packages to still be installed when later C
    standards become the default, including packages using new
    keywords as identifiers or with K&amp;R-style function
    declarations.  This will use C17 if available, falling back
    to C11.
    USE_C90 Use the C90 (aka C89) standard.  (As that standard did
    not require compilers to identify that version, all we can
    verify is that the compiler does not claim to be using a
    later standard.  It may accept C99 features - for example
    clang accepts // to make comments.)
    USE_C99 Use the C99 standard. This should be rarely needed - it
    avoids the few new features of C11/C17 which can be useful if
    a package assumes them if C17 is specified and they are not
    implemented.
    USE_C23 Use C23 (or in future, later).  Compiler/library support
    for C23 is still being implemented, but LLVM clang from
    15.0.0 and the upcoming GCC 13 have quite extensive support.
    These can be specified as part of the SystemRequirements field in
    the package's DESCRIPTION file or _via_ options --use-C17 and so
    on of R CMD INSTALL and R CMD SHLIB.
    For further details see "Writing R Extensions" SS1.2.5.
  * (Windows) A src/Makefile.ucrt or src/Makefile.win file is now
    included after R_HOME/etcR_ARCH/Makeconf and so no longer needs
    to include that file itself.  Installation of a package with such
    a file now uses a site Makevars file in the same way as a package
    with a src/Makevars.win file would.
  * configure is now passed crucial variables such as CC and CFLAGS
    in its environment, as many packages were not setting them (as
    documented in 'Writing R Extensions' SS1.2).
    This has most effect where configure is used to compile parts of
    the package - most often by cmake or libtool which obfuscate the
    actual compile commands used.
    Also used for configure.win and configure.ucrt on Windows.
  FORTRAN FLAGS:
  * The flag -fno-optimize-sibling-calls is no longer forced for
    gfortran 7 and later.  It should no longer be needed now using
    'hidden' character-length arguments when calling BLAS/LAPACK
    routines from C/C++ is the default even for packages.  (Unless
    perhaps packages call Fortran code from C/C++ without using R's
    headers and without allowing for these arguments.)
  C-LEVEL FACILITIES:
  * The deprecated S-compatibility macros DOUBLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * The deprecated legacy typedefs of Sint and Sfloat in header R.h
    are no longer defined, and that header no longer includes header
    limits.h from C nor climits from C++.
  * New macro CAD5R() is provided in Rinternals.h and used in a few
    places in the R sources.
  * ALTREP now supports VECSXP vectors. Contributed by Gabor Csardi
    in PR#17620.
  * The Rcomplex definition (in header R_ext/Complex.h) has been
    extended to prevent possible mis-compilation when interfacing
    with Fortran (PR#18430).  The new definition causes compiler
    warnings with static initializers such as {1, 2}, which can be
    changed to {.r=1, .i=2}.
    Using the new definition from C++ depends on compiler extensions
    supporting C features that have not been incorporated into the
    C++ standards but are available in g++ and clang++: this may
    result in C++ compiler warnings but these have been worked around
    for recent versions of common compilers (GCC, Apple/LLVM clang,
    Intel).
    It is intended to change the inclusion of header R_ext/Complex.h
    by other R headers, so C/C++ code files which make use of
    Rcomplex should include that header explicitly.
  UTILITIES:
  * R CMD check does more checking of package .Rd files, warning
    about invalid email addresses and (some) invalid URIs and noting
    empty \item labels in description lists.
  * R CMD check now also reports problems when reading package news
    in md (file NEWS.md) and (optionally) plain text (file NEWS)
    formats.
  * _R_CHECK_TIMINGS_ defaults to a value from the environment even
    for R CMD check --as-cran; this allows for exceptionally fast or
    slow platforms.
    It now applies to checking PDF and HTML versions of the manuals,
    and 'checking CRAN incoming feasibility'.
  * R CMD check can optionally (but included in --as-cran) check
    whether HTML math rendering _via_ KaTeX works for the package .Rd
    files.
  * Non-interactive debugger invocations can be trapped by setting
    the environment variable _R_CHECK_BROWSER_NONINTERACTIVE_ to a
    true value.  This is enabled by R CMD check --as-cran to detect
    the use of leftover browser() statements in the package.
  * The use of sprintf and vsprintf from C/C++ has been deprecated in
    macOS 13 and is a known security risk.  R CMD check now reports
    (on all platforms) if their use is found in compiled code:
    replace by snprintf or vsnprintf respectively. [*NB:* whether
    such calls get compiled into the package is platform-dependent.]
  * Where recorded at installation, R CMD check reports the C and
    Fortran compilers used to build R.
    It reports the OS in use (if known, as given by osVersion) as
    well as that R was built for.
    It notes if a C++ standard was specified which is older than the
    current default: many packages have used C++11 to mean 'not
    C++98' - as C++11 is the minimum supported since R 4.0.0, that
    specification can probably be removed.
  * R CMD INSTALL reports the compilers (and on macOS, the SDK) used,
    and this is copied to the output of R CMD check.
    Where a C++ standard is specified, it is reported.
  * R CMD check's 'checking compilation flags in Makevars' has been
    relaxed to accept the use of flags such as -std=f2008 in
    PKG_FFLAGS.
  * tools::buildVignettes() has a new argument skip, which is used by
    R CMD check to skip (and note) vignettes with unavailable
    \VignetteDepends (PR#18318).
  * New generic .AtNames() added to enable class-specific completions
    after @. The formerly internal function findMatches() is now
    exported, mainly for use in methods for .DollarNames() and
    .AtNames().
  DEPRECATED AND DEFUNCT:
  * default.stringsAsFactors() is defunct.
  * Calling as.data.frame.&lt;class&gt;() directly (for 12 atomic classes)
    is going to be formally deprecated, currently activated by
    setting the environment variable
    _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ to non-empty, which also
    happens in R CMD check --as-cran.
  BUG FIXES:
  * Hashed environments with sizes less than 5 can now grow.
    (Reported to R-devel by Duncan Garmonsway.)
  * as.character(&lt;Rd&gt;, deparse = TRUE) failed to re-escape curly
    braces in LaTeX-like text.  (Reported by Hadley Wickham in
    PR#18324.)
  * library() now passes its lib.loc argument when requiring Depends
    packages; reported (with fix) in PR#18331 by Mikael Jagan.
  * R CMD Stangle: improved message about 'Output' files.
  * head(x, n) and tail(x, n) now signal an error if n is not
    numeric, instead of incidentally "working" sometimes returning
    all of x.  Reported and discussed by Colin Fay, in PR#18357.
  * The "lm" method for summary() now gives the correct F-statistic
    when the model contains an offset.  Reported in PR#18008.
  * C() and `contrasts&lt;-`() now preserve factor level names when
    given a function object (as opposed a function name which did
    preserve names). Reported in PR#17616.
  * c(a = 1, 2)[[]] no longer matches 2 but rather signals a
    _classed_ error.  Reported and analysed by Davis Vaughan in
    PR#18367, a duplicate of PR#18004, by Jan Meis et al.  For
    consistency, NULL[[]] is also erroneous now.  x[[]] &lt;- v gives an
    error of the same class "MissingSubscriptError".
  * The relist() function of utils now supports NULL elements in the
    skeleton (PR#15854).
  * ordered(levels = *) (missing x) now works analogously to factor(,
    ordered=TRUE); reported (with fix) by Achim Zeileis in PR#18389.
  * User-defined Rd macro definitions can now span multiple lines,
    thanks to a patch from Duncan Murdoch. Previously, the Rd parser
    silently ignored everything after the first line.
  * Plain-text help (tools::Rd2txt()) now preserves an initial blank
    line for text following description list items.
  * tools::Rd2HTML() and tools::Rd2latex() no longer split \arguments
    and \value lists at Rd comments.
  * tools::Rd2latex() now correctly handles optional text outside
    \items of argument lists as well as bracketed text at the
    beginning of sections, e.g., \value{[NULL]}.
  * as.character(&lt;POSIXt&gt;) now behaves more in line with the methods
    for atomic vectors such as numbers, and is no longer influenced
    by options().  Ditto for as.character(&lt;Date&gt;).  The
    as.character() method gets arguments digits and OutDec with
    defaults _not_ depending on options().  Use of as.character(*,
    format = .) now warns.
  * Similarly, the as.character.hexmode() and *.octmode() methods
    also behave as good citizen methods and back compatibility option
    keepStr = TRUE.
  * The as.POSIXlt(&lt;POSIXlt&gt;) and as.POSIXct(&lt;POSIXct&gt;) default
    methods now do obey their tz argument, also in this case.
  * as.POSIXlt(&lt;Date&gt;) now does apply a tz (time zone) argument, as
    does as.POSIXct(); partly suggested by Roland Fuss on the R-devel
    mailing list.
  * as.Date.POSIXlt(x) now also works when the list components are of
    unequal length, aka "partially filled" or "ragged".
  * expand.model.frame() looked up variables in the wrong environment
    when applied to models fitted without data.  Reported in
    PR#18414.
  * time() now (also) uses the ts.eps = getOption("ts.eps") argument
    and thus by default rounds values very close to the start (or
    end) of a year.  Based on a proposal by Andre"i V. Kostyrka on
    R-help.
  * Printing of a factanal() result with just one factor and sort =
    TRUE now works regularly, fixing PR#17863 by Timothy Bates,
    thanks to the 'R Contributors' working group.
  * Printing 0-length objects of class "factor", "roman", "hexmode",
    "octmode", "person", "bibentry", or "citation" now prints
    something better, one of which fixes PR#18422, reported by
    Benjamin Feakins.
  * Sys.timezone() queries timedatectl only if systemd is loaded;
    addressing a report by Jan Gorecki in PR#17421.
  * The formula method of cor.test() had scoping problems when
    environment(formula) was not the calling environment; reported
    with a patch proposal by Mao Kobayashi in PR#18439.
  * attach() of an environment with active bindings now preserves the
    active bindings.  Reported by Kevin Ushey in PR#18425.
  * BLAS detection now works also with system-provided libraries not
    available as regular files.  This fixes detection of the
    Accelerate framework on macOS since Big Sur.  Reported by David
    Novgorodsky.
  * download.file() gives a helpful error message in case of an
    invalid download.file.method option, thanks to Colin Fay's report
    in PR#18455.
  * Sporadic crashes of Rterm when using completion have been fixed.
  * Rprof() is now more reliable.  A livelock in thread
    initialization with too short sampling interval has been fixed on
    macOS.  A deadlock in using the C runtime has been fixed on
    Windows.  A potential deadlock has been prevented on Unix.
  * Cursor placement in Rgui now works even after a fixed-width font
    is selected.
  * Mandatory options (options()) are now set on startup so that
    saving and restoring them always works (PR#18372).
  * Package installation, R CMD INSTALL or install.packages(*), now
    parses each of the &lt;pkg&gt;/R/*.R files individually instead of
    first concatenating and then parse()ing the large resulting file.
    This allows parser or syntax errors to be diagnosed with correct
    file names and line numbers, thanks to Simon Dedman's report and
    Bill Dunlap's patch in PR#17859.
    This _does_ require syntactically self contained R source files
    now, fixing another inadvertent bug.
  * predict.lm(&lt;model with offset&gt;) now finds the offset in the
    correct environment, thanks to Andr'e Gillibert's report and patch
    in PR#18456.
  * getInitial(&lt;formula&gt;) now finds the selfStart model in the
    correct environment.  (Reported by Ivan Krylov in PR#18368.)
  * Fix for possible segfault when using recently-added graphics
    features, such as gradients, clipping paths, masks, and groups
    with pdf(file=NULL).
  * class(m) &lt;- class(m) no longer changes a matrix m by adding a
    class _attribute_.
  * packageDate(pkg) now only warns once if there is no pkg.
  * When ts() creates a multivariate time series, "mts", it also
    inherits from "array" now, and is.mts() is documented _and_
    stricter.
  * Rd2txt() now preserves line breaks of \verb Rd content and from
    duplicated \cr.  The former also fixes the rendering of verbatim
    output from Rd \Sexpr in plain-text help.
  * uniroot(f, interval) should no longer wrongly converge _outside_
    the interval in some cases where abs(f(x)) == Inf for an x at the
    interval boundary, thanks to posts by Ben Bolker and Serguei
    Sokol on R-devel.
  * Vectorized alpha handling in palette functions such as in gray(),
    rainbow(), or hcl.colors() works correctly now, thanks to Achim
    Zeileis' report and patch in PR#18476.
  * Formatting and print()ing of bibentry objects has dropped the
    deprecated citation.bibtex.max argument, such that the bibtex
    argument's default for print.bibentry() depends directly on the
    citation.bibtex.max option, whereas in format.bibentry() the
    option no longer applies.
  * Attempting to use a character string naming a foreign function
    entry point in a foreign function call in a package will now
    signal an error if the packages has called R_forceSymbols to
    specify that symbols must be used.
  * An error in table() could permanently set options(warn=2)
    promoting all subsequent warnings to errors.
  * The sigma() function gave misleading results for binary GLMs.  A
    new method for objects of class "glm" returns the square root of
    the estimate of the dispersion parameter using the same
    calculation as summary.glm().
  * bs() and ns() in the (typical) case of automatic knot
    construction, when some of the supposedly inner knots coincide
    with boundary knots, now moves them inside (with a warning),
    building on PR#18442 by Ben Bolker.
  * R CMD on Windows now skips the site profile with --no-site-file
    and --vanilla even when R_PROFILE is set (PR#18512, from Kevin
    Ushey).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1686916800">- CHANGES IN R 4.3.1:
  C-LEVEL FACILITIES:
  * The C-level API version of R's integrate(), Rdqags() in Applic.h,
    now returns the correct number of integrand evaluations neval,
    fixing PR#18515 reported and diagnosed by Stephen Wade.
  * The C prototypes for LAPACK calls dspgv and dtptrs in
    R_exts/Lapack.h had one too many and one too few character length
    arguments - but this has not caused any known issues. To get the
    corrected prototypes, include
    [#]include &lt;Rconfig.h&gt; // for PR18534fixed
    [#]ifdef PR18534fixed
    [#] define usePR18534fix 1
    [#]endif
    [#]include &lt;R_exts/Lapack.h&gt;
    in your C/C++ code (PR#18534).
  INSTALLATION:
  * Many of the checks of esoteric Internet operations and those
    using unreliable external sites have been moved to a new target
    that is not run by default and primarily intended for the core
    developers.  To run them use
    cd tests; make test-Internet-dev
  BUG FIXES:
  * .S3methods(), typically called from methods(), again marks
    methods from package base as visible.
    Also, the visibility of non-base methods is again determined by
    the method's presence in search().
  * tools::Rdiff() is now more robust against invalid strings, fixing
    installation tests on Windows without Rtools installed
    (PR#18530).
  * Fix (new) bug in hcl.colors(2, *), by Achim Zeileis (PR#18523).
  * head(., &lt;illegal&gt;) and tail(..) now produce more useful "Error in
    ...." error messages, fixing PR#18362.
  * Package code syntax on Windows is checked in UTF-8 when UTF-8 is
    the native encoding.
  * na.contiguous(x) now also returns the first run, when it is at
    the beginning and there is a later one of the same length;
    reported to R-devel, including a fix, by Georgi Boshnakov.
    Further, by default, it modifies only an existing attr(*,"tsp")
    but otherwise no longer sets one.
  * chol(&lt;not pos.def&gt;, pivot = &lt;T|F&gt;) now gives a correct error or
    warning message (depending on pivot), thanks to Mikael Jagan's
    (PR#18541).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1699012800">- CHANGES IN R 4.3.2:
  NEW FEATURES:
  * The default initialization of the "repos" option from the
    repositories file at startup can be skipped by setting
    environment variable R_REPOSITORIES to NULL such that
    getOption("repos") is empty if not set elsewhere.
  * qr.X() is now an implicit S4 generic in methods.
  * iconv(to = "ASCII//TRANSLIT") is emulated using substitution on
    platforms which do not support it (notably Alpine Linux).  This
    should give a human-readable conversion in ASCII on all platforms
    (rather than NA_character_).
  * trans3d() gains options continuous and verbose addressing the
    problem of possible "wrap around" when projecting too long
    curves, as reported by Achim Zeileis in PR#18537.
  * tools::showNonASCII() has been rewritten to work better on macOS
    14 (which has a changed implementation of iconv()).
  * tiff(type = "quartz") (the default on macOS) now warns if
    compression is specified: it continues to be ignored.
  INSTALLATION on a UNIX-ALIKE:
  * There is some support for building with Intel's LLVM-based
    compilers on x86_64 Linux, such as (C) icx, (C++) ipcx and
    (Fortran) ifx from oneAPI 2023.x.y.
  * There is support for using LLVM's flang-new as the Fortran
    compiler from LLVM 16.0.x (preferably 17.0.0 or later).
  UTILITIES:
  * R CMD check reports the use of the Fortran 90 random number
    generator RANDOM_NUMBER() and the subroutines to initialize it.
    'Writing R Extensions' has example code to use R's RNGs from
    Fortran.
  BUG FIXES:
  * substr(x, n, L) &lt;- cc now works (more) correctly for multibyte
    UTF-8 strings x when L &gt; nchar(x), thanks to a report and patch
    by 'Architect 95'.
  * contrib.url(character()) now returns 0-length character() as
    documented, which also avoids spurious warnings from
    available.packages() et al. in the edge case of an empty vector
    of repository URLs.
  * readChar(., 4e8) no longer fails, thanks to Kodi Arfer's report
    (PR#18557).
  * lapply(&lt;list&gt;, as.data.frame) no longer warns falsely for some
    base vector components.
  * Communication between parent and child processes in the multicore
    part of parallel could fail on platforms that do not support an
    arbitrarily large payload in system functions read()/write() on
    pipes (seen on macOS where a restriction to INT_MAX bytes is
    documented, without doing a partial read unlike Linux). The
    payload is now split into 1Gb chunks to avoid that problem.
    (PR#18571)
  * qqplot(x,y, conf.level=.) gives better confidence bounds when
    length(x) != length(y), thanks to Alexander Ploner's report and
    patch proposal (PR#18557).
  * norm(&lt;0-length&gt;, "2") now gives zero instead of an error, as all
    the other norm types, thanks to Mikael Jagan's PR#18542.
  * Build-stage Rd macros \packageAuthor and \packageMaintainer now
    process Authors@R, fixing NA results when the package DESCRIPTION
    omits Author and Maintainer fields.
  * Formatting and printing complex numbers could give things like
    0.1683-0i because of rounding error: -0i is now replaced by +0i.
  * postscript() refused to accept a title comment containing the
    letter "W" (PR#18599).
  * isoreg(c(1,Inf)) signals an error instead of segfaulting, fixing
    PR#18603.
  * tiff(type = "Xlib") was only outputting the last page of
    multi-page plots.
  * tools::latexToUtf8() again knows about \~{n} and other letters
    with tilde, fixing a regression in R 4.3.0, and about \^{i} as an
    alternative to \^{\i} (similarly with other accents).
    Furthermore, LaTeX codes for accented I letters are now correctly
    converted, also fixing related mistakes in
    tools::encoded_text_to_latex().
  * tar(*, tar = "internal") no longer creates out-of-spec tar files
    in the very rare case of user or group names longer than 32
    bytes, fixing PR#17871 with thanks to Ivan Krylov.
  * When using the "internal" timezone datetime code, adding a
    fraction of a second no longer adds one second, fixing PR#16856
    from a patch by Ivan Krylov.
  * tools::checkRd() no longer produces spurious notes about
    "unnecessary braces" from multi-line Rd results of \Sexpr macros.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1709208000">- CHANGES IN R 4.3.3:
  NEW FEATURES:
  * iconv() now fixes up variant encoding names such as "utf8"
    case-insensitively.
  DEPRECATED AND DEFUNCT:
  * The legacy encoding = "MacRoman" is deprecated in pdf() and
    postscript(): support was incomplete in earlier versions of R.
  BUG FIXES:
  * Arguments are now properly forwarded to methods on S4 generics
    with ... in the middle of their formal arguments. This was broken
    for the case when a method introduced an argument but did not
    include ... in its own formals. Thanks to Herv'e Pag`es for the
    report PR#18538.
  * Some invalid file arguments to pictex(), postscript() and xfig()
    opened a file called NA rather than throw an error.  These
    included postscript(NULL) (which some people expected to work
    like pdf(NULL)).
  * Passing filename = NA to svg(), cairo_pdf(), cairo_ps() or the
    Cairo-based bitmap devices opened a file called NA: it now throws
    an error.
  * quartz(file = NA) opened a file called NA, including when used as
    a Quartz-based bitmap device.  It now gives an error.
  * rank(&lt;long vector&gt;) now works, fixing PR#18617, thanks to Ilia
    Kats.
  * seq.int() did not adequately check its length.out argument.
  * match(&lt;POSIXct&gt;, .) is correct again for differing time zones,
    ditto for "POSIXlt", fixing PR#18618 reported by Bastian Klein.
  * drop.terms(*, dropx = &lt;0-length&gt;) now works, fixing PR#18563 as
    proposed by Mikael Jagan.
  * drop.terms(*) keeps + offset(.) terms when it should, PR#18565,
    and drop.terms() no longer makes up a response, PR#18566, fixing
    both bugs thanks to Mikael Jagan.
  * getS3method("t", "test") no longer finds the t.test() function,
    fixing PR#18627.
  * pdf() and postscript() support for the documented Adobe encodings
    "Greek" and "Cyrilllic" was missing (although the corresponding
    Windows' codepages could be used).
  * Computations of glyph metric information for pdf() and
    postscript() did not take into account that transliteration could
    replace one character by two or more (only seen on macOS 14) and
    typically warned that the information was not known.
  * rank(x) no longer overflows during integer addition, when
    computing rank average for largish but not-yet long vector x,
    fixing PR#18630, thanks to Ilia Kats.
  * list.files() on Windows now returns also files with names longer
    that 260 bytes (the Windows limit is 260 characters).
    Previously, some file names particularly with 'East Asian'
    characters were omitted.
  * cov2cor(&lt;0 x 0&gt;) now works, fixing PR#18423 thanks to Mikael
    Jagan and Elin Waring.
  * cov2cor(&lt;negative diagonal&gt;) and similar now give one warning
    instead of two, with better wording, fixing PR#18424 thanks to
    Mikael Jagan.
  * tools:: startDynamicHelp() now ensures port is in proper range,
    fixing PR#18645.
  * pbeta(x, a,b) is correct now for x=0 or 1 in the boundary cases
    where a or b or both are 0, fixing PR#18672 thanks to Michael
    Fay.
  * pmatch(x, table) for large table, also called for data frame row
    selection, dfrm[nm, ], is now interruptible, fixing PR#18656.
  * predict(&lt;rank-deficient lm&gt;, newdata=*) fix computing of nbasis,
    see Russ Lenth's comment 29 in PR#16158.
  * Added a work-around for a bug in macOS 14.3.1 and higher which
    prevents R plots in the Quartz Cocoa device from updating on
    screen.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1713960000">- CHANGES IN R 4.4.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Startup banners, R --version, sessionInfo() and R CMD check no
    longer report (64-bit) as part of the platform as this is almost
    universal - the increasingly rare 32-bit platforms will still
    report (32-bit).
    On Windows, ditto for window titles.
  * is.atomic(NULL) now returns FALSE, as NULL is not an atomic
    vector.  Strict back-compatibility would replace is.atomic(foo)
    by (is.null(foo) || is.atomic(foo)) but should happen only
    sparingly.
  NEW FEATURES:
  * The confint() methods for "glm" and "nls" objects have been
    copied to the stats package.  Previously, they were stubs which
    called versions in package MASS. The MASS namespace is no longer
    loaded if you invoke (say) confint(glmfit).  Further, the "glm"
    method for profile() and the plot() and pairs() methods for class
    "profile" have been copied from MASS to stats.  (profile.nls()
    and plot.profile.nls() were already in stats.)
  * The confint() and profile methods for "glm" objects have gained a
    possibility to do profiling based on the Rao Score statistic in
    addition to the default Likelihood Ratio. This is controlled by a
    new test = argument.
  * The pairs() method for "profile" objects has been extended with a
    which = argument to allow plotting only a subset of the
    parameters.
  * The "glm" method for anova() computes test statistics and
    p-values by default, using a chi-squared test or an F test
    depending on whether the dispersion is fixed or free.  Test
    statistics can be suppressed by giving argument test a false
    logical value.
  * In setRepositories() the repositories can be set using their
    names via name = instead of index ind =.
  * methods() and .S3methods() gain a all.names option for the (rare)
    case where functions starting with a . should be included.
  * Serializations can now be interrupted (e.g., by Ctrl-C on a
    Unix-alike) if they take too long, e.g., from save.image(),
    thanks to suggestions by Ivan Krylov and others on R-devel.
  * New startup option --max-connections to set the maximum number of
    simultaneous connections for the session.  Defaults to 128 as
    before: allowed values up to 4096 (but resource limits may in
    practice restrict to smaller values).
  * R on Windows (since Windows 10 2004) now uses the new Segment
    Heap allocator. This may improve performance of some
    memory-intensive applications.
  * When R packages are built, typically by R CMD build &lt;pkg&gt;, the
    new --user=&lt;build_user&gt; option overrides the (internally
    determined) user name, currently Sys.info()["user"] or LOGNAME.
    This is a (modified) fulfillment of Will Landau's suggestion in
    PR#17530.
  * tools::testInstalledBasic() gets new optional arguments outDir
    and testSrcdir, e.g., allowing to use it in a &lt;builddir&gt; !=
    &lt;srcdir&gt; setup, and in standard "binary" Windows installation
  * if* a source tests/ folder is present.
  * range(&lt;DT_with_Inf&gt;, finite = TRUE) now work for objects of class
    "Date", "POSIXct", and "POSIXlt" with infinite entries,
    analogously to range.default(), as proposed by Davis Vaughan on
    R-devel.  Other range()-methods can make use of new function
    .rangeNum().
  * New .internalGenerics object complementing .S3PrimitiveGenerics,
    for documentation and low-level book-keeping.
  * grid() now invisibly returns the x- and y- coordinates at which
    the grid-lines were drawn.
  * norm(., type) now also works for complex matrices.
  * kappa(., exact = TRUE, norm = *) now works for all norms and also
    for complex matrices.  In symmetric / triangular cases, the new
    argument uplo = "U" | "L" allows the upper or lower triangular
    part to be specified.
  * memDecompress(type = "unknown") recognizes compression in the
    default 'zlib' format as used by memCompress(type = "gzip").
  * memCompress() and memDecompress() will use the libdeflate library
    (&lt;https://github.com/ebiggers/libdeflate&gt;) if installed.  This
    uses the same type of compression for type = "gzip" but is 1.5-2x
    faster than the system libz library on some common platforms: the
    speed-up may depend on the library version.
  * diff() for objects of class "Date", "POSIXct", and "POSIXlt"
    accepts a units argument passed via ....
  * Dynamic help now does a much better job of rendering package
    DESCRIPTION metadata.
  * Rprof() gains an event argument and support for elapsed (real)
    time profiling on Unix (PR#18076).
  * filled.contour() gains a key.border argument.
  * tools::update_pkg_po() gets arguments pot_make and mo_make for
    _not_ re-making the corresponding files, and additionally a
    verbose argument.
  * Hexadecimal string colour specifications are now accepted in
    short form, so, for example, we can use "#123", which is
    equivalent to "#112233".
    Thanks to MikeFC for the original idea and Ella Kaye, Malcolm
    Barrett, George Stagg, and Hanne Oberman for the patch.
  * Plain-text help shows \var markup by angle brackets.
  * The new experimental primitive function declare() is intended to
    eventually allow information about R code to be communicated to
    the interpreter, compiler, and code analysis tools. The syntax
    for declarations is still being developed.
  * Functions psmirnov(), qsmirnov() and rsmirnov() in package stats
    have had argument two.sided renamed to alternative, to take into
    account that the permutation distributions of the one-sided
    statistics can be different in the case of ties.  Consequence of
    PR#18582.
  * sort() is now an implicit S4 generic in methods.
  * Formatting and printing, format(z), print(z), of complex vectors
    z no longer zap relatively small real or imaginary parts to zero,
    fixing PR#16752.  This is an API change, as it was documented
    previously to round real and imaginary parts together on purpose,
    producing nicer looking output.  As mentioned, e.g. in the PR,
    this change is compatible with many other "R-like" programming
    environments.
    We have simplified the internal code and now basically format the
    real and imaginary parts independently of each other.
  * New experimental functions Tailcall() and Exec() to support
    writing stack-space-efficient recursive functions.
  * Where characters are attempted to be plotted by pdf(),
    postscript() and xfig() which are not in the selected 8-bit
    character set (most often Latin-1) and the R session is using a
    UTF-8 locale, the warning messages will show the UTF-8 character
    rather than its bytes and one dot will be substituted per
    character rather than per byte.  (Platforms whose iconv() does
    transliteration silently plot the transliteration.)
    In a UTF-8 locale some transliterations are now done with a
    warning (e.g., dashes and Unicode minus to hyphen, ligatures are
    expanded, permille (‰) is replaced by o/oo), although the OS may
    have got there first.  These are warnings as they will continue
    to be replaced by dots in earlier versions of R.
  * The matrix multiplication functions crossprod() and tcrossprod()
    are now also primitive and S3 generic, as %*% had become in R
    4.3.0.
  * source() and example() have a new optional argument catch.aborts
    which allows continued evaluation of the R code after an error.
  * The non-Quartz tiff() devices allow additional types of
    compression if supported by the platform's libtiff library.
  * The list of base and recommended package names is now provided by
    tools::standard_package_names().
  * cairo_pdf() and cairo_ps() default to onefile = TRUE to closer
    match pdf() and postscript().
  * New option catch.script.errors provides a documented way to catch
    errors and then continue in non-interactive use.
  * L %||% R newly in base is an expressive idiom for the phrases
    if(!is.null(L)) L else R or if(is.null(L)) R else L.
  * The return value from warnings() now always inherits from
    "warnings" as documented, now also in the case of no warnings
    where it previously returned NULL.
  * as.complex("1i") now returns 0 + 1i instead of NA with a warning.
  * z &lt;- c(NA, 1i) now keeps the imaginary part Im(z[1]) == 0, no
    longer coercing to NA_complex_.  Similarly, cumsum(z) correctly
    sums real and imaginary parts separately, i.e., without
    "crosstalk" in case of NAs.
  * On Alpine Linux iconv() now maps "latin2", "latin-2", "latin9"
    and "latin-9" to encoding names the OS knows about
    (case-insensitively).
  * iconv(sub = "Unicode") now always zero-pads to four (hex) digits,
    rather than to 4 or 8.  (This seems to have become the convention
    once Unicode restricted the number of Unicode points to 2^21 - 1
    and so will never need more than 6 digits.)
  * NCOL(NULL) now returns 0 instead of 1, for consistency with
    cbind().
  * The information for the Euro glyph missing from the Adobe .afm
    files for the Courier, Helvetica and Times families has been
    copied from their URW equivalents - this will improve vertical
    centring in the pdf() and postscript() devices.
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.12.0.  The changes are almost entirely cosmetic.
  * The included LAPACK sources have been updated to version 3.12.0
    and some further double-complex routines added.
  * There are new font families for the 2014--5 URW 2.0 fonts (see
    ?pdf) which are included in recent versions of Ghostscript.
    These have font widths for most Greek glyphs and a few others
    which were missing from the original versions (whose font
    families remain available for reproducibility, although
    Ghostscript-based viewers will render using the 2.0 versions).
  * Improve the large-n efficiency of as.matrix(&lt;dist&gt;), thanks an R
    contributors effort, notably by Tim Taylor and Heather Turner,
    see PR#18660.
  * The default and numeric methods of all.equal() get a check.class
    option.
  * zapsmall() gets new optional arguments, function mFUN and min.d,
    for extra flexibility; fulfills a wish in PR#18199.  Also, it is
    now an implicit S4 generic in package methods.
  * The Rd filter for aspell() gains an ignore argument.
  * New generic function sort_by(), primarily useful for the
    data.frame method which can be used to sort rows of a data frame
    by one or more columns.
  * The icence headers for the RPC code in src/extra/xdr have been
    updated to use the GPL-compatible licence published by Oracle
    America in 2010.
  * New function pkg2HTML() in tools to create single-page HTML
    reference manuals for R packages.
  * The byte code evaluator now uses less C stack space for recursive
    calls to byte-compiled functions. It also makes more of an effort
    to avoid allocations for scalar return values.
  * New completion option backtick (disabled by default) allows
    non-syntactic completions to be wrapped in backquotes. This is
    currently only useful for Jupyter notebooks via the IRkernel
    package, and may cause problems for other backends.
  INSTALLATION:
  * The parser has been updated to work with bison 3.8.2, which is
    now used for the pre-generated parsers in gram.c, file.c, and
    gramRd.c. A few parser error messages have changed, which may
    affect code that relies on exact messages.
  INSTALLATION on a UNIX-ALIKE:
  * System valgrind headers are now required to use configure option
  - -with-valgrind-instrumentation with value 1 or 2.
  * configure will warn if it encounters a 32-bit build, as that is
    nowadays almost untested.
  * Environment variable R_SYSTEM_ABI is no longer used and so no
    longer recorded in etc/Renviron (it was not on Windows and was
    only ever used when preparing package tools).
  * If the libdeflate library and headers are available, libdeflate
    rather than libz is used to (de)compress R objects in lazy-load
    databases.  Typically tasks spend up to 5% of their time on such
    operations, although creating lazy-data databases is one of the
    exceptions.
    This can be suppressed if the library is available by the
    configure option --without-libdeflate-compression.
  * configure option --enable-lto=check has not worked reliably since
    2019 and has been removed.
  * The minimum autoconf requirement for a maintainer build has been
    increased to autoconf 2.71.
    It is intended to increase this to 2.72 for R 4.5.0: the
    distributed configure file was generated using 2.72.
  * The minimum version requirement for an external LAPACK has been
    reduced to 3.9.0.
  * No default C++ compiler is set if no C++17 compiler is detected:
    there is no longer an automatic fallback to C++14 or C++11.
    Compilers from the last five years should have sufficient
    support: for others macros CXX and CXXSTD can be set in file
    config.site to provide a fallback if needed.
    The Objective-C++ compiler now by default uses the standard
    selected by R for C++ (currently C++17) rather than the default
    standard for the C++ compiler (which on macOS is still C++98).
  INSTALLATION on macOS:
  * A new configure option --with-newAccelerate makes use of Apple's
    'new' BLAS / LAPACK interfaces in their Accelerate framework.
    Those interfaces are only available in macOS 13.3 or later, and
    building requires SDK 13.3 or later (from the Command Line Tools
    or Xcode 14.3 or later).
    By default the option uses new Accelerate for BLAS calls: to also
    use it for LAPACK use option --with-newAccelerate=lapack.  The
    later interfaces provide LAPACK 3.9.1 rather than 3.2.1: 3.9.1 is
    from 2021-04 and does not include the improved algorithms
    introduced in LAPACK 3.10.0 (including for BLAS calls).
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools44, an update of the Rtools43 toolchain.  It is
    based on GCC 13 and newer versions of MinGW-W64, binutils and
    libraries (targeting 64-bit Intel CPUs).  R-devel can no longer
    be built using Rtools43 without changes.
  * Rtools44 has experimental support for 64-bit ARM (aarch64) CPUs
    _via_ the LLVM 17 toolchain using lld, clang/flang-new and
    libc++.
  UTILITIES:
  * R CMD check notes when S4-style exports are used without
    declaring a strong dependence on package methods.
  * tools::checkRd() (used by R CMD check) detects more problems with
    \Sexpr-based dynamic content, including bad nesting of \Sexprs
    and invalid arguments.
  * tools::checkRd() now reports Rd titles and section names ending
    in a period; this is ignored by R CMD check unless environment
    variable _R_CHECK_RD_CHECKRD_MINLEVEL_ is set to -5 or smaller.
  * R CMD check now notes Rd files without an \alias, as long
    documented in 'Writing R Extensions' §1.3.1.  The check for a
    missing \description has been moved from tools::checkRd() to
    tools::checkRdContents().
  * R CMD check now visits inst/NEWS.Rd and OS-specific man
    subdirectories when checking Rd files.
  * tools::checkDocFiles() and tools::checkRdContents() now also
    check internal Rd files by default, but "specially" (ignoring
    missing documentation of arguments).
  * R CMD Rdiff gets option --useEx.
  * R CMD check now warns on non-portable uses of Fortran KIND such
    as INTEGER(KIND=4) and REAL(KIND=8).
    To see the failing lines set environment variable
    _R_CHECK_FORTRAN_KIND_DETAILS_ to a true value.
  * When checking Rd files, R CMD check now notes some of the "lost
    braces" that tools::checkRd() finds.  Typical problems are Rd
    macros missing the initial backslash (e.g., code{...}), in-text
    set notation (e.g., {1, 2}, where the braces need escaping), and
    \itemize lists with \describe-style entries of the form
    \item{label}{description}.
  * R CMD INSTALL (and hence check) will compile C++ code with
  - DR_NO_REMAP if environment variable _R_CXX_USE_NO_REMAP_ is set
    to a true value.  It is planned that this will in future become
    the default for compiling C++.
  * The new built-in Rd macro \dontdiff{} can be used to mark example
    code whose output should be ignored when comparing check output
    to reference output (tests/Examples/&lt;pkg&gt;-Ex.Rout.save).  The
    \dontdiff tag, like \donttest, is _not_ shown on the rendered
    help page, so provides a clean alternative to ##
    IGNORE_RDIFF_(BEGIN|END) comments.
  * R CMD build when there is no NAMESPACE, now uses the recommended
    exportPattern("^[^.]"), instead of exporting everything.
  * R CMD check now warns about non-ASCII characters in the NAMESPACE
    file (in addition to R files). Such packages are not portable and
    may fail to install on some platforms.
  C-LEVEL FACILITIES:
  * Headers R_ext/Applic.h and R-ext/Linpack.h used to include
    R_ext/BLAS.h although this was undocumented and unneeded by their
    documented entry points.  They no longer do so.
  * New function R_missing(), factored out from do_missing(), used to
    fix PR#18579.
  * SEXP type S4SXP has been renamed to OBJSXP to support
    experimenting with alternative object systems.  The S4SXP value
    can still be used in C code but is now deprecated.  Based on
    contributions from the R Consortium's Object-Oriented Programming
    Working Group.
  * New function pow1p(x,y) for accurate (1+x)^y.
  * mkCharLenCE was incorrectly documented to take a size_t length
    but was implemented with int (and character strings in R are
    limited to 2^31 - 1 bytes).
  DEPRECATED AND DEFUNCT:
  * data() no longer handles zipped data from long-defunct (since R
    2.13.0) --use-zip-data installations.
  * The legacy graphics devices pictex() and xfig() are now
    deprecated.  They do not support recent graphics enhancements and
    their font handling is rudimentary. The intention is to retain
    them for historical interest as long as they remain somewhat
    functional.
  * Support for encoding = "MacRoman" has been removed from the pdf()
    and postscript() devices - this was a legacy encoding supporting
    classic macOS up to 2001 and no longer has universal libiconv
    support.
  * is.R() is deprecated as no other S dialect is known to be in use
    (and this could only identify historical dialects, not future
    ones).
    Further information on calls can be obtained by setting the
    environment variable _R_DEPRECATED_IS_R_ to error which turns the
    deprecation warning into an error and so by default gives a
    traceback.  (This is done by R CMD check --as-cran.)
  * UseMethod() no longer forwards local variables assigned in the
    generic function into method call environments before evaluating
    the method body. This makes method calls behave more like
    standard function calls and makes method code easier to analyze
    correctly.
  * The twelve as.data.frame.&lt;class&gt;() methods which were deprecated
    only via _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ and in R CMD
    check --as-cran are formally deprecated now in favour of calling
    as.data.frame() or as.data.frame.vector().  The deprecation
    "check" now works also when as.data.frame() is S4 generic thanks
    to Ivan Krylov.
  * The default method for the directional comparison operators &lt;, &gt;,
    &lt;=, and &gt;= now signals an error when one of the operands is a
    language object, i.e. a symbol or a call.
  * For terms.formula(), deprecate abb and neg.out arguments
    _formally_ in addition to just documenting it.
  BUG FIXES:
  * The methods package is more robust to not being attached to the
    search path.  More work needs to be done.
  * pairwise.t.test() misbehaved when subgroups had 0 DF for
    variance, even with pool.sd = TRUE.  (PR#18594 by Jack Berry).
  * Probability distribution functions [dpq]&lt;distrib&gt;(x, *), but also
    bessel[IKJY](x, .) now consistently preserve attributes(x) when
    length(x) == 0, e.g., for a 2 x 0 matrix, thanks to Karolis
    Koncevičius' report PR#18509.
  * Group "Summary" computations such as sum(1:3, 4, na.rm = 5, NA,
    7, na.rm = LL) now give an error instead of either 17 or NN for
    LL true or false, as proposed by Ivan Krylov on the R-devel
    mailing list.  (This also means it is now an error to specify
    na.rm more than once.)
  * as.complex(x) now returns complex(real = x, imaginary = 0) for
    _all_ numerical and logical x, notably also for NA or
    NA_integer_.
  * Directories are now omitted by file.copy(, recursive = FALSE) and
    in file.append() (PR#17337).
  * gsub() and sub() are now more robust to integer overflow when
    reporting errors caused by too large input strings (PR#18346).
  * Top-level handlers are now more robust to attempts to remove a
    handler whilst handlers are running (PR#18508).
  * The handling of Alt+F4 in dialogs created on Windows using
    GraphApp has been fixed (PR#13870).
  * density() more consistently computes grid values for the
    FFT-based convolution, following Robert Schlicht's analysis and
    proposal in PR#18337, correcting density values typically by a
    factor of about 0.999.  Argument old.coords = TRUE provides back
    compatibility.
  * palette.colors() gains a name argument that defaults to FALSE
    controlling whether the vector of colours that is returned has
    names (where possible).  PR#18529.
  * tools::xgettext() no longer extracts the (non-translatable) class
    names from warningCondition and errorCondition calls.
  * S3method(&lt;gen&gt;, &lt;class&gt;, &lt;func&gt;) in the NAMESPACE file now works
    (again) when &lt;func&gt; is visible from the namespace, e.g.,
    imported, or in base.
  * getParseData(f) now also works for a function defined in the
    first of several &lt;pkg&gt;/R/*.R source files, thanks to Kirill
    Müller's report and Duncan Murdoch's patch in PR#16756.
  * Rd \Sexpr macros with nested #ifdef conditionals were not
    processed.
  * A non-blocking connection with non-default encoding (such as a
    socket) now correctly returns from readLines() after new data has
    arrived also when its EOF had been reached previously.  Thanks to
    Peter Meilstrup's report on R-devel and Ivan Krylov's report and
    patch proposal in PR#18555.
  * tools::checkRdContents() failed to detect empty argument
    descriptions when they spanned multiple lines, including those
    generated by prompt().  These cases are now noted by R CMD check.
  * Plain-text help no longer outputs spurious colons in the
    arguments list (for multi-line \item labels in the Rd source).
  * kappa() and rcond() work correctly in more cases; kappa(., norm =
    "2") now warns that it computes the 1-norm with (default) exact =
    FALSE; prompted by Mikael Jagan's quite comprehensive PR#18543.
  * Rd skeletons generated by prompt() or promptData() now use a
    dummy title (so R CMD build works).  tools::checkRdContents() has
    been updated to detect such template leftovers, including from
    promptPackage().
  * When S4 method dispatch fails because no method was found, the
    error message now includes the signature argument names; thanks
    to Michael Chirico's proposal on the R-devel list.
  * withAutoprint({ .. }) now preserves srcrefs previously lost,
    thanks to Andrew Simmons' report plus fix in PR#18572.
  * transform.data.frame() no longer adjusts names; in particular,
    untransformed variables are kept as-is, including those with
    syntactically invalid names (PR#17890).
  * The keep.source option for Rd \Sexpr blocks is no longer ignored.
  * The formula methods for t.test() and wilcox.test() now catch when
    paired is passed, addressing PR#14359; use Pair(x1, x2) ~ 1 for a
    paired test.
  * The level reported in the browser prompt was often too large. It
    now shows the number of browser contexts on the stack.
  * For cbind() and rbind(), the optional deparse.level argument is
    now properly passed to methods, thanks to Mikael Jagan's PR#18579
    and comments there.
  * Some error and warning messages for large ('long vector')
    matrix(v, nr, nc) and dim(m) &lt;- d are now correct about sizes,
    using long long formatting, fixing PR#18612 (and more) reported
    by Mikael Jagan.
  * readChar(useBytes = TRUE) now terminates strings even when the
    underlying connection uses extra spaces in the input buffer.
    This fixes problems with extra garbage seen with gzip
    connections, PR#18605.
  * Named capture in PCRE regular expressions now works also with
    more than 127 named groups (PR#18588).
  * Datetime functions are now robust against long jumps when dealing
    with internal time zone changes.  This avoids confusing warnings
    about an invalid time zone, previously triggered by turning
    warnings into errors or handling them via tryCatch (PR#17966,
    PR#17780).
  * Datetime functions now restore even an empty TZ environment
    variable after internal time zone changes (PR#17724).  This makes
    results of datetime functions with this (typically unintentional)
    setting more predictable.
  * drop.terms(*) now drops response as by default, keep.response =
    FALSE, fixing PR#18564 thanks to Mikael Jagan.
  * dummy.coef(.) now also works for lm()-models with character
    categorical predictor variables rather than factor ones, fixing
    PR#18635 reported by Jinsong Zhao.
  * formals(f) &lt;- formals(f) now also works for a function w/o
    arguments and atomic _constant_ body(f).
  * Correct as.function(&lt;invalid list&gt;, .)'s error message.
  * removeSource() is yet more thorough in finding and removing
    "srcref" and the other source references from parsed R language
    chunks, fixing PR#18638 thanks to Andrew Simmons.
  * dgeom() is more accurate now, notably when its result is very
    small, fixing PR#18642 thanks to the proposal of Morten Welinder,
    also improving other instances where C level binom_raw(x, n, ..)
    has x == 0 or x== n.
  * warning() with options(warn = 1) has improved output for
    multi-line messages.
  * axis.Date() and axis.POSIXct() now respect the par("lab") setting
    for the number of pretty() intervals.
  * Comparisons for language objects (which are based on deparsing)
    are now more careful about using accurate deparsed results
    (PR#18676).
  * Plain-text help (Rd2txt) now correctly preserves blank lines
    following single-line \dontrun code.
  * &lt;POSIXlt&gt;[*] no longer sets wrong "balanced" attribute, fixing
    PR#18681 thanks to Mikael Jagan.
  * str(&lt;classed-call&gt;) now deparses the call as expected, fixing
    PR#18684, reported by Dave Slager.
  * In Rd examples, code following the closing brace of a \dontrun,
    \dontshow or \donttest tag on the same line is no longer skipped
    when R CMD check runs the examples.
  * as.data.frame(matrix(*, ncol=0)) now gets valid names() and
    colnames(); reported by Davis Vaughan on the R-devel list.
  * Internal Mathlib function stirlerr(n) is now almost fully
    (52-bit) accurate for all n &gt;= ~5.9 and more accurate also in the
    range 1 -- 5.9.  This entails small ("after 12th decimal")
    changes in density functions, e.g., dgamma() in _some_ regions of
    their support.  The fix was partly prompted by Morten Welinder's
    PR#18640.
  * Numbers like 9876543.2 are now considered non-integer by Mathlib
    internal R_nonint(), amending original fix of PR#15734.
  * Rd comment lines no longer cause broken paragraphs in the
    rendered PDF and plain-text help. In code blocks, pure comment
    lines (starting with %) no longer produce an empty line.
  * xtabs(Freq ~ .) now consistently defaults to na.action = na.pass,
    using na.rm = FALSE (added as an argument) when summing over Freq
    (PR#17770).
  * tools::testInstalledPackage() is no longer silent about failures
    from running examples or tests and its return code no longer
    ignores failures from checking vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1718366400">- CHANGES IN R 4.4.1:
  C-LEVEL FACILITIES:
  * Functions R_atof and R_strtod declared in header R_ext/Utils.h
    are now documented in 'Writing R Extensions' and so formally part
    of the API.
  * The non-API entry points Rf_setSVector, Rf_StringFalse,
    Rf_StringTrue and Rf_isBlankString have been added to those
    reported by R CMD check.
  * The new function Rf_allocLang is now available. This provides an
    alternative to the idiom of calling Rf_allocList followed by
    SET_TYPEOF.
  UTILITIES:
  * R CMD check now reports as warnings what gfortran calls 'Fortran
    2018 deleted features', all of which have long been marked as
    'obsolescent' and some of which were deleted in Fortran 2008 or
    earlier.  Fortran compilers are no longer required to support
    these.
  BUG FIXES:
  * as.numeric(), scan(), type.convert() and other places which use
    the internal C function R_strtod now require a _non-empty_ digit
    sequence in a decimal or binary exponent.  This aligns with the
    C/POSIX standard for strtod and with ?NumericConstants.
  * as.data.frame(m, make.names=NA) now works correctly for a matrix
    m with NA's in row names.
  * The error message from &lt;POSIXlt&gt;[["hour"]] and similar now
    mentions *[[, "hour"]], as wished for in PR#17409 and proposed by
    Michael Chirico.
  * qbinom() and potentially qpois(), qnbinom(), no longer sometimes
    fail accurate inversion (of pbinom(), etc), thanks to Christopher
    Chang's report and patch in PR#18711.
  * The internal help server on Windows can again serve requests sent
    in quick succession, fixing a regression in R 4.4.0.
  * debugcall(&lt;S3Generic&gt;()) now also works when a corresponding
    S4-generic version is in the methods cache (PR#18143).
  * Package tools' toTitleCase(ch0) now returns character(0) when ch0
    is of zero length; fixing PR#18724, reported by David Hugh Jones.
  * R CMD check is no longer broken (without a check result and no
    explanation in 00check.log) for a package which declares an
    invalid VignetteBuilder in DESCRIPTION but has no vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1730376000">- CHANGES IN R 4.4.2:
  C-LEVEL FACILITIES:
  * The S-compatibility macros F77_COM and F77_COMDECL defined in
    header R_ext/RS.h are deprecated and will be removed shortly.  We
    could find no record of their use.
  BUG FIXES:
  * Mathlib function lgammacor(x) no longer warns about underflow to
    zero for large x.
  * Text widths and heights were incorrectly reported by the Quartz
    device if the drawing context didn't exist yet (typically when
    drawing off-screen to a window that is yet to appear, see
    PR#18591).
  * The Quartz device could segfault in cases where paths with spaces
    are used in the new glyph drawing API.  Thanks to Tomek
    Gieorgijewski (PR#18758).
  * On macOS in R CRAN builds, it is again possible to read
    little-endian UTF-16 text with a BOM from a connection using
    encoding="UTF-16".  Users building R from source should avoid
    using the system libiconv in macOS 14.1 and later.
  * methods' internal .requirePackage() now re-enables primitive
    method dispatch when needed; thanks to Ivan Krylov for
    demystifying CRAN package check failures on the R-devel mailing
    list.</changelog>
</package>
<package pkgid="0616b5c0323cec017417b92b177a8907c9378601b058a8602c375156186a8b1f1005bd2f61dbf88d47bf6d588772e99cd8572f345f8e18c87ba9c1729efd0f5c" name="R-compiler" arch="i586">
  <version epoch="0" ver="4.4.2" rel="51.0.2.2.sr20241103"/>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1620302400">- To get in sync with d:l:R:autoCRAN the Matrix package's split
  in -devel was reversed.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339200">- improved spec file according to comments of dimstar in
  https://build.opensuse.org/request/show/892685</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339201">- CHANGES IN R 4.1.0:
  FUTURE DIRECTIONS:
  * It is planned that the 4.1.x series will be the last to support
    32-bit Windows, with production of binary packages for that
    series continuing until early 2023.
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Data set esoph in package datasets now provides the correct
    numbers of controls; previously it had the numbers of cases added
    to these.  (Reported by Alexander Fowler in PR#17964.)
  NEW FEATURES:
  * www.omegahat.net is no longer one of the repositories known by
    default to setRepositories().  (Nowadays it only provides source
    packages and is often unavailable.)
  * Function package_dependencies() (in package tools) can now use
    different dependency types for direct and recursive dependencies.
  * The checking of the size of tarball in R CMD check --as-cran
    &lt;pkg&gt; may be tweaked via the new environment variable
    _R_CHECK_CRAN_INCOMING_TARBALL_THRESHOLD_, as suggested in
    PR#17777 by Jan Gorecki.
  * Using c() to combine a factor with other factors now gives a
    factor, an ordered factor when combining ordered factors with
    identical levels.
  * apply() gains a simplify argument to allow disabling of
    simplification of results.
  * The format() method for class "ftable" gets a new option justify.
    (Suggested by Thomas Soeiro.)
  * New ...names() utility.  (Proposed by Neal Fultz in PR#17705.)
  * type.convert() now warns when its as.is argument is not
    specified, as the help file always said it _should_.  In that
    case, the default is changed to TRUE in line with its change in
    read.table() (related to stringsAsFactor) in R 4.0.0.
  * When printing list arrays, classed objects are now shown _via_
    their format() value if this is a short enough character string,
    or by giving the first elements of their class vector and their
    length.
  * capabilities() gets new entry "Rprof" which is TRUE when R has
    been configured with the equivalent of --enable-R-profiling (as
    it is by default).  (Related to Michael Orlitzky's report
    PR#17836.)
  * str(xS4) now also shows extraneous attributes of an S4 object
    xS4.
  * Rudimentary support for vi-style tags in rtags() and R CMD rtags
    has been added.  (Based on a patch from Neal Fultz in PR#17214.)
  * checkRdContents() is now exported from tools; it and also
    checkDocFiles() have a new option chkInternal allowing to check
    Rd files marked with keyword "internal" as well.  The latter can
    be activated for R CMD check via environment variable
    _R_CHECK_RD_INTERNAL_TOO_.
  * New functions numToBits() and numToInts() extend the raw
    conversion utilities to (double precision) numeric.
  * Functions URLencode() and URLdecode() in package utils now work
    on vectors of URIs.  (Based on patch from Bob Rudis submitted
    with PR#17873.)
  * path.expand() can expand ~user on most Unix-alikes even when
    readline is not in use.  It tries harder to expand ~, for example
    should environment variable HOME be unset.
  * For HTML help (both dynamic and static), Rd file links to help
    pages in external packages are now treated as references to
    topics rather than file names, and fall back to a file link only
    if the topic is not found in the target package. The earlier rule
    which prioritized file names over topics can be restored by
    setting the environment variable _R_HELP_LINKS_TO_TOPICS_ to a
    false value.
  * c() now removes NULL arguments before dispatching to methods,
    thus simplifying the implementation of c() methods, _but_ for
    back compatibility keeps NULL when it is the first argument.
    (From a report and patch proposal by Lionel Henry in PR#17900.)
  * Vectorize()'s result function's environment no longer keeps
    unneeded objects.
  * Function ...elt() now propagates visibility consistently with
    ..n.  (Thanks to Lionel Henry's PR#17905.)
  * capture.output() no longer uses non-standard evaluation to
    evaluate its arguments.  This makes evaluation of functions like
    parent.frame() more consistent.  (Thanks to Lionel Henry's
    PR#17907.)
  * packBits(bits, type="double") now works as inverse of
    numToBits().  (Thanks to Bill Dunlap's proposal in PR#17914.)
  * curlGetHeaders() has two new arguments, timeout to specify the
    timeout for that call (overriding getOption("timeout")) and TLS
    to specify the minimum TLS protocol version to be used for
    https:// URIs (_inter alia_ providing a means to check for sites
    using deprecated TLS versions 1.0 and 1.1).
  * For nls(), an optional constant scaleOffset may be added to the
    denominator of the relative offset convergence test for cases
    where the fit of a model is expected to be exact, thanks to a
    proposal by John Nash.  nls(*, trace=TRUE) now also shows the
    convergence criterion.
  * Numeric differentiation _via_ numericDeriv() gets new optional
    arguments eps and central, the latter for taking central divided
    differences.  The latter can be activated for nls() via
    nls.control(nDcentral = TRUE).
  * nls() now passes the trace and control arguments to getInitial(),
    notably for all self-starting models, so these can also be fit in
    zero-noise situations via a scaleOffset.  For this reason, the
    initial function of a selfStart model must now have ... in its
    argument list.
  * bquote(splice = TRUE) can now splice expression vectors with
    attributes: this makes it possible to splice the result of
    parse(keep.source = TRUE).  (Report and patch provided by Lionel
    Henry in PR#17869.)
  * textConnection() gets an optional name argument.
  * get(), exists(), and get0() now signal an error if the first
    argument has length greater than 1.  Previously additional
    elements were silently ignored.  (Suggested by Antoine Fabri on
    R-devel.)
  * R now provides a shorthand notation for creating functions, e.g.
    \(x) x + 1 is parsed as function(x) x + 1.
  * R now provides a simple native forward pipe syntax |&gt;.  The
    simple form of the forward pipe inserts the left-hand side as the
    first argument in the right-hand side call.  The pipe
    implementation as a syntax transformation was motivated by
    suggestions from Jim Hester and Lionel Henry.
  * all.equal(f, g) for functions now by default also compares their
    environment(.)s, notably via new all.equal method for class
    function.  Comparison of nls() fits, e.g., may now need
    all.equal(m1, m2, check.environment = FALSE).
  * .libPaths() gets a new option include.site, allowing to _not_
    include the site library.  (Thanks to Dario Strbenac's suggestion
    and Gabe Becker's PR#18016.)
  * Lithuanian translations are now available.  (Thanks to Rimantas
    Zakauskas.)
  * names() now works for DOTSXP objects.  On the other hand, in
    R-lang, the R language manual, we now warn against relying on the
    structure or even existence of such dot-dot-dot objects.
  * all.equal() no longer gives an error on DOTSXP objects.
  * capabilities("cairo") now applies only to the file-based devices
    as it is now possible (if very unusual) to build R with Cairo
    support for those but not for X11().
  * There is optional support for tracing the progress of
    loadNamespace() - see its help.
  * (Not Windows.)  l10n_info() reports an additional element, the
    name of the encoding as reported by the OS (which may differ from
    the encoding part (if any) of the result from
    Sys.getlocale("LC_CTYPE").
  * New function gregexec() which generalizes regexec() to find _all_
    disjoint matches and well as all substrings corresponding to
    parenthesized subexpressions of the given regular expression.
    (Contributed by Brodie Gaslam.)
  * New function charClass() in package utils to query the
    wide-character classification functions in use (such as
    iswprint).
  * The names of quantile()'s result no longer depend on the global
    getOption("digits"), but quantile() gets a new optional argument
    digits = 7 instead.
  * grep(), sub(), regexp and variants work considerably faster for
    long factors with few levels.  (Thanks to Michael Chirico's
    PR#18063.)
  * Provide grouping of x11() graphics windows within a window
    manager such as Gnome or Unity; thanks to a patch by Ivan Krylov
    posted to R-devel.
  * The split() method for class data.frame now allows the f argument
    to be specified as a formula.
  * sprintf now warns on arguments unused by the format string.
  * New palettes "Rocket" and "Mako" for hcl.colors() (approximating
    palettes of the same name from the 'viridisLite' package).
    Contributed by Achim Zeileis.
  * The base environment and its namespace are now locked (so one can
    no longer add bindings to these or remove from these).
  * Rterm handling of multi-byte characters has been improved,
    allowing use of such characters when supported by the current
    locale.
  * Rterm now accepts ALT+ +xxxxxxxx sequences to enter Unicode
    characters as hex digits.
  * Environment variable LC_ALL on Windows now takes precedence over
    LC_CTYPE and variables for other supported categories, matching
    the POSIX behaviour.
  * duplicated() and anyDuplicated() are now optimized for integer
    and real vectors that are known to be sorted via the ALTREP
    framework. Contributed by Gabriel Becker via PR#17993.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 14
    and so packages that provide graphics devices should be
    reinstalled.
  * Graphics devices should now specify deviceVersion to indicate
    what version of the graphics engine they support.
  * Graphics devices can now specify deviceClip.  If TRUE, the
    graphics engine will never perform any clipping of output itself.
    The clipping that the graphics engine does perform (for both
    canClip = TRUE and canClip = FALSE) has been improved to avoid
    producing unnecessary artifacts in clipped output.
  * The grid package now allows gpar(fill) to be a linearGradient(),
    a radialGradient(), or a pattern().  The viewport(clip) can now
    also be a grob, which defines a clipping path, and there is a new
    viewport(mask) that can also be a grob, which defines a mask.
    These new features are only supported so far on the Cairo-based
    graphics devices and on the pdf() device.
  * (Not Windows.)  A warning is given when a Cairo-based type is
    specified for a png(), jpeg(), tiff() or bmp() device but Cairo
    is unsupported (so type = "Xlib" is tried instead).
  * grSoftVersion() now reports the versions of FreeType and
    FontConfig if they are used directly (not _via_ Pango), as is
    most commonly done on macOS.
  C-LEVEL FACILITIES:
  * The _standalone_ libRmath math library and R's C API now provide
    log1pexp() again as documented, and gain log1mexp().
  INSTALLATION on a UNIX-ALIKE:
  * configure checks for a program pkgconf if program pkg-config is
    not found.  These are now only looked for on the path (like
    almost all other programs) so if needed specify a full path to
    the command in PKG_CONFIG, for example in file config.site.
  * C99 function iswblank is required - it was last seen missing ca
    2003 so the workaround has been removed.
  * There are new configure options --with-internal-iswxxxxx,
  - -with-internal-towlower and --with-internal-wcwidth which allows
    the system functions for wide-character classification,
    case-switching and width (wcwidth and wcswidth) to be replaced by
    internal ones.  The first has long been used on macOS, AIX (and
    Windows) but this enables it to be unselected there and selected
    for other platforms (it is the new default on Solaris).  The
    second is new in this version of R and is selected by default on
    macOS and Solaris.  The third has long been the default and
    remains so as it contains customizations for East Asian
    languages.
    System versions of these functions are often minimally
    implemented (sometimes only for ASCII characters) and may not
    cover the full range of Unicode points: for example Solaris (and
    Windows) only cover the Basic Multilingual Plane.
  * Cairo installations without X11 are more likely to be detected by
    configure, when the file-based Cairo graphics devices will be
    available but not X11(type = "cairo").
  * There is a new configure option --with-static-cairo which is the
    default on macOS.  This should be used when only static cairo
    (and where relevant, Pango) libraries are available.
  * Cairo-based graphics devices on platforms without Pango but with
    FreeType/FontConfig will make use of the latter for font
    selection.
  LINK-TIME OPTIMIZATION on a UNIX-ALIKE:
  * Configuring with flag --enable-lto=R now also uses LTO when
    installing the recommended packages.
  * R CMD INSTALL and R CMD SHLIB have a new flag --use-LTO to use
    LTO when compiling code, for use with R configured with
  - -enable-lto=R.  For R configured with --enable-lto, they have
    the new flag --no-use-LTO.
    Packages can opt in or out of LTO compilation _via_ a UseLTO
    field in the DESCRIPTION file.  (As usual this can be overridden
    by the command-line flags.)
  BUILDING R on Windows:
  * for GCC &gt;= 8, FC_LEN_T is defined in config.h and hence character
    lengths are passed from C to Fortran in _inter alia_ BLAS and
    LAPACK calls.
  * There is a new text file src/gnuwin32/README.compilation, which
    outlines how C/Fortran code compilation is organized and
    documents new features:
  * R can be built with Link-Time Optimization with a suitable
    compiler - doing so with GCC 9.2 showed several
    inconsistencies which have been corrected.
  * There is support for cross-compiling the C and Fortran code
    in R and standard packages on suitable (Linux) platforms.
    This is mainly intended to allow developers to test later
    versions of compilers - for example using GCC 9.2 or 10.x has
    detected issues that GCC 8.3 in Rtools40 does not.
  * There is experimental support for cross-building R packages
    with C, C++ and/or Fortran code.
  * The R installer can now be optionally built to support a single
    architecture (only 64-bit or only 32-bit).
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++14 where
    available (which it is on all currently checked platforms): if
    not (as before) C++11 is used if available otherwise C++ is not
    supported.
    Packages which specify C++11 will still be installed using C++11.
    C++14 compilers may give deprecation warnings, most often for
    std::random_shuffle (deprecated in C++14 and removed in C++17).
    Either specify C++11 (see 'Writing R Extensions') or modernize
    the code and if needed specify C++14.  The latter has been
    supported since R 3.4.0 so the package's DESCRIPTION would need
    to include something like
    Depends: R (&gt;= 3.4)
  PACKAGE INSTALLATION on Windows:
  * R CMD INSTALL and R CMD SHLIB make use of their flag --use-LTO
    when the LTO_OPT make macro is set in file etc/${R_ARCH}/Makeconf
    or in a personal/site Makevars file.  (For details see 'Writing R
    Extensions' SS4.5.)
    This provides a valuable check on code consistency.  It does work
    with GCC 8.3 as in Rtools40, but that does not detect everything
    the CRAN checks with current GCC do.
  PACKAGE INSTALLATION on macOS:
  * The default personal library directory on builds with
  - -enable-aqua (including CRAN builds) now differs by CPU type,
    one of
    ~/Library/R/x86_64/x.y/library
    ~/Library/R/arm64/x.y/library
    This uses the CPU type R (and hence the packages) were built for,
    so when a x86_64 build of R is run under Rosetta emulation on an
    arm64 Mac, the first is used.
  UTILITIES:
  * R CMD check can now scan package functions for bogus return
    statements, which were possibly intended as return() calls (wish
    of PR#17180, patch by Sebastian Meyer). This check can be
    activated via the new environment variable
    _R_CHECK_BOGUS_RETURN_, true for --as-cran.
  * R CMD build omits tarballs and binaries of previous builds from
    the top-level package directory.  (PR#17828, patch by Sebastian
    Meyer.)
  * R CMD check now runs sanity checks on the use of LazyData, for
    example that a data directory is present and that
    LazyDataCompression is not specified without LazyData and has a
    documented value.  For packages with large LazyData databases
    without specifying LazyDataCompression, there is a reference to
    the code given in 'Writing R Extensions' SS1.1.6 to test the
    choice of compression (as in all the CRAN packages tested a
    non-default method was preferred).
  * R CMD build removes LazyData and LazyDataCompression fields from
    the DESCRIPTION file of packages without a data directory.
  ENCODING-RELATED CHANGES:
  * The parser now treats \Unnnnnnnn escapes larger than the upper
    limit for Unicode points (\U10FFFF) as an error as they cannot be
    represented by valid UTF-8.
    Where such escapes are used for outputting non-printable
    (including unassigned) characters, 6 hex digits are used (rather
    than 8 with leading zeros).  For clarity, braces are used, for
    example \U{0effff}.
  * The parser now looks for non-ASCII spaces on Solaris (as
    previously on most other OSes).
  * There are warnings (including from the parser) on the use of
    unpaired surrogate Unicode points such as \uD834.  (These cannot
    be converted to valid UTF-8.)
  * Functions nchar(), tolower(), toupper() and chartr() and those
    using regular expressions have more support for inputs with a
    marked Latin-1 encoding.
  * The character-classification functions used (by default) to
    replace the system iswxxxxx functions on Windows, macOS and AIX
    have been updated to Unicode 13.0.0.
    The character-width tables have been updated to include new
    assignments in Unicode 13.0.0.
  * The code for evaluating default (extended) regular expressions
    now uses the same character-classification functions as the rest
    of R (previously they differed on Windows, macOS and AIX).
  * There is a build-time option to replace the system's
    wide-character wctrans C function by tables shipped with R: use
    configure option --with-internal-towlower or (on Windows)
  - DUSE_RI18N_CASE in CFLAGS when building R.  This may be needed
    to allow tolower() and toupper() to work with Unicode characters
    beyond the Basic Multilingual Plane where not supported by system
    functions (e.g. on Solaris where it is the new default).
  * R is more careful when truncating UTF-8 and other multi-byte
    strings that are too long to be printed, passed to the system or
    libraries or placed into an internal buffer.  Truncation will no
    longer produce incomplete multibyte characters.
  DEPRECATED AND DEFUNCT:
  * Function plclust() from the package stats and
    package.dependencies(), pkgDepends(), getDepList(),
    installFoundDepends(), and vignetteDepends() from package tools
    are defunct.
  * Defunct functions checkNEWS() and readNEWS() from package tools
    and CRAN.packages() from utils have been removed.
  * R CMD config CXXCPP is defunct (it was deprecated in R 3.6.2).
  * parallel::detectCores() drops support for Irix (retired in 2013).
  * The LINPACK argument to chol.default(), chol2inv(),
    solve.default() and svd() has been defunct since R 3.1.0.  It was
    silently ignored up to R 4.0.3 but now gives an error.
  * Subsetting/indexing, such as ddd[*] or ddd$x on a DOTSXP
    (dot-dot-dot) object ddd has been disabled; it worked by accident
    only and was undocumented.
  BUG FIXES:
  * Many more C-level allocations (mainly by malloc and strdup) are
    checked for success with suitable alternative actions.
  * Bug fix for replayPlot(); this was turning off graphics engine
    display list recording if a recorded plot was replayed in the
    same session.  The impact of the bug became visible if resize the
    device after replay OR if attempted another savePlot() after
    replay (empty display list means empty screen on resize or empty
    saved plot).
  * R CMD check etc now warn when a package exports non-existing S4
    classes or methods, also in case of no "methods" presence.
    (Reported by Alex Bertram; reproducible example and patch by
    Sebastian Meyer in PR#16662.)
  * boxplot() now also accepts calls for labels such as ylab, the
    same as plot().  (Reported by Marius Hofert.)
  * The help page for xtabs() now correctly states that addNA is
    setting na.action = na.pass among others.  (Reported as PR#17770
    by Thomas Soeiro.)
  * The R CMD check &lt;pkg&gt; gives a longer and more comprehensible
    message when DESCRIPTION misses dependencies, e.g., in Imports:.
    (Thanks to the contributors of PR#17179.)
  * update.default() now calls the generic update() on the formula to
    work correctly for models with extended formulas.  (As reported
    and suggested by Neal Fultz in PR#17865.)
  * The horizontal position of leaves in a dendrogram is now correct
    also with center = FALSE.  (PR#14938, patch from Sebastian
    Meyer.)
  * all.equal.POSIXt() no longer warns about and subsequently ignores
    inconsistent "tzone" attributes, but describes the difference in
    its return value (PR#17277).  This check can be disabled _via_
    the new argument check.tzone = FALSE as suggested by Sebastian
    Meyer.
  * as.POSIXct() now populates the "tzone" attribute from its tz
    argument when x is a logical vector consisting entirely of NA
    values.
  * x[[2^31]] &lt;- v now works.  (Thanks to the report and patch by
    Suharto Anggono in PR#17330.)
  * In log-scale graphics, axis() ticks and label positions are now
    computed more carefully and symmetrically in their range,
    typically providing _more_ ticks, fulfilling wishes in PR#17936.
    The change really corresponds to an improved axisTicks() (package
    grDevices), potentially influencing grid and lattice, for
    example.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now correct to at
    least five digits where it was catastrophically wrong,
    previously.
  * sum(df) and similar "Summary"- and "Math"-group member functions
    now work for data frames df with logical columns, notably also of
    zero rows.  (Reported to R-devel by Martin "b706".)
  * unsplit() had trouble with tibbles due to unsound use of rep(NA,
    len)-indexing, which should use NA_integer_ (Reported to R-devel
    by Mario Annau.)
  * pnorm(x, log.p = TRUE) underflows to -Inf slightly later.
  * show(&lt;hidden S4 generic&gt;) prints better and without quotes for
    non-hidden S4 generics.
  * read.table() and relatives treated an "NA" column name as missing
    when check.names = FALSE PR#18007.
  * Parsing strings containing UTF-16 surrogate pairs such as
    "\uD834\uDD1E" works better on some (uncommon) platforms.
    sprintf("%X", utf8ToInt("\uD834\uDD1E")) should now give "1D11E"
    on all platforms.
  * identical(x,y) is no longer true for differing DOTSXP objects,
    fixing PR#18032.
  * str() now works correctly for DOTSXP and related exotics, even
    when these are doomed.
    Additionally, it no longer fails for lists with a class and
    "irregular" method definitions such that e.g. lapply(*) will
    necessarily fail, as currently for different igraph objects.
  * Too long lines in environment files (e.g. Renviron) no longer
    crash R. This limit has been increased to 100,000 bytes.
    (PR#18001.)
  * There is a further workaround for FreeType giving incorrect
    italic font faces with cairo-based graphics devices on macOS.
  * add_datalist(*, force = TRUE) (from package tools) now actually
    updates an existing data/datalist file for new content.  (Thanks
    to a report and patch by Sebastian Meyer in PR#18048.)
  * cut.Date() and cut.POSIXt() could produce an empty last interval
    for breaks = "months" or breaks = "years".  (Reported as PR#18053
    by Christopher Carbone.)
  * Detection of the encoding of 'regular' macOS locales such as
    en_US (which is UTF-8) had been broken by a macOS change:
    fortunately these are now rarely used with en_US.UTF-8 being
    preferred.
  * sub() and gsub(pattern, repl, x, *) now keep attributes of x such
    as names() also when pattern is NA (PR#18079).
  * Time differences ("difftime" objects) get a replacement and a
    rep() method to keep "units" consistent.  (Thanks to a report and
    patch by Nicolas Bennett in PR#18066.)
  * The \RdOpts macro, setting defaults for \Sexpr options in an Rd
    file, had been ineffective since R 2.12.0: it now works again.
    (Thanks to a report and patch by Sebastian Meyer in PR#18073.)
  * mclapply and pvec no longer accidentally terminate parallel
    processes started before by mcparallel or related calls in
    package parallel (PR#18078).
  * grep and other functions for evaluating (extended) regular
    expressions handle in Unicode also strings not explicitly flagged
    UTF-8, but flagged native when running in UTF-8 locale.
  * Fixed a crash in fifo implementation on Windows (PR#18031).
  * Binary mode in fifo on Windows is now properly detected from
    argument open (PR#15600, PR#18031).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1622808000">- The line %{__install} -m 755 -d %{_infodir}
  no longer works in TW or Factory.
  But without that line it works everywhere. So this instruction
  was commented out of the spec file.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1628596800">- CHANGES IN R 4.1.1:
  NEW FEATURES:
  * require(pkg, quietly = TRUE) is quieter and in particular does
    not warn if the package is not found.
  DEPRECATED AND DEFUNCT:
  * Use of ftp:// URIs should be regarded as deprecated, with
    on-going support confined to method = "libcurl" and not routinely
    tested.  (Nowadays no major browser supports them.)
  * The non-default method = "internal" is deprecated for http:// and
    ftp:// URIs for both download.file and url.
  * On Windows, method = "wininet" is deprecated for http://,
    https:// and ftp:// URIs for both download.file and url.  (A
    warning is only given for ftp://.)
    For ftp:// URIs the default method is now "libcurl" if available
    (which it is on CRAN builds).
    method = "wininet" remains the default for http:// and https://
    URIs but if libcurl is available, using method = "libcurl" is
    preferred.
  INSTALLATION:
  * make check now works also without a LaTeX installation.  (Thanks
    to Sebastian Meyer's PR#18103.)
  BUG FIXES:
  * make check-devel works again in an R build configured with
  - -without-recommended-packages.
  * qnbinom(p, size, mu) for large size/mu is correct now in a range
    of cases (PR#18095); similarly for the (size, prob)
    parametrization of the negative binomial.  Also qpois() and
    qbinom() are better and or faster for extreme cases.  The
    underlying C code has been modularized and is common to all four
    cases of discrete distributions.
  * gap.axis is now part of the axis() arguments which are passed
    from bxp(), and hence boxplot().  (Thanks to Martin Smith's
    report and suggestions in PR#18109.)
  * .First and .Last can again be set from the site profile.
  * seq.int(from, to, *) and seq.default(..) now work better in large
    range cases where from-to is infinite where the two boundaries
    are finite.
  * all.equal(x,y) now returns TRUE correctly also when several
    entries of abs(x) and abs(y) are close to .Machine$double.xmax,
    the largest finite numeric.
  * model.frame() now clears the object bit when removing the class
    attribute of a value via na.action (PR#18100).
  * charClass() now works with multi-character strings on Windows
    (PR#18104, fixed by Bill Dunlap).
  * encodeString() on Solaris now works again in Latin-1 encoding on
    characters represented differently in UTF-8.  Support for
    surrogate pairs on Solaris has been improved.
  * file.show() on Windows now works with non-ASCII path names
    representable in the current native encoding (PR#18132).
  * Embedded R on Windows can now find R home directory via the
    registry even when installed only for the current user
    (PR#18135).
  * pretty(x) with finite x now returns finite values also in the
    case where the extreme x values are close in size to the maximal
    representable number .Machine$double.xmax.
    Also, it's been tweaked for very small ranges and when a boundary
    is close (or equal) to zero; e.g., pretty(c(0,1e-317)) no longer
    has negative numbers, currently still warning about a very small
    range, and pretty(2^-(1024 - 2^-1/(c(24,10)))) is more accurate.
  * The error message for not finding vignette files when weaving has
    correct file sizes now. (Thanks to Sebastian Meyer's PR#18154.)
  * dnbinom(20, &lt;large&gt;, 1) now correctly gives 0, and similar cases
    are more accurate with underflow precaution.  (Reported by Francisco Vera Alcivar in PR#18072.)</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635163200">- repaired https://bugzilla.suse.com/show_bug.cgi?id=1191380
  (rpmacros now go to rpmmacrodir)
- minor clean-ups in spec file</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635768000">- CHANGES IN R 4.1.2:
  C-LEVEL FACILITIES:
  * The workaround in headers R.h and Rmath.h (using namespace std;)
    for the Oracle Developer Studio compiler is no longer needed now
    C++11 is required so has been removed.  A couple more usages of
    log() (which should have been std::log()) with an int argument
    are reported on Solaris.
  * The undocumented limit of 4095 bytes on messages from the
    S-compatibility macros PROBLEM and MESSAGE is now documented and
    longer messages will be silently truncated rather than
    potentially causing segfaults.
  * If the R_NO_SEGV_HANDLER environment variable is non-empty, the
    signal handler for SEGV/ILL/BUS signals (which offers recovery
    user interface) is not set. This allows more reliable debugging
    of crashes that involve the console.
  DEPRECATED AND DEFUNCT:
  * The legacy S-compatibility macros PROBLEM, MESSAGE, ERROR, WARN,
    WARNING, RECOVER, ... are deprecated and will be hidden in R
    4.2.0. R's native interface of Rf_error and Rf_warning has long
    been preferred.
  BUG FIXES:
  * .mapply(F, dots, .) no longer segfaults when dots is not a list
    and uses match.fun(F) as always documented; reported by Andrew
    Simmons in PR#18164.
  * hist(&lt;Date&gt;, ...) and hist(&lt;POSIXt&gt;, ...)  no longer pass
    arguments for rect() (such as col and density) to axis().
    (Thanks to Sebastian Meyer's PR#18171.)
  * \Sexpr{ch} now preserves Encoding(ch). (Thanks to report and
    patch by Jeroen Ooms in PR#18152.)
  * Setting the RNG to "Marsaglia-Multicarry" e.g., by RNGkind(), now
    warns in more places, thanks to Andr'e Gillibert's report and
    patch in PR#18168.
  * gray(numeric(), alpha=1/2) no longer segfaults, fixing PR#18183,
    reported by Till Krenz.
  * Fixed dnbinom(x, size=&lt;very_small&gt;, .., log=TRUE) regression,
    reported by Martin Morgan.
  * as.Date.POSIXlt(x) now keeps names(x), thanks to Davis Vaughan's
    report and patch in PR#18188.
  * model.response() now strips an "AsIs" class typically, thanks to
    Duncan Murdoch's report and other discussants in PR#18190.
  * try() is considerably faster in case of an error and long call,
    as e.g., from some do.call().  Thanks to Alexander Kaever's
    suggestion posted to R-devel.
  * qqline(y = &lt;object&gt;) such as y=I(.), now works, see also
    PR#18190.
  * Non-integer mgp par() settings are now handled correctly in
    axis() and mtext(), thanks to Mikael Jagan and Duncan Murdoch's
    report and suggestion in PR#18194.
  * formatC(x) returns length zero character() now, rather than ""
    when x is of length zero, as documented, thanks to Davis
    Vaughan's post to R-devel.
  * removeSource(fn) now retains (other) attributes(fn).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1647000000">- CHANGES IN R 4.1.3:
  NEW FEATURES:
  * The default version of Bioconductor has been changed to 3.14.
    (This is used by setRepositories and the menus in GUIs.)
  UTILITIES:
  * R CMD check --as-cran has a workaround for a bug in versions of
    file up to at least 5.41 which mis-identify DBF files last
    changed in 2022 as executables.
  C-LEVEL FACILITIES:
  * The legacy S-compatibility macros SINGLE_* in R_ext/Constants.h
    (included by R.h) are deprecated and will be removed in R 4.2.0.
  BUG FIXES:
  * Initialization of self-starting nls() models with initialization
    functions following the pre-R-4.1.0 API (without the ...
    argument) works again for now, with a deprecation warning.
  * Fixed quoting of ~autodetect~ in Java setting defaults to avoid
    inadvertent user lookup due to leading ~, reported in PR#18231 by
    Harold Gutch.
  * substr(., start, stop) &lt;- v now treats _negative_ stop values
    correctly.  Reported with a patch in PR#18228 by Brodie Gaslam.
  * Subscripting an array x without dimnames by a
    length(dim(x))-column character matrix gave "random" non-sense,
    now an error; reported in PR#18244 by Mikael Jagan.
  * ...names() now matches names(list(...)) closely, fixing PR#18247.
  * all.equal(*, scale = s) now works as intended when length(s) &gt; 1,
    partly thanks to Michael Chirico's PR#18272.
  * print(x) for long vectors x now also works for named atomic
    vectors or lists and prints the correct number when reaching the
    getOption("max.print") limit; partly thanks to a report and
    proposal by Hugh Parsonage to the R-devel list.
  * all.equal(&lt;selfStart&gt;, *) no longer signals a deprecation
    warning.
  * reformulate(*, response=r) gives a helpful error message now when
    length(r) &gt; 1, thanks to Bill Dunlap's PR#18281.
  * Modifying globalCallingHandlers inside withCallingHandlers() now
    works or fails correctly, thanks to Henrik Bengtsson's PR#18257.
  * hist(&lt;Date&gt;, breaks = "days") and hist(&lt;POSIXt&gt;, breaks = "secs")
    no longer fail for inputs of length 1.
  * qbeta(.001, .9, .009) and similar cases now converge correctly
    thanks to Ben Bolker's report in PR#17746.
  * window(x, start, end) no longer wrongly signals "'start' cannot
    be after 'end'", fixing PR#17527 and PR#18291.
  * data() now checks that its (rarely used) list argument is a
    character vector - a couple of packages passed other types and
    gave incorrect results.
  * which() now checks its arr.ind argument is TRUE rather coercing
    to logical and taking the first element - which gave incorrect
    results in package code.
  * model.weights() and model.offset() more carefully extract their
    model components, thanks to Ben Bolker and Tim Taylor's R-devel
    post.
  * list.files(recursive = TRUE) now shows all broken symlinks
    (previously, some of them may have been omitted, PR#18296).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1650628800">- CHANGES IN R 4.2.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * The formula method of aggregate() now matches the generic in
    naming its first argument x (resolving PR#18299 by Thomas
    Soeiro).
    This means that calling aggregate() with a formula as a named
    first argument requires name formula in earlier versions of R and
    name x now, so portable code should not name the argument (code
    in many packages did).
  * Calling &amp;&amp; or || with either argument of length greater than one
    now gives a warning (which it is intended will become an error).
  * Calling if() or while() with a condition of length greater than
    one gives an error rather than a warning.  Consequently,
    environment variable _R_CHECK_LENGTH_1_CONDITION_ no longer has
    any effect.
  * Windows users should consult the WINDOWS section below for some
    profound changes including
  * Support for 32-bit builds has been dropped.
  * UTF-8 locales are used where available.
  * The default locations for the R installation and personal
    library folder have been changed.
    Thanks to Tomas Kalibera for months of work on the Windows port
    for this release.
  NEW FEATURES:
  * matrix(x, n, m) now warns in more cases where length(x) differs
    from n * m, as suggested by Abby Spurdle and Wolfgang Huber in
    Feb 2021 on the R-devel mailing list.
    This warning can be turned into an error by setting environment
    variable _R_CHECK_MATRIX_DATA_ to TRUE: R CMD check --as-cran
    does so unless it is already set.
  * Function file_test() in package utils gains tests for symlinks,
    readability and writability.
  * capabilities("libxml") is now false.
    The description of capabilities("http/ftp") now reflects that it
    refers to the default method, no longer the internal one.
  * simplify2array() gains an except argument for controlling the
    exceptions used by sapply().
  * Environment variables R_LIBS_USER and R_LIBS_SITE are both now
    set to the R system default if unset or empty, and can be set to
    NULL to indicate an empty list of user or site library
    directories.
  * The warning for axis()(-like) calls in cases of relatively small
    ranges (typically in log-scale situations) is slightly improved
    _and_ suppressed from explicit calls to .axisPars() as has always
    been the intention.
  * The contrasts setter function `contrasts&lt;-` gains an explicit
    default how.many = NULL rather than just using missing(how.many).
  * grid.pretty() gains a new optional argument n = 5.
  * There is a new function .pretty() with option bounds as a
    technical-utility version of pretty().  It and pretty() gain a
    new argument f.min with a better than back-compatible default.
  * Function grDevices::axisTicks() and related functions such as
    graphics::axis() work better, notably for the log scale; partly
    because of the pretty() improvements, but also because care is
    taken e.g., when ylim is finite but diff(ylim) is infinite.
  * nclass.FD() gains a digits option.
  * The R Mathlib internal C function bd0() (called indirectly from a
    dozen probability density and distribution functions such as
    dpois(), dbinom(), dgamma(), pgamma() _etc_) has been
    complemented by a more sophisticated and (mostly) more accurate C
    function ebd0(), currently called only by internal dpois_raw()
    improving accuracy for R level dpois() and potentially others
    calling it such as dnbinom(), dgamma() or pgamma().  (Thanks to
    Morten Welinder's PR#15628.)
  * write.ftable() gains sep = " " argument as suggested by Thomas
    Soeiro.
  * The names of the locale categories supported by R's
    Sys.getlocale() and Sys.setlocale() are now provided by variable
    .LC.categories in the base namespace.
  * The Date and POSIXt methods for hist() and the histogram method
    for plot() now also use the new default col = "lightgray" in
    consistency with the corresponding change to hist()'s default for
    R 4.0.0.
  * hist.default() gains new fuzz argument, and the histogram plot
    method no longer uses fractional axis ticks when displaying
    counts ("Frequency").
  * mapply() and hence Map() now also obey the "max-or-0-if-any"
    recycling rule, such that, e.g., Map(`+`, 1:3, 1[0]) is valid
    now.
  * as.character(&lt;obj&gt;) for "hexmode" or "octmode" objects now
    fulfils the important basic rule as.character(x)[j] ===
    as.character(x[j]).
  * The set utility functions, notably intersect() have been tweaked
    to be more consistent and symmetric in their two set arguments,
    also preserving a common mode.
  * substr(ch, start,end) &lt;- new now e.g., preserves names(ch); ditto
    for substring(), thanks to a patch from Brodie Gaslam.
  * plot(&lt;lm&gt;) gains a extend.ylim.f argument, in partial response to
    PR#15285; further PR#17784 is fixed thanks to several
    contributors and a patch by Elin Waring.  The Cook's dist
    contours get customizable via cook.col and cook.lty with a
    different default color and their legend is nicer by default and
    customizable via cook.legendChanges.
  * Attempting to subset an object that is not subsettable now
    signals an error of class notSubsettableError. The
    non-subsettable object is contained in the object field of the
    error condition.
  * Subscript-out-of-bounds errors are now signaled as errors of
    class subscriptOutOfBoundsError.
  * Stack-overflow errors are now signaled as errors inheriting from
    class stackOverflowError. See ?stackOverflowError for more
    details.
  * New partly experimental Sys.setLanguage() utility, solving the
    main problem of PR#18055.
  * gettext() and gettextf() get a new option trim = TRUE which when
    set to false allows translations for strings such as "Execution
    halted\n" typical for C code.
  * An experimental implementation of hash tables is now available.
    See ?hashtab for more details.
  * identical() gains a extptr.as.ref argument for requesting that
    external pointer objects be compared as reference objects.
  * reorder() gets an argument decreasing which it passes to sort()
    for level creation; based on the wish and patch by Thomas Soeiro
    in PR#18243.
  * as.vector() gains a data.frame method which returns a simple
    named list, also clearing a long standing 'FIXME' to enable
    as.vector(&lt;data.frame&gt;, mode="list").  This breaks code relying
    on as.vector(&lt;data.frame&gt;) to return the unchanged data frame.
  * legend() is now vectorized for arguments cex, x.intersp, and
    text.width.  The latter can now also be specified as a vector
    (one element for each column of the legend) or as NA for
    computing a proper column wise maximum value of strwidth(legend).
    The argument y.intersp can be specified as a vector with one
    entry for each row of the legend.
    legend() also gains new arguments title.cex and title.font.
    Thanks to Swetlana Herbrandt.
  * Deparsing no longer remaps attribute names dim, dimnames, levels,
    names and tsp to historical S-compatible names (which structure()
    maps back).
  * sample() and sample.int() have additional sanity checks on their
    size and n arguments.
    all.equal.numeric() gains a sanity check on its tolerance
    argument - calling all.equal(a, b, c) for three numeric vectors
    is a surprisingly common error.
    mean(na.rm =), rank(na.last =), barplot(legend.text =),
    boxplot(), contour(drawlabels =), polygon(border =) and
    methods::is(class2 =) have more robust sanity checks on their
    arguments.
    R CMD Rd2pdf (used by R CMD check) has a more robust sanity check
    on the format of \alias{} commands.
  * psigamma(x, deriv) for negative x now also works for deriv = 4
    and 5; their underlying C level dpsifn() is documented in
    'Writing R Extensions'.
  * The HTML help system now uses HTML5 (wish of PR#18149).
  * ks.test() now provides exact p-values also with ties and MC
    p-values in the two-sample (Smirnov) case.  By Torsten Hothorn.
  * ks.test() gains a formula interface, with y ~ 1 for the
    one-sample (Kolmogorov) test and y ~ group for the two-sample
    (Smirnov) test.  Contributed by Torsten Hothorn.
  * The return value from ks.test() now has class c("ks.test",
    "htest") - packages using try() need to take care to use
    inherits() and not == on the class.
  * New functions psmirnov(), qsmirnov() and rsmirnov() in package
    stats implementing the asymptotic and exact distributions of the
    two-sample Smirnov statistic.
  * iconv() now allows sub = "c99" to use C99-style escapes for UTF-8
    inputs which cannot be converted to encoding to.
  * In a forward pipe |&gt; expression it is now possible to use a named
    argument with the placeholder _ in the rhs call to specify where
    the lhs is to be inserted.  The placeholder can only appear once
    on the rhs.
  * The included LAPACK sources have been updated to version 3.10.0,
    except for the four Fortran 77 routines which 3.10.0 has
    re-implemented in Fortran 90 (where the older versions have been
    retained as the R build process does not support Fortran 90).
  * path.expand() and most other uses of tilde expansion now warn if
    a path would be too long if expanded.  (An exception is
    file.exists(), which silently returns false.)
  * trunc(&lt;Date&gt;, *) now supports units = "months" or "years" for
    consistency with the POSIXt method, thanks to Dirk Eddelbuettel's
    proposal in PR#18099.
  * list2DF() now checks that its arguments are of the same length,
    rather than use recycling.
  * The HTML help system has several new features: LaTeX-like math
    can be typeset using either KaTeX or MathJax, usage and example
    code is highlighted using Prism, and for dynamic help the output
    of examples and demos can be shown within the browser if the
    knitr package is installed. These features can be disabled by
    setting the environment variable _R_HELP_ENABLE_ENHANCED_HTML_ to
    a false value.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 15
    and so packages that provide graphics devices should be
    reinstalled.
  * The grid package now allows the user to specify a "vector" of
    pattern fills.  The fill argument to gpar() accepts a list of
    gradients and/or patterns and the functions linearGradient(),
    radialGradient(), and pattern() have a new group argument.
    Points grobs (data symbols) can now also have a pattern fill.
    The grobCoords() function now returns a more informative and
    complex result.
  * The grid package has new functions for drawing isolated groups:
    grid.group(), grid.define(), and grid.use().  These functions add
    compositing operators and affine transformations to R's graphics
    capabilities.
    The grid package also has new functions for stroking and filling
    paths: grid.stroke(), grid.fill(), and grid.fillStroke().
    A new function as.path() allows the user to specify the fill rule
    for a path that is to be used for clipping, stroking, or filling;
    available options are "winding" and "evenodd".  A new function
    as.mask() allows the user to specify the type of a mask;
    available options are "alpha" and "luminance".
    These new features are only supported so far (at most) on the
    Cairo-based graphics devices and on the pdf() device.
  * dev.capabilities() reports on device support for the new
    features.
  * par() now warns about unnamed non-character arguments to prevent
    misuse such as {usr &lt;- par("usr"); par(usr)}.
  INSTALLATION:
  * Facilities for accessing ftp:// sites are no longer tested
    (except _pro tem_ for curlGetHeaders()) as modern browsers have
    removed support.
  * R can now be built with DEFS = -DSTRICT_R_HEADERS .
  PACKAGE INSTALLATION:
  * R CMD INSTALL no longer tangles vignettes. This completes an R
    CMD build change in R 3.0.0 and affects packages built before R
    3.0.2. Such packages should be re-made with R CMD build to have
    the tangled R code of vignettes shipped with the tarball.
  * USE_FC_LEN_T will become the default: this uses the correct
    prototypes for Fortran BLAS/LAPACK routines called from C/C++,
    and requires adjustment of most such calls - see 'Writing R
    Extensions' SS6.6.2.  (This has been supported since R 3.6.2.)
  * Package installation speed for packages installed with
    keep.source has been improved. This resolve the issue reported by
    Ofek Shilon in PR#18236.
  UTILITIES:
  * R CMD check can optionally report files/directories left behind
    in home, /tmp (even though TMPDIR is set) and other directories.
    See the "R Internals" manual for details.
  * R CMD check now reports byte-compilation errors during
    installation.  These are not usually fatal but may result in
    parts of the package not being byte-compiled.
  * _R_CHECK_DEPENDS_ONLY_ can be applied selectively to examples,
    tests and/or vignettes in R CMD check: see the "R Internals"
    manual.
  * _R_CHECK_SRC_MINUS_W_IMPLICIT_ now defaults to true: recent
    versions of Apple clang on macOS have made implicit function
    declarations in C into a compilation error.
  * R CMD check --as-cran makes use of the environment variable
    AUTORECONF.  See the "R Internals" manual SS8 for further details.
  * R CMD check --use-valgrind also uses valgrind when re-building
    vignettes as some non-Sweave vignettes unhelpfully comment out
    all their code when R CMD check runs vignettes.
  * Errors in re-building vignettes (unless there are LaTeX errors)
    are reported by R CMD check as ERROR rather than WARNING when
    running vignettes has been skipped (as it frequently is in CRAN
    checks and by --as-cran).
  * R CMD Rd2pdf gains a --quiet option that is used by R CMD build
    when building the PDF package manual.
  * R CMD Rd2pdf now always runs LaTeX in batch mode, consistent with
    Texinfo &gt;= 6.7. The --batch option is ignored.
  * R CMD build and R CMD check now include the Rd file name and line
    numbers in the error message of an \Sexpr evaluation failure.
  * For packages using the \doi Rd macro (now an install-time \Sexpr)
    but no other dynamic Rd content, R CMD build now produces a
    smaller tarball and is considerably faster - skipping temporary
    package installation.
  C-LEVEL FACILITIES:
  * The non-API header R_ext/R-ftp-http.h is no longer provided, as
    the entry points it covered are now all defunct.
  * A number of non-API declarations and macro definitions have been
    moved from the installed header Rinternals.h to the internal
    header Defn.h. Packages that only use entry points and
    definitions documented to be part of the API as specified in
    'Writing R Extensions' SS6 should not be affected.
  * The macro USE_RINTERNALS no longer has any effect when compiling
    package code.  Packages which also use R_NO_REMAP will need to
    ensure that the remapped names are used for calls to API
    functions that were formerly also made available as macros.
  * The deprecated legacy S-compatibility macros PROBLEM, MESSAGE,
    ERROR, WARN, WARNING, RECOVER, ... are no longer defined in
    R_exts/RS.h (included by R.h).  Replace these by calls to
    Rf_error and Rf_warning (defined in header R_ext/Error.h included
    by R.h).
    Header R_ext/RS.h no longer includes R_ext/Error.h.
  * Header R_ext/Constants.h (included by R.h) when included from C++
    now includes the C++ header cfloat rather than the C header
    float.h (now possible as C++11 is required).
  * The legacy S-compatibility macros DOUBLE_* in R_ext/Constants.h
    (included by R.h) are deprecated.
  * The deprecated S-compatibility macros SINGLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * R_Calloc, R_Free and R_Realloc are preferred to their unprefixed
    forms and error messages now use the prefix. These forms were
    introduced in R 3.4.0 and are available even when
    STRICT_R_HEADERS is defined.
  * rmultinom has been documented in 'Writing R Extensions' SS6 so is
    now part of the R API.
  * Similarly, Rtanpi, called from R level tanpi() is now part of the
    R API.
  * The long-deprecated, undocumented and non-API entry point call_R
    is no longer declared in R_ext/RS.h (included by R.h).
  * The header S.h which has been unsupported since Jan 2016 has been
    removed.  Use R.h instead.
  DEPRECATED AND DEFUNCT:
  * The (non-default and deprecated) method = "internal" for
    download.file() and url() no longer supports http:// nor ftp://
    URIs.  (It is used only for file:// URIs.)
    On Windows, download.file(method = "wininet") no longer supports
    ftp:// URIs.  (It is no longer the default method, which is
    "libcurl" and does.)
    On Windows, the deprecated method = "wininet" now gives a warning
    for http:// and https:// URIs for both download.file() and url().
    (It is no longer the default method.)
  * On Windows, the command-line option --max-mem-size and
    environment variable R_MAX_MEM_SIZE are defunct.  The memory
    allocation limit was important for 32-bit builds, but these are
    no longer supported.
  * default.stringsAsFactors() is now formally deprecated, where that
    was only mentioned on its regular help page, previously.  So it
    now gives a warning if called.
  * unix.time() is defunct now; it had been deprecated since R 3.4.0.
  BUG FIXES:
  * Setting digits = 0 in format(), print.default() (and hence
    typically print()) or options() is again invalid.  Its behaviour
    was platform-dependent, and it is unclear what "zero significant
    digits" should mean (PR#18098).
  * Messages from C code in the cairo section of package grDevices
    are now also offered for translation, thanks to Michael Chirico's
    PR#18123.
  * mean(x) with finite x now is finite also without "long.double"
    capability.
  * R CMD Rd2pdf no longer leaves an empty build directory behind
    when it aborts due to an already existing output file.  (Thanks
    to Sebastian Meyer's PR#18141.)
  * density(x, weights = w, na.rm = TRUE) when anyNA(x) is true, now
    removes weights "in parallel" to x, fixing PR#18151, reported by
    Matthias Gondan.  Additionally, it gets a subdensity option.
  * Conversion of \Sexpr[]{&lt;expR&gt;} to LaTeX or HTML no longer
    produces long blocks of empty lines when &lt;expR&gt; itself contains
    several lines all producing empty output.  Thanks to a report and
    patch by Ivan Krylov posted to R-devel.
  * R CMD build no longer fails if a package vignette uses child
    documents and inst/doc exists.  (Thanks to Sebastian Meyer's
    PR#18156.)
  * When an R documentation ('help' source) file man/foo.Rd in a
    package has \donttest{..} examples with a syntax error, it is now
    signalled as ERROR and with correct line numbers relating to the
  * -Ex.R file, thanks to Duncan Murdoch and Sebastian Meyer's
    reports and patch proposals in PR#17501.
  * Improved determination of the correct translation domain in
    non-base packages, addressing the combination of PR#18092 and
    PR#17998 (#c6) with reports and _augmented_ patch #2904 by
    Suharto Anggono.
    Note that "R-base" is no longer the default domain e.g., for
    top-level calls to gettext(); rather translation needs explicit
    domain = * specification in such cases.
  * identical(attrib.as.set=FALSE) now works correctly with data
    frames with default row names (Thanks to Charlie Gao's PR#18179).
  * txtProgressBar() now enforces a non-zero width for argument char,
    without which no progress can be visible.
  * dimnames(table(d)) is more consistent in the case where d is a
    list with a single component, thanks to Thomas Soeiro's report to
    R-devel.
    Further, table(d1, d2) now gives an error when d1 and d2 are data
    frames as suggested by Thomas in PR#18224.
  * Fix for drawing semi-transparent lines and fills on the native
    Windows graphics device (PR#18219 and PR#16694).  Thanks to Nick
    Ray for helpful diagnosis on Bugzilla.
  * The deparser now wraps sub-expressions such as if(A) ..  with
    parentheses when needed; thanks to Duncan Murdoch's PR#18232 and
    Lionel Henry's patches there.
  * remove.packages() no longer tries to uninstall Priority: base
    packages, thanks to a report and suggestions by Colin Fay in
    PR#18227.
  * win.metafile() now has xpinch and ypinch arguments so that the
    user can override Windows' (potentially wrong) guess at device
    dimensions.
  * x[i] and x[[i]] for non-integer i should now behave in all cases
    as always documented: the index used is equivalent to
    as.integer(i) unless that would overflow where trunc(i) is used
    instead; thanks to Suharto Anggono's report and patch proposals
    in PR#17977.
  * asOneSidedFormula() now associates the resulting formula with the
    global environment rather than the evaluation environment created
    for the call.
  * &lt;bibentry&gt;$name now matches the field name case-insensitively,
    consistent with bibentry() creation and the replacement method.
  * cbind() failed to detect some length mismatches with a mixture of
    time-series and non-time-series inputs.
  * The default LaTeX style file Sweave.sty used by the RweaveLatex
    driver no longer loads the obsolete ae package; thanks to a
    report by Thomas Soeiro in PR#18271.  Furthermore, it now skips
    \usepackage[T1]{fontenc} for engines other than pdfTeX (if
    detected) or if the new [nofontenc] option is used.
  * smooth.spline() now stores its logical cv argument more safely,
    fixing a rare bug when printing, and also stores n.
  * smooth.spline(x,y,*) now computes the cv.crit statistic
    correctly, also when is.unsorted(x), fixing PR#18294.
  * The data.frame method of rbind() now warns when binding
    not-wholly-recycling vectors, by analogy to the default method
    (for matrices).
  * setAs() finds the correct class for name to when multiple
    packages define a class with that name. Thanks to Gabor Csardi
    for the report.
  * Fix for detaching a package when two classes of the same name are
    present in method signatures for the same generic. Thanks to
    Gabor Csardi for the report.
  * match.arg("", c("", "a", "B")) gives a better error message, in
    part from PR#17959, thanks to Elin Waring.
  * R CMD Sweave --clean no longer removes pre-existing files or
    subdirectories (PR#18242).
  * The quartz() device no longer splits polylines into subpaths.
    That has caused narrowly-spaced lines with many points to always
    look solid even when dashed line type was used due to dash phase
    restarts.
  * Deparsing constructs such as quote(1 + `!`(2) + 3) works again as
    before R 3.5.0, thanks to the report and patch in PR#18284 by
    Suharto Anggono.
  * as.list(f) for a factor f now keeps names(f), fixing PR#18309.
  * qbeta(.001, .9, .009) and analogous qf() calls now return a
    correct value instead of NaN or wrongly 1, all with a warning;
    thanks to the report by Ludger Goeminne in PR#18302.
  * plot.lm() failed to produce the plot of residuals vs.  factor
    levels (i.e., which=5 when leverages are constant) for models
    with character predictors (PR#17840).
  * interaction.plot(..., xtick = TRUE) misplaced the x-axis line
    (PR#18305).
  * Not strictly fixing a bug, format()ing and print()ing of
    non-finite Date and POSIXt values NaN and +/-Inf no longer show
    as NA but the respective string, e.g., Inf, for consistency with
    numeric vector's behaviour, fulfilling the wish of PR#18308.
  * R CMD check no longer runs test scripts generated from
    corresponding .Rin files twice and now signals an ERROR if
    processing an .Rin script fails.
  * tools::Rd2txt() used for plain-text help pages now renders \hrefs
    (if tools::Rd2txt_options(showURLs = TRUE)) and \urls with
    percent-encoding and standards-compliant delimiting style (angle
    brackets and no URL: prefix).  \email is now rendered with a
    mailto: prefix.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1655985600">- CHANGES IN R 4.2.1:
  NEW FEATURES:
  * New function utils::findCRANmirror() to find out if a CRAN mirror
    has been selected, otherwise fallback to the main site.  This
    behaves in the same way as tools::CRAN_package_db() and is
    intended for packages wishing to access CRAN for purposes other
    than installing packages.
    The need for this was shown by a day when the main CRAN website
    was offline and a dozen or so packages which had its URL
    hardcoded failed their checks.
  INSTALLATION on a UNIX-ALIKE:
  * The libraries searched for by --with-blas (without a value) now
    include BLIS (after OpenBLAS but before ATLAS).  And on macOS,
    the Accelerate framework (after ATLAS).  (This is patterned after
    the AX_BLAS macro from the Autoconf Archive.)
  * The included LAPACK sources have been updated to 3.10.1.
  UTILITIES:
  * The (full path to) the command tidy to be used for HTML
    validation can be set by environment variable R_TIDYCMD.
  * Setting environment variable _R_CHECK_RD_VALIDATE_RD2HTML_ to a
    false value will override R CMD check --as-cran and turn off HTML
    validation.  This provides a way to circumvent a problematic
    tidy.
    The 2006 version that ships with macOS is always skipped.
  C-LEVEL FACILITIES:
  * The undocumented legacy declarations of Sint, Sfloat, SINT_MAX
    and SINT_MIN in header R.h are deprecated.
  BUG FIXES:
  * fisher.test(d) no longer segfaults for "large" d; fixing PR#18336
    by preventing/detecting an integer overflow reliably.
  * tar(., files=*) now produces correctly the warning about invalid
    uid or gid of files, fixing PR#18344, reported by Martin Morgan.
  * tk_choose.files() with multi = FALSE misbehaved on paths
    containing spaces (PR#18334) (regression introduced in R 4.0.0).
  * sort(x, partial = ind, *) now works correctly notably for the
    non-default na.last = FALSE or TRUE, fixing PR#18335 reported by
    James Edwards.
  * Environment variable _R_CHECK_XREFS_REPOSITORIES_ is only used
    for checking .Rd cross-references in R CMD check (as documented)
    and not for other uses looking for a CRAN mirror.
  * The search for a CRAN mirror when checking packages now uses
    getOption("repos") if that specifies a CRAN mirror, even when it
    does not also specify all three Bioconductor repositories (as was
    previously required).
  * The HTML code generated by tools::Rd2HTML() has been improved to
    pass tidy 5.8.0.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1667217600">- CHANGES IN R 4.2.2:
  NEW FEATURES:
  * tools::Rdiff(useDiff = TRUE) checks for the presence of an
    external diff command and switches to useDiff = FALSE if none is
    found.  This allows R CMD Rdiff to always work.
  * On Windows, environment variable R_LIBCURL_SSL_REVOKE_BEST_EFFORT
    can be used to switch to only 'best-effort' SSL certificate
    revocation checks with the default "libcurl" download method.
    This reduces security, but may be needed for downloads to work
    with MITM proxies (PR#18379).
  * (macOS) The run-time check for libraries from XQuartz for X11 and
    Tcl/Tk no longer uses otool from the Apple Developer Tools
    (PR#18400).
  * The LaTeX style for producing the PDF manuals, Rd.sty, now loads
    the standard amsmath, amsfonts and amssymb packages for greater
    coverage of math commands in the Rd \eqn and \deqn macros.  The
    \mathscr LaTeX command is also provided (via the mathrsfs
    package, if available, or the amsfonts bundle otherwise),
    fulfilling the wish of PR#18398.
  * (Windows) The default format of readClipboard() and
    writeClipboard() has been changed to 13 (CF_UNICODETEXT).
  INSTALLATION on a UNIX-ALIKE:
  * The PDF manuals (if built) can be compacted by the new target
    make compact-pdf (at the top level or in directory doc/manual).
  * There is now configure support for LLVM clang 15 on Linux, which
    defaults to position-independent (PIE) executables whereas
    gfortran does not.
  * Many small changes to ease compilation (and suppress warnings)
    with LLVM clang 15.
  BUG FIXES:
  * Rscript -e would fail if stdin were closed (Reported by Henrik
    Bengtsson.)
  * qt(*, log.p=TRUE) in outer tails no longer produces NaN in its
    final steps, thus fixing PR#18360.
  * tools::Rd2latex() now escapes hashes and ampersands when writing
    URLs, fixing LaTeX errors with such URLs in \tabular.
  * When isGeneric(f, fdef=*) is used with mismatching names, the
    warning is better understandable; reported (with fix) in PR#18370
    by Gabe Becker.
  * poly(x, n) now works again (and is now documented) when x is a
    "Date" or "POSIXct" object, or of another class while fulfilling
    mode(x) == "numeric".  This also enables poly(x, *, raw=TRUE) for
    such variables.  Reported by Michael Chirico to R-devel.
  * write.table(), write.csv() and write.csv2() restore their
    numerical precision (internal equivalent of digits = 15) after an
    interrupt (PR#18384).
  * One can now read also byte FF from a clipboard connection
    (PR#18385).
  * source("") and source(character()) now give more helpful error
    messages.
  * R CMD check --as-cran set _R_CHECK_TIMINGS_ too late to have the
    intended effect.
  * as.POSIXlt(x) now also works with very large dates x, fixing
    PR#18401 reported by Hannes M"uhleisen.
  * Files can now be extracted even from very large zip archives
    (PR#18390, thanks to Martin Jakt).
  * Non-finite objects of class "POSIXlt" are now correctly coerced
    to classes "Date" and "POSIXct"; following up on the extension to
    format() them correctly.
  * Added methods for is.finite(), is.infinite() and is.nan() for
    "POSIXlt" date-time objects.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1678881600">- CHANGES IN R 4.2.3:
  C-LEVEL FACILITIES:
  * The definition of DL_FUNC in R_ext/Rdynload.h has been changed to
    be fully C-compliant.  This means that functions loaded _via_ for
    example R_GetCCallable need to be cast to an appropriate type if
    they have any arguments.
  * .Machine has a new element sizeof.time_t to identify old systems
    with a 32-bit type and hence a limited range of date-times (and
    limited support for dates millions of years from present).
  PACKAGE INSTALLATION:
  * (Windows) The default C++ standard had accidentally been left at
    C++11 when it was changed to C++14 on Unix.
  BUG FIXES:
  * As "POSIXlt" objects may be "partially filled" and their list
    components meant to be recycled, length() now is the length of
    the longest component.
  * as.POSIXlt.Date() could underflow for dates in the far past (more
    than half a million years BCE).
  * as.Date.POSIXlt(x) would return "1970-01-01" instead of NA in R
    4.2.2, e.g., for
    x &lt;- as.POSIXlt(c("2019-01-30","2001-1-1"))
    x$mon &lt;- c(0L, NA); as.Date(x)
  * R CMD check failed to apply enabled _R_CHECK_SUGGESTS_ONLY_ to
    examples and vignettes (regression in R 4.2.0).
  * R CMD check did not re-build vignettes in separate processes by
    default (regression in R 4.2.0).
  * Running examples from HTML documentation now restores previous
    knitr settings and options (PR#18420).
  * Quartz: fonts are now located using Core Graphics API instead of
    deprecated ATS which is no longer supported in the macOS 13 SDK
    (PR#18426).  This also addresses an issue where the currently
    used font in the Quartz device context was not correctly
    retained.
  * (Windows) Math symbols in text drawing functions are again
    rendered correctly (PR#18440).  This fixes a regression in R
    4.2.1 caused by a fix in PR#18382 which uncovered an issue in
    GraphApp due to which the symbol charset was not used with TT
    Symbol font face.
  * (Windows) Installing a package with a src/Makefile.{win,ucrt}
    file includes ~/.R/Makevars.win64 in the search for user
    makevars, as documented in "R Installation and Administration"
    and done for packages with a src/Makevars.{win,ucrt} file.
  * format(&lt;POSIXlt_w/_unbalanced_sec&gt;, "....%OS&lt;n&gt;") with n &gt; 0 no
    longer accidentally uses the unbalanced seconds, thanks to
    Suharto Anggono's report (including patch) in PR#18448.
  * solve.default(a, b) works around issues with some versions of
    LAPACK when a contains NA or NaN values.
  * When UseMethod() cannot dispatch, it no longer segfaults
    producing the error message in case of a long class(), thanks to
    Joris Vankerschaver's report (including patch) in PR#18447.
  * When example(foo, ..) produces graphics on an interactive device
    it needs to open itself, it now leaves devAskNewPage() unchanged
    even when it was FALSE, thus fixing a 14 years old '&lt;FIXME&gt;'.
  * packageDescription() again catches errors from encoding
    conversions. This also fixes broken packageVersion() in C locale
    on systems where iconv does not support transliteration.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1681128000">- add patch to build with libcurl &gt;= 8</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1682078400">- CHANGES IN R 4.3.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Calling &amp;&amp; or || with LHS or (if evaluated) RHS of length greater
    than one is now always an error, with a report of the form
    'length = 4' in coercion to 'logical(1)'
    Environment variable _R_CHECK_LENGTH_1_LOGIC2_ no longer has any
    effect.
  NEW FEATURES:
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.10.1.  (This caused some platform-dependent
    changes to package check output.)  And then to the sources from
    LAPACK version 3.11.0 (with changes only to double complex
    subroutines).
  * The included LAPACK sources have been updated to include the four
    Fortran 90 routines rather than their Fortran 77 predecessors.
    This may give some different signs in SVDs or
    eigendecompositions..  (This completes the transition to LAPACK
    3.10.x begun in R 4.2.0.)
  * The LAPACK sources have been updated to version 3.11.0.  (No new
    subroutines have been added, so this almost entirely bug fixes:
    Those fixes do affect some computations with NaNs, including R's
    NA.)
  * The parser now signals _classed_ errors, notably in case of the
    pipe operator |&gt;.  The error object and message now give line and
    column numbers, mostly as proposed and provided by Duncan Murdoch
    in PR#18328.
  * toeplitz() is now generalized for asymmetric cases, with a
    toeplitz2() variant.
  * xy.coords() and xyz.coords() and consequently, e.g., plot(x,y,
    log = "y") now signal a _classed_ warning about negative values
    of y (where log(.) is NA).  Such a warning can be specifically
    suppressed or caught otherwise.
  * Regular expression functions now check more thoroughly whether
    their inputs are valid strings (in their encoding, e.g. in
    UTF-8).
  * The performance of grep(), sub(), gsub() and strsplit() has been
    improved, particularly with perl = TRUE and fixed = TRUE.  Use of
    useBytes = TRUE for performance reasons should no longer be
    needed and is discouraged: it may lead to incorrect results.
  * apropos() gains an argument dot_internals which is used by the
    completion (help(rcompgen)) engine to also see base internals
    such as .POSIXct().
  * Support in tools::Rdiff() for comparing uncompressed PDF files is
    further reduced - see its help page.
  * qqplot(x, y, ...) gains conf.level and conf.args arguments for
    computing and plotting a confidence band for the treatment
    function transforming the distribution of x into the distribution
    of y (Switzer, 1976, _Biometrika_). Contributed by Torsten
    Hothorn.
  * Performance of package_dependencies() has been improved for cases
    when the number of dependencies is large.
  * Strings newly created by gsub(), sub() and strsplit(), when any
    of the inputs is marked as "bytes", are also marked as "bytes".
    This reduces the risk of creating invalid strings and accidental
    substitution of bytes deemed invalid.
  * Support for readLines(encoding = "bytes") has been added to allow
    processing special text files byte-by-byte, without creating
    invalid strings.
  * iconv(from = "") now takes into account any declared encoding of
    the input elements and uses it in preference to the native
    encoding.  This reduces the risk of accidental creation of
    invalid strings, particularly when different elements of the
    input have different encoding (including "bytes").
  * Package repositories in getOption("repos") are now initialized
    from the repositories file when utils is loaded (if not already
    set, e.g., in .Rprofile).  (From a report and patch proposal by
    Gabriel Becker in PR#18405.)
  * compactPDF() gets a verbose option.
  * type.convert() and hence read.table() get new option tryLogical =
    TRUE with back compatible default.  When set to false, converts
    "F" or "T" columns to character.
  * Added new unit prefixes "R" and "Q" for abbreviating
    (unrealistically large) sizes beyond 10^{27} in standard = "SI",
    thanks to Henrik Bengtsson's PR#18435.
  * as.data.frame()'s default method now also works fine with atomic
    objects inheriting from classes such as "roman", "octmode" and
    "hexmode", such fulfilling the wish of PR#18421, by Benjamin
    Feakins.
  * The as.data.frame.vector() utility now errors for wrong-length
    row.names.  It warned for almost six years, with "Will be an
    error!".
  * sessionInfo() now also contains La_version() and reports codepage
    and timezone when relevant, in both print() and toLatex() methods
    which also get new option tzone for displaying timezone
    information when locale = FALSE.
  * New function R_compiled_by() reports the C and Fortran compilers
    used to build R, if known.
  * predict(&lt;lm&gt;, newdata = *) no longer unnecessarily creates an
    offset of all 0s.
  * solve() for complex inputs now uses argument tol and by default
    checks for 'computational singularity' (as it long has done for
    numeric inputs).
  * predict(&lt;rank-deficient lm&gt;, newdata=*) now obeys a new argument
    rankdeficient, with new default "warnif", warning only if there
    are non-estimable cases in newdata.  Other options include
    rankdeficient = "NA", predicting NA for non-estimable newdata
    cases.  This addresses PR#15072 by Russ Lenth and is based on his
    original proposal and discussions in PR#16158 also by David Firth
    and Elin Waring.  Still somewhat experimental.
  * Rgui console implementation now works better with the NVDA screen
    reader when the full blinking cursor is selected.  The underlying
    improvements in cursor handling may help also other screen
    readers on Windows.
  * The drop-field control in GraphApp can now be left with the TAB
    key and all controls can be navigated in the reverse order using
    the Shift+TAB key, improving accessibility of the Rgui
    configuration editor.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now fully accurate
    (instead of to "only" minimally five digits).
  * demo(error.catching) now also shows off withWarnings() and
    tryCatchWEMs().
  * As an experimental feature the placeholder _ can now also be used
    in the rhs of a forward pipe |&gt; expression as the first argument
    in an extraction call, such as _$coef. More generally, it can be
    used as the head of a chain of extractions, such as _$coef[[2]].
  * Spaces in the environment variable used to choose the R session's
    temporary directory (TMPDIR, TMP and TEMP are tried in turn) are
    now fatal.  (On Windows the 'short path' version of the path is
    tried and used if that does not contain a space.)
  * all.equal.numeric() gets a new optional switch giveErr to return
    the numeric error as attribute.  Relatedly,
    stopifnot(all.equal&lt;some&gt;(a, b, ..)) is as "smart" now, as
    stopifnot(all.equal(....)) has been already, thus allowing
    customized all.equal&lt;Some&gt;() wrappers.
  * R on Windows is now able to work with path names longer than 260
    characters when these are enabled in the system (requires at
    least Windows 10 version 1607).  Packages should be updated to
    work with long paths as well, instead of assuming PATH_MAX to be
    the maximum length.  Custom front-ends and applications embedding
    R need to update their manifests if they wish to allow this
    feature.  See
    &lt;https://blog.r-project.org/2023/03/07/path-length-limit-on-windows&gt;
    for more information.
  * 'Object not found' and 'Missing argument' errors now give a more
    accurate error context. Patch provided by Lionel Henry in
    PR#18241.
  * The @ operator is now an S3 generic. Based on contributions by
    Tomasz Kalinowski in PR#18482.
  * New generic chooseOpsMethod() provides a mechanism for objects to
    resolve cases where two suitable methods are found for an Ops
    Group Generic. This supports experimenting with alternative
    object systems. Based on contributions by Tomasz Kalinowski in
    PR#18484.
  * inherits(x, what) now accepts values other than a simple
    character vector for argument what. A new generic, nameOfClass(),
    is called to resolve the class name from what. This supports
    experimenting with alternative object systems. Based on
    contributions by Tomasz Kalinowski in PR#18485.
  * Detection of BLAS/LAPACK in use (sessionInfo()) with FlexiBLAS
    now reports the current backend.
  * The "data.frame" method for subset() now warns about extraneous
    arguments, typically catching the use of = instead of == in the
    subset expression.
  * Calling a:b when numeric a or b is longer than one may now be
    made into an error by setting environment variable
    _R_CHECK_LENGTH_COLON_ to a true value, along the proposal in
    PR#18419 by Henrik Bengtsson.
  * density(x, weights = *) now warns if automatic bandwidth
    selection happens without using weights; new optional warnWbw may
    suppress the warning.  Prompted by Christoph Dalitz' PR#18490 and
    its discussants.
  * rm(list = *) is faster and more readable thanks to Kevin Ushey's
    PR#18492.
  * The plot.lm() function no longer produces a normal Q-Q plot for
    GLMs. Instead it plots a half-normal Q-Q plot of the absolute
    value of the standardized deviance residuals.
  * The print() method for class "summary.glm" no longer shows
    summary statistics for the deviance residuals by default.  Its
    optional argument show.residuals can be used to show them if
    required.
  * The tapply() function now accepts a data frame as its X argument,
    and allows INDEX to be a formula in that case. by.data.frame()
    similarly allows INDICES to be a formula.
  * The performance of df[j] &lt;- value (including for missing j) and
    write.table(df) has been improved for data frames df with a large
    number of columns.  (Thanks to Gabriel Becker's PR#18500,
    PR#18503 and discussants, prompted by a report from Toby Dylan
    Hocking on the R-devel mailing list.)
  * The matrix multiply operator %*% is now an S3 generic, belonging
    to new group generic matrixOps.  From Tomasz Kalinowski's
    contribution in PR#18483.
  * New function array2DF() to convert arrays to data frames,
    particularly useful for the list arrays created by tapply().
  DATES and TIMES:
  * On platforms where (non-UTC) datetimes before 1902 (or before
    1900 as with system functions on recent macOS) are guessed by
    extrapolating time zones from 1902-2037, there is a warning at
    the first use of extrapolation in a session.  (As all time zones
    post 2037 are extrapolation, we do not warn on those.)
  * (Platforms using --with-internal-tzone, including Windows and by
    default macOS). How years are printed in dates or date-times can
    be controlled by environment variable R_PAD_YEARS_BY_ZERO.  The
    default remains to pad to 4 digits by zeroes, but setting value
    no gives no padding (as used by default by glibc).
  * strftime() tries harder to determine the offset for the "%z"
    format, and succeeds on the mainstream R platforms.
  * strftime() has a limit of 2048 bytes on the string produced -
    attempting to exceed this is an error.  (Previously it silently
    truncated at 255 bytes.)
  * sessionInfo() records (and by default prints) the system time
    zone as part of the locale information.  Also, the source
    (system/internal) of the date-time conversion and printing
    functions.
  * Objects of class "POSIXlt" created in this version of R always
    have 11 components: component zone is always set, and component
    gmtoff is set for times in UTC and usually set on the (almost
    all) platforms which have C-level support, otherwise is NA.
  * There are comprehensive validity checks on the structure of
    objects of class "POSIXlt" when converting (including formatting
    and printing).  (This avoids mis-conversions of hand-crafted
    objects.)
  * There is some support for using the native date-time routines on
    macOS: this is only viable on recent versions (e.g. 12.6 and 13)
    and does get wrong some historical changes (before 1900, during
    WWII).  Use of --with-internal-tzone remains the default.
  * as.POSIXct(&lt;numeric&gt;) and as.POSIXlt(.) (without specifying
    origin) now work.  So does as.Date(&lt;numeric&gt;).
  * as.Date.POSIXct(., tz) now treats several tz values, notably
    "GMT" as equivalent to "UTC", proposed and improved by Michael
    Chirico and Joshua Ulrich in PR#17674.
  * Experimental balancePOSIXlt() utility allows using "ragged" and
    or out-of-range "POSIXlt" objects more correctly, e.g., in
    subsetting and subassignments.  Such objects are now documented.
    More experimentally, a "POSIXlt" object may have an attribute
    "balanced" indicating if it is known to be filled or fully
    balanced.
  * Functions axis.Date() and axis.POSIXct() are rewritten to gain
    better default tick locations and better default formats by using
    prettyDate(). Thanks to Swetlana Herbrandt.
  * The mapping of Windows' names for time zones to IANA's 'Olson'
    names has been updated.  When ICU is available (it is by
    default), it is used to get a mapping for the current region set
    in Windows.  This can be overridden by setting environment
    variable TZ to the desired Olson name - see OlsonNames() for
    those currently available.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 16
    and so packages that provide graphics devices should be
    reinstalled.
  * The grDevices and grid packages have new functions for rendering
    typeset glyphs, primarily: grDevices::glyphInfo() and
    grid::grid.glyph().
    Rendering of typeset glyphs is only supported so far on the
    Cairo-based graphics devices and on the pdf() and quartz()
    devices.
  * The defined behaviour for "clear" and "source" compositing
    operators (via grid::grid.group()) has been changed (to align
    better with simple interpretation of original Porter-Duff
    definitions).
  * Support for gradients, patterns, clipping paths, masks, groups,
    compositing operators, and affine transformations has been added
    to the quartz() device.
  INSTALLATION on a UNIX-ALIKE:
  * A system installation of generic LAPACK 3.10.0 or later will be
    preferred to the version in the R sources.
    configure option --with-lapack=no (equivalently --without-lapack)
    forces compilation of the internal LAPACK sources.
    If --with-lapack is not specified, a system liblapack is looked
    for and used if it reports version 3.10.0 or later and does not
    contain BLAS routines.
    Packages using LAPACK will need to be reinstalled if this changes
    to using an external library.
  * On aarch64 Linux platforms using GCC, configure now defaults to
  - fPIC (instead of -fpic), as desired in PR#18326.
  * configure now checks conversion of datetimes between POSIXlt and
    POSIXct around year 2020.  Failure (which has been seen on
    platforms missing tzdata) is fatal.
  * If configure option --with-valgrind-instrumentation is given
    value 1 or 2, option --with-system-valgrind-headers is now the
    default and ignored (with a warning).  It is highly recommended
    that the system headers are installed alongside valgrind: they
    are part of its packaging on some Linux distributions and
    packaged separately (e.g. in the valgrind-devel RPM) on others.
    configure will give a warning if they are not found.
    The system headers will be required in a future release of R to
    build with valgrind instrumentation.
  * libcurl 8.x is now accepted by configure: despite a change in
    major version number it changes neither API nor ABI.
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools43, an update of the Rtools42 toolchain.  It is
    based on gcc 12 and newer versions of MinGW-W64, binutils and
    libraries.  At this time R-devel can still be built using
    Rtools42 without changes, but when R-devel is installed via the
    installer, it will by default look for Rtools43.
  * Old make targets rsync-extsoft and 32-bit ones that are no longer
    needed have been removed.
  * Default builds (including for packages) no longer select C99.
    Thus the C standard used is the default for the compiler, which
    for the toolchain in Rtools43 is C17.  (This is consistent with
    Unix builds.)
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++17 where
    available (which it is on all currently checked platforms): if
    not C++14 or C++11 is used if available otherwise C++ is not
    supported.
  * USE_FC_LEN_T is the default: this uses the correct
    (compiler-dependent) prototypes for Fortran BLAS/LAPACK routines
    called from C/C++, and requires adjustment of many such calls -
    see 'Writing R Extensions' SS6.6.1.
  * There is initial support for C++23 as several compilers are now
    supporting -std=c++23 or -std=c++2b or similar.  As for C++20,
    there no additional configure checks for C++23 features beyond a
    check that the compiler reports a __cplusplus value greater than
    that in the C++20 standard.  C++ feature tests should be used.
  * There is support for a package to indicate the version of the C
    standard which should be used to compile it, and for the
    installing user to specify this.  In most cases R defaults to the
    C compiler's default standard which is C17 (a `bug-fix' of C11) -
    earlier versions of R or compilers may have defaulted to C99.
    Current options are:
    USE_C17 Use a standard that is at most C17.  The intention is to
    allow legacy packages to still be installed when later C
    standards become the default, including packages using new
    keywords as identifiers or with K&amp;R-style function
    declarations.  This will use C17 if available, falling back
    to C11.
    USE_C90 Use the C90 (aka C89) standard.  (As that standard did
    not require compilers to identify that version, all we can
    verify is that the compiler does not claim to be using a
    later standard.  It may accept C99 features - for example
    clang accepts // to make comments.)
    USE_C99 Use the C99 standard. This should be rarely needed - it
    avoids the few new features of C11/C17 which can be useful if
    a package assumes them if C17 is specified and they are not
    implemented.
    USE_C23 Use C23 (or in future, later).  Compiler/library support
    for C23 is still being implemented, but LLVM clang from
    15.0.0 and the upcoming GCC 13 have quite extensive support.
    These can be specified as part of the SystemRequirements field in
    the package's DESCRIPTION file or _via_ options --use-C17 and so
    on of R CMD INSTALL and R CMD SHLIB.
    For further details see "Writing R Extensions" SS1.2.5.
  * (Windows) A src/Makefile.ucrt or src/Makefile.win file is now
    included after R_HOME/etcR_ARCH/Makeconf and so no longer needs
    to include that file itself.  Installation of a package with such
    a file now uses a site Makevars file in the same way as a package
    with a src/Makevars.win file would.
  * configure is now passed crucial variables such as CC and CFLAGS
    in its environment, as many packages were not setting them (as
    documented in 'Writing R Extensions' SS1.2).
    This has most effect where configure is used to compile parts of
    the package - most often by cmake or libtool which obfuscate the
    actual compile commands used.
    Also used for configure.win and configure.ucrt on Windows.
  FORTRAN FLAGS:
  * The flag -fno-optimize-sibling-calls is no longer forced for
    gfortran 7 and later.  It should no longer be needed now using
    'hidden' character-length arguments when calling BLAS/LAPACK
    routines from C/C++ is the default even for packages.  (Unless
    perhaps packages call Fortran code from C/C++ without using R's
    headers and without allowing for these arguments.)
  C-LEVEL FACILITIES:
  * The deprecated S-compatibility macros DOUBLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * The deprecated legacy typedefs of Sint and Sfloat in header R.h
    are no longer defined, and that header no longer includes header
    limits.h from C nor climits from C++.
  * New macro CAD5R() is provided in Rinternals.h and used in a few
    places in the R sources.
  * ALTREP now supports VECSXP vectors. Contributed by Gabor Csardi
    in PR#17620.
  * The Rcomplex definition (in header R_ext/Complex.h) has been
    extended to prevent possible mis-compilation when interfacing
    with Fortran (PR#18430).  The new definition causes compiler
    warnings with static initializers such as {1, 2}, which can be
    changed to {.r=1, .i=2}.
    Using the new definition from C++ depends on compiler extensions
    supporting C features that have not been incorporated into the
    C++ standards but are available in g++ and clang++: this may
    result in C++ compiler warnings but these have been worked around
    for recent versions of common compilers (GCC, Apple/LLVM clang,
    Intel).
    It is intended to change the inclusion of header R_ext/Complex.h
    by other R headers, so C/C++ code files which make use of
    Rcomplex should include that header explicitly.
  UTILITIES:
  * R CMD check does more checking of package .Rd files, warning
    about invalid email addresses and (some) invalid URIs and noting
    empty \item labels in description lists.
  * R CMD check now also reports problems when reading package news
    in md (file NEWS.md) and (optionally) plain text (file NEWS)
    formats.
  * _R_CHECK_TIMINGS_ defaults to a value from the environment even
    for R CMD check --as-cran; this allows for exceptionally fast or
    slow platforms.
    It now applies to checking PDF and HTML versions of the manuals,
    and 'checking CRAN incoming feasibility'.
  * R CMD check can optionally (but included in --as-cran) check
    whether HTML math rendering _via_ KaTeX works for the package .Rd
    files.
  * Non-interactive debugger invocations can be trapped by setting
    the environment variable _R_CHECK_BROWSER_NONINTERACTIVE_ to a
    true value.  This is enabled by R CMD check --as-cran to detect
    the use of leftover browser() statements in the package.
  * The use of sprintf and vsprintf from C/C++ has been deprecated in
    macOS 13 and is a known security risk.  R CMD check now reports
    (on all platforms) if their use is found in compiled code:
    replace by snprintf or vsnprintf respectively. [*NB:* whether
    such calls get compiled into the package is platform-dependent.]
  * Where recorded at installation, R CMD check reports the C and
    Fortran compilers used to build R.
    It reports the OS in use (if known, as given by osVersion) as
    well as that R was built for.
    It notes if a C++ standard was specified which is older than the
    current default: many packages have used C++11 to mean 'not
    C++98' - as C++11 is the minimum supported since R 4.0.0, that
    specification can probably be removed.
  * R CMD INSTALL reports the compilers (and on macOS, the SDK) used,
    and this is copied to the output of R CMD check.
    Where a C++ standard is specified, it is reported.
  * R CMD check's 'checking compilation flags in Makevars' has been
    relaxed to accept the use of flags such as -std=f2008 in
    PKG_FFLAGS.
  * tools::buildVignettes() has a new argument skip, which is used by
    R CMD check to skip (and note) vignettes with unavailable
    \VignetteDepends (PR#18318).
  * New generic .AtNames() added to enable class-specific completions
    after @. The formerly internal function findMatches() is now
    exported, mainly for use in methods for .DollarNames() and
    .AtNames().
  DEPRECATED AND DEFUNCT:
  * default.stringsAsFactors() is defunct.
  * Calling as.data.frame.&lt;class&gt;() directly (for 12 atomic classes)
    is going to be formally deprecated, currently activated by
    setting the environment variable
    _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ to non-empty, which also
    happens in R CMD check --as-cran.
  BUG FIXES:
  * Hashed environments with sizes less than 5 can now grow.
    (Reported to R-devel by Duncan Garmonsway.)
  * as.character(&lt;Rd&gt;, deparse = TRUE) failed to re-escape curly
    braces in LaTeX-like text.  (Reported by Hadley Wickham in
    PR#18324.)
  * library() now passes its lib.loc argument when requiring Depends
    packages; reported (with fix) in PR#18331 by Mikael Jagan.
  * R CMD Stangle: improved message about 'Output' files.
  * head(x, n) and tail(x, n) now signal an error if n is not
    numeric, instead of incidentally "working" sometimes returning
    all of x.  Reported and discussed by Colin Fay, in PR#18357.
  * The "lm" method for summary() now gives the correct F-statistic
    when the model contains an offset.  Reported in PR#18008.
  * C() and `contrasts&lt;-`() now preserve factor level names when
    given a function object (as opposed a function name which did
    preserve names). Reported in PR#17616.
  * c(a = 1, 2)[[]] no longer matches 2 but rather signals a
    _classed_ error.  Reported and analysed by Davis Vaughan in
    PR#18367, a duplicate of PR#18004, by Jan Meis et al.  For
    consistency, NULL[[]] is also erroneous now.  x[[]] &lt;- v gives an
    error of the same class "MissingSubscriptError".
  * The relist() function of utils now supports NULL elements in the
    skeleton (PR#15854).
  * ordered(levels = *) (missing x) now works analogously to factor(,
    ordered=TRUE); reported (with fix) by Achim Zeileis in PR#18389.
  * User-defined Rd macro definitions can now span multiple lines,
    thanks to a patch from Duncan Murdoch. Previously, the Rd parser
    silently ignored everything after the first line.
  * Plain-text help (tools::Rd2txt()) now preserves an initial blank
    line for text following description list items.
  * tools::Rd2HTML() and tools::Rd2latex() no longer split \arguments
    and \value lists at Rd comments.
  * tools::Rd2latex() now correctly handles optional text outside
    \items of argument lists as well as bracketed text at the
    beginning of sections, e.g., \value{[NULL]}.
  * as.character(&lt;POSIXt&gt;) now behaves more in line with the methods
    for atomic vectors such as numbers, and is no longer influenced
    by options().  Ditto for as.character(&lt;Date&gt;).  The
    as.character() method gets arguments digits and OutDec with
    defaults _not_ depending on options().  Use of as.character(*,
    format = .) now warns.
  * Similarly, the as.character.hexmode() and *.octmode() methods
    also behave as good citizen methods and back compatibility option
    keepStr = TRUE.
  * The as.POSIXlt(&lt;POSIXlt&gt;) and as.POSIXct(&lt;POSIXct&gt;) default
    methods now do obey their tz argument, also in this case.
  * as.POSIXlt(&lt;Date&gt;) now does apply a tz (time zone) argument, as
    does as.POSIXct(); partly suggested by Roland Fuss on the R-devel
    mailing list.
  * as.Date.POSIXlt(x) now also works when the list components are of
    unequal length, aka "partially filled" or "ragged".
  * expand.model.frame() looked up variables in the wrong environment
    when applied to models fitted without data.  Reported in
    PR#18414.
  * time() now (also) uses the ts.eps = getOption("ts.eps") argument
    and thus by default rounds values very close to the start (or
    end) of a year.  Based on a proposal by Andre"i V. Kostyrka on
    R-help.
  * Printing of a factanal() result with just one factor and sort =
    TRUE now works regularly, fixing PR#17863 by Timothy Bates,
    thanks to the 'R Contributors' working group.
  * Printing 0-length objects of class "factor", "roman", "hexmode",
    "octmode", "person", "bibentry", or "citation" now prints
    something better, one of which fixes PR#18422, reported by
    Benjamin Feakins.
  * Sys.timezone() queries timedatectl only if systemd is loaded;
    addressing a report by Jan Gorecki in PR#17421.
  * The formula method of cor.test() had scoping problems when
    environment(formula) was not the calling environment; reported
    with a patch proposal by Mao Kobayashi in PR#18439.
  * attach() of an environment with active bindings now preserves the
    active bindings.  Reported by Kevin Ushey in PR#18425.
  * BLAS detection now works also with system-provided libraries not
    available as regular files.  This fixes detection of the
    Accelerate framework on macOS since Big Sur.  Reported by David
    Novgorodsky.
  * download.file() gives a helpful error message in case of an
    invalid download.file.method option, thanks to Colin Fay's report
    in PR#18455.
  * Sporadic crashes of Rterm when using completion have been fixed.
  * Rprof() is now more reliable.  A livelock in thread
    initialization with too short sampling interval has been fixed on
    macOS.  A deadlock in using the C runtime has been fixed on
    Windows.  A potential deadlock has been prevented on Unix.
  * Cursor placement in Rgui now works even after a fixed-width font
    is selected.
  * Mandatory options (options()) are now set on startup so that
    saving and restoring them always works (PR#18372).
  * Package installation, R CMD INSTALL or install.packages(*), now
    parses each of the &lt;pkg&gt;/R/*.R files individually instead of
    first concatenating and then parse()ing the large resulting file.
    This allows parser or syntax errors to be diagnosed with correct
    file names and line numbers, thanks to Simon Dedman's report and
    Bill Dunlap's patch in PR#17859.
    This _does_ require syntactically self contained R source files
    now, fixing another inadvertent bug.
  * predict.lm(&lt;model with offset&gt;) now finds the offset in the
    correct environment, thanks to Andr'e Gillibert's report and patch
    in PR#18456.
  * getInitial(&lt;formula&gt;) now finds the selfStart model in the
    correct environment.  (Reported by Ivan Krylov in PR#18368.)
  * Fix for possible segfault when using recently-added graphics
    features, such as gradients, clipping paths, masks, and groups
    with pdf(file=NULL).
  * class(m) &lt;- class(m) no longer changes a matrix m by adding a
    class _attribute_.
  * packageDate(pkg) now only warns once if there is no pkg.
  * When ts() creates a multivariate time series, "mts", it also
    inherits from "array" now, and is.mts() is documented _and_
    stricter.
  * Rd2txt() now preserves line breaks of \verb Rd content and from
    duplicated \cr.  The former also fixes the rendering of verbatim
    output from Rd \Sexpr in plain-text help.
  * uniroot(f, interval) should no longer wrongly converge _outside_
    the interval in some cases where abs(f(x)) == Inf for an x at the
    interval boundary, thanks to posts by Ben Bolker and Serguei
    Sokol on R-devel.
  * Vectorized alpha handling in palette functions such as in gray(),
    rainbow(), or hcl.colors() works correctly now, thanks to Achim
    Zeileis' report and patch in PR#18476.
  * Formatting and print()ing of bibentry objects has dropped the
    deprecated citation.bibtex.max argument, such that the bibtex
    argument's default for print.bibentry() depends directly on the
    citation.bibtex.max option, whereas in format.bibentry() the
    option no longer applies.
  * Attempting to use a character string naming a foreign function
    entry point in a foreign function call in a package will now
    signal an error if the packages has called R_forceSymbols to
    specify that symbols must be used.
  * An error in table() could permanently set options(warn=2)
    promoting all subsequent warnings to errors.
  * The sigma() function gave misleading results for binary GLMs.  A
    new method for objects of class "glm" returns the square root of
    the estimate of the dispersion parameter using the same
    calculation as summary.glm().
  * bs() and ns() in the (typical) case of automatic knot
    construction, when some of the supposedly inner knots coincide
    with boundary knots, now moves them inside (with a warning),
    building on PR#18442 by Ben Bolker.
  * R CMD on Windows now skips the site profile with --no-site-file
    and --vanilla even when R_PROFILE is set (PR#18512, from Kevin
    Ushey).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1686916800">- CHANGES IN R 4.3.1:
  C-LEVEL FACILITIES:
  * The C-level API version of R's integrate(), Rdqags() in Applic.h,
    now returns the correct number of integrand evaluations neval,
    fixing PR#18515 reported and diagnosed by Stephen Wade.
  * The C prototypes for LAPACK calls dspgv and dtptrs in
    R_exts/Lapack.h had one too many and one too few character length
    arguments - but this has not caused any known issues. To get the
    corrected prototypes, include
    [#]include &lt;Rconfig.h&gt; // for PR18534fixed
    [#]ifdef PR18534fixed
    [#] define usePR18534fix 1
    [#]endif
    [#]include &lt;R_exts/Lapack.h&gt;
    in your C/C++ code (PR#18534).
  INSTALLATION:
  * Many of the checks of esoteric Internet operations and those
    using unreliable external sites have been moved to a new target
    that is not run by default and primarily intended for the core
    developers.  To run them use
    cd tests; make test-Internet-dev
  BUG FIXES:
  * .S3methods(), typically called from methods(), again marks
    methods from package base as visible.
    Also, the visibility of non-base methods is again determined by
    the method's presence in search().
  * tools::Rdiff() is now more robust against invalid strings, fixing
    installation tests on Windows without Rtools installed
    (PR#18530).
  * Fix (new) bug in hcl.colors(2, *), by Achim Zeileis (PR#18523).
  * head(., &lt;illegal&gt;) and tail(..) now produce more useful "Error in
    ...." error messages, fixing PR#18362.
  * Package code syntax on Windows is checked in UTF-8 when UTF-8 is
    the native encoding.
  * na.contiguous(x) now also returns the first run, when it is at
    the beginning and there is a later one of the same length;
    reported to R-devel, including a fix, by Georgi Boshnakov.
    Further, by default, it modifies only an existing attr(*,"tsp")
    but otherwise no longer sets one.
  * chol(&lt;not pos.def&gt;, pivot = &lt;T|F&gt;) now gives a correct error or
    warning message (depending on pivot), thanks to Mikael Jagan's
    (PR#18541).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1699012800">- CHANGES IN R 4.3.2:
  NEW FEATURES:
  * The default initialization of the "repos" option from the
    repositories file at startup can be skipped by setting
    environment variable R_REPOSITORIES to NULL such that
    getOption("repos") is empty if not set elsewhere.
  * qr.X() is now an implicit S4 generic in methods.
  * iconv(to = "ASCII//TRANSLIT") is emulated using substitution on
    platforms which do not support it (notably Alpine Linux).  This
    should give a human-readable conversion in ASCII on all platforms
    (rather than NA_character_).
  * trans3d() gains options continuous and verbose addressing the
    problem of possible "wrap around" when projecting too long
    curves, as reported by Achim Zeileis in PR#18537.
  * tools::showNonASCII() has been rewritten to work better on macOS
    14 (which has a changed implementation of iconv()).
  * tiff(type = "quartz") (the default on macOS) now warns if
    compression is specified: it continues to be ignored.
  INSTALLATION on a UNIX-ALIKE:
  * There is some support for building with Intel's LLVM-based
    compilers on x86_64 Linux, such as (C) icx, (C++) ipcx and
    (Fortran) ifx from oneAPI 2023.x.y.
  * There is support for using LLVM's flang-new as the Fortran
    compiler from LLVM 16.0.x (preferably 17.0.0 or later).
  UTILITIES:
  * R CMD check reports the use of the Fortran 90 random number
    generator RANDOM_NUMBER() and the subroutines to initialize it.
    'Writing R Extensions' has example code to use R's RNGs from
    Fortran.
  BUG FIXES:
  * substr(x, n, L) &lt;- cc now works (more) correctly for multibyte
    UTF-8 strings x when L &gt; nchar(x), thanks to a report and patch
    by 'Architect 95'.
  * contrib.url(character()) now returns 0-length character() as
    documented, which also avoids spurious warnings from
    available.packages() et al. in the edge case of an empty vector
    of repository URLs.
  * readChar(., 4e8) no longer fails, thanks to Kodi Arfer's report
    (PR#18557).
  * lapply(&lt;list&gt;, as.data.frame) no longer warns falsely for some
    base vector components.
  * Communication between parent and child processes in the multicore
    part of parallel could fail on platforms that do not support an
    arbitrarily large payload in system functions read()/write() on
    pipes (seen on macOS where a restriction to INT_MAX bytes is
    documented, without doing a partial read unlike Linux). The
    payload is now split into 1Gb chunks to avoid that problem.
    (PR#18571)
  * qqplot(x,y, conf.level=.) gives better confidence bounds when
    length(x) != length(y), thanks to Alexander Ploner's report and
    patch proposal (PR#18557).
  * norm(&lt;0-length&gt;, "2") now gives zero instead of an error, as all
    the other norm types, thanks to Mikael Jagan's PR#18542.
  * Build-stage Rd macros \packageAuthor and \packageMaintainer now
    process Authors@R, fixing NA results when the package DESCRIPTION
    omits Author and Maintainer fields.
  * Formatting and printing complex numbers could give things like
    0.1683-0i because of rounding error: -0i is now replaced by +0i.
  * postscript() refused to accept a title comment containing the
    letter "W" (PR#18599).
  * isoreg(c(1,Inf)) signals an error instead of segfaulting, fixing
    PR#18603.
  * tiff(type = "Xlib") was only outputting the last page of
    multi-page plots.
  * tools::latexToUtf8() again knows about \~{n} and other letters
    with tilde, fixing a regression in R 4.3.0, and about \^{i} as an
    alternative to \^{\i} (similarly with other accents).
    Furthermore, LaTeX codes for accented I letters are now correctly
    converted, also fixing related mistakes in
    tools::encoded_text_to_latex().
  * tar(*, tar = "internal") no longer creates out-of-spec tar files
    in the very rare case of user or group names longer than 32
    bytes, fixing PR#17871 with thanks to Ivan Krylov.
  * When using the "internal" timezone datetime code, adding a
    fraction of a second no longer adds one second, fixing PR#16856
    from a patch by Ivan Krylov.
  * tools::checkRd() no longer produces spurious notes about
    "unnecessary braces" from multi-line Rd results of \Sexpr macros.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1709208000">- CHANGES IN R 4.3.3:
  NEW FEATURES:
  * iconv() now fixes up variant encoding names such as "utf8"
    case-insensitively.
  DEPRECATED AND DEFUNCT:
  * The legacy encoding = "MacRoman" is deprecated in pdf() and
    postscript(): support was incomplete in earlier versions of R.
  BUG FIXES:
  * Arguments are now properly forwarded to methods on S4 generics
    with ... in the middle of their formal arguments. This was broken
    for the case when a method introduced an argument but did not
    include ... in its own formals. Thanks to Herv'e Pag`es for the
    report PR#18538.
  * Some invalid file arguments to pictex(), postscript() and xfig()
    opened a file called NA rather than throw an error.  These
    included postscript(NULL) (which some people expected to work
    like pdf(NULL)).
  * Passing filename = NA to svg(), cairo_pdf(), cairo_ps() or the
    Cairo-based bitmap devices opened a file called NA: it now throws
    an error.
  * quartz(file = NA) opened a file called NA, including when used as
    a Quartz-based bitmap device.  It now gives an error.
  * rank(&lt;long vector&gt;) now works, fixing PR#18617, thanks to Ilia
    Kats.
  * seq.int() did not adequately check its length.out argument.
  * match(&lt;POSIXct&gt;, .) is correct again for differing time zones,
    ditto for "POSIXlt", fixing PR#18618 reported by Bastian Klein.
  * drop.terms(*, dropx = &lt;0-length&gt;) now works, fixing PR#18563 as
    proposed by Mikael Jagan.
  * drop.terms(*) keeps + offset(.) terms when it should, PR#18565,
    and drop.terms() no longer makes up a response, PR#18566, fixing
    both bugs thanks to Mikael Jagan.
  * getS3method("t", "test") no longer finds the t.test() function,
    fixing PR#18627.
  * pdf() and postscript() support for the documented Adobe encodings
    "Greek" and "Cyrilllic" was missing (although the corresponding
    Windows' codepages could be used).
  * Computations of glyph metric information for pdf() and
    postscript() did not take into account that transliteration could
    replace one character by two or more (only seen on macOS 14) and
    typically warned that the information was not known.
  * rank(x) no longer overflows during integer addition, when
    computing rank average for largish but not-yet long vector x,
    fixing PR#18630, thanks to Ilia Kats.
  * list.files() on Windows now returns also files with names longer
    that 260 bytes (the Windows limit is 260 characters).
    Previously, some file names particularly with 'East Asian'
    characters were omitted.
  * cov2cor(&lt;0 x 0&gt;) now works, fixing PR#18423 thanks to Mikael
    Jagan and Elin Waring.
  * cov2cor(&lt;negative diagonal&gt;) and similar now give one warning
    instead of two, with better wording, fixing PR#18424 thanks to
    Mikael Jagan.
  * tools:: startDynamicHelp() now ensures port is in proper range,
    fixing PR#18645.
  * pbeta(x, a,b) is correct now for x=0 or 1 in the boundary cases
    where a or b or both are 0, fixing PR#18672 thanks to Michael
    Fay.
  * pmatch(x, table) for large table, also called for data frame row
    selection, dfrm[nm, ], is now interruptible, fixing PR#18656.
  * predict(&lt;rank-deficient lm&gt;, newdata=*) fix computing of nbasis,
    see Russ Lenth's comment 29 in PR#16158.
  * Added a work-around for a bug in macOS 14.3.1 and higher which
    prevents R plots in the Quartz Cocoa device from updating on
    screen.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1713960000">- CHANGES IN R 4.4.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Startup banners, R --version, sessionInfo() and R CMD check no
    longer report (64-bit) as part of the platform as this is almost
    universal - the increasingly rare 32-bit platforms will still
    report (32-bit).
    On Windows, ditto for window titles.
  * is.atomic(NULL) now returns FALSE, as NULL is not an atomic
    vector.  Strict back-compatibility would replace is.atomic(foo)
    by (is.null(foo) || is.atomic(foo)) but should happen only
    sparingly.
  NEW FEATURES:
  * The confint() methods for "glm" and "nls" objects have been
    copied to the stats package.  Previously, they were stubs which
    called versions in package MASS. The MASS namespace is no longer
    loaded if you invoke (say) confint(glmfit).  Further, the "glm"
    method for profile() and the plot() and pairs() methods for class
    "profile" have been copied from MASS to stats.  (profile.nls()
    and plot.profile.nls() were already in stats.)
  * The confint() and profile methods for "glm" objects have gained a
    possibility to do profiling based on the Rao Score statistic in
    addition to the default Likelihood Ratio. This is controlled by a
    new test = argument.
  * The pairs() method for "profile" objects has been extended with a
    which = argument to allow plotting only a subset of the
    parameters.
  * The "glm" method for anova() computes test statistics and
    p-values by default, using a chi-squared test or an F test
    depending on whether the dispersion is fixed or free.  Test
    statistics can be suppressed by giving argument test a false
    logical value.
  * In setRepositories() the repositories can be set using their
    names via name = instead of index ind =.
  * methods() and .S3methods() gain a all.names option for the (rare)
    case where functions starting with a . should be included.
  * Serializations can now be interrupted (e.g., by Ctrl-C on a
    Unix-alike) if they take too long, e.g., from save.image(),
    thanks to suggestions by Ivan Krylov and others on R-devel.
  * New startup option --max-connections to set the maximum number of
    simultaneous connections for the session.  Defaults to 128 as
    before: allowed values up to 4096 (but resource limits may in
    practice restrict to smaller values).
  * R on Windows (since Windows 10 2004) now uses the new Segment
    Heap allocator. This may improve performance of some
    memory-intensive applications.
  * When R packages are built, typically by R CMD build &lt;pkg&gt;, the
    new --user=&lt;build_user&gt; option overrides the (internally
    determined) user name, currently Sys.info()["user"] or LOGNAME.
    This is a (modified) fulfillment of Will Landau's suggestion in
    PR#17530.
  * tools::testInstalledBasic() gets new optional arguments outDir
    and testSrcdir, e.g., allowing to use it in a &lt;builddir&gt; !=
    &lt;srcdir&gt; setup, and in standard "binary" Windows installation
  * if* a source tests/ folder is present.
  * range(&lt;DT_with_Inf&gt;, finite = TRUE) now work for objects of class
    "Date", "POSIXct", and "POSIXlt" with infinite entries,
    analogously to range.default(), as proposed by Davis Vaughan on
    R-devel.  Other range()-methods can make use of new function
    .rangeNum().
  * New .internalGenerics object complementing .S3PrimitiveGenerics,
    for documentation and low-level book-keeping.
  * grid() now invisibly returns the x- and y- coordinates at which
    the grid-lines were drawn.
  * norm(., type) now also works for complex matrices.
  * kappa(., exact = TRUE, norm = *) now works for all norms and also
    for complex matrices.  In symmetric / triangular cases, the new
    argument uplo = "U" | "L" allows the upper or lower triangular
    part to be specified.
  * memDecompress(type = "unknown") recognizes compression in the
    default 'zlib' format as used by memCompress(type = "gzip").
  * memCompress() and memDecompress() will use the libdeflate library
    (&lt;https://github.com/ebiggers/libdeflate&gt;) if installed.  This
    uses the same type of compression for type = "gzip" but is 1.5-2x
    faster than the system libz library on some common platforms: the
    speed-up may depend on the library version.
  * diff() for objects of class "Date", "POSIXct", and "POSIXlt"
    accepts a units argument passed via ....
  * Dynamic help now does a much better job of rendering package
    DESCRIPTION metadata.
  * Rprof() gains an event argument and support for elapsed (real)
    time profiling on Unix (PR#18076).
  * filled.contour() gains a key.border argument.
  * tools::update_pkg_po() gets arguments pot_make and mo_make for
    _not_ re-making the corresponding files, and additionally a
    verbose argument.
  * Hexadecimal string colour specifications are now accepted in
    short form, so, for example, we can use "#123", which is
    equivalent to "#112233".
    Thanks to MikeFC for the original idea and Ella Kaye, Malcolm
    Barrett, George Stagg, and Hanne Oberman for the patch.
  * Plain-text help shows \var markup by angle brackets.
  * The new experimental primitive function declare() is intended to
    eventually allow information about R code to be communicated to
    the interpreter, compiler, and code analysis tools. The syntax
    for declarations is still being developed.
  * Functions psmirnov(), qsmirnov() and rsmirnov() in package stats
    have had argument two.sided renamed to alternative, to take into
    account that the permutation distributions of the one-sided
    statistics can be different in the case of ties.  Consequence of
    PR#18582.
  * sort() is now an implicit S4 generic in methods.
  * Formatting and printing, format(z), print(z), of complex vectors
    z no longer zap relatively small real or imaginary parts to zero,
    fixing PR#16752.  This is an API change, as it was documented
    previously to round real and imaginary parts together on purpose,
    producing nicer looking output.  As mentioned, e.g. in the PR,
    this change is compatible with many other "R-like" programming
    environments.
    We have simplified the internal code and now basically format the
    real and imaginary parts independently of each other.
  * New experimental functions Tailcall() and Exec() to support
    writing stack-space-efficient recursive functions.
  * Where characters are attempted to be plotted by pdf(),
    postscript() and xfig() which are not in the selected 8-bit
    character set (most often Latin-1) and the R session is using a
    UTF-8 locale, the warning messages will show the UTF-8 character
    rather than its bytes and one dot will be substituted per
    character rather than per byte.  (Platforms whose iconv() does
    transliteration silently plot the transliteration.)
    In a UTF-8 locale some transliterations are now done with a
    warning (e.g., dashes and Unicode minus to hyphen, ligatures are
    expanded, permille (‰) is replaced by o/oo), although the OS may
    have got there first.  These are warnings as they will continue
    to be replaced by dots in earlier versions of R.
  * The matrix multiplication functions crossprod() and tcrossprod()
    are now also primitive and S3 generic, as %*% had become in R
    4.3.0.
  * source() and example() have a new optional argument catch.aborts
    which allows continued evaluation of the R code after an error.
  * The non-Quartz tiff() devices allow additional types of
    compression if supported by the platform's libtiff library.
  * The list of base and recommended package names is now provided by
    tools::standard_package_names().
  * cairo_pdf() and cairo_ps() default to onefile = TRUE to closer
    match pdf() and postscript().
  * New option catch.script.errors provides a documented way to catch
    errors and then continue in non-interactive use.
  * L %||% R newly in base is an expressive idiom for the phrases
    if(!is.null(L)) L else R or if(is.null(L)) R else L.
  * The return value from warnings() now always inherits from
    "warnings" as documented, now also in the case of no warnings
    where it previously returned NULL.
  * as.complex("1i") now returns 0 + 1i instead of NA with a warning.
  * z &lt;- c(NA, 1i) now keeps the imaginary part Im(z[1]) == 0, no
    longer coercing to NA_complex_.  Similarly, cumsum(z) correctly
    sums real and imaginary parts separately, i.e., without
    "crosstalk" in case of NAs.
  * On Alpine Linux iconv() now maps "latin2", "latin-2", "latin9"
    and "latin-9" to encoding names the OS knows about
    (case-insensitively).
  * iconv(sub = "Unicode") now always zero-pads to four (hex) digits,
    rather than to 4 or 8.  (This seems to have become the convention
    once Unicode restricted the number of Unicode points to 2^21 - 1
    and so will never need more than 6 digits.)
  * NCOL(NULL) now returns 0 instead of 1, for consistency with
    cbind().
  * The information for the Euro glyph missing from the Adobe .afm
    files for the Courier, Helvetica and Times families has been
    copied from their URW equivalents - this will improve vertical
    centring in the pdf() and postscript() devices.
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.12.0.  The changes are almost entirely cosmetic.
  * The included LAPACK sources have been updated to version 3.12.0
    and some further double-complex routines added.
  * There are new font families for the 2014--5 URW 2.0 fonts (see
    ?pdf) which are included in recent versions of Ghostscript.
    These have font widths for most Greek glyphs and a few others
    which were missing from the original versions (whose font
    families remain available for reproducibility, although
    Ghostscript-based viewers will render using the 2.0 versions).
  * Improve the large-n efficiency of as.matrix(&lt;dist&gt;), thanks an R
    contributors effort, notably by Tim Taylor and Heather Turner,
    see PR#18660.
  * The default and numeric methods of all.equal() get a check.class
    option.
  * zapsmall() gets new optional arguments, function mFUN and min.d,
    for extra flexibility; fulfills a wish in PR#18199.  Also, it is
    now an implicit S4 generic in package methods.
  * The Rd filter for aspell() gains an ignore argument.
  * New generic function sort_by(), primarily useful for the
    data.frame method which can be used to sort rows of a data frame
    by one or more columns.
  * The icence headers for the RPC code in src/extra/xdr have been
    updated to use the GPL-compatible licence published by Oracle
    America in 2010.
  * New function pkg2HTML() in tools to create single-page HTML
    reference manuals for R packages.
  * The byte code evaluator now uses less C stack space for recursive
    calls to byte-compiled functions. It also makes more of an effort
    to avoid allocations for scalar return values.
  * New completion option backtick (disabled by default) allows
    non-syntactic completions to be wrapped in backquotes. This is
    currently only useful for Jupyter notebooks via the IRkernel
    package, and may cause problems for other backends.
  INSTALLATION:
  * The parser has been updated to work with bison 3.8.2, which is
    now used for the pre-generated parsers in gram.c, file.c, and
    gramRd.c. A few parser error messages have changed, which may
    affect code that relies on exact messages.
  INSTALLATION on a UNIX-ALIKE:
  * System valgrind headers are now required to use configure option
  - -with-valgrind-instrumentation with value 1 or 2.
  * configure will warn if it encounters a 32-bit build, as that is
    nowadays almost untested.
  * Environment variable R_SYSTEM_ABI is no longer used and so no
    longer recorded in etc/Renviron (it was not on Windows and was
    only ever used when preparing package tools).
  * If the libdeflate library and headers are available, libdeflate
    rather than libz is used to (de)compress R objects in lazy-load
    databases.  Typically tasks spend up to 5% of their time on such
    operations, although creating lazy-data databases is one of the
    exceptions.
    This can be suppressed if the library is available by the
    configure option --without-libdeflate-compression.
  * configure option --enable-lto=check has not worked reliably since
    2019 and has been removed.
  * The minimum autoconf requirement for a maintainer build has been
    increased to autoconf 2.71.
    It is intended to increase this to 2.72 for R 4.5.0: the
    distributed configure file was generated using 2.72.
  * The minimum version requirement for an external LAPACK has been
    reduced to 3.9.0.
  * No default C++ compiler is set if no C++17 compiler is detected:
    there is no longer an automatic fallback to C++14 or C++11.
    Compilers from the last five years should have sufficient
    support: for others macros CXX and CXXSTD can be set in file
    config.site to provide a fallback if needed.
    The Objective-C++ compiler now by default uses the standard
    selected by R for C++ (currently C++17) rather than the default
    standard for the C++ compiler (which on macOS is still C++98).
  INSTALLATION on macOS:
  * A new configure option --with-newAccelerate makes use of Apple's
    'new' BLAS / LAPACK interfaces in their Accelerate framework.
    Those interfaces are only available in macOS 13.3 or later, and
    building requires SDK 13.3 or later (from the Command Line Tools
    or Xcode 14.3 or later).
    By default the option uses new Accelerate for BLAS calls: to also
    use it for LAPACK use option --with-newAccelerate=lapack.  The
    later interfaces provide LAPACK 3.9.1 rather than 3.2.1: 3.9.1 is
    from 2021-04 and does not include the improved algorithms
    introduced in LAPACK 3.10.0 (including for BLAS calls).
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools44, an update of the Rtools43 toolchain.  It is
    based on GCC 13 and newer versions of MinGW-W64, binutils and
    libraries (targeting 64-bit Intel CPUs).  R-devel can no longer
    be built using Rtools43 without changes.
  * Rtools44 has experimental support for 64-bit ARM (aarch64) CPUs
    _via_ the LLVM 17 toolchain using lld, clang/flang-new and
    libc++.
  UTILITIES:
  * R CMD check notes when S4-style exports are used without
    declaring a strong dependence on package methods.
  * tools::checkRd() (used by R CMD check) detects more problems with
    \Sexpr-based dynamic content, including bad nesting of \Sexprs
    and invalid arguments.
  * tools::checkRd() now reports Rd titles and section names ending
    in a period; this is ignored by R CMD check unless environment
    variable _R_CHECK_RD_CHECKRD_MINLEVEL_ is set to -5 or smaller.
  * R CMD check now notes Rd files without an \alias, as long
    documented in 'Writing R Extensions' §1.3.1.  The check for a
    missing \description has been moved from tools::checkRd() to
    tools::checkRdContents().
  * R CMD check now visits inst/NEWS.Rd and OS-specific man
    subdirectories when checking Rd files.
  * tools::checkDocFiles() and tools::checkRdContents() now also
    check internal Rd files by default, but "specially" (ignoring
    missing documentation of arguments).
  * R CMD Rdiff gets option --useEx.
  * R CMD check now warns on non-portable uses of Fortran KIND such
    as INTEGER(KIND=4) and REAL(KIND=8).
    To see the failing lines set environment variable
    _R_CHECK_FORTRAN_KIND_DETAILS_ to a true value.
  * When checking Rd files, R CMD check now notes some of the "lost
    braces" that tools::checkRd() finds.  Typical problems are Rd
    macros missing the initial backslash (e.g., code{...}), in-text
    set notation (e.g., {1, 2}, where the braces need escaping), and
    \itemize lists with \describe-style entries of the form
    \item{label}{description}.
  * R CMD INSTALL (and hence check) will compile C++ code with
  - DR_NO_REMAP if environment variable _R_CXX_USE_NO_REMAP_ is set
    to a true value.  It is planned that this will in future become
    the default for compiling C++.
  * The new built-in Rd macro \dontdiff{} can be used to mark example
    code whose output should be ignored when comparing check output
    to reference output (tests/Examples/&lt;pkg&gt;-Ex.Rout.save).  The
    \dontdiff tag, like \donttest, is _not_ shown on the rendered
    help page, so provides a clean alternative to ##
    IGNORE_RDIFF_(BEGIN|END) comments.
  * R CMD build when there is no NAMESPACE, now uses the recommended
    exportPattern("^[^.]"), instead of exporting everything.
  * R CMD check now warns about non-ASCII characters in the NAMESPACE
    file (in addition to R files). Such packages are not portable and
    may fail to install on some platforms.
  C-LEVEL FACILITIES:
  * Headers R_ext/Applic.h and R-ext/Linpack.h used to include
    R_ext/BLAS.h although this was undocumented and unneeded by their
    documented entry points.  They no longer do so.
  * New function R_missing(), factored out from do_missing(), used to
    fix PR#18579.
  * SEXP type S4SXP has been renamed to OBJSXP to support
    experimenting with alternative object systems.  The S4SXP value
    can still be used in C code but is now deprecated.  Based on
    contributions from the R Consortium's Object-Oriented Programming
    Working Group.
  * New function pow1p(x,y) for accurate (1+x)^y.
  * mkCharLenCE was incorrectly documented to take a size_t length
    but was implemented with int (and character strings in R are
    limited to 2^31 - 1 bytes).
  DEPRECATED AND DEFUNCT:
  * data() no longer handles zipped data from long-defunct (since R
    2.13.0) --use-zip-data installations.
  * The legacy graphics devices pictex() and xfig() are now
    deprecated.  They do not support recent graphics enhancements and
    their font handling is rudimentary. The intention is to retain
    them for historical interest as long as they remain somewhat
    functional.
  * Support for encoding = "MacRoman" has been removed from the pdf()
    and postscript() devices - this was a legacy encoding supporting
    classic macOS up to 2001 and no longer has universal libiconv
    support.
  * is.R() is deprecated as no other S dialect is known to be in use
    (and this could only identify historical dialects, not future
    ones).
    Further information on calls can be obtained by setting the
    environment variable _R_DEPRECATED_IS_R_ to error which turns the
    deprecation warning into an error and so by default gives a
    traceback.  (This is done by R CMD check --as-cran.)
  * UseMethod() no longer forwards local variables assigned in the
    generic function into method call environments before evaluating
    the method body. This makes method calls behave more like
    standard function calls and makes method code easier to analyze
    correctly.
  * The twelve as.data.frame.&lt;class&gt;() methods which were deprecated
    only via _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ and in R CMD
    check --as-cran are formally deprecated now in favour of calling
    as.data.frame() or as.data.frame.vector().  The deprecation
    "check" now works also when as.data.frame() is S4 generic thanks
    to Ivan Krylov.
  * The default method for the directional comparison operators &lt;, &gt;,
    &lt;=, and &gt;= now signals an error when one of the operands is a
    language object, i.e. a symbol or a call.
  * For terms.formula(), deprecate abb and neg.out arguments
    _formally_ in addition to just documenting it.
  BUG FIXES:
  * The methods package is more robust to not being attached to the
    search path.  More work needs to be done.
  * pairwise.t.test() misbehaved when subgroups had 0 DF for
    variance, even with pool.sd = TRUE.  (PR#18594 by Jack Berry).
  * Probability distribution functions [dpq]&lt;distrib&gt;(x, *), but also
    bessel[IKJY](x, .) now consistently preserve attributes(x) when
    length(x) == 0, e.g., for a 2 x 0 matrix, thanks to Karolis
    Koncevičius' report PR#18509.
  * Group "Summary" computations such as sum(1:3, 4, na.rm = 5, NA,
    7, na.rm = LL) now give an error instead of either 17 or NN for
    LL true or false, as proposed by Ivan Krylov on the R-devel
    mailing list.  (This also means it is now an error to specify
    na.rm more than once.)
  * as.complex(x) now returns complex(real = x, imaginary = 0) for
    _all_ numerical and logical x, notably also for NA or
    NA_integer_.
  * Directories are now omitted by file.copy(, recursive = FALSE) and
    in file.append() (PR#17337).
  * gsub() and sub() are now more robust to integer overflow when
    reporting errors caused by too large input strings (PR#18346).
  * Top-level handlers are now more robust to attempts to remove a
    handler whilst handlers are running (PR#18508).
  * The handling of Alt+F4 in dialogs created on Windows using
    GraphApp has been fixed (PR#13870).
  * density() more consistently computes grid values for the
    FFT-based convolution, following Robert Schlicht's analysis and
    proposal in PR#18337, correcting density values typically by a
    factor of about 0.999.  Argument old.coords = TRUE provides back
    compatibility.
  * palette.colors() gains a name argument that defaults to FALSE
    controlling whether the vector of colours that is returned has
    names (where possible).  PR#18529.
  * tools::xgettext() no longer extracts the (non-translatable) class
    names from warningCondition and errorCondition calls.
  * S3method(&lt;gen&gt;, &lt;class&gt;, &lt;func&gt;) in the NAMESPACE file now works
    (again) when &lt;func&gt; is visible from the namespace, e.g.,
    imported, or in base.
  * getParseData(f) now also works for a function defined in the
    first of several &lt;pkg&gt;/R/*.R source files, thanks to Kirill
    Müller's report and Duncan Murdoch's patch in PR#16756.
  * Rd \Sexpr macros with nested #ifdef conditionals were not
    processed.
  * A non-blocking connection with non-default encoding (such as a
    socket) now correctly returns from readLines() after new data has
    arrived also when its EOF had been reached previously.  Thanks to
    Peter Meilstrup's report on R-devel and Ivan Krylov's report and
    patch proposal in PR#18555.
  * tools::checkRdContents() failed to detect empty argument
    descriptions when they spanned multiple lines, including those
    generated by prompt().  These cases are now noted by R CMD check.
  * Plain-text help no longer outputs spurious colons in the
    arguments list (for multi-line \item labels in the Rd source).
  * kappa() and rcond() work correctly in more cases; kappa(., norm =
    "2") now warns that it computes the 1-norm with (default) exact =
    FALSE; prompted by Mikael Jagan's quite comprehensive PR#18543.
  * Rd skeletons generated by prompt() or promptData() now use a
    dummy title (so R CMD build works).  tools::checkRdContents() has
    been updated to detect such template leftovers, including from
    promptPackage().
  * When S4 method dispatch fails because no method was found, the
    error message now includes the signature argument names; thanks
    to Michael Chirico's proposal on the R-devel list.
  * withAutoprint({ .. }) now preserves srcrefs previously lost,
    thanks to Andrew Simmons' report plus fix in PR#18572.
  * transform.data.frame() no longer adjusts names; in particular,
    untransformed variables are kept as-is, including those with
    syntactically invalid names (PR#17890).
  * The keep.source option for Rd \Sexpr blocks is no longer ignored.
  * The formula methods for t.test() and wilcox.test() now catch when
    paired is passed, addressing PR#14359; use Pair(x1, x2) ~ 1 for a
    paired test.
  * The level reported in the browser prompt was often too large. It
    now shows the number of browser contexts on the stack.
  * For cbind() and rbind(), the optional deparse.level argument is
    now properly passed to methods, thanks to Mikael Jagan's PR#18579
    and comments there.
  * Some error and warning messages for large ('long vector')
    matrix(v, nr, nc) and dim(m) &lt;- d are now correct about sizes,
    using long long formatting, fixing PR#18612 (and more) reported
    by Mikael Jagan.
  * readChar(useBytes = TRUE) now terminates strings even when the
    underlying connection uses extra spaces in the input buffer.
    This fixes problems with extra garbage seen with gzip
    connections, PR#18605.
  * Named capture in PCRE regular expressions now works also with
    more than 127 named groups (PR#18588).
  * Datetime functions are now robust against long jumps when dealing
    with internal time zone changes.  This avoids confusing warnings
    about an invalid time zone, previously triggered by turning
    warnings into errors or handling them via tryCatch (PR#17966,
    PR#17780).
  * Datetime functions now restore even an empty TZ environment
    variable after internal time zone changes (PR#17724).  This makes
    results of datetime functions with this (typically unintentional)
    setting more predictable.
  * drop.terms(*) now drops response as by default, keep.response =
    FALSE, fixing PR#18564 thanks to Mikael Jagan.
  * dummy.coef(.) now also works for lm()-models with character
    categorical predictor variables rather than factor ones, fixing
    PR#18635 reported by Jinsong Zhao.
  * formals(f) &lt;- formals(f) now also works for a function w/o
    arguments and atomic _constant_ body(f).
  * Correct as.function(&lt;invalid list&gt;, .)'s error message.
  * removeSource() is yet more thorough in finding and removing
    "srcref" and the other source references from parsed R language
    chunks, fixing PR#18638 thanks to Andrew Simmons.
  * dgeom() is more accurate now, notably when its result is very
    small, fixing PR#18642 thanks to the proposal of Morten Welinder,
    also improving other instances where C level binom_raw(x, n, ..)
    has x == 0 or x== n.
  * warning() with options(warn = 1) has improved output for
    multi-line messages.
  * axis.Date() and axis.POSIXct() now respect the par("lab") setting
    for the number of pretty() intervals.
  * Comparisons for language objects (which are based on deparsing)
    are now more careful about using accurate deparsed results
    (PR#18676).
  * Plain-text help (Rd2txt) now correctly preserves blank lines
    following single-line \dontrun code.
  * &lt;POSIXlt&gt;[*] no longer sets wrong "balanced" attribute, fixing
    PR#18681 thanks to Mikael Jagan.
  * str(&lt;classed-call&gt;) now deparses the call as expected, fixing
    PR#18684, reported by Dave Slager.
  * In Rd examples, code following the closing brace of a \dontrun,
    \dontshow or \donttest tag on the same line is no longer skipped
    when R CMD check runs the examples.
  * as.data.frame(matrix(*, ncol=0)) now gets valid names() and
    colnames(); reported by Davis Vaughan on the R-devel list.
  * Internal Mathlib function stirlerr(n) is now almost fully
    (52-bit) accurate for all n &gt;= ~5.9 and more accurate also in the
    range 1 -- 5.9.  This entails small ("after 12th decimal")
    changes in density functions, e.g., dgamma() in _some_ regions of
    their support.  The fix was partly prompted by Morten Welinder's
    PR#18640.
  * Numbers like 9876543.2 are now considered non-integer by Mathlib
    internal R_nonint(), amending original fix of PR#15734.
  * Rd comment lines no longer cause broken paragraphs in the
    rendered PDF and plain-text help. In code blocks, pure comment
    lines (starting with %) no longer produce an empty line.
  * xtabs(Freq ~ .) now consistently defaults to na.action = na.pass,
    using na.rm = FALSE (added as an argument) when summing over Freq
    (PR#17770).
  * tools::testInstalledPackage() is no longer silent about failures
    from running examples or tests and its return code no longer
    ignores failures from checking vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1718366400">- CHANGES IN R 4.4.1:
  C-LEVEL FACILITIES:
  * Functions R_atof and R_strtod declared in header R_ext/Utils.h
    are now documented in 'Writing R Extensions' and so formally part
    of the API.
  * The non-API entry points Rf_setSVector, Rf_StringFalse,
    Rf_StringTrue and Rf_isBlankString have been added to those
    reported by R CMD check.
  * The new function Rf_allocLang is now available. This provides an
    alternative to the idiom of calling Rf_allocList followed by
    SET_TYPEOF.
  UTILITIES:
  * R CMD check now reports as warnings what gfortran calls 'Fortran
    2018 deleted features', all of which have long been marked as
    'obsolescent' and some of which were deleted in Fortran 2008 or
    earlier.  Fortran compilers are no longer required to support
    these.
  BUG FIXES:
  * as.numeric(), scan(), type.convert() and other places which use
    the internal C function R_strtod now require a _non-empty_ digit
    sequence in a decimal or binary exponent.  This aligns with the
    C/POSIX standard for strtod and with ?NumericConstants.
  * as.data.frame(m, make.names=NA) now works correctly for a matrix
    m with NA's in row names.
  * The error message from &lt;POSIXlt&gt;[["hour"]] and similar now
    mentions *[[, "hour"]], as wished for in PR#17409 and proposed by
    Michael Chirico.
  * qbinom() and potentially qpois(), qnbinom(), no longer sometimes
    fail accurate inversion (of pbinom(), etc), thanks to Christopher
    Chang's report and patch in PR#18711.
  * The internal help server on Windows can again serve requests sent
    in quick succession, fixing a regression in R 4.4.0.
  * debugcall(&lt;S3Generic&gt;()) now also works when a corresponding
    S4-generic version is in the methods cache (PR#18143).
  * Package tools' toTitleCase(ch0) now returns character(0) when ch0
    is of zero length; fixing PR#18724, reported by David Hugh Jones.
  * R CMD check is no longer broken (without a check result and no
    explanation in 00check.log) for a package which declares an
    invalid VignetteBuilder in DESCRIPTION but has no vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1730376000">- CHANGES IN R 4.4.2:
  C-LEVEL FACILITIES:
  * The S-compatibility macros F77_COM and F77_COMDECL defined in
    header R_ext/RS.h are deprecated and will be removed shortly.  We
    could find no record of their use.
  BUG FIXES:
  * Mathlib function lgammacor(x) no longer warns about underflow to
    zero for large x.
  * Text widths and heights were incorrectly reported by the Quartz
    device if the drawing context didn't exist yet (typically when
    drawing off-screen to a window that is yet to appear, see
    PR#18591).
  * The Quartz device could segfault in cases where paths with spaces
    are used in the new glyph drawing API.  Thanks to Tomek
    Gieorgijewski (PR#18758).
  * On macOS in R CRAN builds, it is again possible to read
    little-endian UTF-16 text with a BOM from a connection using
    encoding="UTF-16".  Users building R from source should avoid
    using the system libiconv in macOS 14.1 and later.
  * methods' internal .requirePackage() now re-enables primitive
    method dispatch when needed; thanks to Ivan Krylov for
    demystifying CRAN package check failures on the R-devel mailing
    list.</changelog>
</package>
<package pkgid="258a53d1ff9f227e55133050d81fbb29507d90afa150d3408a39367c3058ed920891e77c3a0b9e6fdb3aba0d291a12d9a20011db17bc73e847f4c2d491a139e3" name="R-compiler" arch="x86_64">
  <version epoch="0" ver="4.4.2" rel="51.0.2.2.sr20241103"/>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1620302400">- To get in sync with d:l:R:autoCRAN the Matrix package's split
  in -devel was reversed.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339200">- improved spec file according to comments of dimstar in
  https://build.opensuse.org/request/show/892685</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339201">- CHANGES IN R 4.1.0:
  FUTURE DIRECTIONS:
  * It is planned that the 4.1.x series will be the last to support
    32-bit Windows, with production of binary packages for that
    series continuing until early 2023.
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Data set esoph in package datasets now provides the correct
    numbers of controls; previously it had the numbers of cases added
    to these.  (Reported by Alexander Fowler in PR#17964.)
  NEW FEATURES:
  * www.omegahat.net is no longer one of the repositories known by
    default to setRepositories().  (Nowadays it only provides source
    packages and is often unavailable.)
  * Function package_dependencies() (in package tools) can now use
    different dependency types for direct and recursive dependencies.
  * The checking of the size of tarball in R CMD check --as-cran
    &lt;pkg&gt; may be tweaked via the new environment variable
    _R_CHECK_CRAN_INCOMING_TARBALL_THRESHOLD_, as suggested in
    PR#17777 by Jan Gorecki.
  * Using c() to combine a factor with other factors now gives a
    factor, an ordered factor when combining ordered factors with
    identical levels.
  * apply() gains a simplify argument to allow disabling of
    simplification of results.
  * The format() method for class "ftable" gets a new option justify.
    (Suggested by Thomas Soeiro.)
  * New ...names() utility.  (Proposed by Neal Fultz in PR#17705.)
  * type.convert() now warns when its as.is argument is not
    specified, as the help file always said it _should_.  In that
    case, the default is changed to TRUE in line with its change in
    read.table() (related to stringsAsFactor) in R 4.0.0.
  * When printing list arrays, classed objects are now shown _via_
    their format() value if this is a short enough character string,
    or by giving the first elements of their class vector and their
    length.
  * capabilities() gets new entry "Rprof" which is TRUE when R has
    been configured with the equivalent of --enable-R-profiling (as
    it is by default).  (Related to Michael Orlitzky's report
    PR#17836.)
  * str(xS4) now also shows extraneous attributes of an S4 object
    xS4.
  * Rudimentary support for vi-style tags in rtags() and R CMD rtags
    has been added.  (Based on a patch from Neal Fultz in PR#17214.)
  * checkRdContents() is now exported from tools; it and also
    checkDocFiles() have a new option chkInternal allowing to check
    Rd files marked with keyword "internal" as well.  The latter can
    be activated for R CMD check via environment variable
    _R_CHECK_RD_INTERNAL_TOO_.
  * New functions numToBits() and numToInts() extend the raw
    conversion utilities to (double precision) numeric.
  * Functions URLencode() and URLdecode() in package utils now work
    on vectors of URIs.  (Based on patch from Bob Rudis submitted
    with PR#17873.)
  * path.expand() can expand ~user on most Unix-alikes even when
    readline is not in use.  It tries harder to expand ~, for example
    should environment variable HOME be unset.
  * For HTML help (both dynamic and static), Rd file links to help
    pages in external packages are now treated as references to
    topics rather than file names, and fall back to a file link only
    if the topic is not found in the target package. The earlier rule
    which prioritized file names over topics can be restored by
    setting the environment variable _R_HELP_LINKS_TO_TOPICS_ to a
    false value.
  * c() now removes NULL arguments before dispatching to methods,
    thus simplifying the implementation of c() methods, _but_ for
    back compatibility keeps NULL when it is the first argument.
    (From a report and patch proposal by Lionel Henry in PR#17900.)
  * Vectorize()'s result function's environment no longer keeps
    unneeded objects.
  * Function ...elt() now propagates visibility consistently with
    ..n.  (Thanks to Lionel Henry's PR#17905.)
  * capture.output() no longer uses non-standard evaluation to
    evaluate its arguments.  This makes evaluation of functions like
    parent.frame() more consistent.  (Thanks to Lionel Henry's
    PR#17907.)
  * packBits(bits, type="double") now works as inverse of
    numToBits().  (Thanks to Bill Dunlap's proposal in PR#17914.)
  * curlGetHeaders() has two new arguments, timeout to specify the
    timeout for that call (overriding getOption("timeout")) and TLS
    to specify the minimum TLS protocol version to be used for
    https:// URIs (_inter alia_ providing a means to check for sites
    using deprecated TLS versions 1.0 and 1.1).
  * For nls(), an optional constant scaleOffset may be added to the
    denominator of the relative offset convergence test for cases
    where the fit of a model is expected to be exact, thanks to a
    proposal by John Nash.  nls(*, trace=TRUE) now also shows the
    convergence criterion.
  * Numeric differentiation _via_ numericDeriv() gets new optional
    arguments eps and central, the latter for taking central divided
    differences.  The latter can be activated for nls() via
    nls.control(nDcentral = TRUE).
  * nls() now passes the trace and control arguments to getInitial(),
    notably for all self-starting models, so these can also be fit in
    zero-noise situations via a scaleOffset.  For this reason, the
    initial function of a selfStart model must now have ... in its
    argument list.
  * bquote(splice = TRUE) can now splice expression vectors with
    attributes: this makes it possible to splice the result of
    parse(keep.source = TRUE).  (Report and patch provided by Lionel
    Henry in PR#17869.)
  * textConnection() gets an optional name argument.
  * get(), exists(), and get0() now signal an error if the first
    argument has length greater than 1.  Previously additional
    elements were silently ignored.  (Suggested by Antoine Fabri on
    R-devel.)
  * R now provides a shorthand notation for creating functions, e.g.
    \(x) x + 1 is parsed as function(x) x + 1.
  * R now provides a simple native forward pipe syntax |&gt;.  The
    simple form of the forward pipe inserts the left-hand side as the
    first argument in the right-hand side call.  The pipe
    implementation as a syntax transformation was motivated by
    suggestions from Jim Hester and Lionel Henry.
  * all.equal(f, g) for functions now by default also compares their
    environment(.)s, notably via new all.equal method for class
    function.  Comparison of nls() fits, e.g., may now need
    all.equal(m1, m2, check.environment = FALSE).
  * .libPaths() gets a new option include.site, allowing to _not_
    include the site library.  (Thanks to Dario Strbenac's suggestion
    and Gabe Becker's PR#18016.)
  * Lithuanian translations are now available.  (Thanks to Rimantas
    Zakauskas.)
  * names() now works for DOTSXP objects.  On the other hand, in
    R-lang, the R language manual, we now warn against relying on the
    structure or even existence of such dot-dot-dot objects.
  * all.equal() no longer gives an error on DOTSXP objects.
  * capabilities("cairo") now applies only to the file-based devices
    as it is now possible (if very unusual) to build R with Cairo
    support for those but not for X11().
  * There is optional support for tracing the progress of
    loadNamespace() - see its help.
  * (Not Windows.)  l10n_info() reports an additional element, the
    name of the encoding as reported by the OS (which may differ from
    the encoding part (if any) of the result from
    Sys.getlocale("LC_CTYPE").
  * New function gregexec() which generalizes regexec() to find _all_
    disjoint matches and well as all substrings corresponding to
    parenthesized subexpressions of the given regular expression.
    (Contributed by Brodie Gaslam.)
  * New function charClass() in package utils to query the
    wide-character classification functions in use (such as
    iswprint).
  * The names of quantile()'s result no longer depend on the global
    getOption("digits"), but quantile() gets a new optional argument
    digits = 7 instead.
  * grep(), sub(), regexp and variants work considerably faster for
    long factors with few levels.  (Thanks to Michael Chirico's
    PR#18063.)
  * Provide grouping of x11() graphics windows within a window
    manager such as Gnome or Unity; thanks to a patch by Ivan Krylov
    posted to R-devel.
  * The split() method for class data.frame now allows the f argument
    to be specified as a formula.
  * sprintf now warns on arguments unused by the format string.
  * New palettes "Rocket" and "Mako" for hcl.colors() (approximating
    palettes of the same name from the 'viridisLite' package).
    Contributed by Achim Zeileis.
  * The base environment and its namespace are now locked (so one can
    no longer add bindings to these or remove from these).
  * Rterm handling of multi-byte characters has been improved,
    allowing use of such characters when supported by the current
    locale.
  * Rterm now accepts ALT+ +xxxxxxxx sequences to enter Unicode
    characters as hex digits.
  * Environment variable LC_ALL on Windows now takes precedence over
    LC_CTYPE and variables for other supported categories, matching
    the POSIX behaviour.
  * duplicated() and anyDuplicated() are now optimized for integer
    and real vectors that are known to be sorted via the ALTREP
    framework. Contributed by Gabriel Becker via PR#17993.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 14
    and so packages that provide graphics devices should be
    reinstalled.
  * Graphics devices should now specify deviceVersion to indicate
    what version of the graphics engine they support.
  * Graphics devices can now specify deviceClip.  If TRUE, the
    graphics engine will never perform any clipping of output itself.
    The clipping that the graphics engine does perform (for both
    canClip = TRUE and canClip = FALSE) has been improved to avoid
    producing unnecessary artifacts in clipped output.
  * The grid package now allows gpar(fill) to be a linearGradient(),
    a radialGradient(), or a pattern().  The viewport(clip) can now
    also be a grob, which defines a clipping path, and there is a new
    viewport(mask) that can also be a grob, which defines a mask.
    These new features are only supported so far on the Cairo-based
    graphics devices and on the pdf() device.
  * (Not Windows.)  A warning is given when a Cairo-based type is
    specified for a png(), jpeg(), tiff() or bmp() device but Cairo
    is unsupported (so type = "Xlib" is tried instead).
  * grSoftVersion() now reports the versions of FreeType and
    FontConfig if they are used directly (not _via_ Pango), as is
    most commonly done on macOS.
  C-LEVEL FACILITIES:
  * The _standalone_ libRmath math library and R's C API now provide
    log1pexp() again as documented, and gain log1mexp().
  INSTALLATION on a UNIX-ALIKE:
  * configure checks for a program pkgconf if program pkg-config is
    not found.  These are now only looked for on the path (like
    almost all other programs) so if needed specify a full path to
    the command in PKG_CONFIG, for example in file config.site.
  * C99 function iswblank is required - it was last seen missing ca
    2003 so the workaround has been removed.
  * There are new configure options --with-internal-iswxxxxx,
  - -with-internal-towlower and --with-internal-wcwidth which allows
    the system functions for wide-character classification,
    case-switching and width (wcwidth and wcswidth) to be replaced by
    internal ones.  The first has long been used on macOS, AIX (and
    Windows) but this enables it to be unselected there and selected
    for other platforms (it is the new default on Solaris).  The
    second is new in this version of R and is selected by default on
    macOS and Solaris.  The third has long been the default and
    remains so as it contains customizations for East Asian
    languages.
    System versions of these functions are often minimally
    implemented (sometimes only for ASCII characters) and may not
    cover the full range of Unicode points: for example Solaris (and
    Windows) only cover the Basic Multilingual Plane.
  * Cairo installations without X11 are more likely to be detected by
    configure, when the file-based Cairo graphics devices will be
    available but not X11(type = "cairo").
  * There is a new configure option --with-static-cairo which is the
    default on macOS.  This should be used when only static cairo
    (and where relevant, Pango) libraries are available.
  * Cairo-based graphics devices on platforms without Pango but with
    FreeType/FontConfig will make use of the latter for font
    selection.
  LINK-TIME OPTIMIZATION on a UNIX-ALIKE:
  * Configuring with flag --enable-lto=R now also uses LTO when
    installing the recommended packages.
  * R CMD INSTALL and R CMD SHLIB have a new flag --use-LTO to use
    LTO when compiling code, for use with R configured with
  - -enable-lto=R.  For R configured with --enable-lto, they have
    the new flag --no-use-LTO.
    Packages can opt in or out of LTO compilation _via_ a UseLTO
    field in the DESCRIPTION file.  (As usual this can be overridden
    by the command-line flags.)
  BUILDING R on Windows:
  * for GCC &gt;= 8, FC_LEN_T is defined in config.h and hence character
    lengths are passed from C to Fortran in _inter alia_ BLAS and
    LAPACK calls.
  * There is a new text file src/gnuwin32/README.compilation, which
    outlines how C/Fortran code compilation is organized and
    documents new features:
  * R can be built with Link-Time Optimization with a suitable
    compiler - doing so with GCC 9.2 showed several
    inconsistencies which have been corrected.
  * There is support for cross-compiling the C and Fortran code
    in R and standard packages on suitable (Linux) platforms.
    This is mainly intended to allow developers to test later
    versions of compilers - for example using GCC 9.2 or 10.x has
    detected issues that GCC 8.3 in Rtools40 does not.
  * There is experimental support for cross-building R packages
    with C, C++ and/or Fortran code.
  * The R installer can now be optionally built to support a single
    architecture (only 64-bit or only 32-bit).
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++14 where
    available (which it is on all currently checked platforms): if
    not (as before) C++11 is used if available otherwise C++ is not
    supported.
    Packages which specify C++11 will still be installed using C++11.
    C++14 compilers may give deprecation warnings, most often for
    std::random_shuffle (deprecated in C++14 and removed in C++17).
    Either specify C++11 (see 'Writing R Extensions') or modernize
    the code and if needed specify C++14.  The latter has been
    supported since R 3.4.0 so the package's DESCRIPTION would need
    to include something like
    Depends: R (&gt;= 3.4)
  PACKAGE INSTALLATION on Windows:
  * R CMD INSTALL and R CMD SHLIB make use of their flag --use-LTO
    when the LTO_OPT make macro is set in file etc/${R_ARCH}/Makeconf
    or in a personal/site Makevars file.  (For details see 'Writing R
    Extensions' SS4.5.)
    This provides a valuable check on code consistency.  It does work
    with GCC 8.3 as in Rtools40, but that does not detect everything
    the CRAN checks with current GCC do.
  PACKAGE INSTALLATION on macOS:
  * The default personal library directory on builds with
  - -enable-aqua (including CRAN builds) now differs by CPU type,
    one of
    ~/Library/R/x86_64/x.y/library
    ~/Library/R/arm64/x.y/library
    This uses the CPU type R (and hence the packages) were built for,
    so when a x86_64 build of R is run under Rosetta emulation on an
    arm64 Mac, the first is used.
  UTILITIES:
  * R CMD check can now scan package functions for bogus return
    statements, which were possibly intended as return() calls (wish
    of PR#17180, patch by Sebastian Meyer). This check can be
    activated via the new environment variable
    _R_CHECK_BOGUS_RETURN_, true for --as-cran.
  * R CMD build omits tarballs and binaries of previous builds from
    the top-level package directory.  (PR#17828, patch by Sebastian
    Meyer.)
  * R CMD check now runs sanity checks on the use of LazyData, for
    example that a data directory is present and that
    LazyDataCompression is not specified without LazyData and has a
    documented value.  For packages with large LazyData databases
    without specifying LazyDataCompression, there is a reference to
    the code given in 'Writing R Extensions' SS1.1.6 to test the
    choice of compression (as in all the CRAN packages tested a
    non-default method was preferred).
  * R CMD build removes LazyData and LazyDataCompression fields from
    the DESCRIPTION file of packages without a data directory.
  ENCODING-RELATED CHANGES:
  * The parser now treats \Unnnnnnnn escapes larger than the upper
    limit for Unicode points (\U10FFFF) as an error as they cannot be
    represented by valid UTF-8.
    Where such escapes are used for outputting non-printable
    (including unassigned) characters, 6 hex digits are used (rather
    than 8 with leading zeros).  For clarity, braces are used, for
    example \U{0effff}.
  * The parser now looks for non-ASCII spaces on Solaris (as
    previously on most other OSes).
  * There are warnings (including from the parser) on the use of
    unpaired surrogate Unicode points such as \uD834.  (These cannot
    be converted to valid UTF-8.)
  * Functions nchar(), tolower(), toupper() and chartr() and those
    using regular expressions have more support for inputs with a
    marked Latin-1 encoding.
  * The character-classification functions used (by default) to
    replace the system iswxxxxx functions on Windows, macOS and AIX
    have been updated to Unicode 13.0.0.
    The character-width tables have been updated to include new
    assignments in Unicode 13.0.0.
  * The code for evaluating default (extended) regular expressions
    now uses the same character-classification functions as the rest
    of R (previously they differed on Windows, macOS and AIX).
  * There is a build-time option to replace the system's
    wide-character wctrans C function by tables shipped with R: use
    configure option --with-internal-towlower or (on Windows)
  - DUSE_RI18N_CASE in CFLAGS when building R.  This may be needed
    to allow tolower() and toupper() to work with Unicode characters
    beyond the Basic Multilingual Plane where not supported by system
    functions (e.g. on Solaris where it is the new default).
  * R is more careful when truncating UTF-8 and other multi-byte
    strings that are too long to be printed, passed to the system or
    libraries or placed into an internal buffer.  Truncation will no
    longer produce incomplete multibyte characters.
  DEPRECATED AND DEFUNCT:
  * Function plclust() from the package stats and
    package.dependencies(), pkgDepends(), getDepList(),
    installFoundDepends(), and vignetteDepends() from package tools
    are defunct.
  * Defunct functions checkNEWS() and readNEWS() from package tools
    and CRAN.packages() from utils have been removed.
  * R CMD config CXXCPP is defunct (it was deprecated in R 3.6.2).
  * parallel::detectCores() drops support for Irix (retired in 2013).
  * The LINPACK argument to chol.default(), chol2inv(),
    solve.default() and svd() has been defunct since R 3.1.0.  It was
    silently ignored up to R 4.0.3 but now gives an error.
  * Subsetting/indexing, such as ddd[*] or ddd$x on a DOTSXP
    (dot-dot-dot) object ddd has been disabled; it worked by accident
    only and was undocumented.
  BUG FIXES:
  * Many more C-level allocations (mainly by malloc and strdup) are
    checked for success with suitable alternative actions.
  * Bug fix for replayPlot(); this was turning off graphics engine
    display list recording if a recorded plot was replayed in the
    same session.  The impact of the bug became visible if resize the
    device after replay OR if attempted another savePlot() after
    replay (empty display list means empty screen on resize or empty
    saved plot).
  * R CMD check etc now warn when a package exports non-existing S4
    classes or methods, also in case of no "methods" presence.
    (Reported by Alex Bertram; reproducible example and patch by
    Sebastian Meyer in PR#16662.)
  * boxplot() now also accepts calls for labels such as ylab, the
    same as plot().  (Reported by Marius Hofert.)
  * The help page for xtabs() now correctly states that addNA is
    setting na.action = na.pass among others.  (Reported as PR#17770
    by Thomas Soeiro.)
  * The R CMD check &lt;pkg&gt; gives a longer and more comprehensible
    message when DESCRIPTION misses dependencies, e.g., in Imports:.
    (Thanks to the contributors of PR#17179.)
  * update.default() now calls the generic update() on the formula to
    work correctly for models with extended formulas.  (As reported
    and suggested by Neal Fultz in PR#17865.)
  * The horizontal position of leaves in a dendrogram is now correct
    also with center = FALSE.  (PR#14938, patch from Sebastian
    Meyer.)
  * all.equal.POSIXt() no longer warns about and subsequently ignores
    inconsistent "tzone" attributes, but describes the difference in
    its return value (PR#17277).  This check can be disabled _via_
    the new argument check.tzone = FALSE as suggested by Sebastian
    Meyer.
  * as.POSIXct() now populates the "tzone" attribute from its tz
    argument when x is a logical vector consisting entirely of NA
    values.
  * x[[2^31]] &lt;- v now works.  (Thanks to the report and patch by
    Suharto Anggono in PR#17330.)
  * In log-scale graphics, axis() ticks and label positions are now
    computed more carefully and symmetrically in their range,
    typically providing _more_ ticks, fulfilling wishes in PR#17936.
    The change really corresponds to an improved axisTicks() (package
    grDevices), potentially influencing grid and lattice, for
    example.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now correct to at
    least five digits where it was catastrophically wrong,
    previously.
  * sum(df) and similar "Summary"- and "Math"-group member functions
    now work for data frames df with logical columns, notably also of
    zero rows.  (Reported to R-devel by Martin "b706".)
  * unsplit() had trouble with tibbles due to unsound use of rep(NA,
    len)-indexing, which should use NA_integer_ (Reported to R-devel
    by Mario Annau.)
  * pnorm(x, log.p = TRUE) underflows to -Inf slightly later.
  * show(&lt;hidden S4 generic&gt;) prints better and without quotes for
    non-hidden S4 generics.
  * read.table() and relatives treated an "NA" column name as missing
    when check.names = FALSE PR#18007.
  * Parsing strings containing UTF-16 surrogate pairs such as
    "\uD834\uDD1E" works better on some (uncommon) platforms.
    sprintf("%X", utf8ToInt("\uD834\uDD1E")) should now give "1D11E"
    on all platforms.
  * identical(x,y) is no longer true for differing DOTSXP objects,
    fixing PR#18032.
  * str() now works correctly for DOTSXP and related exotics, even
    when these are doomed.
    Additionally, it no longer fails for lists with a class and
    "irregular" method definitions such that e.g. lapply(*) will
    necessarily fail, as currently for different igraph objects.
  * Too long lines in environment files (e.g. Renviron) no longer
    crash R. This limit has been increased to 100,000 bytes.
    (PR#18001.)
  * There is a further workaround for FreeType giving incorrect
    italic font faces with cairo-based graphics devices on macOS.
  * add_datalist(*, force = TRUE) (from package tools) now actually
    updates an existing data/datalist file for new content.  (Thanks
    to a report and patch by Sebastian Meyer in PR#18048.)
  * cut.Date() and cut.POSIXt() could produce an empty last interval
    for breaks = "months" or breaks = "years".  (Reported as PR#18053
    by Christopher Carbone.)
  * Detection of the encoding of 'regular' macOS locales such as
    en_US (which is UTF-8) had been broken by a macOS change:
    fortunately these are now rarely used with en_US.UTF-8 being
    preferred.
  * sub() and gsub(pattern, repl, x, *) now keep attributes of x such
    as names() also when pattern is NA (PR#18079).
  * Time differences ("difftime" objects) get a replacement and a
    rep() method to keep "units" consistent.  (Thanks to a report and
    patch by Nicolas Bennett in PR#18066.)
  * The \RdOpts macro, setting defaults for \Sexpr options in an Rd
    file, had been ineffective since R 2.12.0: it now works again.
    (Thanks to a report and patch by Sebastian Meyer in PR#18073.)
  * mclapply and pvec no longer accidentally terminate parallel
    processes started before by mcparallel or related calls in
    package parallel (PR#18078).
  * grep and other functions for evaluating (extended) regular
    expressions handle in Unicode also strings not explicitly flagged
    UTF-8, but flagged native when running in UTF-8 locale.
  * Fixed a crash in fifo implementation on Windows (PR#18031).
  * Binary mode in fifo on Windows is now properly detected from
    argument open (PR#15600, PR#18031).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1622808000">- The line %{__install} -m 755 -d %{_infodir}
  no longer works in TW or Factory.
  But without that line it works everywhere. So this instruction
  was commented out of the spec file.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1628596800">- CHANGES IN R 4.1.1:
  NEW FEATURES:
  * require(pkg, quietly = TRUE) is quieter and in particular does
    not warn if the package is not found.
  DEPRECATED AND DEFUNCT:
  * Use of ftp:// URIs should be regarded as deprecated, with
    on-going support confined to method = "libcurl" and not routinely
    tested.  (Nowadays no major browser supports them.)
  * The non-default method = "internal" is deprecated for http:// and
    ftp:// URIs for both download.file and url.
  * On Windows, method = "wininet" is deprecated for http://,
    https:// and ftp:// URIs for both download.file and url.  (A
    warning is only given for ftp://.)
    For ftp:// URIs the default method is now "libcurl" if available
    (which it is on CRAN builds).
    method = "wininet" remains the default for http:// and https://
    URIs but if libcurl is available, using method = "libcurl" is
    preferred.
  INSTALLATION:
  * make check now works also without a LaTeX installation.  (Thanks
    to Sebastian Meyer's PR#18103.)
  BUG FIXES:
  * make check-devel works again in an R build configured with
  - -without-recommended-packages.
  * qnbinom(p, size, mu) for large size/mu is correct now in a range
    of cases (PR#18095); similarly for the (size, prob)
    parametrization of the negative binomial.  Also qpois() and
    qbinom() are better and or faster for extreme cases.  The
    underlying C code has been modularized and is common to all four
    cases of discrete distributions.
  * gap.axis is now part of the axis() arguments which are passed
    from bxp(), and hence boxplot().  (Thanks to Martin Smith's
    report and suggestions in PR#18109.)
  * .First and .Last can again be set from the site profile.
  * seq.int(from, to, *) and seq.default(..) now work better in large
    range cases where from-to is infinite where the two boundaries
    are finite.
  * all.equal(x,y) now returns TRUE correctly also when several
    entries of abs(x) and abs(y) are close to .Machine$double.xmax,
    the largest finite numeric.
  * model.frame() now clears the object bit when removing the class
    attribute of a value via na.action (PR#18100).
  * charClass() now works with multi-character strings on Windows
    (PR#18104, fixed by Bill Dunlap).
  * encodeString() on Solaris now works again in Latin-1 encoding on
    characters represented differently in UTF-8.  Support for
    surrogate pairs on Solaris has been improved.
  * file.show() on Windows now works with non-ASCII path names
    representable in the current native encoding (PR#18132).
  * Embedded R on Windows can now find R home directory via the
    registry even when installed only for the current user
    (PR#18135).
  * pretty(x) with finite x now returns finite values also in the
    case where the extreme x values are close in size to the maximal
    representable number .Machine$double.xmax.
    Also, it's been tweaked for very small ranges and when a boundary
    is close (or equal) to zero; e.g., pretty(c(0,1e-317)) no longer
    has negative numbers, currently still warning about a very small
    range, and pretty(2^-(1024 - 2^-1/(c(24,10)))) is more accurate.
  * The error message for not finding vignette files when weaving has
    correct file sizes now. (Thanks to Sebastian Meyer's PR#18154.)
  * dnbinom(20, &lt;large&gt;, 1) now correctly gives 0, and similar cases
    are more accurate with underflow precaution.  (Reported by Francisco Vera Alcivar in PR#18072.)</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635163200">- repaired https://bugzilla.suse.com/show_bug.cgi?id=1191380
  (rpmacros now go to rpmmacrodir)
- minor clean-ups in spec file</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635768000">- CHANGES IN R 4.1.2:
  C-LEVEL FACILITIES:
  * The workaround in headers R.h and Rmath.h (using namespace std;)
    for the Oracle Developer Studio compiler is no longer needed now
    C++11 is required so has been removed.  A couple more usages of
    log() (which should have been std::log()) with an int argument
    are reported on Solaris.
  * The undocumented limit of 4095 bytes on messages from the
    S-compatibility macros PROBLEM and MESSAGE is now documented and
    longer messages will be silently truncated rather than
    potentially causing segfaults.
  * If the R_NO_SEGV_HANDLER environment variable is non-empty, the
    signal handler for SEGV/ILL/BUS signals (which offers recovery
    user interface) is not set. This allows more reliable debugging
    of crashes that involve the console.
  DEPRECATED AND DEFUNCT:
  * The legacy S-compatibility macros PROBLEM, MESSAGE, ERROR, WARN,
    WARNING, RECOVER, ... are deprecated and will be hidden in R
    4.2.0. R's native interface of Rf_error and Rf_warning has long
    been preferred.
  BUG FIXES:
  * .mapply(F, dots, .) no longer segfaults when dots is not a list
    and uses match.fun(F) as always documented; reported by Andrew
    Simmons in PR#18164.
  * hist(&lt;Date&gt;, ...) and hist(&lt;POSIXt&gt;, ...)  no longer pass
    arguments for rect() (such as col and density) to axis().
    (Thanks to Sebastian Meyer's PR#18171.)
  * \Sexpr{ch} now preserves Encoding(ch). (Thanks to report and
    patch by Jeroen Ooms in PR#18152.)
  * Setting the RNG to "Marsaglia-Multicarry" e.g., by RNGkind(), now
    warns in more places, thanks to Andr'e Gillibert's report and
    patch in PR#18168.
  * gray(numeric(), alpha=1/2) no longer segfaults, fixing PR#18183,
    reported by Till Krenz.
  * Fixed dnbinom(x, size=&lt;very_small&gt;, .., log=TRUE) regression,
    reported by Martin Morgan.
  * as.Date.POSIXlt(x) now keeps names(x), thanks to Davis Vaughan's
    report and patch in PR#18188.
  * model.response() now strips an "AsIs" class typically, thanks to
    Duncan Murdoch's report and other discussants in PR#18190.
  * try() is considerably faster in case of an error and long call,
    as e.g., from some do.call().  Thanks to Alexander Kaever's
    suggestion posted to R-devel.
  * qqline(y = &lt;object&gt;) such as y=I(.), now works, see also
    PR#18190.
  * Non-integer mgp par() settings are now handled correctly in
    axis() and mtext(), thanks to Mikael Jagan and Duncan Murdoch's
    report and suggestion in PR#18194.
  * formatC(x) returns length zero character() now, rather than ""
    when x is of length zero, as documented, thanks to Davis
    Vaughan's post to R-devel.
  * removeSource(fn) now retains (other) attributes(fn).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1647000000">- CHANGES IN R 4.1.3:
  NEW FEATURES:
  * The default version of Bioconductor has been changed to 3.14.
    (This is used by setRepositories and the menus in GUIs.)
  UTILITIES:
  * R CMD check --as-cran has a workaround for a bug in versions of
    file up to at least 5.41 which mis-identify DBF files last
    changed in 2022 as executables.
  C-LEVEL FACILITIES:
  * The legacy S-compatibility macros SINGLE_* in R_ext/Constants.h
    (included by R.h) are deprecated and will be removed in R 4.2.0.
  BUG FIXES:
  * Initialization of self-starting nls() models with initialization
    functions following the pre-R-4.1.0 API (without the ...
    argument) works again for now, with a deprecation warning.
  * Fixed quoting of ~autodetect~ in Java setting defaults to avoid
    inadvertent user lookup due to leading ~, reported in PR#18231 by
    Harold Gutch.
  * substr(., start, stop) &lt;- v now treats _negative_ stop values
    correctly.  Reported with a patch in PR#18228 by Brodie Gaslam.
  * Subscripting an array x without dimnames by a
    length(dim(x))-column character matrix gave "random" non-sense,
    now an error; reported in PR#18244 by Mikael Jagan.
  * ...names() now matches names(list(...)) closely, fixing PR#18247.
  * all.equal(*, scale = s) now works as intended when length(s) &gt; 1,
    partly thanks to Michael Chirico's PR#18272.
  * print(x) for long vectors x now also works for named atomic
    vectors or lists and prints the correct number when reaching the
    getOption("max.print") limit; partly thanks to a report and
    proposal by Hugh Parsonage to the R-devel list.
  * all.equal(&lt;selfStart&gt;, *) no longer signals a deprecation
    warning.
  * reformulate(*, response=r) gives a helpful error message now when
    length(r) &gt; 1, thanks to Bill Dunlap's PR#18281.
  * Modifying globalCallingHandlers inside withCallingHandlers() now
    works or fails correctly, thanks to Henrik Bengtsson's PR#18257.
  * hist(&lt;Date&gt;, breaks = "days") and hist(&lt;POSIXt&gt;, breaks = "secs")
    no longer fail for inputs of length 1.
  * qbeta(.001, .9, .009) and similar cases now converge correctly
    thanks to Ben Bolker's report in PR#17746.
  * window(x, start, end) no longer wrongly signals "'start' cannot
    be after 'end'", fixing PR#17527 and PR#18291.
  * data() now checks that its (rarely used) list argument is a
    character vector - a couple of packages passed other types and
    gave incorrect results.
  * which() now checks its arr.ind argument is TRUE rather coercing
    to logical and taking the first element - which gave incorrect
    results in package code.
  * model.weights() and model.offset() more carefully extract their
    model components, thanks to Ben Bolker and Tim Taylor's R-devel
    post.
  * list.files(recursive = TRUE) now shows all broken symlinks
    (previously, some of them may have been omitted, PR#18296).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1650628800">- CHANGES IN R 4.2.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * The formula method of aggregate() now matches the generic in
    naming its first argument x (resolving PR#18299 by Thomas
    Soeiro).
    This means that calling aggregate() with a formula as a named
    first argument requires name formula in earlier versions of R and
    name x now, so portable code should not name the argument (code
    in many packages did).
  * Calling &amp;&amp; or || with either argument of length greater than one
    now gives a warning (which it is intended will become an error).
  * Calling if() or while() with a condition of length greater than
    one gives an error rather than a warning.  Consequently,
    environment variable _R_CHECK_LENGTH_1_CONDITION_ no longer has
    any effect.
  * Windows users should consult the WINDOWS section below for some
    profound changes including
  * Support for 32-bit builds has been dropped.
  * UTF-8 locales are used where available.
  * The default locations for the R installation and personal
    library folder have been changed.
    Thanks to Tomas Kalibera for months of work on the Windows port
    for this release.
  NEW FEATURES:
  * matrix(x, n, m) now warns in more cases where length(x) differs
    from n * m, as suggested by Abby Spurdle and Wolfgang Huber in
    Feb 2021 on the R-devel mailing list.
    This warning can be turned into an error by setting environment
    variable _R_CHECK_MATRIX_DATA_ to TRUE: R CMD check --as-cran
    does so unless it is already set.
  * Function file_test() in package utils gains tests for symlinks,
    readability and writability.
  * capabilities("libxml") is now false.
    The description of capabilities("http/ftp") now reflects that it
    refers to the default method, no longer the internal one.
  * simplify2array() gains an except argument for controlling the
    exceptions used by sapply().
  * Environment variables R_LIBS_USER and R_LIBS_SITE are both now
    set to the R system default if unset or empty, and can be set to
    NULL to indicate an empty list of user or site library
    directories.
  * The warning for axis()(-like) calls in cases of relatively small
    ranges (typically in log-scale situations) is slightly improved
    _and_ suppressed from explicit calls to .axisPars() as has always
    been the intention.
  * The contrasts setter function `contrasts&lt;-` gains an explicit
    default how.many = NULL rather than just using missing(how.many).
  * grid.pretty() gains a new optional argument n = 5.
  * There is a new function .pretty() with option bounds as a
    technical-utility version of pretty().  It and pretty() gain a
    new argument f.min with a better than back-compatible default.
  * Function grDevices::axisTicks() and related functions such as
    graphics::axis() work better, notably for the log scale; partly
    because of the pretty() improvements, but also because care is
    taken e.g., when ylim is finite but diff(ylim) is infinite.
  * nclass.FD() gains a digits option.
  * The R Mathlib internal C function bd0() (called indirectly from a
    dozen probability density and distribution functions such as
    dpois(), dbinom(), dgamma(), pgamma() _etc_) has been
    complemented by a more sophisticated and (mostly) more accurate C
    function ebd0(), currently called only by internal dpois_raw()
    improving accuracy for R level dpois() and potentially others
    calling it such as dnbinom(), dgamma() or pgamma().  (Thanks to
    Morten Welinder's PR#15628.)
  * write.ftable() gains sep = " " argument as suggested by Thomas
    Soeiro.
  * The names of the locale categories supported by R's
    Sys.getlocale() and Sys.setlocale() are now provided by variable
    .LC.categories in the base namespace.
  * The Date and POSIXt methods for hist() and the histogram method
    for plot() now also use the new default col = "lightgray" in
    consistency with the corresponding change to hist()'s default for
    R 4.0.0.
  * hist.default() gains new fuzz argument, and the histogram plot
    method no longer uses fractional axis ticks when displaying
    counts ("Frequency").
  * mapply() and hence Map() now also obey the "max-or-0-if-any"
    recycling rule, such that, e.g., Map(`+`, 1:3, 1[0]) is valid
    now.
  * as.character(&lt;obj&gt;) for "hexmode" or "octmode" objects now
    fulfils the important basic rule as.character(x)[j] ===
    as.character(x[j]).
  * The set utility functions, notably intersect() have been tweaked
    to be more consistent and symmetric in their two set arguments,
    also preserving a common mode.
  * substr(ch, start,end) &lt;- new now e.g., preserves names(ch); ditto
    for substring(), thanks to a patch from Brodie Gaslam.
  * plot(&lt;lm&gt;) gains a extend.ylim.f argument, in partial response to
    PR#15285; further PR#17784 is fixed thanks to several
    contributors and a patch by Elin Waring.  The Cook's dist
    contours get customizable via cook.col and cook.lty with a
    different default color and their legend is nicer by default and
    customizable via cook.legendChanges.
  * Attempting to subset an object that is not subsettable now
    signals an error of class notSubsettableError. The
    non-subsettable object is contained in the object field of the
    error condition.
  * Subscript-out-of-bounds errors are now signaled as errors of
    class subscriptOutOfBoundsError.
  * Stack-overflow errors are now signaled as errors inheriting from
    class stackOverflowError. See ?stackOverflowError for more
    details.
  * New partly experimental Sys.setLanguage() utility, solving the
    main problem of PR#18055.
  * gettext() and gettextf() get a new option trim = TRUE which when
    set to false allows translations for strings such as "Execution
    halted\n" typical for C code.
  * An experimental implementation of hash tables is now available.
    See ?hashtab for more details.
  * identical() gains a extptr.as.ref argument for requesting that
    external pointer objects be compared as reference objects.
  * reorder() gets an argument decreasing which it passes to sort()
    for level creation; based on the wish and patch by Thomas Soeiro
    in PR#18243.
  * as.vector() gains a data.frame method which returns a simple
    named list, also clearing a long standing 'FIXME' to enable
    as.vector(&lt;data.frame&gt;, mode="list").  This breaks code relying
    on as.vector(&lt;data.frame&gt;) to return the unchanged data frame.
  * legend() is now vectorized for arguments cex, x.intersp, and
    text.width.  The latter can now also be specified as a vector
    (one element for each column of the legend) or as NA for
    computing a proper column wise maximum value of strwidth(legend).
    The argument y.intersp can be specified as a vector with one
    entry for each row of the legend.
    legend() also gains new arguments title.cex and title.font.
    Thanks to Swetlana Herbrandt.
  * Deparsing no longer remaps attribute names dim, dimnames, levels,
    names and tsp to historical S-compatible names (which structure()
    maps back).
  * sample() and sample.int() have additional sanity checks on their
    size and n arguments.
    all.equal.numeric() gains a sanity check on its tolerance
    argument - calling all.equal(a, b, c) for three numeric vectors
    is a surprisingly common error.
    mean(na.rm =), rank(na.last =), barplot(legend.text =),
    boxplot(), contour(drawlabels =), polygon(border =) and
    methods::is(class2 =) have more robust sanity checks on their
    arguments.
    R CMD Rd2pdf (used by R CMD check) has a more robust sanity check
    on the format of \alias{} commands.
  * psigamma(x, deriv) for negative x now also works for deriv = 4
    and 5; their underlying C level dpsifn() is documented in
    'Writing R Extensions'.
  * The HTML help system now uses HTML5 (wish of PR#18149).
  * ks.test() now provides exact p-values also with ties and MC
    p-values in the two-sample (Smirnov) case.  By Torsten Hothorn.
  * ks.test() gains a formula interface, with y ~ 1 for the
    one-sample (Kolmogorov) test and y ~ group for the two-sample
    (Smirnov) test.  Contributed by Torsten Hothorn.
  * The return value from ks.test() now has class c("ks.test",
    "htest") - packages using try() need to take care to use
    inherits() and not == on the class.
  * New functions psmirnov(), qsmirnov() and rsmirnov() in package
    stats implementing the asymptotic and exact distributions of the
    two-sample Smirnov statistic.
  * iconv() now allows sub = "c99" to use C99-style escapes for UTF-8
    inputs which cannot be converted to encoding to.
  * In a forward pipe |&gt; expression it is now possible to use a named
    argument with the placeholder _ in the rhs call to specify where
    the lhs is to be inserted.  The placeholder can only appear once
    on the rhs.
  * The included LAPACK sources have been updated to version 3.10.0,
    except for the four Fortran 77 routines which 3.10.0 has
    re-implemented in Fortran 90 (where the older versions have been
    retained as the R build process does not support Fortran 90).
  * path.expand() and most other uses of tilde expansion now warn if
    a path would be too long if expanded.  (An exception is
    file.exists(), which silently returns false.)
  * trunc(&lt;Date&gt;, *) now supports units = "months" or "years" for
    consistency with the POSIXt method, thanks to Dirk Eddelbuettel's
    proposal in PR#18099.
  * list2DF() now checks that its arguments are of the same length,
    rather than use recycling.
  * The HTML help system has several new features: LaTeX-like math
    can be typeset using either KaTeX or MathJax, usage and example
    code is highlighted using Prism, and for dynamic help the output
    of examples and demos can be shown within the browser if the
    knitr package is installed. These features can be disabled by
    setting the environment variable _R_HELP_ENABLE_ENHANCED_HTML_ to
    a false value.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 15
    and so packages that provide graphics devices should be
    reinstalled.
  * The grid package now allows the user to specify a "vector" of
    pattern fills.  The fill argument to gpar() accepts a list of
    gradients and/or patterns and the functions linearGradient(),
    radialGradient(), and pattern() have a new group argument.
    Points grobs (data symbols) can now also have a pattern fill.
    The grobCoords() function now returns a more informative and
    complex result.
  * The grid package has new functions for drawing isolated groups:
    grid.group(), grid.define(), and grid.use().  These functions add
    compositing operators and affine transformations to R's graphics
    capabilities.
    The grid package also has new functions for stroking and filling
    paths: grid.stroke(), grid.fill(), and grid.fillStroke().
    A new function as.path() allows the user to specify the fill rule
    for a path that is to be used for clipping, stroking, or filling;
    available options are "winding" and "evenodd".  A new function
    as.mask() allows the user to specify the type of a mask;
    available options are "alpha" and "luminance".
    These new features are only supported so far (at most) on the
    Cairo-based graphics devices and on the pdf() device.
  * dev.capabilities() reports on device support for the new
    features.
  * par() now warns about unnamed non-character arguments to prevent
    misuse such as {usr &lt;- par("usr"); par(usr)}.
  INSTALLATION:
  * Facilities for accessing ftp:// sites are no longer tested
    (except _pro tem_ for curlGetHeaders()) as modern browsers have
    removed support.
  * R can now be built with DEFS = -DSTRICT_R_HEADERS .
  PACKAGE INSTALLATION:
  * R CMD INSTALL no longer tangles vignettes. This completes an R
    CMD build change in R 3.0.0 and affects packages built before R
    3.0.2. Such packages should be re-made with R CMD build to have
    the tangled R code of vignettes shipped with the tarball.
  * USE_FC_LEN_T will become the default: this uses the correct
    prototypes for Fortran BLAS/LAPACK routines called from C/C++,
    and requires adjustment of most such calls - see 'Writing R
    Extensions' SS6.6.2.  (This has been supported since R 3.6.2.)
  * Package installation speed for packages installed with
    keep.source has been improved. This resolve the issue reported by
    Ofek Shilon in PR#18236.
  UTILITIES:
  * R CMD check can optionally report files/directories left behind
    in home, /tmp (even though TMPDIR is set) and other directories.
    See the "R Internals" manual for details.
  * R CMD check now reports byte-compilation errors during
    installation.  These are not usually fatal but may result in
    parts of the package not being byte-compiled.
  * _R_CHECK_DEPENDS_ONLY_ can be applied selectively to examples,
    tests and/or vignettes in R CMD check: see the "R Internals"
    manual.
  * _R_CHECK_SRC_MINUS_W_IMPLICIT_ now defaults to true: recent
    versions of Apple clang on macOS have made implicit function
    declarations in C into a compilation error.
  * R CMD check --as-cran makes use of the environment variable
    AUTORECONF.  See the "R Internals" manual SS8 for further details.
  * R CMD check --use-valgrind also uses valgrind when re-building
    vignettes as some non-Sweave vignettes unhelpfully comment out
    all their code when R CMD check runs vignettes.
  * Errors in re-building vignettes (unless there are LaTeX errors)
    are reported by R CMD check as ERROR rather than WARNING when
    running vignettes has been skipped (as it frequently is in CRAN
    checks and by --as-cran).
  * R CMD Rd2pdf gains a --quiet option that is used by R CMD build
    when building the PDF package manual.
  * R CMD Rd2pdf now always runs LaTeX in batch mode, consistent with
    Texinfo &gt;= 6.7. The --batch option is ignored.
  * R CMD build and R CMD check now include the Rd file name and line
    numbers in the error message of an \Sexpr evaluation failure.
  * For packages using the \doi Rd macro (now an install-time \Sexpr)
    but no other dynamic Rd content, R CMD build now produces a
    smaller tarball and is considerably faster - skipping temporary
    package installation.
  C-LEVEL FACILITIES:
  * The non-API header R_ext/R-ftp-http.h is no longer provided, as
    the entry points it covered are now all defunct.
  * A number of non-API declarations and macro definitions have been
    moved from the installed header Rinternals.h to the internal
    header Defn.h. Packages that only use entry points and
    definitions documented to be part of the API as specified in
    'Writing R Extensions' SS6 should not be affected.
  * The macro USE_RINTERNALS no longer has any effect when compiling
    package code.  Packages which also use R_NO_REMAP will need to
    ensure that the remapped names are used for calls to API
    functions that were formerly also made available as macros.
  * The deprecated legacy S-compatibility macros PROBLEM, MESSAGE,
    ERROR, WARN, WARNING, RECOVER, ... are no longer defined in
    R_exts/RS.h (included by R.h).  Replace these by calls to
    Rf_error and Rf_warning (defined in header R_ext/Error.h included
    by R.h).
    Header R_ext/RS.h no longer includes R_ext/Error.h.
  * Header R_ext/Constants.h (included by R.h) when included from C++
    now includes the C++ header cfloat rather than the C header
    float.h (now possible as C++11 is required).
  * The legacy S-compatibility macros DOUBLE_* in R_ext/Constants.h
    (included by R.h) are deprecated.
  * The deprecated S-compatibility macros SINGLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * R_Calloc, R_Free and R_Realloc are preferred to their unprefixed
    forms and error messages now use the prefix. These forms were
    introduced in R 3.4.0 and are available even when
    STRICT_R_HEADERS is defined.
  * rmultinom has been documented in 'Writing R Extensions' SS6 so is
    now part of the R API.
  * Similarly, Rtanpi, called from R level tanpi() is now part of the
    R API.
  * The long-deprecated, undocumented and non-API entry point call_R
    is no longer declared in R_ext/RS.h (included by R.h).
  * The header S.h which has been unsupported since Jan 2016 has been
    removed.  Use R.h instead.
  DEPRECATED AND DEFUNCT:
  * The (non-default and deprecated) method = "internal" for
    download.file() and url() no longer supports http:// nor ftp://
    URIs.  (It is used only for file:// URIs.)
    On Windows, download.file(method = "wininet") no longer supports
    ftp:// URIs.  (It is no longer the default method, which is
    "libcurl" and does.)
    On Windows, the deprecated method = "wininet" now gives a warning
    for http:// and https:// URIs for both download.file() and url().
    (It is no longer the default method.)
  * On Windows, the command-line option --max-mem-size and
    environment variable R_MAX_MEM_SIZE are defunct.  The memory
    allocation limit was important for 32-bit builds, but these are
    no longer supported.
  * default.stringsAsFactors() is now formally deprecated, where that
    was only mentioned on its regular help page, previously.  So it
    now gives a warning if called.
  * unix.time() is defunct now; it had been deprecated since R 3.4.0.
  BUG FIXES:
  * Setting digits = 0 in format(), print.default() (and hence
    typically print()) or options() is again invalid.  Its behaviour
    was platform-dependent, and it is unclear what "zero significant
    digits" should mean (PR#18098).
  * Messages from C code in the cairo section of package grDevices
    are now also offered for translation, thanks to Michael Chirico's
    PR#18123.
  * mean(x) with finite x now is finite also without "long.double"
    capability.
  * R CMD Rd2pdf no longer leaves an empty build directory behind
    when it aborts due to an already existing output file.  (Thanks
    to Sebastian Meyer's PR#18141.)
  * density(x, weights = w, na.rm = TRUE) when anyNA(x) is true, now
    removes weights "in parallel" to x, fixing PR#18151, reported by
    Matthias Gondan.  Additionally, it gets a subdensity option.
  * Conversion of \Sexpr[]{&lt;expR&gt;} to LaTeX or HTML no longer
    produces long blocks of empty lines when &lt;expR&gt; itself contains
    several lines all producing empty output.  Thanks to a report and
    patch by Ivan Krylov posted to R-devel.
  * R CMD build no longer fails if a package vignette uses child
    documents and inst/doc exists.  (Thanks to Sebastian Meyer's
    PR#18156.)
  * When an R documentation ('help' source) file man/foo.Rd in a
    package has \donttest{..} examples with a syntax error, it is now
    signalled as ERROR and with correct line numbers relating to the
  * -Ex.R file, thanks to Duncan Murdoch and Sebastian Meyer's
    reports and patch proposals in PR#17501.
  * Improved determination of the correct translation domain in
    non-base packages, addressing the combination of PR#18092 and
    PR#17998 (#c6) with reports and _augmented_ patch #2904 by
    Suharto Anggono.
    Note that "R-base" is no longer the default domain e.g., for
    top-level calls to gettext(); rather translation needs explicit
    domain = * specification in such cases.
  * identical(attrib.as.set=FALSE) now works correctly with data
    frames with default row names (Thanks to Charlie Gao's PR#18179).
  * txtProgressBar() now enforces a non-zero width for argument char,
    without which no progress can be visible.
  * dimnames(table(d)) is more consistent in the case where d is a
    list with a single component, thanks to Thomas Soeiro's report to
    R-devel.
    Further, table(d1, d2) now gives an error when d1 and d2 are data
    frames as suggested by Thomas in PR#18224.
  * Fix for drawing semi-transparent lines and fills on the native
    Windows graphics device (PR#18219 and PR#16694).  Thanks to Nick
    Ray for helpful diagnosis on Bugzilla.
  * The deparser now wraps sub-expressions such as if(A) ..  with
    parentheses when needed; thanks to Duncan Murdoch's PR#18232 and
    Lionel Henry's patches there.
  * remove.packages() no longer tries to uninstall Priority: base
    packages, thanks to a report and suggestions by Colin Fay in
    PR#18227.
  * win.metafile() now has xpinch and ypinch arguments so that the
    user can override Windows' (potentially wrong) guess at device
    dimensions.
  * x[i] and x[[i]] for non-integer i should now behave in all cases
    as always documented: the index used is equivalent to
    as.integer(i) unless that would overflow where trunc(i) is used
    instead; thanks to Suharto Anggono's report and patch proposals
    in PR#17977.
  * asOneSidedFormula() now associates the resulting formula with the
    global environment rather than the evaluation environment created
    for the call.
  * &lt;bibentry&gt;$name now matches the field name case-insensitively,
    consistent with bibentry() creation and the replacement method.
  * cbind() failed to detect some length mismatches with a mixture of
    time-series and non-time-series inputs.
  * The default LaTeX style file Sweave.sty used by the RweaveLatex
    driver no longer loads the obsolete ae package; thanks to a
    report by Thomas Soeiro in PR#18271.  Furthermore, it now skips
    \usepackage[T1]{fontenc} for engines other than pdfTeX (if
    detected) or if the new [nofontenc] option is used.
  * smooth.spline() now stores its logical cv argument more safely,
    fixing a rare bug when printing, and also stores n.
  * smooth.spline(x,y,*) now computes the cv.crit statistic
    correctly, also when is.unsorted(x), fixing PR#18294.
  * The data.frame method of rbind() now warns when binding
    not-wholly-recycling vectors, by analogy to the default method
    (for matrices).
  * setAs() finds the correct class for name to when multiple
    packages define a class with that name. Thanks to Gabor Csardi
    for the report.
  * Fix for detaching a package when two classes of the same name are
    present in method signatures for the same generic. Thanks to
    Gabor Csardi for the report.
  * match.arg("", c("", "a", "B")) gives a better error message, in
    part from PR#17959, thanks to Elin Waring.
  * R CMD Sweave --clean no longer removes pre-existing files or
    subdirectories (PR#18242).
  * The quartz() device no longer splits polylines into subpaths.
    That has caused narrowly-spaced lines with many points to always
    look solid even when dashed line type was used due to dash phase
    restarts.
  * Deparsing constructs such as quote(1 + `!`(2) + 3) works again as
    before R 3.5.0, thanks to the report and patch in PR#18284 by
    Suharto Anggono.
  * as.list(f) for a factor f now keeps names(f), fixing PR#18309.
  * qbeta(.001, .9, .009) and analogous qf() calls now return a
    correct value instead of NaN or wrongly 1, all with a warning;
    thanks to the report by Ludger Goeminne in PR#18302.
  * plot.lm() failed to produce the plot of residuals vs.  factor
    levels (i.e., which=5 when leverages are constant) for models
    with character predictors (PR#17840).
  * interaction.plot(..., xtick = TRUE) misplaced the x-axis line
    (PR#18305).
  * Not strictly fixing a bug, format()ing and print()ing of
    non-finite Date and POSIXt values NaN and +/-Inf no longer show
    as NA but the respective string, e.g., Inf, for consistency with
    numeric vector's behaviour, fulfilling the wish of PR#18308.
  * R CMD check no longer runs test scripts generated from
    corresponding .Rin files twice and now signals an ERROR if
    processing an .Rin script fails.
  * tools::Rd2txt() used for plain-text help pages now renders \hrefs
    (if tools::Rd2txt_options(showURLs = TRUE)) and \urls with
    percent-encoding and standards-compliant delimiting style (angle
    brackets and no URL: prefix).  \email is now rendered with a
    mailto: prefix.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1655985600">- CHANGES IN R 4.2.1:
  NEW FEATURES:
  * New function utils::findCRANmirror() to find out if a CRAN mirror
    has been selected, otherwise fallback to the main site.  This
    behaves in the same way as tools::CRAN_package_db() and is
    intended for packages wishing to access CRAN for purposes other
    than installing packages.
    The need for this was shown by a day when the main CRAN website
    was offline and a dozen or so packages which had its URL
    hardcoded failed their checks.
  INSTALLATION on a UNIX-ALIKE:
  * The libraries searched for by --with-blas (without a value) now
    include BLIS (after OpenBLAS but before ATLAS).  And on macOS,
    the Accelerate framework (after ATLAS).  (This is patterned after
    the AX_BLAS macro from the Autoconf Archive.)
  * The included LAPACK sources have been updated to 3.10.1.
  UTILITIES:
  * The (full path to) the command tidy to be used for HTML
    validation can be set by environment variable R_TIDYCMD.
  * Setting environment variable _R_CHECK_RD_VALIDATE_RD2HTML_ to a
    false value will override R CMD check --as-cran and turn off HTML
    validation.  This provides a way to circumvent a problematic
    tidy.
    The 2006 version that ships with macOS is always skipped.
  C-LEVEL FACILITIES:
  * The undocumented legacy declarations of Sint, Sfloat, SINT_MAX
    and SINT_MIN in header R.h are deprecated.
  BUG FIXES:
  * fisher.test(d) no longer segfaults for "large" d; fixing PR#18336
    by preventing/detecting an integer overflow reliably.
  * tar(., files=*) now produces correctly the warning about invalid
    uid or gid of files, fixing PR#18344, reported by Martin Morgan.
  * tk_choose.files() with multi = FALSE misbehaved on paths
    containing spaces (PR#18334) (regression introduced in R 4.0.0).
  * sort(x, partial = ind, *) now works correctly notably for the
    non-default na.last = FALSE or TRUE, fixing PR#18335 reported by
    James Edwards.
  * Environment variable _R_CHECK_XREFS_REPOSITORIES_ is only used
    for checking .Rd cross-references in R CMD check (as documented)
    and not for other uses looking for a CRAN mirror.
  * The search for a CRAN mirror when checking packages now uses
    getOption("repos") if that specifies a CRAN mirror, even when it
    does not also specify all three Bioconductor repositories (as was
    previously required).
  * The HTML code generated by tools::Rd2HTML() has been improved to
    pass tidy 5.8.0.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1667217600">- CHANGES IN R 4.2.2:
  NEW FEATURES:
  * tools::Rdiff(useDiff = TRUE) checks for the presence of an
    external diff command and switches to useDiff = FALSE if none is
    found.  This allows R CMD Rdiff to always work.
  * On Windows, environment variable R_LIBCURL_SSL_REVOKE_BEST_EFFORT
    can be used to switch to only 'best-effort' SSL certificate
    revocation checks with the default "libcurl" download method.
    This reduces security, but may be needed for downloads to work
    with MITM proxies (PR#18379).
  * (macOS) The run-time check for libraries from XQuartz for X11 and
    Tcl/Tk no longer uses otool from the Apple Developer Tools
    (PR#18400).
  * The LaTeX style for producing the PDF manuals, Rd.sty, now loads
    the standard amsmath, amsfonts and amssymb packages for greater
    coverage of math commands in the Rd \eqn and \deqn macros.  The
    \mathscr LaTeX command is also provided (via the mathrsfs
    package, if available, or the amsfonts bundle otherwise),
    fulfilling the wish of PR#18398.
  * (Windows) The default format of readClipboard() and
    writeClipboard() has been changed to 13 (CF_UNICODETEXT).
  INSTALLATION on a UNIX-ALIKE:
  * The PDF manuals (if built) can be compacted by the new target
    make compact-pdf (at the top level or in directory doc/manual).
  * There is now configure support for LLVM clang 15 on Linux, which
    defaults to position-independent (PIE) executables whereas
    gfortran does not.
  * Many small changes to ease compilation (and suppress warnings)
    with LLVM clang 15.
  BUG FIXES:
  * Rscript -e would fail if stdin were closed (Reported by Henrik
    Bengtsson.)
  * qt(*, log.p=TRUE) in outer tails no longer produces NaN in its
    final steps, thus fixing PR#18360.
  * tools::Rd2latex() now escapes hashes and ampersands when writing
    URLs, fixing LaTeX errors with such URLs in \tabular.
  * When isGeneric(f, fdef=*) is used with mismatching names, the
    warning is better understandable; reported (with fix) in PR#18370
    by Gabe Becker.
  * poly(x, n) now works again (and is now documented) when x is a
    "Date" or "POSIXct" object, or of another class while fulfilling
    mode(x) == "numeric".  This also enables poly(x, *, raw=TRUE) for
    such variables.  Reported by Michael Chirico to R-devel.
  * write.table(), write.csv() and write.csv2() restore their
    numerical precision (internal equivalent of digits = 15) after an
    interrupt (PR#18384).
  * One can now read also byte FF from a clipboard connection
    (PR#18385).
  * source("") and source(character()) now give more helpful error
    messages.
  * R CMD check --as-cran set _R_CHECK_TIMINGS_ too late to have the
    intended effect.
  * as.POSIXlt(x) now also works with very large dates x, fixing
    PR#18401 reported by Hannes M"uhleisen.
  * Files can now be extracted even from very large zip archives
    (PR#18390, thanks to Martin Jakt).
  * Non-finite objects of class "POSIXlt" are now correctly coerced
    to classes "Date" and "POSIXct"; following up on the extension to
    format() them correctly.
  * Added methods for is.finite(), is.infinite() and is.nan() for
    "POSIXlt" date-time objects.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1678881600">- CHANGES IN R 4.2.3:
  C-LEVEL FACILITIES:
  * The definition of DL_FUNC in R_ext/Rdynload.h has been changed to
    be fully C-compliant.  This means that functions loaded _via_ for
    example R_GetCCallable need to be cast to an appropriate type if
    they have any arguments.
  * .Machine has a new element sizeof.time_t to identify old systems
    with a 32-bit type and hence a limited range of date-times (and
    limited support for dates millions of years from present).
  PACKAGE INSTALLATION:
  * (Windows) The default C++ standard had accidentally been left at
    C++11 when it was changed to C++14 on Unix.
  BUG FIXES:
  * As "POSIXlt" objects may be "partially filled" and their list
    components meant to be recycled, length() now is the length of
    the longest component.
  * as.POSIXlt.Date() could underflow for dates in the far past (more
    than half a million years BCE).
  * as.Date.POSIXlt(x) would return "1970-01-01" instead of NA in R
    4.2.2, e.g., for
    x &lt;- as.POSIXlt(c("2019-01-30","2001-1-1"))
    x$mon &lt;- c(0L, NA); as.Date(x)
  * R CMD check failed to apply enabled _R_CHECK_SUGGESTS_ONLY_ to
    examples and vignettes (regression in R 4.2.0).
  * R CMD check did not re-build vignettes in separate processes by
    default (regression in R 4.2.0).
  * Running examples from HTML documentation now restores previous
    knitr settings and options (PR#18420).
  * Quartz: fonts are now located using Core Graphics API instead of
    deprecated ATS which is no longer supported in the macOS 13 SDK
    (PR#18426).  This also addresses an issue where the currently
    used font in the Quartz device context was not correctly
    retained.
  * (Windows) Math symbols in text drawing functions are again
    rendered correctly (PR#18440).  This fixes a regression in R
    4.2.1 caused by a fix in PR#18382 which uncovered an issue in
    GraphApp due to which the symbol charset was not used with TT
    Symbol font face.
  * (Windows) Installing a package with a src/Makefile.{win,ucrt}
    file includes ~/.R/Makevars.win64 in the search for user
    makevars, as documented in "R Installation and Administration"
    and done for packages with a src/Makevars.{win,ucrt} file.
  * format(&lt;POSIXlt_w/_unbalanced_sec&gt;, "....%OS&lt;n&gt;") with n &gt; 0 no
    longer accidentally uses the unbalanced seconds, thanks to
    Suharto Anggono's report (including patch) in PR#18448.
  * solve.default(a, b) works around issues with some versions of
    LAPACK when a contains NA or NaN values.
  * When UseMethod() cannot dispatch, it no longer segfaults
    producing the error message in case of a long class(), thanks to
    Joris Vankerschaver's report (including patch) in PR#18447.
  * When example(foo, ..) produces graphics on an interactive device
    it needs to open itself, it now leaves devAskNewPage() unchanged
    even when it was FALSE, thus fixing a 14 years old '&lt;FIXME&gt;'.
  * packageDescription() again catches errors from encoding
    conversions. This also fixes broken packageVersion() in C locale
    on systems where iconv does not support transliteration.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1681128000">- add patch to build with libcurl &gt;= 8</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1682078400">- CHANGES IN R 4.3.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Calling &amp;&amp; or || with LHS or (if evaluated) RHS of length greater
    than one is now always an error, with a report of the form
    'length = 4' in coercion to 'logical(1)'
    Environment variable _R_CHECK_LENGTH_1_LOGIC2_ no longer has any
    effect.
  NEW FEATURES:
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.10.1.  (This caused some platform-dependent
    changes to package check output.)  And then to the sources from
    LAPACK version 3.11.0 (with changes only to double complex
    subroutines).
  * The included LAPACK sources have been updated to include the four
    Fortran 90 routines rather than their Fortran 77 predecessors.
    This may give some different signs in SVDs or
    eigendecompositions..  (This completes the transition to LAPACK
    3.10.x begun in R 4.2.0.)
  * The LAPACK sources have been updated to version 3.11.0.  (No new
    subroutines have been added, so this almost entirely bug fixes:
    Those fixes do affect some computations with NaNs, including R's
    NA.)
  * The parser now signals _classed_ errors, notably in case of the
    pipe operator |&gt;.  The error object and message now give line and
    column numbers, mostly as proposed and provided by Duncan Murdoch
    in PR#18328.
  * toeplitz() is now generalized for asymmetric cases, with a
    toeplitz2() variant.
  * xy.coords() and xyz.coords() and consequently, e.g., plot(x,y,
    log = "y") now signal a _classed_ warning about negative values
    of y (where log(.) is NA).  Such a warning can be specifically
    suppressed or caught otherwise.
  * Regular expression functions now check more thoroughly whether
    their inputs are valid strings (in their encoding, e.g. in
    UTF-8).
  * The performance of grep(), sub(), gsub() and strsplit() has been
    improved, particularly with perl = TRUE and fixed = TRUE.  Use of
    useBytes = TRUE for performance reasons should no longer be
    needed and is discouraged: it may lead to incorrect results.
  * apropos() gains an argument dot_internals which is used by the
    completion (help(rcompgen)) engine to also see base internals
    such as .POSIXct().
  * Support in tools::Rdiff() for comparing uncompressed PDF files is
    further reduced - see its help page.
  * qqplot(x, y, ...) gains conf.level and conf.args arguments for
    computing and plotting a confidence band for the treatment
    function transforming the distribution of x into the distribution
    of y (Switzer, 1976, _Biometrika_). Contributed by Torsten
    Hothorn.
  * Performance of package_dependencies() has been improved for cases
    when the number of dependencies is large.
  * Strings newly created by gsub(), sub() and strsplit(), when any
    of the inputs is marked as "bytes", are also marked as "bytes".
    This reduces the risk of creating invalid strings and accidental
    substitution of bytes deemed invalid.
  * Support for readLines(encoding = "bytes") has been added to allow
    processing special text files byte-by-byte, without creating
    invalid strings.
  * iconv(from = "") now takes into account any declared encoding of
    the input elements and uses it in preference to the native
    encoding.  This reduces the risk of accidental creation of
    invalid strings, particularly when different elements of the
    input have different encoding (including "bytes").
  * Package repositories in getOption("repos") are now initialized
    from the repositories file when utils is loaded (if not already
    set, e.g., in .Rprofile).  (From a report and patch proposal by
    Gabriel Becker in PR#18405.)
  * compactPDF() gets a verbose option.
  * type.convert() and hence read.table() get new option tryLogical =
    TRUE with back compatible default.  When set to false, converts
    "F" or "T" columns to character.
  * Added new unit prefixes "R" and "Q" for abbreviating
    (unrealistically large) sizes beyond 10^{27} in standard = "SI",
    thanks to Henrik Bengtsson's PR#18435.
  * as.data.frame()'s default method now also works fine with atomic
    objects inheriting from classes such as "roman", "octmode" and
    "hexmode", such fulfilling the wish of PR#18421, by Benjamin
    Feakins.
  * The as.data.frame.vector() utility now errors for wrong-length
    row.names.  It warned for almost six years, with "Will be an
    error!".
  * sessionInfo() now also contains La_version() and reports codepage
    and timezone when relevant, in both print() and toLatex() methods
    which also get new option tzone for displaying timezone
    information when locale = FALSE.
  * New function R_compiled_by() reports the C and Fortran compilers
    used to build R, if known.
  * predict(&lt;lm&gt;, newdata = *) no longer unnecessarily creates an
    offset of all 0s.
  * solve() for complex inputs now uses argument tol and by default
    checks for 'computational singularity' (as it long has done for
    numeric inputs).
  * predict(&lt;rank-deficient lm&gt;, newdata=*) now obeys a new argument
    rankdeficient, with new default "warnif", warning only if there
    are non-estimable cases in newdata.  Other options include
    rankdeficient = "NA", predicting NA for non-estimable newdata
    cases.  This addresses PR#15072 by Russ Lenth and is based on his
    original proposal and discussions in PR#16158 also by David Firth
    and Elin Waring.  Still somewhat experimental.
  * Rgui console implementation now works better with the NVDA screen
    reader when the full blinking cursor is selected.  The underlying
    improvements in cursor handling may help also other screen
    readers on Windows.
  * The drop-field control in GraphApp can now be left with the TAB
    key and all controls can be navigated in the reverse order using
    the Shift+TAB key, improving accessibility of the Rgui
    configuration editor.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now fully accurate
    (instead of to "only" minimally five digits).
  * demo(error.catching) now also shows off withWarnings() and
    tryCatchWEMs().
  * As an experimental feature the placeholder _ can now also be used
    in the rhs of a forward pipe |&gt; expression as the first argument
    in an extraction call, such as _$coef. More generally, it can be
    used as the head of a chain of extractions, such as _$coef[[2]].
  * Spaces in the environment variable used to choose the R session's
    temporary directory (TMPDIR, TMP and TEMP are tried in turn) are
    now fatal.  (On Windows the 'short path' version of the path is
    tried and used if that does not contain a space.)
  * all.equal.numeric() gets a new optional switch giveErr to return
    the numeric error as attribute.  Relatedly,
    stopifnot(all.equal&lt;some&gt;(a, b, ..)) is as "smart" now, as
    stopifnot(all.equal(....)) has been already, thus allowing
    customized all.equal&lt;Some&gt;() wrappers.
  * R on Windows is now able to work with path names longer than 260
    characters when these are enabled in the system (requires at
    least Windows 10 version 1607).  Packages should be updated to
    work with long paths as well, instead of assuming PATH_MAX to be
    the maximum length.  Custom front-ends and applications embedding
    R need to update their manifests if they wish to allow this
    feature.  See
    &lt;https://blog.r-project.org/2023/03/07/path-length-limit-on-windows&gt;
    for more information.
  * 'Object not found' and 'Missing argument' errors now give a more
    accurate error context. Patch provided by Lionel Henry in
    PR#18241.
  * The @ operator is now an S3 generic. Based on contributions by
    Tomasz Kalinowski in PR#18482.
  * New generic chooseOpsMethod() provides a mechanism for objects to
    resolve cases where two suitable methods are found for an Ops
    Group Generic. This supports experimenting with alternative
    object systems. Based on contributions by Tomasz Kalinowski in
    PR#18484.
  * inherits(x, what) now accepts values other than a simple
    character vector for argument what. A new generic, nameOfClass(),
    is called to resolve the class name from what. This supports
    experimenting with alternative object systems. Based on
    contributions by Tomasz Kalinowski in PR#18485.
  * Detection of BLAS/LAPACK in use (sessionInfo()) with FlexiBLAS
    now reports the current backend.
  * The "data.frame" method for subset() now warns about extraneous
    arguments, typically catching the use of = instead of == in the
    subset expression.
  * Calling a:b when numeric a or b is longer than one may now be
    made into an error by setting environment variable
    _R_CHECK_LENGTH_COLON_ to a true value, along the proposal in
    PR#18419 by Henrik Bengtsson.
  * density(x, weights = *) now warns if automatic bandwidth
    selection happens without using weights; new optional warnWbw may
    suppress the warning.  Prompted by Christoph Dalitz' PR#18490 and
    its discussants.
  * rm(list = *) is faster and more readable thanks to Kevin Ushey's
    PR#18492.
  * The plot.lm() function no longer produces a normal Q-Q plot for
    GLMs. Instead it plots a half-normal Q-Q plot of the absolute
    value of the standardized deviance residuals.
  * The print() method for class "summary.glm" no longer shows
    summary statistics for the deviance residuals by default.  Its
    optional argument show.residuals can be used to show them if
    required.
  * The tapply() function now accepts a data frame as its X argument,
    and allows INDEX to be a formula in that case. by.data.frame()
    similarly allows INDICES to be a formula.
  * The performance of df[j] &lt;- value (including for missing j) and
    write.table(df) has been improved for data frames df with a large
    number of columns.  (Thanks to Gabriel Becker's PR#18500,
    PR#18503 and discussants, prompted by a report from Toby Dylan
    Hocking on the R-devel mailing list.)
  * The matrix multiply operator %*% is now an S3 generic, belonging
    to new group generic matrixOps.  From Tomasz Kalinowski's
    contribution in PR#18483.
  * New function array2DF() to convert arrays to data frames,
    particularly useful for the list arrays created by tapply().
  DATES and TIMES:
  * On platforms where (non-UTC) datetimes before 1902 (or before
    1900 as with system functions on recent macOS) are guessed by
    extrapolating time zones from 1902-2037, there is a warning at
    the first use of extrapolation in a session.  (As all time zones
    post 2037 are extrapolation, we do not warn on those.)
  * (Platforms using --with-internal-tzone, including Windows and by
    default macOS). How years are printed in dates or date-times can
    be controlled by environment variable R_PAD_YEARS_BY_ZERO.  The
    default remains to pad to 4 digits by zeroes, but setting value
    no gives no padding (as used by default by glibc).
  * strftime() tries harder to determine the offset for the "%z"
    format, and succeeds on the mainstream R platforms.
  * strftime() has a limit of 2048 bytes on the string produced -
    attempting to exceed this is an error.  (Previously it silently
    truncated at 255 bytes.)
  * sessionInfo() records (and by default prints) the system time
    zone as part of the locale information.  Also, the source
    (system/internal) of the date-time conversion and printing
    functions.
  * Objects of class "POSIXlt" created in this version of R always
    have 11 components: component zone is always set, and component
    gmtoff is set for times in UTC and usually set on the (almost
    all) platforms which have C-level support, otherwise is NA.
  * There are comprehensive validity checks on the structure of
    objects of class "POSIXlt" when converting (including formatting
    and printing).  (This avoids mis-conversions of hand-crafted
    objects.)
  * There is some support for using the native date-time routines on
    macOS: this is only viable on recent versions (e.g. 12.6 and 13)
    and does get wrong some historical changes (before 1900, during
    WWII).  Use of --with-internal-tzone remains the default.
  * as.POSIXct(&lt;numeric&gt;) and as.POSIXlt(.) (without specifying
    origin) now work.  So does as.Date(&lt;numeric&gt;).
  * as.Date.POSIXct(., tz) now treats several tz values, notably
    "GMT" as equivalent to "UTC", proposed and improved by Michael
    Chirico and Joshua Ulrich in PR#17674.
  * Experimental balancePOSIXlt() utility allows using "ragged" and
    or out-of-range "POSIXlt" objects more correctly, e.g., in
    subsetting and subassignments.  Such objects are now documented.
    More experimentally, a "POSIXlt" object may have an attribute
    "balanced" indicating if it is known to be filled or fully
    balanced.
  * Functions axis.Date() and axis.POSIXct() are rewritten to gain
    better default tick locations and better default formats by using
    prettyDate(). Thanks to Swetlana Herbrandt.
  * The mapping of Windows' names for time zones to IANA's 'Olson'
    names has been updated.  When ICU is available (it is by
    default), it is used to get a mapping for the current region set
    in Windows.  This can be overridden by setting environment
    variable TZ to the desired Olson name - see OlsonNames() for
    those currently available.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 16
    and so packages that provide graphics devices should be
    reinstalled.
  * The grDevices and grid packages have new functions for rendering
    typeset glyphs, primarily: grDevices::glyphInfo() and
    grid::grid.glyph().
    Rendering of typeset glyphs is only supported so far on the
    Cairo-based graphics devices and on the pdf() and quartz()
    devices.
  * The defined behaviour for "clear" and "source" compositing
    operators (via grid::grid.group()) has been changed (to align
    better with simple interpretation of original Porter-Duff
    definitions).
  * Support for gradients, patterns, clipping paths, masks, groups,
    compositing operators, and affine transformations has been added
    to the quartz() device.
  INSTALLATION on a UNIX-ALIKE:
  * A system installation of generic LAPACK 3.10.0 or later will be
    preferred to the version in the R sources.
    configure option --with-lapack=no (equivalently --without-lapack)
    forces compilation of the internal LAPACK sources.
    If --with-lapack is not specified, a system liblapack is looked
    for and used if it reports version 3.10.0 or later and does not
    contain BLAS routines.
    Packages using LAPACK will need to be reinstalled if this changes
    to using an external library.
  * On aarch64 Linux platforms using GCC, configure now defaults to
  - fPIC (instead of -fpic), as desired in PR#18326.
  * configure now checks conversion of datetimes between POSIXlt and
    POSIXct around year 2020.  Failure (which has been seen on
    platforms missing tzdata) is fatal.
  * If configure option --with-valgrind-instrumentation is given
    value 1 or 2, option --with-system-valgrind-headers is now the
    default and ignored (with a warning).  It is highly recommended
    that the system headers are installed alongside valgrind: they
    are part of its packaging on some Linux distributions and
    packaged separately (e.g. in the valgrind-devel RPM) on others.
    configure will give a warning if they are not found.
    The system headers will be required in a future release of R to
    build with valgrind instrumentation.
  * libcurl 8.x is now accepted by configure: despite a change in
    major version number it changes neither API nor ABI.
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools43, an update of the Rtools42 toolchain.  It is
    based on gcc 12 and newer versions of MinGW-W64, binutils and
    libraries.  At this time R-devel can still be built using
    Rtools42 without changes, but when R-devel is installed via the
    installer, it will by default look for Rtools43.
  * Old make targets rsync-extsoft and 32-bit ones that are no longer
    needed have been removed.
  * Default builds (including for packages) no longer select C99.
    Thus the C standard used is the default for the compiler, which
    for the toolchain in Rtools43 is C17.  (This is consistent with
    Unix builds.)
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++17 where
    available (which it is on all currently checked platforms): if
    not C++14 or C++11 is used if available otherwise C++ is not
    supported.
  * USE_FC_LEN_T is the default: this uses the correct
    (compiler-dependent) prototypes for Fortran BLAS/LAPACK routines
    called from C/C++, and requires adjustment of many such calls -
    see 'Writing R Extensions' SS6.6.1.
  * There is initial support for C++23 as several compilers are now
    supporting -std=c++23 or -std=c++2b or similar.  As for C++20,
    there no additional configure checks for C++23 features beyond a
    check that the compiler reports a __cplusplus value greater than
    that in the C++20 standard.  C++ feature tests should be used.
  * There is support for a package to indicate the version of the C
    standard which should be used to compile it, and for the
    installing user to specify this.  In most cases R defaults to the
    C compiler's default standard which is C17 (a `bug-fix' of C11) -
    earlier versions of R or compilers may have defaulted to C99.
    Current options are:
    USE_C17 Use a standard that is at most C17.  The intention is to
    allow legacy packages to still be installed when later C
    standards become the default, including packages using new
    keywords as identifiers or with K&amp;R-style function
    declarations.  This will use C17 if available, falling back
    to C11.
    USE_C90 Use the C90 (aka C89) standard.  (As that standard did
    not require compilers to identify that version, all we can
    verify is that the compiler does not claim to be using a
    later standard.  It may accept C99 features - for example
    clang accepts // to make comments.)
    USE_C99 Use the C99 standard. This should be rarely needed - it
    avoids the few new features of C11/C17 which can be useful if
    a package assumes them if C17 is specified and they are not
    implemented.
    USE_C23 Use C23 (or in future, later).  Compiler/library support
    for C23 is still being implemented, but LLVM clang from
    15.0.0 and the upcoming GCC 13 have quite extensive support.
    These can be specified as part of the SystemRequirements field in
    the package's DESCRIPTION file or _via_ options --use-C17 and so
    on of R CMD INSTALL and R CMD SHLIB.
    For further details see "Writing R Extensions" SS1.2.5.
  * (Windows) A src/Makefile.ucrt or src/Makefile.win file is now
    included after R_HOME/etcR_ARCH/Makeconf and so no longer needs
    to include that file itself.  Installation of a package with such
    a file now uses a site Makevars file in the same way as a package
    with a src/Makevars.win file would.
  * configure is now passed crucial variables such as CC and CFLAGS
    in its environment, as many packages were not setting them (as
    documented in 'Writing R Extensions' SS1.2).
    This has most effect where configure is used to compile parts of
    the package - most often by cmake or libtool which obfuscate the
    actual compile commands used.
    Also used for configure.win and configure.ucrt on Windows.
  FORTRAN FLAGS:
  * The flag -fno-optimize-sibling-calls is no longer forced for
    gfortran 7 and later.  It should no longer be needed now using
    'hidden' character-length arguments when calling BLAS/LAPACK
    routines from C/C++ is the default even for packages.  (Unless
    perhaps packages call Fortran code from C/C++ without using R's
    headers and without allowing for these arguments.)
  C-LEVEL FACILITIES:
  * The deprecated S-compatibility macros DOUBLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * The deprecated legacy typedefs of Sint and Sfloat in header R.h
    are no longer defined, and that header no longer includes header
    limits.h from C nor climits from C++.
  * New macro CAD5R() is provided in Rinternals.h and used in a few
    places in the R sources.
  * ALTREP now supports VECSXP vectors. Contributed by Gabor Csardi
    in PR#17620.
  * The Rcomplex definition (in header R_ext/Complex.h) has been
    extended to prevent possible mis-compilation when interfacing
    with Fortran (PR#18430).  The new definition causes compiler
    warnings with static initializers such as {1, 2}, which can be
    changed to {.r=1, .i=2}.
    Using the new definition from C++ depends on compiler extensions
    supporting C features that have not been incorporated into the
    C++ standards but are available in g++ and clang++: this may
    result in C++ compiler warnings but these have been worked around
    for recent versions of common compilers (GCC, Apple/LLVM clang,
    Intel).
    It is intended to change the inclusion of header R_ext/Complex.h
    by other R headers, so C/C++ code files which make use of
    Rcomplex should include that header explicitly.
  UTILITIES:
  * R CMD check does more checking of package .Rd files, warning
    about invalid email addresses and (some) invalid URIs and noting
    empty \item labels in description lists.
  * R CMD check now also reports problems when reading package news
    in md (file NEWS.md) and (optionally) plain text (file NEWS)
    formats.
  * _R_CHECK_TIMINGS_ defaults to a value from the environment even
    for R CMD check --as-cran; this allows for exceptionally fast or
    slow platforms.
    It now applies to checking PDF and HTML versions of the manuals,
    and 'checking CRAN incoming feasibility'.
  * R CMD check can optionally (but included in --as-cran) check
    whether HTML math rendering _via_ KaTeX works for the package .Rd
    files.
  * Non-interactive debugger invocations can be trapped by setting
    the environment variable _R_CHECK_BROWSER_NONINTERACTIVE_ to a
    true value.  This is enabled by R CMD check --as-cran to detect
    the use of leftover browser() statements in the package.
  * The use of sprintf and vsprintf from C/C++ has been deprecated in
    macOS 13 and is a known security risk.  R CMD check now reports
    (on all platforms) if their use is found in compiled code:
    replace by snprintf or vsnprintf respectively. [*NB:* whether
    such calls get compiled into the package is platform-dependent.]
  * Where recorded at installation, R CMD check reports the C and
    Fortran compilers used to build R.
    It reports the OS in use (if known, as given by osVersion) as
    well as that R was built for.
    It notes if a C++ standard was specified which is older than the
    current default: many packages have used C++11 to mean 'not
    C++98' - as C++11 is the minimum supported since R 4.0.0, that
    specification can probably be removed.
  * R CMD INSTALL reports the compilers (and on macOS, the SDK) used,
    and this is copied to the output of R CMD check.
    Where a C++ standard is specified, it is reported.
  * R CMD check's 'checking compilation flags in Makevars' has been
    relaxed to accept the use of flags such as -std=f2008 in
    PKG_FFLAGS.
  * tools::buildVignettes() has a new argument skip, which is used by
    R CMD check to skip (and note) vignettes with unavailable
    \VignetteDepends (PR#18318).
  * New generic .AtNames() added to enable class-specific completions
    after @. The formerly internal function findMatches() is now
    exported, mainly for use in methods for .DollarNames() and
    .AtNames().
  DEPRECATED AND DEFUNCT:
  * default.stringsAsFactors() is defunct.
  * Calling as.data.frame.&lt;class&gt;() directly (for 12 atomic classes)
    is going to be formally deprecated, currently activated by
    setting the environment variable
    _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ to non-empty, which also
    happens in R CMD check --as-cran.
  BUG FIXES:
  * Hashed environments with sizes less than 5 can now grow.
    (Reported to R-devel by Duncan Garmonsway.)
  * as.character(&lt;Rd&gt;, deparse = TRUE) failed to re-escape curly
    braces in LaTeX-like text.  (Reported by Hadley Wickham in
    PR#18324.)
  * library() now passes its lib.loc argument when requiring Depends
    packages; reported (with fix) in PR#18331 by Mikael Jagan.
  * R CMD Stangle: improved message about 'Output' files.
  * head(x, n) and tail(x, n) now signal an error if n is not
    numeric, instead of incidentally "working" sometimes returning
    all of x.  Reported and discussed by Colin Fay, in PR#18357.
  * The "lm" method for summary() now gives the correct F-statistic
    when the model contains an offset.  Reported in PR#18008.
  * C() and `contrasts&lt;-`() now preserve factor level names when
    given a function object (as opposed a function name which did
    preserve names). Reported in PR#17616.
  * c(a = 1, 2)[[]] no longer matches 2 but rather signals a
    _classed_ error.  Reported and analysed by Davis Vaughan in
    PR#18367, a duplicate of PR#18004, by Jan Meis et al.  For
    consistency, NULL[[]] is also erroneous now.  x[[]] &lt;- v gives an
    error of the same class "MissingSubscriptError".
  * The relist() function of utils now supports NULL elements in the
    skeleton (PR#15854).
  * ordered(levels = *) (missing x) now works analogously to factor(,
    ordered=TRUE); reported (with fix) by Achim Zeileis in PR#18389.
  * User-defined Rd macro definitions can now span multiple lines,
    thanks to a patch from Duncan Murdoch. Previously, the Rd parser
    silently ignored everything after the first line.
  * Plain-text help (tools::Rd2txt()) now preserves an initial blank
    line for text following description list items.
  * tools::Rd2HTML() and tools::Rd2latex() no longer split \arguments
    and \value lists at Rd comments.
  * tools::Rd2latex() now correctly handles optional text outside
    \items of argument lists as well as bracketed text at the
    beginning of sections, e.g., \value{[NULL]}.
  * as.character(&lt;POSIXt&gt;) now behaves more in line with the methods
    for atomic vectors such as numbers, and is no longer influenced
    by options().  Ditto for as.character(&lt;Date&gt;).  The
    as.character() method gets arguments digits and OutDec with
    defaults _not_ depending on options().  Use of as.character(*,
    format = .) now warns.
  * Similarly, the as.character.hexmode() and *.octmode() methods
    also behave as good citizen methods and back compatibility option
    keepStr = TRUE.
  * The as.POSIXlt(&lt;POSIXlt&gt;) and as.POSIXct(&lt;POSIXct&gt;) default
    methods now do obey their tz argument, also in this case.
  * as.POSIXlt(&lt;Date&gt;) now does apply a tz (time zone) argument, as
    does as.POSIXct(); partly suggested by Roland Fuss on the R-devel
    mailing list.
  * as.Date.POSIXlt(x) now also works when the list components are of
    unequal length, aka "partially filled" or "ragged".
  * expand.model.frame() looked up variables in the wrong environment
    when applied to models fitted without data.  Reported in
    PR#18414.
  * time() now (also) uses the ts.eps = getOption("ts.eps") argument
    and thus by default rounds values very close to the start (or
    end) of a year.  Based on a proposal by Andre"i V. Kostyrka on
    R-help.
  * Printing of a factanal() result with just one factor and sort =
    TRUE now works regularly, fixing PR#17863 by Timothy Bates,
    thanks to the 'R Contributors' working group.
  * Printing 0-length objects of class "factor", "roman", "hexmode",
    "octmode", "person", "bibentry", or "citation" now prints
    something better, one of which fixes PR#18422, reported by
    Benjamin Feakins.
  * Sys.timezone() queries timedatectl only if systemd is loaded;
    addressing a report by Jan Gorecki in PR#17421.
  * The formula method of cor.test() had scoping problems when
    environment(formula) was not the calling environment; reported
    with a patch proposal by Mao Kobayashi in PR#18439.
  * attach() of an environment with active bindings now preserves the
    active bindings.  Reported by Kevin Ushey in PR#18425.
  * BLAS detection now works also with system-provided libraries not
    available as regular files.  This fixes detection of the
    Accelerate framework on macOS since Big Sur.  Reported by David
    Novgorodsky.
  * download.file() gives a helpful error message in case of an
    invalid download.file.method option, thanks to Colin Fay's report
    in PR#18455.
  * Sporadic crashes of Rterm when using completion have been fixed.
  * Rprof() is now more reliable.  A livelock in thread
    initialization with too short sampling interval has been fixed on
    macOS.  A deadlock in using the C runtime has been fixed on
    Windows.  A potential deadlock has been prevented on Unix.
  * Cursor placement in Rgui now works even after a fixed-width font
    is selected.
  * Mandatory options (options()) are now set on startup so that
    saving and restoring them always works (PR#18372).
  * Package installation, R CMD INSTALL or install.packages(*), now
    parses each of the &lt;pkg&gt;/R/*.R files individually instead of
    first concatenating and then parse()ing the large resulting file.
    This allows parser or syntax errors to be diagnosed with correct
    file names and line numbers, thanks to Simon Dedman's report and
    Bill Dunlap's patch in PR#17859.
    This _does_ require syntactically self contained R source files
    now, fixing another inadvertent bug.
  * predict.lm(&lt;model with offset&gt;) now finds the offset in the
    correct environment, thanks to Andr'e Gillibert's report and patch
    in PR#18456.
  * getInitial(&lt;formula&gt;) now finds the selfStart model in the
    correct environment.  (Reported by Ivan Krylov in PR#18368.)
  * Fix for possible segfault when using recently-added graphics
    features, such as gradients, clipping paths, masks, and groups
    with pdf(file=NULL).
  * class(m) &lt;- class(m) no longer changes a matrix m by adding a
    class _attribute_.
  * packageDate(pkg) now only warns once if there is no pkg.
  * When ts() creates a multivariate time series, "mts", it also
    inherits from "array" now, and is.mts() is documented _and_
    stricter.
  * Rd2txt() now preserves line breaks of \verb Rd content and from
    duplicated \cr.  The former also fixes the rendering of verbatim
    output from Rd \Sexpr in plain-text help.
  * uniroot(f, interval) should no longer wrongly converge _outside_
    the interval in some cases where abs(f(x)) == Inf for an x at the
    interval boundary, thanks to posts by Ben Bolker and Serguei
    Sokol on R-devel.
  * Vectorized alpha handling in palette functions such as in gray(),
    rainbow(), or hcl.colors() works correctly now, thanks to Achim
    Zeileis' report and patch in PR#18476.
  * Formatting and print()ing of bibentry objects has dropped the
    deprecated citation.bibtex.max argument, such that the bibtex
    argument's default for print.bibentry() depends directly on the
    citation.bibtex.max option, whereas in format.bibentry() the
    option no longer applies.
  * Attempting to use a character string naming a foreign function
    entry point in a foreign function call in a package will now
    signal an error if the packages has called R_forceSymbols to
    specify that symbols must be used.
  * An error in table() could permanently set options(warn=2)
    promoting all subsequent warnings to errors.
  * The sigma() function gave misleading results for binary GLMs.  A
    new method for objects of class "glm" returns the square root of
    the estimate of the dispersion parameter using the same
    calculation as summary.glm().
  * bs() and ns() in the (typical) case of automatic knot
    construction, when some of the supposedly inner knots coincide
    with boundary knots, now moves them inside (with a warning),
    building on PR#18442 by Ben Bolker.
  * R CMD on Windows now skips the site profile with --no-site-file
    and --vanilla even when R_PROFILE is set (PR#18512, from Kevin
    Ushey).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1686916800">- CHANGES IN R 4.3.1:
  C-LEVEL FACILITIES:
  * The C-level API version of R's integrate(), Rdqags() in Applic.h,
    now returns the correct number of integrand evaluations neval,
    fixing PR#18515 reported and diagnosed by Stephen Wade.
  * The C prototypes for LAPACK calls dspgv and dtptrs in
    R_exts/Lapack.h had one too many and one too few character length
    arguments - but this has not caused any known issues. To get the
    corrected prototypes, include
    [#]include &lt;Rconfig.h&gt; // for PR18534fixed
    [#]ifdef PR18534fixed
    [#] define usePR18534fix 1
    [#]endif
    [#]include &lt;R_exts/Lapack.h&gt;
    in your C/C++ code (PR#18534).
  INSTALLATION:
  * Many of the checks of esoteric Internet operations and those
    using unreliable external sites have been moved to a new target
    that is not run by default and primarily intended for the core
    developers.  To run them use
    cd tests; make test-Internet-dev
  BUG FIXES:
  * .S3methods(), typically called from methods(), again marks
    methods from package base as visible.
    Also, the visibility of non-base methods is again determined by
    the method's presence in search().
  * tools::Rdiff() is now more robust against invalid strings, fixing
    installation tests on Windows without Rtools installed
    (PR#18530).
  * Fix (new) bug in hcl.colors(2, *), by Achim Zeileis (PR#18523).
  * head(., &lt;illegal&gt;) and tail(..) now produce more useful "Error in
    ...." error messages, fixing PR#18362.
  * Package code syntax on Windows is checked in UTF-8 when UTF-8 is
    the native encoding.
  * na.contiguous(x) now also returns the first run, when it is at
    the beginning and there is a later one of the same length;
    reported to R-devel, including a fix, by Georgi Boshnakov.
    Further, by default, it modifies only an existing attr(*,"tsp")
    but otherwise no longer sets one.
  * chol(&lt;not pos.def&gt;, pivot = &lt;T|F&gt;) now gives a correct error or
    warning message (depending on pivot), thanks to Mikael Jagan's
    (PR#18541).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1699012800">- CHANGES IN R 4.3.2:
  NEW FEATURES:
  * The default initialization of the "repos" option from the
    repositories file at startup can be skipped by setting
    environment variable R_REPOSITORIES to NULL such that
    getOption("repos") is empty if not set elsewhere.
  * qr.X() is now an implicit S4 generic in methods.
  * iconv(to = "ASCII//TRANSLIT") is emulated using substitution on
    platforms which do not support it (notably Alpine Linux).  This
    should give a human-readable conversion in ASCII on all platforms
    (rather than NA_character_).
  * trans3d() gains options continuous and verbose addressing the
    problem of possible "wrap around" when projecting too long
    curves, as reported by Achim Zeileis in PR#18537.
  * tools::showNonASCII() has been rewritten to work better on macOS
    14 (which has a changed implementation of iconv()).
  * tiff(type = "quartz") (the default on macOS) now warns if
    compression is specified: it continues to be ignored.
  INSTALLATION on a UNIX-ALIKE:
  * There is some support for building with Intel's LLVM-based
    compilers on x86_64 Linux, such as (C) icx, (C++) ipcx and
    (Fortran) ifx from oneAPI 2023.x.y.
  * There is support for using LLVM's flang-new as the Fortran
    compiler from LLVM 16.0.x (preferably 17.0.0 or later).
  UTILITIES:
  * R CMD check reports the use of the Fortran 90 random number
    generator RANDOM_NUMBER() and the subroutines to initialize it.
    'Writing R Extensions' has example code to use R's RNGs from
    Fortran.
  BUG FIXES:
  * substr(x, n, L) &lt;- cc now works (more) correctly for multibyte
    UTF-8 strings x when L &gt; nchar(x), thanks to a report and patch
    by 'Architect 95'.
  * contrib.url(character()) now returns 0-length character() as
    documented, which also avoids spurious warnings from
    available.packages() et al. in the edge case of an empty vector
    of repository URLs.
  * readChar(., 4e8) no longer fails, thanks to Kodi Arfer's report
    (PR#18557).
  * lapply(&lt;list&gt;, as.data.frame) no longer warns falsely for some
    base vector components.
  * Communication between parent and child processes in the multicore
    part of parallel could fail on platforms that do not support an
    arbitrarily large payload in system functions read()/write() on
    pipes (seen on macOS where a restriction to INT_MAX bytes is
    documented, without doing a partial read unlike Linux). The
    payload is now split into 1Gb chunks to avoid that problem.
    (PR#18571)
  * qqplot(x,y, conf.level=.) gives better confidence bounds when
    length(x) != length(y), thanks to Alexander Ploner's report and
    patch proposal (PR#18557).
  * norm(&lt;0-length&gt;, "2") now gives zero instead of an error, as all
    the other norm types, thanks to Mikael Jagan's PR#18542.
  * Build-stage Rd macros \packageAuthor and \packageMaintainer now
    process Authors@R, fixing NA results when the package DESCRIPTION
    omits Author and Maintainer fields.
  * Formatting and printing complex numbers could give things like
    0.1683-0i because of rounding error: -0i is now replaced by +0i.
  * postscript() refused to accept a title comment containing the
    letter "W" (PR#18599).
  * isoreg(c(1,Inf)) signals an error instead of segfaulting, fixing
    PR#18603.
  * tiff(type = "Xlib") was only outputting the last page of
    multi-page plots.
  * tools::latexToUtf8() again knows about \~{n} and other letters
    with tilde, fixing a regression in R 4.3.0, and about \^{i} as an
    alternative to \^{\i} (similarly with other accents).
    Furthermore, LaTeX codes for accented I letters are now correctly
    converted, also fixing related mistakes in
    tools::encoded_text_to_latex().
  * tar(*, tar = "internal") no longer creates out-of-spec tar files
    in the very rare case of user or group names longer than 32
    bytes, fixing PR#17871 with thanks to Ivan Krylov.
  * When using the "internal" timezone datetime code, adding a
    fraction of a second no longer adds one second, fixing PR#16856
    from a patch by Ivan Krylov.
  * tools::checkRd() no longer produces spurious notes about
    "unnecessary braces" from multi-line Rd results of \Sexpr macros.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1709208000">- CHANGES IN R 4.3.3:
  NEW FEATURES:
  * iconv() now fixes up variant encoding names such as "utf8"
    case-insensitively.
  DEPRECATED AND DEFUNCT:
  * The legacy encoding = "MacRoman" is deprecated in pdf() and
    postscript(): support was incomplete in earlier versions of R.
  BUG FIXES:
  * Arguments are now properly forwarded to methods on S4 generics
    with ... in the middle of their formal arguments. This was broken
    for the case when a method introduced an argument but did not
    include ... in its own formals. Thanks to Herv'e Pag`es for the
    report PR#18538.
  * Some invalid file arguments to pictex(), postscript() and xfig()
    opened a file called NA rather than throw an error.  These
    included postscript(NULL) (which some people expected to work
    like pdf(NULL)).
  * Passing filename = NA to svg(), cairo_pdf(), cairo_ps() or the
    Cairo-based bitmap devices opened a file called NA: it now throws
    an error.
  * quartz(file = NA) opened a file called NA, including when used as
    a Quartz-based bitmap device.  It now gives an error.
  * rank(&lt;long vector&gt;) now works, fixing PR#18617, thanks to Ilia
    Kats.
  * seq.int() did not adequately check its length.out argument.
  * match(&lt;POSIXct&gt;, .) is correct again for differing time zones,
    ditto for "POSIXlt", fixing PR#18618 reported by Bastian Klein.
  * drop.terms(*, dropx = &lt;0-length&gt;) now works, fixing PR#18563 as
    proposed by Mikael Jagan.
  * drop.terms(*) keeps + offset(.) terms when it should, PR#18565,
    and drop.terms() no longer makes up a response, PR#18566, fixing
    both bugs thanks to Mikael Jagan.
  * getS3method("t", "test") no longer finds the t.test() function,
    fixing PR#18627.
  * pdf() and postscript() support for the documented Adobe encodings
    "Greek" and "Cyrilllic" was missing (although the corresponding
    Windows' codepages could be used).
  * Computations of glyph metric information for pdf() and
    postscript() did not take into account that transliteration could
    replace one character by two or more (only seen on macOS 14) and
    typically warned that the information was not known.
  * rank(x) no longer overflows during integer addition, when
    computing rank average for largish but not-yet long vector x,
    fixing PR#18630, thanks to Ilia Kats.
  * list.files() on Windows now returns also files with names longer
    that 260 bytes (the Windows limit is 260 characters).
    Previously, some file names particularly with 'East Asian'
    characters were omitted.
  * cov2cor(&lt;0 x 0&gt;) now works, fixing PR#18423 thanks to Mikael
    Jagan and Elin Waring.
  * cov2cor(&lt;negative diagonal&gt;) and similar now give one warning
    instead of two, with better wording, fixing PR#18424 thanks to
    Mikael Jagan.
  * tools:: startDynamicHelp() now ensures port is in proper range,
    fixing PR#18645.
  * pbeta(x, a,b) is correct now for x=0 or 1 in the boundary cases
    where a or b or both are 0, fixing PR#18672 thanks to Michael
    Fay.
  * pmatch(x, table) for large table, also called for data frame row
    selection, dfrm[nm, ], is now interruptible, fixing PR#18656.
  * predict(&lt;rank-deficient lm&gt;, newdata=*) fix computing of nbasis,
    see Russ Lenth's comment 29 in PR#16158.
  * Added a work-around for a bug in macOS 14.3.1 and higher which
    prevents R plots in the Quartz Cocoa device from updating on
    screen.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1713960000">- CHANGES IN R 4.4.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Startup banners, R --version, sessionInfo() and R CMD check no
    longer report (64-bit) as part of the platform as this is almost
    universal - the increasingly rare 32-bit platforms will still
    report (32-bit).
    On Windows, ditto for window titles.
  * is.atomic(NULL) now returns FALSE, as NULL is not an atomic
    vector.  Strict back-compatibility would replace is.atomic(foo)
    by (is.null(foo) || is.atomic(foo)) but should happen only
    sparingly.
  NEW FEATURES:
  * The confint() methods for "glm" and "nls" objects have been
    copied to the stats package.  Previously, they were stubs which
    called versions in package MASS. The MASS namespace is no longer
    loaded if you invoke (say) confint(glmfit).  Further, the "glm"
    method for profile() and the plot() and pairs() methods for class
    "profile" have been copied from MASS to stats.  (profile.nls()
    and plot.profile.nls() were already in stats.)
  * The confint() and profile methods for "glm" objects have gained a
    possibility to do profiling based on the Rao Score statistic in
    addition to the default Likelihood Ratio. This is controlled by a
    new test = argument.
  * The pairs() method for "profile" objects has been extended with a
    which = argument to allow plotting only a subset of the
    parameters.
  * The "glm" method for anova() computes test statistics and
    p-values by default, using a chi-squared test or an F test
    depending on whether the dispersion is fixed or free.  Test
    statistics can be suppressed by giving argument test a false
    logical value.
  * In setRepositories() the repositories can be set using their
    names via name = instead of index ind =.
  * methods() and .S3methods() gain a all.names option for the (rare)
    case where functions starting with a . should be included.
  * Serializations can now be interrupted (e.g., by Ctrl-C on a
    Unix-alike) if they take too long, e.g., from save.image(),
    thanks to suggestions by Ivan Krylov and others on R-devel.
  * New startup option --max-connections to set the maximum number of
    simultaneous connections for the session.  Defaults to 128 as
    before: allowed values up to 4096 (but resource limits may in
    practice restrict to smaller values).
  * R on Windows (since Windows 10 2004) now uses the new Segment
    Heap allocator. This may improve performance of some
    memory-intensive applications.
  * When R packages are built, typically by R CMD build &lt;pkg&gt;, the
    new --user=&lt;build_user&gt; option overrides the (internally
    determined) user name, currently Sys.info()["user"] or LOGNAME.
    This is a (modified) fulfillment of Will Landau's suggestion in
    PR#17530.
  * tools::testInstalledBasic() gets new optional arguments outDir
    and testSrcdir, e.g., allowing to use it in a &lt;builddir&gt; !=
    &lt;srcdir&gt; setup, and in standard "binary" Windows installation
  * if* a source tests/ folder is present.
  * range(&lt;DT_with_Inf&gt;, finite = TRUE) now work for objects of class
    "Date", "POSIXct", and "POSIXlt" with infinite entries,
    analogously to range.default(), as proposed by Davis Vaughan on
    R-devel.  Other range()-methods can make use of new function
    .rangeNum().
  * New .internalGenerics object complementing .S3PrimitiveGenerics,
    for documentation and low-level book-keeping.
  * grid() now invisibly returns the x- and y- coordinates at which
    the grid-lines were drawn.
  * norm(., type) now also works for complex matrices.
  * kappa(., exact = TRUE, norm = *) now works for all norms and also
    for complex matrices.  In symmetric / triangular cases, the new
    argument uplo = "U" | "L" allows the upper or lower triangular
    part to be specified.
  * memDecompress(type = "unknown") recognizes compression in the
    default 'zlib' format as used by memCompress(type = "gzip").
  * memCompress() and memDecompress() will use the libdeflate library
    (&lt;https://github.com/ebiggers/libdeflate&gt;) if installed.  This
    uses the same type of compression for type = "gzip" but is 1.5-2x
    faster than the system libz library on some common platforms: the
    speed-up may depend on the library version.
  * diff() for objects of class "Date", "POSIXct", and "POSIXlt"
    accepts a units argument passed via ....
  * Dynamic help now does a much better job of rendering package
    DESCRIPTION metadata.
  * Rprof() gains an event argument and support for elapsed (real)
    time profiling on Unix (PR#18076).
  * filled.contour() gains a key.border argument.
  * tools::update_pkg_po() gets arguments pot_make and mo_make for
    _not_ re-making the corresponding files, and additionally a
    verbose argument.
  * Hexadecimal string colour specifications are now accepted in
    short form, so, for example, we can use "#123", which is
    equivalent to "#112233".
    Thanks to MikeFC for the original idea and Ella Kaye, Malcolm
    Barrett, George Stagg, and Hanne Oberman for the patch.
  * Plain-text help shows \var markup by angle brackets.
  * The new experimental primitive function declare() is intended to
    eventually allow information about R code to be communicated to
    the interpreter, compiler, and code analysis tools. The syntax
    for declarations is still being developed.
  * Functions psmirnov(), qsmirnov() and rsmirnov() in package stats
    have had argument two.sided renamed to alternative, to take into
    account that the permutation distributions of the one-sided
    statistics can be different in the case of ties.  Consequence of
    PR#18582.
  * sort() is now an implicit S4 generic in methods.
  * Formatting and printing, format(z), print(z), of complex vectors
    z no longer zap relatively small real or imaginary parts to zero,
    fixing PR#16752.  This is an API change, as it was documented
    previously to round real and imaginary parts together on purpose,
    producing nicer looking output.  As mentioned, e.g. in the PR,
    this change is compatible with many other "R-like" programming
    environments.
    We have simplified the internal code and now basically format the
    real and imaginary parts independently of each other.
  * New experimental functions Tailcall() and Exec() to support
    writing stack-space-efficient recursive functions.
  * Where characters are attempted to be plotted by pdf(),
    postscript() and xfig() which are not in the selected 8-bit
    character set (most often Latin-1) and the R session is using a
    UTF-8 locale, the warning messages will show the UTF-8 character
    rather than its bytes and one dot will be substituted per
    character rather than per byte.  (Platforms whose iconv() does
    transliteration silently plot the transliteration.)
    In a UTF-8 locale some transliterations are now done with a
    warning (e.g., dashes and Unicode minus to hyphen, ligatures are
    expanded, permille (‰) is replaced by o/oo), although the OS may
    have got there first.  These are warnings as they will continue
    to be replaced by dots in earlier versions of R.
  * The matrix multiplication functions crossprod() and tcrossprod()
    are now also primitive and S3 generic, as %*% had become in R
    4.3.0.
  * source() and example() have a new optional argument catch.aborts
    which allows continued evaluation of the R code after an error.
  * The non-Quartz tiff() devices allow additional types of
    compression if supported by the platform's libtiff library.
  * The list of base and recommended package names is now provided by
    tools::standard_package_names().
  * cairo_pdf() and cairo_ps() default to onefile = TRUE to closer
    match pdf() and postscript().
  * New option catch.script.errors provides a documented way to catch
    errors and then continue in non-interactive use.
  * L %||% R newly in base is an expressive idiom for the phrases
    if(!is.null(L)) L else R or if(is.null(L)) R else L.
  * The return value from warnings() now always inherits from
    "warnings" as documented, now also in the case of no warnings
    where it previously returned NULL.
  * as.complex("1i") now returns 0 + 1i instead of NA with a warning.
  * z &lt;- c(NA, 1i) now keeps the imaginary part Im(z[1]) == 0, no
    longer coercing to NA_complex_.  Similarly, cumsum(z) correctly
    sums real and imaginary parts separately, i.e., without
    "crosstalk" in case of NAs.
  * On Alpine Linux iconv() now maps "latin2", "latin-2", "latin9"
    and "latin-9" to encoding names the OS knows about
    (case-insensitively).
  * iconv(sub = "Unicode") now always zero-pads to four (hex) digits,
    rather than to 4 or 8.  (This seems to have become the convention
    once Unicode restricted the number of Unicode points to 2^21 - 1
    and so will never need more than 6 digits.)
  * NCOL(NULL) now returns 0 instead of 1, for consistency with
    cbind().
  * The information for the Euro glyph missing from the Adobe .afm
    files for the Courier, Helvetica and Times families has been
    copied from their URW equivalents - this will improve vertical
    centring in the pdf() and postscript() devices.
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.12.0.  The changes are almost entirely cosmetic.
  * The included LAPACK sources have been updated to version 3.12.0
    and some further double-complex routines added.
  * There are new font families for the 2014--5 URW 2.0 fonts (see
    ?pdf) which are included in recent versions of Ghostscript.
    These have font widths for most Greek glyphs and a few others
    which were missing from the original versions (whose font
    families remain available for reproducibility, although
    Ghostscript-based viewers will render using the 2.0 versions).
  * Improve the large-n efficiency of as.matrix(&lt;dist&gt;), thanks an R
    contributors effort, notably by Tim Taylor and Heather Turner,
    see PR#18660.
  * The default and numeric methods of all.equal() get a check.class
    option.
  * zapsmall() gets new optional arguments, function mFUN and min.d,
    for extra flexibility; fulfills a wish in PR#18199.  Also, it is
    now an implicit S4 generic in package methods.
  * The Rd filter for aspell() gains an ignore argument.
  * New generic function sort_by(), primarily useful for the
    data.frame method which can be used to sort rows of a data frame
    by one or more columns.
  * The icence headers for the RPC code in src/extra/xdr have been
    updated to use the GPL-compatible licence published by Oracle
    America in 2010.
  * New function pkg2HTML() in tools to create single-page HTML
    reference manuals for R packages.
  * The byte code evaluator now uses less C stack space for recursive
    calls to byte-compiled functions. It also makes more of an effort
    to avoid allocations for scalar return values.
  * New completion option backtick (disabled by default) allows
    non-syntactic completions to be wrapped in backquotes. This is
    currently only useful for Jupyter notebooks via the IRkernel
    package, and may cause problems for other backends.
  INSTALLATION:
  * The parser has been updated to work with bison 3.8.2, which is
    now used for the pre-generated parsers in gram.c, file.c, and
    gramRd.c. A few parser error messages have changed, which may
    affect code that relies on exact messages.
  INSTALLATION on a UNIX-ALIKE:
  * System valgrind headers are now required to use configure option
  - -with-valgrind-instrumentation with value 1 or 2.
  * configure will warn if it encounters a 32-bit build, as that is
    nowadays almost untested.
  * Environment variable R_SYSTEM_ABI is no longer used and so no
    longer recorded in etc/Renviron (it was not on Windows and was
    only ever used when preparing package tools).
  * If the libdeflate library and headers are available, libdeflate
    rather than libz is used to (de)compress R objects in lazy-load
    databases.  Typically tasks spend up to 5% of their time on such
    operations, although creating lazy-data databases is one of the
    exceptions.
    This can be suppressed if the library is available by the
    configure option --without-libdeflate-compression.
  * configure option --enable-lto=check has not worked reliably since
    2019 and has been removed.
  * The minimum autoconf requirement for a maintainer build has been
    increased to autoconf 2.71.
    It is intended to increase this to 2.72 for R 4.5.0: the
    distributed configure file was generated using 2.72.
  * The minimum version requirement for an external LAPACK has been
    reduced to 3.9.0.
  * No default C++ compiler is set if no C++17 compiler is detected:
    there is no longer an automatic fallback to C++14 or C++11.
    Compilers from the last five years should have sufficient
    support: for others macros CXX and CXXSTD can be set in file
    config.site to provide a fallback if needed.
    The Objective-C++ compiler now by default uses the standard
    selected by R for C++ (currently C++17) rather than the default
    standard for the C++ compiler (which on macOS is still C++98).
  INSTALLATION on macOS:
  * A new configure option --with-newAccelerate makes use of Apple's
    'new' BLAS / LAPACK interfaces in their Accelerate framework.
    Those interfaces are only available in macOS 13.3 or later, and
    building requires SDK 13.3 or later (from the Command Line Tools
    or Xcode 14.3 or later).
    By default the option uses new Accelerate for BLAS calls: to also
    use it for LAPACK use option --with-newAccelerate=lapack.  The
    later interfaces provide LAPACK 3.9.1 rather than 3.2.1: 3.9.1 is
    from 2021-04 and does not include the improved algorithms
    introduced in LAPACK 3.10.0 (including for BLAS calls).
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools44, an update of the Rtools43 toolchain.  It is
    based on GCC 13 and newer versions of MinGW-W64, binutils and
    libraries (targeting 64-bit Intel CPUs).  R-devel can no longer
    be built using Rtools43 without changes.
  * Rtools44 has experimental support for 64-bit ARM (aarch64) CPUs
    _via_ the LLVM 17 toolchain using lld, clang/flang-new and
    libc++.
  UTILITIES:
  * R CMD check notes when S4-style exports are used without
    declaring a strong dependence on package methods.
  * tools::checkRd() (used by R CMD check) detects more problems with
    \Sexpr-based dynamic content, including bad nesting of \Sexprs
    and invalid arguments.
  * tools::checkRd() now reports Rd titles and section names ending
    in a period; this is ignored by R CMD check unless environment
    variable _R_CHECK_RD_CHECKRD_MINLEVEL_ is set to -5 or smaller.
  * R CMD check now notes Rd files without an \alias, as long
    documented in 'Writing R Extensions' §1.3.1.  The check for a
    missing \description has been moved from tools::checkRd() to
    tools::checkRdContents().
  * R CMD check now visits inst/NEWS.Rd and OS-specific man
    subdirectories when checking Rd files.
  * tools::checkDocFiles() and tools::checkRdContents() now also
    check internal Rd files by default, but "specially" (ignoring
    missing documentation of arguments).
  * R CMD Rdiff gets option --useEx.
  * R CMD check now warns on non-portable uses of Fortran KIND such
    as INTEGER(KIND=4) and REAL(KIND=8).
    To see the failing lines set environment variable
    _R_CHECK_FORTRAN_KIND_DETAILS_ to a true value.
  * When checking Rd files, R CMD check now notes some of the "lost
    braces" that tools::checkRd() finds.  Typical problems are Rd
    macros missing the initial backslash (e.g., code{...}), in-text
    set notation (e.g., {1, 2}, where the braces need escaping), and
    \itemize lists with \describe-style entries of the form
    \item{label}{description}.
  * R CMD INSTALL (and hence check) will compile C++ code with
  - DR_NO_REMAP if environment variable _R_CXX_USE_NO_REMAP_ is set
    to a true value.  It is planned that this will in future become
    the default for compiling C++.
  * The new built-in Rd macro \dontdiff{} can be used to mark example
    code whose output should be ignored when comparing check output
    to reference output (tests/Examples/&lt;pkg&gt;-Ex.Rout.save).  The
    \dontdiff tag, like \donttest, is _not_ shown on the rendered
    help page, so provides a clean alternative to ##
    IGNORE_RDIFF_(BEGIN|END) comments.
  * R CMD build when there is no NAMESPACE, now uses the recommended
    exportPattern("^[^.]"), instead of exporting everything.
  * R CMD check now warns about non-ASCII characters in the NAMESPACE
    file (in addition to R files). Such packages are not portable and
    may fail to install on some platforms.
  C-LEVEL FACILITIES:
  * Headers R_ext/Applic.h and R-ext/Linpack.h used to include
    R_ext/BLAS.h although this was undocumented and unneeded by their
    documented entry points.  They no longer do so.
  * New function R_missing(), factored out from do_missing(), used to
    fix PR#18579.
  * SEXP type S4SXP has been renamed to OBJSXP to support
    experimenting with alternative object systems.  The S4SXP value
    can still be used in C code but is now deprecated.  Based on
    contributions from the R Consortium's Object-Oriented Programming
    Working Group.
  * New function pow1p(x,y) for accurate (1+x)^y.
  * mkCharLenCE was incorrectly documented to take a size_t length
    but was implemented with int (and character strings in R are
    limited to 2^31 - 1 bytes).
  DEPRECATED AND DEFUNCT:
  * data() no longer handles zipped data from long-defunct (since R
    2.13.0) --use-zip-data installations.
  * The legacy graphics devices pictex() and xfig() are now
    deprecated.  They do not support recent graphics enhancements and
    their font handling is rudimentary. The intention is to retain
    them for historical interest as long as they remain somewhat
    functional.
  * Support for encoding = "MacRoman" has been removed from the pdf()
    and postscript() devices - this was a legacy encoding supporting
    classic macOS up to 2001 and no longer has universal libiconv
    support.
  * is.R() is deprecated as no other S dialect is known to be in use
    (and this could only identify historical dialects, not future
    ones).
    Further information on calls can be obtained by setting the
    environment variable _R_DEPRECATED_IS_R_ to error which turns the
    deprecation warning into an error and so by default gives a
    traceback.  (This is done by R CMD check --as-cran.)
  * UseMethod() no longer forwards local variables assigned in the
    generic function into method call environments before evaluating
    the method body. This makes method calls behave more like
    standard function calls and makes method code easier to analyze
    correctly.
  * The twelve as.data.frame.&lt;class&gt;() methods which were deprecated
    only via _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ and in R CMD
    check --as-cran are formally deprecated now in favour of calling
    as.data.frame() or as.data.frame.vector().  The deprecation
    "check" now works also when as.data.frame() is S4 generic thanks
    to Ivan Krylov.
  * The default method for the directional comparison operators &lt;, &gt;,
    &lt;=, and &gt;= now signals an error when one of the operands is a
    language object, i.e. a symbol or a call.
  * For terms.formula(), deprecate abb and neg.out arguments
    _formally_ in addition to just documenting it.
  BUG FIXES:
  * The methods package is more robust to not being attached to the
    search path.  More work needs to be done.
  * pairwise.t.test() misbehaved when subgroups had 0 DF for
    variance, even with pool.sd = TRUE.  (PR#18594 by Jack Berry).
  * Probability distribution functions [dpq]&lt;distrib&gt;(x, *), but also
    bessel[IKJY](x, .) now consistently preserve attributes(x) when
    length(x) == 0, e.g., for a 2 x 0 matrix, thanks to Karolis
    Koncevičius' report PR#18509.
  * Group "Summary" computations such as sum(1:3, 4, na.rm = 5, NA,
    7, na.rm = LL) now give an error instead of either 17 or NN for
    LL true or false, as proposed by Ivan Krylov on the R-devel
    mailing list.  (This also means it is now an error to specify
    na.rm more than once.)
  * as.complex(x) now returns complex(real = x, imaginary = 0) for
    _all_ numerical and logical x, notably also for NA or
    NA_integer_.
  * Directories are now omitted by file.copy(, recursive = FALSE) and
    in file.append() (PR#17337).
  * gsub() and sub() are now more robust to integer overflow when
    reporting errors caused by too large input strings (PR#18346).
  * Top-level handlers are now more robust to attempts to remove a
    handler whilst handlers are running (PR#18508).
  * The handling of Alt+F4 in dialogs created on Windows using
    GraphApp has been fixed (PR#13870).
  * density() more consistently computes grid values for the
    FFT-based convolution, following Robert Schlicht's analysis and
    proposal in PR#18337, correcting density values typically by a
    factor of about 0.999.  Argument old.coords = TRUE provides back
    compatibility.
  * palette.colors() gains a name argument that defaults to FALSE
    controlling whether the vector of colours that is returned has
    names (where possible).  PR#18529.
  * tools::xgettext() no longer extracts the (non-translatable) class
    names from warningCondition and errorCondition calls.
  * S3method(&lt;gen&gt;, &lt;class&gt;, &lt;func&gt;) in the NAMESPACE file now works
    (again) when &lt;func&gt; is visible from the namespace, e.g.,
    imported, or in base.
  * getParseData(f) now also works for a function defined in the
    first of several &lt;pkg&gt;/R/*.R source files, thanks to Kirill
    Müller's report and Duncan Murdoch's patch in PR#16756.
  * Rd \Sexpr macros with nested #ifdef conditionals were not
    processed.
  * A non-blocking connection with non-default encoding (such as a
    socket) now correctly returns from readLines() after new data has
    arrived also when its EOF had been reached previously.  Thanks to
    Peter Meilstrup's report on R-devel and Ivan Krylov's report and
    patch proposal in PR#18555.
  * tools::checkRdContents() failed to detect empty argument
    descriptions when they spanned multiple lines, including those
    generated by prompt().  These cases are now noted by R CMD check.
  * Plain-text help no longer outputs spurious colons in the
    arguments list (for multi-line \item labels in the Rd source).
  * kappa() and rcond() work correctly in more cases; kappa(., norm =
    "2") now warns that it computes the 1-norm with (default) exact =
    FALSE; prompted by Mikael Jagan's quite comprehensive PR#18543.
  * Rd skeletons generated by prompt() or promptData() now use a
    dummy title (so R CMD build works).  tools::checkRdContents() has
    been updated to detect such template leftovers, including from
    promptPackage().
  * When S4 method dispatch fails because no method was found, the
    error message now includes the signature argument names; thanks
    to Michael Chirico's proposal on the R-devel list.
  * withAutoprint({ .. }) now preserves srcrefs previously lost,
    thanks to Andrew Simmons' report plus fix in PR#18572.
  * transform.data.frame() no longer adjusts names; in particular,
    untransformed variables are kept as-is, including those with
    syntactically invalid names (PR#17890).
  * The keep.source option for Rd \Sexpr blocks is no longer ignored.
  * The formula methods for t.test() and wilcox.test() now catch when
    paired is passed, addressing PR#14359; use Pair(x1, x2) ~ 1 for a
    paired test.
  * The level reported in the browser prompt was often too large. It
    now shows the number of browser contexts on the stack.
  * For cbind() and rbind(), the optional deparse.level argument is
    now properly passed to methods, thanks to Mikael Jagan's PR#18579
    and comments there.
  * Some error and warning messages for large ('long vector')
    matrix(v, nr, nc) and dim(m) &lt;- d are now correct about sizes,
    using long long formatting, fixing PR#18612 (and more) reported
    by Mikael Jagan.
  * readChar(useBytes = TRUE) now terminates strings even when the
    underlying connection uses extra spaces in the input buffer.
    This fixes problems with extra garbage seen with gzip
    connections, PR#18605.
  * Named capture in PCRE regular expressions now works also with
    more than 127 named groups (PR#18588).
  * Datetime functions are now robust against long jumps when dealing
    with internal time zone changes.  This avoids confusing warnings
    about an invalid time zone, previously triggered by turning
    warnings into errors or handling them via tryCatch (PR#17966,
    PR#17780).
  * Datetime functions now restore even an empty TZ environment
    variable after internal time zone changes (PR#17724).  This makes
    results of datetime functions with this (typically unintentional)
    setting more predictable.
  * drop.terms(*) now drops response as by default, keep.response =
    FALSE, fixing PR#18564 thanks to Mikael Jagan.
  * dummy.coef(.) now also works for lm()-models with character
    categorical predictor variables rather than factor ones, fixing
    PR#18635 reported by Jinsong Zhao.
  * formals(f) &lt;- formals(f) now also works for a function w/o
    arguments and atomic _constant_ body(f).
  * Correct as.function(&lt;invalid list&gt;, .)'s error message.
  * removeSource() is yet more thorough in finding and removing
    "srcref" and the other source references from parsed R language
    chunks, fixing PR#18638 thanks to Andrew Simmons.
  * dgeom() is more accurate now, notably when its result is very
    small, fixing PR#18642 thanks to the proposal of Morten Welinder,
    also improving other instances where C level binom_raw(x, n, ..)
    has x == 0 or x== n.
  * warning() with options(warn = 1) has improved output for
    multi-line messages.
  * axis.Date() and axis.POSIXct() now respect the par("lab") setting
    for the number of pretty() intervals.
  * Comparisons for language objects (which are based on deparsing)
    are now more careful about using accurate deparsed results
    (PR#18676).
  * Plain-text help (Rd2txt) now correctly preserves blank lines
    following single-line \dontrun code.
  * &lt;POSIXlt&gt;[*] no longer sets wrong "balanced" attribute, fixing
    PR#18681 thanks to Mikael Jagan.
  * str(&lt;classed-call&gt;) now deparses the call as expected, fixing
    PR#18684, reported by Dave Slager.
  * In Rd examples, code following the closing brace of a \dontrun,
    \dontshow or \donttest tag on the same line is no longer skipped
    when R CMD check runs the examples.
  * as.data.frame(matrix(*, ncol=0)) now gets valid names() and
    colnames(); reported by Davis Vaughan on the R-devel list.
  * Internal Mathlib function stirlerr(n) is now almost fully
    (52-bit) accurate for all n &gt;= ~5.9 and more accurate also in the
    range 1 -- 5.9.  This entails small ("after 12th decimal")
    changes in density functions, e.g., dgamma() in _some_ regions of
    their support.  The fix was partly prompted by Morten Welinder's
    PR#18640.
  * Numbers like 9876543.2 are now considered non-integer by Mathlib
    internal R_nonint(), amending original fix of PR#15734.
  * Rd comment lines no longer cause broken paragraphs in the
    rendered PDF and plain-text help. In code blocks, pure comment
    lines (starting with %) no longer produce an empty line.
  * xtabs(Freq ~ .) now consistently defaults to na.action = na.pass,
    using na.rm = FALSE (added as an argument) when summing over Freq
    (PR#17770).
  * tools::testInstalledPackage() is no longer silent about failures
    from running examples or tests and its return code no longer
    ignores failures from checking vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1718366400">- CHANGES IN R 4.4.1:
  C-LEVEL FACILITIES:
  * Functions R_atof and R_strtod declared in header R_ext/Utils.h
    are now documented in 'Writing R Extensions' and so formally part
    of the API.
  * The non-API entry points Rf_setSVector, Rf_StringFalse,
    Rf_StringTrue and Rf_isBlankString have been added to those
    reported by R CMD check.
  * The new function Rf_allocLang is now available. This provides an
    alternative to the idiom of calling Rf_allocList followed by
    SET_TYPEOF.
  UTILITIES:
  * R CMD check now reports as warnings what gfortran calls 'Fortran
    2018 deleted features', all of which have long been marked as
    'obsolescent' and some of which were deleted in Fortran 2008 or
    earlier.  Fortran compilers are no longer required to support
    these.
  BUG FIXES:
  * as.numeric(), scan(), type.convert() and other places which use
    the internal C function R_strtod now require a _non-empty_ digit
    sequence in a decimal or binary exponent.  This aligns with the
    C/POSIX standard for strtod and with ?NumericConstants.
  * as.data.frame(m, make.names=NA) now works correctly for a matrix
    m with NA's in row names.
  * The error message from &lt;POSIXlt&gt;[["hour"]] and similar now
    mentions *[[, "hour"]], as wished for in PR#17409 and proposed by
    Michael Chirico.
  * qbinom() and potentially qpois(), qnbinom(), no longer sometimes
    fail accurate inversion (of pbinom(), etc), thanks to Christopher
    Chang's report and patch in PR#18711.
  * The internal help server on Windows can again serve requests sent
    in quick succession, fixing a regression in R 4.4.0.
  * debugcall(&lt;S3Generic&gt;()) now also works when a corresponding
    S4-generic version is in the methods cache (PR#18143).
  * Package tools' toTitleCase(ch0) now returns character(0) when ch0
    is of zero length; fixing PR#18724, reported by David Hugh Jones.
  * R CMD check is no longer broken (without a check result and no
    explanation in 00check.log) for a package which declares an
    invalid VignetteBuilder in DESCRIPTION but has no vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1730376000">- CHANGES IN R 4.4.2:
  C-LEVEL FACILITIES:
  * The S-compatibility macros F77_COM and F77_COMDECL defined in
    header R_ext/RS.h are deprecated and will be removed shortly.  We
    could find no record of their use.
  BUG FIXES:
  * Mathlib function lgammacor(x) no longer warns about underflow to
    zero for large x.
  * Text widths and heights were incorrectly reported by the Quartz
    device if the drawing context didn't exist yet (typically when
    drawing off-screen to a window that is yet to appear, see
    PR#18591).
  * The Quartz device could segfault in cases where paths with spaces
    are used in the new glyph drawing API.  Thanks to Tomek
    Gieorgijewski (PR#18758).
  * On macOS in R CRAN builds, it is again possible to read
    little-endian UTF-16 text with a BOM from a connection using
    encoding="UTF-16".  Users building R from source should avoid
    using the system libiconv in macOS 14.1 and later.
  * methods' internal .requirePackage() now re-enables primitive
    method dispatch when needed; thanks to Ivan Krylov for
    demystifying CRAN package check failures on the R-devel mailing
    list.</changelog>
</package>
<package pkgid="cc6ed66de5aec21074ca5f307f5c1c5ca6a9731ecdfab46f3da20e9f42ffe82fdec9fc95f856ae2c159717317aaf523cc2efd3b2e4b1693c26cc8adfdd3d01eb" name="R-core" arch="i586">
  <version epoch="0" ver="4.4.2" rel="51.0.2.2.sr20241103"/>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1620302400">- To get in sync with d:l:R:autoCRAN the Matrix package's split
  in -devel was reversed.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339200">- improved spec file according to comments of dimstar in
  https://build.opensuse.org/request/show/892685</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339201">- CHANGES IN R 4.1.0:
  FUTURE DIRECTIONS:
  * It is planned that the 4.1.x series will be the last to support
    32-bit Windows, with production of binary packages for that
    series continuing until early 2023.
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Data set esoph in package datasets now provides the correct
    numbers of controls; previously it had the numbers of cases added
    to these.  (Reported by Alexander Fowler in PR#17964.)
  NEW FEATURES:
  * www.omegahat.net is no longer one of the repositories known by
    default to setRepositories().  (Nowadays it only provides source
    packages and is often unavailable.)
  * Function package_dependencies() (in package tools) can now use
    different dependency types for direct and recursive dependencies.
  * The checking of the size of tarball in R CMD check --as-cran
    &lt;pkg&gt; may be tweaked via the new environment variable
    _R_CHECK_CRAN_INCOMING_TARBALL_THRESHOLD_, as suggested in
    PR#17777 by Jan Gorecki.
  * Using c() to combine a factor with other factors now gives a
    factor, an ordered factor when combining ordered factors with
    identical levels.
  * apply() gains a simplify argument to allow disabling of
    simplification of results.
  * The format() method for class "ftable" gets a new option justify.
    (Suggested by Thomas Soeiro.)
  * New ...names() utility.  (Proposed by Neal Fultz in PR#17705.)
  * type.convert() now warns when its as.is argument is not
    specified, as the help file always said it _should_.  In that
    case, the default is changed to TRUE in line with its change in
    read.table() (related to stringsAsFactor) in R 4.0.0.
  * When printing list arrays, classed objects are now shown _via_
    their format() value if this is a short enough character string,
    or by giving the first elements of their class vector and their
    length.
  * capabilities() gets new entry "Rprof" which is TRUE when R has
    been configured with the equivalent of --enable-R-profiling (as
    it is by default).  (Related to Michael Orlitzky's report
    PR#17836.)
  * str(xS4) now also shows extraneous attributes of an S4 object
    xS4.
  * Rudimentary support for vi-style tags in rtags() and R CMD rtags
    has been added.  (Based on a patch from Neal Fultz in PR#17214.)
  * checkRdContents() is now exported from tools; it and also
    checkDocFiles() have a new option chkInternal allowing to check
    Rd files marked with keyword "internal" as well.  The latter can
    be activated for R CMD check via environment variable
    _R_CHECK_RD_INTERNAL_TOO_.
  * New functions numToBits() and numToInts() extend the raw
    conversion utilities to (double precision) numeric.
  * Functions URLencode() and URLdecode() in package utils now work
    on vectors of URIs.  (Based on patch from Bob Rudis submitted
    with PR#17873.)
  * path.expand() can expand ~user on most Unix-alikes even when
    readline is not in use.  It tries harder to expand ~, for example
    should environment variable HOME be unset.
  * For HTML help (both dynamic and static), Rd file links to help
    pages in external packages are now treated as references to
    topics rather than file names, and fall back to a file link only
    if the topic is not found in the target package. The earlier rule
    which prioritized file names over topics can be restored by
    setting the environment variable _R_HELP_LINKS_TO_TOPICS_ to a
    false value.
  * c() now removes NULL arguments before dispatching to methods,
    thus simplifying the implementation of c() methods, _but_ for
    back compatibility keeps NULL when it is the first argument.
    (From a report and patch proposal by Lionel Henry in PR#17900.)
  * Vectorize()'s result function's environment no longer keeps
    unneeded objects.
  * Function ...elt() now propagates visibility consistently with
    ..n.  (Thanks to Lionel Henry's PR#17905.)
  * capture.output() no longer uses non-standard evaluation to
    evaluate its arguments.  This makes evaluation of functions like
    parent.frame() more consistent.  (Thanks to Lionel Henry's
    PR#17907.)
  * packBits(bits, type="double") now works as inverse of
    numToBits().  (Thanks to Bill Dunlap's proposal in PR#17914.)
  * curlGetHeaders() has two new arguments, timeout to specify the
    timeout for that call (overriding getOption("timeout")) and TLS
    to specify the minimum TLS protocol version to be used for
    https:// URIs (_inter alia_ providing a means to check for sites
    using deprecated TLS versions 1.0 and 1.1).
  * For nls(), an optional constant scaleOffset may be added to the
    denominator of the relative offset convergence test for cases
    where the fit of a model is expected to be exact, thanks to a
    proposal by John Nash.  nls(*, trace=TRUE) now also shows the
    convergence criterion.
  * Numeric differentiation _via_ numericDeriv() gets new optional
    arguments eps and central, the latter for taking central divided
    differences.  The latter can be activated for nls() via
    nls.control(nDcentral = TRUE).
  * nls() now passes the trace and control arguments to getInitial(),
    notably for all self-starting models, so these can also be fit in
    zero-noise situations via a scaleOffset.  For this reason, the
    initial function of a selfStart model must now have ... in its
    argument list.
  * bquote(splice = TRUE) can now splice expression vectors with
    attributes: this makes it possible to splice the result of
    parse(keep.source = TRUE).  (Report and patch provided by Lionel
    Henry in PR#17869.)
  * textConnection() gets an optional name argument.
  * get(), exists(), and get0() now signal an error if the first
    argument has length greater than 1.  Previously additional
    elements were silently ignored.  (Suggested by Antoine Fabri on
    R-devel.)
  * R now provides a shorthand notation for creating functions, e.g.
    \(x) x + 1 is parsed as function(x) x + 1.
  * R now provides a simple native forward pipe syntax |&gt;.  The
    simple form of the forward pipe inserts the left-hand side as the
    first argument in the right-hand side call.  The pipe
    implementation as a syntax transformation was motivated by
    suggestions from Jim Hester and Lionel Henry.
  * all.equal(f, g) for functions now by default also compares their
    environment(.)s, notably via new all.equal method for class
    function.  Comparison of nls() fits, e.g., may now need
    all.equal(m1, m2, check.environment = FALSE).
  * .libPaths() gets a new option include.site, allowing to _not_
    include the site library.  (Thanks to Dario Strbenac's suggestion
    and Gabe Becker's PR#18016.)
  * Lithuanian translations are now available.  (Thanks to Rimantas
    Zakauskas.)
  * names() now works for DOTSXP objects.  On the other hand, in
    R-lang, the R language manual, we now warn against relying on the
    structure or even existence of such dot-dot-dot objects.
  * all.equal() no longer gives an error on DOTSXP objects.
  * capabilities("cairo") now applies only to the file-based devices
    as it is now possible (if very unusual) to build R with Cairo
    support for those but not for X11().
  * There is optional support for tracing the progress of
    loadNamespace() - see its help.
  * (Not Windows.)  l10n_info() reports an additional element, the
    name of the encoding as reported by the OS (which may differ from
    the encoding part (if any) of the result from
    Sys.getlocale("LC_CTYPE").
  * New function gregexec() which generalizes regexec() to find _all_
    disjoint matches and well as all substrings corresponding to
    parenthesized subexpressions of the given regular expression.
    (Contributed by Brodie Gaslam.)
  * New function charClass() in package utils to query the
    wide-character classification functions in use (such as
    iswprint).
  * The names of quantile()'s result no longer depend on the global
    getOption("digits"), but quantile() gets a new optional argument
    digits = 7 instead.
  * grep(), sub(), regexp and variants work considerably faster for
    long factors with few levels.  (Thanks to Michael Chirico's
    PR#18063.)
  * Provide grouping of x11() graphics windows within a window
    manager such as Gnome or Unity; thanks to a patch by Ivan Krylov
    posted to R-devel.
  * The split() method for class data.frame now allows the f argument
    to be specified as a formula.
  * sprintf now warns on arguments unused by the format string.
  * New palettes "Rocket" and "Mako" for hcl.colors() (approximating
    palettes of the same name from the 'viridisLite' package).
    Contributed by Achim Zeileis.
  * The base environment and its namespace are now locked (so one can
    no longer add bindings to these or remove from these).
  * Rterm handling of multi-byte characters has been improved,
    allowing use of such characters when supported by the current
    locale.
  * Rterm now accepts ALT+ +xxxxxxxx sequences to enter Unicode
    characters as hex digits.
  * Environment variable LC_ALL on Windows now takes precedence over
    LC_CTYPE and variables for other supported categories, matching
    the POSIX behaviour.
  * duplicated() and anyDuplicated() are now optimized for integer
    and real vectors that are known to be sorted via the ALTREP
    framework. Contributed by Gabriel Becker via PR#17993.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 14
    and so packages that provide graphics devices should be
    reinstalled.
  * Graphics devices should now specify deviceVersion to indicate
    what version of the graphics engine they support.
  * Graphics devices can now specify deviceClip.  If TRUE, the
    graphics engine will never perform any clipping of output itself.
    The clipping that the graphics engine does perform (for both
    canClip = TRUE and canClip = FALSE) has been improved to avoid
    producing unnecessary artifacts in clipped output.
  * The grid package now allows gpar(fill) to be a linearGradient(),
    a radialGradient(), or a pattern().  The viewport(clip) can now
    also be a grob, which defines a clipping path, and there is a new
    viewport(mask) that can also be a grob, which defines a mask.
    These new features are only supported so far on the Cairo-based
    graphics devices and on the pdf() device.
  * (Not Windows.)  A warning is given when a Cairo-based type is
    specified for a png(), jpeg(), tiff() or bmp() device but Cairo
    is unsupported (so type = "Xlib" is tried instead).
  * grSoftVersion() now reports the versions of FreeType and
    FontConfig if they are used directly (not _via_ Pango), as is
    most commonly done on macOS.
  C-LEVEL FACILITIES:
  * The _standalone_ libRmath math library and R's C API now provide
    log1pexp() again as documented, and gain log1mexp().
  INSTALLATION on a UNIX-ALIKE:
  * configure checks for a program pkgconf if program pkg-config is
    not found.  These are now only looked for on the path (like
    almost all other programs) so if needed specify a full path to
    the command in PKG_CONFIG, for example in file config.site.
  * C99 function iswblank is required - it was last seen missing ca
    2003 so the workaround has been removed.
  * There are new configure options --with-internal-iswxxxxx,
  - -with-internal-towlower and --with-internal-wcwidth which allows
    the system functions for wide-character classification,
    case-switching and width (wcwidth and wcswidth) to be replaced by
    internal ones.  The first has long been used on macOS, AIX (and
    Windows) but this enables it to be unselected there and selected
    for other platforms (it is the new default on Solaris).  The
    second is new in this version of R and is selected by default on
    macOS and Solaris.  The third has long been the default and
    remains so as it contains customizations for East Asian
    languages.
    System versions of these functions are often minimally
    implemented (sometimes only for ASCII characters) and may not
    cover the full range of Unicode points: for example Solaris (and
    Windows) only cover the Basic Multilingual Plane.
  * Cairo installations without X11 are more likely to be detected by
    configure, when the file-based Cairo graphics devices will be
    available but not X11(type = "cairo").
  * There is a new configure option --with-static-cairo which is the
    default on macOS.  This should be used when only static cairo
    (and where relevant, Pango) libraries are available.
  * Cairo-based graphics devices on platforms without Pango but with
    FreeType/FontConfig will make use of the latter for font
    selection.
  LINK-TIME OPTIMIZATION on a UNIX-ALIKE:
  * Configuring with flag --enable-lto=R now also uses LTO when
    installing the recommended packages.
  * R CMD INSTALL and R CMD SHLIB have a new flag --use-LTO to use
    LTO when compiling code, for use with R configured with
  - -enable-lto=R.  For R configured with --enable-lto, they have
    the new flag --no-use-LTO.
    Packages can opt in or out of LTO compilation _via_ a UseLTO
    field in the DESCRIPTION file.  (As usual this can be overridden
    by the command-line flags.)
  BUILDING R on Windows:
  * for GCC &gt;= 8, FC_LEN_T is defined in config.h and hence character
    lengths are passed from C to Fortran in _inter alia_ BLAS and
    LAPACK calls.
  * There is a new text file src/gnuwin32/README.compilation, which
    outlines how C/Fortran code compilation is organized and
    documents new features:
  * R can be built with Link-Time Optimization with a suitable
    compiler - doing so with GCC 9.2 showed several
    inconsistencies which have been corrected.
  * There is support for cross-compiling the C and Fortran code
    in R and standard packages on suitable (Linux) platforms.
    This is mainly intended to allow developers to test later
    versions of compilers - for example using GCC 9.2 or 10.x has
    detected issues that GCC 8.3 in Rtools40 does not.
  * There is experimental support for cross-building R packages
    with C, C++ and/or Fortran code.
  * The R installer can now be optionally built to support a single
    architecture (only 64-bit or only 32-bit).
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++14 where
    available (which it is on all currently checked platforms): if
    not (as before) C++11 is used if available otherwise C++ is not
    supported.
    Packages which specify C++11 will still be installed using C++11.
    C++14 compilers may give deprecation warnings, most often for
    std::random_shuffle (deprecated in C++14 and removed in C++17).
    Either specify C++11 (see 'Writing R Extensions') or modernize
    the code and if needed specify C++14.  The latter has been
    supported since R 3.4.0 so the package's DESCRIPTION would need
    to include something like
    Depends: R (&gt;= 3.4)
  PACKAGE INSTALLATION on Windows:
  * R CMD INSTALL and R CMD SHLIB make use of their flag --use-LTO
    when the LTO_OPT make macro is set in file etc/${R_ARCH}/Makeconf
    or in a personal/site Makevars file.  (For details see 'Writing R
    Extensions' SS4.5.)
    This provides a valuable check on code consistency.  It does work
    with GCC 8.3 as in Rtools40, but that does not detect everything
    the CRAN checks with current GCC do.
  PACKAGE INSTALLATION on macOS:
  * The default personal library directory on builds with
  - -enable-aqua (including CRAN builds) now differs by CPU type,
    one of
    ~/Library/R/x86_64/x.y/library
    ~/Library/R/arm64/x.y/library
    This uses the CPU type R (and hence the packages) were built for,
    so when a x86_64 build of R is run under Rosetta emulation on an
    arm64 Mac, the first is used.
  UTILITIES:
  * R CMD check can now scan package functions for bogus return
    statements, which were possibly intended as return() calls (wish
    of PR#17180, patch by Sebastian Meyer). This check can be
    activated via the new environment variable
    _R_CHECK_BOGUS_RETURN_, true for --as-cran.
  * R CMD build omits tarballs and binaries of previous builds from
    the top-level package directory.  (PR#17828, patch by Sebastian
    Meyer.)
  * R CMD check now runs sanity checks on the use of LazyData, for
    example that a data directory is present and that
    LazyDataCompression is not specified without LazyData and has a
    documented value.  For packages with large LazyData databases
    without specifying LazyDataCompression, there is a reference to
    the code given in 'Writing R Extensions' SS1.1.6 to test the
    choice of compression (as in all the CRAN packages tested a
    non-default method was preferred).
  * R CMD build removes LazyData and LazyDataCompression fields from
    the DESCRIPTION file of packages without a data directory.
  ENCODING-RELATED CHANGES:
  * The parser now treats \Unnnnnnnn escapes larger than the upper
    limit for Unicode points (\U10FFFF) as an error as they cannot be
    represented by valid UTF-8.
    Where such escapes are used for outputting non-printable
    (including unassigned) characters, 6 hex digits are used (rather
    than 8 with leading zeros).  For clarity, braces are used, for
    example \U{0effff}.
  * The parser now looks for non-ASCII spaces on Solaris (as
    previously on most other OSes).
  * There are warnings (including from the parser) on the use of
    unpaired surrogate Unicode points such as \uD834.  (These cannot
    be converted to valid UTF-8.)
  * Functions nchar(), tolower(), toupper() and chartr() and those
    using regular expressions have more support for inputs with a
    marked Latin-1 encoding.
  * The character-classification functions used (by default) to
    replace the system iswxxxxx functions on Windows, macOS and AIX
    have been updated to Unicode 13.0.0.
    The character-width tables have been updated to include new
    assignments in Unicode 13.0.0.
  * The code for evaluating default (extended) regular expressions
    now uses the same character-classification functions as the rest
    of R (previously they differed on Windows, macOS and AIX).
  * There is a build-time option to replace the system's
    wide-character wctrans C function by tables shipped with R: use
    configure option --with-internal-towlower or (on Windows)
  - DUSE_RI18N_CASE in CFLAGS when building R.  This may be needed
    to allow tolower() and toupper() to work with Unicode characters
    beyond the Basic Multilingual Plane where not supported by system
    functions (e.g. on Solaris where it is the new default).
  * R is more careful when truncating UTF-8 and other multi-byte
    strings that are too long to be printed, passed to the system or
    libraries or placed into an internal buffer.  Truncation will no
    longer produce incomplete multibyte characters.
  DEPRECATED AND DEFUNCT:
  * Function plclust() from the package stats and
    package.dependencies(), pkgDepends(), getDepList(),
    installFoundDepends(), and vignetteDepends() from package tools
    are defunct.
  * Defunct functions checkNEWS() and readNEWS() from package tools
    and CRAN.packages() from utils have been removed.
  * R CMD config CXXCPP is defunct (it was deprecated in R 3.6.2).
  * parallel::detectCores() drops support for Irix (retired in 2013).
  * The LINPACK argument to chol.default(), chol2inv(),
    solve.default() and svd() has been defunct since R 3.1.0.  It was
    silently ignored up to R 4.0.3 but now gives an error.
  * Subsetting/indexing, such as ddd[*] or ddd$x on a DOTSXP
    (dot-dot-dot) object ddd has been disabled; it worked by accident
    only and was undocumented.
  BUG FIXES:
  * Many more C-level allocations (mainly by malloc and strdup) are
    checked for success with suitable alternative actions.
  * Bug fix for replayPlot(); this was turning off graphics engine
    display list recording if a recorded plot was replayed in the
    same session.  The impact of the bug became visible if resize the
    device after replay OR if attempted another savePlot() after
    replay (empty display list means empty screen on resize or empty
    saved plot).
  * R CMD check etc now warn when a package exports non-existing S4
    classes or methods, also in case of no "methods" presence.
    (Reported by Alex Bertram; reproducible example and patch by
    Sebastian Meyer in PR#16662.)
  * boxplot() now also accepts calls for labels such as ylab, the
    same as plot().  (Reported by Marius Hofert.)
  * The help page for xtabs() now correctly states that addNA is
    setting na.action = na.pass among others.  (Reported as PR#17770
    by Thomas Soeiro.)
  * The R CMD check &lt;pkg&gt; gives a longer and more comprehensible
    message when DESCRIPTION misses dependencies, e.g., in Imports:.
    (Thanks to the contributors of PR#17179.)
  * update.default() now calls the generic update() on the formula to
    work correctly for models with extended formulas.  (As reported
    and suggested by Neal Fultz in PR#17865.)
  * The horizontal position of leaves in a dendrogram is now correct
    also with center = FALSE.  (PR#14938, patch from Sebastian
    Meyer.)
  * all.equal.POSIXt() no longer warns about and subsequently ignores
    inconsistent "tzone" attributes, but describes the difference in
    its return value (PR#17277).  This check can be disabled _via_
    the new argument check.tzone = FALSE as suggested by Sebastian
    Meyer.
  * as.POSIXct() now populates the "tzone" attribute from its tz
    argument when x is a logical vector consisting entirely of NA
    values.
  * x[[2^31]] &lt;- v now works.  (Thanks to the report and patch by
    Suharto Anggono in PR#17330.)
  * In log-scale graphics, axis() ticks and label positions are now
    computed more carefully and symmetrically in their range,
    typically providing _more_ ticks, fulfilling wishes in PR#17936.
    The change really corresponds to an improved axisTicks() (package
    grDevices), potentially influencing grid and lattice, for
    example.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now correct to at
    least five digits where it was catastrophically wrong,
    previously.
  * sum(df) and similar "Summary"- and "Math"-group member functions
    now work for data frames df with logical columns, notably also of
    zero rows.  (Reported to R-devel by Martin "b706".)
  * unsplit() had trouble with tibbles due to unsound use of rep(NA,
    len)-indexing, which should use NA_integer_ (Reported to R-devel
    by Mario Annau.)
  * pnorm(x, log.p = TRUE) underflows to -Inf slightly later.
  * show(&lt;hidden S4 generic&gt;) prints better and without quotes for
    non-hidden S4 generics.
  * read.table() and relatives treated an "NA" column name as missing
    when check.names = FALSE PR#18007.
  * Parsing strings containing UTF-16 surrogate pairs such as
    "\uD834\uDD1E" works better on some (uncommon) platforms.
    sprintf("%X", utf8ToInt("\uD834\uDD1E")) should now give "1D11E"
    on all platforms.
  * identical(x,y) is no longer true for differing DOTSXP objects,
    fixing PR#18032.
  * str() now works correctly for DOTSXP and related exotics, even
    when these are doomed.
    Additionally, it no longer fails for lists with a class and
    "irregular" method definitions such that e.g. lapply(*) will
    necessarily fail, as currently for different igraph objects.
  * Too long lines in environment files (e.g. Renviron) no longer
    crash R. This limit has been increased to 100,000 bytes.
    (PR#18001.)
  * There is a further workaround for FreeType giving incorrect
    italic font faces with cairo-based graphics devices on macOS.
  * add_datalist(*, force = TRUE) (from package tools) now actually
    updates an existing data/datalist file for new content.  (Thanks
    to a report and patch by Sebastian Meyer in PR#18048.)
  * cut.Date() and cut.POSIXt() could produce an empty last interval
    for breaks = "months" or breaks = "years".  (Reported as PR#18053
    by Christopher Carbone.)
  * Detection of the encoding of 'regular' macOS locales such as
    en_US (which is UTF-8) had been broken by a macOS change:
    fortunately these are now rarely used with en_US.UTF-8 being
    preferred.
  * sub() and gsub(pattern, repl, x, *) now keep attributes of x such
    as names() also when pattern is NA (PR#18079).
  * Time differences ("difftime" objects) get a replacement and a
    rep() method to keep "units" consistent.  (Thanks to a report and
    patch by Nicolas Bennett in PR#18066.)
  * The \RdOpts macro, setting defaults for \Sexpr options in an Rd
    file, had been ineffective since R 2.12.0: it now works again.
    (Thanks to a report and patch by Sebastian Meyer in PR#18073.)
  * mclapply and pvec no longer accidentally terminate parallel
    processes started before by mcparallel or related calls in
    package parallel (PR#18078).
  * grep and other functions for evaluating (extended) regular
    expressions handle in Unicode also strings not explicitly flagged
    UTF-8, but flagged native when running in UTF-8 locale.
  * Fixed a crash in fifo implementation on Windows (PR#18031).
  * Binary mode in fifo on Windows is now properly detected from
    argument open (PR#15600, PR#18031).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1622808000">- The line %{__install} -m 755 -d %{_infodir}
  no longer works in TW or Factory.
  But without that line it works everywhere. So this instruction
  was commented out of the spec file.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1628596800">- CHANGES IN R 4.1.1:
  NEW FEATURES:
  * require(pkg, quietly = TRUE) is quieter and in particular does
    not warn if the package is not found.
  DEPRECATED AND DEFUNCT:
  * Use of ftp:// URIs should be regarded as deprecated, with
    on-going support confined to method = "libcurl" and not routinely
    tested.  (Nowadays no major browser supports them.)
  * The non-default method = "internal" is deprecated for http:// and
    ftp:// URIs for both download.file and url.
  * On Windows, method = "wininet" is deprecated for http://,
    https:// and ftp:// URIs for both download.file and url.  (A
    warning is only given for ftp://.)
    For ftp:// URIs the default method is now "libcurl" if available
    (which it is on CRAN builds).
    method = "wininet" remains the default for http:// and https://
    URIs but if libcurl is available, using method = "libcurl" is
    preferred.
  INSTALLATION:
  * make check now works also without a LaTeX installation.  (Thanks
    to Sebastian Meyer's PR#18103.)
  BUG FIXES:
  * make check-devel works again in an R build configured with
  - -without-recommended-packages.
  * qnbinom(p, size, mu) for large size/mu is correct now in a range
    of cases (PR#18095); similarly for the (size, prob)
    parametrization of the negative binomial.  Also qpois() and
    qbinom() are better and or faster for extreme cases.  The
    underlying C code has been modularized and is common to all four
    cases of discrete distributions.
  * gap.axis is now part of the axis() arguments which are passed
    from bxp(), and hence boxplot().  (Thanks to Martin Smith's
    report and suggestions in PR#18109.)
  * .First and .Last can again be set from the site profile.
  * seq.int(from, to, *) and seq.default(..) now work better in large
    range cases where from-to is infinite where the two boundaries
    are finite.
  * all.equal(x,y) now returns TRUE correctly also when several
    entries of abs(x) and abs(y) are close to .Machine$double.xmax,
    the largest finite numeric.
  * model.frame() now clears the object bit when removing the class
    attribute of a value via na.action (PR#18100).
  * charClass() now works with multi-character strings on Windows
    (PR#18104, fixed by Bill Dunlap).
  * encodeString() on Solaris now works again in Latin-1 encoding on
    characters represented differently in UTF-8.  Support for
    surrogate pairs on Solaris has been improved.
  * file.show() on Windows now works with non-ASCII path names
    representable in the current native encoding (PR#18132).
  * Embedded R on Windows can now find R home directory via the
    registry even when installed only for the current user
    (PR#18135).
  * pretty(x) with finite x now returns finite values also in the
    case where the extreme x values are close in size to the maximal
    representable number .Machine$double.xmax.
    Also, it's been tweaked for very small ranges and when a boundary
    is close (or equal) to zero; e.g., pretty(c(0,1e-317)) no longer
    has negative numbers, currently still warning about a very small
    range, and pretty(2^-(1024 - 2^-1/(c(24,10)))) is more accurate.
  * The error message for not finding vignette files when weaving has
    correct file sizes now. (Thanks to Sebastian Meyer's PR#18154.)
  * dnbinom(20, &lt;large&gt;, 1) now correctly gives 0, and similar cases
    are more accurate with underflow precaution.  (Reported by Francisco Vera Alcivar in PR#18072.)</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635163200">- repaired https://bugzilla.suse.com/show_bug.cgi?id=1191380
  (rpmacros now go to rpmmacrodir)
- minor clean-ups in spec file</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635768000">- CHANGES IN R 4.1.2:
  C-LEVEL FACILITIES:
  * The workaround in headers R.h and Rmath.h (using namespace std;)
    for the Oracle Developer Studio compiler is no longer needed now
    C++11 is required so has been removed.  A couple more usages of
    log() (which should have been std::log()) with an int argument
    are reported on Solaris.
  * The undocumented limit of 4095 bytes on messages from the
    S-compatibility macros PROBLEM and MESSAGE is now documented and
    longer messages will be silently truncated rather than
    potentially causing segfaults.
  * If the R_NO_SEGV_HANDLER environment variable is non-empty, the
    signal handler for SEGV/ILL/BUS signals (which offers recovery
    user interface) is not set. This allows more reliable debugging
    of crashes that involve the console.
  DEPRECATED AND DEFUNCT:
  * The legacy S-compatibility macros PROBLEM, MESSAGE, ERROR, WARN,
    WARNING, RECOVER, ... are deprecated and will be hidden in R
    4.2.0. R's native interface of Rf_error and Rf_warning has long
    been preferred.
  BUG FIXES:
  * .mapply(F, dots, .) no longer segfaults when dots is not a list
    and uses match.fun(F) as always documented; reported by Andrew
    Simmons in PR#18164.
  * hist(&lt;Date&gt;, ...) and hist(&lt;POSIXt&gt;, ...)  no longer pass
    arguments for rect() (such as col and density) to axis().
    (Thanks to Sebastian Meyer's PR#18171.)
  * \Sexpr{ch} now preserves Encoding(ch). (Thanks to report and
    patch by Jeroen Ooms in PR#18152.)
  * Setting the RNG to "Marsaglia-Multicarry" e.g., by RNGkind(), now
    warns in more places, thanks to Andr'e Gillibert's report and
    patch in PR#18168.
  * gray(numeric(), alpha=1/2) no longer segfaults, fixing PR#18183,
    reported by Till Krenz.
  * Fixed dnbinom(x, size=&lt;very_small&gt;, .., log=TRUE) regression,
    reported by Martin Morgan.
  * as.Date.POSIXlt(x) now keeps names(x), thanks to Davis Vaughan's
    report and patch in PR#18188.
  * model.response() now strips an "AsIs" class typically, thanks to
    Duncan Murdoch's report and other discussants in PR#18190.
  * try() is considerably faster in case of an error and long call,
    as e.g., from some do.call().  Thanks to Alexander Kaever's
    suggestion posted to R-devel.
  * qqline(y = &lt;object&gt;) such as y=I(.), now works, see also
    PR#18190.
  * Non-integer mgp par() settings are now handled correctly in
    axis() and mtext(), thanks to Mikael Jagan and Duncan Murdoch's
    report and suggestion in PR#18194.
  * formatC(x) returns length zero character() now, rather than ""
    when x is of length zero, as documented, thanks to Davis
    Vaughan's post to R-devel.
  * removeSource(fn) now retains (other) attributes(fn).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1647000000">- CHANGES IN R 4.1.3:
  NEW FEATURES:
  * The default version of Bioconductor has been changed to 3.14.
    (This is used by setRepositories and the menus in GUIs.)
  UTILITIES:
  * R CMD check --as-cran has a workaround for a bug in versions of
    file up to at least 5.41 which mis-identify DBF files last
    changed in 2022 as executables.
  C-LEVEL FACILITIES:
  * The legacy S-compatibility macros SINGLE_* in R_ext/Constants.h
    (included by R.h) are deprecated and will be removed in R 4.2.0.
  BUG FIXES:
  * Initialization of self-starting nls() models with initialization
    functions following the pre-R-4.1.0 API (without the ...
    argument) works again for now, with a deprecation warning.
  * Fixed quoting of ~autodetect~ in Java setting defaults to avoid
    inadvertent user lookup due to leading ~, reported in PR#18231 by
    Harold Gutch.
  * substr(., start, stop) &lt;- v now treats _negative_ stop values
    correctly.  Reported with a patch in PR#18228 by Brodie Gaslam.
  * Subscripting an array x without dimnames by a
    length(dim(x))-column character matrix gave "random" non-sense,
    now an error; reported in PR#18244 by Mikael Jagan.
  * ...names() now matches names(list(...)) closely, fixing PR#18247.
  * all.equal(*, scale = s) now works as intended when length(s) &gt; 1,
    partly thanks to Michael Chirico's PR#18272.
  * print(x) for long vectors x now also works for named atomic
    vectors or lists and prints the correct number when reaching the
    getOption("max.print") limit; partly thanks to a report and
    proposal by Hugh Parsonage to the R-devel list.
  * all.equal(&lt;selfStart&gt;, *) no longer signals a deprecation
    warning.
  * reformulate(*, response=r) gives a helpful error message now when
    length(r) &gt; 1, thanks to Bill Dunlap's PR#18281.
  * Modifying globalCallingHandlers inside withCallingHandlers() now
    works or fails correctly, thanks to Henrik Bengtsson's PR#18257.
  * hist(&lt;Date&gt;, breaks = "days") and hist(&lt;POSIXt&gt;, breaks = "secs")
    no longer fail for inputs of length 1.
  * qbeta(.001, .9, .009) and similar cases now converge correctly
    thanks to Ben Bolker's report in PR#17746.
  * window(x, start, end) no longer wrongly signals "'start' cannot
    be after 'end'", fixing PR#17527 and PR#18291.
  * data() now checks that its (rarely used) list argument is a
    character vector - a couple of packages passed other types and
    gave incorrect results.
  * which() now checks its arr.ind argument is TRUE rather coercing
    to logical and taking the first element - which gave incorrect
    results in package code.
  * model.weights() and model.offset() more carefully extract their
    model components, thanks to Ben Bolker and Tim Taylor's R-devel
    post.
  * list.files(recursive = TRUE) now shows all broken symlinks
    (previously, some of them may have been omitted, PR#18296).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1650628800">- CHANGES IN R 4.2.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * The formula method of aggregate() now matches the generic in
    naming its first argument x (resolving PR#18299 by Thomas
    Soeiro).
    This means that calling aggregate() with a formula as a named
    first argument requires name formula in earlier versions of R and
    name x now, so portable code should not name the argument (code
    in many packages did).
  * Calling &amp;&amp; or || with either argument of length greater than one
    now gives a warning (which it is intended will become an error).
  * Calling if() or while() with a condition of length greater than
    one gives an error rather than a warning.  Consequently,
    environment variable _R_CHECK_LENGTH_1_CONDITION_ no longer has
    any effect.
  * Windows users should consult the WINDOWS section below for some
    profound changes including
  * Support for 32-bit builds has been dropped.
  * UTF-8 locales are used where available.
  * The default locations for the R installation and personal
    library folder have been changed.
    Thanks to Tomas Kalibera for months of work on the Windows port
    for this release.
  NEW FEATURES:
  * matrix(x, n, m) now warns in more cases where length(x) differs
    from n * m, as suggested by Abby Spurdle and Wolfgang Huber in
    Feb 2021 on the R-devel mailing list.
    This warning can be turned into an error by setting environment
    variable _R_CHECK_MATRIX_DATA_ to TRUE: R CMD check --as-cran
    does so unless it is already set.
  * Function file_test() in package utils gains tests for symlinks,
    readability and writability.
  * capabilities("libxml") is now false.
    The description of capabilities("http/ftp") now reflects that it
    refers to the default method, no longer the internal one.
  * simplify2array() gains an except argument for controlling the
    exceptions used by sapply().
  * Environment variables R_LIBS_USER and R_LIBS_SITE are both now
    set to the R system default if unset or empty, and can be set to
    NULL to indicate an empty list of user or site library
    directories.
  * The warning for axis()(-like) calls in cases of relatively small
    ranges (typically in log-scale situations) is slightly improved
    _and_ suppressed from explicit calls to .axisPars() as has always
    been the intention.
  * The contrasts setter function `contrasts&lt;-` gains an explicit
    default how.many = NULL rather than just using missing(how.many).
  * grid.pretty() gains a new optional argument n = 5.
  * There is a new function .pretty() with option bounds as a
    technical-utility version of pretty().  It and pretty() gain a
    new argument f.min with a better than back-compatible default.
  * Function grDevices::axisTicks() and related functions such as
    graphics::axis() work better, notably for the log scale; partly
    because of the pretty() improvements, but also because care is
    taken e.g., when ylim is finite but diff(ylim) is infinite.
  * nclass.FD() gains a digits option.
  * The R Mathlib internal C function bd0() (called indirectly from a
    dozen probability density and distribution functions such as
    dpois(), dbinom(), dgamma(), pgamma() _etc_) has been
    complemented by a more sophisticated and (mostly) more accurate C
    function ebd0(), currently called only by internal dpois_raw()
    improving accuracy for R level dpois() and potentially others
    calling it such as dnbinom(), dgamma() or pgamma().  (Thanks to
    Morten Welinder's PR#15628.)
  * write.ftable() gains sep = " " argument as suggested by Thomas
    Soeiro.
  * The names of the locale categories supported by R's
    Sys.getlocale() and Sys.setlocale() are now provided by variable
    .LC.categories in the base namespace.
  * The Date and POSIXt methods for hist() and the histogram method
    for plot() now also use the new default col = "lightgray" in
    consistency with the corresponding change to hist()'s default for
    R 4.0.0.
  * hist.default() gains new fuzz argument, and the histogram plot
    method no longer uses fractional axis ticks when displaying
    counts ("Frequency").
  * mapply() and hence Map() now also obey the "max-or-0-if-any"
    recycling rule, such that, e.g., Map(`+`, 1:3, 1[0]) is valid
    now.
  * as.character(&lt;obj&gt;) for "hexmode" or "octmode" objects now
    fulfils the important basic rule as.character(x)[j] ===
    as.character(x[j]).
  * The set utility functions, notably intersect() have been tweaked
    to be more consistent and symmetric in their two set arguments,
    also preserving a common mode.
  * substr(ch, start,end) &lt;- new now e.g., preserves names(ch); ditto
    for substring(), thanks to a patch from Brodie Gaslam.
  * plot(&lt;lm&gt;) gains a extend.ylim.f argument, in partial response to
    PR#15285; further PR#17784 is fixed thanks to several
    contributors and a patch by Elin Waring.  The Cook's dist
    contours get customizable via cook.col and cook.lty with a
    different default color and their legend is nicer by default and
    customizable via cook.legendChanges.
  * Attempting to subset an object that is not subsettable now
    signals an error of class notSubsettableError. The
    non-subsettable object is contained in the object field of the
    error condition.
  * Subscript-out-of-bounds errors are now signaled as errors of
    class subscriptOutOfBoundsError.
  * Stack-overflow errors are now signaled as errors inheriting from
    class stackOverflowError. See ?stackOverflowError for more
    details.
  * New partly experimental Sys.setLanguage() utility, solving the
    main problem of PR#18055.
  * gettext() and gettextf() get a new option trim = TRUE which when
    set to false allows translations for strings such as "Execution
    halted\n" typical for C code.
  * An experimental implementation of hash tables is now available.
    See ?hashtab for more details.
  * identical() gains a extptr.as.ref argument for requesting that
    external pointer objects be compared as reference objects.
  * reorder() gets an argument decreasing which it passes to sort()
    for level creation; based on the wish and patch by Thomas Soeiro
    in PR#18243.
  * as.vector() gains a data.frame method which returns a simple
    named list, also clearing a long standing 'FIXME' to enable
    as.vector(&lt;data.frame&gt;, mode="list").  This breaks code relying
    on as.vector(&lt;data.frame&gt;) to return the unchanged data frame.
  * legend() is now vectorized for arguments cex, x.intersp, and
    text.width.  The latter can now also be specified as a vector
    (one element for each column of the legend) or as NA for
    computing a proper column wise maximum value of strwidth(legend).
    The argument y.intersp can be specified as a vector with one
    entry for each row of the legend.
    legend() also gains new arguments title.cex and title.font.
    Thanks to Swetlana Herbrandt.
  * Deparsing no longer remaps attribute names dim, dimnames, levels,
    names and tsp to historical S-compatible names (which structure()
    maps back).
  * sample() and sample.int() have additional sanity checks on their
    size and n arguments.
    all.equal.numeric() gains a sanity check on its tolerance
    argument - calling all.equal(a, b, c) for three numeric vectors
    is a surprisingly common error.
    mean(na.rm =), rank(na.last =), barplot(legend.text =),
    boxplot(), contour(drawlabels =), polygon(border =) and
    methods::is(class2 =) have more robust sanity checks on their
    arguments.
    R CMD Rd2pdf (used by R CMD check) has a more robust sanity check
    on the format of \alias{} commands.
  * psigamma(x, deriv) for negative x now also works for deriv = 4
    and 5; their underlying C level dpsifn() is documented in
    'Writing R Extensions'.
  * The HTML help system now uses HTML5 (wish of PR#18149).
  * ks.test() now provides exact p-values also with ties and MC
    p-values in the two-sample (Smirnov) case.  By Torsten Hothorn.
  * ks.test() gains a formula interface, with y ~ 1 for the
    one-sample (Kolmogorov) test and y ~ group for the two-sample
    (Smirnov) test.  Contributed by Torsten Hothorn.
  * The return value from ks.test() now has class c("ks.test",
    "htest") - packages using try() need to take care to use
    inherits() and not == on the class.
  * New functions psmirnov(), qsmirnov() and rsmirnov() in package
    stats implementing the asymptotic and exact distributions of the
    two-sample Smirnov statistic.
  * iconv() now allows sub = "c99" to use C99-style escapes for UTF-8
    inputs which cannot be converted to encoding to.
  * In a forward pipe |&gt; expression it is now possible to use a named
    argument with the placeholder _ in the rhs call to specify where
    the lhs is to be inserted.  The placeholder can only appear once
    on the rhs.
  * The included LAPACK sources have been updated to version 3.10.0,
    except for the four Fortran 77 routines which 3.10.0 has
    re-implemented in Fortran 90 (where the older versions have been
    retained as the R build process does not support Fortran 90).
  * path.expand() and most other uses of tilde expansion now warn if
    a path would be too long if expanded.  (An exception is
    file.exists(), which silently returns false.)
  * trunc(&lt;Date&gt;, *) now supports units = "months" or "years" for
    consistency with the POSIXt method, thanks to Dirk Eddelbuettel's
    proposal in PR#18099.
  * list2DF() now checks that its arguments are of the same length,
    rather than use recycling.
  * The HTML help system has several new features: LaTeX-like math
    can be typeset using either KaTeX or MathJax, usage and example
    code is highlighted using Prism, and for dynamic help the output
    of examples and demos can be shown within the browser if the
    knitr package is installed. These features can be disabled by
    setting the environment variable _R_HELP_ENABLE_ENHANCED_HTML_ to
    a false value.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 15
    and so packages that provide graphics devices should be
    reinstalled.
  * The grid package now allows the user to specify a "vector" of
    pattern fills.  The fill argument to gpar() accepts a list of
    gradients and/or patterns and the functions linearGradient(),
    radialGradient(), and pattern() have a new group argument.
    Points grobs (data symbols) can now also have a pattern fill.
    The grobCoords() function now returns a more informative and
    complex result.
  * The grid package has new functions for drawing isolated groups:
    grid.group(), grid.define(), and grid.use().  These functions add
    compositing operators and affine transformations to R's graphics
    capabilities.
    The grid package also has new functions for stroking and filling
    paths: grid.stroke(), grid.fill(), and grid.fillStroke().
    A new function as.path() allows the user to specify the fill rule
    for a path that is to be used for clipping, stroking, or filling;
    available options are "winding" and "evenodd".  A new function
    as.mask() allows the user to specify the type of a mask;
    available options are "alpha" and "luminance".
    These new features are only supported so far (at most) on the
    Cairo-based graphics devices and on the pdf() device.
  * dev.capabilities() reports on device support for the new
    features.
  * par() now warns about unnamed non-character arguments to prevent
    misuse such as {usr &lt;- par("usr"); par(usr)}.
  INSTALLATION:
  * Facilities for accessing ftp:// sites are no longer tested
    (except _pro tem_ for curlGetHeaders()) as modern browsers have
    removed support.
  * R can now be built with DEFS = -DSTRICT_R_HEADERS .
  PACKAGE INSTALLATION:
  * R CMD INSTALL no longer tangles vignettes. This completes an R
    CMD build change in R 3.0.0 and affects packages built before R
    3.0.2. Such packages should be re-made with R CMD build to have
    the tangled R code of vignettes shipped with the tarball.
  * USE_FC_LEN_T will become the default: this uses the correct
    prototypes for Fortran BLAS/LAPACK routines called from C/C++,
    and requires adjustment of most such calls - see 'Writing R
    Extensions' SS6.6.2.  (This has been supported since R 3.6.2.)
  * Package installation speed for packages installed with
    keep.source has been improved. This resolve the issue reported by
    Ofek Shilon in PR#18236.
  UTILITIES:
  * R CMD check can optionally report files/directories left behind
    in home, /tmp (even though TMPDIR is set) and other directories.
    See the "R Internals" manual for details.
  * R CMD check now reports byte-compilation errors during
    installation.  These are not usually fatal but may result in
    parts of the package not being byte-compiled.
  * _R_CHECK_DEPENDS_ONLY_ can be applied selectively to examples,
    tests and/or vignettes in R CMD check: see the "R Internals"
    manual.
  * _R_CHECK_SRC_MINUS_W_IMPLICIT_ now defaults to true: recent
    versions of Apple clang on macOS have made implicit function
    declarations in C into a compilation error.
  * R CMD check --as-cran makes use of the environment variable
    AUTORECONF.  See the "R Internals" manual SS8 for further details.
  * R CMD check --use-valgrind also uses valgrind when re-building
    vignettes as some non-Sweave vignettes unhelpfully comment out
    all their code when R CMD check runs vignettes.
  * Errors in re-building vignettes (unless there are LaTeX errors)
    are reported by R CMD check as ERROR rather than WARNING when
    running vignettes has been skipped (as it frequently is in CRAN
    checks and by --as-cran).
  * R CMD Rd2pdf gains a --quiet option that is used by R CMD build
    when building the PDF package manual.
  * R CMD Rd2pdf now always runs LaTeX in batch mode, consistent with
    Texinfo &gt;= 6.7. The --batch option is ignored.
  * R CMD build and R CMD check now include the Rd file name and line
    numbers in the error message of an \Sexpr evaluation failure.
  * For packages using the \doi Rd macro (now an install-time \Sexpr)
    but no other dynamic Rd content, R CMD build now produces a
    smaller tarball and is considerably faster - skipping temporary
    package installation.
  C-LEVEL FACILITIES:
  * The non-API header R_ext/R-ftp-http.h is no longer provided, as
    the entry points it covered are now all defunct.
  * A number of non-API declarations and macro definitions have been
    moved from the installed header Rinternals.h to the internal
    header Defn.h. Packages that only use entry points and
    definitions documented to be part of the API as specified in
    'Writing R Extensions' SS6 should not be affected.
  * The macro USE_RINTERNALS no longer has any effect when compiling
    package code.  Packages which also use R_NO_REMAP will need to
    ensure that the remapped names are used for calls to API
    functions that were formerly also made available as macros.
  * The deprecated legacy S-compatibility macros PROBLEM, MESSAGE,
    ERROR, WARN, WARNING, RECOVER, ... are no longer defined in
    R_exts/RS.h (included by R.h).  Replace these by calls to
    Rf_error and Rf_warning (defined in header R_ext/Error.h included
    by R.h).
    Header R_ext/RS.h no longer includes R_ext/Error.h.
  * Header R_ext/Constants.h (included by R.h) when included from C++
    now includes the C++ header cfloat rather than the C header
    float.h (now possible as C++11 is required).
  * The legacy S-compatibility macros DOUBLE_* in R_ext/Constants.h
    (included by R.h) are deprecated.
  * The deprecated S-compatibility macros SINGLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * R_Calloc, R_Free and R_Realloc are preferred to their unprefixed
    forms and error messages now use the prefix. These forms were
    introduced in R 3.4.0 and are available even when
    STRICT_R_HEADERS is defined.
  * rmultinom has been documented in 'Writing R Extensions' SS6 so is
    now part of the R API.
  * Similarly, Rtanpi, called from R level tanpi() is now part of the
    R API.
  * The long-deprecated, undocumented and non-API entry point call_R
    is no longer declared in R_ext/RS.h (included by R.h).
  * The header S.h which has been unsupported since Jan 2016 has been
    removed.  Use R.h instead.
  DEPRECATED AND DEFUNCT:
  * The (non-default and deprecated) method = "internal" for
    download.file() and url() no longer supports http:// nor ftp://
    URIs.  (It is used only for file:// URIs.)
    On Windows, download.file(method = "wininet") no longer supports
    ftp:// URIs.  (It is no longer the default method, which is
    "libcurl" and does.)
    On Windows, the deprecated method = "wininet" now gives a warning
    for http:// and https:// URIs for both download.file() and url().
    (It is no longer the default method.)
  * On Windows, the command-line option --max-mem-size and
    environment variable R_MAX_MEM_SIZE are defunct.  The memory
    allocation limit was important for 32-bit builds, but these are
    no longer supported.
  * default.stringsAsFactors() is now formally deprecated, where that
    was only mentioned on its regular help page, previously.  So it
    now gives a warning if called.
  * unix.time() is defunct now; it had been deprecated since R 3.4.0.
  BUG FIXES:
  * Setting digits = 0 in format(), print.default() (and hence
    typically print()) or options() is again invalid.  Its behaviour
    was platform-dependent, and it is unclear what "zero significant
    digits" should mean (PR#18098).
  * Messages from C code in the cairo section of package grDevices
    are now also offered for translation, thanks to Michael Chirico's
    PR#18123.
  * mean(x) with finite x now is finite also without "long.double"
    capability.
  * R CMD Rd2pdf no longer leaves an empty build directory behind
    when it aborts due to an already existing output file.  (Thanks
    to Sebastian Meyer's PR#18141.)
  * density(x, weights = w, na.rm = TRUE) when anyNA(x) is true, now
    removes weights "in parallel" to x, fixing PR#18151, reported by
    Matthias Gondan.  Additionally, it gets a subdensity option.
  * Conversion of \Sexpr[]{&lt;expR&gt;} to LaTeX or HTML no longer
    produces long blocks of empty lines when &lt;expR&gt; itself contains
    several lines all producing empty output.  Thanks to a report and
    patch by Ivan Krylov posted to R-devel.
  * R CMD build no longer fails if a package vignette uses child
    documents and inst/doc exists.  (Thanks to Sebastian Meyer's
    PR#18156.)
  * When an R documentation ('help' source) file man/foo.Rd in a
    package has \donttest{..} examples with a syntax error, it is now
    signalled as ERROR and with correct line numbers relating to the
  * -Ex.R file, thanks to Duncan Murdoch and Sebastian Meyer's
    reports and patch proposals in PR#17501.
  * Improved determination of the correct translation domain in
    non-base packages, addressing the combination of PR#18092 and
    PR#17998 (#c6) with reports and _augmented_ patch #2904 by
    Suharto Anggono.
    Note that "R-base" is no longer the default domain e.g., for
    top-level calls to gettext(); rather translation needs explicit
    domain = * specification in such cases.
  * identical(attrib.as.set=FALSE) now works correctly with data
    frames with default row names (Thanks to Charlie Gao's PR#18179).
  * txtProgressBar() now enforces a non-zero width for argument char,
    without which no progress can be visible.
  * dimnames(table(d)) is more consistent in the case where d is a
    list with a single component, thanks to Thomas Soeiro's report to
    R-devel.
    Further, table(d1, d2) now gives an error when d1 and d2 are data
    frames as suggested by Thomas in PR#18224.
  * Fix for drawing semi-transparent lines and fills on the native
    Windows graphics device (PR#18219 and PR#16694).  Thanks to Nick
    Ray for helpful diagnosis on Bugzilla.
  * The deparser now wraps sub-expressions such as if(A) ..  with
    parentheses when needed; thanks to Duncan Murdoch's PR#18232 and
    Lionel Henry's patches there.
  * remove.packages() no longer tries to uninstall Priority: base
    packages, thanks to a report and suggestions by Colin Fay in
    PR#18227.
  * win.metafile() now has xpinch and ypinch arguments so that the
    user can override Windows' (potentially wrong) guess at device
    dimensions.
  * x[i] and x[[i]] for non-integer i should now behave in all cases
    as always documented: the index used is equivalent to
    as.integer(i) unless that would overflow where trunc(i) is used
    instead; thanks to Suharto Anggono's report and patch proposals
    in PR#17977.
  * asOneSidedFormula() now associates the resulting formula with the
    global environment rather than the evaluation environment created
    for the call.
  * &lt;bibentry&gt;$name now matches the field name case-insensitively,
    consistent with bibentry() creation and the replacement method.
  * cbind() failed to detect some length mismatches with a mixture of
    time-series and non-time-series inputs.
  * The default LaTeX style file Sweave.sty used by the RweaveLatex
    driver no longer loads the obsolete ae package; thanks to a
    report by Thomas Soeiro in PR#18271.  Furthermore, it now skips
    \usepackage[T1]{fontenc} for engines other than pdfTeX (if
    detected) or if the new [nofontenc] option is used.
  * smooth.spline() now stores its logical cv argument more safely,
    fixing a rare bug when printing, and also stores n.
  * smooth.spline(x,y,*) now computes the cv.crit statistic
    correctly, also when is.unsorted(x), fixing PR#18294.
  * The data.frame method of rbind() now warns when binding
    not-wholly-recycling vectors, by analogy to the default method
    (for matrices).
  * setAs() finds the correct class for name to when multiple
    packages define a class with that name. Thanks to Gabor Csardi
    for the report.
  * Fix for detaching a package when two classes of the same name are
    present in method signatures for the same generic. Thanks to
    Gabor Csardi for the report.
  * match.arg("", c("", "a", "B")) gives a better error message, in
    part from PR#17959, thanks to Elin Waring.
  * R CMD Sweave --clean no longer removes pre-existing files or
    subdirectories (PR#18242).
  * The quartz() device no longer splits polylines into subpaths.
    That has caused narrowly-spaced lines with many points to always
    look solid even when dashed line type was used due to dash phase
    restarts.
  * Deparsing constructs such as quote(1 + `!`(2) + 3) works again as
    before R 3.5.0, thanks to the report and patch in PR#18284 by
    Suharto Anggono.
  * as.list(f) for a factor f now keeps names(f), fixing PR#18309.
  * qbeta(.001, .9, .009) and analogous qf() calls now return a
    correct value instead of NaN or wrongly 1, all with a warning;
    thanks to the report by Ludger Goeminne in PR#18302.
  * plot.lm() failed to produce the plot of residuals vs.  factor
    levels (i.e., which=5 when leverages are constant) for models
    with character predictors (PR#17840).
  * interaction.plot(..., xtick = TRUE) misplaced the x-axis line
    (PR#18305).
  * Not strictly fixing a bug, format()ing and print()ing of
    non-finite Date and POSIXt values NaN and +/-Inf no longer show
    as NA but the respective string, e.g., Inf, for consistency with
    numeric vector's behaviour, fulfilling the wish of PR#18308.
  * R CMD check no longer runs test scripts generated from
    corresponding .Rin files twice and now signals an ERROR if
    processing an .Rin script fails.
  * tools::Rd2txt() used for plain-text help pages now renders \hrefs
    (if tools::Rd2txt_options(showURLs = TRUE)) and \urls with
    percent-encoding and standards-compliant delimiting style (angle
    brackets and no URL: prefix).  \email is now rendered with a
    mailto: prefix.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1655985600">- CHANGES IN R 4.2.1:
  NEW FEATURES:
  * New function utils::findCRANmirror() to find out if a CRAN mirror
    has been selected, otherwise fallback to the main site.  This
    behaves in the same way as tools::CRAN_package_db() and is
    intended for packages wishing to access CRAN for purposes other
    than installing packages.
    The need for this was shown by a day when the main CRAN website
    was offline and a dozen or so packages which had its URL
    hardcoded failed their checks.
  INSTALLATION on a UNIX-ALIKE:
  * The libraries searched for by --with-blas (without a value) now
    include BLIS (after OpenBLAS but before ATLAS).  And on macOS,
    the Accelerate framework (after ATLAS).  (This is patterned after
    the AX_BLAS macro from the Autoconf Archive.)
  * The included LAPACK sources have been updated to 3.10.1.
  UTILITIES:
  * The (full path to) the command tidy to be used for HTML
    validation can be set by environment variable R_TIDYCMD.
  * Setting environment variable _R_CHECK_RD_VALIDATE_RD2HTML_ to a
    false value will override R CMD check --as-cran and turn off HTML
    validation.  This provides a way to circumvent a problematic
    tidy.
    The 2006 version that ships with macOS is always skipped.
  C-LEVEL FACILITIES:
  * The undocumented legacy declarations of Sint, Sfloat, SINT_MAX
    and SINT_MIN in header R.h are deprecated.
  BUG FIXES:
  * fisher.test(d) no longer segfaults for "large" d; fixing PR#18336
    by preventing/detecting an integer overflow reliably.
  * tar(., files=*) now produces correctly the warning about invalid
    uid or gid of files, fixing PR#18344, reported by Martin Morgan.
  * tk_choose.files() with multi = FALSE misbehaved on paths
    containing spaces (PR#18334) (regression introduced in R 4.0.0).
  * sort(x, partial = ind, *) now works correctly notably for the
    non-default na.last = FALSE or TRUE, fixing PR#18335 reported by
    James Edwards.
  * Environment variable _R_CHECK_XREFS_REPOSITORIES_ is only used
    for checking .Rd cross-references in R CMD check (as documented)
    and not for other uses looking for a CRAN mirror.
  * The search for a CRAN mirror when checking packages now uses
    getOption("repos") if that specifies a CRAN mirror, even when it
    does not also specify all three Bioconductor repositories (as was
    previously required).
  * The HTML code generated by tools::Rd2HTML() has been improved to
    pass tidy 5.8.0.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1667217600">- CHANGES IN R 4.2.2:
  NEW FEATURES:
  * tools::Rdiff(useDiff = TRUE) checks for the presence of an
    external diff command and switches to useDiff = FALSE if none is
    found.  This allows R CMD Rdiff to always work.
  * On Windows, environment variable R_LIBCURL_SSL_REVOKE_BEST_EFFORT
    can be used to switch to only 'best-effort' SSL certificate
    revocation checks with the default "libcurl" download method.
    This reduces security, but may be needed for downloads to work
    with MITM proxies (PR#18379).
  * (macOS) The run-time check for libraries from XQuartz for X11 and
    Tcl/Tk no longer uses otool from the Apple Developer Tools
    (PR#18400).
  * The LaTeX style for producing the PDF manuals, Rd.sty, now loads
    the standard amsmath, amsfonts and amssymb packages for greater
    coverage of math commands in the Rd \eqn and \deqn macros.  The
    \mathscr LaTeX command is also provided (via the mathrsfs
    package, if available, or the amsfonts bundle otherwise),
    fulfilling the wish of PR#18398.
  * (Windows) The default format of readClipboard() and
    writeClipboard() has been changed to 13 (CF_UNICODETEXT).
  INSTALLATION on a UNIX-ALIKE:
  * The PDF manuals (if built) can be compacted by the new target
    make compact-pdf (at the top level or in directory doc/manual).
  * There is now configure support for LLVM clang 15 on Linux, which
    defaults to position-independent (PIE) executables whereas
    gfortran does not.
  * Many small changes to ease compilation (and suppress warnings)
    with LLVM clang 15.
  BUG FIXES:
  * Rscript -e would fail if stdin were closed (Reported by Henrik
    Bengtsson.)
  * qt(*, log.p=TRUE) in outer tails no longer produces NaN in its
    final steps, thus fixing PR#18360.
  * tools::Rd2latex() now escapes hashes and ampersands when writing
    URLs, fixing LaTeX errors with such URLs in \tabular.
  * When isGeneric(f, fdef=*) is used with mismatching names, the
    warning is better understandable; reported (with fix) in PR#18370
    by Gabe Becker.
  * poly(x, n) now works again (and is now documented) when x is a
    "Date" or "POSIXct" object, or of another class while fulfilling
    mode(x) == "numeric".  This also enables poly(x, *, raw=TRUE) for
    such variables.  Reported by Michael Chirico to R-devel.
  * write.table(), write.csv() and write.csv2() restore their
    numerical precision (internal equivalent of digits = 15) after an
    interrupt (PR#18384).
  * One can now read also byte FF from a clipboard connection
    (PR#18385).
  * source("") and source(character()) now give more helpful error
    messages.
  * R CMD check --as-cran set _R_CHECK_TIMINGS_ too late to have the
    intended effect.
  * as.POSIXlt(x) now also works with very large dates x, fixing
    PR#18401 reported by Hannes M"uhleisen.
  * Files can now be extracted even from very large zip archives
    (PR#18390, thanks to Martin Jakt).
  * Non-finite objects of class "POSIXlt" are now correctly coerced
    to classes "Date" and "POSIXct"; following up on the extension to
    format() them correctly.
  * Added methods for is.finite(), is.infinite() and is.nan() for
    "POSIXlt" date-time objects.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1678881600">- CHANGES IN R 4.2.3:
  C-LEVEL FACILITIES:
  * The definition of DL_FUNC in R_ext/Rdynload.h has been changed to
    be fully C-compliant.  This means that functions loaded _via_ for
    example R_GetCCallable need to be cast to an appropriate type if
    they have any arguments.
  * .Machine has a new element sizeof.time_t to identify old systems
    with a 32-bit type and hence a limited range of date-times (and
    limited support for dates millions of years from present).
  PACKAGE INSTALLATION:
  * (Windows) The default C++ standard had accidentally been left at
    C++11 when it was changed to C++14 on Unix.
  BUG FIXES:
  * As "POSIXlt" objects may be "partially filled" and their list
    components meant to be recycled, length() now is the length of
    the longest component.
  * as.POSIXlt.Date() could underflow for dates in the far past (more
    than half a million years BCE).
  * as.Date.POSIXlt(x) would return "1970-01-01" instead of NA in R
    4.2.2, e.g., for
    x &lt;- as.POSIXlt(c("2019-01-30","2001-1-1"))
    x$mon &lt;- c(0L, NA); as.Date(x)
  * R CMD check failed to apply enabled _R_CHECK_SUGGESTS_ONLY_ to
    examples and vignettes (regression in R 4.2.0).
  * R CMD check did not re-build vignettes in separate processes by
    default (regression in R 4.2.0).
  * Running examples from HTML documentation now restores previous
    knitr settings and options (PR#18420).
  * Quartz: fonts are now located using Core Graphics API instead of
    deprecated ATS which is no longer supported in the macOS 13 SDK
    (PR#18426).  This also addresses an issue where the currently
    used font in the Quartz device context was not correctly
    retained.
  * (Windows) Math symbols in text drawing functions are again
    rendered correctly (PR#18440).  This fixes a regression in R
    4.2.1 caused by a fix in PR#18382 which uncovered an issue in
    GraphApp due to which the symbol charset was not used with TT
    Symbol font face.
  * (Windows) Installing a package with a src/Makefile.{win,ucrt}
    file includes ~/.R/Makevars.win64 in the search for user
    makevars, as documented in "R Installation and Administration"
    and done for packages with a src/Makevars.{win,ucrt} file.
  * format(&lt;POSIXlt_w/_unbalanced_sec&gt;, "....%OS&lt;n&gt;") with n &gt; 0 no
    longer accidentally uses the unbalanced seconds, thanks to
    Suharto Anggono's report (including patch) in PR#18448.
  * solve.default(a, b) works around issues with some versions of
    LAPACK when a contains NA or NaN values.
  * When UseMethod() cannot dispatch, it no longer segfaults
    producing the error message in case of a long class(), thanks to
    Joris Vankerschaver's report (including patch) in PR#18447.
  * When example(foo, ..) produces graphics on an interactive device
    it needs to open itself, it now leaves devAskNewPage() unchanged
    even when it was FALSE, thus fixing a 14 years old '&lt;FIXME&gt;'.
  * packageDescription() again catches errors from encoding
    conversions. This also fixes broken packageVersion() in C locale
    on systems where iconv does not support transliteration.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1681128000">- add patch to build with libcurl &gt;= 8</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1682078400">- CHANGES IN R 4.3.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Calling &amp;&amp; or || with LHS or (if evaluated) RHS of length greater
    than one is now always an error, with a report of the form
    'length = 4' in coercion to 'logical(1)'
    Environment variable _R_CHECK_LENGTH_1_LOGIC2_ no longer has any
    effect.
  NEW FEATURES:
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.10.1.  (This caused some platform-dependent
    changes to package check output.)  And then to the sources from
    LAPACK version 3.11.0 (with changes only to double complex
    subroutines).
  * The included LAPACK sources have been updated to include the four
    Fortran 90 routines rather than their Fortran 77 predecessors.
    This may give some different signs in SVDs or
    eigendecompositions..  (This completes the transition to LAPACK
    3.10.x begun in R 4.2.0.)
  * The LAPACK sources have been updated to version 3.11.0.  (No new
    subroutines have been added, so this almost entirely bug fixes:
    Those fixes do affect some computations with NaNs, including R's
    NA.)
  * The parser now signals _classed_ errors, notably in case of the
    pipe operator |&gt;.  The error object and message now give line and
    column numbers, mostly as proposed and provided by Duncan Murdoch
    in PR#18328.
  * toeplitz() is now generalized for asymmetric cases, with a
    toeplitz2() variant.
  * xy.coords() and xyz.coords() and consequently, e.g., plot(x,y,
    log = "y") now signal a _classed_ warning about negative values
    of y (where log(.) is NA).  Such a warning can be specifically
    suppressed or caught otherwise.
  * Regular expression functions now check more thoroughly whether
    their inputs are valid strings (in their encoding, e.g. in
    UTF-8).
  * The performance of grep(), sub(), gsub() and strsplit() has been
    improved, particularly with perl = TRUE and fixed = TRUE.  Use of
    useBytes = TRUE for performance reasons should no longer be
    needed and is discouraged: it may lead to incorrect results.
  * apropos() gains an argument dot_internals which is used by the
    completion (help(rcompgen)) engine to also see base internals
    such as .POSIXct().
  * Support in tools::Rdiff() for comparing uncompressed PDF files is
    further reduced - see its help page.
  * qqplot(x, y, ...) gains conf.level and conf.args arguments for
    computing and plotting a confidence band for the treatment
    function transforming the distribution of x into the distribution
    of y (Switzer, 1976, _Biometrika_). Contributed by Torsten
    Hothorn.
  * Performance of package_dependencies() has been improved for cases
    when the number of dependencies is large.
  * Strings newly created by gsub(), sub() and strsplit(), when any
    of the inputs is marked as "bytes", are also marked as "bytes".
    This reduces the risk of creating invalid strings and accidental
    substitution of bytes deemed invalid.
  * Support for readLines(encoding = "bytes") has been added to allow
    processing special text files byte-by-byte, without creating
    invalid strings.
  * iconv(from = "") now takes into account any declared encoding of
    the input elements and uses it in preference to the native
    encoding.  This reduces the risk of accidental creation of
    invalid strings, particularly when different elements of the
    input have different encoding (including "bytes").
  * Package repositories in getOption("repos") are now initialized
    from the repositories file when utils is loaded (if not already
    set, e.g., in .Rprofile).  (From a report and patch proposal by
    Gabriel Becker in PR#18405.)
  * compactPDF() gets a verbose option.
  * type.convert() and hence read.table() get new option tryLogical =
    TRUE with back compatible default.  When set to false, converts
    "F" or "T" columns to character.
  * Added new unit prefixes "R" and "Q" for abbreviating
    (unrealistically large) sizes beyond 10^{27} in standard = "SI",
    thanks to Henrik Bengtsson's PR#18435.
  * as.data.frame()'s default method now also works fine with atomic
    objects inheriting from classes such as "roman", "octmode" and
    "hexmode", such fulfilling the wish of PR#18421, by Benjamin
    Feakins.
  * The as.data.frame.vector() utility now errors for wrong-length
    row.names.  It warned for almost six years, with "Will be an
    error!".
  * sessionInfo() now also contains La_version() and reports codepage
    and timezone when relevant, in both print() and toLatex() methods
    which also get new option tzone for displaying timezone
    information when locale = FALSE.
  * New function R_compiled_by() reports the C and Fortran compilers
    used to build R, if known.
  * predict(&lt;lm&gt;, newdata = *) no longer unnecessarily creates an
    offset of all 0s.
  * solve() for complex inputs now uses argument tol and by default
    checks for 'computational singularity' (as it long has done for
    numeric inputs).
  * predict(&lt;rank-deficient lm&gt;, newdata=*) now obeys a new argument
    rankdeficient, with new default "warnif", warning only if there
    are non-estimable cases in newdata.  Other options include
    rankdeficient = "NA", predicting NA for non-estimable newdata
    cases.  This addresses PR#15072 by Russ Lenth and is based on his
    original proposal and discussions in PR#16158 also by David Firth
    and Elin Waring.  Still somewhat experimental.
  * Rgui console implementation now works better with the NVDA screen
    reader when the full blinking cursor is selected.  The underlying
    improvements in cursor handling may help also other screen
    readers on Windows.
  * The drop-field control in GraphApp can now be left with the TAB
    key and all controls can be navigated in the reverse order using
    the Shift+TAB key, improving accessibility of the Rgui
    configuration editor.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now fully accurate
    (instead of to "only" minimally five digits).
  * demo(error.catching) now also shows off withWarnings() and
    tryCatchWEMs().
  * As an experimental feature the placeholder _ can now also be used
    in the rhs of a forward pipe |&gt; expression as the first argument
    in an extraction call, such as _$coef. More generally, it can be
    used as the head of a chain of extractions, such as _$coef[[2]].
  * Spaces in the environment variable used to choose the R session's
    temporary directory (TMPDIR, TMP and TEMP are tried in turn) are
    now fatal.  (On Windows the 'short path' version of the path is
    tried and used if that does not contain a space.)
  * all.equal.numeric() gets a new optional switch giveErr to return
    the numeric error as attribute.  Relatedly,
    stopifnot(all.equal&lt;some&gt;(a, b, ..)) is as "smart" now, as
    stopifnot(all.equal(....)) has been already, thus allowing
    customized all.equal&lt;Some&gt;() wrappers.
  * R on Windows is now able to work with path names longer than 260
    characters when these are enabled in the system (requires at
    least Windows 10 version 1607).  Packages should be updated to
    work with long paths as well, instead of assuming PATH_MAX to be
    the maximum length.  Custom front-ends and applications embedding
    R need to update their manifests if they wish to allow this
    feature.  See
    &lt;https://blog.r-project.org/2023/03/07/path-length-limit-on-windows&gt;
    for more information.
  * 'Object not found' and 'Missing argument' errors now give a more
    accurate error context. Patch provided by Lionel Henry in
    PR#18241.
  * The @ operator is now an S3 generic. Based on contributions by
    Tomasz Kalinowski in PR#18482.
  * New generic chooseOpsMethod() provides a mechanism for objects to
    resolve cases where two suitable methods are found for an Ops
    Group Generic. This supports experimenting with alternative
    object systems. Based on contributions by Tomasz Kalinowski in
    PR#18484.
  * inherits(x, what) now accepts values other than a simple
    character vector for argument what. A new generic, nameOfClass(),
    is called to resolve the class name from what. This supports
    experimenting with alternative object systems. Based on
    contributions by Tomasz Kalinowski in PR#18485.
  * Detection of BLAS/LAPACK in use (sessionInfo()) with FlexiBLAS
    now reports the current backend.
  * The "data.frame" method for subset() now warns about extraneous
    arguments, typically catching the use of = instead of == in the
    subset expression.
  * Calling a:b when numeric a or b is longer than one may now be
    made into an error by setting environment variable
    _R_CHECK_LENGTH_COLON_ to a true value, along the proposal in
    PR#18419 by Henrik Bengtsson.
  * density(x, weights = *) now warns if automatic bandwidth
    selection happens without using weights; new optional warnWbw may
    suppress the warning.  Prompted by Christoph Dalitz' PR#18490 and
    its discussants.
  * rm(list = *) is faster and more readable thanks to Kevin Ushey's
    PR#18492.
  * The plot.lm() function no longer produces a normal Q-Q plot for
    GLMs. Instead it plots a half-normal Q-Q plot of the absolute
    value of the standardized deviance residuals.
  * The print() method for class "summary.glm" no longer shows
    summary statistics for the deviance residuals by default.  Its
    optional argument show.residuals can be used to show them if
    required.
  * The tapply() function now accepts a data frame as its X argument,
    and allows INDEX to be a formula in that case. by.data.frame()
    similarly allows INDICES to be a formula.
  * The performance of df[j] &lt;- value (including for missing j) and
    write.table(df) has been improved for data frames df with a large
    number of columns.  (Thanks to Gabriel Becker's PR#18500,
    PR#18503 and discussants, prompted by a report from Toby Dylan
    Hocking on the R-devel mailing list.)
  * The matrix multiply operator %*% is now an S3 generic, belonging
    to new group generic matrixOps.  From Tomasz Kalinowski's
    contribution in PR#18483.
  * New function array2DF() to convert arrays to data frames,
    particularly useful for the list arrays created by tapply().
  DATES and TIMES:
  * On platforms where (non-UTC) datetimes before 1902 (or before
    1900 as with system functions on recent macOS) are guessed by
    extrapolating time zones from 1902-2037, there is a warning at
    the first use of extrapolation in a session.  (As all time zones
    post 2037 are extrapolation, we do not warn on those.)
  * (Platforms using --with-internal-tzone, including Windows and by
    default macOS). How years are printed in dates or date-times can
    be controlled by environment variable R_PAD_YEARS_BY_ZERO.  The
    default remains to pad to 4 digits by zeroes, but setting value
    no gives no padding (as used by default by glibc).
  * strftime() tries harder to determine the offset for the "%z"
    format, and succeeds on the mainstream R platforms.
  * strftime() has a limit of 2048 bytes on the string produced -
    attempting to exceed this is an error.  (Previously it silently
    truncated at 255 bytes.)
  * sessionInfo() records (and by default prints) the system time
    zone as part of the locale information.  Also, the source
    (system/internal) of the date-time conversion and printing
    functions.
  * Objects of class "POSIXlt" created in this version of R always
    have 11 components: component zone is always set, and component
    gmtoff is set for times in UTC and usually set on the (almost
    all) platforms which have C-level support, otherwise is NA.
  * There are comprehensive validity checks on the structure of
    objects of class "POSIXlt" when converting (including formatting
    and printing).  (This avoids mis-conversions of hand-crafted
    objects.)
  * There is some support for using the native date-time routines on
    macOS: this is only viable on recent versions (e.g. 12.6 and 13)
    and does get wrong some historical changes (before 1900, during
    WWII).  Use of --with-internal-tzone remains the default.
  * as.POSIXct(&lt;numeric&gt;) and as.POSIXlt(.) (without specifying
    origin) now work.  So does as.Date(&lt;numeric&gt;).
  * as.Date.POSIXct(., tz) now treats several tz values, notably
    "GMT" as equivalent to "UTC", proposed and improved by Michael
    Chirico and Joshua Ulrich in PR#17674.
  * Experimental balancePOSIXlt() utility allows using "ragged" and
    or out-of-range "POSIXlt" objects more correctly, e.g., in
    subsetting and subassignments.  Such objects are now documented.
    More experimentally, a "POSIXlt" object may have an attribute
    "balanced" indicating if it is known to be filled or fully
    balanced.
  * Functions axis.Date() and axis.POSIXct() are rewritten to gain
    better default tick locations and better default formats by using
    prettyDate(). Thanks to Swetlana Herbrandt.
  * The mapping of Windows' names for time zones to IANA's 'Olson'
    names has been updated.  When ICU is available (it is by
    default), it is used to get a mapping for the current region set
    in Windows.  This can be overridden by setting environment
    variable TZ to the desired Olson name - see OlsonNames() for
    those currently available.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 16
    and so packages that provide graphics devices should be
    reinstalled.
  * The grDevices and grid packages have new functions for rendering
    typeset glyphs, primarily: grDevices::glyphInfo() and
    grid::grid.glyph().
    Rendering of typeset glyphs is only supported so far on the
    Cairo-based graphics devices and on the pdf() and quartz()
    devices.
  * The defined behaviour for "clear" and "source" compositing
    operators (via grid::grid.group()) has been changed (to align
    better with simple interpretation of original Porter-Duff
    definitions).
  * Support for gradients, patterns, clipping paths, masks, groups,
    compositing operators, and affine transformations has been added
    to the quartz() device.
  INSTALLATION on a UNIX-ALIKE:
  * A system installation of generic LAPACK 3.10.0 or later will be
    preferred to the version in the R sources.
    configure option --with-lapack=no (equivalently --without-lapack)
    forces compilation of the internal LAPACK sources.
    If --with-lapack is not specified, a system liblapack is looked
    for and used if it reports version 3.10.0 or later and does not
    contain BLAS routines.
    Packages using LAPACK will need to be reinstalled if this changes
    to using an external library.
  * On aarch64 Linux platforms using GCC, configure now defaults to
  - fPIC (instead of -fpic), as desired in PR#18326.
  * configure now checks conversion of datetimes between POSIXlt and
    POSIXct around year 2020.  Failure (which has been seen on
    platforms missing tzdata) is fatal.
  * If configure option --with-valgrind-instrumentation is given
    value 1 or 2, option --with-system-valgrind-headers is now the
    default and ignored (with a warning).  It is highly recommended
    that the system headers are installed alongside valgrind: they
    are part of its packaging on some Linux distributions and
    packaged separately (e.g. in the valgrind-devel RPM) on others.
    configure will give a warning if they are not found.
    The system headers will be required in a future release of R to
    build with valgrind instrumentation.
  * libcurl 8.x is now accepted by configure: despite a change in
    major version number it changes neither API nor ABI.
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools43, an update of the Rtools42 toolchain.  It is
    based on gcc 12 and newer versions of MinGW-W64, binutils and
    libraries.  At this time R-devel can still be built using
    Rtools42 without changes, but when R-devel is installed via the
    installer, it will by default look for Rtools43.
  * Old make targets rsync-extsoft and 32-bit ones that are no longer
    needed have been removed.
  * Default builds (including for packages) no longer select C99.
    Thus the C standard used is the default for the compiler, which
    for the toolchain in Rtools43 is C17.  (This is consistent with
    Unix builds.)
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++17 where
    available (which it is on all currently checked platforms): if
    not C++14 or C++11 is used if available otherwise C++ is not
    supported.
  * USE_FC_LEN_T is the default: this uses the correct
    (compiler-dependent) prototypes for Fortran BLAS/LAPACK routines
    called from C/C++, and requires adjustment of many such calls -
    see 'Writing R Extensions' SS6.6.1.
  * There is initial support for C++23 as several compilers are now
    supporting -std=c++23 or -std=c++2b or similar.  As for C++20,
    there no additional configure checks for C++23 features beyond a
    check that the compiler reports a __cplusplus value greater than
    that in the C++20 standard.  C++ feature tests should be used.
  * There is support for a package to indicate the version of the C
    standard which should be used to compile it, and for the
    installing user to specify this.  In most cases R defaults to the
    C compiler's default standard which is C17 (a `bug-fix' of C11) -
    earlier versions of R or compilers may have defaulted to C99.
    Current options are:
    USE_C17 Use a standard that is at most C17.  The intention is to
    allow legacy packages to still be installed when later C
    standards become the default, including packages using new
    keywords as identifiers or with K&amp;R-style function
    declarations.  This will use C17 if available, falling back
    to C11.
    USE_C90 Use the C90 (aka C89) standard.  (As that standard did
    not require compilers to identify that version, all we can
    verify is that the compiler does not claim to be using a
    later standard.  It may accept C99 features - for example
    clang accepts // to make comments.)
    USE_C99 Use the C99 standard. This should be rarely needed - it
    avoids the few new features of C11/C17 which can be useful if
    a package assumes them if C17 is specified and they are not
    implemented.
    USE_C23 Use C23 (or in future, later).  Compiler/library support
    for C23 is still being implemented, but LLVM clang from
    15.0.0 and the upcoming GCC 13 have quite extensive support.
    These can be specified as part of the SystemRequirements field in
    the package's DESCRIPTION file or _via_ options --use-C17 and so
    on of R CMD INSTALL and R CMD SHLIB.
    For further details see "Writing R Extensions" SS1.2.5.
  * (Windows) A src/Makefile.ucrt or src/Makefile.win file is now
    included after R_HOME/etcR_ARCH/Makeconf and so no longer needs
    to include that file itself.  Installation of a package with such
    a file now uses a site Makevars file in the same way as a package
    with a src/Makevars.win file would.
  * configure is now passed crucial variables such as CC and CFLAGS
    in its environment, as many packages were not setting them (as
    documented in 'Writing R Extensions' SS1.2).
    This has most effect where configure is used to compile parts of
    the package - most often by cmake or libtool which obfuscate the
    actual compile commands used.
    Also used for configure.win and configure.ucrt on Windows.
  FORTRAN FLAGS:
  * The flag -fno-optimize-sibling-calls is no longer forced for
    gfortran 7 and later.  It should no longer be needed now using
    'hidden' character-length arguments when calling BLAS/LAPACK
    routines from C/C++ is the default even for packages.  (Unless
    perhaps packages call Fortran code from C/C++ without using R's
    headers and without allowing for these arguments.)
  C-LEVEL FACILITIES:
  * The deprecated S-compatibility macros DOUBLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * The deprecated legacy typedefs of Sint and Sfloat in header R.h
    are no longer defined, and that header no longer includes header
    limits.h from C nor climits from C++.
  * New macro CAD5R() is provided in Rinternals.h and used in a few
    places in the R sources.
  * ALTREP now supports VECSXP vectors. Contributed by Gabor Csardi
    in PR#17620.
  * The Rcomplex definition (in header R_ext/Complex.h) has been
    extended to prevent possible mis-compilation when interfacing
    with Fortran (PR#18430).  The new definition causes compiler
    warnings with static initializers such as {1, 2}, which can be
    changed to {.r=1, .i=2}.
    Using the new definition from C++ depends on compiler extensions
    supporting C features that have not been incorporated into the
    C++ standards but are available in g++ and clang++: this may
    result in C++ compiler warnings but these have been worked around
    for recent versions of common compilers (GCC, Apple/LLVM clang,
    Intel).
    It is intended to change the inclusion of header R_ext/Complex.h
    by other R headers, so C/C++ code files which make use of
    Rcomplex should include that header explicitly.
  UTILITIES:
  * R CMD check does more checking of package .Rd files, warning
    about invalid email addresses and (some) invalid URIs and noting
    empty \item labels in description lists.
  * R CMD check now also reports problems when reading package news
    in md (file NEWS.md) and (optionally) plain text (file NEWS)
    formats.
  * _R_CHECK_TIMINGS_ defaults to a value from the environment even
    for R CMD check --as-cran; this allows for exceptionally fast or
    slow platforms.
    It now applies to checking PDF and HTML versions of the manuals,
    and 'checking CRAN incoming feasibility'.
  * R CMD check can optionally (but included in --as-cran) check
    whether HTML math rendering _via_ KaTeX works for the package .Rd
    files.
  * Non-interactive debugger invocations can be trapped by setting
    the environment variable _R_CHECK_BROWSER_NONINTERACTIVE_ to a
    true value.  This is enabled by R CMD check --as-cran to detect
    the use of leftover browser() statements in the package.
  * The use of sprintf and vsprintf from C/C++ has been deprecated in
    macOS 13 and is a known security risk.  R CMD check now reports
    (on all platforms) if their use is found in compiled code:
    replace by snprintf or vsnprintf respectively. [*NB:* whether
    such calls get compiled into the package is platform-dependent.]
  * Where recorded at installation, R CMD check reports the C and
    Fortran compilers used to build R.
    It reports the OS in use (if known, as given by osVersion) as
    well as that R was built for.
    It notes if a C++ standard was specified which is older than the
    current default: many packages have used C++11 to mean 'not
    C++98' - as C++11 is the minimum supported since R 4.0.0, that
    specification can probably be removed.
  * R CMD INSTALL reports the compilers (and on macOS, the SDK) used,
    and this is copied to the output of R CMD check.
    Where a C++ standard is specified, it is reported.
  * R CMD check's 'checking compilation flags in Makevars' has been
    relaxed to accept the use of flags such as -std=f2008 in
    PKG_FFLAGS.
  * tools::buildVignettes() has a new argument skip, which is used by
    R CMD check to skip (and note) vignettes with unavailable
    \VignetteDepends (PR#18318).
  * New generic .AtNames() added to enable class-specific completions
    after @. The formerly internal function findMatches() is now
    exported, mainly for use in methods for .DollarNames() and
    .AtNames().
  DEPRECATED AND DEFUNCT:
  * default.stringsAsFactors() is defunct.
  * Calling as.data.frame.&lt;class&gt;() directly (for 12 atomic classes)
    is going to be formally deprecated, currently activated by
    setting the environment variable
    _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ to non-empty, which also
    happens in R CMD check --as-cran.
  BUG FIXES:
  * Hashed environments with sizes less than 5 can now grow.
    (Reported to R-devel by Duncan Garmonsway.)
  * as.character(&lt;Rd&gt;, deparse = TRUE) failed to re-escape curly
    braces in LaTeX-like text.  (Reported by Hadley Wickham in
    PR#18324.)
  * library() now passes its lib.loc argument when requiring Depends
    packages; reported (with fix) in PR#18331 by Mikael Jagan.
  * R CMD Stangle: improved message about 'Output' files.
  * head(x, n) and tail(x, n) now signal an error if n is not
    numeric, instead of incidentally "working" sometimes returning
    all of x.  Reported and discussed by Colin Fay, in PR#18357.
  * The "lm" method for summary() now gives the correct F-statistic
    when the model contains an offset.  Reported in PR#18008.
  * C() and `contrasts&lt;-`() now preserve factor level names when
    given a function object (as opposed a function name which did
    preserve names). Reported in PR#17616.
  * c(a = 1, 2)[[]] no longer matches 2 but rather signals a
    _classed_ error.  Reported and analysed by Davis Vaughan in
    PR#18367, a duplicate of PR#18004, by Jan Meis et al.  For
    consistency, NULL[[]] is also erroneous now.  x[[]] &lt;- v gives an
    error of the same class "MissingSubscriptError".
  * The relist() function of utils now supports NULL elements in the
    skeleton (PR#15854).
  * ordered(levels = *) (missing x) now works analogously to factor(,
    ordered=TRUE); reported (with fix) by Achim Zeileis in PR#18389.
  * User-defined Rd macro definitions can now span multiple lines,
    thanks to a patch from Duncan Murdoch. Previously, the Rd parser
    silently ignored everything after the first line.
  * Plain-text help (tools::Rd2txt()) now preserves an initial blank
    line for text following description list items.
  * tools::Rd2HTML() and tools::Rd2latex() no longer split \arguments
    and \value lists at Rd comments.
  * tools::Rd2latex() now correctly handles optional text outside
    \items of argument lists as well as bracketed text at the
    beginning of sections, e.g., \value{[NULL]}.
  * as.character(&lt;POSIXt&gt;) now behaves more in line with the methods
    for atomic vectors such as numbers, and is no longer influenced
    by options().  Ditto for as.character(&lt;Date&gt;).  The
    as.character() method gets arguments digits and OutDec with
    defaults _not_ depending on options().  Use of as.character(*,
    format = .) now warns.
  * Similarly, the as.character.hexmode() and *.octmode() methods
    also behave as good citizen methods and back compatibility option
    keepStr = TRUE.
  * The as.POSIXlt(&lt;POSIXlt&gt;) and as.POSIXct(&lt;POSIXct&gt;) default
    methods now do obey their tz argument, also in this case.
  * as.POSIXlt(&lt;Date&gt;) now does apply a tz (time zone) argument, as
    does as.POSIXct(); partly suggested by Roland Fuss on the R-devel
    mailing list.
  * as.Date.POSIXlt(x) now also works when the list components are of
    unequal length, aka "partially filled" or "ragged".
  * expand.model.frame() looked up variables in the wrong environment
    when applied to models fitted without data.  Reported in
    PR#18414.
  * time() now (also) uses the ts.eps = getOption("ts.eps") argument
    and thus by default rounds values very close to the start (or
    end) of a year.  Based on a proposal by Andre"i V. Kostyrka on
    R-help.
  * Printing of a factanal() result with just one factor and sort =
    TRUE now works regularly, fixing PR#17863 by Timothy Bates,
    thanks to the 'R Contributors' working group.
  * Printing 0-length objects of class "factor", "roman", "hexmode",
    "octmode", "person", "bibentry", or "citation" now prints
    something better, one of which fixes PR#18422, reported by
    Benjamin Feakins.
  * Sys.timezone() queries timedatectl only if systemd is loaded;
    addressing a report by Jan Gorecki in PR#17421.
  * The formula method of cor.test() had scoping problems when
    environment(formula) was not the calling environment; reported
    with a patch proposal by Mao Kobayashi in PR#18439.
  * attach() of an environment with active bindings now preserves the
    active bindings.  Reported by Kevin Ushey in PR#18425.
  * BLAS detection now works also with system-provided libraries not
    available as regular files.  This fixes detection of the
    Accelerate framework on macOS since Big Sur.  Reported by David
    Novgorodsky.
  * download.file() gives a helpful error message in case of an
    invalid download.file.method option, thanks to Colin Fay's report
    in PR#18455.
  * Sporadic crashes of Rterm when using completion have been fixed.
  * Rprof() is now more reliable.  A livelock in thread
    initialization with too short sampling interval has been fixed on
    macOS.  A deadlock in using the C runtime has been fixed on
    Windows.  A potential deadlock has been prevented on Unix.
  * Cursor placement in Rgui now works even after a fixed-width font
    is selected.
  * Mandatory options (options()) are now set on startup so that
    saving and restoring them always works (PR#18372).
  * Package installation, R CMD INSTALL or install.packages(*), now
    parses each of the &lt;pkg&gt;/R/*.R files individually instead of
    first concatenating and then parse()ing the large resulting file.
    This allows parser or syntax errors to be diagnosed with correct
    file names and line numbers, thanks to Simon Dedman's report and
    Bill Dunlap's patch in PR#17859.
    This _does_ require syntactically self contained R source files
    now, fixing another inadvertent bug.
  * predict.lm(&lt;model with offset&gt;) now finds the offset in the
    correct environment, thanks to Andr'e Gillibert's report and patch
    in PR#18456.
  * getInitial(&lt;formula&gt;) now finds the selfStart model in the
    correct environment.  (Reported by Ivan Krylov in PR#18368.)
  * Fix for possible segfault when using recently-added graphics
    features, such as gradients, clipping paths, masks, and groups
    with pdf(file=NULL).
  * class(m) &lt;- class(m) no longer changes a matrix m by adding a
    class _attribute_.
  * packageDate(pkg) now only warns once if there is no pkg.
  * When ts() creates a multivariate time series, "mts", it also
    inherits from "array" now, and is.mts() is documented _and_
    stricter.
  * Rd2txt() now preserves line breaks of \verb Rd content and from
    duplicated \cr.  The former also fixes the rendering of verbatim
    output from Rd \Sexpr in plain-text help.
  * uniroot(f, interval) should no longer wrongly converge _outside_
    the interval in some cases where abs(f(x)) == Inf for an x at the
    interval boundary, thanks to posts by Ben Bolker and Serguei
    Sokol on R-devel.
  * Vectorized alpha handling in palette functions such as in gray(),
    rainbow(), or hcl.colors() works correctly now, thanks to Achim
    Zeileis' report and patch in PR#18476.
  * Formatting and print()ing of bibentry objects has dropped the
    deprecated citation.bibtex.max argument, such that the bibtex
    argument's default for print.bibentry() depends directly on the
    citation.bibtex.max option, whereas in format.bibentry() the
    option no longer applies.
  * Attempting to use a character string naming a foreign function
    entry point in a foreign function call in a package will now
    signal an error if the packages has called R_forceSymbols to
    specify that symbols must be used.
  * An error in table() could permanently set options(warn=2)
    promoting all subsequent warnings to errors.
  * The sigma() function gave misleading results for binary GLMs.  A
    new method for objects of class "glm" returns the square root of
    the estimate of the dispersion parameter using the same
    calculation as summary.glm().
  * bs() and ns() in the (typical) case of automatic knot
    construction, when some of the supposedly inner knots coincide
    with boundary knots, now moves them inside (with a warning),
    building on PR#18442 by Ben Bolker.
  * R CMD on Windows now skips the site profile with --no-site-file
    and --vanilla even when R_PROFILE is set (PR#18512, from Kevin
    Ushey).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1686916800">- CHANGES IN R 4.3.1:
  C-LEVEL FACILITIES:
  * The C-level API version of R's integrate(), Rdqags() in Applic.h,
    now returns the correct number of integrand evaluations neval,
    fixing PR#18515 reported and diagnosed by Stephen Wade.
  * The C prototypes for LAPACK calls dspgv and dtptrs in
    R_exts/Lapack.h had one too many and one too few character length
    arguments - but this has not caused any known issues. To get the
    corrected prototypes, include
    [#]include &lt;Rconfig.h&gt; // for PR18534fixed
    [#]ifdef PR18534fixed
    [#] define usePR18534fix 1
    [#]endif
    [#]include &lt;R_exts/Lapack.h&gt;
    in your C/C++ code (PR#18534).
  INSTALLATION:
  * Many of the checks of esoteric Internet operations and those
    using unreliable external sites have been moved to a new target
    that is not run by default and primarily intended for the core
    developers.  To run them use
    cd tests; make test-Internet-dev
  BUG FIXES:
  * .S3methods(), typically called from methods(), again marks
    methods from package base as visible.
    Also, the visibility of non-base methods is again determined by
    the method's presence in search().
  * tools::Rdiff() is now more robust against invalid strings, fixing
    installation tests on Windows without Rtools installed
    (PR#18530).
  * Fix (new) bug in hcl.colors(2, *), by Achim Zeileis (PR#18523).
  * head(., &lt;illegal&gt;) and tail(..) now produce more useful "Error in
    ...." error messages, fixing PR#18362.
  * Package code syntax on Windows is checked in UTF-8 when UTF-8 is
    the native encoding.
  * na.contiguous(x) now also returns the first run, when it is at
    the beginning and there is a later one of the same length;
    reported to R-devel, including a fix, by Georgi Boshnakov.
    Further, by default, it modifies only an existing attr(*,"tsp")
    but otherwise no longer sets one.
  * chol(&lt;not pos.def&gt;, pivot = &lt;T|F&gt;) now gives a correct error or
    warning message (depending on pivot), thanks to Mikael Jagan's
    (PR#18541).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1699012800">- CHANGES IN R 4.3.2:
  NEW FEATURES:
  * The default initialization of the "repos" option from the
    repositories file at startup can be skipped by setting
    environment variable R_REPOSITORIES to NULL such that
    getOption("repos") is empty if not set elsewhere.
  * qr.X() is now an implicit S4 generic in methods.
  * iconv(to = "ASCII//TRANSLIT") is emulated using substitution on
    platforms which do not support it (notably Alpine Linux).  This
    should give a human-readable conversion in ASCII on all platforms
    (rather than NA_character_).
  * trans3d() gains options continuous and verbose addressing the
    problem of possible "wrap around" when projecting too long
    curves, as reported by Achim Zeileis in PR#18537.
  * tools::showNonASCII() has been rewritten to work better on macOS
    14 (which has a changed implementation of iconv()).
  * tiff(type = "quartz") (the default on macOS) now warns if
    compression is specified: it continues to be ignored.
  INSTALLATION on a UNIX-ALIKE:
  * There is some support for building with Intel's LLVM-based
    compilers on x86_64 Linux, such as (C) icx, (C++) ipcx and
    (Fortran) ifx from oneAPI 2023.x.y.
  * There is support for using LLVM's flang-new as the Fortran
    compiler from LLVM 16.0.x (preferably 17.0.0 or later).
  UTILITIES:
  * R CMD check reports the use of the Fortran 90 random number
    generator RANDOM_NUMBER() and the subroutines to initialize it.
    'Writing R Extensions' has example code to use R's RNGs from
    Fortran.
  BUG FIXES:
  * substr(x, n, L) &lt;- cc now works (more) correctly for multibyte
    UTF-8 strings x when L &gt; nchar(x), thanks to a report and patch
    by 'Architect 95'.
  * contrib.url(character()) now returns 0-length character() as
    documented, which also avoids spurious warnings from
    available.packages() et al. in the edge case of an empty vector
    of repository URLs.
  * readChar(., 4e8) no longer fails, thanks to Kodi Arfer's report
    (PR#18557).
  * lapply(&lt;list&gt;, as.data.frame) no longer warns falsely for some
    base vector components.
  * Communication between parent and child processes in the multicore
    part of parallel could fail on platforms that do not support an
    arbitrarily large payload in system functions read()/write() on
    pipes (seen on macOS where a restriction to INT_MAX bytes is
    documented, without doing a partial read unlike Linux). The
    payload is now split into 1Gb chunks to avoid that problem.
    (PR#18571)
  * qqplot(x,y, conf.level=.) gives better confidence bounds when
    length(x) != length(y), thanks to Alexander Ploner's report and
    patch proposal (PR#18557).
  * norm(&lt;0-length&gt;, "2") now gives zero instead of an error, as all
    the other norm types, thanks to Mikael Jagan's PR#18542.
  * Build-stage Rd macros \packageAuthor and \packageMaintainer now
    process Authors@R, fixing NA results when the package DESCRIPTION
    omits Author and Maintainer fields.
  * Formatting and printing complex numbers could give things like
    0.1683-0i because of rounding error: -0i is now replaced by +0i.
  * postscript() refused to accept a title comment containing the
    letter "W" (PR#18599).
  * isoreg(c(1,Inf)) signals an error instead of segfaulting, fixing
    PR#18603.
  * tiff(type = "Xlib") was only outputting the last page of
    multi-page plots.
  * tools::latexToUtf8() again knows about \~{n} and other letters
    with tilde, fixing a regression in R 4.3.0, and about \^{i} as an
    alternative to \^{\i} (similarly with other accents).
    Furthermore, LaTeX codes for accented I letters are now correctly
    converted, also fixing related mistakes in
    tools::encoded_text_to_latex().
  * tar(*, tar = "internal") no longer creates out-of-spec tar files
    in the very rare case of user or group names longer than 32
    bytes, fixing PR#17871 with thanks to Ivan Krylov.
  * When using the "internal" timezone datetime code, adding a
    fraction of a second no longer adds one second, fixing PR#16856
    from a patch by Ivan Krylov.
  * tools::checkRd() no longer produces spurious notes about
    "unnecessary braces" from multi-line Rd results of \Sexpr macros.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1709208000">- CHANGES IN R 4.3.3:
  NEW FEATURES:
  * iconv() now fixes up variant encoding names such as "utf8"
    case-insensitively.
  DEPRECATED AND DEFUNCT:
  * The legacy encoding = "MacRoman" is deprecated in pdf() and
    postscript(): support was incomplete in earlier versions of R.
  BUG FIXES:
  * Arguments are now properly forwarded to methods on S4 generics
    with ... in the middle of their formal arguments. This was broken
    for the case when a method introduced an argument but did not
    include ... in its own formals. Thanks to Herv'e Pag`es for the
    report PR#18538.
  * Some invalid file arguments to pictex(), postscript() and xfig()
    opened a file called NA rather than throw an error.  These
    included postscript(NULL) (which some people expected to work
    like pdf(NULL)).
  * Passing filename = NA to svg(), cairo_pdf(), cairo_ps() or the
    Cairo-based bitmap devices opened a file called NA: it now throws
    an error.
  * quartz(file = NA) opened a file called NA, including when used as
    a Quartz-based bitmap device.  It now gives an error.
  * rank(&lt;long vector&gt;) now works, fixing PR#18617, thanks to Ilia
    Kats.
  * seq.int() did not adequately check its length.out argument.
  * match(&lt;POSIXct&gt;, .) is correct again for differing time zones,
    ditto for "POSIXlt", fixing PR#18618 reported by Bastian Klein.
  * drop.terms(*, dropx = &lt;0-length&gt;) now works, fixing PR#18563 as
    proposed by Mikael Jagan.
  * drop.terms(*) keeps + offset(.) terms when it should, PR#18565,
    and drop.terms() no longer makes up a response, PR#18566, fixing
    both bugs thanks to Mikael Jagan.
  * getS3method("t", "test") no longer finds the t.test() function,
    fixing PR#18627.
  * pdf() and postscript() support for the documented Adobe encodings
    "Greek" and "Cyrilllic" was missing (although the corresponding
    Windows' codepages could be used).
  * Computations of glyph metric information for pdf() and
    postscript() did not take into account that transliteration could
    replace one character by two or more (only seen on macOS 14) and
    typically warned that the information was not known.
  * rank(x) no longer overflows during integer addition, when
    computing rank average for largish but not-yet long vector x,
    fixing PR#18630, thanks to Ilia Kats.
  * list.files() on Windows now returns also files with names longer
    that 260 bytes (the Windows limit is 260 characters).
    Previously, some file names particularly with 'East Asian'
    characters were omitted.
  * cov2cor(&lt;0 x 0&gt;) now works, fixing PR#18423 thanks to Mikael
    Jagan and Elin Waring.
  * cov2cor(&lt;negative diagonal&gt;) and similar now give one warning
    instead of two, with better wording, fixing PR#18424 thanks to
    Mikael Jagan.
  * tools:: startDynamicHelp() now ensures port is in proper range,
    fixing PR#18645.
  * pbeta(x, a,b) is correct now for x=0 or 1 in the boundary cases
    where a or b or both are 0, fixing PR#18672 thanks to Michael
    Fay.
  * pmatch(x, table) for large table, also called for data frame row
    selection, dfrm[nm, ], is now interruptible, fixing PR#18656.
  * predict(&lt;rank-deficient lm&gt;, newdata=*) fix computing of nbasis,
    see Russ Lenth's comment 29 in PR#16158.
  * Added a work-around for a bug in macOS 14.3.1 and higher which
    prevents R plots in the Quartz Cocoa device from updating on
    screen.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1713960000">- CHANGES IN R 4.4.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Startup banners, R --version, sessionInfo() and R CMD check no
    longer report (64-bit) as part of the platform as this is almost
    universal - the increasingly rare 32-bit platforms will still
    report (32-bit).
    On Windows, ditto for window titles.
  * is.atomic(NULL) now returns FALSE, as NULL is not an atomic
    vector.  Strict back-compatibility would replace is.atomic(foo)
    by (is.null(foo) || is.atomic(foo)) but should happen only
    sparingly.
  NEW FEATURES:
  * The confint() methods for "glm" and "nls" objects have been
    copied to the stats package.  Previously, they were stubs which
    called versions in package MASS. The MASS namespace is no longer
    loaded if you invoke (say) confint(glmfit).  Further, the "glm"
    method for profile() and the plot() and pairs() methods for class
    "profile" have been copied from MASS to stats.  (profile.nls()
    and plot.profile.nls() were already in stats.)
  * The confint() and profile methods for "glm" objects have gained a
    possibility to do profiling based on the Rao Score statistic in
    addition to the default Likelihood Ratio. This is controlled by a
    new test = argument.
  * The pairs() method for "profile" objects has been extended with a
    which = argument to allow plotting only a subset of the
    parameters.
  * The "glm" method for anova() computes test statistics and
    p-values by default, using a chi-squared test or an F test
    depending on whether the dispersion is fixed or free.  Test
    statistics can be suppressed by giving argument test a false
    logical value.
  * In setRepositories() the repositories can be set using their
    names via name = instead of index ind =.
  * methods() and .S3methods() gain a all.names option for the (rare)
    case where functions starting with a . should be included.
  * Serializations can now be interrupted (e.g., by Ctrl-C on a
    Unix-alike) if they take too long, e.g., from save.image(),
    thanks to suggestions by Ivan Krylov and others on R-devel.
  * New startup option --max-connections to set the maximum number of
    simultaneous connections for the session.  Defaults to 128 as
    before: allowed values up to 4096 (but resource limits may in
    practice restrict to smaller values).
  * R on Windows (since Windows 10 2004) now uses the new Segment
    Heap allocator. This may improve performance of some
    memory-intensive applications.
  * When R packages are built, typically by R CMD build &lt;pkg&gt;, the
    new --user=&lt;build_user&gt; option overrides the (internally
    determined) user name, currently Sys.info()["user"] or LOGNAME.
    This is a (modified) fulfillment of Will Landau's suggestion in
    PR#17530.
  * tools::testInstalledBasic() gets new optional arguments outDir
    and testSrcdir, e.g., allowing to use it in a &lt;builddir&gt; !=
    &lt;srcdir&gt; setup, and in standard "binary" Windows installation
  * if* a source tests/ folder is present.
  * range(&lt;DT_with_Inf&gt;, finite = TRUE) now work for objects of class
    "Date", "POSIXct", and "POSIXlt" with infinite entries,
    analogously to range.default(), as proposed by Davis Vaughan on
    R-devel.  Other range()-methods can make use of new function
    .rangeNum().
  * New .internalGenerics object complementing .S3PrimitiveGenerics,
    for documentation and low-level book-keeping.
  * grid() now invisibly returns the x- and y- coordinates at which
    the grid-lines were drawn.
  * norm(., type) now also works for complex matrices.
  * kappa(., exact = TRUE, norm = *) now works for all norms and also
    for complex matrices.  In symmetric / triangular cases, the new
    argument uplo = "U" | "L" allows the upper or lower triangular
    part to be specified.
  * memDecompress(type = "unknown") recognizes compression in the
    default 'zlib' format as used by memCompress(type = "gzip").
  * memCompress() and memDecompress() will use the libdeflate library
    (&lt;https://github.com/ebiggers/libdeflate&gt;) if installed.  This
    uses the same type of compression for type = "gzip" but is 1.5-2x
    faster than the system libz library on some common platforms: the
    speed-up may depend on the library version.
  * diff() for objects of class "Date", "POSIXct", and "POSIXlt"
    accepts a units argument passed via ....
  * Dynamic help now does a much better job of rendering package
    DESCRIPTION metadata.
  * Rprof() gains an event argument and support for elapsed (real)
    time profiling on Unix (PR#18076).
  * filled.contour() gains a key.border argument.
  * tools::update_pkg_po() gets arguments pot_make and mo_make for
    _not_ re-making the corresponding files, and additionally a
    verbose argument.
  * Hexadecimal string colour specifications are now accepted in
    short form, so, for example, we can use "#123", which is
    equivalent to "#112233".
    Thanks to MikeFC for the original idea and Ella Kaye, Malcolm
    Barrett, George Stagg, and Hanne Oberman for the patch.
  * Plain-text help shows \var markup by angle brackets.
  * The new experimental primitive function declare() is intended to
    eventually allow information about R code to be communicated to
    the interpreter, compiler, and code analysis tools. The syntax
    for declarations is still being developed.
  * Functions psmirnov(), qsmirnov() and rsmirnov() in package stats
    have had argument two.sided renamed to alternative, to take into
    account that the permutation distributions of the one-sided
    statistics can be different in the case of ties.  Consequence of
    PR#18582.
  * sort() is now an implicit S4 generic in methods.
  * Formatting and printing, format(z), print(z), of complex vectors
    z no longer zap relatively small real or imaginary parts to zero,
    fixing PR#16752.  This is an API change, as it was documented
    previously to round real and imaginary parts together on purpose,
    producing nicer looking output.  As mentioned, e.g. in the PR,
    this change is compatible with many other "R-like" programming
    environments.
    We have simplified the internal code and now basically format the
    real and imaginary parts independently of each other.
  * New experimental functions Tailcall() and Exec() to support
    writing stack-space-efficient recursive functions.
  * Where characters are attempted to be plotted by pdf(),
    postscript() and xfig() which are not in the selected 8-bit
    character set (most often Latin-1) and the R session is using a
    UTF-8 locale, the warning messages will show the UTF-8 character
    rather than its bytes and one dot will be substituted per
    character rather than per byte.  (Platforms whose iconv() does
    transliteration silently plot the transliteration.)
    In a UTF-8 locale some transliterations are now done with a
    warning (e.g., dashes and Unicode minus to hyphen, ligatures are
    expanded, permille (‰) is replaced by o/oo), although the OS may
    have got there first.  These are warnings as they will continue
    to be replaced by dots in earlier versions of R.
  * The matrix multiplication functions crossprod() and tcrossprod()
    are now also primitive and S3 generic, as %*% had become in R
    4.3.0.
  * source() and example() have a new optional argument catch.aborts
    which allows continued evaluation of the R code after an error.
  * The non-Quartz tiff() devices allow additional types of
    compression if supported by the platform's libtiff library.
  * The list of base and recommended package names is now provided by
    tools::standard_package_names().
  * cairo_pdf() and cairo_ps() default to onefile = TRUE to closer
    match pdf() and postscript().
  * New option catch.script.errors provides a documented way to catch
    errors and then continue in non-interactive use.
  * L %||% R newly in base is an expressive idiom for the phrases
    if(!is.null(L)) L else R or if(is.null(L)) R else L.
  * The return value from warnings() now always inherits from
    "warnings" as documented, now also in the case of no warnings
    where it previously returned NULL.
  * as.complex("1i") now returns 0 + 1i instead of NA with a warning.
  * z &lt;- c(NA, 1i) now keeps the imaginary part Im(z[1]) == 0, no
    longer coercing to NA_complex_.  Similarly, cumsum(z) correctly
    sums real and imaginary parts separately, i.e., without
    "crosstalk" in case of NAs.
  * On Alpine Linux iconv() now maps "latin2", "latin-2", "latin9"
    and "latin-9" to encoding names the OS knows about
    (case-insensitively).
  * iconv(sub = "Unicode") now always zero-pads to four (hex) digits,
    rather than to 4 or 8.  (This seems to have become the convention
    once Unicode restricted the number of Unicode points to 2^21 - 1
    and so will never need more than 6 digits.)
  * NCOL(NULL) now returns 0 instead of 1, for consistency with
    cbind().
  * The information for the Euro glyph missing from the Adobe .afm
    files for the Courier, Helvetica and Times families has been
    copied from their URW equivalents - this will improve vertical
    centring in the pdf() and postscript() devices.
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.12.0.  The changes are almost entirely cosmetic.
  * The included LAPACK sources have been updated to version 3.12.0
    and some further double-complex routines added.
  * There are new font families for the 2014--5 URW 2.0 fonts (see
    ?pdf) which are included in recent versions of Ghostscript.
    These have font widths for most Greek glyphs and a few others
    which were missing from the original versions (whose font
    families remain available for reproducibility, although
    Ghostscript-based viewers will render using the 2.0 versions).
  * Improve the large-n efficiency of as.matrix(&lt;dist&gt;), thanks an R
    contributors effort, notably by Tim Taylor and Heather Turner,
    see PR#18660.
  * The default and numeric methods of all.equal() get a check.class
    option.
  * zapsmall() gets new optional arguments, function mFUN and min.d,
    for extra flexibility; fulfills a wish in PR#18199.  Also, it is
    now an implicit S4 generic in package methods.
  * The Rd filter for aspell() gains an ignore argument.
  * New generic function sort_by(), primarily useful for the
    data.frame method which can be used to sort rows of a data frame
    by one or more columns.
  * The icence headers for the RPC code in src/extra/xdr have been
    updated to use the GPL-compatible licence published by Oracle
    America in 2010.
  * New function pkg2HTML() in tools to create single-page HTML
    reference manuals for R packages.
  * The byte code evaluator now uses less C stack space for recursive
    calls to byte-compiled functions. It also makes more of an effort
    to avoid allocations for scalar return values.
  * New completion option backtick (disabled by default) allows
    non-syntactic completions to be wrapped in backquotes. This is
    currently only useful for Jupyter notebooks via the IRkernel
    package, and may cause problems for other backends.
  INSTALLATION:
  * The parser has been updated to work with bison 3.8.2, which is
    now used for the pre-generated parsers in gram.c, file.c, and
    gramRd.c. A few parser error messages have changed, which may
    affect code that relies on exact messages.
  INSTALLATION on a UNIX-ALIKE:
  * System valgrind headers are now required to use configure option
  - -with-valgrind-instrumentation with value 1 or 2.
  * configure will warn if it encounters a 32-bit build, as that is
    nowadays almost untested.
  * Environment variable R_SYSTEM_ABI is no longer used and so no
    longer recorded in etc/Renviron (it was not on Windows and was
    only ever used when preparing package tools).
  * If the libdeflate library and headers are available, libdeflate
    rather than libz is used to (de)compress R objects in lazy-load
    databases.  Typically tasks spend up to 5% of their time on such
    operations, although creating lazy-data databases is one of the
    exceptions.
    This can be suppressed if the library is available by the
    configure option --without-libdeflate-compression.
  * configure option --enable-lto=check has not worked reliably since
    2019 and has been removed.
  * The minimum autoconf requirement for a maintainer build has been
    increased to autoconf 2.71.
    It is intended to increase this to 2.72 for R 4.5.0: the
    distributed configure file was generated using 2.72.
  * The minimum version requirement for an external LAPACK has been
    reduced to 3.9.0.
  * No default C++ compiler is set if no C++17 compiler is detected:
    there is no longer an automatic fallback to C++14 or C++11.
    Compilers from the last five years should have sufficient
    support: for others macros CXX and CXXSTD can be set in file
    config.site to provide a fallback if needed.
    The Objective-C++ compiler now by default uses the standard
    selected by R for C++ (currently C++17) rather than the default
    standard for the C++ compiler (which on macOS is still C++98).
  INSTALLATION on macOS:
  * A new configure option --with-newAccelerate makes use of Apple's
    'new' BLAS / LAPACK interfaces in their Accelerate framework.
    Those interfaces are only available in macOS 13.3 or later, and
    building requires SDK 13.3 or later (from the Command Line Tools
    or Xcode 14.3 or later).
    By default the option uses new Accelerate for BLAS calls: to also
    use it for LAPACK use option --with-newAccelerate=lapack.  The
    later interfaces provide LAPACK 3.9.1 rather than 3.2.1: 3.9.1 is
    from 2021-04 and does not include the improved algorithms
    introduced in LAPACK 3.10.0 (including for BLAS calls).
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools44, an update of the Rtools43 toolchain.  It is
    based on GCC 13 and newer versions of MinGW-W64, binutils and
    libraries (targeting 64-bit Intel CPUs).  R-devel can no longer
    be built using Rtools43 without changes.
  * Rtools44 has experimental support for 64-bit ARM (aarch64) CPUs
    _via_ the LLVM 17 toolchain using lld, clang/flang-new and
    libc++.
  UTILITIES:
  * R CMD check notes when S4-style exports are used without
    declaring a strong dependence on package methods.
  * tools::checkRd() (used by R CMD check) detects more problems with
    \Sexpr-based dynamic content, including bad nesting of \Sexprs
    and invalid arguments.
  * tools::checkRd() now reports Rd titles and section names ending
    in a period; this is ignored by R CMD check unless environment
    variable _R_CHECK_RD_CHECKRD_MINLEVEL_ is set to -5 or smaller.
  * R CMD check now notes Rd files without an \alias, as long
    documented in 'Writing R Extensions' §1.3.1.  The check for a
    missing \description has been moved from tools::checkRd() to
    tools::checkRdContents().
  * R CMD check now visits inst/NEWS.Rd and OS-specific man
    subdirectories when checking Rd files.
  * tools::checkDocFiles() and tools::checkRdContents() now also
    check internal Rd files by default, but "specially" (ignoring
    missing documentation of arguments).
  * R CMD Rdiff gets option --useEx.
  * R CMD check now warns on non-portable uses of Fortran KIND such
    as INTEGER(KIND=4) and REAL(KIND=8).
    To see the failing lines set environment variable
    _R_CHECK_FORTRAN_KIND_DETAILS_ to a true value.
  * When checking Rd files, R CMD check now notes some of the "lost
    braces" that tools::checkRd() finds.  Typical problems are Rd
    macros missing the initial backslash (e.g., code{...}), in-text
    set notation (e.g., {1, 2}, where the braces need escaping), and
    \itemize lists with \describe-style entries of the form
    \item{label}{description}.
  * R CMD INSTALL (and hence check) will compile C++ code with
  - DR_NO_REMAP if environment variable _R_CXX_USE_NO_REMAP_ is set
    to a true value.  It is planned that this will in future become
    the default for compiling C++.
  * The new built-in Rd macro \dontdiff{} can be used to mark example
    code whose output should be ignored when comparing check output
    to reference output (tests/Examples/&lt;pkg&gt;-Ex.Rout.save).  The
    \dontdiff tag, like \donttest, is _not_ shown on the rendered
    help page, so provides a clean alternative to ##
    IGNORE_RDIFF_(BEGIN|END) comments.
  * R CMD build when there is no NAMESPACE, now uses the recommended
    exportPattern("^[^.]"), instead of exporting everything.
  * R CMD check now warns about non-ASCII characters in the NAMESPACE
    file (in addition to R files). Such packages are not portable and
    may fail to install on some platforms.
  C-LEVEL FACILITIES:
  * Headers R_ext/Applic.h and R-ext/Linpack.h used to include
    R_ext/BLAS.h although this was undocumented and unneeded by their
    documented entry points.  They no longer do so.
  * New function R_missing(), factored out from do_missing(), used to
    fix PR#18579.
  * SEXP type S4SXP has been renamed to OBJSXP to support
    experimenting with alternative object systems.  The S4SXP value
    can still be used in C code but is now deprecated.  Based on
    contributions from the R Consortium's Object-Oriented Programming
    Working Group.
  * New function pow1p(x,y) for accurate (1+x)^y.
  * mkCharLenCE was incorrectly documented to take a size_t length
    but was implemented with int (and character strings in R are
    limited to 2^31 - 1 bytes).
  DEPRECATED AND DEFUNCT:
  * data() no longer handles zipped data from long-defunct (since R
    2.13.0) --use-zip-data installations.
  * The legacy graphics devices pictex() and xfig() are now
    deprecated.  They do not support recent graphics enhancements and
    their font handling is rudimentary. The intention is to retain
    them for historical interest as long as they remain somewhat
    functional.
  * Support for encoding = "MacRoman" has been removed from the pdf()
    and postscript() devices - this was a legacy encoding supporting
    classic macOS up to 2001 and no longer has universal libiconv
    support.
  * is.R() is deprecated as no other S dialect is known to be in use
    (and this could only identify historical dialects, not future
    ones).
    Further information on calls can be obtained by setting the
    environment variable _R_DEPRECATED_IS_R_ to error which turns the
    deprecation warning into an error and so by default gives a
    traceback.  (This is done by R CMD check --as-cran.)
  * UseMethod() no longer forwards local variables assigned in the
    generic function into method call environments before evaluating
    the method body. This makes method calls behave more like
    standard function calls and makes method code easier to analyze
    correctly.
  * The twelve as.data.frame.&lt;class&gt;() methods which were deprecated
    only via _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ and in R CMD
    check --as-cran are formally deprecated now in favour of calling
    as.data.frame() or as.data.frame.vector().  The deprecation
    "check" now works also when as.data.frame() is S4 generic thanks
    to Ivan Krylov.
  * The default method for the directional comparison operators &lt;, &gt;,
    &lt;=, and &gt;= now signals an error when one of the operands is a
    language object, i.e. a symbol or a call.
  * For terms.formula(), deprecate abb and neg.out arguments
    _formally_ in addition to just documenting it.
  BUG FIXES:
  * The methods package is more robust to not being attached to the
    search path.  More work needs to be done.
  * pairwise.t.test() misbehaved when subgroups had 0 DF for
    variance, even with pool.sd = TRUE.  (PR#18594 by Jack Berry).
  * Probability distribution functions [dpq]&lt;distrib&gt;(x, *), but also
    bessel[IKJY](x, .) now consistently preserve attributes(x) when
    length(x) == 0, e.g., for a 2 x 0 matrix, thanks to Karolis
    Koncevičius' report PR#18509.
  * Group "Summary" computations such as sum(1:3, 4, na.rm = 5, NA,
    7, na.rm = LL) now give an error instead of either 17 or NN for
    LL true or false, as proposed by Ivan Krylov on the R-devel
    mailing list.  (This also means it is now an error to specify
    na.rm more than once.)
  * as.complex(x) now returns complex(real = x, imaginary = 0) for
    _all_ numerical and logical x, notably also for NA or
    NA_integer_.
  * Directories are now omitted by file.copy(, recursive = FALSE) and
    in file.append() (PR#17337).
  * gsub() and sub() are now more robust to integer overflow when
    reporting errors caused by too large input strings (PR#18346).
  * Top-level handlers are now more robust to attempts to remove a
    handler whilst handlers are running (PR#18508).
  * The handling of Alt+F4 in dialogs created on Windows using
    GraphApp has been fixed (PR#13870).
  * density() more consistently computes grid values for the
    FFT-based convolution, following Robert Schlicht's analysis and
    proposal in PR#18337, correcting density values typically by a
    factor of about 0.999.  Argument old.coords = TRUE provides back
    compatibility.
  * palette.colors() gains a name argument that defaults to FALSE
    controlling whether the vector of colours that is returned has
    names (where possible).  PR#18529.
  * tools::xgettext() no longer extracts the (non-translatable) class
    names from warningCondition and errorCondition calls.
  * S3method(&lt;gen&gt;, &lt;class&gt;, &lt;func&gt;) in the NAMESPACE file now works
    (again) when &lt;func&gt; is visible from the namespace, e.g.,
    imported, or in base.
  * getParseData(f) now also works for a function defined in the
    first of several &lt;pkg&gt;/R/*.R source files, thanks to Kirill
    Müller's report and Duncan Murdoch's patch in PR#16756.
  * Rd \Sexpr macros with nested #ifdef conditionals were not
    processed.
  * A non-blocking connection with non-default encoding (such as a
    socket) now correctly returns from readLines() after new data has
    arrived also when its EOF had been reached previously.  Thanks to
    Peter Meilstrup's report on R-devel and Ivan Krylov's report and
    patch proposal in PR#18555.
  * tools::checkRdContents() failed to detect empty argument
    descriptions when they spanned multiple lines, including those
    generated by prompt().  These cases are now noted by R CMD check.
  * Plain-text help no longer outputs spurious colons in the
    arguments list (for multi-line \item labels in the Rd source).
  * kappa() and rcond() work correctly in more cases; kappa(., norm =
    "2") now warns that it computes the 1-norm with (default) exact =
    FALSE; prompted by Mikael Jagan's quite comprehensive PR#18543.
  * Rd skeletons generated by prompt() or promptData() now use a
    dummy title (so R CMD build works).  tools::checkRdContents() has
    been updated to detect such template leftovers, including from
    promptPackage().
  * When S4 method dispatch fails because no method was found, the
    error message now includes the signature argument names; thanks
    to Michael Chirico's proposal on the R-devel list.
  * withAutoprint({ .. }) now preserves srcrefs previously lost,
    thanks to Andrew Simmons' report plus fix in PR#18572.
  * transform.data.frame() no longer adjusts names; in particular,
    untransformed variables are kept as-is, including those with
    syntactically invalid names (PR#17890).
  * The keep.source option for Rd \Sexpr blocks is no longer ignored.
  * The formula methods for t.test() and wilcox.test() now catch when
    paired is passed, addressing PR#14359; use Pair(x1, x2) ~ 1 for a
    paired test.
  * The level reported in the browser prompt was often too large. It
    now shows the number of browser contexts on the stack.
  * For cbind() and rbind(), the optional deparse.level argument is
    now properly passed to methods, thanks to Mikael Jagan's PR#18579
    and comments there.
  * Some error and warning messages for large ('long vector')
    matrix(v, nr, nc) and dim(m) &lt;- d are now correct about sizes,
    using long long formatting, fixing PR#18612 (and more) reported
    by Mikael Jagan.
  * readChar(useBytes = TRUE) now terminates strings even when the
    underlying connection uses extra spaces in the input buffer.
    This fixes problems with extra garbage seen with gzip
    connections, PR#18605.
  * Named capture in PCRE regular expressions now works also with
    more than 127 named groups (PR#18588).
  * Datetime functions are now robust against long jumps when dealing
    with internal time zone changes.  This avoids confusing warnings
    about an invalid time zone, previously triggered by turning
    warnings into errors or handling them via tryCatch (PR#17966,
    PR#17780).
  * Datetime functions now restore even an empty TZ environment
    variable after internal time zone changes (PR#17724).  This makes
    results of datetime functions with this (typically unintentional)
    setting more predictable.
  * drop.terms(*) now drops response as by default, keep.response =
    FALSE, fixing PR#18564 thanks to Mikael Jagan.
  * dummy.coef(.) now also works for lm()-models with character
    categorical predictor variables rather than factor ones, fixing
    PR#18635 reported by Jinsong Zhao.
  * formals(f) &lt;- formals(f) now also works for a function w/o
    arguments and atomic _constant_ body(f).
  * Correct as.function(&lt;invalid list&gt;, .)'s error message.
  * removeSource() is yet more thorough in finding and removing
    "srcref" and the other source references from parsed R language
    chunks, fixing PR#18638 thanks to Andrew Simmons.
  * dgeom() is more accurate now, notably when its result is very
    small, fixing PR#18642 thanks to the proposal of Morten Welinder,
    also improving other instances where C level binom_raw(x, n, ..)
    has x == 0 or x== n.
  * warning() with options(warn = 1) has improved output for
    multi-line messages.
  * axis.Date() and axis.POSIXct() now respect the par("lab") setting
    for the number of pretty() intervals.
  * Comparisons for language objects (which are based on deparsing)
    are now more careful about using accurate deparsed results
    (PR#18676).
  * Plain-text help (Rd2txt) now correctly preserves blank lines
    following single-line \dontrun code.
  * &lt;POSIXlt&gt;[*] no longer sets wrong "balanced" attribute, fixing
    PR#18681 thanks to Mikael Jagan.
  * str(&lt;classed-call&gt;) now deparses the call as expected, fixing
    PR#18684, reported by Dave Slager.
  * In Rd examples, code following the closing brace of a \dontrun,
    \dontshow or \donttest tag on the same line is no longer skipped
    when R CMD check runs the examples.
  * as.data.frame(matrix(*, ncol=0)) now gets valid names() and
    colnames(); reported by Davis Vaughan on the R-devel list.
  * Internal Mathlib function stirlerr(n) is now almost fully
    (52-bit) accurate for all n &gt;= ~5.9 and more accurate also in the
    range 1 -- 5.9.  This entails small ("after 12th decimal")
    changes in density functions, e.g., dgamma() in _some_ regions of
    their support.  The fix was partly prompted by Morten Welinder's
    PR#18640.
  * Numbers like 9876543.2 are now considered non-integer by Mathlib
    internal R_nonint(), amending original fix of PR#15734.
  * Rd comment lines no longer cause broken paragraphs in the
    rendered PDF and plain-text help. In code blocks, pure comment
    lines (starting with %) no longer produce an empty line.
  * xtabs(Freq ~ .) now consistently defaults to na.action = na.pass,
    using na.rm = FALSE (added as an argument) when summing over Freq
    (PR#17770).
  * tools::testInstalledPackage() is no longer silent about failures
    from running examples or tests and its return code no longer
    ignores failures from checking vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1718366400">- CHANGES IN R 4.4.1:
  C-LEVEL FACILITIES:
  * Functions R_atof and R_strtod declared in header R_ext/Utils.h
    are now documented in 'Writing R Extensions' and so formally part
    of the API.
  * The non-API entry points Rf_setSVector, Rf_StringFalse,
    Rf_StringTrue and Rf_isBlankString have been added to those
    reported by R CMD check.
  * The new function Rf_allocLang is now available. This provides an
    alternative to the idiom of calling Rf_allocList followed by
    SET_TYPEOF.
  UTILITIES:
  * R CMD check now reports as warnings what gfortran calls 'Fortran
    2018 deleted features', all of which have long been marked as
    'obsolescent' and some of which were deleted in Fortran 2008 or
    earlier.  Fortran compilers are no longer required to support
    these.
  BUG FIXES:
  * as.numeric(), scan(), type.convert() and other places which use
    the internal C function R_strtod now require a _non-empty_ digit
    sequence in a decimal or binary exponent.  This aligns with the
    C/POSIX standard for strtod and with ?NumericConstants.
  * as.data.frame(m, make.names=NA) now works correctly for a matrix
    m with NA's in row names.
  * The error message from &lt;POSIXlt&gt;[["hour"]] and similar now
    mentions *[[, "hour"]], as wished for in PR#17409 and proposed by
    Michael Chirico.
  * qbinom() and potentially qpois(), qnbinom(), no longer sometimes
    fail accurate inversion (of pbinom(), etc), thanks to Christopher
    Chang's report and patch in PR#18711.
  * The internal help server on Windows can again serve requests sent
    in quick succession, fixing a regression in R 4.4.0.
  * debugcall(&lt;S3Generic&gt;()) now also works when a corresponding
    S4-generic version is in the methods cache (PR#18143).
  * Package tools' toTitleCase(ch0) now returns character(0) when ch0
    is of zero length; fixing PR#18724, reported by David Hugh Jones.
  * R CMD check is no longer broken (without a check result and no
    explanation in 00check.log) for a package which declares an
    invalid VignetteBuilder in DESCRIPTION but has no vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1730376000">- CHANGES IN R 4.4.2:
  C-LEVEL FACILITIES:
  * The S-compatibility macros F77_COM and F77_COMDECL defined in
    header R_ext/RS.h are deprecated and will be removed shortly.  We
    could find no record of their use.
  BUG FIXES:
  * Mathlib function lgammacor(x) no longer warns about underflow to
    zero for large x.
  * Text widths and heights were incorrectly reported by the Quartz
    device if the drawing context didn't exist yet (typically when
    drawing off-screen to a window that is yet to appear, see
    PR#18591).
  * The Quartz device could segfault in cases where paths with spaces
    are used in the new glyph drawing API.  Thanks to Tomek
    Gieorgijewski (PR#18758).
  * On macOS in R CRAN builds, it is again possible to read
    little-endian UTF-16 text with a BOM from a connection using
    encoding="UTF-16".  Users building R from source should avoid
    using the system libiconv in macOS 14.1 and later.
  * methods' internal .requirePackage() now re-enables primitive
    method dispatch when needed; thanks to Ivan Krylov for
    demystifying CRAN package check failures on the R-devel mailing
    list.</changelog>
</package>
<package pkgid="e5a479a2b77d54737f4adcf78ac6a6f7c5e3f2246165439d60e870c49a66e38715c9e410a1195552ed46324667765292d35f3e39231b43845c84263158a47cbb" name="R-core" arch="x86_64">
  <version epoch="0" ver="4.4.2" rel="51.0.2.2.sr20241103"/>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1620302400">- To get in sync with d:l:R:autoCRAN the Matrix package's split
  in -devel was reversed.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339200">- improved spec file according to comments of dimstar in
  https://build.opensuse.org/request/show/892685</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339201">- CHANGES IN R 4.1.0:
  FUTURE DIRECTIONS:
  * It is planned that the 4.1.x series will be the last to support
    32-bit Windows, with production of binary packages for that
    series continuing until early 2023.
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Data set esoph in package datasets now provides the correct
    numbers of controls; previously it had the numbers of cases added
    to these.  (Reported by Alexander Fowler in PR#17964.)
  NEW FEATURES:
  * www.omegahat.net is no longer one of the repositories known by
    default to setRepositories().  (Nowadays it only provides source
    packages and is often unavailable.)
  * Function package_dependencies() (in package tools) can now use
    different dependency types for direct and recursive dependencies.
  * The checking of the size of tarball in R CMD check --as-cran
    &lt;pkg&gt; may be tweaked via the new environment variable
    _R_CHECK_CRAN_INCOMING_TARBALL_THRESHOLD_, as suggested in
    PR#17777 by Jan Gorecki.
  * Using c() to combine a factor with other factors now gives a
    factor, an ordered factor when combining ordered factors with
    identical levels.
  * apply() gains a simplify argument to allow disabling of
    simplification of results.
  * The format() method for class "ftable" gets a new option justify.
    (Suggested by Thomas Soeiro.)
  * New ...names() utility.  (Proposed by Neal Fultz in PR#17705.)
  * type.convert() now warns when its as.is argument is not
    specified, as the help file always said it _should_.  In that
    case, the default is changed to TRUE in line with its change in
    read.table() (related to stringsAsFactor) in R 4.0.0.
  * When printing list arrays, classed objects are now shown _via_
    their format() value if this is a short enough character string,
    or by giving the first elements of their class vector and their
    length.
  * capabilities() gets new entry "Rprof" which is TRUE when R has
    been configured with the equivalent of --enable-R-profiling (as
    it is by default).  (Related to Michael Orlitzky's report
    PR#17836.)
  * str(xS4) now also shows extraneous attributes of an S4 object
    xS4.
  * Rudimentary support for vi-style tags in rtags() and R CMD rtags
    has been added.  (Based on a patch from Neal Fultz in PR#17214.)
  * checkRdContents() is now exported from tools; it and also
    checkDocFiles() have a new option chkInternal allowing to check
    Rd files marked with keyword "internal" as well.  The latter can
    be activated for R CMD check via environment variable
    _R_CHECK_RD_INTERNAL_TOO_.
  * New functions numToBits() and numToInts() extend the raw
    conversion utilities to (double precision) numeric.
  * Functions URLencode() and URLdecode() in package utils now work
    on vectors of URIs.  (Based on patch from Bob Rudis submitted
    with PR#17873.)
  * path.expand() can expand ~user on most Unix-alikes even when
    readline is not in use.  It tries harder to expand ~, for example
    should environment variable HOME be unset.
  * For HTML help (both dynamic and static), Rd file links to help
    pages in external packages are now treated as references to
    topics rather than file names, and fall back to a file link only
    if the topic is not found in the target package. The earlier rule
    which prioritized file names over topics can be restored by
    setting the environment variable _R_HELP_LINKS_TO_TOPICS_ to a
    false value.
  * c() now removes NULL arguments before dispatching to methods,
    thus simplifying the implementation of c() methods, _but_ for
    back compatibility keeps NULL when it is the first argument.
    (From a report and patch proposal by Lionel Henry in PR#17900.)
  * Vectorize()'s result function's environment no longer keeps
    unneeded objects.
  * Function ...elt() now propagates visibility consistently with
    ..n.  (Thanks to Lionel Henry's PR#17905.)
  * capture.output() no longer uses non-standard evaluation to
    evaluate its arguments.  This makes evaluation of functions like
    parent.frame() more consistent.  (Thanks to Lionel Henry's
    PR#17907.)
  * packBits(bits, type="double") now works as inverse of
    numToBits().  (Thanks to Bill Dunlap's proposal in PR#17914.)
  * curlGetHeaders() has two new arguments, timeout to specify the
    timeout for that call (overriding getOption("timeout")) and TLS
    to specify the minimum TLS protocol version to be used for
    https:// URIs (_inter alia_ providing a means to check for sites
    using deprecated TLS versions 1.0 and 1.1).
  * For nls(), an optional constant scaleOffset may be added to the
    denominator of the relative offset convergence test for cases
    where the fit of a model is expected to be exact, thanks to a
    proposal by John Nash.  nls(*, trace=TRUE) now also shows the
    convergence criterion.
  * Numeric differentiation _via_ numericDeriv() gets new optional
    arguments eps and central, the latter for taking central divided
    differences.  The latter can be activated for nls() via
    nls.control(nDcentral = TRUE).
  * nls() now passes the trace and control arguments to getInitial(),
    notably for all self-starting models, so these can also be fit in
    zero-noise situations via a scaleOffset.  For this reason, the
    initial function of a selfStart model must now have ... in its
    argument list.
  * bquote(splice = TRUE) can now splice expression vectors with
    attributes: this makes it possible to splice the result of
    parse(keep.source = TRUE).  (Report and patch provided by Lionel
    Henry in PR#17869.)
  * textConnection() gets an optional name argument.
  * get(), exists(), and get0() now signal an error if the first
    argument has length greater than 1.  Previously additional
    elements were silently ignored.  (Suggested by Antoine Fabri on
    R-devel.)
  * R now provides a shorthand notation for creating functions, e.g.
    \(x) x + 1 is parsed as function(x) x + 1.
  * R now provides a simple native forward pipe syntax |&gt;.  The
    simple form of the forward pipe inserts the left-hand side as the
    first argument in the right-hand side call.  The pipe
    implementation as a syntax transformation was motivated by
    suggestions from Jim Hester and Lionel Henry.
  * all.equal(f, g) for functions now by default also compares their
    environment(.)s, notably via new all.equal method for class
    function.  Comparison of nls() fits, e.g., may now need
    all.equal(m1, m2, check.environment = FALSE).
  * .libPaths() gets a new option include.site, allowing to _not_
    include the site library.  (Thanks to Dario Strbenac's suggestion
    and Gabe Becker's PR#18016.)
  * Lithuanian translations are now available.  (Thanks to Rimantas
    Zakauskas.)
  * names() now works for DOTSXP objects.  On the other hand, in
    R-lang, the R language manual, we now warn against relying on the
    structure or even existence of such dot-dot-dot objects.
  * all.equal() no longer gives an error on DOTSXP objects.
  * capabilities("cairo") now applies only to the file-based devices
    as it is now possible (if very unusual) to build R with Cairo
    support for those but not for X11().
  * There is optional support for tracing the progress of
    loadNamespace() - see its help.
  * (Not Windows.)  l10n_info() reports an additional element, the
    name of the encoding as reported by the OS (which may differ from
    the encoding part (if any) of the result from
    Sys.getlocale("LC_CTYPE").
  * New function gregexec() which generalizes regexec() to find _all_
    disjoint matches and well as all substrings corresponding to
    parenthesized subexpressions of the given regular expression.
    (Contributed by Brodie Gaslam.)
  * New function charClass() in package utils to query the
    wide-character classification functions in use (such as
    iswprint).
  * The names of quantile()'s result no longer depend on the global
    getOption("digits"), but quantile() gets a new optional argument
    digits = 7 instead.
  * grep(), sub(), regexp and variants work considerably faster for
    long factors with few levels.  (Thanks to Michael Chirico's
    PR#18063.)
  * Provide grouping of x11() graphics windows within a window
    manager such as Gnome or Unity; thanks to a patch by Ivan Krylov
    posted to R-devel.
  * The split() method for class data.frame now allows the f argument
    to be specified as a formula.
  * sprintf now warns on arguments unused by the format string.
  * New palettes "Rocket" and "Mako" for hcl.colors() (approximating
    palettes of the same name from the 'viridisLite' package).
    Contributed by Achim Zeileis.
  * The base environment and its namespace are now locked (so one can
    no longer add bindings to these or remove from these).
  * Rterm handling of multi-byte characters has been improved,
    allowing use of such characters when supported by the current
    locale.
  * Rterm now accepts ALT+ +xxxxxxxx sequences to enter Unicode
    characters as hex digits.
  * Environment variable LC_ALL on Windows now takes precedence over
    LC_CTYPE and variables for other supported categories, matching
    the POSIX behaviour.
  * duplicated() and anyDuplicated() are now optimized for integer
    and real vectors that are known to be sorted via the ALTREP
    framework. Contributed by Gabriel Becker via PR#17993.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 14
    and so packages that provide graphics devices should be
    reinstalled.
  * Graphics devices should now specify deviceVersion to indicate
    what version of the graphics engine they support.
  * Graphics devices can now specify deviceClip.  If TRUE, the
    graphics engine will never perform any clipping of output itself.
    The clipping that the graphics engine does perform (for both
    canClip = TRUE and canClip = FALSE) has been improved to avoid
    producing unnecessary artifacts in clipped output.
  * The grid package now allows gpar(fill) to be a linearGradient(),
    a radialGradient(), or a pattern().  The viewport(clip) can now
    also be a grob, which defines a clipping path, and there is a new
    viewport(mask) that can also be a grob, which defines a mask.
    These new features are only supported so far on the Cairo-based
    graphics devices and on the pdf() device.
  * (Not Windows.)  A warning is given when a Cairo-based type is
    specified for a png(), jpeg(), tiff() or bmp() device but Cairo
    is unsupported (so type = "Xlib" is tried instead).
  * grSoftVersion() now reports the versions of FreeType and
    FontConfig if they are used directly (not _via_ Pango), as is
    most commonly done on macOS.
  C-LEVEL FACILITIES:
  * The _standalone_ libRmath math library and R's C API now provide
    log1pexp() again as documented, and gain log1mexp().
  INSTALLATION on a UNIX-ALIKE:
  * configure checks for a program pkgconf if program pkg-config is
    not found.  These are now only looked for on the path (like
    almost all other programs) so if needed specify a full path to
    the command in PKG_CONFIG, for example in file config.site.
  * C99 function iswblank is required - it was last seen missing ca
    2003 so the workaround has been removed.
  * There are new configure options --with-internal-iswxxxxx,
  - -with-internal-towlower and --with-internal-wcwidth which allows
    the system functions for wide-character classification,
    case-switching and width (wcwidth and wcswidth) to be replaced by
    internal ones.  The first has long been used on macOS, AIX (and
    Windows) but this enables it to be unselected there and selected
    for other platforms (it is the new default on Solaris).  The
    second is new in this version of R and is selected by default on
    macOS and Solaris.  The third has long been the default and
    remains so as it contains customizations for East Asian
    languages.
    System versions of these functions are often minimally
    implemented (sometimes only for ASCII characters) and may not
    cover the full range of Unicode points: for example Solaris (and
    Windows) only cover the Basic Multilingual Plane.
  * Cairo installations without X11 are more likely to be detected by
    configure, when the file-based Cairo graphics devices will be
    available but not X11(type = "cairo").
  * There is a new configure option --with-static-cairo which is the
    default on macOS.  This should be used when only static cairo
    (and where relevant, Pango) libraries are available.
  * Cairo-based graphics devices on platforms without Pango but with
    FreeType/FontConfig will make use of the latter for font
    selection.
  LINK-TIME OPTIMIZATION on a UNIX-ALIKE:
  * Configuring with flag --enable-lto=R now also uses LTO when
    installing the recommended packages.
  * R CMD INSTALL and R CMD SHLIB have a new flag --use-LTO to use
    LTO when compiling code, for use with R configured with
  - -enable-lto=R.  For R configured with --enable-lto, they have
    the new flag --no-use-LTO.
    Packages can opt in or out of LTO compilation _via_ a UseLTO
    field in the DESCRIPTION file.  (As usual this can be overridden
    by the command-line flags.)
  BUILDING R on Windows:
  * for GCC &gt;= 8, FC_LEN_T is defined in config.h and hence character
    lengths are passed from C to Fortran in _inter alia_ BLAS and
    LAPACK calls.
  * There is a new text file src/gnuwin32/README.compilation, which
    outlines how C/Fortran code compilation is organized and
    documents new features:
  * R can be built with Link-Time Optimization with a suitable
    compiler - doing so with GCC 9.2 showed several
    inconsistencies which have been corrected.
  * There is support for cross-compiling the C and Fortran code
    in R and standard packages on suitable (Linux) platforms.
    This is mainly intended to allow developers to test later
    versions of compilers - for example using GCC 9.2 or 10.x has
    detected issues that GCC 8.3 in Rtools40 does not.
  * There is experimental support for cross-building R packages
    with C, C++ and/or Fortran code.
  * The R installer can now be optionally built to support a single
    architecture (only 64-bit or only 32-bit).
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++14 where
    available (which it is on all currently checked platforms): if
    not (as before) C++11 is used if available otherwise C++ is not
    supported.
    Packages which specify C++11 will still be installed using C++11.
    C++14 compilers may give deprecation warnings, most often for
    std::random_shuffle (deprecated in C++14 and removed in C++17).
    Either specify C++11 (see 'Writing R Extensions') or modernize
    the code and if needed specify C++14.  The latter has been
    supported since R 3.4.0 so the package's DESCRIPTION would need
    to include something like
    Depends: R (&gt;= 3.4)
  PACKAGE INSTALLATION on Windows:
  * R CMD INSTALL and R CMD SHLIB make use of their flag --use-LTO
    when the LTO_OPT make macro is set in file etc/${R_ARCH}/Makeconf
    or in a personal/site Makevars file.  (For details see 'Writing R
    Extensions' SS4.5.)
    This provides a valuable check on code consistency.  It does work
    with GCC 8.3 as in Rtools40, but that does not detect everything
    the CRAN checks with current GCC do.
  PACKAGE INSTALLATION on macOS:
  * The default personal library directory on builds with
  - -enable-aqua (including CRAN builds) now differs by CPU type,
    one of
    ~/Library/R/x86_64/x.y/library
    ~/Library/R/arm64/x.y/library
    This uses the CPU type R (and hence the packages) were built for,
    so when a x86_64 build of R is run under Rosetta emulation on an
    arm64 Mac, the first is used.
  UTILITIES:
  * R CMD check can now scan package functions for bogus return
    statements, which were possibly intended as return() calls (wish
    of PR#17180, patch by Sebastian Meyer). This check can be
    activated via the new environment variable
    _R_CHECK_BOGUS_RETURN_, true for --as-cran.
  * R CMD build omits tarballs and binaries of previous builds from
    the top-level package directory.  (PR#17828, patch by Sebastian
    Meyer.)
  * R CMD check now runs sanity checks on the use of LazyData, for
    example that a data directory is present and that
    LazyDataCompression is not specified without LazyData and has a
    documented value.  For packages with large LazyData databases
    without specifying LazyDataCompression, there is a reference to
    the code given in 'Writing R Extensions' SS1.1.6 to test the
    choice of compression (as in all the CRAN packages tested a
    non-default method was preferred).
  * R CMD build removes LazyData and LazyDataCompression fields from
    the DESCRIPTION file of packages without a data directory.
  ENCODING-RELATED CHANGES:
  * The parser now treats \Unnnnnnnn escapes larger than the upper
    limit for Unicode points (\U10FFFF) as an error as they cannot be
    represented by valid UTF-8.
    Where such escapes are used for outputting non-printable
    (including unassigned) characters, 6 hex digits are used (rather
    than 8 with leading zeros).  For clarity, braces are used, for
    example \U{0effff}.
  * The parser now looks for non-ASCII spaces on Solaris (as
    previously on most other OSes).
  * There are warnings (including from the parser) on the use of
    unpaired surrogate Unicode points such as \uD834.  (These cannot
    be converted to valid UTF-8.)
  * Functions nchar(), tolower(), toupper() and chartr() and those
    using regular expressions have more support for inputs with a
    marked Latin-1 encoding.
  * The character-classification functions used (by default) to
    replace the system iswxxxxx functions on Windows, macOS and AIX
    have been updated to Unicode 13.0.0.
    The character-width tables have been updated to include new
    assignments in Unicode 13.0.0.
  * The code for evaluating default (extended) regular expressions
    now uses the same character-classification functions as the rest
    of R (previously they differed on Windows, macOS and AIX).
  * There is a build-time option to replace the system's
    wide-character wctrans C function by tables shipped with R: use
    configure option --with-internal-towlower or (on Windows)
  - DUSE_RI18N_CASE in CFLAGS when building R.  This may be needed
    to allow tolower() and toupper() to work with Unicode characters
    beyond the Basic Multilingual Plane where not supported by system
    functions (e.g. on Solaris where it is the new default).
  * R is more careful when truncating UTF-8 and other multi-byte
    strings that are too long to be printed, passed to the system or
    libraries or placed into an internal buffer.  Truncation will no
    longer produce incomplete multibyte characters.
  DEPRECATED AND DEFUNCT:
  * Function plclust() from the package stats and
    package.dependencies(), pkgDepends(), getDepList(),
    installFoundDepends(), and vignetteDepends() from package tools
    are defunct.
  * Defunct functions checkNEWS() and readNEWS() from package tools
    and CRAN.packages() from utils have been removed.
  * R CMD config CXXCPP is defunct (it was deprecated in R 3.6.2).
  * parallel::detectCores() drops support for Irix (retired in 2013).
  * The LINPACK argument to chol.default(), chol2inv(),
    solve.default() and svd() has been defunct since R 3.1.0.  It was
    silently ignored up to R 4.0.3 but now gives an error.
  * Subsetting/indexing, such as ddd[*] or ddd$x on a DOTSXP
    (dot-dot-dot) object ddd has been disabled; it worked by accident
    only and was undocumented.
  BUG FIXES:
  * Many more C-level allocations (mainly by malloc and strdup) are
    checked for success with suitable alternative actions.
  * Bug fix for replayPlot(); this was turning off graphics engine
    display list recording if a recorded plot was replayed in the
    same session.  The impact of the bug became visible if resize the
    device after replay OR if attempted another savePlot() after
    replay (empty display list means empty screen on resize or empty
    saved plot).
  * R CMD check etc now warn when a package exports non-existing S4
    classes or methods, also in case of no "methods" presence.
    (Reported by Alex Bertram; reproducible example and patch by
    Sebastian Meyer in PR#16662.)
  * boxplot() now also accepts calls for labels such as ylab, the
    same as plot().  (Reported by Marius Hofert.)
  * The help page for xtabs() now correctly states that addNA is
    setting na.action = na.pass among others.  (Reported as PR#17770
    by Thomas Soeiro.)
  * The R CMD check &lt;pkg&gt; gives a longer and more comprehensible
    message when DESCRIPTION misses dependencies, e.g., in Imports:.
    (Thanks to the contributors of PR#17179.)
  * update.default() now calls the generic update() on the formula to
    work correctly for models with extended formulas.  (As reported
    and suggested by Neal Fultz in PR#17865.)
  * The horizontal position of leaves in a dendrogram is now correct
    also with center = FALSE.  (PR#14938, patch from Sebastian
    Meyer.)
  * all.equal.POSIXt() no longer warns about and subsequently ignores
    inconsistent "tzone" attributes, but describes the difference in
    its return value (PR#17277).  This check can be disabled _via_
    the new argument check.tzone = FALSE as suggested by Sebastian
    Meyer.
  * as.POSIXct() now populates the "tzone" attribute from its tz
    argument when x is a logical vector consisting entirely of NA
    values.
  * x[[2^31]] &lt;- v now works.  (Thanks to the report and patch by
    Suharto Anggono in PR#17330.)
  * In log-scale graphics, axis() ticks and label positions are now
    computed more carefully and symmetrically in their range,
    typically providing _more_ ticks, fulfilling wishes in PR#17936.
    The change really corresponds to an improved axisTicks() (package
    grDevices), potentially influencing grid and lattice, for
    example.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now correct to at
    least five digits where it was catastrophically wrong,
    previously.
  * sum(df) and similar "Summary"- and "Math"-group member functions
    now work for data frames df with logical columns, notably also of
    zero rows.  (Reported to R-devel by Martin "b706".)
  * unsplit() had trouble with tibbles due to unsound use of rep(NA,
    len)-indexing, which should use NA_integer_ (Reported to R-devel
    by Mario Annau.)
  * pnorm(x, log.p = TRUE) underflows to -Inf slightly later.
  * show(&lt;hidden S4 generic&gt;) prints better and without quotes for
    non-hidden S4 generics.
  * read.table() and relatives treated an "NA" column name as missing
    when check.names = FALSE PR#18007.
  * Parsing strings containing UTF-16 surrogate pairs such as
    "\uD834\uDD1E" works better on some (uncommon) platforms.
    sprintf("%X", utf8ToInt("\uD834\uDD1E")) should now give "1D11E"
    on all platforms.
  * identical(x,y) is no longer true for differing DOTSXP objects,
    fixing PR#18032.
  * str() now works correctly for DOTSXP and related exotics, even
    when these are doomed.
    Additionally, it no longer fails for lists with a class and
    "irregular" method definitions such that e.g. lapply(*) will
    necessarily fail, as currently for different igraph objects.
  * Too long lines in environment files (e.g. Renviron) no longer
    crash R. This limit has been increased to 100,000 bytes.
    (PR#18001.)
  * There is a further workaround for FreeType giving incorrect
    italic font faces with cairo-based graphics devices on macOS.
  * add_datalist(*, force = TRUE) (from package tools) now actually
    updates an existing data/datalist file for new content.  (Thanks
    to a report and patch by Sebastian Meyer in PR#18048.)
  * cut.Date() and cut.POSIXt() could produce an empty last interval
    for breaks = "months" or breaks = "years".  (Reported as PR#18053
    by Christopher Carbone.)
  * Detection of the encoding of 'regular' macOS locales such as
    en_US (which is UTF-8) had been broken by a macOS change:
    fortunately these are now rarely used with en_US.UTF-8 being
    preferred.
  * sub() and gsub(pattern, repl, x, *) now keep attributes of x such
    as names() also when pattern is NA (PR#18079).
  * Time differences ("difftime" objects) get a replacement and a
    rep() method to keep "units" consistent.  (Thanks to a report and
    patch by Nicolas Bennett in PR#18066.)
  * The \RdOpts macro, setting defaults for \Sexpr options in an Rd
    file, had been ineffective since R 2.12.0: it now works again.
    (Thanks to a report and patch by Sebastian Meyer in PR#18073.)
  * mclapply and pvec no longer accidentally terminate parallel
    processes started before by mcparallel or related calls in
    package parallel (PR#18078).
  * grep and other functions for evaluating (extended) regular
    expressions handle in Unicode also strings not explicitly flagged
    UTF-8, but flagged native when running in UTF-8 locale.
  * Fixed a crash in fifo implementation on Windows (PR#18031).
  * Binary mode in fifo on Windows is now properly detected from
    argument open (PR#15600, PR#18031).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1622808000">- The line %{__install} -m 755 -d %{_infodir}
  no longer works in TW or Factory.
  But without that line it works everywhere. So this instruction
  was commented out of the spec file.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1628596800">- CHANGES IN R 4.1.1:
  NEW FEATURES:
  * require(pkg, quietly = TRUE) is quieter and in particular does
    not warn if the package is not found.
  DEPRECATED AND DEFUNCT:
  * Use of ftp:// URIs should be regarded as deprecated, with
    on-going support confined to method = "libcurl" and not routinely
    tested.  (Nowadays no major browser supports them.)
  * The non-default method = "internal" is deprecated for http:// and
    ftp:// URIs for both download.file and url.
  * On Windows, method = "wininet" is deprecated for http://,
    https:// and ftp:// URIs for both download.file and url.  (A
    warning is only given for ftp://.)
    For ftp:// URIs the default method is now "libcurl" if available
    (which it is on CRAN builds).
    method = "wininet" remains the default for http:// and https://
    URIs but if libcurl is available, using method = "libcurl" is
    preferred.
  INSTALLATION:
  * make check now works also without a LaTeX installation.  (Thanks
    to Sebastian Meyer's PR#18103.)
  BUG FIXES:
  * make check-devel works again in an R build configured with
  - -without-recommended-packages.
  * qnbinom(p, size, mu) for large size/mu is correct now in a range
    of cases (PR#18095); similarly for the (size, prob)
    parametrization of the negative binomial.  Also qpois() and
    qbinom() are better and or faster for extreme cases.  The
    underlying C code has been modularized and is common to all four
    cases of discrete distributions.
  * gap.axis is now part of the axis() arguments which are passed
    from bxp(), and hence boxplot().  (Thanks to Martin Smith's
    report and suggestions in PR#18109.)
  * .First and .Last can again be set from the site profile.
  * seq.int(from, to, *) and seq.default(..) now work better in large
    range cases where from-to is infinite where the two boundaries
    are finite.
  * all.equal(x,y) now returns TRUE correctly also when several
    entries of abs(x) and abs(y) are close to .Machine$double.xmax,
    the largest finite numeric.
  * model.frame() now clears the object bit when removing the class
    attribute of a value via na.action (PR#18100).
  * charClass() now works with multi-character strings on Windows
    (PR#18104, fixed by Bill Dunlap).
  * encodeString() on Solaris now works again in Latin-1 encoding on
    characters represented differently in UTF-8.  Support for
    surrogate pairs on Solaris has been improved.
  * file.show() on Windows now works with non-ASCII path names
    representable in the current native encoding (PR#18132).
  * Embedded R on Windows can now find R home directory via the
    registry even when installed only for the current user
    (PR#18135).
  * pretty(x) with finite x now returns finite values also in the
    case where the extreme x values are close in size to the maximal
    representable number .Machine$double.xmax.
    Also, it's been tweaked for very small ranges and when a boundary
    is close (or equal) to zero; e.g., pretty(c(0,1e-317)) no longer
    has negative numbers, currently still warning about a very small
    range, and pretty(2^-(1024 - 2^-1/(c(24,10)))) is more accurate.
  * The error message for not finding vignette files when weaving has
    correct file sizes now. (Thanks to Sebastian Meyer's PR#18154.)
  * dnbinom(20, &lt;large&gt;, 1) now correctly gives 0, and similar cases
    are more accurate with underflow precaution.  (Reported by Francisco Vera Alcivar in PR#18072.)</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635163200">- repaired https://bugzilla.suse.com/show_bug.cgi?id=1191380
  (rpmacros now go to rpmmacrodir)
- minor clean-ups in spec file</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635768000">- CHANGES IN R 4.1.2:
  C-LEVEL FACILITIES:
  * The workaround in headers R.h and Rmath.h (using namespace std;)
    for the Oracle Developer Studio compiler is no longer needed now
    C++11 is required so has been removed.  A couple more usages of
    log() (which should have been std::log()) with an int argument
    are reported on Solaris.
  * The undocumented limit of 4095 bytes on messages from the
    S-compatibility macros PROBLEM and MESSAGE is now documented and
    longer messages will be silently truncated rather than
    potentially causing segfaults.
  * If the R_NO_SEGV_HANDLER environment variable is non-empty, the
    signal handler for SEGV/ILL/BUS signals (which offers recovery
    user interface) is not set. This allows more reliable debugging
    of crashes that involve the console.
  DEPRECATED AND DEFUNCT:
  * The legacy S-compatibility macros PROBLEM, MESSAGE, ERROR, WARN,
    WARNING, RECOVER, ... are deprecated and will be hidden in R
    4.2.0. R's native interface of Rf_error and Rf_warning has long
    been preferred.
  BUG FIXES:
  * .mapply(F, dots, .) no longer segfaults when dots is not a list
    and uses match.fun(F) as always documented; reported by Andrew
    Simmons in PR#18164.
  * hist(&lt;Date&gt;, ...) and hist(&lt;POSIXt&gt;, ...)  no longer pass
    arguments for rect() (such as col and density) to axis().
    (Thanks to Sebastian Meyer's PR#18171.)
  * \Sexpr{ch} now preserves Encoding(ch). (Thanks to report and
    patch by Jeroen Ooms in PR#18152.)
  * Setting the RNG to "Marsaglia-Multicarry" e.g., by RNGkind(), now
    warns in more places, thanks to Andr'e Gillibert's report and
    patch in PR#18168.
  * gray(numeric(), alpha=1/2) no longer segfaults, fixing PR#18183,
    reported by Till Krenz.
  * Fixed dnbinom(x, size=&lt;very_small&gt;, .., log=TRUE) regression,
    reported by Martin Morgan.
  * as.Date.POSIXlt(x) now keeps names(x), thanks to Davis Vaughan's
    report and patch in PR#18188.
  * model.response() now strips an "AsIs" class typically, thanks to
    Duncan Murdoch's report and other discussants in PR#18190.
  * try() is considerably faster in case of an error and long call,
    as e.g., from some do.call().  Thanks to Alexander Kaever's
    suggestion posted to R-devel.
  * qqline(y = &lt;object&gt;) such as y=I(.), now works, see also
    PR#18190.
  * Non-integer mgp par() settings are now handled correctly in
    axis() and mtext(), thanks to Mikael Jagan and Duncan Murdoch's
    report and suggestion in PR#18194.
  * formatC(x) returns length zero character() now, rather than ""
    when x is of length zero, as documented, thanks to Davis
    Vaughan's post to R-devel.
  * removeSource(fn) now retains (other) attributes(fn).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1647000000">- CHANGES IN R 4.1.3:
  NEW FEATURES:
  * The default version of Bioconductor has been changed to 3.14.
    (This is used by setRepositories and the menus in GUIs.)
  UTILITIES:
  * R CMD check --as-cran has a workaround for a bug in versions of
    file up to at least 5.41 which mis-identify DBF files last
    changed in 2022 as executables.
  C-LEVEL FACILITIES:
  * The legacy S-compatibility macros SINGLE_* in R_ext/Constants.h
    (included by R.h) are deprecated and will be removed in R 4.2.0.
  BUG FIXES:
  * Initialization of self-starting nls() models with initialization
    functions following the pre-R-4.1.0 API (without the ...
    argument) works again for now, with a deprecation warning.
  * Fixed quoting of ~autodetect~ in Java setting defaults to avoid
    inadvertent user lookup due to leading ~, reported in PR#18231 by
    Harold Gutch.
  * substr(., start, stop) &lt;- v now treats _negative_ stop values
    correctly.  Reported with a patch in PR#18228 by Brodie Gaslam.
  * Subscripting an array x without dimnames by a
    length(dim(x))-column character matrix gave "random" non-sense,
    now an error; reported in PR#18244 by Mikael Jagan.
  * ...names() now matches names(list(...)) closely, fixing PR#18247.
  * all.equal(*, scale = s) now works as intended when length(s) &gt; 1,
    partly thanks to Michael Chirico's PR#18272.
  * print(x) for long vectors x now also works for named atomic
    vectors or lists and prints the correct number when reaching the
    getOption("max.print") limit; partly thanks to a report and
    proposal by Hugh Parsonage to the R-devel list.
  * all.equal(&lt;selfStart&gt;, *) no longer signals a deprecation
    warning.
  * reformulate(*, response=r) gives a helpful error message now when
    length(r) &gt; 1, thanks to Bill Dunlap's PR#18281.
  * Modifying globalCallingHandlers inside withCallingHandlers() now
    works or fails correctly, thanks to Henrik Bengtsson's PR#18257.
  * hist(&lt;Date&gt;, breaks = "days") and hist(&lt;POSIXt&gt;, breaks = "secs")
    no longer fail for inputs of length 1.
  * qbeta(.001, .9, .009) and similar cases now converge correctly
    thanks to Ben Bolker's report in PR#17746.
  * window(x, start, end) no longer wrongly signals "'start' cannot
    be after 'end'", fixing PR#17527 and PR#18291.
  * data() now checks that its (rarely used) list argument is a
    character vector - a couple of packages passed other types and
    gave incorrect results.
  * which() now checks its arr.ind argument is TRUE rather coercing
    to logical and taking the first element - which gave incorrect
    results in package code.
  * model.weights() and model.offset() more carefully extract their
    model components, thanks to Ben Bolker and Tim Taylor's R-devel
    post.
  * list.files(recursive = TRUE) now shows all broken symlinks
    (previously, some of them may have been omitted, PR#18296).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1650628800">- CHANGES IN R 4.2.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * The formula method of aggregate() now matches the generic in
    naming its first argument x (resolving PR#18299 by Thomas
    Soeiro).
    This means that calling aggregate() with a formula as a named
    first argument requires name formula in earlier versions of R and
    name x now, so portable code should not name the argument (code
    in many packages did).
  * Calling &amp;&amp; or || with either argument of length greater than one
    now gives a warning (which it is intended will become an error).
  * Calling if() or while() with a condition of length greater than
    one gives an error rather than a warning.  Consequently,
    environment variable _R_CHECK_LENGTH_1_CONDITION_ no longer has
    any effect.
  * Windows users should consult the WINDOWS section below for some
    profound changes including
  * Support for 32-bit builds has been dropped.
  * UTF-8 locales are used where available.
  * The default locations for the R installation and personal
    library folder have been changed.
    Thanks to Tomas Kalibera for months of work on the Windows port
    for this release.
  NEW FEATURES:
  * matrix(x, n, m) now warns in more cases where length(x) differs
    from n * m, as suggested by Abby Spurdle and Wolfgang Huber in
    Feb 2021 on the R-devel mailing list.
    This warning can be turned into an error by setting environment
    variable _R_CHECK_MATRIX_DATA_ to TRUE: R CMD check --as-cran
    does so unless it is already set.
  * Function file_test() in package utils gains tests for symlinks,
    readability and writability.
  * capabilities("libxml") is now false.
    The description of capabilities("http/ftp") now reflects that it
    refers to the default method, no longer the internal one.
  * simplify2array() gains an except argument for controlling the
    exceptions used by sapply().
  * Environment variables R_LIBS_USER and R_LIBS_SITE are both now
    set to the R system default if unset or empty, and can be set to
    NULL to indicate an empty list of user or site library
    directories.
  * The warning for axis()(-like) calls in cases of relatively small
    ranges (typically in log-scale situations) is slightly improved
    _and_ suppressed from explicit calls to .axisPars() as has always
    been the intention.
  * The contrasts setter function `contrasts&lt;-` gains an explicit
    default how.many = NULL rather than just using missing(how.many).
  * grid.pretty() gains a new optional argument n = 5.
  * There is a new function .pretty() with option bounds as a
    technical-utility version of pretty().  It and pretty() gain a
    new argument f.min with a better than back-compatible default.
  * Function grDevices::axisTicks() and related functions such as
    graphics::axis() work better, notably for the log scale; partly
    because of the pretty() improvements, but also because care is
    taken e.g., when ylim is finite but diff(ylim) is infinite.
  * nclass.FD() gains a digits option.
  * The R Mathlib internal C function bd0() (called indirectly from a
    dozen probability density and distribution functions such as
    dpois(), dbinom(), dgamma(), pgamma() _etc_) has been
    complemented by a more sophisticated and (mostly) more accurate C
    function ebd0(), currently called only by internal dpois_raw()
    improving accuracy for R level dpois() and potentially others
    calling it such as dnbinom(), dgamma() or pgamma().  (Thanks to
    Morten Welinder's PR#15628.)
  * write.ftable() gains sep = " " argument as suggested by Thomas
    Soeiro.
  * The names of the locale categories supported by R's
    Sys.getlocale() and Sys.setlocale() are now provided by variable
    .LC.categories in the base namespace.
  * The Date and POSIXt methods for hist() and the histogram method
    for plot() now also use the new default col = "lightgray" in
    consistency with the corresponding change to hist()'s default for
    R 4.0.0.
  * hist.default() gains new fuzz argument, and the histogram plot
    method no longer uses fractional axis ticks when displaying
    counts ("Frequency").
  * mapply() and hence Map() now also obey the "max-or-0-if-any"
    recycling rule, such that, e.g., Map(`+`, 1:3, 1[0]) is valid
    now.
  * as.character(&lt;obj&gt;) for "hexmode" or "octmode" objects now
    fulfils the important basic rule as.character(x)[j] ===
    as.character(x[j]).
  * The set utility functions, notably intersect() have been tweaked
    to be more consistent and symmetric in their two set arguments,
    also preserving a common mode.
  * substr(ch, start,end) &lt;- new now e.g., preserves names(ch); ditto
    for substring(), thanks to a patch from Brodie Gaslam.
  * plot(&lt;lm&gt;) gains a extend.ylim.f argument, in partial response to
    PR#15285; further PR#17784 is fixed thanks to several
    contributors and a patch by Elin Waring.  The Cook's dist
    contours get customizable via cook.col and cook.lty with a
    different default color and their legend is nicer by default and
    customizable via cook.legendChanges.
  * Attempting to subset an object that is not subsettable now
    signals an error of class notSubsettableError. The
    non-subsettable object is contained in the object field of the
    error condition.
  * Subscript-out-of-bounds errors are now signaled as errors of
    class subscriptOutOfBoundsError.
  * Stack-overflow errors are now signaled as errors inheriting from
    class stackOverflowError. See ?stackOverflowError for more
    details.
  * New partly experimental Sys.setLanguage() utility, solving the
    main problem of PR#18055.
  * gettext() and gettextf() get a new option trim = TRUE which when
    set to false allows translations for strings such as "Execution
    halted\n" typical for C code.
  * An experimental implementation of hash tables is now available.
    See ?hashtab for more details.
  * identical() gains a extptr.as.ref argument for requesting that
    external pointer objects be compared as reference objects.
  * reorder() gets an argument decreasing which it passes to sort()
    for level creation; based on the wish and patch by Thomas Soeiro
    in PR#18243.
  * as.vector() gains a data.frame method which returns a simple
    named list, also clearing a long standing 'FIXME' to enable
    as.vector(&lt;data.frame&gt;, mode="list").  This breaks code relying
    on as.vector(&lt;data.frame&gt;) to return the unchanged data frame.
  * legend() is now vectorized for arguments cex, x.intersp, and
    text.width.  The latter can now also be specified as a vector
    (one element for each column of the legend) or as NA for
    computing a proper column wise maximum value of strwidth(legend).
    The argument y.intersp can be specified as a vector with one
    entry for each row of the legend.
    legend() also gains new arguments title.cex and title.font.
    Thanks to Swetlana Herbrandt.
  * Deparsing no longer remaps attribute names dim, dimnames, levels,
    names and tsp to historical S-compatible names (which structure()
    maps back).
  * sample() and sample.int() have additional sanity checks on their
    size and n arguments.
    all.equal.numeric() gains a sanity check on its tolerance
    argument - calling all.equal(a, b, c) for three numeric vectors
    is a surprisingly common error.
    mean(na.rm =), rank(na.last =), barplot(legend.text =),
    boxplot(), contour(drawlabels =), polygon(border =) and
    methods::is(class2 =) have more robust sanity checks on their
    arguments.
    R CMD Rd2pdf (used by R CMD check) has a more robust sanity check
    on the format of \alias{} commands.
  * psigamma(x, deriv) for negative x now also works for deriv = 4
    and 5; their underlying C level dpsifn() is documented in
    'Writing R Extensions'.
  * The HTML help system now uses HTML5 (wish of PR#18149).
  * ks.test() now provides exact p-values also with ties and MC
    p-values in the two-sample (Smirnov) case.  By Torsten Hothorn.
  * ks.test() gains a formula interface, with y ~ 1 for the
    one-sample (Kolmogorov) test and y ~ group for the two-sample
    (Smirnov) test.  Contributed by Torsten Hothorn.
  * The return value from ks.test() now has class c("ks.test",
    "htest") - packages using try() need to take care to use
    inherits() and not == on the class.
  * New functions psmirnov(), qsmirnov() and rsmirnov() in package
    stats implementing the asymptotic and exact distributions of the
    two-sample Smirnov statistic.
  * iconv() now allows sub = "c99" to use C99-style escapes for UTF-8
    inputs which cannot be converted to encoding to.
  * In a forward pipe |&gt; expression it is now possible to use a named
    argument with the placeholder _ in the rhs call to specify where
    the lhs is to be inserted.  The placeholder can only appear once
    on the rhs.
  * The included LAPACK sources have been updated to version 3.10.0,
    except for the four Fortran 77 routines which 3.10.0 has
    re-implemented in Fortran 90 (where the older versions have been
    retained as the R build process does not support Fortran 90).
  * path.expand() and most other uses of tilde expansion now warn if
    a path would be too long if expanded.  (An exception is
    file.exists(), which silently returns false.)
  * trunc(&lt;Date&gt;, *) now supports units = "months" or "years" for
    consistency with the POSIXt method, thanks to Dirk Eddelbuettel's
    proposal in PR#18099.
  * list2DF() now checks that its arguments are of the same length,
    rather than use recycling.
  * The HTML help system has several new features: LaTeX-like math
    can be typeset using either KaTeX or MathJax, usage and example
    code is highlighted using Prism, and for dynamic help the output
    of examples and demos can be shown within the browser if the
    knitr package is installed. These features can be disabled by
    setting the environment variable _R_HELP_ENABLE_ENHANCED_HTML_ to
    a false value.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 15
    and so packages that provide graphics devices should be
    reinstalled.
  * The grid package now allows the user to specify a "vector" of
    pattern fills.  The fill argument to gpar() accepts a list of
    gradients and/or patterns and the functions linearGradient(),
    radialGradient(), and pattern() have a new group argument.
    Points grobs (data symbols) can now also have a pattern fill.
    The grobCoords() function now returns a more informative and
    complex result.
  * The grid package has new functions for drawing isolated groups:
    grid.group(), grid.define(), and grid.use().  These functions add
    compositing operators and affine transformations to R's graphics
    capabilities.
    The grid package also has new functions for stroking and filling
    paths: grid.stroke(), grid.fill(), and grid.fillStroke().
    A new function as.path() allows the user to specify the fill rule
    for a path that is to be used for clipping, stroking, or filling;
    available options are "winding" and "evenodd".  A new function
    as.mask() allows the user to specify the type of a mask;
    available options are "alpha" and "luminance".
    These new features are only supported so far (at most) on the
    Cairo-based graphics devices and on the pdf() device.
  * dev.capabilities() reports on device support for the new
    features.
  * par() now warns about unnamed non-character arguments to prevent
    misuse such as {usr &lt;- par("usr"); par(usr)}.
  INSTALLATION:
  * Facilities for accessing ftp:// sites are no longer tested
    (except _pro tem_ for curlGetHeaders()) as modern browsers have
    removed support.
  * R can now be built with DEFS = -DSTRICT_R_HEADERS .
  PACKAGE INSTALLATION:
  * R CMD INSTALL no longer tangles vignettes. This completes an R
    CMD build change in R 3.0.0 and affects packages built before R
    3.0.2. Such packages should be re-made with R CMD build to have
    the tangled R code of vignettes shipped with the tarball.
  * USE_FC_LEN_T will become the default: this uses the correct
    prototypes for Fortran BLAS/LAPACK routines called from C/C++,
    and requires adjustment of most such calls - see 'Writing R
    Extensions' SS6.6.2.  (This has been supported since R 3.6.2.)
  * Package installation speed for packages installed with
    keep.source has been improved. This resolve the issue reported by
    Ofek Shilon in PR#18236.
  UTILITIES:
  * R CMD check can optionally report files/directories left behind
    in home, /tmp (even though TMPDIR is set) and other directories.
    See the "R Internals" manual for details.
  * R CMD check now reports byte-compilation errors during
    installation.  These are not usually fatal but may result in
    parts of the package not being byte-compiled.
  * _R_CHECK_DEPENDS_ONLY_ can be applied selectively to examples,
    tests and/or vignettes in R CMD check: see the "R Internals"
    manual.
  * _R_CHECK_SRC_MINUS_W_IMPLICIT_ now defaults to true: recent
    versions of Apple clang on macOS have made implicit function
    declarations in C into a compilation error.
  * R CMD check --as-cran makes use of the environment variable
    AUTORECONF.  See the "R Internals" manual SS8 for further details.
  * R CMD check --use-valgrind also uses valgrind when re-building
    vignettes as some non-Sweave vignettes unhelpfully comment out
    all their code when R CMD check runs vignettes.
  * Errors in re-building vignettes (unless there are LaTeX errors)
    are reported by R CMD check as ERROR rather than WARNING when
    running vignettes has been skipped (as it frequently is in CRAN
    checks and by --as-cran).
  * R CMD Rd2pdf gains a --quiet option that is used by R CMD build
    when building the PDF package manual.
  * R CMD Rd2pdf now always runs LaTeX in batch mode, consistent with
    Texinfo &gt;= 6.7. The --batch option is ignored.
  * R CMD build and R CMD check now include the Rd file name and line
    numbers in the error message of an \Sexpr evaluation failure.
  * For packages using the \doi Rd macro (now an install-time \Sexpr)
    but no other dynamic Rd content, R CMD build now produces a
    smaller tarball and is considerably faster - skipping temporary
    package installation.
  C-LEVEL FACILITIES:
  * The non-API header R_ext/R-ftp-http.h is no longer provided, as
    the entry points it covered are now all defunct.
  * A number of non-API declarations and macro definitions have been
    moved from the installed header Rinternals.h to the internal
    header Defn.h. Packages that only use entry points and
    definitions documented to be part of the API as specified in
    'Writing R Extensions' SS6 should not be affected.
  * The macro USE_RINTERNALS no longer has any effect when compiling
    package code.  Packages which also use R_NO_REMAP will need to
    ensure that the remapped names are used for calls to API
    functions that were formerly also made available as macros.
  * The deprecated legacy S-compatibility macros PROBLEM, MESSAGE,
    ERROR, WARN, WARNING, RECOVER, ... are no longer defined in
    R_exts/RS.h (included by R.h).  Replace these by calls to
    Rf_error and Rf_warning (defined in header R_ext/Error.h included
    by R.h).
    Header R_ext/RS.h no longer includes R_ext/Error.h.
  * Header R_ext/Constants.h (included by R.h) when included from C++
    now includes the C++ header cfloat rather than the C header
    float.h (now possible as C++11 is required).
  * The legacy S-compatibility macros DOUBLE_* in R_ext/Constants.h
    (included by R.h) are deprecated.
  * The deprecated S-compatibility macros SINGLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * R_Calloc, R_Free and R_Realloc are preferred to their unprefixed
    forms and error messages now use the prefix. These forms were
    introduced in R 3.4.0 and are available even when
    STRICT_R_HEADERS is defined.
  * rmultinom has been documented in 'Writing R Extensions' SS6 so is
    now part of the R API.
  * Similarly, Rtanpi, called from R level tanpi() is now part of the
    R API.
  * The long-deprecated, undocumented and non-API entry point call_R
    is no longer declared in R_ext/RS.h (included by R.h).
  * The header S.h which has been unsupported since Jan 2016 has been
    removed.  Use R.h instead.
  DEPRECATED AND DEFUNCT:
  * The (non-default and deprecated) method = "internal" for
    download.file() and url() no longer supports http:// nor ftp://
    URIs.  (It is used only for file:// URIs.)
    On Windows, download.file(method = "wininet") no longer supports
    ftp:// URIs.  (It is no longer the default method, which is
    "libcurl" and does.)
    On Windows, the deprecated method = "wininet" now gives a warning
    for http:// and https:// URIs for both download.file() and url().
    (It is no longer the default method.)
  * On Windows, the command-line option --max-mem-size and
    environment variable R_MAX_MEM_SIZE are defunct.  The memory
    allocation limit was important for 32-bit builds, but these are
    no longer supported.
  * default.stringsAsFactors() is now formally deprecated, where that
    was only mentioned on its regular help page, previously.  So it
    now gives a warning if called.
  * unix.time() is defunct now; it had been deprecated since R 3.4.0.
  BUG FIXES:
  * Setting digits = 0 in format(), print.default() (and hence
    typically print()) or options() is again invalid.  Its behaviour
    was platform-dependent, and it is unclear what "zero significant
    digits" should mean (PR#18098).
  * Messages from C code in the cairo section of package grDevices
    are now also offered for translation, thanks to Michael Chirico's
    PR#18123.
  * mean(x) with finite x now is finite also without "long.double"
    capability.
  * R CMD Rd2pdf no longer leaves an empty build directory behind
    when it aborts due to an already existing output file.  (Thanks
    to Sebastian Meyer's PR#18141.)
  * density(x, weights = w, na.rm = TRUE) when anyNA(x) is true, now
    removes weights "in parallel" to x, fixing PR#18151, reported by
    Matthias Gondan.  Additionally, it gets a subdensity option.
  * Conversion of \Sexpr[]{&lt;expR&gt;} to LaTeX or HTML no longer
    produces long blocks of empty lines when &lt;expR&gt; itself contains
    several lines all producing empty output.  Thanks to a report and
    patch by Ivan Krylov posted to R-devel.
  * R CMD build no longer fails if a package vignette uses child
    documents and inst/doc exists.  (Thanks to Sebastian Meyer's
    PR#18156.)
  * When an R documentation ('help' source) file man/foo.Rd in a
    package has \donttest{..} examples with a syntax error, it is now
    signalled as ERROR and with correct line numbers relating to the
  * -Ex.R file, thanks to Duncan Murdoch and Sebastian Meyer's
    reports and patch proposals in PR#17501.
  * Improved determination of the correct translation domain in
    non-base packages, addressing the combination of PR#18092 and
    PR#17998 (#c6) with reports and _augmented_ patch #2904 by
    Suharto Anggono.
    Note that "R-base" is no longer the default domain e.g., for
    top-level calls to gettext(); rather translation needs explicit
    domain = * specification in such cases.
  * identical(attrib.as.set=FALSE) now works correctly with data
    frames with default row names (Thanks to Charlie Gao's PR#18179).
  * txtProgressBar() now enforces a non-zero width for argument char,
    without which no progress can be visible.
  * dimnames(table(d)) is more consistent in the case where d is a
    list with a single component, thanks to Thomas Soeiro's report to
    R-devel.
    Further, table(d1, d2) now gives an error when d1 and d2 are data
    frames as suggested by Thomas in PR#18224.
  * Fix for drawing semi-transparent lines and fills on the native
    Windows graphics device (PR#18219 and PR#16694).  Thanks to Nick
    Ray for helpful diagnosis on Bugzilla.
  * The deparser now wraps sub-expressions such as if(A) ..  with
    parentheses when needed; thanks to Duncan Murdoch's PR#18232 and
    Lionel Henry's patches there.
  * remove.packages() no longer tries to uninstall Priority: base
    packages, thanks to a report and suggestions by Colin Fay in
    PR#18227.
  * win.metafile() now has xpinch and ypinch arguments so that the
    user can override Windows' (potentially wrong) guess at device
    dimensions.
  * x[i] and x[[i]] for non-integer i should now behave in all cases
    as always documented: the index used is equivalent to
    as.integer(i) unless that would overflow where trunc(i) is used
    instead; thanks to Suharto Anggono's report and patch proposals
    in PR#17977.
  * asOneSidedFormula() now associates the resulting formula with the
    global environment rather than the evaluation environment created
    for the call.
  * &lt;bibentry&gt;$name now matches the field name case-insensitively,
    consistent with bibentry() creation and the replacement method.
  * cbind() failed to detect some length mismatches with a mixture of
    time-series and non-time-series inputs.
  * The default LaTeX style file Sweave.sty used by the RweaveLatex
    driver no longer loads the obsolete ae package; thanks to a
    report by Thomas Soeiro in PR#18271.  Furthermore, it now skips
    \usepackage[T1]{fontenc} for engines other than pdfTeX (if
    detected) or if the new [nofontenc] option is used.
  * smooth.spline() now stores its logical cv argument more safely,
    fixing a rare bug when printing, and also stores n.
  * smooth.spline(x,y,*) now computes the cv.crit statistic
    correctly, also when is.unsorted(x), fixing PR#18294.
  * The data.frame method of rbind() now warns when binding
    not-wholly-recycling vectors, by analogy to the default method
    (for matrices).
  * setAs() finds the correct class for name to when multiple
    packages define a class with that name. Thanks to Gabor Csardi
    for the report.
  * Fix for detaching a package when two classes of the same name are
    present in method signatures for the same generic. Thanks to
    Gabor Csardi for the report.
  * match.arg("", c("", "a", "B")) gives a better error message, in
    part from PR#17959, thanks to Elin Waring.
  * R CMD Sweave --clean no longer removes pre-existing files or
    subdirectories (PR#18242).
  * The quartz() device no longer splits polylines into subpaths.
    That has caused narrowly-spaced lines with many points to always
    look solid even when dashed line type was used due to dash phase
    restarts.
  * Deparsing constructs such as quote(1 + `!`(2) + 3) works again as
    before R 3.5.0, thanks to the report and patch in PR#18284 by
    Suharto Anggono.
  * as.list(f) for a factor f now keeps names(f), fixing PR#18309.
  * qbeta(.001, .9, .009) and analogous qf() calls now return a
    correct value instead of NaN or wrongly 1, all with a warning;
    thanks to the report by Ludger Goeminne in PR#18302.
  * plot.lm() failed to produce the plot of residuals vs.  factor
    levels (i.e., which=5 when leverages are constant) for models
    with character predictors (PR#17840).
  * interaction.plot(..., xtick = TRUE) misplaced the x-axis line
    (PR#18305).
  * Not strictly fixing a bug, format()ing and print()ing of
    non-finite Date and POSIXt values NaN and +/-Inf no longer show
    as NA but the respective string, e.g., Inf, for consistency with
    numeric vector's behaviour, fulfilling the wish of PR#18308.
  * R CMD check no longer runs test scripts generated from
    corresponding .Rin files twice and now signals an ERROR if
    processing an .Rin script fails.
  * tools::Rd2txt() used for plain-text help pages now renders \hrefs
    (if tools::Rd2txt_options(showURLs = TRUE)) and \urls with
    percent-encoding and standards-compliant delimiting style (angle
    brackets and no URL: prefix).  \email is now rendered with a
    mailto: prefix.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1655985600">- CHANGES IN R 4.2.1:
  NEW FEATURES:
  * New function utils::findCRANmirror() to find out if a CRAN mirror
    has been selected, otherwise fallback to the main site.  This
    behaves in the same way as tools::CRAN_package_db() and is
    intended for packages wishing to access CRAN for purposes other
    than installing packages.
    The need for this was shown by a day when the main CRAN website
    was offline and a dozen or so packages which had its URL
    hardcoded failed their checks.
  INSTALLATION on a UNIX-ALIKE:
  * The libraries searched for by --with-blas (without a value) now
    include BLIS (after OpenBLAS but before ATLAS).  And on macOS,
    the Accelerate framework (after ATLAS).  (This is patterned after
    the AX_BLAS macro from the Autoconf Archive.)
  * The included LAPACK sources have been updated to 3.10.1.
  UTILITIES:
  * The (full path to) the command tidy to be used for HTML
    validation can be set by environment variable R_TIDYCMD.
  * Setting environment variable _R_CHECK_RD_VALIDATE_RD2HTML_ to a
    false value will override R CMD check --as-cran and turn off HTML
    validation.  This provides a way to circumvent a problematic
    tidy.
    The 2006 version that ships with macOS is always skipped.
  C-LEVEL FACILITIES:
  * The undocumented legacy declarations of Sint, Sfloat, SINT_MAX
    and SINT_MIN in header R.h are deprecated.
  BUG FIXES:
  * fisher.test(d) no longer segfaults for "large" d; fixing PR#18336
    by preventing/detecting an integer overflow reliably.
  * tar(., files=*) now produces correctly the warning about invalid
    uid or gid of files, fixing PR#18344, reported by Martin Morgan.
  * tk_choose.files() with multi = FALSE misbehaved on paths
    containing spaces (PR#18334) (regression introduced in R 4.0.0).
  * sort(x, partial = ind, *) now works correctly notably for the
    non-default na.last = FALSE or TRUE, fixing PR#18335 reported by
    James Edwards.
  * Environment variable _R_CHECK_XREFS_REPOSITORIES_ is only used
    for checking .Rd cross-references in R CMD check (as documented)
    and not for other uses looking for a CRAN mirror.
  * The search for a CRAN mirror when checking packages now uses
    getOption("repos") if that specifies a CRAN mirror, even when it
    does not also specify all three Bioconductor repositories (as was
    previously required).
  * The HTML code generated by tools::Rd2HTML() has been improved to
    pass tidy 5.8.0.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1667217600">- CHANGES IN R 4.2.2:
  NEW FEATURES:
  * tools::Rdiff(useDiff = TRUE) checks for the presence of an
    external diff command and switches to useDiff = FALSE if none is
    found.  This allows R CMD Rdiff to always work.
  * On Windows, environment variable R_LIBCURL_SSL_REVOKE_BEST_EFFORT
    can be used to switch to only 'best-effort' SSL certificate
    revocation checks with the default "libcurl" download method.
    This reduces security, but may be needed for downloads to work
    with MITM proxies (PR#18379).
  * (macOS) The run-time check for libraries from XQuartz for X11 and
    Tcl/Tk no longer uses otool from the Apple Developer Tools
    (PR#18400).
  * The LaTeX style for producing the PDF manuals, Rd.sty, now loads
    the standard amsmath, amsfonts and amssymb packages for greater
    coverage of math commands in the Rd \eqn and \deqn macros.  The
    \mathscr LaTeX command is also provided (via the mathrsfs
    package, if available, or the amsfonts bundle otherwise),
    fulfilling the wish of PR#18398.
  * (Windows) The default format of readClipboard() and
    writeClipboard() has been changed to 13 (CF_UNICODETEXT).
  INSTALLATION on a UNIX-ALIKE:
  * The PDF manuals (if built) can be compacted by the new target
    make compact-pdf (at the top level or in directory doc/manual).
  * There is now configure support for LLVM clang 15 on Linux, which
    defaults to position-independent (PIE) executables whereas
    gfortran does not.
  * Many small changes to ease compilation (and suppress warnings)
    with LLVM clang 15.
  BUG FIXES:
  * Rscript -e would fail if stdin were closed (Reported by Henrik
    Bengtsson.)
  * qt(*, log.p=TRUE) in outer tails no longer produces NaN in its
    final steps, thus fixing PR#18360.
  * tools::Rd2latex() now escapes hashes and ampersands when writing
    URLs, fixing LaTeX errors with such URLs in \tabular.
  * When isGeneric(f, fdef=*) is used with mismatching names, the
    warning is better understandable; reported (with fix) in PR#18370
    by Gabe Becker.
  * poly(x, n) now works again (and is now documented) when x is a
    "Date" or "POSIXct" object, or of another class while fulfilling
    mode(x) == "numeric".  This also enables poly(x, *, raw=TRUE) for
    such variables.  Reported by Michael Chirico to R-devel.
  * write.table(), write.csv() and write.csv2() restore their
    numerical precision (internal equivalent of digits = 15) after an
    interrupt (PR#18384).
  * One can now read also byte FF from a clipboard connection
    (PR#18385).
  * source("") and source(character()) now give more helpful error
    messages.
  * R CMD check --as-cran set _R_CHECK_TIMINGS_ too late to have the
    intended effect.
  * as.POSIXlt(x) now also works with very large dates x, fixing
    PR#18401 reported by Hannes M"uhleisen.
  * Files can now be extracted even from very large zip archives
    (PR#18390, thanks to Martin Jakt).
  * Non-finite objects of class "POSIXlt" are now correctly coerced
    to classes "Date" and "POSIXct"; following up on the extension to
    format() them correctly.
  * Added methods for is.finite(), is.infinite() and is.nan() for
    "POSIXlt" date-time objects.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1678881600">- CHANGES IN R 4.2.3:
  C-LEVEL FACILITIES:
  * The definition of DL_FUNC in R_ext/Rdynload.h has been changed to
    be fully C-compliant.  This means that functions loaded _via_ for
    example R_GetCCallable need to be cast to an appropriate type if
    they have any arguments.
  * .Machine has a new element sizeof.time_t to identify old systems
    with a 32-bit type and hence a limited range of date-times (and
    limited support for dates millions of years from present).
  PACKAGE INSTALLATION:
  * (Windows) The default C++ standard had accidentally been left at
    C++11 when it was changed to C++14 on Unix.
  BUG FIXES:
  * As "POSIXlt" objects may be "partially filled" and their list
    components meant to be recycled, length() now is the length of
    the longest component.
  * as.POSIXlt.Date() could underflow for dates in the far past (more
    than half a million years BCE).
  * as.Date.POSIXlt(x) would return "1970-01-01" instead of NA in R
    4.2.2, e.g., for
    x &lt;- as.POSIXlt(c("2019-01-30","2001-1-1"))
    x$mon &lt;- c(0L, NA); as.Date(x)
  * R CMD check failed to apply enabled _R_CHECK_SUGGESTS_ONLY_ to
    examples and vignettes (regression in R 4.2.0).
  * R CMD check did not re-build vignettes in separate processes by
    default (regression in R 4.2.0).
  * Running examples from HTML documentation now restores previous
    knitr settings and options (PR#18420).
  * Quartz: fonts are now located using Core Graphics API instead of
    deprecated ATS which is no longer supported in the macOS 13 SDK
    (PR#18426).  This also addresses an issue where the currently
    used font in the Quartz device context was not correctly
    retained.
  * (Windows) Math symbols in text drawing functions are again
    rendered correctly (PR#18440).  This fixes a regression in R
    4.2.1 caused by a fix in PR#18382 which uncovered an issue in
    GraphApp due to which the symbol charset was not used with TT
    Symbol font face.
  * (Windows) Installing a package with a src/Makefile.{win,ucrt}
    file includes ~/.R/Makevars.win64 in the search for user
    makevars, as documented in "R Installation and Administration"
    and done for packages with a src/Makevars.{win,ucrt} file.
  * format(&lt;POSIXlt_w/_unbalanced_sec&gt;, "....%OS&lt;n&gt;") with n &gt; 0 no
    longer accidentally uses the unbalanced seconds, thanks to
    Suharto Anggono's report (including patch) in PR#18448.
  * solve.default(a, b) works around issues with some versions of
    LAPACK when a contains NA or NaN values.
  * When UseMethod() cannot dispatch, it no longer segfaults
    producing the error message in case of a long class(), thanks to
    Joris Vankerschaver's report (including patch) in PR#18447.
  * When example(foo, ..) produces graphics on an interactive device
    it needs to open itself, it now leaves devAskNewPage() unchanged
    even when it was FALSE, thus fixing a 14 years old '&lt;FIXME&gt;'.
  * packageDescription() again catches errors from encoding
    conversions. This also fixes broken packageVersion() in C locale
    on systems where iconv does not support transliteration.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1681128000">- add patch to build with libcurl &gt;= 8</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1682078400">- CHANGES IN R 4.3.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Calling &amp;&amp; or || with LHS or (if evaluated) RHS of length greater
    than one is now always an error, with a report of the form
    'length = 4' in coercion to 'logical(1)'
    Environment variable _R_CHECK_LENGTH_1_LOGIC2_ no longer has any
    effect.
  NEW FEATURES:
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.10.1.  (This caused some platform-dependent
    changes to package check output.)  And then to the sources from
    LAPACK version 3.11.0 (with changes only to double complex
    subroutines).
  * The included LAPACK sources have been updated to include the four
    Fortran 90 routines rather than their Fortran 77 predecessors.
    This may give some different signs in SVDs or
    eigendecompositions..  (This completes the transition to LAPACK
    3.10.x begun in R 4.2.0.)
  * The LAPACK sources have been updated to version 3.11.0.  (No new
    subroutines have been added, so this almost entirely bug fixes:
    Those fixes do affect some computations with NaNs, including R's
    NA.)
  * The parser now signals _classed_ errors, notably in case of the
    pipe operator |&gt;.  The error object and message now give line and
    column numbers, mostly as proposed and provided by Duncan Murdoch
    in PR#18328.
  * toeplitz() is now generalized for asymmetric cases, with a
    toeplitz2() variant.
  * xy.coords() and xyz.coords() and consequently, e.g., plot(x,y,
    log = "y") now signal a _classed_ warning about negative values
    of y (where log(.) is NA).  Such a warning can be specifically
    suppressed or caught otherwise.
  * Regular expression functions now check more thoroughly whether
    their inputs are valid strings (in their encoding, e.g. in
    UTF-8).
  * The performance of grep(), sub(), gsub() and strsplit() has been
    improved, particularly with perl = TRUE and fixed = TRUE.  Use of
    useBytes = TRUE for performance reasons should no longer be
    needed and is discouraged: it may lead to incorrect results.
  * apropos() gains an argument dot_internals which is used by the
    completion (help(rcompgen)) engine to also see base internals
    such as .POSIXct().
  * Support in tools::Rdiff() for comparing uncompressed PDF files is
    further reduced - see its help page.
  * qqplot(x, y, ...) gains conf.level and conf.args arguments for
    computing and plotting a confidence band for the treatment
    function transforming the distribution of x into the distribution
    of y (Switzer, 1976, _Biometrika_). Contributed by Torsten
    Hothorn.
  * Performance of package_dependencies() has been improved for cases
    when the number of dependencies is large.
  * Strings newly created by gsub(), sub() and strsplit(), when any
    of the inputs is marked as "bytes", are also marked as "bytes".
    This reduces the risk of creating invalid strings and accidental
    substitution of bytes deemed invalid.
  * Support for readLines(encoding = "bytes") has been added to allow
    processing special text files byte-by-byte, without creating
    invalid strings.
  * iconv(from = "") now takes into account any declared encoding of
    the input elements and uses it in preference to the native
    encoding.  This reduces the risk of accidental creation of
    invalid strings, particularly when different elements of the
    input have different encoding (including "bytes").
  * Package repositories in getOption("repos") are now initialized
    from the repositories file when utils is loaded (if not already
    set, e.g., in .Rprofile).  (From a report and patch proposal by
    Gabriel Becker in PR#18405.)
  * compactPDF() gets a verbose option.
  * type.convert() and hence read.table() get new option tryLogical =
    TRUE with back compatible default.  When set to false, converts
    "F" or "T" columns to character.
  * Added new unit prefixes "R" and "Q" for abbreviating
    (unrealistically large) sizes beyond 10^{27} in standard = "SI",
    thanks to Henrik Bengtsson's PR#18435.
  * as.data.frame()'s default method now also works fine with atomic
    objects inheriting from classes such as "roman", "octmode" and
    "hexmode", such fulfilling the wish of PR#18421, by Benjamin
    Feakins.
  * The as.data.frame.vector() utility now errors for wrong-length
    row.names.  It warned for almost six years, with "Will be an
    error!".
  * sessionInfo() now also contains La_version() and reports codepage
    and timezone when relevant, in both print() and toLatex() methods
    which also get new option tzone for displaying timezone
    information when locale = FALSE.
  * New function R_compiled_by() reports the C and Fortran compilers
    used to build R, if known.
  * predict(&lt;lm&gt;, newdata = *) no longer unnecessarily creates an
    offset of all 0s.
  * solve() for complex inputs now uses argument tol and by default
    checks for 'computational singularity' (as it long has done for
    numeric inputs).
  * predict(&lt;rank-deficient lm&gt;, newdata=*) now obeys a new argument
    rankdeficient, with new default "warnif", warning only if there
    are non-estimable cases in newdata.  Other options include
    rankdeficient = "NA", predicting NA for non-estimable newdata
    cases.  This addresses PR#15072 by Russ Lenth and is based on his
    original proposal and discussions in PR#16158 also by David Firth
    and Elin Waring.  Still somewhat experimental.
  * Rgui console implementation now works better with the NVDA screen
    reader when the full blinking cursor is selected.  The underlying
    improvements in cursor handling may help also other screen
    readers on Windows.
  * The drop-field control in GraphApp can now be left with the TAB
    key and all controls can be navigated in the reverse order using
    the Shift+TAB key, improving accessibility of the Rgui
    configuration editor.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now fully accurate
    (instead of to "only" minimally five digits).
  * demo(error.catching) now also shows off withWarnings() and
    tryCatchWEMs().
  * As an experimental feature the placeholder _ can now also be used
    in the rhs of a forward pipe |&gt; expression as the first argument
    in an extraction call, such as _$coef. More generally, it can be
    used as the head of a chain of extractions, such as _$coef[[2]].
  * Spaces in the environment variable used to choose the R session's
    temporary directory (TMPDIR, TMP and TEMP are tried in turn) are
    now fatal.  (On Windows the 'short path' version of the path is
    tried and used if that does not contain a space.)
  * all.equal.numeric() gets a new optional switch giveErr to return
    the numeric error as attribute.  Relatedly,
    stopifnot(all.equal&lt;some&gt;(a, b, ..)) is as "smart" now, as
    stopifnot(all.equal(....)) has been already, thus allowing
    customized all.equal&lt;Some&gt;() wrappers.
  * R on Windows is now able to work with path names longer than 260
    characters when these are enabled in the system (requires at
    least Windows 10 version 1607).  Packages should be updated to
    work with long paths as well, instead of assuming PATH_MAX to be
    the maximum length.  Custom front-ends and applications embedding
    R need to update their manifests if they wish to allow this
    feature.  See
    &lt;https://blog.r-project.org/2023/03/07/path-length-limit-on-windows&gt;
    for more information.
  * 'Object not found' and 'Missing argument' errors now give a more
    accurate error context. Patch provided by Lionel Henry in
    PR#18241.
  * The @ operator is now an S3 generic. Based on contributions by
    Tomasz Kalinowski in PR#18482.
  * New generic chooseOpsMethod() provides a mechanism for objects to
    resolve cases where two suitable methods are found for an Ops
    Group Generic. This supports experimenting with alternative
    object systems. Based on contributions by Tomasz Kalinowski in
    PR#18484.
  * inherits(x, what) now accepts values other than a simple
    character vector for argument what. A new generic, nameOfClass(),
    is called to resolve the class name from what. This supports
    experimenting with alternative object systems. Based on
    contributions by Tomasz Kalinowski in PR#18485.
  * Detection of BLAS/LAPACK in use (sessionInfo()) with FlexiBLAS
    now reports the current backend.
  * The "data.frame" method for subset() now warns about extraneous
    arguments, typically catching the use of = instead of == in the
    subset expression.
  * Calling a:b when numeric a or b is longer than one may now be
    made into an error by setting environment variable
    _R_CHECK_LENGTH_COLON_ to a true value, along the proposal in
    PR#18419 by Henrik Bengtsson.
  * density(x, weights = *) now warns if automatic bandwidth
    selection happens without using weights; new optional warnWbw may
    suppress the warning.  Prompted by Christoph Dalitz' PR#18490 and
    its discussants.
  * rm(list = *) is faster and more readable thanks to Kevin Ushey's
    PR#18492.
  * The plot.lm() function no longer produces a normal Q-Q plot for
    GLMs. Instead it plots a half-normal Q-Q plot of the absolute
    value of the standardized deviance residuals.
  * The print() method for class "summary.glm" no longer shows
    summary statistics for the deviance residuals by default.  Its
    optional argument show.residuals can be used to show them if
    required.
  * The tapply() function now accepts a data frame as its X argument,
    and allows INDEX to be a formula in that case. by.data.frame()
    similarly allows INDICES to be a formula.
  * The performance of df[j] &lt;- value (including for missing j) and
    write.table(df) has been improved for data frames df with a large
    number of columns.  (Thanks to Gabriel Becker's PR#18500,
    PR#18503 and discussants, prompted by a report from Toby Dylan
    Hocking on the R-devel mailing list.)
  * The matrix multiply operator %*% is now an S3 generic, belonging
    to new group generic matrixOps.  From Tomasz Kalinowski's
    contribution in PR#18483.
  * New function array2DF() to convert arrays to data frames,
    particularly useful for the list arrays created by tapply().
  DATES and TIMES:
  * On platforms where (non-UTC) datetimes before 1902 (or before
    1900 as with system functions on recent macOS) are guessed by
    extrapolating time zones from 1902-2037, there is a warning at
    the first use of extrapolation in a session.  (As all time zones
    post 2037 are extrapolation, we do not warn on those.)
  * (Platforms using --with-internal-tzone, including Windows and by
    default macOS). How years are printed in dates or date-times can
    be controlled by environment variable R_PAD_YEARS_BY_ZERO.  The
    default remains to pad to 4 digits by zeroes, but setting value
    no gives no padding (as used by default by glibc).
  * strftime() tries harder to determine the offset for the "%z"
    format, and succeeds on the mainstream R platforms.
  * strftime() has a limit of 2048 bytes on the string produced -
    attempting to exceed this is an error.  (Previously it silently
    truncated at 255 bytes.)
  * sessionInfo() records (and by default prints) the system time
    zone as part of the locale information.  Also, the source
    (system/internal) of the date-time conversion and printing
    functions.
  * Objects of class "POSIXlt" created in this version of R always
    have 11 components: component zone is always set, and component
    gmtoff is set for times in UTC and usually set on the (almost
    all) platforms which have C-level support, otherwise is NA.
  * There are comprehensive validity checks on the structure of
    objects of class "POSIXlt" when converting (including formatting
    and printing).  (This avoids mis-conversions of hand-crafted
    objects.)
  * There is some support for using the native date-time routines on
    macOS: this is only viable on recent versions (e.g. 12.6 and 13)
    and does get wrong some historical changes (before 1900, during
    WWII).  Use of --with-internal-tzone remains the default.
  * as.POSIXct(&lt;numeric&gt;) and as.POSIXlt(.) (without specifying
    origin) now work.  So does as.Date(&lt;numeric&gt;).
  * as.Date.POSIXct(., tz) now treats several tz values, notably
    "GMT" as equivalent to "UTC", proposed and improved by Michael
    Chirico and Joshua Ulrich in PR#17674.
  * Experimental balancePOSIXlt() utility allows using "ragged" and
    or out-of-range "POSIXlt" objects more correctly, e.g., in
    subsetting and subassignments.  Such objects are now documented.
    More experimentally, a "POSIXlt" object may have an attribute
    "balanced" indicating if it is known to be filled or fully
    balanced.
  * Functions axis.Date() and axis.POSIXct() are rewritten to gain
    better default tick locations and better default formats by using
    prettyDate(). Thanks to Swetlana Herbrandt.
  * The mapping of Windows' names for time zones to IANA's 'Olson'
    names has been updated.  When ICU is available (it is by
    default), it is used to get a mapping for the current region set
    in Windows.  This can be overridden by setting environment
    variable TZ to the desired Olson name - see OlsonNames() for
    those currently available.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 16
    and so packages that provide graphics devices should be
    reinstalled.
  * The grDevices and grid packages have new functions for rendering
    typeset glyphs, primarily: grDevices::glyphInfo() and
    grid::grid.glyph().
    Rendering of typeset glyphs is only supported so far on the
    Cairo-based graphics devices and on the pdf() and quartz()
    devices.
  * The defined behaviour for "clear" and "source" compositing
    operators (via grid::grid.group()) has been changed (to align
    better with simple interpretation of original Porter-Duff
    definitions).
  * Support for gradients, patterns, clipping paths, masks, groups,
    compositing operators, and affine transformations has been added
    to the quartz() device.
  INSTALLATION on a UNIX-ALIKE:
  * A system installation of generic LAPACK 3.10.0 or later will be
    preferred to the version in the R sources.
    configure option --with-lapack=no (equivalently --without-lapack)
    forces compilation of the internal LAPACK sources.
    If --with-lapack is not specified, a system liblapack is looked
    for and used if it reports version 3.10.0 or later and does not
    contain BLAS routines.
    Packages using LAPACK will need to be reinstalled if this changes
    to using an external library.
  * On aarch64 Linux platforms using GCC, configure now defaults to
  - fPIC (instead of -fpic), as desired in PR#18326.
  * configure now checks conversion of datetimes between POSIXlt and
    POSIXct around year 2020.  Failure (which has been seen on
    platforms missing tzdata) is fatal.
  * If configure option --with-valgrind-instrumentation is given
    value 1 or 2, option --with-system-valgrind-headers is now the
    default and ignored (with a warning).  It is highly recommended
    that the system headers are installed alongside valgrind: they
    are part of its packaging on some Linux distributions and
    packaged separately (e.g. in the valgrind-devel RPM) on others.
    configure will give a warning if they are not found.
    The system headers will be required in a future release of R to
    build with valgrind instrumentation.
  * libcurl 8.x is now accepted by configure: despite a change in
    major version number it changes neither API nor ABI.
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools43, an update of the Rtools42 toolchain.  It is
    based on gcc 12 and newer versions of MinGW-W64, binutils and
    libraries.  At this time R-devel can still be built using
    Rtools42 without changes, but when R-devel is installed via the
    installer, it will by default look for Rtools43.
  * Old make targets rsync-extsoft and 32-bit ones that are no longer
    needed have been removed.
  * Default builds (including for packages) no longer select C99.
    Thus the C standard used is the default for the compiler, which
    for the toolchain in Rtools43 is C17.  (This is consistent with
    Unix builds.)
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++17 where
    available (which it is on all currently checked platforms): if
    not C++14 or C++11 is used if available otherwise C++ is not
    supported.
  * USE_FC_LEN_T is the default: this uses the correct
    (compiler-dependent) prototypes for Fortran BLAS/LAPACK routines
    called from C/C++, and requires adjustment of many such calls -
    see 'Writing R Extensions' SS6.6.1.
  * There is initial support for C++23 as several compilers are now
    supporting -std=c++23 or -std=c++2b or similar.  As for C++20,
    there no additional configure checks for C++23 features beyond a
    check that the compiler reports a __cplusplus value greater than
    that in the C++20 standard.  C++ feature tests should be used.
  * There is support for a package to indicate the version of the C
    standard which should be used to compile it, and for the
    installing user to specify this.  In most cases R defaults to the
    C compiler's default standard which is C17 (a `bug-fix' of C11) -
    earlier versions of R or compilers may have defaulted to C99.
    Current options are:
    USE_C17 Use a standard that is at most C17.  The intention is to
    allow legacy packages to still be installed when later C
    standards become the default, including packages using new
    keywords as identifiers or with K&amp;R-style function
    declarations.  This will use C17 if available, falling back
    to C11.
    USE_C90 Use the C90 (aka C89) standard.  (As that standard did
    not require compilers to identify that version, all we can
    verify is that the compiler does not claim to be using a
    later standard.  It may accept C99 features - for example
    clang accepts // to make comments.)
    USE_C99 Use the C99 standard. This should be rarely needed - it
    avoids the few new features of C11/C17 which can be useful if
    a package assumes them if C17 is specified and they are not
    implemented.
    USE_C23 Use C23 (or in future, later).  Compiler/library support
    for C23 is still being implemented, but LLVM clang from
    15.0.0 and the upcoming GCC 13 have quite extensive support.
    These can be specified as part of the SystemRequirements field in
    the package's DESCRIPTION file or _via_ options --use-C17 and so
    on of R CMD INSTALL and R CMD SHLIB.
    For further details see "Writing R Extensions" SS1.2.5.
  * (Windows) A src/Makefile.ucrt or src/Makefile.win file is now
    included after R_HOME/etcR_ARCH/Makeconf and so no longer needs
    to include that file itself.  Installation of a package with such
    a file now uses a site Makevars file in the same way as a package
    with a src/Makevars.win file would.
  * configure is now passed crucial variables such as CC and CFLAGS
    in its environment, as many packages were not setting them (as
    documented in 'Writing R Extensions' SS1.2).
    This has most effect where configure is used to compile parts of
    the package - most often by cmake or libtool which obfuscate the
    actual compile commands used.
    Also used for configure.win and configure.ucrt on Windows.
  FORTRAN FLAGS:
  * The flag -fno-optimize-sibling-calls is no longer forced for
    gfortran 7 and later.  It should no longer be needed now using
    'hidden' character-length arguments when calling BLAS/LAPACK
    routines from C/C++ is the default even for packages.  (Unless
    perhaps packages call Fortran code from C/C++ without using R's
    headers and without allowing for these arguments.)
  C-LEVEL FACILITIES:
  * The deprecated S-compatibility macros DOUBLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * The deprecated legacy typedefs of Sint and Sfloat in header R.h
    are no longer defined, and that header no longer includes header
    limits.h from C nor climits from C++.
  * New macro CAD5R() is provided in Rinternals.h and used in a few
    places in the R sources.
  * ALTREP now supports VECSXP vectors. Contributed by Gabor Csardi
    in PR#17620.
  * The Rcomplex definition (in header R_ext/Complex.h) has been
    extended to prevent possible mis-compilation when interfacing
    with Fortran (PR#18430).  The new definition causes compiler
    warnings with static initializers such as {1, 2}, which can be
    changed to {.r=1, .i=2}.
    Using the new definition from C++ depends on compiler extensions
    supporting C features that have not been incorporated into the
    C++ standards but are available in g++ and clang++: this may
    result in C++ compiler warnings but these have been worked around
    for recent versions of common compilers (GCC, Apple/LLVM clang,
    Intel).
    It is intended to change the inclusion of header R_ext/Complex.h
    by other R headers, so C/C++ code files which make use of
    Rcomplex should include that header explicitly.
  UTILITIES:
  * R CMD check does more checking of package .Rd files, warning
    about invalid email addresses and (some) invalid URIs and noting
    empty \item labels in description lists.
  * R CMD check now also reports problems when reading package news
    in md (file NEWS.md) and (optionally) plain text (file NEWS)
    formats.
  * _R_CHECK_TIMINGS_ defaults to a value from the environment even
    for R CMD check --as-cran; this allows for exceptionally fast or
    slow platforms.
    It now applies to checking PDF and HTML versions of the manuals,
    and 'checking CRAN incoming feasibility'.
  * R CMD check can optionally (but included in --as-cran) check
    whether HTML math rendering _via_ KaTeX works for the package .Rd
    files.
  * Non-interactive debugger invocations can be trapped by setting
    the environment variable _R_CHECK_BROWSER_NONINTERACTIVE_ to a
    true value.  This is enabled by R CMD check --as-cran to detect
    the use of leftover browser() statements in the package.
  * The use of sprintf and vsprintf from C/C++ has been deprecated in
    macOS 13 and is a known security risk.  R CMD check now reports
    (on all platforms) if their use is found in compiled code:
    replace by snprintf or vsnprintf respectively. [*NB:* whether
    such calls get compiled into the package is platform-dependent.]
  * Where recorded at installation, R CMD check reports the C and
    Fortran compilers used to build R.
    It reports the OS in use (if known, as given by osVersion) as
    well as that R was built for.
    It notes if a C++ standard was specified which is older than the
    current default: many packages have used C++11 to mean 'not
    C++98' - as C++11 is the minimum supported since R 4.0.0, that
    specification can probably be removed.
  * R CMD INSTALL reports the compilers (and on macOS, the SDK) used,
    and this is copied to the output of R CMD check.
    Where a C++ standard is specified, it is reported.
  * R CMD check's 'checking compilation flags in Makevars' has been
    relaxed to accept the use of flags such as -std=f2008 in
    PKG_FFLAGS.
  * tools::buildVignettes() has a new argument skip, which is used by
    R CMD check to skip (and note) vignettes with unavailable
    \VignetteDepends (PR#18318).
  * New generic .AtNames() added to enable class-specific completions
    after @. The formerly internal function findMatches() is now
    exported, mainly for use in methods for .DollarNames() and
    .AtNames().
  DEPRECATED AND DEFUNCT:
  * default.stringsAsFactors() is defunct.
  * Calling as.data.frame.&lt;class&gt;() directly (for 12 atomic classes)
    is going to be formally deprecated, currently activated by
    setting the environment variable
    _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ to non-empty, which also
    happens in R CMD check --as-cran.
  BUG FIXES:
  * Hashed environments with sizes less than 5 can now grow.
    (Reported to R-devel by Duncan Garmonsway.)
  * as.character(&lt;Rd&gt;, deparse = TRUE) failed to re-escape curly
    braces in LaTeX-like text.  (Reported by Hadley Wickham in
    PR#18324.)
  * library() now passes its lib.loc argument when requiring Depends
    packages; reported (with fix) in PR#18331 by Mikael Jagan.
  * R CMD Stangle: improved message about 'Output' files.
  * head(x, n) and tail(x, n) now signal an error if n is not
    numeric, instead of incidentally "working" sometimes returning
    all of x.  Reported and discussed by Colin Fay, in PR#18357.
  * The "lm" method for summary() now gives the correct F-statistic
    when the model contains an offset.  Reported in PR#18008.
  * C() and `contrasts&lt;-`() now preserve factor level names when
    given a function object (as opposed a function name which did
    preserve names). Reported in PR#17616.
  * c(a = 1, 2)[[]] no longer matches 2 but rather signals a
    _classed_ error.  Reported and analysed by Davis Vaughan in
    PR#18367, a duplicate of PR#18004, by Jan Meis et al.  For
    consistency, NULL[[]] is also erroneous now.  x[[]] &lt;- v gives an
    error of the same class "MissingSubscriptError".
  * The relist() function of utils now supports NULL elements in the
    skeleton (PR#15854).
  * ordered(levels = *) (missing x) now works analogously to factor(,
    ordered=TRUE); reported (with fix) by Achim Zeileis in PR#18389.
  * User-defined Rd macro definitions can now span multiple lines,
    thanks to a patch from Duncan Murdoch. Previously, the Rd parser
    silently ignored everything after the first line.
  * Plain-text help (tools::Rd2txt()) now preserves an initial blank
    line for text following description list items.
  * tools::Rd2HTML() and tools::Rd2latex() no longer split \arguments
    and \value lists at Rd comments.
  * tools::Rd2latex() now correctly handles optional text outside
    \items of argument lists as well as bracketed text at the
    beginning of sections, e.g., \value{[NULL]}.
  * as.character(&lt;POSIXt&gt;) now behaves more in line with the methods
    for atomic vectors such as numbers, and is no longer influenced
    by options().  Ditto for as.character(&lt;Date&gt;).  The
    as.character() method gets arguments digits and OutDec with
    defaults _not_ depending on options().  Use of as.character(*,
    format = .) now warns.
  * Similarly, the as.character.hexmode() and *.octmode() methods
    also behave as good citizen methods and back compatibility option
    keepStr = TRUE.
  * The as.POSIXlt(&lt;POSIXlt&gt;) and as.POSIXct(&lt;POSIXct&gt;) default
    methods now do obey their tz argument, also in this case.
  * as.POSIXlt(&lt;Date&gt;) now does apply a tz (time zone) argument, as
    does as.POSIXct(); partly suggested by Roland Fuss on the R-devel
    mailing list.
  * as.Date.POSIXlt(x) now also works when the list components are of
    unequal length, aka "partially filled" or "ragged".
  * expand.model.frame() looked up variables in the wrong environment
    when applied to models fitted without data.  Reported in
    PR#18414.
  * time() now (also) uses the ts.eps = getOption("ts.eps") argument
    and thus by default rounds values very close to the start (or
    end) of a year.  Based on a proposal by Andre"i V. Kostyrka on
    R-help.
  * Printing of a factanal() result with just one factor and sort =
    TRUE now works regularly, fixing PR#17863 by Timothy Bates,
    thanks to the 'R Contributors' working group.
  * Printing 0-length objects of class "factor", "roman", "hexmode",
    "octmode", "person", "bibentry", or "citation" now prints
    something better, one of which fixes PR#18422, reported by
    Benjamin Feakins.
  * Sys.timezone() queries timedatectl only if systemd is loaded;
    addressing a report by Jan Gorecki in PR#17421.
  * The formula method of cor.test() had scoping problems when
    environment(formula) was not the calling environment; reported
    with a patch proposal by Mao Kobayashi in PR#18439.
  * attach() of an environment with active bindings now preserves the
    active bindings.  Reported by Kevin Ushey in PR#18425.
  * BLAS detection now works also with system-provided libraries not
    available as regular files.  This fixes detection of the
    Accelerate framework on macOS since Big Sur.  Reported by David
    Novgorodsky.
  * download.file() gives a helpful error message in case of an
    invalid download.file.method option, thanks to Colin Fay's report
    in PR#18455.
  * Sporadic crashes of Rterm when using completion have been fixed.
  * Rprof() is now more reliable.  A livelock in thread
    initialization with too short sampling interval has been fixed on
    macOS.  A deadlock in using the C runtime has been fixed on
    Windows.  A potential deadlock has been prevented on Unix.
  * Cursor placement in Rgui now works even after a fixed-width font
    is selected.
  * Mandatory options (options()) are now set on startup so that
    saving and restoring them always works (PR#18372).
  * Package installation, R CMD INSTALL or install.packages(*), now
    parses each of the &lt;pkg&gt;/R/*.R files individually instead of
    first concatenating and then parse()ing the large resulting file.
    This allows parser or syntax errors to be diagnosed with correct
    file names and line numbers, thanks to Simon Dedman's report and
    Bill Dunlap's patch in PR#17859.
    This _does_ require syntactically self contained R source files
    now, fixing another inadvertent bug.
  * predict.lm(&lt;model with offset&gt;) now finds the offset in the
    correct environment, thanks to Andr'e Gillibert's report and patch
    in PR#18456.
  * getInitial(&lt;formula&gt;) now finds the selfStart model in the
    correct environment.  (Reported by Ivan Krylov in PR#18368.)
  * Fix for possible segfault when using recently-added graphics
    features, such as gradients, clipping paths, masks, and groups
    with pdf(file=NULL).
  * class(m) &lt;- class(m) no longer changes a matrix m by adding a
    class _attribute_.
  * packageDate(pkg) now only warns once if there is no pkg.
  * When ts() creates a multivariate time series, "mts", it also
    inherits from "array" now, and is.mts() is documented _and_
    stricter.
  * Rd2txt() now preserves line breaks of \verb Rd content and from
    duplicated \cr.  The former also fixes the rendering of verbatim
    output from Rd \Sexpr in plain-text help.
  * uniroot(f, interval) should no longer wrongly converge _outside_
    the interval in some cases where abs(f(x)) == Inf for an x at the
    interval boundary, thanks to posts by Ben Bolker and Serguei
    Sokol on R-devel.
  * Vectorized alpha handling in palette functions such as in gray(),
    rainbow(), or hcl.colors() works correctly now, thanks to Achim
    Zeileis' report and patch in PR#18476.
  * Formatting and print()ing of bibentry objects has dropped the
    deprecated citation.bibtex.max argument, such that the bibtex
    argument's default for print.bibentry() depends directly on the
    citation.bibtex.max option, whereas in format.bibentry() the
    option no longer applies.
  * Attempting to use a character string naming a foreign function
    entry point in a foreign function call in a package will now
    signal an error if the packages has called R_forceSymbols to
    specify that symbols must be used.
  * An error in table() could permanently set options(warn=2)
    promoting all subsequent warnings to errors.
  * The sigma() function gave misleading results for binary GLMs.  A
    new method for objects of class "glm" returns the square root of
    the estimate of the dispersion parameter using the same
    calculation as summary.glm().
  * bs() and ns() in the (typical) case of automatic knot
    construction, when some of the supposedly inner knots coincide
    with boundary knots, now moves them inside (with a warning),
    building on PR#18442 by Ben Bolker.
  * R CMD on Windows now skips the site profile with --no-site-file
    and --vanilla even when R_PROFILE is set (PR#18512, from Kevin
    Ushey).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1686916800">- CHANGES IN R 4.3.1:
  C-LEVEL FACILITIES:
  * The C-level API version of R's integrate(), Rdqags() in Applic.h,
    now returns the correct number of integrand evaluations neval,
    fixing PR#18515 reported and diagnosed by Stephen Wade.
  * The C prototypes for LAPACK calls dspgv and dtptrs in
    R_exts/Lapack.h had one too many and one too few character length
    arguments - but this has not caused any known issues. To get the
    corrected prototypes, include
    [#]include &lt;Rconfig.h&gt; // for PR18534fixed
    [#]ifdef PR18534fixed
    [#] define usePR18534fix 1
    [#]endif
    [#]include &lt;R_exts/Lapack.h&gt;
    in your C/C++ code (PR#18534).
  INSTALLATION:
  * Many of the checks of esoteric Internet operations and those
    using unreliable external sites have been moved to a new target
    that is not run by default and primarily intended for the core
    developers.  To run them use
    cd tests; make test-Internet-dev
  BUG FIXES:
  * .S3methods(), typically called from methods(), again marks
    methods from package base as visible.
    Also, the visibility of non-base methods is again determined by
    the method's presence in search().
  * tools::Rdiff() is now more robust against invalid strings, fixing
    installation tests on Windows without Rtools installed
    (PR#18530).
  * Fix (new) bug in hcl.colors(2, *), by Achim Zeileis (PR#18523).
  * head(., &lt;illegal&gt;) and tail(..) now produce more useful "Error in
    ...." error messages, fixing PR#18362.
  * Package code syntax on Windows is checked in UTF-8 when UTF-8 is
    the native encoding.
  * na.contiguous(x) now also returns the first run, when it is at
    the beginning and there is a later one of the same length;
    reported to R-devel, including a fix, by Georgi Boshnakov.
    Further, by default, it modifies only an existing attr(*,"tsp")
    but otherwise no longer sets one.
  * chol(&lt;not pos.def&gt;, pivot = &lt;T|F&gt;) now gives a correct error or
    warning message (depending on pivot), thanks to Mikael Jagan's
    (PR#18541).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1699012800">- CHANGES IN R 4.3.2:
  NEW FEATURES:
  * The default initialization of the "repos" option from the
    repositories file at startup can be skipped by setting
    environment variable R_REPOSITORIES to NULL such that
    getOption("repos") is empty if not set elsewhere.
  * qr.X() is now an implicit S4 generic in methods.
  * iconv(to = "ASCII//TRANSLIT") is emulated using substitution on
    platforms which do not support it (notably Alpine Linux).  This
    should give a human-readable conversion in ASCII on all platforms
    (rather than NA_character_).
  * trans3d() gains options continuous and verbose addressing the
    problem of possible "wrap around" when projecting too long
    curves, as reported by Achim Zeileis in PR#18537.
  * tools::showNonASCII() has been rewritten to work better on macOS
    14 (which has a changed implementation of iconv()).
  * tiff(type = "quartz") (the default on macOS) now warns if
    compression is specified: it continues to be ignored.
  INSTALLATION on a UNIX-ALIKE:
  * There is some support for building with Intel's LLVM-based
    compilers on x86_64 Linux, such as (C) icx, (C++) ipcx and
    (Fortran) ifx from oneAPI 2023.x.y.
  * There is support for using LLVM's flang-new as the Fortran
    compiler from LLVM 16.0.x (preferably 17.0.0 or later).
  UTILITIES:
  * R CMD check reports the use of the Fortran 90 random number
    generator RANDOM_NUMBER() and the subroutines to initialize it.
    'Writing R Extensions' has example code to use R's RNGs from
    Fortran.
  BUG FIXES:
  * substr(x, n, L) &lt;- cc now works (more) correctly for multibyte
    UTF-8 strings x when L &gt; nchar(x), thanks to a report and patch
    by 'Architect 95'.
  * contrib.url(character()) now returns 0-length character() as
    documented, which also avoids spurious warnings from
    available.packages() et al. in the edge case of an empty vector
    of repository URLs.
  * readChar(., 4e8) no longer fails, thanks to Kodi Arfer's report
    (PR#18557).
  * lapply(&lt;list&gt;, as.data.frame) no longer warns falsely for some
    base vector components.
  * Communication between parent and child processes in the multicore
    part of parallel could fail on platforms that do not support an
    arbitrarily large payload in system functions read()/write() on
    pipes (seen on macOS where a restriction to INT_MAX bytes is
    documented, without doing a partial read unlike Linux). The
    payload is now split into 1Gb chunks to avoid that problem.
    (PR#18571)
  * qqplot(x,y, conf.level=.) gives better confidence bounds when
    length(x) != length(y), thanks to Alexander Ploner's report and
    patch proposal (PR#18557).
  * norm(&lt;0-length&gt;, "2") now gives zero instead of an error, as all
    the other norm types, thanks to Mikael Jagan's PR#18542.
  * Build-stage Rd macros \packageAuthor and \packageMaintainer now
    process Authors@R, fixing NA results when the package DESCRIPTION
    omits Author and Maintainer fields.
  * Formatting and printing complex numbers could give things like
    0.1683-0i because of rounding error: -0i is now replaced by +0i.
  * postscript() refused to accept a title comment containing the
    letter "W" (PR#18599).
  * isoreg(c(1,Inf)) signals an error instead of segfaulting, fixing
    PR#18603.
  * tiff(type = "Xlib") was only outputting the last page of
    multi-page plots.
  * tools::latexToUtf8() again knows about \~{n} and other letters
    with tilde, fixing a regression in R 4.3.0, and about \^{i} as an
    alternative to \^{\i} (similarly with other accents).
    Furthermore, LaTeX codes for accented I letters are now correctly
    converted, also fixing related mistakes in
    tools::encoded_text_to_latex().
  * tar(*, tar = "internal") no longer creates out-of-spec tar files
    in the very rare case of user or group names longer than 32
    bytes, fixing PR#17871 with thanks to Ivan Krylov.
  * When using the "internal" timezone datetime code, adding a
    fraction of a second no longer adds one second, fixing PR#16856
    from a patch by Ivan Krylov.
  * tools::checkRd() no longer produces spurious notes about
    "unnecessary braces" from multi-line Rd results of \Sexpr macros.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1709208000">- CHANGES IN R 4.3.3:
  NEW FEATURES:
  * iconv() now fixes up variant encoding names such as "utf8"
    case-insensitively.
  DEPRECATED AND DEFUNCT:
  * The legacy encoding = "MacRoman" is deprecated in pdf() and
    postscript(): support was incomplete in earlier versions of R.
  BUG FIXES:
  * Arguments are now properly forwarded to methods on S4 generics
    with ... in the middle of their formal arguments. This was broken
    for the case when a method introduced an argument but did not
    include ... in its own formals. Thanks to Herv'e Pag`es for the
    report PR#18538.
  * Some invalid file arguments to pictex(), postscript() and xfig()
    opened a file called NA rather than throw an error.  These
    included postscript(NULL) (which some people expected to work
    like pdf(NULL)).
  * Passing filename = NA to svg(), cairo_pdf(), cairo_ps() or the
    Cairo-based bitmap devices opened a file called NA: it now throws
    an error.
  * quartz(file = NA) opened a file called NA, including when used as
    a Quartz-based bitmap device.  It now gives an error.
  * rank(&lt;long vector&gt;) now works, fixing PR#18617, thanks to Ilia
    Kats.
  * seq.int() did not adequately check its length.out argument.
  * match(&lt;POSIXct&gt;, .) is correct again for differing time zones,
    ditto for "POSIXlt", fixing PR#18618 reported by Bastian Klein.
  * drop.terms(*, dropx = &lt;0-length&gt;) now works, fixing PR#18563 as
    proposed by Mikael Jagan.
  * drop.terms(*) keeps + offset(.) terms when it should, PR#18565,
    and drop.terms() no longer makes up a response, PR#18566, fixing
    both bugs thanks to Mikael Jagan.
  * getS3method("t", "test") no longer finds the t.test() function,
    fixing PR#18627.
  * pdf() and postscript() support for the documented Adobe encodings
    "Greek" and "Cyrilllic" was missing (although the corresponding
    Windows' codepages could be used).
  * Computations of glyph metric information for pdf() and
    postscript() did not take into account that transliteration could
    replace one character by two or more (only seen on macOS 14) and
    typically warned that the information was not known.
  * rank(x) no longer overflows during integer addition, when
    computing rank average for largish but not-yet long vector x,
    fixing PR#18630, thanks to Ilia Kats.
  * list.files() on Windows now returns also files with names longer
    that 260 bytes (the Windows limit is 260 characters).
    Previously, some file names particularly with 'East Asian'
    characters were omitted.
  * cov2cor(&lt;0 x 0&gt;) now works, fixing PR#18423 thanks to Mikael
    Jagan and Elin Waring.
  * cov2cor(&lt;negative diagonal&gt;) and similar now give one warning
    instead of two, with better wording, fixing PR#18424 thanks to
    Mikael Jagan.
  * tools:: startDynamicHelp() now ensures port is in proper range,
    fixing PR#18645.
  * pbeta(x, a,b) is correct now for x=0 or 1 in the boundary cases
    where a or b or both are 0, fixing PR#18672 thanks to Michael
    Fay.
  * pmatch(x, table) for large table, also called for data frame row
    selection, dfrm[nm, ], is now interruptible, fixing PR#18656.
  * predict(&lt;rank-deficient lm&gt;, newdata=*) fix computing of nbasis,
    see Russ Lenth's comment 29 in PR#16158.
  * Added a work-around for a bug in macOS 14.3.1 and higher which
    prevents R plots in the Quartz Cocoa device from updating on
    screen.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1713960000">- CHANGES IN R 4.4.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Startup banners, R --version, sessionInfo() and R CMD check no
    longer report (64-bit) as part of the platform as this is almost
    universal - the increasingly rare 32-bit platforms will still
    report (32-bit).
    On Windows, ditto for window titles.
  * is.atomic(NULL) now returns FALSE, as NULL is not an atomic
    vector.  Strict back-compatibility would replace is.atomic(foo)
    by (is.null(foo) || is.atomic(foo)) but should happen only
    sparingly.
  NEW FEATURES:
  * The confint() methods for "glm" and "nls" objects have been
    copied to the stats package.  Previously, they were stubs which
    called versions in package MASS. The MASS namespace is no longer
    loaded if you invoke (say) confint(glmfit).  Further, the "glm"
    method for profile() and the plot() and pairs() methods for class
    "profile" have been copied from MASS to stats.  (profile.nls()
    and plot.profile.nls() were already in stats.)
  * The confint() and profile methods for "glm" objects have gained a
    possibility to do profiling based on the Rao Score statistic in
    addition to the default Likelihood Ratio. This is controlled by a
    new test = argument.
  * The pairs() method for "profile" objects has been extended with a
    which = argument to allow plotting only a subset of the
    parameters.
  * The "glm" method for anova() computes test statistics and
    p-values by default, using a chi-squared test or an F test
    depending on whether the dispersion is fixed or free.  Test
    statistics can be suppressed by giving argument test a false
    logical value.
  * In setRepositories() the repositories can be set using their
    names via name = instead of index ind =.
  * methods() and .S3methods() gain a all.names option for the (rare)
    case where functions starting with a . should be included.
  * Serializations can now be interrupted (e.g., by Ctrl-C on a
    Unix-alike) if they take too long, e.g., from save.image(),
    thanks to suggestions by Ivan Krylov and others on R-devel.
  * New startup option --max-connections to set the maximum number of
    simultaneous connections for the session.  Defaults to 128 as
    before: allowed values up to 4096 (but resource limits may in
    practice restrict to smaller values).
  * R on Windows (since Windows 10 2004) now uses the new Segment
    Heap allocator. This may improve performance of some
    memory-intensive applications.
  * When R packages are built, typically by R CMD build &lt;pkg&gt;, the
    new --user=&lt;build_user&gt; option overrides the (internally
    determined) user name, currently Sys.info()["user"] or LOGNAME.
    This is a (modified) fulfillment of Will Landau's suggestion in
    PR#17530.
  * tools::testInstalledBasic() gets new optional arguments outDir
    and testSrcdir, e.g., allowing to use it in a &lt;builddir&gt; !=
    &lt;srcdir&gt; setup, and in standard "binary" Windows installation
  * if* a source tests/ folder is present.
  * range(&lt;DT_with_Inf&gt;, finite = TRUE) now work for objects of class
    "Date", "POSIXct", and "POSIXlt" with infinite entries,
    analogously to range.default(), as proposed by Davis Vaughan on
    R-devel.  Other range()-methods can make use of new function
    .rangeNum().
  * New .internalGenerics object complementing .S3PrimitiveGenerics,
    for documentation and low-level book-keeping.
  * grid() now invisibly returns the x- and y- coordinates at which
    the grid-lines were drawn.
  * norm(., type) now also works for complex matrices.
  * kappa(., exact = TRUE, norm = *) now works for all norms and also
    for complex matrices.  In symmetric / triangular cases, the new
    argument uplo = "U" | "L" allows the upper or lower triangular
    part to be specified.
  * memDecompress(type = "unknown") recognizes compression in the
    default 'zlib' format as used by memCompress(type = "gzip").
  * memCompress() and memDecompress() will use the libdeflate library
    (&lt;https://github.com/ebiggers/libdeflate&gt;) if installed.  This
    uses the same type of compression for type = "gzip" but is 1.5-2x
    faster than the system libz library on some common platforms: the
    speed-up may depend on the library version.
  * diff() for objects of class "Date", "POSIXct", and "POSIXlt"
    accepts a units argument passed via ....
  * Dynamic help now does a much better job of rendering package
    DESCRIPTION metadata.
  * Rprof() gains an event argument and support for elapsed (real)
    time profiling on Unix (PR#18076).
  * filled.contour() gains a key.border argument.
  * tools::update_pkg_po() gets arguments pot_make and mo_make for
    _not_ re-making the corresponding files, and additionally a
    verbose argument.
  * Hexadecimal string colour specifications are now accepted in
    short form, so, for example, we can use "#123", which is
    equivalent to "#112233".
    Thanks to MikeFC for the original idea and Ella Kaye, Malcolm
    Barrett, George Stagg, and Hanne Oberman for the patch.
  * Plain-text help shows \var markup by angle brackets.
  * The new experimental primitive function declare() is intended to
    eventually allow information about R code to be communicated to
    the interpreter, compiler, and code analysis tools. The syntax
    for declarations is still being developed.
  * Functions psmirnov(), qsmirnov() and rsmirnov() in package stats
    have had argument two.sided renamed to alternative, to take into
    account that the permutation distributions of the one-sided
    statistics can be different in the case of ties.  Consequence of
    PR#18582.
  * sort() is now an implicit S4 generic in methods.
  * Formatting and printing, format(z), print(z), of complex vectors
    z no longer zap relatively small real or imaginary parts to zero,
    fixing PR#16752.  This is an API change, as it was documented
    previously to round real and imaginary parts together on purpose,
    producing nicer looking output.  As mentioned, e.g. in the PR,
    this change is compatible with many other "R-like" programming
    environments.
    We have simplified the internal code and now basically format the
    real and imaginary parts independently of each other.
  * New experimental functions Tailcall() and Exec() to support
    writing stack-space-efficient recursive functions.
  * Where characters are attempted to be plotted by pdf(),
    postscript() and xfig() which are not in the selected 8-bit
    character set (most often Latin-1) and the R session is using a
    UTF-8 locale, the warning messages will show the UTF-8 character
    rather than its bytes and one dot will be substituted per
    character rather than per byte.  (Platforms whose iconv() does
    transliteration silently plot the transliteration.)
    In a UTF-8 locale some transliterations are now done with a
    warning (e.g., dashes and Unicode minus to hyphen, ligatures are
    expanded, permille (‰) is replaced by o/oo), although the OS may
    have got there first.  These are warnings as they will continue
    to be replaced by dots in earlier versions of R.
  * The matrix multiplication functions crossprod() and tcrossprod()
    are now also primitive and S3 generic, as %*% had become in R
    4.3.0.
  * source() and example() have a new optional argument catch.aborts
    which allows continued evaluation of the R code after an error.
  * The non-Quartz tiff() devices allow additional types of
    compression if supported by the platform's libtiff library.
  * The list of base and recommended package names is now provided by
    tools::standard_package_names().
  * cairo_pdf() and cairo_ps() default to onefile = TRUE to closer
    match pdf() and postscript().
  * New option catch.script.errors provides a documented way to catch
    errors and then continue in non-interactive use.
  * L %||% R newly in base is an expressive idiom for the phrases
    if(!is.null(L)) L else R or if(is.null(L)) R else L.
  * The return value from warnings() now always inherits from
    "warnings" as documented, now also in the case of no warnings
    where it previously returned NULL.
  * as.complex("1i") now returns 0 + 1i instead of NA with a warning.
  * z &lt;- c(NA, 1i) now keeps the imaginary part Im(z[1]) == 0, no
    longer coercing to NA_complex_.  Similarly, cumsum(z) correctly
    sums real and imaginary parts separately, i.e., without
    "crosstalk" in case of NAs.
  * On Alpine Linux iconv() now maps "latin2", "latin-2", "latin9"
    and "latin-9" to encoding names the OS knows about
    (case-insensitively).
  * iconv(sub = "Unicode") now always zero-pads to four (hex) digits,
    rather than to 4 or 8.  (This seems to have become the convention
    once Unicode restricted the number of Unicode points to 2^21 - 1
    and so will never need more than 6 digits.)
  * NCOL(NULL) now returns 0 instead of 1, for consistency with
    cbind().
  * The information for the Euro glyph missing from the Adobe .afm
    files for the Courier, Helvetica and Times families has been
    copied from their URW equivalents - this will improve vertical
    centring in the pdf() and postscript() devices.
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.12.0.  The changes are almost entirely cosmetic.
  * The included LAPACK sources have been updated to version 3.12.0
    and some further double-complex routines added.
  * There are new font families for the 2014--5 URW 2.0 fonts (see
    ?pdf) which are included in recent versions of Ghostscript.
    These have font widths for most Greek glyphs and a few others
    which were missing from the original versions (whose font
    families remain available for reproducibility, although
    Ghostscript-based viewers will render using the 2.0 versions).
  * Improve the large-n efficiency of as.matrix(&lt;dist&gt;), thanks an R
    contributors effort, notably by Tim Taylor and Heather Turner,
    see PR#18660.
  * The default and numeric methods of all.equal() get a check.class
    option.
  * zapsmall() gets new optional arguments, function mFUN and min.d,
    for extra flexibility; fulfills a wish in PR#18199.  Also, it is
    now an implicit S4 generic in package methods.
  * The Rd filter for aspell() gains an ignore argument.
  * New generic function sort_by(), primarily useful for the
    data.frame method which can be used to sort rows of a data frame
    by one or more columns.
  * The icence headers for the RPC code in src/extra/xdr have been
    updated to use the GPL-compatible licence published by Oracle
    America in 2010.
  * New function pkg2HTML() in tools to create single-page HTML
    reference manuals for R packages.
  * The byte code evaluator now uses less C stack space for recursive
    calls to byte-compiled functions. It also makes more of an effort
    to avoid allocations for scalar return values.
  * New completion option backtick (disabled by default) allows
    non-syntactic completions to be wrapped in backquotes. This is
    currently only useful for Jupyter notebooks via the IRkernel
    package, and may cause problems for other backends.
  INSTALLATION:
  * The parser has been updated to work with bison 3.8.2, which is
    now used for the pre-generated parsers in gram.c, file.c, and
    gramRd.c. A few parser error messages have changed, which may
    affect code that relies on exact messages.
  INSTALLATION on a UNIX-ALIKE:
  * System valgrind headers are now required to use configure option
  - -with-valgrind-instrumentation with value 1 or 2.
  * configure will warn if it encounters a 32-bit build, as that is
    nowadays almost untested.
  * Environment variable R_SYSTEM_ABI is no longer used and so no
    longer recorded in etc/Renviron (it was not on Windows and was
    only ever used when preparing package tools).
  * If the libdeflate library and headers are available, libdeflate
    rather than libz is used to (de)compress R objects in lazy-load
    databases.  Typically tasks spend up to 5% of their time on such
    operations, although creating lazy-data databases is one of the
    exceptions.
    This can be suppressed if the library is available by the
    configure option --without-libdeflate-compression.
  * configure option --enable-lto=check has not worked reliably since
    2019 and has been removed.
  * The minimum autoconf requirement for a maintainer build has been
    increased to autoconf 2.71.
    It is intended to increase this to 2.72 for R 4.5.0: the
    distributed configure file was generated using 2.72.
  * The minimum version requirement for an external LAPACK has been
    reduced to 3.9.0.
  * No default C++ compiler is set if no C++17 compiler is detected:
    there is no longer an automatic fallback to C++14 or C++11.
    Compilers from the last five years should have sufficient
    support: for others macros CXX and CXXSTD can be set in file
    config.site to provide a fallback if needed.
    The Objective-C++ compiler now by default uses the standard
    selected by R for C++ (currently C++17) rather than the default
    standard for the C++ compiler (which on macOS is still C++98).
  INSTALLATION on macOS:
  * A new configure option --with-newAccelerate makes use of Apple's
    'new' BLAS / LAPACK interfaces in their Accelerate framework.
    Those interfaces are only available in macOS 13.3 or later, and
    building requires SDK 13.3 or later (from the Command Line Tools
    or Xcode 14.3 or later).
    By default the option uses new Accelerate for BLAS calls: to also
    use it for LAPACK use option --with-newAccelerate=lapack.  The
    later interfaces provide LAPACK 3.9.1 rather than 3.2.1: 3.9.1 is
    from 2021-04 and does not include the improved algorithms
    introduced in LAPACK 3.10.0 (including for BLAS calls).
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools44, an update of the Rtools43 toolchain.  It is
    based on GCC 13 and newer versions of MinGW-W64, binutils and
    libraries (targeting 64-bit Intel CPUs).  R-devel can no longer
    be built using Rtools43 without changes.
  * Rtools44 has experimental support for 64-bit ARM (aarch64) CPUs
    _via_ the LLVM 17 toolchain using lld, clang/flang-new and
    libc++.
  UTILITIES:
  * R CMD check notes when S4-style exports are used without
    declaring a strong dependence on package methods.
  * tools::checkRd() (used by R CMD check) detects more problems with
    \Sexpr-based dynamic content, including bad nesting of \Sexprs
    and invalid arguments.
  * tools::checkRd() now reports Rd titles and section names ending
    in a period; this is ignored by R CMD check unless environment
    variable _R_CHECK_RD_CHECKRD_MINLEVEL_ is set to -5 or smaller.
  * R CMD check now notes Rd files without an \alias, as long
    documented in 'Writing R Extensions' §1.3.1.  The check for a
    missing \description has been moved from tools::checkRd() to
    tools::checkRdContents().
  * R CMD check now visits inst/NEWS.Rd and OS-specific man
    subdirectories when checking Rd files.
  * tools::checkDocFiles() and tools::checkRdContents() now also
    check internal Rd files by default, but "specially" (ignoring
    missing documentation of arguments).
  * R CMD Rdiff gets option --useEx.
  * R CMD check now warns on non-portable uses of Fortran KIND such
    as INTEGER(KIND=4) and REAL(KIND=8).
    To see the failing lines set environment variable
    _R_CHECK_FORTRAN_KIND_DETAILS_ to a true value.
  * When checking Rd files, R CMD check now notes some of the "lost
    braces" that tools::checkRd() finds.  Typical problems are Rd
    macros missing the initial backslash (e.g., code{...}), in-text
    set notation (e.g., {1, 2}, where the braces need escaping), and
    \itemize lists with \describe-style entries of the form
    \item{label}{description}.
  * R CMD INSTALL (and hence check) will compile C++ code with
  - DR_NO_REMAP if environment variable _R_CXX_USE_NO_REMAP_ is set
    to a true value.  It is planned that this will in future become
    the default for compiling C++.
  * The new built-in Rd macro \dontdiff{} can be used to mark example
    code whose output should be ignored when comparing check output
    to reference output (tests/Examples/&lt;pkg&gt;-Ex.Rout.save).  The
    \dontdiff tag, like \donttest, is _not_ shown on the rendered
    help page, so provides a clean alternative to ##
    IGNORE_RDIFF_(BEGIN|END) comments.
  * R CMD build when there is no NAMESPACE, now uses the recommended
    exportPattern("^[^.]"), instead of exporting everything.
  * R CMD check now warns about non-ASCII characters in the NAMESPACE
    file (in addition to R files). Such packages are not portable and
    may fail to install on some platforms.
  C-LEVEL FACILITIES:
  * Headers R_ext/Applic.h and R-ext/Linpack.h used to include
    R_ext/BLAS.h although this was undocumented and unneeded by their
    documented entry points.  They no longer do so.
  * New function R_missing(), factored out from do_missing(), used to
    fix PR#18579.
  * SEXP type S4SXP has been renamed to OBJSXP to support
    experimenting with alternative object systems.  The S4SXP value
    can still be used in C code but is now deprecated.  Based on
    contributions from the R Consortium's Object-Oriented Programming
    Working Group.
  * New function pow1p(x,y) for accurate (1+x)^y.
  * mkCharLenCE was incorrectly documented to take a size_t length
    but was implemented with int (and character strings in R are
    limited to 2^31 - 1 bytes).
  DEPRECATED AND DEFUNCT:
  * data() no longer handles zipped data from long-defunct (since R
    2.13.0) --use-zip-data installations.
  * The legacy graphics devices pictex() and xfig() are now
    deprecated.  They do not support recent graphics enhancements and
    their font handling is rudimentary. The intention is to retain
    them for historical interest as long as they remain somewhat
    functional.
  * Support for encoding = "MacRoman" has been removed from the pdf()
    and postscript() devices - this was a legacy encoding supporting
    classic macOS up to 2001 and no longer has universal libiconv
    support.
  * is.R() is deprecated as no other S dialect is known to be in use
    (and this could only identify historical dialects, not future
    ones).
    Further information on calls can be obtained by setting the
    environment variable _R_DEPRECATED_IS_R_ to error which turns the
    deprecation warning into an error and so by default gives a
    traceback.  (This is done by R CMD check --as-cran.)
  * UseMethod() no longer forwards local variables assigned in the
    generic function into method call environments before evaluating
    the method body. This makes method calls behave more like
    standard function calls and makes method code easier to analyze
    correctly.
  * The twelve as.data.frame.&lt;class&gt;() methods which were deprecated
    only via _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ and in R CMD
    check --as-cran are formally deprecated now in favour of calling
    as.data.frame() or as.data.frame.vector().  The deprecation
    "check" now works also when as.data.frame() is S4 generic thanks
    to Ivan Krylov.
  * The default method for the directional comparison operators &lt;, &gt;,
    &lt;=, and &gt;= now signals an error when one of the operands is a
    language object, i.e. a symbol or a call.
  * For terms.formula(), deprecate abb and neg.out arguments
    _formally_ in addition to just documenting it.
  BUG FIXES:
  * The methods package is more robust to not being attached to the
    search path.  More work needs to be done.
  * pairwise.t.test() misbehaved when subgroups had 0 DF for
    variance, even with pool.sd = TRUE.  (PR#18594 by Jack Berry).
  * Probability distribution functions [dpq]&lt;distrib&gt;(x, *), but also
    bessel[IKJY](x, .) now consistently preserve attributes(x) when
    length(x) == 0, e.g., for a 2 x 0 matrix, thanks to Karolis
    Koncevičius' report PR#18509.
  * Group "Summary" computations such as sum(1:3, 4, na.rm = 5, NA,
    7, na.rm = LL) now give an error instead of either 17 or NN for
    LL true or false, as proposed by Ivan Krylov on the R-devel
    mailing list.  (This also means it is now an error to specify
    na.rm more than once.)
  * as.complex(x) now returns complex(real = x, imaginary = 0) for
    _all_ numerical and logical x, notably also for NA or
    NA_integer_.
  * Directories are now omitted by file.copy(, recursive = FALSE) and
    in file.append() (PR#17337).
  * gsub() and sub() are now more robust to integer overflow when
    reporting errors caused by too large input strings (PR#18346).
  * Top-level handlers are now more robust to attempts to remove a
    handler whilst handlers are running (PR#18508).
  * The handling of Alt+F4 in dialogs created on Windows using
    GraphApp has been fixed (PR#13870).
  * density() more consistently computes grid values for the
    FFT-based convolution, following Robert Schlicht's analysis and
    proposal in PR#18337, correcting density values typically by a
    factor of about 0.999.  Argument old.coords = TRUE provides back
    compatibility.
  * palette.colors() gains a name argument that defaults to FALSE
    controlling whether the vector of colours that is returned has
    names (where possible).  PR#18529.
  * tools::xgettext() no longer extracts the (non-translatable) class
    names from warningCondition and errorCondition calls.
  * S3method(&lt;gen&gt;, &lt;class&gt;, &lt;func&gt;) in the NAMESPACE file now works
    (again) when &lt;func&gt; is visible from the namespace, e.g.,
    imported, or in base.
  * getParseData(f) now also works for a function defined in the
    first of several &lt;pkg&gt;/R/*.R source files, thanks to Kirill
    Müller's report and Duncan Murdoch's patch in PR#16756.
  * Rd \Sexpr macros with nested #ifdef conditionals were not
    processed.
  * A non-blocking connection with non-default encoding (such as a
    socket) now correctly returns from readLines() after new data has
    arrived also when its EOF had been reached previously.  Thanks to
    Peter Meilstrup's report on R-devel and Ivan Krylov's report and
    patch proposal in PR#18555.
  * tools::checkRdContents() failed to detect empty argument
    descriptions when they spanned multiple lines, including those
    generated by prompt().  These cases are now noted by R CMD check.
  * Plain-text help no longer outputs spurious colons in the
    arguments list (for multi-line \item labels in the Rd source).
  * kappa() and rcond() work correctly in more cases; kappa(., norm =
    "2") now warns that it computes the 1-norm with (default) exact =
    FALSE; prompted by Mikael Jagan's quite comprehensive PR#18543.
  * Rd skeletons generated by prompt() or promptData() now use a
    dummy title (so R CMD build works).  tools::checkRdContents() has
    been updated to detect such template leftovers, including from
    promptPackage().
  * When S4 method dispatch fails because no method was found, the
    error message now includes the signature argument names; thanks
    to Michael Chirico's proposal on the R-devel list.
  * withAutoprint({ .. }) now preserves srcrefs previously lost,
    thanks to Andrew Simmons' report plus fix in PR#18572.
  * transform.data.frame() no longer adjusts names; in particular,
    untransformed variables are kept as-is, including those with
    syntactically invalid names (PR#17890).
  * The keep.source option for Rd \Sexpr blocks is no longer ignored.
  * The formula methods for t.test() and wilcox.test() now catch when
    paired is passed, addressing PR#14359; use Pair(x1, x2) ~ 1 for a
    paired test.
  * The level reported in the browser prompt was often too large. It
    now shows the number of browser contexts on the stack.
  * For cbind() and rbind(), the optional deparse.level argument is
    now properly passed to methods, thanks to Mikael Jagan's PR#18579
    and comments there.
  * Some error and warning messages for large ('long vector')
    matrix(v, nr, nc) and dim(m) &lt;- d are now correct about sizes,
    using long long formatting, fixing PR#18612 (and more) reported
    by Mikael Jagan.
  * readChar(useBytes = TRUE) now terminates strings even when the
    underlying connection uses extra spaces in the input buffer.
    This fixes problems with extra garbage seen with gzip
    connections, PR#18605.
  * Named capture in PCRE regular expressions now works also with
    more than 127 named groups (PR#18588).
  * Datetime functions are now robust against long jumps when dealing
    with internal time zone changes.  This avoids confusing warnings
    about an invalid time zone, previously triggered by turning
    warnings into errors or handling them via tryCatch (PR#17966,
    PR#17780).
  * Datetime functions now restore even an empty TZ environment
    variable after internal time zone changes (PR#17724).  This makes
    results of datetime functions with this (typically unintentional)
    setting more predictable.
  * drop.terms(*) now drops response as by default, keep.response =
    FALSE, fixing PR#18564 thanks to Mikael Jagan.
  * dummy.coef(.) now also works for lm()-models with character
    categorical predictor variables rather than factor ones, fixing
    PR#18635 reported by Jinsong Zhao.
  * formals(f) &lt;- formals(f) now also works for a function w/o
    arguments and atomic _constant_ body(f).
  * Correct as.function(&lt;invalid list&gt;, .)'s error message.
  * removeSource() is yet more thorough in finding and removing
    "srcref" and the other source references from parsed R language
    chunks, fixing PR#18638 thanks to Andrew Simmons.
  * dgeom() is more accurate now, notably when its result is very
    small, fixing PR#18642 thanks to the proposal of Morten Welinder,
    also improving other instances where C level binom_raw(x, n, ..)
    has x == 0 or x== n.
  * warning() with options(warn = 1) has improved output for
    multi-line messages.
  * axis.Date() and axis.POSIXct() now respect the par("lab") setting
    for the number of pretty() intervals.
  * Comparisons for language objects (which are based on deparsing)
    are now more careful about using accurate deparsed results
    (PR#18676).
  * Plain-text help (Rd2txt) now correctly preserves blank lines
    following single-line \dontrun code.
  * &lt;POSIXlt&gt;[*] no longer sets wrong "balanced" attribute, fixing
    PR#18681 thanks to Mikael Jagan.
  * str(&lt;classed-call&gt;) now deparses the call as expected, fixing
    PR#18684, reported by Dave Slager.
  * In Rd examples, code following the closing brace of a \dontrun,
    \dontshow or \donttest tag on the same line is no longer skipped
    when R CMD check runs the examples.
  * as.data.frame(matrix(*, ncol=0)) now gets valid names() and
    colnames(); reported by Davis Vaughan on the R-devel list.
  * Internal Mathlib function stirlerr(n) is now almost fully
    (52-bit) accurate for all n &gt;= ~5.9 and more accurate also in the
    range 1 -- 5.9.  This entails small ("after 12th decimal")
    changes in density functions, e.g., dgamma() in _some_ regions of
    their support.  The fix was partly prompted by Morten Welinder's
    PR#18640.
  * Numbers like 9876543.2 are now considered non-integer by Mathlib
    internal R_nonint(), amending original fix of PR#15734.
  * Rd comment lines no longer cause broken paragraphs in the
    rendered PDF and plain-text help. In code blocks, pure comment
    lines (starting with %) no longer produce an empty line.
  * xtabs(Freq ~ .) now consistently defaults to na.action = na.pass,
    using na.rm = FALSE (added as an argument) when summing over Freq
    (PR#17770).
  * tools::testInstalledPackage() is no longer silent about failures
    from running examples or tests and its return code no longer
    ignores failures from checking vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1718366400">- CHANGES IN R 4.4.1:
  C-LEVEL FACILITIES:
  * Functions R_atof and R_strtod declared in header R_ext/Utils.h
    are now documented in 'Writing R Extensions' and so formally part
    of the API.
  * The non-API entry points Rf_setSVector, Rf_StringFalse,
    Rf_StringTrue and Rf_isBlankString have been added to those
    reported by R CMD check.
  * The new function Rf_allocLang is now available. This provides an
    alternative to the idiom of calling Rf_allocList followed by
    SET_TYPEOF.
  UTILITIES:
  * R CMD check now reports as warnings what gfortran calls 'Fortran
    2018 deleted features', all of which have long been marked as
    'obsolescent' and some of which were deleted in Fortran 2008 or
    earlier.  Fortran compilers are no longer required to support
    these.
  BUG FIXES:
  * as.numeric(), scan(), type.convert() and other places which use
    the internal C function R_strtod now require a _non-empty_ digit
    sequence in a decimal or binary exponent.  This aligns with the
    C/POSIX standard for strtod and with ?NumericConstants.
  * as.data.frame(m, make.names=NA) now works correctly for a matrix
    m with NA's in row names.
  * The error message from &lt;POSIXlt&gt;[["hour"]] and similar now
    mentions *[[, "hour"]], as wished for in PR#17409 and proposed by
    Michael Chirico.
  * qbinom() and potentially qpois(), qnbinom(), no longer sometimes
    fail accurate inversion (of pbinom(), etc), thanks to Christopher
    Chang's report and patch in PR#18711.
  * The internal help server on Windows can again serve requests sent
    in quick succession, fixing a regression in R 4.4.0.
  * debugcall(&lt;S3Generic&gt;()) now also works when a corresponding
    S4-generic version is in the methods cache (PR#18143).
  * Package tools' toTitleCase(ch0) now returns character(0) when ch0
    is of zero length; fixing PR#18724, reported by David Hugh Jones.
  * R CMD check is no longer broken (without a check result and no
    explanation in 00check.log) for a package which declares an
    invalid VignetteBuilder in DESCRIPTION but has no vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1730376000">- CHANGES IN R 4.4.2:
  C-LEVEL FACILITIES:
  * The S-compatibility macros F77_COM and F77_COMDECL defined in
    header R_ext/RS.h are deprecated and will be removed shortly.  We
    could find no record of their use.
  BUG FIXES:
  * Mathlib function lgammacor(x) no longer warns about underflow to
    zero for large x.
  * Text widths and heights were incorrectly reported by the Quartz
    device if the drawing context didn't exist yet (typically when
    drawing off-screen to a window that is yet to appear, see
    PR#18591).
  * The Quartz device could segfault in cases where paths with spaces
    are used in the new glyph drawing API.  Thanks to Tomek
    Gieorgijewski (PR#18758).
  * On macOS in R CRAN builds, it is again possible to read
    little-endian UTF-16 text with a BOM from a connection using
    encoding="UTF-16".  Users building R from source should avoid
    using the system libiconv in macOS 14.1 and later.
  * methods' internal .requirePackage() now re-enables primitive
    method dispatch when needed; thanks to Ivan Krylov for
    demystifying CRAN package check failures on the R-devel mailing
    list.</changelog>
</package>
<package pkgid="512c4dd963d4d9444397025814c30930d4f857388d99352c48943fe88f74f1fee121d1ca2610b7f1fa372cde0f44a3fdcddff8df5a65deb1bd2662befb44e5a2" name="R-core-debuginfo" arch="i586">
  <version epoch="0" ver="4.4.2" rel="51.0.2.2.sr20241103"/>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1620302400">- To get in sync with d:l:R:autoCRAN the Matrix package's split
  in -devel was reversed.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339200">- improved spec file according to comments of dimstar in
  https://build.opensuse.org/request/show/892685</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339201">- CHANGES IN R 4.1.0:
  FUTURE DIRECTIONS:
  * It is planned that the 4.1.x series will be the last to support
    32-bit Windows, with production of binary packages for that
    series continuing until early 2023.
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Data set esoph in package datasets now provides the correct
    numbers of controls; previously it had the numbers of cases added
    to these.  (Reported by Alexander Fowler in PR#17964.)
  NEW FEATURES:
  * www.omegahat.net is no longer one of the repositories known by
    default to setRepositories().  (Nowadays it only provides source
    packages and is often unavailable.)
  * Function package_dependencies() (in package tools) can now use
    different dependency types for direct and recursive dependencies.
  * The checking of the size of tarball in R CMD check --as-cran
    &lt;pkg&gt; may be tweaked via the new environment variable
    _R_CHECK_CRAN_INCOMING_TARBALL_THRESHOLD_, as suggested in
    PR#17777 by Jan Gorecki.
  * Using c() to combine a factor with other factors now gives a
    factor, an ordered factor when combining ordered factors with
    identical levels.
  * apply() gains a simplify argument to allow disabling of
    simplification of results.
  * The format() method for class "ftable" gets a new option justify.
    (Suggested by Thomas Soeiro.)
  * New ...names() utility.  (Proposed by Neal Fultz in PR#17705.)
  * type.convert() now warns when its as.is argument is not
    specified, as the help file always said it _should_.  In that
    case, the default is changed to TRUE in line with its change in
    read.table() (related to stringsAsFactor) in R 4.0.0.
  * When printing list arrays, classed objects are now shown _via_
    their format() value if this is a short enough character string,
    or by giving the first elements of their class vector and their
    length.
  * capabilities() gets new entry "Rprof" which is TRUE when R has
    been configured with the equivalent of --enable-R-profiling (as
    it is by default).  (Related to Michael Orlitzky's report
    PR#17836.)
  * str(xS4) now also shows extraneous attributes of an S4 object
    xS4.
  * Rudimentary support for vi-style tags in rtags() and R CMD rtags
    has been added.  (Based on a patch from Neal Fultz in PR#17214.)
  * checkRdContents() is now exported from tools; it and also
    checkDocFiles() have a new option chkInternal allowing to check
    Rd files marked with keyword "internal" as well.  The latter can
    be activated for R CMD check via environment variable
    _R_CHECK_RD_INTERNAL_TOO_.
  * New functions numToBits() and numToInts() extend the raw
    conversion utilities to (double precision) numeric.
  * Functions URLencode() and URLdecode() in package utils now work
    on vectors of URIs.  (Based on patch from Bob Rudis submitted
    with PR#17873.)
  * path.expand() can expand ~user on most Unix-alikes even when
    readline is not in use.  It tries harder to expand ~, for example
    should environment variable HOME be unset.
  * For HTML help (both dynamic and static), Rd file links to help
    pages in external packages are now treated as references to
    topics rather than file names, and fall back to a file link only
    if the topic is not found in the target package. The earlier rule
    which prioritized file names over topics can be restored by
    setting the environment variable _R_HELP_LINKS_TO_TOPICS_ to a
    false value.
  * c() now removes NULL arguments before dispatching to methods,
    thus simplifying the implementation of c() methods, _but_ for
    back compatibility keeps NULL when it is the first argument.
    (From a report and patch proposal by Lionel Henry in PR#17900.)
  * Vectorize()'s result function's environment no longer keeps
    unneeded objects.
  * Function ...elt() now propagates visibility consistently with
    ..n.  (Thanks to Lionel Henry's PR#17905.)
  * capture.output() no longer uses non-standard evaluation to
    evaluate its arguments.  This makes evaluation of functions like
    parent.frame() more consistent.  (Thanks to Lionel Henry's
    PR#17907.)
  * packBits(bits, type="double") now works as inverse of
    numToBits().  (Thanks to Bill Dunlap's proposal in PR#17914.)
  * curlGetHeaders() has two new arguments, timeout to specify the
    timeout for that call (overriding getOption("timeout")) and TLS
    to specify the minimum TLS protocol version to be used for
    https:// URIs (_inter alia_ providing a means to check for sites
    using deprecated TLS versions 1.0 and 1.1).
  * For nls(), an optional constant scaleOffset may be added to the
    denominator of the relative offset convergence test for cases
    where the fit of a model is expected to be exact, thanks to a
    proposal by John Nash.  nls(*, trace=TRUE) now also shows the
    convergence criterion.
  * Numeric differentiation _via_ numericDeriv() gets new optional
    arguments eps and central, the latter for taking central divided
    differences.  The latter can be activated for nls() via
    nls.control(nDcentral = TRUE).
  * nls() now passes the trace and control arguments to getInitial(),
    notably for all self-starting models, so these can also be fit in
    zero-noise situations via a scaleOffset.  For this reason, the
    initial function of a selfStart model must now have ... in its
    argument list.
  * bquote(splice = TRUE) can now splice expression vectors with
    attributes: this makes it possible to splice the result of
    parse(keep.source = TRUE).  (Report and patch provided by Lionel
    Henry in PR#17869.)
  * textConnection() gets an optional name argument.
  * get(), exists(), and get0() now signal an error if the first
    argument has length greater than 1.  Previously additional
    elements were silently ignored.  (Suggested by Antoine Fabri on
    R-devel.)
  * R now provides a shorthand notation for creating functions, e.g.
    \(x) x + 1 is parsed as function(x) x + 1.
  * R now provides a simple native forward pipe syntax |&gt;.  The
    simple form of the forward pipe inserts the left-hand side as the
    first argument in the right-hand side call.  The pipe
    implementation as a syntax transformation was motivated by
    suggestions from Jim Hester and Lionel Henry.
  * all.equal(f, g) for functions now by default also compares their
    environment(.)s, notably via new all.equal method for class
    function.  Comparison of nls() fits, e.g., may now need
    all.equal(m1, m2, check.environment = FALSE).
  * .libPaths() gets a new option include.site, allowing to _not_
    include the site library.  (Thanks to Dario Strbenac's suggestion
    and Gabe Becker's PR#18016.)
  * Lithuanian translations are now available.  (Thanks to Rimantas
    Zakauskas.)
  * names() now works for DOTSXP objects.  On the other hand, in
    R-lang, the R language manual, we now warn against relying on the
    structure or even existence of such dot-dot-dot objects.
  * all.equal() no longer gives an error on DOTSXP objects.
  * capabilities("cairo") now applies only to the file-based devices
    as it is now possible (if very unusual) to build R with Cairo
    support for those but not for X11().
  * There is optional support for tracing the progress of
    loadNamespace() - see its help.
  * (Not Windows.)  l10n_info() reports an additional element, the
    name of the encoding as reported by the OS (which may differ from
    the encoding part (if any) of the result from
    Sys.getlocale("LC_CTYPE").
  * New function gregexec() which generalizes regexec() to find _all_
    disjoint matches and well as all substrings corresponding to
    parenthesized subexpressions of the given regular expression.
    (Contributed by Brodie Gaslam.)
  * New function charClass() in package utils to query the
    wide-character classification functions in use (such as
    iswprint).
  * The names of quantile()'s result no longer depend on the global
    getOption("digits"), but quantile() gets a new optional argument
    digits = 7 instead.
  * grep(), sub(), regexp and variants work considerably faster for
    long factors with few levels.  (Thanks to Michael Chirico's
    PR#18063.)
  * Provide grouping of x11() graphics windows within a window
    manager such as Gnome or Unity; thanks to a patch by Ivan Krylov
    posted to R-devel.
  * The split() method for class data.frame now allows the f argument
    to be specified as a formula.
  * sprintf now warns on arguments unused by the format string.
  * New palettes "Rocket" and "Mako" for hcl.colors() (approximating
    palettes of the same name from the 'viridisLite' package).
    Contributed by Achim Zeileis.
  * The base environment and its namespace are now locked (so one can
    no longer add bindings to these or remove from these).
  * Rterm handling of multi-byte characters has been improved,
    allowing use of such characters when supported by the current
    locale.
  * Rterm now accepts ALT+ +xxxxxxxx sequences to enter Unicode
    characters as hex digits.
  * Environment variable LC_ALL on Windows now takes precedence over
    LC_CTYPE and variables for other supported categories, matching
    the POSIX behaviour.
  * duplicated() and anyDuplicated() are now optimized for integer
    and real vectors that are known to be sorted via the ALTREP
    framework. Contributed by Gabriel Becker via PR#17993.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 14
    and so packages that provide graphics devices should be
    reinstalled.
  * Graphics devices should now specify deviceVersion to indicate
    what version of the graphics engine they support.
  * Graphics devices can now specify deviceClip.  If TRUE, the
    graphics engine will never perform any clipping of output itself.
    The clipping that the graphics engine does perform (for both
    canClip = TRUE and canClip = FALSE) has been improved to avoid
    producing unnecessary artifacts in clipped output.
  * The grid package now allows gpar(fill) to be a linearGradient(),
    a radialGradient(), or a pattern().  The viewport(clip) can now
    also be a grob, which defines a clipping path, and there is a new
    viewport(mask) that can also be a grob, which defines a mask.
    These new features are only supported so far on the Cairo-based
    graphics devices and on the pdf() device.
  * (Not Windows.)  A warning is given when a Cairo-based type is
    specified for a png(), jpeg(), tiff() or bmp() device but Cairo
    is unsupported (so type = "Xlib" is tried instead).
  * grSoftVersion() now reports the versions of FreeType and
    FontConfig if they are used directly (not _via_ Pango), as is
    most commonly done on macOS.
  C-LEVEL FACILITIES:
  * The _standalone_ libRmath math library and R's C API now provide
    log1pexp() again as documented, and gain log1mexp().
  INSTALLATION on a UNIX-ALIKE:
  * configure checks for a program pkgconf if program pkg-config is
    not found.  These are now only looked for on the path (like
    almost all other programs) so if needed specify a full path to
    the command in PKG_CONFIG, for example in file config.site.
  * C99 function iswblank is required - it was last seen missing ca
    2003 so the workaround has been removed.
  * There are new configure options --with-internal-iswxxxxx,
  - -with-internal-towlower and --with-internal-wcwidth which allows
    the system functions for wide-character classification,
    case-switching and width (wcwidth and wcswidth) to be replaced by
    internal ones.  The first has long been used on macOS, AIX (and
    Windows) but this enables it to be unselected there and selected
    for other platforms (it is the new default on Solaris).  The
    second is new in this version of R and is selected by default on
    macOS and Solaris.  The third has long been the default and
    remains so as it contains customizations for East Asian
    languages.
    System versions of these functions are often minimally
    implemented (sometimes only for ASCII characters) and may not
    cover the full range of Unicode points: for example Solaris (and
    Windows) only cover the Basic Multilingual Plane.
  * Cairo installations without X11 are more likely to be detected by
    configure, when the file-based Cairo graphics devices will be
    available but not X11(type = "cairo").
  * There is a new configure option --with-static-cairo which is the
    default on macOS.  This should be used when only static cairo
    (and where relevant, Pango) libraries are available.
  * Cairo-based graphics devices on platforms without Pango but with
    FreeType/FontConfig will make use of the latter for font
    selection.
  LINK-TIME OPTIMIZATION on a UNIX-ALIKE:
  * Configuring with flag --enable-lto=R now also uses LTO when
    installing the recommended packages.
  * R CMD INSTALL and R CMD SHLIB have a new flag --use-LTO to use
    LTO when compiling code, for use with R configured with
  - -enable-lto=R.  For R configured with --enable-lto, they have
    the new flag --no-use-LTO.
    Packages can opt in or out of LTO compilation _via_ a UseLTO
    field in the DESCRIPTION file.  (As usual this can be overridden
    by the command-line flags.)
  BUILDING R on Windows:
  * for GCC &gt;= 8, FC_LEN_T is defined in config.h and hence character
    lengths are passed from C to Fortran in _inter alia_ BLAS and
    LAPACK calls.
  * There is a new text file src/gnuwin32/README.compilation, which
    outlines how C/Fortran code compilation is organized and
    documents new features:
  * R can be built with Link-Time Optimization with a suitable
    compiler - doing so with GCC 9.2 showed several
    inconsistencies which have been corrected.
  * There is support for cross-compiling the C and Fortran code
    in R and standard packages on suitable (Linux) platforms.
    This is mainly intended to allow developers to test later
    versions of compilers - for example using GCC 9.2 or 10.x has
    detected issues that GCC 8.3 in Rtools40 does not.
  * There is experimental support for cross-building R packages
    with C, C++ and/or Fortran code.
  * The R installer can now be optionally built to support a single
    architecture (only 64-bit or only 32-bit).
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++14 where
    available (which it is on all currently checked platforms): if
    not (as before) C++11 is used if available otherwise C++ is not
    supported.
    Packages which specify C++11 will still be installed using C++11.
    C++14 compilers may give deprecation warnings, most often for
    std::random_shuffle (deprecated in C++14 and removed in C++17).
    Either specify C++11 (see 'Writing R Extensions') or modernize
    the code and if needed specify C++14.  The latter has been
    supported since R 3.4.0 so the package's DESCRIPTION would need
    to include something like
    Depends: R (&gt;= 3.4)
  PACKAGE INSTALLATION on Windows:
  * R CMD INSTALL and R CMD SHLIB make use of their flag --use-LTO
    when the LTO_OPT make macro is set in file etc/${R_ARCH}/Makeconf
    or in a personal/site Makevars file.  (For details see 'Writing R
    Extensions' SS4.5.)
    This provides a valuable check on code consistency.  It does work
    with GCC 8.3 as in Rtools40, but that does not detect everything
    the CRAN checks with current GCC do.
  PACKAGE INSTALLATION on macOS:
  * The default personal library directory on builds with
  - -enable-aqua (including CRAN builds) now differs by CPU type,
    one of
    ~/Library/R/x86_64/x.y/library
    ~/Library/R/arm64/x.y/library
    This uses the CPU type R (and hence the packages) were built for,
    so when a x86_64 build of R is run under Rosetta emulation on an
    arm64 Mac, the first is used.
  UTILITIES:
  * R CMD check can now scan package functions for bogus return
    statements, which were possibly intended as return() calls (wish
    of PR#17180, patch by Sebastian Meyer). This check can be
    activated via the new environment variable
    _R_CHECK_BOGUS_RETURN_, true for --as-cran.
  * R CMD build omits tarballs and binaries of previous builds from
    the top-level package directory.  (PR#17828, patch by Sebastian
    Meyer.)
  * R CMD check now runs sanity checks on the use of LazyData, for
    example that a data directory is present and that
    LazyDataCompression is not specified without LazyData and has a
    documented value.  For packages with large LazyData databases
    without specifying LazyDataCompression, there is a reference to
    the code given in 'Writing R Extensions' SS1.1.6 to test the
    choice of compression (as in all the CRAN packages tested a
    non-default method was preferred).
  * R CMD build removes LazyData and LazyDataCompression fields from
    the DESCRIPTION file of packages without a data directory.
  ENCODING-RELATED CHANGES:
  * The parser now treats \Unnnnnnnn escapes larger than the upper
    limit for Unicode points (\U10FFFF) as an error as they cannot be
    represented by valid UTF-8.
    Where such escapes are used for outputting non-printable
    (including unassigned) characters, 6 hex digits are used (rather
    than 8 with leading zeros).  For clarity, braces are used, for
    example \U{0effff}.
  * The parser now looks for non-ASCII spaces on Solaris (as
    previously on most other OSes).
  * There are warnings (including from the parser) on the use of
    unpaired surrogate Unicode points such as \uD834.  (These cannot
    be converted to valid UTF-8.)
  * Functions nchar(), tolower(), toupper() and chartr() and those
    using regular expressions have more support for inputs with a
    marked Latin-1 encoding.
  * The character-classification functions used (by default) to
    replace the system iswxxxxx functions on Windows, macOS and AIX
    have been updated to Unicode 13.0.0.
    The character-width tables have been updated to include new
    assignments in Unicode 13.0.0.
  * The code for evaluating default (extended) regular expressions
    now uses the same character-classification functions as the rest
    of R (previously they differed on Windows, macOS and AIX).
  * There is a build-time option to replace the system's
    wide-character wctrans C function by tables shipped with R: use
    configure option --with-internal-towlower or (on Windows)
  - DUSE_RI18N_CASE in CFLAGS when building R.  This may be needed
    to allow tolower() and toupper() to work with Unicode characters
    beyond the Basic Multilingual Plane where not supported by system
    functions (e.g. on Solaris where it is the new default).
  * R is more careful when truncating UTF-8 and other multi-byte
    strings that are too long to be printed, passed to the system or
    libraries or placed into an internal buffer.  Truncation will no
    longer produce incomplete multibyte characters.
  DEPRECATED AND DEFUNCT:
  * Function plclust() from the package stats and
    package.dependencies(), pkgDepends(), getDepList(),
    installFoundDepends(), and vignetteDepends() from package tools
    are defunct.
  * Defunct functions checkNEWS() and readNEWS() from package tools
    and CRAN.packages() from utils have been removed.
  * R CMD config CXXCPP is defunct (it was deprecated in R 3.6.2).
  * parallel::detectCores() drops support for Irix (retired in 2013).
  * The LINPACK argument to chol.default(), chol2inv(),
    solve.default() and svd() has been defunct since R 3.1.0.  It was
    silently ignored up to R 4.0.3 but now gives an error.
  * Subsetting/indexing, such as ddd[*] or ddd$x on a DOTSXP
    (dot-dot-dot) object ddd has been disabled; it worked by accident
    only and was undocumented.
  BUG FIXES:
  * Many more C-level allocations (mainly by malloc and strdup) are
    checked for success with suitable alternative actions.
  * Bug fix for replayPlot(); this was turning off graphics engine
    display list recording if a recorded plot was replayed in the
    same session.  The impact of the bug became visible if resize the
    device after replay OR if attempted another savePlot() after
    replay (empty display list means empty screen on resize or empty
    saved plot).
  * R CMD check etc now warn when a package exports non-existing S4
    classes or methods, also in case of no "methods" presence.
    (Reported by Alex Bertram; reproducible example and patch by
    Sebastian Meyer in PR#16662.)
  * boxplot() now also accepts calls for labels such as ylab, the
    same as plot().  (Reported by Marius Hofert.)
  * The help page for xtabs() now correctly states that addNA is
    setting na.action = na.pass among others.  (Reported as PR#17770
    by Thomas Soeiro.)
  * The R CMD check &lt;pkg&gt; gives a longer and more comprehensible
    message when DESCRIPTION misses dependencies, e.g., in Imports:.
    (Thanks to the contributors of PR#17179.)
  * update.default() now calls the generic update() on the formula to
    work correctly for models with extended formulas.  (As reported
    and suggested by Neal Fultz in PR#17865.)
  * The horizontal position of leaves in a dendrogram is now correct
    also with center = FALSE.  (PR#14938, patch from Sebastian
    Meyer.)
  * all.equal.POSIXt() no longer warns about and subsequently ignores
    inconsistent "tzone" attributes, but describes the difference in
    its return value (PR#17277).  This check can be disabled _via_
    the new argument check.tzone = FALSE as suggested by Sebastian
    Meyer.
  * as.POSIXct() now populates the "tzone" attribute from its tz
    argument when x is a logical vector consisting entirely of NA
    values.
  * x[[2^31]] &lt;- v now works.  (Thanks to the report and patch by
    Suharto Anggono in PR#17330.)
  * In log-scale graphics, axis() ticks and label positions are now
    computed more carefully and symmetrically in their range,
    typically providing _more_ ticks, fulfilling wishes in PR#17936.
    The change really corresponds to an improved axisTicks() (package
    grDevices), potentially influencing grid and lattice, for
    example.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now correct to at
    least five digits where it was catastrophically wrong,
    previously.
  * sum(df) and similar "Summary"- and "Math"-group member functions
    now work for data frames df with logical columns, notably also of
    zero rows.  (Reported to R-devel by Martin "b706".)
  * unsplit() had trouble with tibbles due to unsound use of rep(NA,
    len)-indexing, which should use NA_integer_ (Reported to R-devel
    by Mario Annau.)
  * pnorm(x, log.p = TRUE) underflows to -Inf slightly later.
  * show(&lt;hidden S4 generic&gt;) prints better and without quotes for
    non-hidden S4 generics.
  * read.table() and relatives treated an "NA" column name as missing
    when check.names = FALSE PR#18007.
  * Parsing strings containing UTF-16 surrogate pairs such as
    "\uD834\uDD1E" works better on some (uncommon) platforms.
    sprintf("%X", utf8ToInt("\uD834\uDD1E")) should now give "1D11E"
    on all platforms.
  * identical(x,y) is no longer true for differing DOTSXP objects,
    fixing PR#18032.
  * str() now works correctly for DOTSXP and related exotics, even
    when these are doomed.
    Additionally, it no longer fails for lists with a class and
    "irregular" method definitions such that e.g. lapply(*) will
    necessarily fail, as currently for different igraph objects.
  * Too long lines in environment files (e.g. Renviron) no longer
    crash R. This limit has been increased to 100,000 bytes.
    (PR#18001.)
  * There is a further workaround for FreeType giving incorrect
    italic font faces with cairo-based graphics devices on macOS.
  * add_datalist(*, force = TRUE) (from package tools) now actually
    updates an existing data/datalist file for new content.  (Thanks
    to a report and patch by Sebastian Meyer in PR#18048.)
  * cut.Date() and cut.POSIXt() could produce an empty last interval
    for breaks = "months" or breaks = "years".  (Reported as PR#18053
    by Christopher Carbone.)
  * Detection of the encoding of 'regular' macOS locales such as
    en_US (which is UTF-8) had been broken by a macOS change:
    fortunately these are now rarely used with en_US.UTF-8 being
    preferred.
  * sub() and gsub(pattern, repl, x, *) now keep attributes of x such
    as names() also when pattern is NA (PR#18079).
  * Time differences ("difftime" objects) get a replacement and a
    rep() method to keep "units" consistent.  (Thanks to a report and
    patch by Nicolas Bennett in PR#18066.)
  * The \RdOpts macro, setting defaults for \Sexpr options in an Rd
    file, had been ineffective since R 2.12.0: it now works again.
    (Thanks to a report and patch by Sebastian Meyer in PR#18073.)
  * mclapply and pvec no longer accidentally terminate parallel
    processes started before by mcparallel or related calls in
    package parallel (PR#18078).
  * grep and other functions for evaluating (extended) regular
    expressions handle in Unicode also strings not explicitly flagged
    UTF-8, but flagged native when running in UTF-8 locale.
  * Fixed a crash in fifo implementation on Windows (PR#18031).
  * Binary mode in fifo on Windows is now properly detected from
    argument open (PR#15600, PR#18031).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1622808000">- The line %{__install} -m 755 -d %{_infodir}
  no longer works in TW or Factory.
  But without that line it works everywhere. So this instruction
  was commented out of the spec file.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1628596800">- CHANGES IN R 4.1.1:
  NEW FEATURES:
  * require(pkg, quietly = TRUE) is quieter and in particular does
    not warn if the package is not found.
  DEPRECATED AND DEFUNCT:
  * Use of ftp:// URIs should be regarded as deprecated, with
    on-going support confined to method = "libcurl" and not routinely
    tested.  (Nowadays no major browser supports them.)
  * The non-default method = "internal" is deprecated for http:// and
    ftp:// URIs for both download.file and url.
  * On Windows, method = "wininet" is deprecated for http://,
    https:// and ftp:// URIs for both download.file and url.  (A
    warning is only given for ftp://.)
    For ftp:// URIs the default method is now "libcurl" if available
    (which it is on CRAN builds).
    method = "wininet" remains the default for http:// and https://
    URIs but if libcurl is available, using method = "libcurl" is
    preferred.
  INSTALLATION:
  * make check now works also without a LaTeX installation.  (Thanks
    to Sebastian Meyer's PR#18103.)
  BUG FIXES:
  * make check-devel works again in an R build configured with
  - -without-recommended-packages.
  * qnbinom(p, size, mu) for large size/mu is correct now in a range
    of cases (PR#18095); similarly for the (size, prob)
    parametrization of the negative binomial.  Also qpois() and
    qbinom() are better and or faster for extreme cases.  The
    underlying C code has been modularized and is common to all four
    cases of discrete distributions.
  * gap.axis is now part of the axis() arguments which are passed
    from bxp(), and hence boxplot().  (Thanks to Martin Smith's
    report and suggestions in PR#18109.)
  * .First and .Last can again be set from the site profile.
  * seq.int(from, to, *) and seq.default(..) now work better in large
    range cases where from-to is infinite where the two boundaries
    are finite.
  * all.equal(x,y) now returns TRUE correctly also when several
    entries of abs(x) and abs(y) are close to .Machine$double.xmax,
    the largest finite numeric.
  * model.frame() now clears the object bit when removing the class
    attribute of a value via na.action (PR#18100).
  * charClass() now works with multi-character strings on Windows
    (PR#18104, fixed by Bill Dunlap).
  * encodeString() on Solaris now works again in Latin-1 encoding on
    characters represented differently in UTF-8.  Support for
    surrogate pairs on Solaris has been improved.
  * file.show() on Windows now works with non-ASCII path names
    representable in the current native encoding (PR#18132).
  * Embedded R on Windows can now find R home directory via the
    registry even when installed only for the current user
    (PR#18135).
  * pretty(x) with finite x now returns finite values also in the
    case where the extreme x values are close in size to the maximal
    representable number .Machine$double.xmax.
    Also, it's been tweaked for very small ranges and when a boundary
    is close (or equal) to zero; e.g., pretty(c(0,1e-317)) no longer
    has negative numbers, currently still warning about a very small
    range, and pretty(2^-(1024 - 2^-1/(c(24,10)))) is more accurate.
  * The error message for not finding vignette files when weaving has
    correct file sizes now. (Thanks to Sebastian Meyer's PR#18154.)
  * dnbinom(20, &lt;large&gt;, 1) now correctly gives 0, and similar cases
    are more accurate with underflow precaution.  (Reported by Francisco Vera Alcivar in PR#18072.)</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635163200">- repaired https://bugzilla.suse.com/show_bug.cgi?id=1191380
  (rpmacros now go to rpmmacrodir)
- minor clean-ups in spec file</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635768000">- CHANGES IN R 4.1.2:
  C-LEVEL FACILITIES:
  * The workaround in headers R.h and Rmath.h (using namespace std;)
    for the Oracle Developer Studio compiler is no longer needed now
    C++11 is required so has been removed.  A couple more usages of
    log() (which should have been std::log()) with an int argument
    are reported on Solaris.
  * The undocumented limit of 4095 bytes on messages from the
    S-compatibility macros PROBLEM and MESSAGE is now documented and
    longer messages will be silently truncated rather than
    potentially causing segfaults.
  * If the R_NO_SEGV_HANDLER environment variable is non-empty, the
    signal handler for SEGV/ILL/BUS signals (which offers recovery
    user interface) is not set. This allows more reliable debugging
    of crashes that involve the console.
  DEPRECATED AND DEFUNCT:
  * The legacy S-compatibility macros PROBLEM, MESSAGE, ERROR, WARN,
    WARNING, RECOVER, ... are deprecated and will be hidden in R
    4.2.0. R's native interface of Rf_error and Rf_warning has long
    been preferred.
  BUG FIXES:
  * .mapply(F, dots, .) no longer segfaults when dots is not a list
    and uses match.fun(F) as always documented; reported by Andrew
    Simmons in PR#18164.
  * hist(&lt;Date&gt;, ...) and hist(&lt;POSIXt&gt;, ...)  no longer pass
    arguments for rect() (such as col and density) to axis().
    (Thanks to Sebastian Meyer's PR#18171.)
  * \Sexpr{ch} now preserves Encoding(ch). (Thanks to report and
    patch by Jeroen Ooms in PR#18152.)
  * Setting the RNG to "Marsaglia-Multicarry" e.g., by RNGkind(), now
    warns in more places, thanks to Andr'e Gillibert's report and
    patch in PR#18168.
  * gray(numeric(), alpha=1/2) no longer segfaults, fixing PR#18183,
    reported by Till Krenz.
  * Fixed dnbinom(x, size=&lt;very_small&gt;, .., log=TRUE) regression,
    reported by Martin Morgan.
  * as.Date.POSIXlt(x) now keeps names(x), thanks to Davis Vaughan's
    report and patch in PR#18188.
  * model.response() now strips an "AsIs" class typically, thanks to
    Duncan Murdoch's report and other discussants in PR#18190.
  * try() is considerably faster in case of an error and long call,
    as e.g., from some do.call().  Thanks to Alexander Kaever's
    suggestion posted to R-devel.
  * qqline(y = &lt;object&gt;) such as y=I(.), now works, see also
    PR#18190.
  * Non-integer mgp par() settings are now handled correctly in
    axis() and mtext(), thanks to Mikael Jagan and Duncan Murdoch's
    report and suggestion in PR#18194.
  * formatC(x) returns length zero character() now, rather than ""
    when x is of length zero, as documented, thanks to Davis
    Vaughan's post to R-devel.
  * removeSource(fn) now retains (other) attributes(fn).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1647000000">- CHANGES IN R 4.1.3:
  NEW FEATURES:
  * The default version of Bioconductor has been changed to 3.14.
    (This is used by setRepositories and the menus in GUIs.)
  UTILITIES:
  * R CMD check --as-cran has a workaround for a bug in versions of
    file up to at least 5.41 which mis-identify DBF files last
    changed in 2022 as executables.
  C-LEVEL FACILITIES:
  * The legacy S-compatibility macros SINGLE_* in R_ext/Constants.h
    (included by R.h) are deprecated and will be removed in R 4.2.0.
  BUG FIXES:
  * Initialization of self-starting nls() models with initialization
    functions following the pre-R-4.1.0 API (without the ...
    argument) works again for now, with a deprecation warning.
  * Fixed quoting of ~autodetect~ in Java setting defaults to avoid
    inadvertent user lookup due to leading ~, reported in PR#18231 by
    Harold Gutch.
  * substr(., start, stop) &lt;- v now treats _negative_ stop values
    correctly.  Reported with a patch in PR#18228 by Brodie Gaslam.
  * Subscripting an array x without dimnames by a
    length(dim(x))-column character matrix gave "random" non-sense,
    now an error; reported in PR#18244 by Mikael Jagan.
  * ...names() now matches names(list(...)) closely, fixing PR#18247.
  * all.equal(*, scale = s) now works as intended when length(s) &gt; 1,
    partly thanks to Michael Chirico's PR#18272.
  * print(x) for long vectors x now also works for named atomic
    vectors or lists and prints the correct number when reaching the
    getOption("max.print") limit; partly thanks to a report and
    proposal by Hugh Parsonage to the R-devel list.
  * all.equal(&lt;selfStart&gt;, *) no longer signals a deprecation
    warning.
  * reformulate(*, response=r) gives a helpful error message now when
    length(r) &gt; 1, thanks to Bill Dunlap's PR#18281.
  * Modifying globalCallingHandlers inside withCallingHandlers() now
    works or fails correctly, thanks to Henrik Bengtsson's PR#18257.
  * hist(&lt;Date&gt;, breaks = "days") and hist(&lt;POSIXt&gt;, breaks = "secs")
    no longer fail for inputs of length 1.
  * qbeta(.001, .9, .009) and similar cases now converge correctly
    thanks to Ben Bolker's report in PR#17746.
  * window(x, start, end) no longer wrongly signals "'start' cannot
    be after 'end'", fixing PR#17527 and PR#18291.
  * data() now checks that its (rarely used) list argument is a
    character vector - a couple of packages passed other types and
    gave incorrect results.
  * which() now checks its arr.ind argument is TRUE rather coercing
    to logical and taking the first element - which gave incorrect
    results in package code.
  * model.weights() and model.offset() more carefully extract their
    model components, thanks to Ben Bolker and Tim Taylor's R-devel
    post.
  * list.files(recursive = TRUE) now shows all broken symlinks
    (previously, some of them may have been omitted, PR#18296).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1650628800">- CHANGES IN R 4.2.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * The formula method of aggregate() now matches the generic in
    naming its first argument x (resolving PR#18299 by Thomas
    Soeiro).
    This means that calling aggregate() with a formula as a named
    first argument requires name formula in earlier versions of R and
    name x now, so portable code should not name the argument (code
    in many packages did).
  * Calling &amp;&amp; or || with either argument of length greater than one
    now gives a warning (which it is intended will become an error).
  * Calling if() or while() with a condition of length greater than
    one gives an error rather than a warning.  Consequently,
    environment variable _R_CHECK_LENGTH_1_CONDITION_ no longer has
    any effect.
  * Windows users should consult the WINDOWS section below for some
    profound changes including
  * Support for 32-bit builds has been dropped.
  * UTF-8 locales are used where available.
  * The default locations for the R installation and personal
    library folder have been changed.
    Thanks to Tomas Kalibera for months of work on the Windows port
    for this release.
  NEW FEATURES:
  * matrix(x, n, m) now warns in more cases where length(x) differs
    from n * m, as suggested by Abby Spurdle and Wolfgang Huber in
    Feb 2021 on the R-devel mailing list.
    This warning can be turned into an error by setting environment
    variable _R_CHECK_MATRIX_DATA_ to TRUE: R CMD check --as-cran
    does so unless it is already set.
  * Function file_test() in package utils gains tests for symlinks,
    readability and writability.
  * capabilities("libxml") is now false.
    The description of capabilities("http/ftp") now reflects that it
    refers to the default method, no longer the internal one.
  * simplify2array() gains an except argument for controlling the
    exceptions used by sapply().
  * Environment variables R_LIBS_USER and R_LIBS_SITE are both now
    set to the R system default if unset or empty, and can be set to
    NULL to indicate an empty list of user or site library
    directories.
  * The warning for axis()(-like) calls in cases of relatively small
    ranges (typically in log-scale situations) is slightly improved
    _and_ suppressed from explicit calls to .axisPars() as has always
    been the intention.
  * The contrasts setter function `contrasts&lt;-` gains an explicit
    default how.many = NULL rather than just using missing(how.many).
  * grid.pretty() gains a new optional argument n = 5.
  * There is a new function .pretty() with option bounds as a
    technical-utility version of pretty().  It and pretty() gain a
    new argument f.min with a better than back-compatible default.
  * Function grDevices::axisTicks() and related functions such as
    graphics::axis() work better, notably for the log scale; partly
    because of the pretty() improvements, but also because care is
    taken e.g., when ylim is finite but diff(ylim) is infinite.
  * nclass.FD() gains a digits option.
  * The R Mathlib internal C function bd0() (called indirectly from a
    dozen probability density and distribution functions such as
    dpois(), dbinom(), dgamma(), pgamma() _etc_) has been
    complemented by a more sophisticated and (mostly) more accurate C
    function ebd0(), currently called only by internal dpois_raw()
    improving accuracy for R level dpois() and potentially others
    calling it such as dnbinom(), dgamma() or pgamma().  (Thanks to
    Morten Welinder's PR#15628.)
  * write.ftable() gains sep = " " argument as suggested by Thomas
    Soeiro.
  * The names of the locale categories supported by R's
    Sys.getlocale() and Sys.setlocale() are now provided by variable
    .LC.categories in the base namespace.
  * The Date and POSIXt methods for hist() and the histogram method
    for plot() now also use the new default col = "lightgray" in
    consistency with the corresponding change to hist()'s default for
    R 4.0.0.
  * hist.default() gains new fuzz argument, and the histogram plot
    method no longer uses fractional axis ticks when displaying
    counts ("Frequency").
  * mapply() and hence Map() now also obey the "max-or-0-if-any"
    recycling rule, such that, e.g., Map(`+`, 1:3, 1[0]) is valid
    now.
  * as.character(&lt;obj&gt;) for "hexmode" or "octmode" objects now
    fulfils the important basic rule as.character(x)[j] ===
    as.character(x[j]).
  * The set utility functions, notably intersect() have been tweaked
    to be more consistent and symmetric in their two set arguments,
    also preserving a common mode.
  * substr(ch, start,end) &lt;- new now e.g., preserves names(ch); ditto
    for substring(), thanks to a patch from Brodie Gaslam.
  * plot(&lt;lm&gt;) gains a extend.ylim.f argument, in partial response to
    PR#15285; further PR#17784 is fixed thanks to several
    contributors and a patch by Elin Waring.  The Cook's dist
    contours get customizable via cook.col and cook.lty with a
    different default color and their legend is nicer by default and
    customizable via cook.legendChanges.
  * Attempting to subset an object that is not subsettable now
    signals an error of class notSubsettableError. The
    non-subsettable object is contained in the object field of the
    error condition.
  * Subscript-out-of-bounds errors are now signaled as errors of
    class subscriptOutOfBoundsError.
  * Stack-overflow errors are now signaled as errors inheriting from
    class stackOverflowError. See ?stackOverflowError for more
    details.
  * New partly experimental Sys.setLanguage() utility, solving the
    main problem of PR#18055.
  * gettext() and gettextf() get a new option trim = TRUE which when
    set to false allows translations for strings such as "Execution
    halted\n" typical for C code.
  * An experimental implementation of hash tables is now available.
    See ?hashtab for more details.
  * identical() gains a extptr.as.ref argument for requesting that
    external pointer objects be compared as reference objects.
  * reorder() gets an argument decreasing which it passes to sort()
    for level creation; based on the wish and patch by Thomas Soeiro
    in PR#18243.
  * as.vector() gains a data.frame method which returns a simple
    named list, also clearing a long standing 'FIXME' to enable
    as.vector(&lt;data.frame&gt;, mode="list").  This breaks code relying
    on as.vector(&lt;data.frame&gt;) to return the unchanged data frame.
  * legend() is now vectorized for arguments cex, x.intersp, and
    text.width.  The latter can now also be specified as a vector
    (one element for each column of the legend) or as NA for
    computing a proper column wise maximum value of strwidth(legend).
    The argument y.intersp can be specified as a vector with one
    entry for each row of the legend.
    legend() also gains new arguments title.cex and title.font.
    Thanks to Swetlana Herbrandt.
  * Deparsing no longer remaps attribute names dim, dimnames, levels,
    names and tsp to historical S-compatible names (which structure()
    maps back).
  * sample() and sample.int() have additional sanity checks on their
    size and n arguments.
    all.equal.numeric() gains a sanity check on its tolerance
    argument - calling all.equal(a, b, c) for three numeric vectors
    is a surprisingly common error.
    mean(na.rm =), rank(na.last =), barplot(legend.text =),
    boxplot(), contour(drawlabels =), polygon(border =) and
    methods::is(class2 =) have more robust sanity checks on their
    arguments.
    R CMD Rd2pdf (used by R CMD check) has a more robust sanity check
    on the format of \alias{} commands.
  * psigamma(x, deriv) for negative x now also works for deriv = 4
    and 5; their underlying C level dpsifn() is documented in
    'Writing R Extensions'.
  * The HTML help system now uses HTML5 (wish of PR#18149).
  * ks.test() now provides exact p-values also with ties and MC
    p-values in the two-sample (Smirnov) case.  By Torsten Hothorn.
  * ks.test() gains a formula interface, with y ~ 1 for the
    one-sample (Kolmogorov) test and y ~ group for the two-sample
    (Smirnov) test.  Contributed by Torsten Hothorn.
  * The return value from ks.test() now has class c("ks.test",
    "htest") - packages using try() need to take care to use
    inherits() and not == on the class.
  * New functions psmirnov(), qsmirnov() and rsmirnov() in package
    stats implementing the asymptotic and exact distributions of the
    two-sample Smirnov statistic.
  * iconv() now allows sub = "c99" to use C99-style escapes for UTF-8
    inputs which cannot be converted to encoding to.
  * In a forward pipe |&gt; expression it is now possible to use a named
    argument with the placeholder _ in the rhs call to specify where
    the lhs is to be inserted.  The placeholder can only appear once
    on the rhs.
  * The included LAPACK sources have been updated to version 3.10.0,
    except for the four Fortran 77 routines which 3.10.0 has
    re-implemented in Fortran 90 (where the older versions have been
    retained as the R build process does not support Fortran 90).
  * path.expand() and most other uses of tilde expansion now warn if
    a path would be too long if expanded.  (An exception is
    file.exists(), which silently returns false.)
  * trunc(&lt;Date&gt;, *) now supports units = "months" or "years" for
    consistency with the POSIXt method, thanks to Dirk Eddelbuettel's
    proposal in PR#18099.
  * list2DF() now checks that its arguments are of the same length,
    rather than use recycling.
  * The HTML help system has several new features: LaTeX-like math
    can be typeset using either KaTeX or MathJax, usage and example
    code is highlighted using Prism, and for dynamic help the output
    of examples and demos can be shown within the browser if the
    knitr package is installed. These features can be disabled by
    setting the environment variable _R_HELP_ENABLE_ENHANCED_HTML_ to
    a false value.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 15
    and so packages that provide graphics devices should be
    reinstalled.
  * The grid package now allows the user to specify a "vector" of
    pattern fills.  The fill argument to gpar() accepts a list of
    gradients and/or patterns and the functions linearGradient(),
    radialGradient(), and pattern() have a new group argument.
    Points grobs (data symbols) can now also have a pattern fill.
    The grobCoords() function now returns a more informative and
    complex result.
  * The grid package has new functions for drawing isolated groups:
    grid.group(), grid.define(), and grid.use().  These functions add
    compositing operators and affine transformations to R's graphics
    capabilities.
    The grid package also has new functions for stroking and filling
    paths: grid.stroke(), grid.fill(), and grid.fillStroke().
    A new function as.path() allows the user to specify the fill rule
    for a path that is to be used for clipping, stroking, or filling;
    available options are "winding" and "evenodd".  A new function
    as.mask() allows the user to specify the type of a mask;
    available options are "alpha" and "luminance".
    These new features are only supported so far (at most) on the
    Cairo-based graphics devices and on the pdf() device.
  * dev.capabilities() reports on device support for the new
    features.
  * par() now warns about unnamed non-character arguments to prevent
    misuse such as {usr &lt;- par("usr"); par(usr)}.
  INSTALLATION:
  * Facilities for accessing ftp:// sites are no longer tested
    (except _pro tem_ for curlGetHeaders()) as modern browsers have
    removed support.
  * R can now be built with DEFS = -DSTRICT_R_HEADERS .
  PACKAGE INSTALLATION:
  * R CMD INSTALL no longer tangles vignettes. This completes an R
    CMD build change in R 3.0.0 and affects packages built before R
    3.0.2. Such packages should be re-made with R CMD build to have
    the tangled R code of vignettes shipped with the tarball.
  * USE_FC_LEN_T will become the default: this uses the correct
    prototypes for Fortran BLAS/LAPACK routines called from C/C++,
    and requires adjustment of most such calls - see 'Writing R
    Extensions' SS6.6.2.  (This has been supported since R 3.6.2.)
  * Package installation speed for packages installed with
    keep.source has been improved. This resolve the issue reported by
    Ofek Shilon in PR#18236.
  UTILITIES:
  * R CMD check can optionally report files/directories left behind
    in home, /tmp (even though TMPDIR is set) and other directories.
    See the "R Internals" manual for details.
  * R CMD check now reports byte-compilation errors during
    installation.  These are not usually fatal but may result in
    parts of the package not being byte-compiled.
  * _R_CHECK_DEPENDS_ONLY_ can be applied selectively to examples,
    tests and/or vignettes in R CMD check: see the "R Internals"
    manual.
  * _R_CHECK_SRC_MINUS_W_IMPLICIT_ now defaults to true: recent
    versions of Apple clang on macOS have made implicit function
    declarations in C into a compilation error.
  * R CMD check --as-cran makes use of the environment variable
    AUTORECONF.  See the "R Internals" manual SS8 for further details.
  * R CMD check --use-valgrind also uses valgrind when re-building
    vignettes as some non-Sweave vignettes unhelpfully comment out
    all their code when R CMD check runs vignettes.
  * Errors in re-building vignettes (unless there are LaTeX errors)
    are reported by R CMD check as ERROR rather than WARNING when
    running vignettes has been skipped (as it frequently is in CRAN
    checks and by --as-cran).
  * R CMD Rd2pdf gains a --quiet option that is used by R CMD build
    when building the PDF package manual.
  * R CMD Rd2pdf now always runs LaTeX in batch mode, consistent with
    Texinfo &gt;= 6.7. The --batch option is ignored.
  * R CMD build and R CMD check now include the Rd file name and line
    numbers in the error message of an \Sexpr evaluation failure.
  * For packages using the \doi Rd macro (now an install-time \Sexpr)
    but no other dynamic Rd content, R CMD build now produces a
    smaller tarball and is considerably faster - skipping temporary
    package installation.
  C-LEVEL FACILITIES:
  * The non-API header R_ext/R-ftp-http.h is no longer provided, as
    the entry points it covered are now all defunct.
  * A number of non-API declarations and macro definitions have been
    moved from the installed header Rinternals.h to the internal
    header Defn.h. Packages that only use entry points and
    definitions documented to be part of the API as specified in
    'Writing R Extensions' SS6 should not be affected.
  * The macro USE_RINTERNALS no longer has any effect when compiling
    package code.  Packages which also use R_NO_REMAP will need to
    ensure that the remapped names are used for calls to API
    functions that were formerly also made available as macros.
  * The deprecated legacy S-compatibility macros PROBLEM, MESSAGE,
    ERROR, WARN, WARNING, RECOVER, ... are no longer defined in
    R_exts/RS.h (included by R.h).  Replace these by calls to
    Rf_error and Rf_warning (defined in header R_ext/Error.h included
    by R.h).
    Header R_ext/RS.h no longer includes R_ext/Error.h.
  * Header R_ext/Constants.h (included by R.h) when included from C++
    now includes the C++ header cfloat rather than the C header
    float.h (now possible as C++11 is required).
  * The legacy S-compatibility macros DOUBLE_* in R_ext/Constants.h
    (included by R.h) are deprecated.
  * The deprecated S-compatibility macros SINGLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * R_Calloc, R_Free and R_Realloc are preferred to their unprefixed
    forms and error messages now use the prefix. These forms were
    introduced in R 3.4.0 and are available even when
    STRICT_R_HEADERS is defined.
  * rmultinom has been documented in 'Writing R Extensions' SS6 so is
    now part of the R API.
  * Similarly, Rtanpi, called from R level tanpi() is now part of the
    R API.
  * The long-deprecated, undocumented and non-API entry point call_R
    is no longer declared in R_ext/RS.h (included by R.h).
  * The header S.h which has been unsupported since Jan 2016 has been
    removed.  Use R.h instead.
  DEPRECATED AND DEFUNCT:
  * The (non-default and deprecated) method = "internal" for
    download.file() and url() no longer supports http:// nor ftp://
    URIs.  (It is used only for file:// URIs.)
    On Windows, download.file(method = "wininet") no longer supports
    ftp:// URIs.  (It is no longer the default method, which is
    "libcurl" and does.)
    On Windows, the deprecated method = "wininet" now gives a warning
    for http:// and https:// URIs for both download.file() and url().
    (It is no longer the default method.)
  * On Windows, the command-line option --max-mem-size and
    environment variable R_MAX_MEM_SIZE are defunct.  The memory
    allocation limit was important for 32-bit builds, but these are
    no longer supported.
  * default.stringsAsFactors() is now formally deprecated, where that
    was only mentioned on its regular help page, previously.  So it
    now gives a warning if called.
  * unix.time() is defunct now; it had been deprecated since R 3.4.0.
  BUG FIXES:
  * Setting digits = 0 in format(), print.default() (and hence
    typically print()) or options() is again invalid.  Its behaviour
    was platform-dependent, and it is unclear what "zero significant
    digits" should mean (PR#18098).
  * Messages from C code in the cairo section of package grDevices
    are now also offered for translation, thanks to Michael Chirico's
    PR#18123.
  * mean(x) with finite x now is finite also without "long.double"
    capability.
  * R CMD Rd2pdf no longer leaves an empty build directory behind
    when it aborts due to an already existing output file.  (Thanks
    to Sebastian Meyer's PR#18141.)
  * density(x, weights = w, na.rm = TRUE) when anyNA(x) is true, now
    removes weights "in parallel" to x, fixing PR#18151, reported by
    Matthias Gondan.  Additionally, it gets a subdensity option.
  * Conversion of \Sexpr[]{&lt;expR&gt;} to LaTeX or HTML no longer
    produces long blocks of empty lines when &lt;expR&gt; itself contains
    several lines all producing empty output.  Thanks to a report and
    patch by Ivan Krylov posted to R-devel.
  * R CMD build no longer fails if a package vignette uses child
    documents and inst/doc exists.  (Thanks to Sebastian Meyer's
    PR#18156.)
  * When an R documentation ('help' source) file man/foo.Rd in a
    package has \donttest{..} examples with a syntax error, it is now
    signalled as ERROR and with correct line numbers relating to the
  * -Ex.R file, thanks to Duncan Murdoch and Sebastian Meyer's
    reports and patch proposals in PR#17501.
  * Improved determination of the correct translation domain in
    non-base packages, addressing the combination of PR#18092 and
    PR#17998 (#c6) with reports and _augmented_ patch #2904 by
    Suharto Anggono.
    Note that "R-base" is no longer the default domain e.g., for
    top-level calls to gettext(); rather translation needs explicit
    domain = * specification in such cases.
  * identical(attrib.as.set=FALSE) now works correctly with data
    frames with default row names (Thanks to Charlie Gao's PR#18179).
  * txtProgressBar() now enforces a non-zero width for argument char,
    without which no progress can be visible.
  * dimnames(table(d)) is more consistent in the case where d is a
    list with a single component, thanks to Thomas Soeiro's report to
    R-devel.
    Further, table(d1, d2) now gives an error when d1 and d2 are data
    frames as suggested by Thomas in PR#18224.
  * Fix for drawing semi-transparent lines and fills on the native
    Windows graphics device (PR#18219 and PR#16694).  Thanks to Nick
    Ray for helpful diagnosis on Bugzilla.
  * The deparser now wraps sub-expressions such as if(A) ..  with
    parentheses when needed; thanks to Duncan Murdoch's PR#18232 and
    Lionel Henry's patches there.
  * remove.packages() no longer tries to uninstall Priority: base
    packages, thanks to a report and suggestions by Colin Fay in
    PR#18227.
  * win.metafile() now has xpinch and ypinch arguments so that the
    user can override Windows' (potentially wrong) guess at device
    dimensions.
  * x[i] and x[[i]] for non-integer i should now behave in all cases
    as always documented: the index used is equivalent to
    as.integer(i) unless that would overflow where trunc(i) is used
    instead; thanks to Suharto Anggono's report and patch proposals
    in PR#17977.
  * asOneSidedFormula() now associates the resulting formula with the
    global environment rather than the evaluation environment created
    for the call.
  * &lt;bibentry&gt;$name now matches the field name case-insensitively,
    consistent with bibentry() creation and the replacement method.
  * cbind() failed to detect some length mismatches with a mixture of
    time-series and non-time-series inputs.
  * The default LaTeX style file Sweave.sty used by the RweaveLatex
    driver no longer loads the obsolete ae package; thanks to a
    report by Thomas Soeiro in PR#18271.  Furthermore, it now skips
    \usepackage[T1]{fontenc} for engines other than pdfTeX (if
    detected) or if the new [nofontenc] option is used.
  * smooth.spline() now stores its logical cv argument more safely,
    fixing a rare bug when printing, and also stores n.
  * smooth.spline(x,y,*) now computes the cv.crit statistic
    correctly, also when is.unsorted(x), fixing PR#18294.
  * The data.frame method of rbind() now warns when binding
    not-wholly-recycling vectors, by analogy to the default method
    (for matrices).
  * setAs() finds the correct class for name to when multiple
    packages define a class with that name. Thanks to Gabor Csardi
    for the report.
  * Fix for detaching a package when two classes of the same name are
    present in method signatures for the same generic. Thanks to
    Gabor Csardi for the report.
  * match.arg("", c("", "a", "B")) gives a better error message, in
    part from PR#17959, thanks to Elin Waring.
  * R CMD Sweave --clean no longer removes pre-existing files or
    subdirectories (PR#18242).
  * The quartz() device no longer splits polylines into subpaths.
    That has caused narrowly-spaced lines with many points to always
    look solid even when dashed line type was used due to dash phase
    restarts.
  * Deparsing constructs such as quote(1 + `!`(2) + 3) works again as
    before R 3.5.0, thanks to the report and patch in PR#18284 by
    Suharto Anggono.
  * as.list(f) for a factor f now keeps names(f), fixing PR#18309.
  * qbeta(.001, .9, .009) and analogous qf() calls now return a
    correct value instead of NaN or wrongly 1, all with a warning;
    thanks to the report by Ludger Goeminne in PR#18302.
  * plot.lm() failed to produce the plot of residuals vs.  factor
    levels (i.e., which=5 when leverages are constant) for models
    with character predictors (PR#17840).
  * interaction.plot(..., xtick = TRUE) misplaced the x-axis line
    (PR#18305).
  * Not strictly fixing a bug, format()ing and print()ing of
    non-finite Date and POSIXt values NaN and +/-Inf no longer show
    as NA but the respective string, e.g., Inf, for consistency with
    numeric vector's behaviour, fulfilling the wish of PR#18308.
  * R CMD check no longer runs test scripts generated from
    corresponding .Rin files twice and now signals an ERROR if
    processing an .Rin script fails.
  * tools::Rd2txt() used for plain-text help pages now renders \hrefs
    (if tools::Rd2txt_options(showURLs = TRUE)) and \urls with
    percent-encoding and standards-compliant delimiting style (angle
    brackets and no URL: prefix).  \email is now rendered with a
    mailto: prefix.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1655985600">- CHANGES IN R 4.2.1:
  NEW FEATURES:
  * New function utils::findCRANmirror() to find out if a CRAN mirror
    has been selected, otherwise fallback to the main site.  This
    behaves in the same way as tools::CRAN_package_db() and is
    intended for packages wishing to access CRAN for purposes other
    than installing packages.
    The need for this was shown by a day when the main CRAN website
    was offline and a dozen or so packages which had its URL
    hardcoded failed their checks.
  INSTALLATION on a UNIX-ALIKE:
  * The libraries searched for by --with-blas (without a value) now
    include BLIS (after OpenBLAS but before ATLAS).  And on macOS,
    the Accelerate framework (after ATLAS).  (This is patterned after
    the AX_BLAS macro from the Autoconf Archive.)
  * The included LAPACK sources have been updated to 3.10.1.
  UTILITIES:
  * The (full path to) the command tidy to be used for HTML
    validation can be set by environment variable R_TIDYCMD.
  * Setting environment variable _R_CHECK_RD_VALIDATE_RD2HTML_ to a
    false value will override R CMD check --as-cran and turn off HTML
    validation.  This provides a way to circumvent a problematic
    tidy.
    The 2006 version that ships with macOS is always skipped.
  C-LEVEL FACILITIES:
  * The undocumented legacy declarations of Sint, Sfloat, SINT_MAX
    and SINT_MIN in header R.h are deprecated.
  BUG FIXES:
  * fisher.test(d) no longer segfaults for "large" d; fixing PR#18336
    by preventing/detecting an integer overflow reliably.
  * tar(., files=*) now produces correctly the warning about invalid
    uid or gid of files, fixing PR#18344, reported by Martin Morgan.
  * tk_choose.files() with multi = FALSE misbehaved on paths
    containing spaces (PR#18334) (regression introduced in R 4.0.0).
  * sort(x, partial = ind, *) now works correctly notably for the
    non-default na.last = FALSE or TRUE, fixing PR#18335 reported by
    James Edwards.
  * Environment variable _R_CHECK_XREFS_REPOSITORIES_ is only used
    for checking .Rd cross-references in R CMD check (as documented)
    and not for other uses looking for a CRAN mirror.
  * The search for a CRAN mirror when checking packages now uses
    getOption("repos") if that specifies a CRAN mirror, even when it
    does not also specify all three Bioconductor repositories (as was
    previously required).
  * The HTML code generated by tools::Rd2HTML() has been improved to
    pass tidy 5.8.0.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1667217600">- CHANGES IN R 4.2.2:
  NEW FEATURES:
  * tools::Rdiff(useDiff = TRUE) checks for the presence of an
    external diff command and switches to useDiff = FALSE if none is
    found.  This allows R CMD Rdiff to always work.
  * On Windows, environment variable R_LIBCURL_SSL_REVOKE_BEST_EFFORT
    can be used to switch to only 'best-effort' SSL certificate
    revocation checks with the default "libcurl" download method.
    This reduces security, but may be needed for downloads to work
    with MITM proxies (PR#18379).
  * (macOS) The run-time check for libraries from XQuartz for X11 and
    Tcl/Tk no longer uses otool from the Apple Developer Tools
    (PR#18400).
  * The LaTeX style for producing the PDF manuals, Rd.sty, now loads
    the standard amsmath, amsfonts and amssymb packages for greater
    coverage of math commands in the Rd \eqn and \deqn macros.  The
    \mathscr LaTeX command is also provided (via the mathrsfs
    package, if available, or the amsfonts bundle otherwise),
    fulfilling the wish of PR#18398.
  * (Windows) The default format of readClipboard() and
    writeClipboard() has been changed to 13 (CF_UNICODETEXT).
  INSTALLATION on a UNIX-ALIKE:
  * The PDF manuals (if built) can be compacted by the new target
    make compact-pdf (at the top level or in directory doc/manual).
  * There is now configure support for LLVM clang 15 on Linux, which
    defaults to position-independent (PIE) executables whereas
    gfortran does not.
  * Many small changes to ease compilation (and suppress warnings)
    with LLVM clang 15.
  BUG FIXES:
  * Rscript -e would fail if stdin were closed (Reported by Henrik
    Bengtsson.)
  * qt(*, log.p=TRUE) in outer tails no longer produces NaN in its
    final steps, thus fixing PR#18360.
  * tools::Rd2latex() now escapes hashes and ampersands when writing
    URLs, fixing LaTeX errors with such URLs in \tabular.
  * When isGeneric(f, fdef=*) is used with mismatching names, the
    warning is better understandable; reported (with fix) in PR#18370
    by Gabe Becker.
  * poly(x, n) now works again (and is now documented) when x is a
    "Date" or "POSIXct" object, or of another class while fulfilling
    mode(x) == "numeric".  This also enables poly(x, *, raw=TRUE) for
    such variables.  Reported by Michael Chirico to R-devel.
  * write.table(), write.csv() and write.csv2() restore their
    numerical precision (internal equivalent of digits = 15) after an
    interrupt (PR#18384).
  * One can now read also byte FF from a clipboard connection
    (PR#18385).
  * source("") and source(character()) now give more helpful error
    messages.
  * R CMD check --as-cran set _R_CHECK_TIMINGS_ too late to have the
    intended effect.
  * as.POSIXlt(x) now also works with very large dates x, fixing
    PR#18401 reported by Hannes M"uhleisen.
  * Files can now be extracted even from very large zip archives
    (PR#18390, thanks to Martin Jakt).
  * Non-finite objects of class "POSIXlt" are now correctly coerced
    to classes "Date" and "POSIXct"; following up on the extension to
    format() them correctly.
  * Added methods for is.finite(), is.infinite() and is.nan() for
    "POSIXlt" date-time objects.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1678881600">- CHANGES IN R 4.2.3:
  C-LEVEL FACILITIES:
  * The definition of DL_FUNC in R_ext/Rdynload.h has been changed to
    be fully C-compliant.  This means that functions loaded _via_ for
    example R_GetCCallable need to be cast to an appropriate type if
    they have any arguments.
  * .Machine has a new element sizeof.time_t to identify old systems
    with a 32-bit type and hence a limited range of date-times (and
    limited support for dates millions of years from present).
  PACKAGE INSTALLATION:
  * (Windows) The default C++ standard had accidentally been left at
    C++11 when it was changed to C++14 on Unix.
  BUG FIXES:
  * As "POSIXlt" objects may be "partially filled" and their list
    components meant to be recycled, length() now is the length of
    the longest component.
  * as.POSIXlt.Date() could underflow for dates in the far past (more
    than half a million years BCE).
  * as.Date.POSIXlt(x) would return "1970-01-01" instead of NA in R
    4.2.2, e.g., for
    x &lt;- as.POSIXlt(c("2019-01-30","2001-1-1"))
    x$mon &lt;- c(0L, NA); as.Date(x)
  * R CMD check failed to apply enabled _R_CHECK_SUGGESTS_ONLY_ to
    examples and vignettes (regression in R 4.2.0).
  * R CMD check did not re-build vignettes in separate processes by
    default (regression in R 4.2.0).
  * Running examples from HTML documentation now restores previous
    knitr settings and options (PR#18420).
  * Quartz: fonts are now located using Core Graphics API instead of
    deprecated ATS which is no longer supported in the macOS 13 SDK
    (PR#18426).  This also addresses an issue where the currently
    used font in the Quartz device context was not correctly
    retained.
  * (Windows) Math symbols in text drawing functions are again
    rendered correctly (PR#18440).  This fixes a regression in R
    4.2.1 caused by a fix in PR#18382 which uncovered an issue in
    GraphApp due to which the symbol charset was not used with TT
    Symbol font face.
  * (Windows) Installing a package with a src/Makefile.{win,ucrt}
    file includes ~/.R/Makevars.win64 in the search for user
    makevars, as documented in "R Installation and Administration"
    and done for packages with a src/Makevars.{win,ucrt} file.
  * format(&lt;POSIXlt_w/_unbalanced_sec&gt;, "....%OS&lt;n&gt;") with n &gt; 0 no
    longer accidentally uses the unbalanced seconds, thanks to
    Suharto Anggono's report (including patch) in PR#18448.
  * solve.default(a, b) works around issues with some versions of
    LAPACK when a contains NA or NaN values.
  * When UseMethod() cannot dispatch, it no longer segfaults
    producing the error message in case of a long class(), thanks to
    Joris Vankerschaver's report (including patch) in PR#18447.
  * When example(foo, ..) produces graphics on an interactive device
    it needs to open itself, it now leaves devAskNewPage() unchanged
    even when it was FALSE, thus fixing a 14 years old '&lt;FIXME&gt;'.
  * packageDescription() again catches errors from encoding
    conversions. This also fixes broken packageVersion() in C locale
    on systems where iconv does not support transliteration.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1681128000">- add patch to build with libcurl &gt;= 8</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1682078400">- CHANGES IN R 4.3.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Calling &amp;&amp; or || with LHS or (if evaluated) RHS of length greater
    than one is now always an error, with a report of the form
    'length = 4' in coercion to 'logical(1)'
    Environment variable _R_CHECK_LENGTH_1_LOGIC2_ no longer has any
    effect.
  NEW FEATURES:
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.10.1.  (This caused some platform-dependent
    changes to package check output.)  And then to the sources from
    LAPACK version 3.11.0 (with changes only to double complex
    subroutines).
  * The included LAPACK sources have been updated to include the four
    Fortran 90 routines rather than their Fortran 77 predecessors.
    This may give some different signs in SVDs or
    eigendecompositions..  (This completes the transition to LAPACK
    3.10.x begun in R 4.2.0.)
  * The LAPACK sources have been updated to version 3.11.0.  (No new
    subroutines have been added, so this almost entirely bug fixes:
    Those fixes do affect some computations with NaNs, including R's
    NA.)
  * The parser now signals _classed_ errors, notably in case of the
    pipe operator |&gt;.  The error object and message now give line and
    column numbers, mostly as proposed and provided by Duncan Murdoch
    in PR#18328.
  * toeplitz() is now generalized for asymmetric cases, with a
    toeplitz2() variant.
  * xy.coords() and xyz.coords() and consequently, e.g., plot(x,y,
    log = "y") now signal a _classed_ warning about negative values
    of y (where log(.) is NA).  Such a warning can be specifically
    suppressed or caught otherwise.
  * Regular expression functions now check more thoroughly whether
    their inputs are valid strings (in their encoding, e.g. in
    UTF-8).
  * The performance of grep(), sub(), gsub() and strsplit() has been
    improved, particularly with perl = TRUE and fixed = TRUE.  Use of
    useBytes = TRUE for performance reasons should no longer be
    needed and is discouraged: it may lead to incorrect results.
  * apropos() gains an argument dot_internals which is used by the
    completion (help(rcompgen)) engine to also see base internals
    such as .POSIXct().
  * Support in tools::Rdiff() for comparing uncompressed PDF files is
    further reduced - see its help page.
  * qqplot(x, y, ...) gains conf.level and conf.args arguments for
    computing and plotting a confidence band for the treatment
    function transforming the distribution of x into the distribution
    of y (Switzer, 1976, _Biometrika_). Contributed by Torsten
    Hothorn.
  * Performance of package_dependencies() has been improved for cases
    when the number of dependencies is large.
  * Strings newly created by gsub(), sub() and strsplit(), when any
    of the inputs is marked as "bytes", are also marked as "bytes".
    This reduces the risk of creating invalid strings and accidental
    substitution of bytes deemed invalid.
  * Support for readLines(encoding = "bytes") has been added to allow
    processing special text files byte-by-byte, without creating
    invalid strings.
  * iconv(from = "") now takes into account any declared encoding of
    the input elements and uses it in preference to the native
    encoding.  This reduces the risk of accidental creation of
    invalid strings, particularly when different elements of the
    input have different encoding (including "bytes").
  * Package repositories in getOption("repos") are now initialized
    from the repositories file when utils is loaded (if not already
    set, e.g., in .Rprofile).  (From a report and patch proposal by
    Gabriel Becker in PR#18405.)
  * compactPDF() gets a verbose option.
  * type.convert() and hence read.table() get new option tryLogical =
    TRUE with back compatible default.  When set to false, converts
    "F" or "T" columns to character.
  * Added new unit prefixes "R" and "Q" for abbreviating
    (unrealistically large) sizes beyond 10^{27} in standard = "SI",
    thanks to Henrik Bengtsson's PR#18435.
  * as.data.frame()'s default method now also works fine with atomic
    objects inheriting from classes such as "roman", "octmode" and
    "hexmode", such fulfilling the wish of PR#18421, by Benjamin
    Feakins.
  * The as.data.frame.vector() utility now errors for wrong-length
    row.names.  It warned for almost six years, with "Will be an
    error!".
  * sessionInfo() now also contains La_version() and reports codepage
    and timezone when relevant, in both print() and toLatex() methods
    which also get new option tzone for displaying timezone
    information when locale = FALSE.
  * New function R_compiled_by() reports the C and Fortran compilers
    used to build R, if known.
  * predict(&lt;lm&gt;, newdata = *) no longer unnecessarily creates an
    offset of all 0s.
  * solve() for complex inputs now uses argument tol and by default
    checks for 'computational singularity' (as it long has done for
    numeric inputs).
  * predict(&lt;rank-deficient lm&gt;, newdata=*) now obeys a new argument
    rankdeficient, with new default "warnif", warning only if there
    are non-estimable cases in newdata.  Other options include
    rankdeficient = "NA", predicting NA for non-estimable newdata
    cases.  This addresses PR#15072 by Russ Lenth and is based on his
    original proposal and discussions in PR#16158 also by David Firth
    and Elin Waring.  Still somewhat experimental.
  * Rgui console implementation now works better with the NVDA screen
    reader when the full blinking cursor is selected.  The underlying
    improvements in cursor handling may help also other screen
    readers on Windows.
  * The drop-field control in GraphApp can now be left with the TAB
    key and all controls can be navigated in the reverse order using
    the Shift+TAB key, improving accessibility of the Rgui
    configuration editor.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now fully accurate
    (instead of to "only" minimally five digits).
  * demo(error.catching) now also shows off withWarnings() and
    tryCatchWEMs().
  * As an experimental feature the placeholder _ can now also be used
    in the rhs of a forward pipe |&gt; expression as the first argument
    in an extraction call, such as _$coef. More generally, it can be
    used as the head of a chain of extractions, such as _$coef[[2]].
  * Spaces in the environment variable used to choose the R session's
    temporary directory (TMPDIR, TMP and TEMP are tried in turn) are
    now fatal.  (On Windows the 'short path' version of the path is
    tried and used if that does not contain a space.)
  * all.equal.numeric() gets a new optional switch giveErr to return
    the numeric error as attribute.  Relatedly,
    stopifnot(all.equal&lt;some&gt;(a, b, ..)) is as "smart" now, as
    stopifnot(all.equal(....)) has been already, thus allowing
    customized all.equal&lt;Some&gt;() wrappers.
  * R on Windows is now able to work with path names longer than 260
    characters when these are enabled in the system (requires at
    least Windows 10 version 1607).  Packages should be updated to
    work with long paths as well, instead of assuming PATH_MAX to be
    the maximum length.  Custom front-ends and applications embedding
    R need to update their manifests if they wish to allow this
    feature.  See
    &lt;https://blog.r-project.org/2023/03/07/path-length-limit-on-windows&gt;
    for more information.
  * 'Object not found' and 'Missing argument' errors now give a more
    accurate error context. Patch provided by Lionel Henry in
    PR#18241.
  * The @ operator is now an S3 generic. Based on contributions by
    Tomasz Kalinowski in PR#18482.
  * New generic chooseOpsMethod() provides a mechanism for objects to
    resolve cases where two suitable methods are found for an Ops
    Group Generic. This supports experimenting with alternative
    object systems. Based on contributions by Tomasz Kalinowski in
    PR#18484.
  * inherits(x, what) now accepts values other than a simple
    character vector for argument what. A new generic, nameOfClass(),
    is called to resolve the class name from what. This supports
    experimenting with alternative object systems. Based on
    contributions by Tomasz Kalinowski in PR#18485.
  * Detection of BLAS/LAPACK in use (sessionInfo()) with FlexiBLAS
    now reports the current backend.
  * The "data.frame" method for subset() now warns about extraneous
    arguments, typically catching the use of = instead of == in the
    subset expression.
  * Calling a:b when numeric a or b is longer than one may now be
    made into an error by setting environment variable
    _R_CHECK_LENGTH_COLON_ to a true value, along the proposal in
    PR#18419 by Henrik Bengtsson.
  * density(x, weights = *) now warns if automatic bandwidth
    selection happens without using weights; new optional warnWbw may
    suppress the warning.  Prompted by Christoph Dalitz' PR#18490 and
    its discussants.
  * rm(list = *) is faster and more readable thanks to Kevin Ushey's
    PR#18492.
  * The plot.lm() function no longer produces a normal Q-Q plot for
    GLMs. Instead it plots a half-normal Q-Q plot of the absolute
    value of the standardized deviance residuals.
  * The print() method for class "summary.glm" no longer shows
    summary statistics for the deviance residuals by default.  Its
    optional argument show.residuals can be used to show them if
    required.
  * The tapply() function now accepts a data frame as its X argument,
    and allows INDEX to be a formula in that case. by.data.frame()
    similarly allows INDICES to be a formula.
  * The performance of df[j] &lt;- value (including for missing j) and
    write.table(df) has been improved for data frames df with a large
    number of columns.  (Thanks to Gabriel Becker's PR#18500,
    PR#18503 and discussants, prompted by a report from Toby Dylan
    Hocking on the R-devel mailing list.)
  * The matrix multiply operator %*% is now an S3 generic, belonging
    to new group generic matrixOps.  From Tomasz Kalinowski's
    contribution in PR#18483.
  * New function array2DF() to convert arrays to data frames,
    particularly useful for the list arrays created by tapply().
  DATES and TIMES:
  * On platforms where (non-UTC) datetimes before 1902 (or before
    1900 as with system functions on recent macOS) are guessed by
    extrapolating time zones from 1902-2037, there is a warning at
    the first use of extrapolation in a session.  (As all time zones
    post 2037 are extrapolation, we do not warn on those.)
  * (Platforms using --with-internal-tzone, including Windows and by
    default macOS). How years are printed in dates or date-times can
    be controlled by environment variable R_PAD_YEARS_BY_ZERO.  The
    default remains to pad to 4 digits by zeroes, but setting value
    no gives no padding (as used by default by glibc).
  * strftime() tries harder to determine the offset for the "%z"
    format, and succeeds on the mainstream R platforms.
  * strftime() has a limit of 2048 bytes on the string produced -
    attempting to exceed this is an error.  (Previously it silently
    truncated at 255 bytes.)
  * sessionInfo() records (and by default prints) the system time
    zone as part of the locale information.  Also, the source
    (system/internal) of the date-time conversion and printing
    functions.
  * Objects of class "POSIXlt" created in this version of R always
    have 11 components: component zone is always set, and component
    gmtoff is set for times in UTC and usually set on the (almost
    all) platforms which have C-level support, otherwise is NA.
  * There are comprehensive validity checks on the structure of
    objects of class "POSIXlt" when converting (including formatting
    and printing).  (This avoids mis-conversions of hand-crafted
    objects.)
  * There is some support for using the native date-time routines on
    macOS: this is only viable on recent versions (e.g. 12.6 and 13)
    and does get wrong some historical changes (before 1900, during
    WWII).  Use of --with-internal-tzone remains the default.
  * as.POSIXct(&lt;numeric&gt;) and as.POSIXlt(.) (without specifying
    origin) now work.  So does as.Date(&lt;numeric&gt;).
  * as.Date.POSIXct(., tz) now treats several tz values, notably
    "GMT" as equivalent to "UTC", proposed and improved by Michael
    Chirico and Joshua Ulrich in PR#17674.
  * Experimental balancePOSIXlt() utility allows using "ragged" and
    or out-of-range "POSIXlt" objects more correctly, e.g., in
    subsetting and subassignments.  Such objects are now documented.
    More experimentally, a "POSIXlt" object may have an attribute
    "balanced" indicating if it is known to be filled or fully
    balanced.
  * Functions axis.Date() and axis.POSIXct() are rewritten to gain
    better default tick locations and better default formats by using
    prettyDate(). Thanks to Swetlana Herbrandt.
  * The mapping of Windows' names for time zones to IANA's 'Olson'
    names has been updated.  When ICU is available (it is by
    default), it is used to get a mapping for the current region set
    in Windows.  This can be overridden by setting environment
    variable TZ to the desired Olson name - see OlsonNames() for
    those currently available.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 16
    and so packages that provide graphics devices should be
    reinstalled.
  * The grDevices and grid packages have new functions for rendering
    typeset glyphs, primarily: grDevices::glyphInfo() and
    grid::grid.glyph().
    Rendering of typeset glyphs is only supported so far on the
    Cairo-based graphics devices and on the pdf() and quartz()
    devices.
  * The defined behaviour for "clear" and "source" compositing
    operators (via grid::grid.group()) has been changed (to align
    better with simple interpretation of original Porter-Duff
    definitions).
  * Support for gradients, patterns, clipping paths, masks, groups,
    compositing operators, and affine transformations has been added
    to the quartz() device.
  INSTALLATION on a UNIX-ALIKE:
  * A system installation of generic LAPACK 3.10.0 or later will be
    preferred to the version in the R sources.
    configure option --with-lapack=no (equivalently --without-lapack)
    forces compilation of the internal LAPACK sources.
    If --with-lapack is not specified, a system liblapack is looked
    for and used if it reports version 3.10.0 or later and does not
    contain BLAS routines.
    Packages using LAPACK will need to be reinstalled if this changes
    to using an external library.
  * On aarch64 Linux platforms using GCC, configure now defaults to
  - fPIC (instead of -fpic), as desired in PR#18326.
  * configure now checks conversion of datetimes between POSIXlt and
    POSIXct around year 2020.  Failure (which has been seen on
    platforms missing tzdata) is fatal.
  * If configure option --with-valgrind-instrumentation is given
    value 1 or 2, option --with-system-valgrind-headers is now the
    default and ignored (with a warning).  It is highly recommended
    that the system headers are installed alongside valgrind: they
    are part of its packaging on some Linux distributions and
    packaged separately (e.g. in the valgrind-devel RPM) on others.
    configure will give a warning if they are not found.
    The system headers will be required in a future release of R to
    build with valgrind instrumentation.
  * libcurl 8.x is now accepted by configure: despite a change in
    major version number it changes neither API nor ABI.
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools43, an update of the Rtools42 toolchain.  It is
    based on gcc 12 and newer versions of MinGW-W64, binutils and
    libraries.  At this time R-devel can still be built using
    Rtools42 without changes, but when R-devel is installed via the
    installer, it will by default look for Rtools43.
  * Old make targets rsync-extsoft and 32-bit ones that are no longer
    needed have been removed.
  * Default builds (including for packages) no longer select C99.
    Thus the C standard used is the default for the compiler, which
    for the toolchain in Rtools43 is C17.  (This is consistent with
    Unix builds.)
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++17 where
    available (which it is on all currently checked platforms): if
    not C++14 or C++11 is used if available otherwise C++ is not
    supported.
  * USE_FC_LEN_T is the default: this uses the correct
    (compiler-dependent) prototypes for Fortran BLAS/LAPACK routines
    called from C/C++, and requires adjustment of many such calls -
    see 'Writing R Extensions' SS6.6.1.
  * There is initial support for C++23 as several compilers are now
    supporting -std=c++23 or -std=c++2b or similar.  As for C++20,
    there no additional configure checks for C++23 features beyond a
    check that the compiler reports a __cplusplus value greater than
    that in the C++20 standard.  C++ feature tests should be used.
  * There is support for a package to indicate the version of the C
    standard which should be used to compile it, and for the
    installing user to specify this.  In most cases R defaults to the
    C compiler's default standard which is C17 (a `bug-fix' of C11) -
    earlier versions of R or compilers may have defaulted to C99.
    Current options are:
    USE_C17 Use a standard that is at most C17.  The intention is to
    allow legacy packages to still be installed when later C
    standards become the default, including packages using new
    keywords as identifiers or with K&amp;R-style function
    declarations.  This will use C17 if available, falling back
    to C11.
    USE_C90 Use the C90 (aka C89) standard.  (As that standard did
    not require compilers to identify that version, all we can
    verify is that the compiler does not claim to be using a
    later standard.  It may accept C99 features - for example
    clang accepts // to make comments.)
    USE_C99 Use the C99 standard. This should be rarely needed - it
    avoids the few new features of C11/C17 which can be useful if
    a package assumes them if C17 is specified and they are not
    implemented.
    USE_C23 Use C23 (or in future, later).  Compiler/library support
    for C23 is still being implemented, but LLVM clang from
    15.0.0 and the upcoming GCC 13 have quite extensive support.
    These can be specified as part of the SystemRequirements field in
    the package's DESCRIPTION file or _via_ options --use-C17 and so
    on of R CMD INSTALL and R CMD SHLIB.
    For further details see "Writing R Extensions" SS1.2.5.
  * (Windows) A src/Makefile.ucrt or src/Makefile.win file is now
    included after R_HOME/etcR_ARCH/Makeconf and so no longer needs
    to include that file itself.  Installation of a package with such
    a file now uses a site Makevars file in the same way as a package
    with a src/Makevars.win file would.
  * configure is now passed crucial variables such as CC and CFLAGS
    in its environment, as many packages were not setting them (as
    documented in 'Writing R Extensions' SS1.2).
    This has most effect where configure is used to compile parts of
    the package - most often by cmake or libtool which obfuscate the
    actual compile commands used.
    Also used for configure.win and configure.ucrt on Windows.
  FORTRAN FLAGS:
  * The flag -fno-optimize-sibling-calls is no longer forced for
    gfortran 7 and later.  It should no longer be needed now using
    'hidden' character-length arguments when calling BLAS/LAPACK
    routines from C/C++ is the default even for packages.  (Unless
    perhaps packages call Fortran code from C/C++ without using R's
    headers and without allowing for these arguments.)
  C-LEVEL FACILITIES:
  * The deprecated S-compatibility macros DOUBLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * The deprecated legacy typedefs of Sint and Sfloat in header R.h
    are no longer defined, and that header no longer includes header
    limits.h from C nor climits from C++.
  * New macro CAD5R() is provided in Rinternals.h and used in a few
    places in the R sources.
  * ALTREP now supports VECSXP vectors. Contributed by Gabor Csardi
    in PR#17620.
  * The Rcomplex definition (in header R_ext/Complex.h) has been
    extended to prevent possible mis-compilation when interfacing
    with Fortran (PR#18430).  The new definition causes compiler
    warnings with static initializers such as {1, 2}, which can be
    changed to {.r=1, .i=2}.
    Using the new definition from C++ depends on compiler extensions
    supporting C features that have not been incorporated into the
    C++ standards but are available in g++ and clang++: this may
    result in C++ compiler warnings but these have been worked around
    for recent versions of common compilers (GCC, Apple/LLVM clang,
    Intel).
    It is intended to change the inclusion of header R_ext/Complex.h
    by other R headers, so C/C++ code files which make use of
    Rcomplex should include that header explicitly.
  UTILITIES:
  * R CMD check does more checking of package .Rd files, warning
    about invalid email addresses and (some) invalid URIs and noting
    empty \item labels in description lists.
  * R CMD check now also reports problems when reading package news
    in md (file NEWS.md) and (optionally) plain text (file NEWS)
    formats.
  * _R_CHECK_TIMINGS_ defaults to a value from the environment even
    for R CMD check --as-cran; this allows for exceptionally fast or
    slow platforms.
    It now applies to checking PDF and HTML versions of the manuals,
    and 'checking CRAN incoming feasibility'.
  * R CMD check can optionally (but included in --as-cran) check
    whether HTML math rendering _via_ KaTeX works for the package .Rd
    files.
  * Non-interactive debugger invocations can be trapped by setting
    the environment variable _R_CHECK_BROWSER_NONINTERACTIVE_ to a
    true value.  This is enabled by R CMD check --as-cran to detect
    the use of leftover browser() statements in the package.
  * The use of sprintf and vsprintf from C/C++ has been deprecated in
    macOS 13 and is a known security risk.  R CMD check now reports
    (on all platforms) if their use is found in compiled code:
    replace by snprintf or vsnprintf respectively. [*NB:* whether
    such calls get compiled into the package is platform-dependent.]
  * Where recorded at installation, R CMD check reports the C and
    Fortran compilers used to build R.
    It reports the OS in use (if known, as given by osVersion) as
    well as that R was built for.
    It notes if a C++ standard was specified which is older than the
    current default: many packages have used C++11 to mean 'not
    C++98' - as C++11 is the minimum supported since R 4.0.0, that
    specification can probably be removed.
  * R CMD INSTALL reports the compilers (and on macOS, the SDK) used,
    and this is copied to the output of R CMD check.
    Where a C++ standard is specified, it is reported.
  * R CMD check's 'checking compilation flags in Makevars' has been
    relaxed to accept the use of flags such as -std=f2008 in
    PKG_FFLAGS.
  * tools::buildVignettes() has a new argument skip, which is used by
    R CMD check to skip (and note) vignettes with unavailable
    \VignetteDepends (PR#18318).
  * New generic .AtNames() added to enable class-specific completions
    after @. The formerly internal function findMatches() is now
    exported, mainly for use in methods for .DollarNames() and
    .AtNames().
  DEPRECATED AND DEFUNCT:
  * default.stringsAsFactors() is defunct.
  * Calling as.data.frame.&lt;class&gt;() directly (for 12 atomic classes)
    is going to be formally deprecated, currently activated by
    setting the environment variable
    _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ to non-empty, which also
    happens in R CMD check --as-cran.
  BUG FIXES:
  * Hashed environments with sizes less than 5 can now grow.
    (Reported to R-devel by Duncan Garmonsway.)
  * as.character(&lt;Rd&gt;, deparse = TRUE) failed to re-escape curly
    braces in LaTeX-like text.  (Reported by Hadley Wickham in
    PR#18324.)
  * library() now passes its lib.loc argument when requiring Depends
    packages; reported (with fix) in PR#18331 by Mikael Jagan.
  * R CMD Stangle: improved message about 'Output' files.
  * head(x, n) and tail(x, n) now signal an error if n is not
    numeric, instead of incidentally "working" sometimes returning
    all of x.  Reported and discussed by Colin Fay, in PR#18357.
  * The "lm" method for summary() now gives the correct F-statistic
    when the model contains an offset.  Reported in PR#18008.
  * C() and `contrasts&lt;-`() now preserve factor level names when
    given a function object (as opposed a function name which did
    preserve names). Reported in PR#17616.
  * c(a = 1, 2)[[]] no longer matches 2 but rather signals a
    _classed_ error.  Reported and analysed by Davis Vaughan in
    PR#18367, a duplicate of PR#18004, by Jan Meis et al.  For
    consistency, NULL[[]] is also erroneous now.  x[[]] &lt;- v gives an
    error of the same class "MissingSubscriptError".
  * The relist() function of utils now supports NULL elements in the
    skeleton (PR#15854).
  * ordered(levels = *) (missing x) now works analogously to factor(,
    ordered=TRUE); reported (with fix) by Achim Zeileis in PR#18389.
  * User-defined Rd macro definitions can now span multiple lines,
    thanks to a patch from Duncan Murdoch. Previously, the Rd parser
    silently ignored everything after the first line.
  * Plain-text help (tools::Rd2txt()) now preserves an initial blank
    line for text following description list items.
  * tools::Rd2HTML() and tools::Rd2latex() no longer split \arguments
    and \value lists at Rd comments.
  * tools::Rd2latex() now correctly handles optional text outside
    \items of argument lists as well as bracketed text at the
    beginning of sections, e.g., \value{[NULL]}.
  * as.character(&lt;POSIXt&gt;) now behaves more in line with the methods
    for atomic vectors such as numbers, and is no longer influenced
    by options().  Ditto for as.character(&lt;Date&gt;).  The
    as.character() method gets arguments digits and OutDec with
    defaults _not_ depending on options().  Use of as.character(*,
    format = .) now warns.
  * Similarly, the as.character.hexmode() and *.octmode() methods
    also behave as good citizen methods and back compatibility option
    keepStr = TRUE.
  * The as.POSIXlt(&lt;POSIXlt&gt;) and as.POSIXct(&lt;POSIXct&gt;) default
    methods now do obey their tz argument, also in this case.
  * as.POSIXlt(&lt;Date&gt;) now does apply a tz (time zone) argument, as
    does as.POSIXct(); partly suggested by Roland Fuss on the R-devel
    mailing list.
  * as.Date.POSIXlt(x) now also works when the list components are of
    unequal length, aka "partially filled" or "ragged".
  * expand.model.frame() looked up variables in the wrong environment
    when applied to models fitted without data.  Reported in
    PR#18414.
  * time() now (also) uses the ts.eps = getOption("ts.eps") argument
    and thus by default rounds values very close to the start (or
    end) of a year.  Based on a proposal by Andre"i V. Kostyrka on
    R-help.
  * Printing of a factanal() result with just one factor and sort =
    TRUE now works regularly, fixing PR#17863 by Timothy Bates,
    thanks to the 'R Contributors' working group.
  * Printing 0-length objects of class "factor", "roman", "hexmode",
    "octmode", "person", "bibentry", or "citation" now prints
    something better, one of which fixes PR#18422, reported by
    Benjamin Feakins.
  * Sys.timezone() queries timedatectl only if systemd is loaded;
    addressing a report by Jan Gorecki in PR#17421.
  * The formula method of cor.test() had scoping problems when
    environment(formula) was not the calling environment; reported
    with a patch proposal by Mao Kobayashi in PR#18439.
  * attach() of an environment with active bindings now preserves the
    active bindings.  Reported by Kevin Ushey in PR#18425.
  * BLAS detection now works also with system-provided libraries not
    available as regular files.  This fixes detection of the
    Accelerate framework on macOS since Big Sur.  Reported by David
    Novgorodsky.
  * download.file() gives a helpful error message in case of an
    invalid download.file.method option, thanks to Colin Fay's report
    in PR#18455.
  * Sporadic crashes of Rterm when using completion have been fixed.
  * Rprof() is now more reliable.  A livelock in thread
    initialization with too short sampling interval has been fixed on
    macOS.  A deadlock in using the C runtime has been fixed on
    Windows.  A potential deadlock has been prevented on Unix.
  * Cursor placement in Rgui now works even after a fixed-width font
    is selected.
  * Mandatory options (options()) are now set on startup so that
    saving and restoring them always works (PR#18372).
  * Package installation, R CMD INSTALL or install.packages(*), now
    parses each of the &lt;pkg&gt;/R/*.R files individually instead of
    first concatenating and then parse()ing the large resulting file.
    This allows parser or syntax errors to be diagnosed with correct
    file names and line numbers, thanks to Simon Dedman's report and
    Bill Dunlap's patch in PR#17859.
    This _does_ require syntactically self contained R source files
    now, fixing another inadvertent bug.
  * predict.lm(&lt;model with offset&gt;) now finds the offset in the
    correct environment, thanks to Andr'e Gillibert's report and patch
    in PR#18456.
  * getInitial(&lt;formula&gt;) now finds the selfStart model in the
    correct environment.  (Reported by Ivan Krylov in PR#18368.)
  * Fix for possible segfault when using recently-added graphics
    features, such as gradients, clipping paths, masks, and groups
    with pdf(file=NULL).
  * class(m) &lt;- class(m) no longer changes a matrix m by adding a
    class _attribute_.
  * packageDate(pkg) now only warns once if there is no pkg.
  * When ts() creates a multivariate time series, "mts", it also
    inherits from "array" now, and is.mts() is documented _and_
    stricter.
  * Rd2txt() now preserves line breaks of \verb Rd content and from
    duplicated \cr.  The former also fixes the rendering of verbatim
    output from Rd \Sexpr in plain-text help.
  * uniroot(f, interval) should no longer wrongly converge _outside_
    the interval in some cases where abs(f(x)) == Inf for an x at the
    interval boundary, thanks to posts by Ben Bolker and Serguei
    Sokol on R-devel.
  * Vectorized alpha handling in palette functions such as in gray(),
    rainbow(), or hcl.colors() works correctly now, thanks to Achim
    Zeileis' report and patch in PR#18476.
  * Formatting and print()ing of bibentry objects has dropped the
    deprecated citation.bibtex.max argument, such that the bibtex
    argument's default for print.bibentry() depends directly on the
    citation.bibtex.max option, whereas in format.bibentry() the
    option no longer applies.
  * Attempting to use a character string naming a foreign function
    entry point in a foreign function call in a package will now
    signal an error if the packages has called R_forceSymbols to
    specify that symbols must be used.
  * An error in table() could permanently set options(warn=2)
    promoting all subsequent warnings to errors.
  * The sigma() function gave misleading results for binary GLMs.  A
    new method for objects of class "glm" returns the square root of
    the estimate of the dispersion parameter using the same
    calculation as summary.glm().
  * bs() and ns() in the (typical) case of automatic knot
    construction, when some of the supposedly inner knots coincide
    with boundary knots, now moves them inside (with a warning),
    building on PR#18442 by Ben Bolker.
  * R CMD on Windows now skips the site profile with --no-site-file
    and --vanilla even when R_PROFILE is set (PR#18512, from Kevin
    Ushey).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1686916800">- CHANGES IN R 4.3.1:
  C-LEVEL FACILITIES:
  * The C-level API version of R's integrate(), Rdqags() in Applic.h,
    now returns the correct number of integrand evaluations neval,
    fixing PR#18515 reported and diagnosed by Stephen Wade.
  * The C prototypes for LAPACK calls dspgv and dtptrs in
    R_exts/Lapack.h had one too many and one too few character length
    arguments - but this has not caused any known issues. To get the
    corrected prototypes, include
    [#]include &lt;Rconfig.h&gt; // for PR18534fixed
    [#]ifdef PR18534fixed
    [#] define usePR18534fix 1
    [#]endif
    [#]include &lt;R_exts/Lapack.h&gt;
    in your C/C++ code (PR#18534).
  INSTALLATION:
  * Many of the checks of esoteric Internet operations and those
    using unreliable external sites have been moved to a new target
    that is not run by default and primarily intended for the core
    developers.  To run them use
    cd tests; make test-Internet-dev
  BUG FIXES:
  * .S3methods(), typically called from methods(), again marks
    methods from package base as visible.
    Also, the visibility of non-base methods is again determined by
    the method's presence in search().
  * tools::Rdiff() is now more robust against invalid strings, fixing
    installation tests on Windows without Rtools installed
    (PR#18530).
  * Fix (new) bug in hcl.colors(2, *), by Achim Zeileis (PR#18523).
  * head(., &lt;illegal&gt;) and tail(..) now produce more useful "Error in
    ...." error messages, fixing PR#18362.
  * Package code syntax on Windows is checked in UTF-8 when UTF-8 is
    the native encoding.
  * na.contiguous(x) now also returns the first run, when it is at
    the beginning and there is a later one of the same length;
    reported to R-devel, including a fix, by Georgi Boshnakov.
    Further, by default, it modifies only an existing attr(*,"tsp")
    but otherwise no longer sets one.
  * chol(&lt;not pos.def&gt;, pivot = &lt;T|F&gt;) now gives a correct error or
    warning message (depending on pivot), thanks to Mikael Jagan's
    (PR#18541).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1699012800">- CHANGES IN R 4.3.2:
  NEW FEATURES:
  * The default initialization of the "repos" option from the
    repositories file at startup can be skipped by setting
    environment variable R_REPOSITORIES to NULL such that
    getOption("repos") is empty if not set elsewhere.
  * qr.X() is now an implicit S4 generic in methods.
  * iconv(to = "ASCII//TRANSLIT") is emulated using substitution on
    platforms which do not support it (notably Alpine Linux).  This
    should give a human-readable conversion in ASCII on all platforms
    (rather than NA_character_).
  * trans3d() gains options continuous and verbose addressing the
    problem of possible "wrap around" when projecting too long
    curves, as reported by Achim Zeileis in PR#18537.
  * tools::showNonASCII() has been rewritten to work better on macOS
    14 (which has a changed implementation of iconv()).
  * tiff(type = "quartz") (the default on macOS) now warns if
    compression is specified: it continues to be ignored.
  INSTALLATION on a UNIX-ALIKE:
  * There is some support for building with Intel's LLVM-based
    compilers on x86_64 Linux, such as (C) icx, (C++) ipcx and
    (Fortran) ifx from oneAPI 2023.x.y.
  * There is support for using LLVM's flang-new as the Fortran
    compiler from LLVM 16.0.x (preferably 17.0.0 or later).
  UTILITIES:
  * R CMD check reports the use of the Fortran 90 random number
    generator RANDOM_NUMBER() and the subroutines to initialize it.
    'Writing R Extensions' has example code to use R's RNGs from
    Fortran.
  BUG FIXES:
  * substr(x, n, L) &lt;- cc now works (more) correctly for multibyte
    UTF-8 strings x when L &gt; nchar(x), thanks to a report and patch
    by 'Architect 95'.
  * contrib.url(character()) now returns 0-length character() as
    documented, which also avoids spurious warnings from
    available.packages() et al. in the edge case of an empty vector
    of repository URLs.
  * readChar(., 4e8) no longer fails, thanks to Kodi Arfer's report
    (PR#18557).
  * lapply(&lt;list&gt;, as.data.frame) no longer warns falsely for some
    base vector components.
  * Communication between parent and child processes in the multicore
    part of parallel could fail on platforms that do not support an
    arbitrarily large payload in system functions read()/write() on
    pipes (seen on macOS where a restriction to INT_MAX bytes is
    documented, without doing a partial read unlike Linux). The
    payload is now split into 1Gb chunks to avoid that problem.
    (PR#18571)
  * qqplot(x,y, conf.level=.) gives better confidence bounds when
    length(x) != length(y), thanks to Alexander Ploner's report and
    patch proposal (PR#18557).
  * norm(&lt;0-length&gt;, "2") now gives zero instead of an error, as all
    the other norm types, thanks to Mikael Jagan's PR#18542.
  * Build-stage Rd macros \packageAuthor and \packageMaintainer now
    process Authors@R, fixing NA results when the package DESCRIPTION
    omits Author and Maintainer fields.
  * Formatting and printing complex numbers could give things like
    0.1683-0i because of rounding error: -0i is now replaced by +0i.
  * postscript() refused to accept a title comment containing the
    letter "W" (PR#18599).
  * isoreg(c(1,Inf)) signals an error instead of segfaulting, fixing
    PR#18603.
  * tiff(type = "Xlib") was only outputting the last page of
    multi-page plots.
  * tools::latexToUtf8() again knows about \~{n} and other letters
    with tilde, fixing a regression in R 4.3.0, and about \^{i} as an
    alternative to \^{\i} (similarly with other accents).
    Furthermore, LaTeX codes for accented I letters are now correctly
    converted, also fixing related mistakes in
    tools::encoded_text_to_latex().
  * tar(*, tar = "internal") no longer creates out-of-spec tar files
    in the very rare case of user or group names longer than 32
    bytes, fixing PR#17871 with thanks to Ivan Krylov.
  * When using the "internal" timezone datetime code, adding a
    fraction of a second no longer adds one second, fixing PR#16856
    from a patch by Ivan Krylov.
  * tools::checkRd() no longer produces spurious notes about
    "unnecessary braces" from multi-line Rd results of \Sexpr macros.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1709208000">- CHANGES IN R 4.3.3:
  NEW FEATURES:
  * iconv() now fixes up variant encoding names such as "utf8"
    case-insensitively.
  DEPRECATED AND DEFUNCT:
  * The legacy encoding = "MacRoman" is deprecated in pdf() and
    postscript(): support was incomplete in earlier versions of R.
  BUG FIXES:
  * Arguments are now properly forwarded to methods on S4 generics
    with ... in the middle of their formal arguments. This was broken
    for the case when a method introduced an argument but did not
    include ... in its own formals. Thanks to Herv'e Pag`es for the
    report PR#18538.
  * Some invalid file arguments to pictex(), postscript() and xfig()
    opened a file called NA rather than throw an error.  These
    included postscript(NULL) (which some people expected to work
    like pdf(NULL)).
  * Passing filename = NA to svg(), cairo_pdf(), cairo_ps() or the
    Cairo-based bitmap devices opened a file called NA: it now throws
    an error.
  * quartz(file = NA) opened a file called NA, including when used as
    a Quartz-based bitmap device.  It now gives an error.
  * rank(&lt;long vector&gt;) now works, fixing PR#18617, thanks to Ilia
    Kats.
  * seq.int() did not adequately check its length.out argument.
  * match(&lt;POSIXct&gt;, .) is correct again for differing time zones,
    ditto for "POSIXlt", fixing PR#18618 reported by Bastian Klein.
  * drop.terms(*, dropx = &lt;0-length&gt;) now works, fixing PR#18563 as
    proposed by Mikael Jagan.
  * drop.terms(*) keeps + offset(.) terms when it should, PR#18565,
    and drop.terms() no longer makes up a response, PR#18566, fixing
    both bugs thanks to Mikael Jagan.
  * getS3method("t", "test") no longer finds the t.test() function,
    fixing PR#18627.
  * pdf() and postscript() support for the documented Adobe encodings
    "Greek" and "Cyrilllic" was missing (although the corresponding
    Windows' codepages could be used).
  * Computations of glyph metric information for pdf() and
    postscript() did not take into account that transliteration could
    replace one character by two or more (only seen on macOS 14) and
    typically warned that the information was not known.
  * rank(x) no longer overflows during integer addition, when
    computing rank average for largish but not-yet long vector x,
    fixing PR#18630, thanks to Ilia Kats.
  * list.files() on Windows now returns also files with names longer
    that 260 bytes (the Windows limit is 260 characters).
    Previously, some file names particularly with 'East Asian'
    characters were omitted.
  * cov2cor(&lt;0 x 0&gt;) now works, fixing PR#18423 thanks to Mikael
    Jagan and Elin Waring.
  * cov2cor(&lt;negative diagonal&gt;) and similar now give one warning
    instead of two, with better wording, fixing PR#18424 thanks to
    Mikael Jagan.
  * tools:: startDynamicHelp() now ensures port is in proper range,
    fixing PR#18645.
  * pbeta(x, a,b) is correct now for x=0 or 1 in the boundary cases
    where a or b or both are 0, fixing PR#18672 thanks to Michael
    Fay.
  * pmatch(x, table) for large table, also called for data frame row
    selection, dfrm[nm, ], is now interruptible, fixing PR#18656.
  * predict(&lt;rank-deficient lm&gt;, newdata=*) fix computing of nbasis,
    see Russ Lenth's comment 29 in PR#16158.
  * Added a work-around for a bug in macOS 14.3.1 and higher which
    prevents R plots in the Quartz Cocoa device from updating on
    screen.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1713960000">- CHANGES IN R 4.4.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Startup banners, R --version, sessionInfo() and R CMD check no
    longer report (64-bit) as part of the platform as this is almost
    universal - the increasingly rare 32-bit platforms will still
    report (32-bit).
    On Windows, ditto for window titles.
  * is.atomic(NULL) now returns FALSE, as NULL is not an atomic
    vector.  Strict back-compatibility would replace is.atomic(foo)
    by (is.null(foo) || is.atomic(foo)) but should happen only
    sparingly.
  NEW FEATURES:
  * The confint() methods for "glm" and "nls" objects have been
    copied to the stats package.  Previously, they were stubs which
    called versions in package MASS. The MASS namespace is no longer
    loaded if you invoke (say) confint(glmfit).  Further, the "glm"
    method for profile() and the plot() and pairs() methods for class
    "profile" have been copied from MASS to stats.  (profile.nls()
    and plot.profile.nls() were already in stats.)
  * The confint() and profile methods for "glm" objects have gained a
    possibility to do profiling based on the Rao Score statistic in
    addition to the default Likelihood Ratio. This is controlled by a
    new test = argument.
  * The pairs() method for "profile" objects has been extended with a
    which = argument to allow plotting only a subset of the
    parameters.
  * The "glm" method for anova() computes test statistics and
    p-values by default, using a chi-squared test or an F test
    depending on whether the dispersion is fixed or free.  Test
    statistics can be suppressed by giving argument test a false
    logical value.
  * In setRepositories() the repositories can be set using their
    names via name = instead of index ind =.
  * methods() and .S3methods() gain a all.names option for the (rare)
    case where functions starting with a . should be included.
  * Serializations can now be interrupted (e.g., by Ctrl-C on a
    Unix-alike) if they take too long, e.g., from save.image(),
    thanks to suggestions by Ivan Krylov and others on R-devel.
  * New startup option --max-connections to set the maximum number of
    simultaneous connections for the session.  Defaults to 128 as
    before: allowed values up to 4096 (but resource limits may in
    practice restrict to smaller values).
  * R on Windows (since Windows 10 2004) now uses the new Segment
    Heap allocator. This may improve performance of some
    memory-intensive applications.
  * When R packages are built, typically by R CMD build &lt;pkg&gt;, the
    new --user=&lt;build_user&gt; option overrides the (internally
    determined) user name, currently Sys.info()["user"] or LOGNAME.
    This is a (modified) fulfillment of Will Landau's suggestion in
    PR#17530.
  * tools::testInstalledBasic() gets new optional arguments outDir
    and testSrcdir, e.g., allowing to use it in a &lt;builddir&gt; !=
    &lt;srcdir&gt; setup, and in standard "binary" Windows installation
  * if* a source tests/ folder is present.
  * range(&lt;DT_with_Inf&gt;, finite = TRUE) now work for objects of class
    "Date", "POSIXct", and "POSIXlt" with infinite entries,
    analogously to range.default(), as proposed by Davis Vaughan on
    R-devel.  Other range()-methods can make use of new function
    .rangeNum().
  * New .internalGenerics object complementing .S3PrimitiveGenerics,
    for documentation and low-level book-keeping.
  * grid() now invisibly returns the x- and y- coordinates at which
    the grid-lines were drawn.
  * norm(., type) now also works for complex matrices.
  * kappa(., exact = TRUE, norm = *) now works for all norms and also
    for complex matrices.  In symmetric / triangular cases, the new
    argument uplo = "U" | "L" allows the upper or lower triangular
    part to be specified.
  * memDecompress(type = "unknown") recognizes compression in the
    default 'zlib' format as used by memCompress(type = "gzip").
  * memCompress() and memDecompress() will use the libdeflate library
    (&lt;https://github.com/ebiggers/libdeflate&gt;) if installed.  This
    uses the same type of compression for type = "gzip" but is 1.5-2x
    faster than the system libz library on some common platforms: the
    speed-up may depend on the library version.
  * diff() for objects of class "Date", "POSIXct", and "POSIXlt"
    accepts a units argument passed via ....
  * Dynamic help now does a much better job of rendering package
    DESCRIPTION metadata.
  * Rprof() gains an event argument and support for elapsed (real)
    time profiling on Unix (PR#18076).
  * filled.contour() gains a key.border argument.
  * tools::update_pkg_po() gets arguments pot_make and mo_make for
    _not_ re-making the corresponding files, and additionally a
    verbose argument.
  * Hexadecimal string colour specifications are now accepted in
    short form, so, for example, we can use "#123", which is
    equivalent to "#112233".
    Thanks to MikeFC for the original idea and Ella Kaye, Malcolm
    Barrett, George Stagg, and Hanne Oberman for the patch.
  * Plain-text help shows \var markup by angle brackets.
  * The new experimental primitive function declare() is intended to
    eventually allow information about R code to be communicated to
    the interpreter, compiler, and code analysis tools. The syntax
    for declarations is still being developed.
  * Functions psmirnov(), qsmirnov() and rsmirnov() in package stats
    have had argument two.sided renamed to alternative, to take into
    account that the permutation distributions of the one-sided
    statistics can be different in the case of ties.  Consequence of
    PR#18582.
  * sort() is now an implicit S4 generic in methods.
  * Formatting and printing, format(z), print(z), of complex vectors
    z no longer zap relatively small real or imaginary parts to zero,
    fixing PR#16752.  This is an API change, as it was documented
    previously to round real and imaginary parts together on purpose,
    producing nicer looking output.  As mentioned, e.g. in the PR,
    this change is compatible with many other "R-like" programming
    environments.
    We have simplified the internal code and now basically format the
    real and imaginary parts independently of each other.
  * New experimental functions Tailcall() and Exec() to support
    writing stack-space-efficient recursive functions.
  * Where characters are attempted to be plotted by pdf(),
    postscript() and xfig() which are not in the selected 8-bit
    character set (most often Latin-1) and the R session is using a
    UTF-8 locale, the warning messages will show the UTF-8 character
    rather than its bytes and one dot will be substituted per
    character rather than per byte.  (Platforms whose iconv() does
    transliteration silently plot the transliteration.)
    In a UTF-8 locale some transliterations are now done with a
    warning (e.g., dashes and Unicode minus to hyphen, ligatures are
    expanded, permille (‰) is replaced by o/oo), although the OS may
    have got there first.  These are warnings as they will continue
    to be replaced by dots in earlier versions of R.
  * The matrix multiplication functions crossprod() and tcrossprod()
    are now also primitive and S3 generic, as %*% had become in R
    4.3.0.
  * source() and example() have a new optional argument catch.aborts
    which allows continued evaluation of the R code after an error.
  * The non-Quartz tiff() devices allow additional types of
    compression if supported by the platform's libtiff library.
  * The list of base and recommended package names is now provided by
    tools::standard_package_names().
  * cairo_pdf() and cairo_ps() default to onefile = TRUE to closer
    match pdf() and postscript().
  * New option catch.script.errors provides a documented way to catch
    errors and then continue in non-interactive use.
  * L %||% R newly in base is an expressive idiom for the phrases
    if(!is.null(L)) L else R or if(is.null(L)) R else L.
  * The return value from warnings() now always inherits from
    "warnings" as documented, now also in the case of no warnings
    where it previously returned NULL.
  * as.complex("1i") now returns 0 + 1i instead of NA with a warning.
  * z &lt;- c(NA, 1i) now keeps the imaginary part Im(z[1]) == 0, no
    longer coercing to NA_complex_.  Similarly, cumsum(z) correctly
    sums real and imaginary parts separately, i.e., without
    "crosstalk" in case of NAs.
  * On Alpine Linux iconv() now maps "latin2", "latin-2", "latin9"
    and "latin-9" to encoding names the OS knows about
    (case-insensitively).
  * iconv(sub = "Unicode") now always zero-pads to four (hex) digits,
    rather than to 4 or 8.  (This seems to have become the convention
    once Unicode restricted the number of Unicode points to 2^21 - 1
    and so will never need more than 6 digits.)
  * NCOL(NULL) now returns 0 instead of 1, for consistency with
    cbind().
  * The information for the Euro glyph missing from the Adobe .afm
    files for the Courier, Helvetica and Times families has been
    copied from their URW equivalents - this will improve vertical
    centring in the pdf() and postscript() devices.
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.12.0.  The changes are almost entirely cosmetic.
  * The included LAPACK sources have been updated to version 3.12.0
    and some further double-complex routines added.
  * There are new font families for the 2014--5 URW 2.0 fonts (see
    ?pdf) which are included in recent versions of Ghostscript.
    These have font widths for most Greek glyphs and a few others
    which were missing from the original versions (whose font
    families remain available for reproducibility, although
    Ghostscript-based viewers will render using the 2.0 versions).
  * Improve the large-n efficiency of as.matrix(&lt;dist&gt;), thanks an R
    contributors effort, notably by Tim Taylor and Heather Turner,
    see PR#18660.
  * The default and numeric methods of all.equal() get a check.class
    option.
  * zapsmall() gets new optional arguments, function mFUN and min.d,
    for extra flexibility; fulfills a wish in PR#18199.  Also, it is
    now an implicit S4 generic in package methods.
  * The Rd filter for aspell() gains an ignore argument.
  * New generic function sort_by(), primarily useful for the
    data.frame method which can be used to sort rows of a data frame
    by one or more columns.
  * The icence headers for the RPC code in src/extra/xdr have been
    updated to use the GPL-compatible licence published by Oracle
    America in 2010.
  * New function pkg2HTML() in tools to create single-page HTML
    reference manuals for R packages.
  * The byte code evaluator now uses less C stack space for recursive
    calls to byte-compiled functions. It also makes more of an effort
    to avoid allocations for scalar return values.
  * New completion option backtick (disabled by default) allows
    non-syntactic completions to be wrapped in backquotes. This is
    currently only useful for Jupyter notebooks via the IRkernel
    package, and may cause problems for other backends.
  INSTALLATION:
  * The parser has been updated to work with bison 3.8.2, which is
    now used for the pre-generated parsers in gram.c, file.c, and
    gramRd.c. A few parser error messages have changed, which may
    affect code that relies on exact messages.
  INSTALLATION on a UNIX-ALIKE:
  * System valgrind headers are now required to use configure option
  - -with-valgrind-instrumentation with value 1 or 2.
  * configure will warn if it encounters a 32-bit build, as that is
    nowadays almost untested.
  * Environment variable R_SYSTEM_ABI is no longer used and so no
    longer recorded in etc/Renviron (it was not on Windows and was
    only ever used when preparing package tools).
  * If the libdeflate library and headers are available, libdeflate
    rather than libz is used to (de)compress R objects in lazy-load
    databases.  Typically tasks spend up to 5% of their time on such
    operations, although creating lazy-data databases is one of the
    exceptions.
    This can be suppressed if the library is available by the
    configure option --without-libdeflate-compression.
  * configure option --enable-lto=check has not worked reliably since
    2019 and has been removed.
  * The minimum autoconf requirement for a maintainer build has been
    increased to autoconf 2.71.
    It is intended to increase this to 2.72 for R 4.5.0: the
    distributed configure file was generated using 2.72.
  * The minimum version requirement for an external LAPACK has been
    reduced to 3.9.0.
  * No default C++ compiler is set if no C++17 compiler is detected:
    there is no longer an automatic fallback to C++14 or C++11.
    Compilers from the last five years should have sufficient
    support: for others macros CXX and CXXSTD can be set in file
    config.site to provide a fallback if needed.
    The Objective-C++ compiler now by default uses the standard
    selected by R for C++ (currently C++17) rather than the default
    standard for the C++ compiler (which on macOS is still C++98).
  INSTALLATION on macOS:
  * A new configure option --with-newAccelerate makes use of Apple's
    'new' BLAS / LAPACK interfaces in their Accelerate framework.
    Those interfaces are only available in macOS 13.3 or later, and
    building requires SDK 13.3 or later (from the Command Line Tools
    or Xcode 14.3 or later).
    By default the option uses new Accelerate for BLAS calls: to also
    use it for LAPACK use option --with-newAccelerate=lapack.  The
    later interfaces provide LAPACK 3.9.1 rather than 3.2.1: 3.9.1 is
    from 2021-04 and does not include the improved algorithms
    introduced in LAPACK 3.10.0 (including for BLAS calls).
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools44, an update of the Rtools43 toolchain.  It is
    based on GCC 13 and newer versions of MinGW-W64, binutils and
    libraries (targeting 64-bit Intel CPUs).  R-devel can no longer
    be built using Rtools43 without changes.
  * Rtools44 has experimental support for 64-bit ARM (aarch64) CPUs
    _via_ the LLVM 17 toolchain using lld, clang/flang-new and
    libc++.
  UTILITIES:
  * R CMD check notes when S4-style exports are used without
    declaring a strong dependence on package methods.
  * tools::checkRd() (used by R CMD check) detects more problems with
    \Sexpr-based dynamic content, including bad nesting of \Sexprs
    and invalid arguments.
  * tools::checkRd() now reports Rd titles and section names ending
    in a period; this is ignored by R CMD check unless environment
    variable _R_CHECK_RD_CHECKRD_MINLEVEL_ is set to -5 or smaller.
  * R CMD check now notes Rd files without an \alias, as long
    documented in 'Writing R Extensions' §1.3.1.  The check for a
    missing \description has been moved from tools::checkRd() to
    tools::checkRdContents().
  * R CMD check now visits inst/NEWS.Rd and OS-specific man
    subdirectories when checking Rd files.
  * tools::checkDocFiles() and tools::checkRdContents() now also
    check internal Rd files by default, but "specially" (ignoring
    missing documentation of arguments).
  * R CMD Rdiff gets option --useEx.
  * R CMD check now warns on non-portable uses of Fortran KIND such
    as INTEGER(KIND=4) and REAL(KIND=8).
    To see the failing lines set environment variable
    _R_CHECK_FORTRAN_KIND_DETAILS_ to a true value.
  * When checking Rd files, R CMD check now notes some of the "lost
    braces" that tools::checkRd() finds.  Typical problems are Rd
    macros missing the initial backslash (e.g., code{...}), in-text
    set notation (e.g., {1, 2}, where the braces need escaping), and
    \itemize lists with \describe-style entries of the form
    \item{label}{description}.
  * R CMD INSTALL (and hence check) will compile C++ code with
  - DR_NO_REMAP if environment variable _R_CXX_USE_NO_REMAP_ is set
    to a true value.  It is planned that this will in future become
    the default for compiling C++.
  * The new built-in Rd macro \dontdiff{} can be used to mark example
    code whose output should be ignored when comparing check output
    to reference output (tests/Examples/&lt;pkg&gt;-Ex.Rout.save).  The
    \dontdiff tag, like \donttest, is _not_ shown on the rendered
    help page, so provides a clean alternative to ##
    IGNORE_RDIFF_(BEGIN|END) comments.
  * R CMD build when there is no NAMESPACE, now uses the recommended
    exportPattern("^[^.]"), instead of exporting everything.
  * R CMD check now warns about non-ASCII characters in the NAMESPACE
    file (in addition to R files). Such packages are not portable and
    may fail to install on some platforms.
  C-LEVEL FACILITIES:
  * Headers R_ext/Applic.h and R-ext/Linpack.h used to include
    R_ext/BLAS.h although this was undocumented and unneeded by their
    documented entry points.  They no longer do so.
  * New function R_missing(), factored out from do_missing(), used to
    fix PR#18579.
  * SEXP type S4SXP has been renamed to OBJSXP to support
    experimenting with alternative object systems.  The S4SXP value
    can still be used in C code but is now deprecated.  Based on
    contributions from the R Consortium's Object-Oriented Programming
    Working Group.
  * New function pow1p(x,y) for accurate (1+x)^y.
  * mkCharLenCE was incorrectly documented to take a size_t length
    but was implemented with int (and character strings in R are
    limited to 2^31 - 1 bytes).
  DEPRECATED AND DEFUNCT:
  * data() no longer handles zipped data from long-defunct (since R
    2.13.0) --use-zip-data installations.
  * The legacy graphics devices pictex() and xfig() are now
    deprecated.  They do not support recent graphics enhancements and
    their font handling is rudimentary. The intention is to retain
    them for historical interest as long as they remain somewhat
    functional.
  * Support for encoding = "MacRoman" has been removed from the pdf()
    and postscript() devices - this was a legacy encoding supporting
    classic macOS up to 2001 and no longer has universal libiconv
    support.
  * is.R() is deprecated as no other S dialect is known to be in use
    (and this could only identify historical dialects, not future
    ones).
    Further information on calls can be obtained by setting the
    environment variable _R_DEPRECATED_IS_R_ to error which turns the
    deprecation warning into an error and so by default gives a
    traceback.  (This is done by R CMD check --as-cran.)
  * UseMethod() no longer forwards local variables assigned in the
    generic function into method call environments before evaluating
    the method body. This makes method calls behave more like
    standard function calls and makes method code easier to analyze
    correctly.
  * The twelve as.data.frame.&lt;class&gt;() methods which were deprecated
    only via _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ and in R CMD
    check --as-cran are formally deprecated now in favour of calling
    as.data.frame() or as.data.frame.vector().  The deprecation
    "check" now works also when as.data.frame() is S4 generic thanks
    to Ivan Krylov.
  * The default method for the directional comparison operators &lt;, &gt;,
    &lt;=, and &gt;= now signals an error when one of the operands is a
    language object, i.e. a symbol or a call.
  * For terms.formula(), deprecate abb and neg.out arguments
    _formally_ in addition to just documenting it.
  BUG FIXES:
  * The methods package is more robust to not being attached to the
    search path.  More work needs to be done.
  * pairwise.t.test() misbehaved when subgroups had 0 DF for
    variance, even with pool.sd = TRUE.  (PR#18594 by Jack Berry).
  * Probability distribution functions [dpq]&lt;distrib&gt;(x, *), but also
    bessel[IKJY](x, .) now consistently preserve attributes(x) when
    length(x) == 0, e.g., for a 2 x 0 matrix, thanks to Karolis
    Koncevičius' report PR#18509.
  * Group "Summary" computations such as sum(1:3, 4, na.rm = 5, NA,
    7, na.rm = LL) now give an error instead of either 17 or NN for
    LL true or false, as proposed by Ivan Krylov on the R-devel
    mailing list.  (This also means it is now an error to specify
    na.rm more than once.)
  * as.complex(x) now returns complex(real = x, imaginary = 0) for
    _all_ numerical and logical x, notably also for NA or
    NA_integer_.
  * Directories are now omitted by file.copy(, recursive = FALSE) and
    in file.append() (PR#17337).
  * gsub() and sub() are now more robust to integer overflow when
    reporting errors caused by too large input strings (PR#18346).
  * Top-level handlers are now more robust to attempts to remove a
    handler whilst handlers are running (PR#18508).
  * The handling of Alt+F4 in dialogs created on Windows using
    GraphApp has been fixed (PR#13870).
  * density() more consistently computes grid values for the
    FFT-based convolution, following Robert Schlicht's analysis and
    proposal in PR#18337, correcting density values typically by a
    factor of about 0.999.  Argument old.coords = TRUE provides back
    compatibility.
  * palette.colors() gains a name argument that defaults to FALSE
    controlling whether the vector of colours that is returned has
    names (where possible).  PR#18529.
  * tools::xgettext() no longer extracts the (non-translatable) class
    names from warningCondition and errorCondition calls.
  * S3method(&lt;gen&gt;, &lt;class&gt;, &lt;func&gt;) in the NAMESPACE file now works
    (again) when &lt;func&gt; is visible from the namespace, e.g.,
    imported, or in base.
  * getParseData(f) now also works for a function defined in the
    first of several &lt;pkg&gt;/R/*.R source files, thanks to Kirill
    Müller's report and Duncan Murdoch's patch in PR#16756.
  * Rd \Sexpr macros with nested #ifdef conditionals were not
    processed.
  * A non-blocking connection with non-default encoding (such as a
    socket) now correctly returns from readLines() after new data has
    arrived also when its EOF had been reached previously.  Thanks to
    Peter Meilstrup's report on R-devel and Ivan Krylov's report and
    patch proposal in PR#18555.
  * tools::checkRdContents() failed to detect empty argument
    descriptions when they spanned multiple lines, including those
    generated by prompt().  These cases are now noted by R CMD check.
  * Plain-text help no longer outputs spurious colons in the
    arguments list (for multi-line \item labels in the Rd source).
  * kappa() and rcond() work correctly in more cases; kappa(., norm =
    "2") now warns that it computes the 1-norm with (default) exact =
    FALSE; prompted by Mikael Jagan's quite comprehensive PR#18543.
  * Rd skeletons generated by prompt() or promptData() now use a
    dummy title (so R CMD build works).  tools::checkRdContents() has
    been updated to detect such template leftovers, including from
    promptPackage().
  * When S4 method dispatch fails because no method was found, the
    error message now includes the signature argument names; thanks
    to Michael Chirico's proposal on the R-devel list.
  * withAutoprint({ .. }) now preserves srcrefs previously lost,
    thanks to Andrew Simmons' report plus fix in PR#18572.
  * transform.data.frame() no longer adjusts names; in particular,
    untransformed variables are kept as-is, including those with
    syntactically invalid names (PR#17890).
  * The keep.source option for Rd \Sexpr blocks is no longer ignored.
  * The formula methods for t.test() and wilcox.test() now catch when
    paired is passed, addressing PR#14359; use Pair(x1, x2) ~ 1 for a
    paired test.
  * The level reported in the browser prompt was often too large. It
    now shows the number of browser contexts on the stack.
  * For cbind() and rbind(), the optional deparse.level argument is
    now properly passed to methods, thanks to Mikael Jagan's PR#18579
    and comments there.
  * Some error and warning messages for large ('long vector')
    matrix(v, nr, nc) and dim(m) &lt;- d are now correct about sizes,
    using long long formatting, fixing PR#18612 (and more) reported
    by Mikael Jagan.
  * readChar(useBytes = TRUE) now terminates strings even when the
    underlying connection uses extra spaces in the input buffer.
    This fixes problems with extra garbage seen with gzip
    connections, PR#18605.
  * Named capture in PCRE regular expressions now works also with
    more than 127 named groups (PR#18588).
  * Datetime functions are now robust against long jumps when dealing
    with internal time zone changes.  This avoids confusing warnings
    about an invalid time zone, previously triggered by turning
    warnings into errors or handling them via tryCatch (PR#17966,
    PR#17780).
  * Datetime functions now restore even an empty TZ environment
    variable after internal time zone changes (PR#17724).  This makes
    results of datetime functions with this (typically unintentional)
    setting more predictable.
  * drop.terms(*) now drops response as by default, keep.response =
    FALSE, fixing PR#18564 thanks to Mikael Jagan.
  * dummy.coef(.) now also works for lm()-models with character
    categorical predictor variables rather than factor ones, fixing
    PR#18635 reported by Jinsong Zhao.
  * formals(f) &lt;- formals(f) now also works for a function w/o
    arguments and atomic _constant_ body(f).
  * Correct as.function(&lt;invalid list&gt;, .)'s error message.
  * removeSource() is yet more thorough in finding and removing
    "srcref" and the other source references from parsed R language
    chunks, fixing PR#18638 thanks to Andrew Simmons.
  * dgeom() is more accurate now, notably when its result is very
    small, fixing PR#18642 thanks to the proposal of Morten Welinder,
    also improving other instances where C level binom_raw(x, n, ..)
    has x == 0 or x== n.
  * warning() with options(warn = 1) has improved output for
    multi-line messages.
  * axis.Date() and axis.POSIXct() now respect the par("lab") setting
    for the number of pretty() intervals.
  * Comparisons for language objects (which are based on deparsing)
    are now more careful about using accurate deparsed results
    (PR#18676).
  * Plain-text help (Rd2txt) now correctly preserves blank lines
    following single-line \dontrun code.
  * &lt;POSIXlt&gt;[*] no longer sets wrong "balanced" attribute, fixing
    PR#18681 thanks to Mikael Jagan.
  * str(&lt;classed-call&gt;) now deparses the call as expected, fixing
    PR#18684, reported by Dave Slager.
  * In Rd examples, code following the closing brace of a \dontrun,
    \dontshow or \donttest tag on the same line is no longer skipped
    when R CMD check runs the examples.
  * as.data.frame(matrix(*, ncol=0)) now gets valid names() and
    colnames(); reported by Davis Vaughan on the R-devel list.
  * Internal Mathlib function stirlerr(n) is now almost fully
    (52-bit) accurate for all n &gt;= ~5.9 and more accurate also in the
    range 1 -- 5.9.  This entails small ("after 12th decimal")
    changes in density functions, e.g., dgamma() in _some_ regions of
    their support.  The fix was partly prompted by Morten Welinder's
    PR#18640.
  * Numbers like 9876543.2 are now considered non-integer by Mathlib
    internal R_nonint(), amending original fix of PR#15734.
  * Rd comment lines no longer cause broken paragraphs in the
    rendered PDF and plain-text help. In code blocks, pure comment
    lines (starting with %) no longer produce an empty line.
  * xtabs(Freq ~ .) now consistently defaults to na.action = na.pass,
    using na.rm = FALSE (added as an argument) when summing over Freq
    (PR#17770).
  * tools::testInstalledPackage() is no longer silent about failures
    from running examples or tests and its return code no longer
    ignores failures from checking vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1718366400">- CHANGES IN R 4.4.1:
  C-LEVEL FACILITIES:
  * Functions R_atof and R_strtod declared in header R_ext/Utils.h
    are now documented in 'Writing R Extensions' and so formally part
    of the API.
  * The non-API entry points Rf_setSVector, Rf_StringFalse,
    Rf_StringTrue and Rf_isBlankString have been added to those
    reported by R CMD check.
  * The new function Rf_allocLang is now available. This provides an
    alternative to the idiom of calling Rf_allocList followed by
    SET_TYPEOF.
  UTILITIES:
  * R CMD check now reports as warnings what gfortran calls 'Fortran
    2018 deleted features', all of which have long been marked as
    'obsolescent' and some of which were deleted in Fortran 2008 or
    earlier.  Fortran compilers are no longer required to support
    these.
  BUG FIXES:
  * as.numeric(), scan(), type.convert() and other places which use
    the internal C function R_strtod now require a _non-empty_ digit
    sequence in a decimal or binary exponent.  This aligns with the
    C/POSIX standard for strtod and with ?NumericConstants.
  * as.data.frame(m, make.names=NA) now works correctly for a matrix
    m with NA's in row names.
  * The error message from &lt;POSIXlt&gt;[["hour"]] and similar now
    mentions *[[, "hour"]], as wished for in PR#17409 and proposed by
    Michael Chirico.
  * qbinom() and potentially qpois(), qnbinom(), no longer sometimes
    fail accurate inversion (of pbinom(), etc), thanks to Christopher
    Chang's report and patch in PR#18711.
  * The internal help server on Windows can again serve requests sent
    in quick succession, fixing a regression in R 4.4.0.
  * debugcall(&lt;S3Generic&gt;()) now also works when a corresponding
    S4-generic version is in the methods cache (PR#18143).
  * Package tools' toTitleCase(ch0) now returns character(0) when ch0
    is of zero length; fixing PR#18724, reported by David Hugh Jones.
  * R CMD check is no longer broken (without a check result and no
    explanation in 00check.log) for a package which declares an
    invalid VignetteBuilder in DESCRIPTION but has no vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1730376000">- CHANGES IN R 4.4.2:
  C-LEVEL FACILITIES:
  * The S-compatibility macros F77_COM and F77_COMDECL defined in
    header R_ext/RS.h are deprecated and will be removed shortly.  We
    could find no record of their use.
  BUG FIXES:
  * Mathlib function lgammacor(x) no longer warns about underflow to
    zero for large x.
  * Text widths and heights were incorrectly reported by the Quartz
    device if the drawing context didn't exist yet (typically when
    drawing off-screen to a window that is yet to appear, see
    PR#18591).
  * The Quartz device could segfault in cases where paths with spaces
    are used in the new glyph drawing API.  Thanks to Tomek
    Gieorgijewski (PR#18758).
  * On macOS in R CRAN builds, it is again possible to read
    little-endian UTF-16 text with a BOM from a connection using
    encoding="UTF-16".  Users building R from source should avoid
    using the system libiconv in macOS 14.1 and later.
  * methods' internal .requirePackage() now re-enables primitive
    method dispatch when needed; thanks to Ivan Krylov for
    demystifying CRAN package check failures on the R-devel mailing
    list.</changelog>
</package>
<package pkgid="e4d8a22c72eb3230e6b8c024fcfb4d9a901f54208ab2224ca7cffba229f7fd4490bc6479abb600d93069a937fd7ce348d0f5ae8801301ab35e9f3ecd4f2e3ec1" name="R-core-debuginfo" arch="x86_64">
  <version epoch="0" ver="4.4.2" rel="51.0.2.2.sr20241103"/>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1620302400">- To get in sync with d:l:R:autoCRAN the Matrix package's split
  in -devel was reversed.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339200">- improved spec file according to comments of dimstar in
  https://build.opensuse.org/request/show/892685</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339201">- CHANGES IN R 4.1.0:
  FUTURE DIRECTIONS:
  * It is planned that the 4.1.x series will be the last to support
    32-bit Windows, with production of binary packages for that
    series continuing until early 2023.
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Data set esoph in package datasets now provides the correct
    numbers of controls; previously it had the numbers of cases added
    to these.  (Reported by Alexander Fowler in PR#17964.)
  NEW FEATURES:
  * www.omegahat.net is no longer one of the repositories known by
    default to setRepositories().  (Nowadays it only provides source
    packages and is often unavailable.)
  * Function package_dependencies() (in package tools) can now use
    different dependency types for direct and recursive dependencies.
  * The checking of the size of tarball in R CMD check --as-cran
    &lt;pkg&gt; may be tweaked via the new environment variable
    _R_CHECK_CRAN_INCOMING_TARBALL_THRESHOLD_, as suggested in
    PR#17777 by Jan Gorecki.
  * Using c() to combine a factor with other factors now gives a
    factor, an ordered factor when combining ordered factors with
    identical levels.
  * apply() gains a simplify argument to allow disabling of
    simplification of results.
  * The format() method for class "ftable" gets a new option justify.
    (Suggested by Thomas Soeiro.)
  * New ...names() utility.  (Proposed by Neal Fultz in PR#17705.)
  * type.convert() now warns when its as.is argument is not
    specified, as the help file always said it _should_.  In that
    case, the default is changed to TRUE in line with its change in
    read.table() (related to stringsAsFactor) in R 4.0.0.
  * When printing list arrays, classed objects are now shown _via_
    their format() value if this is a short enough character string,
    or by giving the first elements of their class vector and their
    length.
  * capabilities() gets new entry "Rprof" which is TRUE when R has
    been configured with the equivalent of --enable-R-profiling (as
    it is by default).  (Related to Michael Orlitzky's report
    PR#17836.)
  * str(xS4) now also shows extraneous attributes of an S4 object
    xS4.
  * Rudimentary support for vi-style tags in rtags() and R CMD rtags
    has been added.  (Based on a patch from Neal Fultz in PR#17214.)
  * checkRdContents() is now exported from tools; it and also
    checkDocFiles() have a new option chkInternal allowing to check
    Rd files marked with keyword "internal" as well.  The latter can
    be activated for R CMD check via environment variable
    _R_CHECK_RD_INTERNAL_TOO_.
  * New functions numToBits() and numToInts() extend the raw
    conversion utilities to (double precision) numeric.
  * Functions URLencode() and URLdecode() in package utils now work
    on vectors of URIs.  (Based on patch from Bob Rudis submitted
    with PR#17873.)
  * path.expand() can expand ~user on most Unix-alikes even when
    readline is not in use.  It tries harder to expand ~, for example
    should environment variable HOME be unset.
  * For HTML help (both dynamic and static), Rd file links to help
    pages in external packages are now treated as references to
    topics rather than file names, and fall back to a file link only
    if the topic is not found in the target package. The earlier rule
    which prioritized file names over topics can be restored by
    setting the environment variable _R_HELP_LINKS_TO_TOPICS_ to a
    false value.
  * c() now removes NULL arguments before dispatching to methods,
    thus simplifying the implementation of c() methods, _but_ for
    back compatibility keeps NULL when it is the first argument.
    (From a report and patch proposal by Lionel Henry in PR#17900.)
  * Vectorize()'s result function's environment no longer keeps
    unneeded objects.
  * Function ...elt() now propagates visibility consistently with
    ..n.  (Thanks to Lionel Henry's PR#17905.)
  * capture.output() no longer uses non-standard evaluation to
    evaluate its arguments.  This makes evaluation of functions like
    parent.frame() more consistent.  (Thanks to Lionel Henry's
    PR#17907.)
  * packBits(bits, type="double") now works as inverse of
    numToBits().  (Thanks to Bill Dunlap's proposal in PR#17914.)
  * curlGetHeaders() has two new arguments, timeout to specify the
    timeout for that call (overriding getOption("timeout")) and TLS
    to specify the minimum TLS protocol version to be used for
    https:// URIs (_inter alia_ providing a means to check for sites
    using deprecated TLS versions 1.0 and 1.1).
  * For nls(), an optional constant scaleOffset may be added to the
    denominator of the relative offset convergence test for cases
    where the fit of a model is expected to be exact, thanks to a
    proposal by John Nash.  nls(*, trace=TRUE) now also shows the
    convergence criterion.
  * Numeric differentiation _via_ numericDeriv() gets new optional
    arguments eps and central, the latter for taking central divided
    differences.  The latter can be activated for nls() via
    nls.control(nDcentral = TRUE).
  * nls() now passes the trace and control arguments to getInitial(),
    notably for all self-starting models, so these can also be fit in
    zero-noise situations via a scaleOffset.  For this reason, the
    initial function of a selfStart model must now have ... in its
    argument list.
  * bquote(splice = TRUE) can now splice expression vectors with
    attributes: this makes it possible to splice the result of
    parse(keep.source = TRUE).  (Report and patch provided by Lionel
    Henry in PR#17869.)
  * textConnection() gets an optional name argument.
  * get(), exists(), and get0() now signal an error if the first
    argument has length greater than 1.  Previously additional
    elements were silently ignored.  (Suggested by Antoine Fabri on
    R-devel.)
  * R now provides a shorthand notation for creating functions, e.g.
    \(x) x + 1 is parsed as function(x) x + 1.
  * R now provides a simple native forward pipe syntax |&gt;.  The
    simple form of the forward pipe inserts the left-hand side as the
    first argument in the right-hand side call.  The pipe
    implementation as a syntax transformation was motivated by
    suggestions from Jim Hester and Lionel Henry.
  * all.equal(f, g) for functions now by default also compares their
    environment(.)s, notably via new all.equal method for class
    function.  Comparison of nls() fits, e.g., may now need
    all.equal(m1, m2, check.environment = FALSE).
  * .libPaths() gets a new option include.site, allowing to _not_
    include the site library.  (Thanks to Dario Strbenac's suggestion
    and Gabe Becker's PR#18016.)
  * Lithuanian translations are now available.  (Thanks to Rimantas
    Zakauskas.)
  * names() now works for DOTSXP objects.  On the other hand, in
    R-lang, the R language manual, we now warn against relying on the
    structure or even existence of such dot-dot-dot objects.
  * all.equal() no longer gives an error on DOTSXP objects.
  * capabilities("cairo") now applies only to the file-based devices
    as it is now possible (if very unusual) to build R with Cairo
    support for those but not for X11().
  * There is optional support for tracing the progress of
    loadNamespace() - see its help.
  * (Not Windows.)  l10n_info() reports an additional element, the
    name of the encoding as reported by the OS (which may differ from
    the encoding part (if any) of the result from
    Sys.getlocale("LC_CTYPE").
  * New function gregexec() which generalizes regexec() to find _all_
    disjoint matches and well as all substrings corresponding to
    parenthesized subexpressions of the given regular expression.
    (Contributed by Brodie Gaslam.)
  * New function charClass() in package utils to query the
    wide-character classification functions in use (such as
    iswprint).
  * The names of quantile()'s result no longer depend on the global
    getOption("digits"), but quantile() gets a new optional argument
    digits = 7 instead.
  * grep(), sub(), regexp and variants work considerably faster for
    long factors with few levels.  (Thanks to Michael Chirico's
    PR#18063.)
  * Provide grouping of x11() graphics windows within a window
    manager such as Gnome or Unity; thanks to a patch by Ivan Krylov
    posted to R-devel.
  * The split() method for class data.frame now allows the f argument
    to be specified as a formula.
  * sprintf now warns on arguments unused by the format string.
  * New palettes "Rocket" and "Mako" for hcl.colors() (approximating
    palettes of the same name from the 'viridisLite' package).
    Contributed by Achim Zeileis.
  * The base environment and its namespace are now locked (so one can
    no longer add bindings to these or remove from these).
  * Rterm handling of multi-byte characters has been improved,
    allowing use of such characters when supported by the current
    locale.
  * Rterm now accepts ALT+ +xxxxxxxx sequences to enter Unicode
    characters as hex digits.
  * Environment variable LC_ALL on Windows now takes precedence over
    LC_CTYPE and variables for other supported categories, matching
    the POSIX behaviour.
  * duplicated() and anyDuplicated() are now optimized for integer
    and real vectors that are known to be sorted via the ALTREP
    framework. Contributed by Gabriel Becker via PR#17993.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 14
    and so packages that provide graphics devices should be
    reinstalled.
  * Graphics devices should now specify deviceVersion to indicate
    what version of the graphics engine they support.
  * Graphics devices can now specify deviceClip.  If TRUE, the
    graphics engine will never perform any clipping of output itself.
    The clipping that the graphics engine does perform (for both
    canClip = TRUE and canClip = FALSE) has been improved to avoid
    producing unnecessary artifacts in clipped output.
  * The grid package now allows gpar(fill) to be a linearGradient(),
    a radialGradient(), or a pattern().  The viewport(clip) can now
    also be a grob, which defines a clipping path, and there is a new
    viewport(mask) that can also be a grob, which defines a mask.
    These new features are only supported so far on the Cairo-based
    graphics devices and on the pdf() device.
  * (Not Windows.)  A warning is given when a Cairo-based type is
    specified for a png(), jpeg(), tiff() or bmp() device but Cairo
    is unsupported (so type = "Xlib" is tried instead).
  * grSoftVersion() now reports the versions of FreeType and
    FontConfig if they are used directly (not _via_ Pango), as is
    most commonly done on macOS.
  C-LEVEL FACILITIES:
  * The _standalone_ libRmath math library and R's C API now provide
    log1pexp() again as documented, and gain log1mexp().
  INSTALLATION on a UNIX-ALIKE:
  * configure checks for a program pkgconf if program pkg-config is
    not found.  These are now only looked for on the path (like
    almost all other programs) so if needed specify a full path to
    the command in PKG_CONFIG, for example in file config.site.
  * C99 function iswblank is required - it was last seen missing ca
    2003 so the workaround has been removed.
  * There are new configure options --with-internal-iswxxxxx,
  - -with-internal-towlower and --with-internal-wcwidth which allows
    the system functions for wide-character classification,
    case-switching and width (wcwidth and wcswidth) to be replaced by
    internal ones.  The first has long been used on macOS, AIX (and
    Windows) but this enables it to be unselected there and selected
    for other platforms (it is the new default on Solaris).  The
    second is new in this version of R and is selected by default on
    macOS and Solaris.  The third has long been the default and
    remains so as it contains customizations for East Asian
    languages.
    System versions of these functions are often minimally
    implemented (sometimes only for ASCII characters) and may not
    cover the full range of Unicode points: for example Solaris (and
    Windows) only cover the Basic Multilingual Plane.
  * Cairo installations without X11 are more likely to be detected by
    configure, when the file-based Cairo graphics devices will be
    available but not X11(type = "cairo").
  * There is a new configure option --with-static-cairo which is the
    default on macOS.  This should be used when only static cairo
    (and where relevant, Pango) libraries are available.
  * Cairo-based graphics devices on platforms without Pango but with
    FreeType/FontConfig will make use of the latter for font
    selection.
  LINK-TIME OPTIMIZATION on a UNIX-ALIKE:
  * Configuring with flag --enable-lto=R now also uses LTO when
    installing the recommended packages.
  * R CMD INSTALL and R CMD SHLIB have a new flag --use-LTO to use
    LTO when compiling code, for use with R configured with
  - -enable-lto=R.  For R configured with --enable-lto, they have
    the new flag --no-use-LTO.
    Packages can opt in or out of LTO compilation _via_ a UseLTO
    field in the DESCRIPTION file.  (As usual this can be overridden
    by the command-line flags.)
  BUILDING R on Windows:
  * for GCC &gt;= 8, FC_LEN_T is defined in config.h and hence character
    lengths are passed from C to Fortran in _inter alia_ BLAS and
    LAPACK calls.
  * There is a new text file src/gnuwin32/README.compilation, which
    outlines how C/Fortran code compilation is organized and
    documents new features:
  * R can be built with Link-Time Optimization with a suitable
    compiler - doing so with GCC 9.2 showed several
    inconsistencies which have been corrected.
  * There is support for cross-compiling the C and Fortran code
    in R and standard packages on suitable (Linux) platforms.
    This is mainly intended to allow developers to test later
    versions of compilers - for example using GCC 9.2 or 10.x has
    detected issues that GCC 8.3 in Rtools40 does not.
  * There is experimental support for cross-building R packages
    with C, C++ and/or Fortran code.
  * The R installer can now be optionally built to support a single
    architecture (only 64-bit or only 32-bit).
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++14 where
    available (which it is on all currently checked platforms): if
    not (as before) C++11 is used if available otherwise C++ is not
    supported.
    Packages which specify C++11 will still be installed using C++11.
    C++14 compilers may give deprecation warnings, most often for
    std::random_shuffle (deprecated in C++14 and removed in C++17).
    Either specify C++11 (see 'Writing R Extensions') or modernize
    the code and if needed specify C++14.  The latter has been
    supported since R 3.4.0 so the package's DESCRIPTION would need
    to include something like
    Depends: R (&gt;= 3.4)
  PACKAGE INSTALLATION on Windows:
  * R CMD INSTALL and R CMD SHLIB make use of their flag --use-LTO
    when the LTO_OPT make macro is set in file etc/${R_ARCH}/Makeconf
    or in a personal/site Makevars file.  (For details see 'Writing R
    Extensions' SS4.5.)
    This provides a valuable check on code consistency.  It does work
    with GCC 8.3 as in Rtools40, but that does not detect everything
    the CRAN checks with current GCC do.
  PACKAGE INSTALLATION on macOS:
  * The default personal library directory on builds with
  - -enable-aqua (including CRAN builds) now differs by CPU type,
    one of
    ~/Library/R/x86_64/x.y/library
    ~/Library/R/arm64/x.y/library
    This uses the CPU type R (and hence the packages) were built for,
    so when a x86_64 build of R is run under Rosetta emulation on an
    arm64 Mac, the first is used.
  UTILITIES:
  * R CMD check can now scan package functions for bogus return
    statements, which were possibly intended as return() calls (wish
    of PR#17180, patch by Sebastian Meyer). This check can be
    activated via the new environment variable
    _R_CHECK_BOGUS_RETURN_, true for --as-cran.
  * R CMD build omits tarballs and binaries of previous builds from
    the top-level package directory.  (PR#17828, patch by Sebastian
    Meyer.)
  * R CMD check now runs sanity checks on the use of LazyData, for
    example that a data directory is present and that
    LazyDataCompression is not specified without LazyData and has a
    documented value.  For packages with large LazyData databases
    without specifying LazyDataCompression, there is a reference to
    the code given in 'Writing R Extensions' SS1.1.6 to test the
    choice of compression (as in all the CRAN packages tested a
    non-default method was preferred).
  * R CMD build removes LazyData and LazyDataCompression fields from
    the DESCRIPTION file of packages without a data directory.
  ENCODING-RELATED CHANGES:
  * The parser now treats \Unnnnnnnn escapes larger than the upper
    limit for Unicode points (\U10FFFF) as an error as they cannot be
    represented by valid UTF-8.
    Where such escapes are used for outputting non-printable
    (including unassigned) characters, 6 hex digits are used (rather
    than 8 with leading zeros).  For clarity, braces are used, for
    example \U{0effff}.
  * The parser now looks for non-ASCII spaces on Solaris (as
    previously on most other OSes).
  * There are warnings (including from the parser) on the use of
    unpaired surrogate Unicode points such as \uD834.  (These cannot
    be converted to valid UTF-8.)
  * Functions nchar(), tolower(), toupper() and chartr() and those
    using regular expressions have more support for inputs with a
    marked Latin-1 encoding.
  * The character-classification functions used (by default) to
    replace the system iswxxxxx functions on Windows, macOS and AIX
    have been updated to Unicode 13.0.0.
    The character-width tables have been updated to include new
    assignments in Unicode 13.0.0.
  * The code for evaluating default (extended) regular expressions
    now uses the same character-classification functions as the rest
    of R (previously they differed on Windows, macOS and AIX).
  * There is a build-time option to replace the system's
    wide-character wctrans C function by tables shipped with R: use
    configure option --with-internal-towlower or (on Windows)
  - DUSE_RI18N_CASE in CFLAGS when building R.  This may be needed
    to allow tolower() and toupper() to work with Unicode characters
    beyond the Basic Multilingual Plane where not supported by system
    functions (e.g. on Solaris where it is the new default).
  * R is more careful when truncating UTF-8 and other multi-byte
    strings that are too long to be printed, passed to the system or
    libraries or placed into an internal buffer.  Truncation will no
    longer produce incomplete multibyte characters.
  DEPRECATED AND DEFUNCT:
  * Function plclust() from the package stats and
    package.dependencies(), pkgDepends(), getDepList(),
    installFoundDepends(), and vignetteDepends() from package tools
    are defunct.
  * Defunct functions checkNEWS() and readNEWS() from package tools
    and CRAN.packages() from utils have been removed.
  * R CMD config CXXCPP is defunct (it was deprecated in R 3.6.2).
  * parallel::detectCores() drops support for Irix (retired in 2013).
  * The LINPACK argument to chol.default(), chol2inv(),
    solve.default() and svd() has been defunct since R 3.1.0.  It was
    silently ignored up to R 4.0.3 but now gives an error.
  * Subsetting/indexing, such as ddd[*] or ddd$x on a DOTSXP
    (dot-dot-dot) object ddd has been disabled; it worked by accident
    only and was undocumented.
  BUG FIXES:
  * Many more C-level allocations (mainly by malloc and strdup) are
    checked for success with suitable alternative actions.
  * Bug fix for replayPlot(); this was turning off graphics engine
    display list recording if a recorded plot was replayed in the
    same session.  The impact of the bug became visible if resize the
    device after replay OR if attempted another savePlot() after
    replay (empty display list means empty screen on resize or empty
    saved plot).
  * R CMD check etc now warn when a package exports non-existing S4
    classes or methods, also in case of no "methods" presence.
    (Reported by Alex Bertram; reproducible example and patch by
    Sebastian Meyer in PR#16662.)
  * boxplot() now also accepts calls for labels such as ylab, the
    same as plot().  (Reported by Marius Hofert.)
  * The help page for xtabs() now correctly states that addNA is
    setting na.action = na.pass among others.  (Reported as PR#17770
    by Thomas Soeiro.)
  * The R CMD check &lt;pkg&gt; gives a longer and more comprehensible
    message when DESCRIPTION misses dependencies, e.g., in Imports:.
    (Thanks to the contributors of PR#17179.)
  * update.default() now calls the generic update() on the formula to
    work correctly for models with extended formulas.  (As reported
    and suggested by Neal Fultz in PR#17865.)
  * The horizontal position of leaves in a dendrogram is now correct
    also with center = FALSE.  (PR#14938, patch from Sebastian
    Meyer.)
  * all.equal.POSIXt() no longer warns about and subsequently ignores
    inconsistent "tzone" attributes, but describes the difference in
    its return value (PR#17277).  This check can be disabled _via_
    the new argument check.tzone = FALSE as suggested by Sebastian
    Meyer.
  * as.POSIXct() now populates the "tzone" attribute from its tz
    argument when x is a logical vector consisting entirely of NA
    values.
  * x[[2^31]] &lt;- v now works.  (Thanks to the report and patch by
    Suharto Anggono in PR#17330.)
  * In log-scale graphics, axis() ticks and label positions are now
    computed more carefully and symmetrically in their range,
    typically providing _more_ ticks, fulfilling wishes in PR#17936.
    The change really corresponds to an improved axisTicks() (package
    grDevices), potentially influencing grid and lattice, for
    example.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now correct to at
    least five digits where it was catastrophically wrong,
    previously.
  * sum(df) and similar "Summary"- and "Math"-group member functions
    now work for data frames df with logical columns, notably also of
    zero rows.  (Reported to R-devel by Martin "b706".)
  * unsplit() had trouble with tibbles due to unsound use of rep(NA,
    len)-indexing, which should use NA_integer_ (Reported to R-devel
    by Mario Annau.)
  * pnorm(x, log.p = TRUE) underflows to -Inf slightly later.
  * show(&lt;hidden S4 generic&gt;) prints better and without quotes for
    non-hidden S4 generics.
  * read.table() and relatives treated an "NA" column name as missing
    when check.names = FALSE PR#18007.
  * Parsing strings containing UTF-16 surrogate pairs such as
    "\uD834\uDD1E" works better on some (uncommon) platforms.
    sprintf("%X", utf8ToInt("\uD834\uDD1E")) should now give "1D11E"
    on all platforms.
  * identical(x,y) is no longer true for differing DOTSXP objects,
    fixing PR#18032.
  * str() now works correctly for DOTSXP and related exotics, even
    when these are doomed.
    Additionally, it no longer fails for lists with a class and
    "irregular" method definitions such that e.g. lapply(*) will
    necessarily fail, as currently for different igraph objects.
  * Too long lines in environment files (e.g. Renviron) no longer
    crash R. This limit has been increased to 100,000 bytes.
    (PR#18001.)
  * There is a further workaround for FreeType giving incorrect
    italic font faces with cairo-based graphics devices on macOS.
  * add_datalist(*, force = TRUE) (from package tools) now actually
    updates an existing data/datalist file for new content.  (Thanks
    to a report and patch by Sebastian Meyer in PR#18048.)
  * cut.Date() and cut.POSIXt() could produce an empty last interval
    for breaks = "months" or breaks = "years".  (Reported as PR#18053
    by Christopher Carbone.)
  * Detection of the encoding of 'regular' macOS locales such as
    en_US (which is UTF-8) had been broken by a macOS change:
    fortunately these are now rarely used with en_US.UTF-8 being
    preferred.
  * sub() and gsub(pattern, repl, x, *) now keep attributes of x such
    as names() also when pattern is NA (PR#18079).
  * Time differences ("difftime" objects) get a replacement and a
    rep() method to keep "units" consistent.  (Thanks to a report and
    patch by Nicolas Bennett in PR#18066.)
  * The \RdOpts macro, setting defaults for \Sexpr options in an Rd
    file, had been ineffective since R 2.12.0: it now works again.
    (Thanks to a report and patch by Sebastian Meyer in PR#18073.)
  * mclapply and pvec no longer accidentally terminate parallel
    processes started before by mcparallel or related calls in
    package parallel (PR#18078).
  * grep and other functions for evaluating (extended) regular
    expressions handle in Unicode also strings not explicitly flagged
    UTF-8, but flagged native when running in UTF-8 locale.
  * Fixed a crash in fifo implementation on Windows (PR#18031).
  * Binary mode in fifo on Windows is now properly detected from
    argument open (PR#15600, PR#18031).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1622808000">- The line %{__install} -m 755 -d %{_infodir}
  no longer works in TW or Factory.
  But without that line it works everywhere. So this instruction
  was commented out of the spec file.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1628596800">- CHANGES IN R 4.1.1:
  NEW FEATURES:
  * require(pkg, quietly = TRUE) is quieter and in particular does
    not warn if the package is not found.
  DEPRECATED AND DEFUNCT:
  * Use of ftp:// URIs should be regarded as deprecated, with
    on-going support confined to method = "libcurl" and not routinely
    tested.  (Nowadays no major browser supports them.)
  * The non-default method = "internal" is deprecated for http:// and
    ftp:// URIs for both download.file and url.
  * On Windows, method = "wininet" is deprecated for http://,
    https:// and ftp:// URIs for both download.file and url.  (A
    warning is only given for ftp://.)
    For ftp:// URIs the default method is now "libcurl" if available
    (which it is on CRAN builds).
    method = "wininet" remains the default for http:// and https://
    URIs but if libcurl is available, using method = "libcurl" is
    preferred.
  INSTALLATION:
  * make check now works also without a LaTeX installation.  (Thanks
    to Sebastian Meyer's PR#18103.)
  BUG FIXES:
  * make check-devel works again in an R build configured with
  - -without-recommended-packages.
  * qnbinom(p, size, mu) for large size/mu is correct now in a range
    of cases (PR#18095); similarly for the (size, prob)
    parametrization of the negative binomial.  Also qpois() and
    qbinom() are better and or faster for extreme cases.  The
    underlying C code has been modularized and is common to all four
    cases of discrete distributions.
  * gap.axis is now part of the axis() arguments which are passed
    from bxp(), and hence boxplot().  (Thanks to Martin Smith's
    report and suggestions in PR#18109.)
  * .First and .Last can again be set from the site profile.
  * seq.int(from, to, *) and seq.default(..) now work better in large
    range cases where from-to is infinite where the two boundaries
    are finite.
  * all.equal(x,y) now returns TRUE correctly also when several
    entries of abs(x) and abs(y) are close to .Machine$double.xmax,
    the largest finite numeric.
  * model.frame() now clears the object bit when removing the class
    attribute of a value via na.action (PR#18100).
  * charClass() now works with multi-character strings on Windows
    (PR#18104, fixed by Bill Dunlap).
  * encodeString() on Solaris now works again in Latin-1 encoding on
    characters represented differently in UTF-8.  Support for
    surrogate pairs on Solaris has been improved.
  * file.show() on Windows now works with non-ASCII path names
    representable in the current native encoding (PR#18132).
  * Embedded R on Windows can now find R home directory via the
    registry even when installed only for the current user
    (PR#18135).
  * pretty(x) with finite x now returns finite values also in the
    case where the extreme x values are close in size to the maximal
    representable number .Machine$double.xmax.
    Also, it's been tweaked for very small ranges and when a boundary
    is close (or equal) to zero; e.g., pretty(c(0,1e-317)) no longer
    has negative numbers, currently still warning about a very small
    range, and pretty(2^-(1024 - 2^-1/(c(24,10)))) is more accurate.
  * The error message for not finding vignette files when weaving has
    correct file sizes now. (Thanks to Sebastian Meyer's PR#18154.)
  * dnbinom(20, &lt;large&gt;, 1) now correctly gives 0, and similar cases
    are more accurate with underflow precaution.  (Reported by Francisco Vera Alcivar in PR#18072.)</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635163200">- repaired https://bugzilla.suse.com/show_bug.cgi?id=1191380
  (rpmacros now go to rpmmacrodir)
- minor clean-ups in spec file</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635768000">- CHANGES IN R 4.1.2:
  C-LEVEL FACILITIES:
  * The workaround in headers R.h and Rmath.h (using namespace std;)
    for the Oracle Developer Studio compiler is no longer needed now
    C++11 is required so has been removed.  A couple more usages of
    log() (which should have been std::log()) with an int argument
    are reported on Solaris.
  * The undocumented limit of 4095 bytes on messages from the
    S-compatibility macros PROBLEM and MESSAGE is now documented and
    longer messages will be silently truncated rather than
    potentially causing segfaults.
  * If the R_NO_SEGV_HANDLER environment variable is non-empty, the
    signal handler for SEGV/ILL/BUS signals (which offers recovery
    user interface) is not set. This allows more reliable debugging
    of crashes that involve the console.
  DEPRECATED AND DEFUNCT:
  * The legacy S-compatibility macros PROBLEM, MESSAGE, ERROR, WARN,
    WARNING, RECOVER, ... are deprecated and will be hidden in R
    4.2.0. R's native interface of Rf_error and Rf_warning has long
    been preferred.
  BUG FIXES:
  * .mapply(F, dots, .) no longer segfaults when dots is not a list
    and uses match.fun(F) as always documented; reported by Andrew
    Simmons in PR#18164.
  * hist(&lt;Date&gt;, ...) and hist(&lt;POSIXt&gt;, ...)  no longer pass
    arguments for rect() (such as col and density) to axis().
    (Thanks to Sebastian Meyer's PR#18171.)
  * \Sexpr{ch} now preserves Encoding(ch). (Thanks to report and
    patch by Jeroen Ooms in PR#18152.)
  * Setting the RNG to "Marsaglia-Multicarry" e.g., by RNGkind(), now
    warns in more places, thanks to Andr'e Gillibert's report and
    patch in PR#18168.
  * gray(numeric(), alpha=1/2) no longer segfaults, fixing PR#18183,
    reported by Till Krenz.
  * Fixed dnbinom(x, size=&lt;very_small&gt;, .., log=TRUE) regression,
    reported by Martin Morgan.
  * as.Date.POSIXlt(x) now keeps names(x), thanks to Davis Vaughan's
    report and patch in PR#18188.
  * model.response() now strips an "AsIs" class typically, thanks to
    Duncan Murdoch's report and other discussants in PR#18190.
  * try() is considerably faster in case of an error and long call,
    as e.g., from some do.call().  Thanks to Alexander Kaever's
    suggestion posted to R-devel.
  * qqline(y = &lt;object&gt;) such as y=I(.), now works, see also
    PR#18190.
  * Non-integer mgp par() settings are now handled correctly in
    axis() and mtext(), thanks to Mikael Jagan and Duncan Murdoch's
    report and suggestion in PR#18194.
  * formatC(x) returns length zero character() now, rather than ""
    when x is of length zero, as documented, thanks to Davis
    Vaughan's post to R-devel.
  * removeSource(fn) now retains (other) attributes(fn).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1647000000">- CHANGES IN R 4.1.3:
  NEW FEATURES:
  * The default version of Bioconductor has been changed to 3.14.
    (This is used by setRepositories and the menus in GUIs.)
  UTILITIES:
  * R CMD check --as-cran has a workaround for a bug in versions of
    file up to at least 5.41 which mis-identify DBF files last
    changed in 2022 as executables.
  C-LEVEL FACILITIES:
  * The legacy S-compatibility macros SINGLE_* in R_ext/Constants.h
    (included by R.h) are deprecated and will be removed in R 4.2.0.
  BUG FIXES:
  * Initialization of self-starting nls() models with initialization
    functions following the pre-R-4.1.0 API (without the ...
    argument) works again for now, with a deprecation warning.
  * Fixed quoting of ~autodetect~ in Java setting defaults to avoid
    inadvertent user lookup due to leading ~, reported in PR#18231 by
    Harold Gutch.
  * substr(., start, stop) &lt;- v now treats _negative_ stop values
    correctly.  Reported with a patch in PR#18228 by Brodie Gaslam.
  * Subscripting an array x without dimnames by a
    length(dim(x))-column character matrix gave "random" non-sense,
    now an error; reported in PR#18244 by Mikael Jagan.
  * ...names() now matches names(list(...)) closely, fixing PR#18247.
  * all.equal(*, scale = s) now works as intended when length(s) &gt; 1,
    partly thanks to Michael Chirico's PR#18272.
  * print(x) for long vectors x now also works for named atomic
    vectors or lists and prints the correct number when reaching the
    getOption("max.print") limit; partly thanks to a report and
    proposal by Hugh Parsonage to the R-devel list.
  * all.equal(&lt;selfStart&gt;, *) no longer signals a deprecation
    warning.
  * reformulate(*, response=r) gives a helpful error message now when
    length(r) &gt; 1, thanks to Bill Dunlap's PR#18281.
  * Modifying globalCallingHandlers inside withCallingHandlers() now
    works or fails correctly, thanks to Henrik Bengtsson's PR#18257.
  * hist(&lt;Date&gt;, breaks = "days") and hist(&lt;POSIXt&gt;, breaks = "secs")
    no longer fail for inputs of length 1.
  * qbeta(.001, .9, .009) and similar cases now converge correctly
    thanks to Ben Bolker's report in PR#17746.
  * window(x, start, end) no longer wrongly signals "'start' cannot
    be after 'end'", fixing PR#17527 and PR#18291.
  * data() now checks that its (rarely used) list argument is a
    character vector - a couple of packages passed other types and
    gave incorrect results.
  * which() now checks its arr.ind argument is TRUE rather coercing
    to logical and taking the first element - which gave incorrect
    results in package code.
  * model.weights() and model.offset() more carefully extract their
    model components, thanks to Ben Bolker and Tim Taylor's R-devel
    post.
  * list.files(recursive = TRUE) now shows all broken symlinks
    (previously, some of them may have been omitted, PR#18296).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1650628800">- CHANGES IN R 4.2.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * The formula method of aggregate() now matches the generic in
    naming its first argument x (resolving PR#18299 by Thomas
    Soeiro).
    This means that calling aggregate() with a formula as a named
    first argument requires name formula in earlier versions of R and
    name x now, so portable code should not name the argument (code
    in many packages did).
  * Calling &amp;&amp; or || with either argument of length greater than one
    now gives a warning (which it is intended will become an error).
  * Calling if() or while() with a condition of length greater than
    one gives an error rather than a warning.  Consequently,
    environment variable _R_CHECK_LENGTH_1_CONDITION_ no longer has
    any effect.
  * Windows users should consult the WINDOWS section below for some
    profound changes including
  * Support for 32-bit builds has been dropped.
  * UTF-8 locales are used where available.
  * The default locations for the R installation and personal
    library folder have been changed.
    Thanks to Tomas Kalibera for months of work on the Windows port
    for this release.
  NEW FEATURES:
  * matrix(x, n, m) now warns in more cases where length(x) differs
    from n * m, as suggested by Abby Spurdle and Wolfgang Huber in
    Feb 2021 on the R-devel mailing list.
    This warning can be turned into an error by setting environment
    variable _R_CHECK_MATRIX_DATA_ to TRUE: R CMD check --as-cran
    does so unless it is already set.
  * Function file_test() in package utils gains tests for symlinks,
    readability and writability.
  * capabilities("libxml") is now false.
    The description of capabilities("http/ftp") now reflects that it
    refers to the default method, no longer the internal one.
  * simplify2array() gains an except argument for controlling the
    exceptions used by sapply().
  * Environment variables R_LIBS_USER and R_LIBS_SITE are both now
    set to the R system default if unset or empty, and can be set to
    NULL to indicate an empty list of user or site library
    directories.
  * The warning for axis()(-like) calls in cases of relatively small
    ranges (typically in log-scale situations) is slightly improved
    _and_ suppressed from explicit calls to .axisPars() as has always
    been the intention.
  * The contrasts setter function `contrasts&lt;-` gains an explicit
    default how.many = NULL rather than just using missing(how.many).
  * grid.pretty() gains a new optional argument n = 5.
  * There is a new function .pretty() with option bounds as a
    technical-utility version of pretty().  It and pretty() gain a
    new argument f.min with a better than back-compatible default.
  * Function grDevices::axisTicks() and related functions such as
    graphics::axis() work better, notably for the log scale; partly
    because of the pretty() improvements, but also because care is
    taken e.g., when ylim is finite but diff(ylim) is infinite.
  * nclass.FD() gains a digits option.
  * The R Mathlib internal C function bd0() (called indirectly from a
    dozen probability density and distribution functions such as
    dpois(), dbinom(), dgamma(), pgamma() _etc_) has been
    complemented by a more sophisticated and (mostly) more accurate C
    function ebd0(), currently called only by internal dpois_raw()
    improving accuracy for R level dpois() and potentially others
    calling it such as dnbinom(), dgamma() or pgamma().  (Thanks to
    Morten Welinder's PR#15628.)
  * write.ftable() gains sep = " " argument as suggested by Thomas
    Soeiro.
  * The names of the locale categories supported by R's
    Sys.getlocale() and Sys.setlocale() are now provided by variable
    .LC.categories in the base namespace.
  * The Date and POSIXt methods for hist() and the histogram method
    for plot() now also use the new default col = "lightgray" in
    consistency with the corresponding change to hist()'s default for
    R 4.0.0.
  * hist.default() gains new fuzz argument, and the histogram plot
    method no longer uses fractional axis ticks when displaying
    counts ("Frequency").
  * mapply() and hence Map() now also obey the "max-or-0-if-any"
    recycling rule, such that, e.g., Map(`+`, 1:3, 1[0]) is valid
    now.
  * as.character(&lt;obj&gt;) for "hexmode" or "octmode" objects now
    fulfils the important basic rule as.character(x)[j] ===
    as.character(x[j]).
  * The set utility functions, notably intersect() have been tweaked
    to be more consistent and symmetric in their two set arguments,
    also preserving a common mode.
  * substr(ch, start,end) &lt;- new now e.g., preserves names(ch); ditto
    for substring(), thanks to a patch from Brodie Gaslam.
  * plot(&lt;lm&gt;) gains a extend.ylim.f argument, in partial response to
    PR#15285; further PR#17784 is fixed thanks to several
    contributors and a patch by Elin Waring.  The Cook's dist
    contours get customizable via cook.col and cook.lty with a
    different default color and their legend is nicer by default and
    customizable via cook.legendChanges.
  * Attempting to subset an object that is not subsettable now
    signals an error of class notSubsettableError. The
    non-subsettable object is contained in the object field of the
    error condition.
  * Subscript-out-of-bounds errors are now signaled as errors of
    class subscriptOutOfBoundsError.
  * Stack-overflow errors are now signaled as errors inheriting from
    class stackOverflowError. See ?stackOverflowError for more
    details.
  * New partly experimental Sys.setLanguage() utility, solving the
    main problem of PR#18055.
  * gettext() and gettextf() get a new option trim = TRUE which when
    set to false allows translations for strings such as "Execution
    halted\n" typical for C code.
  * An experimental implementation of hash tables is now available.
    See ?hashtab for more details.
  * identical() gains a extptr.as.ref argument for requesting that
    external pointer objects be compared as reference objects.
  * reorder() gets an argument decreasing which it passes to sort()
    for level creation; based on the wish and patch by Thomas Soeiro
    in PR#18243.
  * as.vector() gains a data.frame method which returns a simple
    named list, also clearing a long standing 'FIXME' to enable
    as.vector(&lt;data.frame&gt;, mode="list").  This breaks code relying
    on as.vector(&lt;data.frame&gt;) to return the unchanged data frame.
  * legend() is now vectorized for arguments cex, x.intersp, and
    text.width.  The latter can now also be specified as a vector
    (one element for each column of the legend) or as NA for
    computing a proper column wise maximum value of strwidth(legend).
    The argument y.intersp can be specified as a vector with one
    entry for each row of the legend.
    legend() also gains new arguments title.cex and title.font.
    Thanks to Swetlana Herbrandt.
  * Deparsing no longer remaps attribute names dim, dimnames, levels,
    names and tsp to historical S-compatible names (which structure()
    maps back).
  * sample() and sample.int() have additional sanity checks on their
    size and n arguments.
    all.equal.numeric() gains a sanity check on its tolerance
    argument - calling all.equal(a, b, c) for three numeric vectors
    is a surprisingly common error.
    mean(na.rm =), rank(na.last =), barplot(legend.text =),
    boxplot(), contour(drawlabels =), polygon(border =) and
    methods::is(class2 =) have more robust sanity checks on their
    arguments.
    R CMD Rd2pdf (used by R CMD check) has a more robust sanity check
    on the format of \alias{} commands.
  * psigamma(x, deriv) for negative x now also works for deriv = 4
    and 5; their underlying C level dpsifn() is documented in
    'Writing R Extensions'.
  * The HTML help system now uses HTML5 (wish of PR#18149).
  * ks.test() now provides exact p-values also with ties and MC
    p-values in the two-sample (Smirnov) case.  By Torsten Hothorn.
  * ks.test() gains a formula interface, with y ~ 1 for the
    one-sample (Kolmogorov) test and y ~ group for the two-sample
    (Smirnov) test.  Contributed by Torsten Hothorn.
  * The return value from ks.test() now has class c("ks.test",
    "htest") - packages using try() need to take care to use
    inherits() and not == on the class.
  * New functions psmirnov(), qsmirnov() and rsmirnov() in package
    stats implementing the asymptotic and exact distributions of the
    two-sample Smirnov statistic.
  * iconv() now allows sub = "c99" to use C99-style escapes for UTF-8
    inputs which cannot be converted to encoding to.
  * In a forward pipe |&gt; expression it is now possible to use a named
    argument with the placeholder _ in the rhs call to specify where
    the lhs is to be inserted.  The placeholder can only appear once
    on the rhs.
  * The included LAPACK sources have been updated to version 3.10.0,
    except for the four Fortran 77 routines which 3.10.0 has
    re-implemented in Fortran 90 (where the older versions have been
    retained as the R build process does not support Fortran 90).
  * path.expand() and most other uses of tilde expansion now warn if
    a path would be too long if expanded.  (An exception is
    file.exists(), which silently returns false.)
  * trunc(&lt;Date&gt;, *) now supports units = "months" or "years" for
    consistency with the POSIXt method, thanks to Dirk Eddelbuettel's
    proposal in PR#18099.
  * list2DF() now checks that its arguments are of the same length,
    rather than use recycling.
  * The HTML help system has several new features: LaTeX-like math
    can be typeset using either KaTeX or MathJax, usage and example
    code is highlighted using Prism, and for dynamic help the output
    of examples and demos can be shown within the browser if the
    knitr package is installed. These features can be disabled by
    setting the environment variable _R_HELP_ENABLE_ENHANCED_HTML_ to
    a false value.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 15
    and so packages that provide graphics devices should be
    reinstalled.
  * The grid package now allows the user to specify a "vector" of
    pattern fills.  The fill argument to gpar() accepts a list of
    gradients and/or patterns and the functions linearGradient(),
    radialGradient(), and pattern() have a new group argument.
    Points grobs (data symbols) can now also have a pattern fill.
    The grobCoords() function now returns a more informative and
    complex result.
  * The grid package has new functions for drawing isolated groups:
    grid.group(), grid.define(), and grid.use().  These functions add
    compositing operators and affine transformations to R's graphics
    capabilities.
    The grid package also has new functions for stroking and filling
    paths: grid.stroke(), grid.fill(), and grid.fillStroke().
    A new function as.path() allows the user to specify the fill rule
    for a path that is to be used for clipping, stroking, or filling;
    available options are "winding" and "evenodd".  A new function
    as.mask() allows the user to specify the type of a mask;
    available options are "alpha" and "luminance".
    These new features are only supported so far (at most) on the
    Cairo-based graphics devices and on the pdf() device.
  * dev.capabilities() reports on device support for the new
    features.
  * par() now warns about unnamed non-character arguments to prevent
    misuse such as {usr &lt;- par("usr"); par(usr)}.
  INSTALLATION:
  * Facilities for accessing ftp:// sites are no longer tested
    (except _pro tem_ for curlGetHeaders()) as modern browsers have
    removed support.
  * R can now be built with DEFS = -DSTRICT_R_HEADERS .
  PACKAGE INSTALLATION:
  * R CMD INSTALL no longer tangles vignettes. This completes an R
    CMD build change in R 3.0.0 and affects packages built before R
    3.0.2. Such packages should be re-made with R CMD build to have
    the tangled R code of vignettes shipped with the tarball.
  * USE_FC_LEN_T will become the default: this uses the correct
    prototypes for Fortran BLAS/LAPACK routines called from C/C++,
    and requires adjustment of most such calls - see 'Writing R
    Extensions' SS6.6.2.  (This has been supported since R 3.6.2.)
  * Package installation speed for packages installed with
    keep.source has been improved. This resolve the issue reported by
    Ofek Shilon in PR#18236.
  UTILITIES:
  * R CMD check can optionally report files/directories left behind
    in home, /tmp (even though TMPDIR is set) and other directories.
    See the "R Internals" manual for details.
  * R CMD check now reports byte-compilation errors during
    installation.  These are not usually fatal but may result in
    parts of the package not being byte-compiled.
  * _R_CHECK_DEPENDS_ONLY_ can be applied selectively to examples,
    tests and/or vignettes in R CMD check: see the "R Internals"
    manual.
  * _R_CHECK_SRC_MINUS_W_IMPLICIT_ now defaults to true: recent
    versions of Apple clang on macOS have made implicit function
    declarations in C into a compilation error.
  * R CMD check --as-cran makes use of the environment variable
    AUTORECONF.  See the "R Internals" manual SS8 for further details.
  * R CMD check --use-valgrind also uses valgrind when re-building
    vignettes as some non-Sweave vignettes unhelpfully comment out
    all their code when R CMD check runs vignettes.
  * Errors in re-building vignettes (unless there are LaTeX errors)
    are reported by R CMD check as ERROR rather than WARNING when
    running vignettes has been skipped (as it frequently is in CRAN
    checks and by --as-cran).
  * R CMD Rd2pdf gains a --quiet option that is used by R CMD build
    when building the PDF package manual.
  * R CMD Rd2pdf now always runs LaTeX in batch mode, consistent with
    Texinfo &gt;= 6.7. The --batch option is ignored.
  * R CMD build and R CMD check now include the Rd file name and line
    numbers in the error message of an \Sexpr evaluation failure.
  * For packages using the \doi Rd macro (now an install-time \Sexpr)
    but no other dynamic Rd content, R CMD build now produces a
    smaller tarball and is considerably faster - skipping temporary
    package installation.
  C-LEVEL FACILITIES:
  * The non-API header R_ext/R-ftp-http.h is no longer provided, as
    the entry points it covered are now all defunct.
  * A number of non-API declarations and macro definitions have been
    moved from the installed header Rinternals.h to the internal
    header Defn.h. Packages that only use entry points and
    definitions documented to be part of the API as specified in
    'Writing R Extensions' SS6 should not be affected.
  * The macro USE_RINTERNALS no longer has any effect when compiling
    package code.  Packages which also use R_NO_REMAP will need to
    ensure that the remapped names are used for calls to API
    functions that were formerly also made available as macros.
  * The deprecated legacy S-compatibility macros PROBLEM, MESSAGE,
    ERROR, WARN, WARNING, RECOVER, ... are no longer defined in
    R_exts/RS.h (included by R.h).  Replace these by calls to
    Rf_error and Rf_warning (defined in header R_ext/Error.h included
    by R.h).
    Header R_ext/RS.h no longer includes R_ext/Error.h.
  * Header R_ext/Constants.h (included by R.h) when included from C++
    now includes the C++ header cfloat rather than the C header
    float.h (now possible as C++11 is required).
  * The legacy S-compatibility macros DOUBLE_* in R_ext/Constants.h
    (included by R.h) are deprecated.
  * The deprecated S-compatibility macros SINGLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * R_Calloc, R_Free and R_Realloc are preferred to their unprefixed
    forms and error messages now use the prefix. These forms were
    introduced in R 3.4.0 and are available even when
    STRICT_R_HEADERS is defined.
  * rmultinom has been documented in 'Writing R Extensions' SS6 so is
    now part of the R API.
  * Similarly, Rtanpi, called from R level tanpi() is now part of the
    R API.
  * The long-deprecated, undocumented and non-API entry point call_R
    is no longer declared in R_ext/RS.h (included by R.h).
  * The header S.h which has been unsupported since Jan 2016 has been
    removed.  Use R.h instead.
  DEPRECATED AND DEFUNCT:
  * The (non-default and deprecated) method = "internal" for
    download.file() and url() no longer supports http:// nor ftp://
    URIs.  (It is used only for file:// URIs.)
    On Windows, download.file(method = "wininet") no longer supports
    ftp:// URIs.  (It is no longer the default method, which is
    "libcurl" and does.)
    On Windows, the deprecated method = "wininet" now gives a warning
    for http:// and https:// URIs for both download.file() and url().
    (It is no longer the default method.)
  * On Windows, the command-line option --max-mem-size and
    environment variable R_MAX_MEM_SIZE are defunct.  The memory
    allocation limit was important for 32-bit builds, but these are
    no longer supported.
  * default.stringsAsFactors() is now formally deprecated, where that
    was only mentioned on its regular help page, previously.  So it
    now gives a warning if called.
  * unix.time() is defunct now; it had been deprecated since R 3.4.0.
  BUG FIXES:
  * Setting digits = 0 in format(), print.default() (and hence
    typically print()) or options() is again invalid.  Its behaviour
    was platform-dependent, and it is unclear what "zero significant
    digits" should mean (PR#18098).
  * Messages from C code in the cairo section of package grDevices
    are now also offered for translation, thanks to Michael Chirico's
    PR#18123.
  * mean(x) with finite x now is finite also without "long.double"
    capability.
  * R CMD Rd2pdf no longer leaves an empty build directory behind
    when it aborts due to an already existing output file.  (Thanks
    to Sebastian Meyer's PR#18141.)
  * density(x, weights = w, na.rm = TRUE) when anyNA(x) is true, now
    removes weights "in parallel" to x, fixing PR#18151, reported by
    Matthias Gondan.  Additionally, it gets a subdensity option.
  * Conversion of \Sexpr[]{&lt;expR&gt;} to LaTeX or HTML no longer
    produces long blocks of empty lines when &lt;expR&gt; itself contains
    several lines all producing empty output.  Thanks to a report and
    patch by Ivan Krylov posted to R-devel.
  * R CMD build no longer fails if a package vignette uses child
    documents and inst/doc exists.  (Thanks to Sebastian Meyer's
    PR#18156.)
  * When an R documentation ('help' source) file man/foo.Rd in a
    package has \donttest{..} examples with a syntax error, it is now
    signalled as ERROR and with correct line numbers relating to the
  * -Ex.R file, thanks to Duncan Murdoch and Sebastian Meyer's
    reports and patch proposals in PR#17501.
  * Improved determination of the correct translation domain in
    non-base packages, addressing the combination of PR#18092 and
    PR#17998 (#c6) with reports and _augmented_ patch #2904 by
    Suharto Anggono.
    Note that "R-base" is no longer the default domain e.g., for
    top-level calls to gettext(); rather translation needs explicit
    domain = * specification in such cases.
  * identical(attrib.as.set=FALSE) now works correctly with data
    frames with default row names (Thanks to Charlie Gao's PR#18179).
  * txtProgressBar() now enforces a non-zero width for argument char,
    without which no progress can be visible.
  * dimnames(table(d)) is more consistent in the case where d is a
    list with a single component, thanks to Thomas Soeiro's report to
    R-devel.
    Further, table(d1, d2) now gives an error when d1 and d2 are data
    frames as suggested by Thomas in PR#18224.
  * Fix for drawing semi-transparent lines and fills on the native
    Windows graphics device (PR#18219 and PR#16694).  Thanks to Nick
    Ray for helpful diagnosis on Bugzilla.
  * The deparser now wraps sub-expressions such as if(A) ..  with
    parentheses when needed; thanks to Duncan Murdoch's PR#18232 and
    Lionel Henry's patches there.
  * remove.packages() no longer tries to uninstall Priority: base
    packages, thanks to a report and suggestions by Colin Fay in
    PR#18227.
  * win.metafile() now has xpinch and ypinch arguments so that the
    user can override Windows' (potentially wrong) guess at device
    dimensions.
  * x[i] and x[[i]] for non-integer i should now behave in all cases
    as always documented: the index used is equivalent to
    as.integer(i) unless that would overflow where trunc(i) is used
    instead; thanks to Suharto Anggono's report and patch proposals
    in PR#17977.
  * asOneSidedFormula() now associates the resulting formula with the
    global environment rather than the evaluation environment created
    for the call.
  * &lt;bibentry&gt;$name now matches the field name case-insensitively,
    consistent with bibentry() creation and the replacement method.
  * cbind() failed to detect some length mismatches with a mixture of
    time-series and non-time-series inputs.
  * The default LaTeX style file Sweave.sty used by the RweaveLatex
    driver no longer loads the obsolete ae package; thanks to a
    report by Thomas Soeiro in PR#18271.  Furthermore, it now skips
    \usepackage[T1]{fontenc} for engines other than pdfTeX (if
    detected) or if the new [nofontenc] option is used.
  * smooth.spline() now stores its logical cv argument more safely,
    fixing a rare bug when printing, and also stores n.
  * smooth.spline(x,y,*) now computes the cv.crit statistic
    correctly, also when is.unsorted(x), fixing PR#18294.
  * The data.frame method of rbind() now warns when binding
    not-wholly-recycling vectors, by analogy to the default method
    (for matrices).
  * setAs() finds the correct class for name to when multiple
    packages define a class with that name. Thanks to Gabor Csardi
    for the report.
  * Fix for detaching a package when two classes of the same name are
    present in method signatures for the same generic. Thanks to
    Gabor Csardi for the report.
  * match.arg("", c("", "a", "B")) gives a better error message, in
    part from PR#17959, thanks to Elin Waring.
  * R CMD Sweave --clean no longer removes pre-existing files or
    subdirectories (PR#18242).
  * The quartz() device no longer splits polylines into subpaths.
    That has caused narrowly-spaced lines with many points to always
    look solid even when dashed line type was used due to dash phase
    restarts.
  * Deparsing constructs such as quote(1 + `!`(2) + 3) works again as
    before R 3.5.0, thanks to the report and patch in PR#18284 by
    Suharto Anggono.
  * as.list(f) for a factor f now keeps names(f), fixing PR#18309.
  * qbeta(.001, .9, .009) and analogous qf() calls now return a
    correct value instead of NaN or wrongly 1, all with a warning;
    thanks to the report by Ludger Goeminne in PR#18302.
  * plot.lm() failed to produce the plot of residuals vs.  factor
    levels (i.e., which=5 when leverages are constant) for models
    with character predictors (PR#17840).
  * interaction.plot(..., xtick = TRUE) misplaced the x-axis line
    (PR#18305).
  * Not strictly fixing a bug, format()ing and print()ing of
    non-finite Date and POSIXt values NaN and +/-Inf no longer show
    as NA but the respective string, e.g., Inf, for consistency with
    numeric vector's behaviour, fulfilling the wish of PR#18308.
  * R CMD check no longer runs test scripts generated from
    corresponding .Rin files twice and now signals an ERROR if
    processing an .Rin script fails.
  * tools::Rd2txt() used for plain-text help pages now renders \hrefs
    (if tools::Rd2txt_options(showURLs = TRUE)) and \urls with
    percent-encoding and standards-compliant delimiting style (angle
    brackets and no URL: prefix).  \email is now rendered with a
    mailto: prefix.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1655985600">- CHANGES IN R 4.2.1:
  NEW FEATURES:
  * New function utils::findCRANmirror() to find out if a CRAN mirror
    has been selected, otherwise fallback to the main site.  This
    behaves in the same way as tools::CRAN_package_db() and is
    intended for packages wishing to access CRAN for purposes other
    than installing packages.
    The need for this was shown by a day when the main CRAN website
    was offline and a dozen or so packages which had its URL
    hardcoded failed their checks.
  INSTALLATION on a UNIX-ALIKE:
  * The libraries searched for by --with-blas (without a value) now
    include BLIS (after OpenBLAS but before ATLAS).  And on macOS,
    the Accelerate framework (after ATLAS).  (This is patterned after
    the AX_BLAS macro from the Autoconf Archive.)
  * The included LAPACK sources have been updated to 3.10.1.
  UTILITIES:
  * The (full path to) the command tidy to be used for HTML
    validation can be set by environment variable R_TIDYCMD.
  * Setting environment variable _R_CHECK_RD_VALIDATE_RD2HTML_ to a
    false value will override R CMD check --as-cran and turn off HTML
    validation.  This provides a way to circumvent a problematic
    tidy.
    The 2006 version that ships with macOS is always skipped.
  C-LEVEL FACILITIES:
  * The undocumented legacy declarations of Sint, Sfloat, SINT_MAX
    and SINT_MIN in header R.h are deprecated.
  BUG FIXES:
  * fisher.test(d) no longer segfaults for "large" d; fixing PR#18336
    by preventing/detecting an integer overflow reliably.
  * tar(., files=*) now produces correctly the warning about invalid
    uid or gid of files, fixing PR#18344, reported by Martin Morgan.
  * tk_choose.files() with multi = FALSE misbehaved on paths
    containing spaces (PR#18334) (regression introduced in R 4.0.0).
  * sort(x, partial = ind, *) now works correctly notably for the
    non-default na.last = FALSE or TRUE, fixing PR#18335 reported by
    James Edwards.
  * Environment variable _R_CHECK_XREFS_REPOSITORIES_ is only used
    for checking .Rd cross-references in R CMD check (as documented)
    and not for other uses looking for a CRAN mirror.
  * The search for a CRAN mirror when checking packages now uses
    getOption("repos") if that specifies a CRAN mirror, even when it
    does not also specify all three Bioconductor repositories (as was
    previously required).
  * The HTML code generated by tools::Rd2HTML() has been improved to
    pass tidy 5.8.0.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1667217600">- CHANGES IN R 4.2.2:
  NEW FEATURES:
  * tools::Rdiff(useDiff = TRUE) checks for the presence of an
    external diff command and switches to useDiff = FALSE if none is
    found.  This allows R CMD Rdiff to always work.
  * On Windows, environment variable R_LIBCURL_SSL_REVOKE_BEST_EFFORT
    can be used to switch to only 'best-effort' SSL certificate
    revocation checks with the default "libcurl" download method.
    This reduces security, but may be needed for downloads to work
    with MITM proxies (PR#18379).
  * (macOS) The run-time check for libraries from XQuartz for X11 and
    Tcl/Tk no longer uses otool from the Apple Developer Tools
    (PR#18400).
  * The LaTeX style for producing the PDF manuals, Rd.sty, now loads
    the standard amsmath, amsfonts and amssymb packages for greater
    coverage of math commands in the Rd \eqn and \deqn macros.  The
    \mathscr LaTeX command is also provided (via the mathrsfs
    package, if available, or the amsfonts bundle otherwise),
    fulfilling the wish of PR#18398.
  * (Windows) The default format of readClipboard() and
    writeClipboard() has been changed to 13 (CF_UNICODETEXT).
  INSTALLATION on a UNIX-ALIKE:
  * The PDF manuals (if built) can be compacted by the new target
    make compact-pdf (at the top level or in directory doc/manual).
  * There is now configure support for LLVM clang 15 on Linux, which
    defaults to position-independent (PIE) executables whereas
    gfortran does not.
  * Many small changes to ease compilation (and suppress warnings)
    with LLVM clang 15.
  BUG FIXES:
  * Rscript -e would fail if stdin were closed (Reported by Henrik
    Bengtsson.)
  * qt(*, log.p=TRUE) in outer tails no longer produces NaN in its
    final steps, thus fixing PR#18360.
  * tools::Rd2latex() now escapes hashes and ampersands when writing
    URLs, fixing LaTeX errors with such URLs in \tabular.
  * When isGeneric(f, fdef=*) is used with mismatching names, the
    warning is better understandable; reported (with fix) in PR#18370
    by Gabe Becker.
  * poly(x, n) now works again (and is now documented) when x is a
    "Date" or "POSIXct" object, or of another class while fulfilling
    mode(x) == "numeric".  This also enables poly(x, *, raw=TRUE) for
    such variables.  Reported by Michael Chirico to R-devel.
  * write.table(), write.csv() and write.csv2() restore their
    numerical precision (internal equivalent of digits = 15) after an
    interrupt (PR#18384).
  * One can now read also byte FF from a clipboard connection
    (PR#18385).
  * source("") and source(character()) now give more helpful error
    messages.
  * R CMD check --as-cran set _R_CHECK_TIMINGS_ too late to have the
    intended effect.
  * as.POSIXlt(x) now also works with very large dates x, fixing
    PR#18401 reported by Hannes M"uhleisen.
  * Files can now be extracted even from very large zip archives
    (PR#18390, thanks to Martin Jakt).
  * Non-finite objects of class "POSIXlt" are now correctly coerced
    to classes "Date" and "POSIXct"; following up on the extension to
    format() them correctly.
  * Added methods for is.finite(), is.infinite() and is.nan() for
    "POSIXlt" date-time objects.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1678881600">- CHANGES IN R 4.2.3:
  C-LEVEL FACILITIES:
  * The definition of DL_FUNC in R_ext/Rdynload.h has been changed to
    be fully C-compliant.  This means that functions loaded _via_ for
    example R_GetCCallable need to be cast to an appropriate type if
    they have any arguments.
  * .Machine has a new element sizeof.time_t to identify old systems
    with a 32-bit type and hence a limited range of date-times (and
    limited support for dates millions of years from present).
  PACKAGE INSTALLATION:
  * (Windows) The default C++ standard had accidentally been left at
    C++11 when it was changed to C++14 on Unix.
  BUG FIXES:
  * As "POSIXlt" objects may be "partially filled" and their list
    components meant to be recycled, length() now is the length of
    the longest component.
  * as.POSIXlt.Date() could underflow for dates in the far past (more
    than half a million years BCE).
  * as.Date.POSIXlt(x) would return "1970-01-01" instead of NA in R
    4.2.2, e.g., for
    x &lt;- as.POSIXlt(c("2019-01-30","2001-1-1"))
    x$mon &lt;- c(0L, NA); as.Date(x)
  * R CMD check failed to apply enabled _R_CHECK_SUGGESTS_ONLY_ to
    examples and vignettes (regression in R 4.2.0).
  * R CMD check did not re-build vignettes in separate processes by
    default (regression in R 4.2.0).
  * Running examples from HTML documentation now restores previous
    knitr settings and options (PR#18420).
  * Quartz: fonts are now located using Core Graphics API instead of
    deprecated ATS which is no longer supported in the macOS 13 SDK
    (PR#18426).  This also addresses an issue where the currently
    used font in the Quartz device context was not correctly
    retained.
  * (Windows) Math symbols in text drawing functions are again
    rendered correctly (PR#18440).  This fixes a regression in R
    4.2.1 caused by a fix in PR#18382 which uncovered an issue in
    GraphApp due to which the symbol charset was not used with TT
    Symbol font face.
  * (Windows) Installing a package with a src/Makefile.{win,ucrt}
    file includes ~/.R/Makevars.win64 in the search for user
    makevars, as documented in "R Installation and Administration"
    and done for packages with a src/Makevars.{win,ucrt} file.
  * format(&lt;POSIXlt_w/_unbalanced_sec&gt;, "....%OS&lt;n&gt;") with n &gt; 0 no
    longer accidentally uses the unbalanced seconds, thanks to
    Suharto Anggono's report (including patch) in PR#18448.
  * solve.default(a, b) works around issues with some versions of
    LAPACK when a contains NA or NaN values.
  * When UseMethod() cannot dispatch, it no longer segfaults
    producing the error message in case of a long class(), thanks to
    Joris Vankerschaver's report (including patch) in PR#18447.
  * When example(foo, ..) produces graphics on an interactive device
    it needs to open itself, it now leaves devAskNewPage() unchanged
    even when it was FALSE, thus fixing a 14 years old '&lt;FIXME&gt;'.
  * packageDescription() again catches errors from encoding
    conversions. This also fixes broken packageVersion() in C locale
    on systems where iconv does not support transliteration.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1681128000">- add patch to build with libcurl &gt;= 8</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1682078400">- CHANGES IN R 4.3.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Calling &amp;&amp; or || with LHS or (if evaluated) RHS of length greater
    than one is now always an error, with a report of the form
    'length = 4' in coercion to 'logical(1)'
    Environment variable _R_CHECK_LENGTH_1_LOGIC2_ no longer has any
    effect.
  NEW FEATURES:
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.10.1.  (This caused some platform-dependent
    changes to package check output.)  And then to the sources from
    LAPACK version 3.11.0 (with changes only to double complex
    subroutines).
  * The included LAPACK sources have been updated to include the four
    Fortran 90 routines rather than their Fortran 77 predecessors.
    This may give some different signs in SVDs or
    eigendecompositions..  (This completes the transition to LAPACK
    3.10.x begun in R 4.2.0.)
  * The LAPACK sources have been updated to version 3.11.0.  (No new
    subroutines have been added, so this almost entirely bug fixes:
    Those fixes do affect some computations with NaNs, including R's
    NA.)
  * The parser now signals _classed_ errors, notably in case of the
    pipe operator |&gt;.  The error object and message now give line and
    column numbers, mostly as proposed and provided by Duncan Murdoch
    in PR#18328.
  * toeplitz() is now generalized for asymmetric cases, with a
    toeplitz2() variant.
  * xy.coords() and xyz.coords() and consequently, e.g., plot(x,y,
    log = "y") now signal a _classed_ warning about negative values
    of y (where log(.) is NA).  Such a warning can be specifically
    suppressed or caught otherwise.
  * Regular expression functions now check more thoroughly whether
    their inputs are valid strings (in their encoding, e.g. in
    UTF-8).
  * The performance of grep(), sub(), gsub() and strsplit() has been
    improved, particularly with perl = TRUE and fixed = TRUE.  Use of
    useBytes = TRUE for performance reasons should no longer be
    needed and is discouraged: it may lead to incorrect results.
  * apropos() gains an argument dot_internals which is used by the
    completion (help(rcompgen)) engine to also see base internals
    such as .POSIXct().
  * Support in tools::Rdiff() for comparing uncompressed PDF files is
    further reduced - see its help page.
  * qqplot(x, y, ...) gains conf.level and conf.args arguments for
    computing and plotting a confidence band for the treatment
    function transforming the distribution of x into the distribution
    of y (Switzer, 1976, _Biometrika_). Contributed by Torsten
    Hothorn.
  * Performance of package_dependencies() has been improved for cases
    when the number of dependencies is large.
  * Strings newly created by gsub(), sub() and strsplit(), when any
    of the inputs is marked as "bytes", are also marked as "bytes".
    This reduces the risk of creating invalid strings and accidental
    substitution of bytes deemed invalid.
  * Support for readLines(encoding = "bytes") has been added to allow
    processing special text files byte-by-byte, without creating
    invalid strings.
  * iconv(from = "") now takes into account any declared encoding of
    the input elements and uses it in preference to the native
    encoding.  This reduces the risk of accidental creation of
    invalid strings, particularly when different elements of the
    input have different encoding (including "bytes").
  * Package repositories in getOption("repos") are now initialized
    from the repositories file when utils is loaded (if not already
    set, e.g., in .Rprofile).  (From a report and patch proposal by
    Gabriel Becker in PR#18405.)
  * compactPDF() gets a verbose option.
  * type.convert() and hence read.table() get new option tryLogical =
    TRUE with back compatible default.  When set to false, converts
    "F" or "T" columns to character.
  * Added new unit prefixes "R" and "Q" for abbreviating
    (unrealistically large) sizes beyond 10^{27} in standard = "SI",
    thanks to Henrik Bengtsson's PR#18435.
  * as.data.frame()'s default method now also works fine with atomic
    objects inheriting from classes such as "roman", "octmode" and
    "hexmode", such fulfilling the wish of PR#18421, by Benjamin
    Feakins.
  * The as.data.frame.vector() utility now errors for wrong-length
    row.names.  It warned for almost six years, with "Will be an
    error!".
  * sessionInfo() now also contains La_version() and reports codepage
    and timezone when relevant, in both print() and toLatex() methods
    which also get new option tzone for displaying timezone
    information when locale = FALSE.
  * New function R_compiled_by() reports the C and Fortran compilers
    used to build R, if known.
  * predict(&lt;lm&gt;, newdata = *) no longer unnecessarily creates an
    offset of all 0s.
  * solve() for complex inputs now uses argument tol and by default
    checks for 'computational singularity' (as it long has done for
    numeric inputs).
  * predict(&lt;rank-deficient lm&gt;, newdata=*) now obeys a new argument
    rankdeficient, with new default "warnif", warning only if there
    are non-estimable cases in newdata.  Other options include
    rankdeficient = "NA", predicting NA for non-estimable newdata
    cases.  This addresses PR#15072 by Russ Lenth and is based on his
    original proposal and discussions in PR#16158 also by David Firth
    and Elin Waring.  Still somewhat experimental.
  * Rgui console implementation now works better with the NVDA screen
    reader when the full blinking cursor is selected.  The underlying
    improvements in cursor handling may help also other screen
    readers on Windows.
  * The drop-field control in GraphApp can now be left with the TAB
    key and all controls can be navigated in the reverse order using
    the Shift+TAB key, improving accessibility of the Rgui
    configuration editor.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now fully accurate
    (instead of to "only" minimally five digits).
  * demo(error.catching) now also shows off withWarnings() and
    tryCatchWEMs().
  * As an experimental feature the placeholder _ can now also be used
    in the rhs of a forward pipe |&gt; expression as the first argument
    in an extraction call, such as _$coef. More generally, it can be
    used as the head of a chain of extractions, such as _$coef[[2]].
  * Spaces in the environment variable used to choose the R session's
    temporary directory (TMPDIR, TMP and TEMP are tried in turn) are
    now fatal.  (On Windows the 'short path' version of the path is
    tried and used if that does not contain a space.)
  * all.equal.numeric() gets a new optional switch giveErr to return
    the numeric error as attribute.  Relatedly,
    stopifnot(all.equal&lt;some&gt;(a, b, ..)) is as "smart" now, as
    stopifnot(all.equal(....)) has been already, thus allowing
    customized all.equal&lt;Some&gt;() wrappers.
  * R on Windows is now able to work with path names longer than 260
    characters when these are enabled in the system (requires at
    least Windows 10 version 1607).  Packages should be updated to
    work with long paths as well, instead of assuming PATH_MAX to be
    the maximum length.  Custom front-ends and applications embedding
    R need to update their manifests if they wish to allow this
    feature.  See
    &lt;https://blog.r-project.org/2023/03/07/path-length-limit-on-windows&gt;
    for more information.
  * 'Object not found' and 'Missing argument' errors now give a more
    accurate error context. Patch provided by Lionel Henry in
    PR#18241.
  * The @ operator is now an S3 generic. Based on contributions by
    Tomasz Kalinowski in PR#18482.
  * New generic chooseOpsMethod() provides a mechanism for objects to
    resolve cases where two suitable methods are found for an Ops
    Group Generic. This supports experimenting with alternative
    object systems. Based on contributions by Tomasz Kalinowski in
    PR#18484.
  * inherits(x, what) now accepts values other than a simple
    character vector for argument what. A new generic, nameOfClass(),
    is called to resolve the class name from what. This supports
    experimenting with alternative object systems. Based on
    contributions by Tomasz Kalinowski in PR#18485.
  * Detection of BLAS/LAPACK in use (sessionInfo()) with FlexiBLAS
    now reports the current backend.
  * The "data.frame" method for subset() now warns about extraneous
    arguments, typically catching the use of = instead of == in the
    subset expression.
  * Calling a:b when numeric a or b is longer than one may now be
    made into an error by setting environment variable
    _R_CHECK_LENGTH_COLON_ to a true value, along the proposal in
    PR#18419 by Henrik Bengtsson.
  * density(x, weights = *) now warns if automatic bandwidth
    selection happens without using weights; new optional warnWbw may
    suppress the warning.  Prompted by Christoph Dalitz' PR#18490 and
    its discussants.
  * rm(list = *) is faster and more readable thanks to Kevin Ushey's
    PR#18492.
  * The plot.lm() function no longer produces a normal Q-Q plot for
    GLMs. Instead it plots a half-normal Q-Q plot of the absolute
    value of the standardized deviance residuals.
  * The print() method for class "summary.glm" no longer shows
    summary statistics for the deviance residuals by default.  Its
    optional argument show.residuals can be used to show them if
    required.
  * The tapply() function now accepts a data frame as its X argument,
    and allows INDEX to be a formula in that case. by.data.frame()
    similarly allows INDICES to be a formula.
  * The performance of df[j] &lt;- value (including for missing j) and
    write.table(df) has been improved for data frames df with a large
    number of columns.  (Thanks to Gabriel Becker's PR#18500,
    PR#18503 and discussants, prompted by a report from Toby Dylan
    Hocking on the R-devel mailing list.)
  * The matrix multiply operator %*% is now an S3 generic, belonging
    to new group generic matrixOps.  From Tomasz Kalinowski's
    contribution in PR#18483.
  * New function array2DF() to convert arrays to data frames,
    particularly useful for the list arrays created by tapply().
  DATES and TIMES:
  * On platforms where (non-UTC) datetimes before 1902 (or before
    1900 as with system functions on recent macOS) are guessed by
    extrapolating time zones from 1902-2037, there is a warning at
    the first use of extrapolation in a session.  (As all time zones
    post 2037 are extrapolation, we do not warn on those.)
  * (Platforms using --with-internal-tzone, including Windows and by
    default macOS). How years are printed in dates or date-times can
    be controlled by environment variable R_PAD_YEARS_BY_ZERO.  The
    default remains to pad to 4 digits by zeroes, but setting value
    no gives no padding (as used by default by glibc).
  * strftime() tries harder to determine the offset for the "%z"
    format, and succeeds on the mainstream R platforms.
  * strftime() has a limit of 2048 bytes on the string produced -
    attempting to exceed this is an error.  (Previously it silently
    truncated at 255 bytes.)
  * sessionInfo() records (and by default prints) the system time
    zone as part of the locale information.  Also, the source
    (system/internal) of the date-time conversion and printing
    functions.
  * Objects of class "POSIXlt" created in this version of R always
    have 11 components: component zone is always set, and component
    gmtoff is set for times in UTC and usually set on the (almost
    all) platforms which have C-level support, otherwise is NA.
  * There are comprehensive validity checks on the structure of
    objects of class "POSIXlt" when converting (including formatting
    and printing).  (This avoids mis-conversions of hand-crafted
    objects.)
  * There is some support for using the native date-time routines on
    macOS: this is only viable on recent versions (e.g. 12.6 and 13)
    and does get wrong some historical changes (before 1900, during
    WWII).  Use of --with-internal-tzone remains the default.
  * as.POSIXct(&lt;numeric&gt;) and as.POSIXlt(.) (without specifying
    origin) now work.  So does as.Date(&lt;numeric&gt;).
  * as.Date.POSIXct(., tz) now treats several tz values, notably
    "GMT" as equivalent to "UTC", proposed and improved by Michael
    Chirico and Joshua Ulrich in PR#17674.
  * Experimental balancePOSIXlt() utility allows using "ragged" and
    or out-of-range "POSIXlt" objects more correctly, e.g., in
    subsetting and subassignments.  Such objects are now documented.
    More experimentally, a "POSIXlt" object may have an attribute
    "balanced" indicating if it is known to be filled or fully
    balanced.
  * Functions axis.Date() and axis.POSIXct() are rewritten to gain
    better default tick locations and better default formats by using
    prettyDate(). Thanks to Swetlana Herbrandt.
  * The mapping of Windows' names for time zones to IANA's 'Olson'
    names has been updated.  When ICU is available (it is by
    default), it is used to get a mapping for the current region set
    in Windows.  This can be overridden by setting environment
    variable TZ to the desired Olson name - see OlsonNames() for
    those currently available.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 16
    and so packages that provide graphics devices should be
    reinstalled.
  * The grDevices and grid packages have new functions for rendering
    typeset glyphs, primarily: grDevices::glyphInfo() and
    grid::grid.glyph().
    Rendering of typeset glyphs is only supported so far on the
    Cairo-based graphics devices and on the pdf() and quartz()
    devices.
  * The defined behaviour for "clear" and "source" compositing
    operators (via grid::grid.group()) has been changed (to align
    better with simple interpretation of original Porter-Duff
    definitions).
  * Support for gradients, patterns, clipping paths, masks, groups,
    compositing operators, and affine transformations has been added
    to the quartz() device.
  INSTALLATION on a UNIX-ALIKE:
  * A system installation of generic LAPACK 3.10.0 or later will be
    preferred to the version in the R sources.
    configure option --with-lapack=no (equivalently --without-lapack)
    forces compilation of the internal LAPACK sources.
    If --with-lapack is not specified, a system liblapack is looked
    for and used if it reports version 3.10.0 or later and does not
    contain BLAS routines.
    Packages using LAPACK will need to be reinstalled if this changes
    to using an external library.
  * On aarch64 Linux platforms using GCC, configure now defaults to
  - fPIC (instead of -fpic), as desired in PR#18326.
  * configure now checks conversion of datetimes between POSIXlt and
    POSIXct around year 2020.  Failure (which has been seen on
    platforms missing tzdata) is fatal.
  * If configure option --with-valgrind-instrumentation is given
    value 1 or 2, option --with-system-valgrind-headers is now the
    default and ignored (with a warning).  It is highly recommended
    that the system headers are installed alongside valgrind: they
    are part of its packaging on some Linux distributions and
    packaged separately (e.g. in the valgrind-devel RPM) on others.
    configure will give a warning if they are not found.
    The system headers will be required in a future release of R to
    build with valgrind instrumentation.
  * libcurl 8.x is now accepted by configure: despite a change in
    major version number it changes neither API nor ABI.
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools43, an update of the Rtools42 toolchain.  It is
    based on gcc 12 and newer versions of MinGW-W64, binutils and
    libraries.  At this time R-devel can still be built using
    Rtools42 without changes, but when R-devel is installed via the
    installer, it will by default look for Rtools43.
  * Old make targets rsync-extsoft and 32-bit ones that are no longer
    needed have been removed.
  * Default builds (including for packages) no longer select C99.
    Thus the C standard used is the default for the compiler, which
    for the toolchain in Rtools43 is C17.  (This is consistent with
    Unix builds.)
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++17 where
    available (which it is on all currently checked platforms): if
    not C++14 or C++11 is used if available otherwise C++ is not
    supported.
  * USE_FC_LEN_T is the default: this uses the correct
    (compiler-dependent) prototypes for Fortran BLAS/LAPACK routines
    called from C/C++, and requires adjustment of many such calls -
    see 'Writing R Extensions' SS6.6.1.
  * There is initial support for C++23 as several compilers are now
    supporting -std=c++23 or -std=c++2b or similar.  As for C++20,
    there no additional configure checks for C++23 features beyond a
    check that the compiler reports a __cplusplus value greater than
    that in the C++20 standard.  C++ feature tests should be used.
  * There is support for a package to indicate the version of the C
    standard which should be used to compile it, and for the
    installing user to specify this.  In most cases R defaults to the
    C compiler's default standard which is C17 (a `bug-fix' of C11) -
    earlier versions of R or compilers may have defaulted to C99.
    Current options are:
    USE_C17 Use a standard that is at most C17.  The intention is to
    allow legacy packages to still be installed when later C
    standards become the default, including packages using new
    keywords as identifiers or with K&amp;R-style function
    declarations.  This will use C17 if available, falling back
    to C11.
    USE_C90 Use the C90 (aka C89) standard.  (As that standard did
    not require compilers to identify that version, all we can
    verify is that the compiler does not claim to be using a
    later standard.  It may accept C99 features - for example
    clang accepts // to make comments.)
    USE_C99 Use the C99 standard. This should be rarely needed - it
    avoids the few new features of C11/C17 which can be useful if
    a package assumes them if C17 is specified and they are not
    implemented.
    USE_C23 Use C23 (or in future, later).  Compiler/library support
    for C23 is still being implemented, but LLVM clang from
    15.0.0 and the upcoming GCC 13 have quite extensive support.
    These can be specified as part of the SystemRequirements field in
    the package's DESCRIPTION file or _via_ options --use-C17 and so
    on of R CMD INSTALL and R CMD SHLIB.
    For further details see "Writing R Extensions" SS1.2.5.
  * (Windows) A src/Makefile.ucrt or src/Makefile.win file is now
    included after R_HOME/etcR_ARCH/Makeconf and so no longer needs
    to include that file itself.  Installation of a package with such
    a file now uses a site Makevars file in the same way as a package
    with a src/Makevars.win file would.
  * configure is now passed crucial variables such as CC and CFLAGS
    in its environment, as many packages were not setting them (as
    documented in 'Writing R Extensions' SS1.2).
    This has most effect where configure is used to compile parts of
    the package - most often by cmake or libtool which obfuscate the
    actual compile commands used.
    Also used for configure.win and configure.ucrt on Windows.
  FORTRAN FLAGS:
  * The flag -fno-optimize-sibling-calls is no longer forced for
    gfortran 7 and later.  It should no longer be needed now using
    'hidden' character-length arguments when calling BLAS/LAPACK
    routines from C/C++ is the default even for packages.  (Unless
    perhaps packages call Fortran code from C/C++ without using R's
    headers and without allowing for these arguments.)
  C-LEVEL FACILITIES:
  * The deprecated S-compatibility macros DOUBLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * The deprecated legacy typedefs of Sint and Sfloat in header R.h
    are no longer defined, and that header no longer includes header
    limits.h from C nor climits from C++.
  * New macro CAD5R() is provided in Rinternals.h and used in a few
    places in the R sources.
  * ALTREP now supports VECSXP vectors. Contributed by Gabor Csardi
    in PR#17620.
  * The Rcomplex definition (in header R_ext/Complex.h) has been
    extended to prevent possible mis-compilation when interfacing
    with Fortran (PR#18430).  The new definition causes compiler
    warnings with static initializers such as {1, 2}, which can be
    changed to {.r=1, .i=2}.
    Using the new definition from C++ depends on compiler extensions
    supporting C features that have not been incorporated into the
    C++ standards but are available in g++ and clang++: this may
    result in C++ compiler warnings but these have been worked around
    for recent versions of common compilers (GCC, Apple/LLVM clang,
    Intel).
    It is intended to change the inclusion of header R_ext/Complex.h
    by other R headers, so C/C++ code files which make use of
    Rcomplex should include that header explicitly.
  UTILITIES:
  * R CMD check does more checking of package .Rd files, warning
    about invalid email addresses and (some) invalid URIs and noting
    empty \item labels in description lists.
  * R CMD check now also reports problems when reading package news
    in md (file NEWS.md) and (optionally) plain text (file NEWS)
    formats.
  * _R_CHECK_TIMINGS_ defaults to a value from the environment even
    for R CMD check --as-cran; this allows for exceptionally fast or
    slow platforms.
    It now applies to checking PDF and HTML versions of the manuals,
    and 'checking CRAN incoming feasibility'.
  * R CMD check can optionally (but included in --as-cran) check
    whether HTML math rendering _via_ KaTeX works for the package .Rd
    files.
  * Non-interactive debugger invocations can be trapped by setting
    the environment variable _R_CHECK_BROWSER_NONINTERACTIVE_ to a
    true value.  This is enabled by R CMD check --as-cran to detect
    the use of leftover browser() statements in the package.
  * The use of sprintf and vsprintf from C/C++ has been deprecated in
    macOS 13 and is a known security risk.  R CMD check now reports
    (on all platforms) if their use is found in compiled code:
    replace by snprintf or vsnprintf respectively. [*NB:* whether
    such calls get compiled into the package is platform-dependent.]
  * Where recorded at installation, R CMD check reports the C and
    Fortran compilers used to build R.
    It reports the OS in use (if known, as given by osVersion) as
    well as that R was built for.
    It notes if a C++ standard was specified which is older than the
    current default: many packages have used C++11 to mean 'not
    C++98' - as C++11 is the minimum supported since R 4.0.0, that
    specification can probably be removed.
  * R CMD INSTALL reports the compilers (and on macOS, the SDK) used,
    and this is copied to the output of R CMD check.
    Where a C++ standard is specified, it is reported.
  * R CMD check's 'checking compilation flags in Makevars' has been
    relaxed to accept the use of flags such as -std=f2008 in
    PKG_FFLAGS.
  * tools::buildVignettes() has a new argument skip, which is used by
    R CMD check to skip (and note) vignettes with unavailable
    \VignetteDepends (PR#18318).
  * New generic .AtNames() added to enable class-specific completions
    after @. The formerly internal function findMatches() is now
    exported, mainly for use in methods for .DollarNames() and
    .AtNames().
  DEPRECATED AND DEFUNCT:
  * default.stringsAsFactors() is defunct.
  * Calling as.data.frame.&lt;class&gt;() directly (for 12 atomic classes)
    is going to be formally deprecated, currently activated by
    setting the environment variable
    _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ to non-empty, which also
    happens in R CMD check --as-cran.
  BUG FIXES:
  * Hashed environments with sizes less than 5 can now grow.
    (Reported to R-devel by Duncan Garmonsway.)
  * as.character(&lt;Rd&gt;, deparse = TRUE) failed to re-escape curly
    braces in LaTeX-like text.  (Reported by Hadley Wickham in
    PR#18324.)
  * library() now passes its lib.loc argument when requiring Depends
    packages; reported (with fix) in PR#18331 by Mikael Jagan.
  * R CMD Stangle: improved message about 'Output' files.
  * head(x, n) and tail(x, n) now signal an error if n is not
    numeric, instead of incidentally "working" sometimes returning
    all of x.  Reported and discussed by Colin Fay, in PR#18357.
  * The "lm" method for summary() now gives the correct F-statistic
    when the model contains an offset.  Reported in PR#18008.
  * C() and `contrasts&lt;-`() now preserve factor level names when
    given a function object (as opposed a function name which did
    preserve names). Reported in PR#17616.
  * c(a = 1, 2)[[]] no longer matches 2 but rather signals a
    _classed_ error.  Reported and analysed by Davis Vaughan in
    PR#18367, a duplicate of PR#18004, by Jan Meis et al.  For
    consistency, NULL[[]] is also erroneous now.  x[[]] &lt;- v gives an
    error of the same class "MissingSubscriptError".
  * The relist() function of utils now supports NULL elements in the
    skeleton (PR#15854).
  * ordered(levels = *) (missing x) now works analogously to factor(,
    ordered=TRUE); reported (with fix) by Achim Zeileis in PR#18389.
  * User-defined Rd macro definitions can now span multiple lines,
    thanks to a patch from Duncan Murdoch. Previously, the Rd parser
    silently ignored everything after the first line.
  * Plain-text help (tools::Rd2txt()) now preserves an initial blank
    line for text following description list items.
  * tools::Rd2HTML() and tools::Rd2latex() no longer split \arguments
    and \value lists at Rd comments.
  * tools::Rd2latex() now correctly handles optional text outside
    \items of argument lists as well as bracketed text at the
    beginning of sections, e.g., \value{[NULL]}.
  * as.character(&lt;POSIXt&gt;) now behaves more in line with the methods
    for atomic vectors such as numbers, and is no longer influenced
    by options().  Ditto for as.character(&lt;Date&gt;).  The
    as.character() method gets arguments digits and OutDec with
    defaults _not_ depending on options().  Use of as.character(*,
    format = .) now warns.
  * Similarly, the as.character.hexmode() and *.octmode() methods
    also behave as good citizen methods and back compatibility option
    keepStr = TRUE.
  * The as.POSIXlt(&lt;POSIXlt&gt;) and as.POSIXct(&lt;POSIXct&gt;) default
    methods now do obey their tz argument, also in this case.
  * as.POSIXlt(&lt;Date&gt;) now does apply a tz (time zone) argument, as
    does as.POSIXct(); partly suggested by Roland Fuss on the R-devel
    mailing list.
  * as.Date.POSIXlt(x) now also works when the list components are of
    unequal length, aka "partially filled" or "ragged".
  * expand.model.frame() looked up variables in the wrong environment
    when applied to models fitted without data.  Reported in
    PR#18414.
  * time() now (also) uses the ts.eps = getOption("ts.eps") argument
    and thus by default rounds values very close to the start (or
    end) of a year.  Based on a proposal by Andre"i V. Kostyrka on
    R-help.
  * Printing of a factanal() result with just one factor and sort =
    TRUE now works regularly, fixing PR#17863 by Timothy Bates,
    thanks to the 'R Contributors' working group.
  * Printing 0-length objects of class "factor", "roman", "hexmode",
    "octmode", "person", "bibentry", or "citation" now prints
    something better, one of which fixes PR#18422, reported by
    Benjamin Feakins.
  * Sys.timezone() queries timedatectl only if systemd is loaded;
    addressing a report by Jan Gorecki in PR#17421.
  * The formula method of cor.test() had scoping problems when
    environment(formula) was not the calling environment; reported
    with a patch proposal by Mao Kobayashi in PR#18439.
  * attach() of an environment with active bindings now preserves the
    active bindings.  Reported by Kevin Ushey in PR#18425.
  * BLAS detection now works also with system-provided libraries not
    available as regular files.  This fixes detection of the
    Accelerate framework on macOS since Big Sur.  Reported by David
    Novgorodsky.
  * download.file() gives a helpful error message in case of an
    invalid download.file.method option, thanks to Colin Fay's report
    in PR#18455.
  * Sporadic crashes of Rterm when using completion have been fixed.
  * Rprof() is now more reliable.  A livelock in thread
    initialization with too short sampling interval has been fixed on
    macOS.  A deadlock in using the C runtime has been fixed on
    Windows.  A potential deadlock has been prevented on Unix.
  * Cursor placement in Rgui now works even after a fixed-width font
    is selected.
  * Mandatory options (options()) are now set on startup so that
    saving and restoring them always works (PR#18372).
  * Package installation, R CMD INSTALL or install.packages(*), now
    parses each of the &lt;pkg&gt;/R/*.R files individually instead of
    first concatenating and then parse()ing the large resulting file.
    This allows parser or syntax errors to be diagnosed with correct
    file names and line numbers, thanks to Simon Dedman's report and
    Bill Dunlap's patch in PR#17859.
    This _does_ require syntactically self contained R source files
    now, fixing another inadvertent bug.
  * predict.lm(&lt;model with offset&gt;) now finds the offset in the
    correct environment, thanks to Andr'e Gillibert's report and patch
    in PR#18456.
  * getInitial(&lt;formula&gt;) now finds the selfStart model in the
    correct environment.  (Reported by Ivan Krylov in PR#18368.)
  * Fix for possible segfault when using recently-added graphics
    features, such as gradients, clipping paths, masks, and groups
    with pdf(file=NULL).
  * class(m) &lt;- class(m) no longer changes a matrix m by adding a
    class _attribute_.
  * packageDate(pkg) now only warns once if there is no pkg.
  * When ts() creates a multivariate time series, "mts", it also
    inherits from "array" now, and is.mts() is documented _and_
    stricter.
  * Rd2txt() now preserves line breaks of \verb Rd content and from
    duplicated \cr.  The former also fixes the rendering of verbatim
    output from Rd \Sexpr in plain-text help.
  * uniroot(f, interval) should no longer wrongly converge _outside_
    the interval in some cases where abs(f(x)) == Inf for an x at the
    interval boundary, thanks to posts by Ben Bolker and Serguei
    Sokol on R-devel.
  * Vectorized alpha handling in palette functions such as in gray(),
    rainbow(), or hcl.colors() works correctly now, thanks to Achim
    Zeileis' report and patch in PR#18476.
  * Formatting and print()ing of bibentry objects has dropped the
    deprecated citation.bibtex.max argument, such that the bibtex
    argument's default for print.bibentry() depends directly on the
    citation.bibtex.max option, whereas in format.bibentry() the
    option no longer applies.
  * Attempting to use a character string naming a foreign function
    entry point in a foreign function call in a package will now
    signal an error if the packages has called R_forceSymbols to
    specify that symbols must be used.
  * An error in table() could permanently set options(warn=2)
    promoting all subsequent warnings to errors.
  * The sigma() function gave misleading results for binary GLMs.  A
    new method for objects of class "glm" returns the square root of
    the estimate of the dispersion parameter using the same
    calculation as summary.glm().
  * bs() and ns() in the (typical) case of automatic knot
    construction, when some of the supposedly inner knots coincide
    with boundary knots, now moves them inside (with a warning),
    building on PR#18442 by Ben Bolker.
  * R CMD on Windows now skips the site profile with --no-site-file
    and --vanilla even when R_PROFILE is set (PR#18512, from Kevin
    Ushey).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1686916800">- CHANGES IN R 4.3.1:
  C-LEVEL FACILITIES:
  * The C-level API version of R's integrate(), Rdqags() in Applic.h,
    now returns the correct number of integrand evaluations neval,
    fixing PR#18515 reported and diagnosed by Stephen Wade.
  * The C prototypes for LAPACK calls dspgv and dtptrs in
    R_exts/Lapack.h had one too many and one too few character length
    arguments - but this has not caused any known issues. To get the
    corrected prototypes, include
    [#]include &lt;Rconfig.h&gt; // for PR18534fixed
    [#]ifdef PR18534fixed
    [#] define usePR18534fix 1
    [#]endif
    [#]include &lt;R_exts/Lapack.h&gt;
    in your C/C++ code (PR#18534).
  INSTALLATION:
  * Many of the checks of esoteric Internet operations and those
    using unreliable external sites have been moved to a new target
    that is not run by default and primarily intended for the core
    developers.  To run them use
    cd tests; make test-Internet-dev
  BUG FIXES:
  * .S3methods(), typically called from methods(), again marks
    methods from package base as visible.
    Also, the visibility of non-base methods is again determined by
    the method's presence in search().
  * tools::Rdiff() is now more robust against invalid strings, fixing
    installation tests on Windows without Rtools installed
    (PR#18530).
  * Fix (new) bug in hcl.colors(2, *), by Achim Zeileis (PR#18523).
  * head(., &lt;illegal&gt;) and tail(..) now produce more useful "Error in
    ...." error messages, fixing PR#18362.
  * Package code syntax on Windows is checked in UTF-8 when UTF-8 is
    the native encoding.
  * na.contiguous(x) now also returns the first run, when it is at
    the beginning and there is a later one of the same length;
    reported to R-devel, including a fix, by Georgi Boshnakov.
    Further, by default, it modifies only an existing attr(*,"tsp")
    but otherwise no longer sets one.
  * chol(&lt;not pos.def&gt;, pivot = &lt;T|F&gt;) now gives a correct error or
    warning message (depending on pivot), thanks to Mikael Jagan's
    (PR#18541).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1699012800">- CHANGES IN R 4.3.2:
  NEW FEATURES:
  * The default initialization of the "repos" option from the
    repositories file at startup can be skipped by setting
    environment variable R_REPOSITORIES to NULL such that
    getOption("repos") is empty if not set elsewhere.
  * qr.X() is now an implicit S4 generic in methods.
  * iconv(to = "ASCII//TRANSLIT") is emulated using substitution on
    platforms which do not support it (notably Alpine Linux).  This
    should give a human-readable conversion in ASCII on all platforms
    (rather than NA_character_).
  * trans3d() gains options continuous and verbose addressing the
    problem of possible "wrap around" when projecting too long
    curves, as reported by Achim Zeileis in PR#18537.
  * tools::showNonASCII() has been rewritten to work better on macOS
    14 (which has a changed implementation of iconv()).
  * tiff(type = "quartz") (the default on macOS) now warns if
    compression is specified: it continues to be ignored.
  INSTALLATION on a UNIX-ALIKE:
  * There is some support for building with Intel's LLVM-based
    compilers on x86_64 Linux, such as (C) icx, (C++) ipcx and
    (Fortran) ifx from oneAPI 2023.x.y.
  * There is support for using LLVM's flang-new as the Fortran
    compiler from LLVM 16.0.x (preferably 17.0.0 or later).
  UTILITIES:
  * R CMD check reports the use of the Fortran 90 random number
    generator RANDOM_NUMBER() and the subroutines to initialize it.
    'Writing R Extensions' has example code to use R's RNGs from
    Fortran.
  BUG FIXES:
  * substr(x, n, L) &lt;- cc now works (more) correctly for multibyte
    UTF-8 strings x when L &gt; nchar(x), thanks to a report and patch
    by 'Architect 95'.
  * contrib.url(character()) now returns 0-length character() as
    documented, which also avoids spurious warnings from
    available.packages() et al. in the edge case of an empty vector
    of repository URLs.
  * readChar(., 4e8) no longer fails, thanks to Kodi Arfer's report
    (PR#18557).
  * lapply(&lt;list&gt;, as.data.frame) no longer warns falsely for some
    base vector components.
  * Communication between parent and child processes in the multicore
    part of parallel could fail on platforms that do not support an
    arbitrarily large payload in system functions read()/write() on
    pipes (seen on macOS where a restriction to INT_MAX bytes is
    documented, without doing a partial read unlike Linux). The
    payload is now split into 1Gb chunks to avoid that problem.
    (PR#18571)
  * qqplot(x,y, conf.level=.) gives better confidence bounds when
    length(x) != length(y), thanks to Alexander Ploner's report and
    patch proposal (PR#18557).
  * norm(&lt;0-length&gt;, "2") now gives zero instead of an error, as all
    the other norm types, thanks to Mikael Jagan's PR#18542.
  * Build-stage Rd macros \packageAuthor and \packageMaintainer now
    process Authors@R, fixing NA results when the package DESCRIPTION
    omits Author and Maintainer fields.
  * Formatting and printing complex numbers could give things like
    0.1683-0i because of rounding error: -0i is now replaced by +0i.
  * postscript() refused to accept a title comment containing the
    letter "W" (PR#18599).
  * isoreg(c(1,Inf)) signals an error instead of segfaulting, fixing
    PR#18603.
  * tiff(type = "Xlib") was only outputting the last page of
    multi-page plots.
  * tools::latexToUtf8() again knows about \~{n} and other letters
    with tilde, fixing a regression in R 4.3.0, and about \^{i} as an
    alternative to \^{\i} (similarly with other accents).
    Furthermore, LaTeX codes for accented I letters are now correctly
    converted, also fixing related mistakes in
    tools::encoded_text_to_latex().
  * tar(*, tar = "internal") no longer creates out-of-spec tar files
    in the very rare case of user or group names longer than 32
    bytes, fixing PR#17871 with thanks to Ivan Krylov.
  * When using the "internal" timezone datetime code, adding a
    fraction of a second no longer adds one second, fixing PR#16856
    from a patch by Ivan Krylov.
  * tools::checkRd() no longer produces spurious notes about
    "unnecessary braces" from multi-line Rd results of \Sexpr macros.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1709208000">- CHANGES IN R 4.3.3:
  NEW FEATURES:
  * iconv() now fixes up variant encoding names such as "utf8"
    case-insensitively.
  DEPRECATED AND DEFUNCT:
  * The legacy encoding = "MacRoman" is deprecated in pdf() and
    postscript(): support was incomplete in earlier versions of R.
  BUG FIXES:
  * Arguments are now properly forwarded to methods on S4 generics
    with ... in the middle of their formal arguments. This was broken
    for the case when a method introduced an argument but did not
    include ... in its own formals. Thanks to Herv'e Pag`es for the
    report PR#18538.
  * Some invalid file arguments to pictex(), postscript() and xfig()
    opened a file called NA rather than throw an error.  These
    included postscript(NULL) (which some people expected to work
    like pdf(NULL)).
  * Passing filename = NA to svg(), cairo_pdf(), cairo_ps() or the
    Cairo-based bitmap devices opened a file called NA: it now throws
    an error.
  * quartz(file = NA) opened a file called NA, including when used as
    a Quartz-based bitmap device.  It now gives an error.
  * rank(&lt;long vector&gt;) now works, fixing PR#18617, thanks to Ilia
    Kats.
  * seq.int() did not adequately check its length.out argument.
  * match(&lt;POSIXct&gt;, .) is correct again for differing time zones,
    ditto for "POSIXlt", fixing PR#18618 reported by Bastian Klein.
  * drop.terms(*, dropx = &lt;0-length&gt;) now works, fixing PR#18563 as
    proposed by Mikael Jagan.
  * drop.terms(*) keeps + offset(.) terms when it should, PR#18565,
    and drop.terms() no longer makes up a response, PR#18566, fixing
    both bugs thanks to Mikael Jagan.
  * getS3method("t", "test") no longer finds the t.test() function,
    fixing PR#18627.
  * pdf() and postscript() support for the documented Adobe encodings
    "Greek" and "Cyrilllic" was missing (although the corresponding
    Windows' codepages could be used).
  * Computations of glyph metric information for pdf() and
    postscript() did not take into account that transliteration could
    replace one character by two or more (only seen on macOS 14) and
    typically warned that the information was not known.
  * rank(x) no longer overflows during integer addition, when
    computing rank average for largish but not-yet long vector x,
    fixing PR#18630, thanks to Ilia Kats.
  * list.files() on Windows now returns also files with names longer
    that 260 bytes (the Windows limit is 260 characters).
    Previously, some file names particularly with 'East Asian'
    characters were omitted.
  * cov2cor(&lt;0 x 0&gt;) now works, fixing PR#18423 thanks to Mikael
    Jagan and Elin Waring.
  * cov2cor(&lt;negative diagonal&gt;) and similar now give one warning
    instead of two, with better wording, fixing PR#18424 thanks to
    Mikael Jagan.
  * tools:: startDynamicHelp() now ensures port is in proper range,
    fixing PR#18645.
  * pbeta(x, a,b) is correct now for x=0 or 1 in the boundary cases
    where a or b or both are 0, fixing PR#18672 thanks to Michael
    Fay.
  * pmatch(x, table) for large table, also called for data frame row
    selection, dfrm[nm, ], is now interruptible, fixing PR#18656.
  * predict(&lt;rank-deficient lm&gt;, newdata=*) fix computing of nbasis,
    see Russ Lenth's comment 29 in PR#16158.
  * Added a work-around for a bug in macOS 14.3.1 and higher which
    prevents R plots in the Quartz Cocoa device from updating on
    screen.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1713960000">- CHANGES IN R 4.4.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Startup banners, R --version, sessionInfo() and R CMD check no
    longer report (64-bit) as part of the platform as this is almost
    universal - the increasingly rare 32-bit platforms will still
    report (32-bit).
    On Windows, ditto for window titles.
  * is.atomic(NULL) now returns FALSE, as NULL is not an atomic
    vector.  Strict back-compatibility would replace is.atomic(foo)
    by (is.null(foo) || is.atomic(foo)) but should happen only
    sparingly.
  NEW FEATURES:
  * The confint() methods for "glm" and "nls" objects have been
    copied to the stats package.  Previously, they were stubs which
    called versions in package MASS. The MASS namespace is no longer
    loaded if you invoke (say) confint(glmfit).  Further, the "glm"
    method for profile() and the plot() and pairs() methods for class
    "profile" have been copied from MASS to stats.  (profile.nls()
    and plot.profile.nls() were already in stats.)
  * The confint() and profile methods for "glm" objects have gained a
    possibility to do profiling based on the Rao Score statistic in
    addition to the default Likelihood Ratio. This is controlled by a
    new test = argument.
  * The pairs() method for "profile" objects has been extended with a
    which = argument to allow plotting only a subset of the
    parameters.
  * The "glm" method for anova() computes test statistics and
    p-values by default, using a chi-squared test or an F test
    depending on whether the dispersion is fixed or free.  Test
    statistics can be suppressed by giving argument test a false
    logical value.
  * In setRepositories() the repositories can be set using their
    names via name = instead of index ind =.
  * methods() and .S3methods() gain a all.names option for the (rare)
    case where functions starting with a . should be included.
  * Serializations can now be interrupted (e.g., by Ctrl-C on a
    Unix-alike) if they take too long, e.g., from save.image(),
    thanks to suggestions by Ivan Krylov and others on R-devel.
  * New startup option --max-connections to set the maximum number of
    simultaneous connections for the session.  Defaults to 128 as
    before: allowed values up to 4096 (but resource limits may in
    practice restrict to smaller values).
  * R on Windows (since Windows 10 2004) now uses the new Segment
    Heap allocator. This may improve performance of some
    memory-intensive applications.
  * When R packages are built, typically by R CMD build &lt;pkg&gt;, the
    new --user=&lt;build_user&gt; option overrides the (internally
    determined) user name, currently Sys.info()["user"] or LOGNAME.
    This is a (modified) fulfillment of Will Landau's suggestion in
    PR#17530.
  * tools::testInstalledBasic() gets new optional arguments outDir
    and testSrcdir, e.g., allowing to use it in a &lt;builddir&gt; !=
    &lt;srcdir&gt; setup, and in standard "binary" Windows installation
  * if* a source tests/ folder is present.
  * range(&lt;DT_with_Inf&gt;, finite = TRUE) now work for objects of class
    "Date", "POSIXct", and "POSIXlt" with infinite entries,
    analogously to range.default(), as proposed by Davis Vaughan on
    R-devel.  Other range()-methods can make use of new function
    .rangeNum().
  * New .internalGenerics object complementing .S3PrimitiveGenerics,
    for documentation and low-level book-keeping.
  * grid() now invisibly returns the x- and y- coordinates at which
    the grid-lines were drawn.
  * norm(., type) now also works for complex matrices.
  * kappa(., exact = TRUE, norm = *) now works for all norms and also
    for complex matrices.  In symmetric / triangular cases, the new
    argument uplo = "U" | "L" allows the upper or lower triangular
    part to be specified.
  * memDecompress(type = "unknown") recognizes compression in the
    default 'zlib' format as used by memCompress(type = "gzip").
  * memCompress() and memDecompress() will use the libdeflate library
    (&lt;https://github.com/ebiggers/libdeflate&gt;) if installed.  This
    uses the same type of compression for type = "gzip" but is 1.5-2x
    faster than the system libz library on some common platforms: the
    speed-up may depend on the library version.
  * diff() for objects of class "Date", "POSIXct", and "POSIXlt"
    accepts a units argument passed via ....
  * Dynamic help now does a much better job of rendering package
    DESCRIPTION metadata.
  * Rprof() gains an event argument and support for elapsed (real)
    time profiling on Unix (PR#18076).
  * filled.contour() gains a key.border argument.
  * tools::update_pkg_po() gets arguments pot_make and mo_make for
    _not_ re-making the corresponding files, and additionally a
    verbose argument.
  * Hexadecimal string colour specifications are now accepted in
    short form, so, for example, we can use "#123", which is
    equivalent to "#112233".
    Thanks to MikeFC for the original idea and Ella Kaye, Malcolm
    Barrett, George Stagg, and Hanne Oberman for the patch.
  * Plain-text help shows \var markup by angle brackets.
  * The new experimental primitive function declare() is intended to
    eventually allow information about R code to be communicated to
    the interpreter, compiler, and code analysis tools. The syntax
    for declarations is still being developed.
  * Functions psmirnov(), qsmirnov() and rsmirnov() in package stats
    have had argument two.sided renamed to alternative, to take into
    account that the permutation distributions of the one-sided
    statistics can be different in the case of ties.  Consequence of
    PR#18582.
  * sort() is now an implicit S4 generic in methods.
  * Formatting and printing, format(z), print(z), of complex vectors
    z no longer zap relatively small real or imaginary parts to zero,
    fixing PR#16752.  This is an API change, as it was documented
    previously to round real and imaginary parts together on purpose,
    producing nicer looking output.  As mentioned, e.g. in the PR,
    this change is compatible with many other "R-like" programming
    environments.
    We have simplified the internal code and now basically format the
    real and imaginary parts independently of each other.
  * New experimental functions Tailcall() and Exec() to support
    writing stack-space-efficient recursive functions.
  * Where characters are attempted to be plotted by pdf(),
    postscript() and xfig() which are not in the selected 8-bit
    character set (most often Latin-1) and the R session is using a
    UTF-8 locale, the warning messages will show the UTF-8 character
    rather than its bytes and one dot will be substituted per
    character rather than per byte.  (Platforms whose iconv() does
    transliteration silently plot the transliteration.)
    In a UTF-8 locale some transliterations are now done with a
    warning (e.g., dashes and Unicode minus to hyphen, ligatures are
    expanded, permille (‰) is replaced by o/oo), although the OS may
    have got there first.  These are warnings as they will continue
    to be replaced by dots in earlier versions of R.
  * The matrix multiplication functions crossprod() and tcrossprod()
    are now also primitive and S3 generic, as %*% had become in R
    4.3.0.
  * source() and example() have a new optional argument catch.aborts
    which allows continued evaluation of the R code after an error.
  * The non-Quartz tiff() devices allow additional types of
    compression if supported by the platform's libtiff library.
  * The list of base and recommended package names is now provided by
    tools::standard_package_names().
  * cairo_pdf() and cairo_ps() default to onefile = TRUE to closer
    match pdf() and postscript().
  * New option catch.script.errors provides a documented way to catch
    errors and then continue in non-interactive use.
  * L %||% R newly in base is an expressive idiom for the phrases
    if(!is.null(L)) L else R or if(is.null(L)) R else L.
  * The return value from warnings() now always inherits from
    "warnings" as documented, now also in the case of no warnings
    where it previously returned NULL.
  * as.complex("1i") now returns 0 + 1i instead of NA with a warning.
  * z &lt;- c(NA, 1i) now keeps the imaginary part Im(z[1]) == 0, no
    longer coercing to NA_complex_.  Similarly, cumsum(z) correctly
    sums real and imaginary parts separately, i.e., without
    "crosstalk" in case of NAs.
  * On Alpine Linux iconv() now maps "latin2", "latin-2", "latin9"
    and "latin-9" to encoding names the OS knows about
    (case-insensitively).
  * iconv(sub = "Unicode") now always zero-pads to four (hex) digits,
    rather than to 4 or 8.  (This seems to have become the convention
    once Unicode restricted the number of Unicode points to 2^21 - 1
    and so will never need more than 6 digits.)
  * NCOL(NULL) now returns 0 instead of 1, for consistency with
    cbind().
  * The information for the Euro glyph missing from the Adobe .afm
    files for the Courier, Helvetica and Times families has been
    copied from their URW equivalents - this will improve vertical
    centring in the pdf() and postscript() devices.
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.12.0.  The changes are almost entirely cosmetic.
  * The included LAPACK sources have been updated to version 3.12.0
    and some further double-complex routines added.
  * There are new font families for the 2014--5 URW 2.0 fonts (see
    ?pdf) which are included in recent versions of Ghostscript.
    These have font widths for most Greek glyphs and a few others
    which were missing from the original versions (whose font
    families remain available for reproducibility, although
    Ghostscript-based viewers will render using the 2.0 versions).
  * Improve the large-n efficiency of as.matrix(&lt;dist&gt;), thanks an R
    contributors effort, notably by Tim Taylor and Heather Turner,
    see PR#18660.
  * The default and numeric methods of all.equal() get a check.class
    option.
  * zapsmall() gets new optional arguments, function mFUN and min.d,
    for extra flexibility; fulfills a wish in PR#18199.  Also, it is
    now an implicit S4 generic in package methods.
  * The Rd filter for aspell() gains an ignore argument.
  * New generic function sort_by(), primarily useful for the
    data.frame method which can be used to sort rows of a data frame
    by one or more columns.
  * The icence headers for the RPC code in src/extra/xdr have been
    updated to use the GPL-compatible licence published by Oracle
    America in 2010.
  * New function pkg2HTML() in tools to create single-page HTML
    reference manuals for R packages.
  * The byte code evaluator now uses less C stack space for recursive
    calls to byte-compiled functions. It also makes more of an effort
    to avoid allocations for scalar return values.
  * New completion option backtick (disabled by default) allows
    non-syntactic completions to be wrapped in backquotes. This is
    currently only useful for Jupyter notebooks via the IRkernel
    package, and may cause problems for other backends.
  INSTALLATION:
  * The parser has been updated to work with bison 3.8.2, which is
    now used for the pre-generated parsers in gram.c, file.c, and
    gramRd.c. A few parser error messages have changed, which may
    affect code that relies on exact messages.
  INSTALLATION on a UNIX-ALIKE:
  * System valgrind headers are now required to use configure option
  - -with-valgrind-instrumentation with value 1 or 2.
  * configure will warn if it encounters a 32-bit build, as that is
    nowadays almost untested.
  * Environment variable R_SYSTEM_ABI is no longer used and so no
    longer recorded in etc/Renviron (it was not on Windows and was
    only ever used when preparing package tools).
  * If the libdeflate library and headers are available, libdeflate
    rather than libz is used to (de)compress R objects in lazy-load
    databases.  Typically tasks spend up to 5% of their time on such
    operations, although creating lazy-data databases is one of the
    exceptions.
    This can be suppressed if the library is available by the
    configure option --without-libdeflate-compression.
  * configure option --enable-lto=check has not worked reliably since
    2019 and has been removed.
  * The minimum autoconf requirement for a maintainer build has been
    increased to autoconf 2.71.
    It is intended to increase this to 2.72 for R 4.5.0: the
    distributed configure file was generated using 2.72.
  * The minimum version requirement for an external LAPACK has been
    reduced to 3.9.0.
  * No default C++ compiler is set if no C++17 compiler is detected:
    there is no longer an automatic fallback to C++14 or C++11.
    Compilers from the last five years should have sufficient
    support: for others macros CXX and CXXSTD can be set in file
    config.site to provide a fallback if needed.
    The Objective-C++ compiler now by default uses the standard
    selected by R for C++ (currently C++17) rather than the default
    standard for the C++ compiler (which on macOS is still C++98).
  INSTALLATION on macOS:
  * A new configure option --with-newAccelerate makes use of Apple's
    'new' BLAS / LAPACK interfaces in their Accelerate framework.
    Those interfaces are only available in macOS 13.3 or later, and
    building requires SDK 13.3 or later (from the Command Line Tools
    or Xcode 14.3 or later).
    By default the option uses new Accelerate for BLAS calls: to also
    use it for LAPACK use option --with-newAccelerate=lapack.  The
    later interfaces provide LAPACK 3.9.1 rather than 3.2.1: 3.9.1 is
    from 2021-04 and does not include the improved algorithms
    introduced in LAPACK 3.10.0 (including for BLAS calls).
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools44, an update of the Rtools43 toolchain.  It is
    based on GCC 13 and newer versions of MinGW-W64, binutils and
    libraries (targeting 64-bit Intel CPUs).  R-devel can no longer
    be built using Rtools43 without changes.
  * Rtools44 has experimental support for 64-bit ARM (aarch64) CPUs
    _via_ the LLVM 17 toolchain using lld, clang/flang-new and
    libc++.
  UTILITIES:
  * R CMD check notes when S4-style exports are used without
    declaring a strong dependence on package methods.
  * tools::checkRd() (used by R CMD check) detects more problems with
    \Sexpr-based dynamic content, including bad nesting of \Sexprs
    and invalid arguments.
  * tools::checkRd() now reports Rd titles and section names ending
    in a period; this is ignored by R CMD check unless environment
    variable _R_CHECK_RD_CHECKRD_MINLEVEL_ is set to -5 or smaller.
  * R CMD check now notes Rd files without an \alias, as long
    documented in 'Writing R Extensions' §1.3.1.  The check for a
    missing \description has been moved from tools::checkRd() to
    tools::checkRdContents().
  * R CMD check now visits inst/NEWS.Rd and OS-specific man
    subdirectories when checking Rd files.
  * tools::checkDocFiles() and tools::checkRdContents() now also
    check internal Rd files by default, but "specially" (ignoring
    missing documentation of arguments).
  * R CMD Rdiff gets option --useEx.
  * R CMD check now warns on non-portable uses of Fortran KIND such
    as INTEGER(KIND=4) and REAL(KIND=8).
    To see the failing lines set environment variable
    _R_CHECK_FORTRAN_KIND_DETAILS_ to a true value.
  * When checking Rd files, R CMD check now notes some of the "lost
    braces" that tools::checkRd() finds.  Typical problems are Rd
    macros missing the initial backslash (e.g., code{...}), in-text
    set notation (e.g., {1, 2}, where the braces need escaping), and
    \itemize lists with \describe-style entries of the form
    \item{label}{description}.
  * R CMD INSTALL (and hence check) will compile C++ code with
  - DR_NO_REMAP if environment variable _R_CXX_USE_NO_REMAP_ is set
    to a true value.  It is planned that this will in future become
    the default for compiling C++.
  * The new built-in Rd macro \dontdiff{} can be used to mark example
    code whose output should be ignored when comparing check output
    to reference output (tests/Examples/&lt;pkg&gt;-Ex.Rout.save).  The
    \dontdiff tag, like \donttest, is _not_ shown on the rendered
    help page, so provides a clean alternative to ##
    IGNORE_RDIFF_(BEGIN|END) comments.
  * R CMD build when there is no NAMESPACE, now uses the recommended
    exportPattern("^[^.]"), instead of exporting everything.
  * R CMD check now warns about non-ASCII characters in the NAMESPACE
    file (in addition to R files). Such packages are not portable and
    may fail to install on some platforms.
  C-LEVEL FACILITIES:
  * Headers R_ext/Applic.h and R-ext/Linpack.h used to include
    R_ext/BLAS.h although this was undocumented and unneeded by their
    documented entry points.  They no longer do so.
  * New function R_missing(), factored out from do_missing(), used to
    fix PR#18579.
  * SEXP type S4SXP has been renamed to OBJSXP to support
    experimenting with alternative object systems.  The S4SXP value
    can still be used in C code but is now deprecated.  Based on
    contributions from the R Consortium's Object-Oriented Programming
    Working Group.
  * New function pow1p(x,y) for accurate (1+x)^y.
  * mkCharLenCE was incorrectly documented to take a size_t length
    but was implemented with int (and character strings in R are
    limited to 2^31 - 1 bytes).
  DEPRECATED AND DEFUNCT:
  * data() no longer handles zipped data from long-defunct (since R
    2.13.0) --use-zip-data installations.
  * The legacy graphics devices pictex() and xfig() are now
    deprecated.  They do not support recent graphics enhancements and
    their font handling is rudimentary. The intention is to retain
    them for historical interest as long as they remain somewhat
    functional.
  * Support for encoding = "MacRoman" has been removed from the pdf()
    and postscript() devices - this was a legacy encoding supporting
    classic macOS up to 2001 and no longer has universal libiconv
    support.
  * is.R() is deprecated as no other S dialect is known to be in use
    (and this could only identify historical dialects, not future
    ones).
    Further information on calls can be obtained by setting the
    environment variable _R_DEPRECATED_IS_R_ to error which turns the
    deprecation warning into an error and so by default gives a
    traceback.  (This is done by R CMD check --as-cran.)
  * UseMethod() no longer forwards local variables assigned in the
    generic function into method call environments before evaluating
    the method body. This makes method calls behave more like
    standard function calls and makes method code easier to analyze
    correctly.
  * The twelve as.data.frame.&lt;class&gt;() methods which were deprecated
    only via _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ and in R CMD
    check --as-cran are formally deprecated now in favour of calling
    as.data.frame() or as.data.frame.vector().  The deprecation
    "check" now works also when as.data.frame() is S4 generic thanks
    to Ivan Krylov.
  * The default method for the directional comparison operators &lt;, &gt;,
    &lt;=, and &gt;= now signals an error when one of the operands is a
    language object, i.e. a symbol or a call.
  * For terms.formula(), deprecate abb and neg.out arguments
    _formally_ in addition to just documenting it.
  BUG FIXES:
  * The methods package is more robust to not being attached to the
    search path.  More work needs to be done.
  * pairwise.t.test() misbehaved when subgroups had 0 DF for
    variance, even with pool.sd = TRUE.  (PR#18594 by Jack Berry).
  * Probability distribution functions [dpq]&lt;distrib&gt;(x, *), but also
    bessel[IKJY](x, .) now consistently preserve attributes(x) when
    length(x) == 0, e.g., for a 2 x 0 matrix, thanks to Karolis
    Koncevičius' report PR#18509.
  * Group "Summary" computations such as sum(1:3, 4, na.rm = 5, NA,
    7, na.rm = LL) now give an error instead of either 17 or NN for
    LL true or false, as proposed by Ivan Krylov on the R-devel
    mailing list.  (This also means it is now an error to specify
    na.rm more than once.)
  * as.complex(x) now returns complex(real = x, imaginary = 0) for
    _all_ numerical and logical x, notably also for NA or
    NA_integer_.
  * Directories are now omitted by file.copy(, recursive = FALSE) and
    in file.append() (PR#17337).
  * gsub() and sub() are now more robust to integer overflow when
    reporting errors caused by too large input strings (PR#18346).
  * Top-level handlers are now more robust to attempts to remove a
    handler whilst handlers are running (PR#18508).
  * The handling of Alt+F4 in dialogs created on Windows using
    GraphApp has been fixed (PR#13870).
  * density() more consistently computes grid values for the
    FFT-based convolution, following Robert Schlicht's analysis and
    proposal in PR#18337, correcting density values typically by a
    factor of about 0.999.  Argument old.coords = TRUE provides back
    compatibility.
  * palette.colors() gains a name argument that defaults to FALSE
    controlling whether the vector of colours that is returned has
    names (where possible).  PR#18529.
  * tools::xgettext() no longer extracts the (non-translatable) class
    names from warningCondition and errorCondition calls.
  * S3method(&lt;gen&gt;, &lt;class&gt;, &lt;func&gt;) in the NAMESPACE file now works
    (again) when &lt;func&gt; is visible from the namespace, e.g.,
    imported, or in base.
  * getParseData(f) now also works for a function defined in the
    first of several &lt;pkg&gt;/R/*.R source files, thanks to Kirill
    Müller's report and Duncan Murdoch's patch in PR#16756.
  * Rd \Sexpr macros with nested #ifdef conditionals were not
    processed.
  * A non-blocking connection with non-default encoding (such as a
    socket) now correctly returns from readLines() after new data has
    arrived also when its EOF had been reached previously.  Thanks to
    Peter Meilstrup's report on R-devel and Ivan Krylov's report and
    patch proposal in PR#18555.
  * tools::checkRdContents() failed to detect empty argument
    descriptions when they spanned multiple lines, including those
    generated by prompt().  These cases are now noted by R CMD check.
  * Plain-text help no longer outputs spurious colons in the
    arguments list (for multi-line \item labels in the Rd source).
  * kappa() and rcond() work correctly in more cases; kappa(., norm =
    "2") now warns that it computes the 1-norm with (default) exact =
    FALSE; prompted by Mikael Jagan's quite comprehensive PR#18543.
  * Rd skeletons generated by prompt() or promptData() now use a
    dummy title (so R CMD build works).  tools::checkRdContents() has
    been updated to detect such template leftovers, including from
    promptPackage().
  * When S4 method dispatch fails because no method was found, the
    error message now includes the signature argument names; thanks
    to Michael Chirico's proposal on the R-devel list.
  * withAutoprint({ .. }) now preserves srcrefs previously lost,
    thanks to Andrew Simmons' report plus fix in PR#18572.
  * transform.data.frame() no longer adjusts names; in particular,
    untransformed variables are kept as-is, including those with
    syntactically invalid names (PR#17890).
  * The keep.source option for Rd \Sexpr blocks is no longer ignored.
  * The formula methods for t.test() and wilcox.test() now catch when
    paired is passed, addressing PR#14359; use Pair(x1, x2) ~ 1 for a
    paired test.
  * The level reported in the browser prompt was often too large. It
    now shows the number of browser contexts on the stack.
  * For cbind() and rbind(), the optional deparse.level argument is
    now properly passed to methods, thanks to Mikael Jagan's PR#18579
    and comments there.
  * Some error and warning messages for large ('long vector')
    matrix(v, nr, nc) and dim(m) &lt;- d are now correct about sizes,
    using long long formatting, fixing PR#18612 (and more) reported
    by Mikael Jagan.
  * readChar(useBytes = TRUE) now terminates strings even when the
    underlying connection uses extra spaces in the input buffer.
    This fixes problems with extra garbage seen with gzip
    connections, PR#18605.
  * Named capture in PCRE regular expressions now works also with
    more than 127 named groups (PR#18588).
  * Datetime functions are now robust against long jumps when dealing
    with internal time zone changes.  This avoids confusing warnings
    about an invalid time zone, previously triggered by turning
    warnings into errors or handling them via tryCatch (PR#17966,
    PR#17780).
  * Datetime functions now restore even an empty TZ environment
    variable after internal time zone changes (PR#17724).  This makes
    results of datetime functions with this (typically unintentional)
    setting more predictable.
  * drop.terms(*) now drops response as by default, keep.response =
    FALSE, fixing PR#18564 thanks to Mikael Jagan.
  * dummy.coef(.) now also works for lm()-models with character
    categorical predictor variables rather than factor ones, fixing
    PR#18635 reported by Jinsong Zhao.
  * formals(f) &lt;- formals(f) now also works for a function w/o
    arguments and atomic _constant_ body(f).
  * Correct as.function(&lt;invalid list&gt;, .)'s error message.
  * removeSource() is yet more thorough in finding and removing
    "srcref" and the other source references from parsed R language
    chunks, fixing PR#18638 thanks to Andrew Simmons.
  * dgeom() is more accurate now, notably when its result is very
    small, fixing PR#18642 thanks to the proposal of Morten Welinder,
    also improving other instances where C level binom_raw(x, n, ..)
    has x == 0 or x== n.
  * warning() with options(warn = 1) has improved output for
    multi-line messages.
  * axis.Date() and axis.POSIXct() now respect the par("lab") setting
    for the number of pretty() intervals.
  * Comparisons for language objects (which are based on deparsing)
    are now more careful about using accurate deparsed results
    (PR#18676).
  * Plain-text help (Rd2txt) now correctly preserves blank lines
    following single-line \dontrun code.
  * &lt;POSIXlt&gt;[*] no longer sets wrong "balanced" attribute, fixing
    PR#18681 thanks to Mikael Jagan.
  * str(&lt;classed-call&gt;) now deparses the call as expected, fixing
    PR#18684, reported by Dave Slager.
  * In Rd examples, code following the closing brace of a \dontrun,
    \dontshow or \donttest tag on the same line is no longer skipped
    when R CMD check runs the examples.
  * as.data.frame(matrix(*, ncol=0)) now gets valid names() and
    colnames(); reported by Davis Vaughan on the R-devel list.
  * Internal Mathlib function stirlerr(n) is now almost fully
    (52-bit) accurate for all n &gt;= ~5.9 and more accurate also in the
    range 1 -- 5.9.  This entails small ("after 12th decimal")
    changes in density functions, e.g., dgamma() in _some_ regions of
    their support.  The fix was partly prompted by Morten Welinder's
    PR#18640.
  * Numbers like 9876543.2 are now considered non-integer by Mathlib
    internal R_nonint(), amending original fix of PR#15734.
  * Rd comment lines no longer cause broken paragraphs in the
    rendered PDF and plain-text help. In code blocks, pure comment
    lines (starting with %) no longer produce an empty line.
  * xtabs(Freq ~ .) now consistently defaults to na.action = na.pass,
    using na.rm = FALSE (added as an argument) when summing over Freq
    (PR#17770).
  * tools::testInstalledPackage() is no longer silent about failures
    from running examples or tests and its return code no longer
    ignores failures from checking vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1718366400">- CHANGES IN R 4.4.1:
  C-LEVEL FACILITIES:
  * Functions R_atof and R_strtod declared in header R_ext/Utils.h
    are now documented in 'Writing R Extensions' and so formally part
    of the API.
  * The non-API entry points Rf_setSVector, Rf_StringFalse,
    Rf_StringTrue and Rf_isBlankString have been added to those
    reported by R CMD check.
  * The new function Rf_allocLang is now available. This provides an
    alternative to the idiom of calling Rf_allocList followed by
    SET_TYPEOF.
  UTILITIES:
  * R CMD check now reports as warnings what gfortran calls 'Fortran
    2018 deleted features', all of which have long been marked as
    'obsolescent' and some of which were deleted in Fortran 2008 or
    earlier.  Fortran compilers are no longer required to support
    these.
  BUG FIXES:
  * as.numeric(), scan(), type.convert() and other places which use
    the internal C function R_strtod now require a _non-empty_ digit
    sequence in a decimal or binary exponent.  This aligns with the
    C/POSIX standard for strtod and with ?NumericConstants.
  * as.data.frame(m, make.names=NA) now works correctly for a matrix
    m with NA's in row names.
  * The error message from &lt;POSIXlt&gt;[["hour"]] and similar now
    mentions *[[, "hour"]], as wished for in PR#17409 and proposed by
    Michael Chirico.
  * qbinom() and potentially qpois(), qnbinom(), no longer sometimes
    fail accurate inversion (of pbinom(), etc), thanks to Christopher
    Chang's report and patch in PR#18711.
  * The internal help server on Windows can again serve requests sent
    in quick succession, fixing a regression in R 4.4.0.
  * debugcall(&lt;S3Generic&gt;()) now also works when a corresponding
    S4-generic version is in the methods cache (PR#18143).
  * Package tools' toTitleCase(ch0) now returns character(0) when ch0
    is of zero length; fixing PR#18724, reported by David Hugh Jones.
  * R CMD check is no longer broken (without a check result and no
    explanation in 00check.log) for a package which declares an
    invalid VignetteBuilder in DESCRIPTION but has no vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1730376000">- CHANGES IN R 4.4.2:
  C-LEVEL FACILITIES:
  * The S-compatibility macros F77_COM and F77_COMDECL defined in
    header R_ext/RS.h are deprecated and will be removed shortly.  We
    could find no record of their use.
  BUG FIXES:
  * Mathlib function lgammacor(x) no longer warns about underflow to
    zero for large x.
  * Text widths and heights were incorrectly reported by the Quartz
    device if the drawing context didn't exist yet (typically when
    drawing off-screen to a window that is yet to appear, see
    PR#18591).
  * The Quartz device could segfault in cases where paths with spaces
    are used in the new glyph drawing API.  Thanks to Tomek
    Gieorgijewski (PR#18758).
  * On macOS in R CRAN builds, it is again possible to read
    little-endian UTF-16 text with a BOM from a connection using
    encoding="UTF-16".  Users building R from source should avoid
    using the system libiconv in macOS 14.1 and later.
  * methods' internal .requirePackage() now re-enables primitive
    method dispatch when needed; thanks to Ivan Krylov for
    demystifying CRAN package check failures on the R-devel mailing
    list.</changelog>
</package>
<package pkgid="39212f041250bc2b9264f4cb2d9c7c38c4062b1defae988bc4d4e6e93fbe0b4801fa01945007cf77eaed38b8b7c058f127edf086ec07d012abb03f993d081c27" name="R-core-devel" arch="i586">
  <version epoch="0" ver="4.4.2" rel="51.0.2.2.sr20241103"/>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1620302400">- To get in sync with d:l:R:autoCRAN the Matrix package's split
  in -devel was reversed.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339200">- improved spec file according to comments of dimstar in
  https://build.opensuse.org/request/show/892685</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339201">- CHANGES IN R 4.1.0:
  FUTURE DIRECTIONS:
  * It is planned that the 4.1.x series will be the last to support
    32-bit Windows, with production of binary packages for that
    series continuing until early 2023.
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Data set esoph in package datasets now provides the correct
    numbers of controls; previously it had the numbers of cases added
    to these.  (Reported by Alexander Fowler in PR#17964.)
  NEW FEATURES:
  * www.omegahat.net is no longer one of the repositories known by
    default to setRepositories().  (Nowadays it only provides source
    packages and is often unavailable.)
  * Function package_dependencies() (in package tools) can now use
    different dependency types for direct and recursive dependencies.
  * The checking of the size of tarball in R CMD check --as-cran
    &lt;pkg&gt; may be tweaked via the new environment variable
    _R_CHECK_CRAN_INCOMING_TARBALL_THRESHOLD_, as suggested in
    PR#17777 by Jan Gorecki.
  * Using c() to combine a factor with other factors now gives a
    factor, an ordered factor when combining ordered factors with
    identical levels.
  * apply() gains a simplify argument to allow disabling of
    simplification of results.
  * The format() method for class "ftable" gets a new option justify.
    (Suggested by Thomas Soeiro.)
  * New ...names() utility.  (Proposed by Neal Fultz in PR#17705.)
  * type.convert() now warns when its as.is argument is not
    specified, as the help file always said it _should_.  In that
    case, the default is changed to TRUE in line with its change in
    read.table() (related to stringsAsFactor) in R 4.0.0.
  * When printing list arrays, classed objects are now shown _via_
    their format() value if this is a short enough character string,
    or by giving the first elements of their class vector and their
    length.
  * capabilities() gets new entry "Rprof" which is TRUE when R has
    been configured with the equivalent of --enable-R-profiling (as
    it is by default).  (Related to Michael Orlitzky's report
    PR#17836.)
  * str(xS4) now also shows extraneous attributes of an S4 object
    xS4.
  * Rudimentary support for vi-style tags in rtags() and R CMD rtags
    has been added.  (Based on a patch from Neal Fultz in PR#17214.)
  * checkRdContents() is now exported from tools; it and also
    checkDocFiles() have a new option chkInternal allowing to check
    Rd files marked with keyword "internal" as well.  The latter can
    be activated for R CMD check via environment variable
    _R_CHECK_RD_INTERNAL_TOO_.
  * New functions numToBits() and numToInts() extend the raw
    conversion utilities to (double precision) numeric.
  * Functions URLencode() and URLdecode() in package utils now work
    on vectors of URIs.  (Based on patch from Bob Rudis submitted
    with PR#17873.)
  * path.expand() can expand ~user on most Unix-alikes even when
    readline is not in use.  It tries harder to expand ~, for example
    should environment variable HOME be unset.
  * For HTML help (both dynamic and static), Rd file links to help
    pages in external packages are now treated as references to
    topics rather than file names, and fall back to a file link only
    if the topic is not found in the target package. The earlier rule
    which prioritized file names over topics can be restored by
    setting the environment variable _R_HELP_LINKS_TO_TOPICS_ to a
    false value.
  * c() now removes NULL arguments before dispatching to methods,
    thus simplifying the implementation of c() methods, _but_ for
    back compatibility keeps NULL when it is the first argument.
    (From a report and patch proposal by Lionel Henry in PR#17900.)
  * Vectorize()'s result function's environment no longer keeps
    unneeded objects.
  * Function ...elt() now propagates visibility consistently with
    ..n.  (Thanks to Lionel Henry's PR#17905.)
  * capture.output() no longer uses non-standard evaluation to
    evaluate its arguments.  This makes evaluation of functions like
    parent.frame() more consistent.  (Thanks to Lionel Henry's
    PR#17907.)
  * packBits(bits, type="double") now works as inverse of
    numToBits().  (Thanks to Bill Dunlap's proposal in PR#17914.)
  * curlGetHeaders() has two new arguments, timeout to specify the
    timeout for that call (overriding getOption("timeout")) and TLS
    to specify the minimum TLS protocol version to be used for
    https:// URIs (_inter alia_ providing a means to check for sites
    using deprecated TLS versions 1.0 and 1.1).
  * For nls(), an optional constant scaleOffset may be added to the
    denominator of the relative offset convergence test for cases
    where the fit of a model is expected to be exact, thanks to a
    proposal by John Nash.  nls(*, trace=TRUE) now also shows the
    convergence criterion.
  * Numeric differentiation _via_ numericDeriv() gets new optional
    arguments eps and central, the latter for taking central divided
    differences.  The latter can be activated for nls() via
    nls.control(nDcentral = TRUE).
  * nls() now passes the trace and control arguments to getInitial(),
    notably for all self-starting models, so these can also be fit in
    zero-noise situations via a scaleOffset.  For this reason, the
    initial function of a selfStart model must now have ... in its
    argument list.
  * bquote(splice = TRUE) can now splice expression vectors with
    attributes: this makes it possible to splice the result of
    parse(keep.source = TRUE).  (Report and patch provided by Lionel
    Henry in PR#17869.)
  * textConnection() gets an optional name argument.
  * get(), exists(), and get0() now signal an error if the first
    argument has length greater than 1.  Previously additional
    elements were silently ignored.  (Suggested by Antoine Fabri on
    R-devel.)
  * R now provides a shorthand notation for creating functions, e.g.
    \(x) x + 1 is parsed as function(x) x + 1.
  * R now provides a simple native forward pipe syntax |&gt;.  The
    simple form of the forward pipe inserts the left-hand side as the
    first argument in the right-hand side call.  The pipe
    implementation as a syntax transformation was motivated by
    suggestions from Jim Hester and Lionel Henry.
  * all.equal(f, g) for functions now by default also compares their
    environment(.)s, notably via new all.equal method for class
    function.  Comparison of nls() fits, e.g., may now need
    all.equal(m1, m2, check.environment = FALSE).
  * .libPaths() gets a new option include.site, allowing to _not_
    include the site library.  (Thanks to Dario Strbenac's suggestion
    and Gabe Becker's PR#18016.)
  * Lithuanian translations are now available.  (Thanks to Rimantas
    Zakauskas.)
  * names() now works for DOTSXP objects.  On the other hand, in
    R-lang, the R language manual, we now warn against relying on the
    structure or even existence of such dot-dot-dot objects.
  * all.equal() no longer gives an error on DOTSXP objects.
  * capabilities("cairo") now applies only to the file-based devices
    as it is now possible (if very unusual) to build R with Cairo
    support for those but not for X11().
  * There is optional support for tracing the progress of
    loadNamespace() - see its help.
  * (Not Windows.)  l10n_info() reports an additional element, the
    name of the encoding as reported by the OS (which may differ from
    the encoding part (if any) of the result from
    Sys.getlocale("LC_CTYPE").
  * New function gregexec() which generalizes regexec() to find _all_
    disjoint matches and well as all substrings corresponding to
    parenthesized subexpressions of the given regular expression.
    (Contributed by Brodie Gaslam.)
  * New function charClass() in package utils to query the
    wide-character classification functions in use (such as
    iswprint).
  * The names of quantile()'s result no longer depend on the global
    getOption("digits"), but quantile() gets a new optional argument
    digits = 7 instead.
  * grep(), sub(), regexp and variants work considerably faster for
    long factors with few levels.  (Thanks to Michael Chirico's
    PR#18063.)
  * Provide grouping of x11() graphics windows within a window
    manager such as Gnome or Unity; thanks to a patch by Ivan Krylov
    posted to R-devel.
  * The split() method for class data.frame now allows the f argument
    to be specified as a formula.
  * sprintf now warns on arguments unused by the format string.
  * New palettes "Rocket" and "Mako" for hcl.colors() (approximating
    palettes of the same name from the 'viridisLite' package).
    Contributed by Achim Zeileis.
  * The base environment and its namespace are now locked (so one can
    no longer add bindings to these or remove from these).
  * Rterm handling of multi-byte characters has been improved,
    allowing use of such characters when supported by the current
    locale.
  * Rterm now accepts ALT+ +xxxxxxxx sequences to enter Unicode
    characters as hex digits.
  * Environment variable LC_ALL on Windows now takes precedence over
    LC_CTYPE and variables for other supported categories, matching
    the POSIX behaviour.
  * duplicated() and anyDuplicated() are now optimized for integer
    and real vectors that are known to be sorted via the ALTREP
    framework. Contributed by Gabriel Becker via PR#17993.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 14
    and so packages that provide graphics devices should be
    reinstalled.
  * Graphics devices should now specify deviceVersion to indicate
    what version of the graphics engine they support.
  * Graphics devices can now specify deviceClip.  If TRUE, the
    graphics engine will never perform any clipping of output itself.
    The clipping that the graphics engine does perform (for both
    canClip = TRUE and canClip = FALSE) has been improved to avoid
    producing unnecessary artifacts in clipped output.
  * The grid package now allows gpar(fill) to be a linearGradient(),
    a radialGradient(), or a pattern().  The viewport(clip) can now
    also be a grob, which defines a clipping path, and there is a new
    viewport(mask) that can also be a grob, which defines a mask.
    These new features are only supported so far on the Cairo-based
    graphics devices and on the pdf() device.
  * (Not Windows.)  A warning is given when a Cairo-based type is
    specified for a png(), jpeg(), tiff() or bmp() device but Cairo
    is unsupported (so type = "Xlib" is tried instead).
  * grSoftVersion() now reports the versions of FreeType and
    FontConfig if they are used directly (not _via_ Pango), as is
    most commonly done on macOS.
  C-LEVEL FACILITIES:
  * The _standalone_ libRmath math library and R's C API now provide
    log1pexp() again as documented, and gain log1mexp().
  INSTALLATION on a UNIX-ALIKE:
  * configure checks for a program pkgconf if program pkg-config is
    not found.  These are now only looked for on the path (like
    almost all other programs) so if needed specify a full path to
    the command in PKG_CONFIG, for example in file config.site.
  * C99 function iswblank is required - it was last seen missing ca
    2003 so the workaround has been removed.
  * There are new configure options --with-internal-iswxxxxx,
  - -with-internal-towlower and --with-internal-wcwidth which allows
    the system functions for wide-character classification,
    case-switching and width (wcwidth and wcswidth) to be replaced by
    internal ones.  The first has long been used on macOS, AIX (and
    Windows) but this enables it to be unselected there and selected
    for other platforms (it is the new default on Solaris).  The
    second is new in this version of R and is selected by default on
    macOS and Solaris.  The third has long been the default and
    remains so as it contains customizations for East Asian
    languages.
    System versions of these functions are often minimally
    implemented (sometimes only for ASCII characters) and may not
    cover the full range of Unicode points: for example Solaris (and
    Windows) only cover the Basic Multilingual Plane.
  * Cairo installations without X11 are more likely to be detected by
    configure, when the file-based Cairo graphics devices will be
    available but not X11(type = "cairo").
  * There is a new configure option --with-static-cairo which is the
    default on macOS.  This should be used when only static cairo
    (and where relevant, Pango) libraries are available.
  * Cairo-based graphics devices on platforms without Pango but with
    FreeType/FontConfig will make use of the latter for font
    selection.
  LINK-TIME OPTIMIZATION on a UNIX-ALIKE:
  * Configuring with flag --enable-lto=R now also uses LTO when
    installing the recommended packages.
  * R CMD INSTALL and R CMD SHLIB have a new flag --use-LTO to use
    LTO when compiling code, for use with R configured with
  - -enable-lto=R.  For R configured with --enable-lto, they have
    the new flag --no-use-LTO.
    Packages can opt in or out of LTO compilation _via_ a UseLTO
    field in the DESCRIPTION file.  (As usual this can be overridden
    by the command-line flags.)
  BUILDING R on Windows:
  * for GCC &gt;= 8, FC_LEN_T is defined in config.h and hence character
    lengths are passed from C to Fortran in _inter alia_ BLAS and
    LAPACK calls.
  * There is a new text file src/gnuwin32/README.compilation, which
    outlines how C/Fortran code compilation is organized and
    documents new features:
  * R can be built with Link-Time Optimization with a suitable
    compiler - doing so with GCC 9.2 showed several
    inconsistencies which have been corrected.
  * There is support for cross-compiling the C and Fortran code
    in R and standard packages on suitable (Linux) platforms.
    This is mainly intended to allow developers to test later
    versions of compilers - for example using GCC 9.2 or 10.x has
    detected issues that GCC 8.3 in Rtools40 does not.
  * There is experimental support for cross-building R packages
    with C, C++ and/or Fortran code.
  * The R installer can now be optionally built to support a single
    architecture (only 64-bit or only 32-bit).
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++14 where
    available (which it is on all currently checked platforms): if
    not (as before) C++11 is used if available otherwise C++ is not
    supported.
    Packages which specify C++11 will still be installed using C++11.
    C++14 compilers may give deprecation warnings, most often for
    std::random_shuffle (deprecated in C++14 and removed in C++17).
    Either specify C++11 (see 'Writing R Extensions') or modernize
    the code and if needed specify C++14.  The latter has been
    supported since R 3.4.0 so the package's DESCRIPTION would need
    to include something like
    Depends: R (&gt;= 3.4)
  PACKAGE INSTALLATION on Windows:
  * R CMD INSTALL and R CMD SHLIB make use of their flag --use-LTO
    when the LTO_OPT make macro is set in file etc/${R_ARCH}/Makeconf
    or in a personal/site Makevars file.  (For details see 'Writing R
    Extensions' SS4.5.)
    This provides a valuable check on code consistency.  It does work
    with GCC 8.3 as in Rtools40, but that does not detect everything
    the CRAN checks with current GCC do.
  PACKAGE INSTALLATION on macOS:
  * The default personal library directory on builds with
  - -enable-aqua (including CRAN builds) now differs by CPU type,
    one of
    ~/Library/R/x86_64/x.y/library
    ~/Library/R/arm64/x.y/library
    This uses the CPU type R (and hence the packages) were built for,
    so when a x86_64 build of R is run under Rosetta emulation on an
    arm64 Mac, the first is used.
  UTILITIES:
  * R CMD check can now scan package functions for bogus return
    statements, which were possibly intended as return() calls (wish
    of PR#17180, patch by Sebastian Meyer). This check can be
    activated via the new environment variable
    _R_CHECK_BOGUS_RETURN_, true for --as-cran.
  * R CMD build omits tarballs and binaries of previous builds from
    the top-level package directory.  (PR#17828, patch by Sebastian
    Meyer.)
  * R CMD check now runs sanity checks on the use of LazyData, for
    example that a data directory is present and that
    LazyDataCompression is not specified without LazyData and has a
    documented value.  For packages with large LazyData databases
    without specifying LazyDataCompression, there is a reference to
    the code given in 'Writing R Extensions' SS1.1.6 to test the
    choice of compression (as in all the CRAN packages tested a
    non-default method was preferred).
  * R CMD build removes LazyData and LazyDataCompression fields from
    the DESCRIPTION file of packages without a data directory.
  ENCODING-RELATED CHANGES:
  * The parser now treats \Unnnnnnnn escapes larger than the upper
    limit for Unicode points (\U10FFFF) as an error as they cannot be
    represented by valid UTF-8.
    Where such escapes are used for outputting non-printable
    (including unassigned) characters, 6 hex digits are used (rather
    than 8 with leading zeros).  For clarity, braces are used, for
    example \U{0effff}.
  * The parser now looks for non-ASCII spaces on Solaris (as
    previously on most other OSes).
  * There are warnings (including from the parser) on the use of
    unpaired surrogate Unicode points such as \uD834.  (These cannot
    be converted to valid UTF-8.)
  * Functions nchar(), tolower(), toupper() and chartr() and those
    using regular expressions have more support for inputs with a
    marked Latin-1 encoding.
  * The character-classification functions used (by default) to
    replace the system iswxxxxx functions on Windows, macOS and AIX
    have been updated to Unicode 13.0.0.
    The character-width tables have been updated to include new
    assignments in Unicode 13.0.0.
  * The code for evaluating default (extended) regular expressions
    now uses the same character-classification functions as the rest
    of R (previously they differed on Windows, macOS and AIX).
  * There is a build-time option to replace the system's
    wide-character wctrans C function by tables shipped with R: use
    configure option --with-internal-towlower or (on Windows)
  - DUSE_RI18N_CASE in CFLAGS when building R.  This may be needed
    to allow tolower() and toupper() to work with Unicode characters
    beyond the Basic Multilingual Plane where not supported by system
    functions (e.g. on Solaris where it is the new default).
  * R is more careful when truncating UTF-8 and other multi-byte
    strings that are too long to be printed, passed to the system or
    libraries or placed into an internal buffer.  Truncation will no
    longer produce incomplete multibyte characters.
  DEPRECATED AND DEFUNCT:
  * Function plclust() from the package stats and
    package.dependencies(), pkgDepends(), getDepList(),
    installFoundDepends(), and vignetteDepends() from package tools
    are defunct.
  * Defunct functions checkNEWS() and readNEWS() from package tools
    and CRAN.packages() from utils have been removed.
  * R CMD config CXXCPP is defunct (it was deprecated in R 3.6.2).
  * parallel::detectCores() drops support for Irix (retired in 2013).
  * The LINPACK argument to chol.default(), chol2inv(),
    solve.default() and svd() has been defunct since R 3.1.0.  It was
    silently ignored up to R 4.0.3 but now gives an error.
  * Subsetting/indexing, such as ddd[*] or ddd$x on a DOTSXP
    (dot-dot-dot) object ddd has been disabled; it worked by accident
    only and was undocumented.
  BUG FIXES:
  * Many more C-level allocations (mainly by malloc and strdup) are
    checked for success with suitable alternative actions.
  * Bug fix for replayPlot(); this was turning off graphics engine
    display list recording if a recorded plot was replayed in the
    same session.  The impact of the bug became visible if resize the
    device after replay OR if attempted another savePlot() after
    replay (empty display list means empty screen on resize or empty
    saved plot).
  * R CMD check etc now warn when a package exports non-existing S4
    classes or methods, also in case of no "methods" presence.
    (Reported by Alex Bertram; reproducible example and patch by
    Sebastian Meyer in PR#16662.)
  * boxplot() now also accepts calls for labels such as ylab, the
    same as plot().  (Reported by Marius Hofert.)
  * The help page for xtabs() now correctly states that addNA is
    setting na.action = na.pass among others.  (Reported as PR#17770
    by Thomas Soeiro.)
  * The R CMD check &lt;pkg&gt; gives a longer and more comprehensible
    message when DESCRIPTION misses dependencies, e.g., in Imports:.
    (Thanks to the contributors of PR#17179.)
  * update.default() now calls the generic update() on the formula to
    work correctly for models with extended formulas.  (As reported
    and suggested by Neal Fultz in PR#17865.)
  * The horizontal position of leaves in a dendrogram is now correct
    also with center = FALSE.  (PR#14938, patch from Sebastian
    Meyer.)
  * all.equal.POSIXt() no longer warns about and subsequently ignores
    inconsistent "tzone" attributes, but describes the difference in
    its return value (PR#17277).  This check can be disabled _via_
    the new argument check.tzone = FALSE as suggested by Sebastian
    Meyer.
  * as.POSIXct() now populates the "tzone" attribute from its tz
    argument when x is a logical vector consisting entirely of NA
    values.
  * x[[2^31]] &lt;- v now works.  (Thanks to the report and patch by
    Suharto Anggono in PR#17330.)
  * In log-scale graphics, axis() ticks and label positions are now
    computed more carefully and symmetrically in their range,
    typically providing _more_ ticks, fulfilling wishes in PR#17936.
    The change really corresponds to an improved axisTicks() (package
    grDevices), potentially influencing grid and lattice, for
    example.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now correct to at
    least five digits where it was catastrophically wrong,
    previously.
  * sum(df) and similar "Summary"- and "Math"-group member functions
    now work for data frames df with logical columns, notably also of
    zero rows.  (Reported to R-devel by Martin "b706".)
  * unsplit() had trouble with tibbles due to unsound use of rep(NA,
    len)-indexing, which should use NA_integer_ (Reported to R-devel
    by Mario Annau.)
  * pnorm(x, log.p = TRUE) underflows to -Inf slightly later.
  * show(&lt;hidden S4 generic&gt;) prints better and without quotes for
    non-hidden S4 generics.
  * read.table() and relatives treated an "NA" column name as missing
    when check.names = FALSE PR#18007.
  * Parsing strings containing UTF-16 surrogate pairs such as
    "\uD834\uDD1E" works better on some (uncommon) platforms.
    sprintf("%X", utf8ToInt("\uD834\uDD1E")) should now give "1D11E"
    on all platforms.
  * identical(x,y) is no longer true for differing DOTSXP objects,
    fixing PR#18032.
  * str() now works correctly for DOTSXP and related exotics, even
    when these are doomed.
    Additionally, it no longer fails for lists with a class and
    "irregular" method definitions such that e.g. lapply(*) will
    necessarily fail, as currently for different igraph objects.
  * Too long lines in environment files (e.g. Renviron) no longer
    crash R. This limit has been increased to 100,000 bytes.
    (PR#18001.)
  * There is a further workaround for FreeType giving incorrect
    italic font faces with cairo-based graphics devices on macOS.
  * add_datalist(*, force = TRUE) (from package tools) now actually
    updates an existing data/datalist file for new content.  (Thanks
    to a report and patch by Sebastian Meyer in PR#18048.)
  * cut.Date() and cut.POSIXt() could produce an empty last interval
    for breaks = "months" or breaks = "years".  (Reported as PR#18053
    by Christopher Carbone.)
  * Detection of the encoding of 'regular' macOS locales such as
    en_US (which is UTF-8) had been broken by a macOS change:
    fortunately these are now rarely used with en_US.UTF-8 being
    preferred.
  * sub() and gsub(pattern, repl, x, *) now keep attributes of x such
    as names() also when pattern is NA (PR#18079).
  * Time differences ("difftime" objects) get a replacement and a
    rep() method to keep "units" consistent.  (Thanks to a report and
    patch by Nicolas Bennett in PR#18066.)
  * The \RdOpts macro, setting defaults for \Sexpr options in an Rd
    file, had been ineffective since R 2.12.0: it now works again.
    (Thanks to a report and patch by Sebastian Meyer in PR#18073.)
  * mclapply and pvec no longer accidentally terminate parallel
    processes started before by mcparallel or related calls in
    package parallel (PR#18078).
  * grep and other functions for evaluating (extended) regular
    expressions handle in Unicode also strings not explicitly flagged
    UTF-8, but flagged native when running in UTF-8 locale.
  * Fixed a crash in fifo implementation on Windows (PR#18031).
  * Binary mode in fifo on Windows is now properly detected from
    argument open (PR#15600, PR#18031).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1622808000">- The line %{__install} -m 755 -d %{_infodir}
  no longer works in TW or Factory.
  But without that line it works everywhere. So this instruction
  was commented out of the spec file.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1628596800">- CHANGES IN R 4.1.1:
  NEW FEATURES:
  * require(pkg, quietly = TRUE) is quieter and in particular does
    not warn if the package is not found.
  DEPRECATED AND DEFUNCT:
  * Use of ftp:// URIs should be regarded as deprecated, with
    on-going support confined to method = "libcurl" and not routinely
    tested.  (Nowadays no major browser supports them.)
  * The non-default method = "internal" is deprecated for http:// and
    ftp:// URIs for both download.file and url.
  * On Windows, method = "wininet" is deprecated for http://,
    https:// and ftp:// URIs for both download.file and url.  (A
    warning is only given for ftp://.)
    For ftp:// URIs the default method is now "libcurl" if available
    (which it is on CRAN builds).
    method = "wininet" remains the default for http:// and https://
    URIs but if libcurl is available, using method = "libcurl" is
    preferred.
  INSTALLATION:
  * make check now works also without a LaTeX installation.  (Thanks
    to Sebastian Meyer's PR#18103.)
  BUG FIXES:
  * make check-devel works again in an R build configured with
  - -without-recommended-packages.
  * qnbinom(p, size, mu) for large size/mu is correct now in a range
    of cases (PR#18095); similarly for the (size, prob)
    parametrization of the negative binomial.  Also qpois() and
    qbinom() are better and or faster for extreme cases.  The
    underlying C code has been modularized and is common to all four
    cases of discrete distributions.
  * gap.axis is now part of the axis() arguments which are passed
    from bxp(), and hence boxplot().  (Thanks to Martin Smith's
    report and suggestions in PR#18109.)
  * .First and .Last can again be set from the site profile.
  * seq.int(from, to, *) and seq.default(..) now work better in large
    range cases where from-to is infinite where the two boundaries
    are finite.
  * all.equal(x,y) now returns TRUE correctly also when several
    entries of abs(x) and abs(y) are close to .Machine$double.xmax,
    the largest finite numeric.
  * model.frame() now clears the object bit when removing the class
    attribute of a value via na.action (PR#18100).
  * charClass() now works with multi-character strings on Windows
    (PR#18104, fixed by Bill Dunlap).
  * encodeString() on Solaris now works again in Latin-1 encoding on
    characters represented differently in UTF-8.  Support for
    surrogate pairs on Solaris has been improved.
  * file.show() on Windows now works with non-ASCII path names
    representable in the current native encoding (PR#18132).
  * Embedded R on Windows can now find R home directory via the
    registry even when installed only for the current user
    (PR#18135).
  * pretty(x) with finite x now returns finite values also in the
    case where the extreme x values are close in size to the maximal
    representable number .Machine$double.xmax.
    Also, it's been tweaked for very small ranges and when a boundary
    is close (or equal) to zero; e.g., pretty(c(0,1e-317)) no longer
    has negative numbers, currently still warning about a very small
    range, and pretty(2^-(1024 - 2^-1/(c(24,10)))) is more accurate.
  * The error message for not finding vignette files when weaving has
    correct file sizes now. (Thanks to Sebastian Meyer's PR#18154.)
  * dnbinom(20, &lt;large&gt;, 1) now correctly gives 0, and similar cases
    are more accurate with underflow precaution.  (Reported by Francisco Vera Alcivar in PR#18072.)</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635163200">- repaired https://bugzilla.suse.com/show_bug.cgi?id=1191380
  (rpmacros now go to rpmmacrodir)
- minor clean-ups in spec file</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635768000">- CHANGES IN R 4.1.2:
  C-LEVEL FACILITIES:
  * The workaround in headers R.h and Rmath.h (using namespace std;)
    for the Oracle Developer Studio compiler is no longer needed now
    C++11 is required so has been removed.  A couple more usages of
    log() (which should have been std::log()) with an int argument
    are reported on Solaris.
  * The undocumented limit of 4095 bytes on messages from the
    S-compatibility macros PROBLEM and MESSAGE is now documented and
    longer messages will be silently truncated rather than
    potentially causing segfaults.
  * If the R_NO_SEGV_HANDLER environment variable is non-empty, the
    signal handler for SEGV/ILL/BUS signals (which offers recovery
    user interface) is not set. This allows more reliable debugging
    of crashes that involve the console.
  DEPRECATED AND DEFUNCT:
  * The legacy S-compatibility macros PROBLEM, MESSAGE, ERROR, WARN,
    WARNING, RECOVER, ... are deprecated and will be hidden in R
    4.2.0. R's native interface of Rf_error and Rf_warning has long
    been preferred.
  BUG FIXES:
  * .mapply(F, dots, .) no longer segfaults when dots is not a list
    and uses match.fun(F) as always documented; reported by Andrew
    Simmons in PR#18164.
  * hist(&lt;Date&gt;, ...) and hist(&lt;POSIXt&gt;, ...)  no longer pass
    arguments for rect() (such as col and density) to axis().
    (Thanks to Sebastian Meyer's PR#18171.)
  * \Sexpr{ch} now preserves Encoding(ch). (Thanks to report and
    patch by Jeroen Ooms in PR#18152.)
  * Setting the RNG to "Marsaglia-Multicarry" e.g., by RNGkind(), now
    warns in more places, thanks to Andr'e Gillibert's report and
    patch in PR#18168.
  * gray(numeric(), alpha=1/2) no longer segfaults, fixing PR#18183,
    reported by Till Krenz.
  * Fixed dnbinom(x, size=&lt;very_small&gt;, .., log=TRUE) regression,
    reported by Martin Morgan.
  * as.Date.POSIXlt(x) now keeps names(x), thanks to Davis Vaughan's
    report and patch in PR#18188.
  * model.response() now strips an "AsIs" class typically, thanks to
    Duncan Murdoch's report and other discussants in PR#18190.
  * try() is considerably faster in case of an error and long call,
    as e.g., from some do.call().  Thanks to Alexander Kaever's
    suggestion posted to R-devel.
  * qqline(y = &lt;object&gt;) such as y=I(.), now works, see also
    PR#18190.
  * Non-integer mgp par() settings are now handled correctly in
    axis() and mtext(), thanks to Mikael Jagan and Duncan Murdoch's
    report and suggestion in PR#18194.
  * formatC(x) returns length zero character() now, rather than ""
    when x is of length zero, as documented, thanks to Davis
    Vaughan's post to R-devel.
  * removeSource(fn) now retains (other) attributes(fn).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1647000000">- CHANGES IN R 4.1.3:
  NEW FEATURES:
  * The default version of Bioconductor has been changed to 3.14.
    (This is used by setRepositories and the menus in GUIs.)
  UTILITIES:
  * R CMD check --as-cran has a workaround for a bug in versions of
    file up to at least 5.41 which mis-identify DBF files last
    changed in 2022 as executables.
  C-LEVEL FACILITIES:
  * The legacy S-compatibility macros SINGLE_* in R_ext/Constants.h
    (included by R.h) are deprecated and will be removed in R 4.2.0.
  BUG FIXES:
  * Initialization of self-starting nls() models with initialization
    functions following the pre-R-4.1.0 API (without the ...
    argument) works again for now, with a deprecation warning.
  * Fixed quoting of ~autodetect~ in Java setting defaults to avoid
    inadvertent user lookup due to leading ~, reported in PR#18231 by
    Harold Gutch.
  * substr(., start, stop) &lt;- v now treats _negative_ stop values
    correctly.  Reported with a patch in PR#18228 by Brodie Gaslam.
  * Subscripting an array x without dimnames by a
    length(dim(x))-column character matrix gave "random" non-sense,
    now an error; reported in PR#18244 by Mikael Jagan.
  * ...names() now matches names(list(...)) closely, fixing PR#18247.
  * all.equal(*, scale = s) now works as intended when length(s) &gt; 1,
    partly thanks to Michael Chirico's PR#18272.
  * print(x) for long vectors x now also works for named atomic
    vectors or lists and prints the correct number when reaching the
    getOption("max.print") limit; partly thanks to a report and
    proposal by Hugh Parsonage to the R-devel list.
  * all.equal(&lt;selfStart&gt;, *) no longer signals a deprecation
    warning.
  * reformulate(*, response=r) gives a helpful error message now when
    length(r) &gt; 1, thanks to Bill Dunlap's PR#18281.
  * Modifying globalCallingHandlers inside withCallingHandlers() now
    works or fails correctly, thanks to Henrik Bengtsson's PR#18257.
  * hist(&lt;Date&gt;, breaks = "days") and hist(&lt;POSIXt&gt;, breaks = "secs")
    no longer fail for inputs of length 1.
  * qbeta(.001, .9, .009) and similar cases now converge correctly
    thanks to Ben Bolker's report in PR#17746.
  * window(x, start, end) no longer wrongly signals "'start' cannot
    be after 'end'", fixing PR#17527 and PR#18291.
  * data() now checks that its (rarely used) list argument is a
    character vector - a couple of packages passed other types and
    gave incorrect results.
  * which() now checks its arr.ind argument is TRUE rather coercing
    to logical and taking the first element - which gave incorrect
    results in package code.
  * model.weights() and model.offset() more carefully extract their
    model components, thanks to Ben Bolker and Tim Taylor's R-devel
    post.
  * list.files(recursive = TRUE) now shows all broken symlinks
    (previously, some of them may have been omitted, PR#18296).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1650628800">- CHANGES IN R 4.2.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * The formula method of aggregate() now matches the generic in
    naming its first argument x (resolving PR#18299 by Thomas
    Soeiro).
    This means that calling aggregate() with a formula as a named
    first argument requires name formula in earlier versions of R and
    name x now, so portable code should not name the argument (code
    in many packages did).
  * Calling &amp;&amp; or || with either argument of length greater than one
    now gives a warning (which it is intended will become an error).
  * Calling if() or while() with a condition of length greater than
    one gives an error rather than a warning.  Consequently,
    environment variable _R_CHECK_LENGTH_1_CONDITION_ no longer has
    any effect.
  * Windows users should consult the WINDOWS section below for some
    profound changes including
  * Support for 32-bit builds has been dropped.
  * UTF-8 locales are used where available.
  * The default locations for the R installation and personal
    library folder have been changed.
    Thanks to Tomas Kalibera for months of work on the Windows port
    for this release.
  NEW FEATURES:
  * matrix(x, n, m) now warns in more cases where length(x) differs
    from n * m, as suggested by Abby Spurdle and Wolfgang Huber in
    Feb 2021 on the R-devel mailing list.
    This warning can be turned into an error by setting environment
    variable _R_CHECK_MATRIX_DATA_ to TRUE: R CMD check --as-cran
    does so unless it is already set.
  * Function file_test() in package utils gains tests for symlinks,
    readability and writability.
  * capabilities("libxml") is now false.
    The description of capabilities("http/ftp") now reflects that it
    refers to the default method, no longer the internal one.
  * simplify2array() gains an except argument for controlling the
    exceptions used by sapply().
  * Environment variables R_LIBS_USER and R_LIBS_SITE are both now
    set to the R system default if unset or empty, and can be set to
    NULL to indicate an empty list of user or site library
    directories.
  * The warning for axis()(-like) calls in cases of relatively small
    ranges (typically in log-scale situations) is slightly improved
    _and_ suppressed from explicit calls to .axisPars() as has always
    been the intention.
  * The contrasts setter function `contrasts&lt;-` gains an explicit
    default how.many = NULL rather than just using missing(how.many).
  * grid.pretty() gains a new optional argument n = 5.
  * There is a new function .pretty() with option bounds as a
    technical-utility version of pretty().  It and pretty() gain a
    new argument f.min with a better than back-compatible default.
  * Function grDevices::axisTicks() and related functions such as
    graphics::axis() work better, notably for the log scale; partly
    because of the pretty() improvements, but also because care is
    taken e.g., when ylim is finite but diff(ylim) is infinite.
  * nclass.FD() gains a digits option.
  * The R Mathlib internal C function bd0() (called indirectly from a
    dozen probability density and distribution functions such as
    dpois(), dbinom(), dgamma(), pgamma() _etc_) has been
    complemented by a more sophisticated and (mostly) more accurate C
    function ebd0(), currently called only by internal dpois_raw()
    improving accuracy for R level dpois() and potentially others
    calling it such as dnbinom(), dgamma() or pgamma().  (Thanks to
    Morten Welinder's PR#15628.)
  * write.ftable() gains sep = " " argument as suggested by Thomas
    Soeiro.
  * The names of the locale categories supported by R's
    Sys.getlocale() and Sys.setlocale() are now provided by variable
    .LC.categories in the base namespace.
  * The Date and POSIXt methods for hist() and the histogram method
    for plot() now also use the new default col = "lightgray" in
    consistency with the corresponding change to hist()'s default for
    R 4.0.0.
  * hist.default() gains new fuzz argument, and the histogram plot
    method no longer uses fractional axis ticks when displaying
    counts ("Frequency").
  * mapply() and hence Map() now also obey the "max-or-0-if-any"
    recycling rule, such that, e.g., Map(`+`, 1:3, 1[0]) is valid
    now.
  * as.character(&lt;obj&gt;) for "hexmode" or "octmode" objects now
    fulfils the important basic rule as.character(x)[j] ===
    as.character(x[j]).
  * The set utility functions, notably intersect() have been tweaked
    to be more consistent and symmetric in their two set arguments,
    also preserving a common mode.
  * substr(ch, start,end) &lt;- new now e.g., preserves names(ch); ditto
    for substring(), thanks to a patch from Brodie Gaslam.
  * plot(&lt;lm&gt;) gains a extend.ylim.f argument, in partial response to
    PR#15285; further PR#17784 is fixed thanks to several
    contributors and a patch by Elin Waring.  The Cook's dist
    contours get customizable via cook.col and cook.lty with a
    different default color and their legend is nicer by default and
    customizable via cook.legendChanges.
  * Attempting to subset an object that is not subsettable now
    signals an error of class notSubsettableError. The
    non-subsettable object is contained in the object field of the
    error condition.
  * Subscript-out-of-bounds errors are now signaled as errors of
    class subscriptOutOfBoundsError.
  * Stack-overflow errors are now signaled as errors inheriting from
    class stackOverflowError. See ?stackOverflowError for more
    details.
  * New partly experimental Sys.setLanguage() utility, solving the
    main problem of PR#18055.
  * gettext() and gettextf() get a new option trim = TRUE which when
    set to false allows translations for strings such as "Execution
    halted\n" typical for C code.
  * An experimental implementation of hash tables is now available.
    See ?hashtab for more details.
  * identical() gains a extptr.as.ref argument for requesting that
    external pointer objects be compared as reference objects.
  * reorder() gets an argument decreasing which it passes to sort()
    for level creation; based on the wish and patch by Thomas Soeiro
    in PR#18243.
  * as.vector() gains a data.frame method which returns a simple
    named list, also clearing a long standing 'FIXME' to enable
    as.vector(&lt;data.frame&gt;, mode="list").  This breaks code relying
    on as.vector(&lt;data.frame&gt;) to return the unchanged data frame.
  * legend() is now vectorized for arguments cex, x.intersp, and
    text.width.  The latter can now also be specified as a vector
    (one element for each column of the legend) or as NA for
    computing a proper column wise maximum value of strwidth(legend).
    The argument y.intersp can be specified as a vector with one
    entry for each row of the legend.
    legend() also gains new arguments title.cex and title.font.
    Thanks to Swetlana Herbrandt.
  * Deparsing no longer remaps attribute names dim, dimnames, levels,
    names and tsp to historical S-compatible names (which structure()
    maps back).
  * sample() and sample.int() have additional sanity checks on their
    size and n arguments.
    all.equal.numeric() gains a sanity check on its tolerance
    argument - calling all.equal(a, b, c) for three numeric vectors
    is a surprisingly common error.
    mean(na.rm =), rank(na.last =), barplot(legend.text =),
    boxplot(), contour(drawlabels =), polygon(border =) and
    methods::is(class2 =) have more robust sanity checks on their
    arguments.
    R CMD Rd2pdf (used by R CMD check) has a more robust sanity check
    on the format of \alias{} commands.
  * psigamma(x, deriv) for negative x now also works for deriv = 4
    and 5; their underlying C level dpsifn() is documented in
    'Writing R Extensions'.
  * The HTML help system now uses HTML5 (wish of PR#18149).
  * ks.test() now provides exact p-values also with ties and MC
    p-values in the two-sample (Smirnov) case.  By Torsten Hothorn.
  * ks.test() gains a formula interface, with y ~ 1 for the
    one-sample (Kolmogorov) test and y ~ group for the two-sample
    (Smirnov) test.  Contributed by Torsten Hothorn.
  * The return value from ks.test() now has class c("ks.test",
    "htest") - packages using try() need to take care to use
    inherits() and not == on the class.
  * New functions psmirnov(), qsmirnov() and rsmirnov() in package
    stats implementing the asymptotic and exact distributions of the
    two-sample Smirnov statistic.
  * iconv() now allows sub = "c99" to use C99-style escapes for UTF-8
    inputs which cannot be converted to encoding to.
  * In a forward pipe |&gt; expression it is now possible to use a named
    argument with the placeholder _ in the rhs call to specify where
    the lhs is to be inserted.  The placeholder can only appear once
    on the rhs.
  * The included LAPACK sources have been updated to version 3.10.0,
    except for the four Fortran 77 routines which 3.10.0 has
    re-implemented in Fortran 90 (where the older versions have been
    retained as the R build process does not support Fortran 90).
  * path.expand() and most other uses of tilde expansion now warn if
    a path would be too long if expanded.  (An exception is
    file.exists(), which silently returns false.)
  * trunc(&lt;Date&gt;, *) now supports units = "months" or "years" for
    consistency with the POSIXt method, thanks to Dirk Eddelbuettel's
    proposal in PR#18099.
  * list2DF() now checks that its arguments are of the same length,
    rather than use recycling.
  * The HTML help system has several new features: LaTeX-like math
    can be typeset using either KaTeX or MathJax, usage and example
    code is highlighted using Prism, and for dynamic help the output
    of examples and demos can be shown within the browser if the
    knitr package is installed. These features can be disabled by
    setting the environment variable _R_HELP_ENABLE_ENHANCED_HTML_ to
    a false value.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 15
    and so packages that provide graphics devices should be
    reinstalled.
  * The grid package now allows the user to specify a "vector" of
    pattern fills.  The fill argument to gpar() accepts a list of
    gradients and/or patterns and the functions linearGradient(),
    radialGradient(), and pattern() have a new group argument.
    Points grobs (data symbols) can now also have a pattern fill.
    The grobCoords() function now returns a more informative and
    complex result.
  * The grid package has new functions for drawing isolated groups:
    grid.group(), grid.define(), and grid.use().  These functions add
    compositing operators and affine transformations to R's graphics
    capabilities.
    The grid package also has new functions for stroking and filling
    paths: grid.stroke(), grid.fill(), and grid.fillStroke().
    A new function as.path() allows the user to specify the fill rule
    for a path that is to be used for clipping, stroking, or filling;
    available options are "winding" and "evenodd".  A new function
    as.mask() allows the user to specify the type of a mask;
    available options are "alpha" and "luminance".
    These new features are only supported so far (at most) on the
    Cairo-based graphics devices and on the pdf() device.
  * dev.capabilities() reports on device support for the new
    features.
  * par() now warns about unnamed non-character arguments to prevent
    misuse such as {usr &lt;- par("usr"); par(usr)}.
  INSTALLATION:
  * Facilities for accessing ftp:// sites are no longer tested
    (except _pro tem_ for curlGetHeaders()) as modern browsers have
    removed support.
  * R can now be built with DEFS = -DSTRICT_R_HEADERS .
  PACKAGE INSTALLATION:
  * R CMD INSTALL no longer tangles vignettes. This completes an R
    CMD build change in R 3.0.0 and affects packages built before R
    3.0.2. Such packages should be re-made with R CMD build to have
    the tangled R code of vignettes shipped with the tarball.
  * USE_FC_LEN_T will become the default: this uses the correct
    prototypes for Fortran BLAS/LAPACK routines called from C/C++,
    and requires adjustment of most such calls - see 'Writing R
    Extensions' SS6.6.2.  (This has been supported since R 3.6.2.)
  * Package installation speed for packages installed with
    keep.source has been improved. This resolve the issue reported by
    Ofek Shilon in PR#18236.
  UTILITIES:
  * R CMD check can optionally report files/directories left behind
    in home, /tmp (even though TMPDIR is set) and other directories.
    See the "R Internals" manual for details.
  * R CMD check now reports byte-compilation errors during
    installation.  These are not usually fatal but may result in
    parts of the package not being byte-compiled.
  * _R_CHECK_DEPENDS_ONLY_ can be applied selectively to examples,
    tests and/or vignettes in R CMD check: see the "R Internals"
    manual.
  * _R_CHECK_SRC_MINUS_W_IMPLICIT_ now defaults to true: recent
    versions of Apple clang on macOS have made implicit function
    declarations in C into a compilation error.
  * R CMD check --as-cran makes use of the environment variable
    AUTORECONF.  See the "R Internals" manual SS8 for further details.
  * R CMD check --use-valgrind also uses valgrind when re-building
    vignettes as some non-Sweave vignettes unhelpfully comment out
    all their code when R CMD check runs vignettes.
  * Errors in re-building vignettes (unless there are LaTeX errors)
    are reported by R CMD check as ERROR rather than WARNING when
    running vignettes has been skipped (as it frequently is in CRAN
    checks and by --as-cran).
  * R CMD Rd2pdf gains a --quiet option that is used by R CMD build
    when building the PDF package manual.
  * R CMD Rd2pdf now always runs LaTeX in batch mode, consistent with
    Texinfo &gt;= 6.7. The --batch option is ignored.
  * R CMD build and R CMD check now include the Rd file name and line
    numbers in the error message of an \Sexpr evaluation failure.
  * For packages using the \doi Rd macro (now an install-time \Sexpr)
    but no other dynamic Rd content, R CMD build now produces a
    smaller tarball and is considerably faster - skipping temporary
    package installation.
  C-LEVEL FACILITIES:
  * The non-API header R_ext/R-ftp-http.h is no longer provided, as
    the entry points it covered are now all defunct.
  * A number of non-API declarations and macro definitions have been
    moved from the installed header Rinternals.h to the internal
    header Defn.h. Packages that only use entry points and
    definitions documented to be part of the API as specified in
    'Writing R Extensions' SS6 should not be affected.
  * The macro USE_RINTERNALS no longer has any effect when compiling
    package code.  Packages which also use R_NO_REMAP will need to
    ensure that the remapped names are used for calls to API
    functions that were formerly also made available as macros.
  * The deprecated legacy S-compatibility macros PROBLEM, MESSAGE,
    ERROR, WARN, WARNING, RECOVER, ... are no longer defined in
    R_exts/RS.h (included by R.h).  Replace these by calls to
    Rf_error and Rf_warning (defined in header R_ext/Error.h included
    by R.h).
    Header R_ext/RS.h no longer includes R_ext/Error.h.
  * Header R_ext/Constants.h (included by R.h) when included from C++
    now includes the C++ header cfloat rather than the C header
    float.h (now possible as C++11 is required).
  * The legacy S-compatibility macros DOUBLE_* in R_ext/Constants.h
    (included by R.h) are deprecated.
  * The deprecated S-compatibility macros SINGLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * R_Calloc, R_Free and R_Realloc are preferred to their unprefixed
    forms and error messages now use the prefix. These forms were
    introduced in R 3.4.0 and are available even when
    STRICT_R_HEADERS is defined.
  * rmultinom has been documented in 'Writing R Extensions' SS6 so is
    now part of the R API.
  * Similarly, Rtanpi, called from R level tanpi() is now part of the
    R API.
  * The long-deprecated, undocumented and non-API entry point call_R
    is no longer declared in R_ext/RS.h (included by R.h).
  * The header S.h which has been unsupported since Jan 2016 has been
    removed.  Use R.h instead.
  DEPRECATED AND DEFUNCT:
  * The (non-default and deprecated) method = "internal" for
    download.file() and url() no longer supports http:// nor ftp://
    URIs.  (It is used only for file:// URIs.)
    On Windows, download.file(method = "wininet") no longer supports
    ftp:// URIs.  (It is no longer the default method, which is
    "libcurl" and does.)
    On Windows, the deprecated method = "wininet" now gives a warning
    for http:// and https:// URIs for both download.file() and url().
    (It is no longer the default method.)
  * On Windows, the command-line option --max-mem-size and
    environment variable R_MAX_MEM_SIZE are defunct.  The memory
    allocation limit was important for 32-bit builds, but these are
    no longer supported.
  * default.stringsAsFactors() is now formally deprecated, where that
    was only mentioned on its regular help page, previously.  So it
    now gives a warning if called.
  * unix.time() is defunct now; it had been deprecated since R 3.4.0.
  BUG FIXES:
  * Setting digits = 0 in format(), print.default() (and hence
    typically print()) or options() is again invalid.  Its behaviour
    was platform-dependent, and it is unclear what "zero significant
    digits" should mean (PR#18098).
  * Messages from C code in the cairo section of package grDevices
    are now also offered for translation, thanks to Michael Chirico's
    PR#18123.
  * mean(x) with finite x now is finite also without "long.double"
    capability.
  * R CMD Rd2pdf no longer leaves an empty build directory behind
    when it aborts due to an already existing output file.  (Thanks
    to Sebastian Meyer's PR#18141.)
  * density(x, weights = w, na.rm = TRUE) when anyNA(x) is true, now
    removes weights "in parallel" to x, fixing PR#18151, reported by
    Matthias Gondan.  Additionally, it gets a subdensity option.
  * Conversion of \Sexpr[]{&lt;expR&gt;} to LaTeX or HTML no longer
    produces long blocks of empty lines when &lt;expR&gt; itself contains
    several lines all producing empty output.  Thanks to a report and
    patch by Ivan Krylov posted to R-devel.
  * R CMD build no longer fails if a package vignette uses child
    documents and inst/doc exists.  (Thanks to Sebastian Meyer's
    PR#18156.)
  * When an R documentation ('help' source) file man/foo.Rd in a
    package has \donttest{..} examples with a syntax error, it is now
    signalled as ERROR and with correct line numbers relating to the
  * -Ex.R file, thanks to Duncan Murdoch and Sebastian Meyer's
    reports and patch proposals in PR#17501.
  * Improved determination of the correct translation domain in
    non-base packages, addressing the combination of PR#18092 and
    PR#17998 (#c6) with reports and _augmented_ patch #2904 by
    Suharto Anggono.
    Note that "R-base" is no longer the default domain e.g., for
    top-level calls to gettext(); rather translation needs explicit
    domain = * specification in such cases.
  * identical(attrib.as.set=FALSE) now works correctly with data
    frames with default row names (Thanks to Charlie Gao's PR#18179).
  * txtProgressBar() now enforces a non-zero width for argument char,
    without which no progress can be visible.
  * dimnames(table(d)) is more consistent in the case where d is a
    list with a single component, thanks to Thomas Soeiro's report to
    R-devel.
    Further, table(d1, d2) now gives an error when d1 and d2 are data
    frames as suggested by Thomas in PR#18224.
  * Fix for drawing semi-transparent lines and fills on the native
    Windows graphics device (PR#18219 and PR#16694).  Thanks to Nick
    Ray for helpful diagnosis on Bugzilla.
  * The deparser now wraps sub-expressions such as if(A) ..  with
    parentheses when needed; thanks to Duncan Murdoch's PR#18232 and
    Lionel Henry's patches there.
  * remove.packages() no longer tries to uninstall Priority: base
    packages, thanks to a report and suggestions by Colin Fay in
    PR#18227.
  * win.metafile() now has xpinch and ypinch arguments so that the
    user can override Windows' (potentially wrong) guess at device
    dimensions.
  * x[i] and x[[i]] for non-integer i should now behave in all cases
    as always documented: the index used is equivalent to
    as.integer(i) unless that would overflow where trunc(i) is used
    instead; thanks to Suharto Anggono's report and patch proposals
    in PR#17977.
  * asOneSidedFormula() now associates the resulting formula with the
    global environment rather than the evaluation environment created
    for the call.
  * &lt;bibentry&gt;$name now matches the field name case-insensitively,
    consistent with bibentry() creation and the replacement method.
  * cbind() failed to detect some length mismatches with a mixture of
    time-series and non-time-series inputs.
  * The default LaTeX style file Sweave.sty used by the RweaveLatex
    driver no longer loads the obsolete ae package; thanks to a
    report by Thomas Soeiro in PR#18271.  Furthermore, it now skips
    \usepackage[T1]{fontenc} for engines other than pdfTeX (if
    detected) or if the new [nofontenc] option is used.
  * smooth.spline() now stores its logical cv argument more safely,
    fixing a rare bug when printing, and also stores n.
  * smooth.spline(x,y,*) now computes the cv.crit statistic
    correctly, also when is.unsorted(x), fixing PR#18294.
  * The data.frame method of rbind() now warns when binding
    not-wholly-recycling vectors, by analogy to the default method
    (for matrices).
  * setAs() finds the correct class for name to when multiple
    packages define a class with that name. Thanks to Gabor Csardi
    for the report.
  * Fix for detaching a package when two classes of the same name are
    present in method signatures for the same generic. Thanks to
    Gabor Csardi for the report.
  * match.arg("", c("", "a", "B")) gives a better error message, in
    part from PR#17959, thanks to Elin Waring.
  * R CMD Sweave --clean no longer removes pre-existing files or
    subdirectories (PR#18242).
  * The quartz() device no longer splits polylines into subpaths.
    That has caused narrowly-spaced lines with many points to always
    look solid even when dashed line type was used due to dash phase
    restarts.
  * Deparsing constructs such as quote(1 + `!`(2) + 3) works again as
    before R 3.5.0, thanks to the report and patch in PR#18284 by
    Suharto Anggono.
  * as.list(f) for a factor f now keeps names(f), fixing PR#18309.
  * qbeta(.001, .9, .009) and analogous qf() calls now return a
    correct value instead of NaN or wrongly 1, all with a warning;
    thanks to the report by Ludger Goeminne in PR#18302.
  * plot.lm() failed to produce the plot of residuals vs.  factor
    levels (i.e., which=5 when leverages are constant) for models
    with character predictors (PR#17840).
  * interaction.plot(..., xtick = TRUE) misplaced the x-axis line
    (PR#18305).
  * Not strictly fixing a bug, format()ing and print()ing of
    non-finite Date and POSIXt values NaN and +/-Inf no longer show
    as NA but the respective string, e.g., Inf, for consistency with
    numeric vector's behaviour, fulfilling the wish of PR#18308.
  * R CMD check no longer runs test scripts generated from
    corresponding .Rin files twice and now signals an ERROR if
    processing an .Rin script fails.
  * tools::Rd2txt() used for plain-text help pages now renders \hrefs
    (if tools::Rd2txt_options(showURLs = TRUE)) and \urls with
    percent-encoding and standards-compliant delimiting style (angle
    brackets and no URL: prefix).  \email is now rendered with a
    mailto: prefix.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1655985600">- CHANGES IN R 4.2.1:
  NEW FEATURES:
  * New function utils::findCRANmirror() to find out if a CRAN mirror
    has been selected, otherwise fallback to the main site.  This
    behaves in the same way as tools::CRAN_package_db() and is
    intended for packages wishing to access CRAN for purposes other
    than installing packages.
    The need for this was shown by a day when the main CRAN website
    was offline and a dozen or so packages which had its URL
    hardcoded failed their checks.
  INSTALLATION on a UNIX-ALIKE:
  * The libraries searched for by --with-blas (without a value) now
    include BLIS (after OpenBLAS but before ATLAS).  And on macOS,
    the Accelerate framework (after ATLAS).  (This is patterned after
    the AX_BLAS macro from the Autoconf Archive.)
  * The included LAPACK sources have been updated to 3.10.1.
  UTILITIES:
  * The (full path to) the command tidy to be used for HTML
    validation can be set by environment variable R_TIDYCMD.
  * Setting environment variable _R_CHECK_RD_VALIDATE_RD2HTML_ to a
    false value will override R CMD check --as-cran and turn off HTML
    validation.  This provides a way to circumvent a problematic
    tidy.
    The 2006 version that ships with macOS is always skipped.
  C-LEVEL FACILITIES:
  * The undocumented legacy declarations of Sint, Sfloat, SINT_MAX
    and SINT_MIN in header R.h are deprecated.
  BUG FIXES:
  * fisher.test(d) no longer segfaults for "large" d; fixing PR#18336
    by preventing/detecting an integer overflow reliably.
  * tar(., files=*) now produces correctly the warning about invalid
    uid or gid of files, fixing PR#18344, reported by Martin Morgan.
  * tk_choose.files() with multi = FALSE misbehaved on paths
    containing spaces (PR#18334) (regression introduced in R 4.0.0).
  * sort(x, partial = ind, *) now works correctly notably for the
    non-default na.last = FALSE or TRUE, fixing PR#18335 reported by
    James Edwards.
  * Environment variable _R_CHECK_XREFS_REPOSITORIES_ is only used
    for checking .Rd cross-references in R CMD check (as documented)
    and not for other uses looking for a CRAN mirror.
  * The search for a CRAN mirror when checking packages now uses
    getOption("repos") if that specifies a CRAN mirror, even when it
    does not also specify all three Bioconductor repositories (as was
    previously required).
  * The HTML code generated by tools::Rd2HTML() has been improved to
    pass tidy 5.8.0.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1667217600">- CHANGES IN R 4.2.2:
  NEW FEATURES:
  * tools::Rdiff(useDiff = TRUE) checks for the presence of an
    external diff command and switches to useDiff = FALSE if none is
    found.  This allows R CMD Rdiff to always work.
  * On Windows, environment variable R_LIBCURL_SSL_REVOKE_BEST_EFFORT
    can be used to switch to only 'best-effort' SSL certificate
    revocation checks with the default "libcurl" download method.
    This reduces security, but may be needed for downloads to work
    with MITM proxies (PR#18379).
  * (macOS) The run-time check for libraries from XQuartz for X11 and
    Tcl/Tk no longer uses otool from the Apple Developer Tools
    (PR#18400).
  * The LaTeX style for producing the PDF manuals, Rd.sty, now loads
    the standard amsmath, amsfonts and amssymb packages for greater
    coverage of math commands in the Rd \eqn and \deqn macros.  The
    \mathscr LaTeX command is also provided (via the mathrsfs
    package, if available, or the amsfonts bundle otherwise),
    fulfilling the wish of PR#18398.
  * (Windows) The default format of readClipboard() and
    writeClipboard() has been changed to 13 (CF_UNICODETEXT).
  INSTALLATION on a UNIX-ALIKE:
  * The PDF manuals (if built) can be compacted by the new target
    make compact-pdf (at the top level or in directory doc/manual).
  * There is now configure support for LLVM clang 15 on Linux, which
    defaults to position-independent (PIE) executables whereas
    gfortran does not.
  * Many small changes to ease compilation (and suppress warnings)
    with LLVM clang 15.
  BUG FIXES:
  * Rscript -e would fail if stdin were closed (Reported by Henrik
    Bengtsson.)
  * qt(*, log.p=TRUE) in outer tails no longer produces NaN in its
    final steps, thus fixing PR#18360.
  * tools::Rd2latex() now escapes hashes and ampersands when writing
    URLs, fixing LaTeX errors with such URLs in \tabular.
  * When isGeneric(f, fdef=*) is used with mismatching names, the
    warning is better understandable; reported (with fix) in PR#18370
    by Gabe Becker.
  * poly(x, n) now works again (and is now documented) when x is a
    "Date" or "POSIXct" object, or of another class while fulfilling
    mode(x) == "numeric".  This also enables poly(x, *, raw=TRUE) for
    such variables.  Reported by Michael Chirico to R-devel.
  * write.table(), write.csv() and write.csv2() restore their
    numerical precision (internal equivalent of digits = 15) after an
    interrupt (PR#18384).
  * One can now read also byte FF from a clipboard connection
    (PR#18385).
  * source("") and source(character()) now give more helpful error
    messages.
  * R CMD check --as-cran set _R_CHECK_TIMINGS_ too late to have the
    intended effect.
  * as.POSIXlt(x) now also works with very large dates x, fixing
    PR#18401 reported by Hannes M"uhleisen.
  * Files can now be extracted even from very large zip archives
    (PR#18390, thanks to Martin Jakt).
  * Non-finite objects of class "POSIXlt" are now correctly coerced
    to classes "Date" and "POSIXct"; following up on the extension to
    format() them correctly.
  * Added methods for is.finite(), is.infinite() and is.nan() for
    "POSIXlt" date-time objects.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1678881600">- CHANGES IN R 4.2.3:
  C-LEVEL FACILITIES:
  * The definition of DL_FUNC in R_ext/Rdynload.h has been changed to
    be fully C-compliant.  This means that functions loaded _via_ for
    example R_GetCCallable need to be cast to an appropriate type if
    they have any arguments.
  * .Machine has a new element sizeof.time_t to identify old systems
    with a 32-bit type and hence a limited range of date-times (and
    limited support for dates millions of years from present).
  PACKAGE INSTALLATION:
  * (Windows) The default C++ standard had accidentally been left at
    C++11 when it was changed to C++14 on Unix.
  BUG FIXES:
  * As "POSIXlt" objects may be "partially filled" and their list
    components meant to be recycled, length() now is the length of
    the longest component.
  * as.POSIXlt.Date() could underflow for dates in the far past (more
    than half a million years BCE).
  * as.Date.POSIXlt(x) would return "1970-01-01" instead of NA in R
    4.2.2, e.g., for
    x &lt;- as.POSIXlt(c("2019-01-30","2001-1-1"))
    x$mon &lt;- c(0L, NA); as.Date(x)
  * R CMD check failed to apply enabled _R_CHECK_SUGGESTS_ONLY_ to
    examples and vignettes (regression in R 4.2.0).
  * R CMD check did not re-build vignettes in separate processes by
    default (regression in R 4.2.0).
  * Running examples from HTML documentation now restores previous
    knitr settings and options (PR#18420).
  * Quartz: fonts are now located using Core Graphics API instead of
    deprecated ATS which is no longer supported in the macOS 13 SDK
    (PR#18426).  This also addresses an issue where the currently
    used font in the Quartz device context was not correctly
    retained.
  * (Windows) Math symbols in text drawing functions are again
    rendered correctly (PR#18440).  This fixes a regression in R
    4.2.1 caused by a fix in PR#18382 which uncovered an issue in
    GraphApp due to which the symbol charset was not used with TT
    Symbol font face.
  * (Windows) Installing a package with a src/Makefile.{win,ucrt}
    file includes ~/.R/Makevars.win64 in the search for user
    makevars, as documented in "R Installation and Administration"
    and done for packages with a src/Makevars.{win,ucrt} file.
  * format(&lt;POSIXlt_w/_unbalanced_sec&gt;, "....%OS&lt;n&gt;") with n &gt; 0 no
    longer accidentally uses the unbalanced seconds, thanks to
    Suharto Anggono's report (including patch) in PR#18448.
  * solve.default(a, b) works around issues with some versions of
    LAPACK when a contains NA or NaN values.
  * When UseMethod() cannot dispatch, it no longer segfaults
    producing the error message in case of a long class(), thanks to
    Joris Vankerschaver's report (including patch) in PR#18447.
  * When example(foo, ..) produces graphics on an interactive device
    it needs to open itself, it now leaves devAskNewPage() unchanged
    even when it was FALSE, thus fixing a 14 years old '&lt;FIXME&gt;'.
  * packageDescription() again catches errors from encoding
    conversions. This also fixes broken packageVersion() in C locale
    on systems where iconv does not support transliteration.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1681128000">- add patch to build with libcurl &gt;= 8</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1682078400">- CHANGES IN R 4.3.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Calling &amp;&amp; or || with LHS or (if evaluated) RHS of length greater
    than one is now always an error, with a report of the form
    'length = 4' in coercion to 'logical(1)'
    Environment variable _R_CHECK_LENGTH_1_LOGIC2_ no longer has any
    effect.
  NEW FEATURES:
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.10.1.  (This caused some platform-dependent
    changes to package check output.)  And then to the sources from
    LAPACK version 3.11.0 (with changes only to double complex
    subroutines).
  * The included LAPACK sources have been updated to include the four
    Fortran 90 routines rather than their Fortran 77 predecessors.
    This may give some different signs in SVDs or
    eigendecompositions..  (This completes the transition to LAPACK
    3.10.x begun in R 4.2.0.)
  * The LAPACK sources have been updated to version 3.11.0.  (No new
    subroutines have been added, so this almost entirely bug fixes:
    Those fixes do affect some computations with NaNs, including R's
    NA.)
  * The parser now signals _classed_ errors, notably in case of the
    pipe operator |&gt;.  The error object and message now give line and
    column numbers, mostly as proposed and provided by Duncan Murdoch
    in PR#18328.
  * toeplitz() is now generalized for asymmetric cases, with a
    toeplitz2() variant.
  * xy.coords() and xyz.coords() and consequently, e.g., plot(x,y,
    log = "y") now signal a _classed_ warning about negative values
    of y (where log(.) is NA).  Such a warning can be specifically
    suppressed or caught otherwise.
  * Regular expression functions now check more thoroughly whether
    their inputs are valid strings (in their encoding, e.g. in
    UTF-8).
  * The performance of grep(), sub(), gsub() and strsplit() has been
    improved, particularly with perl = TRUE and fixed = TRUE.  Use of
    useBytes = TRUE for performance reasons should no longer be
    needed and is discouraged: it may lead to incorrect results.
  * apropos() gains an argument dot_internals which is used by the
    completion (help(rcompgen)) engine to also see base internals
    such as .POSIXct().
  * Support in tools::Rdiff() for comparing uncompressed PDF files is
    further reduced - see its help page.
  * qqplot(x, y, ...) gains conf.level and conf.args arguments for
    computing and plotting a confidence band for the treatment
    function transforming the distribution of x into the distribution
    of y (Switzer, 1976, _Biometrika_). Contributed by Torsten
    Hothorn.
  * Performance of package_dependencies() has been improved for cases
    when the number of dependencies is large.
  * Strings newly created by gsub(), sub() and strsplit(), when any
    of the inputs is marked as "bytes", are also marked as "bytes".
    This reduces the risk of creating invalid strings and accidental
    substitution of bytes deemed invalid.
  * Support for readLines(encoding = "bytes") has been added to allow
    processing special text files byte-by-byte, without creating
    invalid strings.
  * iconv(from = "") now takes into account any declared encoding of
    the input elements and uses it in preference to the native
    encoding.  This reduces the risk of accidental creation of
    invalid strings, particularly when different elements of the
    input have different encoding (including "bytes").
  * Package repositories in getOption("repos") are now initialized
    from the repositories file when utils is loaded (if not already
    set, e.g., in .Rprofile).  (From a report and patch proposal by
    Gabriel Becker in PR#18405.)
  * compactPDF() gets a verbose option.
  * type.convert() and hence read.table() get new option tryLogical =
    TRUE with back compatible default.  When set to false, converts
    "F" or "T" columns to character.
  * Added new unit prefixes "R" and "Q" for abbreviating
    (unrealistically large) sizes beyond 10^{27} in standard = "SI",
    thanks to Henrik Bengtsson's PR#18435.
  * as.data.frame()'s default method now also works fine with atomic
    objects inheriting from classes such as "roman", "octmode" and
    "hexmode", such fulfilling the wish of PR#18421, by Benjamin
    Feakins.
  * The as.data.frame.vector() utility now errors for wrong-length
    row.names.  It warned for almost six years, with "Will be an
    error!".
  * sessionInfo() now also contains La_version() and reports codepage
    and timezone when relevant, in both print() and toLatex() methods
    which also get new option tzone for displaying timezone
    information when locale = FALSE.
  * New function R_compiled_by() reports the C and Fortran compilers
    used to build R, if known.
  * predict(&lt;lm&gt;, newdata = *) no longer unnecessarily creates an
    offset of all 0s.
  * solve() for complex inputs now uses argument tol and by default
    checks for 'computational singularity' (as it long has done for
    numeric inputs).
  * predict(&lt;rank-deficient lm&gt;, newdata=*) now obeys a new argument
    rankdeficient, with new default "warnif", warning only if there
    are non-estimable cases in newdata.  Other options include
    rankdeficient = "NA", predicting NA for non-estimable newdata
    cases.  This addresses PR#15072 by Russ Lenth and is based on his
    original proposal and discussions in PR#16158 also by David Firth
    and Elin Waring.  Still somewhat experimental.
  * Rgui console implementation now works better with the NVDA screen
    reader when the full blinking cursor is selected.  The underlying
    improvements in cursor handling may help also other screen
    readers on Windows.
  * The drop-field control in GraphApp can now be left with the TAB
    key and all controls can be navigated in the reverse order using
    the Shift+TAB key, improving accessibility of the Rgui
    configuration editor.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now fully accurate
    (instead of to "only" minimally five digits).
  * demo(error.catching) now also shows off withWarnings() and
    tryCatchWEMs().
  * As an experimental feature the placeholder _ can now also be used
    in the rhs of a forward pipe |&gt; expression as the first argument
    in an extraction call, such as _$coef. More generally, it can be
    used as the head of a chain of extractions, such as _$coef[[2]].
  * Spaces in the environment variable used to choose the R session's
    temporary directory (TMPDIR, TMP and TEMP are tried in turn) are
    now fatal.  (On Windows the 'short path' version of the path is
    tried and used if that does not contain a space.)
  * all.equal.numeric() gets a new optional switch giveErr to return
    the numeric error as attribute.  Relatedly,
    stopifnot(all.equal&lt;some&gt;(a, b, ..)) is as "smart" now, as
    stopifnot(all.equal(....)) has been already, thus allowing
    customized all.equal&lt;Some&gt;() wrappers.
  * R on Windows is now able to work with path names longer than 260
    characters when these are enabled in the system (requires at
    least Windows 10 version 1607).  Packages should be updated to
    work with long paths as well, instead of assuming PATH_MAX to be
    the maximum length.  Custom front-ends and applications embedding
    R need to update their manifests if they wish to allow this
    feature.  See
    &lt;https://blog.r-project.org/2023/03/07/path-length-limit-on-windows&gt;
    for more information.
  * 'Object not found' and 'Missing argument' errors now give a more
    accurate error context. Patch provided by Lionel Henry in
    PR#18241.
  * The @ operator is now an S3 generic. Based on contributions by
    Tomasz Kalinowski in PR#18482.
  * New generic chooseOpsMethod() provides a mechanism for objects to
    resolve cases where two suitable methods are found for an Ops
    Group Generic. This supports experimenting with alternative
    object systems. Based on contributions by Tomasz Kalinowski in
    PR#18484.
  * inherits(x, what) now accepts values other than a simple
    character vector for argument what. A new generic, nameOfClass(),
    is called to resolve the class name from what. This supports
    experimenting with alternative object systems. Based on
    contributions by Tomasz Kalinowski in PR#18485.
  * Detection of BLAS/LAPACK in use (sessionInfo()) with FlexiBLAS
    now reports the current backend.
  * The "data.frame" method for subset() now warns about extraneous
    arguments, typically catching the use of = instead of == in the
    subset expression.
  * Calling a:b when numeric a or b is longer than one may now be
    made into an error by setting environment variable
    _R_CHECK_LENGTH_COLON_ to a true value, along the proposal in
    PR#18419 by Henrik Bengtsson.
  * density(x, weights = *) now warns if automatic bandwidth
    selection happens without using weights; new optional warnWbw may
    suppress the warning.  Prompted by Christoph Dalitz' PR#18490 and
    its discussants.
  * rm(list = *) is faster and more readable thanks to Kevin Ushey's
    PR#18492.
  * The plot.lm() function no longer produces a normal Q-Q plot for
    GLMs. Instead it plots a half-normal Q-Q plot of the absolute
    value of the standardized deviance residuals.
  * The print() method for class "summary.glm" no longer shows
    summary statistics for the deviance residuals by default.  Its
    optional argument show.residuals can be used to show them if
    required.
  * The tapply() function now accepts a data frame as its X argument,
    and allows INDEX to be a formula in that case. by.data.frame()
    similarly allows INDICES to be a formula.
  * The performance of df[j] &lt;- value (including for missing j) and
    write.table(df) has been improved for data frames df with a large
    number of columns.  (Thanks to Gabriel Becker's PR#18500,
    PR#18503 and discussants, prompted by a report from Toby Dylan
    Hocking on the R-devel mailing list.)
  * The matrix multiply operator %*% is now an S3 generic, belonging
    to new group generic matrixOps.  From Tomasz Kalinowski's
    contribution in PR#18483.
  * New function array2DF() to convert arrays to data frames,
    particularly useful for the list arrays created by tapply().
  DATES and TIMES:
  * On platforms where (non-UTC) datetimes before 1902 (or before
    1900 as with system functions on recent macOS) are guessed by
    extrapolating time zones from 1902-2037, there is a warning at
    the first use of extrapolation in a session.  (As all time zones
    post 2037 are extrapolation, we do not warn on those.)
  * (Platforms using --with-internal-tzone, including Windows and by
    default macOS). How years are printed in dates or date-times can
    be controlled by environment variable R_PAD_YEARS_BY_ZERO.  The
    default remains to pad to 4 digits by zeroes, but setting value
    no gives no padding (as used by default by glibc).
  * strftime() tries harder to determine the offset for the "%z"
    format, and succeeds on the mainstream R platforms.
  * strftime() has a limit of 2048 bytes on the string produced -
    attempting to exceed this is an error.  (Previously it silently
    truncated at 255 bytes.)
  * sessionInfo() records (and by default prints) the system time
    zone as part of the locale information.  Also, the source
    (system/internal) of the date-time conversion and printing
    functions.
  * Objects of class "POSIXlt" created in this version of R always
    have 11 components: component zone is always set, and component
    gmtoff is set for times in UTC and usually set on the (almost
    all) platforms which have C-level support, otherwise is NA.
  * There are comprehensive validity checks on the structure of
    objects of class "POSIXlt" when converting (including formatting
    and printing).  (This avoids mis-conversions of hand-crafted
    objects.)
  * There is some support for using the native date-time routines on
    macOS: this is only viable on recent versions (e.g. 12.6 and 13)
    and does get wrong some historical changes (before 1900, during
    WWII).  Use of --with-internal-tzone remains the default.
  * as.POSIXct(&lt;numeric&gt;) and as.POSIXlt(.) (without specifying
    origin) now work.  So does as.Date(&lt;numeric&gt;).
  * as.Date.POSIXct(., tz) now treats several tz values, notably
    "GMT" as equivalent to "UTC", proposed and improved by Michael
    Chirico and Joshua Ulrich in PR#17674.
  * Experimental balancePOSIXlt() utility allows using "ragged" and
    or out-of-range "POSIXlt" objects more correctly, e.g., in
    subsetting and subassignments.  Such objects are now documented.
    More experimentally, a "POSIXlt" object may have an attribute
    "balanced" indicating if it is known to be filled or fully
    balanced.
  * Functions axis.Date() and axis.POSIXct() are rewritten to gain
    better default tick locations and better default formats by using
    prettyDate(). Thanks to Swetlana Herbrandt.
  * The mapping of Windows' names for time zones to IANA's 'Olson'
    names has been updated.  When ICU is available (it is by
    default), it is used to get a mapping for the current region set
    in Windows.  This can be overridden by setting environment
    variable TZ to the desired Olson name - see OlsonNames() for
    those currently available.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 16
    and so packages that provide graphics devices should be
    reinstalled.
  * The grDevices and grid packages have new functions for rendering
    typeset glyphs, primarily: grDevices::glyphInfo() and
    grid::grid.glyph().
    Rendering of typeset glyphs is only supported so far on the
    Cairo-based graphics devices and on the pdf() and quartz()
    devices.
  * The defined behaviour for "clear" and "source" compositing
    operators (via grid::grid.group()) has been changed (to align
    better with simple interpretation of original Porter-Duff
    definitions).
  * Support for gradients, patterns, clipping paths, masks, groups,
    compositing operators, and affine transformations has been added
    to the quartz() device.
  INSTALLATION on a UNIX-ALIKE:
  * A system installation of generic LAPACK 3.10.0 or later will be
    preferred to the version in the R sources.
    configure option --with-lapack=no (equivalently --without-lapack)
    forces compilation of the internal LAPACK sources.
    If --with-lapack is not specified, a system liblapack is looked
    for and used if it reports version 3.10.0 or later and does not
    contain BLAS routines.
    Packages using LAPACK will need to be reinstalled if this changes
    to using an external library.
  * On aarch64 Linux platforms using GCC, configure now defaults to
  - fPIC (instead of -fpic), as desired in PR#18326.
  * configure now checks conversion of datetimes between POSIXlt and
    POSIXct around year 2020.  Failure (which has been seen on
    platforms missing tzdata) is fatal.
  * If configure option --with-valgrind-instrumentation is given
    value 1 or 2, option --with-system-valgrind-headers is now the
    default and ignored (with a warning).  It is highly recommended
    that the system headers are installed alongside valgrind: they
    are part of its packaging on some Linux distributions and
    packaged separately (e.g. in the valgrind-devel RPM) on others.
    configure will give a warning if they are not found.
    The system headers will be required in a future release of R to
    build with valgrind instrumentation.
  * libcurl 8.x is now accepted by configure: despite a change in
    major version number it changes neither API nor ABI.
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools43, an update of the Rtools42 toolchain.  It is
    based on gcc 12 and newer versions of MinGW-W64, binutils and
    libraries.  At this time R-devel can still be built using
    Rtools42 without changes, but when R-devel is installed via the
    installer, it will by default look for Rtools43.
  * Old make targets rsync-extsoft and 32-bit ones that are no longer
    needed have been removed.
  * Default builds (including for packages) no longer select C99.
    Thus the C standard used is the default for the compiler, which
    for the toolchain in Rtools43 is C17.  (This is consistent with
    Unix builds.)
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++17 where
    available (which it is on all currently checked platforms): if
    not C++14 or C++11 is used if available otherwise C++ is not
    supported.
  * USE_FC_LEN_T is the default: this uses the correct
    (compiler-dependent) prototypes for Fortran BLAS/LAPACK routines
    called from C/C++, and requires adjustment of many such calls -
    see 'Writing R Extensions' SS6.6.1.
  * There is initial support for C++23 as several compilers are now
    supporting -std=c++23 or -std=c++2b or similar.  As for C++20,
    there no additional configure checks for C++23 features beyond a
    check that the compiler reports a __cplusplus value greater than
    that in the C++20 standard.  C++ feature tests should be used.
  * There is support for a package to indicate the version of the C
    standard which should be used to compile it, and for the
    installing user to specify this.  In most cases R defaults to the
    C compiler's default standard which is C17 (a `bug-fix' of C11) -
    earlier versions of R or compilers may have defaulted to C99.
    Current options are:
    USE_C17 Use a standard that is at most C17.  The intention is to
    allow legacy packages to still be installed when later C
    standards become the default, including packages using new
    keywords as identifiers or with K&amp;R-style function
    declarations.  This will use C17 if available, falling back
    to C11.
    USE_C90 Use the C90 (aka C89) standard.  (As that standard did
    not require compilers to identify that version, all we can
    verify is that the compiler does not claim to be using a
    later standard.  It may accept C99 features - for example
    clang accepts // to make comments.)
    USE_C99 Use the C99 standard. This should be rarely needed - it
    avoids the few new features of C11/C17 which can be useful if
    a package assumes them if C17 is specified and they are not
    implemented.
    USE_C23 Use C23 (or in future, later).  Compiler/library support
    for C23 is still being implemented, but LLVM clang from
    15.0.0 and the upcoming GCC 13 have quite extensive support.
    These can be specified as part of the SystemRequirements field in
    the package's DESCRIPTION file or _via_ options --use-C17 and so
    on of R CMD INSTALL and R CMD SHLIB.
    For further details see "Writing R Extensions" SS1.2.5.
  * (Windows) A src/Makefile.ucrt or src/Makefile.win file is now
    included after R_HOME/etcR_ARCH/Makeconf and so no longer needs
    to include that file itself.  Installation of a package with such
    a file now uses a site Makevars file in the same way as a package
    with a src/Makevars.win file would.
  * configure is now passed crucial variables such as CC and CFLAGS
    in its environment, as many packages were not setting them (as
    documented in 'Writing R Extensions' SS1.2).
    This has most effect where configure is used to compile parts of
    the package - most often by cmake or libtool which obfuscate the
    actual compile commands used.
    Also used for configure.win and configure.ucrt on Windows.
  FORTRAN FLAGS:
  * The flag -fno-optimize-sibling-calls is no longer forced for
    gfortran 7 and later.  It should no longer be needed now using
    'hidden' character-length arguments when calling BLAS/LAPACK
    routines from C/C++ is the default even for packages.  (Unless
    perhaps packages call Fortran code from C/C++ without using R's
    headers and without allowing for these arguments.)
  C-LEVEL FACILITIES:
  * The deprecated S-compatibility macros DOUBLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * The deprecated legacy typedefs of Sint and Sfloat in header R.h
    are no longer defined, and that header no longer includes header
    limits.h from C nor climits from C++.
  * New macro CAD5R() is provided in Rinternals.h and used in a few
    places in the R sources.
  * ALTREP now supports VECSXP vectors. Contributed by Gabor Csardi
    in PR#17620.
  * The Rcomplex definition (in header R_ext/Complex.h) has been
    extended to prevent possible mis-compilation when interfacing
    with Fortran (PR#18430).  The new definition causes compiler
    warnings with static initializers such as {1, 2}, which can be
    changed to {.r=1, .i=2}.
    Using the new definition from C++ depends on compiler extensions
    supporting C features that have not been incorporated into the
    C++ standards but are available in g++ and clang++: this may
    result in C++ compiler warnings but these have been worked around
    for recent versions of common compilers (GCC, Apple/LLVM clang,
    Intel).
    It is intended to change the inclusion of header R_ext/Complex.h
    by other R headers, so C/C++ code files which make use of
    Rcomplex should include that header explicitly.
  UTILITIES:
  * R CMD check does more checking of package .Rd files, warning
    about invalid email addresses and (some) invalid URIs and noting
    empty \item labels in description lists.
  * R CMD check now also reports problems when reading package news
    in md (file NEWS.md) and (optionally) plain text (file NEWS)
    formats.
  * _R_CHECK_TIMINGS_ defaults to a value from the environment even
    for R CMD check --as-cran; this allows for exceptionally fast or
    slow platforms.
    It now applies to checking PDF and HTML versions of the manuals,
    and 'checking CRAN incoming feasibility'.
  * R CMD check can optionally (but included in --as-cran) check
    whether HTML math rendering _via_ KaTeX works for the package .Rd
    files.
  * Non-interactive debugger invocations can be trapped by setting
    the environment variable _R_CHECK_BROWSER_NONINTERACTIVE_ to a
    true value.  This is enabled by R CMD check --as-cran to detect
    the use of leftover browser() statements in the package.
  * The use of sprintf and vsprintf from C/C++ has been deprecated in
    macOS 13 and is a known security risk.  R CMD check now reports
    (on all platforms) if their use is found in compiled code:
    replace by snprintf or vsnprintf respectively. [*NB:* whether
    such calls get compiled into the package is platform-dependent.]
  * Where recorded at installation, R CMD check reports the C and
    Fortran compilers used to build R.
    It reports the OS in use (if known, as given by osVersion) as
    well as that R was built for.
    It notes if a C++ standard was specified which is older than the
    current default: many packages have used C++11 to mean 'not
    C++98' - as C++11 is the minimum supported since R 4.0.0, that
    specification can probably be removed.
  * R CMD INSTALL reports the compilers (and on macOS, the SDK) used,
    and this is copied to the output of R CMD check.
    Where a C++ standard is specified, it is reported.
  * R CMD check's 'checking compilation flags in Makevars' has been
    relaxed to accept the use of flags such as -std=f2008 in
    PKG_FFLAGS.
  * tools::buildVignettes() has a new argument skip, which is used by
    R CMD check to skip (and note) vignettes with unavailable
    \VignetteDepends (PR#18318).
  * New generic .AtNames() added to enable class-specific completions
    after @. The formerly internal function findMatches() is now
    exported, mainly for use in methods for .DollarNames() and
    .AtNames().
  DEPRECATED AND DEFUNCT:
  * default.stringsAsFactors() is defunct.
  * Calling as.data.frame.&lt;class&gt;() directly (for 12 atomic classes)
    is going to be formally deprecated, currently activated by
    setting the environment variable
    _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ to non-empty, which also
    happens in R CMD check --as-cran.
  BUG FIXES:
  * Hashed environments with sizes less than 5 can now grow.
    (Reported to R-devel by Duncan Garmonsway.)
  * as.character(&lt;Rd&gt;, deparse = TRUE) failed to re-escape curly
    braces in LaTeX-like text.  (Reported by Hadley Wickham in
    PR#18324.)
  * library() now passes its lib.loc argument when requiring Depends
    packages; reported (with fix) in PR#18331 by Mikael Jagan.
  * R CMD Stangle: improved message about 'Output' files.
  * head(x, n) and tail(x, n) now signal an error if n is not
    numeric, instead of incidentally "working" sometimes returning
    all of x.  Reported and discussed by Colin Fay, in PR#18357.
  * The "lm" method for summary() now gives the correct F-statistic
    when the model contains an offset.  Reported in PR#18008.
  * C() and `contrasts&lt;-`() now preserve factor level names when
    given a function object (as opposed a function name which did
    preserve names). Reported in PR#17616.
  * c(a = 1, 2)[[]] no longer matches 2 but rather signals a
    _classed_ error.  Reported and analysed by Davis Vaughan in
    PR#18367, a duplicate of PR#18004, by Jan Meis et al.  For
    consistency, NULL[[]] is also erroneous now.  x[[]] &lt;- v gives an
    error of the same class "MissingSubscriptError".
  * The relist() function of utils now supports NULL elements in the
    skeleton (PR#15854).
  * ordered(levels = *) (missing x) now works analogously to factor(,
    ordered=TRUE); reported (with fix) by Achim Zeileis in PR#18389.
  * User-defined Rd macro definitions can now span multiple lines,
    thanks to a patch from Duncan Murdoch. Previously, the Rd parser
    silently ignored everything after the first line.
  * Plain-text help (tools::Rd2txt()) now preserves an initial blank
    line for text following description list items.
  * tools::Rd2HTML() and tools::Rd2latex() no longer split \arguments
    and \value lists at Rd comments.
  * tools::Rd2latex() now correctly handles optional text outside
    \items of argument lists as well as bracketed text at the
    beginning of sections, e.g., \value{[NULL]}.
  * as.character(&lt;POSIXt&gt;) now behaves more in line with the methods
    for atomic vectors such as numbers, and is no longer influenced
    by options().  Ditto for as.character(&lt;Date&gt;).  The
    as.character() method gets arguments digits and OutDec with
    defaults _not_ depending on options().  Use of as.character(*,
    format = .) now warns.
  * Similarly, the as.character.hexmode() and *.octmode() methods
    also behave as good citizen methods and back compatibility option
    keepStr = TRUE.
  * The as.POSIXlt(&lt;POSIXlt&gt;) and as.POSIXct(&lt;POSIXct&gt;) default
    methods now do obey their tz argument, also in this case.
  * as.POSIXlt(&lt;Date&gt;) now does apply a tz (time zone) argument, as
    does as.POSIXct(); partly suggested by Roland Fuss on the R-devel
    mailing list.
  * as.Date.POSIXlt(x) now also works when the list components are of
    unequal length, aka "partially filled" or "ragged".
  * expand.model.frame() looked up variables in the wrong environment
    when applied to models fitted without data.  Reported in
    PR#18414.
  * time() now (also) uses the ts.eps = getOption("ts.eps") argument
    and thus by default rounds values very close to the start (or
    end) of a year.  Based on a proposal by Andre"i V. Kostyrka on
    R-help.
  * Printing of a factanal() result with just one factor and sort =
    TRUE now works regularly, fixing PR#17863 by Timothy Bates,
    thanks to the 'R Contributors' working group.
  * Printing 0-length objects of class "factor", "roman", "hexmode",
    "octmode", "person", "bibentry", or "citation" now prints
    something better, one of which fixes PR#18422, reported by
    Benjamin Feakins.
  * Sys.timezone() queries timedatectl only if systemd is loaded;
    addressing a report by Jan Gorecki in PR#17421.
  * The formula method of cor.test() had scoping problems when
    environment(formula) was not the calling environment; reported
    with a patch proposal by Mao Kobayashi in PR#18439.
  * attach() of an environment with active bindings now preserves the
    active bindings.  Reported by Kevin Ushey in PR#18425.
  * BLAS detection now works also with system-provided libraries not
    available as regular files.  This fixes detection of the
    Accelerate framework on macOS since Big Sur.  Reported by David
    Novgorodsky.
  * download.file() gives a helpful error message in case of an
    invalid download.file.method option, thanks to Colin Fay's report
    in PR#18455.
  * Sporadic crashes of Rterm when using completion have been fixed.
  * Rprof() is now more reliable.  A livelock in thread
    initialization with too short sampling interval has been fixed on
    macOS.  A deadlock in using the C runtime has been fixed on
    Windows.  A potential deadlock has been prevented on Unix.
  * Cursor placement in Rgui now works even after a fixed-width font
    is selected.
  * Mandatory options (options()) are now set on startup so that
    saving and restoring them always works (PR#18372).
  * Package installation, R CMD INSTALL or install.packages(*), now
    parses each of the &lt;pkg&gt;/R/*.R files individually instead of
    first concatenating and then parse()ing the large resulting file.
    This allows parser or syntax errors to be diagnosed with correct
    file names and line numbers, thanks to Simon Dedman's report and
    Bill Dunlap's patch in PR#17859.
    This _does_ require syntactically self contained R source files
    now, fixing another inadvertent bug.
  * predict.lm(&lt;model with offset&gt;) now finds the offset in the
    correct environment, thanks to Andr'e Gillibert's report and patch
    in PR#18456.
  * getInitial(&lt;formula&gt;) now finds the selfStart model in the
    correct environment.  (Reported by Ivan Krylov in PR#18368.)
  * Fix for possible segfault when using recently-added graphics
    features, such as gradients, clipping paths, masks, and groups
    with pdf(file=NULL).
  * class(m) &lt;- class(m) no longer changes a matrix m by adding a
    class _attribute_.
  * packageDate(pkg) now only warns once if there is no pkg.
  * When ts() creates a multivariate time series, "mts", it also
    inherits from "array" now, and is.mts() is documented _and_
    stricter.
  * Rd2txt() now preserves line breaks of \verb Rd content and from
    duplicated \cr.  The former also fixes the rendering of verbatim
    output from Rd \Sexpr in plain-text help.
  * uniroot(f, interval) should no longer wrongly converge _outside_
    the interval in some cases where abs(f(x)) == Inf for an x at the
    interval boundary, thanks to posts by Ben Bolker and Serguei
    Sokol on R-devel.
  * Vectorized alpha handling in palette functions such as in gray(),
    rainbow(), or hcl.colors() works correctly now, thanks to Achim
    Zeileis' report and patch in PR#18476.
  * Formatting and print()ing of bibentry objects has dropped the
    deprecated citation.bibtex.max argument, such that the bibtex
    argument's default for print.bibentry() depends directly on the
    citation.bibtex.max option, whereas in format.bibentry() the
    option no longer applies.
  * Attempting to use a character string naming a foreign function
    entry point in a foreign function call in a package will now
    signal an error if the packages has called R_forceSymbols to
    specify that symbols must be used.
  * An error in table() could permanently set options(warn=2)
    promoting all subsequent warnings to errors.
  * The sigma() function gave misleading results for binary GLMs.  A
    new method for objects of class "glm" returns the square root of
    the estimate of the dispersion parameter using the same
    calculation as summary.glm().
  * bs() and ns() in the (typical) case of automatic knot
    construction, when some of the supposedly inner knots coincide
    with boundary knots, now moves them inside (with a warning),
    building on PR#18442 by Ben Bolker.
  * R CMD on Windows now skips the site profile with --no-site-file
    and --vanilla even when R_PROFILE is set (PR#18512, from Kevin
    Ushey).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1686916800">- CHANGES IN R 4.3.1:
  C-LEVEL FACILITIES:
  * The C-level API version of R's integrate(), Rdqags() in Applic.h,
    now returns the correct number of integrand evaluations neval,
    fixing PR#18515 reported and diagnosed by Stephen Wade.
  * The C prototypes for LAPACK calls dspgv and dtptrs in
    R_exts/Lapack.h had one too many and one too few character length
    arguments - but this has not caused any known issues. To get the
    corrected prototypes, include
    [#]include &lt;Rconfig.h&gt; // for PR18534fixed
    [#]ifdef PR18534fixed
    [#] define usePR18534fix 1
    [#]endif
    [#]include &lt;R_exts/Lapack.h&gt;
    in your C/C++ code (PR#18534).
  INSTALLATION:
  * Many of the checks of esoteric Internet operations and those
    using unreliable external sites have been moved to a new target
    that is not run by default and primarily intended for the core
    developers.  To run them use
    cd tests; make test-Internet-dev
  BUG FIXES:
  * .S3methods(), typically called from methods(), again marks
    methods from package base as visible.
    Also, the visibility of non-base methods is again determined by
    the method's presence in search().
  * tools::Rdiff() is now more robust against invalid strings, fixing
    installation tests on Windows without Rtools installed
    (PR#18530).
  * Fix (new) bug in hcl.colors(2, *), by Achim Zeileis (PR#18523).
  * head(., &lt;illegal&gt;) and tail(..) now produce more useful "Error in
    ...." error messages, fixing PR#18362.
  * Package code syntax on Windows is checked in UTF-8 when UTF-8 is
    the native encoding.
  * na.contiguous(x) now also returns the first run, when it is at
    the beginning and there is a later one of the same length;
    reported to R-devel, including a fix, by Georgi Boshnakov.
    Further, by default, it modifies only an existing attr(*,"tsp")
    but otherwise no longer sets one.
  * chol(&lt;not pos.def&gt;, pivot = &lt;T|F&gt;) now gives a correct error or
    warning message (depending on pivot), thanks to Mikael Jagan's
    (PR#18541).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1699012800">- CHANGES IN R 4.3.2:
  NEW FEATURES:
  * The default initialization of the "repos" option from the
    repositories file at startup can be skipped by setting
    environment variable R_REPOSITORIES to NULL such that
    getOption("repos") is empty if not set elsewhere.
  * qr.X() is now an implicit S4 generic in methods.
  * iconv(to = "ASCII//TRANSLIT") is emulated using substitution on
    platforms which do not support it (notably Alpine Linux).  This
    should give a human-readable conversion in ASCII on all platforms
    (rather than NA_character_).
  * trans3d() gains options continuous and verbose addressing the
    problem of possible "wrap around" when projecting too long
    curves, as reported by Achim Zeileis in PR#18537.
  * tools::showNonASCII() has been rewritten to work better on macOS
    14 (which has a changed implementation of iconv()).
  * tiff(type = "quartz") (the default on macOS) now warns if
    compression is specified: it continues to be ignored.
  INSTALLATION on a UNIX-ALIKE:
  * There is some support for building with Intel's LLVM-based
    compilers on x86_64 Linux, such as (C) icx, (C++) ipcx and
    (Fortran) ifx from oneAPI 2023.x.y.
  * There is support for using LLVM's flang-new as the Fortran
    compiler from LLVM 16.0.x (preferably 17.0.0 or later).
  UTILITIES:
  * R CMD check reports the use of the Fortran 90 random number
    generator RANDOM_NUMBER() and the subroutines to initialize it.
    'Writing R Extensions' has example code to use R's RNGs from
    Fortran.
  BUG FIXES:
  * substr(x, n, L) &lt;- cc now works (more) correctly for multibyte
    UTF-8 strings x when L &gt; nchar(x), thanks to a report and patch
    by 'Architect 95'.
  * contrib.url(character()) now returns 0-length character() as
    documented, which also avoids spurious warnings from
    available.packages() et al. in the edge case of an empty vector
    of repository URLs.
  * readChar(., 4e8) no longer fails, thanks to Kodi Arfer's report
    (PR#18557).
  * lapply(&lt;list&gt;, as.data.frame) no longer warns falsely for some
    base vector components.
  * Communication between parent and child processes in the multicore
    part of parallel could fail on platforms that do not support an
    arbitrarily large payload in system functions read()/write() on
    pipes (seen on macOS where a restriction to INT_MAX bytes is
    documented, without doing a partial read unlike Linux). The
    payload is now split into 1Gb chunks to avoid that problem.
    (PR#18571)
  * qqplot(x,y, conf.level=.) gives better confidence bounds when
    length(x) != length(y), thanks to Alexander Ploner's report and
    patch proposal (PR#18557).
  * norm(&lt;0-length&gt;, "2") now gives zero instead of an error, as all
    the other norm types, thanks to Mikael Jagan's PR#18542.
  * Build-stage Rd macros \packageAuthor and \packageMaintainer now
    process Authors@R, fixing NA results when the package DESCRIPTION
    omits Author and Maintainer fields.
  * Formatting and printing complex numbers could give things like
    0.1683-0i because of rounding error: -0i is now replaced by +0i.
  * postscript() refused to accept a title comment containing the
    letter "W" (PR#18599).
  * isoreg(c(1,Inf)) signals an error instead of segfaulting, fixing
    PR#18603.
  * tiff(type = "Xlib") was only outputting the last page of
    multi-page plots.
  * tools::latexToUtf8() again knows about \~{n} and other letters
    with tilde, fixing a regression in R 4.3.0, and about \^{i} as an
    alternative to \^{\i} (similarly with other accents).
    Furthermore, LaTeX codes for accented I letters are now correctly
    converted, also fixing related mistakes in
    tools::encoded_text_to_latex().
  * tar(*, tar = "internal") no longer creates out-of-spec tar files
    in the very rare case of user or group names longer than 32
    bytes, fixing PR#17871 with thanks to Ivan Krylov.
  * When using the "internal" timezone datetime code, adding a
    fraction of a second no longer adds one second, fixing PR#16856
    from a patch by Ivan Krylov.
  * tools::checkRd() no longer produces spurious notes about
    "unnecessary braces" from multi-line Rd results of \Sexpr macros.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1709208000">- CHANGES IN R 4.3.3:
  NEW FEATURES:
  * iconv() now fixes up variant encoding names such as "utf8"
    case-insensitively.
  DEPRECATED AND DEFUNCT:
  * The legacy encoding = "MacRoman" is deprecated in pdf() and
    postscript(): support was incomplete in earlier versions of R.
  BUG FIXES:
  * Arguments are now properly forwarded to methods on S4 generics
    with ... in the middle of their formal arguments. This was broken
    for the case when a method introduced an argument but did not
    include ... in its own formals. Thanks to Herv'e Pag`es for the
    report PR#18538.
  * Some invalid file arguments to pictex(), postscript() and xfig()
    opened a file called NA rather than throw an error.  These
    included postscript(NULL) (which some people expected to work
    like pdf(NULL)).
  * Passing filename = NA to svg(), cairo_pdf(), cairo_ps() or the
    Cairo-based bitmap devices opened a file called NA: it now throws
    an error.
  * quartz(file = NA) opened a file called NA, including when used as
    a Quartz-based bitmap device.  It now gives an error.
  * rank(&lt;long vector&gt;) now works, fixing PR#18617, thanks to Ilia
    Kats.
  * seq.int() did not adequately check its length.out argument.
  * match(&lt;POSIXct&gt;, .) is correct again for differing time zones,
    ditto for "POSIXlt", fixing PR#18618 reported by Bastian Klein.
  * drop.terms(*, dropx = &lt;0-length&gt;) now works, fixing PR#18563 as
    proposed by Mikael Jagan.
  * drop.terms(*) keeps + offset(.) terms when it should, PR#18565,
    and drop.terms() no longer makes up a response, PR#18566, fixing
    both bugs thanks to Mikael Jagan.
  * getS3method("t", "test") no longer finds the t.test() function,
    fixing PR#18627.
  * pdf() and postscript() support for the documented Adobe encodings
    "Greek" and "Cyrilllic" was missing (although the corresponding
    Windows' codepages could be used).
  * Computations of glyph metric information for pdf() and
    postscript() did not take into account that transliteration could
    replace one character by two or more (only seen on macOS 14) and
    typically warned that the information was not known.
  * rank(x) no longer overflows during integer addition, when
    computing rank average for largish but not-yet long vector x,
    fixing PR#18630, thanks to Ilia Kats.
  * list.files() on Windows now returns also files with names longer
    that 260 bytes (the Windows limit is 260 characters).
    Previously, some file names particularly with 'East Asian'
    characters were omitted.
  * cov2cor(&lt;0 x 0&gt;) now works, fixing PR#18423 thanks to Mikael
    Jagan and Elin Waring.
  * cov2cor(&lt;negative diagonal&gt;) and similar now give one warning
    instead of two, with better wording, fixing PR#18424 thanks to
    Mikael Jagan.
  * tools:: startDynamicHelp() now ensures port is in proper range,
    fixing PR#18645.
  * pbeta(x, a,b) is correct now for x=0 or 1 in the boundary cases
    where a or b or both are 0, fixing PR#18672 thanks to Michael
    Fay.
  * pmatch(x, table) for large table, also called for data frame row
    selection, dfrm[nm, ], is now interruptible, fixing PR#18656.
  * predict(&lt;rank-deficient lm&gt;, newdata=*) fix computing of nbasis,
    see Russ Lenth's comment 29 in PR#16158.
  * Added a work-around for a bug in macOS 14.3.1 and higher which
    prevents R plots in the Quartz Cocoa device from updating on
    screen.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1713960000">- CHANGES IN R 4.4.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Startup banners, R --version, sessionInfo() and R CMD check no
    longer report (64-bit) as part of the platform as this is almost
    universal - the increasingly rare 32-bit platforms will still
    report (32-bit).
    On Windows, ditto for window titles.
  * is.atomic(NULL) now returns FALSE, as NULL is not an atomic
    vector.  Strict back-compatibility would replace is.atomic(foo)
    by (is.null(foo) || is.atomic(foo)) but should happen only
    sparingly.
  NEW FEATURES:
  * The confint() methods for "glm" and "nls" objects have been
    copied to the stats package.  Previously, they were stubs which
    called versions in package MASS. The MASS namespace is no longer
    loaded if you invoke (say) confint(glmfit).  Further, the "glm"
    method for profile() and the plot() and pairs() methods for class
    "profile" have been copied from MASS to stats.  (profile.nls()
    and plot.profile.nls() were already in stats.)
  * The confint() and profile methods for "glm" objects have gained a
    possibility to do profiling based on the Rao Score statistic in
    addition to the default Likelihood Ratio. This is controlled by a
    new test = argument.
  * The pairs() method for "profile" objects has been extended with a
    which = argument to allow plotting only a subset of the
    parameters.
  * The "glm" method for anova() computes test statistics and
    p-values by default, using a chi-squared test or an F test
    depending on whether the dispersion is fixed or free.  Test
    statistics can be suppressed by giving argument test a false
    logical value.
  * In setRepositories() the repositories can be set using their
    names via name = instead of index ind =.
  * methods() and .S3methods() gain a all.names option for the (rare)
    case where functions starting with a . should be included.
  * Serializations can now be interrupted (e.g., by Ctrl-C on a
    Unix-alike) if they take too long, e.g., from save.image(),
    thanks to suggestions by Ivan Krylov and others on R-devel.
  * New startup option --max-connections to set the maximum number of
    simultaneous connections for the session.  Defaults to 128 as
    before: allowed values up to 4096 (but resource limits may in
    practice restrict to smaller values).
  * R on Windows (since Windows 10 2004) now uses the new Segment
    Heap allocator. This may improve performance of some
    memory-intensive applications.
  * When R packages are built, typically by R CMD build &lt;pkg&gt;, the
    new --user=&lt;build_user&gt; option overrides the (internally
    determined) user name, currently Sys.info()["user"] or LOGNAME.
    This is a (modified) fulfillment of Will Landau's suggestion in
    PR#17530.
  * tools::testInstalledBasic() gets new optional arguments outDir
    and testSrcdir, e.g., allowing to use it in a &lt;builddir&gt; !=
    &lt;srcdir&gt; setup, and in standard "binary" Windows installation
  * if* a source tests/ folder is present.
  * range(&lt;DT_with_Inf&gt;, finite = TRUE) now work for objects of class
    "Date", "POSIXct", and "POSIXlt" with infinite entries,
    analogously to range.default(), as proposed by Davis Vaughan on
    R-devel.  Other range()-methods can make use of new function
    .rangeNum().
  * New .internalGenerics object complementing .S3PrimitiveGenerics,
    for documentation and low-level book-keeping.
  * grid() now invisibly returns the x- and y- coordinates at which
    the grid-lines were drawn.
  * norm(., type) now also works for complex matrices.
  * kappa(., exact = TRUE, norm = *) now works for all norms and also
    for complex matrices.  In symmetric / triangular cases, the new
    argument uplo = "U" | "L" allows the upper or lower triangular
    part to be specified.
  * memDecompress(type = "unknown") recognizes compression in the
    default 'zlib' format as used by memCompress(type = "gzip").
  * memCompress() and memDecompress() will use the libdeflate library
    (&lt;https://github.com/ebiggers/libdeflate&gt;) if installed.  This
    uses the same type of compression for type = "gzip" but is 1.5-2x
    faster than the system libz library on some common platforms: the
    speed-up may depend on the library version.
  * diff() for objects of class "Date", "POSIXct", and "POSIXlt"
    accepts a units argument passed via ....
  * Dynamic help now does a much better job of rendering package
    DESCRIPTION metadata.
  * Rprof() gains an event argument and support for elapsed (real)
    time profiling on Unix (PR#18076).
  * filled.contour() gains a key.border argument.
  * tools::update_pkg_po() gets arguments pot_make and mo_make for
    _not_ re-making the corresponding files, and additionally a
    verbose argument.
  * Hexadecimal string colour specifications are now accepted in
    short form, so, for example, we can use "#123", which is
    equivalent to "#112233".
    Thanks to MikeFC for the original idea and Ella Kaye, Malcolm
    Barrett, George Stagg, and Hanne Oberman for the patch.
  * Plain-text help shows \var markup by angle brackets.
  * The new experimental primitive function declare() is intended to
    eventually allow information about R code to be communicated to
    the interpreter, compiler, and code analysis tools. The syntax
    for declarations is still being developed.
  * Functions psmirnov(), qsmirnov() and rsmirnov() in package stats
    have had argument two.sided renamed to alternative, to take into
    account that the permutation distributions of the one-sided
    statistics can be different in the case of ties.  Consequence of
    PR#18582.
  * sort() is now an implicit S4 generic in methods.
  * Formatting and printing, format(z), print(z), of complex vectors
    z no longer zap relatively small real or imaginary parts to zero,
    fixing PR#16752.  This is an API change, as it was documented
    previously to round real and imaginary parts together on purpose,
    producing nicer looking output.  As mentioned, e.g. in the PR,
    this change is compatible with many other "R-like" programming
    environments.
    We have simplified the internal code and now basically format the
    real and imaginary parts independently of each other.
  * New experimental functions Tailcall() and Exec() to support
    writing stack-space-efficient recursive functions.
  * Where characters are attempted to be plotted by pdf(),
    postscript() and xfig() which are not in the selected 8-bit
    character set (most often Latin-1) and the R session is using a
    UTF-8 locale, the warning messages will show the UTF-8 character
    rather than its bytes and one dot will be substituted per
    character rather than per byte.  (Platforms whose iconv() does
    transliteration silently plot the transliteration.)
    In a UTF-8 locale some transliterations are now done with a
    warning (e.g., dashes and Unicode minus to hyphen, ligatures are
    expanded, permille (‰) is replaced by o/oo), although the OS may
    have got there first.  These are warnings as they will continue
    to be replaced by dots in earlier versions of R.
  * The matrix multiplication functions crossprod() and tcrossprod()
    are now also primitive and S3 generic, as %*% had become in R
    4.3.0.
  * source() and example() have a new optional argument catch.aborts
    which allows continued evaluation of the R code after an error.
  * The non-Quartz tiff() devices allow additional types of
    compression if supported by the platform's libtiff library.
  * The list of base and recommended package names is now provided by
    tools::standard_package_names().
  * cairo_pdf() and cairo_ps() default to onefile = TRUE to closer
    match pdf() and postscript().
  * New option catch.script.errors provides a documented way to catch
    errors and then continue in non-interactive use.
  * L %||% R newly in base is an expressive idiom for the phrases
    if(!is.null(L)) L else R or if(is.null(L)) R else L.
  * The return value from warnings() now always inherits from
    "warnings" as documented, now also in the case of no warnings
    where it previously returned NULL.
  * as.complex("1i") now returns 0 + 1i instead of NA with a warning.
  * z &lt;- c(NA, 1i) now keeps the imaginary part Im(z[1]) == 0, no
    longer coercing to NA_complex_.  Similarly, cumsum(z) correctly
    sums real and imaginary parts separately, i.e., without
    "crosstalk" in case of NAs.
  * On Alpine Linux iconv() now maps "latin2", "latin-2", "latin9"
    and "latin-9" to encoding names the OS knows about
    (case-insensitively).
  * iconv(sub = "Unicode") now always zero-pads to four (hex) digits,
    rather than to 4 or 8.  (This seems to have become the convention
    once Unicode restricted the number of Unicode points to 2^21 - 1
    and so will never need more than 6 digits.)
  * NCOL(NULL) now returns 0 instead of 1, for consistency with
    cbind().
  * The information for the Euro glyph missing from the Adobe .afm
    files for the Courier, Helvetica and Times families has been
    copied from their URW equivalents - this will improve vertical
    centring in the pdf() and postscript() devices.
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.12.0.  The changes are almost entirely cosmetic.
  * The included LAPACK sources have been updated to version 3.12.0
    and some further double-complex routines added.
  * There are new font families for the 2014--5 URW 2.0 fonts (see
    ?pdf) which are included in recent versions of Ghostscript.
    These have font widths for most Greek glyphs and a few others
    which were missing from the original versions (whose font
    families remain available for reproducibility, although
    Ghostscript-based viewers will render using the 2.0 versions).
  * Improve the large-n efficiency of as.matrix(&lt;dist&gt;), thanks an R
    contributors effort, notably by Tim Taylor and Heather Turner,
    see PR#18660.
  * The default and numeric methods of all.equal() get a check.class
    option.
  * zapsmall() gets new optional arguments, function mFUN and min.d,
    for extra flexibility; fulfills a wish in PR#18199.  Also, it is
    now an implicit S4 generic in package methods.
  * The Rd filter for aspell() gains an ignore argument.
  * New generic function sort_by(), primarily useful for the
    data.frame method which can be used to sort rows of a data frame
    by one or more columns.
  * The icence headers for the RPC code in src/extra/xdr have been
    updated to use the GPL-compatible licence published by Oracle
    America in 2010.
  * New function pkg2HTML() in tools to create single-page HTML
    reference manuals for R packages.
  * The byte code evaluator now uses less C stack space for recursive
    calls to byte-compiled functions. It also makes more of an effort
    to avoid allocations for scalar return values.
  * New completion option backtick (disabled by default) allows
    non-syntactic completions to be wrapped in backquotes. This is
    currently only useful for Jupyter notebooks via the IRkernel
    package, and may cause problems for other backends.
  INSTALLATION:
  * The parser has been updated to work with bison 3.8.2, which is
    now used for the pre-generated parsers in gram.c, file.c, and
    gramRd.c. A few parser error messages have changed, which may
    affect code that relies on exact messages.
  INSTALLATION on a UNIX-ALIKE:
  * System valgrind headers are now required to use configure option
  - -with-valgrind-instrumentation with value 1 or 2.
  * configure will warn if it encounters a 32-bit build, as that is
    nowadays almost untested.
  * Environment variable R_SYSTEM_ABI is no longer used and so no
    longer recorded in etc/Renviron (it was not on Windows and was
    only ever used when preparing package tools).
  * If the libdeflate library and headers are available, libdeflate
    rather than libz is used to (de)compress R objects in lazy-load
    databases.  Typically tasks spend up to 5% of their time on such
    operations, although creating lazy-data databases is one of the
    exceptions.
    This can be suppressed if the library is available by the
    configure option --without-libdeflate-compression.
  * configure option --enable-lto=check has not worked reliably since
    2019 and has been removed.
  * The minimum autoconf requirement for a maintainer build has been
    increased to autoconf 2.71.
    It is intended to increase this to 2.72 for R 4.5.0: the
    distributed configure file was generated using 2.72.
  * The minimum version requirement for an external LAPACK has been
    reduced to 3.9.0.
  * No default C++ compiler is set if no C++17 compiler is detected:
    there is no longer an automatic fallback to C++14 or C++11.
    Compilers from the last five years should have sufficient
    support: for others macros CXX and CXXSTD can be set in file
    config.site to provide a fallback if needed.
    The Objective-C++ compiler now by default uses the standard
    selected by R for C++ (currently C++17) rather than the default
    standard for the C++ compiler (which on macOS is still C++98).
  INSTALLATION on macOS:
  * A new configure option --with-newAccelerate makes use of Apple's
    'new' BLAS / LAPACK interfaces in their Accelerate framework.
    Those interfaces are only available in macOS 13.3 or later, and
    building requires SDK 13.3 or later (from the Command Line Tools
    or Xcode 14.3 or later).
    By default the option uses new Accelerate for BLAS calls: to also
    use it for LAPACK use option --with-newAccelerate=lapack.  The
    later interfaces provide LAPACK 3.9.1 rather than 3.2.1: 3.9.1 is
    from 2021-04 and does not include the improved algorithms
    introduced in LAPACK 3.10.0 (including for BLAS calls).
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools44, an update of the Rtools43 toolchain.  It is
    based on GCC 13 and newer versions of MinGW-W64, binutils and
    libraries (targeting 64-bit Intel CPUs).  R-devel can no longer
    be built using Rtools43 without changes.
  * Rtools44 has experimental support for 64-bit ARM (aarch64) CPUs
    _via_ the LLVM 17 toolchain using lld, clang/flang-new and
    libc++.
  UTILITIES:
  * R CMD check notes when S4-style exports are used without
    declaring a strong dependence on package methods.
  * tools::checkRd() (used by R CMD check) detects more problems with
    \Sexpr-based dynamic content, including bad nesting of \Sexprs
    and invalid arguments.
  * tools::checkRd() now reports Rd titles and section names ending
    in a period; this is ignored by R CMD check unless environment
    variable _R_CHECK_RD_CHECKRD_MINLEVEL_ is set to -5 or smaller.
  * R CMD check now notes Rd files without an \alias, as long
    documented in 'Writing R Extensions' §1.3.1.  The check for a
    missing \description has been moved from tools::checkRd() to
    tools::checkRdContents().
  * R CMD check now visits inst/NEWS.Rd and OS-specific man
    subdirectories when checking Rd files.
  * tools::checkDocFiles() and tools::checkRdContents() now also
    check internal Rd files by default, but "specially" (ignoring
    missing documentation of arguments).
  * R CMD Rdiff gets option --useEx.
  * R CMD check now warns on non-portable uses of Fortran KIND such
    as INTEGER(KIND=4) and REAL(KIND=8).
    To see the failing lines set environment variable
    _R_CHECK_FORTRAN_KIND_DETAILS_ to a true value.
  * When checking Rd files, R CMD check now notes some of the "lost
    braces" that tools::checkRd() finds.  Typical problems are Rd
    macros missing the initial backslash (e.g., code{...}), in-text
    set notation (e.g., {1, 2}, where the braces need escaping), and
    \itemize lists with \describe-style entries of the form
    \item{label}{description}.
  * R CMD INSTALL (and hence check) will compile C++ code with
  - DR_NO_REMAP if environment variable _R_CXX_USE_NO_REMAP_ is set
    to a true value.  It is planned that this will in future become
    the default for compiling C++.
  * The new built-in Rd macro \dontdiff{} can be used to mark example
    code whose output should be ignored when comparing check output
    to reference output (tests/Examples/&lt;pkg&gt;-Ex.Rout.save).  The
    \dontdiff tag, like \donttest, is _not_ shown on the rendered
    help page, so provides a clean alternative to ##
    IGNORE_RDIFF_(BEGIN|END) comments.
  * R CMD build when there is no NAMESPACE, now uses the recommended
    exportPattern("^[^.]"), instead of exporting everything.
  * R CMD check now warns about non-ASCII characters in the NAMESPACE
    file (in addition to R files). Such packages are not portable and
    may fail to install on some platforms.
  C-LEVEL FACILITIES:
  * Headers R_ext/Applic.h and R-ext/Linpack.h used to include
    R_ext/BLAS.h although this was undocumented and unneeded by their
    documented entry points.  They no longer do so.
  * New function R_missing(), factored out from do_missing(), used to
    fix PR#18579.
  * SEXP type S4SXP has been renamed to OBJSXP to support
    experimenting with alternative object systems.  The S4SXP value
    can still be used in C code but is now deprecated.  Based on
    contributions from the R Consortium's Object-Oriented Programming
    Working Group.
  * New function pow1p(x,y) for accurate (1+x)^y.
  * mkCharLenCE was incorrectly documented to take a size_t length
    but was implemented with int (and character strings in R are
    limited to 2^31 - 1 bytes).
  DEPRECATED AND DEFUNCT:
  * data() no longer handles zipped data from long-defunct (since R
    2.13.0) --use-zip-data installations.
  * The legacy graphics devices pictex() and xfig() are now
    deprecated.  They do not support recent graphics enhancements and
    their font handling is rudimentary. The intention is to retain
    them for historical interest as long as they remain somewhat
    functional.
  * Support for encoding = "MacRoman" has been removed from the pdf()
    and postscript() devices - this was a legacy encoding supporting
    classic macOS up to 2001 and no longer has universal libiconv
    support.
  * is.R() is deprecated as no other S dialect is known to be in use
    (and this could only identify historical dialects, not future
    ones).
    Further information on calls can be obtained by setting the
    environment variable _R_DEPRECATED_IS_R_ to error which turns the
    deprecation warning into an error and so by default gives a
    traceback.  (This is done by R CMD check --as-cran.)
  * UseMethod() no longer forwards local variables assigned in the
    generic function into method call environments before evaluating
    the method body. This makes method calls behave more like
    standard function calls and makes method code easier to analyze
    correctly.
  * The twelve as.data.frame.&lt;class&gt;() methods which were deprecated
    only via _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ and in R CMD
    check --as-cran are formally deprecated now in favour of calling
    as.data.frame() or as.data.frame.vector().  The deprecation
    "check" now works also when as.data.frame() is S4 generic thanks
    to Ivan Krylov.
  * The default method for the directional comparison operators &lt;, &gt;,
    &lt;=, and &gt;= now signals an error when one of the operands is a
    language object, i.e. a symbol or a call.
  * For terms.formula(), deprecate abb and neg.out arguments
    _formally_ in addition to just documenting it.
  BUG FIXES:
  * The methods package is more robust to not being attached to the
    search path.  More work needs to be done.
  * pairwise.t.test() misbehaved when subgroups had 0 DF for
    variance, even with pool.sd = TRUE.  (PR#18594 by Jack Berry).
  * Probability distribution functions [dpq]&lt;distrib&gt;(x, *), but also
    bessel[IKJY](x, .) now consistently preserve attributes(x) when
    length(x) == 0, e.g., for a 2 x 0 matrix, thanks to Karolis
    Koncevičius' report PR#18509.
  * Group "Summary" computations such as sum(1:3, 4, na.rm = 5, NA,
    7, na.rm = LL) now give an error instead of either 17 or NN for
    LL true or false, as proposed by Ivan Krylov on the R-devel
    mailing list.  (This also means it is now an error to specify
    na.rm more than once.)
  * as.complex(x) now returns complex(real = x, imaginary = 0) for
    _all_ numerical and logical x, notably also for NA or
    NA_integer_.
  * Directories are now omitted by file.copy(, recursive = FALSE) and
    in file.append() (PR#17337).
  * gsub() and sub() are now more robust to integer overflow when
    reporting errors caused by too large input strings (PR#18346).
  * Top-level handlers are now more robust to attempts to remove a
    handler whilst handlers are running (PR#18508).
  * The handling of Alt+F4 in dialogs created on Windows using
    GraphApp has been fixed (PR#13870).
  * density() more consistently computes grid values for the
    FFT-based convolution, following Robert Schlicht's analysis and
    proposal in PR#18337, correcting density values typically by a
    factor of about 0.999.  Argument old.coords = TRUE provides back
    compatibility.
  * palette.colors() gains a name argument that defaults to FALSE
    controlling whether the vector of colours that is returned has
    names (where possible).  PR#18529.
  * tools::xgettext() no longer extracts the (non-translatable) class
    names from warningCondition and errorCondition calls.
  * S3method(&lt;gen&gt;, &lt;class&gt;, &lt;func&gt;) in the NAMESPACE file now works
    (again) when &lt;func&gt; is visible from the namespace, e.g.,
    imported, or in base.
  * getParseData(f) now also works for a function defined in the
    first of several &lt;pkg&gt;/R/*.R source files, thanks to Kirill
    Müller's report and Duncan Murdoch's patch in PR#16756.
  * Rd \Sexpr macros with nested #ifdef conditionals were not
    processed.
  * A non-blocking connection with non-default encoding (such as a
    socket) now correctly returns from readLines() after new data has
    arrived also when its EOF had been reached previously.  Thanks to
    Peter Meilstrup's report on R-devel and Ivan Krylov's report and
    patch proposal in PR#18555.
  * tools::checkRdContents() failed to detect empty argument
    descriptions when they spanned multiple lines, including those
    generated by prompt().  These cases are now noted by R CMD check.
  * Plain-text help no longer outputs spurious colons in the
    arguments list (for multi-line \item labels in the Rd source).
  * kappa() and rcond() work correctly in more cases; kappa(., norm =
    "2") now warns that it computes the 1-norm with (default) exact =
    FALSE; prompted by Mikael Jagan's quite comprehensive PR#18543.
  * Rd skeletons generated by prompt() or promptData() now use a
    dummy title (so R CMD build works).  tools::checkRdContents() has
    been updated to detect such template leftovers, including from
    promptPackage().
  * When S4 method dispatch fails because no method was found, the
    error message now includes the signature argument names; thanks
    to Michael Chirico's proposal on the R-devel list.
  * withAutoprint({ .. }) now preserves srcrefs previously lost,
    thanks to Andrew Simmons' report plus fix in PR#18572.
  * transform.data.frame() no longer adjusts names; in particular,
    untransformed variables are kept as-is, including those with
    syntactically invalid names (PR#17890).
  * The keep.source option for Rd \Sexpr blocks is no longer ignored.
  * The formula methods for t.test() and wilcox.test() now catch when
    paired is passed, addressing PR#14359; use Pair(x1, x2) ~ 1 for a
    paired test.
  * The level reported in the browser prompt was often too large. It
    now shows the number of browser contexts on the stack.
  * For cbind() and rbind(), the optional deparse.level argument is
    now properly passed to methods, thanks to Mikael Jagan's PR#18579
    and comments there.
  * Some error and warning messages for large ('long vector')
    matrix(v, nr, nc) and dim(m) &lt;- d are now correct about sizes,
    using long long formatting, fixing PR#18612 (and more) reported
    by Mikael Jagan.
  * readChar(useBytes = TRUE) now terminates strings even when the
    underlying connection uses extra spaces in the input buffer.
    This fixes problems with extra garbage seen with gzip
    connections, PR#18605.
  * Named capture in PCRE regular expressions now works also with
    more than 127 named groups (PR#18588).
  * Datetime functions are now robust against long jumps when dealing
    with internal time zone changes.  This avoids confusing warnings
    about an invalid time zone, previously triggered by turning
    warnings into errors or handling them via tryCatch (PR#17966,
    PR#17780).
  * Datetime functions now restore even an empty TZ environment
    variable after internal time zone changes (PR#17724).  This makes
    results of datetime functions with this (typically unintentional)
    setting more predictable.
  * drop.terms(*) now drops response as by default, keep.response =
    FALSE, fixing PR#18564 thanks to Mikael Jagan.
  * dummy.coef(.) now also works for lm()-models with character
    categorical predictor variables rather than factor ones, fixing
    PR#18635 reported by Jinsong Zhao.
  * formals(f) &lt;- formals(f) now also works for a function w/o
    arguments and atomic _constant_ body(f).
  * Correct as.function(&lt;invalid list&gt;, .)'s error message.
  * removeSource() is yet more thorough in finding and removing
    "srcref" and the other source references from parsed R language
    chunks, fixing PR#18638 thanks to Andrew Simmons.
  * dgeom() is more accurate now, notably when its result is very
    small, fixing PR#18642 thanks to the proposal of Morten Welinder,
    also improving other instances where C level binom_raw(x, n, ..)
    has x == 0 or x== n.
  * warning() with options(warn = 1) has improved output for
    multi-line messages.
  * axis.Date() and axis.POSIXct() now respect the par("lab") setting
    for the number of pretty() intervals.
  * Comparisons for language objects (which are based on deparsing)
    are now more careful about using accurate deparsed results
    (PR#18676).
  * Plain-text help (Rd2txt) now correctly preserves blank lines
    following single-line \dontrun code.
  * &lt;POSIXlt&gt;[*] no longer sets wrong "balanced" attribute, fixing
    PR#18681 thanks to Mikael Jagan.
  * str(&lt;classed-call&gt;) now deparses the call as expected, fixing
    PR#18684, reported by Dave Slager.
  * In Rd examples, code following the closing brace of a \dontrun,
    \dontshow or \donttest tag on the same line is no longer skipped
    when R CMD check runs the examples.
  * as.data.frame(matrix(*, ncol=0)) now gets valid names() and
    colnames(); reported by Davis Vaughan on the R-devel list.
  * Internal Mathlib function stirlerr(n) is now almost fully
    (52-bit) accurate for all n &gt;= ~5.9 and more accurate also in the
    range 1 -- 5.9.  This entails small ("after 12th decimal")
    changes in density functions, e.g., dgamma() in _some_ regions of
    their support.  The fix was partly prompted by Morten Welinder's
    PR#18640.
  * Numbers like 9876543.2 are now considered non-integer by Mathlib
    internal R_nonint(), amending original fix of PR#15734.
  * Rd comment lines no longer cause broken paragraphs in the
    rendered PDF and plain-text help. In code blocks, pure comment
    lines (starting with %) no longer produce an empty line.
  * xtabs(Freq ~ .) now consistently defaults to na.action = na.pass,
    using na.rm = FALSE (added as an argument) when summing over Freq
    (PR#17770).
  * tools::testInstalledPackage() is no longer silent about failures
    from running examples or tests and its return code no longer
    ignores failures from checking vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1718366400">- CHANGES IN R 4.4.1:
  C-LEVEL FACILITIES:
  * Functions R_atof and R_strtod declared in header R_ext/Utils.h
    are now documented in 'Writing R Extensions' and so formally part
    of the API.
  * The non-API entry points Rf_setSVector, Rf_StringFalse,
    Rf_StringTrue and Rf_isBlankString have been added to those
    reported by R CMD check.
  * The new function Rf_allocLang is now available. This provides an
    alternative to the idiom of calling Rf_allocList followed by
    SET_TYPEOF.
  UTILITIES:
  * R CMD check now reports as warnings what gfortran calls 'Fortran
    2018 deleted features', all of which have long been marked as
    'obsolescent' and some of which were deleted in Fortran 2008 or
    earlier.  Fortran compilers are no longer required to support
    these.
  BUG FIXES:
  * as.numeric(), scan(), type.convert() and other places which use
    the internal C function R_strtod now require a _non-empty_ digit
    sequence in a decimal or binary exponent.  This aligns with the
    C/POSIX standard for strtod and with ?NumericConstants.
  * as.data.frame(m, make.names=NA) now works correctly for a matrix
    m with NA's in row names.
  * The error message from &lt;POSIXlt&gt;[["hour"]] and similar now
    mentions *[[, "hour"]], as wished for in PR#17409 and proposed by
    Michael Chirico.
  * qbinom() and potentially qpois(), qnbinom(), no longer sometimes
    fail accurate inversion (of pbinom(), etc), thanks to Christopher
    Chang's report and patch in PR#18711.
  * The internal help server on Windows can again serve requests sent
    in quick succession, fixing a regression in R 4.4.0.
  * debugcall(&lt;S3Generic&gt;()) now also works when a corresponding
    S4-generic version is in the methods cache (PR#18143).
  * Package tools' toTitleCase(ch0) now returns character(0) when ch0
    is of zero length; fixing PR#18724, reported by David Hugh Jones.
  * R CMD check is no longer broken (without a check result and no
    explanation in 00check.log) for a package which declares an
    invalid VignetteBuilder in DESCRIPTION but has no vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1730376000">- CHANGES IN R 4.4.2:
  C-LEVEL FACILITIES:
  * The S-compatibility macros F77_COM and F77_COMDECL defined in
    header R_ext/RS.h are deprecated and will be removed shortly.  We
    could find no record of their use.
  BUG FIXES:
  * Mathlib function lgammacor(x) no longer warns about underflow to
    zero for large x.
  * Text widths and heights were incorrectly reported by the Quartz
    device if the drawing context didn't exist yet (typically when
    drawing off-screen to a window that is yet to appear, see
    PR#18591).
  * The Quartz device could segfault in cases where paths with spaces
    are used in the new glyph drawing API.  Thanks to Tomek
    Gieorgijewski (PR#18758).
  * On macOS in R CRAN builds, it is again possible to read
    little-endian UTF-16 text with a BOM from a connection using
    encoding="UTF-16".  Users building R from source should avoid
    using the system libiconv in macOS 14.1 and later.
  * methods' internal .requirePackage() now re-enables primitive
    method dispatch when needed; thanks to Ivan Krylov for
    demystifying CRAN package check failures on the R-devel mailing
    list.</changelog>
</package>
<package pkgid="b52ab0735e5f14ce419f5d5154eefc2f1ec2581ae58bb3b337bdf55a348e9cc2036e1397b9fbd72ef192692f81ae8ae83bfe072c46c8b56d2901168499ba1e52" name="R-core-devel" arch="x86_64">
  <version epoch="0" ver="4.4.2" rel="51.0.2.2.sr20241103"/>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1620302400">- To get in sync with d:l:R:autoCRAN the Matrix package's split
  in -devel was reversed.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339200">- improved spec file according to comments of dimstar in
  https://build.opensuse.org/request/show/892685</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339201">- CHANGES IN R 4.1.0:
  FUTURE DIRECTIONS:
  * It is planned that the 4.1.x series will be the last to support
    32-bit Windows, with production of binary packages for that
    series continuing until early 2023.
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Data set esoph in package datasets now provides the correct
    numbers of controls; previously it had the numbers of cases added
    to these.  (Reported by Alexander Fowler in PR#17964.)
  NEW FEATURES:
  * www.omegahat.net is no longer one of the repositories known by
    default to setRepositories().  (Nowadays it only provides source
    packages and is often unavailable.)
  * Function package_dependencies() (in package tools) can now use
    different dependency types for direct and recursive dependencies.
  * The checking of the size of tarball in R CMD check --as-cran
    &lt;pkg&gt; may be tweaked via the new environment variable
    _R_CHECK_CRAN_INCOMING_TARBALL_THRESHOLD_, as suggested in
    PR#17777 by Jan Gorecki.
  * Using c() to combine a factor with other factors now gives a
    factor, an ordered factor when combining ordered factors with
    identical levels.
  * apply() gains a simplify argument to allow disabling of
    simplification of results.
  * The format() method for class "ftable" gets a new option justify.
    (Suggested by Thomas Soeiro.)
  * New ...names() utility.  (Proposed by Neal Fultz in PR#17705.)
  * type.convert() now warns when its as.is argument is not
    specified, as the help file always said it _should_.  In that
    case, the default is changed to TRUE in line with its change in
    read.table() (related to stringsAsFactor) in R 4.0.0.
  * When printing list arrays, classed objects are now shown _via_
    their format() value if this is a short enough character string,
    or by giving the first elements of their class vector and their
    length.
  * capabilities() gets new entry "Rprof" which is TRUE when R has
    been configured with the equivalent of --enable-R-profiling (as
    it is by default).  (Related to Michael Orlitzky's report
    PR#17836.)
  * str(xS4) now also shows extraneous attributes of an S4 object
    xS4.
  * Rudimentary support for vi-style tags in rtags() and R CMD rtags
    has been added.  (Based on a patch from Neal Fultz in PR#17214.)
  * checkRdContents() is now exported from tools; it and also
    checkDocFiles() have a new option chkInternal allowing to check
    Rd files marked with keyword "internal" as well.  The latter can
    be activated for R CMD check via environment variable
    _R_CHECK_RD_INTERNAL_TOO_.
  * New functions numToBits() and numToInts() extend the raw
    conversion utilities to (double precision) numeric.
  * Functions URLencode() and URLdecode() in package utils now work
    on vectors of URIs.  (Based on patch from Bob Rudis submitted
    with PR#17873.)
  * path.expand() can expand ~user on most Unix-alikes even when
    readline is not in use.  It tries harder to expand ~, for example
    should environment variable HOME be unset.
  * For HTML help (both dynamic and static), Rd file links to help
    pages in external packages are now treated as references to
    topics rather than file names, and fall back to a file link only
    if the topic is not found in the target package. The earlier rule
    which prioritized file names over topics can be restored by
    setting the environment variable _R_HELP_LINKS_TO_TOPICS_ to a
    false value.
  * c() now removes NULL arguments before dispatching to methods,
    thus simplifying the implementation of c() methods, _but_ for
    back compatibility keeps NULL when it is the first argument.
    (From a report and patch proposal by Lionel Henry in PR#17900.)
  * Vectorize()'s result function's environment no longer keeps
    unneeded objects.
  * Function ...elt() now propagates visibility consistently with
    ..n.  (Thanks to Lionel Henry's PR#17905.)
  * capture.output() no longer uses non-standard evaluation to
    evaluate its arguments.  This makes evaluation of functions like
    parent.frame() more consistent.  (Thanks to Lionel Henry's
    PR#17907.)
  * packBits(bits, type="double") now works as inverse of
    numToBits().  (Thanks to Bill Dunlap's proposal in PR#17914.)
  * curlGetHeaders() has two new arguments, timeout to specify the
    timeout for that call (overriding getOption("timeout")) and TLS
    to specify the minimum TLS protocol version to be used for
    https:// URIs (_inter alia_ providing a means to check for sites
    using deprecated TLS versions 1.0 and 1.1).
  * For nls(), an optional constant scaleOffset may be added to the
    denominator of the relative offset convergence test for cases
    where the fit of a model is expected to be exact, thanks to a
    proposal by John Nash.  nls(*, trace=TRUE) now also shows the
    convergence criterion.
  * Numeric differentiation _via_ numericDeriv() gets new optional
    arguments eps and central, the latter for taking central divided
    differences.  The latter can be activated for nls() via
    nls.control(nDcentral = TRUE).
  * nls() now passes the trace and control arguments to getInitial(),
    notably for all self-starting models, so these can also be fit in
    zero-noise situations via a scaleOffset.  For this reason, the
    initial function of a selfStart model must now have ... in its
    argument list.
  * bquote(splice = TRUE) can now splice expression vectors with
    attributes: this makes it possible to splice the result of
    parse(keep.source = TRUE).  (Report and patch provided by Lionel
    Henry in PR#17869.)
  * textConnection() gets an optional name argument.
  * get(), exists(), and get0() now signal an error if the first
    argument has length greater than 1.  Previously additional
    elements were silently ignored.  (Suggested by Antoine Fabri on
    R-devel.)
  * R now provides a shorthand notation for creating functions, e.g.
    \(x) x + 1 is parsed as function(x) x + 1.
  * R now provides a simple native forward pipe syntax |&gt;.  The
    simple form of the forward pipe inserts the left-hand side as the
    first argument in the right-hand side call.  The pipe
    implementation as a syntax transformation was motivated by
    suggestions from Jim Hester and Lionel Henry.
  * all.equal(f, g) for functions now by default also compares their
    environment(.)s, notably via new all.equal method for class
    function.  Comparison of nls() fits, e.g., may now need
    all.equal(m1, m2, check.environment = FALSE).
  * .libPaths() gets a new option include.site, allowing to _not_
    include the site library.  (Thanks to Dario Strbenac's suggestion
    and Gabe Becker's PR#18016.)
  * Lithuanian translations are now available.  (Thanks to Rimantas
    Zakauskas.)
  * names() now works for DOTSXP objects.  On the other hand, in
    R-lang, the R language manual, we now warn against relying on the
    structure or even existence of such dot-dot-dot objects.
  * all.equal() no longer gives an error on DOTSXP objects.
  * capabilities("cairo") now applies only to the file-based devices
    as it is now possible (if very unusual) to build R with Cairo
    support for those but not for X11().
  * There is optional support for tracing the progress of
    loadNamespace() - see its help.
  * (Not Windows.)  l10n_info() reports an additional element, the
    name of the encoding as reported by the OS (which may differ from
    the encoding part (if any) of the result from
    Sys.getlocale("LC_CTYPE").
  * New function gregexec() which generalizes regexec() to find _all_
    disjoint matches and well as all substrings corresponding to
    parenthesized subexpressions of the given regular expression.
    (Contributed by Brodie Gaslam.)
  * New function charClass() in package utils to query the
    wide-character classification functions in use (such as
    iswprint).
  * The names of quantile()'s result no longer depend on the global
    getOption("digits"), but quantile() gets a new optional argument
    digits = 7 instead.
  * grep(), sub(), regexp and variants work considerably faster for
    long factors with few levels.  (Thanks to Michael Chirico's
    PR#18063.)
  * Provide grouping of x11() graphics windows within a window
    manager such as Gnome or Unity; thanks to a patch by Ivan Krylov
    posted to R-devel.
  * The split() method for class data.frame now allows the f argument
    to be specified as a formula.
  * sprintf now warns on arguments unused by the format string.
  * New palettes "Rocket" and "Mako" for hcl.colors() (approximating
    palettes of the same name from the 'viridisLite' package).
    Contributed by Achim Zeileis.
  * The base environment and its namespace are now locked (so one can
    no longer add bindings to these or remove from these).
  * Rterm handling of multi-byte characters has been improved,
    allowing use of such characters when supported by the current
    locale.
  * Rterm now accepts ALT+ +xxxxxxxx sequences to enter Unicode
    characters as hex digits.
  * Environment variable LC_ALL on Windows now takes precedence over
    LC_CTYPE and variables for other supported categories, matching
    the POSIX behaviour.
  * duplicated() and anyDuplicated() are now optimized for integer
    and real vectors that are known to be sorted via the ALTREP
    framework. Contributed by Gabriel Becker via PR#17993.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 14
    and so packages that provide graphics devices should be
    reinstalled.
  * Graphics devices should now specify deviceVersion to indicate
    what version of the graphics engine they support.
  * Graphics devices can now specify deviceClip.  If TRUE, the
    graphics engine will never perform any clipping of output itself.
    The clipping that the graphics engine does perform (for both
    canClip = TRUE and canClip = FALSE) has been improved to avoid
    producing unnecessary artifacts in clipped output.
  * The grid package now allows gpar(fill) to be a linearGradient(),
    a radialGradient(), or a pattern().  The viewport(clip) can now
    also be a grob, which defines a clipping path, and there is a new
    viewport(mask) that can also be a grob, which defines a mask.
    These new features are only supported so far on the Cairo-based
    graphics devices and on the pdf() device.
  * (Not Windows.)  A warning is given when a Cairo-based type is
    specified for a png(), jpeg(), tiff() or bmp() device but Cairo
    is unsupported (so type = "Xlib" is tried instead).
  * grSoftVersion() now reports the versions of FreeType and
    FontConfig if they are used directly (not _via_ Pango), as is
    most commonly done on macOS.
  C-LEVEL FACILITIES:
  * The _standalone_ libRmath math library and R's C API now provide
    log1pexp() again as documented, and gain log1mexp().
  INSTALLATION on a UNIX-ALIKE:
  * configure checks for a program pkgconf if program pkg-config is
    not found.  These are now only looked for on the path (like
    almost all other programs) so if needed specify a full path to
    the command in PKG_CONFIG, for example in file config.site.
  * C99 function iswblank is required - it was last seen missing ca
    2003 so the workaround has been removed.
  * There are new configure options --with-internal-iswxxxxx,
  - -with-internal-towlower and --with-internal-wcwidth which allows
    the system functions for wide-character classification,
    case-switching and width (wcwidth and wcswidth) to be replaced by
    internal ones.  The first has long been used on macOS, AIX (and
    Windows) but this enables it to be unselected there and selected
    for other platforms (it is the new default on Solaris).  The
    second is new in this version of R and is selected by default on
    macOS and Solaris.  The third has long been the default and
    remains so as it contains customizations for East Asian
    languages.
    System versions of these functions are often minimally
    implemented (sometimes only for ASCII characters) and may not
    cover the full range of Unicode points: for example Solaris (and
    Windows) only cover the Basic Multilingual Plane.
  * Cairo installations without X11 are more likely to be detected by
    configure, when the file-based Cairo graphics devices will be
    available but not X11(type = "cairo").
  * There is a new configure option --with-static-cairo which is the
    default on macOS.  This should be used when only static cairo
    (and where relevant, Pango) libraries are available.
  * Cairo-based graphics devices on platforms without Pango but with
    FreeType/FontConfig will make use of the latter for font
    selection.
  LINK-TIME OPTIMIZATION on a UNIX-ALIKE:
  * Configuring with flag --enable-lto=R now also uses LTO when
    installing the recommended packages.
  * R CMD INSTALL and R CMD SHLIB have a new flag --use-LTO to use
    LTO when compiling code, for use with R configured with
  - -enable-lto=R.  For R configured with --enable-lto, they have
    the new flag --no-use-LTO.
    Packages can opt in or out of LTO compilation _via_ a UseLTO
    field in the DESCRIPTION file.  (As usual this can be overridden
    by the command-line flags.)
  BUILDING R on Windows:
  * for GCC &gt;= 8, FC_LEN_T is defined in config.h and hence character
    lengths are passed from C to Fortran in _inter alia_ BLAS and
    LAPACK calls.
  * There is a new text file src/gnuwin32/README.compilation, which
    outlines how C/Fortran code compilation is organized and
    documents new features:
  * R can be built with Link-Time Optimization with a suitable
    compiler - doing so with GCC 9.2 showed several
    inconsistencies which have been corrected.
  * There is support for cross-compiling the C and Fortran code
    in R and standard packages on suitable (Linux) platforms.
    This is mainly intended to allow developers to test later
    versions of compilers - for example using GCC 9.2 or 10.x has
    detected issues that GCC 8.3 in Rtools40 does not.
  * There is experimental support for cross-building R packages
    with C, C++ and/or Fortran code.
  * The R installer can now be optionally built to support a single
    architecture (only 64-bit or only 32-bit).
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++14 where
    available (which it is on all currently checked platforms): if
    not (as before) C++11 is used if available otherwise C++ is not
    supported.
    Packages which specify C++11 will still be installed using C++11.
    C++14 compilers may give deprecation warnings, most often for
    std::random_shuffle (deprecated in C++14 and removed in C++17).
    Either specify C++11 (see 'Writing R Extensions') or modernize
    the code and if needed specify C++14.  The latter has been
    supported since R 3.4.0 so the package's DESCRIPTION would need
    to include something like
    Depends: R (&gt;= 3.4)
  PACKAGE INSTALLATION on Windows:
  * R CMD INSTALL and R CMD SHLIB make use of their flag --use-LTO
    when the LTO_OPT make macro is set in file etc/${R_ARCH}/Makeconf
    or in a personal/site Makevars file.  (For details see 'Writing R
    Extensions' SS4.5.)
    This provides a valuable check on code consistency.  It does work
    with GCC 8.3 as in Rtools40, but that does not detect everything
    the CRAN checks with current GCC do.
  PACKAGE INSTALLATION on macOS:
  * The default personal library directory on builds with
  - -enable-aqua (including CRAN builds) now differs by CPU type,
    one of
    ~/Library/R/x86_64/x.y/library
    ~/Library/R/arm64/x.y/library
    This uses the CPU type R (and hence the packages) were built for,
    so when a x86_64 build of R is run under Rosetta emulation on an
    arm64 Mac, the first is used.
  UTILITIES:
  * R CMD check can now scan package functions for bogus return
    statements, which were possibly intended as return() calls (wish
    of PR#17180, patch by Sebastian Meyer). This check can be
    activated via the new environment variable
    _R_CHECK_BOGUS_RETURN_, true for --as-cran.
  * R CMD build omits tarballs and binaries of previous builds from
    the top-level package directory.  (PR#17828, patch by Sebastian
    Meyer.)
  * R CMD check now runs sanity checks on the use of LazyData, for
    example that a data directory is present and that
    LazyDataCompression is not specified without LazyData and has a
    documented value.  For packages with large LazyData databases
    without specifying LazyDataCompression, there is a reference to
    the code given in 'Writing R Extensions' SS1.1.6 to test the
    choice of compression (as in all the CRAN packages tested a
    non-default method was preferred).
  * R CMD build removes LazyData and LazyDataCompression fields from
    the DESCRIPTION file of packages without a data directory.
  ENCODING-RELATED CHANGES:
  * The parser now treats \Unnnnnnnn escapes larger than the upper
    limit for Unicode points (\U10FFFF) as an error as they cannot be
    represented by valid UTF-8.
    Where such escapes are used for outputting non-printable
    (including unassigned) characters, 6 hex digits are used (rather
    than 8 with leading zeros).  For clarity, braces are used, for
    example \U{0effff}.
  * The parser now looks for non-ASCII spaces on Solaris (as
    previously on most other OSes).
  * There are warnings (including from the parser) on the use of
    unpaired surrogate Unicode points such as \uD834.  (These cannot
    be converted to valid UTF-8.)
  * Functions nchar(), tolower(), toupper() and chartr() and those
    using regular expressions have more support for inputs with a
    marked Latin-1 encoding.
  * The character-classification functions used (by default) to
    replace the system iswxxxxx functions on Windows, macOS and AIX
    have been updated to Unicode 13.0.0.
    The character-width tables have been updated to include new
    assignments in Unicode 13.0.0.
  * The code for evaluating default (extended) regular expressions
    now uses the same character-classification functions as the rest
    of R (previously they differed on Windows, macOS and AIX).
  * There is a build-time option to replace the system's
    wide-character wctrans C function by tables shipped with R: use
    configure option --with-internal-towlower or (on Windows)
  - DUSE_RI18N_CASE in CFLAGS when building R.  This may be needed
    to allow tolower() and toupper() to work with Unicode characters
    beyond the Basic Multilingual Plane where not supported by system
    functions (e.g. on Solaris where it is the new default).
  * R is more careful when truncating UTF-8 and other multi-byte
    strings that are too long to be printed, passed to the system or
    libraries or placed into an internal buffer.  Truncation will no
    longer produce incomplete multibyte characters.
  DEPRECATED AND DEFUNCT:
  * Function plclust() from the package stats and
    package.dependencies(), pkgDepends(), getDepList(),
    installFoundDepends(), and vignetteDepends() from package tools
    are defunct.
  * Defunct functions checkNEWS() and readNEWS() from package tools
    and CRAN.packages() from utils have been removed.
  * R CMD config CXXCPP is defunct (it was deprecated in R 3.6.2).
  * parallel::detectCores() drops support for Irix (retired in 2013).
  * The LINPACK argument to chol.default(), chol2inv(),
    solve.default() and svd() has been defunct since R 3.1.0.  It was
    silently ignored up to R 4.0.3 but now gives an error.
  * Subsetting/indexing, such as ddd[*] or ddd$x on a DOTSXP
    (dot-dot-dot) object ddd has been disabled; it worked by accident
    only and was undocumented.
  BUG FIXES:
  * Many more C-level allocations (mainly by malloc and strdup) are
    checked for success with suitable alternative actions.
  * Bug fix for replayPlot(); this was turning off graphics engine
    display list recording if a recorded plot was replayed in the
    same session.  The impact of the bug became visible if resize the
    device after replay OR if attempted another savePlot() after
    replay (empty display list means empty screen on resize or empty
    saved plot).
  * R CMD check etc now warn when a package exports non-existing S4
    classes or methods, also in case of no "methods" presence.
    (Reported by Alex Bertram; reproducible example and patch by
    Sebastian Meyer in PR#16662.)
  * boxplot() now also accepts calls for labels such as ylab, the
    same as plot().  (Reported by Marius Hofert.)
  * The help page for xtabs() now correctly states that addNA is
    setting na.action = na.pass among others.  (Reported as PR#17770
    by Thomas Soeiro.)
  * The R CMD check &lt;pkg&gt; gives a longer and more comprehensible
    message when DESCRIPTION misses dependencies, e.g., in Imports:.
    (Thanks to the contributors of PR#17179.)
  * update.default() now calls the generic update() on the formula to
    work correctly for models with extended formulas.  (As reported
    and suggested by Neal Fultz in PR#17865.)
  * The horizontal position of leaves in a dendrogram is now correct
    also with center = FALSE.  (PR#14938, patch from Sebastian
    Meyer.)
  * all.equal.POSIXt() no longer warns about and subsequently ignores
    inconsistent "tzone" attributes, but describes the difference in
    its return value (PR#17277).  This check can be disabled _via_
    the new argument check.tzone = FALSE as suggested by Sebastian
    Meyer.
  * as.POSIXct() now populates the "tzone" attribute from its tz
    argument when x is a logical vector consisting entirely of NA
    values.
  * x[[2^31]] &lt;- v now works.  (Thanks to the report and patch by
    Suharto Anggono in PR#17330.)
  * In log-scale graphics, axis() ticks and label positions are now
    computed more carefully and symmetrically in their range,
    typically providing _more_ ticks, fulfilling wishes in PR#17936.
    The change really corresponds to an improved axisTicks() (package
    grDevices), potentially influencing grid and lattice, for
    example.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now correct to at
    least five digits where it was catastrophically wrong,
    previously.
  * sum(df) and similar "Summary"- and "Math"-group member functions
    now work for data frames df with logical columns, notably also of
    zero rows.  (Reported to R-devel by Martin "b706".)
  * unsplit() had trouble with tibbles due to unsound use of rep(NA,
    len)-indexing, which should use NA_integer_ (Reported to R-devel
    by Mario Annau.)
  * pnorm(x, log.p = TRUE) underflows to -Inf slightly later.
  * show(&lt;hidden S4 generic&gt;) prints better and without quotes for
    non-hidden S4 generics.
  * read.table() and relatives treated an "NA" column name as missing
    when check.names = FALSE PR#18007.
  * Parsing strings containing UTF-16 surrogate pairs such as
    "\uD834\uDD1E" works better on some (uncommon) platforms.
    sprintf("%X", utf8ToInt("\uD834\uDD1E")) should now give "1D11E"
    on all platforms.
  * identical(x,y) is no longer true for differing DOTSXP objects,
    fixing PR#18032.
  * str() now works correctly for DOTSXP and related exotics, even
    when these are doomed.
    Additionally, it no longer fails for lists with a class and
    "irregular" method definitions such that e.g. lapply(*) will
    necessarily fail, as currently for different igraph objects.
  * Too long lines in environment files (e.g. Renviron) no longer
    crash R. This limit has been increased to 100,000 bytes.
    (PR#18001.)
  * There is a further workaround for FreeType giving incorrect
    italic font faces with cairo-based graphics devices on macOS.
  * add_datalist(*, force = TRUE) (from package tools) now actually
    updates an existing data/datalist file for new content.  (Thanks
    to a report and patch by Sebastian Meyer in PR#18048.)
  * cut.Date() and cut.POSIXt() could produce an empty last interval
    for breaks = "months" or breaks = "years".  (Reported as PR#18053
    by Christopher Carbone.)
  * Detection of the encoding of 'regular' macOS locales such as
    en_US (which is UTF-8) had been broken by a macOS change:
    fortunately these are now rarely used with en_US.UTF-8 being
    preferred.
  * sub() and gsub(pattern, repl, x, *) now keep attributes of x such
    as names() also when pattern is NA (PR#18079).
  * Time differences ("difftime" objects) get a replacement and a
    rep() method to keep "units" consistent.  (Thanks to a report and
    patch by Nicolas Bennett in PR#18066.)
  * The \RdOpts macro, setting defaults for \Sexpr options in an Rd
    file, had been ineffective since R 2.12.0: it now works again.
    (Thanks to a report and patch by Sebastian Meyer in PR#18073.)
  * mclapply and pvec no longer accidentally terminate parallel
    processes started before by mcparallel or related calls in
    package parallel (PR#18078).
  * grep and other functions for evaluating (extended) regular
    expressions handle in Unicode also strings not explicitly flagged
    UTF-8, but flagged native when running in UTF-8 locale.
  * Fixed a crash in fifo implementation on Windows (PR#18031).
  * Binary mode in fifo on Windows is now properly detected from
    argument open (PR#15600, PR#18031).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1622808000">- The line %{__install} -m 755 -d %{_infodir}
  no longer works in TW or Factory.
  But without that line it works everywhere. So this instruction
  was commented out of the spec file.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1628596800">- CHANGES IN R 4.1.1:
  NEW FEATURES:
  * require(pkg, quietly = TRUE) is quieter and in particular does
    not warn if the package is not found.
  DEPRECATED AND DEFUNCT:
  * Use of ftp:// URIs should be regarded as deprecated, with
    on-going support confined to method = "libcurl" and not routinely
    tested.  (Nowadays no major browser supports them.)
  * The non-default method = "internal" is deprecated for http:// and
    ftp:// URIs for both download.file and url.
  * On Windows, method = "wininet" is deprecated for http://,
    https:// and ftp:// URIs for both download.file and url.  (A
    warning is only given for ftp://.)
    For ftp:// URIs the default method is now "libcurl" if available
    (which it is on CRAN builds).
    method = "wininet" remains the default for http:// and https://
    URIs but if libcurl is available, using method = "libcurl" is
    preferred.
  INSTALLATION:
  * make check now works also without a LaTeX installation.  (Thanks
    to Sebastian Meyer's PR#18103.)
  BUG FIXES:
  * make check-devel works again in an R build configured with
  - -without-recommended-packages.
  * qnbinom(p, size, mu) for large size/mu is correct now in a range
    of cases (PR#18095); similarly for the (size, prob)
    parametrization of the negative binomial.  Also qpois() and
    qbinom() are better and or faster for extreme cases.  The
    underlying C code has been modularized and is common to all four
    cases of discrete distributions.
  * gap.axis is now part of the axis() arguments which are passed
    from bxp(), and hence boxplot().  (Thanks to Martin Smith's
    report and suggestions in PR#18109.)
  * .First and .Last can again be set from the site profile.
  * seq.int(from, to, *) and seq.default(..) now work better in large
    range cases where from-to is infinite where the two boundaries
    are finite.
  * all.equal(x,y) now returns TRUE correctly also when several
    entries of abs(x) and abs(y) are close to .Machine$double.xmax,
    the largest finite numeric.
  * model.frame() now clears the object bit when removing the class
    attribute of a value via na.action (PR#18100).
  * charClass() now works with multi-character strings on Windows
    (PR#18104, fixed by Bill Dunlap).
  * encodeString() on Solaris now works again in Latin-1 encoding on
    characters represented differently in UTF-8.  Support for
    surrogate pairs on Solaris has been improved.
  * file.show() on Windows now works with non-ASCII path names
    representable in the current native encoding (PR#18132).
  * Embedded R on Windows can now find R home directory via the
    registry even when installed only for the current user
    (PR#18135).
  * pretty(x) with finite x now returns finite values also in the
    case where the extreme x values are close in size to the maximal
    representable number .Machine$double.xmax.
    Also, it's been tweaked for very small ranges and when a boundary
    is close (or equal) to zero; e.g., pretty(c(0,1e-317)) no longer
    has negative numbers, currently still warning about a very small
    range, and pretty(2^-(1024 - 2^-1/(c(24,10)))) is more accurate.
  * The error message for not finding vignette files when weaving has
    correct file sizes now. (Thanks to Sebastian Meyer's PR#18154.)
  * dnbinom(20, &lt;large&gt;, 1) now correctly gives 0, and similar cases
    are more accurate with underflow precaution.  (Reported by Francisco Vera Alcivar in PR#18072.)</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635163200">- repaired https://bugzilla.suse.com/show_bug.cgi?id=1191380
  (rpmacros now go to rpmmacrodir)
- minor clean-ups in spec file</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635768000">- CHANGES IN R 4.1.2:
  C-LEVEL FACILITIES:
  * The workaround in headers R.h and Rmath.h (using namespace std;)
    for the Oracle Developer Studio compiler is no longer needed now
    C++11 is required so has been removed.  A couple more usages of
    log() (which should have been std::log()) with an int argument
    are reported on Solaris.
  * The undocumented limit of 4095 bytes on messages from the
    S-compatibility macros PROBLEM and MESSAGE is now documented and
    longer messages will be silently truncated rather than
    potentially causing segfaults.
  * If the R_NO_SEGV_HANDLER environment variable is non-empty, the
    signal handler for SEGV/ILL/BUS signals (which offers recovery
    user interface) is not set. This allows more reliable debugging
    of crashes that involve the console.
  DEPRECATED AND DEFUNCT:
  * The legacy S-compatibility macros PROBLEM, MESSAGE, ERROR, WARN,
    WARNING, RECOVER, ... are deprecated and will be hidden in R
    4.2.0. R's native interface of Rf_error and Rf_warning has long
    been preferred.
  BUG FIXES:
  * .mapply(F, dots, .) no longer segfaults when dots is not a list
    and uses match.fun(F) as always documented; reported by Andrew
    Simmons in PR#18164.
  * hist(&lt;Date&gt;, ...) and hist(&lt;POSIXt&gt;, ...)  no longer pass
    arguments for rect() (such as col and density) to axis().
    (Thanks to Sebastian Meyer's PR#18171.)
  * \Sexpr{ch} now preserves Encoding(ch). (Thanks to report and
    patch by Jeroen Ooms in PR#18152.)
  * Setting the RNG to "Marsaglia-Multicarry" e.g., by RNGkind(), now
    warns in more places, thanks to Andr'e Gillibert's report and
    patch in PR#18168.
  * gray(numeric(), alpha=1/2) no longer segfaults, fixing PR#18183,
    reported by Till Krenz.
  * Fixed dnbinom(x, size=&lt;very_small&gt;, .., log=TRUE) regression,
    reported by Martin Morgan.
  * as.Date.POSIXlt(x) now keeps names(x), thanks to Davis Vaughan's
    report and patch in PR#18188.
  * model.response() now strips an "AsIs" class typically, thanks to
    Duncan Murdoch's report and other discussants in PR#18190.
  * try() is considerably faster in case of an error and long call,
    as e.g., from some do.call().  Thanks to Alexander Kaever's
    suggestion posted to R-devel.
  * qqline(y = &lt;object&gt;) such as y=I(.), now works, see also
    PR#18190.
  * Non-integer mgp par() settings are now handled correctly in
    axis() and mtext(), thanks to Mikael Jagan and Duncan Murdoch's
    report and suggestion in PR#18194.
  * formatC(x) returns length zero character() now, rather than ""
    when x is of length zero, as documented, thanks to Davis
    Vaughan's post to R-devel.
  * removeSource(fn) now retains (other) attributes(fn).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1647000000">- CHANGES IN R 4.1.3:
  NEW FEATURES:
  * The default version of Bioconductor has been changed to 3.14.
    (This is used by setRepositories and the menus in GUIs.)
  UTILITIES:
  * R CMD check --as-cran has a workaround for a bug in versions of
    file up to at least 5.41 which mis-identify DBF files last
    changed in 2022 as executables.
  C-LEVEL FACILITIES:
  * The legacy S-compatibility macros SINGLE_* in R_ext/Constants.h
    (included by R.h) are deprecated and will be removed in R 4.2.0.
  BUG FIXES:
  * Initialization of self-starting nls() models with initialization
    functions following the pre-R-4.1.0 API (without the ...
    argument) works again for now, with a deprecation warning.
  * Fixed quoting of ~autodetect~ in Java setting defaults to avoid
    inadvertent user lookup due to leading ~, reported in PR#18231 by
    Harold Gutch.
  * substr(., start, stop) &lt;- v now treats _negative_ stop values
    correctly.  Reported with a patch in PR#18228 by Brodie Gaslam.
  * Subscripting an array x without dimnames by a
    length(dim(x))-column character matrix gave "random" non-sense,
    now an error; reported in PR#18244 by Mikael Jagan.
  * ...names() now matches names(list(...)) closely, fixing PR#18247.
  * all.equal(*, scale = s) now works as intended when length(s) &gt; 1,
    partly thanks to Michael Chirico's PR#18272.
  * print(x) for long vectors x now also works for named atomic
    vectors or lists and prints the correct number when reaching the
    getOption("max.print") limit; partly thanks to a report and
    proposal by Hugh Parsonage to the R-devel list.
  * all.equal(&lt;selfStart&gt;, *) no longer signals a deprecation
    warning.
  * reformulate(*, response=r) gives a helpful error message now when
    length(r) &gt; 1, thanks to Bill Dunlap's PR#18281.
  * Modifying globalCallingHandlers inside withCallingHandlers() now
    works or fails correctly, thanks to Henrik Bengtsson's PR#18257.
  * hist(&lt;Date&gt;, breaks = "days") and hist(&lt;POSIXt&gt;, breaks = "secs")
    no longer fail for inputs of length 1.
  * qbeta(.001, .9, .009) and similar cases now converge correctly
    thanks to Ben Bolker's report in PR#17746.
  * window(x, start, end) no longer wrongly signals "'start' cannot
    be after 'end'", fixing PR#17527 and PR#18291.
  * data() now checks that its (rarely used) list argument is a
    character vector - a couple of packages passed other types and
    gave incorrect results.
  * which() now checks its arr.ind argument is TRUE rather coercing
    to logical and taking the first element - which gave incorrect
    results in package code.
  * model.weights() and model.offset() more carefully extract their
    model components, thanks to Ben Bolker and Tim Taylor's R-devel
    post.
  * list.files(recursive = TRUE) now shows all broken symlinks
    (previously, some of them may have been omitted, PR#18296).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1650628800">- CHANGES IN R 4.2.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * The formula method of aggregate() now matches the generic in
    naming its first argument x (resolving PR#18299 by Thomas
    Soeiro).
    This means that calling aggregate() with a formula as a named
    first argument requires name formula in earlier versions of R and
    name x now, so portable code should not name the argument (code
    in many packages did).
  * Calling &amp;&amp; or || with either argument of length greater than one
    now gives a warning (which it is intended will become an error).
  * Calling if() or while() with a condition of length greater than
    one gives an error rather than a warning.  Consequently,
    environment variable _R_CHECK_LENGTH_1_CONDITION_ no longer has
    any effect.
  * Windows users should consult the WINDOWS section below for some
    profound changes including
  * Support for 32-bit builds has been dropped.
  * UTF-8 locales are used where available.
  * The default locations for the R installation and personal
    library folder have been changed.
    Thanks to Tomas Kalibera for months of work on the Windows port
    for this release.
  NEW FEATURES:
  * matrix(x, n, m) now warns in more cases where length(x) differs
    from n * m, as suggested by Abby Spurdle and Wolfgang Huber in
    Feb 2021 on the R-devel mailing list.
    This warning can be turned into an error by setting environment
    variable _R_CHECK_MATRIX_DATA_ to TRUE: R CMD check --as-cran
    does so unless it is already set.
  * Function file_test() in package utils gains tests for symlinks,
    readability and writability.
  * capabilities("libxml") is now false.
    The description of capabilities("http/ftp") now reflects that it
    refers to the default method, no longer the internal one.
  * simplify2array() gains an except argument for controlling the
    exceptions used by sapply().
  * Environment variables R_LIBS_USER and R_LIBS_SITE are both now
    set to the R system default if unset or empty, and can be set to
    NULL to indicate an empty list of user or site library
    directories.
  * The warning for axis()(-like) calls in cases of relatively small
    ranges (typically in log-scale situations) is slightly improved
    _and_ suppressed from explicit calls to .axisPars() as has always
    been the intention.
  * The contrasts setter function `contrasts&lt;-` gains an explicit
    default how.many = NULL rather than just using missing(how.many).
  * grid.pretty() gains a new optional argument n = 5.
  * There is a new function .pretty() with option bounds as a
    technical-utility version of pretty().  It and pretty() gain a
    new argument f.min with a better than back-compatible default.
  * Function grDevices::axisTicks() and related functions such as
    graphics::axis() work better, notably for the log scale; partly
    because of the pretty() improvements, but also because care is
    taken e.g., when ylim is finite but diff(ylim) is infinite.
  * nclass.FD() gains a digits option.
  * The R Mathlib internal C function bd0() (called indirectly from a
    dozen probability density and distribution functions such as
    dpois(), dbinom(), dgamma(), pgamma() _etc_) has been
    complemented by a more sophisticated and (mostly) more accurate C
    function ebd0(), currently called only by internal dpois_raw()
    improving accuracy for R level dpois() and potentially others
    calling it such as dnbinom(), dgamma() or pgamma().  (Thanks to
    Morten Welinder's PR#15628.)
  * write.ftable() gains sep = " " argument as suggested by Thomas
    Soeiro.
  * The names of the locale categories supported by R's
    Sys.getlocale() and Sys.setlocale() are now provided by variable
    .LC.categories in the base namespace.
  * The Date and POSIXt methods for hist() and the histogram method
    for plot() now also use the new default col = "lightgray" in
    consistency with the corresponding change to hist()'s default for
    R 4.0.0.
  * hist.default() gains new fuzz argument, and the histogram plot
    method no longer uses fractional axis ticks when displaying
    counts ("Frequency").
  * mapply() and hence Map() now also obey the "max-or-0-if-any"
    recycling rule, such that, e.g., Map(`+`, 1:3, 1[0]) is valid
    now.
  * as.character(&lt;obj&gt;) for "hexmode" or "octmode" objects now
    fulfils the important basic rule as.character(x)[j] ===
    as.character(x[j]).
  * The set utility functions, notably intersect() have been tweaked
    to be more consistent and symmetric in their two set arguments,
    also preserving a common mode.
  * substr(ch, start,end) &lt;- new now e.g., preserves names(ch); ditto
    for substring(), thanks to a patch from Brodie Gaslam.
  * plot(&lt;lm&gt;) gains a extend.ylim.f argument, in partial response to
    PR#15285; further PR#17784 is fixed thanks to several
    contributors and a patch by Elin Waring.  The Cook's dist
    contours get customizable via cook.col and cook.lty with a
    different default color and their legend is nicer by default and
    customizable via cook.legendChanges.
  * Attempting to subset an object that is not subsettable now
    signals an error of class notSubsettableError. The
    non-subsettable object is contained in the object field of the
    error condition.
  * Subscript-out-of-bounds errors are now signaled as errors of
    class subscriptOutOfBoundsError.
  * Stack-overflow errors are now signaled as errors inheriting from
    class stackOverflowError. See ?stackOverflowError for more
    details.
  * New partly experimental Sys.setLanguage() utility, solving the
    main problem of PR#18055.
  * gettext() and gettextf() get a new option trim = TRUE which when
    set to false allows translations for strings such as "Execution
    halted\n" typical for C code.
  * An experimental implementation of hash tables is now available.
    See ?hashtab for more details.
  * identical() gains a extptr.as.ref argument for requesting that
    external pointer objects be compared as reference objects.
  * reorder() gets an argument decreasing which it passes to sort()
    for level creation; based on the wish and patch by Thomas Soeiro
    in PR#18243.
  * as.vector() gains a data.frame method which returns a simple
    named list, also clearing a long standing 'FIXME' to enable
    as.vector(&lt;data.frame&gt;, mode="list").  This breaks code relying
    on as.vector(&lt;data.frame&gt;) to return the unchanged data frame.
  * legend() is now vectorized for arguments cex, x.intersp, and
    text.width.  The latter can now also be specified as a vector
    (one element for each column of the legend) or as NA for
    computing a proper column wise maximum value of strwidth(legend).
    The argument y.intersp can be specified as a vector with one
    entry for each row of the legend.
    legend() also gains new arguments title.cex and title.font.
    Thanks to Swetlana Herbrandt.
  * Deparsing no longer remaps attribute names dim, dimnames, levels,
    names and tsp to historical S-compatible names (which structure()
    maps back).
  * sample() and sample.int() have additional sanity checks on their
    size and n arguments.
    all.equal.numeric() gains a sanity check on its tolerance
    argument - calling all.equal(a, b, c) for three numeric vectors
    is a surprisingly common error.
    mean(na.rm =), rank(na.last =), barplot(legend.text =),
    boxplot(), contour(drawlabels =), polygon(border =) and
    methods::is(class2 =) have more robust sanity checks on their
    arguments.
    R CMD Rd2pdf (used by R CMD check) has a more robust sanity check
    on the format of \alias{} commands.
  * psigamma(x, deriv) for negative x now also works for deriv = 4
    and 5; their underlying C level dpsifn() is documented in
    'Writing R Extensions'.
  * The HTML help system now uses HTML5 (wish of PR#18149).
  * ks.test() now provides exact p-values also with ties and MC
    p-values in the two-sample (Smirnov) case.  By Torsten Hothorn.
  * ks.test() gains a formula interface, with y ~ 1 for the
    one-sample (Kolmogorov) test and y ~ group for the two-sample
    (Smirnov) test.  Contributed by Torsten Hothorn.
  * The return value from ks.test() now has class c("ks.test",
    "htest") - packages using try() need to take care to use
    inherits() and not == on the class.
  * New functions psmirnov(), qsmirnov() and rsmirnov() in package
    stats implementing the asymptotic and exact distributions of the
    two-sample Smirnov statistic.
  * iconv() now allows sub = "c99" to use C99-style escapes for UTF-8
    inputs which cannot be converted to encoding to.
  * In a forward pipe |&gt; expression it is now possible to use a named
    argument with the placeholder _ in the rhs call to specify where
    the lhs is to be inserted.  The placeholder can only appear once
    on the rhs.
  * The included LAPACK sources have been updated to version 3.10.0,
    except for the four Fortran 77 routines which 3.10.0 has
    re-implemented in Fortran 90 (where the older versions have been
    retained as the R build process does not support Fortran 90).
  * path.expand() and most other uses of tilde expansion now warn if
    a path would be too long if expanded.  (An exception is
    file.exists(), which silently returns false.)
  * trunc(&lt;Date&gt;, *) now supports units = "months" or "years" for
    consistency with the POSIXt method, thanks to Dirk Eddelbuettel's
    proposal in PR#18099.
  * list2DF() now checks that its arguments are of the same length,
    rather than use recycling.
  * The HTML help system has several new features: LaTeX-like math
    can be typeset using either KaTeX or MathJax, usage and example
    code is highlighted using Prism, and for dynamic help the output
    of examples and demos can be shown within the browser if the
    knitr package is installed. These features can be disabled by
    setting the environment variable _R_HELP_ENABLE_ENHANCED_HTML_ to
    a false value.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 15
    and so packages that provide graphics devices should be
    reinstalled.
  * The grid package now allows the user to specify a "vector" of
    pattern fills.  The fill argument to gpar() accepts a list of
    gradients and/or patterns and the functions linearGradient(),
    radialGradient(), and pattern() have a new group argument.
    Points grobs (data symbols) can now also have a pattern fill.
    The grobCoords() function now returns a more informative and
    complex result.
  * The grid package has new functions for drawing isolated groups:
    grid.group(), grid.define(), and grid.use().  These functions add
    compositing operators and affine transformations to R's graphics
    capabilities.
    The grid package also has new functions for stroking and filling
    paths: grid.stroke(), grid.fill(), and grid.fillStroke().
    A new function as.path() allows the user to specify the fill rule
    for a path that is to be used for clipping, stroking, or filling;
    available options are "winding" and "evenodd".  A new function
    as.mask() allows the user to specify the type of a mask;
    available options are "alpha" and "luminance".
    These new features are only supported so far (at most) on the
    Cairo-based graphics devices and on the pdf() device.
  * dev.capabilities() reports on device support for the new
    features.
  * par() now warns about unnamed non-character arguments to prevent
    misuse such as {usr &lt;- par("usr"); par(usr)}.
  INSTALLATION:
  * Facilities for accessing ftp:// sites are no longer tested
    (except _pro tem_ for curlGetHeaders()) as modern browsers have
    removed support.
  * R can now be built with DEFS = -DSTRICT_R_HEADERS .
  PACKAGE INSTALLATION:
  * R CMD INSTALL no longer tangles vignettes. This completes an R
    CMD build change in R 3.0.0 and affects packages built before R
    3.0.2. Such packages should be re-made with R CMD build to have
    the tangled R code of vignettes shipped with the tarball.
  * USE_FC_LEN_T will become the default: this uses the correct
    prototypes for Fortran BLAS/LAPACK routines called from C/C++,
    and requires adjustment of most such calls - see 'Writing R
    Extensions' SS6.6.2.  (This has been supported since R 3.6.2.)
  * Package installation speed for packages installed with
    keep.source has been improved. This resolve the issue reported by
    Ofek Shilon in PR#18236.
  UTILITIES:
  * R CMD check can optionally report files/directories left behind
    in home, /tmp (even though TMPDIR is set) and other directories.
    See the "R Internals" manual for details.
  * R CMD check now reports byte-compilation errors during
    installation.  These are not usually fatal but may result in
    parts of the package not being byte-compiled.
  * _R_CHECK_DEPENDS_ONLY_ can be applied selectively to examples,
    tests and/or vignettes in R CMD check: see the "R Internals"
    manual.
  * _R_CHECK_SRC_MINUS_W_IMPLICIT_ now defaults to true: recent
    versions of Apple clang on macOS have made implicit function
    declarations in C into a compilation error.
  * R CMD check --as-cran makes use of the environment variable
    AUTORECONF.  See the "R Internals" manual SS8 for further details.
  * R CMD check --use-valgrind also uses valgrind when re-building
    vignettes as some non-Sweave vignettes unhelpfully comment out
    all their code when R CMD check runs vignettes.
  * Errors in re-building vignettes (unless there are LaTeX errors)
    are reported by R CMD check as ERROR rather than WARNING when
    running vignettes has been skipped (as it frequently is in CRAN
    checks and by --as-cran).
  * R CMD Rd2pdf gains a --quiet option that is used by R CMD build
    when building the PDF package manual.
  * R CMD Rd2pdf now always runs LaTeX in batch mode, consistent with
    Texinfo &gt;= 6.7. The --batch option is ignored.
  * R CMD build and R CMD check now include the Rd file name and line
    numbers in the error message of an \Sexpr evaluation failure.
  * For packages using the \doi Rd macro (now an install-time \Sexpr)
    but no other dynamic Rd content, R CMD build now produces a
    smaller tarball and is considerably faster - skipping temporary
    package installation.
  C-LEVEL FACILITIES:
  * The non-API header R_ext/R-ftp-http.h is no longer provided, as
    the entry points it covered are now all defunct.
  * A number of non-API declarations and macro definitions have been
    moved from the installed header Rinternals.h to the internal
    header Defn.h. Packages that only use entry points and
    definitions documented to be part of the API as specified in
    'Writing R Extensions' SS6 should not be affected.
  * The macro USE_RINTERNALS no longer has any effect when compiling
    package code.  Packages which also use R_NO_REMAP will need to
    ensure that the remapped names are used for calls to API
    functions that were formerly also made available as macros.
  * The deprecated legacy S-compatibility macros PROBLEM, MESSAGE,
    ERROR, WARN, WARNING, RECOVER, ... are no longer defined in
    R_exts/RS.h (included by R.h).  Replace these by calls to
    Rf_error and Rf_warning (defined in header R_ext/Error.h included
    by R.h).
    Header R_ext/RS.h no longer includes R_ext/Error.h.
  * Header R_ext/Constants.h (included by R.h) when included from C++
    now includes the C++ header cfloat rather than the C header
    float.h (now possible as C++11 is required).
  * The legacy S-compatibility macros DOUBLE_* in R_ext/Constants.h
    (included by R.h) are deprecated.
  * The deprecated S-compatibility macros SINGLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * R_Calloc, R_Free and R_Realloc are preferred to their unprefixed
    forms and error messages now use the prefix. These forms were
    introduced in R 3.4.0 and are available even when
    STRICT_R_HEADERS is defined.
  * rmultinom has been documented in 'Writing R Extensions' SS6 so is
    now part of the R API.
  * Similarly, Rtanpi, called from R level tanpi() is now part of the
    R API.
  * The long-deprecated, undocumented and non-API entry point call_R
    is no longer declared in R_ext/RS.h (included by R.h).
  * The header S.h which has been unsupported since Jan 2016 has been
    removed.  Use R.h instead.
  DEPRECATED AND DEFUNCT:
  * The (non-default and deprecated) method = "internal" for
    download.file() and url() no longer supports http:// nor ftp://
    URIs.  (It is used only for file:// URIs.)
    On Windows, download.file(method = "wininet") no longer supports
    ftp:// URIs.  (It is no longer the default method, which is
    "libcurl" and does.)
    On Windows, the deprecated method = "wininet" now gives a warning
    for http:// and https:// URIs for both download.file() and url().
    (It is no longer the default method.)
  * On Windows, the command-line option --max-mem-size and
    environment variable R_MAX_MEM_SIZE are defunct.  The memory
    allocation limit was important for 32-bit builds, but these are
    no longer supported.
  * default.stringsAsFactors() is now formally deprecated, where that
    was only mentioned on its regular help page, previously.  So it
    now gives a warning if called.
  * unix.time() is defunct now; it had been deprecated since R 3.4.0.
  BUG FIXES:
  * Setting digits = 0 in format(), print.default() (and hence
    typically print()) or options() is again invalid.  Its behaviour
    was platform-dependent, and it is unclear what "zero significant
    digits" should mean (PR#18098).
  * Messages from C code in the cairo section of package grDevices
    are now also offered for translation, thanks to Michael Chirico's
    PR#18123.
  * mean(x) with finite x now is finite also without "long.double"
    capability.
  * R CMD Rd2pdf no longer leaves an empty build directory behind
    when it aborts due to an already existing output file.  (Thanks
    to Sebastian Meyer's PR#18141.)
  * density(x, weights = w, na.rm = TRUE) when anyNA(x) is true, now
    removes weights "in parallel" to x, fixing PR#18151, reported by
    Matthias Gondan.  Additionally, it gets a subdensity option.
  * Conversion of \Sexpr[]{&lt;expR&gt;} to LaTeX or HTML no longer
    produces long blocks of empty lines when &lt;expR&gt; itself contains
    several lines all producing empty output.  Thanks to a report and
    patch by Ivan Krylov posted to R-devel.
  * R CMD build no longer fails if a package vignette uses child
    documents and inst/doc exists.  (Thanks to Sebastian Meyer's
    PR#18156.)
  * When an R documentation ('help' source) file man/foo.Rd in a
    package has \donttest{..} examples with a syntax error, it is now
    signalled as ERROR and with correct line numbers relating to the
  * -Ex.R file, thanks to Duncan Murdoch and Sebastian Meyer's
    reports and patch proposals in PR#17501.
  * Improved determination of the correct translation domain in
    non-base packages, addressing the combination of PR#18092 and
    PR#17998 (#c6) with reports and _augmented_ patch #2904 by
    Suharto Anggono.
    Note that "R-base" is no longer the default domain e.g., for
    top-level calls to gettext(); rather translation needs explicit
    domain = * specification in such cases.
  * identical(attrib.as.set=FALSE) now works correctly with data
    frames with default row names (Thanks to Charlie Gao's PR#18179).
  * txtProgressBar() now enforces a non-zero width for argument char,
    without which no progress can be visible.
  * dimnames(table(d)) is more consistent in the case where d is a
    list with a single component, thanks to Thomas Soeiro's report to
    R-devel.
    Further, table(d1, d2) now gives an error when d1 and d2 are data
    frames as suggested by Thomas in PR#18224.
  * Fix for drawing semi-transparent lines and fills on the native
    Windows graphics device (PR#18219 and PR#16694).  Thanks to Nick
    Ray for helpful diagnosis on Bugzilla.
  * The deparser now wraps sub-expressions such as if(A) ..  with
    parentheses when needed; thanks to Duncan Murdoch's PR#18232 and
    Lionel Henry's patches there.
  * remove.packages() no longer tries to uninstall Priority: base
    packages, thanks to a report and suggestions by Colin Fay in
    PR#18227.
  * win.metafile() now has xpinch and ypinch arguments so that the
    user can override Windows' (potentially wrong) guess at device
    dimensions.
  * x[i] and x[[i]] for non-integer i should now behave in all cases
    as always documented: the index used is equivalent to
    as.integer(i) unless that would overflow where trunc(i) is used
    instead; thanks to Suharto Anggono's report and patch proposals
    in PR#17977.
  * asOneSidedFormula() now associates the resulting formula with the
    global environment rather than the evaluation environment created
    for the call.
  * &lt;bibentry&gt;$name now matches the field name case-insensitively,
    consistent with bibentry() creation and the replacement method.
  * cbind() failed to detect some length mismatches with a mixture of
    time-series and non-time-series inputs.
  * The default LaTeX style file Sweave.sty used by the RweaveLatex
    driver no longer loads the obsolete ae package; thanks to a
    report by Thomas Soeiro in PR#18271.  Furthermore, it now skips
    \usepackage[T1]{fontenc} for engines other than pdfTeX (if
    detected) or if the new [nofontenc] option is used.
  * smooth.spline() now stores its logical cv argument more safely,
    fixing a rare bug when printing, and also stores n.
  * smooth.spline(x,y,*) now computes the cv.crit statistic
    correctly, also when is.unsorted(x), fixing PR#18294.
  * The data.frame method of rbind() now warns when binding
    not-wholly-recycling vectors, by analogy to the default method
    (for matrices).
  * setAs() finds the correct class for name to when multiple
    packages define a class with that name. Thanks to Gabor Csardi
    for the report.
  * Fix for detaching a package when two classes of the same name are
    present in method signatures for the same generic. Thanks to
    Gabor Csardi for the report.
  * match.arg("", c("", "a", "B")) gives a better error message, in
    part from PR#17959, thanks to Elin Waring.
  * R CMD Sweave --clean no longer removes pre-existing files or
    subdirectories (PR#18242).
  * The quartz() device no longer splits polylines into subpaths.
    That has caused narrowly-spaced lines with many points to always
    look solid even when dashed line type was used due to dash phase
    restarts.
  * Deparsing constructs such as quote(1 + `!`(2) + 3) works again as
    before R 3.5.0, thanks to the report and patch in PR#18284 by
    Suharto Anggono.
  * as.list(f) for a factor f now keeps names(f), fixing PR#18309.
  * qbeta(.001, .9, .009) and analogous qf() calls now return a
    correct value instead of NaN or wrongly 1, all with a warning;
    thanks to the report by Ludger Goeminne in PR#18302.
  * plot.lm() failed to produce the plot of residuals vs.  factor
    levels (i.e., which=5 when leverages are constant) for models
    with character predictors (PR#17840).
  * interaction.plot(..., xtick = TRUE) misplaced the x-axis line
    (PR#18305).
  * Not strictly fixing a bug, format()ing and print()ing of
    non-finite Date and POSIXt values NaN and +/-Inf no longer show
    as NA but the respective string, e.g., Inf, for consistency with
    numeric vector's behaviour, fulfilling the wish of PR#18308.
  * R CMD check no longer runs test scripts generated from
    corresponding .Rin files twice and now signals an ERROR if
    processing an .Rin script fails.
  * tools::Rd2txt() used for plain-text help pages now renders \hrefs
    (if tools::Rd2txt_options(showURLs = TRUE)) and \urls with
    percent-encoding and standards-compliant delimiting style (angle
    brackets and no URL: prefix).  \email is now rendered with a
    mailto: prefix.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1655985600">- CHANGES IN R 4.2.1:
  NEW FEATURES:
  * New function utils::findCRANmirror() to find out if a CRAN mirror
    has been selected, otherwise fallback to the main site.  This
    behaves in the same way as tools::CRAN_package_db() and is
    intended for packages wishing to access CRAN for purposes other
    than installing packages.
    The need for this was shown by a day when the main CRAN website
    was offline and a dozen or so packages which had its URL
    hardcoded failed their checks.
  INSTALLATION on a UNIX-ALIKE:
  * The libraries searched for by --with-blas (without a value) now
    include BLIS (after OpenBLAS but before ATLAS).  And on macOS,
    the Accelerate framework (after ATLAS).  (This is patterned after
    the AX_BLAS macro from the Autoconf Archive.)
  * The included LAPACK sources have been updated to 3.10.1.
  UTILITIES:
  * The (full path to) the command tidy to be used for HTML
    validation can be set by environment variable R_TIDYCMD.
  * Setting environment variable _R_CHECK_RD_VALIDATE_RD2HTML_ to a
    false value will override R CMD check --as-cran and turn off HTML
    validation.  This provides a way to circumvent a problematic
    tidy.
    The 2006 version that ships with macOS is always skipped.
  C-LEVEL FACILITIES:
  * The undocumented legacy declarations of Sint, Sfloat, SINT_MAX
    and SINT_MIN in header R.h are deprecated.
  BUG FIXES:
  * fisher.test(d) no longer segfaults for "large" d; fixing PR#18336
    by preventing/detecting an integer overflow reliably.
  * tar(., files=*) now produces correctly the warning about invalid
    uid or gid of files, fixing PR#18344, reported by Martin Morgan.
  * tk_choose.files() with multi = FALSE misbehaved on paths
    containing spaces (PR#18334) (regression introduced in R 4.0.0).
  * sort(x, partial = ind, *) now works correctly notably for the
    non-default na.last = FALSE or TRUE, fixing PR#18335 reported by
    James Edwards.
  * Environment variable _R_CHECK_XREFS_REPOSITORIES_ is only used
    for checking .Rd cross-references in R CMD check (as documented)
    and not for other uses looking for a CRAN mirror.
  * The search for a CRAN mirror when checking packages now uses
    getOption("repos") if that specifies a CRAN mirror, even when it
    does not also specify all three Bioconductor repositories (as was
    previously required).
  * The HTML code generated by tools::Rd2HTML() has been improved to
    pass tidy 5.8.0.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1667217600">- CHANGES IN R 4.2.2:
  NEW FEATURES:
  * tools::Rdiff(useDiff = TRUE) checks for the presence of an
    external diff command and switches to useDiff = FALSE if none is
    found.  This allows R CMD Rdiff to always work.
  * On Windows, environment variable R_LIBCURL_SSL_REVOKE_BEST_EFFORT
    can be used to switch to only 'best-effort' SSL certificate
    revocation checks with the default "libcurl" download method.
    This reduces security, but may be needed for downloads to work
    with MITM proxies (PR#18379).
  * (macOS) The run-time check for libraries from XQuartz for X11 and
    Tcl/Tk no longer uses otool from the Apple Developer Tools
    (PR#18400).
  * The LaTeX style for producing the PDF manuals, Rd.sty, now loads
    the standard amsmath, amsfonts and amssymb packages for greater
    coverage of math commands in the Rd \eqn and \deqn macros.  The
    \mathscr LaTeX command is also provided (via the mathrsfs
    package, if available, or the amsfonts bundle otherwise),
    fulfilling the wish of PR#18398.
  * (Windows) The default format of readClipboard() and
    writeClipboard() has been changed to 13 (CF_UNICODETEXT).
  INSTALLATION on a UNIX-ALIKE:
  * The PDF manuals (if built) can be compacted by the new target
    make compact-pdf (at the top level or in directory doc/manual).
  * There is now configure support for LLVM clang 15 on Linux, which
    defaults to position-independent (PIE) executables whereas
    gfortran does not.
  * Many small changes to ease compilation (and suppress warnings)
    with LLVM clang 15.
  BUG FIXES:
  * Rscript -e would fail if stdin were closed (Reported by Henrik
    Bengtsson.)
  * qt(*, log.p=TRUE) in outer tails no longer produces NaN in its
    final steps, thus fixing PR#18360.
  * tools::Rd2latex() now escapes hashes and ampersands when writing
    URLs, fixing LaTeX errors with such URLs in \tabular.
  * When isGeneric(f, fdef=*) is used with mismatching names, the
    warning is better understandable; reported (with fix) in PR#18370
    by Gabe Becker.
  * poly(x, n) now works again (and is now documented) when x is a
    "Date" or "POSIXct" object, or of another class while fulfilling
    mode(x) == "numeric".  This also enables poly(x, *, raw=TRUE) for
    such variables.  Reported by Michael Chirico to R-devel.
  * write.table(), write.csv() and write.csv2() restore their
    numerical precision (internal equivalent of digits = 15) after an
    interrupt (PR#18384).
  * One can now read also byte FF from a clipboard connection
    (PR#18385).
  * source("") and source(character()) now give more helpful error
    messages.
  * R CMD check --as-cran set _R_CHECK_TIMINGS_ too late to have the
    intended effect.
  * as.POSIXlt(x) now also works with very large dates x, fixing
    PR#18401 reported by Hannes M"uhleisen.
  * Files can now be extracted even from very large zip archives
    (PR#18390, thanks to Martin Jakt).
  * Non-finite objects of class "POSIXlt" are now correctly coerced
    to classes "Date" and "POSIXct"; following up on the extension to
    format() them correctly.
  * Added methods for is.finite(), is.infinite() and is.nan() for
    "POSIXlt" date-time objects.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1678881600">- CHANGES IN R 4.2.3:
  C-LEVEL FACILITIES:
  * The definition of DL_FUNC in R_ext/Rdynload.h has been changed to
    be fully C-compliant.  This means that functions loaded _via_ for
    example R_GetCCallable need to be cast to an appropriate type if
    they have any arguments.
  * .Machine has a new element sizeof.time_t to identify old systems
    with a 32-bit type and hence a limited range of date-times (and
    limited support for dates millions of years from present).
  PACKAGE INSTALLATION:
  * (Windows) The default C++ standard had accidentally been left at
    C++11 when it was changed to C++14 on Unix.
  BUG FIXES:
  * As "POSIXlt" objects may be "partially filled" and their list
    components meant to be recycled, length() now is the length of
    the longest component.
  * as.POSIXlt.Date() could underflow for dates in the far past (more
    than half a million years BCE).
  * as.Date.POSIXlt(x) would return "1970-01-01" instead of NA in R
    4.2.2, e.g., for
    x &lt;- as.POSIXlt(c("2019-01-30","2001-1-1"))
    x$mon &lt;- c(0L, NA); as.Date(x)
  * R CMD check failed to apply enabled _R_CHECK_SUGGESTS_ONLY_ to
    examples and vignettes (regression in R 4.2.0).
  * R CMD check did not re-build vignettes in separate processes by
    default (regression in R 4.2.0).
  * Running examples from HTML documentation now restores previous
    knitr settings and options (PR#18420).
  * Quartz: fonts are now located using Core Graphics API instead of
    deprecated ATS which is no longer supported in the macOS 13 SDK
    (PR#18426).  This also addresses an issue where the currently
    used font in the Quartz device context was not correctly
    retained.
  * (Windows) Math symbols in text drawing functions are again
    rendered correctly (PR#18440).  This fixes a regression in R
    4.2.1 caused by a fix in PR#18382 which uncovered an issue in
    GraphApp due to which the symbol charset was not used with TT
    Symbol font face.
  * (Windows) Installing a package with a src/Makefile.{win,ucrt}
    file includes ~/.R/Makevars.win64 in the search for user
    makevars, as documented in "R Installation and Administration"
    and done for packages with a src/Makevars.{win,ucrt} file.
  * format(&lt;POSIXlt_w/_unbalanced_sec&gt;, "....%OS&lt;n&gt;") with n &gt; 0 no
    longer accidentally uses the unbalanced seconds, thanks to
    Suharto Anggono's report (including patch) in PR#18448.
  * solve.default(a, b) works around issues with some versions of
    LAPACK when a contains NA or NaN values.
  * When UseMethod() cannot dispatch, it no longer segfaults
    producing the error message in case of a long class(), thanks to
    Joris Vankerschaver's report (including patch) in PR#18447.
  * When example(foo, ..) produces graphics on an interactive device
    it needs to open itself, it now leaves devAskNewPage() unchanged
    even when it was FALSE, thus fixing a 14 years old '&lt;FIXME&gt;'.
  * packageDescription() again catches errors from encoding
    conversions. This also fixes broken packageVersion() in C locale
    on systems where iconv does not support transliteration.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1681128000">- add patch to build with libcurl &gt;= 8</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1682078400">- CHANGES IN R 4.3.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Calling &amp;&amp; or || with LHS or (if evaluated) RHS of length greater
    than one is now always an error, with a report of the form
    'length = 4' in coercion to 'logical(1)'
    Environment variable _R_CHECK_LENGTH_1_LOGIC2_ no longer has any
    effect.
  NEW FEATURES:
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.10.1.  (This caused some platform-dependent
    changes to package check output.)  And then to the sources from
    LAPACK version 3.11.0 (with changes only to double complex
    subroutines).
  * The included LAPACK sources have been updated to include the four
    Fortran 90 routines rather than their Fortran 77 predecessors.
    This may give some different signs in SVDs or
    eigendecompositions..  (This completes the transition to LAPACK
    3.10.x begun in R 4.2.0.)
  * The LAPACK sources have been updated to version 3.11.0.  (No new
    subroutines have been added, so this almost entirely bug fixes:
    Those fixes do affect some computations with NaNs, including R's
    NA.)
  * The parser now signals _classed_ errors, notably in case of the
    pipe operator |&gt;.  The error object and message now give line and
    column numbers, mostly as proposed and provided by Duncan Murdoch
    in PR#18328.
  * toeplitz() is now generalized for asymmetric cases, with a
    toeplitz2() variant.
  * xy.coords() and xyz.coords() and consequently, e.g., plot(x,y,
    log = "y") now signal a _classed_ warning about negative values
    of y (where log(.) is NA).  Such a warning can be specifically
    suppressed or caught otherwise.
  * Regular expression functions now check more thoroughly whether
    their inputs are valid strings (in their encoding, e.g. in
    UTF-8).
  * The performance of grep(), sub(), gsub() and strsplit() has been
    improved, particularly with perl = TRUE and fixed = TRUE.  Use of
    useBytes = TRUE for performance reasons should no longer be
    needed and is discouraged: it may lead to incorrect results.
  * apropos() gains an argument dot_internals which is used by the
    completion (help(rcompgen)) engine to also see base internals
    such as .POSIXct().
  * Support in tools::Rdiff() for comparing uncompressed PDF files is
    further reduced - see its help page.
  * qqplot(x, y, ...) gains conf.level and conf.args arguments for
    computing and plotting a confidence band for the treatment
    function transforming the distribution of x into the distribution
    of y (Switzer, 1976, _Biometrika_). Contributed by Torsten
    Hothorn.
  * Performance of package_dependencies() has been improved for cases
    when the number of dependencies is large.
  * Strings newly created by gsub(), sub() and strsplit(), when any
    of the inputs is marked as "bytes", are also marked as "bytes".
    This reduces the risk of creating invalid strings and accidental
    substitution of bytes deemed invalid.
  * Support for readLines(encoding = "bytes") has been added to allow
    processing special text files byte-by-byte, without creating
    invalid strings.
  * iconv(from = "") now takes into account any declared encoding of
    the input elements and uses it in preference to the native
    encoding.  This reduces the risk of accidental creation of
    invalid strings, particularly when different elements of the
    input have different encoding (including "bytes").
  * Package repositories in getOption("repos") are now initialized
    from the repositories file when utils is loaded (if not already
    set, e.g., in .Rprofile).  (From a report and patch proposal by
    Gabriel Becker in PR#18405.)
  * compactPDF() gets a verbose option.
  * type.convert() and hence read.table() get new option tryLogical =
    TRUE with back compatible default.  When set to false, converts
    "F" or "T" columns to character.
  * Added new unit prefixes "R" and "Q" for abbreviating
    (unrealistically large) sizes beyond 10^{27} in standard = "SI",
    thanks to Henrik Bengtsson's PR#18435.
  * as.data.frame()'s default method now also works fine with atomic
    objects inheriting from classes such as "roman", "octmode" and
    "hexmode", such fulfilling the wish of PR#18421, by Benjamin
    Feakins.
  * The as.data.frame.vector() utility now errors for wrong-length
    row.names.  It warned for almost six years, with "Will be an
    error!".
  * sessionInfo() now also contains La_version() and reports codepage
    and timezone when relevant, in both print() and toLatex() methods
    which also get new option tzone for displaying timezone
    information when locale = FALSE.
  * New function R_compiled_by() reports the C and Fortran compilers
    used to build R, if known.
  * predict(&lt;lm&gt;, newdata = *) no longer unnecessarily creates an
    offset of all 0s.
  * solve() for complex inputs now uses argument tol and by default
    checks for 'computational singularity' (as it long has done for
    numeric inputs).
  * predict(&lt;rank-deficient lm&gt;, newdata=*) now obeys a new argument
    rankdeficient, with new default "warnif", warning only if there
    are non-estimable cases in newdata.  Other options include
    rankdeficient = "NA", predicting NA for non-estimable newdata
    cases.  This addresses PR#15072 by Russ Lenth and is based on his
    original proposal and discussions in PR#16158 also by David Firth
    and Elin Waring.  Still somewhat experimental.
  * Rgui console implementation now works better with the NVDA screen
    reader when the full blinking cursor is selected.  The underlying
    improvements in cursor handling may help also other screen
    readers on Windows.
  * The drop-field control in GraphApp can now be left with the TAB
    key and all controls can be navigated in the reverse order using
    the Shift+TAB key, improving accessibility of the Rgui
    configuration editor.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now fully accurate
    (instead of to "only" minimally five digits).
  * demo(error.catching) now also shows off withWarnings() and
    tryCatchWEMs().
  * As an experimental feature the placeholder _ can now also be used
    in the rhs of a forward pipe |&gt; expression as the first argument
    in an extraction call, such as _$coef. More generally, it can be
    used as the head of a chain of extractions, such as _$coef[[2]].
  * Spaces in the environment variable used to choose the R session's
    temporary directory (TMPDIR, TMP and TEMP are tried in turn) are
    now fatal.  (On Windows the 'short path' version of the path is
    tried and used if that does not contain a space.)
  * all.equal.numeric() gets a new optional switch giveErr to return
    the numeric error as attribute.  Relatedly,
    stopifnot(all.equal&lt;some&gt;(a, b, ..)) is as "smart" now, as
    stopifnot(all.equal(....)) has been already, thus allowing
    customized all.equal&lt;Some&gt;() wrappers.
  * R on Windows is now able to work with path names longer than 260
    characters when these are enabled in the system (requires at
    least Windows 10 version 1607).  Packages should be updated to
    work with long paths as well, instead of assuming PATH_MAX to be
    the maximum length.  Custom front-ends and applications embedding
    R need to update their manifests if they wish to allow this
    feature.  See
    &lt;https://blog.r-project.org/2023/03/07/path-length-limit-on-windows&gt;
    for more information.
  * 'Object not found' and 'Missing argument' errors now give a more
    accurate error context. Patch provided by Lionel Henry in
    PR#18241.
  * The @ operator is now an S3 generic. Based on contributions by
    Tomasz Kalinowski in PR#18482.
  * New generic chooseOpsMethod() provides a mechanism for objects to
    resolve cases where two suitable methods are found for an Ops
    Group Generic. This supports experimenting with alternative
    object systems. Based on contributions by Tomasz Kalinowski in
    PR#18484.
  * inherits(x, what) now accepts values other than a simple
    character vector for argument what. A new generic, nameOfClass(),
    is called to resolve the class name from what. This supports
    experimenting with alternative object systems. Based on
    contributions by Tomasz Kalinowski in PR#18485.
  * Detection of BLAS/LAPACK in use (sessionInfo()) with FlexiBLAS
    now reports the current backend.
  * The "data.frame" method for subset() now warns about extraneous
    arguments, typically catching the use of = instead of == in the
    subset expression.
  * Calling a:b when numeric a or b is longer than one may now be
    made into an error by setting environment variable
    _R_CHECK_LENGTH_COLON_ to a true value, along the proposal in
    PR#18419 by Henrik Bengtsson.
  * density(x, weights = *) now warns if automatic bandwidth
    selection happens without using weights; new optional warnWbw may
    suppress the warning.  Prompted by Christoph Dalitz' PR#18490 and
    its discussants.
  * rm(list = *) is faster and more readable thanks to Kevin Ushey's
    PR#18492.
  * The plot.lm() function no longer produces a normal Q-Q plot for
    GLMs. Instead it plots a half-normal Q-Q plot of the absolute
    value of the standardized deviance residuals.
  * The print() method for class "summary.glm" no longer shows
    summary statistics for the deviance residuals by default.  Its
    optional argument show.residuals can be used to show them if
    required.
  * The tapply() function now accepts a data frame as its X argument,
    and allows INDEX to be a formula in that case. by.data.frame()
    similarly allows INDICES to be a formula.
  * The performance of df[j] &lt;- value (including for missing j) and
    write.table(df) has been improved for data frames df with a large
    number of columns.  (Thanks to Gabriel Becker's PR#18500,
    PR#18503 and discussants, prompted by a report from Toby Dylan
    Hocking on the R-devel mailing list.)
  * The matrix multiply operator %*% is now an S3 generic, belonging
    to new group generic matrixOps.  From Tomasz Kalinowski's
    contribution in PR#18483.
  * New function array2DF() to convert arrays to data frames,
    particularly useful for the list arrays created by tapply().
  DATES and TIMES:
  * On platforms where (non-UTC) datetimes before 1902 (or before
    1900 as with system functions on recent macOS) are guessed by
    extrapolating time zones from 1902-2037, there is a warning at
    the first use of extrapolation in a session.  (As all time zones
    post 2037 are extrapolation, we do not warn on those.)
  * (Platforms using --with-internal-tzone, including Windows and by
    default macOS). How years are printed in dates or date-times can
    be controlled by environment variable R_PAD_YEARS_BY_ZERO.  The
    default remains to pad to 4 digits by zeroes, but setting value
    no gives no padding (as used by default by glibc).
  * strftime() tries harder to determine the offset for the "%z"
    format, and succeeds on the mainstream R platforms.
  * strftime() has a limit of 2048 bytes on the string produced -
    attempting to exceed this is an error.  (Previously it silently
    truncated at 255 bytes.)
  * sessionInfo() records (and by default prints) the system time
    zone as part of the locale information.  Also, the source
    (system/internal) of the date-time conversion and printing
    functions.
  * Objects of class "POSIXlt" created in this version of R always
    have 11 components: component zone is always set, and component
    gmtoff is set for times in UTC and usually set on the (almost
    all) platforms which have C-level support, otherwise is NA.
  * There are comprehensive validity checks on the structure of
    objects of class "POSIXlt" when converting (including formatting
    and printing).  (This avoids mis-conversions of hand-crafted
    objects.)
  * There is some support for using the native date-time routines on
    macOS: this is only viable on recent versions (e.g. 12.6 and 13)
    and does get wrong some historical changes (before 1900, during
    WWII).  Use of --with-internal-tzone remains the default.
  * as.POSIXct(&lt;numeric&gt;) and as.POSIXlt(.) (without specifying
    origin) now work.  So does as.Date(&lt;numeric&gt;).
  * as.Date.POSIXct(., tz) now treats several tz values, notably
    "GMT" as equivalent to "UTC", proposed and improved by Michael
    Chirico and Joshua Ulrich in PR#17674.
  * Experimental balancePOSIXlt() utility allows using "ragged" and
    or out-of-range "POSIXlt" objects more correctly, e.g., in
    subsetting and subassignments.  Such objects are now documented.
    More experimentally, a "POSIXlt" object may have an attribute
    "balanced" indicating if it is known to be filled or fully
    balanced.
  * Functions axis.Date() and axis.POSIXct() are rewritten to gain
    better default tick locations and better default formats by using
    prettyDate(). Thanks to Swetlana Herbrandt.
  * The mapping of Windows' names for time zones to IANA's 'Olson'
    names has been updated.  When ICU is available (it is by
    default), it is used to get a mapping for the current region set
    in Windows.  This can be overridden by setting environment
    variable TZ to the desired Olson name - see OlsonNames() for
    those currently available.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 16
    and so packages that provide graphics devices should be
    reinstalled.
  * The grDevices and grid packages have new functions for rendering
    typeset glyphs, primarily: grDevices::glyphInfo() and
    grid::grid.glyph().
    Rendering of typeset glyphs is only supported so far on the
    Cairo-based graphics devices and on the pdf() and quartz()
    devices.
  * The defined behaviour for "clear" and "source" compositing
    operators (via grid::grid.group()) has been changed (to align
    better with simple interpretation of original Porter-Duff
    definitions).
  * Support for gradients, patterns, clipping paths, masks, groups,
    compositing operators, and affine transformations has been added
    to the quartz() device.
  INSTALLATION on a UNIX-ALIKE:
  * A system installation of generic LAPACK 3.10.0 or later will be
    preferred to the version in the R sources.
    configure option --with-lapack=no (equivalently --without-lapack)
    forces compilation of the internal LAPACK sources.
    If --with-lapack is not specified, a system liblapack is looked
    for and used if it reports version 3.10.0 or later and does not
    contain BLAS routines.
    Packages using LAPACK will need to be reinstalled if this changes
    to using an external library.
  * On aarch64 Linux platforms using GCC, configure now defaults to
  - fPIC (instead of -fpic), as desired in PR#18326.
  * configure now checks conversion of datetimes between POSIXlt and
    POSIXct around year 2020.  Failure (which has been seen on
    platforms missing tzdata) is fatal.
  * If configure option --with-valgrind-instrumentation is given
    value 1 or 2, option --with-system-valgrind-headers is now the
    default and ignored (with a warning).  It is highly recommended
    that the system headers are installed alongside valgrind: they
    are part of its packaging on some Linux distributions and
    packaged separately (e.g. in the valgrind-devel RPM) on others.
    configure will give a warning if they are not found.
    The system headers will be required in a future release of R to
    build with valgrind instrumentation.
  * libcurl 8.x is now accepted by configure: despite a change in
    major version number it changes neither API nor ABI.
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools43, an update of the Rtools42 toolchain.  It is
    based on gcc 12 and newer versions of MinGW-W64, binutils and
    libraries.  At this time R-devel can still be built using
    Rtools42 without changes, but when R-devel is installed via the
    installer, it will by default look for Rtools43.
  * Old make targets rsync-extsoft and 32-bit ones that are no longer
    needed have been removed.
  * Default builds (including for packages) no longer select C99.
    Thus the C standard used is the default for the compiler, which
    for the toolchain in Rtools43 is C17.  (This is consistent with
    Unix builds.)
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++17 where
    available (which it is on all currently checked platforms): if
    not C++14 or C++11 is used if available otherwise C++ is not
    supported.
  * USE_FC_LEN_T is the default: this uses the correct
    (compiler-dependent) prototypes for Fortran BLAS/LAPACK routines
    called from C/C++, and requires adjustment of many such calls -
    see 'Writing R Extensions' SS6.6.1.
  * There is initial support for C++23 as several compilers are now
    supporting -std=c++23 or -std=c++2b or similar.  As for C++20,
    there no additional configure checks for C++23 features beyond a
    check that the compiler reports a __cplusplus value greater than
    that in the C++20 standard.  C++ feature tests should be used.
  * There is support for a package to indicate the version of the C
    standard which should be used to compile it, and for the
    installing user to specify this.  In most cases R defaults to the
    C compiler's default standard which is C17 (a `bug-fix' of C11) -
    earlier versions of R or compilers may have defaulted to C99.
    Current options are:
    USE_C17 Use a standard that is at most C17.  The intention is to
    allow legacy packages to still be installed when later C
    standards become the default, including packages using new
    keywords as identifiers or with K&amp;R-style function
    declarations.  This will use C17 if available, falling back
    to C11.
    USE_C90 Use the C90 (aka C89) standard.  (As that standard did
    not require compilers to identify that version, all we can
    verify is that the compiler does not claim to be using a
    later standard.  It may accept C99 features - for example
    clang accepts // to make comments.)
    USE_C99 Use the C99 standard. This should be rarely needed - it
    avoids the few new features of C11/C17 which can be useful if
    a package assumes them if C17 is specified and they are not
    implemented.
    USE_C23 Use C23 (or in future, later).  Compiler/library support
    for C23 is still being implemented, but LLVM clang from
    15.0.0 and the upcoming GCC 13 have quite extensive support.
    These can be specified as part of the SystemRequirements field in
    the package's DESCRIPTION file or _via_ options --use-C17 and so
    on of R CMD INSTALL and R CMD SHLIB.
    For further details see "Writing R Extensions" SS1.2.5.
  * (Windows) A src/Makefile.ucrt or src/Makefile.win file is now
    included after R_HOME/etcR_ARCH/Makeconf and so no longer needs
    to include that file itself.  Installation of a package with such
    a file now uses a site Makevars file in the same way as a package
    with a src/Makevars.win file would.
  * configure is now passed crucial variables such as CC and CFLAGS
    in its environment, as many packages were not setting them (as
    documented in 'Writing R Extensions' SS1.2).
    This has most effect where configure is used to compile parts of
    the package - most often by cmake or libtool which obfuscate the
    actual compile commands used.
    Also used for configure.win and configure.ucrt on Windows.
  FORTRAN FLAGS:
  * The flag -fno-optimize-sibling-calls is no longer forced for
    gfortran 7 and later.  It should no longer be needed now using
    'hidden' character-length arguments when calling BLAS/LAPACK
    routines from C/C++ is the default even for packages.  (Unless
    perhaps packages call Fortran code from C/C++ without using R's
    headers and without allowing for these arguments.)
  C-LEVEL FACILITIES:
  * The deprecated S-compatibility macros DOUBLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * The deprecated legacy typedefs of Sint and Sfloat in header R.h
    are no longer defined, and that header no longer includes header
    limits.h from C nor climits from C++.
  * New macro CAD5R() is provided in Rinternals.h and used in a few
    places in the R sources.
  * ALTREP now supports VECSXP vectors. Contributed by Gabor Csardi
    in PR#17620.
  * The Rcomplex definition (in header R_ext/Complex.h) has been
    extended to prevent possible mis-compilation when interfacing
    with Fortran (PR#18430).  The new definition causes compiler
    warnings with static initializers such as {1, 2}, which can be
    changed to {.r=1, .i=2}.
    Using the new definition from C++ depends on compiler extensions
    supporting C features that have not been incorporated into the
    C++ standards but are available in g++ and clang++: this may
    result in C++ compiler warnings but these have been worked around
    for recent versions of common compilers (GCC, Apple/LLVM clang,
    Intel).
    It is intended to change the inclusion of header R_ext/Complex.h
    by other R headers, so C/C++ code files which make use of
    Rcomplex should include that header explicitly.
  UTILITIES:
  * R CMD check does more checking of package .Rd files, warning
    about invalid email addresses and (some) invalid URIs and noting
    empty \item labels in description lists.
  * R CMD check now also reports problems when reading package news
    in md (file NEWS.md) and (optionally) plain text (file NEWS)
    formats.
  * _R_CHECK_TIMINGS_ defaults to a value from the environment even
    for R CMD check --as-cran; this allows for exceptionally fast or
    slow platforms.
    It now applies to checking PDF and HTML versions of the manuals,
    and 'checking CRAN incoming feasibility'.
  * R CMD check can optionally (but included in --as-cran) check
    whether HTML math rendering _via_ KaTeX works for the package .Rd
    files.
  * Non-interactive debugger invocations can be trapped by setting
    the environment variable _R_CHECK_BROWSER_NONINTERACTIVE_ to a
    true value.  This is enabled by R CMD check --as-cran to detect
    the use of leftover browser() statements in the package.
  * The use of sprintf and vsprintf from C/C++ has been deprecated in
    macOS 13 and is a known security risk.  R CMD check now reports
    (on all platforms) if their use is found in compiled code:
    replace by snprintf or vsnprintf respectively. [*NB:* whether
    such calls get compiled into the package is platform-dependent.]
  * Where recorded at installation, R CMD check reports the C and
    Fortran compilers used to build R.
    It reports the OS in use (if known, as given by osVersion) as
    well as that R was built for.
    It notes if a C++ standard was specified which is older than the
    current default: many packages have used C++11 to mean 'not
    C++98' - as C++11 is the minimum supported since R 4.0.0, that
    specification can probably be removed.
  * R CMD INSTALL reports the compilers (and on macOS, the SDK) used,
    and this is copied to the output of R CMD check.
    Where a C++ standard is specified, it is reported.
  * R CMD check's 'checking compilation flags in Makevars' has been
    relaxed to accept the use of flags such as -std=f2008 in
    PKG_FFLAGS.
  * tools::buildVignettes() has a new argument skip, which is used by
    R CMD check to skip (and note) vignettes with unavailable
    \VignetteDepends (PR#18318).
  * New generic .AtNames() added to enable class-specific completions
    after @. The formerly internal function findMatches() is now
    exported, mainly for use in methods for .DollarNames() and
    .AtNames().
  DEPRECATED AND DEFUNCT:
  * default.stringsAsFactors() is defunct.
  * Calling as.data.frame.&lt;class&gt;() directly (for 12 atomic classes)
    is going to be formally deprecated, currently activated by
    setting the environment variable
    _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ to non-empty, which also
    happens in R CMD check --as-cran.
  BUG FIXES:
  * Hashed environments with sizes less than 5 can now grow.
    (Reported to R-devel by Duncan Garmonsway.)
  * as.character(&lt;Rd&gt;, deparse = TRUE) failed to re-escape curly
    braces in LaTeX-like text.  (Reported by Hadley Wickham in
    PR#18324.)
  * library() now passes its lib.loc argument when requiring Depends
    packages; reported (with fix) in PR#18331 by Mikael Jagan.
  * R CMD Stangle: improved message about 'Output' files.
  * head(x, n) and tail(x, n) now signal an error if n is not
    numeric, instead of incidentally "working" sometimes returning
    all of x.  Reported and discussed by Colin Fay, in PR#18357.
  * The "lm" method for summary() now gives the correct F-statistic
    when the model contains an offset.  Reported in PR#18008.
  * C() and `contrasts&lt;-`() now preserve factor level names when
    given a function object (as opposed a function name which did
    preserve names). Reported in PR#17616.
  * c(a = 1, 2)[[]] no longer matches 2 but rather signals a
    _classed_ error.  Reported and analysed by Davis Vaughan in
    PR#18367, a duplicate of PR#18004, by Jan Meis et al.  For
    consistency, NULL[[]] is also erroneous now.  x[[]] &lt;- v gives an
    error of the same class "MissingSubscriptError".
  * The relist() function of utils now supports NULL elements in the
    skeleton (PR#15854).
  * ordered(levels = *) (missing x) now works analogously to factor(,
    ordered=TRUE); reported (with fix) by Achim Zeileis in PR#18389.
  * User-defined Rd macro definitions can now span multiple lines,
    thanks to a patch from Duncan Murdoch. Previously, the Rd parser
    silently ignored everything after the first line.
  * Plain-text help (tools::Rd2txt()) now preserves an initial blank
    line for text following description list items.
  * tools::Rd2HTML() and tools::Rd2latex() no longer split \arguments
    and \value lists at Rd comments.
  * tools::Rd2latex() now correctly handles optional text outside
    \items of argument lists as well as bracketed text at the
    beginning of sections, e.g., \value{[NULL]}.
  * as.character(&lt;POSIXt&gt;) now behaves more in line with the methods
    for atomic vectors such as numbers, and is no longer influenced
    by options().  Ditto for as.character(&lt;Date&gt;).  The
    as.character() method gets arguments digits and OutDec with
    defaults _not_ depending on options().  Use of as.character(*,
    format = .) now warns.
  * Similarly, the as.character.hexmode() and *.octmode() methods
    also behave as good citizen methods and back compatibility option
    keepStr = TRUE.
  * The as.POSIXlt(&lt;POSIXlt&gt;) and as.POSIXct(&lt;POSIXct&gt;) default
    methods now do obey their tz argument, also in this case.
  * as.POSIXlt(&lt;Date&gt;) now does apply a tz (time zone) argument, as
    does as.POSIXct(); partly suggested by Roland Fuss on the R-devel
    mailing list.
  * as.Date.POSIXlt(x) now also works when the list components are of
    unequal length, aka "partially filled" or "ragged".
  * expand.model.frame() looked up variables in the wrong environment
    when applied to models fitted without data.  Reported in
    PR#18414.
  * time() now (also) uses the ts.eps = getOption("ts.eps") argument
    and thus by default rounds values very close to the start (or
    end) of a year.  Based on a proposal by Andre"i V. Kostyrka on
    R-help.
  * Printing of a factanal() result with just one factor and sort =
    TRUE now works regularly, fixing PR#17863 by Timothy Bates,
    thanks to the 'R Contributors' working group.
  * Printing 0-length objects of class "factor", "roman", "hexmode",
    "octmode", "person", "bibentry", or "citation" now prints
    something better, one of which fixes PR#18422, reported by
    Benjamin Feakins.
  * Sys.timezone() queries timedatectl only if systemd is loaded;
    addressing a report by Jan Gorecki in PR#17421.
  * The formula method of cor.test() had scoping problems when
    environment(formula) was not the calling environment; reported
    with a patch proposal by Mao Kobayashi in PR#18439.
  * attach() of an environment with active bindings now preserves the
    active bindings.  Reported by Kevin Ushey in PR#18425.
  * BLAS detection now works also with system-provided libraries not
    available as regular files.  This fixes detection of the
    Accelerate framework on macOS since Big Sur.  Reported by David
    Novgorodsky.
  * download.file() gives a helpful error message in case of an
    invalid download.file.method option, thanks to Colin Fay's report
    in PR#18455.
  * Sporadic crashes of Rterm when using completion have been fixed.
  * Rprof() is now more reliable.  A livelock in thread
    initialization with too short sampling interval has been fixed on
    macOS.  A deadlock in using the C runtime has been fixed on
    Windows.  A potential deadlock has been prevented on Unix.
  * Cursor placement in Rgui now works even after a fixed-width font
    is selected.
  * Mandatory options (options()) are now set on startup so that
    saving and restoring them always works (PR#18372).
  * Package installation, R CMD INSTALL or install.packages(*), now
    parses each of the &lt;pkg&gt;/R/*.R files individually instead of
    first concatenating and then parse()ing the large resulting file.
    This allows parser or syntax errors to be diagnosed with correct
    file names and line numbers, thanks to Simon Dedman's report and
    Bill Dunlap's patch in PR#17859.
    This _does_ require syntactically self contained R source files
    now, fixing another inadvertent bug.
  * predict.lm(&lt;model with offset&gt;) now finds the offset in the
    correct environment, thanks to Andr'e Gillibert's report and patch
    in PR#18456.
  * getInitial(&lt;formula&gt;) now finds the selfStart model in the
    correct environment.  (Reported by Ivan Krylov in PR#18368.)
  * Fix for possible segfault when using recently-added graphics
    features, such as gradients, clipping paths, masks, and groups
    with pdf(file=NULL).
  * class(m) &lt;- class(m) no longer changes a matrix m by adding a
    class _attribute_.
  * packageDate(pkg) now only warns once if there is no pkg.
  * When ts() creates a multivariate time series, "mts", it also
    inherits from "array" now, and is.mts() is documented _and_
    stricter.
  * Rd2txt() now preserves line breaks of \verb Rd content and from
    duplicated \cr.  The former also fixes the rendering of verbatim
    output from Rd \Sexpr in plain-text help.
  * uniroot(f, interval) should no longer wrongly converge _outside_
    the interval in some cases where abs(f(x)) == Inf for an x at the
    interval boundary, thanks to posts by Ben Bolker and Serguei
    Sokol on R-devel.
  * Vectorized alpha handling in palette functions such as in gray(),
    rainbow(), or hcl.colors() works correctly now, thanks to Achim
    Zeileis' report and patch in PR#18476.
  * Formatting and print()ing of bibentry objects has dropped the
    deprecated citation.bibtex.max argument, such that the bibtex
    argument's default for print.bibentry() depends directly on the
    citation.bibtex.max option, whereas in format.bibentry() the
    option no longer applies.
  * Attempting to use a character string naming a foreign function
    entry point in a foreign function call in a package will now
    signal an error if the packages has called R_forceSymbols to
    specify that symbols must be used.
  * An error in table() could permanently set options(warn=2)
    promoting all subsequent warnings to errors.
  * The sigma() function gave misleading results for binary GLMs.  A
    new method for objects of class "glm" returns the square root of
    the estimate of the dispersion parameter using the same
    calculation as summary.glm().
  * bs() and ns() in the (typical) case of automatic knot
    construction, when some of the supposedly inner knots coincide
    with boundary knots, now moves them inside (with a warning),
    building on PR#18442 by Ben Bolker.
  * R CMD on Windows now skips the site profile with --no-site-file
    and --vanilla even when R_PROFILE is set (PR#18512, from Kevin
    Ushey).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1686916800">- CHANGES IN R 4.3.1:
  C-LEVEL FACILITIES:
  * The C-level API version of R's integrate(), Rdqags() in Applic.h,
    now returns the correct number of integrand evaluations neval,
    fixing PR#18515 reported and diagnosed by Stephen Wade.
  * The C prototypes for LAPACK calls dspgv and dtptrs in
    R_exts/Lapack.h had one too many and one too few character length
    arguments - but this has not caused any known issues. To get the
    corrected prototypes, include
    [#]include &lt;Rconfig.h&gt; // for PR18534fixed
    [#]ifdef PR18534fixed
    [#] define usePR18534fix 1
    [#]endif
    [#]include &lt;R_exts/Lapack.h&gt;
    in your C/C++ code (PR#18534).
  INSTALLATION:
  * Many of the checks of esoteric Internet operations and those
    using unreliable external sites have been moved to a new target
    that is not run by default and primarily intended for the core
    developers.  To run them use
    cd tests; make test-Internet-dev
  BUG FIXES:
  * .S3methods(), typically called from methods(), again marks
    methods from package base as visible.
    Also, the visibility of non-base methods is again determined by
    the method's presence in search().
  * tools::Rdiff() is now more robust against invalid strings, fixing
    installation tests on Windows without Rtools installed
    (PR#18530).
  * Fix (new) bug in hcl.colors(2, *), by Achim Zeileis (PR#18523).
  * head(., &lt;illegal&gt;) and tail(..) now produce more useful "Error in
    ...." error messages, fixing PR#18362.
  * Package code syntax on Windows is checked in UTF-8 when UTF-8 is
    the native encoding.
  * na.contiguous(x) now also returns the first run, when it is at
    the beginning and there is a later one of the same length;
    reported to R-devel, including a fix, by Georgi Boshnakov.
    Further, by default, it modifies only an existing attr(*,"tsp")
    but otherwise no longer sets one.
  * chol(&lt;not pos.def&gt;, pivot = &lt;T|F&gt;) now gives a correct error or
    warning message (depending on pivot), thanks to Mikael Jagan's
    (PR#18541).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1699012800">- CHANGES IN R 4.3.2:
  NEW FEATURES:
  * The default initialization of the "repos" option from the
    repositories file at startup can be skipped by setting
    environment variable R_REPOSITORIES to NULL such that
    getOption("repos") is empty if not set elsewhere.
  * qr.X() is now an implicit S4 generic in methods.
  * iconv(to = "ASCII//TRANSLIT") is emulated using substitution on
    platforms which do not support it (notably Alpine Linux).  This
    should give a human-readable conversion in ASCII on all platforms
    (rather than NA_character_).
  * trans3d() gains options continuous and verbose addressing the
    problem of possible "wrap around" when projecting too long
    curves, as reported by Achim Zeileis in PR#18537.
  * tools::showNonASCII() has been rewritten to work better on macOS
    14 (which has a changed implementation of iconv()).
  * tiff(type = "quartz") (the default on macOS) now warns if
    compression is specified: it continues to be ignored.
  INSTALLATION on a UNIX-ALIKE:
  * There is some support for building with Intel's LLVM-based
    compilers on x86_64 Linux, such as (C) icx, (C++) ipcx and
    (Fortran) ifx from oneAPI 2023.x.y.
  * There is support for using LLVM's flang-new as the Fortran
    compiler from LLVM 16.0.x (preferably 17.0.0 or later).
  UTILITIES:
  * R CMD check reports the use of the Fortran 90 random number
    generator RANDOM_NUMBER() and the subroutines to initialize it.
    'Writing R Extensions' has example code to use R's RNGs from
    Fortran.
  BUG FIXES:
  * substr(x, n, L) &lt;- cc now works (more) correctly for multibyte
    UTF-8 strings x when L &gt; nchar(x), thanks to a report and patch
    by 'Architect 95'.
  * contrib.url(character()) now returns 0-length character() as
    documented, which also avoids spurious warnings from
    available.packages() et al. in the edge case of an empty vector
    of repository URLs.
  * readChar(., 4e8) no longer fails, thanks to Kodi Arfer's report
    (PR#18557).
  * lapply(&lt;list&gt;, as.data.frame) no longer warns falsely for some
    base vector components.
  * Communication between parent and child processes in the multicore
    part of parallel could fail on platforms that do not support an
    arbitrarily large payload in system functions read()/write() on
    pipes (seen on macOS where a restriction to INT_MAX bytes is
    documented, without doing a partial read unlike Linux). The
    payload is now split into 1Gb chunks to avoid that problem.
    (PR#18571)
  * qqplot(x,y, conf.level=.) gives better confidence bounds when
    length(x) != length(y), thanks to Alexander Ploner's report and
    patch proposal (PR#18557).
  * norm(&lt;0-length&gt;, "2") now gives zero instead of an error, as all
    the other norm types, thanks to Mikael Jagan's PR#18542.
  * Build-stage Rd macros \packageAuthor and \packageMaintainer now
    process Authors@R, fixing NA results when the package DESCRIPTION
    omits Author and Maintainer fields.
  * Formatting and printing complex numbers could give things like
    0.1683-0i because of rounding error: -0i is now replaced by +0i.
  * postscript() refused to accept a title comment containing the
    letter "W" (PR#18599).
  * isoreg(c(1,Inf)) signals an error instead of segfaulting, fixing
    PR#18603.
  * tiff(type = "Xlib") was only outputting the last page of
    multi-page plots.
  * tools::latexToUtf8() again knows about \~{n} and other letters
    with tilde, fixing a regression in R 4.3.0, and about \^{i} as an
    alternative to \^{\i} (similarly with other accents).
    Furthermore, LaTeX codes for accented I letters are now correctly
    converted, also fixing related mistakes in
    tools::encoded_text_to_latex().
  * tar(*, tar = "internal") no longer creates out-of-spec tar files
    in the very rare case of user or group names longer than 32
    bytes, fixing PR#17871 with thanks to Ivan Krylov.
  * When using the "internal" timezone datetime code, adding a
    fraction of a second no longer adds one second, fixing PR#16856
    from a patch by Ivan Krylov.
  * tools::checkRd() no longer produces spurious notes about
    "unnecessary braces" from multi-line Rd results of \Sexpr macros.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1709208000">- CHANGES IN R 4.3.3:
  NEW FEATURES:
  * iconv() now fixes up variant encoding names such as "utf8"
    case-insensitively.
  DEPRECATED AND DEFUNCT:
  * The legacy encoding = "MacRoman" is deprecated in pdf() and
    postscript(): support was incomplete in earlier versions of R.
  BUG FIXES:
  * Arguments are now properly forwarded to methods on S4 generics
    with ... in the middle of their formal arguments. This was broken
    for the case when a method introduced an argument but did not
    include ... in its own formals. Thanks to Herv'e Pag`es for the
    report PR#18538.
  * Some invalid file arguments to pictex(), postscript() and xfig()
    opened a file called NA rather than throw an error.  These
    included postscript(NULL) (which some people expected to work
    like pdf(NULL)).
  * Passing filename = NA to svg(), cairo_pdf(), cairo_ps() or the
    Cairo-based bitmap devices opened a file called NA: it now throws
    an error.
  * quartz(file = NA) opened a file called NA, including when used as
    a Quartz-based bitmap device.  It now gives an error.
  * rank(&lt;long vector&gt;) now works, fixing PR#18617, thanks to Ilia
    Kats.
  * seq.int() did not adequately check its length.out argument.
  * match(&lt;POSIXct&gt;, .) is correct again for differing time zones,
    ditto for "POSIXlt", fixing PR#18618 reported by Bastian Klein.
  * drop.terms(*, dropx = &lt;0-length&gt;) now works, fixing PR#18563 as
    proposed by Mikael Jagan.
  * drop.terms(*) keeps + offset(.) terms when it should, PR#18565,
    and drop.terms() no longer makes up a response, PR#18566, fixing
    both bugs thanks to Mikael Jagan.
  * getS3method("t", "test") no longer finds the t.test() function,
    fixing PR#18627.
  * pdf() and postscript() support for the documented Adobe encodings
    "Greek" and "Cyrilllic" was missing (although the corresponding
    Windows' codepages could be used).
  * Computations of glyph metric information for pdf() and
    postscript() did not take into account that transliteration could
    replace one character by two or more (only seen on macOS 14) and
    typically warned that the information was not known.
  * rank(x) no longer overflows during integer addition, when
    computing rank average for largish but not-yet long vector x,
    fixing PR#18630, thanks to Ilia Kats.
  * list.files() on Windows now returns also files with names longer
    that 260 bytes (the Windows limit is 260 characters).
    Previously, some file names particularly with 'East Asian'
    characters were omitted.
  * cov2cor(&lt;0 x 0&gt;) now works, fixing PR#18423 thanks to Mikael
    Jagan and Elin Waring.
  * cov2cor(&lt;negative diagonal&gt;) and similar now give one warning
    instead of two, with better wording, fixing PR#18424 thanks to
    Mikael Jagan.
  * tools:: startDynamicHelp() now ensures port is in proper range,
    fixing PR#18645.
  * pbeta(x, a,b) is correct now for x=0 or 1 in the boundary cases
    where a or b or both are 0, fixing PR#18672 thanks to Michael
    Fay.
  * pmatch(x, table) for large table, also called for data frame row
    selection, dfrm[nm, ], is now interruptible, fixing PR#18656.
  * predict(&lt;rank-deficient lm&gt;, newdata=*) fix computing of nbasis,
    see Russ Lenth's comment 29 in PR#16158.
  * Added a work-around for a bug in macOS 14.3.1 and higher which
    prevents R plots in the Quartz Cocoa device from updating on
    screen.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1713960000">- CHANGES IN R 4.4.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Startup banners, R --version, sessionInfo() and R CMD check no
    longer report (64-bit) as part of the platform as this is almost
    universal - the increasingly rare 32-bit platforms will still
    report (32-bit).
    On Windows, ditto for window titles.
  * is.atomic(NULL) now returns FALSE, as NULL is not an atomic
    vector.  Strict back-compatibility would replace is.atomic(foo)
    by (is.null(foo) || is.atomic(foo)) but should happen only
    sparingly.
  NEW FEATURES:
  * The confint() methods for "glm" and "nls" objects have been
    copied to the stats package.  Previously, they were stubs which
    called versions in package MASS. The MASS namespace is no longer
    loaded if you invoke (say) confint(glmfit).  Further, the "glm"
    method for profile() and the plot() and pairs() methods for class
    "profile" have been copied from MASS to stats.  (profile.nls()
    and plot.profile.nls() were already in stats.)
  * The confint() and profile methods for "glm" objects have gained a
    possibility to do profiling based on the Rao Score statistic in
    addition to the default Likelihood Ratio. This is controlled by a
    new test = argument.
  * The pairs() method for "profile" objects has been extended with a
    which = argument to allow plotting only a subset of the
    parameters.
  * The "glm" method for anova() computes test statistics and
    p-values by default, using a chi-squared test or an F test
    depending on whether the dispersion is fixed or free.  Test
    statistics can be suppressed by giving argument test a false
    logical value.
  * In setRepositories() the repositories can be set using their
    names via name = instead of index ind =.
  * methods() and .S3methods() gain a all.names option for the (rare)
    case where functions starting with a . should be included.
  * Serializations can now be interrupted (e.g., by Ctrl-C on a
    Unix-alike) if they take too long, e.g., from save.image(),
    thanks to suggestions by Ivan Krylov and others on R-devel.
  * New startup option --max-connections to set the maximum number of
    simultaneous connections for the session.  Defaults to 128 as
    before: allowed values up to 4096 (but resource limits may in
    practice restrict to smaller values).
  * R on Windows (since Windows 10 2004) now uses the new Segment
    Heap allocator. This may improve performance of some
    memory-intensive applications.
  * When R packages are built, typically by R CMD build &lt;pkg&gt;, the
    new --user=&lt;build_user&gt; option overrides the (internally
    determined) user name, currently Sys.info()["user"] or LOGNAME.
    This is a (modified) fulfillment of Will Landau's suggestion in
    PR#17530.
  * tools::testInstalledBasic() gets new optional arguments outDir
    and testSrcdir, e.g., allowing to use it in a &lt;builddir&gt; !=
    &lt;srcdir&gt; setup, and in standard "binary" Windows installation
  * if* a source tests/ folder is present.
  * range(&lt;DT_with_Inf&gt;, finite = TRUE) now work for objects of class
    "Date", "POSIXct", and "POSIXlt" with infinite entries,
    analogously to range.default(), as proposed by Davis Vaughan on
    R-devel.  Other range()-methods can make use of new function
    .rangeNum().
  * New .internalGenerics object complementing .S3PrimitiveGenerics,
    for documentation and low-level book-keeping.
  * grid() now invisibly returns the x- and y- coordinates at which
    the grid-lines were drawn.
  * norm(., type) now also works for complex matrices.
  * kappa(., exact = TRUE, norm = *) now works for all norms and also
    for complex matrices.  In symmetric / triangular cases, the new
    argument uplo = "U" | "L" allows the upper or lower triangular
    part to be specified.
  * memDecompress(type = "unknown") recognizes compression in the
    default 'zlib' format as used by memCompress(type = "gzip").
  * memCompress() and memDecompress() will use the libdeflate library
    (&lt;https://github.com/ebiggers/libdeflate&gt;) if installed.  This
    uses the same type of compression for type = "gzip" but is 1.5-2x
    faster than the system libz library on some common platforms: the
    speed-up may depend on the library version.
  * diff() for objects of class "Date", "POSIXct", and "POSIXlt"
    accepts a units argument passed via ....
  * Dynamic help now does a much better job of rendering package
    DESCRIPTION metadata.
  * Rprof() gains an event argument and support for elapsed (real)
    time profiling on Unix (PR#18076).
  * filled.contour() gains a key.border argument.
  * tools::update_pkg_po() gets arguments pot_make and mo_make for
    _not_ re-making the corresponding files, and additionally a
    verbose argument.
  * Hexadecimal string colour specifications are now accepted in
    short form, so, for example, we can use "#123", which is
    equivalent to "#112233".
    Thanks to MikeFC for the original idea and Ella Kaye, Malcolm
    Barrett, George Stagg, and Hanne Oberman for the patch.
  * Plain-text help shows \var markup by angle brackets.
  * The new experimental primitive function declare() is intended to
    eventually allow information about R code to be communicated to
    the interpreter, compiler, and code analysis tools. The syntax
    for declarations is still being developed.
  * Functions psmirnov(), qsmirnov() and rsmirnov() in package stats
    have had argument two.sided renamed to alternative, to take into
    account that the permutation distributions of the one-sided
    statistics can be different in the case of ties.  Consequence of
    PR#18582.
  * sort() is now an implicit S4 generic in methods.
  * Formatting and printing, format(z), print(z), of complex vectors
    z no longer zap relatively small real or imaginary parts to zero,
    fixing PR#16752.  This is an API change, as it was documented
    previously to round real and imaginary parts together on purpose,
    producing nicer looking output.  As mentioned, e.g. in the PR,
    this change is compatible with many other "R-like" programming
    environments.
    We have simplified the internal code and now basically format the
    real and imaginary parts independently of each other.
  * New experimental functions Tailcall() and Exec() to support
    writing stack-space-efficient recursive functions.
  * Where characters are attempted to be plotted by pdf(),
    postscript() and xfig() which are not in the selected 8-bit
    character set (most often Latin-1) and the R session is using a
    UTF-8 locale, the warning messages will show the UTF-8 character
    rather than its bytes and one dot will be substituted per
    character rather than per byte.  (Platforms whose iconv() does
    transliteration silently plot the transliteration.)
    In a UTF-8 locale some transliterations are now done with a
    warning (e.g., dashes and Unicode minus to hyphen, ligatures are
    expanded, permille (‰) is replaced by o/oo), although the OS may
    have got there first.  These are warnings as they will continue
    to be replaced by dots in earlier versions of R.
  * The matrix multiplication functions crossprod() and tcrossprod()
    are now also primitive and S3 generic, as %*% had become in R
    4.3.0.
  * source() and example() have a new optional argument catch.aborts
    which allows continued evaluation of the R code after an error.
  * The non-Quartz tiff() devices allow additional types of
    compression if supported by the platform's libtiff library.
  * The list of base and recommended package names is now provided by
    tools::standard_package_names().
  * cairo_pdf() and cairo_ps() default to onefile = TRUE to closer
    match pdf() and postscript().
  * New option catch.script.errors provides a documented way to catch
    errors and then continue in non-interactive use.
  * L %||% R newly in base is an expressive idiom for the phrases
    if(!is.null(L)) L else R or if(is.null(L)) R else L.
  * The return value from warnings() now always inherits from
    "warnings" as documented, now also in the case of no warnings
    where it previously returned NULL.
  * as.complex("1i") now returns 0 + 1i instead of NA with a warning.
  * z &lt;- c(NA, 1i) now keeps the imaginary part Im(z[1]) == 0, no
    longer coercing to NA_complex_.  Similarly, cumsum(z) correctly
    sums real and imaginary parts separately, i.e., without
    "crosstalk" in case of NAs.
  * On Alpine Linux iconv() now maps "latin2", "latin-2", "latin9"
    and "latin-9" to encoding names the OS knows about
    (case-insensitively).
  * iconv(sub = "Unicode") now always zero-pads to four (hex) digits,
    rather than to 4 or 8.  (This seems to have become the convention
    once Unicode restricted the number of Unicode points to 2^21 - 1
    and so will never need more than 6 digits.)
  * NCOL(NULL) now returns 0 instead of 1, for consistency with
    cbind().
  * The information for the Euro glyph missing from the Adobe .afm
    files for the Courier, Helvetica and Times families has been
    copied from their URW equivalents - this will improve vertical
    centring in the pdf() and postscript() devices.
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.12.0.  The changes are almost entirely cosmetic.
  * The included LAPACK sources have been updated to version 3.12.0
    and some further double-complex routines added.
  * There are new font families for the 2014--5 URW 2.0 fonts (see
    ?pdf) which are included in recent versions of Ghostscript.
    These have font widths for most Greek glyphs and a few others
    which were missing from the original versions (whose font
    families remain available for reproducibility, although
    Ghostscript-based viewers will render using the 2.0 versions).
  * Improve the large-n efficiency of as.matrix(&lt;dist&gt;), thanks an R
    contributors effort, notably by Tim Taylor and Heather Turner,
    see PR#18660.
  * The default and numeric methods of all.equal() get a check.class
    option.
  * zapsmall() gets new optional arguments, function mFUN and min.d,
    for extra flexibility; fulfills a wish in PR#18199.  Also, it is
    now an implicit S4 generic in package methods.
  * The Rd filter for aspell() gains an ignore argument.
  * New generic function sort_by(), primarily useful for the
    data.frame method which can be used to sort rows of a data frame
    by one or more columns.
  * The icence headers for the RPC code in src/extra/xdr have been
    updated to use the GPL-compatible licence published by Oracle
    America in 2010.
  * New function pkg2HTML() in tools to create single-page HTML
    reference manuals for R packages.
  * The byte code evaluator now uses less C stack space for recursive
    calls to byte-compiled functions. It also makes more of an effort
    to avoid allocations for scalar return values.
  * New completion option backtick (disabled by default) allows
    non-syntactic completions to be wrapped in backquotes. This is
    currently only useful for Jupyter notebooks via the IRkernel
    package, and may cause problems for other backends.
  INSTALLATION:
  * The parser has been updated to work with bison 3.8.2, which is
    now used for the pre-generated parsers in gram.c, file.c, and
    gramRd.c. A few parser error messages have changed, which may
    affect code that relies on exact messages.
  INSTALLATION on a UNIX-ALIKE:
  * System valgrind headers are now required to use configure option
  - -with-valgrind-instrumentation with value 1 or 2.
  * configure will warn if it encounters a 32-bit build, as that is
    nowadays almost untested.
  * Environment variable R_SYSTEM_ABI is no longer used and so no
    longer recorded in etc/Renviron (it was not on Windows and was
    only ever used when preparing package tools).
  * If the libdeflate library and headers are available, libdeflate
    rather than libz is used to (de)compress R objects in lazy-load
    databases.  Typically tasks spend up to 5% of their time on such
    operations, although creating lazy-data databases is one of the
    exceptions.
    This can be suppressed if the library is available by the
    configure option --without-libdeflate-compression.
  * configure option --enable-lto=check has not worked reliably since
    2019 and has been removed.
  * The minimum autoconf requirement for a maintainer build has been
    increased to autoconf 2.71.
    It is intended to increase this to 2.72 for R 4.5.0: the
    distributed configure file was generated using 2.72.
  * The minimum version requirement for an external LAPACK has been
    reduced to 3.9.0.
  * No default C++ compiler is set if no C++17 compiler is detected:
    there is no longer an automatic fallback to C++14 or C++11.
    Compilers from the last five years should have sufficient
    support: for others macros CXX and CXXSTD can be set in file
    config.site to provide a fallback if needed.
    The Objective-C++ compiler now by default uses the standard
    selected by R for C++ (currently C++17) rather than the default
    standard for the C++ compiler (which on macOS is still C++98).
  INSTALLATION on macOS:
  * A new configure option --with-newAccelerate makes use of Apple's
    'new' BLAS / LAPACK interfaces in their Accelerate framework.
    Those interfaces are only available in macOS 13.3 or later, and
    building requires SDK 13.3 or later (from the Command Line Tools
    or Xcode 14.3 or later).
    By default the option uses new Accelerate for BLAS calls: to also
    use it for LAPACK use option --with-newAccelerate=lapack.  The
    later interfaces provide LAPACK 3.9.1 rather than 3.2.1: 3.9.1 is
    from 2021-04 and does not include the improved algorithms
    introduced in LAPACK 3.10.0 (including for BLAS calls).
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools44, an update of the Rtools43 toolchain.  It is
    based on GCC 13 and newer versions of MinGW-W64, binutils and
    libraries (targeting 64-bit Intel CPUs).  R-devel can no longer
    be built using Rtools43 without changes.
  * Rtools44 has experimental support for 64-bit ARM (aarch64) CPUs
    _via_ the LLVM 17 toolchain using lld, clang/flang-new and
    libc++.
  UTILITIES:
  * R CMD check notes when S4-style exports are used without
    declaring a strong dependence on package methods.
  * tools::checkRd() (used by R CMD check) detects more problems with
    \Sexpr-based dynamic content, including bad nesting of \Sexprs
    and invalid arguments.
  * tools::checkRd() now reports Rd titles and section names ending
    in a period; this is ignored by R CMD check unless environment
    variable _R_CHECK_RD_CHECKRD_MINLEVEL_ is set to -5 or smaller.
  * R CMD check now notes Rd files without an \alias, as long
    documented in 'Writing R Extensions' §1.3.1.  The check for a
    missing \description has been moved from tools::checkRd() to
    tools::checkRdContents().
  * R CMD check now visits inst/NEWS.Rd and OS-specific man
    subdirectories when checking Rd files.
  * tools::checkDocFiles() and tools::checkRdContents() now also
    check internal Rd files by default, but "specially" (ignoring
    missing documentation of arguments).
  * R CMD Rdiff gets option --useEx.
  * R CMD check now warns on non-portable uses of Fortran KIND such
    as INTEGER(KIND=4) and REAL(KIND=8).
    To see the failing lines set environment variable
    _R_CHECK_FORTRAN_KIND_DETAILS_ to a true value.
  * When checking Rd files, R CMD check now notes some of the "lost
    braces" that tools::checkRd() finds.  Typical problems are Rd
    macros missing the initial backslash (e.g., code{...}), in-text
    set notation (e.g., {1, 2}, where the braces need escaping), and
    \itemize lists with \describe-style entries of the form
    \item{label}{description}.
  * R CMD INSTALL (and hence check) will compile C++ code with
  - DR_NO_REMAP if environment variable _R_CXX_USE_NO_REMAP_ is set
    to a true value.  It is planned that this will in future become
    the default for compiling C++.
  * The new built-in Rd macro \dontdiff{} can be used to mark example
    code whose output should be ignored when comparing check output
    to reference output (tests/Examples/&lt;pkg&gt;-Ex.Rout.save).  The
    \dontdiff tag, like \donttest, is _not_ shown on the rendered
    help page, so provides a clean alternative to ##
    IGNORE_RDIFF_(BEGIN|END) comments.
  * R CMD build when there is no NAMESPACE, now uses the recommended
    exportPattern("^[^.]"), instead of exporting everything.
  * R CMD check now warns about non-ASCII characters in the NAMESPACE
    file (in addition to R files). Such packages are not portable and
    may fail to install on some platforms.
  C-LEVEL FACILITIES:
  * Headers R_ext/Applic.h and R-ext/Linpack.h used to include
    R_ext/BLAS.h although this was undocumented and unneeded by their
    documented entry points.  They no longer do so.
  * New function R_missing(), factored out from do_missing(), used to
    fix PR#18579.
  * SEXP type S4SXP has been renamed to OBJSXP to support
    experimenting with alternative object systems.  The S4SXP value
    can still be used in C code but is now deprecated.  Based on
    contributions from the R Consortium's Object-Oriented Programming
    Working Group.
  * New function pow1p(x,y) for accurate (1+x)^y.
  * mkCharLenCE was incorrectly documented to take a size_t length
    but was implemented with int (and character strings in R are
    limited to 2^31 - 1 bytes).
  DEPRECATED AND DEFUNCT:
  * data() no longer handles zipped data from long-defunct (since R
    2.13.0) --use-zip-data installations.
  * The legacy graphics devices pictex() and xfig() are now
    deprecated.  They do not support recent graphics enhancements and
    their font handling is rudimentary. The intention is to retain
    them for historical interest as long as they remain somewhat
    functional.
  * Support for encoding = "MacRoman" has been removed from the pdf()
    and postscript() devices - this was a legacy encoding supporting
    classic macOS up to 2001 and no longer has universal libiconv
    support.
  * is.R() is deprecated as no other S dialect is known to be in use
    (and this could only identify historical dialects, not future
    ones).
    Further information on calls can be obtained by setting the
    environment variable _R_DEPRECATED_IS_R_ to error which turns the
    deprecation warning into an error and so by default gives a
    traceback.  (This is done by R CMD check --as-cran.)
  * UseMethod() no longer forwards local variables assigned in the
    generic function into method call environments before evaluating
    the method body. This makes method calls behave more like
    standard function calls and makes method code easier to analyze
    correctly.
  * The twelve as.data.frame.&lt;class&gt;() methods which were deprecated
    only via _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ and in R CMD
    check --as-cran are formally deprecated now in favour of calling
    as.data.frame() or as.data.frame.vector().  The deprecation
    "check" now works also when as.data.frame() is S4 generic thanks
    to Ivan Krylov.
  * The default method for the directional comparison operators &lt;, &gt;,
    &lt;=, and &gt;= now signals an error when one of the operands is a
    language object, i.e. a symbol or a call.
  * For terms.formula(), deprecate abb and neg.out arguments
    _formally_ in addition to just documenting it.
  BUG FIXES:
  * The methods package is more robust to not being attached to the
    search path.  More work needs to be done.
  * pairwise.t.test() misbehaved when subgroups had 0 DF for
    variance, even with pool.sd = TRUE.  (PR#18594 by Jack Berry).
  * Probability distribution functions [dpq]&lt;distrib&gt;(x, *), but also
    bessel[IKJY](x, .) now consistently preserve attributes(x) when
    length(x) == 0, e.g., for a 2 x 0 matrix, thanks to Karolis
    Koncevičius' report PR#18509.
  * Group "Summary" computations such as sum(1:3, 4, na.rm = 5, NA,
    7, na.rm = LL) now give an error instead of either 17 or NN for
    LL true or false, as proposed by Ivan Krylov on the R-devel
    mailing list.  (This also means it is now an error to specify
    na.rm more than once.)
  * as.complex(x) now returns complex(real = x, imaginary = 0) for
    _all_ numerical and logical x, notably also for NA or
    NA_integer_.
  * Directories are now omitted by file.copy(, recursive = FALSE) and
    in file.append() (PR#17337).
  * gsub() and sub() are now more robust to integer overflow when
    reporting errors caused by too large input strings (PR#18346).
  * Top-level handlers are now more robust to attempts to remove a
    handler whilst handlers are running (PR#18508).
  * The handling of Alt+F4 in dialogs created on Windows using
    GraphApp has been fixed (PR#13870).
  * density() more consistently computes grid values for the
    FFT-based convolution, following Robert Schlicht's analysis and
    proposal in PR#18337, correcting density values typically by a
    factor of about 0.999.  Argument old.coords = TRUE provides back
    compatibility.
  * palette.colors() gains a name argument that defaults to FALSE
    controlling whether the vector of colours that is returned has
    names (where possible).  PR#18529.
  * tools::xgettext() no longer extracts the (non-translatable) class
    names from warningCondition and errorCondition calls.
  * S3method(&lt;gen&gt;, &lt;class&gt;, &lt;func&gt;) in the NAMESPACE file now works
    (again) when &lt;func&gt; is visible from the namespace, e.g.,
    imported, or in base.
  * getParseData(f) now also works for a function defined in the
    first of several &lt;pkg&gt;/R/*.R source files, thanks to Kirill
    Müller's report and Duncan Murdoch's patch in PR#16756.
  * Rd \Sexpr macros with nested #ifdef conditionals were not
    processed.
  * A non-blocking connection with non-default encoding (such as a
    socket) now correctly returns from readLines() after new data has
    arrived also when its EOF had been reached previously.  Thanks to
    Peter Meilstrup's report on R-devel and Ivan Krylov's report and
    patch proposal in PR#18555.
  * tools::checkRdContents() failed to detect empty argument
    descriptions when they spanned multiple lines, including those
    generated by prompt().  These cases are now noted by R CMD check.
  * Plain-text help no longer outputs spurious colons in the
    arguments list (for multi-line \item labels in the Rd source).
  * kappa() and rcond() work correctly in more cases; kappa(., norm =
    "2") now warns that it computes the 1-norm with (default) exact =
    FALSE; prompted by Mikael Jagan's quite comprehensive PR#18543.
  * Rd skeletons generated by prompt() or promptData() now use a
    dummy title (so R CMD build works).  tools::checkRdContents() has
    been updated to detect such template leftovers, including from
    promptPackage().
  * When S4 method dispatch fails because no method was found, the
    error message now includes the signature argument names; thanks
    to Michael Chirico's proposal on the R-devel list.
  * withAutoprint({ .. }) now preserves srcrefs previously lost,
    thanks to Andrew Simmons' report plus fix in PR#18572.
  * transform.data.frame() no longer adjusts names; in particular,
    untransformed variables are kept as-is, including those with
    syntactically invalid names (PR#17890).
  * The keep.source option for Rd \Sexpr blocks is no longer ignored.
  * The formula methods for t.test() and wilcox.test() now catch when
    paired is passed, addressing PR#14359; use Pair(x1, x2) ~ 1 for a
    paired test.
  * The level reported in the browser prompt was often too large. It
    now shows the number of browser contexts on the stack.
  * For cbind() and rbind(), the optional deparse.level argument is
    now properly passed to methods, thanks to Mikael Jagan's PR#18579
    and comments there.
  * Some error and warning messages for large ('long vector')
    matrix(v, nr, nc) and dim(m) &lt;- d are now correct about sizes,
    using long long formatting, fixing PR#18612 (and more) reported
    by Mikael Jagan.
  * readChar(useBytes = TRUE) now terminates strings even when the
    underlying connection uses extra spaces in the input buffer.
    This fixes problems with extra garbage seen with gzip
    connections, PR#18605.
  * Named capture in PCRE regular expressions now works also with
    more than 127 named groups (PR#18588).
  * Datetime functions are now robust against long jumps when dealing
    with internal time zone changes.  This avoids confusing warnings
    about an invalid time zone, previously triggered by turning
    warnings into errors or handling them via tryCatch (PR#17966,
    PR#17780).
  * Datetime functions now restore even an empty TZ environment
    variable after internal time zone changes (PR#17724).  This makes
    results of datetime functions with this (typically unintentional)
    setting more predictable.
  * drop.terms(*) now drops response as by default, keep.response =
    FALSE, fixing PR#18564 thanks to Mikael Jagan.
  * dummy.coef(.) now also works for lm()-models with character
    categorical predictor variables rather than factor ones, fixing
    PR#18635 reported by Jinsong Zhao.
  * formals(f) &lt;- formals(f) now also works for a function w/o
    arguments and atomic _constant_ body(f).
  * Correct as.function(&lt;invalid list&gt;, .)'s error message.
  * removeSource() is yet more thorough in finding and removing
    "srcref" and the other source references from parsed R language
    chunks, fixing PR#18638 thanks to Andrew Simmons.
  * dgeom() is more accurate now, notably when its result is very
    small, fixing PR#18642 thanks to the proposal of Morten Welinder,
    also improving other instances where C level binom_raw(x, n, ..)
    has x == 0 or x== n.
  * warning() with options(warn = 1) has improved output for
    multi-line messages.
  * axis.Date() and axis.POSIXct() now respect the par("lab") setting
    for the number of pretty() intervals.
  * Comparisons for language objects (which are based on deparsing)
    are now more careful about using accurate deparsed results
    (PR#18676).
  * Plain-text help (Rd2txt) now correctly preserves blank lines
    following single-line \dontrun code.
  * &lt;POSIXlt&gt;[*] no longer sets wrong "balanced" attribute, fixing
    PR#18681 thanks to Mikael Jagan.
  * str(&lt;classed-call&gt;) now deparses the call as expected, fixing
    PR#18684, reported by Dave Slager.
  * In Rd examples, code following the closing brace of a \dontrun,
    \dontshow or \donttest tag on the same line is no longer skipped
    when R CMD check runs the examples.
  * as.data.frame(matrix(*, ncol=0)) now gets valid names() and
    colnames(); reported by Davis Vaughan on the R-devel list.
  * Internal Mathlib function stirlerr(n) is now almost fully
    (52-bit) accurate for all n &gt;= ~5.9 and more accurate also in the
    range 1 -- 5.9.  This entails small ("after 12th decimal")
    changes in density functions, e.g., dgamma() in _some_ regions of
    their support.  The fix was partly prompted by Morten Welinder's
    PR#18640.
  * Numbers like 9876543.2 are now considered non-integer by Mathlib
    internal R_nonint(), amending original fix of PR#15734.
  * Rd comment lines no longer cause broken paragraphs in the
    rendered PDF and plain-text help. In code blocks, pure comment
    lines (starting with %) no longer produce an empty line.
  * xtabs(Freq ~ .) now consistently defaults to na.action = na.pass,
    using na.rm = FALSE (added as an argument) when summing over Freq
    (PR#17770).
  * tools::testInstalledPackage() is no longer silent about failures
    from running examples or tests and its return code no longer
    ignores failures from checking vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1718366400">- CHANGES IN R 4.4.1:
  C-LEVEL FACILITIES:
  * Functions R_atof and R_strtod declared in header R_ext/Utils.h
    are now documented in 'Writing R Extensions' and so formally part
    of the API.
  * The non-API entry points Rf_setSVector, Rf_StringFalse,
    Rf_StringTrue and Rf_isBlankString have been added to those
    reported by R CMD check.
  * The new function Rf_allocLang is now available. This provides an
    alternative to the idiom of calling Rf_allocList followed by
    SET_TYPEOF.
  UTILITIES:
  * R CMD check now reports as warnings what gfortran calls 'Fortran
    2018 deleted features', all of which have long been marked as
    'obsolescent' and some of which were deleted in Fortran 2008 or
    earlier.  Fortran compilers are no longer required to support
    these.
  BUG FIXES:
  * as.numeric(), scan(), type.convert() and other places which use
    the internal C function R_strtod now require a _non-empty_ digit
    sequence in a decimal or binary exponent.  This aligns with the
    C/POSIX standard for strtod and with ?NumericConstants.
  * as.data.frame(m, make.names=NA) now works correctly for a matrix
    m with NA's in row names.
  * The error message from &lt;POSIXlt&gt;[["hour"]] and similar now
    mentions *[[, "hour"]], as wished for in PR#17409 and proposed by
    Michael Chirico.
  * qbinom() and potentially qpois(), qnbinom(), no longer sometimes
    fail accurate inversion (of pbinom(), etc), thanks to Christopher
    Chang's report and patch in PR#18711.
  * The internal help server on Windows can again serve requests sent
    in quick succession, fixing a regression in R 4.4.0.
  * debugcall(&lt;S3Generic&gt;()) now also works when a corresponding
    S4-generic version is in the methods cache (PR#18143).
  * Package tools' toTitleCase(ch0) now returns character(0) when ch0
    is of zero length; fixing PR#18724, reported by David Hugh Jones.
  * R CMD check is no longer broken (without a check result and no
    explanation in 00check.log) for a package which declares an
    invalid VignetteBuilder in DESCRIPTION but has no vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1730376000">- CHANGES IN R 4.4.2:
  C-LEVEL FACILITIES:
  * The S-compatibility macros F77_COM and F77_COMDECL defined in
    header R_ext/RS.h are deprecated and will be removed shortly.  We
    could find no record of their use.
  BUG FIXES:
  * Mathlib function lgammacor(x) no longer warns about underflow to
    zero for large x.
  * Text widths and heights were incorrectly reported by the Quartz
    device if the drawing context didn't exist yet (typically when
    drawing off-screen to a window that is yet to appear, see
    PR#18591).
  * The Quartz device could segfault in cases where paths with spaces
    are used in the new glyph drawing API.  Thanks to Tomek
    Gieorgijewski (PR#18758).
  * On macOS in R CRAN builds, it is again possible to read
    little-endian UTF-16 text with a BOM from a connection using
    encoding="UTF-16".  Users building R from source should avoid
    using the system libiconv in macOS 14.1 and later.
  * methods' internal .requirePackage() now re-enables primitive
    method dispatch when needed; thanks to Ivan Krylov for
    demystifying CRAN package check failures on the R-devel mailing
    list.</changelog>
</package>
<package pkgid="7b018194a62cb014c78c0840d6ce758385665ec398221c729800c37382ced73f796fe083294897a2e13560f3b16ef4b4fe95f2a71ae4787afc270b1f098594de" name="R-core-doc" arch="i586">
  <version epoch="0" ver="4.4.2" rel="51.0.2.2.sr20241103"/>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1620302400">- To get in sync with d:l:R:autoCRAN the Matrix package's split
  in -devel was reversed.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339200">- improved spec file according to comments of dimstar in
  https://build.opensuse.org/request/show/892685</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339201">- CHANGES IN R 4.1.0:
  FUTURE DIRECTIONS:
  * It is planned that the 4.1.x series will be the last to support
    32-bit Windows, with production of binary packages for that
    series continuing until early 2023.
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Data set esoph in package datasets now provides the correct
    numbers of controls; previously it had the numbers of cases added
    to these.  (Reported by Alexander Fowler in PR#17964.)
  NEW FEATURES:
  * www.omegahat.net is no longer one of the repositories known by
    default to setRepositories().  (Nowadays it only provides source
    packages and is often unavailable.)
  * Function package_dependencies() (in package tools) can now use
    different dependency types for direct and recursive dependencies.
  * The checking of the size of tarball in R CMD check --as-cran
    &lt;pkg&gt; may be tweaked via the new environment variable
    _R_CHECK_CRAN_INCOMING_TARBALL_THRESHOLD_, as suggested in
    PR#17777 by Jan Gorecki.
  * Using c() to combine a factor with other factors now gives a
    factor, an ordered factor when combining ordered factors with
    identical levels.
  * apply() gains a simplify argument to allow disabling of
    simplification of results.
  * The format() method for class "ftable" gets a new option justify.
    (Suggested by Thomas Soeiro.)
  * New ...names() utility.  (Proposed by Neal Fultz in PR#17705.)
  * type.convert() now warns when its as.is argument is not
    specified, as the help file always said it _should_.  In that
    case, the default is changed to TRUE in line with its change in
    read.table() (related to stringsAsFactor) in R 4.0.0.
  * When printing list arrays, classed objects are now shown _via_
    their format() value if this is a short enough character string,
    or by giving the first elements of their class vector and their
    length.
  * capabilities() gets new entry "Rprof" which is TRUE when R has
    been configured with the equivalent of --enable-R-profiling (as
    it is by default).  (Related to Michael Orlitzky's report
    PR#17836.)
  * str(xS4) now also shows extraneous attributes of an S4 object
    xS4.
  * Rudimentary support for vi-style tags in rtags() and R CMD rtags
    has been added.  (Based on a patch from Neal Fultz in PR#17214.)
  * checkRdContents() is now exported from tools; it and also
    checkDocFiles() have a new option chkInternal allowing to check
    Rd files marked with keyword "internal" as well.  The latter can
    be activated for R CMD check via environment variable
    _R_CHECK_RD_INTERNAL_TOO_.
  * New functions numToBits() and numToInts() extend the raw
    conversion utilities to (double precision) numeric.
  * Functions URLencode() and URLdecode() in package utils now work
    on vectors of URIs.  (Based on patch from Bob Rudis submitted
    with PR#17873.)
  * path.expand() can expand ~user on most Unix-alikes even when
    readline is not in use.  It tries harder to expand ~, for example
    should environment variable HOME be unset.
  * For HTML help (both dynamic and static), Rd file links to help
    pages in external packages are now treated as references to
    topics rather than file names, and fall back to a file link only
    if the topic is not found in the target package. The earlier rule
    which prioritized file names over topics can be restored by
    setting the environment variable _R_HELP_LINKS_TO_TOPICS_ to a
    false value.
  * c() now removes NULL arguments before dispatching to methods,
    thus simplifying the implementation of c() methods, _but_ for
    back compatibility keeps NULL when it is the first argument.
    (From a report and patch proposal by Lionel Henry in PR#17900.)
  * Vectorize()'s result function's environment no longer keeps
    unneeded objects.
  * Function ...elt() now propagates visibility consistently with
    ..n.  (Thanks to Lionel Henry's PR#17905.)
  * capture.output() no longer uses non-standard evaluation to
    evaluate its arguments.  This makes evaluation of functions like
    parent.frame() more consistent.  (Thanks to Lionel Henry's
    PR#17907.)
  * packBits(bits, type="double") now works as inverse of
    numToBits().  (Thanks to Bill Dunlap's proposal in PR#17914.)
  * curlGetHeaders() has two new arguments, timeout to specify the
    timeout for that call (overriding getOption("timeout")) and TLS
    to specify the minimum TLS protocol version to be used for
    https:// URIs (_inter alia_ providing a means to check for sites
    using deprecated TLS versions 1.0 and 1.1).
  * For nls(), an optional constant scaleOffset may be added to the
    denominator of the relative offset convergence test for cases
    where the fit of a model is expected to be exact, thanks to a
    proposal by John Nash.  nls(*, trace=TRUE) now also shows the
    convergence criterion.
  * Numeric differentiation _via_ numericDeriv() gets new optional
    arguments eps and central, the latter for taking central divided
    differences.  The latter can be activated for nls() via
    nls.control(nDcentral = TRUE).
  * nls() now passes the trace and control arguments to getInitial(),
    notably for all self-starting models, so these can also be fit in
    zero-noise situations via a scaleOffset.  For this reason, the
    initial function of a selfStart model must now have ... in its
    argument list.
  * bquote(splice = TRUE) can now splice expression vectors with
    attributes: this makes it possible to splice the result of
    parse(keep.source = TRUE).  (Report and patch provided by Lionel
    Henry in PR#17869.)
  * textConnection() gets an optional name argument.
  * get(), exists(), and get0() now signal an error if the first
    argument has length greater than 1.  Previously additional
    elements were silently ignored.  (Suggested by Antoine Fabri on
    R-devel.)
  * R now provides a shorthand notation for creating functions, e.g.
    \(x) x + 1 is parsed as function(x) x + 1.
  * R now provides a simple native forward pipe syntax |&gt;.  The
    simple form of the forward pipe inserts the left-hand side as the
    first argument in the right-hand side call.  The pipe
    implementation as a syntax transformation was motivated by
    suggestions from Jim Hester and Lionel Henry.
  * all.equal(f, g) for functions now by default also compares their
    environment(.)s, notably via new all.equal method for class
    function.  Comparison of nls() fits, e.g., may now need
    all.equal(m1, m2, check.environment = FALSE).
  * .libPaths() gets a new option include.site, allowing to _not_
    include the site library.  (Thanks to Dario Strbenac's suggestion
    and Gabe Becker's PR#18016.)
  * Lithuanian translations are now available.  (Thanks to Rimantas
    Zakauskas.)
  * names() now works for DOTSXP objects.  On the other hand, in
    R-lang, the R language manual, we now warn against relying on the
    structure or even existence of such dot-dot-dot objects.
  * all.equal() no longer gives an error on DOTSXP objects.
  * capabilities("cairo") now applies only to the file-based devices
    as it is now possible (if very unusual) to build R with Cairo
    support for those but not for X11().
  * There is optional support for tracing the progress of
    loadNamespace() - see its help.
  * (Not Windows.)  l10n_info() reports an additional element, the
    name of the encoding as reported by the OS (which may differ from
    the encoding part (if any) of the result from
    Sys.getlocale("LC_CTYPE").
  * New function gregexec() which generalizes regexec() to find _all_
    disjoint matches and well as all substrings corresponding to
    parenthesized subexpressions of the given regular expression.
    (Contributed by Brodie Gaslam.)
  * New function charClass() in package utils to query the
    wide-character classification functions in use (such as
    iswprint).
  * The names of quantile()'s result no longer depend on the global
    getOption("digits"), but quantile() gets a new optional argument
    digits = 7 instead.
  * grep(), sub(), regexp and variants work considerably faster for
    long factors with few levels.  (Thanks to Michael Chirico's
    PR#18063.)
  * Provide grouping of x11() graphics windows within a window
    manager such as Gnome or Unity; thanks to a patch by Ivan Krylov
    posted to R-devel.
  * The split() method for class data.frame now allows the f argument
    to be specified as a formula.
  * sprintf now warns on arguments unused by the format string.
  * New palettes "Rocket" and "Mako" for hcl.colors() (approximating
    palettes of the same name from the 'viridisLite' package).
    Contributed by Achim Zeileis.
  * The base environment and its namespace are now locked (so one can
    no longer add bindings to these or remove from these).
  * Rterm handling of multi-byte characters has been improved,
    allowing use of such characters when supported by the current
    locale.
  * Rterm now accepts ALT+ +xxxxxxxx sequences to enter Unicode
    characters as hex digits.
  * Environment variable LC_ALL on Windows now takes precedence over
    LC_CTYPE and variables for other supported categories, matching
    the POSIX behaviour.
  * duplicated() and anyDuplicated() are now optimized for integer
    and real vectors that are known to be sorted via the ALTREP
    framework. Contributed by Gabriel Becker via PR#17993.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 14
    and so packages that provide graphics devices should be
    reinstalled.
  * Graphics devices should now specify deviceVersion to indicate
    what version of the graphics engine they support.
  * Graphics devices can now specify deviceClip.  If TRUE, the
    graphics engine will never perform any clipping of output itself.
    The clipping that the graphics engine does perform (for both
    canClip = TRUE and canClip = FALSE) has been improved to avoid
    producing unnecessary artifacts in clipped output.
  * The grid package now allows gpar(fill) to be a linearGradient(),
    a radialGradient(), or a pattern().  The viewport(clip) can now
    also be a grob, which defines a clipping path, and there is a new
    viewport(mask) that can also be a grob, which defines a mask.
    These new features are only supported so far on the Cairo-based
    graphics devices and on the pdf() device.
  * (Not Windows.)  A warning is given when a Cairo-based type is
    specified for a png(), jpeg(), tiff() or bmp() device but Cairo
    is unsupported (so type = "Xlib" is tried instead).
  * grSoftVersion() now reports the versions of FreeType and
    FontConfig if they are used directly (not _via_ Pango), as is
    most commonly done on macOS.
  C-LEVEL FACILITIES:
  * The _standalone_ libRmath math library and R's C API now provide
    log1pexp() again as documented, and gain log1mexp().
  INSTALLATION on a UNIX-ALIKE:
  * configure checks for a program pkgconf if program pkg-config is
    not found.  These are now only looked for on the path (like
    almost all other programs) so if needed specify a full path to
    the command in PKG_CONFIG, for example in file config.site.
  * C99 function iswblank is required - it was last seen missing ca
    2003 so the workaround has been removed.
  * There are new configure options --with-internal-iswxxxxx,
  - -with-internal-towlower and --with-internal-wcwidth which allows
    the system functions for wide-character classification,
    case-switching and width (wcwidth and wcswidth) to be replaced by
    internal ones.  The first has long been used on macOS, AIX (and
    Windows) but this enables it to be unselected there and selected
    for other platforms (it is the new default on Solaris).  The
    second is new in this version of R and is selected by default on
    macOS and Solaris.  The third has long been the default and
    remains so as it contains customizations for East Asian
    languages.
    System versions of these functions are often minimally
    implemented (sometimes only for ASCII characters) and may not
    cover the full range of Unicode points: for example Solaris (and
    Windows) only cover the Basic Multilingual Plane.
  * Cairo installations without X11 are more likely to be detected by
    configure, when the file-based Cairo graphics devices will be
    available but not X11(type = "cairo").
  * There is a new configure option --with-static-cairo which is the
    default on macOS.  This should be used when only static cairo
    (and where relevant, Pango) libraries are available.
  * Cairo-based graphics devices on platforms without Pango but with
    FreeType/FontConfig will make use of the latter for font
    selection.
  LINK-TIME OPTIMIZATION on a UNIX-ALIKE:
  * Configuring with flag --enable-lto=R now also uses LTO when
    installing the recommended packages.
  * R CMD INSTALL and R CMD SHLIB have a new flag --use-LTO to use
    LTO when compiling code, for use with R configured with
  - -enable-lto=R.  For R configured with --enable-lto, they have
    the new flag --no-use-LTO.
    Packages can opt in or out of LTO compilation _via_ a UseLTO
    field in the DESCRIPTION file.  (As usual this can be overridden
    by the command-line flags.)
  BUILDING R on Windows:
  * for GCC &gt;= 8, FC_LEN_T is defined in config.h and hence character
    lengths are passed from C to Fortran in _inter alia_ BLAS and
    LAPACK calls.
  * There is a new text file src/gnuwin32/README.compilation, which
    outlines how C/Fortran code compilation is organized and
    documents new features:
  * R can be built with Link-Time Optimization with a suitable
    compiler - doing so with GCC 9.2 showed several
    inconsistencies which have been corrected.
  * There is support for cross-compiling the C and Fortran code
    in R and standard packages on suitable (Linux) platforms.
    This is mainly intended to allow developers to test later
    versions of compilers - for example using GCC 9.2 or 10.x has
    detected issues that GCC 8.3 in Rtools40 does not.
  * There is experimental support for cross-building R packages
    with C, C++ and/or Fortran code.
  * The R installer can now be optionally built to support a single
    architecture (only 64-bit or only 32-bit).
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++14 where
    available (which it is on all currently checked platforms): if
    not (as before) C++11 is used if available otherwise C++ is not
    supported.
    Packages which specify C++11 will still be installed using C++11.
    C++14 compilers may give deprecation warnings, most often for
    std::random_shuffle (deprecated in C++14 and removed in C++17).
    Either specify C++11 (see 'Writing R Extensions') or modernize
    the code and if needed specify C++14.  The latter has been
    supported since R 3.4.0 so the package's DESCRIPTION would need
    to include something like
    Depends: R (&gt;= 3.4)
  PACKAGE INSTALLATION on Windows:
  * R CMD INSTALL and R CMD SHLIB make use of their flag --use-LTO
    when the LTO_OPT make macro is set in file etc/${R_ARCH}/Makeconf
    or in a personal/site Makevars file.  (For details see 'Writing R
    Extensions' SS4.5.)
    This provides a valuable check on code consistency.  It does work
    with GCC 8.3 as in Rtools40, but that does not detect everything
    the CRAN checks with current GCC do.
  PACKAGE INSTALLATION on macOS:
  * The default personal library directory on builds with
  - -enable-aqua (including CRAN builds) now differs by CPU type,
    one of
    ~/Library/R/x86_64/x.y/library
    ~/Library/R/arm64/x.y/library
    This uses the CPU type R (and hence the packages) were built for,
    so when a x86_64 build of R is run under Rosetta emulation on an
    arm64 Mac, the first is used.
  UTILITIES:
  * R CMD check can now scan package functions for bogus return
    statements, which were possibly intended as return() calls (wish
    of PR#17180, patch by Sebastian Meyer). This check can be
    activated via the new environment variable
    _R_CHECK_BOGUS_RETURN_, true for --as-cran.
  * R CMD build omits tarballs and binaries of previous builds from
    the top-level package directory.  (PR#17828, patch by Sebastian
    Meyer.)
  * R CMD check now runs sanity checks on the use of LazyData, for
    example that a data directory is present and that
    LazyDataCompression is not specified without LazyData and has a
    documented value.  For packages with large LazyData databases
    without specifying LazyDataCompression, there is a reference to
    the code given in 'Writing R Extensions' SS1.1.6 to test the
    choice of compression (as in all the CRAN packages tested a
    non-default method was preferred).
  * R CMD build removes LazyData and LazyDataCompression fields from
    the DESCRIPTION file of packages without a data directory.
  ENCODING-RELATED CHANGES:
  * The parser now treats \Unnnnnnnn escapes larger than the upper
    limit for Unicode points (\U10FFFF) as an error as they cannot be
    represented by valid UTF-8.
    Where such escapes are used for outputting non-printable
    (including unassigned) characters, 6 hex digits are used (rather
    than 8 with leading zeros).  For clarity, braces are used, for
    example \U{0effff}.
  * The parser now looks for non-ASCII spaces on Solaris (as
    previously on most other OSes).
  * There are warnings (including from the parser) on the use of
    unpaired surrogate Unicode points such as \uD834.  (These cannot
    be converted to valid UTF-8.)
  * Functions nchar(), tolower(), toupper() and chartr() and those
    using regular expressions have more support for inputs with a
    marked Latin-1 encoding.
  * The character-classification functions used (by default) to
    replace the system iswxxxxx functions on Windows, macOS and AIX
    have been updated to Unicode 13.0.0.
    The character-width tables have been updated to include new
    assignments in Unicode 13.0.0.
  * The code for evaluating default (extended) regular expressions
    now uses the same character-classification functions as the rest
    of R (previously they differed on Windows, macOS and AIX).
  * There is a build-time option to replace the system's
    wide-character wctrans C function by tables shipped with R: use
    configure option --with-internal-towlower or (on Windows)
  - DUSE_RI18N_CASE in CFLAGS when building R.  This may be needed
    to allow tolower() and toupper() to work with Unicode characters
    beyond the Basic Multilingual Plane where not supported by system
    functions (e.g. on Solaris where it is the new default).
  * R is more careful when truncating UTF-8 and other multi-byte
    strings that are too long to be printed, passed to the system or
    libraries or placed into an internal buffer.  Truncation will no
    longer produce incomplete multibyte characters.
  DEPRECATED AND DEFUNCT:
  * Function plclust() from the package stats and
    package.dependencies(), pkgDepends(), getDepList(),
    installFoundDepends(), and vignetteDepends() from package tools
    are defunct.
  * Defunct functions checkNEWS() and readNEWS() from package tools
    and CRAN.packages() from utils have been removed.
  * R CMD config CXXCPP is defunct (it was deprecated in R 3.6.2).
  * parallel::detectCores() drops support for Irix (retired in 2013).
  * The LINPACK argument to chol.default(), chol2inv(),
    solve.default() and svd() has been defunct since R 3.1.0.  It was
    silently ignored up to R 4.0.3 but now gives an error.
  * Subsetting/indexing, such as ddd[*] or ddd$x on a DOTSXP
    (dot-dot-dot) object ddd has been disabled; it worked by accident
    only and was undocumented.
  BUG FIXES:
  * Many more C-level allocations (mainly by malloc and strdup) are
    checked for success with suitable alternative actions.
  * Bug fix for replayPlot(); this was turning off graphics engine
    display list recording if a recorded plot was replayed in the
    same session.  The impact of the bug became visible if resize the
    device after replay OR if attempted another savePlot() after
    replay (empty display list means empty screen on resize or empty
    saved plot).
  * R CMD check etc now warn when a package exports non-existing S4
    classes or methods, also in case of no "methods" presence.
    (Reported by Alex Bertram; reproducible example and patch by
    Sebastian Meyer in PR#16662.)
  * boxplot() now also accepts calls for labels such as ylab, the
    same as plot().  (Reported by Marius Hofert.)
  * The help page for xtabs() now correctly states that addNA is
    setting na.action = na.pass among others.  (Reported as PR#17770
    by Thomas Soeiro.)
  * The R CMD check &lt;pkg&gt; gives a longer and more comprehensible
    message when DESCRIPTION misses dependencies, e.g., in Imports:.
    (Thanks to the contributors of PR#17179.)
  * update.default() now calls the generic update() on the formula to
    work correctly for models with extended formulas.  (As reported
    and suggested by Neal Fultz in PR#17865.)
  * The horizontal position of leaves in a dendrogram is now correct
    also with center = FALSE.  (PR#14938, patch from Sebastian
    Meyer.)
  * all.equal.POSIXt() no longer warns about and subsequently ignores
    inconsistent "tzone" attributes, but describes the difference in
    its return value (PR#17277).  This check can be disabled _via_
    the new argument check.tzone = FALSE as suggested by Sebastian
    Meyer.
  * as.POSIXct() now populates the "tzone" attribute from its tz
    argument when x is a logical vector consisting entirely of NA
    values.
  * x[[2^31]] &lt;- v now works.  (Thanks to the report and patch by
    Suharto Anggono in PR#17330.)
  * In log-scale graphics, axis() ticks and label positions are now
    computed more carefully and symmetrically in their range,
    typically providing _more_ ticks, fulfilling wishes in PR#17936.
    The change really corresponds to an improved axisTicks() (package
    grDevices), potentially influencing grid and lattice, for
    example.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now correct to at
    least five digits where it was catastrophically wrong,
    previously.
  * sum(df) and similar "Summary"- and "Math"-group member functions
    now work for data frames df with logical columns, notably also of
    zero rows.  (Reported to R-devel by Martin "b706".)
  * unsplit() had trouble with tibbles due to unsound use of rep(NA,
    len)-indexing, which should use NA_integer_ (Reported to R-devel
    by Mario Annau.)
  * pnorm(x, log.p = TRUE) underflows to -Inf slightly later.
  * show(&lt;hidden S4 generic&gt;) prints better and without quotes for
    non-hidden S4 generics.
  * read.table() and relatives treated an "NA" column name as missing
    when check.names = FALSE PR#18007.
  * Parsing strings containing UTF-16 surrogate pairs such as
    "\uD834\uDD1E" works better on some (uncommon) platforms.
    sprintf("%X", utf8ToInt("\uD834\uDD1E")) should now give "1D11E"
    on all platforms.
  * identical(x,y) is no longer true for differing DOTSXP objects,
    fixing PR#18032.
  * str() now works correctly for DOTSXP and related exotics, even
    when these are doomed.
    Additionally, it no longer fails for lists with a class and
    "irregular" method definitions such that e.g. lapply(*) will
    necessarily fail, as currently for different igraph objects.
  * Too long lines in environment files (e.g. Renviron) no longer
    crash R. This limit has been increased to 100,000 bytes.
    (PR#18001.)
  * There is a further workaround for FreeType giving incorrect
    italic font faces with cairo-based graphics devices on macOS.
  * add_datalist(*, force = TRUE) (from package tools) now actually
    updates an existing data/datalist file for new content.  (Thanks
    to a report and patch by Sebastian Meyer in PR#18048.)
  * cut.Date() and cut.POSIXt() could produce an empty last interval
    for breaks = "months" or breaks = "years".  (Reported as PR#18053
    by Christopher Carbone.)
  * Detection of the encoding of 'regular' macOS locales such as
    en_US (which is UTF-8) had been broken by a macOS change:
    fortunately these are now rarely used with en_US.UTF-8 being
    preferred.
  * sub() and gsub(pattern, repl, x, *) now keep attributes of x such
    as names() also when pattern is NA (PR#18079).
  * Time differences ("difftime" objects) get a replacement and a
    rep() method to keep "units" consistent.  (Thanks to a report and
    patch by Nicolas Bennett in PR#18066.)
  * The \RdOpts macro, setting defaults for \Sexpr options in an Rd
    file, had been ineffective since R 2.12.0: it now works again.
    (Thanks to a report and patch by Sebastian Meyer in PR#18073.)
  * mclapply and pvec no longer accidentally terminate parallel
    processes started before by mcparallel or related calls in
    package parallel (PR#18078).
  * grep and other functions for evaluating (extended) regular
    expressions handle in Unicode also strings not explicitly flagged
    UTF-8, but flagged native when running in UTF-8 locale.
  * Fixed a crash in fifo implementation on Windows (PR#18031).
  * Binary mode in fifo on Windows is now properly detected from
    argument open (PR#15600, PR#18031).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1622808000">- The line %{__install} -m 755 -d %{_infodir}
  no longer works in TW or Factory.
  But without that line it works everywhere. So this instruction
  was commented out of the spec file.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1628596800">- CHANGES IN R 4.1.1:
  NEW FEATURES:
  * require(pkg, quietly = TRUE) is quieter and in particular does
    not warn if the package is not found.
  DEPRECATED AND DEFUNCT:
  * Use of ftp:// URIs should be regarded as deprecated, with
    on-going support confined to method = "libcurl" and not routinely
    tested.  (Nowadays no major browser supports them.)
  * The non-default method = "internal" is deprecated for http:// and
    ftp:// URIs for both download.file and url.
  * On Windows, method = "wininet" is deprecated for http://,
    https:// and ftp:// URIs for both download.file and url.  (A
    warning is only given for ftp://.)
    For ftp:// URIs the default method is now "libcurl" if available
    (which it is on CRAN builds).
    method = "wininet" remains the default for http:// and https://
    URIs but if libcurl is available, using method = "libcurl" is
    preferred.
  INSTALLATION:
  * make check now works also without a LaTeX installation.  (Thanks
    to Sebastian Meyer's PR#18103.)
  BUG FIXES:
  * make check-devel works again in an R build configured with
  - -without-recommended-packages.
  * qnbinom(p, size, mu) for large size/mu is correct now in a range
    of cases (PR#18095); similarly for the (size, prob)
    parametrization of the negative binomial.  Also qpois() and
    qbinom() are better and or faster for extreme cases.  The
    underlying C code has been modularized and is common to all four
    cases of discrete distributions.
  * gap.axis is now part of the axis() arguments which are passed
    from bxp(), and hence boxplot().  (Thanks to Martin Smith's
    report and suggestions in PR#18109.)
  * .First and .Last can again be set from the site profile.
  * seq.int(from, to, *) and seq.default(..) now work better in large
    range cases where from-to is infinite where the two boundaries
    are finite.
  * all.equal(x,y) now returns TRUE correctly also when several
    entries of abs(x) and abs(y) are close to .Machine$double.xmax,
    the largest finite numeric.
  * model.frame() now clears the object bit when removing the class
    attribute of a value via na.action (PR#18100).
  * charClass() now works with multi-character strings on Windows
    (PR#18104, fixed by Bill Dunlap).
  * encodeString() on Solaris now works again in Latin-1 encoding on
    characters represented differently in UTF-8.  Support for
    surrogate pairs on Solaris has been improved.
  * file.show() on Windows now works with non-ASCII path names
    representable in the current native encoding (PR#18132).
  * Embedded R on Windows can now find R home directory via the
    registry even when installed only for the current user
    (PR#18135).
  * pretty(x) with finite x now returns finite values also in the
    case where the extreme x values are close in size to the maximal
    representable number .Machine$double.xmax.
    Also, it's been tweaked for very small ranges and when a boundary
    is close (or equal) to zero; e.g., pretty(c(0,1e-317)) no longer
    has negative numbers, currently still warning about a very small
    range, and pretty(2^-(1024 - 2^-1/(c(24,10)))) is more accurate.
  * The error message for not finding vignette files when weaving has
    correct file sizes now. (Thanks to Sebastian Meyer's PR#18154.)
  * dnbinom(20, &lt;large&gt;, 1) now correctly gives 0, and similar cases
    are more accurate with underflow precaution.  (Reported by Francisco Vera Alcivar in PR#18072.)</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635163200">- repaired https://bugzilla.suse.com/show_bug.cgi?id=1191380
  (rpmacros now go to rpmmacrodir)
- minor clean-ups in spec file</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635768000">- CHANGES IN R 4.1.2:
  C-LEVEL FACILITIES:
  * The workaround in headers R.h and Rmath.h (using namespace std;)
    for the Oracle Developer Studio compiler is no longer needed now
    C++11 is required so has been removed.  A couple more usages of
    log() (which should have been std::log()) with an int argument
    are reported on Solaris.
  * The undocumented limit of 4095 bytes on messages from the
    S-compatibility macros PROBLEM and MESSAGE is now documented and
    longer messages will be silently truncated rather than
    potentially causing segfaults.
  * If the R_NO_SEGV_HANDLER environment variable is non-empty, the
    signal handler for SEGV/ILL/BUS signals (which offers recovery
    user interface) is not set. This allows more reliable debugging
    of crashes that involve the console.
  DEPRECATED AND DEFUNCT:
  * The legacy S-compatibility macros PROBLEM, MESSAGE, ERROR, WARN,
    WARNING, RECOVER, ... are deprecated and will be hidden in R
    4.2.0. R's native interface of Rf_error and Rf_warning has long
    been preferred.
  BUG FIXES:
  * .mapply(F, dots, .) no longer segfaults when dots is not a list
    and uses match.fun(F) as always documented; reported by Andrew
    Simmons in PR#18164.
  * hist(&lt;Date&gt;, ...) and hist(&lt;POSIXt&gt;, ...)  no longer pass
    arguments for rect() (such as col and density) to axis().
    (Thanks to Sebastian Meyer's PR#18171.)
  * \Sexpr{ch} now preserves Encoding(ch). (Thanks to report and
    patch by Jeroen Ooms in PR#18152.)
  * Setting the RNG to "Marsaglia-Multicarry" e.g., by RNGkind(), now
    warns in more places, thanks to Andr'e Gillibert's report and
    patch in PR#18168.
  * gray(numeric(), alpha=1/2) no longer segfaults, fixing PR#18183,
    reported by Till Krenz.
  * Fixed dnbinom(x, size=&lt;very_small&gt;, .., log=TRUE) regression,
    reported by Martin Morgan.
  * as.Date.POSIXlt(x) now keeps names(x), thanks to Davis Vaughan's
    report and patch in PR#18188.
  * model.response() now strips an "AsIs" class typically, thanks to
    Duncan Murdoch's report and other discussants in PR#18190.
  * try() is considerably faster in case of an error and long call,
    as e.g., from some do.call().  Thanks to Alexander Kaever's
    suggestion posted to R-devel.
  * qqline(y = &lt;object&gt;) such as y=I(.), now works, see also
    PR#18190.
  * Non-integer mgp par() settings are now handled correctly in
    axis() and mtext(), thanks to Mikael Jagan and Duncan Murdoch's
    report and suggestion in PR#18194.
  * formatC(x) returns length zero character() now, rather than ""
    when x is of length zero, as documented, thanks to Davis
    Vaughan's post to R-devel.
  * removeSource(fn) now retains (other) attributes(fn).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1647000000">- CHANGES IN R 4.1.3:
  NEW FEATURES:
  * The default version of Bioconductor has been changed to 3.14.
    (This is used by setRepositories and the menus in GUIs.)
  UTILITIES:
  * R CMD check --as-cran has a workaround for a bug in versions of
    file up to at least 5.41 which mis-identify DBF files last
    changed in 2022 as executables.
  C-LEVEL FACILITIES:
  * The legacy S-compatibility macros SINGLE_* in R_ext/Constants.h
    (included by R.h) are deprecated and will be removed in R 4.2.0.
  BUG FIXES:
  * Initialization of self-starting nls() models with initialization
    functions following the pre-R-4.1.0 API (without the ...
    argument) works again for now, with a deprecation warning.
  * Fixed quoting of ~autodetect~ in Java setting defaults to avoid
    inadvertent user lookup due to leading ~, reported in PR#18231 by
    Harold Gutch.
  * substr(., start, stop) &lt;- v now treats _negative_ stop values
    correctly.  Reported with a patch in PR#18228 by Brodie Gaslam.
  * Subscripting an array x without dimnames by a
    length(dim(x))-column character matrix gave "random" non-sense,
    now an error; reported in PR#18244 by Mikael Jagan.
  * ...names() now matches names(list(...)) closely, fixing PR#18247.
  * all.equal(*, scale = s) now works as intended when length(s) &gt; 1,
    partly thanks to Michael Chirico's PR#18272.
  * print(x) for long vectors x now also works for named atomic
    vectors or lists and prints the correct number when reaching the
    getOption("max.print") limit; partly thanks to a report and
    proposal by Hugh Parsonage to the R-devel list.
  * all.equal(&lt;selfStart&gt;, *) no longer signals a deprecation
    warning.
  * reformulate(*, response=r) gives a helpful error message now when
    length(r) &gt; 1, thanks to Bill Dunlap's PR#18281.
  * Modifying globalCallingHandlers inside withCallingHandlers() now
    works or fails correctly, thanks to Henrik Bengtsson's PR#18257.
  * hist(&lt;Date&gt;, breaks = "days") and hist(&lt;POSIXt&gt;, breaks = "secs")
    no longer fail for inputs of length 1.
  * qbeta(.001, .9, .009) and similar cases now converge correctly
    thanks to Ben Bolker's report in PR#17746.
  * window(x, start, end) no longer wrongly signals "'start' cannot
    be after 'end'", fixing PR#17527 and PR#18291.
  * data() now checks that its (rarely used) list argument is a
    character vector - a couple of packages passed other types and
    gave incorrect results.
  * which() now checks its arr.ind argument is TRUE rather coercing
    to logical and taking the first element - which gave incorrect
    results in package code.
  * model.weights() and model.offset() more carefully extract their
    model components, thanks to Ben Bolker and Tim Taylor's R-devel
    post.
  * list.files(recursive = TRUE) now shows all broken symlinks
    (previously, some of them may have been omitted, PR#18296).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1650628800">- CHANGES IN R 4.2.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * The formula method of aggregate() now matches the generic in
    naming its first argument x (resolving PR#18299 by Thomas
    Soeiro).
    This means that calling aggregate() with a formula as a named
    first argument requires name formula in earlier versions of R and
    name x now, so portable code should not name the argument (code
    in many packages did).
  * Calling &amp;&amp; or || with either argument of length greater than one
    now gives a warning (which it is intended will become an error).
  * Calling if() or while() with a condition of length greater than
    one gives an error rather than a warning.  Consequently,
    environment variable _R_CHECK_LENGTH_1_CONDITION_ no longer has
    any effect.
  * Windows users should consult the WINDOWS section below for some
    profound changes including
  * Support for 32-bit builds has been dropped.
  * UTF-8 locales are used where available.
  * The default locations for the R installation and personal
    library folder have been changed.
    Thanks to Tomas Kalibera for months of work on the Windows port
    for this release.
  NEW FEATURES:
  * matrix(x, n, m) now warns in more cases where length(x) differs
    from n * m, as suggested by Abby Spurdle and Wolfgang Huber in
    Feb 2021 on the R-devel mailing list.
    This warning can be turned into an error by setting environment
    variable _R_CHECK_MATRIX_DATA_ to TRUE: R CMD check --as-cran
    does so unless it is already set.
  * Function file_test() in package utils gains tests for symlinks,
    readability and writability.
  * capabilities("libxml") is now false.
    The description of capabilities("http/ftp") now reflects that it
    refers to the default method, no longer the internal one.
  * simplify2array() gains an except argument for controlling the
    exceptions used by sapply().
  * Environment variables R_LIBS_USER and R_LIBS_SITE are both now
    set to the R system default if unset or empty, and can be set to
    NULL to indicate an empty list of user or site library
    directories.
  * The warning for axis()(-like) calls in cases of relatively small
    ranges (typically in log-scale situations) is slightly improved
    _and_ suppressed from explicit calls to .axisPars() as has always
    been the intention.
  * The contrasts setter function `contrasts&lt;-` gains an explicit
    default how.many = NULL rather than just using missing(how.many).
  * grid.pretty() gains a new optional argument n = 5.
  * There is a new function .pretty() with option bounds as a
    technical-utility version of pretty().  It and pretty() gain a
    new argument f.min with a better than back-compatible default.
  * Function grDevices::axisTicks() and related functions such as
    graphics::axis() work better, notably for the log scale; partly
    because of the pretty() improvements, but also because care is
    taken e.g., when ylim is finite but diff(ylim) is infinite.
  * nclass.FD() gains a digits option.
  * The R Mathlib internal C function bd0() (called indirectly from a
    dozen probability density and distribution functions such as
    dpois(), dbinom(), dgamma(), pgamma() _etc_) has been
    complemented by a more sophisticated and (mostly) more accurate C
    function ebd0(), currently called only by internal dpois_raw()
    improving accuracy for R level dpois() and potentially others
    calling it such as dnbinom(), dgamma() or pgamma().  (Thanks to
    Morten Welinder's PR#15628.)
  * write.ftable() gains sep = " " argument as suggested by Thomas
    Soeiro.
  * The names of the locale categories supported by R's
    Sys.getlocale() and Sys.setlocale() are now provided by variable
    .LC.categories in the base namespace.
  * The Date and POSIXt methods for hist() and the histogram method
    for plot() now also use the new default col = "lightgray" in
    consistency with the corresponding change to hist()'s default for
    R 4.0.0.
  * hist.default() gains new fuzz argument, and the histogram plot
    method no longer uses fractional axis ticks when displaying
    counts ("Frequency").
  * mapply() and hence Map() now also obey the "max-or-0-if-any"
    recycling rule, such that, e.g., Map(`+`, 1:3, 1[0]) is valid
    now.
  * as.character(&lt;obj&gt;) for "hexmode" or "octmode" objects now
    fulfils the important basic rule as.character(x)[j] ===
    as.character(x[j]).
  * The set utility functions, notably intersect() have been tweaked
    to be more consistent and symmetric in their two set arguments,
    also preserving a common mode.
  * substr(ch, start,end) &lt;- new now e.g., preserves names(ch); ditto
    for substring(), thanks to a patch from Brodie Gaslam.
  * plot(&lt;lm&gt;) gains a extend.ylim.f argument, in partial response to
    PR#15285; further PR#17784 is fixed thanks to several
    contributors and a patch by Elin Waring.  The Cook's dist
    contours get customizable via cook.col and cook.lty with a
    different default color and their legend is nicer by default and
    customizable via cook.legendChanges.
  * Attempting to subset an object that is not subsettable now
    signals an error of class notSubsettableError. The
    non-subsettable object is contained in the object field of the
    error condition.
  * Subscript-out-of-bounds errors are now signaled as errors of
    class subscriptOutOfBoundsError.
  * Stack-overflow errors are now signaled as errors inheriting from
    class stackOverflowError. See ?stackOverflowError for more
    details.
  * New partly experimental Sys.setLanguage() utility, solving the
    main problem of PR#18055.
  * gettext() and gettextf() get a new option trim = TRUE which when
    set to false allows translations for strings such as "Execution
    halted\n" typical for C code.
  * An experimental implementation of hash tables is now available.
    See ?hashtab for more details.
  * identical() gains a extptr.as.ref argument for requesting that
    external pointer objects be compared as reference objects.
  * reorder() gets an argument decreasing which it passes to sort()
    for level creation; based on the wish and patch by Thomas Soeiro
    in PR#18243.
  * as.vector() gains a data.frame method which returns a simple
    named list, also clearing a long standing 'FIXME' to enable
    as.vector(&lt;data.frame&gt;, mode="list").  This breaks code relying
    on as.vector(&lt;data.frame&gt;) to return the unchanged data frame.
  * legend() is now vectorized for arguments cex, x.intersp, and
    text.width.  The latter can now also be specified as a vector
    (one element for each column of the legend) or as NA for
    computing a proper column wise maximum value of strwidth(legend).
    The argument y.intersp can be specified as a vector with one
    entry for each row of the legend.
    legend() also gains new arguments title.cex and title.font.
    Thanks to Swetlana Herbrandt.
  * Deparsing no longer remaps attribute names dim, dimnames, levels,
    names and tsp to historical S-compatible names (which structure()
    maps back).
  * sample() and sample.int() have additional sanity checks on their
    size and n arguments.
    all.equal.numeric() gains a sanity check on its tolerance
    argument - calling all.equal(a, b, c) for three numeric vectors
    is a surprisingly common error.
    mean(na.rm =), rank(na.last =), barplot(legend.text =),
    boxplot(), contour(drawlabels =), polygon(border =) and
    methods::is(class2 =) have more robust sanity checks on their
    arguments.
    R CMD Rd2pdf (used by R CMD check) has a more robust sanity check
    on the format of \alias{} commands.
  * psigamma(x, deriv) for negative x now also works for deriv = 4
    and 5; their underlying C level dpsifn() is documented in
    'Writing R Extensions'.
  * The HTML help system now uses HTML5 (wish of PR#18149).
  * ks.test() now provides exact p-values also with ties and MC
    p-values in the two-sample (Smirnov) case.  By Torsten Hothorn.
  * ks.test() gains a formula interface, with y ~ 1 for the
    one-sample (Kolmogorov) test and y ~ group for the two-sample
    (Smirnov) test.  Contributed by Torsten Hothorn.
  * The return value from ks.test() now has class c("ks.test",
    "htest") - packages using try() need to take care to use
    inherits() and not == on the class.
  * New functions psmirnov(), qsmirnov() and rsmirnov() in package
    stats implementing the asymptotic and exact distributions of the
    two-sample Smirnov statistic.
  * iconv() now allows sub = "c99" to use C99-style escapes for UTF-8
    inputs which cannot be converted to encoding to.
  * In a forward pipe |&gt; expression it is now possible to use a named
    argument with the placeholder _ in the rhs call to specify where
    the lhs is to be inserted.  The placeholder can only appear once
    on the rhs.
  * The included LAPACK sources have been updated to version 3.10.0,
    except for the four Fortran 77 routines which 3.10.0 has
    re-implemented in Fortran 90 (where the older versions have been
    retained as the R build process does not support Fortran 90).
  * path.expand() and most other uses of tilde expansion now warn if
    a path would be too long if expanded.  (An exception is
    file.exists(), which silently returns false.)
  * trunc(&lt;Date&gt;, *) now supports units = "months" or "years" for
    consistency with the POSIXt method, thanks to Dirk Eddelbuettel's
    proposal in PR#18099.
  * list2DF() now checks that its arguments are of the same length,
    rather than use recycling.
  * The HTML help system has several new features: LaTeX-like math
    can be typeset using either KaTeX or MathJax, usage and example
    code is highlighted using Prism, and for dynamic help the output
    of examples and demos can be shown within the browser if the
    knitr package is installed. These features can be disabled by
    setting the environment variable _R_HELP_ENABLE_ENHANCED_HTML_ to
    a false value.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 15
    and so packages that provide graphics devices should be
    reinstalled.
  * The grid package now allows the user to specify a "vector" of
    pattern fills.  The fill argument to gpar() accepts a list of
    gradients and/or patterns and the functions linearGradient(),
    radialGradient(), and pattern() have a new group argument.
    Points grobs (data symbols) can now also have a pattern fill.
    The grobCoords() function now returns a more informative and
    complex result.
  * The grid package has new functions for drawing isolated groups:
    grid.group(), grid.define(), and grid.use().  These functions add
    compositing operators and affine transformations to R's graphics
    capabilities.
    The grid package also has new functions for stroking and filling
    paths: grid.stroke(), grid.fill(), and grid.fillStroke().
    A new function as.path() allows the user to specify the fill rule
    for a path that is to be used for clipping, stroking, or filling;
    available options are "winding" and "evenodd".  A new function
    as.mask() allows the user to specify the type of a mask;
    available options are "alpha" and "luminance".
    These new features are only supported so far (at most) on the
    Cairo-based graphics devices and on the pdf() device.
  * dev.capabilities() reports on device support for the new
    features.
  * par() now warns about unnamed non-character arguments to prevent
    misuse such as {usr &lt;- par("usr"); par(usr)}.
  INSTALLATION:
  * Facilities for accessing ftp:// sites are no longer tested
    (except _pro tem_ for curlGetHeaders()) as modern browsers have
    removed support.
  * R can now be built with DEFS = -DSTRICT_R_HEADERS .
  PACKAGE INSTALLATION:
  * R CMD INSTALL no longer tangles vignettes. This completes an R
    CMD build change in R 3.0.0 and affects packages built before R
    3.0.2. Such packages should be re-made with R CMD build to have
    the tangled R code of vignettes shipped with the tarball.
  * USE_FC_LEN_T will become the default: this uses the correct
    prototypes for Fortran BLAS/LAPACK routines called from C/C++,
    and requires adjustment of most such calls - see 'Writing R
    Extensions' SS6.6.2.  (This has been supported since R 3.6.2.)
  * Package installation speed for packages installed with
    keep.source has been improved. This resolve the issue reported by
    Ofek Shilon in PR#18236.
  UTILITIES:
  * R CMD check can optionally report files/directories left behind
    in home, /tmp (even though TMPDIR is set) and other directories.
    See the "R Internals" manual for details.
  * R CMD check now reports byte-compilation errors during
    installation.  These are not usually fatal but may result in
    parts of the package not being byte-compiled.
  * _R_CHECK_DEPENDS_ONLY_ can be applied selectively to examples,
    tests and/or vignettes in R CMD check: see the "R Internals"
    manual.
  * _R_CHECK_SRC_MINUS_W_IMPLICIT_ now defaults to true: recent
    versions of Apple clang on macOS have made implicit function
    declarations in C into a compilation error.
  * R CMD check --as-cran makes use of the environment variable
    AUTORECONF.  See the "R Internals" manual SS8 for further details.
  * R CMD check --use-valgrind also uses valgrind when re-building
    vignettes as some non-Sweave vignettes unhelpfully comment out
    all their code when R CMD check runs vignettes.
  * Errors in re-building vignettes (unless there are LaTeX errors)
    are reported by R CMD check as ERROR rather than WARNING when
    running vignettes has been skipped (as it frequently is in CRAN
    checks and by --as-cran).
  * R CMD Rd2pdf gains a --quiet option that is used by R CMD build
    when building the PDF package manual.
  * R CMD Rd2pdf now always runs LaTeX in batch mode, consistent with
    Texinfo &gt;= 6.7. The --batch option is ignored.
  * R CMD build and R CMD check now include the Rd file name and line
    numbers in the error message of an \Sexpr evaluation failure.
  * For packages using the \doi Rd macro (now an install-time \Sexpr)
    but no other dynamic Rd content, R CMD build now produces a
    smaller tarball and is considerably faster - skipping temporary
    package installation.
  C-LEVEL FACILITIES:
  * The non-API header R_ext/R-ftp-http.h is no longer provided, as
    the entry points it covered are now all defunct.
  * A number of non-API declarations and macro definitions have been
    moved from the installed header Rinternals.h to the internal
    header Defn.h. Packages that only use entry points and
    definitions documented to be part of the API as specified in
    'Writing R Extensions' SS6 should not be affected.
  * The macro USE_RINTERNALS no longer has any effect when compiling
    package code.  Packages which also use R_NO_REMAP will need to
    ensure that the remapped names are used for calls to API
    functions that were formerly also made available as macros.
  * The deprecated legacy S-compatibility macros PROBLEM, MESSAGE,
    ERROR, WARN, WARNING, RECOVER, ... are no longer defined in
    R_exts/RS.h (included by R.h).  Replace these by calls to
    Rf_error and Rf_warning (defined in header R_ext/Error.h included
    by R.h).
    Header R_ext/RS.h no longer includes R_ext/Error.h.
  * Header R_ext/Constants.h (included by R.h) when included from C++
    now includes the C++ header cfloat rather than the C header
    float.h (now possible as C++11 is required).
  * The legacy S-compatibility macros DOUBLE_* in R_ext/Constants.h
    (included by R.h) are deprecated.
  * The deprecated S-compatibility macros SINGLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * R_Calloc, R_Free and R_Realloc are preferred to their unprefixed
    forms and error messages now use the prefix. These forms were
    introduced in R 3.4.0 and are available even when
    STRICT_R_HEADERS is defined.
  * rmultinom has been documented in 'Writing R Extensions' SS6 so is
    now part of the R API.
  * Similarly, Rtanpi, called from R level tanpi() is now part of the
    R API.
  * The long-deprecated, undocumented and non-API entry point call_R
    is no longer declared in R_ext/RS.h (included by R.h).
  * The header S.h which has been unsupported since Jan 2016 has been
    removed.  Use R.h instead.
  DEPRECATED AND DEFUNCT:
  * The (non-default and deprecated) method = "internal" for
    download.file() and url() no longer supports http:// nor ftp://
    URIs.  (It is used only for file:// URIs.)
    On Windows, download.file(method = "wininet") no longer supports
    ftp:// URIs.  (It is no longer the default method, which is
    "libcurl" and does.)
    On Windows, the deprecated method = "wininet" now gives a warning
    for http:// and https:// URIs for both download.file() and url().
    (It is no longer the default method.)
  * On Windows, the command-line option --max-mem-size and
    environment variable R_MAX_MEM_SIZE are defunct.  The memory
    allocation limit was important for 32-bit builds, but these are
    no longer supported.
  * default.stringsAsFactors() is now formally deprecated, where that
    was only mentioned on its regular help page, previously.  So it
    now gives a warning if called.
  * unix.time() is defunct now; it had been deprecated since R 3.4.0.
  BUG FIXES:
  * Setting digits = 0 in format(), print.default() (and hence
    typically print()) or options() is again invalid.  Its behaviour
    was platform-dependent, and it is unclear what "zero significant
    digits" should mean (PR#18098).
  * Messages from C code in the cairo section of package grDevices
    are now also offered for translation, thanks to Michael Chirico's
    PR#18123.
  * mean(x) with finite x now is finite also without "long.double"
    capability.
  * R CMD Rd2pdf no longer leaves an empty build directory behind
    when it aborts due to an already existing output file.  (Thanks
    to Sebastian Meyer's PR#18141.)
  * density(x, weights = w, na.rm = TRUE) when anyNA(x) is true, now
    removes weights "in parallel" to x, fixing PR#18151, reported by
    Matthias Gondan.  Additionally, it gets a subdensity option.
  * Conversion of \Sexpr[]{&lt;expR&gt;} to LaTeX or HTML no longer
    produces long blocks of empty lines when &lt;expR&gt; itself contains
    several lines all producing empty output.  Thanks to a report and
    patch by Ivan Krylov posted to R-devel.
  * R CMD build no longer fails if a package vignette uses child
    documents and inst/doc exists.  (Thanks to Sebastian Meyer's
    PR#18156.)
  * When an R documentation ('help' source) file man/foo.Rd in a
    package has \donttest{..} examples with a syntax error, it is now
    signalled as ERROR and with correct line numbers relating to the
  * -Ex.R file, thanks to Duncan Murdoch and Sebastian Meyer's
    reports and patch proposals in PR#17501.
  * Improved determination of the correct translation domain in
    non-base packages, addressing the combination of PR#18092 and
    PR#17998 (#c6) with reports and _augmented_ patch #2904 by
    Suharto Anggono.
    Note that "R-base" is no longer the default domain e.g., for
    top-level calls to gettext(); rather translation needs explicit
    domain = * specification in such cases.
  * identical(attrib.as.set=FALSE) now works correctly with data
    frames with default row names (Thanks to Charlie Gao's PR#18179).
  * txtProgressBar() now enforces a non-zero width for argument char,
    without which no progress can be visible.
  * dimnames(table(d)) is more consistent in the case where d is a
    list with a single component, thanks to Thomas Soeiro's report to
    R-devel.
    Further, table(d1, d2) now gives an error when d1 and d2 are data
    frames as suggested by Thomas in PR#18224.
  * Fix for drawing semi-transparent lines and fills on the native
    Windows graphics device (PR#18219 and PR#16694).  Thanks to Nick
    Ray for helpful diagnosis on Bugzilla.
  * The deparser now wraps sub-expressions such as if(A) ..  with
    parentheses when needed; thanks to Duncan Murdoch's PR#18232 and
    Lionel Henry's patches there.
  * remove.packages() no longer tries to uninstall Priority: base
    packages, thanks to a report and suggestions by Colin Fay in
    PR#18227.
  * win.metafile() now has xpinch and ypinch arguments so that the
    user can override Windows' (potentially wrong) guess at device
    dimensions.
  * x[i] and x[[i]] for non-integer i should now behave in all cases
    as always documented: the index used is equivalent to
    as.integer(i) unless that would overflow where trunc(i) is used
    instead; thanks to Suharto Anggono's report and patch proposals
    in PR#17977.
  * asOneSidedFormula() now associates the resulting formula with the
    global environment rather than the evaluation environment created
    for the call.
  * &lt;bibentry&gt;$name now matches the field name case-insensitively,
    consistent with bibentry() creation and the replacement method.
  * cbind() failed to detect some length mismatches with a mixture of
    time-series and non-time-series inputs.
  * The default LaTeX style file Sweave.sty used by the RweaveLatex
    driver no longer loads the obsolete ae package; thanks to a
    report by Thomas Soeiro in PR#18271.  Furthermore, it now skips
    \usepackage[T1]{fontenc} for engines other than pdfTeX (if
    detected) or if the new [nofontenc] option is used.
  * smooth.spline() now stores its logical cv argument more safely,
    fixing a rare bug when printing, and also stores n.
  * smooth.spline(x,y,*) now computes the cv.crit statistic
    correctly, also when is.unsorted(x), fixing PR#18294.
  * The data.frame method of rbind() now warns when binding
    not-wholly-recycling vectors, by analogy to the default method
    (for matrices).
  * setAs() finds the correct class for name to when multiple
    packages define a class with that name. Thanks to Gabor Csardi
    for the report.
  * Fix for detaching a package when two classes of the same name are
    present in method signatures for the same generic. Thanks to
    Gabor Csardi for the report.
  * match.arg("", c("", "a", "B")) gives a better error message, in
    part from PR#17959, thanks to Elin Waring.
  * R CMD Sweave --clean no longer removes pre-existing files or
    subdirectories (PR#18242).
  * The quartz() device no longer splits polylines into subpaths.
    That has caused narrowly-spaced lines with many points to always
    look solid even when dashed line type was used due to dash phase
    restarts.
  * Deparsing constructs such as quote(1 + `!`(2) + 3) works again as
    before R 3.5.0, thanks to the report and patch in PR#18284 by
    Suharto Anggono.
  * as.list(f) for a factor f now keeps names(f), fixing PR#18309.
  * qbeta(.001, .9, .009) and analogous qf() calls now return a
    correct value instead of NaN or wrongly 1, all with a warning;
    thanks to the report by Ludger Goeminne in PR#18302.
  * plot.lm() failed to produce the plot of residuals vs.  factor
    levels (i.e., which=5 when leverages are constant) for models
    with character predictors (PR#17840).
  * interaction.plot(..., xtick = TRUE) misplaced the x-axis line
    (PR#18305).
  * Not strictly fixing a bug, format()ing and print()ing of
    non-finite Date and POSIXt values NaN and +/-Inf no longer show
    as NA but the respective string, e.g., Inf, for consistency with
    numeric vector's behaviour, fulfilling the wish of PR#18308.
  * R CMD check no longer runs test scripts generated from
    corresponding .Rin files twice and now signals an ERROR if
    processing an .Rin script fails.
  * tools::Rd2txt() used for plain-text help pages now renders \hrefs
    (if tools::Rd2txt_options(showURLs = TRUE)) and \urls with
    percent-encoding and standards-compliant delimiting style (angle
    brackets and no URL: prefix).  \email is now rendered with a
    mailto: prefix.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1655985600">- CHANGES IN R 4.2.1:
  NEW FEATURES:
  * New function utils::findCRANmirror() to find out if a CRAN mirror
    has been selected, otherwise fallback to the main site.  This
    behaves in the same way as tools::CRAN_package_db() and is
    intended for packages wishing to access CRAN for purposes other
    than installing packages.
    The need for this was shown by a day when the main CRAN website
    was offline and a dozen or so packages which had its URL
    hardcoded failed their checks.
  INSTALLATION on a UNIX-ALIKE:
  * The libraries searched for by --with-blas (without a value) now
    include BLIS (after OpenBLAS but before ATLAS).  And on macOS,
    the Accelerate framework (after ATLAS).  (This is patterned after
    the AX_BLAS macro from the Autoconf Archive.)
  * The included LAPACK sources have been updated to 3.10.1.
  UTILITIES:
  * The (full path to) the command tidy to be used for HTML
    validation can be set by environment variable R_TIDYCMD.
  * Setting environment variable _R_CHECK_RD_VALIDATE_RD2HTML_ to a
    false value will override R CMD check --as-cran and turn off HTML
    validation.  This provides a way to circumvent a problematic
    tidy.
    The 2006 version that ships with macOS is always skipped.
  C-LEVEL FACILITIES:
  * The undocumented legacy declarations of Sint, Sfloat, SINT_MAX
    and SINT_MIN in header R.h are deprecated.
  BUG FIXES:
  * fisher.test(d) no longer segfaults for "large" d; fixing PR#18336
    by preventing/detecting an integer overflow reliably.
  * tar(., files=*) now produces correctly the warning about invalid
    uid or gid of files, fixing PR#18344, reported by Martin Morgan.
  * tk_choose.files() with multi = FALSE misbehaved on paths
    containing spaces (PR#18334) (regression introduced in R 4.0.0).
  * sort(x, partial = ind, *) now works correctly notably for the
    non-default na.last = FALSE or TRUE, fixing PR#18335 reported by
    James Edwards.
  * Environment variable _R_CHECK_XREFS_REPOSITORIES_ is only used
    for checking .Rd cross-references in R CMD check (as documented)
    and not for other uses looking for a CRAN mirror.
  * The search for a CRAN mirror when checking packages now uses
    getOption("repos") if that specifies a CRAN mirror, even when it
    does not also specify all three Bioconductor repositories (as was
    previously required).
  * The HTML code generated by tools::Rd2HTML() has been improved to
    pass tidy 5.8.0.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1667217600">- CHANGES IN R 4.2.2:
  NEW FEATURES:
  * tools::Rdiff(useDiff = TRUE) checks for the presence of an
    external diff command and switches to useDiff = FALSE if none is
    found.  This allows R CMD Rdiff to always work.
  * On Windows, environment variable R_LIBCURL_SSL_REVOKE_BEST_EFFORT
    can be used to switch to only 'best-effort' SSL certificate
    revocation checks with the default "libcurl" download method.
    This reduces security, but may be needed for downloads to work
    with MITM proxies (PR#18379).
  * (macOS) The run-time check for libraries from XQuartz for X11 and
    Tcl/Tk no longer uses otool from the Apple Developer Tools
    (PR#18400).
  * The LaTeX style for producing the PDF manuals, Rd.sty, now loads
    the standard amsmath, amsfonts and amssymb packages for greater
    coverage of math commands in the Rd \eqn and \deqn macros.  The
    \mathscr LaTeX command is also provided (via the mathrsfs
    package, if available, or the amsfonts bundle otherwise),
    fulfilling the wish of PR#18398.
  * (Windows) The default format of readClipboard() and
    writeClipboard() has been changed to 13 (CF_UNICODETEXT).
  INSTALLATION on a UNIX-ALIKE:
  * The PDF manuals (if built) can be compacted by the new target
    make compact-pdf (at the top level or in directory doc/manual).
  * There is now configure support for LLVM clang 15 on Linux, which
    defaults to position-independent (PIE) executables whereas
    gfortran does not.
  * Many small changes to ease compilation (and suppress warnings)
    with LLVM clang 15.
  BUG FIXES:
  * Rscript -e would fail if stdin were closed (Reported by Henrik
    Bengtsson.)
  * qt(*, log.p=TRUE) in outer tails no longer produces NaN in its
    final steps, thus fixing PR#18360.
  * tools::Rd2latex() now escapes hashes and ampersands when writing
    URLs, fixing LaTeX errors with such URLs in \tabular.
  * When isGeneric(f, fdef=*) is used with mismatching names, the
    warning is better understandable; reported (with fix) in PR#18370
    by Gabe Becker.
  * poly(x, n) now works again (and is now documented) when x is a
    "Date" or "POSIXct" object, or of another class while fulfilling
    mode(x) == "numeric".  This also enables poly(x, *, raw=TRUE) for
    such variables.  Reported by Michael Chirico to R-devel.
  * write.table(), write.csv() and write.csv2() restore their
    numerical precision (internal equivalent of digits = 15) after an
    interrupt (PR#18384).
  * One can now read also byte FF from a clipboard connection
    (PR#18385).
  * source("") and source(character()) now give more helpful error
    messages.
  * R CMD check --as-cran set _R_CHECK_TIMINGS_ too late to have the
    intended effect.
  * as.POSIXlt(x) now also works with very large dates x, fixing
    PR#18401 reported by Hannes M"uhleisen.
  * Files can now be extracted even from very large zip archives
    (PR#18390, thanks to Martin Jakt).
  * Non-finite objects of class "POSIXlt" are now correctly coerced
    to classes "Date" and "POSIXct"; following up on the extension to
    format() them correctly.
  * Added methods for is.finite(), is.infinite() and is.nan() for
    "POSIXlt" date-time objects.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1678881600">- CHANGES IN R 4.2.3:
  C-LEVEL FACILITIES:
  * The definition of DL_FUNC in R_ext/Rdynload.h has been changed to
    be fully C-compliant.  This means that functions loaded _via_ for
    example R_GetCCallable need to be cast to an appropriate type if
    they have any arguments.
  * .Machine has a new element sizeof.time_t to identify old systems
    with a 32-bit type and hence a limited range of date-times (and
    limited support for dates millions of years from present).
  PACKAGE INSTALLATION:
  * (Windows) The default C++ standard had accidentally been left at
    C++11 when it was changed to C++14 on Unix.
  BUG FIXES:
  * As "POSIXlt" objects may be "partially filled" and their list
    components meant to be recycled, length() now is the length of
    the longest component.
  * as.POSIXlt.Date() could underflow for dates in the far past (more
    than half a million years BCE).
  * as.Date.POSIXlt(x) would return "1970-01-01" instead of NA in R
    4.2.2, e.g., for
    x &lt;- as.POSIXlt(c("2019-01-30","2001-1-1"))
    x$mon &lt;- c(0L, NA); as.Date(x)
  * R CMD check failed to apply enabled _R_CHECK_SUGGESTS_ONLY_ to
    examples and vignettes (regression in R 4.2.0).
  * R CMD check did not re-build vignettes in separate processes by
    default (regression in R 4.2.0).
  * Running examples from HTML documentation now restores previous
    knitr settings and options (PR#18420).
  * Quartz: fonts are now located using Core Graphics API instead of
    deprecated ATS which is no longer supported in the macOS 13 SDK
    (PR#18426).  This also addresses an issue where the currently
    used font in the Quartz device context was not correctly
    retained.
  * (Windows) Math symbols in text drawing functions are again
    rendered correctly (PR#18440).  This fixes a regression in R
    4.2.1 caused by a fix in PR#18382 which uncovered an issue in
    GraphApp due to which the symbol charset was not used with TT
    Symbol font face.
  * (Windows) Installing a package with a src/Makefile.{win,ucrt}
    file includes ~/.R/Makevars.win64 in the search for user
    makevars, as documented in "R Installation and Administration"
    and done for packages with a src/Makevars.{win,ucrt} file.
  * format(&lt;POSIXlt_w/_unbalanced_sec&gt;, "....%OS&lt;n&gt;") with n &gt; 0 no
    longer accidentally uses the unbalanced seconds, thanks to
    Suharto Anggono's report (including patch) in PR#18448.
  * solve.default(a, b) works around issues with some versions of
    LAPACK when a contains NA or NaN values.
  * When UseMethod() cannot dispatch, it no longer segfaults
    producing the error message in case of a long class(), thanks to
    Joris Vankerschaver's report (including patch) in PR#18447.
  * When example(foo, ..) produces graphics on an interactive device
    it needs to open itself, it now leaves devAskNewPage() unchanged
    even when it was FALSE, thus fixing a 14 years old '&lt;FIXME&gt;'.
  * packageDescription() again catches errors from encoding
    conversions. This also fixes broken packageVersion() in C locale
    on systems where iconv does not support transliteration.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1681128000">- add patch to build with libcurl &gt;= 8</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1682078400">- CHANGES IN R 4.3.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Calling &amp;&amp; or || with LHS or (if evaluated) RHS of length greater
    than one is now always an error, with a report of the form
    'length = 4' in coercion to 'logical(1)'
    Environment variable _R_CHECK_LENGTH_1_LOGIC2_ no longer has any
    effect.
  NEW FEATURES:
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.10.1.  (This caused some platform-dependent
    changes to package check output.)  And then to the sources from
    LAPACK version 3.11.0 (with changes only to double complex
    subroutines).
  * The included LAPACK sources have been updated to include the four
    Fortran 90 routines rather than their Fortran 77 predecessors.
    This may give some different signs in SVDs or
    eigendecompositions..  (This completes the transition to LAPACK
    3.10.x begun in R 4.2.0.)
  * The LAPACK sources have been updated to version 3.11.0.  (No new
    subroutines have been added, so this almost entirely bug fixes:
    Those fixes do affect some computations with NaNs, including R's
    NA.)
  * The parser now signals _classed_ errors, notably in case of the
    pipe operator |&gt;.  The error object and message now give line and
    column numbers, mostly as proposed and provided by Duncan Murdoch
    in PR#18328.
  * toeplitz() is now generalized for asymmetric cases, with a
    toeplitz2() variant.
  * xy.coords() and xyz.coords() and consequently, e.g., plot(x,y,
    log = "y") now signal a _classed_ warning about negative values
    of y (where log(.) is NA).  Such a warning can be specifically
    suppressed or caught otherwise.
  * Regular expression functions now check more thoroughly whether
    their inputs are valid strings (in their encoding, e.g. in
    UTF-8).
  * The performance of grep(), sub(), gsub() and strsplit() has been
    improved, particularly with perl = TRUE and fixed = TRUE.  Use of
    useBytes = TRUE for performance reasons should no longer be
    needed and is discouraged: it may lead to incorrect results.
  * apropos() gains an argument dot_internals which is used by the
    completion (help(rcompgen)) engine to also see base internals
    such as .POSIXct().
  * Support in tools::Rdiff() for comparing uncompressed PDF files is
    further reduced - see its help page.
  * qqplot(x, y, ...) gains conf.level and conf.args arguments for
    computing and plotting a confidence band for the treatment
    function transforming the distribution of x into the distribution
    of y (Switzer, 1976, _Biometrika_). Contributed by Torsten
    Hothorn.
  * Performance of package_dependencies() has been improved for cases
    when the number of dependencies is large.
  * Strings newly created by gsub(), sub() and strsplit(), when any
    of the inputs is marked as "bytes", are also marked as "bytes".
    This reduces the risk of creating invalid strings and accidental
    substitution of bytes deemed invalid.
  * Support for readLines(encoding = "bytes") has been added to allow
    processing special text files byte-by-byte, without creating
    invalid strings.
  * iconv(from = "") now takes into account any declared encoding of
    the input elements and uses it in preference to the native
    encoding.  This reduces the risk of accidental creation of
    invalid strings, particularly when different elements of the
    input have different encoding (including "bytes").
  * Package repositories in getOption("repos") are now initialized
    from the repositories file when utils is loaded (if not already
    set, e.g., in .Rprofile).  (From a report and patch proposal by
    Gabriel Becker in PR#18405.)
  * compactPDF() gets a verbose option.
  * type.convert() and hence read.table() get new option tryLogical =
    TRUE with back compatible default.  When set to false, converts
    "F" or "T" columns to character.
  * Added new unit prefixes "R" and "Q" for abbreviating
    (unrealistically large) sizes beyond 10^{27} in standard = "SI",
    thanks to Henrik Bengtsson's PR#18435.
  * as.data.frame()'s default method now also works fine with atomic
    objects inheriting from classes such as "roman", "octmode" and
    "hexmode", such fulfilling the wish of PR#18421, by Benjamin
    Feakins.
  * The as.data.frame.vector() utility now errors for wrong-length
    row.names.  It warned for almost six years, with "Will be an
    error!".
  * sessionInfo() now also contains La_version() and reports codepage
    and timezone when relevant, in both print() and toLatex() methods
    which also get new option tzone for displaying timezone
    information when locale = FALSE.
  * New function R_compiled_by() reports the C and Fortran compilers
    used to build R, if known.
  * predict(&lt;lm&gt;, newdata = *) no longer unnecessarily creates an
    offset of all 0s.
  * solve() for complex inputs now uses argument tol and by default
    checks for 'computational singularity' (as it long has done for
    numeric inputs).
  * predict(&lt;rank-deficient lm&gt;, newdata=*) now obeys a new argument
    rankdeficient, with new default "warnif", warning only if there
    are non-estimable cases in newdata.  Other options include
    rankdeficient = "NA", predicting NA for non-estimable newdata
    cases.  This addresses PR#15072 by Russ Lenth and is based on his
    original proposal and discussions in PR#16158 also by David Firth
    and Elin Waring.  Still somewhat experimental.
  * Rgui console implementation now works better with the NVDA screen
    reader when the full blinking cursor is selected.  The underlying
    improvements in cursor handling may help also other screen
    readers on Windows.
  * The drop-field control in GraphApp can now be left with the TAB
    key and all controls can be navigated in the reverse order using
    the Shift+TAB key, improving accessibility of the Rgui
    configuration editor.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now fully accurate
    (instead of to "only" minimally five digits).
  * demo(error.catching) now also shows off withWarnings() and
    tryCatchWEMs().
  * As an experimental feature the placeholder _ can now also be used
    in the rhs of a forward pipe |&gt; expression as the first argument
    in an extraction call, such as _$coef. More generally, it can be
    used as the head of a chain of extractions, such as _$coef[[2]].
  * Spaces in the environment variable used to choose the R session's
    temporary directory (TMPDIR, TMP and TEMP are tried in turn) are
    now fatal.  (On Windows the 'short path' version of the path is
    tried and used if that does not contain a space.)
  * all.equal.numeric() gets a new optional switch giveErr to return
    the numeric error as attribute.  Relatedly,
    stopifnot(all.equal&lt;some&gt;(a, b, ..)) is as "smart" now, as
    stopifnot(all.equal(....)) has been already, thus allowing
    customized all.equal&lt;Some&gt;() wrappers.
  * R on Windows is now able to work with path names longer than 260
    characters when these are enabled in the system (requires at
    least Windows 10 version 1607).  Packages should be updated to
    work with long paths as well, instead of assuming PATH_MAX to be
    the maximum length.  Custom front-ends and applications embedding
    R need to update their manifests if they wish to allow this
    feature.  See
    &lt;https://blog.r-project.org/2023/03/07/path-length-limit-on-windows&gt;
    for more information.
  * 'Object not found' and 'Missing argument' errors now give a more
    accurate error context. Patch provided by Lionel Henry in
    PR#18241.
  * The @ operator is now an S3 generic. Based on contributions by
    Tomasz Kalinowski in PR#18482.
  * New generic chooseOpsMethod() provides a mechanism for objects to
    resolve cases where two suitable methods are found for an Ops
    Group Generic. This supports experimenting with alternative
    object systems. Based on contributions by Tomasz Kalinowski in
    PR#18484.
  * inherits(x, what) now accepts values other than a simple
    character vector for argument what. A new generic, nameOfClass(),
    is called to resolve the class name from what. This supports
    experimenting with alternative object systems. Based on
    contributions by Tomasz Kalinowski in PR#18485.
  * Detection of BLAS/LAPACK in use (sessionInfo()) with FlexiBLAS
    now reports the current backend.
  * The "data.frame" method for subset() now warns about extraneous
    arguments, typically catching the use of = instead of == in the
    subset expression.
  * Calling a:b when numeric a or b is longer than one may now be
    made into an error by setting environment variable
    _R_CHECK_LENGTH_COLON_ to a true value, along the proposal in
    PR#18419 by Henrik Bengtsson.
  * density(x, weights = *) now warns if automatic bandwidth
    selection happens without using weights; new optional warnWbw may
    suppress the warning.  Prompted by Christoph Dalitz' PR#18490 and
    its discussants.
  * rm(list = *) is faster and more readable thanks to Kevin Ushey's
    PR#18492.
  * The plot.lm() function no longer produces a normal Q-Q plot for
    GLMs. Instead it plots a half-normal Q-Q plot of the absolute
    value of the standardized deviance residuals.
  * The print() method for class "summary.glm" no longer shows
    summary statistics for the deviance residuals by default.  Its
    optional argument show.residuals can be used to show them if
    required.
  * The tapply() function now accepts a data frame as its X argument,
    and allows INDEX to be a formula in that case. by.data.frame()
    similarly allows INDICES to be a formula.
  * The performance of df[j] &lt;- value (including for missing j) and
    write.table(df) has been improved for data frames df with a large
    number of columns.  (Thanks to Gabriel Becker's PR#18500,
    PR#18503 and discussants, prompted by a report from Toby Dylan
    Hocking on the R-devel mailing list.)
  * The matrix multiply operator %*% is now an S3 generic, belonging
    to new group generic matrixOps.  From Tomasz Kalinowski's
    contribution in PR#18483.
  * New function array2DF() to convert arrays to data frames,
    particularly useful for the list arrays created by tapply().
  DATES and TIMES:
  * On platforms where (non-UTC) datetimes before 1902 (or before
    1900 as with system functions on recent macOS) are guessed by
    extrapolating time zones from 1902-2037, there is a warning at
    the first use of extrapolation in a session.  (As all time zones
    post 2037 are extrapolation, we do not warn on those.)
  * (Platforms using --with-internal-tzone, including Windows and by
    default macOS). How years are printed in dates or date-times can
    be controlled by environment variable R_PAD_YEARS_BY_ZERO.  The
    default remains to pad to 4 digits by zeroes, but setting value
    no gives no padding (as used by default by glibc).
  * strftime() tries harder to determine the offset for the "%z"
    format, and succeeds on the mainstream R platforms.
  * strftime() has a limit of 2048 bytes on the string produced -
    attempting to exceed this is an error.  (Previously it silently
    truncated at 255 bytes.)
  * sessionInfo() records (and by default prints) the system time
    zone as part of the locale information.  Also, the source
    (system/internal) of the date-time conversion and printing
    functions.
  * Objects of class "POSIXlt" created in this version of R always
    have 11 components: component zone is always set, and component
    gmtoff is set for times in UTC and usually set on the (almost
    all) platforms which have C-level support, otherwise is NA.
  * There are comprehensive validity checks on the structure of
    objects of class "POSIXlt" when converting (including formatting
    and printing).  (This avoids mis-conversions of hand-crafted
    objects.)
  * There is some support for using the native date-time routines on
    macOS: this is only viable on recent versions (e.g. 12.6 and 13)
    and does get wrong some historical changes (before 1900, during
    WWII).  Use of --with-internal-tzone remains the default.
  * as.POSIXct(&lt;numeric&gt;) and as.POSIXlt(.) (without specifying
    origin) now work.  So does as.Date(&lt;numeric&gt;).
  * as.Date.POSIXct(., tz) now treats several tz values, notably
    "GMT" as equivalent to "UTC", proposed and improved by Michael
    Chirico and Joshua Ulrich in PR#17674.
  * Experimental balancePOSIXlt() utility allows using "ragged" and
    or out-of-range "POSIXlt" objects more correctly, e.g., in
    subsetting and subassignments.  Such objects are now documented.
    More experimentally, a "POSIXlt" object may have an attribute
    "balanced" indicating if it is known to be filled or fully
    balanced.
  * Functions axis.Date() and axis.POSIXct() are rewritten to gain
    better default tick locations and better default formats by using
    prettyDate(). Thanks to Swetlana Herbrandt.
  * The mapping of Windows' names for time zones to IANA's 'Olson'
    names has been updated.  When ICU is available (it is by
    default), it is used to get a mapping for the current region set
    in Windows.  This can be overridden by setting environment
    variable TZ to the desired Olson name - see OlsonNames() for
    those currently available.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 16
    and so packages that provide graphics devices should be
    reinstalled.
  * The grDevices and grid packages have new functions for rendering
    typeset glyphs, primarily: grDevices::glyphInfo() and
    grid::grid.glyph().
    Rendering of typeset glyphs is only supported so far on the
    Cairo-based graphics devices and on the pdf() and quartz()
    devices.
  * The defined behaviour for "clear" and "source" compositing
    operators (via grid::grid.group()) has been changed (to align
    better with simple interpretation of original Porter-Duff
    definitions).
  * Support for gradients, patterns, clipping paths, masks, groups,
    compositing operators, and affine transformations has been added
    to the quartz() device.
  INSTALLATION on a UNIX-ALIKE:
  * A system installation of generic LAPACK 3.10.0 or later will be
    preferred to the version in the R sources.
    configure option --with-lapack=no (equivalently --without-lapack)
    forces compilation of the internal LAPACK sources.
    If --with-lapack is not specified, a system liblapack is looked
    for and used if it reports version 3.10.0 or later and does not
    contain BLAS routines.
    Packages using LAPACK will need to be reinstalled if this changes
    to using an external library.
  * On aarch64 Linux platforms using GCC, configure now defaults to
  - fPIC (instead of -fpic), as desired in PR#18326.
  * configure now checks conversion of datetimes between POSIXlt and
    POSIXct around year 2020.  Failure (which has been seen on
    platforms missing tzdata) is fatal.
  * If configure option --with-valgrind-instrumentation is given
    value 1 or 2, option --with-system-valgrind-headers is now the
    default and ignored (with a warning).  It is highly recommended
    that the system headers are installed alongside valgrind: they
    are part of its packaging on some Linux distributions and
    packaged separately (e.g. in the valgrind-devel RPM) on others.
    configure will give a warning if they are not found.
    The system headers will be required in a future release of R to
    build with valgrind instrumentation.
  * libcurl 8.x is now accepted by configure: despite a change in
    major version number it changes neither API nor ABI.
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools43, an update of the Rtools42 toolchain.  It is
    based on gcc 12 and newer versions of MinGW-W64, binutils and
    libraries.  At this time R-devel can still be built using
    Rtools42 without changes, but when R-devel is installed via the
    installer, it will by default look for Rtools43.
  * Old make targets rsync-extsoft and 32-bit ones that are no longer
    needed have been removed.
  * Default builds (including for packages) no longer select C99.
    Thus the C standard used is the default for the compiler, which
    for the toolchain in Rtools43 is C17.  (This is consistent with
    Unix builds.)
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++17 where
    available (which it is on all currently checked platforms): if
    not C++14 or C++11 is used if available otherwise C++ is not
    supported.
  * USE_FC_LEN_T is the default: this uses the correct
    (compiler-dependent) prototypes for Fortran BLAS/LAPACK routines
    called from C/C++, and requires adjustment of many such calls -
    see 'Writing R Extensions' SS6.6.1.
  * There is initial support for C++23 as several compilers are now
    supporting -std=c++23 or -std=c++2b or similar.  As for C++20,
    there no additional configure checks for C++23 features beyond a
    check that the compiler reports a __cplusplus value greater than
    that in the C++20 standard.  C++ feature tests should be used.
  * There is support for a package to indicate the version of the C
    standard which should be used to compile it, and for the
    installing user to specify this.  In most cases R defaults to the
    C compiler's default standard which is C17 (a `bug-fix' of C11) -
    earlier versions of R or compilers may have defaulted to C99.
    Current options are:
    USE_C17 Use a standard that is at most C17.  The intention is to
    allow legacy packages to still be installed when later C
    standards become the default, including packages using new
    keywords as identifiers or with K&amp;R-style function
    declarations.  This will use C17 if available, falling back
    to C11.
    USE_C90 Use the C90 (aka C89) standard.  (As that standard did
    not require compilers to identify that version, all we can
    verify is that the compiler does not claim to be using a
    later standard.  It may accept C99 features - for example
    clang accepts // to make comments.)
    USE_C99 Use the C99 standard. This should be rarely needed - it
    avoids the few new features of C11/C17 which can be useful if
    a package assumes them if C17 is specified and they are not
    implemented.
    USE_C23 Use C23 (or in future, later).  Compiler/library support
    for C23 is still being implemented, but LLVM clang from
    15.0.0 and the upcoming GCC 13 have quite extensive support.
    These can be specified as part of the SystemRequirements field in
    the package's DESCRIPTION file or _via_ options --use-C17 and so
    on of R CMD INSTALL and R CMD SHLIB.
    For further details see "Writing R Extensions" SS1.2.5.
  * (Windows) A src/Makefile.ucrt or src/Makefile.win file is now
    included after R_HOME/etcR_ARCH/Makeconf and so no longer needs
    to include that file itself.  Installation of a package with such
    a file now uses a site Makevars file in the same way as a package
    with a src/Makevars.win file would.
  * configure is now passed crucial variables such as CC and CFLAGS
    in its environment, as many packages were not setting them (as
    documented in 'Writing R Extensions' SS1.2).
    This has most effect where configure is used to compile parts of
    the package - most often by cmake or libtool which obfuscate the
    actual compile commands used.
    Also used for configure.win and configure.ucrt on Windows.
  FORTRAN FLAGS:
  * The flag -fno-optimize-sibling-calls is no longer forced for
    gfortran 7 and later.  It should no longer be needed now using
    'hidden' character-length arguments when calling BLAS/LAPACK
    routines from C/C++ is the default even for packages.  (Unless
    perhaps packages call Fortran code from C/C++ without using R's
    headers and without allowing for these arguments.)
  C-LEVEL FACILITIES:
  * The deprecated S-compatibility macros DOUBLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * The deprecated legacy typedefs of Sint and Sfloat in header R.h
    are no longer defined, and that header no longer includes header
    limits.h from C nor climits from C++.
  * New macro CAD5R() is provided in Rinternals.h and used in a few
    places in the R sources.
  * ALTREP now supports VECSXP vectors. Contributed by Gabor Csardi
    in PR#17620.
  * The Rcomplex definition (in header R_ext/Complex.h) has been
    extended to prevent possible mis-compilation when interfacing
    with Fortran (PR#18430).  The new definition causes compiler
    warnings with static initializers such as {1, 2}, which can be
    changed to {.r=1, .i=2}.
    Using the new definition from C++ depends on compiler extensions
    supporting C features that have not been incorporated into the
    C++ standards but are available in g++ and clang++: this may
    result in C++ compiler warnings but these have been worked around
    for recent versions of common compilers (GCC, Apple/LLVM clang,
    Intel).
    It is intended to change the inclusion of header R_ext/Complex.h
    by other R headers, so C/C++ code files which make use of
    Rcomplex should include that header explicitly.
  UTILITIES:
  * R CMD check does more checking of package .Rd files, warning
    about invalid email addresses and (some) invalid URIs and noting
    empty \item labels in description lists.
  * R CMD check now also reports problems when reading package news
    in md (file NEWS.md) and (optionally) plain text (file NEWS)
    formats.
  * _R_CHECK_TIMINGS_ defaults to a value from the environment even
    for R CMD check --as-cran; this allows for exceptionally fast or
    slow platforms.
    It now applies to checking PDF and HTML versions of the manuals,
    and 'checking CRAN incoming feasibility'.
  * R CMD check can optionally (but included in --as-cran) check
    whether HTML math rendering _via_ KaTeX works for the package .Rd
    files.
  * Non-interactive debugger invocations can be trapped by setting
    the environment variable _R_CHECK_BROWSER_NONINTERACTIVE_ to a
    true value.  This is enabled by R CMD check --as-cran to detect
    the use of leftover browser() statements in the package.
  * The use of sprintf and vsprintf from C/C++ has been deprecated in
    macOS 13 and is a known security risk.  R CMD check now reports
    (on all platforms) if their use is found in compiled code:
    replace by snprintf or vsnprintf respectively. [*NB:* whether
    such calls get compiled into the package is platform-dependent.]
  * Where recorded at installation, R CMD check reports the C and
    Fortran compilers used to build R.
    It reports the OS in use (if known, as given by osVersion) as
    well as that R was built for.
    It notes if a C++ standard was specified which is older than the
    current default: many packages have used C++11 to mean 'not
    C++98' - as C++11 is the minimum supported since R 4.0.0, that
    specification can probably be removed.
  * R CMD INSTALL reports the compilers (and on macOS, the SDK) used,
    and this is copied to the output of R CMD check.
    Where a C++ standard is specified, it is reported.
  * R CMD check's 'checking compilation flags in Makevars' has been
    relaxed to accept the use of flags such as -std=f2008 in
    PKG_FFLAGS.
  * tools::buildVignettes() has a new argument skip, which is used by
    R CMD check to skip (and note) vignettes with unavailable
    \VignetteDepends (PR#18318).
  * New generic .AtNames() added to enable class-specific completions
    after @. The formerly internal function findMatches() is now
    exported, mainly for use in methods for .DollarNames() and
    .AtNames().
  DEPRECATED AND DEFUNCT:
  * default.stringsAsFactors() is defunct.
  * Calling as.data.frame.&lt;class&gt;() directly (for 12 atomic classes)
    is going to be formally deprecated, currently activated by
    setting the environment variable
    _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ to non-empty, which also
    happens in R CMD check --as-cran.
  BUG FIXES:
  * Hashed environments with sizes less than 5 can now grow.
    (Reported to R-devel by Duncan Garmonsway.)
  * as.character(&lt;Rd&gt;, deparse = TRUE) failed to re-escape curly
    braces in LaTeX-like text.  (Reported by Hadley Wickham in
    PR#18324.)
  * library() now passes its lib.loc argument when requiring Depends
    packages; reported (with fix) in PR#18331 by Mikael Jagan.
  * R CMD Stangle: improved message about 'Output' files.
  * head(x, n) and tail(x, n) now signal an error if n is not
    numeric, instead of incidentally "working" sometimes returning
    all of x.  Reported and discussed by Colin Fay, in PR#18357.
  * The "lm" method for summary() now gives the correct F-statistic
    when the model contains an offset.  Reported in PR#18008.
  * C() and `contrasts&lt;-`() now preserve factor level names when
    given a function object (as opposed a function name which did
    preserve names). Reported in PR#17616.
  * c(a = 1, 2)[[]] no longer matches 2 but rather signals a
    _classed_ error.  Reported and analysed by Davis Vaughan in
    PR#18367, a duplicate of PR#18004, by Jan Meis et al.  For
    consistency, NULL[[]] is also erroneous now.  x[[]] &lt;- v gives an
    error of the same class "MissingSubscriptError".
  * The relist() function of utils now supports NULL elements in the
    skeleton (PR#15854).
  * ordered(levels = *) (missing x) now works analogously to factor(,
    ordered=TRUE); reported (with fix) by Achim Zeileis in PR#18389.
  * User-defined Rd macro definitions can now span multiple lines,
    thanks to a patch from Duncan Murdoch. Previously, the Rd parser
    silently ignored everything after the first line.
  * Plain-text help (tools::Rd2txt()) now preserves an initial blank
    line for text following description list items.
  * tools::Rd2HTML() and tools::Rd2latex() no longer split \arguments
    and \value lists at Rd comments.
  * tools::Rd2latex() now correctly handles optional text outside
    \items of argument lists as well as bracketed text at the
    beginning of sections, e.g., \value{[NULL]}.
  * as.character(&lt;POSIXt&gt;) now behaves more in line with the methods
    for atomic vectors such as numbers, and is no longer influenced
    by options().  Ditto for as.character(&lt;Date&gt;).  The
    as.character() method gets arguments digits and OutDec with
    defaults _not_ depending on options().  Use of as.character(*,
    format = .) now warns.
  * Similarly, the as.character.hexmode() and *.octmode() methods
    also behave as good citizen methods and back compatibility option
    keepStr = TRUE.
  * The as.POSIXlt(&lt;POSIXlt&gt;) and as.POSIXct(&lt;POSIXct&gt;) default
    methods now do obey their tz argument, also in this case.
  * as.POSIXlt(&lt;Date&gt;) now does apply a tz (time zone) argument, as
    does as.POSIXct(); partly suggested by Roland Fuss on the R-devel
    mailing list.
  * as.Date.POSIXlt(x) now also works when the list components are of
    unequal length, aka "partially filled" or "ragged".
  * expand.model.frame() looked up variables in the wrong environment
    when applied to models fitted without data.  Reported in
    PR#18414.
  * time() now (also) uses the ts.eps = getOption("ts.eps") argument
    and thus by default rounds values very close to the start (or
    end) of a year.  Based on a proposal by Andre"i V. Kostyrka on
    R-help.
  * Printing of a factanal() result with just one factor and sort =
    TRUE now works regularly, fixing PR#17863 by Timothy Bates,
    thanks to the 'R Contributors' working group.
  * Printing 0-length objects of class "factor", "roman", "hexmode",
    "octmode", "person", "bibentry", or "citation" now prints
    something better, one of which fixes PR#18422, reported by
    Benjamin Feakins.
  * Sys.timezone() queries timedatectl only if systemd is loaded;
    addressing a report by Jan Gorecki in PR#17421.
  * The formula method of cor.test() had scoping problems when
    environment(formula) was not the calling environment; reported
    with a patch proposal by Mao Kobayashi in PR#18439.
  * attach() of an environment with active bindings now preserves the
    active bindings.  Reported by Kevin Ushey in PR#18425.
  * BLAS detection now works also with system-provided libraries not
    available as regular files.  This fixes detection of the
    Accelerate framework on macOS since Big Sur.  Reported by David
    Novgorodsky.
  * download.file() gives a helpful error message in case of an
    invalid download.file.method option, thanks to Colin Fay's report
    in PR#18455.
  * Sporadic crashes of Rterm when using completion have been fixed.
  * Rprof() is now more reliable.  A livelock in thread
    initialization with too short sampling interval has been fixed on
    macOS.  A deadlock in using the C runtime has been fixed on
    Windows.  A potential deadlock has been prevented on Unix.
  * Cursor placement in Rgui now works even after a fixed-width font
    is selected.
  * Mandatory options (options()) are now set on startup so that
    saving and restoring them always works (PR#18372).
  * Package installation, R CMD INSTALL or install.packages(*), now
    parses each of the &lt;pkg&gt;/R/*.R files individually instead of
    first concatenating and then parse()ing the large resulting file.
    This allows parser or syntax errors to be diagnosed with correct
    file names and line numbers, thanks to Simon Dedman's report and
    Bill Dunlap's patch in PR#17859.
    This _does_ require syntactically self contained R source files
    now, fixing another inadvertent bug.
  * predict.lm(&lt;model with offset&gt;) now finds the offset in the
    correct environment, thanks to Andr'e Gillibert's report and patch
    in PR#18456.
  * getInitial(&lt;formula&gt;) now finds the selfStart model in the
    correct environment.  (Reported by Ivan Krylov in PR#18368.)
  * Fix for possible segfault when using recently-added graphics
    features, such as gradients, clipping paths, masks, and groups
    with pdf(file=NULL).
  * class(m) &lt;- class(m) no longer changes a matrix m by adding a
    class _attribute_.
  * packageDate(pkg) now only warns once if there is no pkg.
  * When ts() creates a multivariate time series, "mts", it also
    inherits from "array" now, and is.mts() is documented _and_
    stricter.
  * Rd2txt() now preserves line breaks of \verb Rd content and from
    duplicated \cr.  The former also fixes the rendering of verbatim
    output from Rd \Sexpr in plain-text help.
  * uniroot(f, interval) should no longer wrongly converge _outside_
    the interval in some cases where abs(f(x)) == Inf for an x at the
    interval boundary, thanks to posts by Ben Bolker and Serguei
    Sokol on R-devel.
  * Vectorized alpha handling in palette functions such as in gray(),
    rainbow(), or hcl.colors() works correctly now, thanks to Achim
    Zeileis' report and patch in PR#18476.
  * Formatting and print()ing of bibentry objects has dropped the
    deprecated citation.bibtex.max argument, such that the bibtex
    argument's default for print.bibentry() depends directly on the
    citation.bibtex.max option, whereas in format.bibentry() the
    option no longer applies.
  * Attempting to use a character string naming a foreign function
    entry point in a foreign function call in a package will now
    signal an error if the packages has called R_forceSymbols to
    specify that symbols must be used.
  * An error in table() could permanently set options(warn=2)
    promoting all subsequent warnings to errors.
  * The sigma() function gave misleading results for binary GLMs.  A
    new method for objects of class "glm" returns the square root of
    the estimate of the dispersion parameter using the same
    calculation as summary.glm().
  * bs() and ns() in the (typical) case of automatic knot
    construction, when some of the supposedly inner knots coincide
    with boundary knots, now moves them inside (with a warning),
    building on PR#18442 by Ben Bolker.
  * R CMD on Windows now skips the site profile with --no-site-file
    and --vanilla even when R_PROFILE is set (PR#18512, from Kevin
    Ushey).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1686916800">- CHANGES IN R 4.3.1:
  C-LEVEL FACILITIES:
  * The C-level API version of R's integrate(), Rdqags() in Applic.h,
    now returns the correct number of integrand evaluations neval,
    fixing PR#18515 reported and diagnosed by Stephen Wade.
  * The C prototypes for LAPACK calls dspgv and dtptrs in
    R_exts/Lapack.h had one too many and one too few character length
    arguments - but this has not caused any known issues. To get the
    corrected prototypes, include
    [#]include &lt;Rconfig.h&gt; // for PR18534fixed
    [#]ifdef PR18534fixed
    [#] define usePR18534fix 1
    [#]endif
    [#]include &lt;R_exts/Lapack.h&gt;
    in your C/C++ code (PR#18534).
  INSTALLATION:
  * Many of the checks of esoteric Internet operations and those
    using unreliable external sites have been moved to a new target
    that is not run by default and primarily intended for the core
    developers.  To run them use
    cd tests; make test-Internet-dev
  BUG FIXES:
  * .S3methods(), typically called from methods(), again marks
    methods from package base as visible.
    Also, the visibility of non-base methods is again determined by
    the method's presence in search().
  * tools::Rdiff() is now more robust against invalid strings, fixing
    installation tests on Windows without Rtools installed
    (PR#18530).
  * Fix (new) bug in hcl.colors(2, *), by Achim Zeileis (PR#18523).
  * head(., &lt;illegal&gt;) and tail(..) now produce more useful "Error in
    ...." error messages, fixing PR#18362.
  * Package code syntax on Windows is checked in UTF-8 when UTF-8 is
    the native encoding.
  * na.contiguous(x) now also returns the first run, when it is at
    the beginning and there is a later one of the same length;
    reported to R-devel, including a fix, by Georgi Boshnakov.
    Further, by default, it modifies only an existing attr(*,"tsp")
    but otherwise no longer sets one.
  * chol(&lt;not pos.def&gt;, pivot = &lt;T|F&gt;) now gives a correct error or
    warning message (depending on pivot), thanks to Mikael Jagan's
    (PR#18541).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1699012800">- CHANGES IN R 4.3.2:
  NEW FEATURES:
  * The default initialization of the "repos" option from the
    repositories file at startup can be skipped by setting
    environment variable R_REPOSITORIES to NULL such that
    getOption("repos") is empty if not set elsewhere.
  * qr.X() is now an implicit S4 generic in methods.
  * iconv(to = "ASCII//TRANSLIT") is emulated using substitution on
    platforms which do not support it (notably Alpine Linux).  This
    should give a human-readable conversion in ASCII on all platforms
    (rather than NA_character_).
  * trans3d() gains options continuous and verbose addressing the
    problem of possible "wrap around" when projecting too long
    curves, as reported by Achim Zeileis in PR#18537.
  * tools::showNonASCII() has been rewritten to work better on macOS
    14 (which has a changed implementation of iconv()).
  * tiff(type = "quartz") (the default on macOS) now warns if
    compression is specified: it continues to be ignored.
  INSTALLATION on a UNIX-ALIKE:
  * There is some support for building with Intel's LLVM-based
    compilers on x86_64 Linux, such as (C) icx, (C++) ipcx and
    (Fortran) ifx from oneAPI 2023.x.y.
  * There is support for using LLVM's flang-new as the Fortran
    compiler from LLVM 16.0.x (preferably 17.0.0 or later).
  UTILITIES:
  * R CMD check reports the use of the Fortran 90 random number
    generator RANDOM_NUMBER() and the subroutines to initialize it.
    'Writing R Extensions' has example code to use R's RNGs from
    Fortran.
  BUG FIXES:
  * substr(x, n, L) &lt;- cc now works (more) correctly for multibyte
    UTF-8 strings x when L &gt; nchar(x), thanks to a report and patch
    by 'Architect 95'.
  * contrib.url(character()) now returns 0-length character() as
    documented, which also avoids spurious warnings from
    available.packages() et al. in the edge case of an empty vector
    of repository URLs.
  * readChar(., 4e8) no longer fails, thanks to Kodi Arfer's report
    (PR#18557).
  * lapply(&lt;list&gt;, as.data.frame) no longer warns falsely for some
    base vector components.
  * Communication between parent and child processes in the multicore
    part of parallel could fail on platforms that do not support an
    arbitrarily large payload in system functions read()/write() on
    pipes (seen on macOS where a restriction to INT_MAX bytes is
    documented, without doing a partial read unlike Linux). The
    payload is now split into 1Gb chunks to avoid that problem.
    (PR#18571)
  * qqplot(x,y, conf.level=.) gives better confidence bounds when
    length(x) != length(y), thanks to Alexander Ploner's report and
    patch proposal (PR#18557).
  * norm(&lt;0-length&gt;, "2") now gives zero instead of an error, as all
    the other norm types, thanks to Mikael Jagan's PR#18542.
  * Build-stage Rd macros \packageAuthor and \packageMaintainer now
    process Authors@R, fixing NA results when the package DESCRIPTION
    omits Author and Maintainer fields.
  * Formatting and printing complex numbers could give things like
    0.1683-0i because of rounding error: -0i is now replaced by +0i.
  * postscript() refused to accept a title comment containing the
    letter "W" (PR#18599).
  * isoreg(c(1,Inf)) signals an error instead of segfaulting, fixing
    PR#18603.
  * tiff(type = "Xlib") was only outputting the last page of
    multi-page plots.
  * tools::latexToUtf8() again knows about \~{n} and other letters
    with tilde, fixing a regression in R 4.3.0, and about \^{i} as an
    alternative to \^{\i} (similarly with other accents).
    Furthermore, LaTeX codes for accented I letters are now correctly
    converted, also fixing related mistakes in
    tools::encoded_text_to_latex().
  * tar(*, tar = "internal") no longer creates out-of-spec tar files
    in the very rare case of user or group names longer than 32
    bytes, fixing PR#17871 with thanks to Ivan Krylov.
  * When using the "internal" timezone datetime code, adding a
    fraction of a second no longer adds one second, fixing PR#16856
    from a patch by Ivan Krylov.
  * tools::checkRd() no longer produces spurious notes about
    "unnecessary braces" from multi-line Rd results of \Sexpr macros.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1709208000">- CHANGES IN R 4.3.3:
  NEW FEATURES:
  * iconv() now fixes up variant encoding names such as "utf8"
    case-insensitively.
  DEPRECATED AND DEFUNCT:
  * The legacy encoding = "MacRoman" is deprecated in pdf() and
    postscript(): support was incomplete in earlier versions of R.
  BUG FIXES:
  * Arguments are now properly forwarded to methods on S4 generics
    with ... in the middle of their formal arguments. This was broken
    for the case when a method introduced an argument but did not
    include ... in its own formals. Thanks to Herv'e Pag`es for the
    report PR#18538.
  * Some invalid file arguments to pictex(), postscript() and xfig()
    opened a file called NA rather than throw an error.  These
    included postscript(NULL) (which some people expected to work
    like pdf(NULL)).
  * Passing filename = NA to svg(), cairo_pdf(), cairo_ps() or the
    Cairo-based bitmap devices opened a file called NA: it now throws
    an error.
  * quartz(file = NA) opened a file called NA, including when used as
    a Quartz-based bitmap device.  It now gives an error.
  * rank(&lt;long vector&gt;) now works, fixing PR#18617, thanks to Ilia
    Kats.
  * seq.int() did not adequately check its length.out argument.
  * match(&lt;POSIXct&gt;, .) is correct again for differing time zones,
    ditto for "POSIXlt", fixing PR#18618 reported by Bastian Klein.
  * drop.terms(*, dropx = &lt;0-length&gt;) now works, fixing PR#18563 as
    proposed by Mikael Jagan.
  * drop.terms(*) keeps + offset(.) terms when it should, PR#18565,
    and drop.terms() no longer makes up a response, PR#18566, fixing
    both bugs thanks to Mikael Jagan.
  * getS3method("t", "test") no longer finds the t.test() function,
    fixing PR#18627.
  * pdf() and postscript() support for the documented Adobe encodings
    "Greek" and "Cyrilllic" was missing (although the corresponding
    Windows' codepages could be used).
  * Computations of glyph metric information for pdf() and
    postscript() did not take into account that transliteration could
    replace one character by two or more (only seen on macOS 14) and
    typically warned that the information was not known.
  * rank(x) no longer overflows during integer addition, when
    computing rank average for largish but not-yet long vector x,
    fixing PR#18630, thanks to Ilia Kats.
  * list.files() on Windows now returns also files with names longer
    that 260 bytes (the Windows limit is 260 characters).
    Previously, some file names particularly with 'East Asian'
    characters were omitted.
  * cov2cor(&lt;0 x 0&gt;) now works, fixing PR#18423 thanks to Mikael
    Jagan and Elin Waring.
  * cov2cor(&lt;negative diagonal&gt;) and similar now give one warning
    instead of two, with better wording, fixing PR#18424 thanks to
    Mikael Jagan.
  * tools:: startDynamicHelp() now ensures port is in proper range,
    fixing PR#18645.
  * pbeta(x, a,b) is correct now for x=0 or 1 in the boundary cases
    where a or b or both are 0, fixing PR#18672 thanks to Michael
    Fay.
  * pmatch(x, table) for large table, also called for data frame row
    selection, dfrm[nm, ], is now interruptible, fixing PR#18656.
  * predict(&lt;rank-deficient lm&gt;, newdata=*) fix computing of nbasis,
    see Russ Lenth's comment 29 in PR#16158.
  * Added a work-around for a bug in macOS 14.3.1 and higher which
    prevents R plots in the Quartz Cocoa device from updating on
    screen.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1713960000">- CHANGES IN R 4.4.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Startup banners, R --version, sessionInfo() and R CMD check no
    longer report (64-bit) as part of the platform as this is almost
    universal - the increasingly rare 32-bit platforms will still
    report (32-bit).
    On Windows, ditto for window titles.
  * is.atomic(NULL) now returns FALSE, as NULL is not an atomic
    vector.  Strict back-compatibility would replace is.atomic(foo)
    by (is.null(foo) || is.atomic(foo)) but should happen only
    sparingly.
  NEW FEATURES:
  * The confint() methods for "glm" and "nls" objects have been
    copied to the stats package.  Previously, they were stubs which
    called versions in package MASS. The MASS namespace is no longer
    loaded if you invoke (say) confint(glmfit).  Further, the "glm"
    method for profile() and the plot() and pairs() methods for class
    "profile" have been copied from MASS to stats.  (profile.nls()
    and plot.profile.nls() were already in stats.)
  * The confint() and profile methods for "glm" objects have gained a
    possibility to do profiling based on the Rao Score statistic in
    addition to the default Likelihood Ratio. This is controlled by a
    new test = argument.
  * The pairs() method for "profile" objects has been extended with a
    which = argument to allow plotting only a subset of the
    parameters.
  * The "glm" method for anova() computes test statistics and
    p-values by default, using a chi-squared test or an F test
    depending on whether the dispersion is fixed or free.  Test
    statistics can be suppressed by giving argument test a false
    logical value.
  * In setRepositories() the repositories can be set using their
    names via name = instead of index ind =.
  * methods() and .S3methods() gain a all.names option for the (rare)
    case where functions starting with a . should be included.
  * Serializations can now be interrupted (e.g., by Ctrl-C on a
    Unix-alike) if they take too long, e.g., from save.image(),
    thanks to suggestions by Ivan Krylov and others on R-devel.
  * New startup option --max-connections to set the maximum number of
    simultaneous connections for the session.  Defaults to 128 as
    before: allowed values up to 4096 (but resource limits may in
    practice restrict to smaller values).
  * R on Windows (since Windows 10 2004) now uses the new Segment
    Heap allocator. This may improve performance of some
    memory-intensive applications.
  * When R packages are built, typically by R CMD build &lt;pkg&gt;, the
    new --user=&lt;build_user&gt; option overrides the (internally
    determined) user name, currently Sys.info()["user"] or LOGNAME.
    This is a (modified) fulfillment of Will Landau's suggestion in
    PR#17530.
  * tools::testInstalledBasic() gets new optional arguments outDir
    and testSrcdir, e.g., allowing to use it in a &lt;builddir&gt; !=
    &lt;srcdir&gt; setup, and in standard "binary" Windows installation
  * if* a source tests/ folder is present.
  * range(&lt;DT_with_Inf&gt;, finite = TRUE) now work for objects of class
    "Date", "POSIXct", and "POSIXlt" with infinite entries,
    analogously to range.default(), as proposed by Davis Vaughan on
    R-devel.  Other range()-methods can make use of new function
    .rangeNum().
  * New .internalGenerics object complementing .S3PrimitiveGenerics,
    for documentation and low-level book-keeping.
  * grid() now invisibly returns the x- and y- coordinates at which
    the grid-lines were drawn.
  * norm(., type) now also works for complex matrices.
  * kappa(., exact = TRUE, norm = *) now works for all norms and also
    for complex matrices.  In symmetric / triangular cases, the new
    argument uplo = "U" | "L" allows the upper or lower triangular
    part to be specified.
  * memDecompress(type = "unknown") recognizes compression in the
    default 'zlib' format as used by memCompress(type = "gzip").
  * memCompress() and memDecompress() will use the libdeflate library
    (&lt;https://github.com/ebiggers/libdeflate&gt;) if installed.  This
    uses the same type of compression for type = "gzip" but is 1.5-2x
    faster than the system libz library on some common platforms: the
    speed-up may depend on the library version.
  * diff() for objects of class "Date", "POSIXct", and "POSIXlt"
    accepts a units argument passed via ....
  * Dynamic help now does a much better job of rendering package
    DESCRIPTION metadata.
  * Rprof() gains an event argument and support for elapsed (real)
    time profiling on Unix (PR#18076).
  * filled.contour() gains a key.border argument.
  * tools::update_pkg_po() gets arguments pot_make and mo_make for
    _not_ re-making the corresponding files, and additionally a
    verbose argument.
  * Hexadecimal string colour specifications are now accepted in
    short form, so, for example, we can use "#123", which is
    equivalent to "#112233".
    Thanks to MikeFC for the original idea and Ella Kaye, Malcolm
    Barrett, George Stagg, and Hanne Oberman for the patch.
  * Plain-text help shows \var markup by angle brackets.
  * The new experimental primitive function declare() is intended to
    eventually allow information about R code to be communicated to
    the interpreter, compiler, and code analysis tools. The syntax
    for declarations is still being developed.
  * Functions psmirnov(), qsmirnov() and rsmirnov() in package stats
    have had argument two.sided renamed to alternative, to take into
    account that the permutation distributions of the one-sided
    statistics can be different in the case of ties.  Consequence of
    PR#18582.
  * sort() is now an implicit S4 generic in methods.
  * Formatting and printing, format(z), print(z), of complex vectors
    z no longer zap relatively small real or imaginary parts to zero,
    fixing PR#16752.  This is an API change, as it was documented
    previously to round real and imaginary parts together on purpose,
    producing nicer looking output.  As mentioned, e.g. in the PR,
    this change is compatible with many other "R-like" programming
    environments.
    We have simplified the internal code and now basically format the
    real and imaginary parts independently of each other.
  * New experimental functions Tailcall() and Exec() to support
    writing stack-space-efficient recursive functions.
  * Where characters are attempted to be plotted by pdf(),
    postscript() and xfig() which are not in the selected 8-bit
    character set (most often Latin-1) and the R session is using a
    UTF-8 locale, the warning messages will show the UTF-8 character
    rather than its bytes and one dot will be substituted per
    character rather than per byte.  (Platforms whose iconv() does
    transliteration silently plot the transliteration.)
    In a UTF-8 locale some transliterations are now done with a
    warning (e.g., dashes and Unicode minus to hyphen, ligatures are
    expanded, permille (‰) is replaced by o/oo), although the OS may
    have got there first.  These are warnings as they will continue
    to be replaced by dots in earlier versions of R.
  * The matrix multiplication functions crossprod() and tcrossprod()
    are now also primitive and S3 generic, as %*% had become in R
    4.3.0.
  * source() and example() have a new optional argument catch.aborts
    which allows continued evaluation of the R code after an error.
  * The non-Quartz tiff() devices allow additional types of
    compression if supported by the platform's libtiff library.
  * The list of base and recommended package names is now provided by
    tools::standard_package_names().
  * cairo_pdf() and cairo_ps() default to onefile = TRUE to closer
    match pdf() and postscript().
  * New option catch.script.errors provides a documented way to catch
    errors and then continue in non-interactive use.
  * L %||% R newly in base is an expressive idiom for the phrases
    if(!is.null(L)) L else R or if(is.null(L)) R else L.
  * The return value from warnings() now always inherits from
    "warnings" as documented, now also in the case of no warnings
    where it previously returned NULL.
  * as.complex("1i") now returns 0 + 1i instead of NA with a warning.
  * z &lt;- c(NA, 1i) now keeps the imaginary part Im(z[1]) == 0, no
    longer coercing to NA_complex_.  Similarly, cumsum(z) correctly
    sums real and imaginary parts separately, i.e., without
    "crosstalk" in case of NAs.
  * On Alpine Linux iconv() now maps "latin2", "latin-2", "latin9"
    and "latin-9" to encoding names the OS knows about
    (case-insensitively).
  * iconv(sub = "Unicode") now always zero-pads to four (hex) digits,
    rather than to 4 or 8.  (This seems to have become the convention
    once Unicode restricted the number of Unicode points to 2^21 - 1
    and so will never need more than 6 digits.)
  * NCOL(NULL) now returns 0 instead of 1, for consistency with
    cbind().
  * The information for the Euro glyph missing from the Adobe .afm
    files for the Courier, Helvetica and Times families has been
    copied from their URW equivalents - this will improve vertical
    centring in the pdf() and postscript() devices.
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.12.0.  The changes are almost entirely cosmetic.
  * The included LAPACK sources have been updated to version 3.12.0
    and some further double-complex routines added.
  * There are new font families for the 2014--5 URW 2.0 fonts (see
    ?pdf) which are included in recent versions of Ghostscript.
    These have font widths for most Greek glyphs and a few others
    which were missing from the original versions (whose font
    families remain available for reproducibility, although
    Ghostscript-based viewers will render using the 2.0 versions).
  * Improve the large-n efficiency of as.matrix(&lt;dist&gt;), thanks an R
    contributors effort, notably by Tim Taylor and Heather Turner,
    see PR#18660.
  * The default and numeric methods of all.equal() get a check.class
    option.
  * zapsmall() gets new optional arguments, function mFUN and min.d,
    for extra flexibility; fulfills a wish in PR#18199.  Also, it is
    now an implicit S4 generic in package methods.
  * The Rd filter for aspell() gains an ignore argument.
  * New generic function sort_by(), primarily useful for the
    data.frame method which can be used to sort rows of a data frame
    by one or more columns.
  * The icence headers for the RPC code in src/extra/xdr have been
    updated to use the GPL-compatible licence published by Oracle
    America in 2010.
  * New function pkg2HTML() in tools to create single-page HTML
    reference manuals for R packages.
  * The byte code evaluator now uses less C stack space for recursive
    calls to byte-compiled functions. It also makes more of an effort
    to avoid allocations for scalar return values.
  * New completion option backtick (disabled by default) allows
    non-syntactic completions to be wrapped in backquotes. This is
    currently only useful for Jupyter notebooks via the IRkernel
    package, and may cause problems for other backends.
  INSTALLATION:
  * The parser has been updated to work with bison 3.8.2, which is
    now used for the pre-generated parsers in gram.c, file.c, and
    gramRd.c. A few parser error messages have changed, which may
    affect code that relies on exact messages.
  INSTALLATION on a UNIX-ALIKE:
  * System valgrind headers are now required to use configure option
  - -with-valgrind-instrumentation with value 1 or 2.
  * configure will warn if it encounters a 32-bit build, as that is
    nowadays almost untested.
  * Environment variable R_SYSTEM_ABI is no longer used and so no
    longer recorded in etc/Renviron (it was not on Windows and was
    only ever used when preparing package tools).
  * If the libdeflate library and headers are available, libdeflate
    rather than libz is used to (de)compress R objects in lazy-load
    databases.  Typically tasks spend up to 5% of their time on such
    operations, although creating lazy-data databases is one of the
    exceptions.
    This can be suppressed if the library is available by the
    configure option --without-libdeflate-compression.
  * configure option --enable-lto=check has not worked reliably since
    2019 and has been removed.
  * The minimum autoconf requirement for a maintainer build has been
    increased to autoconf 2.71.
    It is intended to increase this to 2.72 for R 4.5.0: the
    distributed configure file was generated using 2.72.
  * The minimum version requirement for an external LAPACK has been
    reduced to 3.9.0.
  * No default C++ compiler is set if no C++17 compiler is detected:
    there is no longer an automatic fallback to C++14 or C++11.
    Compilers from the last five years should have sufficient
    support: for others macros CXX and CXXSTD can be set in file
    config.site to provide a fallback if needed.
    The Objective-C++ compiler now by default uses the standard
    selected by R for C++ (currently C++17) rather than the default
    standard for the C++ compiler (which on macOS is still C++98).
  INSTALLATION on macOS:
  * A new configure option --with-newAccelerate makes use of Apple's
    'new' BLAS / LAPACK interfaces in their Accelerate framework.
    Those interfaces are only available in macOS 13.3 or later, and
    building requires SDK 13.3 or later (from the Command Line Tools
    or Xcode 14.3 or later).
    By default the option uses new Accelerate for BLAS calls: to also
    use it for LAPACK use option --with-newAccelerate=lapack.  The
    later interfaces provide LAPACK 3.9.1 rather than 3.2.1: 3.9.1 is
    from 2021-04 and does not include the improved algorithms
    introduced in LAPACK 3.10.0 (including for BLAS calls).
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools44, an update of the Rtools43 toolchain.  It is
    based on GCC 13 and newer versions of MinGW-W64, binutils and
    libraries (targeting 64-bit Intel CPUs).  R-devel can no longer
    be built using Rtools43 without changes.
  * Rtools44 has experimental support for 64-bit ARM (aarch64) CPUs
    _via_ the LLVM 17 toolchain using lld, clang/flang-new and
    libc++.
  UTILITIES:
  * R CMD check notes when S4-style exports are used without
    declaring a strong dependence on package methods.
  * tools::checkRd() (used by R CMD check) detects more problems with
    \Sexpr-based dynamic content, including bad nesting of \Sexprs
    and invalid arguments.
  * tools::checkRd() now reports Rd titles and section names ending
    in a period; this is ignored by R CMD check unless environment
    variable _R_CHECK_RD_CHECKRD_MINLEVEL_ is set to -5 or smaller.
  * R CMD check now notes Rd files without an \alias, as long
    documented in 'Writing R Extensions' §1.3.1.  The check for a
    missing \description has been moved from tools::checkRd() to
    tools::checkRdContents().
  * R CMD check now visits inst/NEWS.Rd and OS-specific man
    subdirectories when checking Rd files.
  * tools::checkDocFiles() and tools::checkRdContents() now also
    check internal Rd files by default, but "specially" (ignoring
    missing documentation of arguments).
  * R CMD Rdiff gets option --useEx.
  * R CMD check now warns on non-portable uses of Fortran KIND such
    as INTEGER(KIND=4) and REAL(KIND=8).
    To see the failing lines set environment variable
    _R_CHECK_FORTRAN_KIND_DETAILS_ to a true value.
  * When checking Rd files, R CMD check now notes some of the "lost
    braces" that tools::checkRd() finds.  Typical problems are Rd
    macros missing the initial backslash (e.g., code{...}), in-text
    set notation (e.g., {1, 2}, where the braces need escaping), and
    \itemize lists with \describe-style entries of the form
    \item{label}{description}.
  * R CMD INSTALL (and hence check) will compile C++ code with
  - DR_NO_REMAP if environment variable _R_CXX_USE_NO_REMAP_ is set
    to a true value.  It is planned that this will in future become
    the default for compiling C++.
  * The new built-in Rd macro \dontdiff{} can be used to mark example
    code whose output should be ignored when comparing check output
    to reference output (tests/Examples/&lt;pkg&gt;-Ex.Rout.save).  The
    \dontdiff tag, like \donttest, is _not_ shown on the rendered
    help page, so provides a clean alternative to ##
    IGNORE_RDIFF_(BEGIN|END) comments.
  * R CMD build when there is no NAMESPACE, now uses the recommended
    exportPattern("^[^.]"), instead of exporting everything.
  * R CMD check now warns about non-ASCII characters in the NAMESPACE
    file (in addition to R files). Such packages are not portable and
    may fail to install on some platforms.
  C-LEVEL FACILITIES:
  * Headers R_ext/Applic.h and R-ext/Linpack.h used to include
    R_ext/BLAS.h although this was undocumented and unneeded by their
    documented entry points.  They no longer do so.
  * New function R_missing(), factored out from do_missing(), used to
    fix PR#18579.
  * SEXP type S4SXP has been renamed to OBJSXP to support
    experimenting with alternative object systems.  The S4SXP value
    can still be used in C code but is now deprecated.  Based on
    contributions from the R Consortium's Object-Oriented Programming
    Working Group.
  * New function pow1p(x,y) for accurate (1+x)^y.
  * mkCharLenCE was incorrectly documented to take a size_t length
    but was implemented with int (and character strings in R are
    limited to 2^31 - 1 bytes).
  DEPRECATED AND DEFUNCT:
  * data() no longer handles zipped data from long-defunct (since R
    2.13.0) --use-zip-data installations.
  * The legacy graphics devices pictex() and xfig() are now
    deprecated.  They do not support recent graphics enhancements and
    their font handling is rudimentary. The intention is to retain
    them for historical interest as long as they remain somewhat
    functional.
  * Support for encoding = "MacRoman" has been removed from the pdf()
    and postscript() devices - this was a legacy encoding supporting
    classic macOS up to 2001 and no longer has universal libiconv
    support.
  * is.R() is deprecated as no other S dialect is known to be in use
    (and this could only identify historical dialects, not future
    ones).
    Further information on calls can be obtained by setting the
    environment variable _R_DEPRECATED_IS_R_ to error which turns the
    deprecation warning into an error and so by default gives a
    traceback.  (This is done by R CMD check --as-cran.)
  * UseMethod() no longer forwards local variables assigned in the
    generic function into method call environments before evaluating
    the method body. This makes method calls behave more like
    standard function calls and makes method code easier to analyze
    correctly.
  * The twelve as.data.frame.&lt;class&gt;() methods which were deprecated
    only via _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ and in R CMD
    check --as-cran are formally deprecated now in favour of calling
    as.data.frame() or as.data.frame.vector().  The deprecation
    "check" now works also when as.data.frame() is S4 generic thanks
    to Ivan Krylov.
  * The default method for the directional comparison operators &lt;, &gt;,
    &lt;=, and &gt;= now signals an error when one of the operands is a
    language object, i.e. a symbol or a call.
  * For terms.formula(), deprecate abb and neg.out arguments
    _formally_ in addition to just documenting it.
  BUG FIXES:
  * The methods package is more robust to not being attached to the
    search path.  More work needs to be done.
  * pairwise.t.test() misbehaved when subgroups had 0 DF for
    variance, even with pool.sd = TRUE.  (PR#18594 by Jack Berry).
  * Probability distribution functions [dpq]&lt;distrib&gt;(x, *), but also
    bessel[IKJY](x, .) now consistently preserve attributes(x) when
    length(x) == 0, e.g., for a 2 x 0 matrix, thanks to Karolis
    Koncevičius' report PR#18509.
  * Group "Summary" computations such as sum(1:3, 4, na.rm = 5, NA,
    7, na.rm = LL) now give an error instead of either 17 or NN for
    LL true or false, as proposed by Ivan Krylov on the R-devel
    mailing list.  (This also means it is now an error to specify
    na.rm more than once.)
  * as.complex(x) now returns complex(real = x, imaginary = 0) for
    _all_ numerical and logical x, notably also for NA or
    NA_integer_.
  * Directories are now omitted by file.copy(, recursive = FALSE) and
    in file.append() (PR#17337).
  * gsub() and sub() are now more robust to integer overflow when
    reporting errors caused by too large input strings (PR#18346).
  * Top-level handlers are now more robust to attempts to remove a
    handler whilst handlers are running (PR#18508).
  * The handling of Alt+F4 in dialogs created on Windows using
    GraphApp has been fixed (PR#13870).
  * density() more consistently computes grid values for the
    FFT-based convolution, following Robert Schlicht's analysis and
    proposal in PR#18337, correcting density values typically by a
    factor of about 0.999.  Argument old.coords = TRUE provides back
    compatibility.
  * palette.colors() gains a name argument that defaults to FALSE
    controlling whether the vector of colours that is returned has
    names (where possible).  PR#18529.
  * tools::xgettext() no longer extracts the (non-translatable) class
    names from warningCondition and errorCondition calls.
  * S3method(&lt;gen&gt;, &lt;class&gt;, &lt;func&gt;) in the NAMESPACE file now works
    (again) when &lt;func&gt; is visible from the namespace, e.g.,
    imported, or in base.
  * getParseData(f) now also works for a function defined in the
    first of several &lt;pkg&gt;/R/*.R source files, thanks to Kirill
    Müller's report and Duncan Murdoch's patch in PR#16756.
  * Rd \Sexpr macros with nested #ifdef conditionals were not
    processed.
  * A non-blocking connection with non-default encoding (such as a
    socket) now correctly returns from readLines() after new data has
    arrived also when its EOF had been reached previously.  Thanks to
    Peter Meilstrup's report on R-devel and Ivan Krylov's report and
    patch proposal in PR#18555.
  * tools::checkRdContents() failed to detect empty argument
    descriptions when they spanned multiple lines, including those
    generated by prompt().  These cases are now noted by R CMD check.
  * Plain-text help no longer outputs spurious colons in the
    arguments list (for multi-line \item labels in the Rd source).
  * kappa() and rcond() work correctly in more cases; kappa(., norm =
    "2") now warns that it computes the 1-norm with (default) exact =
    FALSE; prompted by Mikael Jagan's quite comprehensive PR#18543.
  * Rd skeletons generated by prompt() or promptData() now use a
    dummy title (so R CMD build works).  tools::checkRdContents() has
    been updated to detect such template leftovers, including from
    promptPackage().
  * When S4 method dispatch fails because no method was found, the
    error message now includes the signature argument names; thanks
    to Michael Chirico's proposal on the R-devel list.
  * withAutoprint({ .. }) now preserves srcrefs previously lost,
    thanks to Andrew Simmons' report plus fix in PR#18572.
  * transform.data.frame() no longer adjusts names; in particular,
    untransformed variables are kept as-is, including those with
    syntactically invalid names (PR#17890).
  * The keep.source option for Rd \Sexpr blocks is no longer ignored.
  * The formula methods for t.test() and wilcox.test() now catch when
    paired is passed, addressing PR#14359; use Pair(x1, x2) ~ 1 for a
    paired test.
  * The level reported in the browser prompt was often too large. It
    now shows the number of browser contexts on the stack.
  * For cbind() and rbind(), the optional deparse.level argument is
    now properly passed to methods, thanks to Mikael Jagan's PR#18579
    and comments there.
  * Some error and warning messages for large ('long vector')
    matrix(v, nr, nc) and dim(m) &lt;- d are now correct about sizes,
    using long long formatting, fixing PR#18612 (and more) reported
    by Mikael Jagan.
  * readChar(useBytes = TRUE) now terminates strings even when the
    underlying connection uses extra spaces in the input buffer.
    This fixes problems with extra garbage seen with gzip
    connections, PR#18605.
  * Named capture in PCRE regular expressions now works also with
    more than 127 named groups (PR#18588).
  * Datetime functions are now robust against long jumps when dealing
    with internal time zone changes.  This avoids confusing warnings
    about an invalid time zone, previously triggered by turning
    warnings into errors or handling them via tryCatch (PR#17966,
    PR#17780).
  * Datetime functions now restore even an empty TZ environment
    variable after internal time zone changes (PR#17724).  This makes
    results of datetime functions with this (typically unintentional)
    setting more predictable.
  * drop.terms(*) now drops response as by default, keep.response =
    FALSE, fixing PR#18564 thanks to Mikael Jagan.
  * dummy.coef(.) now also works for lm()-models with character
    categorical predictor variables rather than factor ones, fixing
    PR#18635 reported by Jinsong Zhao.
  * formals(f) &lt;- formals(f) now also works for a function w/o
    arguments and atomic _constant_ body(f).
  * Correct as.function(&lt;invalid list&gt;, .)'s error message.
  * removeSource() is yet more thorough in finding and removing
    "srcref" and the other source references from parsed R language
    chunks, fixing PR#18638 thanks to Andrew Simmons.
  * dgeom() is more accurate now, notably when its result is very
    small, fixing PR#18642 thanks to the proposal of Morten Welinder,
    also improving other instances where C level binom_raw(x, n, ..)
    has x == 0 or x== n.
  * warning() with options(warn = 1) has improved output for
    multi-line messages.
  * axis.Date() and axis.POSIXct() now respect the par("lab") setting
    for the number of pretty() intervals.
  * Comparisons for language objects (which are based on deparsing)
    are now more careful about using accurate deparsed results
    (PR#18676).
  * Plain-text help (Rd2txt) now correctly preserves blank lines
    following single-line \dontrun code.
  * &lt;POSIXlt&gt;[*] no longer sets wrong "balanced" attribute, fixing
    PR#18681 thanks to Mikael Jagan.
  * str(&lt;classed-call&gt;) now deparses the call as expected, fixing
    PR#18684, reported by Dave Slager.
  * In Rd examples, code following the closing brace of a \dontrun,
    \dontshow or \donttest tag on the same line is no longer skipped
    when R CMD check runs the examples.
  * as.data.frame(matrix(*, ncol=0)) now gets valid names() and
    colnames(); reported by Davis Vaughan on the R-devel list.
  * Internal Mathlib function stirlerr(n) is now almost fully
    (52-bit) accurate for all n &gt;= ~5.9 and more accurate also in the
    range 1 -- 5.9.  This entails small ("after 12th decimal")
    changes in density functions, e.g., dgamma() in _some_ regions of
    their support.  The fix was partly prompted by Morten Welinder's
    PR#18640.
  * Numbers like 9876543.2 are now considered non-integer by Mathlib
    internal R_nonint(), amending original fix of PR#15734.
  * Rd comment lines no longer cause broken paragraphs in the
    rendered PDF and plain-text help. In code blocks, pure comment
    lines (starting with %) no longer produce an empty line.
  * xtabs(Freq ~ .) now consistently defaults to na.action = na.pass,
    using na.rm = FALSE (added as an argument) when summing over Freq
    (PR#17770).
  * tools::testInstalledPackage() is no longer silent about failures
    from running examples or tests and its return code no longer
    ignores failures from checking vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1718366400">- CHANGES IN R 4.4.1:
  C-LEVEL FACILITIES:
  * Functions R_atof and R_strtod declared in header R_ext/Utils.h
    are now documented in 'Writing R Extensions' and so formally part
    of the API.
  * The non-API entry points Rf_setSVector, Rf_StringFalse,
    Rf_StringTrue and Rf_isBlankString have been added to those
    reported by R CMD check.
  * The new function Rf_allocLang is now available. This provides an
    alternative to the idiom of calling Rf_allocList followed by
    SET_TYPEOF.
  UTILITIES:
  * R CMD check now reports as warnings what gfortran calls 'Fortran
    2018 deleted features', all of which have long been marked as
    'obsolescent' and some of which were deleted in Fortran 2008 or
    earlier.  Fortran compilers are no longer required to support
    these.
  BUG FIXES:
  * as.numeric(), scan(), type.convert() and other places which use
    the internal C function R_strtod now require a _non-empty_ digit
    sequence in a decimal or binary exponent.  This aligns with the
    C/POSIX standard for strtod and with ?NumericConstants.
  * as.data.frame(m, make.names=NA) now works correctly for a matrix
    m with NA's in row names.
  * The error message from &lt;POSIXlt&gt;[["hour"]] and similar now
    mentions *[[, "hour"]], as wished for in PR#17409 and proposed by
    Michael Chirico.
  * qbinom() and potentially qpois(), qnbinom(), no longer sometimes
    fail accurate inversion (of pbinom(), etc), thanks to Christopher
    Chang's report and patch in PR#18711.
  * The internal help server on Windows can again serve requests sent
    in quick succession, fixing a regression in R 4.4.0.
  * debugcall(&lt;S3Generic&gt;()) now also works when a corresponding
    S4-generic version is in the methods cache (PR#18143).
  * Package tools' toTitleCase(ch0) now returns character(0) when ch0
    is of zero length; fixing PR#18724, reported by David Hugh Jones.
  * R CMD check is no longer broken (without a check result and no
    explanation in 00check.log) for a package which declares an
    invalid VignetteBuilder in DESCRIPTION but has no vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1730376000">- CHANGES IN R 4.4.2:
  C-LEVEL FACILITIES:
  * The S-compatibility macros F77_COM and F77_COMDECL defined in
    header R_ext/RS.h are deprecated and will be removed shortly.  We
    could find no record of their use.
  BUG FIXES:
  * Mathlib function lgammacor(x) no longer warns about underflow to
    zero for large x.
  * Text widths and heights were incorrectly reported by the Quartz
    device if the drawing context didn't exist yet (typically when
    drawing off-screen to a window that is yet to appear, see
    PR#18591).
  * The Quartz device could segfault in cases where paths with spaces
    are used in the new glyph drawing API.  Thanks to Tomek
    Gieorgijewski (PR#18758).
  * On macOS in R CRAN builds, it is again possible to read
    little-endian UTF-16 text with a BOM from a connection using
    encoding="UTF-16".  Users building R from source should avoid
    using the system libiconv in macOS 14.1 and later.
  * methods' internal .requirePackage() now re-enables primitive
    method dispatch when needed; thanks to Ivan Krylov for
    demystifying CRAN package check failures on the R-devel mailing
    list.</changelog>
</package>
<package pkgid="24aae6460cfee0ef71594229bc7989aed77ceb8340f55a79ee27f3723193ee6e3b2fe1db27d2b9350e346f22d8251b51ca66ab4a22caadf6e180a8b0cd315159" name="R-core-doc" arch="x86_64">
  <version epoch="0" ver="4.4.2" rel="51.0.2.2.sr20241103"/>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1620302400">- To get in sync with d:l:R:autoCRAN the Matrix package's split
  in -devel was reversed.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339200">- improved spec file according to comments of dimstar in
  https://build.opensuse.org/request/show/892685</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339201">- CHANGES IN R 4.1.0:
  FUTURE DIRECTIONS:
  * It is planned that the 4.1.x series will be the last to support
    32-bit Windows, with production of binary packages for that
    series continuing until early 2023.
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Data set esoph in package datasets now provides the correct
    numbers of controls; previously it had the numbers of cases added
    to these.  (Reported by Alexander Fowler in PR#17964.)
  NEW FEATURES:
  * www.omegahat.net is no longer one of the repositories known by
    default to setRepositories().  (Nowadays it only provides source
    packages and is often unavailable.)
  * Function package_dependencies() (in package tools) can now use
    different dependency types for direct and recursive dependencies.
  * The checking of the size of tarball in R CMD check --as-cran
    &lt;pkg&gt; may be tweaked via the new environment variable
    _R_CHECK_CRAN_INCOMING_TARBALL_THRESHOLD_, as suggested in
    PR#17777 by Jan Gorecki.
  * Using c() to combine a factor with other factors now gives a
    factor, an ordered factor when combining ordered factors with
    identical levels.
  * apply() gains a simplify argument to allow disabling of
    simplification of results.
  * The format() method for class "ftable" gets a new option justify.
    (Suggested by Thomas Soeiro.)
  * New ...names() utility.  (Proposed by Neal Fultz in PR#17705.)
  * type.convert() now warns when its as.is argument is not
    specified, as the help file always said it _should_.  In that
    case, the default is changed to TRUE in line with its change in
    read.table() (related to stringsAsFactor) in R 4.0.0.
  * When printing list arrays, classed objects are now shown _via_
    their format() value if this is a short enough character string,
    or by giving the first elements of their class vector and their
    length.
  * capabilities() gets new entry "Rprof" which is TRUE when R has
    been configured with the equivalent of --enable-R-profiling (as
    it is by default).  (Related to Michael Orlitzky's report
    PR#17836.)
  * str(xS4) now also shows extraneous attributes of an S4 object
    xS4.
  * Rudimentary support for vi-style tags in rtags() and R CMD rtags
    has been added.  (Based on a patch from Neal Fultz in PR#17214.)
  * checkRdContents() is now exported from tools; it and also
    checkDocFiles() have a new option chkInternal allowing to check
    Rd files marked with keyword "internal" as well.  The latter can
    be activated for R CMD check via environment variable
    _R_CHECK_RD_INTERNAL_TOO_.
  * New functions numToBits() and numToInts() extend the raw
    conversion utilities to (double precision) numeric.
  * Functions URLencode() and URLdecode() in package utils now work
    on vectors of URIs.  (Based on patch from Bob Rudis submitted
    with PR#17873.)
  * path.expand() can expand ~user on most Unix-alikes even when
    readline is not in use.  It tries harder to expand ~, for example
    should environment variable HOME be unset.
  * For HTML help (both dynamic and static), Rd file links to help
    pages in external packages are now treated as references to
    topics rather than file names, and fall back to a file link only
    if the topic is not found in the target package. The earlier rule
    which prioritized file names over topics can be restored by
    setting the environment variable _R_HELP_LINKS_TO_TOPICS_ to a
    false value.
  * c() now removes NULL arguments before dispatching to methods,
    thus simplifying the implementation of c() methods, _but_ for
    back compatibility keeps NULL when it is the first argument.
    (From a report and patch proposal by Lionel Henry in PR#17900.)
  * Vectorize()'s result function's environment no longer keeps
    unneeded objects.
  * Function ...elt() now propagates visibility consistently with
    ..n.  (Thanks to Lionel Henry's PR#17905.)
  * capture.output() no longer uses non-standard evaluation to
    evaluate its arguments.  This makes evaluation of functions like
    parent.frame() more consistent.  (Thanks to Lionel Henry's
    PR#17907.)
  * packBits(bits, type="double") now works as inverse of
    numToBits().  (Thanks to Bill Dunlap's proposal in PR#17914.)
  * curlGetHeaders() has two new arguments, timeout to specify the
    timeout for that call (overriding getOption("timeout")) and TLS
    to specify the minimum TLS protocol version to be used for
    https:// URIs (_inter alia_ providing a means to check for sites
    using deprecated TLS versions 1.0 and 1.1).
  * For nls(), an optional constant scaleOffset may be added to the
    denominator of the relative offset convergence test for cases
    where the fit of a model is expected to be exact, thanks to a
    proposal by John Nash.  nls(*, trace=TRUE) now also shows the
    convergence criterion.
  * Numeric differentiation _via_ numericDeriv() gets new optional
    arguments eps and central, the latter for taking central divided
    differences.  The latter can be activated for nls() via
    nls.control(nDcentral = TRUE).
  * nls() now passes the trace and control arguments to getInitial(),
    notably for all self-starting models, so these can also be fit in
    zero-noise situations via a scaleOffset.  For this reason, the
    initial function of a selfStart model must now have ... in its
    argument list.
  * bquote(splice = TRUE) can now splice expression vectors with
    attributes: this makes it possible to splice the result of
    parse(keep.source = TRUE).  (Report and patch provided by Lionel
    Henry in PR#17869.)
  * textConnection() gets an optional name argument.
  * get(), exists(), and get0() now signal an error if the first
    argument has length greater than 1.  Previously additional
    elements were silently ignored.  (Suggested by Antoine Fabri on
    R-devel.)
  * R now provides a shorthand notation for creating functions, e.g.
    \(x) x + 1 is parsed as function(x) x + 1.
  * R now provides a simple native forward pipe syntax |&gt;.  The
    simple form of the forward pipe inserts the left-hand side as the
    first argument in the right-hand side call.  The pipe
    implementation as a syntax transformation was motivated by
    suggestions from Jim Hester and Lionel Henry.
  * all.equal(f, g) for functions now by default also compares their
    environment(.)s, notably via new all.equal method for class
    function.  Comparison of nls() fits, e.g., may now need
    all.equal(m1, m2, check.environment = FALSE).
  * .libPaths() gets a new option include.site, allowing to _not_
    include the site library.  (Thanks to Dario Strbenac's suggestion
    and Gabe Becker's PR#18016.)
  * Lithuanian translations are now available.  (Thanks to Rimantas
    Zakauskas.)
  * names() now works for DOTSXP objects.  On the other hand, in
    R-lang, the R language manual, we now warn against relying on the
    structure or even existence of such dot-dot-dot objects.
  * all.equal() no longer gives an error on DOTSXP objects.
  * capabilities("cairo") now applies only to the file-based devices
    as it is now possible (if very unusual) to build R with Cairo
    support for those but not for X11().
  * There is optional support for tracing the progress of
    loadNamespace() - see its help.
  * (Not Windows.)  l10n_info() reports an additional element, the
    name of the encoding as reported by the OS (which may differ from
    the encoding part (if any) of the result from
    Sys.getlocale("LC_CTYPE").
  * New function gregexec() which generalizes regexec() to find _all_
    disjoint matches and well as all substrings corresponding to
    parenthesized subexpressions of the given regular expression.
    (Contributed by Brodie Gaslam.)
  * New function charClass() in package utils to query the
    wide-character classification functions in use (such as
    iswprint).
  * The names of quantile()'s result no longer depend on the global
    getOption("digits"), but quantile() gets a new optional argument
    digits = 7 instead.
  * grep(), sub(), regexp and variants work considerably faster for
    long factors with few levels.  (Thanks to Michael Chirico's
    PR#18063.)
  * Provide grouping of x11() graphics windows within a window
    manager such as Gnome or Unity; thanks to a patch by Ivan Krylov
    posted to R-devel.
  * The split() method for class data.frame now allows the f argument
    to be specified as a formula.
  * sprintf now warns on arguments unused by the format string.
  * New palettes "Rocket" and "Mako" for hcl.colors() (approximating
    palettes of the same name from the 'viridisLite' package).
    Contributed by Achim Zeileis.
  * The base environment and its namespace are now locked (so one can
    no longer add bindings to these or remove from these).
  * Rterm handling of multi-byte characters has been improved,
    allowing use of such characters when supported by the current
    locale.
  * Rterm now accepts ALT+ +xxxxxxxx sequences to enter Unicode
    characters as hex digits.
  * Environment variable LC_ALL on Windows now takes precedence over
    LC_CTYPE and variables for other supported categories, matching
    the POSIX behaviour.
  * duplicated() and anyDuplicated() are now optimized for integer
    and real vectors that are known to be sorted via the ALTREP
    framework. Contributed by Gabriel Becker via PR#17993.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 14
    and so packages that provide graphics devices should be
    reinstalled.
  * Graphics devices should now specify deviceVersion to indicate
    what version of the graphics engine they support.
  * Graphics devices can now specify deviceClip.  If TRUE, the
    graphics engine will never perform any clipping of output itself.
    The clipping that the graphics engine does perform (for both
    canClip = TRUE and canClip = FALSE) has been improved to avoid
    producing unnecessary artifacts in clipped output.
  * The grid package now allows gpar(fill) to be a linearGradient(),
    a radialGradient(), or a pattern().  The viewport(clip) can now
    also be a grob, which defines a clipping path, and there is a new
    viewport(mask) that can also be a grob, which defines a mask.
    These new features are only supported so far on the Cairo-based
    graphics devices and on the pdf() device.
  * (Not Windows.)  A warning is given when a Cairo-based type is
    specified for a png(), jpeg(), tiff() or bmp() device but Cairo
    is unsupported (so type = "Xlib" is tried instead).
  * grSoftVersion() now reports the versions of FreeType and
    FontConfig if they are used directly (not _via_ Pango), as is
    most commonly done on macOS.
  C-LEVEL FACILITIES:
  * The _standalone_ libRmath math library and R's C API now provide
    log1pexp() again as documented, and gain log1mexp().
  INSTALLATION on a UNIX-ALIKE:
  * configure checks for a program pkgconf if program pkg-config is
    not found.  These are now only looked for on the path (like
    almost all other programs) so if needed specify a full path to
    the command in PKG_CONFIG, for example in file config.site.
  * C99 function iswblank is required - it was last seen missing ca
    2003 so the workaround has been removed.
  * There are new configure options --with-internal-iswxxxxx,
  - -with-internal-towlower and --with-internal-wcwidth which allows
    the system functions for wide-character classification,
    case-switching and width (wcwidth and wcswidth) to be replaced by
    internal ones.  The first has long been used on macOS, AIX (and
    Windows) but this enables it to be unselected there and selected
    for other platforms (it is the new default on Solaris).  The
    second is new in this version of R and is selected by default on
    macOS and Solaris.  The third has long been the default and
    remains so as it contains customizations for East Asian
    languages.
    System versions of these functions are often minimally
    implemented (sometimes only for ASCII characters) and may not
    cover the full range of Unicode points: for example Solaris (and
    Windows) only cover the Basic Multilingual Plane.
  * Cairo installations without X11 are more likely to be detected by
    configure, when the file-based Cairo graphics devices will be
    available but not X11(type = "cairo").
  * There is a new configure option --with-static-cairo which is the
    default on macOS.  This should be used when only static cairo
    (and where relevant, Pango) libraries are available.
  * Cairo-based graphics devices on platforms without Pango but with
    FreeType/FontConfig will make use of the latter for font
    selection.
  LINK-TIME OPTIMIZATION on a UNIX-ALIKE:
  * Configuring with flag --enable-lto=R now also uses LTO when
    installing the recommended packages.
  * R CMD INSTALL and R CMD SHLIB have a new flag --use-LTO to use
    LTO when compiling code, for use with R configured with
  - -enable-lto=R.  For R configured with --enable-lto, they have
    the new flag --no-use-LTO.
    Packages can opt in or out of LTO compilation _via_ a UseLTO
    field in the DESCRIPTION file.  (As usual this can be overridden
    by the command-line flags.)
  BUILDING R on Windows:
  * for GCC &gt;= 8, FC_LEN_T is defined in config.h and hence character
    lengths are passed from C to Fortran in _inter alia_ BLAS and
    LAPACK calls.
  * There is a new text file src/gnuwin32/README.compilation, which
    outlines how C/Fortran code compilation is organized and
    documents new features:
  * R can be built with Link-Time Optimization with a suitable
    compiler - doing so with GCC 9.2 showed several
    inconsistencies which have been corrected.
  * There is support for cross-compiling the C and Fortran code
    in R and standard packages on suitable (Linux) platforms.
    This is mainly intended to allow developers to test later
    versions of compilers - for example using GCC 9.2 or 10.x has
    detected issues that GCC 8.3 in Rtools40 does not.
  * There is experimental support for cross-building R packages
    with C, C++ and/or Fortran code.
  * The R installer can now be optionally built to support a single
    architecture (only 64-bit or only 32-bit).
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++14 where
    available (which it is on all currently checked platforms): if
    not (as before) C++11 is used if available otherwise C++ is not
    supported.
    Packages which specify C++11 will still be installed using C++11.
    C++14 compilers may give deprecation warnings, most often for
    std::random_shuffle (deprecated in C++14 and removed in C++17).
    Either specify C++11 (see 'Writing R Extensions') or modernize
    the code and if needed specify C++14.  The latter has been
    supported since R 3.4.0 so the package's DESCRIPTION would need
    to include something like
    Depends: R (&gt;= 3.4)
  PACKAGE INSTALLATION on Windows:
  * R CMD INSTALL and R CMD SHLIB make use of their flag --use-LTO
    when the LTO_OPT make macro is set in file etc/${R_ARCH}/Makeconf
    or in a personal/site Makevars file.  (For details see 'Writing R
    Extensions' SS4.5.)
    This provides a valuable check on code consistency.  It does work
    with GCC 8.3 as in Rtools40, but that does not detect everything
    the CRAN checks with current GCC do.
  PACKAGE INSTALLATION on macOS:
  * The default personal library directory on builds with
  - -enable-aqua (including CRAN builds) now differs by CPU type,
    one of
    ~/Library/R/x86_64/x.y/library
    ~/Library/R/arm64/x.y/library
    This uses the CPU type R (and hence the packages) were built for,
    so when a x86_64 build of R is run under Rosetta emulation on an
    arm64 Mac, the first is used.
  UTILITIES:
  * R CMD check can now scan package functions for bogus return
    statements, which were possibly intended as return() calls (wish
    of PR#17180, patch by Sebastian Meyer). This check can be
    activated via the new environment variable
    _R_CHECK_BOGUS_RETURN_, true for --as-cran.
  * R CMD build omits tarballs and binaries of previous builds from
    the top-level package directory.  (PR#17828, patch by Sebastian
    Meyer.)
  * R CMD check now runs sanity checks on the use of LazyData, for
    example that a data directory is present and that
    LazyDataCompression is not specified without LazyData and has a
    documented value.  For packages with large LazyData databases
    without specifying LazyDataCompression, there is a reference to
    the code given in 'Writing R Extensions' SS1.1.6 to test the
    choice of compression (as in all the CRAN packages tested a
    non-default method was preferred).
  * R CMD build removes LazyData and LazyDataCompression fields from
    the DESCRIPTION file of packages without a data directory.
  ENCODING-RELATED CHANGES:
  * The parser now treats \Unnnnnnnn escapes larger than the upper
    limit for Unicode points (\U10FFFF) as an error as they cannot be
    represented by valid UTF-8.
    Where such escapes are used for outputting non-printable
    (including unassigned) characters, 6 hex digits are used (rather
    than 8 with leading zeros).  For clarity, braces are used, for
    example \U{0effff}.
  * The parser now looks for non-ASCII spaces on Solaris (as
    previously on most other OSes).
  * There are warnings (including from the parser) on the use of
    unpaired surrogate Unicode points such as \uD834.  (These cannot
    be converted to valid UTF-8.)
  * Functions nchar(), tolower(), toupper() and chartr() and those
    using regular expressions have more support for inputs with a
    marked Latin-1 encoding.
  * The character-classification functions used (by default) to
    replace the system iswxxxxx functions on Windows, macOS and AIX
    have been updated to Unicode 13.0.0.
    The character-width tables have been updated to include new
    assignments in Unicode 13.0.0.
  * The code for evaluating default (extended) regular expressions
    now uses the same character-classification functions as the rest
    of R (previously they differed on Windows, macOS and AIX).
  * There is a build-time option to replace the system's
    wide-character wctrans C function by tables shipped with R: use
    configure option --with-internal-towlower or (on Windows)
  - DUSE_RI18N_CASE in CFLAGS when building R.  This may be needed
    to allow tolower() and toupper() to work with Unicode characters
    beyond the Basic Multilingual Plane where not supported by system
    functions (e.g. on Solaris where it is the new default).
  * R is more careful when truncating UTF-8 and other multi-byte
    strings that are too long to be printed, passed to the system or
    libraries or placed into an internal buffer.  Truncation will no
    longer produce incomplete multibyte characters.
  DEPRECATED AND DEFUNCT:
  * Function plclust() from the package stats and
    package.dependencies(), pkgDepends(), getDepList(),
    installFoundDepends(), and vignetteDepends() from package tools
    are defunct.
  * Defunct functions checkNEWS() and readNEWS() from package tools
    and CRAN.packages() from utils have been removed.
  * R CMD config CXXCPP is defunct (it was deprecated in R 3.6.2).
  * parallel::detectCores() drops support for Irix (retired in 2013).
  * The LINPACK argument to chol.default(), chol2inv(),
    solve.default() and svd() has been defunct since R 3.1.0.  It was
    silently ignored up to R 4.0.3 but now gives an error.
  * Subsetting/indexing, such as ddd[*] or ddd$x on a DOTSXP
    (dot-dot-dot) object ddd has been disabled; it worked by accident
    only and was undocumented.
  BUG FIXES:
  * Many more C-level allocations (mainly by malloc and strdup) are
    checked for success with suitable alternative actions.
  * Bug fix for replayPlot(); this was turning off graphics engine
    display list recording if a recorded plot was replayed in the
    same session.  The impact of the bug became visible if resize the
    device after replay OR if attempted another savePlot() after
    replay (empty display list means empty screen on resize or empty
    saved plot).
  * R CMD check etc now warn when a package exports non-existing S4
    classes or methods, also in case of no "methods" presence.
    (Reported by Alex Bertram; reproducible example and patch by
    Sebastian Meyer in PR#16662.)
  * boxplot() now also accepts calls for labels such as ylab, the
    same as plot().  (Reported by Marius Hofert.)
  * The help page for xtabs() now correctly states that addNA is
    setting na.action = na.pass among others.  (Reported as PR#17770
    by Thomas Soeiro.)
  * The R CMD check &lt;pkg&gt; gives a longer and more comprehensible
    message when DESCRIPTION misses dependencies, e.g., in Imports:.
    (Thanks to the contributors of PR#17179.)
  * update.default() now calls the generic update() on the formula to
    work correctly for models with extended formulas.  (As reported
    and suggested by Neal Fultz in PR#17865.)
  * The horizontal position of leaves in a dendrogram is now correct
    also with center = FALSE.  (PR#14938, patch from Sebastian
    Meyer.)
  * all.equal.POSIXt() no longer warns about and subsequently ignores
    inconsistent "tzone" attributes, but describes the difference in
    its return value (PR#17277).  This check can be disabled _via_
    the new argument check.tzone = FALSE as suggested by Sebastian
    Meyer.
  * as.POSIXct() now populates the "tzone" attribute from its tz
    argument when x is a logical vector consisting entirely of NA
    values.
  * x[[2^31]] &lt;- v now works.  (Thanks to the report and patch by
    Suharto Anggono in PR#17330.)
  * In log-scale graphics, axis() ticks and label positions are now
    computed more carefully and symmetrically in their range,
    typically providing _more_ ticks, fulfilling wishes in PR#17936.
    The change really corresponds to an improved axisTicks() (package
    grDevices), potentially influencing grid and lattice, for
    example.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now correct to at
    least five digits where it was catastrophically wrong,
    previously.
  * sum(df) and similar "Summary"- and "Math"-group member functions
    now work for data frames df with logical columns, notably also of
    zero rows.  (Reported to R-devel by Martin "b706".)
  * unsplit() had trouble with tibbles due to unsound use of rep(NA,
    len)-indexing, which should use NA_integer_ (Reported to R-devel
    by Mario Annau.)
  * pnorm(x, log.p = TRUE) underflows to -Inf slightly later.
  * show(&lt;hidden S4 generic&gt;) prints better and without quotes for
    non-hidden S4 generics.
  * read.table() and relatives treated an "NA" column name as missing
    when check.names = FALSE PR#18007.
  * Parsing strings containing UTF-16 surrogate pairs such as
    "\uD834\uDD1E" works better on some (uncommon) platforms.
    sprintf("%X", utf8ToInt("\uD834\uDD1E")) should now give "1D11E"
    on all platforms.
  * identical(x,y) is no longer true for differing DOTSXP objects,
    fixing PR#18032.
  * str() now works correctly for DOTSXP and related exotics, even
    when these are doomed.
    Additionally, it no longer fails for lists with a class and
    "irregular" method definitions such that e.g. lapply(*) will
    necessarily fail, as currently for different igraph objects.
  * Too long lines in environment files (e.g. Renviron) no longer
    crash R. This limit has been increased to 100,000 bytes.
    (PR#18001.)
  * There is a further workaround for FreeType giving incorrect
    italic font faces with cairo-based graphics devices on macOS.
  * add_datalist(*, force = TRUE) (from package tools) now actually
    updates an existing data/datalist file for new content.  (Thanks
    to a report and patch by Sebastian Meyer in PR#18048.)
  * cut.Date() and cut.POSIXt() could produce an empty last interval
    for breaks = "months" or breaks = "years".  (Reported as PR#18053
    by Christopher Carbone.)
  * Detection of the encoding of 'regular' macOS locales such as
    en_US (which is UTF-8) had been broken by a macOS change:
    fortunately these are now rarely used with en_US.UTF-8 being
    preferred.
  * sub() and gsub(pattern, repl, x, *) now keep attributes of x such
    as names() also when pattern is NA (PR#18079).
  * Time differences ("difftime" objects) get a replacement and a
    rep() method to keep "units" consistent.  (Thanks to a report and
    patch by Nicolas Bennett in PR#18066.)
  * The \RdOpts macro, setting defaults for \Sexpr options in an Rd
    file, had been ineffective since R 2.12.0: it now works again.
    (Thanks to a report and patch by Sebastian Meyer in PR#18073.)
  * mclapply and pvec no longer accidentally terminate parallel
    processes started before by mcparallel or related calls in
    package parallel (PR#18078).
  * grep and other functions for evaluating (extended) regular
    expressions handle in Unicode also strings not explicitly flagged
    UTF-8, but flagged native when running in UTF-8 locale.
  * Fixed a crash in fifo implementation on Windows (PR#18031).
  * Binary mode in fifo on Windows is now properly detected from
    argument open (PR#15600, PR#18031).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1622808000">- The line %{__install} -m 755 -d %{_infodir}
  no longer works in TW or Factory.
  But without that line it works everywhere. So this instruction
  was commented out of the spec file.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1628596800">- CHANGES IN R 4.1.1:
  NEW FEATURES:
  * require(pkg, quietly = TRUE) is quieter and in particular does
    not warn if the package is not found.
  DEPRECATED AND DEFUNCT:
  * Use of ftp:// URIs should be regarded as deprecated, with
    on-going support confined to method = "libcurl" and not routinely
    tested.  (Nowadays no major browser supports them.)
  * The non-default method = "internal" is deprecated for http:// and
    ftp:// URIs for both download.file and url.
  * On Windows, method = "wininet" is deprecated for http://,
    https:// and ftp:// URIs for both download.file and url.  (A
    warning is only given for ftp://.)
    For ftp:// URIs the default method is now "libcurl" if available
    (which it is on CRAN builds).
    method = "wininet" remains the default for http:// and https://
    URIs but if libcurl is available, using method = "libcurl" is
    preferred.
  INSTALLATION:
  * make check now works also without a LaTeX installation.  (Thanks
    to Sebastian Meyer's PR#18103.)
  BUG FIXES:
  * make check-devel works again in an R build configured with
  - -without-recommended-packages.
  * qnbinom(p, size, mu) for large size/mu is correct now in a range
    of cases (PR#18095); similarly for the (size, prob)
    parametrization of the negative binomial.  Also qpois() and
    qbinom() are better and or faster for extreme cases.  The
    underlying C code has been modularized and is common to all four
    cases of discrete distributions.
  * gap.axis is now part of the axis() arguments which are passed
    from bxp(), and hence boxplot().  (Thanks to Martin Smith's
    report and suggestions in PR#18109.)
  * .First and .Last can again be set from the site profile.
  * seq.int(from, to, *) and seq.default(..) now work better in large
    range cases where from-to is infinite where the two boundaries
    are finite.
  * all.equal(x,y) now returns TRUE correctly also when several
    entries of abs(x) and abs(y) are close to .Machine$double.xmax,
    the largest finite numeric.
  * model.frame() now clears the object bit when removing the class
    attribute of a value via na.action (PR#18100).
  * charClass() now works with multi-character strings on Windows
    (PR#18104, fixed by Bill Dunlap).
  * encodeString() on Solaris now works again in Latin-1 encoding on
    characters represented differently in UTF-8.  Support for
    surrogate pairs on Solaris has been improved.
  * file.show() on Windows now works with non-ASCII path names
    representable in the current native encoding (PR#18132).
  * Embedded R on Windows can now find R home directory via the
    registry even when installed only for the current user
    (PR#18135).
  * pretty(x) with finite x now returns finite values also in the
    case where the extreme x values are close in size to the maximal
    representable number .Machine$double.xmax.
    Also, it's been tweaked for very small ranges and when a boundary
    is close (or equal) to zero; e.g., pretty(c(0,1e-317)) no longer
    has negative numbers, currently still warning about a very small
    range, and pretty(2^-(1024 - 2^-1/(c(24,10)))) is more accurate.
  * The error message for not finding vignette files when weaving has
    correct file sizes now. (Thanks to Sebastian Meyer's PR#18154.)
  * dnbinom(20, &lt;large&gt;, 1) now correctly gives 0, and similar cases
    are more accurate with underflow precaution.  (Reported by Francisco Vera Alcivar in PR#18072.)</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635163200">- repaired https://bugzilla.suse.com/show_bug.cgi?id=1191380
  (rpmacros now go to rpmmacrodir)
- minor clean-ups in spec file</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635768000">- CHANGES IN R 4.1.2:
  C-LEVEL FACILITIES:
  * The workaround in headers R.h and Rmath.h (using namespace std;)
    for the Oracle Developer Studio compiler is no longer needed now
    C++11 is required so has been removed.  A couple more usages of
    log() (which should have been std::log()) with an int argument
    are reported on Solaris.
  * The undocumented limit of 4095 bytes on messages from the
    S-compatibility macros PROBLEM and MESSAGE is now documented and
    longer messages will be silently truncated rather than
    potentially causing segfaults.
  * If the R_NO_SEGV_HANDLER environment variable is non-empty, the
    signal handler for SEGV/ILL/BUS signals (which offers recovery
    user interface) is not set. This allows more reliable debugging
    of crashes that involve the console.
  DEPRECATED AND DEFUNCT:
  * The legacy S-compatibility macros PROBLEM, MESSAGE, ERROR, WARN,
    WARNING, RECOVER, ... are deprecated and will be hidden in R
    4.2.0. R's native interface of Rf_error and Rf_warning has long
    been preferred.
  BUG FIXES:
  * .mapply(F, dots, .) no longer segfaults when dots is not a list
    and uses match.fun(F) as always documented; reported by Andrew
    Simmons in PR#18164.
  * hist(&lt;Date&gt;, ...) and hist(&lt;POSIXt&gt;, ...)  no longer pass
    arguments for rect() (such as col and density) to axis().
    (Thanks to Sebastian Meyer's PR#18171.)
  * \Sexpr{ch} now preserves Encoding(ch). (Thanks to report and
    patch by Jeroen Ooms in PR#18152.)
  * Setting the RNG to "Marsaglia-Multicarry" e.g., by RNGkind(), now
    warns in more places, thanks to Andr'e Gillibert's report and
    patch in PR#18168.
  * gray(numeric(), alpha=1/2) no longer segfaults, fixing PR#18183,
    reported by Till Krenz.
  * Fixed dnbinom(x, size=&lt;very_small&gt;, .., log=TRUE) regression,
    reported by Martin Morgan.
  * as.Date.POSIXlt(x) now keeps names(x), thanks to Davis Vaughan's
    report and patch in PR#18188.
  * model.response() now strips an "AsIs" class typically, thanks to
    Duncan Murdoch's report and other discussants in PR#18190.
  * try() is considerably faster in case of an error and long call,
    as e.g., from some do.call().  Thanks to Alexander Kaever's
    suggestion posted to R-devel.
  * qqline(y = &lt;object&gt;) such as y=I(.), now works, see also
    PR#18190.
  * Non-integer mgp par() settings are now handled correctly in
    axis() and mtext(), thanks to Mikael Jagan and Duncan Murdoch's
    report and suggestion in PR#18194.
  * formatC(x) returns length zero character() now, rather than ""
    when x is of length zero, as documented, thanks to Davis
    Vaughan's post to R-devel.
  * removeSource(fn) now retains (other) attributes(fn).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1647000000">- CHANGES IN R 4.1.3:
  NEW FEATURES:
  * The default version of Bioconductor has been changed to 3.14.
    (This is used by setRepositories and the menus in GUIs.)
  UTILITIES:
  * R CMD check --as-cran has a workaround for a bug in versions of
    file up to at least 5.41 which mis-identify DBF files last
    changed in 2022 as executables.
  C-LEVEL FACILITIES:
  * The legacy S-compatibility macros SINGLE_* in R_ext/Constants.h
    (included by R.h) are deprecated and will be removed in R 4.2.0.
  BUG FIXES:
  * Initialization of self-starting nls() models with initialization
    functions following the pre-R-4.1.0 API (without the ...
    argument) works again for now, with a deprecation warning.
  * Fixed quoting of ~autodetect~ in Java setting defaults to avoid
    inadvertent user lookup due to leading ~, reported in PR#18231 by
    Harold Gutch.
  * substr(., start, stop) &lt;- v now treats _negative_ stop values
    correctly.  Reported with a patch in PR#18228 by Brodie Gaslam.
  * Subscripting an array x without dimnames by a
    length(dim(x))-column character matrix gave "random" non-sense,
    now an error; reported in PR#18244 by Mikael Jagan.
  * ...names() now matches names(list(...)) closely, fixing PR#18247.
  * all.equal(*, scale = s) now works as intended when length(s) &gt; 1,
    partly thanks to Michael Chirico's PR#18272.
  * print(x) for long vectors x now also works for named atomic
    vectors or lists and prints the correct number when reaching the
    getOption("max.print") limit; partly thanks to a report and
    proposal by Hugh Parsonage to the R-devel list.
  * all.equal(&lt;selfStart&gt;, *) no longer signals a deprecation
    warning.
  * reformulate(*, response=r) gives a helpful error message now when
    length(r) &gt; 1, thanks to Bill Dunlap's PR#18281.
  * Modifying globalCallingHandlers inside withCallingHandlers() now
    works or fails correctly, thanks to Henrik Bengtsson's PR#18257.
  * hist(&lt;Date&gt;, breaks = "days") and hist(&lt;POSIXt&gt;, breaks = "secs")
    no longer fail for inputs of length 1.
  * qbeta(.001, .9, .009) and similar cases now converge correctly
    thanks to Ben Bolker's report in PR#17746.
  * window(x, start, end) no longer wrongly signals "'start' cannot
    be after 'end'", fixing PR#17527 and PR#18291.
  * data() now checks that its (rarely used) list argument is a
    character vector - a couple of packages passed other types and
    gave incorrect results.
  * which() now checks its arr.ind argument is TRUE rather coercing
    to logical and taking the first element - which gave incorrect
    results in package code.
  * model.weights() and model.offset() more carefully extract their
    model components, thanks to Ben Bolker and Tim Taylor's R-devel
    post.
  * list.files(recursive = TRUE) now shows all broken symlinks
    (previously, some of them may have been omitted, PR#18296).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1650628800">- CHANGES IN R 4.2.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * The formula method of aggregate() now matches the generic in
    naming its first argument x (resolving PR#18299 by Thomas
    Soeiro).
    This means that calling aggregate() with a formula as a named
    first argument requires name formula in earlier versions of R and
    name x now, so portable code should not name the argument (code
    in many packages did).
  * Calling &amp;&amp; or || with either argument of length greater than one
    now gives a warning (which it is intended will become an error).
  * Calling if() or while() with a condition of length greater than
    one gives an error rather than a warning.  Consequently,
    environment variable _R_CHECK_LENGTH_1_CONDITION_ no longer has
    any effect.
  * Windows users should consult the WINDOWS section below for some
    profound changes including
  * Support for 32-bit builds has been dropped.
  * UTF-8 locales are used where available.
  * The default locations for the R installation and personal
    library folder have been changed.
    Thanks to Tomas Kalibera for months of work on the Windows port
    for this release.
  NEW FEATURES:
  * matrix(x, n, m) now warns in more cases where length(x) differs
    from n * m, as suggested by Abby Spurdle and Wolfgang Huber in
    Feb 2021 on the R-devel mailing list.
    This warning can be turned into an error by setting environment
    variable _R_CHECK_MATRIX_DATA_ to TRUE: R CMD check --as-cran
    does so unless it is already set.
  * Function file_test() in package utils gains tests for symlinks,
    readability and writability.
  * capabilities("libxml") is now false.
    The description of capabilities("http/ftp") now reflects that it
    refers to the default method, no longer the internal one.
  * simplify2array() gains an except argument for controlling the
    exceptions used by sapply().
  * Environment variables R_LIBS_USER and R_LIBS_SITE are both now
    set to the R system default if unset or empty, and can be set to
    NULL to indicate an empty list of user or site library
    directories.
  * The warning for axis()(-like) calls in cases of relatively small
    ranges (typically in log-scale situations) is slightly improved
    _and_ suppressed from explicit calls to .axisPars() as has always
    been the intention.
  * The contrasts setter function `contrasts&lt;-` gains an explicit
    default how.many = NULL rather than just using missing(how.many).
  * grid.pretty() gains a new optional argument n = 5.
  * There is a new function .pretty() with option bounds as a
    technical-utility version of pretty().  It and pretty() gain a
    new argument f.min with a better than back-compatible default.
  * Function grDevices::axisTicks() and related functions such as
    graphics::axis() work better, notably for the log scale; partly
    because of the pretty() improvements, but also because care is
    taken e.g., when ylim is finite but diff(ylim) is infinite.
  * nclass.FD() gains a digits option.
  * The R Mathlib internal C function bd0() (called indirectly from a
    dozen probability density and distribution functions such as
    dpois(), dbinom(), dgamma(), pgamma() _etc_) has been
    complemented by a more sophisticated and (mostly) more accurate C
    function ebd0(), currently called only by internal dpois_raw()
    improving accuracy for R level dpois() and potentially others
    calling it such as dnbinom(), dgamma() or pgamma().  (Thanks to
    Morten Welinder's PR#15628.)
  * write.ftable() gains sep = " " argument as suggested by Thomas
    Soeiro.
  * The names of the locale categories supported by R's
    Sys.getlocale() and Sys.setlocale() are now provided by variable
    .LC.categories in the base namespace.
  * The Date and POSIXt methods for hist() and the histogram method
    for plot() now also use the new default col = "lightgray" in
    consistency with the corresponding change to hist()'s default for
    R 4.0.0.
  * hist.default() gains new fuzz argument, and the histogram plot
    method no longer uses fractional axis ticks when displaying
    counts ("Frequency").
  * mapply() and hence Map() now also obey the "max-or-0-if-any"
    recycling rule, such that, e.g., Map(`+`, 1:3, 1[0]) is valid
    now.
  * as.character(&lt;obj&gt;) for "hexmode" or "octmode" objects now
    fulfils the important basic rule as.character(x)[j] ===
    as.character(x[j]).
  * The set utility functions, notably intersect() have been tweaked
    to be more consistent and symmetric in their two set arguments,
    also preserving a common mode.
  * substr(ch, start,end) &lt;- new now e.g., preserves names(ch); ditto
    for substring(), thanks to a patch from Brodie Gaslam.
  * plot(&lt;lm&gt;) gains a extend.ylim.f argument, in partial response to
    PR#15285; further PR#17784 is fixed thanks to several
    contributors and a patch by Elin Waring.  The Cook's dist
    contours get customizable via cook.col and cook.lty with a
    different default color and their legend is nicer by default and
    customizable via cook.legendChanges.
  * Attempting to subset an object that is not subsettable now
    signals an error of class notSubsettableError. The
    non-subsettable object is contained in the object field of the
    error condition.
  * Subscript-out-of-bounds errors are now signaled as errors of
    class subscriptOutOfBoundsError.
  * Stack-overflow errors are now signaled as errors inheriting from
    class stackOverflowError. See ?stackOverflowError for more
    details.
  * New partly experimental Sys.setLanguage() utility, solving the
    main problem of PR#18055.
  * gettext() and gettextf() get a new option trim = TRUE which when
    set to false allows translations for strings such as "Execution
    halted\n" typical for C code.
  * An experimental implementation of hash tables is now available.
    See ?hashtab for more details.
  * identical() gains a extptr.as.ref argument for requesting that
    external pointer objects be compared as reference objects.
  * reorder() gets an argument decreasing which it passes to sort()
    for level creation; based on the wish and patch by Thomas Soeiro
    in PR#18243.
  * as.vector() gains a data.frame method which returns a simple
    named list, also clearing a long standing 'FIXME' to enable
    as.vector(&lt;data.frame&gt;, mode="list").  This breaks code relying
    on as.vector(&lt;data.frame&gt;) to return the unchanged data frame.
  * legend() is now vectorized for arguments cex, x.intersp, and
    text.width.  The latter can now also be specified as a vector
    (one element for each column of the legend) or as NA for
    computing a proper column wise maximum value of strwidth(legend).
    The argument y.intersp can be specified as a vector with one
    entry for each row of the legend.
    legend() also gains new arguments title.cex and title.font.
    Thanks to Swetlana Herbrandt.
  * Deparsing no longer remaps attribute names dim, dimnames, levels,
    names and tsp to historical S-compatible names (which structure()
    maps back).
  * sample() and sample.int() have additional sanity checks on their
    size and n arguments.
    all.equal.numeric() gains a sanity check on its tolerance
    argument - calling all.equal(a, b, c) for three numeric vectors
    is a surprisingly common error.
    mean(na.rm =), rank(na.last =), barplot(legend.text =),
    boxplot(), contour(drawlabels =), polygon(border =) and
    methods::is(class2 =) have more robust sanity checks on their
    arguments.
    R CMD Rd2pdf (used by R CMD check) has a more robust sanity check
    on the format of \alias{} commands.
  * psigamma(x, deriv) for negative x now also works for deriv = 4
    and 5; their underlying C level dpsifn() is documented in
    'Writing R Extensions'.
  * The HTML help system now uses HTML5 (wish of PR#18149).
  * ks.test() now provides exact p-values also with ties and MC
    p-values in the two-sample (Smirnov) case.  By Torsten Hothorn.
  * ks.test() gains a formula interface, with y ~ 1 for the
    one-sample (Kolmogorov) test and y ~ group for the two-sample
    (Smirnov) test.  Contributed by Torsten Hothorn.
  * The return value from ks.test() now has class c("ks.test",
    "htest") - packages using try() need to take care to use
    inherits() and not == on the class.
  * New functions psmirnov(), qsmirnov() and rsmirnov() in package
    stats implementing the asymptotic and exact distributions of the
    two-sample Smirnov statistic.
  * iconv() now allows sub = "c99" to use C99-style escapes for UTF-8
    inputs which cannot be converted to encoding to.
  * In a forward pipe |&gt; expression it is now possible to use a named
    argument with the placeholder _ in the rhs call to specify where
    the lhs is to be inserted.  The placeholder can only appear once
    on the rhs.
  * The included LAPACK sources have been updated to version 3.10.0,
    except for the four Fortran 77 routines which 3.10.0 has
    re-implemented in Fortran 90 (where the older versions have been
    retained as the R build process does not support Fortran 90).
  * path.expand() and most other uses of tilde expansion now warn if
    a path would be too long if expanded.  (An exception is
    file.exists(), which silently returns false.)
  * trunc(&lt;Date&gt;, *) now supports units = "months" or "years" for
    consistency with the POSIXt method, thanks to Dirk Eddelbuettel's
    proposal in PR#18099.
  * list2DF() now checks that its arguments are of the same length,
    rather than use recycling.
  * The HTML help system has several new features: LaTeX-like math
    can be typeset using either KaTeX or MathJax, usage and example
    code is highlighted using Prism, and for dynamic help the output
    of examples and demos can be shown within the browser if the
    knitr package is installed. These features can be disabled by
    setting the environment variable _R_HELP_ENABLE_ENHANCED_HTML_ to
    a false value.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 15
    and so packages that provide graphics devices should be
    reinstalled.
  * The grid package now allows the user to specify a "vector" of
    pattern fills.  The fill argument to gpar() accepts a list of
    gradients and/or patterns and the functions linearGradient(),
    radialGradient(), and pattern() have a new group argument.
    Points grobs (data symbols) can now also have a pattern fill.
    The grobCoords() function now returns a more informative and
    complex result.
  * The grid package has new functions for drawing isolated groups:
    grid.group(), grid.define(), and grid.use().  These functions add
    compositing operators and affine transformations to R's graphics
    capabilities.
    The grid package also has new functions for stroking and filling
    paths: grid.stroke(), grid.fill(), and grid.fillStroke().
    A new function as.path() allows the user to specify the fill rule
    for a path that is to be used for clipping, stroking, or filling;
    available options are "winding" and "evenodd".  A new function
    as.mask() allows the user to specify the type of a mask;
    available options are "alpha" and "luminance".
    These new features are only supported so far (at most) on the
    Cairo-based graphics devices and on the pdf() device.
  * dev.capabilities() reports on device support for the new
    features.
  * par() now warns about unnamed non-character arguments to prevent
    misuse such as {usr &lt;- par("usr"); par(usr)}.
  INSTALLATION:
  * Facilities for accessing ftp:// sites are no longer tested
    (except _pro tem_ for curlGetHeaders()) as modern browsers have
    removed support.
  * R can now be built with DEFS = -DSTRICT_R_HEADERS .
  PACKAGE INSTALLATION:
  * R CMD INSTALL no longer tangles vignettes. This completes an R
    CMD build change in R 3.0.0 and affects packages built before R
    3.0.2. Such packages should be re-made with R CMD build to have
    the tangled R code of vignettes shipped with the tarball.
  * USE_FC_LEN_T will become the default: this uses the correct
    prototypes for Fortran BLAS/LAPACK routines called from C/C++,
    and requires adjustment of most such calls - see 'Writing R
    Extensions' SS6.6.2.  (This has been supported since R 3.6.2.)
  * Package installation speed for packages installed with
    keep.source has been improved. This resolve the issue reported by
    Ofek Shilon in PR#18236.
  UTILITIES:
  * R CMD check can optionally report files/directories left behind
    in home, /tmp (even though TMPDIR is set) and other directories.
    See the "R Internals" manual for details.
  * R CMD check now reports byte-compilation errors during
    installation.  These are not usually fatal but may result in
    parts of the package not being byte-compiled.
  * _R_CHECK_DEPENDS_ONLY_ can be applied selectively to examples,
    tests and/or vignettes in R CMD check: see the "R Internals"
    manual.
  * _R_CHECK_SRC_MINUS_W_IMPLICIT_ now defaults to true: recent
    versions of Apple clang on macOS have made implicit function
    declarations in C into a compilation error.
  * R CMD check --as-cran makes use of the environment variable
    AUTORECONF.  See the "R Internals" manual SS8 for further details.
  * R CMD check --use-valgrind also uses valgrind when re-building
    vignettes as some non-Sweave vignettes unhelpfully comment out
    all their code when R CMD check runs vignettes.
  * Errors in re-building vignettes (unless there are LaTeX errors)
    are reported by R CMD check as ERROR rather than WARNING when
    running vignettes has been skipped (as it frequently is in CRAN
    checks and by --as-cran).
  * R CMD Rd2pdf gains a --quiet option that is used by R CMD build
    when building the PDF package manual.
  * R CMD Rd2pdf now always runs LaTeX in batch mode, consistent with
    Texinfo &gt;= 6.7. The --batch option is ignored.
  * R CMD build and R CMD check now include the Rd file name and line
    numbers in the error message of an \Sexpr evaluation failure.
  * For packages using the \doi Rd macro (now an install-time \Sexpr)
    but no other dynamic Rd content, R CMD build now produces a
    smaller tarball and is considerably faster - skipping temporary
    package installation.
  C-LEVEL FACILITIES:
  * The non-API header R_ext/R-ftp-http.h is no longer provided, as
    the entry points it covered are now all defunct.
  * A number of non-API declarations and macro definitions have been
    moved from the installed header Rinternals.h to the internal
    header Defn.h. Packages that only use entry points and
    definitions documented to be part of the API as specified in
    'Writing R Extensions' SS6 should not be affected.
  * The macro USE_RINTERNALS no longer has any effect when compiling
    package code.  Packages which also use R_NO_REMAP will need to
    ensure that the remapped names are used for calls to API
    functions that were formerly also made available as macros.
  * The deprecated legacy S-compatibility macros PROBLEM, MESSAGE,
    ERROR, WARN, WARNING, RECOVER, ... are no longer defined in
    R_exts/RS.h (included by R.h).  Replace these by calls to
    Rf_error and Rf_warning (defined in header R_ext/Error.h included
    by R.h).
    Header R_ext/RS.h no longer includes R_ext/Error.h.
  * Header R_ext/Constants.h (included by R.h) when included from C++
    now includes the C++ header cfloat rather than the C header
    float.h (now possible as C++11 is required).
  * The legacy S-compatibility macros DOUBLE_* in R_ext/Constants.h
    (included by R.h) are deprecated.
  * The deprecated S-compatibility macros SINGLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * R_Calloc, R_Free and R_Realloc are preferred to their unprefixed
    forms and error messages now use the prefix. These forms were
    introduced in R 3.4.0 and are available even when
    STRICT_R_HEADERS is defined.
  * rmultinom has been documented in 'Writing R Extensions' SS6 so is
    now part of the R API.
  * Similarly, Rtanpi, called from R level tanpi() is now part of the
    R API.
  * The long-deprecated, undocumented and non-API entry point call_R
    is no longer declared in R_ext/RS.h (included by R.h).
  * The header S.h which has been unsupported since Jan 2016 has been
    removed.  Use R.h instead.
  DEPRECATED AND DEFUNCT:
  * The (non-default and deprecated) method = "internal" for
    download.file() and url() no longer supports http:// nor ftp://
    URIs.  (It is used only for file:// URIs.)
    On Windows, download.file(method = "wininet") no longer supports
    ftp:// URIs.  (It is no longer the default method, which is
    "libcurl" and does.)
    On Windows, the deprecated method = "wininet" now gives a warning
    for http:// and https:// URIs for both download.file() and url().
    (It is no longer the default method.)
  * On Windows, the command-line option --max-mem-size and
    environment variable R_MAX_MEM_SIZE are defunct.  The memory
    allocation limit was important for 32-bit builds, but these are
    no longer supported.
  * default.stringsAsFactors() is now formally deprecated, where that
    was only mentioned on its regular help page, previously.  So it
    now gives a warning if called.
  * unix.time() is defunct now; it had been deprecated since R 3.4.0.
  BUG FIXES:
  * Setting digits = 0 in format(), print.default() (and hence
    typically print()) or options() is again invalid.  Its behaviour
    was platform-dependent, and it is unclear what "zero significant
    digits" should mean (PR#18098).
  * Messages from C code in the cairo section of package grDevices
    are now also offered for translation, thanks to Michael Chirico's
    PR#18123.
  * mean(x) with finite x now is finite also without "long.double"
    capability.
  * R CMD Rd2pdf no longer leaves an empty build directory behind
    when it aborts due to an already existing output file.  (Thanks
    to Sebastian Meyer's PR#18141.)
  * density(x, weights = w, na.rm = TRUE) when anyNA(x) is true, now
    removes weights "in parallel" to x, fixing PR#18151, reported by
    Matthias Gondan.  Additionally, it gets a subdensity option.
  * Conversion of \Sexpr[]{&lt;expR&gt;} to LaTeX or HTML no longer
    produces long blocks of empty lines when &lt;expR&gt; itself contains
    several lines all producing empty output.  Thanks to a report and
    patch by Ivan Krylov posted to R-devel.
  * R CMD build no longer fails if a package vignette uses child
    documents and inst/doc exists.  (Thanks to Sebastian Meyer's
    PR#18156.)
  * When an R documentation ('help' source) file man/foo.Rd in a
    package has \donttest{..} examples with a syntax error, it is now
    signalled as ERROR and with correct line numbers relating to the
  * -Ex.R file, thanks to Duncan Murdoch and Sebastian Meyer's
    reports and patch proposals in PR#17501.
  * Improved determination of the correct translation domain in
    non-base packages, addressing the combination of PR#18092 and
    PR#17998 (#c6) with reports and _augmented_ patch #2904 by
    Suharto Anggono.
    Note that "R-base" is no longer the default domain e.g., for
    top-level calls to gettext(); rather translation needs explicit
    domain = * specification in such cases.
  * identical(attrib.as.set=FALSE) now works correctly with data
    frames with default row names (Thanks to Charlie Gao's PR#18179).
  * txtProgressBar() now enforces a non-zero width for argument char,
    without which no progress can be visible.
  * dimnames(table(d)) is more consistent in the case where d is a
    list with a single component, thanks to Thomas Soeiro's report to
    R-devel.
    Further, table(d1, d2) now gives an error when d1 and d2 are data
    frames as suggested by Thomas in PR#18224.
  * Fix for drawing semi-transparent lines and fills on the native
    Windows graphics device (PR#18219 and PR#16694).  Thanks to Nick
    Ray for helpful diagnosis on Bugzilla.
  * The deparser now wraps sub-expressions such as if(A) ..  with
    parentheses when needed; thanks to Duncan Murdoch's PR#18232 and
    Lionel Henry's patches there.
  * remove.packages() no longer tries to uninstall Priority: base
    packages, thanks to a report and suggestions by Colin Fay in
    PR#18227.
  * win.metafile() now has xpinch and ypinch arguments so that the
    user can override Windows' (potentially wrong) guess at device
    dimensions.
  * x[i] and x[[i]] for non-integer i should now behave in all cases
    as always documented: the index used is equivalent to
    as.integer(i) unless that would overflow where trunc(i) is used
    instead; thanks to Suharto Anggono's report and patch proposals
    in PR#17977.
  * asOneSidedFormula() now associates the resulting formula with the
    global environment rather than the evaluation environment created
    for the call.
  * &lt;bibentry&gt;$name now matches the field name case-insensitively,
    consistent with bibentry() creation and the replacement method.
  * cbind() failed to detect some length mismatches with a mixture of
    time-series and non-time-series inputs.
  * The default LaTeX style file Sweave.sty used by the RweaveLatex
    driver no longer loads the obsolete ae package; thanks to a
    report by Thomas Soeiro in PR#18271.  Furthermore, it now skips
    \usepackage[T1]{fontenc} for engines other than pdfTeX (if
    detected) or if the new [nofontenc] option is used.
  * smooth.spline() now stores its logical cv argument more safely,
    fixing a rare bug when printing, and also stores n.
  * smooth.spline(x,y,*) now computes the cv.crit statistic
    correctly, also when is.unsorted(x), fixing PR#18294.
  * The data.frame method of rbind() now warns when binding
    not-wholly-recycling vectors, by analogy to the default method
    (for matrices).
  * setAs() finds the correct class for name to when multiple
    packages define a class with that name. Thanks to Gabor Csardi
    for the report.
  * Fix for detaching a package when two classes of the same name are
    present in method signatures for the same generic. Thanks to
    Gabor Csardi for the report.
  * match.arg("", c("", "a", "B")) gives a better error message, in
    part from PR#17959, thanks to Elin Waring.
  * R CMD Sweave --clean no longer removes pre-existing files or
    subdirectories (PR#18242).
  * The quartz() device no longer splits polylines into subpaths.
    That has caused narrowly-spaced lines with many points to always
    look solid even when dashed line type was used due to dash phase
    restarts.
  * Deparsing constructs such as quote(1 + `!`(2) + 3) works again as
    before R 3.5.0, thanks to the report and patch in PR#18284 by
    Suharto Anggono.
  * as.list(f) for a factor f now keeps names(f), fixing PR#18309.
  * qbeta(.001, .9, .009) and analogous qf() calls now return a
    correct value instead of NaN or wrongly 1, all with a warning;
    thanks to the report by Ludger Goeminne in PR#18302.
  * plot.lm() failed to produce the plot of residuals vs.  factor
    levels (i.e., which=5 when leverages are constant) for models
    with character predictors (PR#17840).
  * interaction.plot(..., xtick = TRUE) misplaced the x-axis line
    (PR#18305).
  * Not strictly fixing a bug, format()ing and print()ing of
    non-finite Date and POSIXt values NaN and +/-Inf no longer show
    as NA but the respective string, e.g., Inf, for consistency with
    numeric vector's behaviour, fulfilling the wish of PR#18308.
  * R CMD check no longer runs test scripts generated from
    corresponding .Rin files twice and now signals an ERROR if
    processing an .Rin script fails.
  * tools::Rd2txt() used for plain-text help pages now renders \hrefs
    (if tools::Rd2txt_options(showURLs = TRUE)) and \urls with
    percent-encoding and standards-compliant delimiting style (angle
    brackets and no URL: prefix).  \email is now rendered with a
    mailto: prefix.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1655985600">- CHANGES IN R 4.2.1:
  NEW FEATURES:
  * New function utils::findCRANmirror() to find out if a CRAN mirror
    has been selected, otherwise fallback to the main site.  This
    behaves in the same way as tools::CRAN_package_db() and is
    intended for packages wishing to access CRAN for purposes other
    than installing packages.
    The need for this was shown by a day when the main CRAN website
    was offline and a dozen or so packages which had its URL
    hardcoded failed their checks.
  INSTALLATION on a UNIX-ALIKE:
  * The libraries searched for by --with-blas (without a value) now
    include BLIS (after OpenBLAS but before ATLAS).  And on macOS,
    the Accelerate framework (after ATLAS).  (This is patterned after
    the AX_BLAS macro from the Autoconf Archive.)
  * The included LAPACK sources have been updated to 3.10.1.
  UTILITIES:
  * The (full path to) the command tidy to be used for HTML
    validation can be set by environment variable R_TIDYCMD.
  * Setting environment variable _R_CHECK_RD_VALIDATE_RD2HTML_ to a
    false value will override R CMD check --as-cran and turn off HTML
    validation.  This provides a way to circumvent a problematic
    tidy.
    The 2006 version that ships with macOS is always skipped.
  C-LEVEL FACILITIES:
  * The undocumented legacy declarations of Sint, Sfloat, SINT_MAX
    and SINT_MIN in header R.h are deprecated.
  BUG FIXES:
  * fisher.test(d) no longer segfaults for "large" d; fixing PR#18336
    by preventing/detecting an integer overflow reliably.
  * tar(., files=*) now produces correctly the warning about invalid
    uid or gid of files, fixing PR#18344, reported by Martin Morgan.
  * tk_choose.files() with multi = FALSE misbehaved on paths
    containing spaces (PR#18334) (regression introduced in R 4.0.0).
  * sort(x, partial = ind, *) now works correctly notably for the
    non-default na.last = FALSE or TRUE, fixing PR#18335 reported by
    James Edwards.
  * Environment variable _R_CHECK_XREFS_REPOSITORIES_ is only used
    for checking .Rd cross-references in R CMD check (as documented)
    and not for other uses looking for a CRAN mirror.
  * The search for a CRAN mirror when checking packages now uses
    getOption("repos") if that specifies a CRAN mirror, even when it
    does not also specify all three Bioconductor repositories (as was
    previously required).
  * The HTML code generated by tools::Rd2HTML() has been improved to
    pass tidy 5.8.0.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1667217600">- CHANGES IN R 4.2.2:
  NEW FEATURES:
  * tools::Rdiff(useDiff = TRUE) checks for the presence of an
    external diff command and switches to useDiff = FALSE if none is
    found.  This allows R CMD Rdiff to always work.
  * On Windows, environment variable R_LIBCURL_SSL_REVOKE_BEST_EFFORT
    can be used to switch to only 'best-effort' SSL certificate
    revocation checks with the default "libcurl" download method.
    This reduces security, but may be needed for downloads to work
    with MITM proxies (PR#18379).
  * (macOS) The run-time check for libraries from XQuartz for X11 and
    Tcl/Tk no longer uses otool from the Apple Developer Tools
    (PR#18400).
  * The LaTeX style for producing the PDF manuals, Rd.sty, now loads
    the standard amsmath, amsfonts and amssymb packages for greater
    coverage of math commands in the Rd \eqn and \deqn macros.  The
    \mathscr LaTeX command is also provided (via the mathrsfs
    package, if available, or the amsfonts bundle otherwise),
    fulfilling the wish of PR#18398.
  * (Windows) The default format of readClipboard() and
    writeClipboard() has been changed to 13 (CF_UNICODETEXT).
  INSTALLATION on a UNIX-ALIKE:
  * The PDF manuals (if built) can be compacted by the new target
    make compact-pdf (at the top level or in directory doc/manual).
  * There is now configure support for LLVM clang 15 on Linux, which
    defaults to position-independent (PIE) executables whereas
    gfortran does not.
  * Many small changes to ease compilation (and suppress warnings)
    with LLVM clang 15.
  BUG FIXES:
  * Rscript -e would fail if stdin were closed (Reported by Henrik
    Bengtsson.)
  * qt(*, log.p=TRUE) in outer tails no longer produces NaN in its
    final steps, thus fixing PR#18360.
  * tools::Rd2latex() now escapes hashes and ampersands when writing
    URLs, fixing LaTeX errors with such URLs in \tabular.
  * When isGeneric(f, fdef=*) is used with mismatching names, the
    warning is better understandable; reported (with fix) in PR#18370
    by Gabe Becker.
  * poly(x, n) now works again (and is now documented) when x is a
    "Date" or "POSIXct" object, or of another class while fulfilling
    mode(x) == "numeric".  This also enables poly(x, *, raw=TRUE) for
    such variables.  Reported by Michael Chirico to R-devel.
  * write.table(), write.csv() and write.csv2() restore their
    numerical precision (internal equivalent of digits = 15) after an
    interrupt (PR#18384).
  * One can now read also byte FF from a clipboard connection
    (PR#18385).
  * source("") and source(character()) now give more helpful error
    messages.
  * R CMD check --as-cran set _R_CHECK_TIMINGS_ too late to have the
    intended effect.
  * as.POSIXlt(x) now also works with very large dates x, fixing
    PR#18401 reported by Hannes M"uhleisen.
  * Files can now be extracted even from very large zip archives
    (PR#18390, thanks to Martin Jakt).
  * Non-finite objects of class "POSIXlt" are now correctly coerced
    to classes "Date" and "POSIXct"; following up on the extension to
    format() them correctly.
  * Added methods for is.finite(), is.infinite() and is.nan() for
    "POSIXlt" date-time objects.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1678881600">- CHANGES IN R 4.2.3:
  C-LEVEL FACILITIES:
  * The definition of DL_FUNC in R_ext/Rdynload.h has been changed to
    be fully C-compliant.  This means that functions loaded _via_ for
    example R_GetCCallable need to be cast to an appropriate type if
    they have any arguments.
  * .Machine has a new element sizeof.time_t to identify old systems
    with a 32-bit type and hence a limited range of date-times (and
    limited support for dates millions of years from present).
  PACKAGE INSTALLATION:
  * (Windows) The default C++ standard had accidentally been left at
    C++11 when it was changed to C++14 on Unix.
  BUG FIXES:
  * As "POSIXlt" objects may be "partially filled" and their list
    components meant to be recycled, length() now is the length of
    the longest component.
  * as.POSIXlt.Date() could underflow for dates in the far past (more
    than half a million years BCE).
  * as.Date.POSIXlt(x) would return "1970-01-01" instead of NA in R
    4.2.2, e.g., for
    x &lt;- as.POSIXlt(c("2019-01-30","2001-1-1"))
    x$mon &lt;- c(0L, NA); as.Date(x)
  * R CMD check failed to apply enabled _R_CHECK_SUGGESTS_ONLY_ to
    examples and vignettes (regression in R 4.2.0).
  * R CMD check did not re-build vignettes in separate processes by
    default (regression in R 4.2.0).
  * Running examples from HTML documentation now restores previous
    knitr settings and options (PR#18420).
  * Quartz: fonts are now located using Core Graphics API instead of
    deprecated ATS which is no longer supported in the macOS 13 SDK
    (PR#18426).  This also addresses an issue where the currently
    used font in the Quartz device context was not correctly
    retained.
  * (Windows) Math symbols in text drawing functions are again
    rendered correctly (PR#18440).  This fixes a regression in R
    4.2.1 caused by a fix in PR#18382 which uncovered an issue in
    GraphApp due to which the symbol charset was not used with TT
    Symbol font face.
  * (Windows) Installing a package with a src/Makefile.{win,ucrt}
    file includes ~/.R/Makevars.win64 in the search for user
    makevars, as documented in "R Installation and Administration"
    and done for packages with a src/Makevars.{win,ucrt} file.
  * format(&lt;POSIXlt_w/_unbalanced_sec&gt;, "....%OS&lt;n&gt;") with n &gt; 0 no
    longer accidentally uses the unbalanced seconds, thanks to
    Suharto Anggono's report (including patch) in PR#18448.
  * solve.default(a, b) works around issues with some versions of
    LAPACK when a contains NA or NaN values.
  * When UseMethod() cannot dispatch, it no longer segfaults
    producing the error message in case of a long class(), thanks to
    Joris Vankerschaver's report (including patch) in PR#18447.
  * When example(foo, ..) produces graphics on an interactive device
    it needs to open itself, it now leaves devAskNewPage() unchanged
    even when it was FALSE, thus fixing a 14 years old '&lt;FIXME&gt;'.
  * packageDescription() again catches errors from encoding
    conversions. This also fixes broken packageVersion() in C locale
    on systems where iconv does not support transliteration.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1681128000">- add patch to build with libcurl &gt;= 8</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1682078400">- CHANGES IN R 4.3.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Calling &amp;&amp; or || with LHS or (if evaluated) RHS of length greater
    than one is now always an error, with a report of the form
    'length = 4' in coercion to 'logical(1)'
    Environment variable _R_CHECK_LENGTH_1_LOGIC2_ no longer has any
    effect.
  NEW FEATURES:
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.10.1.  (This caused some platform-dependent
    changes to package check output.)  And then to the sources from
    LAPACK version 3.11.0 (with changes only to double complex
    subroutines).
  * The included LAPACK sources have been updated to include the four
    Fortran 90 routines rather than their Fortran 77 predecessors.
    This may give some different signs in SVDs or
    eigendecompositions..  (This completes the transition to LAPACK
    3.10.x begun in R 4.2.0.)
  * The LAPACK sources have been updated to version 3.11.0.  (No new
    subroutines have been added, so this almost entirely bug fixes:
    Those fixes do affect some computations with NaNs, including R's
    NA.)
  * The parser now signals _classed_ errors, notably in case of the
    pipe operator |&gt;.  The error object and message now give line and
    column numbers, mostly as proposed and provided by Duncan Murdoch
    in PR#18328.
  * toeplitz() is now generalized for asymmetric cases, with a
    toeplitz2() variant.
  * xy.coords() and xyz.coords() and consequently, e.g., plot(x,y,
    log = "y") now signal a _classed_ warning about negative values
    of y (where log(.) is NA).  Such a warning can be specifically
    suppressed or caught otherwise.
  * Regular expression functions now check more thoroughly whether
    their inputs are valid strings (in their encoding, e.g. in
    UTF-8).
  * The performance of grep(), sub(), gsub() and strsplit() has been
    improved, particularly with perl = TRUE and fixed = TRUE.  Use of
    useBytes = TRUE for performance reasons should no longer be
    needed and is discouraged: it may lead to incorrect results.
  * apropos() gains an argument dot_internals which is used by the
    completion (help(rcompgen)) engine to also see base internals
    such as .POSIXct().
  * Support in tools::Rdiff() for comparing uncompressed PDF files is
    further reduced - see its help page.
  * qqplot(x, y, ...) gains conf.level and conf.args arguments for
    computing and plotting a confidence band for the treatment
    function transforming the distribution of x into the distribution
    of y (Switzer, 1976, _Biometrika_). Contributed by Torsten
    Hothorn.
  * Performance of package_dependencies() has been improved for cases
    when the number of dependencies is large.
  * Strings newly created by gsub(), sub() and strsplit(), when any
    of the inputs is marked as "bytes", are also marked as "bytes".
    This reduces the risk of creating invalid strings and accidental
    substitution of bytes deemed invalid.
  * Support for readLines(encoding = "bytes") has been added to allow
    processing special text files byte-by-byte, without creating
    invalid strings.
  * iconv(from = "") now takes into account any declared encoding of
    the input elements and uses it in preference to the native
    encoding.  This reduces the risk of accidental creation of
    invalid strings, particularly when different elements of the
    input have different encoding (including "bytes").
  * Package repositories in getOption("repos") are now initialized
    from the repositories file when utils is loaded (if not already
    set, e.g., in .Rprofile).  (From a report and patch proposal by
    Gabriel Becker in PR#18405.)
  * compactPDF() gets a verbose option.
  * type.convert() and hence read.table() get new option tryLogical =
    TRUE with back compatible default.  When set to false, converts
    "F" or "T" columns to character.
  * Added new unit prefixes "R" and "Q" for abbreviating
    (unrealistically large) sizes beyond 10^{27} in standard = "SI",
    thanks to Henrik Bengtsson's PR#18435.
  * as.data.frame()'s default method now also works fine with atomic
    objects inheriting from classes such as "roman", "octmode" and
    "hexmode", such fulfilling the wish of PR#18421, by Benjamin
    Feakins.
  * The as.data.frame.vector() utility now errors for wrong-length
    row.names.  It warned for almost six years, with "Will be an
    error!".
  * sessionInfo() now also contains La_version() and reports codepage
    and timezone when relevant, in both print() and toLatex() methods
    which also get new option tzone for displaying timezone
    information when locale = FALSE.
  * New function R_compiled_by() reports the C and Fortran compilers
    used to build R, if known.
  * predict(&lt;lm&gt;, newdata = *) no longer unnecessarily creates an
    offset of all 0s.
  * solve() for complex inputs now uses argument tol and by default
    checks for 'computational singularity' (as it long has done for
    numeric inputs).
  * predict(&lt;rank-deficient lm&gt;, newdata=*) now obeys a new argument
    rankdeficient, with new default "warnif", warning only if there
    are non-estimable cases in newdata.  Other options include
    rankdeficient = "NA", predicting NA for non-estimable newdata
    cases.  This addresses PR#15072 by Russ Lenth and is based on his
    original proposal and discussions in PR#16158 also by David Firth
    and Elin Waring.  Still somewhat experimental.
  * Rgui console implementation now works better with the NVDA screen
    reader when the full blinking cursor is selected.  The underlying
    improvements in cursor handling may help also other screen
    readers on Windows.
  * The drop-field control in GraphApp can now be left with the TAB
    key and all controls can be navigated in the reverse order using
    the Shift+TAB key, improving accessibility of the Rgui
    configuration editor.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now fully accurate
    (instead of to "only" minimally five digits).
  * demo(error.catching) now also shows off withWarnings() and
    tryCatchWEMs().
  * As an experimental feature the placeholder _ can now also be used
    in the rhs of a forward pipe |&gt; expression as the first argument
    in an extraction call, such as _$coef. More generally, it can be
    used as the head of a chain of extractions, such as _$coef[[2]].
  * Spaces in the environment variable used to choose the R session's
    temporary directory (TMPDIR, TMP and TEMP are tried in turn) are
    now fatal.  (On Windows the 'short path' version of the path is
    tried and used if that does not contain a space.)
  * all.equal.numeric() gets a new optional switch giveErr to return
    the numeric error as attribute.  Relatedly,
    stopifnot(all.equal&lt;some&gt;(a, b, ..)) is as "smart" now, as
    stopifnot(all.equal(....)) has been already, thus allowing
    customized all.equal&lt;Some&gt;() wrappers.
  * R on Windows is now able to work with path names longer than 260
    characters when these are enabled in the system (requires at
    least Windows 10 version 1607).  Packages should be updated to
    work with long paths as well, instead of assuming PATH_MAX to be
    the maximum length.  Custom front-ends and applications embedding
    R need to update their manifests if they wish to allow this
    feature.  See
    &lt;https://blog.r-project.org/2023/03/07/path-length-limit-on-windows&gt;
    for more information.
  * 'Object not found' and 'Missing argument' errors now give a more
    accurate error context. Patch provided by Lionel Henry in
    PR#18241.
  * The @ operator is now an S3 generic. Based on contributions by
    Tomasz Kalinowski in PR#18482.
  * New generic chooseOpsMethod() provides a mechanism for objects to
    resolve cases where two suitable methods are found for an Ops
    Group Generic. This supports experimenting with alternative
    object systems. Based on contributions by Tomasz Kalinowski in
    PR#18484.
  * inherits(x, what) now accepts values other than a simple
    character vector for argument what. A new generic, nameOfClass(),
    is called to resolve the class name from what. This supports
    experimenting with alternative object systems. Based on
    contributions by Tomasz Kalinowski in PR#18485.
  * Detection of BLAS/LAPACK in use (sessionInfo()) with FlexiBLAS
    now reports the current backend.
  * The "data.frame" method for subset() now warns about extraneous
    arguments, typically catching the use of = instead of == in the
    subset expression.
  * Calling a:b when numeric a or b is longer than one may now be
    made into an error by setting environment variable
    _R_CHECK_LENGTH_COLON_ to a true value, along the proposal in
    PR#18419 by Henrik Bengtsson.
  * density(x, weights = *) now warns if automatic bandwidth
    selection happens without using weights; new optional warnWbw may
    suppress the warning.  Prompted by Christoph Dalitz' PR#18490 and
    its discussants.
  * rm(list = *) is faster and more readable thanks to Kevin Ushey's
    PR#18492.
  * The plot.lm() function no longer produces a normal Q-Q plot for
    GLMs. Instead it plots a half-normal Q-Q plot of the absolute
    value of the standardized deviance residuals.
  * The print() method for class "summary.glm" no longer shows
    summary statistics for the deviance residuals by default.  Its
    optional argument show.residuals can be used to show them if
    required.
  * The tapply() function now accepts a data frame as its X argument,
    and allows INDEX to be a formula in that case. by.data.frame()
    similarly allows INDICES to be a formula.
  * The performance of df[j] &lt;- value (including for missing j) and
    write.table(df) has been improved for data frames df with a large
    number of columns.  (Thanks to Gabriel Becker's PR#18500,
    PR#18503 and discussants, prompted by a report from Toby Dylan
    Hocking on the R-devel mailing list.)
  * The matrix multiply operator %*% is now an S3 generic, belonging
    to new group generic matrixOps.  From Tomasz Kalinowski's
    contribution in PR#18483.
  * New function array2DF() to convert arrays to data frames,
    particularly useful for the list arrays created by tapply().
  DATES and TIMES:
  * On platforms where (non-UTC) datetimes before 1902 (or before
    1900 as with system functions on recent macOS) are guessed by
    extrapolating time zones from 1902-2037, there is a warning at
    the first use of extrapolation in a session.  (As all time zones
    post 2037 are extrapolation, we do not warn on those.)
  * (Platforms using --with-internal-tzone, including Windows and by
    default macOS). How years are printed in dates or date-times can
    be controlled by environment variable R_PAD_YEARS_BY_ZERO.  The
    default remains to pad to 4 digits by zeroes, but setting value
    no gives no padding (as used by default by glibc).
  * strftime() tries harder to determine the offset for the "%z"
    format, and succeeds on the mainstream R platforms.
  * strftime() has a limit of 2048 bytes on the string produced -
    attempting to exceed this is an error.  (Previously it silently
    truncated at 255 bytes.)
  * sessionInfo() records (and by default prints) the system time
    zone as part of the locale information.  Also, the source
    (system/internal) of the date-time conversion and printing
    functions.
  * Objects of class "POSIXlt" created in this version of R always
    have 11 components: component zone is always set, and component
    gmtoff is set for times in UTC and usually set on the (almost
    all) platforms which have C-level support, otherwise is NA.
  * There are comprehensive validity checks on the structure of
    objects of class "POSIXlt" when converting (including formatting
    and printing).  (This avoids mis-conversions of hand-crafted
    objects.)
  * There is some support for using the native date-time routines on
    macOS: this is only viable on recent versions (e.g. 12.6 and 13)
    and does get wrong some historical changes (before 1900, during
    WWII).  Use of --with-internal-tzone remains the default.
  * as.POSIXct(&lt;numeric&gt;) and as.POSIXlt(.) (without specifying
    origin) now work.  So does as.Date(&lt;numeric&gt;).
  * as.Date.POSIXct(., tz) now treats several tz values, notably
    "GMT" as equivalent to "UTC", proposed and improved by Michael
    Chirico and Joshua Ulrich in PR#17674.
  * Experimental balancePOSIXlt() utility allows using "ragged" and
    or out-of-range "POSIXlt" objects more correctly, e.g., in
    subsetting and subassignments.  Such objects are now documented.
    More experimentally, a "POSIXlt" object may have an attribute
    "balanced" indicating if it is known to be filled or fully
    balanced.
  * Functions axis.Date() and axis.POSIXct() are rewritten to gain
    better default tick locations and better default formats by using
    prettyDate(). Thanks to Swetlana Herbrandt.
  * The mapping of Windows' names for time zones to IANA's 'Olson'
    names has been updated.  When ICU is available (it is by
    default), it is used to get a mapping for the current region set
    in Windows.  This can be overridden by setting environment
    variable TZ to the desired Olson name - see OlsonNames() for
    those currently available.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 16
    and so packages that provide graphics devices should be
    reinstalled.
  * The grDevices and grid packages have new functions for rendering
    typeset glyphs, primarily: grDevices::glyphInfo() and
    grid::grid.glyph().
    Rendering of typeset glyphs is only supported so far on the
    Cairo-based graphics devices and on the pdf() and quartz()
    devices.
  * The defined behaviour for "clear" and "source" compositing
    operators (via grid::grid.group()) has been changed (to align
    better with simple interpretation of original Porter-Duff
    definitions).
  * Support for gradients, patterns, clipping paths, masks, groups,
    compositing operators, and affine transformations has been added
    to the quartz() device.
  INSTALLATION on a UNIX-ALIKE:
  * A system installation of generic LAPACK 3.10.0 or later will be
    preferred to the version in the R sources.
    configure option --with-lapack=no (equivalently --without-lapack)
    forces compilation of the internal LAPACK sources.
    If --with-lapack is not specified, a system liblapack is looked
    for and used if it reports version 3.10.0 or later and does not
    contain BLAS routines.
    Packages using LAPACK will need to be reinstalled if this changes
    to using an external library.
  * On aarch64 Linux platforms using GCC, configure now defaults to
  - fPIC (instead of -fpic), as desired in PR#18326.
  * configure now checks conversion of datetimes between POSIXlt and
    POSIXct around year 2020.  Failure (which has been seen on
    platforms missing tzdata) is fatal.
  * If configure option --with-valgrind-instrumentation is given
    value 1 or 2, option --with-system-valgrind-headers is now the
    default and ignored (with a warning).  It is highly recommended
    that the system headers are installed alongside valgrind: they
    are part of its packaging on some Linux distributions and
    packaged separately (e.g. in the valgrind-devel RPM) on others.
    configure will give a warning if they are not found.
    The system headers will be required in a future release of R to
    build with valgrind instrumentation.
  * libcurl 8.x is now accepted by configure: despite a change in
    major version number it changes neither API nor ABI.
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools43, an update of the Rtools42 toolchain.  It is
    based on gcc 12 and newer versions of MinGW-W64, binutils and
    libraries.  At this time R-devel can still be built using
    Rtools42 without changes, but when R-devel is installed via the
    installer, it will by default look for Rtools43.
  * Old make targets rsync-extsoft and 32-bit ones that are no longer
    needed have been removed.
  * Default builds (including for packages) no longer select C99.
    Thus the C standard used is the default for the compiler, which
    for the toolchain in Rtools43 is C17.  (This is consistent with
    Unix builds.)
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++17 where
    available (which it is on all currently checked platforms): if
    not C++14 or C++11 is used if available otherwise C++ is not
    supported.
  * USE_FC_LEN_T is the default: this uses the correct
    (compiler-dependent) prototypes for Fortran BLAS/LAPACK routines
    called from C/C++, and requires adjustment of many such calls -
    see 'Writing R Extensions' SS6.6.1.
  * There is initial support for C++23 as several compilers are now
    supporting -std=c++23 or -std=c++2b or similar.  As for C++20,
    there no additional configure checks for C++23 features beyond a
    check that the compiler reports a __cplusplus value greater than
    that in the C++20 standard.  C++ feature tests should be used.
  * There is support for a package to indicate the version of the C
    standard which should be used to compile it, and for the
    installing user to specify this.  In most cases R defaults to the
    C compiler's default standard which is C17 (a `bug-fix' of C11) -
    earlier versions of R or compilers may have defaulted to C99.
    Current options are:
    USE_C17 Use a standard that is at most C17.  The intention is to
    allow legacy packages to still be installed when later C
    standards become the default, including packages using new
    keywords as identifiers or with K&amp;R-style function
    declarations.  This will use C17 if available, falling back
    to C11.
    USE_C90 Use the C90 (aka C89) standard.  (As that standard did
    not require compilers to identify that version, all we can
    verify is that the compiler does not claim to be using a
    later standard.  It may accept C99 features - for example
    clang accepts // to make comments.)
    USE_C99 Use the C99 standard. This should be rarely needed - it
    avoids the few new features of C11/C17 which can be useful if
    a package assumes them if C17 is specified and they are not
    implemented.
    USE_C23 Use C23 (or in future, later).  Compiler/library support
    for C23 is still being implemented, but LLVM clang from
    15.0.0 and the upcoming GCC 13 have quite extensive support.
    These can be specified as part of the SystemRequirements field in
    the package's DESCRIPTION file or _via_ options --use-C17 and so
    on of R CMD INSTALL and R CMD SHLIB.
    For further details see "Writing R Extensions" SS1.2.5.
  * (Windows) A src/Makefile.ucrt or src/Makefile.win file is now
    included after R_HOME/etcR_ARCH/Makeconf and so no longer needs
    to include that file itself.  Installation of a package with such
    a file now uses a site Makevars file in the same way as a package
    with a src/Makevars.win file would.
  * configure is now passed crucial variables such as CC and CFLAGS
    in its environment, as many packages were not setting them (as
    documented in 'Writing R Extensions' SS1.2).
    This has most effect where configure is used to compile parts of
    the package - most often by cmake or libtool which obfuscate the
    actual compile commands used.
    Also used for configure.win and configure.ucrt on Windows.
  FORTRAN FLAGS:
  * The flag -fno-optimize-sibling-calls is no longer forced for
    gfortran 7 and later.  It should no longer be needed now using
    'hidden' character-length arguments when calling BLAS/LAPACK
    routines from C/C++ is the default even for packages.  (Unless
    perhaps packages call Fortran code from C/C++ without using R's
    headers and without allowing for these arguments.)
  C-LEVEL FACILITIES:
  * The deprecated S-compatibility macros DOUBLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * The deprecated legacy typedefs of Sint and Sfloat in header R.h
    are no longer defined, and that header no longer includes header
    limits.h from C nor climits from C++.
  * New macro CAD5R() is provided in Rinternals.h and used in a few
    places in the R sources.
  * ALTREP now supports VECSXP vectors. Contributed by Gabor Csardi
    in PR#17620.
  * The Rcomplex definition (in header R_ext/Complex.h) has been
    extended to prevent possible mis-compilation when interfacing
    with Fortran (PR#18430).  The new definition causes compiler
    warnings with static initializers such as {1, 2}, which can be
    changed to {.r=1, .i=2}.
    Using the new definition from C++ depends on compiler extensions
    supporting C features that have not been incorporated into the
    C++ standards but are available in g++ and clang++: this may
    result in C++ compiler warnings but these have been worked around
    for recent versions of common compilers (GCC, Apple/LLVM clang,
    Intel).
    It is intended to change the inclusion of header R_ext/Complex.h
    by other R headers, so C/C++ code files which make use of
    Rcomplex should include that header explicitly.
  UTILITIES:
  * R CMD check does more checking of package .Rd files, warning
    about invalid email addresses and (some) invalid URIs and noting
    empty \item labels in description lists.
  * R CMD check now also reports problems when reading package news
    in md (file NEWS.md) and (optionally) plain text (file NEWS)
    formats.
  * _R_CHECK_TIMINGS_ defaults to a value from the environment even
    for R CMD check --as-cran; this allows for exceptionally fast or
    slow platforms.
    It now applies to checking PDF and HTML versions of the manuals,
    and 'checking CRAN incoming feasibility'.
  * R CMD check can optionally (but included in --as-cran) check
    whether HTML math rendering _via_ KaTeX works for the package .Rd
    files.
  * Non-interactive debugger invocations can be trapped by setting
    the environment variable _R_CHECK_BROWSER_NONINTERACTIVE_ to a
    true value.  This is enabled by R CMD check --as-cran to detect
    the use of leftover browser() statements in the package.
  * The use of sprintf and vsprintf from C/C++ has been deprecated in
    macOS 13 and is a known security risk.  R CMD check now reports
    (on all platforms) if their use is found in compiled code:
    replace by snprintf or vsnprintf respectively. [*NB:* whether
    such calls get compiled into the package is platform-dependent.]
  * Where recorded at installation, R CMD check reports the C and
    Fortran compilers used to build R.
    It reports the OS in use (if known, as given by osVersion) as
    well as that R was built for.
    It notes if a C++ standard was specified which is older than the
    current default: many packages have used C++11 to mean 'not
    C++98' - as C++11 is the minimum supported since R 4.0.0, that
    specification can probably be removed.
  * R CMD INSTALL reports the compilers (and on macOS, the SDK) used,
    and this is copied to the output of R CMD check.
    Where a C++ standard is specified, it is reported.
  * R CMD check's 'checking compilation flags in Makevars' has been
    relaxed to accept the use of flags such as -std=f2008 in
    PKG_FFLAGS.
  * tools::buildVignettes() has a new argument skip, which is used by
    R CMD check to skip (and note) vignettes with unavailable
    \VignetteDepends (PR#18318).
  * New generic .AtNames() added to enable class-specific completions
    after @. The formerly internal function findMatches() is now
    exported, mainly for use in methods for .DollarNames() and
    .AtNames().
  DEPRECATED AND DEFUNCT:
  * default.stringsAsFactors() is defunct.
  * Calling as.data.frame.&lt;class&gt;() directly (for 12 atomic classes)
    is going to be formally deprecated, currently activated by
    setting the environment variable
    _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ to non-empty, which also
    happens in R CMD check --as-cran.
  BUG FIXES:
  * Hashed environments with sizes less than 5 can now grow.
    (Reported to R-devel by Duncan Garmonsway.)
  * as.character(&lt;Rd&gt;, deparse = TRUE) failed to re-escape curly
    braces in LaTeX-like text.  (Reported by Hadley Wickham in
    PR#18324.)
  * library() now passes its lib.loc argument when requiring Depends
    packages; reported (with fix) in PR#18331 by Mikael Jagan.
  * R CMD Stangle: improved message about 'Output' files.
  * head(x, n) and tail(x, n) now signal an error if n is not
    numeric, instead of incidentally "working" sometimes returning
    all of x.  Reported and discussed by Colin Fay, in PR#18357.
  * The "lm" method for summary() now gives the correct F-statistic
    when the model contains an offset.  Reported in PR#18008.
  * C() and `contrasts&lt;-`() now preserve factor level names when
    given a function object (as opposed a function name which did
    preserve names). Reported in PR#17616.
  * c(a = 1, 2)[[]] no longer matches 2 but rather signals a
    _classed_ error.  Reported and analysed by Davis Vaughan in
    PR#18367, a duplicate of PR#18004, by Jan Meis et al.  For
    consistency, NULL[[]] is also erroneous now.  x[[]] &lt;- v gives an
    error of the same class "MissingSubscriptError".
  * The relist() function of utils now supports NULL elements in the
    skeleton (PR#15854).
  * ordered(levels = *) (missing x) now works analogously to factor(,
    ordered=TRUE); reported (with fix) by Achim Zeileis in PR#18389.
  * User-defined Rd macro definitions can now span multiple lines,
    thanks to a patch from Duncan Murdoch. Previously, the Rd parser
    silently ignored everything after the first line.
  * Plain-text help (tools::Rd2txt()) now preserves an initial blank
    line for text following description list items.
  * tools::Rd2HTML() and tools::Rd2latex() no longer split \arguments
    and \value lists at Rd comments.
  * tools::Rd2latex() now correctly handles optional text outside
    \items of argument lists as well as bracketed text at the
    beginning of sections, e.g., \value{[NULL]}.
  * as.character(&lt;POSIXt&gt;) now behaves more in line with the methods
    for atomic vectors such as numbers, and is no longer influenced
    by options().  Ditto for as.character(&lt;Date&gt;).  The
    as.character() method gets arguments digits and OutDec with
    defaults _not_ depending on options().  Use of as.character(*,
    format = .) now warns.
  * Similarly, the as.character.hexmode() and *.octmode() methods
    also behave as good citizen methods and back compatibility option
    keepStr = TRUE.
  * The as.POSIXlt(&lt;POSIXlt&gt;) and as.POSIXct(&lt;POSIXct&gt;) default
    methods now do obey their tz argument, also in this case.
  * as.POSIXlt(&lt;Date&gt;) now does apply a tz (time zone) argument, as
    does as.POSIXct(); partly suggested by Roland Fuss on the R-devel
    mailing list.
  * as.Date.POSIXlt(x) now also works when the list components are of
    unequal length, aka "partially filled" or "ragged".
  * expand.model.frame() looked up variables in the wrong environment
    when applied to models fitted without data.  Reported in
    PR#18414.
  * time() now (also) uses the ts.eps = getOption("ts.eps") argument
    and thus by default rounds values very close to the start (or
    end) of a year.  Based on a proposal by Andre"i V. Kostyrka on
    R-help.
  * Printing of a factanal() result with just one factor and sort =
    TRUE now works regularly, fixing PR#17863 by Timothy Bates,
    thanks to the 'R Contributors' working group.
  * Printing 0-length objects of class "factor", "roman", "hexmode",
    "octmode", "person", "bibentry", or "citation" now prints
    something better, one of which fixes PR#18422, reported by
    Benjamin Feakins.
  * Sys.timezone() queries timedatectl only if systemd is loaded;
    addressing a report by Jan Gorecki in PR#17421.
  * The formula method of cor.test() had scoping problems when
    environment(formula) was not the calling environment; reported
    with a patch proposal by Mao Kobayashi in PR#18439.
  * attach() of an environment with active bindings now preserves the
    active bindings.  Reported by Kevin Ushey in PR#18425.
  * BLAS detection now works also with system-provided libraries not
    available as regular files.  This fixes detection of the
    Accelerate framework on macOS since Big Sur.  Reported by David
    Novgorodsky.
  * download.file() gives a helpful error message in case of an
    invalid download.file.method option, thanks to Colin Fay's report
    in PR#18455.
  * Sporadic crashes of Rterm when using completion have been fixed.
  * Rprof() is now more reliable.  A livelock in thread
    initialization with too short sampling interval has been fixed on
    macOS.  A deadlock in using the C runtime has been fixed on
    Windows.  A potential deadlock has been prevented on Unix.
  * Cursor placement in Rgui now works even after a fixed-width font
    is selected.
  * Mandatory options (options()) are now set on startup so that
    saving and restoring them always works (PR#18372).
  * Package installation, R CMD INSTALL or install.packages(*), now
    parses each of the &lt;pkg&gt;/R/*.R files individually instead of
    first concatenating and then parse()ing the large resulting file.
    This allows parser or syntax errors to be diagnosed with correct
    file names and line numbers, thanks to Simon Dedman's report and
    Bill Dunlap's patch in PR#17859.
    This _does_ require syntactically self contained R source files
    now, fixing another inadvertent bug.
  * predict.lm(&lt;model with offset&gt;) now finds the offset in the
    correct environment, thanks to Andr'e Gillibert's report and patch
    in PR#18456.
  * getInitial(&lt;formula&gt;) now finds the selfStart model in the
    correct environment.  (Reported by Ivan Krylov in PR#18368.)
  * Fix for possible segfault when using recently-added graphics
    features, such as gradients, clipping paths, masks, and groups
    with pdf(file=NULL).
  * class(m) &lt;- class(m) no longer changes a matrix m by adding a
    class _attribute_.
  * packageDate(pkg) now only warns once if there is no pkg.
  * When ts() creates a multivariate time series, "mts", it also
    inherits from "array" now, and is.mts() is documented _and_
    stricter.
  * Rd2txt() now preserves line breaks of \verb Rd content and from
    duplicated \cr.  The former also fixes the rendering of verbatim
    output from Rd \Sexpr in plain-text help.
  * uniroot(f, interval) should no longer wrongly converge _outside_
    the interval in some cases where abs(f(x)) == Inf for an x at the
    interval boundary, thanks to posts by Ben Bolker and Serguei
    Sokol on R-devel.
  * Vectorized alpha handling in palette functions such as in gray(),
    rainbow(), or hcl.colors() works correctly now, thanks to Achim
    Zeileis' report and patch in PR#18476.
  * Formatting and print()ing of bibentry objects has dropped the
    deprecated citation.bibtex.max argument, such that the bibtex
    argument's default for print.bibentry() depends directly on the
    citation.bibtex.max option, whereas in format.bibentry() the
    option no longer applies.
  * Attempting to use a character string naming a foreign function
    entry point in a foreign function call in a package will now
    signal an error if the packages has called R_forceSymbols to
    specify that symbols must be used.
  * An error in table() could permanently set options(warn=2)
    promoting all subsequent warnings to errors.
  * The sigma() function gave misleading results for binary GLMs.  A
    new method for objects of class "glm" returns the square root of
    the estimate of the dispersion parameter using the same
    calculation as summary.glm().
  * bs() and ns() in the (typical) case of automatic knot
    construction, when some of the supposedly inner knots coincide
    with boundary knots, now moves them inside (with a warning),
    building on PR#18442 by Ben Bolker.
  * R CMD on Windows now skips the site profile with --no-site-file
    and --vanilla even when R_PROFILE is set (PR#18512, from Kevin
    Ushey).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1686916800">- CHANGES IN R 4.3.1:
  C-LEVEL FACILITIES:
  * The C-level API version of R's integrate(), Rdqags() in Applic.h,
    now returns the correct number of integrand evaluations neval,
    fixing PR#18515 reported and diagnosed by Stephen Wade.
  * The C prototypes for LAPACK calls dspgv and dtptrs in
    R_exts/Lapack.h had one too many and one too few character length
    arguments - but this has not caused any known issues. To get the
    corrected prototypes, include
    [#]include &lt;Rconfig.h&gt; // for PR18534fixed
    [#]ifdef PR18534fixed
    [#] define usePR18534fix 1
    [#]endif
    [#]include &lt;R_exts/Lapack.h&gt;
    in your C/C++ code (PR#18534).
  INSTALLATION:
  * Many of the checks of esoteric Internet operations and those
    using unreliable external sites have been moved to a new target
    that is not run by default and primarily intended for the core
    developers.  To run them use
    cd tests; make test-Internet-dev
  BUG FIXES:
  * .S3methods(), typically called from methods(), again marks
    methods from package base as visible.
    Also, the visibility of non-base methods is again determined by
    the method's presence in search().
  * tools::Rdiff() is now more robust against invalid strings, fixing
    installation tests on Windows without Rtools installed
    (PR#18530).
  * Fix (new) bug in hcl.colors(2, *), by Achim Zeileis (PR#18523).
  * head(., &lt;illegal&gt;) and tail(..) now produce more useful "Error in
    ...." error messages, fixing PR#18362.
  * Package code syntax on Windows is checked in UTF-8 when UTF-8 is
    the native encoding.
  * na.contiguous(x) now also returns the first run, when it is at
    the beginning and there is a later one of the same length;
    reported to R-devel, including a fix, by Georgi Boshnakov.
    Further, by default, it modifies only an existing attr(*,"tsp")
    but otherwise no longer sets one.
  * chol(&lt;not pos.def&gt;, pivot = &lt;T|F&gt;) now gives a correct error or
    warning message (depending on pivot), thanks to Mikael Jagan's
    (PR#18541).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1699012800">- CHANGES IN R 4.3.2:
  NEW FEATURES:
  * The default initialization of the "repos" option from the
    repositories file at startup can be skipped by setting
    environment variable R_REPOSITORIES to NULL such that
    getOption("repos") is empty if not set elsewhere.
  * qr.X() is now an implicit S4 generic in methods.
  * iconv(to = "ASCII//TRANSLIT") is emulated using substitution on
    platforms which do not support it (notably Alpine Linux).  This
    should give a human-readable conversion in ASCII on all platforms
    (rather than NA_character_).
  * trans3d() gains options continuous and verbose addressing the
    problem of possible "wrap around" when projecting too long
    curves, as reported by Achim Zeileis in PR#18537.
  * tools::showNonASCII() has been rewritten to work better on macOS
    14 (which has a changed implementation of iconv()).
  * tiff(type = "quartz") (the default on macOS) now warns if
    compression is specified: it continues to be ignored.
  INSTALLATION on a UNIX-ALIKE:
  * There is some support for building with Intel's LLVM-based
    compilers on x86_64 Linux, such as (C) icx, (C++) ipcx and
    (Fortran) ifx from oneAPI 2023.x.y.
  * There is support for using LLVM's flang-new as the Fortran
    compiler from LLVM 16.0.x (preferably 17.0.0 or later).
  UTILITIES:
  * R CMD check reports the use of the Fortran 90 random number
    generator RANDOM_NUMBER() and the subroutines to initialize it.
    'Writing R Extensions' has example code to use R's RNGs from
    Fortran.
  BUG FIXES:
  * substr(x, n, L) &lt;- cc now works (more) correctly for multibyte
    UTF-8 strings x when L &gt; nchar(x), thanks to a report and patch
    by 'Architect 95'.
  * contrib.url(character()) now returns 0-length character() as
    documented, which also avoids spurious warnings from
    available.packages() et al. in the edge case of an empty vector
    of repository URLs.
  * readChar(., 4e8) no longer fails, thanks to Kodi Arfer's report
    (PR#18557).
  * lapply(&lt;list&gt;, as.data.frame) no longer warns falsely for some
    base vector components.
  * Communication between parent and child processes in the multicore
    part of parallel could fail on platforms that do not support an
    arbitrarily large payload in system functions read()/write() on
    pipes (seen on macOS where a restriction to INT_MAX bytes is
    documented, without doing a partial read unlike Linux). The
    payload is now split into 1Gb chunks to avoid that problem.
    (PR#18571)
  * qqplot(x,y, conf.level=.) gives better confidence bounds when
    length(x) != length(y), thanks to Alexander Ploner's report and
    patch proposal (PR#18557).
  * norm(&lt;0-length&gt;, "2") now gives zero instead of an error, as all
    the other norm types, thanks to Mikael Jagan's PR#18542.
  * Build-stage Rd macros \packageAuthor and \packageMaintainer now
    process Authors@R, fixing NA results when the package DESCRIPTION
    omits Author and Maintainer fields.
  * Formatting and printing complex numbers could give things like
    0.1683-0i because of rounding error: -0i is now replaced by +0i.
  * postscript() refused to accept a title comment containing the
    letter "W" (PR#18599).
  * isoreg(c(1,Inf)) signals an error instead of segfaulting, fixing
    PR#18603.
  * tiff(type = "Xlib") was only outputting the last page of
    multi-page plots.
  * tools::latexToUtf8() again knows about \~{n} and other letters
    with tilde, fixing a regression in R 4.3.0, and about \^{i} as an
    alternative to \^{\i} (similarly with other accents).
    Furthermore, LaTeX codes for accented I letters are now correctly
    converted, also fixing related mistakes in
    tools::encoded_text_to_latex().
  * tar(*, tar = "internal") no longer creates out-of-spec tar files
    in the very rare case of user or group names longer than 32
    bytes, fixing PR#17871 with thanks to Ivan Krylov.
  * When using the "internal" timezone datetime code, adding a
    fraction of a second no longer adds one second, fixing PR#16856
    from a patch by Ivan Krylov.
  * tools::checkRd() no longer produces spurious notes about
    "unnecessary braces" from multi-line Rd results of \Sexpr macros.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1709208000">- CHANGES IN R 4.3.3:
  NEW FEATURES:
  * iconv() now fixes up variant encoding names such as "utf8"
    case-insensitively.
  DEPRECATED AND DEFUNCT:
  * The legacy encoding = "MacRoman" is deprecated in pdf() and
    postscript(): support was incomplete in earlier versions of R.
  BUG FIXES:
  * Arguments are now properly forwarded to methods on S4 generics
    with ... in the middle of their formal arguments. This was broken
    for the case when a method introduced an argument but did not
    include ... in its own formals. Thanks to Herv'e Pag`es for the
    report PR#18538.
  * Some invalid file arguments to pictex(), postscript() and xfig()
    opened a file called NA rather than throw an error.  These
    included postscript(NULL) (which some people expected to work
    like pdf(NULL)).
  * Passing filename = NA to svg(), cairo_pdf(), cairo_ps() or the
    Cairo-based bitmap devices opened a file called NA: it now throws
    an error.
  * quartz(file = NA) opened a file called NA, including when used as
    a Quartz-based bitmap device.  It now gives an error.
  * rank(&lt;long vector&gt;) now works, fixing PR#18617, thanks to Ilia
    Kats.
  * seq.int() did not adequately check its length.out argument.
  * match(&lt;POSIXct&gt;, .) is correct again for differing time zones,
    ditto for "POSIXlt", fixing PR#18618 reported by Bastian Klein.
  * drop.terms(*, dropx = &lt;0-length&gt;) now works, fixing PR#18563 as
    proposed by Mikael Jagan.
  * drop.terms(*) keeps + offset(.) terms when it should, PR#18565,
    and drop.terms() no longer makes up a response, PR#18566, fixing
    both bugs thanks to Mikael Jagan.
  * getS3method("t", "test") no longer finds the t.test() function,
    fixing PR#18627.
  * pdf() and postscript() support for the documented Adobe encodings
    "Greek" and "Cyrilllic" was missing (although the corresponding
    Windows' codepages could be used).
  * Computations of glyph metric information for pdf() and
    postscript() did not take into account that transliteration could
    replace one character by two or more (only seen on macOS 14) and
    typically warned that the information was not known.
  * rank(x) no longer overflows during integer addition, when
    computing rank average for largish but not-yet long vector x,
    fixing PR#18630, thanks to Ilia Kats.
  * list.files() on Windows now returns also files with names longer
    that 260 bytes (the Windows limit is 260 characters).
    Previously, some file names particularly with 'East Asian'
    characters were omitted.
  * cov2cor(&lt;0 x 0&gt;) now works, fixing PR#18423 thanks to Mikael
    Jagan and Elin Waring.
  * cov2cor(&lt;negative diagonal&gt;) and similar now give one warning
    instead of two, with better wording, fixing PR#18424 thanks to
    Mikael Jagan.
  * tools:: startDynamicHelp() now ensures port is in proper range,
    fixing PR#18645.
  * pbeta(x, a,b) is correct now for x=0 or 1 in the boundary cases
    where a or b or both are 0, fixing PR#18672 thanks to Michael
    Fay.
  * pmatch(x, table) for large table, also called for data frame row
    selection, dfrm[nm, ], is now interruptible, fixing PR#18656.
  * predict(&lt;rank-deficient lm&gt;, newdata=*) fix computing of nbasis,
    see Russ Lenth's comment 29 in PR#16158.
  * Added a work-around for a bug in macOS 14.3.1 and higher which
    prevents R plots in the Quartz Cocoa device from updating on
    screen.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1713960000">- CHANGES IN R 4.4.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Startup banners, R --version, sessionInfo() and R CMD check no
    longer report (64-bit) as part of the platform as this is almost
    universal - the increasingly rare 32-bit platforms will still
    report (32-bit).
    On Windows, ditto for window titles.
  * is.atomic(NULL) now returns FALSE, as NULL is not an atomic
    vector.  Strict back-compatibility would replace is.atomic(foo)
    by (is.null(foo) || is.atomic(foo)) but should happen only
    sparingly.
  NEW FEATURES:
  * The confint() methods for "glm" and "nls" objects have been
    copied to the stats package.  Previously, they were stubs which
    called versions in package MASS. The MASS namespace is no longer
    loaded if you invoke (say) confint(glmfit).  Further, the "glm"
    method for profile() and the plot() and pairs() methods for class
    "profile" have been copied from MASS to stats.  (profile.nls()
    and plot.profile.nls() were already in stats.)
  * The confint() and profile methods for "glm" objects have gained a
    possibility to do profiling based on the Rao Score statistic in
    addition to the default Likelihood Ratio. This is controlled by a
    new test = argument.
  * The pairs() method for "profile" objects has been extended with a
    which = argument to allow plotting only a subset of the
    parameters.
  * The "glm" method for anova() computes test statistics and
    p-values by default, using a chi-squared test or an F test
    depending on whether the dispersion is fixed or free.  Test
    statistics can be suppressed by giving argument test a false
    logical value.
  * In setRepositories() the repositories can be set using their
    names via name = instead of index ind =.
  * methods() and .S3methods() gain a all.names option for the (rare)
    case where functions starting with a . should be included.
  * Serializations can now be interrupted (e.g., by Ctrl-C on a
    Unix-alike) if they take too long, e.g., from save.image(),
    thanks to suggestions by Ivan Krylov and others on R-devel.
  * New startup option --max-connections to set the maximum number of
    simultaneous connections for the session.  Defaults to 128 as
    before: allowed values up to 4096 (but resource limits may in
    practice restrict to smaller values).
  * R on Windows (since Windows 10 2004) now uses the new Segment
    Heap allocator. This may improve performance of some
    memory-intensive applications.
  * When R packages are built, typically by R CMD build &lt;pkg&gt;, the
    new --user=&lt;build_user&gt; option overrides the (internally
    determined) user name, currently Sys.info()["user"] or LOGNAME.
    This is a (modified) fulfillment of Will Landau's suggestion in
    PR#17530.
  * tools::testInstalledBasic() gets new optional arguments outDir
    and testSrcdir, e.g., allowing to use it in a &lt;builddir&gt; !=
    &lt;srcdir&gt; setup, and in standard "binary" Windows installation
  * if* a source tests/ folder is present.
  * range(&lt;DT_with_Inf&gt;, finite = TRUE) now work for objects of class
    "Date", "POSIXct", and "POSIXlt" with infinite entries,
    analogously to range.default(), as proposed by Davis Vaughan on
    R-devel.  Other range()-methods can make use of new function
    .rangeNum().
  * New .internalGenerics object complementing .S3PrimitiveGenerics,
    for documentation and low-level book-keeping.
  * grid() now invisibly returns the x- and y- coordinates at which
    the grid-lines were drawn.
  * norm(., type) now also works for complex matrices.
  * kappa(., exact = TRUE, norm = *) now works for all norms and also
    for complex matrices.  In symmetric / triangular cases, the new
    argument uplo = "U" | "L" allows the upper or lower triangular
    part to be specified.
  * memDecompress(type = "unknown") recognizes compression in the
    default 'zlib' format as used by memCompress(type = "gzip").
  * memCompress() and memDecompress() will use the libdeflate library
    (&lt;https://github.com/ebiggers/libdeflate&gt;) if installed.  This
    uses the same type of compression for type = "gzip" but is 1.5-2x
    faster than the system libz library on some common platforms: the
    speed-up may depend on the library version.
  * diff() for objects of class "Date", "POSIXct", and "POSIXlt"
    accepts a units argument passed via ....
  * Dynamic help now does a much better job of rendering package
    DESCRIPTION metadata.
  * Rprof() gains an event argument and support for elapsed (real)
    time profiling on Unix (PR#18076).
  * filled.contour() gains a key.border argument.
  * tools::update_pkg_po() gets arguments pot_make and mo_make for
    _not_ re-making the corresponding files, and additionally a
    verbose argument.
  * Hexadecimal string colour specifications are now accepted in
    short form, so, for example, we can use "#123", which is
    equivalent to "#112233".
    Thanks to MikeFC for the original idea and Ella Kaye, Malcolm
    Barrett, George Stagg, and Hanne Oberman for the patch.
  * Plain-text help shows \var markup by angle brackets.
  * The new experimental primitive function declare() is intended to
    eventually allow information about R code to be communicated to
    the interpreter, compiler, and code analysis tools. The syntax
    for declarations is still being developed.
  * Functions psmirnov(), qsmirnov() and rsmirnov() in package stats
    have had argument two.sided renamed to alternative, to take into
    account that the permutation distributions of the one-sided
    statistics can be different in the case of ties.  Consequence of
    PR#18582.
  * sort() is now an implicit S4 generic in methods.
  * Formatting and printing, format(z), print(z), of complex vectors
    z no longer zap relatively small real or imaginary parts to zero,
    fixing PR#16752.  This is an API change, as it was documented
    previously to round real and imaginary parts together on purpose,
    producing nicer looking output.  As mentioned, e.g. in the PR,
    this change is compatible with many other "R-like" programming
    environments.
    We have simplified the internal code and now basically format the
    real and imaginary parts independently of each other.
  * New experimental functions Tailcall() and Exec() to support
    writing stack-space-efficient recursive functions.
  * Where characters are attempted to be plotted by pdf(),
    postscript() and xfig() which are not in the selected 8-bit
    character set (most often Latin-1) and the R session is using a
    UTF-8 locale, the warning messages will show the UTF-8 character
    rather than its bytes and one dot will be substituted per
    character rather than per byte.  (Platforms whose iconv() does
    transliteration silently plot the transliteration.)
    In a UTF-8 locale some transliterations are now done with a
    warning (e.g., dashes and Unicode minus to hyphen, ligatures are
    expanded, permille (‰) is replaced by o/oo), although the OS may
    have got there first.  These are warnings as they will continue
    to be replaced by dots in earlier versions of R.
  * The matrix multiplication functions crossprod() and tcrossprod()
    are now also primitive and S3 generic, as %*% had become in R
    4.3.0.
  * source() and example() have a new optional argument catch.aborts
    which allows continued evaluation of the R code after an error.
  * The non-Quartz tiff() devices allow additional types of
    compression if supported by the platform's libtiff library.
  * The list of base and recommended package names is now provided by
    tools::standard_package_names().
  * cairo_pdf() and cairo_ps() default to onefile = TRUE to closer
    match pdf() and postscript().
  * New option catch.script.errors provides a documented way to catch
    errors and then continue in non-interactive use.
  * L %||% R newly in base is an expressive idiom for the phrases
    if(!is.null(L)) L else R or if(is.null(L)) R else L.
  * The return value from warnings() now always inherits from
    "warnings" as documented, now also in the case of no warnings
    where it previously returned NULL.
  * as.complex("1i") now returns 0 + 1i instead of NA with a warning.
  * z &lt;- c(NA, 1i) now keeps the imaginary part Im(z[1]) == 0, no
    longer coercing to NA_complex_.  Similarly, cumsum(z) correctly
    sums real and imaginary parts separately, i.e., without
    "crosstalk" in case of NAs.
  * On Alpine Linux iconv() now maps "latin2", "latin-2", "latin9"
    and "latin-9" to encoding names the OS knows about
    (case-insensitively).
  * iconv(sub = "Unicode") now always zero-pads to four (hex) digits,
    rather than to 4 or 8.  (This seems to have become the convention
    once Unicode restricted the number of Unicode points to 2^21 - 1
    and so will never need more than 6 digits.)
  * NCOL(NULL) now returns 0 instead of 1, for consistency with
    cbind().
  * The information for the Euro glyph missing from the Adobe .afm
    files for the Courier, Helvetica and Times families has been
    copied from their URW equivalents - this will improve vertical
    centring in the pdf() and postscript() devices.
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.12.0.  The changes are almost entirely cosmetic.
  * The included LAPACK sources have been updated to version 3.12.0
    and some further double-complex routines added.
  * There are new font families for the 2014--5 URW 2.0 fonts (see
    ?pdf) which are included in recent versions of Ghostscript.
    These have font widths for most Greek glyphs and a few others
    which were missing from the original versions (whose font
    families remain available for reproducibility, although
    Ghostscript-based viewers will render using the 2.0 versions).
  * Improve the large-n efficiency of as.matrix(&lt;dist&gt;), thanks an R
    contributors effort, notably by Tim Taylor and Heather Turner,
    see PR#18660.
  * The default and numeric methods of all.equal() get a check.class
    option.
  * zapsmall() gets new optional arguments, function mFUN and min.d,
    for extra flexibility; fulfills a wish in PR#18199.  Also, it is
    now an implicit S4 generic in package methods.
  * The Rd filter for aspell() gains an ignore argument.
  * New generic function sort_by(), primarily useful for the
    data.frame method which can be used to sort rows of a data frame
    by one or more columns.
  * The icence headers for the RPC code in src/extra/xdr have been
    updated to use the GPL-compatible licence published by Oracle
    America in 2010.
  * New function pkg2HTML() in tools to create single-page HTML
    reference manuals for R packages.
  * The byte code evaluator now uses less C stack space for recursive
    calls to byte-compiled functions. It also makes more of an effort
    to avoid allocations for scalar return values.
  * New completion option backtick (disabled by default) allows
    non-syntactic completions to be wrapped in backquotes. This is
    currently only useful for Jupyter notebooks via the IRkernel
    package, and may cause problems for other backends.
  INSTALLATION:
  * The parser has been updated to work with bison 3.8.2, which is
    now used for the pre-generated parsers in gram.c, file.c, and
    gramRd.c. A few parser error messages have changed, which may
    affect code that relies on exact messages.
  INSTALLATION on a UNIX-ALIKE:
  * System valgrind headers are now required to use configure option
  - -with-valgrind-instrumentation with value 1 or 2.
  * configure will warn if it encounters a 32-bit build, as that is
    nowadays almost untested.
  * Environment variable R_SYSTEM_ABI is no longer used and so no
    longer recorded in etc/Renviron (it was not on Windows and was
    only ever used when preparing package tools).
  * If the libdeflate library and headers are available, libdeflate
    rather than libz is used to (de)compress R objects in lazy-load
    databases.  Typically tasks spend up to 5% of their time on such
    operations, although creating lazy-data databases is one of the
    exceptions.
    This can be suppressed if the library is available by the
    configure option --without-libdeflate-compression.
  * configure option --enable-lto=check has not worked reliably since
    2019 and has been removed.
  * The minimum autoconf requirement for a maintainer build has been
    increased to autoconf 2.71.
    It is intended to increase this to 2.72 for R 4.5.0: the
    distributed configure file was generated using 2.72.
  * The minimum version requirement for an external LAPACK has been
    reduced to 3.9.0.
  * No default C++ compiler is set if no C++17 compiler is detected:
    there is no longer an automatic fallback to C++14 or C++11.
    Compilers from the last five years should have sufficient
    support: for others macros CXX and CXXSTD can be set in file
    config.site to provide a fallback if needed.
    The Objective-C++ compiler now by default uses the standard
    selected by R for C++ (currently C++17) rather than the default
    standard for the C++ compiler (which on macOS is still C++98).
  INSTALLATION on macOS:
  * A new configure option --with-newAccelerate makes use of Apple's
    'new' BLAS / LAPACK interfaces in their Accelerate framework.
    Those interfaces are only available in macOS 13.3 or later, and
    building requires SDK 13.3 or later (from the Command Line Tools
    or Xcode 14.3 or later).
    By default the option uses new Accelerate for BLAS calls: to also
    use it for LAPACK use option --with-newAccelerate=lapack.  The
    later interfaces provide LAPACK 3.9.1 rather than 3.2.1: 3.9.1 is
    from 2021-04 and does not include the improved algorithms
    introduced in LAPACK 3.10.0 (including for BLAS calls).
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools44, an update of the Rtools43 toolchain.  It is
    based on GCC 13 and newer versions of MinGW-W64, binutils and
    libraries (targeting 64-bit Intel CPUs).  R-devel can no longer
    be built using Rtools43 without changes.
  * Rtools44 has experimental support for 64-bit ARM (aarch64) CPUs
    _via_ the LLVM 17 toolchain using lld, clang/flang-new and
    libc++.
  UTILITIES:
  * R CMD check notes when S4-style exports are used without
    declaring a strong dependence on package methods.
  * tools::checkRd() (used by R CMD check) detects more problems with
    \Sexpr-based dynamic content, including bad nesting of \Sexprs
    and invalid arguments.
  * tools::checkRd() now reports Rd titles and section names ending
    in a period; this is ignored by R CMD check unless environment
    variable _R_CHECK_RD_CHECKRD_MINLEVEL_ is set to -5 or smaller.
  * R CMD check now notes Rd files without an \alias, as long
    documented in 'Writing R Extensions' §1.3.1.  The check for a
    missing \description has been moved from tools::checkRd() to
    tools::checkRdContents().
  * R CMD check now visits inst/NEWS.Rd and OS-specific man
    subdirectories when checking Rd files.
  * tools::checkDocFiles() and tools::checkRdContents() now also
    check internal Rd files by default, but "specially" (ignoring
    missing documentation of arguments).
  * R CMD Rdiff gets option --useEx.
  * R CMD check now warns on non-portable uses of Fortran KIND such
    as INTEGER(KIND=4) and REAL(KIND=8).
    To see the failing lines set environment variable
    _R_CHECK_FORTRAN_KIND_DETAILS_ to a true value.
  * When checking Rd files, R CMD check now notes some of the "lost
    braces" that tools::checkRd() finds.  Typical problems are Rd
    macros missing the initial backslash (e.g., code{...}), in-text
    set notation (e.g., {1, 2}, where the braces need escaping), and
    \itemize lists with \describe-style entries of the form
    \item{label}{description}.
  * R CMD INSTALL (and hence check) will compile C++ code with
  - DR_NO_REMAP if environment variable _R_CXX_USE_NO_REMAP_ is set
    to a true value.  It is planned that this will in future become
    the default for compiling C++.
  * The new built-in Rd macro \dontdiff{} can be used to mark example
    code whose output should be ignored when comparing check output
    to reference output (tests/Examples/&lt;pkg&gt;-Ex.Rout.save).  The
    \dontdiff tag, like \donttest, is _not_ shown on the rendered
    help page, so provides a clean alternative to ##
    IGNORE_RDIFF_(BEGIN|END) comments.
  * R CMD build when there is no NAMESPACE, now uses the recommended
    exportPattern("^[^.]"), instead of exporting everything.
  * R CMD check now warns about non-ASCII characters in the NAMESPACE
    file (in addition to R files). Such packages are not portable and
    may fail to install on some platforms.
  C-LEVEL FACILITIES:
  * Headers R_ext/Applic.h and R-ext/Linpack.h used to include
    R_ext/BLAS.h although this was undocumented and unneeded by their
    documented entry points.  They no longer do so.
  * New function R_missing(), factored out from do_missing(), used to
    fix PR#18579.
  * SEXP type S4SXP has been renamed to OBJSXP to support
    experimenting with alternative object systems.  The S4SXP value
    can still be used in C code but is now deprecated.  Based on
    contributions from the R Consortium's Object-Oriented Programming
    Working Group.
  * New function pow1p(x,y) for accurate (1+x)^y.
  * mkCharLenCE was incorrectly documented to take a size_t length
    but was implemented with int (and character strings in R are
    limited to 2^31 - 1 bytes).
  DEPRECATED AND DEFUNCT:
  * data() no longer handles zipped data from long-defunct (since R
    2.13.0) --use-zip-data installations.
  * The legacy graphics devices pictex() and xfig() are now
    deprecated.  They do not support recent graphics enhancements and
    their font handling is rudimentary. The intention is to retain
    them for historical interest as long as they remain somewhat
    functional.
  * Support for encoding = "MacRoman" has been removed from the pdf()
    and postscript() devices - this was a legacy encoding supporting
    classic macOS up to 2001 and no longer has universal libiconv
    support.
  * is.R() is deprecated as no other S dialect is known to be in use
    (and this could only identify historical dialects, not future
    ones).
    Further information on calls can be obtained by setting the
    environment variable _R_DEPRECATED_IS_R_ to error which turns the
    deprecation warning into an error and so by default gives a
    traceback.  (This is done by R CMD check --as-cran.)
  * UseMethod() no longer forwards local variables assigned in the
    generic function into method call environments before evaluating
    the method body. This makes method calls behave more like
    standard function calls and makes method code easier to analyze
    correctly.
  * The twelve as.data.frame.&lt;class&gt;() methods which were deprecated
    only via _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ and in R CMD
    check --as-cran are formally deprecated now in favour of calling
    as.data.frame() or as.data.frame.vector().  The deprecation
    "check" now works also when as.data.frame() is S4 generic thanks
    to Ivan Krylov.
  * The default method for the directional comparison operators &lt;, &gt;,
    &lt;=, and &gt;= now signals an error when one of the operands is a
    language object, i.e. a symbol or a call.
  * For terms.formula(), deprecate abb and neg.out arguments
    _formally_ in addition to just documenting it.
  BUG FIXES:
  * The methods package is more robust to not being attached to the
    search path.  More work needs to be done.
  * pairwise.t.test() misbehaved when subgroups had 0 DF for
    variance, even with pool.sd = TRUE.  (PR#18594 by Jack Berry).
  * Probability distribution functions [dpq]&lt;distrib&gt;(x, *), but also
    bessel[IKJY](x, .) now consistently preserve attributes(x) when
    length(x) == 0, e.g., for a 2 x 0 matrix, thanks to Karolis
    Koncevičius' report PR#18509.
  * Group "Summary" computations such as sum(1:3, 4, na.rm = 5, NA,
    7, na.rm = LL) now give an error instead of either 17 or NN for
    LL true or false, as proposed by Ivan Krylov on the R-devel
    mailing list.  (This also means it is now an error to specify
    na.rm more than once.)
  * as.complex(x) now returns complex(real = x, imaginary = 0) for
    _all_ numerical and logical x, notably also for NA or
    NA_integer_.
  * Directories are now omitted by file.copy(, recursive = FALSE) and
    in file.append() (PR#17337).
  * gsub() and sub() are now more robust to integer overflow when
    reporting errors caused by too large input strings (PR#18346).
  * Top-level handlers are now more robust to attempts to remove a
    handler whilst handlers are running (PR#18508).
  * The handling of Alt+F4 in dialogs created on Windows using
    GraphApp has been fixed (PR#13870).
  * density() more consistently computes grid values for the
    FFT-based convolution, following Robert Schlicht's analysis and
    proposal in PR#18337, correcting density values typically by a
    factor of about 0.999.  Argument old.coords = TRUE provides back
    compatibility.
  * palette.colors() gains a name argument that defaults to FALSE
    controlling whether the vector of colours that is returned has
    names (where possible).  PR#18529.
  * tools::xgettext() no longer extracts the (non-translatable) class
    names from warningCondition and errorCondition calls.
  * S3method(&lt;gen&gt;, &lt;class&gt;, &lt;func&gt;) in the NAMESPACE file now works
    (again) when &lt;func&gt; is visible from the namespace, e.g.,
    imported, or in base.
  * getParseData(f) now also works for a function defined in the
    first of several &lt;pkg&gt;/R/*.R source files, thanks to Kirill
    Müller's report and Duncan Murdoch's patch in PR#16756.
  * Rd \Sexpr macros with nested #ifdef conditionals were not
    processed.
  * A non-blocking connection with non-default encoding (such as a
    socket) now correctly returns from readLines() after new data has
    arrived also when its EOF had been reached previously.  Thanks to
    Peter Meilstrup's report on R-devel and Ivan Krylov's report and
    patch proposal in PR#18555.
  * tools::checkRdContents() failed to detect empty argument
    descriptions when they spanned multiple lines, including those
    generated by prompt().  These cases are now noted by R CMD check.
  * Plain-text help no longer outputs spurious colons in the
    arguments list (for multi-line \item labels in the Rd source).
  * kappa() and rcond() work correctly in more cases; kappa(., norm =
    "2") now warns that it computes the 1-norm with (default) exact =
    FALSE; prompted by Mikael Jagan's quite comprehensive PR#18543.
  * Rd skeletons generated by prompt() or promptData() now use a
    dummy title (so R CMD build works).  tools::checkRdContents() has
    been updated to detect such template leftovers, including from
    promptPackage().
  * When S4 method dispatch fails because no method was found, the
    error message now includes the signature argument names; thanks
    to Michael Chirico's proposal on the R-devel list.
  * withAutoprint({ .. }) now preserves srcrefs previously lost,
    thanks to Andrew Simmons' report plus fix in PR#18572.
  * transform.data.frame() no longer adjusts names; in particular,
    untransformed variables are kept as-is, including those with
    syntactically invalid names (PR#17890).
  * The keep.source option for Rd \Sexpr blocks is no longer ignored.
  * The formula methods for t.test() and wilcox.test() now catch when
    paired is passed, addressing PR#14359; use Pair(x1, x2) ~ 1 for a
    paired test.
  * The level reported in the browser prompt was often too large. It
    now shows the number of browser contexts on the stack.
  * For cbind() and rbind(), the optional deparse.level argument is
    now properly passed to methods, thanks to Mikael Jagan's PR#18579
    and comments there.
  * Some error and warning messages for large ('long vector')
    matrix(v, nr, nc) and dim(m) &lt;- d are now correct about sizes,
    using long long formatting, fixing PR#18612 (and more) reported
    by Mikael Jagan.
  * readChar(useBytes = TRUE) now terminates strings even when the
    underlying connection uses extra spaces in the input buffer.
    This fixes problems with extra garbage seen with gzip
    connections, PR#18605.
  * Named capture in PCRE regular expressions now works also with
    more than 127 named groups (PR#18588).
  * Datetime functions are now robust against long jumps when dealing
    with internal time zone changes.  This avoids confusing warnings
    about an invalid time zone, previously triggered by turning
    warnings into errors or handling them via tryCatch (PR#17966,
    PR#17780).
  * Datetime functions now restore even an empty TZ environment
    variable after internal time zone changes (PR#17724).  This makes
    results of datetime functions with this (typically unintentional)
    setting more predictable.
  * drop.terms(*) now drops response as by default, keep.response =
    FALSE, fixing PR#18564 thanks to Mikael Jagan.
  * dummy.coef(.) now also works for lm()-models with character
    categorical predictor variables rather than factor ones, fixing
    PR#18635 reported by Jinsong Zhao.
  * formals(f) &lt;- formals(f) now also works for a function w/o
    arguments and atomic _constant_ body(f).
  * Correct as.function(&lt;invalid list&gt;, .)'s error message.
  * removeSource() is yet more thorough in finding and removing
    "srcref" and the other source references from parsed R language
    chunks, fixing PR#18638 thanks to Andrew Simmons.
  * dgeom() is more accurate now, notably when its result is very
    small, fixing PR#18642 thanks to the proposal of Morten Welinder,
    also improving other instances where C level binom_raw(x, n, ..)
    has x == 0 or x== n.
  * warning() with options(warn = 1) has improved output for
    multi-line messages.
  * axis.Date() and axis.POSIXct() now respect the par("lab") setting
    for the number of pretty() intervals.
  * Comparisons for language objects (which are based on deparsing)
    are now more careful about using accurate deparsed results
    (PR#18676).
  * Plain-text help (Rd2txt) now correctly preserves blank lines
    following single-line \dontrun code.
  * &lt;POSIXlt&gt;[*] no longer sets wrong "balanced" attribute, fixing
    PR#18681 thanks to Mikael Jagan.
  * str(&lt;classed-call&gt;) now deparses the call as expected, fixing
    PR#18684, reported by Dave Slager.
  * In Rd examples, code following the closing brace of a \dontrun,
    \dontshow or \donttest tag on the same line is no longer skipped
    when R CMD check runs the examples.
  * as.data.frame(matrix(*, ncol=0)) now gets valid names() and
    colnames(); reported by Davis Vaughan on the R-devel list.
  * Internal Mathlib function stirlerr(n) is now almost fully
    (52-bit) accurate for all n &gt;= ~5.9 and more accurate also in the
    range 1 -- 5.9.  This entails small ("after 12th decimal")
    changes in density functions, e.g., dgamma() in _some_ regions of
    their support.  The fix was partly prompted by Morten Welinder's
    PR#18640.
  * Numbers like 9876543.2 are now considered non-integer by Mathlib
    internal R_nonint(), amending original fix of PR#15734.
  * Rd comment lines no longer cause broken paragraphs in the
    rendered PDF and plain-text help. In code blocks, pure comment
    lines (starting with %) no longer produce an empty line.
  * xtabs(Freq ~ .) now consistently defaults to na.action = na.pass,
    using na.rm = FALSE (added as an argument) when summing over Freq
    (PR#17770).
  * tools::testInstalledPackage() is no longer silent about failures
    from running examples or tests and its return code no longer
    ignores failures from checking vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1718366400">- CHANGES IN R 4.4.1:
  C-LEVEL FACILITIES:
  * Functions R_atof and R_strtod declared in header R_ext/Utils.h
    are now documented in 'Writing R Extensions' and so formally part
    of the API.
  * The non-API entry points Rf_setSVector, Rf_StringFalse,
    Rf_StringTrue and Rf_isBlankString have been added to those
    reported by R CMD check.
  * The new function Rf_allocLang is now available. This provides an
    alternative to the idiom of calling Rf_allocList followed by
    SET_TYPEOF.
  UTILITIES:
  * R CMD check now reports as warnings what gfortran calls 'Fortran
    2018 deleted features', all of which have long been marked as
    'obsolescent' and some of which were deleted in Fortran 2008 or
    earlier.  Fortran compilers are no longer required to support
    these.
  BUG FIXES:
  * as.numeric(), scan(), type.convert() and other places which use
    the internal C function R_strtod now require a _non-empty_ digit
    sequence in a decimal or binary exponent.  This aligns with the
    C/POSIX standard for strtod and with ?NumericConstants.
  * as.data.frame(m, make.names=NA) now works correctly for a matrix
    m with NA's in row names.
  * The error message from &lt;POSIXlt&gt;[["hour"]] and similar now
    mentions *[[, "hour"]], as wished for in PR#17409 and proposed by
    Michael Chirico.
  * qbinom() and potentially qpois(), qnbinom(), no longer sometimes
    fail accurate inversion (of pbinom(), etc), thanks to Christopher
    Chang's report and patch in PR#18711.
  * The internal help server on Windows can again serve requests sent
    in quick succession, fixing a regression in R 4.4.0.
  * debugcall(&lt;S3Generic&gt;()) now also works when a corresponding
    S4-generic version is in the methods cache (PR#18143).
  * Package tools' toTitleCase(ch0) now returns character(0) when ch0
    is of zero length; fixing PR#18724, reported by David Hugh Jones.
  * R CMD check is no longer broken (without a check result and no
    explanation in 00check.log) for a package which declares an
    invalid VignetteBuilder in DESCRIPTION but has no vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1730376000">- CHANGES IN R 4.4.2:
  C-LEVEL FACILITIES:
  * The S-compatibility macros F77_COM and F77_COMDECL defined in
    header R_ext/RS.h are deprecated and will be removed shortly.  We
    could find no record of their use.
  BUG FIXES:
  * Mathlib function lgammacor(x) no longer warns about underflow to
    zero for large x.
  * Text widths and heights were incorrectly reported by the Quartz
    device if the drawing context didn't exist yet (typically when
    drawing off-screen to a window that is yet to appear, see
    PR#18591).
  * The Quartz device could segfault in cases where paths with spaces
    are used in the new glyph drawing API.  Thanks to Tomek
    Gieorgijewski (PR#18758).
  * On macOS in R CRAN builds, it is again possible to read
    little-endian UTF-16 text with a BOM from a connection using
    encoding="UTF-16".  Users building R from source should avoid
    using the system libiconv in macOS 14.1 and later.
  * methods' internal .requirePackage() now re-enables primitive
    method dispatch when needed; thanks to Ivan Krylov for
    demystifying CRAN package check failures on the R-devel mailing
    list.</changelog>
</package>
<package pkgid="de65baa32f63dc2454f8f4c37aba69b14fa6d3c74526bf6fb25cfb7f33b9ea7753b53c42183c1fa2978f58f874f98d6e2a0c9a9782618a0b543c7c1d6bbce039" name="R-core-libs" arch="i586">
  <version epoch="0" ver="4.4.2" rel="51.0.2.2.sr20241103"/>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1620302400">- To get in sync with d:l:R:autoCRAN the Matrix package's split
  in -devel was reversed.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339200">- improved spec file according to comments of dimstar in
  https://build.opensuse.org/request/show/892685</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339201">- CHANGES IN R 4.1.0:
  FUTURE DIRECTIONS:
  * It is planned that the 4.1.x series will be the last to support
    32-bit Windows, with production of binary packages for that
    series continuing until early 2023.
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Data set esoph in package datasets now provides the correct
    numbers of controls; previously it had the numbers of cases added
    to these.  (Reported by Alexander Fowler in PR#17964.)
  NEW FEATURES:
  * www.omegahat.net is no longer one of the repositories known by
    default to setRepositories().  (Nowadays it only provides source
    packages and is often unavailable.)
  * Function package_dependencies() (in package tools) can now use
    different dependency types for direct and recursive dependencies.
  * The checking of the size of tarball in R CMD check --as-cran
    &lt;pkg&gt; may be tweaked via the new environment variable
    _R_CHECK_CRAN_INCOMING_TARBALL_THRESHOLD_, as suggested in
    PR#17777 by Jan Gorecki.
  * Using c() to combine a factor with other factors now gives a
    factor, an ordered factor when combining ordered factors with
    identical levels.
  * apply() gains a simplify argument to allow disabling of
    simplification of results.
  * The format() method for class "ftable" gets a new option justify.
    (Suggested by Thomas Soeiro.)
  * New ...names() utility.  (Proposed by Neal Fultz in PR#17705.)
  * type.convert() now warns when its as.is argument is not
    specified, as the help file always said it _should_.  In that
    case, the default is changed to TRUE in line with its change in
    read.table() (related to stringsAsFactor) in R 4.0.0.
  * When printing list arrays, classed objects are now shown _via_
    their format() value if this is a short enough character string,
    or by giving the first elements of their class vector and their
    length.
  * capabilities() gets new entry "Rprof" which is TRUE when R has
    been configured with the equivalent of --enable-R-profiling (as
    it is by default).  (Related to Michael Orlitzky's report
    PR#17836.)
  * str(xS4) now also shows extraneous attributes of an S4 object
    xS4.
  * Rudimentary support for vi-style tags in rtags() and R CMD rtags
    has been added.  (Based on a patch from Neal Fultz in PR#17214.)
  * checkRdContents() is now exported from tools; it and also
    checkDocFiles() have a new option chkInternal allowing to check
    Rd files marked with keyword "internal" as well.  The latter can
    be activated for R CMD check via environment variable
    _R_CHECK_RD_INTERNAL_TOO_.
  * New functions numToBits() and numToInts() extend the raw
    conversion utilities to (double precision) numeric.
  * Functions URLencode() and URLdecode() in package utils now work
    on vectors of URIs.  (Based on patch from Bob Rudis submitted
    with PR#17873.)
  * path.expand() can expand ~user on most Unix-alikes even when
    readline is not in use.  It tries harder to expand ~, for example
    should environment variable HOME be unset.
  * For HTML help (both dynamic and static), Rd file links to help
    pages in external packages are now treated as references to
    topics rather than file names, and fall back to a file link only
    if the topic is not found in the target package. The earlier rule
    which prioritized file names over topics can be restored by
    setting the environment variable _R_HELP_LINKS_TO_TOPICS_ to a
    false value.
  * c() now removes NULL arguments before dispatching to methods,
    thus simplifying the implementation of c() methods, _but_ for
    back compatibility keeps NULL when it is the first argument.
    (From a report and patch proposal by Lionel Henry in PR#17900.)
  * Vectorize()'s result function's environment no longer keeps
    unneeded objects.
  * Function ...elt() now propagates visibility consistently with
    ..n.  (Thanks to Lionel Henry's PR#17905.)
  * capture.output() no longer uses non-standard evaluation to
    evaluate its arguments.  This makes evaluation of functions like
    parent.frame() more consistent.  (Thanks to Lionel Henry's
    PR#17907.)
  * packBits(bits, type="double") now works as inverse of
    numToBits().  (Thanks to Bill Dunlap's proposal in PR#17914.)
  * curlGetHeaders() has two new arguments, timeout to specify the
    timeout for that call (overriding getOption("timeout")) and TLS
    to specify the minimum TLS protocol version to be used for
    https:// URIs (_inter alia_ providing a means to check for sites
    using deprecated TLS versions 1.0 and 1.1).
  * For nls(), an optional constant scaleOffset may be added to the
    denominator of the relative offset convergence test for cases
    where the fit of a model is expected to be exact, thanks to a
    proposal by John Nash.  nls(*, trace=TRUE) now also shows the
    convergence criterion.
  * Numeric differentiation _via_ numericDeriv() gets new optional
    arguments eps and central, the latter for taking central divided
    differences.  The latter can be activated for nls() via
    nls.control(nDcentral = TRUE).
  * nls() now passes the trace and control arguments to getInitial(),
    notably for all self-starting models, so these can also be fit in
    zero-noise situations via a scaleOffset.  For this reason, the
    initial function of a selfStart model must now have ... in its
    argument list.
  * bquote(splice = TRUE) can now splice expression vectors with
    attributes: this makes it possible to splice the result of
    parse(keep.source = TRUE).  (Report and patch provided by Lionel
    Henry in PR#17869.)
  * textConnection() gets an optional name argument.
  * get(), exists(), and get0() now signal an error if the first
    argument has length greater than 1.  Previously additional
    elements were silently ignored.  (Suggested by Antoine Fabri on
    R-devel.)
  * R now provides a shorthand notation for creating functions, e.g.
    \(x) x + 1 is parsed as function(x) x + 1.
  * R now provides a simple native forward pipe syntax |&gt;.  The
    simple form of the forward pipe inserts the left-hand side as the
    first argument in the right-hand side call.  The pipe
    implementation as a syntax transformation was motivated by
    suggestions from Jim Hester and Lionel Henry.
  * all.equal(f, g) for functions now by default also compares their
    environment(.)s, notably via new all.equal method for class
    function.  Comparison of nls() fits, e.g., may now need
    all.equal(m1, m2, check.environment = FALSE).
  * .libPaths() gets a new option include.site, allowing to _not_
    include the site library.  (Thanks to Dario Strbenac's suggestion
    and Gabe Becker's PR#18016.)
  * Lithuanian translations are now available.  (Thanks to Rimantas
    Zakauskas.)
  * names() now works for DOTSXP objects.  On the other hand, in
    R-lang, the R language manual, we now warn against relying on the
    structure or even existence of such dot-dot-dot objects.
  * all.equal() no longer gives an error on DOTSXP objects.
  * capabilities("cairo") now applies only to the file-based devices
    as it is now possible (if very unusual) to build R with Cairo
    support for those but not for X11().
  * There is optional support for tracing the progress of
    loadNamespace() - see its help.
  * (Not Windows.)  l10n_info() reports an additional element, the
    name of the encoding as reported by the OS (which may differ from
    the encoding part (if any) of the result from
    Sys.getlocale("LC_CTYPE").
  * New function gregexec() which generalizes regexec() to find _all_
    disjoint matches and well as all substrings corresponding to
    parenthesized subexpressions of the given regular expression.
    (Contributed by Brodie Gaslam.)
  * New function charClass() in package utils to query the
    wide-character classification functions in use (such as
    iswprint).
  * The names of quantile()'s result no longer depend on the global
    getOption("digits"), but quantile() gets a new optional argument
    digits = 7 instead.
  * grep(), sub(), regexp and variants work considerably faster for
    long factors with few levels.  (Thanks to Michael Chirico's
    PR#18063.)
  * Provide grouping of x11() graphics windows within a window
    manager such as Gnome or Unity; thanks to a patch by Ivan Krylov
    posted to R-devel.
  * The split() method for class data.frame now allows the f argument
    to be specified as a formula.
  * sprintf now warns on arguments unused by the format string.
  * New palettes "Rocket" and "Mako" for hcl.colors() (approximating
    palettes of the same name from the 'viridisLite' package).
    Contributed by Achim Zeileis.
  * The base environment and its namespace are now locked (so one can
    no longer add bindings to these or remove from these).
  * Rterm handling of multi-byte characters has been improved,
    allowing use of such characters when supported by the current
    locale.
  * Rterm now accepts ALT+ +xxxxxxxx sequences to enter Unicode
    characters as hex digits.
  * Environment variable LC_ALL on Windows now takes precedence over
    LC_CTYPE and variables for other supported categories, matching
    the POSIX behaviour.
  * duplicated() and anyDuplicated() are now optimized for integer
    and real vectors that are known to be sorted via the ALTREP
    framework. Contributed by Gabriel Becker via PR#17993.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 14
    and so packages that provide graphics devices should be
    reinstalled.
  * Graphics devices should now specify deviceVersion to indicate
    what version of the graphics engine they support.
  * Graphics devices can now specify deviceClip.  If TRUE, the
    graphics engine will never perform any clipping of output itself.
    The clipping that the graphics engine does perform (for both
    canClip = TRUE and canClip = FALSE) has been improved to avoid
    producing unnecessary artifacts in clipped output.
  * The grid package now allows gpar(fill) to be a linearGradient(),
    a radialGradient(), or a pattern().  The viewport(clip) can now
    also be a grob, which defines a clipping path, and there is a new
    viewport(mask) that can also be a grob, which defines a mask.
    These new features are only supported so far on the Cairo-based
    graphics devices and on the pdf() device.
  * (Not Windows.)  A warning is given when a Cairo-based type is
    specified for a png(), jpeg(), tiff() or bmp() device but Cairo
    is unsupported (so type = "Xlib" is tried instead).
  * grSoftVersion() now reports the versions of FreeType and
    FontConfig if they are used directly (not _via_ Pango), as is
    most commonly done on macOS.
  C-LEVEL FACILITIES:
  * The _standalone_ libRmath math library and R's C API now provide
    log1pexp() again as documented, and gain log1mexp().
  INSTALLATION on a UNIX-ALIKE:
  * configure checks for a program pkgconf if program pkg-config is
    not found.  These are now only looked for on the path (like
    almost all other programs) so if needed specify a full path to
    the command in PKG_CONFIG, for example in file config.site.
  * C99 function iswblank is required - it was last seen missing ca
    2003 so the workaround has been removed.
  * There are new configure options --with-internal-iswxxxxx,
  - -with-internal-towlower and --with-internal-wcwidth which allows
    the system functions for wide-character classification,
    case-switching and width (wcwidth and wcswidth) to be replaced by
    internal ones.  The first has long been used on macOS, AIX (and
    Windows) but this enables it to be unselected there and selected
    for other platforms (it is the new default on Solaris).  The
    second is new in this version of R and is selected by default on
    macOS and Solaris.  The third has long been the default and
    remains so as it contains customizations for East Asian
    languages.
    System versions of these functions are often minimally
    implemented (sometimes only for ASCII characters) and may not
    cover the full range of Unicode points: for example Solaris (and
    Windows) only cover the Basic Multilingual Plane.
  * Cairo installations without X11 are more likely to be detected by
    configure, when the file-based Cairo graphics devices will be
    available but not X11(type = "cairo").
  * There is a new configure option --with-static-cairo which is the
    default on macOS.  This should be used when only static cairo
    (and where relevant, Pango) libraries are available.
  * Cairo-based graphics devices on platforms without Pango but with
    FreeType/FontConfig will make use of the latter for font
    selection.
  LINK-TIME OPTIMIZATION on a UNIX-ALIKE:
  * Configuring with flag --enable-lto=R now also uses LTO when
    installing the recommended packages.
  * R CMD INSTALL and R CMD SHLIB have a new flag --use-LTO to use
    LTO when compiling code, for use with R configured with
  - -enable-lto=R.  For R configured with --enable-lto, they have
    the new flag --no-use-LTO.
    Packages can opt in or out of LTO compilation _via_ a UseLTO
    field in the DESCRIPTION file.  (As usual this can be overridden
    by the command-line flags.)
  BUILDING R on Windows:
  * for GCC &gt;= 8, FC_LEN_T is defined in config.h and hence character
    lengths are passed from C to Fortran in _inter alia_ BLAS and
    LAPACK calls.
  * There is a new text file src/gnuwin32/README.compilation, which
    outlines how C/Fortran code compilation is organized and
    documents new features:
  * R can be built with Link-Time Optimization with a suitable
    compiler - doing so with GCC 9.2 showed several
    inconsistencies which have been corrected.
  * There is support for cross-compiling the C and Fortran code
    in R and standard packages on suitable (Linux) platforms.
    This is mainly intended to allow developers to test later
    versions of compilers - for example using GCC 9.2 or 10.x has
    detected issues that GCC 8.3 in Rtools40 does not.
  * There is experimental support for cross-building R packages
    with C, C++ and/or Fortran code.
  * The R installer can now be optionally built to support a single
    architecture (only 64-bit or only 32-bit).
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++14 where
    available (which it is on all currently checked platforms): if
    not (as before) C++11 is used if available otherwise C++ is not
    supported.
    Packages which specify C++11 will still be installed using C++11.
    C++14 compilers may give deprecation warnings, most often for
    std::random_shuffle (deprecated in C++14 and removed in C++17).
    Either specify C++11 (see 'Writing R Extensions') or modernize
    the code and if needed specify C++14.  The latter has been
    supported since R 3.4.0 so the package's DESCRIPTION would need
    to include something like
    Depends: R (&gt;= 3.4)
  PACKAGE INSTALLATION on Windows:
  * R CMD INSTALL and R CMD SHLIB make use of their flag --use-LTO
    when the LTO_OPT make macro is set in file etc/${R_ARCH}/Makeconf
    or in a personal/site Makevars file.  (For details see 'Writing R
    Extensions' SS4.5.)
    This provides a valuable check on code consistency.  It does work
    with GCC 8.3 as in Rtools40, but that does not detect everything
    the CRAN checks with current GCC do.
  PACKAGE INSTALLATION on macOS:
  * The default personal library directory on builds with
  - -enable-aqua (including CRAN builds) now differs by CPU type,
    one of
    ~/Library/R/x86_64/x.y/library
    ~/Library/R/arm64/x.y/library
    This uses the CPU type R (and hence the packages) were built for,
    so when a x86_64 build of R is run under Rosetta emulation on an
    arm64 Mac, the first is used.
  UTILITIES:
  * R CMD check can now scan package functions for bogus return
    statements, which were possibly intended as return() calls (wish
    of PR#17180, patch by Sebastian Meyer). This check can be
    activated via the new environment variable
    _R_CHECK_BOGUS_RETURN_, true for --as-cran.
  * R CMD build omits tarballs and binaries of previous builds from
    the top-level package directory.  (PR#17828, patch by Sebastian
    Meyer.)
  * R CMD check now runs sanity checks on the use of LazyData, for
    example that a data directory is present and that
    LazyDataCompression is not specified without LazyData and has a
    documented value.  For packages with large LazyData databases
    without specifying LazyDataCompression, there is a reference to
    the code given in 'Writing R Extensions' SS1.1.6 to test the
    choice of compression (as in all the CRAN packages tested a
    non-default method was preferred).
  * R CMD build removes LazyData and LazyDataCompression fields from
    the DESCRIPTION file of packages without a data directory.
  ENCODING-RELATED CHANGES:
  * The parser now treats \Unnnnnnnn escapes larger than the upper
    limit for Unicode points (\U10FFFF) as an error as they cannot be
    represented by valid UTF-8.
    Where such escapes are used for outputting non-printable
    (including unassigned) characters, 6 hex digits are used (rather
    than 8 with leading zeros).  For clarity, braces are used, for
    example \U{0effff}.
  * The parser now looks for non-ASCII spaces on Solaris (as
    previously on most other OSes).
  * There are warnings (including from the parser) on the use of
    unpaired surrogate Unicode points such as \uD834.  (These cannot
    be converted to valid UTF-8.)
  * Functions nchar(), tolower(), toupper() and chartr() and those
    using regular expressions have more support for inputs with a
    marked Latin-1 encoding.
  * The character-classification functions used (by default) to
    replace the system iswxxxxx functions on Windows, macOS and AIX
    have been updated to Unicode 13.0.0.
    The character-width tables have been updated to include new
    assignments in Unicode 13.0.0.
  * The code for evaluating default (extended) regular expressions
    now uses the same character-classification functions as the rest
    of R (previously they differed on Windows, macOS and AIX).
  * There is a build-time option to replace the system's
    wide-character wctrans C function by tables shipped with R: use
    configure option --with-internal-towlower or (on Windows)
  - DUSE_RI18N_CASE in CFLAGS when building R.  This may be needed
    to allow tolower() and toupper() to work with Unicode characters
    beyond the Basic Multilingual Plane where not supported by system
    functions (e.g. on Solaris where it is the new default).
  * R is more careful when truncating UTF-8 and other multi-byte
    strings that are too long to be printed, passed to the system or
    libraries or placed into an internal buffer.  Truncation will no
    longer produce incomplete multibyte characters.
  DEPRECATED AND DEFUNCT:
  * Function plclust() from the package stats and
    package.dependencies(), pkgDepends(), getDepList(),
    installFoundDepends(), and vignetteDepends() from package tools
    are defunct.
  * Defunct functions checkNEWS() and readNEWS() from package tools
    and CRAN.packages() from utils have been removed.
  * R CMD config CXXCPP is defunct (it was deprecated in R 3.6.2).
  * parallel::detectCores() drops support for Irix (retired in 2013).
  * The LINPACK argument to chol.default(), chol2inv(),
    solve.default() and svd() has been defunct since R 3.1.0.  It was
    silently ignored up to R 4.0.3 but now gives an error.
  * Subsetting/indexing, such as ddd[*] or ddd$x on a DOTSXP
    (dot-dot-dot) object ddd has been disabled; it worked by accident
    only and was undocumented.
  BUG FIXES:
  * Many more C-level allocations (mainly by malloc and strdup) are
    checked for success with suitable alternative actions.
  * Bug fix for replayPlot(); this was turning off graphics engine
    display list recording if a recorded plot was replayed in the
    same session.  The impact of the bug became visible if resize the
    device after replay OR if attempted another savePlot() after
    replay (empty display list means empty screen on resize or empty
    saved plot).
  * R CMD check etc now warn when a package exports non-existing S4
    classes or methods, also in case of no "methods" presence.
    (Reported by Alex Bertram; reproducible example and patch by
    Sebastian Meyer in PR#16662.)
  * boxplot() now also accepts calls for labels such as ylab, the
    same as plot().  (Reported by Marius Hofert.)
  * The help page for xtabs() now correctly states that addNA is
    setting na.action = na.pass among others.  (Reported as PR#17770
    by Thomas Soeiro.)
  * The R CMD check &lt;pkg&gt; gives a longer and more comprehensible
    message when DESCRIPTION misses dependencies, e.g., in Imports:.
    (Thanks to the contributors of PR#17179.)
  * update.default() now calls the generic update() on the formula to
    work correctly for models with extended formulas.  (As reported
    and suggested by Neal Fultz in PR#17865.)
  * The horizontal position of leaves in a dendrogram is now correct
    also with center = FALSE.  (PR#14938, patch from Sebastian
    Meyer.)
  * all.equal.POSIXt() no longer warns about and subsequently ignores
    inconsistent "tzone" attributes, but describes the difference in
    its return value (PR#17277).  This check can be disabled _via_
    the new argument check.tzone = FALSE as suggested by Sebastian
    Meyer.
  * as.POSIXct() now populates the "tzone" attribute from its tz
    argument when x is a logical vector consisting entirely of NA
    values.
  * x[[2^31]] &lt;- v now works.  (Thanks to the report and patch by
    Suharto Anggono in PR#17330.)
  * In log-scale graphics, axis() ticks and label positions are now
    computed more carefully and symmetrically in their range,
    typically providing _more_ ticks, fulfilling wishes in PR#17936.
    The change really corresponds to an improved axisTicks() (package
    grDevices), potentially influencing grid and lattice, for
    example.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now correct to at
    least five digits where it was catastrophically wrong,
    previously.
  * sum(df) and similar "Summary"- and "Math"-group member functions
    now work for data frames df with logical columns, notably also of
    zero rows.  (Reported to R-devel by Martin "b706".)
  * unsplit() had trouble with tibbles due to unsound use of rep(NA,
    len)-indexing, which should use NA_integer_ (Reported to R-devel
    by Mario Annau.)
  * pnorm(x, log.p = TRUE) underflows to -Inf slightly later.
  * show(&lt;hidden S4 generic&gt;) prints better and without quotes for
    non-hidden S4 generics.
  * read.table() and relatives treated an "NA" column name as missing
    when check.names = FALSE PR#18007.
  * Parsing strings containing UTF-16 surrogate pairs such as
    "\uD834\uDD1E" works better on some (uncommon) platforms.
    sprintf("%X", utf8ToInt("\uD834\uDD1E")) should now give "1D11E"
    on all platforms.
  * identical(x,y) is no longer true for differing DOTSXP objects,
    fixing PR#18032.
  * str() now works correctly for DOTSXP and related exotics, even
    when these are doomed.
    Additionally, it no longer fails for lists with a class and
    "irregular" method definitions such that e.g. lapply(*) will
    necessarily fail, as currently for different igraph objects.
  * Too long lines in environment files (e.g. Renviron) no longer
    crash R. This limit has been increased to 100,000 bytes.
    (PR#18001.)
  * There is a further workaround for FreeType giving incorrect
    italic font faces with cairo-based graphics devices on macOS.
  * add_datalist(*, force = TRUE) (from package tools) now actually
    updates an existing data/datalist file for new content.  (Thanks
    to a report and patch by Sebastian Meyer in PR#18048.)
  * cut.Date() and cut.POSIXt() could produce an empty last interval
    for breaks = "months" or breaks = "years".  (Reported as PR#18053
    by Christopher Carbone.)
  * Detection of the encoding of 'regular' macOS locales such as
    en_US (which is UTF-8) had been broken by a macOS change:
    fortunately these are now rarely used with en_US.UTF-8 being
    preferred.
  * sub() and gsub(pattern, repl, x, *) now keep attributes of x such
    as names() also when pattern is NA (PR#18079).
  * Time differences ("difftime" objects) get a replacement and a
    rep() method to keep "units" consistent.  (Thanks to a report and
    patch by Nicolas Bennett in PR#18066.)
  * The \RdOpts macro, setting defaults for \Sexpr options in an Rd
    file, had been ineffective since R 2.12.0: it now works again.
    (Thanks to a report and patch by Sebastian Meyer in PR#18073.)
  * mclapply and pvec no longer accidentally terminate parallel
    processes started before by mcparallel or related calls in
    package parallel (PR#18078).
  * grep and other functions for evaluating (extended) regular
    expressions handle in Unicode also strings not explicitly flagged
    UTF-8, but flagged native when running in UTF-8 locale.
  * Fixed a crash in fifo implementation on Windows (PR#18031).
  * Binary mode in fifo on Windows is now properly detected from
    argument open (PR#15600, PR#18031).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1622808000">- The line %{__install} -m 755 -d %{_infodir}
  no longer works in TW or Factory.
  But without that line it works everywhere. So this instruction
  was commented out of the spec file.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1628596800">- CHANGES IN R 4.1.1:
  NEW FEATURES:
  * require(pkg, quietly = TRUE) is quieter and in particular does
    not warn if the package is not found.
  DEPRECATED AND DEFUNCT:
  * Use of ftp:// URIs should be regarded as deprecated, with
    on-going support confined to method = "libcurl" and not routinely
    tested.  (Nowadays no major browser supports them.)
  * The non-default method = "internal" is deprecated for http:// and
    ftp:// URIs for both download.file and url.
  * On Windows, method = "wininet" is deprecated for http://,
    https:// and ftp:// URIs for both download.file and url.  (A
    warning is only given for ftp://.)
    For ftp:// URIs the default method is now "libcurl" if available
    (which it is on CRAN builds).
    method = "wininet" remains the default for http:// and https://
    URIs but if libcurl is available, using method = "libcurl" is
    preferred.
  INSTALLATION:
  * make check now works also without a LaTeX installation.  (Thanks
    to Sebastian Meyer's PR#18103.)
  BUG FIXES:
  * make check-devel works again in an R build configured with
  - -without-recommended-packages.
  * qnbinom(p, size, mu) for large size/mu is correct now in a range
    of cases (PR#18095); similarly for the (size, prob)
    parametrization of the negative binomial.  Also qpois() and
    qbinom() are better and or faster for extreme cases.  The
    underlying C code has been modularized and is common to all four
    cases of discrete distributions.
  * gap.axis is now part of the axis() arguments which are passed
    from bxp(), and hence boxplot().  (Thanks to Martin Smith's
    report and suggestions in PR#18109.)
  * .First and .Last can again be set from the site profile.
  * seq.int(from, to, *) and seq.default(..) now work better in large
    range cases where from-to is infinite where the two boundaries
    are finite.
  * all.equal(x,y) now returns TRUE correctly also when several
    entries of abs(x) and abs(y) are close to .Machine$double.xmax,
    the largest finite numeric.
  * model.frame() now clears the object bit when removing the class
    attribute of a value via na.action (PR#18100).
  * charClass() now works with multi-character strings on Windows
    (PR#18104, fixed by Bill Dunlap).
  * encodeString() on Solaris now works again in Latin-1 encoding on
    characters represented differently in UTF-8.  Support for
    surrogate pairs on Solaris has been improved.
  * file.show() on Windows now works with non-ASCII path names
    representable in the current native encoding (PR#18132).
  * Embedded R on Windows can now find R home directory via the
    registry even when installed only for the current user
    (PR#18135).
  * pretty(x) with finite x now returns finite values also in the
    case where the extreme x values are close in size to the maximal
    representable number .Machine$double.xmax.
    Also, it's been tweaked for very small ranges and when a boundary
    is close (or equal) to zero; e.g., pretty(c(0,1e-317)) no longer
    has negative numbers, currently still warning about a very small
    range, and pretty(2^-(1024 - 2^-1/(c(24,10)))) is more accurate.
  * The error message for not finding vignette files when weaving has
    correct file sizes now. (Thanks to Sebastian Meyer's PR#18154.)
  * dnbinom(20, &lt;large&gt;, 1) now correctly gives 0, and similar cases
    are more accurate with underflow precaution.  (Reported by Francisco Vera Alcivar in PR#18072.)</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635163200">- repaired https://bugzilla.suse.com/show_bug.cgi?id=1191380
  (rpmacros now go to rpmmacrodir)
- minor clean-ups in spec file</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635768000">- CHANGES IN R 4.1.2:
  C-LEVEL FACILITIES:
  * The workaround in headers R.h and Rmath.h (using namespace std;)
    for the Oracle Developer Studio compiler is no longer needed now
    C++11 is required so has been removed.  A couple more usages of
    log() (which should have been std::log()) with an int argument
    are reported on Solaris.
  * The undocumented limit of 4095 bytes on messages from the
    S-compatibility macros PROBLEM and MESSAGE is now documented and
    longer messages will be silently truncated rather than
    potentially causing segfaults.
  * If the R_NO_SEGV_HANDLER environment variable is non-empty, the
    signal handler for SEGV/ILL/BUS signals (which offers recovery
    user interface) is not set. This allows more reliable debugging
    of crashes that involve the console.
  DEPRECATED AND DEFUNCT:
  * The legacy S-compatibility macros PROBLEM, MESSAGE, ERROR, WARN,
    WARNING, RECOVER, ... are deprecated and will be hidden in R
    4.2.0. R's native interface of Rf_error and Rf_warning has long
    been preferred.
  BUG FIXES:
  * .mapply(F, dots, .) no longer segfaults when dots is not a list
    and uses match.fun(F) as always documented; reported by Andrew
    Simmons in PR#18164.
  * hist(&lt;Date&gt;, ...) and hist(&lt;POSIXt&gt;, ...)  no longer pass
    arguments for rect() (such as col and density) to axis().
    (Thanks to Sebastian Meyer's PR#18171.)
  * \Sexpr{ch} now preserves Encoding(ch). (Thanks to report and
    patch by Jeroen Ooms in PR#18152.)
  * Setting the RNG to "Marsaglia-Multicarry" e.g., by RNGkind(), now
    warns in more places, thanks to Andr'e Gillibert's report and
    patch in PR#18168.
  * gray(numeric(), alpha=1/2) no longer segfaults, fixing PR#18183,
    reported by Till Krenz.
  * Fixed dnbinom(x, size=&lt;very_small&gt;, .., log=TRUE) regression,
    reported by Martin Morgan.
  * as.Date.POSIXlt(x) now keeps names(x), thanks to Davis Vaughan's
    report and patch in PR#18188.
  * model.response() now strips an "AsIs" class typically, thanks to
    Duncan Murdoch's report and other discussants in PR#18190.
  * try() is considerably faster in case of an error and long call,
    as e.g., from some do.call().  Thanks to Alexander Kaever's
    suggestion posted to R-devel.
  * qqline(y = &lt;object&gt;) such as y=I(.), now works, see also
    PR#18190.
  * Non-integer mgp par() settings are now handled correctly in
    axis() and mtext(), thanks to Mikael Jagan and Duncan Murdoch's
    report and suggestion in PR#18194.
  * formatC(x) returns length zero character() now, rather than ""
    when x is of length zero, as documented, thanks to Davis
    Vaughan's post to R-devel.
  * removeSource(fn) now retains (other) attributes(fn).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1647000000">- CHANGES IN R 4.1.3:
  NEW FEATURES:
  * The default version of Bioconductor has been changed to 3.14.
    (This is used by setRepositories and the menus in GUIs.)
  UTILITIES:
  * R CMD check --as-cran has a workaround for a bug in versions of
    file up to at least 5.41 which mis-identify DBF files last
    changed in 2022 as executables.
  C-LEVEL FACILITIES:
  * The legacy S-compatibility macros SINGLE_* in R_ext/Constants.h
    (included by R.h) are deprecated and will be removed in R 4.2.0.
  BUG FIXES:
  * Initialization of self-starting nls() models with initialization
    functions following the pre-R-4.1.0 API (without the ...
    argument) works again for now, with a deprecation warning.
  * Fixed quoting of ~autodetect~ in Java setting defaults to avoid
    inadvertent user lookup due to leading ~, reported in PR#18231 by
    Harold Gutch.
  * substr(., start, stop) &lt;- v now treats _negative_ stop values
    correctly.  Reported with a patch in PR#18228 by Brodie Gaslam.
  * Subscripting an array x without dimnames by a
    length(dim(x))-column character matrix gave "random" non-sense,
    now an error; reported in PR#18244 by Mikael Jagan.
  * ...names() now matches names(list(...)) closely, fixing PR#18247.
  * all.equal(*, scale = s) now works as intended when length(s) &gt; 1,
    partly thanks to Michael Chirico's PR#18272.
  * print(x) for long vectors x now also works for named atomic
    vectors or lists and prints the correct number when reaching the
    getOption("max.print") limit; partly thanks to a report and
    proposal by Hugh Parsonage to the R-devel list.
  * all.equal(&lt;selfStart&gt;, *) no longer signals a deprecation
    warning.
  * reformulate(*, response=r) gives a helpful error message now when
    length(r) &gt; 1, thanks to Bill Dunlap's PR#18281.
  * Modifying globalCallingHandlers inside withCallingHandlers() now
    works or fails correctly, thanks to Henrik Bengtsson's PR#18257.
  * hist(&lt;Date&gt;, breaks = "days") and hist(&lt;POSIXt&gt;, breaks = "secs")
    no longer fail for inputs of length 1.
  * qbeta(.001, .9, .009) and similar cases now converge correctly
    thanks to Ben Bolker's report in PR#17746.
  * window(x, start, end) no longer wrongly signals "'start' cannot
    be after 'end'", fixing PR#17527 and PR#18291.
  * data() now checks that its (rarely used) list argument is a
    character vector - a couple of packages passed other types and
    gave incorrect results.
  * which() now checks its arr.ind argument is TRUE rather coercing
    to logical and taking the first element - which gave incorrect
    results in package code.
  * model.weights() and model.offset() more carefully extract their
    model components, thanks to Ben Bolker and Tim Taylor's R-devel
    post.
  * list.files(recursive = TRUE) now shows all broken symlinks
    (previously, some of them may have been omitted, PR#18296).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1650628800">- CHANGES IN R 4.2.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * The formula method of aggregate() now matches the generic in
    naming its first argument x (resolving PR#18299 by Thomas
    Soeiro).
    This means that calling aggregate() with a formula as a named
    first argument requires name formula in earlier versions of R and
    name x now, so portable code should not name the argument (code
    in many packages did).
  * Calling &amp;&amp; or || with either argument of length greater than one
    now gives a warning (which it is intended will become an error).
  * Calling if() or while() with a condition of length greater than
    one gives an error rather than a warning.  Consequently,
    environment variable _R_CHECK_LENGTH_1_CONDITION_ no longer has
    any effect.
  * Windows users should consult the WINDOWS section below for some
    profound changes including
  * Support for 32-bit builds has been dropped.
  * UTF-8 locales are used where available.
  * The default locations for the R installation and personal
    library folder have been changed.
    Thanks to Tomas Kalibera for months of work on the Windows port
    for this release.
  NEW FEATURES:
  * matrix(x, n, m) now warns in more cases where length(x) differs
    from n * m, as suggested by Abby Spurdle and Wolfgang Huber in
    Feb 2021 on the R-devel mailing list.
    This warning can be turned into an error by setting environment
    variable _R_CHECK_MATRIX_DATA_ to TRUE: R CMD check --as-cran
    does so unless it is already set.
  * Function file_test() in package utils gains tests for symlinks,
    readability and writability.
  * capabilities("libxml") is now false.
    The description of capabilities("http/ftp") now reflects that it
    refers to the default method, no longer the internal one.
  * simplify2array() gains an except argument for controlling the
    exceptions used by sapply().
  * Environment variables R_LIBS_USER and R_LIBS_SITE are both now
    set to the R system default if unset or empty, and can be set to
    NULL to indicate an empty list of user or site library
    directories.
  * The warning for axis()(-like) calls in cases of relatively small
    ranges (typically in log-scale situations) is slightly improved
    _and_ suppressed from explicit calls to .axisPars() as has always
    been the intention.
  * The contrasts setter function `contrasts&lt;-` gains an explicit
    default how.many = NULL rather than just using missing(how.many).
  * grid.pretty() gains a new optional argument n = 5.
  * There is a new function .pretty() with option bounds as a
    technical-utility version of pretty().  It and pretty() gain a
    new argument f.min with a better than back-compatible default.
  * Function grDevices::axisTicks() and related functions such as
    graphics::axis() work better, notably for the log scale; partly
    because of the pretty() improvements, but also because care is
    taken e.g., when ylim is finite but diff(ylim) is infinite.
  * nclass.FD() gains a digits option.
  * The R Mathlib internal C function bd0() (called indirectly from a
    dozen probability density and distribution functions such as
    dpois(), dbinom(), dgamma(), pgamma() _etc_) has been
    complemented by a more sophisticated and (mostly) more accurate C
    function ebd0(), currently called only by internal dpois_raw()
    improving accuracy for R level dpois() and potentially others
    calling it such as dnbinom(), dgamma() or pgamma().  (Thanks to
    Morten Welinder's PR#15628.)
  * write.ftable() gains sep = " " argument as suggested by Thomas
    Soeiro.
  * The names of the locale categories supported by R's
    Sys.getlocale() and Sys.setlocale() are now provided by variable
    .LC.categories in the base namespace.
  * The Date and POSIXt methods for hist() and the histogram method
    for plot() now also use the new default col = "lightgray" in
    consistency with the corresponding change to hist()'s default for
    R 4.0.0.
  * hist.default() gains new fuzz argument, and the histogram plot
    method no longer uses fractional axis ticks when displaying
    counts ("Frequency").
  * mapply() and hence Map() now also obey the "max-or-0-if-any"
    recycling rule, such that, e.g., Map(`+`, 1:3, 1[0]) is valid
    now.
  * as.character(&lt;obj&gt;) for "hexmode" or "octmode" objects now
    fulfils the important basic rule as.character(x)[j] ===
    as.character(x[j]).
  * The set utility functions, notably intersect() have been tweaked
    to be more consistent and symmetric in their two set arguments,
    also preserving a common mode.
  * substr(ch, start,end) &lt;- new now e.g., preserves names(ch); ditto
    for substring(), thanks to a patch from Brodie Gaslam.
  * plot(&lt;lm&gt;) gains a extend.ylim.f argument, in partial response to
    PR#15285; further PR#17784 is fixed thanks to several
    contributors and a patch by Elin Waring.  The Cook's dist
    contours get customizable via cook.col and cook.lty with a
    different default color and their legend is nicer by default and
    customizable via cook.legendChanges.
  * Attempting to subset an object that is not subsettable now
    signals an error of class notSubsettableError. The
    non-subsettable object is contained in the object field of the
    error condition.
  * Subscript-out-of-bounds errors are now signaled as errors of
    class subscriptOutOfBoundsError.
  * Stack-overflow errors are now signaled as errors inheriting from
    class stackOverflowError. See ?stackOverflowError for more
    details.
  * New partly experimental Sys.setLanguage() utility, solving the
    main problem of PR#18055.
  * gettext() and gettextf() get a new option trim = TRUE which when
    set to false allows translations for strings such as "Execution
    halted\n" typical for C code.
  * An experimental implementation of hash tables is now available.
    See ?hashtab for more details.
  * identical() gains a extptr.as.ref argument for requesting that
    external pointer objects be compared as reference objects.
  * reorder() gets an argument decreasing which it passes to sort()
    for level creation; based on the wish and patch by Thomas Soeiro
    in PR#18243.
  * as.vector() gains a data.frame method which returns a simple
    named list, also clearing a long standing 'FIXME' to enable
    as.vector(&lt;data.frame&gt;, mode="list").  This breaks code relying
    on as.vector(&lt;data.frame&gt;) to return the unchanged data frame.
  * legend() is now vectorized for arguments cex, x.intersp, and
    text.width.  The latter can now also be specified as a vector
    (one element for each column of the legend) or as NA for
    computing a proper column wise maximum value of strwidth(legend).
    The argument y.intersp can be specified as a vector with one
    entry for each row of the legend.
    legend() also gains new arguments title.cex and title.font.
    Thanks to Swetlana Herbrandt.
  * Deparsing no longer remaps attribute names dim, dimnames, levels,
    names and tsp to historical S-compatible names (which structure()
    maps back).
  * sample() and sample.int() have additional sanity checks on their
    size and n arguments.
    all.equal.numeric() gains a sanity check on its tolerance
    argument - calling all.equal(a, b, c) for three numeric vectors
    is a surprisingly common error.
    mean(na.rm =), rank(na.last =), barplot(legend.text =),
    boxplot(), contour(drawlabels =), polygon(border =) and
    methods::is(class2 =) have more robust sanity checks on their
    arguments.
    R CMD Rd2pdf (used by R CMD check) has a more robust sanity check
    on the format of \alias{} commands.
  * psigamma(x, deriv) for negative x now also works for deriv = 4
    and 5; their underlying C level dpsifn() is documented in
    'Writing R Extensions'.
  * The HTML help system now uses HTML5 (wish of PR#18149).
  * ks.test() now provides exact p-values also with ties and MC
    p-values in the two-sample (Smirnov) case.  By Torsten Hothorn.
  * ks.test() gains a formula interface, with y ~ 1 for the
    one-sample (Kolmogorov) test and y ~ group for the two-sample
    (Smirnov) test.  Contributed by Torsten Hothorn.
  * The return value from ks.test() now has class c("ks.test",
    "htest") - packages using try() need to take care to use
    inherits() and not == on the class.
  * New functions psmirnov(), qsmirnov() and rsmirnov() in package
    stats implementing the asymptotic and exact distributions of the
    two-sample Smirnov statistic.
  * iconv() now allows sub = "c99" to use C99-style escapes for UTF-8
    inputs which cannot be converted to encoding to.
  * In a forward pipe |&gt; expression it is now possible to use a named
    argument with the placeholder _ in the rhs call to specify where
    the lhs is to be inserted.  The placeholder can only appear once
    on the rhs.
  * The included LAPACK sources have been updated to version 3.10.0,
    except for the four Fortran 77 routines which 3.10.0 has
    re-implemented in Fortran 90 (where the older versions have been
    retained as the R build process does not support Fortran 90).
  * path.expand() and most other uses of tilde expansion now warn if
    a path would be too long if expanded.  (An exception is
    file.exists(), which silently returns false.)
  * trunc(&lt;Date&gt;, *) now supports units = "months" or "years" for
    consistency with the POSIXt method, thanks to Dirk Eddelbuettel's
    proposal in PR#18099.
  * list2DF() now checks that its arguments are of the same length,
    rather than use recycling.
  * The HTML help system has several new features: LaTeX-like math
    can be typeset using either KaTeX or MathJax, usage and example
    code is highlighted using Prism, and for dynamic help the output
    of examples and demos can be shown within the browser if the
    knitr package is installed. These features can be disabled by
    setting the environment variable _R_HELP_ENABLE_ENHANCED_HTML_ to
    a false value.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 15
    and so packages that provide graphics devices should be
    reinstalled.
  * The grid package now allows the user to specify a "vector" of
    pattern fills.  The fill argument to gpar() accepts a list of
    gradients and/or patterns and the functions linearGradient(),
    radialGradient(), and pattern() have a new group argument.
    Points grobs (data symbols) can now also have a pattern fill.
    The grobCoords() function now returns a more informative and
    complex result.
  * The grid package has new functions for drawing isolated groups:
    grid.group(), grid.define(), and grid.use().  These functions add
    compositing operators and affine transformations to R's graphics
    capabilities.
    The grid package also has new functions for stroking and filling
    paths: grid.stroke(), grid.fill(), and grid.fillStroke().
    A new function as.path() allows the user to specify the fill rule
    for a path that is to be used for clipping, stroking, or filling;
    available options are "winding" and "evenodd".  A new function
    as.mask() allows the user to specify the type of a mask;
    available options are "alpha" and "luminance".
    These new features are only supported so far (at most) on the
    Cairo-based graphics devices and on the pdf() device.
  * dev.capabilities() reports on device support for the new
    features.
  * par() now warns about unnamed non-character arguments to prevent
    misuse such as {usr &lt;- par("usr"); par(usr)}.
  INSTALLATION:
  * Facilities for accessing ftp:// sites are no longer tested
    (except _pro tem_ for curlGetHeaders()) as modern browsers have
    removed support.
  * R can now be built with DEFS = -DSTRICT_R_HEADERS .
  PACKAGE INSTALLATION:
  * R CMD INSTALL no longer tangles vignettes. This completes an R
    CMD build change in R 3.0.0 and affects packages built before R
    3.0.2. Such packages should be re-made with R CMD build to have
    the tangled R code of vignettes shipped with the tarball.
  * USE_FC_LEN_T will become the default: this uses the correct
    prototypes for Fortran BLAS/LAPACK routines called from C/C++,
    and requires adjustment of most such calls - see 'Writing R
    Extensions' SS6.6.2.  (This has been supported since R 3.6.2.)
  * Package installation speed for packages installed with
    keep.source has been improved. This resolve the issue reported by
    Ofek Shilon in PR#18236.
  UTILITIES:
  * R CMD check can optionally report files/directories left behind
    in home, /tmp (even though TMPDIR is set) and other directories.
    See the "R Internals" manual for details.
  * R CMD check now reports byte-compilation errors during
    installation.  These are not usually fatal but may result in
    parts of the package not being byte-compiled.
  * _R_CHECK_DEPENDS_ONLY_ can be applied selectively to examples,
    tests and/or vignettes in R CMD check: see the "R Internals"
    manual.
  * _R_CHECK_SRC_MINUS_W_IMPLICIT_ now defaults to true: recent
    versions of Apple clang on macOS have made implicit function
    declarations in C into a compilation error.
  * R CMD check --as-cran makes use of the environment variable
    AUTORECONF.  See the "R Internals" manual SS8 for further details.
  * R CMD check --use-valgrind also uses valgrind when re-building
    vignettes as some non-Sweave vignettes unhelpfully comment out
    all their code when R CMD check runs vignettes.
  * Errors in re-building vignettes (unless there are LaTeX errors)
    are reported by R CMD check as ERROR rather than WARNING when
    running vignettes has been skipped (as it frequently is in CRAN
    checks and by --as-cran).
  * R CMD Rd2pdf gains a --quiet option that is used by R CMD build
    when building the PDF package manual.
  * R CMD Rd2pdf now always runs LaTeX in batch mode, consistent with
    Texinfo &gt;= 6.7. The --batch option is ignored.
  * R CMD build and R CMD check now include the Rd file name and line
    numbers in the error message of an \Sexpr evaluation failure.
  * For packages using the \doi Rd macro (now an install-time \Sexpr)
    but no other dynamic Rd content, R CMD build now produces a
    smaller tarball and is considerably faster - skipping temporary
    package installation.
  C-LEVEL FACILITIES:
  * The non-API header R_ext/R-ftp-http.h is no longer provided, as
    the entry points it covered are now all defunct.
  * A number of non-API declarations and macro definitions have been
    moved from the installed header Rinternals.h to the internal
    header Defn.h. Packages that only use entry points and
    definitions documented to be part of the API as specified in
    'Writing R Extensions' SS6 should not be affected.
  * The macro USE_RINTERNALS no longer has any effect when compiling
    package code.  Packages which also use R_NO_REMAP will need to
    ensure that the remapped names are used for calls to API
    functions that were formerly also made available as macros.
  * The deprecated legacy S-compatibility macros PROBLEM, MESSAGE,
    ERROR, WARN, WARNING, RECOVER, ... are no longer defined in
    R_exts/RS.h (included by R.h).  Replace these by calls to
    Rf_error and Rf_warning (defined in header R_ext/Error.h included
    by R.h).
    Header R_ext/RS.h no longer includes R_ext/Error.h.
  * Header R_ext/Constants.h (included by R.h) when included from C++
    now includes the C++ header cfloat rather than the C header
    float.h (now possible as C++11 is required).
  * The legacy S-compatibility macros DOUBLE_* in R_ext/Constants.h
    (included by R.h) are deprecated.
  * The deprecated S-compatibility macros SINGLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * R_Calloc, R_Free and R_Realloc are preferred to their unprefixed
    forms and error messages now use the prefix. These forms were
    introduced in R 3.4.0 and are available even when
    STRICT_R_HEADERS is defined.
  * rmultinom has been documented in 'Writing R Extensions' SS6 so is
    now part of the R API.
  * Similarly, Rtanpi, called from R level tanpi() is now part of the
    R API.
  * The long-deprecated, undocumented and non-API entry point call_R
    is no longer declared in R_ext/RS.h (included by R.h).
  * The header S.h which has been unsupported since Jan 2016 has been
    removed.  Use R.h instead.
  DEPRECATED AND DEFUNCT:
  * The (non-default and deprecated) method = "internal" for
    download.file() and url() no longer supports http:// nor ftp://
    URIs.  (It is used only for file:// URIs.)
    On Windows, download.file(method = "wininet") no longer supports
    ftp:// URIs.  (It is no longer the default method, which is
    "libcurl" and does.)
    On Windows, the deprecated method = "wininet" now gives a warning
    for http:// and https:// URIs for both download.file() and url().
    (It is no longer the default method.)
  * On Windows, the command-line option --max-mem-size and
    environment variable R_MAX_MEM_SIZE are defunct.  The memory
    allocation limit was important for 32-bit builds, but these are
    no longer supported.
  * default.stringsAsFactors() is now formally deprecated, where that
    was only mentioned on its regular help page, previously.  So it
    now gives a warning if called.
  * unix.time() is defunct now; it had been deprecated since R 3.4.0.
  BUG FIXES:
  * Setting digits = 0 in format(), print.default() (and hence
    typically print()) or options() is again invalid.  Its behaviour
    was platform-dependent, and it is unclear what "zero significant
    digits" should mean (PR#18098).
  * Messages from C code in the cairo section of package grDevices
    are now also offered for translation, thanks to Michael Chirico's
    PR#18123.
  * mean(x) with finite x now is finite also without "long.double"
    capability.
  * R CMD Rd2pdf no longer leaves an empty build directory behind
    when it aborts due to an already existing output file.  (Thanks
    to Sebastian Meyer's PR#18141.)
  * density(x, weights = w, na.rm = TRUE) when anyNA(x) is true, now
    removes weights "in parallel" to x, fixing PR#18151, reported by
    Matthias Gondan.  Additionally, it gets a subdensity option.
  * Conversion of \Sexpr[]{&lt;expR&gt;} to LaTeX or HTML no longer
    produces long blocks of empty lines when &lt;expR&gt; itself contains
    several lines all producing empty output.  Thanks to a report and
    patch by Ivan Krylov posted to R-devel.
  * R CMD build no longer fails if a package vignette uses child
    documents and inst/doc exists.  (Thanks to Sebastian Meyer's
    PR#18156.)
  * When an R documentation ('help' source) file man/foo.Rd in a
    package has \donttest{..} examples with a syntax error, it is now
    signalled as ERROR and with correct line numbers relating to the
  * -Ex.R file, thanks to Duncan Murdoch and Sebastian Meyer's
    reports and patch proposals in PR#17501.
  * Improved determination of the correct translation domain in
    non-base packages, addressing the combination of PR#18092 and
    PR#17998 (#c6) with reports and _augmented_ patch #2904 by
    Suharto Anggono.
    Note that "R-base" is no longer the default domain e.g., for
    top-level calls to gettext(); rather translation needs explicit
    domain = * specification in such cases.
  * identical(attrib.as.set=FALSE) now works correctly with data
    frames with default row names (Thanks to Charlie Gao's PR#18179).
  * txtProgressBar() now enforces a non-zero width for argument char,
    without which no progress can be visible.
  * dimnames(table(d)) is more consistent in the case where d is a
    list with a single component, thanks to Thomas Soeiro's report to
    R-devel.
    Further, table(d1, d2) now gives an error when d1 and d2 are data
    frames as suggested by Thomas in PR#18224.
  * Fix for drawing semi-transparent lines and fills on the native
    Windows graphics device (PR#18219 and PR#16694).  Thanks to Nick
    Ray for helpful diagnosis on Bugzilla.
  * The deparser now wraps sub-expressions such as if(A) ..  with
    parentheses when needed; thanks to Duncan Murdoch's PR#18232 and
    Lionel Henry's patches there.
  * remove.packages() no longer tries to uninstall Priority: base
    packages, thanks to a report and suggestions by Colin Fay in
    PR#18227.
  * win.metafile() now has xpinch and ypinch arguments so that the
    user can override Windows' (potentially wrong) guess at device
    dimensions.
  * x[i] and x[[i]] for non-integer i should now behave in all cases
    as always documented: the index used is equivalent to
    as.integer(i) unless that would overflow where trunc(i) is used
    instead; thanks to Suharto Anggono's report and patch proposals
    in PR#17977.
  * asOneSidedFormula() now associates the resulting formula with the
    global environment rather than the evaluation environment created
    for the call.
  * &lt;bibentry&gt;$name now matches the field name case-insensitively,
    consistent with bibentry() creation and the replacement method.
  * cbind() failed to detect some length mismatches with a mixture of
    time-series and non-time-series inputs.
  * The default LaTeX style file Sweave.sty used by the RweaveLatex
    driver no longer loads the obsolete ae package; thanks to a
    report by Thomas Soeiro in PR#18271.  Furthermore, it now skips
    \usepackage[T1]{fontenc} for engines other than pdfTeX (if
    detected) or if the new [nofontenc] option is used.
  * smooth.spline() now stores its logical cv argument more safely,
    fixing a rare bug when printing, and also stores n.
  * smooth.spline(x,y,*) now computes the cv.crit statistic
    correctly, also when is.unsorted(x), fixing PR#18294.
  * The data.frame method of rbind() now warns when binding
    not-wholly-recycling vectors, by analogy to the default method
    (for matrices).
  * setAs() finds the correct class for name to when multiple
    packages define a class with that name. Thanks to Gabor Csardi
    for the report.
  * Fix for detaching a package when two classes of the same name are
    present in method signatures for the same generic. Thanks to
    Gabor Csardi for the report.
  * match.arg("", c("", "a", "B")) gives a better error message, in
    part from PR#17959, thanks to Elin Waring.
  * R CMD Sweave --clean no longer removes pre-existing files or
    subdirectories (PR#18242).
  * The quartz() device no longer splits polylines into subpaths.
    That has caused narrowly-spaced lines with many points to always
    look solid even when dashed line type was used due to dash phase
    restarts.
  * Deparsing constructs such as quote(1 + `!`(2) + 3) works again as
    before R 3.5.0, thanks to the report and patch in PR#18284 by
    Suharto Anggono.
  * as.list(f) for a factor f now keeps names(f), fixing PR#18309.
  * qbeta(.001, .9, .009) and analogous qf() calls now return a
    correct value instead of NaN or wrongly 1, all with a warning;
    thanks to the report by Ludger Goeminne in PR#18302.
  * plot.lm() failed to produce the plot of residuals vs.  factor
    levels (i.e., which=5 when leverages are constant) for models
    with character predictors (PR#17840).
  * interaction.plot(..., xtick = TRUE) misplaced the x-axis line
    (PR#18305).
  * Not strictly fixing a bug, format()ing and print()ing of
    non-finite Date and POSIXt values NaN and +/-Inf no longer show
    as NA but the respective string, e.g., Inf, for consistency with
    numeric vector's behaviour, fulfilling the wish of PR#18308.
  * R CMD check no longer runs test scripts generated from
    corresponding .Rin files twice and now signals an ERROR if
    processing an .Rin script fails.
  * tools::Rd2txt() used for plain-text help pages now renders \hrefs
    (if tools::Rd2txt_options(showURLs = TRUE)) and \urls with
    percent-encoding and standards-compliant delimiting style (angle
    brackets and no URL: prefix).  \email is now rendered with a
    mailto: prefix.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1655985600">- CHANGES IN R 4.2.1:
  NEW FEATURES:
  * New function utils::findCRANmirror() to find out if a CRAN mirror
    has been selected, otherwise fallback to the main site.  This
    behaves in the same way as tools::CRAN_package_db() and is
    intended for packages wishing to access CRAN for purposes other
    than installing packages.
    The need for this was shown by a day when the main CRAN website
    was offline and a dozen or so packages which had its URL
    hardcoded failed their checks.
  INSTALLATION on a UNIX-ALIKE:
  * The libraries searched for by --with-blas (without a value) now
    include BLIS (after OpenBLAS but before ATLAS).  And on macOS,
    the Accelerate framework (after ATLAS).  (This is patterned after
    the AX_BLAS macro from the Autoconf Archive.)
  * The included LAPACK sources have been updated to 3.10.1.
  UTILITIES:
  * The (full path to) the command tidy to be used for HTML
    validation can be set by environment variable R_TIDYCMD.
  * Setting environment variable _R_CHECK_RD_VALIDATE_RD2HTML_ to a
    false value will override R CMD check --as-cran and turn off HTML
    validation.  This provides a way to circumvent a problematic
    tidy.
    The 2006 version that ships with macOS is always skipped.
  C-LEVEL FACILITIES:
  * The undocumented legacy declarations of Sint, Sfloat, SINT_MAX
    and SINT_MIN in header R.h are deprecated.
  BUG FIXES:
  * fisher.test(d) no longer segfaults for "large" d; fixing PR#18336
    by preventing/detecting an integer overflow reliably.
  * tar(., files=*) now produces correctly the warning about invalid
    uid or gid of files, fixing PR#18344, reported by Martin Morgan.
  * tk_choose.files() with multi = FALSE misbehaved on paths
    containing spaces (PR#18334) (regression introduced in R 4.0.0).
  * sort(x, partial = ind, *) now works correctly notably for the
    non-default na.last = FALSE or TRUE, fixing PR#18335 reported by
    James Edwards.
  * Environment variable _R_CHECK_XREFS_REPOSITORIES_ is only used
    for checking .Rd cross-references in R CMD check (as documented)
    and not for other uses looking for a CRAN mirror.
  * The search for a CRAN mirror when checking packages now uses
    getOption("repos") if that specifies a CRAN mirror, even when it
    does not also specify all three Bioconductor repositories (as was
    previously required).
  * The HTML code generated by tools::Rd2HTML() has been improved to
    pass tidy 5.8.0.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1667217600">- CHANGES IN R 4.2.2:
  NEW FEATURES:
  * tools::Rdiff(useDiff = TRUE) checks for the presence of an
    external diff command and switches to useDiff = FALSE if none is
    found.  This allows R CMD Rdiff to always work.
  * On Windows, environment variable R_LIBCURL_SSL_REVOKE_BEST_EFFORT
    can be used to switch to only 'best-effort' SSL certificate
    revocation checks with the default "libcurl" download method.
    This reduces security, but may be needed for downloads to work
    with MITM proxies (PR#18379).
  * (macOS) The run-time check for libraries from XQuartz for X11 and
    Tcl/Tk no longer uses otool from the Apple Developer Tools
    (PR#18400).
  * The LaTeX style for producing the PDF manuals, Rd.sty, now loads
    the standard amsmath, amsfonts and amssymb packages for greater
    coverage of math commands in the Rd \eqn and \deqn macros.  The
    \mathscr LaTeX command is also provided (via the mathrsfs
    package, if available, or the amsfonts bundle otherwise),
    fulfilling the wish of PR#18398.
  * (Windows) The default format of readClipboard() and
    writeClipboard() has been changed to 13 (CF_UNICODETEXT).
  INSTALLATION on a UNIX-ALIKE:
  * The PDF manuals (if built) can be compacted by the new target
    make compact-pdf (at the top level or in directory doc/manual).
  * There is now configure support for LLVM clang 15 on Linux, which
    defaults to position-independent (PIE) executables whereas
    gfortran does not.
  * Many small changes to ease compilation (and suppress warnings)
    with LLVM clang 15.
  BUG FIXES:
  * Rscript -e would fail if stdin were closed (Reported by Henrik
    Bengtsson.)
  * qt(*, log.p=TRUE) in outer tails no longer produces NaN in its
    final steps, thus fixing PR#18360.
  * tools::Rd2latex() now escapes hashes and ampersands when writing
    URLs, fixing LaTeX errors with such URLs in \tabular.
  * When isGeneric(f, fdef=*) is used with mismatching names, the
    warning is better understandable; reported (with fix) in PR#18370
    by Gabe Becker.
  * poly(x, n) now works again (and is now documented) when x is a
    "Date" or "POSIXct" object, or of another class while fulfilling
    mode(x) == "numeric".  This also enables poly(x, *, raw=TRUE) for
    such variables.  Reported by Michael Chirico to R-devel.
  * write.table(), write.csv() and write.csv2() restore their
    numerical precision (internal equivalent of digits = 15) after an
    interrupt (PR#18384).
  * One can now read also byte FF from a clipboard connection
    (PR#18385).
  * source("") and source(character()) now give more helpful error
    messages.
  * R CMD check --as-cran set _R_CHECK_TIMINGS_ too late to have the
    intended effect.
  * as.POSIXlt(x) now also works with very large dates x, fixing
    PR#18401 reported by Hannes M"uhleisen.
  * Files can now be extracted even from very large zip archives
    (PR#18390, thanks to Martin Jakt).
  * Non-finite objects of class "POSIXlt" are now correctly coerced
    to classes "Date" and "POSIXct"; following up on the extension to
    format() them correctly.
  * Added methods for is.finite(), is.infinite() and is.nan() for
    "POSIXlt" date-time objects.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1678881600">- CHANGES IN R 4.2.3:
  C-LEVEL FACILITIES:
  * The definition of DL_FUNC in R_ext/Rdynload.h has been changed to
    be fully C-compliant.  This means that functions loaded _via_ for
    example R_GetCCallable need to be cast to an appropriate type if
    they have any arguments.
  * .Machine has a new element sizeof.time_t to identify old systems
    with a 32-bit type and hence a limited range of date-times (and
    limited support for dates millions of years from present).
  PACKAGE INSTALLATION:
  * (Windows) The default C++ standard had accidentally been left at
    C++11 when it was changed to C++14 on Unix.
  BUG FIXES:
  * As "POSIXlt" objects may be "partially filled" and their list
    components meant to be recycled, length() now is the length of
    the longest component.
  * as.POSIXlt.Date() could underflow for dates in the far past (more
    than half a million years BCE).
  * as.Date.POSIXlt(x) would return "1970-01-01" instead of NA in R
    4.2.2, e.g., for
    x &lt;- as.POSIXlt(c("2019-01-30","2001-1-1"))
    x$mon &lt;- c(0L, NA); as.Date(x)
  * R CMD check failed to apply enabled _R_CHECK_SUGGESTS_ONLY_ to
    examples and vignettes (regression in R 4.2.0).
  * R CMD check did not re-build vignettes in separate processes by
    default (regression in R 4.2.0).
  * Running examples from HTML documentation now restores previous
    knitr settings and options (PR#18420).
  * Quartz: fonts are now located using Core Graphics API instead of
    deprecated ATS which is no longer supported in the macOS 13 SDK
    (PR#18426).  This also addresses an issue where the currently
    used font in the Quartz device context was not correctly
    retained.
  * (Windows) Math symbols in text drawing functions are again
    rendered correctly (PR#18440).  This fixes a regression in R
    4.2.1 caused by a fix in PR#18382 which uncovered an issue in
    GraphApp due to which the symbol charset was not used with TT
    Symbol font face.
  * (Windows) Installing a package with a src/Makefile.{win,ucrt}
    file includes ~/.R/Makevars.win64 in the search for user
    makevars, as documented in "R Installation and Administration"
    and done for packages with a src/Makevars.{win,ucrt} file.
  * format(&lt;POSIXlt_w/_unbalanced_sec&gt;, "....%OS&lt;n&gt;") with n &gt; 0 no
    longer accidentally uses the unbalanced seconds, thanks to
    Suharto Anggono's report (including patch) in PR#18448.
  * solve.default(a, b) works around issues with some versions of
    LAPACK when a contains NA or NaN values.
  * When UseMethod() cannot dispatch, it no longer segfaults
    producing the error message in case of a long class(), thanks to
    Joris Vankerschaver's report (including patch) in PR#18447.
  * When example(foo, ..) produces graphics on an interactive device
    it needs to open itself, it now leaves devAskNewPage() unchanged
    even when it was FALSE, thus fixing a 14 years old '&lt;FIXME&gt;'.
  * packageDescription() again catches errors from encoding
    conversions. This also fixes broken packageVersion() in C locale
    on systems where iconv does not support transliteration.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1681128000">- add patch to build with libcurl &gt;= 8</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1682078400">- CHANGES IN R 4.3.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Calling &amp;&amp; or || with LHS or (if evaluated) RHS of length greater
    than one is now always an error, with a report of the form
    'length = 4' in coercion to 'logical(1)'
    Environment variable _R_CHECK_LENGTH_1_LOGIC2_ no longer has any
    effect.
  NEW FEATURES:
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.10.1.  (This caused some platform-dependent
    changes to package check output.)  And then to the sources from
    LAPACK version 3.11.0 (with changes only to double complex
    subroutines).
  * The included LAPACK sources have been updated to include the four
    Fortran 90 routines rather than their Fortran 77 predecessors.
    This may give some different signs in SVDs or
    eigendecompositions..  (This completes the transition to LAPACK
    3.10.x begun in R 4.2.0.)
  * The LAPACK sources have been updated to version 3.11.0.  (No new
    subroutines have been added, so this almost entirely bug fixes:
    Those fixes do affect some computations with NaNs, including R's
    NA.)
  * The parser now signals _classed_ errors, notably in case of the
    pipe operator |&gt;.  The error object and message now give line and
    column numbers, mostly as proposed and provided by Duncan Murdoch
    in PR#18328.
  * toeplitz() is now generalized for asymmetric cases, with a
    toeplitz2() variant.
  * xy.coords() and xyz.coords() and consequently, e.g., plot(x,y,
    log = "y") now signal a _classed_ warning about negative values
    of y (where log(.) is NA).  Such a warning can be specifically
    suppressed or caught otherwise.
  * Regular expression functions now check more thoroughly whether
    their inputs are valid strings (in their encoding, e.g. in
    UTF-8).
  * The performance of grep(), sub(), gsub() and strsplit() has been
    improved, particularly with perl = TRUE and fixed = TRUE.  Use of
    useBytes = TRUE for performance reasons should no longer be
    needed and is discouraged: it may lead to incorrect results.
  * apropos() gains an argument dot_internals which is used by the
    completion (help(rcompgen)) engine to also see base internals
    such as .POSIXct().
  * Support in tools::Rdiff() for comparing uncompressed PDF files is
    further reduced - see its help page.
  * qqplot(x, y, ...) gains conf.level and conf.args arguments for
    computing and plotting a confidence band for the treatment
    function transforming the distribution of x into the distribution
    of y (Switzer, 1976, _Biometrika_). Contributed by Torsten
    Hothorn.
  * Performance of package_dependencies() has been improved for cases
    when the number of dependencies is large.
  * Strings newly created by gsub(), sub() and strsplit(), when any
    of the inputs is marked as "bytes", are also marked as "bytes".
    This reduces the risk of creating invalid strings and accidental
    substitution of bytes deemed invalid.
  * Support for readLines(encoding = "bytes") has been added to allow
    processing special text files byte-by-byte, without creating
    invalid strings.
  * iconv(from = "") now takes into account any declared encoding of
    the input elements and uses it in preference to the native
    encoding.  This reduces the risk of accidental creation of
    invalid strings, particularly when different elements of the
    input have different encoding (including "bytes").
  * Package repositories in getOption("repos") are now initialized
    from the repositories file when utils is loaded (if not already
    set, e.g., in .Rprofile).  (From a report and patch proposal by
    Gabriel Becker in PR#18405.)
  * compactPDF() gets a verbose option.
  * type.convert() and hence read.table() get new option tryLogical =
    TRUE with back compatible default.  When set to false, converts
    "F" or "T" columns to character.
  * Added new unit prefixes "R" and "Q" for abbreviating
    (unrealistically large) sizes beyond 10^{27} in standard = "SI",
    thanks to Henrik Bengtsson's PR#18435.
  * as.data.frame()'s default method now also works fine with atomic
    objects inheriting from classes such as "roman", "octmode" and
    "hexmode", such fulfilling the wish of PR#18421, by Benjamin
    Feakins.
  * The as.data.frame.vector() utility now errors for wrong-length
    row.names.  It warned for almost six years, with "Will be an
    error!".
  * sessionInfo() now also contains La_version() and reports codepage
    and timezone when relevant, in both print() and toLatex() methods
    which also get new option tzone for displaying timezone
    information when locale = FALSE.
  * New function R_compiled_by() reports the C and Fortran compilers
    used to build R, if known.
  * predict(&lt;lm&gt;, newdata = *) no longer unnecessarily creates an
    offset of all 0s.
  * solve() for complex inputs now uses argument tol and by default
    checks for 'computational singularity' (as it long has done for
    numeric inputs).
  * predict(&lt;rank-deficient lm&gt;, newdata=*) now obeys a new argument
    rankdeficient, with new default "warnif", warning only if there
    are non-estimable cases in newdata.  Other options include
    rankdeficient = "NA", predicting NA for non-estimable newdata
    cases.  This addresses PR#15072 by Russ Lenth and is based on his
    original proposal and discussions in PR#16158 also by David Firth
    and Elin Waring.  Still somewhat experimental.
  * Rgui console implementation now works better with the NVDA screen
    reader when the full blinking cursor is selected.  The underlying
    improvements in cursor handling may help also other screen
    readers on Windows.
  * The drop-field control in GraphApp can now be left with the TAB
    key and all controls can be navigated in the reverse order using
    the Shift+TAB key, improving accessibility of the Rgui
    configuration editor.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now fully accurate
    (instead of to "only" minimally five digits).
  * demo(error.catching) now also shows off withWarnings() and
    tryCatchWEMs().
  * As an experimental feature the placeholder _ can now also be used
    in the rhs of a forward pipe |&gt; expression as the first argument
    in an extraction call, such as _$coef. More generally, it can be
    used as the head of a chain of extractions, such as _$coef[[2]].
  * Spaces in the environment variable used to choose the R session's
    temporary directory (TMPDIR, TMP and TEMP are tried in turn) are
    now fatal.  (On Windows the 'short path' version of the path is
    tried and used if that does not contain a space.)
  * all.equal.numeric() gets a new optional switch giveErr to return
    the numeric error as attribute.  Relatedly,
    stopifnot(all.equal&lt;some&gt;(a, b, ..)) is as "smart" now, as
    stopifnot(all.equal(....)) has been already, thus allowing
    customized all.equal&lt;Some&gt;() wrappers.
  * R on Windows is now able to work with path names longer than 260
    characters when these are enabled in the system (requires at
    least Windows 10 version 1607).  Packages should be updated to
    work with long paths as well, instead of assuming PATH_MAX to be
    the maximum length.  Custom front-ends and applications embedding
    R need to update their manifests if they wish to allow this
    feature.  See
    &lt;https://blog.r-project.org/2023/03/07/path-length-limit-on-windows&gt;
    for more information.
  * 'Object not found' and 'Missing argument' errors now give a more
    accurate error context. Patch provided by Lionel Henry in
    PR#18241.
  * The @ operator is now an S3 generic. Based on contributions by
    Tomasz Kalinowski in PR#18482.
  * New generic chooseOpsMethod() provides a mechanism for objects to
    resolve cases where two suitable methods are found for an Ops
    Group Generic. This supports experimenting with alternative
    object systems. Based on contributions by Tomasz Kalinowski in
    PR#18484.
  * inherits(x, what) now accepts values other than a simple
    character vector for argument what. A new generic, nameOfClass(),
    is called to resolve the class name from what. This supports
    experimenting with alternative object systems. Based on
    contributions by Tomasz Kalinowski in PR#18485.
  * Detection of BLAS/LAPACK in use (sessionInfo()) with FlexiBLAS
    now reports the current backend.
  * The "data.frame" method for subset() now warns about extraneous
    arguments, typically catching the use of = instead of == in the
    subset expression.
  * Calling a:b when numeric a or b is longer than one may now be
    made into an error by setting environment variable
    _R_CHECK_LENGTH_COLON_ to a true value, along the proposal in
    PR#18419 by Henrik Bengtsson.
  * density(x, weights = *) now warns if automatic bandwidth
    selection happens without using weights; new optional warnWbw may
    suppress the warning.  Prompted by Christoph Dalitz' PR#18490 and
    its discussants.
  * rm(list = *) is faster and more readable thanks to Kevin Ushey's
    PR#18492.
  * The plot.lm() function no longer produces a normal Q-Q plot for
    GLMs. Instead it plots a half-normal Q-Q plot of the absolute
    value of the standardized deviance residuals.
  * The print() method for class "summary.glm" no longer shows
    summary statistics for the deviance residuals by default.  Its
    optional argument show.residuals can be used to show them if
    required.
  * The tapply() function now accepts a data frame as its X argument,
    and allows INDEX to be a formula in that case. by.data.frame()
    similarly allows INDICES to be a formula.
  * The performance of df[j] &lt;- value (including for missing j) and
    write.table(df) has been improved for data frames df with a large
    number of columns.  (Thanks to Gabriel Becker's PR#18500,
    PR#18503 and discussants, prompted by a report from Toby Dylan
    Hocking on the R-devel mailing list.)
  * The matrix multiply operator %*% is now an S3 generic, belonging
    to new group generic matrixOps.  From Tomasz Kalinowski's
    contribution in PR#18483.
  * New function array2DF() to convert arrays to data frames,
    particularly useful for the list arrays created by tapply().
  DATES and TIMES:
  * On platforms where (non-UTC) datetimes before 1902 (or before
    1900 as with system functions on recent macOS) are guessed by
    extrapolating time zones from 1902-2037, there is a warning at
    the first use of extrapolation in a session.  (As all time zones
    post 2037 are extrapolation, we do not warn on those.)
  * (Platforms using --with-internal-tzone, including Windows and by
    default macOS). How years are printed in dates or date-times can
    be controlled by environment variable R_PAD_YEARS_BY_ZERO.  The
    default remains to pad to 4 digits by zeroes, but setting value
    no gives no padding (as used by default by glibc).
  * strftime() tries harder to determine the offset for the "%z"
    format, and succeeds on the mainstream R platforms.
  * strftime() has a limit of 2048 bytes on the string produced -
    attempting to exceed this is an error.  (Previously it silently
    truncated at 255 bytes.)
  * sessionInfo() records (and by default prints) the system time
    zone as part of the locale information.  Also, the source
    (system/internal) of the date-time conversion and printing
    functions.
  * Objects of class "POSIXlt" created in this version of R always
    have 11 components: component zone is always set, and component
    gmtoff is set for times in UTC and usually set on the (almost
    all) platforms which have C-level support, otherwise is NA.
  * There are comprehensive validity checks on the structure of
    objects of class "POSIXlt" when converting (including formatting
    and printing).  (This avoids mis-conversions of hand-crafted
    objects.)
  * There is some support for using the native date-time routines on
    macOS: this is only viable on recent versions (e.g. 12.6 and 13)
    and does get wrong some historical changes (before 1900, during
    WWII).  Use of --with-internal-tzone remains the default.
  * as.POSIXct(&lt;numeric&gt;) and as.POSIXlt(.) (without specifying
    origin) now work.  So does as.Date(&lt;numeric&gt;).
  * as.Date.POSIXct(., tz) now treats several tz values, notably
    "GMT" as equivalent to "UTC", proposed and improved by Michael
    Chirico and Joshua Ulrich in PR#17674.
  * Experimental balancePOSIXlt() utility allows using "ragged" and
    or out-of-range "POSIXlt" objects more correctly, e.g., in
    subsetting and subassignments.  Such objects are now documented.
    More experimentally, a "POSIXlt" object may have an attribute
    "balanced" indicating if it is known to be filled or fully
    balanced.
  * Functions axis.Date() and axis.POSIXct() are rewritten to gain
    better default tick locations and better default formats by using
    prettyDate(). Thanks to Swetlana Herbrandt.
  * The mapping of Windows' names for time zones to IANA's 'Olson'
    names has been updated.  When ICU is available (it is by
    default), it is used to get a mapping for the current region set
    in Windows.  This can be overridden by setting environment
    variable TZ to the desired Olson name - see OlsonNames() for
    those currently available.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 16
    and so packages that provide graphics devices should be
    reinstalled.
  * The grDevices and grid packages have new functions for rendering
    typeset glyphs, primarily: grDevices::glyphInfo() and
    grid::grid.glyph().
    Rendering of typeset glyphs is only supported so far on the
    Cairo-based graphics devices and on the pdf() and quartz()
    devices.
  * The defined behaviour for "clear" and "source" compositing
    operators (via grid::grid.group()) has been changed (to align
    better with simple interpretation of original Porter-Duff
    definitions).
  * Support for gradients, patterns, clipping paths, masks, groups,
    compositing operators, and affine transformations has been added
    to the quartz() device.
  INSTALLATION on a UNIX-ALIKE:
  * A system installation of generic LAPACK 3.10.0 or later will be
    preferred to the version in the R sources.
    configure option --with-lapack=no (equivalently --without-lapack)
    forces compilation of the internal LAPACK sources.
    If --with-lapack is not specified, a system liblapack is looked
    for and used if it reports version 3.10.0 or later and does not
    contain BLAS routines.
    Packages using LAPACK will need to be reinstalled if this changes
    to using an external library.
  * On aarch64 Linux platforms using GCC, configure now defaults to
  - fPIC (instead of -fpic), as desired in PR#18326.
  * configure now checks conversion of datetimes between POSIXlt and
    POSIXct around year 2020.  Failure (which has been seen on
    platforms missing tzdata) is fatal.
  * If configure option --with-valgrind-instrumentation is given
    value 1 or 2, option --with-system-valgrind-headers is now the
    default and ignored (with a warning).  It is highly recommended
    that the system headers are installed alongside valgrind: they
    are part of its packaging on some Linux distributions and
    packaged separately (e.g. in the valgrind-devel RPM) on others.
    configure will give a warning if they are not found.
    The system headers will be required in a future release of R to
    build with valgrind instrumentation.
  * libcurl 8.x is now accepted by configure: despite a change in
    major version number it changes neither API nor ABI.
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools43, an update of the Rtools42 toolchain.  It is
    based on gcc 12 and newer versions of MinGW-W64, binutils and
    libraries.  At this time R-devel can still be built using
    Rtools42 without changes, but when R-devel is installed via the
    installer, it will by default look for Rtools43.
  * Old make targets rsync-extsoft and 32-bit ones that are no longer
    needed have been removed.
  * Default builds (including for packages) no longer select C99.
    Thus the C standard used is the default for the compiler, which
    for the toolchain in Rtools43 is C17.  (This is consistent with
    Unix builds.)
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++17 where
    available (which it is on all currently checked platforms): if
    not C++14 or C++11 is used if available otherwise C++ is not
    supported.
  * USE_FC_LEN_T is the default: this uses the correct
    (compiler-dependent) prototypes for Fortran BLAS/LAPACK routines
    called from C/C++, and requires adjustment of many such calls -
    see 'Writing R Extensions' SS6.6.1.
  * There is initial support for C++23 as several compilers are now
    supporting -std=c++23 or -std=c++2b or similar.  As for C++20,
    there no additional configure checks for C++23 features beyond a
    check that the compiler reports a __cplusplus value greater than
    that in the C++20 standard.  C++ feature tests should be used.
  * There is support for a package to indicate the version of the C
    standard which should be used to compile it, and for the
    installing user to specify this.  In most cases R defaults to the
    C compiler's default standard which is C17 (a `bug-fix' of C11) -
    earlier versions of R or compilers may have defaulted to C99.
    Current options are:
    USE_C17 Use a standard that is at most C17.  The intention is to
    allow legacy packages to still be installed when later C
    standards become the default, including packages using new
    keywords as identifiers or with K&amp;R-style function
    declarations.  This will use C17 if available, falling back
    to C11.
    USE_C90 Use the C90 (aka C89) standard.  (As that standard did
    not require compilers to identify that version, all we can
    verify is that the compiler does not claim to be using a
    later standard.  It may accept C99 features - for example
    clang accepts // to make comments.)
    USE_C99 Use the C99 standard. This should be rarely needed - it
    avoids the few new features of C11/C17 which can be useful if
    a package assumes them if C17 is specified and they are not
    implemented.
    USE_C23 Use C23 (or in future, later).  Compiler/library support
    for C23 is still being implemented, but LLVM clang from
    15.0.0 and the upcoming GCC 13 have quite extensive support.
    These can be specified as part of the SystemRequirements field in
    the package's DESCRIPTION file or _via_ options --use-C17 and so
    on of R CMD INSTALL and R CMD SHLIB.
    For further details see "Writing R Extensions" SS1.2.5.
  * (Windows) A src/Makefile.ucrt or src/Makefile.win file is now
    included after R_HOME/etcR_ARCH/Makeconf and so no longer needs
    to include that file itself.  Installation of a package with such
    a file now uses a site Makevars file in the same way as a package
    with a src/Makevars.win file would.
  * configure is now passed crucial variables such as CC and CFLAGS
    in its environment, as many packages were not setting them (as
    documented in 'Writing R Extensions' SS1.2).
    This has most effect where configure is used to compile parts of
    the package - most often by cmake or libtool which obfuscate the
    actual compile commands used.
    Also used for configure.win and configure.ucrt on Windows.
  FORTRAN FLAGS:
  * The flag -fno-optimize-sibling-calls is no longer forced for
    gfortran 7 and later.  It should no longer be needed now using
    'hidden' character-length arguments when calling BLAS/LAPACK
    routines from C/C++ is the default even for packages.  (Unless
    perhaps packages call Fortran code from C/C++ without using R's
    headers and without allowing for these arguments.)
  C-LEVEL FACILITIES:
  * The deprecated S-compatibility macros DOUBLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * The deprecated legacy typedefs of Sint and Sfloat in header R.h
    are no longer defined, and that header no longer includes header
    limits.h from C nor climits from C++.
  * New macro CAD5R() is provided in Rinternals.h and used in a few
    places in the R sources.
  * ALTREP now supports VECSXP vectors. Contributed by Gabor Csardi
    in PR#17620.
  * The Rcomplex definition (in header R_ext/Complex.h) has been
    extended to prevent possible mis-compilation when interfacing
    with Fortran (PR#18430).  The new definition causes compiler
    warnings with static initializers such as {1, 2}, which can be
    changed to {.r=1, .i=2}.
    Using the new definition from C++ depends on compiler extensions
    supporting C features that have not been incorporated into the
    C++ standards but are available in g++ and clang++: this may
    result in C++ compiler warnings but these have been worked around
    for recent versions of common compilers (GCC, Apple/LLVM clang,
    Intel).
    It is intended to change the inclusion of header R_ext/Complex.h
    by other R headers, so C/C++ code files which make use of
    Rcomplex should include that header explicitly.
  UTILITIES:
  * R CMD check does more checking of package .Rd files, warning
    about invalid email addresses and (some) invalid URIs and noting
    empty \item labels in description lists.
  * R CMD check now also reports problems when reading package news
    in md (file NEWS.md) and (optionally) plain text (file NEWS)
    formats.
  * _R_CHECK_TIMINGS_ defaults to a value from the environment even
    for R CMD check --as-cran; this allows for exceptionally fast or
    slow platforms.
    It now applies to checking PDF and HTML versions of the manuals,
    and 'checking CRAN incoming feasibility'.
  * R CMD check can optionally (but included in --as-cran) check
    whether HTML math rendering _via_ KaTeX works for the package .Rd
    files.
  * Non-interactive debugger invocations can be trapped by setting
    the environment variable _R_CHECK_BROWSER_NONINTERACTIVE_ to a
    true value.  This is enabled by R CMD check --as-cran to detect
    the use of leftover browser() statements in the package.
  * The use of sprintf and vsprintf from C/C++ has been deprecated in
    macOS 13 and is a known security risk.  R CMD check now reports
    (on all platforms) if their use is found in compiled code:
    replace by snprintf or vsnprintf respectively. [*NB:* whether
    such calls get compiled into the package is platform-dependent.]
  * Where recorded at installation, R CMD check reports the C and
    Fortran compilers used to build R.
    It reports the OS in use (if known, as given by osVersion) as
    well as that R was built for.
    It notes if a C++ standard was specified which is older than the
    current default: many packages have used C++11 to mean 'not
    C++98' - as C++11 is the minimum supported since R 4.0.0, that
    specification can probably be removed.
  * R CMD INSTALL reports the compilers (and on macOS, the SDK) used,
    and this is copied to the output of R CMD check.
    Where a C++ standard is specified, it is reported.
  * R CMD check's 'checking compilation flags in Makevars' has been
    relaxed to accept the use of flags such as -std=f2008 in
    PKG_FFLAGS.
  * tools::buildVignettes() has a new argument skip, which is used by
    R CMD check to skip (and note) vignettes with unavailable
    \VignetteDepends (PR#18318).
  * New generic .AtNames() added to enable class-specific completions
    after @. The formerly internal function findMatches() is now
    exported, mainly for use in methods for .DollarNames() and
    .AtNames().
  DEPRECATED AND DEFUNCT:
  * default.stringsAsFactors() is defunct.
  * Calling as.data.frame.&lt;class&gt;() directly (for 12 atomic classes)
    is going to be formally deprecated, currently activated by
    setting the environment variable
    _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ to non-empty, which also
    happens in R CMD check --as-cran.
  BUG FIXES:
  * Hashed environments with sizes less than 5 can now grow.
    (Reported to R-devel by Duncan Garmonsway.)
  * as.character(&lt;Rd&gt;, deparse = TRUE) failed to re-escape curly
    braces in LaTeX-like text.  (Reported by Hadley Wickham in
    PR#18324.)
  * library() now passes its lib.loc argument when requiring Depends
    packages; reported (with fix) in PR#18331 by Mikael Jagan.
  * R CMD Stangle: improved message about 'Output' files.
  * head(x, n) and tail(x, n) now signal an error if n is not
    numeric, instead of incidentally "working" sometimes returning
    all of x.  Reported and discussed by Colin Fay, in PR#18357.
  * The "lm" method for summary() now gives the correct F-statistic
    when the model contains an offset.  Reported in PR#18008.
  * C() and `contrasts&lt;-`() now preserve factor level names when
    given a function object (as opposed a function name which did
    preserve names). Reported in PR#17616.
  * c(a = 1, 2)[[]] no longer matches 2 but rather signals a
    _classed_ error.  Reported and analysed by Davis Vaughan in
    PR#18367, a duplicate of PR#18004, by Jan Meis et al.  For
    consistency, NULL[[]] is also erroneous now.  x[[]] &lt;- v gives an
    error of the same class "MissingSubscriptError".
  * The relist() function of utils now supports NULL elements in the
    skeleton (PR#15854).
  * ordered(levels = *) (missing x) now works analogously to factor(,
    ordered=TRUE); reported (with fix) by Achim Zeileis in PR#18389.
  * User-defined Rd macro definitions can now span multiple lines,
    thanks to a patch from Duncan Murdoch. Previously, the Rd parser
    silently ignored everything after the first line.
  * Plain-text help (tools::Rd2txt()) now preserves an initial blank
    line for text following description list items.
  * tools::Rd2HTML() and tools::Rd2latex() no longer split \arguments
    and \value lists at Rd comments.
  * tools::Rd2latex() now correctly handles optional text outside
    \items of argument lists as well as bracketed text at the
    beginning of sections, e.g., \value{[NULL]}.
  * as.character(&lt;POSIXt&gt;) now behaves more in line with the methods
    for atomic vectors such as numbers, and is no longer influenced
    by options().  Ditto for as.character(&lt;Date&gt;).  The
    as.character() method gets arguments digits and OutDec with
    defaults _not_ depending on options().  Use of as.character(*,
    format = .) now warns.
  * Similarly, the as.character.hexmode() and *.octmode() methods
    also behave as good citizen methods and back compatibility option
    keepStr = TRUE.
  * The as.POSIXlt(&lt;POSIXlt&gt;) and as.POSIXct(&lt;POSIXct&gt;) default
    methods now do obey their tz argument, also in this case.
  * as.POSIXlt(&lt;Date&gt;) now does apply a tz (time zone) argument, as
    does as.POSIXct(); partly suggested by Roland Fuss on the R-devel
    mailing list.
  * as.Date.POSIXlt(x) now also works when the list components are of
    unequal length, aka "partially filled" or "ragged".
  * expand.model.frame() looked up variables in the wrong environment
    when applied to models fitted without data.  Reported in
    PR#18414.
  * time() now (also) uses the ts.eps = getOption("ts.eps") argument
    and thus by default rounds values very close to the start (or
    end) of a year.  Based on a proposal by Andre"i V. Kostyrka on
    R-help.
  * Printing of a factanal() result with just one factor and sort =
    TRUE now works regularly, fixing PR#17863 by Timothy Bates,
    thanks to the 'R Contributors' working group.
  * Printing 0-length objects of class "factor", "roman", "hexmode",
    "octmode", "person", "bibentry", or "citation" now prints
    something better, one of which fixes PR#18422, reported by
    Benjamin Feakins.
  * Sys.timezone() queries timedatectl only if systemd is loaded;
    addressing a report by Jan Gorecki in PR#17421.
  * The formula method of cor.test() had scoping problems when
    environment(formula) was not the calling environment; reported
    with a patch proposal by Mao Kobayashi in PR#18439.
  * attach() of an environment with active bindings now preserves the
    active bindings.  Reported by Kevin Ushey in PR#18425.
  * BLAS detection now works also with system-provided libraries not
    available as regular files.  This fixes detection of the
    Accelerate framework on macOS since Big Sur.  Reported by David
    Novgorodsky.
  * download.file() gives a helpful error message in case of an
    invalid download.file.method option, thanks to Colin Fay's report
    in PR#18455.
  * Sporadic crashes of Rterm when using completion have been fixed.
  * Rprof() is now more reliable.  A livelock in thread
    initialization with too short sampling interval has been fixed on
    macOS.  A deadlock in using the C runtime has been fixed on
    Windows.  A potential deadlock has been prevented on Unix.
  * Cursor placement in Rgui now works even after a fixed-width font
    is selected.
  * Mandatory options (options()) are now set on startup so that
    saving and restoring them always works (PR#18372).
  * Package installation, R CMD INSTALL or install.packages(*), now
    parses each of the &lt;pkg&gt;/R/*.R files individually instead of
    first concatenating and then parse()ing the large resulting file.
    This allows parser or syntax errors to be diagnosed with correct
    file names and line numbers, thanks to Simon Dedman's report and
    Bill Dunlap's patch in PR#17859.
    This _does_ require syntactically self contained R source files
    now, fixing another inadvertent bug.
  * predict.lm(&lt;model with offset&gt;) now finds the offset in the
    correct environment, thanks to Andr'e Gillibert's report and patch
    in PR#18456.
  * getInitial(&lt;formula&gt;) now finds the selfStart model in the
    correct environment.  (Reported by Ivan Krylov in PR#18368.)
  * Fix for possible segfault when using recently-added graphics
    features, such as gradients, clipping paths, masks, and groups
    with pdf(file=NULL).
  * class(m) &lt;- class(m) no longer changes a matrix m by adding a
    class _attribute_.
  * packageDate(pkg) now only warns once if there is no pkg.
  * When ts() creates a multivariate time series, "mts", it also
    inherits from "array" now, and is.mts() is documented _and_
    stricter.
  * Rd2txt() now preserves line breaks of \verb Rd content and from
    duplicated \cr.  The former also fixes the rendering of verbatim
    output from Rd \Sexpr in plain-text help.
  * uniroot(f, interval) should no longer wrongly converge _outside_
    the interval in some cases where abs(f(x)) == Inf for an x at the
    interval boundary, thanks to posts by Ben Bolker and Serguei
    Sokol on R-devel.
  * Vectorized alpha handling in palette functions such as in gray(),
    rainbow(), or hcl.colors() works correctly now, thanks to Achim
    Zeileis' report and patch in PR#18476.
  * Formatting and print()ing of bibentry objects has dropped the
    deprecated citation.bibtex.max argument, such that the bibtex
    argument's default for print.bibentry() depends directly on the
    citation.bibtex.max option, whereas in format.bibentry() the
    option no longer applies.
  * Attempting to use a character string naming a foreign function
    entry point in a foreign function call in a package will now
    signal an error if the packages has called R_forceSymbols to
    specify that symbols must be used.
  * An error in table() could permanently set options(warn=2)
    promoting all subsequent warnings to errors.
  * The sigma() function gave misleading results for binary GLMs.  A
    new method for objects of class "glm" returns the square root of
    the estimate of the dispersion parameter using the same
    calculation as summary.glm().
  * bs() and ns() in the (typical) case of automatic knot
    construction, when some of the supposedly inner knots coincide
    with boundary knots, now moves them inside (with a warning),
    building on PR#18442 by Ben Bolker.
  * R CMD on Windows now skips the site profile with --no-site-file
    and --vanilla even when R_PROFILE is set (PR#18512, from Kevin
    Ushey).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1686916800">- CHANGES IN R 4.3.1:
  C-LEVEL FACILITIES:
  * The C-level API version of R's integrate(), Rdqags() in Applic.h,
    now returns the correct number of integrand evaluations neval,
    fixing PR#18515 reported and diagnosed by Stephen Wade.
  * The C prototypes for LAPACK calls dspgv and dtptrs in
    R_exts/Lapack.h had one too many and one too few character length
    arguments - but this has not caused any known issues. To get the
    corrected prototypes, include
    [#]include &lt;Rconfig.h&gt; // for PR18534fixed
    [#]ifdef PR18534fixed
    [#] define usePR18534fix 1
    [#]endif
    [#]include &lt;R_exts/Lapack.h&gt;
    in your C/C++ code (PR#18534).
  INSTALLATION:
  * Many of the checks of esoteric Internet operations and those
    using unreliable external sites have been moved to a new target
    that is not run by default and primarily intended for the core
    developers.  To run them use
    cd tests; make test-Internet-dev
  BUG FIXES:
  * .S3methods(), typically called from methods(), again marks
    methods from package base as visible.
    Also, the visibility of non-base methods is again determined by
    the method's presence in search().
  * tools::Rdiff() is now more robust against invalid strings, fixing
    installation tests on Windows without Rtools installed
    (PR#18530).
  * Fix (new) bug in hcl.colors(2, *), by Achim Zeileis (PR#18523).
  * head(., &lt;illegal&gt;) and tail(..) now produce more useful "Error in
    ...." error messages, fixing PR#18362.
  * Package code syntax on Windows is checked in UTF-8 when UTF-8 is
    the native encoding.
  * na.contiguous(x) now also returns the first run, when it is at
    the beginning and there is a later one of the same length;
    reported to R-devel, including a fix, by Georgi Boshnakov.
    Further, by default, it modifies only an existing attr(*,"tsp")
    but otherwise no longer sets one.
  * chol(&lt;not pos.def&gt;, pivot = &lt;T|F&gt;) now gives a correct error or
    warning message (depending on pivot), thanks to Mikael Jagan's
    (PR#18541).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1699012800">- CHANGES IN R 4.3.2:
  NEW FEATURES:
  * The default initialization of the "repos" option from the
    repositories file at startup can be skipped by setting
    environment variable R_REPOSITORIES to NULL such that
    getOption("repos") is empty if not set elsewhere.
  * qr.X() is now an implicit S4 generic in methods.
  * iconv(to = "ASCII//TRANSLIT") is emulated using substitution on
    platforms which do not support it (notably Alpine Linux).  This
    should give a human-readable conversion in ASCII on all platforms
    (rather than NA_character_).
  * trans3d() gains options continuous and verbose addressing the
    problem of possible "wrap around" when projecting too long
    curves, as reported by Achim Zeileis in PR#18537.
  * tools::showNonASCII() has been rewritten to work better on macOS
    14 (which has a changed implementation of iconv()).
  * tiff(type = "quartz") (the default on macOS) now warns if
    compression is specified: it continues to be ignored.
  INSTALLATION on a UNIX-ALIKE:
  * There is some support for building with Intel's LLVM-based
    compilers on x86_64 Linux, such as (C) icx, (C++) ipcx and
    (Fortran) ifx from oneAPI 2023.x.y.
  * There is support for using LLVM's flang-new as the Fortran
    compiler from LLVM 16.0.x (preferably 17.0.0 or later).
  UTILITIES:
  * R CMD check reports the use of the Fortran 90 random number
    generator RANDOM_NUMBER() and the subroutines to initialize it.
    'Writing R Extensions' has example code to use R's RNGs from
    Fortran.
  BUG FIXES:
  * substr(x, n, L) &lt;- cc now works (more) correctly for multibyte
    UTF-8 strings x when L &gt; nchar(x), thanks to a report and patch
    by 'Architect 95'.
  * contrib.url(character()) now returns 0-length character() as
    documented, which also avoids spurious warnings from
    available.packages() et al. in the edge case of an empty vector
    of repository URLs.
  * readChar(., 4e8) no longer fails, thanks to Kodi Arfer's report
    (PR#18557).
  * lapply(&lt;list&gt;, as.data.frame) no longer warns falsely for some
    base vector components.
  * Communication between parent and child processes in the multicore
    part of parallel could fail on platforms that do not support an
    arbitrarily large payload in system functions read()/write() on
    pipes (seen on macOS where a restriction to INT_MAX bytes is
    documented, without doing a partial read unlike Linux). The
    payload is now split into 1Gb chunks to avoid that problem.
    (PR#18571)
  * qqplot(x,y, conf.level=.) gives better confidence bounds when
    length(x) != length(y), thanks to Alexander Ploner's report and
    patch proposal (PR#18557).
  * norm(&lt;0-length&gt;, "2") now gives zero instead of an error, as all
    the other norm types, thanks to Mikael Jagan's PR#18542.
  * Build-stage Rd macros \packageAuthor and \packageMaintainer now
    process Authors@R, fixing NA results when the package DESCRIPTION
    omits Author and Maintainer fields.
  * Formatting and printing complex numbers could give things like
    0.1683-0i because of rounding error: -0i is now replaced by +0i.
  * postscript() refused to accept a title comment containing the
    letter "W" (PR#18599).
  * isoreg(c(1,Inf)) signals an error instead of segfaulting, fixing
    PR#18603.
  * tiff(type = "Xlib") was only outputting the last page of
    multi-page plots.
  * tools::latexToUtf8() again knows about \~{n} and other letters
    with tilde, fixing a regression in R 4.3.0, and about \^{i} as an
    alternative to \^{\i} (similarly with other accents).
    Furthermore, LaTeX codes for accented I letters are now correctly
    converted, also fixing related mistakes in
    tools::encoded_text_to_latex().
  * tar(*, tar = "internal") no longer creates out-of-spec tar files
    in the very rare case of user or group names longer than 32
    bytes, fixing PR#17871 with thanks to Ivan Krylov.
  * When using the "internal" timezone datetime code, adding a
    fraction of a second no longer adds one second, fixing PR#16856
    from a patch by Ivan Krylov.
  * tools::checkRd() no longer produces spurious notes about
    "unnecessary braces" from multi-line Rd results of \Sexpr macros.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1709208000">- CHANGES IN R 4.3.3:
  NEW FEATURES:
  * iconv() now fixes up variant encoding names such as "utf8"
    case-insensitively.
  DEPRECATED AND DEFUNCT:
  * The legacy encoding = "MacRoman" is deprecated in pdf() and
    postscript(): support was incomplete in earlier versions of R.
  BUG FIXES:
  * Arguments are now properly forwarded to methods on S4 generics
    with ... in the middle of their formal arguments. This was broken
    for the case when a method introduced an argument but did not
    include ... in its own formals. Thanks to Herv'e Pag`es for the
    report PR#18538.
  * Some invalid file arguments to pictex(), postscript() and xfig()
    opened a file called NA rather than throw an error.  These
    included postscript(NULL) (which some people expected to work
    like pdf(NULL)).
  * Passing filename = NA to svg(), cairo_pdf(), cairo_ps() or the
    Cairo-based bitmap devices opened a file called NA: it now throws
    an error.
  * quartz(file = NA) opened a file called NA, including when used as
    a Quartz-based bitmap device.  It now gives an error.
  * rank(&lt;long vector&gt;) now works, fixing PR#18617, thanks to Ilia
    Kats.
  * seq.int() did not adequately check its length.out argument.
  * match(&lt;POSIXct&gt;, .) is correct again for differing time zones,
    ditto for "POSIXlt", fixing PR#18618 reported by Bastian Klein.
  * drop.terms(*, dropx = &lt;0-length&gt;) now works, fixing PR#18563 as
    proposed by Mikael Jagan.
  * drop.terms(*) keeps + offset(.) terms when it should, PR#18565,
    and drop.terms() no longer makes up a response, PR#18566, fixing
    both bugs thanks to Mikael Jagan.
  * getS3method("t", "test") no longer finds the t.test() function,
    fixing PR#18627.
  * pdf() and postscript() support for the documented Adobe encodings
    "Greek" and "Cyrilllic" was missing (although the corresponding
    Windows' codepages could be used).
  * Computations of glyph metric information for pdf() and
    postscript() did not take into account that transliteration could
    replace one character by two or more (only seen on macOS 14) and
    typically warned that the information was not known.
  * rank(x) no longer overflows during integer addition, when
    computing rank average for largish but not-yet long vector x,
    fixing PR#18630, thanks to Ilia Kats.
  * list.files() on Windows now returns also files with names longer
    that 260 bytes (the Windows limit is 260 characters).
    Previously, some file names particularly with 'East Asian'
    characters were omitted.
  * cov2cor(&lt;0 x 0&gt;) now works, fixing PR#18423 thanks to Mikael
    Jagan and Elin Waring.
  * cov2cor(&lt;negative diagonal&gt;) and similar now give one warning
    instead of two, with better wording, fixing PR#18424 thanks to
    Mikael Jagan.
  * tools:: startDynamicHelp() now ensures port is in proper range,
    fixing PR#18645.
  * pbeta(x, a,b) is correct now for x=0 or 1 in the boundary cases
    where a or b or both are 0, fixing PR#18672 thanks to Michael
    Fay.
  * pmatch(x, table) for large table, also called for data frame row
    selection, dfrm[nm, ], is now interruptible, fixing PR#18656.
  * predict(&lt;rank-deficient lm&gt;, newdata=*) fix computing of nbasis,
    see Russ Lenth's comment 29 in PR#16158.
  * Added a work-around for a bug in macOS 14.3.1 and higher which
    prevents R plots in the Quartz Cocoa device from updating on
    screen.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1713960000">- CHANGES IN R 4.4.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Startup banners, R --version, sessionInfo() and R CMD check no
    longer report (64-bit) as part of the platform as this is almost
    universal - the increasingly rare 32-bit platforms will still
    report (32-bit).
    On Windows, ditto for window titles.
  * is.atomic(NULL) now returns FALSE, as NULL is not an atomic
    vector.  Strict back-compatibility would replace is.atomic(foo)
    by (is.null(foo) || is.atomic(foo)) but should happen only
    sparingly.
  NEW FEATURES:
  * The confint() methods for "glm" and "nls" objects have been
    copied to the stats package.  Previously, they were stubs which
    called versions in package MASS. The MASS namespace is no longer
    loaded if you invoke (say) confint(glmfit).  Further, the "glm"
    method for profile() and the plot() and pairs() methods for class
    "profile" have been copied from MASS to stats.  (profile.nls()
    and plot.profile.nls() were already in stats.)
  * The confint() and profile methods for "glm" objects have gained a
    possibility to do profiling based on the Rao Score statistic in
    addition to the default Likelihood Ratio. This is controlled by a
    new test = argument.
  * The pairs() method for "profile" objects has been extended with a
    which = argument to allow plotting only a subset of the
    parameters.
  * The "glm" method for anova() computes test statistics and
    p-values by default, using a chi-squared test or an F test
    depending on whether the dispersion is fixed or free.  Test
    statistics can be suppressed by giving argument test a false
    logical value.
  * In setRepositories() the repositories can be set using their
    names via name = instead of index ind =.
  * methods() and .S3methods() gain a all.names option for the (rare)
    case where functions starting with a . should be included.
  * Serializations can now be interrupted (e.g., by Ctrl-C on a
    Unix-alike) if they take too long, e.g., from save.image(),
    thanks to suggestions by Ivan Krylov and others on R-devel.
  * New startup option --max-connections to set the maximum number of
    simultaneous connections for the session.  Defaults to 128 as
    before: allowed values up to 4096 (but resource limits may in
    practice restrict to smaller values).
  * R on Windows (since Windows 10 2004) now uses the new Segment
    Heap allocator. This may improve performance of some
    memory-intensive applications.
  * When R packages are built, typically by R CMD build &lt;pkg&gt;, the
    new --user=&lt;build_user&gt; option overrides the (internally
    determined) user name, currently Sys.info()["user"] or LOGNAME.
    This is a (modified) fulfillment of Will Landau's suggestion in
    PR#17530.
  * tools::testInstalledBasic() gets new optional arguments outDir
    and testSrcdir, e.g., allowing to use it in a &lt;builddir&gt; !=
    &lt;srcdir&gt; setup, and in standard "binary" Windows installation
  * if* a source tests/ folder is present.
  * range(&lt;DT_with_Inf&gt;, finite = TRUE) now work for objects of class
    "Date", "POSIXct", and "POSIXlt" with infinite entries,
    analogously to range.default(), as proposed by Davis Vaughan on
    R-devel.  Other range()-methods can make use of new function
    .rangeNum().
  * New .internalGenerics object complementing .S3PrimitiveGenerics,
    for documentation and low-level book-keeping.
  * grid() now invisibly returns the x- and y- coordinates at which
    the grid-lines were drawn.
  * norm(., type) now also works for complex matrices.
  * kappa(., exact = TRUE, norm = *) now works for all norms and also
    for complex matrices.  In symmetric / triangular cases, the new
    argument uplo = "U" | "L" allows the upper or lower triangular
    part to be specified.
  * memDecompress(type = "unknown") recognizes compression in the
    default 'zlib' format as used by memCompress(type = "gzip").
  * memCompress() and memDecompress() will use the libdeflate library
    (&lt;https://github.com/ebiggers/libdeflate&gt;) if installed.  This
    uses the same type of compression for type = "gzip" but is 1.5-2x
    faster than the system libz library on some common platforms: the
    speed-up may depend on the library version.
  * diff() for objects of class "Date", "POSIXct", and "POSIXlt"
    accepts a units argument passed via ....
  * Dynamic help now does a much better job of rendering package
    DESCRIPTION metadata.
  * Rprof() gains an event argument and support for elapsed (real)
    time profiling on Unix (PR#18076).
  * filled.contour() gains a key.border argument.
  * tools::update_pkg_po() gets arguments pot_make and mo_make for
    _not_ re-making the corresponding files, and additionally a
    verbose argument.
  * Hexadecimal string colour specifications are now accepted in
    short form, so, for example, we can use "#123", which is
    equivalent to "#112233".
    Thanks to MikeFC for the original idea and Ella Kaye, Malcolm
    Barrett, George Stagg, and Hanne Oberman for the patch.
  * Plain-text help shows \var markup by angle brackets.
  * The new experimental primitive function declare() is intended to
    eventually allow information about R code to be communicated to
    the interpreter, compiler, and code analysis tools. The syntax
    for declarations is still being developed.
  * Functions psmirnov(), qsmirnov() and rsmirnov() in package stats
    have had argument two.sided renamed to alternative, to take into
    account that the permutation distributions of the one-sided
    statistics can be different in the case of ties.  Consequence of
    PR#18582.
  * sort() is now an implicit S4 generic in methods.
  * Formatting and printing, format(z), print(z), of complex vectors
    z no longer zap relatively small real or imaginary parts to zero,
    fixing PR#16752.  This is an API change, as it was documented
    previously to round real and imaginary parts together on purpose,
    producing nicer looking output.  As mentioned, e.g. in the PR,
    this change is compatible with many other "R-like" programming
    environments.
    We have simplified the internal code and now basically format the
    real and imaginary parts independently of each other.
  * New experimental functions Tailcall() and Exec() to support
    writing stack-space-efficient recursive functions.
  * Where characters are attempted to be plotted by pdf(),
    postscript() and xfig() which are not in the selected 8-bit
    character set (most often Latin-1) and the R session is using a
    UTF-8 locale, the warning messages will show the UTF-8 character
    rather than its bytes and one dot will be substituted per
    character rather than per byte.  (Platforms whose iconv() does
    transliteration silently plot the transliteration.)
    In a UTF-8 locale some transliterations are now done with a
    warning (e.g., dashes and Unicode minus to hyphen, ligatures are
    expanded, permille (‰) is replaced by o/oo), although the OS may
    have got there first.  These are warnings as they will continue
    to be replaced by dots in earlier versions of R.
  * The matrix multiplication functions crossprod() and tcrossprod()
    are now also primitive and S3 generic, as %*% had become in R
    4.3.0.
  * source() and example() have a new optional argument catch.aborts
    which allows continued evaluation of the R code after an error.
  * The non-Quartz tiff() devices allow additional types of
    compression if supported by the platform's libtiff library.
  * The list of base and recommended package names is now provided by
    tools::standard_package_names().
  * cairo_pdf() and cairo_ps() default to onefile = TRUE to closer
    match pdf() and postscript().
  * New option catch.script.errors provides a documented way to catch
    errors and then continue in non-interactive use.
  * L %||% R newly in base is an expressive idiom for the phrases
    if(!is.null(L)) L else R or if(is.null(L)) R else L.
  * The return value from warnings() now always inherits from
    "warnings" as documented, now also in the case of no warnings
    where it previously returned NULL.
  * as.complex("1i") now returns 0 + 1i instead of NA with a warning.
  * z &lt;- c(NA, 1i) now keeps the imaginary part Im(z[1]) == 0, no
    longer coercing to NA_complex_.  Similarly, cumsum(z) correctly
    sums real and imaginary parts separately, i.e., without
    "crosstalk" in case of NAs.
  * On Alpine Linux iconv() now maps "latin2", "latin-2", "latin9"
    and "latin-9" to encoding names the OS knows about
    (case-insensitively).
  * iconv(sub = "Unicode") now always zero-pads to four (hex) digits,
    rather than to 4 or 8.  (This seems to have become the convention
    once Unicode restricted the number of Unicode points to 2^21 - 1
    and so will never need more than 6 digits.)
  * NCOL(NULL) now returns 0 instead of 1, for consistency with
    cbind().
  * The information for the Euro glyph missing from the Adobe .afm
    files for the Courier, Helvetica and Times families has been
    copied from their URW equivalents - this will improve vertical
    centring in the pdf() and postscript() devices.
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.12.0.  The changes are almost entirely cosmetic.
  * The included LAPACK sources have been updated to version 3.12.0
    and some further double-complex routines added.
  * There are new font families for the 2014--5 URW 2.0 fonts (see
    ?pdf) which are included in recent versions of Ghostscript.
    These have font widths for most Greek glyphs and a few others
    which were missing from the original versions (whose font
    families remain available for reproducibility, although
    Ghostscript-based viewers will render using the 2.0 versions).
  * Improve the large-n efficiency of as.matrix(&lt;dist&gt;), thanks an R
    contributors effort, notably by Tim Taylor and Heather Turner,
    see PR#18660.
  * The default and numeric methods of all.equal() get a check.class
    option.
  * zapsmall() gets new optional arguments, function mFUN and min.d,
    for extra flexibility; fulfills a wish in PR#18199.  Also, it is
    now an implicit S4 generic in package methods.
  * The Rd filter for aspell() gains an ignore argument.
  * New generic function sort_by(), primarily useful for the
    data.frame method which can be used to sort rows of a data frame
    by one or more columns.
  * The icence headers for the RPC code in src/extra/xdr have been
    updated to use the GPL-compatible licence published by Oracle
    America in 2010.
  * New function pkg2HTML() in tools to create single-page HTML
    reference manuals for R packages.
  * The byte code evaluator now uses less C stack space for recursive
    calls to byte-compiled functions. It also makes more of an effort
    to avoid allocations for scalar return values.
  * New completion option backtick (disabled by default) allows
    non-syntactic completions to be wrapped in backquotes. This is
    currently only useful for Jupyter notebooks via the IRkernel
    package, and may cause problems for other backends.
  INSTALLATION:
  * The parser has been updated to work with bison 3.8.2, which is
    now used for the pre-generated parsers in gram.c, file.c, and
    gramRd.c. A few parser error messages have changed, which may
    affect code that relies on exact messages.
  INSTALLATION on a UNIX-ALIKE:
  * System valgrind headers are now required to use configure option
  - -with-valgrind-instrumentation with value 1 or 2.
  * configure will warn if it encounters a 32-bit build, as that is
    nowadays almost untested.
  * Environment variable R_SYSTEM_ABI is no longer used and so no
    longer recorded in etc/Renviron (it was not on Windows and was
    only ever used when preparing package tools).
  * If the libdeflate library and headers are available, libdeflate
    rather than libz is used to (de)compress R objects in lazy-load
    databases.  Typically tasks spend up to 5% of their time on such
    operations, although creating lazy-data databases is one of the
    exceptions.
    This can be suppressed if the library is available by the
    configure option --without-libdeflate-compression.
  * configure option --enable-lto=check has not worked reliably since
    2019 and has been removed.
  * The minimum autoconf requirement for a maintainer build has been
    increased to autoconf 2.71.
    It is intended to increase this to 2.72 for R 4.5.0: the
    distributed configure file was generated using 2.72.
  * The minimum version requirement for an external LAPACK has been
    reduced to 3.9.0.
  * No default C++ compiler is set if no C++17 compiler is detected:
    there is no longer an automatic fallback to C++14 or C++11.
    Compilers from the last five years should have sufficient
    support: for others macros CXX and CXXSTD can be set in file
    config.site to provide a fallback if needed.
    The Objective-C++ compiler now by default uses the standard
    selected by R for C++ (currently C++17) rather than the default
    standard for the C++ compiler (which on macOS is still C++98).
  INSTALLATION on macOS:
  * A new configure option --with-newAccelerate makes use of Apple's
    'new' BLAS / LAPACK interfaces in their Accelerate framework.
    Those interfaces are only available in macOS 13.3 or later, and
    building requires SDK 13.3 or later (from the Command Line Tools
    or Xcode 14.3 or later).
    By default the option uses new Accelerate for BLAS calls: to also
    use it for LAPACK use option --with-newAccelerate=lapack.  The
    later interfaces provide LAPACK 3.9.1 rather than 3.2.1: 3.9.1 is
    from 2021-04 and does not include the improved algorithms
    introduced in LAPACK 3.10.0 (including for BLAS calls).
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools44, an update of the Rtools43 toolchain.  It is
    based on GCC 13 and newer versions of MinGW-W64, binutils and
    libraries (targeting 64-bit Intel CPUs).  R-devel can no longer
    be built using Rtools43 without changes.
  * Rtools44 has experimental support for 64-bit ARM (aarch64) CPUs
    _via_ the LLVM 17 toolchain using lld, clang/flang-new and
    libc++.
  UTILITIES:
  * R CMD check notes when S4-style exports are used without
    declaring a strong dependence on package methods.
  * tools::checkRd() (used by R CMD check) detects more problems with
    \Sexpr-based dynamic content, including bad nesting of \Sexprs
    and invalid arguments.
  * tools::checkRd() now reports Rd titles and section names ending
    in a period; this is ignored by R CMD check unless environment
    variable _R_CHECK_RD_CHECKRD_MINLEVEL_ is set to -5 or smaller.
  * R CMD check now notes Rd files without an \alias, as long
    documented in 'Writing R Extensions' §1.3.1.  The check for a
    missing \description has been moved from tools::checkRd() to
    tools::checkRdContents().
  * R CMD check now visits inst/NEWS.Rd and OS-specific man
    subdirectories when checking Rd files.
  * tools::checkDocFiles() and tools::checkRdContents() now also
    check internal Rd files by default, but "specially" (ignoring
    missing documentation of arguments).
  * R CMD Rdiff gets option --useEx.
  * R CMD check now warns on non-portable uses of Fortran KIND such
    as INTEGER(KIND=4) and REAL(KIND=8).
    To see the failing lines set environment variable
    _R_CHECK_FORTRAN_KIND_DETAILS_ to a true value.
  * When checking Rd files, R CMD check now notes some of the "lost
    braces" that tools::checkRd() finds.  Typical problems are Rd
    macros missing the initial backslash (e.g., code{...}), in-text
    set notation (e.g., {1, 2}, where the braces need escaping), and
    \itemize lists with \describe-style entries of the form
    \item{label}{description}.
  * R CMD INSTALL (and hence check) will compile C++ code with
  - DR_NO_REMAP if environment variable _R_CXX_USE_NO_REMAP_ is set
    to a true value.  It is planned that this will in future become
    the default for compiling C++.
  * The new built-in Rd macro \dontdiff{} can be used to mark example
    code whose output should be ignored when comparing check output
    to reference output (tests/Examples/&lt;pkg&gt;-Ex.Rout.save).  The
    \dontdiff tag, like \donttest, is _not_ shown on the rendered
    help page, so provides a clean alternative to ##
    IGNORE_RDIFF_(BEGIN|END) comments.
  * R CMD build when there is no NAMESPACE, now uses the recommended
    exportPattern("^[^.]"), instead of exporting everything.
  * R CMD check now warns about non-ASCII characters in the NAMESPACE
    file (in addition to R files). Such packages are not portable and
    may fail to install on some platforms.
  C-LEVEL FACILITIES:
  * Headers R_ext/Applic.h and R-ext/Linpack.h used to include
    R_ext/BLAS.h although this was undocumented and unneeded by their
    documented entry points.  They no longer do so.
  * New function R_missing(), factored out from do_missing(), used to
    fix PR#18579.
  * SEXP type S4SXP has been renamed to OBJSXP to support
    experimenting with alternative object systems.  The S4SXP value
    can still be used in C code but is now deprecated.  Based on
    contributions from the R Consortium's Object-Oriented Programming
    Working Group.
  * New function pow1p(x,y) for accurate (1+x)^y.
  * mkCharLenCE was incorrectly documented to take a size_t length
    but was implemented with int (and character strings in R are
    limited to 2^31 - 1 bytes).
  DEPRECATED AND DEFUNCT:
  * data() no longer handles zipped data from long-defunct (since R
    2.13.0) --use-zip-data installations.
  * The legacy graphics devices pictex() and xfig() are now
    deprecated.  They do not support recent graphics enhancements and
    their font handling is rudimentary. The intention is to retain
    them for historical interest as long as they remain somewhat
    functional.
  * Support for encoding = "MacRoman" has been removed from the pdf()
    and postscript() devices - this was a legacy encoding supporting
    classic macOS up to 2001 and no longer has universal libiconv
    support.
  * is.R() is deprecated as no other S dialect is known to be in use
    (and this could only identify historical dialects, not future
    ones).
    Further information on calls can be obtained by setting the
    environment variable _R_DEPRECATED_IS_R_ to error which turns the
    deprecation warning into an error and so by default gives a
    traceback.  (This is done by R CMD check --as-cran.)
  * UseMethod() no longer forwards local variables assigned in the
    generic function into method call environments before evaluating
    the method body. This makes method calls behave more like
    standard function calls and makes method code easier to analyze
    correctly.
  * The twelve as.data.frame.&lt;class&gt;() methods which were deprecated
    only via _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ and in R CMD
    check --as-cran are formally deprecated now in favour of calling
    as.data.frame() or as.data.frame.vector().  The deprecation
    "check" now works also when as.data.frame() is S4 generic thanks
    to Ivan Krylov.
  * The default method for the directional comparison operators &lt;, &gt;,
    &lt;=, and &gt;= now signals an error when one of the operands is a
    language object, i.e. a symbol or a call.
  * For terms.formula(), deprecate abb and neg.out arguments
    _formally_ in addition to just documenting it.
  BUG FIXES:
  * The methods package is more robust to not being attached to the
    search path.  More work needs to be done.
  * pairwise.t.test() misbehaved when subgroups had 0 DF for
    variance, even with pool.sd = TRUE.  (PR#18594 by Jack Berry).
  * Probability distribution functions [dpq]&lt;distrib&gt;(x, *), but also
    bessel[IKJY](x, .) now consistently preserve attributes(x) when
    length(x) == 0, e.g., for a 2 x 0 matrix, thanks to Karolis
    Koncevičius' report PR#18509.
  * Group "Summary" computations such as sum(1:3, 4, na.rm = 5, NA,
    7, na.rm = LL) now give an error instead of either 17 or NN for
    LL true or false, as proposed by Ivan Krylov on the R-devel
    mailing list.  (This also means it is now an error to specify
    na.rm more than once.)
  * as.complex(x) now returns complex(real = x, imaginary = 0) for
    _all_ numerical and logical x, notably also for NA or
    NA_integer_.
  * Directories are now omitted by file.copy(, recursive = FALSE) and
    in file.append() (PR#17337).
  * gsub() and sub() are now more robust to integer overflow when
    reporting errors caused by too large input strings (PR#18346).
  * Top-level handlers are now more robust to attempts to remove a
    handler whilst handlers are running (PR#18508).
  * The handling of Alt+F4 in dialogs created on Windows using
    GraphApp has been fixed (PR#13870).
  * density() more consistently computes grid values for the
    FFT-based convolution, following Robert Schlicht's analysis and
    proposal in PR#18337, correcting density values typically by a
    factor of about 0.999.  Argument old.coords = TRUE provides back
    compatibility.
  * palette.colors() gains a name argument that defaults to FALSE
    controlling whether the vector of colours that is returned has
    names (where possible).  PR#18529.
  * tools::xgettext() no longer extracts the (non-translatable) class
    names from warningCondition and errorCondition calls.
  * S3method(&lt;gen&gt;, &lt;class&gt;, &lt;func&gt;) in the NAMESPACE file now works
    (again) when &lt;func&gt; is visible from the namespace, e.g.,
    imported, or in base.
  * getParseData(f) now also works for a function defined in the
    first of several &lt;pkg&gt;/R/*.R source files, thanks to Kirill
    Müller's report and Duncan Murdoch's patch in PR#16756.
  * Rd \Sexpr macros with nested #ifdef conditionals were not
    processed.
  * A non-blocking connection with non-default encoding (such as a
    socket) now correctly returns from readLines() after new data has
    arrived also when its EOF had been reached previously.  Thanks to
    Peter Meilstrup's report on R-devel and Ivan Krylov's report and
    patch proposal in PR#18555.
  * tools::checkRdContents() failed to detect empty argument
    descriptions when they spanned multiple lines, including those
    generated by prompt().  These cases are now noted by R CMD check.
  * Plain-text help no longer outputs spurious colons in the
    arguments list (for multi-line \item labels in the Rd source).
  * kappa() and rcond() work correctly in more cases; kappa(., norm =
    "2") now warns that it computes the 1-norm with (default) exact =
    FALSE; prompted by Mikael Jagan's quite comprehensive PR#18543.
  * Rd skeletons generated by prompt() or promptData() now use a
    dummy title (so R CMD build works).  tools::checkRdContents() has
    been updated to detect such template leftovers, including from
    promptPackage().
  * When S4 method dispatch fails because no method was found, the
    error message now includes the signature argument names; thanks
    to Michael Chirico's proposal on the R-devel list.
  * withAutoprint({ .. }) now preserves srcrefs previously lost,
    thanks to Andrew Simmons' report plus fix in PR#18572.
  * transform.data.frame() no longer adjusts names; in particular,
    untransformed variables are kept as-is, including those with
    syntactically invalid names (PR#17890).
  * The keep.source option for Rd \Sexpr blocks is no longer ignored.
  * The formula methods for t.test() and wilcox.test() now catch when
    paired is passed, addressing PR#14359; use Pair(x1, x2) ~ 1 for a
    paired test.
  * The level reported in the browser prompt was often too large. It
    now shows the number of browser contexts on the stack.
  * For cbind() and rbind(), the optional deparse.level argument is
    now properly passed to methods, thanks to Mikael Jagan's PR#18579
    and comments there.
  * Some error and warning messages for large ('long vector')
    matrix(v, nr, nc) and dim(m) &lt;- d are now correct about sizes,
    using long long formatting, fixing PR#18612 (and more) reported
    by Mikael Jagan.
  * readChar(useBytes = TRUE) now terminates strings even when the
    underlying connection uses extra spaces in the input buffer.
    This fixes problems with extra garbage seen with gzip
    connections, PR#18605.
  * Named capture in PCRE regular expressions now works also with
    more than 127 named groups (PR#18588).
  * Datetime functions are now robust against long jumps when dealing
    with internal time zone changes.  This avoids confusing warnings
    about an invalid time zone, previously triggered by turning
    warnings into errors or handling them via tryCatch (PR#17966,
    PR#17780).
  * Datetime functions now restore even an empty TZ environment
    variable after internal time zone changes (PR#17724).  This makes
    results of datetime functions with this (typically unintentional)
    setting more predictable.
  * drop.terms(*) now drops response as by default, keep.response =
    FALSE, fixing PR#18564 thanks to Mikael Jagan.
  * dummy.coef(.) now also works for lm()-models with character
    categorical predictor variables rather than factor ones, fixing
    PR#18635 reported by Jinsong Zhao.
  * formals(f) &lt;- formals(f) now also works for a function w/o
    arguments and atomic _constant_ body(f).
  * Correct as.function(&lt;invalid list&gt;, .)'s error message.
  * removeSource() is yet more thorough in finding and removing
    "srcref" and the other source references from parsed R language
    chunks, fixing PR#18638 thanks to Andrew Simmons.
  * dgeom() is more accurate now, notably when its result is very
    small, fixing PR#18642 thanks to the proposal of Morten Welinder,
    also improving other instances where C level binom_raw(x, n, ..)
    has x == 0 or x== n.
  * warning() with options(warn = 1) has improved output for
    multi-line messages.
  * axis.Date() and axis.POSIXct() now respect the par("lab") setting
    for the number of pretty() intervals.
  * Comparisons for language objects (which are based on deparsing)
    are now more careful about using accurate deparsed results
    (PR#18676).
  * Plain-text help (Rd2txt) now correctly preserves blank lines
    following single-line \dontrun code.
  * &lt;POSIXlt&gt;[*] no longer sets wrong "balanced" attribute, fixing
    PR#18681 thanks to Mikael Jagan.
  * str(&lt;classed-call&gt;) now deparses the call as expected, fixing
    PR#18684, reported by Dave Slager.
  * In Rd examples, code following the closing brace of a \dontrun,
    \dontshow or \donttest tag on the same line is no longer skipped
    when R CMD check runs the examples.
  * as.data.frame(matrix(*, ncol=0)) now gets valid names() and
    colnames(); reported by Davis Vaughan on the R-devel list.
  * Internal Mathlib function stirlerr(n) is now almost fully
    (52-bit) accurate for all n &gt;= ~5.9 and more accurate also in the
    range 1 -- 5.9.  This entails small ("after 12th decimal")
    changes in density functions, e.g., dgamma() in _some_ regions of
    their support.  The fix was partly prompted by Morten Welinder's
    PR#18640.
  * Numbers like 9876543.2 are now considered non-integer by Mathlib
    internal R_nonint(), amending original fix of PR#15734.
  * Rd comment lines no longer cause broken paragraphs in the
    rendered PDF and plain-text help. In code blocks, pure comment
    lines (starting with %) no longer produce an empty line.
  * xtabs(Freq ~ .) now consistently defaults to na.action = na.pass,
    using na.rm = FALSE (added as an argument) when summing over Freq
    (PR#17770).
  * tools::testInstalledPackage() is no longer silent about failures
    from running examples or tests and its return code no longer
    ignores failures from checking vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1718366400">- CHANGES IN R 4.4.1:
  C-LEVEL FACILITIES:
  * Functions R_atof and R_strtod declared in header R_ext/Utils.h
    are now documented in 'Writing R Extensions' and so formally part
    of the API.
  * The non-API entry points Rf_setSVector, Rf_StringFalse,
    Rf_StringTrue and Rf_isBlankString have been added to those
    reported by R CMD check.
  * The new function Rf_allocLang is now available. This provides an
    alternative to the idiom of calling Rf_allocList followed by
    SET_TYPEOF.
  UTILITIES:
  * R CMD check now reports as warnings what gfortran calls 'Fortran
    2018 deleted features', all of which have long been marked as
    'obsolescent' and some of which were deleted in Fortran 2008 or
    earlier.  Fortran compilers are no longer required to support
    these.
  BUG FIXES:
  * as.numeric(), scan(), type.convert() and other places which use
    the internal C function R_strtod now require a _non-empty_ digit
    sequence in a decimal or binary exponent.  This aligns with the
    C/POSIX standard for strtod and with ?NumericConstants.
  * as.data.frame(m, make.names=NA) now works correctly for a matrix
    m with NA's in row names.
  * The error message from &lt;POSIXlt&gt;[["hour"]] and similar now
    mentions *[[, "hour"]], as wished for in PR#17409 and proposed by
    Michael Chirico.
  * qbinom() and potentially qpois(), qnbinom(), no longer sometimes
    fail accurate inversion (of pbinom(), etc), thanks to Christopher
    Chang's report and patch in PR#18711.
  * The internal help server on Windows can again serve requests sent
    in quick succession, fixing a regression in R 4.4.0.
  * debugcall(&lt;S3Generic&gt;()) now also works when a corresponding
    S4-generic version is in the methods cache (PR#18143).
  * Package tools' toTitleCase(ch0) now returns character(0) when ch0
    is of zero length; fixing PR#18724, reported by David Hugh Jones.
  * R CMD check is no longer broken (without a check result and no
    explanation in 00check.log) for a package which declares an
    invalid VignetteBuilder in DESCRIPTION but has no vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1730376000">- CHANGES IN R 4.4.2:
  C-LEVEL FACILITIES:
  * The S-compatibility macros F77_COM and F77_COMDECL defined in
    header R_ext/RS.h are deprecated and will be removed shortly.  We
    could find no record of their use.
  BUG FIXES:
  * Mathlib function lgammacor(x) no longer warns about underflow to
    zero for large x.
  * Text widths and heights were incorrectly reported by the Quartz
    device if the drawing context didn't exist yet (typically when
    drawing off-screen to a window that is yet to appear, see
    PR#18591).
  * The Quartz device could segfault in cases where paths with spaces
    are used in the new glyph drawing API.  Thanks to Tomek
    Gieorgijewski (PR#18758).
  * On macOS in R CRAN builds, it is again possible to read
    little-endian UTF-16 text with a BOM from a connection using
    encoding="UTF-16".  Users building R from source should avoid
    using the system libiconv in macOS 14.1 and later.
  * methods' internal .requirePackage() now re-enables primitive
    method dispatch when needed; thanks to Ivan Krylov for
    demystifying CRAN package check failures on the R-devel mailing
    list.</changelog>
</package>
<package pkgid="bf62aeb31682aa75fa468c5179150ad49f1e8c4b97dc69469e4ae8244084b5187134c5b2a6741b0f8a5dbc928c7f6fc3f294e044845ce4a7f4ba6f539b8979fa" name="R-core-libs" arch="x86_64">
  <version epoch="0" ver="4.4.2" rel="51.0.2.2.sr20241103"/>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1620302400">- To get in sync with d:l:R:autoCRAN the Matrix package's split
  in -devel was reversed.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339200">- improved spec file according to comments of dimstar in
  https://build.opensuse.org/request/show/892685</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339201">- CHANGES IN R 4.1.0:
  FUTURE DIRECTIONS:
  * It is planned that the 4.1.x series will be the last to support
    32-bit Windows, with production of binary packages for that
    series continuing until early 2023.
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Data set esoph in package datasets now provides the correct
    numbers of controls; previously it had the numbers of cases added
    to these.  (Reported by Alexander Fowler in PR#17964.)
  NEW FEATURES:
  * www.omegahat.net is no longer one of the repositories known by
    default to setRepositories().  (Nowadays it only provides source
    packages and is often unavailable.)
  * Function package_dependencies() (in package tools) can now use
    different dependency types for direct and recursive dependencies.
  * The checking of the size of tarball in R CMD check --as-cran
    &lt;pkg&gt; may be tweaked via the new environment variable
    _R_CHECK_CRAN_INCOMING_TARBALL_THRESHOLD_, as suggested in
    PR#17777 by Jan Gorecki.
  * Using c() to combine a factor with other factors now gives a
    factor, an ordered factor when combining ordered factors with
    identical levels.
  * apply() gains a simplify argument to allow disabling of
    simplification of results.
  * The format() method for class "ftable" gets a new option justify.
    (Suggested by Thomas Soeiro.)
  * New ...names() utility.  (Proposed by Neal Fultz in PR#17705.)
  * type.convert() now warns when its as.is argument is not
    specified, as the help file always said it _should_.  In that
    case, the default is changed to TRUE in line with its change in
    read.table() (related to stringsAsFactor) in R 4.0.0.
  * When printing list arrays, classed objects are now shown _via_
    their format() value if this is a short enough character string,
    or by giving the first elements of their class vector and their
    length.
  * capabilities() gets new entry "Rprof" which is TRUE when R has
    been configured with the equivalent of --enable-R-profiling (as
    it is by default).  (Related to Michael Orlitzky's report
    PR#17836.)
  * str(xS4) now also shows extraneous attributes of an S4 object
    xS4.
  * Rudimentary support for vi-style tags in rtags() and R CMD rtags
    has been added.  (Based on a patch from Neal Fultz in PR#17214.)
  * checkRdContents() is now exported from tools; it and also
    checkDocFiles() have a new option chkInternal allowing to check
    Rd files marked with keyword "internal" as well.  The latter can
    be activated for R CMD check via environment variable
    _R_CHECK_RD_INTERNAL_TOO_.
  * New functions numToBits() and numToInts() extend the raw
    conversion utilities to (double precision) numeric.
  * Functions URLencode() and URLdecode() in package utils now work
    on vectors of URIs.  (Based on patch from Bob Rudis submitted
    with PR#17873.)
  * path.expand() can expand ~user on most Unix-alikes even when
    readline is not in use.  It tries harder to expand ~, for example
    should environment variable HOME be unset.
  * For HTML help (both dynamic and static), Rd file links to help
    pages in external packages are now treated as references to
    topics rather than file names, and fall back to a file link only
    if the topic is not found in the target package. The earlier rule
    which prioritized file names over topics can be restored by
    setting the environment variable _R_HELP_LINKS_TO_TOPICS_ to a
    false value.
  * c() now removes NULL arguments before dispatching to methods,
    thus simplifying the implementation of c() methods, _but_ for
    back compatibility keeps NULL when it is the first argument.
    (From a report and patch proposal by Lionel Henry in PR#17900.)
  * Vectorize()'s result function's environment no longer keeps
    unneeded objects.
  * Function ...elt() now propagates visibility consistently with
    ..n.  (Thanks to Lionel Henry's PR#17905.)
  * capture.output() no longer uses non-standard evaluation to
    evaluate its arguments.  This makes evaluation of functions like
    parent.frame() more consistent.  (Thanks to Lionel Henry's
    PR#17907.)
  * packBits(bits, type="double") now works as inverse of
    numToBits().  (Thanks to Bill Dunlap's proposal in PR#17914.)
  * curlGetHeaders() has two new arguments, timeout to specify the
    timeout for that call (overriding getOption("timeout")) and TLS
    to specify the minimum TLS protocol version to be used for
    https:// URIs (_inter alia_ providing a means to check for sites
    using deprecated TLS versions 1.0 and 1.1).
  * For nls(), an optional constant scaleOffset may be added to the
    denominator of the relative offset convergence test for cases
    where the fit of a model is expected to be exact, thanks to a
    proposal by John Nash.  nls(*, trace=TRUE) now also shows the
    convergence criterion.
  * Numeric differentiation _via_ numericDeriv() gets new optional
    arguments eps and central, the latter for taking central divided
    differences.  The latter can be activated for nls() via
    nls.control(nDcentral = TRUE).
  * nls() now passes the trace and control arguments to getInitial(),
    notably for all self-starting models, so these can also be fit in
    zero-noise situations via a scaleOffset.  For this reason, the
    initial function of a selfStart model must now have ... in its
    argument list.
  * bquote(splice = TRUE) can now splice expression vectors with
    attributes: this makes it possible to splice the result of
    parse(keep.source = TRUE).  (Report and patch provided by Lionel
    Henry in PR#17869.)
  * textConnection() gets an optional name argument.
  * get(), exists(), and get0() now signal an error if the first
    argument has length greater than 1.  Previously additional
    elements were silently ignored.  (Suggested by Antoine Fabri on
    R-devel.)
  * R now provides a shorthand notation for creating functions, e.g.
    \(x) x + 1 is parsed as function(x) x + 1.
  * R now provides a simple native forward pipe syntax |&gt;.  The
    simple form of the forward pipe inserts the left-hand side as the
    first argument in the right-hand side call.  The pipe
    implementation as a syntax transformation was motivated by
    suggestions from Jim Hester and Lionel Henry.
  * all.equal(f, g) for functions now by default also compares their
    environment(.)s, notably via new all.equal method for class
    function.  Comparison of nls() fits, e.g., may now need
    all.equal(m1, m2, check.environment = FALSE).
  * .libPaths() gets a new option include.site, allowing to _not_
    include the site library.  (Thanks to Dario Strbenac's suggestion
    and Gabe Becker's PR#18016.)
  * Lithuanian translations are now available.  (Thanks to Rimantas
    Zakauskas.)
  * names() now works for DOTSXP objects.  On the other hand, in
    R-lang, the R language manual, we now warn against relying on the
    structure or even existence of such dot-dot-dot objects.
  * all.equal() no longer gives an error on DOTSXP objects.
  * capabilities("cairo") now applies only to the file-based devices
    as it is now possible (if very unusual) to build R with Cairo
    support for those but not for X11().
  * There is optional support for tracing the progress of
    loadNamespace() - see its help.
  * (Not Windows.)  l10n_info() reports an additional element, the
    name of the encoding as reported by the OS (which may differ from
    the encoding part (if any) of the result from
    Sys.getlocale("LC_CTYPE").
  * New function gregexec() which generalizes regexec() to find _all_
    disjoint matches and well as all substrings corresponding to
    parenthesized subexpressions of the given regular expression.
    (Contributed by Brodie Gaslam.)
  * New function charClass() in package utils to query the
    wide-character classification functions in use (such as
    iswprint).
  * The names of quantile()'s result no longer depend on the global
    getOption("digits"), but quantile() gets a new optional argument
    digits = 7 instead.
  * grep(), sub(), regexp and variants work considerably faster for
    long factors with few levels.  (Thanks to Michael Chirico's
    PR#18063.)
  * Provide grouping of x11() graphics windows within a window
    manager such as Gnome or Unity; thanks to a patch by Ivan Krylov
    posted to R-devel.
  * The split() method for class data.frame now allows the f argument
    to be specified as a formula.
  * sprintf now warns on arguments unused by the format string.
  * New palettes "Rocket" and "Mako" for hcl.colors() (approximating
    palettes of the same name from the 'viridisLite' package).
    Contributed by Achim Zeileis.
  * The base environment and its namespace are now locked (so one can
    no longer add bindings to these or remove from these).
  * Rterm handling of multi-byte characters has been improved,
    allowing use of such characters when supported by the current
    locale.
  * Rterm now accepts ALT+ +xxxxxxxx sequences to enter Unicode
    characters as hex digits.
  * Environment variable LC_ALL on Windows now takes precedence over
    LC_CTYPE and variables for other supported categories, matching
    the POSIX behaviour.
  * duplicated() and anyDuplicated() are now optimized for integer
    and real vectors that are known to be sorted via the ALTREP
    framework. Contributed by Gabriel Becker via PR#17993.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 14
    and so packages that provide graphics devices should be
    reinstalled.
  * Graphics devices should now specify deviceVersion to indicate
    what version of the graphics engine they support.
  * Graphics devices can now specify deviceClip.  If TRUE, the
    graphics engine will never perform any clipping of output itself.
    The clipping that the graphics engine does perform (for both
    canClip = TRUE and canClip = FALSE) has been improved to avoid
    producing unnecessary artifacts in clipped output.
  * The grid package now allows gpar(fill) to be a linearGradient(),
    a radialGradient(), or a pattern().  The viewport(clip) can now
    also be a grob, which defines a clipping path, and there is a new
    viewport(mask) that can also be a grob, which defines a mask.
    These new features are only supported so far on the Cairo-based
    graphics devices and on the pdf() device.
  * (Not Windows.)  A warning is given when a Cairo-based type is
    specified for a png(), jpeg(), tiff() or bmp() device but Cairo
    is unsupported (so type = "Xlib" is tried instead).
  * grSoftVersion() now reports the versions of FreeType and
    FontConfig if they are used directly (not _via_ Pango), as is
    most commonly done on macOS.
  C-LEVEL FACILITIES:
  * The _standalone_ libRmath math library and R's C API now provide
    log1pexp() again as documented, and gain log1mexp().
  INSTALLATION on a UNIX-ALIKE:
  * configure checks for a program pkgconf if program pkg-config is
    not found.  These are now only looked for on the path (like
    almost all other programs) so if needed specify a full path to
    the command in PKG_CONFIG, for example in file config.site.
  * C99 function iswblank is required - it was last seen missing ca
    2003 so the workaround has been removed.
  * There are new configure options --with-internal-iswxxxxx,
  - -with-internal-towlower and --with-internal-wcwidth which allows
    the system functions for wide-character classification,
    case-switching and width (wcwidth and wcswidth) to be replaced by
    internal ones.  The first has long been used on macOS, AIX (and
    Windows) but this enables it to be unselected there and selected
    for other platforms (it is the new default on Solaris).  The
    second is new in this version of R and is selected by default on
    macOS and Solaris.  The third has long been the default and
    remains so as it contains customizations for East Asian
    languages.
    System versions of these functions are often minimally
    implemented (sometimes only for ASCII characters) and may not
    cover the full range of Unicode points: for example Solaris (and
    Windows) only cover the Basic Multilingual Plane.
  * Cairo installations without X11 are more likely to be detected by
    configure, when the file-based Cairo graphics devices will be
    available but not X11(type = "cairo").
  * There is a new configure option --with-static-cairo which is the
    default on macOS.  This should be used when only static cairo
    (and where relevant, Pango) libraries are available.
  * Cairo-based graphics devices on platforms without Pango but with
    FreeType/FontConfig will make use of the latter for font
    selection.
  LINK-TIME OPTIMIZATION on a UNIX-ALIKE:
  * Configuring with flag --enable-lto=R now also uses LTO when
    installing the recommended packages.
  * R CMD INSTALL and R CMD SHLIB have a new flag --use-LTO to use
    LTO when compiling code, for use with R configured with
  - -enable-lto=R.  For R configured with --enable-lto, they have
    the new flag --no-use-LTO.
    Packages can opt in or out of LTO compilation _via_ a UseLTO
    field in the DESCRIPTION file.  (As usual this can be overridden
    by the command-line flags.)
  BUILDING R on Windows:
  * for GCC &gt;= 8, FC_LEN_T is defined in config.h and hence character
    lengths are passed from C to Fortran in _inter alia_ BLAS and
    LAPACK calls.
  * There is a new text file src/gnuwin32/README.compilation, which
    outlines how C/Fortran code compilation is organized and
    documents new features:
  * R can be built with Link-Time Optimization with a suitable
    compiler - doing so with GCC 9.2 showed several
    inconsistencies which have been corrected.
  * There is support for cross-compiling the C and Fortran code
    in R and standard packages on suitable (Linux) platforms.
    This is mainly intended to allow developers to test later
    versions of compilers - for example using GCC 9.2 or 10.x has
    detected issues that GCC 8.3 in Rtools40 does not.
  * There is experimental support for cross-building R packages
    with C, C++ and/or Fortran code.
  * The R installer can now be optionally built to support a single
    architecture (only 64-bit or only 32-bit).
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++14 where
    available (which it is on all currently checked platforms): if
    not (as before) C++11 is used if available otherwise C++ is not
    supported.
    Packages which specify C++11 will still be installed using C++11.
    C++14 compilers may give deprecation warnings, most often for
    std::random_shuffle (deprecated in C++14 and removed in C++17).
    Either specify C++11 (see 'Writing R Extensions') or modernize
    the code and if needed specify C++14.  The latter has been
    supported since R 3.4.0 so the package's DESCRIPTION would need
    to include something like
    Depends: R (&gt;= 3.4)
  PACKAGE INSTALLATION on Windows:
  * R CMD INSTALL and R CMD SHLIB make use of their flag --use-LTO
    when the LTO_OPT make macro is set in file etc/${R_ARCH}/Makeconf
    or in a personal/site Makevars file.  (For details see 'Writing R
    Extensions' SS4.5.)
    This provides a valuable check on code consistency.  It does work
    with GCC 8.3 as in Rtools40, but that does not detect everything
    the CRAN checks with current GCC do.
  PACKAGE INSTALLATION on macOS:
  * The default personal library directory on builds with
  - -enable-aqua (including CRAN builds) now differs by CPU type,
    one of
    ~/Library/R/x86_64/x.y/library
    ~/Library/R/arm64/x.y/library
    This uses the CPU type R (and hence the packages) were built for,
    so when a x86_64 build of R is run under Rosetta emulation on an
    arm64 Mac, the first is used.
  UTILITIES:
  * R CMD check can now scan package functions for bogus return
    statements, which were possibly intended as return() calls (wish
    of PR#17180, patch by Sebastian Meyer). This check can be
    activated via the new environment variable
    _R_CHECK_BOGUS_RETURN_, true for --as-cran.
  * R CMD build omits tarballs and binaries of previous builds from
    the top-level package directory.  (PR#17828, patch by Sebastian
    Meyer.)
  * R CMD check now runs sanity checks on the use of LazyData, for
    example that a data directory is present and that
    LazyDataCompression is not specified without LazyData and has a
    documented value.  For packages with large LazyData databases
    without specifying LazyDataCompression, there is a reference to
    the code given in 'Writing R Extensions' SS1.1.6 to test the
    choice of compression (as in all the CRAN packages tested a
    non-default method was preferred).
  * R CMD build removes LazyData and LazyDataCompression fields from
    the DESCRIPTION file of packages without a data directory.
  ENCODING-RELATED CHANGES:
  * The parser now treats \Unnnnnnnn escapes larger than the upper
    limit for Unicode points (\U10FFFF) as an error as they cannot be
    represented by valid UTF-8.
    Where such escapes are used for outputting non-printable
    (including unassigned) characters, 6 hex digits are used (rather
    than 8 with leading zeros).  For clarity, braces are used, for
    example \U{0effff}.
  * The parser now looks for non-ASCII spaces on Solaris (as
    previously on most other OSes).
  * There are warnings (including from the parser) on the use of
    unpaired surrogate Unicode points such as \uD834.  (These cannot
    be converted to valid UTF-8.)
  * Functions nchar(), tolower(), toupper() and chartr() and those
    using regular expressions have more support for inputs with a
    marked Latin-1 encoding.
  * The character-classification functions used (by default) to
    replace the system iswxxxxx functions on Windows, macOS and AIX
    have been updated to Unicode 13.0.0.
    The character-width tables have been updated to include new
    assignments in Unicode 13.0.0.
  * The code for evaluating default (extended) regular expressions
    now uses the same character-classification functions as the rest
    of R (previously they differed on Windows, macOS and AIX).
  * There is a build-time option to replace the system's
    wide-character wctrans C function by tables shipped with R: use
    configure option --with-internal-towlower or (on Windows)
  - DUSE_RI18N_CASE in CFLAGS when building R.  This may be needed
    to allow tolower() and toupper() to work with Unicode characters
    beyond the Basic Multilingual Plane where not supported by system
    functions (e.g. on Solaris where it is the new default).
  * R is more careful when truncating UTF-8 and other multi-byte
    strings that are too long to be printed, passed to the system or
    libraries or placed into an internal buffer.  Truncation will no
    longer produce incomplete multibyte characters.
  DEPRECATED AND DEFUNCT:
  * Function plclust() from the package stats and
    package.dependencies(), pkgDepends(), getDepList(),
    installFoundDepends(), and vignetteDepends() from package tools
    are defunct.
  * Defunct functions checkNEWS() and readNEWS() from package tools
    and CRAN.packages() from utils have been removed.
  * R CMD config CXXCPP is defunct (it was deprecated in R 3.6.2).
  * parallel::detectCores() drops support for Irix (retired in 2013).
  * The LINPACK argument to chol.default(), chol2inv(),
    solve.default() and svd() has been defunct since R 3.1.0.  It was
    silently ignored up to R 4.0.3 but now gives an error.
  * Subsetting/indexing, such as ddd[*] or ddd$x on a DOTSXP
    (dot-dot-dot) object ddd has been disabled; it worked by accident
    only and was undocumented.
  BUG FIXES:
  * Many more C-level allocations (mainly by malloc and strdup) are
    checked for success with suitable alternative actions.
  * Bug fix for replayPlot(); this was turning off graphics engine
    display list recording if a recorded plot was replayed in the
    same session.  The impact of the bug became visible if resize the
    device after replay OR if attempted another savePlot() after
    replay (empty display list means empty screen on resize or empty
    saved plot).
  * R CMD check etc now warn when a package exports non-existing S4
    classes or methods, also in case of no "methods" presence.
    (Reported by Alex Bertram; reproducible example and patch by
    Sebastian Meyer in PR#16662.)
  * boxplot() now also accepts calls for labels such as ylab, the
    same as plot().  (Reported by Marius Hofert.)
  * The help page for xtabs() now correctly states that addNA is
    setting na.action = na.pass among others.  (Reported as PR#17770
    by Thomas Soeiro.)
  * The R CMD check &lt;pkg&gt; gives a longer and more comprehensible
    message when DESCRIPTION misses dependencies, e.g., in Imports:.
    (Thanks to the contributors of PR#17179.)
  * update.default() now calls the generic update() on the formula to
    work correctly for models with extended formulas.  (As reported
    and suggested by Neal Fultz in PR#17865.)
  * The horizontal position of leaves in a dendrogram is now correct
    also with center = FALSE.  (PR#14938, patch from Sebastian
    Meyer.)
  * all.equal.POSIXt() no longer warns about and subsequently ignores
    inconsistent "tzone" attributes, but describes the difference in
    its return value (PR#17277).  This check can be disabled _via_
    the new argument check.tzone = FALSE as suggested by Sebastian
    Meyer.
  * as.POSIXct() now populates the "tzone" attribute from its tz
    argument when x is a logical vector consisting entirely of NA
    values.
  * x[[2^31]] &lt;- v now works.  (Thanks to the report and patch by
    Suharto Anggono in PR#17330.)
  * In log-scale graphics, axis() ticks and label positions are now
    computed more carefully and symmetrically in their range,
    typically providing _more_ ticks, fulfilling wishes in PR#17936.
    The change really corresponds to an improved axisTicks() (package
    grDevices), potentially influencing grid and lattice, for
    example.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now correct to at
    least five digits where it was catastrophically wrong,
    previously.
  * sum(df) and similar "Summary"- and "Math"-group member functions
    now work for data frames df with logical columns, notably also of
    zero rows.  (Reported to R-devel by Martin "b706".)
  * unsplit() had trouble with tibbles due to unsound use of rep(NA,
    len)-indexing, which should use NA_integer_ (Reported to R-devel
    by Mario Annau.)
  * pnorm(x, log.p = TRUE) underflows to -Inf slightly later.
  * show(&lt;hidden S4 generic&gt;) prints better and without quotes for
    non-hidden S4 generics.
  * read.table() and relatives treated an "NA" column name as missing
    when check.names = FALSE PR#18007.
  * Parsing strings containing UTF-16 surrogate pairs such as
    "\uD834\uDD1E" works better on some (uncommon) platforms.
    sprintf("%X", utf8ToInt("\uD834\uDD1E")) should now give "1D11E"
    on all platforms.
  * identical(x,y) is no longer true for differing DOTSXP objects,
    fixing PR#18032.
  * str() now works correctly for DOTSXP and related exotics, even
    when these are doomed.
    Additionally, it no longer fails for lists with a class and
    "irregular" method definitions such that e.g. lapply(*) will
    necessarily fail, as currently for different igraph objects.
  * Too long lines in environment files (e.g. Renviron) no longer
    crash R. This limit has been increased to 100,000 bytes.
    (PR#18001.)
  * There is a further workaround for FreeType giving incorrect
    italic font faces with cairo-based graphics devices on macOS.
  * add_datalist(*, force = TRUE) (from package tools) now actually
    updates an existing data/datalist file for new content.  (Thanks
    to a report and patch by Sebastian Meyer in PR#18048.)
  * cut.Date() and cut.POSIXt() could produce an empty last interval
    for breaks = "months" or breaks = "years".  (Reported as PR#18053
    by Christopher Carbone.)
  * Detection of the encoding of 'regular' macOS locales such as
    en_US (which is UTF-8) had been broken by a macOS change:
    fortunately these are now rarely used with en_US.UTF-8 being
    preferred.
  * sub() and gsub(pattern, repl, x, *) now keep attributes of x such
    as names() also when pattern is NA (PR#18079).
  * Time differences ("difftime" objects) get a replacement and a
    rep() method to keep "units" consistent.  (Thanks to a report and
    patch by Nicolas Bennett in PR#18066.)
  * The \RdOpts macro, setting defaults for \Sexpr options in an Rd
    file, had been ineffective since R 2.12.0: it now works again.
    (Thanks to a report and patch by Sebastian Meyer in PR#18073.)
  * mclapply and pvec no longer accidentally terminate parallel
    processes started before by mcparallel or related calls in
    package parallel (PR#18078).
  * grep and other functions for evaluating (extended) regular
    expressions handle in Unicode also strings not explicitly flagged
    UTF-8, but flagged native when running in UTF-8 locale.
  * Fixed a crash in fifo implementation on Windows (PR#18031).
  * Binary mode in fifo on Windows is now properly detected from
    argument open (PR#15600, PR#18031).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1622808000">- The line %{__install} -m 755 -d %{_infodir}
  no longer works in TW or Factory.
  But without that line it works everywhere. So this instruction
  was commented out of the spec file.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1628596800">- CHANGES IN R 4.1.1:
  NEW FEATURES:
  * require(pkg, quietly = TRUE) is quieter and in particular does
    not warn if the package is not found.
  DEPRECATED AND DEFUNCT:
  * Use of ftp:// URIs should be regarded as deprecated, with
    on-going support confined to method = "libcurl" and not routinely
    tested.  (Nowadays no major browser supports them.)
  * The non-default method = "internal" is deprecated for http:// and
    ftp:// URIs for both download.file and url.
  * On Windows, method = "wininet" is deprecated for http://,
    https:// and ftp:// URIs for both download.file and url.  (A
    warning is only given for ftp://.)
    For ftp:// URIs the default method is now "libcurl" if available
    (which it is on CRAN builds).
    method = "wininet" remains the default for http:// and https://
    URIs but if libcurl is available, using method = "libcurl" is
    preferred.
  INSTALLATION:
  * make check now works also without a LaTeX installation.  (Thanks
    to Sebastian Meyer's PR#18103.)
  BUG FIXES:
  * make check-devel works again in an R build configured with
  - -without-recommended-packages.
  * qnbinom(p, size, mu) for large size/mu is correct now in a range
    of cases (PR#18095); similarly for the (size, prob)
    parametrization of the negative binomial.  Also qpois() and
    qbinom() are better and or faster for extreme cases.  The
    underlying C code has been modularized and is common to all four
    cases of discrete distributions.
  * gap.axis is now part of the axis() arguments which are passed
    from bxp(), and hence boxplot().  (Thanks to Martin Smith's
    report and suggestions in PR#18109.)
  * .First and .Last can again be set from the site profile.
  * seq.int(from, to, *) and seq.default(..) now work better in large
    range cases where from-to is infinite where the two boundaries
    are finite.
  * all.equal(x,y) now returns TRUE correctly also when several
    entries of abs(x) and abs(y) are close to .Machine$double.xmax,
    the largest finite numeric.
  * model.frame() now clears the object bit when removing the class
    attribute of a value via na.action (PR#18100).
  * charClass() now works with multi-character strings on Windows
    (PR#18104, fixed by Bill Dunlap).
  * encodeString() on Solaris now works again in Latin-1 encoding on
    characters represented differently in UTF-8.  Support for
    surrogate pairs on Solaris has been improved.
  * file.show() on Windows now works with non-ASCII path names
    representable in the current native encoding (PR#18132).
  * Embedded R on Windows can now find R home directory via the
    registry even when installed only for the current user
    (PR#18135).
  * pretty(x) with finite x now returns finite values also in the
    case where the extreme x values are close in size to the maximal
    representable number .Machine$double.xmax.
    Also, it's been tweaked for very small ranges and when a boundary
    is close (or equal) to zero; e.g., pretty(c(0,1e-317)) no longer
    has negative numbers, currently still warning about a very small
    range, and pretty(2^-(1024 - 2^-1/(c(24,10)))) is more accurate.
  * The error message for not finding vignette files when weaving has
    correct file sizes now. (Thanks to Sebastian Meyer's PR#18154.)
  * dnbinom(20, &lt;large&gt;, 1) now correctly gives 0, and similar cases
    are more accurate with underflow precaution.  (Reported by Francisco Vera Alcivar in PR#18072.)</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635163200">- repaired https://bugzilla.suse.com/show_bug.cgi?id=1191380
  (rpmacros now go to rpmmacrodir)
- minor clean-ups in spec file</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635768000">- CHANGES IN R 4.1.2:
  C-LEVEL FACILITIES:
  * The workaround in headers R.h and Rmath.h (using namespace std;)
    for the Oracle Developer Studio compiler is no longer needed now
    C++11 is required so has been removed.  A couple more usages of
    log() (which should have been std::log()) with an int argument
    are reported on Solaris.
  * The undocumented limit of 4095 bytes on messages from the
    S-compatibility macros PROBLEM and MESSAGE is now documented and
    longer messages will be silently truncated rather than
    potentially causing segfaults.
  * If the R_NO_SEGV_HANDLER environment variable is non-empty, the
    signal handler for SEGV/ILL/BUS signals (which offers recovery
    user interface) is not set. This allows more reliable debugging
    of crashes that involve the console.
  DEPRECATED AND DEFUNCT:
  * The legacy S-compatibility macros PROBLEM, MESSAGE, ERROR, WARN,
    WARNING, RECOVER, ... are deprecated and will be hidden in R
    4.2.0. R's native interface of Rf_error and Rf_warning has long
    been preferred.
  BUG FIXES:
  * .mapply(F, dots, .) no longer segfaults when dots is not a list
    and uses match.fun(F) as always documented; reported by Andrew
    Simmons in PR#18164.
  * hist(&lt;Date&gt;, ...) and hist(&lt;POSIXt&gt;, ...)  no longer pass
    arguments for rect() (such as col and density) to axis().
    (Thanks to Sebastian Meyer's PR#18171.)
  * \Sexpr{ch} now preserves Encoding(ch). (Thanks to report and
    patch by Jeroen Ooms in PR#18152.)
  * Setting the RNG to "Marsaglia-Multicarry" e.g., by RNGkind(), now
    warns in more places, thanks to Andr'e Gillibert's report and
    patch in PR#18168.
  * gray(numeric(), alpha=1/2) no longer segfaults, fixing PR#18183,
    reported by Till Krenz.
  * Fixed dnbinom(x, size=&lt;very_small&gt;, .., log=TRUE) regression,
    reported by Martin Morgan.
  * as.Date.POSIXlt(x) now keeps names(x), thanks to Davis Vaughan's
    report and patch in PR#18188.
  * model.response() now strips an "AsIs" class typically, thanks to
    Duncan Murdoch's report and other discussants in PR#18190.
  * try() is considerably faster in case of an error and long call,
    as e.g., from some do.call().  Thanks to Alexander Kaever's
    suggestion posted to R-devel.
  * qqline(y = &lt;object&gt;) such as y=I(.), now works, see also
    PR#18190.
  * Non-integer mgp par() settings are now handled correctly in
    axis() and mtext(), thanks to Mikael Jagan and Duncan Murdoch's
    report and suggestion in PR#18194.
  * formatC(x) returns length zero character() now, rather than ""
    when x is of length zero, as documented, thanks to Davis
    Vaughan's post to R-devel.
  * removeSource(fn) now retains (other) attributes(fn).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1647000000">- CHANGES IN R 4.1.3:
  NEW FEATURES:
  * The default version of Bioconductor has been changed to 3.14.
    (This is used by setRepositories and the menus in GUIs.)
  UTILITIES:
  * R CMD check --as-cran has a workaround for a bug in versions of
    file up to at least 5.41 which mis-identify DBF files last
    changed in 2022 as executables.
  C-LEVEL FACILITIES:
  * The legacy S-compatibility macros SINGLE_* in R_ext/Constants.h
    (included by R.h) are deprecated and will be removed in R 4.2.0.
  BUG FIXES:
  * Initialization of self-starting nls() models with initialization
    functions following the pre-R-4.1.0 API (without the ...
    argument) works again for now, with a deprecation warning.
  * Fixed quoting of ~autodetect~ in Java setting defaults to avoid
    inadvertent user lookup due to leading ~, reported in PR#18231 by
    Harold Gutch.
  * substr(., start, stop) &lt;- v now treats _negative_ stop values
    correctly.  Reported with a patch in PR#18228 by Brodie Gaslam.
  * Subscripting an array x without dimnames by a
    length(dim(x))-column character matrix gave "random" non-sense,
    now an error; reported in PR#18244 by Mikael Jagan.
  * ...names() now matches names(list(...)) closely, fixing PR#18247.
  * all.equal(*, scale = s) now works as intended when length(s) &gt; 1,
    partly thanks to Michael Chirico's PR#18272.
  * print(x) for long vectors x now also works for named atomic
    vectors or lists and prints the correct number when reaching the
    getOption("max.print") limit; partly thanks to a report and
    proposal by Hugh Parsonage to the R-devel list.
  * all.equal(&lt;selfStart&gt;, *) no longer signals a deprecation
    warning.
  * reformulate(*, response=r) gives a helpful error message now when
    length(r) &gt; 1, thanks to Bill Dunlap's PR#18281.
  * Modifying globalCallingHandlers inside withCallingHandlers() now
    works or fails correctly, thanks to Henrik Bengtsson's PR#18257.
  * hist(&lt;Date&gt;, breaks = "days") and hist(&lt;POSIXt&gt;, breaks = "secs")
    no longer fail for inputs of length 1.
  * qbeta(.001, .9, .009) and similar cases now converge correctly
    thanks to Ben Bolker's report in PR#17746.
  * window(x, start, end) no longer wrongly signals "'start' cannot
    be after 'end'", fixing PR#17527 and PR#18291.
  * data() now checks that its (rarely used) list argument is a
    character vector - a couple of packages passed other types and
    gave incorrect results.
  * which() now checks its arr.ind argument is TRUE rather coercing
    to logical and taking the first element - which gave incorrect
    results in package code.
  * model.weights() and model.offset() more carefully extract their
    model components, thanks to Ben Bolker and Tim Taylor's R-devel
    post.
  * list.files(recursive = TRUE) now shows all broken symlinks
    (previously, some of them may have been omitted, PR#18296).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1650628800">- CHANGES IN R 4.2.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * The formula method of aggregate() now matches the generic in
    naming its first argument x (resolving PR#18299 by Thomas
    Soeiro).
    This means that calling aggregate() with a formula as a named
    first argument requires name formula in earlier versions of R and
    name x now, so portable code should not name the argument (code
    in many packages did).
  * Calling &amp;&amp; or || with either argument of length greater than one
    now gives a warning (which it is intended will become an error).
  * Calling if() or while() with a condition of length greater than
    one gives an error rather than a warning.  Consequently,
    environment variable _R_CHECK_LENGTH_1_CONDITION_ no longer has
    any effect.
  * Windows users should consult the WINDOWS section below for some
    profound changes including
  * Support for 32-bit builds has been dropped.
  * UTF-8 locales are used where available.
  * The default locations for the R installation and personal
    library folder have been changed.
    Thanks to Tomas Kalibera for months of work on the Windows port
    for this release.
  NEW FEATURES:
  * matrix(x, n, m) now warns in more cases where length(x) differs
    from n * m, as suggested by Abby Spurdle and Wolfgang Huber in
    Feb 2021 on the R-devel mailing list.
    This warning can be turned into an error by setting environment
    variable _R_CHECK_MATRIX_DATA_ to TRUE: R CMD check --as-cran
    does so unless it is already set.
  * Function file_test() in package utils gains tests for symlinks,
    readability and writability.
  * capabilities("libxml") is now false.
    The description of capabilities("http/ftp") now reflects that it
    refers to the default method, no longer the internal one.
  * simplify2array() gains an except argument for controlling the
    exceptions used by sapply().
  * Environment variables R_LIBS_USER and R_LIBS_SITE are both now
    set to the R system default if unset or empty, and can be set to
    NULL to indicate an empty list of user or site library
    directories.
  * The warning for axis()(-like) calls in cases of relatively small
    ranges (typically in log-scale situations) is slightly improved
    _and_ suppressed from explicit calls to .axisPars() as has always
    been the intention.
  * The contrasts setter function `contrasts&lt;-` gains an explicit
    default how.many = NULL rather than just using missing(how.many).
  * grid.pretty() gains a new optional argument n = 5.
  * There is a new function .pretty() with option bounds as a
    technical-utility version of pretty().  It and pretty() gain a
    new argument f.min with a better than back-compatible default.
  * Function grDevices::axisTicks() and related functions such as
    graphics::axis() work better, notably for the log scale; partly
    because of the pretty() improvements, but also because care is
    taken e.g., when ylim is finite but diff(ylim) is infinite.
  * nclass.FD() gains a digits option.
  * The R Mathlib internal C function bd0() (called indirectly from a
    dozen probability density and distribution functions such as
    dpois(), dbinom(), dgamma(), pgamma() _etc_) has been
    complemented by a more sophisticated and (mostly) more accurate C
    function ebd0(), currently called only by internal dpois_raw()
    improving accuracy for R level dpois() and potentially others
    calling it such as dnbinom(), dgamma() or pgamma().  (Thanks to
    Morten Welinder's PR#15628.)
  * write.ftable() gains sep = " " argument as suggested by Thomas
    Soeiro.
  * The names of the locale categories supported by R's
    Sys.getlocale() and Sys.setlocale() are now provided by variable
    .LC.categories in the base namespace.
  * The Date and POSIXt methods for hist() and the histogram method
    for plot() now also use the new default col = "lightgray" in
    consistency with the corresponding change to hist()'s default for
    R 4.0.0.
  * hist.default() gains new fuzz argument, and the histogram plot
    method no longer uses fractional axis ticks when displaying
    counts ("Frequency").
  * mapply() and hence Map() now also obey the "max-or-0-if-any"
    recycling rule, such that, e.g., Map(`+`, 1:3, 1[0]) is valid
    now.
  * as.character(&lt;obj&gt;) for "hexmode" or "octmode" objects now
    fulfils the important basic rule as.character(x)[j] ===
    as.character(x[j]).
  * The set utility functions, notably intersect() have been tweaked
    to be more consistent and symmetric in their two set arguments,
    also preserving a common mode.
  * substr(ch, start,end) &lt;- new now e.g., preserves names(ch); ditto
    for substring(), thanks to a patch from Brodie Gaslam.
  * plot(&lt;lm&gt;) gains a extend.ylim.f argument, in partial response to
    PR#15285; further PR#17784 is fixed thanks to several
    contributors and a patch by Elin Waring.  The Cook's dist
    contours get customizable via cook.col and cook.lty with a
    different default color and their legend is nicer by default and
    customizable via cook.legendChanges.
  * Attempting to subset an object that is not subsettable now
    signals an error of class notSubsettableError. The
    non-subsettable object is contained in the object field of the
    error condition.
  * Subscript-out-of-bounds errors are now signaled as errors of
    class subscriptOutOfBoundsError.
  * Stack-overflow errors are now signaled as errors inheriting from
    class stackOverflowError. See ?stackOverflowError for more
    details.
  * New partly experimental Sys.setLanguage() utility, solving the
    main problem of PR#18055.
  * gettext() and gettextf() get a new option trim = TRUE which when
    set to false allows translations for strings such as "Execution
    halted\n" typical for C code.
  * An experimental implementation of hash tables is now available.
    See ?hashtab for more details.
  * identical() gains a extptr.as.ref argument for requesting that
    external pointer objects be compared as reference objects.
  * reorder() gets an argument decreasing which it passes to sort()
    for level creation; based on the wish and patch by Thomas Soeiro
    in PR#18243.
  * as.vector() gains a data.frame method which returns a simple
    named list, also clearing a long standing 'FIXME' to enable
    as.vector(&lt;data.frame&gt;, mode="list").  This breaks code relying
    on as.vector(&lt;data.frame&gt;) to return the unchanged data frame.
  * legend() is now vectorized for arguments cex, x.intersp, and
    text.width.  The latter can now also be specified as a vector
    (one element for each column of the legend) or as NA for
    computing a proper column wise maximum value of strwidth(legend).
    The argument y.intersp can be specified as a vector with one
    entry for each row of the legend.
    legend() also gains new arguments title.cex and title.font.
    Thanks to Swetlana Herbrandt.
  * Deparsing no longer remaps attribute names dim, dimnames, levels,
    names and tsp to historical S-compatible names (which structure()
    maps back).
  * sample() and sample.int() have additional sanity checks on their
    size and n arguments.
    all.equal.numeric() gains a sanity check on its tolerance
    argument - calling all.equal(a, b, c) for three numeric vectors
    is a surprisingly common error.
    mean(na.rm =), rank(na.last =), barplot(legend.text =),
    boxplot(), contour(drawlabels =), polygon(border =) and
    methods::is(class2 =) have more robust sanity checks on their
    arguments.
    R CMD Rd2pdf (used by R CMD check) has a more robust sanity check
    on the format of \alias{} commands.
  * psigamma(x, deriv) for negative x now also works for deriv = 4
    and 5; their underlying C level dpsifn() is documented in
    'Writing R Extensions'.
  * The HTML help system now uses HTML5 (wish of PR#18149).
  * ks.test() now provides exact p-values also with ties and MC
    p-values in the two-sample (Smirnov) case.  By Torsten Hothorn.
  * ks.test() gains a formula interface, with y ~ 1 for the
    one-sample (Kolmogorov) test and y ~ group for the two-sample
    (Smirnov) test.  Contributed by Torsten Hothorn.
  * The return value from ks.test() now has class c("ks.test",
    "htest") - packages using try() need to take care to use
    inherits() and not == on the class.
  * New functions psmirnov(), qsmirnov() and rsmirnov() in package
    stats implementing the asymptotic and exact distributions of the
    two-sample Smirnov statistic.
  * iconv() now allows sub = "c99" to use C99-style escapes for UTF-8
    inputs which cannot be converted to encoding to.
  * In a forward pipe |&gt; expression it is now possible to use a named
    argument with the placeholder _ in the rhs call to specify where
    the lhs is to be inserted.  The placeholder can only appear once
    on the rhs.
  * The included LAPACK sources have been updated to version 3.10.0,
    except for the four Fortran 77 routines which 3.10.0 has
    re-implemented in Fortran 90 (where the older versions have been
    retained as the R build process does not support Fortran 90).
  * path.expand() and most other uses of tilde expansion now warn if
    a path would be too long if expanded.  (An exception is
    file.exists(), which silently returns false.)
  * trunc(&lt;Date&gt;, *) now supports units = "months" or "years" for
    consistency with the POSIXt method, thanks to Dirk Eddelbuettel's
    proposal in PR#18099.
  * list2DF() now checks that its arguments are of the same length,
    rather than use recycling.
  * The HTML help system has several new features: LaTeX-like math
    can be typeset using either KaTeX or MathJax, usage and example
    code is highlighted using Prism, and for dynamic help the output
    of examples and demos can be shown within the browser if the
    knitr package is installed. These features can be disabled by
    setting the environment variable _R_HELP_ENABLE_ENHANCED_HTML_ to
    a false value.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 15
    and so packages that provide graphics devices should be
    reinstalled.
  * The grid package now allows the user to specify a "vector" of
    pattern fills.  The fill argument to gpar() accepts a list of
    gradients and/or patterns and the functions linearGradient(),
    radialGradient(), and pattern() have a new group argument.
    Points grobs (data symbols) can now also have a pattern fill.
    The grobCoords() function now returns a more informative and
    complex result.
  * The grid package has new functions for drawing isolated groups:
    grid.group(), grid.define(), and grid.use().  These functions add
    compositing operators and affine transformations to R's graphics
    capabilities.
    The grid package also has new functions for stroking and filling
    paths: grid.stroke(), grid.fill(), and grid.fillStroke().
    A new function as.path() allows the user to specify the fill rule
    for a path that is to be used for clipping, stroking, or filling;
    available options are "winding" and "evenodd".  A new function
    as.mask() allows the user to specify the type of a mask;
    available options are "alpha" and "luminance".
    These new features are only supported so far (at most) on the
    Cairo-based graphics devices and on the pdf() device.
  * dev.capabilities() reports on device support for the new
    features.
  * par() now warns about unnamed non-character arguments to prevent
    misuse such as {usr &lt;- par("usr"); par(usr)}.
  INSTALLATION:
  * Facilities for accessing ftp:// sites are no longer tested
    (except _pro tem_ for curlGetHeaders()) as modern browsers have
    removed support.
  * R can now be built with DEFS = -DSTRICT_R_HEADERS .
  PACKAGE INSTALLATION:
  * R CMD INSTALL no longer tangles vignettes. This completes an R
    CMD build change in R 3.0.0 and affects packages built before R
    3.0.2. Such packages should be re-made with R CMD build to have
    the tangled R code of vignettes shipped with the tarball.
  * USE_FC_LEN_T will become the default: this uses the correct
    prototypes for Fortran BLAS/LAPACK routines called from C/C++,
    and requires adjustment of most such calls - see 'Writing R
    Extensions' SS6.6.2.  (This has been supported since R 3.6.2.)
  * Package installation speed for packages installed with
    keep.source has been improved. This resolve the issue reported by
    Ofek Shilon in PR#18236.
  UTILITIES:
  * R CMD check can optionally report files/directories left behind
    in home, /tmp (even though TMPDIR is set) and other directories.
    See the "R Internals" manual for details.
  * R CMD check now reports byte-compilation errors during
    installation.  These are not usually fatal but may result in
    parts of the package not being byte-compiled.
  * _R_CHECK_DEPENDS_ONLY_ can be applied selectively to examples,
    tests and/or vignettes in R CMD check: see the "R Internals"
    manual.
  * _R_CHECK_SRC_MINUS_W_IMPLICIT_ now defaults to true: recent
    versions of Apple clang on macOS have made implicit function
    declarations in C into a compilation error.
  * R CMD check --as-cran makes use of the environment variable
    AUTORECONF.  See the "R Internals" manual SS8 for further details.
  * R CMD check --use-valgrind also uses valgrind when re-building
    vignettes as some non-Sweave vignettes unhelpfully comment out
    all their code when R CMD check runs vignettes.
  * Errors in re-building vignettes (unless there are LaTeX errors)
    are reported by R CMD check as ERROR rather than WARNING when
    running vignettes has been skipped (as it frequently is in CRAN
    checks and by --as-cran).
  * R CMD Rd2pdf gains a --quiet option that is used by R CMD build
    when building the PDF package manual.
  * R CMD Rd2pdf now always runs LaTeX in batch mode, consistent with
    Texinfo &gt;= 6.7. The --batch option is ignored.
  * R CMD build and R CMD check now include the Rd file name and line
    numbers in the error message of an \Sexpr evaluation failure.
  * For packages using the \doi Rd macro (now an install-time \Sexpr)
    but no other dynamic Rd content, R CMD build now produces a
    smaller tarball and is considerably faster - skipping temporary
    package installation.
  C-LEVEL FACILITIES:
  * The non-API header R_ext/R-ftp-http.h is no longer provided, as
    the entry points it covered are now all defunct.
  * A number of non-API declarations and macro definitions have been
    moved from the installed header Rinternals.h to the internal
    header Defn.h. Packages that only use entry points and
    definitions documented to be part of the API as specified in
    'Writing R Extensions' SS6 should not be affected.
  * The macro USE_RINTERNALS no longer has any effect when compiling
    package code.  Packages which also use R_NO_REMAP will need to
    ensure that the remapped names are used for calls to API
    functions that were formerly also made available as macros.
  * The deprecated legacy S-compatibility macros PROBLEM, MESSAGE,
    ERROR, WARN, WARNING, RECOVER, ... are no longer defined in
    R_exts/RS.h (included by R.h).  Replace these by calls to
    Rf_error and Rf_warning (defined in header R_ext/Error.h included
    by R.h).
    Header R_ext/RS.h no longer includes R_ext/Error.h.
  * Header R_ext/Constants.h (included by R.h) when included from C++
    now includes the C++ header cfloat rather than the C header
    float.h (now possible as C++11 is required).
  * The legacy S-compatibility macros DOUBLE_* in R_ext/Constants.h
    (included by R.h) are deprecated.
  * The deprecated S-compatibility macros SINGLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * R_Calloc, R_Free and R_Realloc are preferred to their unprefixed
    forms and error messages now use the prefix. These forms were
    introduced in R 3.4.0 and are available even when
    STRICT_R_HEADERS is defined.
  * rmultinom has been documented in 'Writing R Extensions' SS6 so is
    now part of the R API.
  * Similarly, Rtanpi, called from R level tanpi() is now part of the
    R API.
  * The long-deprecated, undocumented and non-API entry point call_R
    is no longer declared in R_ext/RS.h (included by R.h).
  * The header S.h which has been unsupported since Jan 2016 has been
    removed.  Use R.h instead.
  DEPRECATED AND DEFUNCT:
  * The (non-default and deprecated) method = "internal" for
    download.file() and url() no longer supports http:// nor ftp://
    URIs.  (It is used only for file:// URIs.)
    On Windows, download.file(method = "wininet") no longer supports
    ftp:// URIs.  (It is no longer the default method, which is
    "libcurl" and does.)
    On Windows, the deprecated method = "wininet" now gives a warning
    for http:// and https:// URIs for both download.file() and url().
    (It is no longer the default method.)
  * On Windows, the command-line option --max-mem-size and
    environment variable R_MAX_MEM_SIZE are defunct.  The memory
    allocation limit was important for 32-bit builds, but these are
    no longer supported.
  * default.stringsAsFactors() is now formally deprecated, where that
    was only mentioned on its regular help page, previously.  So it
    now gives a warning if called.
  * unix.time() is defunct now; it had been deprecated since R 3.4.0.
  BUG FIXES:
  * Setting digits = 0 in format(), print.default() (and hence
    typically print()) or options() is again invalid.  Its behaviour
    was platform-dependent, and it is unclear what "zero significant
    digits" should mean (PR#18098).
  * Messages from C code in the cairo section of package grDevices
    are now also offered for translation, thanks to Michael Chirico's
    PR#18123.
  * mean(x) with finite x now is finite also without "long.double"
    capability.
  * R CMD Rd2pdf no longer leaves an empty build directory behind
    when it aborts due to an already existing output file.  (Thanks
    to Sebastian Meyer's PR#18141.)
  * density(x, weights = w, na.rm = TRUE) when anyNA(x) is true, now
    removes weights "in parallel" to x, fixing PR#18151, reported by
    Matthias Gondan.  Additionally, it gets a subdensity option.
  * Conversion of \Sexpr[]{&lt;expR&gt;} to LaTeX or HTML no longer
    produces long blocks of empty lines when &lt;expR&gt; itself contains
    several lines all producing empty output.  Thanks to a report and
    patch by Ivan Krylov posted to R-devel.
  * R CMD build no longer fails if a package vignette uses child
    documents and inst/doc exists.  (Thanks to Sebastian Meyer's
    PR#18156.)
  * When an R documentation ('help' source) file man/foo.Rd in a
    package has \donttest{..} examples with a syntax error, it is now
    signalled as ERROR and with correct line numbers relating to the
  * -Ex.R file, thanks to Duncan Murdoch and Sebastian Meyer's
    reports and patch proposals in PR#17501.
  * Improved determination of the correct translation domain in
    non-base packages, addressing the combination of PR#18092 and
    PR#17998 (#c6) with reports and _augmented_ patch #2904 by
    Suharto Anggono.
    Note that "R-base" is no longer the default domain e.g., for
    top-level calls to gettext(); rather translation needs explicit
    domain = * specification in such cases.
  * identical(attrib.as.set=FALSE) now works correctly with data
    frames with default row names (Thanks to Charlie Gao's PR#18179).
  * txtProgressBar() now enforces a non-zero width for argument char,
    without which no progress can be visible.
  * dimnames(table(d)) is more consistent in the case where d is a
    list with a single component, thanks to Thomas Soeiro's report to
    R-devel.
    Further, table(d1, d2) now gives an error when d1 and d2 are data
    frames as suggested by Thomas in PR#18224.
  * Fix for drawing semi-transparent lines and fills on the native
    Windows graphics device (PR#18219 and PR#16694).  Thanks to Nick
    Ray for helpful diagnosis on Bugzilla.
  * The deparser now wraps sub-expressions such as if(A) ..  with
    parentheses when needed; thanks to Duncan Murdoch's PR#18232 and
    Lionel Henry's patches there.
  * remove.packages() no longer tries to uninstall Priority: base
    packages, thanks to a report and suggestions by Colin Fay in
    PR#18227.
  * win.metafile() now has xpinch and ypinch arguments so that the
    user can override Windows' (potentially wrong) guess at device
    dimensions.
  * x[i] and x[[i]] for non-integer i should now behave in all cases
    as always documented: the index used is equivalent to
    as.integer(i) unless that would overflow where trunc(i) is used
    instead; thanks to Suharto Anggono's report and patch proposals
    in PR#17977.
  * asOneSidedFormula() now associates the resulting formula with the
    global environment rather than the evaluation environment created
    for the call.
  * &lt;bibentry&gt;$name now matches the field name case-insensitively,
    consistent with bibentry() creation and the replacement method.
  * cbind() failed to detect some length mismatches with a mixture of
    time-series and non-time-series inputs.
  * The default LaTeX style file Sweave.sty used by the RweaveLatex
    driver no longer loads the obsolete ae package; thanks to a
    report by Thomas Soeiro in PR#18271.  Furthermore, it now skips
    \usepackage[T1]{fontenc} for engines other than pdfTeX (if
    detected) or if the new [nofontenc] option is used.
  * smooth.spline() now stores its logical cv argument more safely,
    fixing a rare bug when printing, and also stores n.
  * smooth.spline(x,y,*) now computes the cv.crit statistic
    correctly, also when is.unsorted(x), fixing PR#18294.
  * The data.frame method of rbind() now warns when binding
    not-wholly-recycling vectors, by analogy to the default method
    (for matrices).
  * setAs() finds the correct class for name to when multiple
    packages define a class with that name. Thanks to Gabor Csardi
    for the report.
  * Fix for detaching a package when two classes of the same name are
    present in method signatures for the same generic. Thanks to
    Gabor Csardi for the report.
  * match.arg("", c("", "a", "B")) gives a better error message, in
    part from PR#17959, thanks to Elin Waring.
  * R CMD Sweave --clean no longer removes pre-existing files or
    subdirectories (PR#18242).
  * The quartz() device no longer splits polylines into subpaths.
    That has caused narrowly-spaced lines with many points to always
    look solid even when dashed line type was used due to dash phase
    restarts.
  * Deparsing constructs such as quote(1 + `!`(2) + 3) works again as
    before R 3.5.0, thanks to the report and patch in PR#18284 by
    Suharto Anggono.
  * as.list(f) for a factor f now keeps names(f), fixing PR#18309.
  * qbeta(.001, .9, .009) and analogous qf() calls now return a
    correct value instead of NaN or wrongly 1, all with a warning;
    thanks to the report by Ludger Goeminne in PR#18302.
  * plot.lm() failed to produce the plot of residuals vs.  factor
    levels (i.e., which=5 when leverages are constant) for models
    with character predictors (PR#17840).
  * interaction.plot(..., xtick = TRUE) misplaced the x-axis line
    (PR#18305).
  * Not strictly fixing a bug, format()ing and print()ing of
    non-finite Date and POSIXt values NaN and +/-Inf no longer show
    as NA but the respective string, e.g., Inf, for consistency with
    numeric vector's behaviour, fulfilling the wish of PR#18308.
  * R CMD check no longer runs test scripts generated from
    corresponding .Rin files twice and now signals an ERROR if
    processing an .Rin script fails.
  * tools::Rd2txt() used for plain-text help pages now renders \hrefs
    (if tools::Rd2txt_options(showURLs = TRUE)) and \urls with
    percent-encoding and standards-compliant delimiting style (angle
    brackets and no URL: prefix).  \email is now rendered with a
    mailto: prefix.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1655985600">- CHANGES IN R 4.2.1:
  NEW FEATURES:
  * New function utils::findCRANmirror() to find out if a CRAN mirror
    has been selected, otherwise fallback to the main site.  This
    behaves in the same way as tools::CRAN_package_db() and is
    intended for packages wishing to access CRAN for purposes other
    than installing packages.
    The need for this was shown by a day when the main CRAN website
    was offline and a dozen or so packages which had its URL
    hardcoded failed their checks.
  INSTALLATION on a UNIX-ALIKE:
  * The libraries searched for by --with-blas (without a value) now
    include BLIS (after OpenBLAS but before ATLAS).  And on macOS,
    the Accelerate framework (after ATLAS).  (This is patterned after
    the AX_BLAS macro from the Autoconf Archive.)
  * The included LAPACK sources have been updated to 3.10.1.
  UTILITIES:
  * The (full path to) the command tidy to be used for HTML
    validation can be set by environment variable R_TIDYCMD.
  * Setting environment variable _R_CHECK_RD_VALIDATE_RD2HTML_ to a
    false value will override R CMD check --as-cran and turn off HTML
    validation.  This provides a way to circumvent a problematic
    tidy.
    The 2006 version that ships with macOS is always skipped.
  C-LEVEL FACILITIES:
  * The undocumented legacy declarations of Sint, Sfloat, SINT_MAX
    and SINT_MIN in header R.h are deprecated.
  BUG FIXES:
  * fisher.test(d) no longer segfaults for "large" d; fixing PR#18336
    by preventing/detecting an integer overflow reliably.
  * tar(., files=*) now produces correctly the warning about invalid
    uid or gid of files, fixing PR#18344, reported by Martin Morgan.
  * tk_choose.files() with multi = FALSE misbehaved on paths
    containing spaces (PR#18334) (regression introduced in R 4.0.0).
  * sort(x, partial = ind, *) now works correctly notably for the
    non-default na.last = FALSE or TRUE, fixing PR#18335 reported by
    James Edwards.
  * Environment variable _R_CHECK_XREFS_REPOSITORIES_ is only used
    for checking .Rd cross-references in R CMD check (as documented)
    and not for other uses looking for a CRAN mirror.
  * The search for a CRAN mirror when checking packages now uses
    getOption("repos") if that specifies a CRAN mirror, even when it
    does not also specify all three Bioconductor repositories (as was
    previously required).
  * The HTML code generated by tools::Rd2HTML() has been improved to
    pass tidy 5.8.0.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1667217600">- CHANGES IN R 4.2.2:
  NEW FEATURES:
  * tools::Rdiff(useDiff = TRUE) checks for the presence of an
    external diff command and switches to useDiff = FALSE if none is
    found.  This allows R CMD Rdiff to always work.
  * On Windows, environment variable R_LIBCURL_SSL_REVOKE_BEST_EFFORT
    can be used to switch to only 'best-effort' SSL certificate
    revocation checks with the default "libcurl" download method.
    This reduces security, but may be needed for downloads to work
    with MITM proxies (PR#18379).
  * (macOS) The run-time check for libraries from XQuartz for X11 and
    Tcl/Tk no longer uses otool from the Apple Developer Tools
    (PR#18400).
  * The LaTeX style for producing the PDF manuals, Rd.sty, now loads
    the standard amsmath, amsfonts and amssymb packages for greater
    coverage of math commands in the Rd \eqn and \deqn macros.  The
    \mathscr LaTeX command is also provided (via the mathrsfs
    package, if available, or the amsfonts bundle otherwise),
    fulfilling the wish of PR#18398.
  * (Windows) The default format of readClipboard() and
    writeClipboard() has been changed to 13 (CF_UNICODETEXT).
  INSTALLATION on a UNIX-ALIKE:
  * The PDF manuals (if built) can be compacted by the new target
    make compact-pdf (at the top level or in directory doc/manual).
  * There is now configure support for LLVM clang 15 on Linux, which
    defaults to position-independent (PIE) executables whereas
    gfortran does not.
  * Many small changes to ease compilation (and suppress warnings)
    with LLVM clang 15.
  BUG FIXES:
  * Rscript -e would fail if stdin were closed (Reported by Henrik
    Bengtsson.)
  * qt(*, log.p=TRUE) in outer tails no longer produces NaN in its
    final steps, thus fixing PR#18360.
  * tools::Rd2latex() now escapes hashes and ampersands when writing
    URLs, fixing LaTeX errors with such URLs in \tabular.
  * When isGeneric(f, fdef=*) is used with mismatching names, the
    warning is better understandable; reported (with fix) in PR#18370
    by Gabe Becker.
  * poly(x, n) now works again (and is now documented) when x is a
    "Date" or "POSIXct" object, or of another class while fulfilling
    mode(x) == "numeric".  This also enables poly(x, *, raw=TRUE) for
    such variables.  Reported by Michael Chirico to R-devel.
  * write.table(), write.csv() and write.csv2() restore their
    numerical precision (internal equivalent of digits = 15) after an
    interrupt (PR#18384).
  * One can now read also byte FF from a clipboard connection
    (PR#18385).
  * source("") and source(character()) now give more helpful error
    messages.
  * R CMD check --as-cran set _R_CHECK_TIMINGS_ too late to have the
    intended effect.
  * as.POSIXlt(x) now also works with very large dates x, fixing
    PR#18401 reported by Hannes M"uhleisen.
  * Files can now be extracted even from very large zip archives
    (PR#18390, thanks to Martin Jakt).
  * Non-finite objects of class "POSIXlt" are now correctly coerced
    to classes "Date" and "POSIXct"; following up on the extension to
    format() them correctly.
  * Added methods for is.finite(), is.infinite() and is.nan() for
    "POSIXlt" date-time objects.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1678881600">- CHANGES IN R 4.2.3:
  C-LEVEL FACILITIES:
  * The definition of DL_FUNC in R_ext/Rdynload.h has been changed to
    be fully C-compliant.  This means that functions loaded _via_ for
    example R_GetCCallable need to be cast to an appropriate type if
    they have any arguments.
  * .Machine has a new element sizeof.time_t to identify old systems
    with a 32-bit type and hence a limited range of date-times (and
    limited support for dates millions of years from present).
  PACKAGE INSTALLATION:
  * (Windows) The default C++ standard had accidentally been left at
    C++11 when it was changed to C++14 on Unix.
  BUG FIXES:
  * As "POSIXlt" objects may be "partially filled" and their list
    components meant to be recycled, length() now is the length of
    the longest component.
  * as.POSIXlt.Date() could underflow for dates in the far past (more
    than half a million years BCE).
  * as.Date.POSIXlt(x) would return "1970-01-01" instead of NA in R
    4.2.2, e.g., for
    x &lt;- as.POSIXlt(c("2019-01-30","2001-1-1"))
    x$mon &lt;- c(0L, NA); as.Date(x)
  * R CMD check failed to apply enabled _R_CHECK_SUGGESTS_ONLY_ to
    examples and vignettes (regression in R 4.2.0).
  * R CMD check did not re-build vignettes in separate processes by
    default (regression in R 4.2.0).
  * Running examples from HTML documentation now restores previous
    knitr settings and options (PR#18420).
  * Quartz: fonts are now located using Core Graphics API instead of
    deprecated ATS which is no longer supported in the macOS 13 SDK
    (PR#18426).  This also addresses an issue where the currently
    used font in the Quartz device context was not correctly
    retained.
  * (Windows) Math symbols in text drawing functions are again
    rendered correctly (PR#18440).  This fixes a regression in R
    4.2.1 caused by a fix in PR#18382 which uncovered an issue in
    GraphApp due to which the symbol charset was not used with TT
    Symbol font face.
  * (Windows) Installing a package with a src/Makefile.{win,ucrt}
    file includes ~/.R/Makevars.win64 in the search for user
    makevars, as documented in "R Installation and Administration"
    and done for packages with a src/Makevars.{win,ucrt} file.
  * format(&lt;POSIXlt_w/_unbalanced_sec&gt;, "....%OS&lt;n&gt;") with n &gt; 0 no
    longer accidentally uses the unbalanced seconds, thanks to
    Suharto Anggono's report (including patch) in PR#18448.
  * solve.default(a, b) works around issues with some versions of
    LAPACK when a contains NA or NaN values.
  * When UseMethod() cannot dispatch, it no longer segfaults
    producing the error message in case of a long class(), thanks to
    Joris Vankerschaver's report (including patch) in PR#18447.
  * When example(foo, ..) produces graphics on an interactive device
    it needs to open itself, it now leaves devAskNewPage() unchanged
    even when it was FALSE, thus fixing a 14 years old '&lt;FIXME&gt;'.
  * packageDescription() again catches errors from encoding
    conversions. This also fixes broken packageVersion() in C locale
    on systems where iconv does not support transliteration.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1681128000">- add patch to build with libcurl &gt;= 8</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1682078400">- CHANGES IN R 4.3.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Calling &amp;&amp; or || with LHS or (if evaluated) RHS of length greater
    than one is now always an error, with a report of the form
    'length = 4' in coercion to 'logical(1)'
    Environment variable _R_CHECK_LENGTH_1_LOGIC2_ no longer has any
    effect.
  NEW FEATURES:
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.10.1.  (This caused some platform-dependent
    changes to package check output.)  And then to the sources from
    LAPACK version 3.11.0 (with changes only to double complex
    subroutines).
  * The included LAPACK sources have been updated to include the four
    Fortran 90 routines rather than their Fortran 77 predecessors.
    This may give some different signs in SVDs or
    eigendecompositions..  (This completes the transition to LAPACK
    3.10.x begun in R 4.2.0.)
  * The LAPACK sources have been updated to version 3.11.0.  (No new
    subroutines have been added, so this almost entirely bug fixes:
    Those fixes do affect some computations with NaNs, including R's
    NA.)
  * The parser now signals _classed_ errors, notably in case of the
    pipe operator |&gt;.  The error object and message now give line and
    column numbers, mostly as proposed and provided by Duncan Murdoch
    in PR#18328.
  * toeplitz() is now generalized for asymmetric cases, with a
    toeplitz2() variant.
  * xy.coords() and xyz.coords() and consequently, e.g., plot(x,y,
    log = "y") now signal a _classed_ warning about negative values
    of y (where log(.) is NA).  Such a warning can be specifically
    suppressed or caught otherwise.
  * Regular expression functions now check more thoroughly whether
    their inputs are valid strings (in their encoding, e.g. in
    UTF-8).
  * The performance of grep(), sub(), gsub() and strsplit() has been
    improved, particularly with perl = TRUE and fixed = TRUE.  Use of
    useBytes = TRUE for performance reasons should no longer be
    needed and is discouraged: it may lead to incorrect results.
  * apropos() gains an argument dot_internals which is used by the
    completion (help(rcompgen)) engine to also see base internals
    such as .POSIXct().
  * Support in tools::Rdiff() for comparing uncompressed PDF files is
    further reduced - see its help page.
  * qqplot(x, y, ...) gains conf.level and conf.args arguments for
    computing and plotting a confidence band for the treatment
    function transforming the distribution of x into the distribution
    of y (Switzer, 1976, _Biometrika_). Contributed by Torsten
    Hothorn.
  * Performance of package_dependencies() has been improved for cases
    when the number of dependencies is large.
  * Strings newly created by gsub(), sub() and strsplit(), when any
    of the inputs is marked as "bytes", are also marked as "bytes".
    This reduces the risk of creating invalid strings and accidental
    substitution of bytes deemed invalid.
  * Support for readLines(encoding = "bytes") has been added to allow
    processing special text files byte-by-byte, without creating
    invalid strings.
  * iconv(from = "") now takes into account any declared encoding of
    the input elements and uses it in preference to the native
    encoding.  This reduces the risk of accidental creation of
    invalid strings, particularly when different elements of the
    input have different encoding (including "bytes").
  * Package repositories in getOption("repos") are now initialized
    from the repositories file when utils is loaded (if not already
    set, e.g., in .Rprofile).  (From a report and patch proposal by
    Gabriel Becker in PR#18405.)
  * compactPDF() gets a verbose option.
  * type.convert() and hence read.table() get new option tryLogical =
    TRUE with back compatible default.  When set to false, converts
    "F" or "T" columns to character.
  * Added new unit prefixes "R" and "Q" for abbreviating
    (unrealistically large) sizes beyond 10^{27} in standard = "SI",
    thanks to Henrik Bengtsson's PR#18435.
  * as.data.frame()'s default method now also works fine with atomic
    objects inheriting from classes such as "roman", "octmode" and
    "hexmode", such fulfilling the wish of PR#18421, by Benjamin
    Feakins.
  * The as.data.frame.vector() utility now errors for wrong-length
    row.names.  It warned for almost six years, with "Will be an
    error!".
  * sessionInfo() now also contains La_version() and reports codepage
    and timezone when relevant, in both print() and toLatex() methods
    which also get new option tzone for displaying timezone
    information when locale = FALSE.
  * New function R_compiled_by() reports the C and Fortran compilers
    used to build R, if known.
  * predict(&lt;lm&gt;, newdata = *) no longer unnecessarily creates an
    offset of all 0s.
  * solve() for complex inputs now uses argument tol and by default
    checks for 'computational singularity' (as it long has done for
    numeric inputs).
  * predict(&lt;rank-deficient lm&gt;, newdata=*) now obeys a new argument
    rankdeficient, with new default "warnif", warning only if there
    are non-estimable cases in newdata.  Other options include
    rankdeficient = "NA", predicting NA for non-estimable newdata
    cases.  This addresses PR#15072 by Russ Lenth and is based on his
    original proposal and discussions in PR#16158 also by David Firth
    and Elin Waring.  Still somewhat experimental.
  * Rgui console implementation now works better with the NVDA screen
    reader when the full blinking cursor is selected.  The underlying
    improvements in cursor handling may help also other screen
    readers on Windows.
  * The drop-field control in GraphApp can now be left with the TAB
    key and all controls can be navigated in the reverse order using
    the Shift+TAB key, improving accessibility of the Rgui
    configuration editor.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now fully accurate
    (instead of to "only" minimally five digits).
  * demo(error.catching) now also shows off withWarnings() and
    tryCatchWEMs().
  * As an experimental feature the placeholder _ can now also be used
    in the rhs of a forward pipe |&gt; expression as the first argument
    in an extraction call, such as _$coef. More generally, it can be
    used as the head of a chain of extractions, such as _$coef[[2]].
  * Spaces in the environment variable used to choose the R session's
    temporary directory (TMPDIR, TMP and TEMP are tried in turn) are
    now fatal.  (On Windows the 'short path' version of the path is
    tried and used if that does not contain a space.)
  * all.equal.numeric() gets a new optional switch giveErr to return
    the numeric error as attribute.  Relatedly,
    stopifnot(all.equal&lt;some&gt;(a, b, ..)) is as "smart" now, as
    stopifnot(all.equal(....)) has been already, thus allowing
    customized all.equal&lt;Some&gt;() wrappers.
  * R on Windows is now able to work with path names longer than 260
    characters when these are enabled in the system (requires at
    least Windows 10 version 1607).  Packages should be updated to
    work with long paths as well, instead of assuming PATH_MAX to be
    the maximum length.  Custom front-ends and applications embedding
    R need to update their manifests if they wish to allow this
    feature.  See
    &lt;https://blog.r-project.org/2023/03/07/path-length-limit-on-windows&gt;
    for more information.
  * 'Object not found' and 'Missing argument' errors now give a more
    accurate error context. Patch provided by Lionel Henry in
    PR#18241.
  * The @ operator is now an S3 generic. Based on contributions by
    Tomasz Kalinowski in PR#18482.
  * New generic chooseOpsMethod() provides a mechanism for objects to
    resolve cases where two suitable methods are found for an Ops
    Group Generic. This supports experimenting with alternative
    object systems. Based on contributions by Tomasz Kalinowski in
    PR#18484.
  * inherits(x, what) now accepts values other than a simple
    character vector for argument what. A new generic, nameOfClass(),
    is called to resolve the class name from what. This supports
    experimenting with alternative object systems. Based on
    contributions by Tomasz Kalinowski in PR#18485.
  * Detection of BLAS/LAPACK in use (sessionInfo()) with FlexiBLAS
    now reports the current backend.
  * The "data.frame" method for subset() now warns about extraneous
    arguments, typically catching the use of = instead of == in the
    subset expression.
  * Calling a:b when numeric a or b is longer than one may now be
    made into an error by setting environment variable
    _R_CHECK_LENGTH_COLON_ to a true value, along the proposal in
    PR#18419 by Henrik Bengtsson.
  * density(x, weights = *) now warns if automatic bandwidth
    selection happens without using weights; new optional warnWbw may
    suppress the warning.  Prompted by Christoph Dalitz' PR#18490 and
    its discussants.
  * rm(list = *) is faster and more readable thanks to Kevin Ushey's
    PR#18492.
  * The plot.lm() function no longer produces a normal Q-Q plot for
    GLMs. Instead it plots a half-normal Q-Q plot of the absolute
    value of the standardized deviance residuals.
  * The print() method for class "summary.glm" no longer shows
    summary statistics for the deviance residuals by default.  Its
    optional argument show.residuals can be used to show them if
    required.
  * The tapply() function now accepts a data frame as its X argument,
    and allows INDEX to be a formula in that case. by.data.frame()
    similarly allows INDICES to be a formula.
  * The performance of df[j] &lt;- value (including for missing j) and
    write.table(df) has been improved for data frames df with a large
    number of columns.  (Thanks to Gabriel Becker's PR#18500,
    PR#18503 and discussants, prompted by a report from Toby Dylan
    Hocking on the R-devel mailing list.)
  * The matrix multiply operator %*% is now an S3 generic, belonging
    to new group generic matrixOps.  From Tomasz Kalinowski's
    contribution in PR#18483.
  * New function array2DF() to convert arrays to data frames,
    particularly useful for the list arrays created by tapply().
  DATES and TIMES:
  * On platforms where (non-UTC) datetimes before 1902 (or before
    1900 as with system functions on recent macOS) are guessed by
    extrapolating time zones from 1902-2037, there is a warning at
    the first use of extrapolation in a session.  (As all time zones
    post 2037 are extrapolation, we do not warn on those.)
  * (Platforms using --with-internal-tzone, including Windows and by
    default macOS). How years are printed in dates or date-times can
    be controlled by environment variable R_PAD_YEARS_BY_ZERO.  The
    default remains to pad to 4 digits by zeroes, but setting value
    no gives no padding (as used by default by glibc).
  * strftime() tries harder to determine the offset for the "%z"
    format, and succeeds on the mainstream R platforms.
  * strftime() has a limit of 2048 bytes on the string produced -
    attempting to exceed this is an error.  (Previously it silently
    truncated at 255 bytes.)
  * sessionInfo() records (and by default prints) the system time
    zone as part of the locale information.  Also, the source
    (system/internal) of the date-time conversion and printing
    functions.
  * Objects of class "POSIXlt" created in this version of R always
    have 11 components: component zone is always set, and component
    gmtoff is set for times in UTC and usually set on the (almost
    all) platforms which have C-level support, otherwise is NA.
  * There are comprehensive validity checks on the structure of
    objects of class "POSIXlt" when converting (including formatting
    and printing).  (This avoids mis-conversions of hand-crafted
    objects.)
  * There is some support for using the native date-time routines on
    macOS: this is only viable on recent versions (e.g. 12.6 and 13)
    and does get wrong some historical changes (before 1900, during
    WWII).  Use of --with-internal-tzone remains the default.
  * as.POSIXct(&lt;numeric&gt;) and as.POSIXlt(.) (without specifying
    origin) now work.  So does as.Date(&lt;numeric&gt;).
  * as.Date.POSIXct(., tz) now treats several tz values, notably
    "GMT" as equivalent to "UTC", proposed and improved by Michael
    Chirico and Joshua Ulrich in PR#17674.
  * Experimental balancePOSIXlt() utility allows using "ragged" and
    or out-of-range "POSIXlt" objects more correctly, e.g., in
    subsetting and subassignments.  Such objects are now documented.
    More experimentally, a "POSIXlt" object may have an attribute
    "balanced" indicating if it is known to be filled or fully
    balanced.
  * Functions axis.Date() and axis.POSIXct() are rewritten to gain
    better default tick locations and better default formats by using
    prettyDate(). Thanks to Swetlana Herbrandt.
  * The mapping of Windows' names for time zones to IANA's 'Olson'
    names has been updated.  When ICU is available (it is by
    default), it is used to get a mapping for the current region set
    in Windows.  This can be overridden by setting environment
    variable TZ to the desired Olson name - see OlsonNames() for
    those currently available.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 16
    and so packages that provide graphics devices should be
    reinstalled.
  * The grDevices and grid packages have new functions for rendering
    typeset glyphs, primarily: grDevices::glyphInfo() and
    grid::grid.glyph().
    Rendering of typeset glyphs is only supported so far on the
    Cairo-based graphics devices and on the pdf() and quartz()
    devices.
  * The defined behaviour for "clear" and "source" compositing
    operators (via grid::grid.group()) has been changed (to align
    better with simple interpretation of original Porter-Duff
    definitions).
  * Support for gradients, patterns, clipping paths, masks, groups,
    compositing operators, and affine transformations has been added
    to the quartz() device.
  INSTALLATION on a UNIX-ALIKE:
  * A system installation of generic LAPACK 3.10.0 or later will be
    preferred to the version in the R sources.
    configure option --with-lapack=no (equivalently --without-lapack)
    forces compilation of the internal LAPACK sources.
    If --with-lapack is not specified, a system liblapack is looked
    for and used if it reports version 3.10.0 or later and does not
    contain BLAS routines.
    Packages using LAPACK will need to be reinstalled if this changes
    to using an external library.
  * On aarch64 Linux platforms using GCC, configure now defaults to
  - fPIC (instead of -fpic), as desired in PR#18326.
  * configure now checks conversion of datetimes between POSIXlt and
    POSIXct around year 2020.  Failure (which has been seen on
    platforms missing tzdata) is fatal.
  * If configure option --with-valgrind-instrumentation is given
    value 1 or 2, option --with-system-valgrind-headers is now the
    default and ignored (with a warning).  It is highly recommended
    that the system headers are installed alongside valgrind: they
    are part of its packaging on some Linux distributions and
    packaged separately (e.g. in the valgrind-devel RPM) on others.
    configure will give a warning if they are not found.
    The system headers will be required in a future release of R to
    build with valgrind instrumentation.
  * libcurl 8.x is now accepted by configure: despite a change in
    major version number it changes neither API nor ABI.
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools43, an update of the Rtools42 toolchain.  It is
    based on gcc 12 and newer versions of MinGW-W64, binutils and
    libraries.  At this time R-devel can still be built using
    Rtools42 without changes, but when R-devel is installed via the
    installer, it will by default look for Rtools43.
  * Old make targets rsync-extsoft and 32-bit ones that are no longer
    needed have been removed.
  * Default builds (including for packages) no longer select C99.
    Thus the C standard used is the default for the compiler, which
    for the toolchain in Rtools43 is C17.  (This is consistent with
    Unix builds.)
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++17 where
    available (which it is on all currently checked platforms): if
    not C++14 or C++11 is used if available otherwise C++ is not
    supported.
  * USE_FC_LEN_T is the default: this uses the correct
    (compiler-dependent) prototypes for Fortran BLAS/LAPACK routines
    called from C/C++, and requires adjustment of many such calls -
    see 'Writing R Extensions' SS6.6.1.
  * There is initial support for C++23 as several compilers are now
    supporting -std=c++23 or -std=c++2b or similar.  As for C++20,
    there no additional configure checks for C++23 features beyond a
    check that the compiler reports a __cplusplus value greater than
    that in the C++20 standard.  C++ feature tests should be used.
  * There is support for a package to indicate the version of the C
    standard which should be used to compile it, and for the
    installing user to specify this.  In most cases R defaults to the
    C compiler's default standard which is C17 (a `bug-fix' of C11) -
    earlier versions of R or compilers may have defaulted to C99.
    Current options are:
    USE_C17 Use a standard that is at most C17.  The intention is to
    allow legacy packages to still be installed when later C
    standards become the default, including packages using new
    keywords as identifiers or with K&amp;R-style function
    declarations.  This will use C17 if available, falling back
    to C11.
    USE_C90 Use the C90 (aka C89) standard.  (As that standard did
    not require compilers to identify that version, all we can
    verify is that the compiler does not claim to be using a
    later standard.  It may accept C99 features - for example
    clang accepts // to make comments.)
    USE_C99 Use the C99 standard. This should be rarely needed - it
    avoids the few new features of C11/C17 which can be useful if
    a package assumes them if C17 is specified and they are not
    implemented.
    USE_C23 Use C23 (or in future, later).  Compiler/library support
    for C23 is still being implemented, but LLVM clang from
    15.0.0 and the upcoming GCC 13 have quite extensive support.
    These can be specified as part of the SystemRequirements field in
    the package's DESCRIPTION file or _via_ options --use-C17 and so
    on of R CMD INSTALL and R CMD SHLIB.
    For further details see "Writing R Extensions" SS1.2.5.
  * (Windows) A src/Makefile.ucrt or src/Makefile.win file is now
    included after R_HOME/etcR_ARCH/Makeconf and so no longer needs
    to include that file itself.  Installation of a package with such
    a file now uses a site Makevars file in the same way as a package
    with a src/Makevars.win file would.
  * configure is now passed crucial variables such as CC and CFLAGS
    in its environment, as many packages were not setting them (as
    documented in 'Writing R Extensions' SS1.2).
    This has most effect where configure is used to compile parts of
    the package - most often by cmake or libtool which obfuscate the
    actual compile commands used.
    Also used for configure.win and configure.ucrt on Windows.
  FORTRAN FLAGS:
  * The flag -fno-optimize-sibling-calls is no longer forced for
    gfortran 7 and later.  It should no longer be needed now using
    'hidden' character-length arguments when calling BLAS/LAPACK
    routines from C/C++ is the default even for packages.  (Unless
    perhaps packages call Fortran code from C/C++ without using R's
    headers and without allowing for these arguments.)
  C-LEVEL FACILITIES:
  * The deprecated S-compatibility macros DOUBLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * The deprecated legacy typedefs of Sint and Sfloat in header R.h
    are no longer defined, and that header no longer includes header
    limits.h from C nor climits from C++.
  * New macro CAD5R() is provided in Rinternals.h and used in a few
    places in the R sources.
  * ALTREP now supports VECSXP vectors. Contributed by Gabor Csardi
    in PR#17620.
  * The Rcomplex definition (in header R_ext/Complex.h) has been
    extended to prevent possible mis-compilation when interfacing
    with Fortran (PR#18430).  The new definition causes compiler
    warnings with static initializers such as {1, 2}, which can be
    changed to {.r=1, .i=2}.
    Using the new definition from C++ depends on compiler extensions
    supporting C features that have not been incorporated into the
    C++ standards but are available in g++ and clang++: this may
    result in C++ compiler warnings but these have been worked around
    for recent versions of common compilers (GCC, Apple/LLVM clang,
    Intel).
    It is intended to change the inclusion of header R_ext/Complex.h
    by other R headers, so C/C++ code files which make use of
    Rcomplex should include that header explicitly.
  UTILITIES:
  * R CMD check does more checking of package .Rd files, warning
    about invalid email addresses and (some) invalid URIs and noting
    empty \item labels in description lists.
  * R CMD check now also reports problems when reading package news
    in md (file NEWS.md) and (optionally) plain text (file NEWS)
    formats.
  * _R_CHECK_TIMINGS_ defaults to a value from the environment even
    for R CMD check --as-cran; this allows for exceptionally fast or
    slow platforms.
    It now applies to checking PDF and HTML versions of the manuals,
    and 'checking CRAN incoming feasibility'.
  * R CMD check can optionally (but included in --as-cran) check
    whether HTML math rendering _via_ KaTeX works for the package .Rd
    files.
  * Non-interactive debugger invocations can be trapped by setting
    the environment variable _R_CHECK_BROWSER_NONINTERACTIVE_ to a
    true value.  This is enabled by R CMD check --as-cran to detect
    the use of leftover browser() statements in the package.
  * The use of sprintf and vsprintf from C/C++ has been deprecated in
    macOS 13 and is a known security risk.  R CMD check now reports
    (on all platforms) if their use is found in compiled code:
    replace by snprintf or vsnprintf respectively. [*NB:* whether
    such calls get compiled into the package is platform-dependent.]
  * Where recorded at installation, R CMD check reports the C and
    Fortran compilers used to build R.
    It reports the OS in use (if known, as given by osVersion) as
    well as that R was built for.
    It notes if a C++ standard was specified which is older than the
    current default: many packages have used C++11 to mean 'not
    C++98' - as C++11 is the minimum supported since R 4.0.0, that
    specification can probably be removed.
  * R CMD INSTALL reports the compilers (and on macOS, the SDK) used,
    and this is copied to the output of R CMD check.
    Where a C++ standard is specified, it is reported.
  * R CMD check's 'checking compilation flags in Makevars' has been
    relaxed to accept the use of flags such as -std=f2008 in
    PKG_FFLAGS.
  * tools::buildVignettes() has a new argument skip, which is used by
    R CMD check to skip (and note) vignettes with unavailable
    \VignetteDepends (PR#18318).
  * New generic .AtNames() added to enable class-specific completions
    after @. The formerly internal function findMatches() is now
    exported, mainly for use in methods for .DollarNames() and
    .AtNames().
  DEPRECATED AND DEFUNCT:
  * default.stringsAsFactors() is defunct.
  * Calling as.data.frame.&lt;class&gt;() directly (for 12 atomic classes)
    is going to be formally deprecated, currently activated by
    setting the environment variable
    _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ to non-empty, which also
    happens in R CMD check --as-cran.
  BUG FIXES:
  * Hashed environments with sizes less than 5 can now grow.
    (Reported to R-devel by Duncan Garmonsway.)
  * as.character(&lt;Rd&gt;, deparse = TRUE) failed to re-escape curly
    braces in LaTeX-like text.  (Reported by Hadley Wickham in
    PR#18324.)
  * library() now passes its lib.loc argument when requiring Depends
    packages; reported (with fix) in PR#18331 by Mikael Jagan.
  * R CMD Stangle: improved message about 'Output' files.
  * head(x, n) and tail(x, n) now signal an error if n is not
    numeric, instead of incidentally "working" sometimes returning
    all of x.  Reported and discussed by Colin Fay, in PR#18357.
  * The "lm" method for summary() now gives the correct F-statistic
    when the model contains an offset.  Reported in PR#18008.
  * C() and `contrasts&lt;-`() now preserve factor level names when
    given a function object (as opposed a function name which did
    preserve names). Reported in PR#17616.
  * c(a = 1, 2)[[]] no longer matches 2 but rather signals a
    _classed_ error.  Reported and analysed by Davis Vaughan in
    PR#18367, a duplicate of PR#18004, by Jan Meis et al.  For
    consistency, NULL[[]] is also erroneous now.  x[[]] &lt;- v gives an
    error of the same class "MissingSubscriptError".
  * The relist() function of utils now supports NULL elements in the
    skeleton (PR#15854).
  * ordered(levels = *) (missing x) now works analogously to factor(,
    ordered=TRUE); reported (with fix) by Achim Zeileis in PR#18389.
  * User-defined Rd macro definitions can now span multiple lines,
    thanks to a patch from Duncan Murdoch. Previously, the Rd parser
    silently ignored everything after the first line.
  * Plain-text help (tools::Rd2txt()) now preserves an initial blank
    line for text following description list items.
  * tools::Rd2HTML() and tools::Rd2latex() no longer split \arguments
    and \value lists at Rd comments.
  * tools::Rd2latex() now correctly handles optional text outside
    \items of argument lists as well as bracketed text at the
    beginning of sections, e.g., \value{[NULL]}.
  * as.character(&lt;POSIXt&gt;) now behaves more in line with the methods
    for atomic vectors such as numbers, and is no longer influenced
    by options().  Ditto for as.character(&lt;Date&gt;).  The
    as.character() method gets arguments digits and OutDec with
    defaults _not_ depending on options().  Use of as.character(*,
    format = .) now warns.
  * Similarly, the as.character.hexmode() and *.octmode() methods
    also behave as good citizen methods and back compatibility option
    keepStr = TRUE.
  * The as.POSIXlt(&lt;POSIXlt&gt;) and as.POSIXct(&lt;POSIXct&gt;) default
    methods now do obey their tz argument, also in this case.
  * as.POSIXlt(&lt;Date&gt;) now does apply a tz (time zone) argument, as
    does as.POSIXct(); partly suggested by Roland Fuss on the R-devel
    mailing list.
  * as.Date.POSIXlt(x) now also works when the list components are of
    unequal length, aka "partially filled" or "ragged".
  * expand.model.frame() looked up variables in the wrong environment
    when applied to models fitted without data.  Reported in
    PR#18414.
  * time() now (also) uses the ts.eps = getOption("ts.eps") argument
    and thus by default rounds values very close to the start (or
    end) of a year.  Based on a proposal by Andre"i V. Kostyrka on
    R-help.
  * Printing of a factanal() result with just one factor and sort =
    TRUE now works regularly, fixing PR#17863 by Timothy Bates,
    thanks to the 'R Contributors' working group.
  * Printing 0-length objects of class "factor", "roman", "hexmode",
    "octmode", "person", "bibentry", or "citation" now prints
    something better, one of which fixes PR#18422, reported by
    Benjamin Feakins.
  * Sys.timezone() queries timedatectl only if systemd is loaded;
    addressing a report by Jan Gorecki in PR#17421.
  * The formula method of cor.test() had scoping problems when
    environment(formula) was not the calling environment; reported
    with a patch proposal by Mao Kobayashi in PR#18439.
  * attach() of an environment with active bindings now preserves the
    active bindings.  Reported by Kevin Ushey in PR#18425.
  * BLAS detection now works also with system-provided libraries not
    available as regular files.  This fixes detection of the
    Accelerate framework on macOS since Big Sur.  Reported by David
    Novgorodsky.
  * download.file() gives a helpful error message in case of an
    invalid download.file.method option, thanks to Colin Fay's report
    in PR#18455.
  * Sporadic crashes of Rterm when using completion have been fixed.
  * Rprof() is now more reliable.  A livelock in thread
    initialization with too short sampling interval has been fixed on
    macOS.  A deadlock in using the C runtime has been fixed on
    Windows.  A potential deadlock has been prevented on Unix.
  * Cursor placement in Rgui now works even after a fixed-width font
    is selected.
  * Mandatory options (options()) are now set on startup so that
    saving and restoring them always works (PR#18372).
  * Package installation, R CMD INSTALL or install.packages(*), now
    parses each of the &lt;pkg&gt;/R/*.R files individually instead of
    first concatenating and then parse()ing the large resulting file.
    This allows parser or syntax errors to be diagnosed with correct
    file names and line numbers, thanks to Simon Dedman's report and
    Bill Dunlap's patch in PR#17859.
    This _does_ require syntactically self contained R source files
    now, fixing another inadvertent bug.
  * predict.lm(&lt;model with offset&gt;) now finds the offset in the
    correct environment, thanks to Andr'e Gillibert's report and patch
    in PR#18456.
  * getInitial(&lt;formula&gt;) now finds the selfStart model in the
    correct environment.  (Reported by Ivan Krylov in PR#18368.)
  * Fix for possible segfault when using recently-added graphics
    features, such as gradients, clipping paths, masks, and groups
    with pdf(file=NULL).
  * class(m) &lt;- class(m) no longer changes a matrix m by adding a
    class _attribute_.
  * packageDate(pkg) now only warns once if there is no pkg.
  * When ts() creates a multivariate time series, "mts", it also
    inherits from "array" now, and is.mts() is documented _and_
    stricter.
  * Rd2txt() now preserves line breaks of \verb Rd content and from
    duplicated \cr.  The former also fixes the rendering of verbatim
    output from Rd \Sexpr in plain-text help.
  * uniroot(f, interval) should no longer wrongly converge _outside_
    the interval in some cases where abs(f(x)) == Inf for an x at the
    interval boundary, thanks to posts by Ben Bolker and Serguei
    Sokol on R-devel.
  * Vectorized alpha handling in palette functions such as in gray(),
    rainbow(), or hcl.colors() works correctly now, thanks to Achim
    Zeileis' report and patch in PR#18476.
  * Formatting and print()ing of bibentry objects has dropped the
    deprecated citation.bibtex.max argument, such that the bibtex
    argument's default for print.bibentry() depends directly on the
    citation.bibtex.max option, whereas in format.bibentry() the
    option no longer applies.
  * Attempting to use a character string naming a foreign function
    entry point in a foreign function call in a package will now
    signal an error if the packages has called R_forceSymbols to
    specify that symbols must be used.
  * An error in table() could permanently set options(warn=2)
    promoting all subsequent warnings to errors.
  * The sigma() function gave misleading results for binary GLMs.  A
    new method for objects of class "glm" returns the square root of
    the estimate of the dispersion parameter using the same
    calculation as summary.glm().
  * bs() and ns() in the (typical) case of automatic knot
    construction, when some of the supposedly inner knots coincide
    with boundary knots, now moves them inside (with a warning),
    building on PR#18442 by Ben Bolker.
  * R CMD on Windows now skips the site profile with --no-site-file
    and --vanilla even when R_PROFILE is set (PR#18512, from Kevin
    Ushey).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1686916800">- CHANGES IN R 4.3.1:
  C-LEVEL FACILITIES:
  * The C-level API version of R's integrate(), Rdqags() in Applic.h,
    now returns the correct number of integrand evaluations neval,
    fixing PR#18515 reported and diagnosed by Stephen Wade.
  * The C prototypes for LAPACK calls dspgv and dtptrs in
    R_exts/Lapack.h had one too many and one too few character length
    arguments - but this has not caused any known issues. To get the
    corrected prototypes, include
    [#]include &lt;Rconfig.h&gt; // for PR18534fixed
    [#]ifdef PR18534fixed
    [#] define usePR18534fix 1
    [#]endif
    [#]include &lt;R_exts/Lapack.h&gt;
    in your C/C++ code (PR#18534).
  INSTALLATION:
  * Many of the checks of esoteric Internet operations and those
    using unreliable external sites have been moved to a new target
    that is not run by default and primarily intended for the core
    developers.  To run them use
    cd tests; make test-Internet-dev
  BUG FIXES:
  * .S3methods(), typically called from methods(), again marks
    methods from package base as visible.
    Also, the visibility of non-base methods is again determined by
    the method's presence in search().
  * tools::Rdiff() is now more robust against invalid strings, fixing
    installation tests on Windows without Rtools installed
    (PR#18530).
  * Fix (new) bug in hcl.colors(2, *), by Achim Zeileis (PR#18523).
  * head(., &lt;illegal&gt;) and tail(..) now produce more useful "Error in
    ...." error messages, fixing PR#18362.
  * Package code syntax on Windows is checked in UTF-8 when UTF-8 is
    the native encoding.
  * na.contiguous(x) now also returns the first run, when it is at
    the beginning and there is a later one of the same length;
    reported to R-devel, including a fix, by Georgi Boshnakov.
    Further, by default, it modifies only an existing attr(*,"tsp")
    but otherwise no longer sets one.
  * chol(&lt;not pos.def&gt;, pivot = &lt;T|F&gt;) now gives a correct error or
    warning message (depending on pivot), thanks to Mikael Jagan's
    (PR#18541).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1699012800">- CHANGES IN R 4.3.2:
  NEW FEATURES:
  * The default initialization of the "repos" option from the
    repositories file at startup can be skipped by setting
    environment variable R_REPOSITORIES to NULL such that
    getOption("repos") is empty if not set elsewhere.
  * qr.X() is now an implicit S4 generic in methods.
  * iconv(to = "ASCII//TRANSLIT") is emulated using substitution on
    platforms which do not support it (notably Alpine Linux).  This
    should give a human-readable conversion in ASCII on all platforms
    (rather than NA_character_).
  * trans3d() gains options continuous and verbose addressing the
    problem of possible "wrap around" when projecting too long
    curves, as reported by Achim Zeileis in PR#18537.
  * tools::showNonASCII() has been rewritten to work better on macOS
    14 (which has a changed implementation of iconv()).
  * tiff(type = "quartz") (the default on macOS) now warns if
    compression is specified: it continues to be ignored.
  INSTALLATION on a UNIX-ALIKE:
  * There is some support for building with Intel's LLVM-based
    compilers on x86_64 Linux, such as (C) icx, (C++) ipcx and
    (Fortran) ifx from oneAPI 2023.x.y.
  * There is support for using LLVM's flang-new as the Fortran
    compiler from LLVM 16.0.x (preferably 17.0.0 or later).
  UTILITIES:
  * R CMD check reports the use of the Fortran 90 random number
    generator RANDOM_NUMBER() and the subroutines to initialize it.
    'Writing R Extensions' has example code to use R's RNGs from
    Fortran.
  BUG FIXES:
  * substr(x, n, L) &lt;- cc now works (more) correctly for multibyte
    UTF-8 strings x when L &gt; nchar(x), thanks to a report and patch
    by 'Architect 95'.
  * contrib.url(character()) now returns 0-length character() as
    documented, which also avoids spurious warnings from
    available.packages() et al. in the edge case of an empty vector
    of repository URLs.
  * readChar(., 4e8) no longer fails, thanks to Kodi Arfer's report
    (PR#18557).
  * lapply(&lt;list&gt;, as.data.frame) no longer warns falsely for some
    base vector components.
  * Communication between parent and child processes in the multicore
    part of parallel could fail on platforms that do not support an
    arbitrarily large payload in system functions read()/write() on
    pipes (seen on macOS where a restriction to INT_MAX bytes is
    documented, without doing a partial read unlike Linux). The
    payload is now split into 1Gb chunks to avoid that problem.
    (PR#18571)
  * qqplot(x,y, conf.level=.) gives better confidence bounds when
    length(x) != length(y), thanks to Alexander Ploner's report and
    patch proposal (PR#18557).
  * norm(&lt;0-length&gt;, "2") now gives zero instead of an error, as all
    the other norm types, thanks to Mikael Jagan's PR#18542.
  * Build-stage Rd macros \packageAuthor and \packageMaintainer now
    process Authors@R, fixing NA results when the package DESCRIPTION
    omits Author and Maintainer fields.
  * Formatting and printing complex numbers could give things like
    0.1683-0i because of rounding error: -0i is now replaced by +0i.
  * postscript() refused to accept a title comment containing the
    letter "W" (PR#18599).
  * isoreg(c(1,Inf)) signals an error instead of segfaulting, fixing
    PR#18603.
  * tiff(type = "Xlib") was only outputting the last page of
    multi-page plots.
  * tools::latexToUtf8() again knows about \~{n} and other letters
    with tilde, fixing a regression in R 4.3.0, and about \^{i} as an
    alternative to \^{\i} (similarly with other accents).
    Furthermore, LaTeX codes for accented I letters are now correctly
    converted, also fixing related mistakes in
    tools::encoded_text_to_latex().
  * tar(*, tar = "internal") no longer creates out-of-spec tar files
    in the very rare case of user or group names longer than 32
    bytes, fixing PR#17871 with thanks to Ivan Krylov.
  * When using the "internal" timezone datetime code, adding a
    fraction of a second no longer adds one second, fixing PR#16856
    from a patch by Ivan Krylov.
  * tools::checkRd() no longer produces spurious notes about
    "unnecessary braces" from multi-line Rd results of \Sexpr macros.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1709208000">- CHANGES IN R 4.3.3:
  NEW FEATURES:
  * iconv() now fixes up variant encoding names such as "utf8"
    case-insensitively.
  DEPRECATED AND DEFUNCT:
  * The legacy encoding = "MacRoman" is deprecated in pdf() and
    postscript(): support was incomplete in earlier versions of R.
  BUG FIXES:
  * Arguments are now properly forwarded to methods on S4 generics
    with ... in the middle of their formal arguments. This was broken
    for the case when a method introduced an argument but did not
    include ... in its own formals. Thanks to Herv'e Pag`es for the
    report PR#18538.
  * Some invalid file arguments to pictex(), postscript() and xfig()
    opened a file called NA rather than throw an error.  These
    included postscript(NULL) (which some people expected to work
    like pdf(NULL)).
  * Passing filename = NA to svg(), cairo_pdf(), cairo_ps() or the
    Cairo-based bitmap devices opened a file called NA: it now throws
    an error.
  * quartz(file = NA) opened a file called NA, including when used as
    a Quartz-based bitmap device.  It now gives an error.
  * rank(&lt;long vector&gt;) now works, fixing PR#18617, thanks to Ilia
    Kats.
  * seq.int() did not adequately check its length.out argument.
  * match(&lt;POSIXct&gt;, .) is correct again for differing time zones,
    ditto for "POSIXlt", fixing PR#18618 reported by Bastian Klein.
  * drop.terms(*, dropx = &lt;0-length&gt;) now works, fixing PR#18563 as
    proposed by Mikael Jagan.
  * drop.terms(*) keeps + offset(.) terms when it should, PR#18565,
    and drop.terms() no longer makes up a response, PR#18566, fixing
    both bugs thanks to Mikael Jagan.
  * getS3method("t", "test") no longer finds the t.test() function,
    fixing PR#18627.
  * pdf() and postscript() support for the documented Adobe encodings
    "Greek" and "Cyrilllic" was missing (although the corresponding
    Windows' codepages could be used).
  * Computations of glyph metric information for pdf() and
    postscript() did not take into account that transliteration could
    replace one character by two or more (only seen on macOS 14) and
    typically warned that the information was not known.
  * rank(x) no longer overflows during integer addition, when
    computing rank average for largish but not-yet long vector x,
    fixing PR#18630, thanks to Ilia Kats.
  * list.files() on Windows now returns also files with names longer
    that 260 bytes (the Windows limit is 260 characters).
    Previously, some file names particularly with 'East Asian'
    characters were omitted.
  * cov2cor(&lt;0 x 0&gt;) now works, fixing PR#18423 thanks to Mikael
    Jagan and Elin Waring.
  * cov2cor(&lt;negative diagonal&gt;) and similar now give one warning
    instead of two, with better wording, fixing PR#18424 thanks to
    Mikael Jagan.
  * tools:: startDynamicHelp() now ensures port is in proper range,
    fixing PR#18645.
  * pbeta(x, a,b) is correct now for x=0 or 1 in the boundary cases
    where a or b or both are 0, fixing PR#18672 thanks to Michael
    Fay.
  * pmatch(x, table) for large table, also called for data frame row
    selection, dfrm[nm, ], is now interruptible, fixing PR#18656.
  * predict(&lt;rank-deficient lm&gt;, newdata=*) fix computing of nbasis,
    see Russ Lenth's comment 29 in PR#16158.
  * Added a work-around for a bug in macOS 14.3.1 and higher which
    prevents R plots in the Quartz Cocoa device from updating on
    screen.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1713960000">- CHANGES IN R 4.4.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Startup banners, R --version, sessionInfo() and R CMD check no
    longer report (64-bit) as part of the platform as this is almost
    universal - the increasingly rare 32-bit platforms will still
    report (32-bit).
    On Windows, ditto for window titles.
  * is.atomic(NULL) now returns FALSE, as NULL is not an atomic
    vector.  Strict back-compatibility would replace is.atomic(foo)
    by (is.null(foo) || is.atomic(foo)) but should happen only
    sparingly.
  NEW FEATURES:
  * The confint() methods for "glm" and "nls" objects have been
    copied to the stats package.  Previously, they were stubs which
    called versions in package MASS. The MASS namespace is no longer
    loaded if you invoke (say) confint(glmfit).  Further, the "glm"
    method for profile() and the plot() and pairs() methods for class
    "profile" have been copied from MASS to stats.  (profile.nls()
    and plot.profile.nls() were already in stats.)
  * The confint() and profile methods for "glm" objects have gained a
    possibility to do profiling based on the Rao Score statistic in
    addition to the default Likelihood Ratio. This is controlled by a
    new test = argument.
  * The pairs() method for "profile" objects has been extended with a
    which = argument to allow plotting only a subset of the
    parameters.
  * The "glm" method for anova() computes test statistics and
    p-values by default, using a chi-squared test or an F test
    depending on whether the dispersion is fixed or free.  Test
    statistics can be suppressed by giving argument test a false
    logical value.
  * In setRepositories() the repositories can be set using their
    names via name = instead of index ind =.
  * methods() and .S3methods() gain a all.names option for the (rare)
    case where functions starting with a . should be included.
  * Serializations can now be interrupted (e.g., by Ctrl-C on a
    Unix-alike) if they take too long, e.g., from save.image(),
    thanks to suggestions by Ivan Krylov and others on R-devel.
  * New startup option --max-connections to set the maximum number of
    simultaneous connections for the session.  Defaults to 128 as
    before: allowed values up to 4096 (but resource limits may in
    practice restrict to smaller values).
  * R on Windows (since Windows 10 2004) now uses the new Segment
    Heap allocator. This may improve performance of some
    memory-intensive applications.
  * When R packages are built, typically by R CMD build &lt;pkg&gt;, the
    new --user=&lt;build_user&gt; option overrides the (internally
    determined) user name, currently Sys.info()["user"] or LOGNAME.
    This is a (modified) fulfillment of Will Landau's suggestion in
    PR#17530.
  * tools::testInstalledBasic() gets new optional arguments outDir
    and testSrcdir, e.g., allowing to use it in a &lt;builddir&gt; !=
    &lt;srcdir&gt; setup, and in standard "binary" Windows installation
  * if* a source tests/ folder is present.
  * range(&lt;DT_with_Inf&gt;, finite = TRUE) now work for objects of class
    "Date", "POSIXct", and "POSIXlt" with infinite entries,
    analogously to range.default(), as proposed by Davis Vaughan on
    R-devel.  Other range()-methods can make use of new function
    .rangeNum().
  * New .internalGenerics object complementing .S3PrimitiveGenerics,
    for documentation and low-level book-keeping.
  * grid() now invisibly returns the x- and y- coordinates at which
    the grid-lines were drawn.
  * norm(., type) now also works for complex matrices.
  * kappa(., exact = TRUE, norm = *) now works for all norms and also
    for complex matrices.  In symmetric / triangular cases, the new
    argument uplo = "U" | "L" allows the upper or lower triangular
    part to be specified.
  * memDecompress(type = "unknown") recognizes compression in the
    default 'zlib' format as used by memCompress(type = "gzip").
  * memCompress() and memDecompress() will use the libdeflate library
    (&lt;https://github.com/ebiggers/libdeflate&gt;) if installed.  This
    uses the same type of compression for type = "gzip" but is 1.5-2x
    faster than the system libz library on some common platforms: the
    speed-up may depend on the library version.
  * diff() for objects of class "Date", "POSIXct", and "POSIXlt"
    accepts a units argument passed via ....
  * Dynamic help now does a much better job of rendering package
    DESCRIPTION metadata.
  * Rprof() gains an event argument and support for elapsed (real)
    time profiling on Unix (PR#18076).
  * filled.contour() gains a key.border argument.
  * tools::update_pkg_po() gets arguments pot_make and mo_make for
    _not_ re-making the corresponding files, and additionally a
    verbose argument.
  * Hexadecimal string colour specifications are now accepted in
    short form, so, for example, we can use "#123", which is
    equivalent to "#112233".
    Thanks to MikeFC for the original idea and Ella Kaye, Malcolm
    Barrett, George Stagg, and Hanne Oberman for the patch.
  * Plain-text help shows \var markup by angle brackets.
  * The new experimental primitive function declare() is intended to
    eventually allow information about R code to be communicated to
    the interpreter, compiler, and code analysis tools. The syntax
    for declarations is still being developed.
  * Functions psmirnov(), qsmirnov() and rsmirnov() in package stats
    have had argument two.sided renamed to alternative, to take into
    account that the permutation distributions of the one-sided
    statistics can be different in the case of ties.  Consequence of
    PR#18582.
  * sort() is now an implicit S4 generic in methods.
  * Formatting and printing, format(z), print(z), of complex vectors
    z no longer zap relatively small real or imaginary parts to zero,
    fixing PR#16752.  This is an API change, as it was documented
    previously to round real and imaginary parts together on purpose,
    producing nicer looking output.  As mentioned, e.g. in the PR,
    this change is compatible with many other "R-like" programming
    environments.
    We have simplified the internal code and now basically format the
    real and imaginary parts independently of each other.
  * New experimental functions Tailcall() and Exec() to support
    writing stack-space-efficient recursive functions.
  * Where characters are attempted to be plotted by pdf(),
    postscript() and xfig() which are not in the selected 8-bit
    character set (most often Latin-1) and the R session is using a
    UTF-8 locale, the warning messages will show the UTF-8 character
    rather than its bytes and one dot will be substituted per
    character rather than per byte.  (Platforms whose iconv() does
    transliteration silently plot the transliteration.)
    In a UTF-8 locale some transliterations are now done with a
    warning (e.g., dashes and Unicode minus to hyphen, ligatures are
    expanded, permille (‰) is replaced by o/oo), although the OS may
    have got there first.  These are warnings as they will continue
    to be replaced by dots in earlier versions of R.
  * The matrix multiplication functions crossprod() and tcrossprod()
    are now also primitive and S3 generic, as %*% had become in R
    4.3.0.
  * source() and example() have a new optional argument catch.aborts
    which allows continued evaluation of the R code after an error.
  * The non-Quartz tiff() devices allow additional types of
    compression if supported by the platform's libtiff library.
  * The list of base and recommended package names is now provided by
    tools::standard_package_names().
  * cairo_pdf() and cairo_ps() default to onefile = TRUE to closer
    match pdf() and postscript().
  * New option catch.script.errors provides a documented way to catch
    errors and then continue in non-interactive use.
  * L %||% R newly in base is an expressive idiom for the phrases
    if(!is.null(L)) L else R or if(is.null(L)) R else L.
  * The return value from warnings() now always inherits from
    "warnings" as documented, now also in the case of no warnings
    where it previously returned NULL.
  * as.complex("1i") now returns 0 + 1i instead of NA with a warning.
  * z &lt;- c(NA, 1i) now keeps the imaginary part Im(z[1]) == 0, no
    longer coercing to NA_complex_.  Similarly, cumsum(z) correctly
    sums real and imaginary parts separately, i.e., without
    "crosstalk" in case of NAs.
  * On Alpine Linux iconv() now maps "latin2", "latin-2", "latin9"
    and "latin-9" to encoding names the OS knows about
    (case-insensitively).
  * iconv(sub = "Unicode") now always zero-pads to four (hex) digits,
    rather than to 4 or 8.  (This seems to have become the convention
    once Unicode restricted the number of Unicode points to 2^21 - 1
    and so will never need more than 6 digits.)
  * NCOL(NULL) now returns 0 instead of 1, for consistency with
    cbind().
  * The information for the Euro glyph missing from the Adobe .afm
    files for the Courier, Helvetica and Times families has been
    copied from their URW equivalents - this will improve vertical
    centring in the pdf() and postscript() devices.
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.12.0.  The changes are almost entirely cosmetic.
  * The included LAPACK sources have been updated to version 3.12.0
    and some further double-complex routines added.
  * There are new font families for the 2014--5 URW 2.0 fonts (see
    ?pdf) which are included in recent versions of Ghostscript.
    These have font widths for most Greek glyphs and a few others
    which were missing from the original versions (whose font
    families remain available for reproducibility, although
    Ghostscript-based viewers will render using the 2.0 versions).
  * Improve the large-n efficiency of as.matrix(&lt;dist&gt;), thanks an R
    contributors effort, notably by Tim Taylor and Heather Turner,
    see PR#18660.
  * The default and numeric methods of all.equal() get a check.class
    option.
  * zapsmall() gets new optional arguments, function mFUN and min.d,
    for extra flexibility; fulfills a wish in PR#18199.  Also, it is
    now an implicit S4 generic in package methods.
  * The Rd filter for aspell() gains an ignore argument.
  * New generic function sort_by(), primarily useful for the
    data.frame method which can be used to sort rows of a data frame
    by one or more columns.
  * The icence headers for the RPC code in src/extra/xdr have been
    updated to use the GPL-compatible licence published by Oracle
    America in 2010.
  * New function pkg2HTML() in tools to create single-page HTML
    reference manuals for R packages.
  * The byte code evaluator now uses less C stack space for recursive
    calls to byte-compiled functions. It also makes more of an effort
    to avoid allocations for scalar return values.
  * New completion option backtick (disabled by default) allows
    non-syntactic completions to be wrapped in backquotes. This is
    currently only useful for Jupyter notebooks via the IRkernel
    package, and may cause problems for other backends.
  INSTALLATION:
  * The parser has been updated to work with bison 3.8.2, which is
    now used for the pre-generated parsers in gram.c, file.c, and
    gramRd.c. A few parser error messages have changed, which may
    affect code that relies on exact messages.
  INSTALLATION on a UNIX-ALIKE:
  * System valgrind headers are now required to use configure option
  - -with-valgrind-instrumentation with value 1 or 2.
  * configure will warn if it encounters a 32-bit build, as that is
    nowadays almost untested.
  * Environment variable R_SYSTEM_ABI is no longer used and so no
    longer recorded in etc/Renviron (it was not on Windows and was
    only ever used when preparing package tools).
  * If the libdeflate library and headers are available, libdeflate
    rather than libz is used to (de)compress R objects in lazy-load
    databases.  Typically tasks spend up to 5% of their time on such
    operations, although creating lazy-data databases is one of the
    exceptions.
    This can be suppressed if the library is available by the
    configure option --without-libdeflate-compression.
  * configure option --enable-lto=check has not worked reliably since
    2019 and has been removed.
  * The minimum autoconf requirement for a maintainer build has been
    increased to autoconf 2.71.
    It is intended to increase this to 2.72 for R 4.5.0: the
    distributed configure file was generated using 2.72.
  * The minimum version requirement for an external LAPACK has been
    reduced to 3.9.0.
  * No default C++ compiler is set if no C++17 compiler is detected:
    there is no longer an automatic fallback to C++14 or C++11.
    Compilers from the last five years should have sufficient
    support: for others macros CXX and CXXSTD can be set in file
    config.site to provide a fallback if needed.
    The Objective-C++ compiler now by default uses the standard
    selected by R for C++ (currently C++17) rather than the default
    standard for the C++ compiler (which on macOS is still C++98).
  INSTALLATION on macOS:
  * A new configure option --with-newAccelerate makes use of Apple's
    'new' BLAS / LAPACK interfaces in their Accelerate framework.
    Those interfaces are only available in macOS 13.3 or later, and
    building requires SDK 13.3 or later (from the Command Line Tools
    or Xcode 14.3 or later).
    By default the option uses new Accelerate for BLAS calls: to also
    use it for LAPACK use option --with-newAccelerate=lapack.  The
    later interfaces provide LAPACK 3.9.1 rather than 3.2.1: 3.9.1 is
    from 2021-04 and does not include the improved algorithms
    introduced in LAPACK 3.10.0 (including for BLAS calls).
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools44, an update of the Rtools43 toolchain.  It is
    based on GCC 13 and newer versions of MinGW-W64, binutils and
    libraries (targeting 64-bit Intel CPUs).  R-devel can no longer
    be built using Rtools43 without changes.
  * Rtools44 has experimental support for 64-bit ARM (aarch64) CPUs
    _via_ the LLVM 17 toolchain using lld, clang/flang-new and
    libc++.
  UTILITIES:
  * R CMD check notes when S4-style exports are used without
    declaring a strong dependence on package methods.
  * tools::checkRd() (used by R CMD check) detects more problems with
    \Sexpr-based dynamic content, including bad nesting of \Sexprs
    and invalid arguments.
  * tools::checkRd() now reports Rd titles and section names ending
    in a period; this is ignored by R CMD check unless environment
    variable _R_CHECK_RD_CHECKRD_MINLEVEL_ is set to -5 or smaller.
  * R CMD check now notes Rd files without an \alias, as long
    documented in 'Writing R Extensions' §1.3.1.  The check for a
    missing \description has been moved from tools::checkRd() to
    tools::checkRdContents().
  * R CMD check now visits inst/NEWS.Rd and OS-specific man
    subdirectories when checking Rd files.
  * tools::checkDocFiles() and tools::checkRdContents() now also
    check internal Rd files by default, but "specially" (ignoring
    missing documentation of arguments).
  * R CMD Rdiff gets option --useEx.
  * R CMD check now warns on non-portable uses of Fortran KIND such
    as INTEGER(KIND=4) and REAL(KIND=8).
    To see the failing lines set environment variable
    _R_CHECK_FORTRAN_KIND_DETAILS_ to a true value.
  * When checking Rd files, R CMD check now notes some of the "lost
    braces" that tools::checkRd() finds.  Typical problems are Rd
    macros missing the initial backslash (e.g., code{...}), in-text
    set notation (e.g., {1, 2}, where the braces need escaping), and
    \itemize lists with \describe-style entries of the form
    \item{label}{description}.
  * R CMD INSTALL (and hence check) will compile C++ code with
  - DR_NO_REMAP if environment variable _R_CXX_USE_NO_REMAP_ is set
    to a true value.  It is planned that this will in future become
    the default for compiling C++.
  * The new built-in Rd macro \dontdiff{} can be used to mark example
    code whose output should be ignored when comparing check output
    to reference output (tests/Examples/&lt;pkg&gt;-Ex.Rout.save).  The
    \dontdiff tag, like \donttest, is _not_ shown on the rendered
    help page, so provides a clean alternative to ##
    IGNORE_RDIFF_(BEGIN|END) comments.
  * R CMD build when there is no NAMESPACE, now uses the recommended
    exportPattern("^[^.]"), instead of exporting everything.
  * R CMD check now warns about non-ASCII characters in the NAMESPACE
    file (in addition to R files). Such packages are not portable and
    may fail to install on some platforms.
  C-LEVEL FACILITIES:
  * Headers R_ext/Applic.h and R-ext/Linpack.h used to include
    R_ext/BLAS.h although this was undocumented and unneeded by their
    documented entry points.  They no longer do so.
  * New function R_missing(), factored out from do_missing(), used to
    fix PR#18579.
  * SEXP type S4SXP has been renamed to OBJSXP to support
    experimenting with alternative object systems.  The S4SXP value
    can still be used in C code but is now deprecated.  Based on
    contributions from the R Consortium's Object-Oriented Programming
    Working Group.
  * New function pow1p(x,y) for accurate (1+x)^y.
  * mkCharLenCE was incorrectly documented to take a size_t length
    but was implemented with int (and character strings in R are
    limited to 2^31 - 1 bytes).
  DEPRECATED AND DEFUNCT:
  * data() no longer handles zipped data from long-defunct (since R
    2.13.0) --use-zip-data installations.
  * The legacy graphics devices pictex() and xfig() are now
    deprecated.  They do not support recent graphics enhancements and
    their font handling is rudimentary. The intention is to retain
    them for historical interest as long as they remain somewhat
    functional.
  * Support for encoding = "MacRoman" has been removed from the pdf()
    and postscript() devices - this was a legacy encoding supporting
    classic macOS up to 2001 and no longer has universal libiconv
    support.
  * is.R() is deprecated as no other S dialect is known to be in use
    (and this could only identify historical dialects, not future
    ones).
    Further information on calls can be obtained by setting the
    environment variable _R_DEPRECATED_IS_R_ to error which turns the
    deprecation warning into an error and so by default gives a
    traceback.  (This is done by R CMD check --as-cran.)
  * UseMethod() no longer forwards local variables assigned in the
    generic function into method call environments before evaluating
    the method body. This makes method calls behave more like
    standard function calls and makes method code easier to analyze
    correctly.
  * The twelve as.data.frame.&lt;class&gt;() methods which were deprecated
    only via _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ and in R CMD
    check --as-cran are formally deprecated now in favour of calling
    as.data.frame() or as.data.frame.vector().  The deprecation
    "check" now works also when as.data.frame() is S4 generic thanks
    to Ivan Krylov.
  * The default method for the directional comparison operators &lt;, &gt;,
    &lt;=, and &gt;= now signals an error when one of the operands is a
    language object, i.e. a symbol or a call.
  * For terms.formula(), deprecate abb and neg.out arguments
    _formally_ in addition to just documenting it.
  BUG FIXES:
  * The methods package is more robust to not being attached to the
    search path.  More work needs to be done.
  * pairwise.t.test() misbehaved when subgroups had 0 DF for
    variance, even with pool.sd = TRUE.  (PR#18594 by Jack Berry).
  * Probability distribution functions [dpq]&lt;distrib&gt;(x, *), but also
    bessel[IKJY](x, .) now consistently preserve attributes(x) when
    length(x) == 0, e.g., for a 2 x 0 matrix, thanks to Karolis
    Koncevičius' report PR#18509.
  * Group "Summary" computations such as sum(1:3, 4, na.rm = 5, NA,
    7, na.rm = LL) now give an error instead of either 17 or NN for
    LL true or false, as proposed by Ivan Krylov on the R-devel
    mailing list.  (This also means it is now an error to specify
    na.rm more than once.)
  * as.complex(x) now returns complex(real = x, imaginary = 0) for
    _all_ numerical and logical x, notably also for NA or
    NA_integer_.
  * Directories are now omitted by file.copy(, recursive = FALSE) and
    in file.append() (PR#17337).
  * gsub() and sub() are now more robust to integer overflow when
    reporting errors caused by too large input strings (PR#18346).
  * Top-level handlers are now more robust to attempts to remove a
    handler whilst handlers are running (PR#18508).
  * The handling of Alt+F4 in dialogs created on Windows using
    GraphApp has been fixed (PR#13870).
  * density() more consistently computes grid values for the
    FFT-based convolution, following Robert Schlicht's analysis and
    proposal in PR#18337, correcting density values typically by a
    factor of about 0.999.  Argument old.coords = TRUE provides back
    compatibility.
  * palette.colors() gains a name argument that defaults to FALSE
    controlling whether the vector of colours that is returned has
    names (where possible).  PR#18529.
  * tools::xgettext() no longer extracts the (non-translatable) class
    names from warningCondition and errorCondition calls.
  * S3method(&lt;gen&gt;, &lt;class&gt;, &lt;func&gt;) in the NAMESPACE file now works
    (again) when &lt;func&gt; is visible from the namespace, e.g.,
    imported, or in base.
  * getParseData(f) now also works for a function defined in the
    first of several &lt;pkg&gt;/R/*.R source files, thanks to Kirill
    Müller's report and Duncan Murdoch's patch in PR#16756.
  * Rd \Sexpr macros with nested #ifdef conditionals were not
    processed.
  * A non-blocking connection with non-default encoding (such as a
    socket) now correctly returns from readLines() after new data has
    arrived also when its EOF had been reached previously.  Thanks to
    Peter Meilstrup's report on R-devel and Ivan Krylov's report and
    patch proposal in PR#18555.
  * tools::checkRdContents() failed to detect empty argument
    descriptions when they spanned multiple lines, including those
    generated by prompt().  These cases are now noted by R CMD check.
  * Plain-text help no longer outputs spurious colons in the
    arguments list (for multi-line \item labels in the Rd source).
  * kappa() and rcond() work correctly in more cases; kappa(., norm =
    "2") now warns that it computes the 1-norm with (default) exact =
    FALSE; prompted by Mikael Jagan's quite comprehensive PR#18543.
  * Rd skeletons generated by prompt() or promptData() now use a
    dummy title (so R CMD build works).  tools::checkRdContents() has
    been updated to detect such template leftovers, including from
    promptPackage().
  * When S4 method dispatch fails because no method was found, the
    error message now includes the signature argument names; thanks
    to Michael Chirico's proposal on the R-devel list.
  * withAutoprint({ .. }) now preserves srcrefs previously lost,
    thanks to Andrew Simmons' report plus fix in PR#18572.
  * transform.data.frame() no longer adjusts names; in particular,
    untransformed variables are kept as-is, including those with
    syntactically invalid names (PR#17890).
  * The keep.source option for Rd \Sexpr blocks is no longer ignored.
  * The formula methods for t.test() and wilcox.test() now catch when
    paired is passed, addressing PR#14359; use Pair(x1, x2) ~ 1 for a
    paired test.
  * The level reported in the browser prompt was often too large. It
    now shows the number of browser contexts on the stack.
  * For cbind() and rbind(), the optional deparse.level argument is
    now properly passed to methods, thanks to Mikael Jagan's PR#18579
    and comments there.
  * Some error and warning messages for large ('long vector')
    matrix(v, nr, nc) and dim(m) &lt;- d are now correct about sizes,
    using long long formatting, fixing PR#18612 (and more) reported
    by Mikael Jagan.
  * readChar(useBytes = TRUE) now terminates strings even when the
    underlying connection uses extra spaces in the input buffer.
    This fixes problems with extra garbage seen with gzip
    connections, PR#18605.
  * Named capture in PCRE regular expressions now works also with
    more than 127 named groups (PR#18588).
  * Datetime functions are now robust against long jumps when dealing
    with internal time zone changes.  This avoids confusing warnings
    about an invalid time zone, previously triggered by turning
    warnings into errors or handling them via tryCatch (PR#17966,
    PR#17780).
  * Datetime functions now restore even an empty TZ environment
    variable after internal time zone changes (PR#17724).  This makes
    results of datetime functions with this (typically unintentional)
    setting more predictable.
  * drop.terms(*) now drops response as by default, keep.response =
    FALSE, fixing PR#18564 thanks to Mikael Jagan.
  * dummy.coef(.) now also works for lm()-models with character
    categorical predictor variables rather than factor ones, fixing
    PR#18635 reported by Jinsong Zhao.
  * formals(f) &lt;- formals(f) now also works for a function w/o
    arguments and atomic _constant_ body(f).
  * Correct as.function(&lt;invalid list&gt;, .)'s error message.
  * removeSource() is yet more thorough in finding and removing
    "srcref" and the other source references from parsed R language
    chunks, fixing PR#18638 thanks to Andrew Simmons.
  * dgeom() is more accurate now, notably when its result is very
    small, fixing PR#18642 thanks to the proposal of Morten Welinder,
    also improving other instances where C level binom_raw(x, n, ..)
    has x == 0 or x== n.
  * warning() with options(warn = 1) has improved output for
    multi-line messages.
  * axis.Date() and axis.POSIXct() now respect the par("lab") setting
    for the number of pretty() intervals.
  * Comparisons for language objects (which are based on deparsing)
    are now more careful about using accurate deparsed results
    (PR#18676).
  * Plain-text help (Rd2txt) now correctly preserves blank lines
    following single-line \dontrun code.
  * &lt;POSIXlt&gt;[*] no longer sets wrong "balanced" attribute, fixing
    PR#18681 thanks to Mikael Jagan.
  * str(&lt;classed-call&gt;) now deparses the call as expected, fixing
    PR#18684, reported by Dave Slager.
  * In Rd examples, code following the closing brace of a \dontrun,
    \dontshow or \donttest tag on the same line is no longer skipped
    when R CMD check runs the examples.
  * as.data.frame(matrix(*, ncol=0)) now gets valid names() and
    colnames(); reported by Davis Vaughan on the R-devel list.
  * Internal Mathlib function stirlerr(n) is now almost fully
    (52-bit) accurate for all n &gt;= ~5.9 and more accurate also in the
    range 1 -- 5.9.  This entails small ("after 12th decimal")
    changes in density functions, e.g., dgamma() in _some_ regions of
    their support.  The fix was partly prompted by Morten Welinder's
    PR#18640.
  * Numbers like 9876543.2 are now considered non-integer by Mathlib
    internal R_nonint(), amending original fix of PR#15734.
  * Rd comment lines no longer cause broken paragraphs in the
    rendered PDF and plain-text help. In code blocks, pure comment
    lines (starting with %) no longer produce an empty line.
  * xtabs(Freq ~ .) now consistently defaults to na.action = na.pass,
    using na.rm = FALSE (added as an argument) when summing over Freq
    (PR#17770).
  * tools::testInstalledPackage() is no longer silent about failures
    from running examples or tests and its return code no longer
    ignores failures from checking vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1718366400">- CHANGES IN R 4.4.1:
  C-LEVEL FACILITIES:
  * Functions R_atof and R_strtod declared in header R_ext/Utils.h
    are now documented in 'Writing R Extensions' and so formally part
    of the API.
  * The non-API entry points Rf_setSVector, Rf_StringFalse,
    Rf_StringTrue and Rf_isBlankString have been added to those
    reported by R CMD check.
  * The new function Rf_allocLang is now available. This provides an
    alternative to the idiom of calling Rf_allocList followed by
    SET_TYPEOF.
  UTILITIES:
  * R CMD check now reports as warnings what gfortran calls 'Fortran
    2018 deleted features', all of which have long been marked as
    'obsolescent' and some of which were deleted in Fortran 2008 or
    earlier.  Fortran compilers are no longer required to support
    these.
  BUG FIXES:
  * as.numeric(), scan(), type.convert() and other places which use
    the internal C function R_strtod now require a _non-empty_ digit
    sequence in a decimal or binary exponent.  This aligns with the
    C/POSIX standard for strtod and with ?NumericConstants.
  * as.data.frame(m, make.names=NA) now works correctly for a matrix
    m with NA's in row names.
  * The error message from &lt;POSIXlt&gt;[["hour"]] and similar now
    mentions *[[, "hour"]], as wished for in PR#17409 and proposed by
    Michael Chirico.
  * qbinom() and potentially qpois(), qnbinom(), no longer sometimes
    fail accurate inversion (of pbinom(), etc), thanks to Christopher
    Chang's report and patch in PR#18711.
  * The internal help server on Windows can again serve requests sent
    in quick succession, fixing a regression in R 4.4.0.
  * debugcall(&lt;S3Generic&gt;()) now also works when a corresponding
    S4-generic version is in the methods cache (PR#18143).
  * Package tools' toTitleCase(ch0) now returns character(0) when ch0
    is of zero length; fixing PR#18724, reported by David Hugh Jones.
  * R CMD check is no longer broken (without a check result and no
    explanation in 00check.log) for a package which declares an
    invalid VignetteBuilder in DESCRIPTION but has no vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1730376000">- CHANGES IN R 4.4.2:
  C-LEVEL FACILITIES:
  * The S-compatibility macros F77_COM and F77_COMDECL defined in
    header R_ext/RS.h are deprecated and will be removed shortly.  We
    could find no record of their use.
  BUG FIXES:
  * Mathlib function lgammacor(x) no longer warns about underflow to
    zero for large x.
  * Text widths and heights were incorrectly reported by the Quartz
    device if the drawing context didn't exist yet (typically when
    drawing off-screen to a window that is yet to appear, see
    PR#18591).
  * The Quartz device could segfault in cases where paths with spaces
    are used in the new glyph drawing API.  Thanks to Tomek
    Gieorgijewski (PR#18758).
  * On macOS in R CRAN builds, it is again possible to read
    little-endian UTF-16 text with a BOM from a connection using
    encoding="UTF-16".  Users building R from source should avoid
    using the system libiconv in macOS 14.1 and later.
  * methods' internal .requirePackage() now re-enables primitive
    method dispatch when needed; thanks to Ivan Krylov for
    demystifying CRAN package check failures on the R-devel mailing
    list.</changelog>
</package>
<package pkgid="7773326432bb2e707995413eba33ba4d036b220e5e07e0f24ae8d3037d656b6c92a6842c4dc193fd5fa899a74974aa573410461145717828f63df9558bf76568" name="R-core-libs-debuginfo" arch="i586">
  <version epoch="0" ver="4.4.2" rel="51.0.2.2.sr20241103"/>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1620302400">- To get in sync with d:l:R:autoCRAN the Matrix package's split
  in -devel was reversed.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339200">- improved spec file according to comments of dimstar in
  https://build.opensuse.org/request/show/892685</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339201">- CHANGES IN R 4.1.0:
  FUTURE DIRECTIONS:
  * It is planned that the 4.1.x series will be the last to support
    32-bit Windows, with production of binary packages for that
    series continuing until early 2023.
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Data set esoph in package datasets now provides the correct
    numbers of controls; previously it had the numbers of cases added
    to these.  (Reported by Alexander Fowler in PR#17964.)
  NEW FEATURES:
  * www.omegahat.net is no longer one of the repositories known by
    default to setRepositories().  (Nowadays it only provides source
    packages and is often unavailable.)
  * Function package_dependencies() (in package tools) can now use
    different dependency types for direct and recursive dependencies.
  * The checking of the size of tarball in R CMD check --as-cran
    &lt;pkg&gt; may be tweaked via the new environment variable
    _R_CHECK_CRAN_INCOMING_TARBALL_THRESHOLD_, as suggested in
    PR#17777 by Jan Gorecki.
  * Using c() to combine a factor with other factors now gives a
    factor, an ordered factor when combining ordered factors with
    identical levels.
  * apply() gains a simplify argument to allow disabling of
    simplification of results.
  * The format() method for class "ftable" gets a new option justify.
    (Suggested by Thomas Soeiro.)
  * New ...names() utility.  (Proposed by Neal Fultz in PR#17705.)
  * type.convert() now warns when its as.is argument is not
    specified, as the help file always said it _should_.  In that
    case, the default is changed to TRUE in line with its change in
    read.table() (related to stringsAsFactor) in R 4.0.0.
  * When printing list arrays, classed objects are now shown _via_
    their format() value if this is a short enough character string,
    or by giving the first elements of their class vector and their
    length.
  * capabilities() gets new entry "Rprof" which is TRUE when R has
    been configured with the equivalent of --enable-R-profiling (as
    it is by default).  (Related to Michael Orlitzky's report
    PR#17836.)
  * str(xS4) now also shows extraneous attributes of an S4 object
    xS4.
  * Rudimentary support for vi-style tags in rtags() and R CMD rtags
    has been added.  (Based on a patch from Neal Fultz in PR#17214.)
  * checkRdContents() is now exported from tools; it and also
    checkDocFiles() have a new option chkInternal allowing to check
    Rd files marked with keyword "internal" as well.  The latter can
    be activated for R CMD check via environment variable
    _R_CHECK_RD_INTERNAL_TOO_.
  * New functions numToBits() and numToInts() extend the raw
    conversion utilities to (double precision) numeric.
  * Functions URLencode() and URLdecode() in package utils now work
    on vectors of URIs.  (Based on patch from Bob Rudis submitted
    with PR#17873.)
  * path.expand() can expand ~user on most Unix-alikes even when
    readline is not in use.  It tries harder to expand ~, for example
    should environment variable HOME be unset.
  * For HTML help (both dynamic and static), Rd file links to help
    pages in external packages are now treated as references to
    topics rather than file names, and fall back to a file link only
    if the topic is not found in the target package. The earlier rule
    which prioritized file names over topics can be restored by
    setting the environment variable _R_HELP_LINKS_TO_TOPICS_ to a
    false value.
  * c() now removes NULL arguments before dispatching to methods,
    thus simplifying the implementation of c() methods, _but_ for
    back compatibility keeps NULL when it is the first argument.
    (From a report and patch proposal by Lionel Henry in PR#17900.)
  * Vectorize()'s result function's environment no longer keeps
    unneeded objects.
  * Function ...elt() now propagates visibility consistently with
    ..n.  (Thanks to Lionel Henry's PR#17905.)
  * capture.output() no longer uses non-standard evaluation to
    evaluate its arguments.  This makes evaluation of functions like
    parent.frame() more consistent.  (Thanks to Lionel Henry's
    PR#17907.)
  * packBits(bits, type="double") now works as inverse of
    numToBits().  (Thanks to Bill Dunlap's proposal in PR#17914.)
  * curlGetHeaders() has two new arguments, timeout to specify the
    timeout for that call (overriding getOption("timeout")) and TLS
    to specify the minimum TLS protocol version to be used for
    https:// URIs (_inter alia_ providing a means to check for sites
    using deprecated TLS versions 1.0 and 1.1).
  * For nls(), an optional constant scaleOffset may be added to the
    denominator of the relative offset convergence test for cases
    where the fit of a model is expected to be exact, thanks to a
    proposal by John Nash.  nls(*, trace=TRUE) now also shows the
    convergence criterion.
  * Numeric differentiation _via_ numericDeriv() gets new optional
    arguments eps and central, the latter for taking central divided
    differences.  The latter can be activated for nls() via
    nls.control(nDcentral = TRUE).
  * nls() now passes the trace and control arguments to getInitial(),
    notably for all self-starting models, so these can also be fit in
    zero-noise situations via a scaleOffset.  For this reason, the
    initial function of a selfStart model must now have ... in its
    argument list.
  * bquote(splice = TRUE) can now splice expression vectors with
    attributes: this makes it possible to splice the result of
    parse(keep.source = TRUE).  (Report and patch provided by Lionel
    Henry in PR#17869.)
  * textConnection() gets an optional name argument.
  * get(), exists(), and get0() now signal an error if the first
    argument has length greater than 1.  Previously additional
    elements were silently ignored.  (Suggested by Antoine Fabri on
    R-devel.)
  * R now provides a shorthand notation for creating functions, e.g.
    \(x) x + 1 is parsed as function(x) x + 1.
  * R now provides a simple native forward pipe syntax |&gt;.  The
    simple form of the forward pipe inserts the left-hand side as the
    first argument in the right-hand side call.  The pipe
    implementation as a syntax transformation was motivated by
    suggestions from Jim Hester and Lionel Henry.
  * all.equal(f, g) for functions now by default also compares their
    environment(.)s, notably via new all.equal method for class
    function.  Comparison of nls() fits, e.g., may now need
    all.equal(m1, m2, check.environment = FALSE).
  * .libPaths() gets a new option include.site, allowing to _not_
    include the site library.  (Thanks to Dario Strbenac's suggestion
    and Gabe Becker's PR#18016.)
  * Lithuanian translations are now available.  (Thanks to Rimantas
    Zakauskas.)
  * names() now works for DOTSXP objects.  On the other hand, in
    R-lang, the R language manual, we now warn against relying on the
    structure or even existence of such dot-dot-dot objects.
  * all.equal() no longer gives an error on DOTSXP objects.
  * capabilities("cairo") now applies only to the file-based devices
    as it is now possible (if very unusual) to build R with Cairo
    support for those but not for X11().
  * There is optional support for tracing the progress of
    loadNamespace() - see its help.
  * (Not Windows.)  l10n_info() reports an additional element, the
    name of the encoding as reported by the OS (which may differ from
    the encoding part (if any) of the result from
    Sys.getlocale("LC_CTYPE").
  * New function gregexec() which generalizes regexec() to find _all_
    disjoint matches and well as all substrings corresponding to
    parenthesized subexpressions of the given regular expression.
    (Contributed by Brodie Gaslam.)
  * New function charClass() in package utils to query the
    wide-character classification functions in use (such as
    iswprint).
  * The names of quantile()'s result no longer depend on the global
    getOption("digits"), but quantile() gets a new optional argument
    digits = 7 instead.
  * grep(), sub(), regexp and variants work considerably faster for
    long factors with few levels.  (Thanks to Michael Chirico's
    PR#18063.)
  * Provide grouping of x11() graphics windows within a window
    manager such as Gnome or Unity; thanks to a patch by Ivan Krylov
    posted to R-devel.
  * The split() method for class data.frame now allows the f argument
    to be specified as a formula.
  * sprintf now warns on arguments unused by the format string.
  * New palettes "Rocket" and "Mako" for hcl.colors() (approximating
    palettes of the same name from the 'viridisLite' package).
    Contributed by Achim Zeileis.
  * The base environment and its namespace are now locked (so one can
    no longer add bindings to these or remove from these).
  * Rterm handling of multi-byte characters has been improved,
    allowing use of such characters when supported by the current
    locale.
  * Rterm now accepts ALT+ +xxxxxxxx sequences to enter Unicode
    characters as hex digits.
  * Environment variable LC_ALL on Windows now takes precedence over
    LC_CTYPE and variables for other supported categories, matching
    the POSIX behaviour.
  * duplicated() and anyDuplicated() are now optimized for integer
    and real vectors that are known to be sorted via the ALTREP
    framework. Contributed by Gabriel Becker via PR#17993.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 14
    and so packages that provide graphics devices should be
    reinstalled.
  * Graphics devices should now specify deviceVersion to indicate
    what version of the graphics engine they support.
  * Graphics devices can now specify deviceClip.  If TRUE, the
    graphics engine will never perform any clipping of output itself.
    The clipping that the graphics engine does perform (for both
    canClip = TRUE and canClip = FALSE) has been improved to avoid
    producing unnecessary artifacts in clipped output.
  * The grid package now allows gpar(fill) to be a linearGradient(),
    a radialGradient(), or a pattern().  The viewport(clip) can now
    also be a grob, which defines a clipping path, and there is a new
    viewport(mask) that can also be a grob, which defines a mask.
    These new features are only supported so far on the Cairo-based
    graphics devices and on the pdf() device.
  * (Not Windows.)  A warning is given when a Cairo-based type is
    specified for a png(), jpeg(), tiff() or bmp() device but Cairo
    is unsupported (so type = "Xlib" is tried instead).
  * grSoftVersion() now reports the versions of FreeType and
    FontConfig if they are used directly (not _via_ Pango), as is
    most commonly done on macOS.
  C-LEVEL FACILITIES:
  * The _standalone_ libRmath math library and R's C API now provide
    log1pexp() again as documented, and gain log1mexp().
  INSTALLATION on a UNIX-ALIKE:
  * configure checks for a program pkgconf if program pkg-config is
    not found.  These are now only looked for on the path (like
    almost all other programs) so if needed specify a full path to
    the command in PKG_CONFIG, for example in file config.site.
  * C99 function iswblank is required - it was last seen missing ca
    2003 so the workaround has been removed.
  * There are new configure options --with-internal-iswxxxxx,
  - -with-internal-towlower and --with-internal-wcwidth which allows
    the system functions for wide-character classification,
    case-switching and width (wcwidth and wcswidth) to be replaced by
    internal ones.  The first has long been used on macOS, AIX (and
    Windows) but this enables it to be unselected there and selected
    for other platforms (it is the new default on Solaris).  The
    second is new in this version of R and is selected by default on
    macOS and Solaris.  The third has long been the default and
    remains so as it contains customizations for East Asian
    languages.
    System versions of these functions are often minimally
    implemented (sometimes only for ASCII characters) and may not
    cover the full range of Unicode points: for example Solaris (and
    Windows) only cover the Basic Multilingual Plane.
  * Cairo installations without X11 are more likely to be detected by
    configure, when the file-based Cairo graphics devices will be
    available but not X11(type = "cairo").
  * There is a new configure option --with-static-cairo which is the
    default on macOS.  This should be used when only static cairo
    (and where relevant, Pango) libraries are available.
  * Cairo-based graphics devices on platforms without Pango but with
    FreeType/FontConfig will make use of the latter for font
    selection.
  LINK-TIME OPTIMIZATION on a UNIX-ALIKE:
  * Configuring with flag --enable-lto=R now also uses LTO when
    installing the recommended packages.
  * R CMD INSTALL and R CMD SHLIB have a new flag --use-LTO to use
    LTO when compiling code, for use with R configured with
  - -enable-lto=R.  For R configured with --enable-lto, they have
    the new flag --no-use-LTO.
    Packages can opt in or out of LTO compilation _via_ a UseLTO
    field in the DESCRIPTION file.  (As usual this can be overridden
    by the command-line flags.)
  BUILDING R on Windows:
  * for GCC &gt;= 8, FC_LEN_T is defined in config.h and hence character
    lengths are passed from C to Fortran in _inter alia_ BLAS and
    LAPACK calls.
  * There is a new text file src/gnuwin32/README.compilation, which
    outlines how C/Fortran code compilation is organized and
    documents new features:
  * R can be built with Link-Time Optimization with a suitable
    compiler - doing so with GCC 9.2 showed several
    inconsistencies which have been corrected.
  * There is support for cross-compiling the C and Fortran code
    in R and standard packages on suitable (Linux) platforms.
    This is mainly intended to allow developers to test later
    versions of compilers - for example using GCC 9.2 or 10.x has
    detected issues that GCC 8.3 in Rtools40 does not.
  * There is experimental support for cross-building R packages
    with C, C++ and/or Fortran code.
  * The R installer can now be optionally built to support a single
    architecture (only 64-bit or only 32-bit).
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++14 where
    available (which it is on all currently checked platforms): if
    not (as before) C++11 is used if available otherwise C++ is not
    supported.
    Packages which specify C++11 will still be installed using C++11.
    C++14 compilers may give deprecation warnings, most often for
    std::random_shuffle (deprecated in C++14 and removed in C++17).
    Either specify C++11 (see 'Writing R Extensions') or modernize
    the code and if needed specify C++14.  The latter has been
    supported since R 3.4.0 so the package's DESCRIPTION would need
    to include something like
    Depends: R (&gt;= 3.4)
  PACKAGE INSTALLATION on Windows:
  * R CMD INSTALL and R CMD SHLIB make use of their flag --use-LTO
    when the LTO_OPT make macro is set in file etc/${R_ARCH}/Makeconf
    or in a personal/site Makevars file.  (For details see 'Writing R
    Extensions' SS4.5.)
    This provides a valuable check on code consistency.  It does work
    with GCC 8.3 as in Rtools40, but that does not detect everything
    the CRAN checks with current GCC do.
  PACKAGE INSTALLATION on macOS:
  * The default personal library directory on builds with
  - -enable-aqua (including CRAN builds) now differs by CPU type,
    one of
    ~/Library/R/x86_64/x.y/library
    ~/Library/R/arm64/x.y/library
    This uses the CPU type R (and hence the packages) were built for,
    so when a x86_64 build of R is run under Rosetta emulation on an
    arm64 Mac, the first is used.
  UTILITIES:
  * R CMD check can now scan package functions for bogus return
    statements, which were possibly intended as return() calls (wish
    of PR#17180, patch by Sebastian Meyer). This check can be
    activated via the new environment variable
    _R_CHECK_BOGUS_RETURN_, true for --as-cran.
  * R CMD build omits tarballs and binaries of previous builds from
    the top-level package directory.  (PR#17828, patch by Sebastian
    Meyer.)
  * R CMD check now runs sanity checks on the use of LazyData, for
    example that a data directory is present and that
    LazyDataCompression is not specified without LazyData and has a
    documented value.  For packages with large LazyData databases
    without specifying LazyDataCompression, there is a reference to
    the code given in 'Writing R Extensions' SS1.1.6 to test the
    choice of compression (as in all the CRAN packages tested a
    non-default method was preferred).
  * R CMD build removes LazyData and LazyDataCompression fields from
    the DESCRIPTION file of packages without a data directory.
  ENCODING-RELATED CHANGES:
  * The parser now treats \Unnnnnnnn escapes larger than the upper
    limit for Unicode points (\U10FFFF) as an error as they cannot be
    represented by valid UTF-8.
    Where such escapes are used for outputting non-printable
    (including unassigned) characters, 6 hex digits are used (rather
    than 8 with leading zeros).  For clarity, braces are used, for
    example \U{0effff}.
  * The parser now looks for non-ASCII spaces on Solaris (as
    previously on most other OSes).
  * There are warnings (including from the parser) on the use of
    unpaired surrogate Unicode points such as \uD834.  (These cannot
    be converted to valid UTF-8.)
  * Functions nchar(), tolower(), toupper() and chartr() and those
    using regular expressions have more support for inputs with a
    marked Latin-1 encoding.
  * The character-classification functions used (by default) to
    replace the system iswxxxxx functions on Windows, macOS and AIX
    have been updated to Unicode 13.0.0.
    The character-width tables have been updated to include new
    assignments in Unicode 13.0.0.
  * The code for evaluating default (extended) regular expressions
    now uses the same character-classification functions as the rest
    of R (previously they differed on Windows, macOS and AIX).
  * There is a build-time option to replace the system's
    wide-character wctrans C function by tables shipped with R: use
    configure option --with-internal-towlower or (on Windows)
  - DUSE_RI18N_CASE in CFLAGS when building R.  This may be needed
    to allow tolower() and toupper() to work with Unicode characters
    beyond the Basic Multilingual Plane where not supported by system
    functions (e.g. on Solaris where it is the new default).
  * R is more careful when truncating UTF-8 and other multi-byte
    strings that are too long to be printed, passed to the system or
    libraries or placed into an internal buffer.  Truncation will no
    longer produce incomplete multibyte characters.
  DEPRECATED AND DEFUNCT:
  * Function plclust() from the package stats and
    package.dependencies(), pkgDepends(), getDepList(),
    installFoundDepends(), and vignetteDepends() from package tools
    are defunct.
  * Defunct functions checkNEWS() and readNEWS() from package tools
    and CRAN.packages() from utils have been removed.
  * R CMD config CXXCPP is defunct (it was deprecated in R 3.6.2).
  * parallel::detectCores() drops support for Irix (retired in 2013).
  * The LINPACK argument to chol.default(), chol2inv(),
    solve.default() and svd() has been defunct since R 3.1.0.  It was
    silently ignored up to R 4.0.3 but now gives an error.
  * Subsetting/indexing, such as ddd[*] or ddd$x on a DOTSXP
    (dot-dot-dot) object ddd has been disabled; it worked by accident
    only and was undocumented.
  BUG FIXES:
  * Many more C-level allocations (mainly by malloc and strdup) are
    checked for success with suitable alternative actions.
  * Bug fix for replayPlot(); this was turning off graphics engine
    display list recording if a recorded plot was replayed in the
    same session.  The impact of the bug became visible if resize the
    device after replay OR if attempted another savePlot() after
    replay (empty display list means empty screen on resize or empty
    saved plot).
  * R CMD check etc now warn when a package exports non-existing S4
    classes or methods, also in case of no "methods" presence.
    (Reported by Alex Bertram; reproducible example and patch by
    Sebastian Meyer in PR#16662.)
  * boxplot() now also accepts calls for labels such as ylab, the
    same as plot().  (Reported by Marius Hofert.)
  * The help page for xtabs() now correctly states that addNA is
    setting na.action = na.pass among others.  (Reported as PR#17770
    by Thomas Soeiro.)
  * The R CMD check &lt;pkg&gt; gives a longer and more comprehensible
    message when DESCRIPTION misses dependencies, e.g., in Imports:.
    (Thanks to the contributors of PR#17179.)
  * update.default() now calls the generic update() on the formula to
    work correctly for models with extended formulas.  (As reported
    and suggested by Neal Fultz in PR#17865.)
  * The horizontal position of leaves in a dendrogram is now correct
    also with center = FALSE.  (PR#14938, patch from Sebastian
    Meyer.)
  * all.equal.POSIXt() no longer warns about and subsequently ignores
    inconsistent "tzone" attributes, but describes the difference in
    its return value (PR#17277).  This check can be disabled _via_
    the new argument check.tzone = FALSE as suggested by Sebastian
    Meyer.
  * as.POSIXct() now populates the "tzone" attribute from its tz
    argument when x is a logical vector consisting entirely of NA
    values.
  * x[[2^31]] &lt;- v now works.  (Thanks to the report and patch by
    Suharto Anggono in PR#17330.)
  * In log-scale graphics, axis() ticks and label positions are now
    computed more carefully and symmetrically in their range,
    typically providing _more_ ticks, fulfilling wishes in PR#17936.
    The change really corresponds to an improved axisTicks() (package
    grDevices), potentially influencing grid and lattice, for
    example.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now correct to at
    least five digits where it was catastrophically wrong,
    previously.
  * sum(df) and similar "Summary"- and "Math"-group member functions
    now work for data frames df with logical columns, notably also of
    zero rows.  (Reported to R-devel by Martin "b706".)
  * unsplit() had trouble with tibbles due to unsound use of rep(NA,
    len)-indexing, which should use NA_integer_ (Reported to R-devel
    by Mario Annau.)
  * pnorm(x, log.p = TRUE) underflows to -Inf slightly later.
  * show(&lt;hidden S4 generic&gt;) prints better and without quotes for
    non-hidden S4 generics.
  * read.table() and relatives treated an "NA" column name as missing
    when check.names = FALSE PR#18007.
  * Parsing strings containing UTF-16 surrogate pairs such as
    "\uD834\uDD1E" works better on some (uncommon) platforms.
    sprintf("%X", utf8ToInt("\uD834\uDD1E")) should now give "1D11E"
    on all platforms.
  * identical(x,y) is no longer true for differing DOTSXP objects,
    fixing PR#18032.
  * str() now works correctly for DOTSXP and related exotics, even
    when these are doomed.
    Additionally, it no longer fails for lists with a class and
    "irregular" method definitions such that e.g. lapply(*) will
    necessarily fail, as currently for different igraph objects.
  * Too long lines in environment files (e.g. Renviron) no longer
    crash R. This limit has been increased to 100,000 bytes.
    (PR#18001.)
  * There is a further workaround for FreeType giving incorrect
    italic font faces with cairo-based graphics devices on macOS.
  * add_datalist(*, force = TRUE) (from package tools) now actually
    updates an existing data/datalist file for new content.  (Thanks
    to a report and patch by Sebastian Meyer in PR#18048.)
  * cut.Date() and cut.POSIXt() could produce an empty last interval
    for breaks = "months" or breaks = "years".  (Reported as PR#18053
    by Christopher Carbone.)
  * Detection of the encoding of 'regular' macOS locales such as
    en_US (which is UTF-8) had been broken by a macOS change:
    fortunately these are now rarely used with en_US.UTF-8 being
    preferred.
  * sub() and gsub(pattern, repl, x, *) now keep attributes of x such
    as names() also when pattern is NA (PR#18079).
  * Time differences ("difftime" objects) get a replacement and a
    rep() method to keep "units" consistent.  (Thanks to a report and
    patch by Nicolas Bennett in PR#18066.)
  * The \RdOpts macro, setting defaults for \Sexpr options in an Rd
    file, had been ineffective since R 2.12.0: it now works again.
    (Thanks to a report and patch by Sebastian Meyer in PR#18073.)
  * mclapply and pvec no longer accidentally terminate parallel
    processes started before by mcparallel or related calls in
    package parallel (PR#18078).
  * grep and other functions for evaluating (extended) regular
    expressions handle in Unicode also strings not explicitly flagged
    UTF-8, but flagged native when running in UTF-8 locale.
  * Fixed a crash in fifo implementation on Windows (PR#18031).
  * Binary mode in fifo on Windows is now properly detected from
    argument open (PR#15600, PR#18031).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1622808000">- The line %{__install} -m 755 -d %{_infodir}
  no longer works in TW or Factory.
  But without that line it works everywhere. So this instruction
  was commented out of the spec file.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1628596800">- CHANGES IN R 4.1.1:
  NEW FEATURES:
  * require(pkg, quietly = TRUE) is quieter and in particular does
    not warn if the package is not found.
  DEPRECATED AND DEFUNCT:
  * Use of ftp:// URIs should be regarded as deprecated, with
    on-going support confined to method = "libcurl" and not routinely
    tested.  (Nowadays no major browser supports them.)
  * The non-default method = "internal" is deprecated for http:// and
    ftp:// URIs for both download.file and url.
  * On Windows, method = "wininet" is deprecated for http://,
    https:// and ftp:// URIs for both download.file and url.  (A
    warning is only given for ftp://.)
    For ftp:// URIs the default method is now "libcurl" if available
    (which it is on CRAN builds).
    method = "wininet" remains the default for http:// and https://
    URIs but if libcurl is available, using method = "libcurl" is
    preferred.
  INSTALLATION:
  * make check now works also without a LaTeX installation.  (Thanks
    to Sebastian Meyer's PR#18103.)
  BUG FIXES:
  * make check-devel works again in an R build configured with
  - -without-recommended-packages.
  * qnbinom(p, size, mu) for large size/mu is correct now in a range
    of cases (PR#18095); similarly for the (size, prob)
    parametrization of the negative binomial.  Also qpois() and
    qbinom() are better and or faster for extreme cases.  The
    underlying C code has been modularized and is common to all four
    cases of discrete distributions.
  * gap.axis is now part of the axis() arguments which are passed
    from bxp(), and hence boxplot().  (Thanks to Martin Smith's
    report and suggestions in PR#18109.)
  * .First and .Last can again be set from the site profile.
  * seq.int(from, to, *) and seq.default(..) now work better in large
    range cases where from-to is infinite where the two boundaries
    are finite.
  * all.equal(x,y) now returns TRUE correctly also when several
    entries of abs(x) and abs(y) are close to .Machine$double.xmax,
    the largest finite numeric.
  * model.frame() now clears the object bit when removing the class
    attribute of a value via na.action (PR#18100).
  * charClass() now works with multi-character strings on Windows
    (PR#18104, fixed by Bill Dunlap).
  * encodeString() on Solaris now works again in Latin-1 encoding on
    characters represented differently in UTF-8.  Support for
    surrogate pairs on Solaris has been improved.
  * file.show() on Windows now works with non-ASCII path names
    representable in the current native encoding (PR#18132).
  * Embedded R on Windows can now find R home directory via the
    registry even when installed only for the current user
    (PR#18135).
  * pretty(x) with finite x now returns finite values also in the
    case where the extreme x values are close in size to the maximal
    representable number .Machine$double.xmax.
    Also, it's been tweaked for very small ranges and when a boundary
    is close (or equal) to zero; e.g., pretty(c(0,1e-317)) no longer
    has negative numbers, currently still warning about a very small
    range, and pretty(2^-(1024 - 2^-1/(c(24,10)))) is more accurate.
  * The error message for not finding vignette files when weaving has
    correct file sizes now. (Thanks to Sebastian Meyer's PR#18154.)
  * dnbinom(20, &lt;large&gt;, 1) now correctly gives 0, and similar cases
    are more accurate with underflow precaution.  (Reported by Francisco Vera Alcivar in PR#18072.)</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635163200">- repaired https://bugzilla.suse.com/show_bug.cgi?id=1191380
  (rpmacros now go to rpmmacrodir)
- minor clean-ups in spec file</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635768000">- CHANGES IN R 4.1.2:
  C-LEVEL FACILITIES:
  * The workaround in headers R.h and Rmath.h (using namespace std;)
    for the Oracle Developer Studio compiler is no longer needed now
    C++11 is required so has been removed.  A couple more usages of
    log() (which should have been std::log()) with an int argument
    are reported on Solaris.
  * The undocumented limit of 4095 bytes on messages from the
    S-compatibility macros PROBLEM and MESSAGE is now documented and
    longer messages will be silently truncated rather than
    potentially causing segfaults.
  * If the R_NO_SEGV_HANDLER environment variable is non-empty, the
    signal handler for SEGV/ILL/BUS signals (which offers recovery
    user interface) is not set. This allows more reliable debugging
    of crashes that involve the console.
  DEPRECATED AND DEFUNCT:
  * The legacy S-compatibility macros PROBLEM, MESSAGE, ERROR, WARN,
    WARNING, RECOVER, ... are deprecated and will be hidden in R
    4.2.0. R's native interface of Rf_error and Rf_warning has long
    been preferred.
  BUG FIXES:
  * .mapply(F, dots, .) no longer segfaults when dots is not a list
    and uses match.fun(F) as always documented; reported by Andrew
    Simmons in PR#18164.
  * hist(&lt;Date&gt;, ...) and hist(&lt;POSIXt&gt;, ...)  no longer pass
    arguments for rect() (such as col and density) to axis().
    (Thanks to Sebastian Meyer's PR#18171.)
  * \Sexpr{ch} now preserves Encoding(ch). (Thanks to report and
    patch by Jeroen Ooms in PR#18152.)
  * Setting the RNG to "Marsaglia-Multicarry" e.g., by RNGkind(), now
    warns in more places, thanks to Andr'e Gillibert's report and
    patch in PR#18168.
  * gray(numeric(), alpha=1/2) no longer segfaults, fixing PR#18183,
    reported by Till Krenz.
  * Fixed dnbinom(x, size=&lt;very_small&gt;, .., log=TRUE) regression,
    reported by Martin Morgan.
  * as.Date.POSIXlt(x) now keeps names(x), thanks to Davis Vaughan's
    report and patch in PR#18188.
  * model.response() now strips an "AsIs" class typically, thanks to
    Duncan Murdoch's report and other discussants in PR#18190.
  * try() is considerably faster in case of an error and long call,
    as e.g., from some do.call().  Thanks to Alexander Kaever's
    suggestion posted to R-devel.
  * qqline(y = &lt;object&gt;) such as y=I(.), now works, see also
    PR#18190.
  * Non-integer mgp par() settings are now handled correctly in
    axis() and mtext(), thanks to Mikael Jagan and Duncan Murdoch's
    report and suggestion in PR#18194.
  * formatC(x) returns length zero character() now, rather than ""
    when x is of length zero, as documented, thanks to Davis
    Vaughan's post to R-devel.
  * removeSource(fn) now retains (other) attributes(fn).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1647000000">- CHANGES IN R 4.1.3:
  NEW FEATURES:
  * The default version of Bioconductor has been changed to 3.14.
    (This is used by setRepositories and the menus in GUIs.)
  UTILITIES:
  * R CMD check --as-cran has a workaround for a bug in versions of
    file up to at least 5.41 which mis-identify DBF files last
    changed in 2022 as executables.
  C-LEVEL FACILITIES:
  * The legacy S-compatibility macros SINGLE_* in R_ext/Constants.h
    (included by R.h) are deprecated and will be removed in R 4.2.0.
  BUG FIXES:
  * Initialization of self-starting nls() models with initialization
    functions following the pre-R-4.1.0 API (without the ...
    argument) works again for now, with a deprecation warning.
  * Fixed quoting of ~autodetect~ in Java setting defaults to avoid
    inadvertent user lookup due to leading ~, reported in PR#18231 by
    Harold Gutch.
  * substr(., start, stop) &lt;- v now treats _negative_ stop values
    correctly.  Reported with a patch in PR#18228 by Brodie Gaslam.
  * Subscripting an array x without dimnames by a
    length(dim(x))-column character matrix gave "random" non-sense,
    now an error; reported in PR#18244 by Mikael Jagan.
  * ...names() now matches names(list(...)) closely, fixing PR#18247.
  * all.equal(*, scale = s) now works as intended when length(s) &gt; 1,
    partly thanks to Michael Chirico's PR#18272.
  * print(x) for long vectors x now also works for named atomic
    vectors or lists and prints the correct number when reaching the
    getOption("max.print") limit; partly thanks to a report and
    proposal by Hugh Parsonage to the R-devel list.
  * all.equal(&lt;selfStart&gt;, *) no longer signals a deprecation
    warning.
  * reformulate(*, response=r) gives a helpful error message now when
    length(r) &gt; 1, thanks to Bill Dunlap's PR#18281.
  * Modifying globalCallingHandlers inside withCallingHandlers() now
    works or fails correctly, thanks to Henrik Bengtsson's PR#18257.
  * hist(&lt;Date&gt;, breaks = "days") and hist(&lt;POSIXt&gt;, breaks = "secs")
    no longer fail for inputs of length 1.
  * qbeta(.001, .9, .009) and similar cases now converge correctly
    thanks to Ben Bolker's report in PR#17746.
  * window(x, start, end) no longer wrongly signals "'start' cannot
    be after 'end'", fixing PR#17527 and PR#18291.
  * data() now checks that its (rarely used) list argument is a
    character vector - a couple of packages passed other types and
    gave incorrect results.
  * which() now checks its arr.ind argument is TRUE rather coercing
    to logical and taking the first element - which gave incorrect
    results in package code.
  * model.weights() and model.offset() more carefully extract their
    model components, thanks to Ben Bolker and Tim Taylor's R-devel
    post.
  * list.files(recursive = TRUE) now shows all broken symlinks
    (previously, some of them may have been omitted, PR#18296).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1650628800">- CHANGES IN R 4.2.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * The formula method of aggregate() now matches the generic in
    naming its first argument x (resolving PR#18299 by Thomas
    Soeiro).
    This means that calling aggregate() with a formula as a named
    first argument requires name formula in earlier versions of R and
    name x now, so portable code should not name the argument (code
    in many packages did).
  * Calling &amp;&amp; or || with either argument of length greater than one
    now gives a warning (which it is intended will become an error).
  * Calling if() or while() with a condition of length greater than
    one gives an error rather than a warning.  Consequently,
    environment variable _R_CHECK_LENGTH_1_CONDITION_ no longer has
    any effect.
  * Windows users should consult the WINDOWS section below for some
    profound changes including
  * Support for 32-bit builds has been dropped.
  * UTF-8 locales are used where available.
  * The default locations for the R installation and personal
    library folder have been changed.
    Thanks to Tomas Kalibera for months of work on the Windows port
    for this release.
  NEW FEATURES:
  * matrix(x, n, m) now warns in more cases where length(x) differs
    from n * m, as suggested by Abby Spurdle and Wolfgang Huber in
    Feb 2021 on the R-devel mailing list.
    This warning can be turned into an error by setting environment
    variable _R_CHECK_MATRIX_DATA_ to TRUE: R CMD check --as-cran
    does so unless it is already set.
  * Function file_test() in package utils gains tests for symlinks,
    readability and writability.
  * capabilities("libxml") is now false.
    The description of capabilities("http/ftp") now reflects that it
    refers to the default method, no longer the internal one.
  * simplify2array() gains an except argument for controlling the
    exceptions used by sapply().
  * Environment variables R_LIBS_USER and R_LIBS_SITE are both now
    set to the R system default if unset or empty, and can be set to
    NULL to indicate an empty list of user or site library
    directories.
  * The warning for axis()(-like) calls in cases of relatively small
    ranges (typically in log-scale situations) is slightly improved
    _and_ suppressed from explicit calls to .axisPars() as has always
    been the intention.
  * The contrasts setter function `contrasts&lt;-` gains an explicit
    default how.many = NULL rather than just using missing(how.many).
  * grid.pretty() gains a new optional argument n = 5.
  * There is a new function .pretty() with option bounds as a
    technical-utility version of pretty().  It and pretty() gain a
    new argument f.min with a better than back-compatible default.
  * Function grDevices::axisTicks() and related functions such as
    graphics::axis() work better, notably for the log scale; partly
    because of the pretty() improvements, but also because care is
    taken e.g., when ylim is finite but diff(ylim) is infinite.
  * nclass.FD() gains a digits option.
  * The R Mathlib internal C function bd0() (called indirectly from a
    dozen probability density and distribution functions such as
    dpois(), dbinom(), dgamma(), pgamma() _etc_) has been
    complemented by a more sophisticated and (mostly) more accurate C
    function ebd0(), currently called only by internal dpois_raw()
    improving accuracy for R level dpois() and potentially others
    calling it such as dnbinom(), dgamma() or pgamma().  (Thanks to
    Morten Welinder's PR#15628.)
  * write.ftable() gains sep = " " argument as suggested by Thomas
    Soeiro.
  * The names of the locale categories supported by R's
    Sys.getlocale() and Sys.setlocale() are now provided by variable
    .LC.categories in the base namespace.
  * The Date and POSIXt methods for hist() and the histogram method
    for plot() now also use the new default col = "lightgray" in
    consistency with the corresponding change to hist()'s default for
    R 4.0.0.
  * hist.default() gains new fuzz argument, and the histogram plot
    method no longer uses fractional axis ticks when displaying
    counts ("Frequency").
  * mapply() and hence Map() now also obey the "max-or-0-if-any"
    recycling rule, such that, e.g., Map(`+`, 1:3, 1[0]) is valid
    now.
  * as.character(&lt;obj&gt;) for "hexmode" or "octmode" objects now
    fulfils the important basic rule as.character(x)[j] ===
    as.character(x[j]).
  * The set utility functions, notably intersect() have been tweaked
    to be more consistent and symmetric in their two set arguments,
    also preserving a common mode.
  * substr(ch, start,end) &lt;- new now e.g., preserves names(ch); ditto
    for substring(), thanks to a patch from Brodie Gaslam.
  * plot(&lt;lm&gt;) gains a extend.ylim.f argument, in partial response to
    PR#15285; further PR#17784 is fixed thanks to several
    contributors and a patch by Elin Waring.  The Cook's dist
    contours get customizable via cook.col and cook.lty with a
    different default color and their legend is nicer by default and
    customizable via cook.legendChanges.
  * Attempting to subset an object that is not subsettable now
    signals an error of class notSubsettableError. The
    non-subsettable object is contained in the object field of the
    error condition.
  * Subscript-out-of-bounds errors are now signaled as errors of
    class subscriptOutOfBoundsError.
  * Stack-overflow errors are now signaled as errors inheriting from
    class stackOverflowError. See ?stackOverflowError for more
    details.
  * New partly experimental Sys.setLanguage() utility, solving the
    main problem of PR#18055.
  * gettext() and gettextf() get a new option trim = TRUE which when
    set to false allows translations for strings such as "Execution
    halted\n" typical for C code.
  * An experimental implementation of hash tables is now available.
    See ?hashtab for more details.
  * identical() gains a extptr.as.ref argument for requesting that
    external pointer objects be compared as reference objects.
  * reorder() gets an argument decreasing which it passes to sort()
    for level creation; based on the wish and patch by Thomas Soeiro
    in PR#18243.
  * as.vector() gains a data.frame method which returns a simple
    named list, also clearing a long standing 'FIXME' to enable
    as.vector(&lt;data.frame&gt;, mode="list").  This breaks code relying
    on as.vector(&lt;data.frame&gt;) to return the unchanged data frame.
  * legend() is now vectorized for arguments cex, x.intersp, and
    text.width.  The latter can now also be specified as a vector
    (one element for each column of the legend) or as NA for
    computing a proper column wise maximum value of strwidth(legend).
    The argument y.intersp can be specified as a vector with one
    entry for each row of the legend.
    legend() also gains new arguments title.cex and title.font.
    Thanks to Swetlana Herbrandt.
  * Deparsing no longer remaps attribute names dim, dimnames, levels,
    names and tsp to historical S-compatible names (which structure()
    maps back).
  * sample() and sample.int() have additional sanity checks on their
    size and n arguments.
    all.equal.numeric() gains a sanity check on its tolerance
    argument - calling all.equal(a, b, c) for three numeric vectors
    is a surprisingly common error.
    mean(na.rm =), rank(na.last =), barplot(legend.text =),
    boxplot(), contour(drawlabels =), polygon(border =) and
    methods::is(class2 =) have more robust sanity checks on their
    arguments.
    R CMD Rd2pdf (used by R CMD check) has a more robust sanity check
    on the format of \alias{} commands.
  * psigamma(x, deriv) for negative x now also works for deriv = 4
    and 5; their underlying C level dpsifn() is documented in
    'Writing R Extensions'.
  * The HTML help system now uses HTML5 (wish of PR#18149).
  * ks.test() now provides exact p-values also with ties and MC
    p-values in the two-sample (Smirnov) case.  By Torsten Hothorn.
  * ks.test() gains a formula interface, with y ~ 1 for the
    one-sample (Kolmogorov) test and y ~ group for the two-sample
    (Smirnov) test.  Contributed by Torsten Hothorn.
  * The return value from ks.test() now has class c("ks.test",
    "htest") - packages using try() need to take care to use
    inherits() and not == on the class.
  * New functions psmirnov(), qsmirnov() and rsmirnov() in package
    stats implementing the asymptotic and exact distributions of the
    two-sample Smirnov statistic.
  * iconv() now allows sub = "c99" to use C99-style escapes for UTF-8
    inputs which cannot be converted to encoding to.
  * In a forward pipe |&gt; expression it is now possible to use a named
    argument with the placeholder _ in the rhs call to specify where
    the lhs is to be inserted.  The placeholder can only appear once
    on the rhs.
  * The included LAPACK sources have been updated to version 3.10.0,
    except for the four Fortran 77 routines which 3.10.0 has
    re-implemented in Fortran 90 (where the older versions have been
    retained as the R build process does not support Fortran 90).
  * path.expand() and most other uses of tilde expansion now warn if
    a path would be too long if expanded.  (An exception is
    file.exists(), which silently returns false.)
  * trunc(&lt;Date&gt;, *) now supports units = "months" or "years" for
    consistency with the POSIXt method, thanks to Dirk Eddelbuettel's
    proposal in PR#18099.
  * list2DF() now checks that its arguments are of the same length,
    rather than use recycling.
  * The HTML help system has several new features: LaTeX-like math
    can be typeset using either KaTeX or MathJax, usage and example
    code is highlighted using Prism, and for dynamic help the output
    of examples and demos can be shown within the browser if the
    knitr package is installed. These features can be disabled by
    setting the environment variable _R_HELP_ENABLE_ENHANCED_HTML_ to
    a false value.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 15
    and so packages that provide graphics devices should be
    reinstalled.
  * The grid package now allows the user to specify a "vector" of
    pattern fills.  The fill argument to gpar() accepts a list of
    gradients and/or patterns and the functions linearGradient(),
    radialGradient(), and pattern() have a new group argument.
    Points grobs (data symbols) can now also have a pattern fill.
    The grobCoords() function now returns a more informative and
    complex result.
  * The grid package has new functions for drawing isolated groups:
    grid.group(), grid.define(), and grid.use().  These functions add
    compositing operators and affine transformations to R's graphics
    capabilities.
    The grid package also has new functions for stroking and filling
    paths: grid.stroke(), grid.fill(), and grid.fillStroke().
    A new function as.path() allows the user to specify the fill rule
    for a path that is to be used for clipping, stroking, or filling;
    available options are "winding" and "evenodd".  A new function
    as.mask() allows the user to specify the type of a mask;
    available options are "alpha" and "luminance".
    These new features are only supported so far (at most) on the
    Cairo-based graphics devices and on the pdf() device.
  * dev.capabilities() reports on device support for the new
    features.
  * par() now warns about unnamed non-character arguments to prevent
    misuse such as {usr &lt;- par("usr"); par(usr)}.
  INSTALLATION:
  * Facilities for accessing ftp:// sites are no longer tested
    (except _pro tem_ for curlGetHeaders()) as modern browsers have
    removed support.
  * R can now be built with DEFS = -DSTRICT_R_HEADERS .
  PACKAGE INSTALLATION:
  * R CMD INSTALL no longer tangles vignettes. This completes an R
    CMD build change in R 3.0.0 and affects packages built before R
    3.0.2. Such packages should be re-made with R CMD build to have
    the tangled R code of vignettes shipped with the tarball.
  * USE_FC_LEN_T will become the default: this uses the correct
    prototypes for Fortran BLAS/LAPACK routines called from C/C++,
    and requires adjustment of most such calls - see 'Writing R
    Extensions' SS6.6.2.  (This has been supported since R 3.6.2.)
  * Package installation speed for packages installed with
    keep.source has been improved. This resolve the issue reported by
    Ofek Shilon in PR#18236.
  UTILITIES:
  * R CMD check can optionally report files/directories left behind
    in home, /tmp (even though TMPDIR is set) and other directories.
    See the "R Internals" manual for details.
  * R CMD check now reports byte-compilation errors during
    installation.  These are not usually fatal but may result in
    parts of the package not being byte-compiled.
  * _R_CHECK_DEPENDS_ONLY_ can be applied selectively to examples,
    tests and/or vignettes in R CMD check: see the "R Internals"
    manual.
  * _R_CHECK_SRC_MINUS_W_IMPLICIT_ now defaults to true: recent
    versions of Apple clang on macOS have made implicit function
    declarations in C into a compilation error.
  * R CMD check --as-cran makes use of the environment variable
    AUTORECONF.  See the "R Internals" manual SS8 for further details.
  * R CMD check --use-valgrind also uses valgrind when re-building
    vignettes as some non-Sweave vignettes unhelpfully comment out
    all their code when R CMD check runs vignettes.
  * Errors in re-building vignettes (unless there are LaTeX errors)
    are reported by R CMD check as ERROR rather than WARNING when
    running vignettes has been skipped (as it frequently is in CRAN
    checks and by --as-cran).
  * R CMD Rd2pdf gains a --quiet option that is used by R CMD build
    when building the PDF package manual.
  * R CMD Rd2pdf now always runs LaTeX in batch mode, consistent with
    Texinfo &gt;= 6.7. The --batch option is ignored.
  * R CMD build and R CMD check now include the Rd file name and line
    numbers in the error message of an \Sexpr evaluation failure.
  * For packages using the \doi Rd macro (now an install-time \Sexpr)
    but no other dynamic Rd content, R CMD build now produces a
    smaller tarball and is considerably faster - skipping temporary
    package installation.
  C-LEVEL FACILITIES:
  * The non-API header R_ext/R-ftp-http.h is no longer provided, as
    the entry points it covered are now all defunct.
  * A number of non-API declarations and macro definitions have been
    moved from the installed header Rinternals.h to the internal
    header Defn.h. Packages that only use entry points and
    definitions documented to be part of the API as specified in
    'Writing R Extensions' SS6 should not be affected.
  * The macro USE_RINTERNALS no longer has any effect when compiling
    package code.  Packages which also use R_NO_REMAP will need to
    ensure that the remapped names are used for calls to API
    functions that were formerly also made available as macros.
  * The deprecated legacy S-compatibility macros PROBLEM, MESSAGE,
    ERROR, WARN, WARNING, RECOVER, ... are no longer defined in
    R_exts/RS.h (included by R.h).  Replace these by calls to
    Rf_error and Rf_warning (defined in header R_ext/Error.h included
    by R.h).
    Header R_ext/RS.h no longer includes R_ext/Error.h.
  * Header R_ext/Constants.h (included by R.h) when included from C++
    now includes the C++ header cfloat rather than the C header
    float.h (now possible as C++11 is required).
  * The legacy S-compatibility macros DOUBLE_* in R_ext/Constants.h
    (included by R.h) are deprecated.
  * The deprecated S-compatibility macros SINGLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * R_Calloc, R_Free and R_Realloc are preferred to their unprefixed
    forms and error messages now use the prefix. These forms were
    introduced in R 3.4.0 and are available even when
    STRICT_R_HEADERS is defined.
  * rmultinom has been documented in 'Writing R Extensions' SS6 so is
    now part of the R API.
  * Similarly, Rtanpi, called from R level tanpi() is now part of the
    R API.
  * The long-deprecated, undocumented and non-API entry point call_R
    is no longer declared in R_ext/RS.h (included by R.h).
  * The header S.h which has been unsupported since Jan 2016 has been
    removed.  Use R.h instead.
  DEPRECATED AND DEFUNCT:
  * The (non-default and deprecated) method = "internal" for
    download.file() and url() no longer supports http:// nor ftp://
    URIs.  (It is used only for file:// URIs.)
    On Windows, download.file(method = "wininet") no longer supports
    ftp:// URIs.  (It is no longer the default method, which is
    "libcurl" and does.)
    On Windows, the deprecated method = "wininet" now gives a warning
    for http:// and https:// URIs for both download.file() and url().
    (It is no longer the default method.)
  * On Windows, the command-line option --max-mem-size and
    environment variable R_MAX_MEM_SIZE are defunct.  The memory
    allocation limit was important for 32-bit builds, but these are
    no longer supported.
  * default.stringsAsFactors() is now formally deprecated, where that
    was only mentioned on its regular help page, previously.  So it
    now gives a warning if called.
  * unix.time() is defunct now; it had been deprecated since R 3.4.0.
  BUG FIXES:
  * Setting digits = 0 in format(), print.default() (and hence
    typically print()) or options() is again invalid.  Its behaviour
    was platform-dependent, and it is unclear what "zero significant
    digits" should mean (PR#18098).
  * Messages from C code in the cairo section of package grDevices
    are now also offered for translation, thanks to Michael Chirico's
    PR#18123.
  * mean(x) with finite x now is finite also without "long.double"
    capability.
  * R CMD Rd2pdf no longer leaves an empty build directory behind
    when it aborts due to an already existing output file.  (Thanks
    to Sebastian Meyer's PR#18141.)
  * density(x, weights = w, na.rm = TRUE) when anyNA(x) is true, now
    removes weights "in parallel" to x, fixing PR#18151, reported by
    Matthias Gondan.  Additionally, it gets a subdensity option.
  * Conversion of \Sexpr[]{&lt;expR&gt;} to LaTeX or HTML no longer
    produces long blocks of empty lines when &lt;expR&gt; itself contains
    several lines all producing empty output.  Thanks to a report and
    patch by Ivan Krylov posted to R-devel.
  * R CMD build no longer fails if a package vignette uses child
    documents and inst/doc exists.  (Thanks to Sebastian Meyer's
    PR#18156.)
  * When an R documentation ('help' source) file man/foo.Rd in a
    package has \donttest{..} examples with a syntax error, it is now
    signalled as ERROR and with correct line numbers relating to the
  * -Ex.R file, thanks to Duncan Murdoch and Sebastian Meyer's
    reports and patch proposals in PR#17501.
  * Improved determination of the correct translation domain in
    non-base packages, addressing the combination of PR#18092 and
    PR#17998 (#c6) with reports and _augmented_ patch #2904 by
    Suharto Anggono.
    Note that "R-base" is no longer the default domain e.g., for
    top-level calls to gettext(); rather translation needs explicit
    domain = * specification in such cases.
  * identical(attrib.as.set=FALSE) now works correctly with data
    frames with default row names (Thanks to Charlie Gao's PR#18179).
  * txtProgressBar() now enforces a non-zero width for argument char,
    without which no progress can be visible.
  * dimnames(table(d)) is more consistent in the case where d is a
    list with a single component, thanks to Thomas Soeiro's report to
    R-devel.
    Further, table(d1, d2) now gives an error when d1 and d2 are data
    frames as suggested by Thomas in PR#18224.
  * Fix for drawing semi-transparent lines and fills on the native
    Windows graphics device (PR#18219 and PR#16694).  Thanks to Nick
    Ray for helpful diagnosis on Bugzilla.
  * The deparser now wraps sub-expressions such as if(A) ..  with
    parentheses when needed; thanks to Duncan Murdoch's PR#18232 and
    Lionel Henry's patches there.
  * remove.packages() no longer tries to uninstall Priority: base
    packages, thanks to a report and suggestions by Colin Fay in
    PR#18227.
  * win.metafile() now has xpinch and ypinch arguments so that the
    user can override Windows' (potentially wrong) guess at device
    dimensions.
  * x[i] and x[[i]] for non-integer i should now behave in all cases
    as always documented: the index used is equivalent to
    as.integer(i) unless that would overflow where trunc(i) is used
    instead; thanks to Suharto Anggono's report and patch proposals
    in PR#17977.
  * asOneSidedFormula() now associates the resulting formula with the
    global environment rather than the evaluation environment created
    for the call.
  * &lt;bibentry&gt;$name now matches the field name case-insensitively,
    consistent with bibentry() creation and the replacement method.
  * cbind() failed to detect some length mismatches with a mixture of
    time-series and non-time-series inputs.
  * The default LaTeX style file Sweave.sty used by the RweaveLatex
    driver no longer loads the obsolete ae package; thanks to a
    report by Thomas Soeiro in PR#18271.  Furthermore, it now skips
    \usepackage[T1]{fontenc} for engines other than pdfTeX (if
    detected) or if the new [nofontenc] option is used.
  * smooth.spline() now stores its logical cv argument more safely,
    fixing a rare bug when printing, and also stores n.
  * smooth.spline(x,y,*) now computes the cv.crit statistic
    correctly, also when is.unsorted(x), fixing PR#18294.
  * The data.frame method of rbind() now warns when binding
    not-wholly-recycling vectors, by analogy to the default method
    (for matrices).
  * setAs() finds the correct class for name to when multiple
    packages define a class with that name. Thanks to Gabor Csardi
    for the report.
  * Fix for detaching a package when two classes of the same name are
    present in method signatures for the same generic. Thanks to
    Gabor Csardi for the report.
  * match.arg("", c("", "a", "B")) gives a better error message, in
    part from PR#17959, thanks to Elin Waring.
  * R CMD Sweave --clean no longer removes pre-existing files or
    subdirectories (PR#18242).
  * The quartz() device no longer splits polylines into subpaths.
    That has caused narrowly-spaced lines with many points to always
    look solid even when dashed line type was used due to dash phase
    restarts.
  * Deparsing constructs such as quote(1 + `!`(2) + 3) works again as
    before R 3.5.0, thanks to the report and patch in PR#18284 by
    Suharto Anggono.
  * as.list(f) for a factor f now keeps names(f), fixing PR#18309.
  * qbeta(.001, .9, .009) and analogous qf() calls now return a
    correct value instead of NaN or wrongly 1, all with a warning;
    thanks to the report by Ludger Goeminne in PR#18302.
  * plot.lm() failed to produce the plot of residuals vs.  factor
    levels (i.e., which=5 when leverages are constant) for models
    with character predictors (PR#17840).
  * interaction.plot(..., xtick = TRUE) misplaced the x-axis line
    (PR#18305).
  * Not strictly fixing a bug, format()ing and print()ing of
    non-finite Date and POSIXt values NaN and +/-Inf no longer show
    as NA but the respective string, e.g., Inf, for consistency with
    numeric vector's behaviour, fulfilling the wish of PR#18308.
  * R CMD check no longer runs test scripts generated from
    corresponding .Rin files twice and now signals an ERROR if
    processing an .Rin script fails.
  * tools::Rd2txt() used for plain-text help pages now renders \hrefs
    (if tools::Rd2txt_options(showURLs = TRUE)) and \urls with
    percent-encoding and standards-compliant delimiting style (angle
    brackets and no URL: prefix).  \email is now rendered with a
    mailto: prefix.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1655985600">- CHANGES IN R 4.2.1:
  NEW FEATURES:
  * New function utils::findCRANmirror() to find out if a CRAN mirror
    has been selected, otherwise fallback to the main site.  This
    behaves in the same way as tools::CRAN_package_db() and is
    intended for packages wishing to access CRAN for purposes other
    than installing packages.
    The need for this was shown by a day when the main CRAN website
    was offline and a dozen or so packages which had its URL
    hardcoded failed their checks.
  INSTALLATION on a UNIX-ALIKE:
  * The libraries searched for by --with-blas (without a value) now
    include BLIS (after OpenBLAS but before ATLAS).  And on macOS,
    the Accelerate framework (after ATLAS).  (This is patterned after
    the AX_BLAS macro from the Autoconf Archive.)
  * The included LAPACK sources have been updated to 3.10.1.
  UTILITIES:
  * The (full path to) the command tidy to be used for HTML
    validation can be set by environment variable R_TIDYCMD.
  * Setting environment variable _R_CHECK_RD_VALIDATE_RD2HTML_ to a
    false value will override R CMD check --as-cran and turn off HTML
    validation.  This provides a way to circumvent a problematic
    tidy.
    The 2006 version that ships with macOS is always skipped.
  C-LEVEL FACILITIES:
  * The undocumented legacy declarations of Sint, Sfloat, SINT_MAX
    and SINT_MIN in header R.h are deprecated.
  BUG FIXES:
  * fisher.test(d) no longer segfaults for "large" d; fixing PR#18336
    by preventing/detecting an integer overflow reliably.
  * tar(., files=*) now produces correctly the warning about invalid
    uid or gid of files, fixing PR#18344, reported by Martin Morgan.
  * tk_choose.files() with multi = FALSE misbehaved on paths
    containing spaces (PR#18334) (regression introduced in R 4.0.0).
  * sort(x, partial = ind, *) now works correctly notably for the
    non-default na.last = FALSE or TRUE, fixing PR#18335 reported by
    James Edwards.
  * Environment variable _R_CHECK_XREFS_REPOSITORIES_ is only used
    for checking .Rd cross-references in R CMD check (as documented)
    and not for other uses looking for a CRAN mirror.
  * The search for a CRAN mirror when checking packages now uses
    getOption("repos") if that specifies a CRAN mirror, even when it
    does not also specify all three Bioconductor repositories (as was
    previously required).
  * The HTML code generated by tools::Rd2HTML() has been improved to
    pass tidy 5.8.0.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1667217600">- CHANGES IN R 4.2.2:
  NEW FEATURES:
  * tools::Rdiff(useDiff = TRUE) checks for the presence of an
    external diff command and switches to useDiff = FALSE if none is
    found.  This allows R CMD Rdiff to always work.
  * On Windows, environment variable R_LIBCURL_SSL_REVOKE_BEST_EFFORT
    can be used to switch to only 'best-effort' SSL certificate
    revocation checks with the default "libcurl" download method.
    This reduces security, but may be needed for downloads to work
    with MITM proxies (PR#18379).
  * (macOS) The run-time check for libraries from XQuartz for X11 and
    Tcl/Tk no longer uses otool from the Apple Developer Tools
    (PR#18400).
  * The LaTeX style for producing the PDF manuals, Rd.sty, now loads
    the standard amsmath, amsfonts and amssymb packages for greater
    coverage of math commands in the Rd \eqn and \deqn macros.  The
    \mathscr LaTeX command is also provided (via the mathrsfs
    package, if available, or the amsfonts bundle otherwise),
    fulfilling the wish of PR#18398.
  * (Windows) The default format of readClipboard() and
    writeClipboard() has been changed to 13 (CF_UNICODETEXT).
  INSTALLATION on a UNIX-ALIKE:
  * The PDF manuals (if built) can be compacted by the new target
    make compact-pdf (at the top level or in directory doc/manual).
  * There is now configure support for LLVM clang 15 on Linux, which
    defaults to position-independent (PIE) executables whereas
    gfortran does not.
  * Many small changes to ease compilation (and suppress warnings)
    with LLVM clang 15.
  BUG FIXES:
  * Rscript -e would fail if stdin were closed (Reported by Henrik
    Bengtsson.)
  * qt(*, log.p=TRUE) in outer tails no longer produces NaN in its
    final steps, thus fixing PR#18360.
  * tools::Rd2latex() now escapes hashes and ampersands when writing
    URLs, fixing LaTeX errors with such URLs in \tabular.
  * When isGeneric(f, fdef=*) is used with mismatching names, the
    warning is better understandable; reported (with fix) in PR#18370
    by Gabe Becker.
  * poly(x, n) now works again (and is now documented) when x is a
    "Date" or "POSIXct" object, or of another class while fulfilling
    mode(x) == "numeric".  This also enables poly(x, *, raw=TRUE) for
    such variables.  Reported by Michael Chirico to R-devel.
  * write.table(), write.csv() and write.csv2() restore their
    numerical precision (internal equivalent of digits = 15) after an
    interrupt (PR#18384).
  * One can now read also byte FF from a clipboard connection
    (PR#18385).
  * source("") and source(character()) now give more helpful error
    messages.
  * R CMD check --as-cran set _R_CHECK_TIMINGS_ too late to have the
    intended effect.
  * as.POSIXlt(x) now also works with very large dates x, fixing
    PR#18401 reported by Hannes M"uhleisen.
  * Files can now be extracted even from very large zip archives
    (PR#18390, thanks to Martin Jakt).
  * Non-finite objects of class "POSIXlt" are now correctly coerced
    to classes "Date" and "POSIXct"; following up on the extension to
    format() them correctly.
  * Added methods for is.finite(), is.infinite() and is.nan() for
    "POSIXlt" date-time objects.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1678881600">- CHANGES IN R 4.2.3:
  C-LEVEL FACILITIES:
  * The definition of DL_FUNC in R_ext/Rdynload.h has been changed to
    be fully C-compliant.  This means that functions loaded _via_ for
    example R_GetCCallable need to be cast to an appropriate type if
    they have any arguments.
  * .Machine has a new element sizeof.time_t to identify old systems
    with a 32-bit type and hence a limited range of date-times (and
    limited support for dates millions of years from present).
  PACKAGE INSTALLATION:
  * (Windows) The default C++ standard had accidentally been left at
    C++11 when it was changed to C++14 on Unix.
  BUG FIXES:
  * As "POSIXlt" objects may be "partially filled" and their list
    components meant to be recycled, length() now is the length of
    the longest component.
  * as.POSIXlt.Date() could underflow for dates in the far past (more
    than half a million years BCE).
  * as.Date.POSIXlt(x) would return "1970-01-01" instead of NA in R
    4.2.2, e.g., for
    x &lt;- as.POSIXlt(c("2019-01-30","2001-1-1"))
    x$mon &lt;- c(0L, NA); as.Date(x)
  * R CMD check failed to apply enabled _R_CHECK_SUGGESTS_ONLY_ to
    examples and vignettes (regression in R 4.2.0).
  * R CMD check did not re-build vignettes in separate processes by
    default (regression in R 4.2.0).
  * Running examples from HTML documentation now restores previous
    knitr settings and options (PR#18420).
  * Quartz: fonts are now located using Core Graphics API instead of
    deprecated ATS which is no longer supported in the macOS 13 SDK
    (PR#18426).  This also addresses an issue where the currently
    used font in the Quartz device context was not correctly
    retained.
  * (Windows) Math symbols in text drawing functions are again
    rendered correctly (PR#18440).  This fixes a regression in R
    4.2.1 caused by a fix in PR#18382 which uncovered an issue in
    GraphApp due to which the symbol charset was not used with TT
    Symbol font face.
  * (Windows) Installing a package with a src/Makefile.{win,ucrt}
    file includes ~/.R/Makevars.win64 in the search for user
    makevars, as documented in "R Installation and Administration"
    and done for packages with a src/Makevars.{win,ucrt} file.
  * format(&lt;POSIXlt_w/_unbalanced_sec&gt;, "....%OS&lt;n&gt;") with n &gt; 0 no
    longer accidentally uses the unbalanced seconds, thanks to
    Suharto Anggono's report (including patch) in PR#18448.
  * solve.default(a, b) works around issues with some versions of
    LAPACK when a contains NA or NaN values.
  * When UseMethod() cannot dispatch, it no longer segfaults
    producing the error message in case of a long class(), thanks to
    Joris Vankerschaver's report (including patch) in PR#18447.
  * When example(foo, ..) produces graphics on an interactive device
    it needs to open itself, it now leaves devAskNewPage() unchanged
    even when it was FALSE, thus fixing a 14 years old '&lt;FIXME&gt;'.
  * packageDescription() again catches errors from encoding
    conversions. This also fixes broken packageVersion() in C locale
    on systems where iconv does not support transliteration.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1681128000">- add patch to build with libcurl &gt;= 8</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1682078400">- CHANGES IN R 4.3.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Calling &amp;&amp; or || with LHS or (if evaluated) RHS of length greater
    than one is now always an error, with a report of the form
    'length = 4' in coercion to 'logical(1)'
    Environment variable _R_CHECK_LENGTH_1_LOGIC2_ no longer has any
    effect.
  NEW FEATURES:
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.10.1.  (This caused some platform-dependent
    changes to package check output.)  And then to the sources from
    LAPACK version 3.11.0 (with changes only to double complex
    subroutines).
  * The included LAPACK sources have been updated to include the four
    Fortran 90 routines rather than their Fortran 77 predecessors.
    This may give some different signs in SVDs or
    eigendecompositions..  (This completes the transition to LAPACK
    3.10.x begun in R 4.2.0.)
  * The LAPACK sources have been updated to version 3.11.0.  (No new
    subroutines have been added, so this almost entirely bug fixes:
    Those fixes do affect some computations with NaNs, including R's
    NA.)
  * The parser now signals _classed_ errors, notably in case of the
    pipe operator |&gt;.  The error object and message now give line and
    column numbers, mostly as proposed and provided by Duncan Murdoch
    in PR#18328.
  * toeplitz() is now generalized for asymmetric cases, with a
    toeplitz2() variant.
  * xy.coords() and xyz.coords() and consequently, e.g., plot(x,y,
    log = "y") now signal a _classed_ warning about negative values
    of y (where log(.) is NA).  Such a warning can be specifically
    suppressed or caught otherwise.
  * Regular expression functions now check more thoroughly whether
    their inputs are valid strings (in their encoding, e.g. in
    UTF-8).
  * The performance of grep(), sub(), gsub() and strsplit() has been
    improved, particularly with perl = TRUE and fixed = TRUE.  Use of
    useBytes = TRUE for performance reasons should no longer be
    needed and is discouraged: it may lead to incorrect results.
  * apropos() gains an argument dot_internals which is used by the
    completion (help(rcompgen)) engine to also see base internals
    such as .POSIXct().
  * Support in tools::Rdiff() for comparing uncompressed PDF files is
    further reduced - see its help page.
  * qqplot(x, y, ...) gains conf.level and conf.args arguments for
    computing and plotting a confidence band for the treatment
    function transforming the distribution of x into the distribution
    of y (Switzer, 1976, _Biometrika_). Contributed by Torsten
    Hothorn.
  * Performance of package_dependencies() has been improved for cases
    when the number of dependencies is large.
  * Strings newly created by gsub(), sub() and strsplit(), when any
    of the inputs is marked as "bytes", are also marked as "bytes".
    This reduces the risk of creating invalid strings and accidental
    substitution of bytes deemed invalid.
  * Support for readLines(encoding = "bytes") has been added to allow
    processing special text files byte-by-byte, without creating
    invalid strings.
  * iconv(from = "") now takes into account any declared encoding of
    the input elements and uses it in preference to the native
    encoding.  This reduces the risk of accidental creation of
    invalid strings, particularly when different elements of the
    input have different encoding (including "bytes").
  * Package repositories in getOption("repos") are now initialized
    from the repositories file when utils is loaded (if not already
    set, e.g., in .Rprofile).  (From a report and patch proposal by
    Gabriel Becker in PR#18405.)
  * compactPDF() gets a verbose option.
  * type.convert() and hence read.table() get new option tryLogical =
    TRUE with back compatible default.  When set to false, converts
    "F" or "T" columns to character.
  * Added new unit prefixes "R" and "Q" for abbreviating
    (unrealistically large) sizes beyond 10^{27} in standard = "SI",
    thanks to Henrik Bengtsson's PR#18435.
  * as.data.frame()'s default method now also works fine with atomic
    objects inheriting from classes such as "roman", "octmode" and
    "hexmode", such fulfilling the wish of PR#18421, by Benjamin
    Feakins.
  * The as.data.frame.vector() utility now errors for wrong-length
    row.names.  It warned for almost six years, with "Will be an
    error!".
  * sessionInfo() now also contains La_version() and reports codepage
    and timezone when relevant, in both print() and toLatex() methods
    which also get new option tzone for displaying timezone
    information when locale = FALSE.
  * New function R_compiled_by() reports the C and Fortran compilers
    used to build R, if known.
  * predict(&lt;lm&gt;, newdata = *) no longer unnecessarily creates an
    offset of all 0s.
  * solve() for complex inputs now uses argument tol and by default
    checks for 'computational singularity' (as it long has done for
    numeric inputs).
  * predict(&lt;rank-deficient lm&gt;, newdata=*) now obeys a new argument
    rankdeficient, with new default "warnif", warning only if there
    are non-estimable cases in newdata.  Other options include
    rankdeficient = "NA", predicting NA for non-estimable newdata
    cases.  This addresses PR#15072 by Russ Lenth and is based on his
    original proposal and discussions in PR#16158 also by David Firth
    and Elin Waring.  Still somewhat experimental.
  * Rgui console implementation now works better with the NVDA screen
    reader when the full blinking cursor is selected.  The underlying
    improvements in cursor handling may help also other screen
    readers on Windows.
  * The drop-field control in GraphApp can now be left with the TAB
    key and all controls can be navigated in the reverse order using
    the Shift+TAB key, improving accessibility of the Rgui
    configuration editor.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now fully accurate
    (instead of to "only" minimally five digits).
  * demo(error.catching) now also shows off withWarnings() and
    tryCatchWEMs().
  * As an experimental feature the placeholder _ can now also be used
    in the rhs of a forward pipe |&gt; expression as the first argument
    in an extraction call, such as _$coef. More generally, it can be
    used as the head of a chain of extractions, such as _$coef[[2]].
  * Spaces in the environment variable used to choose the R session's
    temporary directory (TMPDIR, TMP and TEMP are tried in turn) are
    now fatal.  (On Windows the 'short path' version of the path is
    tried and used if that does not contain a space.)
  * all.equal.numeric() gets a new optional switch giveErr to return
    the numeric error as attribute.  Relatedly,
    stopifnot(all.equal&lt;some&gt;(a, b, ..)) is as "smart" now, as
    stopifnot(all.equal(....)) has been already, thus allowing
    customized all.equal&lt;Some&gt;() wrappers.
  * R on Windows is now able to work with path names longer than 260
    characters when these are enabled in the system (requires at
    least Windows 10 version 1607).  Packages should be updated to
    work with long paths as well, instead of assuming PATH_MAX to be
    the maximum length.  Custom front-ends and applications embedding
    R need to update their manifests if they wish to allow this
    feature.  See
    &lt;https://blog.r-project.org/2023/03/07/path-length-limit-on-windows&gt;
    for more information.
  * 'Object not found' and 'Missing argument' errors now give a more
    accurate error context. Patch provided by Lionel Henry in
    PR#18241.
  * The @ operator is now an S3 generic. Based on contributions by
    Tomasz Kalinowski in PR#18482.
  * New generic chooseOpsMethod() provides a mechanism for objects to
    resolve cases where two suitable methods are found for an Ops
    Group Generic. This supports experimenting with alternative
    object systems. Based on contributions by Tomasz Kalinowski in
    PR#18484.
  * inherits(x, what) now accepts values other than a simple
    character vector for argument what. A new generic, nameOfClass(),
    is called to resolve the class name from what. This supports
    experimenting with alternative object systems. Based on
    contributions by Tomasz Kalinowski in PR#18485.
  * Detection of BLAS/LAPACK in use (sessionInfo()) with FlexiBLAS
    now reports the current backend.
  * The "data.frame" method for subset() now warns about extraneous
    arguments, typically catching the use of = instead of == in the
    subset expression.
  * Calling a:b when numeric a or b is longer than one may now be
    made into an error by setting environment variable
    _R_CHECK_LENGTH_COLON_ to a true value, along the proposal in
    PR#18419 by Henrik Bengtsson.
  * density(x, weights = *) now warns if automatic bandwidth
    selection happens without using weights; new optional warnWbw may
    suppress the warning.  Prompted by Christoph Dalitz' PR#18490 and
    its discussants.
  * rm(list = *) is faster and more readable thanks to Kevin Ushey's
    PR#18492.
  * The plot.lm() function no longer produces a normal Q-Q plot for
    GLMs. Instead it plots a half-normal Q-Q plot of the absolute
    value of the standardized deviance residuals.
  * The print() method for class "summary.glm" no longer shows
    summary statistics for the deviance residuals by default.  Its
    optional argument show.residuals can be used to show them if
    required.
  * The tapply() function now accepts a data frame as its X argument,
    and allows INDEX to be a formula in that case. by.data.frame()
    similarly allows INDICES to be a formula.
  * The performance of df[j] &lt;- value (including for missing j) and
    write.table(df) has been improved for data frames df with a large
    number of columns.  (Thanks to Gabriel Becker's PR#18500,
    PR#18503 and discussants, prompted by a report from Toby Dylan
    Hocking on the R-devel mailing list.)
  * The matrix multiply operator %*% is now an S3 generic, belonging
    to new group generic matrixOps.  From Tomasz Kalinowski's
    contribution in PR#18483.
  * New function array2DF() to convert arrays to data frames,
    particularly useful for the list arrays created by tapply().
  DATES and TIMES:
  * On platforms where (non-UTC) datetimes before 1902 (or before
    1900 as with system functions on recent macOS) are guessed by
    extrapolating time zones from 1902-2037, there is a warning at
    the first use of extrapolation in a session.  (As all time zones
    post 2037 are extrapolation, we do not warn on those.)
  * (Platforms using --with-internal-tzone, including Windows and by
    default macOS). How years are printed in dates or date-times can
    be controlled by environment variable R_PAD_YEARS_BY_ZERO.  The
    default remains to pad to 4 digits by zeroes, but setting value
    no gives no padding (as used by default by glibc).
  * strftime() tries harder to determine the offset for the "%z"
    format, and succeeds on the mainstream R platforms.
  * strftime() has a limit of 2048 bytes on the string produced -
    attempting to exceed this is an error.  (Previously it silently
    truncated at 255 bytes.)
  * sessionInfo() records (and by default prints) the system time
    zone as part of the locale information.  Also, the source
    (system/internal) of the date-time conversion and printing
    functions.
  * Objects of class "POSIXlt" created in this version of R always
    have 11 components: component zone is always set, and component
    gmtoff is set for times in UTC and usually set on the (almost
    all) platforms which have C-level support, otherwise is NA.
  * There are comprehensive validity checks on the structure of
    objects of class "POSIXlt" when converting (including formatting
    and printing).  (This avoids mis-conversions of hand-crafted
    objects.)
  * There is some support for using the native date-time routines on
    macOS: this is only viable on recent versions (e.g. 12.6 and 13)
    and does get wrong some historical changes (before 1900, during
    WWII).  Use of --with-internal-tzone remains the default.
  * as.POSIXct(&lt;numeric&gt;) and as.POSIXlt(.) (without specifying
    origin) now work.  So does as.Date(&lt;numeric&gt;).
  * as.Date.POSIXct(., tz) now treats several tz values, notably
    "GMT" as equivalent to "UTC", proposed and improved by Michael
    Chirico and Joshua Ulrich in PR#17674.
  * Experimental balancePOSIXlt() utility allows using "ragged" and
    or out-of-range "POSIXlt" objects more correctly, e.g., in
    subsetting and subassignments.  Such objects are now documented.
    More experimentally, a "POSIXlt" object may have an attribute
    "balanced" indicating if it is known to be filled or fully
    balanced.
  * Functions axis.Date() and axis.POSIXct() are rewritten to gain
    better default tick locations and better default formats by using
    prettyDate(). Thanks to Swetlana Herbrandt.
  * The mapping of Windows' names for time zones to IANA's 'Olson'
    names has been updated.  When ICU is available (it is by
    default), it is used to get a mapping for the current region set
    in Windows.  This can be overridden by setting environment
    variable TZ to the desired Olson name - see OlsonNames() for
    those currently available.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 16
    and so packages that provide graphics devices should be
    reinstalled.
  * The grDevices and grid packages have new functions for rendering
    typeset glyphs, primarily: grDevices::glyphInfo() and
    grid::grid.glyph().
    Rendering of typeset glyphs is only supported so far on the
    Cairo-based graphics devices and on the pdf() and quartz()
    devices.
  * The defined behaviour for "clear" and "source" compositing
    operators (via grid::grid.group()) has been changed (to align
    better with simple interpretation of original Porter-Duff
    definitions).
  * Support for gradients, patterns, clipping paths, masks, groups,
    compositing operators, and affine transformations has been added
    to the quartz() device.
  INSTALLATION on a UNIX-ALIKE:
  * A system installation of generic LAPACK 3.10.0 or later will be
    preferred to the version in the R sources.
    configure option --with-lapack=no (equivalently --without-lapack)
    forces compilation of the internal LAPACK sources.
    If --with-lapack is not specified, a system liblapack is looked
    for and used if it reports version 3.10.0 or later and does not
    contain BLAS routines.
    Packages using LAPACK will need to be reinstalled if this changes
    to using an external library.
  * On aarch64 Linux platforms using GCC, configure now defaults to
  - fPIC (instead of -fpic), as desired in PR#18326.
  * configure now checks conversion of datetimes between POSIXlt and
    POSIXct around year 2020.  Failure (which has been seen on
    platforms missing tzdata) is fatal.
  * If configure option --with-valgrind-instrumentation is given
    value 1 or 2, option --with-system-valgrind-headers is now the
    default and ignored (with a warning).  It is highly recommended
    that the system headers are installed alongside valgrind: they
    are part of its packaging on some Linux distributions and
    packaged separately (e.g. in the valgrind-devel RPM) on others.
    configure will give a warning if they are not found.
    The system headers will be required in a future release of R to
    build with valgrind instrumentation.
  * libcurl 8.x is now accepted by configure: despite a change in
    major version number it changes neither API nor ABI.
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools43, an update of the Rtools42 toolchain.  It is
    based on gcc 12 and newer versions of MinGW-W64, binutils and
    libraries.  At this time R-devel can still be built using
    Rtools42 without changes, but when R-devel is installed via the
    installer, it will by default look for Rtools43.
  * Old make targets rsync-extsoft and 32-bit ones that are no longer
    needed have been removed.
  * Default builds (including for packages) no longer select C99.
    Thus the C standard used is the default for the compiler, which
    for the toolchain in Rtools43 is C17.  (This is consistent with
    Unix builds.)
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++17 where
    available (which it is on all currently checked platforms): if
    not C++14 or C++11 is used if available otherwise C++ is not
    supported.
  * USE_FC_LEN_T is the default: this uses the correct
    (compiler-dependent) prototypes for Fortran BLAS/LAPACK routines
    called from C/C++, and requires adjustment of many such calls -
    see 'Writing R Extensions' SS6.6.1.
  * There is initial support for C++23 as several compilers are now
    supporting -std=c++23 or -std=c++2b or similar.  As for C++20,
    there no additional configure checks for C++23 features beyond a
    check that the compiler reports a __cplusplus value greater than
    that in the C++20 standard.  C++ feature tests should be used.
  * There is support for a package to indicate the version of the C
    standard which should be used to compile it, and for the
    installing user to specify this.  In most cases R defaults to the
    C compiler's default standard which is C17 (a `bug-fix' of C11) -
    earlier versions of R or compilers may have defaulted to C99.
    Current options are:
    USE_C17 Use a standard that is at most C17.  The intention is to
    allow legacy packages to still be installed when later C
    standards become the default, including packages using new
    keywords as identifiers or with K&amp;R-style function
    declarations.  This will use C17 if available, falling back
    to C11.
    USE_C90 Use the C90 (aka C89) standard.  (As that standard did
    not require compilers to identify that version, all we can
    verify is that the compiler does not claim to be using a
    later standard.  It may accept C99 features - for example
    clang accepts // to make comments.)
    USE_C99 Use the C99 standard. This should be rarely needed - it
    avoids the few new features of C11/C17 which can be useful if
    a package assumes them if C17 is specified and they are not
    implemented.
    USE_C23 Use C23 (or in future, later).  Compiler/library support
    for C23 is still being implemented, but LLVM clang from
    15.0.0 and the upcoming GCC 13 have quite extensive support.
    These can be specified as part of the SystemRequirements field in
    the package's DESCRIPTION file or _via_ options --use-C17 and so
    on of R CMD INSTALL and R CMD SHLIB.
    For further details see "Writing R Extensions" SS1.2.5.
  * (Windows) A src/Makefile.ucrt or src/Makefile.win file is now
    included after R_HOME/etcR_ARCH/Makeconf and so no longer needs
    to include that file itself.  Installation of a package with such
    a file now uses a site Makevars file in the same way as a package
    with a src/Makevars.win file would.
  * configure is now passed crucial variables such as CC and CFLAGS
    in its environment, as many packages were not setting them (as
    documented in 'Writing R Extensions' SS1.2).
    This has most effect where configure is used to compile parts of
    the package - most often by cmake or libtool which obfuscate the
    actual compile commands used.
    Also used for configure.win and configure.ucrt on Windows.
  FORTRAN FLAGS:
  * The flag -fno-optimize-sibling-calls is no longer forced for
    gfortran 7 and later.  It should no longer be needed now using
    'hidden' character-length arguments when calling BLAS/LAPACK
    routines from C/C++ is the default even for packages.  (Unless
    perhaps packages call Fortran code from C/C++ without using R's
    headers and without allowing for these arguments.)
  C-LEVEL FACILITIES:
  * The deprecated S-compatibility macros DOUBLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * The deprecated legacy typedefs of Sint and Sfloat in header R.h
    are no longer defined, and that header no longer includes header
    limits.h from C nor climits from C++.
  * New macro CAD5R() is provided in Rinternals.h and used in a few
    places in the R sources.
  * ALTREP now supports VECSXP vectors. Contributed by Gabor Csardi
    in PR#17620.
  * The Rcomplex definition (in header R_ext/Complex.h) has been
    extended to prevent possible mis-compilation when interfacing
    with Fortran (PR#18430).  The new definition causes compiler
    warnings with static initializers such as {1, 2}, which can be
    changed to {.r=1, .i=2}.
    Using the new definition from C++ depends on compiler extensions
    supporting C features that have not been incorporated into the
    C++ standards but are available in g++ and clang++: this may
    result in C++ compiler warnings but these have been worked around
    for recent versions of common compilers (GCC, Apple/LLVM clang,
    Intel).
    It is intended to change the inclusion of header R_ext/Complex.h
    by other R headers, so C/C++ code files which make use of
    Rcomplex should include that header explicitly.
  UTILITIES:
  * R CMD check does more checking of package .Rd files, warning
    about invalid email addresses and (some) invalid URIs and noting
    empty \item labels in description lists.
  * R CMD check now also reports problems when reading package news
    in md (file NEWS.md) and (optionally) plain text (file NEWS)
    formats.
  * _R_CHECK_TIMINGS_ defaults to a value from the environment even
    for R CMD check --as-cran; this allows for exceptionally fast or
    slow platforms.
    It now applies to checking PDF and HTML versions of the manuals,
    and 'checking CRAN incoming feasibility'.
  * R CMD check can optionally (but included in --as-cran) check
    whether HTML math rendering _via_ KaTeX works for the package .Rd
    files.
  * Non-interactive debugger invocations can be trapped by setting
    the environment variable _R_CHECK_BROWSER_NONINTERACTIVE_ to a
    true value.  This is enabled by R CMD check --as-cran to detect
    the use of leftover browser() statements in the package.
  * The use of sprintf and vsprintf from C/C++ has been deprecated in
    macOS 13 and is a known security risk.  R CMD check now reports
    (on all platforms) if their use is found in compiled code:
    replace by snprintf or vsnprintf respectively. [*NB:* whether
    such calls get compiled into the package is platform-dependent.]
  * Where recorded at installation, R CMD check reports the C and
    Fortran compilers used to build R.
    It reports the OS in use (if known, as given by osVersion) as
    well as that R was built for.
    It notes if a C++ standard was specified which is older than the
    current default: many packages have used C++11 to mean 'not
    C++98' - as C++11 is the minimum supported since R 4.0.0, that
    specification can probably be removed.
  * R CMD INSTALL reports the compilers (and on macOS, the SDK) used,
    and this is copied to the output of R CMD check.
    Where a C++ standard is specified, it is reported.
  * R CMD check's 'checking compilation flags in Makevars' has been
    relaxed to accept the use of flags such as -std=f2008 in
    PKG_FFLAGS.
  * tools::buildVignettes() has a new argument skip, which is used by
    R CMD check to skip (and note) vignettes with unavailable
    \VignetteDepends (PR#18318).
  * New generic .AtNames() added to enable class-specific completions
    after @. The formerly internal function findMatches() is now
    exported, mainly for use in methods for .DollarNames() and
    .AtNames().
  DEPRECATED AND DEFUNCT:
  * default.stringsAsFactors() is defunct.
  * Calling as.data.frame.&lt;class&gt;() directly (for 12 atomic classes)
    is going to be formally deprecated, currently activated by
    setting the environment variable
    _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ to non-empty, which also
    happens in R CMD check --as-cran.
  BUG FIXES:
  * Hashed environments with sizes less than 5 can now grow.
    (Reported to R-devel by Duncan Garmonsway.)
  * as.character(&lt;Rd&gt;, deparse = TRUE) failed to re-escape curly
    braces in LaTeX-like text.  (Reported by Hadley Wickham in
    PR#18324.)
  * library() now passes its lib.loc argument when requiring Depends
    packages; reported (with fix) in PR#18331 by Mikael Jagan.
  * R CMD Stangle: improved message about 'Output' files.
  * head(x, n) and tail(x, n) now signal an error if n is not
    numeric, instead of incidentally "working" sometimes returning
    all of x.  Reported and discussed by Colin Fay, in PR#18357.
  * The "lm" method for summary() now gives the correct F-statistic
    when the model contains an offset.  Reported in PR#18008.
  * C() and `contrasts&lt;-`() now preserve factor level names when
    given a function object (as opposed a function name which did
    preserve names). Reported in PR#17616.
  * c(a = 1, 2)[[]] no longer matches 2 but rather signals a
    _classed_ error.  Reported and analysed by Davis Vaughan in
    PR#18367, a duplicate of PR#18004, by Jan Meis et al.  For
    consistency, NULL[[]] is also erroneous now.  x[[]] &lt;- v gives an
    error of the same class "MissingSubscriptError".
  * The relist() function of utils now supports NULL elements in the
    skeleton (PR#15854).
  * ordered(levels = *) (missing x) now works analogously to factor(,
    ordered=TRUE); reported (with fix) by Achim Zeileis in PR#18389.
  * User-defined Rd macro definitions can now span multiple lines,
    thanks to a patch from Duncan Murdoch. Previously, the Rd parser
    silently ignored everything after the first line.
  * Plain-text help (tools::Rd2txt()) now preserves an initial blank
    line for text following description list items.
  * tools::Rd2HTML() and tools::Rd2latex() no longer split \arguments
    and \value lists at Rd comments.
  * tools::Rd2latex() now correctly handles optional text outside
    \items of argument lists as well as bracketed text at the
    beginning of sections, e.g., \value{[NULL]}.
  * as.character(&lt;POSIXt&gt;) now behaves more in line with the methods
    for atomic vectors such as numbers, and is no longer influenced
    by options().  Ditto for as.character(&lt;Date&gt;).  The
    as.character() method gets arguments digits and OutDec with
    defaults _not_ depending on options().  Use of as.character(*,
    format = .) now warns.
  * Similarly, the as.character.hexmode() and *.octmode() methods
    also behave as good citizen methods and back compatibility option
    keepStr = TRUE.
  * The as.POSIXlt(&lt;POSIXlt&gt;) and as.POSIXct(&lt;POSIXct&gt;) default
    methods now do obey their tz argument, also in this case.
  * as.POSIXlt(&lt;Date&gt;) now does apply a tz (time zone) argument, as
    does as.POSIXct(); partly suggested by Roland Fuss on the R-devel
    mailing list.
  * as.Date.POSIXlt(x) now also works when the list components are of
    unequal length, aka "partially filled" or "ragged".
  * expand.model.frame() looked up variables in the wrong environment
    when applied to models fitted without data.  Reported in
    PR#18414.
  * time() now (also) uses the ts.eps = getOption("ts.eps") argument
    and thus by default rounds values very close to the start (or
    end) of a year.  Based on a proposal by Andre"i V. Kostyrka on
    R-help.
  * Printing of a factanal() result with just one factor and sort =
    TRUE now works regularly, fixing PR#17863 by Timothy Bates,
    thanks to the 'R Contributors' working group.
  * Printing 0-length objects of class "factor", "roman", "hexmode",
    "octmode", "person", "bibentry", or "citation" now prints
    something better, one of which fixes PR#18422, reported by
    Benjamin Feakins.
  * Sys.timezone() queries timedatectl only if systemd is loaded;
    addressing a report by Jan Gorecki in PR#17421.
  * The formula method of cor.test() had scoping problems when
    environment(formula) was not the calling environment; reported
    with a patch proposal by Mao Kobayashi in PR#18439.
  * attach() of an environment with active bindings now preserves the
    active bindings.  Reported by Kevin Ushey in PR#18425.
  * BLAS detection now works also with system-provided libraries not
    available as regular files.  This fixes detection of the
    Accelerate framework on macOS since Big Sur.  Reported by David
    Novgorodsky.
  * download.file() gives a helpful error message in case of an
    invalid download.file.method option, thanks to Colin Fay's report
    in PR#18455.
  * Sporadic crashes of Rterm when using completion have been fixed.
  * Rprof() is now more reliable.  A livelock in thread
    initialization with too short sampling interval has been fixed on
    macOS.  A deadlock in using the C runtime has been fixed on
    Windows.  A potential deadlock has been prevented on Unix.
  * Cursor placement in Rgui now works even after a fixed-width font
    is selected.
  * Mandatory options (options()) are now set on startup so that
    saving and restoring them always works (PR#18372).
  * Package installation, R CMD INSTALL or install.packages(*), now
    parses each of the &lt;pkg&gt;/R/*.R files individually instead of
    first concatenating and then parse()ing the large resulting file.
    This allows parser or syntax errors to be diagnosed with correct
    file names and line numbers, thanks to Simon Dedman's report and
    Bill Dunlap's patch in PR#17859.
    This _does_ require syntactically self contained R source files
    now, fixing another inadvertent bug.
  * predict.lm(&lt;model with offset&gt;) now finds the offset in the
    correct environment, thanks to Andr'e Gillibert's report and patch
    in PR#18456.
  * getInitial(&lt;formula&gt;) now finds the selfStart model in the
    correct environment.  (Reported by Ivan Krylov in PR#18368.)
  * Fix for possible segfault when using recently-added graphics
    features, such as gradients, clipping paths, masks, and groups
    with pdf(file=NULL).
  * class(m) &lt;- class(m) no longer changes a matrix m by adding a
    class _attribute_.
  * packageDate(pkg) now only warns once if there is no pkg.
  * When ts() creates a multivariate time series, "mts", it also
    inherits from "array" now, and is.mts() is documented _and_
    stricter.
  * Rd2txt() now preserves line breaks of \verb Rd content and from
    duplicated \cr.  The former also fixes the rendering of verbatim
    output from Rd \Sexpr in plain-text help.
  * uniroot(f, interval) should no longer wrongly converge _outside_
    the interval in some cases where abs(f(x)) == Inf for an x at the
    interval boundary, thanks to posts by Ben Bolker and Serguei
    Sokol on R-devel.
  * Vectorized alpha handling in palette functions such as in gray(),
    rainbow(), or hcl.colors() works correctly now, thanks to Achim
    Zeileis' report and patch in PR#18476.
  * Formatting and print()ing of bibentry objects has dropped the
    deprecated citation.bibtex.max argument, such that the bibtex
    argument's default for print.bibentry() depends directly on the
    citation.bibtex.max option, whereas in format.bibentry() the
    option no longer applies.
  * Attempting to use a character string naming a foreign function
    entry point in a foreign function call in a package will now
    signal an error if the packages has called R_forceSymbols to
    specify that symbols must be used.
  * An error in table() could permanently set options(warn=2)
    promoting all subsequent warnings to errors.
  * The sigma() function gave misleading results for binary GLMs.  A
    new method for objects of class "glm" returns the square root of
    the estimate of the dispersion parameter using the same
    calculation as summary.glm().
  * bs() and ns() in the (typical) case of automatic knot
    construction, when some of the supposedly inner knots coincide
    with boundary knots, now moves them inside (with a warning),
    building on PR#18442 by Ben Bolker.
  * R CMD on Windows now skips the site profile with --no-site-file
    and --vanilla even when R_PROFILE is set (PR#18512, from Kevin
    Ushey).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1686916800">- CHANGES IN R 4.3.1:
  C-LEVEL FACILITIES:
  * The C-level API version of R's integrate(), Rdqags() in Applic.h,
    now returns the correct number of integrand evaluations neval,
    fixing PR#18515 reported and diagnosed by Stephen Wade.
  * The C prototypes for LAPACK calls dspgv and dtptrs in
    R_exts/Lapack.h had one too many and one too few character length
    arguments - but this has not caused any known issues. To get the
    corrected prototypes, include
    [#]include &lt;Rconfig.h&gt; // for PR18534fixed
    [#]ifdef PR18534fixed
    [#] define usePR18534fix 1
    [#]endif
    [#]include &lt;R_exts/Lapack.h&gt;
    in your C/C++ code (PR#18534).
  INSTALLATION:
  * Many of the checks of esoteric Internet operations and those
    using unreliable external sites have been moved to a new target
    that is not run by default and primarily intended for the core
    developers.  To run them use
    cd tests; make test-Internet-dev
  BUG FIXES:
  * .S3methods(), typically called from methods(), again marks
    methods from package base as visible.
    Also, the visibility of non-base methods is again determined by
    the method's presence in search().
  * tools::Rdiff() is now more robust against invalid strings, fixing
    installation tests on Windows without Rtools installed
    (PR#18530).
  * Fix (new) bug in hcl.colors(2, *), by Achim Zeileis (PR#18523).
  * head(., &lt;illegal&gt;) and tail(..) now produce more useful "Error in
    ...." error messages, fixing PR#18362.
  * Package code syntax on Windows is checked in UTF-8 when UTF-8 is
    the native encoding.
  * na.contiguous(x) now also returns the first run, when it is at
    the beginning and there is a later one of the same length;
    reported to R-devel, including a fix, by Georgi Boshnakov.
    Further, by default, it modifies only an existing attr(*,"tsp")
    but otherwise no longer sets one.
  * chol(&lt;not pos.def&gt;, pivot = &lt;T|F&gt;) now gives a correct error or
    warning message (depending on pivot), thanks to Mikael Jagan's
    (PR#18541).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1699012800">- CHANGES IN R 4.3.2:
  NEW FEATURES:
  * The default initialization of the "repos" option from the
    repositories file at startup can be skipped by setting
    environment variable R_REPOSITORIES to NULL such that
    getOption("repos") is empty if not set elsewhere.
  * qr.X() is now an implicit S4 generic in methods.
  * iconv(to = "ASCII//TRANSLIT") is emulated using substitution on
    platforms which do not support it (notably Alpine Linux).  This
    should give a human-readable conversion in ASCII on all platforms
    (rather than NA_character_).
  * trans3d() gains options continuous and verbose addressing the
    problem of possible "wrap around" when projecting too long
    curves, as reported by Achim Zeileis in PR#18537.
  * tools::showNonASCII() has been rewritten to work better on macOS
    14 (which has a changed implementation of iconv()).
  * tiff(type = "quartz") (the default on macOS) now warns if
    compression is specified: it continues to be ignored.
  INSTALLATION on a UNIX-ALIKE:
  * There is some support for building with Intel's LLVM-based
    compilers on x86_64 Linux, such as (C) icx, (C++) ipcx and
    (Fortran) ifx from oneAPI 2023.x.y.
  * There is support for using LLVM's flang-new as the Fortran
    compiler from LLVM 16.0.x (preferably 17.0.0 or later).
  UTILITIES:
  * R CMD check reports the use of the Fortran 90 random number
    generator RANDOM_NUMBER() and the subroutines to initialize it.
    'Writing R Extensions' has example code to use R's RNGs from
    Fortran.
  BUG FIXES:
  * substr(x, n, L) &lt;- cc now works (more) correctly for multibyte
    UTF-8 strings x when L &gt; nchar(x), thanks to a report and patch
    by 'Architect 95'.
  * contrib.url(character()) now returns 0-length character() as
    documented, which also avoids spurious warnings from
    available.packages() et al. in the edge case of an empty vector
    of repository URLs.
  * readChar(., 4e8) no longer fails, thanks to Kodi Arfer's report
    (PR#18557).
  * lapply(&lt;list&gt;, as.data.frame) no longer warns falsely for some
    base vector components.
  * Communication between parent and child processes in the multicore
    part of parallel could fail on platforms that do not support an
    arbitrarily large payload in system functions read()/write() on
    pipes (seen on macOS where a restriction to INT_MAX bytes is
    documented, without doing a partial read unlike Linux). The
    payload is now split into 1Gb chunks to avoid that problem.
    (PR#18571)
  * qqplot(x,y, conf.level=.) gives better confidence bounds when
    length(x) != length(y), thanks to Alexander Ploner's report and
    patch proposal (PR#18557).
  * norm(&lt;0-length&gt;, "2") now gives zero instead of an error, as all
    the other norm types, thanks to Mikael Jagan's PR#18542.
  * Build-stage Rd macros \packageAuthor and \packageMaintainer now
    process Authors@R, fixing NA results when the package DESCRIPTION
    omits Author and Maintainer fields.
  * Formatting and printing complex numbers could give things like
    0.1683-0i because of rounding error: -0i is now replaced by +0i.
  * postscript() refused to accept a title comment containing the
    letter "W" (PR#18599).
  * isoreg(c(1,Inf)) signals an error instead of segfaulting, fixing
    PR#18603.
  * tiff(type = "Xlib") was only outputting the last page of
    multi-page plots.
  * tools::latexToUtf8() again knows about \~{n} and other letters
    with tilde, fixing a regression in R 4.3.0, and about \^{i} as an
    alternative to \^{\i} (similarly with other accents).
    Furthermore, LaTeX codes for accented I letters are now correctly
    converted, also fixing related mistakes in
    tools::encoded_text_to_latex().
  * tar(*, tar = "internal") no longer creates out-of-spec tar files
    in the very rare case of user or group names longer than 32
    bytes, fixing PR#17871 with thanks to Ivan Krylov.
  * When using the "internal" timezone datetime code, adding a
    fraction of a second no longer adds one second, fixing PR#16856
    from a patch by Ivan Krylov.
  * tools::checkRd() no longer produces spurious notes about
    "unnecessary braces" from multi-line Rd results of \Sexpr macros.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1709208000">- CHANGES IN R 4.3.3:
  NEW FEATURES:
  * iconv() now fixes up variant encoding names such as "utf8"
    case-insensitively.
  DEPRECATED AND DEFUNCT:
  * The legacy encoding = "MacRoman" is deprecated in pdf() and
    postscript(): support was incomplete in earlier versions of R.
  BUG FIXES:
  * Arguments are now properly forwarded to methods on S4 generics
    with ... in the middle of their formal arguments. This was broken
    for the case when a method introduced an argument but did not
    include ... in its own formals. Thanks to Herv'e Pag`es for the
    report PR#18538.
  * Some invalid file arguments to pictex(), postscript() and xfig()
    opened a file called NA rather than throw an error.  These
    included postscript(NULL) (which some people expected to work
    like pdf(NULL)).
  * Passing filename = NA to svg(), cairo_pdf(), cairo_ps() or the
    Cairo-based bitmap devices opened a file called NA: it now throws
    an error.
  * quartz(file = NA) opened a file called NA, including when used as
    a Quartz-based bitmap device.  It now gives an error.
  * rank(&lt;long vector&gt;) now works, fixing PR#18617, thanks to Ilia
    Kats.
  * seq.int() did not adequately check its length.out argument.
  * match(&lt;POSIXct&gt;, .) is correct again for differing time zones,
    ditto for "POSIXlt", fixing PR#18618 reported by Bastian Klein.
  * drop.terms(*, dropx = &lt;0-length&gt;) now works, fixing PR#18563 as
    proposed by Mikael Jagan.
  * drop.terms(*) keeps + offset(.) terms when it should, PR#18565,
    and drop.terms() no longer makes up a response, PR#18566, fixing
    both bugs thanks to Mikael Jagan.
  * getS3method("t", "test") no longer finds the t.test() function,
    fixing PR#18627.
  * pdf() and postscript() support for the documented Adobe encodings
    "Greek" and "Cyrilllic" was missing (although the corresponding
    Windows' codepages could be used).
  * Computations of glyph metric information for pdf() and
    postscript() did not take into account that transliteration could
    replace one character by two or more (only seen on macOS 14) and
    typically warned that the information was not known.
  * rank(x) no longer overflows during integer addition, when
    computing rank average for largish but not-yet long vector x,
    fixing PR#18630, thanks to Ilia Kats.
  * list.files() on Windows now returns also files with names longer
    that 260 bytes (the Windows limit is 260 characters).
    Previously, some file names particularly with 'East Asian'
    characters were omitted.
  * cov2cor(&lt;0 x 0&gt;) now works, fixing PR#18423 thanks to Mikael
    Jagan and Elin Waring.
  * cov2cor(&lt;negative diagonal&gt;) and similar now give one warning
    instead of two, with better wording, fixing PR#18424 thanks to
    Mikael Jagan.
  * tools:: startDynamicHelp() now ensures port is in proper range,
    fixing PR#18645.
  * pbeta(x, a,b) is correct now for x=0 or 1 in the boundary cases
    where a or b or both are 0, fixing PR#18672 thanks to Michael
    Fay.
  * pmatch(x, table) for large table, also called for data frame row
    selection, dfrm[nm, ], is now interruptible, fixing PR#18656.
  * predict(&lt;rank-deficient lm&gt;, newdata=*) fix computing of nbasis,
    see Russ Lenth's comment 29 in PR#16158.
  * Added a work-around for a bug in macOS 14.3.1 and higher which
    prevents R plots in the Quartz Cocoa device from updating on
    screen.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1713960000">- CHANGES IN R 4.4.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Startup banners, R --version, sessionInfo() and R CMD check no
    longer report (64-bit) as part of the platform as this is almost
    universal - the increasingly rare 32-bit platforms will still
    report (32-bit).
    On Windows, ditto for window titles.
  * is.atomic(NULL) now returns FALSE, as NULL is not an atomic
    vector.  Strict back-compatibility would replace is.atomic(foo)
    by (is.null(foo) || is.atomic(foo)) but should happen only
    sparingly.
  NEW FEATURES:
  * The confint() methods for "glm" and "nls" objects have been
    copied to the stats package.  Previously, they were stubs which
    called versions in package MASS. The MASS namespace is no longer
    loaded if you invoke (say) confint(glmfit).  Further, the "glm"
    method for profile() and the plot() and pairs() methods for class
    "profile" have been copied from MASS to stats.  (profile.nls()
    and plot.profile.nls() were already in stats.)
  * The confint() and profile methods for "glm" objects have gained a
    possibility to do profiling based on the Rao Score statistic in
    addition to the default Likelihood Ratio. This is controlled by a
    new test = argument.
  * The pairs() method for "profile" objects has been extended with a
    which = argument to allow plotting only a subset of the
    parameters.
  * The "glm" method for anova() computes test statistics and
    p-values by default, using a chi-squared test or an F test
    depending on whether the dispersion is fixed or free.  Test
    statistics can be suppressed by giving argument test a false
    logical value.
  * In setRepositories() the repositories can be set using their
    names via name = instead of index ind =.
  * methods() and .S3methods() gain a all.names option for the (rare)
    case where functions starting with a . should be included.
  * Serializations can now be interrupted (e.g., by Ctrl-C on a
    Unix-alike) if they take too long, e.g., from save.image(),
    thanks to suggestions by Ivan Krylov and others on R-devel.
  * New startup option --max-connections to set the maximum number of
    simultaneous connections for the session.  Defaults to 128 as
    before: allowed values up to 4096 (but resource limits may in
    practice restrict to smaller values).
  * R on Windows (since Windows 10 2004) now uses the new Segment
    Heap allocator. This may improve performance of some
    memory-intensive applications.
  * When R packages are built, typically by R CMD build &lt;pkg&gt;, the
    new --user=&lt;build_user&gt; option overrides the (internally
    determined) user name, currently Sys.info()["user"] or LOGNAME.
    This is a (modified) fulfillment of Will Landau's suggestion in
    PR#17530.
  * tools::testInstalledBasic() gets new optional arguments outDir
    and testSrcdir, e.g., allowing to use it in a &lt;builddir&gt; !=
    &lt;srcdir&gt; setup, and in standard "binary" Windows installation
  * if* a source tests/ folder is present.
  * range(&lt;DT_with_Inf&gt;, finite = TRUE) now work for objects of class
    "Date", "POSIXct", and "POSIXlt" with infinite entries,
    analogously to range.default(), as proposed by Davis Vaughan on
    R-devel.  Other range()-methods can make use of new function
    .rangeNum().
  * New .internalGenerics object complementing .S3PrimitiveGenerics,
    for documentation and low-level book-keeping.
  * grid() now invisibly returns the x- and y- coordinates at which
    the grid-lines were drawn.
  * norm(., type) now also works for complex matrices.
  * kappa(., exact = TRUE, norm = *) now works for all norms and also
    for complex matrices.  In symmetric / triangular cases, the new
    argument uplo = "U" | "L" allows the upper or lower triangular
    part to be specified.
  * memDecompress(type = "unknown") recognizes compression in the
    default 'zlib' format as used by memCompress(type = "gzip").
  * memCompress() and memDecompress() will use the libdeflate library
    (&lt;https://github.com/ebiggers/libdeflate&gt;) if installed.  This
    uses the same type of compression for type = "gzip" but is 1.5-2x
    faster than the system libz library on some common platforms: the
    speed-up may depend on the library version.
  * diff() for objects of class "Date", "POSIXct", and "POSIXlt"
    accepts a units argument passed via ....
  * Dynamic help now does a much better job of rendering package
    DESCRIPTION metadata.
  * Rprof() gains an event argument and support for elapsed (real)
    time profiling on Unix (PR#18076).
  * filled.contour() gains a key.border argument.
  * tools::update_pkg_po() gets arguments pot_make and mo_make for
    _not_ re-making the corresponding files, and additionally a
    verbose argument.
  * Hexadecimal string colour specifications are now accepted in
    short form, so, for example, we can use "#123", which is
    equivalent to "#112233".
    Thanks to MikeFC for the original idea and Ella Kaye, Malcolm
    Barrett, George Stagg, and Hanne Oberman for the patch.
  * Plain-text help shows \var markup by angle brackets.
  * The new experimental primitive function declare() is intended to
    eventually allow information about R code to be communicated to
    the interpreter, compiler, and code analysis tools. The syntax
    for declarations is still being developed.
  * Functions psmirnov(), qsmirnov() and rsmirnov() in package stats
    have had argument two.sided renamed to alternative, to take into
    account that the permutation distributions of the one-sided
    statistics can be different in the case of ties.  Consequence of
    PR#18582.
  * sort() is now an implicit S4 generic in methods.
  * Formatting and printing, format(z), print(z), of complex vectors
    z no longer zap relatively small real or imaginary parts to zero,
    fixing PR#16752.  This is an API change, as it was documented
    previously to round real and imaginary parts together on purpose,
    producing nicer looking output.  As mentioned, e.g. in the PR,
    this change is compatible with many other "R-like" programming
    environments.
    We have simplified the internal code and now basically format the
    real and imaginary parts independently of each other.
  * New experimental functions Tailcall() and Exec() to support
    writing stack-space-efficient recursive functions.
  * Where characters are attempted to be plotted by pdf(),
    postscript() and xfig() which are not in the selected 8-bit
    character set (most often Latin-1) and the R session is using a
    UTF-8 locale, the warning messages will show the UTF-8 character
    rather than its bytes and one dot will be substituted per
    character rather than per byte.  (Platforms whose iconv() does
    transliteration silently plot the transliteration.)
    In a UTF-8 locale some transliterations are now done with a
    warning (e.g., dashes and Unicode minus to hyphen, ligatures are
    expanded, permille (‰) is replaced by o/oo), although the OS may
    have got there first.  These are warnings as they will continue
    to be replaced by dots in earlier versions of R.
  * The matrix multiplication functions crossprod() and tcrossprod()
    are now also primitive and S3 generic, as %*% had become in R
    4.3.0.
  * source() and example() have a new optional argument catch.aborts
    which allows continued evaluation of the R code after an error.
  * The non-Quartz tiff() devices allow additional types of
    compression if supported by the platform's libtiff library.
  * The list of base and recommended package names is now provided by
    tools::standard_package_names().
  * cairo_pdf() and cairo_ps() default to onefile = TRUE to closer
    match pdf() and postscript().
  * New option catch.script.errors provides a documented way to catch
    errors and then continue in non-interactive use.
  * L %||% R newly in base is an expressive idiom for the phrases
    if(!is.null(L)) L else R or if(is.null(L)) R else L.
  * The return value from warnings() now always inherits from
    "warnings" as documented, now also in the case of no warnings
    where it previously returned NULL.
  * as.complex("1i") now returns 0 + 1i instead of NA with a warning.
  * z &lt;- c(NA, 1i) now keeps the imaginary part Im(z[1]) == 0, no
    longer coercing to NA_complex_.  Similarly, cumsum(z) correctly
    sums real and imaginary parts separately, i.e., without
    "crosstalk" in case of NAs.
  * On Alpine Linux iconv() now maps "latin2", "latin-2", "latin9"
    and "latin-9" to encoding names the OS knows about
    (case-insensitively).
  * iconv(sub = "Unicode") now always zero-pads to four (hex) digits,
    rather than to 4 or 8.  (This seems to have become the convention
    once Unicode restricted the number of Unicode points to 2^21 - 1
    and so will never need more than 6 digits.)
  * NCOL(NULL) now returns 0 instead of 1, for consistency with
    cbind().
  * The information for the Euro glyph missing from the Adobe .afm
    files for the Courier, Helvetica and Times families has been
    copied from their URW equivalents - this will improve vertical
    centring in the pdf() and postscript() devices.
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.12.0.  The changes are almost entirely cosmetic.
  * The included LAPACK sources have been updated to version 3.12.0
    and some further double-complex routines added.
  * There are new font families for the 2014--5 URW 2.0 fonts (see
    ?pdf) which are included in recent versions of Ghostscript.
    These have font widths for most Greek glyphs and a few others
    which were missing from the original versions (whose font
    families remain available for reproducibility, although
    Ghostscript-based viewers will render using the 2.0 versions).
  * Improve the large-n efficiency of as.matrix(&lt;dist&gt;), thanks an R
    contributors effort, notably by Tim Taylor and Heather Turner,
    see PR#18660.
  * The default and numeric methods of all.equal() get a check.class
    option.
  * zapsmall() gets new optional arguments, function mFUN and min.d,
    for extra flexibility; fulfills a wish in PR#18199.  Also, it is
    now an implicit S4 generic in package methods.
  * The Rd filter for aspell() gains an ignore argument.
  * New generic function sort_by(), primarily useful for the
    data.frame method which can be used to sort rows of a data frame
    by one or more columns.
  * The icence headers for the RPC code in src/extra/xdr have been
    updated to use the GPL-compatible licence published by Oracle
    America in 2010.
  * New function pkg2HTML() in tools to create single-page HTML
    reference manuals for R packages.
  * The byte code evaluator now uses less C stack space for recursive
    calls to byte-compiled functions. It also makes more of an effort
    to avoid allocations for scalar return values.
  * New completion option backtick (disabled by default) allows
    non-syntactic completions to be wrapped in backquotes. This is
    currently only useful for Jupyter notebooks via the IRkernel
    package, and may cause problems for other backends.
  INSTALLATION:
  * The parser has been updated to work with bison 3.8.2, which is
    now used for the pre-generated parsers in gram.c, file.c, and
    gramRd.c. A few parser error messages have changed, which may
    affect code that relies on exact messages.
  INSTALLATION on a UNIX-ALIKE:
  * System valgrind headers are now required to use configure option
  - -with-valgrind-instrumentation with value 1 or 2.
  * configure will warn if it encounters a 32-bit build, as that is
    nowadays almost untested.
  * Environment variable R_SYSTEM_ABI is no longer used and so no
    longer recorded in etc/Renviron (it was not on Windows and was
    only ever used when preparing package tools).
  * If the libdeflate library and headers are available, libdeflate
    rather than libz is used to (de)compress R objects in lazy-load
    databases.  Typically tasks spend up to 5% of their time on such
    operations, although creating lazy-data databases is one of the
    exceptions.
    This can be suppressed if the library is available by the
    configure option --without-libdeflate-compression.
  * configure option --enable-lto=check has not worked reliably since
    2019 and has been removed.
  * The minimum autoconf requirement for a maintainer build has been
    increased to autoconf 2.71.
    It is intended to increase this to 2.72 for R 4.5.0: the
    distributed configure file was generated using 2.72.
  * The minimum version requirement for an external LAPACK has been
    reduced to 3.9.0.
  * No default C++ compiler is set if no C++17 compiler is detected:
    there is no longer an automatic fallback to C++14 or C++11.
    Compilers from the last five years should have sufficient
    support: for others macros CXX and CXXSTD can be set in file
    config.site to provide a fallback if needed.
    The Objective-C++ compiler now by default uses the standard
    selected by R for C++ (currently C++17) rather than the default
    standard for the C++ compiler (which on macOS is still C++98).
  INSTALLATION on macOS:
  * A new configure option --with-newAccelerate makes use of Apple's
    'new' BLAS / LAPACK interfaces in their Accelerate framework.
    Those interfaces are only available in macOS 13.3 or later, and
    building requires SDK 13.3 or later (from the Command Line Tools
    or Xcode 14.3 or later).
    By default the option uses new Accelerate for BLAS calls: to also
    use it for LAPACK use option --with-newAccelerate=lapack.  The
    later interfaces provide LAPACK 3.9.1 rather than 3.2.1: 3.9.1 is
    from 2021-04 and does not include the improved algorithms
    introduced in LAPACK 3.10.0 (including for BLAS calls).
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools44, an update of the Rtools43 toolchain.  It is
    based on GCC 13 and newer versions of MinGW-W64, binutils and
    libraries (targeting 64-bit Intel CPUs).  R-devel can no longer
    be built using Rtools43 without changes.
  * Rtools44 has experimental support for 64-bit ARM (aarch64) CPUs
    _via_ the LLVM 17 toolchain using lld, clang/flang-new and
    libc++.
  UTILITIES:
  * R CMD check notes when S4-style exports are used without
    declaring a strong dependence on package methods.
  * tools::checkRd() (used by R CMD check) detects more problems with
    \Sexpr-based dynamic content, including bad nesting of \Sexprs
    and invalid arguments.
  * tools::checkRd() now reports Rd titles and section names ending
    in a period; this is ignored by R CMD check unless environment
    variable _R_CHECK_RD_CHECKRD_MINLEVEL_ is set to -5 or smaller.
  * R CMD check now notes Rd files without an \alias, as long
    documented in 'Writing R Extensions' §1.3.1.  The check for a
    missing \description has been moved from tools::checkRd() to
    tools::checkRdContents().
  * R CMD check now visits inst/NEWS.Rd and OS-specific man
    subdirectories when checking Rd files.
  * tools::checkDocFiles() and tools::checkRdContents() now also
    check internal Rd files by default, but "specially" (ignoring
    missing documentation of arguments).
  * R CMD Rdiff gets option --useEx.
  * R CMD check now warns on non-portable uses of Fortran KIND such
    as INTEGER(KIND=4) and REAL(KIND=8).
    To see the failing lines set environment variable
    _R_CHECK_FORTRAN_KIND_DETAILS_ to a true value.
  * When checking Rd files, R CMD check now notes some of the "lost
    braces" that tools::checkRd() finds.  Typical problems are Rd
    macros missing the initial backslash (e.g., code{...}), in-text
    set notation (e.g., {1, 2}, where the braces need escaping), and
    \itemize lists with \describe-style entries of the form
    \item{label}{description}.
  * R CMD INSTALL (and hence check) will compile C++ code with
  - DR_NO_REMAP if environment variable _R_CXX_USE_NO_REMAP_ is set
    to a true value.  It is planned that this will in future become
    the default for compiling C++.
  * The new built-in Rd macro \dontdiff{} can be used to mark example
    code whose output should be ignored when comparing check output
    to reference output (tests/Examples/&lt;pkg&gt;-Ex.Rout.save).  The
    \dontdiff tag, like \donttest, is _not_ shown on the rendered
    help page, so provides a clean alternative to ##
    IGNORE_RDIFF_(BEGIN|END) comments.
  * R CMD build when there is no NAMESPACE, now uses the recommended
    exportPattern("^[^.]"), instead of exporting everything.
  * R CMD check now warns about non-ASCII characters in the NAMESPACE
    file (in addition to R files). Such packages are not portable and
    may fail to install on some platforms.
  C-LEVEL FACILITIES:
  * Headers R_ext/Applic.h and R-ext/Linpack.h used to include
    R_ext/BLAS.h although this was undocumented and unneeded by their
    documented entry points.  They no longer do so.
  * New function R_missing(), factored out from do_missing(), used to
    fix PR#18579.
  * SEXP type S4SXP has been renamed to OBJSXP to support
    experimenting with alternative object systems.  The S4SXP value
    can still be used in C code but is now deprecated.  Based on
    contributions from the R Consortium's Object-Oriented Programming
    Working Group.
  * New function pow1p(x,y) for accurate (1+x)^y.
  * mkCharLenCE was incorrectly documented to take a size_t length
    but was implemented with int (and character strings in R are
    limited to 2^31 - 1 bytes).
  DEPRECATED AND DEFUNCT:
  * data() no longer handles zipped data from long-defunct (since R
    2.13.0) --use-zip-data installations.
  * The legacy graphics devices pictex() and xfig() are now
    deprecated.  They do not support recent graphics enhancements and
    their font handling is rudimentary. The intention is to retain
    them for historical interest as long as they remain somewhat
    functional.
  * Support for encoding = "MacRoman" has been removed from the pdf()
    and postscript() devices - this was a legacy encoding supporting
    classic macOS up to 2001 and no longer has universal libiconv
    support.
  * is.R() is deprecated as no other S dialect is known to be in use
    (and this could only identify historical dialects, not future
    ones).
    Further information on calls can be obtained by setting the
    environment variable _R_DEPRECATED_IS_R_ to error which turns the
    deprecation warning into an error and so by default gives a
    traceback.  (This is done by R CMD check --as-cran.)
  * UseMethod() no longer forwards local variables assigned in the
    generic function into method call environments before evaluating
    the method body. This makes method calls behave more like
    standard function calls and makes method code easier to analyze
    correctly.
  * The twelve as.data.frame.&lt;class&gt;() methods which were deprecated
    only via _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ and in R CMD
    check --as-cran are formally deprecated now in favour of calling
    as.data.frame() or as.data.frame.vector().  The deprecation
    "check" now works also when as.data.frame() is S4 generic thanks
    to Ivan Krylov.
  * The default method for the directional comparison operators &lt;, &gt;,
    &lt;=, and &gt;= now signals an error when one of the operands is a
    language object, i.e. a symbol or a call.
  * For terms.formula(), deprecate abb and neg.out arguments
    _formally_ in addition to just documenting it.
  BUG FIXES:
  * The methods package is more robust to not being attached to the
    search path.  More work needs to be done.
  * pairwise.t.test() misbehaved when subgroups had 0 DF for
    variance, even with pool.sd = TRUE.  (PR#18594 by Jack Berry).
  * Probability distribution functions [dpq]&lt;distrib&gt;(x, *), but also
    bessel[IKJY](x, .) now consistently preserve attributes(x) when
    length(x) == 0, e.g., for a 2 x 0 matrix, thanks to Karolis
    Koncevičius' report PR#18509.
  * Group "Summary" computations such as sum(1:3, 4, na.rm = 5, NA,
    7, na.rm = LL) now give an error instead of either 17 or NN for
    LL true or false, as proposed by Ivan Krylov on the R-devel
    mailing list.  (This also means it is now an error to specify
    na.rm more than once.)
  * as.complex(x) now returns complex(real = x, imaginary = 0) for
    _all_ numerical and logical x, notably also for NA or
    NA_integer_.
  * Directories are now omitted by file.copy(, recursive = FALSE) and
    in file.append() (PR#17337).
  * gsub() and sub() are now more robust to integer overflow when
    reporting errors caused by too large input strings (PR#18346).
  * Top-level handlers are now more robust to attempts to remove a
    handler whilst handlers are running (PR#18508).
  * The handling of Alt+F4 in dialogs created on Windows using
    GraphApp has been fixed (PR#13870).
  * density() more consistently computes grid values for the
    FFT-based convolution, following Robert Schlicht's analysis and
    proposal in PR#18337, correcting density values typically by a
    factor of about 0.999.  Argument old.coords = TRUE provides back
    compatibility.
  * palette.colors() gains a name argument that defaults to FALSE
    controlling whether the vector of colours that is returned has
    names (where possible).  PR#18529.
  * tools::xgettext() no longer extracts the (non-translatable) class
    names from warningCondition and errorCondition calls.
  * S3method(&lt;gen&gt;, &lt;class&gt;, &lt;func&gt;) in the NAMESPACE file now works
    (again) when &lt;func&gt; is visible from the namespace, e.g.,
    imported, or in base.
  * getParseData(f) now also works for a function defined in the
    first of several &lt;pkg&gt;/R/*.R source files, thanks to Kirill
    Müller's report and Duncan Murdoch's patch in PR#16756.
  * Rd \Sexpr macros with nested #ifdef conditionals were not
    processed.
  * A non-blocking connection with non-default encoding (such as a
    socket) now correctly returns from readLines() after new data has
    arrived also when its EOF had been reached previously.  Thanks to
    Peter Meilstrup's report on R-devel and Ivan Krylov's report and
    patch proposal in PR#18555.
  * tools::checkRdContents() failed to detect empty argument
    descriptions when they spanned multiple lines, including those
    generated by prompt().  These cases are now noted by R CMD check.
  * Plain-text help no longer outputs spurious colons in the
    arguments list (for multi-line \item labels in the Rd source).
  * kappa() and rcond() work correctly in more cases; kappa(., norm =
    "2") now warns that it computes the 1-norm with (default) exact =
    FALSE; prompted by Mikael Jagan's quite comprehensive PR#18543.
  * Rd skeletons generated by prompt() or promptData() now use a
    dummy title (so R CMD build works).  tools::checkRdContents() has
    been updated to detect such template leftovers, including from
    promptPackage().
  * When S4 method dispatch fails because no method was found, the
    error message now includes the signature argument names; thanks
    to Michael Chirico's proposal on the R-devel list.
  * withAutoprint({ .. }) now preserves srcrefs previously lost,
    thanks to Andrew Simmons' report plus fix in PR#18572.
  * transform.data.frame() no longer adjusts names; in particular,
    untransformed variables are kept as-is, including those with
    syntactically invalid names (PR#17890).
  * The keep.source option for Rd \Sexpr blocks is no longer ignored.
  * The formula methods for t.test() and wilcox.test() now catch when
    paired is passed, addressing PR#14359; use Pair(x1, x2) ~ 1 for a
    paired test.
  * The level reported in the browser prompt was often too large. It
    now shows the number of browser contexts on the stack.
  * For cbind() and rbind(), the optional deparse.level argument is
    now properly passed to methods, thanks to Mikael Jagan's PR#18579
    and comments there.
  * Some error and warning messages for large ('long vector')
    matrix(v, nr, nc) and dim(m) &lt;- d are now correct about sizes,
    using long long formatting, fixing PR#18612 (and more) reported
    by Mikael Jagan.
  * readChar(useBytes = TRUE) now terminates strings even when the
    underlying connection uses extra spaces in the input buffer.
    This fixes problems with extra garbage seen with gzip
    connections, PR#18605.
  * Named capture in PCRE regular expressions now works also with
    more than 127 named groups (PR#18588).
  * Datetime functions are now robust against long jumps when dealing
    with internal time zone changes.  This avoids confusing warnings
    about an invalid time zone, previously triggered by turning
    warnings into errors or handling them via tryCatch (PR#17966,
    PR#17780).
  * Datetime functions now restore even an empty TZ environment
    variable after internal time zone changes (PR#17724).  This makes
    results of datetime functions with this (typically unintentional)
    setting more predictable.
  * drop.terms(*) now drops response as by default, keep.response =
    FALSE, fixing PR#18564 thanks to Mikael Jagan.
  * dummy.coef(.) now also works for lm()-models with character
    categorical predictor variables rather than factor ones, fixing
    PR#18635 reported by Jinsong Zhao.
  * formals(f) &lt;- formals(f) now also works for a function w/o
    arguments and atomic _constant_ body(f).
  * Correct as.function(&lt;invalid list&gt;, .)'s error message.
  * removeSource() is yet more thorough in finding and removing
    "srcref" and the other source references from parsed R language
    chunks, fixing PR#18638 thanks to Andrew Simmons.
  * dgeom() is more accurate now, notably when its result is very
    small, fixing PR#18642 thanks to the proposal of Morten Welinder,
    also improving other instances where C level binom_raw(x, n, ..)
    has x == 0 or x== n.
  * warning() with options(warn = 1) has improved output for
    multi-line messages.
  * axis.Date() and axis.POSIXct() now respect the par("lab") setting
    for the number of pretty() intervals.
  * Comparisons for language objects (which are based on deparsing)
    are now more careful about using accurate deparsed results
    (PR#18676).
  * Plain-text help (Rd2txt) now correctly preserves blank lines
    following single-line \dontrun code.
  * &lt;POSIXlt&gt;[*] no longer sets wrong "balanced" attribute, fixing
    PR#18681 thanks to Mikael Jagan.
  * str(&lt;classed-call&gt;) now deparses the call as expected, fixing
    PR#18684, reported by Dave Slager.
  * In Rd examples, code following the closing brace of a \dontrun,
    \dontshow or \donttest tag on the same line is no longer skipped
    when R CMD check runs the examples.
  * as.data.frame(matrix(*, ncol=0)) now gets valid names() and
    colnames(); reported by Davis Vaughan on the R-devel list.
  * Internal Mathlib function stirlerr(n) is now almost fully
    (52-bit) accurate for all n &gt;= ~5.9 and more accurate also in the
    range 1 -- 5.9.  This entails small ("after 12th decimal")
    changes in density functions, e.g., dgamma() in _some_ regions of
    their support.  The fix was partly prompted by Morten Welinder's
    PR#18640.
  * Numbers like 9876543.2 are now considered non-integer by Mathlib
    internal R_nonint(), amending original fix of PR#15734.
  * Rd comment lines no longer cause broken paragraphs in the
    rendered PDF and plain-text help. In code blocks, pure comment
    lines (starting with %) no longer produce an empty line.
  * xtabs(Freq ~ .) now consistently defaults to na.action = na.pass,
    using na.rm = FALSE (added as an argument) when summing over Freq
    (PR#17770).
  * tools::testInstalledPackage() is no longer silent about failures
    from running examples or tests and its return code no longer
    ignores failures from checking vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1718366400">- CHANGES IN R 4.4.1:
  C-LEVEL FACILITIES:
  * Functions R_atof and R_strtod declared in header R_ext/Utils.h
    are now documented in 'Writing R Extensions' and so formally part
    of the API.
  * The non-API entry points Rf_setSVector, Rf_StringFalse,
    Rf_StringTrue and Rf_isBlankString have been added to those
    reported by R CMD check.
  * The new function Rf_allocLang is now available. This provides an
    alternative to the idiom of calling Rf_allocList followed by
    SET_TYPEOF.
  UTILITIES:
  * R CMD check now reports as warnings what gfortran calls 'Fortran
    2018 deleted features', all of which have long been marked as
    'obsolescent' and some of which were deleted in Fortran 2008 or
    earlier.  Fortran compilers are no longer required to support
    these.
  BUG FIXES:
  * as.numeric(), scan(), type.convert() and other places which use
    the internal C function R_strtod now require a _non-empty_ digit
    sequence in a decimal or binary exponent.  This aligns with the
    C/POSIX standard for strtod and with ?NumericConstants.
  * as.data.frame(m, make.names=NA) now works correctly for a matrix
    m with NA's in row names.
  * The error message from &lt;POSIXlt&gt;[["hour"]] and similar now
    mentions *[[, "hour"]], as wished for in PR#17409 and proposed by
    Michael Chirico.
  * qbinom() and potentially qpois(), qnbinom(), no longer sometimes
    fail accurate inversion (of pbinom(), etc), thanks to Christopher
    Chang's report and patch in PR#18711.
  * The internal help server on Windows can again serve requests sent
    in quick succession, fixing a regression in R 4.4.0.
  * debugcall(&lt;S3Generic&gt;()) now also works when a corresponding
    S4-generic version is in the methods cache (PR#18143).
  * Package tools' toTitleCase(ch0) now returns character(0) when ch0
    is of zero length; fixing PR#18724, reported by David Hugh Jones.
  * R CMD check is no longer broken (without a check result and no
    explanation in 00check.log) for a package which declares an
    invalid VignetteBuilder in DESCRIPTION but has no vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1730376000">- CHANGES IN R 4.4.2:
  C-LEVEL FACILITIES:
  * The S-compatibility macros F77_COM and F77_COMDECL defined in
    header R_ext/RS.h are deprecated and will be removed shortly.  We
    could find no record of their use.
  BUG FIXES:
  * Mathlib function lgammacor(x) no longer warns about underflow to
    zero for large x.
  * Text widths and heights were incorrectly reported by the Quartz
    device if the drawing context didn't exist yet (typically when
    drawing off-screen to a window that is yet to appear, see
    PR#18591).
  * The Quartz device could segfault in cases where paths with spaces
    are used in the new glyph drawing API.  Thanks to Tomek
    Gieorgijewski (PR#18758).
  * On macOS in R CRAN builds, it is again possible to read
    little-endian UTF-16 text with a BOM from a connection using
    encoding="UTF-16".  Users building R from source should avoid
    using the system libiconv in macOS 14.1 and later.
  * methods' internal .requirePackage() now re-enables primitive
    method dispatch when needed; thanks to Ivan Krylov for
    demystifying CRAN package check failures on the R-devel mailing
    list.</changelog>
</package>
<package pkgid="c819dc1c9f13312795a05adbae238517856f771c2e2dc1db42af07db9a76b46df2596ad298ec08a001558e4b6d943e0fcc3c6af11f14e305e758aa859a91e44a" name="R-core-libs-debuginfo" arch="x86_64">
  <version epoch="0" ver="4.4.2" rel="51.0.2.2.sr20241103"/>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1620302400">- To get in sync with d:l:R:autoCRAN the Matrix package's split
  in -devel was reversed.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339200">- improved spec file according to comments of dimstar in
  https://build.opensuse.org/request/show/892685</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339201">- CHANGES IN R 4.1.0:
  FUTURE DIRECTIONS:
  * It is planned that the 4.1.x series will be the last to support
    32-bit Windows, with production of binary packages for that
    series continuing until early 2023.
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Data set esoph in package datasets now provides the correct
    numbers of controls; previously it had the numbers of cases added
    to these.  (Reported by Alexander Fowler in PR#17964.)
  NEW FEATURES:
  * www.omegahat.net is no longer one of the repositories known by
    default to setRepositories().  (Nowadays it only provides source
    packages and is often unavailable.)
  * Function package_dependencies() (in package tools) can now use
    different dependency types for direct and recursive dependencies.
  * The checking of the size of tarball in R CMD check --as-cran
    &lt;pkg&gt; may be tweaked via the new environment variable
    _R_CHECK_CRAN_INCOMING_TARBALL_THRESHOLD_, as suggested in
    PR#17777 by Jan Gorecki.
  * Using c() to combine a factor with other factors now gives a
    factor, an ordered factor when combining ordered factors with
    identical levels.
  * apply() gains a simplify argument to allow disabling of
    simplification of results.
  * The format() method for class "ftable" gets a new option justify.
    (Suggested by Thomas Soeiro.)
  * New ...names() utility.  (Proposed by Neal Fultz in PR#17705.)
  * type.convert() now warns when its as.is argument is not
    specified, as the help file always said it _should_.  In that
    case, the default is changed to TRUE in line with its change in
    read.table() (related to stringsAsFactor) in R 4.0.0.
  * When printing list arrays, classed objects are now shown _via_
    their format() value if this is a short enough character string,
    or by giving the first elements of their class vector and their
    length.
  * capabilities() gets new entry "Rprof" which is TRUE when R has
    been configured with the equivalent of --enable-R-profiling (as
    it is by default).  (Related to Michael Orlitzky's report
    PR#17836.)
  * str(xS4) now also shows extraneous attributes of an S4 object
    xS4.
  * Rudimentary support for vi-style tags in rtags() and R CMD rtags
    has been added.  (Based on a patch from Neal Fultz in PR#17214.)
  * checkRdContents() is now exported from tools; it and also
    checkDocFiles() have a new option chkInternal allowing to check
    Rd files marked with keyword "internal" as well.  The latter can
    be activated for R CMD check via environment variable
    _R_CHECK_RD_INTERNAL_TOO_.
  * New functions numToBits() and numToInts() extend the raw
    conversion utilities to (double precision) numeric.
  * Functions URLencode() and URLdecode() in package utils now work
    on vectors of URIs.  (Based on patch from Bob Rudis submitted
    with PR#17873.)
  * path.expand() can expand ~user on most Unix-alikes even when
    readline is not in use.  It tries harder to expand ~, for example
    should environment variable HOME be unset.
  * For HTML help (both dynamic and static), Rd file links to help
    pages in external packages are now treated as references to
    topics rather than file names, and fall back to a file link only
    if the topic is not found in the target package. The earlier rule
    which prioritized file names over topics can be restored by
    setting the environment variable _R_HELP_LINKS_TO_TOPICS_ to a
    false value.
  * c() now removes NULL arguments before dispatching to methods,
    thus simplifying the implementation of c() methods, _but_ for
    back compatibility keeps NULL when it is the first argument.
    (From a report and patch proposal by Lionel Henry in PR#17900.)
  * Vectorize()'s result function's environment no longer keeps
    unneeded objects.
  * Function ...elt() now propagates visibility consistently with
    ..n.  (Thanks to Lionel Henry's PR#17905.)
  * capture.output() no longer uses non-standard evaluation to
    evaluate its arguments.  This makes evaluation of functions like
    parent.frame() more consistent.  (Thanks to Lionel Henry's
    PR#17907.)
  * packBits(bits, type="double") now works as inverse of
    numToBits().  (Thanks to Bill Dunlap's proposal in PR#17914.)
  * curlGetHeaders() has two new arguments, timeout to specify the
    timeout for that call (overriding getOption("timeout")) and TLS
    to specify the minimum TLS protocol version to be used for
    https:// URIs (_inter alia_ providing a means to check for sites
    using deprecated TLS versions 1.0 and 1.1).
  * For nls(), an optional constant scaleOffset may be added to the
    denominator of the relative offset convergence test for cases
    where the fit of a model is expected to be exact, thanks to a
    proposal by John Nash.  nls(*, trace=TRUE) now also shows the
    convergence criterion.
  * Numeric differentiation _via_ numericDeriv() gets new optional
    arguments eps and central, the latter for taking central divided
    differences.  The latter can be activated for nls() via
    nls.control(nDcentral = TRUE).
  * nls() now passes the trace and control arguments to getInitial(),
    notably for all self-starting models, so these can also be fit in
    zero-noise situations via a scaleOffset.  For this reason, the
    initial function of a selfStart model must now have ... in its
    argument list.
  * bquote(splice = TRUE) can now splice expression vectors with
    attributes: this makes it possible to splice the result of
    parse(keep.source = TRUE).  (Report and patch provided by Lionel
    Henry in PR#17869.)
  * textConnection() gets an optional name argument.
  * get(), exists(), and get0() now signal an error if the first
    argument has length greater than 1.  Previously additional
    elements were silently ignored.  (Suggested by Antoine Fabri on
    R-devel.)
  * R now provides a shorthand notation for creating functions, e.g.
    \(x) x + 1 is parsed as function(x) x + 1.
  * R now provides a simple native forward pipe syntax |&gt;.  The
    simple form of the forward pipe inserts the left-hand side as the
    first argument in the right-hand side call.  The pipe
    implementation as a syntax transformation was motivated by
    suggestions from Jim Hester and Lionel Henry.
  * all.equal(f, g) for functions now by default also compares their
    environment(.)s, notably via new all.equal method for class
    function.  Comparison of nls() fits, e.g., may now need
    all.equal(m1, m2, check.environment = FALSE).
  * .libPaths() gets a new option include.site, allowing to _not_
    include the site library.  (Thanks to Dario Strbenac's suggestion
    and Gabe Becker's PR#18016.)
  * Lithuanian translations are now available.  (Thanks to Rimantas
    Zakauskas.)
  * names() now works for DOTSXP objects.  On the other hand, in
    R-lang, the R language manual, we now warn against relying on the
    structure or even existence of such dot-dot-dot objects.
  * all.equal() no longer gives an error on DOTSXP objects.
  * capabilities("cairo") now applies only to the file-based devices
    as it is now possible (if very unusual) to build R with Cairo
    support for those but not for X11().
  * There is optional support for tracing the progress of
    loadNamespace() - see its help.
  * (Not Windows.)  l10n_info() reports an additional element, the
    name of the encoding as reported by the OS (which may differ from
    the encoding part (if any) of the result from
    Sys.getlocale("LC_CTYPE").
  * New function gregexec() which generalizes regexec() to find _all_
    disjoint matches and well as all substrings corresponding to
    parenthesized subexpressions of the given regular expression.
    (Contributed by Brodie Gaslam.)
  * New function charClass() in package utils to query the
    wide-character classification functions in use (such as
    iswprint).
  * The names of quantile()'s result no longer depend on the global
    getOption("digits"), but quantile() gets a new optional argument
    digits = 7 instead.
  * grep(), sub(), regexp and variants work considerably faster for
    long factors with few levels.  (Thanks to Michael Chirico's
    PR#18063.)
  * Provide grouping of x11() graphics windows within a window
    manager such as Gnome or Unity; thanks to a patch by Ivan Krylov
    posted to R-devel.
  * The split() method for class data.frame now allows the f argument
    to be specified as a formula.
  * sprintf now warns on arguments unused by the format string.
  * New palettes "Rocket" and "Mako" for hcl.colors() (approximating
    palettes of the same name from the 'viridisLite' package).
    Contributed by Achim Zeileis.
  * The base environment and its namespace are now locked (so one can
    no longer add bindings to these or remove from these).
  * Rterm handling of multi-byte characters has been improved,
    allowing use of such characters when supported by the current
    locale.
  * Rterm now accepts ALT+ +xxxxxxxx sequences to enter Unicode
    characters as hex digits.
  * Environment variable LC_ALL on Windows now takes precedence over
    LC_CTYPE and variables for other supported categories, matching
    the POSIX behaviour.
  * duplicated() and anyDuplicated() are now optimized for integer
    and real vectors that are known to be sorted via the ALTREP
    framework. Contributed by Gabriel Becker via PR#17993.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 14
    and so packages that provide graphics devices should be
    reinstalled.
  * Graphics devices should now specify deviceVersion to indicate
    what version of the graphics engine they support.
  * Graphics devices can now specify deviceClip.  If TRUE, the
    graphics engine will never perform any clipping of output itself.
    The clipping that the graphics engine does perform (for both
    canClip = TRUE and canClip = FALSE) has been improved to avoid
    producing unnecessary artifacts in clipped output.
  * The grid package now allows gpar(fill) to be a linearGradient(),
    a radialGradient(), or a pattern().  The viewport(clip) can now
    also be a grob, which defines a clipping path, and there is a new
    viewport(mask) that can also be a grob, which defines a mask.
    These new features are only supported so far on the Cairo-based
    graphics devices and on the pdf() device.
  * (Not Windows.)  A warning is given when a Cairo-based type is
    specified for a png(), jpeg(), tiff() or bmp() device but Cairo
    is unsupported (so type = "Xlib" is tried instead).
  * grSoftVersion() now reports the versions of FreeType and
    FontConfig if they are used directly (not _via_ Pango), as is
    most commonly done on macOS.
  C-LEVEL FACILITIES:
  * The _standalone_ libRmath math library and R's C API now provide
    log1pexp() again as documented, and gain log1mexp().
  INSTALLATION on a UNIX-ALIKE:
  * configure checks for a program pkgconf if program pkg-config is
    not found.  These are now only looked for on the path (like
    almost all other programs) so if needed specify a full path to
    the command in PKG_CONFIG, for example in file config.site.
  * C99 function iswblank is required - it was last seen missing ca
    2003 so the workaround has been removed.
  * There are new configure options --with-internal-iswxxxxx,
  - -with-internal-towlower and --with-internal-wcwidth which allows
    the system functions for wide-character classification,
    case-switching and width (wcwidth and wcswidth) to be replaced by
    internal ones.  The first has long been used on macOS, AIX (and
    Windows) but this enables it to be unselected there and selected
    for other platforms (it is the new default on Solaris).  The
    second is new in this version of R and is selected by default on
    macOS and Solaris.  The third has long been the default and
    remains so as it contains customizations for East Asian
    languages.
    System versions of these functions are often minimally
    implemented (sometimes only for ASCII characters) and may not
    cover the full range of Unicode points: for example Solaris (and
    Windows) only cover the Basic Multilingual Plane.
  * Cairo installations without X11 are more likely to be detected by
    configure, when the file-based Cairo graphics devices will be
    available but not X11(type = "cairo").
  * There is a new configure option --with-static-cairo which is the
    default on macOS.  This should be used when only static cairo
    (and where relevant, Pango) libraries are available.
  * Cairo-based graphics devices on platforms without Pango but with
    FreeType/FontConfig will make use of the latter for font
    selection.
  LINK-TIME OPTIMIZATION on a UNIX-ALIKE:
  * Configuring with flag --enable-lto=R now also uses LTO when
    installing the recommended packages.
  * R CMD INSTALL and R CMD SHLIB have a new flag --use-LTO to use
    LTO when compiling code, for use with R configured with
  - -enable-lto=R.  For R configured with --enable-lto, they have
    the new flag --no-use-LTO.
    Packages can opt in or out of LTO compilation _via_ a UseLTO
    field in the DESCRIPTION file.  (As usual this can be overridden
    by the command-line flags.)
  BUILDING R on Windows:
  * for GCC &gt;= 8, FC_LEN_T is defined in config.h and hence character
    lengths are passed from C to Fortran in _inter alia_ BLAS and
    LAPACK calls.
  * There is a new text file src/gnuwin32/README.compilation, which
    outlines how C/Fortran code compilation is organized and
    documents new features:
  * R can be built with Link-Time Optimization with a suitable
    compiler - doing so with GCC 9.2 showed several
    inconsistencies which have been corrected.
  * There is support for cross-compiling the C and Fortran code
    in R and standard packages on suitable (Linux) platforms.
    This is mainly intended to allow developers to test later
    versions of compilers - for example using GCC 9.2 or 10.x has
    detected issues that GCC 8.3 in Rtools40 does not.
  * There is experimental support for cross-building R packages
    with C, C++ and/or Fortran code.
  * The R installer can now be optionally built to support a single
    architecture (only 64-bit or only 32-bit).
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++14 where
    available (which it is on all currently checked platforms): if
    not (as before) C++11 is used if available otherwise C++ is not
    supported.
    Packages which specify C++11 will still be installed using C++11.
    C++14 compilers may give deprecation warnings, most often for
    std::random_shuffle (deprecated in C++14 and removed in C++17).
    Either specify C++11 (see 'Writing R Extensions') or modernize
    the code and if needed specify C++14.  The latter has been
    supported since R 3.4.0 so the package's DESCRIPTION would need
    to include something like
    Depends: R (&gt;= 3.4)
  PACKAGE INSTALLATION on Windows:
  * R CMD INSTALL and R CMD SHLIB make use of their flag --use-LTO
    when the LTO_OPT make macro is set in file etc/${R_ARCH}/Makeconf
    or in a personal/site Makevars file.  (For details see 'Writing R
    Extensions' SS4.5.)
    This provides a valuable check on code consistency.  It does work
    with GCC 8.3 as in Rtools40, but that does not detect everything
    the CRAN checks with current GCC do.
  PACKAGE INSTALLATION on macOS:
  * The default personal library directory on builds with
  - -enable-aqua (including CRAN builds) now differs by CPU type,
    one of
    ~/Library/R/x86_64/x.y/library
    ~/Library/R/arm64/x.y/library
    This uses the CPU type R (and hence the packages) were built for,
    so when a x86_64 build of R is run under Rosetta emulation on an
    arm64 Mac, the first is used.
  UTILITIES:
  * R CMD check can now scan package functions for bogus return
    statements, which were possibly intended as return() calls (wish
    of PR#17180, patch by Sebastian Meyer). This check can be
    activated via the new environment variable
    _R_CHECK_BOGUS_RETURN_, true for --as-cran.
  * R CMD build omits tarballs and binaries of previous builds from
    the top-level package directory.  (PR#17828, patch by Sebastian
    Meyer.)
  * R CMD check now runs sanity checks on the use of LazyData, for
    example that a data directory is present and that
    LazyDataCompression is not specified without LazyData and has a
    documented value.  For packages with large LazyData databases
    without specifying LazyDataCompression, there is a reference to
    the code given in 'Writing R Extensions' SS1.1.6 to test the
    choice of compression (as in all the CRAN packages tested a
    non-default method was preferred).
  * R CMD build removes LazyData and LazyDataCompression fields from
    the DESCRIPTION file of packages without a data directory.
  ENCODING-RELATED CHANGES:
  * The parser now treats \Unnnnnnnn escapes larger than the upper
    limit for Unicode points (\U10FFFF) as an error as they cannot be
    represented by valid UTF-8.
    Where such escapes are used for outputting non-printable
    (including unassigned) characters, 6 hex digits are used (rather
    than 8 with leading zeros).  For clarity, braces are used, for
    example \U{0effff}.
  * The parser now looks for non-ASCII spaces on Solaris (as
    previously on most other OSes).
  * There are warnings (including from the parser) on the use of
    unpaired surrogate Unicode points such as \uD834.  (These cannot
    be converted to valid UTF-8.)
  * Functions nchar(), tolower(), toupper() and chartr() and those
    using regular expressions have more support for inputs with a
    marked Latin-1 encoding.
  * The character-classification functions used (by default) to
    replace the system iswxxxxx functions on Windows, macOS and AIX
    have been updated to Unicode 13.0.0.
    The character-width tables have been updated to include new
    assignments in Unicode 13.0.0.
  * The code for evaluating default (extended) regular expressions
    now uses the same character-classification functions as the rest
    of R (previously they differed on Windows, macOS and AIX).
  * There is a build-time option to replace the system's
    wide-character wctrans C function by tables shipped with R: use
    configure option --with-internal-towlower or (on Windows)
  - DUSE_RI18N_CASE in CFLAGS when building R.  This may be needed
    to allow tolower() and toupper() to work with Unicode characters
    beyond the Basic Multilingual Plane where not supported by system
    functions (e.g. on Solaris where it is the new default).
  * R is more careful when truncating UTF-8 and other multi-byte
    strings that are too long to be printed, passed to the system or
    libraries or placed into an internal buffer.  Truncation will no
    longer produce incomplete multibyte characters.
  DEPRECATED AND DEFUNCT:
  * Function plclust() from the package stats and
    package.dependencies(), pkgDepends(), getDepList(),
    installFoundDepends(), and vignetteDepends() from package tools
    are defunct.
  * Defunct functions checkNEWS() and readNEWS() from package tools
    and CRAN.packages() from utils have been removed.
  * R CMD config CXXCPP is defunct (it was deprecated in R 3.6.2).
  * parallel::detectCores() drops support for Irix (retired in 2013).
  * The LINPACK argument to chol.default(), chol2inv(),
    solve.default() and svd() has been defunct since R 3.1.0.  It was
    silently ignored up to R 4.0.3 but now gives an error.
  * Subsetting/indexing, such as ddd[*] or ddd$x on a DOTSXP
    (dot-dot-dot) object ddd has been disabled; it worked by accident
    only and was undocumented.
  BUG FIXES:
  * Many more C-level allocations (mainly by malloc and strdup) are
    checked for success with suitable alternative actions.
  * Bug fix for replayPlot(); this was turning off graphics engine
    display list recording if a recorded plot was replayed in the
    same session.  The impact of the bug became visible if resize the
    device after replay OR if attempted another savePlot() after
    replay (empty display list means empty screen on resize or empty
    saved plot).
  * R CMD check etc now warn when a package exports non-existing S4
    classes or methods, also in case of no "methods" presence.
    (Reported by Alex Bertram; reproducible example and patch by
    Sebastian Meyer in PR#16662.)
  * boxplot() now also accepts calls for labels such as ylab, the
    same as plot().  (Reported by Marius Hofert.)
  * The help page for xtabs() now correctly states that addNA is
    setting na.action = na.pass among others.  (Reported as PR#17770
    by Thomas Soeiro.)
  * The R CMD check &lt;pkg&gt; gives a longer and more comprehensible
    message when DESCRIPTION misses dependencies, e.g., in Imports:.
    (Thanks to the contributors of PR#17179.)
  * update.default() now calls the generic update() on the formula to
    work correctly for models with extended formulas.  (As reported
    and suggested by Neal Fultz in PR#17865.)
  * The horizontal position of leaves in a dendrogram is now correct
    also with center = FALSE.  (PR#14938, patch from Sebastian
    Meyer.)
  * all.equal.POSIXt() no longer warns about and subsequently ignores
    inconsistent "tzone" attributes, but describes the difference in
    its return value (PR#17277).  This check can be disabled _via_
    the new argument check.tzone = FALSE as suggested by Sebastian
    Meyer.
  * as.POSIXct() now populates the "tzone" attribute from its tz
    argument when x is a logical vector consisting entirely of NA
    values.
  * x[[2^31]] &lt;- v now works.  (Thanks to the report and patch by
    Suharto Anggono in PR#17330.)
  * In log-scale graphics, axis() ticks and label positions are now
    computed more carefully and symmetrically in their range,
    typically providing _more_ ticks, fulfilling wishes in PR#17936.
    The change really corresponds to an improved axisTicks() (package
    grDevices), potentially influencing grid and lattice, for
    example.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now correct to at
    least five digits where it was catastrophically wrong,
    previously.
  * sum(df) and similar "Summary"- and "Math"-group member functions
    now work for data frames df with logical columns, notably also of
    zero rows.  (Reported to R-devel by Martin "b706".)
  * unsplit() had trouble with tibbles due to unsound use of rep(NA,
    len)-indexing, which should use NA_integer_ (Reported to R-devel
    by Mario Annau.)
  * pnorm(x, log.p = TRUE) underflows to -Inf slightly later.
  * show(&lt;hidden S4 generic&gt;) prints better and without quotes for
    non-hidden S4 generics.
  * read.table() and relatives treated an "NA" column name as missing
    when check.names = FALSE PR#18007.
  * Parsing strings containing UTF-16 surrogate pairs such as
    "\uD834\uDD1E" works better on some (uncommon) platforms.
    sprintf("%X", utf8ToInt("\uD834\uDD1E")) should now give "1D11E"
    on all platforms.
  * identical(x,y) is no longer true for differing DOTSXP objects,
    fixing PR#18032.
  * str() now works correctly for DOTSXP and related exotics, even
    when these are doomed.
    Additionally, it no longer fails for lists with a class and
    "irregular" method definitions such that e.g. lapply(*) will
    necessarily fail, as currently for different igraph objects.
  * Too long lines in environment files (e.g. Renviron) no longer
    crash R. This limit has been increased to 100,000 bytes.
    (PR#18001.)
  * There is a further workaround for FreeType giving incorrect
    italic font faces with cairo-based graphics devices on macOS.
  * add_datalist(*, force = TRUE) (from package tools) now actually
    updates an existing data/datalist file for new content.  (Thanks
    to a report and patch by Sebastian Meyer in PR#18048.)
  * cut.Date() and cut.POSIXt() could produce an empty last interval
    for breaks = "months" or breaks = "years".  (Reported as PR#18053
    by Christopher Carbone.)
  * Detection of the encoding of 'regular' macOS locales such as
    en_US (which is UTF-8) had been broken by a macOS change:
    fortunately these are now rarely used with en_US.UTF-8 being
    preferred.
  * sub() and gsub(pattern, repl, x, *) now keep attributes of x such
    as names() also when pattern is NA (PR#18079).
  * Time differences ("difftime" objects) get a replacement and a
    rep() method to keep "units" consistent.  (Thanks to a report and
    patch by Nicolas Bennett in PR#18066.)
  * The \RdOpts macro, setting defaults for \Sexpr options in an Rd
    file, had been ineffective since R 2.12.0: it now works again.
    (Thanks to a report and patch by Sebastian Meyer in PR#18073.)
  * mclapply and pvec no longer accidentally terminate parallel
    processes started before by mcparallel or related calls in
    package parallel (PR#18078).
  * grep and other functions for evaluating (extended) regular
    expressions handle in Unicode also strings not explicitly flagged
    UTF-8, but flagged native when running in UTF-8 locale.
  * Fixed a crash in fifo implementation on Windows (PR#18031).
  * Binary mode in fifo on Windows is now properly detected from
    argument open (PR#15600, PR#18031).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1622808000">- The line %{__install} -m 755 -d %{_infodir}
  no longer works in TW or Factory.
  But without that line it works everywhere. So this instruction
  was commented out of the spec file.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1628596800">- CHANGES IN R 4.1.1:
  NEW FEATURES:
  * require(pkg, quietly = TRUE) is quieter and in particular does
    not warn if the package is not found.
  DEPRECATED AND DEFUNCT:
  * Use of ftp:// URIs should be regarded as deprecated, with
    on-going support confined to method = "libcurl" and not routinely
    tested.  (Nowadays no major browser supports them.)
  * The non-default method = "internal" is deprecated for http:// and
    ftp:// URIs for both download.file and url.
  * On Windows, method = "wininet" is deprecated for http://,
    https:// and ftp:// URIs for both download.file and url.  (A
    warning is only given for ftp://.)
    For ftp:// URIs the default method is now "libcurl" if available
    (which it is on CRAN builds).
    method = "wininet" remains the default for http:// and https://
    URIs but if libcurl is available, using method = "libcurl" is
    preferred.
  INSTALLATION:
  * make check now works also without a LaTeX installation.  (Thanks
    to Sebastian Meyer's PR#18103.)
  BUG FIXES:
  * make check-devel works again in an R build configured with
  - -without-recommended-packages.
  * qnbinom(p, size, mu) for large size/mu is correct now in a range
    of cases (PR#18095); similarly for the (size, prob)
    parametrization of the negative binomial.  Also qpois() and
    qbinom() are better and or faster for extreme cases.  The
    underlying C code has been modularized and is common to all four
    cases of discrete distributions.
  * gap.axis is now part of the axis() arguments which are passed
    from bxp(), and hence boxplot().  (Thanks to Martin Smith's
    report and suggestions in PR#18109.)
  * .First and .Last can again be set from the site profile.
  * seq.int(from, to, *) and seq.default(..) now work better in large
    range cases where from-to is infinite where the two boundaries
    are finite.
  * all.equal(x,y) now returns TRUE correctly also when several
    entries of abs(x) and abs(y) are close to .Machine$double.xmax,
    the largest finite numeric.
  * model.frame() now clears the object bit when removing the class
    attribute of a value via na.action (PR#18100).
  * charClass() now works with multi-character strings on Windows
    (PR#18104, fixed by Bill Dunlap).
  * encodeString() on Solaris now works again in Latin-1 encoding on
    characters represented differently in UTF-8.  Support for
    surrogate pairs on Solaris has been improved.
  * file.show() on Windows now works with non-ASCII path names
    representable in the current native encoding (PR#18132).
  * Embedded R on Windows can now find R home directory via the
    registry even when installed only for the current user
    (PR#18135).
  * pretty(x) with finite x now returns finite values also in the
    case where the extreme x values are close in size to the maximal
    representable number .Machine$double.xmax.
    Also, it's been tweaked for very small ranges and when a boundary
    is close (or equal) to zero; e.g., pretty(c(0,1e-317)) no longer
    has negative numbers, currently still warning about a very small
    range, and pretty(2^-(1024 - 2^-1/(c(24,10)))) is more accurate.
  * The error message for not finding vignette files when weaving has
    correct file sizes now. (Thanks to Sebastian Meyer's PR#18154.)
  * dnbinom(20, &lt;large&gt;, 1) now correctly gives 0, and similar cases
    are more accurate with underflow precaution.  (Reported by Francisco Vera Alcivar in PR#18072.)</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635163200">- repaired https://bugzilla.suse.com/show_bug.cgi?id=1191380
  (rpmacros now go to rpmmacrodir)
- minor clean-ups in spec file</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635768000">- CHANGES IN R 4.1.2:
  C-LEVEL FACILITIES:
  * The workaround in headers R.h and Rmath.h (using namespace std;)
    for the Oracle Developer Studio compiler is no longer needed now
    C++11 is required so has been removed.  A couple more usages of
    log() (which should have been std::log()) with an int argument
    are reported on Solaris.
  * The undocumented limit of 4095 bytes on messages from the
    S-compatibility macros PROBLEM and MESSAGE is now documented and
    longer messages will be silently truncated rather than
    potentially causing segfaults.
  * If the R_NO_SEGV_HANDLER environment variable is non-empty, the
    signal handler for SEGV/ILL/BUS signals (which offers recovery
    user interface) is not set. This allows more reliable debugging
    of crashes that involve the console.
  DEPRECATED AND DEFUNCT:
  * The legacy S-compatibility macros PROBLEM, MESSAGE, ERROR, WARN,
    WARNING, RECOVER, ... are deprecated and will be hidden in R
    4.2.0. R's native interface of Rf_error and Rf_warning has long
    been preferred.
  BUG FIXES:
  * .mapply(F, dots, .) no longer segfaults when dots is not a list
    and uses match.fun(F) as always documented; reported by Andrew
    Simmons in PR#18164.
  * hist(&lt;Date&gt;, ...) and hist(&lt;POSIXt&gt;, ...)  no longer pass
    arguments for rect() (such as col and density) to axis().
    (Thanks to Sebastian Meyer's PR#18171.)
  * \Sexpr{ch} now preserves Encoding(ch). (Thanks to report and
    patch by Jeroen Ooms in PR#18152.)
  * Setting the RNG to "Marsaglia-Multicarry" e.g., by RNGkind(), now
    warns in more places, thanks to Andr'e Gillibert's report and
    patch in PR#18168.
  * gray(numeric(), alpha=1/2) no longer segfaults, fixing PR#18183,
    reported by Till Krenz.
  * Fixed dnbinom(x, size=&lt;very_small&gt;, .., log=TRUE) regression,
    reported by Martin Morgan.
  * as.Date.POSIXlt(x) now keeps names(x), thanks to Davis Vaughan's
    report and patch in PR#18188.
  * model.response() now strips an "AsIs" class typically, thanks to
    Duncan Murdoch's report and other discussants in PR#18190.
  * try() is considerably faster in case of an error and long call,
    as e.g., from some do.call().  Thanks to Alexander Kaever's
    suggestion posted to R-devel.
  * qqline(y = &lt;object&gt;) such as y=I(.), now works, see also
    PR#18190.
  * Non-integer mgp par() settings are now handled correctly in
    axis() and mtext(), thanks to Mikael Jagan and Duncan Murdoch's
    report and suggestion in PR#18194.
  * formatC(x) returns length zero character() now, rather than ""
    when x is of length zero, as documented, thanks to Davis
    Vaughan's post to R-devel.
  * removeSource(fn) now retains (other) attributes(fn).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1647000000">- CHANGES IN R 4.1.3:
  NEW FEATURES:
  * The default version of Bioconductor has been changed to 3.14.
    (This is used by setRepositories and the menus in GUIs.)
  UTILITIES:
  * R CMD check --as-cran has a workaround for a bug in versions of
    file up to at least 5.41 which mis-identify DBF files last
    changed in 2022 as executables.
  C-LEVEL FACILITIES:
  * The legacy S-compatibility macros SINGLE_* in R_ext/Constants.h
    (included by R.h) are deprecated and will be removed in R 4.2.0.
  BUG FIXES:
  * Initialization of self-starting nls() models with initialization
    functions following the pre-R-4.1.0 API (without the ...
    argument) works again for now, with a deprecation warning.
  * Fixed quoting of ~autodetect~ in Java setting defaults to avoid
    inadvertent user lookup due to leading ~, reported in PR#18231 by
    Harold Gutch.
  * substr(., start, stop) &lt;- v now treats _negative_ stop values
    correctly.  Reported with a patch in PR#18228 by Brodie Gaslam.
  * Subscripting an array x without dimnames by a
    length(dim(x))-column character matrix gave "random" non-sense,
    now an error; reported in PR#18244 by Mikael Jagan.
  * ...names() now matches names(list(...)) closely, fixing PR#18247.
  * all.equal(*, scale = s) now works as intended when length(s) &gt; 1,
    partly thanks to Michael Chirico's PR#18272.
  * print(x) for long vectors x now also works for named atomic
    vectors or lists and prints the correct number when reaching the
    getOption("max.print") limit; partly thanks to a report and
    proposal by Hugh Parsonage to the R-devel list.
  * all.equal(&lt;selfStart&gt;, *) no longer signals a deprecation
    warning.
  * reformulate(*, response=r) gives a helpful error message now when
    length(r) &gt; 1, thanks to Bill Dunlap's PR#18281.
  * Modifying globalCallingHandlers inside withCallingHandlers() now
    works or fails correctly, thanks to Henrik Bengtsson's PR#18257.
  * hist(&lt;Date&gt;, breaks = "days") and hist(&lt;POSIXt&gt;, breaks = "secs")
    no longer fail for inputs of length 1.
  * qbeta(.001, .9, .009) and similar cases now converge correctly
    thanks to Ben Bolker's report in PR#17746.
  * window(x, start, end) no longer wrongly signals "'start' cannot
    be after 'end'", fixing PR#17527 and PR#18291.
  * data() now checks that its (rarely used) list argument is a
    character vector - a couple of packages passed other types and
    gave incorrect results.
  * which() now checks its arr.ind argument is TRUE rather coercing
    to logical and taking the first element - which gave incorrect
    results in package code.
  * model.weights() and model.offset() more carefully extract their
    model components, thanks to Ben Bolker and Tim Taylor's R-devel
    post.
  * list.files(recursive = TRUE) now shows all broken symlinks
    (previously, some of them may have been omitted, PR#18296).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1650628800">- CHANGES IN R 4.2.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * The formula method of aggregate() now matches the generic in
    naming its first argument x (resolving PR#18299 by Thomas
    Soeiro).
    This means that calling aggregate() with a formula as a named
    first argument requires name formula in earlier versions of R and
    name x now, so portable code should not name the argument (code
    in many packages did).
  * Calling &amp;&amp; or || with either argument of length greater than one
    now gives a warning (which it is intended will become an error).
  * Calling if() or while() with a condition of length greater than
    one gives an error rather than a warning.  Consequently,
    environment variable _R_CHECK_LENGTH_1_CONDITION_ no longer has
    any effect.
  * Windows users should consult the WINDOWS section below for some
    profound changes including
  * Support for 32-bit builds has been dropped.
  * UTF-8 locales are used where available.
  * The default locations for the R installation and personal
    library folder have been changed.
    Thanks to Tomas Kalibera for months of work on the Windows port
    for this release.
  NEW FEATURES:
  * matrix(x, n, m) now warns in more cases where length(x) differs
    from n * m, as suggested by Abby Spurdle and Wolfgang Huber in
    Feb 2021 on the R-devel mailing list.
    This warning can be turned into an error by setting environment
    variable _R_CHECK_MATRIX_DATA_ to TRUE: R CMD check --as-cran
    does so unless it is already set.
  * Function file_test() in package utils gains tests for symlinks,
    readability and writability.
  * capabilities("libxml") is now false.
    The description of capabilities("http/ftp") now reflects that it
    refers to the default method, no longer the internal one.
  * simplify2array() gains an except argument for controlling the
    exceptions used by sapply().
  * Environment variables R_LIBS_USER and R_LIBS_SITE are both now
    set to the R system default if unset or empty, and can be set to
    NULL to indicate an empty list of user or site library
    directories.
  * The warning for axis()(-like) calls in cases of relatively small
    ranges (typically in log-scale situations) is slightly improved
    _and_ suppressed from explicit calls to .axisPars() as has always
    been the intention.
  * The contrasts setter function `contrasts&lt;-` gains an explicit
    default how.many = NULL rather than just using missing(how.many).
  * grid.pretty() gains a new optional argument n = 5.
  * There is a new function .pretty() with option bounds as a
    technical-utility version of pretty().  It and pretty() gain a
    new argument f.min with a better than back-compatible default.
  * Function grDevices::axisTicks() and related functions such as
    graphics::axis() work better, notably for the log scale; partly
    because of the pretty() improvements, but also because care is
    taken e.g., when ylim is finite but diff(ylim) is infinite.
  * nclass.FD() gains a digits option.
  * The R Mathlib internal C function bd0() (called indirectly from a
    dozen probability density and distribution functions such as
    dpois(), dbinom(), dgamma(), pgamma() _etc_) has been
    complemented by a more sophisticated and (mostly) more accurate C
    function ebd0(), currently called only by internal dpois_raw()
    improving accuracy for R level dpois() and potentially others
    calling it such as dnbinom(), dgamma() or pgamma().  (Thanks to
    Morten Welinder's PR#15628.)
  * write.ftable() gains sep = " " argument as suggested by Thomas
    Soeiro.
  * The names of the locale categories supported by R's
    Sys.getlocale() and Sys.setlocale() are now provided by variable
    .LC.categories in the base namespace.
  * The Date and POSIXt methods for hist() and the histogram method
    for plot() now also use the new default col = "lightgray" in
    consistency with the corresponding change to hist()'s default for
    R 4.0.0.
  * hist.default() gains new fuzz argument, and the histogram plot
    method no longer uses fractional axis ticks when displaying
    counts ("Frequency").
  * mapply() and hence Map() now also obey the "max-or-0-if-any"
    recycling rule, such that, e.g., Map(`+`, 1:3, 1[0]) is valid
    now.
  * as.character(&lt;obj&gt;) for "hexmode" or "octmode" objects now
    fulfils the important basic rule as.character(x)[j] ===
    as.character(x[j]).
  * The set utility functions, notably intersect() have been tweaked
    to be more consistent and symmetric in their two set arguments,
    also preserving a common mode.
  * substr(ch, start,end) &lt;- new now e.g., preserves names(ch); ditto
    for substring(), thanks to a patch from Brodie Gaslam.
  * plot(&lt;lm&gt;) gains a extend.ylim.f argument, in partial response to
    PR#15285; further PR#17784 is fixed thanks to several
    contributors and a patch by Elin Waring.  The Cook's dist
    contours get customizable via cook.col and cook.lty with a
    different default color and their legend is nicer by default and
    customizable via cook.legendChanges.
  * Attempting to subset an object that is not subsettable now
    signals an error of class notSubsettableError. The
    non-subsettable object is contained in the object field of the
    error condition.
  * Subscript-out-of-bounds errors are now signaled as errors of
    class subscriptOutOfBoundsError.
  * Stack-overflow errors are now signaled as errors inheriting from
    class stackOverflowError. See ?stackOverflowError for more
    details.
  * New partly experimental Sys.setLanguage() utility, solving the
    main problem of PR#18055.
  * gettext() and gettextf() get a new option trim = TRUE which when
    set to false allows translations for strings such as "Execution
    halted\n" typical for C code.
  * An experimental implementation of hash tables is now available.
    See ?hashtab for more details.
  * identical() gains a extptr.as.ref argument for requesting that
    external pointer objects be compared as reference objects.
  * reorder() gets an argument decreasing which it passes to sort()
    for level creation; based on the wish and patch by Thomas Soeiro
    in PR#18243.
  * as.vector() gains a data.frame method which returns a simple
    named list, also clearing a long standing 'FIXME' to enable
    as.vector(&lt;data.frame&gt;, mode="list").  This breaks code relying
    on as.vector(&lt;data.frame&gt;) to return the unchanged data frame.
  * legend() is now vectorized for arguments cex, x.intersp, and
    text.width.  The latter can now also be specified as a vector
    (one element for each column of the legend) or as NA for
    computing a proper column wise maximum value of strwidth(legend).
    The argument y.intersp can be specified as a vector with one
    entry for each row of the legend.
    legend() also gains new arguments title.cex and title.font.
    Thanks to Swetlana Herbrandt.
  * Deparsing no longer remaps attribute names dim, dimnames, levels,
    names and tsp to historical S-compatible names (which structure()
    maps back).
  * sample() and sample.int() have additional sanity checks on their
    size and n arguments.
    all.equal.numeric() gains a sanity check on its tolerance
    argument - calling all.equal(a, b, c) for three numeric vectors
    is a surprisingly common error.
    mean(na.rm =), rank(na.last =), barplot(legend.text =),
    boxplot(), contour(drawlabels =), polygon(border =) and
    methods::is(class2 =) have more robust sanity checks on their
    arguments.
    R CMD Rd2pdf (used by R CMD check) has a more robust sanity check
    on the format of \alias{} commands.
  * psigamma(x, deriv) for negative x now also works for deriv = 4
    and 5; their underlying C level dpsifn() is documented in
    'Writing R Extensions'.
  * The HTML help system now uses HTML5 (wish of PR#18149).
  * ks.test() now provides exact p-values also with ties and MC
    p-values in the two-sample (Smirnov) case.  By Torsten Hothorn.
  * ks.test() gains a formula interface, with y ~ 1 for the
    one-sample (Kolmogorov) test and y ~ group for the two-sample
    (Smirnov) test.  Contributed by Torsten Hothorn.
  * The return value from ks.test() now has class c("ks.test",
    "htest") - packages using try() need to take care to use
    inherits() and not == on the class.
  * New functions psmirnov(), qsmirnov() and rsmirnov() in package
    stats implementing the asymptotic and exact distributions of the
    two-sample Smirnov statistic.
  * iconv() now allows sub = "c99" to use C99-style escapes for UTF-8
    inputs which cannot be converted to encoding to.
  * In a forward pipe |&gt; expression it is now possible to use a named
    argument with the placeholder _ in the rhs call to specify where
    the lhs is to be inserted.  The placeholder can only appear once
    on the rhs.
  * The included LAPACK sources have been updated to version 3.10.0,
    except for the four Fortran 77 routines which 3.10.0 has
    re-implemented in Fortran 90 (where the older versions have been
    retained as the R build process does not support Fortran 90).
  * path.expand() and most other uses of tilde expansion now warn if
    a path would be too long if expanded.  (An exception is
    file.exists(), which silently returns false.)
  * trunc(&lt;Date&gt;, *) now supports units = "months" or "years" for
    consistency with the POSIXt method, thanks to Dirk Eddelbuettel's
    proposal in PR#18099.
  * list2DF() now checks that its arguments are of the same length,
    rather than use recycling.
  * The HTML help system has several new features: LaTeX-like math
    can be typeset using either KaTeX or MathJax, usage and example
    code is highlighted using Prism, and for dynamic help the output
    of examples and demos can be shown within the browser if the
    knitr package is installed. These features can be disabled by
    setting the environment variable _R_HELP_ENABLE_ENHANCED_HTML_ to
    a false value.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 15
    and so packages that provide graphics devices should be
    reinstalled.
  * The grid package now allows the user to specify a "vector" of
    pattern fills.  The fill argument to gpar() accepts a list of
    gradients and/or patterns and the functions linearGradient(),
    radialGradient(), and pattern() have a new group argument.
    Points grobs (data symbols) can now also have a pattern fill.
    The grobCoords() function now returns a more informative and
    complex result.
  * The grid package has new functions for drawing isolated groups:
    grid.group(), grid.define(), and grid.use().  These functions add
    compositing operators and affine transformations to R's graphics
    capabilities.
    The grid package also has new functions for stroking and filling
    paths: grid.stroke(), grid.fill(), and grid.fillStroke().
    A new function as.path() allows the user to specify the fill rule
    for a path that is to be used for clipping, stroking, or filling;
    available options are "winding" and "evenodd".  A new function
    as.mask() allows the user to specify the type of a mask;
    available options are "alpha" and "luminance".
    These new features are only supported so far (at most) on the
    Cairo-based graphics devices and on the pdf() device.
  * dev.capabilities() reports on device support for the new
    features.
  * par() now warns about unnamed non-character arguments to prevent
    misuse such as {usr &lt;- par("usr"); par(usr)}.
  INSTALLATION:
  * Facilities for accessing ftp:// sites are no longer tested
    (except _pro tem_ for curlGetHeaders()) as modern browsers have
    removed support.
  * R can now be built with DEFS = -DSTRICT_R_HEADERS .
  PACKAGE INSTALLATION:
  * R CMD INSTALL no longer tangles vignettes. This completes an R
    CMD build change in R 3.0.0 and affects packages built before R
    3.0.2. Such packages should be re-made with R CMD build to have
    the tangled R code of vignettes shipped with the tarball.
  * USE_FC_LEN_T will become the default: this uses the correct
    prototypes for Fortran BLAS/LAPACK routines called from C/C++,
    and requires adjustment of most such calls - see 'Writing R
    Extensions' SS6.6.2.  (This has been supported since R 3.6.2.)
  * Package installation speed for packages installed with
    keep.source has been improved. This resolve the issue reported by
    Ofek Shilon in PR#18236.
  UTILITIES:
  * R CMD check can optionally report files/directories left behind
    in home, /tmp (even though TMPDIR is set) and other directories.
    See the "R Internals" manual for details.
  * R CMD check now reports byte-compilation errors during
    installation.  These are not usually fatal but may result in
    parts of the package not being byte-compiled.
  * _R_CHECK_DEPENDS_ONLY_ can be applied selectively to examples,
    tests and/or vignettes in R CMD check: see the "R Internals"
    manual.
  * _R_CHECK_SRC_MINUS_W_IMPLICIT_ now defaults to true: recent
    versions of Apple clang on macOS have made implicit function
    declarations in C into a compilation error.
  * R CMD check --as-cran makes use of the environment variable
    AUTORECONF.  See the "R Internals" manual SS8 for further details.
  * R CMD check --use-valgrind also uses valgrind when re-building
    vignettes as some non-Sweave vignettes unhelpfully comment out
    all their code when R CMD check runs vignettes.
  * Errors in re-building vignettes (unless there are LaTeX errors)
    are reported by R CMD check as ERROR rather than WARNING when
    running vignettes has been skipped (as it frequently is in CRAN
    checks and by --as-cran).
  * R CMD Rd2pdf gains a --quiet option that is used by R CMD build
    when building the PDF package manual.
  * R CMD Rd2pdf now always runs LaTeX in batch mode, consistent with
    Texinfo &gt;= 6.7. The --batch option is ignored.
  * R CMD build and R CMD check now include the Rd file name and line
    numbers in the error message of an \Sexpr evaluation failure.
  * For packages using the \doi Rd macro (now an install-time \Sexpr)
    but no other dynamic Rd content, R CMD build now produces a
    smaller tarball and is considerably faster - skipping temporary
    package installation.
  C-LEVEL FACILITIES:
  * The non-API header R_ext/R-ftp-http.h is no longer provided, as
    the entry points it covered are now all defunct.
  * A number of non-API declarations and macro definitions have been
    moved from the installed header Rinternals.h to the internal
    header Defn.h. Packages that only use entry points and
    definitions documented to be part of the API as specified in
    'Writing R Extensions' SS6 should not be affected.
  * The macro USE_RINTERNALS no longer has any effect when compiling
    package code.  Packages which also use R_NO_REMAP will need to
    ensure that the remapped names are used for calls to API
    functions that were formerly also made available as macros.
  * The deprecated legacy S-compatibility macros PROBLEM, MESSAGE,
    ERROR, WARN, WARNING, RECOVER, ... are no longer defined in
    R_exts/RS.h (included by R.h).  Replace these by calls to
    Rf_error and Rf_warning (defined in header R_ext/Error.h included
    by R.h).
    Header R_ext/RS.h no longer includes R_ext/Error.h.
  * Header R_ext/Constants.h (included by R.h) when included from C++
    now includes the C++ header cfloat rather than the C header
    float.h (now possible as C++11 is required).
  * The legacy S-compatibility macros DOUBLE_* in R_ext/Constants.h
    (included by R.h) are deprecated.
  * The deprecated S-compatibility macros SINGLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * R_Calloc, R_Free and R_Realloc are preferred to their unprefixed
    forms and error messages now use the prefix. These forms were
    introduced in R 3.4.0 and are available even when
    STRICT_R_HEADERS is defined.
  * rmultinom has been documented in 'Writing R Extensions' SS6 so is
    now part of the R API.
  * Similarly, Rtanpi, called from R level tanpi() is now part of the
    R API.
  * The long-deprecated, undocumented and non-API entry point call_R
    is no longer declared in R_ext/RS.h (included by R.h).
  * The header S.h which has been unsupported since Jan 2016 has been
    removed.  Use R.h instead.
  DEPRECATED AND DEFUNCT:
  * The (non-default and deprecated) method = "internal" for
    download.file() and url() no longer supports http:// nor ftp://
    URIs.  (It is used only for file:// URIs.)
    On Windows, download.file(method = "wininet") no longer supports
    ftp:// URIs.  (It is no longer the default method, which is
    "libcurl" and does.)
    On Windows, the deprecated method = "wininet" now gives a warning
    for http:// and https:// URIs for both download.file() and url().
    (It is no longer the default method.)
  * On Windows, the command-line option --max-mem-size and
    environment variable R_MAX_MEM_SIZE are defunct.  The memory
    allocation limit was important for 32-bit builds, but these are
    no longer supported.
  * default.stringsAsFactors() is now formally deprecated, where that
    was only mentioned on its regular help page, previously.  So it
    now gives a warning if called.
  * unix.time() is defunct now; it had been deprecated since R 3.4.0.
  BUG FIXES:
  * Setting digits = 0 in format(), print.default() (and hence
    typically print()) or options() is again invalid.  Its behaviour
    was platform-dependent, and it is unclear what "zero significant
    digits" should mean (PR#18098).
  * Messages from C code in the cairo section of package grDevices
    are now also offered for translation, thanks to Michael Chirico's
    PR#18123.
  * mean(x) with finite x now is finite also without "long.double"
    capability.
  * R CMD Rd2pdf no longer leaves an empty build directory behind
    when it aborts due to an already existing output file.  (Thanks
    to Sebastian Meyer's PR#18141.)
  * density(x, weights = w, na.rm = TRUE) when anyNA(x) is true, now
    removes weights "in parallel" to x, fixing PR#18151, reported by
    Matthias Gondan.  Additionally, it gets a subdensity option.
  * Conversion of \Sexpr[]{&lt;expR&gt;} to LaTeX or HTML no longer
    produces long blocks of empty lines when &lt;expR&gt; itself contains
    several lines all producing empty output.  Thanks to a report and
    patch by Ivan Krylov posted to R-devel.
  * R CMD build no longer fails if a package vignette uses child
    documents and inst/doc exists.  (Thanks to Sebastian Meyer's
    PR#18156.)
  * When an R documentation ('help' source) file man/foo.Rd in a
    package has \donttest{..} examples with a syntax error, it is now
    signalled as ERROR and with correct line numbers relating to the
  * -Ex.R file, thanks to Duncan Murdoch and Sebastian Meyer's
    reports and patch proposals in PR#17501.
  * Improved determination of the correct translation domain in
    non-base packages, addressing the combination of PR#18092 and
    PR#17998 (#c6) with reports and _augmented_ patch #2904 by
    Suharto Anggono.
    Note that "R-base" is no longer the default domain e.g., for
    top-level calls to gettext(); rather translation needs explicit
    domain = * specification in such cases.
  * identical(attrib.as.set=FALSE) now works correctly with data
    frames with default row names (Thanks to Charlie Gao's PR#18179).
  * txtProgressBar() now enforces a non-zero width for argument char,
    without which no progress can be visible.
  * dimnames(table(d)) is more consistent in the case where d is a
    list with a single component, thanks to Thomas Soeiro's report to
    R-devel.
    Further, table(d1, d2) now gives an error when d1 and d2 are data
    frames as suggested by Thomas in PR#18224.
  * Fix for drawing semi-transparent lines and fills on the native
    Windows graphics device (PR#18219 and PR#16694).  Thanks to Nick
    Ray for helpful diagnosis on Bugzilla.
  * The deparser now wraps sub-expressions such as if(A) ..  with
    parentheses when needed; thanks to Duncan Murdoch's PR#18232 and
    Lionel Henry's patches there.
  * remove.packages() no longer tries to uninstall Priority: base
    packages, thanks to a report and suggestions by Colin Fay in
    PR#18227.
  * win.metafile() now has xpinch and ypinch arguments so that the
    user can override Windows' (potentially wrong) guess at device
    dimensions.
  * x[i] and x[[i]] for non-integer i should now behave in all cases
    as always documented: the index used is equivalent to
    as.integer(i) unless that would overflow where trunc(i) is used
    instead; thanks to Suharto Anggono's report and patch proposals
    in PR#17977.
  * asOneSidedFormula() now associates the resulting formula with the
    global environment rather than the evaluation environment created
    for the call.
  * &lt;bibentry&gt;$name now matches the field name case-insensitively,
    consistent with bibentry() creation and the replacement method.
  * cbind() failed to detect some length mismatches with a mixture of
    time-series and non-time-series inputs.
  * The default LaTeX style file Sweave.sty used by the RweaveLatex
    driver no longer loads the obsolete ae package; thanks to a
    report by Thomas Soeiro in PR#18271.  Furthermore, it now skips
    \usepackage[T1]{fontenc} for engines other than pdfTeX (if
    detected) or if the new [nofontenc] option is used.
  * smooth.spline() now stores its logical cv argument more safely,
    fixing a rare bug when printing, and also stores n.
  * smooth.spline(x,y,*) now computes the cv.crit statistic
    correctly, also when is.unsorted(x), fixing PR#18294.
  * The data.frame method of rbind() now warns when binding
    not-wholly-recycling vectors, by analogy to the default method
    (for matrices).
  * setAs() finds the correct class for name to when multiple
    packages define a class with that name. Thanks to Gabor Csardi
    for the report.
  * Fix for detaching a package when two classes of the same name are
    present in method signatures for the same generic. Thanks to
    Gabor Csardi for the report.
  * match.arg("", c("", "a", "B")) gives a better error message, in
    part from PR#17959, thanks to Elin Waring.
  * R CMD Sweave --clean no longer removes pre-existing files or
    subdirectories (PR#18242).
  * The quartz() device no longer splits polylines into subpaths.
    That has caused narrowly-spaced lines with many points to always
    look solid even when dashed line type was used due to dash phase
    restarts.
  * Deparsing constructs such as quote(1 + `!`(2) + 3) works again as
    before R 3.5.0, thanks to the report and patch in PR#18284 by
    Suharto Anggono.
  * as.list(f) for a factor f now keeps names(f), fixing PR#18309.
  * qbeta(.001, .9, .009) and analogous qf() calls now return a
    correct value instead of NaN or wrongly 1, all with a warning;
    thanks to the report by Ludger Goeminne in PR#18302.
  * plot.lm() failed to produce the plot of residuals vs.  factor
    levels (i.e., which=5 when leverages are constant) for models
    with character predictors (PR#17840).
  * interaction.plot(..., xtick = TRUE) misplaced the x-axis line
    (PR#18305).
  * Not strictly fixing a bug, format()ing and print()ing of
    non-finite Date and POSIXt values NaN and +/-Inf no longer show
    as NA but the respective string, e.g., Inf, for consistency with
    numeric vector's behaviour, fulfilling the wish of PR#18308.
  * R CMD check no longer runs test scripts generated from
    corresponding .Rin files twice and now signals an ERROR if
    processing an .Rin script fails.
  * tools::Rd2txt() used for plain-text help pages now renders \hrefs
    (if tools::Rd2txt_options(showURLs = TRUE)) and \urls with
    percent-encoding and standards-compliant delimiting style (angle
    brackets and no URL: prefix).  \email is now rendered with a
    mailto: prefix.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1655985600">- CHANGES IN R 4.2.1:
  NEW FEATURES:
  * New function utils::findCRANmirror() to find out if a CRAN mirror
    has been selected, otherwise fallback to the main site.  This
    behaves in the same way as tools::CRAN_package_db() and is
    intended for packages wishing to access CRAN for purposes other
    than installing packages.
    The need for this was shown by a day when the main CRAN website
    was offline and a dozen or so packages which had its URL
    hardcoded failed their checks.
  INSTALLATION on a UNIX-ALIKE:
  * The libraries searched for by --with-blas (without a value) now
    include BLIS (after OpenBLAS but before ATLAS).  And on macOS,
    the Accelerate framework (after ATLAS).  (This is patterned after
    the AX_BLAS macro from the Autoconf Archive.)
  * The included LAPACK sources have been updated to 3.10.1.
  UTILITIES:
  * The (full path to) the command tidy to be used for HTML
    validation can be set by environment variable R_TIDYCMD.
  * Setting environment variable _R_CHECK_RD_VALIDATE_RD2HTML_ to a
    false value will override R CMD check --as-cran and turn off HTML
    validation.  This provides a way to circumvent a problematic
    tidy.
    The 2006 version that ships with macOS is always skipped.
  C-LEVEL FACILITIES:
  * The undocumented legacy declarations of Sint, Sfloat, SINT_MAX
    and SINT_MIN in header R.h are deprecated.
  BUG FIXES:
  * fisher.test(d) no longer segfaults for "large" d; fixing PR#18336
    by preventing/detecting an integer overflow reliably.
  * tar(., files=*) now produces correctly the warning about invalid
    uid or gid of files, fixing PR#18344, reported by Martin Morgan.
  * tk_choose.files() with multi = FALSE misbehaved on paths
    containing spaces (PR#18334) (regression introduced in R 4.0.0).
  * sort(x, partial = ind, *) now works correctly notably for the
    non-default na.last = FALSE or TRUE, fixing PR#18335 reported by
    James Edwards.
  * Environment variable _R_CHECK_XREFS_REPOSITORIES_ is only used
    for checking .Rd cross-references in R CMD check (as documented)
    and not for other uses looking for a CRAN mirror.
  * The search for a CRAN mirror when checking packages now uses
    getOption("repos") if that specifies a CRAN mirror, even when it
    does not also specify all three Bioconductor repositories (as was
    previously required).
  * The HTML code generated by tools::Rd2HTML() has been improved to
    pass tidy 5.8.0.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1667217600">- CHANGES IN R 4.2.2:
  NEW FEATURES:
  * tools::Rdiff(useDiff = TRUE) checks for the presence of an
    external diff command and switches to useDiff = FALSE if none is
    found.  This allows R CMD Rdiff to always work.
  * On Windows, environment variable R_LIBCURL_SSL_REVOKE_BEST_EFFORT
    can be used to switch to only 'best-effort' SSL certificate
    revocation checks with the default "libcurl" download method.
    This reduces security, but may be needed for downloads to work
    with MITM proxies (PR#18379).
  * (macOS) The run-time check for libraries from XQuartz for X11 and
    Tcl/Tk no longer uses otool from the Apple Developer Tools
    (PR#18400).
  * The LaTeX style for producing the PDF manuals, Rd.sty, now loads
    the standard amsmath, amsfonts and amssymb packages for greater
    coverage of math commands in the Rd \eqn and \deqn macros.  The
    \mathscr LaTeX command is also provided (via the mathrsfs
    package, if available, or the amsfonts bundle otherwise),
    fulfilling the wish of PR#18398.
  * (Windows) The default format of readClipboard() and
    writeClipboard() has been changed to 13 (CF_UNICODETEXT).
  INSTALLATION on a UNIX-ALIKE:
  * The PDF manuals (if built) can be compacted by the new target
    make compact-pdf (at the top level or in directory doc/manual).
  * There is now configure support for LLVM clang 15 on Linux, which
    defaults to position-independent (PIE) executables whereas
    gfortran does not.
  * Many small changes to ease compilation (and suppress warnings)
    with LLVM clang 15.
  BUG FIXES:
  * Rscript -e would fail if stdin were closed (Reported by Henrik
    Bengtsson.)
  * qt(*, log.p=TRUE) in outer tails no longer produces NaN in its
    final steps, thus fixing PR#18360.
  * tools::Rd2latex() now escapes hashes and ampersands when writing
    URLs, fixing LaTeX errors with such URLs in \tabular.
  * When isGeneric(f, fdef=*) is used with mismatching names, the
    warning is better understandable; reported (with fix) in PR#18370
    by Gabe Becker.
  * poly(x, n) now works again (and is now documented) when x is a
    "Date" or "POSIXct" object, or of another class while fulfilling
    mode(x) == "numeric".  This also enables poly(x, *, raw=TRUE) for
    such variables.  Reported by Michael Chirico to R-devel.
  * write.table(), write.csv() and write.csv2() restore their
    numerical precision (internal equivalent of digits = 15) after an
    interrupt (PR#18384).
  * One can now read also byte FF from a clipboard connection
    (PR#18385).
  * source("") and source(character()) now give more helpful error
    messages.
  * R CMD check --as-cran set _R_CHECK_TIMINGS_ too late to have the
    intended effect.
  * as.POSIXlt(x) now also works with very large dates x, fixing
    PR#18401 reported by Hannes M"uhleisen.
  * Files can now be extracted even from very large zip archives
    (PR#18390, thanks to Martin Jakt).
  * Non-finite objects of class "POSIXlt" are now correctly coerced
    to classes "Date" and "POSIXct"; following up on the extension to
    format() them correctly.
  * Added methods for is.finite(), is.infinite() and is.nan() for
    "POSIXlt" date-time objects.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1678881600">- CHANGES IN R 4.2.3:
  C-LEVEL FACILITIES:
  * The definition of DL_FUNC in R_ext/Rdynload.h has been changed to
    be fully C-compliant.  This means that functions loaded _via_ for
    example R_GetCCallable need to be cast to an appropriate type if
    they have any arguments.
  * .Machine has a new element sizeof.time_t to identify old systems
    with a 32-bit type and hence a limited range of date-times (and
    limited support for dates millions of years from present).
  PACKAGE INSTALLATION:
  * (Windows) The default C++ standard had accidentally been left at
    C++11 when it was changed to C++14 on Unix.
  BUG FIXES:
  * As "POSIXlt" objects may be "partially filled" and their list
    components meant to be recycled, length() now is the length of
    the longest component.
  * as.POSIXlt.Date() could underflow for dates in the far past (more
    than half a million years BCE).
  * as.Date.POSIXlt(x) would return "1970-01-01" instead of NA in R
    4.2.2, e.g., for
    x &lt;- as.POSIXlt(c("2019-01-30","2001-1-1"))
    x$mon &lt;- c(0L, NA); as.Date(x)
  * R CMD check failed to apply enabled _R_CHECK_SUGGESTS_ONLY_ to
    examples and vignettes (regression in R 4.2.0).
  * R CMD check did not re-build vignettes in separate processes by
    default (regression in R 4.2.0).
  * Running examples from HTML documentation now restores previous
    knitr settings and options (PR#18420).
  * Quartz: fonts are now located using Core Graphics API instead of
    deprecated ATS which is no longer supported in the macOS 13 SDK
    (PR#18426).  This also addresses an issue where the currently
    used font in the Quartz device context was not correctly
    retained.
  * (Windows) Math symbols in text drawing functions are again
    rendered correctly (PR#18440).  This fixes a regression in R
    4.2.1 caused by a fix in PR#18382 which uncovered an issue in
    GraphApp due to which the symbol charset was not used with TT
    Symbol font face.
  * (Windows) Installing a package with a src/Makefile.{win,ucrt}
    file includes ~/.R/Makevars.win64 in the search for user
    makevars, as documented in "R Installation and Administration"
    and done for packages with a src/Makevars.{win,ucrt} file.
  * format(&lt;POSIXlt_w/_unbalanced_sec&gt;, "....%OS&lt;n&gt;") with n &gt; 0 no
    longer accidentally uses the unbalanced seconds, thanks to
    Suharto Anggono's report (including patch) in PR#18448.
  * solve.default(a, b) works around issues with some versions of
    LAPACK when a contains NA or NaN values.
  * When UseMethod() cannot dispatch, it no longer segfaults
    producing the error message in case of a long class(), thanks to
    Joris Vankerschaver's report (including patch) in PR#18447.
  * When example(foo, ..) produces graphics on an interactive device
    it needs to open itself, it now leaves devAskNewPage() unchanged
    even when it was FALSE, thus fixing a 14 years old '&lt;FIXME&gt;'.
  * packageDescription() again catches errors from encoding
    conversions. This also fixes broken packageVersion() in C locale
    on systems where iconv does not support transliteration.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1681128000">- add patch to build with libcurl &gt;= 8</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1682078400">- CHANGES IN R 4.3.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Calling &amp;&amp; or || with LHS or (if evaluated) RHS of length greater
    than one is now always an error, with a report of the form
    'length = 4' in coercion to 'logical(1)'
    Environment variable _R_CHECK_LENGTH_1_LOGIC2_ no longer has any
    effect.
  NEW FEATURES:
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.10.1.  (This caused some platform-dependent
    changes to package check output.)  And then to the sources from
    LAPACK version 3.11.0 (with changes only to double complex
    subroutines).
  * The included LAPACK sources have been updated to include the four
    Fortran 90 routines rather than their Fortran 77 predecessors.
    This may give some different signs in SVDs or
    eigendecompositions..  (This completes the transition to LAPACK
    3.10.x begun in R 4.2.0.)
  * The LAPACK sources have been updated to version 3.11.0.  (No new
    subroutines have been added, so this almost entirely bug fixes:
    Those fixes do affect some computations with NaNs, including R's
    NA.)
  * The parser now signals _classed_ errors, notably in case of the
    pipe operator |&gt;.  The error object and message now give line and
    column numbers, mostly as proposed and provided by Duncan Murdoch
    in PR#18328.
  * toeplitz() is now generalized for asymmetric cases, with a
    toeplitz2() variant.
  * xy.coords() and xyz.coords() and consequently, e.g., plot(x,y,
    log = "y") now signal a _classed_ warning about negative values
    of y (where log(.) is NA).  Such a warning can be specifically
    suppressed or caught otherwise.
  * Regular expression functions now check more thoroughly whether
    their inputs are valid strings (in their encoding, e.g. in
    UTF-8).
  * The performance of grep(), sub(), gsub() and strsplit() has been
    improved, particularly with perl = TRUE and fixed = TRUE.  Use of
    useBytes = TRUE for performance reasons should no longer be
    needed and is discouraged: it may lead to incorrect results.
  * apropos() gains an argument dot_internals which is used by the
    completion (help(rcompgen)) engine to also see base internals
    such as .POSIXct().
  * Support in tools::Rdiff() for comparing uncompressed PDF files is
    further reduced - see its help page.
  * qqplot(x, y, ...) gains conf.level and conf.args arguments for
    computing and plotting a confidence band for the treatment
    function transforming the distribution of x into the distribution
    of y (Switzer, 1976, _Biometrika_). Contributed by Torsten
    Hothorn.
  * Performance of package_dependencies() has been improved for cases
    when the number of dependencies is large.
  * Strings newly created by gsub(), sub() and strsplit(), when any
    of the inputs is marked as "bytes", are also marked as "bytes".
    This reduces the risk of creating invalid strings and accidental
    substitution of bytes deemed invalid.
  * Support for readLines(encoding = "bytes") has been added to allow
    processing special text files byte-by-byte, without creating
    invalid strings.
  * iconv(from = "") now takes into account any declared encoding of
    the input elements and uses it in preference to the native
    encoding.  This reduces the risk of accidental creation of
    invalid strings, particularly when different elements of the
    input have different encoding (including "bytes").
  * Package repositories in getOption("repos") are now initialized
    from the repositories file when utils is loaded (if not already
    set, e.g., in .Rprofile).  (From a report and patch proposal by
    Gabriel Becker in PR#18405.)
  * compactPDF() gets a verbose option.
  * type.convert() and hence read.table() get new option tryLogical =
    TRUE with back compatible default.  When set to false, converts
    "F" or "T" columns to character.
  * Added new unit prefixes "R" and "Q" for abbreviating
    (unrealistically large) sizes beyond 10^{27} in standard = "SI",
    thanks to Henrik Bengtsson's PR#18435.
  * as.data.frame()'s default method now also works fine with atomic
    objects inheriting from classes such as "roman", "octmode" and
    "hexmode", such fulfilling the wish of PR#18421, by Benjamin
    Feakins.
  * The as.data.frame.vector() utility now errors for wrong-length
    row.names.  It warned for almost six years, with "Will be an
    error!".
  * sessionInfo() now also contains La_version() and reports codepage
    and timezone when relevant, in both print() and toLatex() methods
    which also get new option tzone for displaying timezone
    information when locale = FALSE.
  * New function R_compiled_by() reports the C and Fortran compilers
    used to build R, if known.
  * predict(&lt;lm&gt;, newdata = *) no longer unnecessarily creates an
    offset of all 0s.
  * solve() for complex inputs now uses argument tol and by default
    checks for 'computational singularity' (as it long has done for
    numeric inputs).
  * predict(&lt;rank-deficient lm&gt;, newdata=*) now obeys a new argument
    rankdeficient, with new default "warnif", warning only if there
    are non-estimable cases in newdata.  Other options include
    rankdeficient = "NA", predicting NA for non-estimable newdata
    cases.  This addresses PR#15072 by Russ Lenth and is based on his
    original proposal and discussions in PR#16158 also by David Firth
    and Elin Waring.  Still somewhat experimental.
  * Rgui console implementation now works better with the NVDA screen
    reader when the full blinking cursor is selected.  The underlying
    improvements in cursor handling may help also other screen
    readers on Windows.
  * The drop-field control in GraphApp can now be left with the TAB
    key and all controls can be navigated in the reverse order using
    the Shift+TAB key, improving accessibility of the Rgui
    configuration editor.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now fully accurate
    (instead of to "only" minimally five digits).
  * demo(error.catching) now also shows off withWarnings() and
    tryCatchWEMs().
  * As an experimental feature the placeholder _ can now also be used
    in the rhs of a forward pipe |&gt; expression as the first argument
    in an extraction call, such as _$coef. More generally, it can be
    used as the head of a chain of extractions, such as _$coef[[2]].
  * Spaces in the environment variable used to choose the R session's
    temporary directory (TMPDIR, TMP and TEMP are tried in turn) are
    now fatal.  (On Windows the 'short path' version of the path is
    tried and used if that does not contain a space.)
  * all.equal.numeric() gets a new optional switch giveErr to return
    the numeric error as attribute.  Relatedly,
    stopifnot(all.equal&lt;some&gt;(a, b, ..)) is as "smart" now, as
    stopifnot(all.equal(....)) has been already, thus allowing
    customized all.equal&lt;Some&gt;() wrappers.
  * R on Windows is now able to work with path names longer than 260
    characters when these are enabled in the system (requires at
    least Windows 10 version 1607).  Packages should be updated to
    work with long paths as well, instead of assuming PATH_MAX to be
    the maximum length.  Custom front-ends and applications embedding
    R need to update their manifests if they wish to allow this
    feature.  See
    &lt;https://blog.r-project.org/2023/03/07/path-length-limit-on-windows&gt;
    for more information.
  * 'Object not found' and 'Missing argument' errors now give a more
    accurate error context. Patch provided by Lionel Henry in
    PR#18241.
  * The @ operator is now an S3 generic. Based on contributions by
    Tomasz Kalinowski in PR#18482.
  * New generic chooseOpsMethod() provides a mechanism for objects to
    resolve cases where two suitable methods are found for an Ops
    Group Generic. This supports experimenting with alternative
    object systems. Based on contributions by Tomasz Kalinowski in
    PR#18484.
  * inherits(x, what) now accepts values other than a simple
    character vector for argument what. A new generic, nameOfClass(),
    is called to resolve the class name from what. This supports
    experimenting with alternative object systems. Based on
    contributions by Tomasz Kalinowski in PR#18485.
  * Detection of BLAS/LAPACK in use (sessionInfo()) with FlexiBLAS
    now reports the current backend.
  * The "data.frame" method for subset() now warns about extraneous
    arguments, typically catching the use of = instead of == in the
    subset expression.
  * Calling a:b when numeric a or b is longer than one may now be
    made into an error by setting environment variable
    _R_CHECK_LENGTH_COLON_ to a true value, along the proposal in
    PR#18419 by Henrik Bengtsson.
  * density(x, weights = *) now warns if automatic bandwidth
    selection happens without using weights; new optional warnWbw may
    suppress the warning.  Prompted by Christoph Dalitz' PR#18490 and
    its discussants.
  * rm(list = *) is faster and more readable thanks to Kevin Ushey's
    PR#18492.
  * The plot.lm() function no longer produces a normal Q-Q plot for
    GLMs. Instead it plots a half-normal Q-Q plot of the absolute
    value of the standardized deviance residuals.
  * The print() method for class "summary.glm" no longer shows
    summary statistics for the deviance residuals by default.  Its
    optional argument show.residuals can be used to show them if
    required.
  * The tapply() function now accepts a data frame as its X argument,
    and allows INDEX to be a formula in that case. by.data.frame()
    similarly allows INDICES to be a formula.
  * The performance of df[j] &lt;- value (including for missing j) and
    write.table(df) has been improved for data frames df with a large
    number of columns.  (Thanks to Gabriel Becker's PR#18500,
    PR#18503 and discussants, prompted by a report from Toby Dylan
    Hocking on the R-devel mailing list.)
  * The matrix multiply operator %*% is now an S3 generic, belonging
    to new group generic matrixOps.  From Tomasz Kalinowski's
    contribution in PR#18483.
  * New function array2DF() to convert arrays to data frames,
    particularly useful for the list arrays created by tapply().
  DATES and TIMES:
  * On platforms where (non-UTC) datetimes before 1902 (or before
    1900 as with system functions on recent macOS) are guessed by
    extrapolating time zones from 1902-2037, there is a warning at
    the first use of extrapolation in a session.  (As all time zones
    post 2037 are extrapolation, we do not warn on those.)
  * (Platforms using --with-internal-tzone, including Windows and by
    default macOS). How years are printed in dates or date-times can
    be controlled by environment variable R_PAD_YEARS_BY_ZERO.  The
    default remains to pad to 4 digits by zeroes, but setting value
    no gives no padding (as used by default by glibc).
  * strftime() tries harder to determine the offset for the "%z"
    format, and succeeds on the mainstream R platforms.
  * strftime() has a limit of 2048 bytes on the string produced -
    attempting to exceed this is an error.  (Previously it silently
    truncated at 255 bytes.)
  * sessionInfo() records (and by default prints) the system time
    zone as part of the locale information.  Also, the source
    (system/internal) of the date-time conversion and printing
    functions.
  * Objects of class "POSIXlt" created in this version of R always
    have 11 components: component zone is always set, and component
    gmtoff is set for times in UTC and usually set on the (almost
    all) platforms which have C-level support, otherwise is NA.
  * There are comprehensive validity checks on the structure of
    objects of class "POSIXlt" when converting (including formatting
    and printing).  (This avoids mis-conversions of hand-crafted
    objects.)
  * There is some support for using the native date-time routines on
    macOS: this is only viable on recent versions (e.g. 12.6 and 13)
    and does get wrong some historical changes (before 1900, during
    WWII).  Use of --with-internal-tzone remains the default.
  * as.POSIXct(&lt;numeric&gt;) and as.POSIXlt(.) (without specifying
    origin) now work.  So does as.Date(&lt;numeric&gt;).
  * as.Date.POSIXct(., tz) now treats several tz values, notably
    "GMT" as equivalent to "UTC", proposed and improved by Michael
    Chirico and Joshua Ulrich in PR#17674.
  * Experimental balancePOSIXlt() utility allows using "ragged" and
    or out-of-range "POSIXlt" objects more correctly, e.g., in
    subsetting and subassignments.  Such objects are now documented.
    More experimentally, a "POSIXlt" object may have an attribute
    "balanced" indicating if it is known to be filled or fully
    balanced.
  * Functions axis.Date() and axis.POSIXct() are rewritten to gain
    better default tick locations and better default formats by using
    prettyDate(). Thanks to Swetlana Herbrandt.
  * The mapping of Windows' names for time zones to IANA's 'Olson'
    names has been updated.  When ICU is available (it is by
    default), it is used to get a mapping for the current region set
    in Windows.  This can be overridden by setting environment
    variable TZ to the desired Olson name - see OlsonNames() for
    those currently available.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 16
    and so packages that provide graphics devices should be
    reinstalled.
  * The grDevices and grid packages have new functions for rendering
    typeset glyphs, primarily: grDevices::glyphInfo() and
    grid::grid.glyph().
    Rendering of typeset glyphs is only supported so far on the
    Cairo-based graphics devices and on the pdf() and quartz()
    devices.
  * The defined behaviour for "clear" and "source" compositing
    operators (via grid::grid.group()) has been changed (to align
    better with simple interpretation of original Porter-Duff
    definitions).
  * Support for gradients, patterns, clipping paths, masks, groups,
    compositing operators, and affine transformations has been added
    to the quartz() device.
  INSTALLATION on a UNIX-ALIKE:
  * A system installation of generic LAPACK 3.10.0 or later will be
    preferred to the version in the R sources.
    configure option --with-lapack=no (equivalently --without-lapack)
    forces compilation of the internal LAPACK sources.
    If --with-lapack is not specified, a system liblapack is looked
    for and used if it reports version 3.10.0 or later and does not
    contain BLAS routines.
    Packages using LAPACK will need to be reinstalled if this changes
    to using an external library.
  * On aarch64 Linux platforms using GCC, configure now defaults to
  - fPIC (instead of -fpic), as desired in PR#18326.
  * configure now checks conversion of datetimes between POSIXlt and
    POSIXct around year 2020.  Failure (which has been seen on
    platforms missing tzdata) is fatal.
  * If configure option --with-valgrind-instrumentation is given
    value 1 or 2, option --with-system-valgrind-headers is now the
    default and ignored (with a warning).  It is highly recommended
    that the system headers are installed alongside valgrind: they
    are part of its packaging on some Linux distributions and
    packaged separately (e.g. in the valgrind-devel RPM) on others.
    configure will give a warning if they are not found.
    The system headers will be required in a future release of R to
    build with valgrind instrumentation.
  * libcurl 8.x is now accepted by configure: despite a change in
    major version number it changes neither API nor ABI.
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools43, an update of the Rtools42 toolchain.  It is
    based on gcc 12 and newer versions of MinGW-W64, binutils and
    libraries.  At this time R-devel can still be built using
    Rtools42 without changes, but when R-devel is installed via the
    installer, it will by default look for Rtools43.
  * Old make targets rsync-extsoft and 32-bit ones that are no longer
    needed have been removed.
  * Default builds (including for packages) no longer select C99.
    Thus the C standard used is the default for the compiler, which
    for the toolchain in Rtools43 is C17.  (This is consistent with
    Unix builds.)
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++17 where
    available (which it is on all currently checked platforms): if
    not C++14 or C++11 is used if available otherwise C++ is not
    supported.
  * USE_FC_LEN_T is the default: this uses the correct
    (compiler-dependent) prototypes for Fortran BLAS/LAPACK routines
    called from C/C++, and requires adjustment of many such calls -
    see 'Writing R Extensions' SS6.6.1.
  * There is initial support for C++23 as several compilers are now
    supporting -std=c++23 or -std=c++2b or similar.  As for C++20,
    there no additional configure checks for C++23 features beyond a
    check that the compiler reports a __cplusplus value greater than
    that in the C++20 standard.  C++ feature tests should be used.
  * There is support for a package to indicate the version of the C
    standard which should be used to compile it, and for the
    installing user to specify this.  In most cases R defaults to the
    C compiler's default standard which is C17 (a `bug-fix' of C11) -
    earlier versions of R or compilers may have defaulted to C99.
    Current options are:
    USE_C17 Use a standard that is at most C17.  The intention is to
    allow legacy packages to still be installed when later C
    standards become the default, including packages using new
    keywords as identifiers or with K&amp;R-style function
    declarations.  This will use C17 if available, falling back
    to C11.
    USE_C90 Use the C90 (aka C89) standard.  (As that standard did
    not require compilers to identify that version, all we can
    verify is that the compiler does not claim to be using a
    later standard.  It may accept C99 features - for example
    clang accepts // to make comments.)
    USE_C99 Use the C99 standard. This should be rarely needed - it
    avoids the few new features of C11/C17 which can be useful if
    a package assumes them if C17 is specified and they are not
    implemented.
    USE_C23 Use C23 (or in future, later).  Compiler/library support
    for C23 is still being implemented, but LLVM clang from
    15.0.0 and the upcoming GCC 13 have quite extensive support.
    These can be specified as part of the SystemRequirements field in
    the package's DESCRIPTION file or _via_ options --use-C17 and so
    on of R CMD INSTALL and R CMD SHLIB.
    For further details see "Writing R Extensions" SS1.2.5.
  * (Windows) A src/Makefile.ucrt or src/Makefile.win file is now
    included after R_HOME/etcR_ARCH/Makeconf and so no longer needs
    to include that file itself.  Installation of a package with such
    a file now uses a site Makevars file in the same way as a package
    with a src/Makevars.win file would.
  * configure is now passed crucial variables such as CC and CFLAGS
    in its environment, as many packages were not setting them (as
    documented in 'Writing R Extensions' SS1.2).
    This has most effect where configure is used to compile parts of
    the package - most often by cmake or libtool which obfuscate the
    actual compile commands used.
    Also used for configure.win and configure.ucrt on Windows.
  FORTRAN FLAGS:
  * The flag -fno-optimize-sibling-calls is no longer forced for
    gfortran 7 and later.  It should no longer be needed now using
    'hidden' character-length arguments when calling BLAS/LAPACK
    routines from C/C++ is the default even for packages.  (Unless
    perhaps packages call Fortran code from C/C++ without using R's
    headers and without allowing for these arguments.)
  C-LEVEL FACILITIES:
  * The deprecated S-compatibility macros DOUBLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * The deprecated legacy typedefs of Sint and Sfloat in header R.h
    are no longer defined, and that header no longer includes header
    limits.h from C nor climits from C++.
  * New macro CAD5R() is provided in Rinternals.h and used in a few
    places in the R sources.
  * ALTREP now supports VECSXP vectors. Contributed by Gabor Csardi
    in PR#17620.
  * The Rcomplex definition (in header R_ext/Complex.h) has been
    extended to prevent possible mis-compilation when interfacing
    with Fortran (PR#18430).  The new definition causes compiler
    warnings with static initializers such as {1, 2}, which can be
    changed to {.r=1, .i=2}.
    Using the new definition from C++ depends on compiler extensions
    supporting C features that have not been incorporated into the
    C++ standards but are available in g++ and clang++: this may
    result in C++ compiler warnings but these have been worked around
    for recent versions of common compilers (GCC, Apple/LLVM clang,
    Intel).
    It is intended to change the inclusion of header R_ext/Complex.h
    by other R headers, so C/C++ code files which make use of
    Rcomplex should include that header explicitly.
  UTILITIES:
  * R CMD check does more checking of package .Rd files, warning
    about invalid email addresses and (some) invalid URIs and noting
    empty \item labels in description lists.
  * R CMD check now also reports problems when reading package news
    in md (file NEWS.md) and (optionally) plain text (file NEWS)
    formats.
  * _R_CHECK_TIMINGS_ defaults to a value from the environment even
    for R CMD check --as-cran; this allows for exceptionally fast or
    slow platforms.
    It now applies to checking PDF and HTML versions of the manuals,
    and 'checking CRAN incoming feasibility'.
  * R CMD check can optionally (but included in --as-cran) check
    whether HTML math rendering _via_ KaTeX works for the package .Rd
    files.
  * Non-interactive debugger invocations can be trapped by setting
    the environment variable _R_CHECK_BROWSER_NONINTERACTIVE_ to a
    true value.  This is enabled by R CMD check --as-cran to detect
    the use of leftover browser() statements in the package.
  * The use of sprintf and vsprintf from C/C++ has been deprecated in
    macOS 13 and is a known security risk.  R CMD check now reports
    (on all platforms) if their use is found in compiled code:
    replace by snprintf or vsnprintf respectively. [*NB:* whether
    such calls get compiled into the package is platform-dependent.]
  * Where recorded at installation, R CMD check reports the C and
    Fortran compilers used to build R.
    It reports the OS in use (if known, as given by osVersion) as
    well as that R was built for.
    It notes if a C++ standard was specified which is older than the
    current default: many packages have used C++11 to mean 'not
    C++98' - as C++11 is the minimum supported since R 4.0.0, that
    specification can probably be removed.
  * R CMD INSTALL reports the compilers (and on macOS, the SDK) used,
    and this is copied to the output of R CMD check.
    Where a C++ standard is specified, it is reported.
  * R CMD check's 'checking compilation flags in Makevars' has been
    relaxed to accept the use of flags such as -std=f2008 in
    PKG_FFLAGS.
  * tools::buildVignettes() has a new argument skip, which is used by
    R CMD check to skip (and note) vignettes with unavailable
    \VignetteDepends (PR#18318).
  * New generic .AtNames() added to enable class-specific completions
    after @. The formerly internal function findMatches() is now
    exported, mainly for use in methods for .DollarNames() and
    .AtNames().
  DEPRECATED AND DEFUNCT:
  * default.stringsAsFactors() is defunct.
  * Calling as.data.frame.&lt;class&gt;() directly (for 12 atomic classes)
    is going to be formally deprecated, currently activated by
    setting the environment variable
    _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ to non-empty, which also
    happens in R CMD check --as-cran.
  BUG FIXES:
  * Hashed environments with sizes less than 5 can now grow.
    (Reported to R-devel by Duncan Garmonsway.)
  * as.character(&lt;Rd&gt;, deparse = TRUE) failed to re-escape curly
    braces in LaTeX-like text.  (Reported by Hadley Wickham in
    PR#18324.)
  * library() now passes its lib.loc argument when requiring Depends
    packages; reported (with fix) in PR#18331 by Mikael Jagan.
  * R CMD Stangle: improved message about 'Output' files.
  * head(x, n) and tail(x, n) now signal an error if n is not
    numeric, instead of incidentally "working" sometimes returning
    all of x.  Reported and discussed by Colin Fay, in PR#18357.
  * The "lm" method for summary() now gives the correct F-statistic
    when the model contains an offset.  Reported in PR#18008.
  * C() and `contrasts&lt;-`() now preserve factor level names when
    given a function object (as opposed a function name which did
    preserve names). Reported in PR#17616.
  * c(a = 1, 2)[[]] no longer matches 2 but rather signals a
    _classed_ error.  Reported and analysed by Davis Vaughan in
    PR#18367, a duplicate of PR#18004, by Jan Meis et al.  For
    consistency, NULL[[]] is also erroneous now.  x[[]] &lt;- v gives an
    error of the same class "MissingSubscriptError".
  * The relist() function of utils now supports NULL elements in the
    skeleton (PR#15854).
  * ordered(levels = *) (missing x) now works analogously to factor(,
    ordered=TRUE); reported (with fix) by Achim Zeileis in PR#18389.
  * User-defined Rd macro definitions can now span multiple lines,
    thanks to a patch from Duncan Murdoch. Previously, the Rd parser
    silently ignored everything after the first line.
  * Plain-text help (tools::Rd2txt()) now preserves an initial blank
    line for text following description list items.
  * tools::Rd2HTML() and tools::Rd2latex() no longer split \arguments
    and \value lists at Rd comments.
  * tools::Rd2latex() now correctly handles optional text outside
    \items of argument lists as well as bracketed text at the
    beginning of sections, e.g., \value{[NULL]}.
  * as.character(&lt;POSIXt&gt;) now behaves more in line with the methods
    for atomic vectors such as numbers, and is no longer influenced
    by options().  Ditto for as.character(&lt;Date&gt;).  The
    as.character() method gets arguments digits and OutDec with
    defaults _not_ depending on options().  Use of as.character(*,
    format = .) now warns.
  * Similarly, the as.character.hexmode() and *.octmode() methods
    also behave as good citizen methods and back compatibility option
    keepStr = TRUE.
  * The as.POSIXlt(&lt;POSIXlt&gt;) and as.POSIXct(&lt;POSIXct&gt;) default
    methods now do obey their tz argument, also in this case.
  * as.POSIXlt(&lt;Date&gt;) now does apply a tz (time zone) argument, as
    does as.POSIXct(); partly suggested by Roland Fuss on the R-devel
    mailing list.
  * as.Date.POSIXlt(x) now also works when the list components are of
    unequal length, aka "partially filled" or "ragged".
  * expand.model.frame() looked up variables in the wrong environment
    when applied to models fitted without data.  Reported in
    PR#18414.
  * time() now (also) uses the ts.eps = getOption("ts.eps") argument
    and thus by default rounds values very close to the start (or
    end) of a year.  Based on a proposal by Andre"i V. Kostyrka on
    R-help.
  * Printing of a factanal() result with just one factor and sort =
    TRUE now works regularly, fixing PR#17863 by Timothy Bates,
    thanks to the 'R Contributors' working group.
  * Printing 0-length objects of class "factor", "roman", "hexmode",
    "octmode", "person", "bibentry", or "citation" now prints
    something better, one of which fixes PR#18422, reported by
    Benjamin Feakins.
  * Sys.timezone() queries timedatectl only if systemd is loaded;
    addressing a report by Jan Gorecki in PR#17421.
  * The formula method of cor.test() had scoping problems when
    environment(formula) was not the calling environment; reported
    with a patch proposal by Mao Kobayashi in PR#18439.
  * attach() of an environment with active bindings now preserves the
    active bindings.  Reported by Kevin Ushey in PR#18425.
  * BLAS detection now works also with system-provided libraries not
    available as regular files.  This fixes detection of the
    Accelerate framework on macOS since Big Sur.  Reported by David
    Novgorodsky.
  * download.file() gives a helpful error message in case of an
    invalid download.file.method option, thanks to Colin Fay's report
    in PR#18455.
  * Sporadic crashes of Rterm when using completion have been fixed.
  * Rprof() is now more reliable.  A livelock in thread
    initialization with too short sampling interval has been fixed on
    macOS.  A deadlock in using the C runtime has been fixed on
    Windows.  A potential deadlock has been prevented on Unix.
  * Cursor placement in Rgui now works even after a fixed-width font
    is selected.
  * Mandatory options (options()) are now set on startup so that
    saving and restoring them always works (PR#18372).
  * Package installation, R CMD INSTALL or install.packages(*), now
    parses each of the &lt;pkg&gt;/R/*.R files individually instead of
    first concatenating and then parse()ing the large resulting file.
    This allows parser or syntax errors to be diagnosed with correct
    file names and line numbers, thanks to Simon Dedman's report and
    Bill Dunlap's patch in PR#17859.
    This _does_ require syntactically self contained R source files
    now, fixing another inadvertent bug.
  * predict.lm(&lt;model with offset&gt;) now finds the offset in the
    correct environment, thanks to Andr'e Gillibert's report and patch
    in PR#18456.
  * getInitial(&lt;formula&gt;) now finds the selfStart model in the
    correct environment.  (Reported by Ivan Krylov in PR#18368.)
  * Fix for possible segfault when using recently-added graphics
    features, such as gradients, clipping paths, masks, and groups
    with pdf(file=NULL).
  * class(m) &lt;- class(m) no longer changes a matrix m by adding a
    class _attribute_.
  * packageDate(pkg) now only warns once if there is no pkg.
  * When ts() creates a multivariate time series, "mts", it also
    inherits from "array" now, and is.mts() is documented _and_
    stricter.
  * Rd2txt() now preserves line breaks of \verb Rd content and from
    duplicated \cr.  The former also fixes the rendering of verbatim
    output from Rd \Sexpr in plain-text help.
  * uniroot(f, interval) should no longer wrongly converge _outside_
    the interval in some cases where abs(f(x)) == Inf for an x at the
    interval boundary, thanks to posts by Ben Bolker and Serguei
    Sokol on R-devel.
  * Vectorized alpha handling in palette functions such as in gray(),
    rainbow(), or hcl.colors() works correctly now, thanks to Achim
    Zeileis' report and patch in PR#18476.
  * Formatting and print()ing of bibentry objects has dropped the
    deprecated citation.bibtex.max argument, such that the bibtex
    argument's default for print.bibentry() depends directly on the
    citation.bibtex.max option, whereas in format.bibentry() the
    option no longer applies.
  * Attempting to use a character string naming a foreign function
    entry point in a foreign function call in a package will now
    signal an error if the packages has called R_forceSymbols to
    specify that symbols must be used.
  * An error in table() could permanently set options(warn=2)
    promoting all subsequent warnings to errors.
  * The sigma() function gave misleading results for binary GLMs.  A
    new method for objects of class "glm" returns the square root of
    the estimate of the dispersion parameter using the same
    calculation as summary.glm().
  * bs() and ns() in the (typical) case of automatic knot
    construction, when some of the supposedly inner knots coincide
    with boundary knots, now moves them inside (with a warning),
    building on PR#18442 by Ben Bolker.
  * R CMD on Windows now skips the site profile with --no-site-file
    and --vanilla even when R_PROFILE is set (PR#18512, from Kevin
    Ushey).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1686916800">- CHANGES IN R 4.3.1:
  C-LEVEL FACILITIES:
  * The C-level API version of R's integrate(), Rdqags() in Applic.h,
    now returns the correct number of integrand evaluations neval,
    fixing PR#18515 reported and diagnosed by Stephen Wade.
  * The C prototypes for LAPACK calls dspgv and dtptrs in
    R_exts/Lapack.h had one too many and one too few character length
    arguments - but this has not caused any known issues. To get the
    corrected prototypes, include
    [#]include &lt;Rconfig.h&gt; // for PR18534fixed
    [#]ifdef PR18534fixed
    [#] define usePR18534fix 1
    [#]endif
    [#]include &lt;R_exts/Lapack.h&gt;
    in your C/C++ code (PR#18534).
  INSTALLATION:
  * Many of the checks of esoteric Internet operations and those
    using unreliable external sites have been moved to a new target
    that is not run by default and primarily intended for the core
    developers.  To run them use
    cd tests; make test-Internet-dev
  BUG FIXES:
  * .S3methods(), typically called from methods(), again marks
    methods from package base as visible.
    Also, the visibility of non-base methods is again determined by
    the method's presence in search().
  * tools::Rdiff() is now more robust against invalid strings, fixing
    installation tests on Windows without Rtools installed
    (PR#18530).
  * Fix (new) bug in hcl.colors(2, *), by Achim Zeileis (PR#18523).
  * head(., &lt;illegal&gt;) and tail(..) now produce more useful "Error in
    ...." error messages, fixing PR#18362.
  * Package code syntax on Windows is checked in UTF-8 when UTF-8 is
    the native encoding.
  * na.contiguous(x) now also returns the first run, when it is at
    the beginning and there is a later one of the same length;
    reported to R-devel, including a fix, by Georgi Boshnakov.
    Further, by default, it modifies only an existing attr(*,"tsp")
    but otherwise no longer sets one.
  * chol(&lt;not pos.def&gt;, pivot = &lt;T|F&gt;) now gives a correct error or
    warning message (depending on pivot), thanks to Mikael Jagan's
    (PR#18541).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1699012800">- CHANGES IN R 4.3.2:
  NEW FEATURES:
  * The default initialization of the "repos" option from the
    repositories file at startup can be skipped by setting
    environment variable R_REPOSITORIES to NULL such that
    getOption("repos") is empty if not set elsewhere.
  * qr.X() is now an implicit S4 generic in methods.
  * iconv(to = "ASCII//TRANSLIT") is emulated using substitution on
    platforms which do not support it (notably Alpine Linux).  This
    should give a human-readable conversion in ASCII on all platforms
    (rather than NA_character_).
  * trans3d() gains options continuous and verbose addressing the
    problem of possible "wrap around" when projecting too long
    curves, as reported by Achim Zeileis in PR#18537.
  * tools::showNonASCII() has been rewritten to work better on macOS
    14 (which has a changed implementation of iconv()).
  * tiff(type = "quartz") (the default on macOS) now warns if
    compression is specified: it continues to be ignored.
  INSTALLATION on a UNIX-ALIKE:
  * There is some support for building with Intel's LLVM-based
    compilers on x86_64 Linux, such as (C) icx, (C++) ipcx and
    (Fortran) ifx from oneAPI 2023.x.y.
  * There is support for using LLVM's flang-new as the Fortran
    compiler from LLVM 16.0.x (preferably 17.0.0 or later).
  UTILITIES:
  * R CMD check reports the use of the Fortran 90 random number
    generator RANDOM_NUMBER() and the subroutines to initialize it.
    'Writing R Extensions' has example code to use R's RNGs from
    Fortran.
  BUG FIXES:
  * substr(x, n, L) &lt;- cc now works (more) correctly for multibyte
    UTF-8 strings x when L &gt; nchar(x), thanks to a report and patch
    by 'Architect 95'.
  * contrib.url(character()) now returns 0-length character() as
    documented, which also avoids spurious warnings from
    available.packages() et al. in the edge case of an empty vector
    of repository URLs.
  * readChar(., 4e8) no longer fails, thanks to Kodi Arfer's report
    (PR#18557).
  * lapply(&lt;list&gt;, as.data.frame) no longer warns falsely for some
    base vector components.
  * Communication between parent and child processes in the multicore
    part of parallel could fail on platforms that do not support an
    arbitrarily large payload in system functions read()/write() on
    pipes (seen on macOS where a restriction to INT_MAX bytes is
    documented, without doing a partial read unlike Linux). The
    payload is now split into 1Gb chunks to avoid that problem.
    (PR#18571)
  * qqplot(x,y, conf.level=.) gives better confidence bounds when
    length(x) != length(y), thanks to Alexander Ploner's report and
    patch proposal (PR#18557).
  * norm(&lt;0-length&gt;, "2") now gives zero instead of an error, as all
    the other norm types, thanks to Mikael Jagan's PR#18542.
  * Build-stage Rd macros \packageAuthor and \packageMaintainer now
    process Authors@R, fixing NA results when the package DESCRIPTION
    omits Author and Maintainer fields.
  * Formatting and printing complex numbers could give things like
    0.1683-0i because of rounding error: -0i is now replaced by +0i.
  * postscript() refused to accept a title comment containing the
    letter "W" (PR#18599).
  * isoreg(c(1,Inf)) signals an error instead of segfaulting, fixing
    PR#18603.
  * tiff(type = "Xlib") was only outputting the last page of
    multi-page plots.
  * tools::latexToUtf8() again knows about \~{n} and other letters
    with tilde, fixing a regression in R 4.3.0, and about \^{i} as an
    alternative to \^{\i} (similarly with other accents).
    Furthermore, LaTeX codes for accented I letters are now correctly
    converted, also fixing related mistakes in
    tools::encoded_text_to_latex().
  * tar(*, tar = "internal") no longer creates out-of-spec tar files
    in the very rare case of user or group names longer than 32
    bytes, fixing PR#17871 with thanks to Ivan Krylov.
  * When using the "internal" timezone datetime code, adding a
    fraction of a second no longer adds one second, fixing PR#16856
    from a patch by Ivan Krylov.
  * tools::checkRd() no longer produces spurious notes about
    "unnecessary braces" from multi-line Rd results of \Sexpr macros.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1709208000">- CHANGES IN R 4.3.3:
  NEW FEATURES:
  * iconv() now fixes up variant encoding names such as "utf8"
    case-insensitively.
  DEPRECATED AND DEFUNCT:
  * The legacy encoding = "MacRoman" is deprecated in pdf() and
    postscript(): support was incomplete in earlier versions of R.
  BUG FIXES:
  * Arguments are now properly forwarded to methods on S4 generics
    with ... in the middle of their formal arguments. This was broken
    for the case when a method introduced an argument but did not
    include ... in its own formals. Thanks to Herv'e Pag`es for the
    report PR#18538.
  * Some invalid file arguments to pictex(), postscript() and xfig()
    opened a file called NA rather than throw an error.  These
    included postscript(NULL) (which some people expected to work
    like pdf(NULL)).
  * Passing filename = NA to svg(), cairo_pdf(), cairo_ps() or the
    Cairo-based bitmap devices opened a file called NA: it now throws
    an error.
  * quartz(file = NA) opened a file called NA, including when used as
    a Quartz-based bitmap device.  It now gives an error.
  * rank(&lt;long vector&gt;) now works, fixing PR#18617, thanks to Ilia
    Kats.
  * seq.int() did not adequately check its length.out argument.
  * match(&lt;POSIXct&gt;, .) is correct again for differing time zones,
    ditto for "POSIXlt", fixing PR#18618 reported by Bastian Klein.
  * drop.terms(*, dropx = &lt;0-length&gt;) now works, fixing PR#18563 as
    proposed by Mikael Jagan.
  * drop.terms(*) keeps + offset(.) terms when it should, PR#18565,
    and drop.terms() no longer makes up a response, PR#18566, fixing
    both bugs thanks to Mikael Jagan.
  * getS3method("t", "test") no longer finds the t.test() function,
    fixing PR#18627.
  * pdf() and postscript() support for the documented Adobe encodings
    "Greek" and "Cyrilllic" was missing (although the corresponding
    Windows' codepages could be used).
  * Computations of glyph metric information for pdf() and
    postscript() did not take into account that transliteration could
    replace one character by two or more (only seen on macOS 14) and
    typically warned that the information was not known.
  * rank(x) no longer overflows during integer addition, when
    computing rank average for largish but not-yet long vector x,
    fixing PR#18630, thanks to Ilia Kats.
  * list.files() on Windows now returns also files with names longer
    that 260 bytes (the Windows limit is 260 characters).
    Previously, some file names particularly with 'East Asian'
    characters were omitted.
  * cov2cor(&lt;0 x 0&gt;) now works, fixing PR#18423 thanks to Mikael
    Jagan and Elin Waring.
  * cov2cor(&lt;negative diagonal&gt;) and similar now give one warning
    instead of two, with better wording, fixing PR#18424 thanks to
    Mikael Jagan.
  * tools:: startDynamicHelp() now ensures port is in proper range,
    fixing PR#18645.
  * pbeta(x, a,b) is correct now for x=0 or 1 in the boundary cases
    where a or b or both are 0, fixing PR#18672 thanks to Michael
    Fay.
  * pmatch(x, table) for large table, also called for data frame row
    selection, dfrm[nm, ], is now interruptible, fixing PR#18656.
  * predict(&lt;rank-deficient lm&gt;, newdata=*) fix computing of nbasis,
    see Russ Lenth's comment 29 in PR#16158.
  * Added a work-around for a bug in macOS 14.3.1 and higher which
    prevents R plots in the Quartz Cocoa device from updating on
    screen.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1713960000">- CHANGES IN R 4.4.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Startup banners, R --version, sessionInfo() and R CMD check no
    longer report (64-bit) as part of the platform as this is almost
    universal - the increasingly rare 32-bit platforms will still
    report (32-bit).
    On Windows, ditto for window titles.
  * is.atomic(NULL) now returns FALSE, as NULL is not an atomic
    vector.  Strict back-compatibility would replace is.atomic(foo)
    by (is.null(foo) || is.atomic(foo)) but should happen only
    sparingly.
  NEW FEATURES:
  * The confint() methods for "glm" and "nls" objects have been
    copied to the stats package.  Previously, they were stubs which
    called versions in package MASS. The MASS namespace is no longer
    loaded if you invoke (say) confint(glmfit).  Further, the "glm"
    method for profile() and the plot() and pairs() methods for class
    "profile" have been copied from MASS to stats.  (profile.nls()
    and plot.profile.nls() were already in stats.)
  * The confint() and profile methods for "glm" objects have gained a
    possibility to do profiling based on the Rao Score statistic in
    addition to the default Likelihood Ratio. This is controlled by a
    new test = argument.
  * The pairs() method for "profile" objects has been extended with a
    which = argument to allow plotting only a subset of the
    parameters.
  * The "glm" method for anova() computes test statistics and
    p-values by default, using a chi-squared test or an F test
    depending on whether the dispersion is fixed or free.  Test
    statistics can be suppressed by giving argument test a false
    logical value.
  * In setRepositories() the repositories can be set using their
    names via name = instead of index ind =.
  * methods() and .S3methods() gain a all.names option for the (rare)
    case where functions starting with a . should be included.
  * Serializations can now be interrupted (e.g., by Ctrl-C on a
    Unix-alike) if they take too long, e.g., from save.image(),
    thanks to suggestions by Ivan Krylov and others on R-devel.
  * New startup option --max-connections to set the maximum number of
    simultaneous connections for the session.  Defaults to 128 as
    before: allowed values up to 4096 (but resource limits may in
    practice restrict to smaller values).
  * R on Windows (since Windows 10 2004) now uses the new Segment
    Heap allocator. This may improve performance of some
    memory-intensive applications.
  * When R packages are built, typically by R CMD build &lt;pkg&gt;, the
    new --user=&lt;build_user&gt; option overrides the (internally
    determined) user name, currently Sys.info()["user"] or LOGNAME.
    This is a (modified) fulfillment of Will Landau's suggestion in
    PR#17530.
  * tools::testInstalledBasic() gets new optional arguments outDir
    and testSrcdir, e.g., allowing to use it in a &lt;builddir&gt; !=
    &lt;srcdir&gt; setup, and in standard "binary" Windows installation
  * if* a source tests/ folder is present.
  * range(&lt;DT_with_Inf&gt;, finite = TRUE) now work for objects of class
    "Date", "POSIXct", and "POSIXlt" with infinite entries,
    analogously to range.default(), as proposed by Davis Vaughan on
    R-devel.  Other range()-methods can make use of new function
    .rangeNum().
  * New .internalGenerics object complementing .S3PrimitiveGenerics,
    for documentation and low-level book-keeping.
  * grid() now invisibly returns the x- and y- coordinates at which
    the grid-lines were drawn.
  * norm(., type) now also works for complex matrices.
  * kappa(., exact = TRUE, norm = *) now works for all norms and also
    for complex matrices.  In symmetric / triangular cases, the new
    argument uplo = "U" | "L" allows the upper or lower triangular
    part to be specified.
  * memDecompress(type = "unknown") recognizes compression in the
    default 'zlib' format as used by memCompress(type = "gzip").
  * memCompress() and memDecompress() will use the libdeflate library
    (&lt;https://github.com/ebiggers/libdeflate&gt;) if installed.  This
    uses the same type of compression for type = "gzip" but is 1.5-2x
    faster than the system libz library on some common platforms: the
    speed-up may depend on the library version.
  * diff() for objects of class "Date", "POSIXct", and "POSIXlt"
    accepts a units argument passed via ....
  * Dynamic help now does a much better job of rendering package
    DESCRIPTION metadata.
  * Rprof() gains an event argument and support for elapsed (real)
    time profiling on Unix (PR#18076).
  * filled.contour() gains a key.border argument.
  * tools::update_pkg_po() gets arguments pot_make and mo_make for
    _not_ re-making the corresponding files, and additionally a
    verbose argument.
  * Hexadecimal string colour specifications are now accepted in
    short form, so, for example, we can use "#123", which is
    equivalent to "#112233".
    Thanks to MikeFC for the original idea and Ella Kaye, Malcolm
    Barrett, George Stagg, and Hanne Oberman for the patch.
  * Plain-text help shows \var markup by angle brackets.
  * The new experimental primitive function declare() is intended to
    eventually allow information about R code to be communicated to
    the interpreter, compiler, and code analysis tools. The syntax
    for declarations is still being developed.
  * Functions psmirnov(), qsmirnov() and rsmirnov() in package stats
    have had argument two.sided renamed to alternative, to take into
    account that the permutation distributions of the one-sided
    statistics can be different in the case of ties.  Consequence of
    PR#18582.
  * sort() is now an implicit S4 generic in methods.
  * Formatting and printing, format(z), print(z), of complex vectors
    z no longer zap relatively small real or imaginary parts to zero,
    fixing PR#16752.  This is an API change, as it was documented
    previously to round real and imaginary parts together on purpose,
    producing nicer looking output.  As mentioned, e.g. in the PR,
    this change is compatible with many other "R-like" programming
    environments.
    We have simplified the internal code and now basically format the
    real and imaginary parts independently of each other.
  * New experimental functions Tailcall() and Exec() to support
    writing stack-space-efficient recursive functions.
  * Where characters are attempted to be plotted by pdf(),
    postscript() and xfig() which are not in the selected 8-bit
    character set (most often Latin-1) and the R session is using a
    UTF-8 locale, the warning messages will show the UTF-8 character
    rather than its bytes and one dot will be substituted per
    character rather than per byte.  (Platforms whose iconv() does
    transliteration silently plot the transliteration.)
    In a UTF-8 locale some transliterations are now done with a
    warning (e.g., dashes and Unicode minus to hyphen, ligatures are
    expanded, permille (‰) is replaced by o/oo), although the OS may
    have got there first.  These are warnings as they will continue
    to be replaced by dots in earlier versions of R.
  * The matrix multiplication functions crossprod() and tcrossprod()
    are now also primitive and S3 generic, as %*% had become in R
    4.3.0.
  * source() and example() have a new optional argument catch.aborts
    which allows continued evaluation of the R code after an error.
  * The non-Quartz tiff() devices allow additional types of
    compression if supported by the platform's libtiff library.
  * The list of base and recommended package names is now provided by
    tools::standard_package_names().
  * cairo_pdf() and cairo_ps() default to onefile = TRUE to closer
    match pdf() and postscript().
  * New option catch.script.errors provides a documented way to catch
    errors and then continue in non-interactive use.
  * L %||% R newly in base is an expressive idiom for the phrases
    if(!is.null(L)) L else R or if(is.null(L)) R else L.
  * The return value from warnings() now always inherits from
    "warnings" as documented, now also in the case of no warnings
    where it previously returned NULL.
  * as.complex("1i") now returns 0 + 1i instead of NA with a warning.
  * z &lt;- c(NA, 1i) now keeps the imaginary part Im(z[1]) == 0, no
    longer coercing to NA_complex_.  Similarly, cumsum(z) correctly
    sums real and imaginary parts separately, i.e., without
    "crosstalk" in case of NAs.
  * On Alpine Linux iconv() now maps "latin2", "latin-2", "latin9"
    and "latin-9" to encoding names the OS knows about
    (case-insensitively).
  * iconv(sub = "Unicode") now always zero-pads to four (hex) digits,
    rather than to 4 or 8.  (This seems to have become the convention
    once Unicode restricted the number of Unicode points to 2^21 - 1
    and so will never need more than 6 digits.)
  * NCOL(NULL) now returns 0 instead of 1, for consistency with
    cbind().
  * The information for the Euro glyph missing from the Adobe .afm
    files for the Courier, Helvetica and Times families has been
    copied from their URW equivalents - this will improve vertical
    centring in the pdf() and postscript() devices.
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.12.0.  The changes are almost entirely cosmetic.
  * The included LAPACK sources have been updated to version 3.12.0
    and some further double-complex routines added.
  * There are new font families for the 2014--5 URW 2.0 fonts (see
    ?pdf) which are included in recent versions of Ghostscript.
    These have font widths for most Greek glyphs and a few others
    which were missing from the original versions (whose font
    families remain available for reproducibility, although
    Ghostscript-based viewers will render using the 2.0 versions).
  * Improve the large-n efficiency of as.matrix(&lt;dist&gt;), thanks an R
    contributors effort, notably by Tim Taylor and Heather Turner,
    see PR#18660.
  * The default and numeric methods of all.equal() get a check.class
    option.
  * zapsmall() gets new optional arguments, function mFUN and min.d,
    for extra flexibility; fulfills a wish in PR#18199.  Also, it is
    now an implicit S4 generic in package methods.
  * The Rd filter for aspell() gains an ignore argument.
  * New generic function sort_by(), primarily useful for the
    data.frame method which can be used to sort rows of a data frame
    by one or more columns.
  * The icence headers for the RPC code in src/extra/xdr have been
    updated to use the GPL-compatible licence published by Oracle
    America in 2010.
  * New function pkg2HTML() in tools to create single-page HTML
    reference manuals for R packages.
  * The byte code evaluator now uses less C stack space for recursive
    calls to byte-compiled functions. It also makes more of an effort
    to avoid allocations for scalar return values.
  * New completion option backtick (disabled by default) allows
    non-syntactic completions to be wrapped in backquotes. This is
    currently only useful for Jupyter notebooks via the IRkernel
    package, and may cause problems for other backends.
  INSTALLATION:
  * The parser has been updated to work with bison 3.8.2, which is
    now used for the pre-generated parsers in gram.c, file.c, and
    gramRd.c. A few parser error messages have changed, which may
    affect code that relies on exact messages.
  INSTALLATION on a UNIX-ALIKE:
  * System valgrind headers are now required to use configure option
  - -with-valgrind-instrumentation with value 1 or 2.
  * configure will warn if it encounters a 32-bit build, as that is
    nowadays almost untested.
  * Environment variable R_SYSTEM_ABI is no longer used and so no
    longer recorded in etc/Renviron (it was not on Windows and was
    only ever used when preparing package tools).
  * If the libdeflate library and headers are available, libdeflate
    rather than libz is used to (de)compress R objects in lazy-load
    databases.  Typically tasks spend up to 5% of their time on such
    operations, although creating lazy-data databases is one of the
    exceptions.
    This can be suppressed if the library is available by the
    configure option --without-libdeflate-compression.
  * configure option --enable-lto=check has not worked reliably since
    2019 and has been removed.
  * The minimum autoconf requirement for a maintainer build has been
    increased to autoconf 2.71.
    It is intended to increase this to 2.72 for R 4.5.0: the
    distributed configure file was generated using 2.72.
  * The minimum version requirement for an external LAPACK has been
    reduced to 3.9.0.
  * No default C++ compiler is set if no C++17 compiler is detected:
    there is no longer an automatic fallback to C++14 or C++11.
    Compilers from the last five years should have sufficient
    support: for others macros CXX and CXXSTD can be set in file
    config.site to provide a fallback if needed.
    The Objective-C++ compiler now by default uses the standard
    selected by R for C++ (currently C++17) rather than the default
    standard for the C++ compiler (which on macOS is still C++98).
  INSTALLATION on macOS:
  * A new configure option --with-newAccelerate makes use of Apple's
    'new' BLAS / LAPACK interfaces in their Accelerate framework.
    Those interfaces are only available in macOS 13.3 or later, and
    building requires SDK 13.3 or later (from the Command Line Tools
    or Xcode 14.3 or later).
    By default the option uses new Accelerate for BLAS calls: to also
    use it for LAPACK use option --with-newAccelerate=lapack.  The
    later interfaces provide LAPACK 3.9.1 rather than 3.2.1: 3.9.1 is
    from 2021-04 and does not include the improved algorithms
    introduced in LAPACK 3.10.0 (including for BLAS calls).
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools44, an update of the Rtools43 toolchain.  It is
    based on GCC 13 and newer versions of MinGW-W64, binutils and
    libraries (targeting 64-bit Intel CPUs).  R-devel can no longer
    be built using Rtools43 without changes.
  * Rtools44 has experimental support for 64-bit ARM (aarch64) CPUs
    _via_ the LLVM 17 toolchain using lld, clang/flang-new and
    libc++.
  UTILITIES:
  * R CMD check notes when S4-style exports are used without
    declaring a strong dependence on package methods.
  * tools::checkRd() (used by R CMD check) detects more problems with
    \Sexpr-based dynamic content, including bad nesting of \Sexprs
    and invalid arguments.
  * tools::checkRd() now reports Rd titles and section names ending
    in a period; this is ignored by R CMD check unless environment
    variable _R_CHECK_RD_CHECKRD_MINLEVEL_ is set to -5 or smaller.
  * R CMD check now notes Rd files without an \alias, as long
    documented in 'Writing R Extensions' §1.3.1.  The check for a
    missing \description has been moved from tools::checkRd() to
    tools::checkRdContents().
  * R CMD check now visits inst/NEWS.Rd and OS-specific man
    subdirectories when checking Rd files.
  * tools::checkDocFiles() and tools::checkRdContents() now also
    check internal Rd files by default, but "specially" (ignoring
    missing documentation of arguments).
  * R CMD Rdiff gets option --useEx.
  * R CMD check now warns on non-portable uses of Fortran KIND such
    as INTEGER(KIND=4) and REAL(KIND=8).
    To see the failing lines set environment variable
    _R_CHECK_FORTRAN_KIND_DETAILS_ to a true value.
  * When checking Rd files, R CMD check now notes some of the "lost
    braces" that tools::checkRd() finds.  Typical problems are Rd
    macros missing the initial backslash (e.g., code{...}), in-text
    set notation (e.g., {1, 2}, where the braces need escaping), and
    \itemize lists with \describe-style entries of the form
    \item{label}{description}.
  * R CMD INSTALL (and hence check) will compile C++ code with
  - DR_NO_REMAP if environment variable _R_CXX_USE_NO_REMAP_ is set
    to a true value.  It is planned that this will in future become
    the default for compiling C++.
  * The new built-in Rd macro \dontdiff{} can be used to mark example
    code whose output should be ignored when comparing check output
    to reference output (tests/Examples/&lt;pkg&gt;-Ex.Rout.save).  The
    \dontdiff tag, like \donttest, is _not_ shown on the rendered
    help page, so provides a clean alternative to ##
    IGNORE_RDIFF_(BEGIN|END) comments.
  * R CMD build when there is no NAMESPACE, now uses the recommended
    exportPattern("^[^.]"), instead of exporting everything.
  * R CMD check now warns about non-ASCII characters in the NAMESPACE
    file (in addition to R files). Such packages are not portable and
    may fail to install on some platforms.
  C-LEVEL FACILITIES:
  * Headers R_ext/Applic.h and R-ext/Linpack.h used to include
    R_ext/BLAS.h although this was undocumented and unneeded by their
    documented entry points.  They no longer do so.
  * New function R_missing(), factored out from do_missing(), used to
    fix PR#18579.
  * SEXP type S4SXP has been renamed to OBJSXP to support
    experimenting with alternative object systems.  The S4SXP value
    can still be used in C code but is now deprecated.  Based on
    contributions from the R Consortium's Object-Oriented Programming
    Working Group.
  * New function pow1p(x,y) for accurate (1+x)^y.
  * mkCharLenCE was incorrectly documented to take a size_t length
    but was implemented with int (and character strings in R are
    limited to 2^31 - 1 bytes).
  DEPRECATED AND DEFUNCT:
  * data() no longer handles zipped data from long-defunct (since R
    2.13.0) --use-zip-data installations.
  * The legacy graphics devices pictex() and xfig() are now
    deprecated.  They do not support recent graphics enhancements and
    their font handling is rudimentary. The intention is to retain
    them for historical interest as long as they remain somewhat
    functional.
  * Support for encoding = "MacRoman" has been removed from the pdf()
    and postscript() devices - this was a legacy encoding supporting
    classic macOS up to 2001 and no longer has universal libiconv
    support.
  * is.R() is deprecated as no other S dialect is known to be in use
    (and this could only identify historical dialects, not future
    ones).
    Further information on calls can be obtained by setting the
    environment variable _R_DEPRECATED_IS_R_ to error which turns the
    deprecation warning into an error and so by default gives a
    traceback.  (This is done by R CMD check --as-cran.)
  * UseMethod() no longer forwards local variables assigned in the
    generic function into method call environments before evaluating
    the method body. This makes method calls behave more like
    standard function calls and makes method code easier to analyze
    correctly.
  * The twelve as.data.frame.&lt;class&gt;() methods which were deprecated
    only via _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ and in R CMD
    check --as-cran are formally deprecated now in favour of calling
    as.data.frame() or as.data.frame.vector().  The deprecation
    "check" now works also when as.data.frame() is S4 generic thanks
    to Ivan Krylov.
  * The default method for the directional comparison operators &lt;, &gt;,
    &lt;=, and &gt;= now signals an error when one of the operands is a
    language object, i.e. a symbol or a call.
  * For terms.formula(), deprecate abb and neg.out arguments
    _formally_ in addition to just documenting it.
  BUG FIXES:
  * The methods package is more robust to not being attached to the
    search path.  More work needs to be done.
  * pairwise.t.test() misbehaved when subgroups had 0 DF for
    variance, even with pool.sd = TRUE.  (PR#18594 by Jack Berry).
  * Probability distribution functions [dpq]&lt;distrib&gt;(x, *), but also
    bessel[IKJY](x, .) now consistently preserve attributes(x) when
    length(x) == 0, e.g., for a 2 x 0 matrix, thanks to Karolis
    Koncevičius' report PR#18509.
  * Group "Summary" computations such as sum(1:3, 4, na.rm = 5, NA,
    7, na.rm = LL) now give an error instead of either 17 or NN for
    LL true or false, as proposed by Ivan Krylov on the R-devel
    mailing list.  (This also means it is now an error to specify
    na.rm more than once.)
  * as.complex(x) now returns complex(real = x, imaginary = 0) for
    _all_ numerical and logical x, notably also for NA or
    NA_integer_.
  * Directories are now omitted by file.copy(, recursive = FALSE) and
    in file.append() (PR#17337).
  * gsub() and sub() are now more robust to integer overflow when
    reporting errors caused by too large input strings (PR#18346).
  * Top-level handlers are now more robust to attempts to remove a
    handler whilst handlers are running (PR#18508).
  * The handling of Alt+F4 in dialogs created on Windows using
    GraphApp has been fixed (PR#13870).
  * density() more consistently computes grid values for the
    FFT-based convolution, following Robert Schlicht's analysis and
    proposal in PR#18337, correcting density values typically by a
    factor of about 0.999.  Argument old.coords = TRUE provides back
    compatibility.
  * palette.colors() gains a name argument that defaults to FALSE
    controlling whether the vector of colours that is returned has
    names (where possible).  PR#18529.
  * tools::xgettext() no longer extracts the (non-translatable) class
    names from warningCondition and errorCondition calls.
  * S3method(&lt;gen&gt;, &lt;class&gt;, &lt;func&gt;) in the NAMESPACE file now works
    (again) when &lt;func&gt; is visible from the namespace, e.g.,
    imported, or in base.
  * getParseData(f) now also works for a function defined in the
    first of several &lt;pkg&gt;/R/*.R source files, thanks to Kirill
    Müller's report and Duncan Murdoch's patch in PR#16756.
  * Rd \Sexpr macros with nested #ifdef conditionals were not
    processed.
  * A non-blocking connection with non-default encoding (such as a
    socket) now correctly returns from readLines() after new data has
    arrived also when its EOF had been reached previously.  Thanks to
    Peter Meilstrup's report on R-devel and Ivan Krylov's report and
    patch proposal in PR#18555.
  * tools::checkRdContents() failed to detect empty argument
    descriptions when they spanned multiple lines, including those
    generated by prompt().  These cases are now noted by R CMD check.
  * Plain-text help no longer outputs spurious colons in the
    arguments list (for multi-line \item labels in the Rd source).
  * kappa() and rcond() work correctly in more cases; kappa(., norm =
    "2") now warns that it computes the 1-norm with (default) exact =
    FALSE; prompted by Mikael Jagan's quite comprehensive PR#18543.
  * Rd skeletons generated by prompt() or promptData() now use a
    dummy title (so R CMD build works).  tools::checkRdContents() has
    been updated to detect such template leftovers, including from
    promptPackage().
  * When S4 method dispatch fails because no method was found, the
    error message now includes the signature argument names; thanks
    to Michael Chirico's proposal on the R-devel list.
  * withAutoprint({ .. }) now preserves srcrefs previously lost,
    thanks to Andrew Simmons' report plus fix in PR#18572.
  * transform.data.frame() no longer adjusts names; in particular,
    untransformed variables are kept as-is, including those with
    syntactically invalid names (PR#17890).
  * The keep.source option for Rd \Sexpr blocks is no longer ignored.
  * The formula methods for t.test() and wilcox.test() now catch when
    paired is passed, addressing PR#14359; use Pair(x1, x2) ~ 1 for a
    paired test.
  * The level reported in the browser prompt was often too large. It
    now shows the number of browser contexts on the stack.
  * For cbind() and rbind(), the optional deparse.level argument is
    now properly passed to methods, thanks to Mikael Jagan's PR#18579
    and comments there.
  * Some error and warning messages for large ('long vector')
    matrix(v, nr, nc) and dim(m) &lt;- d are now correct about sizes,
    using long long formatting, fixing PR#18612 (and more) reported
    by Mikael Jagan.
  * readChar(useBytes = TRUE) now terminates strings even when the
    underlying connection uses extra spaces in the input buffer.
    This fixes problems with extra garbage seen with gzip
    connections, PR#18605.
  * Named capture in PCRE regular expressions now works also with
    more than 127 named groups (PR#18588).
  * Datetime functions are now robust against long jumps when dealing
    with internal time zone changes.  This avoids confusing warnings
    about an invalid time zone, previously triggered by turning
    warnings into errors or handling them via tryCatch (PR#17966,
    PR#17780).
  * Datetime functions now restore even an empty TZ environment
    variable after internal time zone changes (PR#17724).  This makes
    results of datetime functions with this (typically unintentional)
    setting more predictable.
  * drop.terms(*) now drops response as by default, keep.response =
    FALSE, fixing PR#18564 thanks to Mikael Jagan.
  * dummy.coef(.) now also works for lm()-models with character
    categorical predictor variables rather than factor ones, fixing
    PR#18635 reported by Jinsong Zhao.
  * formals(f) &lt;- formals(f) now also works for a function w/o
    arguments and atomic _constant_ body(f).
  * Correct as.function(&lt;invalid list&gt;, .)'s error message.
  * removeSource() is yet more thorough in finding and removing
    "srcref" and the other source references from parsed R language
    chunks, fixing PR#18638 thanks to Andrew Simmons.
  * dgeom() is more accurate now, notably when its result is very
    small, fixing PR#18642 thanks to the proposal of Morten Welinder,
    also improving other instances where C level binom_raw(x, n, ..)
    has x == 0 or x== n.
  * warning() with options(warn = 1) has improved output for
    multi-line messages.
  * axis.Date() and axis.POSIXct() now respect the par("lab") setting
    for the number of pretty() intervals.
  * Comparisons for language objects (which are based on deparsing)
    are now more careful about using accurate deparsed results
    (PR#18676).
  * Plain-text help (Rd2txt) now correctly preserves blank lines
    following single-line \dontrun code.
  * &lt;POSIXlt&gt;[*] no longer sets wrong "balanced" attribute, fixing
    PR#18681 thanks to Mikael Jagan.
  * str(&lt;classed-call&gt;) now deparses the call as expected, fixing
    PR#18684, reported by Dave Slager.
  * In Rd examples, code following the closing brace of a \dontrun,
    \dontshow or \donttest tag on the same line is no longer skipped
    when R CMD check runs the examples.
  * as.data.frame(matrix(*, ncol=0)) now gets valid names() and
    colnames(); reported by Davis Vaughan on the R-devel list.
  * Internal Mathlib function stirlerr(n) is now almost fully
    (52-bit) accurate for all n &gt;= ~5.9 and more accurate also in the
    range 1 -- 5.9.  This entails small ("after 12th decimal")
    changes in density functions, e.g., dgamma() in _some_ regions of
    their support.  The fix was partly prompted by Morten Welinder's
    PR#18640.
  * Numbers like 9876543.2 are now considered non-integer by Mathlib
    internal R_nonint(), amending original fix of PR#15734.
  * Rd comment lines no longer cause broken paragraphs in the
    rendered PDF and plain-text help. In code blocks, pure comment
    lines (starting with %) no longer produce an empty line.
  * xtabs(Freq ~ .) now consistently defaults to na.action = na.pass,
    using na.rm = FALSE (added as an argument) when summing over Freq
    (PR#17770).
  * tools::testInstalledPackage() is no longer silent about failures
    from running examples or tests and its return code no longer
    ignores failures from checking vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1718366400">- CHANGES IN R 4.4.1:
  C-LEVEL FACILITIES:
  * Functions R_atof and R_strtod declared in header R_ext/Utils.h
    are now documented in 'Writing R Extensions' and so formally part
    of the API.
  * The non-API entry points Rf_setSVector, Rf_StringFalse,
    Rf_StringTrue and Rf_isBlankString have been added to those
    reported by R CMD check.
  * The new function Rf_allocLang is now available. This provides an
    alternative to the idiom of calling Rf_allocList followed by
    SET_TYPEOF.
  UTILITIES:
  * R CMD check now reports as warnings what gfortran calls 'Fortran
    2018 deleted features', all of which have long been marked as
    'obsolescent' and some of which were deleted in Fortran 2008 or
    earlier.  Fortran compilers are no longer required to support
    these.
  BUG FIXES:
  * as.numeric(), scan(), type.convert() and other places which use
    the internal C function R_strtod now require a _non-empty_ digit
    sequence in a decimal or binary exponent.  This aligns with the
    C/POSIX standard for strtod and with ?NumericConstants.
  * as.data.frame(m, make.names=NA) now works correctly for a matrix
    m with NA's in row names.
  * The error message from &lt;POSIXlt&gt;[["hour"]] and similar now
    mentions *[[, "hour"]], as wished for in PR#17409 and proposed by
    Michael Chirico.
  * qbinom() and potentially qpois(), qnbinom(), no longer sometimes
    fail accurate inversion (of pbinom(), etc), thanks to Christopher
    Chang's report and patch in PR#18711.
  * The internal help server on Windows can again serve requests sent
    in quick succession, fixing a regression in R 4.4.0.
  * debugcall(&lt;S3Generic&gt;()) now also works when a corresponding
    S4-generic version is in the methods cache (PR#18143).
  * Package tools' toTitleCase(ch0) now returns character(0) when ch0
    is of zero length; fixing PR#18724, reported by David Hugh Jones.
  * R CMD check is no longer broken (without a check result and no
    explanation in 00check.log) for a package which declares an
    invalid VignetteBuilder in DESCRIPTION but has no vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1730376000">- CHANGES IN R 4.4.2:
  C-LEVEL FACILITIES:
  * The S-compatibility macros F77_COM and F77_COMDECL defined in
    header R_ext/RS.h are deprecated and will be removed shortly.  We
    could find no record of their use.
  BUG FIXES:
  * Mathlib function lgammacor(x) no longer warns about underflow to
    zero for large x.
  * Text widths and heights were incorrectly reported by the Quartz
    device if the drawing context didn't exist yet (typically when
    drawing off-screen to a window that is yet to appear, see
    PR#18591).
  * The Quartz device could segfault in cases where paths with spaces
    are used in the new glyph drawing API.  Thanks to Tomek
    Gieorgijewski (PR#18758).
  * On macOS in R CRAN builds, it is again possible to read
    little-endian UTF-16 text with a BOM from a connection using
    encoding="UTF-16".  Users building R from source should avoid
    using the system libiconv in macOS 14.1 and later.
  * methods' internal .requirePackage() now re-enables primitive
    method dispatch when needed; thanks to Ivan Krylov for
    demystifying CRAN package check failures on the R-devel mailing
    list.</changelog>
</package>
<package pkgid="b01efa9cf580eec6d2a413a5de9536d7587c4424417c112ed887580e057c3ab527e9cdd963b738aa899534bf7a5ff9725c5489e32d2e9f270aae1df094e50667" name="R-core-packages" arch="i586">
  <version epoch="0" ver="4.4.2" rel="51.0.2.2.sr20241103"/>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1620302400">- To get in sync with d:l:R:autoCRAN the Matrix package's split
  in -devel was reversed.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339200">- improved spec file according to comments of dimstar in
  https://build.opensuse.org/request/show/892685</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339201">- CHANGES IN R 4.1.0:
  FUTURE DIRECTIONS:
  * It is planned that the 4.1.x series will be the last to support
    32-bit Windows, with production of binary packages for that
    series continuing until early 2023.
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Data set esoph in package datasets now provides the correct
    numbers of controls; previously it had the numbers of cases added
    to these.  (Reported by Alexander Fowler in PR#17964.)
  NEW FEATURES:
  * www.omegahat.net is no longer one of the repositories known by
    default to setRepositories().  (Nowadays it only provides source
    packages and is often unavailable.)
  * Function package_dependencies() (in package tools) can now use
    different dependency types for direct and recursive dependencies.
  * The checking of the size of tarball in R CMD check --as-cran
    &lt;pkg&gt; may be tweaked via the new environment variable
    _R_CHECK_CRAN_INCOMING_TARBALL_THRESHOLD_, as suggested in
    PR#17777 by Jan Gorecki.
  * Using c() to combine a factor with other factors now gives a
    factor, an ordered factor when combining ordered factors with
    identical levels.
  * apply() gains a simplify argument to allow disabling of
    simplification of results.
  * The format() method for class "ftable" gets a new option justify.
    (Suggested by Thomas Soeiro.)
  * New ...names() utility.  (Proposed by Neal Fultz in PR#17705.)
  * type.convert() now warns when its as.is argument is not
    specified, as the help file always said it _should_.  In that
    case, the default is changed to TRUE in line with its change in
    read.table() (related to stringsAsFactor) in R 4.0.0.
  * When printing list arrays, classed objects are now shown _via_
    their format() value if this is a short enough character string,
    or by giving the first elements of their class vector and their
    length.
  * capabilities() gets new entry "Rprof" which is TRUE when R has
    been configured with the equivalent of --enable-R-profiling (as
    it is by default).  (Related to Michael Orlitzky's report
    PR#17836.)
  * str(xS4) now also shows extraneous attributes of an S4 object
    xS4.
  * Rudimentary support for vi-style tags in rtags() and R CMD rtags
    has been added.  (Based on a patch from Neal Fultz in PR#17214.)
  * checkRdContents() is now exported from tools; it and also
    checkDocFiles() have a new option chkInternal allowing to check
    Rd files marked with keyword "internal" as well.  The latter can
    be activated for R CMD check via environment variable
    _R_CHECK_RD_INTERNAL_TOO_.
  * New functions numToBits() and numToInts() extend the raw
    conversion utilities to (double precision) numeric.
  * Functions URLencode() and URLdecode() in package utils now work
    on vectors of URIs.  (Based on patch from Bob Rudis submitted
    with PR#17873.)
  * path.expand() can expand ~user on most Unix-alikes even when
    readline is not in use.  It tries harder to expand ~, for example
    should environment variable HOME be unset.
  * For HTML help (both dynamic and static), Rd file links to help
    pages in external packages are now treated as references to
    topics rather than file names, and fall back to a file link only
    if the topic is not found in the target package. The earlier rule
    which prioritized file names over topics can be restored by
    setting the environment variable _R_HELP_LINKS_TO_TOPICS_ to a
    false value.
  * c() now removes NULL arguments before dispatching to methods,
    thus simplifying the implementation of c() methods, _but_ for
    back compatibility keeps NULL when it is the first argument.
    (From a report and patch proposal by Lionel Henry in PR#17900.)
  * Vectorize()'s result function's environment no longer keeps
    unneeded objects.
  * Function ...elt() now propagates visibility consistently with
    ..n.  (Thanks to Lionel Henry's PR#17905.)
  * capture.output() no longer uses non-standard evaluation to
    evaluate its arguments.  This makes evaluation of functions like
    parent.frame() more consistent.  (Thanks to Lionel Henry's
    PR#17907.)
  * packBits(bits, type="double") now works as inverse of
    numToBits().  (Thanks to Bill Dunlap's proposal in PR#17914.)
  * curlGetHeaders() has two new arguments, timeout to specify the
    timeout for that call (overriding getOption("timeout")) and TLS
    to specify the minimum TLS protocol version to be used for
    https:// URIs (_inter alia_ providing a means to check for sites
    using deprecated TLS versions 1.0 and 1.1).
  * For nls(), an optional constant scaleOffset may be added to the
    denominator of the relative offset convergence test for cases
    where the fit of a model is expected to be exact, thanks to a
    proposal by John Nash.  nls(*, trace=TRUE) now also shows the
    convergence criterion.
  * Numeric differentiation _via_ numericDeriv() gets new optional
    arguments eps and central, the latter for taking central divided
    differences.  The latter can be activated for nls() via
    nls.control(nDcentral = TRUE).
  * nls() now passes the trace and control arguments to getInitial(),
    notably for all self-starting models, so these can also be fit in
    zero-noise situations via a scaleOffset.  For this reason, the
    initial function of a selfStart model must now have ... in its
    argument list.
  * bquote(splice = TRUE) can now splice expression vectors with
    attributes: this makes it possible to splice the result of
    parse(keep.source = TRUE).  (Report and patch provided by Lionel
    Henry in PR#17869.)
  * textConnection() gets an optional name argument.
  * get(), exists(), and get0() now signal an error if the first
    argument has length greater than 1.  Previously additional
    elements were silently ignored.  (Suggested by Antoine Fabri on
    R-devel.)
  * R now provides a shorthand notation for creating functions, e.g.
    \(x) x + 1 is parsed as function(x) x + 1.
  * R now provides a simple native forward pipe syntax |&gt;.  The
    simple form of the forward pipe inserts the left-hand side as the
    first argument in the right-hand side call.  The pipe
    implementation as a syntax transformation was motivated by
    suggestions from Jim Hester and Lionel Henry.
  * all.equal(f, g) for functions now by default also compares their
    environment(.)s, notably via new all.equal method for class
    function.  Comparison of nls() fits, e.g., may now need
    all.equal(m1, m2, check.environment = FALSE).
  * .libPaths() gets a new option include.site, allowing to _not_
    include the site library.  (Thanks to Dario Strbenac's suggestion
    and Gabe Becker's PR#18016.)
  * Lithuanian translations are now available.  (Thanks to Rimantas
    Zakauskas.)
  * names() now works for DOTSXP objects.  On the other hand, in
    R-lang, the R language manual, we now warn against relying on the
    structure or even existence of such dot-dot-dot objects.
  * all.equal() no longer gives an error on DOTSXP objects.
  * capabilities("cairo") now applies only to the file-based devices
    as it is now possible (if very unusual) to build R with Cairo
    support for those but not for X11().
  * There is optional support for tracing the progress of
    loadNamespace() - see its help.
  * (Not Windows.)  l10n_info() reports an additional element, the
    name of the encoding as reported by the OS (which may differ from
    the encoding part (if any) of the result from
    Sys.getlocale("LC_CTYPE").
  * New function gregexec() which generalizes regexec() to find _all_
    disjoint matches and well as all substrings corresponding to
    parenthesized subexpressions of the given regular expression.
    (Contributed by Brodie Gaslam.)
  * New function charClass() in package utils to query the
    wide-character classification functions in use (such as
    iswprint).
  * The names of quantile()'s result no longer depend on the global
    getOption("digits"), but quantile() gets a new optional argument
    digits = 7 instead.
  * grep(), sub(), regexp and variants work considerably faster for
    long factors with few levels.  (Thanks to Michael Chirico's
    PR#18063.)
  * Provide grouping of x11() graphics windows within a window
    manager such as Gnome or Unity; thanks to a patch by Ivan Krylov
    posted to R-devel.
  * The split() method for class data.frame now allows the f argument
    to be specified as a formula.
  * sprintf now warns on arguments unused by the format string.
  * New palettes "Rocket" and "Mako" for hcl.colors() (approximating
    palettes of the same name from the 'viridisLite' package).
    Contributed by Achim Zeileis.
  * The base environment and its namespace are now locked (so one can
    no longer add bindings to these or remove from these).
  * Rterm handling of multi-byte characters has been improved,
    allowing use of such characters when supported by the current
    locale.
  * Rterm now accepts ALT+ +xxxxxxxx sequences to enter Unicode
    characters as hex digits.
  * Environment variable LC_ALL on Windows now takes precedence over
    LC_CTYPE and variables for other supported categories, matching
    the POSIX behaviour.
  * duplicated() and anyDuplicated() are now optimized for integer
    and real vectors that are known to be sorted via the ALTREP
    framework. Contributed by Gabriel Becker via PR#17993.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 14
    and so packages that provide graphics devices should be
    reinstalled.
  * Graphics devices should now specify deviceVersion to indicate
    what version of the graphics engine they support.
  * Graphics devices can now specify deviceClip.  If TRUE, the
    graphics engine will never perform any clipping of output itself.
    The clipping that the graphics engine does perform (for both
    canClip = TRUE and canClip = FALSE) has been improved to avoid
    producing unnecessary artifacts in clipped output.
  * The grid package now allows gpar(fill) to be a linearGradient(),
    a radialGradient(), or a pattern().  The viewport(clip) can now
    also be a grob, which defines a clipping path, and there is a new
    viewport(mask) that can also be a grob, which defines a mask.
    These new features are only supported so far on the Cairo-based
    graphics devices and on the pdf() device.
  * (Not Windows.)  A warning is given when a Cairo-based type is
    specified for a png(), jpeg(), tiff() or bmp() device but Cairo
    is unsupported (so type = "Xlib" is tried instead).
  * grSoftVersion() now reports the versions of FreeType and
    FontConfig if they are used directly (not _via_ Pango), as is
    most commonly done on macOS.
  C-LEVEL FACILITIES:
  * The _standalone_ libRmath math library and R's C API now provide
    log1pexp() again as documented, and gain log1mexp().
  INSTALLATION on a UNIX-ALIKE:
  * configure checks for a program pkgconf if program pkg-config is
    not found.  These are now only looked for on the path (like
    almost all other programs) so if needed specify a full path to
    the command in PKG_CONFIG, for example in file config.site.
  * C99 function iswblank is required - it was last seen missing ca
    2003 so the workaround has been removed.
  * There are new configure options --with-internal-iswxxxxx,
  - -with-internal-towlower and --with-internal-wcwidth which allows
    the system functions for wide-character classification,
    case-switching and width (wcwidth and wcswidth) to be replaced by
    internal ones.  The first has long been used on macOS, AIX (and
    Windows) but this enables it to be unselected there and selected
    for other platforms (it is the new default on Solaris).  The
    second is new in this version of R and is selected by default on
    macOS and Solaris.  The third has long been the default and
    remains so as it contains customizations for East Asian
    languages.
    System versions of these functions are often minimally
    implemented (sometimes only for ASCII characters) and may not
    cover the full range of Unicode points: for example Solaris (and
    Windows) only cover the Basic Multilingual Plane.
  * Cairo installations without X11 are more likely to be detected by
    configure, when the file-based Cairo graphics devices will be
    available but not X11(type = "cairo").
  * There is a new configure option --with-static-cairo which is the
    default on macOS.  This should be used when only static cairo
    (and where relevant, Pango) libraries are available.
  * Cairo-based graphics devices on platforms without Pango but with
    FreeType/FontConfig will make use of the latter for font
    selection.
  LINK-TIME OPTIMIZATION on a UNIX-ALIKE:
  * Configuring with flag --enable-lto=R now also uses LTO when
    installing the recommended packages.
  * R CMD INSTALL and R CMD SHLIB have a new flag --use-LTO to use
    LTO when compiling code, for use with R configured with
  - -enable-lto=R.  For R configured with --enable-lto, they have
    the new flag --no-use-LTO.
    Packages can opt in or out of LTO compilation _via_ a UseLTO
    field in the DESCRIPTION file.  (As usual this can be overridden
    by the command-line flags.)
  BUILDING R on Windows:
  * for GCC &gt;= 8, FC_LEN_T is defined in config.h and hence character
    lengths are passed from C to Fortran in _inter alia_ BLAS and
    LAPACK calls.
  * There is a new text file src/gnuwin32/README.compilation, which
    outlines how C/Fortran code compilation is organized and
    documents new features:
  * R can be built with Link-Time Optimization with a suitable
    compiler - doing so with GCC 9.2 showed several
    inconsistencies which have been corrected.
  * There is support for cross-compiling the C and Fortran code
    in R and standard packages on suitable (Linux) platforms.
    This is mainly intended to allow developers to test later
    versions of compilers - for example using GCC 9.2 or 10.x has
    detected issues that GCC 8.3 in Rtools40 does not.
  * There is experimental support for cross-building R packages
    with C, C++ and/or Fortran code.
  * The R installer can now be optionally built to support a single
    architecture (only 64-bit or only 32-bit).
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++14 where
    available (which it is on all currently checked platforms): if
    not (as before) C++11 is used if available otherwise C++ is not
    supported.
    Packages which specify C++11 will still be installed using C++11.
    C++14 compilers may give deprecation warnings, most often for
    std::random_shuffle (deprecated in C++14 and removed in C++17).
    Either specify C++11 (see 'Writing R Extensions') or modernize
    the code and if needed specify C++14.  The latter has been
    supported since R 3.4.0 so the package's DESCRIPTION would need
    to include something like
    Depends: R (&gt;= 3.4)
  PACKAGE INSTALLATION on Windows:
  * R CMD INSTALL and R CMD SHLIB make use of their flag --use-LTO
    when the LTO_OPT make macro is set in file etc/${R_ARCH}/Makeconf
    or in a personal/site Makevars file.  (For details see 'Writing R
    Extensions' SS4.5.)
    This provides a valuable check on code consistency.  It does work
    with GCC 8.3 as in Rtools40, but that does not detect everything
    the CRAN checks with current GCC do.
  PACKAGE INSTALLATION on macOS:
  * The default personal library directory on builds with
  - -enable-aqua (including CRAN builds) now differs by CPU type,
    one of
    ~/Library/R/x86_64/x.y/library
    ~/Library/R/arm64/x.y/library
    This uses the CPU type R (and hence the packages) were built for,
    so when a x86_64 build of R is run under Rosetta emulation on an
    arm64 Mac, the first is used.
  UTILITIES:
  * R CMD check can now scan package functions for bogus return
    statements, which were possibly intended as return() calls (wish
    of PR#17180, patch by Sebastian Meyer). This check can be
    activated via the new environment variable
    _R_CHECK_BOGUS_RETURN_, true for --as-cran.
  * R CMD build omits tarballs and binaries of previous builds from
    the top-level package directory.  (PR#17828, patch by Sebastian
    Meyer.)
  * R CMD check now runs sanity checks on the use of LazyData, for
    example that a data directory is present and that
    LazyDataCompression is not specified without LazyData and has a
    documented value.  For packages with large LazyData databases
    without specifying LazyDataCompression, there is a reference to
    the code given in 'Writing R Extensions' SS1.1.6 to test the
    choice of compression (as in all the CRAN packages tested a
    non-default method was preferred).
  * R CMD build removes LazyData and LazyDataCompression fields from
    the DESCRIPTION file of packages without a data directory.
  ENCODING-RELATED CHANGES:
  * The parser now treats \Unnnnnnnn escapes larger than the upper
    limit for Unicode points (\U10FFFF) as an error as they cannot be
    represented by valid UTF-8.
    Where such escapes are used for outputting non-printable
    (including unassigned) characters, 6 hex digits are used (rather
    than 8 with leading zeros).  For clarity, braces are used, for
    example \U{0effff}.
  * The parser now looks for non-ASCII spaces on Solaris (as
    previously on most other OSes).
  * There are warnings (including from the parser) on the use of
    unpaired surrogate Unicode points such as \uD834.  (These cannot
    be converted to valid UTF-8.)
  * Functions nchar(), tolower(), toupper() and chartr() and those
    using regular expressions have more support for inputs with a
    marked Latin-1 encoding.
  * The character-classification functions used (by default) to
    replace the system iswxxxxx functions on Windows, macOS and AIX
    have been updated to Unicode 13.0.0.
    The character-width tables have been updated to include new
    assignments in Unicode 13.0.0.
  * The code for evaluating default (extended) regular expressions
    now uses the same character-classification functions as the rest
    of R (previously they differed on Windows, macOS and AIX).
  * There is a build-time option to replace the system's
    wide-character wctrans C function by tables shipped with R: use
    configure option --with-internal-towlower or (on Windows)
  - DUSE_RI18N_CASE in CFLAGS when building R.  This may be needed
    to allow tolower() and toupper() to work with Unicode characters
    beyond the Basic Multilingual Plane where not supported by system
    functions (e.g. on Solaris where it is the new default).
  * R is more careful when truncating UTF-8 and other multi-byte
    strings that are too long to be printed, passed to the system or
    libraries or placed into an internal buffer.  Truncation will no
    longer produce incomplete multibyte characters.
  DEPRECATED AND DEFUNCT:
  * Function plclust() from the package stats and
    package.dependencies(), pkgDepends(), getDepList(),
    installFoundDepends(), and vignetteDepends() from package tools
    are defunct.
  * Defunct functions checkNEWS() and readNEWS() from package tools
    and CRAN.packages() from utils have been removed.
  * R CMD config CXXCPP is defunct (it was deprecated in R 3.6.2).
  * parallel::detectCores() drops support for Irix (retired in 2013).
  * The LINPACK argument to chol.default(), chol2inv(),
    solve.default() and svd() has been defunct since R 3.1.0.  It was
    silently ignored up to R 4.0.3 but now gives an error.
  * Subsetting/indexing, such as ddd[*] or ddd$x on a DOTSXP
    (dot-dot-dot) object ddd has been disabled; it worked by accident
    only and was undocumented.
  BUG FIXES:
  * Many more C-level allocations (mainly by malloc and strdup) are
    checked for success with suitable alternative actions.
  * Bug fix for replayPlot(); this was turning off graphics engine
    display list recording if a recorded plot was replayed in the
    same session.  The impact of the bug became visible if resize the
    device after replay OR if attempted another savePlot() after
    replay (empty display list means empty screen on resize or empty
    saved plot).
  * R CMD check etc now warn when a package exports non-existing S4
    classes or methods, also in case of no "methods" presence.
    (Reported by Alex Bertram; reproducible example and patch by
    Sebastian Meyer in PR#16662.)
  * boxplot() now also accepts calls for labels such as ylab, the
    same as plot().  (Reported by Marius Hofert.)
  * The help page for xtabs() now correctly states that addNA is
    setting na.action = na.pass among others.  (Reported as PR#17770
    by Thomas Soeiro.)
  * The R CMD check &lt;pkg&gt; gives a longer and more comprehensible
    message when DESCRIPTION misses dependencies, e.g., in Imports:.
    (Thanks to the contributors of PR#17179.)
  * update.default() now calls the generic update() on the formula to
    work correctly for models with extended formulas.  (As reported
    and suggested by Neal Fultz in PR#17865.)
  * The horizontal position of leaves in a dendrogram is now correct
    also with center = FALSE.  (PR#14938, patch from Sebastian
    Meyer.)
  * all.equal.POSIXt() no longer warns about and subsequently ignores
    inconsistent "tzone" attributes, but describes the difference in
    its return value (PR#17277).  This check can be disabled _via_
    the new argument check.tzone = FALSE as suggested by Sebastian
    Meyer.
  * as.POSIXct() now populates the "tzone" attribute from its tz
    argument when x is a logical vector consisting entirely of NA
    values.
  * x[[2^31]] &lt;- v now works.  (Thanks to the report and patch by
    Suharto Anggono in PR#17330.)
  * In log-scale graphics, axis() ticks and label positions are now
    computed more carefully and symmetrically in their range,
    typically providing _more_ ticks, fulfilling wishes in PR#17936.
    The change really corresponds to an improved axisTicks() (package
    grDevices), potentially influencing grid and lattice, for
    example.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now correct to at
    least five digits where it was catastrophically wrong,
    previously.
  * sum(df) and similar "Summary"- and "Math"-group member functions
    now work for data frames df with logical columns, notably also of
    zero rows.  (Reported to R-devel by Martin "b706".)
  * unsplit() had trouble with tibbles due to unsound use of rep(NA,
    len)-indexing, which should use NA_integer_ (Reported to R-devel
    by Mario Annau.)
  * pnorm(x, log.p = TRUE) underflows to -Inf slightly later.
  * show(&lt;hidden S4 generic&gt;) prints better and without quotes for
    non-hidden S4 generics.
  * read.table() and relatives treated an "NA" column name as missing
    when check.names = FALSE PR#18007.
  * Parsing strings containing UTF-16 surrogate pairs such as
    "\uD834\uDD1E" works better on some (uncommon) platforms.
    sprintf("%X", utf8ToInt("\uD834\uDD1E")) should now give "1D11E"
    on all platforms.
  * identical(x,y) is no longer true for differing DOTSXP objects,
    fixing PR#18032.
  * str() now works correctly for DOTSXP and related exotics, even
    when these are doomed.
    Additionally, it no longer fails for lists with a class and
    "irregular" method definitions such that e.g. lapply(*) will
    necessarily fail, as currently for different igraph objects.
  * Too long lines in environment files (e.g. Renviron) no longer
    crash R. This limit has been increased to 100,000 bytes.
    (PR#18001.)
  * There is a further workaround for FreeType giving incorrect
    italic font faces with cairo-based graphics devices on macOS.
  * add_datalist(*, force = TRUE) (from package tools) now actually
    updates an existing data/datalist file for new content.  (Thanks
    to a report and patch by Sebastian Meyer in PR#18048.)
  * cut.Date() and cut.POSIXt() could produce an empty last interval
    for breaks = "months" or breaks = "years".  (Reported as PR#18053
    by Christopher Carbone.)
  * Detection of the encoding of 'regular' macOS locales such as
    en_US (which is UTF-8) had been broken by a macOS change:
    fortunately these are now rarely used with en_US.UTF-8 being
    preferred.
  * sub() and gsub(pattern, repl, x, *) now keep attributes of x such
    as names() also when pattern is NA (PR#18079).
  * Time differences ("difftime" objects) get a replacement and a
    rep() method to keep "units" consistent.  (Thanks to a report and
    patch by Nicolas Bennett in PR#18066.)
  * The \RdOpts macro, setting defaults for \Sexpr options in an Rd
    file, had been ineffective since R 2.12.0: it now works again.
    (Thanks to a report and patch by Sebastian Meyer in PR#18073.)
  * mclapply and pvec no longer accidentally terminate parallel
    processes started before by mcparallel or related calls in
    package parallel (PR#18078).
  * grep and other functions for evaluating (extended) regular
    expressions handle in Unicode also strings not explicitly flagged
    UTF-8, but flagged native when running in UTF-8 locale.
  * Fixed a crash in fifo implementation on Windows (PR#18031).
  * Binary mode in fifo on Windows is now properly detected from
    argument open (PR#15600, PR#18031).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1622808000">- The line %{__install} -m 755 -d %{_infodir}
  no longer works in TW or Factory.
  But without that line it works everywhere. So this instruction
  was commented out of the spec file.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1628596800">- CHANGES IN R 4.1.1:
  NEW FEATURES:
  * require(pkg, quietly = TRUE) is quieter and in particular does
    not warn if the package is not found.
  DEPRECATED AND DEFUNCT:
  * Use of ftp:// URIs should be regarded as deprecated, with
    on-going support confined to method = "libcurl" and not routinely
    tested.  (Nowadays no major browser supports them.)
  * The non-default method = "internal" is deprecated for http:// and
    ftp:// URIs for both download.file and url.
  * On Windows, method = "wininet" is deprecated for http://,
    https:// and ftp:// URIs for both download.file and url.  (A
    warning is only given for ftp://.)
    For ftp:// URIs the default method is now "libcurl" if available
    (which it is on CRAN builds).
    method = "wininet" remains the default for http:// and https://
    URIs but if libcurl is available, using method = "libcurl" is
    preferred.
  INSTALLATION:
  * make check now works also without a LaTeX installation.  (Thanks
    to Sebastian Meyer's PR#18103.)
  BUG FIXES:
  * make check-devel works again in an R build configured with
  - -without-recommended-packages.
  * qnbinom(p, size, mu) for large size/mu is correct now in a range
    of cases (PR#18095); similarly for the (size, prob)
    parametrization of the negative binomial.  Also qpois() and
    qbinom() are better and or faster for extreme cases.  The
    underlying C code has been modularized and is common to all four
    cases of discrete distributions.
  * gap.axis is now part of the axis() arguments which are passed
    from bxp(), and hence boxplot().  (Thanks to Martin Smith's
    report and suggestions in PR#18109.)
  * .First and .Last can again be set from the site profile.
  * seq.int(from, to, *) and seq.default(..) now work better in large
    range cases where from-to is infinite where the two boundaries
    are finite.
  * all.equal(x,y) now returns TRUE correctly also when several
    entries of abs(x) and abs(y) are close to .Machine$double.xmax,
    the largest finite numeric.
  * model.frame() now clears the object bit when removing the class
    attribute of a value via na.action (PR#18100).
  * charClass() now works with multi-character strings on Windows
    (PR#18104, fixed by Bill Dunlap).
  * encodeString() on Solaris now works again in Latin-1 encoding on
    characters represented differently in UTF-8.  Support for
    surrogate pairs on Solaris has been improved.
  * file.show() on Windows now works with non-ASCII path names
    representable in the current native encoding (PR#18132).
  * Embedded R on Windows can now find R home directory via the
    registry even when installed only for the current user
    (PR#18135).
  * pretty(x) with finite x now returns finite values also in the
    case where the extreme x values are close in size to the maximal
    representable number .Machine$double.xmax.
    Also, it's been tweaked for very small ranges and when a boundary
    is close (or equal) to zero; e.g., pretty(c(0,1e-317)) no longer
    has negative numbers, currently still warning about a very small
    range, and pretty(2^-(1024 - 2^-1/(c(24,10)))) is more accurate.
  * The error message for not finding vignette files when weaving has
    correct file sizes now. (Thanks to Sebastian Meyer's PR#18154.)
  * dnbinom(20, &lt;large&gt;, 1) now correctly gives 0, and similar cases
    are more accurate with underflow precaution.  (Reported by Francisco Vera Alcivar in PR#18072.)</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635163200">- repaired https://bugzilla.suse.com/show_bug.cgi?id=1191380
  (rpmacros now go to rpmmacrodir)
- minor clean-ups in spec file</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635768000">- CHANGES IN R 4.1.2:
  C-LEVEL FACILITIES:
  * The workaround in headers R.h and Rmath.h (using namespace std;)
    for the Oracle Developer Studio compiler is no longer needed now
    C++11 is required so has been removed.  A couple more usages of
    log() (which should have been std::log()) with an int argument
    are reported on Solaris.
  * The undocumented limit of 4095 bytes on messages from the
    S-compatibility macros PROBLEM and MESSAGE is now documented and
    longer messages will be silently truncated rather than
    potentially causing segfaults.
  * If the R_NO_SEGV_HANDLER environment variable is non-empty, the
    signal handler for SEGV/ILL/BUS signals (which offers recovery
    user interface) is not set. This allows more reliable debugging
    of crashes that involve the console.
  DEPRECATED AND DEFUNCT:
  * The legacy S-compatibility macros PROBLEM, MESSAGE, ERROR, WARN,
    WARNING, RECOVER, ... are deprecated and will be hidden in R
    4.2.0. R's native interface of Rf_error and Rf_warning has long
    been preferred.
  BUG FIXES:
  * .mapply(F, dots, .) no longer segfaults when dots is not a list
    and uses match.fun(F) as always documented; reported by Andrew
    Simmons in PR#18164.
  * hist(&lt;Date&gt;, ...) and hist(&lt;POSIXt&gt;, ...)  no longer pass
    arguments for rect() (such as col and density) to axis().
    (Thanks to Sebastian Meyer's PR#18171.)
  * \Sexpr{ch} now preserves Encoding(ch). (Thanks to report and
    patch by Jeroen Ooms in PR#18152.)
  * Setting the RNG to "Marsaglia-Multicarry" e.g., by RNGkind(), now
    warns in more places, thanks to Andr'e Gillibert's report and
    patch in PR#18168.
  * gray(numeric(), alpha=1/2) no longer segfaults, fixing PR#18183,
    reported by Till Krenz.
  * Fixed dnbinom(x, size=&lt;very_small&gt;, .., log=TRUE) regression,
    reported by Martin Morgan.
  * as.Date.POSIXlt(x) now keeps names(x), thanks to Davis Vaughan's
    report and patch in PR#18188.
  * model.response() now strips an "AsIs" class typically, thanks to
    Duncan Murdoch's report and other discussants in PR#18190.
  * try() is considerably faster in case of an error and long call,
    as e.g., from some do.call().  Thanks to Alexander Kaever's
    suggestion posted to R-devel.
  * qqline(y = &lt;object&gt;) such as y=I(.), now works, see also
    PR#18190.
  * Non-integer mgp par() settings are now handled correctly in
    axis() and mtext(), thanks to Mikael Jagan and Duncan Murdoch's
    report and suggestion in PR#18194.
  * formatC(x) returns length zero character() now, rather than ""
    when x is of length zero, as documented, thanks to Davis
    Vaughan's post to R-devel.
  * removeSource(fn) now retains (other) attributes(fn).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1647000000">- CHANGES IN R 4.1.3:
  NEW FEATURES:
  * The default version of Bioconductor has been changed to 3.14.
    (This is used by setRepositories and the menus in GUIs.)
  UTILITIES:
  * R CMD check --as-cran has a workaround for a bug in versions of
    file up to at least 5.41 which mis-identify DBF files last
    changed in 2022 as executables.
  C-LEVEL FACILITIES:
  * The legacy S-compatibility macros SINGLE_* in R_ext/Constants.h
    (included by R.h) are deprecated and will be removed in R 4.2.0.
  BUG FIXES:
  * Initialization of self-starting nls() models with initialization
    functions following the pre-R-4.1.0 API (without the ...
    argument) works again for now, with a deprecation warning.
  * Fixed quoting of ~autodetect~ in Java setting defaults to avoid
    inadvertent user lookup due to leading ~, reported in PR#18231 by
    Harold Gutch.
  * substr(., start, stop) &lt;- v now treats _negative_ stop values
    correctly.  Reported with a patch in PR#18228 by Brodie Gaslam.
  * Subscripting an array x without dimnames by a
    length(dim(x))-column character matrix gave "random" non-sense,
    now an error; reported in PR#18244 by Mikael Jagan.
  * ...names() now matches names(list(...)) closely, fixing PR#18247.
  * all.equal(*, scale = s) now works as intended when length(s) &gt; 1,
    partly thanks to Michael Chirico's PR#18272.
  * print(x) for long vectors x now also works for named atomic
    vectors or lists and prints the correct number when reaching the
    getOption("max.print") limit; partly thanks to a report and
    proposal by Hugh Parsonage to the R-devel list.
  * all.equal(&lt;selfStart&gt;, *) no longer signals a deprecation
    warning.
  * reformulate(*, response=r) gives a helpful error message now when
    length(r) &gt; 1, thanks to Bill Dunlap's PR#18281.
  * Modifying globalCallingHandlers inside withCallingHandlers() now
    works or fails correctly, thanks to Henrik Bengtsson's PR#18257.
  * hist(&lt;Date&gt;, breaks = "days") and hist(&lt;POSIXt&gt;, breaks = "secs")
    no longer fail for inputs of length 1.
  * qbeta(.001, .9, .009) and similar cases now converge correctly
    thanks to Ben Bolker's report in PR#17746.
  * window(x, start, end) no longer wrongly signals "'start' cannot
    be after 'end'", fixing PR#17527 and PR#18291.
  * data() now checks that its (rarely used) list argument is a
    character vector - a couple of packages passed other types and
    gave incorrect results.
  * which() now checks its arr.ind argument is TRUE rather coercing
    to logical and taking the first element - which gave incorrect
    results in package code.
  * model.weights() and model.offset() more carefully extract their
    model components, thanks to Ben Bolker and Tim Taylor's R-devel
    post.
  * list.files(recursive = TRUE) now shows all broken symlinks
    (previously, some of them may have been omitted, PR#18296).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1650628800">- CHANGES IN R 4.2.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * The formula method of aggregate() now matches the generic in
    naming its first argument x (resolving PR#18299 by Thomas
    Soeiro).
    This means that calling aggregate() with a formula as a named
    first argument requires name formula in earlier versions of R and
    name x now, so portable code should not name the argument (code
    in many packages did).
  * Calling &amp;&amp; or || with either argument of length greater than one
    now gives a warning (which it is intended will become an error).
  * Calling if() or while() with a condition of length greater than
    one gives an error rather than a warning.  Consequently,
    environment variable _R_CHECK_LENGTH_1_CONDITION_ no longer has
    any effect.
  * Windows users should consult the WINDOWS section below for some
    profound changes including
  * Support for 32-bit builds has been dropped.
  * UTF-8 locales are used where available.
  * The default locations for the R installation and personal
    library folder have been changed.
    Thanks to Tomas Kalibera for months of work on the Windows port
    for this release.
  NEW FEATURES:
  * matrix(x, n, m) now warns in more cases where length(x) differs
    from n * m, as suggested by Abby Spurdle and Wolfgang Huber in
    Feb 2021 on the R-devel mailing list.
    This warning can be turned into an error by setting environment
    variable _R_CHECK_MATRIX_DATA_ to TRUE: R CMD check --as-cran
    does so unless it is already set.
  * Function file_test() in package utils gains tests for symlinks,
    readability and writability.
  * capabilities("libxml") is now false.
    The description of capabilities("http/ftp") now reflects that it
    refers to the default method, no longer the internal one.
  * simplify2array() gains an except argument for controlling the
    exceptions used by sapply().
  * Environment variables R_LIBS_USER and R_LIBS_SITE are both now
    set to the R system default if unset or empty, and can be set to
    NULL to indicate an empty list of user or site library
    directories.
  * The warning for axis()(-like) calls in cases of relatively small
    ranges (typically in log-scale situations) is slightly improved
    _and_ suppressed from explicit calls to .axisPars() as has always
    been the intention.
  * The contrasts setter function `contrasts&lt;-` gains an explicit
    default how.many = NULL rather than just using missing(how.many).
  * grid.pretty() gains a new optional argument n = 5.
  * There is a new function .pretty() with option bounds as a
    technical-utility version of pretty().  It and pretty() gain a
    new argument f.min with a better than back-compatible default.
  * Function grDevices::axisTicks() and related functions such as
    graphics::axis() work better, notably for the log scale; partly
    because of the pretty() improvements, but also because care is
    taken e.g., when ylim is finite but diff(ylim) is infinite.
  * nclass.FD() gains a digits option.
  * The R Mathlib internal C function bd0() (called indirectly from a
    dozen probability density and distribution functions such as
    dpois(), dbinom(), dgamma(), pgamma() _etc_) has been
    complemented by a more sophisticated and (mostly) more accurate C
    function ebd0(), currently called only by internal dpois_raw()
    improving accuracy for R level dpois() and potentially others
    calling it such as dnbinom(), dgamma() or pgamma().  (Thanks to
    Morten Welinder's PR#15628.)
  * write.ftable() gains sep = " " argument as suggested by Thomas
    Soeiro.
  * The names of the locale categories supported by R's
    Sys.getlocale() and Sys.setlocale() are now provided by variable
    .LC.categories in the base namespace.
  * The Date and POSIXt methods for hist() and the histogram method
    for plot() now also use the new default col = "lightgray" in
    consistency with the corresponding change to hist()'s default for
    R 4.0.0.
  * hist.default() gains new fuzz argument, and the histogram plot
    method no longer uses fractional axis ticks when displaying
    counts ("Frequency").
  * mapply() and hence Map() now also obey the "max-or-0-if-any"
    recycling rule, such that, e.g., Map(`+`, 1:3, 1[0]) is valid
    now.
  * as.character(&lt;obj&gt;) for "hexmode" or "octmode" objects now
    fulfils the important basic rule as.character(x)[j] ===
    as.character(x[j]).
  * The set utility functions, notably intersect() have been tweaked
    to be more consistent and symmetric in their two set arguments,
    also preserving a common mode.
  * substr(ch, start,end) &lt;- new now e.g., preserves names(ch); ditto
    for substring(), thanks to a patch from Brodie Gaslam.
  * plot(&lt;lm&gt;) gains a extend.ylim.f argument, in partial response to
    PR#15285; further PR#17784 is fixed thanks to several
    contributors and a patch by Elin Waring.  The Cook's dist
    contours get customizable via cook.col and cook.lty with a
    different default color and their legend is nicer by default and
    customizable via cook.legendChanges.
  * Attempting to subset an object that is not subsettable now
    signals an error of class notSubsettableError. The
    non-subsettable object is contained in the object field of the
    error condition.
  * Subscript-out-of-bounds errors are now signaled as errors of
    class subscriptOutOfBoundsError.
  * Stack-overflow errors are now signaled as errors inheriting from
    class stackOverflowError. See ?stackOverflowError for more
    details.
  * New partly experimental Sys.setLanguage() utility, solving the
    main problem of PR#18055.
  * gettext() and gettextf() get a new option trim = TRUE which when
    set to false allows translations for strings such as "Execution
    halted\n" typical for C code.
  * An experimental implementation of hash tables is now available.
    See ?hashtab for more details.
  * identical() gains a extptr.as.ref argument for requesting that
    external pointer objects be compared as reference objects.
  * reorder() gets an argument decreasing which it passes to sort()
    for level creation; based on the wish and patch by Thomas Soeiro
    in PR#18243.
  * as.vector() gains a data.frame method which returns a simple
    named list, also clearing a long standing 'FIXME' to enable
    as.vector(&lt;data.frame&gt;, mode="list").  This breaks code relying
    on as.vector(&lt;data.frame&gt;) to return the unchanged data frame.
  * legend() is now vectorized for arguments cex, x.intersp, and
    text.width.  The latter can now also be specified as a vector
    (one element for each column of the legend) or as NA for
    computing a proper column wise maximum value of strwidth(legend).
    The argument y.intersp can be specified as a vector with one
    entry for each row of the legend.
    legend() also gains new arguments title.cex and title.font.
    Thanks to Swetlana Herbrandt.
  * Deparsing no longer remaps attribute names dim, dimnames, levels,
    names and tsp to historical S-compatible names (which structure()
    maps back).
  * sample() and sample.int() have additional sanity checks on their
    size and n arguments.
    all.equal.numeric() gains a sanity check on its tolerance
    argument - calling all.equal(a, b, c) for three numeric vectors
    is a surprisingly common error.
    mean(na.rm =), rank(na.last =), barplot(legend.text =),
    boxplot(), contour(drawlabels =), polygon(border =) and
    methods::is(class2 =) have more robust sanity checks on their
    arguments.
    R CMD Rd2pdf (used by R CMD check) has a more robust sanity check
    on the format of \alias{} commands.
  * psigamma(x, deriv) for negative x now also works for deriv = 4
    and 5; their underlying C level dpsifn() is documented in
    'Writing R Extensions'.
  * The HTML help system now uses HTML5 (wish of PR#18149).
  * ks.test() now provides exact p-values also with ties and MC
    p-values in the two-sample (Smirnov) case.  By Torsten Hothorn.
  * ks.test() gains a formula interface, with y ~ 1 for the
    one-sample (Kolmogorov) test and y ~ group for the two-sample
    (Smirnov) test.  Contributed by Torsten Hothorn.
  * The return value from ks.test() now has class c("ks.test",
    "htest") - packages using try() need to take care to use
    inherits() and not == on the class.
  * New functions psmirnov(), qsmirnov() and rsmirnov() in package
    stats implementing the asymptotic and exact distributions of the
    two-sample Smirnov statistic.
  * iconv() now allows sub = "c99" to use C99-style escapes for UTF-8
    inputs which cannot be converted to encoding to.
  * In a forward pipe |&gt; expression it is now possible to use a named
    argument with the placeholder _ in the rhs call to specify where
    the lhs is to be inserted.  The placeholder can only appear once
    on the rhs.
  * The included LAPACK sources have been updated to version 3.10.0,
    except for the four Fortran 77 routines which 3.10.0 has
    re-implemented in Fortran 90 (where the older versions have been
    retained as the R build process does not support Fortran 90).
  * path.expand() and most other uses of tilde expansion now warn if
    a path would be too long if expanded.  (An exception is
    file.exists(), which silently returns false.)
  * trunc(&lt;Date&gt;, *) now supports units = "months" or "years" for
    consistency with the POSIXt method, thanks to Dirk Eddelbuettel's
    proposal in PR#18099.
  * list2DF() now checks that its arguments are of the same length,
    rather than use recycling.
  * The HTML help system has several new features: LaTeX-like math
    can be typeset using either KaTeX or MathJax, usage and example
    code is highlighted using Prism, and for dynamic help the output
    of examples and demos can be shown within the browser if the
    knitr package is installed. These features can be disabled by
    setting the environment variable _R_HELP_ENABLE_ENHANCED_HTML_ to
    a false value.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 15
    and so packages that provide graphics devices should be
    reinstalled.
  * The grid package now allows the user to specify a "vector" of
    pattern fills.  The fill argument to gpar() accepts a list of
    gradients and/or patterns and the functions linearGradient(),
    radialGradient(), and pattern() have a new group argument.
    Points grobs (data symbols) can now also have a pattern fill.
    The grobCoords() function now returns a more informative and
    complex result.
  * The grid package has new functions for drawing isolated groups:
    grid.group(), grid.define(), and grid.use().  These functions add
    compositing operators and affine transformations to R's graphics
    capabilities.
    The grid package also has new functions for stroking and filling
    paths: grid.stroke(), grid.fill(), and grid.fillStroke().
    A new function as.path() allows the user to specify the fill rule
    for a path that is to be used for clipping, stroking, or filling;
    available options are "winding" and "evenodd".  A new function
    as.mask() allows the user to specify the type of a mask;
    available options are "alpha" and "luminance".
    These new features are only supported so far (at most) on the
    Cairo-based graphics devices and on the pdf() device.
  * dev.capabilities() reports on device support for the new
    features.
  * par() now warns about unnamed non-character arguments to prevent
    misuse such as {usr &lt;- par("usr"); par(usr)}.
  INSTALLATION:
  * Facilities for accessing ftp:// sites are no longer tested
    (except _pro tem_ for curlGetHeaders()) as modern browsers have
    removed support.
  * R can now be built with DEFS = -DSTRICT_R_HEADERS .
  PACKAGE INSTALLATION:
  * R CMD INSTALL no longer tangles vignettes. This completes an R
    CMD build change in R 3.0.0 and affects packages built before R
    3.0.2. Such packages should be re-made with R CMD build to have
    the tangled R code of vignettes shipped with the tarball.
  * USE_FC_LEN_T will become the default: this uses the correct
    prototypes for Fortran BLAS/LAPACK routines called from C/C++,
    and requires adjustment of most such calls - see 'Writing R
    Extensions' SS6.6.2.  (This has been supported since R 3.6.2.)
  * Package installation speed for packages installed with
    keep.source has been improved. This resolve the issue reported by
    Ofek Shilon in PR#18236.
  UTILITIES:
  * R CMD check can optionally report files/directories left behind
    in home, /tmp (even though TMPDIR is set) and other directories.
    See the "R Internals" manual for details.
  * R CMD check now reports byte-compilation errors during
    installation.  These are not usually fatal but may result in
    parts of the package not being byte-compiled.
  * _R_CHECK_DEPENDS_ONLY_ can be applied selectively to examples,
    tests and/or vignettes in R CMD check: see the "R Internals"
    manual.
  * _R_CHECK_SRC_MINUS_W_IMPLICIT_ now defaults to true: recent
    versions of Apple clang on macOS have made implicit function
    declarations in C into a compilation error.
  * R CMD check --as-cran makes use of the environment variable
    AUTORECONF.  See the "R Internals" manual SS8 for further details.
  * R CMD check --use-valgrind also uses valgrind when re-building
    vignettes as some non-Sweave vignettes unhelpfully comment out
    all their code when R CMD check runs vignettes.
  * Errors in re-building vignettes (unless there are LaTeX errors)
    are reported by R CMD check as ERROR rather than WARNING when
    running vignettes has been skipped (as it frequently is in CRAN
    checks and by --as-cran).
  * R CMD Rd2pdf gains a --quiet option that is used by R CMD build
    when building the PDF package manual.
  * R CMD Rd2pdf now always runs LaTeX in batch mode, consistent with
    Texinfo &gt;= 6.7. The --batch option is ignored.
  * R CMD build and R CMD check now include the Rd file name and line
    numbers in the error message of an \Sexpr evaluation failure.
  * For packages using the \doi Rd macro (now an install-time \Sexpr)
    but no other dynamic Rd content, R CMD build now produces a
    smaller tarball and is considerably faster - skipping temporary
    package installation.
  C-LEVEL FACILITIES:
  * The non-API header R_ext/R-ftp-http.h is no longer provided, as
    the entry points it covered are now all defunct.
  * A number of non-API declarations and macro definitions have been
    moved from the installed header Rinternals.h to the internal
    header Defn.h. Packages that only use entry points and
    definitions documented to be part of the API as specified in
    'Writing R Extensions' SS6 should not be affected.
  * The macro USE_RINTERNALS no longer has any effect when compiling
    package code.  Packages which also use R_NO_REMAP will need to
    ensure that the remapped names are used for calls to API
    functions that were formerly also made available as macros.
  * The deprecated legacy S-compatibility macros PROBLEM, MESSAGE,
    ERROR, WARN, WARNING, RECOVER, ... are no longer defined in
    R_exts/RS.h (included by R.h).  Replace these by calls to
    Rf_error and Rf_warning (defined in header R_ext/Error.h included
    by R.h).
    Header R_ext/RS.h no longer includes R_ext/Error.h.
  * Header R_ext/Constants.h (included by R.h) when included from C++
    now includes the C++ header cfloat rather than the C header
    float.h (now possible as C++11 is required).
  * The legacy S-compatibility macros DOUBLE_* in R_ext/Constants.h
    (included by R.h) are deprecated.
  * The deprecated S-compatibility macros SINGLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * R_Calloc, R_Free and R_Realloc are preferred to their unprefixed
    forms and error messages now use the prefix. These forms were
    introduced in R 3.4.0 and are available even when
    STRICT_R_HEADERS is defined.
  * rmultinom has been documented in 'Writing R Extensions' SS6 so is
    now part of the R API.
  * Similarly, Rtanpi, called from R level tanpi() is now part of the
    R API.
  * The long-deprecated, undocumented and non-API entry point call_R
    is no longer declared in R_ext/RS.h (included by R.h).
  * The header S.h which has been unsupported since Jan 2016 has been
    removed.  Use R.h instead.
  DEPRECATED AND DEFUNCT:
  * The (non-default and deprecated) method = "internal" for
    download.file() and url() no longer supports http:// nor ftp://
    URIs.  (It is used only for file:// URIs.)
    On Windows, download.file(method = "wininet") no longer supports
    ftp:// URIs.  (It is no longer the default method, which is
    "libcurl" and does.)
    On Windows, the deprecated method = "wininet" now gives a warning
    for http:// and https:// URIs for both download.file() and url().
    (It is no longer the default method.)
  * On Windows, the command-line option --max-mem-size and
    environment variable R_MAX_MEM_SIZE are defunct.  The memory
    allocation limit was important for 32-bit builds, but these are
    no longer supported.
  * default.stringsAsFactors() is now formally deprecated, where that
    was only mentioned on its regular help page, previously.  So it
    now gives a warning if called.
  * unix.time() is defunct now; it had been deprecated since R 3.4.0.
  BUG FIXES:
  * Setting digits = 0 in format(), print.default() (and hence
    typically print()) or options() is again invalid.  Its behaviour
    was platform-dependent, and it is unclear what "zero significant
    digits" should mean (PR#18098).
  * Messages from C code in the cairo section of package grDevices
    are now also offered for translation, thanks to Michael Chirico's
    PR#18123.
  * mean(x) with finite x now is finite also without "long.double"
    capability.
  * R CMD Rd2pdf no longer leaves an empty build directory behind
    when it aborts due to an already existing output file.  (Thanks
    to Sebastian Meyer's PR#18141.)
  * density(x, weights = w, na.rm = TRUE) when anyNA(x) is true, now
    removes weights "in parallel" to x, fixing PR#18151, reported by
    Matthias Gondan.  Additionally, it gets a subdensity option.
  * Conversion of \Sexpr[]{&lt;expR&gt;} to LaTeX or HTML no longer
    produces long blocks of empty lines when &lt;expR&gt; itself contains
    several lines all producing empty output.  Thanks to a report and
    patch by Ivan Krylov posted to R-devel.
  * R CMD build no longer fails if a package vignette uses child
    documents and inst/doc exists.  (Thanks to Sebastian Meyer's
    PR#18156.)
  * When an R documentation ('help' source) file man/foo.Rd in a
    package has \donttest{..} examples with a syntax error, it is now
    signalled as ERROR and with correct line numbers relating to the
  * -Ex.R file, thanks to Duncan Murdoch and Sebastian Meyer's
    reports and patch proposals in PR#17501.
  * Improved determination of the correct translation domain in
    non-base packages, addressing the combination of PR#18092 and
    PR#17998 (#c6) with reports and _augmented_ patch #2904 by
    Suharto Anggono.
    Note that "R-base" is no longer the default domain e.g., for
    top-level calls to gettext(); rather translation needs explicit
    domain = * specification in such cases.
  * identical(attrib.as.set=FALSE) now works correctly with data
    frames with default row names (Thanks to Charlie Gao's PR#18179).
  * txtProgressBar() now enforces a non-zero width for argument char,
    without which no progress can be visible.
  * dimnames(table(d)) is more consistent in the case where d is a
    list with a single component, thanks to Thomas Soeiro's report to
    R-devel.
    Further, table(d1, d2) now gives an error when d1 and d2 are data
    frames as suggested by Thomas in PR#18224.
  * Fix for drawing semi-transparent lines and fills on the native
    Windows graphics device (PR#18219 and PR#16694).  Thanks to Nick
    Ray for helpful diagnosis on Bugzilla.
  * The deparser now wraps sub-expressions such as if(A) ..  with
    parentheses when needed; thanks to Duncan Murdoch's PR#18232 and
    Lionel Henry's patches there.
  * remove.packages() no longer tries to uninstall Priority: base
    packages, thanks to a report and suggestions by Colin Fay in
    PR#18227.
  * win.metafile() now has xpinch and ypinch arguments so that the
    user can override Windows' (potentially wrong) guess at device
    dimensions.
  * x[i] and x[[i]] for non-integer i should now behave in all cases
    as always documented: the index used is equivalent to
    as.integer(i) unless that would overflow where trunc(i) is used
    instead; thanks to Suharto Anggono's report and patch proposals
    in PR#17977.
  * asOneSidedFormula() now associates the resulting formula with the
    global environment rather than the evaluation environment created
    for the call.
  * &lt;bibentry&gt;$name now matches the field name case-insensitively,
    consistent with bibentry() creation and the replacement method.
  * cbind() failed to detect some length mismatches with a mixture of
    time-series and non-time-series inputs.
  * The default LaTeX style file Sweave.sty used by the RweaveLatex
    driver no longer loads the obsolete ae package; thanks to a
    report by Thomas Soeiro in PR#18271.  Furthermore, it now skips
    \usepackage[T1]{fontenc} for engines other than pdfTeX (if
    detected) or if the new [nofontenc] option is used.
  * smooth.spline() now stores its logical cv argument more safely,
    fixing a rare bug when printing, and also stores n.
  * smooth.spline(x,y,*) now computes the cv.crit statistic
    correctly, also when is.unsorted(x), fixing PR#18294.
  * The data.frame method of rbind() now warns when binding
    not-wholly-recycling vectors, by analogy to the default method
    (for matrices).
  * setAs() finds the correct class for name to when multiple
    packages define a class with that name. Thanks to Gabor Csardi
    for the report.
  * Fix for detaching a package when two classes of the same name are
    present in method signatures for the same generic. Thanks to
    Gabor Csardi for the report.
  * match.arg("", c("", "a", "B")) gives a better error message, in
    part from PR#17959, thanks to Elin Waring.
  * R CMD Sweave --clean no longer removes pre-existing files or
    subdirectories (PR#18242).
  * The quartz() device no longer splits polylines into subpaths.
    That has caused narrowly-spaced lines with many points to always
    look solid even when dashed line type was used due to dash phase
    restarts.
  * Deparsing constructs such as quote(1 + `!`(2) + 3) works again as
    before R 3.5.0, thanks to the report and patch in PR#18284 by
    Suharto Anggono.
  * as.list(f) for a factor f now keeps names(f), fixing PR#18309.
  * qbeta(.001, .9, .009) and analogous qf() calls now return a
    correct value instead of NaN or wrongly 1, all with a warning;
    thanks to the report by Ludger Goeminne in PR#18302.
  * plot.lm() failed to produce the plot of residuals vs.  factor
    levels (i.e., which=5 when leverages are constant) for models
    with character predictors (PR#17840).
  * interaction.plot(..., xtick = TRUE) misplaced the x-axis line
    (PR#18305).
  * Not strictly fixing a bug, format()ing and print()ing of
    non-finite Date and POSIXt values NaN and +/-Inf no longer show
    as NA but the respective string, e.g., Inf, for consistency with
    numeric vector's behaviour, fulfilling the wish of PR#18308.
  * R CMD check no longer runs test scripts generated from
    corresponding .Rin files twice and now signals an ERROR if
    processing an .Rin script fails.
  * tools::Rd2txt() used for plain-text help pages now renders \hrefs
    (if tools::Rd2txt_options(showURLs = TRUE)) and \urls with
    percent-encoding and standards-compliant delimiting style (angle
    brackets and no URL: prefix).  \email is now rendered with a
    mailto: prefix.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1655985600">- CHANGES IN R 4.2.1:
  NEW FEATURES:
  * New function utils::findCRANmirror() to find out if a CRAN mirror
    has been selected, otherwise fallback to the main site.  This
    behaves in the same way as tools::CRAN_package_db() and is
    intended for packages wishing to access CRAN for purposes other
    than installing packages.
    The need for this was shown by a day when the main CRAN website
    was offline and a dozen or so packages which had its URL
    hardcoded failed their checks.
  INSTALLATION on a UNIX-ALIKE:
  * The libraries searched for by --with-blas (without a value) now
    include BLIS (after OpenBLAS but before ATLAS).  And on macOS,
    the Accelerate framework (after ATLAS).  (This is patterned after
    the AX_BLAS macro from the Autoconf Archive.)
  * The included LAPACK sources have been updated to 3.10.1.
  UTILITIES:
  * The (full path to) the command tidy to be used for HTML
    validation can be set by environment variable R_TIDYCMD.
  * Setting environment variable _R_CHECK_RD_VALIDATE_RD2HTML_ to a
    false value will override R CMD check --as-cran and turn off HTML
    validation.  This provides a way to circumvent a problematic
    tidy.
    The 2006 version that ships with macOS is always skipped.
  C-LEVEL FACILITIES:
  * The undocumented legacy declarations of Sint, Sfloat, SINT_MAX
    and SINT_MIN in header R.h are deprecated.
  BUG FIXES:
  * fisher.test(d) no longer segfaults for "large" d; fixing PR#18336
    by preventing/detecting an integer overflow reliably.
  * tar(., files=*) now produces correctly the warning about invalid
    uid or gid of files, fixing PR#18344, reported by Martin Morgan.
  * tk_choose.files() with multi = FALSE misbehaved on paths
    containing spaces (PR#18334) (regression introduced in R 4.0.0).
  * sort(x, partial = ind, *) now works correctly notably for the
    non-default na.last = FALSE or TRUE, fixing PR#18335 reported by
    James Edwards.
  * Environment variable _R_CHECK_XREFS_REPOSITORIES_ is only used
    for checking .Rd cross-references in R CMD check (as documented)
    and not for other uses looking for a CRAN mirror.
  * The search for a CRAN mirror when checking packages now uses
    getOption("repos") if that specifies a CRAN mirror, even when it
    does not also specify all three Bioconductor repositories (as was
    previously required).
  * The HTML code generated by tools::Rd2HTML() has been improved to
    pass tidy 5.8.0.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1667217600">- CHANGES IN R 4.2.2:
  NEW FEATURES:
  * tools::Rdiff(useDiff = TRUE) checks for the presence of an
    external diff command and switches to useDiff = FALSE if none is
    found.  This allows R CMD Rdiff to always work.
  * On Windows, environment variable R_LIBCURL_SSL_REVOKE_BEST_EFFORT
    can be used to switch to only 'best-effort' SSL certificate
    revocation checks with the default "libcurl" download method.
    This reduces security, but may be needed for downloads to work
    with MITM proxies (PR#18379).
  * (macOS) The run-time check for libraries from XQuartz for X11 and
    Tcl/Tk no longer uses otool from the Apple Developer Tools
    (PR#18400).
  * The LaTeX style for producing the PDF manuals, Rd.sty, now loads
    the standard amsmath, amsfonts and amssymb packages for greater
    coverage of math commands in the Rd \eqn and \deqn macros.  The
    \mathscr LaTeX command is also provided (via the mathrsfs
    package, if available, or the amsfonts bundle otherwise),
    fulfilling the wish of PR#18398.
  * (Windows) The default format of readClipboard() and
    writeClipboard() has been changed to 13 (CF_UNICODETEXT).
  INSTALLATION on a UNIX-ALIKE:
  * The PDF manuals (if built) can be compacted by the new target
    make compact-pdf (at the top level or in directory doc/manual).
  * There is now configure support for LLVM clang 15 on Linux, which
    defaults to position-independent (PIE) executables whereas
    gfortran does not.
  * Many small changes to ease compilation (and suppress warnings)
    with LLVM clang 15.
  BUG FIXES:
  * Rscript -e would fail if stdin were closed (Reported by Henrik
    Bengtsson.)
  * qt(*, log.p=TRUE) in outer tails no longer produces NaN in its
    final steps, thus fixing PR#18360.
  * tools::Rd2latex() now escapes hashes and ampersands when writing
    URLs, fixing LaTeX errors with such URLs in \tabular.
  * When isGeneric(f, fdef=*) is used with mismatching names, the
    warning is better understandable; reported (with fix) in PR#18370
    by Gabe Becker.
  * poly(x, n) now works again (and is now documented) when x is a
    "Date" or "POSIXct" object, or of another class while fulfilling
    mode(x) == "numeric".  This also enables poly(x, *, raw=TRUE) for
    such variables.  Reported by Michael Chirico to R-devel.
  * write.table(), write.csv() and write.csv2() restore their
    numerical precision (internal equivalent of digits = 15) after an
    interrupt (PR#18384).
  * One can now read also byte FF from a clipboard connection
    (PR#18385).
  * source("") and source(character()) now give more helpful error
    messages.
  * R CMD check --as-cran set _R_CHECK_TIMINGS_ too late to have the
    intended effect.
  * as.POSIXlt(x) now also works with very large dates x, fixing
    PR#18401 reported by Hannes M"uhleisen.
  * Files can now be extracted even from very large zip archives
    (PR#18390, thanks to Martin Jakt).
  * Non-finite objects of class "POSIXlt" are now correctly coerced
    to classes "Date" and "POSIXct"; following up on the extension to
    format() them correctly.
  * Added methods for is.finite(), is.infinite() and is.nan() for
    "POSIXlt" date-time objects.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1678881600">- CHANGES IN R 4.2.3:
  C-LEVEL FACILITIES:
  * The definition of DL_FUNC in R_ext/Rdynload.h has been changed to
    be fully C-compliant.  This means that functions loaded _via_ for
    example R_GetCCallable need to be cast to an appropriate type if
    they have any arguments.
  * .Machine has a new element sizeof.time_t to identify old systems
    with a 32-bit type and hence a limited range of date-times (and
    limited support for dates millions of years from present).
  PACKAGE INSTALLATION:
  * (Windows) The default C++ standard had accidentally been left at
    C++11 when it was changed to C++14 on Unix.
  BUG FIXES:
  * As "POSIXlt" objects may be "partially filled" and their list
    components meant to be recycled, length() now is the length of
    the longest component.
  * as.POSIXlt.Date() could underflow for dates in the far past (more
    than half a million years BCE).
  * as.Date.POSIXlt(x) would return "1970-01-01" instead of NA in R
    4.2.2, e.g., for
    x &lt;- as.POSIXlt(c("2019-01-30","2001-1-1"))
    x$mon &lt;- c(0L, NA); as.Date(x)
  * R CMD check failed to apply enabled _R_CHECK_SUGGESTS_ONLY_ to
    examples and vignettes (regression in R 4.2.0).
  * R CMD check did not re-build vignettes in separate processes by
    default (regression in R 4.2.0).
  * Running examples from HTML documentation now restores previous
    knitr settings and options (PR#18420).
  * Quartz: fonts are now located using Core Graphics API instead of
    deprecated ATS which is no longer supported in the macOS 13 SDK
    (PR#18426).  This also addresses an issue where the currently
    used font in the Quartz device context was not correctly
    retained.
  * (Windows) Math symbols in text drawing functions are again
    rendered correctly (PR#18440).  This fixes a regression in R
    4.2.1 caused by a fix in PR#18382 which uncovered an issue in
    GraphApp due to which the symbol charset was not used with TT
    Symbol font face.
  * (Windows) Installing a package with a src/Makefile.{win,ucrt}
    file includes ~/.R/Makevars.win64 in the search for user
    makevars, as documented in "R Installation and Administration"
    and done for packages with a src/Makevars.{win,ucrt} file.
  * format(&lt;POSIXlt_w/_unbalanced_sec&gt;, "....%OS&lt;n&gt;") with n &gt; 0 no
    longer accidentally uses the unbalanced seconds, thanks to
    Suharto Anggono's report (including patch) in PR#18448.
  * solve.default(a, b) works around issues with some versions of
    LAPACK when a contains NA or NaN values.
  * When UseMethod() cannot dispatch, it no longer segfaults
    producing the error message in case of a long class(), thanks to
    Joris Vankerschaver's report (including patch) in PR#18447.
  * When example(foo, ..) produces graphics on an interactive device
    it needs to open itself, it now leaves devAskNewPage() unchanged
    even when it was FALSE, thus fixing a 14 years old '&lt;FIXME&gt;'.
  * packageDescription() again catches errors from encoding
    conversions. This also fixes broken packageVersion() in C locale
    on systems where iconv does not support transliteration.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1681128000">- add patch to build with libcurl &gt;= 8</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1682078400">- CHANGES IN R 4.3.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Calling &amp;&amp; or || with LHS or (if evaluated) RHS of length greater
    than one is now always an error, with a report of the form
    'length = 4' in coercion to 'logical(1)'
    Environment variable _R_CHECK_LENGTH_1_LOGIC2_ no longer has any
    effect.
  NEW FEATURES:
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.10.1.  (This caused some platform-dependent
    changes to package check output.)  And then to the sources from
    LAPACK version 3.11.0 (with changes only to double complex
    subroutines).
  * The included LAPACK sources have been updated to include the four
    Fortran 90 routines rather than their Fortran 77 predecessors.
    This may give some different signs in SVDs or
    eigendecompositions..  (This completes the transition to LAPACK
    3.10.x begun in R 4.2.0.)
  * The LAPACK sources have been updated to version 3.11.0.  (No new
    subroutines have been added, so this almost entirely bug fixes:
    Those fixes do affect some computations with NaNs, including R's
    NA.)
  * The parser now signals _classed_ errors, notably in case of the
    pipe operator |&gt;.  The error object and message now give line and
    column numbers, mostly as proposed and provided by Duncan Murdoch
    in PR#18328.
  * toeplitz() is now generalized for asymmetric cases, with a
    toeplitz2() variant.
  * xy.coords() and xyz.coords() and consequently, e.g., plot(x,y,
    log = "y") now signal a _classed_ warning about negative values
    of y (where log(.) is NA).  Such a warning can be specifically
    suppressed or caught otherwise.
  * Regular expression functions now check more thoroughly whether
    their inputs are valid strings (in their encoding, e.g. in
    UTF-8).
  * The performance of grep(), sub(), gsub() and strsplit() has been
    improved, particularly with perl = TRUE and fixed = TRUE.  Use of
    useBytes = TRUE for performance reasons should no longer be
    needed and is discouraged: it may lead to incorrect results.
  * apropos() gains an argument dot_internals which is used by the
    completion (help(rcompgen)) engine to also see base internals
    such as .POSIXct().
  * Support in tools::Rdiff() for comparing uncompressed PDF files is
    further reduced - see its help page.
  * qqplot(x, y, ...) gains conf.level and conf.args arguments for
    computing and plotting a confidence band for the treatment
    function transforming the distribution of x into the distribution
    of y (Switzer, 1976, _Biometrika_). Contributed by Torsten
    Hothorn.
  * Performance of package_dependencies() has been improved for cases
    when the number of dependencies is large.
  * Strings newly created by gsub(), sub() and strsplit(), when any
    of the inputs is marked as "bytes", are also marked as "bytes".
    This reduces the risk of creating invalid strings and accidental
    substitution of bytes deemed invalid.
  * Support for readLines(encoding = "bytes") has been added to allow
    processing special text files byte-by-byte, without creating
    invalid strings.
  * iconv(from = "") now takes into account any declared encoding of
    the input elements and uses it in preference to the native
    encoding.  This reduces the risk of accidental creation of
    invalid strings, particularly when different elements of the
    input have different encoding (including "bytes").
  * Package repositories in getOption("repos") are now initialized
    from the repositories file when utils is loaded (if not already
    set, e.g., in .Rprofile).  (From a report and patch proposal by
    Gabriel Becker in PR#18405.)
  * compactPDF() gets a verbose option.
  * type.convert() and hence read.table() get new option tryLogical =
    TRUE with back compatible default.  When set to false, converts
    "F" or "T" columns to character.
  * Added new unit prefixes "R" and "Q" for abbreviating
    (unrealistically large) sizes beyond 10^{27} in standard = "SI",
    thanks to Henrik Bengtsson's PR#18435.
  * as.data.frame()'s default method now also works fine with atomic
    objects inheriting from classes such as "roman", "octmode" and
    "hexmode", such fulfilling the wish of PR#18421, by Benjamin
    Feakins.
  * The as.data.frame.vector() utility now errors for wrong-length
    row.names.  It warned for almost six years, with "Will be an
    error!".
  * sessionInfo() now also contains La_version() and reports codepage
    and timezone when relevant, in both print() and toLatex() methods
    which also get new option tzone for displaying timezone
    information when locale = FALSE.
  * New function R_compiled_by() reports the C and Fortran compilers
    used to build R, if known.
  * predict(&lt;lm&gt;, newdata = *) no longer unnecessarily creates an
    offset of all 0s.
  * solve() for complex inputs now uses argument tol and by default
    checks for 'computational singularity' (as it long has done for
    numeric inputs).
  * predict(&lt;rank-deficient lm&gt;, newdata=*) now obeys a new argument
    rankdeficient, with new default "warnif", warning only if there
    are non-estimable cases in newdata.  Other options include
    rankdeficient = "NA", predicting NA for non-estimable newdata
    cases.  This addresses PR#15072 by Russ Lenth and is based on his
    original proposal and discussions in PR#16158 also by David Firth
    and Elin Waring.  Still somewhat experimental.
  * Rgui console implementation now works better with the NVDA screen
    reader when the full blinking cursor is selected.  The underlying
    improvements in cursor handling may help also other screen
    readers on Windows.
  * The drop-field control in GraphApp can now be left with the TAB
    key and all controls can be navigated in the reverse order using
    the Shift+TAB key, improving accessibility of the Rgui
    configuration editor.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now fully accurate
    (instead of to "only" minimally five digits).
  * demo(error.catching) now also shows off withWarnings() and
    tryCatchWEMs().
  * As an experimental feature the placeholder _ can now also be used
    in the rhs of a forward pipe |&gt; expression as the first argument
    in an extraction call, such as _$coef. More generally, it can be
    used as the head of a chain of extractions, such as _$coef[[2]].
  * Spaces in the environment variable used to choose the R session's
    temporary directory (TMPDIR, TMP and TEMP are tried in turn) are
    now fatal.  (On Windows the 'short path' version of the path is
    tried and used if that does not contain a space.)
  * all.equal.numeric() gets a new optional switch giveErr to return
    the numeric error as attribute.  Relatedly,
    stopifnot(all.equal&lt;some&gt;(a, b, ..)) is as "smart" now, as
    stopifnot(all.equal(....)) has been already, thus allowing
    customized all.equal&lt;Some&gt;() wrappers.
  * R on Windows is now able to work with path names longer than 260
    characters when these are enabled in the system (requires at
    least Windows 10 version 1607).  Packages should be updated to
    work with long paths as well, instead of assuming PATH_MAX to be
    the maximum length.  Custom front-ends and applications embedding
    R need to update their manifests if they wish to allow this
    feature.  See
    &lt;https://blog.r-project.org/2023/03/07/path-length-limit-on-windows&gt;
    for more information.
  * 'Object not found' and 'Missing argument' errors now give a more
    accurate error context. Patch provided by Lionel Henry in
    PR#18241.
  * The @ operator is now an S3 generic. Based on contributions by
    Tomasz Kalinowski in PR#18482.
  * New generic chooseOpsMethod() provides a mechanism for objects to
    resolve cases where two suitable methods are found for an Ops
    Group Generic. This supports experimenting with alternative
    object systems. Based on contributions by Tomasz Kalinowski in
    PR#18484.
  * inherits(x, what) now accepts values other than a simple
    character vector for argument what. A new generic, nameOfClass(),
    is called to resolve the class name from what. This supports
    experimenting with alternative object systems. Based on
    contributions by Tomasz Kalinowski in PR#18485.
  * Detection of BLAS/LAPACK in use (sessionInfo()) with FlexiBLAS
    now reports the current backend.
  * The "data.frame" method for subset() now warns about extraneous
    arguments, typically catching the use of = instead of == in the
    subset expression.
  * Calling a:b when numeric a or b is longer than one may now be
    made into an error by setting environment variable
    _R_CHECK_LENGTH_COLON_ to a true value, along the proposal in
    PR#18419 by Henrik Bengtsson.
  * density(x, weights = *) now warns if automatic bandwidth
    selection happens without using weights; new optional warnWbw may
    suppress the warning.  Prompted by Christoph Dalitz' PR#18490 and
    its discussants.
  * rm(list = *) is faster and more readable thanks to Kevin Ushey's
    PR#18492.
  * The plot.lm() function no longer produces a normal Q-Q plot for
    GLMs. Instead it plots a half-normal Q-Q plot of the absolute
    value of the standardized deviance residuals.
  * The print() method for class "summary.glm" no longer shows
    summary statistics for the deviance residuals by default.  Its
    optional argument show.residuals can be used to show them if
    required.
  * The tapply() function now accepts a data frame as its X argument,
    and allows INDEX to be a formula in that case. by.data.frame()
    similarly allows INDICES to be a formula.
  * The performance of df[j] &lt;- value (including for missing j) and
    write.table(df) has been improved for data frames df with a large
    number of columns.  (Thanks to Gabriel Becker's PR#18500,
    PR#18503 and discussants, prompted by a report from Toby Dylan
    Hocking on the R-devel mailing list.)
  * The matrix multiply operator %*% is now an S3 generic, belonging
    to new group generic matrixOps.  From Tomasz Kalinowski's
    contribution in PR#18483.
  * New function array2DF() to convert arrays to data frames,
    particularly useful for the list arrays created by tapply().
  DATES and TIMES:
  * On platforms where (non-UTC) datetimes before 1902 (or before
    1900 as with system functions on recent macOS) are guessed by
    extrapolating time zones from 1902-2037, there is a warning at
    the first use of extrapolation in a session.  (As all time zones
    post 2037 are extrapolation, we do not warn on those.)
  * (Platforms using --with-internal-tzone, including Windows and by
    default macOS). How years are printed in dates or date-times can
    be controlled by environment variable R_PAD_YEARS_BY_ZERO.  The
    default remains to pad to 4 digits by zeroes, but setting value
    no gives no padding (as used by default by glibc).
  * strftime() tries harder to determine the offset for the "%z"
    format, and succeeds on the mainstream R platforms.
  * strftime() has a limit of 2048 bytes on the string produced -
    attempting to exceed this is an error.  (Previously it silently
    truncated at 255 bytes.)
  * sessionInfo() records (and by default prints) the system time
    zone as part of the locale information.  Also, the source
    (system/internal) of the date-time conversion and printing
    functions.
  * Objects of class "POSIXlt" created in this version of R always
    have 11 components: component zone is always set, and component
    gmtoff is set for times in UTC and usually set on the (almost
    all) platforms which have C-level support, otherwise is NA.
  * There are comprehensive validity checks on the structure of
    objects of class "POSIXlt" when converting (including formatting
    and printing).  (This avoids mis-conversions of hand-crafted
    objects.)
  * There is some support for using the native date-time routines on
    macOS: this is only viable on recent versions (e.g. 12.6 and 13)
    and does get wrong some historical changes (before 1900, during
    WWII).  Use of --with-internal-tzone remains the default.
  * as.POSIXct(&lt;numeric&gt;) and as.POSIXlt(.) (without specifying
    origin) now work.  So does as.Date(&lt;numeric&gt;).
  * as.Date.POSIXct(., tz) now treats several tz values, notably
    "GMT" as equivalent to "UTC", proposed and improved by Michael
    Chirico and Joshua Ulrich in PR#17674.
  * Experimental balancePOSIXlt() utility allows using "ragged" and
    or out-of-range "POSIXlt" objects more correctly, e.g., in
    subsetting and subassignments.  Such objects are now documented.
    More experimentally, a "POSIXlt" object may have an attribute
    "balanced" indicating if it is known to be filled or fully
    balanced.
  * Functions axis.Date() and axis.POSIXct() are rewritten to gain
    better default tick locations and better default formats by using
    prettyDate(). Thanks to Swetlana Herbrandt.
  * The mapping of Windows' names for time zones to IANA's 'Olson'
    names has been updated.  When ICU is available (it is by
    default), it is used to get a mapping for the current region set
    in Windows.  This can be overridden by setting environment
    variable TZ to the desired Olson name - see OlsonNames() for
    those currently available.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 16
    and so packages that provide graphics devices should be
    reinstalled.
  * The grDevices and grid packages have new functions for rendering
    typeset glyphs, primarily: grDevices::glyphInfo() and
    grid::grid.glyph().
    Rendering of typeset glyphs is only supported so far on the
    Cairo-based graphics devices and on the pdf() and quartz()
    devices.
  * The defined behaviour for "clear" and "source" compositing
    operators (via grid::grid.group()) has been changed (to align
    better with simple interpretation of original Porter-Duff
    definitions).
  * Support for gradients, patterns, clipping paths, masks, groups,
    compositing operators, and affine transformations has been added
    to the quartz() device.
  INSTALLATION on a UNIX-ALIKE:
  * A system installation of generic LAPACK 3.10.0 or later will be
    preferred to the version in the R sources.
    configure option --with-lapack=no (equivalently --without-lapack)
    forces compilation of the internal LAPACK sources.
    If --with-lapack is not specified, a system liblapack is looked
    for and used if it reports version 3.10.0 or later and does not
    contain BLAS routines.
    Packages using LAPACK will need to be reinstalled if this changes
    to using an external library.
  * On aarch64 Linux platforms using GCC, configure now defaults to
  - fPIC (instead of -fpic), as desired in PR#18326.
  * configure now checks conversion of datetimes between POSIXlt and
    POSIXct around year 2020.  Failure (which has been seen on
    platforms missing tzdata) is fatal.
  * If configure option --with-valgrind-instrumentation is given
    value 1 or 2, option --with-system-valgrind-headers is now the
    default and ignored (with a warning).  It is highly recommended
    that the system headers are installed alongside valgrind: they
    are part of its packaging on some Linux distributions and
    packaged separately (e.g. in the valgrind-devel RPM) on others.
    configure will give a warning if they are not found.
    The system headers will be required in a future release of R to
    build with valgrind instrumentation.
  * libcurl 8.x is now accepted by configure: despite a change in
    major version number it changes neither API nor ABI.
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools43, an update of the Rtools42 toolchain.  It is
    based on gcc 12 and newer versions of MinGW-W64, binutils and
    libraries.  At this time R-devel can still be built using
    Rtools42 without changes, but when R-devel is installed via the
    installer, it will by default look for Rtools43.
  * Old make targets rsync-extsoft and 32-bit ones that are no longer
    needed have been removed.
  * Default builds (including for packages) no longer select C99.
    Thus the C standard used is the default for the compiler, which
    for the toolchain in Rtools43 is C17.  (This is consistent with
    Unix builds.)
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++17 where
    available (which it is on all currently checked platforms): if
    not C++14 or C++11 is used if available otherwise C++ is not
    supported.
  * USE_FC_LEN_T is the default: this uses the correct
    (compiler-dependent) prototypes for Fortran BLAS/LAPACK routines
    called from C/C++, and requires adjustment of many such calls -
    see 'Writing R Extensions' SS6.6.1.
  * There is initial support for C++23 as several compilers are now
    supporting -std=c++23 or -std=c++2b or similar.  As for C++20,
    there no additional configure checks for C++23 features beyond a
    check that the compiler reports a __cplusplus value greater than
    that in the C++20 standard.  C++ feature tests should be used.
  * There is support for a package to indicate the version of the C
    standard which should be used to compile it, and for the
    installing user to specify this.  In most cases R defaults to the
    C compiler's default standard which is C17 (a `bug-fix' of C11) -
    earlier versions of R or compilers may have defaulted to C99.
    Current options are:
    USE_C17 Use a standard that is at most C17.  The intention is to
    allow legacy packages to still be installed when later C
    standards become the default, including packages using new
    keywords as identifiers or with K&amp;R-style function
    declarations.  This will use C17 if available, falling back
    to C11.
    USE_C90 Use the C90 (aka C89) standard.  (As that standard did
    not require compilers to identify that version, all we can
    verify is that the compiler does not claim to be using a
    later standard.  It may accept C99 features - for example
    clang accepts // to make comments.)
    USE_C99 Use the C99 standard. This should be rarely needed - it
    avoids the few new features of C11/C17 which can be useful if
    a package assumes them if C17 is specified and they are not
    implemented.
    USE_C23 Use C23 (or in future, later).  Compiler/library support
    for C23 is still being implemented, but LLVM clang from
    15.0.0 and the upcoming GCC 13 have quite extensive support.
    These can be specified as part of the SystemRequirements field in
    the package's DESCRIPTION file or _via_ options --use-C17 and so
    on of R CMD INSTALL and R CMD SHLIB.
    For further details see "Writing R Extensions" SS1.2.5.
  * (Windows) A src/Makefile.ucrt or src/Makefile.win file is now
    included after R_HOME/etcR_ARCH/Makeconf and so no longer needs
    to include that file itself.  Installation of a package with such
    a file now uses a site Makevars file in the same way as a package
    with a src/Makevars.win file would.
  * configure is now passed crucial variables such as CC and CFLAGS
    in its environment, as many packages were not setting them (as
    documented in 'Writing R Extensions' SS1.2).
    This has most effect where configure is used to compile parts of
    the package - most often by cmake or libtool which obfuscate the
    actual compile commands used.
    Also used for configure.win and configure.ucrt on Windows.
  FORTRAN FLAGS:
  * The flag -fno-optimize-sibling-calls is no longer forced for
    gfortran 7 and later.  It should no longer be needed now using
    'hidden' character-length arguments when calling BLAS/LAPACK
    routines from C/C++ is the default even for packages.  (Unless
    perhaps packages call Fortran code from C/C++ without using R's
    headers and without allowing for these arguments.)
  C-LEVEL FACILITIES:
  * The deprecated S-compatibility macros DOUBLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * The deprecated legacy typedefs of Sint and Sfloat in header R.h
    are no longer defined, and that header no longer includes header
    limits.h from C nor climits from C++.
  * New macro CAD5R() is provided in Rinternals.h and used in a few
    places in the R sources.
  * ALTREP now supports VECSXP vectors. Contributed by Gabor Csardi
    in PR#17620.
  * The Rcomplex definition (in header R_ext/Complex.h) has been
    extended to prevent possible mis-compilation when interfacing
    with Fortran (PR#18430).  The new definition causes compiler
    warnings with static initializers such as {1, 2}, which can be
    changed to {.r=1, .i=2}.
    Using the new definition from C++ depends on compiler extensions
    supporting C features that have not been incorporated into the
    C++ standards but are available in g++ and clang++: this may
    result in C++ compiler warnings but these have been worked around
    for recent versions of common compilers (GCC, Apple/LLVM clang,
    Intel).
    It is intended to change the inclusion of header R_ext/Complex.h
    by other R headers, so C/C++ code files which make use of
    Rcomplex should include that header explicitly.
  UTILITIES:
  * R CMD check does more checking of package .Rd files, warning
    about invalid email addresses and (some) invalid URIs and noting
    empty \item labels in description lists.
  * R CMD check now also reports problems when reading package news
    in md (file NEWS.md) and (optionally) plain text (file NEWS)
    formats.
  * _R_CHECK_TIMINGS_ defaults to a value from the environment even
    for R CMD check --as-cran; this allows for exceptionally fast or
    slow platforms.
    It now applies to checking PDF and HTML versions of the manuals,
    and 'checking CRAN incoming feasibility'.
  * R CMD check can optionally (but included in --as-cran) check
    whether HTML math rendering _via_ KaTeX works for the package .Rd
    files.
  * Non-interactive debugger invocations can be trapped by setting
    the environment variable _R_CHECK_BROWSER_NONINTERACTIVE_ to a
    true value.  This is enabled by R CMD check --as-cran to detect
    the use of leftover browser() statements in the package.
  * The use of sprintf and vsprintf from C/C++ has been deprecated in
    macOS 13 and is a known security risk.  R CMD check now reports
    (on all platforms) if their use is found in compiled code:
    replace by snprintf or vsnprintf respectively. [*NB:* whether
    such calls get compiled into the package is platform-dependent.]
  * Where recorded at installation, R CMD check reports the C and
    Fortran compilers used to build R.
    It reports the OS in use (if known, as given by osVersion) as
    well as that R was built for.
    It notes if a C++ standard was specified which is older than the
    current default: many packages have used C++11 to mean 'not
    C++98' - as C++11 is the minimum supported since R 4.0.0, that
    specification can probably be removed.
  * R CMD INSTALL reports the compilers (and on macOS, the SDK) used,
    and this is copied to the output of R CMD check.
    Where a C++ standard is specified, it is reported.
  * R CMD check's 'checking compilation flags in Makevars' has been
    relaxed to accept the use of flags such as -std=f2008 in
    PKG_FFLAGS.
  * tools::buildVignettes() has a new argument skip, which is used by
    R CMD check to skip (and note) vignettes with unavailable
    \VignetteDepends (PR#18318).
  * New generic .AtNames() added to enable class-specific completions
    after @. The formerly internal function findMatches() is now
    exported, mainly for use in methods for .DollarNames() and
    .AtNames().
  DEPRECATED AND DEFUNCT:
  * default.stringsAsFactors() is defunct.
  * Calling as.data.frame.&lt;class&gt;() directly (for 12 atomic classes)
    is going to be formally deprecated, currently activated by
    setting the environment variable
    _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ to non-empty, which also
    happens in R CMD check --as-cran.
  BUG FIXES:
  * Hashed environments with sizes less than 5 can now grow.
    (Reported to R-devel by Duncan Garmonsway.)
  * as.character(&lt;Rd&gt;, deparse = TRUE) failed to re-escape curly
    braces in LaTeX-like text.  (Reported by Hadley Wickham in
    PR#18324.)
  * library() now passes its lib.loc argument when requiring Depends
    packages; reported (with fix) in PR#18331 by Mikael Jagan.
  * R CMD Stangle: improved message about 'Output' files.
  * head(x, n) and tail(x, n) now signal an error if n is not
    numeric, instead of incidentally "working" sometimes returning
    all of x.  Reported and discussed by Colin Fay, in PR#18357.
  * The "lm" method for summary() now gives the correct F-statistic
    when the model contains an offset.  Reported in PR#18008.
  * C() and `contrasts&lt;-`() now preserve factor level names when
    given a function object (as opposed a function name which did
    preserve names). Reported in PR#17616.
  * c(a = 1, 2)[[]] no longer matches 2 but rather signals a
    _classed_ error.  Reported and analysed by Davis Vaughan in
    PR#18367, a duplicate of PR#18004, by Jan Meis et al.  For
    consistency, NULL[[]] is also erroneous now.  x[[]] &lt;- v gives an
    error of the same class "MissingSubscriptError".
  * The relist() function of utils now supports NULL elements in the
    skeleton (PR#15854).
  * ordered(levels = *) (missing x) now works analogously to factor(,
    ordered=TRUE); reported (with fix) by Achim Zeileis in PR#18389.
  * User-defined Rd macro definitions can now span multiple lines,
    thanks to a patch from Duncan Murdoch. Previously, the Rd parser
    silently ignored everything after the first line.
  * Plain-text help (tools::Rd2txt()) now preserves an initial blank
    line for text following description list items.
  * tools::Rd2HTML() and tools::Rd2latex() no longer split \arguments
    and \value lists at Rd comments.
  * tools::Rd2latex() now correctly handles optional text outside
    \items of argument lists as well as bracketed text at the
    beginning of sections, e.g., \value{[NULL]}.
  * as.character(&lt;POSIXt&gt;) now behaves more in line with the methods
    for atomic vectors such as numbers, and is no longer influenced
    by options().  Ditto for as.character(&lt;Date&gt;).  The
    as.character() method gets arguments digits and OutDec with
    defaults _not_ depending on options().  Use of as.character(*,
    format = .) now warns.
  * Similarly, the as.character.hexmode() and *.octmode() methods
    also behave as good citizen methods and back compatibility option
    keepStr = TRUE.
  * The as.POSIXlt(&lt;POSIXlt&gt;) and as.POSIXct(&lt;POSIXct&gt;) default
    methods now do obey their tz argument, also in this case.
  * as.POSIXlt(&lt;Date&gt;) now does apply a tz (time zone) argument, as
    does as.POSIXct(); partly suggested by Roland Fuss on the R-devel
    mailing list.
  * as.Date.POSIXlt(x) now also works when the list components are of
    unequal length, aka "partially filled" or "ragged".
  * expand.model.frame() looked up variables in the wrong environment
    when applied to models fitted without data.  Reported in
    PR#18414.
  * time() now (also) uses the ts.eps = getOption("ts.eps") argument
    and thus by default rounds values very close to the start (or
    end) of a year.  Based on a proposal by Andre"i V. Kostyrka on
    R-help.
  * Printing of a factanal() result with just one factor and sort =
    TRUE now works regularly, fixing PR#17863 by Timothy Bates,
    thanks to the 'R Contributors' working group.
  * Printing 0-length objects of class "factor", "roman", "hexmode",
    "octmode", "person", "bibentry", or "citation" now prints
    something better, one of which fixes PR#18422, reported by
    Benjamin Feakins.
  * Sys.timezone() queries timedatectl only if systemd is loaded;
    addressing a report by Jan Gorecki in PR#17421.
  * The formula method of cor.test() had scoping problems when
    environment(formula) was not the calling environment; reported
    with a patch proposal by Mao Kobayashi in PR#18439.
  * attach() of an environment with active bindings now preserves the
    active bindings.  Reported by Kevin Ushey in PR#18425.
  * BLAS detection now works also with system-provided libraries not
    available as regular files.  This fixes detection of the
    Accelerate framework on macOS since Big Sur.  Reported by David
    Novgorodsky.
  * download.file() gives a helpful error message in case of an
    invalid download.file.method option, thanks to Colin Fay's report
    in PR#18455.
  * Sporadic crashes of Rterm when using completion have been fixed.
  * Rprof() is now more reliable.  A livelock in thread
    initialization with too short sampling interval has been fixed on
    macOS.  A deadlock in using the C runtime has been fixed on
    Windows.  A potential deadlock has been prevented on Unix.
  * Cursor placement in Rgui now works even after a fixed-width font
    is selected.
  * Mandatory options (options()) are now set on startup so that
    saving and restoring them always works (PR#18372).
  * Package installation, R CMD INSTALL or install.packages(*), now
    parses each of the &lt;pkg&gt;/R/*.R files individually instead of
    first concatenating and then parse()ing the large resulting file.
    This allows parser or syntax errors to be diagnosed with correct
    file names and line numbers, thanks to Simon Dedman's report and
    Bill Dunlap's patch in PR#17859.
    This _does_ require syntactically self contained R source files
    now, fixing another inadvertent bug.
  * predict.lm(&lt;model with offset&gt;) now finds the offset in the
    correct environment, thanks to Andr'e Gillibert's report and patch
    in PR#18456.
  * getInitial(&lt;formula&gt;) now finds the selfStart model in the
    correct environment.  (Reported by Ivan Krylov in PR#18368.)
  * Fix for possible segfault when using recently-added graphics
    features, such as gradients, clipping paths, masks, and groups
    with pdf(file=NULL).
  * class(m) &lt;- class(m) no longer changes a matrix m by adding a
    class _attribute_.
  * packageDate(pkg) now only warns once if there is no pkg.
  * When ts() creates a multivariate time series, "mts", it also
    inherits from "array" now, and is.mts() is documented _and_
    stricter.
  * Rd2txt() now preserves line breaks of \verb Rd content and from
    duplicated \cr.  The former also fixes the rendering of verbatim
    output from Rd \Sexpr in plain-text help.
  * uniroot(f, interval) should no longer wrongly converge _outside_
    the interval in some cases where abs(f(x)) == Inf for an x at the
    interval boundary, thanks to posts by Ben Bolker and Serguei
    Sokol on R-devel.
  * Vectorized alpha handling in palette functions such as in gray(),
    rainbow(), or hcl.colors() works correctly now, thanks to Achim
    Zeileis' report and patch in PR#18476.
  * Formatting and print()ing of bibentry objects has dropped the
    deprecated citation.bibtex.max argument, such that the bibtex
    argument's default for print.bibentry() depends directly on the
    citation.bibtex.max option, whereas in format.bibentry() the
    option no longer applies.
  * Attempting to use a character string naming a foreign function
    entry point in a foreign function call in a package will now
    signal an error if the packages has called R_forceSymbols to
    specify that symbols must be used.
  * An error in table() could permanently set options(warn=2)
    promoting all subsequent warnings to errors.
  * The sigma() function gave misleading results for binary GLMs.  A
    new method for objects of class "glm" returns the square root of
    the estimate of the dispersion parameter using the same
    calculation as summary.glm().
  * bs() and ns() in the (typical) case of automatic knot
    construction, when some of the supposedly inner knots coincide
    with boundary knots, now moves them inside (with a warning),
    building on PR#18442 by Ben Bolker.
  * R CMD on Windows now skips the site profile with --no-site-file
    and --vanilla even when R_PROFILE is set (PR#18512, from Kevin
    Ushey).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1686916800">- CHANGES IN R 4.3.1:
  C-LEVEL FACILITIES:
  * The C-level API version of R's integrate(), Rdqags() in Applic.h,
    now returns the correct number of integrand evaluations neval,
    fixing PR#18515 reported and diagnosed by Stephen Wade.
  * The C prototypes for LAPACK calls dspgv and dtptrs in
    R_exts/Lapack.h had one too many and one too few character length
    arguments - but this has not caused any known issues. To get the
    corrected prototypes, include
    [#]include &lt;Rconfig.h&gt; // for PR18534fixed
    [#]ifdef PR18534fixed
    [#] define usePR18534fix 1
    [#]endif
    [#]include &lt;R_exts/Lapack.h&gt;
    in your C/C++ code (PR#18534).
  INSTALLATION:
  * Many of the checks of esoteric Internet operations and those
    using unreliable external sites have been moved to a new target
    that is not run by default and primarily intended for the core
    developers.  To run them use
    cd tests; make test-Internet-dev
  BUG FIXES:
  * .S3methods(), typically called from methods(), again marks
    methods from package base as visible.
    Also, the visibility of non-base methods is again determined by
    the method's presence in search().
  * tools::Rdiff() is now more robust against invalid strings, fixing
    installation tests on Windows without Rtools installed
    (PR#18530).
  * Fix (new) bug in hcl.colors(2, *), by Achim Zeileis (PR#18523).
  * head(., &lt;illegal&gt;) and tail(..) now produce more useful "Error in
    ...." error messages, fixing PR#18362.
  * Package code syntax on Windows is checked in UTF-8 when UTF-8 is
    the native encoding.
  * na.contiguous(x) now also returns the first run, when it is at
    the beginning and there is a later one of the same length;
    reported to R-devel, including a fix, by Georgi Boshnakov.
    Further, by default, it modifies only an existing attr(*,"tsp")
    but otherwise no longer sets one.
  * chol(&lt;not pos.def&gt;, pivot = &lt;T|F&gt;) now gives a correct error or
    warning message (depending on pivot), thanks to Mikael Jagan's
    (PR#18541).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1699012800">- CHANGES IN R 4.3.2:
  NEW FEATURES:
  * The default initialization of the "repos" option from the
    repositories file at startup can be skipped by setting
    environment variable R_REPOSITORIES to NULL such that
    getOption("repos") is empty if not set elsewhere.
  * qr.X() is now an implicit S4 generic in methods.
  * iconv(to = "ASCII//TRANSLIT") is emulated using substitution on
    platforms which do not support it (notably Alpine Linux).  This
    should give a human-readable conversion in ASCII on all platforms
    (rather than NA_character_).
  * trans3d() gains options continuous and verbose addressing the
    problem of possible "wrap around" when projecting too long
    curves, as reported by Achim Zeileis in PR#18537.
  * tools::showNonASCII() has been rewritten to work better on macOS
    14 (which has a changed implementation of iconv()).
  * tiff(type = "quartz") (the default on macOS) now warns if
    compression is specified: it continues to be ignored.
  INSTALLATION on a UNIX-ALIKE:
  * There is some support for building with Intel's LLVM-based
    compilers on x86_64 Linux, such as (C) icx, (C++) ipcx and
    (Fortran) ifx from oneAPI 2023.x.y.
  * There is support for using LLVM's flang-new as the Fortran
    compiler from LLVM 16.0.x (preferably 17.0.0 or later).
  UTILITIES:
  * R CMD check reports the use of the Fortran 90 random number
    generator RANDOM_NUMBER() and the subroutines to initialize it.
    'Writing R Extensions' has example code to use R's RNGs from
    Fortran.
  BUG FIXES:
  * substr(x, n, L) &lt;- cc now works (more) correctly for multibyte
    UTF-8 strings x when L &gt; nchar(x), thanks to a report and patch
    by 'Architect 95'.
  * contrib.url(character()) now returns 0-length character() as
    documented, which also avoids spurious warnings from
    available.packages() et al. in the edge case of an empty vector
    of repository URLs.
  * readChar(., 4e8) no longer fails, thanks to Kodi Arfer's report
    (PR#18557).
  * lapply(&lt;list&gt;, as.data.frame) no longer warns falsely for some
    base vector components.
  * Communication between parent and child processes in the multicore
    part of parallel could fail on platforms that do not support an
    arbitrarily large payload in system functions read()/write() on
    pipes (seen on macOS where a restriction to INT_MAX bytes is
    documented, without doing a partial read unlike Linux). The
    payload is now split into 1Gb chunks to avoid that problem.
    (PR#18571)
  * qqplot(x,y, conf.level=.) gives better confidence bounds when
    length(x) != length(y), thanks to Alexander Ploner's report and
    patch proposal (PR#18557).
  * norm(&lt;0-length&gt;, "2") now gives zero instead of an error, as all
    the other norm types, thanks to Mikael Jagan's PR#18542.
  * Build-stage Rd macros \packageAuthor and \packageMaintainer now
    process Authors@R, fixing NA results when the package DESCRIPTION
    omits Author and Maintainer fields.
  * Formatting and printing complex numbers could give things like
    0.1683-0i because of rounding error: -0i is now replaced by +0i.
  * postscript() refused to accept a title comment containing the
    letter "W" (PR#18599).
  * isoreg(c(1,Inf)) signals an error instead of segfaulting, fixing
    PR#18603.
  * tiff(type = "Xlib") was only outputting the last page of
    multi-page plots.
  * tools::latexToUtf8() again knows about \~{n} and other letters
    with tilde, fixing a regression in R 4.3.0, and about \^{i} as an
    alternative to \^{\i} (similarly with other accents).
    Furthermore, LaTeX codes for accented I letters are now correctly
    converted, also fixing related mistakes in
    tools::encoded_text_to_latex().
  * tar(*, tar = "internal") no longer creates out-of-spec tar files
    in the very rare case of user or group names longer than 32
    bytes, fixing PR#17871 with thanks to Ivan Krylov.
  * When using the "internal" timezone datetime code, adding a
    fraction of a second no longer adds one second, fixing PR#16856
    from a patch by Ivan Krylov.
  * tools::checkRd() no longer produces spurious notes about
    "unnecessary braces" from multi-line Rd results of \Sexpr macros.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1709208000">- CHANGES IN R 4.3.3:
  NEW FEATURES:
  * iconv() now fixes up variant encoding names such as "utf8"
    case-insensitively.
  DEPRECATED AND DEFUNCT:
  * The legacy encoding = "MacRoman" is deprecated in pdf() and
    postscript(): support was incomplete in earlier versions of R.
  BUG FIXES:
  * Arguments are now properly forwarded to methods on S4 generics
    with ... in the middle of their formal arguments. This was broken
    for the case when a method introduced an argument but did not
    include ... in its own formals. Thanks to Herv'e Pag`es for the
    report PR#18538.
  * Some invalid file arguments to pictex(), postscript() and xfig()
    opened a file called NA rather than throw an error.  These
    included postscript(NULL) (which some people expected to work
    like pdf(NULL)).
  * Passing filename = NA to svg(), cairo_pdf(), cairo_ps() or the
    Cairo-based bitmap devices opened a file called NA: it now throws
    an error.
  * quartz(file = NA) opened a file called NA, including when used as
    a Quartz-based bitmap device.  It now gives an error.
  * rank(&lt;long vector&gt;) now works, fixing PR#18617, thanks to Ilia
    Kats.
  * seq.int() did not adequately check its length.out argument.
  * match(&lt;POSIXct&gt;, .) is correct again for differing time zones,
    ditto for "POSIXlt", fixing PR#18618 reported by Bastian Klein.
  * drop.terms(*, dropx = &lt;0-length&gt;) now works, fixing PR#18563 as
    proposed by Mikael Jagan.
  * drop.terms(*) keeps + offset(.) terms when it should, PR#18565,
    and drop.terms() no longer makes up a response, PR#18566, fixing
    both bugs thanks to Mikael Jagan.
  * getS3method("t", "test") no longer finds the t.test() function,
    fixing PR#18627.
  * pdf() and postscript() support for the documented Adobe encodings
    "Greek" and "Cyrilllic" was missing (although the corresponding
    Windows' codepages could be used).
  * Computations of glyph metric information for pdf() and
    postscript() did not take into account that transliteration could
    replace one character by two or more (only seen on macOS 14) and
    typically warned that the information was not known.
  * rank(x) no longer overflows during integer addition, when
    computing rank average for largish but not-yet long vector x,
    fixing PR#18630, thanks to Ilia Kats.
  * list.files() on Windows now returns also files with names longer
    that 260 bytes (the Windows limit is 260 characters).
    Previously, some file names particularly with 'East Asian'
    characters were omitted.
  * cov2cor(&lt;0 x 0&gt;) now works, fixing PR#18423 thanks to Mikael
    Jagan and Elin Waring.
  * cov2cor(&lt;negative diagonal&gt;) and similar now give one warning
    instead of two, with better wording, fixing PR#18424 thanks to
    Mikael Jagan.
  * tools:: startDynamicHelp() now ensures port is in proper range,
    fixing PR#18645.
  * pbeta(x, a,b) is correct now for x=0 or 1 in the boundary cases
    where a or b or both are 0, fixing PR#18672 thanks to Michael
    Fay.
  * pmatch(x, table) for large table, also called for data frame row
    selection, dfrm[nm, ], is now interruptible, fixing PR#18656.
  * predict(&lt;rank-deficient lm&gt;, newdata=*) fix computing of nbasis,
    see Russ Lenth's comment 29 in PR#16158.
  * Added a work-around for a bug in macOS 14.3.1 and higher which
    prevents R plots in the Quartz Cocoa device from updating on
    screen.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1713960000">- CHANGES IN R 4.4.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Startup banners, R --version, sessionInfo() and R CMD check no
    longer report (64-bit) as part of the platform as this is almost
    universal - the increasingly rare 32-bit platforms will still
    report (32-bit).
    On Windows, ditto for window titles.
  * is.atomic(NULL) now returns FALSE, as NULL is not an atomic
    vector.  Strict back-compatibility would replace is.atomic(foo)
    by (is.null(foo) || is.atomic(foo)) but should happen only
    sparingly.
  NEW FEATURES:
  * The confint() methods for "glm" and "nls" objects have been
    copied to the stats package.  Previously, they were stubs which
    called versions in package MASS. The MASS namespace is no longer
    loaded if you invoke (say) confint(glmfit).  Further, the "glm"
    method for profile() and the plot() and pairs() methods for class
    "profile" have been copied from MASS to stats.  (profile.nls()
    and plot.profile.nls() were already in stats.)
  * The confint() and profile methods for "glm" objects have gained a
    possibility to do profiling based on the Rao Score statistic in
    addition to the default Likelihood Ratio. This is controlled by a
    new test = argument.
  * The pairs() method for "profile" objects has been extended with a
    which = argument to allow plotting only a subset of the
    parameters.
  * The "glm" method for anova() computes test statistics and
    p-values by default, using a chi-squared test or an F test
    depending on whether the dispersion is fixed or free.  Test
    statistics can be suppressed by giving argument test a false
    logical value.
  * In setRepositories() the repositories can be set using their
    names via name = instead of index ind =.
  * methods() and .S3methods() gain a all.names option for the (rare)
    case where functions starting with a . should be included.
  * Serializations can now be interrupted (e.g., by Ctrl-C on a
    Unix-alike) if they take too long, e.g., from save.image(),
    thanks to suggestions by Ivan Krylov and others on R-devel.
  * New startup option --max-connections to set the maximum number of
    simultaneous connections for the session.  Defaults to 128 as
    before: allowed values up to 4096 (but resource limits may in
    practice restrict to smaller values).
  * R on Windows (since Windows 10 2004) now uses the new Segment
    Heap allocator. This may improve performance of some
    memory-intensive applications.
  * When R packages are built, typically by R CMD build &lt;pkg&gt;, the
    new --user=&lt;build_user&gt; option overrides the (internally
    determined) user name, currently Sys.info()["user"] or LOGNAME.
    This is a (modified) fulfillment of Will Landau's suggestion in
    PR#17530.
  * tools::testInstalledBasic() gets new optional arguments outDir
    and testSrcdir, e.g., allowing to use it in a &lt;builddir&gt; !=
    &lt;srcdir&gt; setup, and in standard "binary" Windows installation
  * if* a source tests/ folder is present.
  * range(&lt;DT_with_Inf&gt;, finite = TRUE) now work for objects of class
    "Date", "POSIXct", and "POSIXlt" with infinite entries,
    analogously to range.default(), as proposed by Davis Vaughan on
    R-devel.  Other range()-methods can make use of new function
    .rangeNum().
  * New .internalGenerics object complementing .S3PrimitiveGenerics,
    for documentation and low-level book-keeping.
  * grid() now invisibly returns the x- and y- coordinates at which
    the grid-lines were drawn.
  * norm(., type) now also works for complex matrices.
  * kappa(., exact = TRUE, norm = *) now works for all norms and also
    for complex matrices.  In symmetric / triangular cases, the new
    argument uplo = "U" | "L" allows the upper or lower triangular
    part to be specified.
  * memDecompress(type = "unknown") recognizes compression in the
    default 'zlib' format as used by memCompress(type = "gzip").
  * memCompress() and memDecompress() will use the libdeflate library
    (&lt;https://github.com/ebiggers/libdeflate&gt;) if installed.  This
    uses the same type of compression for type = "gzip" but is 1.5-2x
    faster than the system libz library on some common platforms: the
    speed-up may depend on the library version.
  * diff() for objects of class "Date", "POSIXct", and "POSIXlt"
    accepts a units argument passed via ....
  * Dynamic help now does a much better job of rendering package
    DESCRIPTION metadata.
  * Rprof() gains an event argument and support for elapsed (real)
    time profiling on Unix (PR#18076).
  * filled.contour() gains a key.border argument.
  * tools::update_pkg_po() gets arguments pot_make and mo_make for
    _not_ re-making the corresponding files, and additionally a
    verbose argument.
  * Hexadecimal string colour specifications are now accepted in
    short form, so, for example, we can use "#123", which is
    equivalent to "#112233".
    Thanks to MikeFC for the original idea and Ella Kaye, Malcolm
    Barrett, George Stagg, and Hanne Oberman for the patch.
  * Plain-text help shows \var markup by angle brackets.
  * The new experimental primitive function declare() is intended to
    eventually allow information about R code to be communicated to
    the interpreter, compiler, and code analysis tools. The syntax
    for declarations is still being developed.
  * Functions psmirnov(), qsmirnov() and rsmirnov() in package stats
    have had argument two.sided renamed to alternative, to take into
    account that the permutation distributions of the one-sided
    statistics can be different in the case of ties.  Consequence of
    PR#18582.
  * sort() is now an implicit S4 generic in methods.
  * Formatting and printing, format(z), print(z), of complex vectors
    z no longer zap relatively small real or imaginary parts to zero,
    fixing PR#16752.  This is an API change, as it was documented
    previously to round real and imaginary parts together on purpose,
    producing nicer looking output.  As mentioned, e.g. in the PR,
    this change is compatible with many other "R-like" programming
    environments.
    We have simplified the internal code and now basically format the
    real and imaginary parts independently of each other.
  * New experimental functions Tailcall() and Exec() to support
    writing stack-space-efficient recursive functions.
  * Where characters are attempted to be plotted by pdf(),
    postscript() and xfig() which are not in the selected 8-bit
    character set (most often Latin-1) and the R session is using a
    UTF-8 locale, the warning messages will show the UTF-8 character
    rather than its bytes and one dot will be substituted per
    character rather than per byte.  (Platforms whose iconv() does
    transliteration silently plot the transliteration.)
    In a UTF-8 locale some transliterations are now done with a
    warning (e.g., dashes and Unicode minus to hyphen, ligatures are
    expanded, permille (‰) is replaced by o/oo), although the OS may
    have got there first.  These are warnings as they will continue
    to be replaced by dots in earlier versions of R.
  * The matrix multiplication functions crossprod() and tcrossprod()
    are now also primitive and S3 generic, as %*% had become in R
    4.3.0.
  * source() and example() have a new optional argument catch.aborts
    which allows continued evaluation of the R code after an error.
  * The non-Quartz tiff() devices allow additional types of
    compression if supported by the platform's libtiff library.
  * The list of base and recommended package names is now provided by
    tools::standard_package_names().
  * cairo_pdf() and cairo_ps() default to onefile = TRUE to closer
    match pdf() and postscript().
  * New option catch.script.errors provides a documented way to catch
    errors and then continue in non-interactive use.
  * L %||% R newly in base is an expressive idiom for the phrases
    if(!is.null(L)) L else R or if(is.null(L)) R else L.
  * The return value from warnings() now always inherits from
    "warnings" as documented, now also in the case of no warnings
    where it previously returned NULL.
  * as.complex("1i") now returns 0 + 1i instead of NA with a warning.
  * z &lt;- c(NA, 1i) now keeps the imaginary part Im(z[1]) == 0, no
    longer coercing to NA_complex_.  Similarly, cumsum(z) correctly
    sums real and imaginary parts separately, i.e., without
    "crosstalk" in case of NAs.
  * On Alpine Linux iconv() now maps "latin2", "latin-2", "latin9"
    and "latin-9" to encoding names the OS knows about
    (case-insensitively).
  * iconv(sub = "Unicode") now always zero-pads to four (hex) digits,
    rather than to 4 or 8.  (This seems to have become the convention
    once Unicode restricted the number of Unicode points to 2^21 - 1
    and so will never need more than 6 digits.)
  * NCOL(NULL) now returns 0 instead of 1, for consistency with
    cbind().
  * The information for the Euro glyph missing from the Adobe .afm
    files for the Courier, Helvetica and Times families has been
    copied from their URW equivalents - this will improve vertical
    centring in the pdf() and postscript() devices.
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.12.0.  The changes are almost entirely cosmetic.
  * The included LAPACK sources have been updated to version 3.12.0
    and some further double-complex routines added.
  * There are new font families for the 2014--5 URW 2.0 fonts (see
    ?pdf) which are included in recent versions of Ghostscript.
    These have font widths for most Greek glyphs and a few others
    which were missing from the original versions (whose font
    families remain available for reproducibility, although
    Ghostscript-based viewers will render using the 2.0 versions).
  * Improve the large-n efficiency of as.matrix(&lt;dist&gt;), thanks an R
    contributors effort, notably by Tim Taylor and Heather Turner,
    see PR#18660.
  * The default and numeric methods of all.equal() get a check.class
    option.
  * zapsmall() gets new optional arguments, function mFUN and min.d,
    for extra flexibility; fulfills a wish in PR#18199.  Also, it is
    now an implicit S4 generic in package methods.
  * The Rd filter for aspell() gains an ignore argument.
  * New generic function sort_by(), primarily useful for the
    data.frame method which can be used to sort rows of a data frame
    by one or more columns.
  * The icence headers for the RPC code in src/extra/xdr have been
    updated to use the GPL-compatible licence published by Oracle
    America in 2010.
  * New function pkg2HTML() in tools to create single-page HTML
    reference manuals for R packages.
  * The byte code evaluator now uses less C stack space for recursive
    calls to byte-compiled functions. It also makes more of an effort
    to avoid allocations for scalar return values.
  * New completion option backtick (disabled by default) allows
    non-syntactic completions to be wrapped in backquotes. This is
    currently only useful for Jupyter notebooks via the IRkernel
    package, and may cause problems for other backends.
  INSTALLATION:
  * The parser has been updated to work with bison 3.8.2, which is
    now used for the pre-generated parsers in gram.c, file.c, and
    gramRd.c. A few parser error messages have changed, which may
    affect code that relies on exact messages.
  INSTALLATION on a UNIX-ALIKE:
  * System valgrind headers are now required to use configure option
  - -with-valgrind-instrumentation with value 1 or 2.
  * configure will warn if it encounters a 32-bit build, as that is
    nowadays almost untested.
  * Environment variable R_SYSTEM_ABI is no longer used and so no
    longer recorded in etc/Renviron (it was not on Windows and was
    only ever used when preparing package tools).
  * If the libdeflate library and headers are available, libdeflate
    rather than libz is used to (de)compress R objects in lazy-load
    databases.  Typically tasks spend up to 5% of their time on such
    operations, although creating lazy-data databases is one of the
    exceptions.
    This can be suppressed if the library is available by the
    configure option --without-libdeflate-compression.
  * configure option --enable-lto=check has not worked reliably since
    2019 and has been removed.
  * The minimum autoconf requirement for a maintainer build has been
    increased to autoconf 2.71.
    It is intended to increase this to 2.72 for R 4.5.0: the
    distributed configure file was generated using 2.72.
  * The minimum version requirement for an external LAPACK has been
    reduced to 3.9.0.
  * No default C++ compiler is set if no C++17 compiler is detected:
    there is no longer an automatic fallback to C++14 or C++11.
    Compilers from the last five years should have sufficient
    support: for others macros CXX and CXXSTD can be set in file
    config.site to provide a fallback if needed.
    The Objective-C++ compiler now by default uses the standard
    selected by R for C++ (currently C++17) rather than the default
    standard for the C++ compiler (which on macOS is still C++98).
  INSTALLATION on macOS:
  * A new configure option --with-newAccelerate makes use of Apple's
    'new' BLAS / LAPACK interfaces in their Accelerate framework.
    Those interfaces are only available in macOS 13.3 or later, and
    building requires SDK 13.3 or later (from the Command Line Tools
    or Xcode 14.3 or later).
    By default the option uses new Accelerate for BLAS calls: to also
    use it for LAPACK use option --with-newAccelerate=lapack.  The
    later interfaces provide LAPACK 3.9.1 rather than 3.2.1: 3.9.1 is
    from 2021-04 and does not include the improved algorithms
    introduced in LAPACK 3.10.0 (including for BLAS calls).
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools44, an update of the Rtools43 toolchain.  It is
    based on GCC 13 and newer versions of MinGW-W64, binutils and
    libraries (targeting 64-bit Intel CPUs).  R-devel can no longer
    be built using Rtools43 without changes.
  * Rtools44 has experimental support for 64-bit ARM (aarch64) CPUs
    _via_ the LLVM 17 toolchain using lld, clang/flang-new and
    libc++.
  UTILITIES:
  * R CMD check notes when S4-style exports are used without
    declaring a strong dependence on package methods.
  * tools::checkRd() (used by R CMD check) detects more problems with
    \Sexpr-based dynamic content, including bad nesting of \Sexprs
    and invalid arguments.
  * tools::checkRd() now reports Rd titles and section names ending
    in a period; this is ignored by R CMD check unless environment
    variable _R_CHECK_RD_CHECKRD_MINLEVEL_ is set to -5 or smaller.
  * R CMD check now notes Rd files without an \alias, as long
    documented in 'Writing R Extensions' §1.3.1.  The check for a
    missing \description has been moved from tools::checkRd() to
    tools::checkRdContents().
  * R CMD check now visits inst/NEWS.Rd and OS-specific man
    subdirectories when checking Rd files.
  * tools::checkDocFiles() and tools::checkRdContents() now also
    check internal Rd files by default, but "specially" (ignoring
    missing documentation of arguments).
  * R CMD Rdiff gets option --useEx.
  * R CMD check now warns on non-portable uses of Fortran KIND such
    as INTEGER(KIND=4) and REAL(KIND=8).
    To see the failing lines set environment variable
    _R_CHECK_FORTRAN_KIND_DETAILS_ to a true value.
  * When checking Rd files, R CMD check now notes some of the "lost
    braces" that tools::checkRd() finds.  Typical problems are Rd
    macros missing the initial backslash (e.g., code{...}), in-text
    set notation (e.g., {1, 2}, where the braces need escaping), and
    \itemize lists with \describe-style entries of the form
    \item{label}{description}.
  * R CMD INSTALL (and hence check) will compile C++ code with
  - DR_NO_REMAP if environment variable _R_CXX_USE_NO_REMAP_ is set
    to a true value.  It is planned that this will in future become
    the default for compiling C++.
  * The new built-in Rd macro \dontdiff{} can be used to mark example
    code whose output should be ignored when comparing check output
    to reference output (tests/Examples/&lt;pkg&gt;-Ex.Rout.save).  The
    \dontdiff tag, like \donttest, is _not_ shown on the rendered
    help page, so provides a clean alternative to ##
    IGNORE_RDIFF_(BEGIN|END) comments.
  * R CMD build when there is no NAMESPACE, now uses the recommended
    exportPattern("^[^.]"), instead of exporting everything.
  * R CMD check now warns about non-ASCII characters in the NAMESPACE
    file (in addition to R files). Such packages are not portable and
    may fail to install on some platforms.
  C-LEVEL FACILITIES:
  * Headers R_ext/Applic.h and R-ext/Linpack.h used to include
    R_ext/BLAS.h although this was undocumented and unneeded by their
    documented entry points.  They no longer do so.
  * New function R_missing(), factored out from do_missing(), used to
    fix PR#18579.
  * SEXP type S4SXP has been renamed to OBJSXP to support
    experimenting with alternative object systems.  The S4SXP value
    can still be used in C code but is now deprecated.  Based on
    contributions from the R Consortium's Object-Oriented Programming
    Working Group.
  * New function pow1p(x,y) for accurate (1+x)^y.
  * mkCharLenCE was incorrectly documented to take a size_t length
    but was implemented with int (and character strings in R are
    limited to 2^31 - 1 bytes).
  DEPRECATED AND DEFUNCT:
  * data() no longer handles zipped data from long-defunct (since R
    2.13.0) --use-zip-data installations.
  * The legacy graphics devices pictex() and xfig() are now
    deprecated.  They do not support recent graphics enhancements and
    their font handling is rudimentary. The intention is to retain
    them for historical interest as long as they remain somewhat
    functional.
  * Support for encoding = "MacRoman" has been removed from the pdf()
    and postscript() devices - this was a legacy encoding supporting
    classic macOS up to 2001 and no longer has universal libiconv
    support.
  * is.R() is deprecated as no other S dialect is known to be in use
    (and this could only identify historical dialects, not future
    ones).
    Further information on calls can be obtained by setting the
    environment variable _R_DEPRECATED_IS_R_ to error which turns the
    deprecation warning into an error and so by default gives a
    traceback.  (This is done by R CMD check --as-cran.)
  * UseMethod() no longer forwards local variables assigned in the
    generic function into method call environments before evaluating
    the method body. This makes method calls behave more like
    standard function calls and makes method code easier to analyze
    correctly.
  * The twelve as.data.frame.&lt;class&gt;() methods which were deprecated
    only via _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ and in R CMD
    check --as-cran are formally deprecated now in favour of calling
    as.data.frame() or as.data.frame.vector().  The deprecation
    "check" now works also when as.data.frame() is S4 generic thanks
    to Ivan Krylov.
  * The default method for the directional comparison operators &lt;, &gt;,
    &lt;=, and &gt;= now signals an error when one of the operands is a
    language object, i.e. a symbol or a call.
  * For terms.formula(), deprecate abb and neg.out arguments
    _formally_ in addition to just documenting it.
  BUG FIXES:
  * The methods package is more robust to not being attached to the
    search path.  More work needs to be done.
  * pairwise.t.test() misbehaved when subgroups had 0 DF for
    variance, even with pool.sd = TRUE.  (PR#18594 by Jack Berry).
  * Probability distribution functions [dpq]&lt;distrib&gt;(x, *), but also
    bessel[IKJY](x, .) now consistently preserve attributes(x) when
    length(x) == 0, e.g., for a 2 x 0 matrix, thanks to Karolis
    Koncevičius' report PR#18509.
  * Group "Summary" computations such as sum(1:3, 4, na.rm = 5, NA,
    7, na.rm = LL) now give an error instead of either 17 or NN for
    LL true or false, as proposed by Ivan Krylov on the R-devel
    mailing list.  (This also means it is now an error to specify
    na.rm more than once.)
  * as.complex(x) now returns complex(real = x, imaginary = 0) for
    _all_ numerical and logical x, notably also for NA or
    NA_integer_.
  * Directories are now omitted by file.copy(, recursive = FALSE) and
    in file.append() (PR#17337).
  * gsub() and sub() are now more robust to integer overflow when
    reporting errors caused by too large input strings (PR#18346).
  * Top-level handlers are now more robust to attempts to remove a
    handler whilst handlers are running (PR#18508).
  * The handling of Alt+F4 in dialogs created on Windows using
    GraphApp has been fixed (PR#13870).
  * density() more consistently computes grid values for the
    FFT-based convolution, following Robert Schlicht's analysis and
    proposal in PR#18337, correcting density values typically by a
    factor of about 0.999.  Argument old.coords = TRUE provides back
    compatibility.
  * palette.colors() gains a name argument that defaults to FALSE
    controlling whether the vector of colours that is returned has
    names (where possible).  PR#18529.
  * tools::xgettext() no longer extracts the (non-translatable) class
    names from warningCondition and errorCondition calls.
  * S3method(&lt;gen&gt;, &lt;class&gt;, &lt;func&gt;) in the NAMESPACE file now works
    (again) when &lt;func&gt; is visible from the namespace, e.g.,
    imported, or in base.
  * getParseData(f) now also works for a function defined in the
    first of several &lt;pkg&gt;/R/*.R source files, thanks to Kirill
    Müller's report and Duncan Murdoch's patch in PR#16756.
  * Rd \Sexpr macros with nested #ifdef conditionals were not
    processed.
  * A non-blocking connection with non-default encoding (such as a
    socket) now correctly returns from readLines() after new data has
    arrived also when its EOF had been reached previously.  Thanks to
    Peter Meilstrup's report on R-devel and Ivan Krylov's report and
    patch proposal in PR#18555.
  * tools::checkRdContents() failed to detect empty argument
    descriptions when they spanned multiple lines, including those
    generated by prompt().  These cases are now noted by R CMD check.
  * Plain-text help no longer outputs spurious colons in the
    arguments list (for multi-line \item labels in the Rd source).
  * kappa() and rcond() work correctly in more cases; kappa(., norm =
    "2") now warns that it computes the 1-norm with (default) exact =
    FALSE; prompted by Mikael Jagan's quite comprehensive PR#18543.
  * Rd skeletons generated by prompt() or promptData() now use a
    dummy title (so R CMD build works).  tools::checkRdContents() has
    been updated to detect such template leftovers, including from
    promptPackage().
  * When S4 method dispatch fails because no method was found, the
    error message now includes the signature argument names; thanks
    to Michael Chirico's proposal on the R-devel list.
  * withAutoprint({ .. }) now preserves srcrefs previously lost,
    thanks to Andrew Simmons' report plus fix in PR#18572.
  * transform.data.frame() no longer adjusts names; in particular,
    untransformed variables are kept as-is, including those with
    syntactically invalid names (PR#17890).
  * The keep.source option for Rd \Sexpr blocks is no longer ignored.
  * The formula methods for t.test() and wilcox.test() now catch when
    paired is passed, addressing PR#14359; use Pair(x1, x2) ~ 1 for a
    paired test.
  * The level reported in the browser prompt was often too large. It
    now shows the number of browser contexts on the stack.
  * For cbind() and rbind(), the optional deparse.level argument is
    now properly passed to methods, thanks to Mikael Jagan's PR#18579
    and comments there.
  * Some error and warning messages for large ('long vector')
    matrix(v, nr, nc) and dim(m) &lt;- d are now correct about sizes,
    using long long formatting, fixing PR#18612 (and more) reported
    by Mikael Jagan.
  * readChar(useBytes = TRUE) now terminates strings even when the
    underlying connection uses extra spaces in the input buffer.
    This fixes problems with extra garbage seen with gzip
    connections, PR#18605.
  * Named capture in PCRE regular expressions now works also with
    more than 127 named groups (PR#18588).
  * Datetime functions are now robust against long jumps when dealing
    with internal time zone changes.  This avoids confusing warnings
    about an invalid time zone, previously triggered by turning
    warnings into errors or handling them via tryCatch (PR#17966,
    PR#17780).
  * Datetime functions now restore even an empty TZ environment
    variable after internal time zone changes (PR#17724).  This makes
    results of datetime functions with this (typically unintentional)
    setting more predictable.
  * drop.terms(*) now drops response as by default, keep.response =
    FALSE, fixing PR#18564 thanks to Mikael Jagan.
  * dummy.coef(.) now also works for lm()-models with character
    categorical predictor variables rather than factor ones, fixing
    PR#18635 reported by Jinsong Zhao.
  * formals(f) &lt;- formals(f) now also works for a function w/o
    arguments and atomic _constant_ body(f).
  * Correct as.function(&lt;invalid list&gt;, .)'s error message.
  * removeSource() is yet more thorough in finding and removing
    "srcref" and the other source references from parsed R language
    chunks, fixing PR#18638 thanks to Andrew Simmons.
  * dgeom() is more accurate now, notably when its result is very
    small, fixing PR#18642 thanks to the proposal of Morten Welinder,
    also improving other instances where C level binom_raw(x, n, ..)
    has x == 0 or x== n.
  * warning() with options(warn = 1) has improved output for
    multi-line messages.
  * axis.Date() and axis.POSIXct() now respect the par("lab") setting
    for the number of pretty() intervals.
  * Comparisons for language objects (which are based on deparsing)
    are now more careful about using accurate deparsed results
    (PR#18676).
  * Plain-text help (Rd2txt) now correctly preserves blank lines
    following single-line \dontrun code.
  * &lt;POSIXlt&gt;[*] no longer sets wrong "balanced" attribute, fixing
    PR#18681 thanks to Mikael Jagan.
  * str(&lt;classed-call&gt;) now deparses the call as expected, fixing
    PR#18684, reported by Dave Slager.
  * In Rd examples, code following the closing brace of a \dontrun,
    \dontshow or \donttest tag on the same line is no longer skipped
    when R CMD check runs the examples.
  * as.data.frame(matrix(*, ncol=0)) now gets valid names() and
    colnames(); reported by Davis Vaughan on the R-devel list.
  * Internal Mathlib function stirlerr(n) is now almost fully
    (52-bit) accurate for all n &gt;= ~5.9 and more accurate also in the
    range 1 -- 5.9.  This entails small ("after 12th decimal")
    changes in density functions, e.g., dgamma() in _some_ regions of
    their support.  The fix was partly prompted by Morten Welinder's
    PR#18640.
  * Numbers like 9876543.2 are now considered non-integer by Mathlib
    internal R_nonint(), amending original fix of PR#15734.
  * Rd comment lines no longer cause broken paragraphs in the
    rendered PDF and plain-text help. In code blocks, pure comment
    lines (starting with %) no longer produce an empty line.
  * xtabs(Freq ~ .) now consistently defaults to na.action = na.pass,
    using na.rm = FALSE (added as an argument) when summing over Freq
    (PR#17770).
  * tools::testInstalledPackage() is no longer silent about failures
    from running examples or tests and its return code no longer
    ignores failures from checking vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1718366400">- CHANGES IN R 4.4.1:
  C-LEVEL FACILITIES:
  * Functions R_atof and R_strtod declared in header R_ext/Utils.h
    are now documented in 'Writing R Extensions' and so formally part
    of the API.
  * The non-API entry points Rf_setSVector, Rf_StringFalse,
    Rf_StringTrue and Rf_isBlankString have been added to those
    reported by R CMD check.
  * The new function Rf_allocLang is now available. This provides an
    alternative to the idiom of calling Rf_allocList followed by
    SET_TYPEOF.
  UTILITIES:
  * R CMD check now reports as warnings what gfortran calls 'Fortran
    2018 deleted features', all of which have long been marked as
    'obsolescent' and some of which were deleted in Fortran 2008 or
    earlier.  Fortran compilers are no longer required to support
    these.
  BUG FIXES:
  * as.numeric(), scan(), type.convert() and other places which use
    the internal C function R_strtod now require a _non-empty_ digit
    sequence in a decimal or binary exponent.  This aligns with the
    C/POSIX standard for strtod and with ?NumericConstants.
  * as.data.frame(m, make.names=NA) now works correctly for a matrix
    m with NA's in row names.
  * The error message from &lt;POSIXlt&gt;[["hour"]] and similar now
    mentions *[[, "hour"]], as wished for in PR#17409 and proposed by
    Michael Chirico.
  * qbinom() and potentially qpois(), qnbinom(), no longer sometimes
    fail accurate inversion (of pbinom(), etc), thanks to Christopher
    Chang's report and patch in PR#18711.
  * The internal help server on Windows can again serve requests sent
    in quick succession, fixing a regression in R 4.4.0.
  * debugcall(&lt;S3Generic&gt;()) now also works when a corresponding
    S4-generic version is in the methods cache (PR#18143).
  * Package tools' toTitleCase(ch0) now returns character(0) when ch0
    is of zero length; fixing PR#18724, reported by David Hugh Jones.
  * R CMD check is no longer broken (without a check result and no
    explanation in 00check.log) for a package which declares an
    invalid VignetteBuilder in DESCRIPTION but has no vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1730376000">- CHANGES IN R 4.4.2:
  C-LEVEL FACILITIES:
  * The S-compatibility macros F77_COM and F77_COMDECL defined in
    header R_ext/RS.h are deprecated and will be removed shortly.  We
    could find no record of their use.
  BUG FIXES:
  * Mathlib function lgammacor(x) no longer warns about underflow to
    zero for large x.
  * Text widths and heights were incorrectly reported by the Quartz
    device if the drawing context didn't exist yet (typically when
    drawing off-screen to a window that is yet to appear, see
    PR#18591).
  * The Quartz device could segfault in cases where paths with spaces
    are used in the new glyph drawing API.  Thanks to Tomek
    Gieorgijewski (PR#18758).
  * On macOS in R CRAN builds, it is again possible to read
    little-endian UTF-16 text with a BOM from a connection using
    encoding="UTF-16".  Users building R from source should avoid
    using the system libiconv in macOS 14.1 and later.
  * methods' internal .requirePackage() now re-enables primitive
    method dispatch when needed; thanks to Ivan Krylov for
    demystifying CRAN package check failures on the R-devel mailing
    list.</changelog>
</package>
<package pkgid="cb93dc2043baef057ca5118fd1c31364789c728aaf71211b02e5ab1a7e0faf3519c9b35410be3336f8cccb98bbf2077ce169a6ee86c851fd1029a874ca1ecea5" name="R-core-packages" arch="x86_64">
  <version epoch="0" ver="4.4.2" rel="51.0.2.2.sr20241103"/>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1620302400">- To get in sync with d:l:R:autoCRAN the Matrix package's split
  in -devel was reversed.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339200">- improved spec file according to comments of dimstar in
  https://build.opensuse.org/request/show/892685</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339201">- CHANGES IN R 4.1.0:
  FUTURE DIRECTIONS:
  * It is planned that the 4.1.x series will be the last to support
    32-bit Windows, with production of binary packages for that
    series continuing until early 2023.
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Data set esoph in package datasets now provides the correct
    numbers of controls; previously it had the numbers of cases added
    to these.  (Reported by Alexander Fowler in PR#17964.)
  NEW FEATURES:
  * www.omegahat.net is no longer one of the repositories known by
    default to setRepositories().  (Nowadays it only provides source
    packages and is often unavailable.)
  * Function package_dependencies() (in package tools) can now use
    different dependency types for direct and recursive dependencies.
  * The checking of the size of tarball in R CMD check --as-cran
    &lt;pkg&gt; may be tweaked via the new environment variable
    _R_CHECK_CRAN_INCOMING_TARBALL_THRESHOLD_, as suggested in
    PR#17777 by Jan Gorecki.
  * Using c() to combine a factor with other factors now gives a
    factor, an ordered factor when combining ordered factors with
    identical levels.
  * apply() gains a simplify argument to allow disabling of
    simplification of results.
  * The format() method for class "ftable" gets a new option justify.
    (Suggested by Thomas Soeiro.)
  * New ...names() utility.  (Proposed by Neal Fultz in PR#17705.)
  * type.convert() now warns when its as.is argument is not
    specified, as the help file always said it _should_.  In that
    case, the default is changed to TRUE in line with its change in
    read.table() (related to stringsAsFactor) in R 4.0.0.
  * When printing list arrays, classed objects are now shown _via_
    their format() value if this is a short enough character string,
    or by giving the first elements of their class vector and their
    length.
  * capabilities() gets new entry "Rprof" which is TRUE when R has
    been configured with the equivalent of --enable-R-profiling (as
    it is by default).  (Related to Michael Orlitzky's report
    PR#17836.)
  * str(xS4) now also shows extraneous attributes of an S4 object
    xS4.
  * Rudimentary support for vi-style tags in rtags() and R CMD rtags
    has been added.  (Based on a patch from Neal Fultz in PR#17214.)
  * checkRdContents() is now exported from tools; it and also
    checkDocFiles() have a new option chkInternal allowing to check
    Rd files marked with keyword "internal" as well.  The latter can
    be activated for R CMD check via environment variable
    _R_CHECK_RD_INTERNAL_TOO_.
  * New functions numToBits() and numToInts() extend the raw
    conversion utilities to (double precision) numeric.
  * Functions URLencode() and URLdecode() in package utils now work
    on vectors of URIs.  (Based on patch from Bob Rudis submitted
    with PR#17873.)
  * path.expand() can expand ~user on most Unix-alikes even when
    readline is not in use.  It tries harder to expand ~, for example
    should environment variable HOME be unset.
  * For HTML help (both dynamic and static), Rd file links to help
    pages in external packages are now treated as references to
    topics rather than file names, and fall back to a file link only
    if the topic is not found in the target package. The earlier rule
    which prioritized file names over topics can be restored by
    setting the environment variable _R_HELP_LINKS_TO_TOPICS_ to a
    false value.
  * c() now removes NULL arguments before dispatching to methods,
    thus simplifying the implementation of c() methods, _but_ for
    back compatibility keeps NULL when it is the first argument.
    (From a report and patch proposal by Lionel Henry in PR#17900.)
  * Vectorize()'s result function's environment no longer keeps
    unneeded objects.
  * Function ...elt() now propagates visibility consistently with
    ..n.  (Thanks to Lionel Henry's PR#17905.)
  * capture.output() no longer uses non-standard evaluation to
    evaluate its arguments.  This makes evaluation of functions like
    parent.frame() more consistent.  (Thanks to Lionel Henry's
    PR#17907.)
  * packBits(bits, type="double") now works as inverse of
    numToBits().  (Thanks to Bill Dunlap's proposal in PR#17914.)
  * curlGetHeaders() has two new arguments, timeout to specify the
    timeout for that call (overriding getOption("timeout")) and TLS
    to specify the minimum TLS protocol version to be used for
    https:// URIs (_inter alia_ providing a means to check for sites
    using deprecated TLS versions 1.0 and 1.1).
  * For nls(), an optional constant scaleOffset may be added to the
    denominator of the relative offset convergence test for cases
    where the fit of a model is expected to be exact, thanks to a
    proposal by John Nash.  nls(*, trace=TRUE) now also shows the
    convergence criterion.
  * Numeric differentiation _via_ numericDeriv() gets new optional
    arguments eps and central, the latter for taking central divided
    differences.  The latter can be activated for nls() via
    nls.control(nDcentral = TRUE).
  * nls() now passes the trace and control arguments to getInitial(),
    notably for all self-starting models, so these can also be fit in
    zero-noise situations via a scaleOffset.  For this reason, the
    initial function of a selfStart model must now have ... in its
    argument list.
  * bquote(splice = TRUE) can now splice expression vectors with
    attributes: this makes it possible to splice the result of
    parse(keep.source = TRUE).  (Report and patch provided by Lionel
    Henry in PR#17869.)
  * textConnection() gets an optional name argument.
  * get(), exists(), and get0() now signal an error if the first
    argument has length greater than 1.  Previously additional
    elements were silently ignored.  (Suggested by Antoine Fabri on
    R-devel.)
  * R now provides a shorthand notation for creating functions, e.g.
    \(x) x + 1 is parsed as function(x) x + 1.
  * R now provides a simple native forward pipe syntax |&gt;.  The
    simple form of the forward pipe inserts the left-hand side as the
    first argument in the right-hand side call.  The pipe
    implementation as a syntax transformation was motivated by
    suggestions from Jim Hester and Lionel Henry.
  * all.equal(f, g) for functions now by default also compares their
    environment(.)s, notably via new all.equal method for class
    function.  Comparison of nls() fits, e.g., may now need
    all.equal(m1, m2, check.environment = FALSE).
  * .libPaths() gets a new option include.site, allowing to _not_
    include the site library.  (Thanks to Dario Strbenac's suggestion
    and Gabe Becker's PR#18016.)
  * Lithuanian translations are now available.  (Thanks to Rimantas
    Zakauskas.)
  * names() now works for DOTSXP objects.  On the other hand, in
    R-lang, the R language manual, we now warn against relying on the
    structure or even existence of such dot-dot-dot objects.
  * all.equal() no longer gives an error on DOTSXP objects.
  * capabilities("cairo") now applies only to the file-based devices
    as it is now possible (if very unusual) to build R with Cairo
    support for those but not for X11().
  * There is optional support for tracing the progress of
    loadNamespace() - see its help.
  * (Not Windows.)  l10n_info() reports an additional element, the
    name of the encoding as reported by the OS (which may differ from
    the encoding part (if any) of the result from
    Sys.getlocale("LC_CTYPE").
  * New function gregexec() which generalizes regexec() to find _all_
    disjoint matches and well as all substrings corresponding to
    parenthesized subexpressions of the given regular expression.
    (Contributed by Brodie Gaslam.)
  * New function charClass() in package utils to query the
    wide-character classification functions in use (such as
    iswprint).
  * The names of quantile()'s result no longer depend on the global
    getOption("digits"), but quantile() gets a new optional argument
    digits = 7 instead.
  * grep(), sub(), regexp and variants work considerably faster for
    long factors with few levels.  (Thanks to Michael Chirico's
    PR#18063.)
  * Provide grouping of x11() graphics windows within a window
    manager such as Gnome or Unity; thanks to a patch by Ivan Krylov
    posted to R-devel.
  * The split() method for class data.frame now allows the f argument
    to be specified as a formula.
  * sprintf now warns on arguments unused by the format string.
  * New palettes "Rocket" and "Mako" for hcl.colors() (approximating
    palettes of the same name from the 'viridisLite' package).
    Contributed by Achim Zeileis.
  * The base environment and its namespace are now locked (so one can
    no longer add bindings to these or remove from these).
  * Rterm handling of multi-byte characters has been improved,
    allowing use of such characters when supported by the current
    locale.
  * Rterm now accepts ALT+ +xxxxxxxx sequences to enter Unicode
    characters as hex digits.
  * Environment variable LC_ALL on Windows now takes precedence over
    LC_CTYPE and variables for other supported categories, matching
    the POSIX behaviour.
  * duplicated() and anyDuplicated() are now optimized for integer
    and real vectors that are known to be sorted via the ALTREP
    framework. Contributed by Gabriel Becker via PR#17993.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 14
    and so packages that provide graphics devices should be
    reinstalled.
  * Graphics devices should now specify deviceVersion to indicate
    what version of the graphics engine they support.
  * Graphics devices can now specify deviceClip.  If TRUE, the
    graphics engine will never perform any clipping of output itself.
    The clipping that the graphics engine does perform (for both
    canClip = TRUE and canClip = FALSE) has been improved to avoid
    producing unnecessary artifacts in clipped output.
  * The grid package now allows gpar(fill) to be a linearGradient(),
    a radialGradient(), or a pattern().  The viewport(clip) can now
    also be a grob, which defines a clipping path, and there is a new
    viewport(mask) that can also be a grob, which defines a mask.
    These new features are only supported so far on the Cairo-based
    graphics devices and on the pdf() device.
  * (Not Windows.)  A warning is given when a Cairo-based type is
    specified for a png(), jpeg(), tiff() or bmp() device but Cairo
    is unsupported (so type = "Xlib" is tried instead).
  * grSoftVersion() now reports the versions of FreeType and
    FontConfig if they are used directly (not _via_ Pango), as is
    most commonly done on macOS.
  C-LEVEL FACILITIES:
  * The _standalone_ libRmath math library and R's C API now provide
    log1pexp() again as documented, and gain log1mexp().
  INSTALLATION on a UNIX-ALIKE:
  * configure checks for a program pkgconf if program pkg-config is
    not found.  These are now only looked for on the path (like
    almost all other programs) so if needed specify a full path to
    the command in PKG_CONFIG, for example in file config.site.
  * C99 function iswblank is required - it was last seen missing ca
    2003 so the workaround has been removed.
  * There are new configure options --with-internal-iswxxxxx,
  - -with-internal-towlower and --with-internal-wcwidth which allows
    the system functions for wide-character classification,
    case-switching and width (wcwidth and wcswidth) to be replaced by
    internal ones.  The first has long been used on macOS, AIX (and
    Windows) but this enables it to be unselected there and selected
    for other platforms (it is the new default on Solaris).  The
    second is new in this version of R and is selected by default on
    macOS and Solaris.  The third has long been the default and
    remains so as it contains customizations for East Asian
    languages.
    System versions of these functions are often minimally
    implemented (sometimes only for ASCII characters) and may not
    cover the full range of Unicode points: for example Solaris (and
    Windows) only cover the Basic Multilingual Plane.
  * Cairo installations without X11 are more likely to be detected by
    configure, when the file-based Cairo graphics devices will be
    available but not X11(type = "cairo").
  * There is a new configure option --with-static-cairo which is the
    default on macOS.  This should be used when only static cairo
    (and where relevant, Pango) libraries are available.
  * Cairo-based graphics devices on platforms without Pango but with
    FreeType/FontConfig will make use of the latter for font
    selection.
  LINK-TIME OPTIMIZATION on a UNIX-ALIKE:
  * Configuring with flag --enable-lto=R now also uses LTO when
    installing the recommended packages.
  * R CMD INSTALL and R CMD SHLIB have a new flag --use-LTO to use
    LTO when compiling code, for use with R configured with
  - -enable-lto=R.  For R configured with --enable-lto, they have
    the new flag --no-use-LTO.
    Packages can opt in or out of LTO compilation _via_ a UseLTO
    field in the DESCRIPTION file.  (As usual this can be overridden
    by the command-line flags.)
  BUILDING R on Windows:
  * for GCC &gt;= 8, FC_LEN_T is defined in config.h and hence character
    lengths are passed from C to Fortran in _inter alia_ BLAS and
    LAPACK calls.
  * There is a new text file src/gnuwin32/README.compilation, which
    outlines how C/Fortran code compilation is organized and
    documents new features:
  * R can be built with Link-Time Optimization with a suitable
    compiler - doing so with GCC 9.2 showed several
    inconsistencies which have been corrected.
  * There is support for cross-compiling the C and Fortran code
    in R and standard packages on suitable (Linux) platforms.
    This is mainly intended to allow developers to test later
    versions of compilers - for example using GCC 9.2 or 10.x has
    detected issues that GCC 8.3 in Rtools40 does not.
  * There is experimental support for cross-building R packages
    with C, C++ and/or Fortran code.
  * The R installer can now be optionally built to support a single
    architecture (only 64-bit or only 32-bit).
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++14 where
    available (which it is on all currently checked platforms): if
    not (as before) C++11 is used if available otherwise C++ is not
    supported.
    Packages which specify C++11 will still be installed using C++11.
    C++14 compilers may give deprecation warnings, most often for
    std::random_shuffle (deprecated in C++14 and removed in C++17).
    Either specify C++11 (see 'Writing R Extensions') or modernize
    the code and if needed specify C++14.  The latter has been
    supported since R 3.4.0 so the package's DESCRIPTION would need
    to include something like
    Depends: R (&gt;= 3.4)
  PACKAGE INSTALLATION on Windows:
  * R CMD INSTALL and R CMD SHLIB make use of their flag --use-LTO
    when the LTO_OPT make macro is set in file etc/${R_ARCH}/Makeconf
    or in a personal/site Makevars file.  (For details see 'Writing R
    Extensions' SS4.5.)
    This provides a valuable check on code consistency.  It does work
    with GCC 8.3 as in Rtools40, but that does not detect everything
    the CRAN checks with current GCC do.
  PACKAGE INSTALLATION on macOS:
  * The default personal library directory on builds with
  - -enable-aqua (including CRAN builds) now differs by CPU type,
    one of
    ~/Library/R/x86_64/x.y/library
    ~/Library/R/arm64/x.y/library
    This uses the CPU type R (and hence the packages) were built for,
    so when a x86_64 build of R is run under Rosetta emulation on an
    arm64 Mac, the first is used.
  UTILITIES:
  * R CMD check can now scan package functions for bogus return
    statements, which were possibly intended as return() calls (wish
    of PR#17180, patch by Sebastian Meyer). This check can be
    activated via the new environment variable
    _R_CHECK_BOGUS_RETURN_, true for --as-cran.
  * R CMD build omits tarballs and binaries of previous builds from
    the top-level package directory.  (PR#17828, patch by Sebastian
    Meyer.)
  * R CMD check now runs sanity checks on the use of LazyData, for
    example that a data directory is present and that
    LazyDataCompression is not specified without LazyData and has a
    documented value.  For packages with large LazyData databases
    without specifying LazyDataCompression, there is a reference to
    the code given in 'Writing R Extensions' SS1.1.6 to test the
    choice of compression (as in all the CRAN packages tested a
    non-default method was preferred).
  * R CMD build removes LazyData and LazyDataCompression fields from
    the DESCRIPTION file of packages without a data directory.
  ENCODING-RELATED CHANGES:
  * The parser now treats \Unnnnnnnn escapes larger than the upper
    limit for Unicode points (\U10FFFF) as an error as they cannot be
    represented by valid UTF-8.
    Where such escapes are used for outputting non-printable
    (including unassigned) characters, 6 hex digits are used (rather
    than 8 with leading zeros).  For clarity, braces are used, for
    example \U{0effff}.
  * The parser now looks for non-ASCII spaces on Solaris (as
    previously on most other OSes).
  * There are warnings (including from the parser) on the use of
    unpaired surrogate Unicode points such as \uD834.  (These cannot
    be converted to valid UTF-8.)
  * Functions nchar(), tolower(), toupper() and chartr() and those
    using regular expressions have more support for inputs with a
    marked Latin-1 encoding.
  * The character-classification functions used (by default) to
    replace the system iswxxxxx functions on Windows, macOS and AIX
    have been updated to Unicode 13.0.0.
    The character-width tables have been updated to include new
    assignments in Unicode 13.0.0.
  * The code for evaluating default (extended) regular expressions
    now uses the same character-classification functions as the rest
    of R (previously they differed on Windows, macOS and AIX).
  * There is a build-time option to replace the system's
    wide-character wctrans C function by tables shipped with R: use
    configure option --with-internal-towlower or (on Windows)
  - DUSE_RI18N_CASE in CFLAGS when building R.  This may be needed
    to allow tolower() and toupper() to work with Unicode characters
    beyond the Basic Multilingual Plane where not supported by system
    functions (e.g. on Solaris where it is the new default).
  * R is more careful when truncating UTF-8 and other multi-byte
    strings that are too long to be printed, passed to the system or
    libraries or placed into an internal buffer.  Truncation will no
    longer produce incomplete multibyte characters.
  DEPRECATED AND DEFUNCT:
  * Function plclust() from the package stats and
    package.dependencies(), pkgDepends(), getDepList(),
    installFoundDepends(), and vignetteDepends() from package tools
    are defunct.
  * Defunct functions checkNEWS() and readNEWS() from package tools
    and CRAN.packages() from utils have been removed.
  * R CMD config CXXCPP is defunct (it was deprecated in R 3.6.2).
  * parallel::detectCores() drops support for Irix (retired in 2013).
  * The LINPACK argument to chol.default(), chol2inv(),
    solve.default() and svd() has been defunct since R 3.1.0.  It was
    silently ignored up to R 4.0.3 but now gives an error.
  * Subsetting/indexing, such as ddd[*] or ddd$x on a DOTSXP
    (dot-dot-dot) object ddd has been disabled; it worked by accident
    only and was undocumented.
  BUG FIXES:
  * Many more C-level allocations (mainly by malloc and strdup) are
    checked for success with suitable alternative actions.
  * Bug fix for replayPlot(); this was turning off graphics engine
    display list recording if a recorded plot was replayed in the
    same session.  The impact of the bug became visible if resize the
    device after replay OR if attempted another savePlot() after
    replay (empty display list means empty screen on resize or empty
    saved plot).
  * R CMD check etc now warn when a package exports non-existing S4
    classes or methods, also in case of no "methods" presence.
    (Reported by Alex Bertram; reproducible example and patch by
    Sebastian Meyer in PR#16662.)
  * boxplot() now also accepts calls for labels such as ylab, the
    same as plot().  (Reported by Marius Hofert.)
  * The help page for xtabs() now correctly states that addNA is
    setting na.action = na.pass among others.  (Reported as PR#17770
    by Thomas Soeiro.)
  * The R CMD check &lt;pkg&gt; gives a longer and more comprehensible
    message when DESCRIPTION misses dependencies, e.g., in Imports:.
    (Thanks to the contributors of PR#17179.)
  * update.default() now calls the generic update() on the formula to
    work correctly for models with extended formulas.  (As reported
    and suggested by Neal Fultz in PR#17865.)
  * The horizontal position of leaves in a dendrogram is now correct
    also with center = FALSE.  (PR#14938, patch from Sebastian
    Meyer.)
  * all.equal.POSIXt() no longer warns about and subsequently ignores
    inconsistent "tzone" attributes, but describes the difference in
    its return value (PR#17277).  This check can be disabled _via_
    the new argument check.tzone = FALSE as suggested by Sebastian
    Meyer.
  * as.POSIXct() now populates the "tzone" attribute from its tz
    argument when x is a logical vector consisting entirely of NA
    values.
  * x[[2^31]] &lt;- v now works.  (Thanks to the report and patch by
    Suharto Anggono in PR#17330.)
  * In log-scale graphics, axis() ticks and label positions are now
    computed more carefully and symmetrically in their range,
    typically providing _more_ ticks, fulfilling wishes in PR#17936.
    The change really corresponds to an improved axisTicks() (package
    grDevices), potentially influencing grid and lattice, for
    example.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now correct to at
    least five digits where it was catastrophically wrong,
    previously.
  * sum(df) and similar "Summary"- and "Math"-group member functions
    now work for data frames df with logical columns, notably also of
    zero rows.  (Reported to R-devel by Martin "b706".)
  * unsplit() had trouble with tibbles due to unsound use of rep(NA,
    len)-indexing, which should use NA_integer_ (Reported to R-devel
    by Mario Annau.)
  * pnorm(x, log.p = TRUE) underflows to -Inf slightly later.
  * show(&lt;hidden S4 generic&gt;) prints better and without quotes for
    non-hidden S4 generics.
  * read.table() and relatives treated an "NA" column name as missing
    when check.names = FALSE PR#18007.
  * Parsing strings containing UTF-16 surrogate pairs such as
    "\uD834\uDD1E" works better on some (uncommon) platforms.
    sprintf("%X", utf8ToInt("\uD834\uDD1E")) should now give "1D11E"
    on all platforms.
  * identical(x,y) is no longer true for differing DOTSXP objects,
    fixing PR#18032.
  * str() now works correctly for DOTSXP and related exotics, even
    when these are doomed.
    Additionally, it no longer fails for lists with a class and
    "irregular" method definitions such that e.g. lapply(*) will
    necessarily fail, as currently for different igraph objects.
  * Too long lines in environment files (e.g. Renviron) no longer
    crash R. This limit has been increased to 100,000 bytes.
    (PR#18001.)
  * There is a further workaround for FreeType giving incorrect
    italic font faces with cairo-based graphics devices on macOS.
  * add_datalist(*, force = TRUE) (from package tools) now actually
    updates an existing data/datalist file for new content.  (Thanks
    to a report and patch by Sebastian Meyer in PR#18048.)
  * cut.Date() and cut.POSIXt() could produce an empty last interval
    for breaks = "months" or breaks = "years".  (Reported as PR#18053
    by Christopher Carbone.)
  * Detection of the encoding of 'regular' macOS locales such as
    en_US (which is UTF-8) had been broken by a macOS change:
    fortunately these are now rarely used with en_US.UTF-8 being
    preferred.
  * sub() and gsub(pattern, repl, x, *) now keep attributes of x such
    as names() also when pattern is NA (PR#18079).
  * Time differences ("difftime" objects) get a replacement and a
    rep() method to keep "units" consistent.  (Thanks to a report and
    patch by Nicolas Bennett in PR#18066.)
  * The \RdOpts macro, setting defaults for \Sexpr options in an Rd
    file, had been ineffective since R 2.12.0: it now works again.
    (Thanks to a report and patch by Sebastian Meyer in PR#18073.)
  * mclapply and pvec no longer accidentally terminate parallel
    processes started before by mcparallel or related calls in
    package parallel (PR#18078).
  * grep and other functions for evaluating (extended) regular
    expressions handle in Unicode also strings not explicitly flagged
    UTF-8, but flagged native when running in UTF-8 locale.
  * Fixed a crash in fifo implementation on Windows (PR#18031).
  * Binary mode in fifo on Windows is now properly detected from
    argument open (PR#15600, PR#18031).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1622808000">- The line %{__install} -m 755 -d %{_infodir}
  no longer works in TW or Factory.
  But without that line it works everywhere. So this instruction
  was commented out of the spec file.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1628596800">- CHANGES IN R 4.1.1:
  NEW FEATURES:
  * require(pkg, quietly = TRUE) is quieter and in particular does
    not warn if the package is not found.
  DEPRECATED AND DEFUNCT:
  * Use of ftp:// URIs should be regarded as deprecated, with
    on-going support confined to method = "libcurl" and not routinely
    tested.  (Nowadays no major browser supports them.)
  * The non-default method = "internal" is deprecated for http:// and
    ftp:// URIs for both download.file and url.
  * On Windows, method = "wininet" is deprecated for http://,
    https:// and ftp:// URIs for both download.file and url.  (A
    warning is only given for ftp://.)
    For ftp:// URIs the default method is now "libcurl" if available
    (which it is on CRAN builds).
    method = "wininet" remains the default for http:// and https://
    URIs but if libcurl is available, using method = "libcurl" is
    preferred.
  INSTALLATION:
  * make check now works also without a LaTeX installation.  (Thanks
    to Sebastian Meyer's PR#18103.)
  BUG FIXES:
  * make check-devel works again in an R build configured with
  - -without-recommended-packages.
  * qnbinom(p, size, mu) for large size/mu is correct now in a range
    of cases (PR#18095); similarly for the (size, prob)
    parametrization of the negative binomial.  Also qpois() and
    qbinom() are better and or faster for extreme cases.  The
    underlying C code has been modularized and is common to all four
    cases of discrete distributions.
  * gap.axis is now part of the axis() arguments which are passed
    from bxp(), and hence boxplot().  (Thanks to Martin Smith's
    report and suggestions in PR#18109.)
  * .First and .Last can again be set from the site profile.
  * seq.int(from, to, *) and seq.default(..) now work better in large
    range cases where from-to is infinite where the two boundaries
    are finite.
  * all.equal(x,y) now returns TRUE correctly also when several
    entries of abs(x) and abs(y) are close to .Machine$double.xmax,
    the largest finite numeric.
  * model.frame() now clears the object bit when removing the class
    attribute of a value via na.action (PR#18100).
  * charClass() now works with multi-character strings on Windows
    (PR#18104, fixed by Bill Dunlap).
  * encodeString() on Solaris now works again in Latin-1 encoding on
    characters represented differently in UTF-8.  Support for
    surrogate pairs on Solaris has been improved.
  * file.show() on Windows now works with non-ASCII path names
    representable in the current native encoding (PR#18132).
  * Embedded R on Windows can now find R home directory via the
    registry even when installed only for the current user
    (PR#18135).
  * pretty(x) with finite x now returns finite values also in the
    case where the extreme x values are close in size to the maximal
    representable number .Machine$double.xmax.
    Also, it's been tweaked for very small ranges and when a boundary
    is close (or equal) to zero; e.g., pretty(c(0,1e-317)) no longer
    has negative numbers, currently still warning about a very small
    range, and pretty(2^-(1024 - 2^-1/(c(24,10)))) is more accurate.
  * The error message for not finding vignette files when weaving has
    correct file sizes now. (Thanks to Sebastian Meyer's PR#18154.)
  * dnbinom(20, &lt;large&gt;, 1) now correctly gives 0, and similar cases
    are more accurate with underflow precaution.  (Reported by Francisco Vera Alcivar in PR#18072.)</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635163200">- repaired https://bugzilla.suse.com/show_bug.cgi?id=1191380
  (rpmacros now go to rpmmacrodir)
- minor clean-ups in spec file</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635768000">- CHANGES IN R 4.1.2:
  C-LEVEL FACILITIES:
  * The workaround in headers R.h and Rmath.h (using namespace std;)
    for the Oracle Developer Studio compiler is no longer needed now
    C++11 is required so has been removed.  A couple more usages of
    log() (which should have been std::log()) with an int argument
    are reported on Solaris.
  * The undocumented limit of 4095 bytes on messages from the
    S-compatibility macros PROBLEM and MESSAGE is now documented and
    longer messages will be silently truncated rather than
    potentially causing segfaults.
  * If the R_NO_SEGV_HANDLER environment variable is non-empty, the
    signal handler for SEGV/ILL/BUS signals (which offers recovery
    user interface) is not set. This allows more reliable debugging
    of crashes that involve the console.
  DEPRECATED AND DEFUNCT:
  * The legacy S-compatibility macros PROBLEM, MESSAGE, ERROR, WARN,
    WARNING, RECOVER, ... are deprecated and will be hidden in R
    4.2.0. R's native interface of Rf_error and Rf_warning has long
    been preferred.
  BUG FIXES:
  * .mapply(F, dots, .) no longer segfaults when dots is not a list
    and uses match.fun(F) as always documented; reported by Andrew
    Simmons in PR#18164.
  * hist(&lt;Date&gt;, ...) and hist(&lt;POSIXt&gt;, ...)  no longer pass
    arguments for rect() (such as col and density) to axis().
    (Thanks to Sebastian Meyer's PR#18171.)
  * \Sexpr{ch} now preserves Encoding(ch). (Thanks to report and
    patch by Jeroen Ooms in PR#18152.)
  * Setting the RNG to "Marsaglia-Multicarry" e.g., by RNGkind(), now
    warns in more places, thanks to Andr'e Gillibert's report and
    patch in PR#18168.
  * gray(numeric(), alpha=1/2) no longer segfaults, fixing PR#18183,
    reported by Till Krenz.
  * Fixed dnbinom(x, size=&lt;very_small&gt;, .., log=TRUE) regression,
    reported by Martin Morgan.
  * as.Date.POSIXlt(x) now keeps names(x), thanks to Davis Vaughan's
    report and patch in PR#18188.
  * model.response() now strips an "AsIs" class typically, thanks to
    Duncan Murdoch's report and other discussants in PR#18190.
  * try() is considerably faster in case of an error and long call,
    as e.g., from some do.call().  Thanks to Alexander Kaever's
    suggestion posted to R-devel.
  * qqline(y = &lt;object&gt;) such as y=I(.), now works, see also
    PR#18190.
  * Non-integer mgp par() settings are now handled correctly in
    axis() and mtext(), thanks to Mikael Jagan and Duncan Murdoch's
    report and suggestion in PR#18194.
  * formatC(x) returns length zero character() now, rather than ""
    when x is of length zero, as documented, thanks to Davis
    Vaughan's post to R-devel.
  * removeSource(fn) now retains (other) attributes(fn).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1647000000">- CHANGES IN R 4.1.3:
  NEW FEATURES:
  * The default version of Bioconductor has been changed to 3.14.
    (This is used by setRepositories and the menus in GUIs.)
  UTILITIES:
  * R CMD check --as-cran has a workaround for a bug in versions of
    file up to at least 5.41 which mis-identify DBF files last
    changed in 2022 as executables.
  C-LEVEL FACILITIES:
  * The legacy S-compatibility macros SINGLE_* in R_ext/Constants.h
    (included by R.h) are deprecated and will be removed in R 4.2.0.
  BUG FIXES:
  * Initialization of self-starting nls() models with initialization
    functions following the pre-R-4.1.0 API (without the ...
    argument) works again for now, with a deprecation warning.
  * Fixed quoting of ~autodetect~ in Java setting defaults to avoid
    inadvertent user lookup due to leading ~, reported in PR#18231 by
    Harold Gutch.
  * substr(., start, stop) &lt;- v now treats _negative_ stop values
    correctly.  Reported with a patch in PR#18228 by Brodie Gaslam.
  * Subscripting an array x without dimnames by a
    length(dim(x))-column character matrix gave "random" non-sense,
    now an error; reported in PR#18244 by Mikael Jagan.
  * ...names() now matches names(list(...)) closely, fixing PR#18247.
  * all.equal(*, scale = s) now works as intended when length(s) &gt; 1,
    partly thanks to Michael Chirico's PR#18272.
  * print(x) for long vectors x now also works for named atomic
    vectors or lists and prints the correct number when reaching the
    getOption("max.print") limit; partly thanks to a report and
    proposal by Hugh Parsonage to the R-devel list.
  * all.equal(&lt;selfStart&gt;, *) no longer signals a deprecation
    warning.
  * reformulate(*, response=r) gives a helpful error message now when
    length(r) &gt; 1, thanks to Bill Dunlap's PR#18281.
  * Modifying globalCallingHandlers inside withCallingHandlers() now
    works or fails correctly, thanks to Henrik Bengtsson's PR#18257.
  * hist(&lt;Date&gt;, breaks = "days") and hist(&lt;POSIXt&gt;, breaks = "secs")
    no longer fail for inputs of length 1.
  * qbeta(.001, .9, .009) and similar cases now converge correctly
    thanks to Ben Bolker's report in PR#17746.
  * window(x, start, end) no longer wrongly signals "'start' cannot
    be after 'end'", fixing PR#17527 and PR#18291.
  * data() now checks that its (rarely used) list argument is a
    character vector - a couple of packages passed other types and
    gave incorrect results.
  * which() now checks its arr.ind argument is TRUE rather coercing
    to logical and taking the first element - which gave incorrect
    results in package code.
  * model.weights() and model.offset() more carefully extract their
    model components, thanks to Ben Bolker and Tim Taylor's R-devel
    post.
  * list.files(recursive = TRUE) now shows all broken symlinks
    (previously, some of them may have been omitted, PR#18296).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1650628800">- CHANGES IN R 4.2.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * The formula method of aggregate() now matches the generic in
    naming its first argument x (resolving PR#18299 by Thomas
    Soeiro).
    This means that calling aggregate() with a formula as a named
    first argument requires name formula in earlier versions of R and
    name x now, so portable code should not name the argument (code
    in many packages did).
  * Calling &amp;&amp; or || with either argument of length greater than one
    now gives a warning (which it is intended will become an error).
  * Calling if() or while() with a condition of length greater than
    one gives an error rather than a warning.  Consequently,
    environment variable _R_CHECK_LENGTH_1_CONDITION_ no longer has
    any effect.
  * Windows users should consult the WINDOWS section below for some
    profound changes including
  * Support for 32-bit builds has been dropped.
  * UTF-8 locales are used where available.
  * The default locations for the R installation and personal
    library folder have been changed.
    Thanks to Tomas Kalibera for months of work on the Windows port
    for this release.
  NEW FEATURES:
  * matrix(x, n, m) now warns in more cases where length(x) differs
    from n * m, as suggested by Abby Spurdle and Wolfgang Huber in
    Feb 2021 on the R-devel mailing list.
    This warning can be turned into an error by setting environment
    variable _R_CHECK_MATRIX_DATA_ to TRUE: R CMD check --as-cran
    does so unless it is already set.
  * Function file_test() in package utils gains tests for symlinks,
    readability and writability.
  * capabilities("libxml") is now false.
    The description of capabilities("http/ftp") now reflects that it
    refers to the default method, no longer the internal one.
  * simplify2array() gains an except argument for controlling the
    exceptions used by sapply().
  * Environment variables R_LIBS_USER and R_LIBS_SITE are both now
    set to the R system default if unset or empty, and can be set to
    NULL to indicate an empty list of user or site library
    directories.
  * The warning for axis()(-like) calls in cases of relatively small
    ranges (typically in log-scale situations) is slightly improved
    _and_ suppressed from explicit calls to .axisPars() as has always
    been the intention.
  * The contrasts setter function `contrasts&lt;-` gains an explicit
    default how.many = NULL rather than just using missing(how.many).
  * grid.pretty() gains a new optional argument n = 5.
  * There is a new function .pretty() with option bounds as a
    technical-utility version of pretty().  It and pretty() gain a
    new argument f.min with a better than back-compatible default.
  * Function grDevices::axisTicks() and related functions such as
    graphics::axis() work better, notably for the log scale; partly
    because of the pretty() improvements, but also because care is
    taken e.g., when ylim is finite but diff(ylim) is infinite.
  * nclass.FD() gains a digits option.
  * The R Mathlib internal C function bd0() (called indirectly from a
    dozen probability density and distribution functions such as
    dpois(), dbinom(), dgamma(), pgamma() _etc_) has been
    complemented by a more sophisticated and (mostly) more accurate C
    function ebd0(), currently called only by internal dpois_raw()
    improving accuracy for R level dpois() and potentially others
    calling it such as dnbinom(), dgamma() or pgamma().  (Thanks to
    Morten Welinder's PR#15628.)
  * write.ftable() gains sep = " " argument as suggested by Thomas
    Soeiro.
  * The names of the locale categories supported by R's
    Sys.getlocale() and Sys.setlocale() are now provided by variable
    .LC.categories in the base namespace.
  * The Date and POSIXt methods for hist() and the histogram method
    for plot() now also use the new default col = "lightgray" in
    consistency with the corresponding change to hist()'s default for
    R 4.0.0.
  * hist.default() gains new fuzz argument, and the histogram plot
    method no longer uses fractional axis ticks when displaying
    counts ("Frequency").
  * mapply() and hence Map() now also obey the "max-or-0-if-any"
    recycling rule, such that, e.g., Map(`+`, 1:3, 1[0]) is valid
    now.
  * as.character(&lt;obj&gt;) for "hexmode" or "octmode" objects now
    fulfils the important basic rule as.character(x)[j] ===
    as.character(x[j]).
  * The set utility functions, notably intersect() have been tweaked
    to be more consistent and symmetric in their two set arguments,
    also preserving a common mode.
  * substr(ch, start,end) &lt;- new now e.g., preserves names(ch); ditto
    for substring(), thanks to a patch from Brodie Gaslam.
  * plot(&lt;lm&gt;) gains a extend.ylim.f argument, in partial response to
    PR#15285; further PR#17784 is fixed thanks to several
    contributors and a patch by Elin Waring.  The Cook's dist
    contours get customizable via cook.col and cook.lty with a
    different default color and their legend is nicer by default and
    customizable via cook.legendChanges.
  * Attempting to subset an object that is not subsettable now
    signals an error of class notSubsettableError. The
    non-subsettable object is contained in the object field of the
    error condition.
  * Subscript-out-of-bounds errors are now signaled as errors of
    class subscriptOutOfBoundsError.
  * Stack-overflow errors are now signaled as errors inheriting from
    class stackOverflowError. See ?stackOverflowError for more
    details.
  * New partly experimental Sys.setLanguage() utility, solving the
    main problem of PR#18055.
  * gettext() and gettextf() get a new option trim = TRUE which when
    set to false allows translations for strings such as "Execution
    halted\n" typical for C code.
  * An experimental implementation of hash tables is now available.
    See ?hashtab for more details.
  * identical() gains a extptr.as.ref argument for requesting that
    external pointer objects be compared as reference objects.
  * reorder() gets an argument decreasing which it passes to sort()
    for level creation; based on the wish and patch by Thomas Soeiro
    in PR#18243.
  * as.vector() gains a data.frame method which returns a simple
    named list, also clearing a long standing 'FIXME' to enable
    as.vector(&lt;data.frame&gt;, mode="list").  This breaks code relying
    on as.vector(&lt;data.frame&gt;) to return the unchanged data frame.
  * legend() is now vectorized for arguments cex, x.intersp, and
    text.width.  The latter can now also be specified as a vector
    (one element for each column of the legend) or as NA for
    computing a proper column wise maximum value of strwidth(legend).
    The argument y.intersp can be specified as a vector with one
    entry for each row of the legend.
    legend() also gains new arguments title.cex and title.font.
    Thanks to Swetlana Herbrandt.
  * Deparsing no longer remaps attribute names dim, dimnames, levels,
    names and tsp to historical S-compatible names (which structure()
    maps back).
  * sample() and sample.int() have additional sanity checks on their
    size and n arguments.
    all.equal.numeric() gains a sanity check on its tolerance
    argument - calling all.equal(a, b, c) for three numeric vectors
    is a surprisingly common error.
    mean(na.rm =), rank(na.last =), barplot(legend.text =),
    boxplot(), contour(drawlabels =), polygon(border =) and
    methods::is(class2 =) have more robust sanity checks on their
    arguments.
    R CMD Rd2pdf (used by R CMD check) has a more robust sanity check
    on the format of \alias{} commands.
  * psigamma(x, deriv) for negative x now also works for deriv = 4
    and 5; their underlying C level dpsifn() is documented in
    'Writing R Extensions'.
  * The HTML help system now uses HTML5 (wish of PR#18149).
  * ks.test() now provides exact p-values also with ties and MC
    p-values in the two-sample (Smirnov) case.  By Torsten Hothorn.
  * ks.test() gains a formula interface, with y ~ 1 for the
    one-sample (Kolmogorov) test and y ~ group for the two-sample
    (Smirnov) test.  Contributed by Torsten Hothorn.
  * The return value from ks.test() now has class c("ks.test",
    "htest") - packages using try() need to take care to use
    inherits() and not == on the class.
  * New functions psmirnov(), qsmirnov() and rsmirnov() in package
    stats implementing the asymptotic and exact distributions of the
    two-sample Smirnov statistic.
  * iconv() now allows sub = "c99" to use C99-style escapes for UTF-8
    inputs which cannot be converted to encoding to.
  * In a forward pipe |&gt; expression it is now possible to use a named
    argument with the placeholder _ in the rhs call to specify where
    the lhs is to be inserted.  The placeholder can only appear once
    on the rhs.
  * The included LAPACK sources have been updated to version 3.10.0,
    except for the four Fortran 77 routines which 3.10.0 has
    re-implemented in Fortran 90 (where the older versions have been
    retained as the R build process does not support Fortran 90).
  * path.expand() and most other uses of tilde expansion now warn if
    a path would be too long if expanded.  (An exception is
    file.exists(), which silently returns false.)
  * trunc(&lt;Date&gt;, *) now supports units = "months" or "years" for
    consistency with the POSIXt method, thanks to Dirk Eddelbuettel's
    proposal in PR#18099.
  * list2DF() now checks that its arguments are of the same length,
    rather than use recycling.
  * The HTML help system has several new features: LaTeX-like math
    can be typeset using either KaTeX or MathJax, usage and example
    code is highlighted using Prism, and for dynamic help the output
    of examples and demos can be shown within the browser if the
    knitr package is installed. These features can be disabled by
    setting the environment variable _R_HELP_ENABLE_ENHANCED_HTML_ to
    a false value.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 15
    and so packages that provide graphics devices should be
    reinstalled.
  * The grid package now allows the user to specify a "vector" of
    pattern fills.  The fill argument to gpar() accepts a list of
    gradients and/or patterns and the functions linearGradient(),
    radialGradient(), and pattern() have a new group argument.
    Points grobs (data symbols) can now also have a pattern fill.
    The grobCoords() function now returns a more informative and
    complex result.
  * The grid package has new functions for drawing isolated groups:
    grid.group(), grid.define(), and grid.use().  These functions add
    compositing operators and affine transformations to R's graphics
    capabilities.
    The grid package also has new functions for stroking and filling
    paths: grid.stroke(), grid.fill(), and grid.fillStroke().
    A new function as.path() allows the user to specify the fill rule
    for a path that is to be used for clipping, stroking, or filling;
    available options are "winding" and "evenodd".  A new function
    as.mask() allows the user to specify the type of a mask;
    available options are "alpha" and "luminance".
    These new features are only supported so far (at most) on the
    Cairo-based graphics devices and on the pdf() device.
  * dev.capabilities() reports on device support for the new
    features.
  * par() now warns about unnamed non-character arguments to prevent
    misuse such as {usr &lt;- par("usr"); par(usr)}.
  INSTALLATION:
  * Facilities for accessing ftp:// sites are no longer tested
    (except _pro tem_ for curlGetHeaders()) as modern browsers have
    removed support.
  * R can now be built with DEFS = -DSTRICT_R_HEADERS .
  PACKAGE INSTALLATION:
  * R CMD INSTALL no longer tangles vignettes. This completes an R
    CMD build change in R 3.0.0 and affects packages built before R
    3.0.2. Such packages should be re-made with R CMD build to have
    the tangled R code of vignettes shipped with the tarball.
  * USE_FC_LEN_T will become the default: this uses the correct
    prototypes for Fortran BLAS/LAPACK routines called from C/C++,
    and requires adjustment of most such calls - see 'Writing R
    Extensions' SS6.6.2.  (This has been supported since R 3.6.2.)
  * Package installation speed for packages installed with
    keep.source has been improved. This resolve the issue reported by
    Ofek Shilon in PR#18236.
  UTILITIES:
  * R CMD check can optionally report files/directories left behind
    in home, /tmp (even though TMPDIR is set) and other directories.
    See the "R Internals" manual for details.
  * R CMD check now reports byte-compilation errors during
    installation.  These are not usually fatal but may result in
    parts of the package not being byte-compiled.
  * _R_CHECK_DEPENDS_ONLY_ can be applied selectively to examples,
    tests and/or vignettes in R CMD check: see the "R Internals"
    manual.
  * _R_CHECK_SRC_MINUS_W_IMPLICIT_ now defaults to true: recent
    versions of Apple clang on macOS have made implicit function
    declarations in C into a compilation error.
  * R CMD check --as-cran makes use of the environment variable
    AUTORECONF.  See the "R Internals" manual SS8 for further details.
  * R CMD check --use-valgrind also uses valgrind when re-building
    vignettes as some non-Sweave vignettes unhelpfully comment out
    all their code when R CMD check runs vignettes.
  * Errors in re-building vignettes (unless there are LaTeX errors)
    are reported by R CMD check as ERROR rather than WARNING when
    running vignettes has been skipped (as it frequently is in CRAN
    checks and by --as-cran).
  * R CMD Rd2pdf gains a --quiet option that is used by R CMD build
    when building the PDF package manual.
  * R CMD Rd2pdf now always runs LaTeX in batch mode, consistent with
    Texinfo &gt;= 6.7. The --batch option is ignored.
  * R CMD build and R CMD check now include the Rd file name and line
    numbers in the error message of an \Sexpr evaluation failure.
  * For packages using the \doi Rd macro (now an install-time \Sexpr)
    but no other dynamic Rd content, R CMD build now produces a
    smaller tarball and is considerably faster - skipping temporary
    package installation.
  C-LEVEL FACILITIES:
  * The non-API header R_ext/R-ftp-http.h is no longer provided, as
    the entry points it covered are now all defunct.
  * A number of non-API declarations and macro definitions have been
    moved from the installed header Rinternals.h to the internal
    header Defn.h. Packages that only use entry points and
    definitions documented to be part of the API as specified in
    'Writing R Extensions' SS6 should not be affected.
  * The macro USE_RINTERNALS no longer has any effect when compiling
    package code.  Packages which also use R_NO_REMAP will need to
    ensure that the remapped names are used for calls to API
    functions that were formerly also made available as macros.
  * The deprecated legacy S-compatibility macros PROBLEM, MESSAGE,
    ERROR, WARN, WARNING, RECOVER, ... are no longer defined in
    R_exts/RS.h (included by R.h).  Replace these by calls to
    Rf_error and Rf_warning (defined in header R_ext/Error.h included
    by R.h).
    Header R_ext/RS.h no longer includes R_ext/Error.h.
  * Header R_ext/Constants.h (included by R.h) when included from C++
    now includes the C++ header cfloat rather than the C header
    float.h (now possible as C++11 is required).
  * The legacy S-compatibility macros DOUBLE_* in R_ext/Constants.h
    (included by R.h) are deprecated.
  * The deprecated S-compatibility macros SINGLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * R_Calloc, R_Free and R_Realloc are preferred to their unprefixed
    forms and error messages now use the prefix. These forms were
    introduced in R 3.4.0 and are available even when
    STRICT_R_HEADERS is defined.
  * rmultinom has been documented in 'Writing R Extensions' SS6 so is
    now part of the R API.
  * Similarly, Rtanpi, called from R level tanpi() is now part of the
    R API.
  * The long-deprecated, undocumented and non-API entry point call_R
    is no longer declared in R_ext/RS.h (included by R.h).
  * The header S.h which has been unsupported since Jan 2016 has been
    removed.  Use R.h instead.
  DEPRECATED AND DEFUNCT:
  * The (non-default and deprecated) method = "internal" for
    download.file() and url() no longer supports http:// nor ftp://
    URIs.  (It is used only for file:// URIs.)
    On Windows, download.file(method = "wininet") no longer supports
    ftp:// URIs.  (It is no longer the default method, which is
    "libcurl" and does.)
    On Windows, the deprecated method = "wininet" now gives a warning
    for http:// and https:// URIs for both download.file() and url().
    (It is no longer the default method.)
  * On Windows, the command-line option --max-mem-size and
    environment variable R_MAX_MEM_SIZE are defunct.  The memory
    allocation limit was important for 32-bit builds, but these are
    no longer supported.
  * default.stringsAsFactors() is now formally deprecated, where that
    was only mentioned on its regular help page, previously.  So it
    now gives a warning if called.
  * unix.time() is defunct now; it had been deprecated since R 3.4.0.
  BUG FIXES:
  * Setting digits = 0 in format(), print.default() (and hence
    typically print()) or options() is again invalid.  Its behaviour
    was platform-dependent, and it is unclear what "zero significant
    digits" should mean (PR#18098).
  * Messages from C code in the cairo section of package grDevices
    are now also offered for translation, thanks to Michael Chirico's
    PR#18123.
  * mean(x) with finite x now is finite also without "long.double"
    capability.
  * R CMD Rd2pdf no longer leaves an empty build directory behind
    when it aborts due to an already existing output file.  (Thanks
    to Sebastian Meyer's PR#18141.)
  * density(x, weights = w, na.rm = TRUE) when anyNA(x) is true, now
    removes weights "in parallel" to x, fixing PR#18151, reported by
    Matthias Gondan.  Additionally, it gets a subdensity option.
  * Conversion of \Sexpr[]{&lt;expR&gt;} to LaTeX or HTML no longer
    produces long blocks of empty lines when &lt;expR&gt; itself contains
    several lines all producing empty output.  Thanks to a report and
    patch by Ivan Krylov posted to R-devel.
  * R CMD build no longer fails if a package vignette uses child
    documents and inst/doc exists.  (Thanks to Sebastian Meyer's
    PR#18156.)
  * When an R documentation ('help' source) file man/foo.Rd in a
    package has \donttest{..} examples with a syntax error, it is now
    signalled as ERROR and with correct line numbers relating to the
  * -Ex.R file, thanks to Duncan Murdoch and Sebastian Meyer's
    reports and patch proposals in PR#17501.
  * Improved determination of the correct translation domain in
    non-base packages, addressing the combination of PR#18092 and
    PR#17998 (#c6) with reports and _augmented_ patch #2904 by
    Suharto Anggono.
    Note that "R-base" is no longer the default domain e.g., for
    top-level calls to gettext(); rather translation needs explicit
    domain = * specification in such cases.
  * identical(attrib.as.set=FALSE) now works correctly with data
    frames with default row names (Thanks to Charlie Gao's PR#18179).
  * txtProgressBar() now enforces a non-zero width for argument char,
    without which no progress can be visible.
  * dimnames(table(d)) is more consistent in the case where d is a
    list with a single component, thanks to Thomas Soeiro's report to
    R-devel.
    Further, table(d1, d2) now gives an error when d1 and d2 are data
    frames as suggested by Thomas in PR#18224.
  * Fix for drawing semi-transparent lines and fills on the native
    Windows graphics device (PR#18219 and PR#16694).  Thanks to Nick
    Ray for helpful diagnosis on Bugzilla.
  * The deparser now wraps sub-expressions such as if(A) ..  with
    parentheses when needed; thanks to Duncan Murdoch's PR#18232 and
    Lionel Henry's patches there.
  * remove.packages() no longer tries to uninstall Priority: base
    packages, thanks to a report and suggestions by Colin Fay in
    PR#18227.
  * win.metafile() now has xpinch and ypinch arguments so that the
    user can override Windows' (potentially wrong) guess at device
    dimensions.
  * x[i] and x[[i]] for non-integer i should now behave in all cases
    as always documented: the index used is equivalent to
    as.integer(i) unless that would overflow where trunc(i) is used
    instead; thanks to Suharto Anggono's report and patch proposals
    in PR#17977.
  * asOneSidedFormula() now associates the resulting formula with the
    global environment rather than the evaluation environment created
    for the call.
  * &lt;bibentry&gt;$name now matches the field name case-insensitively,
    consistent with bibentry() creation and the replacement method.
  * cbind() failed to detect some length mismatches with a mixture of
    time-series and non-time-series inputs.
  * The default LaTeX style file Sweave.sty used by the RweaveLatex
    driver no longer loads the obsolete ae package; thanks to a
    report by Thomas Soeiro in PR#18271.  Furthermore, it now skips
    \usepackage[T1]{fontenc} for engines other than pdfTeX (if
    detected) or if the new [nofontenc] option is used.
  * smooth.spline() now stores its logical cv argument more safely,
    fixing a rare bug when printing, and also stores n.
  * smooth.spline(x,y,*) now computes the cv.crit statistic
    correctly, also when is.unsorted(x), fixing PR#18294.
  * The data.frame method of rbind() now warns when binding
    not-wholly-recycling vectors, by analogy to the default method
    (for matrices).
  * setAs() finds the correct class for name to when multiple
    packages define a class with that name. Thanks to Gabor Csardi
    for the report.
  * Fix for detaching a package when two classes of the same name are
    present in method signatures for the same generic. Thanks to
    Gabor Csardi for the report.
  * match.arg("", c("", "a", "B")) gives a better error message, in
    part from PR#17959, thanks to Elin Waring.
  * R CMD Sweave --clean no longer removes pre-existing files or
    subdirectories (PR#18242).
  * The quartz() device no longer splits polylines into subpaths.
    That has caused narrowly-spaced lines with many points to always
    look solid even when dashed line type was used due to dash phase
    restarts.
  * Deparsing constructs such as quote(1 + `!`(2) + 3) works again as
    before R 3.5.0, thanks to the report and patch in PR#18284 by
    Suharto Anggono.
  * as.list(f) for a factor f now keeps names(f), fixing PR#18309.
  * qbeta(.001, .9, .009) and analogous qf() calls now return a
    correct value instead of NaN or wrongly 1, all with a warning;
    thanks to the report by Ludger Goeminne in PR#18302.
  * plot.lm() failed to produce the plot of residuals vs.  factor
    levels (i.e., which=5 when leverages are constant) for models
    with character predictors (PR#17840).
  * interaction.plot(..., xtick = TRUE) misplaced the x-axis line
    (PR#18305).
  * Not strictly fixing a bug, format()ing and print()ing of
    non-finite Date and POSIXt values NaN and +/-Inf no longer show
    as NA but the respective string, e.g., Inf, for consistency with
    numeric vector's behaviour, fulfilling the wish of PR#18308.
  * R CMD check no longer runs test scripts generated from
    corresponding .Rin files twice and now signals an ERROR if
    processing an .Rin script fails.
  * tools::Rd2txt() used for plain-text help pages now renders \hrefs
    (if tools::Rd2txt_options(showURLs = TRUE)) and \urls with
    percent-encoding and standards-compliant delimiting style (angle
    brackets and no URL: prefix).  \email is now rendered with a
    mailto: prefix.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1655985600">- CHANGES IN R 4.2.1:
  NEW FEATURES:
  * New function utils::findCRANmirror() to find out if a CRAN mirror
    has been selected, otherwise fallback to the main site.  This
    behaves in the same way as tools::CRAN_package_db() and is
    intended for packages wishing to access CRAN for purposes other
    than installing packages.
    The need for this was shown by a day when the main CRAN website
    was offline and a dozen or so packages which had its URL
    hardcoded failed their checks.
  INSTALLATION on a UNIX-ALIKE:
  * The libraries searched for by --with-blas (without a value) now
    include BLIS (after OpenBLAS but before ATLAS).  And on macOS,
    the Accelerate framework (after ATLAS).  (This is patterned after
    the AX_BLAS macro from the Autoconf Archive.)
  * The included LAPACK sources have been updated to 3.10.1.
  UTILITIES:
  * The (full path to) the command tidy to be used for HTML
    validation can be set by environment variable R_TIDYCMD.
  * Setting environment variable _R_CHECK_RD_VALIDATE_RD2HTML_ to a
    false value will override R CMD check --as-cran and turn off HTML
    validation.  This provides a way to circumvent a problematic
    tidy.
    The 2006 version that ships with macOS is always skipped.
  C-LEVEL FACILITIES:
  * The undocumented legacy declarations of Sint, Sfloat, SINT_MAX
    and SINT_MIN in header R.h are deprecated.
  BUG FIXES:
  * fisher.test(d) no longer segfaults for "large" d; fixing PR#18336
    by preventing/detecting an integer overflow reliably.
  * tar(., files=*) now produces correctly the warning about invalid
    uid or gid of files, fixing PR#18344, reported by Martin Morgan.
  * tk_choose.files() with multi = FALSE misbehaved on paths
    containing spaces (PR#18334) (regression introduced in R 4.0.0).
  * sort(x, partial = ind, *) now works correctly notably for the
    non-default na.last = FALSE or TRUE, fixing PR#18335 reported by
    James Edwards.
  * Environment variable _R_CHECK_XREFS_REPOSITORIES_ is only used
    for checking .Rd cross-references in R CMD check (as documented)
    and not for other uses looking for a CRAN mirror.
  * The search for a CRAN mirror when checking packages now uses
    getOption("repos") if that specifies a CRAN mirror, even when it
    does not also specify all three Bioconductor repositories (as was
    previously required).
  * The HTML code generated by tools::Rd2HTML() has been improved to
    pass tidy 5.8.0.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1667217600">- CHANGES IN R 4.2.2:
  NEW FEATURES:
  * tools::Rdiff(useDiff = TRUE) checks for the presence of an
    external diff command and switches to useDiff = FALSE if none is
    found.  This allows R CMD Rdiff to always work.
  * On Windows, environment variable R_LIBCURL_SSL_REVOKE_BEST_EFFORT
    can be used to switch to only 'best-effort' SSL certificate
    revocation checks with the default "libcurl" download method.
    This reduces security, but may be needed for downloads to work
    with MITM proxies (PR#18379).
  * (macOS) The run-time check for libraries from XQuartz for X11 and
    Tcl/Tk no longer uses otool from the Apple Developer Tools
    (PR#18400).
  * The LaTeX style for producing the PDF manuals, Rd.sty, now loads
    the standard amsmath, amsfonts and amssymb packages for greater
    coverage of math commands in the Rd \eqn and \deqn macros.  The
    \mathscr LaTeX command is also provided (via the mathrsfs
    package, if available, or the amsfonts bundle otherwise),
    fulfilling the wish of PR#18398.
  * (Windows) The default format of readClipboard() and
    writeClipboard() has been changed to 13 (CF_UNICODETEXT).
  INSTALLATION on a UNIX-ALIKE:
  * The PDF manuals (if built) can be compacted by the new target
    make compact-pdf (at the top level or in directory doc/manual).
  * There is now configure support for LLVM clang 15 on Linux, which
    defaults to position-independent (PIE) executables whereas
    gfortran does not.
  * Many small changes to ease compilation (and suppress warnings)
    with LLVM clang 15.
  BUG FIXES:
  * Rscript -e would fail if stdin were closed (Reported by Henrik
    Bengtsson.)
  * qt(*, log.p=TRUE) in outer tails no longer produces NaN in its
    final steps, thus fixing PR#18360.
  * tools::Rd2latex() now escapes hashes and ampersands when writing
    URLs, fixing LaTeX errors with such URLs in \tabular.
  * When isGeneric(f, fdef=*) is used with mismatching names, the
    warning is better understandable; reported (with fix) in PR#18370
    by Gabe Becker.
  * poly(x, n) now works again (and is now documented) when x is a
    "Date" or "POSIXct" object, or of another class while fulfilling
    mode(x) == "numeric".  This also enables poly(x, *, raw=TRUE) for
    such variables.  Reported by Michael Chirico to R-devel.
  * write.table(), write.csv() and write.csv2() restore their
    numerical precision (internal equivalent of digits = 15) after an
    interrupt (PR#18384).
  * One can now read also byte FF from a clipboard connection
    (PR#18385).
  * source("") and source(character()) now give more helpful error
    messages.
  * R CMD check --as-cran set _R_CHECK_TIMINGS_ too late to have the
    intended effect.
  * as.POSIXlt(x) now also works with very large dates x, fixing
    PR#18401 reported by Hannes M"uhleisen.
  * Files can now be extracted even from very large zip archives
    (PR#18390, thanks to Martin Jakt).
  * Non-finite objects of class "POSIXlt" are now correctly coerced
    to classes "Date" and "POSIXct"; following up on the extension to
    format() them correctly.
  * Added methods for is.finite(), is.infinite() and is.nan() for
    "POSIXlt" date-time objects.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1678881600">- CHANGES IN R 4.2.3:
  C-LEVEL FACILITIES:
  * The definition of DL_FUNC in R_ext/Rdynload.h has been changed to
    be fully C-compliant.  This means that functions loaded _via_ for
    example R_GetCCallable need to be cast to an appropriate type if
    they have any arguments.
  * .Machine has a new element sizeof.time_t to identify old systems
    with a 32-bit type and hence a limited range of date-times (and
    limited support for dates millions of years from present).
  PACKAGE INSTALLATION:
  * (Windows) The default C++ standard had accidentally been left at
    C++11 when it was changed to C++14 on Unix.
  BUG FIXES:
  * As "POSIXlt" objects may be "partially filled" and their list
    components meant to be recycled, length() now is the length of
    the longest component.
  * as.POSIXlt.Date() could underflow for dates in the far past (more
    than half a million years BCE).
  * as.Date.POSIXlt(x) would return "1970-01-01" instead of NA in R
    4.2.2, e.g., for
    x &lt;- as.POSIXlt(c("2019-01-30","2001-1-1"))
    x$mon &lt;- c(0L, NA); as.Date(x)
  * R CMD check failed to apply enabled _R_CHECK_SUGGESTS_ONLY_ to
    examples and vignettes (regression in R 4.2.0).
  * R CMD check did not re-build vignettes in separate processes by
    default (regression in R 4.2.0).
  * Running examples from HTML documentation now restores previous
    knitr settings and options (PR#18420).
  * Quartz: fonts are now located using Core Graphics API instead of
    deprecated ATS which is no longer supported in the macOS 13 SDK
    (PR#18426).  This also addresses an issue where the currently
    used font in the Quartz device context was not correctly
    retained.
  * (Windows) Math symbols in text drawing functions are again
    rendered correctly (PR#18440).  This fixes a regression in R
    4.2.1 caused by a fix in PR#18382 which uncovered an issue in
    GraphApp due to which the symbol charset was not used with TT
    Symbol font face.
  * (Windows) Installing a package with a src/Makefile.{win,ucrt}
    file includes ~/.R/Makevars.win64 in the search for user
    makevars, as documented in "R Installation and Administration"
    and done for packages with a src/Makevars.{win,ucrt} file.
  * format(&lt;POSIXlt_w/_unbalanced_sec&gt;, "....%OS&lt;n&gt;") with n &gt; 0 no
    longer accidentally uses the unbalanced seconds, thanks to
    Suharto Anggono's report (including patch) in PR#18448.
  * solve.default(a, b) works around issues with some versions of
    LAPACK when a contains NA or NaN values.
  * When UseMethod() cannot dispatch, it no longer segfaults
    producing the error message in case of a long class(), thanks to
    Joris Vankerschaver's report (including patch) in PR#18447.
  * When example(foo, ..) produces graphics on an interactive device
    it needs to open itself, it now leaves devAskNewPage() unchanged
    even when it was FALSE, thus fixing a 14 years old '&lt;FIXME&gt;'.
  * packageDescription() again catches errors from encoding
    conversions. This also fixes broken packageVersion() in C locale
    on systems where iconv does not support transliteration.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1681128000">- add patch to build with libcurl &gt;= 8</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1682078400">- CHANGES IN R 4.3.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Calling &amp;&amp; or || with LHS or (if evaluated) RHS of length greater
    than one is now always an error, with a report of the form
    'length = 4' in coercion to 'logical(1)'
    Environment variable _R_CHECK_LENGTH_1_LOGIC2_ no longer has any
    effect.
  NEW FEATURES:
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.10.1.  (This caused some platform-dependent
    changes to package check output.)  And then to the sources from
    LAPACK version 3.11.0 (with changes only to double complex
    subroutines).
  * The included LAPACK sources have been updated to include the four
    Fortran 90 routines rather than their Fortran 77 predecessors.
    This may give some different signs in SVDs or
    eigendecompositions..  (This completes the transition to LAPACK
    3.10.x begun in R 4.2.0.)
  * The LAPACK sources have been updated to version 3.11.0.  (No new
    subroutines have been added, so this almost entirely bug fixes:
    Those fixes do affect some computations with NaNs, including R's
    NA.)
  * The parser now signals _classed_ errors, notably in case of the
    pipe operator |&gt;.  The error object and message now give line and
    column numbers, mostly as proposed and provided by Duncan Murdoch
    in PR#18328.
  * toeplitz() is now generalized for asymmetric cases, with a
    toeplitz2() variant.
  * xy.coords() and xyz.coords() and consequently, e.g., plot(x,y,
    log = "y") now signal a _classed_ warning about negative values
    of y (where log(.) is NA).  Such a warning can be specifically
    suppressed or caught otherwise.
  * Regular expression functions now check more thoroughly whether
    their inputs are valid strings (in their encoding, e.g. in
    UTF-8).
  * The performance of grep(), sub(), gsub() and strsplit() has been
    improved, particularly with perl = TRUE and fixed = TRUE.  Use of
    useBytes = TRUE for performance reasons should no longer be
    needed and is discouraged: it may lead to incorrect results.
  * apropos() gains an argument dot_internals which is used by the
    completion (help(rcompgen)) engine to also see base internals
    such as .POSIXct().
  * Support in tools::Rdiff() for comparing uncompressed PDF files is
    further reduced - see its help page.
  * qqplot(x, y, ...) gains conf.level and conf.args arguments for
    computing and plotting a confidence band for the treatment
    function transforming the distribution of x into the distribution
    of y (Switzer, 1976, _Biometrika_). Contributed by Torsten
    Hothorn.
  * Performance of package_dependencies() has been improved for cases
    when the number of dependencies is large.
  * Strings newly created by gsub(), sub() and strsplit(), when any
    of the inputs is marked as "bytes", are also marked as "bytes".
    This reduces the risk of creating invalid strings and accidental
    substitution of bytes deemed invalid.
  * Support for readLines(encoding = "bytes") has been added to allow
    processing special text files byte-by-byte, without creating
    invalid strings.
  * iconv(from = "") now takes into account any declared encoding of
    the input elements and uses it in preference to the native
    encoding.  This reduces the risk of accidental creation of
    invalid strings, particularly when different elements of the
    input have different encoding (including "bytes").
  * Package repositories in getOption("repos") are now initialized
    from the repositories file when utils is loaded (if not already
    set, e.g., in .Rprofile).  (From a report and patch proposal by
    Gabriel Becker in PR#18405.)
  * compactPDF() gets a verbose option.
  * type.convert() and hence read.table() get new option tryLogical =
    TRUE with back compatible default.  When set to false, converts
    "F" or "T" columns to character.
  * Added new unit prefixes "R" and "Q" for abbreviating
    (unrealistically large) sizes beyond 10^{27} in standard = "SI",
    thanks to Henrik Bengtsson's PR#18435.
  * as.data.frame()'s default method now also works fine with atomic
    objects inheriting from classes such as "roman", "octmode" and
    "hexmode", such fulfilling the wish of PR#18421, by Benjamin
    Feakins.
  * The as.data.frame.vector() utility now errors for wrong-length
    row.names.  It warned for almost six years, with "Will be an
    error!".
  * sessionInfo() now also contains La_version() and reports codepage
    and timezone when relevant, in both print() and toLatex() methods
    which also get new option tzone for displaying timezone
    information when locale = FALSE.
  * New function R_compiled_by() reports the C and Fortran compilers
    used to build R, if known.
  * predict(&lt;lm&gt;, newdata = *) no longer unnecessarily creates an
    offset of all 0s.
  * solve() for complex inputs now uses argument tol and by default
    checks for 'computational singularity' (as it long has done for
    numeric inputs).
  * predict(&lt;rank-deficient lm&gt;, newdata=*) now obeys a new argument
    rankdeficient, with new default "warnif", warning only if there
    are non-estimable cases in newdata.  Other options include
    rankdeficient = "NA", predicting NA for non-estimable newdata
    cases.  This addresses PR#15072 by Russ Lenth and is based on his
    original proposal and discussions in PR#16158 also by David Firth
    and Elin Waring.  Still somewhat experimental.
  * Rgui console implementation now works better with the NVDA screen
    reader when the full blinking cursor is selected.  The underlying
    improvements in cursor handling may help also other screen
    readers on Windows.
  * The drop-field control in GraphApp can now be left with the TAB
    key and all controls can be navigated in the reverse order using
    the Shift+TAB key, improving accessibility of the Rgui
    configuration editor.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now fully accurate
    (instead of to "only" minimally five digits).
  * demo(error.catching) now also shows off withWarnings() and
    tryCatchWEMs().
  * As an experimental feature the placeholder _ can now also be used
    in the rhs of a forward pipe |&gt; expression as the first argument
    in an extraction call, such as _$coef. More generally, it can be
    used as the head of a chain of extractions, such as _$coef[[2]].
  * Spaces in the environment variable used to choose the R session's
    temporary directory (TMPDIR, TMP and TEMP are tried in turn) are
    now fatal.  (On Windows the 'short path' version of the path is
    tried and used if that does not contain a space.)
  * all.equal.numeric() gets a new optional switch giveErr to return
    the numeric error as attribute.  Relatedly,
    stopifnot(all.equal&lt;some&gt;(a, b, ..)) is as "smart" now, as
    stopifnot(all.equal(....)) has been already, thus allowing
    customized all.equal&lt;Some&gt;() wrappers.
  * R on Windows is now able to work with path names longer than 260
    characters when these are enabled in the system (requires at
    least Windows 10 version 1607).  Packages should be updated to
    work with long paths as well, instead of assuming PATH_MAX to be
    the maximum length.  Custom front-ends and applications embedding
    R need to update their manifests if they wish to allow this
    feature.  See
    &lt;https://blog.r-project.org/2023/03/07/path-length-limit-on-windows&gt;
    for more information.
  * 'Object not found' and 'Missing argument' errors now give a more
    accurate error context. Patch provided by Lionel Henry in
    PR#18241.
  * The @ operator is now an S3 generic. Based on contributions by
    Tomasz Kalinowski in PR#18482.
  * New generic chooseOpsMethod() provides a mechanism for objects to
    resolve cases where two suitable methods are found for an Ops
    Group Generic. This supports experimenting with alternative
    object systems. Based on contributions by Tomasz Kalinowski in
    PR#18484.
  * inherits(x, what) now accepts values other than a simple
    character vector for argument what. A new generic, nameOfClass(),
    is called to resolve the class name from what. This supports
    experimenting with alternative object systems. Based on
    contributions by Tomasz Kalinowski in PR#18485.
  * Detection of BLAS/LAPACK in use (sessionInfo()) with FlexiBLAS
    now reports the current backend.
  * The "data.frame" method for subset() now warns about extraneous
    arguments, typically catching the use of = instead of == in the
    subset expression.
  * Calling a:b when numeric a or b is longer than one may now be
    made into an error by setting environment variable
    _R_CHECK_LENGTH_COLON_ to a true value, along the proposal in
    PR#18419 by Henrik Bengtsson.
  * density(x, weights = *) now warns if automatic bandwidth
    selection happens without using weights; new optional warnWbw may
    suppress the warning.  Prompted by Christoph Dalitz' PR#18490 and
    its discussants.
  * rm(list = *) is faster and more readable thanks to Kevin Ushey's
    PR#18492.
  * The plot.lm() function no longer produces a normal Q-Q plot for
    GLMs. Instead it plots a half-normal Q-Q plot of the absolute
    value of the standardized deviance residuals.
  * The print() method for class "summary.glm" no longer shows
    summary statistics for the deviance residuals by default.  Its
    optional argument show.residuals can be used to show them if
    required.
  * The tapply() function now accepts a data frame as its X argument,
    and allows INDEX to be a formula in that case. by.data.frame()
    similarly allows INDICES to be a formula.
  * The performance of df[j] &lt;- value (including for missing j) and
    write.table(df) has been improved for data frames df with a large
    number of columns.  (Thanks to Gabriel Becker's PR#18500,
    PR#18503 and discussants, prompted by a report from Toby Dylan
    Hocking on the R-devel mailing list.)
  * The matrix multiply operator %*% is now an S3 generic, belonging
    to new group generic matrixOps.  From Tomasz Kalinowski's
    contribution in PR#18483.
  * New function array2DF() to convert arrays to data frames,
    particularly useful for the list arrays created by tapply().
  DATES and TIMES:
  * On platforms where (non-UTC) datetimes before 1902 (or before
    1900 as with system functions on recent macOS) are guessed by
    extrapolating time zones from 1902-2037, there is a warning at
    the first use of extrapolation in a session.  (As all time zones
    post 2037 are extrapolation, we do not warn on those.)
  * (Platforms using --with-internal-tzone, including Windows and by
    default macOS). How years are printed in dates or date-times can
    be controlled by environment variable R_PAD_YEARS_BY_ZERO.  The
    default remains to pad to 4 digits by zeroes, but setting value
    no gives no padding (as used by default by glibc).
  * strftime() tries harder to determine the offset for the "%z"
    format, and succeeds on the mainstream R platforms.
  * strftime() has a limit of 2048 bytes on the string produced -
    attempting to exceed this is an error.  (Previously it silently
    truncated at 255 bytes.)
  * sessionInfo() records (and by default prints) the system time
    zone as part of the locale information.  Also, the source
    (system/internal) of the date-time conversion and printing
    functions.
  * Objects of class "POSIXlt" created in this version of R always
    have 11 components: component zone is always set, and component
    gmtoff is set for times in UTC and usually set on the (almost
    all) platforms which have C-level support, otherwise is NA.
  * There are comprehensive validity checks on the structure of
    objects of class "POSIXlt" when converting (including formatting
    and printing).  (This avoids mis-conversions of hand-crafted
    objects.)
  * There is some support for using the native date-time routines on
    macOS: this is only viable on recent versions (e.g. 12.6 and 13)
    and does get wrong some historical changes (before 1900, during
    WWII).  Use of --with-internal-tzone remains the default.
  * as.POSIXct(&lt;numeric&gt;) and as.POSIXlt(.) (without specifying
    origin) now work.  So does as.Date(&lt;numeric&gt;).
  * as.Date.POSIXct(., tz) now treats several tz values, notably
    "GMT" as equivalent to "UTC", proposed and improved by Michael
    Chirico and Joshua Ulrich in PR#17674.
  * Experimental balancePOSIXlt() utility allows using "ragged" and
    or out-of-range "POSIXlt" objects more correctly, e.g., in
    subsetting and subassignments.  Such objects are now documented.
    More experimentally, a "POSIXlt" object may have an attribute
    "balanced" indicating if it is known to be filled or fully
    balanced.
  * Functions axis.Date() and axis.POSIXct() are rewritten to gain
    better default tick locations and better default formats by using
    prettyDate(). Thanks to Swetlana Herbrandt.
  * The mapping of Windows' names for time zones to IANA's 'Olson'
    names has been updated.  When ICU is available (it is by
    default), it is used to get a mapping for the current region set
    in Windows.  This can be overridden by setting environment
    variable TZ to the desired Olson name - see OlsonNames() for
    those currently available.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 16
    and so packages that provide graphics devices should be
    reinstalled.
  * The grDevices and grid packages have new functions for rendering
    typeset glyphs, primarily: grDevices::glyphInfo() and
    grid::grid.glyph().
    Rendering of typeset glyphs is only supported so far on the
    Cairo-based graphics devices and on the pdf() and quartz()
    devices.
  * The defined behaviour for "clear" and "source" compositing
    operators (via grid::grid.group()) has been changed (to align
    better with simple interpretation of original Porter-Duff
    definitions).
  * Support for gradients, patterns, clipping paths, masks, groups,
    compositing operators, and affine transformations has been added
    to the quartz() device.
  INSTALLATION on a UNIX-ALIKE:
  * A system installation of generic LAPACK 3.10.0 or later will be
    preferred to the version in the R sources.
    configure option --with-lapack=no (equivalently --without-lapack)
    forces compilation of the internal LAPACK sources.
    If --with-lapack is not specified, a system liblapack is looked
    for and used if it reports version 3.10.0 or later and does not
    contain BLAS routines.
    Packages using LAPACK will need to be reinstalled if this changes
    to using an external library.
  * On aarch64 Linux platforms using GCC, configure now defaults to
  - fPIC (instead of -fpic), as desired in PR#18326.
  * configure now checks conversion of datetimes between POSIXlt and
    POSIXct around year 2020.  Failure (which has been seen on
    platforms missing tzdata) is fatal.
  * If configure option --with-valgrind-instrumentation is given
    value 1 or 2, option --with-system-valgrind-headers is now the
    default and ignored (with a warning).  It is highly recommended
    that the system headers are installed alongside valgrind: they
    are part of its packaging on some Linux distributions and
    packaged separately (e.g. in the valgrind-devel RPM) on others.
    configure will give a warning if they are not found.
    The system headers will be required in a future release of R to
    build with valgrind instrumentation.
  * libcurl 8.x is now accepted by configure: despite a change in
    major version number it changes neither API nor ABI.
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools43, an update of the Rtools42 toolchain.  It is
    based on gcc 12 and newer versions of MinGW-W64, binutils and
    libraries.  At this time R-devel can still be built using
    Rtools42 without changes, but when R-devel is installed via the
    installer, it will by default look for Rtools43.
  * Old make targets rsync-extsoft and 32-bit ones that are no longer
    needed have been removed.
  * Default builds (including for packages) no longer select C99.
    Thus the C standard used is the default for the compiler, which
    for the toolchain in Rtools43 is C17.  (This is consistent with
    Unix builds.)
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++17 where
    available (which it is on all currently checked platforms): if
    not C++14 or C++11 is used if available otherwise C++ is not
    supported.
  * USE_FC_LEN_T is the default: this uses the correct
    (compiler-dependent) prototypes for Fortran BLAS/LAPACK routines
    called from C/C++, and requires adjustment of many such calls -
    see 'Writing R Extensions' SS6.6.1.
  * There is initial support for C++23 as several compilers are now
    supporting -std=c++23 or -std=c++2b or similar.  As for C++20,
    there no additional configure checks for C++23 features beyond a
    check that the compiler reports a __cplusplus value greater than
    that in the C++20 standard.  C++ feature tests should be used.
  * There is support for a package to indicate the version of the C
    standard which should be used to compile it, and for the
    installing user to specify this.  In most cases R defaults to the
    C compiler's default standard which is C17 (a `bug-fix' of C11) -
    earlier versions of R or compilers may have defaulted to C99.
    Current options are:
    USE_C17 Use a standard that is at most C17.  The intention is to
    allow legacy packages to still be installed when later C
    standards become the default, including packages using new
    keywords as identifiers or with K&amp;R-style function
    declarations.  This will use C17 if available, falling back
    to C11.
    USE_C90 Use the C90 (aka C89) standard.  (As that standard did
    not require compilers to identify that version, all we can
    verify is that the compiler does not claim to be using a
    later standard.  It may accept C99 features - for example
    clang accepts // to make comments.)
    USE_C99 Use the C99 standard. This should be rarely needed - it
    avoids the few new features of C11/C17 which can be useful if
    a package assumes them if C17 is specified and they are not
    implemented.
    USE_C23 Use C23 (or in future, later).  Compiler/library support
    for C23 is still being implemented, but LLVM clang from
    15.0.0 and the upcoming GCC 13 have quite extensive support.
    These can be specified as part of the SystemRequirements field in
    the package's DESCRIPTION file or _via_ options --use-C17 and so
    on of R CMD INSTALL and R CMD SHLIB.
    For further details see "Writing R Extensions" SS1.2.5.
  * (Windows) A src/Makefile.ucrt or src/Makefile.win file is now
    included after R_HOME/etcR_ARCH/Makeconf and so no longer needs
    to include that file itself.  Installation of a package with such
    a file now uses a site Makevars file in the same way as a package
    with a src/Makevars.win file would.
  * configure is now passed crucial variables such as CC and CFLAGS
    in its environment, as many packages were not setting them (as
    documented in 'Writing R Extensions' SS1.2).
    This has most effect where configure is used to compile parts of
    the package - most often by cmake or libtool which obfuscate the
    actual compile commands used.
    Also used for configure.win and configure.ucrt on Windows.
  FORTRAN FLAGS:
  * The flag -fno-optimize-sibling-calls is no longer forced for
    gfortran 7 and later.  It should no longer be needed now using
    'hidden' character-length arguments when calling BLAS/LAPACK
    routines from C/C++ is the default even for packages.  (Unless
    perhaps packages call Fortran code from C/C++ without using R's
    headers and without allowing for these arguments.)
  C-LEVEL FACILITIES:
  * The deprecated S-compatibility macros DOUBLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * The deprecated legacy typedefs of Sint and Sfloat in header R.h
    are no longer defined, and that header no longer includes header
    limits.h from C nor climits from C++.
  * New macro CAD5R() is provided in Rinternals.h and used in a few
    places in the R sources.
  * ALTREP now supports VECSXP vectors. Contributed by Gabor Csardi
    in PR#17620.
  * The Rcomplex definition (in header R_ext/Complex.h) has been
    extended to prevent possible mis-compilation when interfacing
    with Fortran (PR#18430).  The new definition causes compiler
    warnings with static initializers such as {1, 2}, which can be
    changed to {.r=1, .i=2}.
    Using the new definition from C++ depends on compiler extensions
    supporting C features that have not been incorporated into the
    C++ standards but are available in g++ and clang++: this may
    result in C++ compiler warnings but these have been worked around
    for recent versions of common compilers (GCC, Apple/LLVM clang,
    Intel).
    It is intended to change the inclusion of header R_ext/Complex.h
    by other R headers, so C/C++ code files which make use of
    Rcomplex should include that header explicitly.
  UTILITIES:
  * R CMD check does more checking of package .Rd files, warning
    about invalid email addresses and (some) invalid URIs and noting
    empty \item labels in description lists.
  * R CMD check now also reports problems when reading package news
    in md (file NEWS.md) and (optionally) plain text (file NEWS)
    formats.
  * _R_CHECK_TIMINGS_ defaults to a value from the environment even
    for R CMD check --as-cran; this allows for exceptionally fast or
    slow platforms.
    It now applies to checking PDF and HTML versions of the manuals,
    and 'checking CRAN incoming feasibility'.
  * R CMD check can optionally (but included in --as-cran) check
    whether HTML math rendering _via_ KaTeX works for the package .Rd
    files.
  * Non-interactive debugger invocations can be trapped by setting
    the environment variable _R_CHECK_BROWSER_NONINTERACTIVE_ to a
    true value.  This is enabled by R CMD check --as-cran to detect
    the use of leftover browser() statements in the package.
  * The use of sprintf and vsprintf from C/C++ has been deprecated in
    macOS 13 and is a known security risk.  R CMD check now reports
    (on all platforms) if their use is found in compiled code:
    replace by snprintf or vsnprintf respectively. [*NB:* whether
    such calls get compiled into the package is platform-dependent.]
  * Where recorded at installation, R CMD check reports the C and
    Fortran compilers used to build R.
    It reports the OS in use (if known, as given by osVersion) as
    well as that R was built for.
    It notes if a C++ standard was specified which is older than the
    current default: many packages have used C++11 to mean 'not
    C++98' - as C++11 is the minimum supported since R 4.0.0, that
    specification can probably be removed.
  * R CMD INSTALL reports the compilers (and on macOS, the SDK) used,
    and this is copied to the output of R CMD check.
    Where a C++ standard is specified, it is reported.
  * R CMD check's 'checking compilation flags in Makevars' has been
    relaxed to accept the use of flags such as -std=f2008 in
    PKG_FFLAGS.
  * tools::buildVignettes() has a new argument skip, which is used by
    R CMD check to skip (and note) vignettes with unavailable
    \VignetteDepends (PR#18318).
  * New generic .AtNames() added to enable class-specific completions
    after @. The formerly internal function findMatches() is now
    exported, mainly for use in methods for .DollarNames() and
    .AtNames().
  DEPRECATED AND DEFUNCT:
  * default.stringsAsFactors() is defunct.
  * Calling as.data.frame.&lt;class&gt;() directly (for 12 atomic classes)
    is going to be formally deprecated, currently activated by
    setting the environment variable
    _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ to non-empty, which also
    happens in R CMD check --as-cran.
  BUG FIXES:
  * Hashed environments with sizes less than 5 can now grow.
    (Reported to R-devel by Duncan Garmonsway.)
  * as.character(&lt;Rd&gt;, deparse = TRUE) failed to re-escape curly
    braces in LaTeX-like text.  (Reported by Hadley Wickham in
    PR#18324.)
  * library() now passes its lib.loc argument when requiring Depends
    packages; reported (with fix) in PR#18331 by Mikael Jagan.
  * R CMD Stangle: improved message about 'Output' files.
  * head(x, n) and tail(x, n) now signal an error if n is not
    numeric, instead of incidentally "working" sometimes returning
    all of x.  Reported and discussed by Colin Fay, in PR#18357.
  * The "lm" method for summary() now gives the correct F-statistic
    when the model contains an offset.  Reported in PR#18008.
  * C() and `contrasts&lt;-`() now preserve factor level names when
    given a function object (as opposed a function name which did
    preserve names). Reported in PR#17616.
  * c(a = 1, 2)[[]] no longer matches 2 but rather signals a
    _classed_ error.  Reported and analysed by Davis Vaughan in
    PR#18367, a duplicate of PR#18004, by Jan Meis et al.  For
    consistency, NULL[[]] is also erroneous now.  x[[]] &lt;- v gives an
    error of the same class "MissingSubscriptError".
  * The relist() function of utils now supports NULL elements in the
    skeleton (PR#15854).
  * ordered(levels = *) (missing x) now works analogously to factor(,
    ordered=TRUE); reported (with fix) by Achim Zeileis in PR#18389.
  * User-defined Rd macro definitions can now span multiple lines,
    thanks to a patch from Duncan Murdoch. Previously, the Rd parser
    silently ignored everything after the first line.
  * Plain-text help (tools::Rd2txt()) now preserves an initial blank
    line for text following description list items.
  * tools::Rd2HTML() and tools::Rd2latex() no longer split \arguments
    and \value lists at Rd comments.
  * tools::Rd2latex() now correctly handles optional text outside
    \items of argument lists as well as bracketed text at the
    beginning of sections, e.g., \value{[NULL]}.
  * as.character(&lt;POSIXt&gt;) now behaves more in line with the methods
    for atomic vectors such as numbers, and is no longer influenced
    by options().  Ditto for as.character(&lt;Date&gt;).  The
    as.character() method gets arguments digits and OutDec with
    defaults _not_ depending on options().  Use of as.character(*,
    format = .) now warns.
  * Similarly, the as.character.hexmode() and *.octmode() methods
    also behave as good citizen methods and back compatibility option
    keepStr = TRUE.
  * The as.POSIXlt(&lt;POSIXlt&gt;) and as.POSIXct(&lt;POSIXct&gt;) default
    methods now do obey their tz argument, also in this case.
  * as.POSIXlt(&lt;Date&gt;) now does apply a tz (time zone) argument, as
    does as.POSIXct(); partly suggested by Roland Fuss on the R-devel
    mailing list.
  * as.Date.POSIXlt(x) now also works when the list components are of
    unequal length, aka "partially filled" or "ragged".
  * expand.model.frame() looked up variables in the wrong environment
    when applied to models fitted without data.  Reported in
    PR#18414.
  * time() now (also) uses the ts.eps = getOption("ts.eps") argument
    and thus by default rounds values very close to the start (or
    end) of a year.  Based on a proposal by Andre"i V. Kostyrka on
    R-help.
  * Printing of a factanal() result with just one factor and sort =
    TRUE now works regularly, fixing PR#17863 by Timothy Bates,
    thanks to the 'R Contributors' working group.
  * Printing 0-length objects of class "factor", "roman", "hexmode",
    "octmode", "person", "bibentry", or "citation" now prints
    something better, one of which fixes PR#18422, reported by
    Benjamin Feakins.
  * Sys.timezone() queries timedatectl only if systemd is loaded;
    addressing a report by Jan Gorecki in PR#17421.
  * The formula method of cor.test() had scoping problems when
    environment(formula) was not the calling environment; reported
    with a patch proposal by Mao Kobayashi in PR#18439.
  * attach() of an environment with active bindings now preserves the
    active bindings.  Reported by Kevin Ushey in PR#18425.
  * BLAS detection now works also with system-provided libraries not
    available as regular files.  This fixes detection of the
    Accelerate framework on macOS since Big Sur.  Reported by David
    Novgorodsky.
  * download.file() gives a helpful error message in case of an
    invalid download.file.method option, thanks to Colin Fay's report
    in PR#18455.
  * Sporadic crashes of Rterm when using completion have been fixed.
  * Rprof() is now more reliable.  A livelock in thread
    initialization with too short sampling interval has been fixed on
    macOS.  A deadlock in using the C runtime has been fixed on
    Windows.  A potential deadlock has been prevented on Unix.
  * Cursor placement in Rgui now works even after a fixed-width font
    is selected.
  * Mandatory options (options()) are now set on startup so that
    saving and restoring them always works (PR#18372).
  * Package installation, R CMD INSTALL or install.packages(*), now
    parses each of the &lt;pkg&gt;/R/*.R files individually instead of
    first concatenating and then parse()ing the large resulting file.
    This allows parser or syntax errors to be diagnosed with correct
    file names and line numbers, thanks to Simon Dedman's report and
    Bill Dunlap's patch in PR#17859.
    This _does_ require syntactically self contained R source files
    now, fixing another inadvertent bug.
  * predict.lm(&lt;model with offset&gt;) now finds the offset in the
    correct environment, thanks to Andr'e Gillibert's report and patch
    in PR#18456.
  * getInitial(&lt;formula&gt;) now finds the selfStart model in the
    correct environment.  (Reported by Ivan Krylov in PR#18368.)
  * Fix for possible segfault when using recently-added graphics
    features, such as gradients, clipping paths, masks, and groups
    with pdf(file=NULL).
  * class(m) &lt;- class(m) no longer changes a matrix m by adding a
    class _attribute_.
  * packageDate(pkg) now only warns once if there is no pkg.
  * When ts() creates a multivariate time series, "mts", it also
    inherits from "array" now, and is.mts() is documented _and_
    stricter.
  * Rd2txt() now preserves line breaks of \verb Rd content and from
    duplicated \cr.  The former also fixes the rendering of verbatim
    output from Rd \Sexpr in plain-text help.
  * uniroot(f, interval) should no longer wrongly converge _outside_
    the interval in some cases where abs(f(x)) == Inf for an x at the
    interval boundary, thanks to posts by Ben Bolker and Serguei
    Sokol on R-devel.
  * Vectorized alpha handling in palette functions such as in gray(),
    rainbow(), or hcl.colors() works correctly now, thanks to Achim
    Zeileis' report and patch in PR#18476.
  * Formatting and print()ing of bibentry objects has dropped the
    deprecated citation.bibtex.max argument, such that the bibtex
    argument's default for print.bibentry() depends directly on the
    citation.bibtex.max option, whereas in format.bibentry() the
    option no longer applies.
  * Attempting to use a character string naming a foreign function
    entry point in a foreign function call in a package will now
    signal an error if the packages has called R_forceSymbols to
    specify that symbols must be used.
  * An error in table() could permanently set options(warn=2)
    promoting all subsequent warnings to errors.
  * The sigma() function gave misleading results for binary GLMs.  A
    new method for objects of class "glm" returns the square root of
    the estimate of the dispersion parameter using the same
    calculation as summary.glm().
  * bs() and ns() in the (typical) case of automatic knot
    construction, when some of the supposedly inner knots coincide
    with boundary knots, now moves them inside (with a warning),
    building on PR#18442 by Ben Bolker.
  * R CMD on Windows now skips the site profile with --no-site-file
    and --vanilla even when R_PROFILE is set (PR#18512, from Kevin
    Ushey).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1686916800">- CHANGES IN R 4.3.1:
  C-LEVEL FACILITIES:
  * The C-level API version of R's integrate(), Rdqags() in Applic.h,
    now returns the correct number of integrand evaluations neval,
    fixing PR#18515 reported and diagnosed by Stephen Wade.
  * The C prototypes for LAPACK calls dspgv and dtptrs in
    R_exts/Lapack.h had one too many and one too few character length
    arguments - but this has not caused any known issues. To get the
    corrected prototypes, include
    [#]include &lt;Rconfig.h&gt; // for PR18534fixed
    [#]ifdef PR18534fixed
    [#] define usePR18534fix 1
    [#]endif
    [#]include &lt;R_exts/Lapack.h&gt;
    in your C/C++ code (PR#18534).
  INSTALLATION:
  * Many of the checks of esoteric Internet operations and those
    using unreliable external sites have been moved to a new target
    that is not run by default and primarily intended for the core
    developers.  To run them use
    cd tests; make test-Internet-dev
  BUG FIXES:
  * .S3methods(), typically called from methods(), again marks
    methods from package base as visible.
    Also, the visibility of non-base methods is again determined by
    the method's presence in search().
  * tools::Rdiff() is now more robust against invalid strings, fixing
    installation tests on Windows without Rtools installed
    (PR#18530).
  * Fix (new) bug in hcl.colors(2, *), by Achim Zeileis (PR#18523).
  * head(., &lt;illegal&gt;) and tail(..) now produce more useful "Error in
    ...." error messages, fixing PR#18362.
  * Package code syntax on Windows is checked in UTF-8 when UTF-8 is
    the native encoding.
  * na.contiguous(x) now also returns the first run, when it is at
    the beginning and there is a later one of the same length;
    reported to R-devel, including a fix, by Georgi Boshnakov.
    Further, by default, it modifies only an existing attr(*,"tsp")
    but otherwise no longer sets one.
  * chol(&lt;not pos.def&gt;, pivot = &lt;T|F&gt;) now gives a correct error or
    warning message (depending on pivot), thanks to Mikael Jagan's
    (PR#18541).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1699012800">- CHANGES IN R 4.3.2:
  NEW FEATURES:
  * The default initialization of the "repos" option from the
    repositories file at startup can be skipped by setting
    environment variable R_REPOSITORIES to NULL such that
    getOption("repos") is empty if not set elsewhere.
  * qr.X() is now an implicit S4 generic in methods.
  * iconv(to = "ASCII//TRANSLIT") is emulated using substitution on
    platforms which do not support it (notably Alpine Linux).  This
    should give a human-readable conversion in ASCII on all platforms
    (rather than NA_character_).
  * trans3d() gains options continuous and verbose addressing the
    problem of possible "wrap around" when projecting too long
    curves, as reported by Achim Zeileis in PR#18537.
  * tools::showNonASCII() has been rewritten to work better on macOS
    14 (which has a changed implementation of iconv()).
  * tiff(type = "quartz") (the default on macOS) now warns if
    compression is specified: it continues to be ignored.
  INSTALLATION on a UNIX-ALIKE:
  * There is some support for building with Intel's LLVM-based
    compilers on x86_64 Linux, such as (C) icx, (C++) ipcx and
    (Fortran) ifx from oneAPI 2023.x.y.
  * There is support for using LLVM's flang-new as the Fortran
    compiler from LLVM 16.0.x (preferably 17.0.0 or later).
  UTILITIES:
  * R CMD check reports the use of the Fortran 90 random number
    generator RANDOM_NUMBER() and the subroutines to initialize it.
    'Writing R Extensions' has example code to use R's RNGs from
    Fortran.
  BUG FIXES:
  * substr(x, n, L) &lt;- cc now works (more) correctly for multibyte
    UTF-8 strings x when L &gt; nchar(x), thanks to a report and patch
    by 'Architect 95'.
  * contrib.url(character()) now returns 0-length character() as
    documented, which also avoids spurious warnings from
    available.packages() et al. in the edge case of an empty vector
    of repository URLs.
  * readChar(., 4e8) no longer fails, thanks to Kodi Arfer's report
    (PR#18557).
  * lapply(&lt;list&gt;, as.data.frame) no longer warns falsely for some
    base vector components.
  * Communication between parent and child processes in the multicore
    part of parallel could fail on platforms that do not support an
    arbitrarily large payload in system functions read()/write() on
    pipes (seen on macOS where a restriction to INT_MAX bytes is
    documented, without doing a partial read unlike Linux). The
    payload is now split into 1Gb chunks to avoid that problem.
    (PR#18571)
  * qqplot(x,y, conf.level=.) gives better confidence bounds when
    length(x) != length(y), thanks to Alexander Ploner's report and
    patch proposal (PR#18557).
  * norm(&lt;0-length&gt;, "2") now gives zero instead of an error, as all
    the other norm types, thanks to Mikael Jagan's PR#18542.
  * Build-stage Rd macros \packageAuthor and \packageMaintainer now
    process Authors@R, fixing NA results when the package DESCRIPTION
    omits Author and Maintainer fields.
  * Formatting and printing complex numbers could give things like
    0.1683-0i because of rounding error: -0i is now replaced by +0i.
  * postscript() refused to accept a title comment containing the
    letter "W" (PR#18599).
  * isoreg(c(1,Inf)) signals an error instead of segfaulting, fixing
    PR#18603.
  * tiff(type = "Xlib") was only outputting the last page of
    multi-page plots.
  * tools::latexToUtf8() again knows about \~{n} and other letters
    with tilde, fixing a regression in R 4.3.0, and about \^{i} as an
    alternative to \^{\i} (similarly with other accents).
    Furthermore, LaTeX codes for accented I letters are now correctly
    converted, also fixing related mistakes in
    tools::encoded_text_to_latex().
  * tar(*, tar = "internal") no longer creates out-of-spec tar files
    in the very rare case of user or group names longer than 32
    bytes, fixing PR#17871 with thanks to Ivan Krylov.
  * When using the "internal" timezone datetime code, adding a
    fraction of a second no longer adds one second, fixing PR#16856
    from a patch by Ivan Krylov.
  * tools::checkRd() no longer produces spurious notes about
    "unnecessary braces" from multi-line Rd results of \Sexpr macros.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1709208000">- CHANGES IN R 4.3.3:
  NEW FEATURES:
  * iconv() now fixes up variant encoding names such as "utf8"
    case-insensitively.
  DEPRECATED AND DEFUNCT:
  * The legacy encoding = "MacRoman" is deprecated in pdf() and
    postscript(): support was incomplete in earlier versions of R.
  BUG FIXES:
  * Arguments are now properly forwarded to methods on S4 generics
    with ... in the middle of their formal arguments. This was broken
    for the case when a method introduced an argument but did not
    include ... in its own formals. Thanks to Herv'e Pag`es for the
    report PR#18538.
  * Some invalid file arguments to pictex(), postscript() and xfig()
    opened a file called NA rather than throw an error.  These
    included postscript(NULL) (which some people expected to work
    like pdf(NULL)).
  * Passing filename = NA to svg(), cairo_pdf(), cairo_ps() or the
    Cairo-based bitmap devices opened a file called NA: it now throws
    an error.
  * quartz(file = NA) opened a file called NA, including when used as
    a Quartz-based bitmap device.  It now gives an error.
  * rank(&lt;long vector&gt;) now works, fixing PR#18617, thanks to Ilia
    Kats.
  * seq.int() did not adequately check its length.out argument.
  * match(&lt;POSIXct&gt;, .) is correct again for differing time zones,
    ditto for "POSIXlt", fixing PR#18618 reported by Bastian Klein.
  * drop.terms(*, dropx = &lt;0-length&gt;) now works, fixing PR#18563 as
    proposed by Mikael Jagan.
  * drop.terms(*) keeps + offset(.) terms when it should, PR#18565,
    and drop.terms() no longer makes up a response, PR#18566, fixing
    both bugs thanks to Mikael Jagan.
  * getS3method("t", "test") no longer finds the t.test() function,
    fixing PR#18627.
  * pdf() and postscript() support for the documented Adobe encodings
    "Greek" and "Cyrilllic" was missing (although the corresponding
    Windows' codepages could be used).
  * Computations of glyph metric information for pdf() and
    postscript() did not take into account that transliteration could
    replace one character by two or more (only seen on macOS 14) and
    typically warned that the information was not known.
  * rank(x) no longer overflows during integer addition, when
    computing rank average for largish but not-yet long vector x,
    fixing PR#18630, thanks to Ilia Kats.
  * list.files() on Windows now returns also files with names longer
    that 260 bytes (the Windows limit is 260 characters).
    Previously, some file names particularly with 'East Asian'
    characters were omitted.
  * cov2cor(&lt;0 x 0&gt;) now works, fixing PR#18423 thanks to Mikael
    Jagan and Elin Waring.
  * cov2cor(&lt;negative diagonal&gt;) and similar now give one warning
    instead of two, with better wording, fixing PR#18424 thanks to
    Mikael Jagan.
  * tools:: startDynamicHelp() now ensures port is in proper range,
    fixing PR#18645.
  * pbeta(x, a,b) is correct now for x=0 or 1 in the boundary cases
    where a or b or both are 0, fixing PR#18672 thanks to Michael
    Fay.
  * pmatch(x, table) for large table, also called for data frame row
    selection, dfrm[nm, ], is now interruptible, fixing PR#18656.
  * predict(&lt;rank-deficient lm&gt;, newdata=*) fix computing of nbasis,
    see Russ Lenth's comment 29 in PR#16158.
  * Added a work-around for a bug in macOS 14.3.1 and higher which
    prevents R plots in the Quartz Cocoa device from updating on
    screen.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1713960000">- CHANGES IN R 4.4.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Startup banners, R --version, sessionInfo() and R CMD check no
    longer report (64-bit) as part of the platform as this is almost
    universal - the increasingly rare 32-bit platforms will still
    report (32-bit).
    On Windows, ditto for window titles.
  * is.atomic(NULL) now returns FALSE, as NULL is not an atomic
    vector.  Strict back-compatibility would replace is.atomic(foo)
    by (is.null(foo) || is.atomic(foo)) but should happen only
    sparingly.
  NEW FEATURES:
  * The confint() methods for "glm" and "nls" objects have been
    copied to the stats package.  Previously, they were stubs which
    called versions in package MASS. The MASS namespace is no longer
    loaded if you invoke (say) confint(glmfit).  Further, the "glm"
    method for profile() and the plot() and pairs() methods for class
    "profile" have been copied from MASS to stats.  (profile.nls()
    and plot.profile.nls() were already in stats.)
  * The confint() and profile methods for "glm" objects have gained a
    possibility to do profiling based on the Rao Score statistic in
    addition to the default Likelihood Ratio. This is controlled by a
    new test = argument.
  * The pairs() method for "profile" objects has been extended with a
    which = argument to allow plotting only a subset of the
    parameters.
  * The "glm" method for anova() computes test statistics and
    p-values by default, using a chi-squared test or an F test
    depending on whether the dispersion is fixed or free.  Test
    statistics can be suppressed by giving argument test a false
    logical value.
  * In setRepositories() the repositories can be set using their
    names via name = instead of index ind =.
  * methods() and .S3methods() gain a all.names option for the (rare)
    case where functions starting with a . should be included.
  * Serializations can now be interrupted (e.g., by Ctrl-C on a
    Unix-alike) if they take too long, e.g., from save.image(),
    thanks to suggestions by Ivan Krylov and others on R-devel.
  * New startup option --max-connections to set the maximum number of
    simultaneous connections for the session.  Defaults to 128 as
    before: allowed values up to 4096 (but resource limits may in
    practice restrict to smaller values).
  * R on Windows (since Windows 10 2004) now uses the new Segment
    Heap allocator. This may improve performance of some
    memory-intensive applications.
  * When R packages are built, typically by R CMD build &lt;pkg&gt;, the
    new --user=&lt;build_user&gt; option overrides the (internally
    determined) user name, currently Sys.info()["user"] or LOGNAME.
    This is a (modified) fulfillment of Will Landau's suggestion in
    PR#17530.
  * tools::testInstalledBasic() gets new optional arguments outDir
    and testSrcdir, e.g., allowing to use it in a &lt;builddir&gt; !=
    &lt;srcdir&gt; setup, and in standard "binary" Windows installation
  * if* a source tests/ folder is present.
  * range(&lt;DT_with_Inf&gt;, finite = TRUE) now work for objects of class
    "Date", "POSIXct", and "POSIXlt" with infinite entries,
    analogously to range.default(), as proposed by Davis Vaughan on
    R-devel.  Other range()-methods can make use of new function
    .rangeNum().
  * New .internalGenerics object complementing .S3PrimitiveGenerics,
    for documentation and low-level book-keeping.
  * grid() now invisibly returns the x- and y- coordinates at which
    the grid-lines were drawn.
  * norm(., type) now also works for complex matrices.
  * kappa(., exact = TRUE, norm = *) now works for all norms and also
    for complex matrices.  In symmetric / triangular cases, the new
    argument uplo = "U" | "L" allows the upper or lower triangular
    part to be specified.
  * memDecompress(type = "unknown") recognizes compression in the
    default 'zlib' format as used by memCompress(type = "gzip").
  * memCompress() and memDecompress() will use the libdeflate library
    (&lt;https://github.com/ebiggers/libdeflate&gt;) if installed.  This
    uses the same type of compression for type = "gzip" but is 1.5-2x
    faster than the system libz library on some common platforms: the
    speed-up may depend on the library version.
  * diff() for objects of class "Date", "POSIXct", and "POSIXlt"
    accepts a units argument passed via ....
  * Dynamic help now does a much better job of rendering package
    DESCRIPTION metadata.
  * Rprof() gains an event argument and support for elapsed (real)
    time profiling on Unix (PR#18076).
  * filled.contour() gains a key.border argument.
  * tools::update_pkg_po() gets arguments pot_make and mo_make for
    _not_ re-making the corresponding files, and additionally a
    verbose argument.
  * Hexadecimal string colour specifications are now accepted in
    short form, so, for example, we can use "#123", which is
    equivalent to "#112233".
    Thanks to MikeFC for the original idea and Ella Kaye, Malcolm
    Barrett, George Stagg, and Hanne Oberman for the patch.
  * Plain-text help shows \var markup by angle brackets.
  * The new experimental primitive function declare() is intended to
    eventually allow information about R code to be communicated to
    the interpreter, compiler, and code analysis tools. The syntax
    for declarations is still being developed.
  * Functions psmirnov(), qsmirnov() and rsmirnov() in package stats
    have had argument two.sided renamed to alternative, to take into
    account that the permutation distributions of the one-sided
    statistics can be different in the case of ties.  Consequence of
    PR#18582.
  * sort() is now an implicit S4 generic in methods.
  * Formatting and printing, format(z), print(z), of complex vectors
    z no longer zap relatively small real or imaginary parts to zero,
    fixing PR#16752.  This is an API change, as it was documented
    previously to round real and imaginary parts together on purpose,
    producing nicer looking output.  As mentioned, e.g. in the PR,
    this change is compatible with many other "R-like" programming
    environments.
    We have simplified the internal code and now basically format the
    real and imaginary parts independently of each other.
  * New experimental functions Tailcall() and Exec() to support
    writing stack-space-efficient recursive functions.
  * Where characters are attempted to be plotted by pdf(),
    postscript() and xfig() which are not in the selected 8-bit
    character set (most often Latin-1) and the R session is using a
    UTF-8 locale, the warning messages will show the UTF-8 character
    rather than its bytes and one dot will be substituted per
    character rather than per byte.  (Platforms whose iconv() does
    transliteration silently plot the transliteration.)
    In a UTF-8 locale some transliterations are now done with a
    warning (e.g., dashes and Unicode minus to hyphen, ligatures are
    expanded, permille (‰) is replaced by o/oo), although the OS may
    have got there first.  These are warnings as they will continue
    to be replaced by dots in earlier versions of R.
  * The matrix multiplication functions crossprod() and tcrossprod()
    are now also primitive and S3 generic, as %*% had become in R
    4.3.0.
  * source() and example() have a new optional argument catch.aborts
    which allows continued evaluation of the R code after an error.
  * The non-Quartz tiff() devices allow additional types of
    compression if supported by the platform's libtiff library.
  * The list of base and recommended package names is now provided by
    tools::standard_package_names().
  * cairo_pdf() and cairo_ps() default to onefile = TRUE to closer
    match pdf() and postscript().
  * New option catch.script.errors provides a documented way to catch
    errors and then continue in non-interactive use.
  * L %||% R newly in base is an expressive idiom for the phrases
    if(!is.null(L)) L else R or if(is.null(L)) R else L.
  * The return value from warnings() now always inherits from
    "warnings" as documented, now also in the case of no warnings
    where it previously returned NULL.
  * as.complex("1i") now returns 0 + 1i instead of NA with a warning.
  * z &lt;- c(NA, 1i) now keeps the imaginary part Im(z[1]) == 0, no
    longer coercing to NA_complex_.  Similarly, cumsum(z) correctly
    sums real and imaginary parts separately, i.e., without
    "crosstalk" in case of NAs.
  * On Alpine Linux iconv() now maps "latin2", "latin-2", "latin9"
    and "latin-9" to encoding names the OS knows about
    (case-insensitively).
  * iconv(sub = "Unicode") now always zero-pads to four (hex) digits,
    rather than to 4 or 8.  (This seems to have become the convention
    once Unicode restricted the number of Unicode points to 2^21 - 1
    and so will never need more than 6 digits.)
  * NCOL(NULL) now returns 0 instead of 1, for consistency with
    cbind().
  * The information for the Euro glyph missing from the Adobe .afm
    files for the Courier, Helvetica and Times families has been
    copied from their URW equivalents - this will improve vertical
    centring in the pdf() and postscript() devices.
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.12.0.  The changes are almost entirely cosmetic.
  * The included LAPACK sources have been updated to version 3.12.0
    and some further double-complex routines added.
  * There are new font families for the 2014--5 URW 2.0 fonts (see
    ?pdf) which are included in recent versions of Ghostscript.
    These have font widths for most Greek glyphs and a few others
    which were missing from the original versions (whose font
    families remain available for reproducibility, although
    Ghostscript-based viewers will render using the 2.0 versions).
  * Improve the large-n efficiency of as.matrix(&lt;dist&gt;), thanks an R
    contributors effort, notably by Tim Taylor and Heather Turner,
    see PR#18660.
  * The default and numeric methods of all.equal() get a check.class
    option.
  * zapsmall() gets new optional arguments, function mFUN and min.d,
    for extra flexibility; fulfills a wish in PR#18199.  Also, it is
    now an implicit S4 generic in package methods.
  * The Rd filter for aspell() gains an ignore argument.
  * New generic function sort_by(), primarily useful for the
    data.frame method which can be used to sort rows of a data frame
    by one or more columns.
  * The icence headers for the RPC code in src/extra/xdr have been
    updated to use the GPL-compatible licence published by Oracle
    America in 2010.
  * New function pkg2HTML() in tools to create single-page HTML
    reference manuals for R packages.
  * The byte code evaluator now uses less C stack space for recursive
    calls to byte-compiled functions. It also makes more of an effort
    to avoid allocations for scalar return values.
  * New completion option backtick (disabled by default) allows
    non-syntactic completions to be wrapped in backquotes. This is
    currently only useful for Jupyter notebooks via the IRkernel
    package, and may cause problems for other backends.
  INSTALLATION:
  * The parser has been updated to work with bison 3.8.2, which is
    now used for the pre-generated parsers in gram.c, file.c, and
    gramRd.c. A few parser error messages have changed, which may
    affect code that relies on exact messages.
  INSTALLATION on a UNIX-ALIKE:
  * System valgrind headers are now required to use configure option
  - -with-valgrind-instrumentation with value 1 or 2.
  * configure will warn if it encounters a 32-bit build, as that is
    nowadays almost untested.
  * Environment variable R_SYSTEM_ABI is no longer used and so no
    longer recorded in etc/Renviron (it was not on Windows and was
    only ever used when preparing package tools).
  * If the libdeflate library and headers are available, libdeflate
    rather than libz is used to (de)compress R objects in lazy-load
    databases.  Typically tasks spend up to 5% of their time on such
    operations, although creating lazy-data databases is one of the
    exceptions.
    This can be suppressed if the library is available by the
    configure option --without-libdeflate-compression.
  * configure option --enable-lto=check has not worked reliably since
    2019 and has been removed.
  * The minimum autoconf requirement for a maintainer build has been
    increased to autoconf 2.71.
    It is intended to increase this to 2.72 for R 4.5.0: the
    distributed configure file was generated using 2.72.
  * The minimum version requirement for an external LAPACK has been
    reduced to 3.9.0.
  * No default C++ compiler is set if no C++17 compiler is detected:
    there is no longer an automatic fallback to C++14 or C++11.
    Compilers from the last five years should have sufficient
    support: for others macros CXX and CXXSTD can be set in file
    config.site to provide a fallback if needed.
    The Objective-C++ compiler now by default uses the standard
    selected by R for C++ (currently C++17) rather than the default
    standard for the C++ compiler (which on macOS is still C++98).
  INSTALLATION on macOS:
  * A new configure option --with-newAccelerate makes use of Apple's
    'new' BLAS / LAPACK interfaces in their Accelerate framework.
    Those interfaces are only available in macOS 13.3 or later, and
    building requires SDK 13.3 or later (from the Command Line Tools
    or Xcode 14.3 or later).
    By default the option uses new Accelerate for BLAS calls: to also
    use it for LAPACK use option --with-newAccelerate=lapack.  The
    later interfaces provide LAPACK 3.9.1 rather than 3.2.1: 3.9.1 is
    from 2021-04 and does not include the improved algorithms
    introduced in LAPACK 3.10.0 (including for BLAS calls).
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools44, an update of the Rtools43 toolchain.  It is
    based on GCC 13 and newer versions of MinGW-W64, binutils and
    libraries (targeting 64-bit Intel CPUs).  R-devel can no longer
    be built using Rtools43 without changes.
  * Rtools44 has experimental support for 64-bit ARM (aarch64) CPUs
    _via_ the LLVM 17 toolchain using lld, clang/flang-new and
    libc++.
  UTILITIES:
  * R CMD check notes when S4-style exports are used without
    declaring a strong dependence on package methods.
  * tools::checkRd() (used by R CMD check) detects more problems with
    \Sexpr-based dynamic content, including bad nesting of \Sexprs
    and invalid arguments.
  * tools::checkRd() now reports Rd titles and section names ending
    in a period; this is ignored by R CMD check unless environment
    variable _R_CHECK_RD_CHECKRD_MINLEVEL_ is set to -5 or smaller.
  * R CMD check now notes Rd files without an \alias, as long
    documented in 'Writing R Extensions' §1.3.1.  The check for a
    missing \description has been moved from tools::checkRd() to
    tools::checkRdContents().
  * R CMD check now visits inst/NEWS.Rd and OS-specific man
    subdirectories when checking Rd files.
  * tools::checkDocFiles() and tools::checkRdContents() now also
    check internal Rd files by default, but "specially" (ignoring
    missing documentation of arguments).
  * R CMD Rdiff gets option --useEx.
  * R CMD check now warns on non-portable uses of Fortran KIND such
    as INTEGER(KIND=4) and REAL(KIND=8).
    To see the failing lines set environment variable
    _R_CHECK_FORTRAN_KIND_DETAILS_ to a true value.
  * When checking Rd files, R CMD check now notes some of the "lost
    braces" that tools::checkRd() finds.  Typical problems are Rd
    macros missing the initial backslash (e.g., code{...}), in-text
    set notation (e.g., {1, 2}, where the braces need escaping), and
    \itemize lists with \describe-style entries of the form
    \item{label}{description}.
  * R CMD INSTALL (and hence check) will compile C++ code with
  - DR_NO_REMAP if environment variable _R_CXX_USE_NO_REMAP_ is set
    to a true value.  It is planned that this will in future become
    the default for compiling C++.
  * The new built-in Rd macro \dontdiff{} can be used to mark example
    code whose output should be ignored when comparing check output
    to reference output (tests/Examples/&lt;pkg&gt;-Ex.Rout.save).  The
    \dontdiff tag, like \donttest, is _not_ shown on the rendered
    help page, so provides a clean alternative to ##
    IGNORE_RDIFF_(BEGIN|END) comments.
  * R CMD build when there is no NAMESPACE, now uses the recommended
    exportPattern("^[^.]"), instead of exporting everything.
  * R CMD check now warns about non-ASCII characters in the NAMESPACE
    file (in addition to R files). Such packages are not portable and
    may fail to install on some platforms.
  C-LEVEL FACILITIES:
  * Headers R_ext/Applic.h and R-ext/Linpack.h used to include
    R_ext/BLAS.h although this was undocumented and unneeded by their
    documented entry points.  They no longer do so.
  * New function R_missing(), factored out from do_missing(), used to
    fix PR#18579.
  * SEXP type S4SXP has been renamed to OBJSXP to support
    experimenting with alternative object systems.  The S4SXP value
    can still be used in C code but is now deprecated.  Based on
    contributions from the R Consortium's Object-Oriented Programming
    Working Group.
  * New function pow1p(x,y) for accurate (1+x)^y.
  * mkCharLenCE was incorrectly documented to take a size_t length
    but was implemented with int (and character strings in R are
    limited to 2^31 - 1 bytes).
  DEPRECATED AND DEFUNCT:
  * data() no longer handles zipped data from long-defunct (since R
    2.13.0) --use-zip-data installations.
  * The legacy graphics devices pictex() and xfig() are now
    deprecated.  They do not support recent graphics enhancements and
    their font handling is rudimentary. The intention is to retain
    them for historical interest as long as they remain somewhat
    functional.
  * Support for encoding = "MacRoman" has been removed from the pdf()
    and postscript() devices - this was a legacy encoding supporting
    classic macOS up to 2001 and no longer has universal libiconv
    support.
  * is.R() is deprecated as no other S dialect is known to be in use
    (and this could only identify historical dialects, not future
    ones).
    Further information on calls can be obtained by setting the
    environment variable _R_DEPRECATED_IS_R_ to error which turns the
    deprecation warning into an error and so by default gives a
    traceback.  (This is done by R CMD check --as-cran.)
  * UseMethod() no longer forwards local variables assigned in the
    generic function into method call environments before evaluating
    the method body. This makes method calls behave more like
    standard function calls and makes method code easier to analyze
    correctly.
  * The twelve as.data.frame.&lt;class&gt;() methods which were deprecated
    only via _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ and in R CMD
    check --as-cran are formally deprecated now in favour of calling
    as.data.frame() or as.data.frame.vector().  The deprecation
    "check" now works also when as.data.frame() is S4 generic thanks
    to Ivan Krylov.
  * The default method for the directional comparison operators &lt;, &gt;,
    &lt;=, and &gt;= now signals an error when one of the operands is a
    language object, i.e. a symbol or a call.
  * For terms.formula(), deprecate abb and neg.out arguments
    _formally_ in addition to just documenting it.
  BUG FIXES:
  * The methods package is more robust to not being attached to the
    search path.  More work needs to be done.
  * pairwise.t.test() misbehaved when subgroups had 0 DF for
    variance, even with pool.sd = TRUE.  (PR#18594 by Jack Berry).
  * Probability distribution functions [dpq]&lt;distrib&gt;(x, *), but also
    bessel[IKJY](x, .) now consistently preserve attributes(x) when
    length(x) == 0, e.g., for a 2 x 0 matrix, thanks to Karolis
    Koncevičius' report PR#18509.
  * Group "Summary" computations such as sum(1:3, 4, na.rm = 5, NA,
    7, na.rm = LL) now give an error instead of either 17 or NN for
    LL true or false, as proposed by Ivan Krylov on the R-devel
    mailing list.  (This also means it is now an error to specify
    na.rm more than once.)
  * as.complex(x) now returns complex(real = x, imaginary = 0) for
    _all_ numerical and logical x, notably also for NA or
    NA_integer_.
  * Directories are now omitted by file.copy(, recursive = FALSE) and
    in file.append() (PR#17337).
  * gsub() and sub() are now more robust to integer overflow when
    reporting errors caused by too large input strings (PR#18346).
  * Top-level handlers are now more robust to attempts to remove a
    handler whilst handlers are running (PR#18508).
  * The handling of Alt+F4 in dialogs created on Windows using
    GraphApp has been fixed (PR#13870).
  * density() more consistently computes grid values for the
    FFT-based convolution, following Robert Schlicht's analysis and
    proposal in PR#18337, correcting density values typically by a
    factor of about 0.999.  Argument old.coords = TRUE provides back
    compatibility.
  * palette.colors() gains a name argument that defaults to FALSE
    controlling whether the vector of colours that is returned has
    names (where possible).  PR#18529.
  * tools::xgettext() no longer extracts the (non-translatable) class
    names from warningCondition and errorCondition calls.
  * S3method(&lt;gen&gt;, &lt;class&gt;, &lt;func&gt;) in the NAMESPACE file now works
    (again) when &lt;func&gt; is visible from the namespace, e.g.,
    imported, or in base.
  * getParseData(f) now also works for a function defined in the
    first of several &lt;pkg&gt;/R/*.R source files, thanks to Kirill
    Müller's report and Duncan Murdoch's patch in PR#16756.
  * Rd \Sexpr macros with nested #ifdef conditionals were not
    processed.
  * A non-blocking connection with non-default encoding (such as a
    socket) now correctly returns from readLines() after new data has
    arrived also when its EOF had been reached previously.  Thanks to
    Peter Meilstrup's report on R-devel and Ivan Krylov's report and
    patch proposal in PR#18555.
  * tools::checkRdContents() failed to detect empty argument
    descriptions when they spanned multiple lines, including those
    generated by prompt().  These cases are now noted by R CMD check.
  * Plain-text help no longer outputs spurious colons in the
    arguments list (for multi-line \item labels in the Rd source).
  * kappa() and rcond() work correctly in more cases; kappa(., norm =
    "2") now warns that it computes the 1-norm with (default) exact =
    FALSE; prompted by Mikael Jagan's quite comprehensive PR#18543.
  * Rd skeletons generated by prompt() or promptData() now use a
    dummy title (so R CMD build works).  tools::checkRdContents() has
    been updated to detect such template leftovers, including from
    promptPackage().
  * When S4 method dispatch fails because no method was found, the
    error message now includes the signature argument names; thanks
    to Michael Chirico's proposal on the R-devel list.
  * withAutoprint({ .. }) now preserves srcrefs previously lost,
    thanks to Andrew Simmons' report plus fix in PR#18572.
  * transform.data.frame() no longer adjusts names; in particular,
    untransformed variables are kept as-is, including those with
    syntactically invalid names (PR#17890).
  * The keep.source option for Rd \Sexpr blocks is no longer ignored.
  * The formula methods for t.test() and wilcox.test() now catch when
    paired is passed, addressing PR#14359; use Pair(x1, x2) ~ 1 for a
    paired test.
  * The level reported in the browser prompt was often too large. It
    now shows the number of browser contexts on the stack.
  * For cbind() and rbind(), the optional deparse.level argument is
    now properly passed to methods, thanks to Mikael Jagan's PR#18579
    and comments there.
  * Some error and warning messages for large ('long vector')
    matrix(v, nr, nc) and dim(m) &lt;- d are now correct about sizes,
    using long long formatting, fixing PR#18612 (and more) reported
    by Mikael Jagan.
  * readChar(useBytes = TRUE) now terminates strings even when the
    underlying connection uses extra spaces in the input buffer.
    This fixes problems with extra garbage seen with gzip
    connections, PR#18605.
  * Named capture in PCRE regular expressions now works also with
    more than 127 named groups (PR#18588).
  * Datetime functions are now robust against long jumps when dealing
    with internal time zone changes.  This avoids confusing warnings
    about an invalid time zone, previously triggered by turning
    warnings into errors or handling them via tryCatch (PR#17966,
    PR#17780).
  * Datetime functions now restore even an empty TZ environment
    variable after internal time zone changes (PR#17724).  This makes
    results of datetime functions with this (typically unintentional)
    setting more predictable.
  * drop.terms(*) now drops response as by default, keep.response =
    FALSE, fixing PR#18564 thanks to Mikael Jagan.
  * dummy.coef(.) now also works for lm()-models with character
    categorical predictor variables rather than factor ones, fixing
    PR#18635 reported by Jinsong Zhao.
  * formals(f) &lt;- formals(f) now also works for a function w/o
    arguments and atomic _constant_ body(f).
  * Correct as.function(&lt;invalid list&gt;, .)'s error message.
  * removeSource() is yet more thorough in finding and removing
    "srcref" and the other source references from parsed R language
    chunks, fixing PR#18638 thanks to Andrew Simmons.
  * dgeom() is more accurate now, notably when its result is very
    small, fixing PR#18642 thanks to the proposal of Morten Welinder,
    also improving other instances where C level binom_raw(x, n, ..)
    has x == 0 or x== n.
  * warning() with options(warn = 1) has improved output for
    multi-line messages.
  * axis.Date() and axis.POSIXct() now respect the par("lab") setting
    for the number of pretty() intervals.
  * Comparisons for language objects (which are based on deparsing)
    are now more careful about using accurate deparsed results
    (PR#18676).
  * Plain-text help (Rd2txt) now correctly preserves blank lines
    following single-line \dontrun code.
  * &lt;POSIXlt&gt;[*] no longer sets wrong "balanced" attribute, fixing
    PR#18681 thanks to Mikael Jagan.
  * str(&lt;classed-call&gt;) now deparses the call as expected, fixing
    PR#18684, reported by Dave Slager.
  * In Rd examples, code following the closing brace of a \dontrun,
    \dontshow or \donttest tag on the same line is no longer skipped
    when R CMD check runs the examples.
  * as.data.frame(matrix(*, ncol=0)) now gets valid names() and
    colnames(); reported by Davis Vaughan on the R-devel list.
  * Internal Mathlib function stirlerr(n) is now almost fully
    (52-bit) accurate for all n &gt;= ~5.9 and more accurate also in the
    range 1 -- 5.9.  This entails small ("after 12th decimal")
    changes in density functions, e.g., dgamma() in _some_ regions of
    their support.  The fix was partly prompted by Morten Welinder's
    PR#18640.
  * Numbers like 9876543.2 are now considered non-integer by Mathlib
    internal R_nonint(), amending original fix of PR#15734.
  * Rd comment lines no longer cause broken paragraphs in the
    rendered PDF and plain-text help. In code blocks, pure comment
    lines (starting with %) no longer produce an empty line.
  * xtabs(Freq ~ .) now consistently defaults to na.action = na.pass,
    using na.rm = FALSE (added as an argument) when summing over Freq
    (PR#17770).
  * tools::testInstalledPackage() is no longer silent about failures
    from running examples or tests and its return code no longer
    ignores failures from checking vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1718366400">- CHANGES IN R 4.4.1:
  C-LEVEL FACILITIES:
  * Functions R_atof and R_strtod declared in header R_ext/Utils.h
    are now documented in 'Writing R Extensions' and so formally part
    of the API.
  * The non-API entry points Rf_setSVector, Rf_StringFalse,
    Rf_StringTrue and Rf_isBlankString have been added to those
    reported by R CMD check.
  * The new function Rf_allocLang is now available. This provides an
    alternative to the idiom of calling Rf_allocList followed by
    SET_TYPEOF.
  UTILITIES:
  * R CMD check now reports as warnings what gfortran calls 'Fortran
    2018 deleted features', all of which have long been marked as
    'obsolescent' and some of which were deleted in Fortran 2008 or
    earlier.  Fortran compilers are no longer required to support
    these.
  BUG FIXES:
  * as.numeric(), scan(), type.convert() and other places which use
    the internal C function R_strtod now require a _non-empty_ digit
    sequence in a decimal or binary exponent.  This aligns with the
    C/POSIX standard for strtod and with ?NumericConstants.
  * as.data.frame(m, make.names=NA) now works correctly for a matrix
    m with NA's in row names.
  * The error message from &lt;POSIXlt&gt;[["hour"]] and similar now
    mentions *[[, "hour"]], as wished for in PR#17409 and proposed by
    Michael Chirico.
  * qbinom() and potentially qpois(), qnbinom(), no longer sometimes
    fail accurate inversion (of pbinom(), etc), thanks to Christopher
    Chang's report and patch in PR#18711.
  * The internal help server on Windows can again serve requests sent
    in quick succession, fixing a regression in R 4.4.0.
  * debugcall(&lt;S3Generic&gt;()) now also works when a corresponding
    S4-generic version is in the methods cache (PR#18143).
  * Package tools' toTitleCase(ch0) now returns character(0) when ch0
    is of zero length; fixing PR#18724, reported by David Hugh Jones.
  * R CMD check is no longer broken (without a check result and no
    explanation in 00check.log) for a package which declares an
    invalid VignetteBuilder in DESCRIPTION but has no vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1730376000">- CHANGES IN R 4.4.2:
  C-LEVEL FACILITIES:
  * The S-compatibility macros F77_COM and F77_COMDECL defined in
    header R_ext/RS.h are deprecated and will be removed shortly.  We
    could find no record of their use.
  BUG FIXES:
  * Mathlib function lgammacor(x) no longer warns about underflow to
    zero for large x.
  * Text widths and heights were incorrectly reported by the Quartz
    device if the drawing context didn't exist yet (typically when
    drawing off-screen to a window that is yet to appear, see
    PR#18591).
  * The Quartz device could segfault in cases where paths with spaces
    are used in the new glyph drawing API.  Thanks to Tomek
    Gieorgijewski (PR#18758).
  * On macOS in R CRAN builds, it is again possible to read
    little-endian UTF-16 text with a BOM from a connection using
    encoding="UTF-16".  Users building R from source should avoid
    using the system libiconv in macOS 14.1 and later.
  * methods' internal .requirePackage() now re-enables primitive
    method dispatch when needed; thanks to Ivan Krylov for
    demystifying CRAN package check failures on the R-devel mailing
    list.</changelog>
</package>
<package pkgid="948eb3e236c16845003a8953c37d7d5753a034df08dfa1bdbeb60d5e16073da8141c4d8c84dbd09851c10a15752d669fb89178276ab4a1747857680ae84cdd0f" name="R-datasets" arch="i586">
  <version epoch="0" ver="4.4.2" rel="51.0.2.2.sr20241103"/>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1620302400">- To get in sync with d:l:R:autoCRAN the Matrix package's split
  in -devel was reversed.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339200">- improved spec file according to comments of dimstar in
  https://build.opensuse.org/request/show/892685</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339201">- CHANGES IN R 4.1.0:
  FUTURE DIRECTIONS:
  * It is planned that the 4.1.x series will be the last to support
    32-bit Windows, with production of binary packages for that
    series continuing until early 2023.
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Data set esoph in package datasets now provides the correct
    numbers of controls; previously it had the numbers of cases added
    to these.  (Reported by Alexander Fowler in PR#17964.)
  NEW FEATURES:
  * www.omegahat.net is no longer one of the repositories known by
    default to setRepositories().  (Nowadays it only provides source
    packages and is often unavailable.)
  * Function package_dependencies() (in package tools) can now use
    different dependency types for direct and recursive dependencies.
  * The checking of the size of tarball in R CMD check --as-cran
    &lt;pkg&gt; may be tweaked via the new environment variable
    _R_CHECK_CRAN_INCOMING_TARBALL_THRESHOLD_, as suggested in
    PR#17777 by Jan Gorecki.
  * Using c() to combine a factor with other factors now gives a
    factor, an ordered factor when combining ordered factors with
    identical levels.
  * apply() gains a simplify argument to allow disabling of
    simplification of results.
  * The format() method for class "ftable" gets a new option justify.
    (Suggested by Thomas Soeiro.)
  * New ...names() utility.  (Proposed by Neal Fultz in PR#17705.)
  * type.convert() now warns when its as.is argument is not
    specified, as the help file always said it _should_.  In that
    case, the default is changed to TRUE in line with its change in
    read.table() (related to stringsAsFactor) in R 4.0.0.
  * When printing list arrays, classed objects are now shown _via_
    their format() value if this is a short enough character string,
    or by giving the first elements of their class vector and their
    length.
  * capabilities() gets new entry "Rprof" which is TRUE when R has
    been configured with the equivalent of --enable-R-profiling (as
    it is by default).  (Related to Michael Orlitzky's report
    PR#17836.)
  * str(xS4) now also shows extraneous attributes of an S4 object
    xS4.
  * Rudimentary support for vi-style tags in rtags() and R CMD rtags
    has been added.  (Based on a patch from Neal Fultz in PR#17214.)
  * checkRdContents() is now exported from tools; it and also
    checkDocFiles() have a new option chkInternal allowing to check
    Rd files marked with keyword "internal" as well.  The latter can
    be activated for R CMD check via environment variable
    _R_CHECK_RD_INTERNAL_TOO_.
  * New functions numToBits() and numToInts() extend the raw
    conversion utilities to (double precision) numeric.
  * Functions URLencode() and URLdecode() in package utils now work
    on vectors of URIs.  (Based on patch from Bob Rudis submitted
    with PR#17873.)
  * path.expand() can expand ~user on most Unix-alikes even when
    readline is not in use.  It tries harder to expand ~, for example
    should environment variable HOME be unset.
  * For HTML help (both dynamic and static), Rd file links to help
    pages in external packages are now treated as references to
    topics rather than file names, and fall back to a file link only
    if the topic is not found in the target package. The earlier rule
    which prioritized file names over topics can be restored by
    setting the environment variable _R_HELP_LINKS_TO_TOPICS_ to a
    false value.
  * c() now removes NULL arguments before dispatching to methods,
    thus simplifying the implementation of c() methods, _but_ for
    back compatibility keeps NULL when it is the first argument.
    (From a report and patch proposal by Lionel Henry in PR#17900.)
  * Vectorize()'s result function's environment no longer keeps
    unneeded objects.
  * Function ...elt() now propagates visibility consistently with
    ..n.  (Thanks to Lionel Henry's PR#17905.)
  * capture.output() no longer uses non-standard evaluation to
    evaluate its arguments.  This makes evaluation of functions like
    parent.frame() more consistent.  (Thanks to Lionel Henry's
    PR#17907.)
  * packBits(bits, type="double") now works as inverse of
    numToBits().  (Thanks to Bill Dunlap's proposal in PR#17914.)
  * curlGetHeaders() has two new arguments, timeout to specify the
    timeout for that call (overriding getOption("timeout")) and TLS
    to specify the minimum TLS protocol version to be used for
    https:// URIs (_inter alia_ providing a means to check for sites
    using deprecated TLS versions 1.0 and 1.1).
  * For nls(), an optional constant scaleOffset may be added to the
    denominator of the relative offset convergence test for cases
    where the fit of a model is expected to be exact, thanks to a
    proposal by John Nash.  nls(*, trace=TRUE) now also shows the
    convergence criterion.
  * Numeric differentiation _via_ numericDeriv() gets new optional
    arguments eps and central, the latter for taking central divided
    differences.  The latter can be activated for nls() via
    nls.control(nDcentral = TRUE).
  * nls() now passes the trace and control arguments to getInitial(),
    notably for all self-starting models, so these can also be fit in
    zero-noise situations via a scaleOffset.  For this reason, the
    initial function of a selfStart model must now have ... in its
    argument list.
  * bquote(splice = TRUE) can now splice expression vectors with
    attributes: this makes it possible to splice the result of
    parse(keep.source = TRUE).  (Report and patch provided by Lionel
    Henry in PR#17869.)
  * textConnection() gets an optional name argument.
  * get(), exists(), and get0() now signal an error if the first
    argument has length greater than 1.  Previously additional
    elements were silently ignored.  (Suggested by Antoine Fabri on
    R-devel.)
  * R now provides a shorthand notation for creating functions, e.g.
    \(x) x + 1 is parsed as function(x) x + 1.
  * R now provides a simple native forward pipe syntax |&gt;.  The
    simple form of the forward pipe inserts the left-hand side as the
    first argument in the right-hand side call.  The pipe
    implementation as a syntax transformation was motivated by
    suggestions from Jim Hester and Lionel Henry.
  * all.equal(f, g) for functions now by default also compares their
    environment(.)s, notably via new all.equal method for class
    function.  Comparison of nls() fits, e.g., may now need
    all.equal(m1, m2, check.environment = FALSE).
  * .libPaths() gets a new option include.site, allowing to _not_
    include the site library.  (Thanks to Dario Strbenac's suggestion
    and Gabe Becker's PR#18016.)
  * Lithuanian translations are now available.  (Thanks to Rimantas
    Zakauskas.)
  * names() now works for DOTSXP objects.  On the other hand, in
    R-lang, the R language manual, we now warn against relying on the
    structure or even existence of such dot-dot-dot objects.
  * all.equal() no longer gives an error on DOTSXP objects.
  * capabilities("cairo") now applies only to the file-based devices
    as it is now possible (if very unusual) to build R with Cairo
    support for those but not for X11().
  * There is optional support for tracing the progress of
    loadNamespace() - see its help.
  * (Not Windows.)  l10n_info() reports an additional element, the
    name of the encoding as reported by the OS (which may differ from
    the encoding part (if any) of the result from
    Sys.getlocale("LC_CTYPE").
  * New function gregexec() which generalizes regexec() to find _all_
    disjoint matches and well as all substrings corresponding to
    parenthesized subexpressions of the given regular expression.
    (Contributed by Brodie Gaslam.)
  * New function charClass() in package utils to query the
    wide-character classification functions in use (such as
    iswprint).
  * The names of quantile()'s result no longer depend on the global
    getOption("digits"), but quantile() gets a new optional argument
    digits = 7 instead.
  * grep(), sub(), regexp and variants work considerably faster for
    long factors with few levels.  (Thanks to Michael Chirico's
    PR#18063.)
  * Provide grouping of x11() graphics windows within a window
    manager such as Gnome or Unity; thanks to a patch by Ivan Krylov
    posted to R-devel.
  * The split() method for class data.frame now allows the f argument
    to be specified as a formula.
  * sprintf now warns on arguments unused by the format string.
  * New palettes "Rocket" and "Mako" for hcl.colors() (approximating
    palettes of the same name from the 'viridisLite' package).
    Contributed by Achim Zeileis.
  * The base environment and its namespace are now locked (so one can
    no longer add bindings to these or remove from these).
  * Rterm handling of multi-byte characters has been improved,
    allowing use of such characters when supported by the current
    locale.
  * Rterm now accepts ALT+ +xxxxxxxx sequences to enter Unicode
    characters as hex digits.
  * Environment variable LC_ALL on Windows now takes precedence over
    LC_CTYPE and variables for other supported categories, matching
    the POSIX behaviour.
  * duplicated() and anyDuplicated() are now optimized for integer
    and real vectors that are known to be sorted via the ALTREP
    framework. Contributed by Gabriel Becker via PR#17993.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 14
    and so packages that provide graphics devices should be
    reinstalled.
  * Graphics devices should now specify deviceVersion to indicate
    what version of the graphics engine they support.
  * Graphics devices can now specify deviceClip.  If TRUE, the
    graphics engine will never perform any clipping of output itself.
    The clipping that the graphics engine does perform (for both
    canClip = TRUE and canClip = FALSE) has been improved to avoid
    producing unnecessary artifacts in clipped output.
  * The grid package now allows gpar(fill) to be a linearGradient(),
    a radialGradient(), or a pattern().  The viewport(clip) can now
    also be a grob, which defines a clipping path, and there is a new
    viewport(mask) that can also be a grob, which defines a mask.
    These new features are only supported so far on the Cairo-based
    graphics devices and on the pdf() device.
  * (Not Windows.)  A warning is given when a Cairo-based type is
    specified for a png(), jpeg(), tiff() or bmp() device but Cairo
    is unsupported (so type = "Xlib" is tried instead).
  * grSoftVersion() now reports the versions of FreeType and
    FontConfig if they are used directly (not _via_ Pango), as is
    most commonly done on macOS.
  C-LEVEL FACILITIES:
  * The _standalone_ libRmath math library and R's C API now provide
    log1pexp() again as documented, and gain log1mexp().
  INSTALLATION on a UNIX-ALIKE:
  * configure checks for a program pkgconf if program pkg-config is
    not found.  These are now only looked for on the path (like
    almost all other programs) so if needed specify a full path to
    the command in PKG_CONFIG, for example in file config.site.
  * C99 function iswblank is required - it was last seen missing ca
    2003 so the workaround has been removed.
  * There are new configure options --with-internal-iswxxxxx,
  - -with-internal-towlower and --with-internal-wcwidth which allows
    the system functions for wide-character classification,
    case-switching and width (wcwidth and wcswidth) to be replaced by
    internal ones.  The first has long been used on macOS, AIX (and
    Windows) but this enables it to be unselected there and selected
    for other platforms (it is the new default on Solaris).  The
    second is new in this version of R and is selected by default on
    macOS and Solaris.  The third has long been the default and
    remains so as it contains customizations for East Asian
    languages.
    System versions of these functions are often minimally
    implemented (sometimes only for ASCII characters) and may not
    cover the full range of Unicode points: for example Solaris (and
    Windows) only cover the Basic Multilingual Plane.
  * Cairo installations without X11 are more likely to be detected by
    configure, when the file-based Cairo graphics devices will be
    available but not X11(type = "cairo").
  * There is a new configure option --with-static-cairo which is the
    default on macOS.  This should be used when only static cairo
    (and where relevant, Pango) libraries are available.
  * Cairo-based graphics devices on platforms without Pango but with
    FreeType/FontConfig will make use of the latter for font
    selection.
  LINK-TIME OPTIMIZATION on a UNIX-ALIKE:
  * Configuring with flag --enable-lto=R now also uses LTO when
    installing the recommended packages.
  * R CMD INSTALL and R CMD SHLIB have a new flag --use-LTO to use
    LTO when compiling code, for use with R configured with
  - -enable-lto=R.  For R configured with --enable-lto, they have
    the new flag --no-use-LTO.
    Packages can opt in or out of LTO compilation _via_ a UseLTO
    field in the DESCRIPTION file.  (As usual this can be overridden
    by the command-line flags.)
  BUILDING R on Windows:
  * for GCC &gt;= 8, FC_LEN_T is defined in config.h and hence character
    lengths are passed from C to Fortran in _inter alia_ BLAS and
    LAPACK calls.
  * There is a new text file src/gnuwin32/README.compilation, which
    outlines how C/Fortran code compilation is organized and
    documents new features:
  * R can be built with Link-Time Optimization with a suitable
    compiler - doing so with GCC 9.2 showed several
    inconsistencies which have been corrected.
  * There is support for cross-compiling the C and Fortran code
    in R and standard packages on suitable (Linux) platforms.
    This is mainly intended to allow developers to test later
    versions of compilers - for example using GCC 9.2 or 10.x has
    detected issues that GCC 8.3 in Rtools40 does not.
  * There is experimental support for cross-building R packages
    with C, C++ and/or Fortran code.
  * The R installer can now be optionally built to support a single
    architecture (only 64-bit or only 32-bit).
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++14 where
    available (which it is on all currently checked platforms): if
    not (as before) C++11 is used if available otherwise C++ is not
    supported.
    Packages which specify C++11 will still be installed using C++11.
    C++14 compilers may give deprecation warnings, most often for
    std::random_shuffle (deprecated in C++14 and removed in C++17).
    Either specify C++11 (see 'Writing R Extensions') or modernize
    the code and if needed specify C++14.  The latter has been
    supported since R 3.4.0 so the package's DESCRIPTION would need
    to include something like
    Depends: R (&gt;= 3.4)
  PACKAGE INSTALLATION on Windows:
  * R CMD INSTALL and R CMD SHLIB make use of their flag --use-LTO
    when the LTO_OPT make macro is set in file etc/${R_ARCH}/Makeconf
    or in a personal/site Makevars file.  (For details see 'Writing R
    Extensions' SS4.5.)
    This provides a valuable check on code consistency.  It does work
    with GCC 8.3 as in Rtools40, but that does not detect everything
    the CRAN checks with current GCC do.
  PACKAGE INSTALLATION on macOS:
  * The default personal library directory on builds with
  - -enable-aqua (including CRAN builds) now differs by CPU type,
    one of
    ~/Library/R/x86_64/x.y/library
    ~/Library/R/arm64/x.y/library
    This uses the CPU type R (and hence the packages) were built for,
    so when a x86_64 build of R is run under Rosetta emulation on an
    arm64 Mac, the first is used.
  UTILITIES:
  * R CMD check can now scan package functions for bogus return
    statements, which were possibly intended as return() calls (wish
    of PR#17180, patch by Sebastian Meyer). This check can be
    activated via the new environment variable
    _R_CHECK_BOGUS_RETURN_, true for --as-cran.
  * R CMD build omits tarballs and binaries of previous builds from
    the top-level package directory.  (PR#17828, patch by Sebastian
    Meyer.)
  * R CMD check now runs sanity checks on the use of LazyData, for
    example that a data directory is present and that
    LazyDataCompression is not specified without LazyData and has a
    documented value.  For packages with large LazyData databases
    without specifying LazyDataCompression, there is a reference to
    the code given in 'Writing R Extensions' SS1.1.6 to test the
    choice of compression (as in all the CRAN packages tested a
    non-default method was preferred).
  * R CMD build removes LazyData and LazyDataCompression fields from
    the DESCRIPTION file of packages without a data directory.
  ENCODING-RELATED CHANGES:
  * The parser now treats \Unnnnnnnn escapes larger than the upper
    limit for Unicode points (\U10FFFF) as an error as they cannot be
    represented by valid UTF-8.
    Where such escapes are used for outputting non-printable
    (including unassigned) characters, 6 hex digits are used (rather
    than 8 with leading zeros).  For clarity, braces are used, for
    example \U{0effff}.
  * The parser now looks for non-ASCII spaces on Solaris (as
    previously on most other OSes).
  * There are warnings (including from the parser) on the use of
    unpaired surrogate Unicode points such as \uD834.  (These cannot
    be converted to valid UTF-8.)
  * Functions nchar(), tolower(), toupper() and chartr() and those
    using regular expressions have more support for inputs with a
    marked Latin-1 encoding.
  * The character-classification functions used (by default) to
    replace the system iswxxxxx functions on Windows, macOS and AIX
    have been updated to Unicode 13.0.0.
    The character-width tables have been updated to include new
    assignments in Unicode 13.0.0.
  * The code for evaluating default (extended) regular expressions
    now uses the same character-classification functions as the rest
    of R (previously they differed on Windows, macOS and AIX).
  * There is a build-time option to replace the system's
    wide-character wctrans C function by tables shipped with R: use
    configure option --with-internal-towlower or (on Windows)
  - DUSE_RI18N_CASE in CFLAGS when building R.  This may be needed
    to allow tolower() and toupper() to work with Unicode characters
    beyond the Basic Multilingual Plane where not supported by system
    functions (e.g. on Solaris where it is the new default).
  * R is more careful when truncating UTF-8 and other multi-byte
    strings that are too long to be printed, passed to the system or
    libraries or placed into an internal buffer.  Truncation will no
    longer produce incomplete multibyte characters.
  DEPRECATED AND DEFUNCT:
  * Function plclust() from the package stats and
    package.dependencies(), pkgDepends(), getDepList(),
    installFoundDepends(), and vignetteDepends() from package tools
    are defunct.
  * Defunct functions checkNEWS() and readNEWS() from package tools
    and CRAN.packages() from utils have been removed.
  * R CMD config CXXCPP is defunct (it was deprecated in R 3.6.2).
  * parallel::detectCores() drops support for Irix (retired in 2013).
  * The LINPACK argument to chol.default(), chol2inv(),
    solve.default() and svd() has been defunct since R 3.1.0.  It was
    silently ignored up to R 4.0.3 but now gives an error.
  * Subsetting/indexing, such as ddd[*] or ddd$x on a DOTSXP
    (dot-dot-dot) object ddd has been disabled; it worked by accident
    only and was undocumented.
  BUG FIXES:
  * Many more C-level allocations (mainly by malloc and strdup) are
    checked for success with suitable alternative actions.
  * Bug fix for replayPlot(); this was turning off graphics engine
    display list recording if a recorded plot was replayed in the
    same session.  The impact of the bug became visible if resize the
    device after replay OR if attempted another savePlot() after
    replay (empty display list means empty screen on resize or empty
    saved plot).
  * R CMD check etc now warn when a package exports non-existing S4
    classes or methods, also in case of no "methods" presence.
    (Reported by Alex Bertram; reproducible example and patch by
    Sebastian Meyer in PR#16662.)
  * boxplot() now also accepts calls for labels such as ylab, the
    same as plot().  (Reported by Marius Hofert.)
  * The help page for xtabs() now correctly states that addNA is
    setting na.action = na.pass among others.  (Reported as PR#17770
    by Thomas Soeiro.)
  * The R CMD check &lt;pkg&gt; gives a longer and more comprehensible
    message when DESCRIPTION misses dependencies, e.g., in Imports:.
    (Thanks to the contributors of PR#17179.)
  * update.default() now calls the generic update() on the formula to
    work correctly for models with extended formulas.  (As reported
    and suggested by Neal Fultz in PR#17865.)
  * The horizontal position of leaves in a dendrogram is now correct
    also with center = FALSE.  (PR#14938, patch from Sebastian
    Meyer.)
  * all.equal.POSIXt() no longer warns about and subsequently ignores
    inconsistent "tzone" attributes, but describes the difference in
    its return value (PR#17277).  This check can be disabled _via_
    the new argument check.tzone = FALSE as suggested by Sebastian
    Meyer.
  * as.POSIXct() now populates the "tzone" attribute from its tz
    argument when x is a logical vector consisting entirely of NA
    values.
  * x[[2^31]] &lt;- v now works.  (Thanks to the report and patch by
    Suharto Anggono in PR#17330.)
  * In log-scale graphics, axis() ticks and label positions are now
    computed more carefully and symmetrically in their range,
    typically providing _more_ ticks, fulfilling wishes in PR#17936.
    The change really corresponds to an improved axisTicks() (package
    grDevices), potentially influencing grid and lattice, for
    example.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now correct to at
    least five digits where it was catastrophically wrong,
    previously.
  * sum(df) and similar "Summary"- and "Math"-group member functions
    now work for data frames df with logical columns, notably also of
    zero rows.  (Reported to R-devel by Martin "b706".)
  * unsplit() had trouble with tibbles due to unsound use of rep(NA,
    len)-indexing, which should use NA_integer_ (Reported to R-devel
    by Mario Annau.)
  * pnorm(x, log.p = TRUE) underflows to -Inf slightly later.
  * show(&lt;hidden S4 generic&gt;) prints better and without quotes for
    non-hidden S4 generics.
  * read.table() and relatives treated an "NA" column name as missing
    when check.names = FALSE PR#18007.
  * Parsing strings containing UTF-16 surrogate pairs such as
    "\uD834\uDD1E" works better on some (uncommon) platforms.
    sprintf("%X", utf8ToInt("\uD834\uDD1E")) should now give "1D11E"
    on all platforms.
  * identical(x,y) is no longer true for differing DOTSXP objects,
    fixing PR#18032.
  * str() now works correctly for DOTSXP and related exotics, even
    when these are doomed.
    Additionally, it no longer fails for lists with a class and
    "irregular" method definitions such that e.g. lapply(*) will
    necessarily fail, as currently for different igraph objects.
  * Too long lines in environment files (e.g. Renviron) no longer
    crash R. This limit has been increased to 100,000 bytes.
    (PR#18001.)
  * There is a further workaround for FreeType giving incorrect
    italic font faces with cairo-based graphics devices on macOS.
  * add_datalist(*, force = TRUE) (from package tools) now actually
    updates an existing data/datalist file for new content.  (Thanks
    to a report and patch by Sebastian Meyer in PR#18048.)
  * cut.Date() and cut.POSIXt() could produce an empty last interval
    for breaks = "months" or breaks = "years".  (Reported as PR#18053
    by Christopher Carbone.)
  * Detection of the encoding of 'regular' macOS locales such as
    en_US (which is UTF-8) had been broken by a macOS change:
    fortunately these are now rarely used with en_US.UTF-8 being
    preferred.
  * sub() and gsub(pattern, repl, x, *) now keep attributes of x such
    as names() also when pattern is NA (PR#18079).
  * Time differences ("difftime" objects) get a replacement and a
    rep() method to keep "units" consistent.  (Thanks to a report and
    patch by Nicolas Bennett in PR#18066.)
  * The \RdOpts macro, setting defaults for \Sexpr options in an Rd
    file, had been ineffective since R 2.12.0: it now works again.
    (Thanks to a report and patch by Sebastian Meyer in PR#18073.)
  * mclapply and pvec no longer accidentally terminate parallel
    processes started before by mcparallel or related calls in
    package parallel (PR#18078).
  * grep and other functions for evaluating (extended) regular
    expressions handle in Unicode also strings not explicitly flagged
    UTF-8, but flagged native when running in UTF-8 locale.
  * Fixed a crash in fifo implementation on Windows (PR#18031).
  * Binary mode in fifo on Windows is now properly detected from
    argument open (PR#15600, PR#18031).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1622808000">- The line %{__install} -m 755 -d %{_infodir}
  no longer works in TW or Factory.
  But without that line it works everywhere. So this instruction
  was commented out of the spec file.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1628596800">- CHANGES IN R 4.1.1:
  NEW FEATURES:
  * require(pkg, quietly = TRUE) is quieter and in particular does
    not warn if the package is not found.
  DEPRECATED AND DEFUNCT:
  * Use of ftp:// URIs should be regarded as deprecated, with
    on-going support confined to method = "libcurl" and not routinely
    tested.  (Nowadays no major browser supports them.)
  * The non-default method = "internal" is deprecated for http:// and
    ftp:// URIs for both download.file and url.
  * On Windows, method = "wininet" is deprecated for http://,
    https:// and ftp:// URIs for both download.file and url.  (A
    warning is only given for ftp://.)
    For ftp:// URIs the default method is now "libcurl" if available
    (which it is on CRAN builds).
    method = "wininet" remains the default for http:// and https://
    URIs but if libcurl is available, using method = "libcurl" is
    preferred.
  INSTALLATION:
  * make check now works also without a LaTeX installation.  (Thanks
    to Sebastian Meyer's PR#18103.)
  BUG FIXES:
  * make check-devel works again in an R build configured with
  - -without-recommended-packages.
  * qnbinom(p, size, mu) for large size/mu is correct now in a range
    of cases (PR#18095); similarly for the (size, prob)
    parametrization of the negative binomial.  Also qpois() and
    qbinom() are better and or faster for extreme cases.  The
    underlying C code has been modularized and is common to all four
    cases of discrete distributions.
  * gap.axis is now part of the axis() arguments which are passed
    from bxp(), and hence boxplot().  (Thanks to Martin Smith's
    report and suggestions in PR#18109.)
  * .First and .Last can again be set from the site profile.
  * seq.int(from, to, *) and seq.default(..) now work better in large
    range cases where from-to is infinite where the two boundaries
    are finite.
  * all.equal(x,y) now returns TRUE correctly also when several
    entries of abs(x) and abs(y) are close to .Machine$double.xmax,
    the largest finite numeric.
  * model.frame() now clears the object bit when removing the class
    attribute of a value via na.action (PR#18100).
  * charClass() now works with multi-character strings on Windows
    (PR#18104, fixed by Bill Dunlap).
  * encodeString() on Solaris now works again in Latin-1 encoding on
    characters represented differently in UTF-8.  Support for
    surrogate pairs on Solaris has been improved.
  * file.show() on Windows now works with non-ASCII path names
    representable in the current native encoding (PR#18132).
  * Embedded R on Windows can now find R home directory via the
    registry even when installed only for the current user
    (PR#18135).
  * pretty(x) with finite x now returns finite values also in the
    case where the extreme x values are close in size to the maximal
    representable number .Machine$double.xmax.
    Also, it's been tweaked for very small ranges and when a boundary
    is close (or equal) to zero; e.g., pretty(c(0,1e-317)) no longer
    has negative numbers, currently still warning about a very small
    range, and pretty(2^-(1024 - 2^-1/(c(24,10)))) is more accurate.
  * The error message for not finding vignette files when weaving has
    correct file sizes now. (Thanks to Sebastian Meyer's PR#18154.)
  * dnbinom(20, &lt;large&gt;, 1) now correctly gives 0, and similar cases
    are more accurate with underflow precaution.  (Reported by Francisco Vera Alcivar in PR#18072.)</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635163200">- repaired https://bugzilla.suse.com/show_bug.cgi?id=1191380
  (rpmacros now go to rpmmacrodir)
- minor clean-ups in spec file</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635768000">- CHANGES IN R 4.1.2:
  C-LEVEL FACILITIES:
  * The workaround in headers R.h and Rmath.h (using namespace std;)
    for the Oracle Developer Studio compiler is no longer needed now
    C++11 is required so has been removed.  A couple more usages of
    log() (which should have been std::log()) with an int argument
    are reported on Solaris.
  * The undocumented limit of 4095 bytes on messages from the
    S-compatibility macros PROBLEM and MESSAGE is now documented and
    longer messages will be silently truncated rather than
    potentially causing segfaults.
  * If the R_NO_SEGV_HANDLER environment variable is non-empty, the
    signal handler for SEGV/ILL/BUS signals (which offers recovery
    user interface) is not set. This allows more reliable debugging
    of crashes that involve the console.
  DEPRECATED AND DEFUNCT:
  * The legacy S-compatibility macros PROBLEM, MESSAGE, ERROR, WARN,
    WARNING, RECOVER, ... are deprecated and will be hidden in R
    4.2.0. R's native interface of Rf_error and Rf_warning has long
    been preferred.
  BUG FIXES:
  * .mapply(F, dots, .) no longer segfaults when dots is not a list
    and uses match.fun(F) as always documented; reported by Andrew
    Simmons in PR#18164.
  * hist(&lt;Date&gt;, ...) and hist(&lt;POSIXt&gt;, ...)  no longer pass
    arguments for rect() (such as col and density) to axis().
    (Thanks to Sebastian Meyer's PR#18171.)
  * \Sexpr{ch} now preserves Encoding(ch). (Thanks to report and
    patch by Jeroen Ooms in PR#18152.)
  * Setting the RNG to "Marsaglia-Multicarry" e.g., by RNGkind(), now
    warns in more places, thanks to Andr'e Gillibert's report and
    patch in PR#18168.
  * gray(numeric(), alpha=1/2) no longer segfaults, fixing PR#18183,
    reported by Till Krenz.
  * Fixed dnbinom(x, size=&lt;very_small&gt;, .., log=TRUE) regression,
    reported by Martin Morgan.
  * as.Date.POSIXlt(x) now keeps names(x), thanks to Davis Vaughan's
    report and patch in PR#18188.
  * model.response() now strips an "AsIs" class typically, thanks to
    Duncan Murdoch's report and other discussants in PR#18190.
  * try() is considerably faster in case of an error and long call,
    as e.g., from some do.call().  Thanks to Alexander Kaever's
    suggestion posted to R-devel.
  * qqline(y = &lt;object&gt;) such as y=I(.), now works, see also
    PR#18190.
  * Non-integer mgp par() settings are now handled correctly in
    axis() and mtext(), thanks to Mikael Jagan and Duncan Murdoch's
    report and suggestion in PR#18194.
  * formatC(x) returns length zero character() now, rather than ""
    when x is of length zero, as documented, thanks to Davis
    Vaughan's post to R-devel.
  * removeSource(fn) now retains (other) attributes(fn).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1647000000">- CHANGES IN R 4.1.3:
  NEW FEATURES:
  * The default version of Bioconductor has been changed to 3.14.
    (This is used by setRepositories and the menus in GUIs.)
  UTILITIES:
  * R CMD check --as-cran has a workaround for a bug in versions of
    file up to at least 5.41 which mis-identify DBF files last
    changed in 2022 as executables.
  C-LEVEL FACILITIES:
  * The legacy S-compatibility macros SINGLE_* in R_ext/Constants.h
    (included by R.h) are deprecated and will be removed in R 4.2.0.
  BUG FIXES:
  * Initialization of self-starting nls() models with initialization
    functions following the pre-R-4.1.0 API (without the ...
    argument) works again for now, with a deprecation warning.
  * Fixed quoting of ~autodetect~ in Java setting defaults to avoid
    inadvertent user lookup due to leading ~, reported in PR#18231 by
    Harold Gutch.
  * substr(., start, stop) &lt;- v now treats _negative_ stop values
    correctly.  Reported with a patch in PR#18228 by Brodie Gaslam.
  * Subscripting an array x without dimnames by a
    length(dim(x))-column character matrix gave "random" non-sense,
    now an error; reported in PR#18244 by Mikael Jagan.
  * ...names() now matches names(list(...)) closely, fixing PR#18247.
  * all.equal(*, scale = s) now works as intended when length(s) &gt; 1,
    partly thanks to Michael Chirico's PR#18272.
  * print(x) for long vectors x now also works for named atomic
    vectors or lists and prints the correct number when reaching the
    getOption("max.print") limit; partly thanks to a report and
    proposal by Hugh Parsonage to the R-devel list.
  * all.equal(&lt;selfStart&gt;, *) no longer signals a deprecation
    warning.
  * reformulate(*, response=r) gives a helpful error message now when
    length(r) &gt; 1, thanks to Bill Dunlap's PR#18281.
  * Modifying globalCallingHandlers inside withCallingHandlers() now
    works or fails correctly, thanks to Henrik Bengtsson's PR#18257.
  * hist(&lt;Date&gt;, breaks = "days") and hist(&lt;POSIXt&gt;, breaks = "secs")
    no longer fail for inputs of length 1.
  * qbeta(.001, .9, .009) and similar cases now converge correctly
    thanks to Ben Bolker's report in PR#17746.
  * window(x, start, end) no longer wrongly signals "'start' cannot
    be after 'end'", fixing PR#17527 and PR#18291.
  * data() now checks that its (rarely used) list argument is a
    character vector - a couple of packages passed other types and
    gave incorrect results.
  * which() now checks its arr.ind argument is TRUE rather coercing
    to logical and taking the first element - which gave incorrect
    results in package code.
  * model.weights() and model.offset() more carefully extract their
    model components, thanks to Ben Bolker and Tim Taylor's R-devel
    post.
  * list.files(recursive = TRUE) now shows all broken symlinks
    (previously, some of them may have been omitted, PR#18296).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1650628800">- CHANGES IN R 4.2.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * The formula method of aggregate() now matches the generic in
    naming its first argument x (resolving PR#18299 by Thomas
    Soeiro).
    This means that calling aggregate() with a formula as a named
    first argument requires name formula in earlier versions of R and
    name x now, so portable code should not name the argument (code
    in many packages did).
  * Calling &amp;&amp; or || with either argument of length greater than one
    now gives a warning (which it is intended will become an error).
  * Calling if() or while() with a condition of length greater than
    one gives an error rather than a warning.  Consequently,
    environment variable _R_CHECK_LENGTH_1_CONDITION_ no longer has
    any effect.
  * Windows users should consult the WINDOWS section below for some
    profound changes including
  * Support for 32-bit builds has been dropped.
  * UTF-8 locales are used where available.
  * The default locations for the R installation and personal
    library folder have been changed.
    Thanks to Tomas Kalibera for months of work on the Windows port
    for this release.
  NEW FEATURES:
  * matrix(x, n, m) now warns in more cases where length(x) differs
    from n * m, as suggested by Abby Spurdle and Wolfgang Huber in
    Feb 2021 on the R-devel mailing list.
    This warning can be turned into an error by setting environment
    variable _R_CHECK_MATRIX_DATA_ to TRUE: R CMD check --as-cran
    does so unless it is already set.
  * Function file_test() in package utils gains tests for symlinks,
    readability and writability.
  * capabilities("libxml") is now false.
    The description of capabilities("http/ftp") now reflects that it
    refers to the default method, no longer the internal one.
  * simplify2array() gains an except argument for controlling the
    exceptions used by sapply().
  * Environment variables R_LIBS_USER and R_LIBS_SITE are both now
    set to the R system default if unset or empty, and can be set to
    NULL to indicate an empty list of user or site library
    directories.
  * The warning for axis()(-like) calls in cases of relatively small
    ranges (typically in log-scale situations) is slightly improved
    _and_ suppressed from explicit calls to .axisPars() as has always
    been the intention.
  * The contrasts setter function `contrasts&lt;-` gains an explicit
    default how.many = NULL rather than just using missing(how.many).
  * grid.pretty() gains a new optional argument n = 5.
  * There is a new function .pretty() with option bounds as a
    technical-utility version of pretty().  It and pretty() gain a
    new argument f.min with a better than back-compatible default.
  * Function grDevices::axisTicks() and related functions such as
    graphics::axis() work better, notably for the log scale; partly
    because of the pretty() improvements, but also because care is
    taken e.g., when ylim is finite but diff(ylim) is infinite.
  * nclass.FD() gains a digits option.
  * The R Mathlib internal C function bd0() (called indirectly from a
    dozen probability density and distribution functions such as
    dpois(), dbinom(), dgamma(), pgamma() _etc_) has been
    complemented by a more sophisticated and (mostly) more accurate C
    function ebd0(), currently called only by internal dpois_raw()
    improving accuracy for R level dpois() and potentially others
    calling it such as dnbinom(), dgamma() or pgamma().  (Thanks to
    Morten Welinder's PR#15628.)
  * write.ftable() gains sep = " " argument as suggested by Thomas
    Soeiro.
  * The names of the locale categories supported by R's
    Sys.getlocale() and Sys.setlocale() are now provided by variable
    .LC.categories in the base namespace.
  * The Date and POSIXt methods for hist() and the histogram method
    for plot() now also use the new default col = "lightgray" in
    consistency with the corresponding change to hist()'s default for
    R 4.0.0.
  * hist.default() gains new fuzz argument, and the histogram plot
    method no longer uses fractional axis ticks when displaying
    counts ("Frequency").
  * mapply() and hence Map() now also obey the "max-or-0-if-any"
    recycling rule, such that, e.g., Map(`+`, 1:3, 1[0]) is valid
    now.
  * as.character(&lt;obj&gt;) for "hexmode" or "octmode" objects now
    fulfils the important basic rule as.character(x)[j] ===
    as.character(x[j]).
  * The set utility functions, notably intersect() have been tweaked
    to be more consistent and symmetric in their two set arguments,
    also preserving a common mode.
  * substr(ch, start,end) &lt;- new now e.g., preserves names(ch); ditto
    for substring(), thanks to a patch from Brodie Gaslam.
  * plot(&lt;lm&gt;) gains a extend.ylim.f argument, in partial response to
    PR#15285; further PR#17784 is fixed thanks to several
    contributors and a patch by Elin Waring.  The Cook's dist
    contours get customizable via cook.col and cook.lty with a
    different default color and their legend is nicer by default and
    customizable via cook.legendChanges.
  * Attempting to subset an object that is not subsettable now
    signals an error of class notSubsettableError. The
    non-subsettable object is contained in the object field of the
    error condition.
  * Subscript-out-of-bounds errors are now signaled as errors of
    class subscriptOutOfBoundsError.
  * Stack-overflow errors are now signaled as errors inheriting from
    class stackOverflowError. See ?stackOverflowError for more
    details.
  * New partly experimental Sys.setLanguage() utility, solving the
    main problem of PR#18055.
  * gettext() and gettextf() get a new option trim = TRUE which when
    set to false allows translations for strings such as "Execution
    halted\n" typical for C code.
  * An experimental implementation of hash tables is now available.
    See ?hashtab for more details.
  * identical() gains a extptr.as.ref argument for requesting that
    external pointer objects be compared as reference objects.
  * reorder() gets an argument decreasing which it passes to sort()
    for level creation; based on the wish and patch by Thomas Soeiro
    in PR#18243.
  * as.vector() gains a data.frame method which returns a simple
    named list, also clearing a long standing 'FIXME' to enable
    as.vector(&lt;data.frame&gt;, mode="list").  This breaks code relying
    on as.vector(&lt;data.frame&gt;) to return the unchanged data frame.
  * legend() is now vectorized for arguments cex, x.intersp, and
    text.width.  The latter can now also be specified as a vector
    (one element for each column of the legend) or as NA for
    computing a proper column wise maximum value of strwidth(legend).
    The argument y.intersp can be specified as a vector with one
    entry for each row of the legend.
    legend() also gains new arguments title.cex and title.font.
    Thanks to Swetlana Herbrandt.
  * Deparsing no longer remaps attribute names dim, dimnames, levels,
    names and tsp to historical S-compatible names (which structure()
    maps back).
  * sample() and sample.int() have additional sanity checks on their
    size and n arguments.
    all.equal.numeric() gains a sanity check on its tolerance
    argument - calling all.equal(a, b, c) for three numeric vectors
    is a surprisingly common error.
    mean(na.rm =), rank(na.last =), barplot(legend.text =),
    boxplot(), contour(drawlabels =), polygon(border =) and
    methods::is(class2 =) have more robust sanity checks on their
    arguments.
    R CMD Rd2pdf (used by R CMD check) has a more robust sanity check
    on the format of \alias{} commands.
  * psigamma(x, deriv) for negative x now also works for deriv = 4
    and 5; their underlying C level dpsifn() is documented in
    'Writing R Extensions'.
  * The HTML help system now uses HTML5 (wish of PR#18149).
  * ks.test() now provides exact p-values also with ties and MC
    p-values in the two-sample (Smirnov) case.  By Torsten Hothorn.
  * ks.test() gains a formula interface, with y ~ 1 for the
    one-sample (Kolmogorov) test and y ~ group for the two-sample
    (Smirnov) test.  Contributed by Torsten Hothorn.
  * The return value from ks.test() now has class c("ks.test",
    "htest") - packages using try() need to take care to use
    inherits() and not == on the class.
  * New functions psmirnov(), qsmirnov() and rsmirnov() in package
    stats implementing the asymptotic and exact distributions of the
    two-sample Smirnov statistic.
  * iconv() now allows sub = "c99" to use C99-style escapes for UTF-8
    inputs which cannot be converted to encoding to.
  * In a forward pipe |&gt; expression it is now possible to use a named
    argument with the placeholder _ in the rhs call to specify where
    the lhs is to be inserted.  The placeholder can only appear once
    on the rhs.
  * The included LAPACK sources have been updated to version 3.10.0,
    except for the four Fortran 77 routines which 3.10.0 has
    re-implemented in Fortran 90 (where the older versions have been
    retained as the R build process does not support Fortran 90).
  * path.expand() and most other uses of tilde expansion now warn if
    a path would be too long if expanded.  (An exception is
    file.exists(), which silently returns false.)
  * trunc(&lt;Date&gt;, *) now supports units = "months" or "years" for
    consistency with the POSIXt method, thanks to Dirk Eddelbuettel's
    proposal in PR#18099.
  * list2DF() now checks that its arguments are of the same length,
    rather than use recycling.
  * The HTML help system has several new features: LaTeX-like math
    can be typeset using either KaTeX or MathJax, usage and example
    code is highlighted using Prism, and for dynamic help the output
    of examples and demos can be shown within the browser if the
    knitr package is installed. These features can be disabled by
    setting the environment variable _R_HELP_ENABLE_ENHANCED_HTML_ to
    a false value.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 15
    and so packages that provide graphics devices should be
    reinstalled.
  * The grid package now allows the user to specify a "vector" of
    pattern fills.  The fill argument to gpar() accepts a list of
    gradients and/or patterns and the functions linearGradient(),
    radialGradient(), and pattern() have a new group argument.
    Points grobs (data symbols) can now also have a pattern fill.
    The grobCoords() function now returns a more informative and
    complex result.
  * The grid package has new functions for drawing isolated groups:
    grid.group(), grid.define(), and grid.use().  These functions add
    compositing operators and affine transformations to R's graphics
    capabilities.
    The grid package also has new functions for stroking and filling
    paths: grid.stroke(), grid.fill(), and grid.fillStroke().
    A new function as.path() allows the user to specify the fill rule
    for a path that is to be used for clipping, stroking, or filling;
    available options are "winding" and "evenodd".  A new function
    as.mask() allows the user to specify the type of a mask;
    available options are "alpha" and "luminance".
    These new features are only supported so far (at most) on the
    Cairo-based graphics devices and on the pdf() device.
  * dev.capabilities() reports on device support for the new
    features.
  * par() now warns about unnamed non-character arguments to prevent
    misuse such as {usr &lt;- par("usr"); par(usr)}.
  INSTALLATION:
  * Facilities for accessing ftp:// sites are no longer tested
    (except _pro tem_ for curlGetHeaders()) as modern browsers have
    removed support.
  * R can now be built with DEFS = -DSTRICT_R_HEADERS .
  PACKAGE INSTALLATION:
  * R CMD INSTALL no longer tangles vignettes. This completes an R
    CMD build change in R 3.0.0 and affects packages built before R
    3.0.2. Such packages should be re-made with R CMD build to have
    the tangled R code of vignettes shipped with the tarball.
  * USE_FC_LEN_T will become the default: this uses the correct
    prototypes for Fortran BLAS/LAPACK routines called from C/C++,
    and requires adjustment of most such calls - see 'Writing R
    Extensions' SS6.6.2.  (This has been supported since R 3.6.2.)
  * Package installation speed for packages installed with
    keep.source has been improved. This resolve the issue reported by
    Ofek Shilon in PR#18236.
  UTILITIES:
  * R CMD check can optionally report files/directories left behind
    in home, /tmp (even though TMPDIR is set) and other directories.
    See the "R Internals" manual for details.
  * R CMD check now reports byte-compilation errors during
    installation.  These are not usually fatal but may result in
    parts of the package not being byte-compiled.
  * _R_CHECK_DEPENDS_ONLY_ can be applied selectively to examples,
    tests and/or vignettes in R CMD check: see the "R Internals"
    manual.
  * _R_CHECK_SRC_MINUS_W_IMPLICIT_ now defaults to true: recent
    versions of Apple clang on macOS have made implicit function
    declarations in C into a compilation error.
  * R CMD check --as-cran makes use of the environment variable
    AUTORECONF.  See the "R Internals" manual SS8 for further details.
  * R CMD check --use-valgrind also uses valgrind when re-building
    vignettes as some non-Sweave vignettes unhelpfully comment out
    all their code when R CMD check runs vignettes.
  * Errors in re-building vignettes (unless there are LaTeX errors)
    are reported by R CMD check as ERROR rather than WARNING when
    running vignettes has been skipped (as it frequently is in CRAN
    checks and by --as-cran).
  * R CMD Rd2pdf gains a --quiet option that is used by R CMD build
    when building the PDF package manual.
  * R CMD Rd2pdf now always runs LaTeX in batch mode, consistent with
    Texinfo &gt;= 6.7. The --batch option is ignored.
  * R CMD build and R CMD check now include the Rd file name and line
    numbers in the error message of an \Sexpr evaluation failure.
  * For packages using the \doi Rd macro (now an install-time \Sexpr)
    but no other dynamic Rd content, R CMD build now produces a
    smaller tarball and is considerably faster - skipping temporary
    package installation.
  C-LEVEL FACILITIES:
  * The non-API header R_ext/R-ftp-http.h is no longer provided, as
    the entry points it covered are now all defunct.
  * A number of non-API declarations and macro definitions have been
    moved from the installed header Rinternals.h to the internal
    header Defn.h. Packages that only use entry points and
    definitions documented to be part of the API as specified in
    'Writing R Extensions' SS6 should not be affected.
  * The macro USE_RINTERNALS no longer has any effect when compiling
    package code.  Packages which also use R_NO_REMAP will need to
    ensure that the remapped names are used for calls to API
    functions that were formerly also made available as macros.
  * The deprecated legacy S-compatibility macros PROBLEM, MESSAGE,
    ERROR, WARN, WARNING, RECOVER, ... are no longer defined in
    R_exts/RS.h (included by R.h).  Replace these by calls to
    Rf_error and Rf_warning (defined in header R_ext/Error.h included
    by R.h).
    Header R_ext/RS.h no longer includes R_ext/Error.h.
  * Header R_ext/Constants.h (included by R.h) when included from C++
    now includes the C++ header cfloat rather than the C header
    float.h (now possible as C++11 is required).
  * The legacy S-compatibility macros DOUBLE_* in R_ext/Constants.h
    (included by R.h) are deprecated.
  * The deprecated S-compatibility macros SINGLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * R_Calloc, R_Free and R_Realloc are preferred to their unprefixed
    forms and error messages now use the prefix. These forms were
    introduced in R 3.4.0 and are available even when
    STRICT_R_HEADERS is defined.
  * rmultinom has been documented in 'Writing R Extensions' SS6 so is
    now part of the R API.
  * Similarly, Rtanpi, called from R level tanpi() is now part of the
    R API.
  * The long-deprecated, undocumented and non-API entry point call_R
    is no longer declared in R_ext/RS.h (included by R.h).
  * The header S.h which has been unsupported since Jan 2016 has been
    removed.  Use R.h instead.
  DEPRECATED AND DEFUNCT:
  * The (non-default and deprecated) method = "internal" for
    download.file() and url() no longer supports http:// nor ftp://
    URIs.  (It is used only for file:// URIs.)
    On Windows, download.file(method = "wininet") no longer supports
    ftp:// URIs.  (It is no longer the default method, which is
    "libcurl" and does.)
    On Windows, the deprecated method = "wininet" now gives a warning
    for http:// and https:// URIs for both download.file() and url().
    (It is no longer the default method.)
  * On Windows, the command-line option --max-mem-size and
    environment variable R_MAX_MEM_SIZE are defunct.  The memory
    allocation limit was important for 32-bit builds, but these are
    no longer supported.
  * default.stringsAsFactors() is now formally deprecated, where that
    was only mentioned on its regular help page, previously.  So it
    now gives a warning if called.
  * unix.time() is defunct now; it had been deprecated since R 3.4.0.
  BUG FIXES:
  * Setting digits = 0 in format(), print.default() (and hence
    typically print()) or options() is again invalid.  Its behaviour
    was platform-dependent, and it is unclear what "zero significant
    digits" should mean (PR#18098).
  * Messages from C code in the cairo section of package grDevices
    are now also offered for translation, thanks to Michael Chirico's
    PR#18123.
  * mean(x) with finite x now is finite also without "long.double"
    capability.
  * R CMD Rd2pdf no longer leaves an empty build directory behind
    when it aborts due to an already existing output file.  (Thanks
    to Sebastian Meyer's PR#18141.)
  * density(x, weights = w, na.rm = TRUE) when anyNA(x) is true, now
    removes weights "in parallel" to x, fixing PR#18151, reported by
    Matthias Gondan.  Additionally, it gets a subdensity option.
  * Conversion of \Sexpr[]{&lt;expR&gt;} to LaTeX or HTML no longer
    produces long blocks of empty lines when &lt;expR&gt; itself contains
    several lines all producing empty output.  Thanks to a report and
    patch by Ivan Krylov posted to R-devel.
  * R CMD build no longer fails if a package vignette uses child
    documents and inst/doc exists.  (Thanks to Sebastian Meyer's
    PR#18156.)
  * When an R documentation ('help' source) file man/foo.Rd in a
    package has \donttest{..} examples with a syntax error, it is now
    signalled as ERROR and with correct line numbers relating to the
  * -Ex.R file, thanks to Duncan Murdoch and Sebastian Meyer's
    reports and patch proposals in PR#17501.
  * Improved determination of the correct translation domain in
    non-base packages, addressing the combination of PR#18092 and
    PR#17998 (#c6) with reports and _augmented_ patch #2904 by
    Suharto Anggono.
    Note that "R-base" is no longer the default domain e.g., for
    top-level calls to gettext(); rather translation needs explicit
    domain = * specification in such cases.
  * identical(attrib.as.set=FALSE) now works correctly with data
    frames with default row names (Thanks to Charlie Gao's PR#18179).
  * txtProgressBar() now enforces a non-zero width for argument char,
    without which no progress can be visible.
  * dimnames(table(d)) is more consistent in the case where d is a
    list with a single component, thanks to Thomas Soeiro's report to
    R-devel.
    Further, table(d1, d2) now gives an error when d1 and d2 are data
    frames as suggested by Thomas in PR#18224.
  * Fix for drawing semi-transparent lines and fills on the native
    Windows graphics device (PR#18219 and PR#16694).  Thanks to Nick
    Ray for helpful diagnosis on Bugzilla.
  * The deparser now wraps sub-expressions such as if(A) ..  with
    parentheses when needed; thanks to Duncan Murdoch's PR#18232 and
    Lionel Henry's patches there.
  * remove.packages() no longer tries to uninstall Priority: base
    packages, thanks to a report and suggestions by Colin Fay in
    PR#18227.
  * win.metafile() now has xpinch and ypinch arguments so that the
    user can override Windows' (potentially wrong) guess at device
    dimensions.
  * x[i] and x[[i]] for non-integer i should now behave in all cases
    as always documented: the index used is equivalent to
    as.integer(i) unless that would overflow where trunc(i) is used
    instead; thanks to Suharto Anggono's report and patch proposals
    in PR#17977.
  * asOneSidedFormula() now associates the resulting formula with the
    global environment rather than the evaluation environment created
    for the call.
  * &lt;bibentry&gt;$name now matches the field name case-insensitively,
    consistent with bibentry() creation and the replacement method.
  * cbind() failed to detect some length mismatches with a mixture of
    time-series and non-time-series inputs.
  * The default LaTeX style file Sweave.sty used by the RweaveLatex
    driver no longer loads the obsolete ae package; thanks to a
    report by Thomas Soeiro in PR#18271.  Furthermore, it now skips
    \usepackage[T1]{fontenc} for engines other than pdfTeX (if
    detected) or if the new [nofontenc] option is used.
  * smooth.spline() now stores its logical cv argument more safely,
    fixing a rare bug when printing, and also stores n.
  * smooth.spline(x,y,*) now computes the cv.crit statistic
    correctly, also when is.unsorted(x), fixing PR#18294.
  * The data.frame method of rbind() now warns when binding
    not-wholly-recycling vectors, by analogy to the default method
    (for matrices).
  * setAs() finds the correct class for name to when multiple
    packages define a class with that name. Thanks to Gabor Csardi
    for the report.
  * Fix for detaching a package when two classes of the same name are
    present in method signatures for the same generic. Thanks to
    Gabor Csardi for the report.
  * match.arg("", c("", "a", "B")) gives a better error message, in
    part from PR#17959, thanks to Elin Waring.
  * R CMD Sweave --clean no longer removes pre-existing files or
    subdirectories (PR#18242).
  * The quartz() device no longer splits polylines into subpaths.
    That has caused narrowly-spaced lines with many points to always
    look solid even when dashed line type was used due to dash phase
    restarts.
  * Deparsing constructs such as quote(1 + `!`(2) + 3) works again as
    before R 3.5.0, thanks to the report and patch in PR#18284 by
    Suharto Anggono.
  * as.list(f) for a factor f now keeps names(f), fixing PR#18309.
  * qbeta(.001, .9, .009) and analogous qf() calls now return a
    correct value instead of NaN or wrongly 1, all with a warning;
    thanks to the report by Ludger Goeminne in PR#18302.
  * plot.lm() failed to produce the plot of residuals vs.  factor
    levels (i.e., which=5 when leverages are constant) for models
    with character predictors (PR#17840).
  * interaction.plot(..., xtick = TRUE) misplaced the x-axis line
    (PR#18305).
  * Not strictly fixing a bug, format()ing and print()ing of
    non-finite Date and POSIXt values NaN and +/-Inf no longer show
    as NA but the respective string, e.g., Inf, for consistency with
    numeric vector's behaviour, fulfilling the wish of PR#18308.
  * R CMD check no longer runs test scripts generated from
    corresponding .Rin files twice and now signals an ERROR if
    processing an .Rin script fails.
  * tools::Rd2txt() used for plain-text help pages now renders \hrefs
    (if tools::Rd2txt_options(showURLs = TRUE)) and \urls with
    percent-encoding and standards-compliant delimiting style (angle
    brackets and no URL: prefix).  \email is now rendered with a
    mailto: prefix.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1655985600">- CHANGES IN R 4.2.1:
  NEW FEATURES:
  * New function utils::findCRANmirror() to find out if a CRAN mirror
    has been selected, otherwise fallback to the main site.  This
    behaves in the same way as tools::CRAN_package_db() and is
    intended for packages wishing to access CRAN for purposes other
    than installing packages.
    The need for this was shown by a day when the main CRAN website
    was offline and a dozen or so packages which had its URL
    hardcoded failed their checks.
  INSTALLATION on a UNIX-ALIKE:
  * The libraries searched for by --with-blas (without a value) now
    include BLIS (after OpenBLAS but before ATLAS).  And on macOS,
    the Accelerate framework (after ATLAS).  (This is patterned after
    the AX_BLAS macro from the Autoconf Archive.)
  * The included LAPACK sources have been updated to 3.10.1.
  UTILITIES:
  * The (full path to) the command tidy to be used for HTML
    validation can be set by environment variable R_TIDYCMD.
  * Setting environment variable _R_CHECK_RD_VALIDATE_RD2HTML_ to a
    false value will override R CMD check --as-cran and turn off HTML
    validation.  This provides a way to circumvent a problematic
    tidy.
    The 2006 version that ships with macOS is always skipped.
  C-LEVEL FACILITIES:
  * The undocumented legacy declarations of Sint, Sfloat, SINT_MAX
    and SINT_MIN in header R.h are deprecated.
  BUG FIXES:
  * fisher.test(d) no longer segfaults for "large" d; fixing PR#18336
    by preventing/detecting an integer overflow reliably.
  * tar(., files=*) now produces correctly the warning about invalid
    uid or gid of files, fixing PR#18344, reported by Martin Morgan.
  * tk_choose.files() with multi = FALSE misbehaved on paths
    containing spaces (PR#18334) (regression introduced in R 4.0.0).
  * sort(x, partial = ind, *) now works correctly notably for the
    non-default na.last = FALSE or TRUE, fixing PR#18335 reported by
    James Edwards.
  * Environment variable _R_CHECK_XREFS_REPOSITORIES_ is only used
    for checking .Rd cross-references in R CMD check (as documented)
    and not for other uses looking for a CRAN mirror.
  * The search for a CRAN mirror when checking packages now uses
    getOption("repos") if that specifies a CRAN mirror, even when it
    does not also specify all three Bioconductor repositories (as was
    previously required).
  * The HTML code generated by tools::Rd2HTML() has been improved to
    pass tidy 5.8.0.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1667217600">- CHANGES IN R 4.2.2:
  NEW FEATURES:
  * tools::Rdiff(useDiff = TRUE) checks for the presence of an
    external diff command and switches to useDiff = FALSE if none is
    found.  This allows R CMD Rdiff to always work.
  * On Windows, environment variable R_LIBCURL_SSL_REVOKE_BEST_EFFORT
    can be used to switch to only 'best-effort' SSL certificate
    revocation checks with the default "libcurl" download method.
    This reduces security, but may be needed for downloads to work
    with MITM proxies (PR#18379).
  * (macOS) The run-time check for libraries from XQuartz for X11 and
    Tcl/Tk no longer uses otool from the Apple Developer Tools
    (PR#18400).
  * The LaTeX style for producing the PDF manuals, Rd.sty, now loads
    the standard amsmath, amsfonts and amssymb packages for greater
    coverage of math commands in the Rd \eqn and \deqn macros.  The
    \mathscr LaTeX command is also provided (via the mathrsfs
    package, if available, or the amsfonts bundle otherwise),
    fulfilling the wish of PR#18398.
  * (Windows) The default format of readClipboard() and
    writeClipboard() has been changed to 13 (CF_UNICODETEXT).
  INSTALLATION on a UNIX-ALIKE:
  * The PDF manuals (if built) can be compacted by the new target
    make compact-pdf (at the top level or in directory doc/manual).
  * There is now configure support for LLVM clang 15 on Linux, which
    defaults to position-independent (PIE) executables whereas
    gfortran does not.
  * Many small changes to ease compilation (and suppress warnings)
    with LLVM clang 15.
  BUG FIXES:
  * Rscript -e would fail if stdin were closed (Reported by Henrik
    Bengtsson.)
  * qt(*, log.p=TRUE) in outer tails no longer produces NaN in its
    final steps, thus fixing PR#18360.
  * tools::Rd2latex() now escapes hashes and ampersands when writing
    URLs, fixing LaTeX errors with such URLs in \tabular.
  * When isGeneric(f, fdef=*) is used with mismatching names, the
    warning is better understandable; reported (with fix) in PR#18370
    by Gabe Becker.
  * poly(x, n) now works again (and is now documented) when x is a
    "Date" or "POSIXct" object, or of another class while fulfilling
    mode(x) == "numeric".  This also enables poly(x, *, raw=TRUE) for
    such variables.  Reported by Michael Chirico to R-devel.
  * write.table(), write.csv() and write.csv2() restore their
    numerical precision (internal equivalent of digits = 15) after an
    interrupt (PR#18384).
  * One can now read also byte FF from a clipboard connection
    (PR#18385).
  * source("") and source(character()) now give more helpful error
    messages.
  * R CMD check --as-cran set _R_CHECK_TIMINGS_ too late to have the
    intended effect.
  * as.POSIXlt(x) now also works with very large dates x, fixing
    PR#18401 reported by Hannes M"uhleisen.
  * Files can now be extracted even from very large zip archives
    (PR#18390, thanks to Martin Jakt).
  * Non-finite objects of class "POSIXlt" are now correctly coerced
    to classes "Date" and "POSIXct"; following up on the extension to
    format() them correctly.
  * Added methods for is.finite(), is.infinite() and is.nan() for
    "POSIXlt" date-time objects.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1678881600">- CHANGES IN R 4.2.3:
  C-LEVEL FACILITIES:
  * The definition of DL_FUNC in R_ext/Rdynload.h has been changed to
    be fully C-compliant.  This means that functions loaded _via_ for
    example R_GetCCallable need to be cast to an appropriate type if
    they have any arguments.
  * .Machine has a new element sizeof.time_t to identify old systems
    with a 32-bit type and hence a limited range of date-times (and
    limited support for dates millions of years from present).
  PACKAGE INSTALLATION:
  * (Windows) The default C++ standard had accidentally been left at
    C++11 when it was changed to C++14 on Unix.
  BUG FIXES:
  * As "POSIXlt" objects may be "partially filled" and their list
    components meant to be recycled, length() now is the length of
    the longest component.
  * as.POSIXlt.Date() could underflow for dates in the far past (more
    than half a million years BCE).
  * as.Date.POSIXlt(x) would return "1970-01-01" instead of NA in R
    4.2.2, e.g., for
    x &lt;- as.POSIXlt(c("2019-01-30","2001-1-1"))
    x$mon &lt;- c(0L, NA); as.Date(x)
  * R CMD check failed to apply enabled _R_CHECK_SUGGESTS_ONLY_ to
    examples and vignettes (regression in R 4.2.0).
  * R CMD check did not re-build vignettes in separate processes by
    default (regression in R 4.2.0).
  * Running examples from HTML documentation now restores previous
    knitr settings and options (PR#18420).
  * Quartz: fonts are now located using Core Graphics API instead of
    deprecated ATS which is no longer supported in the macOS 13 SDK
    (PR#18426).  This also addresses an issue where the currently
    used font in the Quartz device context was not correctly
    retained.
  * (Windows) Math symbols in text drawing functions are again
    rendered correctly (PR#18440).  This fixes a regression in R
    4.2.1 caused by a fix in PR#18382 which uncovered an issue in
    GraphApp due to which the symbol charset was not used with TT
    Symbol font face.
  * (Windows) Installing a package with a src/Makefile.{win,ucrt}
    file includes ~/.R/Makevars.win64 in the search for user
    makevars, as documented in "R Installation and Administration"
    and done for packages with a src/Makevars.{win,ucrt} file.
  * format(&lt;POSIXlt_w/_unbalanced_sec&gt;, "....%OS&lt;n&gt;") with n &gt; 0 no
    longer accidentally uses the unbalanced seconds, thanks to
    Suharto Anggono's report (including patch) in PR#18448.
  * solve.default(a, b) works around issues with some versions of
    LAPACK when a contains NA or NaN values.
  * When UseMethod() cannot dispatch, it no longer segfaults
    producing the error message in case of a long class(), thanks to
    Joris Vankerschaver's report (including patch) in PR#18447.
  * When example(foo, ..) produces graphics on an interactive device
    it needs to open itself, it now leaves devAskNewPage() unchanged
    even when it was FALSE, thus fixing a 14 years old '&lt;FIXME&gt;'.
  * packageDescription() again catches errors from encoding
    conversions. This also fixes broken packageVersion() in C locale
    on systems where iconv does not support transliteration.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1681128000">- add patch to build with libcurl &gt;= 8</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1682078400">- CHANGES IN R 4.3.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Calling &amp;&amp; or || with LHS or (if evaluated) RHS of length greater
    than one is now always an error, with a report of the form
    'length = 4' in coercion to 'logical(1)'
    Environment variable _R_CHECK_LENGTH_1_LOGIC2_ no longer has any
    effect.
  NEW FEATURES:
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.10.1.  (This caused some platform-dependent
    changes to package check output.)  And then to the sources from
    LAPACK version 3.11.0 (with changes only to double complex
    subroutines).
  * The included LAPACK sources have been updated to include the four
    Fortran 90 routines rather than their Fortran 77 predecessors.
    This may give some different signs in SVDs or
    eigendecompositions..  (This completes the transition to LAPACK
    3.10.x begun in R 4.2.0.)
  * The LAPACK sources have been updated to version 3.11.0.  (No new
    subroutines have been added, so this almost entirely bug fixes:
    Those fixes do affect some computations with NaNs, including R's
    NA.)
  * The parser now signals _classed_ errors, notably in case of the
    pipe operator |&gt;.  The error object and message now give line and
    column numbers, mostly as proposed and provided by Duncan Murdoch
    in PR#18328.
  * toeplitz() is now generalized for asymmetric cases, with a
    toeplitz2() variant.
  * xy.coords() and xyz.coords() and consequently, e.g., plot(x,y,
    log = "y") now signal a _classed_ warning about negative values
    of y (where log(.) is NA).  Such a warning can be specifically
    suppressed or caught otherwise.
  * Regular expression functions now check more thoroughly whether
    their inputs are valid strings (in their encoding, e.g. in
    UTF-8).
  * The performance of grep(), sub(), gsub() and strsplit() has been
    improved, particularly with perl = TRUE and fixed = TRUE.  Use of
    useBytes = TRUE for performance reasons should no longer be
    needed and is discouraged: it may lead to incorrect results.
  * apropos() gains an argument dot_internals which is used by the
    completion (help(rcompgen)) engine to also see base internals
    such as .POSIXct().
  * Support in tools::Rdiff() for comparing uncompressed PDF files is
    further reduced - see its help page.
  * qqplot(x, y, ...) gains conf.level and conf.args arguments for
    computing and plotting a confidence band for the treatment
    function transforming the distribution of x into the distribution
    of y (Switzer, 1976, _Biometrika_). Contributed by Torsten
    Hothorn.
  * Performance of package_dependencies() has been improved for cases
    when the number of dependencies is large.
  * Strings newly created by gsub(), sub() and strsplit(), when any
    of the inputs is marked as "bytes", are also marked as "bytes".
    This reduces the risk of creating invalid strings and accidental
    substitution of bytes deemed invalid.
  * Support for readLines(encoding = "bytes") has been added to allow
    processing special text files byte-by-byte, without creating
    invalid strings.
  * iconv(from = "") now takes into account any declared encoding of
    the input elements and uses it in preference to the native
    encoding.  This reduces the risk of accidental creation of
    invalid strings, particularly when different elements of the
    input have different encoding (including "bytes").
  * Package repositories in getOption("repos") are now initialized
    from the repositories file when utils is loaded (if not already
    set, e.g., in .Rprofile).  (From a report and patch proposal by
    Gabriel Becker in PR#18405.)
  * compactPDF() gets a verbose option.
  * type.convert() and hence read.table() get new option tryLogical =
    TRUE with back compatible default.  When set to false, converts
    "F" or "T" columns to character.
  * Added new unit prefixes "R" and "Q" for abbreviating
    (unrealistically large) sizes beyond 10^{27} in standard = "SI",
    thanks to Henrik Bengtsson's PR#18435.
  * as.data.frame()'s default method now also works fine with atomic
    objects inheriting from classes such as "roman", "octmode" and
    "hexmode", such fulfilling the wish of PR#18421, by Benjamin
    Feakins.
  * The as.data.frame.vector() utility now errors for wrong-length
    row.names.  It warned for almost six years, with "Will be an
    error!".
  * sessionInfo() now also contains La_version() and reports codepage
    and timezone when relevant, in both print() and toLatex() methods
    which also get new option tzone for displaying timezone
    information when locale = FALSE.
  * New function R_compiled_by() reports the C and Fortran compilers
    used to build R, if known.
  * predict(&lt;lm&gt;, newdata = *) no longer unnecessarily creates an
    offset of all 0s.
  * solve() for complex inputs now uses argument tol and by default
    checks for 'computational singularity' (as it long has done for
    numeric inputs).
  * predict(&lt;rank-deficient lm&gt;, newdata=*) now obeys a new argument
    rankdeficient, with new default "warnif", warning only if there
    are non-estimable cases in newdata.  Other options include
    rankdeficient = "NA", predicting NA for non-estimable newdata
    cases.  This addresses PR#15072 by Russ Lenth and is based on his
    original proposal and discussions in PR#16158 also by David Firth
    and Elin Waring.  Still somewhat experimental.
  * Rgui console implementation now works better with the NVDA screen
    reader when the full blinking cursor is selected.  The underlying
    improvements in cursor handling may help also other screen
    readers on Windows.
  * The drop-field control in GraphApp can now be left with the TAB
    key and all controls can be navigated in the reverse order using
    the Shift+TAB key, improving accessibility of the Rgui
    configuration editor.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now fully accurate
    (instead of to "only" minimally five digits).
  * demo(error.catching) now also shows off withWarnings() and
    tryCatchWEMs().
  * As an experimental feature the placeholder _ can now also be used
    in the rhs of a forward pipe |&gt; expression as the first argument
    in an extraction call, such as _$coef. More generally, it can be
    used as the head of a chain of extractions, such as _$coef[[2]].
  * Spaces in the environment variable used to choose the R session's
    temporary directory (TMPDIR, TMP and TEMP are tried in turn) are
    now fatal.  (On Windows the 'short path' version of the path is
    tried and used if that does not contain a space.)
  * all.equal.numeric() gets a new optional switch giveErr to return
    the numeric error as attribute.  Relatedly,
    stopifnot(all.equal&lt;some&gt;(a, b, ..)) is as "smart" now, as
    stopifnot(all.equal(....)) has been already, thus allowing
    customized all.equal&lt;Some&gt;() wrappers.
  * R on Windows is now able to work with path names longer than 260
    characters when these are enabled in the system (requires at
    least Windows 10 version 1607).  Packages should be updated to
    work with long paths as well, instead of assuming PATH_MAX to be
    the maximum length.  Custom front-ends and applications embedding
    R need to update their manifests if they wish to allow this
    feature.  See
    &lt;https://blog.r-project.org/2023/03/07/path-length-limit-on-windows&gt;
    for more information.
  * 'Object not found' and 'Missing argument' errors now give a more
    accurate error context. Patch provided by Lionel Henry in
    PR#18241.
  * The @ operator is now an S3 generic. Based on contributions by
    Tomasz Kalinowski in PR#18482.
  * New generic chooseOpsMethod() provides a mechanism for objects to
    resolve cases where two suitable methods are found for an Ops
    Group Generic. This supports experimenting with alternative
    object systems. Based on contributions by Tomasz Kalinowski in
    PR#18484.
  * inherits(x, what) now accepts values other than a simple
    character vector for argument what. A new generic, nameOfClass(),
    is called to resolve the class name from what. This supports
    experimenting with alternative object systems. Based on
    contributions by Tomasz Kalinowski in PR#18485.
  * Detection of BLAS/LAPACK in use (sessionInfo()) with FlexiBLAS
    now reports the current backend.
  * The "data.frame" method for subset() now warns about extraneous
    arguments, typically catching the use of = instead of == in the
    subset expression.
  * Calling a:b when numeric a or b is longer than one may now be
    made into an error by setting environment variable
    _R_CHECK_LENGTH_COLON_ to a true value, along the proposal in
    PR#18419 by Henrik Bengtsson.
  * density(x, weights = *) now warns if automatic bandwidth
    selection happens without using weights; new optional warnWbw may
    suppress the warning.  Prompted by Christoph Dalitz' PR#18490 and
    its discussants.
  * rm(list = *) is faster and more readable thanks to Kevin Ushey's
    PR#18492.
  * The plot.lm() function no longer produces a normal Q-Q plot for
    GLMs. Instead it plots a half-normal Q-Q plot of the absolute
    value of the standardized deviance residuals.
  * The print() method for class "summary.glm" no longer shows
    summary statistics for the deviance residuals by default.  Its
    optional argument show.residuals can be used to show them if
    required.
  * The tapply() function now accepts a data frame as its X argument,
    and allows INDEX to be a formula in that case. by.data.frame()
    similarly allows INDICES to be a formula.
  * The performance of df[j] &lt;- value (including for missing j) and
    write.table(df) has been improved for data frames df with a large
    number of columns.  (Thanks to Gabriel Becker's PR#18500,
    PR#18503 and discussants, prompted by a report from Toby Dylan
    Hocking on the R-devel mailing list.)
  * The matrix multiply operator %*% is now an S3 generic, belonging
    to new group generic matrixOps.  From Tomasz Kalinowski's
    contribution in PR#18483.
  * New function array2DF() to convert arrays to data frames,
    particularly useful for the list arrays created by tapply().
  DATES and TIMES:
  * On platforms where (non-UTC) datetimes before 1902 (or before
    1900 as with system functions on recent macOS) are guessed by
    extrapolating time zones from 1902-2037, there is a warning at
    the first use of extrapolation in a session.  (As all time zones
    post 2037 are extrapolation, we do not warn on those.)
  * (Platforms using --with-internal-tzone, including Windows and by
    default macOS). How years are printed in dates or date-times can
    be controlled by environment variable R_PAD_YEARS_BY_ZERO.  The
    default remains to pad to 4 digits by zeroes, but setting value
    no gives no padding (as used by default by glibc).
  * strftime() tries harder to determine the offset for the "%z"
    format, and succeeds on the mainstream R platforms.
  * strftime() has a limit of 2048 bytes on the string produced -
    attempting to exceed this is an error.  (Previously it silently
    truncated at 255 bytes.)
  * sessionInfo() records (and by default prints) the system time
    zone as part of the locale information.  Also, the source
    (system/internal) of the date-time conversion and printing
    functions.
  * Objects of class "POSIXlt" created in this version of R always
    have 11 components: component zone is always set, and component
    gmtoff is set for times in UTC and usually set on the (almost
    all) platforms which have C-level support, otherwise is NA.
  * There are comprehensive validity checks on the structure of
    objects of class "POSIXlt" when converting (including formatting
    and printing).  (This avoids mis-conversions of hand-crafted
    objects.)
  * There is some support for using the native date-time routines on
    macOS: this is only viable on recent versions (e.g. 12.6 and 13)
    and does get wrong some historical changes (before 1900, during
    WWII).  Use of --with-internal-tzone remains the default.
  * as.POSIXct(&lt;numeric&gt;) and as.POSIXlt(.) (without specifying
    origin) now work.  So does as.Date(&lt;numeric&gt;).
  * as.Date.POSIXct(., tz) now treats several tz values, notably
    "GMT" as equivalent to "UTC", proposed and improved by Michael
    Chirico and Joshua Ulrich in PR#17674.
  * Experimental balancePOSIXlt() utility allows using "ragged" and
    or out-of-range "POSIXlt" objects more correctly, e.g., in
    subsetting and subassignments.  Such objects are now documented.
    More experimentally, a "POSIXlt" object may have an attribute
    "balanced" indicating if it is known to be filled or fully
    balanced.
  * Functions axis.Date() and axis.POSIXct() are rewritten to gain
    better default tick locations and better default formats by using
    prettyDate(). Thanks to Swetlana Herbrandt.
  * The mapping of Windows' names for time zones to IANA's 'Olson'
    names has been updated.  When ICU is available (it is by
    default), it is used to get a mapping for the current region set
    in Windows.  This can be overridden by setting environment
    variable TZ to the desired Olson name - see OlsonNames() for
    those currently available.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 16
    and so packages that provide graphics devices should be
    reinstalled.
  * The grDevices and grid packages have new functions for rendering
    typeset glyphs, primarily: grDevices::glyphInfo() and
    grid::grid.glyph().
    Rendering of typeset glyphs is only supported so far on the
    Cairo-based graphics devices and on the pdf() and quartz()
    devices.
  * The defined behaviour for "clear" and "source" compositing
    operators (via grid::grid.group()) has been changed (to align
    better with simple interpretation of original Porter-Duff
    definitions).
  * Support for gradients, patterns, clipping paths, masks, groups,
    compositing operators, and affine transformations has been added
    to the quartz() device.
  INSTALLATION on a UNIX-ALIKE:
  * A system installation of generic LAPACK 3.10.0 or later will be
    preferred to the version in the R sources.
    configure option --with-lapack=no (equivalently --without-lapack)
    forces compilation of the internal LAPACK sources.
    If --with-lapack is not specified, a system liblapack is looked
    for and used if it reports version 3.10.0 or later and does not
    contain BLAS routines.
    Packages using LAPACK will need to be reinstalled if this changes
    to using an external library.
  * On aarch64 Linux platforms using GCC, configure now defaults to
  - fPIC (instead of -fpic), as desired in PR#18326.
  * configure now checks conversion of datetimes between POSIXlt and
    POSIXct around year 2020.  Failure (which has been seen on
    platforms missing tzdata) is fatal.
  * If configure option --with-valgrind-instrumentation is given
    value 1 or 2, option --with-system-valgrind-headers is now the
    default and ignored (with a warning).  It is highly recommended
    that the system headers are installed alongside valgrind: they
    are part of its packaging on some Linux distributions and
    packaged separately (e.g. in the valgrind-devel RPM) on others.
    configure will give a warning if they are not found.
    The system headers will be required in a future release of R to
    build with valgrind instrumentation.
  * libcurl 8.x is now accepted by configure: despite a change in
    major version number it changes neither API nor ABI.
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools43, an update of the Rtools42 toolchain.  It is
    based on gcc 12 and newer versions of MinGW-W64, binutils and
    libraries.  At this time R-devel can still be built using
    Rtools42 without changes, but when R-devel is installed via the
    installer, it will by default look for Rtools43.
  * Old make targets rsync-extsoft and 32-bit ones that are no longer
    needed have been removed.
  * Default builds (including for packages) no longer select C99.
    Thus the C standard used is the default for the compiler, which
    for the toolchain in Rtools43 is C17.  (This is consistent with
    Unix builds.)
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++17 where
    available (which it is on all currently checked platforms): if
    not C++14 or C++11 is used if available otherwise C++ is not
    supported.
  * USE_FC_LEN_T is the default: this uses the correct
    (compiler-dependent) prototypes for Fortran BLAS/LAPACK routines
    called from C/C++, and requires adjustment of many such calls -
    see 'Writing R Extensions' SS6.6.1.
  * There is initial support for C++23 as several compilers are now
    supporting -std=c++23 or -std=c++2b or similar.  As for C++20,
    there no additional configure checks for C++23 features beyond a
    check that the compiler reports a __cplusplus value greater than
    that in the C++20 standard.  C++ feature tests should be used.
  * There is support for a package to indicate the version of the C
    standard which should be used to compile it, and for the
    installing user to specify this.  In most cases R defaults to the
    C compiler's default standard which is C17 (a `bug-fix' of C11) -
    earlier versions of R or compilers may have defaulted to C99.
    Current options are:
    USE_C17 Use a standard that is at most C17.  The intention is to
    allow legacy packages to still be installed when later C
    standards become the default, including packages using new
    keywords as identifiers or with K&amp;R-style function
    declarations.  This will use C17 if available, falling back
    to C11.
    USE_C90 Use the C90 (aka C89) standard.  (As that standard did
    not require compilers to identify that version, all we can
    verify is that the compiler does not claim to be using a
    later standard.  It may accept C99 features - for example
    clang accepts // to make comments.)
    USE_C99 Use the C99 standard. This should be rarely needed - it
    avoids the few new features of C11/C17 which can be useful if
    a package assumes them if C17 is specified and they are not
    implemented.
    USE_C23 Use C23 (or in future, later).  Compiler/library support
    for C23 is still being implemented, but LLVM clang from
    15.0.0 and the upcoming GCC 13 have quite extensive support.
    These can be specified as part of the SystemRequirements field in
    the package's DESCRIPTION file or _via_ options --use-C17 and so
    on of R CMD INSTALL and R CMD SHLIB.
    For further details see "Writing R Extensions" SS1.2.5.
  * (Windows) A src/Makefile.ucrt or src/Makefile.win file is now
    included after R_HOME/etcR_ARCH/Makeconf and so no longer needs
    to include that file itself.  Installation of a package with such
    a file now uses a site Makevars file in the same way as a package
    with a src/Makevars.win file would.
  * configure is now passed crucial variables such as CC and CFLAGS
    in its environment, as many packages were not setting them (as
    documented in 'Writing R Extensions' SS1.2).
    This has most effect where configure is used to compile parts of
    the package - most often by cmake or libtool which obfuscate the
    actual compile commands used.
    Also used for configure.win and configure.ucrt on Windows.
  FORTRAN FLAGS:
  * The flag -fno-optimize-sibling-calls is no longer forced for
    gfortran 7 and later.  It should no longer be needed now using
    'hidden' character-length arguments when calling BLAS/LAPACK
    routines from C/C++ is the default even for packages.  (Unless
    perhaps packages call Fortran code from C/C++ without using R's
    headers and without allowing for these arguments.)
  C-LEVEL FACILITIES:
  * The deprecated S-compatibility macros DOUBLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * The deprecated legacy typedefs of Sint and Sfloat in header R.h
    are no longer defined, and that header no longer includes header
    limits.h from C nor climits from C++.
  * New macro CAD5R() is provided in Rinternals.h and used in a few
    places in the R sources.
  * ALTREP now supports VECSXP vectors. Contributed by Gabor Csardi
    in PR#17620.
  * The Rcomplex definition (in header R_ext/Complex.h) has been
    extended to prevent possible mis-compilation when interfacing
    with Fortran (PR#18430).  The new definition causes compiler
    warnings with static initializers such as {1, 2}, which can be
    changed to {.r=1, .i=2}.
    Using the new definition from C++ depends on compiler extensions
    supporting C features that have not been incorporated into the
    C++ standards but are available in g++ and clang++: this may
    result in C++ compiler warnings but these have been worked around
    for recent versions of common compilers (GCC, Apple/LLVM clang,
    Intel).
    It is intended to change the inclusion of header R_ext/Complex.h
    by other R headers, so C/C++ code files which make use of
    Rcomplex should include that header explicitly.
  UTILITIES:
  * R CMD check does more checking of package .Rd files, warning
    about invalid email addresses and (some) invalid URIs and noting
    empty \item labels in description lists.
  * R CMD check now also reports problems when reading package news
    in md (file NEWS.md) and (optionally) plain text (file NEWS)
    formats.
  * _R_CHECK_TIMINGS_ defaults to a value from the environment even
    for R CMD check --as-cran; this allows for exceptionally fast or
    slow platforms.
    It now applies to checking PDF and HTML versions of the manuals,
    and 'checking CRAN incoming feasibility'.
  * R CMD check can optionally (but included in --as-cran) check
    whether HTML math rendering _via_ KaTeX works for the package .Rd
    files.
  * Non-interactive debugger invocations can be trapped by setting
    the environment variable _R_CHECK_BROWSER_NONINTERACTIVE_ to a
    true value.  This is enabled by R CMD check --as-cran to detect
    the use of leftover browser() statements in the package.
  * The use of sprintf and vsprintf from C/C++ has been deprecated in
    macOS 13 and is a known security risk.  R CMD check now reports
    (on all platforms) if their use is found in compiled code:
    replace by snprintf or vsnprintf respectively. [*NB:* whether
    such calls get compiled into the package is platform-dependent.]
  * Where recorded at installation, R CMD check reports the C and
    Fortran compilers used to build R.
    It reports the OS in use (if known, as given by osVersion) as
    well as that R was built for.
    It notes if a C++ standard was specified which is older than the
    current default: many packages have used C++11 to mean 'not
    C++98' - as C++11 is the minimum supported since R 4.0.0, that
    specification can probably be removed.
  * R CMD INSTALL reports the compilers (and on macOS, the SDK) used,
    and this is copied to the output of R CMD check.
    Where a C++ standard is specified, it is reported.
  * R CMD check's 'checking compilation flags in Makevars' has been
    relaxed to accept the use of flags such as -std=f2008 in
    PKG_FFLAGS.
  * tools::buildVignettes() has a new argument skip, which is used by
    R CMD check to skip (and note) vignettes with unavailable
    \VignetteDepends (PR#18318).
  * New generic .AtNames() added to enable class-specific completions
    after @. The formerly internal function findMatches() is now
    exported, mainly for use in methods for .DollarNames() and
    .AtNames().
  DEPRECATED AND DEFUNCT:
  * default.stringsAsFactors() is defunct.
  * Calling as.data.frame.&lt;class&gt;() directly (for 12 atomic classes)
    is going to be formally deprecated, currently activated by
    setting the environment variable
    _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ to non-empty, which also
    happens in R CMD check --as-cran.
  BUG FIXES:
  * Hashed environments with sizes less than 5 can now grow.
    (Reported to R-devel by Duncan Garmonsway.)
  * as.character(&lt;Rd&gt;, deparse = TRUE) failed to re-escape curly
    braces in LaTeX-like text.  (Reported by Hadley Wickham in
    PR#18324.)
  * library() now passes its lib.loc argument when requiring Depends
    packages; reported (with fix) in PR#18331 by Mikael Jagan.
  * R CMD Stangle: improved message about 'Output' files.
  * head(x, n) and tail(x, n) now signal an error if n is not
    numeric, instead of incidentally "working" sometimes returning
    all of x.  Reported and discussed by Colin Fay, in PR#18357.
  * The "lm" method for summary() now gives the correct F-statistic
    when the model contains an offset.  Reported in PR#18008.
  * C() and `contrasts&lt;-`() now preserve factor level names when
    given a function object (as opposed a function name which did
    preserve names). Reported in PR#17616.
  * c(a = 1, 2)[[]] no longer matches 2 but rather signals a
    _classed_ error.  Reported and analysed by Davis Vaughan in
    PR#18367, a duplicate of PR#18004, by Jan Meis et al.  For
    consistency, NULL[[]] is also erroneous now.  x[[]] &lt;- v gives an
    error of the same class "MissingSubscriptError".
  * The relist() function of utils now supports NULL elements in the
    skeleton (PR#15854).
  * ordered(levels = *) (missing x) now works analogously to factor(,
    ordered=TRUE); reported (with fix) by Achim Zeileis in PR#18389.
  * User-defined Rd macro definitions can now span multiple lines,
    thanks to a patch from Duncan Murdoch. Previously, the Rd parser
    silently ignored everything after the first line.
  * Plain-text help (tools::Rd2txt()) now preserves an initial blank
    line for text following description list items.
  * tools::Rd2HTML() and tools::Rd2latex() no longer split \arguments
    and \value lists at Rd comments.
  * tools::Rd2latex() now correctly handles optional text outside
    \items of argument lists as well as bracketed text at the
    beginning of sections, e.g., \value{[NULL]}.
  * as.character(&lt;POSIXt&gt;) now behaves more in line with the methods
    for atomic vectors such as numbers, and is no longer influenced
    by options().  Ditto for as.character(&lt;Date&gt;).  The
    as.character() method gets arguments digits and OutDec with
    defaults _not_ depending on options().  Use of as.character(*,
    format = .) now warns.
  * Similarly, the as.character.hexmode() and *.octmode() methods
    also behave as good citizen methods and back compatibility option
    keepStr = TRUE.
  * The as.POSIXlt(&lt;POSIXlt&gt;) and as.POSIXct(&lt;POSIXct&gt;) default
    methods now do obey their tz argument, also in this case.
  * as.POSIXlt(&lt;Date&gt;) now does apply a tz (time zone) argument, as
    does as.POSIXct(); partly suggested by Roland Fuss on the R-devel
    mailing list.
  * as.Date.POSIXlt(x) now also works when the list components are of
    unequal length, aka "partially filled" or "ragged".
  * expand.model.frame() looked up variables in the wrong environment
    when applied to models fitted without data.  Reported in
    PR#18414.
  * time() now (also) uses the ts.eps = getOption("ts.eps") argument
    and thus by default rounds values very close to the start (or
    end) of a year.  Based on a proposal by Andre"i V. Kostyrka on
    R-help.
  * Printing of a factanal() result with just one factor and sort =
    TRUE now works regularly, fixing PR#17863 by Timothy Bates,
    thanks to the 'R Contributors' working group.
  * Printing 0-length objects of class "factor", "roman", "hexmode",
    "octmode", "person", "bibentry", or "citation" now prints
    something better, one of which fixes PR#18422, reported by
    Benjamin Feakins.
  * Sys.timezone() queries timedatectl only if systemd is loaded;
    addressing a report by Jan Gorecki in PR#17421.
  * The formula method of cor.test() had scoping problems when
    environment(formula) was not the calling environment; reported
    with a patch proposal by Mao Kobayashi in PR#18439.
  * attach() of an environment with active bindings now preserves the
    active bindings.  Reported by Kevin Ushey in PR#18425.
  * BLAS detection now works also with system-provided libraries not
    available as regular files.  This fixes detection of the
    Accelerate framework on macOS since Big Sur.  Reported by David
    Novgorodsky.
  * download.file() gives a helpful error message in case of an
    invalid download.file.method option, thanks to Colin Fay's report
    in PR#18455.
  * Sporadic crashes of Rterm when using completion have been fixed.
  * Rprof() is now more reliable.  A livelock in thread
    initialization with too short sampling interval has been fixed on
    macOS.  A deadlock in using the C runtime has been fixed on
    Windows.  A potential deadlock has been prevented on Unix.
  * Cursor placement in Rgui now works even after a fixed-width font
    is selected.
  * Mandatory options (options()) are now set on startup so that
    saving and restoring them always works (PR#18372).
  * Package installation, R CMD INSTALL or install.packages(*), now
    parses each of the &lt;pkg&gt;/R/*.R files individually instead of
    first concatenating and then parse()ing the large resulting file.
    This allows parser or syntax errors to be diagnosed with correct
    file names and line numbers, thanks to Simon Dedman's report and
    Bill Dunlap's patch in PR#17859.
    This _does_ require syntactically self contained R source files
    now, fixing another inadvertent bug.
  * predict.lm(&lt;model with offset&gt;) now finds the offset in the
    correct environment, thanks to Andr'e Gillibert's report and patch
    in PR#18456.
  * getInitial(&lt;formula&gt;) now finds the selfStart model in the
    correct environment.  (Reported by Ivan Krylov in PR#18368.)
  * Fix for possible segfault when using recently-added graphics
    features, such as gradients, clipping paths, masks, and groups
    with pdf(file=NULL).
  * class(m) &lt;- class(m) no longer changes a matrix m by adding a
    class _attribute_.
  * packageDate(pkg) now only warns once if there is no pkg.
  * When ts() creates a multivariate time series, "mts", it also
    inherits from "array" now, and is.mts() is documented _and_
    stricter.
  * Rd2txt() now preserves line breaks of \verb Rd content and from
    duplicated \cr.  The former also fixes the rendering of verbatim
    output from Rd \Sexpr in plain-text help.
  * uniroot(f, interval) should no longer wrongly converge _outside_
    the interval in some cases where abs(f(x)) == Inf for an x at the
    interval boundary, thanks to posts by Ben Bolker and Serguei
    Sokol on R-devel.
  * Vectorized alpha handling in palette functions such as in gray(),
    rainbow(), or hcl.colors() works correctly now, thanks to Achim
    Zeileis' report and patch in PR#18476.
  * Formatting and print()ing of bibentry objects has dropped the
    deprecated citation.bibtex.max argument, such that the bibtex
    argument's default for print.bibentry() depends directly on the
    citation.bibtex.max option, whereas in format.bibentry() the
    option no longer applies.
  * Attempting to use a character string naming a foreign function
    entry point in a foreign function call in a package will now
    signal an error if the packages has called R_forceSymbols to
    specify that symbols must be used.
  * An error in table() could permanently set options(warn=2)
    promoting all subsequent warnings to errors.
  * The sigma() function gave misleading results for binary GLMs.  A
    new method for objects of class "glm" returns the square root of
    the estimate of the dispersion parameter using the same
    calculation as summary.glm().
  * bs() and ns() in the (typical) case of automatic knot
    construction, when some of the supposedly inner knots coincide
    with boundary knots, now moves them inside (with a warning),
    building on PR#18442 by Ben Bolker.
  * R CMD on Windows now skips the site profile with --no-site-file
    and --vanilla even when R_PROFILE is set (PR#18512, from Kevin
    Ushey).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1686916800">- CHANGES IN R 4.3.1:
  C-LEVEL FACILITIES:
  * The C-level API version of R's integrate(), Rdqags() in Applic.h,
    now returns the correct number of integrand evaluations neval,
    fixing PR#18515 reported and diagnosed by Stephen Wade.
  * The C prototypes for LAPACK calls dspgv and dtptrs in
    R_exts/Lapack.h had one too many and one too few character length
    arguments - but this has not caused any known issues. To get the
    corrected prototypes, include
    [#]include &lt;Rconfig.h&gt; // for PR18534fixed
    [#]ifdef PR18534fixed
    [#] define usePR18534fix 1
    [#]endif
    [#]include &lt;R_exts/Lapack.h&gt;
    in your C/C++ code (PR#18534).
  INSTALLATION:
  * Many of the checks of esoteric Internet operations and those
    using unreliable external sites have been moved to a new target
    that is not run by default and primarily intended for the core
    developers.  To run them use
    cd tests; make test-Internet-dev
  BUG FIXES:
  * .S3methods(), typically called from methods(), again marks
    methods from package base as visible.
    Also, the visibility of non-base methods is again determined by
    the method's presence in search().
  * tools::Rdiff() is now more robust against invalid strings, fixing
    installation tests on Windows without Rtools installed
    (PR#18530).
  * Fix (new) bug in hcl.colors(2, *), by Achim Zeileis (PR#18523).
  * head(., &lt;illegal&gt;) and tail(..) now produce more useful "Error in
    ...." error messages, fixing PR#18362.
  * Package code syntax on Windows is checked in UTF-8 when UTF-8 is
    the native encoding.
  * na.contiguous(x) now also returns the first run, when it is at
    the beginning and there is a later one of the same length;
    reported to R-devel, including a fix, by Georgi Boshnakov.
    Further, by default, it modifies only an existing attr(*,"tsp")
    but otherwise no longer sets one.
  * chol(&lt;not pos.def&gt;, pivot = &lt;T|F&gt;) now gives a correct error or
    warning message (depending on pivot), thanks to Mikael Jagan's
    (PR#18541).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1699012800">- CHANGES IN R 4.3.2:
  NEW FEATURES:
  * The default initialization of the "repos" option from the
    repositories file at startup can be skipped by setting
    environment variable R_REPOSITORIES to NULL such that
    getOption("repos") is empty if not set elsewhere.
  * qr.X() is now an implicit S4 generic in methods.
  * iconv(to = "ASCII//TRANSLIT") is emulated using substitution on
    platforms which do not support it (notably Alpine Linux).  This
    should give a human-readable conversion in ASCII on all platforms
    (rather than NA_character_).
  * trans3d() gains options continuous and verbose addressing the
    problem of possible "wrap around" when projecting too long
    curves, as reported by Achim Zeileis in PR#18537.
  * tools::showNonASCII() has been rewritten to work better on macOS
    14 (which has a changed implementation of iconv()).
  * tiff(type = "quartz") (the default on macOS) now warns if
    compression is specified: it continues to be ignored.
  INSTALLATION on a UNIX-ALIKE:
  * There is some support for building with Intel's LLVM-based
    compilers on x86_64 Linux, such as (C) icx, (C++) ipcx and
    (Fortran) ifx from oneAPI 2023.x.y.
  * There is support for using LLVM's flang-new as the Fortran
    compiler from LLVM 16.0.x (preferably 17.0.0 or later).
  UTILITIES:
  * R CMD check reports the use of the Fortran 90 random number
    generator RANDOM_NUMBER() and the subroutines to initialize it.
    'Writing R Extensions' has example code to use R's RNGs from
    Fortran.
  BUG FIXES:
  * substr(x, n, L) &lt;- cc now works (more) correctly for multibyte
    UTF-8 strings x when L &gt; nchar(x), thanks to a report and patch
    by 'Architect 95'.
  * contrib.url(character()) now returns 0-length character() as
    documented, which also avoids spurious warnings from
    available.packages() et al. in the edge case of an empty vector
    of repository URLs.
  * readChar(., 4e8) no longer fails, thanks to Kodi Arfer's report
    (PR#18557).
  * lapply(&lt;list&gt;, as.data.frame) no longer warns falsely for some
    base vector components.
  * Communication between parent and child processes in the multicore
    part of parallel could fail on platforms that do not support an
    arbitrarily large payload in system functions read()/write() on
    pipes (seen on macOS where a restriction to INT_MAX bytes is
    documented, without doing a partial read unlike Linux). The
    payload is now split into 1Gb chunks to avoid that problem.
    (PR#18571)
  * qqplot(x,y, conf.level=.) gives better confidence bounds when
    length(x) != length(y), thanks to Alexander Ploner's report and
    patch proposal (PR#18557).
  * norm(&lt;0-length&gt;, "2") now gives zero instead of an error, as all
    the other norm types, thanks to Mikael Jagan's PR#18542.
  * Build-stage Rd macros \packageAuthor and \packageMaintainer now
    process Authors@R, fixing NA results when the package DESCRIPTION
    omits Author and Maintainer fields.
  * Formatting and printing complex numbers could give things like
    0.1683-0i because of rounding error: -0i is now replaced by +0i.
  * postscript() refused to accept a title comment containing the
    letter "W" (PR#18599).
  * isoreg(c(1,Inf)) signals an error instead of segfaulting, fixing
    PR#18603.
  * tiff(type = "Xlib") was only outputting the last page of
    multi-page plots.
  * tools::latexToUtf8() again knows about \~{n} and other letters
    with tilde, fixing a regression in R 4.3.0, and about \^{i} as an
    alternative to \^{\i} (similarly with other accents).
    Furthermore, LaTeX codes for accented I letters are now correctly
    converted, also fixing related mistakes in
    tools::encoded_text_to_latex().
  * tar(*, tar = "internal") no longer creates out-of-spec tar files
    in the very rare case of user or group names longer than 32
    bytes, fixing PR#17871 with thanks to Ivan Krylov.
  * When using the "internal" timezone datetime code, adding a
    fraction of a second no longer adds one second, fixing PR#16856
    from a patch by Ivan Krylov.
  * tools::checkRd() no longer produces spurious notes about
    "unnecessary braces" from multi-line Rd results of \Sexpr macros.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1709208000">- CHANGES IN R 4.3.3:
  NEW FEATURES:
  * iconv() now fixes up variant encoding names such as "utf8"
    case-insensitively.
  DEPRECATED AND DEFUNCT:
  * The legacy encoding = "MacRoman" is deprecated in pdf() and
    postscript(): support was incomplete in earlier versions of R.
  BUG FIXES:
  * Arguments are now properly forwarded to methods on S4 generics
    with ... in the middle of their formal arguments. This was broken
    for the case when a method introduced an argument but did not
    include ... in its own formals. Thanks to Herv'e Pag`es for the
    report PR#18538.
  * Some invalid file arguments to pictex(), postscript() and xfig()
    opened a file called NA rather than throw an error.  These
    included postscript(NULL) (which some people expected to work
    like pdf(NULL)).
  * Passing filename = NA to svg(), cairo_pdf(), cairo_ps() or the
    Cairo-based bitmap devices opened a file called NA: it now throws
    an error.
  * quartz(file = NA) opened a file called NA, including when used as
    a Quartz-based bitmap device.  It now gives an error.
  * rank(&lt;long vector&gt;) now works, fixing PR#18617, thanks to Ilia
    Kats.
  * seq.int() did not adequately check its length.out argument.
  * match(&lt;POSIXct&gt;, .) is correct again for differing time zones,
    ditto for "POSIXlt", fixing PR#18618 reported by Bastian Klein.
  * drop.terms(*, dropx = &lt;0-length&gt;) now works, fixing PR#18563 as
    proposed by Mikael Jagan.
  * drop.terms(*) keeps + offset(.) terms when it should, PR#18565,
    and drop.terms() no longer makes up a response, PR#18566, fixing
    both bugs thanks to Mikael Jagan.
  * getS3method("t", "test") no longer finds the t.test() function,
    fixing PR#18627.
  * pdf() and postscript() support for the documented Adobe encodings
    "Greek" and "Cyrilllic" was missing (although the corresponding
    Windows' codepages could be used).
  * Computations of glyph metric information for pdf() and
    postscript() did not take into account that transliteration could
    replace one character by two or more (only seen on macOS 14) and
    typically warned that the information was not known.
  * rank(x) no longer overflows during integer addition, when
    computing rank average for largish but not-yet long vector x,
    fixing PR#18630, thanks to Ilia Kats.
  * list.files() on Windows now returns also files with names longer
    that 260 bytes (the Windows limit is 260 characters).
    Previously, some file names particularly with 'East Asian'
    characters were omitted.
  * cov2cor(&lt;0 x 0&gt;) now works, fixing PR#18423 thanks to Mikael
    Jagan and Elin Waring.
  * cov2cor(&lt;negative diagonal&gt;) and similar now give one warning
    instead of two, with better wording, fixing PR#18424 thanks to
    Mikael Jagan.
  * tools:: startDynamicHelp() now ensures port is in proper range,
    fixing PR#18645.
  * pbeta(x, a,b) is correct now for x=0 or 1 in the boundary cases
    where a or b or both are 0, fixing PR#18672 thanks to Michael
    Fay.
  * pmatch(x, table) for large table, also called for data frame row
    selection, dfrm[nm, ], is now interruptible, fixing PR#18656.
  * predict(&lt;rank-deficient lm&gt;, newdata=*) fix computing of nbasis,
    see Russ Lenth's comment 29 in PR#16158.
  * Added a work-around for a bug in macOS 14.3.1 and higher which
    prevents R plots in the Quartz Cocoa device from updating on
    screen.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1713960000">- CHANGES IN R 4.4.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Startup banners, R --version, sessionInfo() and R CMD check no
    longer report (64-bit) as part of the platform as this is almost
    universal - the increasingly rare 32-bit platforms will still
    report (32-bit).
    On Windows, ditto for window titles.
  * is.atomic(NULL) now returns FALSE, as NULL is not an atomic
    vector.  Strict back-compatibility would replace is.atomic(foo)
    by (is.null(foo) || is.atomic(foo)) but should happen only
    sparingly.
  NEW FEATURES:
  * The confint() methods for "glm" and "nls" objects have been
    copied to the stats package.  Previously, they were stubs which
    called versions in package MASS. The MASS namespace is no longer
    loaded if you invoke (say) confint(glmfit).  Further, the "glm"
    method for profile() and the plot() and pairs() methods for class
    "profile" have been copied from MASS to stats.  (profile.nls()
    and plot.profile.nls() were already in stats.)
  * The confint() and profile methods for "glm" objects have gained a
    possibility to do profiling based on the Rao Score statistic in
    addition to the default Likelihood Ratio. This is controlled by a
    new test = argument.
  * The pairs() method for "profile" objects has been extended with a
    which = argument to allow plotting only a subset of the
    parameters.
  * The "glm" method for anova() computes test statistics and
    p-values by default, using a chi-squared test or an F test
    depending on whether the dispersion is fixed or free.  Test
    statistics can be suppressed by giving argument test a false
    logical value.
  * In setRepositories() the repositories can be set using their
    names via name = instead of index ind =.
  * methods() and .S3methods() gain a all.names option for the (rare)
    case where functions starting with a . should be included.
  * Serializations can now be interrupted (e.g., by Ctrl-C on a
    Unix-alike) if they take too long, e.g., from save.image(),
    thanks to suggestions by Ivan Krylov and others on R-devel.
  * New startup option --max-connections to set the maximum number of
    simultaneous connections for the session.  Defaults to 128 as
    before: allowed values up to 4096 (but resource limits may in
    practice restrict to smaller values).
  * R on Windows (since Windows 10 2004) now uses the new Segment
    Heap allocator. This may improve performance of some
    memory-intensive applications.
  * When R packages are built, typically by R CMD build &lt;pkg&gt;, the
    new --user=&lt;build_user&gt; option overrides the (internally
    determined) user name, currently Sys.info()["user"] or LOGNAME.
    This is a (modified) fulfillment of Will Landau's suggestion in
    PR#17530.
  * tools::testInstalledBasic() gets new optional arguments outDir
    and testSrcdir, e.g., allowing to use it in a &lt;builddir&gt; !=
    &lt;srcdir&gt; setup, and in standard "binary" Windows installation
  * if* a source tests/ folder is present.
  * range(&lt;DT_with_Inf&gt;, finite = TRUE) now work for objects of class
    "Date", "POSIXct", and "POSIXlt" with infinite entries,
    analogously to range.default(), as proposed by Davis Vaughan on
    R-devel.  Other range()-methods can make use of new function
    .rangeNum().
  * New .internalGenerics object complementing .S3PrimitiveGenerics,
    for documentation and low-level book-keeping.
  * grid() now invisibly returns the x- and y- coordinates at which
    the grid-lines were drawn.
  * norm(., type) now also works for complex matrices.
  * kappa(., exact = TRUE, norm = *) now works for all norms and also
    for complex matrices.  In symmetric / triangular cases, the new
    argument uplo = "U" | "L" allows the upper or lower triangular
    part to be specified.
  * memDecompress(type = "unknown") recognizes compression in the
    default 'zlib' format as used by memCompress(type = "gzip").
  * memCompress() and memDecompress() will use the libdeflate library
    (&lt;https://github.com/ebiggers/libdeflate&gt;) if installed.  This
    uses the same type of compression for type = "gzip" but is 1.5-2x
    faster than the system libz library on some common platforms: the
    speed-up may depend on the library version.
  * diff() for objects of class "Date", "POSIXct", and "POSIXlt"
    accepts a units argument passed via ....
  * Dynamic help now does a much better job of rendering package
    DESCRIPTION metadata.
  * Rprof() gains an event argument and support for elapsed (real)
    time profiling on Unix (PR#18076).
  * filled.contour() gains a key.border argument.
  * tools::update_pkg_po() gets arguments pot_make and mo_make for
    _not_ re-making the corresponding files, and additionally a
    verbose argument.
  * Hexadecimal string colour specifications are now accepted in
    short form, so, for example, we can use "#123", which is
    equivalent to "#112233".
    Thanks to MikeFC for the original idea and Ella Kaye, Malcolm
    Barrett, George Stagg, and Hanne Oberman for the patch.
  * Plain-text help shows \var markup by angle brackets.
  * The new experimental primitive function declare() is intended to
    eventually allow information about R code to be communicated to
    the interpreter, compiler, and code analysis tools. The syntax
    for declarations is still being developed.
  * Functions psmirnov(), qsmirnov() and rsmirnov() in package stats
    have had argument two.sided renamed to alternative, to take into
    account that the permutation distributions of the one-sided
    statistics can be different in the case of ties.  Consequence of
    PR#18582.
  * sort() is now an implicit S4 generic in methods.
  * Formatting and printing, format(z), print(z), of complex vectors
    z no longer zap relatively small real or imaginary parts to zero,
    fixing PR#16752.  This is an API change, as it was documented
    previously to round real and imaginary parts together on purpose,
    producing nicer looking output.  As mentioned, e.g. in the PR,
    this change is compatible with many other "R-like" programming
    environments.
    We have simplified the internal code and now basically format the
    real and imaginary parts independently of each other.
  * New experimental functions Tailcall() and Exec() to support
    writing stack-space-efficient recursive functions.
  * Where characters are attempted to be plotted by pdf(),
    postscript() and xfig() which are not in the selected 8-bit
    character set (most often Latin-1) and the R session is using a
    UTF-8 locale, the warning messages will show the UTF-8 character
    rather than its bytes and one dot will be substituted per
    character rather than per byte.  (Platforms whose iconv() does
    transliteration silently plot the transliteration.)
    In a UTF-8 locale some transliterations are now done with a
    warning (e.g., dashes and Unicode minus to hyphen, ligatures are
    expanded, permille (‰) is replaced by o/oo), although the OS may
    have got there first.  These are warnings as they will continue
    to be replaced by dots in earlier versions of R.
  * The matrix multiplication functions crossprod() and tcrossprod()
    are now also primitive and S3 generic, as %*% had become in R
    4.3.0.
  * source() and example() have a new optional argument catch.aborts
    which allows continued evaluation of the R code after an error.
  * The non-Quartz tiff() devices allow additional types of
    compression if supported by the platform's libtiff library.
  * The list of base and recommended package names is now provided by
    tools::standard_package_names().
  * cairo_pdf() and cairo_ps() default to onefile = TRUE to closer
    match pdf() and postscript().
  * New option catch.script.errors provides a documented way to catch
    errors and then continue in non-interactive use.
  * L %||% R newly in base is an expressive idiom for the phrases
    if(!is.null(L)) L else R or if(is.null(L)) R else L.
  * The return value from warnings() now always inherits from
    "warnings" as documented, now also in the case of no warnings
    where it previously returned NULL.
  * as.complex("1i") now returns 0 + 1i instead of NA with a warning.
  * z &lt;- c(NA, 1i) now keeps the imaginary part Im(z[1]) == 0, no
    longer coercing to NA_complex_.  Similarly, cumsum(z) correctly
    sums real and imaginary parts separately, i.e., without
    "crosstalk" in case of NAs.
  * On Alpine Linux iconv() now maps "latin2", "latin-2", "latin9"
    and "latin-9" to encoding names the OS knows about
    (case-insensitively).
  * iconv(sub = "Unicode") now always zero-pads to four (hex) digits,
    rather than to 4 or 8.  (This seems to have become the convention
    once Unicode restricted the number of Unicode points to 2^21 - 1
    and so will never need more than 6 digits.)
  * NCOL(NULL) now returns 0 instead of 1, for consistency with
    cbind().
  * The information for the Euro glyph missing from the Adobe .afm
    files for the Courier, Helvetica and Times families has been
    copied from their URW equivalents - this will improve vertical
    centring in the pdf() and postscript() devices.
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.12.0.  The changes are almost entirely cosmetic.
  * The included LAPACK sources have been updated to version 3.12.0
    and some further double-complex routines added.
  * There are new font families for the 2014--5 URW 2.0 fonts (see
    ?pdf) which are included in recent versions of Ghostscript.
    These have font widths for most Greek glyphs and a few others
    which were missing from the original versions (whose font
    families remain available for reproducibility, although
    Ghostscript-based viewers will render using the 2.0 versions).
  * Improve the large-n efficiency of as.matrix(&lt;dist&gt;), thanks an R
    contributors effort, notably by Tim Taylor and Heather Turner,
    see PR#18660.
  * The default and numeric methods of all.equal() get a check.class
    option.
  * zapsmall() gets new optional arguments, function mFUN and min.d,
    for extra flexibility; fulfills a wish in PR#18199.  Also, it is
    now an implicit S4 generic in package methods.
  * The Rd filter for aspell() gains an ignore argument.
  * New generic function sort_by(), primarily useful for the
    data.frame method which can be used to sort rows of a data frame
    by one or more columns.
  * The icence headers for the RPC code in src/extra/xdr have been
    updated to use the GPL-compatible licence published by Oracle
    America in 2010.
  * New function pkg2HTML() in tools to create single-page HTML
    reference manuals for R packages.
  * The byte code evaluator now uses less C stack space for recursive
    calls to byte-compiled functions. It also makes more of an effort
    to avoid allocations for scalar return values.
  * New completion option backtick (disabled by default) allows
    non-syntactic completions to be wrapped in backquotes. This is
    currently only useful for Jupyter notebooks via the IRkernel
    package, and may cause problems for other backends.
  INSTALLATION:
  * The parser has been updated to work with bison 3.8.2, which is
    now used for the pre-generated parsers in gram.c, file.c, and
    gramRd.c. A few parser error messages have changed, which may
    affect code that relies on exact messages.
  INSTALLATION on a UNIX-ALIKE:
  * System valgrind headers are now required to use configure option
  - -with-valgrind-instrumentation with value 1 or 2.
  * configure will warn if it encounters a 32-bit build, as that is
    nowadays almost untested.
  * Environment variable R_SYSTEM_ABI is no longer used and so no
    longer recorded in etc/Renviron (it was not on Windows and was
    only ever used when preparing package tools).
  * If the libdeflate library and headers are available, libdeflate
    rather than libz is used to (de)compress R objects in lazy-load
    databases.  Typically tasks spend up to 5% of their time on such
    operations, although creating lazy-data databases is one of the
    exceptions.
    This can be suppressed if the library is available by the
    configure option --without-libdeflate-compression.
  * configure option --enable-lto=check has not worked reliably since
    2019 and has been removed.
  * The minimum autoconf requirement for a maintainer build has been
    increased to autoconf 2.71.
    It is intended to increase this to 2.72 for R 4.5.0: the
    distributed configure file was generated using 2.72.
  * The minimum version requirement for an external LAPACK has been
    reduced to 3.9.0.
  * No default C++ compiler is set if no C++17 compiler is detected:
    there is no longer an automatic fallback to C++14 or C++11.
    Compilers from the last five years should have sufficient
    support: for others macros CXX and CXXSTD can be set in file
    config.site to provide a fallback if needed.
    The Objective-C++ compiler now by default uses the standard
    selected by R for C++ (currently C++17) rather than the default
    standard for the C++ compiler (which on macOS is still C++98).
  INSTALLATION on macOS:
  * A new configure option --with-newAccelerate makes use of Apple's
    'new' BLAS / LAPACK interfaces in their Accelerate framework.
    Those interfaces are only available in macOS 13.3 or later, and
    building requires SDK 13.3 or later (from the Command Line Tools
    or Xcode 14.3 or later).
    By default the option uses new Accelerate for BLAS calls: to also
    use it for LAPACK use option --with-newAccelerate=lapack.  The
    later interfaces provide LAPACK 3.9.1 rather than 3.2.1: 3.9.1 is
    from 2021-04 and does not include the improved algorithms
    introduced in LAPACK 3.10.0 (including for BLAS calls).
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools44, an update of the Rtools43 toolchain.  It is
    based on GCC 13 and newer versions of MinGW-W64, binutils and
    libraries (targeting 64-bit Intel CPUs).  R-devel can no longer
    be built using Rtools43 without changes.
  * Rtools44 has experimental support for 64-bit ARM (aarch64) CPUs
    _via_ the LLVM 17 toolchain using lld, clang/flang-new and
    libc++.
  UTILITIES:
  * R CMD check notes when S4-style exports are used without
    declaring a strong dependence on package methods.
  * tools::checkRd() (used by R CMD check) detects more problems with
    \Sexpr-based dynamic content, including bad nesting of \Sexprs
    and invalid arguments.
  * tools::checkRd() now reports Rd titles and section names ending
    in a period; this is ignored by R CMD check unless environment
    variable _R_CHECK_RD_CHECKRD_MINLEVEL_ is set to -5 or smaller.
  * R CMD check now notes Rd files without an \alias, as long
    documented in 'Writing R Extensions' §1.3.1.  The check for a
    missing \description has been moved from tools::checkRd() to
    tools::checkRdContents().
  * R CMD check now visits inst/NEWS.Rd and OS-specific man
    subdirectories when checking Rd files.
  * tools::checkDocFiles() and tools::checkRdContents() now also
    check internal Rd files by default, but "specially" (ignoring
    missing documentation of arguments).
  * R CMD Rdiff gets option --useEx.
  * R CMD check now warns on non-portable uses of Fortran KIND such
    as INTEGER(KIND=4) and REAL(KIND=8).
    To see the failing lines set environment variable
    _R_CHECK_FORTRAN_KIND_DETAILS_ to a true value.
  * When checking Rd files, R CMD check now notes some of the "lost
    braces" that tools::checkRd() finds.  Typical problems are Rd
    macros missing the initial backslash (e.g., code{...}), in-text
    set notation (e.g., {1, 2}, where the braces need escaping), and
    \itemize lists with \describe-style entries of the form
    \item{label}{description}.
  * R CMD INSTALL (and hence check) will compile C++ code with
  - DR_NO_REMAP if environment variable _R_CXX_USE_NO_REMAP_ is set
    to a true value.  It is planned that this will in future become
    the default for compiling C++.
  * The new built-in Rd macro \dontdiff{} can be used to mark example
    code whose output should be ignored when comparing check output
    to reference output (tests/Examples/&lt;pkg&gt;-Ex.Rout.save).  The
    \dontdiff tag, like \donttest, is _not_ shown on the rendered
    help page, so provides a clean alternative to ##
    IGNORE_RDIFF_(BEGIN|END) comments.
  * R CMD build when there is no NAMESPACE, now uses the recommended
    exportPattern("^[^.]"), instead of exporting everything.
  * R CMD check now warns about non-ASCII characters in the NAMESPACE
    file (in addition to R files). Such packages are not portable and
    may fail to install on some platforms.
  C-LEVEL FACILITIES:
  * Headers R_ext/Applic.h and R-ext/Linpack.h used to include
    R_ext/BLAS.h although this was undocumented and unneeded by their
    documented entry points.  They no longer do so.
  * New function R_missing(), factored out from do_missing(), used to
    fix PR#18579.
  * SEXP type S4SXP has been renamed to OBJSXP to support
    experimenting with alternative object systems.  The S4SXP value
    can still be used in C code but is now deprecated.  Based on
    contributions from the R Consortium's Object-Oriented Programming
    Working Group.
  * New function pow1p(x,y) for accurate (1+x)^y.
  * mkCharLenCE was incorrectly documented to take a size_t length
    but was implemented with int (and character strings in R are
    limited to 2^31 - 1 bytes).
  DEPRECATED AND DEFUNCT:
  * data() no longer handles zipped data from long-defunct (since R
    2.13.0) --use-zip-data installations.
  * The legacy graphics devices pictex() and xfig() are now
    deprecated.  They do not support recent graphics enhancements and
    their font handling is rudimentary. The intention is to retain
    them for historical interest as long as they remain somewhat
    functional.
  * Support for encoding = "MacRoman" has been removed from the pdf()
    and postscript() devices - this was a legacy encoding supporting
    classic macOS up to 2001 and no longer has universal libiconv
    support.
  * is.R() is deprecated as no other S dialect is known to be in use
    (and this could only identify historical dialects, not future
    ones).
    Further information on calls can be obtained by setting the
    environment variable _R_DEPRECATED_IS_R_ to error which turns the
    deprecation warning into an error and so by default gives a
    traceback.  (This is done by R CMD check --as-cran.)
  * UseMethod() no longer forwards local variables assigned in the
    generic function into method call environments before evaluating
    the method body. This makes method calls behave more like
    standard function calls and makes method code easier to analyze
    correctly.
  * The twelve as.data.frame.&lt;class&gt;() methods which were deprecated
    only via _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ and in R CMD
    check --as-cran are formally deprecated now in favour of calling
    as.data.frame() or as.data.frame.vector().  The deprecation
    "check" now works also when as.data.frame() is S4 generic thanks
    to Ivan Krylov.
  * The default method for the directional comparison operators &lt;, &gt;,
    &lt;=, and &gt;= now signals an error when one of the operands is a
    language object, i.e. a symbol or a call.
  * For terms.formula(), deprecate abb and neg.out arguments
    _formally_ in addition to just documenting it.
  BUG FIXES:
  * The methods package is more robust to not being attached to the
    search path.  More work needs to be done.
  * pairwise.t.test() misbehaved when subgroups had 0 DF for
    variance, even with pool.sd = TRUE.  (PR#18594 by Jack Berry).
  * Probability distribution functions [dpq]&lt;distrib&gt;(x, *), but also
    bessel[IKJY](x, .) now consistently preserve attributes(x) when
    length(x) == 0, e.g., for a 2 x 0 matrix, thanks to Karolis
    Koncevičius' report PR#18509.
  * Group "Summary" computations such as sum(1:3, 4, na.rm = 5, NA,
    7, na.rm = LL) now give an error instead of either 17 or NN for
    LL true or false, as proposed by Ivan Krylov on the R-devel
    mailing list.  (This also means it is now an error to specify
    na.rm more than once.)
  * as.complex(x) now returns complex(real = x, imaginary = 0) for
    _all_ numerical and logical x, notably also for NA or
    NA_integer_.
  * Directories are now omitted by file.copy(, recursive = FALSE) and
    in file.append() (PR#17337).
  * gsub() and sub() are now more robust to integer overflow when
    reporting errors caused by too large input strings (PR#18346).
  * Top-level handlers are now more robust to attempts to remove a
    handler whilst handlers are running (PR#18508).
  * The handling of Alt+F4 in dialogs created on Windows using
    GraphApp has been fixed (PR#13870).
  * density() more consistently computes grid values for the
    FFT-based convolution, following Robert Schlicht's analysis and
    proposal in PR#18337, correcting density values typically by a
    factor of about 0.999.  Argument old.coords = TRUE provides back
    compatibility.
  * palette.colors() gains a name argument that defaults to FALSE
    controlling whether the vector of colours that is returned has
    names (where possible).  PR#18529.
  * tools::xgettext() no longer extracts the (non-translatable) class
    names from warningCondition and errorCondition calls.
  * S3method(&lt;gen&gt;, &lt;class&gt;, &lt;func&gt;) in the NAMESPACE file now works
    (again) when &lt;func&gt; is visible from the namespace, e.g.,
    imported, or in base.
  * getParseData(f) now also works for a function defined in the
    first of several &lt;pkg&gt;/R/*.R source files, thanks to Kirill
    Müller's report and Duncan Murdoch's patch in PR#16756.
  * Rd \Sexpr macros with nested #ifdef conditionals were not
    processed.
  * A non-blocking connection with non-default encoding (such as a
    socket) now correctly returns from readLines() after new data has
    arrived also when its EOF had been reached previously.  Thanks to
    Peter Meilstrup's report on R-devel and Ivan Krylov's report and
    patch proposal in PR#18555.
  * tools::checkRdContents() failed to detect empty argument
    descriptions when they spanned multiple lines, including those
    generated by prompt().  These cases are now noted by R CMD check.
  * Plain-text help no longer outputs spurious colons in the
    arguments list (for multi-line \item labels in the Rd source).
  * kappa() and rcond() work correctly in more cases; kappa(., norm =
    "2") now warns that it computes the 1-norm with (default) exact =
    FALSE; prompted by Mikael Jagan's quite comprehensive PR#18543.
  * Rd skeletons generated by prompt() or promptData() now use a
    dummy title (so R CMD build works).  tools::checkRdContents() has
    been updated to detect such template leftovers, including from
    promptPackage().
  * When S4 method dispatch fails because no method was found, the
    error message now includes the signature argument names; thanks
    to Michael Chirico's proposal on the R-devel list.
  * withAutoprint({ .. }) now preserves srcrefs previously lost,
    thanks to Andrew Simmons' report plus fix in PR#18572.
  * transform.data.frame() no longer adjusts names; in particular,
    untransformed variables are kept as-is, including those with
    syntactically invalid names (PR#17890).
  * The keep.source option for Rd \Sexpr blocks is no longer ignored.
  * The formula methods for t.test() and wilcox.test() now catch when
    paired is passed, addressing PR#14359; use Pair(x1, x2) ~ 1 for a
    paired test.
  * The level reported in the browser prompt was often too large. It
    now shows the number of browser contexts on the stack.
  * For cbind() and rbind(), the optional deparse.level argument is
    now properly passed to methods, thanks to Mikael Jagan's PR#18579
    and comments there.
  * Some error and warning messages for large ('long vector')
    matrix(v, nr, nc) and dim(m) &lt;- d are now correct about sizes,
    using long long formatting, fixing PR#18612 (and more) reported
    by Mikael Jagan.
  * readChar(useBytes = TRUE) now terminates strings even when the
    underlying connection uses extra spaces in the input buffer.
    This fixes problems with extra garbage seen with gzip
    connections, PR#18605.
  * Named capture in PCRE regular expressions now works also with
    more than 127 named groups (PR#18588).
  * Datetime functions are now robust against long jumps when dealing
    with internal time zone changes.  This avoids confusing warnings
    about an invalid time zone, previously triggered by turning
    warnings into errors or handling them via tryCatch (PR#17966,
    PR#17780).
  * Datetime functions now restore even an empty TZ environment
    variable after internal time zone changes (PR#17724).  This makes
    results of datetime functions with this (typically unintentional)
    setting more predictable.
  * drop.terms(*) now drops response as by default, keep.response =
    FALSE, fixing PR#18564 thanks to Mikael Jagan.
  * dummy.coef(.) now also works for lm()-models with character
    categorical predictor variables rather than factor ones, fixing
    PR#18635 reported by Jinsong Zhao.
  * formals(f) &lt;- formals(f) now also works for a function w/o
    arguments and atomic _constant_ body(f).
  * Correct as.function(&lt;invalid list&gt;, .)'s error message.
  * removeSource() is yet more thorough in finding and removing
    "srcref" and the other source references from parsed R language
    chunks, fixing PR#18638 thanks to Andrew Simmons.
  * dgeom() is more accurate now, notably when its result is very
    small, fixing PR#18642 thanks to the proposal of Morten Welinder,
    also improving other instances where C level binom_raw(x, n, ..)
    has x == 0 or x== n.
  * warning() with options(warn = 1) has improved output for
    multi-line messages.
  * axis.Date() and axis.POSIXct() now respect the par("lab") setting
    for the number of pretty() intervals.
  * Comparisons for language objects (which are based on deparsing)
    are now more careful about using accurate deparsed results
    (PR#18676).
  * Plain-text help (Rd2txt) now correctly preserves blank lines
    following single-line \dontrun code.
  * &lt;POSIXlt&gt;[*] no longer sets wrong "balanced" attribute, fixing
    PR#18681 thanks to Mikael Jagan.
  * str(&lt;classed-call&gt;) now deparses the call as expected, fixing
    PR#18684, reported by Dave Slager.
  * In Rd examples, code following the closing brace of a \dontrun,
    \dontshow or \donttest tag on the same line is no longer skipped
    when R CMD check runs the examples.
  * as.data.frame(matrix(*, ncol=0)) now gets valid names() and
    colnames(); reported by Davis Vaughan on the R-devel list.
  * Internal Mathlib function stirlerr(n) is now almost fully
    (52-bit) accurate for all n &gt;= ~5.9 and more accurate also in the
    range 1 -- 5.9.  This entails small ("after 12th decimal")
    changes in density functions, e.g., dgamma() in _some_ regions of
    their support.  The fix was partly prompted by Morten Welinder's
    PR#18640.
  * Numbers like 9876543.2 are now considered non-integer by Mathlib
    internal R_nonint(), amending original fix of PR#15734.
  * Rd comment lines no longer cause broken paragraphs in the
    rendered PDF and plain-text help. In code blocks, pure comment
    lines (starting with %) no longer produce an empty line.
  * xtabs(Freq ~ .) now consistently defaults to na.action = na.pass,
    using na.rm = FALSE (added as an argument) when summing over Freq
    (PR#17770).
  * tools::testInstalledPackage() is no longer silent about failures
    from running examples or tests and its return code no longer
    ignores failures from checking vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1718366400">- CHANGES IN R 4.4.1:
  C-LEVEL FACILITIES:
  * Functions R_atof and R_strtod declared in header R_ext/Utils.h
    are now documented in 'Writing R Extensions' and so formally part
    of the API.
  * The non-API entry points Rf_setSVector, Rf_StringFalse,
    Rf_StringTrue and Rf_isBlankString have been added to those
    reported by R CMD check.
  * The new function Rf_allocLang is now available. This provides an
    alternative to the idiom of calling Rf_allocList followed by
    SET_TYPEOF.
  UTILITIES:
  * R CMD check now reports as warnings what gfortran calls 'Fortran
    2018 deleted features', all of which have long been marked as
    'obsolescent' and some of which were deleted in Fortran 2008 or
    earlier.  Fortran compilers are no longer required to support
    these.
  BUG FIXES:
  * as.numeric(), scan(), type.convert() and other places which use
    the internal C function R_strtod now require a _non-empty_ digit
    sequence in a decimal or binary exponent.  This aligns with the
    C/POSIX standard for strtod and with ?NumericConstants.
  * as.data.frame(m, make.names=NA) now works correctly for a matrix
    m with NA's in row names.
  * The error message from &lt;POSIXlt&gt;[["hour"]] and similar now
    mentions *[[, "hour"]], as wished for in PR#17409 and proposed by
    Michael Chirico.
  * qbinom() and potentially qpois(), qnbinom(), no longer sometimes
    fail accurate inversion (of pbinom(), etc), thanks to Christopher
    Chang's report and patch in PR#18711.
  * The internal help server on Windows can again serve requests sent
    in quick succession, fixing a regression in R 4.4.0.
  * debugcall(&lt;S3Generic&gt;()) now also works when a corresponding
    S4-generic version is in the methods cache (PR#18143).
  * Package tools' toTitleCase(ch0) now returns character(0) when ch0
    is of zero length; fixing PR#18724, reported by David Hugh Jones.
  * R CMD check is no longer broken (without a check result and no
    explanation in 00check.log) for a package which declares an
    invalid VignetteBuilder in DESCRIPTION but has no vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1730376000">- CHANGES IN R 4.4.2:
  C-LEVEL FACILITIES:
  * The S-compatibility macros F77_COM and F77_COMDECL defined in
    header R_ext/RS.h are deprecated and will be removed shortly.  We
    could find no record of their use.
  BUG FIXES:
  * Mathlib function lgammacor(x) no longer warns about underflow to
    zero for large x.
  * Text widths and heights were incorrectly reported by the Quartz
    device if the drawing context didn't exist yet (typically when
    drawing off-screen to a window that is yet to appear, see
    PR#18591).
  * The Quartz device could segfault in cases where paths with spaces
    are used in the new glyph drawing API.  Thanks to Tomek
    Gieorgijewski (PR#18758).
  * On macOS in R CRAN builds, it is again possible to read
    little-endian UTF-16 text with a BOM from a connection using
    encoding="UTF-16".  Users building R from source should avoid
    using the system libiconv in macOS 14.1 and later.
  * methods' internal .requirePackage() now re-enables primitive
    method dispatch when needed; thanks to Ivan Krylov for
    demystifying CRAN package check failures on the R-devel mailing
    list.</changelog>
</package>
<package pkgid="da44d905a85d67c11479a094feaef2a831d959702ba406cf2cfb1310cd1147e9e9aa39eaef18efb7517fcce602e37ae95ab861624de116114b24e42ebda93ce6" name="R-datasets" arch="x86_64">
  <version epoch="0" ver="4.4.2" rel="51.0.2.2.sr20241103"/>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1620302400">- To get in sync with d:l:R:autoCRAN the Matrix package's split
  in -devel was reversed.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339200">- improved spec file according to comments of dimstar in
  https://build.opensuse.org/request/show/892685</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339201">- CHANGES IN R 4.1.0:
  FUTURE DIRECTIONS:
  * It is planned that the 4.1.x series will be the last to support
    32-bit Windows, with production of binary packages for that
    series continuing until early 2023.
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Data set esoph in package datasets now provides the correct
    numbers of controls; previously it had the numbers of cases added
    to these.  (Reported by Alexander Fowler in PR#17964.)
  NEW FEATURES:
  * www.omegahat.net is no longer one of the repositories known by
    default to setRepositories().  (Nowadays it only provides source
    packages and is often unavailable.)
  * Function package_dependencies() (in package tools) can now use
    different dependency types for direct and recursive dependencies.
  * The checking of the size of tarball in R CMD check --as-cran
    &lt;pkg&gt; may be tweaked via the new environment variable
    _R_CHECK_CRAN_INCOMING_TARBALL_THRESHOLD_, as suggested in
    PR#17777 by Jan Gorecki.
  * Using c() to combine a factor with other factors now gives a
    factor, an ordered factor when combining ordered factors with
    identical levels.
  * apply() gains a simplify argument to allow disabling of
    simplification of results.
  * The format() method for class "ftable" gets a new option justify.
    (Suggested by Thomas Soeiro.)
  * New ...names() utility.  (Proposed by Neal Fultz in PR#17705.)
  * type.convert() now warns when its as.is argument is not
    specified, as the help file always said it _should_.  In that
    case, the default is changed to TRUE in line with its change in
    read.table() (related to stringsAsFactor) in R 4.0.0.
  * When printing list arrays, classed objects are now shown _via_
    their format() value if this is a short enough character string,
    or by giving the first elements of their class vector and their
    length.
  * capabilities() gets new entry "Rprof" which is TRUE when R has
    been configured with the equivalent of --enable-R-profiling (as
    it is by default).  (Related to Michael Orlitzky's report
    PR#17836.)
  * str(xS4) now also shows extraneous attributes of an S4 object
    xS4.
  * Rudimentary support for vi-style tags in rtags() and R CMD rtags
    has been added.  (Based on a patch from Neal Fultz in PR#17214.)
  * checkRdContents() is now exported from tools; it and also
    checkDocFiles() have a new option chkInternal allowing to check
    Rd files marked with keyword "internal" as well.  The latter can
    be activated for R CMD check via environment variable
    _R_CHECK_RD_INTERNAL_TOO_.
  * New functions numToBits() and numToInts() extend the raw
    conversion utilities to (double precision) numeric.
  * Functions URLencode() and URLdecode() in package utils now work
    on vectors of URIs.  (Based on patch from Bob Rudis submitted
    with PR#17873.)
  * path.expand() can expand ~user on most Unix-alikes even when
    readline is not in use.  It tries harder to expand ~, for example
    should environment variable HOME be unset.
  * For HTML help (both dynamic and static), Rd file links to help
    pages in external packages are now treated as references to
    topics rather than file names, and fall back to a file link only
    if the topic is not found in the target package. The earlier rule
    which prioritized file names over topics can be restored by
    setting the environment variable _R_HELP_LINKS_TO_TOPICS_ to a
    false value.
  * c() now removes NULL arguments before dispatching to methods,
    thus simplifying the implementation of c() methods, _but_ for
    back compatibility keeps NULL when it is the first argument.
    (From a report and patch proposal by Lionel Henry in PR#17900.)
  * Vectorize()'s result function's environment no longer keeps
    unneeded objects.
  * Function ...elt() now propagates visibility consistently with
    ..n.  (Thanks to Lionel Henry's PR#17905.)
  * capture.output() no longer uses non-standard evaluation to
    evaluate its arguments.  This makes evaluation of functions like
    parent.frame() more consistent.  (Thanks to Lionel Henry's
    PR#17907.)
  * packBits(bits, type="double") now works as inverse of
    numToBits().  (Thanks to Bill Dunlap's proposal in PR#17914.)
  * curlGetHeaders() has two new arguments, timeout to specify the
    timeout for that call (overriding getOption("timeout")) and TLS
    to specify the minimum TLS protocol version to be used for
    https:// URIs (_inter alia_ providing a means to check for sites
    using deprecated TLS versions 1.0 and 1.1).
  * For nls(), an optional constant scaleOffset may be added to the
    denominator of the relative offset convergence test for cases
    where the fit of a model is expected to be exact, thanks to a
    proposal by John Nash.  nls(*, trace=TRUE) now also shows the
    convergence criterion.
  * Numeric differentiation _via_ numericDeriv() gets new optional
    arguments eps and central, the latter for taking central divided
    differences.  The latter can be activated for nls() via
    nls.control(nDcentral = TRUE).
  * nls() now passes the trace and control arguments to getInitial(),
    notably for all self-starting models, so these can also be fit in
    zero-noise situations via a scaleOffset.  For this reason, the
    initial function of a selfStart model must now have ... in its
    argument list.
  * bquote(splice = TRUE) can now splice expression vectors with
    attributes: this makes it possible to splice the result of
    parse(keep.source = TRUE).  (Report and patch provided by Lionel
    Henry in PR#17869.)
  * textConnection() gets an optional name argument.
  * get(), exists(), and get0() now signal an error if the first
    argument has length greater than 1.  Previously additional
    elements were silently ignored.  (Suggested by Antoine Fabri on
    R-devel.)
  * R now provides a shorthand notation for creating functions, e.g.
    \(x) x + 1 is parsed as function(x) x + 1.
  * R now provides a simple native forward pipe syntax |&gt;.  The
    simple form of the forward pipe inserts the left-hand side as the
    first argument in the right-hand side call.  The pipe
    implementation as a syntax transformation was motivated by
    suggestions from Jim Hester and Lionel Henry.
  * all.equal(f, g) for functions now by default also compares their
    environment(.)s, notably via new all.equal method for class
    function.  Comparison of nls() fits, e.g., may now need
    all.equal(m1, m2, check.environment = FALSE).
  * .libPaths() gets a new option include.site, allowing to _not_
    include the site library.  (Thanks to Dario Strbenac's suggestion
    and Gabe Becker's PR#18016.)
  * Lithuanian translations are now available.  (Thanks to Rimantas
    Zakauskas.)
  * names() now works for DOTSXP objects.  On the other hand, in
    R-lang, the R language manual, we now warn against relying on the
    structure or even existence of such dot-dot-dot objects.
  * all.equal() no longer gives an error on DOTSXP objects.
  * capabilities("cairo") now applies only to the file-based devices
    as it is now possible (if very unusual) to build R with Cairo
    support for those but not for X11().
  * There is optional support for tracing the progress of
    loadNamespace() - see its help.
  * (Not Windows.)  l10n_info() reports an additional element, the
    name of the encoding as reported by the OS (which may differ from
    the encoding part (if any) of the result from
    Sys.getlocale("LC_CTYPE").
  * New function gregexec() which generalizes regexec() to find _all_
    disjoint matches and well as all substrings corresponding to
    parenthesized subexpressions of the given regular expression.
    (Contributed by Brodie Gaslam.)
  * New function charClass() in package utils to query the
    wide-character classification functions in use (such as
    iswprint).
  * The names of quantile()'s result no longer depend on the global
    getOption("digits"), but quantile() gets a new optional argument
    digits = 7 instead.
  * grep(), sub(), regexp and variants work considerably faster for
    long factors with few levels.  (Thanks to Michael Chirico's
    PR#18063.)
  * Provide grouping of x11() graphics windows within a window
    manager such as Gnome or Unity; thanks to a patch by Ivan Krylov
    posted to R-devel.
  * The split() method for class data.frame now allows the f argument
    to be specified as a formula.
  * sprintf now warns on arguments unused by the format string.
  * New palettes "Rocket" and "Mako" for hcl.colors() (approximating
    palettes of the same name from the 'viridisLite' package).
    Contributed by Achim Zeileis.
  * The base environment and its namespace are now locked (so one can
    no longer add bindings to these or remove from these).
  * Rterm handling of multi-byte characters has been improved,
    allowing use of such characters when supported by the current
    locale.
  * Rterm now accepts ALT+ +xxxxxxxx sequences to enter Unicode
    characters as hex digits.
  * Environment variable LC_ALL on Windows now takes precedence over
    LC_CTYPE and variables for other supported categories, matching
    the POSIX behaviour.
  * duplicated() and anyDuplicated() are now optimized for integer
    and real vectors that are known to be sorted via the ALTREP
    framework. Contributed by Gabriel Becker via PR#17993.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 14
    and so packages that provide graphics devices should be
    reinstalled.
  * Graphics devices should now specify deviceVersion to indicate
    what version of the graphics engine they support.
  * Graphics devices can now specify deviceClip.  If TRUE, the
    graphics engine will never perform any clipping of output itself.
    The clipping that the graphics engine does perform (for both
    canClip = TRUE and canClip = FALSE) has been improved to avoid
    producing unnecessary artifacts in clipped output.
  * The grid package now allows gpar(fill) to be a linearGradient(),
    a radialGradient(), or a pattern().  The viewport(clip) can now
    also be a grob, which defines a clipping path, and there is a new
    viewport(mask) that can also be a grob, which defines a mask.
    These new features are only supported so far on the Cairo-based
    graphics devices and on the pdf() device.
  * (Not Windows.)  A warning is given when a Cairo-based type is
    specified for a png(), jpeg(), tiff() or bmp() device but Cairo
    is unsupported (so type = "Xlib" is tried instead).
  * grSoftVersion() now reports the versions of FreeType and
    FontConfig if they are used directly (not _via_ Pango), as is
    most commonly done on macOS.
  C-LEVEL FACILITIES:
  * The _standalone_ libRmath math library and R's C API now provide
    log1pexp() again as documented, and gain log1mexp().
  INSTALLATION on a UNIX-ALIKE:
  * configure checks for a program pkgconf if program pkg-config is
    not found.  These are now only looked for on the path (like
    almost all other programs) so if needed specify a full path to
    the command in PKG_CONFIG, for example in file config.site.
  * C99 function iswblank is required - it was last seen missing ca
    2003 so the workaround has been removed.
  * There are new configure options --with-internal-iswxxxxx,
  - -with-internal-towlower and --with-internal-wcwidth which allows
    the system functions for wide-character classification,
    case-switching and width (wcwidth and wcswidth) to be replaced by
    internal ones.  The first has long been used on macOS, AIX (and
    Windows) but this enables it to be unselected there and selected
    for other platforms (it is the new default on Solaris).  The
    second is new in this version of R and is selected by default on
    macOS and Solaris.  The third has long been the default and
    remains so as it contains customizations for East Asian
    languages.
    System versions of these functions are often minimally
    implemented (sometimes only for ASCII characters) and may not
    cover the full range of Unicode points: for example Solaris (and
    Windows) only cover the Basic Multilingual Plane.
  * Cairo installations without X11 are more likely to be detected by
    configure, when the file-based Cairo graphics devices will be
    available but not X11(type = "cairo").
  * There is a new configure option --with-static-cairo which is the
    default on macOS.  This should be used when only static cairo
    (and where relevant, Pango) libraries are available.
  * Cairo-based graphics devices on platforms without Pango but with
    FreeType/FontConfig will make use of the latter for font
    selection.
  LINK-TIME OPTIMIZATION on a UNIX-ALIKE:
  * Configuring with flag --enable-lto=R now also uses LTO when
    installing the recommended packages.
  * R CMD INSTALL and R CMD SHLIB have a new flag --use-LTO to use
    LTO when compiling code, for use with R configured with
  - -enable-lto=R.  For R configured with --enable-lto, they have
    the new flag --no-use-LTO.
    Packages can opt in or out of LTO compilation _via_ a UseLTO
    field in the DESCRIPTION file.  (As usual this can be overridden
    by the command-line flags.)
  BUILDING R on Windows:
  * for GCC &gt;= 8, FC_LEN_T is defined in config.h and hence character
    lengths are passed from C to Fortran in _inter alia_ BLAS and
    LAPACK calls.
  * There is a new text file src/gnuwin32/README.compilation, which
    outlines how C/Fortran code compilation is organized and
    documents new features:
  * R can be built with Link-Time Optimization with a suitable
    compiler - doing so with GCC 9.2 showed several
    inconsistencies which have been corrected.
  * There is support for cross-compiling the C and Fortran code
    in R and standard packages on suitable (Linux) platforms.
    This is mainly intended to allow developers to test later
    versions of compilers - for example using GCC 9.2 or 10.x has
    detected issues that GCC 8.3 in Rtools40 does not.
  * There is experimental support for cross-building R packages
    with C, C++ and/or Fortran code.
  * The R installer can now be optionally built to support a single
    architecture (only 64-bit or only 32-bit).
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++14 where
    available (which it is on all currently checked platforms): if
    not (as before) C++11 is used if available otherwise C++ is not
    supported.
    Packages which specify C++11 will still be installed using C++11.
    C++14 compilers may give deprecation warnings, most often for
    std::random_shuffle (deprecated in C++14 and removed in C++17).
    Either specify C++11 (see 'Writing R Extensions') or modernize
    the code and if needed specify C++14.  The latter has been
    supported since R 3.4.0 so the package's DESCRIPTION would need
    to include something like
    Depends: R (&gt;= 3.4)
  PACKAGE INSTALLATION on Windows:
  * R CMD INSTALL and R CMD SHLIB make use of their flag --use-LTO
    when the LTO_OPT make macro is set in file etc/${R_ARCH}/Makeconf
    or in a personal/site Makevars file.  (For details see 'Writing R
    Extensions' SS4.5.)
    This provides a valuable check on code consistency.  It does work
    with GCC 8.3 as in Rtools40, but that does not detect everything
    the CRAN checks with current GCC do.
  PACKAGE INSTALLATION on macOS:
  * The default personal library directory on builds with
  - -enable-aqua (including CRAN builds) now differs by CPU type,
    one of
    ~/Library/R/x86_64/x.y/library
    ~/Library/R/arm64/x.y/library
    This uses the CPU type R (and hence the packages) were built for,
    so when a x86_64 build of R is run under Rosetta emulation on an
    arm64 Mac, the first is used.
  UTILITIES:
  * R CMD check can now scan package functions for bogus return
    statements, which were possibly intended as return() calls (wish
    of PR#17180, patch by Sebastian Meyer). This check can be
    activated via the new environment variable
    _R_CHECK_BOGUS_RETURN_, true for --as-cran.
  * R CMD build omits tarballs and binaries of previous builds from
    the top-level package directory.  (PR#17828, patch by Sebastian
    Meyer.)
  * R CMD check now runs sanity checks on the use of LazyData, for
    example that a data directory is present and that
    LazyDataCompression is not specified without LazyData and has a
    documented value.  For packages with large LazyData databases
    without specifying LazyDataCompression, there is a reference to
    the code given in 'Writing R Extensions' SS1.1.6 to test the
    choice of compression (as in all the CRAN packages tested a
    non-default method was preferred).
  * R CMD build removes LazyData and LazyDataCompression fields from
    the DESCRIPTION file of packages without a data directory.
  ENCODING-RELATED CHANGES:
  * The parser now treats \Unnnnnnnn escapes larger than the upper
    limit for Unicode points (\U10FFFF) as an error as they cannot be
    represented by valid UTF-8.
    Where such escapes are used for outputting non-printable
    (including unassigned) characters, 6 hex digits are used (rather
    than 8 with leading zeros).  For clarity, braces are used, for
    example \U{0effff}.
  * The parser now looks for non-ASCII spaces on Solaris (as
    previously on most other OSes).
  * There are warnings (including from the parser) on the use of
    unpaired surrogate Unicode points such as \uD834.  (These cannot
    be converted to valid UTF-8.)
  * Functions nchar(), tolower(), toupper() and chartr() and those
    using regular expressions have more support for inputs with a
    marked Latin-1 encoding.
  * The character-classification functions used (by default) to
    replace the system iswxxxxx functions on Windows, macOS and AIX
    have been updated to Unicode 13.0.0.
    The character-width tables have been updated to include new
    assignments in Unicode 13.0.0.
  * The code for evaluating default (extended) regular expressions
    now uses the same character-classification functions as the rest
    of R (previously they differed on Windows, macOS and AIX).
  * There is a build-time option to replace the system's
    wide-character wctrans C function by tables shipped with R: use
    configure option --with-internal-towlower or (on Windows)
  - DUSE_RI18N_CASE in CFLAGS when building R.  This may be needed
    to allow tolower() and toupper() to work with Unicode characters
    beyond the Basic Multilingual Plane where not supported by system
    functions (e.g. on Solaris where it is the new default).
  * R is more careful when truncating UTF-8 and other multi-byte
    strings that are too long to be printed, passed to the system or
    libraries or placed into an internal buffer.  Truncation will no
    longer produce incomplete multibyte characters.
  DEPRECATED AND DEFUNCT:
  * Function plclust() from the package stats and
    package.dependencies(), pkgDepends(), getDepList(),
    installFoundDepends(), and vignetteDepends() from package tools
    are defunct.
  * Defunct functions checkNEWS() and readNEWS() from package tools
    and CRAN.packages() from utils have been removed.
  * R CMD config CXXCPP is defunct (it was deprecated in R 3.6.2).
  * parallel::detectCores() drops support for Irix (retired in 2013).
  * The LINPACK argument to chol.default(), chol2inv(),
    solve.default() and svd() has been defunct since R 3.1.0.  It was
    silently ignored up to R 4.0.3 but now gives an error.
  * Subsetting/indexing, such as ddd[*] or ddd$x on a DOTSXP
    (dot-dot-dot) object ddd has been disabled; it worked by accident
    only and was undocumented.
  BUG FIXES:
  * Many more C-level allocations (mainly by malloc and strdup) are
    checked for success with suitable alternative actions.
  * Bug fix for replayPlot(); this was turning off graphics engine
    display list recording if a recorded plot was replayed in the
    same session.  The impact of the bug became visible if resize the
    device after replay OR if attempted another savePlot() after
    replay (empty display list means empty screen on resize or empty
    saved plot).
  * R CMD check etc now warn when a package exports non-existing S4
    classes or methods, also in case of no "methods" presence.
    (Reported by Alex Bertram; reproducible example and patch by
    Sebastian Meyer in PR#16662.)
  * boxplot() now also accepts calls for labels such as ylab, the
    same as plot().  (Reported by Marius Hofert.)
  * The help page for xtabs() now correctly states that addNA is
    setting na.action = na.pass among others.  (Reported as PR#17770
    by Thomas Soeiro.)
  * The R CMD check &lt;pkg&gt; gives a longer and more comprehensible
    message when DESCRIPTION misses dependencies, e.g., in Imports:.
    (Thanks to the contributors of PR#17179.)
  * update.default() now calls the generic update() on the formula to
    work correctly for models with extended formulas.  (As reported
    and suggested by Neal Fultz in PR#17865.)
  * The horizontal position of leaves in a dendrogram is now correct
    also with center = FALSE.  (PR#14938, patch from Sebastian
    Meyer.)
  * all.equal.POSIXt() no longer warns about and subsequently ignores
    inconsistent "tzone" attributes, but describes the difference in
    its return value (PR#17277).  This check can be disabled _via_
    the new argument check.tzone = FALSE as suggested by Sebastian
    Meyer.
  * as.POSIXct() now populates the "tzone" attribute from its tz
    argument when x is a logical vector consisting entirely of NA
    values.
  * x[[2^31]] &lt;- v now works.  (Thanks to the report and patch by
    Suharto Anggono in PR#17330.)
  * In log-scale graphics, axis() ticks and label positions are now
    computed more carefully and symmetrically in their range,
    typically providing _more_ ticks, fulfilling wishes in PR#17936.
    The change really corresponds to an improved axisTicks() (package
    grDevices), potentially influencing grid and lattice, for
    example.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now correct to at
    least five digits where it was catastrophically wrong,
    previously.
  * sum(df) and similar "Summary"- and "Math"-group member functions
    now work for data frames df with logical columns, notably also of
    zero rows.  (Reported to R-devel by Martin "b706".)
  * unsplit() had trouble with tibbles due to unsound use of rep(NA,
    len)-indexing, which should use NA_integer_ (Reported to R-devel
    by Mario Annau.)
  * pnorm(x, log.p = TRUE) underflows to -Inf slightly later.
  * show(&lt;hidden S4 generic&gt;) prints better and without quotes for
    non-hidden S4 generics.
  * read.table() and relatives treated an "NA" column name as missing
    when check.names = FALSE PR#18007.
  * Parsing strings containing UTF-16 surrogate pairs such as
    "\uD834\uDD1E" works better on some (uncommon) platforms.
    sprintf("%X", utf8ToInt("\uD834\uDD1E")) should now give "1D11E"
    on all platforms.
  * identical(x,y) is no longer true for differing DOTSXP objects,
    fixing PR#18032.
  * str() now works correctly for DOTSXP and related exotics, even
    when these are doomed.
    Additionally, it no longer fails for lists with a class and
    "irregular" method definitions such that e.g. lapply(*) will
    necessarily fail, as currently for different igraph objects.
  * Too long lines in environment files (e.g. Renviron) no longer
    crash R. This limit has been increased to 100,000 bytes.
    (PR#18001.)
  * There is a further workaround for FreeType giving incorrect
    italic font faces with cairo-based graphics devices on macOS.
  * add_datalist(*, force = TRUE) (from package tools) now actually
    updates an existing data/datalist file for new content.  (Thanks
    to a report and patch by Sebastian Meyer in PR#18048.)
  * cut.Date() and cut.POSIXt() could produce an empty last interval
    for breaks = "months" or breaks = "years".  (Reported as PR#18053
    by Christopher Carbone.)
  * Detection of the encoding of 'regular' macOS locales such as
    en_US (which is UTF-8) had been broken by a macOS change:
    fortunately these are now rarely used with en_US.UTF-8 being
    preferred.
  * sub() and gsub(pattern, repl, x, *) now keep attributes of x such
    as names() also when pattern is NA (PR#18079).
  * Time differences ("difftime" objects) get a replacement and a
    rep() method to keep "units" consistent.  (Thanks to a report and
    patch by Nicolas Bennett in PR#18066.)
  * The \RdOpts macro, setting defaults for \Sexpr options in an Rd
    file, had been ineffective since R 2.12.0: it now works again.
    (Thanks to a report and patch by Sebastian Meyer in PR#18073.)
  * mclapply and pvec no longer accidentally terminate parallel
    processes started before by mcparallel or related calls in
    package parallel (PR#18078).
  * grep and other functions for evaluating (extended) regular
    expressions handle in Unicode also strings not explicitly flagged
    UTF-8, but flagged native when running in UTF-8 locale.
  * Fixed a crash in fifo implementation on Windows (PR#18031).
  * Binary mode in fifo on Windows is now properly detected from
    argument open (PR#15600, PR#18031).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1622808000">- The line %{__install} -m 755 -d %{_infodir}
  no longer works in TW or Factory.
  But without that line it works everywhere. So this instruction
  was commented out of the spec file.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1628596800">- CHANGES IN R 4.1.1:
  NEW FEATURES:
  * require(pkg, quietly = TRUE) is quieter and in particular does
    not warn if the package is not found.
  DEPRECATED AND DEFUNCT:
  * Use of ftp:// URIs should be regarded as deprecated, with
    on-going support confined to method = "libcurl" and not routinely
    tested.  (Nowadays no major browser supports them.)
  * The non-default method = "internal" is deprecated for http:// and
    ftp:// URIs for both download.file and url.
  * On Windows, method = "wininet" is deprecated for http://,
    https:// and ftp:// URIs for both download.file and url.  (A
    warning is only given for ftp://.)
    For ftp:// URIs the default method is now "libcurl" if available
    (which it is on CRAN builds).
    method = "wininet" remains the default for http:// and https://
    URIs but if libcurl is available, using method = "libcurl" is
    preferred.
  INSTALLATION:
  * make check now works also without a LaTeX installation.  (Thanks
    to Sebastian Meyer's PR#18103.)
  BUG FIXES:
  * make check-devel works again in an R build configured with
  - -without-recommended-packages.
  * qnbinom(p, size, mu) for large size/mu is correct now in a range
    of cases (PR#18095); similarly for the (size, prob)
    parametrization of the negative binomial.  Also qpois() and
    qbinom() are better and or faster for extreme cases.  The
    underlying C code has been modularized and is common to all four
    cases of discrete distributions.
  * gap.axis is now part of the axis() arguments which are passed
    from bxp(), and hence boxplot().  (Thanks to Martin Smith's
    report and suggestions in PR#18109.)
  * .First and .Last can again be set from the site profile.
  * seq.int(from, to, *) and seq.default(..) now work better in large
    range cases where from-to is infinite where the two boundaries
    are finite.
  * all.equal(x,y) now returns TRUE correctly also when several
    entries of abs(x) and abs(y) are close to .Machine$double.xmax,
    the largest finite numeric.
  * model.frame() now clears the object bit when removing the class
    attribute of a value via na.action (PR#18100).
  * charClass() now works with multi-character strings on Windows
    (PR#18104, fixed by Bill Dunlap).
  * encodeString() on Solaris now works again in Latin-1 encoding on
    characters represented differently in UTF-8.  Support for
    surrogate pairs on Solaris has been improved.
  * file.show() on Windows now works with non-ASCII path names
    representable in the current native encoding (PR#18132).
  * Embedded R on Windows can now find R home directory via the
    registry even when installed only for the current user
    (PR#18135).
  * pretty(x) with finite x now returns finite values also in the
    case where the extreme x values are close in size to the maximal
    representable number .Machine$double.xmax.
    Also, it's been tweaked for very small ranges and when a boundary
    is close (or equal) to zero; e.g., pretty(c(0,1e-317)) no longer
    has negative numbers, currently still warning about a very small
    range, and pretty(2^-(1024 - 2^-1/(c(24,10)))) is more accurate.
  * The error message for not finding vignette files when weaving has
    correct file sizes now. (Thanks to Sebastian Meyer's PR#18154.)
  * dnbinom(20, &lt;large&gt;, 1) now correctly gives 0, and similar cases
    are more accurate with underflow precaution.  (Reported by Francisco Vera Alcivar in PR#18072.)</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635163200">- repaired https://bugzilla.suse.com/show_bug.cgi?id=1191380
  (rpmacros now go to rpmmacrodir)
- minor clean-ups in spec file</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635768000">- CHANGES IN R 4.1.2:
  C-LEVEL FACILITIES:
  * The workaround in headers R.h and Rmath.h (using namespace std;)
    for the Oracle Developer Studio compiler is no longer needed now
    C++11 is required so has been removed.  A couple more usages of
    log() (which should have been std::log()) with an int argument
    are reported on Solaris.
  * The undocumented limit of 4095 bytes on messages from the
    S-compatibility macros PROBLEM and MESSAGE is now documented and
    longer messages will be silently truncated rather than
    potentially causing segfaults.
  * If the R_NO_SEGV_HANDLER environment variable is non-empty, the
    signal handler for SEGV/ILL/BUS signals (which offers recovery
    user interface) is not set. This allows more reliable debugging
    of crashes that involve the console.
  DEPRECATED AND DEFUNCT:
  * The legacy S-compatibility macros PROBLEM, MESSAGE, ERROR, WARN,
    WARNING, RECOVER, ... are deprecated and will be hidden in R
    4.2.0. R's native interface of Rf_error and Rf_warning has long
    been preferred.
  BUG FIXES:
  * .mapply(F, dots, .) no longer segfaults when dots is not a list
    and uses match.fun(F) as always documented; reported by Andrew
    Simmons in PR#18164.
  * hist(&lt;Date&gt;, ...) and hist(&lt;POSIXt&gt;, ...)  no longer pass
    arguments for rect() (such as col and density) to axis().
    (Thanks to Sebastian Meyer's PR#18171.)
  * \Sexpr{ch} now preserves Encoding(ch). (Thanks to report and
    patch by Jeroen Ooms in PR#18152.)
  * Setting the RNG to "Marsaglia-Multicarry" e.g., by RNGkind(), now
    warns in more places, thanks to Andr'e Gillibert's report and
    patch in PR#18168.
  * gray(numeric(), alpha=1/2) no longer segfaults, fixing PR#18183,
    reported by Till Krenz.
  * Fixed dnbinom(x, size=&lt;very_small&gt;, .., log=TRUE) regression,
    reported by Martin Morgan.
  * as.Date.POSIXlt(x) now keeps names(x), thanks to Davis Vaughan's
    report and patch in PR#18188.
  * model.response() now strips an "AsIs" class typically, thanks to
    Duncan Murdoch's report and other discussants in PR#18190.
  * try() is considerably faster in case of an error and long call,
    as e.g., from some do.call().  Thanks to Alexander Kaever's
    suggestion posted to R-devel.
  * qqline(y = &lt;object&gt;) such as y=I(.), now works, see also
    PR#18190.
  * Non-integer mgp par() settings are now handled correctly in
    axis() and mtext(), thanks to Mikael Jagan and Duncan Murdoch's
    report and suggestion in PR#18194.
  * formatC(x) returns length zero character() now, rather than ""
    when x is of length zero, as documented, thanks to Davis
    Vaughan's post to R-devel.
  * removeSource(fn) now retains (other) attributes(fn).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1647000000">- CHANGES IN R 4.1.3:
  NEW FEATURES:
  * The default version of Bioconductor has been changed to 3.14.
    (This is used by setRepositories and the menus in GUIs.)
  UTILITIES:
  * R CMD check --as-cran has a workaround for a bug in versions of
    file up to at least 5.41 which mis-identify DBF files last
    changed in 2022 as executables.
  C-LEVEL FACILITIES:
  * The legacy S-compatibility macros SINGLE_* in R_ext/Constants.h
    (included by R.h) are deprecated and will be removed in R 4.2.0.
  BUG FIXES:
  * Initialization of self-starting nls() models with initialization
    functions following the pre-R-4.1.0 API (without the ...
    argument) works again for now, with a deprecation warning.
  * Fixed quoting of ~autodetect~ in Java setting defaults to avoid
    inadvertent user lookup due to leading ~, reported in PR#18231 by
    Harold Gutch.
  * substr(., start, stop) &lt;- v now treats _negative_ stop values
    correctly.  Reported with a patch in PR#18228 by Brodie Gaslam.
  * Subscripting an array x without dimnames by a
    length(dim(x))-column character matrix gave "random" non-sense,
    now an error; reported in PR#18244 by Mikael Jagan.
  * ...names() now matches names(list(...)) closely, fixing PR#18247.
  * all.equal(*, scale = s) now works as intended when length(s) &gt; 1,
    partly thanks to Michael Chirico's PR#18272.
  * print(x) for long vectors x now also works for named atomic
    vectors or lists and prints the correct number when reaching the
    getOption("max.print") limit; partly thanks to a report and
    proposal by Hugh Parsonage to the R-devel list.
  * all.equal(&lt;selfStart&gt;, *) no longer signals a deprecation
    warning.
  * reformulate(*, response=r) gives a helpful error message now when
    length(r) &gt; 1, thanks to Bill Dunlap's PR#18281.
  * Modifying globalCallingHandlers inside withCallingHandlers() now
    works or fails correctly, thanks to Henrik Bengtsson's PR#18257.
  * hist(&lt;Date&gt;, breaks = "days") and hist(&lt;POSIXt&gt;, breaks = "secs")
    no longer fail for inputs of length 1.
  * qbeta(.001, .9, .009) and similar cases now converge correctly
    thanks to Ben Bolker's report in PR#17746.
  * window(x, start, end) no longer wrongly signals "'start' cannot
    be after 'end'", fixing PR#17527 and PR#18291.
  * data() now checks that its (rarely used) list argument is a
    character vector - a couple of packages passed other types and
    gave incorrect results.
  * which() now checks its arr.ind argument is TRUE rather coercing
    to logical and taking the first element - which gave incorrect
    results in package code.
  * model.weights() and model.offset() more carefully extract their
    model components, thanks to Ben Bolker and Tim Taylor's R-devel
    post.
  * list.files(recursive = TRUE) now shows all broken symlinks
    (previously, some of them may have been omitted, PR#18296).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1650628800">- CHANGES IN R 4.2.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * The formula method of aggregate() now matches the generic in
    naming its first argument x (resolving PR#18299 by Thomas
    Soeiro).
    This means that calling aggregate() with a formula as a named
    first argument requires name formula in earlier versions of R and
    name x now, so portable code should not name the argument (code
    in many packages did).
  * Calling &amp;&amp; or || with either argument of length greater than one
    now gives a warning (which it is intended will become an error).
  * Calling if() or while() with a condition of length greater than
    one gives an error rather than a warning.  Consequently,
    environment variable _R_CHECK_LENGTH_1_CONDITION_ no longer has
    any effect.
  * Windows users should consult the WINDOWS section below for some
    profound changes including
  * Support for 32-bit builds has been dropped.
  * UTF-8 locales are used where available.
  * The default locations for the R installation and personal
    library folder have been changed.
    Thanks to Tomas Kalibera for months of work on the Windows port
    for this release.
  NEW FEATURES:
  * matrix(x, n, m) now warns in more cases where length(x) differs
    from n * m, as suggested by Abby Spurdle and Wolfgang Huber in
    Feb 2021 on the R-devel mailing list.
    This warning can be turned into an error by setting environment
    variable _R_CHECK_MATRIX_DATA_ to TRUE: R CMD check --as-cran
    does so unless it is already set.
  * Function file_test() in package utils gains tests for symlinks,
    readability and writability.
  * capabilities("libxml") is now false.
    The description of capabilities("http/ftp") now reflects that it
    refers to the default method, no longer the internal one.
  * simplify2array() gains an except argument for controlling the
    exceptions used by sapply().
  * Environment variables R_LIBS_USER and R_LIBS_SITE are both now
    set to the R system default if unset or empty, and can be set to
    NULL to indicate an empty list of user or site library
    directories.
  * The warning for axis()(-like) calls in cases of relatively small
    ranges (typically in log-scale situations) is slightly improved
    _and_ suppressed from explicit calls to .axisPars() as has always
    been the intention.
  * The contrasts setter function `contrasts&lt;-` gains an explicit
    default how.many = NULL rather than just using missing(how.many).
  * grid.pretty() gains a new optional argument n = 5.
  * There is a new function .pretty() with option bounds as a
    technical-utility version of pretty().  It and pretty() gain a
    new argument f.min with a better than back-compatible default.
  * Function grDevices::axisTicks() and related functions such as
    graphics::axis() work better, notably for the log scale; partly
    because of the pretty() improvements, but also because care is
    taken e.g., when ylim is finite but diff(ylim) is infinite.
  * nclass.FD() gains a digits option.
  * The R Mathlib internal C function bd0() (called indirectly from a
    dozen probability density and distribution functions such as
    dpois(), dbinom(), dgamma(), pgamma() _etc_) has been
    complemented by a more sophisticated and (mostly) more accurate C
    function ebd0(), currently called only by internal dpois_raw()
    improving accuracy for R level dpois() and potentially others
    calling it such as dnbinom(), dgamma() or pgamma().  (Thanks to
    Morten Welinder's PR#15628.)
  * write.ftable() gains sep = " " argument as suggested by Thomas
    Soeiro.
  * The names of the locale categories supported by R's
    Sys.getlocale() and Sys.setlocale() are now provided by variable
    .LC.categories in the base namespace.
  * The Date and POSIXt methods for hist() and the histogram method
    for plot() now also use the new default col = "lightgray" in
    consistency with the corresponding change to hist()'s default for
    R 4.0.0.
  * hist.default() gains new fuzz argument, and the histogram plot
    method no longer uses fractional axis ticks when displaying
    counts ("Frequency").
  * mapply() and hence Map() now also obey the "max-or-0-if-any"
    recycling rule, such that, e.g., Map(`+`, 1:3, 1[0]) is valid
    now.
  * as.character(&lt;obj&gt;) for "hexmode" or "octmode" objects now
    fulfils the important basic rule as.character(x)[j] ===
    as.character(x[j]).
  * The set utility functions, notably intersect() have been tweaked
    to be more consistent and symmetric in their two set arguments,
    also preserving a common mode.
  * substr(ch, start,end) &lt;- new now e.g., preserves names(ch); ditto
    for substring(), thanks to a patch from Brodie Gaslam.
  * plot(&lt;lm&gt;) gains a extend.ylim.f argument, in partial response to
    PR#15285; further PR#17784 is fixed thanks to several
    contributors and a patch by Elin Waring.  The Cook's dist
    contours get customizable via cook.col and cook.lty with a
    different default color and their legend is nicer by default and
    customizable via cook.legendChanges.
  * Attempting to subset an object that is not subsettable now
    signals an error of class notSubsettableError. The
    non-subsettable object is contained in the object field of the
    error condition.
  * Subscript-out-of-bounds errors are now signaled as errors of
    class subscriptOutOfBoundsError.
  * Stack-overflow errors are now signaled as errors inheriting from
    class stackOverflowError. See ?stackOverflowError for more
    details.
  * New partly experimental Sys.setLanguage() utility, solving the
    main problem of PR#18055.
  * gettext() and gettextf() get a new option trim = TRUE which when
    set to false allows translations for strings such as "Execution
    halted\n" typical for C code.
  * An experimental implementation of hash tables is now available.
    See ?hashtab for more details.
  * identical() gains a extptr.as.ref argument for requesting that
    external pointer objects be compared as reference objects.
  * reorder() gets an argument decreasing which it passes to sort()
    for level creation; based on the wish and patch by Thomas Soeiro
    in PR#18243.
  * as.vector() gains a data.frame method which returns a simple
    named list, also clearing a long standing 'FIXME' to enable
    as.vector(&lt;data.frame&gt;, mode="list").  This breaks code relying
    on as.vector(&lt;data.frame&gt;) to return the unchanged data frame.
  * legend() is now vectorized for arguments cex, x.intersp, and
    text.width.  The latter can now also be specified as a vector
    (one element for each column of the legend) or as NA for
    computing a proper column wise maximum value of strwidth(legend).
    The argument y.intersp can be specified as a vector with one
    entry for each row of the legend.
    legend() also gains new arguments title.cex and title.font.
    Thanks to Swetlana Herbrandt.
  * Deparsing no longer remaps attribute names dim, dimnames, levels,
    names and tsp to historical S-compatible names (which structure()
    maps back).
  * sample() and sample.int() have additional sanity checks on their
    size and n arguments.
    all.equal.numeric() gains a sanity check on its tolerance
    argument - calling all.equal(a, b, c) for three numeric vectors
    is a surprisingly common error.
    mean(na.rm =), rank(na.last =), barplot(legend.text =),
    boxplot(), contour(drawlabels =), polygon(border =) and
    methods::is(class2 =) have more robust sanity checks on their
    arguments.
    R CMD Rd2pdf (used by R CMD check) has a more robust sanity check
    on the format of \alias{} commands.
  * psigamma(x, deriv) for negative x now also works for deriv = 4
    and 5; their underlying C level dpsifn() is documented in
    'Writing R Extensions'.
  * The HTML help system now uses HTML5 (wish of PR#18149).
  * ks.test() now provides exact p-values also with ties and MC
    p-values in the two-sample (Smirnov) case.  By Torsten Hothorn.
  * ks.test() gains a formula interface, with y ~ 1 for the
    one-sample (Kolmogorov) test and y ~ group for the two-sample
    (Smirnov) test.  Contributed by Torsten Hothorn.
  * The return value from ks.test() now has class c("ks.test",
    "htest") - packages using try() need to take care to use
    inherits() and not == on the class.
  * New functions psmirnov(), qsmirnov() and rsmirnov() in package
    stats implementing the asymptotic and exact distributions of the
    two-sample Smirnov statistic.
  * iconv() now allows sub = "c99" to use C99-style escapes for UTF-8
    inputs which cannot be converted to encoding to.
  * In a forward pipe |&gt; expression it is now possible to use a named
    argument with the placeholder _ in the rhs call to specify where
    the lhs is to be inserted.  The placeholder can only appear once
    on the rhs.
  * The included LAPACK sources have been updated to version 3.10.0,
    except for the four Fortran 77 routines which 3.10.0 has
    re-implemented in Fortran 90 (where the older versions have been
    retained as the R build process does not support Fortran 90).
  * path.expand() and most other uses of tilde expansion now warn if
    a path would be too long if expanded.  (An exception is
    file.exists(), which silently returns false.)
  * trunc(&lt;Date&gt;, *) now supports units = "months" or "years" for
    consistency with the POSIXt method, thanks to Dirk Eddelbuettel's
    proposal in PR#18099.
  * list2DF() now checks that its arguments are of the same length,
    rather than use recycling.
  * The HTML help system has several new features: LaTeX-like math
    can be typeset using either KaTeX or MathJax, usage and example
    code is highlighted using Prism, and for dynamic help the output
    of examples and demos can be shown within the browser if the
    knitr package is installed. These features can be disabled by
    setting the environment variable _R_HELP_ENABLE_ENHANCED_HTML_ to
    a false value.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 15
    and so packages that provide graphics devices should be
    reinstalled.
  * The grid package now allows the user to specify a "vector" of
    pattern fills.  The fill argument to gpar() accepts a list of
    gradients and/or patterns and the functions linearGradient(),
    radialGradient(), and pattern() have a new group argument.
    Points grobs (data symbols) can now also have a pattern fill.
    The grobCoords() function now returns a more informative and
    complex result.
  * The grid package has new functions for drawing isolated groups:
    grid.group(), grid.define(), and grid.use().  These functions add
    compositing operators and affine transformations to R's graphics
    capabilities.
    The grid package also has new functions for stroking and filling
    paths: grid.stroke(), grid.fill(), and grid.fillStroke().
    A new function as.path() allows the user to specify the fill rule
    for a path that is to be used for clipping, stroking, or filling;
    available options are "winding" and "evenodd".  A new function
    as.mask() allows the user to specify the type of a mask;
    available options are "alpha" and "luminance".
    These new features are only supported so far (at most) on the
    Cairo-based graphics devices and on the pdf() device.
  * dev.capabilities() reports on device support for the new
    features.
  * par() now warns about unnamed non-character arguments to prevent
    misuse such as {usr &lt;- par("usr"); par(usr)}.
  INSTALLATION:
  * Facilities for accessing ftp:// sites are no longer tested
    (except _pro tem_ for curlGetHeaders()) as modern browsers have
    removed support.
  * R can now be built with DEFS = -DSTRICT_R_HEADERS .
  PACKAGE INSTALLATION:
  * R CMD INSTALL no longer tangles vignettes. This completes an R
    CMD build change in R 3.0.0 and affects packages built before R
    3.0.2. Such packages should be re-made with R CMD build to have
    the tangled R code of vignettes shipped with the tarball.
  * USE_FC_LEN_T will become the default: this uses the correct
    prototypes for Fortran BLAS/LAPACK routines called from C/C++,
    and requires adjustment of most such calls - see 'Writing R
    Extensions' SS6.6.2.  (This has been supported since R 3.6.2.)
  * Package installation speed for packages installed with
    keep.source has been improved. This resolve the issue reported by
    Ofek Shilon in PR#18236.
  UTILITIES:
  * R CMD check can optionally report files/directories left behind
    in home, /tmp (even though TMPDIR is set) and other directories.
    See the "R Internals" manual for details.
  * R CMD check now reports byte-compilation errors during
    installation.  These are not usually fatal but may result in
    parts of the package not being byte-compiled.
  * _R_CHECK_DEPENDS_ONLY_ can be applied selectively to examples,
    tests and/or vignettes in R CMD check: see the "R Internals"
    manual.
  * _R_CHECK_SRC_MINUS_W_IMPLICIT_ now defaults to true: recent
    versions of Apple clang on macOS have made implicit function
    declarations in C into a compilation error.
  * R CMD check --as-cran makes use of the environment variable
    AUTORECONF.  See the "R Internals" manual SS8 for further details.
  * R CMD check --use-valgrind also uses valgrind when re-building
    vignettes as some non-Sweave vignettes unhelpfully comment out
    all their code when R CMD check runs vignettes.
  * Errors in re-building vignettes (unless there are LaTeX errors)
    are reported by R CMD check as ERROR rather than WARNING when
    running vignettes has been skipped (as it frequently is in CRAN
    checks and by --as-cran).
  * R CMD Rd2pdf gains a --quiet option that is used by R CMD build
    when building the PDF package manual.
  * R CMD Rd2pdf now always runs LaTeX in batch mode, consistent with
    Texinfo &gt;= 6.7. The --batch option is ignored.
  * R CMD build and R CMD check now include the Rd file name and line
    numbers in the error message of an \Sexpr evaluation failure.
  * For packages using the \doi Rd macro (now an install-time \Sexpr)
    but no other dynamic Rd content, R CMD build now produces a
    smaller tarball and is considerably faster - skipping temporary
    package installation.
  C-LEVEL FACILITIES:
  * The non-API header R_ext/R-ftp-http.h is no longer provided, as
    the entry points it covered are now all defunct.
  * A number of non-API declarations and macro definitions have been
    moved from the installed header Rinternals.h to the internal
    header Defn.h. Packages that only use entry points and
    definitions documented to be part of the API as specified in
    'Writing R Extensions' SS6 should not be affected.
  * The macro USE_RINTERNALS no longer has any effect when compiling
    package code.  Packages which also use R_NO_REMAP will need to
    ensure that the remapped names are used for calls to API
    functions that were formerly also made available as macros.
  * The deprecated legacy S-compatibility macros PROBLEM, MESSAGE,
    ERROR, WARN, WARNING, RECOVER, ... are no longer defined in
    R_exts/RS.h (included by R.h).  Replace these by calls to
    Rf_error and Rf_warning (defined in header R_ext/Error.h included
    by R.h).
    Header R_ext/RS.h no longer includes R_ext/Error.h.
  * Header R_ext/Constants.h (included by R.h) when included from C++
    now includes the C++ header cfloat rather than the C header
    float.h (now possible as C++11 is required).
  * The legacy S-compatibility macros DOUBLE_* in R_ext/Constants.h
    (included by R.h) are deprecated.
  * The deprecated S-compatibility macros SINGLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * R_Calloc, R_Free and R_Realloc are preferred to their unprefixed
    forms and error messages now use the prefix. These forms were
    introduced in R 3.4.0 and are available even when
    STRICT_R_HEADERS is defined.
  * rmultinom has been documented in 'Writing R Extensions' SS6 so is
    now part of the R API.
  * Similarly, Rtanpi, called from R level tanpi() is now part of the
    R API.
  * The long-deprecated, undocumented and non-API entry point call_R
    is no longer declared in R_ext/RS.h (included by R.h).
  * The header S.h which has been unsupported since Jan 2016 has been
    removed.  Use R.h instead.
  DEPRECATED AND DEFUNCT:
  * The (non-default and deprecated) method = "internal" for
    download.file() and url() no longer supports http:// nor ftp://
    URIs.  (It is used only for file:// URIs.)
    On Windows, download.file(method = "wininet") no longer supports
    ftp:// URIs.  (It is no longer the default method, which is
    "libcurl" and does.)
    On Windows, the deprecated method = "wininet" now gives a warning
    for http:// and https:// URIs for both download.file() and url().
    (It is no longer the default method.)
  * On Windows, the command-line option --max-mem-size and
    environment variable R_MAX_MEM_SIZE are defunct.  The memory
    allocation limit was important for 32-bit builds, but these are
    no longer supported.
  * default.stringsAsFactors() is now formally deprecated, where that
    was only mentioned on its regular help page, previously.  So it
    now gives a warning if called.
  * unix.time() is defunct now; it had been deprecated since R 3.4.0.
  BUG FIXES:
  * Setting digits = 0 in format(), print.default() (and hence
    typically print()) or options() is again invalid.  Its behaviour
    was platform-dependent, and it is unclear what "zero significant
    digits" should mean (PR#18098).
  * Messages from C code in the cairo section of package grDevices
    are now also offered for translation, thanks to Michael Chirico's
    PR#18123.
  * mean(x) with finite x now is finite also without "long.double"
    capability.
  * R CMD Rd2pdf no longer leaves an empty build directory behind
    when it aborts due to an already existing output file.  (Thanks
    to Sebastian Meyer's PR#18141.)
  * density(x, weights = w, na.rm = TRUE) when anyNA(x) is true, now
    removes weights "in parallel" to x, fixing PR#18151, reported by
    Matthias Gondan.  Additionally, it gets a subdensity option.
  * Conversion of \Sexpr[]{&lt;expR&gt;} to LaTeX or HTML no longer
    produces long blocks of empty lines when &lt;expR&gt; itself contains
    several lines all producing empty output.  Thanks to a report and
    patch by Ivan Krylov posted to R-devel.
  * R CMD build no longer fails if a package vignette uses child
    documents and inst/doc exists.  (Thanks to Sebastian Meyer's
    PR#18156.)
  * When an R documentation ('help' source) file man/foo.Rd in a
    package has \donttest{..} examples with a syntax error, it is now
    signalled as ERROR and with correct line numbers relating to the
  * -Ex.R file, thanks to Duncan Murdoch and Sebastian Meyer's
    reports and patch proposals in PR#17501.
  * Improved determination of the correct translation domain in
    non-base packages, addressing the combination of PR#18092 and
    PR#17998 (#c6) with reports and _augmented_ patch #2904 by
    Suharto Anggono.
    Note that "R-base" is no longer the default domain e.g., for
    top-level calls to gettext(); rather translation needs explicit
    domain = * specification in such cases.
  * identical(attrib.as.set=FALSE) now works correctly with data
    frames with default row names (Thanks to Charlie Gao's PR#18179).
  * txtProgressBar() now enforces a non-zero width for argument char,
    without which no progress can be visible.
  * dimnames(table(d)) is more consistent in the case where d is a
    list with a single component, thanks to Thomas Soeiro's report to
    R-devel.
    Further, table(d1, d2) now gives an error when d1 and d2 are data
    frames as suggested by Thomas in PR#18224.
  * Fix for drawing semi-transparent lines and fills on the native
    Windows graphics device (PR#18219 and PR#16694).  Thanks to Nick
    Ray for helpful diagnosis on Bugzilla.
  * The deparser now wraps sub-expressions such as if(A) ..  with
    parentheses when needed; thanks to Duncan Murdoch's PR#18232 and
    Lionel Henry's patches there.
  * remove.packages() no longer tries to uninstall Priority: base
    packages, thanks to a report and suggestions by Colin Fay in
    PR#18227.
  * win.metafile() now has xpinch and ypinch arguments so that the
    user can override Windows' (potentially wrong) guess at device
    dimensions.
  * x[i] and x[[i]] for non-integer i should now behave in all cases
    as always documented: the index used is equivalent to
    as.integer(i) unless that would overflow where trunc(i) is used
    instead; thanks to Suharto Anggono's report and patch proposals
    in PR#17977.
  * asOneSidedFormula() now associates the resulting formula with the
    global environment rather than the evaluation environment created
    for the call.
  * &lt;bibentry&gt;$name now matches the field name case-insensitively,
    consistent with bibentry() creation and the replacement method.
  * cbind() failed to detect some length mismatches with a mixture of
    time-series and non-time-series inputs.
  * The default LaTeX style file Sweave.sty used by the RweaveLatex
    driver no longer loads the obsolete ae package; thanks to a
    report by Thomas Soeiro in PR#18271.  Furthermore, it now skips
    \usepackage[T1]{fontenc} for engines other than pdfTeX (if
    detected) or if the new [nofontenc] option is used.
  * smooth.spline() now stores its logical cv argument more safely,
    fixing a rare bug when printing, and also stores n.
  * smooth.spline(x,y,*) now computes the cv.crit statistic
    correctly, also when is.unsorted(x), fixing PR#18294.
  * The data.frame method of rbind() now warns when binding
    not-wholly-recycling vectors, by analogy to the default method
    (for matrices).
  * setAs() finds the correct class for name to when multiple
    packages define a class with that name. Thanks to Gabor Csardi
    for the report.
  * Fix for detaching a package when two classes of the same name are
    present in method signatures for the same generic. Thanks to
    Gabor Csardi for the report.
  * match.arg("", c("", "a", "B")) gives a better error message, in
    part from PR#17959, thanks to Elin Waring.
  * R CMD Sweave --clean no longer removes pre-existing files or
    subdirectories (PR#18242).
  * The quartz() device no longer splits polylines into subpaths.
    That has caused narrowly-spaced lines with many points to always
    look solid even when dashed line type was used due to dash phase
    restarts.
  * Deparsing constructs such as quote(1 + `!`(2) + 3) works again as
    before R 3.5.0, thanks to the report and patch in PR#18284 by
    Suharto Anggono.
  * as.list(f) for a factor f now keeps names(f), fixing PR#18309.
  * qbeta(.001, .9, .009) and analogous qf() calls now return a
    correct value instead of NaN or wrongly 1, all with a warning;
    thanks to the report by Ludger Goeminne in PR#18302.
  * plot.lm() failed to produce the plot of residuals vs.  factor
    levels (i.e., which=5 when leverages are constant) for models
    with character predictors (PR#17840).
  * interaction.plot(..., xtick = TRUE) misplaced the x-axis line
    (PR#18305).
  * Not strictly fixing a bug, format()ing and print()ing of
    non-finite Date and POSIXt values NaN and +/-Inf no longer show
    as NA but the respective string, e.g., Inf, for consistency with
    numeric vector's behaviour, fulfilling the wish of PR#18308.
  * R CMD check no longer runs test scripts generated from
    corresponding .Rin files twice and now signals an ERROR if
    processing an .Rin script fails.
  * tools::Rd2txt() used for plain-text help pages now renders \hrefs
    (if tools::Rd2txt_options(showURLs = TRUE)) and \urls with
    percent-encoding and standards-compliant delimiting style (angle
    brackets and no URL: prefix).  \email is now rendered with a
    mailto: prefix.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1655985600">- CHANGES IN R 4.2.1:
  NEW FEATURES:
  * New function utils::findCRANmirror() to find out if a CRAN mirror
    has been selected, otherwise fallback to the main site.  This
    behaves in the same way as tools::CRAN_package_db() and is
    intended for packages wishing to access CRAN for purposes other
    than installing packages.
    The need for this was shown by a day when the main CRAN website
    was offline and a dozen or so packages which had its URL
    hardcoded failed their checks.
  INSTALLATION on a UNIX-ALIKE:
  * The libraries searched for by --with-blas (without a value) now
    include BLIS (after OpenBLAS but before ATLAS).  And on macOS,
    the Accelerate framework (after ATLAS).  (This is patterned after
    the AX_BLAS macro from the Autoconf Archive.)
  * The included LAPACK sources have been updated to 3.10.1.
  UTILITIES:
  * The (full path to) the command tidy to be used for HTML
    validation can be set by environment variable R_TIDYCMD.
  * Setting environment variable _R_CHECK_RD_VALIDATE_RD2HTML_ to a
    false value will override R CMD check --as-cran and turn off HTML
    validation.  This provides a way to circumvent a problematic
    tidy.
    The 2006 version that ships with macOS is always skipped.
  C-LEVEL FACILITIES:
  * The undocumented legacy declarations of Sint, Sfloat, SINT_MAX
    and SINT_MIN in header R.h are deprecated.
  BUG FIXES:
  * fisher.test(d) no longer segfaults for "large" d; fixing PR#18336
    by preventing/detecting an integer overflow reliably.
  * tar(., files=*) now produces correctly the warning about invalid
    uid or gid of files, fixing PR#18344, reported by Martin Morgan.
  * tk_choose.files() with multi = FALSE misbehaved on paths
    containing spaces (PR#18334) (regression introduced in R 4.0.0).
  * sort(x, partial = ind, *) now works correctly notably for the
    non-default na.last = FALSE or TRUE, fixing PR#18335 reported by
    James Edwards.
  * Environment variable _R_CHECK_XREFS_REPOSITORIES_ is only used
    for checking .Rd cross-references in R CMD check (as documented)
    and not for other uses looking for a CRAN mirror.
  * The search for a CRAN mirror when checking packages now uses
    getOption("repos") if that specifies a CRAN mirror, even when it
    does not also specify all three Bioconductor repositories (as was
    previously required).
  * The HTML code generated by tools::Rd2HTML() has been improved to
    pass tidy 5.8.0.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1667217600">- CHANGES IN R 4.2.2:
  NEW FEATURES:
  * tools::Rdiff(useDiff = TRUE) checks for the presence of an
    external diff command and switches to useDiff = FALSE if none is
    found.  This allows R CMD Rdiff to always work.
  * On Windows, environment variable R_LIBCURL_SSL_REVOKE_BEST_EFFORT
    can be used to switch to only 'best-effort' SSL certificate
    revocation checks with the default "libcurl" download method.
    This reduces security, but may be needed for downloads to work
    with MITM proxies (PR#18379).
  * (macOS) The run-time check for libraries from XQuartz for X11 and
    Tcl/Tk no longer uses otool from the Apple Developer Tools
    (PR#18400).
  * The LaTeX style for producing the PDF manuals, Rd.sty, now loads
    the standard amsmath, amsfonts and amssymb packages for greater
    coverage of math commands in the Rd \eqn and \deqn macros.  The
    \mathscr LaTeX command is also provided (via the mathrsfs
    package, if available, or the amsfonts bundle otherwise),
    fulfilling the wish of PR#18398.
  * (Windows) The default format of readClipboard() and
    writeClipboard() has been changed to 13 (CF_UNICODETEXT).
  INSTALLATION on a UNIX-ALIKE:
  * The PDF manuals (if built) can be compacted by the new target
    make compact-pdf (at the top level or in directory doc/manual).
  * There is now configure support for LLVM clang 15 on Linux, which
    defaults to position-independent (PIE) executables whereas
    gfortran does not.
  * Many small changes to ease compilation (and suppress warnings)
    with LLVM clang 15.
  BUG FIXES:
  * Rscript -e would fail if stdin were closed (Reported by Henrik
    Bengtsson.)
  * qt(*, log.p=TRUE) in outer tails no longer produces NaN in its
    final steps, thus fixing PR#18360.
  * tools::Rd2latex() now escapes hashes and ampersands when writing
    URLs, fixing LaTeX errors with such URLs in \tabular.
  * When isGeneric(f, fdef=*) is used with mismatching names, the
    warning is better understandable; reported (with fix) in PR#18370
    by Gabe Becker.
  * poly(x, n) now works again (and is now documented) when x is a
    "Date" or "POSIXct" object, or of another class while fulfilling
    mode(x) == "numeric".  This also enables poly(x, *, raw=TRUE) for
    such variables.  Reported by Michael Chirico to R-devel.
  * write.table(), write.csv() and write.csv2() restore their
    numerical precision (internal equivalent of digits = 15) after an
    interrupt (PR#18384).
  * One can now read also byte FF from a clipboard connection
    (PR#18385).
  * source("") and source(character()) now give more helpful error
    messages.
  * R CMD check --as-cran set _R_CHECK_TIMINGS_ too late to have the
    intended effect.
  * as.POSIXlt(x) now also works with very large dates x, fixing
    PR#18401 reported by Hannes M"uhleisen.
  * Files can now be extracted even from very large zip archives
    (PR#18390, thanks to Martin Jakt).
  * Non-finite objects of class "POSIXlt" are now correctly coerced
    to classes "Date" and "POSIXct"; following up on the extension to
    format() them correctly.
  * Added methods for is.finite(), is.infinite() and is.nan() for
    "POSIXlt" date-time objects.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1678881600">- CHANGES IN R 4.2.3:
  C-LEVEL FACILITIES:
  * The definition of DL_FUNC in R_ext/Rdynload.h has been changed to
    be fully C-compliant.  This means that functions loaded _via_ for
    example R_GetCCallable need to be cast to an appropriate type if
    they have any arguments.
  * .Machine has a new element sizeof.time_t to identify old systems
    with a 32-bit type and hence a limited range of date-times (and
    limited support for dates millions of years from present).
  PACKAGE INSTALLATION:
  * (Windows) The default C++ standard had accidentally been left at
    C++11 when it was changed to C++14 on Unix.
  BUG FIXES:
  * As "POSIXlt" objects may be "partially filled" and their list
    components meant to be recycled, length() now is the length of
    the longest component.
  * as.POSIXlt.Date() could underflow for dates in the far past (more
    than half a million years BCE).
  * as.Date.POSIXlt(x) would return "1970-01-01" instead of NA in R
    4.2.2, e.g., for
    x &lt;- as.POSIXlt(c("2019-01-30","2001-1-1"))
    x$mon &lt;- c(0L, NA); as.Date(x)
  * R CMD check failed to apply enabled _R_CHECK_SUGGESTS_ONLY_ to
    examples and vignettes (regression in R 4.2.0).
  * R CMD check did not re-build vignettes in separate processes by
    default (regression in R 4.2.0).
  * Running examples from HTML documentation now restores previous
    knitr settings and options (PR#18420).
  * Quartz: fonts are now located using Core Graphics API instead of
    deprecated ATS which is no longer supported in the macOS 13 SDK
    (PR#18426).  This also addresses an issue where the currently
    used font in the Quartz device context was not correctly
    retained.
  * (Windows) Math symbols in text drawing functions are again
    rendered correctly (PR#18440).  This fixes a regression in R
    4.2.1 caused by a fix in PR#18382 which uncovered an issue in
    GraphApp due to which the symbol charset was not used with TT
    Symbol font face.
  * (Windows) Installing a package with a src/Makefile.{win,ucrt}
    file includes ~/.R/Makevars.win64 in the search for user
    makevars, as documented in "R Installation and Administration"
    and done for packages with a src/Makevars.{win,ucrt} file.
  * format(&lt;POSIXlt_w/_unbalanced_sec&gt;, "....%OS&lt;n&gt;") with n &gt; 0 no
    longer accidentally uses the unbalanced seconds, thanks to
    Suharto Anggono's report (including patch) in PR#18448.
  * solve.default(a, b) works around issues with some versions of
    LAPACK when a contains NA or NaN values.
  * When UseMethod() cannot dispatch, it no longer segfaults
    producing the error message in case of a long class(), thanks to
    Joris Vankerschaver's report (including patch) in PR#18447.
  * When example(foo, ..) produces graphics on an interactive device
    it needs to open itself, it now leaves devAskNewPage() unchanged
    even when it was FALSE, thus fixing a 14 years old '&lt;FIXME&gt;'.
  * packageDescription() again catches errors from encoding
    conversions. This also fixes broken packageVersion() in C locale
    on systems where iconv does not support transliteration.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1681128000">- add patch to build with libcurl &gt;= 8</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1682078400">- CHANGES IN R 4.3.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Calling &amp;&amp; or || with LHS or (if evaluated) RHS of length greater
    than one is now always an error, with a report of the form
    'length = 4' in coercion to 'logical(1)'
    Environment variable _R_CHECK_LENGTH_1_LOGIC2_ no longer has any
    effect.
  NEW FEATURES:
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.10.1.  (This caused some platform-dependent
    changes to package check output.)  And then to the sources from
    LAPACK version 3.11.0 (with changes only to double complex
    subroutines).
  * The included LAPACK sources have been updated to include the four
    Fortran 90 routines rather than their Fortran 77 predecessors.
    This may give some different signs in SVDs or
    eigendecompositions..  (This completes the transition to LAPACK
    3.10.x begun in R 4.2.0.)
  * The LAPACK sources have been updated to version 3.11.0.  (No new
    subroutines have been added, so this almost entirely bug fixes:
    Those fixes do affect some computations with NaNs, including R's
    NA.)
  * The parser now signals _classed_ errors, notably in case of the
    pipe operator |&gt;.  The error object and message now give line and
    column numbers, mostly as proposed and provided by Duncan Murdoch
    in PR#18328.
  * toeplitz() is now generalized for asymmetric cases, with a
    toeplitz2() variant.
  * xy.coords() and xyz.coords() and consequently, e.g., plot(x,y,
    log = "y") now signal a _classed_ warning about negative values
    of y (where log(.) is NA).  Such a warning can be specifically
    suppressed or caught otherwise.
  * Regular expression functions now check more thoroughly whether
    their inputs are valid strings (in their encoding, e.g. in
    UTF-8).
  * The performance of grep(), sub(), gsub() and strsplit() has been
    improved, particularly with perl = TRUE and fixed = TRUE.  Use of
    useBytes = TRUE for performance reasons should no longer be
    needed and is discouraged: it may lead to incorrect results.
  * apropos() gains an argument dot_internals which is used by the
    completion (help(rcompgen)) engine to also see base internals
    such as .POSIXct().
  * Support in tools::Rdiff() for comparing uncompressed PDF files is
    further reduced - see its help page.
  * qqplot(x, y, ...) gains conf.level and conf.args arguments for
    computing and plotting a confidence band for the treatment
    function transforming the distribution of x into the distribution
    of y (Switzer, 1976, _Biometrika_). Contributed by Torsten
    Hothorn.
  * Performance of package_dependencies() has been improved for cases
    when the number of dependencies is large.
  * Strings newly created by gsub(), sub() and strsplit(), when any
    of the inputs is marked as "bytes", are also marked as "bytes".
    This reduces the risk of creating invalid strings and accidental
    substitution of bytes deemed invalid.
  * Support for readLines(encoding = "bytes") has been added to allow
    processing special text files byte-by-byte, without creating
    invalid strings.
  * iconv(from = "") now takes into account any declared encoding of
    the input elements and uses it in preference to the native
    encoding.  This reduces the risk of accidental creation of
    invalid strings, particularly when different elements of the
    input have different encoding (including "bytes").
  * Package repositories in getOption("repos") are now initialized
    from the repositories file when utils is loaded (if not already
    set, e.g., in .Rprofile).  (From a report and patch proposal by
    Gabriel Becker in PR#18405.)
  * compactPDF() gets a verbose option.
  * type.convert() and hence read.table() get new option tryLogical =
    TRUE with back compatible default.  When set to false, converts
    "F" or "T" columns to character.
  * Added new unit prefixes "R" and "Q" for abbreviating
    (unrealistically large) sizes beyond 10^{27} in standard = "SI",
    thanks to Henrik Bengtsson's PR#18435.
  * as.data.frame()'s default method now also works fine with atomic
    objects inheriting from classes such as "roman", "octmode" and
    "hexmode", such fulfilling the wish of PR#18421, by Benjamin
    Feakins.
  * The as.data.frame.vector() utility now errors for wrong-length
    row.names.  It warned for almost six years, with "Will be an
    error!".
  * sessionInfo() now also contains La_version() and reports codepage
    and timezone when relevant, in both print() and toLatex() methods
    which also get new option tzone for displaying timezone
    information when locale = FALSE.
  * New function R_compiled_by() reports the C and Fortran compilers
    used to build R, if known.
  * predict(&lt;lm&gt;, newdata = *) no longer unnecessarily creates an
    offset of all 0s.
  * solve() for complex inputs now uses argument tol and by default
    checks for 'computational singularity' (as it long has done for
    numeric inputs).
  * predict(&lt;rank-deficient lm&gt;, newdata=*) now obeys a new argument
    rankdeficient, with new default "warnif", warning only if there
    are non-estimable cases in newdata.  Other options include
    rankdeficient = "NA", predicting NA for non-estimable newdata
    cases.  This addresses PR#15072 by Russ Lenth and is based on his
    original proposal and discussions in PR#16158 also by David Firth
    and Elin Waring.  Still somewhat experimental.
  * Rgui console implementation now works better with the NVDA screen
    reader when the full blinking cursor is selected.  The underlying
    improvements in cursor handling may help also other screen
    readers on Windows.
  * The drop-field control in GraphApp can now be left with the TAB
    key and all controls can be navigated in the reverse order using
    the Shift+TAB key, improving accessibility of the Rgui
    configuration editor.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now fully accurate
    (instead of to "only" minimally five digits).
  * demo(error.catching) now also shows off withWarnings() and
    tryCatchWEMs().
  * As an experimental feature the placeholder _ can now also be used
    in the rhs of a forward pipe |&gt; expression as the first argument
    in an extraction call, such as _$coef. More generally, it can be
    used as the head of a chain of extractions, such as _$coef[[2]].
  * Spaces in the environment variable used to choose the R session's
    temporary directory (TMPDIR, TMP and TEMP are tried in turn) are
    now fatal.  (On Windows the 'short path' version of the path is
    tried and used if that does not contain a space.)
  * all.equal.numeric() gets a new optional switch giveErr to return
    the numeric error as attribute.  Relatedly,
    stopifnot(all.equal&lt;some&gt;(a, b, ..)) is as "smart" now, as
    stopifnot(all.equal(....)) has been already, thus allowing
    customized all.equal&lt;Some&gt;() wrappers.
  * R on Windows is now able to work with path names longer than 260
    characters when these are enabled in the system (requires at
    least Windows 10 version 1607).  Packages should be updated to
    work with long paths as well, instead of assuming PATH_MAX to be
    the maximum length.  Custom front-ends and applications embedding
    R need to update their manifests if they wish to allow this
    feature.  See
    &lt;https://blog.r-project.org/2023/03/07/path-length-limit-on-windows&gt;
    for more information.
  * 'Object not found' and 'Missing argument' errors now give a more
    accurate error context. Patch provided by Lionel Henry in
    PR#18241.
  * The @ operator is now an S3 generic. Based on contributions by
    Tomasz Kalinowski in PR#18482.
  * New generic chooseOpsMethod() provides a mechanism for objects to
    resolve cases where two suitable methods are found for an Ops
    Group Generic. This supports experimenting with alternative
    object systems. Based on contributions by Tomasz Kalinowski in
    PR#18484.
  * inherits(x, what) now accepts values other than a simple
    character vector for argument what. A new generic, nameOfClass(),
    is called to resolve the class name from what. This supports
    experimenting with alternative object systems. Based on
    contributions by Tomasz Kalinowski in PR#18485.
  * Detection of BLAS/LAPACK in use (sessionInfo()) with FlexiBLAS
    now reports the current backend.
  * The "data.frame" method for subset() now warns about extraneous
    arguments, typically catching the use of = instead of == in the
    subset expression.
  * Calling a:b when numeric a or b is longer than one may now be
    made into an error by setting environment variable
    _R_CHECK_LENGTH_COLON_ to a true value, along the proposal in
    PR#18419 by Henrik Bengtsson.
  * density(x, weights = *) now warns if automatic bandwidth
    selection happens without using weights; new optional warnWbw may
    suppress the warning.  Prompted by Christoph Dalitz' PR#18490 and
    its discussants.
  * rm(list = *) is faster and more readable thanks to Kevin Ushey's
    PR#18492.
  * The plot.lm() function no longer produces a normal Q-Q plot for
    GLMs. Instead it plots a half-normal Q-Q plot of the absolute
    value of the standardized deviance residuals.
  * The print() method for class "summary.glm" no longer shows
    summary statistics for the deviance residuals by default.  Its
    optional argument show.residuals can be used to show them if
    required.
  * The tapply() function now accepts a data frame as its X argument,
    and allows INDEX to be a formula in that case. by.data.frame()
    similarly allows INDICES to be a formula.
  * The performance of df[j] &lt;- value (including for missing j) and
    write.table(df) has been improved for data frames df with a large
    number of columns.  (Thanks to Gabriel Becker's PR#18500,
    PR#18503 and discussants, prompted by a report from Toby Dylan
    Hocking on the R-devel mailing list.)
  * The matrix multiply operator %*% is now an S3 generic, belonging
    to new group generic matrixOps.  From Tomasz Kalinowski's
    contribution in PR#18483.
  * New function array2DF() to convert arrays to data frames,
    particularly useful for the list arrays created by tapply().
  DATES and TIMES:
  * On platforms where (non-UTC) datetimes before 1902 (or before
    1900 as with system functions on recent macOS) are guessed by
    extrapolating time zones from 1902-2037, there is a warning at
    the first use of extrapolation in a session.  (As all time zones
    post 2037 are extrapolation, we do not warn on those.)
  * (Platforms using --with-internal-tzone, including Windows and by
    default macOS). How years are printed in dates or date-times can
    be controlled by environment variable R_PAD_YEARS_BY_ZERO.  The
    default remains to pad to 4 digits by zeroes, but setting value
    no gives no padding (as used by default by glibc).
  * strftime() tries harder to determine the offset for the "%z"
    format, and succeeds on the mainstream R platforms.
  * strftime() has a limit of 2048 bytes on the string produced -
    attempting to exceed this is an error.  (Previously it silently
    truncated at 255 bytes.)
  * sessionInfo() records (and by default prints) the system time
    zone as part of the locale information.  Also, the source
    (system/internal) of the date-time conversion and printing
    functions.
  * Objects of class "POSIXlt" created in this version of R always
    have 11 components: component zone is always set, and component
    gmtoff is set for times in UTC and usually set on the (almost
    all) platforms which have C-level support, otherwise is NA.
  * There are comprehensive validity checks on the structure of
    objects of class "POSIXlt" when converting (including formatting
    and printing).  (This avoids mis-conversions of hand-crafted
    objects.)
  * There is some support for using the native date-time routines on
    macOS: this is only viable on recent versions (e.g. 12.6 and 13)
    and does get wrong some historical changes (before 1900, during
    WWII).  Use of --with-internal-tzone remains the default.
  * as.POSIXct(&lt;numeric&gt;) and as.POSIXlt(.) (without specifying
    origin) now work.  So does as.Date(&lt;numeric&gt;).
  * as.Date.POSIXct(., tz) now treats several tz values, notably
    "GMT" as equivalent to "UTC", proposed and improved by Michael
    Chirico and Joshua Ulrich in PR#17674.
  * Experimental balancePOSIXlt() utility allows using "ragged" and
    or out-of-range "POSIXlt" objects more correctly, e.g., in
    subsetting and subassignments.  Such objects are now documented.
    More experimentally, a "POSIXlt" object may have an attribute
    "balanced" indicating if it is known to be filled or fully
    balanced.
  * Functions axis.Date() and axis.POSIXct() are rewritten to gain
    better default tick locations and better default formats by using
    prettyDate(). Thanks to Swetlana Herbrandt.
  * The mapping of Windows' names for time zones to IANA's 'Olson'
    names has been updated.  When ICU is available (it is by
    default), it is used to get a mapping for the current region set
    in Windows.  This can be overridden by setting environment
    variable TZ to the desired Olson name - see OlsonNames() for
    those currently available.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 16
    and so packages that provide graphics devices should be
    reinstalled.
  * The grDevices and grid packages have new functions for rendering
    typeset glyphs, primarily: grDevices::glyphInfo() and
    grid::grid.glyph().
    Rendering of typeset glyphs is only supported so far on the
    Cairo-based graphics devices and on the pdf() and quartz()
    devices.
  * The defined behaviour for "clear" and "source" compositing
    operators (via grid::grid.group()) has been changed (to align
    better with simple interpretation of original Porter-Duff
    definitions).
  * Support for gradients, patterns, clipping paths, masks, groups,
    compositing operators, and affine transformations has been added
    to the quartz() device.
  INSTALLATION on a UNIX-ALIKE:
  * A system installation of generic LAPACK 3.10.0 or later will be
    preferred to the version in the R sources.
    configure option --with-lapack=no (equivalently --without-lapack)
    forces compilation of the internal LAPACK sources.
    If --with-lapack is not specified, a system liblapack is looked
    for and used if it reports version 3.10.0 or later and does not
    contain BLAS routines.
    Packages using LAPACK will need to be reinstalled if this changes
    to using an external library.
  * On aarch64 Linux platforms using GCC, configure now defaults to
  - fPIC (instead of -fpic), as desired in PR#18326.
  * configure now checks conversion of datetimes between POSIXlt and
    POSIXct around year 2020.  Failure (which has been seen on
    platforms missing tzdata) is fatal.
  * If configure option --with-valgrind-instrumentation is given
    value 1 or 2, option --with-system-valgrind-headers is now the
    default and ignored (with a warning).  It is highly recommended
    that the system headers are installed alongside valgrind: they
    are part of its packaging on some Linux distributions and
    packaged separately (e.g. in the valgrind-devel RPM) on others.
    configure will give a warning if they are not found.
    The system headers will be required in a future release of R to
    build with valgrind instrumentation.
  * libcurl 8.x is now accepted by configure: despite a change in
    major version number it changes neither API nor ABI.
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools43, an update of the Rtools42 toolchain.  It is
    based on gcc 12 and newer versions of MinGW-W64, binutils and
    libraries.  At this time R-devel can still be built using
    Rtools42 without changes, but when R-devel is installed via the
    installer, it will by default look for Rtools43.
  * Old make targets rsync-extsoft and 32-bit ones that are no longer
    needed have been removed.
  * Default builds (including for packages) no longer select C99.
    Thus the C standard used is the default for the compiler, which
    for the toolchain in Rtools43 is C17.  (This is consistent with
    Unix builds.)
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++17 where
    available (which it is on all currently checked platforms): if
    not C++14 or C++11 is used if available otherwise C++ is not
    supported.
  * USE_FC_LEN_T is the default: this uses the correct
    (compiler-dependent) prototypes for Fortran BLAS/LAPACK routines
    called from C/C++, and requires adjustment of many such calls -
    see 'Writing R Extensions' SS6.6.1.
  * There is initial support for C++23 as several compilers are now
    supporting -std=c++23 or -std=c++2b or similar.  As for C++20,
    there no additional configure checks for C++23 features beyond a
    check that the compiler reports a __cplusplus value greater than
    that in the C++20 standard.  C++ feature tests should be used.
  * There is support for a package to indicate the version of the C
    standard which should be used to compile it, and for the
    installing user to specify this.  In most cases R defaults to the
    C compiler's default standard which is C17 (a `bug-fix' of C11) -
    earlier versions of R or compilers may have defaulted to C99.
    Current options are:
    USE_C17 Use a standard that is at most C17.  The intention is to
    allow legacy packages to still be installed when later C
    standards become the default, including packages using new
    keywords as identifiers or with K&amp;R-style function
    declarations.  This will use C17 if available, falling back
    to C11.
    USE_C90 Use the C90 (aka C89) standard.  (As that standard did
    not require compilers to identify that version, all we can
    verify is that the compiler does not claim to be using a
    later standard.  It may accept C99 features - for example
    clang accepts // to make comments.)
    USE_C99 Use the C99 standard. This should be rarely needed - it
    avoids the few new features of C11/C17 which can be useful if
    a package assumes them if C17 is specified and they are not
    implemented.
    USE_C23 Use C23 (or in future, later).  Compiler/library support
    for C23 is still being implemented, but LLVM clang from
    15.0.0 and the upcoming GCC 13 have quite extensive support.
    These can be specified as part of the SystemRequirements field in
    the package's DESCRIPTION file or _via_ options --use-C17 and so
    on of R CMD INSTALL and R CMD SHLIB.
    For further details see "Writing R Extensions" SS1.2.5.
  * (Windows) A src/Makefile.ucrt or src/Makefile.win file is now
    included after R_HOME/etcR_ARCH/Makeconf and so no longer needs
    to include that file itself.  Installation of a package with such
    a file now uses a site Makevars file in the same way as a package
    with a src/Makevars.win file would.
  * configure is now passed crucial variables such as CC and CFLAGS
    in its environment, as many packages were not setting them (as
    documented in 'Writing R Extensions' SS1.2).
    This has most effect where configure is used to compile parts of
    the package - most often by cmake or libtool which obfuscate the
    actual compile commands used.
    Also used for configure.win and configure.ucrt on Windows.
  FORTRAN FLAGS:
  * The flag -fno-optimize-sibling-calls is no longer forced for
    gfortran 7 and later.  It should no longer be needed now using
    'hidden' character-length arguments when calling BLAS/LAPACK
    routines from C/C++ is the default even for packages.  (Unless
    perhaps packages call Fortran code from C/C++ without using R's
    headers and without allowing for these arguments.)
  C-LEVEL FACILITIES:
  * The deprecated S-compatibility macros DOUBLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * The deprecated legacy typedefs of Sint and Sfloat in header R.h
    are no longer defined, and that header no longer includes header
    limits.h from C nor climits from C++.
  * New macro CAD5R() is provided in Rinternals.h and used in a few
    places in the R sources.
  * ALTREP now supports VECSXP vectors. Contributed by Gabor Csardi
    in PR#17620.
  * The Rcomplex definition (in header R_ext/Complex.h) has been
    extended to prevent possible mis-compilation when interfacing
    with Fortran (PR#18430).  The new definition causes compiler
    warnings with static initializers such as {1, 2}, which can be
    changed to {.r=1, .i=2}.
    Using the new definition from C++ depends on compiler extensions
    supporting C features that have not been incorporated into the
    C++ standards but are available in g++ and clang++: this may
    result in C++ compiler warnings but these have been worked around
    for recent versions of common compilers (GCC, Apple/LLVM clang,
    Intel).
    It is intended to change the inclusion of header R_ext/Complex.h
    by other R headers, so C/C++ code files which make use of
    Rcomplex should include that header explicitly.
  UTILITIES:
  * R CMD check does more checking of package .Rd files, warning
    about invalid email addresses and (some) invalid URIs and noting
    empty \item labels in description lists.
  * R CMD check now also reports problems when reading package news
    in md (file NEWS.md) and (optionally) plain text (file NEWS)
    formats.
  * _R_CHECK_TIMINGS_ defaults to a value from the environment even
    for R CMD check --as-cran; this allows for exceptionally fast or
    slow platforms.
    It now applies to checking PDF and HTML versions of the manuals,
    and 'checking CRAN incoming feasibility'.
  * R CMD check can optionally (but included in --as-cran) check
    whether HTML math rendering _via_ KaTeX works for the package .Rd
    files.
  * Non-interactive debugger invocations can be trapped by setting
    the environment variable _R_CHECK_BROWSER_NONINTERACTIVE_ to a
    true value.  This is enabled by R CMD check --as-cran to detect
    the use of leftover browser() statements in the package.
  * The use of sprintf and vsprintf from C/C++ has been deprecated in
    macOS 13 and is a known security risk.  R CMD check now reports
    (on all platforms) if their use is found in compiled code:
    replace by snprintf or vsnprintf respectively. [*NB:* whether
    such calls get compiled into the package is platform-dependent.]
  * Where recorded at installation, R CMD check reports the C and
    Fortran compilers used to build R.
    It reports the OS in use (if known, as given by osVersion) as
    well as that R was built for.
    It notes if a C++ standard was specified which is older than the
    current default: many packages have used C++11 to mean 'not
    C++98' - as C++11 is the minimum supported since R 4.0.0, that
    specification can probably be removed.
  * R CMD INSTALL reports the compilers (and on macOS, the SDK) used,
    and this is copied to the output of R CMD check.
    Where a C++ standard is specified, it is reported.
  * R CMD check's 'checking compilation flags in Makevars' has been
    relaxed to accept the use of flags such as -std=f2008 in
    PKG_FFLAGS.
  * tools::buildVignettes() has a new argument skip, which is used by
    R CMD check to skip (and note) vignettes with unavailable
    \VignetteDepends (PR#18318).
  * New generic .AtNames() added to enable class-specific completions
    after @. The formerly internal function findMatches() is now
    exported, mainly for use in methods for .DollarNames() and
    .AtNames().
  DEPRECATED AND DEFUNCT:
  * default.stringsAsFactors() is defunct.
  * Calling as.data.frame.&lt;class&gt;() directly (for 12 atomic classes)
    is going to be formally deprecated, currently activated by
    setting the environment variable
    _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ to non-empty, which also
    happens in R CMD check --as-cran.
  BUG FIXES:
  * Hashed environments with sizes less than 5 can now grow.
    (Reported to R-devel by Duncan Garmonsway.)
  * as.character(&lt;Rd&gt;, deparse = TRUE) failed to re-escape curly
    braces in LaTeX-like text.  (Reported by Hadley Wickham in
    PR#18324.)
  * library() now passes its lib.loc argument when requiring Depends
    packages; reported (with fix) in PR#18331 by Mikael Jagan.
  * R CMD Stangle: improved message about 'Output' files.
  * head(x, n) and tail(x, n) now signal an error if n is not
    numeric, instead of incidentally "working" sometimes returning
    all of x.  Reported and discussed by Colin Fay, in PR#18357.
  * The "lm" method for summary() now gives the correct F-statistic
    when the model contains an offset.  Reported in PR#18008.
  * C() and `contrasts&lt;-`() now preserve factor level names when
    given a function object (as opposed a function name which did
    preserve names). Reported in PR#17616.
  * c(a = 1, 2)[[]] no longer matches 2 but rather signals a
    _classed_ error.  Reported and analysed by Davis Vaughan in
    PR#18367, a duplicate of PR#18004, by Jan Meis et al.  For
    consistency, NULL[[]] is also erroneous now.  x[[]] &lt;- v gives an
    error of the same class "MissingSubscriptError".
  * The relist() function of utils now supports NULL elements in the
    skeleton (PR#15854).
  * ordered(levels = *) (missing x) now works analogously to factor(,
    ordered=TRUE); reported (with fix) by Achim Zeileis in PR#18389.
  * User-defined Rd macro definitions can now span multiple lines,
    thanks to a patch from Duncan Murdoch. Previously, the Rd parser
    silently ignored everything after the first line.
  * Plain-text help (tools::Rd2txt()) now preserves an initial blank
    line for text following description list items.
  * tools::Rd2HTML() and tools::Rd2latex() no longer split \arguments
    and \value lists at Rd comments.
  * tools::Rd2latex() now correctly handles optional text outside
    \items of argument lists as well as bracketed text at the
    beginning of sections, e.g., \value{[NULL]}.
  * as.character(&lt;POSIXt&gt;) now behaves more in line with the methods
    for atomic vectors such as numbers, and is no longer influenced
    by options().  Ditto for as.character(&lt;Date&gt;).  The
    as.character() method gets arguments digits and OutDec with
    defaults _not_ depending on options().  Use of as.character(*,
    format = .) now warns.
  * Similarly, the as.character.hexmode() and *.octmode() methods
    also behave as good citizen methods and back compatibility option
    keepStr = TRUE.
  * The as.POSIXlt(&lt;POSIXlt&gt;) and as.POSIXct(&lt;POSIXct&gt;) default
    methods now do obey their tz argument, also in this case.
  * as.POSIXlt(&lt;Date&gt;) now does apply a tz (time zone) argument, as
    does as.POSIXct(); partly suggested by Roland Fuss on the R-devel
    mailing list.
  * as.Date.POSIXlt(x) now also works when the list components are of
    unequal length, aka "partially filled" or "ragged".
  * expand.model.frame() looked up variables in the wrong environment
    when applied to models fitted without data.  Reported in
    PR#18414.
  * time() now (also) uses the ts.eps = getOption("ts.eps") argument
    and thus by default rounds values very close to the start (or
    end) of a year.  Based on a proposal by Andre"i V. Kostyrka on
    R-help.
  * Printing of a factanal() result with just one factor and sort =
    TRUE now works regularly, fixing PR#17863 by Timothy Bates,
    thanks to the 'R Contributors' working group.
  * Printing 0-length objects of class "factor", "roman", "hexmode",
    "octmode", "person", "bibentry", or "citation" now prints
    something better, one of which fixes PR#18422, reported by
    Benjamin Feakins.
  * Sys.timezone() queries timedatectl only if systemd is loaded;
    addressing a report by Jan Gorecki in PR#17421.
  * The formula method of cor.test() had scoping problems when
    environment(formula) was not the calling environment; reported
    with a patch proposal by Mao Kobayashi in PR#18439.
  * attach() of an environment with active bindings now preserves the
    active bindings.  Reported by Kevin Ushey in PR#18425.
  * BLAS detection now works also with system-provided libraries not
    available as regular files.  This fixes detection of the
    Accelerate framework on macOS since Big Sur.  Reported by David
    Novgorodsky.
  * download.file() gives a helpful error message in case of an
    invalid download.file.method option, thanks to Colin Fay's report
    in PR#18455.
  * Sporadic crashes of Rterm when using completion have been fixed.
  * Rprof() is now more reliable.  A livelock in thread
    initialization with too short sampling interval has been fixed on
    macOS.  A deadlock in using the C runtime has been fixed on
    Windows.  A potential deadlock has been prevented on Unix.
  * Cursor placement in Rgui now works even after a fixed-width font
    is selected.
  * Mandatory options (options()) are now set on startup so that
    saving and restoring them always works (PR#18372).
  * Package installation, R CMD INSTALL or install.packages(*), now
    parses each of the &lt;pkg&gt;/R/*.R files individually instead of
    first concatenating and then parse()ing the large resulting file.
    This allows parser or syntax errors to be diagnosed with correct
    file names and line numbers, thanks to Simon Dedman's report and
    Bill Dunlap's patch in PR#17859.
    This _does_ require syntactically self contained R source files
    now, fixing another inadvertent bug.
  * predict.lm(&lt;model with offset&gt;) now finds the offset in the
    correct environment, thanks to Andr'e Gillibert's report and patch
    in PR#18456.
  * getInitial(&lt;formula&gt;) now finds the selfStart model in the
    correct environment.  (Reported by Ivan Krylov in PR#18368.)
  * Fix for possible segfault when using recently-added graphics
    features, such as gradients, clipping paths, masks, and groups
    with pdf(file=NULL).
  * class(m) &lt;- class(m) no longer changes a matrix m by adding a
    class _attribute_.
  * packageDate(pkg) now only warns once if there is no pkg.
  * When ts() creates a multivariate time series, "mts", it also
    inherits from "array" now, and is.mts() is documented _and_
    stricter.
  * Rd2txt() now preserves line breaks of \verb Rd content and from
    duplicated \cr.  The former also fixes the rendering of verbatim
    output from Rd \Sexpr in plain-text help.
  * uniroot(f, interval) should no longer wrongly converge _outside_
    the interval in some cases where abs(f(x)) == Inf for an x at the
    interval boundary, thanks to posts by Ben Bolker and Serguei
    Sokol on R-devel.
  * Vectorized alpha handling in palette functions such as in gray(),
    rainbow(), or hcl.colors() works correctly now, thanks to Achim
    Zeileis' report and patch in PR#18476.
  * Formatting and print()ing of bibentry objects has dropped the
    deprecated citation.bibtex.max argument, such that the bibtex
    argument's default for print.bibentry() depends directly on the
    citation.bibtex.max option, whereas in format.bibentry() the
    option no longer applies.
  * Attempting to use a character string naming a foreign function
    entry point in a foreign function call in a package will now
    signal an error if the packages has called R_forceSymbols to
    specify that symbols must be used.
  * An error in table() could permanently set options(warn=2)
    promoting all subsequent warnings to errors.
  * The sigma() function gave misleading results for binary GLMs.  A
    new method for objects of class "glm" returns the square root of
    the estimate of the dispersion parameter using the same
    calculation as summary.glm().
  * bs() and ns() in the (typical) case of automatic knot
    construction, when some of the supposedly inner knots coincide
    with boundary knots, now moves them inside (with a warning),
    building on PR#18442 by Ben Bolker.
  * R CMD on Windows now skips the site profile with --no-site-file
    and --vanilla even when R_PROFILE is set (PR#18512, from Kevin
    Ushey).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1686916800">- CHANGES IN R 4.3.1:
  C-LEVEL FACILITIES:
  * The C-level API version of R's integrate(), Rdqags() in Applic.h,
    now returns the correct number of integrand evaluations neval,
    fixing PR#18515 reported and diagnosed by Stephen Wade.
  * The C prototypes for LAPACK calls dspgv and dtptrs in
    R_exts/Lapack.h had one too many and one too few character length
    arguments - but this has not caused any known issues. To get the
    corrected prototypes, include
    [#]include &lt;Rconfig.h&gt; // for PR18534fixed
    [#]ifdef PR18534fixed
    [#] define usePR18534fix 1
    [#]endif
    [#]include &lt;R_exts/Lapack.h&gt;
    in your C/C++ code (PR#18534).
  INSTALLATION:
  * Many of the checks of esoteric Internet operations and those
    using unreliable external sites have been moved to a new target
    that is not run by default and primarily intended for the core
    developers.  To run them use
    cd tests; make test-Internet-dev
  BUG FIXES:
  * .S3methods(), typically called from methods(), again marks
    methods from package base as visible.
    Also, the visibility of non-base methods is again determined by
    the method's presence in search().
  * tools::Rdiff() is now more robust against invalid strings, fixing
    installation tests on Windows without Rtools installed
    (PR#18530).
  * Fix (new) bug in hcl.colors(2, *), by Achim Zeileis (PR#18523).
  * head(., &lt;illegal&gt;) and tail(..) now produce more useful "Error in
    ...." error messages, fixing PR#18362.
  * Package code syntax on Windows is checked in UTF-8 when UTF-8 is
    the native encoding.
  * na.contiguous(x) now also returns the first run, when it is at
    the beginning and there is a later one of the same length;
    reported to R-devel, including a fix, by Georgi Boshnakov.
    Further, by default, it modifies only an existing attr(*,"tsp")
    but otherwise no longer sets one.
  * chol(&lt;not pos.def&gt;, pivot = &lt;T|F&gt;) now gives a correct error or
    warning message (depending on pivot), thanks to Mikael Jagan's
    (PR#18541).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1699012800">- CHANGES IN R 4.3.2:
  NEW FEATURES:
  * The default initialization of the "repos" option from the
    repositories file at startup can be skipped by setting
    environment variable R_REPOSITORIES to NULL such that
    getOption("repos") is empty if not set elsewhere.
  * qr.X() is now an implicit S4 generic in methods.
  * iconv(to = "ASCII//TRANSLIT") is emulated using substitution on
    platforms which do not support it (notably Alpine Linux).  This
    should give a human-readable conversion in ASCII on all platforms
    (rather than NA_character_).
  * trans3d() gains options continuous and verbose addressing the
    problem of possible "wrap around" when projecting too long
    curves, as reported by Achim Zeileis in PR#18537.
  * tools::showNonASCII() has been rewritten to work better on macOS
    14 (which has a changed implementation of iconv()).
  * tiff(type = "quartz") (the default on macOS) now warns if
    compression is specified: it continues to be ignored.
  INSTALLATION on a UNIX-ALIKE:
  * There is some support for building with Intel's LLVM-based
    compilers on x86_64 Linux, such as (C) icx, (C++) ipcx and
    (Fortran) ifx from oneAPI 2023.x.y.
  * There is support for using LLVM's flang-new as the Fortran
    compiler from LLVM 16.0.x (preferably 17.0.0 or later).
  UTILITIES:
  * R CMD check reports the use of the Fortran 90 random number
    generator RANDOM_NUMBER() and the subroutines to initialize it.
    'Writing R Extensions' has example code to use R's RNGs from
    Fortran.
  BUG FIXES:
  * substr(x, n, L) &lt;- cc now works (more) correctly for multibyte
    UTF-8 strings x when L &gt; nchar(x), thanks to a report and patch
    by 'Architect 95'.
  * contrib.url(character()) now returns 0-length character() as
    documented, which also avoids spurious warnings from
    available.packages() et al. in the edge case of an empty vector
    of repository URLs.
  * readChar(., 4e8) no longer fails, thanks to Kodi Arfer's report
    (PR#18557).
  * lapply(&lt;list&gt;, as.data.frame) no longer warns falsely for some
    base vector components.
  * Communication between parent and child processes in the multicore
    part of parallel could fail on platforms that do not support an
    arbitrarily large payload in system functions read()/write() on
    pipes (seen on macOS where a restriction to INT_MAX bytes is
    documented, without doing a partial read unlike Linux). The
    payload is now split into 1Gb chunks to avoid that problem.
    (PR#18571)
  * qqplot(x,y, conf.level=.) gives better confidence bounds when
    length(x) != length(y), thanks to Alexander Ploner's report and
    patch proposal (PR#18557).
  * norm(&lt;0-length&gt;, "2") now gives zero instead of an error, as all
    the other norm types, thanks to Mikael Jagan's PR#18542.
  * Build-stage Rd macros \packageAuthor and \packageMaintainer now
    process Authors@R, fixing NA results when the package DESCRIPTION
    omits Author and Maintainer fields.
  * Formatting and printing complex numbers could give things like
    0.1683-0i because of rounding error: -0i is now replaced by +0i.
  * postscript() refused to accept a title comment containing the
    letter "W" (PR#18599).
  * isoreg(c(1,Inf)) signals an error instead of segfaulting, fixing
    PR#18603.
  * tiff(type = "Xlib") was only outputting the last page of
    multi-page plots.
  * tools::latexToUtf8() again knows about \~{n} and other letters
    with tilde, fixing a regression in R 4.3.0, and about \^{i} as an
    alternative to \^{\i} (similarly with other accents).
    Furthermore, LaTeX codes for accented I letters are now correctly
    converted, also fixing related mistakes in
    tools::encoded_text_to_latex().
  * tar(*, tar = "internal") no longer creates out-of-spec tar files
    in the very rare case of user or group names longer than 32
    bytes, fixing PR#17871 with thanks to Ivan Krylov.
  * When using the "internal" timezone datetime code, adding a
    fraction of a second no longer adds one second, fixing PR#16856
    from a patch by Ivan Krylov.
  * tools::checkRd() no longer produces spurious notes about
    "unnecessary braces" from multi-line Rd results of \Sexpr macros.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1709208000">- CHANGES IN R 4.3.3:
  NEW FEATURES:
  * iconv() now fixes up variant encoding names such as "utf8"
    case-insensitively.
  DEPRECATED AND DEFUNCT:
  * The legacy encoding = "MacRoman" is deprecated in pdf() and
    postscript(): support was incomplete in earlier versions of R.
  BUG FIXES:
  * Arguments are now properly forwarded to methods on S4 generics
    with ... in the middle of their formal arguments. This was broken
    for the case when a method introduced an argument but did not
    include ... in its own formals. Thanks to Herv'e Pag`es for the
    report PR#18538.
  * Some invalid file arguments to pictex(), postscript() and xfig()
    opened a file called NA rather than throw an error.  These
    included postscript(NULL) (which some people expected to work
    like pdf(NULL)).
  * Passing filename = NA to svg(), cairo_pdf(), cairo_ps() or the
    Cairo-based bitmap devices opened a file called NA: it now throws
    an error.
  * quartz(file = NA) opened a file called NA, including when used as
    a Quartz-based bitmap device.  It now gives an error.
  * rank(&lt;long vector&gt;) now works, fixing PR#18617, thanks to Ilia
    Kats.
  * seq.int() did not adequately check its length.out argument.
  * match(&lt;POSIXct&gt;, .) is correct again for differing time zones,
    ditto for "POSIXlt", fixing PR#18618 reported by Bastian Klein.
  * drop.terms(*, dropx = &lt;0-length&gt;) now works, fixing PR#18563 as
    proposed by Mikael Jagan.
  * drop.terms(*) keeps + offset(.) terms when it should, PR#18565,
    and drop.terms() no longer makes up a response, PR#18566, fixing
    both bugs thanks to Mikael Jagan.
  * getS3method("t", "test") no longer finds the t.test() function,
    fixing PR#18627.
  * pdf() and postscript() support for the documented Adobe encodings
    "Greek" and "Cyrilllic" was missing (although the corresponding
    Windows' codepages could be used).
  * Computations of glyph metric information for pdf() and
    postscript() did not take into account that transliteration could
    replace one character by two or more (only seen on macOS 14) and
    typically warned that the information was not known.
  * rank(x) no longer overflows during integer addition, when
    computing rank average for largish but not-yet long vector x,
    fixing PR#18630, thanks to Ilia Kats.
  * list.files() on Windows now returns also files with names longer
    that 260 bytes (the Windows limit is 260 characters).
    Previously, some file names particularly with 'East Asian'
    characters were omitted.
  * cov2cor(&lt;0 x 0&gt;) now works, fixing PR#18423 thanks to Mikael
    Jagan and Elin Waring.
  * cov2cor(&lt;negative diagonal&gt;) and similar now give one warning
    instead of two, with better wording, fixing PR#18424 thanks to
    Mikael Jagan.
  * tools:: startDynamicHelp() now ensures port is in proper range,
    fixing PR#18645.
  * pbeta(x, a,b) is correct now for x=0 or 1 in the boundary cases
    where a or b or both are 0, fixing PR#18672 thanks to Michael
    Fay.
  * pmatch(x, table) for large table, also called for data frame row
    selection, dfrm[nm, ], is now interruptible, fixing PR#18656.
  * predict(&lt;rank-deficient lm&gt;, newdata=*) fix computing of nbasis,
    see Russ Lenth's comment 29 in PR#16158.
  * Added a work-around for a bug in macOS 14.3.1 and higher which
    prevents R plots in the Quartz Cocoa device from updating on
    screen.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1713960000">- CHANGES IN R 4.4.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Startup banners, R --version, sessionInfo() and R CMD check no
    longer report (64-bit) as part of the platform as this is almost
    universal - the increasingly rare 32-bit platforms will still
    report (32-bit).
    On Windows, ditto for window titles.
  * is.atomic(NULL) now returns FALSE, as NULL is not an atomic
    vector.  Strict back-compatibility would replace is.atomic(foo)
    by (is.null(foo) || is.atomic(foo)) but should happen only
    sparingly.
  NEW FEATURES:
  * The confint() methods for "glm" and "nls" objects have been
    copied to the stats package.  Previously, they were stubs which
    called versions in package MASS. The MASS namespace is no longer
    loaded if you invoke (say) confint(glmfit).  Further, the "glm"
    method for profile() and the plot() and pairs() methods for class
    "profile" have been copied from MASS to stats.  (profile.nls()
    and plot.profile.nls() were already in stats.)
  * The confint() and profile methods for "glm" objects have gained a
    possibility to do profiling based on the Rao Score statistic in
    addition to the default Likelihood Ratio. This is controlled by a
    new test = argument.
  * The pairs() method for "profile" objects has been extended with a
    which = argument to allow plotting only a subset of the
    parameters.
  * The "glm" method for anova() computes test statistics and
    p-values by default, using a chi-squared test or an F test
    depending on whether the dispersion is fixed or free.  Test
    statistics can be suppressed by giving argument test a false
    logical value.
  * In setRepositories() the repositories can be set using their
    names via name = instead of index ind =.
  * methods() and .S3methods() gain a all.names option for the (rare)
    case where functions starting with a . should be included.
  * Serializations can now be interrupted (e.g., by Ctrl-C on a
    Unix-alike) if they take too long, e.g., from save.image(),
    thanks to suggestions by Ivan Krylov and others on R-devel.
  * New startup option --max-connections to set the maximum number of
    simultaneous connections for the session.  Defaults to 128 as
    before: allowed values up to 4096 (but resource limits may in
    practice restrict to smaller values).
  * R on Windows (since Windows 10 2004) now uses the new Segment
    Heap allocator. This may improve performance of some
    memory-intensive applications.
  * When R packages are built, typically by R CMD build &lt;pkg&gt;, the
    new --user=&lt;build_user&gt; option overrides the (internally
    determined) user name, currently Sys.info()["user"] or LOGNAME.
    This is a (modified) fulfillment of Will Landau's suggestion in
    PR#17530.
  * tools::testInstalledBasic() gets new optional arguments outDir
    and testSrcdir, e.g., allowing to use it in a &lt;builddir&gt; !=
    &lt;srcdir&gt; setup, and in standard "binary" Windows installation
  * if* a source tests/ folder is present.
  * range(&lt;DT_with_Inf&gt;, finite = TRUE) now work for objects of class
    "Date", "POSIXct", and "POSIXlt" with infinite entries,
    analogously to range.default(), as proposed by Davis Vaughan on
    R-devel.  Other range()-methods can make use of new function
    .rangeNum().
  * New .internalGenerics object complementing .S3PrimitiveGenerics,
    for documentation and low-level book-keeping.
  * grid() now invisibly returns the x- and y- coordinates at which
    the grid-lines were drawn.
  * norm(., type) now also works for complex matrices.
  * kappa(., exact = TRUE, norm = *) now works for all norms and also
    for complex matrices.  In symmetric / triangular cases, the new
    argument uplo = "U" | "L" allows the upper or lower triangular
    part to be specified.
  * memDecompress(type = "unknown") recognizes compression in the
    default 'zlib' format as used by memCompress(type = "gzip").
  * memCompress() and memDecompress() will use the libdeflate library
    (&lt;https://github.com/ebiggers/libdeflate&gt;) if installed.  This
    uses the same type of compression for type = "gzip" but is 1.5-2x
    faster than the system libz library on some common platforms: the
    speed-up may depend on the library version.
  * diff() for objects of class "Date", "POSIXct", and "POSIXlt"
    accepts a units argument passed via ....
  * Dynamic help now does a much better job of rendering package
    DESCRIPTION metadata.
  * Rprof() gains an event argument and support for elapsed (real)
    time profiling on Unix (PR#18076).
  * filled.contour() gains a key.border argument.
  * tools::update_pkg_po() gets arguments pot_make and mo_make for
    _not_ re-making the corresponding files, and additionally a
    verbose argument.
  * Hexadecimal string colour specifications are now accepted in
    short form, so, for example, we can use "#123", which is
    equivalent to "#112233".
    Thanks to MikeFC for the original idea and Ella Kaye, Malcolm
    Barrett, George Stagg, and Hanne Oberman for the patch.
  * Plain-text help shows \var markup by angle brackets.
  * The new experimental primitive function declare() is intended to
    eventually allow information about R code to be communicated to
    the interpreter, compiler, and code analysis tools. The syntax
    for declarations is still being developed.
  * Functions psmirnov(), qsmirnov() and rsmirnov() in package stats
    have had argument two.sided renamed to alternative, to take into
    account that the permutation distributions of the one-sided
    statistics can be different in the case of ties.  Consequence of
    PR#18582.
  * sort() is now an implicit S4 generic in methods.
  * Formatting and printing, format(z), print(z), of complex vectors
    z no longer zap relatively small real or imaginary parts to zero,
    fixing PR#16752.  This is an API change, as it was documented
    previously to round real and imaginary parts together on purpose,
    producing nicer looking output.  As mentioned, e.g. in the PR,
    this change is compatible with many other "R-like" programming
    environments.
    We have simplified the internal code and now basically format the
    real and imaginary parts independently of each other.
  * New experimental functions Tailcall() and Exec() to support
    writing stack-space-efficient recursive functions.
  * Where characters are attempted to be plotted by pdf(),
    postscript() and xfig() which are not in the selected 8-bit
    character set (most often Latin-1) and the R session is using a
    UTF-8 locale, the warning messages will show the UTF-8 character
    rather than its bytes and one dot will be substituted per
    character rather than per byte.  (Platforms whose iconv() does
    transliteration silently plot the transliteration.)
    In a UTF-8 locale some transliterations are now done with a
    warning (e.g., dashes and Unicode minus to hyphen, ligatures are
    expanded, permille (‰) is replaced by o/oo), although the OS may
    have got there first.  These are warnings as they will continue
    to be replaced by dots in earlier versions of R.
  * The matrix multiplication functions crossprod() and tcrossprod()
    are now also primitive and S3 generic, as %*% had become in R
    4.3.0.
  * source() and example() have a new optional argument catch.aborts
    which allows continued evaluation of the R code after an error.
  * The non-Quartz tiff() devices allow additional types of
    compression if supported by the platform's libtiff library.
  * The list of base and recommended package names is now provided by
    tools::standard_package_names().
  * cairo_pdf() and cairo_ps() default to onefile = TRUE to closer
    match pdf() and postscript().
  * New option catch.script.errors provides a documented way to catch
    errors and then continue in non-interactive use.
  * L %||% R newly in base is an expressive idiom for the phrases
    if(!is.null(L)) L else R or if(is.null(L)) R else L.
  * The return value from warnings() now always inherits from
    "warnings" as documented, now also in the case of no warnings
    where it previously returned NULL.
  * as.complex("1i") now returns 0 + 1i instead of NA with a warning.
  * z &lt;- c(NA, 1i) now keeps the imaginary part Im(z[1]) == 0, no
    longer coercing to NA_complex_.  Similarly, cumsum(z) correctly
    sums real and imaginary parts separately, i.e., without
    "crosstalk" in case of NAs.
  * On Alpine Linux iconv() now maps "latin2", "latin-2", "latin9"
    and "latin-9" to encoding names the OS knows about
    (case-insensitively).
  * iconv(sub = "Unicode") now always zero-pads to four (hex) digits,
    rather than to 4 or 8.  (This seems to have become the convention
    once Unicode restricted the number of Unicode points to 2^21 - 1
    and so will never need more than 6 digits.)
  * NCOL(NULL) now returns 0 instead of 1, for consistency with
    cbind().
  * The information for the Euro glyph missing from the Adobe .afm
    files for the Courier, Helvetica and Times families has been
    copied from their URW equivalents - this will improve vertical
    centring in the pdf() and postscript() devices.
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.12.0.  The changes are almost entirely cosmetic.
  * The included LAPACK sources have been updated to version 3.12.0
    and some further double-complex routines added.
  * There are new font families for the 2014--5 URW 2.0 fonts (see
    ?pdf) which are included in recent versions of Ghostscript.
    These have font widths for most Greek glyphs and a few others
    which were missing from the original versions (whose font
    families remain available for reproducibility, although
    Ghostscript-based viewers will render using the 2.0 versions).
  * Improve the large-n efficiency of as.matrix(&lt;dist&gt;), thanks an R
    contributors effort, notably by Tim Taylor and Heather Turner,
    see PR#18660.
  * The default and numeric methods of all.equal() get a check.class
    option.
  * zapsmall() gets new optional arguments, function mFUN and min.d,
    for extra flexibility; fulfills a wish in PR#18199.  Also, it is
    now an implicit S4 generic in package methods.
  * The Rd filter for aspell() gains an ignore argument.
  * New generic function sort_by(), primarily useful for the
    data.frame method which can be used to sort rows of a data frame
    by one or more columns.
  * The icence headers for the RPC code in src/extra/xdr have been
    updated to use the GPL-compatible licence published by Oracle
    America in 2010.
  * New function pkg2HTML() in tools to create single-page HTML
    reference manuals for R packages.
  * The byte code evaluator now uses less C stack space for recursive
    calls to byte-compiled functions. It also makes more of an effort
    to avoid allocations for scalar return values.
  * New completion option backtick (disabled by default) allows
    non-syntactic completions to be wrapped in backquotes. This is
    currently only useful for Jupyter notebooks via the IRkernel
    package, and may cause problems for other backends.
  INSTALLATION:
  * The parser has been updated to work with bison 3.8.2, which is
    now used for the pre-generated parsers in gram.c, file.c, and
    gramRd.c. A few parser error messages have changed, which may
    affect code that relies on exact messages.
  INSTALLATION on a UNIX-ALIKE:
  * System valgrind headers are now required to use configure option
  - -with-valgrind-instrumentation with value 1 or 2.
  * configure will warn if it encounters a 32-bit build, as that is
    nowadays almost untested.
  * Environment variable R_SYSTEM_ABI is no longer used and so no
    longer recorded in etc/Renviron (it was not on Windows and was
    only ever used when preparing package tools).
  * If the libdeflate library and headers are available, libdeflate
    rather than libz is used to (de)compress R objects in lazy-load
    databases.  Typically tasks spend up to 5% of their time on such
    operations, although creating lazy-data databases is one of the
    exceptions.
    This can be suppressed if the library is available by the
    configure option --without-libdeflate-compression.
  * configure option --enable-lto=check has not worked reliably since
    2019 and has been removed.
  * The minimum autoconf requirement for a maintainer build has been
    increased to autoconf 2.71.
    It is intended to increase this to 2.72 for R 4.5.0: the
    distributed configure file was generated using 2.72.
  * The minimum version requirement for an external LAPACK has been
    reduced to 3.9.0.
  * No default C++ compiler is set if no C++17 compiler is detected:
    there is no longer an automatic fallback to C++14 or C++11.
    Compilers from the last five years should have sufficient
    support: for others macros CXX and CXXSTD can be set in file
    config.site to provide a fallback if needed.
    The Objective-C++ compiler now by default uses the standard
    selected by R for C++ (currently C++17) rather than the default
    standard for the C++ compiler (which on macOS is still C++98).
  INSTALLATION on macOS:
  * A new configure option --with-newAccelerate makes use of Apple's
    'new' BLAS / LAPACK interfaces in their Accelerate framework.
    Those interfaces are only available in macOS 13.3 or later, and
    building requires SDK 13.3 or later (from the Command Line Tools
    or Xcode 14.3 or later).
    By default the option uses new Accelerate for BLAS calls: to also
    use it for LAPACK use option --with-newAccelerate=lapack.  The
    later interfaces provide LAPACK 3.9.1 rather than 3.2.1: 3.9.1 is
    from 2021-04 and does not include the improved algorithms
    introduced in LAPACK 3.10.0 (including for BLAS calls).
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools44, an update of the Rtools43 toolchain.  It is
    based on GCC 13 and newer versions of MinGW-W64, binutils and
    libraries (targeting 64-bit Intel CPUs).  R-devel can no longer
    be built using Rtools43 without changes.
  * Rtools44 has experimental support for 64-bit ARM (aarch64) CPUs
    _via_ the LLVM 17 toolchain using lld, clang/flang-new and
    libc++.
  UTILITIES:
  * R CMD check notes when S4-style exports are used without
    declaring a strong dependence on package methods.
  * tools::checkRd() (used by R CMD check) detects more problems with
    \Sexpr-based dynamic content, including bad nesting of \Sexprs
    and invalid arguments.
  * tools::checkRd() now reports Rd titles and section names ending
    in a period; this is ignored by R CMD check unless environment
    variable _R_CHECK_RD_CHECKRD_MINLEVEL_ is set to -5 or smaller.
  * R CMD check now notes Rd files without an \alias, as long
    documented in 'Writing R Extensions' §1.3.1.  The check for a
    missing \description has been moved from tools::checkRd() to
    tools::checkRdContents().
  * R CMD check now visits inst/NEWS.Rd and OS-specific man
    subdirectories when checking Rd files.
  * tools::checkDocFiles() and tools::checkRdContents() now also
    check internal Rd files by default, but "specially" (ignoring
    missing documentation of arguments).
  * R CMD Rdiff gets option --useEx.
  * R CMD check now warns on non-portable uses of Fortran KIND such
    as INTEGER(KIND=4) and REAL(KIND=8).
    To see the failing lines set environment variable
    _R_CHECK_FORTRAN_KIND_DETAILS_ to a true value.
  * When checking Rd files, R CMD check now notes some of the "lost
    braces" that tools::checkRd() finds.  Typical problems are Rd
    macros missing the initial backslash (e.g., code{...}), in-text
    set notation (e.g., {1, 2}, where the braces need escaping), and
    \itemize lists with \describe-style entries of the form
    \item{label}{description}.
  * R CMD INSTALL (and hence check) will compile C++ code with
  - DR_NO_REMAP if environment variable _R_CXX_USE_NO_REMAP_ is set
    to a true value.  It is planned that this will in future become
    the default for compiling C++.
  * The new built-in Rd macro \dontdiff{} can be used to mark example
    code whose output should be ignored when comparing check output
    to reference output (tests/Examples/&lt;pkg&gt;-Ex.Rout.save).  The
    \dontdiff tag, like \donttest, is _not_ shown on the rendered
    help page, so provides a clean alternative to ##
    IGNORE_RDIFF_(BEGIN|END) comments.
  * R CMD build when there is no NAMESPACE, now uses the recommended
    exportPattern("^[^.]"), instead of exporting everything.
  * R CMD check now warns about non-ASCII characters in the NAMESPACE
    file (in addition to R files). Such packages are not portable and
    may fail to install on some platforms.
  C-LEVEL FACILITIES:
  * Headers R_ext/Applic.h and R-ext/Linpack.h used to include
    R_ext/BLAS.h although this was undocumented and unneeded by their
    documented entry points.  They no longer do so.
  * New function R_missing(), factored out from do_missing(), used to
    fix PR#18579.
  * SEXP type S4SXP has been renamed to OBJSXP to support
    experimenting with alternative object systems.  The S4SXP value
    can still be used in C code but is now deprecated.  Based on
    contributions from the R Consortium's Object-Oriented Programming
    Working Group.
  * New function pow1p(x,y) for accurate (1+x)^y.
  * mkCharLenCE was incorrectly documented to take a size_t length
    but was implemented with int (and character strings in R are
    limited to 2^31 - 1 bytes).
  DEPRECATED AND DEFUNCT:
  * data() no longer handles zipped data from long-defunct (since R
    2.13.0) --use-zip-data installations.
  * The legacy graphics devices pictex() and xfig() are now
    deprecated.  They do not support recent graphics enhancements and
    their font handling is rudimentary. The intention is to retain
    them for historical interest as long as they remain somewhat
    functional.
  * Support for encoding = "MacRoman" has been removed from the pdf()
    and postscript() devices - this was a legacy encoding supporting
    classic macOS up to 2001 and no longer has universal libiconv
    support.
  * is.R() is deprecated as no other S dialect is known to be in use
    (and this could only identify historical dialects, not future
    ones).
    Further information on calls can be obtained by setting the
    environment variable _R_DEPRECATED_IS_R_ to error which turns the
    deprecation warning into an error and so by default gives a
    traceback.  (This is done by R CMD check --as-cran.)
  * UseMethod() no longer forwards local variables assigned in the
    generic function into method call environments before evaluating
    the method body. This makes method calls behave more like
    standard function calls and makes method code easier to analyze
    correctly.
  * The twelve as.data.frame.&lt;class&gt;() methods which were deprecated
    only via _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ and in R CMD
    check --as-cran are formally deprecated now in favour of calling
    as.data.frame() or as.data.frame.vector().  The deprecation
    "check" now works also when as.data.frame() is S4 generic thanks
    to Ivan Krylov.
  * The default method for the directional comparison operators &lt;, &gt;,
    &lt;=, and &gt;= now signals an error when one of the operands is a
    language object, i.e. a symbol or a call.
  * For terms.formula(), deprecate abb and neg.out arguments
    _formally_ in addition to just documenting it.
  BUG FIXES:
  * The methods package is more robust to not being attached to the
    search path.  More work needs to be done.
  * pairwise.t.test() misbehaved when subgroups had 0 DF for
    variance, even with pool.sd = TRUE.  (PR#18594 by Jack Berry).
  * Probability distribution functions [dpq]&lt;distrib&gt;(x, *), but also
    bessel[IKJY](x, .) now consistently preserve attributes(x) when
    length(x) == 0, e.g., for a 2 x 0 matrix, thanks to Karolis
    Koncevičius' report PR#18509.
  * Group "Summary" computations such as sum(1:3, 4, na.rm = 5, NA,
    7, na.rm = LL) now give an error instead of either 17 or NN for
    LL true or false, as proposed by Ivan Krylov on the R-devel
    mailing list.  (This also means it is now an error to specify
    na.rm more than once.)
  * as.complex(x) now returns complex(real = x, imaginary = 0) for
    _all_ numerical and logical x, notably also for NA or
    NA_integer_.
  * Directories are now omitted by file.copy(, recursive = FALSE) and
    in file.append() (PR#17337).
  * gsub() and sub() are now more robust to integer overflow when
    reporting errors caused by too large input strings (PR#18346).
  * Top-level handlers are now more robust to attempts to remove a
    handler whilst handlers are running (PR#18508).
  * The handling of Alt+F4 in dialogs created on Windows using
    GraphApp has been fixed (PR#13870).
  * density() more consistently computes grid values for the
    FFT-based convolution, following Robert Schlicht's analysis and
    proposal in PR#18337, correcting density values typically by a
    factor of about 0.999.  Argument old.coords = TRUE provides back
    compatibility.
  * palette.colors() gains a name argument that defaults to FALSE
    controlling whether the vector of colours that is returned has
    names (where possible).  PR#18529.
  * tools::xgettext() no longer extracts the (non-translatable) class
    names from warningCondition and errorCondition calls.
  * S3method(&lt;gen&gt;, &lt;class&gt;, &lt;func&gt;) in the NAMESPACE file now works
    (again) when &lt;func&gt; is visible from the namespace, e.g.,
    imported, or in base.
  * getParseData(f) now also works for a function defined in the
    first of several &lt;pkg&gt;/R/*.R source files, thanks to Kirill
    Müller's report and Duncan Murdoch's patch in PR#16756.
  * Rd \Sexpr macros with nested #ifdef conditionals were not
    processed.
  * A non-blocking connection with non-default encoding (such as a
    socket) now correctly returns from readLines() after new data has
    arrived also when its EOF had been reached previously.  Thanks to
    Peter Meilstrup's report on R-devel and Ivan Krylov's report and
    patch proposal in PR#18555.
  * tools::checkRdContents() failed to detect empty argument
    descriptions when they spanned multiple lines, including those
    generated by prompt().  These cases are now noted by R CMD check.
  * Plain-text help no longer outputs spurious colons in the
    arguments list (for multi-line \item labels in the Rd source).
  * kappa() and rcond() work correctly in more cases; kappa(., norm =
    "2") now warns that it computes the 1-norm with (default) exact =
    FALSE; prompted by Mikael Jagan's quite comprehensive PR#18543.
  * Rd skeletons generated by prompt() or promptData() now use a
    dummy title (so R CMD build works).  tools::checkRdContents() has
    been updated to detect such template leftovers, including from
    promptPackage().
  * When S4 method dispatch fails because no method was found, the
    error message now includes the signature argument names; thanks
    to Michael Chirico's proposal on the R-devel list.
  * withAutoprint({ .. }) now preserves srcrefs previously lost,
    thanks to Andrew Simmons' report plus fix in PR#18572.
  * transform.data.frame() no longer adjusts names; in particular,
    untransformed variables are kept as-is, including those with
    syntactically invalid names (PR#17890).
  * The keep.source option for Rd \Sexpr blocks is no longer ignored.
  * The formula methods for t.test() and wilcox.test() now catch when
    paired is passed, addressing PR#14359; use Pair(x1, x2) ~ 1 for a
    paired test.
  * The level reported in the browser prompt was often too large. It
    now shows the number of browser contexts on the stack.
  * For cbind() and rbind(), the optional deparse.level argument is
    now properly passed to methods, thanks to Mikael Jagan's PR#18579
    and comments there.
  * Some error and warning messages for large ('long vector')
    matrix(v, nr, nc) and dim(m) &lt;- d are now correct about sizes,
    using long long formatting, fixing PR#18612 (and more) reported
    by Mikael Jagan.
  * readChar(useBytes = TRUE) now terminates strings even when the
    underlying connection uses extra spaces in the input buffer.
    This fixes problems with extra garbage seen with gzip
    connections, PR#18605.
  * Named capture in PCRE regular expressions now works also with
    more than 127 named groups (PR#18588).
  * Datetime functions are now robust against long jumps when dealing
    with internal time zone changes.  This avoids confusing warnings
    about an invalid time zone, previously triggered by turning
    warnings into errors or handling them via tryCatch (PR#17966,
    PR#17780).
  * Datetime functions now restore even an empty TZ environment
    variable after internal time zone changes (PR#17724).  This makes
    results of datetime functions with this (typically unintentional)
    setting more predictable.
  * drop.terms(*) now drops response as by default, keep.response =
    FALSE, fixing PR#18564 thanks to Mikael Jagan.
  * dummy.coef(.) now also works for lm()-models with character
    categorical predictor variables rather than factor ones, fixing
    PR#18635 reported by Jinsong Zhao.
  * formals(f) &lt;- formals(f) now also works for a function w/o
    arguments and atomic _constant_ body(f).
  * Correct as.function(&lt;invalid list&gt;, .)'s error message.
  * removeSource() is yet more thorough in finding and removing
    "srcref" and the other source references from parsed R language
    chunks, fixing PR#18638 thanks to Andrew Simmons.
  * dgeom() is more accurate now, notably when its result is very
    small, fixing PR#18642 thanks to the proposal of Morten Welinder,
    also improving other instances where C level binom_raw(x, n, ..)
    has x == 0 or x== n.
  * warning() with options(warn = 1) has improved output for
    multi-line messages.
  * axis.Date() and axis.POSIXct() now respect the par("lab") setting
    for the number of pretty() intervals.
  * Comparisons for language objects (which are based on deparsing)
    are now more careful about using accurate deparsed results
    (PR#18676).
  * Plain-text help (Rd2txt) now correctly preserves blank lines
    following single-line \dontrun code.
  * &lt;POSIXlt&gt;[*] no longer sets wrong "balanced" attribute, fixing
    PR#18681 thanks to Mikael Jagan.
  * str(&lt;classed-call&gt;) now deparses the call as expected, fixing
    PR#18684, reported by Dave Slager.
  * In Rd examples, code following the closing brace of a \dontrun,
    \dontshow or \donttest tag on the same line is no longer skipped
    when R CMD check runs the examples.
  * as.data.frame(matrix(*, ncol=0)) now gets valid names() and
    colnames(); reported by Davis Vaughan on the R-devel list.
  * Internal Mathlib function stirlerr(n) is now almost fully
    (52-bit) accurate for all n &gt;= ~5.9 and more accurate also in the
    range 1 -- 5.9.  This entails small ("after 12th decimal")
    changes in density functions, e.g., dgamma() in _some_ regions of
    their support.  The fix was partly prompted by Morten Welinder's
    PR#18640.
  * Numbers like 9876543.2 are now considered non-integer by Mathlib
    internal R_nonint(), amending original fix of PR#15734.
  * Rd comment lines no longer cause broken paragraphs in the
    rendered PDF and plain-text help. In code blocks, pure comment
    lines (starting with %) no longer produce an empty line.
  * xtabs(Freq ~ .) now consistently defaults to na.action = na.pass,
    using na.rm = FALSE (added as an argument) when summing over Freq
    (PR#17770).
  * tools::testInstalledPackage() is no longer silent about failures
    from running examples or tests and its return code no longer
    ignores failures from checking vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1718366400">- CHANGES IN R 4.4.1:
  C-LEVEL FACILITIES:
  * Functions R_atof and R_strtod declared in header R_ext/Utils.h
    are now documented in 'Writing R Extensions' and so formally part
    of the API.
  * The non-API entry points Rf_setSVector, Rf_StringFalse,
    Rf_StringTrue and Rf_isBlankString have been added to those
    reported by R CMD check.
  * The new function Rf_allocLang is now available. This provides an
    alternative to the idiom of calling Rf_allocList followed by
    SET_TYPEOF.
  UTILITIES:
  * R CMD check now reports as warnings what gfortran calls 'Fortran
    2018 deleted features', all of which have long been marked as
    'obsolescent' and some of which were deleted in Fortran 2008 or
    earlier.  Fortran compilers are no longer required to support
    these.
  BUG FIXES:
  * as.numeric(), scan(), type.convert() and other places which use
    the internal C function R_strtod now require a _non-empty_ digit
    sequence in a decimal or binary exponent.  This aligns with the
    C/POSIX standard for strtod and with ?NumericConstants.
  * as.data.frame(m, make.names=NA) now works correctly for a matrix
    m with NA's in row names.
  * The error message from &lt;POSIXlt&gt;[["hour"]] and similar now
    mentions *[[, "hour"]], as wished for in PR#17409 and proposed by
    Michael Chirico.
  * qbinom() and potentially qpois(), qnbinom(), no longer sometimes
    fail accurate inversion (of pbinom(), etc), thanks to Christopher
    Chang's report and patch in PR#18711.
  * The internal help server on Windows can again serve requests sent
    in quick succession, fixing a regression in R 4.4.0.
  * debugcall(&lt;S3Generic&gt;()) now also works when a corresponding
    S4-generic version is in the methods cache (PR#18143).
  * Package tools' toTitleCase(ch0) now returns character(0) when ch0
    is of zero length; fixing PR#18724, reported by David Hugh Jones.
  * R CMD check is no longer broken (without a check result and no
    explanation in 00check.log) for a package which declares an
    invalid VignetteBuilder in DESCRIPTION but has no vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1730376000">- CHANGES IN R 4.4.2:
  C-LEVEL FACILITIES:
  * The S-compatibility macros F77_COM and F77_COMDECL defined in
    header R_ext/RS.h are deprecated and will be removed shortly.  We
    could find no record of their use.
  BUG FIXES:
  * Mathlib function lgammacor(x) no longer warns about underflow to
    zero for large x.
  * Text widths and heights were incorrectly reported by the Quartz
    device if the drawing context didn't exist yet (typically when
    drawing off-screen to a window that is yet to appear, see
    PR#18591).
  * The Quartz device could segfault in cases where paths with spaces
    are used in the new glyph drawing API.  Thanks to Tomek
    Gieorgijewski (PR#18758).
  * On macOS in R CRAN builds, it is again possible to read
    little-endian UTF-16 text with a BOM from a connection using
    encoding="UTF-16".  Users building R from source should avoid
    using the system libiconv in macOS 14.1 and later.
  * methods' internal .requirePackage() now re-enables primitive
    method dispatch when needed; thanks to Ivan Krylov for
    demystifying CRAN package check failures on the R-devel mailing
    list.</changelog>
</package>
<package pkgid="e94fa4da6a99559f75ca1dbcc9c227ebded20eb1ddcf4ac396156a61868fc401cd45ca3188553b38c3c9beaa777ebd3098f180cd9e08fb3cf53c23af01f9c37e" name="R-foreign" arch="i586">
  <version epoch="0" ver="0.8.87" rel="51.0.2.2.sr20241103"/>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1620302400">- To get in sync with d:l:R:autoCRAN the Matrix package's split
  in -devel was reversed.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339200">- improved spec file according to comments of dimstar in
  https://build.opensuse.org/request/show/892685</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339201">- CHANGES IN R 4.1.0:
  FUTURE DIRECTIONS:
  * It is planned that the 4.1.x series will be the last to support
    32-bit Windows, with production of binary packages for that
    series continuing until early 2023.
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Data set esoph in package datasets now provides the correct
    numbers of controls; previously it had the numbers of cases added
    to these.  (Reported by Alexander Fowler in PR#17964.)
  NEW FEATURES:
  * www.omegahat.net is no longer one of the repositories known by
    default to setRepositories().  (Nowadays it only provides source
    packages and is often unavailable.)
  * Function package_dependencies() (in package tools) can now use
    different dependency types for direct and recursive dependencies.
  * The checking of the size of tarball in R CMD check --as-cran
    &lt;pkg&gt; may be tweaked via the new environment variable
    _R_CHECK_CRAN_INCOMING_TARBALL_THRESHOLD_, as suggested in
    PR#17777 by Jan Gorecki.
  * Using c() to combine a factor with other factors now gives a
    factor, an ordered factor when combining ordered factors with
    identical levels.
  * apply() gains a simplify argument to allow disabling of
    simplification of results.
  * The format() method for class "ftable" gets a new option justify.
    (Suggested by Thomas Soeiro.)
  * New ...names() utility.  (Proposed by Neal Fultz in PR#17705.)
  * type.convert() now warns when its as.is argument is not
    specified, as the help file always said it _should_.  In that
    case, the default is changed to TRUE in line with its change in
    read.table() (related to stringsAsFactor) in R 4.0.0.
  * When printing list arrays, classed objects are now shown _via_
    their format() value if this is a short enough character string,
    or by giving the first elements of their class vector and their
    length.
  * capabilities() gets new entry "Rprof" which is TRUE when R has
    been configured with the equivalent of --enable-R-profiling (as
    it is by default).  (Related to Michael Orlitzky's report
    PR#17836.)
  * str(xS4) now also shows extraneous attributes of an S4 object
    xS4.
  * Rudimentary support for vi-style tags in rtags() and R CMD rtags
    has been added.  (Based on a patch from Neal Fultz in PR#17214.)
  * checkRdContents() is now exported from tools; it and also
    checkDocFiles() have a new option chkInternal allowing to check
    Rd files marked with keyword "internal" as well.  The latter can
    be activated for R CMD check via environment variable
    _R_CHECK_RD_INTERNAL_TOO_.
  * New functions numToBits() and numToInts() extend the raw
    conversion utilities to (double precision) numeric.
  * Functions URLencode() and URLdecode() in package utils now work
    on vectors of URIs.  (Based on patch from Bob Rudis submitted
    with PR#17873.)
  * path.expand() can expand ~user on most Unix-alikes even when
    readline is not in use.  It tries harder to expand ~, for example
    should environment variable HOME be unset.
  * For HTML help (both dynamic and static), Rd file links to help
    pages in external packages are now treated as references to
    topics rather than file names, and fall back to a file link only
    if the topic is not found in the target package. The earlier rule
    which prioritized file names over topics can be restored by
    setting the environment variable _R_HELP_LINKS_TO_TOPICS_ to a
    false value.
  * c() now removes NULL arguments before dispatching to methods,
    thus simplifying the implementation of c() methods, _but_ for
    back compatibility keeps NULL when it is the first argument.
    (From a report and patch proposal by Lionel Henry in PR#17900.)
  * Vectorize()'s result function's environment no longer keeps
    unneeded objects.
  * Function ...elt() now propagates visibility consistently with
    ..n.  (Thanks to Lionel Henry's PR#17905.)
  * capture.output() no longer uses non-standard evaluation to
    evaluate its arguments.  This makes evaluation of functions like
    parent.frame() more consistent.  (Thanks to Lionel Henry's
    PR#17907.)
  * packBits(bits, type="double") now works as inverse of
    numToBits().  (Thanks to Bill Dunlap's proposal in PR#17914.)
  * curlGetHeaders() has two new arguments, timeout to specify the
    timeout for that call (overriding getOption("timeout")) and TLS
    to specify the minimum TLS protocol version to be used for
    https:// URIs (_inter alia_ providing a means to check for sites
    using deprecated TLS versions 1.0 and 1.1).
  * For nls(), an optional constant scaleOffset may be added to the
    denominator of the relative offset convergence test for cases
    where the fit of a model is expected to be exact, thanks to a
    proposal by John Nash.  nls(*, trace=TRUE) now also shows the
    convergence criterion.
  * Numeric differentiation _via_ numericDeriv() gets new optional
    arguments eps and central, the latter for taking central divided
    differences.  The latter can be activated for nls() via
    nls.control(nDcentral = TRUE).
  * nls() now passes the trace and control arguments to getInitial(),
    notably for all self-starting models, so these can also be fit in
    zero-noise situations via a scaleOffset.  For this reason, the
    initial function of a selfStart model must now have ... in its
    argument list.
  * bquote(splice = TRUE) can now splice expression vectors with
    attributes: this makes it possible to splice the result of
    parse(keep.source = TRUE).  (Report and patch provided by Lionel
    Henry in PR#17869.)
  * textConnection() gets an optional name argument.
  * get(), exists(), and get0() now signal an error if the first
    argument has length greater than 1.  Previously additional
    elements were silently ignored.  (Suggested by Antoine Fabri on
    R-devel.)
  * R now provides a shorthand notation for creating functions, e.g.
    \(x) x + 1 is parsed as function(x) x + 1.
  * R now provides a simple native forward pipe syntax |&gt;.  The
    simple form of the forward pipe inserts the left-hand side as the
    first argument in the right-hand side call.  The pipe
    implementation as a syntax transformation was motivated by
    suggestions from Jim Hester and Lionel Henry.
  * all.equal(f, g) for functions now by default also compares their
    environment(.)s, notably via new all.equal method for class
    function.  Comparison of nls() fits, e.g., may now need
    all.equal(m1, m2, check.environment = FALSE).
  * .libPaths() gets a new option include.site, allowing to _not_
    include the site library.  (Thanks to Dario Strbenac's suggestion
    and Gabe Becker's PR#18016.)
  * Lithuanian translations are now available.  (Thanks to Rimantas
    Zakauskas.)
  * names() now works for DOTSXP objects.  On the other hand, in
    R-lang, the R language manual, we now warn against relying on the
    structure or even existence of such dot-dot-dot objects.
  * all.equal() no longer gives an error on DOTSXP objects.
  * capabilities("cairo") now applies only to the file-based devices
    as it is now possible (if very unusual) to build R with Cairo
    support for those but not for X11().
  * There is optional support for tracing the progress of
    loadNamespace() - see its help.
  * (Not Windows.)  l10n_info() reports an additional element, the
    name of the encoding as reported by the OS (which may differ from
    the encoding part (if any) of the result from
    Sys.getlocale("LC_CTYPE").
  * New function gregexec() which generalizes regexec() to find _all_
    disjoint matches and well as all substrings corresponding to
    parenthesized subexpressions of the given regular expression.
    (Contributed by Brodie Gaslam.)
  * New function charClass() in package utils to query the
    wide-character classification functions in use (such as
    iswprint).
  * The names of quantile()'s result no longer depend on the global
    getOption("digits"), but quantile() gets a new optional argument
    digits = 7 instead.
  * grep(), sub(), regexp and variants work considerably faster for
    long factors with few levels.  (Thanks to Michael Chirico's
    PR#18063.)
  * Provide grouping of x11() graphics windows within a window
    manager such as Gnome or Unity; thanks to a patch by Ivan Krylov
    posted to R-devel.
  * The split() method for class data.frame now allows the f argument
    to be specified as a formula.
  * sprintf now warns on arguments unused by the format string.
  * New palettes "Rocket" and "Mako" for hcl.colors() (approximating
    palettes of the same name from the 'viridisLite' package).
    Contributed by Achim Zeileis.
  * The base environment and its namespace are now locked (so one can
    no longer add bindings to these or remove from these).
  * Rterm handling of multi-byte characters has been improved,
    allowing use of such characters when supported by the current
    locale.
  * Rterm now accepts ALT+ +xxxxxxxx sequences to enter Unicode
    characters as hex digits.
  * Environment variable LC_ALL on Windows now takes precedence over
    LC_CTYPE and variables for other supported categories, matching
    the POSIX behaviour.
  * duplicated() and anyDuplicated() are now optimized for integer
    and real vectors that are known to be sorted via the ALTREP
    framework. Contributed by Gabriel Becker via PR#17993.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 14
    and so packages that provide graphics devices should be
    reinstalled.
  * Graphics devices should now specify deviceVersion to indicate
    what version of the graphics engine they support.
  * Graphics devices can now specify deviceClip.  If TRUE, the
    graphics engine will never perform any clipping of output itself.
    The clipping that the graphics engine does perform (for both
    canClip = TRUE and canClip = FALSE) has been improved to avoid
    producing unnecessary artifacts in clipped output.
  * The grid package now allows gpar(fill) to be a linearGradient(),
    a radialGradient(), or a pattern().  The viewport(clip) can now
    also be a grob, which defines a clipping path, and there is a new
    viewport(mask) that can also be a grob, which defines a mask.
    These new features are only supported so far on the Cairo-based
    graphics devices and on the pdf() device.
  * (Not Windows.)  A warning is given when a Cairo-based type is
    specified for a png(), jpeg(), tiff() or bmp() device but Cairo
    is unsupported (so type = "Xlib" is tried instead).
  * grSoftVersion() now reports the versions of FreeType and
    FontConfig if they are used directly (not _via_ Pango), as is
    most commonly done on macOS.
  C-LEVEL FACILITIES:
  * The _standalone_ libRmath math library and R's C API now provide
    log1pexp() again as documented, and gain log1mexp().
  INSTALLATION on a UNIX-ALIKE:
  * configure checks for a program pkgconf if program pkg-config is
    not found.  These are now only looked for on the path (like
    almost all other programs) so if needed specify a full path to
    the command in PKG_CONFIG, for example in file config.site.
  * C99 function iswblank is required - it was last seen missing ca
    2003 so the workaround has been removed.
  * There are new configure options --with-internal-iswxxxxx,
  - -with-internal-towlower and --with-internal-wcwidth which allows
    the system functions for wide-character classification,
    case-switching and width (wcwidth and wcswidth) to be replaced by
    internal ones.  The first has long been used on macOS, AIX (and
    Windows) but this enables it to be unselected there and selected
    for other platforms (it is the new default on Solaris).  The
    second is new in this version of R and is selected by default on
    macOS and Solaris.  The third has long been the default and
    remains so as it contains customizations for East Asian
    languages.
    System versions of these functions are often minimally
    implemented (sometimes only for ASCII characters) and may not
    cover the full range of Unicode points: for example Solaris (and
    Windows) only cover the Basic Multilingual Plane.
  * Cairo installations without X11 are more likely to be detected by
    configure, when the file-based Cairo graphics devices will be
    available but not X11(type = "cairo").
  * There is a new configure option --with-static-cairo which is the
    default on macOS.  This should be used when only static cairo
    (and where relevant, Pango) libraries are available.
  * Cairo-based graphics devices on platforms without Pango but with
    FreeType/FontConfig will make use of the latter for font
    selection.
  LINK-TIME OPTIMIZATION on a UNIX-ALIKE:
  * Configuring with flag --enable-lto=R now also uses LTO when
    installing the recommended packages.
  * R CMD INSTALL and R CMD SHLIB have a new flag --use-LTO to use
    LTO when compiling code, for use with R configured with
  - -enable-lto=R.  For R configured with --enable-lto, they have
    the new flag --no-use-LTO.
    Packages can opt in or out of LTO compilation _via_ a UseLTO
    field in the DESCRIPTION file.  (As usual this can be overridden
    by the command-line flags.)
  BUILDING R on Windows:
  * for GCC &gt;= 8, FC_LEN_T is defined in config.h and hence character
    lengths are passed from C to Fortran in _inter alia_ BLAS and
    LAPACK calls.
  * There is a new text file src/gnuwin32/README.compilation, which
    outlines how C/Fortran code compilation is organized and
    documents new features:
  * R can be built with Link-Time Optimization with a suitable
    compiler - doing so with GCC 9.2 showed several
    inconsistencies which have been corrected.
  * There is support for cross-compiling the C and Fortran code
    in R and standard packages on suitable (Linux) platforms.
    This is mainly intended to allow developers to test later
    versions of compilers - for example using GCC 9.2 or 10.x has
    detected issues that GCC 8.3 in Rtools40 does not.
  * There is experimental support for cross-building R packages
    with C, C++ and/or Fortran code.
  * The R installer can now be optionally built to support a single
    architecture (only 64-bit or only 32-bit).
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++14 where
    available (which it is on all currently checked platforms): if
    not (as before) C++11 is used if available otherwise C++ is not
    supported.
    Packages which specify C++11 will still be installed using C++11.
    C++14 compilers may give deprecation warnings, most often for
    std::random_shuffle (deprecated in C++14 and removed in C++17).
    Either specify C++11 (see 'Writing R Extensions') or modernize
    the code and if needed specify C++14.  The latter has been
    supported since R 3.4.0 so the package's DESCRIPTION would need
    to include something like
    Depends: R (&gt;= 3.4)
  PACKAGE INSTALLATION on Windows:
  * R CMD INSTALL and R CMD SHLIB make use of their flag --use-LTO
    when the LTO_OPT make macro is set in file etc/${R_ARCH}/Makeconf
    or in a personal/site Makevars file.  (For details see 'Writing R
    Extensions' SS4.5.)
    This provides a valuable check on code consistency.  It does work
    with GCC 8.3 as in Rtools40, but that does not detect everything
    the CRAN checks with current GCC do.
  PACKAGE INSTALLATION on macOS:
  * The default personal library directory on builds with
  - -enable-aqua (including CRAN builds) now differs by CPU type,
    one of
    ~/Library/R/x86_64/x.y/library
    ~/Library/R/arm64/x.y/library
    This uses the CPU type R (and hence the packages) were built for,
    so when a x86_64 build of R is run under Rosetta emulation on an
    arm64 Mac, the first is used.
  UTILITIES:
  * R CMD check can now scan package functions for bogus return
    statements, which were possibly intended as return() calls (wish
    of PR#17180, patch by Sebastian Meyer). This check can be
    activated via the new environment variable
    _R_CHECK_BOGUS_RETURN_, true for --as-cran.
  * R CMD build omits tarballs and binaries of previous builds from
    the top-level package directory.  (PR#17828, patch by Sebastian
    Meyer.)
  * R CMD check now runs sanity checks on the use of LazyData, for
    example that a data directory is present and that
    LazyDataCompression is not specified without LazyData and has a
    documented value.  For packages with large LazyData databases
    without specifying LazyDataCompression, there is a reference to
    the code given in 'Writing R Extensions' SS1.1.6 to test the
    choice of compression (as in all the CRAN packages tested a
    non-default method was preferred).
  * R CMD build removes LazyData and LazyDataCompression fields from
    the DESCRIPTION file of packages without a data directory.
  ENCODING-RELATED CHANGES:
  * The parser now treats \Unnnnnnnn escapes larger than the upper
    limit for Unicode points (\U10FFFF) as an error as they cannot be
    represented by valid UTF-8.
    Where such escapes are used for outputting non-printable
    (including unassigned) characters, 6 hex digits are used (rather
    than 8 with leading zeros).  For clarity, braces are used, for
    example \U{0effff}.
  * The parser now looks for non-ASCII spaces on Solaris (as
    previously on most other OSes).
  * There are warnings (including from the parser) on the use of
    unpaired surrogate Unicode points such as \uD834.  (These cannot
    be converted to valid UTF-8.)
  * Functions nchar(), tolower(), toupper() and chartr() and those
    using regular expressions have more support for inputs with a
    marked Latin-1 encoding.
  * The character-classification functions used (by default) to
    replace the system iswxxxxx functions on Windows, macOS and AIX
    have been updated to Unicode 13.0.0.
    The character-width tables have been updated to include new
    assignments in Unicode 13.0.0.
  * The code for evaluating default (extended) regular expressions
    now uses the same character-classification functions as the rest
    of R (previously they differed on Windows, macOS and AIX).
  * There is a build-time option to replace the system's
    wide-character wctrans C function by tables shipped with R: use
    configure option --with-internal-towlower or (on Windows)
  - DUSE_RI18N_CASE in CFLAGS when building R.  This may be needed
    to allow tolower() and toupper() to work with Unicode characters
    beyond the Basic Multilingual Plane where not supported by system
    functions (e.g. on Solaris where it is the new default).
  * R is more careful when truncating UTF-8 and other multi-byte
    strings that are too long to be printed, passed to the system or
    libraries or placed into an internal buffer.  Truncation will no
    longer produce incomplete multibyte characters.
  DEPRECATED AND DEFUNCT:
  * Function plclust() from the package stats and
    package.dependencies(), pkgDepends(), getDepList(),
    installFoundDepends(), and vignetteDepends() from package tools
    are defunct.
  * Defunct functions checkNEWS() and readNEWS() from package tools
    and CRAN.packages() from utils have been removed.
  * R CMD config CXXCPP is defunct (it was deprecated in R 3.6.2).
  * parallel::detectCores() drops support for Irix (retired in 2013).
  * The LINPACK argument to chol.default(), chol2inv(),
    solve.default() and svd() has been defunct since R 3.1.0.  It was
    silently ignored up to R 4.0.3 but now gives an error.
  * Subsetting/indexing, such as ddd[*] or ddd$x on a DOTSXP
    (dot-dot-dot) object ddd has been disabled; it worked by accident
    only and was undocumented.
  BUG FIXES:
  * Many more C-level allocations (mainly by malloc and strdup) are
    checked for success with suitable alternative actions.
  * Bug fix for replayPlot(); this was turning off graphics engine
    display list recording if a recorded plot was replayed in the
    same session.  The impact of the bug became visible if resize the
    device after replay OR if attempted another savePlot() after
    replay (empty display list means empty screen on resize or empty
    saved plot).
  * R CMD check etc now warn when a package exports non-existing S4
    classes or methods, also in case of no "methods" presence.
    (Reported by Alex Bertram; reproducible example and patch by
    Sebastian Meyer in PR#16662.)
  * boxplot() now also accepts calls for labels such as ylab, the
    same as plot().  (Reported by Marius Hofert.)
  * The help page for xtabs() now correctly states that addNA is
    setting na.action = na.pass among others.  (Reported as PR#17770
    by Thomas Soeiro.)
  * The R CMD check &lt;pkg&gt; gives a longer and more comprehensible
    message when DESCRIPTION misses dependencies, e.g., in Imports:.
    (Thanks to the contributors of PR#17179.)
  * update.default() now calls the generic update() on the formula to
    work correctly for models with extended formulas.  (As reported
    and suggested by Neal Fultz in PR#17865.)
  * The horizontal position of leaves in a dendrogram is now correct
    also with center = FALSE.  (PR#14938, patch from Sebastian
    Meyer.)
  * all.equal.POSIXt() no longer warns about and subsequently ignores
    inconsistent "tzone" attributes, but describes the difference in
    its return value (PR#17277).  This check can be disabled _via_
    the new argument check.tzone = FALSE as suggested by Sebastian
    Meyer.
  * as.POSIXct() now populates the "tzone" attribute from its tz
    argument when x is a logical vector consisting entirely of NA
    values.
  * x[[2^31]] &lt;- v now works.  (Thanks to the report and patch by
    Suharto Anggono in PR#17330.)
  * In log-scale graphics, axis() ticks and label positions are now
    computed more carefully and symmetrically in their range,
    typically providing _more_ ticks, fulfilling wishes in PR#17936.
    The change really corresponds to an improved axisTicks() (package
    grDevices), potentially influencing grid and lattice, for
    example.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now correct to at
    least five digits where it was catastrophically wrong,
    previously.
  * sum(df) and similar "Summary"- and "Math"-group member functions
    now work for data frames df with logical columns, notably also of
    zero rows.  (Reported to R-devel by Martin "b706".)
  * unsplit() had trouble with tibbles due to unsound use of rep(NA,
    len)-indexing, which should use NA_integer_ (Reported to R-devel
    by Mario Annau.)
  * pnorm(x, log.p = TRUE) underflows to -Inf slightly later.
  * show(&lt;hidden S4 generic&gt;) prints better and without quotes for
    non-hidden S4 generics.
  * read.table() and relatives treated an "NA" column name as missing
    when check.names = FALSE PR#18007.
  * Parsing strings containing UTF-16 surrogate pairs such as
    "\uD834\uDD1E" works better on some (uncommon) platforms.
    sprintf("%X", utf8ToInt("\uD834\uDD1E")) should now give "1D11E"
    on all platforms.
  * identical(x,y) is no longer true for differing DOTSXP objects,
    fixing PR#18032.
  * str() now works correctly for DOTSXP and related exotics, even
    when these are doomed.
    Additionally, it no longer fails for lists with a class and
    "irregular" method definitions such that e.g. lapply(*) will
    necessarily fail, as currently for different igraph objects.
  * Too long lines in environment files (e.g. Renviron) no longer
    crash R. This limit has been increased to 100,000 bytes.
    (PR#18001.)
  * There is a further workaround for FreeType giving incorrect
    italic font faces with cairo-based graphics devices on macOS.
  * add_datalist(*, force = TRUE) (from package tools) now actually
    updates an existing data/datalist file for new content.  (Thanks
    to a report and patch by Sebastian Meyer in PR#18048.)
  * cut.Date() and cut.POSIXt() could produce an empty last interval
    for breaks = "months" or breaks = "years".  (Reported as PR#18053
    by Christopher Carbone.)
  * Detection of the encoding of 'regular' macOS locales such as
    en_US (which is UTF-8) had been broken by a macOS change:
    fortunately these are now rarely used with en_US.UTF-8 being
    preferred.
  * sub() and gsub(pattern, repl, x, *) now keep attributes of x such
    as names() also when pattern is NA (PR#18079).
  * Time differences ("difftime" objects) get a replacement and a
    rep() method to keep "units" consistent.  (Thanks to a report and
    patch by Nicolas Bennett in PR#18066.)
  * The \RdOpts macro, setting defaults for \Sexpr options in an Rd
    file, had been ineffective since R 2.12.0: it now works again.
    (Thanks to a report and patch by Sebastian Meyer in PR#18073.)
  * mclapply and pvec no longer accidentally terminate parallel
    processes started before by mcparallel or related calls in
    package parallel (PR#18078).
  * grep and other functions for evaluating (extended) regular
    expressions handle in Unicode also strings not explicitly flagged
    UTF-8, but flagged native when running in UTF-8 locale.
  * Fixed a crash in fifo implementation on Windows (PR#18031).
  * Binary mode in fifo on Windows is now properly detected from
    argument open (PR#15600, PR#18031).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1622808000">- The line %{__install} -m 755 -d %{_infodir}
  no longer works in TW or Factory.
  But without that line it works everywhere. So this instruction
  was commented out of the spec file.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1628596800">- CHANGES IN R 4.1.1:
  NEW FEATURES:
  * require(pkg, quietly = TRUE) is quieter and in particular does
    not warn if the package is not found.
  DEPRECATED AND DEFUNCT:
  * Use of ftp:// URIs should be regarded as deprecated, with
    on-going support confined to method = "libcurl" and not routinely
    tested.  (Nowadays no major browser supports them.)
  * The non-default method = "internal" is deprecated for http:// and
    ftp:// URIs for both download.file and url.
  * On Windows, method = "wininet" is deprecated for http://,
    https:// and ftp:// URIs for both download.file and url.  (A
    warning is only given for ftp://.)
    For ftp:// URIs the default method is now "libcurl" if available
    (which it is on CRAN builds).
    method = "wininet" remains the default for http:// and https://
    URIs but if libcurl is available, using method = "libcurl" is
    preferred.
  INSTALLATION:
  * make check now works also without a LaTeX installation.  (Thanks
    to Sebastian Meyer's PR#18103.)
  BUG FIXES:
  * make check-devel works again in an R build configured with
  - -without-recommended-packages.
  * qnbinom(p, size, mu) for large size/mu is correct now in a range
    of cases (PR#18095); similarly for the (size, prob)
    parametrization of the negative binomial.  Also qpois() and
    qbinom() are better and or faster for extreme cases.  The
    underlying C code has been modularized and is common to all four
    cases of discrete distributions.
  * gap.axis is now part of the axis() arguments which are passed
    from bxp(), and hence boxplot().  (Thanks to Martin Smith's
    report and suggestions in PR#18109.)
  * .First and .Last can again be set from the site profile.
  * seq.int(from, to, *) and seq.default(..) now work better in large
    range cases where from-to is infinite where the two boundaries
    are finite.
  * all.equal(x,y) now returns TRUE correctly also when several
    entries of abs(x) and abs(y) are close to .Machine$double.xmax,
    the largest finite numeric.
  * model.frame() now clears the object bit when removing the class
    attribute of a value via na.action (PR#18100).
  * charClass() now works with multi-character strings on Windows
    (PR#18104, fixed by Bill Dunlap).
  * encodeString() on Solaris now works again in Latin-1 encoding on
    characters represented differently in UTF-8.  Support for
    surrogate pairs on Solaris has been improved.
  * file.show() on Windows now works with non-ASCII path names
    representable in the current native encoding (PR#18132).
  * Embedded R on Windows can now find R home directory via the
    registry even when installed only for the current user
    (PR#18135).
  * pretty(x) with finite x now returns finite values also in the
    case where the extreme x values are close in size to the maximal
    representable number .Machine$double.xmax.
    Also, it's been tweaked for very small ranges and when a boundary
    is close (or equal) to zero; e.g., pretty(c(0,1e-317)) no longer
    has negative numbers, currently still warning about a very small
    range, and pretty(2^-(1024 - 2^-1/(c(24,10)))) is more accurate.
  * The error message for not finding vignette files when weaving has
    correct file sizes now. (Thanks to Sebastian Meyer's PR#18154.)
  * dnbinom(20, &lt;large&gt;, 1) now correctly gives 0, and similar cases
    are more accurate with underflow precaution.  (Reported by Francisco Vera Alcivar in PR#18072.)</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635163200">- repaired https://bugzilla.suse.com/show_bug.cgi?id=1191380
  (rpmacros now go to rpmmacrodir)
- minor clean-ups in spec file</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635768000">- CHANGES IN R 4.1.2:
  C-LEVEL FACILITIES:
  * The workaround in headers R.h and Rmath.h (using namespace std;)
    for the Oracle Developer Studio compiler is no longer needed now
    C++11 is required so has been removed.  A couple more usages of
    log() (which should have been std::log()) with an int argument
    are reported on Solaris.
  * The undocumented limit of 4095 bytes on messages from the
    S-compatibility macros PROBLEM and MESSAGE is now documented and
    longer messages will be silently truncated rather than
    potentially causing segfaults.
  * If the R_NO_SEGV_HANDLER environment variable is non-empty, the
    signal handler for SEGV/ILL/BUS signals (which offers recovery
    user interface) is not set. This allows more reliable debugging
    of crashes that involve the console.
  DEPRECATED AND DEFUNCT:
  * The legacy S-compatibility macros PROBLEM, MESSAGE, ERROR, WARN,
    WARNING, RECOVER, ... are deprecated and will be hidden in R
    4.2.0. R's native interface of Rf_error and Rf_warning has long
    been preferred.
  BUG FIXES:
  * .mapply(F, dots, .) no longer segfaults when dots is not a list
    and uses match.fun(F) as always documented; reported by Andrew
    Simmons in PR#18164.
  * hist(&lt;Date&gt;, ...) and hist(&lt;POSIXt&gt;, ...)  no longer pass
    arguments for rect() (such as col and density) to axis().
    (Thanks to Sebastian Meyer's PR#18171.)
  * \Sexpr{ch} now preserves Encoding(ch). (Thanks to report and
    patch by Jeroen Ooms in PR#18152.)
  * Setting the RNG to "Marsaglia-Multicarry" e.g., by RNGkind(), now
    warns in more places, thanks to Andr'e Gillibert's report and
    patch in PR#18168.
  * gray(numeric(), alpha=1/2) no longer segfaults, fixing PR#18183,
    reported by Till Krenz.
  * Fixed dnbinom(x, size=&lt;very_small&gt;, .., log=TRUE) regression,
    reported by Martin Morgan.
  * as.Date.POSIXlt(x) now keeps names(x), thanks to Davis Vaughan's
    report and patch in PR#18188.
  * model.response() now strips an "AsIs" class typically, thanks to
    Duncan Murdoch's report and other discussants in PR#18190.
  * try() is considerably faster in case of an error and long call,
    as e.g., from some do.call().  Thanks to Alexander Kaever's
    suggestion posted to R-devel.
  * qqline(y = &lt;object&gt;) such as y=I(.), now works, see also
    PR#18190.
  * Non-integer mgp par() settings are now handled correctly in
    axis() and mtext(), thanks to Mikael Jagan and Duncan Murdoch's
    report and suggestion in PR#18194.
  * formatC(x) returns length zero character() now, rather than ""
    when x is of length zero, as documented, thanks to Davis
    Vaughan's post to R-devel.
  * removeSource(fn) now retains (other) attributes(fn).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1647000000">- CHANGES IN R 4.1.3:
  NEW FEATURES:
  * The default version of Bioconductor has been changed to 3.14.
    (This is used by setRepositories and the menus in GUIs.)
  UTILITIES:
  * R CMD check --as-cran has a workaround for a bug in versions of
    file up to at least 5.41 which mis-identify DBF files last
    changed in 2022 as executables.
  C-LEVEL FACILITIES:
  * The legacy S-compatibility macros SINGLE_* in R_ext/Constants.h
    (included by R.h) are deprecated and will be removed in R 4.2.0.
  BUG FIXES:
  * Initialization of self-starting nls() models with initialization
    functions following the pre-R-4.1.0 API (without the ...
    argument) works again for now, with a deprecation warning.
  * Fixed quoting of ~autodetect~ in Java setting defaults to avoid
    inadvertent user lookup due to leading ~, reported in PR#18231 by
    Harold Gutch.
  * substr(., start, stop) &lt;- v now treats _negative_ stop values
    correctly.  Reported with a patch in PR#18228 by Brodie Gaslam.
  * Subscripting an array x without dimnames by a
    length(dim(x))-column character matrix gave "random" non-sense,
    now an error; reported in PR#18244 by Mikael Jagan.
  * ...names() now matches names(list(...)) closely, fixing PR#18247.
  * all.equal(*, scale = s) now works as intended when length(s) &gt; 1,
    partly thanks to Michael Chirico's PR#18272.
  * print(x) for long vectors x now also works for named atomic
    vectors or lists and prints the correct number when reaching the
    getOption("max.print") limit; partly thanks to a report and
    proposal by Hugh Parsonage to the R-devel list.
  * all.equal(&lt;selfStart&gt;, *) no longer signals a deprecation
    warning.
  * reformulate(*, response=r) gives a helpful error message now when
    length(r) &gt; 1, thanks to Bill Dunlap's PR#18281.
  * Modifying globalCallingHandlers inside withCallingHandlers() now
    works or fails correctly, thanks to Henrik Bengtsson's PR#18257.
  * hist(&lt;Date&gt;, breaks = "days") and hist(&lt;POSIXt&gt;, breaks = "secs")
    no longer fail for inputs of length 1.
  * qbeta(.001, .9, .009) and similar cases now converge correctly
    thanks to Ben Bolker's report in PR#17746.
  * window(x, start, end) no longer wrongly signals "'start' cannot
    be after 'end'", fixing PR#17527 and PR#18291.
  * data() now checks that its (rarely used) list argument is a
    character vector - a couple of packages passed other types and
    gave incorrect results.
  * which() now checks its arr.ind argument is TRUE rather coercing
    to logical and taking the first element - which gave incorrect
    results in package code.
  * model.weights() and model.offset() more carefully extract their
    model components, thanks to Ben Bolker and Tim Taylor's R-devel
    post.
  * list.files(recursive = TRUE) now shows all broken symlinks
    (previously, some of them may have been omitted, PR#18296).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1650628800">- CHANGES IN R 4.2.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * The formula method of aggregate() now matches the generic in
    naming its first argument x (resolving PR#18299 by Thomas
    Soeiro).
    This means that calling aggregate() with a formula as a named
    first argument requires name formula in earlier versions of R and
    name x now, so portable code should not name the argument (code
    in many packages did).
  * Calling &amp;&amp; or || with either argument of length greater than one
    now gives a warning (which it is intended will become an error).
  * Calling if() or while() with a condition of length greater than
    one gives an error rather than a warning.  Consequently,
    environment variable _R_CHECK_LENGTH_1_CONDITION_ no longer has
    any effect.
  * Windows users should consult the WINDOWS section below for some
    profound changes including
  * Support for 32-bit builds has been dropped.
  * UTF-8 locales are used where available.
  * The default locations for the R installation and personal
    library folder have been changed.
    Thanks to Tomas Kalibera for months of work on the Windows port
    for this release.
  NEW FEATURES:
  * matrix(x, n, m) now warns in more cases where length(x) differs
    from n * m, as suggested by Abby Spurdle and Wolfgang Huber in
    Feb 2021 on the R-devel mailing list.
    This warning can be turned into an error by setting environment
    variable _R_CHECK_MATRIX_DATA_ to TRUE: R CMD check --as-cran
    does so unless it is already set.
  * Function file_test() in package utils gains tests for symlinks,
    readability and writability.
  * capabilities("libxml") is now false.
    The description of capabilities("http/ftp") now reflects that it
    refers to the default method, no longer the internal one.
  * simplify2array() gains an except argument for controlling the
    exceptions used by sapply().
  * Environment variables R_LIBS_USER and R_LIBS_SITE are both now
    set to the R system default if unset or empty, and can be set to
    NULL to indicate an empty list of user or site library
    directories.
  * The warning for axis()(-like) calls in cases of relatively small
    ranges (typically in log-scale situations) is slightly improved
    _and_ suppressed from explicit calls to .axisPars() as has always
    been the intention.
  * The contrasts setter function `contrasts&lt;-` gains an explicit
    default how.many = NULL rather than just using missing(how.many).
  * grid.pretty() gains a new optional argument n = 5.
  * There is a new function .pretty() with option bounds as a
    technical-utility version of pretty().  It and pretty() gain a
    new argument f.min with a better than back-compatible default.
  * Function grDevices::axisTicks() and related functions such as
    graphics::axis() work better, notably for the log scale; partly
    because of the pretty() improvements, but also because care is
    taken e.g., when ylim is finite but diff(ylim) is infinite.
  * nclass.FD() gains a digits option.
  * The R Mathlib internal C function bd0() (called indirectly from a
    dozen probability density and distribution functions such as
    dpois(), dbinom(), dgamma(), pgamma() _etc_) has been
    complemented by a more sophisticated and (mostly) more accurate C
    function ebd0(), currently called only by internal dpois_raw()
    improving accuracy for R level dpois() and potentially others
    calling it such as dnbinom(), dgamma() or pgamma().  (Thanks to
    Morten Welinder's PR#15628.)
  * write.ftable() gains sep = " " argument as suggested by Thomas
    Soeiro.
  * The names of the locale categories supported by R's
    Sys.getlocale() and Sys.setlocale() are now provided by variable
    .LC.categories in the base namespace.
  * The Date and POSIXt methods for hist() and the histogram method
    for plot() now also use the new default col = "lightgray" in
    consistency with the corresponding change to hist()'s default for
    R 4.0.0.
  * hist.default() gains new fuzz argument, and the histogram plot
    method no longer uses fractional axis ticks when displaying
    counts ("Frequency").
  * mapply() and hence Map() now also obey the "max-or-0-if-any"
    recycling rule, such that, e.g., Map(`+`, 1:3, 1[0]) is valid
    now.
  * as.character(&lt;obj&gt;) for "hexmode" or "octmode" objects now
    fulfils the important basic rule as.character(x)[j] ===
    as.character(x[j]).
  * The set utility functions, notably intersect() have been tweaked
    to be more consistent and symmetric in their two set arguments,
    also preserving a common mode.
  * substr(ch, start,end) &lt;- new now e.g., preserves names(ch); ditto
    for substring(), thanks to a patch from Brodie Gaslam.
  * plot(&lt;lm&gt;) gains a extend.ylim.f argument, in partial response to
    PR#15285; further PR#17784 is fixed thanks to several
    contributors and a patch by Elin Waring.  The Cook's dist
    contours get customizable via cook.col and cook.lty with a
    different default color and their legend is nicer by default and
    customizable via cook.legendChanges.
  * Attempting to subset an object that is not subsettable now
    signals an error of class notSubsettableError. The
    non-subsettable object is contained in the object field of the
    error condition.
  * Subscript-out-of-bounds errors are now signaled as errors of
    class subscriptOutOfBoundsError.
  * Stack-overflow errors are now signaled as errors inheriting from
    class stackOverflowError. See ?stackOverflowError for more
    details.
  * New partly experimental Sys.setLanguage() utility, solving the
    main problem of PR#18055.
  * gettext() and gettextf() get a new option trim = TRUE which when
    set to false allows translations for strings such as "Execution
    halted\n" typical for C code.
  * An experimental implementation of hash tables is now available.
    See ?hashtab for more details.
  * identical() gains a extptr.as.ref argument for requesting that
    external pointer objects be compared as reference objects.
  * reorder() gets an argument decreasing which it passes to sort()
    for level creation; based on the wish and patch by Thomas Soeiro
    in PR#18243.
  * as.vector() gains a data.frame method which returns a simple
    named list, also clearing a long standing 'FIXME' to enable
    as.vector(&lt;data.frame&gt;, mode="list").  This breaks code relying
    on as.vector(&lt;data.frame&gt;) to return the unchanged data frame.
  * legend() is now vectorized for arguments cex, x.intersp, and
    text.width.  The latter can now also be specified as a vector
    (one element for each column of the legend) or as NA for
    computing a proper column wise maximum value of strwidth(legend).
    The argument y.intersp can be specified as a vector with one
    entry for each row of the legend.
    legend() also gains new arguments title.cex and title.font.
    Thanks to Swetlana Herbrandt.
  * Deparsing no longer remaps attribute names dim, dimnames, levels,
    names and tsp to historical S-compatible names (which structure()
    maps back).
  * sample() and sample.int() have additional sanity checks on their
    size and n arguments.
    all.equal.numeric() gains a sanity check on its tolerance
    argument - calling all.equal(a, b, c) for three numeric vectors
    is a surprisingly common error.
    mean(na.rm =), rank(na.last =), barplot(legend.text =),
    boxplot(), contour(drawlabels =), polygon(border =) and
    methods::is(class2 =) have more robust sanity checks on their
    arguments.
    R CMD Rd2pdf (used by R CMD check) has a more robust sanity check
    on the format of \alias{} commands.
  * psigamma(x, deriv) for negative x now also works for deriv = 4
    and 5; their underlying C level dpsifn() is documented in
    'Writing R Extensions'.
  * The HTML help system now uses HTML5 (wish of PR#18149).
  * ks.test() now provides exact p-values also with ties and MC
    p-values in the two-sample (Smirnov) case.  By Torsten Hothorn.
  * ks.test() gains a formula interface, with y ~ 1 for the
    one-sample (Kolmogorov) test and y ~ group for the two-sample
    (Smirnov) test.  Contributed by Torsten Hothorn.
  * The return value from ks.test() now has class c("ks.test",
    "htest") - packages using try() need to take care to use
    inherits() and not == on the class.
  * New functions psmirnov(), qsmirnov() and rsmirnov() in package
    stats implementing the asymptotic and exact distributions of the
    two-sample Smirnov statistic.
  * iconv() now allows sub = "c99" to use C99-style escapes for UTF-8
    inputs which cannot be converted to encoding to.
  * In a forward pipe |&gt; expression it is now possible to use a named
    argument with the placeholder _ in the rhs call to specify where
    the lhs is to be inserted.  The placeholder can only appear once
    on the rhs.
  * The included LAPACK sources have been updated to version 3.10.0,
    except for the four Fortran 77 routines which 3.10.0 has
    re-implemented in Fortran 90 (where the older versions have been
    retained as the R build process does not support Fortran 90).
  * path.expand() and most other uses of tilde expansion now warn if
    a path would be too long if expanded.  (An exception is
    file.exists(), which silently returns false.)
  * trunc(&lt;Date&gt;, *) now supports units = "months" or "years" for
    consistency with the POSIXt method, thanks to Dirk Eddelbuettel's
    proposal in PR#18099.
  * list2DF() now checks that its arguments are of the same length,
    rather than use recycling.
  * The HTML help system has several new features: LaTeX-like math
    can be typeset using either KaTeX or MathJax, usage and example
    code is highlighted using Prism, and for dynamic help the output
    of examples and demos can be shown within the browser if the
    knitr package is installed. These features can be disabled by
    setting the environment variable _R_HELP_ENABLE_ENHANCED_HTML_ to
    a false value.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 15
    and so packages that provide graphics devices should be
    reinstalled.
  * The grid package now allows the user to specify a "vector" of
    pattern fills.  The fill argument to gpar() accepts a list of
    gradients and/or patterns and the functions linearGradient(),
    radialGradient(), and pattern() have a new group argument.
    Points grobs (data symbols) can now also have a pattern fill.
    The grobCoords() function now returns a more informative and
    complex result.
  * The grid package has new functions for drawing isolated groups:
    grid.group(), grid.define(), and grid.use().  These functions add
    compositing operators and affine transformations to R's graphics
    capabilities.
    The grid package also has new functions for stroking and filling
    paths: grid.stroke(), grid.fill(), and grid.fillStroke().
    A new function as.path() allows the user to specify the fill rule
    for a path that is to be used for clipping, stroking, or filling;
    available options are "winding" and "evenodd".  A new function
    as.mask() allows the user to specify the type of a mask;
    available options are "alpha" and "luminance".
    These new features are only supported so far (at most) on the
    Cairo-based graphics devices and on the pdf() device.
  * dev.capabilities() reports on device support for the new
    features.
  * par() now warns about unnamed non-character arguments to prevent
    misuse such as {usr &lt;- par("usr"); par(usr)}.
  INSTALLATION:
  * Facilities for accessing ftp:// sites are no longer tested
    (except _pro tem_ for curlGetHeaders()) as modern browsers have
    removed support.
  * R can now be built with DEFS = -DSTRICT_R_HEADERS .
  PACKAGE INSTALLATION:
  * R CMD INSTALL no longer tangles vignettes. This completes an R
    CMD build change in R 3.0.0 and affects packages built before R
    3.0.2. Such packages should be re-made with R CMD build to have
    the tangled R code of vignettes shipped with the tarball.
  * USE_FC_LEN_T will become the default: this uses the correct
    prototypes for Fortran BLAS/LAPACK routines called from C/C++,
    and requires adjustment of most such calls - see 'Writing R
    Extensions' SS6.6.2.  (This has been supported since R 3.6.2.)
  * Package installation speed for packages installed with
    keep.source has been improved. This resolve the issue reported by
    Ofek Shilon in PR#18236.
  UTILITIES:
  * R CMD check can optionally report files/directories left behind
    in home, /tmp (even though TMPDIR is set) and other directories.
    See the "R Internals" manual for details.
  * R CMD check now reports byte-compilation errors during
    installation.  These are not usually fatal but may result in
    parts of the package not being byte-compiled.
  * _R_CHECK_DEPENDS_ONLY_ can be applied selectively to examples,
    tests and/or vignettes in R CMD check: see the "R Internals"
    manual.
  * _R_CHECK_SRC_MINUS_W_IMPLICIT_ now defaults to true: recent
    versions of Apple clang on macOS have made implicit function
    declarations in C into a compilation error.
  * R CMD check --as-cran makes use of the environment variable
    AUTORECONF.  See the "R Internals" manual SS8 for further details.
  * R CMD check --use-valgrind also uses valgrind when re-building
    vignettes as some non-Sweave vignettes unhelpfully comment out
    all their code when R CMD check runs vignettes.
  * Errors in re-building vignettes (unless there are LaTeX errors)
    are reported by R CMD check as ERROR rather than WARNING when
    running vignettes has been skipped (as it frequently is in CRAN
    checks and by --as-cran).
  * R CMD Rd2pdf gains a --quiet option that is used by R CMD build
    when building the PDF package manual.
  * R CMD Rd2pdf now always runs LaTeX in batch mode, consistent with
    Texinfo &gt;= 6.7. The --batch option is ignored.
  * R CMD build and R CMD check now include the Rd file name and line
    numbers in the error message of an \Sexpr evaluation failure.
  * For packages using the \doi Rd macro (now an install-time \Sexpr)
    but no other dynamic Rd content, R CMD build now produces a
    smaller tarball and is considerably faster - skipping temporary
    package installation.
  C-LEVEL FACILITIES:
  * The non-API header R_ext/R-ftp-http.h is no longer provided, as
    the entry points it covered are now all defunct.
  * A number of non-API declarations and macro definitions have been
    moved from the installed header Rinternals.h to the internal
    header Defn.h. Packages that only use entry points and
    definitions documented to be part of the API as specified in
    'Writing R Extensions' SS6 should not be affected.
  * The macro USE_RINTERNALS no longer has any effect when compiling
    package code.  Packages which also use R_NO_REMAP will need to
    ensure that the remapped names are used for calls to API
    functions that were formerly also made available as macros.
  * The deprecated legacy S-compatibility macros PROBLEM, MESSAGE,
    ERROR, WARN, WARNING, RECOVER, ... are no longer defined in
    R_exts/RS.h (included by R.h).  Replace these by calls to
    Rf_error and Rf_warning (defined in header R_ext/Error.h included
    by R.h).
    Header R_ext/RS.h no longer includes R_ext/Error.h.
  * Header R_ext/Constants.h (included by R.h) when included from C++
    now includes the C++ header cfloat rather than the C header
    float.h (now possible as C++11 is required).
  * The legacy S-compatibility macros DOUBLE_* in R_ext/Constants.h
    (included by R.h) are deprecated.
  * The deprecated S-compatibility macros SINGLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * R_Calloc, R_Free and R_Realloc are preferred to their unprefixed
    forms and error messages now use the prefix. These forms were
    introduced in R 3.4.0 and are available even when
    STRICT_R_HEADERS is defined.
  * rmultinom has been documented in 'Writing R Extensions' SS6 so is
    now part of the R API.
  * Similarly, Rtanpi, called from R level tanpi() is now part of the
    R API.
  * The long-deprecated, undocumented and non-API entry point call_R
    is no longer declared in R_ext/RS.h (included by R.h).
  * The header S.h which has been unsupported since Jan 2016 has been
    removed.  Use R.h instead.
  DEPRECATED AND DEFUNCT:
  * The (non-default and deprecated) method = "internal" for
    download.file() and url() no longer supports http:// nor ftp://
    URIs.  (It is used only for file:// URIs.)
    On Windows, download.file(method = "wininet") no longer supports
    ftp:// URIs.  (It is no longer the default method, which is
    "libcurl" and does.)
    On Windows, the deprecated method = "wininet" now gives a warning
    for http:// and https:// URIs for both download.file() and url().
    (It is no longer the default method.)
  * On Windows, the command-line option --max-mem-size and
    environment variable R_MAX_MEM_SIZE are defunct.  The memory
    allocation limit was important for 32-bit builds, but these are
    no longer supported.
  * default.stringsAsFactors() is now formally deprecated, where that
    was only mentioned on its regular help page, previously.  So it
    now gives a warning if called.
  * unix.time() is defunct now; it had been deprecated since R 3.4.0.
  BUG FIXES:
  * Setting digits = 0 in format(), print.default() (and hence
    typically print()) or options() is again invalid.  Its behaviour
    was platform-dependent, and it is unclear what "zero significant
    digits" should mean (PR#18098).
  * Messages from C code in the cairo section of package grDevices
    are now also offered for translation, thanks to Michael Chirico's
    PR#18123.
  * mean(x) with finite x now is finite also without "long.double"
    capability.
  * R CMD Rd2pdf no longer leaves an empty build directory behind
    when it aborts due to an already existing output file.  (Thanks
    to Sebastian Meyer's PR#18141.)
  * density(x, weights = w, na.rm = TRUE) when anyNA(x) is true, now
    removes weights "in parallel" to x, fixing PR#18151, reported by
    Matthias Gondan.  Additionally, it gets a subdensity option.
  * Conversion of \Sexpr[]{&lt;expR&gt;} to LaTeX or HTML no longer
    produces long blocks of empty lines when &lt;expR&gt; itself contains
    several lines all producing empty output.  Thanks to a report and
    patch by Ivan Krylov posted to R-devel.
  * R CMD build no longer fails if a package vignette uses child
    documents and inst/doc exists.  (Thanks to Sebastian Meyer's
    PR#18156.)
  * When an R documentation ('help' source) file man/foo.Rd in a
    package has \donttest{..} examples with a syntax error, it is now
    signalled as ERROR and with correct line numbers relating to the
  * -Ex.R file, thanks to Duncan Murdoch and Sebastian Meyer's
    reports and patch proposals in PR#17501.
  * Improved determination of the correct translation domain in
    non-base packages, addressing the combination of PR#18092 and
    PR#17998 (#c6) with reports and _augmented_ patch #2904 by
    Suharto Anggono.
    Note that "R-base" is no longer the default domain e.g., for
    top-level calls to gettext(); rather translation needs explicit
    domain = * specification in such cases.
  * identical(attrib.as.set=FALSE) now works correctly with data
    frames with default row names (Thanks to Charlie Gao's PR#18179).
  * txtProgressBar() now enforces a non-zero width for argument char,
    without which no progress can be visible.
  * dimnames(table(d)) is more consistent in the case where d is a
    list with a single component, thanks to Thomas Soeiro's report to
    R-devel.
    Further, table(d1, d2) now gives an error when d1 and d2 are data
    frames as suggested by Thomas in PR#18224.
  * Fix for drawing semi-transparent lines and fills on the native
    Windows graphics device (PR#18219 and PR#16694).  Thanks to Nick
    Ray for helpful diagnosis on Bugzilla.
  * The deparser now wraps sub-expressions such as if(A) ..  with
    parentheses when needed; thanks to Duncan Murdoch's PR#18232 and
    Lionel Henry's patches there.
  * remove.packages() no longer tries to uninstall Priority: base
    packages, thanks to a report and suggestions by Colin Fay in
    PR#18227.
  * win.metafile() now has xpinch and ypinch arguments so that the
    user can override Windows' (potentially wrong) guess at device
    dimensions.
  * x[i] and x[[i]] for non-integer i should now behave in all cases
    as always documented: the index used is equivalent to
    as.integer(i) unless that would overflow where trunc(i) is used
    instead; thanks to Suharto Anggono's report and patch proposals
    in PR#17977.
  * asOneSidedFormula() now associates the resulting formula with the
    global environment rather than the evaluation environment created
    for the call.
  * &lt;bibentry&gt;$name now matches the field name case-insensitively,
    consistent with bibentry() creation and the replacement method.
  * cbind() failed to detect some length mismatches with a mixture of
    time-series and non-time-series inputs.
  * The default LaTeX style file Sweave.sty used by the RweaveLatex
    driver no longer loads the obsolete ae package; thanks to a
    report by Thomas Soeiro in PR#18271.  Furthermore, it now skips
    \usepackage[T1]{fontenc} for engines other than pdfTeX (if
    detected) or if the new [nofontenc] option is used.
  * smooth.spline() now stores its logical cv argument more safely,
    fixing a rare bug when printing, and also stores n.
  * smooth.spline(x,y,*) now computes the cv.crit statistic
    correctly, also when is.unsorted(x), fixing PR#18294.
  * The data.frame method of rbind() now warns when binding
    not-wholly-recycling vectors, by analogy to the default method
    (for matrices).
  * setAs() finds the correct class for name to when multiple
    packages define a class with that name. Thanks to Gabor Csardi
    for the report.
  * Fix for detaching a package when two classes of the same name are
    present in method signatures for the same generic. Thanks to
    Gabor Csardi for the report.
  * match.arg("", c("", "a", "B")) gives a better error message, in
    part from PR#17959, thanks to Elin Waring.
  * R CMD Sweave --clean no longer removes pre-existing files or
    subdirectories (PR#18242).
  * The quartz() device no longer splits polylines into subpaths.
    That has caused narrowly-spaced lines with many points to always
    look solid even when dashed line type was used due to dash phase
    restarts.
  * Deparsing constructs such as quote(1 + `!`(2) + 3) works again as
    before R 3.5.0, thanks to the report and patch in PR#18284 by
    Suharto Anggono.
  * as.list(f) for a factor f now keeps names(f), fixing PR#18309.
  * qbeta(.001, .9, .009) and analogous qf() calls now return a
    correct value instead of NaN or wrongly 1, all with a warning;
    thanks to the report by Ludger Goeminne in PR#18302.
  * plot.lm() failed to produce the plot of residuals vs.  factor
    levels (i.e., which=5 when leverages are constant) for models
    with character predictors (PR#17840).
  * interaction.plot(..., xtick = TRUE) misplaced the x-axis line
    (PR#18305).
  * Not strictly fixing a bug, format()ing and print()ing of
    non-finite Date and POSIXt values NaN and +/-Inf no longer show
    as NA but the respective string, e.g., Inf, for consistency with
    numeric vector's behaviour, fulfilling the wish of PR#18308.
  * R CMD check no longer runs test scripts generated from
    corresponding .Rin files twice and now signals an ERROR if
    processing an .Rin script fails.
  * tools::Rd2txt() used for plain-text help pages now renders \hrefs
    (if tools::Rd2txt_options(showURLs = TRUE)) and \urls with
    percent-encoding and standards-compliant delimiting style (angle
    brackets and no URL: prefix).  \email is now rendered with a
    mailto: prefix.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1655985600">- CHANGES IN R 4.2.1:
  NEW FEATURES:
  * New function utils::findCRANmirror() to find out if a CRAN mirror
    has been selected, otherwise fallback to the main site.  This
    behaves in the same way as tools::CRAN_package_db() and is
    intended for packages wishing to access CRAN for purposes other
    than installing packages.
    The need for this was shown by a day when the main CRAN website
    was offline and a dozen or so packages which had its URL
    hardcoded failed their checks.
  INSTALLATION on a UNIX-ALIKE:
  * The libraries searched for by --with-blas (without a value) now
    include BLIS (after OpenBLAS but before ATLAS).  And on macOS,
    the Accelerate framework (after ATLAS).  (This is patterned after
    the AX_BLAS macro from the Autoconf Archive.)
  * The included LAPACK sources have been updated to 3.10.1.
  UTILITIES:
  * The (full path to) the command tidy to be used for HTML
    validation can be set by environment variable R_TIDYCMD.
  * Setting environment variable _R_CHECK_RD_VALIDATE_RD2HTML_ to a
    false value will override R CMD check --as-cran and turn off HTML
    validation.  This provides a way to circumvent a problematic
    tidy.
    The 2006 version that ships with macOS is always skipped.
  C-LEVEL FACILITIES:
  * The undocumented legacy declarations of Sint, Sfloat, SINT_MAX
    and SINT_MIN in header R.h are deprecated.
  BUG FIXES:
  * fisher.test(d) no longer segfaults for "large" d; fixing PR#18336
    by preventing/detecting an integer overflow reliably.
  * tar(., files=*) now produces correctly the warning about invalid
    uid or gid of files, fixing PR#18344, reported by Martin Morgan.
  * tk_choose.files() with multi = FALSE misbehaved on paths
    containing spaces (PR#18334) (regression introduced in R 4.0.0).
  * sort(x, partial = ind, *) now works correctly notably for the
    non-default na.last = FALSE or TRUE, fixing PR#18335 reported by
    James Edwards.
  * Environment variable _R_CHECK_XREFS_REPOSITORIES_ is only used
    for checking .Rd cross-references in R CMD check (as documented)
    and not for other uses looking for a CRAN mirror.
  * The search for a CRAN mirror when checking packages now uses
    getOption("repos") if that specifies a CRAN mirror, even when it
    does not also specify all three Bioconductor repositories (as was
    previously required).
  * The HTML code generated by tools::Rd2HTML() has been improved to
    pass tidy 5.8.0.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1667217600">- CHANGES IN R 4.2.2:
  NEW FEATURES:
  * tools::Rdiff(useDiff = TRUE) checks for the presence of an
    external diff command and switches to useDiff = FALSE if none is
    found.  This allows R CMD Rdiff to always work.
  * On Windows, environment variable R_LIBCURL_SSL_REVOKE_BEST_EFFORT
    can be used to switch to only 'best-effort' SSL certificate
    revocation checks with the default "libcurl" download method.
    This reduces security, but may be needed for downloads to work
    with MITM proxies (PR#18379).
  * (macOS) The run-time check for libraries from XQuartz for X11 and
    Tcl/Tk no longer uses otool from the Apple Developer Tools
    (PR#18400).
  * The LaTeX style for producing the PDF manuals, Rd.sty, now loads
    the standard amsmath, amsfonts and amssymb packages for greater
    coverage of math commands in the Rd \eqn and \deqn macros.  The
    \mathscr LaTeX command is also provided (via the mathrsfs
    package, if available, or the amsfonts bundle otherwise),
    fulfilling the wish of PR#18398.
  * (Windows) The default format of readClipboard() and
    writeClipboard() has been changed to 13 (CF_UNICODETEXT).
  INSTALLATION on a UNIX-ALIKE:
  * The PDF manuals (if built) can be compacted by the new target
    make compact-pdf (at the top level or in directory doc/manual).
  * There is now configure support for LLVM clang 15 on Linux, which
    defaults to position-independent (PIE) executables whereas
    gfortran does not.
  * Many small changes to ease compilation (and suppress warnings)
    with LLVM clang 15.
  BUG FIXES:
  * Rscript -e would fail if stdin were closed (Reported by Henrik
    Bengtsson.)
  * qt(*, log.p=TRUE) in outer tails no longer produces NaN in its
    final steps, thus fixing PR#18360.
  * tools::Rd2latex() now escapes hashes and ampersands when writing
    URLs, fixing LaTeX errors with such URLs in \tabular.
  * When isGeneric(f, fdef=*) is used with mismatching names, the
    warning is better understandable; reported (with fix) in PR#18370
    by Gabe Becker.
  * poly(x, n) now works again (and is now documented) when x is a
    "Date" or "POSIXct" object, or of another class while fulfilling
    mode(x) == "numeric".  This also enables poly(x, *, raw=TRUE) for
    such variables.  Reported by Michael Chirico to R-devel.
  * write.table(), write.csv() and write.csv2() restore their
    numerical precision (internal equivalent of digits = 15) after an
    interrupt (PR#18384).
  * One can now read also byte FF from a clipboard connection
    (PR#18385).
  * source("") and source(character()) now give more helpful error
    messages.
  * R CMD check --as-cran set _R_CHECK_TIMINGS_ too late to have the
    intended effect.
  * as.POSIXlt(x) now also works with very large dates x, fixing
    PR#18401 reported by Hannes M"uhleisen.
  * Files can now be extracted even from very large zip archives
    (PR#18390, thanks to Martin Jakt).
  * Non-finite objects of class "POSIXlt" are now correctly coerced
    to classes "Date" and "POSIXct"; following up on the extension to
    format() them correctly.
  * Added methods for is.finite(), is.infinite() and is.nan() for
    "POSIXlt" date-time objects.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1678881600">- CHANGES IN R 4.2.3:
  C-LEVEL FACILITIES:
  * The definition of DL_FUNC in R_ext/Rdynload.h has been changed to
    be fully C-compliant.  This means that functions loaded _via_ for
    example R_GetCCallable need to be cast to an appropriate type if
    they have any arguments.
  * .Machine has a new element sizeof.time_t to identify old systems
    with a 32-bit type and hence a limited range of date-times (and
    limited support for dates millions of years from present).
  PACKAGE INSTALLATION:
  * (Windows) The default C++ standard had accidentally been left at
    C++11 when it was changed to C++14 on Unix.
  BUG FIXES:
  * As "POSIXlt" objects may be "partially filled" and their list
    components meant to be recycled, length() now is the length of
    the longest component.
  * as.POSIXlt.Date() could underflow for dates in the far past (more
    than half a million years BCE).
  * as.Date.POSIXlt(x) would return "1970-01-01" instead of NA in R
    4.2.2, e.g., for
    x &lt;- as.POSIXlt(c("2019-01-30","2001-1-1"))
    x$mon &lt;- c(0L, NA); as.Date(x)
  * R CMD check failed to apply enabled _R_CHECK_SUGGESTS_ONLY_ to
    examples and vignettes (regression in R 4.2.0).
  * R CMD check did not re-build vignettes in separate processes by
    default (regression in R 4.2.0).
  * Running examples from HTML documentation now restores previous
    knitr settings and options (PR#18420).
  * Quartz: fonts are now located using Core Graphics API instead of
    deprecated ATS which is no longer supported in the macOS 13 SDK
    (PR#18426).  This also addresses an issue where the currently
    used font in the Quartz device context was not correctly
    retained.
  * (Windows) Math symbols in text drawing functions are again
    rendered correctly (PR#18440).  This fixes a regression in R
    4.2.1 caused by a fix in PR#18382 which uncovered an issue in
    GraphApp due to which the symbol charset was not used with TT
    Symbol font face.
  * (Windows) Installing a package with a src/Makefile.{win,ucrt}
    file includes ~/.R/Makevars.win64 in the search for user
    makevars, as documented in "R Installation and Administration"
    and done for packages with a src/Makevars.{win,ucrt} file.
  * format(&lt;POSIXlt_w/_unbalanced_sec&gt;, "....%OS&lt;n&gt;") with n &gt; 0 no
    longer accidentally uses the unbalanced seconds, thanks to
    Suharto Anggono's report (including patch) in PR#18448.
  * solve.default(a, b) works around issues with some versions of
    LAPACK when a contains NA or NaN values.
  * When UseMethod() cannot dispatch, it no longer segfaults
    producing the error message in case of a long class(), thanks to
    Joris Vankerschaver's report (including patch) in PR#18447.
  * When example(foo, ..) produces graphics on an interactive device
    it needs to open itself, it now leaves devAskNewPage() unchanged
    even when it was FALSE, thus fixing a 14 years old '&lt;FIXME&gt;'.
  * packageDescription() again catches errors from encoding
    conversions. This also fixes broken packageVersion() in C locale
    on systems where iconv does not support transliteration.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1681128000">- add patch to build with libcurl &gt;= 8</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1682078400">- CHANGES IN R 4.3.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Calling &amp;&amp; or || with LHS or (if evaluated) RHS of length greater
    than one is now always an error, with a report of the form
    'length = 4' in coercion to 'logical(1)'
    Environment variable _R_CHECK_LENGTH_1_LOGIC2_ no longer has any
    effect.
  NEW FEATURES:
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.10.1.  (This caused some platform-dependent
    changes to package check output.)  And then to the sources from
    LAPACK version 3.11.0 (with changes only to double complex
    subroutines).
  * The included LAPACK sources have been updated to include the four
    Fortran 90 routines rather than their Fortran 77 predecessors.
    This may give some different signs in SVDs or
    eigendecompositions..  (This completes the transition to LAPACK
    3.10.x begun in R 4.2.0.)
  * The LAPACK sources have been updated to version 3.11.0.  (No new
    subroutines have been added, so this almost entirely bug fixes:
    Those fixes do affect some computations with NaNs, including R's
    NA.)
  * The parser now signals _classed_ errors, notably in case of the
    pipe operator |&gt;.  The error object and message now give line and
    column numbers, mostly as proposed and provided by Duncan Murdoch
    in PR#18328.
  * toeplitz() is now generalized for asymmetric cases, with a
    toeplitz2() variant.
  * xy.coords() and xyz.coords() and consequently, e.g., plot(x,y,
    log = "y") now signal a _classed_ warning about negative values
    of y (where log(.) is NA).  Such a warning can be specifically
    suppressed or caught otherwise.
  * Regular expression functions now check more thoroughly whether
    their inputs are valid strings (in their encoding, e.g. in
    UTF-8).
  * The performance of grep(), sub(), gsub() and strsplit() has been
    improved, particularly with perl = TRUE and fixed = TRUE.  Use of
    useBytes = TRUE for performance reasons should no longer be
    needed and is discouraged: it may lead to incorrect results.
  * apropos() gains an argument dot_internals which is used by the
    completion (help(rcompgen)) engine to also see base internals
    such as .POSIXct().
  * Support in tools::Rdiff() for comparing uncompressed PDF files is
    further reduced - see its help page.
  * qqplot(x, y, ...) gains conf.level and conf.args arguments for
    computing and plotting a confidence band for the treatment
    function transforming the distribution of x into the distribution
    of y (Switzer, 1976, _Biometrika_). Contributed by Torsten
    Hothorn.
  * Performance of package_dependencies() has been improved for cases
    when the number of dependencies is large.
  * Strings newly created by gsub(), sub() and strsplit(), when any
    of the inputs is marked as "bytes", are also marked as "bytes".
    This reduces the risk of creating invalid strings and accidental
    substitution of bytes deemed invalid.
  * Support for readLines(encoding = "bytes") has been added to allow
    processing special text files byte-by-byte, without creating
    invalid strings.
  * iconv(from = "") now takes into account any declared encoding of
    the input elements and uses it in preference to the native
    encoding.  This reduces the risk of accidental creation of
    invalid strings, particularly when different elements of the
    input have different encoding (including "bytes").
  * Package repositories in getOption("repos") are now initialized
    from the repositories file when utils is loaded (if not already
    set, e.g., in .Rprofile).  (From a report and patch proposal by
    Gabriel Becker in PR#18405.)
  * compactPDF() gets a verbose option.
  * type.convert() and hence read.table() get new option tryLogical =
    TRUE with back compatible default.  When set to false, converts
    "F" or "T" columns to character.
  * Added new unit prefixes "R" and "Q" for abbreviating
    (unrealistically large) sizes beyond 10^{27} in standard = "SI",
    thanks to Henrik Bengtsson's PR#18435.
  * as.data.frame()'s default method now also works fine with atomic
    objects inheriting from classes such as "roman", "octmode" and
    "hexmode", such fulfilling the wish of PR#18421, by Benjamin
    Feakins.
  * The as.data.frame.vector() utility now errors for wrong-length
    row.names.  It warned for almost six years, with "Will be an
    error!".
  * sessionInfo() now also contains La_version() and reports codepage
    and timezone when relevant, in both print() and toLatex() methods
    which also get new option tzone for displaying timezone
    information when locale = FALSE.
  * New function R_compiled_by() reports the C and Fortran compilers
    used to build R, if known.
  * predict(&lt;lm&gt;, newdata = *) no longer unnecessarily creates an
    offset of all 0s.
  * solve() for complex inputs now uses argument tol and by default
    checks for 'computational singularity' (as it long has done for
    numeric inputs).
  * predict(&lt;rank-deficient lm&gt;, newdata=*) now obeys a new argument
    rankdeficient, with new default "warnif", warning only if there
    are non-estimable cases in newdata.  Other options include
    rankdeficient = "NA", predicting NA for non-estimable newdata
    cases.  This addresses PR#15072 by Russ Lenth and is based on his
    original proposal and discussions in PR#16158 also by David Firth
    and Elin Waring.  Still somewhat experimental.
  * Rgui console implementation now works better with the NVDA screen
    reader when the full blinking cursor is selected.  The underlying
    improvements in cursor handling may help also other screen
    readers on Windows.
  * The drop-field control in GraphApp can now be left with the TAB
    key and all controls can be navigated in the reverse order using
    the Shift+TAB key, improving accessibility of the Rgui
    configuration editor.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now fully accurate
    (instead of to "only" minimally five digits).
  * demo(error.catching) now also shows off withWarnings() and
    tryCatchWEMs().
  * As an experimental feature the placeholder _ can now also be used
    in the rhs of a forward pipe |&gt; expression as the first argument
    in an extraction call, such as _$coef. More generally, it can be
    used as the head of a chain of extractions, such as _$coef[[2]].
  * Spaces in the environment variable used to choose the R session's
    temporary directory (TMPDIR, TMP and TEMP are tried in turn) are
    now fatal.  (On Windows the 'short path' version of the path is
    tried and used if that does not contain a space.)
  * all.equal.numeric() gets a new optional switch giveErr to return
    the numeric error as attribute.  Relatedly,
    stopifnot(all.equal&lt;some&gt;(a, b, ..)) is as "smart" now, as
    stopifnot(all.equal(....)) has been already, thus allowing
    customized all.equal&lt;Some&gt;() wrappers.
  * R on Windows is now able to work with path names longer than 260
    characters when these are enabled in the system (requires at
    least Windows 10 version 1607).  Packages should be updated to
    work with long paths as well, instead of assuming PATH_MAX to be
    the maximum length.  Custom front-ends and applications embedding
    R need to update their manifests if they wish to allow this
    feature.  See
    &lt;https://blog.r-project.org/2023/03/07/path-length-limit-on-windows&gt;
    for more information.
  * 'Object not found' and 'Missing argument' errors now give a more
    accurate error context. Patch provided by Lionel Henry in
    PR#18241.
  * The @ operator is now an S3 generic. Based on contributions by
    Tomasz Kalinowski in PR#18482.
  * New generic chooseOpsMethod() provides a mechanism for objects to
    resolve cases where two suitable methods are found for an Ops
    Group Generic. This supports experimenting with alternative
    object systems. Based on contributions by Tomasz Kalinowski in
    PR#18484.
  * inherits(x, what) now accepts values other than a simple
    character vector for argument what. A new generic, nameOfClass(),
    is called to resolve the class name from what. This supports
    experimenting with alternative object systems. Based on
    contributions by Tomasz Kalinowski in PR#18485.
  * Detection of BLAS/LAPACK in use (sessionInfo()) with FlexiBLAS
    now reports the current backend.
  * The "data.frame" method for subset() now warns about extraneous
    arguments, typically catching the use of = instead of == in the
    subset expression.
  * Calling a:b when numeric a or b is longer than one may now be
    made into an error by setting environment variable
    _R_CHECK_LENGTH_COLON_ to a true value, along the proposal in
    PR#18419 by Henrik Bengtsson.
  * density(x, weights = *) now warns if automatic bandwidth
    selection happens without using weights; new optional warnWbw may
    suppress the warning.  Prompted by Christoph Dalitz' PR#18490 and
    its discussants.
  * rm(list = *) is faster and more readable thanks to Kevin Ushey's
    PR#18492.
  * The plot.lm() function no longer produces a normal Q-Q plot for
    GLMs. Instead it plots a half-normal Q-Q plot of the absolute
    value of the standardized deviance residuals.
  * The print() method for class "summary.glm" no longer shows
    summary statistics for the deviance residuals by default.  Its
    optional argument show.residuals can be used to show them if
    required.
  * The tapply() function now accepts a data frame as its X argument,
    and allows INDEX to be a formula in that case. by.data.frame()
    similarly allows INDICES to be a formula.
  * The performance of df[j] &lt;- value (including for missing j) and
    write.table(df) has been improved for data frames df with a large
    number of columns.  (Thanks to Gabriel Becker's PR#18500,
    PR#18503 and discussants, prompted by a report from Toby Dylan
    Hocking on the R-devel mailing list.)
  * The matrix multiply operator %*% is now an S3 generic, belonging
    to new group generic matrixOps.  From Tomasz Kalinowski's
    contribution in PR#18483.
  * New function array2DF() to convert arrays to data frames,
    particularly useful for the list arrays created by tapply().
  DATES and TIMES:
  * On platforms where (non-UTC) datetimes before 1902 (or before
    1900 as with system functions on recent macOS) are guessed by
    extrapolating time zones from 1902-2037, there is a warning at
    the first use of extrapolation in a session.  (As all time zones
    post 2037 are extrapolation, we do not warn on those.)
  * (Platforms using --with-internal-tzone, including Windows and by
    default macOS). How years are printed in dates or date-times can
    be controlled by environment variable R_PAD_YEARS_BY_ZERO.  The
    default remains to pad to 4 digits by zeroes, but setting value
    no gives no padding (as used by default by glibc).
  * strftime() tries harder to determine the offset for the "%z"
    format, and succeeds on the mainstream R platforms.
  * strftime() has a limit of 2048 bytes on the string produced -
    attempting to exceed this is an error.  (Previously it silently
    truncated at 255 bytes.)
  * sessionInfo() records (and by default prints) the system time
    zone as part of the locale information.  Also, the source
    (system/internal) of the date-time conversion and printing
    functions.
  * Objects of class "POSIXlt" created in this version of R always
    have 11 components: component zone is always set, and component
    gmtoff is set for times in UTC and usually set on the (almost
    all) platforms which have C-level support, otherwise is NA.
  * There are comprehensive validity checks on the structure of
    objects of class "POSIXlt" when converting (including formatting
    and printing).  (This avoids mis-conversions of hand-crafted
    objects.)
  * There is some support for using the native date-time routines on
    macOS: this is only viable on recent versions (e.g. 12.6 and 13)
    and does get wrong some historical changes (before 1900, during
    WWII).  Use of --with-internal-tzone remains the default.
  * as.POSIXct(&lt;numeric&gt;) and as.POSIXlt(.) (without specifying
    origin) now work.  So does as.Date(&lt;numeric&gt;).
  * as.Date.POSIXct(., tz) now treats several tz values, notably
    "GMT" as equivalent to "UTC", proposed and improved by Michael
    Chirico and Joshua Ulrich in PR#17674.
  * Experimental balancePOSIXlt() utility allows using "ragged" and
    or out-of-range "POSIXlt" objects more correctly, e.g., in
    subsetting and subassignments.  Such objects are now documented.
    More experimentally, a "POSIXlt" object may have an attribute
    "balanced" indicating if it is known to be filled or fully
    balanced.
  * Functions axis.Date() and axis.POSIXct() are rewritten to gain
    better default tick locations and better default formats by using
    prettyDate(). Thanks to Swetlana Herbrandt.
  * The mapping of Windows' names for time zones to IANA's 'Olson'
    names has been updated.  When ICU is available (it is by
    default), it is used to get a mapping for the current region set
    in Windows.  This can be overridden by setting environment
    variable TZ to the desired Olson name - see OlsonNames() for
    those currently available.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 16
    and so packages that provide graphics devices should be
    reinstalled.
  * The grDevices and grid packages have new functions for rendering
    typeset glyphs, primarily: grDevices::glyphInfo() and
    grid::grid.glyph().
    Rendering of typeset glyphs is only supported so far on the
    Cairo-based graphics devices and on the pdf() and quartz()
    devices.
  * The defined behaviour for "clear" and "source" compositing
    operators (via grid::grid.group()) has been changed (to align
    better with simple interpretation of original Porter-Duff
    definitions).
  * Support for gradients, patterns, clipping paths, masks, groups,
    compositing operators, and affine transformations has been added
    to the quartz() device.
  INSTALLATION on a UNIX-ALIKE:
  * A system installation of generic LAPACK 3.10.0 or later will be
    preferred to the version in the R sources.
    configure option --with-lapack=no (equivalently --without-lapack)
    forces compilation of the internal LAPACK sources.
    If --with-lapack is not specified, a system liblapack is looked
    for and used if it reports version 3.10.0 or later and does not
    contain BLAS routines.
    Packages using LAPACK will need to be reinstalled if this changes
    to using an external library.
  * On aarch64 Linux platforms using GCC, configure now defaults to
  - fPIC (instead of -fpic), as desired in PR#18326.
  * configure now checks conversion of datetimes between POSIXlt and
    POSIXct around year 2020.  Failure (which has been seen on
    platforms missing tzdata) is fatal.
  * If configure option --with-valgrind-instrumentation is given
    value 1 or 2, option --with-system-valgrind-headers is now the
    default and ignored (with a warning).  It is highly recommended
    that the system headers are installed alongside valgrind: they
    are part of its packaging on some Linux distributions and
    packaged separately (e.g. in the valgrind-devel RPM) on others.
    configure will give a warning if they are not found.
    The system headers will be required in a future release of R to
    build with valgrind instrumentation.
  * libcurl 8.x is now accepted by configure: despite a change in
    major version number it changes neither API nor ABI.
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools43, an update of the Rtools42 toolchain.  It is
    based on gcc 12 and newer versions of MinGW-W64, binutils and
    libraries.  At this time R-devel can still be built using
    Rtools42 without changes, but when R-devel is installed via the
    installer, it will by default look for Rtools43.
  * Old make targets rsync-extsoft and 32-bit ones that are no longer
    needed have been removed.
  * Default builds (including for packages) no longer select C99.
    Thus the C standard used is the default for the compiler, which
    for the toolchain in Rtools43 is C17.  (This is consistent with
    Unix builds.)
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++17 where
    available (which it is on all currently checked platforms): if
    not C++14 or C++11 is used if available otherwise C++ is not
    supported.
  * USE_FC_LEN_T is the default: this uses the correct
    (compiler-dependent) prototypes for Fortran BLAS/LAPACK routines
    called from C/C++, and requires adjustment of many such calls -
    see 'Writing R Extensions' SS6.6.1.
  * There is initial support for C++23 as several compilers are now
    supporting -std=c++23 or -std=c++2b or similar.  As for C++20,
    there no additional configure checks for C++23 features beyond a
    check that the compiler reports a __cplusplus value greater than
    that in the C++20 standard.  C++ feature tests should be used.
  * There is support for a package to indicate the version of the C
    standard which should be used to compile it, and for the
    installing user to specify this.  In most cases R defaults to the
    C compiler's default standard which is C17 (a `bug-fix' of C11) -
    earlier versions of R or compilers may have defaulted to C99.
    Current options are:
    USE_C17 Use a standard that is at most C17.  The intention is to
    allow legacy packages to still be installed when later C
    standards become the default, including packages using new
    keywords as identifiers or with K&amp;R-style function
    declarations.  This will use C17 if available, falling back
    to C11.
    USE_C90 Use the C90 (aka C89) standard.  (As that standard did
    not require compilers to identify that version, all we can
    verify is that the compiler does not claim to be using a
    later standard.  It may accept C99 features - for example
    clang accepts // to make comments.)
    USE_C99 Use the C99 standard. This should be rarely needed - it
    avoids the few new features of C11/C17 which can be useful if
    a package assumes them if C17 is specified and they are not
    implemented.
    USE_C23 Use C23 (or in future, later).  Compiler/library support
    for C23 is still being implemented, but LLVM clang from
    15.0.0 and the upcoming GCC 13 have quite extensive support.
    These can be specified as part of the SystemRequirements field in
    the package's DESCRIPTION file or _via_ options --use-C17 and so
    on of R CMD INSTALL and R CMD SHLIB.
    For further details see "Writing R Extensions" SS1.2.5.
  * (Windows) A src/Makefile.ucrt or src/Makefile.win file is now
    included after R_HOME/etcR_ARCH/Makeconf and so no longer needs
    to include that file itself.  Installation of a package with such
    a file now uses a site Makevars file in the same way as a package
    with a src/Makevars.win file would.
  * configure is now passed crucial variables such as CC and CFLAGS
    in its environment, as many packages were not setting them (as
    documented in 'Writing R Extensions' SS1.2).
    This has most effect where configure is used to compile parts of
    the package - most often by cmake or libtool which obfuscate the
    actual compile commands used.
    Also used for configure.win and configure.ucrt on Windows.
  FORTRAN FLAGS:
  * The flag -fno-optimize-sibling-calls is no longer forced for
    gfortran 7 and later.  It should no longer be needed now using
    'hidden' character-length arguments when calling BLAS/LAPACK
    routines from C/C++ is the default even for packages.  (Unless
    perhaps packages call Fortran code from C/C++ without using R's
    headers and without allowing for these arguments.)
  C-LEVEL FACILITIES:
  * The deprecated S-compatibility macros DOUBLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * The deprecated legacy typedefs of Sint and Sfloat in header R.h
    are no longer defined, and that header no longer includes header
    limits.h from C nor climits from C++.
  * New macro CAD5R() is provided in Rinternals.h and used in a few
    places in the R sources.
  * ALTREP now supports VECSXP vectors. Contributed by Gabor Csardi
    in PR#17620.
  * The Rcomplex definition (in header R_ext/Complex.h) has been
    extended to prevent possible mis-compilation when interfacing
    with Fortran (PR#18430).  The new definition causes compiler
    warnings with static initializers such as {1, 2}, which can be
    changed to {.r=1, .i=2}.
    Using the new definition from C++ depends on compiler extensions
    supporting C features that have not been incorporated into the
    C++ standards but are available in g++ and clang++: this may
    result in C++ compiler warnings but these have been worked around
    for recent versions of common compilers (GCC, Apple/LLVM clang,
    Intel).
    It is intended to change the inclusion of header R_ext/Complex.h
    by other R headers, so C/C++ code files which make use of
    Rcomplex should include that header explicitly.
  UTILITIES:
  * R CMD check does more checking of package .Rd files, warning
    about invalid email addresses and (some) invalid URIs and noting
    empty \item labels in description lists.
  * R CMD check now also reports problems when reading package news
    in md (file NEWS.md) and (optionally) plain text (file NEWS)
    formats.
  * _R_CHECK_TIMINGS_ defaults to a value from the environment even
    for R CMD check --as-cran; this allows for exceptionally fast or
    slow platforms.
    It now applies to checking PDF and HTML versions of the manuals,
    and 'checking CRAN incoming feasibility'.
  * R CMD check can optionally (but included in --as-cran) check
    whether HTML math rendering _via_ KaTeX works for the package .Rd
    files.
  * Non-interactive debugger invocations can be trapped by setting
    the environment variable _R_CHECK_BROWSER_NONINTERACTIVE_ to a
    true value.  This is enabled by R CMD check --as-cran to detect
    the use of leftover browser() statements in the package.
  * The use of sprintf and vsprintf from C/C++ has been deprecated in
    macOS 13 and is a known security risk.  R CMD check now reports
    (on all platforms) if their use is found in compiled code:
    replace by snprintf or vsnprintf respectively. [*NB:* whether
    such calls get compiled into the package is platform-dependent.]
  * Where recorded at installation, R CMD check reports the C and
    Fortran compilers used to build R.
    It reports the OS in use (if known, as given by osVersion) as
    well as that R was built for.
    It notes if a C++ standard was specified which is older than the
    current default: many packages have used C++11 to mean 'not
    C++98' - as C++11 is the minimum supported since R 4.0.0, that
    specification can probably be removed.
  * R CMD INSTALL reports the compilers (and on macOS, the SDK) used,
    and this is copied to the output of R CMD check.
    Where a C++ standard is specified, it is reported.
  * R CMD check's 'checking compilation flags in Makevars' has been
    relaxed to accept the use of flags such as -std=f2008 in
    PKG_FFLAGS.
  * tools::buildVignettes() has a new argument skip, which is used by
    R CMD check to skip (and note) vignettes with unavailable
    \VignetteDepends (PR#18318).
  * New generic .AtNames() added to enable class-specific completions
    after @. The formerly internal function findMatches() is now
    exported, mainly for use in methods for .DollarNames() and
    .AtNames().
  DEPRECATED AND DEFUNCT:
  * default.stringsAsFactors() is defunct.
  * Calling as.data.frame.&lt;class&gt;() directly (for 12 atomic classes)
    is going to be formally deprecated, currently activated by
    setting the environment variable
    _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ to non-empty, which also
    happens in R CMD check --as-cran.
  BUG FIXES:
  * Hashed environments with sizes less than 5 can now grow.
    (Reported to R-devel by Duncan Garmonsway.)
  * as.character(&lt;Rd&gt;, deparse = TRUE) failed to re-escape curly
    braces in LaTeX-like text.  (Reported by Hadley Wickham in
    PR#18324.)
  * library() now passes its lib.loc argument when requiring Depends
    packages; reported (with fix) in PR#18331 by Mikael Jagan.
  * R CMD Stangle: improved message about 'Output' files.
  * head(x, n) and tail(x, n) now signal an error if n is not
    numeric, instead of incidentally "working" sometimes returning
    all of x.  Reported and discussed by Colin Fay, in PR#18357.
  * The "lm" method for summary() now gives the correct F-statistic
    when the model contains an offset.  Reported in PR#18008.
  * C() and `contrasts&lt;-`() now preserve factor level names when
    given a function object (as opposed a function name which did
    preserve names). Reported in PR#17616.
  * c(a = 1, 2)[[]] no longer matches 2 but rather signals a
    _classed_ error.  Reported and analysed by Davis Vaughan in
    PR#18367, a duplicate of PR#18004, by Jan Meis et al.  For
    consistency, NULL[[]] is also erroneous now.  x[[]] &lt;- v gives an
    error of the same class "MissingSubscriptError".
  * The relist() function of utils now supports NULL elements in the
    skeleton (PR#15854).
  * ordered(levels = *) (missing x) now works analogously to factor(,
    ordered=TRUE); reported (with fix) by Achim Zeileis in PR#18389.
  * User-defined Rd macro definitions can now span multiple lines,
    thanks to a patch from Duncan Murdoch. Previously, the Rd parser
    silently ignored everything after the first line.
  * Plain-text help (tools::Rd2txt()) now preserves an initial blank
    line for text following description list items.
  * tools::Rd2HTML() and tools::Rd2latex() no longer split \arguments
    and \value lists at Rd comments.
  * tools::Rd2latex() now correctly handles optional text outside
    \items of argument lists as well as bracketed text at the
    beginning of sections, e.g., \value{[NULL]}.
  * as.character(&lt;POSIXt&gt;) now behaves more in line with the methods
    for atomic vectors such as numbers, and is no longer influenced
    by options().  Ditto for as.character(&lt;Date&gt;).  The
    as.character() method gets arguments digits and OutDec with
    defaults _not_ depending on options().  Use of as.character(*,
    format = .) now warns.
  * Similarly, the as.character.hexmode() and *.octmode() methods
    also behave as good citizen methods and back compatibility option
    keepStr = TRUE.
  * The as.POSIXlt(&lt;POSIXlt&gt;) and as.POSIXct(&lt;POSIXct&gt;) default
    methods now do obey their tz argument, also in this case.
  * as.POSIXlt(&lt;Date&gt;) now does apply a tz (time zone) argument, as
    does as.POSIXct(); partly suggested by Roland Fuss on the R-devel
    mailing list.
  * as.Date.POSIXlt(x) now also works when the list components are of
    unequal length, aka "partially filled" or "ragged".
  * expand.model.frame() looked up variables in the wrong environment
    when applied to models fitted without data.  Reported in
    PR#18414.
  * time() now (also) uses the ts.eps = getOption("ts.eps") argument
    and thus by default rounds values very close to the start (or
    end) of a year.  Based on a proposal by Andre"i V. Kostyrka on
    R-help.
  * Printing of a factanal() result with just one factor and sort =
    TRUE now works regularly, fixing PR#17863 by Timothy Bates,
    thanks to the 'R Contributors' working group.
  * Printing 0-length objects of class "factor", "roman", "hexmode",
    "octmode", "person", "bibentry", or "citation" now prints
    something better, one of which fixes PR#18422, reported by
    Benjamin Feakins.
  * Sys.timezone() queries timedatectl only if systemd is loaded;
    addressing a report by Jan Gorecki in PR#17421.
  * The formula method of cor.test() had scoping problems when
    environment(formula) was not the calling environment; reported
    with a patch proposal by Mao Kobayashi in PR#18439.
  * attach() of an environment with active bindings now preserves the
    active bindings.  Reported by Kevin Ushey in PR#18425.
  * BLAS detection now works also with system-provided libraries not
    available as regular files.  This fixes detection of the
    Accelerate framework on macOS since Big Sur.  Reported by David
    Novgorodsky.
  * download.file() gives a helpful error message in case of an
    invalid download.file.method option, thanks to Colin Fay's report
    in PR#18455.
  * Sporadic crashes of Rterm when using completion have been fixed.
  * Rprof() is now more reliable.  A livelock in thread
    initialization with too short sampling interval has been fixed on
    macOS.  A deadlock in using the C runtime has been fixed on
    Windows.  A potential deadlock has been prevented on Unix.
  * Cursor placement in Rgui now works even after a fixed-width font
    is selected.
  * Mandatory options (options()) are now set on startup so that
    saving and restoring them always works (PR#18372).
  * Package installation, R CMD INSTALL or install.packages(*), now
    parses each of the &lt;pkg&gt;/R/*.R files individually instead of
    first concatenating and then parse()ing the large resulting file.
    This allows parser or syntax errors to be diagnosed with correct
    file names and line numbers, thanks to Simon Dedman's report and
    Bill Dunlap's patch in PR#17859.
    This _does_ require syntactically self contained R source files
    now, fixing another inadvertent bug.
  * predict.lm(&lt;model with offset&gt;) now finds the offset in the
    correct environment, thanks to Andr'e Gillibert's report and patch
    in PR#18456.
  * getInitial(&lt;formula&gt;) now finds the selfStart model in the
    correct environment.  (Reported by Ivan Krylov in PR#18368.)
  * Fix for possible segfault when using recently-added graphics
    features, such as gradients, clipping paths, masks, and groups
    with pdf(file=NULL).
  * class(m) &lt;- class(m) no longer changes a matrix m by adding a
    class _attribute_.
  * packageDate(pkg) now only warns once if there is no pkg.
  * When ts() creates a multivariate time series, "mts", it also
    inherits from "array" now, and is.mts() is documented _and_
    stricter.
  * Rd2txt() now preserves line breaks of \verb Rd content and from
    duplicated \cr.  The former also fixes the rendering of verbatim
    output from Rd \Sexpr in plain-text help.
  * uniroot(f, interval) should no longer wrongly converge _outside_
    the interval in some cases where abs(f(x)) == Inf for an x at the
    interval boundary, thanks to posts by Ben Bolker and Serguei
    Sokol on R-devel.
  * Vectorized alpha handling in palette functions such as in gray(),
    rainbow(), or hcl.colors() works correctly now, thanks to Achim
    Zeileis' report and patch in PR#18476.
  * Formatting and print()ing of bibentry objects has dropped the
    deprecated citation.bibtex.max argument, such that the bibtex
    argument's default for print.bibentry() depends directly on the
    citation.bibtex.max option, whereas in format.bibentry() the
    option no longer applies.
  * Attempting to use a character string naming a foreign function
    entry point in a foreign function call in a package will now
    signal an error if the packages has called R_forceSymbols to
    specify that symbols must be used.
  * An error in table() could permanently set options(warn=2)
    promoting all subsequent warnings to errors.
  * The sigma() function gave misleading results for binary GLMs.  A
    new method for objects of class "glm" returns the square root of
    the estimate of the dispersion parameter using the same
    calculation as summary.glm().
  * bs() and ns() in the (typical) case of automatic knot
    construction, when some of the supposedly inner knots coincide
    with boundary knots, now moves them inside (with a warning),
    building on PR#18442 by Ben Bolker.
  * R CMD on Windows now skips the site profile with --no-site-file
    and --vanilla even when R_PROFILE is set (PR#18512, from Kevin
    Ushey).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1686916800">- CHANGES IN R 4.3.1:
  C-LEVEL FACILITIES:
  * The C-level API version of R's integrate(), Rdqags() in Applic.h,
    now returns the correct number of integrand evaluations neval,
    fixing PR#18515 reported and diagnosed by Stephen Wade.
  * The C prototypes for LAPACK calls dspgv and dtptrs in
    R_exts/Lapack.h had one too many and one too few character length
    arguments - but this has not caused any known issues. To get the
    corrected prototypes, include
    [#]include &lt;Rconfig.h&gt; // for PR18534fixed
    [#]ifdef PR18534fixed
    [#] define usePR18534fix 1
    [#]endif
    [#]include &lt;R_exts/Lapack.h&gt;
    in your C/C++ code (PR#18534).
  INSTALLATION:
  * Many of the checks of esoteric Internet operations and those
    using unreliable external sites have been moved to a new target
    that is not run by default and primarily intended for the core
    developers.  To run them use
    cd tests; make test-Internet-dev
  BUG FIXES:
  * .S3methods(), typically called from methods(), again marks
    methods from package base as visible.
    Also, the visibility of non-base methods is again determined by
    the method's presence in search().
  * tools::Rdiff() is now more robust against invalid strings, fixing
    installation tests on Windows without Rtools installed
    (PR#18530).
  * Fix (new) bug in hcl.colors(2, *), by Achim Zeileis (PR#18523).
  * head(., &lt;illegal&gt;) and tail(..) now produce more useful "Error in
    ...." error messages, fixing PR#18362.
  * Package code syntax on Windows is checked in UTF-8 when UTF-8 is
    the native encoding.
  * na.contiguous(x) now also returns the first run, when it is at
    the beginning and there is a later one of the same length;
    reported to R-devel, including a fix, by Georgi Boshnakov.
    Further, by default, it modifies only an existing attr(*,"tsp")
    but otherwise no longer sets one.
  * chol(&lt;not pos.def&gt;, pivot = &lt;T|F&gt;) now gives a correct error or
    warning message (depending on pivot), thanks to Mikael Jagan's
    (PR#18541).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1699012800">- CHANGES IN R 4.3.2:
  NEW FEATURES:
  * The default initialization of the "repos" option from the
    repositories file at startup can be skipped by setting
    environment variable R_REPOSITORIES to NULL such that
    getOption("repos") is empty if not set elsewhere.
  * qr.X() is now an implicit S4 generic in methods.
  * iconv(to = "ASCII//TRANSLIT") is emulated using substitution on
    platforms which do not support it (notably Alpine Linux).  This
    should give a human-readable conversion in ASCII on all platforms
    (rather than NA_character_).
  * trans3d() gains options continuous and verbose addressing the
    problem of possible "wrap around" when projecting too long
    curves, as reported by Achim Zeileis in PR#18537.
  * tools::showNonASCII() has been rewritten to work better on macOS
    14 (which has a changed implementation of iconv()).
  * tiff(type = "quartz") (the default on macOS) now warns if
    compression is specified: it continues to be ignored.
  INSTALLATION on a UNIX-ALIKE:
  * There is some support for building with Intel's LLVM-based
    compilers on x86_64 Linux, such as (C) icx, (C++) ipcx and
    (Fortran) ifx from oneAPI 2023.x.y.
  * There is support for using LLVM's flang-new as the Fortran
    compiler from LLVM 16.0.x (preferably 17.0.0 or later).
  UTILITIES:
  * R CMD check reports the use of the Fortran 90 random number
    generator RANDOM_NUMBER() and the subroutines to initialize it.
    'Writing R Extensions' has example code to use R's RNGs from
    Fortran.
  BUG FIXES:
  * substr(x, n, L) &lt;- cc now works (more) correctly for multibyte
    UTF-8 strings x when L &gt; nchar(x), thanks to a report and patch
    by 'Architect 95'.
  * contrib.url(character()) now returns 0-length character() as
    documented, which also avoids spurious warnings from
    available.packages() et al. in the edge case of an empty vector
    of repository URLs.
  * readChar(., 4e8) no longer fails, thanks to Kodi Arfer's report
    (PR#18557).
  * lapply(&lt;list&gt;, as.data.frame) no longer warns falsely for some
    base vector components.
  * Communication between parent and child processes in the multicore
    part of parallel could fail on platforms that do not support an
    arbitrarily large payload in system functions read()/write() on
    pipes (seen on macOS where a restriction to INT_MAX bytes is
    documented, without doing a partial read unlike Linux). The
    payload is now split into 1Gb chunks to avoid that problem.
    (PR#18571)
  * qqplot(x,y, conf.level=.) gives better confidence bounds when
    length(x) != length(y), thanks to Alexander Ploner's report and
    patch proposal (PR#18557).
  * norm(&lt;0-length&gt;, "2") now gives zero instead of an error, as all
    the other norm types, thanks to Mikael Jagan's PR#18542.
  * Build-stage Rd macros \packageAuthor and \packageMaintainer now
    process Authors@R, fixing NA results when the package DESCRIPTION
    omits Author and Maintainer fields.
  * Formatting and printing complex numbers could give things like
    0.1683-0i because of rounding error: -0i is now replaced by +0i.
  * postscript() refused to accept a title comment containing the
    letter "W" (PR#18599).
  * isoreg(c(1,Inf)) signals an error instead of segfaulting, fixing
    PR#18603.
  * tiff(type = "Xlib") was only outputting the last page of
    multi-page plots.
  * tools::latexToUtf8() again knows about \~{n} and other letters
    with tilde, fixing a regression in R 4.3.0, and about \^{i} as an
    alternative to \^{\i} (similarly with other accents).
    Furthermore, LaTeX codes for accented I letters are now correctly
    converted, also fixing related mistakes in
    tools::encoded_text_to_latex().
  * tar(*, tar = "internal") no longer creates out-of-spec tar files
    in the very rare case of user or group names longer than 32
    bytes, fixing PR#17871 with thanks to Ivan Krylov.
  * When using the "internal" timezone datetime code, adding a
    fraction of a second no longer adds one second, fixing PR#16856
    from a patch by Ivan Krylov.
  * tools::checkRd() no longer produces spurious notes about
    "unnecessary braces" from multi-line Rd results of \Sexpr macros.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1709208000">- CHANGES IN R 4.3.3:
  NEW FEATURES:
  * iconv() now fixes up variant encoding names such as "utf8"
    case-insensitively.
  DEPRECATED AND DEFUNCT:
  * The legacy encoding = "MacRoman" is deprecated in pdf() and
    postscript(): support was incomplete in earlier versions of R.
  BUG FIXES:
  * Arguments are now properly forwarded to methods on S4 generics
    with ... in the middle of their formal arguments. This was broken
    for the case when a method introduced an argument but did not
    include ... in its own formals. Thanks to Herv'e Pag`es for the
    report PR#18538.
  * Some invalid file arguments to pictex(), postscript() and xfig()
    opened a file called NA rather than throw an error.  These
    included postscript(NULL) (which some people expected to work
    like pdf(NULL)).
  * Passing filename = NA to svg(), cairo_pdf(), cairo_ps() or the
    Cairo-based bitmap devices opened a file called NA: it now throws
    an error.
  * quartz(file = NA) opened a file called NA, including when used as
    a Quartz-based bitmap device.  It now gives an error.
  * rank(&lt;long vector&gt;) now works, fixing PR#18617, thanks to Ilia
    Kats.
  * seq.int() did not adequately check its length.out argument.
  * match(&lt;POSIXct&gt;, .) is correct again for differing time zones,
    ditto for "POSIXlt", fixing PR#18618 reported by Bastian Klein.
  * drop.terms(*, dropx = &lt;0-length&gt;) now works, fixing PR#18563 as
    proposed by Mikael Jagan.
  * drop.terms(*) keeps + offset(.) terms when it should, PR#18565,
    and drop.terms() no longer makes up a response, PR#18566, fixing
    both bugs thanks to Mikael Jagan.
  * getS3method("t", "test") no longer finds the t.test() function,
    fixing PR#18627.
  * pdf() and postscript() support for the documented Adobe encodings
    "Greek" and "Cyrilllic" was missing (although the corresponding
    Windows' codepages could be used).
  * Computations of glyph metric information for pdf() and
    postscript() did not take into account that transliteration could
    replace one character by two or more (only seen on macOS 14) and
    typically warned that the information was not known.
  * rank(x) no longer overflows during integer addition, when
    computing rank average for largish but not-yet long vector x,
    fixing PR#18630, thanks to Ilia Kats.
  * list.files() on Windows now returns also files with names longer
    that 260 bytes (the Windows limit is 260 characters).
    Previously, some file names particularly with 'East Asian'
    characters were omitted.
  * cov2cor(&lt;0 x 0&gt;) now works, fixing PR#18423 thanks to Mikael
    Jagan and Elin Waring.
  * cov2cor(&lt;negative diagonal&gt;) and similar now give one warning
    instead of two, with better wording, fixing PR#18424 thanks to
    Mikael Jagan.
  * tools:: startDynamicHelp() now ensures port is in proper range,
    fixing PR#18645.
  * pbeta(x, a,b) is correct now for x=0 or 1 in the boundary cases
    where a or b or both are 0, fixing PR#18672 thanks to Michael
    Fay.
  * pmatch(x, table) for large table, also called for data frame row
    selection, dfrm[nm, ], is now interruptible, fixing PR#18656.
  * predict(&lt;rank-deficient lm&gt;, newdata=*) fix computing of nbasis,
    see Russ Lenth's comment 29 in PR#16158.
  * Added a work-around for a bug in macOS 14.3.1 and higher which
    prevents R plots in the Quartz Cocoa device from updating on
    screen.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1713960000">- CHANGES IN R 4.4.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Startup banners, R --version, sessionInfo() and R CMD check no
    longer report (64-bit) as part of the platform as this is almost
    universal - the increasingly rare 32-bit platforms will still
    report (32-bit).
    On Windows, ditto for window titles.
  * is.atomic(NULL) now returns FALSE, as NULL is not an atomic
    vector.  Strict back-compatibility would replace is.atomic(foo)
    by (is.null(foo) || is.atomic(foo)) but should happen only
    sparingly.
  NEW FEATURES:
  * The confint() methods for "glm" and "nls" objects have been
    copied to the stats package.  Previously, they were stubs which
    called versions in package MASS. The MASS namespace is no longer
    loaded if you invoke (say) confint(glmfit).  Further, the "glm"
    method for profile() and the plot() and pairs() methods for class
    "profile" have been copied from MASS to stats.  (profile.nls()
    and plot.profile.nls() were already in stats.)
  * The confint() and profile methods for "glm" objects have gained a
    possibility to do profiling based on the Rao Score statistic in
    addition to the default Likelihood Ratio. This is controlled by a
    new test = argument.
  * The pairs() method for "profile" objects has been extended with a
    which = argument to allow plotting only a subset of the
    parameters.
  * The "glm" method for anova() computes test statistics and
    p-values by default, using a chi-squared test or an F test
    depending on whether the dispersion is fixed or free.  Test
    statistics can be suppressed by giving argument test a false
    logical value.
  * In setRepositories() the repositories can be set using their
    names via name = instead of index ind =.
  * methods() and .S3methods() gain a all.names option for the (rare)
    case where functions starting with a . should be included.
  * Serializations can now be interrupted (e.g., by Ctrl-C on a
    Unix-alike) if they take too long, e.g., from save.image(),
    thanks to suggestions by Ivan Krylov and others on R-devel.
  * New startup option --max-connections to set the maximum number of
    simultaneous connections for the session.  Defaults to 128 as
    before: allowed values up to 4096 (but resource limits may in
    practice restrict to smaller values).
  * R on Windows (since Windows 10 2004) now uses the new Segment
    Heap allocator. This may improve performance of some
    memory-intensive applications.
  * When R packages are built, typically by R CMD build &lt;pkg&gt;, the
    new --user=&lt;build_user&gt; option overrides the (internally
    determined) user name, currently Sys.info()["user"] or LOGNAME.
    This is a (modified) fulfillment of Will Landau's suggestion in
    PR#17530.
  * tools::testInstalledBasic() gets new optional arguments outDir
    and testSrcdir, e.g., allowing to use it in a &lt;builddir&gt; !=
    &lt;srcdir&gt; setup, and in standard "binary" Windows installation
  * if* a source tests/ folder is present.
  * range(&lt;DT_with_Inf&gt;, finite = TRUE) now work for objects of class
    "Date", "POSIXct", and "POSIXlt" with infinite entries,
    analogously to range.default(), as proposed by Davis Vaughan on
    R-devel.  Other range()-methods can make use of new function
    .rangeNum().
  * New .internalGenerics object complementing .S3PrimitiveGenerics,
    for documentation and low-level book-keeping.
  * grid() now invisibly returns the x- and y- coordinates at which
    the grid-lines were drawn.
  * norm(., type) now also works for complex matrices.
  * kappa(., exact = TRUE, norm = *) now works for all norms and also
    for complex matrices.  In symmetric / triangular cases, the new
    argument uplo = "U" | "L" allows the upper or lower triangular
    part to be specified.
  * memDecompress(type = "unknown") recognizes compression in the
    default 'zlib' format as used by memCompress(type = "gzip").
  * memCompress() and memDecompress() will use the libdeflate library
    (&lt;https://github.com/ebiggers/libdeflate&gt;) if installed.  This
    uses the same type of compression for type = "gzip" but is 1.5-2x
    faster than the system libz library on some common platforms: the
    speed-up may depend on the library version.
  * diff() for objects of class "Date", "POSIXct", and "POSIXlt"
    accepts a units argument passed via ....
  * Dynamic help now does a much better job of rendering package
    DESCRIPTION metadata.
  * Rprof() gains an event argument and support for elapsed (real)
    time profiling on Unix (PR#18076).
  * filled.contour() gains a key.border argument.
  * tools::update_pkg_po() gets arguments pot_make and mo_make for
    _not_ re-making the corresponding files, and additionally a
    verbose argument.
  * Hexadecimal string colour specifications are now accepted in
    short form, so, for example, we can use "#123", which is
    equivalent to "#112233".
    Thanks to MikeFC for the original idea and Ella Kaye, Malcolm
    Barrett, George Stagg, and Hanne Oberman for the patch.
  * Plain-text help shows \var markup by angle brackets.
  * The new experimental primitive function declare() is intended to
    eventually allow information about R code to be communicated to
    the interpreter, compiler, and code analysis tools. The syntax
    for declarations is still being developed.
  * Functions psmirnov(), qsmirnov() and rsmirnov() in package stats
    have had argument two.sided renamed to alternative, to take into
    account that the permutation distributions of the one-sided
    statistics can be different in the case of ties.  Consequence of
    PR#18582.
  * sort() is now an implicit S4 generic in methods.
  * Formatting and printing, format(z), print(z), of complex vectors
    z no longer zap relatively small real or imaginary parts to zero,
    fixing PR#16752.  This is an API change, as it was documented
    previously to round real and imaginary parts together on purpose,
    producing nicer looking output.  As mentioned, e.g. in the PR,
    this change is compatible with many other "R-like" programming
    environments.
    We have simplified the internal code and now basically format the
    real and imaginary parts independently of each other.
  * New experimental functions Tailcall() and Exec() to support
    writing stack-space-efficient recursive functions.
  * Where characters are attempted to be plotted by pdf(),
    postscript() and xfig() which are not in the selected 8-bit
    character set (most often Latin-1) and the R session is using a
    UTF-8 locale, the warning messages will show the UTF-8 character
    rather than its bytes and one dot will be substituted per
    character rather than per byte.  (Platforms whose iconv() does
    transliteration silently plot the transliteration.)
    In a UTF-8 locale some transliterations are now done with a
    warning (e.g., dashes and Unicode minus to hyphen, ligatures are
    expanded, permille (‰) is replaced by o/oo), although the OS may
    have got there first.  These are warnings as they will continue
    to be replaced by dots in earlier versions of R.
  * The matrix multiplication functions crossprod() and tcrossprod()
    are now also primitive and S3 generic, as %*% had become in R
    4.3.0.
  * source() and example() have a new optional argument catch.aborts
    which allows continued evaluation of the R code after an error.
  * The non-Quartz tiff() devices allow additional types of
    compression if supported by the platform's libtiff library.
  * The list of base and recommended package names is now provided by
    tools::standard_package_names().
  * cairo_pdf() and cairo_ps() default to onefile = TRUE to closer
    match pdf() and postscript().
  * New option catch.script.errors provides a documented way to catch
    errors and then continue in non-interactive use.
  * L %||% R newly in base is an expressive idiom for the phrases
    if(!is.null(L)) L else R or if(is.null(L)) R else L.
  * The return value from warnings() now always inherits from
    "warnings" as documented, now also in the case of no warnings
    where it previously returned NULL.
  * as.complex("1i") now returns 0 + 1i instead of NA with a warning.
  * z &lt;- c(NA, 1i) now keeps the imaginary part Im(z[1]) == 0, no
    longer coercing to NA_complex_.  Similarly, cumsum(z) correctly
    sums real and imaginary parts separately, i.e., without
    "crosstalk" in case of NAs.
  * On Alpine Linux iconv() now maps "latin2", "latin-2", "latin9"
    and "latin-9" to encoding names the OS knows about
    (case-insensitively).
  * iconv(sub = "Unicode") now always zero-pads to four (hex) digits,
    rather than to 4 or 8.  (This seems to have become the convention
    once Unicode restricted the number of Unicode points to 2^21 - 1
    and so will never need more than 6 digits.)
  * NCOL(NULL) now returns 0 instead of 1, for consistency with
    cbind().
  * The information for the Euro glyph missing from the Adobe .afm
    files for the Courier, Helvetica and Times families has been
    copied from their URW equivalents - this will improve vertical
    centring in the pdf() and postscript() devices.
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.12.0.  The changes are almost entirely cosmetic.
  * The included LAPACK sources have been updated to version 3.12.0
    and some further double-complex routines added.
  * There are new font families for the 2014--5 URW 2.0 fonts (see
    ?pdf) which are included in recent versions of Ghostscript.
    These have font widths for most Greek glyphs and a few others
    which were missing from the original versions (whose font
    families remain available for reproducibility, although
    Ghostscript-based viewers will render using the 2.0 versions).
  * Improve the large-n efficiency of as.matrix(&lt;dist&gt;), thanks an R
    contributors effort, notably by Tim Taylor and Heather Turner,
    see PR#18660.
  * The default and numeric methods of all.equal() get a check.class
    option.
  * zapsmall() gets new optional arguments, function mFUN and min.d,
    for extra flexibility; fulfills a wish in PR#18199.  Also, it is
    now an implicit S4 generic in package methods.
  * The Rd filter for aspell() gains an ignore argument.
  * New generic function sort_by(), primarily useful for the
    data.frame method which can be used to sort rows of a data frame
    by one or more columns.
  * The icence headers for the RPC code in src/extra/xdr have been
    updated to use the GPL-compatible licence published by Oracle
    America in 2010.
  * New function pkg2HTML() in tools to create single-page HTML
    reference manuals for R packages.
  * The byte code evaluator now uses less C stack space for recursive
    calls to byte-compiled functions. It also makes more of an effort
    to avoid allocations for scalar return values.
  * New completion option backtick (disabled by default) allows
    non-syntactic completions to be wrapped in backquotes. This is
    currently only useful for Jupyter notebooks via the IRkernel
    package, and may cause problems for other backends.
  INSTALLATION:
  * The parser has been updated to work with bison 3.8.2, which is
    now used for the pre-generated parsers in gram.c, file.c, and
    gramRd.c. A few parser error messages have changed, which may
    affect code that relies on exact messages.
  INSTALLATION on a UNIX-ALIKE:
  * System valgrind headers are now required to use configure option
  - -with-valgrind-instrumentation with value 1 or 2.
  * configure will warn if it encounters a 32-bit build, as that is
    nowadays almost untested.
  * Environment variable R_SYSTEM_ABI is no longer used and so no
    longer recorded in etc/Renviron (it was not on Windows and was
    only ever used when preparing package tools).
  * If the libdeflate library and headers are available, libdeflate
    rather than libz is used to (de)compress R objects in lazy-load
    databases.  Typically tasks spend up to 5% of their time on such
    operations, although creating lazy-data databases is one of the
    exceptions.
    This can be suppressed if the library is available by the
    configure option --without-libdeflate-compression.
  * configure option --enable-lto=check has not worked reliably since
    2019 and has been removed.
  * The minimum autoconf requirement for a maintainer build has been
    increased to autoconf 2.71.
    It is intended to increase this to 2.72 for R 4.5.0: the
    distributed configure file was generated using 2.72.
  * The minimum version requirement for an external LAPACK has been
    reduced to 3.9.0.
  * No default C++ compiler is set if no C++17 compiler is detected:
    there is no longer an automatic fallback to C++14 or C++11.
    Compilers from the last five years should have sufficient
    support: for others macros CXX and CXXSTD can be set in file
    config.site to provide a fallback if needed.
    The Objective-C++ compiler now by default uses the standard
    selected by R for C++ (currently C++17) rather than the default
    standard for the C++ compiler (which on macOS is still C++98).
  INSTALLATION on macOS:
  * A new configure option --with-newAccelerate makes use of Apple's
    'new' BLAS / LAPACK interfaces in their Accelerate framework.
    Those interfaces are only available in macOS 13.3 or later, and
    building requires SDK 13.3 or later (from the Command Line Tools
    or Xcode 14.3 or later).
    By default the option uses new Accelerate for BLAS calls: to also
    use it for LAPACK use option --with-newAccelerate=lapack.  The
    later interfaces provide LAPACK 3.9.1 rather than 3.2.1: 3.9.1 is
    from 2021-04 and does not include the improved algorithms
    introduced in LAPACK 3.10.0 (including for BLAS calls).
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools44, an update of the Rtools43 toolchain.  It is
    based on GCC 13 and newer versions of MinGW-W64, binutils and
    libraries (targeting 64-bit Intel CPUs).  R-devel can no longer
    be built using Rtools43 without changes.
  * Rtools44 has experimental support for 64-bit ARM (aarch64) CPUs
    _via_ the LLVM 17 toolchain using lld, clang/flang-new and
    libc++.
  UTILITIES:
  * R CMD check notes when S4-style exports are used without
    declaring a strong dependence on package methods.
  * tools::checkRd() (used by R CMD check) detects more problems with
    \Sexpr-based dynamic content, including bad nesting of \Sexprs
    and invalid arguments.
  * tools::checkRd() now reports Rd titles and section names ending
    in a period; this is ignored by R CMD check unless environment
    variable _R_CHECK_RD_CHECKRD_MINLEVEL_ is set to -5 or smaller.
  * R CMD check now notes Rd files without an \alias, as long
    documented in 'Writing R Extensions' §1.3.1.  The check for a
    missing \description has been moved from tools::checkRd() to
    tools::checkRdContents().
  * R CMD check now visits inst/NEWS.Rd and OS-specific man
    subdirectories when checking Rd files.
  * tools::checkDocFiles() and tools::checkRdContents() now also
    check internal Rd files by default, but "specially" (ignoring
    missing documentation of arguments).
  * R CMD Rdiff gets option --useEx.
  * R CMD check now warns on non-portable uses of Fortran KIND such
    as INTEGER(KIND=4) and REAL(KIND=8).
    To see the failing lines set environment variable
    _R_CHECK_FORTRAN_KIND_DETAILS_ to a true value.
  * When checking Rd files, R CMD check now notes some of the "lost
    braces" that tools::checkRd() finds.  Typical problems are Rd
    macros missing the initial backslash (e.g., code{...}), in-text
    set notation (e.g., {1, 2}, where the braces need escaping), and
    \itemize lists with \describe-style entries of the form
    \item{label}{description}.
  * R CMD INSTALL (and hence check) will compile C++ code with
  - DR_NO_REMAP if environment variable _R_CXX_USE_NO_REMAP_ is set
    to a true value.  It is planned that this will in future become
    the default for compiling C++.
  * The new built-in Rd macro \dontdiff{} can be used to mark example
    code whose output should be ignored when comparing check output
    to reference output (tests/Examples/&lt;pkg&gt;-Ex.Rout.save).  The
    \dontdiff tag, like \donttest, is _not_ shown on the rendered
    help page, so provides a clean alternative to ##
    IGNORE_RDIFF_(BEGIN|END) comments.
  * R CMD build when there is no NAMESPACE, now uses the recommended
    exportPattern("^[^.]"), instead of exporting everything.
  * R CMD check now warns about non-ASCII characters in the NAMESPACE
    file (in addition to R files). Such packages are not portable and
    may fail to install on some platforms.
  C-LEVEL FACILITIES:
  * Headers R_ext/Applic.h and R-ext/Linpack.h used to include
    R_ext/BLAS.h although this was undocumented and unneeded by their
    documented entry points.  They no longer do so.
  * New function R_missing(), factored out from do_missing(), used to
    fix PR#18579.
  * SEXP type S4SXP has been renamed to OBJSXP to support
    experimenting with alternative object systems.  The S4SXP value
    can still be used in C code but is now deprecated.  Based on
    contributions from the R Consortium's Object-Oriented Programming
    Working Group.
  * New function pow1p(x,y) for accurate (1+x)^y.
  * mkCharLenCE was incorrectly documented to take a size_t length
    but was implemented with int (and character strings in R are
    limited to 2^31 - 1 bytes).
  DEPRECATED AND DEFUNCT:
  * data() no longer handles zipped data from long-defunct (since R
    2.13.0) --use-zip-data installations.
  * The legacy graphics devices pictex() and xfig() are now
    deprecated.  They do not support recent graphics enhancements and
    their font handling is rudimentary. The intention is to retain
    them for historical interest as long as they remain somewhat
    functional.
  * Support for encoding = "MacRoman" has been removed from the pdf()
    and postscript() devices - this was a legacy encoding supporting
    classic macOS up to 2001 and no longer has universal libiconv
    support.
  * is.R() is deprecated as no other S dialect is known to be in use
    (and this could only identify historical dialects, not future
    ones).
    Further information on calls can be obtained by setting the
    environment variable _R_DEPRECATED_IS_R_ to error which turns the
    deprecation warning into an error and so by default gives a
    traceback.  (This is done by R CMD check --as-cran.)
  * UseMethod() no longer forwards local variables assigned in the
    generic function into method call environments before evaluating
    the method body. This makes method calls behave more like
    standard function calls and makes method code easier to analyze
    correctly.
  * The twelve as.data.frame.&lt;class&gt;() methods which were deprecated
    only via _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ and in R CMD
    check --as-cran are formally deprecated now in favour of calling
    as.data.frame() or as.data.frame.vector().  The deprecation
    "check" now works also when as.data.frame() is S4 generic thanks
    to Ivan Krylov.
  * The default method for the directional comparison operators &lt;, &gt;,
    &lt;=, and &gt;= now signals an error when one of the operands is a
    language object, i.e. a symbol or a call.
  * For terms.formula(), deprecate abb and neg.out arguments
    _formally_ in addition to just documenting it.
  BUG FIXES:
  * The methods package is more robust to not being attached to the
    search path.  More work needs to be done.
  * pairwise.t.test() misbehaved when subgroups had 0 DF for
    variance, even with pool.sd = TRUE.  (PR#18594 by Jack Berry).
  * Probability distribution functions [dpq]&lt;distrib&gt;(x, *), but also
    bessel[IKJY](x, .) now consistently preserve attributes(x) when
    length(x) == 0, e.g., for a 2 x 0 matrix, thanks to Karolis
    Koncevičius' report PR#18509.
  * Group "Summary" computations such as sum(1:3, 4, na.rm = 5, NA,
    7, na.rm = LL) now give an error instead of either 17 or NN for
    LL true or false, as proposed by Ivan Krylov on the R-devel
    mailing list.  (This also means it is now an error to specify
    na.rm more than once.)
  * as.complex(x) now returns complex(real = x, imaginary = 0) for
    _all_ numerical and logical x, notably also for NA or
    NA_integer_.
  * Directories are now omitted by file.copy(, recursive = FALSE) and
    in file.append() (PR#17337).
  * gsub() and sub() are now more robust to integer overflow when
    reporting errors caused by too large input strings (PR#18346).
  * Top-level handlers are now more robust to attempts to remove a
    handler whilst handlers are running (PR#18508).
  * The handling of Alt+F4 in dialogs created on Windows using
    GraphApp has been fixed (PR#13870).
  * density() more consistently computes grid values for the
    FFT-based convolution, following Robert Schlicht's analysis and
    proposal in PR#18337, correcting density values typically by a
    factor of about 0.999.  Argument old.coords = TRUE provides back
    compatibility.
  * palette.colors() gains a name argument that defaults to FALSE
    controlling whether the vector of colours that is returned has
    names (where possible).  PR#18529.
  * tools::xgettext() no longer extracts the (non-translatable) class
    names from warningCondition and errorCondition calls.
  * S3method(&lt;gen&gt;, &lt;class&gt;, &lt;func&gt;) in the NAMESPACE file now works
    (again) when &lt;func&gt; is visible from the namespace, e.g.,
    imported, or in base.
  * getParseData(f) now also works for a function defined in the
    first of several &lt;pkg&gt;/R/*.R source files, thanks to Kirill
    Müller's report and Duncan Murdoch's patch in PR#16756.
  * Rd \Sexpr macros with nested #ifdef conditionals were not
    processed.
  * A non-blocking connection with non-default encoding (such as a
    socket) now correctly returns from readLines() after new data has
    arrived also when its EOF had been reached previously.  Thanks to
    Peter Meilstrup's report on R-devel and Ivan Krylov's report and
    patch proposal in PR#18555.
  * tools::checkRdContents() failed to detect empty argument
    descriptions when they spanned multiple lines, including those
    generated by prompt().  These cases are now noted by R CMD check.
  * Plain-text help no longer outputs spurious colons in the
    arguments list (for multi-line \item labels in the Rd source).
  * kappa() and rcond() work correctly in more cases; kappa(., norm =
    "2") now warns that it computes the 1-norm with (default) exact =
    FALSE; prompted by Mikael Jagan's quite comprehensive PR#18543.
  * Rd skeletons generated by prompt() or promptData() now use a
    dummy title (so R CMD build works).  tools::checkRdContents() has
    been updated to detect such template leftovers, including from
    promptPackage().
  * When S4 method dispatch fails because no method was found, the
    error message now includes the signature argument names; thanks
    to Michael Chirico's proposal on the R-devel list.
  * withAutoprint({ .. }) now preserves srcrefs previously lost,
    thanks to Andrew Simmons' report plus fix in PR#18572.
  * transform.data.frame() no longer adjusts names; in particular,
    untransformed variables are kept as-is, including those with
    syntactically invalid names (PR#17890).
  * The keep.source option for Rd \Sexpr blocks is no longer ignored.
  * The formula methods for t.test() and wilcox.test() now catch when
    paired is passed, addressing PR#14359; use Pair(x1, x2) ~ 1 for a
    paired test.
  * The level reported in the browser prompt was often too large. It
    now shows the number of browser contexts on the stack.
  * For cbind() and rbind(), the optional deparse.level argument is
    now properly passed to methods, thanks to Mikael Jagan's PR#18579
    and comments there.
  * Some error and warning messages for large ('long vector')
    matrix(v, nr, nc) and dim(m) &lt;- d are now correct about sizes,
    using long long formatting, fixing PR#18612 (and more) reported
    by Mikael Jagan.
  * readChar(useBytes = TRUE) now terminates strings even when the
    underlying connection uses extra spaces in the input buffer.
    This fixes problems with extra garbage seen with gzip
    connections, PR#18605.
  * Named capture in PCRE regular expressions now works also with
    more than 127 named groups (PR#18588).
  * Datetime functions are now robust against long jumps when dealing
    with internal time zone changes.  This avoids confusing warnings
    about an invalid time zone, previously triggered by turning
    warnings into errors or handling them via tryCatch (PR#17966,
    PR#17780).
  * Datetime functions now restore even an empty TZ environment
    variable after internal time zone changes (PR#17724).  This makes
    results of datetime functions with this (typically unintentional)
    setting more predictable.
  * drop.terms(*) now drops response as by default, keep.response =
    FALSE, fixing PR#18564 thanks to Mikael Jagan.
  * dummy.coef(.) now also works for lm()-models with character
    categorical predictor variables rather than factor ones, fixing
    PR#18635 reported by Jinsong Zhao.
  * formals(f) &lt;- formals(f) now also works for a function w/o
    arguments and atomic _constant_ body(f).
  * Correct as.function(&lt;invalid list&gt;, .)'s error message.
  * removeSource() is yet more thorough in finding and removing
    "srcref" and the other source references from parsed R language
    chunks, fixing PR#18638 thanks to Andrew Simmons.
  * dgeom() is more accurate now, notably when its result is very
    small, fixing PR#18642 thanks to the proposal of Morten Welinder,
    also improving other instances where C level binom_raw(x, n, ..)
    has x == 0 or x== n.
  * warning() with options(warn = 1) has improved output for
    multi-line messages.
  * axis.Date() and axis.POSIXct() now respect the par("lab") setting
    for the number of pretty() intervals.
  * Comparisons for language objects (which are based on deparsing)
    are now more careful about using accurate deparsed results
    (PR#18676).
  * Plain-text help (Rd2txt) now correctly preserves blank lines
    following single-line \dontrun code.
  * &lt;POSIXlt&gt;[*] no longer sets wrong "balanced" attribute, fixing
    PR#18681 thanks to Mikael Jagan.
  * str(&lt;classed-call&gt;) now deparses the call as expected, fixing
    PR#18684, reported by Dave Slager.
  * In Rd examples, code following the closing brace of a \dontrun,
    \dontshow or \donttest tag on the same line is no longer skipped
    when R CMD check runs the examples.
  * as.data.frame(matrix(*, ncol=0)) now gets valid names() and
    colnames(); reported by Davis Vaughan on the R-devel list.
  * Internal Mathlib function stirlerr(n) is now almost fully
    (52-bit) accurate for all n &gt;= ~5.9 and more accurate also in the
    range 1 -- 5.9.  This entails small ("after 12th decimal")
    changes in density functions, e.g., dgamma() in _some_ regions of
    their support.  The fix was partly prompted by Morten Welinder's
    PR#18640.
  * Numbers like 9876543.2 are now considered non-integer by Mathlib
    internal R_nonint(), amending original fix of PR#15734.
  * Rd comment lines no longer cause broken paragraphs in the
    rendered PDF and plain-text help. In code blocks, pure comment
    lines (starting with %) no longer produce an empty line.
  * xtabs(Freq ~ .) now consistently defaults to na.action = na.pass,
    using na.rm = FALSE (added as an argument) when summing over Freq
    (PR#17770).
  * tools::testInstalledPackage() is no longer silent about failures
    from running examples or tests and its return code no longer
    ignores failures from checking vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1718366400">- CHANGES IN R 4.4.1:
  C-LEVEL FACILITIES:
  * Functions R_atof and R_strtod declared in header R_ext/Utils.h
    are now documented in 'Writing R Extensions' and so formally part
    of the API.
  * The non-API entry points Rf_setSVector, Rf_StringFalse,
    Rf_StringTrue and Rf_isBlankString have been added to those
    reported by R CMD check.
  * The new function Rf_allocLang is now available. This provides an
    alternative to the idiom of calling Rf_allocList followed by
    SET_TYPEOF.
  UTILITIES:
  * R CMD check now reports as warnings what gfortran calls 'Fortran
    2018 deleted features', all of which have long been marked as
    'obsolescent' and some of which were deleted in Fortran 2008 or
    earlier.  Fortran compilers are no longer required to support
    these.
  BUG FIXES:
  * as.numeric(), scan(), type.convert() and other places which use
    the internal C function R_strtod now require a _non-empty_ digit
    sequence in a decimal or binary exponent.  This aligns with the
    C/POSIX standard for strtod and with ?NumericConstants.
  * as.data.frame(m, make.names=NA) now works correctly for a matrix
    m with NA's in row names.
  * The error message from &lt;POSIXlt&gt;[["hour"]] and similar now
    mentions *[[, "hour"]], as wished for in PR#17409 and proposed by
    Michael Chirico.
  * qbinom() and potentially qpois(), qnbinom(), no longer sometimes
    fail accurate inversion (of pbinom(), etc), thanks to Christopher
    Chang's report and patch in PR#18711.
  * The internal help server on Windows can again serve requests sent
    in quick succession, fixing a regression in R 4.4.0.
  * debugcall(&lt;S3Generic&gt;()) now also works when a corresponding
    S4-generic version is in the methods cache (PR#18143).
  * Package tools' toTitleCase(ch0) now returns character(0) when ch0
    is of zero length; fixing PR#18724, reported by David Hugh Jones.
  * R CMD check is no longer broken (without a check result and no
    explanation in 00check.log) for a package which declares an
    invalid VignetteBuilder in DESCRIPTION but has no vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1730376000">- CHANGES IN R 4.4.2:
  C-LEVEL FACILITIES:
  * The S-compatibility macros F77_COM and F77_COMDECL defined in
    header R_ext/RS.h are deprecated and will be removed shortly.  We
    could find no record of their use.
  BUG FIXES:
  * Mathlib function lgammacor(x) no longer warns about underflow to
    zero for large x.
  * Text widths and heights were incorrectly reported by the Quartz
    device if the drawing context didn't exist yet (typically when
    drawing off-screen to a window that is yet to appear, see
    PR#18591).
  * The Quartz device could segfault in cases where paths with spaces
    are used in the new glyph drawing API.  Thanks to Tomek
    Gieorgijewski (PR#18758).
  * On macOS in R CRAN builds, it is again possible to read
    little-endian UTF-16 text with a BOM from a connection using
    encoding="UTF-16".  Users building R from source should avoid
    using the system libiconv in macOS 14.1 and later.
  * methods' internal .requirePackage() now re-enables primitive
    method dispatch when needed; thanks to Ivan Krylov for
    demystifying CRAN package check failures on the R-devel mailing
    list.</changelog>
</package>
<package pkgid="7825190bba3d20dfa69febfb689016798e6e8ce038b67ea021d8245e68f5f2183867ff352a2c796bf8520a8dc1d8429f828f119430de886eaf5c269427368227" name="R-foreign" arch="x86_64">
  <version epoch="0" ver="0.8.87" rel="51.0.2.2.sr20241103"/>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1620302400">- To get in sync with d:l:R:autoCRAN the Matrix package's split
  in -devel was reversed.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339200">- improved spec file according to comments of dimstar in
  https://build.opensuse.org/request/show/892685</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339201">- CHANGES IN R 4.1.0:
  FUTURE DIRECTIONS:
  * It is planned that the 4.1.x series will be the last to support
    32-bit Windows, with production of binary packages for that
    series continuing until early 2023.
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Data set esoph in package datasets now provides the correct
    numbers of controls; previously it had the numbers of cases added
    to these.  (Reported by Alexander Fowler in PR#17964.)
  NEW FEATURES:
  * www.omegahat.net is no longer one of the repositories known by
    default to setRepositories().  (Nowadays it only provides source
    packages and is often unavailable.)
  * Function package_dependencies() (in package tools) can now use
    different dependency types for direct and recursive dependencies.
  * The checking of the size of tarball in R CMD check --as-cran
    &lt;pkg&gt; may be tweaked via the new environment variable
    _R_CHECK_CRAN_INCOMING_TARBALL_THRESHOLD_, as suggested in
    PR#17777 by Jan Gorecki.
  * Using c() to combine a factor with other factors now gives a
    factor, an ordered factor when combining ordered factors with
    identical levels.
  * apply() gains a simplify argument to allow disabling of
    simplification of results.
  * The format() method for class "ftable" gets a new option justify.
    (Suggested by Thomas Soeiro.)
  * New ...names() utility.  (Proposed by Neal Fultz in PR#17705.)
  * type.convert() now warns when its as.is argument is not
    specified, as the help file always said it _should_.  In that
    case, the default is changed to TRUE in line with its change in
    read.table() (related to stringsAsFactor) in R 4.0.0.
  * When printing list arrays, classed objects are now shown _via_
    their format() value if this is a short enough character string,
    or by giving the first elements of their class vector and their
    length.
  * capabilities() gets new entry "Rprof" which is TRUE when R has
    been configured with the equivalent of --enable-R-profiling (as
    it is by default).  (Related to Michael Orlitzky's report
    PR#17836.)
  * str(xS4) now also shows extraneous attributes of an S4 object
    xS4.
  * Rudimentary support for vi-style tags in rtags() and R CMD rtags
    has been added.  (Based on a patch from Neal Fultz in PR#17214.)
  * checkRdContents() is now exported from tools; it and also
    checkDocFiles() have a new option chkInternal allowing to check
    Rd files marked with keyword "internal" as well.  The latter can
    be activated for R CMD check via environment variable
    _R_CHECK_RD_INTERNAL_TOO_.
  * New functions numToBits() and numToInts() extend the raw
    conversion utilities to (double precision) numeric.
  * Functions URLencode() and URLdecode() in package utils now work
    on vectors of URIs.  (Based on patch from Bob Rudis submitted
    with PR#17873.)
  * path.expand() can expand ~user on most Unix-alikes even when
    readline is not in use.  It tries harder to expand ~, for example
    should environment variable HOME be unset.
  * For HTML help (both dynamic and static), Rd file links to help
    pages in external packages are now treated as references to
    topics rather than file names, and fall back to a file link only
    if the topic is not found in the target package. The earlier rule
    which prioritized file names over topics can be restored by
    setting the environment variable _R_HELP_LINKS_TO_TOPICS_ to a
    false value.
  * c() now removes NULL arguments before dispatching to methods,
    thus simplifying the implementation of c() methods, _but_ for
    back compatibility keeps NULL when it is the first argument.
    (From a report and patch proposal by Lionel Henry in PR#17900.)
  * Vectorize()'s result function's environment no longer keeps
    unneeded objects.
  * Function ...elt() now propagates visibility consistently with
    ..n.  (Thanks to Lionel Henry's PR#17905.)
  * capture.output() no longer uses non-standard evaluation to
    evaluate its arguments.  This makes evaluation of functions like
    parent.frame() more consistent.  (Thanks to Lionel Henry's
    PR#17907.)
  * packBits(bits, type="double") now works as inverse of
    numToBits().  (Thanks to Bill Dunlap's proposal in PR#17914.)
  * curlGetHeaders() has two new arguments, timeout to specify the
    timeout for that call (overriding getOption("timeout")) and TLS
    to specify the minimum TLS protocol version to be used for
    https:// URIs (_inter alia_ providing a means to check for sites
    using deprecated TLS versions 1.0 and 1.1).
  * For nls(), an optional constant scaleOffset may be added to the
    denominator of the relative offset convergence test for cases
    where the fit of a model is expected to be exact, thanks to a
    proposal by John Nash.  nls(*, trace=TRUE) now also shows the
    convergence criterion.
  * Numeric differentiation _via_ numericDeriv() gets new optional
    arguments eps and central, the latter for taking central divided
    differences.  The latter can be activated for nls() via
    nls.control(nDcentral = TRUE).
  * nls() now passes the trace and control arguments to getInitial(),
    notably for all self-starting models, so these can also be fit in
    zero-noise situations via a scaleOffset.  For this reason, the
    initial function of a selfStart model must now have ... in its
    argument list.
  * bquote(splice = TRUE) can now splice expression vectors with
    attributes: this makes it possible to splice the result of
    parse(keep.source = TRUE).  (Report and patch provided by Lionel
    Henry in PR#17869.)
  * textConnection() gets an optional name argument.
  * get(), exists(), and get0() now signal an error if the first
    argument has length greater than 1.  Previously additional
    elements were silently ignored.  (Suggested by Antoine Fabri on
    R-devel.)
  * R now provides a shorthand notation for creating functions, e.g.
    \(x) x + 1 is parsed as function(x) x + 1.
  * R now provides a simple native forward pipe syntax |&gt;.  The
    simple form of the forward pipe inserts the left-hand side as the
    first argument in the right-hand side call.  The pipe
    implementation as a syntax transformation was motivated by
    suggestions from Jim Hester and Lionel Henry.
  * all.equal(f, g) for functions now by default also compares their
    environment(.)s, notably via new all.equal method for class
    function.  Comparison of nls() fits, e.g., may now need
    all.equal(m1, m2, check.environment = FALSE).
  * .libPaths() gets a new option include.site, allowing to _not_
    include the site library.  (Thanks to Dario Strbenac's suggestion
    and Gabe Becker's PR#18016.)
  * Lithuanian translations are now available.  (Thanks to Rimantas
    Zakauskas.)
  * names() now works for DOTSXP objects.  On the other hand, in
    R-lang, the R language manual, we now warn against relying on the
    structure or even existence of such dot-dot-dot objects.
  * all.equal() no longer gives an error on DOTSXP objects.
  * capabilities("cairo") now applies only to the file-based devices
    as it is now possible (if very unusual) to build R with Cairo
    support for those but not for X11().
  * There is optional support for tracing the progress of
    loadNamespace() - see its help.
  * (Not Windows.)  l10n_info() reports an additional element, the
    name of the encoding as reported by the OS (which may differ from
    the encoding part (if any) of the result from
    Sys.getlocale("LC_CTYPE").
  * New function gregexec() which generalizes regexec() to find _all_
    disjoint matches and well as all substrings corresponding to
    parenthesized subexpressions of the given regular expression.
    (Contributed by Brodie Gaslam.)
  * New function charClass() in package utils to query the
    wide-character classification functions in use (such as
    iswprint).
  * The names of quantile()'s result no longer depend on the global
    getOption("digits"), but quantile() gets a new optional argument
    digits = 7 instead.
  * grep(), sub(), regexp and variants work considerably faster for
    long factors with few levels.  (Thanks to Michael Chirico's
    PR#18063.)
  * Provide grouping of x11() graphics windows within a window
    manager such as Gnome or Unity; thanks to a patch by Ivan Krylov
    posted to R-devel.
  * The split() method for class data.frame now allows the f argument
    to be specified as a formula.
  * sprintf now warns on arguments unused by the format string.
  * New palettes "Rocket" and "Mako" for hcl.colors() (approximating
    palettes of the same name from the 'viridisLite' package).
    Contributed by Achim Zeileis.
  * The base environment and its namespace are now locked (so one can
    no longer add bindings to these or remove from these).
  * Rterm handling of multi-byte characters has been improved,
    allowing use of such characters when supported by the current
    locale.
  * Rterm now accepts ALT+ +xxxxxxxx sequences to enter Unicode
    characters as hex digits.
  * Environment variable LC_ALL on Windows now takes precedence over
    LC_CTYPE and variables for other supported categories, matching
    the POSIX behaviour.
  * duplicated() and anyDuplicated() are now optimized for integer
    and real vectors that are known to be sorted via the ALTREP
    framework. Contributed by Gabriel Becker via PR#17993.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 14
    and so packages that provide graphics devices should be
    reinstalled.
  * Graphics devices should now specify deviceVersion to indicate
    what version of the graphics engine they support.
  * Graphics devices can now specify deviceClip.  If TRUE, the
    graphics engine will never perform any clipping of output itself.
    The clipping that the graphics engine does perform (for both
    canClip = TRUE and canClip = FALSE) has been improved to avoid
    producing unnecessary artifacts in clipped output.
  * The grid package now allows gpar(fill) to be a linearGradient(),
    a radialGradient(), or a pattern().  The viewport(clip) can now
    also be a grob, which defines a clipping path, and there is a new
    viewport(mask) that can also be a grob, which defines a mask.
    These new features are only supported so far on the Cairo-based
    graphics devices and on the pdf() device.
  * (Not Windows.)  A warning is given when a Cairo-based type is
    specified for a png(), jpeg(), tiff() or bmp() device but Cairo
    is unsupported (so type = "Xlib" is tried instead).
  * grSoftVersion() now reports the versions of FreeType and
    FontConfig if they are used directly (not _via_ Pango), as is
    most commonly done on macOS.
  C-LEVEL FACILITIES:
  * The _standalone_ libRmath math library and R's C API now provide
    log1pexp() again as documented, and gain log1mexp().
  INSTALLATION on a UNIX-ALIKE:
  * configure checks for a program pkgconf if program pkg-config is
    not found.  These are now only looked for on the path (like
    almost all other programs) so if needed specify a full path to
    the command in PKG_CONFIG, for example in file config.site.
  * C99 function iswblank is required - it was last seen missing ca
    2003 so the workaround has been removed.
  * There are new configure options --with-internal-iswxxxxx,
  - -with-internal-towlower and --with-internal-wcwidth which allows
    the system functions for wide-character classification,
    case-switching and width (wcwidth and wcswidth) to be replaced by
    internal ones.  The first has long been used on macOS, AIX (and
    Windows) but this enables it to be unselected there and selected
    for other platforms (it is the new default on Solaris).  The
    second is new in this version of R and is selected by default on
    macOS and Solaris.  The third has long been the default and
    remains so as it contains customizations for East Asian
    languages.
    System versions of these functions are often minimally
    implemented (sometimes only for ASCII characters) and may not
    cover the full range of Unicode points: for example Solaris (and
    Windows) only cover the Basic Multilingual Plane.
  * Cairo installations without X11 are more likely to be detected by
    configure, when the file-based Cairo graphics devices will be
    available but not X11(type = "cairo").
  * There is a new configure option --with-static-cairo which is the
    default on macOS.  This should be used when only static cairo
    (and where relevant, Pango) libraries are available.
  * Cairo-based graphics devices on platforms without Pango but with
    FreeType/FontConfig will make use of the latter for font
    selection.
  LINK-TIME OPTIMIZATION on a UNIX-ALIKE:
  * Configuring with flag --enable-lto=R now also uses LTO when
    installing the recommended packages.
  * R CMD INSTALL and R CMD SHLIB have a new flag --use-LTO to use
    LTO when compiling code, for use with R configured with
  - -enable-lto=R.  For R configured with --enable-lto, they have
    the new flag --no-use-LTO.
    Packages can opt in or out of LTO compilation _via_ a UseLTO
    field in the DESCRIPTION file.  (As usual this can be overridden
    by the command-line flags.)
  BUILDING R on Windows:
  * for GCC &gt;= 8, FC_LEN_T is defined in config.h and hence character
    lengths are passed from C to Fortran in _inter alia_ BLAS and
    LAPACK calls.
  * There is a new text file src/gnuwin32/README.compilation, which
    outlines how C/Fortran code compilation is organized and
    documents new features:
  * R can be built with Link-Time Optimization with a suitable
    compiler - doing so with GCC 9.2 showed several
    inconsistencies which have been corrected.
  * There is support for cross-compiling the C and Fortran code
    in R and standard packages on suitable (Linux) platforms.
    This is mainly intended to allow developers to test later
    versions of compilers - for example using GCC 9.2 or 10.x has
    detected issues that GCC 8.3 in Rtools40 does not.
  * There is experimental support for cross-building R packages
    with C, C++ and/or Fortran code.
  * The R installer can now be optionally built to support a single
    architecture (only 64-bit or only 32-bit).
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++14 where
    available (which it is on all currently checked platforms): if
    not (as before) C++11 is used if available otherwise C++ is not
    supported.
    Packages which specify C++11 will still be installed using C++11.
    C++14 compilers may give deprecation warnings, most often for
    std::random_shuffle (deprecated in C++14 and removed in C++17).
    Either specify C++11 (see 'Writing R Extensions') or modernize
    the code and if needed specify C++14.  The latter has been
    supported since R 3.4.0 so the package's DESCRIPTION would need
    to include something like
    Depends: R (&gt;= 3.4)
  PACKAGE INSTALLATION on Windows:
  * R CMD INSTALL and R CMD SHLIB make use of their flag --use-LTO
    when the LTO_OPT make macro is set in file etc/${R_ARCH}/Makeconf
    or in a personal/site Makevars file.  (For details see 'Writing R
    Extensions' SS4.5.)
    This provides a valuable check on code consistency.  It does work
    with GCC 8.3 as in Rtools40, but that does not detect everything
    the CRAN checks with current GCC do.
  PACKAGE INSTALLATION on macOS:
  * The default personal library directory on builds with
  - -enable-aqua (including CRAN builds) now differs by CPU type,
    one of
    ~/Library/R/x86_64/x.y/library
    ~/Library/R/arm64/x.y/library
    This uses the CPU type R (and hence the packages) were built for,
    so when a x86_64 build of R is run under Rosetta emulation on an
    arm64 Mac, the first is used.
  UTILITIES:
  * R CMD check can now scan package functions for bogus return
    statements, which were possibly intended as return() calls (wish
    of PR#17180, patch by Sebastian Meyer). This check can be
    activated via the new environment variable
    _R_CHECK_BOGUS_RETURN_, true for --as-cran.
  * R CMD build omits tarballs and binaries of previous builds from
    the top-level package directory.  (PR#17828, patch by Sebastian
    Meyer.)
  * R CMD check now runs sanity checks on the use of LazyData, for
    example that a data directory is present and that
    LazyDataCompression is not specified without LazyData and has a
    documented value.  For packages with large LazyData databases
    without specifying LazyDataCompression, there is a reference to
    the code given in 'Writing R Extensions' SS1.1.6 to test the
    choice of compression (as in all the CRAN packages tested a
    non-default method was preferred).
  * R CMD build removes LazyData and LazyDataCompression fields from
    the DESCRIPTION file of packages without a data directory.
  ENCODING-RELATED CHANGES:
  * The parser now treats \Unnnnnnnn escapes larger than the upper
    limit for Unicode points (\U10FFFF) as an error as they cannot be
    represented by valid UTF-8.
    Where such escapes are used for outputting non-printable
    (including unassigned) characters, 6 hex digits are used (rather
    than 8 with leading zeros).  For clarity, braces are used, for
    example \U{0effff}.
  * The parser now looks for non-ASCII spaces on Solaris (as
    previously on most other OSes).
  * There are warnings (including from the parser) on the use of
    unpaired surrogate Unicode points such as \uD834.  (These cannot
    be converted to valid UTF-8.)
  * Functions nchar(), tolower(), toupper() and chartr() and those
    using regular expressions have more support for inputs with a
    marked Latin-1 encoding.
  * The character-classification functions used (by default) to
    replace the system iswxxxxx functions on Windows, macOS and AIX
    have been updated to Unicode 13.0.0.
    The character-width tables have been updated to include new
    assignments in Unicode 13.0.0.
  * The code for evaluating default (extended) regular expressions
    now uses the same character-classification functions as the rest
    of R (previously they differed on Windows, macOS and AIX).
  * There is a build-time option to replace the system's
    wide-character wctrans C function by tables shipped with R: use
    configure option --with-internal-towlower or (on Windows)
  - DUSE_RI18N_CASE in CFLAGS when building R.  This may be needed
    to allow tolower() and toupper() to work with Unicode characters
    beyond the Basic Multilingual Plane where not supported by system
    functions (e.g. on Solaris where it is the new default).
  * R is more careful when truncating UTF-8 and other multi-byte
    strings that are too long to be printed, passed to the system or
    libraries or placed into an internal buffer.  Truncation will no
    longer produce incomplete multibyte characters.
  DEPRECATED AND DEFUNCT:
  * Function plclust() from the package stats and
    package.dependencies(), pkgDepends(), getDepList(),
    installFoundDepends(), and vignetteDepends() from package tools
    are defunct.
  * Defunct functions checkNEWS() and readNEWS() from package tools
    and CRAN.packages() from utils have been removed.
  * R CMD config CXXCPP is defunct (it was deprecated in R 3.6.2).
  * parallel::detectCores() drops support for Irix (retired in 2013).
  * The LINPACK argument to chol.default(), chol2inv(),
    solve.default() and svd() has been defunct since R 3.1.0.  It was
    silently ignored up to R 4.0.3 but now gives an error.
  * Subsetting/indexing, such as ddd[*] or ddd$x on a DOTSXP
    (dot-dot-dot) object ddd has been disabled; it worked by accident
    only and was undocumented.
  BUG FIXES:
  * Many more C-level allocations (mainly by malloc and strdup) are
    checked for success with suitable alternative actions.
  * Bug fix for replayPlot(); this was turning off graphics engine
    display list recording if a recorded plot was replayed in the
    same session.  The impact of the bug became visible if resize the
    device after replay OR if attempted another savePlot() after
    replay (empty display list means empty screen on resize or empty
    saved plot).
  * R CMD check etc now warn when a package exports non-existing S4
    classes or methods, also in case of no "methods" presence.
    (Reported by Alex Bertram; reproducible example and patch by
    Sebastian Meyer in PR#16662.)
  * boxplot() now also accepts calls for labels such as ylab, the
    same as plot().  (Reported by Marius Hofert.)
  * The help page for xtabs() now correctly states that addNA is
    setting na.action = na.pass among others.  (Reported as PR#17770
    by Thomas Soeiro.)
  * The R CMD check &lt;pkg&gt; gives a longer and more comprehensible
    message when DESCRIPTION misses dependencies, e.g., in Imports:.
    (Thanks to the contributors of PR#17179.)
  * update.default() now calls the generic update() on the formula to
    work correctly for models with extended formulas.  (As reported
    and suggested by Neal Fultz in PR#17865.)
  * The horizontal position of leaves in a dendrogram is now correct
    also with center = FALSE.  (PR#14938, patch from Sebastian
    Meyer.)
  * all.equal.POSIXt() no longer warns about and subsequently ignores
    inconsistent "tzone" attributes, but describes the difference in
    its return value (PR#17277).  This check can be disabled _via_
    the new argument check.tzone = FALSE as suggested by Sebastian
    Meyer.
  * as.POSIXct() now populates the "tzone" attribute from its tz
    argument when x is a logical vector consisting entirely of NA
    values.
  * x[[2^31]] &lt;- v now works.  (Thanks to the report and patch by
    Suharto Anggono in PR#17330.)
  * In log-scale graphics, axis() ticks and label positions are now
    computed more carefully and symmetrically in their range,
    typically providing _more_ ticks, fulfilling wishes in PR#17936.
    The change really corresponds to an improved axisTicks() (package
    grDevices), potentially influencing grid and lattice, for
    example.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now correct to at
    least five digits where it was catastrophically wrong,
    previously.
  * sum(df) and similar "Summary"- and "Math"-group member functions
    now work for data frames df with logical columns, notably also of
    zero rows.  (Reported to R-devel by Martin "b706".)
  * unsplit() had trouble with tibbles due to unsound use of rep(NA,
    len)-indexing, which should use NA_integer_ (Reported to R-devel
    by Mario Annau.)
  * pnorm(x, log.p = TRUE) underflows to -Inf slightly later.
  * show(&lt;hidden S4 generic&gt;) prints better and without quotes for
    non-hidden S4 generics.
  * read.table() and relatives treated an "NA" column name as missing
    when check.names = FALSE PR#18007.
  * Parsing strings containing UTF-16 surrogate pairs such as
    "\uD834\uDD1E" works better on some (uncommon) platforms.
    sprintf("%X", utf8ToInt("\uD834\uDD1E")) should now give "1D11E"
    on all platforms.
  * identical(x,y) is no longer true for differing DOTSXP objects,
    fixing PR#18032.
  * str() now works correctly for DOTSXP and related exotics, even
    when these are doomed.
    Additionally, it no longer fails for lists with a class and
    "irregular" method definitions such that e.g. lapply(*) will
    necessarily fail, as currently for different igraph objects.
  * Too long lines in environment files (e.g. Renviron) no longer
    crash R. This limit has been increased to 100,000 bytes.
    (PR#18001.)
  * There is a further workaround for FreeType giving incorrect
    italic font faces with cairo-based graphics devices on macOS.
  * add_datalist(*, force = TRUE) (from package tools) now actually
    updates an existing data/datalist file for new content.  (Thanks
    to a report and patch by Sebastian Meyer in PR#18048.)
  * cut.Date() and cut.POSIXt() could produce an empty last interval
    for breaks = "months" or breaks = "years".  (Reported as PR#18053
    by Christopher Carbone.)
  * Detection of the encoding of 'regular' macOS locales such as
    en_US (which is UTF-8) had been broken by a macOS change:
    fortunately these are now rarely used with en_US.UTF-8 being
    preferred.
  * sub() and gsub(pattern, repl, x, *) now keep attributes of x such
    as names() also when pattern is NA (PR#18079).
  * Time differences ("difftime" objects) get a replacement and a
    rep() method to keep "units" consistent.  (Thanks to a report and
    patch by Nicolas Bennett in PR#18066.)
  * The \RdOpts macro, setting defaults for \Sexpr options in an Rd
    file, had been ineffective since R 2.12.0: it now works again.
    (Thanks to a report and patch by Sebastian Meyer in PR#18073.)
  * mclapply and pvec no longer accidentally terminate parallel
    processes started before by mcparallel or related calls in
    package parallel (PR#18078).
  * grep and other functions for evaluating (extended) regular
    expressions handle in Unicode also strings not explicitly flagged
    UTF-8, but flagged native when running in UTF-8 locale.
  * Fixed a crash in fifo implementation on Windows (PR#18031).
  * Binary mode in fifo on Windows is now properly detected from
    argument open (PR#15600, PR#18031).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1622808000">- The line %{__install} -m 755 -d %{_infodir}
  no longer works in TW or Factory.
  But without that line it works everywhere. So this instruction
  was commented out of the spec file.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1628596800">- CHANGES IN R 4.1.1:
  NEW FEATURES:
  * require(pkg, quietly = TRUE) is quieter and in particular does
    not warn if the package is not found.
  DEPRECATED AND DEFUNCT:
  * Use of ftp:// URIs should be regarded as deprecated, with
    on-going support confined to method = "libcurl" and not routinely
    tested.  (Nowadays no major browser supports them.)
  * The non-default method = "internal" is deprecated for http:// and
    ftp:// URIs for both download.file and url.
  * On Windows, method = "wininet" is deprecated for http://,
    https:// and ftp:// URIs for both download.file and url.  (A
    warning is only given for ftp://.)
    For ftp:// URIs the default method is now "libcurl" if available
    (which it is on CRAN builds).
    method = "wininet" remains the default for http:// and https://
    URIs but if libcurl is available, using method = "libcurl" is
    preferred.
  INSTALLATION:
  * make check now works also without a LaTeX installation.  (Thanks
    to Sebastian Meyer's PR#18103.)
  BUG FIXES:
  * make check-devel works again in an R build configured with
  - -without-recommended-packages.
  * qnbinom(p, size, mu) for large size/mu is correct now in a range
    of cases (PR#18095); similarly for the (size, prob)
    parametrization of the negative binomial.  Also qpois() and
    qbinom() are better and or faster for extreme cases.  The
    underlying C code has been modularized and is common to all four
    cases of discrete distributions.
  * gap.axis is now part of the axis() arguments which are passed
    from bxp(), and hence boxplot().  (Thanks to Martin Smith's
    report and suggestions in PR#18109.)
  * .First and .Last can again be set from the site profile.
  * seq.int(from, to, *) and seq.default(..) now work better in large
    range cases where from-to is infinite where the two boundaries
    are finite.
  * all.equal(x,y) now returns TRUE correctly also when several
    entries of abs(x) and abs(y) are close to .Machine$double.xmax,
    the largest finite numeric.
  * model.frame() now clears the object bit when removing the class
    attribute of a value via na.action (PR#18100).
  * charClass() now works with multi-character strings on Windows
    (PR#18104, fixed by Bill Dunlap).
  * encodeString() on Solaris now works again in Latin-1 encoding on
    characters represented differently in UTF-8.  Support for
    surrogate pairs on Solaris has been improved.
  * file.show() on Windows now works with non-ASCII path names
    representable in the current native encoding (PR#18132).
  * Embedded R on Windows can now find R home directory via the
    registry even when installed only for the current user
    (PR#18135).
  * pretty(x) with finite x now returns finite values also in the
    case where the extreme x values are close in size to the maximal
    representable number .Machine$double.xmax.
    Also, it's been tweaked for very small ranges and when a boundary
    is close (or equal) to zero; e.g., pretty(c(0,1e-317)) no longer
    has negative numbers, currently still warning about a very small
    range, and pretty(2^-(1024 - 2^-1/(c(24,10)))) is more accurate.
  * The error message for not finding vignette files when weaving has
    correct file sizes now. (Thanks to Sebastian Meyer's PR#18154.)
  * dnbinom(20, &lt;large&gt;, 1) now correctly gives 0, and similar cases
    are more accurate with underflow precaution.  (Reported by Francisco Vera Alcivar in PR#18072.)</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635163200">- repaired https://bugzilla.suse.com/show_bug.cgi?id=1191380
  (rpmacros now go to rpmmacrodir)
- minor clean-ups in spec file</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635768000">- CHANGES IN R 4.1.2:
  C-LEVEL FACILITIES:
  * The workaround in headers R.h and Rmath.h (using namespace std;)
    for the Oracle Developer Studio compiler is no longer needed now
    C++11 is required so has been removed.  A couple more usages of
    log() (which should have been std::log()) with an int argument
    are reported on Solaris.
  * The undocumented limit of 4095 bytes on messages from the
    S-compatibility macros PROBLEM and MESSAGE is now documented and
    longer messages will be silently truncated rather than
    potentially causing segfaults.
  * If the R_NO_SEGV_HANDLER environment variable is non-empty, the
    signal handler for SEGV/ILL/BUS signals (which offers recovery
    user interface) is not set. This allows more reliable debugging
    of crashes that involve the console.
  DEPRECATED AND DEFUNCT:
  * The legacy S-compatibility macros PROBLEM, MESSAGE, ERROR, WARN,
    WARNING, RECOVER, ... are deprecated and will be hidden in R
    4.2.0. R's native interface of Rf_error and Rf_warning has long
    been preferred.
  BUG FIXES:
  * .mapply(F, dots, .) no longer segfaults when dots is not a list
    and uses match.fun(F) as always documented; reported by Andrew
    Simmons in PR#18164.
  * hist(&lt;Date&gt;, ...) and hist(&lt;POSIXt&gt;, ...)  no longer pass
    arguments for rect() (such as col and density) to axis().
    (Thanks to Sebastian Meyer's PR#18171.)
  * \Sexpr{ch} now preserves Encoding(ch). (Thanks to report and
    patch by Jeroen Ooms in PR#18152.)
  * Setting the RNG to "Marsaglia-Multicarry" e.g., by RNGkind(), now
    warns in more places, thanks to Andr'e Gillibert's report and
    patch in PR#18168.
  * gray(numeric(), alpha=1/2) no longer segfaults, fixing PR#18183,
    reported by Till Krenz.
  * Fixed dnbinom(x, size=&lt;very_small&gt;, .., log=TRUE) regression,
    reported by Martin Morgan.
  * as.Date.POSIXlt(x) now keeps names(x), thanks to Davis Vaughan's
    report and patch in PR#18188.
  * model.response() now strips an "AsIs" class typically, thanks to
    Duncan Murdoch's report and other discussants in PR#18190.
  * try() is considerably faster in case of an error and long call,
    as e.g., from some do.call().  Thanks to Alexander Kaever's
    suggestion posted to R-devel.
  * qqline(y = &lt;object&gt;) such as y=I(.), now works, see also
    PR#18190.
  * Non-integer mgp par() settings are now handled correctly in
    axis() and mtext(), thanks to Mikael Jagan and Duncan Murdoch's
    report and suggestion in PR#18194.
  * formatC(x) returns length zero character() now, rather than ""
    when x is of length zero, as documented, thanks to Davis
    Vaughan's post to R-devel.
  * removeSource(fn) now retains (other) attributes(fn).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1647000000">- CHANGES IN R 4.1.3:
  NEW FEATURES:
  * The default version of Bioconductor has been changed to 3.14.
    (This is used by setRepositories and the menus in GUIs.)
  UTILITIES:
  * R CMD check --as-cran has a workaround for a bug in versions of
    file up to at least 5.41 which mis-identify DBF files last
    changed in 2022 as executables.
  C-LEVEL FACILITIES:
  * The legacy S-compatibility macros SINGLE_* in R_ext/Constants.h
    (included by R.h) are deprecated and will be removed in R 4.2.0.
  BUG FIXES:
  * Initialization of self-starting nls() models with initialization
    functions following the pre-R-4.1.0 API (without the ...
    argument) works again for now, with a deprecation warning.
  * Fixed quoting of ~autodetect~ in Java setting defaults to avoid
    inadvertent user lookup due to leading ~, reported in PR#18231 by
    Harold Gutch.
  * substr(., start, stop) &lt;- v now treats _negative_ stop values
    correctly.  Reported with a patch in PR#18228 by Brodie Gaslam.
  * Subscripting an array x without dimnames by a
    length(dim(x))-column character matrix gave "random" non-sense,
    now an error; reported in PR#18244 by Mikael Jagan.
  * ...names() now matches names(list(...)) closely, fixing PR#18247.
  * all.equal(*, scale = s) now works as intended when length(s) &gt; 1,
    partly thanks to Michael Chirico's PR#18272.
  * print(x) for long vectors x now also works for named atomic
    vectors or lists and prints the correct number when reaching the
    getOption("max.print") limit; partly thanks to a report and
    proposal by Hugh Parsonage to the R-devel list.
  * all.equal(&lt;selfStart&gt;, *) no longer signals a deprecation
    warning.
  * reformulate(*, response=r) gives a helpful error message now when
    length(r) &gt; 1, thanks to Bill Dunlap's PR#18281.
  * Modifying globalCallingHandlers inside withCallingHandlers() now
    works or fails correctly, thanks to Henrik Bengtsson's PR#18257.
  * hist(&lt;Date&gt;, breaks = "days") and hist(&lt;POSIXt&gt;, breaks = "secs")
    no longer fail for inputs of length 1.
  * qbeta(.001, .9, .009) and similar cases now converge correctly
    thanks to Ben Bolker's report in PR#17746.
  * window(x, start, end) no longer wrongly signals "'start' cannot
    be after 'end'", fixing PR#17527 and PR#18291.
  * data() now checks that its (rarely used) list argument is a
    character vector - a couple of packages passed other types and
    gave incorrect results.
  * which() now checks its arr.ind argument is TRUE rather coercing
    to logical and taking the first element - which gave incorrect
    results in package code.
  * model.weights() and model.offset() more carefully extract their
    model components, thanks to Ben Bolker and Tim Taylor's R-devel
    post.
  * list.files(recursive = TRUE) now shows all broken symlinks
    (previously, some of them may have been omitted, PR#18296).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1650628800">- CHANGES IN R 4.2.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * The formula method of aggregate() now matches the generic in
    naming its first argument x (resolving PR#18299 by Thomas
    Soeiro).
    This means that calling aggregate() with a formula as a named
    first argument requires name formula in earlier versions of R and
    name x now, so portable code should not name the argument (code
    in many packages did).
  * Calling &amp;&amp; or || with either argument of length greater than one
    now gives a warning (which it is intended will become an error).
  * Calling if() or while() with a condition of length greater than
    one gives an error rather than a warning.  Consequently,
    environment variable _R_CHECK_LENGTH_1_CONDITION_ no longer has
    any effect.
  * Windows users should consult the WINDOWS section below for some
    profound changes including
  * Support for 32-bit builds has been dropped.
  * UTF-8 locales are used where available.
  * The default locations for the R installation and personal
    library folder have been changed.
    Thanks to Tomas Kalibera for months of work on the Windows port
    for this release.
  NEW FEATURES:
  * matrix(x, n, m) now warns in more cases where length(x) differs
    from n * m, as suggested by Abby Spurdle and Wolfgang Huber in
    Feb 2021 on the R-devel mailing list.
    This warning can be turned into an error by setting environment
    variable _R_CHECK_MATRIX_DATA_ to TRUE: R CMD check --as-cran
    does so unless it is already set.
  * Function file_test() in package utils gains tests for symlinks,
    readability and writability.
  * capabilities("libxml") is now false.
    The description of capabilities("http/ftp") now reflects that it
    refers to the default method, no longer the internal one.
  * simplify2array() gains an except argument for controlling the
    exceptions used by sapply().
  * Environment variables R_LIBS_USER and R_LIBS_SITE are both now
    set to the R system default if unset or empty, and can be set to
    NULL to indicate an empty list of user or site library
    directories.
  * The warning for axis()(-like) calls in cases of relatively small
    ranges (typically in log-scale situations) is slightly improved
    _and_ suppressed from explicit calls to .axisPars() as has always
    been the intention.
  * The contrasts setter function `contrasts&lt;-` gains an explicit
    default how.many = NULL rather than just using missing(how.many).
  * grid.pretty() gains a new optional argument n = 5.
  * There is a new function .pretty() with option bounds as a
    technical-utility version of pretty().  It and pretty() gain a
    new argument f.min with a better than back-compatible default.
  * Function grDevices::axisTicks() and related functions such as
    graphics::axis() work better, notably for the log scale; partly
    because of the pretty() improvements, but also because care is
    taken e.g., when ylim is finite but diff(ylim) is infinite.
  * nclass.FD() gains a digits option.
  * The R Mathlib internal C function bd0() (called indirectly from a
    dozen probability density and distribution functions such as
    dpois(), dbinom(), dgamma(), pgamma() _etc_) has been
    complemented by a more sophisticated and (mostly) more accurate C
    function ebd0(), currently called only by internal dpois_raw()
    improving accuracy for R level dpois() and potentially others
    calling it such as dnbinom(), dgamma() or pgamma().  (Thanks to
    Morten Welinder's PR#15628.)
  * write.ftable() gains sep = " " argument as suggested by Thomas
    Soeiro.
  * The names of the locale categories supported by R's
    Sys.getlocale() and Sys.setlocale() are now provided by variable
    .LC.categories in the base namespace.
  * The Date and POSIXt methods for hist() and the histogram method
    for plot() now also use the new default col = "lightgray" in
    consistency with the corresponding change to hist()'s default for
    R 4.0.0.
  * hist.default() gains new fuzz argument, and the histogram plot
    method no longer uses fractional axis ticks when displaying
    counts ("Frequency").
  * mapply() and hence Map() now also obey the "max-or-0-if-any"
    recycling rule, such that, e.g., Map(`+`, 1:3, 1[0]) is valid
    now.
  * as.character(&lt;obj&gt;) for "hexmode" or "octmode" objects now
    fulfils the important basic rule as.character(x)[j] ===
    as.character(x[j]).
  * The set utility functions, notably intersect() have been tweaked
    to be more consistent and symmetric in their two set arguments,
    also preserving a common mode.
  * substr(ch, start,end) &lt;- new now e.g., preserves names(ch); ditto
    for substring(), thanks to a patch from Brodie Gaslam.
  * plot(&lt;lm&gt;) gains a extend.ylim.f argument, in partial response to
    PR#15285; further PR#17784 is fixed thanks to several
    contributors and a patch by Elin Waring.  The Cook's dist
    contours get customizable via cook.col and cook.lty with a
    different default color and their legend is nicer by default and
    customizable via cook.legendChanges.
  * Attempting to subset an object that is not subsettable now
    signals an error of class notSubsettableError. The
    non-subsettable object is contained in the object field of the
    error condition.
  * Subscript-out-of-bounds errors are now signaled as errors of
    class subscriptOutOfBoundsError.
  * Stack-overflow errors are now signaled as errors inheriting from
    class stackOverflowError. See ?stackOverflowError for more
    details.
  * New partly experimental Sys.setLanguage() utility, solving the
    main problem of PR#18055.
  * gettext() and gettextf() get a new option trim = TRUE which when
    set to false allows translations for strings such as "Execution
    halted\n" typical for C code.
  * An experimental implementation of hash tables is now available.
    See ?hashtab for more details.
  * identical() gains a extptr.as.ref argument for requesting that
    external pointer objects be compared as reference objects.
  * reorder() gets an argument decreasing which it passes to sort()
    for level creation; based on the wish and patch by Thomas Soeiro
    in PR#18243.
  * as.vector() gains a data.frame method which returns a simple
    named list, also clearing a long standing 'FIXME' to enable
    as.vector(&lt;data.frame&gt;, mode="list").  This breaks code relying
    on as.vector(&lt;data.frame&gt;) to return the unchanged data frame.
  * legend() is now vectorized for arguments cex, x.intersp, and
    text.width.  The latter can now also be specified as a vector
    (one element for each column of the legend) or as NA for
    computing a proper column wise maximum value of strwidth(legend).
    The argument y.intersp can be specified as a vector with one
    entry for each row of the legend.
    legend() also gains new arguments title.cex and title.font.
    Thanks to Swetlana Herbrandt.
  * Deparsing no longer remaps attribute names dim, dimnames, levels,
    names and tsp to historical S-compatible names (which structure()
    maps back).
  * sample() and sample.int() have additional sanity checks on their
    size and n arguments.
    all.equal.numeric() gains a sanity check on its tolerance
    argument - calling all.equal(a, b, c) for three numeric vectors
    is a surprisingly common error.
    mean(na.rm =), rank(na.last =), barplot(legend.text =),
    boxplot(), contour(drawlabels =), polygon(border =) and
    methods::is(class2 =) have more robust sanity checks on their
    arguments.
    R CMD Rd2pdf (used by R CMD check) has a more robust sanity check
    on the format of \alias{} commands.
  * psigamma(x, deriv) for negative x now also works for deriv = 4
    and 5; their underlying C level dpsifn() is documented in
    'Writing R Extensions'.
  * The HTML help system now uses HTML5 (wish of PR#18149).
  * ks.test() now provides exact p-values also with ties and MC
    p-values in the two-sample (Smirnov) case.  By Torsten Hothorn.
  * ks.test() gains a formula interface, with y ~ 1 for the
    one-sample (Kolmogorov) test and y ~ group for the two-sample
    (Smirnov) test.  Contributed by Torsten Hothorn.
  * The return value from ks.test() now has class c("ks.test",
    "htest") - packages using try() need to take care to use
    inherits() and not == on the class.
  * New functions psmirnov(), qsmirnov() and rsmirnov() in package
    stats implementing the asymptotic and exact distributions of the
    two-sample Smirnov statistic.
  * iconv() now allows sub = "c99" to use C99-style escapes for UTF-8
    inputs which cannot be converted to encoding to.
  * In a forward pipe |&gt; expression it is now possible to use a named
    argument with the placeholder _ in the rhs call to specify where
    the lhs is to be inserted.  The placeholder can only appear once
    on the rhs.
  * The included LAPACK sources have been updated to version 3.10.0,
    except for the four Fortran 77 routines which 3.10.0 has
    re-implemented in Fortran 90 (where the older versions have been
    retained as the R build process does not support Fortran 90).
  * path.expand() and most other uses of tilde expansion now warn if
    a path would be too long if expanded.  (An exception is
    file.exists(), which silently returns false.)
  * trunc(&lt;Date&gt;, *) now supports units = "months" or "years" for
    consistency with the POSIXt method, thanks to Dirk Eddelbuettel's
    proposal in PR#18099.
  * list2DF() now checks that its arguments are of the same length,
    rather than use recycling.
  * The HTML help system has several new features: LaTeX-like math
    can be typeset using either KaTeX or MathJax, usage and example
    code is highlighted using Prism, and for dynamic help the output
    of examples and demos can be shown within the browser if the
    knitr package is installed. These features can be disabled by
    setting the environment variable _R_HELP_ENABLE_ENHANCED_HTML_ to
    a false value.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 15
    and so packages that provide graphics devices should be
    reinstalled.
  * The grid package now allows the user to specify a "vector" of
    pattern fills.  The fill argument to gpar() accepts a list of
    gradients and/or patterns and the functions linearGradient(),
    radialGradient(), and pattern() have a new group argument.
    Points grobs (data symbols) can now also have a pattern fill.
    The grobCoords() function now returns a more informative and
    complex result.
  * The grid package has new functions for drawing isolated groups:
    grid.group(), grid.define(), and grid.use().  These functions add
    compositing operators and affine transformations to R's graphics
    capabilities.
    The grid package also has new functions for stroking and filling
    paths: grid.stroke(), grid.fill(), and grid.fillStroke().
    A new function as.path() allows the user to specify the fill rule
    for a path that is to be used for clipping, stroking, or filling;
    available options are "winding" and "evenodd".  A new function
    as.mask() allows the user to specify the type of a mask;
    available options are "alpha" and "luminance".
    These new features are only supported so far (at most) on the
    Cairo-based graphics devices and on the pdf() device.
  * dev.capabilities() reports on device support for the new
    features.
  * par() now warns about unnamed non-character arguments to prevent
    misuse such as {usr &lt;- par("usr"); par(usr)}.
  INSTALLATION:
  * Facilities for accessing ftp:// sites are no longer tested
    (except _pro tem_ for curlGetHeaders()) as modern browsers have
    removed support.
  * R can now be built with DEFS = -DSTRICT_R_HEADERS .
  PACKAGE INSTALLATION:
  * R CMD INSTALL no longer tangles vignettes. This completes an R
    CMD build change in R 3.0.0 and affects packages built before R
    3.0.2. Such packages should be re-made with R CMD build to have
    the tangled R code of vignettes shipped with the tarball.
  * USE_FC_LEN_T will become the default: this uses the correct
    prototypes for Fortran BLAS/LAPACK routines called from C/C++,
    and requires adjustment of most such calls - see 'Writing R
    Extensions' SS6.6.2.  (This has been supported since R 3.6.2.)
  * Package installation speed for packages installed with
    keep.source has been improved. This resolve the issue reported by
    Ofek Shilon in PR#18236.
  UTILITIES:
  * R CMD check can optionally report files/directories left behind
    in home, /tmp (even though TMPDIR is set) and other directories.
    See the "R Internals" manual for details.
  * R CMD check now reports byte-compilation errors during
    installation.  These are not usually fatal but may result in
    parts of the package not being byte-compiled.
  * _R_CHECK_DEPENDS_ONLY_ can be applied selectively to examples,
    tests and/or vignettes in R CMD check: see the "R Internals"
    manual.
  * _R_CHECK_SRC_MINUS_W_IMPLICIT_ now defaults to true: recent
    versions of Apple clang on macOS have made implicit function
    declarations in C into a compilation error.
  * R CMD check --as-cran makes use of the environment variable
    AUTORECONF.  See the "R Internals" manual SS8 for further details.
  * R CMD check --use-valgrind also uses valgrind when re-building
    vignettes as some non-Sweave vignettes unhelpfully comment out
    all their code when R CMD check runs vignettes.
  * Errors in re-building vignettes (unless there are LaTeX errors)
    are reported by R CMD check as ERROR rather than WARNING when
    running vignettes has been skipped (as it frequently is in CRAN
    checks and by --as-cran).
  * R CMD Rd2pdf gains a --quiet option that is used by R CMD build
    when building the PDF package manual.
  * R CMD Rd2pdf now always runs LaTeX in batch mode, consistent with
    Texinfo &gt;= 6.7. The --batch option is ignored.
  * R CMD build and R CMD check now include the Rd file name and line
    numbers in the error message of an \Sexpr evaluation failure.
  * For packages using the \doi Rd macro (now an install-time \Sexpr)
    but no other dynamic Rd content, R CMD build now produces a
    smaller tarball and is considerably faster - skipping temporary
    package installation.
  C-LEVEL FACILITIES:
  * The non-API header R_ext/R-ftp-http.h is no longer provided, as
    the entry points it covered are now all defunct.
  * A number of non-API declarations and macro definitions have been
    moved from the installed header Rinternals.h to the internal
    header Defn.h. Packages that only use entry points and
    definitions documented to be part of the API as specified in
    'Writing R Extensions' SS6 should not be affected.
  * The macro USE_RINTERNALS no longer has any effect when compiling
    package code.  Packages which also use R_NO_REMAP will need to
    ensure that the remapped names are used for calls to API
    functions that were formerly also made available as macros.
  * The deprecated legacy S-compatibility macros PROBLEM, MESSAGE,
    ERROR, WARN, WARNING, RECOVER, ... are no longer defined in
    R_exts/RS.h (included by R.h).  Replace these by calls to
    Rf_error and Rf_warning (defined in header R_ext/Error.h included
    by R.h).
    Header R_ext/RS.h no longer includes R_ext/Error.h.
  * Header R_ext/Constants.h (included by R.h) when included from C++
    now includes the C++ header cfloat rather than the C header
    float.h (now possible as C++11 is required).
  * The legacy S-compatibility macros DOUBLE_* in R_ext/Constants.h
    (included by R.h) are deprecated.
  * The deprecated S-compatibility macros SINGLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * R_Calloc, R_Free and R_Realloc are preferred to their unprefixed
    forms and error messages now use the prefix. These forms were
    introduced in R 3.4.0 and are available even when
    STRICT_R_HEADERS is defined.
  * rmultinom has been documented in 'Writing R Extensions' SS6 so is
    now part of the R API.
  * Similarly, Rtanpi, called from R level tanpi() is now part of the
    R API.
  * The long-deprecated, undocumented and non-API entry point call_R
    is no longer declared in R_ext/RS.h (included by R.h).
  * The header S.h which has been unsupported since Jan 2016 has been
    removed.  Use R.h instead.
  DEPRECATED AND DEFUNCT:
  * The (non-default and deprecated) method = "internal" for
    download.file() and url() no longer supports http:// nor ftp://
    URIs.  (It is used only for file:// URIs.)
    On Windows, download.file(method = "wininet") no longer supports
    ftp:// URIs.  (It is no longer the default method, which is
    "libcurl" and does.)
    On Windows, the deprecated method = "wininet" now gives a warning
    for http:// and https:// URIs for both download.file() and url().
    (It is no longer the default method.)
  * On Windows, the command-line option --max-mem-size and
    environment variable R_MAX_MEM_SIZE are defunct.  The memory
    allocation limit was important for 32-bit builds, but these are
    no longer supported.
  * default.stringsAsFactors() is now formally deprecated, where that
    was only mentioned on its regular help page, previously.  So it
    now gives a warning if called.
  * unix.time() is defunct now; it had been deprecated since R 3.4.0.
  BUG FIXES:
  * Setting digits = 0 in format(), print.default() (and hence
    typically print()) or options() is again invalid.  Its behaviour
    was platform-dependent, and it is unclear what "zero significant
    digits" should mean (PR#18098).
  * Messages from C code in the cairo section of package grDevices
    are now also offered for translation, thanks to Michael Chirico's
    PR#18123.
  * mean(x) with finite x now is finite also without "long.double"
    capability.
  * R CMD Rd2pdf no longer leaves an empty build directory behind
    when it aborts due to an already existing output file.  (Thanks
    to Sebastian Meyer's PR#18141.)
  * density(x, weights = w, na.rm = TRUE) when anyNA(x) is true, now
    removes weights "in parallel" to x, fixing PR#18151, reported by
    Matthias Gondan.  Additionally, it gets a subdensity option.
  * Conversion of \Sexpr[]{&lt;expR&gt;} to LaTeX or HTML no longer
    produces long blocks of empty lines when &lt;expR&gt; itself contains
    several lines all producing empty output.  Thanks to a report and
    patch by Ivan Krylov posted to R-devel.
  * R CMD build no longer fails if a package vignette uses child
    documents and inst/doc exists.  (Thanks to Sebastian Meyer's
    PR#18156.)
  * When an R documentation ('help' source) file man/foo.Rd in a
    package has \donttest{..} examples with a syntax error, it is now
    signalled as ERROR and with correct line numbers relating to the
  * -Ex.R file, thanks to Duncan Murdoch and Sebastian Meyer's
    reports and patch proposals in PR#17501.
  * Improved determination of the correct translation domain in
    non-base packages, addressing the combination of PR#18092 and
    PR#17998 (#c6) with reports and _augmented_ patch #2904 by
    Suharto Anggono.
    Note that "R-base" is no longer the default domain e.g., for
    top-level calls to gettext(); rather translation needs explicit
    domain = * specification in such cases.
  * identical(attrib.as.set=FALSE) now works correctly with data
    frames with default row names (Thanks to Charlie Gao's PR#18179).
  * txtProgressBar() now enforces a non-zero width for argument char,
    without which no progress can be visible.
  * dimnames(table(d)) is more consistent in the case where d is a
    list with a single component, thanks to Thomas Soeiro's report to
    R-devel.
    Further, table(d1, d2) now gives an error when d1 and d2 are data
    frames as suggested by Thomas in PR#18224.
  * Fix for drawing semi-transparent lines and fills on the native
    Windows graphics device (PR#18219 and PR#16694).  Thanks to Nick
    Ray for helpful diagnosis on Bugzilla.
  * The deparser now wraps sub-expressions such as if(A) ..  with
    parentheses when needed; thanks to Duncan Murdoch's PR#18232 and
    Lionel Henry's patches there.
  * remove.packages() no longer tries to uninstall Priority: base
    packages, thanks to a report and suggestions by Colin Fay in
    PR#18227.
  * win.metafile() now has xpinch and ypinch arguments so that the
    user can override Windows' (potentially wrong) guess at device
    dimensions.
  * x[i] and x[[i]] for non-integer i should now behave in all cases
    as always documented: the index used is equivalent to
    as.integer(i) unless that would overflow where trunc(i) is used
    instead; thanks to Suharto Anggono's report and patch proposals
    in PR#17977.
  * asOneSidedFormula() now associates the resulting formula with the
    global environment rather than the evaluation environment created
    for the call.
  * &lt;bibentry&gt;$name now matches the field name case-insensitively,
    consistent with bibentry() creation and the replacement method.
  * cbind() failed to detect some length mismatches with a mixture of
    time-series and non-time-series inputs.
  * The default LaTeX style file Sweave.sty used by the RweaveLatex
    driver no longer loads the obsolete ae package; thanks to a
    report by Thomas Soeiro in PR#18271.  Furthermore, it now skips
    \usepackage[T1]{fontenc} for engines other than pdfTeX (if
    detected) or if the new [nofontenc] option is used.
  * smooth.spline() now stores its logical cv argument more safely,
    fixing a rare bug when printing, and also stores n.
  * smooth.spline(x,y,*) now computes the cv.crit statistic
    correctly, also when is.unsorted(x), fixing PR#18294.
  * The data.frame method of rbind() now warns when binding
    not-wholly-recycling vectors, by analogy to the default method
    (for matrices).
  * setAs() finds the correct class for name to when multiple
    packages define a class with that name. Thanks to Gabor Csardi
    for the report.
  * Fix for detaching a package when two classes of the same name are
    present in method signatures for the same generic. Thanks to
    Gabor Csardi for the report.
  * match.arg("", c("", "a", "B")) gives a better error message, in
    part from PR#17959, thanks to Elin Waring.
  * R CMD Sweave --clean no longer removes pre-existing files or
    subdirectories (PR#18242).
  * The quartz() device no longer splits polylines into subpaths.
    That has caused narrowly-spaced lines with many points to always
    look solid even when dashed line type was used due to dash phase
    restarts.
  * Deparsing constructs such as quote(1 + `!`(2) + 3) works again as
    before R 3.5.0, thanks to the report and patch in PR#18284 by
    Suharto Anggono.
  * as.list(f) for a factor f now keeps names(f), fixing PR#18309.
  * qbeta(.001, .9, .009) and analogous qf() calls now return a
    correct value instead of NaN or wrongly 1, all with a warning;
    thanks to the report by Ludger Goeminne in PR#18302.
  * plot.lm() failed to produce the plot of residuals vs.  factor
    levels (i.e., which=5 when leverages are constant) for models
    with character predictors (PR#17840).
  * interaction.plot(..., xtick = TRUE) misplaced the x-axis line
    (PR#18305).
  * Not strictly fixing a bug, format()ing and print()ing of
    non-finite Date and POSIXt values NaN and +/-Inf no longer show
    as NA but the respective string, e.g., Inf, for consistency with
    numeric vector's behaviour, fulfilling the wish of PR#18308.
  * R CMD check no longer runs test scripts generated from
    corresponding .Rin files twice and now signals an ERROR if
    processing an .Rin script fails.
  * tools::Rd2txt() used for plain-text help pages now renders \hrefs
    (if tools::Rd2txt_options(showURLs = TRUE)) and \urls with
    percent-encoding and standards-compliant delimiting style (angle
    brackets and no URL: prefix).  \email is now rendered with a
    mailto: prefix.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1655985600">- CHANGES IN R 4.2.1:
  NEW FEATURES:
  * New function utils::findCRANmirror() to find out if a CRAN mirror
    has been selected, otherwise fallback to the main site.  This
    behaves in the same way as tools::CRAN_package_db() and is
    intended for packages wishing to access CRAN for purposes other
    than installing packages.
    The need for this was shown by a day when the main CRAN website
    was offline and a dozen or so packages which had its URL
    hardcoded failed their checks.
  INSTALLATION on a UNIX-ALIKE:
  * The libraries searched for by --with-blas (without a value) now
    include BLIS (after OpenBLAS but before ATLAS).  And on macOS,
    the Accelerate framework (after ATLAS).  (This is patterned after
    the AX_BLAS macro from the Autoconf Archive.)
  * The included LAPACK sources have been updated to 3.10.1.
  UTILITIES:
  * The (full path to) the command tidy to be used for HTML
    validation can be set by environment variable R_TIDYCMD.
  * Setting environment variable _R_CHECK_RD_VALIDATE_RD2HTML_ to a
    false value will override R CMD check --as-cran and turn off HTML
    validation.  This provides a way to circumvent a problematic
    tidy.
    The 2006 version that ships with macOS is always skipped.
  C-LEVEL FACILITIES:
  * The undocumented legacy declarations of Sint, Sfloat, SINT_MAX
    and SINT_MIN in header R.h are deprecated.
  BUG FIXES:
  * fisher.test(d) no longer segfaults for "large" d; fixing PR#18336
    by preventing/detecting an integer overflow reliably.
  * tar(., files=*) now produces correctly the warning about invalid
    uid or gid of files, fixing PR#18344, reported by Martin Morgan.
  * tk_choose.files() with multi = FALSE misbehaved on paths
    containing spaces (PR#18334) (regression introduced in R 4.0.0).
  * sort(x, partial = ind, *) now works correctly notably for the
    non-default na.last = FALSE or TRUE, fixing PR#18335 reported by
    James Edwards.
  * Environment variable _R_CHECK_XREFS_REPOSITORIES_ is only used
    for checking .Rd cross-references in R CMD check (as documented)
    and not for other uses looking for a CRAN mirror.
  * The search for a CRAN mirror when checking packages now uses
    getOption("repos") if that specifies a CRAN mirror, even when it
    does not also specify all three Bioconductor repositories (as was
    previously required).
  * The HTML code generated by tools::Rd2HTML() has been improved to
    pass tidy 5.8.0.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1667217600">- CHANGES IN R 4.2.2:
  NEW FEATURES:
  * tools::Rdiff(useDiff = TRUE) checks for the presence of an
    external diff command and switches to useDiff = FALSE if none is
    found.  This allows R CMD Rdiff to always work.
  * On Windows, environment variable R_LIBCURL_SSL_REVOKE_BEST_EFFORT
    can be used to switch to only 'best-effort' SSL certificate
    revocation checks with the default "libcurl" download method.
    This reduces security, but may be needed for downloads to work
    with MITM proxies (PR#18379).
  * (macOS) The run-time check for libraries from XQuartz for X11 and
    Tcl/Tk no longer uses otool from the Apple Developer Tools
    (PR#18400).
  * The LaTeX style for producing the PDF manuals, Rd.sty, now loads
    the standard amsmath, amsfonts and amssymb packages for greater
    coverage of math commands in the Rd \eqn and \deqn macros.  The
    \mathscr LaTeX command is also provided (via the mathrsfs
    package, if available, or the amsfonts bundle otherwise),
    fulfilling the wish of PR#18398.
  * (Windows) The default format of readClipboard() and
    writeClipboard() has been changed to 13 (CF_UNICODETEXT).
  INSTALLATION on a UNIX-ALIKE:
  * The PDF manuals (if built) can be compacted by the new target
    make compact-pdf (at the top level or in directory doc/manual).
  * There is now configure support for LLVM clang 15 on Linux, which
    defaults to position-independent (PIE) executables whereas
    gfortran does not.
  * Many small changes to ease compilation (and suppress warnings)
    with LLVM clang 15.
  BUG FIXES:
  * Rscript -e would fail if stdin were closed (Reported by Henrik
    Bengtsson.)
  * qt(*, log.p=TRUE) in outer tails no longer produces NaN in its
    final steps, thus fixing PR#18360.
  * tools::Rd2latex() now escapes hashes and ampersands when writing
    URLs, fixing LaTeX errors with such URLs in \tabular.
  * When isGeneric(f, fdef=*) is used with mismatching names, the
    warning is better understandable; reported (with fix) in PR#18370
    by Gabe Becker.
  * poly(x, n) now works again (and is now documented) when x is a
    "Date" or "POSIXct" object, or of another class while fulfilling
    mode(x) == "numeric".  This also enables poly(x, *, raw=TRUE) for
    such variables.  Reported by Michael Chirico to R-devel.
  * write.table(), write.csv() and write.csv2() restore their
    numerical precision (internal equivalent of digits = 15) after an
    interrupt (PR#18384).
  * One can now read also byte FF from a clipboard connection
    (PR#18385).
  * source("") and source(character()) now give more helpful error
    messages.
  * R CMD check --as-cran set _R_CHECK_TIMINGS_ too late to have the
    intended effect.
  * as.POSIXlt(x) now also works with very large dates x, fixing
    PR#18401 reported by Hannes M"uhleisen.
  * Files can now be extracted even from very large zip archives
    (PR#18390, thanks to Martin Jakt).
  * Non-finite objects of class "POSIXlt" are now correctly coerced
    to classes "Date" and "POSIXct"; following up on the extension to
    format() them correctly.
  * Added methods for is.finite(), is.infinite() and is.nan() for
    "POSIXlt" date-time objects.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1678881600">- CHANGES IN R 4.2.3:
  C-LEVEL FACILITIES:
  * The definition of DL_FUNC in R_ext/Rdynload.h has been changed to
    be fully C-compliant.  This means that functions loaded _via_ for
    example R_GetCCallable need to be cast to an appropriate type if
    they have any arguments.
  * .Machine has a new element sizeof.time_t to identify old systems
    with a 32-bit type and hence a limited range of date-times (and
    limited support for dates millions of years from present).
  PACKAGE INSTALLATION:
  * (Windows) The default C++ standard had accidentally been left at
    C++11 when it was changed to C++14 on Unix.
  BUG FIXES:
  * As "POSIXlt" objects may be "partially filled" and their list
    components meant to be recycled, length() now is the length of
    the longest component.
  * as.POSIXlt.Date() could underflow for dates in the far past (more
    than half a million years BCE).
  * as.Date.POSIXlt(x) would return "1970-01-01" instead of NA in R
    4.2.2, e.g., for
    x &lt;- as.POSIXlt(c("2019-01-30","2001-1-1"))
    x$mon &lt;- c(0L, NA); as.Date(x)
  * R CMD check failed to apply enabled _R_CHECK_SUGGESTS_ONLY_ to
    examples and vignettes (regression in R 4.2.0).
  * R CMD check did not re-build vignettes in separate processes by
    default (regression in R 4.2.0).
  * Running examples from HTML documentation now restores previous
    knitr settings and options (PR#18420).
  * Quartz: fonts are now located using Core Graphics API instead of
    deprecated ATS which is no longer supported in the macOS 13 SDK
    (PR#18426).  This also addresses an issue where the currently
    used font in the Quartz device context was not correctly
    retained.
  * (Windows) Math symbols in text drawing functions are again
    rendered correctly (PR#18440).  This fixes a regression in R
    4.2.1 caused by a fix in PR#18382 which uncovered an issue in
    GraphApp due to which the symbol charset was not used with TT
    Symbol font face.
  * (Windows) Installing a package with a src/Makefile.{win,ucrt}
    file includes ~/.R/Makevars.win64 in the search for user
    makevars, as documented in "R Installation and Administration"
    and done for packages with a src/Makevars.{win,ucrt} file.
  * format(&lt;POSIXlt_w/_unbalanced_sec&gt;, "....%OS&lt;n&gt;") with n &gt; 0 no
    longer accidentally uses the unbalanced seconds, thanks to
    Suharto Anggono's report (including patch) in PR#18448.
  * solve.default(a, b) works around issues with some versions of
    LAPACK when a contains NA or NaN values.
  * When UseMethod() cannot dispatch, it no longer segfaults
    producing the error message in case of a long class(), thanks to
    Joris Vankerschaver's report (including patch) in PR#18447.
  * When example(foo, ..) produces graphics on an interactive device
    it needs to open itself, it now leaves devAskNewPage() unchanged
    even when it was FALSE, thus fixing a 14 years old '&lt;FIXME&gt;'.
  * packageDescription() again catches errors from encoding
    conversions. This also fixes broken packageVersion() in C locale
    on systems where iconv does not support transliteration.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1681128000">- add patch to build with libcurl &gt;= 8</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1682078400">- CHANGES IN R 4.3.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Calling &amp;&amp; or || with LHS or (if evaluated) RHS of length greater
    than one is now always an error, with a report of the form
    'length = 4' in coercion to 'logical(1)'
    Environment variable _R_CHECK_LENGTH_1_LOGIC2_ no longer has any
    effect.
  NEW FEATURES:
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.10.1.  (This caused some platform-dependent
    changes to package check output.)  And then to the sources from
    LAPACK version 3.11.0 (with changes only to double complex
    subroutines).
  * The included LAPACK sources have been updated to include the four
    Fortran 90 routines rather than their Fortran 77 predecessors.
    This may give some different signs in SVDs or
    eigendecompositions..  (This completes the transition to LAPACK
    3.10.x begun in R 4.2.0.)
  * The LAPACK sources have been updated to version 3.11.0.  (No new
    subroutines have been added, so this almost entirely bug fixes:
    Those fixes do affect some computations with NaNs, including R's
    NA.)
  * The parser now signals _classed_ errors, notably in case of the
    pipe operator |&gt;.  The error object and message now give line and
    column numbers, mostly as proposed and provided by Duncan Murdoch
    in PR#18328.
  * toeplitz() is now generalized for asymmetric cases, with a
    toeplitz2() variant.
  * xy.coords() and xyz.coords() and consequently, e.g., plot(x,y,
    log = "y") now signal a _classed_ warning about negative values
    of y (where log(.) is NA).  Such a warning can be specifically
    suppressed or caught otherwise.
  * Regular expression functions now check more thoroughly whether
    their inputs are valid strings (in their encoding, e.g. in
    UTF-8).
  * The performance of grep(), sub(), gsub() and strsplit() has been
    improved, particularly with perl = TRUE and fixed = TRUE.  Use of
    useBytes = TRUE for performance reasons should no longer be
    needed and is discouraged: it may lead to incorrect results.
  * apropos() gains an argument dot_internals which is used by the
    completion (help(rcompgen)) engine to also see base internals
    such as .POSIXct().
  * Support in tools::Rdiff() for comparing uncompressed PDF files is
    further reduced - see its help page.
  * qqplot(x, y, ...) gains conf.level and conf.args arguments for
    computing and plotting a confidence band for the treatment
    function transforming the distribution of x into the distribution
    of y (Switzer, 1976, _Biometrika_). Contributed by Torsten
    Hothorn.
  * Performance of package_dependencies() has been improved for cases
    when the number of dependencies is large.
  * Strings newly created by gsub(), sub() and strsplit(), when any
    of the inputs is marked as "bytes", are also marked as "bytes".
    This reduces the risk of creating invalid strings and accidental
    substitution of bytes deemed invalid.
  * Support for readLines(encoding = "bytes") has been added to allow
    processing special text files byte-by-byte, without creating
    invalid strings.
  * iconv(from = "") now takes into account any declared encoding of
    the input elements and uses it in preference to the native
    encoding.  This reduces the risk of accidental creation of
    invalid strings, particularly when different elements of the
    input have different encoding (including "bytes").
  * Package repositories in getOption("repos") are now initialized
    from the repositories file when utils is loaded (if not already
    set, e.g., in .Rprofile).  (From a report and patch proposal by
    Gabriel Becker in PR#18405.)
  * compactPDF() gets a verbose option.
  * type.convert() and hence read.table() get new option tryLogical =
    TRUE with back compatible default.  When set to false, converts
    "F" or "T" columns to character.
  * Added new unit prefixes "R" and "Q" for abbreviating
    (unrealistically large) sizes beyond 10^{27} in standard = "SI",
    thanks to Henrik Bengtsson's PR#18435.
  * as.data.frame()'s default method now also works fine with atomic
    objects inheriting from classes such as "roman", "octmode" and
    "hexmode", such fulfilling the wish of PR#18421, by Benjamin
    Feakins.
  * The as.data.frame.vector() utility now errors for wrong-length
    row.names.  It warned for almost six years, with "Will be an
    error!".
  * sessionInfo() now also contains La_version() and reports codepage
    and timezone when relevant, in both print() and toLatex() methods
    which also get new option tzone for displaying timezone
    information when locale = FALSE.
  * New function R_compiled_by() reports the C and Fortran compilers
    used to build R, if known.
  * predict(&lt;lm&gt;, newdata = *) no longer unnecessarily creates an
    offset of all 0s.
  * solve() for complex inputs now uses argument tol and by default
    checks for 'computational singularity' (as it long has done for
    numeric inputs).
  * predict(&lt;rank-deficient lm&gt;, newdata=*) now obeys a new argument
    rankdeficient, with new default "warnif", warning only if there
    are non-estimable cases in newdata.  Other options include
    rankdeficient = "NA", predicting NA for non-estimable newdata
    cases.  This addresses PR#15072 by Russ Lenth and is based on his
    original proposal and discussions in PR#16158 also by David Firth
    and Elin Waring.  Still somewhat experimental.
  * Rgui console implementation now works better with the NVDA screen
    reader when the full blinking cursor is selected.  The underlying
    improvements in cursor handling may help also other screen
    readers on Windows.
  * The drop-field control in GraphApp can now be left with the TAB
    key and all controls can be navigated in the reverse order using
    the Shift+TAB key, improving accessibility of the Rgui
    configuration editor.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now fully accurate
    (instead of to "only" minimally five digits).
  * demo(error.catching) now also shows off withWarnings() and
    tryCatchWEMs().
  * As an experimental feature the placeholder _ can now also be used
    in the rhs of a forward pipe |&gt; expression as the first argument
    in an extraction call, such as _$coef. More generally, it can be
    used as the head of a chain of extractions, such as _$coef[[2]].
  * Spaces in the environment variable used to choose the R session's
    temporary directory (TMPDIR, TMP and TEMP are tried in turn) are
    now fatal.  (On Windows the 'short path' version of the path is
    tried and used if that does not contain a space.)
  * all.equal.numeric() gets a new optional switch giveErr to return
    the numeric error as attribute.  Relatedly,
    stopifnot(all.equal&lt;some&gt;(a, b, ..)) is as "smart" now, as
    stopifnot(all.equal(....)) has been already, thus allowing
    customized all.equal&lt;Some&gt;() wrappers.
  * R on Windows is now able to work with path names longer than 260
    characters when these are enabled in the system (requires at
    least Windows 10 version 1607).  Packages should be updated to
    work with long paths as well, instead of assuming PATH_MAX to be
    the maximum length.  Custom front-ends and applications embedding
    R need to update their manifests if they wish to allow this
    feature.  See
    &lt;https://blog.r-project.org/2023/03/07/path-length-limit-on-windows&gt;
    for more information.
  * 'Object not found' and 'Missing argument' errors now give a more
    accurate error context. Patch provided by Lionel Henry in
    PR#18241.
  * The @ operator is now an S3 generic. Based on contributions by
    Tomasz Kalinowski in PR#18482.
  * New generic chooseOpsMethod() provides a mechanism for objects to
    resolve cases where two suitable methods are found for an Ops
    Group Generic. This supports experimenting with alternative
    object systems. Based on contributions by Tomasz Kalinowski in
    PR#18484.
  * inherits(x, what) now accepts values other than a simple
    character vector for argument what. A new generic, nameOfClass(),
    is called to resolve the class name from what. This supports
    experimenting with alternative object systems. Based on
    contributions by Tomasz Kalinowski in PR#18485.
  * Detection of BLAS/LAPACK in use (sessionInfo()) with FlexiBLAS
    now reports the current backend.
  * The "data.frame" method for subset() now warns about extraneous
    arguments, typically catching the use of = instead of == in the
    subset expression.
  * Calling a:b when numeric a or b is longer than one may now be
    made into an error by setting environment variable
    _R_CHECK_LENGTH_COLON_ to a true value, along the proposal in
    PR#18419 by Henrik Bengtsson.
  * density(x, weights = *) now warns if automatic bandwidth
    selection happens without using weights; new optional warnWbw may
    suppress the warning.  Prompted by Christoph Dalitz' PR#18490 and
    its discussants.
  * rm(list = *) is faster and more readable thanks to Kevin Ushey's
    PR#18492.
  * The plot.lm() function no longer produces a normal Q-Q plot for
    GLMs. Instead it plots a half-normal Q-Q plot of the absolute
    value of the standardized deviance residuals.
  * The print() method for class "summary.glm" no longer shows
    summary statistics for the deviance residuals by default.  Its
    optional argument show.residuals can be used to show them if
    required.
  * The tapply() function now accepts a data frame as its X argument,
    and allows INDEX to be a formula in that case. by.data.frame()
    similarly allows INDICES to be a formula.
  * The performance of df[j] &lt;- value (including for missing j) and
    write.table(df) has been improved for data frames df with a large
    number of columns.  (Thanks to Gabriel Becker's PR#18500,
    PR#18503 and discussants, prompted by a report from Toby Dylan
    Hocking on the R-devel mailing list.)
  * The matrix multiply operator %*% is now an S3 generic, belonging
    to new group generic matrixOps.  From Tomasz Kalinowski's
    contribution in PR#18483.
  * New function array2DF() to convert arrays to data frames,
    particularly useful for the list arrays created by tapply().
  DATES and TIMES:
  * On platforms where (non-UTC) datetimes before 1902 (or before
    1900 as with system functions on recent macOS) are guessed by
    extrapolating time zones from 1902-2037, there is a warning at
    the first use of extrapolation in a session.  (As all time zones
    post 2037 are extrapolation, we do not warn on those.)
  * (Platforms using --with-internal-tzone, including Windows and by
    default macOS). How years are printed in dates or date-times can
    be controlled by environment variable R_PAD_YEARS_BY_ZERO.  The
    default remains to pad to 4 digits by zeroes, but setting value
    no gives no padding (as used by default by glibc).
  * strftime() tries harder to determine the offset for the "%z"
    format, and succeeds on the mainstream R platforms.
  * strftime() has a limit of 2048 bytes on the string produced -
    attempting to exceed this is an error.  (Previously it silently
    truncated at 255 bytes.)
  * sessionInfo() records (and by default prints) the system time
    zone as part of the locale information.  Also, the source
    (system/internal) of the date-time conversion and printing
    functions.
  * Objects of class "POSIXlt" created in this version of R always
    have 11 components: component zone is always set, and component
    gmtoff is set for times in UTC and usually set on the (almost
    all) platforms which have C-level support, otherwise is NA.
  * There are comprehensive validity checks on the structure of
    objects of class "POSIXlt" when converting (including formatting
    and printing).  (This avoids mis-conversions of hand-crafted
    objects.)
  * There is some support for using the native date-time routines on
    macOS: this is only viable on recent versions (e.g. 12.6 and 13)
    and does get wrong some historical changes (before 1900, during
    WWII).  Use of --with-internal-tzone remains the default.
  * as.POSIXct(&lt;numeric&gt;) and as.POSIXlt(.) (without specifying
    origin) now work.  So does as.Date(&lt;numeric&gt;).
  * as.Date.POSIXct(., tz) now treats several tz values, notably
    "GMT" as equivalent to "UTC", proposed and improved by Michael
    Chirico and Joshua Ulrich in PR#17674.
  * Experimental balancePOSIXlt() utility allows using "ragged" and
    or out-of-range "POSIXlt" objects more correctly, e.g., in
    subsetting and subassignments.  Such objects are now documented.
    More experimentally, a "POSIXlt" object may have an attribute
    "balanced" indicating if it is known to be filled or fully
    balanced.
  * Functions axis.Date() and axis.POSIXct() are rewritten to gain
    better default tick locations and better default formats by using
    prettyDate(). Thanks to Swetlana Herbrandt.
  * The mapping of Windows' names for time zones to IANA's 'Olson'
    names has been updated.  When ICU is available (it is by
    default), it is used to get a mapping for the current region set
    in Windows.  This can be overridden by setting environment
    variable TZ to the desired Olson name - see OlsonNames() for
    those currently available.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 16
    and so packages that provide graphics devices should be
    reinstalled.
  * The grDevices and grid packages have new functions for rendering
    typeset glyphs, primarily: grDevices::glyphInfo() and
    grid::grid.glyph().
    Rendering of typeset glyphs is only supported so far on the
    Cairo-based graphics devices and on the pdf() and quartz()
    devices.
  * The defined behaviour for "clear" and "source" compositing
    operators (via grid::grid.group()) has been changed (to align
    better with simple interpretation of original Porter-Duff
    definitions).
  * Support for gradients, patterns, clipping paths, masks, groups,
    compositing operators, and affine transformations has been added
    to the quartz() device.
  INSTALLATION on a UNIX-ALIKE:
  * A system installation of generic LAPACK 3.10.0 or later will be
    preferred to the version in the R sources.
    configure option --with-lapack=no (equivalently --without-lapack)
    forces compilation of the internal LAPACK sources.
    If --with-lapack is not specified, a system liblapack is looked
    for and used if it reports version 3.10.0 or later and does not
    contain BLAS routines.
    Packages using LAPACK will need to be reinstalled if this changes
    to using an external library.
  * On aarch64 Linux platforms using GCC, configure now defaults to
  - fPIC (instead of -fpic), as desired in PR#18326.
  * configure now checks conversion of datetimes between POSIXlt and
    POSIXct around year 2020.  Failure (which has been seen on
    platforms missing tzdata) is fatal.
  * If configure option --with-valgrind-instrumentation is given
    value 1 or 2, option --with-system-valgrind-headers is now the
    default and ignored (with a warning).  It is highly recommended
    that the system headers are installed alongside valgrind: they
    are part of its packaging on some Linux distributions and
    packaged separately (e.g. in the valgrind-devel RPM) on others.
    configure will give a warning if they are not found.
    The system headers will be required in a future release of R to
    build with valgrind instrumentation.
  * libcurl 8.x is now accepted by configure: despite a change in
    major version number it changes neither API nor ABI.
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools43, an update of the Rtools42 toolchain.  It is
    based on gcc 12 and newer versions of MinGW-W64, binutils and
    libraries.  At this time R-devel can still be built using
    Rtools42 without changes, but when R-devel is installed via the
    installer, it will by default look for Rtools43.
  * Old make targets rsync-extsoft and 32-bit ones that are no longer
    needed have been removed.
  * Default builds (including for packages) no longer select C99.
    Thus the C standard used is the default for the compiler, which
    for the toolchain in Rtools43 is C17.  (This is consistent with
    Unix builds.)
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++17 where
    available (which it is on all currently checked platforms): if
    not C++14 or C++11 is used if available otherwise C++ is not
    supported.
  * USE_FC_LEN_T is the default: this uses the correct
    (compiler-dependent) prototypes for Fortran BLAS/LAPACK routines
    called from C/C++, and requires adjustment of many such calls -
    see 'Writing R Extensions' SS6.6.1.
  * There is initial support for C++23 as several compilers are now
    supporting -std=c++23 or -std=c++2b or similar.  As for C++20,
    there no additional configure checks for C++23 features beyond a
    check that the compiler reports a __cplusplus value greater than
    that in the C++20 standard.  C++ feature tests should be used.
  * There is support for a package to indicate the version of the C
    standard which should be used to compile it, and for the
    installing user to specify this.  In most cases R defaults to the
    C compiler's default standard which is C17 (a `bug-fix' of C11) -
    earlier versions of R or compilers may have defaulted to C99.
    Current options are:
    USE_C17 Use a standard that is at most C17.  The intention is to
    allow legacy packages to still be installed when later C
    standards become the default, including packages using new
    keywords as identifiers or with K&amp;R-style function
    declarations.  This will use C17 if available, falling back
    to C11.
    USE_C90 Use the C90 (aka C89) standard.  (As that standard did
    not require compilers to identify that version, all we can
    verify is that the compiler does not claim to be using a
    later standard.  It may accept C99 features - for example
    clang accepts // to make comments.)
    USE_C99 Use the C99 standard. This should be rarely needed - it
    avoids the few new features of C11/C17 which can be useful if
    a package assumes them if C17 is specified and they are not
    implemented.
    USE_C23 Use C23 (or in future, later).  Compiler/library support
    for C23 is still being implemented, but LLVM clang from
    15.0.0 and the upcoming GCC 13 have quite extensive support.
    These can be specified as part of the SystemRequirements field in
    the package's DESCRIPTION file or _via_ options --use-C17 and so
    on of R CMD INSTALL and R CMD SHLIB.
    For further details see "Writing R Extensions" SS1.2.5.
  * (Windows) A src/Makefile.ucrt or src/Makefile.win file is now
    included after R_HOME/etcR_ARCH/Makeconf and so no longer needs
    to include that file itself.  Installation of a package with such
    a file now uses a site Makevars file in the same way as a package
    with a src/Makevars.win file would.
  * configure is now passed crucial variables such as CC and CFLAGS
    in its environment, as many packages were not setting them (as
    documented in 'Writing R Extensions' SS1.2).
    This has most effect where configure is used to compile parts of
    the package - most often by cmake or libtool which obfuscate the
    actual compile commands used.
    Also used for configure.win and configure.ucrt on Windows.
  FORTRAN FLAGS:
  * The flag -fno-optimize-sibling-calls is no longer forced for
    gfortran 7 and later.  It should no longer be needed now using
    'hidden' character-length arguments when calling BLAS/LAPACK
    routines from C/C++ is the default even for packages.  (Unless
    perhaps packages call Fortran code from C/C++ without using R's
    headers and without allowing for these arguments.)
  C-LEVEL FACILITIES:
  * The deprecated S-compatibility macros DOUBLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * The deprecated legacy typedefs of Sint and Sfloat in header R.h
    are no longer defined, and that header no longer includes header
    limits.h from C nor climits from C++.
  * New macro CAD5R() is provided in Rinternals.h and used in a few
    places in the R sources.
  * ALTREP now supports VECSXP vectors. Contributed by Gabor Csardi
    in PR#17620.
  * The Rcomplex definition (in header R_ext/Complex.h) has been
    extended to prevent possible mis-compilation when interfacing
    with Fortran (PR#18430).  The new definition causes compiler
    warnings with static initializers such as {1, 2}, which can be
    changed to {.r=1, .i=2}.
    Using the new definition from C++ depends on compiler extensions
    supporting C features that have not been incorporated into the
    C++ standards but are available in g++ and clang++: this may
    result in C++ compiler warnings but these have been worked around
    for recent versions of common compilers (GCC, Apple/LLVM clang,
    Intel).
    It is intended to change the inclusion of header R_ext/Complex.h
    by other R headers, so C/C++ code files which make use of
    Rcomplex should include that header explicitly.
  UTILITIES:
  * R CMD check does more checking of package .Rd files, warning
    about invalid email addresses and (some) invalid URIs and noting
    empty \item labels in description lists.
  * R CMD check now also reports problems when reading package news
    in md (file NEWS.md) and (optionally) plain text (file NEWS)
    formats.
  * _R_CHECK_TIMINGS_ defaults to a value from the environment even
    for R CMD check --as-cran; this allows for exceptionally fast or
    slow platforms.
    It now applies to checking PDF and HTML versions of the manuals,
    and 'checking CRAN incoming feasibility'.
  * R CMD check can optionally (but included in --as-cran) check
    whether HTML math rendering _via_ KaTeX works for the package .Rd
    files.
  * Non-interactive debugger invocations can be trapped by setting
    the environment variable _R_CHECK_BROWSER_NONINTERACTIVE_ to a
    true value.  This is enabled by R CMD check --as-cran to detect
    the use of leftover browser() statements in the package.
  * The use of sprintf and vsprintf from C/C++ has been deprecated in
    macOS 13 and is a known security risk.  R CMD check now reports
    (on all platforms) if their use is found in compiled code:
    replace by snprintf or vsnprintf respectively. [*NB:* whether
    such calls get compiled into the package is platform-dependent.]
  * Where recorded at installation, R CMD check reports the C and
    Fortran compilers used to build R.
    It reports the OS in use (if known, as given by osVersion) as
    well as that R was built for.
    It notes if a C++ standard was specified which is older than the
    current default: many packages have used C++11 to mean 'not
    C++98' - as C++11 is the minimum supported since R 4.0.0, that
    specification can probably be removed.
  * R CMD INSTALL reports the compilers (and on macOS, the SDK) used,
    and this is copied to the output of R CMD check.
    Where a C++ standard is specified, it is reported.
  * R CMD check's 'checking compilation flags in Makevars' has been
    relaxed to accept the use of flags such as -std=f2008 in
    PKG_FFLAGS.
  * tools::buildVignettes() has a new argument skip, which is used by
    R CMD check to skip (and note) vignettes with unavailable
    \VignetteDepends (PR#18318).
  * New generic .AtNames() added to enable class-specific completions
    after @. The formerly internal function findMatches() is now
    exported, mainly for use in methods for .DollarNames() and
    .AtNames().
  DEPRECATED AND DEFUNCT:
  * default.stringsAsFactors() is defunct.
  * Calling as.data.frame.&lt;class&gt;() directly (for 12 atomic classes)
    is going to be formally deprecated, currently activated by
    setting the environment variable
    _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ to non-empty, which also
    happens in R CMD check --as-cran.
  BUG FIXES:
  * Hashed environments with sizes less than 5 can now grow.
    (Reported to R-devel by Duncan Garmonsway.)
  * as.character(&lt;Rd&gt;, deparse = TRUE) failed to re-escape curly
    braces in LaTeX-like text.  (Reported by Hadley Wickham in
    PR#18324.)
  * library() now passes its lib.loc argument when requiring Depends
    packages; reported (with fix) in PR#18331 by Mikael Jagan.
  * R CMD Stangle: improved message about 'Output' files.
  * head(x, n) and tail(x, n) now signal an error if n is not
    numeric, instead of incidentally "working" sometimes returning
    all of x.  Reported and discussed by Colin Fay, in PR#18357.
  * The "lm" method for summary() now gives the correct F-statistic
    when the model contains an offset.  Reported in PR#18008.
  * C() and `contrasts&lt;-`() now preserve factor level names when
    given a function object (as opposed a function name which did
    preserve names). Reported in PR#17616.
  * c(a = 1, 2)[[]] no longer matches 2 but rather signals a
    _classed_ error.  Reported and analysed by Davis Vaughan in
    PR#18367, a duplicate of PR#18004, by Jan Meis et al.  For
    consistency, NULL[[]] is also erroneous now.  x[[]] &lt;- v gives an
    error of the same class "MissingSubscriptError".
  * The relist() function of utils now supports NULL elements in the
    skeleton (PR#15854).
  * ordered(levels = *) (missing x) now works analogously to factor(,
    ordered=TRUE); reported (with fix) by Achim Zeileis in PR#18389.
  * User-defined Rd macro definitions can now span multiple lines,
    thanks to a patch from Duncan Murdoch. Previously, the Rd parser
    silently ignored everything after the first line.
  * Plain-text help (tools::Rd2txt()) now preserves an initial blank
    line for text following description list items.
  * tools::Rd2HTML() and tools::Rd2latex() no longer split \arguments
    and \value lists at Rd comments.
  * tools::Rd2latex() now correctly handles optional text outside
    \items of argument lists as well as bracketed text at the
    beginning of sections, e.g., \value{[NULL]}.
  * as.character(&lt;POSIXt&gt;) now behaves more in line with the methods
    for atomic vectors such as numbers, and is no longer influenced
    by options().  Ditto for as.character(&lt;Date&gt;).  The
    as.character() method gets arguments digits and OutDec with
    defaults _not_ depending on options().  Use of as.character(*,
    format = .) now warns.
  * Similarly, the as.character.hexmode() and *.octmode() methods
    also behave as good citizen methods and back compatibility option
    keepStr = TRUE.
  * The as.POSIXlt(&lt;POSIXlt&gt;) and as.POSIXct(&lt;POSIXct&gt;) default
    methods now do obey their tz argument, also in this case.
  * as.POSIXlt(&lt;Date&gt;) now does apply a tz (time zone) argument, as
    does as.POSIXct(); partly suggested by Roland Fuss on the R-devel
    mailing list.
  * as.Date.POSIXlt(x) now also works when the list components are of
    unequal length, aka "partially filled" or "ragged".
  * expand.model.frame() looked up variables in the wrong environment
    when applied to models fitted without data.  Reported in
    PR#18414.
  * time() now (also) uses the ts.eps = getOption("ts.eps") argument
    and thus by default rounds values very close to the start (or
    end) of a year.  Based on a proposal by Andre"i V. Kostyrka on
    R-help.
  * Printing of a factanal() result with just one factor and sort =
    TRUE now works regularly, fixing PR#17863 by Timothy Bates,
    thanks to the 'R Contributors' working group.
  * Printing 0-length objects of class "factor", "roman", "hexmode",
    "octmode", "person", "bibentry", or "citation" now prints
    something better, one of which fixes PR#18422, reported by
    Benjamin Feakins.
  * Sys.timezone() queries timedatectl only if systemd is loaded;
    addressing a report by Jan Gorecki in PR#17421.
  * The formula method of cor.test() had scoping problems when
    environment(formula) was not the calling environment; reported
    with a patch proposal by Mao Kobayashi in PR#18439.
  * attach() of an environment with active bindings now preserves the
    active bindings.  Reported by Kevin Ushey in PR#18425.
  * BLAS detection now works also with system-provided libraries not
    available as regular files.  This fixes detection of the
    Accelerate framework on macOS since Big Sur.  Reported by David
    Novgorodsky.
  * download.file() gives a helpful error message in case of an
    invalid download.file.method option, thanks to Colin Fay's report
    in PR#18455.
  * Sporadic crashes of Rterm when using completion have been fixed.
  * Rprof() is now more reliable.  A livelock in thread
    initialization with too short sampling interval has been fixed on
    macOS.  A deadlock in using the C runtime has been fixed on
    Windows.  A potential deadlock has been prevented on Unix.
  * Cursor placement in Rgui now works even after a fixed-width font
    is selected.
  * Mandatory options (options()) are now set on startup so that
    saving and restoring them always works (PR#18372).
  * Package installation, R CMD INSTALL or install.packages(*), now
    parses each of the &lt;pkg&gt;/R/*.R files individually instead of
    first concatenating and then parse()ing the large resulting file.
    This allows parser or syntax errors to be diagnosed with correct
    file names and line numbers, thanks to Simon Dedman's report and
    Bill Dunlap's patch in PR#17859.
    This _does_ require syntactically self contained R source files
    now, fixing another inadvertent bug.
  * predict.lm(&lt;model with offset&gt;) now finds the offset in the
    correct environment, thanks to Andr'e Gillibert's report and patch
    in PR#18456.
  * getInitial(&lt;formula&gt;) now finds the selfStart model in the
    correct environment.  (Reported by Ivan Krylov in PR#18368.)
  * Fix for possible segfault when using recently-added graphics
    features, such as gradients, clipping paths, masks, and groups
    with pdf(file=NULL).
  * class(m) &lt;- class(m) no longer changes a matrix m by adding a
    class _attribute_.
  * packageDate(pkg) now only warns once if there is no pkg.
  * When ts() creates a multivariate time series, "mts", it also
    inherits from "array" now, and is.mts() is documented _and_
    stricter.
  * Rd2txt() now preserves line breaks of \verb Rd content and from
    duplicated \cr.  The former also fixes the rendering of verbatim
    output from Rd \Sexpr in plain-text help.
  * uniroot(f, interval) should no longer wrongly converge _outside_
    the interval in some cases where abs(f(x)) == Inf for an x at the
    interval boundary, thanks to posts by Ben Bolker and Serguei
    Sokol on R-devel.
  * Vectorized alpha handling in palette functions such as in gray(),
    rainbow(), or hcl.colors() works correctly now, thanks to Achim
    Zeileis' report and patch in PR#18476.
  * Formatting and print()ing of bibentry objects has dropped the
    deprecated citation.bibtex.max argument, such that the bibtex
    argument's default for print.bibentry() depends directly on the
    citation.bibtex.max option, whereas in format.bibentry() the
    option no longer applies.
  * Attempting to use a character string naming a foreign function
    entry point in a foreign function call in a package will now
    signal an error if the packages has called R_forceSymbols to
    specify that symbols must be used.
  * An error in table() could permanently set options(warn=2)
    promoting all subsequent warnings to errors.
  * The sigma() function gave misleading results for binary GLMs.  A
    new method for objects of class "glm" returns the square root of
    the estimate of the dispersion parameter using the same
    calculation as summary.glm().
  * bs() and ns() in the (typical) case of automatic knot
    construction, when some of the supposedly inner knots coincide
    with boundary knots, now moves them inside (with a warning),
    building on PR#18442 by Ben Bolker.
  * R CMD on Windows now skips the site profile with --no-site-file
    and --vanilla even when R_PROFILE is set (PR#18512, from Kevin
    Ushey).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1686916800">- CHANGES IN R 4.3.1:
  C-LEVEL FACILITIES:
  * The C-level API version of R's integrate(), Rdqags() in Applic.h,
    now returns the correct number of integrand evaluations neval,
    fixing PR#18515 reported and diagnosed by Stephen Wade.
  * The C prototypes for LAPACK calls dspgv and dtptrs in
    R_exts/Lapack.h had one too many and one too few character length
    arguments - but this has not caused any known issues. To get the
    corrected prototypes, include
    [#]include &lt;Rconfig.h&gt; // for PR18534fixed
    [#]ifdef PR18534fixed
    [#] define usePR18534fix 1
    [#]endif
    [#]include &lt;R_exts/Lapack.h&gt;
    in your C/C++ code (PR#18534).
  INSTALLATION:
  * Many of the checks of esoteric Internet operations and those
    using unreliable external sites have been moved to a new target
    that is not run by default and primarily intended for the core
    developers.  To run them use
    cd tests; make test-Internet-dev
  BUG FIXES:
  * .S3methods(), typically called from methods(), again marks
    methods from package base as visible.
    Also, the visibility of non-base methods is again determined by
    the method's presence in search().
  * tools::Rdiff() is now more robust against invalid strings, fixing
    installation tests on Windows without Rtools installed
    (PR#18530).
  * Fix (new) bug in hcl.colors(2, *), by Achim Zeileis (PR#18523).
  * head(., &lt;illegal&gt;) and tail(..) now produce more useful "Error in
    ...." error messages, fixing PR#18362.
  * Package code syntax on Windows is checked in UTF-8 when UTF-8 is
    the native encoding.
  * na.contiguous(x) now also returns the first run, when it is at
    the beginning and there is a later one of the same length;
    reported to R-devel, including a fix, by Georgi Boshnakov.
    Further, by default, it modifies only an existing attr(*,"tsp")
    but otherwise no longer sets one.
  * chol(&lt;not pos.def&gt;, pivot = &lt;T|F&gt;) now gives a correct error or
    warning message (depending on pivot), thanks to Mikael Jagan's
    (PR#18541).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1699012800">- CHANGES IN R 4.3.2:
  NEW FEATURES:
  * The default initialization of the "repos" option from the
    repositories file at startup can be skipped by setting
    environment variable R_REPOSITORIES to NULL such that
    getOption("repos") is empty if not set elsewhere.
  * qr.X() is now an implicit S4 generic in methods.
  * iconv(to = "ASCII//TRANSLIT") is emulated using substitution on
    platforms which do not support it (notably Alpine Linux).  This
    should give a human-readable conversion in ASCII on all platforms
    (rather than NA_character_).
  * trans3d() gains options continuous and verbose addressing the
    problem of possible "wrap around" when projecting too long
    curves, as reported by Achim Zeileis in PR#18537.
  * tools::showNonASCII() has been rewritten to work better on macOS
    14 (which has a changed implementation of iconv()).
  * tiff(type = "quartz") (the default on macOS) now warns if
    compression is specified: it continues to be ignored.
  INSTALLATION on a UNIX-ALIKE:
  * There is some support for building with Intel's LLVM-based
    compilers on x86_64 Linux, such as (C) icx, (C++) ipcx and
    (Fortran) ifx from oneAPI 2023.x.y.
  * There is support for using LLVM's flang-new as the Fortran
    compiler from LLVM 16.0.x (preferably 17.0.0 or later).
  UTILITIES:
  * R CMD check reports the use of the Fortran 90 random number
    generator RANDOM_NUMBER() and the subroutines to initialize it.
    'Writing R Extensions' has example code to use R's RNGs from
    Fortran.
  BUG FIXES:
  * substr(x, n, L) &lt;- cc now works (more) correctly for multibyte
    UTF-8 strings x when L &gt; nchar(x), thanks to a report and patch
    by 'Architect 95'.
  * contrib.url(character()) now returns 0-length character() as
    documented, which also avoids spurious warnings from
    available.packages() et al. in the edge case of an empty vector
    of repository URLs.
  * readChar(., 4e8) no longer fails, thanks to Kodi Arfer's report
    (PR#18557).
  * lapply(&lt;list&gt;, as.data.frame) no longer warns falsely for some
    base vector components.
  * Communication between parent and child processes in the multicore
    part of parallel could fail on platforms that do not support an
    arbitrarily large payload in system functions read()/write() on
    pipes (seen on macOS where a restriction to INT_MAX bytes is
    documented, without doing a partial read unlike Linux). The
    payload is now split into 1Gb chunks to avoid that problem.
    (PR#18571)
  * qqplot(x,y, conf.level=.) gives better confidence bounds when
    length(x) != length(y), thanks to Alexander Ploner's report and
    patch proposal (PR#18557).
  * norm(&lt;0-length&gt;, "2") now gives zero instead of an error, as all
    the other norm types, thanks to Mikael Jagan's PR#18542.
  * Build-stage Rd macros \packageAuthor and \packageMaintainer now
    process Authors@R, fixing NA results when the package DESCRIPTION
    omits Author and Maintainer fields.
  * Formatting and printing complex numbers could give things like
    0.1683-0i because of rounding error: -0i is now replaced by +0i.
  * postscript() refused to accept a title comment containing the
    letter "W" (PR#18599).
  * isoreg(c(1,Inf)) signals an error instead of segfaulting, fixing
    PR#18603.
  * tiff(type = "Xlib") was only outputting the last page of
    multi-page plots.
  * tools::latexToUtf8() again knows about \~{n} and other letters
    with tilde, fixing a regression in R 4.3.0, and about \^{i} as an
    alternative to \^{\i} (similarly with other accents).
    Furthermore, LaTeX codes for accented I letters are now correctly
    converted, also fixing related mistakes in
    tools::encoded_text_to_latex().
  * tar(*, tar = "internal") no longer creates out-of-spec tar files
    in the very rare case of user or group names longer than 32
    bytes, fixing PR#17871 with thanks to Ivan Krylov.
  * When using the "internal" timezone datetime code, adding a
    fraction of a second no longer adds one second, fixing PR#16856
    from a patch by Ivan Krylov.
  * tools::checkRd() no longer produces spurious notes about
    "unnecessary braces" from multi-line Rd results of \Sexpr macros.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1709208000">- CHANGES IN R 4.3.3:
  NEW FEATURES:
  * iconv() now fixes up variant encoding names such as "utf8"
    case-insensitively.
  DEPRECATED AND DEFUNCT:
  * The legacy encoding = "MacRoman" is deprecated in pdf() and
    postscript(): support was incomplete in earlier versions of R.
  BUG FIXES:
  * Arguments are now properly forwarded to methods on S4 generics
    with ... in the middle of their formal arguments. This was broken
    for the case when a method introduced an argument but did not
    include ... in its own formals. Thanks to Herv'e Pag`es for the
    report PR#18538.
  * Some invalid file arguments to pictex(), postscript() and xfig()
    opened a file called NA rather than throw an error.  These
    included postscript(NULL) (which some people expected to work
    like pdf(NULL)).
  * Passing filename = NA to svg(), cairo_pdf(), cairo_ps() or the
    Cairo-based bitmap devices opened a file called NA: it now throws
    an error.
  * quartz(file = NA) opened a file called NA, including when used as
    a Quartz-based bitmap device.  It now gives an error.
  * rank(&lt;long vector&gt;) now works, fixing PR#18617, thanks to Ilia
    Kats.
  * seq.int() did not adequately check its length.out argument.
  * match(&lt;POSIXct&gt;, .) is correct again for differing time zones,
    ditto for "POSIXlt", fixing PR#18618 reported by Bastian Klein.
  * drop.terms(*, dropx = &lt;0-length&gt;) now works, fixing PR#18563 as
    proposed by Mikael Jagan.
  * drop.terms(*) keeps + offset(.) terms when it should, PR#18565,
    and drop.terms() no longer makes up a response, PR#18566, fixing
    both bugs thanks to Mikael Jagan.
  * getS3method("t", "test") no longer finds the t.test() function,
    fixing PR#18627.
  * pdf() and postscript() support for the documented Adobe encodings
    "Greek" and "Cyrilllic" was missing (although the corresponding
    Windows' codepages could be used).
  * Computations of glyph metric information for pdf() and
    postscript() did not take into account that transliteration could
    replace one character by two or more (only seen on macOS 14) and
    typically warned that the information was not known.
  * rank(x) no longer overflows during integer addition, when
    computing rank average for largish but not-yet long vector x,
    fixing PR#18630, thanks to Ilia Kats.
  * list.files() on Windows now returns also files with names longer
    that 260 bytes (the Windows limit is 260 characters).
    Previously, some file names particularly with 'East Asian'
    characters were omitted.
  * cov2cor(&lt;0 x 0&gt;) now works, fixing PR#18423 thanks to Mikael
    Jagan and Elin Waring.
  * cov2cor(&lt;negative diagonal&gt;) and similar now give one warning
    instead of two, with better wording, fixing PR#18424 thanks to
    Mikael Jagan.
  * tools:: startDynamicHelp() now ensures port is in proper range,
    fixing PR#18645.
  * pbeta(x, a,b) is correct now for x=0 or 1 in the boundary cases
    where a or b or both are 0, fixing PR#18672 thanks to Michael
    Fay.
  * pmatch(x, table) for large table, also called for data frame row
    selection, dfrm[nm, ], is now interruptible, fixing PR#18656.
  * predict(&lt;rank-deficient lm&gt;, newdata=*) fix computing of nbasis,
    see Russ Lenth's comment 29 in PR#16158.
  * Added a work-around for a bug in macOS 14.3.1 and higher which
    prevents R plots in the Quartz Cocoa device from updating on
    screen.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1713960000">- CHANGES IN R 4.4.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Startup banners, R --version, sessionInfo() and R CMD check no
    longer report (64-bit) as part of the platform as this is almost
    universal - the increasingly rare 32-bit platforms will still
    report (32-bit).
    On Windows, ditto for window titles.
  * is.atomic(NULL) now returns FALSE, as NULL is not an atomic
    vector.  Strict back-compatibility would replace is.atomic(foo)
    by (is.null(foo) || is.atomic(foo)) but should happen only
    sparingly.
  NEW FEATURES:
  * The confint() methods for "glm" and "nls" objects have been
    copied to the stats package.  Previously, they were stubs which
    called versions in package MASS. The MASS namespace is no longer
    loaded if you invoke (say) confint(glmfit).  Further, the "glm"
    method for profile() and the plot() and pairs() methods for class
    "profile" have been copied from MASS to stats.  (profile.nls()
    and plot.profile.nls() were already in stats.)
  * The confint() and profile methods for "glm" objects have gained a
    possibility to do profiling based on the Rao Score statistic in
    addition to the default Likelihood Ratio. This is controlled by a
    new test = argument.
  * The pairs() method for "profile" objects has been extended with a
    which = argument to allow plotting only a subset of the
    parameters.
  * The "glm" method for anova() computes test statistics and
    p-values by default, using a chi-squared test or an F test
    depending on whether the dispersion is fixed or free.  Test
    statistics can be suppressed by giving argument test a false
    logical value.
  * In setRepositories() the repositories can be set using their
    names via name = instead of index ind =.
  * methods() and .S3methods() gain a all.names option for the (rare)
    case where functions starting with a . should be included.
  * Serializations can now be interrupted (e.g., by Ctrl-C on a
    Unix-alike) if they take too long, e.g., from save.image(),
    thanks to suggestions by Ivan Krylov and others on R-devel.
  * New startup option --max-connections to set the maximum number of
    simultaneous connections for the session.  Defaults to 128 as
    before: allowed values up to 4096 (but resource limits may in
    practice restrict to smaller values).
  * R on Windows (since Windows 10 2004) now uses the new Segment
    Heap allocator. This may improve performance of some
    memory-intensive applications.
  * When R packages are built, typically by R CMD build &lt;pkg&gt;, the
    new --user=&lt;build_user&gt; option overrides the (internally
    determined) user name, currently Sys.info()["user"] or LOGNAME.
    This is a (modified) fulfillment of Will Landau's suggestion in
    PR#17530.
  * tools::testInstalledBasic() gets new optional arguments outDir
    and testSrcdir, e.g., allowing to use it in a &lt;builddir&gt; !=
    &lt;srcdir&gt; setup, and in standard "binary" Windows installation
  * if* a source tests/ folder is present.
  * range(&lt;DT_with_Inf&gt;, finite = TRUE) now work for objects of class
    "Date", "POSIXct", and "POSIXlt" with infinite entries,
    analogously to range.default(), as proposed by Davis Vaughan on
    R-devel.  Other range()-methods can make use of new function
    .rangeNum().
  * New .internalGenerics object complementing .S3PrimitiveGenerics,
    for documentation and low-level book-keeping.
  * grid() now invisibly returns the x- and y- coordinates at which
    the grid-lines were drawn.
  * norm(., type) now also works for complex matrices.
  * kappa(., exact = TRUE, norm = *) now works for all norms and also
    for complex matrices.  In symmetric / triangular cases, the new
    argument uplo = "U" | "L" allows the upper or lower triangular
    part to be specified.
  * memDecompress(type = "unknown") recognizes compression in the
    default 'zlib' format as used by memCompress(type = "gzip").
  * memCompress() and memDecompress() will use the libdeflate library
    (&lt;https://github.com/ebiggers/libdeflate&gt;) if installed.  This
    uses the same type of compression for type = "gzip" but is 1.5-2x
    faster than the system libz library on some common platforms: the
    speed-up may depend on the library version.
  * diff() for objects of class "Date", "POSIXct", and "POSIXlt"
    accepts a units argument passed via ....
  * Dynamic help now does a much better job of rendering package
    DESCRIPTION metadata.
  * Rprof() gains an event argument and support for elapsed (real)
    time profiling on Unix (PR#18076).
  * filled.contour() gains a key.border argument.
  * tools::update_pkg_po() gets arguments pot_make and mo_make for
    _not_ re-making the corresponding files, and additionally a
    verbose argument.
  * Hexadecimal string colour specifications are now accepted in
    short form, so, for example, we can use "#123", which is
    equivalent to "#112233".
    Thanks to MikeFC for the original idea and Ella Kaye, Malcolm
    Barrett, George Stagg, and Hanne Oberman for the patch.
  * Plain-text help shows \var markup by angle brackets.
  * The new experimental primitive function declare() is intended to
    eventually allow information about R code to be communicated to
    the interpreter, compiler, and code analysis tools. The syntax
    for declarations is still being developed.
  * Functions psmirnov(), qsmirnov() and rsmirnov() in package stats
    have had argument two.sided renamed to alternative, to take into
    account that the permutation distributions of the one-sided
    statistics can be different in the case of ties.  Consequence of
    PR#18582.
  * sort() is now an implicit S4 generic in methods.
  * Formatting and printing, format(z), print(z), of complex vectors
    z no longer zap relatively small real or imaginary parts to zero,
    fixing PR#16752.  This is an API change, as it was documented
    previously to round real and imaginary parts together on purpose,
    producing nicer looking output.  As mentioned, e.g. in the PR,
    this change is compatible with many other "R-like" programming
    environments.
    We have simplified the internal code and now basically format the
    real and imaginary parts independently of each other.
  * New experimental functions Tailcall() and Exec() to support
    writing stack-space-efficient recursive functions.
  * Where characters are attempted to be plotted by pdf(),
    postscript() and xfig() which are not in the selected 8-bit
    character set (most often Latin-1) and the R session is using a
    UTF-8 locale, the warning messages will show the UTF-8 character
    rather than its bytes and one dot will be substituted per
    character rather than per byte.  (Platforms whose iconv() does
    transliteration silently plot the transliteration.)
    In a UTF-8 locale some transliterations are now done with a
    warning (e.g., dashes and Unicode minus to hyphen, ligatures are
    expanded, permille (‰) is replaced by o/oo), although the OS may
    have got there first.  These are warnings as they will continue
    to be replaced by dots in earlier versions of R.
  * The matrix multiplication functions crossprod() and tcrossprod()
    are now also primitive and S3 generic, as %*% had become in R
    4.3.0.
  * source() and example() have a new optional argument catch.aborts
    which allows continued evaluation of the R code after an error.
  * The non-Quartz tiff() devices allow additional types of
    compression if supported by the platform's libtiff library.
  * The list of base and recommended package names is now provided by
    tools::standard_package_names().
  * cairo_pdf() and cairo_ps() default to onefile = TRUE to closer
    match pdf() and postscript().
  * New option catch.script.errors provides a documented way to catch
    errors and then continue in non-interactive use.
  * L %||% R newly in base is an expressive idiom for the phrases
    if(!is.null(L)) L else R or if(is.null(L)) R else L.
  * The return value from warnings() now always inherits from
    "warnings" as documented, now also in the case of no warnings
    where it previously returned NULL.
  * as.complex("1i") now returns 0 + 1i instead of NA with a warning.
  * z &lt;- c(NA, 1i) now keeps the imaginary part Im(z[1]) == 0, no
    longer coercing to NA_complex_.  Similarly, cumsum(z) correctly
    sums real and imaginary parts separately, i.e., without
    "crosstalk" in case of NAs.
  * On Alpine Linux iconv() now maps "latin2", "latin-2", "latin9"
    and "latin-9" to encoding names the OS knows about
    (case-insensitively).
  * iconv(sub = "Unicode") now always zero-pads to four (hex) digits,
    rather than to 4 or 8.  (This seems to have become the convention
    once Unicode restricted the number of Unicode points to 2^21 - 1
    and so will never need more than 6 digits.)
  * NCOL(NULL) now returns 0 instead of 1, for consistency with
    cbind().
  * The information for the Euro glyph missing from the Adobe .afm
    files for the Courier, Helvetica and Times families has been
    copied from their URW equivalents - this will improve vertical
    centring in the pdf() and postscript() devices.
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.12.0.  The changes are almost entirely cosmetic.
  * The included LAPACK sources have been updated to version 3.12.0
    and some further double-complex routines added.
  * There are new font families for the 2014--5 URW 2.0 fonts (see
    ?pdf) which are included in recent versions of Ghostscript.
    These have font widths for most Greek glyphs and a few others
    which were missing from the original versions (whose font
    families remain available for reproducibility, although
    Ghostscript-based viewers will render using the 2.0 versions).
  * Improve the large-n efficiency of as.matrix(&lt;dist&gt;), thanks an R
    contributors effort, notably by Tim Taylor and Heather Turner,
    see PR#18660.
  * The default and numeric methods of all.equal() get a check.class
    option.
  * zapsmall() gets new optional arguments, function mFUN and min.d,
    for extra flexibility; fulfills a wish in PR#18199.  Also, it is
    now an implicit S4 generic in package methods.
  * The Rd filter for aspell() gains an ignore argument.
  * New generic function sort_by(), primarily useful for the
    data.frame method which can be used to sort rows of a data frame
    by one or more columns.
  * The icence headers for the RPC code in src/extra/xdr have been
    updated to use the GPL-compatible licence published by Oracle
    America in 2010.
  * New function pkg2HTML() in tools to create single-page HTML
    reference manuals for R packages.
  * The byte code evaluator now uses less C stack space for recursive
    calls to byte-compiled functions. It also makes more of an effort
    to avoid allocations for scalar return values.
  * New completion option backtick (disabled by default) allows
    non-syntactic completions to be wrapped in backquotes. This is
    currently only useful for Jupyter notebooks via the IRkernel
    package, and may cause problems for other backends.
  INSTALLATION:
  * The parser has been updated to work with bison 3.8.2, which is
    now used for the pre-generated parsers in gram.c, file.c, and
    gramRd.c. A few parser error messages have changed, which may
    affect code that relies on exact messages.
  INSTALLATION on a UNIX-ALIKE:
  * System valgrind headers are now required to use configure option
  - -with-valgrind-instrumentation with value 1 or 2.
  * configure will warn if it encounters a 32-bit build, as that is
    nowadays almost untested.
  * Environment variable R_SYSTEM_ABI is no longer used and so no
    longer recorded in etc/Renviron (it was not on Windows and was
    only ever used when preparing package tools).
  * If the libdeflate library and headers are available, libdeflate
    rather than libz is used to (de)compress R objects in lazy-load
    databases.  Typically tasks spend up to 5% of their time on such
    operations, although creating lazy-data databases is one of the
    exceptions.
    This can be suppressed if the library is available by the
    configure option --without-libdeflate-compression.
  * configure option --enable-lto=check has not worked reliably since
    2019 and has been removed.
  * The minimum autoconf requirement for a maintainer build has been
    increased to autoconf 2.71.
    It is intended to increase this to 2.72 for R 4.5.0: the
    distributed configure file was generated using 2.72.
  * The minimum version requirement for an external LAPACK has been
    reduced to 3.9.0.
  * No default C++ compiler is set if no C++17 compiler is detected:
    there is no longer an automatic fallback to C++14 or C++11.
    Compilers from the last five years should have sufficient
    support: for others macros CXX and CXXSTD can be set in file
    config.site to provide a fallback if needed.
    The Objective-C++ compiler now by default uses the standard
    selected by R for C++ (currently C++17) rather than the default
    standard for the C++ compiler (which on macOS is still C++98).
  INSTALLATION on macOS:
  * A new configure option --with-newAccelerate makes use of Apple's
    'new' BLAS / LAPACK interfaces in their Accelerate framework.
    Those interfaces are only available in macOS 13.3 or later, and
    building requires SDK 13.3 or later (from the Command Line Tools
    or Xcode 14.3 or later).
    By default the option uses new Accelerate for BLAS calls: to also
    use it for LAPACK use option --with-newAccelerate=lapack.  The
    later interfaces provide LAPACK 3.9.1 rather than 3.2.1: 3.9.1 is
    from 2021-04 and does not include the improved algorithms
    introduced in LAPACK 3.10.0 (including for BLAS calls).
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools44, an update of the Rtools43 toolchain.  It is
    based on GCC 13 and newer versions of MinGW-W64, binutils and
    libraries (targeting 64-bit Intel CPUs).  R-devel can no longer
    be built using Rtools43 without changes.
  * Rtools44 has experimental support for 64-bit ARM (aarch64) CPUs
    _via_ the LLVM 17 toolchain using lld, clang/flang-new and
    libc++.
  UTILITIES:
  * R CMD check notes when S4-style exports are used without
    declaring a strong dependence on package methods.
  * tools::checkRd() (used by R CMD check) detects more problems with
    \Sexpr-based dynamic content, including bad nesting of \Sexprs
    and invalid arguments.
  * tools::checkRd() now reports Rd titles and section names ending
    in a period; this is ignored by R CMD check unless environment
    variable _R_CHECK_RD_CHECKRD_MINLEVEL_ is set to -5 or smaller.
  * R CMD check now notes Rd files without an \alias, as long
    documented in 'Writing R Extensions' §1.3.1.  The check for a
    missing \description has been moved from tools::checkRd() to
    tools::checkRdContents().
  * R CMD check now visits inst/NEWS.Rd and OS-specific man
    subdirectories when checking Rd files.
  * tools::checkDocFiles() and tools::checkRdContents() now also
    check internal Rd files by default, but "specially" (ignoring
    missing documentation of arguments).
  * R CMD Rdiff gets option --useEx.
  * R CMD check now warns on non-portable uses of Fortran KIND such
    as INTEGER(KIND=4) and REAL(KIND=8).
    To see the failing lines set environment variable
    _R_CHECK_FORTRAN_KIND_DETAILS_ to a true value.
  * When checking Rd files, R CMD check now notes some of the "lost
    braces" that tools::checkRd() finds.  Typical problems are Rd
    macros missing the initial backslash (e.g., code{...}), in-text
    set notation (e.g., {1, 2}, where the braces need escaping), and
    \itemize lists with \describe-style entries of the form
    \item{label}{description}.
  * R CMD INSTALL (and hence check) will compile C++ code with
  - DR_NO_REMAP if environment variable _R_CXX_USE_NO_REMAP_ is set
    to a true value.  It is planned that this will in future become
    the default for compiling C++.
  * The new built-in Rd macro \dontdiff{} can be used to mark example
    code whose output should be ignored when comparing check output
    to reference output (tests/Examples/&lt;pkg&gt;-Ex.Rout.save).  The
    \dontdiff tag, like \donttest, is _not_ shown on the rendered
    help page, so provides a clean alternative to ##
    IGNORE_RDIFF_(BEGIN|END) comments.
  * R CMD build when there is no NAMESPACE, now uses the recommended
    exportPattern("^[^.]"), instead of exporting everything.
  * R CMD check now warns about non-ASCII characters in the NAMESPACE
    file (in addition to R files). Such packages are not portable and
    may fail to install on some platforms.
  C-LEVEL FACILITIES:
  * Headers R_ext/Applic.h and R-ext/Linpack.h used to include
    R_ext/BLAS.h although this was undocumented and unneeded by their
    documented entry points.  They no longer do so.
  * New function R_missing(), factored out from do_missing(), used to
    fix PR#18579.
  * SEXP type S4SXP has been renamed to OBJSXP to support
    experimenting with alternative object systems.  The S4SXP value
    can still be used in C code but is now deprecated.  Based on
    contributions from the R Consortium's Object-Oriented Programming
    Working Group.
  * New function pow1p(x,y) for accurate (1+x)^y.
  * mkCharLenCE was incorrectly documented to take a size_t length
    but was implemented with int (and character strings in R are
    limited to 2^31 - 1 bytes).
  DEPRECATED AND DEFUNCT:
  * data() no longer handles zipped data from long-defunct (since R
    2.13.0) --use-zip-data installations.
  * The legacy graphics devices pictex() and xfig() are now
    deprecated.  They do not support recent graphics enhancements and
    their font handling is rudimentary. The intention is to retain
    them for historical interest as long as they remain somewhat
    functional.
  * Support for encoding = "MacRoman" has been removed from the pdf()
    and postscript() devices - this was a legacy encoding supporting
    classic macOS up to 2001 and no longer has universal libiconv
    support.
  * is.R() is deprecated as no other S dialect is known to be in use
    (and this could only identify historical dialects, not future
    ones).
    Further information on calls can be obtained by setting the
    environment variable _R_DEPRECATED_IS_R_ to error which turns the
    deprecation warning into an error and so by default gives a
    traceback.  (This is done by R CMD check --as-cran.)
  * UseMethod() no longer forwards local variables assigned in the
    generic function into method call environments before evaluating
    the method body. This makes method calls behave more like
    standard function calls and makes method code easier to analyze
    correctly.
  * The twelve as.data.frame.&lt;class&gt;() methods which were deprecated
    only via _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ and in R CMD
    check --as-cran are formally deprecated now in favour of calling
    as.data.frame() or as.data.frame.vector().  The deprecation
    "check" now works also when as.data.frame() is S4 generic thanks
    to Ivan Krylov.
  * The default method for the directional comparison operators &lt;, &gt;,
    &lt;=, and &gt;= now signals an error when one of the operands is a
    language object, i.e. a symbol or a call.
  * For terms.formula(), deprecate abb and neg.out arguments
    _formally_ in addition to just documenting it.
  BUG FIXES:
  * The methods package is more robust to not being attached to the
    search path.  More work needs to be done.
  * pairwise.t.test() misbehaved when subgroups had 0 DF for
    variance, even with pool.sd = TRUE.  (PR#18594 by Jack Berry).
  * Probability distribution functions [dpq]&lt;distrib&gt;(x, *), but also
    bessel[IKJY](x, .) now consistently preserve attributes(x) when
    length(x) == 0, e.g., for a 2 x 0 matrix, thanks to Karolis
    Koncevičius' report PR#18509.
  * Group "Summary" computations such as sum(1:3, 4, na.rm = 5, NA,
    7, na.rm = LL) now give an error instead of either 17 or NN for
    LL true or false, as proposed by Ivan Krylov on the R-devel
    mailing list.  (This also means it is now an error to specify
    na.rm more than once.)
  * as.complex(x) now returns complex(real = x, imaginary = 0) for
    _all_ numerical and logical x, notably also for NA or
    NA_integer_.
  * Directories are now omitted by file.copy(, recursive = FALSE) and
    in file.append() (PR#17337).
  * gsub() and sub() are now more robust to integer overflow when
    reporting errors caused by too large input strings (PR#18346).
  * Top-level handlers are now more robust to attempts to remove a
    handler whilst handlers are running (PR#18508).
  * The handling of Alt+F4 in dialogs created on Windows using
    GraphApp has been fixed (PR#13870).
  * density() more consistently computes grid values for the
    FFT-based convolution, following Robert Schlicht's analysis and
    proposal in PR#18337, correcting density values typically by a
    factor of about 0.999.  Argument old.coords = TRUE provides back
    compatibility.
  * palette.colors() gains a name argument that defaults to FALSE
    controlling whether the vector of colours that is returned has
    names (where possible).  PR#18529.
  * tools::xgettext() no longer extracts the (non-translatable) class
    names from warningCondition and errorCondition calls.
  * S3method(&lt;gen&gt;, &lt;class&gt;, &lt;func&gt;) in the NAMESPACE file now works
    (again) when &lt;func&gt; is visible from the namespace, e.g.,
    imported, or in base.
  * getParseData(f) now also works for a function defined in the
    first of several &lt;pkg&gt;/R/*.R source files, thanks to Kirill
    Müller's report and Duncan Murdoch's patch in PR#16756.
  * Rd \Sexpr macros with nested #ifdef conditionals were not
    processed.
  * A non-blocking connection with non-default encoding (such as a
    socket) now correctly returns from readLines() after new data has
    arrived also when its EOF had been reached previously.  Thanks to
    Peter Meilstrup's report on R-devel and Ivan Krylov's report and
    patch proposal in PR#18555.
  * tools::checkRdContents() failed to detect empty argument
    descriptions when they spanned multiple lines, including those
    generated by prompt().  These cases are now noted by R CMD check.
  * Plain-text help no longer outputs spurious colons in the
    arguments list (for multi-line \item labels in the Rd source).
  * kappa() and rcond() work correctly in more cases; kappa(., norm =
    "2") now warns that it computes the 1-norm with (default) exact =
    FALSE; prompted by Mikael Jagan's quite comprehensive PR#18543.
  * Rd skeletons generated by prompt() or promptData() now use a
    dummy title (so R CMD build works).  tools::checkRdContents() has
    been updated to detect such template leftovers, including from
    promptPackage().
  * When S4 method dispatch fails because no method was found, the
    error message now includes the signature argument names; thanks
    to Michael Chirico's proposal on the R-devel list.
  * withAutoprint({ .. }) now preserves srcrefs previously lost,
    thanks to Andrew Simmons' report plus fix in PR#18572.
  * transform.data.frame() no longer adjusts names; in particular,
    untransformed variables are kept as-is, including those with
    syntactically invalid names (PR#17890).
  * The keep.source option for Rd \Sexpr blocks is no longer ignored.
  * The formula methods for t.test() and wilcox.test() now catch when
    paired is passed, addressing PR#14359; use Pair(x1, x2) ~ 1 for a
    paired test.
  * The level reported in the browser prompt was often too large. It
    now shows the number of browser contexts on the stack.
  * For cbind() and rbind(), the optional deparse.level argument is
    now properly passed to methods, thanks to Mikael Jagan's PR#18579
    and comments there.
  * Some error and warning messages for large ('long vector')
    matrix(v, nr, nc) and dim(m) &lt;- d are now correct about sizes,
    using long long formatting, fixing PR#18612 (and more) reported
    by Mikael Jagan.
  * readChar(useBytes = TRUE) now terminates strings even when the
    underlying connection uses extra spaces in the input buffer.
    This fixes problems with extra garbage seen with gzip
    connections, PR#18605.
  * Named capture in PCRE regular expressions now works also with
    more than 127 named groups (PR#18588).
  * Datetime functions are now robust against long jumps when dealing
    with internal time zone changes.  This avoids confusing warnings
    about an invalid time zone, previously triggered by turning
    warnings into errors or handling them via tryCatch (PR#17966,
    PR#17780).
  * Datetime functions now restore even an empty TZ environment
    variable after internal time zone changes (PR#17724).  This makes
    results of datetime functions with this (typically unintentional)
    setting more predictable.
  * drop.terms(*) now drops response as by default, keep.response =
    FALSE, fixing PR#18564 thanks to Mikael Jagan.
  * dummy.coef(.) now also works for lm()-models with character
    categorical predictor variables rather than factor ones, fixing
    PR#18635 reported by Jinsong Zhao.
  * formals(f) &lt;- formals(f) now also works for a function w/o
    arguments and atomic _constant_ body(f).
  * Correct as.function(&lt;invalid list&gt;, .)'s error message.
  * removeSource() is yet more thorough in finding and removing
    "srcref" and the other source references from parsed R language
    chunks, fixing PR#18638 thanks to Andrew Simmons.
  * dgeom() is more accurate now, notably when its result is very
    small, fixing PR#18642 thanks to the proposal of Morten Welinder,
    also improving other instances where C level binom_raw(x, n, ..)
    has x == 0 or x== n.
  * warning() with options(warn = 1) has improved output for
    multi-line messages.
  * axis.Date() and axis.POSIXct() now respect the par("lab") setting
    for the number of pretty() intervals.
  * Comparisons for language objects (which are based on deparsing)
    are now more careful about using accurate deparsed results
    (PR#18676).
  * Plain-text help (Rd2txt) now correctly preserves blank lines
    following single-line \dontrun code.
  * &lt;POSIXlt&gt;[*] no longer sets wrong "balanced" attribute, fixing
    PR#18681 thanks to Mikael Jagan.
  * str(&lt;classed-call&gt;) now deparses the call as expected, fixing
    PR#18684, reported by Dave Slager.
  * In Rd examples, code following the closing brace of a \dontrun,
    \dontshow or \donttest tag on the same line is no longer skipped
    when R CMD check runs the examples.
  * as.data.frame(matrix(*, ncol=0)) now gets valid names() and
    colnames(); reported by Davis Vaughan on the R-devel list.
  * Internal Mathlib function stirlerr(n) is now almost fully
    (52-bit) accurate for all n &gt;= ~5.9 and more accurate also in the
    range 1 -- 5.9.  This entails small ("after 12th decimal")
    changes in density functions, e.g., dgamma() in _some_ regions of
    their support.  The fix was partly prompted by Morten Welinder's
    PR#18640.
  * Numbers like 9876543.2 are now considered non-integer by Mathlib
    internal R_nonint(), amending original fix of PR#15734.
  * Rd comment lines no longer cause broken paragraphs in the
    rendered PDF and plain-text help. In code blocks, pure comment
    lines (starting with %) no longer produce an empty line.
  * xtabs(Freq ~ .) now consistently defaults to na.action = na.pass,
    using na.rm = FALSE (added as an argument) when summing over Freq
    (PR#17770).
  * tools::testInstalledPackage() is no longer silent about failures
    from running examples or tests and its return code no longer
    ignores failures from checking vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1718366400">- CHANGES IN R 4.4.1:
  C-LEVEL FACILITIES:
  * Functions R_atof and R_strtod declared in header R_ext/Utils.h
    are now documented in 'Writing R Extensions' and so formally part
    of the API.
  * The non-API entry points Rf_setSVector, Rf_StringFalse,
    Rf_StringTrue and Rf_isBlankString have been added to those
    reported by R CMD check.
  * The new function Rf_allocLang is now available. This provides an
    alternative to the idiom of calling Rf_allocList followed by
    SET_TYPEOF.
  UTILITIES:
  * R CMD check now reports as warnings what gfortran calls 'Fortran
    2018 deleted features', all of which have long been marked as
    'obsolescent' and some of which were deleted in Fortran 2008 or
    earlier.  Fortran compilers are no longer required to support
    these.
  BUG FIXES:
  * as.numeric(), scan(), type.convert() and other places which use
    the internal C function R_strtod now require a _non-empty_ digit
    sequence in a decimal or binary exponent.  This aligns with the
    C/POSIX standard for strtod and with ?NumericConstants.
  * as.data.frame(m, make.names=NA) now works correctly for a matrix
    m with NA's in row names.
  * The error message from &lt;POSIXlt&gt;[["hour"]] and similar now
    mentions *[[, "hour"]], as wished for in PR#17409 and proposed by
    Michael Chirico.
  * qbinom() and potentially qpois(), qnbinom(), no longer sometimes
    fail accurate inversion (of pbinom(), etc), thanks to Christopher
    Chang's report and patch in PR#18711.
  * The internal help server on Windows can again serve requests sent
    in quick succession, fixing a regression in R 4.4.0.
  * debugcall(&lt;S3Generic&gt;()) now also works when a corresponding
    S4-generic version is in the methods cache (PR#18143).
  * Package tools' toTitleCase(ch0) now returns character(0) when ch0
    is of zero length; fixing PR#18724, reported by David Hugh Jones.
  * R CMD check is no longer broken (without a check result and no
    explanation in 00check.log) for a package which declares an
    invalid VignetteBuilder in DESCRIPTION but has no vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1730376000">- CHANGES IN R 4.4.2:
  C-LEVEL FACILITIES:
  * The S-compatibility macros F77_COM and F77_COMDECL defined in
    header R_ext/RS.h are deprecated and will be removed shortly.  We
    could find no record of their use.
  BUG FIXES:
  * Mathlib function lgammacor(x) no longer warns about underflow to
    zero for large x.
  * Text widths and heights were incorrectly reported by the Quartz
    device if the drawing context didn't exist yet (typically when
    drawing off-screen to a window that is yet to appear, see
    PR#18591).
  * The Quartz device could segfault in cases where paths with spaces
    are used in the new glyph drawing API.  Thanks to Tomek
    Gieorgijewski (PR#18758).
  * On macOS in R CRAN builds, it is again possible to read
    little-endian UTF-16 text with a BOM from a connection using
    encoding="UTF-16".  Users building R from source should avoid
    using the system libiconv in macOS 14.1 and later.
  * methods' internal .requirePackage() now re-enables primitive
    method dispatch when needed; thanks to Ivan Krylov for
    demystifying CRAN package check failures on the R-devel mailing
    list.</changelog>
</package>
<package pkgid="ac5b745de0ce791bae9a7044076ce0afd1e3049ae3d42e5edc53d0469d289cdf0a6883e3bc0e357074081a10eae08689736d08e1a9a9b8711b2b3dbdc5a927c1" name="R-foreign-debuginfo" arch="i586">
  <version epoch="0" ver="0.8.87" rel="51.0.2.2.sr20241103"/>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1620302400">- To get in sync with d:l:R:autoCRAN the Matrix package's split
  in -devel was reversed.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339200">- improved spec file according to comments of dimstar in
  https://build.opensuse.org/request/show/892685</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339201">- CHANGES IN R 4.1.0:
  FUTURE DIRECTIONS:
  * It is planned that the 4.1.x series will be the last to support
    32-bit Windows, with production of binary packages for that
    series continuing until early 2023.
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Data set esoph in package datasets now provides the correct
    numbers of controls; previously it had the numbers of cases added
    to these.  (Reported by Alexander Fowler in PR#17964.)
  NEW FEATURES:
  * www.omegahat.net is no longer one of the repositories known by
    default to setRepositories().  (Nowadays it only provides source
    packages and is often unavailable.)
  * Function package_dependencies() (in package tools) can now use
    different dependency types for direct and recursive dependencies.
  * The checking of the size of tarball in R CMD check --as-cran
    &lt;pkg&gt; may be tweaked via the new environment variable
    _R_CHECK_CRAN_INCOMING_TARBALL_THRESHOLD_, as suggested in
    PR#17777 by Jan Gorecki.
  * Using c() to combine a factor with other factors now gives a
    factor, an ordered factor when combining ordered factors with
    identical levels.
  * apply() gains a simplify argument to allow disabling of
    simplification of results.
  * The format() method for class "ftable" gets a new option justify.
    (Suggested by Thomas Soeiro.)
  * New ...names() utility.  (Proposed by Neal Fultz in PR#17705.)
  * type.convert() now warns when its as.is argument is not
    specified, as the help file always said it _should_.  In that
    case, the default is changed to TRUE in line with its change in
    read.table() (related to stringsAsFactor) in R 4.0.0.
  * When printing list arrays, classed objects are now shown _via_
    their format() value if this is a short enough character string,
    or by giving the first elements of their class vector and their
    length.
  * capabilities() gets new entry "Rprof" which is TRUE when R has
    been configured with the equivalent of --enable-R-profiling (as
    it is by default).  (Related to Michael Orlitzky's report
    PR#17836.)
  * str(xS4) now also shows extraneous attributes of an S4 object
    xS4.
  * Rudimentary support for vi-style tags in rtags() and R CMD rtags
    has been added.  (Based on a patch from Neal Fultz in PR#17214.)
  * checkRdContents() is now exported from tools; it and also
    checkDocFiles() have a new option chkInternal allowing to check
    Rd files marked with keyword "internal" as well.  The latter can
    be activated for R CMD check via environment variable
    _R_CHECK_RD_INTERNAL_TOO_.
  * New functions numToBits() and numToInts() extend the raw
    conversion utilities to (double precision) numeric.
  * Functions URLencode() and URLdecode() in package utils now work
    on vectors of URIs.  (Based on patch from Bob Rudis submitted
    with PR#17873.)
  * path.expand() can expand ~user on most Unix-alikes even when
    readline is not in use.  It tries harder to expand ~, for example
    should environment variable HOME be unset.
  * For HTML help (both dynamic and static), Rd file links to help
    pages in external packages are now treated as references to
    topics rather than file names, and fall back to a file link only
    if the topic is not found in the target package. The earlier rule
    which prioritized file names over topics can be restored by
    setting the environment variable _R_HELP_LINKS_TO_TOPICS_ to a
    false value.
  * c() now removes NULL arguments before dispatching to methods,
    thus simplifying the implementation of c() methods, _but_ for
    back compatibility keeps NULL when it is the first argument.
    (From a report and patch proposal by Lionel Henry in PR#17900.)
  * Vectorize()'s result function's environment no longer keeps
    unneeded objects.
  * Function ...elt() now propagates visibility consistently with
    ..n.  (Thanks to Lionel Henry's PR#17905.)
  * capture.output() no longer uses non-standard evaluation to
    evaluate its arguments.  This makes evaluation of functions like
    parent.frame() more consistent.  (Thanks to Lionel Henry's
    PR#17907.)
  * packBits(bits, type="double") now works as inverse of
    numToBits().  (Thanks to Bill Dunlap's proposal in PR#17914.)
  * curlGetHeaders() has two new arguments, timeout to specify the
    timeout for that call (overriding getOption("timeout")) and TLS
    to specify the minimum TLS protocol version to be used for
    https:// URIs (_inter alia_ providing a means to check for sites
    using deprecated TLS versions 1.0 and 1.1).
  * For nls(), an optional constant scaleOffset may be added to the
    denominator of the relative offset convergence test for cases
    where the fit of a model is expected to be exact, thanks to a
    proposal by John Nash.  nls(*, trace=TRUE) now also shows the
    convergence criterion.
  * Numeric differentiation _via_ numericDeriv() gets new optional
    arguments eps and central, the latter for taking central divided
    differences.  The latter can be activated for nls() via
    nls.control(nDcentral = TRUE).
  * nls() now passes the trace and control arguments to getInitial(),
    notably for all self-starting models, so these can also be fit in
    zero-noise situations via a scaleOffset.  For this reason, the
    initial function of a selfStart model must now have ... in its
    argument list.
  * bquote(splice = TRUE) can now splice expression vectors with
    attributes: this makes it possible to splice the result of
    parse(keep.source = TRUE).  (Report and patch provided by Lionel
    Henry in PR#17869.)
  * textConnection() gets an optional name argument.
  * get(), exists(), and get0() now signal an error if the first
    argument has length greater than 1.  Previously additional
    elements were silently ignored.  (Suggested by Antoine Fabri on
    R-devel.)
  * R now provides a shorthand notation for creating functions, e.g.
    \(x) x + 1 is parsed as function(x) x + 1.
  * R now provides a simple native forward pipe syntax |&gt;.  The
    simple form of the forward pipe inserts the left-hand side as the
    first argument in the right-hand side call.  The pipe
    implementation as a syntax transformation was motivated by
    suggestions from Jim Hester and Lionel Henry.
  * all.equal(f, g) for functions now by default also compares their
    environment(.)s, notably via new all.equal method for class
    function.  Comparison of nls() fits, e.g., may now need
    all.equal(m1, m2, check.environment = FALSE).
  * .libPaths() gets a new option include.site, allowing to _not_
    include the site library.  (Thanks to Dario Strbenac's suggestion
    and Gabe Becker's PR#18016.)
  * Lithuanian translations are now available.  (Thanks to Rimantas
    Zakauskas.)
  * names() now works for DOTSXP objects.  On the other hand, in
    R-lang, the R language manual, we now warn against relying on the
    structure or even existence of such dot-dot-dot objects.
  * all.equal() no longer gives an error on DOTSXP objects.
  * capabilities("cairo") now applies only to the file-based devices
    as it is now possible (if very unusual) to build R with Cairo
    support for those but not for X11().
  * There is optional support for tracing the progress of
    loadNamespace() - see its help.
  * (Not Windows.)  l10n_info() reports an additional element, the
    name of the encoding as reported by the OS (which may differ from
    the encoding part (if any) of the result from
    Sys.getlocale("LC_CTYPE").
  * New function gregexec() which generalizes regexec() to find _all_
    disjoint matches and well as all substrings corresponding to
    parenthesized subexpressions of the given regular expression.
    (Contributed by Brodie Gaslam.)
  * New function charClass() in package utils to query the
    wide-character classification functions in use (such as
    iswprint).
  * The names of quantile()'s result no longer depend on the global
    getOption("digits"), but quantile() gets a new optional argument
    digits = 7 instead.
  * grep(), sub(), regexp and variants work considerably faster for
    long factors with few levels.  (Thanks to Michael Chirico's
    PR#18063.)
  * Provide grouping of x11() graphics windows within a window
    manager such as Gnome or Unity; thanks to a patch by Ivan Krylov
    posted to R-devel.
  * The split() method for class data.frame now allows the f argument
    to be specified as a formula.
  * sprintf now warns on arguments unused by the format string.
  * New palettes "Rocket" and "Mako" for hcl.colors() (approximating
    palettes of the same name from the 'viridisLite' package).
    Contributed by Achim Zeileis.
  * The base environment and its namespace are now locked (so one can
    no longer add bindings to these or remove from these).
  * Rterm handling of multi-byte characters has been improved,
    allowing use of such characters when supported by the current
    locale.
  * Rterm now accepts ALT+ +xxxxxxxx sequences to enter Unicode
    characters as hex digits.
  * Environment variable LC_ALL on Windows now takes precedence over
    LC_CTYPE and variables for other supported categories, matching
    the POSIX behaviour.
  * duplicated() and anyDuplicated() are now optimized for integer
    and real vectors that are known to be sorted via the ALTREP
    framework. Contributed by Gabriel Becker via PR#17993.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 14
    and so packages that provide graphics devices should be
    reinstalled.
  * Graphics devices should now specify deviceVersion to indicate
    what version of the graphics engine they support.
  * Graphics devices can now specify deviceClip.  If TRUE, the
    graphics engine will never perform any clipping of output itself.
    The clipping that the graphics engine does perform (for both
    canClip = TRUE and canClip = FALSE) has been improved to avoid
    producing unnecessary artifacts in clipped output.
  * The grid package now allows gpar(fill) to be a linearGradient(),
    a radialGradient(), or a pattern().  The viewport(clip) can now
    also be a grob, which defines a clipping path, and there is a new
    viewport(mask) that can also be a grob, which defines a mask.
    These new features are only supported so far on the Cairo-based
    graphics devices and on the pdf() device.
  * (Not Windows.)  A warning is given when a Cairo-based type is
    specified for a png(), jpeg(), tiff() or bmp() device but Cairo
    is unsupported (so type = "Xlib" is tried instead).
  * grSoftVersion() now reports the versions of FreeType and
    FontConfig if they are used directly (not _via_ Pango), as is
    most commonly done on macOS.
  C-LEVEL FACILITIES:
  * The _standalone_ libRmath math library and R's C API now provide
    log1pexp() again as documented, and gain log1mexp().
  INSTALLATION on a UNIX-ALIKE:
  * configure checks for a program pkgconf if program pkg-config is
    not found.  These are now only looked for on the path (like
    almost all other programs) so if needed specify a full path to
    the command in PKG_CONFIG, for example in file config.site.
  * C99 function iswblank is required - it was last seen missing ca
    2003 so the workaround has been removed.
  * There are new configure options --with-internal-iswxxxxx,
  - -with-internal-towlower and --with-internal-wcwidth which allows
    the system functions for wide-character classification,
    case-switching and width (wcwidth and wcswidth) to be replaced by
    internal ones.  The first has long been used on macOS, AIX (and
    Windows) but this enables it to be unselected there and selected
    for other platforms (it is the new default on Solaris).  The
    second is new in this version of R and is selected by default on
    macOS and Solaris.  The third has long been the default and
    remains so as it contains customizations for East Asian
    languages.
    System versions of these functions are often minimally
    implemented (sometimes only for ASCII characters) and may not
    cover the full range of Unicode points: for example Solaris (and
    Windows) only cover the Basic Multilingual Plane.
  * Cairo installations without X11 are more likely to be detected by
    configure, when the file-based Cairo graphics devices will be
    available but not X11(type = "cairo").
  * There is a new configure option --with-static-cairo which is the
    default on macOS.  This should be used when only static cairo
    (and where relevant, Pango) libraries are available.
  * Cairo-based graphics devices on platforms without Pango but with
    FreeType/FontConfig will make use of the latter for font
    selection.
  LINK-TIME OPTIMIZATION on a UNIX-ALIKE:
  * Configuring with flag --enable-lto=R now also uses LTO when
    installing the recommended packages.
  * R CMD INSTALL and R CMD SHLIB have a new flag --use-LTO to use
    LTO when compiling code, for use with R configured with
  - -enable-lto=R.  For R configured with --enable-lto, they have
    the new flag --no-use-LTO.
    Packages can opt in or out of LTO compilation _via_ a UseLTO
    field in the DESCRIPTION file.  (As usual this can be overridden
    by the command-line flags.)
  BUILDING R on Windows:
  * for GCC &gt;= 8, FC_LEN_T is defined in config.h and hence character
    lengths are passed from C to Fortran in _inter alia_ BLAS and
    LAPACK calls.
  * There is a new text file src/gnuwin32/README.compilation, which
    outlines how C/Fortran code compilation is organized and
    documents new features:
  * R can be built with Link-Time Optimization with a suitable
    compiler - doing so with GCC 9.2 showed several
    inconsistencies which have been corrected.
  * There is support for cross-compiling the C and Fortran code
    in R and standard packages on suitable (Linux) platforms.
    This is mainly intended to allow developers to test later
    versions of compilers - for example using GCC 9.2 or 10.x has
    detected issues that GCC 8.3 in Rtools40 does not.
  * There is experimental support for cross-building R packages
    with C, C++ and/or Fortran code.
  * The R installer can now be optionally built to support a single
    architecture (only 64-bit or only 32-bit).
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++14 where
    available (which it is on all currently checked platforms): if
    not (as before) C++11 is used if available otherwise C++ is not
    supported.
    Packages which specify C++11 will still be installed using C++11.
    C++14 compilers may give deprecation warnings, most often for
    std::random_shuffle (deprecated in C++14 and removed in C++17).
    Either specify C++11 (see 'Writing R Extensions') or modernize
    the code and if needed specify C++14.  The latter has been
    supported since R 3.4.0 so the package's DESCRIPTION would need
    to include something like
    Depends: R (&gt;= 3.4)
  PACKAGE INSTALLATION on Windows:
  * R CMD INSTALL and R CMD SHLIB make use of their flag --use-LTO
    when the LTO_OPT make macro is set in file etc/${R_ARCH}/Makeconf
    or in a personal/site Makevars file.  (For details see 'Writing R
    Extensions' SS4.5.)
    This provides a valuable check on code consistency.  It does work
    with GCC 8.3 as in Rtools40, but that does not detect everything
    the CRAN checks with current GCC do.
  PACKAGE INSTALLATION on macOS:
  * The default personal library directory on builds with
  - -enable-aqua (including CRAN builds) now differs by CPU type,
    one of
    ~/Library/R/x86_64/x.y/library
    ~/Library/R/arm64/x.y/library
    This uses the CPU type R (and hence the packages) were built for,
    so when a x86_64 build of R is run under Rosetta emulation on an
    arm64 Mac, the first is used.
  UTILITIES:
  * R CMD check can now scan package functions for bogus return
    statements, which were possibly intended as return() calls (wish
    of PR#17180, patch by Sebastian Meyer). This check can be
    activated via the new environment variable
    _R_CHECK_BOGUS_RETURN_, true for --as-cran.
  * R CMD build omits tarballs and binaries of previous builds from
    the top-level package directory.  (PR#17828, patch by Sebastian
    Meyer.)
  * R CMD check now runs sanity checks on the use of LazyData, for
    example that a data directory is present and that
    LazyDataCompression is not specified without LazyData and has a
    documented value.  For packages with large LazyData databases
    without specifying LazyDataCompression, there is a reference to
    the code given in 'Writing R Extensions' SS1.1.6 to test the
    choice of compression (as in all the CRAN packages tested a
    non-default method was preferred).
  * R CMD build removes LazyData and LazyDataCompression fields from
    the DESCRIPTION file of packages without a data directory.
  ENCODING-RELATED CHANGES:
  * The parser now treats \Unnnnnnnn escapes larger than the upper
    limit for Unicode points (\U10FFFF) as an error as they cannot be
    represented by valid UTF-8.
    Where such escapes are used for outputting non-printable
    (including unassigned) characters, 6 hex digits are used (rather
    than 8 with leading zeros).  For clarity, braces are used, for
    example \U{0effff}.
  * The parser now looks for non-ASCII spaces on Solaris (as
    previously on most other OSes).
  * There are warnings (including from the parser) on the use of
    unpaired surrogate Unicode points such as \uD834.  (These cannot
    be converted to valid UTF-8.)
  * Functions nchar(), tolower(), toupper() and chartr() and those
    using regular expressions have more support for inputs with a
    marked Latin-1 encoding.
  * The character-classification functions used (by default) to
    replace the system iswxxxxx functions on Windows, macOS and AIX
    have been updated to Unicode 13.0.0.
    The character-width tables have been updated to include new
    assignments in Unicode 13.0.0.
  * The code for evaluating default (extended) regular expressions
    now uses the same character-classification functions as the rest
    of R (previously they differed on Windows, macOS and AIX).
  * There is a build-time option to replace the system's
    wide-character wctrans C function by tables shipped with R: use
    configure option --with-internal-towlower or (on Windows)
  - DUSE_RI18N_CASE in CFLAGS when building R.  This may be needed
    to allow tolower() and toupper() to work with Unicode characters
    beyond the Basic Multilingual Plane where not supported by system
    functions (e.g. on Solaris where it is the new default).
  * R is more careful when truncating UTF-8 and other multi-byte
    strings that are too long to be printed, passed to the system or
    libraries or placed into an internal buffer.  Truncation will no
    longer produce incomplete multibyte characters.
  DEPRECATED AND DEFUNCT:
  * Function plclust() from the package stats and
    package.dependencies(), pkgDepends(), getDepList(),
    installFoundDepends(), and vignetteDepends() from package tools
    are defunct.
  * Defunct functions checkNEWS() and readNEWS() from package tools
    and CRAN.packages() from utils have been removed.
  * R CMD config CXXCPP is defunct (it was deprecated in R 3.6.2).
  * parallel::detectCores() drops support for Irix (retired in 2013).
  * The LINPACK argument to chol.default(), chol2inv(),
    solve.default() and svd() has been defunct since R 3.1.0.  It was
    silently ignored up to R 4.0.3 but now gives an error.
  * Subsetting/indexing, such as ddd[*] or ddd$x on a DOTSXP
    (dot-dot-dot) object ddd has been disabled; it worked by accident
    only and was undocumented.
  BUG FIXES:
  * Many more C-level allocations (mainly by malloc and strdup) are
    checked for success with suitable alternative actions.
  * Bug fix for replayPlot(); this was turning off graphics engine
    display list recording if a recorded plot was replayed in the
    same session.  The impact of the bug became visible if resize the
    device after replay OR if attempted another savePlot() after
    replay (empty display list means empty screen on resize or empty
    saved plot).
  * R CMD check etc now warn when a package exports non-existing S4
    classes or methods, also in case of no "methods" presence.
    (Reported by Alex Bertram; reproducible example and patch by
    Sebastian Meyer in PR#16662.)
  * boxplot() now also accepts calls for labels such as ylab, the
    same as plot().  (Reported by Marius Hofert.)
  * The help page for xtabs() now correctly states that addNA is
    setting na.action = na.pass among others.  (Reported as PR#17770
    by Thomas Soeiro.)
  * The R CMD check &lt;pkg&gt; gives a longer and more comprehensible
    message when DESCRIPTION misses dependencies, e.g., in Imports:.
    (Thanks to the contributors of PR#17179.)
  * update.default() now calls the generic update() on the formula to
    work correctly for models with extended formulas.  (As reported
    and suggested by Neal Fultz in PR#17865.)
  * The horizontal position of leaves in a dendrogram is now correct
    also with center = FALSE.  (PR#14938, patch from Sebastian
    Meyer.)
  * all.equal.POSIXt() no longer warns about and subsequently ignores
    inconsistent "tzone" attributes, but describes the difference in
    its return value (PR#17277).  This check can be disabled _via_
    the new argument check.tzone = FALSE as suggested by Sebastian
    Meyer.
  * as.POSIXct() now populates the "tzone" attribute from its tz
    argument when x is a logical vector consisting entirely of NA
    values.
  * x[[2^31]] &lt;- v now works.  (Thanks to the report and patch by
    Suharto Anggono in PR#17330.)
  * In log-scale graphics, axis() ticks and label positions are now
    computed more carefully and symmetrically in their range,
    typically providing _more_ ticks, fulfilling wishes in PR#17936.
    The change really corresponds to an improved axisTicks() (package
    grDevices), potentially influencing grid and lattice, for
    example.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now correct to at
    least five digits where it was catastrophically wrong,
    previously.
  * sum(df) and similar "Summary"- and "Math"-group member functions
    now work for data frames df with logical columns, notably also of
    zero rows.  (Reported to R-devel by Martin "b706".)
  * unsplit() had trouble with tibbles due to unsound use of rep(NA,
    len)-indexing, which should use NA_integer_ (Reported to R-devel
    by Mario Annau.)
  * pnorm(x, log.p = TRUE) underflows to -Inf slightly later.
  * show(&lt;hidden S4 generic&gt;) prints better and without quotes for
    non-hidden S4 generics.
  * read.table() and relatives treated an "NA" column name as missing
    when check.names = FALSE PR#18007.
  * Parsing strings containing UTF-16 surrogate pairs such as
    "\uD834\uDD1E" works better on some (uncommon) platforms.
    sprintf("%X", utf8ToInt("\uD834\uDD1E")) should now give "1D11E"
    on all platforms.
  * identical(x,y) is no longer true for differing DOTSXP objects,
    fixing PR#18032.
  * str() now works correctly for DOTSXP and related exotics, even
    when these are doomed.
    Additionally, it no longer fails for lists with a class and
    "irregular" method definitions such that e.g. lapply(*) will
    necessarily fail, as currently for different igraph objects.
  * Too long lines in environment files (e.g. Renviron) no longer
    crash R. This limit has been increased to 100,000 bytes.
    (PR#18001.)
  * There is a further workaround for FreeType giving incorrect
    italic font faces with cairo-based graphics devices on macOS.
  * add_datalist(*, force = TRUE) (from package tools) now actually
    updates an existing data/datalist file for new content.  (Thanks
    to a report and patch by Sebastian Meyer in PR#18048.)
  * cut.Date() and cut.POSIXt() could produce an empty last interval
    for breaks = "months" or breaks = "years".  (Reported as PR#18053
    by Christopher Carbone.)
  * Detection of the encoding of 'regular' macOS locales such as
    en_US (which is UTF-8) had been broken by a macOS change:
    fortunately these are now rarely used with en_US.UTF-8 being
    preferred.
  * sub() and gsub(pattern, repl, x, *) now keep attributes of x such
    as names() also when pattern is NA (PR#18079).
  * Time differences ("difftime" objects) get a replacement and a
    rep() method to keep "units" consistent.  (Thanks to a report and
    patch by Nicolas Bennett in PR#18066.)
  * The \RdOpts macro, setting defaults for \Sexpr options in an Rd
    file, had been ineffective since R 2.12.0: it now works again.
    (Thanks to a report and patch by Sebastian Meyer in PR#18073.)
  * mclapply and pvec no longer accidentally terminate parallel
    processes started before by mcparallel or related calls in
    package parallel (PR#18078).
  * grep and other functions for evaluating (extended) regular
    expressions handle in Unicode also strings not explicitly flagged
    UTF-8, but flagged native when running in UTF-8 locale.
  * Fixed a crash in fifo implementation on Windows (PR#18031).
  * Binary mode in fifo on Windows is now properly detected from
    argument open (PR#15600, PR#18031).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1622808000">- The line %{__install} -m 755 -d %{_infodir}
  no longer works in TW or Factory.
  But without that line it works everywhere. So this instruction
  was commented out of the spec file.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1628596800">- CHANGES IN R 4.1.1:
  NEW FEATURES:
  * require(pkg, quietly = TRUE) is quieter and in particular does
    not warn if the package is not found.
  DEPRECATED AND DEFUNCT:
  * Use of ftp:// URIs should be regarded as deprecated, with
    on-going support confined to method = "libcurl" and not routinely
    tested.  (Nowadays no major browser supports them.)
  * The non-default method = "internal" is deprecated for http:// and
    ftp:// URIs for both download.file and url.
  * On Windows, method = "wininet" is deprecated for http://,
    https:// and ftp:// URIs for both download.file and url.  (A
    warning is only given for ftp://.)
    For ftp:// URIs the default method is now "libcurl" if available
    (which it is on CRAN builds).
    method = "wininet" remains the default for http:// and https://
    URIs but if libcurl is available, using method = "libcurl" is
    preferred.
  INSTALLATION:
  * make check now works also without a LaTeX installation.  (Thanks
    to Sebastian Meyer's PR#18103.)
  BUG FIXES:
  * make check-devel works again in an R build configured with
  - -without-recommended-packages.
  * qnbinom(p, size, mu) for large size/mu is correct now in a range
    of cases (PR#18095); similarly for the (size, prob)
    parametrization of the negative binomial.  Also qpois() and
    qbinom() are better and or faster for extreme cases.  The
    underlying C code has been modularized and is common to all four
    cases of discrete distributions.
  * gap.axis is now part of the axis() arguments which are passed
    from bxp(), and hence boxplot().  (Thanks to Martin Smith's
    report and suggestions in PR#18109.)
  * .First and .Last can again be set from the site profile.
  * seq.int(from, to, *) and seq.default(..) now work better in large
    range cases where from-to is infinite where the two boundaries
    are finite.
  * all.equal(x,y) now returns TRUE correctly also when several
    entries of abs(x) and abs(y) are close to .Machine$double.xmax,
    the largest finite numeric.
  * model.frame() now clears the object bit when removing the class
    attribute of a value via na.action (PR#18100).
  * charClass() now works with multi-character strings on Windows
    (PR#18104, fixed by Bill Dunlap).
  * encodeString() on Solaris now works again in Latin-1 encoding on
    characters represented differently in UTF-8.  Support for
    surrogate pairs on Solaris has been improved.
  * file.show() on Windows now works with non-ASCII path names
    representable in the current native encoding (PR#18132).
  * Embedded R on Windows can now find R home directory via the
    registry even when installed only for the current user
    (PR#18135).
  * pretty(x) with finite x now returns finite values also in the
    case where the extreme x values are close in size to the maximal
    representable number .Machine$double.xmax.
    Also, it's been tweaked for very small ranges and when a boundary
    is close (or equal) to zero; e.g., pretty(c(0,1e-317)) no longer
    has negative numbers, currently still warning about a very small
    range, and pretty(2^-(1024 - 2^-1/(c(24,10)))) is more accurate.
  * The error message for not finding vignette files when weaving has
    correct file sizes now. (Thanks to Sebastian Meyer's PR#18154.)
  * dnbinom(20, &lt;large&gt;, 1) now correctly gives 0, and similar cases
    are more accurate with underflow precaution.  (Reported by Francisco Vera Alcivar in PR#18072.)</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635163200">- repaired https://bugzilla.suse.com/show_bug.cgi?id=1191380
  (rpmacros now go to rpmmacrodir)
- minor clean-ups in spec file</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635768000">- CHANGES IN R 4.1.2:
  C-LEVEL FACILITIES:
  * The workaround in headers R.h and Rmath.h (using namespace std;)
    for the Oracle Developer Studio compiler is no longer needed now
    C++11 is required so has been removed.  A couple more usages of
    log() (which should have been std::log()) with an int argument
    are reported on Solaris.
  * The undocumented limit of 4095 bytes on messages from the
    S-compatibility macros PROBLEM and MESSAGE is now documented and
    longer messages will be silently truncated rather than
    potentially causing segfaults.
  * If the R_NO_SEGV_HANDLER environment variable is non-empty, the
    signal handler for SEGV/ILL/BUS signals (which offers recovery
    user interface) is not set. This allows more reliable debugging
    of crashes that involve the console.
  DEPRECATED AND DEFUNCT:
  * The legacy S-compatibility macros PROBLEM, MESSAGE, ERROR, WARN,
    WARNING, RECOVER, ... are deprecated and will be hidden in R
    4.2.0. R's native interface of Rf_error and Rf_warning has long
    been preferred.
  BUG FIXES:
  * .mapply(F, dots, .) no longer segfaults when dots is not a list
    and uses match.fun(F) as always documented; reported by Andrew
    Simmons in PR#18164.
  * hist(&lt;Date&gt;, ...) and hist(&lt;POSIXt&gt;, ...)  no longer pass
    arguments for rect() (such as col and density) to axis().
    (Thanks to Sebastian Meyer's PR#18171.)
  * \Sexpr{ch} now preserves Encoding(ch). (Thanks to report and
    patch by Jeroen Ooms in PR#18152.)
  * Setting the RNG to "Marsaglia-Multicarry" e.g., by RNGkind(), now
    warns in more places, thanks to Andr'e Gillibert's report and
    patch in PR#18168.
  * gray(numeric(), alpha=1/2) no longer segfaults, fixing PR#18183,
    reported by Till Krenz.
  * Fixed dnbinom(x, size=&lt;very_small&gt;, .., log=TRUE) regression,
    reported by Martin Morgan.
  * as.Date.POSIXlt(x) now keeps names(x), thanks to Davis Vaughan's
    report and patch in PR#18188.
  * model.response() now strips an "AsIs" class typically, thanks to
    Duncan Murdoch's report and other discussants in PR#18190.
  * try() is considerably faster in case of an error and long call,
    as e.g., from some do.call().  Thanks to Alexander Kaever's
    suggestion posted to R-devel.
  * qqline(y = &lt;object&gt;) such as y=I(.), now works, see also
    PR#18190.
  * Non-integer mgp par() settings are now handled correctly in
    axis() and mtext(), thanks to Mikael Jagan and Duncan Murdoch's
    report and suggestion in PR#18194.
  * formatC(x) returns length zero character() now, rather than ""
    when x is of length zero, as documented, thanks to Davis
    Vaughan's post to R-devel.
  * removeSource(fn) now retains (other) attributes(fn).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1647000000">- CHANGES IN R 4.1.3:
  NEW FEATURES:
  * The default version of Bioconductor has been changed to 3.14.
    (This is used by setRepositories and the menus in GUIs.)
  UTILITIES:
  * R CMD check --as-cran has a workaround for a bug in versions of
    file up to at least 5.41 which mis-identify DBF files last
    changed in 2022 as executables.
  C-LEVEL FACILITIES:
  * The legacy S-compatibility macros SINGLE_* in R_ext/Constants.h
    (included by R.h) are deprecated and will be removed in R 4.2.0.
  BUG FIXES:
  * Initialization of self-starting nls() models with initialization
    functions following the pre-R-4.1.0 API (without the ...
    argument) works again for now, with a deprecation warning.
  * Fixed quoting of ~autodetect~ in Java setting defaults to avoid
    inadvertent user lookup due to leading ~, reported in PR#18231 by
    Harold Gutch.
  * substr(., start, stop) &lt;- v now treats _negative_ stop values
    correctly.  Reported with a patch in PR#18228 by Brodie Gaslam.
  * Subscripting an array x without dimnames by a
    length(dim(x))-column character matrix gave "random" non-sense,
    now an error; reported in PR#18244 by Mikael Jagan.
  * ...names() now matches names(list(...)) closely, fixing PR#18247.
  * all.equal(*, scale = s) now works as intended when length(s) &gt; 1,
    partly thanks to Michael Chirico's PR#18272.
  * print(x) for long vectors x now also works for named atomic
    vectors or lists and prints the correct number when reaching the
    getOption("max.print") limit; partly thanks to a report and
    proposal by Hugh Parsonage to the R-devel list.
  * all.equal(&lt;selfStart&gt;, *) no longer signals a deprecation
    warning.
  * reformulate(*, response=r) gives a helpful error message now when
    length(r) &gt; 1, thanks to Bill Dunlap's PR#18281.
  * Modifying globalCallingHandlers inside withCallingHandlers() now
    works or fails correctly, thanks to Henrik Bengtsson's PR#18257.
  * hist(&lt;Date&gt;, breaks = "days") and hist(&lt;POSIXt&gt;, breaks = "secs")
    no longer fail for inputs of length 1.
  * qbeta(.001, .9, .009) and similar cases now converge correctly
    thanks to Ben Bolker's report in PR#17746.
  * window(x, start, end) no longer wrongly signals "'start' cannot
    be after 'end'", fixing PR#17527 and PR#18291.
  * data() now checks that its (rarely used) list argument is a
    character vector - a couple of packages passed other types and
    gave incorrect results.
  * which() now checks its arr.ind argument is TRUE rather coercing
    to logical and taking the first element - which gave incorrect
    results in package code.
  * model.weights() and model.offset() more carefully extract their
    model components, thanks to Ben Bolker and Tim Taylor's R-devel
    post.
  * list.files(recursive = TRUE) now shows all broken symlinks
    (previously, some of them may have been omitted, PR#18296).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1650628800">- CHANGES IN R 4.2.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * The formula method of aggregate() now matches the generic in
    naming its first argument x (resolving PR#18299 by Thomas
    Soeiro).
    This means that calling aggregate() with a formula as a named
    first argument requires name formula in earlier versions of R and
    name x now, so portable code should not name the argument (code
    in many packages did).
  * Calling &amp;&amp; or || with either argument of length greater than one
    now gives a warning (which it is intended will become an error).
  * Calling if() or while() with a condition of length greater than
    one gives an error rather than a warning.  Consequently,
    environment variable _R_CHECK_LENGTH_1_CONDITION_ no longer has
    any effect.
  * Windows users should consult the WINDOWS section below for some
    profound changes including
  * Support for 32-bit builds has been dropped.
  * UTF-8 locales are used where available.
  * The default locations for the R installation and personal
    library folder have been changed.
    Thanks to Tomas Kalibera for months of work on the Windows port
    for this release.
  NEW FEATURES:
  * matrix(x, n, m) now warns in more cases where length(x) differs
    from n * m, as suggested by Abby Spurdle and Wolfgang Huber in
    Feb 2021 on the R-devel mailing list.
    This warning can be turned into an error by setting environment
    variable _R_CHECK_MATRIX_DATA_ to TRUE: R CMD check --as-cran
    does so unless it is already set.
  * Function file_test() in package utils gains tests for symlinks,
    readability and writability.
  * capabilities("libxml") is now false.
    The description of capabilities("http/ftp") now reflects that it
    refers to the default method, no longer the internal one.
  * simplify2array() gains an except argument for controlling the
    exceptions used by sapply().
  * Environment variables R_LIBS_USER and R_LIBS_SITE are both now
    set to the R system default if unset or empty, and can be set to
    NULL to indicate an empty list of user or site library
    directories.
  * The warning for axis()(-like) calls in cases of relatively small
    ranges (typically in log-scale situations) is slightly improved
    _and_ suppressed from explicit calls to .axisPars() as has always
    been the intention.
  * The contrasts setter function `contrasts&lt;-` gains an explicit
    default how.many = NULL rather than just using missing(how.many).
  * grid.pretty() gains a new optional argument n = 5.
  * There is a new function .pretty() with option bounds as a
    technical-utility version of pretty().  It and pretty() gain a
    new argument f.min with a better than back-compatible default.
  * Function grDevices::axisTicks() and related functions such as
    graphics::axis() work better, notably for the log scale; partly
    because of the pretty() improvements, but also because care is
    taken e.g., when ylim is finite but diff(ylim) is infinite.
  * nclass.FD() gains a digits option.
  * The R Mathlib internal C function bd0() (called indirectly from a
    dozen probability density and distribution functions such as
    dpois(), dbinom(), dgamma(), pgamma() _etc_) has been
    complemented by a more sophisticated and (mostly) more accurate C
    function ebd0(), currently called only by internal dpois_raw()
    improving accuracy for R level dpois() and potentially others
    calling it such as dnbinom(), dgamma() or pgamma().  (Thanks to
    Morten Welinder's PR#15628.)
  * write.ftable() gains sep = " " argument as suggested by Thomas
    Soeiro.
  * The names of the locale categories supported by R's
    Sys.getlocale() and Sys.setlocale() are now provided by variable
    .LC.categories in the base namespace.
  * The Date and POSIXt methods for hist() and the histogram method
    for plot() now also use the new default col = "lightgray" in
    consistency with the corresponding change to hist()'s default for
    R 4.0.0.
  * hist.default() gains new fuzz argument, and the histogram plot
    method no longer uses fractional axis ticks when displaying
    counts ("Frequency").
  * mapply() and hence Map() now also obey the "max-or-0-if-any"
    recycling rule, such that, e.g., Map(`+`, 1:3, 1[0]) is valid
    now.
  * as.character(&lt;obj&gt;) for "hexmode" or "octmode" objects now
    fulfils the important basic rule as.character(x)[j] ===
    as.character(x[j]).
  * The set utility functions, notably intersect() have been tweaked
    to be more consistent and symmetric in their two set arguments,
    also preserving a common mode.
  * substr(ch, start,end) &lt;- new now e.g., preserves names(ch); ditto
    for substring(), thanks to a patch from Brodie Gaslam.
  * plot(&lt;lm&gt;) gains a extend.ylim.f argument, in partial response to
    PR#15285; further PR#17784 is fixed thanks to several
    contributors and a patch by Elin Waring.  The Cook's dist
    contours get customizable via cook.col and cook.lty with a
    different default color and their legend is nicer by default and
    customizable via cook.legendChanges.
  * Attempting to subset an object that is not subsettable now
    signals an error of class notSubsettableError. The
    non-subsettable object is contained in the object field of the
    error condition.
  * Subscript-out-of-bounds errors are now signaled as errors of
    class subscriptOutOfBoundsError.
  * Stack-overflow errors are now signaled as errors inheriting from
    class stackOverflowError. See ?stackOverflowError for more
    details.
  * New partly experimental Sys.setLanguage() utility, solving the
    main problem of PR#18055.
  * gettext() and gettextf() get a new option trim = TRUE which when
    set to false allows translations for strings such as "Execution
    halted\n" typical for C code.
  * An experimental implementation of hash tables is now available.
    See ?hashtab for more details.
  * identical() gains a extptr.as.ref argument for requesting that
    external pointer objects be compared as reference objects.
  * reorder() gets an argument decreasing which it passes to sort()
    for level creation; based on the wish and patch by Thomas Soeiro
    in PR#18243.
  * as.vector() gains a data.frame method which returns a simple
    named list, also clearing a long standing 'FIXME' to enable
    as.vector(&lt;data.frame&gt;, mode="list").  This breaks code relying
    on as.vector(&lt;data.frame&gt;) to return the unchanged data frame.
  * legend() is now vectorized for arguments cex, x.intersp, and
    text.width.  The latter can now also be specified as a vector
    (one element for each column of the legend) or as NA for
    computing a proper column wise maximum value of strwidth(legend).
    The argument y.intersp can be specified as a vector with one
    entry for each row of the legend.
    legend() also gains new arguments title.cex and title.font.
    Thanks to Swetlana Herbrandt.
  * Deparsing no longer remaps attribute names dim, dimnames, levels,
    names and tsp to historical S-compatible names (which structure()
    maps back).
  * sample() and sample.int() have additional sanity checks on their
    size and n arguments.
    all.equal.numeric() gains a sanity check on its tolerance
    argument - calling all.equal(a, b, c) for three numeric vectors
    is a surprisingly common error.
    mean(na.rm =), rank(na.last =), barplot(legend.text =),
    boxplot(), contour(drawlabels =), polygon(border =) and
    methods::is(class2 =) have more robust sanity checks on their
    arguments.
    R CMD Rd2pdf (used by R CMD check) has a more robust sanity check
    on the format of \alias{} commands.
  * psigamma(x, deriv) for negative x now also works for deriv = 4
    and 5; their underlying C level dpsifn() is documented in
    'Writing R Extensions'.
  * The HTML help system now uses HTML5 (wish of PR#18149).
  * ks.test() now provides exact p-values also with ties and MC
    p-values in the two-sample (Smirnov) case.  By Torsten Hothorn.
  * ks.test() gains a formula interface, with y ~ 1 for the
    one-sample (Kolmogorov) test and y ~ group for the two-sample
    (Smirnov) test.  Contributed by Torsten Hothorn.
  * The return value from ks.test() now has class c("ks.test",
    "htest") - packages using try() need to take care to use
    inherits() and not == on the class.
  * New functions psmirnov(), qsmirnov() and rsmirnov() in package
    stats implementing the asymptotic and exact distributions of the
    two-sample Smirnov statistic.
  * iconv() now allows sub = "c99" to use C99-style escapes for UTF-8
    inputs which cannot be converted to encoding to.
  * In a forward pipe |&gt; expression it is now possible to use a named
    argument with the placeholder _ in the rhs call to specify where
    the lhs is to be inserted.  The placeholder can only appear once
    on the rhs.
  * The included LAPACK sources have been updated to version 3.10.0,
    except for the four Fortran 77 routines which 3.10.0 has
    re-implemented in Fortran 90 (where the older versions have been
    retained as the R build process does not support Fortran 90).
  * path.expand() and most other uses of tilde expansion now warn if
    a path would be too long if expanded.  (An exception is
    file.exists(), which silently returns false.)
  * trunc(&lt;Date&gt;, *) now supports units = "months" or "years" for
    consistency with the POSIXt method, thanks to Dirk Eddelbuettel's
    proposal in PR#18099.
  * list2DF() now checks that its arguments are of the same length,
    rather than use recycling.
  * The HTML help system has several new features: LaTeX-like math
    can be typeset using either KaTeX or MathJax, usage and example
    code is highlighted using Prism, and for dynamic help the output
    of examples and demos can be shown within the browser if the
    knitr package is installed. These features can be disabled by
    setting the environment variable _R_HELP_ENABLE_ENHANCED_HTML_ to
    a false value.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 15
    and so packages that provide graphics devices should be
    reinstalled.
  * The grid package now allows the user to specify a "vector" of
    pattern fills.  The fill argument to gpar() accepts a list of
    gradients and/or patterns and the functions linearGradient(),
    radialGradient(), and pattern() have a new group argument.
    Points grobs (data symbols) can now also have a pattern fill.
    The grobCoords() function now returns a more informative and
    complex result.
  * The grid package has new functions for drawing isolated groups:
    grid.group(), grid.define(), and grid.use().  These functions add
    compositing operators and affine transformations to R's graphics
    capabilities.
    The grid package also has new functions for stroking and filling
    paths: grid.stroke(), grid.fill(), and grid.fillStroke().
    A new function as.path() allows the user to specify the fill rule
    for a path that is to be used for clipping, stroking, or filling;
    available options are "winding" and "evenodd".  A new function
    as.mask() allows the user to specify the type of a mask;
    available options are "alpha" and "luminance".
    These new features are only supported so far (at most) on the
    Cairo-based graphics devices and on the pdf() device.
  * dev.capabilities() reports on device support for the new
    features.
  * par() now warns about unnamed non-character arguments to prevent
    misuse such as {usr &lt;- par("usr"); par(usr)}.
  INSTALLATION:
  * Facilities for accessing ftp:// sites are no longer tested
    (except _pro tem_ for curlGetHeaders()) as modern browsers have
    removed support.
  * R can now be built with DEFS = -DSTRICT_R_HEADERS .
  PACKAGE INSTALLATION:
  * R CMD INSTALL no longer tangles vignettes. This completes an R
    CMD build change in R 3.0.0 and affects packages built before R
    3.0.2. Such packages should be re-made with R CMD build to have
    the tangled R code of vignettes shipped with the tarball.
  * USE_FC_LEN_T will become the default: this uses the correct
    prototypes for Fortran BLAS/LAPACK routines called from C/C++,
    and requires adjustment of most such calls - see 'Writing R
    Extensions' SS6.6.2.  (This has been supported since R 3.6.2.)
  * Package installation speed for packages installed with
    keep.source has been improved. This resolve the issue reported by
    Ofek Shilon in PR#18236.
  UTILITIES:
  * R CMD check can optionally report files/directories left behind
    in home, /tmp (even though TMPDIR is set) and other directories.
    See the "R Internals" manual for details.
  * R CMD check now reports byte-compilation errors during
    installation.  These are not usually fatal but may result in
    parts of the package not being byte-compiled.
  * _R_CHECK_DEPENDS_ONLY_ can be applied selectively to examples,
    tests and/or vignettes in R CMD check: see the "R Internals"
    manual.
  * _R_CHECK_SRC_MINUS_W_IMPLICIT_ now defaults to true: recent
    versions of Apple clang on macOS have made implicit function
    declarations in C into a compilation error.
  * R CMD check --as-cran makes use of the environment variable
    AUTORECONF.  See the "R Internals" manual SS8 for further details.
  * R CMD check --use-valgrind also uses valgrind when re-building
    vignettes as some non-Sweave vignettes unhelpfully comment out
    all their code when R CMD check runs vignettes.
  * Errors in re-building vignettes (unless there are LaTeX errors)
    are reported by R CMD check as ERROR rather than WARNING when
    running vignettes has been skipped (as it frequently is in CRAN
    checks and by --as-cran).
  * R CMD Rd2pdf gains a --quiet option that is used by R CMD build
    when building the PDF package manual.
  * R CMD Rd2pdf now always runs LaTeX in batch mode, consistent with
    Texinfo &gt;= 6.7. The --batch option is ignored.
  * R CMD build and R CMD check now include the Rd file name and line
    numbers in the error message of an \Sexpr evaluation failure.
  * For packages using the \doi Rd macro (now an install-time \Sexpr)
    but no other dynamic Rd content, R CMD build now produces a
    smaller tarball and is considerably faster - skipping temporary
    package installation.
  C-LEVEL FACILITIES:
  * The non-API header R_ext/R-ftp-http.h is no longer provided, as
    the entry points it covered are now all defunct.
  * A number of non-API declarations and macro definitions have been
    moved from the installed header Rinternals.h to the internal
    header Defn.h. Packages that only use entry points and
    definitions documented to be part of the API as specified in
    'Writing R Extensions' SS6 should not be affected.
  * The macro USE_RINTERNALS no longer has any effect when compiling
    package code.  Packages which also use R_NO_REMAP will need to
    ensure that the remapped names are used for calls to API
    functions that were formerly also made available as macros.
  * The deprecated legacy S-compatibility macros PROBLEM, MESSAGE,
    ERROR, WARN, WARNING, RECOVER, ... are no longer defined in
    R_exts/RS.h (included by R.h).  Replace these by calls to
    Rf_error and Rf_warning (defined in header R_ext/Error.h included
    by R.h).
    Header R_ext/RS.h no longer includes R_ext/Error.h.
  * Header R_ext/Constants.h (included by R.h) when included from C++
    now includes the C++ header cfloat rather than the C header
    float.h (now possible as C++11 is required).
  * The legacy S-compatibility macros DOUBLE_* in R_ext/Constants.h
    (included by R.h) are deprecated.
  * The deprecated S-compatibility macros SINGLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * R_Calloc, R_Free and R_Realloc are preferred to their unprefixed
    forms and error messages now use the prefix. These forms were
    introduced in R 3.4.0 and are available even when
    STRICT_R_HEADERS is defined.
  * rmultinom has been documented in 'Writing R Extensions' SS6 so is
    now part of the R API.
  * Similarly, Rtanpi, called from R level tanpi() is now part of the
    R API.
  * The long-deprecated, undocumented and non-API entry point call_R
    is no longer declared in R_ext/RS.h (included by R.h).
  * The header S.h which has been unsupported since Jan 2016 has been
    removed.  Use R.h instead.
  DEPRECATED AND DEFUNCT:
  * The (non-default and deprecated) method = "internal" for
    download.file() and url() no longer supports http:// nor ftp://
    URIs.  (It is used only for file:// URIs.)
    On Windows, download.file(method = "wininet") no longer supports
    ftp:// URIs.  (It is no longer the default method, which is
    "libcurl" and does.)
    On Windows, the deprecated method = "wininet" now gives a warning
    for http:// and https:// URIs for both download.file() and url().
    (It is no longer the default method.)
  * On Windows, the command-line option --max-mem-size and
    environment variable R_MAX_MEM_SIZE are defunct.  The memory
    allocation limit was important for 32-bit builds, but these are
    no longer supported.
  * default.stringsAsFactors() is now formally deprecated, where that
    was only mentioned on its regular help page, previously.  So it
    now gives a warning if called.
  * unix.time() is defunct now; it had been deprecated since R 3.4.0.
  BUG FIXES:
  * Setting digits = 0 in format(), print.default() (and hence
    typically print()) or options() is again invalid.  Its behaviour
    was platform-dependent, and it is unclear what "zero significant
    digits" should mean (PR#18098).
  * Messages from C code in the cairo section of package grDevices
    are now also offered for translation, thanks to Michael Chirico's
    PR#18123.
  * mean(x) with finite x now is finite also without "long.double"
    capability.
  * R CMD Rd2pdf no longer leaves an empty build directory behind
    when it aborts due to an already existing output file.  (Thanks
    to Sebastian Meyer's PR#18141.)
  * density(x, weights = w, na.rm = TRUE) when anyNA(x) is true, now
    removes weights "in parallel" to x, fixing PR#18151, reported by
    Matthias Gondan.  Additionally, it gets a subdensity option.
  * Conversion of \Sexpr[]{&lt;expR&gt;} to LaTeX or HTML no longer
    produces long blocks of empty lines when &lt;expR&gt; itself contains
    several lines all producing empty output.  Thanks to a report and
    patch by Ivan Krylov posted to R-devel.
  * R CMD build no longer fails if a package vignette uses child
    documents and inst/doc exists.  (Thanks to Sebastian Meyer's
    PR#18156.)
  * When an R documentation ('help' source) file man/foo.Rd in a
    package has \donttest{..} examples with a syntax error, it is now
    signalled as ERROR and with correct line numbers relating to the
  * -Ex.R file, thanks to Duncan Murdoch and Sebastian Meyer's
    reports and patch proposals in PR#17501.
  * Improved determination of the correct translation domain in
    non-base packages, addressing the combination of PR#18092 and
    PR#17998 (#c6) with reports and _augmented_ patch #2904 by
    Suharto Anggono.
    Note that "R-base" is no longer the default domain e.g., for
    top-level calls to gettext(); rather translation needs explicit
    domain = * specification in such cases.
  * identical(attrib.as.set=FALSE) now works correctly with data
    frames with default row names (Thanks to Charlie Gao's PR#18179).
  * txtProgressBar() now enforces a non-zero width for argument char,
    without which no progress can be visible.
  * dimnames(table(d)) is more consistent in the case where d is a
    list with a single component, thanks to Thomas Soeiro's report to
    R-devel.
    Further, table(d1, d2) now gives an error when d1 and d2 are data
    frames as suggested by Thomas in PR#18224.
  * Fix for drawing semi-transparent lines and fills on the native
    Windows graphics device (PR#18219 and PR#16694).  Thanks to Nick
    Ray for helpful diagnosis on Bugzilla.
  * The deparser now wraps sub-expressions such as if(A) ..  with
    parentheses when needed; thanks to Duncan Murdoch's PR#18232 and
    Lionel Henry's patches there.
  * remove.packages() no longer tries to uninstall Priority: base
    packages, thanks to a report and suggestions by Colin Fay in
    PR#18227.
  * win.metafile() now has xpinch and ypinch arguments so that the
    user can override Windows' (potentially wrong) guess at device
    dimensions.
  * x[i] and x[[i]] for non-integer i should now behave in all cases
    as always documented: the index used is equivalent to
    as.integer(i) unless that would overflow where trunc(i) is used
    instead; thanks to Suharto Anggono's report and patch proposals
    in PR#17977.
  * asOneSidedFormula() now associates the resulting formula with the
    global environment rather than the evaluation environment created
    for the call.
  * &lt;bibentry&gt;$name now matches the field name case-insensitively,
    consistent with bibentry() creation and the replacement method.
  * cbind() failed to detect some length mismatches with a mixture of
    time-series and non-time-series inputs.
  * The default LaTeX style file Sweave.sty used by the RweaveLatex
    driver no longer loads the obsolete ae package; thanks to a
    report by Thomas Soeiro in PR#18271.  Furthermore, it now skips
    \usepackage[T1]{fontenc} for engines other than pdfTeX (if
    detected) or if the new [nofontenc] option is used.
  * smooth.spline() now stores its logical cv argument more safely,
    fixing a rare bug when printing, and also stores n.
  * smooth.spline(x,y,*) now computes the cv.crit statistic
    correctly, also when is.unsorted(x), fixing PR#18294.
  * The data.frame method of rbind() now warns when binding
    not-wholly-recycling vectors, by analogy to the default method
    (for matrices).
  * setAs() finds the correct class for name to when multiple
    packages define a class with that name. Thanks to Gabor Csardi
    for the report.
  * Fix for detaching a package when two classes of the same name are
    present in method signatures for the same generic. Thanks to
    Gabor Csardi for the report.
  * match.arg("", c("", "a", "B")) gives a better error message, in
    part from PR#17959, thanks to Elin Waring.
  * R CMD Sweave --clean no longer removes pre-existing files or
    subdirectories (PR#18242).
  * The quartz() device no longer splits polylines into subpaths.
    That has caused narrowly-spaced lines with many points to always
    look solid even when dashed line type was used due to dash phase
    restarts.
  * Deparsing constructs such as quote(1 + `!`(2) + 3) works again as
    before R 3.5.0, thanks to the report and patch in PR#18284 by
    Suharto Anggono.
  * as.list(f) for a factor f now keeps names(f), fixing PR#18309.
  * qbeta(.001, .9, .009) and analogous qf() calls now return a
    correct value instead of NaN or wrongly 1, all with a warning;
    thanks to the report by Ludger Goeminne in PR#18302.
  * plot.lm() failed to produce the plot of residuals vs.  factor
    levels (i.e., which=5 when leverages are constant) for models
    with character predictors (PR#17840).
  * interaction.plot(..., xtick = TRUE) misplaced the x-axis line
    (PR#18305).
  * Not strictly fixing a bug, format()ing and print()ing of
    non-finite Date and POSIXt values NaN and +/-Inf no longer show
    as NA but the respective string, e.g., Inf, for consistency with
    numeric vector's behaviour, fulfilling the wish of PR#18308.
  * R CMD check no longer runs test scripts generated from
    corresponding .Rin files twice and now signals an ERROR if
    processing an .Rin script fails.
  * tools::Rd2txt() used for plain-text help pages now renders \hrefs
    (if tools::Rd2txt_options(showURLs = TRUE)) and \urls with
    percent-encoding and standards-compliant delimiting style (angle
    brackets and no URL: prefix).  \email is now rendered with a
    mailto: prefix.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1655985600">- CHANGES IN R 4.2.1:
  NEW FEATURES:
  * New function utils::findCRANmirror() to find out if a CRAN mirror
    has been selected, otherwise fallback to the main site.  This
    behaves in the same way as tools::CRAN_package_db() and is
    intended for packages wishing to access CRAN for purposes other
    than installing packages.
    The need for this was shown by a day when the main CRAN website
    was offline and a dozen or so packages which had its URL
    hardcoded failed their checks.
  INSTALLATION on a UNIX-ALIKE:
  * The libraries searched for by --with-blas (without a value) now
    include BLIS (after OpenBLAS but before ATLAS).  And on macOS,
    the Accelerate framework (after ATLAS).  (This is patterned after
    the AX_BLAS macro from the Autoconf Archive.)
  * The included LAPACK sources have been updated to 3.10.1.
  UTILITIES:
  * The (full path to) the command tidy to be used for HTML
    validation can be set by environment variable R_TIDYCMD.
  * Setting environment variable _R_CHECK_RD_VALIDATE_RD2HTML_ to a
    false value will override R CMD check --as-cran and turn off HTML
    validation.  This provides a way to circumvent a problematic
    tidy.
    The 2006 version that ships with macOS is always skipped.
  C-LEVEL FACILITIES:
  * The undocumented legacy declarations of Sint, Sfloat, SINT_MAX
    and SINT_MIN in header R.h are deprecated.
  BUG FIXES:
  * fisher.test(d) no longer segfaults for "large" d; fixing PR#18336
    by preventing/detecting an integer overflow reliably.
  * tar(., files=*) now produces correctly the warning about invalid
    uid or gid of files, fixing PR#18344, reported by Martin Morgan.
  * tk_choose.files() with multi = FALSE misbehaved on paths
    containing spaces (PR#18334) (regression introduced in R 4.0.0).
  * sort(x, partial = ind, *) now works correctly notably for the
    non-default na.last = FALSE or TRUE, fixing PR#18335 reported by
    James Edwards.
  * Environment variable _R_CHECK_XREFS_REPOSITORIES_ is only used
    for checking .Rd cross-references in R CMD check (as documented)
    and not for other uses looking for a CRAN mirror.
  * The search for a CRAN mirror when checking packages now uses
    getOption("repos") if that specifies a CRAN mirror, even when it
    does not also specify all three Bioconductor repositories (as was
    previously required).
  * The HTML code generated by tools::Rd2HTML() has been improved to
    pass tidy 5.8.0.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1667217600">- CHANGES IN R 4.2.2:
  NEW FEATURES:
  * tools::Rdiff(useDiff = TRUE) checks for the presence of an
    external diff command and switches to useDiff = FALSE if none is
    found.  This allows R CMD Rdiff to always work.
  * On Windows, environment variable R_LIBCURL_SSL_REVOKE_BEST_EFFORT
    can be used to switch to only 'best-effort' SSL certificate
    revocation checks with the default "libcurl" download method.
    This reduces security, but may be needed for downloads to work
    with MITM proxies (PR#18379).
  * (macOS) The run-time check for libraries from XQuartz for X11 and
    Tcl/Tk no longer uses otool from the Apple Developer Tools
    (PR#18400).
  * The LaTeX style for producing the PDF manuals, Rd.sty, now loads
    the standard amsmath, amsfonts and amssymb packages for greater
    coverage of math commands in the Rd \eqn and \deqn macros.  The
    \mathscr LaTeX command is also provided (via the mathrsfs
    package, if available, or the amsfonts bundle otherwise),
    fulfilling the wish of PR#18398.
  * (Windows) The default format of readClipboard() and
    writeClipboard() has been changed to 13 (CF_UNICODETEXT).
  INSTALLATION on a UNIX-ALIKE:
  * The PDF manuals (if built) can be compacted by the new target
    make compact-pdf (at the top level or in directory doc/manual).
  * There is now configure support for LLVM clang 15 on Linux, which
    defaults to position-independent (PIE) executables whereas
    gfortran does not.
  * Many small changes to ease compilation (and suppress warnings)
    with LLVM clang 15.
  BUG FIXES:
  * Rscript -e would fail if stdin were closed (Reported by Henrik
    Bengtsson.)
  * qt(*, log.p=TRUE) in outer tails no longer produces NaN in its
    final steps, thus fixing PR#18360.
  * tools::Rd2latex() now escapes hashes and ampersands when writing
    URLs, fixing LaTeX errors with such URLs in \tabular.
  * When isGeneric(f, fdef=*) is used with mismatching names, the
    warning is better understandable; reported (with fix) in PR#18370
    by Gabe Becker.
  * poly(x, n) now works again (and is now documented) when x is a
    "Date" or "POSIXct" object, or of another class while fulfilling
    mode(x) == "numeric".  This also enables poly(x, *, raw=TRUE) for
    such variables.  Reported by Michael Chirico to R-devel.
  * write.table(), write.csv() and write.csv2() restore their
    numerical precision (internal equivalent of digits = 15) after an
    interrupt (PR#18384).
  * One can now read also byte FF from a clipboard connection
    (PR#18385).
  * source("") and source(character()) now give more helpful error
    messages.
  * R CMD check --as-cran set _R_CHECK_TIMINGS_ too late to have the
    intended effect.
  * as.POSIXlt(x) now also works with very large dates x, fixing
    PR#18401 reported by Hannes M"uhleisen.
  * Files can now be extracted even from very large zip archives
    (PR#18390, thanks to Martin Jakt).
  * Non-finite objects of class "POSIXlt" are now correctly coerced
    to classes "Date" and "POSIXct"; following up on the extension to
    format() them correctly.
  * Added methods for is.finite(), is.infinite() and is.nan() for
    "POSIXlt" date-time objects.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1678881600">- CHANGES IN R 4.2.3:
  C-LEVEL FACILITIES:
  * The definition of DL_FUNC in R_ext/Rdynload.h has been changed to
    be fully C-compliant.  This means that functions loaded _via_ for
    example R_GetCCallable need to be cast to an appropriate type if
    they have any arguments.
  * .Machine has a new element sizeof.time_t to identify old systems
    with a 32-bit type and hence a limited range of date-times (and
    limited support for dates millions of years from present).
  PACKAGE INSTALLATION:
  * (Windows) The default C++ standard had accidentally been left at
    C++11 when it was changed to C++14 on Unix.
  BUG FIXES:
  * As "POSIXlt" objects may be "partially filled" and their list
    components meant to be recycled, length() now is the length of
    the longest component.
  * as.POSIXlt.Date() could underflow for dates in the far past (more
    than half a million years BCE).
  * as.Date.POSIXlt(x) would return "1970-01-01" instead of NA in R
    4.2.2, e.g., for
    x &lt;- as.POSIXlt(c("2019-01-30","2001-1-1"))
    x$mon &lt;- c(0L, NA); as.Date(x)
  * R CMD check failed to apply enabled _R_CHECK_SUGGESTS_ONLY_ to
    examples and vignettes (regression in R 4.2.0).
  * R CMD check did not re-build vignettes in separate processes by
    default (regression in R 4.2.0).
  * Running examples from HTML documentation now restores previous
    knitr settings and options (PR#18420).
  * Quartz: fonts are now located using Core Graphics API instead of
    deprecated ATS which is no longer supported in the macOS 13 SDK
    (PR#18426).  This also addresses an issue where the currently
    used font in the Quartz device context was not correctly
    retained.
  * (Windows) Math symbols in text drawing functions are again
    rendered correctly (PR#18440).  This fixes a regression in R
    4.2.1 caused by a fix in PR#18382 which uncovered an issue in
    GraphApp due to which the symbol charset was not used with TT
    Symbol font face.
  * (Windows) Installing a package with a src/Makefile.{win,ucrt}
    file includes ~/.R/Makevars.win64 in the search for user
    makevars, as documented in "R Installation and Administration"
    and done for packages with a src/Makevars.{win,ucrt} file.
  * format(&lt;POSIXlt_w/_unbalanced_sec&gt;, "....%OS&lt;n&gt;") with n &gt; 0 no
    longer accidentally uses the unbalanced seconds, thanks to
    Suharto Anggono's report (including patch) in PR#18448.
  * solve.default(a, b) works around issues with some versions of
    LAPACK when a contains NA or NaN values.
  * When UseMethod() cannot dispatch, it no longer segfaults
    producing the error message in case of a long class(), thanks to
    Joris Vankerschaver's report (including patch) in PR#18447.
  * When example(foo, ..) produces graphics on an interactive device
    it needs to open itself, it now leaves devAskNewPage() unchanged
    even when it was FALSE, thus fixing a 14 years old '&lt;FIXME&gt;'.
  * packageDescription() again catches errors from encoding
    conversions. This also fixes broken packageVersion() in C locale
    on systems where iconv does not support transliteration.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1681128000">- add patch to build with libcurl &gt;= 8</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1682078400">- CHANGES IN R 4.3.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Calling &amp;&amp; or || with LHS or (if evaluated) RHS of length greater
    than one is now always an error, with a report of the form
    'length = 4' in coercion to 'logical(1)'
    Environment variable _R_CHECK_LENGTH_1_LOGIC2_ no longer has any
    effect.
  NEW FEATURES:
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.10.1.  (This caused some platform-dependent
    changes to package check output.)  And then to the sources from
    LAPACK version 3.11.0 (with changes only to double complex
    subroutines).
  * The included LAPACK sources have been updated to include the four
    Fortran 90 routines rather than their Fortran 77 predecessors.
    This may give some different signs in SVDs or
    eigendecompositions..  (This completes the transition to LAPACK
    3.10.x begun in R 4.2.0.)
  * The LAPACK sources have been updated to version 3.11.0.  (No new
    subroutines have been added, so this almost entirely bug fixes:
    Those fixes do affect some computations with NaNs, including R's
    NA.)
  * The parser now signals _classed_ errors, notably in case of the
    pipe operator |&gt;.  The error object and message now give line and
    column numbers, mostly as proposed and provided by Duncan Murdoch
    in PR#18328.
  * toeplitz() is now generalized for asymmetric cases, with a
    toeplitz2() variant.
  * xy.coords() and xyz.coords() and consequently, e.g., plot(x,y,
    log = "y") now signal a _classed_ warning about negative values
    of y (where log(.) is NA).  Such a warning can be specifically
    suppressed or caught otherwise.
  * Regular expression functions now check more thoroughly whether
    their inputs are valid strings (in their encoding, e.g. in
    UTF-8).
  * The performance of grep(), sub(), gsub() and strsplit() has been
    improved, particularly with perl = TRUE and fixed = TRUE.  Use of
    useBytes = TRUE for performance reasons should no longer be
    needed and is discouraged: it may lead to incorrect results.
  * apropos() gains an argument dot_internals which is used by the
    completion (help(rcompgen)) engine to also see base internals
    such as .POSIXct().
  * Support in tools::Rdiff() for comparing uncompressed PDF files is
    further reduced - see its help page.
  * qqplot(x, y, ...) gains conf.level and conf.args arguments for
    computing and plotting a confidence band for the treatment
    function transforming the distribution of x into the distribution
    of y (Switzer, 1976, _Biometrika_). Contributed by Torsten
    Hothorn.
  * Performance of package_dependencies() has been improved for cases
    when the number of dependencies is large.
  * Strings newly created by gsub(), sub() and strsplit(), when any
    of the inputs is marked as "bytes", are also marked as "bytes".
    This reduces the risk of creating invalid strings and accidental
    substitution of bytes deemed invalid.
  * Support for readLines(encoding = "bytes") has been added to allow
    processing special text files byte-by-byte, without creating
    invalid strings.
  * iconv(from = "") now takes into account any declared encoding of
    the input elements and uses it in preference to the native
    encoding.  This reduces the risk of accidental creation of
    invalid strings, particularly when different elements of the
    input have different encoding (including "bytes").
  * Package repositories in getOption("repos") are now initialized
    from the repositories file when utils is loaded (if not already
    set, e.g., in .Rprofile).  (From a report and patch proposal by
    Gabriel Becker in PR#18405.)
  * compactPDF() gets a verbose option.
  * type.convert() and hence read.table() get new option tryLogical =
    TRUE with back compatible default.  When set to false, converts
    "F" or "T" columns to character.
  * Added new unit prefixes "R" and "Q" for abbreviating
    (unrealistically large) sizes beyond 10^{27} in standard = "SI",
    thanks to Henrik Bengtsson's PR#18435.
  * as.data.frame()'s default method now also works fine with atomic
    objects inheriting from classes such as "roman", "octmode" and
    "hexmode", such fulfilling the wish of PR#18421, by Benjamin
    Feakins.
  * The as.data.frame.vector() utility now errors for wrong-length
    row.names.  It warned for almost six years, with "Will be an
    error!".
  * sessionInfo() now also contains La_version() and reports codepage
    and timezone when relevant, in both print() and toLatex() methods
    which also get new option tzone for displaying timezone
    information when locale = FALSE.
  * New function R_compiled_by() reports the C and Fortran compilers
    used to build R, if known.
  * predict(&lt;lm&gt;, newdata = *) no longer unnecessarily creates an
    offset of all 0s.
  * solve() for complex inputs now uses argument tol and by default
    checks for 'computational singularity' (as it long has done for
    numeric inputs).
  * predict(&lt;rank-deficient lm&gt;, newdata=*) now obeys a new argument
    rankdeficient, with new default "warnif", warning only if there
    are non-estimable cases in newdata.  Other options include
    rankdeficient = "NA", predicting NA for non-estimable newdata
    cases.  This addresses PR#15072 by Russ Lenth and is based on his
    original proposal and discussions in PR#16158 also by David Firth
    and Elin Waring.  Still somewhat experimental.
  * Rgui console implementation now works better with the NVDA screen
    reader when the full blinking cursor is selected.  The underlying
    improvements in cursor handling may help also other screen
    readers on Windows.
  * The drop-field control in GraphApp can now be left with the TAB
    key and all controls can be navigated in the reverse order using
    the Shift+TAB key, improving accessibility of the Rgui
    configuration editor.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now fully accurate
    (instead of to "only" minimally five digits).
  * demo(error.catching) now also shows off withWarnings() and
    tryCatchWEMs().
  * As an experimental feature the placeholder _ can now also be used
    in the rhs of a forward pipe |&gt; expression as the first argument
    in an extraction call, such as _$coef. More generally, it can be
    used as the head of a chain of extractions, such as _$coef[[2]].
  * Spaces in the environment variable used to choose the R session's
    temporary directory (TMPDIR, TMP and TEMP are tried in turn) are
    now fatal.  (On Windows the 'short path' version of the path is
    tried and used if that does not contain a space.)
  * all.equal.numeric() gets a new optional switch giveErr to return
    the numeric error as attribute.  Relatedly,
    stopifnot(all.equal&lt;some&gt;(a, b, ..)) is as "smart" now, as
    stopifnot(all.equal(....)) has been already, thus allowing
    customized all.equal&lt;Some&gt;() wrappers.
  * R on Windows is now able to work with path names longer than 260
    characters when these are enabled in the system (requires at
    least Windows 10 version 1607).  Packages should be updated to
    work with long paths as well, instead of assuming PATH_MAX to be
    the maximum length.  Custom front-ends and applications embedding
    R need to update their manifests if they wish to allow this
    feature.  See
    &lt;https://blog.r-project.org/2023/03/07/path-length-limit-on-windows&gt;
    for more information.
  * 'Object not found' and 'Missing argument' errors now give a more
    accurate error context. Patch provided by Lionel Henry in
    PR#18241.
  * The @ operator is now an S3 generic. Based on contributions by
    Tomasz Kalinowski in PR#18482.
  * New generic chooseOpsMethod() provides a mechanism for objects to
    resolve cases where two suitable methods are found for an Ops
    Group Generic. This supports experimenting with alternative
    object systems. Based on contributions by Tomasz Kalinowski in
    PR#18484.
  * inherits(x, what) now accepts values other than a simple
    character vector for argument what. A new generic, nameOfClass(),
    is called to resolve the class name from what. This supports
    experimenting with alternative object systems. Based on
    contributions by Tomasz Kalinowski in PR#18485.
  * Detection of BLAS/LAPACK in use (sessionInfo()) with FlexiBLAS
    now reports the current backend.
  * The "data.frame" method for subset() now warns about extraneous
    arguments, typically catching the use of = instead of == in the
    subset expression.
  * Calling a:b when numeric a or b is longer than one may now be
    made into an error by setting environment variable
    _R_CHECK_LENGTH_COLON_ to a true value, along the proposal in
    PR#18419 by Henrik Bengtsson.
  * density(x, weights = *) now warns if automatic bandwidth
    selection happens without using weights; new optional warnWbw may
    suppress the warning.  Prompted by Christoph Dalitz' PR#18490 and
    its discussants.
  * rm(list = *) is faster and more readable thanks to Kevin Ushey's
    PR#18492.
  * The plot.lm() function no longer produces a normal Q-Q plot for
    GLMs. Instead it plots a half-normal Q-Q plot of the absolute
    value of the standardized deviance residuals.
  * The print() method for class "summary.glm" no longer shows
    summary statistics for the deviance residuals by default.  Its
    optional argument show.residuals can be used to show them if
    required.
  * The tapply() function now accepts a data frame as its X argument,
    and allows INDEX to be a formula in that case. by.data.frame()
    similarly allows INDICES to be a formula.
  * The performance of df[j] &lt;- value (including for missing j) and
    write.table(df) has been improved for data frames df with a large
    number of columns.  (Thanks to Gabriel Becker's PR#18500,
    PR#18503 and discussants, prompted by a report from Toby Dylan
    Hocking on the R-devel mailing list.)
  * The matrix multiply operator %*% is now an S3 generic, belonging
    to new group generic matrixOps.  From Tomasz Kalinowski's
    contribution in PR#18483.
  * New function array2DF() to convert arrays to data frames,
    particularly useful for the list arrays created by tapply().
  DATES and TIMES:
  * On platforms where (non-UTC) datetimes before 1902 (or before
    1900 as with system functions on recent macOS) are guessed by
    extrapolating time zones from 1902-2037, there is a warning at
    the first use of extrapolation in a session.  (As all time zones
    post 2037 are extrapolation, we do not warn on those.)
  * (Platforms using --with-internal-tzone, including Windows and by
    default macOS). How years are printed in dates or date-times can
    be controlled by environment variable R_PAD_YEARS_BY_ZERO.  The
    default remains to pad to 4 digits by zeroes, but setting value
    no gives no padding (as used by default by glibc).
  * strftime() tries harder to determine the offset for the "%z"
    format, and succeeds on the mainstream R platforms.
  * strftime() has a limit of 2048 bytes on the string produced -
    attempting to exceed this is an error.  (Previously it silently
    truncated at 255 bytes.)
  * sessionInfo() records (and by default prints) the system time
    zone as part of the locale information.  Also, the source
    (system/internal) of the date-time conversion and printing
    functions.
  * Objects of class "POSIXlt" created in this version of R always
    have 11 components: component zone is always set, and component
    gmtoff is set for times in UTC and usually set on the (almost
    all) platforms which have C-level support, otherwise is NA.
  * There are comprehensive validity checks on the structure of
    objects of class "POSIXlt" when converting (including formatting
    and printing).  (This avoids mis-conversions of hand-crafted
    objects.)
  * There is some support for using the native date-time routines on
    macOS: this is only viable on recent versions (e.g. 12.6 and 13)
    and does get wrong some historical changes (before 1900, during
    WWII).  Use of --with-internal-tzone remains the default.
  * as.POSIXct(&lt;numeric&gt;) and as.POSIXlt(.) (without specifying
    origin) now work.  So does as.Date(&lt;numeric&gt;).
  * as.Date.POSIXct(., tz) now treats several tz values, notably
    "GMT" as equivalent to "UTC", proposed and improved by Michael
    Chirico and Joshua Ulrich in PR#17674.
  * Experimental balancePOSIXlt() utility allows using "ragged" and
    or out-of-range "POSIXlt" objects more correctly, e.g., in
    subsetting and subassignments.  Such objects are now documented.
    More experimentally, a "POSIXlt" object may have an attribute
    "balanced" indicating if it is known to be filled or fully
    balanced.
  * Functions axis.Date() and axis.POSIXct() are rewritten to gain
    better default tick locations and better default formats by using
    prettyDate(). Thanks to Swetlana Herbrandt.
  * The mapping of Windows' names for time zones to IANA's 'Olson'
    names has been updated.  When ICU is available (it is by
    default), it is used to get a mapping for the current region set
    in Windows.  This can be overridden by setting environment
    variable TZ to the desired Olson name - see OlsonNames() for
    those currently available.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 16
    and so packages that provide graphics devices should be
    reinstalled.
  * The grDevices and grid packages have new functions for rendering
    typeset glyphs, primarily: grDevices::glyphInfo() and
    grid::grid.glyph().
    Rendering of typeset glyphs is only supported so far on the
    Cairo-based graphics devices and on the pdf() and quartz()
    devices.
  * The defined behaviour for "clear" and "source" compositing
    operators (via grid::grid.group()) has been changed (to align
    better with simple interpretation of original Porter-Duff
    definitions).
  * Support for gradients, patterns, clipping paths, masks, groups,
    compositing operators, and affine transformations has been added
    to the quartz() device.
  INSTALLATION on a UNIX-ALIKE:
  * A system installation of generic LAPACK 3.10.0 or later will be
    preferred to the version in the R sources.
    configure option --with-lapack=no (equivalently --without-lapack)
    forces compilation of the internal LAPACK sources.
    If --with-lapack is not specified, a system liblapack is looked
    for and used if it reports version 3.10.0 or later and does not
    contain BLAS routines.
    Packages using LAPACK will need to be reinstalled if this changes
    to using an external library.
  * On aarch64 Linux platforms using GCC, configure now defaults to
  - fPIC (instead of -fpic), as desired in PR#18326.
  * configure now checks conversion of datetimes between POSIXlt and
    POSIXct around year 2020.  Failure (which has been seen on
    platforms missing tzdata) is fatal.
  * If configure option --with-valgrind-instrumentation is given
    value 1 or 2, option --with-system-valgrind-headers is now the
    default and ignored (with a warning).  It is highly recommended
    that the system headers are installed alongside valgrind: they
    are part of its packaging on some Linux distributions and
    packaged separately (e.g. in the valgrind-devel RPM) on others.
    configure will give a warning if they are not found.
    The system headers will be required in a future release of R to
    build with valgrind instrumentation.
  * libcurl 8.x is now accepted by configure: despite a change in
    major version number it changes neither API nor ABI.
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools43, an update of the Rtools42 toolchain.  It is
    based on gcc 12 and newer versions of MinGW-W64, binutils and
    libraries.  At this time R-devel can still be built using
    Rtools42 without changes, but when R-devel is installed via the
    installer, it will by default look for Rtools43.
  * Old make targets rsync-extsoft and 32-bit ones that are no longer
    needed have been removed.
  * Default builds (including for packages) no longer select C99.
    Thus the C standard used is the default for the compiler, which
    for the toolchain in Rtools43 is C17.  (This is consistent with
    Unix builds.)
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++17 where
    available (which it is on all currently checked platforms): if
    not C++14 or C++11 is used if available otherwise C++ is not
    supported.
  * USE_FC_LEN_T is the default: this uses the correct
    (compiler-dependent) prototypes for Fortran BLAS/LAPACK routines
    called from C/C++, and requires adjustment of many such calls -
    see 'Writing R Extensions' SS6.6.1.
  * There is initial support for C++23 as several compilers are now
    supporting -std=c++23 or -std=c++2b or similar.  As for C++20,
    there no additional configure checks for C++23 features beyond a
    check that the compiler reports a __cplusplus value greater than
    that in the C++20 standard.  C++ feature tests should be used.
  * There is support for a package to indicate the version of the C
    standard which should be used to compile it, and for the
    installing user to specify this.  In most cases R defaults to the
    C compiler's default standard which is C17 (a `bug-fix' of C11) -
    earlier versions of R or compilers may have defaulted to C99.
    Current options are:
    USE_C17 Use a standard that is at most C17.  The intention is to
    allow legacy packages to still be installed when later C
    standards become the default, including packages using new
    keywords as identifiers or with K&amp;R-style function
    declarations.  This will use C17 if available, falling back
    to C11.
    USE_C90 Use the C90 (aka C89) standard.  (As that standard did
    not require compilers to identify that version, all we can
    verify is that the compiler does not claim to be using a
    later standard.  It may accept C99 features - for example
    clang accepts // to make comments.)
    USE_C99 Use the C99 standard. This should be rarely needed - it
    avoids the few new features of C11/C17 which can be useful if
    a package assumes them if C17 is specified and they are not
    implemented.
    USE_C23 Use C23 (or in future, later).  Compiler/library support
    for C23 is still being implemented, but LLVM clang from
    15.0.0 and the upcoming GCC 13 have quite extensive support.
    These can be specified as part of the SystemRequirements field in
    the package's DESCRIPTION file or _via_ options --use-C17 and so
    on of R CMD INSTALL and R CMD SHLIB.
    For further details see "Writing R Extensions" SS1.2.5.
  * (Windows) A src/Makefile.ucrt or src/Makefile.win file is now
    included after R_HOME/etcR_ARCH/Makeconf and so no longer needs
    to include that file itself.  Installation of a package with such
    a file now uses a site Makevars file in the same way as a package
    with a src/Makevars.win file would.
  * configure is now passed crucial variables such as CC and CFLAGS
    in its environment, as many packages were not setting them (as
    documented in 'Writing R Extensions' SS1.2).
    This has most effect where configure is used to compile parts of
    the package - most often by cmake or libtool which obfuscate the
    actual compile commands used.
    Also used for configure.win and configure.ucrt on Windows.
  FORTRAN FLAGS:
  * The flag -fno-optimize-sibling-calls is no longer forced for
    gfortran 7 and later.  It should no longer be needed now using
    'hidden' character-length arguments when calling BLAS/LAPACK
    routines from C/C++ is the default even for packages.  (Unless
    perhaps packages call Fortran code from C/C++ without using R's
    headers and without allowing for these arguments.)
  C-LEVEL FACILITIES:
  * The deprecated S-compatibility macros DOUBLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * The deprecated legacy typedefs of Sint and Sfloat in header R.h
    are no longer defined, and that header no longer includes header
    limits.h from C nor climits from C++.
  * New macro CAD5R() is provided in Rinternals.h and used in a few
    places in the R sources.
  * ALTREP now supports VECSXP vectors. Contributed by Gabor Csardi
    in PR#17620.
  * The Rcomplex definition (in header R_ext/Complex.h) has been
    extended to prevent possible mis-compilation when interfacing
    with Fortran (PR#18430).  The new definition causes compiler
    warnings with static initializers such as {1, 2}, which can be
    changed to {.r=1, .i=2}.
    Using the new definition from C++ depends on compiler extensions
    supporting C features that have not been incorporated into the
    C++ standards but are available in g++ and clang++: this may
    result in C++ compiler warnings but these have been worked around
    for recent versions of common compilers (GCC, Apple/LLVM clang,
    Intel).
    It is intended to change the inclusion of header R_ext/Complex.h
    by other R headers, so C/C++ code files which make use of
    Rcomplex should include that header explicitly.
  UTILITIES:
  * R CMD check does more checking of package .Rd files, warning
    about invalid email addresses and (some) invalid URIs and noting
    empty \item labels in description lists.
  * R CMD check now also reports problems when reading package news
    in md (file NEWS.md) and (optionally) plain text (file NEWS)
    formats.
  * _R_CHECK_TIMINGS_ defaults to a value from the environment even
    for R CMD check --as-cran; this allows for exceptionally fast or
    slow platforms.
    It now applies to checking PDF and HTML versions of the manuals,
    and 'checking CRAN incoming feasibility'.
  * R CMD check can optionally (but included in --as-cran) check
    whether HTML math rendering _via_ KaTeX works for the package .Rd
    files.
  * Non-interactive debugger invocations can be trapped by setting
    the environment variable _R_CHECK_BROWSER_NONINTERACTIVE_ to a
    true value.  This is enabled by R CMD check --as-cran to detect
    the use of leftover browser() statements in the package.
  * The use of sprintf and vsprintf from C/C++ has been deprecated in
    macOS 13 and is a known security risk.  R CMD check now reports
    (on all platforms) if their use is found in compiled code:
    replace by snprintf or vsnprintf respectively. [*NB:* whether
    such calls get compiled into the package is platform-dependent.]
  * Where recorded at installation, R CMD check reports the C and
    Fortran compilers used to build R.
    It reports the OS in use (if known, as given by osVersion) as
    well as that R was built for.
    It notes if a C++ standard was specified which is older than the
    current default: many packages have used C++11 to mean 'not
    C++98' - as C++11 is the minimum supported since R 4.0.0, that
    specification can probably be removed.
  * R CMD INSTALL reports the compilers (and on macOS, the SDK) used,
    and this is copied to the output of R CMD check.
    Where a C++ standard is specified, it is reported.
  * R CMD check's 'checking compilation flags in Makevars' has been
    relaxed to accept the use of flags such as -std=f2008 in
    PKG_FFLAGS.
  * tools::buildVignettes() has a new argument skip, which is used by
    R CMD check to skip (and note) vignettes with unavailable
    \VignetteDepends (PR#18318).
  * New generic .AtNames() added to enable class-specific completions
    after @. The formerly internal function findMatches() is now
    exported, mainly for use in methods for .DollarNames() and
    .AtNames().
  DEPRECATED AND DEFUNCT:
  * default.stringsAsFactors() is defunct.
  * Calling as.data.frame.&lt;class&gt;() directly (for 12 atomic classes)
    is going to be formally deprecated, currently activated by
    setting the environment variable
    _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ to non-empty, which also
    happens in R CMD check --as-cran.
  BUG FIXES:
  * Hashed environments with sizes less than 5 can now grow.
    (Reported to R-devel by Duncan Garmonsway.)
  * as.character(&lt;Rd&gt;, deparse = TRUE) failed to re-escape curly
    braces in LaTeX-like text.  (Reported by Hadley Wickham in
    PR#18324.)
  * library() now passes its lib.loc argument when requiring Depends
    packages; reported (with fix) in PR#18331 by Mikael Jagan.
  * R CMD Stangle: improved message about 'Output' files.
  * head(x, n) and tail(x, n) now signal an error if n is not
    numeric, instead of incidentally "working" sometimes returning
    all of x.  Reported and discussed by Colin Fay, in PR#18357.
  * The "lm" method for summary() now gives the correct F-statistic
    when the model contains an offset.  Reported in PR#18008.
  * C() and `contrasts&lt;-`() now preserve factor level names when
    given a function object (as opposed a function name which did
    preserve names). Reported in PR#17616.
  * c(a = 1, 2)[[]] no longer matches 2 but rather signals a
    _classed_ error.  Reported and analysed by Davis Vaughan in
    PR#18367, a duplicate of PR#18004, by Jan Meis et al.  For
    consistency, NULL[[]] is also erroneous now.  x[[]] &lt;- v gives an
    error of the same class "MissingSubscriptError".
  * The relist() function of utils now supports NULL elements in the
    skeleton (PR#15854).
  * ordered(levels = *) (missing x) now works analogously to factor(,
    ordered=TRUE); reported (with fix) by Achim Zeileis in PR#18389.
  * User-defined Rd macro definitions can now span multiple lines,
    thanks to a patch from Duncan Murdoch. Previously, the Rd parser
    silently ignored everything after the first line.
  * Plain-text help (tools::Rd2txt()) now preserves an initial blank
    line for text following description list items.
  * tools::Rd2HTML() and tools::Rd2latex() no longer split \arguments
    and \value lists at Rd comments.
  * tools::Rd2latex() now correctly handles optional text outside
    \items of argument lists as well as bracketed text at the
    beginning of sections, e.g., \value{[NULL]}.
  * as.character(&lt;POSIXt&gt;) now behaves more in line with the methods
    for atomic vectors such as numbers, and is no longer influenced
    by options().  Ditto for as.character(&lt;Date&gt;).  The
    as.character() method gets arguments digits and OutDec with
    defaults _not_ depending on options().  Use of as.character(*,
    format = .) now warns.
  * Similarly, the as.character.hexmode() and *.octmode() methods
    also behave as good citizen methods and back compatibility option
    keepStr = TRUE.
  * The as.POSIXlt(&lt;POSIXlt&gt;) and as.POSIXct(&lt;POSIXct&gt;) default
    methods now do obey their tz argument, also in this case.
  * as.POSIXlt(&lt;Date&gt;) now does apply a tz (time zone) argument, as
    does as.POSIXct(); partly suggested by Roland Fuss on the R-devel
    mailing list.
  * as.Date.POSIXlt(x) now also works when the list components are of
    unequal length, aka "partially filled" or "ragged".
  * expand.model.frame() looked up variables in the wrong environment
    when applied to models fitted without data.  Reported in
    PR#18414.
  * time() now (also) uses the ts.eps = getOption("ts.eps") argument
    and thus by default rounds values very close to the start (or
    end) of a year.  Based on a proposal by Andre"i V. Kostyrka on
    R-help.
  * Printing of a factanal() result with just one factor and sort =
    TRUE now works regularly, fixing PR#17863 by Timothy Bates,
    thanks to the 'R Contributors' working group.
  * Printing 0-length objects of class "factor", "roman", "hexmode",
    "octmode", "person", "bibentry", or "citation" now prints
    something better, one of which fixes PR#18422, reported by
    Benjamin Feakins.
  * Sys.timezone() queries timedatectl only if systemd is loaded;
    addressing a report by Jan Gorecki in PR#17421.
  * The formula method of cor.test() had scoping problems when
    environment(formula) was not the calling environment; reported
    with a patch proposal by Mao Kobayashi in PR#18439.
  * attach() of an environment with active bindings now preserves the
    active bindings.  Reported by Kevin Ushey in PR#18425.
  * BLAS detection now works also with system-provided libraries not
    available as regular files.  This fixes detection of the
    Accelerate framework on macOS since Big Sur.  Reported by David
    Novgorodsky.
  * download.file() gives a helpful error message in case of an
    invalid download.file.method option, thanks to Colin Fay's report
    in PR#18455.
  * Sporadic crashes of Rterm when using completion have been fixed.
  * Rprof() is now more reliable.  A livelock in thread
    initialization with too short sampling interval has been fixed on
    macOS.  A deadlock in using the C runtime has been fixed on
    Windows.  A potential deadlock has been prevented on Unix.
  * Cursor placement in Rgui now works even after a fixed-width font
    is selected.
  * Mandatory options (options()) are now set on startup so that
    saving and restoring them always works (PR#18372).
  * Package installation, R CMD INSTALL or install.packages(*), now
    parses each of the &lt;pkg&gt;/R/*.R files individually instead of
    first concatenating and then parse()ing the large resulting file.
    This allows parser or syntax errors to be diagnosed with correct
    file names and line numbers, thanks to Simon Dedman's report and
    Bill Dunlap's patch in PR#17859.
    This _does_ require syntactically self contained R source files
    now, fixing another inadvertent bug.
  * predict.lm(&lt;model with offset&gt;) now finds the offset in the
    correct environment, thanks to Andr'e Gillibert's report and patch
    in PR#18456.
  * getInitial(&lt;formula&gt;) now finds the selfStart model in the
    correct environment.  (Reported by Ivan Krylov in PR#18368.)
  * Fix for possible segfault when using recently-added graphics
    features, such as gradients, clipping paths, masks, and groups
    with pdf(file=NULL).
  * class(m) &lt;- class(m) no longer changes a matrix m by adding a
    class _attribute_.
  * packageDate(pkg) now only warns once if there is no pkg.
  * When ts() creates a multivariate time series, "mts", it also
    inherits from "array" now, and is.mts() is documented _and_
    stricter.
  * Rd2txt() now preserves line breaks of \verb Rd content and from
    duplicated \cr.  The former also fixes the rendering of verbatim
    output from Rd \Sexpr in plain-text help.
  * uniroot(f, interval) should no longer wrongly converge _outside_
    the interval in some cases where abs(f(x)) == Inf for an x at the
    interval boundary, thanks to posts by Ben Bolker and Serguei
    Sokol on R-devel.
  * Vectorized alpha handling in palette functions such as in gray(),
    rainbow(), or hcl.colors() works correctly now, thanks to Achim
    Zeileis' report and patch in PR#18476.
  * Formatting and print()ing of bibentry objects has dropped the
    deprecated citation.bibtex.max argument, such that the bibtex
    argument's default for print.bibentry() depends directly on the
    citation.bibtex.max option, whereas in format.bibentry() the
    option no longer applies.
  * Attempting to use a character string naming a foreign function
    entry point in a foreign function call in a package will now
    signal an error if the packages has called R_forceSymbols to
    specify that symbols must be used.
  * An error in table() could permanently set options(warn=2)
    promoting all subsequent warnings to errors.
  * The sigma() function gave misleading results for binary GLMs.  A
    new method for objects of class "glm" returns the square root of
    the estimate of the dispersion parameter using the same
    calculation as summary.glm().
  * bs() and ns() in the (typical) case of automatic knot
    construction, when some of the supposedly inner knots coincide
    with boundary knots, now moves them inside (with a warning),
    building on PR#18442 by Ben Bolker.
  * R CMD on Windows now skips the site profile with --no-site-file
    and --vanilla even when R_PROFILE is set (PR#18512, from Kevin
    Ushey).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1686916800">- CHANGES IN R 4.3.1:
  C-LEVEL FACILITIES:
  * The C-level API version of R's integrate(), Rdqags() in Applic.h,
    now returns the correct number of integrand evaluations neval,
    fixing PR#18515 reported and diagnosed by Stephen Wade.
  * The C prototypes for LAPACK calls dspgv and dtptrs in
    R_exts/Lapack.h had one too many and one too few character length
    arguments - but this has not caused any known issues. To get the
    corrected prototypes, include
    [#]include &lt;Rconfig.h&gt; // for PR18534fixed
    [#]ifdef PR18534fixed
    [#] define usePR18534fix 1
    [#]endif
    [#]include &lt;R_exts/Lapack.h&gt;
    in your C/C++ code (PR#18534).
  INSTALLATION:
  * Many of the checks of esoteric Internet operations and those
    using unreliable external sites have been moved to a new target
    that is not run by default and primarily intended for the core
    developers.  To run them use
    cd tests; make test-Internet-dev
  BUG FIXES:
  * .S3methods(), typically called from methods(), again marks
    methods from package base as visible.
    Also, the visibility of non-base methods is again determined by
    the method's presence in search().
  * tools::Rdiff() is now more robust against invalid strings, fixing
    installation tests on Windows without Rtools installed
    (PR#18530).
  * Fix (new) bug in hcl.colors(2, *), by Achim Zeileis (PR#18523).
  * head(., &lt;illegal&gt;) and tail(..) now produce more useful "Error in
    ...." error messages, fixing PR#18362.
  * Package code syntax on Windows is checked in UTF-8 when UTF-8 is
    the native encoding.
  * na.contiguous(x) now also returns the first run, when it is at
    the beginning and there is a later one of the same length;
    reported to R-devel, including a fix, by Georgi Boshnakov.
    Further, by default, it modifies only an existing attr(*,"tsp")
    but otherwise no longer sets one.
  * chol(&lt;not pos.def&gt;, pivot = &lt;T|F&gt;) now gives a correct error or
    warning message (depending on pivot), thanks to Mikael Jagan's
    (PR#18541).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1699012800">- CHANGES IN R 4.3.2:
  NEW FEATURES:
  * The default initialization of the "repos" option from the
    repositories file at startup can be skipped by setting
    environment variable R_REPOSITORIES to NULL such that
    getOption("repos") is empty if not set elsewhere.
  * qr.X() is now an implicit S4 generic in methods.
  * iconv(to = "ASCII//TRANSLIT") is emulated using substitution on
    platforms which do not support it (notably Alpine Linux).  This
    should give a human-readable conversion in ASCII on all platforms
    (rather than NA_character_).
  * trans3d() gains options continuous and verbose addressing the
    problem of possible "wrap around" when projecting too long
    curves, as reported by Achim Zeileis in PR#18537.
  * tools::showNonASCII() has been rewritten to work better on macOS
    14 (which has a changed implementation of iconv()).
  * tiff(type = "quartz") (the default on macOS) now warns if
    compression is specified: it continues to be ignored.
  INSTALLATION on a UNIX-ALIKE:
  * There is some support for building with Intel's LLVM-based
    compilers on x86_64 Linux, such as (C) icx, (C++) ipcx and
    (Fortran) ifx from oneAPI 2023.x.y.
  * There is support for using LLVM's flang-new as the Fortran
    compiler from LLVM 16.0.x (preferably 17.0.0 or later).
  UTILITIES:
  * R CMD check reports the use of the Fortran 90 random number
    generator RANDOM_NUMBER() and the subroutines to initialize it.
    'Writing R Extensions' has example code to use R's RNGs from
    Fortran.
  BUG FIXES:
  * substr(x, n, L) &lt;- cc now works (more) correctly for multibyte
    UTF-8 strings x when L &gt; nchar(x), thanks to a report and patch
    by 'Architect 95'.
  * contrib.url(character()) now returns 0-length character() as
    documented, which also avoids spurious warnings from
    available.packages() et al. in the edge case of an empty vector
    of repository URLs.
  * readChar(., 4e8) no longer fails, thanks to Kodi Arfer's report
    (PR#18557).
  * lapply(&lt;list&gt;, as.data.frame) no longer warns falsely for some
    base vector components.
  * Communication between parent and child processes in the multicore
    part of parallel could fail on platforms that do not support an
    arbitrarily large payload in system functions read()/write() on
    pipes (seen on macOS where a restriction to INT_MAX bytes is
    documented, without doing a partial read unlike Linux). The
    payload is now split into 1Gb chunks to avoid that problem.
    (PR#18571)
  * qqplot(x,y, conf.level=.) gives better confidence bounds when
    length(x) != length(y), thanks to Alexander Ploner's report and
    patch proposal (PR#18557).
  * norm(&lt;0-length&gt;, "2") now gives zero instead of an error, as all
    the other norm types, thanks to Mikael Jagan's PR#18542.
  * Build-stage Rd macros \packageAuthor and \packageMaintainer now
    process Authors@R, fixing NA results when the package DESCRIPTION
    omits Author and Maintainer fields.
  * Formatting and printing complex numbers could give things like
    0.1683-0i because of rounding error: -0i is now replaced by +0i.
  * postscript() refused to accept a title comment containing the
    letter "W" (PR#18599).
  * isoreg(c(1,Inf)) signals an error instead of segfaulting, fixing
    PR#18603.
  * tiff(type = "Xlib") was only outputting the last page of
    multi-page plots.
  * tools::latexToUtf8() again knows about \~{n} and other letters
    with tilde, fixing a regression in R 4.3.0, and about \^{i} as an
    alternative to \^{\i} (similarly with other accents).
    Furthermore, LaTeX codes for accented I letters are now correctly
    converted, also fixing related mistakes in
    tools::encoded_text_to_latex().
  * tar(*, tar = "internal") no longer creates out-of-spec tar files
    in the very rare case of user or group names longer than 32
    bytes, fixing PR#17871 with thanks to Ivan Krylov.
  * When using the "internal" timezone datetime code, adding a
    fraction of a second no longer adds one second, fixing PR#16856
    from a patch by Ivan Krylov.
  * tools::checkRd() no longer produces spurious notes about
    "unnecessary braces" from multi-line Rd results of \Sexpr macros.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1709208000">- CHANGES IN R 4.3.3:
  NEW FEATURES:
  * iconv() now fixes up variant encoding names such as "utf8"
    case-insensitively.
  DEPRECATED AND DEFUNCT:
  * The legacy encoding = "MacRoman" is deprecated in pdf() and
    postscript(): support was incomplete in earlier versions of R.
  BUG FIXES:
  * Arguments are now properly forwarded to methods on S4 generics
    with ... in the middle of their formal arguments. This was broken
    for the case when a method introduced an argument but did not
    include ... in its own formals. Thanks to Herv'e Pag`es for the
    report PR#18538.
  * Some invalid file arguments to pictex(), postscript() and xfig()
    opened a file called NA rather than throw an error.  These
    included postscript(NULL) (which some people expected to work
    like pdf(NULL)).
  * Passing filename = NA to svg(), cairo_pdf(), cairo_ps() or the
    Cairo-based bitmap devices opened a file called NA: it now throws
    an error.
  * quartz(file = NA) opened a file called NA, including when used as
    a Quartz-based bitmap device.  It now gives an error.
  * rank(&lt;long vector&gt;) now works, fixing PR#18617, thanks to Ilia
    Kats.
  * seq.int() did not adequately check its length.out argument.
  * match(&lt;POSIXct&gt;, .) is correct again for differing time zones,
    ditto for "POSIXlt", fixing PR#18618 reported by Bastian Klein.
  * drop.terms(*, dropx = &lt;0-length&gt;) now works, fixing PR#18563 as
    proposed by Mikael Jagan.
  * drop.terms(*) keeps + offset(.) terms when it should, PR#18565,
    and drop.terms() no longer makes up a response, PR#18566, fixing
    both bugs thanks to Mikael Jagan.
  * getS3method("t", "test") no longer finds the t.test() function,
    fixing PR#18627.
  * pdf() and postscript() support for the documented Adobe encodings
    "Greek" and "Cyrilllic" was missing (although the corresponding
    Windows' codepages could be used).
  * Computations of glyph metric information for pdf() and
    postscript() did not take into account that transliteration could
    replace one character by two or more (only seen on macOS 14) and
    typically warned that the information was not known.
  * rank(x) no longer overflows during integer addition, when
    computing rank average for largish but not-yet long vector x,
    fixing PR#18630, thanks to Ilia Kats.
  * list.files() on Windows now returns also files with names longer
    that 260 bytes (the Windows limit is 260 characters).
    Previously, some file names particularly with 'East Asian'
    characters were omitted.
  * cov2cor(&lt;0 x 0&gt;) now works, fixing PR#18423 thanks to Mikael
    Jagan and Elin Waring.
  * cov2cor(&lt;negative diagonal&gt;) and similar now give one warning
    instead of two, with better wording, fixing PR#18424 thanks to
    Mikael Jagan.
  * tools:: startDynamicHelp() now ensures port is in proper range,
    fixing PR#18645.
  * pbeta(x, a,b) is correct now for x=0 or 1 in the boundary cases
    where a or b or both are 0, fixing PR#18672 thanks to Michael
    Fay.
  * pmatch(x, table) for large table, also called for data frame row
    selection, dfrm[nm, ], is now interruptible, fixing PR#18656.
  * predict(&lt;rank-deficient lm&gt;, newdata=*) fix computing of nbasis,
    see Russ Lenth's comment 29 in PR#16158.
  * Added a work-around for a bug in macOS 14.3.1 and higher which
    prevents R plots in the Quartz Cocoa device from updating on
    screen.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1713960000">- CHANGES IN R 4.4.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Startup banners, R --version, sessionInfo() and R CMD check no
    longer report (64-bit) as part of the platform as this is almost
    universal - the increasingly rare 32-bit platforms will still
    report (32-bit).
    On Windows, ditto for window titles.
  * is.atomic(NULL) now returns FALSE, as NULL is not an atomic
    vector.  Strict back-compatibility would replace is.atomic(foo)
    by (is.null(foo) || is.atomic(foo)) but should happen only
    sparingly.
  NEW FEATURES:
  * The confint() methods for "glm" and "nls" objects have been
    copied to the stats package.  Previously, they were stubs which
    called versions in package MASS. The MASS namespace is no longer
    loaded if you invoke (say) confint(glmfit).  Further, the "glm"
    method for profile() and the plot() and pairs() methods for class
    "profile" have been copied from MASS to stats.  (profile.nls()
    and plot.profile.nls() were already in stats.)
  * The confint() and profile methods for "glm" objects have gained a
    possibility to do profiling based on the Rao Score statistic in
    addition to the default Likelihood Ratio. This is controlled by a
    new test = argument.
  * The pairs() method for "profile" objects has been extended with a
    which = argument to allow plotting only a subset of the
    parameters.
  * The "glm" method for anova() computes test statistics and
    p-values by default, using a chi-squared test or an F test
    depending on whether the dispersion is fixed or free.  Test
    statistics can be suppressed by giving argument test a false
    logical value.
  * In setRepositories() the repositories can be set using their
    names via name = instead of index ind =.
  * methods() and .S3methods() gain a all.names option for the (rare)
    case where functions starting with a . should be included.
  * Serializations can now be interrupted (e.g., by Ctrl-C on a
    Unix-alike) if they take too long, e.g., from save.image(),
    thanks to suggestions by Ivan Krylov and others on R-devel.
  * New startup option --max-connections to set the maximum number of
    simultaneous connections for the session.  Defaults to 128 as
    before: allowed values up to 4096 (but resource limits may in
    practice restrict to smaller values).
  * R on Windows (since Windows 10 2004) now uses the new Segment
    Heap allocator. This may improve performance of some
    memory-intensive applications.
  * When R packages are built, typically by R CMD build &lt;pkg&gt;, the
    new --user=&lt;build_user&gt; option overrides the (internally
    determined) user name, currently Sys.info()["user"] or LOGNAME.
    This is a (modified) fulfillment of Will Landau's suggestion in
    PR#17530.
  * tools::testInstalledBasic() gets new optional arguments outDir
    and testSrcdir, e.g., allowing to use it in a &lt;builddir&gt; !=
    &lt;srcdir&gt; setup, and in standard "binary" Windows installation
  * if* a source tests/ folder is present.
  * range(&lt;DT_with_Inf&gt;, finite = TRUE) now work for objects of class
    "Date", "POSIXct", and "POSIXlt" with infinite entries,
    analogously to range.default(), as proposed by Davis Vaughan on
    R-devel.  Other range()-methods can make use of new function
    .rangeNum().
  * New .internalGenerics object complementing .S3PrimitiveGenerics,
    for documentation and low-level book-keeping.
  * grid() now invisibly returns the x- and y- coordinates at which
    the grid-lines were drawn.
  * norm(., type) now also works for complex matrices.
  * kappa(., exact = TRUE, norm = *) now works for all norms and also
    for complex matrices.  In symmetric / triangular cases, the new
    argument uplo = "U" | "L" allows the upper or lower triangular
    part to be specified.
  * memDecompress(type = "unknown") recognizes compression in the
    default 'zlib' format as used by memCompress(type = "gzip").
  * memCompress() and memDecompress() will use the libdeflate library
    (&lt;https://github.com/ebiggers/libdeflate&gt;) if installed.  This
    uses the same type of compression for type = "gzip" but is 1.5-2x
    faster than the system libz library on some common platforms: the
    speed-up may depend on the library version.
  * diff() for objects of class "Date", "POSIXct", and "POSIXlt"
    accepts a units argument passed via ....
  * Dynamic help now does a much better job of rendering package
    DESCRIPTION metadata.
  * Rprof() gains an event argument and support for elapsed (real)
    time profiling on Unix (PR#18076).
  * filled.contour() gains a key.border argument.
  * tools::update_pkg_po() gets arguments pot_make and mo_make for
    _not_ re-making the corresponding files, and additionally a
    verbose argument.
  * Hexadecimal string colour specifications are now accepted in
    short form, so, for example, we can use "#123", which is
    equivalent to "#112233".
    Thanks to MikeFC for the original idea and Ella Kaye, Malcolm
    Barrett, George Stagg, and Hanne Oberman for the patch.
  * Plain-text help shows \var markup by angle brackets.
  * The new experimental primitive function declare() is intended to
    eventually allow information about R code to be communicated to
    the interpreter, compiler, and code analysis tools. The syntax
    for declarations is still being developed.
  * Functions psmirnov(), qsmirnov() and rsmirnov() in package stats
    have had argument two.sided renamed to alternative, to take into
    account that the permutation distributions of the one-sided
    statistics can be different in the case of ties.  Consequence of
    PR#18582.
  * sort() is now an implicit S4 generic in methods.
  * Formatting and printing, format(z), print(z), of complex vectors
    z no longer zap relatively small real or imaginary parts to zero,
    fixing PR#16752.  This is an API change, as it was documented
    previously to round real and imaginary parts together on purpose,
    producing nicer looking output.  As mentioned, e.g. in the PR,
    this change is compatible with many other "R-like" programming
    environments.
    We have simplified the internal code and now basically format the
    real and imaginary parts independently of each other.
  * New experimental functions Tailcall() and Exec() to support
    writing stack-space-efficient recursive functions.
  * Where characters are attempted to be plotted by pdf(),
    postscript() and xfig() which are not in the selected 8-bit
    character set (most often Latin-1) and the R session is using a
    UTF-8 locale, the warning messages will show the UTF-8 character
    rather than its bytes and one dot will be substituted per
    character rather than per byte.  (Platforms whose iconv() does
    transliteration silently plot the transliteration.)
    In a UTF-8 locale some transliterations are now done with a
    warning (e.g., dashes and Unicode minus to hyphen, ligatures are
    expanded, permille (‰) is replaced by o/oo), although the OS may
    have got there first.  These are warnings as they will continue
    to be replaced by dots in earlier versions of R.
  * The matrix multiplication functions crossprod() and tcrossprod()
    are now also primitive and S3 generic, as %*% had become in R
    4.3.0.
  * source() and example() have a new optional argument catch.aborts
    which allows continued evaluation of the R code after an error.
  * The non-Quartz tiff() devices allow additional types of
    compression if supported by the platform's libtiff library.
  * The list of base and recommended package names is now provided by
    tools::standard_package_names().
  * cairo_pdf() and cairo_ps() default to onefile = TRUE to closer
    match pdf() and postscript().
  * New option catch.script.errors provides a documented way to catch
    errors and then continue in non-interactive use.
  * L %||% R newly in base is an expressive idiom for the phrases
    if(!is.null(L)) L else R or if(is.null(L)) R else L.
  * The return value from warnings() now always inherits from
    "warnings" as documented, now also in the case of no warnings
    where it previously returned NULL.
  * as.complex("1i") now returns 0 + 1i instead of NA with a warning.
  * z &lt;- c(NA, 1i) now keeps the imaginary part Im(z[1]) == 0, no
    longer coercing to NA_complex_.  Similarly, cumsum(z) correctly
    sums real and imaginary parts separately, i.e., without
    "crosstalk" in case of NAs.
  * On Alpine Linux iconv() now maps "latin2", "latin-2", "latin9"
    and "latin-9" to encoding names the OS knows about
    (case-insensitively).
  * iconv(sub = "Unicode") now always zero-pads to four (hex) digits,
    rather than to 4 or 8.  (This seems to have become the convention
    once Unicode restricted the number of Unicode points to 2^21 - 1
    and so will never need more than 6 digits.)
  * NCOL(NULL) now returns 0 instead of 1, for consistency with
    cbind().
  * The information for the Euro glyph missing from the Adobe .afm
    files for the Courier, Helvetica and Times families has been
    copied from their URW equivalents - this will improve vertical
    centring in the pdf() and postscript() devices.
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.12.0.  The changes are almost entirely cosmetic.
  * The included LAPACK sources have been updated to version 3.12.0
    and some further double-complex routines added.
  * There are new font families for the 2014--5 URW 2.0 fonts (see
    ?pdf) which are included in recent versions of Ghostscript.
    These have font widths for most Greek glyphs and a few others
    which were missing from the original versions (whose font
    families remain available for reproducibility, although
    Ghostscript-based viewers will render using the 2.0 versions).
  * Improve the large-n efficiency of as.matrix(&lt;dist&gt;), thanks an R
    contributors effort, notably by Tim Taylor and Heather Turner,
    see PR#18660.
  * The default and numeric methods of all.equal() get a check.class
    option.
  * zapsmall() gets new optional arguments, function mFUN and min.d,
    for extra flexibility; fulfills a wish in PR#18199.  Also, it is
    now an implicit S4 generic in package methods.
  * The Rd filter for aspell() gains an ignore argument.
  * New generic function sort_by(), primarily useful for the
    data.frame method which can be used to sort rows of a data frame
    by one or more columns.
  * The icence headers for the RPC code in src/extra/xdr have been
    updated to use the GPL-compatible licence published by Oracle
    America in 2010.
  * New function pkg2HTML() in tools to create single-page HTML
    reference manuals for R packages.
  * The byte code evaluator now uses less C stack space for recursive
    calls to byte-compiled functions. It also makes more of an effort
    to avoid allocations for scalar return values.
  * New completion option backtick (disabled by default) allows
    non-syntactic completions to be wrapped in backquotes. This is
    currently only useful for Jupyter notebooks via the IRkernel
    package, and may cause problems for other backends.
  INSTALLATION:
  * The parser has been updated to work with bison 3.8.2, which is
    now used for the pre-generated parsers in gram.c, file.c, and
    gramRd.c. A few parser error messages have changed, which may
    affect code that relies on exact messages.
  INSTALLATION on a UNIX-ALIKE:
  * System valgrind headers are now required to use configure option
  - -with-valgrind-instrumentation with value 1 or 2.
  * configure will warn if it encounters a 32-bit build, as that is
    nowadays almost untested.
  * Environment variable R_SYSTEM_ABI is no longer used and so no
    longer recorded in etc/Renviron (it was not on Windows and was
    only ever used when preparing package tools).
  * If the libdeflate library and headers are available, libdeflate
    rather than libz is used to (de)compress R objects in lazy-load
    databases.  Typically tasks spend up to 5% of their time on such
    operations, although creating lazy-data databases is one of the
    exceptions.
    This can be suppressed if the library is available by the
    configure option --without-libdeflate-compression.
  * configure option --enable-lto=check has not worked reliably since
    2019 and has been removed.
  * The minimum autoconf requirement for a maintainer build has been
    increased to autoconf 2.71.
    It is intended to increase this to 2.72 for R 4.5.0: the
    distributed configure file was generated using 2.72.
  * The minimum version requirement for an external LAPACK has been
    reduced to 3.9.0.
  * No default C++ compiler is set if no C++17 compiler is detected:
    there is no longer an automatic fallback to C++14 or C++11.
    Compilers from the last five years should have sufficient
    support: for others macros CXX and CXXSTD can be set in file
    config.site to provide a fallback if needed.
    The Objective-C++ compiler now by default uses the standard
    selected by R for C++ (currently C++17) rather than the default
    standard for the C++ compiler (which on macOS is still C++98).
  INSTALLATION on macOS:
  * A new configure option --with-newAccelerate makes use of Apple's
    'new' BLAS / LAPACK interfaces in their Accelerate framework.
    Those interfaces are only available in macOS 13.3 or later, and
    building requires SDK 13.3 or later (from the Command Line Tools
    or Xcode 14.3 or later).
    By default the option uses new Accelerate for BLAS calls: to also
    use it for LAPACK use option --with-newAccelerate=lapack.  The
    later interfaces provide LAPACK 3.9.1 rather than 3.2.1: 3.9.1 is
    from 2021-04 and does not include the improved algorithms
    introduced in LAPACK 3.10.0 (including for BLAS calls).
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools44, an update of the Rtools43 toolchain.  It is
    based on GCC 13 and newer versions of MinGW-W64, binutils and
    libraries (targeting 64-bit Intel CPUs).  R-devel can no longer
    be built using Rtools43 without changes.
  * Rtools44 has experimental support for 64-bit ARM (aarch64) CPUs
    _via_ the LLVM 17 toolchain using lld, clang/flang-new and
    libc++.
  UTILITIES:
  * R CMD check notes when S4-style exports are used without
    declaring a strong dependence on package methods.
  * tools::checkRd() (used by R CMD check) detects more problems with
    \Sexpr-based dynamic content, including bad nesting of \Sexprs
    and invalid arguments.
  * tools::checkRd() now reports Rd titles and section names ending
    in a period; this is ignored by R CMD check unless environment
    variable _R_CHECK_RD_CHECKRD_MINLEVEL_ is set to -5 or smaller.
  * R CMD check now notes Rd files without an \alias, as long
    documented in 'Writing R Extensions' §1.3.1.  The check for a
    missing \description has been moved from tools::checkRd() to
    tools::checkRdContents().
  * R CMD check now visits inst/NEWS.Rd and OS-specific man
    subdirectories when checking Rd files.
  * tools::checkDocFiles() and tools::checkRdContents() now also
    check internal Rd files by default, but "specially" (ignoring
    missing documentation of arguments).
  * R CMD Rdiff gets option --useEx.
  * R CMD check now warns on non-portable uses of Fortran KIND such
    as INTEGER(KIND=4) and REAL(KIND=8).
    To see the failing lines set environment variable
    _R_CHECK_FORTRAN_KIND_DETAILS_ to a true value.
  * When checking Rd files, R CMD check now notes some of the "lost
    braces" that tools::checkRd() finds.  Typical problems are Rd
    macros missing the initial backslash (e.g., code{...}), in-text
    set notation (e.g., {1, 2}, where the braces need escaping), and
    \itemize lists with \describe-style entries of the form
    \item{label}{description}.
  * R CMD INSTALL (and hence check) will compile C++ code with
  - DR_NO_REMAP if environment variable _R_CXX_USE_NO_REMAP_ is set
    to a true value.  It is planned that this will in future become
    the default for compiling C++.
  * The new built-in Rd macro \dontdiff{} can be used to mark example
    code whose output should be ignored when comparing check output
    to reference output (tests/Examples/&lt;pkg&gt;-Ex.Rout.save).  The
    \dontdiff tag, like \donttest, is _not_ shown on the rendered
    help page, so provides a clean alternative to ##
    IGNORE_RDIFF_(BEGIN|END) comments.
  * R CMD build when there is no NAMESPACE, now uses the recommended
    exportPattern("^[^.]"), instead of exporting everything.
  * R CMD check now warns about non-ASCII characters in the NAMESPACE
    file (in addition to R files). Such packages are not portable and
    may fail to install on some platforms.
  C-LEVEL FACILITIES:
  * Headers R_ext/Applic.h and R-ext/Linpack.h used to include
    R_ext/BLAS.h although this was undocumented and unneeded by their
    documented entry points.  They no longer do so.
  * New function R_missing(), factored out from do_missing(), used to
    fix PR#18579.
  * SEXP type S4SXP has been renamed to OBJSXP to support
    experimenting with alternative object systems.  The S4SXP value
    can still be used in C code but is now deprecated.  Based on
    contributions from the R Consortium's Object-Oriented Programming
    Working Group.
  * New function pow1p(x,y) for accurate (1+x)^y.
  * mkCharLenCE was incorrectly documented to take a size_t length
    but was implemented with int (and character strings in R are
    limited to 2^31 - 1 bytes).
  DEPRECATED AND DEFUNCT:
  * data() no longer handles zipped data from long-defunct (since R
    2.13.0) --use-zip-data installations.
  * The legacy graphics devices pictex() and xfig() are now
    deprecated.  They do not support recent graphics enhancements and
    their font handling is rudimentary. The intention is to retain
    them for historical interest as long as they remain somewhat
    functional.
  * Support for encoding = "MacRoman" has been removed from the pdf()
    and postscript() devices - this was a legacy encoding supporting
    classic macOS up to 2001 and no longer has universal libiconv
    support.
  * is.R() is deprecated as no other S dialect is known to be in use
    (and this could only identify historical dialects, not future
    ones).
    Further information on calls can be obtained by setting the
    environment variable _R_DEPRECATED_IS_R_ to error which turns the
    deprecation warning into an error and so by default gives a
    traceback.  (This is done by R CMD check --as-cran.)
  * UseMethod() no longer forwards local variables assigned in the
    generic function into method call environments before evaluating
    the method body. This makes method calls behave more like
    standard function calls and makes method code easier to analyze
    correctly.
  * The twelve as.data.frame.&lt;class&gt;() methods which were deprecated
    only via _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ and in R CMD
    check --as-cran are formally deprecated now in favour of calling
    as.data.frame() or as.data.frame.vector().  The deprecation
    "check" now works also when as.data.frame() is S4 generic thanks
    to Ivan Krylov.
  * The default method for the directional comparison operators &lt;, &gt;,
    &lt;=, and &gt;= now signals an error when one of the operands is a
    language object, i.e. a symbol or a call.
  * For terms.formula(), deprecate abb and neg.out arguments
    _formally_ in addition to just documenting it.
  BUG FIXES:
  * The methods package is more robust to not being attached to the
    search path.  More work needs to be done.
  * pairwise.t.test() misbehaved when subgroups had 0 DF for
    variance, even with pool.sd = TRUE.  (PR#18594 by Jack Berry).
  * Probability distribution functions [dpq]&lt;distrib&gt;(x, *), but also
    bessel[IKJY](x, .) now consistently preserve attributes(x) when
    length(x) == 0, e.g., for a 2 x 0 matrix, thanks to Karolis
    Koncevičius' report PR#18509.
  * Group "Summary" computations such as sum(1:3, 4, na.rm = 5, NA,
    7, na.rm = LL) now give an error instead of either 17 or NN for
    LL true or false, as proposed by Ivan Krylov on the R-devel
    mailing list.  (This also means it is now an error to specify
    na.rm more than once.)
  * as.complex(x) now returns complex(real = x, imaginary = 0) for
    _all_ numerical and logical x, notably also for NA or
    NA_integer_.
  * Directories are now omitted by file.copy(, recursive = FALSE) and
    in file.append() (PR#17337).
  * gsub() and sub() are now more robust to integer overflow when
    reporting errors caused by too large input strings (PR#18346).
  * Top-level handlers are now more robust to attempts to remove a
    handler whilst handlers are running (PR#18508).
  * The handling of Alt+F4 in dialogs created on Windows using
    GraphApp has been fixed (PR#13870).
  * density() more consistently computes grid values for the
    FFT-based convolution, following Robert Schlicht's analysis and
    proposal in PR#18337, correcting density values typically by a
    factor of about 0.999.  Argument old.coords = TRUE provides back
    compatibility.
  * palette.colors() gains a name argument that defaults to FALSE
    controlling whether the vector of colours that is returned has
    names (where possible).  PR#18529.
  * tools::xgettext() no longer extracts the (non-translatable) class
    names from warningCondition and errorCondition calls.
  * S3method(&lt;gen&gt;, &lt;class&gt;, &lt;func&gt;) in the NAMESPACE file now works
    (again) when &lt;func&gt; is visible from the namespace, e.g.,
    imported, or in base.
  * getParseData(f) now also works for a function defined in the
    first of several &lt;pkg&gt;/R/*.R source files, thanks to Kirill
    Müller's report and Duncan Murdoch's patch in PR#16756.
  * Rd \Sexpr macros with nested #ifdef conditionals were not
    processed.
  * A non-blocking connection with non-default encoding (such as a
    socket) now correctly returns from readLines() after new data has
    arrived also when its EOF had been reached previously.  Thanks to
    Peter Meilstrup's report on R-devel and Ivan Krylov's report and
    patch proposal in PR#18555.
  * tools::checkRdContents() failed to detect empty argument
    descriptions when they spanned multiple lines, including those
    generated by prompt().  These cases are now noted by R CMD check.
  * Plain-text help no longer outputs spurious colons in the
    arguments list (for multi-line \item labels in the Rd source).
  * kappa() and rcond() work correctly in more cases; kappa(., norm =
    "2") now warns that it computes the 1-norm with (default) exact =
    FALSE; prompted by Mikael Jagan's quite comprehensive PR#18543.
  * Rd skeletons generated by prompt() or promptData() now use a
    dummy title (so R CMD build works).  tools::checkRdContents() has
    been updated to detect such template leftovers, including from
    promptPackage().
  * When S4 method dispatch fails because no method was found, the
    error message now includes the signature argument names; thanks
    to Michael Chirico's proposal on the R-devel list.
  * withAutoprint({ .. }) now preserves srcrefs previously lost,
    thanks to Andrew Simmons' report plus fix in PR#18572.
  * transform.data.frame() no longer adjusts names; in particular,
    untransformed variables are kept as-is, including those with
    syntactically invalid names (PR#17890).
  * The keep.source option for Rd \Sexpr blocks is no longer ignored.
  * The formula methods for t.test() and wilcox.test() now catch when
    paired is passed, addressing PR#14359; use Pair(x1, x2) ~ 1 for a
    paired test.
  * The level reported in the browser prompt was often too large. It
    now shows the number of browser contexts on the stack.
  * For cbind() and rbind(), the optional deparse.level argument is
    now properly passed to methods, thanks to Mikael Jagan's PR#18579
    and comments there.
  * Some error and warning messages for large ('long vector')
    matrix(v, nr, nc) and dim(m) &lt;- d are now correct about sizes,
    using long long formatting, fixing PR#18612 (and more) reported
    by Mikael Jagan.
  * readChar(useBytes = TRUE) now terminates strings even when the
    underlying connection uses extra spaces in the input buffer.
    This fixes problems with extra garbage seen with gzip
    connections, PR#18605.
  * Named capture in PCRE regular expressions now works also with
    more than 127 named groups (PR#18588).
  * Datetime functions are now robust against long jumps when dealing
    with internal time zone changes.  This avoids confusing warnings
    about an invalid time zone, previously triggered by turning
    warnings into errors or handling them via tryCatch (PR#17966,
    PR#17780).
  * Datetime functions now restore even an empty TZ environment
    variable after internal time zone changes (PR#17724).  This makes
    results of datetime functions with this (typically unintentional)
    setting more predictable.
  * drop.terms(*) now drops response as by default, keep.response =
    FALSE, fixing PR#18564 thanks to Mikael Jagan.
  * dummy.coef(.) now also works for lm()-models with character
    categorical predictor variables rather than factor ones, fixing
    PR#18635 reported by Jinsong Zhao.
  * formals(f) &lt;- formals(f) now also works for a function w/o
    arguments and atomic _constant_ body(f).
  * Correct as.function(&lt;invalid list&gt;, .)'s error message.
  * removeSource() is yet more thorough in finding and removing
    "srcref" and the other source references from parsed R language
    chunks, fixing PR#18638 thanks to Andrew Simmons.
  * dgeom() is more accurate now, notably when its result is very
    small, fixing PR#18642 thanks to the proposal of Morten Welinder,
    also improving other instances where C level binom_raw(x, n, ..)
    has x == 0 or x== n.
  * warning() with options(warn = 1) has improved output for
    multi-line messages.
  * axis.Date() and axis.POSIXct() now respect the par("lab") setting
    for the number of pretty() intervals.
  * Comparisons for language objects (which are based on deparsing)
    are now more careful about using accurate deparsed results
    (PR#18676).
  * Plain-text help (Rd2txt) now correctly preserves blank lines
    following single-line \dontrun code.
  * &lt;POSIXlt&gt;[*] no longer sets wrong "balanced" attribute, fixing
    PR#18681 thanks to Mikael Jagan.
  * str(&lt;classed-call&gt;) now deparses the call as expected, fixing
    PR#18684, reported by Dave Slager.
  * In Rd examples, code following the closing brace of a \dontrun,
    \dontshow or \donttest tag on the same line is no longer skipped
    when R CMD check runs the examples.
  * as.data.frame(matrix(*, ncol=0)) now gets valid names() and
    colnames(); reported by Davis Vaughan on the R-devel list.
  * Internal Mathlib function stirlerr(n) is now almost fully
    (52-bit) accurate for all n &gt;= ~5.9 and more accurate also in the
    range 1 -- 5.9.  This entails small ("after 12th decimal")
    changes in density functions, e.g., dgamma() in _some_ regions of
    their support.  The fix was partly prompted by Morten Welinder's
    PR#18640.
  * Numbers like 9876543.2 are now considered non-integer by Mathlib
    internal R_nonint(), amending original fix of PR#15734.
  * Rd comment lines no longer cause broken paragraphs in the
    rendered PDF and plain-text help. In code blocks, pure comment
    lines (starting with %) no longer produce an empty line.
  * xtabs(Freq ~ .) now consistently defaults to na.action = na.pass,
    using na.rm = FALSE (added as an argument) when summing over Freq
    (PR#17770).
  * tools::testInstalledPackage() is no longer silent about failures
    from running examples or tests and its return code no longer
    ignores failures from checking vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1718366400">- CHANGES IN R 4.4.1:
  C-LEVEL FACILITIES:
  * Functions R_atof and R_strtod declared in header R_ext/Utils.h
    are now documented in 'Writing R Extensions' and so formally part
    of the API.
  * The non-API entry points Rf_setSVector, Rf_StringFalse,
    Rf_StringTrue and Rf_isBlankString have been added to those
    reported by R CMD check.
  * The new function Rf_allocLang is now available. This provides an
    alternative to the idiom of calling Rf_allocList followed by
    SET_TYPEOF.
  UTILITIES:
  * R CMD check now reports as warnings what gfortran calls 'Fortran
    2018 deleted features', all of which have long been marked as
    'obsolescent' and some of which were deleted in Fortran 2008 or
    earlier.  Fortran compilers are no longer required to support
    these.
  BUG FIXES:
  * as.numeric(), scan(), type.convert() and other places which use
    the internal C function R_strtod now require a _non-empty_ digit
    sequence in a decimal or binary exponent.  This aligns with the
    C/POSIX standard for strtod and with ?NumericConstants.
  * as.data.frame(m, make.names=NA) now works correctly for a matrix
    m with NA's in row names.
  * The error message from &lt;POSIXlt&gt;[["hour"]] and similar now
    mentions *[[, "hour"]], as wished for in PR#17409 and proposed by
    Michael Chirico.
  * qbinom() and potentially qpois(), qnbinom(), no longer sometimes
    fail accurate inversion (of pbinom(), etc), thanks to Christopher
    Chang's report and patch in PR#18711.
  * The internal help server on Windows can again serve requests sent
    in quick succession, fixing a regression in R 4.4.0.
  * debugcall(&lt;S3Generic&gt;()) now also works when a corresponding
    S4-generic version is in the methods cache (PR#18143).
  * Package tools' toTitleCase(ch0) now returns character(0) when ch0
    is of zero length; fixing PR#18724, reported by David Hugh Jones.
  * R CMD check is no longer broken (without a check result and no
    explanation in 00check.log) for a package which declares an
    invalid VignetteBuilder in DESCRIPTION but has no vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1730376000">- CHANGES IN R 4.4.2:
  C-LEVEL FACILITIES:
  * The S-compatibility macros F77_COM and F77_COMDECL defined in
    header R_ext/RS.h are deprecated and will be removed shortly.  We
    could find no record of their use.
  BUG FIXES:
  * Mathlib function lgammacor(x) no longer warns about underflow to
    zero for large x.
  * Text widths and heights were incorrectly reported by the Quartz
    device if the drawing context didn't exist yet (typically when
    drawing off-screen to a window that is yet to appear, see
    PR#18591).
  * The Quartz device could segfault in cases where paths with spaces
    are used in the new glyph drawing API.  Thanks to Tomek
    Gieorgijewski (PR#18758).
  * On macOS in R CRAN builds, it is again possible to read
    little-endian UTF-16 text with a BOM from a connection using
    encoding="UTF-16".  Users building R from source should avoid
    using the system libiconv in macOS 14.1 and later.
  * methods' internal .requirePackage() now re-enables primitive
    method dispatch when needed; thanks to Ivan Krylov for
    demystifying CRAN package check failures on the R-devel mailing
    list.</changelog>
</package>
<package pkgid="9167280df94b379371adf68e19a9a5b5ebb456f520de1bc0bcd7df23e4ecc404a6d2a42a90661ea426b11fc2b0c39e6471e02d6fcd8e049cd89ede9120944156" name="R-foreign-debuginfo" arch="x86_64">
  <version epoch="0" ver="0.8.87" rel="51.0.2.2.sr20241103"/>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1620302400">- To get in sync with d:l:R:autoCRAN the Matrix package's split
  in -devel was reversed.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339200">- improved spec file according to comments of dimstar in
  https://build.opensuse.org/request/show/892685</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339201">- CHANGES IN R 4.1.0:
  FUTURE DIRECTIONS:
  * It is planned that the 4.1.x series will be the last to support
    32-bit Windows, with production of binary packages for that
    series continuing until early 2023.
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Data set esoph in package datasets now provides the correct
    numbers of controls; previously it had the numbers of cases added
    to these.  (Reported by Alexander Fowler in PR#17964.)
  NEW FEATURES:
  * www.omegahat.net is no longer one of the repositories known by
    default to setRepositories().  (Nowadays it only provides source
    packages and is often unavailable.)
  * Function package_dependencies() (in package tools) can now use
    different dependency types for direct and recursive dependencies.
  * The checking of the size of tarball in R CMD check --as-cran
    &lt;pkg&gt; may be tweaked via the new environment variable
    _R_CHECK_CRAN_INCOMING_TARBALL_THRESHOLD_, as suggested in
    PR#17777 by Jan Gorecki.
  * Using c() to combine a factor with other factors now gives a
    factor, an ordered factor when combining ordered factors with
    identical levels.
  * apply() gains a simplify argument to allow disabling of
    simplification of results.
  * The format() method for class "ftable" gets a new option justify.
    (Suggested by Thomas Soeiro.)
  * New ...names() utility.  (Proposed by Neal Fultz in PR#17705.)
  * type.convert() now warns when its as.is argument is not
    specified, as the help file always said it _should_.  In that
    case, the default is changed to TRUE in line with its change in
    read.table() (related to stringsAsFactor) in R 4.0.0.
  * When printing list arrays, classed objects are now shown _via_
    their format() value if this is a short enough character string,
    or by giving the first elements of their class vector and their
    length.
  * capabilities() gets new entry "Rprof" which is TRUE when R has
    been configured with the equivalent of --enable-R-profiling (as
    it is by default).  (Related to Michael Orlitzky's report
    PR#17836.)
  * str(xS4) now also shows extraneous attributes of an S4 object
    xS4.
  * Rudimentary support for vi-style tags in rtags() and R CMD rtags
    has been added.  (Based on a patch from Neal Fultz in PR#17214.)
  * checkRdContents() is now exported from tools; it and also
    checkDocFiles() have a new option chkInternal allowing to check
    Rd files marked with keyword "internal" as well.  The latter can
    be activated for R CMD check via environment variable
    _R_CHECK_RD_INTERNAL_TOO_.
  * New functions numToBits() and numToInts() extend the raw
    conversion utilities to (double precision) numeric.
  * Functions URLencode() and URLdecode() in package utils now work
    on vectors of URIs.  (Based on patch from Bob Rudis submitted
    with PR#17873.)
  * path.expand() can expand ~user on most Unix-alikes even when
    readline is not in use.  It tries harder to expand ~, for example
    should environment variable HOME be unset.
  * For HTML help (both dynamic and static), Rd file links to help
    pages in external packages are now treated as references to
    topics rather than file names, and fall back to a file link only
    if the topic is not found in the target package. The earlier rule
    which prioritized file names over topics can be restored by
    setting the environment variable _R_HELP_LINKS_TO_TOPICS_ to a
    false value.
  * c() now removes NULL arguments before dispatching to methods,
    thus simplifying the implementation of c() methods, _but_ for
    back compatibility keeps NULL when it is the first argument.
    (From a report and patch proposal by Lionel Henry in PR#17900.)
  * Vectorize()'s result function's environment no longer keeps
    unneeded objects.
  * Function ...elt() now propagates visibility consistently with
    ..n.  (Thanks to Lionel Henry's PR#17905.)
  * capture.output() no longer uses non-standard evaluation to
    evaluate its arguments.  This makes evaluation of functions like
    parent.frame() more consistent.  (Thanks to Lionel Henry's
    PR#17907.)
  * packBits(bits, type="double") now works as inverse of
    numToBits().  (Thanks to Bill Dunlap's proposal in PR#17914.)
  * curlGetHeaders() has two new arguments, timeout to specify the
    timeout for that call (overriding getOption("timeout")) and TLS
    to specify the minimum TLS protocol version to be used for
    https:// URIs (_inter alia_ providing a means to check for sites
    using deprecated TLS versions 1.0 and 1.1).
  * For nls(), an optional constant scaleOffset may be added to the
    denominator of the relative offset convergence test for cases
    where the fit of a model is expected to be exact, thanks to a
    proposal by John Nash.  nls(*, trace=TRUE) now also shows the
    convergence criterion.
  * Numeric differentiation _via_ numericDeriv() gets new optional
    arguments eps and central, the latter for taking central divided
    differences.  The latter can be activated for nls() via
    nls.control(nDcentral = TRUE).
  * nls() now passes the trace and control arguments to getInitial(),
    notably for all self-starting models, so these can also be fit in
    zero-noise situations via a scaleOffset.  For this reason, the
    initial function of a selfStart model must now have ... in its
    argument list.
  * bquote(splice = TRUE) can now splice expression vectors with
    attributes: this makes it possible to splice the result of
    parse(keep.source = TRUE).  (Report and patch provided by Lionel
    Henry in PR#17869.)
  * textConnection() gets an optional name argument.
  * get(), exists(), and get0() now signal an error if the first
    argument has length greater than 1.  Previously additional
    elements were silently ignored.  (Suggested by Antoine Fabri on
    R-devel.)
  * R now provides a shorthand notation for creating functions, e.g.
    \(x) x + 1 is parsed as function(x) x + 1.
  * R now provides a simple native forward pipe syntax |&gt;.  The
    simple form of the forward pipe inserts the left-hand side as the
    first argument in the right-hand side call.  The pipe
    implementation as a syntax transformation was motivated by
    suggestions from Jim Hester and Lionel Henry.
  * all.equal(f, g) for functions now by default also compares their
    environment(.)s, notably via new all.equal method for class
    function.  Comparison of nls() fits, e.g., may now need
    all.equal(m1, m2, check.environment = FALSE).
  * .libPaths() gets a new option include.site, allowing to _not_
    include the site library.  (Thanks to Dario Strbenac's suggestion
    and Gabe Becker's PR#18016.)
  * Lithuanian translations are now available.  (Thanks to Rimantas
    Zakauskas.)
  * names() now works for DOTSXP objects.  On the other hand, in
    R-lang, the R language manual, we now warn against relying on the
    structure or even existence of such dot-dot-dot objects.
  * all.equal() no longer gives an error on DOTSXP objects.
  * capabilities("cairo") now applies only to the file-based devices
    as it is now possible (if very unusual) to build R with Cairo
    support for those but not for X11().
  * There is optional support for tracing the progress of
    loadNamespace() - see its help.
  * (Not Windows.)  l10n_info() reports an additional element, the
    name of the encoding as reported by the OS (which may differ from
    the encoding part (if any) of the result from
    Sys.getlocale("LC_CTYPE").
  * New function gregexec() which generalizes regexec() to find _all_
    disjoint matches and well as all substrings corresponding to
    parenthesized subexpressions of the given regular expression.
    (Contributed by Brodie Gaslam.)
  * New function charClass() in package utils to query the
    wide-character classification functions in use (such as
    iswprint).
  * The names of quantile()'s result no longer depend on the global
    getOption("digits"), but quantile() gets a new optional argument
    digits = 7 instead.
  * grep(), sub(), regexp and variants work considerably faster for
    long factors with few levels.  (Thanks to Michael Chirico's
    PR#18063.)
  * Provide grouping of x11() graphics windows within a window
    manager such as Gnome or Unity; thanks to a patch by Ivan Krylov
    posted to R-devel.
  * The split() method for class data.frame now allows the f argument
    to be specified as a formula.
  * sprintf now warns on arguments unused by the format string.
  * New palettes "Rocket" and "Mako" for hcl.colors() (approximating
    palettes of the same name from the 'viridisLite' package).
    Contributed by Achim Zeileis.
  * The base environment and its namespace are now locked (so one can
    no longer add bindings to these or remove from these).
  * Rterm handling of multi-byte characters has been improved,
    allowing use of such characters when supported by the current
    locale.
  * Rterm now accepts ALT+ +xxxxxxxx sequences to enter Unicode
    characters as hex digits.
  * Environment variable LC_ALL on Windows now takes precedence over
    LC_CTYPE and variables for other supported categories, matching
    the POSIX behaviour.
  * duplicated() and anyDuplicated() are now optimized for integer
    and real vectors that are known to be sorted via the ALTREP
    framework. Contributed by Gabriel Becker via PR#17993.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 14
    and so packages that provide graphics devices should be
    reinstalled.
  * Graphics devices should now specify deviceVersion to indicate
    what version of the graphics engine they support.
  * Graphics devices can now specify deviceClip.  If TRUE, the
    graphics engine will never perform any clipping of output itself.
    The clipping that the graphics engine does perform (for both
    canClip = TRUE and canClip = FALSE) has been improved to avoid
    producing unnecessary artifacts in clipped output.
  * The grid package now allows gpar(fill) to be a linearGradient(),
    a radialGradient(), or a pattern().  The viewport(clip) can now
    also be a grob, which defines a clipping path, and there is a new
    viewport(mask) that can also be a grob, which defines a mask.
    These new features are only supported so far on the Cairo-based
    graphics devices and on the pdf() device.
  * (Not Windows.)  A warning is given when a Cairo-based type is
    specified for a png(), jpeg(), tiff() or bmp() device but Cairo
    is unsupported (so type = "Xlib" is tried instead).
  * grSoftVersion() now reports the versions of FreeType and
    FontConfig if they are used directly (not _via_ Pango), as is
    most commonly done on macOS.
  C-LEVEL FACILITIES:
  * The _standalone_ libRmath math library and R's C API now provide
    log1pexp() again as documented, and gain log1mexp().
  INSTALLATION on a UNIX-ALIKE:
  * configure checks for a program pkgconf if program pkg-config is
    not found.  These are now only looked for on the path (like
    almost all other programs) so if needed specify a full path to
    the command in PKG_CONFIG, for example in file config.site.
  * C99 function iswblank is required - it was last seen missing ca
    2003 so the workaround has been removed.
  * There are new configure options --with-internal-iswxxxxx,
  - -with-internal-towlower and --with-internal-wcwidth which allows
    the system functions for wide-character classification,
    case-switching and width (wcwidth and wcswidth) to be replaced by
    internal ones.  The first has long been used on macOS, AIX (and
    Windows) but this enables it to be unselected there and selected
    for other platforms (it is the new default on Solaris).  The
    second is new in this version of R and is selected by default on
    macOS and Solaris.  The third has long been the default and
    remains so as it contains customizations for East Asian
    languages.
    System versions of these functions are often minimally
    implemented (sometimes only for ASCII characters) and may not
    cover the full range of Unicode points: for example Solaris (and
    Windows) only cover the Basic Multilingual Plane.
  * Cairo installations without X11 are more likely to be detected by
    configure, when the file-based Cairo graphics devices will be
    available but not X11(type = "cairo").
  * There is a new configure option --with-static-cairo which is the
    default on macOS.  This should be used when only static cairo
    (and where relevant, Pango) libraries are available.
  * Cairo-based graphics devices on platforms without Pango but with
    FreeType/FontConfig will make use of the latter for font
    selection.
  LINK-TIME OPTIMIZATION on a UNIX-ALIKE:
  * Configuring with flag --enable-lto=R now also uses LTO when
    installing the recommended packages.
  * R CMD INSTALL and R CMD SHLIB have a new flag --use-LTO to use
    LTO when compiling code, for use with R configured with
  - -enable-lto=R.  For R configured with --enable-lto, they have
    the new flag --no-use-LTO.
    Packages can opt in or out of LTO compilation _via_ a UseLTO
    field in the DESCRIPTION file.  (As usual this can be overridden
    by the command-line flags.)
  BUILDING R on Windows:
  * for GCC &gt;= 8, FC_LEN_T is defined in config.h and hence character
    lengths are passed from C to Fortran in _inter alia_ BLAS and
    LAPACK calls.
  * There is a new text file src/gnuwin32/README.compilation, which
    outlines how C/Fortran code compilation is organized and
    documents new features:
  * R can be built with Link-Time Optimization with a suitable
    compiler - doing so with GCC 9.2 showed several
    inconsistencies which have been corrected.
  * There is support for cross-compiling the C and Fortran code
    in R and standard packages on suitable (Linux) platforms.
    This is mainly intended to allow developers to test later
    versions of compilers - for example using GCC 9.2 or 10.x has
    detected issues that GCC 8.3 in Rtools40 does not.
  * There is experimental support for cross-building R packages
    with C, C++ and/or Fortran code.
  * The R installer can now be optionally built to support a single
    architecture (only 64-bit or only 32-bit).
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++14 where
    available (which it is on all currently checked platforms): if
    not (as before) C++11 is used if available otherwise C++ is not
    supported.
    Packages which specify C++11 will still be installed using C++11.
    C++14 compilers may give deprecation warnings, most often for
    std::random_shuffle (deprecated in C++14 and removed in C++17).
    Either specify C++11 (see 'Writing R Extensions') or modernize
    the code and if needed specify C++14.  The latter has been
    supported since R 3.4.0 so the package's DESCRIPTION would need
    to include something like
    Depends: R (&gt;= 3.4)
  PACKAGE INSTALLATION on Windows:
  * R CMD INSTALL and R CMD SHLIB make use of their flag --use-LTO
    when the LTO_OPT make macro is set in file etc/${R_ARCH}/Makeconf
    or in a personal/site Makevars file.  (For details see 'Writing R
    Extensions' SS4.5.)
    This provides a valuable check on code consistency.  It does work
    with GCC 8.3 as in Rtools40, but that does not detect everything
    the CRAN checks with current GCC do.
  PACKAGE INSTALLATION on macOS:
  * The default personal library directory on builds with
  - -enable-aqua (including CRAN builds) now differs by CPU type,
    one of
    ~/Library/R/x86_64/x.y/library
    ~/Library/R/arm64/x.y/library
    This uses the CPU type R (and hence the packages) were built for,
    so when a x86_64 build of R is run under Rosetta emulation on an
    arm64 Mac, the first is used.
  UTILITIES:
  * R CMD check can now scan package functions for bogus return
    statements, which were possibly intended as return() calls (wish
    of PR#17180, patch by Sebastian Meyer). This check can be
    activated via the new environment variable
    _R_CHECK_BOGUS_RETURN_, true for --as-cran.
  * R CMD build omits tarballs and binaries of previous builds from
    the top-level package directory.  (PR#17828, patch by Sebastian
    Meyer.)
  * R CMD check now runs sanity checks on the use of LazyData, for
    example that a data directory is present and that
    LazyDataCompression is not specified without LazyData and has a
    documented value.  For packages with large LazyData databases
    without specifying LazyDataCompression, there is a reference to
    the code given in 'Writing R Extensions' SS1.1.6 to test the
    choice of compression (as in all the CRAN packages tested a
    non-default method was preferred).
  * R CMD build removes LazyData and LazyDataCompression fields from
    the DESCRIPTION file of packages without a data directory.
  ENCODING-RELATED CHANGES:
  * The parser now treats \Unnnnnnnn escapes larger than the upper
    limit for Unicode points (\U10FFFF) as an error as they cannot be
    represented by valid UTF-8.
    Where such escapes are used for outputting non-printable
    (including unassigned) characters, 6 hex digits are used (rather
    than 8 with leading zeros).  For clarity, braces are used, for
    example \U{0effff}.
  * The parser now looks for non-ASCII spaces on Solaris (as
    previously on most other OSes).
  * There are warnings (including from the parser) on the use of
    unpaired surrogate Unicode points such as \uD834.  (These cannot
    be converted to valid UTF-8.)
  * Functions nchar(), tolower(), toupper() and chartr() and those
    using regular expressions have more support for inputs with a
    marked Latin-1 encoding.
  * The character-classification functions used (by default) to
    replace the system iswxxxxx functions on Windows, macOS and AIX
    have been updated to Unicode 13.0.0.
    The character-width tables have been updated to include new
    assignments in Unicode 13.0.0.
  * The code for evaluating default (extended) regular expressions
    now uses the same character-classification functions as the rest
    of R (previously they differed on Windows, macOS and AIX).
  * There is a build-time option to replace the system's
    wide-character wctrans C function by tables shipped with R: use
    configure option --with-internal-towlower or (on Windows)
  - DUSE_RI18N_CASE in CFLAGS when building R.  This may be needed
    to allow tolower() and toupper() to work with Unicode characters
    beyond the Basic Multilingual Plane where not supported by system
    functions (e.g. on Solaris where it is the new default).
  * R is more careful when truncating UTF-8 and other multi-byte
    strings that are too long to be printed, passed to the system or
    libraries or placed into an internal buffer.  Truncation will no
    longer produce incomplete multibyte characters.
  DEPRECATED AND DEFUNCT:
  * Function plclust() from the package stats and
    package.dependencies(), pkgDepends(), getDepList(),
    installFoundDepends(), and vignetteDepends() from package tools
    are defunct.
  * Defunct functions checkNEWS() and readNEWS() from package tools
    and CRAN.packages() from utils have been removed.
  * R CMD config CXXCPP is defunct (it was deprecated in R 3.6.2).
  * parallel::detectCores() drops support for Irix (retired in 2013).
  * The LINPACK argument to chol.default(), chol2inv(),
    solve.default() and svd() has been defunct since R 3.1.0.  It was
    silently ignored up to R 4.0.3 but now gives an error.
  * Subsetting/indexing, such as ddd[*] or ddd$x on a DOTSXP
    (dot-dot-dot) object ddd has been disabled; it worked by accident
    only and was undocumented.
  BUG FIXES:
  * Many more C-level allocations (mainly by malloc and strdup) are
    checked for success with suitable alternative actions.
  * Bug fix for replayPlot(); this was turning off graphics engine
    display list recording if a recorded plot was replayed in the
    same session.  The impact of the bug became visible if resize the
    device after replay OR if attempted another savePlot() after
    replay (empty display list means empty screen on resize or empty
    saved plot).
  * R CMD check etc now warn when a package exports non-existing S4
    classes or methods, also in case of no "methods" presence.
    (Reported by Alex Bertram; reproducible example and patch by
    Sebastian Meyer in PR#16662.)
  * boxplot() now also accepts calls for labels such as ylab, the
    same as plot().  (Reported by Marius Hofert.)
  * The help page for xtabs() now correctly states that addNA is
    setting na.action = na.pass among others.  (Reported as PR#17770
    by Thomas Soeiro.)
  * The R CMD check &lt;pkg&gt; gives a longer and more comprehensible
    message when DESCRIPTION misses dependencies, e.g., in Imports:.
    (Thanks to the contributors of PR#17179.)
  * update.default() now calls the generic update() on the formula to
    work correctly for models with extended formulas.  (As reported
    and suggested by Neal Fultz in PR#17865.)
  * The horizontal position of leaves in a dendrogram is now correct
    also with center = FALSE.  (PR#14938, patch from Sebastian
    Meyer.)
  * all.equal.POSIXt() no longer warns about and subsequently ignores
    inconsistent "tzone" attributes, but describes the difference in
    its return value (PR#17277).  This check can be disabled _via_
    the new argument check.tzone = FALSE as suggested by Sebastian
    Meyer.
  * as.POSIXct() now populates the "tzone" attribute from its tz
    argument when x is a logical vector consisting entirely of NA
    values.
  * x[[2^31]] &lt;- v now works.  (Thanks to the report and patch by
    Suharto Anggono in PR#17330.)
  * In log-scale graphics, axis() ticks and label positions are now
    computed more carefully and symmetrically in their range,
    typically providing _more_ ticks, fulfilling wishes in PR#17936.
    The change really corresponds to an improved axisTicks() (package
    grDevices), potentially influencing grid and lattice, for
    example.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now correct to at
    least five digits where it was catastrophically wrong,
    previously.
  * sum(df) and similar "Summary"- and "Math"-group member functions
    now work for data frames df with logical columns, notably also of
    zero rows.  (Reported to R-devel by Martin "b706".)
  * unsplit() had trouble with tibbles due to unsound use of rep(NA,
    len)-indexing, which should use NA_integer_ (Reported to R-devel
    by Mario Annau.)
  * pnorm(x, log.p = TRUE) underflows to -Inf slightly later.
  * show(&lt;hidden S4 generic&gt;) prints better and without quotes for
    non-hidden S4 generics.
  * read.table() and relatives treated an "NA" column name as missing
    when check.names = FALSE PR#18007.
  * Parsing strings containing UTF-16 surrogate pairs such as
    "\uD834\uDD1E" works better on some (uncommon) platforms.
    sprintf("%X", utf8ToInt("\uD834\uDD1E")) should now give "1D11E"
    on all platforms.
  * identical(x,y) is no longer true for differing DOTSXP objects,
    fixing PR#18032.
  * str() now works correctly for DOTSXP and related exotics, even
    when these are doomed.
    Additionally, it no longer fails for lists with a class and
    "irregular" method definitions such that e.g. lapply(*) will
    necessarily fail, as currently for different igraph objects.
  * Too long lines in environment files (e.g. Renviron) no longer
    crash R. This limit has been increased to 100,000 bytes.
    (PR#18001.)
  * There is a further workaround for FreeType giving incorrect
    italic font faces with cairo-based graphics devices on macOS.
  * add_datalist(*, force = TRUE) (from package tools) now actually
    updates an existing data/datalist file for new content.  (Thanks
    to a report and patch by Sebastian Meyer in PR#18048.)
  * cut.Date() and cut.POSIXt() could produce an empty last interval
    for breaks = "months" or breaks = "years".  (Reported as PR#18053
    by Christopher Carbone.)
  * Detection of the encoding of 'regular' macOS locales such as
    en_US (which is UTF-8) had been broken by a macOS change:
    fortunately these are now rarely used with en_US.UTF-8 being
    preferred.
  * sub() and gsub(pattern, repl, x, *) now keep attributes of x such
    as names() also when pattern is NA (PR#18079).
  * Time differences ("difftime" objects) get a replacement and a
    rep() method to keep "units" consistent.  (Thanks to a report and
    patch by Nicolas Bennett in PR#18066.)
  * The \RdOpts macro, setting defaults for \Sexpr options in an Rd
    file, had been ineffective since R 2.12.0: it now works again.
    (Thanks to a report and patch by Sebastian Meyer in PR#18073.)
  * mclapply and pvec no longer accidentally terminate parallel
    processes started before by mcparallel or related calls in
    package parallel (PR#18078).
  * grep and other functions for evaluating (extended) regular
    expressions handle in Unicode also strings not explicitly flagged
    UTF-8, but flagged native when running in UTF-8 locale.
  * Fixed a crash in fifo implementation on Windows (PR#18031).
  * Binary mode in fifo on Windows is now properly detected from
    argument open (PR#15600, PR#18031).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1622808000">- The line %{__install} -m 755 -d %{_infodir}
  no longer works in TW or Factory.
  But without that line it works everywhere. So this instruction
  was commented out of the spec file.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1628596800">- CHANGES IN R 4.1.1:
  NEW FEATURES:
  * require(pkg, quietly = TRUE) is quieter and in particular does
    not warn if the package is not found.
  DEPRECATED AND DEFUNCT:
  * Use of ftp:// URIs should be regarded as deprecated, with
    on-going support confined to method = "libcurl" and not routinely
    tested.  (Nowadays no major browser supports them.)
  * The non-default method = "internal" is deprecated for http:// and
    ftp:// URIs for both download.file and url.
  * On Windows, method = "wininet" is deprecated for http://,
    https:// and ftp:// URIs for both download.file and url.  (A
    warning is only given for ftp://.)
    For ftp:// URIs the default method is now "libcurl" if available
    (which it is on CRAN builds).
    method = "wininet" remains the default for http:// and https://
    URIs but if libcurl is available, using method = "libcurl" is
    preferred.
  INSTALLATION:
  * make check now works also without a LaTeX installation.  (Thanks
    to Sebastian Meyer's PR#18103.)
  BUG FIXES:
  * make check-devel works again in an R build configured with
  - -without-recommended-packages.
  * qnbinom(p, size, mu) for large size/mu is correct now in a range
    of cases (PR#18095); similarly for the (size, prob)
    parametrization of the negative binomial.  Also qpois() and
    qbinom() are better and or faster for extreme cases.  The
    underlying C code has been modularized and is common to all four
    cases of discrete distributions.
  * gap.axis is now part of the axis() arguments which are passed
    from bxp(), and hence boxplot().  (Thanks to Martin Smith's
    report and suggestions in PR#18109.)
  * .First and .Last can again be set from the site profile.
  * seq.int(from, to, *) and seq.default(..) now work better in large
    range cases where from-to is infinite where the two boundaries
    are finite.
  * all.equal(x,y) now returns TRUE correctly also when several
    entries of abs(x) and abs(y) are close to .Machine$double.xmax,
    the largest finite numeric.
  * model.frame() now clears the object bit when removing the class
    attribute of a value via na.action (PR#18100).
  * charClass() now works with multi-character strings on Windows
    (PR#18104, fixed by Bill Dunlap).
  * encodeString() on Solaris now works again in Latin-1 encoding on
    characters represented differently in UTF-8.  Support for
    surrogate pairs on Solaris has been improved.
  * file.show() on Windows now works with non-ASCII path names
    representable in the current native encoding (PR#18132).
  * Embedded R on Windows can now find R home directory via the
    registry even when installed only for the current user
    (PR#18135).
  * pretty(x) with finite x now returns finite values also in the
    case where the extreme x values are close in size to the maximal
    representable number .Machine$double.xmax.
    Also, it's been tweaked for very small ranges and when a boundary
    is close (or equal) to zero; e.g., pretty(c(0,1e-317)) no longer
    has negative numbers, currently still warning about a very small
    range, and pretty(2^-(1024 - 2^-1/(c(24,10)))) is more accurate.
  * The error message for not finding vignette files when weaving has
    correct file sizes now. (Thanks to Sebastian Meyer's PR#18154.)
  * dnbinom(20, &lt;large&gt;, 1) now correctly gives 0, and similar cases
    are more accurate with underflow precaution.  (Reported by Francisco Vera Alcivar in PR#18072.)</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635163200">- repaired https://bugzilla.suse.com/show_bug.cgi?id=1191380
  (rpmacros now go to rpmmacrodir)
- minor clean-ups in spec file</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635768000">- CHANGES IN R 4.1.2:
  C-LEVEL FACILITIES:
  * The workaround in headers R.h and Rmath.h (using namespace std;)
    for the Oracle Developer Studio compiler is no longer needed now
    C++11 is required so has been removed.  A couple more usages of
    log() (which should have been std::log()) with an int argument
    are reported on Solaris.
  * The undocumented limit of 4095 bytes on messages from the
    S-compatibility macros PROBLEM and MESSAGE is now documented and
    longer messages will be silently truncated rather than
    potentially causing segfaults.
  * If the R_NO_SEGV_HANDLER environment variable is non-empty, the
    signal handler for SEGV/ILL/BUS signals (which offers recovery
    user interface) is not set. This allows more reliable debugging
    of crashes that involve the console.
  DEPRECATED AND DEFUNCT:
  * The legacy S-compatibility macros PROBLEM, MESSAGE, ERROR, WARN,
    WARNING, RECOVER, ... are deprecated and will be hidden in R
    4.2.0. R's native interface of Rf_error and Rf_warning has long
    been preferred.
  BUG FIXES:
  * .mapply(F, dots, .) no longer segfaults when dots is not a list
    and uses match.fun(F) as always documented; reported by Andrew
    Simmons in PR#18164.
  * hist(&lt;Date&gt;, ...) and hist(&lt;POSIXt&gt;, ...)  no longer pass
    arguments for rect() (such as col and density) to axis().
    (Thanks to Sebastian Meyer's PR#18171.)
  * \Sexpr{ch} now preserves Encoding(ch). (Thanks to report and
    patch by Jeroen Ooms in PR#18152.)
  * Setting the RNG to "Marsaglia-Multicarry" e.g., by RNGkind(), now
    warns in more places, thanks to Andr'e Gillibert's report and
    patch in PR#18168.
  * gray(numeric(), alpha=1/2) no longer segfaults, fixing PR#18183,
    reported by Till Krenz.
  * Fixed dnbinom(x, size=&lt;very_small&gt;, .., log=TRUE) regression,
    reported by Martin Morgan.
  * as.Date.POSIXlt(x) now keeps names(x), thanks to Davis Vaughan's
    report and patch in PR#18188.
  * model.response() now strips an "AsIs" class typically, thanks to
    Duncan Murdoch's report and other discussants in PR#18190.
  * try() is considerably faster in case of an error and long call,
    as e.g., from some do.call().  Thanks to Alexander Kaever's
    suggestion posted to R-devel.
  * qqline(y = &lt;object&gt;) such as y=I(.), now works, see also
    PR#18190.
  * Non-integer mgp par() settings are now handled correctly in
    axis() and mtext(), thanks to Mikael Jagan and Duncan Murdoch's
    report and suggestion in PR#18194.
  * formatC(x) returns length zero character() now, rather than ""
    when x is of length zero, as documented, thanks to Davis
    Vaughan's post to R-devel.
  * removeSource(fn) now retains (other) attributes(fn).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1647000000">- CHANGES IN R 4.1.3:
  NEW FEATURES:
  * The default version of Bioconductor has been changed to 3.14.
    (This is used by setRepositories and the menus in GUIs.)
  UTILITIES:
  * R CMD check --as-cran has a workaround for a bug in versions of
    file up to at least 5.41 which mis-identify DBF files last
    changed in 2022 as executables.
  C-LEVEL FACILITIES:
  * The legacy S-compatibility macros SINGLE_* in R_ext/Constants.h
    (included by R.h) are deprecated and will be removed in R 4.2.0.
  BUG FIXES:
  * Initialization of self-starting nls() models with initialization
    functions following the pre-R-4.1.0 API (without the ...
    argument) works again for now, with a deprecation warning.
  * Fixed quoting of ~autodetect~ in Java setting defaults to avoid
    inadvertent user lookup due to leading ~, reported in PR#18231 by
    Harold Gutch.
  * substr(., start, stop) &lt;- v now treats _negative_ stop values
    correctly.  Reported with a patch in PR#18228 by Brodie Gaslam.
  * Subscripting an array x without dimnames by a
    length(dim(x))-column character matrix gave "random" non-sense,
    now an error; reported in PR#18244 by Mikael Jagan.
  * ...names() now matches names(list(...)) closely, fixing PR#18247.
  * all.equal(*, scale = s) now works as intended when length(s) &gt; 1,
    partly thanks to Michael Chirico's PR#18272.
  * print(x) for long vectors x now also works for named atomic
    vectors or lists and prints the correct number when reaching the
    getOption("max.print") limit; partly thanks to a report and
    proposal by Hugh Parsonage to the R-devel list.
  * all.equal(&lt;selfStart&gt;, *) no longer signals a deprecation
    warning.
  * reformulate(*, response=r) gives a helpful error message now when
    length(r) &gt; 1, thanks to Bill Dunlap's PR#18281.
  * Modifying globalCallingHandlers inside withCallingHandlers() now
    works or fails correctly, thanks to Henrik Bengtsson's PR#18257.
  * hist(&lt;Date&gt;, breaks = "days") and hist(&lt;POSIXt&gt;, breaks = "secs")
    no longer fail for inputs of length 1.
  * qbeta(.001, .9, .009) and similar cases now converge correctly
    thanks to Ben Bolker's report in PR#17746.
  * window(x, start, end) no longer wrongly signals "'start' cannot
    be after 'end'", fixing PR#17527 and PR#18291.
  * data() now checks that its (rarely used) list argument is a
    character vector - a couple of packages passed other types and
    gave incorrect results.
  * which() now checks its arr.ind argument is TRUE rather coercing
    to logical and taking the first element - which gave incorrect
    results in package code.
  * model.weights() and model.offset() more carefully extract their
    model components, thanks to Ben Bolker and Tim Taylor's R-devel
    post.
  * list.files(recursive = TRUE) now shows all broken symlinks
    (previously, some of them may have been omitted, PR#18296).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1650628800">- CHANGES IN R 4.2.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * The formula method of aggregate() now matches the generic in
    naming its first argument x (resolving PR#18299 by Thomas
    Soeiro).
    This means that calling aggregate() with a formula as a named
    first argument requires name formula in earlier versions of R and
    name x now, so portable code should not name the argument (code
    in many packages did).
  * Calling &amp;&amp; or || with either argument of length greater than one
    now gives a warning (which it is intended will become an error).
  * Calling if() or while() with a condition of length greater than
    one gives an error rather than a warning.  Consequently,
    environment variable _R_CHECK_LENGTH_1_CONDITION_ no longer has
    any effect.
  * Windows users should consult the WINDOWS section below for some
    profound changes including
  * Support for 32-bit builds has been dropped.
  * UTF-8 locales are used where available.
  * The default locations for the R installation and personal
    library folder have been changed.
    Thanks to Tomas Kalibera for months of work on the Windows port
    for this release.
  NEW FEATURES:
  * matrix(x, n, m) now warns in more cases where length(x) differs
    from n * m, as suggested by Abby Spurdle and Wolfgang Huber in
    Feb 2021 on the R-devel mailing list.
    This warning can be turned into an error by setting environment
    variable _R_CHECK_MATRIX_DATA_ to TRUE: R CMD check --as-cran
    does so unless it is already set.
  * Function file_test() in package utils gains tests for symlinks,
    readability and writability.
  * capabilities("libxml") is now false.
    The description of capabilities("http/ftp") now reflects that it
    refers to the default method, no longer the internal one.
  * simplify2array() gains an except argument for controlling the
    exceptions used by sapply().
  * Environment variables R_LIBS_USER and R_LIBS_SITE are both now
    set to the R system default if unset or empty, and can be set to
    NULL to indicate an empty list of user or site library
    directories.
  * The warning for axis()(-like) calls in cases of relatively small
    ranges (typically in log-scale situations) is slightly improved
    _and_ suppressed from explicit calls to .axisPars() as has always
    been the intention.
  * The contrasts setter function `contrasts&lt;-` gains an explicit
    default how.many = NULL rather than just using missing(how.many).
  * grid.pretty() gains a new optional argument n = 5.
  * There is a new function .pretty() with option bounds as a
    technical-utility version of pretty().  It and pretty() gain a
    new argument f.min with a better than back-compatible default.
  * Function grDevices::axisTicks() and related functions such as
    graphics::axis() work better, notably for the log scale; partly
    because of the pretty() improvements, but also because care is
    taken e.g., when ylim is finite but diff(ylim) is infinite.
  * nclass.FD() gains a digits option.
  * The R Mathlib internal C function bd0() (called indirectly from a
    dozen probability density and distribution functions such as
    dpois(), dbinom(), dgamma(), pgamma() _etc_) has been
    complemented by a more sophisticated and (mostly) more accurate C
    function ebd0(), currently called only by internal dpois_raw()
    improving accuracy for R level dpois() and potentially others
    calling it such as dnbinom(), dgamma() or pgamma().  (Thanks to
    Morten Welinder's PR#15628.)
  * write.ftable() gains sep = " " argument as suggested by Thomas
    Soeiro.
  * The names of the locale categories supported by R's
    Sys.getlocale() and Sys.setlocale() are now provided by variable
    .LC.categories in the base namespace.
  * The Date and POSIXt methods for hist() and the histogram method
    for plot() now also use the new default col = "lightgray" in
    consistency with the corresponding change to hist()'s default for
    R 4.0.0.
  * hist.default() gains new fuzz argument, and the histogram plot
    method no longer uses fractional axis ticks when displaying
    counts ("Frequency").
  * mapply() and hence Map() now also obey the "max-or-0-if-any"
    recycling rule, such that, e.g., Map(`+`, 1:3, 1[0]) is valid
    now.
  * as.character(&lt;obj&gt;) for "hexmode" or "octmode" objects now
    fulfils the important basic rule as.character(x)[j] ===
    as.character(x[j]).
  * The set utility functions, notably intersect() have been tweaked
    to be more consistent and symmetric in their two set arguments,
    also preserving a common mode.
  * substr(ch, start,end) &lt;- new now e.g., preserves names(ch); ditto
    for substring(), thanks to a patch from Brodie Gaslam.
  * plot(&lt;lm&gt;) gains a extend.ylim.f argument, in partial response to
    PR#15285; further PR#17784 is fixed thanks to several
    contributors and a patch by Elin Waring.  The Cook's dist
    contours get customizable via cook.col and cook.lty with a
    different default color and their legend is nicer by default and
    customizable via cook.legendChanges.
  * Attempting to subset an object that is not subsettable now
    signals an error of class notSubsettableError. The
    non-subsettable object is contained in the object field of the
    error condition.
  * Subscript-out-of-bounds errors are now signaled as errors of
    class subscriptOutOfBoundsError.
  * Stack-overflow errors are now signaled as errors inheriting from
    class stackOverflowError. See ?stackOverflowError for more
    details.
  * New partly experimental Sys.setLanguage() utility, solving the
    main problem of PR#18055.
  * gettext() and gettextf() get a new option trim = TRUE which when
    set to false allows translations for strings such as "Execution
    halted\n" typical for C code.
  * An experimental implementation of hash tables is now available.
    See ?hashtab for more details.
  * identical() gains a extptr.as.ref argument for requesting that
    external pointer objects be compared as reference objects.
  * reorder() gets an argument decreasing which it passes to sort()
    for level creation; based on the wish and patch by Thomas Soeiro
    in PR#18243.
  * as.vector() gains a data.frame method which returns a simple
    named list, also clearing a long standing 'FIXME' to enable
    as.vector(&lt;data.frame&gt;, mode="list").  This breaks code relying
    on as.vector(&lt;data.frame&gt;) to return the unchanged data frame.
  * legend() is now vectorized for arguments cex, x.intersp, and
    text.width.  The latter can now also be specified as a vector
    (one element for each column of the legend) or as NA for
    computing a proper column wise maximum value of strwidth(legend).
    The argument y.intersp can be specified as a vector with one
    entry for each row of the legend.
    legend() also gains new arguments title.cex and title.font.
    Thanks to Swetlana Herbrandt.
  * Deparsing no longer remaps attribute names dim, dimnames, levels,
    names and tsp to historical S-compatible names (which structure()
    maps back).
  * sample() and sample.int() have additional sanity checks on their
    size and n arguments.
    all.equal.numeric() gains a sanity check on its tolerance
    argument - calling all.equal(a, b, c) for three numeric vectors
    is a surprisingly common error.
    mean(na.rm =), rank(na.last =), barplot(legend.text =),
    boxplot(), contour(drawlabels =), polygon(border =) and
    methods::is(class2 =) have more robust sanity checks on their
    arguments.
    R CMD Rd2pdf (used by R CMD check) has a more robust sanity check
    on the format of \alias{} commands.
  * psigamma(x, deriv) for negative x now also works for deriv = 4
    and 5; their underlying C level dpsifn() is documented in
    'Writing R Extensions'.
  * The HTML help system now uses HTML5 (wish of PR#18149).
  * ks.test() now provides exact p-values also with ties and MC
    p-values in the two-sample (Smirnov) case.  By Torsten Hothorn.
  * ks.test() gains a formula interface, with y ~ 1 for the
    one-sample (Kolmogorov) test and y ~ group for the two-sample
    (Smirnov) test.  Contributed by Torsten Hothorn.
  * The return value from ks.test() now has class c("ks.test",
    "htest") - packages using try() need to take care to use
    inherits() and not == on the class.
  * New functions psmirnov(), qsmirnov() and rsmirnov() in package
    stats implementing the asymptotic and exact distributions of the
    two-sample Smirnov statistic.
  * iconv() now allows sub = "c99" to use C99-style escapes for UTF-8
    inputs which cannot be converted to encoding to.
  * In a forward pipe |&gt; expression it is now possible to use a named
    argument with the placeholder _ in the rhs call to specify where
    the lhs is to be inserted.  The placeholder can only appear once
    on the rhs.
  * The included LAPACK sources have been updated to version 3.10.0,
    except for the four Fortran 77 routines which 3.10.0 has
    re-implemented in Fortran 90 (where the older versions have been
    retained as the R build process does not support Fortran 90).
  * path.expand() and most other uses of tilde expansion now warn if
    a path would be too long if expanded.  (An exception is
    file.exists(), which silently returns false.)
  * trunc(&lt;Date&gt;, *) now supports units = "months" or "years" for
    consistency with the POSIXt method, thanks to Dirk Eddelbuettel's
    proposal in PR#18099.
  * list2DF() now checks that its arguments are of the same length,
    rather than use recycling.
  * The HTML help system has several new features: LaTeX-like math
    can be typeset using either KaTeX or MathJax, usage and example
    code is highlighted using Prism, and for dynamic help the output
    of examples and demos can be shown within the browser if the
    knitr package is installed. These features can be disabled by
    setting the environment variable _R_HELP_ENABLE_ENHANCED_HTML_ to
    a false value.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 15
    and so packages that provide graphics devices should be
    reinstalled.
  * The grid package now allows the user to specify a "vector" of
    pattern fills.  The fill argument to gpar() accepts a list of
    gradients and/or patterns and the functions linearGradient(),
    radialGradient(), and pattern() have a new group argument.
    Points grobs (data symbols) can now also have a pattern fill.
    The grobCoords() function now returns a more informative and
    complex result.
  * The grid package has new functions for drawing isolated groups:
    grid.group(), grid.define(), and grid.use().  These functions add
    compositing operators and affine transformations to R's graphics
    capabilities.
    The grid package also has new functions for stroking and filling
    paths: grid.stroke(), grid.fill(), and grid.fillStroke().
    A new function as.path() allows the user to specify the fill rule
    for a path that is to be used for clipping, stroking, or filling;
    available options are "winding" and "evenodd".  A new function
    as.mask() allows the user to specify the type of a mask;
    available options are "alpha" and "luminance".
    These new features are only supported so far (at most) on the
    Cairo-based graphics devices and on the pdf() device.
  * dev.capabilities() reports on device support for the new
    features.
  * par() now warns about unnamed non-character arguments to prevent
    misuse such as {usr &lt;- par("usr"); par(usr)}.
  INSTALLATION:
  * Facilities for accessing ftp:// sites are no longer tested
    (except _pro tem_ for curlGetHeaders()) as modern browsers have
    removed support.
  * R can now be built with DEFS = -DSTRICT_R_HEADERS .
  PACKAGE INSTALLATION:
  * R CMD INSTALL no longer tangles vignettes. This completes an R
    CMD build change in R 3.0.0 and affects packages built before R
    3.0.2. Such packages should be re-made with R CMD build to have
    the tangled R code of vignettes shipped with the tarball.
  * USE_FC_LEN_T will become the default: this uses the correct
    prototypes for Fortran BLAS/LAPACK routines called from C/C++,
    and requires adjustment of most such calls - see 'Writing R
    Extensions' SS6.6.2.  (This has been supported since R 3.6.2.)
  * Package installation speed for packages installed with
    keep.source has been improved. This resolve the issue reported by
    Ofek Shilon in PR#18236.
  UTILITIES:
  * R CMD check can optionally report files/directories left behind
    in home, /tmp (even though TMPDIR is set) and other directories.
    See the "R Internals" manual for details.
  * R CMD check now reports byte-compilation errors during
    installation.  These are not usually fatal but may result in
    parts of the package not being byte-compiled.
  * _R_CHECK_DEPENDS_ONLY_ can be applied selectively to examples,
    tests and/or vignettes in R CMD check: see the "R Internals"
    manual.
  * _R_CHECK_SRC_MINUS_W_IMPLICIT_ now defaults to true: recent
    versions of Apple clang on macOS have made implicit function
    declarations in C into a compilation error.
  * R CMD check --as-cran makes use of the environment variable
    AUTORECONF.  See the "R Internals" manual SS8 for further details.
  * R CMD check --use-valgrind also uses valgrind when re-building
    vignettes as some non-Sweave vignettes unhelpfully comment out
    all their code when R CMD check runs vignettes.
  * Errors in re-building vignettes (unless there are LaTeX errors)
    are reported by R CMD check as ERROR rather than WARNING when
    running vignettes has been skipped (as it frequently is in CRAN
    checks and by --as-cran).
  * R CMD Rd2pdf gains a --quiet option that is used by R CMD build
    when building the PDF package manual.
  * R CMD Rd2pdf now always runs LaTeX in batch mode, consistent with
    Texinfo &gt;= 6.7. The --batch option is ignored.
  * R CMD build and R CMD check now include the Rd file name and line
    numbers in the error message of an \Sexpr evaluation failure.
  * For packages using the \doi Rd macro (now an install-time \Sexpr)
    but no other dynamic Rd content, R CMD build now produces a
    smaller tarball and is considerably faster - skipping temporary
    package installation.
  C-LEVEL FACILITIES:
  * The non-API header R_ext/R-ftp-http.h is no longer provided, as
    the entry points it covered are now all defunct.
  * A number of non-API declarations and macro definitions have been
    moved from the installed header Rinternals.h to the internal
    header Defn.h. Packages that only use entry points and
    definitions documented to be part of the API as specified in
    'Writing R Extensions' SS6 should not be affected.
  * The macro USE_RINTERNALS no longer has any effect when compiling
    package code.  Packages which also use R_NO_REMAP will need to
    ensure that the remapped names are used for calls to API
    functions that were formerly also made available as macros.
  * The deprecated legacy S-compatibility macros PROBLEM, MESSAGE,
    ERROR, WARN, WARNING, RECOVER, ... are no longer defined in
    R_exts/RS.h (included by R.h).  Replace these by calls to
    Rf_error and Rf_warning (defined in header R_ext/Error.h included
    by R.h).
    Header R_ext/RS.h no longer includes R_ext/Error.h.
  * Header R_ext/Constants.h (included by R.h) when included from C++
    now includes the C++ header cfloat rather than the C header
    float.h (now possible as C++11 is required).
  * The legacy S-compatibility macros DOUBLE_* in R_ext/Constants.h
    (included by R.h) are deprecated.
  * The deprecated S-compatibility macros SINGLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * R_Calloc, R_Free and R_Realloc are preferred to their unprefixed
    forms and error messages now use the prefix. These forms were
    introduced in R 3.4.0 and are available even when
    STRICT_R_HEADERS is defined.
  * rmultinom has been documented in 'Writing R Extensions' SS6 so is
    now part of the R API.
  * Similarly, Rtanpi, called from R level tanpi() is now part of the
    R API.
  * The long-deprecated, undocumented and non-API entry point call_R
    is no longer declared in R_ext/RS.h (included by R.h).
  * The header S.h which has been unsupported since Jan 2016 has been
    removed.  Use R.h instead.
  DEPRECATED AND DEFUNCT:
  * The (non-default and deprecated) method = "internal" for
    download.file() and url() no longer supports http:// nor ftp://
    URIs.  (It is used only for file:// URIs.)
    On Windows, download.file(method = "wininet") no longer supports
    ftp:// URIs.  (It is no longer the default method, which is
    "libcurl" and does.)
    On Windows, the deprecated method = "wininet" now gives a warning
    for http:// and https:// URIs for both download.file() and url().
    (It is no longer the default method.)
  * On Windows, the command-line option --max-mem-size and
    environment variable R_MAX_MEM_SIZE are defunct.  The memory
    allocation limit was important for 32-bit builds, but these are
    no longer supported.
  * default.stringsAsFactors() is now formally deprecated, where that
    was only mentioned on its regular help page, previously.  So it
    now gives a warning if called.
  * unix.time() is defunct now; it had been deprecated since R 3.4.0.
  BUG FIXES:
  * Setting digits = 0 in format(), print.default() (and hence
    typically print()) or options() is again invalid.  Its behaviour
    was platform-dependent, and it is unclear what "zero significant
    digits" should mean (PR#18098).
  * Messages from C code in the cairo section of package grDevices
    are now also offered for translation, thanks to Michael Chirico's
    PR#18123.
  * mean(x) with finite x now is finite also without "long.double"
    capability.
  * R CMD Rd2pdf no longer leaves an empty build directory behind
    when it aborts due to an already existing output file.  (Thanks
    to Sebastian Meyer's PR#18141.)
  * density(x, weights = w, na.rm = TRUE) when anyNA(x) is true, now
    removes weights "in parallel" to x, fixing PR#18151, reported by
    Matthias Gondan.  Additionally, it gets a subdensity option.
  * Conversion of \Sexpr[]{&lt;expR&gt;} to LaTeX or HTML no longer
    produces long blocks of empty lines when &lt;expR&gt; itself contains
    several lines all producing empty output.  Thanks to a report and
    patch by Ivan Krylov posted to R-devel.
  * R CMD build no longer fails if a package vignette uses child
    documents and inst/doc exists.  (Thanks to Sebastian Meyer's
    PR#18156.)
  * When an R documentation ('help' source) file man/foo.Rd in a
    package has \donttest{..} examples with a syntax error, it is now
    signalled as ERROR and with correct line numbers relating to the
  * -Ex.R file, thanks to Duncan Murdoch and Sebastian Meyer's
    reports and patch proposals in PR#17501.
  * Improved determination of the correct translation domain in
    non-base packages, addressing the combination of PR#18092 and
    PR#17998 (#c6) with reports and _augmented_ patch #2904 by
    Suharto Anggono.
    Note that "R-base" is no longer the default domain e.g., for
    top-level calls to gettext(); rather translation needs explicit
    domain = * specification in such cases.
  * identical(attrib.as.set=FALSE) now works correctly with data
    frames with default row names (Thanks to Charlie Gao's PR#18179).
  * txtProgressBar() now enforces a non-zero width for argument char,
    without which no progress can be visible.
  * dimnames(table(d)) is more consistent in the case where d is a
    list with a single component, thanks to Thomas Soeiro's report to
    R-devel.
    Further, table(d1, d2) now gives an error when d1 and d2 are data
    frames as suggested by Thomas in PR#18224.
  * Fix for drawing semi-transparent lines and fills on the native
    Windows graphics device (PR#18219 and PR#16694).  Thanks to Nick
    Ray for helpful diagnosis on Bugzilla.
  * The deparser now wraps sub-expressions such as if(A) ..  with
    parentheses when needed; thanks to Duncan Murdoch's PR#18232 and
    Lionel Henry's patches there.
  * remove.packages() no longer tries to uninstall Priority: base
    packages, thanks to a report and suggestions by Colin Fay in
    PR#18227.
  * win.metafile() now has xpinch and ypinch arguments so that the
    user can override Windows' (potentially wrong) guess at device
    dimensions.
  * x[i] and x[[i]] for non-integer i should now behave in all cases
    as always documented: the index used is equivalent to
    as.integer(i) unless that would overflow where trunc(i) is used
    instead; thanks to Suharto Anggono's report and patch proposals
    in PR#17977.
  * asOneSidedFormula() now associates the resulting formula with the
    global environment rather than the evaluation environment created
    for the call.
  * &lt;bibentry&gt;$name now matches the field name case-insensitively,
    consistent with bibentry() creation and the replacement method.
  * cbind() failed to detect some length mismatches with a mixture of
    time-series and non-time-series inputs.
  * The default LaTeX style file Sweave.sty used by the RweaveLatex
    driver no longer loads the obsolete ae package; thanks to a
    report by Thomas Soeiro in PR#18271.  Furthermore, it now skips
    \usepackage[T1]{fontenc} for engines other than pdfTeX (if
    detected) or if the new [nofontenc] option is used.
  * smooth.spline() now stores its logical cv argument more safely,
    fixing a rare bug when printing, and also stores n.
  * smooth.spline(x,y,*) now computes the cv.crit statistic
    correctly, also when is.unsorted(x), fixing PR#18294.
  * The data.frame method of rbind() now warns when binding
    not-wholly-recycling vectors, by analogy to the default method
    (for matrices).
  * setAs() finds the correct class for name to when multiple
    packages define a class with that name. Thanks to Gabor Csardi
    for the report.
  * Fix for detaching a package when two classes of the same name are
    present in method signatures for the same generic. Thanks to
    Gabor Csardi for the report.
  * match.arg("", c("", "a", "B")) gives a better error message, in
    part from PR#17959, thanks to Elin Waring.
  * R CMD Sweave --clean no longer removes pre-existing files or
    subdirectories (PR#18242).
  * The quartz() device no longer splits polylines into subpaths.
    That has caused narrowly-spaced lines with many points to always
    look solid even when dashed line type was used due to dash phase
    restarts.
  * Deparsing constructs such as quote(1 + `!`(2) + 3) works again as
    before R 3.5.0, thanks to the report and patch in PR#18284 by
    Suharto Anggono.
  * as.list(f) for a factor f now keeps names(f), fixing PR#18309.
  * qbeta(.001, .9, .009) and analogous qf() calls now return a
    correct value instead of NaN or wrongly 1, all with a warning;
    thanks to the report by Ludger Goeminne in PR#18302.
  * plot.lm() failed to produce the plot of residuals vs.  factor
    levels (i.e., which=5 when leverages are constant) for models
    with character predictors (PR#17840).
  * interaction.plot(..., xtick = TRUE) misplaced the x-axis line
    (PR#18305).
  * Not strictly fixing a bug, format()ing and print()ing of
    non-finite Date and POSIXt values NaN and +/-Inf no longer show
    as NA but the respective string, e.g., Inf, for consistency with
    numeric vector's behaviour, fulfilling the wish of PR#18308.
  * R CMD check no longer runs test scripts generated from
    corresponding .Rin files twice and now signals an ERROR if
    processing an .Rin script fails.
  * tools::Rd2txt() used for plain-text help pages now renders \hrefs
    (if tools::Rd2txt_options(showURLs = TRUE)) and \urls with
    percent-encoding and standards-compliant delimiting style (angle
    brackets and no URL: prefix).  \email is now rendered with a
    mailto: prefix.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1655985600">- CHANGES IN R 4.2.1:
  NEW FEATURES:
  * New function utils::findCRANmirror() to find out if a CRAN mirror
    has been selected, otherwise fallback to the main site.  This
    behaves in the same way as tools::CRAN_package_db() and is
    intended for packages wishing to access CRAN for purposes other
    than installing packages.
    The need for this was shown by a day when the main CRAN website
    was offline and a dozen or so packages which had its URL
    hardcoded failed their checks.
  INSTALLATION on a UNIX-ALIKE:
  * The libraries searched for by --with-blas (without a value) now
    include BLIS (after OpenBLAS but before ATLAS).  And on macOS,
    the Accelerate framework (after ATLAS).  (This is patterned after
    the AX_BLAS macro from the Autoconf Archive.)
  * The included LAPACK sources have been updated to 3.10.1.
  UTILITIES:
  * The (full path to) the command tidy to be used for HTML
    validation can be set by environment variable R_TIDYCMD.
  * Setting environment variable _R_CHECK_RD_VALIDATE_RD2HTML_ to a
    false value will override R CMD check --as-cran and turn off HTML
    validation.  This provides a way to circumvent a problematic
    tidy.
    The 2006 version that ships with macOS is always skipped.
  C-LEVEL FACILITIES:
  * The undocumented legacy declarations of Sint, Sfloat, SINT_MAX
    and SINT_MIN in header R.h are deprecated.
  BUG FIXES:
  * fisher.test(d) no longer segfaults for "large" d; fixing PR#18336
    by preventing/detecting an integer overflow reliably.
  * tar(., files=*) now produces correctly the warning about invalid
    uid or gid of files, fixing PR#18344, reported by Martin Morgan.
  * tk_choose.files() with multi = FALSE misbehaved on paths
    containing spaces (PR#18334) (regression introduced in R 4.0.0).
  * sort(x, partial = ind, *) now works correctly notably for the
    non-default na.last = FALSE or TRUE, fixing PR#18335 reported by
    James Edwards.
  * Environment variable _R_CHECK_XREFS_REPOSITORIES_ is only used
    for checking .Rd cross-references in R CMD check (as documented)
    and not for other uses looking for a CRAN mirror.
  * The search for a CRAN mirror when checking packages now uses
    getOption("repos") if that specifies a CRAN mirror, even when it
    does not also specify all three Bioconductor repositories (as was
    previously required).
  * The HTML code generated by tools::Rd2HTML() has been improved to
    pass tidy 5.8.0.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1667217600">- CHANGES IN R 4.2.2:
  NEW FEATURES:
  * tools::Rdiff(useDiff = TRUE) checks for the presence of an
    external diff command and switches to useDiff = FALSE if none is
    found.  This allows R CMD Rdiff to always work.
  * On Windows, environment variable R_LIBCURL_SSL_REVOKE_BEST_EFFORT
    can be used to switch to only 'best-effort' SSL certificate
    revocation checks with the default "libcurl" download method.
    This reduces security, but may be needed for downloads to work
    with MITM proxies (PR#18379).
  * (macOS) The run-time check for libraries from XQuartz for X11 and
    Tcl/Tk no longer uses otool from the Apple Developer Tools
    (PR#18400).
  * The LaTeX style for producing the PDF manuals, Rd.sty, now loads
    the standard amsmath, amsfonts and amssymb packages for greater
    coverage of math commands in the Rd \eqn and \deqn macros.  The
    \mathscr LaTeX command is also provided (via the mathrsfs
    package, if available, or the amsfonts bundle otherwise),
    fulfilling the wish of PR#18398.
  * (Windows) The default format of readClipboard() and
    writeClipboard() has been changed to 13 (CF_UNICODETEXT).
  INSTALLATION on a UNIX-ALIKE:
  * The PDF manuals (if built) can be compacted by the new target
    make compact-pdf (at the top level or in directory doc/manual).
  * There is now configure support for LLVM clang 15 on Linux, which
    defaults to position-independent (PIE) executables whereas
    gfortran does not.
  * Many small changes to ease compilation (and suppress warnings)
    with LLVM clang 15.
  BUG FIXES:
  * Rscript -e would fail if stdin were closed (Reported by Henrik
    Bengtsson.)
  * qt(*, log.p=TRUE) in outer tails no longer produces NaN in its
    final steps, thus fixing PR#18360.
  * tools::Rd2latex() now escapes hashes and ampersands when writing
    URLs, fixing LaTeX errors with such URLs in \tabular.
  * When isGeneric(f, fdef=*) is used with mismatching names, the
    warning is better understandable; reported (with fix) in PR#18370
    by Gabe Becker.
  * poly(x, n) now works again (and is now documented) when x is a
    "Date" or "POSIXct" object, or of another class while fulfilling
    mode(x) == "numeric".  This also enables poly(x, *, raw=TRUE) for
    such variables.  Reported by Michael Chirico to R-devel.
  * write.table(), write.csv() and write.csv2() restore their
    numerical precision (internal equivalent of digits = 15) after an
    interrupt (PR#18384).
  * One can now read also byte FF from a clipboard connection
    (PR#18385).
  * source("") and source(character()) now give more helpful error
    messages.
  * R CMD check --as-cran set _R_CHECK_TIMINGS_ too late to have the
    intended effect.
  * as.POSIXlt(x) now also works with very large dates x, fixing
    PR#18401 reported by Hannes M"uhleisen.
  * Files can now be extracted even from very large zip archives
    (PR#18390, thanks to Martin Jakt).
  * Non-finite objects of class "POSIXlt" are now correctly coerced
    to classes "Date" and "POSIXct"; following up on the extension to
    format() them correctly.
  * Added methods for is.finite(), is.infinite() and is.nan() for
    "POSIXlt" date-time objects.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1678881600">- CHANGES IN R 4.2.3:
  C-LEVEL FACILITIES:
  * The definition of DL_FUNC in R_ext/Rdynload.h has been changed to
    be fully C-compliant.  This means that functions loaded _via_ for
    example R_GetCCallable need to be cast to an appropriate type if
    they have any arguments.
  * .Machine has a new element sizeof.time_t to identify old systems
    with a 32-bit type and hence a limited range of date-times (and
    limited support for dates millions of years from present).
  PACKAGE INSTALLATION:
  * (Windows) The default C++ standard had accidentally been left at
    C++11 when it was changed to C++14 on Unix.
  BUG FIXES:
  * As "POSIXlt" objects may be "partially filled" and their list
    components meant to be recycled, length() now is the length of
    the longest component.
  * as.POSIXlt.Date() could underflow for dates in the far past (more
    than half a million years BCE).
  * as.Date.POSIXlt(x) would return "1970-01-01" instead of NA in R
    4.2.2, e.g., for
    x &lt;- as.POSIXlt(c("2019-01-30","2001-1-1"))
    x$mon &lt;- c(0L, NA); as.Date(x)
  * R CMD check failed to apply enabled _R_CHECK_SUGGESTS_ONLY_ to
    examples and vignettes (regression in R 4.2.0).
  * R CMD check did not re-build vignettes in separate processes by
    default (regression in R 4.2.0).
  * Running examples from HTML documentation now restores previous
    knitr settings and options (PR#18420).
  * Quartz: fonts are now located using Core Graphics API instead of
    deprecated ATS which is no longer supported in the macOS 13 SDK
    (PR#18426).  This also addresses an issue where the currently
    used font in the Quartz device context was not correctly
    retained.
  * (Windows) Math symbols in text drawing functions are again
    rendered correctly (PR#18440).  This fixes a regression in R
    4.2.1 caused by a fix in PR#18382 which uncovered an issue in
    GraphApp due to which the symbol charset was not used with TT
    Symbol font face.
  * (Windows) Installing a package with a src/Makefile.{win,ucrt}
    file includes ~/.R/Makevars.win64 in the search for user
    makevars, as documented in "R Installation and Administration"
    and done for packages with a src/Makevars.{win,ucrt} file.
  * format(&lt;POSIXlt_w/_unbalanced_sec&gt;, "....%OS&lt;n&gt;") with n &gt; 0 no
    longer accidentally uses the unbalanced seconds, thanks to
    Suharto Anggono's report (including patch) in PR#18448.
  * solve.default(a, b) works around issues with some versions of
    LAPACK when a contains NA or NaN values.
  * When UseMethod() cannot dispatch, it no longer segfaults
    producing the error message in case of a long class(), thanks to
    Joris Vankerschaver's report (including patch) in PR#18447.
  * When example(foo, ..) produces graphics on an interactive device
    it needs to open itself, it now leaves devAskNewPage() unchanged
    even when it was FALSE, thus fixing a 14 years old '&lt;FIXME&gt;'.
  * packageDescription() again catches errors from encoding
    conversions. This also fixes broken packageVersion() in C locale
    on systems where iconv does not support transliteration.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1681128000">- add patch to build with libcurl &gt;= 8</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1682078400">- CHANGES IN R 4.3.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Calling &amp;&amp; or || with LHS or (if evaluated) RHS of length greater
    than one is now always an error, with a report of the form
    'length = 4' in coercion to 'logical(1)'
    Environment variable _R_CHECK_LENGTH_1_LOGIC2_ no longer has any
    effect.
  NEW FEATURES:
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.10.1.  (This caused some platform-dependent
    changes to package check output.)  And then to the sources from
    LAPACK version 3.11.0 (with changes only to double complex
    subroutines).
  * The included LAPACK sources have been updated to include the four
    Fortran 90 routines rather than their Fortran 77 predecessors.
    This may give some different signs in SVDs or
    eigendecompositions..  (This completes the transition to LAPACK
    3.10.x begun in R 4.2.0.)
  * The LAPACK sources have been updated to version 3.11.0.  (No new
    subroutines have been added, so this almost entirely bug fixes:
    Those fixes do affect some computations with NaNs, including R's
    NA.)
  * The parser now signals _classed_ errors, notably in case of the
    pipe operator |&gt;.  The error object and message now give line and
    column numbers, mostly as proposed and provided by Duncan Murdoch
    in PR#18328.
  * toeplitz() is now generalized for asymmetric cases, with a
    toeplitz2() variant.
  * xy.coords() and xyz.coords() and consequently, e.g., plot(x,y,
    log = "y") now signal a _classed_ warning about negative values
    of y (where log(.) is NA).  Such a warning can be specifically
    suppressed or caught otherwise.
  * Regular expression functions now check more thoroughly whether
    their inputs are valid strings (in their encoding, e.g. in
    UTF-8).
  * The performance of grep(), sub(), gsub() and strsplit() has been
    improved, particularly with perl = TRUE and fixed = TRUE.  Use of
    useBytes = TRUE for performance reasons should no longer be
    needed and is discouraged: it may lead to incorrect results.
  * apropos() gains an argument dot_internals which is used by the
    completion (help(rcompgen)) engine to also see base internals
    such as .POSIXct().
  * Support in tools::Rdiff() for comparing uncompressed PDF files is
    further reduced - see its help page.
  * qqplot(x, y, ...) gains conf.level and conf.args arguments for
    computing and plotting a confidence band for the treatment
    function transforming the distribution of x into the distribution
    of y (Switzer, 1976, _Biometrika_). Contributed by Torsten
    Hothorn.
  * Performance of package_dependencies() has been improved for cases
    when the number of dependencies is large.
  * Strings newly created by gsub(), sub() and strsplit(), when any
    of the inputs is marked as "bytes", are also marked as "bytes".
    This reduces the risk of creating invalid strings and accidental
    substitution of bytes deemed invalid.
  * Support for readLines(encoding = "bytes") has been added to allow
    processing special text files byte-by-byte, without creating
    invalid strings.
  * iconv(from = "") now takes into account any declared encoding of
    the input elements and uses it in preference to the native
    encoding.  This reduces the risk of accidental creation of
    invalid strings, particularly when different elements of the
    input have different encoding (including "bytes").
  * Package repositories in getOption("repos") are now initialized
    from the repositories file when utils is loaded (if not already
    set, e.g., in .Rprofile).  (From a report and patch proposal by
    Gabriel Becker in PR#18405.)
  * compactPDF() gets a verbose option.
  * type.convert() and hence read.table() get new option tryLogical =
    TRUE with back compatible default.  When set to false, converts
    "F" or "T" columns to character.
  * Added new unit prefixes "R" and "Q" for abbreviating
    (unrealistically large) sizes beyond 10^{27} in standard = "SI",
    thanks to Henrik Bengtsson's PR#18435.
  * as.data.frame()'s default method now also works fine with atomic
    objects inheriting from classes such as "roman", "octmode" and
    "hexmode", such fulfilling the wish of PR#18421, by Benjamin
    Feakins.
  * The as.data.frame.vector() utility now errors for wrong-length
    row.names.  It warned for almost six years, with "Will be an
    error!".
  * sessionInfo() now also contains La_version() and reports codepage
    and timezone when relevant, in both print() and toLatex() methods
    which also get new option tzone for displaying timezone
    information when locale = FALSE.
  * New function R_compiled_by() reports the C and Fortran compilers
    used to build R, if known.
  * predict(&lt;lm&gt;, newdata = *) no longer unnecessarily creates an
    offset of all 0s.
  * solve() for complex inputs now uses argument tol and by default
    checks for 'computational singularity' (as it long has done for
    numeric inputs).
  * predict(&lt;rank-deficient lm&gt;, newdata=*) now obeys a new argument
    rankdeficient, with new default "warnif", warning only if there
    are non-estimable cases in newdata.  Other options include
    rankdeficient = "NA", predicting NA for non-estimable newdata
    cases.  This addresses PR#15072 by Russ Lenth and is based on his
    original proposal and discussions in PR#16158 also by David Firth
    and Elin Waring.  Still somewhat experimental.
  * Rgui console implementation now works better with the NVDA screen
    reader when the full blinking cursor is selected.  The underlying
    improvements in cursor handling may help also other screen
    readers on Windows.
  * The drop-field control in GraphApp can now be left with the TAB
    key and all controls can be navigated in the reverse order using
    the Shift+TAB key, improving accessibility of the Rgui
    configuration editor.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now fully accurate
    (instead of to "only" minimally five digits).
  * demo(error.catching) now also shows off withWarnings() and
    tryCatchWEMs().
  * As an experimental feature the placeholder _ can now also be used
    in the rhs of a forward pipe |&gt; expression as the first argument
    in an extraction call, such as _$coef. More generally, it can be
    used as the head of a chain of extractions, such as _$coef[[2]].
  * Spaces in the environment variable used to choose the R session's
    temporary directory (TMPDIR, TMP and TEMP are tried in turn) are
    now fatal.  (On Windows the 'short path' version of the path is
    tried and used if that does not contain a space.)
  * all.equal.numeric() gets a new optional switch giveErr to return
    the numeric error as attribute.  Relatedly,
    stopifnot(all.equal&lt;some&gt;(a, b, ..)) is as "smart" now, as
    stopifnot(all.equal(....)) has been already, thus allowing
    customized all.equal&lt;Some&gt;() wrappers.
  * R on Windows is now able to work with path names longer than 260
    characters when these are enabled in the system (requires at
    least Windows 10 version 1607).  Packages should be updated to
    work with long paths as well, instead of assuming PATH_MAX to be
    the maximum length.  Custom front-ends and applications embedding
    R need to update their manifests if they wish to allow this
    feature.  See
    &lt;https://blog.r-project.org/2023/03/07/path-length-limit-on-windows&gt;
    for more information.
  * 'Object not found' and 'Missing argument' errors now give a more
    accurate error context. Patch provided by Lionel Henry in
    PR#18241.
  * The @ operator is now an S3 generic. Based on contributions by
    Tomasz Kalinowski in PR#18482.
  * New generic chooseOpsMethod() provides a mechanism for objects to
    resolve cases where two suitable methods are found for an Ops
    Group Generic. This supports experimenting with alternative
    object systems. Based on contributions by Tomasz Kalinowski in
    PR#18484.
  * inherits(x, what) now accepts values other than a simple
    character vector for argument what. A new generic, nameOfClass(),
    is called to resolve the class name from what. This supports
    experimenting with alternative object systems. Based on
    contributions by Tomasz Kalinowski in PR#18485.
  * Detection of BLAS/LAPACK in use (sessionInfo()) with FlexiBLAS
    now reports the current backend.
  * The "data.frame" method for subset() now warns about extraneous
    arguments, typically catching the use of = instead of == in the
    subset expression.
  * Calling a:b when numeric a or b is longer than one may now be
    made into an error by setting environment variable
    _R_CHECK_LENGTH_COLON_ to a true value, along the proposal in
    PR#18419 by Henrik Bengtsson.
  * density(x, weights = *) now warns if automatic bandwidth
    selection happens without using weights; new optional warnWbw may
    suppress the warning.  Prompted by Christoph Dalitz' PR#18490 and
    its discussants.
  * rm(list = *) is faster and more readable thanks to Kevin Ushey's
    PR#18492.
  * The plot.lm() function no longer produces a normal Q-Q plot for
    GLMs. Instead it plots a half-normal Q-Q plot of the absolute
    value of the standardized deviance residuals.
  * The print() method for class "summary.glm" no longer shows
    summary statistics for the deviance residuals by default.  Its
    optional argument show.residuals can be used to show them if
    required.
  * The tapply() function now accepts a data frame as its X argument,
    and allows INDEX to be a formula in that case. by.data.frame()
    similarly allows INDICES to be a formula.
  * The performance of df[j] &lt;- value (including for missing j) and
    write.table(df) has been improved for data frames df with a large
    number of columns.  (Thanks to Gabriel Becker's PR#18500,
    PR#18503 and discussants, prompted by a report from Toby Dylan
    Hocking on the R-devel mailing list.)
  * The matrix multiply operator %*% is now an S3 generic, belonging
    to new group generic matrixOps.  From Tomasz Kalinowski's
    contribution in PR#18483.
  * New function array2DF() to convert arrays to data frames,
    particularly useful for the list arrays created by tapply().
  DATES and TIMES:
  * On platforms where (non-UTC) datetimes before 1902 (or before
    1900 as with system functions on recent macOS) are guessed by
    extrapolating time zones from 1902-2037, there is a warning at
    the first use of extrapolation in a session.  (As all time zones
    post 2037 are extrapolation, we do not warn on those.)
  * (Platforms using --with-internal-tzone, including Windows and by
    default macOS). How years are printed in dates or date-times can
    be controlled by environment variable R_PAD_YEARS_BY_ZERO.  The
    default remains to pad to 4 digits by zeroes, but setting value
    no gives no padding (as used by default by glibc).
  * strftime() tries harder to determine the offset for the "%z"
    format, and succeeds on the mainstream R platforms.
  * strftime() has a limit of 2048 bytes on the string produced -
    attempting to exceed this is an error.  (Previously it silently
    truncated at 255 bytes.)
  * sessionInfo() records (and by default prints) the system time
    zone as part of the locale information.  Also, the source
    (system/internal) of the date-time conversion and printing
    functions.
  * Objects of class "POSIXlt" created in this version of R always
    have 11 components: component zone is always set, and component
    gmtoff is set for times in UTC and usually set on the (almost
    all) platforms which have C-level support, otherwise is NA.
  * There are comprehensive validity checks on the structure of
    objects of class "POSIXlt" when converting (including formatting
    and printing).  (This avoids mis-conversions of hand-crafted
    objects.)
  * There is some support for using the native date-time routines on
    macOS: this is only viable on recent versions (e.g. 12.6 and 13)
    and does get wrong some historical changes (before 1900, during
    WWII).  Use of --with-internal-tzone remains the default.
  * as.POSIXct(&lt;numeric&gt;) and as.POSIXlt(.) (without specifying
    origin) now work.  So does as.Date(&lt;numeric&gt;).
  * as.Date.POSIXct(., tz) now treats several tz values, notably
    "GMT" as equivalent to "UTC", proposed and improved by Michael
    Chirico and Joshua Ulrich in PR#17674.
  * Experimental balancePOSIXlt() utility allows using "ragged" and
    or out-of-range "POSIXlt" objects more correctly, e.g., in
    subsetting and subassignments.  Such objects are now documented.
    More experimentally, a "POSIXlt" object may have an attribute
    "balanced" indicating if it is known to be filled or fully
    balanced.
  * Functions axis.Date() and axis.POSIXct() are rewritten to gain
    better default tick locations and better default formats by using
    prettyDate(). Thanks to Swetlana Herbrandt.
  * The mapping of Windows' names for time zones to IANA's 'Olson'
    names has been updated.  When ICU is available (it is by
    default), it is used to get a mapping for the current region set
    in Windows.  This can be overridden by setting environment
    variable TZ to the desired Olson name - see OlsonNames() for
    those currently available.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 16
    and so packages that provide graphics devices should be
    reinstalled.
  * The grDevices and grid packages have new functions for rendering
    typeset glyphs, primarily: grDevices::glyphInfo() and
    grid::grid.glyph().
    Rendering of typeset glyphs is only supported so far on the
    Cairo-based graphics devices and on the pdf() and quartz()
    devices.
  * The defined behaviour for "clear" and "source" compositing
    operators (via grid::grid.group()) has been changed (to align
    better with simple interpretation of original Porter-Duff
    definitions).
  * Support for gradients, patterns, clipping paths, masks, groups,
    compositing operators, and affine transformations has been added
    to the quartz() device.
  INSTALLATION on a UNIX-ALIKE:
  * A system installation of generic LAPACK 3.10.0 or later will be
    preferred to the version in the R sources.
    configure option --with-lapack=no (equivalently --without-lapack)
    forces compilation of the internal LAPACK sources.
    If --with-lapack is not specified, a system liblapack is looked
    for and used if it reports version 3.10.0 or later and does not
    contain BLAS routines.
    Packages using LAPACK will need to be reinstalled if this changes
    to using an external library.
  * On aarch64 Linux platforms using GCC, configure now defaults to
  - fPIC (instead of -fpic), as desired in PR#18326.
  * configure now checks conversion of datetimes between POSIXlt and
    POSIXct around year 2020.  Failure (which has been seen on
    platforms missing tzdata) is fatal.
  * If configure option --with-valgrind-instrumentation is given
    value 1 or 2, option --with-system-valgrind-headers is now the
    default and ignored (with a warning).  It is highly recommended
    that the system headers are installed alongside valgrind: they
    are part of its packaging on some Linux distributions and
    packaged separately (e.g. in the valgrind-devel RPM) on others.
    configure will give a warning if they are not found.
    The system headers will be required in a future release of R to
    build with valgrind instrumentation.
  * libcurl 8.x is now accepted by configure: despite a change in
    major version number it changes neither API nor ABI.
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools43, an update of the Rtools42 toolchain.  It is
    based on gcc 12 and newer versions of MinGW-W64, binutils and
    libraries.  At this time R-devel can still be built using
    Rtools42 without changes, but when R-devel is installed via the
    installer, it will by default look for Rtools43.
  * Old make targets rsync-extsoft and 32-bit ones that are no longer
    needed have been removed.
  * Default builds (including for packages) no longer select C99.
    Thus the C standard used is the default for the compiler, which
    for the toolchain in Rtools43 is C17.  (This is consistent with
    Unix builds.)
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++17 where
    available (which it is on all currently checked platforms): if
    not C++14 or C++11 is used if available otherwise C++ is not
    supported.
  * USE_FC_LEN_T is the default: this uses the correct
    (compiler-dependent) prototypes for Fortran BLAS/LAPACK routines
    called from C/C++, and requires adjustment of many such calls -
    see 'Writing R Extensions' SS6.6.1.
  * There is initial support for C++23 as several compilers are now
    supporting -std=c++23 or -std=c++2b or similar.  As for C++20,
    there no additional configure checks for C++23 features beyond a
    check that the compiler reports a __cplusplus value greater than
    that in the C++20 standard.  C++ feature tests should be used.
  * There is support for a package to indicate the version of the C
    standard which should be used to compile it, and for the
    installing user to specify this.  In most cases R defaults to the
    C compiler's default standard which is C17 (a `bug-fix' of C11) -
    earlier versions of R or compilers may have defaulted to C99.
    Current options are:
    USE_C17 Use a standard that is at most C17.  The intention is to
    allow legacy packages to still be installed when later C
    standards become the default, including packages using new
    keywords as identifiers or with K&amp;R-style function
    declarations.  This will use C17 if available, falling back
    to C11.
    USE_C90 Use the C90 (aka C89) standard.  (As that standard did
    not require compilers to identify that version, all we can
    verify is that the compiler does not claim to be using a
    later standard.  It may accept C99 features - for example
    clang accepts // to make comments.)
    USE_C99 Use the C99 standard. This should be rarely needed - it
    avoids the few new features of C11/C17 which can be useful if
    a package assumes them if C17 is specified and they are not
    implemented.
    USE_C23 Use C23 (or in future, later).  Compiler/library support
    for C23 is still being implemented, but LLVM clang from
    15.0.0 and the upcoming GCC 13 have quite extensive support.
    These can be specified as part of the SystemRequirements field in
    the package's DESCRIPTION file or _via_ options --use-C17 and so
    on of R CMD INSTALL and R CMD SHLIB.
    For further details see "Writing R Extensions" SS1.2.5.
  * (Windows) A src/Makefile.ucrt or src/Makefile.win file is now
    included after R_HOME/etcR_ARCH/Makeconf and so no longer needs
    to include that file itself.  Installation of a package with such
    a file now uses a site Makevars file in the same way as a package
    with a src/Makevars.win file would.
  * configure is now passed crucial variables such as CC and CFLAGS
    in its environment, as many packages were not setting them (as
    documented in 'Writing R Extensions' SS1.2).
    This has most effect where configure is used to compile parts of
    the package - most often by cmake or libtool which obfuscate the
    actual compile commands used.
    Also used for configure.win and configure.ucrt on Windows.
  FORTRAN FLAGS:
  * The flag -fno-optimize-sibling-calls is no longer forced for
    gfortran 7 and later.  It should no longer be needed now using
    'hidden' character-length arguments when calling BLAS/LAPACK
    routines from C/C++ is the default even for packages.  (Unless
    perhaps packages call Fortran code from C/C++ without using R's
    headers and without allowing for these arguments.)
  C-LEVEL FACILITIES:
  * The deprecated S-compatibility macros DOUBLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * The deprecated legacy typedefs of Sint and Sfloat in header R.h
    are no longer defined, and that header no longer includes header
    limits.h from C nor climits from C++.
  * New macro CAD5R() is provided in Rinternals.h and used in a few
    places in the R sources.
  * ALTREP now supports VECSXP vectors. Contributed by Gabor Csardi
    in PR#17620.
  * The Rcomplex definition (in header R_ext/Complex.h) has been
    extended to prevent possible mis-compilation when interfacing
    with Fortran (PR#18430).  The new definition causes compiler
    warnings with static initializers such as {1, 2}, which can be
    changed to {.r=1, .i=2}.
    Using the new definition from C++ depends on compiler extensions
    supporting C features that have not been incorporated into the
    C++ standards but are available in g++ and clang++: this may
    result in C++ compiler warnings but these have been worked around
    for recent versions of common compilers (GCC, Apple/LLVM clang,
    Intel).
    It is intended to change the inclusion of header R_ext/Complex.h
    by other R headers, so C/C++ code files which make use of
    Rcomplex should include that header explicitly.
  UTILITIES:
  * R CMD check does more checking of package .Rd files, warning
    about invalid email addresses and (some) invalid URIs and noting
    empty \item labels in description lists.
  * R CMD check now also reports problems when reading package news
    in md (file NEWS.md) and (optionally) plain text (file NEWS)
    formats.
  * _R_CHECK_TIMINGS_ defaults to a value from the environment even
    for R CMD check --as-cran; this allows for exceptionally fast or
    slow platforms.
    It now applies to checking PDF and HTML versions of the manuals,
    and 'checking CRAN incoming feasibility'.
  * R CMD check can optionally (but included in --as-cran) check
    whether HTML math rendering _via_ KaTeX works for the package .Rd
    files.
  * Non-interactive debugger invocations can be trapped by setting
    the environment variable _R_CHECK_BROWSER_NONINTERACTIVE_ to a
    true value.  This is enabled by R CMD check --as-cran to detect
    the use of leftover browser() statements in the package.
  * The use of sprintf and vsprintf from C/C++ has been deprecated in
    macOS 13 and is a known security risk.  R CMD check now reports
    (on all platforms) if their use is found in compiled code:
    replace by snprintf or vsnprintf respectively. [*NB:* whether
    such calls get compiled into the package is platform-dependent.]
  * Where recorded at installation, R CMD check reports the C and
    Fortran compilers used to build R.
    It reports the OS in use (if known, as given by osVersion) as
    well as that R was built for.
    It notes if a C++ standard was specified which is older than the
    current default: many packages have used C++11 to mean 'not
    C++98' - as C++11 is the minimum supported since R 4.0.0, that
    specification can probably be removed.
  * R CMD INSTALL reports the compilers (and on macOS, the SDK) used,
    and this is copied to the output of R CMD check.
    Where a C++ standard is specified, it is reported.
  * R CMD check's 'checking compilation flags in Makevars' has been
    relaxed to accept the use of flags such as -std=f2008 in
    PKG_FFLAGS.
  * tools::buildVignettes() has a new argument skip, which is used by
    R CMD check to skip (and note) vignettes with unavailable
    \VignetteDepends (PR#18318).
  * New generic .AtNames() added to enable class-specific completions
    after @. The formerly internal function findMatches() is now
    exported, mainly for use in methods for .DollarNames() and
    .AtNames().
  DEPRECATED AND DEFUNCT:
  * default.stringsAsFactors() is defunct.
  * Calling as.data.frame.&lt;class&gt;() directly (for 12 atomic classes)
    is going to be formally deprecated, currently activated by
    setting the environment variable
    _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ to non-empty, which also
    happens in R CMD check --as-cran.
  BUG FIXES:
  * Hashed environments with sizes less than 5 can now grow.
    (Reported to R-devel by Duncan Garmonsway.)
  * as.character(&lt;Rd&gt;, deparse = TRUE) failed to re-escape curly
    braces in LaTeX-like text.  (Reported by Hadley Wickham in
    PR#18324.)
  * library() now passes its lib.loc argument when requiring Depends
    packages; reported (with fix) in PR#18331 by Mikael Jagan.
  * R CMD Stangle: improved message about 'Output' files.
  * head(x, n) and tail(x, n) now signal an error if n is not
    numeric, instead of incidentally "working" sometimes returning
    all of x.  Reported and discussed by Colin Fay, in PR#18357.
  * The "lm" method for summary() now gives the correct F-statistic
    when the model contains an offset.  Reported in PR#18008.
  * C() and `contrasts&lt;-`() now preserve factor level names when
    given a function object (as opposed a function name which did
    preserve names). Reported in PR#17616.
  * c(a = 1, 2)[[]] no longer matches 2 but rather signals a
    _classed_ error.  Reported and analysed by Davis Vaughan in
    PR#18367, a duplicate of PR#18004, by Jan Meis et al.  For
    consistency, NULL[[]] is also erroneous now.  x[[]] &lt;- v gives an
    error of the same class "MissingSubscriptError".
  * The relist() function of utils now supports NULL elements in the
    skeleton (PR#15854).
  * ordered(levels = *) (missing x) now works analogously to factor(,
    ordered=TRUE); reported (with fix) by Achim Zeileis in PR#18389.
  * User-defined Rd macro definitions can now span multiple lines,
    thanks to a patch from Duncan Murdoch. Previously, the Rd parser
    silently ignored everything after the first line.
  * Plain-text help (tools::Rd2txt()) now preserves an initial blank
    line for text following description list items.
  * tools::Rd2HTML() and tools::Rd2latex() no longer split \arguments
    and \value lists at Rd comments.
  * tools::Rd2latex() now correctly handles optional text outside
    \items of argument lists as well as bracketed text at the
    beginning of sections, e.g., \value{[NULL]}.
  * as.character(&lt;POSIXt&gt;) now behaves more in line with the methods
    for atomic vectors such as numbers, and is no longer influenced
    by options().  Ditto for as.character(&lt;Date&gt;).  The
    as.character() method gets arguments digits and OutDec with
    defaults _not_ depending on options().  Use of as.character(*,
    format = .) now warns.
  * Similarly, the as.character.hexmode() and *.octmode() methods
    also behave as good citizen methods and back compatibility option
    keepStr = TRUE.
  * The as.POSIXlt(&lt;POSIXlt&gt;) and as.POSIXct(&lt;POSIXct&gt;) default
    methods now do obey their tz argument, also in this case.
  * as.POSIXlt(&lt;Date&gt;) now does apply a tz (time zone) argument, as
    does as.POSIXct(); partly suggested by Roland Fuss on the R-devel
    mailing list.
  * as.Date.POSIXlt(x) now also works when the list components are of
    unequal length, aka "partially filled" or "ragged".
  * expand.model.frame() looked up variables in the wrong environment
    when applied to models fitted without data.  Reported in
    PR#18414.
  * time() now (also) uses the ts.eps = getOption("ts.eps") argument
    and thus by default rounds values very close to the start (or
    end) of a year.  Based on a proposal by Andre"i V. Kostyrka on
    R-help.
  * Printing of a factanal() result with just one factor and sort =
    TRUE now works regularly, fixing PR#17863 by Timothy Bates,
    thanks to the 'R Contributors' working group.
  * Printing 0-length objects of class "factor", "roman", "hexmode",
    "octmode", "person", "bibentry", or "citation" now prints
    something better, one of which fixes PR#18422, reported by
    Benjamin Feakins.
  * Sys.timezone() queries timedatectl only if systemd is loaded;
    addressing a report by Jan Gorecki in PR#17421.
  * The formula method of cor.test() had scoping problems when
    environment(formula) was not the calling environment; reported
    with a patch proposal by Mao Kobayashi in PR#18439.
  * attach() of an environment with active bindings now preserves the
    active bindings.  Reported by Kevin Ushey in PR#18425.
  * BLAS detection now works also with system-provided libraries not
    available as regular files.  This fixes detection of the
    Accelerate framework on macOS since Big Sur.  Reported by David
    Novgorodsky.
  * download.file() gives a helpful error message in case of an
    invalid download.file.method option, thanks to Colin Fay's report
    in PR#18455.
  * Sporadic crashes of Rterm when using completion have been fixed.
  * Rprof() is now more reliable.  A livelock in thread
    initialization with too short sampling interval has been fixed on
    macOS.  A deadlock in using the C runtime has been fixed on
    Windows.  A potential deadlock has been prevented on Unix.
  * Cursor placement in Rgui now works even after a fixed-width font
    is selected.
  * Mandatory options (options()) are now set on startup so that
    saving and restoring them always works (PR#18372).
  * Package installation, R CMD INSTALL or install.packages(*), now
    parses each of the &lt;pkg&gt;/R/*.R files individually instead of
    first concatenating and then parse()ing the large resulting file.
    This allows parser or syntax errors to be diagnosed with correct
    file names and line numbers, thanks to Simon Dedman's report and
    Bill Dunlap's patch in PR#17859.
    This _does_ require syntactically self contained R source files
    now, fixing another inadvertent bug.
  * predict.lm(&lt;model with offset&gt;) now finds the offset in the
    correct environment, thanks to Andr'e Gillibert's report and patch
    in PR#18456.
  * getInitial(&lt;formula&gt;) now finds the selfStart model in the
    correct environment.  (Reported by Ivan Krylov in PR#18368.)
  * Fix for possible segfault when using recently-added graphics
    features, such as gradients, clipping paths, masks, and groups
    with pdf(file=NULL).
  * class(m) &lt;- class(m) no longer changes a matrix m by adding a
    class _attribute_.
  * packageDate(pkg) now only warns once if there is no pkg.
  * When ts() creates a multivariate time series, "mts", it also
    inherits from "array" now, and is.mts() is documented _and_
    stricter.
  * Rd2txt() now preserves line breaks of \verb Rd content and from
    duplicated \cr.  The former also fixes the rendering of verbatim
    output from Rd \Sexpr in plain-text help.
  * uniroot(f, interval) should no longer wrongly converge _outside_
    the interval in some cases where abs(f(x)) == Inf for an x at the
    interval boundary, thanks to posts by Ben Bolker and Serguei
    Sokol on R-devel.
  * Vectorized alpha handling in palette functions such as in gray(),
    rainbow(), or hcl.colors() works correctly now, thanks to Achim
    Zeileis' report and patch in PR#18476.
  * Formatting and print()ing of bibentry objects has dropped the
    deprecated citation.bibtex.max argument, such that the bibtex
    argument's default for print.bibentry() depends directly on the
    citation.bibtex.max option, whereas in format.bibentry() the
    option no longer applies.
  * Attempting to use a character string naming a foreign function
    entry point in a foreign function call in a package will now
    signal an error if the packages has called R_forceSymbols to
    specify that symbols must be used.
  * An error in table() could permanently set options(warn=2)
    promoting all subsequent warnings to errors.
  * The sigma() function gave misleading results for binary GLMs.  A
    new method for objects of class "glm" returns the square root of
    the estimate of the dispersion parameter using the same
    calculation as summary.glm().
  * bs() and ns() in the (typical) case of automatic knot
    construction, when some of the supposedly inner knots coincide
    with boundary knots, now moves them inside (with a warning),
    building on PR#18442 by Ben Bolker.
  * R CMD on Windows now skips the site profile with --no-site-file
    and --vanilla even when R_PROFILE is set (PR#18512, from Kevin
    Ushey).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1686916800">- CHANGES IN R 4.3.1:
  C-LEVEL FACILITIES:
  * The C-level API version of R's integrate(), Rdqags() in Applic.h,
    now returns the correct number of integrand evaluations neval,
    fixing PR#18515 reported and diagnosed by Stephen Wade.
  * The C prototypes for LAPACK calls dspgv and dtptrs in
    R_exts/Lapack.h had one too many and one too few character length
    arguments - but this has not caused any known issues. To get the
    corrected prototypes, include
    [#]include &lt;Rconfig.h&gt; // for PR18534fixed
    [#]ifdef PR18534fixed
    [#] define usePR18534fix 1
    [#]endif
    [#]include &lt;R_exts/Lapack.h&gt;
    in your C/C++ code (PR#18534).
  INSTALLATION:
  * Many of the checks of esoteric Internet operations and those
    using unreliable external sites have been moved to a new target
    that is not run by default and primarily intended for the core
    developers.  To run them use
    cd tests; make test-Internet-dev
  BUG FIXES:
  * .S3methods(), typically called from methods(), again marks
    methods from package base as visible.
    Also, the visibility of non-base methods is again determined by
    the method's presence in search().
  * tools::Rdiff() is now more robust against invalid strings, fixing
    installation tests on Windows without Rtools installed
    (PR#18530).
  * Fix (new) bug in hcl.colors(2, *), by Achim Zeileis (PR#18523).
  * head(., &lt;illegal&gt;) and tail(..) now produce more useful "Error in
    ...." error messages, fixing PR#18362.
  * Package code syntax on Windows is checked in UTF-8 when UTF-8 is
    the native encoding.
  * na.contiguous(x) now also returns the first run, when it is at
    the beginning and there is a later one of the same length;
    reported to R-devel, including a fix, by Georgi Boshnakov.
    Further, by default, it modifies only an existing attr(*,"tsp")
    but otherwise no longer sets one.
  * chol(&lt;not pos.def&gt;, pivot = &lt;T|F&gt;) now gives a correct error or
    warning message (depending on pivot), thanks to Mikael Jagan's
    (PR#18541).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1699012800">- CHANGES IN R 4.3.2:
  NEW FEATURES:
  * The default initialization of the "repos" option from the
    repositories file at startup can be skipped by setting
    environment variable R_REPOSITORIES to NULL such that
    getOption("repos") is empty if not set elsewhere.
  * qr.X() is now an implicit S4 generic in methods.
  * iconv(to = "ASCII//TRANSLIT") is emulated using substitution on
    platforms which do not support it (notably Alpine Linux).  This
    should give a human-readable conversion in ASCII on all platforms
    (rather than NA_character_).
  * trans3d() gains options continuous and verbose addressing the
    problem of possible "wrap around" when projecting too long
    curves, as reported by Achim Zeileis in PR#18537.
  * tools::showNonASCII() has been rewritten to work better on macOS
    14 (which has a changed implementation of iconv()).
  * tiff(type = "quartz") (the default on macOS) now warns if
    compression is specified: it continues to be ignored.
  INSTALLATION on a UNIX-ALIKE:
  * There is some support for building with Intel's LLVM-based
    compilers on x86_64 Linux, such as (C) icx, (C++) ipcx and
    (Fortran) ifx from oneAPI 2023.x.y.
  * There is support for using LLVM's flang-new as the Fortran
    compiler from LLVM 16.0.x (preferably 17.0.0 or later).
  UTILITIES:
  * R CMD check reports the use of the Fortran 90 random number
    generator RANDOM_NUMBER() and the subroutines to initialize it.
    'Writing R Extensions' has example code to use R's RNGs from
    Fortran.
  BUG FIXES:
  * substr(x, n, L) &lt;- cc now works (more) correctly for multibyte
    UTF-8 strings x when L &gt; nchar(x), thanks to a report and patch
    by 'Architect 95'.
  * contrib.url(character()) now returns 0-length character() as
    documented, which also avoids spurious warnings from
    available.packages() et al. in the edge case of an empty vector
    of repository URLs.
  * readChar(., 4e8) no longer fails, thanks to Kodi Arfer's report
    (PR#18557).
  * lapply(&lt;list&gt;, as.data.frame) no longer warns falsely for some
    base vector components.
  * Communication between parent and child processes in the multicore
    part of parallel could fail on platforms that do not support an
    arbitrarily large payload in system functions read()/write() on
    pipes (seen on macOS where a restriction to INT_MAX bytes is
    documented, without doing a partial read unlike Linux). The
    payload is now split into 1Gb chunks to avoid that problem.
    (PR#18571)
  * qqplot(x,y, conf.level=.) gives better confidence bounds when
    length(x) != length(y), thanks to Alexander Ploner's report and
    patch proposal (PR#18557).
  * norm(&lt;0-length&gt;, "2") now gives zero instead of an error, as all
    the other norm types, thanks to Mikael Jagan's PR#18542.
  * Build-stage Rd macros \packageAuthor and \packageMaintainer now
    process Authors@R, fixing NA results when the package DESCRIPTION
    omits Author and Maintainer fields.
  * Formatting and printing complex numbers could give things like
    0.1683-0i because of rounding error: -0i is now replaced by +0i.
  * postscript() refused to accept a title comment containing the
    letter "W" (PR#18599).
  * isoreg(c(1,Inf)) signals an error instead of segfaulting, fixing
    PR#18603.
  * tiff(type = "Xlib") was only outputting the last page of
    multi-page plots.
  * tools::latexToUtf8() again knows about \~{n} and other letters
    with tilde, fixing a regression in R 4.3.0, and about \^{i} as an
    alternative to \^{\i} (similarly with other accents).
    Furthermore, LaTeX codes for accented I letters are now correctly
    converted, also fixing related mistakes in
    tools::encoded_text_to_latex().
  * tar(*, tar = "internal") no longer creates out-of-spec tar files
    in the very rare case of user or group names longer than 32
    bytes, fixing PR#17871 with thanks to Ivan Krylov.
  * When using the "internal" timezone datetime code, adding a
    fraction of a second no longer adds one second, fixing PR#16856
    from a patch by Ivan Krylov.
  * tools::checkRd() no longer produces spurious notes about
    "unnecessary braces" from multi-line Rd results of \Sexpr macros.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1709208000">- CHANGES IN R 4.3.3:
  NEW FEATURES:
  * iconv() now fixes up variant encoding names such as "utf8"
    case-insensitively.
  DEPRECATED AND DEFUNCT:
  * The legacy encoding = "MacRoman" is deprecated in pdf() and
    postscript(): support was incomplete in earlier versions of R.
  BUG FIXES:
  * Arguments are now properly forwarded to methods on S4 generics
    with ... in the middle of their formal arguments. This was broken
    for the case when a method introduced an argument but did not
    include ... in its own formals. Thanks to Herv'e Pag`es for the
    report PR#18538.
  * Some invalid file arguments to pictex(), postscript() and xfig()
    opened a file called NA rather than throw an error.  These
    included postscript(NULL) (which some people expected to work
    like pdf(NULL)).
  * Passing filename = NA to svg(), cairo_pdf(), cairo_ps() or the
    Cairo-based bitmap devices opened a file called NA: it now throws
    an error.
  * quartz(file = NA) opened a file called NA, including when used as
    a Quartz-based bitmap device.  It now gives an error.
  * rank(&lt;long vector&gt;) now works, fixing PR#18617, thanks to Ilia
    Kats.
  * seq.int() did not adequately check its length.out argument.
  * match(&lt;POSIXct&gt;, .) is correct again for differing time zones,
    ditto for "POSIXlt", fixing PR#18618 reported by Bastian Klein.
  * drop.terms(*, dropx = &lt;0-length&gt;) now works, fixing PR#18563 as
    proposed by Mikael Jagan.
  * drop.terms(*) keeps + offset(.) terms when it should, PR#18565,
    and drop.terms() no longer makes up a response, PR#18566, fixing
    both bugs thanks to Mikael Jagan.
  * getS3method("t", "test") no longer finds the t.test() function,
    fixing PR#18627.
  * pdf() and postscript() support for the documented Adobe encodings
    "Greek" and "Cyrilllic" was missing (although the corresponding
    Windows' codepages could be used).
  * Computations of glyph metric information for pdf() and
    postscript() did not take into account that transliteration could
    replace one character by two or more (only seen on macOS 14) and
    typically warned that the information was not known.
  * rank(x) no longer overflows during integer addition, when
    computing rank average for largish but not-yet long vector x,
    fixing PR#18630, thanks to Ilia Kats.
  * list.files() on Windows now returns also files with names longer
    that 260 bytes (the Windows limit is 260 characters).
    Previously, some file names particularly with 'East Asian'
    characters were omitted.
  * cov2cor(&lt;0 x 0&gt;) now works, fixing PR#18423 thanks to Mikael
    Jagan and Elin Waring.
  * cov2cor(&lt;negative diagonal&gt;) and similar now give one warning
    instead of two, with better wording, fixing PR#18424 thanks to
    Mikael Jagan.
  * tools:: startDynamicHelp() now ensures port is in proper range,
    fixing PR#18645.
  * pbeta(x, a,b) is correct now for x=0 or 1 in the boundary cases
    where a or b or both are 0, fixing PR#18672 thanks to Michael
    Fay.
  * pmatch(x, table) for large table, also called for data frame row
    selection, dfrm[nm, ], is now interruptible, fixing PR#18656.
  * predict(&lt;rank-deficient lm&gt;, newdata=*) fix computing of nbasis,
    see Russ Lenth's comment 29 in PR#16158.
  * Added a work-around for a bug in macOS 14.3.1 and higher which
    prevents R plots in the Quartz Cocoa device from updating on
    screen.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1713960000">- CHANGES IN R 4.4.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Startup banners, R --version, sessionInfo() and R CMD check no
    longer report (64-bit) as part of the platform as this is almost
    universal - the increasingly rare 32-bit platforms will still
    report (32-bit).
    On Windows, ditto for window titles.
  * is.atomic(NULL) now returns FALSE, as NULL is not an atomic
    vector.  Strict back-compatibility would replace is.atomic(foo)
    by (is.null(foo) || is.atomic(foo)) but should happen only
    sparingly.
  NEW FEATURES:
  * The confint() methods for "glm" and "nls" objects have been
    copied to the stats package.  Previously, they were stubs which
    called versions in package MASS. The MASS namespace is no longer
    loaded if you invoke (say) confint(glmfit).  Further, the "glm"
    method for profile() and the plot() and pairs() methods for class
    "profile" have been copied from MASS to stats.  (profile.nls()
    and plot.profile.nls() were already in stats.)
  * The confint() and profile methods for "glm" objects have gained a
    possibility to do profiling based on the Rao Score statistic in
    addition to the default Likelihood Ratio. This is controlled by a
    new test = argument.
  * The pairs() method for "profile" objects has been extended with a
    which = argument to allow plotting only a subset of the
    parameters.
  * The "glm" method for anova() computes test statistics and
    p-values by default, using a chi-squared test or an F test
    depending on whether the dispersion is fixed or free.  Test
    statistics can be suppressed by giving argument test a false
    logical value.
  * In setRepositories() the repositories can be set using their
    names via name = instead of index ind =.
  * methods() and .S3methods() gain a all.names option for the (rare)
    case where functions starting with a . should be included.
  * Serializations can now be interrupted (e.g., by Ctrl-C on a
    Unix-alike) if they take too long, e.g., from save.image(),
    thanks to suggestions by Ivan Krylov and others on R-devel.
  * New startup option --max-connections to set the maximum number of
    simultaneous connections for the session.  Defaults to 128 as
    before: allowed values up to 4096 (but resource limits may in
    practice restrict to smaller values).
  * R on Windows (since Windows 10 2004) now uses the new Segment
    Heap allocator. This may improve performance of some
    memory-intensive applications.
  * When R packages are built, typically by R CMD build &lt;pkg&gt;, the
    new --user=&lt;build_user&gt; option overrides the (internally
    determined) user name, currently Sys.info()["user"] or LOGNAME.
    This is a (modified) fulfillment of Will Landau's suggestion in
    PR#17530.
  * tools::testInstalledBasic() gets new optional arguments outDir
    and testSrcdir, e.g., allowing to use it in a &lt;builddir&gt; !=
    &lt;srcdir&gt; setup, and in standard "binary" Windows installation
  * if* a source tests/ folder is present.
  * range(&lt;DT_with_Inf&gt;, finite = TRUE) now work for objects of class
    "Date", "POSIXct", and "POSIXlt" with infinite entries,
    analogously to range.default(), as proposed by Davis Vaughan on
    R-devel.  Other range()-methods can make use of new function
    .rangeNum().
  * New .internalGenerics object complementing .S3PrimitiveGenerics,
    for documentation and low-level book-keeping.
  * grid() now invisibly returns the x- and y- coordinates at which
    the grid-lines were drawn.
  * norm(., type) now also works for complex matrices.
  * kappa(., exact = TRUE, norm = *) now works for all norms and also
    for complex matrices.  In symmetric / triangular cases, the new
    argument uplo = "U" | "L" allows the upper or lower triangular
    part to be specified.
  * memDecompress(type = "unknown") recognizes compression in the
    default 'zlib' format as used by memCompress(type = "gzip").
  * memCompress() and memDecompress() will use the libdeflate library
    (&lt;https://github.com/ebiggers/libdeflate&gt;) if installed.  This
    uses the same type of compression for type = "gzip" but is 1.5-2x
    faster than the system libz library on some common platforms: the
    speed-up may depend on the library version.
  * diff() for objects of class "Date", "POSIXct", and "POSIXlt"
    accepts a units argument passed via ....
  * Dynamic help now does a much better job of rendering package
    DESCRIPTION metadata.
  * Rprof() gains an event argument and support for elapsed (real)
    time profiling on Unix (PR#18076).
  * filled.contour() gains a key.border argument.
  * tools::update_pkg_po() gets arguments pot_make and mo_make for
    _not_ re-making the corresponding files, and additionally a
    verbose argument.
  * Hexadecimal string colour specifications are now accepted in
    short form, so, for example, we can use "#123", which is
    equivalent to "#112233".
    Thanks to MikeFC for the original idea and Ella Kaye, Malcolm
    Barrett, George Stagg, and Hanne Oberman for the patch.
  * Plain-text help shows \var markup by angle brackets.
  * The new experimental primitive function declare() is intended to
    eventually allow information about R code to be communicated to
    the interpreter, compiler, and code analysis tools. The syntax
    for declarations is still being developed.
  * Functions psmirnov(), qsmirnov() and rsmirnov() in package stats
    have had argument two.sided renamed to alternative, to take into
    account that the permutation distributions of the one-sided
    statistics can be different in the case of ties.  Consequence of
    PR#18582.
  * sort() is now an implicit S4 generic in methods.
  * Formatting and printing, format(z), print(z), of complex vectors
    z no longer zap relatively small real or imaginary parts to zero,
    fixing PR#16752.  This is an API change, as it was documented
    previously to round real and imaginary parts together on purpose,
    producing nicer looking output.  As mentioned, e.g. in the PR,
    this change is compatible with many other "R-like" programming
    environments.
    We have simplified the internal code and now basically format the
    real and imaginary parts independently of each other.
  * New experimental functions Tailcall() and Exec() to support
    writing stack-space-efficient recursive functions.
  * Where characters are attempted to be plotted by pdf(),
    postscript() and xfig() which are not in the selected 8-bit
    character set (most often Latin-1) and the R session is using a
    UTF-8 locale, the warning messages will show the UTF-8 character
    rather than its bytes and one dot will be substituted per
    character rather than per byte.  (Platforms whose iconv() does
    transliteration silently plot the transliteration.)
    In a UTF-8 locale some transliterations are now done with a
    warning (e.g., dashes and Unicode minus to hyphen, ligatures are
    expanded, permille (‰) is replaced by o/oo), although the OS may
    have got there first.  These are warnings as they will continue
    to be replaced by dots in earlier versions of R.
  * The matrix multiplication functions crossprod() and tcrossprod()
    are now also primitive and S3 generic, as %*% had become in R
    4.3.0.
  * source() and example() have a new optional argument catch.aborts
    which allows continued evaluation of the R code after an error.
  * The non-Quartz tiff() devices allow additional types of
    compression if supported by the platform's libtiff library.
  * The list of base and recommended package names is now provided by
    tools::standard_package_names().
  * cairo_pdf() and cairo_ps() default to onefile = TRUE to closer
    match pdf() and postscript().
  * New option catch.script.errors provides a documented way to catch
    errors and then continue in non-interactive use.
  * L %||% R newly in base is an expressive idiom for the phrases
    if(!is.null(L)) L else R or if(is.null(L)) R else L.
  * The return value from warnings() now always inherits from
    "warnings" as documented, now also in the case of no warnings
    where it previously returned NULL.
  * as.complex("1i") now returns 0 + 1i instead of NA with a warning.
  * z &lt;- c(NA, 1i) now keeps the imaginary part Im(z[1]) == 0, no
    longer coercing to NA_complex_.  Similarly, cumsum(z) correctly
    sums real and imaginary parts separately, i.e., without
    "crosstalk" in case of NAs.
  * On Alpine Linux iconv() now maps "latin2", "latin-2", "latin9"
    and "latin-9" to encoding names the OS knows about
    (case-insensitively).
  * iconv(sub = "Unicode") now always zero-pads to four (hex) digits,
    rather than to 4 or 8.  (This seems to have become the convention
    once Unicode restricted the number of Unicode points to 2^21 - 1
    and so will never need more than 6 digits.)
  * NCOL(NULL) now returns 0 instead of 1, for consistency with
    cbind().
  * The information for the Euro glyph missing from the Adobe .afm
    files for the Courier, Helvetica and Times families has been
    copied from their URW equivalents - this will improve vertical
    centring in the pdf() and postscript() devices.
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.12.0.  The changes are almost entirely cosmetic.
  * The included LAPACK sources have been updated to version 3.12.0
    and some further double-complex routines added.
  * There are new font families for the 2014--5 URW 2.0 fonts (see
    ?pdf) which are included in recent versions of Ghostscript.
    These have font widths for most Greek glyphs and a few others
    which were missing from the original versions (whose font
    families remain available for reproducibility, although
    Ghostscript-based viewers will render using the 2.0 versions).
  * Improve the large-n efficiency of as.matrix(&lt;dist&gt;), thanks an R
    contributors effort, notably by Tim Taylor and Heather Turner,
    see PR#18660.
  * The default and numeric methods of all.equal() get a check.class
    option.
  * zapsmall() gets new optional arguments, function mFUN and min.d,
    for extra flexibility; fulfills a wish in PR#18199.  Also, it is
    now an implicit S4 generic in package methods.
  * The Rd filter for aspell() gains an ignore argument.
  * New generic function sort_by(), primarily useful for the
    data.frame method which can be used to sort rows of a data frame
    by one or more columns.
  * The icence headers for the RPC code in src/extra/xdr have been
    updated to use the GPL-compatible licence published by Oracle
    America in 2010.
  * New function pkg2HTML() in tools to create single-page HTML
    reference manuals for R packages.
  * The byte code evaluator now uses less C stack space for recursive
    calls to byte-compiled functions. It also makes more of an effort
    to avoid allocations for scalar return values.
  * New completion option backtick (disabled by default) allows
    non-syntactic completions to be wrapped in backquotes. This is
    currently only useful for Jupyter notebooks via the IRkernel
    package, and may cause problems for other backends.
  INSTALLATION:
  * The parser has been updated to work with bison 3.8.2, which is
    now used for the pre-generated parsers in gram.c, file.c, and
    gramRd.c. A few parser error messages have changed, which may
    affect code that relies on exact messages.
  INSTALLATION on a UNIX-ALIKE:
  * System valgrind headers are now required to use configure option
  - -with-valgrind-instrumentation with value 1 or 2.
  * configure will warn if it encounters a 32-bit build, as that is
    nowadays almost untested.
  * Environment variable R_SYSTEM_ABI is no longer used and so no
    longer recorded in etc/Renviron (it was not on Windows and was
    only ever used when preparing package tools).
  * If the libdeflate library and headers are available, libdeflate
    rather than libz is used to (de)compress R objects in lazy-load
    databases.  Typically tasks spend up to 5% of their time on such
    operations, although creating lazy-data databases is one of the
    exceptions.
    This can be suppressed if the library is available by the
    configure option --without-libdeflate-compression.
  * configure option --enable-lto=check has not worked reliably since
    2019 and has been removed.
  * The minimum autoconf requirement for a maintainer build has been
    increased to autoconf 2.71.
    It is intended to increase this to 2.72 for R 4.5.0: the
    distributed configure file was generated using 2.72.
  * The minimum version requirement for an external LAPACK has been
    reduced to 3.9.0.
  * No default C++ compiler is set if no C++17 compiler is detected:
    there is no longer an automatic fallback to C++14 or C++11.
    Compilers from the last five years should have sufficient
    support: for others macros CXX and CXXSTD can be set in file
    config.site to provide a fallback if needed.
    The Objective-C++ compiler now by default uses the standard
    selected by R for C++ (currently C++17) rather than the default
    standard for the C++ compiler (which on macOS is still C++98).
  INSTALLATION on macOS:
  * A new configure option --with-newAccelerate makes use of Apple's
    'new' BLAS / LAPACK interfaces in their Accelerate framework.
    Those interfaces are only available in macOS 13.3 or later, and
    building requires SDK 13.3 or later (from the Command Line Tools
    or Xcode 14.3 or later).
    By default the option uses new Accelerate for BLAS calls: to also
    use it for LAPACK use option --with-newAccelerate=lapack.  The
    later interfaces provide LAPACK 3.9.1 rather than 3.2.1: 3.9.1 is
    from 2021-04 and does not include the improved algorithms
    introduced in LAPACK 3.10.0 (including for BLAS calls).
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools44, an update of the Rtools43 toolchain.  It is
    based on GCC 13 and newer versions of MinGW-W64, binutils and
    libraries (targeting 64-bit Intel CPUs).  R-devel can no longer
    be built using Rtools43 without changes.
  * Rtools44 has experimental support for 64-bit ARM (aarch64) CPUs
    _via_ the LLVM 17 toolchain using lld, clang/flang-new and
    libc++.
  UTILITIES:
  * R CMD check notes when S4-style exports are used without
    declaring a strong dependence on package methods.
  * tools::checkRd() (used by R CMD check) detects more problems with
    \Sexpr-based dynamic content, including bad nesting of \Sexprs
    and invalid arguments.
  * tools::checkRd() now reports Rd titles and section names ending
    in a period; this is ignored by R CMD check unless environment
    variable _R_CHECK_RD_CHECKRD_MINLEVEL_ is set to -5 or smaller.
  * R CMD check now notes Rd files without an \alias, as long
    documented in 'Writing R Extensions' §1.3.1.  The check for a
    missing \description has been moved from tools::checkRd() to
    tools::checkRdContents().
  * R CMD check now visits inst/NEWS.Rd and OS-specific man
    subdirectories when checking Rd files.
  * tools::checkDocFiles() and tools::checkRdContents() now also
    check internal Rd files by default, but "specially" (ignoring
    missing documentation of arguments).
  * R CMD Rdiff gets option --useEx.
  * R CMD check now warns on non-portable uses of Fortran KIND such
    as INTEGER(KIND=4) and REAL(KIND=8).
    To see the failing lines set environment variable
    _R_CHECK_FORTRAN_KIND_DETAILS_ to a true value.
  * When checking Rd files, R CMD check now notes some of the "lost
    braces" that tools::checkRd() finds.  Typical problems are Rd
    macros missing the initial backslash (e.g., code{...}), in-text
    set notation (e.g., {1, 2}, where the braces need escaping), and
    \itemize lists with \describe-style entries of the form
    \item{label}{description}.
  * R CMD INSTALL (and hence check) will compile C++ code with
  - DR_NO_REMAP if environment variable _R_CXX_USE_NO_REMAP_ is set
    to a true value.  It is planned that this will in future become
    the default for compiling C++.
  * The new built-in Rd macro \dontdiff{} can be used to mark example
    code whose output should be ignored when comparing check output
    to reference output (tests/Examples/&lt;pkg&gt;-Ex.Rout.save).  The
    \dontdiff tag, like \donttest, is _not_ shown on the rendered
    help page, so provides a clean alternative to ##
    IGNORE_RDIFF_(BEGIN|END) comments.
  * R CMD build when there is no NAMESPACE, now uses the recommended
    exportPattern("^[^.]"), instead of exporting everything.
  * R CMD check now warns about non-ASCII characters in the NAMESPACE
    file (in addition to R files). Such packages are not portable and
    may fail to install on some platforms.
  C-LEVEL FACILITIES:
  * Headers R_ext/Applic.h and R-ext/Linpack.h used to include
    R_ext/BLAS.h although this was undocumented and unneeded by their
    documented entry points.  They no longer do so.
  * New function R_missing(), factored out from do_missing(), used to
    fix PR#18579.
  * SEXP type S4SXP has been renamed to OBJSXP to support
    experimenting with alternative object systems.  The S4SXP value
    can still be used in C code but is now deprecated.  Based on
    contributions from the R Consortium's Object-Oriented Programming
    Working Group.
  * New function pow1p(x,y) for accurate (1+x)^y.
  * mkCharLenCE was incorrectly documented to take a size_t length
    but was implemented with int (and character strings in R are
    limited to 2^31 - 1 bytes).
  DEPRECATED AND DEFUNCT:
  * data() no longer handles zipped data from long-defunct (since R
    2.13.0) --use-zip-data installations.
  * The legacy graphics devices pictex() and xfig() are now
    deprecated.  They do not support recent graphics enhancements and
    their font handling is rudimentary. The intention is to retain
    them for historical interest as long as they remain somewhat
    functional.
  * Support for encoding = "MacRoman" has been removed from the pdf()
    and postscript() devices - this was a legacy encoding supporting
    classic macOS up to 2001 and no longer has universal libiconv
    support.
  * is.R() is deprecated as no other S dialect is known to be in use
    (and this could only identify historical dialects, not future
    ones).
    Further information on calls can be obtained by setting the
    environment variable _R_DEPRECATED_IS_R_ to error which turns the
    deprecation warning into an error and so by default gives a
    traceback.  (This is done by R CMD check --as-cran.)
  * UseMethod() no longer forwards local variables assigned in the
    generic function into method call environments before evaluating
    the method body. This makes method calls behave more like
    standard function calls and makes method code easier to analyze
    correctly.
  * The twelve as.data.frame.&lt;class&gt;() methods which were deprecated
    only via _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ and in R CMD
    check --as-cran are formally deprecated now in favour of calling
    as.data.frame() or as.data.frame.vector().  The deprecation
    "check" now works also when as.data.frame() is S4 generic thanks
    to Ivan Krylov.
  * The default method for the directional comparison operators &lt;, &gt;,
    &lt;=, and &gt;= now signals an error when one of the operands is a
    language object, i.e. a symbol or a call.
  * For terms.formula(), deprecate abb and neg.out arguments
    _formally_ in addition to just documenting it.
  BUG FIXES:
  * The methods package is more robust to not being attached to the
    search path.  More work needs to be done.
  * pairwise.t.test() misbehaved when subgroups had 0 DF for
    variance, even with pool.sd = TRUE.  (PR#18594 by Jack Berry).
  * Probability distribution functions [dpq]&lt;distrib&gt;(x, *), but also
    bessel[IKJY](x, .) now consistently preserve attributes(x) when
    length(x) == 0, e.g., for a 2 x 0 matrix, thanks to Karolis
    Koncevičius' report PR#18509.
  * Group "Summary" computations such as sum(1:3, 4, na.rm = 5, NA,
    7, na.rm = LL) now give an error instead of either 17 or NN for
    LL true or false, as proposed by Ivan Krylov on the R-devel
    mailing list.  (This also means it is now an error to specify
    na.rm more than once.)
  * as.complex(x) now returns complex(real = x, imaginary = 0) for
    _all_ numerical and logical x, notably also for NA or
    NA_integer_.
  * Directories are now omitted by file.copy(, recursive = FALSE) and
    in file.append() (PR#17337).
  * gsub() and sub() are now more robust to integer overflow when
    reporting errors caused by too large input strings (PR#18346).
  * Top-level handlers are now more robust to attempts to remove a
    handler whilst handlers are running (PR#18508).
  * The handling of Alt+F4 in dialogs created on Windows using
    GraphApp has been fixed (PR#13870).
  * density() more consistently computes grid values for the
    FFT-based convolution, following Robert Schlicht's analysis and
    proposal in PR#18337, correcting density values typically by a
    factor of about 0.999.  Argument old.coords = TRUE provides back
    compatibility.
  * palette.colors() gains a name argument that defaults to FALSE
    controlling whether the vector of colours that is returned has
    names (where possible).  PR#18529.
  * tools::xgettext() no longer extracts the (non-translatable) class
    names from warningCondition and errorCondition calls.
  * S3method(&lt;gen&gt;, &lt;class&gt;, &lt;func&gt;) in the NAMESPACE file now works
    (again) when &lt;func&gt; is visible from the namespace, e.g.,
    imported, or in base.
  * getParseData(f) now also works for a function defined in the
    first of several &lt;pkg&gt;/R/*.R source files, thanks to Kirill
    Müller's report and Duncan Murdoch's patch in PR#16756.
  * Rd \Sexpr macros with nested #ifdef conditionals were not
    processed.
  * A non-blocking connection with non-default encoding (such as a
    socket) now correctly returns from readLines() after new data has
    arrived also when its EOF had been reached previously.  Thanks to
    Peter Meilstrup's report on R-devel and Ivan Krylov's report and
    patch proposal in PR#18555.
  * tools::checkRdContents() failed to detect empty argument
    descriptions when they spanned multiple lines, including those
    generated by prompt().  These cases are now noted by R CMD check.
  * Plain-text help no longer outputs spurious colons in the
    arguments list (for multi-line \item labels in the Rd source).
  * kappa() and rcond() work correctly in more cases; kappa(., norm =
    "2") now warns that it computes the 1-norm with (default) exact =
    FALSE; prompted by Mikael Jagan's quite comprehensive PR#18543.
  * Rd skeletons generated by prompt() or promptData() now use a
    dummy title (so R CMD build works).  tools::checkRdContents() has
    been updated to detect such template leftovers, including from
    promptPackage().
  * When S4 method dispatch fails because no method was found, the
    error message now includes the signature argument names; thanks
    to Michael Chirico's proposal on the R-devel list.
  * withAutoprint({ .. }) now preserves srcrefs previously lost,
    thanks to Andrew Simmons' report plus fix in PR#18572.
  * transform.data.frame() no longer adjusts names; in particular,
    untransformed variables are kept as-is, including those with
    syntactically invalid names (PR#17890).
  * The keep.source option for Rd \Sexpr blocks is no longer ignored.
  * The formula methods for t.test() and wilcox.test() now catch when
    paired is passed, addressing PR#14359; use Pair(x1, x2) ~ 1 for a
    paired test.
  * The level reported in the browser prompt was often too large. It
    now shows the number of browser contexts on the stack.
  * For cbind() and rbind(), the optional deparse.level argument is
    now properly passed to methods, thanks to Mikael Jagan's PR#18579
    and comments there.
  * Some error and warning messages for large ('long vector')
    matrix(v, nr, nc) and dim(m) &lt;- d are now correct about sizes,
    using long long formatting, fixing PR#18612 (and more) reported
    by Mikael Jagan.
  * readChar(useBytes = TRUE) now terminates strings even when the
    underlying connection uses extra spaces in the input buffer.
    This fixes problems with extra garbage seen with gzip
    connections, PR#18605.
  * Named capture in PCRE regular expressions now works also with
    more than 127 named groups (PR#18588).
  * Datetime functions are now robust against long jumps when dealing
    with internal time zone changes.  This avoids confusing warnings
    about an invalid time zone, previously triggered by turning
    warnings into errors or handling them via tryCatch (PR#17966,
    PR#17780).
  * Datetime functions now restore even an empty TZ environment
    variable after internal time zone changes (PR#17724).  This makes
    results of datetime functions with this (typically unintentional)
    setting more predictable.
  * drop.terms(*) now drops response as by default, keep.response =
    FALSE, fixing PR#18564 thanks to Mikael Jagan.
  * dummy.coef(.) now also works for lm()-models with character
    categorical predictor variables rather than factor ones, fixing
    PR#18635 reported by Jinsong Zhao.
  * formals(f) &lt;- formals(f) now also works for a function w/o
    arguments and atomic _constant_ body(f).
  * Correct as.function(&lt;invalid list&gt;, .)'s error message.
  * removeSource() is yet more thorough in finding and removing
    "srcref" and the other source references from parsed R language
    chunks, fixing PR#18638 thanks to Andrew Simmons.
  * dgeom() is more accurate now, notably when its result is very
    small, fixing PR#18642 thanks to the proposal of Morten Welinder,
    also improving other instances where C level binom_raw(x, n, ..)
    has x == 0 or x== n.
  * warning() with options(warn = 1) has improved output for
    multi-line messages.
  * axis.Date() and axis.POSIXct() now respect the par("lab") setting
    for the number of pretty() intervals.
  * Comparisons for language objects (which are based on deparsing)
    are now more careful about using accurate deparsed results
    (PR#18676).
  * Plain-text help (Rd2txt) now correctly preserves blank lines
    following single-line \dontrun code.
  * &lt;POSIXlt&gt;[*] no longer sets wrong "balanced" attribute, fixing
    PR#18681 thanks to Mikael Jagan.
  * str(&lt;classed-call&gt;) now deparses the call as expected, fixing
    PR#18684, reported by Dave Slager.
  * In Rd examples, code following the closing brace of a \dontrun,
    \dontshow or \donttest tag on the same line is no longer skipped
    when R CMD check runs the examples.
  * as.data.frame(matrix(*, ncol=0)) now gets valid names() and
    colnames(); reported by Davis Vaughan on the R-devel list.
  * Internal Mathlib function stirlerr(n) is now almost fully
    (52-bit) accurate for all n &gt;= ~5.9 and more accurate also in the
    range 1 -- 5.9.  This entails small ("after 12th decimal")
    changes in density functions, e.g., dgamma() in _some_ regions of
    their support.  The fix was partly prompted by Morten Welinder's
    PR#18640.
  * Numbers like 9876543.2 are now considered non-integer by Mathlib
    internal R_nonint(), amending original fix of PR#15734.
  * Rd comment lines no longer cause broken paragraphs in the
    rendered PDF and plain-text help. In code blocks, pure comment
    lines (starting with %) no longer produce an empty line.
  * xtabs(Freq ~ .) now consistently defaults to na.action = na.pass,
    using na.rm = FALSE (added as an argument) when summing over Freq
    (PR#17770).
  * tools::testInstalledPackage() is no longer silent about failures
    from running examples or tests and its return code no longer
    ignores failures from checking vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1718366400">- CHANGES IN R 4.4.1:
  C-LEVEL FACILITIES:
  * Functions R_atof and R_strtod declared in header R_ext/Utils.h
    are now documented in 'Writing R Extensions' and so formally part
    of the API.
  * The non-API entry points Rf_setSVector, Rf_StringFalse,
    Rf_StringTrue and Rf_isBlankString have been added to those
    reported by R CMD check.
  * The new function Rf_allocLang is now available. This provides an
    alternative to the idiom of calling Rf_allocList followed by
    SET_TYPEOF.
  UTILITIES:
  * R CMD check now reports as warnings what gfortran calls 'Fortran
    2018 deleted features', all of which have long been marked as
    'obsolescent' and some of which were deleted in Fortran 2008 or
    earlier.  Fortran compilers are no longer required to support
    these.
  BUG FIXES:
  * as.numeric(), scan(), type.convert() and other places which use
    the internal C function R_strtod now require a _non-empty_ digit
    sequence in a decimal or binary exponent.  This aligns with the
    C/POSIX standard for strtod and with ?NumericConstants.
  * as.data.frame(m, make.names=NA) now works correctly for a matrix
    m with NA's in row names.
  * The error message from &lt;POSIXlt&gt;[["hour"]] and similar now
    mentions *[[, "hour"]], as wished for in PR#17409 and proposed by
    Michael Chirico.
  * qbinom() and potentially qpois(), qnbinom(), no longer sometimes
    fail accurate inversion (of pbinom(), etc), thanks to Christopher
    Chang's report and patch in PR#18711.
  * The internal help server on Windows can again serve requests sent
    in quick succession, fixing a regression in R 4.4.0.
  * debugcall(&lt;S3Generic&gt;()) now also works when a corresponding
    S4-generic version is in the methods cache (PR#18143).
  * Package tools' toTitleCase(ch0) now returns character(0) when ch0
    is of zero length; fixing PR#18724, reported by David Hugh Jones.
  * R CMD check is no longer broken (without a check result and no
    explanation in 00check.log) for a package which declares an
    invalid VignetteBuilder in DESCRIPTION but has no vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1730376000">- CHANGES IN R 4.4.2:
  C-LEVEL FACILITIES:
  * The S-compatibility macros F77_COM and F77_COMDECL defined in
    header R_ext/RS.h are deprecated and will be removed shortly.  We
    could find no record of their use.
  BUG FIXES:
  * Mathlib function lgammacor(x) no longer warns about underflow to
    zero for large x.
  * Text widths and heights were incorrectly reported by the Quartz
    device if the drawing context didn't exist yet (typically when
    drawing off-screen to a window that is yet to appear, see
    PR#18591).
  * The Quartz device could segfault in cases where paths with spaces
    are used in the new glyph drawing API.  Thanks to Tomek
    Gieorgijewski (PR#18758).
  * On macOS in R CRAN builds, it is again possible to read
    little-endian UTF-16 text with a BOM from a connection using
    encoding="UTF-16".  Users building R from source should avoid
    using the system libiconv in macOS 14.1 and later.
  * methods' internal .requirePackage() now re-enables primitive
    method dispatch when needed; thanks to Ivan Krylov for
    demystifying CRAN package check failures on the R-devel mailing
    list.</changelog>
</package>
<package pkgid="49461ff8346ccfae8d29a5cc4294bdeda640ea80007599d46a7651ddc8ea1ee32c60901e4f8e3fe796876b542e922f71b2de12cf44c1b6e9d123561a0baa7f9e" name="R-grDevices" arch="i586">
  <version epoch="0" ver="4.4.2" rel="51.0.2.2.sr20241103"/>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1620302400">- To get in sync with d:l:R:autoCRAN the Matrix package's split
  in -devel was reversed.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339200">- improved spec file according to comments of dimstar in
  https://build.opensuse.org/request/show/892685</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339201">- CHANGES IN R 4.1.0:
  FUTURE DIRECTIONS:
  * It is planned that the 4.1.x series will be the last to support
    32-bit Windows, with production of binary packages for that
    series continuing until early 2023.
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Data set esoph in package datasets now provides the correct
    numbers of controls; previously it had the numbers of cases added
    to these.  (Reported by Alexander Fowler in PR#17964.)
  NEW FEATURES:
  * www.omegahat.net is no longer one of the repositories known by
    default to setRepositories().  (Nowadays it only provides source
    packages and is often unavailable.)
  * Function package_dependencies() (in package tools) can now use
    different dependency types for direct and recursive dependencies.
  * The checking of the size of tarball in R CMD check --as-cran
    &lt;pkg&gt; may be tweaked via the new environment variable
    _R_CHECK_CRAN_INCOMING_TARBALL_THRESHOLD_, as suggested in
    PR#17777 by Jan Gorecki.
  * Using c() to combine a factor with other factors now gives a
    factor, an ordered factor when combining ordered factors with
    identical levels.
  * apply() gains a simplify argument to allow disabling of
    simplification of results.
  * The format() method for class "ftable" gets a new option justify.
    (Suggested by Thomas Soeiro.)
  * New ...names() utility.  (Proposed by Neal Fultz in PR#17705.)
  * type.convert() now warns when its as.is argument is not
    specified, as the help file always said it _should_.  In that
    case, the default is changed to TRUE in line with its change in
    read.table() (related to stringsAsFactor) in R 4.0.0.
  * When printing list arrays, classed objects are now shown _via_
    their format() value if this is a short enough character string,
    or by giving the first elements of their class vector and their
    length.
  * capabilities() gets new entry "Rprof" which is TRUE when R has
    been configured with the equivalent of --enable-R-profiling (as
    it is by default).  (Related to Michael Orlitzky's report
    PR#17836.)
  * str(xS4) now also shows extraneous attributes of an S4 object
    xS4.
  * Rudimentary support for vi-style tags in rtags() and R CMD rtags
    has been added.  (Based on a patch from Neal Fultz in PR#17214.)
  * checkRdContents() is now exported from tools; it and also
    checkDocFiles() have a new option chkInternal allowing to check
    Rd files marked with keyword "internal" as well.  The latter can
    be activated for R CMD check via environment variable
    _R_CHECK_RD_INTERNAL_TOO_.
  * New functions numToBits() and numToInts() extend the raw
    conversion utilities to (double precision) numeric.
  * Functions URLencode() and URLdecode() in package utils now work
    on vectors of URIs.  (Based on patch from Bob Rudis submitted
    with PR#17873.)
  * path.expand() can expand ~user on most Unix-alikes even when
    readline is not in use.  It tries harder to expand ~, for example
    should environment variable HOME be unset.
  * For HTML help (both dynamic and static), Rd file links to help
    pages in external packages are now treated as references to
    topics rather than file names, and fall back to a file link only
    if the topic is not found in the target package. The earlier rule
    which prioritized file names over topics can be restored by
    setting the environment variable _R_HELP_LINKS_TO_TOPICS_ to a
    false value.
  * c() now removes NULL arguments before dispatching to methods,
    thus simplifying the implementation of c() methods, _but_ for
    back compatibility keeps NULL when it is the first argument.
    (From a report and patch proposal by Lionel Henry in PR#17900.)
  * Vectorize()'s result function's environment no longer keeps
    unneeded objects.
  * Function ...elt() now propagates visibility consistently with
    ..n.  (Thanks to Lionel Henry's PR#17905.)
  * capture.output() no longer uses non-standard evaluation to
    evaluate its arguments.  This makes evaluation of functions like
    parent.frame() more consistent.  (Thanks to Lionel Henry's
    PR#17907.)
  * packBits(bits, type="double") now works as inverse of
    numToBits().  (Thanks to Bill Dunlap's proposal in PR#17914.)
  * curlGetHeaders() has two new arguments, timeout to specify the
    timeout for that call (overriding getOption("timeout")) and TLS
    to specify the minimum TLS protocol version to be used for
    https:// URIs (_inter alia_ providing a means to check for sites
    using deprecated TLS versions 1.0 and 1.1).
  * For nls(), an optional constant scaleOffset may be added to the
    denominator of the relative offset convergence test for cases
    where the fit of a model is expected to be exact, thanks to a
    proposal by John Nash.  nls(*, trace=TRUE) now also shows the
    convergence criterion.
  * Numeric differentiation _via_ numericDeriv() gets new optional
    arguments eps and central, the latter for taking central divided
    differences.  The latter can be activated for nls() via
    nls.control(nDcentral = TRUE).
  * nls() now passes the trace and control arguments to getInitial(),
    notably for all self-starting models, so these can also be fit in
    zero-noise situations via a scaleOffset.  For this reason, the
    initial function of a selfStart model must now have ... in its
    argument list.
  * bquote(splice = TRUE) can now splice expression vectors with
    attributes: this makes it possible to splice the result of
    parse(keep.source = TRUE).  (Report and patch provided by Lionel
    Henry in PR#17869.)
  * textConnection() gets an optional name argument.
  * get(), exists(), and get0() now signal an error if the first
    argument has length greater than 1.  Previously additional
    elements were silently ignored.  (Suggested by Antoine Fabri on
    R-devel.)
  * R now provides a shorthand notation for creating functions, e.g.
    \(x) x + 1 is parsed as function(x) x + 1.
  * R now provides a simple native forward pipe syntax |&gt;.  The
    simple form of the forward pipe inserts the left-hand side as the
    first argument in the right-hand side call.  The pipe
    implementation as a syntax transformation was motivated by
    suggestions from Jim Hester and Lionel Henry.
  * all.equal(f, g) for functions now by default also compares their
    environment(.)s, notably via new all.equal method for class
    function.  Comparison of nls() fits, e.g., may now need
    all.equal(m1, m2, check.environment = FALSE).
  * .libPaths() gets a new option include.site, allowing to _not_
    include the site library.  (Thanks to Dario Strbenac's suggestion
    and Gabe Becker's PR#18016.)
  * Lithuanian translations are now available.  (Thanks to Rimantas
    Zakauskas.)
  * names() now works for DOTSXP objects.  On the other hand, in
    R-lang, the R language manual, we now warn against relying on the
    structure or even existence of such dot-dot-dot objects.
  * all.equal() no longer gives an error on DOTSXP objects.
  * capabilities("cairo") now applies only to the file-based devices
    as it is now possible (if very unusual) to build R with Cairo
    support for those but not for X11().
  * There is optional support for tracing the progress of
    loadNamespace() - see its help.
  * (Not Windows.)  l10n_info() reports an additional element, the
    name of the encoding as reported by the OS (which may differ from
    the encoding part (if any) of the result from
    Sys.getlocale("LC_CTYPE").
  * New function gregexec() which generalizes regexec() to find _all_
    disjoint matches and well as all substrings corresponding to
    parenthesized subexpressions of the given regular expression.
    (Contributed by Brodie Gaslam.)
  * New function charClass() in package utils to query the
    wide-character classification functions in use (such as
    iswprint).
  * The names of quantile()'s result no longer depend on the global
    getOption("digits"), but quantile() gets a new optional argument
    digits = 7 instead.
  * grep(), sub(), regexp and variants work considerably faster for
    long factors with few levels.  (Thanks to Michael Chirico's
    PR#18063.)
  * Provide grouping of x11() graphics windows within a window
    manager such as Gnome or Unity; thanks to a patch by Ivan Krylov
    posted to R-devel.
  * The split() method for class data.frame now allows the f argument
    to be specified as a formula.
  * sprintf now warns on arguments unused by the format string.
  * New palettes "Rocket" and "Mako" for hcl.colors() (approximating
    palettes of the same name from the 'viridisLite' package).
    Contributed by Achim Zeileis.
  * The base environment and its namespace are now locked (so one can
    no longer add bindings to these or remove from these).
  * Rterm handling of multi-byte characters has been improved,
    allowing use of such characters when supported by the current
    locale.
  * Rterm now accepts ALT+ +xxxxxxxx sequences to enter Unicode
    characters as hex digits.
  * Environment variable LC_ALL on Windows now takes precedence over
    LC_CTYPE and variables for other supported categories, matching
    the POSIX behaviour.
  * duplicated() and anyDuplicated() are now optimized for integer
    and real vectors that are known to be sorted via the ALTREP
    framework. Contributed by Gabriel Becker via PR#17993.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 14
    and so packages that provide graphics devices should be
    reinstalled.
  * Graphics devices should now specify deviceVersion to indicate
    what version of the graphics engine they support.
  * Graphics devices can now specify deviceClip.  If TRUE, the
    graphics engine will never perform any clipping of output itself.
    The clipping that the graphics engine does perform (for both
    canClip = TRUE and canClip = FALSE) has been improved to avoid
    producing unnecessary artifacts in clipped output.
  * The grid package now allows gpar(fill) to be a linearGradient(),
    a radialGradient(), or a pattern().  The viewport(clip) can now
    also be a grob, which defines a clipping path, and there is a new
    viewport(mask) that can also be a grob, which defines a mask.
    These new features are only supported so far on the Cairo-based
    graphics devices and on the pdf() device.
  * (Not Windows.)  A warning is given when a Cairo-based type is
    specified for a png(), jpeg(), tiff() or bmp() device but Cairo
    is unsupported (so type = "Xlib" is tried instead).
  * grSoftVersion() now reports the versions of FreeType and
    FontConfig if they are used directly (not _via_ Pango), as is
    most commonly done on macOS.
  C-LEVEL FACILITIES:
  * The _standalone_ libRmath math library and R's C API now provide
    log1pexp() again as documented, and gain log1mexp().
  INSTALLATION on a UNIX-ALIKE:
  * configure checks for a program pkgconf if program pkg-config is
    not found.  These are now only looked for on the path (like
    almost all other programs) so if needed specify a full path to
    the command in PKG_CONFIG, for example in file config.site.
  * C99 function iswblank is required - it was last seen missing ca
    2003 so the workaround has been removed.
  * There are new configure options --with-internal-iswxxxxx,
  - -with-internal-towlower and --with-internal-wcwidth which allows
    the system functions for wide-character classification,
    case-switching and width (wcwidth and wcswidth) to be replaced by
    internal ones.  The first has long been used on macOS, AIX (and
    Windows) but this enables it to be unselected there and selected
    for other platforms (it is the new default on Solaris).  The
    second is new in this version of R and is selected by default on
    macOS and Solaris.  The third has long been the default and
    remains so as it contains customizations for East Asian
    languages.
    System versions of these functions are often minimally
    implemented (sometimes only for ASCII characters) and may not
    cover the full range of Unicode points: for example Solaris (and
    Windows) only cover the Basic Multilingual Plane.
  * Cairo installations without X11 are more likely to be detected by
    configure, when the file-based Cairo graphics devices will be
    available but not X11(type = "cairo").
  * There is a new configure option --with-static-cairo which is the
    default on macOS.  This should be used when only static cairo
    (and where relevant, Pango) libraries are available.
  * Cairo-based graphics devices on platforms without Pango but with
    FreeType/FontConfig will make use of the latter for font
    selection.
  LINK-TIME OPTIMIZATION on a UNIX-ALIKE:
  * Configuring with flag --enable-lto=R now also uses LTO when
    installing the recommended packages.
  * R CMD INSTALL and R CMD SHLIB have a new flag --use-LTO to use
    LTO when compiling code, for use with R configured with
  - -enable-lto=R.  For R configured with --enable-lto, they have
    the new flag --no-use-LTO.
    Packages can opt in or out of LTO compilation _via_ a UseLTO
    field in the DESCRIPTION file.  (As usual this can be overridden
    by the command-line flags.)
  BUILDING R on Windows:
  * for GCC &gt;= 8, FC_LEN_T is defined in config.h and hence character
    lengths are passed from C to Fortran in _inter alia_ BLAS and
    LAPACK calls.
  * There is a new text file src/gnuwin32/README.compilation, which
    outlines how C/Fortran code compilation is organized and
    documents new features:
  * R can be built with Link-Time Optimization with a suitable
    compiler - doing so with GCC 9.2 showed several
    inconsistencies which have been corrected.
  * There is support for cross-compiling the C and Fortran code
    in R and standard packages on suitable (Linux) platforms.
    This is mainly intended to allow developers to test later
    versions of compilers - for example using GCC 9.2 or 10.x has
    detected issues that GCC 8.3 in Rtools40 does not.
  * There is experimental support for cross-building R packages
    with C, C++ and/or Fortran code.
  * The R installer can now be optionally built to support a single
    architecture (only 64-bit or only 32-bit).
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++14 where
    available (which it is on all currently checked platforms): if
    not (as before) C++11 is used if available otherwise C++ is not
    supported.
    Packages which specify C++11 will still be installed using C++11.
    C++14 compilers may give deprecation warnings, most often for
    std::random_shuffle (deprecated in C++14 and removed in C++17).
    Either specify C++11 (see 'Writing R Extensions') or modernize
    the code and if needed specify C++14.  The latter has been
    supported since R 3.4.0 so the package's DESCRIPTION would need
    to include something like
    Depends: R (&gt;= 3.4)
  PACKAGE INSTALLATION on Windows:
  * R CMD INSTALL and R CMD SHLIB make use of their flag --use-LTO
    when the LTO_OPT make macro is set in file etc/${R_ARCH}/Makeconf
    or in a personal/site Makevars file.  (For details see 'Writing R
    Extensions' SS4.5.)
    This provides a valuable check on code consistency.  It does work
    with GCC 8.3 as in Rtools40, but that does not detect everything
    the CRAN checks with current GCC do.
  PACKAGE INSTALLATION on macOS:
  * The default personal library directory on builds with
  - -enable-aqua (including CRAN builds) now differs by CPU type,
    one of
    ~/Library/R/x86_64/x.y/library
    ~/Library/R/arm64/x.y/library
    This uses the CPU type R (and hence the packages) were built for,
    so when a x86_64 build of R is run under Rosetta emulation on an
    arm64 Mac, the first is used.
  UTILITIES:
  * R CMD check can now scan package functions for bogus return
    statements, which were possibly intended as return() calls (wish
    of PR#17180, patch by Sebastian Meyer). This check can be
    activated via the new environment variable
    _R_CHECK_BOGUS_RETURN_, true for --as-cran.
  * R CMD build omits tarballs and binaries of previous builds from
    the top-level package directory.  (PR#17828, patch by Sebastian
    Meyer.)
  * R CMD check now runs sanity checks on the use of LazyData, for
    example that a data directory is present and that
    LazyDataCompression is not specified without LazyData and has a
    documented value.  For packages with large LazyData databases
    without specifying LazyDataCompression, there is a reference to
    the code given in 'Writing R Extensions' SS1.1.6 to test the
    choice of compression (as in all the CRAN packages tested a
    non-default method was preferred).
  * R CMD build removes LazyData and LazyDataCompression fields from
    the DESCRIPTION file of packages without a data directory.
  ENCODING-RELATED CHANGES:
  * The parser now treats \Unnnnnnnn escapes larger than the upper
    limit for Unicode points (\U10FFFF) as an error as they cannot be
    represented by valid UTF-8.
    Where such escapes are used for outputting non-printable
    (including unassigned) characters, 6 hex digits are used (rather
    than 8 with leading zeros).  For clarity, braces are used, for
    example \U{0effff}.
  * The parser now looks for non-ASCII spaces on Solaris (as
    previously on most other OSes).
  * There are warnings (including from the parser) on the use of
    unpaired surrogate Unicode points such as \uD834.  (These cannot
    be converted to valid UTF-8.)
  * Functions nchar(), tolower(), toupper() and chartr() and those
    using regular expressions have more support for inputs with a
    marked Latin-1 encoding.
  * The character-classification functions used (by default) to
    replace the system iswxxxxx functions on Windows, macOS and AIX
    have been updated to Unicode 13.0.0.
    The character-width tables have been updated to include new
    assignments in Unicode 13.0.0.
  * The code for evaluating default (extended) regular expressions
    now uses the same character-classification functions as the rest
    of R (previously they differed on Windows, macOS and AIX).
  * There is a build-time option to replace the system's
    wide-character wctrans C function by tables shipped with R: use
    configure option --with-internal-towlower or (on Windows)
  - DUSE_RI18N_CASE in CFLAGS when building R.  This may be needed
    to allow tolower() and toupper() to work with Unicode characters
    beyond the Basic Multilingual Plane where not supported by system
    functions (e.g. on Solaris where it is the new default).
  * R is more careful when truncating UTF-8 and other multi-byte
    strings that are too long to be printed, passed to the system or
    libraries or placed into an internal buffer.  Truncation will no
    longer produce incomplete multibyte characters.
  DEPRECATED AND DEFUNCT:
  * Function plclust() from the package stats and
    package.dependencies(), pkgDepends(), getDepList(),
    installFoundDepends(), and vignetteDepends() from package tools
    are defunct.
  * Defunct functions checkNEWS() and readNEWS() from package tools
    and CRAN.packages() from utils have been removed.
  * R CMD config CXXCPP is defunct (it was deprecated in R 3.6.2).
  * parallel::detectCores() drops support for Irix (retired in 2013).
  * The LINPACK argument to chol.default(), chol2inv(),
    solve.default() and svd() has been defunct since R 3.1.0.  It was
    silently ignored up to R 4.0.3 but now gives an error.
  * Subsetting/indexing, such as ddd[*] or ddd$x on a DOTSXP
    (dot-dot-dot) object ddd has been disabled; it worked by accident
    only and was undocumented.
  BUG FIXES:
  * Many more C-level allocations (mainly by malloc and strdup) are
    checked for success with suitable alternative actions.
  * Bug fix for replayPlot(); this was turning off graphics engine
    display list recording if a recorded plot was replayed in the
    same session.  The impact of the bug became visible if resize the
    device after replay OR if attempted another savePlot() after
    replay (empty display list means empty screen on resize or empty
    saved plot).
  * R CMD check etc now warn when a package exports non-existing S4
    classes or methods, also in case of no "methods" presence.
    (Reported by Alex Bertram; reproducible example and patch by
    Sebastian Meyer in PR#16662.)
  * boxplot() now also accepts calls for labels such as ylab, the
    same as plot().  (Reported by Marius Hofert.)
  * The help page for xtabs() now correctly states that addNA is
    setting na.action = na.pass among others.  (Reported as PR#17770
    by Thomas Soeiro.)
  * The R CMD check &lt;pkg&gt; gives a longer and more comprehensible
    message when DESCRIPTION misses dependencies, e.g., in Imports:.
    (Thanks to the contributors of PR#17179.)
  * update.default() now calls the generic update() on the formula to
    work correctly for models with extended formulas.  (As reported
    and suggested by Neal Fultz in PR#17865.)
  * The horizontal position of leaves in a dendrogram is now correct
    also with center = FALSE.  (PR#14938, patch from Sebastian
    Meyer.)
  * all.equal.POSIXt() no longer warns about and subsequently ignores
    inconsistent "tzone" attributes, but describes the difference in
    its return value (PR#17277).  This check can be disabled _via_
    the new argument check.tzone = FALSE as suggested by Sebastian
    Meyer.
  * as.POSIXct() now populates the "tzone" attribute from its tz
    argument when x is a logical vector consisting entirely of NA
    values.
  * x[[2^31]] &lt;- v now works.  (Thanks to the report and patch by
    Suharto Anggono in PR#17330.)
  * In log-scale graphics, axis() ticks and label positions are now
    computed more carefully and symmetrically in their range,
    typically providing _more_ ticks, fulfilling wishes in PR#17936.
    The change really corresponds to an improved axisTicks() (package
    grDevices), potentially influencing grid and lattice, for
    example.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now correct to at
    least five digits where it was catastrophically wrong,
    previously.
  * sum(df) and similar "Summary"- and "Math"-group member functions
    now work for data frames df with logical columns, notably also of
    zero rows.  (Reported to R-devel by Martin "b706".)
  * unsplit() had trouble with tibbles due to unsound use of rep(NA,
    len)-indexing, which should use NA_integer_ (Reported to R-devel
    by Mario Annau.)
  * pnorm(x, log.p = TRUE) underflows to -Inf slightly later.
  * show(&lt;hidden S4 generic&gt;) prints better and without quotes for
    non-hidden S4 generics.
  * read.table() and relatives treated an "NA" column name as missing
    when check.names = FALSE PR#18007.
  * Parsing strings containing UTF-16 surrogate pairs such as
    "\uD834\uDD1E" works better on some (uncommon) platforms.
    sprintf("%X", utf8ToInt("\uD834\uDD1E")) should now give "1D11E"
    on all platforms.
  * identical(x,y) is no longer true for differing DOTSXP objects,
    fixing PR#18032.
  * str() now works correctly for DOTSXP and related exotics, even
    when these are doomed.
    Additionally, it no longer fails for lists with a class and
    "irregular" method definitions such that e.g. lapply(*) will
    necessarily fail, as currently for different igraph objects.
  * Too long lines in environment files (e.g. Renviron) no longer
    crash R. This limit has been increased to 100,000 bytes.
    (PR#18001.)
  * There is a further workaround for FreeType giving incorrect
    italic font faces with cairo-based graphics devices on macOS.
  * add_datalist(*, force = TRUE) (from package tools) now actually
    updates an existing data/datalist file for new content.  (Thanks
    to a report and patch by Sebastian Meyer in PR#18048.)
  * cut.Date() and cut.POSIXt() could produce an empty last interval
    for breaks = "months" or breaks = "years".  (Reported as PR#18053
    by Christopher Carbone.)
  * Detection of the encoding of 'regular' macOS locales such as
    en_US (which is UTF-8) had been broken by a macOS change:
    fortunately these are now rarely used with en_US.UTF-8 being
    preferred.
  * sub() and gsub(pattern, repl, x, *) now keep attributes of x such
    as names() also when pattern is NA (PR#18079).
  * Time differences ("difftime" objects) get a replacement and a
    rep() method to keep "units" consistent.  (Thanks to a report and
    patch by Nicolas Bennett in PR#18066.)
  * The \RdOpts macro, setting defaults for \Sexpr options in an Rd
    file, had been ineffective since R 2.12.0: it now works again.
    (Thanks to a report and patch by Sebastian Meyer in PR#18073.)
  * mclapply and pvec no longer accidentally terminate parallel
    processes started before by mcparallel or related calls in
    package parallel (PR#18078).
  * grep and other functions for evaluating (extended) regular
    expressions handle in Unicode also strings not explicitly flagged
    UTF-8, but flagged native when running in UTF-8 locale.
  * Fixed a crash in fifo implementation on Windows (PR#18031).
  * Binary mode in fifo on Windows is now properly detected from
    argument open (PR#15600, PR#18031).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1622808000">- The line %{__install} -m 755 -d %{_infodir}
  no longer works in TW or Factory.
  But without that line it works everywhere. So this instruction
  was commented out of the spec file.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1628596800">- CHANGES IN R 4.1.1:
  NEW FEATURES:
  * require(pkg, quietly = TRUE) is quieter and in particular does
    not warn if the package is not found.
  DEPRECATED AND DEFUNCT:
  * Use of ftp:// URIs should be regarded as deprecated, with
    on-going support confined to method = "libcurl" and not routinely
    tested.  (Nowadays no major browser supports them.)
  * The non-default method = "internal" is deprecated for http:// and
    ftp:// URIs for both download.file and url.
  * On Windows, method = "wininet" is deprecated for http://,
    https:// and ftp:// URIs for both download.file and url.  (A
    warning is only given for ftp://.)
    For ftp:// URIs the default method is now "libcurl" if available
    (which it is on CRAN builds).
    method = "wininet" remains the default for http:// and https://
    URIs but if libcurl is available, using method = "libcurl" is
    preferred.
  INSTALLATION:
  * make check now works also without a LaTeX installation.  (Thanks
    to Sebastian Meyer's PR#18103.)
  BUG FIXES:
  * make check-devel works again in an R build configured with
  - -without-recommended-packages.
  * qnbinom(p, size, mu) for large size/mu is correct now in a range
    of cases (PR#18095); similarly for the (size, prob)
    parametrization of the negative binomial.  Also qpois() and
    qbinom() are better and or faster for extreme cases.  The
    underlying C code has been modularized and is common to all four
    cases of discrete distributions.
  * gap.axis is now part of the axis() arguments which are passed
    from bxp(), and hence boxplot().  (Thanks to Martin Smith's
    report and suggestions in PR#18109.)
  * .First and .Last can again be set from the site profile.
  * seq.int(from, to, *) and seq.default(..) now work better in large
    range cases where from-to is infinite where the two boundaries
    are finite.
  * all.equal(x,y) now returns TRUE correctly also when several
    entries of abs(x) and abs(y) are close to .Machine$double.xmax,
    the largest finite numeric.
  * model.frame() now clears the object bit when removing the class
    attribute of a value via na.action (PR#18100).
  * charClass() now works with multi-character strings on Windows
    (PR#18104, fixed by Bill Dunlap).
  * encodeString() on Solaris now works again in Latin-1 encoding on
    characters represented differently in UTF-8.  Support for
    surrogate pairs on Solaris has been improved.
  * file.show() on Windows now works with non-ASCII path names
    representable in the current native encoding (PR#18132).
  * Embedded R on Windows can now find R home directory via the
    registry even when installed only for the current user
    (PR#18135).
  * pretty(x) with finite x now returns finite values also in the
    case where the extreme x values are close in size to the maximal
    representable number .Machine$double.xmax.
    Also, it's been tweaked for very small ranges and when a boundary
    is close (or equal) to zero; e.g., pretty(c(0,1e-317)) no longer
    has negative numbers, currently still warning about a very small
    range, and pretty(2^-(1024 - 2^-1/(c(24,10)))) is more accurate.
  * The error message for not finding vignette files when weaving has
    correct file sizes now. (Thanks to Sebastian Meyer's PR#18154.)
  * dnbinom(20, &lt;large&gt;, 1) now correctly gives 0, and similar cases
    are more accurate with underflow precaution.  (Reported by Francisco Vera Alcivar in PR#18072.)</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635163200">- repaired https://bugzilla.suse.com/show_bug.cgi?id=1191380
  (rpmacros now go to rpmmacrodir)
- minor clean-ups in spec file</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635768000">- CHANGES IN R 4.1.2:
  C-LEVEL FACILITIES:
  * The workaround in headers R.h and Rmath.h (using namespace std;)
    for the Oracle Developer Studio compiler is no longer needed now
    C++11 is required so has been removed.  A couple more usages of
    log() (which should have been std::log()) with an int argument
    are reported on Solaris.
  * The undocumented limit of 4095 bytes on messages from the
    S-compatibility macros PROBLEM and MESSAGE is now documented and
    longer messages will be silently truncated rather than
    potentially causing segfaults.
  * If the R_NO_SEGV_HANDLER environment variable is non-empty, the
    signal handler for SEGV/ILL/BUS signals (which offers recovery
    user interface) is not set. This allows more reliable debugging
    of crashes that involve the console.
  DEPRECATED AND DEFUNCT:
  * The legacy S-compatibility macros PROBLEM, MESSAGE, ERROR, WARN,
    WARNING, RECOVER, ... are deprecated and will be hidden in R
    4.2.0. R's native interface of Rf_error and Rf_warning has long
    been preferred.
  BUG FIXES:
  * .mapply(F, dots, .) no longer segfaults when dots is not a list
    and uses match.fun(F) as always documented; reported by Andrew
    Simmons in PR#18164.
  * hist(&lt;Date&gt;, ...) and hist(&lt;POSIXt&gt;, ...)  no longer pass
    arguments for rect() (such as col and density) to axis().
    (Thanks to Sebastian Meyer's PR#18171.)
  * \Sexpr{ch} now preserves Encoding(ch). (Thanks to report and
    patch by Jeroen Ooms in PR#18152.)
  * Setting the RNG to "Marsaglia-Multicarry" e.g., by RNGkind(), now
    warns in more places, thanks to Andr'e Gillibert's report and
    patch in PR#18168.
  * gray(numeric(), alpha=1/2) no longer segfaults, fixing PR#18183,
    reported by Till Krenz.
  * Fixed dnbinom(x, size=&lt;very_small&gt;, .., log=TRUE) regression,
    reported by Martin Morgan.
  * as.Date.POSIXlt(x) now keeps names(x), thanks to Davis Vaughan's
    report and patch in PR#18188.
  * model.response() now strips an "AsIs" class typically, thanks to
    Duncan Murdoch's report and other discussants in PR#18190.
  * try() is considerably faster in case of an error and long call,
    as e.g., from some do.call().  Thanks to Alexander Kaever's
    suggestion posted to R-devel.
  * qqline(y = &lt;object&gt;) such as y=I(.), now works, see also
    PR#18190.
  * Non-integer mgp par() settings are now handled correctly in
    axis() and mtext(), thanks to Mikael Jagan and Duncan Murdoch's
    report and suggestion in PR#18194.
  * formatC(x) returns length zero character() now, rather than ""
    when x is of length zero, as documented, thanks to Davis
    Vaughan's post to R-devel.
  * removeSource(fn) now retains (other) attributes(fn).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1647000000">- CHANGES IN R 4.1.3:
  NEW FEATURES:
  * The default version of Bioconductor has been changed to 3.14.
    (This is used by setRepositories and the menus in GUIs.)
  UTILITIES:
  * R CMD check --as-cran has a workaround for a bug in versions of
    file up to at least 5.41 which mis-identify DBF files last
    changed in 2022 as executables.
  C-LEVEL FACILITIES:
  * The legacy S-compatibility macros SINGLE_* in R_ext/Constants.h
    (included by R.h) are deprecated and will be removed in R 4.2.0.
  BUG FIXES:
  * Initialization of self-starting nls() models with initialization
    functions following the pre-R-4.1.0 API (without the ...
    argument) works again for now, with a deprecation warning.
  * Fixed quoting of ~autodetect~ in Java setting defaults to avoid
    inadvertent user lookup due to leading ~, reported in PR#18231 by
    Harold Gutch.
  * substr(., start, stop) &lt;- v now treats _negative_ stop values
    correctly.  Reported with a patch in PR#18228 by Brodie Gaslam.
  * Subscripting an array x without dimnames by a
    length(dim(x))-column character matrix gave "random" non-sense,
    now an error; reported in PR#18244 by Mikael Jagan.
  * ...names() now matches names(list(...)) closely, fixing PR#18247.
  * all.equal(*, scale = s) now works as intended when length(s) &gt; 1,
    partly thanks to Michael Chirico's PR#18272.
  * print(x) for long vectors x now also works for named atomic
    vectors or lists and prints the correct number when reaching the
    getOption("max.print") limit; partly thanks to a report and
    proposal by Hugh Parsonage to the R-devel list.
  * all.equal(&lt;selfStart&gt;, *) no longer signals a deprecation
    warning.
  * reformulate(*, response=r) gives a helpful error message now when
    length(r) &gt; 1, thanks to Bill Dunlap's PR#18281.
  * Modifying globalCallingHandlers inside withCallingHandlers() now
    works or fails correctly, thanks to Henrik Bengtsson's PR#18257.
  * hist(&lt;Date&gt;, breaks = "days") and hist(&lt;POSIXt&gt;, breaks = "secs")
    no longer fail for inputs of length 1.
  * qbeta(.001, .9, .009) and similar cases now converge correctly
    thanks to Ben Bolker's report in PR#17746.
  * window(x, start, end) no longer wrongly signals "'start' cannot
    be after 'end'", fixing PR#17527 and PR#18291.
  * data() now checks that its (rarely used) list argument is a
    character vector - a couple of packages passed other types and
    gave incorrect results.
  * which() now checks its arr.ind argument is TRUE rather coercing
    to logical and taking the first element - which gave incorrect
    results in package code.
  * model.weights() and model.offset() more carefully extract their
    model components, thanks to Ben Bolker and Tim Taylor's R-devel
    post.
  * list.files(recursive = TRUE) now shows all broken symlinks
    (previously, some of them may have been omitted, PR#18296).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1650628800">- CHANGES IN R 4.2.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * The formula method of aggregate() now matches the generic in
    naming its first argument x (resolving PR#18299 by Thomas
    Soeiro).
    This means that calling aggregate() with a formula as a named
    first argument requires name formula in earlier versions of R and
    name x now, so portable code should not name the argument (code
    in many packages did).
  * Calling &amp;&amp; or || with either argument of length greater than one
    now gives a warning (which it is intended will become an error).
  * Calling if() or while() with a condition of length greater than
    one gives an error rather than a warning.  Consequently,
    environment variable _R_CHECK_LENGTH_1_CONDITION_ no longer has
    any effect.
  * Windows users should consult the WINDOWS section below for some
    profound changes including
  * Support for 32-bit builds has been dropped.
  * UTF-8 locales are used where available.
  * The default locations for the R installation and personal
    library folder have been changed.
    Thanks to Tomas Kalibera for months of work on the Windows port
    for this release.
  NEW FEATURES:
  * matrix(x, n, m) now warns in more cases where length(x) differs
    from n * m, as suggested by Abby Spurdle and Wolfgang Huber in
    Feb 2021 on the R-devel mailing list.
    This warning can be turned into an error by setting environment
    variable _R_CHECK_MATRIX_DATA_ to TRUE: R CMD check --as-cran
    does so unless it is already set.
  * Function file_test() in package utils gains tests for symlinks,
    readability and writability.
  * capabilities("libxml") is now false.
    The description of capabilities("http/ftp") now reflects that it
    refers to the default method, no longer the internal one.
  * simplify2array() gains an except argument for controlling the
    exceptions used by sapply().
  * Environment variables R_LIBS_USER and R_LIBS_SITE are both now
    set to the R system default if unset or empty, and can be set to
    NULL to indicate an empty list of user or site library
    directories.
  * The warning for axis()(-like) calls in cases of relatively small
    ranges (typically in log-scale situations) is slightly improved
    _and_ suppressed from explicit calls to .axisPars() as has always
    been the intention.
  * The contrasts setter function `contrasts&lt;-` gains an explicit
    default how.many = NULL rather than just using missing(how.many).
  * grid.pretty() gains a new optional argument n = 5.
  * There is a new function .pretty() with option bounds as a
    technical-utility version of pretty().  It and pretty() gain a
    new argument f.min with a better than back-compatible default.
  * Function grDevices::axisTicks() and related functions such as
    graphics::axis() work better, notably for the log scale; partly
    because of the pretty() improvements, but also because care is
    taken e.g., when ylim is finite but diff(ylim) is infinite.
  * nclass.FD() gains a digits option.
  * The R Mathlib internal C function bd0() (called indirectly from a
    dozen probability density and distribution functions such as
    dpois(), dbinom(), dgamma(), pgamma() _etc_) has been
    complemented by a more sophisticated and (mostly) more accurate C
    function ebd0(), currently called only by internal dpois_raw()
    improving accuracy for R level dpois() and potentially others
    calling it such as dnbinom(), dgamma() or pgamma().  (Thanks to
    Morten Welinder's PR#15628.)
  * write.ftable() gains sep = " " argument as suggested by Thomas
    Soeiro.
  * The names of the locale categories supported by R's
    Sys.getlocale() and Sys.setlocale() are now provided by variable
    .LC.categories in the base namespace.
  * The Date and POSIXt methods for hist() and the histogram method
    for plot() now also use the new default col = "lightgray" in
    consistency with the corresponding change to hist()'s default for
    R 4.0.0.
  * hist.default() gains new fuzz argument, and the histogram plot
    method no longer uses fractional axis ticks when displaying
    counts ("Frequency").
  * mapply() and hence Map() now also obey the "max-or-0-if-any"
    recycling rule, such that, e.g., Map(`+`, 1:3, 1[0]) is valid
    now.
  * as.character(&lt;obj&gt;) for "hexmode" or "octmode" objects now
    fulfils the important basic rule as.character(x)[j] ===
    as.character(x[j]).
  * The set utility functions, notably intersect() have been tweaked
    to be more consistent and symmetric in their two set arguments,
    also preserving a common mode.
  * substr(ch, start,end) &lt;- new now e.g., preserves names(ch); ditto
    for substring(), thanks to a patch from Brodie Gaslam.
  * plot(&lt;lm&gt;) gains a extend.ylim.f argument, in partial response to
    PR#15285; further PR#17784 is fixed thanks to several
    contributors and a patch by Elin Waring.  The Cook's dist
    contours get customizable via cook.col and cook.lty with a
    different default color and their legend is nicer by default and
    customizable via cook.legendChanges.
  * Attempting to subset an object that is not subsettable now
    signals an error of class notSubsettableError. The
    non-subsettable object is contained in the object field of the
    error condition.
  * Subscript-out-of-bounds errors are now signaled as errors of
    class subscriptOutOfBoundsError.
  * Stack-overflow errors are now signaled as errors inheriting from
    class stackOverflowError. See ?stackOverflowError for more
    details.
  * New partly experimental Sys.setLanguage() utility, solving the
    main problem of PR#18055.
  * gettext() and gettextf() get a new option trim = TRUE which when
    set to false allows translations for strings such as "Execution
    halted\n" typical for C code.
  * An experimental implementation of hash tables is now available.
    See ?hashtab for more details.
  * identical() gains a extptr.as.ref argument for requesting that
    external pointer objects be compared as reference objects.
  * reorder() gets an argument decreasing which it passes to sort()
    for level creation; based on the wish and patch by Thomas Soeiro
    in PR#18243.
  * as.vector() gains a data.frame method which returns a simple
    named list, also clearing a long standing 'FIXME' to enable
    as.vector(&lt;data.frame&gt;, mode="list").  This breaks code relying
    on as.vector(&lt;data.frame&gt;) to return the unchanged data frame.
  * legend() is now vectorized for arguments cex, x.intersp, and
    text.width.  The latter can now also be specified as a vector
    (one element for each column of the legend) or as NA for
    computing a proper column wise maximum value of strwidth(legend).
    The argument y.intersp can be specified as a vector with one
    entry for each row of the legend.
    legend() also gains new arguments title.cex and title.font.
    Thanks to Swetlana Herbrandt.
  * Deparsing no longer remaps attribute names dim, dimnames, levels,
    names and tsp to historical S-compatible names (which structure()
    maps back).
  * sample() and sample.int() have additional sanity checks on their
    size and n arguments.
    all.equal.numeric() gains a sanity check on its tolerance
    argument - calling all.equal(a, b, c) for three numeric vectors
    is a surprisingly common error.
    mean(na.rm =), rank(na.last =), barplot(legend.text =),
    boxplot(), contour(drawlabels =), polygon(border =) and
    methods::is(class2 =) have more robust sanity checks on their
    arguments.
    R CMD Rd2pdf (used by R CMD check) has a more robust sanity check
    on the format of \alias{} commands.
  * psigamma(x, deriv) for negative x now also works for deriv = 4
    and 5; their underlying C level dpsifn() is documented in
    'Writing R Extensions'.
  * The HTML help system now uses HTML5 (wish of PR#18149).
  * ks.test() now provides exact p-values also with ties and MC
    p-values in the two-sample (Smirnov) case.  By Torsten Hothorn.
  * ks.test() gains a formula interface, with y ~ 1 for the
    one-sample (Kolmogorov) test and y ~ group for the two-sample
    (Smirnov) test.  Contributed by Torsten Hothorn.
  * The return value from ks.test() now has class c("ks.test",
    "htest") - packages using try() need to take care to use
    inherits() and not == on the class.
  * New functions psmirnov(), qsmirnov() and rsmirnov() in package
    stats implementing the asymptotic and exact distributions of the
    two-sample Smirnov statistic.
  * iconv() now allows sub = "c99" to use C99-style escapes for UTF-8
    inputs which cannot be converted to encoding to.
  * In a forward pipe |&gt; expression it is now possible to use a named
    argument with the placeholder _ in the rhs call to specify where
    the lhs is to be inserted.  The placeholder can only appear once
    on the rhs.
  * The included LAPACK sources have been updated to version 3.10.0,
    except for the four Fortran 77 routines which 3.10.0 has
    re-implemented in Fortran 90 (where the older versions have been
    retained as the R build process does not support Fortran 90).
  * path.expand() and most other uses of tilde expansion now warn if
    a path would be too long if expanded.  (An exception is
    file.exists(), which silently returns false.)
  * trunc(&lt;Date&gt;, *) now supports units = "months" or "years" for
    consistency with the POSIXt method, thanks to Dirk Eddelbuettel's
    proposal in PR#18099.
  * list2DF() now checks that its arguments are of the same length,
    rather than use recycling.
  * The HTML help system has several new features: LaTeX-like math
    can be typeset using either KaTeX or MathJax, usage and example
    code is highlighted using Prism, and for dynamic help the output
    of examples and demos can be shown within the browser if the
    knitr package is installed. These features can be disabled by
    setting the environment variable _R_HELP_ENABLE_ENHANCED_HTML_ to
    a false value.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 15
    and so packages that provide graphics devices should be
    reinstalled.
  * The grid package now allows the user to specify a "vector" of
    pattern fills.  The fill argument to gpar() accepts a list of
    gradients and/or patterns and the functions linearGradient(),
    radialGradient(), and pattern() have a new group argument.
    Points grobs (data symbols) can now also have a pattern fill.
    The grobCoords() function now returns a more informative and
    complex result.
  * The grid package has new functions for drawing isolated groups:
    grid.group(), grid.define(), and grid.use().  These functions add
    compositing operators and affine transformations to R's graphics
    capabilities.
    The grid package also has new functions for stroking and filling
    paths: grid.stroke(), grid.fill(), and grid.fillStroke().
    A new function as.path() allows the user to specify the fill rule
    for a path that is to be used for clipping, stroking, or filling;
    available options are "winding" and "evenodd".  A new function
    as.mask() allows the user to specify the type of a mask;
    available options are "alpha" and "luminance".
    These new features are only supported so far (at most) on the
    Cairo-based graphics devices and on the pdf() device.
  * dev.capabilities() reports on device support for the new
    features.
  * par() now warns about unnamed non-character arguments to prevent
    misuse such as {usr &lt;- par("usr"); par(usr)}.
  INSTALLATION:
  * Facilities for accessing ftp:// sites are no longer tested
    (except _pro tem_ for curlGetHeaders()) as modern browsers have
    removed support.
  * R can now be built with DEFS = -DSTRICT_R_HEADERS .
  PACKAGE INSTALLATION:
  * R CMD INSTALL no longer tangles vignettes. This completes an R
    CMD build change in R 3.0.0 and affects packages built before R
    3.0.2. Such packages should be re-made with R CMD build to have
    the tangled R code of vignettes shipped with the tarball.
  * USE_FC_LEN_T will become the default: this uses the correct
    prototypes for Fortran BLAS/LAPACK routines called from C/C++,
    and requires adjustment of most such calls - see 'Writing R
    Extensions' SS6.6.2.  (This has been supported since R 3.6.2.)
  * Package installation speed for packages installed with
    keep.source has been improved. This resolve the issue reported by
    Ofek Shilon in PR#18236.
  UTILITIES:
  * R CMD check can optionally report files/directories left behind
    in home, /tmp (even though TMPDIR is set) and other directories.
    See the "R Internals" manual for details.
  * R CMD check now reports byte-compilation errors during
    installation.  These are not usually fatal but may result in
    parts of the package not being byte-compiled.
  * _R_CHECK_DEPENDS_ONLY_ can be applied selectively to examples,
    tests and/or vignettes in R CMD check: see the "R Internals"
    manual.
  * _R_CHECK_SRC_MINUS_W_IMPLICIT_ now defaults to true: recent
    versions of Apple clang on macOS have made implicit function
    declarations in C into a compilation error.
  * R CMD check --as-cran makes use of the environment variable
    AUTORECONF.  See the "R Internals" manual SS8 for further details.
  * R CMD check --use-valgrind also uses valgrind when re-building
    vignettes as some non-Sweave vignettes unhelpfully comment out
    all their code when R CMD check runs vignettes.
  * Errors in re-building vignettes (unless there are LaTeX errors)
    are reported by R CMD check as ERROR rather than WARNING when
    running vignettes has been skipped (as it frequently is in CRAN
    checks and by --as-cran).
  * R CMD Rd2pdf gains a --quiet option that is used by R CMD build
    when building the PDF package manual.
  * R CMD Rd2pdf now always runs LaTeX in batch mode, consistent with
    Texinfo &gt;= 6.7. The --batch option is ignored.
  * R CMD build and R CMD check now include the Rd file name and line
    numbers in the error message of an \Sexpr evaluation failure.
  * For packages using the \doi Rd macro (now an install-time \Sexpr)
    but no other dynamic Rd content, R CMD build now produces a
    smaller tarball and is considerably faster - skipping temporary
    package installation.
  C-LEVEL FACILITIES:
  * The non-API header R_ext/R-ftp-http.h is no longer provided, as
    the entry points it covered are now all defunct.
  * A number of non-API declarations and macro definitions have been
    moved from the installed header Rinternals.h to the internal
    header Defn.h. Packages that only use entry points and
    definitions documented to be part of the API as specified in
    'Writing R Extensions' SS6 should not be affected.
  * The macro USE_RINTERNALS no longer has any effect when compiling
    package code.  Packages which also use R_NO_REMAP will need to
    ensure that the remapped names are used for calls to API
    functions that were formerly also made available as macros.
  * The deprecated legacy S-compatibility macros PROBLEM, MESSAGE,
    ERROR, WARN, WARNING, RECOVER, ... are no longer defined in
    R_exts/RS.h (included by R.h).  Replace these by calls to
    Rf_error and Rf_warning (defined in header R_ext/Error.h included
    by R.h).
    Header R_ext/RS.h no longer includes R_ext/Error.h.
  * Header R_ext/Constants.h (included by R.h) when included from C++
    now includes the C++ header cfloat rather than the C header
    float.h (now possible as C++11 is required).
  * The legacy S-compatibility macros DOUBLE_* in R_ext/Constants.h
    (included by R.h) are deprecated.
  * The deprecated S-compatibility macros SINGLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * R_Calloc, R_Free and R_Realloc are preferred to their unprefixed
    forms and error messages now use the prefix. These forms were
    introduced in R 3.4.0 and are available even when
    STRICT_R_HEADERS is defined.
  * rmultinom has been documented in 'Writing R Extensions' SS6 so is
    now part of the R API.
  * Similarly, Rtanpi, called from R level tanpi() is now part of the
    R API.
  * The long-deprecated, undocumented and non-API entry point call_R
    is no longer declared in R_ext/RS.h (included by R.h).
  * The header S.h which has been unsupported since Jan 2016 has been
    removed.  Use R.h instead.
  DEPRECATED AND DEFUNCT:
  * The (non-default and deprecated) method = "internal" for
    download.file() and url() no longer supports http:// nor ftp://
    URIs.  (It is used only for file:// URIs.)
    On Windows, download.file(method = "wininet") no longer supports
    ftp:// URIs.  (It is no longer the default method, which is
    "libcurl" and does.)
    On Windows, the deprecated method = "wininet" now gives a warning
    for http:// and https:// URIs for both download.file() and url().
    (It is no longer the default method.)
  * On Windows, the command-line option --max-mem-size and
    environment variable R_MAX_MEM_SIZE are defunct.  The memory
    allocation limit was important for 32-bit builds, but these are
    no longer supported.
  * default.stringsAsFactors() is now formally deprecated, where that
    was only mentioned on its regular help page, previously.  So it
    now gives a warning if called.
  * unix.time() is defunct now; it had been deprecated since R 3.4.0.
  BUG FIXES:
  * Setting digits = 0 in format(), print.default() (and hence
    typically print()) or options() is again invalid.  Its behaviour
    was platform-dependent, and it is unclear what "zero significant
    digits" should mean (PR#18098).
  * Messages from C code in the cairo section of package grDevices
    are now also offered for translation, thanks to Michael Chirico's
    PR#18123.
  * mean(x) with finite x now is finite also without "long.double"
    capability.
  * R CMD Rd2pdf no longer leaves an empty build directory behind
    when it aborts due to an already existing output file.  (Thanks
    to Sebastian Meyer's PR#18141.)
  * density(x, weights = w, na.rm = TRUE) when anyNA(x) is true, now
    removes weights "in parallel" to x, fixing PR#18151, reported by
    Matthias Gondan.  Additionally, it gets a subdensity option.
  * Conversion of \Sexpr[]{&lt;expR&gt;} to LaTeX or HTML no longer
    produces long blocks of empty lines when &lt;expR&gt; itself contains
    several lines all producing empty output.  Thanks to a report and
    patch by Ivan Krylov posted to R-devel.
  * R CMD build no longer fails if a package vignette uses child
    documents and inst/doc exists.  (Thanks to Sebastian Meyer's
    PR#18156.)
  * When an R documentation ('help' source) file man/foo.Rd in a
    package has \donttest{..} examples with a syntax error, it is now
    signalled as ERROR and with correct line numbers relating to the
  * -Ex.R file, thanks to Duncan Murdoch and Sebastian Meyer's
    reports and patch proposals in PR#17501.
  * Improved determination of the correct translation domain in
    non-base packages, addressing the combination of PR#18092 and
    PR#17998 (#c6) with reports and _augmented_ patch #2904 by
    Suharto Anggono.
    Note that "R-base" is no longer the default domain e.g., for
    top-level calls to gettext(); rather translation needs explicit
    domain = * specification in such cases.
  * identical(attrib.as.set=FALSE) now works correctly with data
    frames with default row names (Thanks to Charlie Gao's PR#18179).
  * txtProgressBar() now enforces a non-zero width for argument char,
    without which no progress can be visible.
  * dimnames(table(d)) is more consistent in the case where d is a
    list with a single component, thanks to Thomas Soeiro's report to
    R-devel.
    Further, table(d1, d2) now gives an error when d1 and d2 are data
    frames as suggested by Thomas in PR#18224.
  * Fix for drawing semi-transparent lines and fills on the native
    Windows graphics device (PR#18219 and PR#16694).  Thanks to Nick
    Ray for helpful diagnosis on Bugzilla.
  * The deparser now wraps sub-expressions such as if(A) ..  with
    parentheses when needed; thanks to Duncan Murdoch's PR#18232 and
    Lionel Henry's patches there.
  * remove.packages() no longer tries to uninstall Priority: base
    packages, thanks to a report and suggestions by Colin Fay in
    PR#18227.
  * win.metafile() now has xpinch and ypinch arguments so that the
    user can override Windows' (potentially wrong) guess at device
    dimensions.
  * x[i] and x[[i]] for non-integer i should now behave in all cases
    as always documented: the index used is equivalent to
    as.integer(i) unless that would overflow where trunc(i) is used
    instead; thanks to Suharto Anggono's report and patch proposals
    in PR#17977.
  * asOneSidedFormula() now associates the resulting formula with the
    global environment rather than the evaluation environment created
    for the call.
  * &lt;bibentry&gt;$name now matches the field name case-insensitively,
    consistent with bibentry() creation and the replacement method.
  * cbind() failed to detect some length mismatches with a mixture of
    time-series and non-time-series inputs.
  * The default LaTeX style file Sweave.sty used by the RweaveLatex
    driver no longer loads the obsolete ae package; thanks to a
    report by Thomas Soeiro in PR#18271.  Furthermore, it now skips
    \usepackage[T1]{fontenc} for engines other than pdfTeX (if
    detected) or if the new [nofontenc] option is used.
  * smooth.spline() now stores its logical cv argument more safely,
    fixing a rare bug when printing, and also stores n.
  * smooth.spline(x,y,*) now computes the cv.crit statistic
    correctly, also when is.unsorted(x), fixing PR#18294.
  * The data.frame method of rbind() now warns when binding
    not-wholly-recycling vectors, by analogy to the default method
    (for matrices).
  * setAs() finds the correct class for name to when multiple
    packages define a class with that name. Thanks to Gabor Csardi
    for the report.
  * Fix for detaching a package when two classes of the same name are
    present in method signatures for the same generic. Thanks to
    Gabor Csardi for the report.
  * match.arg("", c("", "a", "B")) gives a better error message, in
    part from PR#17959, thanks to Elin Waring.
  * R CMD Sweave --clean no longer removes pre-existing files or
    subdirectories (PR#18242).
  * The quartz() device no longer splits polylines into subpaths.
    That has caused narrowly-spaced lines with many points to always
    look solid even when dashed line type was used due to dash phase
    restarts.
  * Deparsing constructs such as quote(1 + `!`(2) + 3) works again as
    before R 3.5.0, thanks to the report and patch in PR#18284 by
    Suharto Anggono.
  * as.list(f) for a factor f now keeps names(f), fixing PR#18309.
  * qbeta(.001, .9, .009) and analogous qf() calls now return a
    correct value instead of NaN or wrongly 1, all with a warning;
    thanks to the report by Ludger Goeminne in PR#18302.
  * plot.lm() failed to produce the plot of residuals vs.  factor
    levels (i.e., which=5 when leverages are constant) for models
    with character predictors (PR#17840).
  * interaction.plot(..., xtick = TRUE) misplaced the x-axis line
    (PR#18305).
  * Not strictly fixing a bug, format()ing and print()ing of
    non-finite Date and POSIXt values NaN and +/-Inf no longer show
    as NA but the respective string, e.g., Inf, for consistency with
    numeric vector's behaviour, fulfilling the wish of PR#18308.
  * R CMD check no longer runs test scripts generated from
    corresponding .Rin files twice and now signals an ERROR if
    processing an .Rin script fails.
  * tools::Rd2txt() used for plain-text help pages now renders \hrefs
    (if tools::Rd2txt_options(showURLs = TRUE)) and \urls with
    percent-encoding and standards-compliant delimiting style (angle
    brackets and no URL: prefix).  \email is now rendered with a
    mailto: prefix.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1655985600">- CHANGES IN R 4.2.1:
  NEW FEATURES:
  * New function utils::findCRANmirror() to find out if a CRAN mirror
    has been selected, otherwise fallback to the main site.  This
    behaves in the same way as tools::CRAN_package_db() and is
    intended for packages wishing to access CRAN for purposes other
    than installing packages.
    The need for this was shown by a day when the main CRAN website
    was offline and a dozen or so packages which had its URL
    hardcoded failed their checks.
  INSTALLATION on a UNIX-ALIKE:
  * The libraries searched for by --with-blas (without a value) now
    include BLIS (after OpenBLAS but before ATLAS).  And on macOS,
    the Accelerate framework (after ATLAS).  (This is patterned after
    the AX_BLAS macro from the Autoconf Archive.)
  * The included LAPACK sources have been updated to 3.10.1.
  UTILITIES:
  * The (full path to) the command tidy to be used for HTML
    validation can be set by environment variable R_TIDYCMD.
  * Setting environment variable _R_CHECK_RD_VALIDATE_RD2HTML_ to a
    false value will override R CMD check --as-cran and turn off HTML
    validation.  This provides a way to circumvent a problematic
    tidy.
    The 2006 version that ships with macOS is always skipped.
  C-LEVEL FACILITIES:
  * The undocumented legacy declarations of Sint, Sfloat, SINT_MAX
    and SINT_MIN in header R.h are deprecated.
  BUG FIXES:
  * fisher.test(d) no longer segfaults for "large" d; fixing PR#18336
    by preventing/detecting an integer overflow reliably.
  * tar(., files=*) now produces correctly the warning about invalid
    uid or gid of files, fixing PR#18344, reported by Martin Morgan.
  * tk_choose.files() with multi = FALSE misbehaved on paths
    containing spaces (PR#18334) (regression introduced in R 4.0.0).
  * sort(x, partial = ind, *) now works correctly notably for the
    non-default na.last = FALSE or TRUE, fixing PR#18335 reported by
    James Edwards.
  * Environment variable _R_CHECK_XREFS_REPOSITORIES_ is only used
    for checking .Rd cross-references in R CMD check (as documented)
    and not for other uses looking for a CRAN mirror.
  * The search for a CRAN mirror when checking packages now uses
    getOption("repos") if that specifies a CRAN mirror, even when it
    does not also specify all three Bioconductor repositories (as was
    previously required).
  * The HTML code generated by tools::Rd2HTML() has been improved to
    pass tidy 5.8.0.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1667217600">- CHANGES IN R 4.2.2:
  NEW FEATURES:
  * tools::Rdiff(useDiff = TRUE) checks for the presence of an
    external diff command and switches to useDiff = FALSE if none is
    found.  This allows R CMD Rdiff to always work.
  * On Windows, environment variable R_LIBCURL_SSL_REVOKE_BEST_EFFORT
    can be used to switch to only 'best-effort' SSL certificate
    revocation checks with the default "libcurl" download method.
    This reduces security, but may be needed for downloads to work
    with MITM proxies (PR#18379).
  * (macOS) The run-time check for libraries from XQuartz for X11 and
    Tcl/Tk no longer uses otool from the Apple Developer Tools
    (PR#18400).
  * The LaTeX style for producing the PDF manuals, Rd.sty, now loads
    the standard amsmath, amsfonts and amssymb packages for greater
    coverage of math commands in the Rd \eqn and \deqn macros.  The
    \mathscr LaTeX command is also provided (via the mathrsfs
    package, if available, or the amsfonts bundle otherwise),
    fulfilling the wish of PR#18398.
  * (Windows) The default format of readClipboard() and
    writeClipboard() has been changed to 13 (CF_UNICODETEXT).
  INSTALLATION on a UNIX-ALIKE:
  * The PDF manuals (if built) can be compacted by the new target
    make compact-pdf (at the top level or in directory doc/manual).
  * There is now configure support for LLVM clang 15 on Linux, which
    defaults to position-independent (PIE) executables whereas
    gfortran does not.
  * Many small changes to ease compilation (and suppress warnings)
    with LLVM clang 15.
  BUG FIXES:
  * Rscript -e would fail if stdin were closed (Reported by Henrik
    Bengtsson.)
  * qt(*, log.p=TRUE) in outer tails no longer produces NaN in its
    final steps, thus fixing PR#18360.
  * tools::Rd2latex() now escapes hashes and ampersands when writing
    URLs, fixing LaTeX errors with such URLs in \tabular.
  * When isGeneric(f, fdef=*) is used with mismatching names, the
    warning is better understandable; reported (with fix) in PR#18370
    by Gabe Becker.
  * poly(x, n) now works again (and is now documented) when x is a
    "Date" or "POSIXct" object, or of another class while fulfilling
    mode(x) == "numeric".  This also enables poly(x, *, raw=TRUE) for
    such variables.  Reported by Michael Chirico to R-devel.
  * write.table(), write.csv() and write.csv2() restore their
    numerical precision (internal equivalent of digits = 15) after an
    interrupt (PR#18384).
  * One can now read also byte FF from a clipboard connection
    (PR#18385).
  * source("") and source(character()) now give more helpful error
    messages.
  * R CMD check --as-cran set _R_CHECK_TIMINGS_ too late to have the
    intended effect.
  * as.POSIXlt(x) now also works with very large dates x, fixing
    PR#18401 reported by Hannes M"uhleisen.
  * Files can now be extracted even from very large zip archives
    (PR#18390, thanks to Martin Jakt).
  * Non-finite objects of class "POSIXlt" are now correctly coerced
    to classes "Date" and "POSIXct"; following up on the extension to
    format() them correctly.
  * Added methods for is.finite(), is.infinite() and is.nan() for
    "POSIXlt" date-time objects.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1678881600">- CHANGES IN R 4.2.3:
  C-LEVEL FACILITIES:
  * The definition of DL_FUNC in R_ext/Rdynload.h has been changed to
    be fully C-compliant.  This means that functions loaded _via_ for
    example R_GetCCallable need to be cast to an appropriate type if
    they have any arguments.
  * .Machine has a new element sizeof.time_t to identify old systems
    with a 32-bit type and hence a limited range of date-times (and
    limited support for dates millions of years from present).
  PACKAGE INSTALLATION:
  * (Windows) The default C++ standard had accidentally been left at
    C++11 when it was changed to C++14 on Unix.
  BUG FIXES:
  * As "POSIXlt" objects may be "partially filled" and their list
    components meant to be recycled, length() now is the length of
    the longest component.
  * as.POSIXlt.Date() could underflow for dates in the far past (more
    than half a million years BCE).
  * as.Date.POSIXlt(x) would return "1970-01-01" instead of NA in R
    4.2.2, e.g., for
    x &lt;- as.POSIXlt(c("2019-01-30","2001-1-1"))
    x$mon &lt;- c(0L, NA); as.Date(x)
  * R CMD check failed to apply enabled _R_CHECK_SUGGESTS_ONLY_ to
    examples and vignettes (regression in R 4.2.0).
  * R CMD check did not re-build vignettes in separate processes by
    default (regression in R 4.2.0).
  * Running examples from HTML documentation now restores previous
    knitr settings and options (PR#18420).
  * Quartz: fonts are now located using Core Graphics API instead of
    deprecated ATS which is no longer supported in the macOS 13 SDK
    (PR#18426).  This also addresses an issue where the currently
    used font in the Quartz device context was not correctly
    retained.
  * (Windows) Math symbols in text drawing functions are again
    rendered correctly (PR#18440).  This fixes a regression in R
    4.2.1 caused by a fix in PR#18382 which uncovered an issue in
    GraphApp due to which the symbol charset was not used with TT
    Symbol font face.
  * (Windows) Installing a package with a src/Makefile.{win,ucrt}
    file includes ~/.R/Makevars.win64 in the search for user
    makevars, as documented in "R Installation and Administration"
    and done for packages with a src/Makevars.{win,ucrt} file.
  * format(&lt;POSIXlt_w/_unbalanced_sec&gt;, "....%OS&lt;n&gt;") with n &gt; 0 no
    longer accidentally uses the unbalanced seconds, thanks to
    Suharto Anggono's report (including patch) in PR#18448.
  * solve.default(a, b) works around issues with some versions of
    LAPACK when a contains NA or NaN values.
  * When UseMethod() cannot dispatch, it no longer segfaults
    producing the error message in case of a long class(), thanks to
    Joris Vankerschaver's report (including patch) in PR#18447.
  * When example(foo, ..) produces graphics on an interactive device
    it needs to open itself, it now leaves devAskNewPage() unchanged
    even when it was FALSE, thus fixing a 14 years old '&lt;FIXME&gt;'.
  * packageDescription() again catches errors from encoding
    conversions. This also fixes broken packageVersion() in C locale
    on systems where iconv does not support transliteration.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1681128000">- add patch to build with libcurl &gt;= 8</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1682078400">- CHANGES IN R 4.3.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Calling &amp;&amp; or || with LHS or (if evaluated) RHS of length greater
    than one is now always an error, with a report of the form
    'length = 4' in coercion to 'logical(1)'
    Environment variable _R_CHECK_LENGTH_1_LOGIC2_ no longer has any
    effect.
  NEW FEATURES:
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.10.1.  (This caused some platform-dependent
    changes to package check output.)  And then to the sources from
    LAPACK version 3.11.0 (with changes only to double complex
    subroutines).
  * The included LAPACK sources have been updated to include the four
    Fortran 90 routines rather than their Fortran 77 predecessors.
    This may give some different signs in SVDs or
    eigendecompositions..  (This completes the transition to LAPACK
    3.10.x begun in R 4.2.0.)
  * The LAPACK sources have been updated to version 3.11.0.  (No new
    subroutines have been added, so this almost entirely bug fixes:
    Those fixes do affect some computations with NaNs, including R's
    NA.)
  * The parser now signals _classed_ errors, notably in case of the
    pipe operator |&gt;.  The error object and message now give line and
    column numbers, mostly as proposed and provided by Duncan Murdoch
    in PR#18328.
  * toeplitz() is now generalized for asymmetric cases, with a
    toeplitz2() variant.
  * xy.coords() and xyz.coords() and consequently, e.g., plot(x,y,
    log = "y") now signal a _classed_ warning about negative values
    of y (where log(.) is NA).  Such a warning can be specifically
    suppressed or caught otherwise.
  * Regular expression functions now check more thoroughly whether
    their inputs are valid strings (in their encoding, e.g. in
    UTF-8).
  * The performance of grep(), sub(), gsub() and strsplit() has been
    improved, particularly with perl = TRUE and fixed = TRUE.  Use of
    useBytes = TRUE for performance reasons should no longer be
    needed and is discouraged: it may lead to incorrect results.
  * apropos() gains an argument dot_internals which is used by the
    completion (help(rcompgen)) engine to also see base internals
    such as .POSIXct().
  * Support in tools::Rdiff() for comparing uncompressed PDF files is
    further reduced - see its help page.
  * qqplot(x, y, ...) gains conf.level and conf.args arguments for
    computing and plotting a confidence band for the treatment
    function transforming the distribution of x into the distribution
    of y (Switzer, 1976, _Biometrika_). Contributed by Torsten
    Hothorn.
  * Performance of package_dependencies() has been improved for cases
    when the number of dependencies is large.
  * Strings newly created by gsub(), sub() and strsplit(), when any
    of the inputs is marked as "bytes", are also marked as "bytes".
    This reduces the risk of creating invalid strings and accidental
    substitution of bytes deemed invalid.
  * Support for readLines(encoding = "bytes") has been added to allow
    processing special text files byte-by-byte, without creating
    invalid strings.
  * iconv(from = "") now takes into account any declared encoding of
    the input elements and uses it in preference to the native
    encoding.  This reduces the risk of accidental creation of
    invalid strings, particularly when different elements of the
    input have different encoding (including "bytes").
  * Package repositories in getOption("repos") are now initialized
    from the repositories file when utils is loaded (if not already
    set, e.g., in .Rprofile).  (From a report and patch proposal by
    Gabriel Becker in PR#18405.)
  * compactPDF() gets a verbose option.
  * type.convert() and hence read.table() get new option tryLogical =
    TRUE with back compatible default.  When set to false, converts
    "F" or "T" columns to character.
  * Added new unit prefixes "R" and "Q" for abbreviating
    (unrealistically large) sizes beyond 10^{27} in standard = "SI",
    thanks to Henrik Bengtsson's PR#18435.
  * as.data.frame()'s default method now also works fine with atomic
    objects inheriting from classes such as "roman", "octmode" and
    "hexmode", such fulfilling the wish of PR#18421, by Benjamin
    Feakins.
  * The as.data.frame.vector() utility now errors for wrong-length
    row.names.  It warned for almost six years, with "Will be an
    error!".
  * sessionInfo() now also contains La_version() and reports codepage
    and timezone when relevant, in both print() and toLatex() methods
    which also get new option tzone for displaying timezone
    information when locale = FALSE.
  * New function R_compiled_by() reports the C and Fortran compilers
    used to build R, if known.
  * predict(&lt;lm&gt;, newdata = *) no longer unnecessarily creates an
    offset of all 0s.
  * solve() for complex inputs now uses argument tol and by default
    checks for 'computational singularity' (as it long has done for
    numeric inputs).
  * predict(&lt;rank-deficient lm&gt;, newdata=*) now obeys a new argument
    rankdeficient, with new default "warnif", warning only if there
    are non-estimable cases in newdata.  Other options include
    rankdeficient = "NA", predicting NA for non-estimable newdata
    cases.  This addresses PR#15072 by Russ Lenth and is based on his
    original proposal and discussions in PR#16158 also by David Firth
    and Elin Waring.  Still somewhat experimental.
  * Rgui console implementation now works better with the NVDA screen
    reader when the full blinking cursor is selected.  The underlying
    improvements in cursor handling may help also other screen
    readers on Windows.
  * The drop-field control in GraphApp can now be left with the TAB
    key and all controls can be navigated in the reverse order using
    the Shift+TAB key, improving accessibility of the Rgui
    configuration editor.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now fully accurate
    (instead of to "only" minimally five digits).
  * demo(error.catching) now also shows off withWarnings() and
    tryCatchWEMs().
  * As an experimental feature the placeholder _ can now also be used
    in the rhs of a forward pipe |&gt; expression as the first argument
    in an extraction call, such as _$coef. More generally, it can be
    used as the head of a chain of extractions, such as _$coef[[2]].
  * Spaces in the environment variable used to choose the R session's
    temporary directory (TMPDIR, TMP and TEMP are tried in turn) are
    now fatal.  (On Windows the 'short path' version of the path is
    tried and used if that does not contain a space.)
  * all.equal.numeric() gets a new optional switch giveErr to return
    the numeric error as attribute.  Relatedly,
    stopifnot(all.equal&lt;some&gt;(a, b, ..)) is as "smart" now, as
    stopifnot(all.equal(....)) has been already, thus allowing
    customized all.equal&lt;Some&gt;() wrappers.
  * R on Windows is now able to work with path names longer than 260
    characters when these are enabled in the system (requires at
    least Windows 10 version 1607).  Packages should be updated to
    work with long paths as well, instead of assuming PATH_MAX to be
    the maximum length.  Custom front-ends and applications embedding
    R need to update their manifests if they wish to allow this
    feature.  See
    &lt;https://blog.r-project.org/2023/03/07/path-length-limit-on-windows&gt;
    for more information.
  * 'Object not found' and 'Missing argument' errors now give a more
    accurate error context. Patch provided by Lionel Henry in
    PR#18241.
  * The @ operator is now an S3 generic. Based on contributions by
    Tomasz Kalinowski in PR#18482.
  * New generic chooseOpsMethod() provides a mechanism for objects to
    resolve cases where two suitable methods are found for an Ops
    Group Generic. This supports experimenting with alternative
    object systems. Based on contributions by Tomasz Kalinowski in
    PR#18484.
  * inherits(x, what) now accepts values other than a simple
    character vector for argument what. A new generic, nameOfClass(),
    is called to resolve the class name from what. This supports
    experimenting with alternative object systems. Based on
    contributions by Tomasz Kalinowski in PR#18485.
  * Detection of BLAS/LAPACK in use (sessionInfo()) with FlexiBLAS
    now reports the current backend.
  * The "data.frame" method for subset() now warns about extraneous
    arguments, typically catching the use of = instead of == in the
    subset expression.
  * Calling a:b when numeric a or b is longer than one may now be
    made into an error by setting environment variable
    _R_CHECK_LENGTH_COLON_ to a true value, along the proposal in
    PR#18419 by Henrik Bengtsson.
  * density(x, weights = *) now warns if automatic bandwidth
    selection happens without using weights; new optional warnWbw may
    suppress the warning.  Prompted by Christoph Dalitz' PR#18490 and
    its discussants.
  * rm(list = *) is faster and more readable thanks to Kevin Ushey's
    PR#18492.
  * The plot.lm() function no longer produces a normal Q-Q plot for
    GLMs. Instead it plots a half-normal Q-Q plot of the absolute
    value of the standardized deviance residuals.
  * The print() method for class "summary.glm" no longer shows
    summary statistics for the deviance residuals by default.  Its
    optional argument show.residuals can be used to show them if
    required.
  * The tapply() function now accepts a data frame as its X argument,
    and allows INDEX to be a formula in that case. by.data.frame()
    similarly allows INDICES to be a formula.
  * The performance of df[j] &lt;- value (including for missing j) and
    write.table(df) has been improved for data frames df with a large
    number of columns.  (Thanks to Gabriel Becker's PR#18500,
    PR#18503 and discussants, prompted by a report from Toby Dylan
    Hocking on the R-devel mailing list.)
  * The matrix multiply operator %*% is now an S3 generic, belonging
    to new group generic matrixOps.  From Tomasz Kalinowski's
    contribution in PR#18483.
  * New function array2DF() to convert arrays to data frames,
    particularly useful for the list arrays created by tapply().
  DATES and TIMES:
  * On platforms where (non-UTC) datetimes before 1902 (or before
    1900 as with system functions on recent macOS) are guessed by
    extrapolating time zones from 1902-2037, there is a warning at
    the first use of extrapolation in a session.  (As all time zones
    post 2037 are extrapolation, we do not warn on those.)
  * (Platforms using --with-internal-tzone, including Windows and by
    default macOS). How years are printed in dates or date-times can
    be controlled by environment variable R_PAD_YEARS_BY_ZERO.  The
    default remains to pad to 4 digits by zeroes, but setting value
    no gives no padding (as used by default by glibc).
  * strftime() tries harder to determine the offset for the "%z"
    format, and succeeds on the mainstream R platforms.
  * strftime() has a limit of 2048 bytes on the string produced -
    attempting to exceed this is an error.  (Previously it silently
    truncated at 255 bytes.)
  * sessionInfo() records (and by default prints) the system time
    zone as part of the locale information.  Also, the source
    (system/internal) of the date-time conversion and printing
    functions.
  * Objects of class "POSIXlt" created in this version of R always
    have 11 components: component zone is always set, and component
    gmtoff is set for times in UTC and usually set on the (almost
    all) platforms which have C-level support, otherwise is NA.
  * There are comprehensive validity checks on the structure of
    objects of class "POSIXlt" when converting (including formatting
    and printing).  (This avoids mis-conversions of hand-crafted
    objects.)
  * There is some support for using the native date-time routines on
    macOS: this is only viable on recent versions (e.g. 12.6 and 13)
    and does get wrong some historical changes (before 1900, during
    WWII).  Use of --with-internal-tzone remains the default.
  * as.POSIXct(&lt;numeric&gt;) and as.POSIXlt(.) (without specifying
    origin) now work.  So does as.Date(&lt;numeric&gt;).
  * as.Date.POSIXct(., tz) now treats several tz values, notably
    "GMT" as equivalent to "UTC", proposed and improved by Michael
    Chirico and Joshua Ulrich in PR#17674.
  * Experimental balancePOSIXlt() utility allows using "ragged" and
    or out-of-range "POSIXlt" objects more correctly, e.g., in
    subsetting and subassignments.  Such objects are now documented.
    More experimentally, a "POSIXlt" object may have an attribute
    "balanced" indicating if it is known to be filled or fully
    balanced.
  * Functions axis.Date() and axis.POSIXct() are rewritten to gain
    better default tick locations and better default formats by using
    prettyDate(). Thanks to Swetlana Herbrandt.
  * The mapping of Windows' names for time zones to IANA's 'Olson'
    names has been updated.  When ICU is available (it is by
    default), it is used to get a mapping for the current region set
    in Windows.  This can be overridden by setting environment
    variable TZ to the desired Olson name - see OlsonNames() for
    those currently available.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 16
    and so packages that provide graphics devices should be
    reinstalled.
  * The grDevices and grid packages have new functions for rendering
    typeset glyphs, primarily: grDevices::glyphInfo() and
    grid::grid.glyph().
    Rendering of typeset glyphs is only supported so far on the
    Cairo-based graphics devices and on the pdf() and quartz()
    devices.
  * The defined behaviour for "clear" and "source" compositing
    operators (via grid::grid.group()) has been changed (to align
    better with simple interpretation of original Porter-Duff
    definitions).
  * Support for gradients, patterns, clipping paths, masks, groups,
    compositing operators, and affine transformations has been added
    to the quartz() device.
  INSTALLATION on a UNIX-ALIKE:
  * A system installation of generic LAPACK 3.10.0 or later will be
    preferred to the version in the R sources.
    configure option --with-lapack=no (equivalently --without-lapack)
    forces compilation of the internal LAPACK sources.
    If --with-lapack is not specified, a system liblapack is looked
    for and used if it reports version 3.10.0 or later and does not
    contain BLAS routines.
    Packages using LAPACK will need to be reinstalled if this changes
    to using an external library.
  * On aarch64 Linux platforms using GCC, configure now defaults to
  - fPIC (instead of -fpic), as desired in PR#18326.
  * configure now checks conversion of datetimes between POSIXlt and
    POSIXct around year 2020.  Failure (which has been seen on
    platforms missing tzdata) is fatal.
  * If configure option --with-valgrind-instrumentation is given
    value 1 or 2, option --with-system-valgrind-headers is now the
    default and ignored (with a warning).  It is highly recommended
    that the system headers are installed alongside valgrind: they
    are part of its packaging on some Linux distributions and
    packaged separately (e.g. in the valgrind-devel RPM) on others.
    configure will give a warning if they are not found.
    The system headers will be required in a future release of R to
    build with valgrind instrumentation.
  * libcurl 8.x is now accepted by configure: despite a change in
    major version number it changes neither API nor ABI.
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools43, an update of the Rtools42 toolchain.  It is
    based on gcc 12 and newer versions of MinGW-W64, binutils and
    libraries.  At this time R-devel can still be built using
    Rtools42 without changes, but when R-devel is installed via the
    installer, it will by default look for Rtools43.
  * Old make targets rsync-extsoft and 32-bit ones that are no longer
    needed have been removed.
  * Default builds (including for packages) no longer select C99.
    Thus the C standard used is the default for the compiler, which
    for the toolchain in Rtools43 is C17.  (This is consistent with
    Unix builds.)
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++17 where
    available (which it is on all currently checked platforms): if
    not C++14 or C++11 is used if available otherwise C++ is not
    supported.
  * USE_FC_LEN_T is the default: this uses the correct
    (compiler-dependent) prototypes for Fortran BLAS/LAPACK routines
    called from C/C++, and requires adjustment of many such calls -
    see 'Writing R Extensions' SS6.6.1.
  * There is initial support for C++23 as several compilers are now
    supporting -std=c++23 or -std=c++2b or similar.  As for C++20,
    there no additional configure checks for C++23 features beyond a
    check that the compiler reports a __cplusplus value greater than
    that in the C++20 standard.  C++ feature tests should be used.
  * There is support for a package to indicate the version of the C
    standard which should be used to compile it, and for the
    installing user to specify this.  In most cases R defaults to the
    C compiler's default standard which is C17 (a `bug-fix' of C11) -
    earlier versions of R or compilers may have defaulted to C99.
    Current options are:
    USE_C17 Use a standard that is at most C17.  The intention is to
    allow legacy packages to still be installed when later C
    standards become the default, including packages using new
    keywords as identifiers or with K&amp;R-style function
    declarations.  This will use C17 if available, falling back
    to C11.
    USE_C90 Use the C90 (aka C89) standard.  (As that standard did
    not require compilers to identify that version, all we can
    verify is that the compiler does not claim to be using a
    later standard.  It may accept C99 features - for example
    clang accepts // to make comments.)
    USE_C99 Use the C99 standard. This should be rarely needed - it
    avoids the few new features of C11/C17 which can be useful if
    a package assumes them if C17 is specified and they are not
    implemented.
    USE_C23 Use C23 (or in future, later).  Compiler/library support
    for C23 is still being implemented, but LLVM clang from
    15.0.0 and the upcoming GCC 13 have quite extensive support.
    These can be specified as part of the SystemRequirements field in
    the package's DESCRIPTION file or _via_ options --use-C17 and so
    on of R CMD INSTALL and R CMD SHLIB.
    For further details see "Writing R Extensions" SS1.2.5.
  * (Windows) A src/Makefile.ucrt or src/Makefile.win file is now
    included after R_HOME/etcR_ARCH/Makeconf and so no longer needs
    to include that file itself.  Installation of a package with such
    a file now uses a site Makevars file in the same way as a package
    with a src/Makevars.win file would.
  * configure is now passed crucial variables such as CC and CFLAGS
    in its environment, as many packages were not setting them (as
    documented in 'Writing R Extensions' SS1.2).
    This has most effect where configure is used to compile parts of
    the package - most often by cmake or libtool which obfuscate the
    actual compile commands used.
    Also used for configure.win and configure.ucrt on Windows.
  FORTRAN FLAGS:
  * The flag -fno-optimize-sibling-calls is no longer forced for
    gfortran 7 and later.  It should no longer be needed now using
    'hidden' character-length arguments when calling BLAS/LAPACK
    routines from C/C++ is the default even for packages.  (Unless
    perhaps packages call Fortran code from C/C++ without using R's
    headers and without allowing for these arguments.)
  C-LEVEL FACILITIES:
  * The deprecated S-compatibility macros DOUBLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * The deprecated legacy typedefs of Sint and Sfloat in header R.h
    are no longer defined, and that header no longer includes header
    limits.h from C nor climits from C++.
  * New macro CAD5R() is provided in Rinternals.h and used in a few
    places in the R sources.
  * ALTREP now supports VECSXP vectors. Contributed by Gabor Csardi
    in PR#17620.
  * The Rcomplex definition (in header R_ext/Complex.h) has been
    extended to prevent possible mis-compilation when interfacing
    with Fortran (PR#18430).  The new definition causes compiler
    warnings with static initializers such as {1, 2}, which can be
    changed to {.r=1, .i=2}.
    Using the new definition from C++ depends on compiler extensions
    supporting C features that have not been incorporated into the
    C++ standards but are available in g++ and clang++: this may
    result in C++ compiler warnings but these have been worked around
    for recent versions of common compilers (GCC, Apple/LLVM clang,
    Intel).
    It is intended to change the inclusion of header R_ext/Complex.h
    by other R headers, so C/C++ code files which make use of
    Rcomplex should include that header explicitly.
  UTILITIES:
  * R CMD check does more checking of package .Rd files, warning
    about invalid email addresses and (some) invalid URIs and noting
    empty \item labels in description lists.
  * R CMD check now also reports problems when reading package news
    in md (file NEWS.md) and (optionally) plain text (file NEWS)
    formats.
  * _R_CHECK_TIMINGS_ defaults to a value from the environment even
    for R CMD check --as-cran; this allows for exceptionally fast or
    slow platforms.
    It now applies to checking PDF and HTML versions of the manuals,
    and 'checking CRAN incoming feasibility'.
  * R CMD check can optionally (but included in --as-cran) check
    whether HTML math rendering _via_ KaTeX works for the package .Rd
    files.
  * Non-interactive debugger invocations can be trapped by setting
    the environment variable _R_CHECK_BROWSER_NONINTERACTIVE_ to a
    true value.  This is enabled by R CMD check --as-cran to detect
    the use of leftover browser() statements in the package.
  * The use of sprintf and vsprintf from C/C++ has been deprecated in
    macOS 13 and is a known security risk.  R CMD check now reports
    (on all platforms) if their use is found in compiled code:
    replace by snprintf or vsnprintf respectively. [*NB:* whether
    such calls get compiled into the package is platform-dependent.]
  * Where recorded at installation, R CMD check reports the C and
    Fortran compilers used to build R.
    It reports the OS in use (if known, as given by osVersion) as
    well as that R was built for.
    It notes if a C++ standard was specified which is older than the
    current default: many packages have used C++11 to mean 'not
    C++98' - as C++11 is the minimum supported since R 4.0.0, that
    specification can probably be removed.
  * R CMD INSTALL reports the compilers (and on macOS, the SDK) used,
    and this is copied to the output of R CMD check.
    Where a C++ standard is specified, it is reported.
  * R CMD check's 'checking compilation flags in Makevars' has been
    relaxed to accept the use of flags such as -std=f2008 in
    PKG_FFLAGS.
  * tools::buildVignettes() has a new argument skip, which is used by
    R CMD check to skip (and note) vignettes with unavailable
    \VignetteDepends (PR#18318).
  * New generic .AtNames() added to enable class-specific completions
    after @. The formerly internal function findMatches() is now
    exported, mainly for use in methods for .DollarNames() and
    .AtNames().
  DEPRECATED AND DEFUNCT:
  * default.stringsAsFactors() is defunct.
  * Calling as.data.frame.&lt;class&gt;() directly (for 12 atomic classes)
    is going to be formally deprecated, currently activated by
    setting the environment variable
    _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ to non-empty, which also
    happens in R CMD check --as-cran.
  BUG FIXES:
  * Hashed environments with sizes less than 5 can now grow.
    (Reported to R-devel by Duncan Garmonsway.)
  * as.character(&lt;Rd&gt;, deparse = TRUE) failed to re-escape curly
    braces in LaTeX-like text.  (Reported by Hadley Wickham in
    PR#18324.)
  * library() now passes its lib.loc argument when requiring Depends
    packages; reported (with fix) in PR#18331 by Mikael Jagan.
  * R CMD Stangle: improved message about 'Output' files.
  * head(x, n) and tail(x, n) now signal an error if n is not
    numeric, instead of incidentally "working" sometimes returning
    all of x.  Reported and discussed by Colin Fay, in PR#18357.
  * The "lm" method for summary() now gives the correct F-statistic
    when the model contains an offset.  Reported in PR#18008.
  * C() and `contrasts&lt;-`() now preserve factor level names when
    given a function object (as opposed a function name which did
    preserve names). Reported in PR#17616.
  * c(a = 1, 2)[[]] no longer matches 2 but rather signals a
    _classed_ error.  Reported and analysed by Davis Vaughan in
    PR#18367, a duplicate of PR#18004, by Jan Meis et al.  For
    consistency, NULL[[]] is also erroneous now.  x[[]] &lt;- v gives an
    error of the same class "MissingSubscriptError".
  * The relist() function of utils now supports NULL elements in the
    skeleton (PR#15854).
  * ordered(levels = *) (missing x) now works analogously to factor(,
    ordered=TRUE); reported (with fix) by Achim Zeileis in PR#18389.
  * User-defined Rd macro definitions can now span multiple lines,
    thanks to a patch from Duncan Murdoch. Previously, the Rd parser
    silently ignored everything after the first line.
  * Plain-text help (tools::Rd2txt()) now preserves an initial blank
    line for text following description list items.
  * tools::Rd2HTML() and tools::Rd2latex() no longer split \arguments
    and \value lists at Rd comments.
  * tools::Rd2latex() now correctly handles optional text outside
    \items of argument lists as well as bracketed text at the
    beginning of sections, e.g., \value{[NULL]}.
  * as.character(&lt;POSIXt&gt;) now behaves more in line with the methods
    for atomic vectors such as numbers, and is no longer influenced
    by options().  Ditto for as.character(&lt;Date&gt;).  The
    as.character() method gets arguments digits and OutDec with
    defaults _not_ depending on options().  Use of as.character(*,
    format = .) now warns.
  * Similarly, the as.character.hexmode() and *.octmode() methods
    also behave as good citizen methods and back compatibility option
    keepStr = TRUE.
  * The as.POSIXlt(&lt;POSIXlt&gt;) and as.POSIXct(&lt;POSIXct&gt;) default
    methods now do obey their tz argument, also in this case.
  * as.POSIXlt(&lt;Date&gt;) now does apply a tz (time zone) argument, as
    does as.POSIXct(); partly suggested by Roland Fuss on the R-devel
    mailing list.
  * as.Date.POSIXlt(x) now also works when the list components are of
    unequal length, aka "partially filled" or "ragged".
  * expand.model.frame() looked up variables in the wrong environment
    when applied to models fitted without data.  Reported in
    PR#18414.
  * time() now (also) uses the ts.eps = getOption("ts.eps") argument
    and thus by default rounds values very close to the start (or
    end) of a year.  Based on a proposal by Andre"i V. Kostyrka on
    R-help.
  * Printing of a factanal() result with just one factor and sort =
    TRUE now works regularly, fixing PR#17863 by Timothy Bates,
    thanks to the 'R Contributors' working group.
  * Printing 0-length objects of class "factor", "roman", "hexmode",
    "octmode", "person", "bibentry", or "citation" now prints
    something better, one of which fixes PR#18422, reported by
    Benjamin Feakins.
  * Sys.timezone() queries timedatectl only if systemd is loaded;
    addressing a report by Jan Gorecki in PR#17421.
  * The formula method of cor.test() had scoping problems when
    environment(formula) was not the calling environment; reported
    with a patch proposal by Mao Kobayashi in PR#18439.
  * attach() of an environment with active bindings now preserves the
    active bindings.  Reported by Kevin Ushey in PR#18425.
  * BLAS detection now works also with system-provided libraries not
    available as regular files.  This fixes detection of the
    Accelerate framework on macOS since Big Sur.  Reported by David
    Novgorodsky.
  * download.file() gives a helpful error message in case of an
    invalid download.file.method option, thanks to Colin Fay's report
    in PR#18455.
  * Sporadic crashes of Rterm when using completion have been fixed.
  * Rprof() is now more reliable.  A livelock in thread
    initialization with too short sampling interval has been fixed on
    macOS.  A deadlock in using the C runtime has been fixed on
    Windows.  A potential deadlock has been prevented on Unix.
  * Cursor placement in Rgui now works even after a fixed-width font
    is selected.
  * Mandatory options (options()) are now set on startup so that
    saving and restoring them always works (PR#18372).
  * Package installation, R CMD INSTALL or install.packages(*), now
    parses each of the &lt;pkg&gt;/R/*.R files individually instead of
    first concatenating and then parse()ing the large resulting file.
    This allows parser or syntax errors to be diagnosed with correct
    file names and line numbers, thanks to Simon Dedman's report and
    Bill Dunlap's patch in PR#17859.
    This _does_ require syntactically self contained R source files
    now, fixing another inadvertent bug.
  * predict.lm(&lt;model with offset&gt;) now finds the offset in the
    correct environment, thanks to Andr'e Gillibert's report and patch
    in PR#18456.
  * getInitial(&lt;formula&gt;) now finds the selfStart model in the
    correct environment.  (Reported by Ivan Krylov in PR#18368.)
  * Fix for possible segfault when using recently-added graphics
    features, such as gradients, clipping paths, masks, and groups
    with pdf(file=NULL).
  * class(m) &lt;- class(m) no longer changes a matrix m by adding a
    class _attribute_.
  * packageDate(pkg) now only warns once if there is no pkg.
  * When ts() creates a multivariate time series, "mts", it also
    inherits from "array" now, and is.mts() is documented _and_
    stricter.
  * Rd2txt() now preserves line breaks of \verb Rd content and from
    duplicated \cr.  The former also fixes the rendering of verbatim
    output from Rd \Sexpr in plain-text help.
  * uniroot(f, interval) should no longer wrongly converge _outside_
    the interval in some cases where abs(f(x)) == Inf for an x at the
    interval boundary, thanks to posts by Ben Bolker and Serguei
    Sokol on R-devel.
  * Vectorized alpha handling in palette functions such as in gray(),
    rainbow(), or hcl.colors() works correctly now, thanks to Achim
    Zeileis' report and patch in PR#18476.
  * Formatting and print()ing of bibentry objects has dropped the
    deprecated citation.bibtex.max argument, such that the bibtex
    argument's default for print.bibentry() depends directly on the
    citation.bibtex.max option, whereas in format.bibentry() the
    option no longer applies.
  * Attempting to use a character string naming a foreign function
    entry point in a foreign function call in a package will now
    signal an error if the packages has called R_forceSymbols to
    specify that symbols must be used.
  * An error in table() could permanently set options(warn=2)
    promoting all subsequent warnings to errors.
  * The sigma() function gave misleading results for binary GLMs.  A
    new method for objects of class "glm" returns the square root of
    the estimate of the dispersion parameter using the same
    calculation as summary.glm().
  * bs() and ns() in the (typical) case of automatic knot
    construction, when some of the supposedly inner knots coincide
    with boundary knots, now moves them inside (with a warning),
    building on PR#18442 by Ben Bolker.
  * R CMD on Windows now skips the site profile with --no-site-file
    and --vanilla even when R_PROFILE is set (PR#18512, from Kevin
    Ushey).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1686916800">- CHANGES IN R 4.3.1:
  C-LEVEL FACILITIES:
  * The C-level API version of R's integrate(), Rdqags() in Applic.h,
    now returns the correct number of integrand evaluations neval,
    fixing PR#18515 reported and diagnosed by Stephen Wade.
  * The C prototypes for LAPACK calls dspgv and dtptrs in
    R_exts/Lapack.h had one too many and one too few character length
    arguments - but this has not caused any known issues. To get the
    corrected prototypes, include
    [#]include &lt;Rconfig.h&gt; // for PR18534fixed
    [#]ifdef PR18534fixed
    [#] define usePR18534fix 1
    [#]endif
    [#]include &lt;R_exts/Lapack.h&gt;
    in your C/C++ code (PR#18534).
  INSTALLATION:
  * Many of the checks of esoteric Internet operations and those
    using unreliable external sites have been moved to a new target
    that is not run by default and primarily intended for the core
    developers.  To run them use
    cd tests; make test-Internet-dev
  BUG FIXES:
  * .S3methods(), typically called from methods(), again marks
    methods from package base as visible.
    Also, the visibility of non-base methods is again determined by
    the method's presence in search().
  * tools::Rdiff() is now more robust against invalid strings, fixing
    installation tests on Windows without Rtools installed
    (PR#18530).
  * Fix (new) bug in hcl.colors(2, *), by Achim Zeileis (PR#18523).
  * head(., &lt;illegal&gt;) and tail(..) now produce more useful "Error in
    ...." error messages, fixing PR#18362.
  * Package code syntax on Windows is checked in UTF-8 when UTF-8 is
    the native encoding.
  * na.contiguous(x) now also returns the first run, when it is at
    the beginning and there is a later one of the same length;
    reported to R-devel, including a fix, by Georgi Boshnakov.
    Further, by default, it modifies only an existing attr(*,"tsp")
    but otherwise no longer sets one.
  * chol(&lt;not pos.def&gt;, pivot = &lt;T|F&gt;) now gives a correct error or
    warning message (depending on pivot), thanks to Mikael Jagan's
    (PR#18541).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1699012800">- CHANGES IN R 4.3.2:
  NEW FEATURES:
  * The default initialization of the "repos" option from the
    repositories file at startup can be skipped by setting
    environment variable R_REPOSITORIES to NULL such that
    getOption("repos") is empty if not set elsewhere.
  * qr.X() is now an implicit S4 generic in methods.
  * iconv(to = "ASCII//TRANSLIT") is emulated using substitution on
    platforms which do not support it (notably Alpine Linux).  This
    should give a human-readable conversion in ASCII on all platforms
    (rather than NA_character_).
  * trans3d() gains options continuous and verbose addressing the
    problem of possible "wrap around" when projecting too long
    curves, as reported by Achim Zeileis in PR#18537.
  * tools::showNonASCII() has been rewritten to work better on macOS
    14 (which has a changed implementation of iconv()).
  * tiff(type = "quartz") (the default on macOS) now warns if
    compression is specified: it continues to be ignored.
  INSTALLATION on a UNIX-ALIKE:
  * There is some support for building with Intel's LLVM-based
    compilers on x86_64 Linux, such as (C) icx, (C++) ipcx and
    (Fortran) ifx from oneAPI 2023.x.y.
  * There is support for using LLVM's flang-new as the Fortran
    compiler from LLVM 16.0.x (preferably 17.0.0 or later).
  UTILITIES:
  * R CMD check reports the use of the Fortran 90 random number
    generator RANDOM_NUMBER() and the subroutines to initialize it.
    'Writing R Extensions' has example code to use R's RNGs from
    Fortran.
  BUG FIXES:
  * substr(x, n, L) &lt;- cc now works (more) correctly for multibyte
    UTF-8 strings x when L &gt; nchar(x), thanks to a report and patch
    by 'Architect 95'.
  * contrib.url(character()) now returns 0-length character() as
    documented, which also avoids spurious warnings from
    available.packages() et al. in the edge case of an empty vector
    of repository URLs.
  * readChar(., 4e8) no longer fails, thanks to Kodi Arfer's report
    (PR#18557).
  * lapply(&lt;list&gt;, as.data.frame) no longer warns falsely for some
    base vector components.
  * Communication between parent and child processes in the multicore
    part of parallel could fail on platforms that do not support an
    arbitrarily large payload in system functions read()/write() on
    pipes (seen on macOS where a restriction to INT_MAX bytes is
    documented, without doing a partial read unlike Linux). The
    payload is now split into 1Gb chunks to avoid that problem.
    (PR#18571)
  * qqplot(x,y, conf.level=.) gives better confidence bounds when
    length(x) != length(y), thanks to Alexander Ploner's report and
    patch proposal (PR#18557).
  * norm(&lt;0-length&gt;, "2") now gives zero instead of an error, as all
    the other norm types, thanks to Mikael Jagan's PR#18542.
  * Build-stage Rd macros \packageAuthor and \packageMaintainer now
    process Authors@R, fixing NA results when the package DESCRIPTION
    omits Author and Maintainer fields.
  * Formatting and printing complex numbers could give things like
    0.1683-0i because of rounding error: -0i is now replaced by +0i.
  * postscript() refused to accept a title comment containing the
    letter "W" (PR#18599).
  * isoreg(c(1,Inf)) signals an error instead of segfaulting, fixing
    PR#18603.
  * tiff(type = "Xlib") was only outputting the last page of
    multi-page plots.
  * tools::latexToUtf8() again knows about \~{n} and other letters
    with tilde, fixing a regression in R 4.3.0, and about \^{i} as an
    alternative to \^{\i} (similarly with other accents).
    Furthermore, LaTeX codes for accented I letters are now correctly
    converted, also fixing related mistakes in
    tools::encoded_text_to_latex().
  * tar(*, tar = "internal") no longer creates out-of-spec tar files
    in the very rare case of user or group names longer than 32
    bytes, fixing PR#17871 with thanks to Ivan Krylov.
  * When using the "internal" timezone datetime code, adding a
    fraction of a second no longer adds one second, fixing PR#16856
    from a patch by Ivan Krylov.
  * tools::checkRd() no longer produces spurious notes about
    "unnecessary braces" from multi-line Rd results of \Sexpr macros.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1709208000">- CHANGES IN R 4.3.3:
  NEW FEATURES:
  * iconv() now fixes up variant encoding names such as "utf8"
    case-insensitively.
  DEPRECATED AND DEFUNCT:
  * The legacy encoding = "MacRoman" is deprecated in pdf() and
    postscript(): support was incomplete in earlier versions of R.
  BUG FIXES:
  * Arguments are now properly forwarded to methods on S4 generics
    with ... in the middle of their formal arguments. This was broken
    for the case when a method introduced an argument but did not
    include ... in its own formals. Thanks to Herv'e Pag`es for the
    report PR#18538.
  * Some invalid file arguments to pictex(), postscript() and xfig()
    opened a file called NA rather than throw an error.  These
    included postscript(NULL) (which some people expected to work
    like pdf(NULL)).
  * Passing filename = NA to svg(), cairo_pdf(), cairo_ps() or the
    Cairo-based bitmap devices opened a file called NA: it now throws
    an error.
  * quartz(file = NA) opened a file called NA, including when used as
    a Quartz-based bitmap device.  It now gives an error.
  * rank(&lt;long vector&gt;) now works, fixing PR#18617, thanks to Ilia
    Kats.
  * seq.int() did not adequately check its length.out argument.
  * match(&lt;POSIXct&gt;, .) is correct again for differing time zones,
    ditto for "POSIXlt", fixing PR#18618 reported by Bastian Klein.
  * drop.terms(*, dropx = &lt;0-length&gt;) now works, fixing PR#18563 as
    proposed by Mikael Jagan.
  * drop.terms(*) keeps + offset(.) terms when it should, PR#18565,
    and drop.terms() no longer makes up a response, PR#18566, fixing
    both bugs thanks to Mikael Jagan.
  * getS3method("t", "test") no longer finds the t.test() function,
    fixing PR#18627.
  * pdf() and postscript() support for the documented Adobe encodings
    "Greek" and "Cyrilllic" was missing (although the corresponding
    Windows' codepages could be used).
  * Computations of glyph metric information for pdf() and
    postscript() did not take into account that transliteration could
    replace one character by two or more (only seen on macOS 14) and
    typically warned that the information was not known.
  * rank(x) no longer overflows during integer addition, when
    computing rank average for largish but not-yet long vector x,
    fixing PR#18630, thanks to Ilia Kats.
  * list.files() on Windows now returns also files with names longer
    that 260 bytes (the Windows limit is 260 characters).
    Previously, some file names particularly with 'East Asian'
    characters were omitted.
  * cov2cor(&lt;0 x 0&gt;) now works, fixing PR#18423 thanks to Mikael
    Jagan and Elin Waring.
  * cov2cor(&lt;negative diagonal&gt;) and similar now give one warning
    instead of two, with better wording, fixing PR#18424 thanks to
    Mikael Jagan.
  * tools:: startDynamicHelp() now ensures port is in proper range,
    fixing PR#18645.
  * pbeta(x, a,b) is correct now for x=0 or 1 in the boundary cases
    where a or b or both are 0, fixing PR#18672 thanks to Michael
    Fay.
  * pmatch(x, table) for large table, also called for data frame row
    selection, dfrm[nm, ], is now interruptible, fixing PR#18656.
  * predict(&lt;rank-deficient lm&gt;, newdata=*) fix computing of nbasis,
    see Russ Lenth's comment 29 in PR#16158.
  * Added a work-around for a bug in macOS 14.3.1 and higher which
    prevents R plots in the Quartz Cocoa device from updating on
    screen.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1713960000">- CHANGES IN R 4.4.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Startup banners, R --version, sessionInfo() and R CMD check no
    longer report (64-bit) as part of the platform as this is almost
    universal - the increasingly rare 32-bit platforms will still
    report (32-bit).
    On Windows, ditto for window titles.
  * is.atomic(NULL) now returns FALSE, as NULL is not an atomic
    vector.  Strict back-compatibility would replace is.atomic(foo)
    by (is.null(foo) || is.atomic(foo)) but should happen only
    sparingly.
  NEW FEATURES:
  * The confint() methods for "glm" and "nls" objects have been
    copied to the stats package.  Previously, they were stubs which
    called versions in package MASS. The MASS namespace is no longer
    loaded if you invoke (say) confint(glmfit).  Further, the "glm"
    method for profile() and the plot() and pairs() methods for class
    "profile" have been copied from MASS to stats.  (profile.nls()
    and plot.profile.nls() were already in stats.)
  * The confint() and profile methods for "glm" objects have gained a
    possibility to do profiling based on the Rao Score statistic in
    addition to the default Likelihood Ratio. This is controlled by a
    new test = argument.
  * The pairs() method for "profile" objects has been extended with a
    which = argument to allow plotting only a subset of the
    parameters.
  * The "glm" method for anova() computes test statistics and
    p-values by default, using a chi-squared test or an F test
    depending on whether the dispersion is fixed or free.  Test
    statistics can be suppressed by giving argument test a false
    logical value.
  * In setRepositories() the repositories can be set using their
    names via name = instead of index ind =.
  * methods() and .S3methods() gain a all.names option for the (rare)
    case where functions starting with a . should be included.
  * Serializations can now be interrupted (e.g., by Ctrl-C on a
    Unix-alike) if they take too long, e.g., from save.image(),
    thanks to suggestions by Ivan Krylov and others on R-devel.
  * New startup option --max-connections to set the maximum number of
    simultaneous connections for the session.  Defaults to 128 as
    before: allowed values up to 4096 (but resource limits may in
    practice restrict to smaller values).
  * R on Windows (since Windows 10 2004) now uses the new Segment
    Heap allocator. This may improve performance of some
    memory-intensive applications.
  * When R packages are built, typically by R CMD build &lt;pkg&gt;, the
    new --user=&lt;build_user&gt; option overrides the (internally
    determined) user name, currently Sys.info()["user"] or LOGNAME.
    This is a (modified) fulfillment of Will Landau's suggestion in
    PR#17530.
  * tools::testInstalledBasic() gets new optional arguments outDir
    and testSrcdir, e.g., allowing to use it in a &lt;builddir&gt; !=
    &lt;srcdir&gt; setup, and in standard "binary" Windows installation
  * if* a source tests/ folder is present.
  * range(&lt;DT_with_Inf&gt;, finite = TRUE) now work for objects of class
    "Date", "POSIXct", and "POSIXlt" with infinite entries,
    analogously to range.default(), as proposed by Davis Vaughan on
    R-devel.  Other range()-methods can make use of new function
    .rangeNum().
  * New .internalGenerics object complementing .S3PrimitiveGenerics,
    for documentation and low-level book-keeping.
  * grid() now invisibly returns the x- and y- coordinates at which
    the grid-lines were drawn.
  * norm(., type) now also works for complex matrices.
  * kappa(., exact = TRUE, norm = *) now works for all norms and also
    for complex matrices.  In symmetric / triangular cases, the new
    argument uplo = "U" | "L" allows the upper or lower triangular
    part to be specified.
  * memDecompress(type = "unknown") recognizes compression in the
    default 'zlib' format as used by memCompress(type = "gzip").
  * memCompress() and memDecompress() will use the libdeflate library
    (&lt;https://github.com/ebiggers/libdeflate&gt;) if installed.  This
    uses the same type of compression for type = "gzip" but is 1.5-2x
    faster than the system libz library on some common platforms: the
    speed-up may depend on the library version.
  * diff() for objects of class "Date", "POSIXct", and "POSIXlt"
    accepts a units argument passed via ....
  * Dynamic help now does a much better job of rendering package
    DESCRIPTION metadata.
  * Rprof() gains an event argument and support for elapsed (real)
    time profiling on Unix (PR#18076).
  * filled.contour() gains a key.border argument.
  * tools::update_pkg_po() gets arguments pot_make and mo_make for
    _not_ re-making the corresponding files, and additionally a
    verbose argument.
  * Hexadecimal string colour specifications are now accepted in
    short form, so, for example, we can use "#123", which is
    equivalent to "#112233".
    Thanks to MikeFC for the original idea and Ella Kaye, Malcolm
    Barrett, George Stagg, and Hanne Oberman for the patch.
  * Plain-text help shows \var markup by angle brackets.
  * The new experimental primitive function declare() is intended to
    eventually allow information about R code to be communicated to
    the interpreter, compiler, and code analysis tools. The syntax
    for declarations is still being developed.
  * Functions psmirnov(), qsmirnov() and rsmirnov() in package stats
    have had argument two.sided renamed to alternative, to take into
    account that the permutation distributions of the one-sided
    statistics can be different in the case of ties.  Consequence of
    PR#18582.
  * sort() is now an implicit S4 generic in methods.
  * Formatting and printing, format(z), print(z), of complex vectors
    z no longer zap relatively small real or imaginary parts to zero,
    fixing PR#16752.  This is an API change, as it was documented
    previously to round real and imaginary parts together on purpose,
    producing nicer looking output.  As mentioned, e.g. in the PR,
    this change is compatible with many other "R-like" programming
    environments.
    We have simplified the internal code and now basically format the
    real and imaginary parts independently of each other.
  * New experimental functions Tailcall() and Exec() to support
    writing stack-space-efficient recursive functions.
  * Where characters are attempted to be plotted by pdf(),
    postscript() and xfig() which are not in the selected 8-bit
    character set (most often Latin-1) and the R session is using a
    UTF-8 locale, the warning messages will show the UTF-8 character
    rather than its bytes and one dot will be substituted per
    character rather than per byte.  (Platforms whose iconv() does
    transliteration silently plot the transliteration.)
    In a UTF-8 locale some transliterations are now done with a
    warning (e.g., dashes and Unicode minus to hyphen, ligatures are
    expanded, permille (‰) is replaced by o/oo), although the OS may
    have got there first.  These are warnings as they will continue
    to be replaced by dots in earlier versions of R.
  * The matrix multiplication functions crossprod() and tcrossprod()
    are now also primitive and S3 generic, as %*% had become in R
    4.3.0.
  * source() and example() have a new optional argument catch.aborts
    which allows continued evaluation of the R code after an error.
  * The non-Quartz tiff() devices allow additional types of
    compression if supported by the platform's libtiff library.
  * The list of base and recommended package names is now provided by
    tools::standard_package_names().
  * cairo_pdf() and cairo_ps() default to onefile = TRUE to closer
    match pdf() and postscript().
  * New option catch.script.errors provides a documented way to catch
    errors and then continue in non-interactive use.
  * L %||% R newly in base is an expressive idiom for the phrases
    if(!is.null(L)) L else R or if(is.null(L)) R else L.
  * The return value from warnings() now always inherits from
    "warnings" as documented, now also in the case of no warnings
    where it previously returned NULL.
  * as.complex("1i") now returns 0 + 1i instead of NA with a warning.
  * z &lt;- c(NA, 1i) now keeps the imaginary part Im(z[1]) == 0, no
    longer coercing to NA_complex_.  Similarly, cumsum(z) correctly
    sums real and imaginary parts separately, i.e., without
    "crosstalk" in case of NAs.
  * On Alpine Linux iconv() now maps "latin2", "latin-2", "latin9"
    and "latin-9" to encoding names the OS knows about
    (case-insensitively).
  * iconv(sub = "Unicode") now always zero-pads to four (hex) digits,
    rather than to 4 or 8.  (This seems to have become the convention
    once Unicode restricted the number of Unicode points to 2^21 - 1
    and so will never need more than 6 digits.)
  * NCOL(NULL) now returns 0 instead of 1, for consistency with
    cbind().
  * The information for the Euro glyph missing from the Adobe .afm
    files for the Courier, Helvetica and Times families has been
    copied from their URW equivalents - this will improve vertical
    centring in the pdf() and postscript() devices.
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.12.0.  The changes are almost entirely cosmetic.
  * The included LAPACK sources have been updated to version 3.12.0
    and some further double-complex routines added.
  * There are new font families for the 2014--5 URW 2.0 fonts (see
    ?pdf) which are included in recent versions of Ghostscript.
    These have font widths for most Greek glyphs and a few others
    which were missing from the original versions (whose font
    families remain available for reproducibility, although
    Ghostscript-based viewers will render using the 2.0 versions).
  * Improve the large-n efficiency of as.matrix(&lt;dist&gt;), thanks an R
    contributors effort, notably by Tim Taylor and Heather Turner,
    see PR#18660.
  * The default and numeric methods of all.equal() get a check.class
    option.
  * zapsmall() gets new optional arguments, function mFUN and min.d,
    for extra flexibility; fulfills a wish in PR#18199.  Also, it is
    now an implicit S4 generic in package methods.
  * The Rd filter for aspell() gains an ignore argument.
  * New generic function sort_by(), primarily useful for the
    data.frame method which can be used to sort rows of a data frame
    by one or more columns.
  * The icence headers for the RPC code in src/extra/xdr have been
    updated to use the GPL-compatible licence published by Oracle
    America in 2010.
  * New function pkg2HTML() in tools to create single-page HTML
    reference manuals for R packages.
  * The byte code evaluator now uses less C stack space for recursive
    calls to byte-compiled functions. It also makes more of an effort
    to avoid allocations for scalar return values.
  * New completion option backtick (disabled by default) allows
    non-syntactic completions to be wrapped in backquotes. This is
    currently only useful for Jupyter notebooks via the IRkernel
    package, and may cause problems for other backends.
  INSTALLATION:
  * The parser has been updated to work with bison 3.8.2, which is
    now used for the pre-generated parsers in gram.c, file.c, and
    gramRd.c. A few parser error messages have changed, which may
    affect code that relies on exact messages.
  INSTALLATION on a UNIX-ALIKE:
  * System valgrind headers are now required to use configure option
  - -with-valgrind-instrumentation with value 1 or 2.
  * configure will warn if it encounters a 32-bit build, as that is
    nowadays almost untested.
  * Environment variable R_SYSTEM_ABI is no longer used and so no
    longer recorded in etc/Renviron (it was not on Windows and was
    only ever used when preparing package tools).
  * If the libdeflate library and headers are available, libdeflate
    rather than libz is used to (de)compress R objects in lazy-load
    databases.  Typically tasks spend up to 5% of their time on such
    operations, although creating lazy-data databases is one of the
    exceptions.
    This can be suppressed if the library is available by the
    configure option --without-libdeflate-compression.
  * configure option --enable-lto=check has not worked reliably since
    2019 and has been removed.
  * The minimum autoconf requirement for a maintainer build has been
    increased to autoconf 2.71.
    It is intended to increase this to 2.72 for R 4.5.0: the
    distributed configure file was generated using 2.72.
  * The minimum version requirement for an external LAPACK has been
    reduced to 3.9.0.
  * No default C++ compiler is set if no C++17 compiler is detected:
    there is no longer an automatic fallback to C++14 or C++11.
    Compilers from the last five years should have sufficient
    support: for others macros CXX and CXXSTD can be set in file
    config.site to provide a fallback if needed.
    The Objective-C++ compiler now by default uses the standard
    selected by R for C++ (currently C++17) rather than the default
    standard for the C++ compiler (which on macOS is still C++98).
  INSTALLATION on macOS:
  * A new configure option --with-newAccelerate makes use of Apple's
    'new' BLAS / LAPACK interfaces in their Accelerate framework.
    Those interfaces are only available in macOS 13.3 or later, and
    building requires SDK 13.3 or later (from the Command Line Tools
    or Xcode 14.3 or later).
    By default the option uses new Accelerate for BLAS calls: to also
    use it for LAPACK use option --with-newAccelerate=lapack.  The
    later interfaces provide LAPACK 3.9.1 rather than 3.2.1: 3.9.1 is
    from 2021-04 and does not include the improved algorithms
    introduced in LAPACK 3.10.0 (including for BLAS calls).
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools44, an update of the Rtools43 toolchain.  It is
    based on GCC 13 and newer versions of MinGW-W64, binutils and
    libraries (targeting 64-bit Intel CPUs).  R-devel can no longer
    be built using Rtools43 without changes.
  * Rtools44 has experimental support for 64-bit ARM (aarch64) CPUs
    _via_ the LLVM 17 toolchain using lld, clang/flang-new and
    libc++.
  UTILITIES:
  * R CMD check notes when S4-style exports are used without
    declaring a strong dependence on package methods.
  * tools::checkRd() (used by R CMD check) detects more problems with
    \Sexpr-based dynamic content, including bad nesting of \Sexprs
    and invalid arguments.
  * tools::checkRd() now reports Rd titles and section names ending
    in a period; this is ignored by R CMD check unless environment
    variable _R_CHECK_RD_CHECKRD_MINLEVEL_ is set to -5 or smaller.
  * R CMD check now notes Rd files without an \alias, as long
    documented in 'Writing R Extensions' §1.3.1.  The check for a
    missing \description has been moved from tools::checkRd() to
    tools::checkRdContents().
  * R CMD check now visits inst/NEWS.Rd and OS-specific man
    subdirectories when checking Rd files.
  * tools::checkDocFiles() and tools::checkRdContents() now also
    check internal Rd files by default, but "specially" (ignoring
    missing documentation of arguments).
  * R CMD Rdiff gets option --useEx.
  * R CMD check now warns on non-portable uses of Fortran KIND such
    as INTEGER(KIND=4) and REAL(KIND=8).
    To see the failing lines set environment variable
    _R_CHECK_FORTRAN_KIND_DETAILS_ to a true value.
  * When checking Rd files, R CMD check now notes some of the "lost
    braces" that tools::checkRd() finds.  Typical problems are Rd
    macros missing the initial backslash (e.g., code{...}), in-text
    set notation (e.g., {1, 2}, where the braces need escaping), and
    \itemize lists with \describe-style entries of the form
    \item{label}{description}.
  * R CMD INSTALL (and hence check) will compile C++ code with
  - DR_NO_REMAP if environment variable _R_CXX_USE_NO_REMAP_ is set
    to a true value.  It is planned that this will in future become
    the default for compiling C++.
  * The new built-in Rd macro \dontdiff{} can be used to mark example
    code whose output should be ignored when comparing check output
    to reference output (tests/Examples/&lt;pkg&gt;-Ex.Rout.save).  The
    \dontdiff tag, like \donttest, is _not_ shown on the rendered
    help page, so provides a clean alternative to ##
    IGNORE_RDIFF_(BEGIN|END) comments.
  * R CMD build when there is no NAMESPACE, now uses the recommended
    exportPattern("^[^.]"), instead of exporting everything.
  * R CMD check now warns about non-ASCII characters in the NAMESPACE
    file (in addition to R files). Such packages are not portable and
    may fail to install on some platforms.
  C-LEVEL FACILITIES:
  * Headers R_ext/Applic.h and R-ext/Linpack.h used to include
    R_ext/BLAS.h although this was undocumented and unneeded by their
    documented entry points.  They no longer do so.
  * New function R_missing(), factored out from do_missing(), used to
    fix PR#18579.
  * SEXP type S4SXP has been renamed to OBJSXP to support
    experimenting with alternative object systems.  The S4SXP value
    can still be used in C code but is now deprecated.  Based on
    contributions from the R Consortium's Object-Oriented Programming
    Working Group.
  * New function pow1p(x,y) for accurate (1+x)^y.
  * mkCharLenCE was incorrectly documented to take a size_t length
    but was implemented with int (and character strings in R are
    limited to 2^31 - 1 bytes).
  DEPRECATED AND DEFUNCT:
  * data() no longer handles zipped data from long-defunct (since R
    2.13.0) --use-zip-data installations.
  * The legacy graphics devices pictex() and xfig() are now
    deprecated.  They do not support recent graphics enhancements and
    their font handling is rudimentary. The intention is to retain
    them for historical interest as long as they remain somewhat
    functional.
  * Support for encoding = "MacRoman" has been removed from the pdf()
    and postscript() devices - this was a legacy encoding supporting
    classic macOS up to 2001 and no longer has universal libiconv
    support.
  * is.R() is deprecated as no other S dialect is known to be in use
    (and this could only identify historical dialects, not future
    ones).
    Further information on calls can be obtained by setting the
    environment variable _R_DEPRECATED_IS_R_ to error which turns the
    deprecation warning into an error and so by default gives a
    traceback.  (This is done by R CMD check --as-cran.)
  * UseMethod() no longer forwards local variables assigned in the
    generic function into method call environments before evaluating
    the method body. This makes method calls behave more like
    standard function calls and makes method code easier to analyze
    correctly.
  * The twelve as.data.frame.&lt;class&gt;() methods which were deprecated
    only via _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ and in R CMD
    check --as-cran are formally deprecated now in favour of calling
    as.data.frame() or as.data.frame.vector().  The deprecation
    "check" now works also when as.data.frame() is S4 generic thanks
    to Ivan Krylov.
  * The default method for the directional comparison operators &lt;, &gt;,
    &lt;=, and &gt;= now signals an error when one of the operands is a
    language object, i.e. a symbol or a call.
  * For terms.formula(), deprecate abb and neg.out arguments
    _formally_ in addition to just documenting it.
  BUG FIXES:
  * The methods package is more robust to not being attached to the
    search path.  More work needs to be done.
  * pairwise.t.test() misbehaved when subgroups had 0 DF for
    variance, even with pool.sd = TRUE.  (PR#18594 by Jack Berry).
  * Probability distribution functions [dpq]&lt;distrib&gt;(x, *), but also
    bessel[IKJY](x, .) now consistently preserve attributes(x) when
    length(x) == 0, e.g., for a 2 x 0 matrix, thanks to Karolis
    Koncevičius' report PR#18509.
  * Group "Summary" computations such as sum(1:3, 4, na.rm = 5, NA,
    7, na.rm = LL) now give an error instead of either 17 or NN for
    LL true or false, as proposed by Ivan Krylov on the R-devel
    mailing list.  (This also means it is now an error to specify
    na.rm more than once.)
  * as.complex(x) now returns complex(real = x, imaginary = 0) for
    _all_ numerical and logical x, notably also for NA or
    NA_integer_.
  * Directories are now omitted by file.copy(, recursive = FALSE) and
    in file.append() (PR#17337).
  * gsub() and sub() are now more robust to integer overflow when
    reporting errors caused by too large input strings (PR#18346).
  * Top-level handlers are now more robust to attempts to remove a
    handler whilst handlers are running (PR#18508).
  * The handling of Alt+F4 in dialogs created on Windows using
    GraphApp has been fixed (PR#13870).
  * density() more consistently computes grid values for the
    FFT-based convolution, following Robert Schlicht's analysis and
    proposal in PR#18337, correcting density values typically by a
    factor of about 0.999.  Argument old.coords = TRUE provides back
    compatibility.
  * palette.colors() gains a name argument that defaults to FALSE
    controlling whether the vector of colours that is returned has
    names (where possible).  PR#18529.
  * tools::xgettext() no longer extracts the (non-translatable) class
    names from warningCondition and errorCondition calls.
  * S3method(&lt;gen&gt;, &lt;class&gt;, &lt;func&gt;) in the NAMESPACE file now works
    (again) when &lt;func&gt; is visible from the namespace, e.g.,
    imported, or in base.
  * getParseData(f) now also works for a function defined in the
    first of several &lt;pkg&gt;/R/*.R source files, thanks to Kirill
    Müller's report and Duncan Murdoch's patch in PR#16756.
  * Rd \Sexpr macros with nested #ifdef conditionals were not
    processed.
  * A non-blocking connection with non-default encoding (such as a
    socket) now correctly returns from readLines() after new data has
    arrived also when its EOF had been reached previously.  Thanks to
    Peter Meilstrup's report on R-devel and Ivan Krylov's report and
    patch proposal in PR#18555.
  * tools::checkRdContents() failed to detect empty argument
    descriptions when they spanned multiple lines, including those
    generated by prompt().  These cases are now noted by R CMD check.
  * Plain-text help no longer outputs spurious colons in the
    arguments list (for multi-line \item labels in the Rd source).
  * kappa() and rcond() work correctly in more cases; kappa(., norm =
    "2") now warns that it computes the 1-norm with (default) exact =
    FALSE; prompted by Mikael Jagan's quite comprehensive PR#18543.
  * Rd skeletons generated by prompt() or promptData() now use a
    dummy title (so R CMD build works).  tools::checkRdContents() has
    been updated to detect such template leftovers, including from
    promptPackage().
  * When S4 method dispatch fails because no method was found, the
    error message now includes the signature argument names; thanks
    to Michael Chirico's proposal on the R-devel list.
  * withAutoprint({ .. }) now preserves srcrefs previously lost,
    thanks to Andrew Simmons' report plus fix in PR#18572.
  * transform.data.frame() no longer adjusts names; in particular,
    untransformed variables are kept as-is, including those with
    syntactically invalid names (PR#17890).
  * The keep.source option for Rd \Sexpr blocks is no longer ignored.
  * The formula methods for t.test() and wilcox.test() now catch when
    paired is passed, addressing PR#14359; use Pair(x1, x2) ~ 1 for a
    paired test.
  * The level reported in the browser prompt was often too large. It
    now shows the number of browser contexts on the stack.
  * For cbind() and rbind(), the optional deparse.level argument is
    now properly passed to methods, thanks to Mikael Jagan's PR#18579
    and comments there.
  * Some error and warning messages for large ('long vector')
    matrix(v, nr, nc) and dim(m) &lt;- d are now correct about sizes,
    using long long formatting, fixing PR#18612 (and more) reported
    by Mikael Jagan.
  * readChar(useBytes = TRUE) now terminates strings even when the
    underlying connection uses extra spaces in the input buffer.
    This fixes problems with extra garbage seen with gzip
    connections, PR#18605.
  * Named capture in PCRE regular expressions now works also with
    more than 127 named groups (PR#18588).
  * Datetime functions are now robust against long jumps when dealing
    with internal time zone changes.  This avoids confusing warnings
    about an invalid time zone, previously triggered by turning
    warnings into errors or handling them via tryCatch (PR#17966,
    PR#17780).
  * Datetime functions now restore even an empty TZ environment
    variable after internal time zone changes (PR#17724).  This makes
    results of datetime functions with this (typically unintentional)
    setting more predictable.
  * drop.terms(*) now drops response as by default, keep.response =
    FALSE, fixing PR#18564 thanks to Mikael Jagan.
  * dummy.coef(.) now also works for lm()-models with character
    categorical predictor variables rather than factor ones, fixing
    PR#18635 reported by Jinsong Zhao.
  * formals(f) &lt;- formals(f) now also works for a function w/o
    arguments and atomic _constant_ body(f).
  * Correct as.function(&lt;invalid list&gt;, .)'s error message.
  * removeSource() is yet more thorough in finding and removing
    "srcref" and the other source references from parsed R language
    chunks, fixing PR#18638 thanks to Andrew Simmons.
  * dgeom() is more accurate now, notably when its result is very
    small, fixing PR#18642 thanks to the proposal of Morten Welinder,
    also improving other instances where C level binom_raw(x, n, ..)
    has x == 0 or x== n.
  * warning() with options(warn = 1) has improved output for
    multi-line messages.
  * axis.Date() and axis.POSIXct() now respect the par("lab") setting
    for the number of pretty() intervals.
  * Comparisons for language objects (which are based on deparsing)
    are now more careful about using accurate deparsed results
    (PR#18676).
  * Plain-text help (Rd2txt) now correctly preserves blank lines
    following single-line \dontrun code.
  * &lt;POSIXlt&gt;[*] no longer sets wrong "balanced" attribute, fixing
    PR#18681 thanks to Mikael Jagan.
  * str(&lt;classed-call&gt;) now deparses the call as expected, fixing
    PR#18684, reported by Dave Slager.
  * In Rd examples, code following the closing brace of a \dontrun,
    \dontshow or \donttest tag on the same line is no longer skipped
    when R CMD check runs the examples.
  * as.data.frame(matrix(*, ncol=0)) now gets valid names() and
    colnames(); reported by Davis Vaughan on the R-devel list.
  * Internal Mathlib function stirlerr(n) is now almost fully
    (52-bit) accurate for all n &gt;= ~5.9 and more accurate also in the
    range 1 -- 5.9.  This entails small ("after 12th decimal")
    changes in density functions, e.g., dgamma() in _some_ regions of
    their support.  The fix was partly prompted by Morten Welinder's
    PR#18640.
  * Numbers like 9876543.2 are now considered non-integer by Mathlib
    internal R_nonint(), amending original fix of PR#15734.
  * Rd comment lines no longer cause broken paragraphs in the
    rendered PDF and plain-text help. In code blocks, pure comment
    lines (starting with %) no longer produce an empty line.
  * xtabs(Freq ~ .) now consistently defaults to na.action = na.pass,
    using na.rm = FALSE (added as an argument) when summing over Freq
    (PR#17770).
  * tools::testInstalledPackage() is no longer silent about failures
    from running examples or tests and its return code no longer
    ignores failures from checking vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1718366400">- CHANGES IN R 4.4.1:
  C-LEVEL FACILITIES:
  * Functions R_atof and R_strtod declared in header R_ext/Utils.h
    are now documented in 'Writing R Extensions' and so formally part
    of the API.
  * The non-API entry points Rf_setSVector, Rf_StringFalse,
    Rf_StringTrue and Rf_isBlankString have been added to those
    reported by R CMD check.
  * The new function Rf_allocLang is now available. This provides an
    alternative to the idiom of calling Rf_allocList followed by
    SET_TYPEOF.
  UTILITIES:
  * R CMD check now reports as warnings what gfortran calls 'Fortran
    2018 deleted features', all of which have long been marked as
    'obsolescent' and some of which were deleted in Fortran 2008 or
    earlier.  Fortran compilers are no longer required to support
    these.
  BUG FIXES:
  * as.numeric(), scan(), type.convert() and other places which use
    the internal C function R_strtod now require a _non-empty_ digit
    sequence in a decimal or binary exponent.  This aligns with the
    C/POSIX standard for strtod and with ?NumericConstants.
  * as.data.frame(m, make.names=NA) now works correctly for a matrix
    m with NA's in row names.
  * The error message from &lt;POSIXlt&gt;[["hour"]] and similar now
    mentions *[[, "hour"]], as wished for in PR#17409 and proposed by
    Michael Chirico.
  * qbinom() and potentially qpois(), qnbinom(), no longer sometimes
    fail accurate inversion (of pbinom(), etc), thanks to Christopher
    Chang's report and patch in PR#18711.
  * The internal help server on Windows can again serve requests sent
    in quick succession, fixing a regression in R 4.4.0.
  * debugcall(&lt;S3Generic&gt;()) now also works when a corresponding
    S4-generic version is in the methods cache (PR#18143).
  * Package tools' toTitleCase(ch0) now returns character(0) when ch0
    is of zero length; fixing PR#18724, reported by David Hugh Jones.
  * R CMD check is no longer broken (without a check result and no
    explanation in 00check.log) for a package which declares an
    invalid VignetteBuilder in DESCRIPTION but has no vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1730376000">- CHANGES IN R 4.4.2:
  C-LEVEL FACILITIES:
  * The S-compatibility macros F77_COM and F77_COMDECL defined in
    header R_ext/RS.h are deprecated and will be removed shortly.  We
    could find no record of their use.
  BUG FIXES:
  * Mathlib function lgammacor(x) no longer warns about underflow to
    zero for large x.
  * Text widths and heights were incorrectly reported by the Quartz
    device if the drawing context didn't exist yet (typically when
    drawing off-screen to a window that is yet to appear, see
    PR#18591).
  * The Quartz device could segfault in cases where paths with spaces
    are used in the new glyph drawing API.  Thanks to Tomek
    Gieorgijewski (PR#18758).
  * On macOS in R CRAN builds, it is again possible to read
    little-endian UTF-16 text with a BOM from a connection using
    encoding="UTF-16".  Users building R from source should avoid
    using the system libiconv in macOS 14.1 and later.
  * methods' internal .requirePackage() now re-enables primitive
    method dispatch when needed; thanks to Ivan Krylov for
    demystifying CRAN package check failures on the R-devel mailing
    list.</changelog>
</package>
<package pkgid="443d57851e435e7360675b4737c7380f67b2e08049f69814d05ae1e679975cc5ce88d8383a86c1aeb2a732908391e0d230ee007aa3d8653da759f5f313ee28a6" name="R-grDevices" arch="x86_64">
  <version epoch="0" ver="4.4.2" rel="51.0.2.2.sr20241103"/>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1620302400">- To get in sync with d:l:R:autoCRAN the Matrix package's split
  in -devel was reversed.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339200">- improved spec file according to comments of dimstar in
  https://build.opensuse.org/request/show/892685</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339201">- CHANGES IN R 4.1.0:
  FUTURE DIRECTIONS:
  * It is planned that the 4.1.x series will be the last to support
    32-bit Windows, with production of binary packages for that
    series continuing until early 2023.
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Data set esoph in package datasets now provides the correct
    numbers of controls; previously it had the numbers of cases added
    to these.  (Reported by Alexander Fowler in PR#17964.)
  NEW FEATURES:
  * www.omegahat.net is no longer one of the repositories known by
    default to setRepositories().  (Nowadays it only provides source
    packages and is often unavailable.)
  * Function package_dependencies() (in package tools) can now use
    different dependency types for direct and recursive dependencies.
  * The checking of the size of tarball in R CMD check --as-cran
    &lt;pkg&gt; may be tweaked via the new environment variable
    _R_CHECK_CRAN_INCOMING_TARBALL_THRESHOLD_, as suggested in
    PR#17777 by Jan Gorecki.
  * Using c() to combine a factor with other factors now gives a
    factor, an ordered factor when combining ordered factors with
    identical levels.
  * apply() gains a simplify argument to allow disabling of
    simplification of results.
  * The format() method for class "ftable" gets a new option justify.
    (Suggested by Thomas Soeiro.)
  * New ...names() utility.  (Proposed by Neal Fultz in PR#17705.)
  * type.convert() now warns when its as.is argument is not
    specified, as the help file always said it _should_.  In that
    case, the default is changed to TRUE in line with its change in
    read.table() (related to stringsAsFactor) in R 4.0.0.
  * When printing list arrays, classed objects are now shown _via_
    their format() value if this is a short enough character string,
    or by giving the first elements of their class vector and their
    length.
  * capabilities() gets new entry "Rprof" which is TRUE when R has
    been configured with the equivalent of --enable-R-profiling (as
    it is by default).  (Related to Michael Orlitzky's report
    PR#17836.)
  * str(xS4) now also shows extraneous attributes of an S4 object
    xS4.
  * Rudimentary support for vi-style tags in rtags() and R CMD rtags
    has been added.  (Based on a patch from Neal Fultz in PR#17214.)
  * checkRdContents() is now exported from tools; it and also
    checkDocFiles() have a new option chkInternal allowing to check
    Rd files marked with keyword "internal" as well.  The latter can
    be activated for R CMD check via environment variable
    _R_CHECK_RD_INTERNAL_TOO_.
  * New functions numToBits() and numToInts() extend the raw
    conversion utilities to (double precision) numeric.
  * Functions URLencode() and URLdecode() in package utils now work
    on vectors of URIs.  (Based on patch from Bob Rudis submitted
    with PR#17873.)
  * path.expand() can expand ~user on most Unix-alikes even when
    readline is not in use.  It tries harder to expand ~, for example
    should environment variable HOME be unset.
  * For HTML help (both dynamic and static), Rd file links to help
    pages in external packages are now treated as references to
    topics rather than file names, and fall back to a file link only
    if the topic is not found in the target package. The earlier rule
    which prioritized file names over topics can be restored by
    setting the environment variable _R_HELP_LINKS_TO_TOPICS_ to a
    false value.
  * c() now removes NULL arguments before dispatching to methods,
    thus simplifying the implementation of c() methods, _but_ for
    back compatibility keeps NULL when it is the first argument.
    (From a report and patch proposal by Lionel Henry in PR#17900.)
  * Vectorize()'s result function's environment no longer keeps
    unneeded objects.
  * Function ...elt() now propagates visibility consistently with
    ..n.  (Thanks to Lionel Henry's PR#17905.)
  * capture.output() no longer uses non-standard evaluation to
    evaluate its arguments.  This makes evaluation of functions like
    parent.frame() more consistent.  (Thanks to Lionel Henry's
    PR#17907.)
  * packBits(bits, type="double") now works as inverse of
    numToBits().  (Thanks to Bill Dunlap's proposal in PR#17914.)
  * curlGetHeaders() has two new arguments, timeout to specify the
    timeout for that call (overriding getOption("timeout")) and TLS
    to specify the minimum TLS protocol version to be used for
    https:// URIs (_inter alia_ providing a means to check for sites
    using deprecated TLS versions 1.0 and 1.1).
  * For nls(), an optional constant scaleOffset may be added to the
    denominator of the relative offset convergence test for cases
    where the fit of a model is expected to be exact, thanks to a
    proposal by John Nash.  nls(*, trace=TRUE) now also shows the
    convergence criterion.
  * Numeric differentiation _via_ numericDeriv() gets new optional
    arguments eps and central, the latter for taking central divided
    differences.  The latter can be activated for nls() via
    nls.control(nDcentral = TRUE).
  * nls() now passes the trace and control arguments to getInitial(),
    notably for all self-starting models, so these can also be fit in
    zero-noise situations via a scaleOffset.  For this reason, the
    initial function of a selfStart model must now have ... in its
    argument list.
  * bquote(splice = TRUE) can now splice expression vectors with
    attributes: this makes it possible to splice the result of
    parse(keep.source = TRUE).  (Report and patch provided by Lionel
    Henry in PR#17869.)
  * textConnection() gets an optional name argument.
  * get(), exists(), and get0() now signal an error if the first
    argument has length greater than 1.  Previously additional
    elements were silently ignored.  (Suggested by Antoine Fabri on
    R-devel.)
  * R now provides a shorthand notation for creating functions, e.g.
    \(x) x + 1 is parsed as function(x) x + 1.
  * R now provides a simple native forward pipe syntax |&gt;.  The
    simple form of the forward pipe inserts the left-hand side as the
    first argument in the right-hand side call.  The pipe
    implementation as a syntax transformation was motivated by
    suggestions from Jim Hester and Lionel Henry.
  * all.equal(f, g) for functions now by default also compares their
    environment(.)s, notably via new all.equal method for class
    function.  Comparison of nls() fits, e.g., may now need
    all.equal(m1, m2, check.environment = FALSE).
  * .libPaths() gets a new option include.site, allowing to _not_
    include the site library.  (Thanks to Dario Strbenac's suggestion
    and Gabe Becker's PR#18016.)
  * Lithuanian translations are now available.  (Thanks to Rimantas
    Zakauskas.)
  * names() now works for DOTSXP objects.  On the other hand, in
    R-lang, the R language manual, we now warn against relying on the
    structure or even existence of such dot-dot-dot objects.
  * all.equal() no longer gives an error on DOTSXP objects.
  * capabilities("cairo") now applies only to the file-based devices
    as it is now possible (if very unusual) to build R with Cairo
    support for those but not for X11().
  * There is optional support for tracing the progress of
    loadNamespace() - see its help.
  * (Not Windows.)  l10n_info() reports an additional element, the
    name of the encoding as reported by the OS (which may differ from
    the encoding part (if any) of the result from
    Sys.getlocale("LC_CTYPE").
  * New function gregexec() which generalizes regexec() to find _all_
    disjoint matches and well as all substrings corresponding to
    parenthesized subexpressions of the given regular expression.
    (Contributed by Brodie Gaslam.)
  * New function charClass() in package utils to query the
    wide-character classification functions in use (such as
    iswprint).
  * The names of quantile()'s result no longer depend on the global
    getOption("digits"), but quantile() gets a new optional argument
    digits = 7 instead.
  * grep(), sub(), regexp and variants work considerably faster for
    long factors with few levels.  (Thanks to Michael Chirico's
    PR#18063.)
  * Provide grouping of x11() graphics windows within a window
    manager such as Gnome or Unity; thanks to a patch by Ivan Krylov
    posted to R-devel.
  * The split() method for class data.frame now allows the f argument
    to be specified as a formula.
  * sprintf now warns on arguments unused by the format string.
  * New palettes "Rocket" and "Mako" for hcl.colors() (approximating
    palettes of the same name from the 'viridisLite' package).
    Contributed by Achim Zeileis.
  * The base environment and its namespace are now locked (so one can
    no longer add bindings to these or remove from these).
  * Rterm handling of multi-byte characters has been improved,
    allowing use of such characters when supported by the current
    locale.
  * Rterm now accepts ALT+ +xxxxxxxx sequences to enter Unicode
    characters as hex digits.
  * Environment variable LC_ALL on Windows now takes precedence over
    LC_CTYPE and variables for other supported categories, matching
    the POSIX behaviour.
  * duplicated() and anyDuplicated() are now optimized for integer
    and real vectors that are known to be sorted via the ALTREP
    framework. Contributed by Gabriel Becker via PR#17993.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 14
    and so packages that provide graphics devices should be
    reinstalled.
  * Graphics devices should now specify deviceVersion to indicate
    what version of the graphics engine they support.
  * Graphics devices can now specify deviceClip.  If TRUE, the
    graphics engine will never perform any clipping of output itself.
    The clipping that the graphics engine does perform (for both
    canClip = TRUE and canClip = FALSE) has been improved to avoid
    producing unnecessary artifacts in clipped output.
  * The grid package now allows gpar(fill) to be a linearGradient(),
    a radialGradient(), or a pattern().  The viewport(clip) can now
    also be a grob, which defines a clipping path, and there is a new
    viewport(mask) that can also be a grob, which defines a mask.
    These new features are only supported so far on the Cairo-based
    graphics devices and on the pdf() device.
  * (Not Windows.)  A warning is given when a Cairo-based type is
    specified for a png(), jpeg(), tiff() or bmp() device but Cairo
    is unsupported (so type = "Xlib" is tried instead).
  * grSoftVersion() now reports the versions of FreeType and
    FontConfig if they are used directly (not _via_ Pango), as is
    most commonly done on macOS.
  C-LEVEL FACILITIES:
  * The _standalone_ libRmath math library and R's C API now provide
    log1pexp() again as documented, and gain log1mexp().
  INSTALLATION on a UNIX-ALIKE:
  * configure checks for a program pkgconf if program pkg-config is
    not found.  These are now only looked for on the path (like
    almost all other programs) so if needed specify a full path to
    the command in PKG_CONFIG, for example in file config.site.
  * C99 function iswblank is required - it was last seen missing ca
    2003 so the workaround has been removed.
  * There are new configure options --with-internal-iswxxxxx,
  - -with-internal-towlower and --with-internal-wcwidth which allows
    the system functions for wide-character classification,
    case-switching and width (wcwidth and wcswidth) to be replaced by
    internal ones.  The first has long been used on macOS, AIX (and
    Windows) but this enables it to be unselected there and selected
    for other platforms (it is the new default on Solaris).  The
    second is new in this version of R and is selected by default on
    macOS and Solaris.  The third has long been the default and
    remains so as it contains customizations for East Asian
    languages.
    System versions of these functions are often minimally
    implemented (sometimes only for ASCII characters) and may not
    cover the full range of Unicode points: for example Solaris (and
    Windows) only cover the Basic Multilingual Plane.
  * Cairo installations without X11 are more likely to be detected by
    configure, when the file-based Cairo graphics devices will be
    available but not X11(type = "cairo").
  * There is a new configure option --with-static-cairo which is the
    default on macOS.  This should be used when only static cairo
    (and where relevant, Pango) libraries are available.
  * Cairo-based graphics devices on platforms without Pango but with
    FreeType/FontConfig will make use of the latter for font
    selection.
  LINK-TIME OPTIMIZATION on a UNIX-ALIKE:
  * Configuring with flag --enable-lto=R now also uses LTO when
    installing the recommended packages.
  * R CMD INSTALL and R CMD SHLIB have a new flag --use-LTO to use
    LTO when compiling code, for use with R configured with
  - -enable-lto=R.  For R configured with --enable-lto, they have
    the new flag --no-use-LTO.
    Packages can opt in or out of LTO compilation _via_ a UseLTO
    field in the DESCRIPTION file.  (As usual this can be overridden
    by the command-line flags.)
  BUILDING R on Windows:
  * for GCC &gt;= 8, FC_LEN_T is defined in config.h and hence character
    lengths are passed from C to Fortran in _inter alia_ BLAS and
    LAPACK calls.
  * There is a new text file src/gnuwin32/README.compilation, which
    outlines how C/Fortran code compilation is organized and
    documents new features:
  * R can be built with Link-Time Optimization with a suitable
    compiler - doing so with GCC 9.2 showed several
    inconsistencies which have been corrected.
  * There is support for cross-compiling the C and Fortran code
    in R and standard packages on suitable (Linux) platforms.
    This is mainly intended to allow developers to test later
    versions of compilers - for example using GCC 9.2 or 10.x has
    detected issues that GCC 8.3 in Rtools40 does not.
  * There is experimental support for cross-building R packages
    with C, C++ and/or Fortran code.
  * The R installer can now be optionally built to support a single
    architecture (only 64-bit or only 32-bit).
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++14 where
    available (which it is on all currently checked platforms): if
    not (as before) C++11 is used if available otherwise C++ is not
    supported.
    Packages which specify C++11 will still be installed using C++11.
    C++14 compilers may give deprecation warnings, most often for
    std::random_shuffle (deprecated in C++14 and removed in C++17).
    Either specify C++11 (see 'Writing R Extensions') or modernize
    the code and if needed specify C++14.  The latter has been
    supported since R 3.4.0 so the package's DESCRIPTION would need
    to include something like
    Depends: R (&gt;= 3.4)
  PACKAGE INSTALLATION on Windows:
  * R CMD INSTALL and R CMD SHLIB make use of their flag --use-LTO
    when the LTO_OPT make macro is set in file etc/${R_ARCH}/Makeconf
    or in a personal/site Makevars file.  (For details see 'Writing R
    Extensions' SS4.5.)
    This provides a valuable check on code consistency.  It does work
    with GCC 8.3 as in Rtools40, but that does not detect everything
    the CRAN checks with current GCC do.
  PACKAGE INSTALLATION on macOS:
  * The default personal library directory on builds with
  - -enable-aqua (including CRAN builds) now differs by CPU type,
    one of
    ~/Library/R/x86_64/x.y/library
    ~/Library/R/arm64/x.y/library
    This uses the CPU type R (and hence the packages) were built for,
    so when a x86_64 build of R is run under Rosetta emulation on an
    arm64 Mac, the first is used.
  UTILITIES:
  * R CMD check can now scan package functions for bogus return
    statements, which were possibly intended as return() calls (wish
    of PR#17180, patch by Sebastian Meyer). This check can be
    activated via the new environment variable
    _R_CHECK_BOGUS_RETURN_, true for --as-cran.
  * R CMD build omits tarballs and binaries of previous builds from
    the top-level package directory.  (PR#17828, patch by Sebastian
    Meyer.)
  * R CMD check now runs sanity checks on the use of LazyData, for
    example that a data directory is present and that
    LazyDataCompression is not specified without LazyData and has a
    documented value.  For packages with large LazyData databases
    without specifying LazyDataCompression, there is a reference to
    the code given in 'Writing R Extensions' SS1.1.6 to test the
    choice of compression (as in all the CRAN packages tested a
    non-default method was preferred).
  * R CMD build removes LazyData and LazyDataCompression fields from
    the DESCRIPTION file of packages without a data directory.
  ENCODING-RELATED CHANGES:
  * The parser now treats \Unnnnnnnn escapes larger than the upper
    limit for Unicode points (\U10FFFF) as an error as they cannot be
    represented by valid UTF-8.
    Where such escapes are used for outputting non-printable
    (including unassigned) characters, 6 hex digits are used (rather
    than 8 with leading zeros).  For clarity, braces are used, for
    example \U{0effff}.
  * The parser now looks for non-ASCII spaces on Solaris (as
    previously on most other OSes).
  * There are warnings (including from the parser) on the use of
    unpaired surrogate Unicode points such as \uD834.  (These cannot
    be converted to valid UTF-8.)
  * Functions nchar(), tolower(), toupper() and chartr() and those
    using regular expressions have more support for inputs with a
    marked Latin-1 encoding.
  * The character-classification functions used (by default) to
    replace the system iswxxxxx functions on Windows, macOS and AIX
    have been updated to Unicode 13.0.0.
    The character-width tables have been updated to include new
    assignments in Unicode 13.0.0.
  * The code for evaluating default (extended) regular expressions
    now uses the same character-classification functions as the rest
    of R (previously they differed on Windows, macOS and AIX).
  * There is a build-time option to replace the system's
    wide-character wctrans C function by tables shipped with R: use
    configure option --with-internal-towlower or (on Windows)
  - DUSE_RI18N_CASE in CFLAGS when building R.  This may be needed
    to allow tolower() and toupper() to work with Unicode characters
    beyond the Basic Multilingual Plane where not supported by system
    functions (e.g. on Solaris where it is the new default).
  * R is more careful when truncating UTF-8 and other multi-byte
    strings that are too long to be printed, passed to the system or
    libraries or placed into an internal buffer.  Truncation will no
    longer produce incomplete multibyte characters.
  DEPRECATED AND DEFUNCT:
  * Function plclust() from the package stats and
    package.dependencies(), pkgDepends(), getDepList(),
    installFoundDepends(), and vignetteDepends() from package tools
    are defunct.
  * Defunct functions checkNEWS() and readNEWS() from package tools
    and CRAN.packages() from utils have been removed.
  * R CMD config CXXCPP is defunct (it was deprecated in R 3.6.2).
  * parallel::detectCores() drops support for Irix (retired in 2013).
  * The LINPACK argument to chol.default(), chol2inv(),
    solve.default() and svd() has been defunct since R 3.1.0.  It was
    silently ignored up to R 4.0.3 but now gives an error.
  * Subsetting/indexing, such as ddd[*] or ddd$x on a DOTSXP
    (dot-dot-dot) object ddd has been disabled; it worked by accident
    only and was undocumented.
  BUG FIXES:
  * Many more C-level allocations (mainly by malloc and strdup) are
    checked for success with suitable alternative actions.
  * Bug fix for replayPlot(); this was turning off graphics engine
    display list recording if a recorded plot was replayed in the
    same session.  The impact of the bug became visible if resize the
    device after replay OR if attempted another savePlot() after
    replay (empty display list means empty screen on resize or empty
    saved plot).
  * R CMD check etc now warn when a package exports non-existing S4
    classes or methods, also in case of no "methods" presence.
    (Reported by Alex Bertram; reproducible example and patch by
    Sebastian Meyer in PR#16662.)
  * boxplot() now also accepts calls for labels such as ylab, the
    same as plot().  (Reported by Marius Hofert.)
  * The help page for xtabs() now correctly states that addNA is
    setting na.action = na.pass among others.  (Reported as PR#17770
    by Thomas Soeiro.)
  * The R CMD check &lt;pkg&gt; gives a longer and more comprehensible
    message when DESCRIPTION misses dependencies, e.g., in Imports:.
    (Thanks to the contributors of PR#17179.)
  * update.default() now calls the generic update() on the formula to
    work correctly for models with extended formulas.  (As reported
    and suggested by Neal Fultz in PR#17865.)
  * The horizontal position of leaves in a dendrogram is now correct
    also with center = FALSE.  (PR#14938, patch from Sebastian
    Meyer.)
  * all.equal.POSIXt() no longer warns about and subsequently ignores
    inconsistent "tzone" attributes, but describes the difference in
    its return value (PR#17277).  This check can be disabled _via_
    the new argument check.tzone = FALSE as suggested by Sebastian
    Meyer.
  * as.POSIXct() now populates the "tzone" attribute from its tz
    argument when x is a logical vector consisting entirely of NA
    values.
  * x[[2^31]] &lt;- v now works.  (Thanks to the report and patch by
    Suharto Anggono in PR#17330.)
  * In log-scale graphics, axis() ticks and label positions are now
    computed more carefully and symmetrically in their range,
    typically providing _more_ ticks, fulfilling wishes in PR#17936.
    The change really corresponds to an improved axisTicks() (package
    grDevices), potentially influencing grid and lattice, for
    example.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now correct to at
    least five digits where it was catastrophically wrong,
    previously.
  * sum(df) and similar "Summary"- and "Math"-group member functions
    now work for data frames df with logical columns, notably also of
    zero rows.  (Reported to R-devel by Martin "b706".)
  * unsplit() had trouble with tibbles due to unsound use of rep(NA,
    len)-indexing, which should use NA_integer_ (Reported to R-devel
    by Mario Annau.)
  * pnorm(x, log.p = TRUE) underflows to -Inf slightly later.
  * show(&lt;hidden S4 generic&gt;) prints better and without quotes for
    non-hidden S4 generics.
  * read.table() and relatives treated an "NA" column name as missing
    when check.names = FALSE PR#18007.
  * Parsing strings containing UTF-16 surrogate pairs such as
    "\uD834\uDD1E" works better on some (uncommon) platforms.
    sprintf("%X", utf8ToInt("\uD834\uDD1E")) should now give "1D11E"
    on all platforms.
  * identical(x,y) is no longer true for differing DOTSXP objects,
    fixing PR#18032.
  * str() now works correctly for DOTSXP and related exotics, even
    when these are doomed.
    Additionally, it no longer fails for lists with a class and
    "irregular" method definitions such that e.g. lapply(*) will
    necessarily fail, as currently for different igraph objects.
  * Too long lines in environment files (e.g. Renviron) no longer
    crash R. This limit has been increased to 100,000 bytes.
    (PR#18001.)
  * There is a further workaround for FreeType giving incorrect
    italic font faces with cairo-based graphics devices on macOS.
  * add_datalist(*, force = TRUE) (from package tools) now actually
    updates an existing data/datalist file for new content.  (Thanks
    to a report and patch by Sebastian Meyer in PR#18048.)
  * cut.Date() and cut.POSIXt() could produce an empty last interval
    for breaks = "months" or breaks = "years".  (Reported as PR#18053
    by Christopher Carbone.)
  * Detection of the encoding of 'regular' macOS locales such as
    en_US (which is UTF-8) had been broken by a macOS change:
    fortunately these are now rarely used with en_US.UTF-8 being
    preferred.
  * sub() and gsub(pattern, repl, x, *) now keep attributes of x such
    as names() also when pattern is NA (PR#18079).
  * Time differences ("difftime" objects) get a replacement and a
    rep() method to keep "units" consistent.  (Thanks to a report and
    patch by Nicolas Bennett in PR#18066.)
  * The \RdOpts macro, setting defaults for \Sexpr options in an Rd
    file, had been ineffective since R 2.12.0: it now works again.
    (Thanks to a report and patch by Sebastian Meyer in PR#18073.)
  * mclapply and pvec no longer accidentally terminate parallel
    processes started before by mcparallel or related calls in
    package parallel (PR#18078).
  * grep and other functions for evaluating (extended) regular
    expressions handle in Unicode also strings not explicitly flagged
    UTF-8, but flagged native when running in UTF-8 locale.
  * Fixed a crash in fifo implementation on Windows (PR#18031).
  * Binary mode in fifo on Windows is now properly detected from
    argument open (PR#15600, PR#18031).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1622808000">- The line %{__install} -m 755 -d %{_infodir}
  no longer works in TW or Factory.
  But without that line it works everywhere. So this instruction
  was commented out of the spec file.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1628596800">- CHANGES IN R 4.1.1:
  NEW FEATURES:
  * require(pkg, quietly = TRUE) is quieter and in particular does
    not warn if the package is not found.
  DEPRECATED AND DEFUNCT:
  * Use of ftp:// URIs should be regarded as deprecated, with
    on-going support confined to method = "libcurl" and not routinely
    tested.  (Nowadays no major browser supports them.)
  * The non-default method = "internal" is deprecated for http:// and
    ftp:// URIs for both download.file and url.
  * On Windows, method = "wininet" is deprecated for http://,
    https:// and ftp:// URIs for both download.file and url.  (A
    warning is only given for ftp://.)
    For ftp:// URIs the default method is now "libcurl" if available
    (which it is on CRAN builds).
    method = "wininet" remains the default for http:// and https://
    URIs but if libcurl is available, using method = "libcurl" is
    preferred.
  INSTALLATION:
  * make check now works also without a LaTeX installation.  (Thanks
    to Sebastian Meyer's PR#18103.)
  BUG FIXES:
  * make check-devel works again in an R build configured with
  - -without-recommended-packages.
  * qnbinom(p, size, mu) for large size/mu is correct now in a range
    of cases (PR#18095); similarly for the (size, prob)
    parametrization of the negative binomial.  Also qpois() and
    qbinom() are better and or faster for extreme cases.  The
    underlying C code has been modularized and is common to all four
    cases of discrete distributions.
  * gap.axis is now part of the axis() arguments which are passed
    from bxp(), and hence boxplot().  (Thanks to Martin Smith's
    report and suggestions in PR#18109.)
  * .First and .Last can again be set from the site profile.
  * seq.int(from, to, *) and seq.default(..) now work better in large
    range cases where from-to is infinite where the two boundaries
    are finite.
  * all.equal(x,y) now returns TRUE correctly also when several
    entries of abs(x) and abs(y) are close to .Machine$double.xmax,
    the largest finite numeric.
  * model.frame() now clears the object bit when removing the class
    attribute of a value via na.action (PR#18100).
  * charClass() now works with multi-character strings on Windows
    (PR#18104, fixed by Bill Dunlap).
  * encodeString() on Solaris now works again in Latin-1 encoding on
    characters represented differently in UTF-8.  Support for
    surrogate pairs on Solaris has been improved.
  * file.show() on Windows now works with non-ASCII path names
    representable in the current native encoding (PR#18132).
  * Embedded R on Windows can now find R home directory via the
    registry even when installed only for the current user
    (PR#18135).
  * pretty(x) with finite x now returns finite values also in the
    case where the extreme x values are close in size to the maximal
    representable number .Machine$double.xmax.
    Also, it's been tweaked for very small ranges and when a boundary
    is close (or equal) to zero; e.g., pretty(c(0,1e-317)) no longer
    has negative numbers, currently still warning about a very small
    range, and pretty(2^-(1024 - 2^-1/(c(24,10)))) is more accurate.
  * The error message for not finding vignette files when weaving has
    correct file sizes now. (Thanks to Sebastian Meyer's PR#18154.)
  * dnbinom(20, &lt;large&gt;, 1) now correctly gives 0, and similar cases
    are more accurate with underflow precaution.  (Reported by Francisco Vera Alcivar in PR#18072.)</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635163200">- repaired https://bugzilla.suse.com/show_bug.cgi?id=1191380
  (rpmacros now go to rpmmacrodir)
- minor clean-ups in spec file</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635768000">- CHANGES IN R 4.1.2:
  C-LEVEL FACILITIES:
  * The workaround in headers R.h and Rmath.h (using namespace std;)
    for the Oracle Developer Studio compiler is no longer needed now
    C++11 is required so has been removed.  A couple more usages of
    log() (which should have been std::log()) with an int argument
    are reported on Solaris.
  * The undocumented limit of 4095 bytes on messages from the
    S-compatibility macros PROBLEM and MESSAGE is now documented and
    longer messages will be silently truncated rather than
    potentially causing segfaults.
  * If the R_NO_SEGV_HANDLER environment variable is non-empty, the
    signal handler for SEGV/ILL/BUS signals (which offers recovery
    user interface) is not set. This allows more reliable debugging
    of crashes that involve the console.
  DEPRECATED AND DEFUNCT:
  * The legacy S-compatibility macros PROBLEM, MESSAGE, ERROR, WARN,
    WARNING, RECOVER, ... are deprecated and will be hidden in R
    4.2.0. R's native interface of Rf_error and Rf_warning has long
    been preferred.
  BUG FIXES:
  * .mapply(F, dots, .) no longer segfaults when dots is not a list
    and uses match.fun(F) as always documented; reported by Andrew
    Simmons in PR#18164.
  * hist(&lt;Date&gt;, ...) and hist(&lt;POSIXt&gt;, ...)  no longer pass
    arguments for rect() (such as col and density) to axis().
    (Thanks to Sebastian Meyer's PR#18171.)
  * \Sexpr{ch} now preserves Encoding(ch). (Thanks to report and
    patch by Jeroen Ooms in PR#18152.)
  * Setting the RNG to "Marsaglia-Multicarry" e.g., by RNGkind(), now
    warns in more places, thanks to Andr'e Gillibert's report and
    patch in PR#18168.
  * gray(numeric(), alpha=1/2) no longer segfaults, fixing PR#18183,
    reported by Till Krenz.
  * Fixed dnbinom(x, size=&lt;very_small&gt;, .., log=TRUE) regression,
    reported by Martin Morgan.
  * as.Date.POSIXlt(x) now keeps names(x), thanks to Davis Vaughan's
    report and patch in PR#18188.
  * model.response() now strips an "AsIs" class typically, thanks to
    Duncan Murdoch's report and other discussants in PR#18190.
  * try() is considerably faster in case of an error and long call,
    as e.g., from some do.call().  Thanks to Alexander Kaever's
    suggestion posted to R-devel.
  * qqline(y = &lt;object&gt;) such as y=I(.), now works, see also
    PR#18190.
  * Non-integer mgp par() settings are now handled correctly in
    axis() and mtext(), thanks to Mikael Jagan and Duncan Murdoch's
    report and suggestion in PR#18194.
  * formatC(x) returns length zero character() now, rather than ""
    when x is of length zero, as documented, thanks to Davis
    Vaughan's post to R-devel.
  * removeSource(fn) now retains (other) attributes(fn).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1647000000">- CHANGES IN R 4.1.3:
  NEW FEATURES:
  * The default version of Bioconductor has been changed to 3.14.
    (This is used by setRepositories and the menus in GUIs.)
  UTILITIES:
  * R CMD check --as-cran has a workaround for a bug in versions of
    file up to at least 5.41 which mis-identify DBF files last
    changed in 2022 as executables.
  C-LEVEL FACILITIES:
  * The legacy S-compatibility macros SINGLE_* in R_ext/Constants.h
    (included by R.h) are deprecated and will be removed in R 4.2.0.
  BUG FIXES:
  * Initialization of self-starting nls() models with initialization
    functions following the pre-R-4.1.0 API (without the ...
    argument) works again for now, with a deprecation warning.
  * Fixed quoting of ~autodetect~ in Java setting defaults to avoid
    inadvertent user lookup due to leading ~, reported in PR#18231 by
    Harold Gutch.
  * substr(., start, stop) &lt;- v now treats _negative_ stop values
    correctly.  Reported with a patch in PR#18228 by Brodie Gaslam.
  * Subscripting an array x without dimnames by a
    length(dim(x))-column character matrix gave "random" non-sense,
    now an error; reported in PR#18244 by Mikael Jagan.
  * ...names() now matches names(list(...)) closely, fixing PR#18247.
  * all.equal(*, scale = s) now works as intended when length(s) &gt; 1,
    partly thanks to Michael Chirico's PR#18272.
  * print(x) for long vectors x now also works for named atomic
    vectors or lists and prints the correct number when reaching the
    getOption("max.print") limit; partly thanks to a report and
    proposal by Hugh Parsonage to the R-devel list.
  * all.equal(&lt;selfStart&gt;, *) no longer signals a deprecation
    warning.
  * reformulate(*, response=r) gives a helpful error message now when
    length(r) &gt; 1, thanks to Bill Dunlap's PR#18281.
  * Modifying globalCallingHandlers inside withCallingHandlers() now
    works or fails correctly, thanks to Henrik Bengtsson's PR#18257.
  * hist(&lt;Date&gt;, breaks = "days") and hist(&lt;POSIXt&gt;, breaks = "secs")
    no longer fail for inputs of length 1.
  * qbeta(.001, .9, .009) and similar cases now converge correctly
    thanks to Ben Bolker's report in PR#17746.
  * window(x, start, end) no longer wrongly signals "'start' cannot
    be after 'end'", fixing PR#17527 and PR#18291.
  * data() now checks that its (rarely used) list argument is a
    character vector - a couple of packages passed other types and
    gave incorrect results.
  * which() now checks its arr.ind argument is TRUE rather coercing
    to logical and taking the first element - which gave incorrect
    results in package code.
  * model.weights() and model.offset() more carefully extract their
    model components, thanks to Ben Bolker and Tim Taylor's R-devel
    post.
  * list.files(recursive = TRUE) now shows all broken symlinks
    (previously, some of them may have been omitted, PR#18296).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1650628800">- CHANGES IN R 4.2.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * The formula method of aggregate() now matches the generic in
    naming its first argument x (resolving PR#18299 by Thomas
    Soeiro).
    This means that calling aggregate() with a formula as a named
    first argument requires name formula in earlier versions of R and
    name x now, so portable code should not name the argument (code
    in many packages did).
  * Calling &amp;&amp; or || with either argument of length greater than one
    now gives a warning (which it is intended will become an error).
  * Calling if() or while() with a condition of length greater than
    one gives an error rather than a warning.  Consequently,
    environment variable _R_CHECK_LENGTH_1_CONDITION_ no longer has
    any effect.
  * Windows users should consult the WINDOWS section below for some
    profound changes including
  * Support for 32-bit builds has been dropped.
  * UTF-8 locales are used where available.
  * The default locations for the R installation and personal
    library folder have been changed.
    Thanks to Tomas Kalibera for months of work on the Windows port
    for this release.
  NEW FEATURES:
  * matrix(x, n, m) now warns in more cases where length(x) differs
    from n * m, as suggested by Abby Spurdle and Wolfgang Huber in
    Feb 2021 on the R-devel mailing list.
    This warning can be turned into an error by setting environment
    variable _R_CHECK_MATRIX_DATA_ to TRUE: R CMD check --as-cran
    does so unless it is already set.
  * Function file_test() in package utils gains tests for symlinks,
    readability and writability.
  * capabilities("libxml") is now false.
    The description of capabilities("http/ftp") now reflects that it
    refers to the default method, no longer the internal one.
  * simplify2array() gains an except argument for controlling the
    exceptions used by sapply().
  * Environment variables R_LIBS_USER and R_LIBS_SITE are both now
    set to the R system default if unset or empty, and can be set to
    NULL to indicate an empty list of user or site library
    directories.
  * The warning for axis()(-like) calls in cases of relatively small
    ranges (typically in log-scale situations) is slightly improved
    _and_ suppressed from explicit calls to .axisPars() as has always
    been the intention.
  * The contrasts setter function `contrasts&lt;-` gains an explicit
    default how.many = NULL rather than just using missing(how.many).
  * grid.pretty() gains a new optional argument n = 5.
  * There is a new function .pretty() with option bounds as a
    technical-utility version of pretty().  It and pretty() gain a
    new argument f.min with a better than back-compatible default.
  * Function grDevices::axisTicks() and related functions such as
    graphics::axis() work better, notably for the log scale; partly
    because of the pretty() improvements, but also because care is
    taken e.g., when ylim is finite but diff(ylim) is infinite.
  * nclass.FD() gains a digits option.
  * The R Mathlib internal C function bd0() (called indirectly from a
    dozen probability density and distribution functions such as
    dpois(), dbinom(), dgamma(), pgamma() _etc_) has been
    complemented by a more sophisticated and (mostly) more accurate C
    function ebd0(), currently called only by internal dpois_raw()
    improving accuracy for R level dpois() and potentially others
    calling it such as dnbinom(), dgamma() or pgamma().  (Thanks to
    Morten Welinder's PR#15628.)
  * write.ftable() gains sep = " " argument as suggested by Thomas
    Soeiro.
  * The names of the locale categories supported by R's
    Sys.getlocale() and Sys.setlocale() are now provided by variable
    .LC.categories in the base namespace.
  * The Date and POSIXt methods for hist() and the histogram method
    for plot() now also use the new default col = "lightgray" in
    consistency with the corresponding change to hist()'s default for
    R 4.0.0.
  * hist.default() gains new fuzz argument, and the histogram plot
    method no longer uses fractional axis ticks when displaying
    counts ("Frequency").
  * mapply() and hence Map() now also obey the "max-or-0-if-any"
    recycling rule, such that, e.g., Map(`+`, 1:3, 1[0]) is valid
    now.
  * as.character(&lt;obj&gt;) for "hexmode" or "octmode" objects now
    fulfils the important basic rule as.character(x)[j] ===
    as.character(x[j]).
  * The set utility functions, notably intersect() have been tweaked
    to be more consistent and symmetric in their two set arguments,
    also preserving a common mode.
  * substr(ch, start,end) &lt;- new now e.g., preserves names(ch); ditto
    for substring(), thanks to a patch from Brodie Gaslam.
  * plot(&lt;lm&gt;) gains a extend.ylim.f argument, in partial response to
    PR#15285; further PR#17784 is fixed thanks to several
    contributors and a patch by Elin Waring.  The Cook's dist
    contours get customizable via cook.col and cook.lty with a
    different default color and their legend is nicer by default and
    customizable via cook.legendChanges.
  * Attempting to subset an object that is not subsettable now
    signals an error of class notSubsettableError. The
    non-subsettable object is contained in the object field of the
    error condition.
  * Subscript-out-of-bounds errors are now signaled as errors of
    class subscriptOutOfBoundsError.
  * Stack-overflow errors are now signaled as errors inheriting from
    class stackOverflowError. See ?stackOverflowError for more
    details.
  * New partly experimental Sys.setLanguage() utility, solving the
    main problem of PR#18055.
  * gettext() and gettextf() get a new option trim = TRUE which when
    set to false allows translations for strings such as "Execution
    halted\n" typical for C code.
  * An experimental implementation of hash tables is now available.
    See ?hashtab for more details.
  * identical() gains a extptr.as.ref argument for requesting that
    external pointer objects be compared as reference objects.
  * reorder() gets an argument decreasing which it passes to sort()
    for level creation; based on the wish and patch by Thomas Soeiro
    in PR#18243.
  * as.vector() gains a data.frame method which returns a simple
    named list, also clearing a long standing 'FIXME' to enable
    as.vector(&lt;data.frame&gt;, mode="list").  This breaks code relying
    on as.vector(&lt;data.frame&gt;) to return the unchanged data frame.
  * legend() is now vectorized for arguments cex, x.intersp, and
    text.width.  The latter can now also be specified as a vector
    (one element for each column of the legend) or as NA for
    computing a proper column wise maximum value of strwidth(legend).
    The argument y.intersp can be specified as a vector with one
    entry for each row of the legend.
    legend() also gains new arguments title.cex and title.font.
    Thanks to Swetlana Herbrandt.
  * Deparsing no longer remaps attribute names dim, dimnames, levels,
    names and tsp to historical S-compatible names (which structure()
    maps back).
  * sample() and sample.int() have additional sanity checks on their
    size and n arguments.
    all.equal.numeric() gains a sanity check on its tolerance
    argument - calling all.equal(a, b, c) for three numeric vectors
    is a surprisingly common error.
    mean(na.rm =), rank(na.last =), barplot(legend.text =),
    boxplot(), contour(drawlabels =), polygon(border =) and
    methods::is(class2 =) have more robust sanity checks on their
    arguments.
    R CMD Rd2pdf (used by R CMD check) has a more robust sanity check
    on the format of \alias{} commands.
  * psigamma(x, deriv) for negative x now also works for deriv = 4
    and 5; their underlying C level dpsifn() is documented in
    'Writing R Extensions'.
  * The HTML help system now uses HTML5 (wish of PR#18149).
  * ks.test() now provides exact p-values also with ties and MC
    p-values in the two-sample (Smirnov) case.  By Torsten Hothorn.
  * ks.test() gains a formula interface, with y ~ 1 for the
    one-sample (Kolmogorov) test and y ~ group for the two-sample
    (Smirnov) test.  Contributed by Torsten Hothorn.
  * The return value from ks.test() now has class c("ks.test",
    "htest") - packages using try() need to take care to use
    inherits() and not == on the class.
  * New functions psmirnov(), qsmirnov() and rsmirnov() in package
    stats implementing the asymptotic and exact distributions of the
    two-sample Smirnov statistic.
  * iconv() now allows sub = "c99" to use C99-style escapes for UTF-8
    inputs which cannot be converted to encoding to.
  * In a forward pipe |&gt; expression it is now possible to use a named
    argument with the placeholder _ in the rhs call to specify where
    the lhs is to be inserted.  The placeholder can only appear once
    on the rhs.
  * The included LAPACK sources have been updated to version 3.10.0,
    except for the four Fortran 77 routines which 3.10.0 has
    re-implemented in Fortran 90 (where the older versions have been
    retained as the R build process does not support Fortran 90).
  * path.expand() and most other uses of tilde expansion now warn if
    a path would be too long if expanded.  (An exception is
    file.exists(), which silently returns false.)
  * trunc(&lt;Date&gt;, *) now supports units = "months" or "years" for
    consistency with the POSIXt method, thanks to Dirk Eddelbuettel's
    proposal in PR#18099.
  * list2DF() now checks that its arguments are of the same length,
    rather than use recycling.
  * The HTML help system has several new features: LaTeX-like math
    can be typeset using either KaTeX or MathJax, usage and example
    code is highlighted using Prism, and for dynamic help the output
    of examples and demos can be shown within the browser if the
    knitr package is installed. These features can be disabled by
    setting the environment variable _R_HELP_ENABLE_ENHANCED_HTML_ to
    a false value.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 15
    and so packages that provide graphics devices should be
    reinstalled.
  * The grid package now allows the user to specify a "vector" of
    pattern fills.  The fill argument to gpar() accepts a list of
    gradients and/or patterns and the functions linearGradient(),
    radialGradient(), and pattern() have a new group argument.
    Points grobs (data symbols) can now also have a pattern fill.
    The grobCoords() function now returns a more informative and
    complex result.
  * The grid package has new functions for drawing isolated groups:
    grid.group(), grid.define(), and grid.use().  These functions add
    compositing operators and affine transformations to R's graphics
    capabilities.
    The grid package also has new functions for stroking and filling
    paths: grid.stroke(), grid.fill(), and grid.fillStroke().
    A new function as.path() allows the user to specify the fill rule
    for a path that is to be used for clipping, stroking, or filling;
    available options are "winding" and "evenodd".  A new function
    as.mask() allows the user to specify the type of a mask;
    available options are "alpha" and "luminance".
    These new features are only supported so far (at most) on the
    Cairo-based graphics devices and on the pdf() device.
  * dev.capabilities() reports on device support for the new
    features.
  * par() now warns about unnamed non-character arguments to prevent
    misuse such as {usr &lt;- par("usr"); par(usr)}.
  INSTALLATION:
  * Facilities for accessing ftp:// sites are no longer tested
    (except _pro tem_ for curlGetHeaders()) as modern browsers have
    removed support.
  * R can now be built with DEFS = -DSTRICT_R_HEADERS .
  PACKAGE INSTALLATION:
  * R CMD INSTALL no longer tangles vignettes. This completes an R
    CMD build change in R 3.0.0 and affects packages built before R
    3.0.2. Such packages should be re-made with R CMD build to have
    the tangled R code of vignettes shipped with the tarball.
  * USE_FC_LEN_T will become the default: this uses the correct
    prototypes for Fortran BLAS/LAPACK routines called from C/C++,
    and requires adjustment of most such calls - see 'Writing R
    Extensions' SS6.6.2.  (This has been supported since R 3.6.2.)
  * Package installation speed for packages installed with
    keep.source has been improved. This resolve the issue reported by
    Ofek Shilon in PR#18236.
  UTILITIES:
  * R CMD check can optionally report files/directories left behind
    in home, /tmp (even though TMPDIR is set) and other directories.
    See the "R Internals" manual for details.
  * R CMD check now reports byte-compilation errors during
    installation.  These are not usually fatal but may result in
    parts of the package not being byte-compiled.
  * _R_CHECK_DEPENDS_ONLY_ can be applied selectively to examples,
    tests and/or vignettes in R CMD check: see the "R Internals"
    manual.
  * _R_CHECK_SRC_MINUS_W_IMPLICIT_ now defaults to true: recent
    versions of Apple clang on macOS have made implicit function
    declarations in C into a compilation error.
  * R CMD check --as-cran makes use of the environment variable
    AUTORECONF.  See the "R Internals" manual SS8 for further details.
  * R CMD check --use-valgrind also uses valgrind when re-building
    vignettes as some non-Sweave vignettes unhelpfully comment out
    all their code when R CMD check runs vignettes.
  * Errors in re-building vignettes (unless there are LaTeX errors)
    are reported by R CMD check as ERROR rather than WARNING when
    running vignettes has been skipped (as it frequently is in CRAN
    checks and by --as-cran).
  * R CMD Rd2pdf gains a --quiet option that is used by R CMD build
    when building the PDF package manual.
  * R CMD Rd2pdf now always runs LaTeX in batch mode, consistent with
    Texinfo &gt;= 6.7. The --batch option is ignored.
  * R CMD build and R CMD check now include the Rd file name and line
    numbers in the error message of an \Sexpr evaluation failure.
  * For packages using the \doi Rd macro (now an install-time \Sexpr)
    but no other dynamic Rd content, R CMD build now produces a
    smaller tarball and is considerably faster - skipping temporary
    package installation.
  C-LEVEL FACILITIES:
  * The non-API header R_ext/R-ftp-http.h is no longer provided, as
    the entry points it covered are now all defunct.
  * A number of non-API declarations and macro definitions have been
    moved from the installed header Rinternals.h to the internal
    header Defn.h. Packages that only use entry points and
    definitions documented to be part of the API as specified in
    'Writing R Extensions' SS6 should not be affected.
  * The macro USE_RINTERNALS no longer has any effect when compiling
    package code.  Packages which also use R_NO_REMAP will need to
    ensure that the remapped names are used for calls to API
    functions that were formerly also made available as macros.
  * The deprecated legacy S-compatibility macros PROBLEM, MESSAGE,
    ERROR, WARN, WARNING, RECOVER, ... are no longer defined in
    R_exts/RS.h (included by R.h).  Replace these by calls to
    Rf_error and Rf_warning (defined in header R_ext/Error.h included
    by R.h).
    Header R_ext/RS.h no longer includes R_ext/Error.h.
  * Header R_ext/Constants.h (included by R.h) when included from C++
    now includes the C++ header cfloat rather than the C header
    float.h (now possible as C++11 is required).
  * The legacy S-compatibility macros DOUBLE_* in R_ext/Constants.h
    (included by R.h) are deprecated.
  * The deprecated S-compatibility macros SINGLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * R_Calloc, R_Free and R_Realloc are preferred to their unprefixed
    forms and error messages now use the prefix. These forms were
    introduced in R 3.4.0 and are available even when
    STRICT_R_HEADERS is defined.
  * rmultinom has been documented in 'Writing R Extensions' SS6 so is
    now part of the R API.
  * Similarly, Rtanpi, called from R level tanpi() is now part of the
    R API.
  * The long-deprecated, undocumented and non-API entry point call_R
    is no longer declared in R_ext/RS.h (included by R.h).
  * The header S.h which has been unsupported since Jan 2016 has been
    removed.  Use R.h instead.
  DEPRECATED AND DEFUNCT:
  * The (non-default and deprecated) method = "internal" for
    download.file() and url() no longer supports http:// nor ftp://
    URIs.  (It is used only for file:// URIs.)
    On Windows, download.file(method = "wininet") no longer supports
    ftp:// URIs.  (It is no longer the default method, which is
    "libcurl" and does.)
    On Windows, the deprecated method = "wininet" now gives a warning
    for http:// and https:// URIs for both download.file() and url().
    (It is no longer the default method.)
  * On Windows, the command-line option --max-mem-size and
    environment variable R_MAX_MEM_SIZE are defunct.  The memory
    allocation limit was important for 32-bit builds, but these are
    no longer supported.
  * default.stringsAsFactors() is now formally deprecated, where that
    was only mentioned on its regular help page, previously.  So it
    now gives a warning if called.
  * unix.time() is defunct now; it had been deprecated since R 3.4.0.
  BUG FIXES:
  * Setting digits = 0 in format(), print.default() (and hence
    typically print()) or options() is again invalid.  Its behaviour
    was platform-dependent, and it is unclear what "zero significant
    digits" should mean (PR#18098).
  * Messages from C code in the cairo section of package grDevices
    are now also offered for translation, thanks to Michael Chirico's
    PR#18123.
  * mean(x) with finite x now is finite also without "long.double"
    capability.
  * R CMD Rd2pdf no longer leaves an empty build directory behind
    when it aborts due to an already existing output file.  (Thanks
    to Sebastian Meyer's PR#18141.)
  * density(x, weights = w, na.rm = TRUE) when anyNA(x) is true, now
    removes weights "in parallel" to x, fixing PR#18151, reported by
    Matthias Gondan.  Additionally, it gets a subdensity option.
  * Conversion of \Sexpr[]{&lt;expR&gt;} to LaTeX or HTML no longer
    produces long blocks of empty lines when &lt;expR&gt; itself contains
    several lines all producing empty output.  Thanks to a report and
    patch by Ivan Krylov posted to R-devel.
  * R CMD build no longer fails if a package vignette uses child
    documents and inst/doc exists.  (Thanks to Sebastian Meyer's
    PR#18156.)
  * When an R documentation ('help' source) file man/foo.Rd in a
    package has \donttest{..} examples with a syntax error, it is now
    signalled as ERROR and with correct line numbers relating to the
  * -Ex.R file, thanks to Duncan Murdoch and Sebastian Meyer's
    reports and patch proposals in PR#17501.
  * Improved determination of the correct translation domain in
    non-base packages, addressing the combination of PR#18092 and
    PR#17998 (#c6) with reports and _augmented_ patch #2904 by
    Suharto Anggono.
    Note that "R-base" is no longer the default domain e.g., for
    top-level calls to gettext(); rather translation needs explicit
    domain = * specification in such cases.
  * identical(attrib.as.set=FALSE) now works correctly with data
    frames with default row names (Thanks to Charlie Gao's PR#18179).
  * txtProgressBar() now enforces a non-zero width for argument char,
    without which no progress can be visible.
  * dimnames(table(d)) is more consistent in the case where d is a
    list with a single component, thanks to Thomas Soeiro's report to
    R-devel.
    Further, table(d1, d2) now gives an error when d1 and d2 are data
    frames as suggested by Thomas in PR#18224.
  * Fix for drawing semi-transparent lines and fills on the native
    Windows graphics device (PR#18219 and PR#16694).  Thanks to Nick
    Ray for helpful diagnosis on Bugzilla.
  * The deparser now wraps sub-expressions such as if(A) ..  with
    parentheses when needed; thanks to Duncan Murdoch's PR#18232 and
    Lionel Henry's patches there.
  * remove.packages() no longer tries to uninstall Priority: base
    packages, thanks to a report and suggestions by Colin Fay in
    PR#18227.
  * win.metafile() now has xpinch and ypinch arguments so that the
    user can override Windows' (potentially wrong) guess at device
    dimensions.
  * x[i] and x[[i]] for non-integer i should now behave in all cases
    as always documented: the index used is equivalent to
    as.integer(i) unless that would overflow where trunc(i) is used
    instead; thanks to Suharto Anggono's report and patch proposals
    in PR#17977.
  * asOneSidedFormula() now associates the resulting formula with the
    global environment rather than the evaluation environment created
    for the call.
  * &lt;bibentry&gt;$name now matches the field name case-insensitively,
    consistent with bibentry() creation and the replacement method.
  * cbind() failed to detect some length mismatches with a mixture of
    time-series and non-time-series inputs.
  * The default LaTeX style file Sweave.sty used by the RweaveLatex
    driver no longer loads the obsolete ae package; thanks to a
    report by Thomas Soeiro in PR#18271.  Furthermore, it now skips
    \usepackage[T1]{fontenc} for engines other than pdfTeX (if
    detected) or if the new [nofontenc] option is used.
  * smooth.spline() now stores its logical cv argument more safely,
    fixing a rare bug when printing, and also stores n.
  * smooth.spline(x,y,*) now computes the cv.crit statistic
    correctly, also when is.unsorted(x), fixing PR#18294.
  * The data.frame method of rbind() now warns when binding
    not-wholly-recycling vectors, by analogy to the default method
    (for matrices).
  * setAs() finds the correct class for name to when multiple
    packages define a class with that name. Thanks to Gabor Csardi
    for the report.
  * Fix for detaching a package when two classes of the same name are
    present in method signatures for the same generic. Thanks to
    Gabor Csardi for the report.
  * match.arg("", c("", "a", "B")) gives a better error message, in
    part from PR#17959, thanks to Elin Waring.
  * R CMD Sweave --clean no longer removes pre-existing files or
    subdirectories (PR#18242).
  * The quartz() device no longer splits polylines into subpaths.
    That has caused narrowly-spaced lines with many points to always
    look solid even when dashed line type was used due to dash phase
    restarts.
  * Deparsing constructs such as quote(1 + `!`(2) + 3) works again as
    before R 3.5.0, thanks to the report and patch in PR#18284 by
    Suharto Anggono.
  * as.list(f) for a factor f now keeps names(f), fixing PR#18309.
  * qbeta(.001, .9, .009) and analogous qf() calls now return a
    correct value instead of NaN or wrongly 1, all with a warning;
    thanks to the report by Ludger Goeminne in PR#18302.
  * plot.lm() failed to produce the plot of residuals vs.  factor
    levels (i.e., which=5 when leverages are constant) for models
    with character predictors (PR#17840).
  * interaction.plot(..., xtick = TRUE) misplaced the x-axis line
    (PR#18305).
  * Not strictly fixing a bug, format()ing and print()ing of
    non-finite Date and POSIXt values NaN and +/-Inf no longer show
    as NA but the respective string, e.g., Inf, for consistency with
    numeric vector's behaviour, fulfilling the wish of PR#18308.
  * R CMD check no longer runs test scripts generated from
    corresponding .Rin files twice and now signals an ERROR if
    processing an .Rin script fails.
  * tools::Rd2txt() used for plain-text help pages now renders \hrefs
    (if tools::Rd2txt_options(showURLs = TRUE)) and \urls with
    percent-encoding and standards-compliant delimiting style (angle
    brackets and no URL: prefix).  \email is now rendered with a
    mailto: prefix.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1655985600">- CHANGES IN R 4.2.1:
  NEW FEATURES:
  * New function utils::findCRANmirror() to find out if a CRAN mirror
    has been selected, otherwise fallback to the main site.  This
    behaves in the same way as tools::CRAN_package_db() and is
    intended for packages wishing to access CRAN for purposes other
    than installing packages.
    The need for this was shown by a day when the main CRAN website
    was offline and a dozen or so packages which had its URL
    hardcoded failed their checks.
  INSTALLATION on a UNIX-ALIKE:
  * The libraries searched for by --with-blas (without a value) now
    include BLIS (after OpenBLAS but before ATLAS).  And on macOS,
    the Accelerate framework (after ATLAS).  (This is patterned after
    the AX_BLAS macro from the Autoconf Archive.)
  * The included LAPACK sources have been updated to 3.10.1.
  UTILITIES:
  * The (full path to) the command tidy to be used for HTML
    validation can be set by environment variable R_TIDYCMD.
  * Setting environment variable _R_CHECK_RD_VALIDATE_RD2HTML_ to a
    false value will override R CMD check --as-cran and turn off HTML
    validation.  This provides a way to circumvent a problematic
    tidy.
    The 2006 version that ships with macOS is always skipped.
  C-LEVEL FACILITIES:
  * The undocumented legacy declarations of Sint, Sfloat, SINT_MAX
    and SINT_MIN in header R.h are deprecated.
  BUG FIXES:
  * fisher.test(d) no longer segfaults for "large" d; fixing PR#18336
    by preventing/detecting an integer overflow reliably.
  * tar(., files=*) now produces correctly the warning about invalid
    uid or gid of files, fixing PR#18344, reported by Martin Morgan.
  * tk_choose.files() with multi = FALSE misbehaved on paths
    containing spaces (PR#18334) (regression introduced in R 4.0.0).
  * sort(x, partial = ind, *) now works correctly notably for the
    non-default na.last = FALSE or TRUE, fixing PR#18335 reported by
    James Edwards.
  * Environment variable _R_CHECK_XREFS_REPOSITORIES_ is only used
    for checking .Rd cross-references in R CMD check (as documented)
    and not for other uses looking for a CRAN mirror.
  * The search for a CRAN mirror when checking packages now uses
    getOption("repos") if that specifies a CRAN mirror, even when it
    does not also specify all three Bioconductor repositories (as was
    previously required).
  * The HTML code generated by tools::Rd2HTML() has been improved to
    pass tidy 5.8.0.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1667217600">- CHANGES IN R 4.2.2:
  NEW FEATURES:
  * tools::Rdiff(useDiff = TRUE) checks for the presence of an
    external diff command and switches to useDiff = FALSE if none is
    found.  This allows R CMD Rdiff to always work.
  * On Windows, environment variable R_LIBCURL_SSL_REVOKE_BEST_EFFORT
    can be used to switch to only 'best-effort' SSL certificate
    revocation checks with the default "libcurl" download method.
    This reduces security, but may be needed for downloads to work
    with MITM proxies (PR#18379).
  * (macOS) The run-time check for libraries from XQuartz for X11 and
    Tcl/Tk no longer uses otool from the Apple Developer Tools
    (PR#18400).
  * The LaTeX style for producing the PDF manuals, Rd.sty, now loads
    the standard amsmath, amsfonts and amssymb packages for greater
    coverage of math commands in the Rd \eqn and \deqn macros.  The
    \mathscr LaTeX command is also provided (via the mathrsfs
    package, if available, or the amsfonts bundle otherwise),
    fulfilling the wish of PR#18398.
  * (Windows) The default format of readClipboard() and
    writeClipboard() has been changed to 13 (CF_UNICODETEXT).
  INSTALLATION on a UNIX-ALIKE:
  * The PDF manuals (if built) can be compacted by the new target
    make compact-pdf (at the top level or in directory doc/manual).
  * There is now configure support for LLVM clang 15 on Linux, which
    defaults to position-independent (PIE) executables whereas
    gfortran does not.
  * Many small changes to ease compilation (and suppress warnings)
    with LLVM clang 15.
  BUG FIXES:
  * Rscript -e would fail if stdin were closed (Reported by Henrik
    Bengtsson.)
  * qt(*, log.p=TRUE) in outer tails no longer produces NaN in its
    final steps, thus fixing PR#18360.
  * tools::Rd2latex() now escapes hashes and ampersands when writing
    URLs, fixing LaTeX errors with such URLs in \tabular.
  * When isGeneric(f, fdef=*) is used with mismatching names, the
    warning is better understandable; reported (with fix) in PR#18370
    by Gabe Becker.
  * poly(x, n) now works again (and is now documented) when x is a
    "Date" or "POSIXct" object, or of another class while fulfilling
    mode(x) == "numeric".  This also enables poly(x, *, raw=TRUE) for
    such variables.  Reported by Michael Chirico to R-devel.
  * write.table(), write.csv() and write.csv2() restore their
    numerical precision (internal equivalent of digits = 15) after an
    interrupt (PR#18384).
  * One can now read also byte FF from a clipboard connection
    (PR#18385).
  * source("") and source(character()) now give more helpful error
    messages.
  * R CMD check --as-cran set _R_CHECK_TIMINGS_ too late to have the
    intended effect.
  * as.POSIXlt(x) now also works with very large dates x, fixing
    PR#18401 reported by Hannes M"uhleisen.
  * Files can now be extracted even from very large zip archives
    (PR#18390, thanks to Martin Jakt).
  * Non-finite objects of class "POSIXlt" are now correctly coerced
    to classes "Date" and "POSIXct"; following up on the extension to
    format() them correctly.
  * Added methods for is.finite(), is.infinite() and is.nan() for
    "POSIXlt" date-time objects.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1678881600">- CHANGES IN R 4.2.3:
  C-LEVEL FACILITIES:
  * The definition of DL_FUNC in R_ext/Rdynload.h has been changed to
    be fully C-compliant.  This means that functions loaded _via_ for
    example R_GetCCallable need to be cast to an appropriate type if
    they have any arguments.
  * .Machine has a new element sizeof.time_t to identify old systems
    with a 32-bit type and hence a limited range of date-times (and
    limited support for dates millions of years from present).
  PACKAGE INSTALLATION:
  * (Windows) The default C++ standard had accidentally been left at
    C++11 when it was changed to C++14 on Unix.
  BUG FIXES:
  * As "POSIXlt" objects may be "partially filled" and their list
    components meant to be recycled, length() now is the length of
    the longest component.
  * as.POSIXlt.Date() could underflow for dates in the far past (more
    than half a million years BCE).
  * as.Date.POSIXlt(x) would return "1970-01-01" instead of NA in R
    4.2.2, e.g., for
    x &lt;- as.POSIXlt(c("2019-01-30","2001-1-1"))
    x$mon &lt;- c(0L, NA); as.Date(x)
  * R CMD check failed to apply enabled _R_CHECK_SUGGESTS_ONLY_ to
    examples and vignettes (regression in R 4.2.0).
  * R CMD check did not re-build vignettes in separate processes by
    default (regression in R 4.2.0).
  * Running examples from HTML documentation now restores previous
    knitr settings and options (PR#18420).
  * Quartz: fonts are now located using Core Graphics API instead of
    deprecated ATS which is no longer supported in the macOS 13 SDK
    (PR#18426).  This also addresses an issue where the currently
    used font in the Quartz device context was not correctly
    retained.
  * (Windows) Math symbols in text drawing functions are again
    rendered correctly (PR#18440).  This fixes a regression in R
    4.2.1 caused by a fix in PR#18382 which uncovered an issue in
    GraphApp due to which the symbol charset was not used with TT
    Symbol font face.
  * (Windows) Installing a package with a src/Makefile.{win,ucrt}
    file includes ~/.R/Makevars.win64 in the search for user
    makevars, as documented in "R Installation and Administration"
    and done for packages with a src/Makevars.{win,ucrt} file.
  * format(&lt;POSIXlt_w/_unbalanced_sec&gt;, "....%OS&lt;n&gt;") with n &gt; 0 no
    longer accidentally uses the unbalanced seconds, thanks to
    Suharto Anggono's report (including patch) in PR#18448.
  * solve.default(a, b) works around issues with some versions of
    LAPACK when a contains NA or NaN values.
  * When UseMethod() cannot dispatch, it no longer segfaults
    producing the error message in case of a long class(), thanks to
    Joris Vankerschaver's report (including patch) in PR#18447.
  * When example(foo, ..) produces graphics on an interactive device
    it needs to open itself, it now leaves devAskNewPage() unchanged
    even when it was FALSE, thus fixing a 14 years old '&lt;FIXME&gt;'.
  * packageDescription() again catches errors from encoding
    conversions. This also fixes broken packageVersion() in C locale
    on systems where iconv does not support transliteration.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1681128000">- add patch to build with libcurl &gt;= 8</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1682078400">- CHANGES IN R 4.3.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Calling &amp;&amp; or || with LHS or (if evaluated) RHS of length greater
    than one is now always an error, with a report of the form
    'length = 4' in coercion to 'logical(1)'
    Environment variable _R_CHECK_LENGTH_1_LOGIC2_ no longer has any
    effect.
  NEW FEATURES:
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.10.1.  (This caused some platform-dependent
    changes to package check output.)  And then to the sources from
    LAPACK version 3.11.0 (with changes only to double complex
    subroutines).
  * The included LAPACK sources have been updated to include the four
    Fortran 90 routines rather than their Fortran 77 predecessors.
    This may give some different signs in SVDs or
    eigendecompositions..  (This completes the transition to LAPACK
    3.10.x begun in R 4.2.0.)
  * The LAPACK sources have been updated to version 3.11.0.  (No new
    subroutines have been added, so this almost entirely bug fixes:
    Those fixes do affect some computations with NaNs, including R's
    NA.)
  * The parser now signals _classed_ errors, notably in case of the
    pipe operator |&gt;.  The error object and message now give line and
    column numbers, mostly as proposed and provided by Duncan Murdoch
    in PR#18328.
  * toeplitz() is now generalized for asymmetric cases, with a
    toeplitz2() variant.
  * xy.coords() and xyz.coords() and consequently, e.g., plot(x,y,
    log = "y") now signal a _classed_ warning about negative values
    of y (where log(.) is NA).  Such a warning can be specifically
    suppressed or caught otherwise.
  * Regular expression functions now check more thoroughly whether
    their inputs are valid strings (in their encoding, e.g. in
    UTF-8).
  * The performance of grep(), sub(), gsub() and strsplit() has been
    improved, particularly with perl = TRUE and fixed = TRUE.  Use of
    useBytes = TRUE for performance reasons should no longer be
    needed and is discouraged: it may lead to incorrect results.
  * apropos() gains an argument dot_internals which is used by the
    completion (help(rcompgen)) engine to also see base internals
    such as .POSIXct().
  * Support in tools::Rdiff() for comparing uncompressed PDF files is
    further reduced - see its help page.
  * qqplot(x, y, ...) gains conf.level and conf.args arguments for
    computing and plotting a confidence band for the treatment
    function transforming the distribution of x into the distribution
    of y (Switzer, 1976, _Biometrika_). Contributed by Torsten
    Hothorn.
  * Performance of package_dependencies() has been improved for cases
    when the number of dependencies is large.
  * Strings newly created by gsub(), sub() and strsplit(), when any
    of the inputs is marked as "bytes", are also marked as "bytes".
    This reduces the risk of creating invalid strings and accidental
    substitution of bytes deemed invalid.
  * Support for readLines(encoding = "bytes") has been added to allow
    processing special text files byte-by-byte, without creating
    invalid strings.
  * iconv(from = "") now takes into account any declared encoding of
    the input elements and uses it in preference to the native
    encoding.  This reduces the risk of accidental creation of
    invalid strings, particularly when different elements of the
    input have different encoding (including "bytes").
  * Package repositories in getOption("repos") are now initialized
    from the repositories file when utils is loaded (if not already
    set, e.g., in .Rprofile).  (From a report and patch proposal by
    Gabriel Becker in PR#18405.)
  * compactPDF() gets a verbose option.
  * type.convert() and hence read.table() get new option tryLogical =
    TRUE with back compatible default.  When set to false, converts
    "F" or "T" columns to character.
  * Added new unit prefixes "R" and "Q" for abbreviating
    (unrealistically large) sizes beyond 10^{27} in standard = "SI",
    thanks to Henrik Bengtsson's PR#18435.
  * as.data.frame()'s default method now also works fine with atomic
    objects inheriting from classes such as "roman", "octmode" and
    "hexmode", such fulfilling the wish of PR#18421, by Benjamin
    Feakins.
  * The as.data.frame.vector() utility now errors for wrong-length
    row.names.  It warned for almost six years, with "Will be an
    error!".
  * sessionInfo() now also contains La_version() and reports codepage
    and timezone when relevant, in both print() and toLatex() methods
    which also get new option tzone for displaying timezone
    information when locale = FALSE.
  * New function R_compiled_by() reports the C and Fortran compilers
    used to build R, if known.
  * predict(&lt;lm&gt;, newdata = *) no longer unnecessarily creates an
    offset of all 0s.
  * solve() for complex inputs now uses argument tol and by default
    checks for 'computational singularity' (as it long has done for
    numeric inputs).
  * predict(&lt;rank-deficient lm&gt;, newdata=*) now obeys a new argument
    rankdeficient, with new default "warnif", warning only if there
    are non-estimable cases in newdata.  Other options include
    rankdeficient = "NA", predicting NA for non-estimable newdata
    cases.  This addresses PR#15072 by Russ Lenth and is based on his
    original proposal and discussions in PR#16158 also by David Firth
    and Elin Waring.  Still somewhat experimental.
  * Rgui console implementation now works better with the NVDA screen
    reader when the full blinking cursor is selected.  The underlying
    improvements in cursor handling may help also other screen
    readers on Windows.
  * The drop-field control in GraphApp can now be left with the TAB
    key and all controls can be navigated in the reverse order using
    the Shift+TAB key, improving accessibility of the Rgui
    configuration editor.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now fully accurate
    (instead of to "only" minimally five digits).
  * demo(error.catching) now also shows off withWarnings() and
    tryCatchWEMs().
  * As an experimental feature the placeholder _ can now also be used
    in the rhs of a forward pipe |&gt; expression as the first argument
    in an extraction call, such as _$coef. More generally, it can be
    used as the head of a chain of extractions, such as _$coef[[2]].
  * Spaces in the environment variable used to choose the R session's
    temporary directory (TMPDIR, TMP and TEMP are tried in turn) are
    now fatal.  (On Windows the 'short path' version of the path is
    tried and used if that does not contain a space.)
  * all.equal.numeric() gets a new optional switch giveErr to return
    the numeric error as attribute.  Relatedly,
    stopifnot(all.equal&lt;some&gt;(a, b, ..)) is as "smart" now, as
    stopifnot(all.equal(....)) has been already, thus allowing
    customized all.equal&lt;Some&gt;() wrappers.
  * R on Windows is now able to work with path names longer than 260
    characters when these are enabled in the system (requires at
    least Windows 10 version 1607).  Packages should be updated to
    work with long paths as well, instead of assuming PATH_MAX to be
    the maximum length.  Custom front-ends and applications embedding
    R need to update their manifests if they wish to allow this
    feature.  See
    &lt;https://blog.r-project.org/2023/03/07/path-length-limit-on-windows&gt;
    for more information.
  * 'Object not found' and 'Missing argument' errors now give a more
    accurate error context. Patch provided by Lionel Henry in
    PR#18241.
  * The @ operator is now an S3 generic. Based on contributions by
    Tomasz Kalinowski in PR#18482.
  * New generic chooseOpsMethod() provides a mechanism for objects to
    resolve cases where two suitable methods are found for an Ops
    Group Generic. This supports experimenting with alternative
    object systems. Based on contributions by Tomasz Kalinowski in
    PR#18484.
  * inherits(x, what) now accepts values other than a simple
    character vector for argument what. A new generic, nameOfClass(),
    is called to resolve the class name from what. This supports
    experimenting with alternative object systems. Based on
    contributions by Tomasz Kalinowski in PR#18485.
  * Detection of BLAS/LAPACK in use (sessionInfo()) with FlexiBLAS
    now reports the current backend.
  * The "data.frame" method for subset() now warns about extraneous
    arguments, typically catching the use of = instead of == in the
    subset expression.
  * Calling a:b when numeric a or b is longer than one may now be
    made into an error by setting environment variable
    _R_CHECK_LENGTH_COLON_ to a true value, along the proposal in
    PR#18419 by Henrik Bengtsson.
  * density(x, weights = *) now warns if automatic bandwidth
    selection happens without using weights; new optional warnWbw may
    suppress the warning.  Prompted by Christoph Dalitz' PR#18490 and
    its discussants.
  * rm(list = *) is faster and more readable thanks to Kevin Ushey's
    PR#18492.
  * The plot.lm() function no longer produces a normal Q-Q plot for
    GLMs. Instead it plots a half-normal Q-Q plot of the absolute
    value of the standardized deviance residuals.
  * The print() method for class "summary.glm" no longer shows
    summary statistics for the deviance residuals by default.  Its
    optional argument show.residuals can be used to show them if
    required.
  * The tapply() function now accepts a data frame as its X argument,
    and allows INDEX to be a formula in that case. by.data.frame()
    similarly allows INDICES to be a formula.
  * The performance of df[j] &lt;- value (including for missing j) and
    write.table(df) has been improved for data frames df with a large
    number of columns.  (Thanks to Gabriel Becker's PR#18500,
    PR#18503 and discussants, prompted by a report from Toby Dylan
    Hocking on the R-devel mailing list.)
  * The matrix multiply operator %*% is now an S3 generic, belonging
    to new group generic matrixOps.  From Tomasz Kalinowski's
    contribution in PR#18483.
  * New function array2DF() to convert arrays to data frames,
    particularly useful for the list arrays created by tapply().
  DATES and TIMES:
  * On platforms where (non-UTC) datetimes before 1902 (or before
    1900 as with system functions on recent macOS) are guessed by
    extrapolating time zones from 1902-2037, there is a warning at
    the first use of extrapolation in a session.  (As all time zones
    post 2037 are extrapolation, we do not warn on those.)
  * (Platforms using --with-internal-tzone, including Windows and by
    default macOS). How years are printed in dates or date-times can
    be controlled by environment variable R_PAD_YEARS_BY_ZERO.  The
    default remains to pad to 4 digits by zeroes, but setting value
    no gives no padding (as used by default by glibc).
  * strftime() tries harder to determine the offset for the "%z"
    format, and succeeds on the mainstream R platforms.
  * strftime() has a limit of 2048 bytes on the string produced -
    attempting to exceed this is an error.  (Previously it silently
    truncated at 255 bytes.)
  * sessionInfo() records (and by default prints) the system time
    zone as part of the locale information.  Also, the source
    (system/internal) of the date-time conversion and printing
    functions.
  * Objects of class "POSIXlt" created in this version of R always
    have 11 components: component zone is always set, and component
    gmtoff is set for times in UTC and usually set on the (almost
    all) platforms which have C-level support, otherwise is NA.
  * There are comprehensive validity checks on the structure of
    objects of class "POSIXlt" when converting (including formatting
    and printing).  (This avoids mis-conversions of hand-crafted
    objects.)
  * There is some support for using the native date-time routines on
    macOS: this is only viable on recent versions (e.g. 12.6 and 13)
    and does get wrong some historical changes (before 1900, during
    WWII).  Use of --with-internal-tzone remains the default.
  * as.POSIXct(&lt;numeric&gt;) and as.POSIXlt(.) (without specifying
    origin) now work.  So does as.Date(&lt;numeric&gt;).
  * as.Date.POSIXct(., tz) now treats several tz values, notably
    "GMT" as equivalent to "UTC", proposed and improved by Michael
    Chirico and Joshua Ulrich in PR#17674.
  * Experimental balancePOSIXlt() utility allows using "ragged" and
    or out-of-range "POSIXlt" objects more correctly, e.g., in
    subsetting and subassignments.  Such objects are now documented.
    More experimentally, a "POSIXlt" object may have an attribute
    "balanced" indicating if it is known to be filled or fully
    balanced.
  * Functions axis.Date() and axis.POSIXct() are rewritten to gain
    better default tick locations and better default formats by using
    prettyDate(). Thanks to Swetlana Herbrandt.
  * The mapping of Windows' names for time zones to IANA's 'Olson'
    names has been updated.  When ICU is available (it is by
    default), it is used to get a mapping for the current region set
    in Windows.  This can be overridden by setting environment
    variable TZ to the desired Olson name - see OlsonNames() for
    those currently available.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 16
    and so packages that provide graphics devices should be
    reinstalled.
  * The grDevices and grid packages have new functions for rendering
    typeset glyphs, primarily: grDevices::glyphInfo() and
    grid::grid.glyph().
    Rendering of typeset glyphs is only supported so far on the
    Cairo-based graphics devices and on the pdf() and quartz()
    devices.
  * The defined behaviour for "clear" and "source" compositing
    operators (via grid::grid.group()) has been changed (to align
    better with simple interpretation of original Porter-Duff
    definitions).
  * Support for gradients, patterns, clipping paths, masks, groups,
    compositing operators, and affine transformations has been added
    to the quartz() device.
  INSTALLATION on a UNIX-ALIKE:
  * A system installation of generic LAPACK 3.10.0 or later will be
    preferred to the version in the R sources.
    configure option --with-lapack=no (equivalently --without-lapack)
    forces compilation of the internal LAPACK sources.
    If --with-lapack is not specified, a system liblapack is looked
    for and used if it reports version 3.10.0 or later and does not
    contain BLAS routines.
    Packages using LAPACK will need to be reinstalled if this changes
    to using an external library.
  * On aarch64 Linux platforms using GCC, configure now defaults to
  - fPIC (instead of -fpic), as desired in PR#18326.
  * configure now checks conversion of datetimes between POSIXlt and
    POSIXct around year 2020.  Failure (which has been seen on
    platforms missing tzdata) is fatal.
  * If configure option --with-valgrind-instrumentation is given
    value 1 or 2, option --with-system-valgrind-headers is now the
    default and ignored (with a warning).  It is highly recommended
    that the system headers are installed alongside valgrind: they
    are part of its packaging on some Linux distributions and
    packaged separately (e.g. in the valgrind-devel RPM) on others.
    configure will give a warning if they are not found.
    The system headers will be required in a future release of R to
    build with valgrind instrumentation.
  * libcurl 8.x is now accepted by configure: despite a change in
    major version number it changes neither API nor ABI.
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools43, an update of the Rtools42 toolchain.  It is
    based on gcc 12 and newer versions of MinGW-W64, binutils and
    libraries.  At this time R-devel can still be built using
    Rtools42 without changes, but when R-devel is installed via the
    installer, it will by default look for Rtools43.
  * Old make targets rsync-extsoft and 32-bit ones that are no longer
    needed have been removed.
  * Default builds (including for packages) no longer select C99.
    Thus the C standard used is the default for the compiler, which
    for the toolchain in Rtools43 is C17.  (This is consistent with
    Unix builds.)
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++17 where
    available (which it is on all currently checked platforms): if
    not C++14 or C++11 is used if available otherwise C++ is not
    supported.
  * USE_FC_LEN_T is the default: this uses the correct
    (compiler-dependent) prototypes for Fortran BLAS/LAPACK routines
    called from C/C++, and requires adjustment of many such calls -
    see 'Writing R Extensions' SS6.6.1.
  * There is initial support for C++23 as several compilers are now
    supporting -std=c++23 or -std=c++2b or similar.  As for C++20,
    there no additional configure checks for C++23 features beyond a
    check that the compiler reports a __cplusplus value greater than
    that in the C++20 standard.  C++ feature tests should be used.
  * There is support for a package to indicate the version of the C
    standard which should be used to compile it, and for the
    installing user to specify this.  In most cases R defaults to the
    C compiler's default standard which is C17 (a `bug-fix' of C11) -
    earlier versions of R or compilers may have defaulted to C99.
    Current options are:
    USE_C17 Use a standard that is at most C17.  The intention is to
    allow legacy packages to still be installed when later C
    standards become the default, including packages using new
    keywords as identifiers or with K&amp;R-style function
    declarations.  This will use C17 if available, falling back
    to C11.
    USE_C90 Use the C90 (aka C89) standard.  (As that standard did
    not require compilers to identify that version, all we can
    verify is that the compiler does not claim to be using a
    later standard.  It may accept C99 features - for example
    clang accepts // to make comments.)
    USE_C99 Use the C99 standard. This should be rarely needed - it
    avoids the few new features of C11/C17 which can be useful if
    a package assumes them if C17 is specified and they are not
    implemented.
    USE_C23 Use C23 (or in future, later).  Compiler/library support
    for C23 is still being implemented, but LLVM clang from
    15.0.0 and the upcoming GCC 13 have quite extensive support.
    These can be specified as part of the SystemRequirements field in
    the package's DESCRIPTION file or _via_ options --use-C17 and so
    on of R CMD INSTALL and R CMD SHLIB.
    For further details see "Writing R Extensions" SS1.2.5.
  * (Windows) A src/Makefile.ucrt or src/Makefile.win file is now
    included after R_HOME/etcR_ARCH/Makeconf and so no longer needs
    to include that file itself.  Installation of a package with such
    a file now uses a site Makevars file in the same way as a package
    with a src/Makevars.win file would.
  * configure is now passed crucial variables such as CC and CFLAGS
    in its environment, as many packages were not setting them (as
    documented in 'Writing R Extensions' SS1.2).
    This has most effect where configure is used to compile parts of
    the package - most often by cmake or libtool which obfuscate the
    actual compile commands used.
    Also used for configure.win and configure.ucrt on Windows.
  FORTRAN FLAGS:
  * The flag -fno-optimize-sibling-calls is no longer forced for
    gfortran 7 and later.  It should no longer be needed now using
    'hidden' character-length arguments when calling BLAS/LAPACK
    routines from C/C++ is the default even for packages.  (Unless
    perhaps packages call Fortran code from C/C++ without using R's
    headers and without allowing for these arguments.)
  C-LEVEL FACILITIES:
  * The deprecated S-compatibility macros DOUBLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * The deprecated legacy typedefs of Sint and Sfloat in header R.h
    are no longer defined, and that header no longer includes header
    limits.h from C nor climits from C++.
  * New macro CAD5R() is provided in Rinternals.h and used in a few
    places in the R sources.
  * ALTREP now supports VECSXP vectors. Contributed by Gabor Csardi
    in PR#17620.
  * The Rcomplex definition (in header R_ext/Complex.h) has been
    extended to prevent possible mis-compilation when interfacing
    with Fortran (PR#18430).  The new definition causes compiler
    warnings with static initializers such as {1, 2}, which can be
    changed to {.r=1, .i=2}.
    Using the new definition from C++ depends on compiler extensions
    supporting C features that have not been incorporated into the
    C++ standards but are available in g++ and clang++: this may
    result in C++ compiler warnings but these have been worked around
    for recent versions of common compilers (GCC, Apple/LLVM clang,
    Intel).
    It is intended to change the inclusion of header R_ext/Complex.h
    by other R headers, so C/C++ code files which make use of
    Rcomplex should include that header explicitly.
  UTILITIES:
  * R CMD check does more checking of package .Rd files, warning
    about invalid email addresses and (some) invalid URIs and noting
    empty \item labels in description lists.
  * R CMD check now also reports problems when reading package news
    in md (file NEWS.md) and (optionally) plain text (file NEWS)
    formats.
  * _R_CHECK_TIMINGS_ defaults to a value from the environment even
    for R CMD check --as-cran; this allows for exceptionally fast or
    slow platforms.
    It now applies to checking PDF and HTML versions of the manuals,
    and 'checking CRAN incoming feasibility'.
  * R CMD check can optionally (but included in --as-cran) check
    whether HTML math rendering _via_ KaTeX works for the package .Rd
    files.
  * Non-interactive debugger invocations can be trapped by setting
    the environment variable _R_CHECK_BROWSER_NONINTERACTIVE_ to a
    true value.  This is enabled by R CMD check --as-cran to detect
    the use of leftover browser() statements in the package.
  * The use of sprintf and vsprintf from C/C++ has been deprecated in
    macOS 13 and is a known security risk.  R CMD check now reports
    (on all platforms) if their use is found in compiled code:
    replace by snprintf or vsnprintf respectively. [*NB:* whether
    such calls get compiled into the package is platform-dependent.]
  * Where recorded at installation, R CMD check reports the C and
    Fortran compilers used to build R.
    It reports the OS in use (if known, as given by osVersion) as
    well as that R was built for.
    It notes if a C++ standard was specified which is older than the
    current default: many packages have used C++11 to mean 'not
    C++98' - as C++11 is the minimum supported since R 4.0.0, that
    specification can probably be removed.
  * R CMD INSTALL reports the compilers (and on macOS, the SDK) used,
    and this is copied to the output of R CMD check.
    Where a C++ standard is specified, it is reported.
  * R CMD check's 'checking compilation flags in Makevars' has been
    relaxed to accept the use of flags such as -std=f2008 in
    PKG_FFLAGS.
  * tools::buildVignettes() has a new argument skip, which is used by
    R CMD check to skip (and note) vignettes with unavailable
    \VignetteDepends (PR#18318).
  * New generic .AtNames() added to enable class-specific completions
    after @. The formerly internal function findMatches() is now
    exported, mainly for use in methods for .DollarNames() and
    .AtNames().
  DEPRECATED AND DEFUNCT:
  * default.stringsAsFactors() is defunct.
  * Calling as.data.frame.&lt;class&gt;() directly (for 12 atomic classes)
    is going to be formally deprecated, currently activated by
    setting the environment variable
    _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ to non-empty, which also
    happens in R CMD check --as-cran.
  BUG FIXES:
  * Hashed environments with sizes less than 5 can now grow.
    (Reported to R-devel by Duncan Garmonsway.)
  * as.character(&lt;Rd&gt;, deparse = TRUE) failed to re-escape curly
    braces in LaTeX-like text.  (Reported by Hadley Wickham in
    PR#18324.)
  * library() now passes its lib.loc argument when requiring Depends
    packages; reported (with fix) in PR#18331 by Mikael Jagan.
  * R CMD Stangle: improved message about 'Output' files.
  * head(x, n) and tail(x, n) now signal an error if n is not
    numeric, instead of incidentally "working" sometimes returning
    all of x.  Reported and discussed by Colin Fay, in PR#18357.
  * The "lm" method for summary() now gives the correct F-statistic
    when the model contains an offset.  Reported in PR#18008.
  * C() and `contrasts&lt;-`() now preserve factor level names when
    given a function object (as opposed a function name which did
    preserve names). Reported in PR#17616.
  * c(a = 1, 2)[[]] no longer matches 2 but rather signals a
    _classed_ error.  Reported and analysed by Davis Vaughan in
    PR#18367, a duplicate of PR#18004, by Jan Meis et al.  For
    consistency, NULL[[]] is also erroneous now.  x[[]] &lt;- v gives an
    error of the same class "MissingSubscriptError".
  * The relist() function of utils now supports NULL elements in the
    skeleton (PR#15854).
  * ordered(levels = *) (missing x) now works analogously to factor(,
    ordered=TRUE); reported (with fix) by Achim Zeileis in PR#18389.
  * User-defined Rd macro definitions can now span multiple lines,
    thanks to a patch from Duncan Murdoch. Previously, the Rd parser
    silently ignored everything after the first line.
  * Plain-text help (tools::Rd2txt()) now preserves an initial blank
    line for text following description list items.
  * tools::Rd2HTML() and tools::Rd2latex() no longer split \arguments
    and \value lists at Rd comments.
  * tools::Rd2latex() now correctly handles optional text outside
    \items of argument lists as well as bracketed text at the
    beginning of sections, e.g., \value{[NULL]}.
  * as.character(&lt;POSIXt&gt;) now behaves more in line with the methods
    for atomic vectors such as numbers, and is no longer influenced
    by options().  Ditto for as.character(&lt;Date&gt;).  The
    as.character() method gets arguments digits and OutDec with
    defaults _not_ depending on options().  Use of as.character(*,
    format = .) now warns.
  * Similarly, the as.character.hexmode() and *.octmode() methods
    also behave as good citizen methods and back compatibility option
    keepStr = TRUE.
  * The as.POSIXlt(&lt;POSIXlt&gt;) and as.POSIXct(&lt;POSIXct&gt;) default
    methods now do obey their tz argument, also in this case.
  * as.POSIXlt(&lt;Date&gt;) now does apply a tz (time zone) argument, as
    does as.POSIXct(); partly suggested by Roland Fuss on the R-devel
    mailing list.
  * as.Date.POSIXlt(x) now also works when the list components are of
    unequal length, aka "partially filled" or "ragged".
  * expand.model.frame() looked up variables in the wrong environment
    when applied to models fitted without data.  Reported in
    PR#18414.
  * time() now (also) uses the ts.eps = getOption("ts.eps") argument
    and thus by default rounds values very close to the start (or
    end) of a year.  Based on a proposal by Andre"i V. Kostyrka on
    R-help.
  * Printing of a factanal() result with just one factor and sort =
    TRUE now works regularly, fixing PR#17863 by Timothy Bates,
    thanks to the 'R Contributors' working group.
  * Printing 0-length objects of class "factor", "roman", "hexmode",
    "octmode", "person", "bibentry", or "citation" now prints
    something better, one of which fixes PR#18422, reported by
    Benjamin Feakins.
  * Sys.timezone() queries timedatectl only if systemd is loaded;
    addressing a report by Jan Gorecki in PR#17421.
  * The formula method of cor.test() had scoping problems when
    environment(formula) was not the calling environment; reported
    with a patch proposal by Mao Kobayashi in PR#18439.
  * attach() of an environment with active bindings now preserves the
    active bindings.  Reported by Kevin Ushey in PR#18425.
  * BLAS detection now works also with system-provided libraries not
    available as regular files.  This fixes detection of the
    Accelerate framework on macOS since Big Sur.  Reported by David
    Novgorodsky.
  * download.file() gives a helpful error message in case of an
    invalid download.file.method option, thanks to Colin Fay's report
    in PR#18455.
  * Sporadic crashes of Rterm when using completion have been fixed.
  * Rprof() is now more reliable.  A livelock in thread
    initialization with too short sampling interval has been fixed on
    macOS.  A deadlock in using the C runtime has been fixed on
    Windows.  A potential deadlock has been prevented on Unix.
  * Cursor placement in Rgui now works even after a fixed-width font
    is selected.
  * Mandatory options (options()) are now set on startup so that
    saving and restoring them always works (PR#18372).
  * Package installation, R CMD INSTALL or install.packages(*), now
    parses each of the &lt;pkg&gt;/R/*.R files individually instead of
    first concatenating and then parse()ing the large resulting file.
    This allows parser or syntax errors to be diagnosed with correct
    file names and line numbers, thanks to Simon Dedman's report and
    Bill Dunlap's patch in PR#17859.
    This _does_ require syntactically self contained R source files
    now, fixing another inadvertent bug.
  * predict.lm(&lt;model with offset&gt;) now finds the offset in the
    correct environment, thanks to Andr'e Gillibert's report and patch
    in PR#18456.
  * getInitial(&lt;formula&gt;) now finds the selfStart model in the
    correct environment.  (Reported by Ivan Krylov in PR#18368.)
  * Fix for possible segfault when using recently-added graphics
    features, such as gradients, clipping paths, masks, and groups
    with pdf(file=NULL).
  * class(m) &lt;- class(m) no longer changes a matrix m by adding a
    class _attribute_.
  * packageDate(pkg) now only warns once if there is no pkg.
  * When ts() creates a multivariate time series, "mts", it also
    inherits from "array" now, and is.mts() is documented _and_
    stricter.
  * Rd2txt() now preserves line breaks of \verb Rd content and from
    duplicated \cr.  The former also fixes the rendering of verbatim
    output from Rd \Sexpr in plain-text help.
  * uniroot(f, interval) should no longer wrongly converge _outside_
    the interval in some cases where abs(f(x)) == Inf for an x at the
    interval boundary, thanks to posts by Ben Bolker and Serguei
    Sokol on R-devel.
  * Vectorized alpha handling in palette functions such as in gray(),
    rainbow(), or hcl.colors() works correctly now, thanks to Achim
    Zeileis' report and patch in PR#18476.
  * Formatting and print()ing of bibentry objects has dropped the
    deprecated citation.bibtex.max argument, such that the bibtex
    argument's default for print.bibentry() depends directly on the
    citation.bibtex.max option, whereas in format.bibentry() the
    option no longer applies.
  * Attempting to use a character string naming a foreign function
    entry point in a foreign function call in a package will now
    signal an error if the packages has called R_forceSymbols to
    specify that symbols must be used.
  * An error in table() could permanently set options(warn=2)
    promoting all subsequent warnings to errors.
  * The sigma() function gave misleading results for binary GLMs.  A
    new method for objects of class "glm" returns the square root of
    the estimate of the dispersion parameter using the same
    calculation as summary.glm().
  * bs() and ns() in the (typical) case of automatic knot
    construction, when some of the supposedly inner knots coincide
    with boundary knots, now moves them inside (with a warning),
    building on PR#18442 by Ben Bolker.
  * R CMD on Windows now skips the site profile with --no-site-file
    and --vanilla even when R_PROFILE is set (PR#18512, from Kevin
    Ushey).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1686916800">- CHANGES IN R 4.3.1:
  C-LEVEL FACILITIES:
  * The C-level API version of R's integrate(), Rdqags() in Applic.h,
    now returns the correct number of integrand evaluations neval,
    fixing PR#18515 reported and diagnosed by Stephen Wade.
  * The C prototypes for LAPACK calls dspgv and dtptrs in
    R_exts/Lapack.h had one too many and one too few character length
    arguments - but this has not caused any known issues. To get the
    corrected prototypes, include
    [#]include &lt;Rconfig.h&gt; // for PR18534fixed
    [#]ifdef PR18534fixed
    [#] define usePR18534fix 1
    [#]endif
    [#]include &lt;R_exts/Lapack.h&gt;
    in your C/C++ code (PR#18534).
  INSTALLATION:
  * Many of the checks of esoteric Internet operations and those
    using unreliable external sites have been moved to a new target
    that is not run by default and primarily intended for the core
    developers.  To run them use
    cd tests; make test-Internet-dev
  BUG FIXES:
  * .S3methods(), typically called from methods(), again marks
    methods from package base as visible.
    Also, the visibility of non-base methods is again determined by
    the method's presence in search().
  * tools::Rdiff() is now more robust against invalid strings, fixing
    installation tests on Windows without Rtools installed
    (PR#18530).
  * Fix (new) bug in hcl.colors(2, *), by Achim Zeileis (PR#18523).
  * head(., &lt;illegal&gt;) and tail(..) now produce more useful "Error in
    ...." error messages, fixing PR#18362.
  * Package code syntax on Windows is checked in UTF-8 when UTF-8 is
    the native encoding.
  * na.contiguous(x) now also returns the first run, when it is at
    the beginning and there is a later one of the same length;
    reported to R-devel, including a fix, by Georgi Boshnakov.
    Further, by default, it modifies only an existing attr(*,"tsp")
    but otherwise no longer sets one.
  * chol(&lt;not pos.def&gt;, pivot = &lt;T|F&gt;) now gives a correct error or
    warning message (depending on pivot), thanks to Mikael Jagan's
    (PR#18541).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1699012800">- CHANGES IN R 4.3.2:
  NEW FEATURES:
  * The default initialization of the "repos" option from the
    repositories file at startup can be skipped by setting
    environment variable R_REPOSITORIES to NULL such that
    getOption("repos") is empty if not set elsewhere.
  * qr.X() is now an implicit S4 generic in methods.
  * iconv(to = "ASCII//TRANSLIT") is emulated using substitution on
    platforms which do not support it (notably Alpine Linux).  This
    should give a human-readable conversion in ASCII on all platforms
    (rather than NA_character_).
  * trans3d() gains options continuous and verbose addressing the
    problem of possible "wrap around" when projecting too long
    curves, as reported by Achim Zeileis in PR#18537.
  * tools::showNonASCII() has been rewritten to work better on macOS
    14 (which has a changed implementation of iconv()).
  * tiff(type = "quartz") (the default on macOS) now warns if
    compression is specified: it continues to be ignored.
  INSTALLATION on a UNIX-ALIKE:
  * There is some support for building with Intel's LLVM-based
    compilers on x86_64 Linux, such as (C) icx, (C++) ipcx and
    (Fortran) ifx from oneAPI 2023.x.y.
  * There is support for using LLVM's flang-new as the Fortran
    compiler from LLVM 16.0.x (preferably 17.0.0 or later).
  UTILITIES:
  * R CMD check reports the use of the Fortran 90 random number
    generator RANDOM_NUMBER() and the subroutines to initialize it.
    'Writing R Extensions' has example code to use R's RNGs from
    Fortran.
  BUG FIXES:
  * substr(x, n, L) &lt;- cc now works (more) correctly for multibyte
    UTF-8 strings x when L &gt; nchar(x), thanks to a report and patch
    by 'Architect 95'.
  * contrib.url(character()) now returns 0-length character() as
    documented, which also avoids spurious warnings from
    available.packages() et al. in the edge case of an empty vector
    of repository URLs.
  * readChar(., 4e8) no longer fails, thanks to Kodi Arfer's report
    (PR#18557).
  * lapply(&lt;list&gt;, as.data.frame) no longer warns falsely for some
    base vector components.
  * Communication between parent and child processes in the multicore
    part of parallel could fail on platforms that do not support an
    arbitrarily large payload in system functions read()/write() on
    pipes (seen on macOS where a restriction to INT_MAX bytes is
    documented, without doing a partial read unlike Linux). The
    payload is now split into 1Gb chunks to avoid that problem.
    (PR#18571)
  * qqplot(x,y, conf.level=.) gives better confidence bounds when
    length(x) != length(y), thanks to Alexander Ploner's report and
    patch proposal (PR#18557).
  * norm(&lt;0-length&gt;, "2") now gives zero instead of an error, as all
    the other norm types, thanks to Mikael Jagan's PR#18542.
  * Build-stage Rd macros \packageAuthor and \packageMaintainer now
    process Authors@R, fixing NA results when the package DESCRIPTION
    omits Author and Maintainer fields.
  * Formatting and printing complex numbers could give things like
    0.1683-0i because of rounding error: -0i is now replaced by +0i.
  * postscript() refused to accept a title comment containing the
    letter "W" (PR#18599).
  * isoreg(c(1,Inf)) signals an error instead of segfaulting, fixing
    PR#18603.
  * tiff(type = "Xlib") was only outputting the last page of
    multi-page plots.
  * tools::latexToUtf8() again knows about \~{n} and other letters
    with tilde, fixing a regression in R 4.3.0, and about \^{i} as an
    alternative to \^{\i} (similarly with other accents).
    Furthermore, LaTeX codes for accented I letters are now correctly
    converted, also fixing related mistakes in
    tools::encoded_text_to_latex().
  * tar(*, tar = "internal") no longer creates out-of-spec tar files
    in the very rare case of user or group names longer than 32
    bytes, fixing PR#17871 with thanks to Ivan Krylov.
  * When using the "internal" timezone datetime code, adding a
    fraction of a second no longer adds one second, fixing PR#16856
    from a patch by Ivan Krylov.
  * tools::checkRd() no longer produces spurious notes about
    "unnecessary braces" from multi-line Rd results of \Sexpr macros.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1709208000">- CHANGES IN R 4.3.3:
  NEW FEATURES:
  * iconv() now fixes up variant encoding names such as "utf8"
    case-insensitively.
  DEPRECATED AND DEFUNCT:
  * The legacy encoding = "MacRoman" is deprecated in pdf() and
    postscript(): support was incomplete in earlier versions of R.
  BUG FIXES:
  * Arguments are now properly forwarded to methods on S4 generics
    with ... in the middle of their formal arguments. This was broken
    for the case when a method introduced an argument but did not
    include ... in its own formals. Thanks to Herv'e Pag`es for the
    report PR#18538.
  * Some invalid file arguments to pictex(), postscript() and xfig()
    opened a file called NA rather than throw an error.  These
    included postscript(NULL) (which some people expected to work
    like pdf(NULL)).
  * Passing filename = NA to svg(), cairo_pdf(), cairo_ps() or the
    Cairo-based bitmap devices opened a file called NA: it now throws
    an error.
  * quartz(file = NA) opened a file called NA, including when used as
    a Quartz-based bitmap device.  It now gives an error.
  * rank(&lt;long vector&gt;) now works, fixing PR#18617, thanks to Ilia
    Kats.
  * seq.int() did not adequately check its length.out argument.
  * match(&lt;POSIXct&gt;, .) is correct again for differing time zones,
    ditto for "POSIXlt", fixing PR#18618 reported by Bastian Klein.
  * drop.terms(*, dropx = &lt;0-length&gt;) now works, fixing PR#18563 as
    proposed by Mikael Jagan.
  * drop.terms(*) keeps + offset(.) terms when it should, PR#18565,
    and drop.terms() no longer makes up a response, PR#18566, fixing
    both bugs thanks to Mikael Jagan.
  * getS3method("t", "test") no longer finds the t.test() function,
    fixing PR#18627.
  * pdf() and postscript() support for the documented Adobe encodings
    "Greek" and "Cyrilllic" was missing (although the corresponding
    Windows' codepages could be used).
  * Computations of glyph metric information for pdf() and
    postscript() did not take into account that transliteration could
    replace one character by two or more (only seen on macOS 14) and
    typically warned that the information was not known.
  * rank(x) no longer overflows during integer addition, when
    computing rank average for largish but not-yet long vector x,
    fixing PR#18630, thanks to Ilia Kats.
  * list.files() on Windows now returns also files with names longer
    that 260 bytes (the Windows limit is 260 characters).
    Previously, some file names particularly with 'East Asian'
    characters were omitted.
  * cov2cor(&lt;0 x 0&gt;) now works, fixing PR#18423 thanks to Mikael
    Jagan and Elin Waring.
  * cov2cor(&lt;negative diagonal&gt;) and similar now give one warning
    instead of two, with better wording, fixing PR#18424 thanks to
    Mikael Jagan.
  * tools:: startDynamicHelp() now ensures port is in proper range,
    fixing PR#18645.
  * pbeta(x, a,b) is correct now for x=0 or 1 in the boundary cases
    where a or b or both are 0, fixing PR#18672 thanks to Michael
    Fay.
  * pmatch(x, table) for large table, also called for data frame row
    selection, dfrm[nm, ], is now interruptible, fixing PR#18656.
  * predict(&lt;rank-deficient lm&gt;, newdata=*) fix computing of nbasis,
    see Russ Lenth's comment 29 in PR#16158.
  * Added a work-around for a bug in macOS 14.3.1 and higher which
    prevents R plots in the Quartz Cocoa device from updating on
    screen.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1713960000">- CHANGES IN R 4.4.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Startup banners, R --version, sessionInfo() and R CMD check no
    longer report (64-bit) as part of the platform as this is almost
    universal - the increasingly rare 32-bit platforms will still
    report (32-bit).
    On Windows, ditto for window titles.
  * is.atomic(NULL) now returns FALSE, as NULL is not an atomic
    vector.  Strict back-compatibility would replace is.atomic(foo)
    by (is.null(foo) || is.atomic(foo)) but should happen only
    sparingly.
  NEW FEATURES:
  * The confint() methods for "glm" and "nls" objects have been
    copied to the stats package.  Previously, they were stubs which
    called versions in package MASS. The MASS namespace is no longer
    loaded if you invoke (say) confint(glmfit).  Further, the "glm"
    method for profile() and the plot() and pairs() methods for class
    "profile" have been copied from MASS to stats.  (profile.nls()
    and plot.profile.nls() were already in stats.)
  * The confint() and profile methods for "glm" objects have gained a
    possibility to do profiling based on the Rao Score statistic in
    addition to the default Likelihood Ratio. This is controlled by a
    new test = argument.
  * The pairs() method for "profile" objects has been extended with a
    which = argument to allow plotting only a subset of the
    parameters.
  * The "glm" method for anova() computes test statistics and
    p-values by default, using a chi-squared test or an F test
    depending on whether the dispersion is fixed or free.  Test
    statistics can be suppressed by giving argument test a false
    logical value.
  * In setRepositories() the repositories can be set using their
    names via name = instead of index ind =.
  * methods() and .S3methods() gain a all.names option for the (rare)
    case where functions starting with a . should be included.
  * Serializations can now be interrupted (e.g., by Ctrl-C on a
    Unix-alike) if they take too long, e.g., from save.image(),
    thanks to suggestions by Ivan Krylov and others on R-devel.
  * New startup option --max-connections to set the maximum number of
    simultaneous connections for the session.  Defaults to 128 as
    before: allowed values up to 4096 (but resource limits may in
    practice restrict to smaller values).
  * R on Windows (since Windows 10 2004) now uses the new Segment
    Heap allocator. This may improve performance of some
    memory-intensive applications.
  * When R packages are built, typically by R CMD build &lt;pkg&gt;, the
    new --user=&lt;build_user&gt; option overrides the (internally
    determined) user name, currently Sys.info()["user"] or LOGNAME.
    This is a (modified) fulfillment of Will Landau's suggestion in
    PR#17530.
  * tools::testInstalledBasic() gets new optional arguments outDir
    and testSrcdir, e.g., allowing to use it in a &lt;builddir&gt; !=
    &lt;srcdir&gt; setup, and in standard "binary" Windows installation
  * if* a source tests/ folder is present.
  * range(&lt;DT_with_Inf&gt;, finite = TRUE) now work for objects of class
    "Date", "POSIXct", and "POSIXlt" with infinite entries,
    analogously to range.default(), as proposed by Davis Vaughan on
    R-devel.  Other range()-methods can make use of new function
    .rangeNum().
  * New .internalGenerics object complementing .S3PrimitiveGenerics,
    for documentation and low-level book-keeping.
  * grid() now invisibly returns the x- and y- coordinates at which
    the grid-lines were drawn.
  * norm(., type) now also works for complex matrices.
  * kappa(., exact = TRUE, norm = *) now works for all norms and also
    for complex matrices.  In symmetric / triangular cases, the new
    argument uplo = "U" | "L" allows the upper or lower triangular
    part to be specified.
  * memDecompress(type = "unknown") recognizes compression in the
    default 'zlib' format as used by memCompress(type = "gzip").
  * memCompress() and memDecompress() will use the libdeflate library
    (&lt;https://github.com/ebiggers/libdeflate&gt;) if installed.  This
    uses the same type of compression for type = "gzip" but is 1.5-2x
    faster than the system libz library on some common platforms: the
    speed-up may depend on the library version.
  * diff() for objects of class "Date", "POSIXct", and "POSIXlt"
    accepts a units argument passed via ....
  * Dynamic help now does a much better job of rendering package
    DESCRIPTION metadata.
  * Rprof() gains an event argument and support for elapsed (real)
    time profiling on Unix (PR#18076).
  * filled.contour() gains a key.border argument.
  * tools::update_pkg_po() gets arguments pot_make and mo_make for
    _not_ re-making the corresponding files, and additionally a
    verbose argument.
  * Hexadecimal string colour specifications are now accepted in
    short form, so, for example, we can use "#123", which is
    equivalent to "#112233".
    Thanks to MikeFC for the original idea and Ella Kaye, Malcolm
    Barrett, George Stagg, and Hanne Oberman for the patch.
  * Plain-text help shows \var markup by angle brackets.
  * The new experimental primitive function declare() is intended to
    eventually allow information about R code to be communicated to
    the interpreter, compiler, and code analysis tools. The syntax
    for declarations is still being developed.
  * Functions psmirnov(), qsmirnov() and rsmirnov() in package stats
    have had argument two.sided renamed to alternative, to take into
    account that the permutation distributions of the one-sided
    statistics can be different in the case of ties.  Consequence of
    PR#18582.
  * sort() is now an implicit S4 generic in methods.
  * Formatting and printing, format(z), print(z), of complex vectors
    z no longer zap relatively small real or imaginary parts to zero,
    fixing PR#16752.  This is an API change, as it was documented
    previously to round real and imaginary parts together on purpose,
    producing nicer looking output.  As mentioned, e.g. in the PR,
    this change is compatible with many other "R-like" programming
    environments.
    We have simplified the internal code and now basically format the
    real and imaginary parts independently of each other.
  * New experimental functions Tailcall() and Exec() to support
    writing stack-space-efficient recursive functions.
  * Where characters are attempted to be plotted by pdf(),
    postscript() and xfig() which are not in the selected 8-bit
    character set (most often Latin-1) and the R session is using a
    UTF-8 locale, the warning messages will show the UTF-8 character
    rather than its bytes and one dot will be substituted per
    character rather than per byte.  (Platforms whose iconv() does
    transliteration silently plot the transliteration.)
    In a UTF-8 locale some transliterations are now done with a
    warning (e.g., dashes and Unicode minus to hyphen, ligatures are
    expanded, permille (‰) is replaced by o/oo), although the OS may
    have got there first.  These are warnings as they will continue
    to be replaced by dots in earlier versions of R.
  * The matrix multiplication functions crossprod() and tcrossprod()
    are now also primitive and S3 generic, as %*% had become in R
    4.3.0.
  * source() and example() have a new optional argument catch.aborts
    which allows continued evaluation of the R code after an error.
  * The non-Quartz tiff() devices allow additional types of
    compression if supported by the platform's libtiff library.
  * The list of base and recommended package names is now provided by
    tools::standard_package_names().
  * cairo_pdf() and cairo_ps() default to onefile = TRUE to closer
    match pdf() and postscript().
  * New option catch.script.errors provides a documented way to catch
    errors and then continue in non-interactive use.
  * L %||% R newly in base is an expressive idiom for the phrases
    if(!is.null(L)) L else R or if(is.null(L)) R else L.
  * The return value from warnings() now always inherits from
    "warnings" as documented, now also in the case of no warnings
    where it previously returned NULL.
  * as.complex("1i") now returns 0 + 1i instead of NA with a warning.
  * z &lt;- c(NA, 1i) now keeps the imaginary part Im(z[1]) == 0, no
    longer coercing to NA_complex_.  Similarly, cumsum(z) correctly
    sums real and imaginary parts separately, i.e., without
    "crosstalk" in case of NAs.
  * On Alpine Linux iconv() now maps "latin2", "latin-2", "latin9"
    and "latin-9" to encoding names the OS knows about
    (case-insensitively).
  * iconv(sub = "Unicode") now always zero-pads to four (hex) digits,
    rather than to 4 or 8.  (This seems to have become the convention
    once Unicode restricted the number of Unicode points to 2^21 - 1
    and so will never need more than 6 digits.)
  * NCOL(NULL) now returns 0 instead of 1, for consistency with
    cbind().
  * The information for the Euro glyph missing from the Adobe .afm
    files for the Courier, Helvetica and Times families has been
    copied from their URW equivalents - this will improve vertical
    centring in the pdf() and postscript() devices.
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.12.0.  The changes are almost entirely cosmetic.
  * The included LAPACK sources have been updated to version 3.12.0
    and some further double-complex routines added.
  * There are new font families for the 2014--5 URW 2.0 fonts (see
    ?pdf) which are included in recent versions of Ghostscript.
    These have font widths for most Greek glyphs and a few others
    which were missing from the original versions (whose font
    families remain available for reproducibility, although
    Ghostscript-based viewers will render using the 2.0 versions).
  * Improve the large-n efficiency of as.matrix(&lt;dist&gt;), thanks an R
    contributors effort, notably by Tim Taylor and Heather Turner,
    see PR#18660.
  * The default and numeric methods of all.equal() get a check.class
    option.
  * zapsmall() gets new optional arguments, function mFUN and min.d,
    for extra flexibility; fulfills a wish in PR#18199.  Also, it is
    now an implicit S4 generic in package methods.
  * The Rd filter for aspell() gains an ignore argument.
  * New generic function sort_by(), primarily useful for the
    data.frame method which can be used to sort rows of a data frame
    by one or more columns.
  * The icence headers for the RPC code in src/extra/xdr have been
    updated to use the GPL-compatible licence published by Oracle
    America in 2010.
  * New function pkg2HTML() in tools to create single-page HTML
    reference manuals for R packages.
  * The byte code evaluator now uses less C stack space for recursive
    calls to byte-compiled functions. It also makes more of an effort
    to avoid allocations for scalar return values.
  * New completion option backtick (disabled by default) allows
    non-syntactic completions to be wrapped in backquotes. This is
    currently only useful for Jupyter notebooks via the IRkernel
    package, and may cause problems for other backends.
  INSTALLATION:
  * The parser has been updated to work with bison 3.8.2, which is
    now used for the pre-generated parsers in gram.c, file.c, and
    gramRd.c. A few parser error messages have changed, which may
    affect code that relies on exact messages.
  INSTALLATION on a UNIX-ALIKE:
  * System valgrind headers are now required to use configure option
  - -with-valgrind-instrumentation with value 1 or 2.
  * configure will warn if it encounters a 32-bit build, as that is
    nowadays almost untested.
  * Environment variable R_SYSTEM_ABI is no longer used and so no
    longer recorded in etc/Renviron (it was not on Windows and was
    only ever used when preparing package tools).
  * If the libdeflate library and headers are available, libdeflate
    rather than libz is used to (de)compress R objects in lazy-load
    databases.  Typically tasks spend up to 5% of their time on such
    operations, although creating lazy-data databases is one of the
    exceptions.
    This can be suppressed if the library is available by the
    configure option --without-libdeflate-compression.
  * configure option --enable-lto=check has not worked reliably since
    2019 and has been removed.
  * The minimum autoconf requirement for a maintainer build has been
    increased to autoconf 2.71.
    It is intended to increase this to 2.72 for R 4.5.0: the
    distributed configure file was generated using 2.72.
  * The minimum version requirement for an external LAPACK has been
    reduced to 3.9.0.
  * No default C++ compiler is set if no C++17 compiler is detected:
    there is no longer an automatic fallback to C++14 or C++11.
    Compilers from the last five years should have sufficient
    support: for others macros CXX and CXXSTD can be set in file
    config.site to provide a fallback if needed.
    The Objective-C++ compiler now by default uses the standard
    selected by R for C++ (currently C++17) rather than the default
    standard for the C++ compiler (which on macOS is still C++98).
  INSTALLATION on macOS:
  * A new configure option --with-newAccelerate makes use of Apple's
    'new' BLAS / LAPACK interfaces in their Accelerate framework.
    Those interfaces are only available in macOS 13.3 or later, and
    building requires SDK 13.3 or later (from the Command Line Tools
    or Xcode 14.3 or later).
    By default the option uses new Accelerate for BLAS calls: to also
    use it for LAPACK use option --with-newAccelerate=lapack.  The
    later interfaces provide LAPACK 3.9.1 rather than 3.2.1: 3.9.1 is
    from 2021-04 and does not include the improved algorithms
    introduced in LAPACK 3.10.0 (including for BLAS calls).
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools44, an update of the Rtools43 toolchain.  It is
    based on GCC 13 and newer versions of MinGW-W64, binutils and
    libraries (targeting 64-bit Intel CPUs).  R-devel can no longer
    be built using Rtools43 without changes.
  * Rtools44 has experimental support for 64-bit ARM (aarch64) CPUs
    _via_ the LLVM 17 toolchain using lld, clang/flang-new and
    libc++.
  UTILITIES:
  * R CMD check notes when S4-style exports are used without
    declaring a strong dependence on package methods.
  * tools::checkRd() (used by R CMD check) detects more problems with
    \Sexpr-based dynamic content, including bad nesting of \Sexprs
    and invalid arguments.
  * tools::checkRd() now reports Rd titles and section names ending
    in a period; this is ignored by R CMD check unless environment
    variable _R_CHECK_RD_CHECKRD_MINLEVEL_ is set to -5 or smaller.
  * R CMD check now notes Rd files without an \alias, as long
    documented in 'Writing R Extensions' §1.3.1.  The check for a
    missing \description has been moved from tools::checkRd() to
    tools::checkRdContents().
  * R CMD check now visits inst/NEWS.Rd and OS-specific man
    subdirectories when checking Rd files.
  * tools::checkDocFiles() and tools::checkRdContents() now also
    check internal Rd files by default, but "specially" (ignoring
    missing documentation of arguments).
  * R CMD Rdiff gets option --useEx.
  * R CMD check now warns on non-portable uses of Fortran KIND such
    as INTEGER(KIND=4) and REAL(KIND=8).
    To see the failing lines set environment variable
    _R_CHECK_FORTRAN_KIND_DETAILS_ to a true value.
  * When checking Rd files, R CMD check now notes some of the "lost
    braces" that tools::checkRd() finds.  Typical problems are Rd
    macros missing the initial backslash (e.g., code{...}), in-text
    set notation (e.g., {1, 2}, where the braces need escaping), and
    \itemize lists with \describe-style entries of the form
    \item{label}{description}.
  * R CMD INSTALL (and hence check) will compile C++ code with
  - DR_NO_REMAP if environment variable _R_CXX_USE_NO_REMAP_ is set
    to a true value.  It is planned that this will in future become
    the default for compiling C++.
  * The new built-in Rd macro \dontdiff{} can be used to mark example
    code whose output should be ignored when comparing check output
    to reference output (tests/Examples/&lt;pkg&gt;-Ex.Rout.save).  The
    \dontdiff tag, like \donttest, is _not_ shown on the rendered
    help page, so provides a clean alternative to ##
    IGNORE_RDIFF_(BEGIN|END) comments.
  * R CMD build when there is no NAMESPACE, now uses the recommended
    exportPattern("^[^.]"), instead of exporting everything.
  * R CMD check now warns about non-ASCII characters in the NAMESPACE
    file (in addition to R files). Such packages are not portable and
    may fail to install on some platforms.
  C-LEVEL FACILITIES:
  * Headers R_ext/Applic.h and R-ext/Linpack.h used to include
    R_ext/BLAS.h although this was undocumented and unneeded by their
    documented entry points.  They no longer do so.
  * New function R_missing(), factored out from do_missing(), used to
    fix PR#18579.
  * SEXP type S4SXP has been renamed to OBJSXP to support
    experimenting with alternative object systems.  The S4SXP value
    can still be used in C code but is now deprecated.  Based on
    contributions from the R Consortium's Object-Oriented Programming
    Working Group.
  * New function pow1p(x,y) for accurate (1+x)^y.
  * mkCharLenCE was incorrectly documented to take a size_t length
    but was implemented with int (and character strings in R are
    limited to 2^31 - 1 bytes).
  DEPRECATED AND DEFUNCT:
  * data() no longer handles zipped data from long-defunct (since R
    2.13.0) --use-zip-data installations.
  * The legacy graphics devices pictex() and xfig() are now
    deprecated.  They do not support recent graphics enhancements and
    their font handling is rudimentary. The intention is to retain
    them for historical interest as long as they remain somewhat
    functional.
  * Support for encoding = "MacRoman" has been removed from the pdf()
    and postscript() devices - this was a legacy encoding supporting
    classic macOS up to 2001 and no longer has universal libiconv
    support.
  * is.R() is deprecated as no other S dialect is known to be in use
    (and this could only identify historical dialects, not future
    ones).
    Further information on calls can be obtained by setting the
    environment variable _R_DEPRECATED_IS_R_ to error which turns the
    deprecation warning into an error and so by default gives a
    traceback.  (This is done by R CMD check --as-cran.)
  * UseMethod() no longer forwards local variables assigned in the
    generic function into method call environments before evaluating
    the method body. This makes method calls behave more like
    standard function calls and makes method code easier to analyze
    correctly.
  * The twelve as.data.frame.&lt;class&gt;() methods which were deprecated
    only via _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ and in R CMD
    check --as-cran are formally deprecated now in favour of calling
    as.data.frame() or as.data.frame.vector().  The deprecation
    "check" now works also when as.data.frame() is S4 generic thanks
    to Ivan Krylov.
  * The default method for the directional comparison operators &lt;, &gt;,
    &lt;=, and &gt;= now signals an error when one of the operands is a
    language object, i.e. a symbol or a call.
  * For terms.formula(), deprecate abb and neg.out arguments
    _formally_ in addition to just documenting it.
  BUG FIXES:
  * The methods package is more robust to not being attached to the
    search path.  More work needs to be done.
  * pairwise.t.test() misbehaved when subgroups had 0 DF for
    variance, even with pool.sd = TRUE.  (PR#18594 by Jack Berry).
  * Probability distribution functions [dpq]&lt;distrib&gt;(x, *), but also
    bessel[IKJY](x, .) now consistently preserve attributes(x) when
    length(x) == 0, e.g., for a 2 x 0 matrix, thanks to Karolis
    Koncevičius' report PR#18509.
  * Group "Summary" computations such as sum(1:3, 4, na.rm = 5, NA,
    7, na.rm = LL) now give an error instead of either 17 or NN for
    LL true or false, as proposed by Ivan Krylov on the R-devel
    mailing list.  (This also means it is now an error to specify
    na.rm more than once.)
  * as.complex(x) now returns complex(real = x, imaginary = 0) for
    _all_ numerical and logical x, notably also for NA or
    NA_integer_.
  * Directories are now omitted by file.copy(, recursive = FALSE) and
    in file.append() (PR#17337).
  * gsub() and sub() are now more robust to integer overflow when
    reporting errors caused by too large input strings (PR#18346).
  * Top-level handlers are now more robust to attempts to remove a
    handler whilst handlers are running (PR#18508).
  * The handling of Alt+F4 in dialogs created on Windows using
    GraphApp has been fixed (PR#13870).
  * density() more consistently computes grid values for the
    FFT-based convolution, following Robert Schlicht's analysis and
    proposal in PR#18337, correcting density values typically by a
    factor of about 0.999.  Argument old.coords = TRUE provides back
    compatibility.
  * palette.colors() gains a name argument that defaults to FALSE
    controlling whether the vector of colours that is returned has
    names (where possible).  PR#18529.
  * tools::xgettext() no longer extracts the (non-translatable) class
    names from warningCondition and errorCondition calls.
  * S3method(&lt;gen&gt;, &lt;class&gt;, &lt;func&gt;) in the NAMESPACE file now works
    (again) when &lt;func&gt; is visible from the namespace, e.g.,
    imported, or in base.
  * getParseData(f) now also works for a function defined in the
    first of several &lt;pkg&gt;/R/*.R source files, thanks to Kirill
    Müller's report and Duncan Murdoch's patch in PR#16756.
  * Rd \Sexpr macros with nested #ifdef conditionals were not
    processed.
  * A non-blocking connection with non-default encoding (such as a
    socket) now correctly returns from readLines() after new data has
    arrived also when its EOF had been reached previously.  Thanks to
    Peter Meilstrup's report on R-devel and Ivan Krylov's report and
    patch proposal in PR#18555.
  * tools::checkRdContents() failed to detect empty argument
    descriptions when they spanned multiple lines, including those
    generated by prompt().  These cases are now noted by R CMD check.
  * Plain-text help no longer outputs spurious colons in the
    arguments list (for multi-line \item labels in the Rd source).
  * kappa() and rcond() work correctly in more cases; kappa(., norm =
    "2") now warns that it computes the 1-norm with (default) exact =
    FALSE; prompted by Mikael Jagan's quite comprehensive PR#18543.
  * Rd skeletons generated by prompt() or promptData() now use a
    dummy title (so R CMD build works).  tools::checkRdContents() has
    been updated to detect such template leftovers, including from
    promptPackage().
  * When S4 method dispatch fails because no method was found, the
    error message now includes the signature argument names; thanks
    to Michael Chirico's proposal on the R-devel list.
  * withAutoprint({ .. }) now preserves srcrefs previously lost,
    thanks to Andrew Simmons' report plus fix in PR#18572.
  * transform.data.frame() no longer adjusts names; in particular,
    untransformed variables are kept as-is, including those with
    syntactically invalid names (PR#17890).
  * The keep.source option for Rd \Sexpr blocks is no longer ignored.
  * The formula methods for t.test() and wilcox.test() now catch when
    paired is passed, addressing PR#14359; use Pair(x1, x2) ~ 1 for a
    paired test.
  * The level reported in the browser prompt was often too large. It
    now shows the number of browser contexts on the stack.
  * For cbind() and rbind(), the optional deparse.level argument is
    now properly passed to methods, thanks to Mikael Jagan's PR#18579
    and comments there.
  * Some error and warning messages for large ('long vector')
    matrix(v, nr, nc) and dim(m) &lt;- d are now correct about sizes,
    using long long formatting, fixing PR#18612 (and more) reported
    by Mikael Jagan.
  * readChar(useBytes = TRUE) now terminates strings even when the
    underlying connection uses extra spaces in the input buffer.
    This fixes problems with extra garbage seen with gzip
    connections, PR#18605.
  * Named capture in PCRE regular expressions now works also with
    more than 127 named groups (PR#18588).
  * Datetime functions are now robust against long jumps when dealing
    with internal time zone changes.  This avoids confusing warnings
    about an invalid time zone, previously triggered by turning
    warnings into errors or handling them via tryCatch (PR#17966,
    PR#17780).
  * Datetime functions now restore even an empty TZ environment
    variable after internal time zone changes (PR#17724).  This makes
    results of datetime functions with this (typically unintentional)
    setting more predictable.
  * drop.terms(*) now drops response as by default, keep.response =
    FALSE, fixing PR#18564 thanks to Mikael Jagan.
  * dummy.coef(.) now also works for lm()-models with character
    categorical predictor variables rather than factor ones, fixing
    PR#18635 reported by Jinsong Zhao.
  * formals(f) &lt;- formals(f) now also works for a function w/o
    arguments and atomic _constant_ body(f).
  * Correct as.function(&lt;invalid list&gt;, .)'s error message.
  * removeSource() is yet more thorough in finding and removing
    "srcref" and the other source references from parsed R language
    chunks, fixing PR#18638 thanks to Andrew Simmons.
  * dgeom() is more accurate now, notably when its result is very
    small, fixing PR#18642 thanks to the proposal of Morten Welinder,
    also improving other instances where C level binom_raw(x, n, ..)
    has x == 0 or x== n.
  * warning() with options(warn = 1) has improved output for
    multi-line messages.
  * axis.Date() and axis.POSIXct() now respect the par("lab") setting
    for the number of pretty() intervals.
  * Comparisons for language objects (which are based on deparsing)
    are now more careful about using accurate deparsed results
    (PR#18676).
  * Plain-text help (Rd2txt) now correctly preserves blank lines
    following single-line \dontrun code.
  * &lt;POSIXlt&gt;[*] no longer sets wrong "balanced" attribute, fixing
    PR#18681 thanks to Mikael Jagan.
  * str(&lt;classed-call&gt;) now deparses the call as expected, fixing
    PR#18684, reported by Dave Slager.
  * In Rd examples, code following the closing brace of a \dontrun,
    \dontshow or \donttest tag on the same line is no longer skipped
    when R CMD check runs the examples.
  * as.data.frame(matrix(*, ncol=0)) now gets valid names() and
    colnames(); reported by Davis Vaughan on the R-devel list.
  * Internal Mathlib function stirlerr(n) is now almost fully
    (52-bit) accurate for all n &gt;= ~5.9 and more accurate also in the
    range 1 -- 5.9.  This entails small ("after 12th decimal")
    changes in density functions, e.g., dgamma() in _some_ regions of
    their support.  The fix was partly prompted by Morten Welinder's
    PR#18640.
  * Numbers like 9876543.2 are now considered non-integer by Mathlib
    internal R_nonint(), amending original fix of PR#15734.
  * Rd comment lines no longer cause broken paragraphs in the
    rendered PDF and plain-text help. In code blocks, pure comment
    lines (starting with %) no longer produce an empty line.
  * xtabs(Freq ~ .) now consistently defaults to na.action = na.pass,
    using na.rm = FALSE (added as an argument) when summing over Freq
    (PR#17770).
  * tools::testInstalledPackage() is no longer silent about failures
    from running examples or tests and its return code no longer
    ignores failures from checking vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1718366400">- CHANGES IN R 4.4.1:
  C-LEVEL FACILITIES:
  * Functions R_atof and R_strtod declared in header R_ext/Utils.h
    are now documented in 'Writing R Extensions' and so formally part
    of the API.
  * The non-API entry points Rf_setSVector, Rf_StringFalse,
    Rf_StringTrue and Rf_isBlankString have been added to those
    reported by R CMD check.
  * The new function Rf_allocLang is now available. This provides an
    alternative to the idiom of calling Rf_allocList followed by
    SET_TYPEOF.
  UTILITIES:
  * R CMD check now reports as warnings what gfortran calls 'Fortran
    2018 deleted features', all of which have long been marked as
    'obsolescent' and some of which were deleted in Fortran 2008 or
    earlier.  Fortran compilers are no longer required to support
    these.
  BUG FIXES:
  * as.numeric(), scan(), type.convert() and other places which use
    the internal C function R_strtod now require a _non-empty_ digit
    sequence in a decimal or binary exponent.  This aligns with the
    C/POSIX standard for strtod and with ?NumericConstants.
  * as.data.frame(m, make.names=NA) now works correctly for a matrix
    m with NA's in row names.
  * The error message from &lt;POSIXlt&gt;[["hour"]] and similar now
    mentions *[[, "hour"]], as wished for in PR#17409 and proposed by
    Michael Chirico.
  * qbinom() and potentially qpois(), qnbinom(), no longer sometimes
    fail accurate inversion (of pbinom(), etc), thanks to Christopher
    Chang's report and patch in PR#18711.
  * The internal help server on Windows can again serve requests sent
    in quick succession, fixing a regression in R 4.4.0.
  * debugcall(&lt;S3Generic&gt;()) now also works when a corresponding
    S4-generic version is in the methods cache (PR#18143).
  * Package tools' toTitleCase(ch0) now returns character(0) when ch0
    is of zero length; fixing PR#18724, reported by David Hugh Jones.
  * R CMD check is no longer broken (without a check result and no
    explanation in 00check.log) for a package which declares an
    invalid VignetteBuilder in DESCRIPTION but has no vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1730376000">- CHANGES IN R 4.4.2:
  C-LEVEL FACILITIES:
  * The S-compatibility macros F77_COM and F77_COMDECL defined in
    header R_ext/RS.h are deprecated and will be removed shortly.  We
    could find no record of their use.
  BUG FIXES:
  * Mathlib function lgammacor(x) no longer warns about underflow to
    zero for large x.
  * Text widths and heights were incorrectly reported by the Quartz
    device if the drawing context didn't exist yet (typically when
    drawing off-screen to a window that is yet to appear, see
    PR#18591).
  * The Quartz device could segfault in cases where paths with spaces
    are used in the new glyph drawing API.  Thanks to Tomek
    Gieorgijewski (PR#18758).
  * On macOS in R CRAN builds, it is again possible to read
    little-endian UTF-16 text with a BOM from a connection using
    encoding="UTF-16".  Users building R from source should avoid
    using the system libiconv in macOS 14.1 and later.
  * methods' internal .requirePackage() now re-enables primitive
    method dispatch when needed; thanks to Ivan Krylov for
    demystifying CRAN package check failures on the R-devel mailing
    list.</changelog>
</package>
<package pkgid="3c9d8e41962384e08e54be01e3ca6ffcfc3406882414565a70bb0052b69cc1df0ef357a5daa84e280907511082b2a296bc3120c89461b394c33be03826ddf52b" name="R-grDevices-debuginfo" arch="i586">
  <version epoch="0" ver="4.4.2" rel="51.0.2.2.sr20241103"/>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1620302400">- To get in sync with d:l:R:autoCRAN the Matrix package's split
  in -devel was reversed.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339200">- improved spec file according to comments of dimstar in
  https://build.opensuse.org/request/show/892685</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339201">- CHANGES IN R 4.1.0:
  FUTURE DIRECTIONS:
  * It is planned that the 4.1.x series will be the last to support
    32-bit Windows, with production of binary packages for that
    series continuing until early 2023.
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Data set esoph in package datasets now provides the correct
    numbers of controls; previously it had the numbers of cases added
    to these.  (Reported by Alexander Fowler in PR#17964.)
  NEW FEATURES:
  * www.omegahat.net is no longer one of the repositories known by
    default to setRepositories().  (Nowadays it only provides source
    packages and is often unavailable.)
  * Function package_dependencies() (in package tools) can now use
    different dependency types for direct and recursive dependencies.
  * The checking of the size of tarball in R CMD check --as-cran
    &lt;pkg&gt; may be tweaked via the new environment variable
    _R_CHECK_CRAN_INCOMING_TARBALL_THRESHOLD_, as suggested in
    PR#17777 by Jan Gorecki.
  * Using c() to combine a factor with other factors now gives a
    factor, an ordered factor when combining ordered factors with
    identical levels.
  * apply() gains a simplify argument to allow disabling of
    simplification of results.
  * The format() method for class "ftable" gets a new option justify.
    (Suggested by Thomas Soeiro.)
  * New ...names() utility.  (Proposed by Neal Fultz in PR#17705.)
  * type.convert() now warns when its as.is argument is not
    specified, as the help file always said it _should_.  In that
    case, the default is changed to TRUE in line with its change in
    read.table() (related to stringsAsFactor) in R 4.0.0.
  * When printing list arrays, classed objects are now shown _via_
    their format() value if this is a short enough character string,
    or by giving the first elements of their class vector and their
    length.
  * capabilities() gets new entry "Rprof" which is TRUE when R has
    been configured with the equivalent of --enable-R-profiling (as
    it is by default).  (Related to Michael Orlitzky's report
    PR#17836.)
  * str(xS4) now also shows extraneous attributes of an S4 object
    xS4.
  * Rudimentary support for vi-style tags in rtags() and R CMD rtags
    has been added.  (Based on a patch from Neal Fultz in PR#17214.)
  * checkRdContents() is now exported from tools; it and also
    checkDocFiles() have a new option chkInternal allowing to check
    Rd files marked with keyword "internal" as well.  The latter can
    be activated for R CMD check via environment variable
    _R_CHECK_RD_INTERNAL_TOO_.
  * New functions numToBits() and numToInts() extend the raw
    conversion utilities to (double precision) numeric.
  * Functions URLencode() and URLdecode() in package utils now work
    on vectors of URIs.  (Based on patch from Bob Rudis submitted
    with PR#17873.)
  * path.expand() can expand ~user on most Unix-alikes even when
    readline is not in use.  It tries harder to expand ~, for example
    should environment variable HOME be unset.
  * For HTML help (both dynamic and static), Rd file links to help
    pages in external packages are now treated as references to
    topics rather than file names, and fall back to a file link only
    if the topic is not found in the target package. The earlier rule
    which prioritized file names over topics can be restored by
    setting the environment variable _R_HELP_LINKS_TO_TOPICS_ to a
    false value.
  * c() now removes NULL arguments before dispatching to methods,
    thus simplifying the implementation of c() methods, _but_ for
    back compatibility keeps NULL when it is the first argument.
    (From a report and patch proposal by Lionel Henry in PR#17900.)
  * Vectorize()'s result function's environment no longer keeps
    unneeded objects.
  * Function ...elt() now propagates visibility consistently with
    ..n.  (Thanks to Lionel Henry's PR#17905.)
  * capture.output() no longer uses non-standard evaluation to
    evaluate its arguments.  This makes evaluation of functions like
    parent.frame() more consistent.  (Thanks to Lionel Henry's
    PR#17907.)
  * packBits(bits, type="double") now works as inverse of
    numToBits().  (Thanks to Bill Dunlap's proposal in PR#17914.)
  * curlGetHeaders() has two new arguments, timeout to specify the
    timeout for that call (overriding getOption("timeout")) and TLS
    to specify the minimum TLS protocol version to be used for
    https:// URIs (_inter alia_ providing a means to check for sites
    using deprecated TLS versions 1.0 and 1.1).
  * For nls(), an optional constant scaleOffset may be added to the
    denominator of the relative offset convergence test for cases
    where the fit of a model is expected to be exact, thanks to a
    proposal by John Nash.  nls(*, trace=TRUE) now also shows the
    convergence criterion.
  * Numeric differentiation _via_ numericDeriv() gets new optional
    arguments eps and central, the latter for taking central divided
    differences.  The latter can be activated for nls() via
    nls.control(nDcentral = TRUE).
  * nls() now passes the trace and control arguments to getInitial(),
    notably for all self-starting models, so these can also be fit in
    zero-noise situations via a scaleOffset.  For this reason, the
    initial function of a selfStart model must now have ... in its
    argument list.
  * bquote(splice = TRUE) can now splice expression vectors with
    attributes: this makes it possible to splice the result of
    parse(keep.source = TRUE).  (Report and patch provided by Lionel
    Henry in PR#17869.)
  * textConnection() gets an optional name argument.
  * get(), exists(), and get0() now signal an error if the first
    argument has length greater than 1.  Previously additional
    elements were silently ignored.  (Suggested by Antoine Fabri on
    R-devel.)
  * R now provides a shorthand notation for creating functions, e.g.
    \(x) x + 1 is parsed as function(x) x + 1.
  * R now provides a simple native forward pipe syntax |&gt;.  The
    simple form of the forward pipe inserts the left-hand side as the
    first argument in the right-hand side call.  The pipe
    implementation as a syntax transformation was motivated by
    suggestions from Jim Hester and Lionel Henry.
  * all.equal(f, g) for functions now by default also compares their
    environment(.)s, notably via new all.equal method for class
    function.  Comparison of nls() fits, e.g., may now need
    all.equal(m1, m2, check.environment = FALSE).
  * .libPaths() gets a new option include.site, allowing to _not_
    include the site library.  (Thanks to Dario Strbenac's suggestion
    and Gabe Becker's PR#18016.)
  * Lithuanian translations are now available.  (Thanks to Rimantas
    Zakauskas.)
  * names() now works for DOTSXP objects.  On the other hand, in
    R-lang, the R language manual, we now warn against relying on the
    structure or even existence of such dot-dot-dot objects.
  * all.equal() no longer gives an error on DOTSXP objects.
  * capabilities("cairo") now applies only to the file-based devices
    as it is now possible (if very unusual) to build R with Cairo
    support for those but not for X11().
  * There is optional support for tracing the progress of
    loadNamespace() - see its help.
  * (Not Windows.)  l10n_info() reports an additional element, the
    name of the encoding as reported by the OS (which may differ from
    the encoding part (if any) of the result from
    Sys.getlocale("LC_CTYPE").
  * New function gregexec() which generalizes regexec() to find _all_
    disjoint matches and well as all substrings corresponding to
    parenthesized subexpressions of the given regular expression.
    (Contributed by Brodie Gaslam.)
  * New function charClass() in package utils to query the
    wide-character classification functions in use (such as
    iswprint).
  * The names of quantile()'s result no longer depend on the global
    getOption("digits"), but quantile() gets a new optional argument
    digits = 7 instead.
  * grep(), sub(), regexp and variants work considerably faster for
    long factors with few levels.  (Thanks to Michael Chirico's
    PR#18063.)
  * Provide grouping of x11() graphics windows within a window
    manager such as Gnome or Unity; thanks to a patch by Ivan Krylov
    posted to R-devel.
  * The split() method for class data.frame now allows the f argument
    to be specified as a formula.
  * sprintf now warns on arguments unused by the format string.
  * New palettes "Rocket" and "Mako" for hcl.colors() (approximating
    palettes of the same name from the 'viridisLite' package).
    Contributed by Achim Zeileis.
  * The base environment and its namespace are now locked (so one can
    no longer add bindings to these or remove from these).
  * Rterm handling of multi-byte characters has been improved,
    allowing use of such characters when supported by the current
    locale.
  * Rterm now accepts ALT+ +xxxxxxxx sequences to enter Unicode
    characters as hex digits.
  * Environment variable LC_ALL on Windows now takes precedence over
    LC_CTYPE and variables for other supported categories, matching
    the POSIX behaviour.
  * duplicated() and anyDuplicated() are now optimized for integer
    and real vectors that are known to be sorted via the ALTREP
    framework. Contributed by Gabriel Becker via PR#17993.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 14
    and so packages that provide graphics devices should be
    reinstalled.
  * Graphics devices should now specify deviceVersion to indicate
    what version of the graphics engine they support.
  * Graphics devices can now specify deviceClip.  If TRUE, the
    graphics engine will never perform any clipping of output itself.
    The clipping that the graphics engine does perform (for both
    canClip = TRUE and canClip = FALSE) has been improved to avoid
    producing unnecessary artifacts in clipped output.
  * The grid package now allows gpar(fill) to be a linearGradient(),
    a radialGradient(), or a pattern().  The viewport(clip) can now
    also be a grob, which defines a clipping path, and there is a new
    viewport(mask) that can also be a grob, which defines a mask.
    These new features are only supported so far on the Cairo-based
    graphics devices and on the pdf() device.
  * (Not Windows.)  A warning is given when a Cairo-based type is
    specified for a png(), jpeg(), tiff() or bmp() device but Cairo
    is unsupported (so type = "Xlib" is tried instead).
  * grSoftVersion() now reports the versions of FreeType and
    FontConfig if they are used directly (not _via_ Pango), as is
    most commonly done on macOS.
  C-LEVEL FACILITIES:
  * The _standalone_ libRmath math library and R's C API now provide
    log1pexp() again as documented, and gain log1mexp().
  INSTALLATION on a UNIX-ALIKE:
  * configure checks for a program pkgconf if program pkg-config is
    not found.  These are now only looked for on the path (like
    almost all other programs) so if needed specify a full path to
    the command in PKG_CONFIG, for example in file config.site.
  * C99 function iswblank is required - it was last seen missing ca
    2003 so the workaround has been removed.
  * There are new configure options --with-internal-iswxxxxx,
  - -with-internal-towlower and --with-internal-wcwidth which allows
    the system functions for wide-character classification,
    case-switching and width (wcwidth and wcswidth) to be replaced by
    internal ones.  The first has long been used on macOS, AIX (and
    Windows) but this enables it to be unselected there and selected
    for other platforms (it is the new default on Solaris).  The
    second is new in this version of R and is selected by default on
    macOS and Solaris.  The third has long been the default and
    remains so as it contains customizations for East Asian
    languages.
    System versions of these functions are often minimally
    implemented (sometimes only for ASCII characters) and may not
    cover the full range of Unicode points: for example Solaris (and
    Windows) only cover the Basic Multilingual Plane.
  * Cairo installations without X11 are more likely to be detected by
    configure, when the file-based Cairo graphics devices will be
    available but not X11(type = "cairo").
  * There is a new configure option --with-static-cairo which is the
    default on macOS.  This should be used when only static cairo
    (and where relevant, Pango) libraries are available.
  * Cairo-based graphics devices on platforms without Pango but with
    FreeType/FontConfig will make use of the latter for font
    selection.
  LINK-TIME OPTIMIZATION on a UNIX-ALIKE:
  * Configuring with flag --enable-lto=R now also uses LTO when
    installing the recommended packages.
  * R CMD INSTALL and R CMD SHLIB have a new flag --use-LTO to use
    LTO when compiling code, for use with R configured with
  - -enable-lto=R.  For R configured with --enable-lto, they have
    the new flag --no-use-LTO.
    Packages can opt in or out of LTO compilation _via_ a UseLTO
    field in the DESCRIPTION file.  (As usual this can be overridden
    by the command-line flags.)
  BUILDING R on Windows:
  * for GCC &gt;= 8, FC_LEN_T is defined in config.h and hence character
    lengths are passed from C to Fortran in _inter alia_ BLAS and
    LAPACK calls.
  * There is a new text file src/gnuwin32/README.compilation, which
    outlines how C/Fortran code compilation is organized and
    documents new features:
  * R can be built with Link-Time Optimization with a suitable
    compiler - doing so with GCC 9.2 showed several
    inconsistencies which have been corrected.
  * There is support for cross-compiling the C and Fortran code
    in R and standard packages on suitable (Linux) platforms.
    This is mainly intended to allow developers to test later
    versions of compilers - for example using GCC 9.2 or 10.x has
    detected issues that GCC 8.3 in Rtools40 does not.
  * There is experimental support for cross-building R packages
    with C, C++ and/or Fortran code.
  * The R installer can now be optionally built to support a single
    architecture (only 64-bit or only 32-bit).
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++14 where
    available (which it is on all currently checked platforms): if
    not (as before) C++11 is used if available otherwise C++ is not
    supported.
    Packages which specify C++11 will still be installed using C++11.
    C++14 compilers may give deprecation warnings, most often for
    std::random_shuffle (deprecated in C++14 and removed in C++17).
    Either specify C++11 (see 'Writing R Extensions') or modernize
    the code and if needed specify C++14.  The latter has been
    supported since R 3.4.0 so the package's DESCRIPTION would need
    to include something like
    Depends: R (&gt;= 3.4)
  PACKAGE INSTALLATION on Windows:
  * R CMD INSTALL and R CMD SHLIB make use of their flag --use-LTO
    when the LTO_OPT make macro is set in file etc/${R_ARCH}/Makeconf
    or in a personal/site Makevars file.  (For details see 'Writing R
    Extensions' SS4.5.)
    This provides a valuable check on code consistency.  It does work
    with GCC 8.3 as in Rtools40, but that does not detect everything
    the CRAN checks with current GCC do.
  PACKAGE INSTALLATION on macOS:
  * The default personal library directory on builds with
  - -enable-aqua (including CRAN builds) now differs by CPU type,
    one of
    ~/Library/R/x86_64/x.y/library
    ~/Library/R/arm64/x.y/library
    This uses the CPU type R (and hence the packages) were built for,
    so when a x86_64 build of R is run under Rosetta emulation on an
    arm64 Mac, the first is used.
  UTILITIES:
  * R CMD check can now scan package functions for bogus return
    statements, which were possibly intended as return() calls (wish
    of PR#17180, patch by Sebastian Meyer). This check can be
    activated via the new environment variable
    _R_CHECK_BOGUS_RETURN_, true for --as-cran.
  * R CMD build omits tarballs and binaries of previous builds from
    the top-level package directory.  (PR#17828, patch by Sebastian
    Meyer.)
  * R CMD check now runs sanity checks on the use of LazyData, for
    example that a data directory is present and that
    LazyDataCompression is not specified without LazyData and has a
    documented value.  For packages with large LazyData databases
    without specifying LazyDataCompression, there is a reference to
    the code given in 'Writing R Extensions' SS1.1.6 to test the
    choice of compression (as in all the CRAN packages tested a
    non-default method was preferred).
  * R CMD build removes LazyData and LazyDataCompression fields from
    the DESCRIPTION file of packages without a data directory.
  ENCODING-RELATED CHANGES:
  * The parser now treats \Unnnnnnnn escapes larger than the upper
    limit for Unicode points (\U10FFFF) as an error as they cannot be
    represented by valid UTF-8.
    Where such escapes are used for outputting non-printable
    (including unassigned) characters, 6 hex digits are used (rather
    than 8 with leading zeros).  For clarity, braces are used, for
    example \U{0effff}.
  * The parser now looks for non-ASCII spaces on Solaris (as
    previously on most other OSes).
  * There are warnings (including from the parser) on the use of
    unpaired surrogate Unicode points such as \uD834.  (These cannot
    be converted to valid UTF-8.)
  * Functions nchar(), tolower(), toupper() and chartr() and those
    using regular expressions have more support for inputs with a
    marked Latin-1 encoding.
  * The character-classification functions used (by default) to
    replace the system iswxxxxx functions on Windows, macOS and AIX
    have been updated to Unicode 13.0.0.
    The character-width tables have been updated to include new
    assignments in Unicode 13.0.0.
  * The code for evaluating default (extended) regular expressions
    now uses the same character-classification functions as the rest
    of R (previously they differed on Windows, macOS and AIX).
  * There is a build-time option to replace the system's
    wide-character wctrans C function by tables shipped with R: use
    configure option --with-internal-towlower or (on Windows)
  - DUSE_RI18N_CASE in CFLAGS when building R.  This may be needed
    to allow tolower() and toupper() to work with Unicode characters
    beyond the Basic Multilingual Plane where not supported by system
    functions (e.g. on Solaris where it is the new default).
  * R is more careful when truncating UTF-8 and other multi-byte
    strings that are too long to be printed, passed to the system or
    libraries or placed into an internal buffer.  Truncation will no
    longer produce incomplete multibyte characters.
  DEPRECATED AND DEFUNCT:
  * Function plclust() from the package stats and
    package.dependencies(), pkgDepends(), getDepList(),
    installFoundDepends(), and vignetteDepends() from package tools
    are defunct.
  * Defunct functions checkNEWS() and readNEWS() from package tools
    and CRAN.packages() from utils have been removed.
  * R CMD config CXXCPP is defunct (it was deprecated in R 3.6.2).
  * parallel::detectCores() drops support for Irix (retired in 2013).
  * The LINPACK argument to chol.default(), chol2inv(),
    solve.default() and svd() has been defunct since R 3.1.0.  It was
    silently ignored up to R 4.0.3 but now gives an error.
  * Subsetting/indexing, such as ddd[*] or ddd$x on a DOTSXP
    (dot-dot-dot) object ddd has been disabled; it worked by accident
    only and was undocumented.
  BUG FIXES:
  * Many more C-level allocations (mainly by malloc and strdup) are
    checked for success with suitable alternative actions.
  * Bug fix for replayPlot(); this was turning off graphics engine
    display list recording if a recorded plot was replayed in the
    same session.  The impact of the bug became visible if resize the
    device after replay OR if attempted another savePlot() after
    replay (empty display list means empty screen on resize or empty
    saved plot).
  * R CMD check etc now warn when a package exports non-existing S4
    classes or methods, also in case of no "methods" presence.
    (Reported by Alex Bertram; reproducible example and patch by
    Sebastian Meyer in PR#16662.)
  * boxplot() now also accepts calls for labels such as ylab, the
    same as plot().  (Reported by Marius Hofert.)
  * The help page for xtabs() now correctly states that addNA is
    setting na.action = na.pass among others.  (Reported as PR#17770
    by Thomas Soeiro.)
  * The R CMD check &lt;pkg&gt; gives a longer and more comprehensible
    message when DESCRIPTION misses dependencies, e.g., in Imports:.
    (Thanks to the contributors of PR#17179.)
  * update.default() now calls the generic update() on the formula to
    work correctly for models with extended formulas.  (As reported
    and suggested by Neal Fultz in PR#17865.)
  * The horizontal position of leaves in a dendrogram is now correct
    also with center = FALSE.  (PR#14938, patch from Sebastian
    Meyer.)
  * all.equal.POSIXt() no longer warns about and subsequently ignores
    inconsistent "tzone" attributes, but describes the difference in
    its return value (PR#17277).  This check can be disabled _via_
    the new argument check.tzone = FALSE as suggested by Sebastian
    Meyer.
  * as.POSIXct() now populates the "tzone" attribute from its tz
    argument when x is a logical vector consisting entirely of NA
    values.
  * x[[2^31]] &lt;- v now works.  (Thanks to the report and patch by
    Suharto Anggono in PR#17330.)
  * In log-scale graphics, axis() ticks and label positions are now
    computed more carefully and symmetrically in their range,
    typically providing _more_ ticks, fulfilling wishes in PR#17936.
    The change really corresponds to an improved axisTicks() (package
    grDevices), potentially influencing grid and lattice, for
    example.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now correct to at
    least five digits where it was catastrophically wrong,
    previously.
  * sum(df) and similar "Summary"- and "Math"-group member functions
    now work for data frames df with logical columns, notably also of
    zero rows.  (Reported to R-devel by Martin "b706".)
  * unsplit() had trouble with tibbles due to unsound use of rep(NA,
    len)-indexing, which should use NA_integer_ (Reported to R-devel
    by Mario Annau.)
  * pnorm(x, log.p = TRUE) underflows to -Inf slightly later.
  * show(&lt;hidden S4 generic&gt;) prints better and without quotes for
    non-hidden S4 generics.
  * read.table() and relatives treated an "NA" column name as missing
    when check.names = FALSE PR#18007.
  * Parsing strings containing UTF-16 surrogate pairs such as
    "\uD834\uDD1E" works better on some (uncommon) platforms.
    sprintf("%X", utf8ToInt("\uD834\uDD1E")) should now give "1D11E"
    on all platforms.
  * identical(x,y) is no longer true for differing DOTSXP objects,
    fixing PR#18032.
  * str() now works correctly for DOTSXP and related exotics, even
    when these are doomed.
    Additionally, it no longer fails for lists with a class and
    "irregular" method definitions such that e.g. lapply(*) will
    necessarily fail, as currently for different igraph objects.
  * Too long lines in environment files (e.g. Renviron) no longer
    crash R. This limit has been increased to 100,000 bytes.
    (PR#18001.)
  * There is a further workaround for FreeType giving incorrect
    italic font faces with cairo-based graphics devices on macOS.
  * add_datalist(*, force = TRUE) (from package tools) now actually
    updates an existing data/datalist file for new content.  (Thanks
    to a report and patch by Sebastian Meyer in PR#18048.)
  * cut.Date() and cut.POSIXt() could produce an empty last interval
    for breaks = "months" or breaks = "years".  (Reported as PR#18053
    by Christopher Carbone.)
  * Detection of the encoding of 'regular' macOS locales such as
    en_US (which is UTF-8) had been broken by a macOS change:
    fortunately these are now rarely used with en_US.UTF-8 being
    preferred.
  * sub() and gsub(pattern, repl, x, *) now keep attributes of x such
    as names() also when pattern is NA (PR#18079).
  * Time differences ("difftime" objects) get a replacement and a
    rep() method to keep "units" consistent.  (Thanks to a report and
    patch by Nicolas Bennett in PR#18066.)
  * The \RdOpts macro, setting defaults for \Sexpr options in an Rd
    file, had been ineffective since R 2.12.0: it now works again.
    (Thanks to a report and patch by Sebastian Meyer in PR#18073.)
  * mclapply and pvec no longer accidentally terminate parallel
    processes started before by mcparallel or related calls in
    package parallel (PR#18078).
  * grep and other functions for evaluating (extended) regular
    expressions handle in Unicode also strings not explicitly flagged
    UTF-8, but flagged native when running in UTF-8 locale.
  * Fixed a crash in fifo implementation on Windows (PR#18031).
  * Binary mode in fifo on Windows is now properly detected from
    argument open (PR#15600, PR#18031).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1622808000">- The line %{__install} -m 755 -d %{_infodir}
  no longer works in TW or Factory.
  But without that line it works everywhere. So this instruction
  was commented out of the spec file.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1628596800">- CHANGES IN R 4.1.1:
  NEW FEATURES:
  * require(pkg, quietly = TRUE) is quieter and in particular does
    not warn if the package is not found.
  DEPRECATED AND DEFUNCT:
  * Use of ftp:// URIs should be regarded as deprecated, with
    on-going support confined to method = "libcurl" and not routinely
    tested.  (Nowadays no major browser supports them.)
  * The non-default method = "internal" is deprecated for http:// and
    ftp:// URIs for both download.file and url.
  * On Windows, method = "wininet" is deprecated for http://,
    https:// and ftp:// URIs for both download.file and url.  (A
    warning is only given for ftp://.)
    For ftp:// URIs the default method is now "libcurl" if available
    (which it is on CRAN builds).
    method = "wininet" remains the default for http:// and https://
    URIs but if libcurl is available, using method = "libcurl" is
    preferred.
  INSTALLATION:
  * make check now works also without a LaTeX installation.  (Thanks
    to Sebastian Meyer's PR#18103.)
  BUG FIXES:
  * make check-devel works again in an R build configured with
  - -without-recommended-packages.
  * qnbinom(p, size, mu) for large size/mu is correct now in a range
    of cases (PR#18095); similarly for the (size, prob)
    parametrization of the negative binomial.  Also qpois() and
    qbinom() are better and or faster for extreme cases.  The
    underlying C code has been modularized and is common to all four
    cases of discrete distributions.
  * gap.axis is now part of the axis() arguments which are passed
    from bxp(), and hence boxplot().  (Thanks to Martin Smith's
    report and suggestions in PR#18109.)
  * .First and .Last can again be set from the site profile.
  * seq.int(from, to, *) and seq.default(..) now work better in large
    range cases where from-to is infinite where the two boundaries
    are finite.
  * all.equal(x,y) now returns TRUE correctly also when several
    entries of abs(x) and abs(y) are close to .Machine$double.xmax,
    the largest finite numeric.
  * model.frame() now clears the object bit when removing the class
    attribute of a value via na.action (PR#18100).
  * charClass() now works with multi-character strings on Windows
    (PR#18104, fixed by Bill Dunlap).
  * encodeString() on Solaris now works again in Latin-1 encoding on
    characters represented differently in UTF-8.  Support for
    surrogate pairs on Solaris has been improved.
  * file.show() on Windows now works with non-ASCII path names
    representable in the current native encoding (PR#18132).
  * Embedded R on Windows can now find R home directory via the
    registry even when installed only for the current user
    (PR#18135).
  * pretty(x) with finite x now returns finite values also in the
    case where the extreme x values are close in size to the maximal
    representable number .Machine$double.xmax.
    Also, it's been tweaked for very small ranges and when a boundary
    is close (or equal) to zero; e.g., pretty(c(0,1e-317)) no longer
    has negative numbers, currently still warning about a very small
    range, and pretty(2^-(1024 - 2^-1/(c(24,10)))) is more accurate.
  * The error message for not finding vignette files when weaving has
    correct file sizes now. (Thanks to Sebastian Meyer's PR#18154.)
  * dnbinom(20, &lt;large&gt;, 1) now correctly gives 0, and similar cases
    are more accurate with underflow precaution.  (Reported by Francisco Vera Alcivar in PR#18072.)</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635163200">- repaired https://bugzilla.suse.com/show_bug.cgi?id=1191380
  (rpmacros now go to rpmmacrodir)
- minor clean-ups in spec file</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635768000">- CHANGES IN R 4.1.2:
  C-LEVEL FACILITIES:
  * The workaround in headers R.h and Rmath.h (using namespace std;)
    for the Oracle Developer Studio compiler is no longer needed now
    C++11 is required so has been removed.  A couple more usages of
    log() (which should have been std::log()) with an int argument
    are reported on Solaris.
  * The undocumented limit of 4095 bytes on messages from the
    S-compatibility macros PROBLEM and MESSAGE is now documented and
    longer messages will be silently truncated rather than
    potentially causing segfaults.
  * If the R_NO_SEGV_HANDLER environment variable is non-empty, the
    signal handler for SEGV/ILL/BUS signals (which offers recovery
    user interface) is not set. This allows more reliable debugging
    of crashes that involve the console.
  DEPRECATED AND DEFUNCT:
  * The legacy S-compatibility macros PROBLEM, MESSAGE, ERROR, WARN,
    WARNING, RECOVER, ... are deprecated and will be hidden in R
    4.2.0. R's native interface of Rf_error and Rf_warning has long
    been preferred.
  BUG FIXES:
  * .mapply(F, dots, .) no longer segfaults when dots is not a list
    and uses match.fun(F) as always documented; reported by Andrew
    Simmons in PR#18164.
  * hist(&lt;Date&gt;, ...) and hist(&lt;POSIXt&gt;, ...)  no longer pass
    arguments for rect() (such as col and density) to axis().
    (Thanks to Sebastian Meyer's PR#18171.)
  * \Sexpr{ch} now preserves Encoding(ch). (Thanks to report and
    patch by Jeroen Ooms in PR#18152.)
  * Setting the RNG to "Marsaglia-Multicarry" e.g., by RNGkind(), now
    warns in more places, thanks to Andr'e Gillibert's report and
    patch in PR#18168.
  * gray(numeric(), alpha=1/2) no longer segfaults, fixing PR#18183,
    reported by Till Krenz.
  * Fixed dnbinom(x, size=&lt;very_small&gt;, .., log=TRUE) regression,
    reported by Martin Morgan.
  * as.Date.POSIXlt(x) now keeps names(x), thanks to Davis Vaughan's
    report and patch in PR#18188.
  * model.response() now strips an "AsIs" class typically, thanks to
    Duncan Murdoch's report and other discussants in PR#18190.
  * try() is considerably faster in case of an error and long call,
    as e.g., from some do.call().  Thanks to Alexander Kaever's
    suggestion posted to R-devel.
  * qqline(y = &lt;object&gt;) such as y=I(.), now works, see also
    PR#18190.
  * Non-integer mgp par() settings are now handled correctly in
    axis() and mtext(), thanks to Mikael Jagan and Duncan Murdoch's
    report and suggestion in PR#18194.
  * formatC(x) returns length zero character() now, rather than ""
    when x is of length zero, as documented, thanks to Davis
    Vaughan's post to R-devel.
  * removeSource(fn) now retains (other) attributes(fn).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1647000000">- CHANGES IN R 4.1.3:
  NEW FEATURES:
  * The default version of Bioconductor has been changed to 3.14.
    (This is used by setRepositories and the menus in GUIs.)
  UTILITIES:
  * R CMD check --as-cran has a workaround for a bug in versions of
    file up to at least 5.41 which mis-identify DBF files last
    changed in 2022 as executables.
  C-LEVEL FACILITIES:
  * The legacy S-compatibility macros SINGLE_* in R_ext/Constants.h
    (included by R.h) are deprecated and will be removed in R 4.2.0.
  BUG FIXES:
  * Initialization of self-starting nls() models with initialization
    functions following the pre-R-4.1.0 API (without the ...
    argument) works again for now, with a deprecation warning.
  * Fixed quoting of ~autodetect~ in Java setting defaults to avoid
    inadvertent user lookup due to leading ~, reported in PR#18231 by
    Harold Gutch.
  * substr(., start, stop) &lt;- v now treats _negative_ stop values
    correctly.  Reported with a patch in PR#18228 by Brodie Gaslam.
  * Subscripting an array x without dimnames by a
    length(dim(x))-column character matrix gave "random" non-sense,
    now an error; reported in PR#18244 by Mikael Jagan.
  * ...names() now matches names(list(...)) closely, fixing PR#18247.
  * all.equal(*, scale = s) now works as intended when length(s) &gt; 1,
    partly thanks to Michael Chirico's PR#18272.
  * print(x) for long vectors x now also works for named atomic
    vectors or lists and prints the correct number when reaching the
    getOption("max.print") limit; partly thanks to a report and
    proposal by Hugh Parsonage to the R-devel list.
  * all.equal(&lt;selfStart&gt;, *) no longer signals a deprecation
    warning.
  * reformulate(*, response=r) gives a helpful error message now when
    length(r) &gt; 1, thanks to Bill Dunlap's PR#18281.
  * Modifying globalCallingHandlers inside withCallingHandlers() now
    works or fails correctly, thanks to Henrik Bengtsson's PR#18257.
  * hist(&lt;Date&gt;, breaks = "days") and hist(&lt;POSIXt&gt;, breaks = "secs")
    no longer fail for inputs of length 1.
  * qbeta(.001, .9, .009) and similar cases now converge correctly
    thanks to Ben Bolker's report in PR#17746.
  * window(x, start, end) no longer wrongly signals "'start' cannot
    be after 'end'", fixing PR#17527 and PR#18291.
  * data() now checks that its (rarely used) list argument is a
    character vector - a couple of packages passed other types and
    gave incorrect results.
  * which() now checks its arr.ind argument is TRUE rather coercing
    to logical and taking the first element - which gave incorrect
    results in package code.
  * model.weights() and model.offset() more carefully extract their
    model components, thanks to Ben Bolker and Tim Taylor's R-devel
    post.
  * list.files(recursive = TRUE) now shows all broken symlinks
    (previously, some of them may have been omitted, PR#18296).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1650628800">- CHANGES IN R 4.2.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * The formula method of aggregate() now matches the generic in
    naming its first argument x (resolving PR#18299 by Thomas
    Soeiro).
    This means that calling aggregate() with a formula as a named
    first argument requires name formula in earlier versions of R and
    name x now, so portable code should not name the argument (code
    in many packages did).
  * Calling &amp;&amp; or || with either argument of length greater than one
    now gives a warning (which it is intended will become an error).
  * Calling if() or while() with a condition of length greater than
    one gives an error rather than a warning.  Consequently,
    environment variable _R_CHECK_LENGTH_1_CONDITION_ no longer has
    any effect.
  * Windows users should consult the WINDOWS section below for some
    profound changes including
  * Support for 32-bit builds has been dropped.
  * UTF-8 locales are used where available.
  * The default locations for the R installation and personal
    library folder have been changed.
    Thanks to Tomas Kalibera for months of work on the Windows port
    for this release.
  NEW FEATURES:
  * matrix(x, n, m) now warns in more cases where length(x) differs
    from n * m, as suggested by Abby Spurdle and Wolfgang Huber in
    Feb 2021 on the R-devel mailing list.
    This warning can be turned into an error by setting environment
    variable _R_CHECK_MATRIX_DATA_ to TRUE: R CMD check --as-cran
    does so unless it is already set.
  * Function file_test() in package utils gains tests for symlinks,
    readability and writability.
  * capabilities("libxml") is now false.
    The description of capabilities("http/ftp") now reflects that it
    refers to the default method, no longer the internal one.
  * simplify2array() gains an except argument for controlling the
    exceptions used by sapply().
  * Environment variables R_LIBS_USER and R_LIBS_SITE are both now
    set to the R system default if unset or empty, and can be set to
    NULL to indicate an empty list of user or site library
    directories.
  * The warning for axis()(-like) calls in cases of relatively small
    ranges (typically in log-scale situations) is slightly improved
    _and_ suppressed from explicit calls to .axisPars() as has always
    been the intention.
  * The contrasts setter function `contrasts&lt;-` gains an explicit
    default how.many = NULL rather than just using missing(how.many).
  * grid.pretty() gains a new optional argument n = 5.
  * There is a new function .pretty() with option bounds as a
    technical-utility version of pretty().  It and pretty() gain a
    new argument f.min with a better than back-compatible default.
  * Function grDevices::axisTicks() and related functions such as
    graphics::axis() work better, notably for the log scale; partly
    because of the pretty() improvements, but also because care is
    taken e.g., when ylim is finite but diff(ylim) is infinite.
  * nclass.FD() gains a digits option.
  * The R Mathlib internal C function bd0() (called indirectly from a
    dozen probability density and distribution functions such as
    dpois(), dbinom(), dgamma(), pgamma() _etc_) has been
    complemented by a more sophisticated and (mostly) more accurate C
    function ebd0(), currently called only by internal dpois_raw()
    improving accuracy for R level dpois() and potentially others
    calling it such as dnbinom(), dgamma() or pgamma().  (Thanks to
    Morten Welinder's PR#15628.)
  * write.ftable() gains sep = " " argument as suggested by Thomas
    Soeiro.
  * The names of the locale categories supported by R's
    Sys.getlocale() and Sys.setlocale() are now provided by variable
    .LC.categories in the base namespace.
  * The Date and POSIXt methods for hist() and the histogram method
    for plot() now also use the new default col = "lightgray" in
    consistency with the corresponding change to hist()'s default for
    R 4.0.0.
  * hist.default() gains new fuzz argument, and the histogram plot
    method no longer uses fractional axis ticks when displaying
    counts ("Frequency").
  * mapply() and hence Map() now also obey the "max-or-0-if-any"
    recycling rule, such that, e.g., Map(`+`, 1:3, 1[0]) is valid
    now.
  * as.character(&lt;obj&gt;) for "hexmode" or "octmode" objects now
    fulfils the important basic rule as.character(x)[j] ===
    as.character(x[j]).
  * The set utility functions, notably intersect() have been tweaked
    to be more consistent and symmetric in their two set arguments,
    also preserving a common mode.
  * substr(ch, start,end) &lt;- new now e.g., preserves names(ch); ditto
    for substring(), thanks to a patch from Brodie Gaslam.
  * plot(&lt;lm&gt;) gains a extend.ylim.f argument, in partial response to
    PR#15285; further PR#17784 is fixed thanks to several
    contributors and a patch by Elin Waring.  The Cook's dist
    contours get customizable via cook.col and cook.lty with a
    different default color and their legend is nicer by default and
    customizable via cook.legendChanges.
  * Attempting to subset an object that is not subsettable now
    signals an error of class notSubsettableError. The
    non-subsettable object is contained in the object field of the
    error condition.
  * Subscript-out-of-bounds errors are now signaled as errors of
    class subscriptOutOfBoundsError.
  * Stack-overflow errors are now signaled as errors inheriting from
    class stackOverflowError. See ?stackOverflowError for more
    details.
  * New partly experimental Sys.setLanguage() utility, solving the
    main problem of PR#18055.
  * gettext() and gettextf() get a new option trim = TRUE which when
    set to false allows translations for strings such as "Execution
    halted\n" typical for C code.
  * An experimental implementation of hash tables is now available.
    See ?hashtab for more details.
  * identical() gains a extptr.as.ref argument for requesting that
    external pointer objects be compared as reference objects.
  * reorder() gets an argument decreasing which it passes to sort()
    for level creation; based on the wish and patch by Thomas Soeiro
    in PR#18243.
  * as.vector() gains a data.frame method which returns a simple
    named list, also clearing a long standing 'FIXME' to enable
    as.vector(&lt;data.frame&gt;, mode="list").  This breaks code relying
    on as.vector(&lt;data.frame&gt;) to return the unchanged data frame.
  * legend() is now vectorized for arguments cex, x.intersp, and
    text.width.  The latter can now also be specified as a vector
    (one element for each column of the legend) or as NA for
    computing a proper column wise maximum value of strwidth(legend).
    The argument y.intersp can be specified as a vector with one
    entry for each row of the legend.
    legend() also gains new arguments title.cex and title.font.
    Thanks to Swetlana Herbrandt.
  * Deparsing no longer remaps attribute names dim, dimnames, levels,
    names and tsp to historical S-compatible names (which structure()
    maps back).
  * sample() and sample.int() have additional sanity checks on their
    size and n arguments.
    all.equal.numeric() gains a sanity check on its tolerance
    argument - calling all.equal(a, b, c) for three numeric vectors
    is a surprisingly common error.
    mean(na.rm =), rank(na.last =), barplot(legend.text =),
    boxplot(), contour(drawlabels =), polygon(border =) and
    methods::is(class2 =) have more robust sanity checks on their
    arguments.
    R CMD Rd2pdf (used by R CMD check) has a more robust sanity check
    on the format of \alias{} commands.
  * psigamma(x, deriv) for negative x now also works for deriv = 4
    and 5; their underlying C level dpsifn() is documented in
    'Writing R Extensions'.
  * The HTML help system now uses HTML5 (wish of PR#18149).
  * ks.test() now provides exact p-values also with ties and MC
    p-values in the two-sample (Smirnov) case.  By Torsten Hothorn.
  * ks.test() gains a formula interface, with y ~ 1 for the
    one-sample (Kolmogorov) test and y ~ group for the two-sample
    (Smirnov) test.  Contributed by Torsten Hothorn.
  * The return value from ks.test() now has class c("ks.test",
    "htest") - packages using try() need to take care to use
    inherits() and not == on the class.
  * New functions psmirnov(), qsmirnov() and rsmirnov() in package
    stats implementing the asymptotic and exact distributions of the
    two-sample Smirnov statistic.
  * iconv() now allows sub = "c99" to use C99-style escapes for UTF-8
    inputs which cannot be converted to encoding to.
  * In a forward pipe |&gt; expression it is now possible to use a named
    argument with the placeholder _ in the rhs call to specify where
    the lhs is to be inserted.  The placeholder can only appear once
    on the rhs.
  * The included LAPACK sources have been updated to version 3.10.0,
    except for the four Fortran 77 routines which 3.10.0 has
    re-implemented in Fortran 90 (where the older versions have been
    retained as the R build process does not support Fortran 90).
  * path.expand() and most other uses of tilde expansion now warn if
    a path would be too long if expanded.  (An exception is
    file.exists(), which silently returns false.)
  * trunc(&lt;Date&gt;, *) now supports units = "months" or "years" for
    consistency with the POSIXt method, thanks to Dirk Eddelbuettel's
    proposal in PR#18099.
  * list2DF() now checks that its arguments are of the same length,
    rather than use recycling.
  * The HTML help system has several new features: LaTeX-like math
    can be typeset using either KaTeX or MathJax, usage and example
    code is highlighted using Prism, and for dynamic help the output
    of examples and demos can be shown within the browser if the
    knitr package is installed. These features can be disabled by
    setting the environment variable _R_HELP_ENABLE_ENHANCED_HTML_ to
    a false value.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 15
    and so packages that provide graphics devices should be
    reinstalled.
  * The grid package now allows the user to specify a "vector" of
    pattern fills.  The fill argument to gpar() accepts a list of
    gradients and/or patterns and the functions linearGradient(),
    radialGradient(), and pattern() have a new group argument.
    Points grobs (data symbols) can now also have a pattern fill.
    The grobCoords() function now returns a more informative and
    complex result.
  * The grid package has new functions for drawing isolated groups:
    grid.group(), grid.define(), and grid.use().  These functions add
    compositing operators and affine transformations to R's graphics
    capabilities.
    The grid package also has new functions for stroking and filling
    paths: grid.stroke(), grid.fill(), and grid.fillStroke().
    A new function as.path() allows the user to specify the fill rule
    for a path that is to be used for clipping, stroking, or filling;
    available options are "winding" and "evenodd".  A new function
    as.mask() allows the user to specify the type of a mask;
    available options are "alpha" and "luminance".
    These new features are only supported so far (at most) on the
    Cairo-based graphics devices and on the pdf() device.
  * dev.capabilities() reports on device support for the new
    features.
  * par() now warns about unnamed non-character arguments to prevent
    misuse such as {usr &lt;- par("usr"); par(usr)}.
  INSTALLATION:
  * Facilities for accessing ftp:// sites are no longer tested
    (except _pro tem_ for curlGetHeaders()) as modern browsers have
    removed support.
  * R can now be built with DEFS = -DSTRICT_R_HEADERS .
  PACKAGE INSTALLATION:
  * R CMD INSTALL no longer tangles vignettes. This completes an R
    CMD build change in R 3.0.0 and affects packages built before R
    3.0.2. Such packages should be re-made with R CMD build to have
    the tangled R code of vignettes shipped with the tarball.
  * USE_FC_LEN_T will become the default: this uses the correct
    prototypes for Fortran BLAS/LAPACK routines called from C/C++,
    and requires adjustment of most such calls - see 'Writing R
    Extensions' SS6.6.2.  (This has been supported since R 3.6.2.)
  * Package installation speed for packages installed with
    keep.source has been improved. This resolve the issue reported by
    Ofek Shilon in PR#18236.
  UTILITIES:
  * R CMD check can optionally report files/directories left behind
    in home, /tmp (even though TMPDIR is set) and other directories.
    See the "R Internals" manual for details.
  * R CMD check now reports byte-compilation errors during
    installation.  These are not usually fatal but may result in
    parts of the package not being byte-compiled.
  * _R_CHECK_DEPENDS_ONLY_ can be applied selectively to examples,
    tests and/or vignettes in R CMD check: see the "R Internals"
    manual.
  * _R_CHECK_SRC_MINUS_W_IMPLICIT_ now defaults to true: recent
    versions of Apple clang on macOS have made implicit function
    declarations in C into a compilation error.
  * R CMD check --as-cran makes use of the environment variable
    AUTORECONF.  See the "R Internals" manual SS8 for further details.
  * R CMD check --use-valgrind also uses valgrind when re-building
    vignettes as some non-Sweave vignettes unhelpfully comment out
    all their code when R CMD check runs vignettes.
  * Errors in re-building vignettes (unless there are LaTeX errors)
    are reported by R CMD check as ERROR rather than WARNING when
    running vignettes has been skipped (as it frequently is in CRAN
    checks and by --as-cran).
  * R CMD Rd2pdf gains a --quiet option that is used by R CMD build
    when building the PDF package manual.
  * R CMD Rd2pdf now always runs LaTeX in batch mode, consistent with
    Texinfo &gt;= 6.7. The --batch option is ignored.
  * R CMD build and R CMD check now include the Rd file name and line
    numbers in the error message of an \Sexpr evaluation failure.
  * For packages using the \doi Rd macro (now an install-time \Sexpr)
    but no other dynamic Rd content, R CMD build now produces a
    smaller tarball and is considerably faster - skipping temporary
    package installation.
  C-LEVEL FACILITIES:
  * The non-API header R_ext/R-ftp-http.h is no longer provided, as
    the entry points it covered are now all defunct.
  * A number of non-API declarations and macro definitions have been
    moved from the installed header Rinternals.h to the internal
    header Defn.h. Packages that only use entry points and
    definitions documented to be part of the API as specified in
    'Writing R Extensions' SS6 should not be affected.
  * The macro USE_RINTERNALS no longer has any effect when compiling
    package code.  Packages which also use R_NO_REMAP will need to
    ensure that the remapped names are used for calls to API
    functions that were formerly also made available as macros.
  * The deprecated legacy S-compatibility macros PROBLEM, MESSAGE,
    ERROR, WARN, WARNING, RECOVER, ... are no longer defined in
    R_exts/RS.h (included by R.h).  Replace these by calls to
    Rf_error and Rf_warning (defined in header R_ext/Error.h included
    by R.h).
    Header R_ext/RS.h no longer includes R_ext/Error.h.
  * Header R_ext/Constants.h (included by R.h) when included from C++
    now includes the C++ header cfloat rather than the C header
    float.h (now possible as C++11 is required).
  * The legacy S-compatibility macros DOUBLE_* in R_ext/Constants.h
    (included by R.h) are deprecated.
  * The deprecated S-compatibility macros SINGLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * R_Calloc, R_Free and R_Realloc are preferred to their unprefixed
    forms and error messages now use the prefix. These forms were
    introduced in R 3.4.0 and are available even when
    STRICT_R_HEADERS is defined.
  * rmultinom has been documented in 'Writing R Extensions' SS6 so is
    now part of the R API.
  * Similarly, Rtanpi, called from R level tanpi() is now part of the
    R API.
  * The long-deprecated, undocumented and non-API entry point call_R
    is no longer declared in R_ext/RS.h (included by R.h).
  * The header S.h which has been unsupported since Jan 2016 has been
    removed.  Use R.h instead.
  DEPRECATED AND DEFUNCT:
  * The (non-default and deprecated) method = "internal" for
    download.file() and url() no longer supports http:// nor ftp://
    URIs.  (It is used only for file:// URIs.)
    On Windows, download.file(method = "wininet") no longer supports
    ftp:// URIs.  (It is no longer the default method, which is
    "libcurl" and does.)
    On Windows, the deprecated method = "wininet" now gives a warning
    for http:// and https:// URIs for both download.file() and url().
    (It is no longer the default method.)
  * On Windows, the command-line option --max-mem-size and
    environment variable R_MAX_MEM_SIZE are defunct.  The memory
    allocation limit was important for 32-bit builds, but these are
    no longer supported.
  * default.stringsAsFactors() is now formally deprecated, where that
    was only mentioned on its regular help page, previously.  So it
    now gives a warning if called.
  * unix.time() is defunct now; it had been deprecated since R 3.4.0.
  BUG FIXES:
  * Setting digits = 0 in format(), print.default() (and hence
    typically print()) or options() is again invalid.  Its behaviour
    was platform-dependent, and it is unclear what "zero significant
    digits" should mean (PR#18098).
  * Messages from C code in the cairo section of package grDevices
    are now also offered for translation, thanks to Michael Chirico's
    PR#18123.
  * mean(x) with finite x now is finite also without "long.double"
    capability.
  * R CMD Rd2pdf no longer leaves an empty build directory behind
    when it aborts due to an already existing output file.  (Thanks
    to Sebastian Meyer's PR#18141.)
  * density(x, weights = w, na.rm = TRUE) when anyNA(x) is true, now
    removes weights "in parallel" to x, fixing PR#18151, reported by
    Matthias Gondan.  Additionally, it gets a subdensity option.
  * Conversion of \Sexpr[]{&lt;expR&gt;} to LaTeX or HTML no longer
    produces long blocks of empty lines when &lt;expR&gt; itself contains
    several lines all producing empty output.  Thanks to a report and
    patch by Ivan Krylov posted to R-devel.
  * R CMD build no longer fails if a package vignette uses child
    documents and inst/doc exists.  (Thanks to Sebastian Meyer's
    PR#18156.)
  * When an R documentation ('help' source) file man/foo.Rd in a
    package has \donttest{..} examples with a syntax error, it is now
    signalled as ERROR and with correct line numbers relating to the
  * -Ex.R file, thanks to Duncan Murdoch and Sebastian Meyer's
    reports and patch proposals in PR#17501.
  * Improved determination of the correct translation domain in
    non-base packages, addressing the combination of PR#18092 and
    PR#17998 (#c6) with reports and _augmented_ patch #2904 by
    Suharto Anggono.
    Note that "R-base" is no longer the default domain e.g., for
    top-level calls to gettext(); rather translation needs explicit
    domain = * specification in such cases.
  * identical(attrib.as.set=FALSE) now works correctly with data
    frames with default row names (Thanks to Charlie Gao's PR#18179).
  * txtProgressBar() now enforces a non-zero width for argument char,
    without which no progress can be visible.
  * dimnames(table(d)) is more consistent in the case where d is a
    list with a single component, thanks to Thomas Soeiro's report to
    R-devel.
    Further, table(d1, d2) now gives an error when d1 and d2 are data
    frames as suggested by Thomas in PR#18224.
  * Fix for drawing semi-transparent lines and fills on the native
    Windows graphics device (PR#18219 and PR#16694).  Thanks to Nick
    Ray for helpful diagnosis on Bugzilla.
  * The deparser now wraps sub-expressions such as if(A) ..  with
    parentheses when needed; thanks to Duncan Murdoch's PR#18232 and
    Lionel Henry's patches there.
  * remove.packages() no longer tries to uninstall Priority: base
    packages, thanks to a report and suggestions by Colin Fay in
    PR#18227.
  * win.metafile() now has xpinch and ypinch arguments so that the
    user can override Windows' (potentially wrong) guess at device
    dimensions.
  * x[i] and x[[i]] for non-integer i should now behave in all cases
    as always documented: the index used is equivalent to
    as.integer(i) unless that would overflow where trunc(i) is used
    instead; thanks to Suharto Anggono's report and patch proposals
    in PR#17977.
  * asOneSidedFormula() now associates the resulting formula with the
    global environment rather than the evaluation environment created
    for the call.
  * &lt;bibentry&gt;$name now matches the field name case-insensitively,
    consistent with bibentry() creation and the replacement method.
  * cbind() failed to detect some length mismatches with a mixture of
    time-series and non-time-series inputs.
  * The default LaTeX style file Sweave.sty used by the RweaveLatex
    driver no longer loads the obsolete ae package; thanks to a
    report by Thomas Soeiro in PR#18271.  Furthermore, it now skips
    \usepackage[T1]{fontenc} for engines other than pdfTeX (if
    detected) or if the new [nofontenc] option is used.
  * smooth.spline() now stores its logical cv argument more safely,
    fixing a rare bug when printing, and also stores n.
  * smooth.spline(x,y,*) now computes the cv.crit statistic
    correctly, also when is.unsorted(x), fixing PR#18294.
  * The data.frame method of rbind() now warns when binding
    not-wholly-recycling vectors, by analogy to the default method
    (for matrices).
  * setAs() finds the correct class for name to when multiple
    packages define a class with that name. Thanks to Gabor Csardi
    for the report.
  * Fix for detaching a package when two classes of the same name are
    present in method signatures for the same generic. Thanks to
    Gabor Csardi for the report.
  * match.arg("", c("", "a", "B")) gives a better error message, in
    part from PR#17959, thanks to Elin Waring.
  * R CMD Sweave --clean no longer removes pre-existing files or
    subdirectories (PR#18242).
  * The quartz() device no longer splits polylines into subpaths.
    That has caused narrowly-spaced lines with many points to always
    look solid even when dashed line type was used due to dash phase
    restarts.
  * Deparsing constructs such as quote(1 + `!`(2) + 3) works again as
    before R 3.5.0, thanks to the report and patch in PR#18284 by
    Suharto Anggono.
  * as.list(f) for a factor f now keeps names(f), fixing PR#18309.
  * qbeta(.001, .9, .009) and analogous qf() calls now return a
    correct value instead of NaN or wrongly 1, all with a warning;
    thanks to the report by Ludger Goeminne in PR#18302.
  * plot.lm() failed to produce the plot of residuals vs.  factor
    levels (i.e., which=5 when leverages are constant) for models
    with character predictors (PR#17840).
  * interaction.plot(..., xtick = TRUE) misplaced the x-axis line
    (PR#18305).
  * Not strictly fixing a bug, format()ing and print()ing of
    non-finite Date and POSIXt values NaN and +/-Inf no longer show
    as NA but the respective string, e.g., Inf, for consistency with
    numeric vector's behaviour, fulfilling the wish of PR#18308.
  * R CMD check no longer runs test scripts generated from
    corresponding .Rin files twice and now signals an ERROR if
    processing an .Rin script fails.
  * tools::Rd2txt() used for plain-text help pages now renders \hrefs
    (if tools::Rd2txt_options(showURLs = TRUE)) and \urls with
    percent-encoding and standards-compliant delimiting style (angle
    brackets and no URL: prefix).  \email is now rendered with a
    mailto: prefix.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1655985600">- CHANGES IN R 4.2.1:
  NEW FEATURES:
  * New function utils::findCRANmirror() to find out if a CRAN mirror
    has been selected, otherwise fallback to the main site.  This
    behaves in the same way as tools::CRAN_package_db() and is
    intended for packages wishing to access CRAN for purposes other
    than installing packages.
    The need for this was shown by a day when the main CRAN website
    was offline and a dozen or so packages which had its URL
    hardcoded failed their checks.
  INSTALLATION on a UNIX-ALIKE:
  * The libraries searched for by --with-blas (without a value) now
    include BLIS (after OpenBLAS but before ATLAS).  And on macOS,
    the Accelerate framework (after ATLAS).  (This is patterned after
    the AX_BLAS macro from the Autoconf Archive.)
  * The included LAPACK sources have been updated to 3.10.1.
  UTILITIES:
  * The (full path to) the command tidy to be used for HTML
    validation can be set by environment variable R_TIDYCMD.
  * Setting environment variable _R_CHECK_RD_VALIDATE_RD2HTML_ to a
    false value will override R CMD check --as-cran and turn off HTML
    validation.  This provides a way to circumvent a problematic
    tidy.
    The 2006 version that ships with macOS is always skipped.
  C-LEVEL FACILITIES:
  * The undocumented legacy declarations of Sint, Sfloat, SINT_MAX
    and SINT_MIN in header R.h are deprecated.
  BUG FIXES:
  * fisher.test(d) no longer segfaults for "large" d; fixing PR#18336
    by preventing/detecting an integer overflow reliably.
  * tar(., files=*) now produces correctly the warning about invalid
    uid or gid of files, fixing PR#18344, reported by Martin Morgan.
  * tk_choose.files() with multi = FALSE misbehaved on paths
    containing spaces (PR#18334) (regression introduced in R 4.0.0).
  * sort(x, partial = ind, *) now works correctly notably for the
    non-default na.last = FALSE or TRUE, fixing PR#18335 reported by
    James Edwards.
  * Environment variable _R_CHECK_XREFS_REPOSITORIES_ is only used
    for checking .Rd cross-references in R CMD check (as documented)
    and not for other uses looking for a CRAN mirror.
  * The search for a CRAN mirror when checking packages now uses
    getOption("repos") if that specifies a CRAN mirror, even when it
    does not also specify all three Bioconductor repositories (as was
    previously required).
  * The HTML code generated by tools::Rd2HTML() has been improved to
    pass tidy 5.8.0.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1667217600">- CHANGES IN R 4.2.2:
  NEW FEATURES:
  * tools::Rdiff(useDiff = TRUE) checks for the presence of an
    external diff command and switches to useDiff = FALSE if none is
    found.  This allows R CMD Rdiff to always work.
  * On Windows, environment variable R_LIBCURL_SSL_REVOKE_BEST_EFFORT
    can be used to switch to only 'best-effort' SSL certificate
    revocation checks with the default "libcurl" download method.
    This reduces security, but may be needed for downloads to work
    with MITM proxies (PR#18379).
  * (macOS) The run-time check for libraries from XQuartz for X11 and
    Tcl/Tk no longer uses otool from the Apple Developer Tools
    (PR#18400).
  * The LaTeX style for producing the PDF manuals, Rd.sty, now loads
    the standard amsmath, amsfonts and amssymb packages for greater
    coverage of math commands in the Rd \eqn and \deqn macros.  The
    \mathscr LaTeX command is also provided (via the mathrsfs
    package, if available, or the amsfonts bundle otherwise),
    fulfilling the wish of PR#18398.
  * (Windows) The default format of readClipboard() and
    writeClipboard() has been changed to 13 (CF_UNICODETEXT).
  INSTALLATION on a UNIX-ALIKE:
  * The PDF manuals (if built) can be compacted by the new target
    make compact-pdf (at the top level or in directory doc/manual).
  * There is now configure support for LLVM clang 15 on Linux, which
    defaults to position-independent (PIE) executables whereas
    gfortran does not.
  * Many small changes to ease compilation (and suppress warnings)
    with LLVM clang 15.
  BUG FIXES:
  * Rscript -e would fail if stdin were closed (Reported by Henrik
    Bengtsson.)
  * qt(*, log.p=TRUE) in outer tails no longer produces NaN in its
    final steps, thus fixing PR#18360.
  * tools::Rd2latex() now escapes hashes and ampersands when writing
    URLs, fixing LaTeX errors with such URLs in \tabular.
  * When isGeneric(f, fdef=*) is used with mismatching names, the
    warning is better understandable; reported (with fix) in PR#18370
    by Gabe Becker.
  * poly(x, n) now works again (and is now documented) when x is a
    "Date" or "POSIXct" object, or of another class while fulfilling
    mode(x) == "numeric".  This also enables poly(x, *, raw=TRUE) for
    such variables.  Reported by Michael Chirico to R-devel.
  * write.table(), write.csv() and write.csv2() restore their
    numerical precision (internal equivalent of digits = 15) after an
    interrupt (PR#18384).
  * One can now read also byte FF from a clipboard connection
    (PR#18385).
  * source("") and source(character()) now give more helpful error
    messages.
  * R CMD check --as-cran set _R_CHECK_TIMINGS_ too late to have the
    intended effect.
  * as.POSIXlt(x) now also works with very large dates x, fixing
    PR#18401 reported by Hannes M"uhleisen.
  * Files can now be extracted even from very large zip archives
    (PR#18390, thanks to Martin Jakt).
  * Non-finite objects of class "POSIXlt" are now correctly coerced
    to classes "Date" and "POSIXct"; following up on the extension to
    format() them correctly.
  * Added methods for is.finite(), is.infinite() and is.nan() for
    "POSIXlt" date-time objects.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1678881600">- CHANGES IN R 4.2.3:
  C-LEVEL FACILITIES:
  * The definition of DL_FUNC in R_ext/Rdynload.h has been changed to
    be fully C-compliant.  This means that functions loaded _via_ for
    example R_GetCCallable need to be cast to an appropriate type if
    they have any arguments.
  * .Machine has a new element sizeof.time_t to identify old systems
    with a 32-bit type and hence a limited range of date-times (and
    limited support for dates millions of years from present).
  PACKAGE INSTALLATION:
  * (Windows) The default C++ standard had accidentally been left at
    C++11 when it was changed to C++14 on Unix.
  BUG FIXES:
  * As "POSIXlt" objects may be "partially filled" and their list
    components meant to be recycled, length() now is the length of
    the longest component.
  * as.POSIXlt.Date() could underflow for dates in the far past (more
    than half a million years BCE).
  * as.Date.POSIXlt(x) would return "1970-01-01" instead of NA in R
    4.2.2, e.g., for
    x &lt;- as.POSIXlt(c("2019-01-30","2001-1-1"))
    x$mon &lt;- c(0L, NA); as.Date(x)
  * R CMD check failed to apply enabled _R_CHECK_SUGGESTS_ONLY_ to
    examples and vignettes (regression in R 4.2.0).
  * R CMD check did not re-build vignettes in separate processes by
    default (regression in R 4.2.0).
  * Running examples from HTML documentation now restores previous
    knitr settings and options (PR#18420).
  * Quartz: fonts are now located using Core Graphics API instead of
    deprecated ATS which is no longer supported in the macOS 13 SDK
    (PR#18426).  This also addresses an issue where the currently
    used font in the Quartz device context was not correctly
    retained.
  * (Windows) Math symbols in text drawing functions are again
    rendered correctly (PR#18440).  This fixes a regression in R
    4.2.1 caused by a fix in PR#18382 which uncovered an issue in
    GraphApp due to which the symbol charset was not used with TT
    Symbol font face.
  * (Windows) Installing a package with a src/Makefile.{win,ucrt}
    file includes ~/.R/Makevars.win64 in the search for user
    makevars, as documented in "R Installation and Administration"
    and done for packages with a src/Makevars.{win,ucrt} file.
  * format(&lt;POSIXlt_w/_unbalanced_sec&gt;, "....%OS&lt;n&gt;") with n &gt; 0 no
    longer accidentally uses the unbalanced seconds, thanks to
    Suharto Anggono's report (including patch) in PR#18448.
  * solve.default(a, b) works around issues with some versions of
    LAPACK when a contains NA or NaN values.
  * When UseMethod() cannot dispatch, it no longer segfaults
    producing the error message in case of a long class(), thanks to
    Joris Vankerschaver's report (including patch) in PR#18447.
  * When example(foo, ..) produces graphics on an interactive device
    it needs to open itself, it now leaves devAskNewPage() unchanged
    even when it was FALSE, thus fixing a 14 years old '&lt;FIXME&gt;'.
  * packageDescription() again catches errors from encoding
    conversions. This also fixes broken packageVersion() in C locale
    on systems where iconv does not support transliteration.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1681128000">- add patch to build with libcurl &gt;= 8</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1682078400">- CHANGES IN R 4.3.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Calling &amp;&amp; or || with LHS or (if evaluated) RHS of length greater
    than one is now always an error, with a report of the form
    'length = 4' in coercion to 'logical(1)'
    Environment variable _R_CHECK_LENGTH_1_LOGIC2_ no longer has any
    effect.
  NEW FEATURES:
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.10.1.  (This caused some platform-dependent
    changes to package check output.)  And then to the sources from
    LAPACK version 3.11.0 (with changes only to double complex
    subroutines).
  * The included LAPACK sources have been updated to include the four
    Fortran 90 routines rather than their Fortran 77 predecessors.
    This may give some different signs in SVDs or
    eigendecompositions..  (This completes the transition to LAPACK
    3.10.x begun in R 4.2.0.)
  * The LAPACK sources have been updated to version 3.11.0.  (No new
    subroutines have been added, so this almost entirely bug fixes:
    Those fixes do affect some computations with NaNs, including R's
    NA.)
  * The parser now signals _classed_ errors, notably in case of the
    pipe operator |&gt;.  The error object and message now give line and
    column numbers, mostly as proposed and provided by Duncan Murdoch
    in PR#18328.
  * toeplitz() is now generalized for asymmetric cases, with a
    toeplitz2() variant.
  * xy.coords() and xyz.coords() and consequently, e.g., plot(x,y,
    log = "y") now signal a _classed_ warning about negative values
    of y (where log(.) is NA).  Such a warning can be specifically
    suppressed or caught otherwise.
  * Regular expression functions now check more thoroughly whether
    their inputs are valid strings (in their encoding, e.g. in
    UTF-8).
  * The performance of grep(), sub(), gsub() and strsplit() has been
    improved, particularly with perl = TRUE and fixed = TRUE.  Use of
    useBytes = TRUE for performance reasons should no longer be
    needed and is discouraged: it may lead to incorrect results.
  * apropos() gains an argument dot_internals which is used by the
    completion (help(rcompgen)) engine to also see base internals
    such as .POSIXct().
  * Support in tools::Rdiff() for comparing uncompressed PDF files is
    further reduced - see its help page.
  * qqplot(x, y, ...) gains conf.level and conf.args arguments for
    computing and plotting a confidence band for the treatment
    function transforming the distribution of x into the distribution
    of y (Switzer, 1976, _Biometrika_). Contributed by Torsten
    Hothorn.
  * Performance of package_dependencies() has been improved for cases
    when the number of dependencies is large.
  * Strings newly created by gsub(), sub() and strsplit(), when any
    of the inputs is marked as "bytes", are also marked as "bytes".
    This reduces the risk of creating invalid strings and accidental
    substitution of bytes deemed invalid.
  * Support for readLines(encoding = "bytes") has been added to allow
    processing special text files byte-by-byte, without creating
    invalid strings.
  * iconv(from = "") now takes into account any declared encoding of
    the input elements and uses it in preference to the native
    encoding.  This reduces the risk of accidental creation of
    invalid strings, particularly when different elements of the
    input have different encoding (including "bytes").
  * Package repositories in getOption("repos") are now initialized
    from the repositories file when utils is loaded (if not already
    set, e.g., in .Rprofile).  (From a report and patch proposal by
    Gabriel Becker in PR#18405.)
  * compactPDF() gets a verbose option.
  * type.convert() and hence read.table() get new option tryLogical =
    TRUE with back compatible default.  When set to false, converts
    "F" or "T" columns to character.
  * Added new unit prefixes "R" and "Q" for abbreviating
    (unrealistically large) sizes beyond 10^{27} in standard = "SI",
    thanks to Henrik Bengtsson's PR#18435.
  * as.data.frame()'s default method now also works fine with atomic
    objects inheriting from classes such as "roman", "octmode" and
    "hexmode", such fulfilling the wish of PR#18421, by Benjamin
    Feakins.
  * The as.data.frame.vector() utility now errors for wrong-length
    row.names.  It warned for almost six years, with "Will be an
    error!".
  * sessionInfo() now also contains La_version() and reports codepage
    and timezone when relevant, in both print() and toLatex() methods
    which also get new option tzone for displaying timezone
    information when locale = FALSE.
  * New function R_compiled_by() reports the C and Fortran compilers
    used to build R, if known.
  * predict(&lt;lm&gt;, newdata = *) no longer unnecessarily creates an
    offset of all 0s.
  * solve() for complex inputs now uses argument tol and by default
    checks for 'computational singularity' (as it long has done for
    numeric inputs).
  * predict(&lt;rank-deficient lm&gt;, newdata=*) now obeys a new argument
    rankdeficient, with new default "warnif", warning only if there
    are non-estimable cases in newdata.  Other options include
    rankdeficient = "NA", predicting NA for non-estimable newdata
    cases.  This addresses PR#15072 by Russ Lenth and is based on his
    original proposal and discussions in PR#16158 also by David Firth
    and Elin Waring.  Still somewhat experimental.
  * Rgui console implementation now works better with the NVDA screen
    reader when the full blinking cursor is selected.  The underlying
    improvements in cursor handling may help also other screen
    readers on Windows.
  * The drop-field control in GraphApp can now be left with the TAB
    key and all controls can be navigated in the reverse order using
    the Shift+TAB key, improving accessibility of the Rgui
    configuration editor.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now fully accurate
    (instead of to "only" minimally five digits).
  * demo(error.catching) now also shows off withWarnings() and
    tryCatchWEMs().
  * As an experimental feature the placeholder _ can now also be used
    in the rhs of a forward pipe |&gt; expression as the first argument
    in an extraction call, such as _$coef. More generally, it can be
    used as the head of a chain of extractions, such as _$coef[[2]].
  * Spaces in the environment variable used to choose the R session's
    temporary directory (TMPDIR, TMP and TEMP are tried in turn) are
    now fatal.  (On Windows the 'short path' version of the path is
    tried and used if that does not contain a space.)
  * all.equal.numeric() gets a new optional switch giveErr to return
    the numeric error as attribute.  Relatedly,
    stopifnot(all.equal&lt;some&gt;(a, b, ..)) is as "smart" now, as
    stopifnot(all.equal(....)) has been already, thus allowing
    customized all.equal&lt;Some&gt;() wrappers.
  * R on Windows is now able to work with path names longer than 260
    characters when these are enabled in the system (requires at
    least Windows 10 version 1607).  Packages should be updated to
    work with long paths as well, instead of assuming PATH_MAX to be
    the maximum length.  Custom front-ends and applications embedding
    R need to update their manifests if they wish to allow this
    feature.  See
    &lt;https://blog.r-project.org/2023/03/07/path-length-limit-on-windows&gt;
    for more information.
  * 'Object not found' and 'Missing argument' errors now give a more
    accurate error context. Patch provided by Lionel Henry in
    PR#18241.
  * The @ operator is now an S3 generic. Based on contributions by
    Tomasz Kalinowski in PR#18482.
  * New generic chooseOpsMethod() provides a mechanism for objects to
    resolve cases where two suitable methods are found for an Ops
    Group Generic. This supports experimenting with alternative
    object systems. Based on contributions by Tomasz Kalinowski in
    PR#18484.
  * inherits(x, what) now accepts values other than a simple
    character vector for argument what. A new generic, nameOfClass(),
    is called to resolve the class name from what. This supports
    experimenting with alternative object systems. Based on
    contributions by Tomasz Kalinowski in PR#18485.
  * Detection of BLAS/LAPACK in use (sessionInfo()) with FlexiBLAS
    now reports the current backend.
  * The "data.frame" method for subset() now warns about extraneous
    arguments, typically catching the use of = instead of == in the
    subset expression.
  * Calling a:b when numeric a or b is longer than one may now be
    made into an error by setting environment variable
    _R_CHECK_LENGTH_COLON_ to a true value, along the proposal in
    PR#18419 by Henrik Bengtsson.
  * density(x, weights = *) now warns if automatic bandwidth
    selection happens without using weights; new optional warnWbw may
    suppress the warning.  Prompted by Christoph Dalitz' PR#18490 and
    its discussants.
  * rm(list = *) is faster and more readable thanks to Kevin Ushey's
    PR#18492.
  * The plot.lm() function no longer produces a normal Q-Q plot for
    GLMs. Instead it plots a half-normal Q-Q plot of the absolute
    value of the standardized deviance residuals.
  * The print() method for class "summary.glm" no longer shows
    summary statistics for the deviance residuals by default.  Its
    optional argument show.residuals can be used to show them if
    required.
  * The tapply() function now accepts a data frame as its X argument,
    and allows INDEX to be a formula in that case. by.data.frame()
    similarly allows INDICES to be a formula.
  * The performance of df[j] &lt;- value (including for missing j) and
    write.table(df) has been improved for data frames df with a large
    number of columns.  (Thanks to Gabriel Becker's PR#18500,
    PR#18503 and discussants, prompted by a report from Toby Dylan
    Hocking on the R-devel mailing list.)
  * The matrix multiply operator %*% is now an S3 generic, belonging
    to new group generic matrixOps.  From Tomasz Kalinowski's
    contribution in PR#18483.
  * New function array2DF() to convert arrays to data frames,
    particularly useful for the list arrays created by tapply().
  DATES and TIMES:
  * On platforms where (non-UTC) datetimes before 1902 (or before
    1900 as with system functions on recent macOS) are guessed by
    extrapolating time zones from 1902-2037, there is a warning at
    the first use of extrapolation in a session.  (As all time zones
    post 2037 are extrapolation, we do not warn on those.)
  * (Platforms using --with-internal-tzone, including Windows and by
    default macOS). How years are printed in dates or date-times can
    be controlled by environment variable R_PAD_YEARS_BY_ZERO.  The
    default remains to pad to 4 digits by zeroes, but setting value
    no gives no padding (as used by default by glibc).
  * strftime() tries harder to determine the offset for the "%z"
    format, and succeeds on the mainstream R platforms.
  * strftime() has a limit of 2048 bytes on the string produced -
    attempting to exceed this is an error.  (Previously it silently
    truncated at 255 bytes.)
  * sessionInfo() records (and by default prints) the system time
    zone as part of the locale information.  Also, the source
    (system/internal) of the date-time conversion and printing
    functions.
  * Objects of class "POSIXlt" created in this version of R always
    have 11 components: component zone is always set, and component
    gmtoff is set for times in UTC and usually set on the (almost
    all) platforms which have C-level support, otherwise is NA.
  * There are comprehensive validity checks on the structure of
    objects of class "POSIXlt" when converting (including formatting
    and printing).  (This avoids mis-conversions of hand-crafted
    objects.)
  * There is some support for using the native date-time routines on
    macOS: this is only viable on recent versions (e.g. 12.6 and 13)
    and does get wrong some historical changes (before 1900, during
    WWII).  Use of --with-internal-tzone remains the default.
  * as.POSIXct(&lt;numeric&gt;) and as.POSIXlt(.) (without specifying
    origin) now work.  So does as.Date(&lt;numeric&gt;).
  * as.Date.POSIXct(., tz) now treats several tz values, notably
    "GMT" as equivalent to "UTC", proposed and improved by Michael
    Chirico and Joshua Ulrich in PR#17674.
  * Experimental balancePOSIXlt() utility allows using "ragged" and
    or out-of-range "POSIXlt" objects more correctly, e.g., in
    subsetting and subassignments.  Such objects are now documented.
    More experimentally, a "POSIXlt" object may have an attribute
    "balanced" indicating if it is known to be filled or fully
    balanced.
  * Functions axis.Date() and axis.POSIXct() are rewritten to gain
    better default tick locations and better default formats by using
    prettyDate(). Thanks to Swetlana Herbrandt.
  * The mapping of Windows' names for time zones to IANA's 'Olson'
    names has been updated.  When ICU is available (it is by
    default), it is used to get a mapping for the current region set
    in Windows.  This can be overridden by setting environment
    variable TZ to the desired Olson name - see OlsonNames() for
    those currently available.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 16
    and so packages that provide graphics devices should be
    reinstalled.
  * The grDevices and grid packages have new functions for rendering
    typeset glyphs, primarily: grDevices::glyphInfo() and
    grid::grid.glyph().
    Rendering of typeset glyphs is only supported so far on the
    Cairo-based graphics devices and on the pdf() and quartz()
    devices.
  * The defined behaviour for "clear" and "source" compositing
    operators (via grid::grid.group()) has been changed (to align
    better with simple interpretation of original Porter-Duff
    definitions).
  * Support for gradients, patterns, clipping paths, masks, groups,
    compositing operators, and affine transformations has been added
    to the quartz() device.
  INSTALLATION on a UNIX-ALIKE:
  * A system installation of generic LAPACK 3.10.0 or later will be
    preferred to the version in the R sources.
    configure option --with-lapack=no (equivalently --without-lapack)
    forces compilation of the internal LAPACK sources.
    If --with-lapack is not specified, a system liblapack is looked
    for and used if it reports version 3.10.0 or later and does not
    contain BLAS routines.
    Packages using LAPACK will need to be reinstalled if this changes
    to using an external library.
  * On aarch64 Linux platforms using GCC, configure now defaults to
  - fPIC (instead of -fpic), as desired in PR#18326.
  * configure now checks conversion of datetimes between POSIXlt and
    POSIXct around year 2020.  Failure (which has been seen on
    platforms missing tzdata) is fatal.
  * If configure option --with-valgrind-instrumentation is given
    value 1 or 2, option --with-system-valgrind-headers is now the
    default and ignored (with a warning).  It is highly recommended
    that the system headers are installed alongside valgrind: they
    are part of its packaging on some Linux distributions and
    packaged separately (e.g. in the valgrind-devel RPM) on others.
    configure will give a warning if they are not found.
    The system headers will be required in a future release of R to
    build with valgrind instrumentation.
  * libcurl 8.x is now accepted by configure: despite a change in
    major version number it changes neither API nor ABI.
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools43, an update of the Rtools42 toolchain.  It is
    based on gcc 12 and newer versions of MinGW-W64, binutils and
    libraries.  At this time R-devel can still be built using
    Rtools42 without changes, but when R-devel is installed via the
    installer, it will by default look for Rtools43.
  * Old make targets rsync-extsoft and 32-bit ones that are no longer
    needed have been removed.
  * Default builds (including for packages) no longer select C99.
    Thus the C standard used is the default for the compiler, which
    for the toolchain in Rtools43 is C17.  (This is consistent with
    Unix builds.)
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++17 where
    available (which it is on all currently checked platforms): if
    not C++14 or C++11 is used if available otherwise C++ is not
    supported.
  * USE_FC_LEN_T is the default: this uses the correct
    (compiler-dependent) prototypes for Fortran BLAS/LAPACK routines
    called from C/C++, and requires adjustment of many such calls -
    see 'Writing R Extensions' SS6.6.1.
  * There is initial support for C++23 as several compilers are now
    supporting -std=c++23 or -std=c++2b or similar.  As for C++20,
    there no additional configure checks for C++23 features beyond a
    check that the compiler reports a __cplusplus value greater than
    that in the C++20 standard.  C++ feature tests should be used.
  * There is support for a package to indicate the version of the C
    standard which should be used to compile it, and for the
    installing user to specify this.  In most cases R defaults to the
    C compiler's default standard which is C17 (a `bug-fix' of C11) -
    earlier versions of R or compilers may have defaulted to C99.
    Current options are:
    USE_C17 Use a standard that is at most C17.  The intention is to
    allow legacy packages to still be installed when later C
    standards become the default, including packages using new
    keywords as identifiers or with K&amp;R-style function
    declarations.  This will use C17 if available, falling back
    to C11.
    USE_C90 Use the C90 (aka C89) standard.  (As that standard did
    not require compilers to identify that version, all we can
    verify is that the compiler does not claim to be using a
    later standard.  It may accept C99 features - for example
    clang accepts // to make comments.)
    USE_C99 Use the C99 standard. This should be rarely needed - it
    avoids the few new features of C11/C17 which can be useful if
    a package assumes them if C17 is specified and they are not
    implemented.
    USE_C23 Use C23 (or in future, later).  Compiler/library support
    for C23 is still being implemented, but LLVM clang from
    15.0.0 and the upcoming GCC 13 have quite extensive support.
    These can be specified as part of the SystemRequirements field in
    the package's DESCRIPTION file or _via_ options --use-C17 and so
    on of R CMD INSTALL and R CMD SHLIB.
    For further details see "Writing R Extensions" SS1.2.5.
  * (Windows) A src/Makefile.ucrt or src/Makefile.win file is now
    included after R_HOME/etcR_ARCH/Makeconf and so no longer needs
    to include that file itself.  Installation of a package with such
    a file now uses a site Makevars file in the same way as a package
    with a src/Makevars.win file would.
  * configure is now passed crucial variables such as CC and CFLAGS
    in its environment, as many packages were not setting them (as
    documented in 'Writing R Extensions' SS1.2).
    This has most effect where configure is used to compile parts of
    the package - most often by cmake or libtool which obfuscate the
    actual compile commands used.
    Also used for configure.win and configure.ucrt on Windows.
  FORTRAN FLAGS:
  * The flag -fno-optimize-sibling-calls is no longer forced for
    gfortran 7 and later.  It should no longer be needed now using
    'hidden' character-length arguments when calling BLAS/LAPACK
    routines from C/C++ is the default even for packages.  (Unless
    perhaps packages call Fortran code from C/C++ without using R's
    headers and without allowing for these arguments.)
  C-LEVEL FACILITIES:
  * The deprecated S-compatibility macros DOUBLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * The deprecated legacy typedefs of Sint and Sfloat in header R.h
    are no longer defined, and that header no longer includes header
    limits.h from C nor climits from C++.
  * New macro CAD5R() is provided in Rinternals.h and used in a few
    places in the R sources.
  * ALTREP now supports VECSXP vectors. Contributed by Gabor Csardi
    in PR#17620.
  * The Rcomplex definition (in header R_ext/Complex.h) has been
    extended to prevent possible mis-compilation when interfacing
    with Fortran (PR#18430).  The new definition causes compiler
    warnings with static initializers such as {1, 2}, which can be
    changed to {.r=1, .i=2}.
    Using the new definition from C++ depends on compiler extensions
    supporting C features that have not been incorporated into the
    C++ standards but are available in g++ and clang++: this may
    result in C++ compiler warnings but these have been worked around
    for recent versions of common compilers (GCC, Apple/LLVM clang,
    Intel).
    It is intended to change the inclusion of header R_ext/Complex.h
    by other R headers, so C/C++ code files which make use of
    Rcomplex should include that header explicitly.
  UTILITIES:
  * R CMD check does more checking of package .Rd files, warning
    about invalid email addresses and (some) invalid URIs and noting
    empty \item labels in description lists.
  * R CMD check now also reports problems when reading package news
    in md (file NEWS.md) and (optionally) plain text (file NEWS)
    formats.
  * _R_CHECK_TIMINGS_ defaults to a value from the environment even
    for R CMD check --as-cran; this allows for exceptionally fast or
    slow platforms.
    It now applies to checking PDF and HTML versions of the manuals,
    and 'checking CRAN incoming feasibility'.
  * R CMD check can optionally (but included in --as-cran) check
    whether HTML math rendering _via_ KaTeX works for the package .Rd
    files.
  * Non-interactive debugger invocations can be trapped by setting
    the environment variable _R_CHECK_BROWSER_NONINTERACTIVE_ to a
    true value.  This is enabled by R CMD check --as-cran to detect
    the use of leftover browser() statements in the package.
  * The use of sprintf and vsprintf from C/C++ has been deprecated in
    macOS 13 and is a known security risk.  R CMD check now reports
    (on all platforms) if their use is found in compiled code:
    replace by snprintf or vsnprintf respectively. [*NB:* whether
    such calls get compiled into the package is platform-dependent.]
  * Where recorded at installation, R CMD check reports the C and
    Fortran compilers used to build R.
    It reports the OS in use (if known, as given by osVersion) as
    well as that R was built for.
    It notes if a C++ standard was specified which is older than the
    current default: many packages have used C++11 to mean 'not
    C++98' - as C++11 is the minimum supported since R 4.0.0, that
    specification can probably be removed.
  * R CMD INSTALL reports the compilers (and on macOS, the SDK) used,
    and this is copied to the output of R CMD check.
    Where a C++ standard is specified, it is reported.
  * R CMD check's 'checking compilation flags in Makevars' has been
    relaxed to accept the use of flags such as -std=f2008 in
    PKG_FFLAGS.
  * tools::buildVignettes() has a new argument skip, which is used by
    R CMD check to skip (and note) vignettes with unavailable
    \VignetteDepends (PR#18318).
  * New generic .AtNames() added to enable class-specific completions
    after @. The formerly internal function findMatches() is now
    exported, mainly for use in methods for .DollarNames() and
    .AtNames().
  DEPRECATED AND DEFUNCT:
  * default.stringsAsFactors() is defunct.
  * Calling as.data.frame.&lt;class&gt;() directly (for 12 atomic classes)
    is going to be formally deprecated, currently activated by
    setting the environment variable
    _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ to non-empty, which also
    happens in R CMD check --as-cran.
  BUG FIXES:
  * Hashed environments with sizes less than 5 can now grow.
    (Reported to R-devel by Duncan Garmonsway.)
  * as.character(&lt;Rd&gt;, deparse = TRUE) failed to re-escape curly
    braces in LaTeX-like text.  (Reported by Hadley Wickham in
    PR#18324.)
  * library() now passes its lib.loc argument when requiring Depends
    packages; reported (with fix) in PR#18331 by Mikael Jagan.
  * R CMD Stangle: improved message about 'Output' files.
  * head(x, n) and tail(x, n) now signal an error if n is not
    numeric, instead of incidentally "working" sometimes returning
    all of x.  Reported and discussed by Colin Fay, in PR#18357.
  * The "lm" method for summary() now gives the correct F-statistic
    when the model contains an offset.  Reported in PR#18008.
  * C() and `contrasts&lt;-`() now preserve factor level names when
    given a function object (as opposed a function name which did
    preserve names). Reported in PR#17616.
  * c(a = 1, 2)[[]] no longer matches 2 but rather signals a
    _classed_ error.  Reported and analysed by Davis Vaughan in
    PR#18367, a duplicate of PR#18004, by Jan Meis et al.  For
    consistency, NULL[[]] is also erroneous now.  x[[]] &lt;- v gives an
    error of the same class "MissingSubscriptError".
  * The relist() function of utils now supports NULL elements in the
    skeleton (PR#15854).
  * ordered(levels = *) (missing x) now works analogously to factor(,
    ordered=TRUE); reported (with fix) by Achim Zeileis in PR#18389.
  * User-defined Rd macro definitions can now span multiple lines,
    thanks to a patch from Duncan Murdoch. Previously, the Rd parser
    silently ignored everything after the first line.
  * Plain-text help (tools::Rd2txt()) now preserves an initial blank
    line for text following description list items.
  * tools::Rd2HTML() and tools::Rd2latex() no longer split \arguments
    and \value lists at Rd comments.
  * tools::Rd2latex() now correctly handles optional text outside
    \items of argument lists as well as bracketed text at the
    beginning of sections, e.g., \value{[NULL]}.
  * as.character(&lt;POSIXt&gt;) now behaves more in line with the methods
    for atomic vectors such as numbers, and is no longer influenced
    by options().  Ditto for as.character(&lt;Date&gt;).  The
    as.character() method gets arguments digits and OutDec with
    defaults _not_ depending on options().  Use of as.character(*,
    format = .) now warns.
  * Similarly, the as.character.hexmode() and *.octmode() methods
    also behave as good citizen methods and back compatibility option
    keepStr = TRUE.
  * The as.POSIXlt(&lt;POSIXlt&gt;) and as.POSIXct(&lt;POSIXct&gt;) default
    methods now do obey their tz argument, also in this case.
  * as.POSIXlt(&lt;Date&gt;) now does apply a tz (time zone) argument, as
    does as.POSIXct(); partly suggested by Roland Fuss on the R-devel
    mailing list.
  * as.Date.POSIXlt(x) now also works when the list components are of
    unequal length, aka "partially filled" or "ragged".
  * expand.model.frame() looked up variables in the wrong environment
    when applied to models fitted without data.  Reported in
    PR#18414.
  * time() now (also) uses the ts.eps = getOption("ts.eps") argument
    and thus by default rounds values very close to the start (or
    end) of a year.  Based on a proposal by Andre"i V. Kostyrka on
    R-help.
  * Printing of a factanal() result with just one factor and sort =
    TRUE now works regularly, fixing PR#17863 by Timothy Bates,
    thanks to the 'R Contributors' working group.
  * Printing 0-length objects of class "factor", "roman", "hexmode",
    "octmode", "person", "bibentry", or "citation" now prints
    something better, one of which fixes PR#18422, reported by
    Benjamin Feakins.
  * Sys.timezone() queries timedatectl only if systemd is loaded;
    addressing a report by Jan Gorecki in PR#17421.
  * The formula method of cor.test() had scoping problems when
    environment(formula) was not the calling environment; reported
    with a patch proposal by Mao Kobayashi in PR#18439.
  * attach() of an environment with active bindings now preserves the
    active bindings.  Reported by Kevin Ushey in PR#18425.
  * BLAS detection now works also with system-provided libraries not
    available as regular files.  This fixes detection of the
    Accelerate framework on macOS since Big Sur.  Reported by David
    Novgorodsky.
  * download.file() gives a helpful error message in case of an
    invalid download.file.method option, thanks to Colin Fay's report
    in PR#18455.
  * Sporadic crashes of Rterm when using completion have been fixed.
  * Rprof() is now more reliable.  A livelock in thread
    initialization with too short sampling interval has been fixed on
    macOS.  A deadlock in using the C runtime has been fixed on
    Windows.  A potential deadlock has been prevented on Unix.
  * Cursor placement in Rgui now works even after a fixed-width font
    is selected.
  * Mandatory options (options()) are now set on startup so that
    saving and restoring them always works (PR#18372).
  * Package installation, R CMD INSTALL or install.packages(*), now
    parses each of the &lt;pkg&gt;/R/*.R files individually instead of
    first concatenating and then parse()ing the large resulting file.
    This allows parser or syntax errors to be diagnosed with correct
    file names and line numbers, thanks to Simon Dedman's report and
    Bill Dunlap's patch in PR#17859.
    This _does_ require syntactically self contained R source files
    now, fixing another inadvertent bug.
  * predict.lm(&lt;model with offset&gt;) now finds the offset in the
    correct environment, thanks to Andr'e Gillibert's report and patch
    in PR#18456.
  * getInitial(&lt;formula&gt;) now finds the selfStart model in the
    correct environment.  (Reported by Ivan Krylov in PR#18368.)
  * Fix for possible segfault when using recently-added graphics
    features, such as gradients, clipping paths, masks, and groups
    with pdf(file=NULL).
  * class(m) &lt;- class(m) no longer changes a matrix m by adding a
    class _attribute_.
  * packageDate(pkg) now only warns once if there is no pkg.
  * When ts() creates a multivariate time series, "mts", it also
    inherits from "array" now, and is.mts() is documented _and_
    stricter.
  * Rd2txt() now preserves line breaks of \verb Rd content and from
    duplicated \cr.  The former also fixes the rendering of verbatim
    output from Rd \Sexpr in plain-text help.
  * uniroot(f, interval) should no longer wrongly converge _outside_
    the interval in some cases where abs(f(x)) == Inf for an x at the
    interval boundary, thanks to posts by Ben Bolker and Serguei
    Sokol on R-devel.
  * Vectorized alpha handling in palette functions such as in gray(),
    rainbow(), or hcl.colors() works correctly now, thanks to Achim
    Zeileis' report and patch in PR#18476.
  * Formatting and print()ing of bibentry objects has dropped the
    deprecated citation.bibtex.max argument, such that the bibtex
    argument's default for print.bibentry() depends directly on the
    citation.bibtex.max option, whereas in format.bibentry() the
    option no longer applies.
  * Attempting to use a character string naming a foreign function
    entry point in a foreign function call in a package will now
    signal an error if the packages has called R_forceSymbols to
    specify that symbols must be used.
  * An error in table() could permanently set options(warn=2)
    promoting all subsequent warnings to errors.
  * The sigma() function gave misleading results for binary GLMs.  A
    new method for objects of class "glm" returns the square root of
    the estimate of the dispersion parameter using the same
    calculation as summary.glm().
  * bs() and ns() in the (typical) case of automatic knot
    construction, when some of the supposedly inner knots coincide
    with boundary knots, now moves them inside (with a warning),
    building on PR#18442 by Ben Bolker.
  * R CMD on Windows now skips the site profile with --no-site-file
    and --vanilla even when R_PROFILE is set (PR#18512, from Kevin
    Ushey).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1686916800">- CHANGES IN R 4.3.1:
  C-LEVEL FACILITIES:
  * The C-level API version of R's integrate(), Rdqags() in Applic.h,
    now returns the correct number of integrand evaluations neval,
    fixing PR#18515 reported and diagnosed by Stephen Wade.
  * The C prototypes for LAPACK calls dspgv and dtptrs in
    R_exts/Lapack.h had one too many and one too few character length
    arguments - but this has not caused any known issues. To get the
    corrected prototypes, include
    [#]include &lt;Rconfig.h&gt; // for PR18534fixed
    [#]ifdef PR18534fixed
    [#] define usePR18534fix 1
    [#]endif
    [#]include &lt;R_exts/Lapack.h&gt;
    in your C/C++ code (PR#18534).
  INSTALLATION:
  * Many of the checks of esoteric Internet operations and those
    using unreliable external sites have been moved to a new target
    that is not run by default and primarily intended for the core
    developers.  To run them use
    cd tests; make test-Internet-dev
  BUG FIXES:
  * .S3methods(), typically called from methods(), again marks
    methods from package base as visible.
    Also, the visibility of non-base methods is again determined by
    the method's presence in search().
  * tools::Rdiff() is now more robust against invalid strings, fixing
    installation tests on Windows without Rtools installed
    (PR#18530).
  * Fix (new) bug in hcl.colors(2, *), by Achim Zeileis (PR#18523).
  * head(., &lt;illegal&gt;) and tail(..) now produce more useful "Error in
    ...." error messages, fixing PR#18362.
  * Package code syntax on Windows is checked in UTF-8 when UTF-8 is
    the native encoding.
  * na.contiguous(x) now also returns the first run, when it is at
    the beginning and there is a later one of the same length;
    reported to R-devel, including a fix, by Georgi Boshnakov.
    Further, by default, it modifies only an existing attr(*,"tsp")
    but otherwise no longer sets one.
  * chol(&lt;not pos.def&gt;, pivot = &lt;T|F&gt;) now gives a correct error or
    warning message (depending on pivot), thanks to Mikael Jagan's
    (PR#18541).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1699012800">- CHANGES IN R 4.3.2:
  NEW FEATURES:
  * The default initialization of the "repos" option from the
    repositories file at startup can be skipped by setting
    environment variable R_REPOSITORIES to NULL such that
    getOption("repos") is empty if not set elsewhere.
  * qr.X() is now an implicit S4 generic in methods.
  * iconv(to = "ASCII//TRANSLIT") is emulated using substitution on
    platforms which do not support it (notably Alpine Linux).  This
    should give a human-readable conversion in ASCII on all platforms
    (rather than NA_character_).
  * trans3d() gains options continuous and verbose addressing the
    problem of possible "wrap around" when projecting too long
    curves, as reported by Achim Zeileis in PR#18537.
  * tools::showNonASCII() has been rewritten to work better on macOS
    14 (which has a changed implementation of iconv()).
  * tiff(type = "quartz") (the default on macOS) now warns if
    compression is specified: it continues to be ignored.
  INSTALLATION on a UNIX-ALIKE:
  * There is some support for building with Intel's LLVM-based
    compilers on x86_64 Linux, such as (C) icx, (C++) ipcx and
    (Fortran) ifx from oneAPI 2023.x.y.
  * There is support for using LLVM's flang-new as the Fortran
    compiler from LLVM 16.0.x (preferably 17.0.0 or later).
  UTILITIES:
  * R CMD check reports the use of the Fortran 90 random number
    generator RANDOM_NUMBER() and the subroutines to initialize it.
    'Writing R Extensions' has example code to use R's RNGs from
    Fortran.
  BUG FIXES:
  * substr(x, n, L) &lt;- cc now works (more) correctly for multibyte
    UTF-8 strings x when L &gt; nchar(x), thanks to a report and patch
    by 'Architect 95'.
  * contrib.url(character()) now returns 0-length character() as
    documented, which also avoids spurious warnings from
    available.packages() et al. in the edge case of an empty vector
    of repository URLs.
  * readChar(., 4e8) no longer fails, thanks to Kodi Arfer's report
    (PR#18557).
  * lapply(&lt;list&gt;, as.data.frame) no longer warns falsely for some
    base vector components.
  * Communication between parent and child processes in the multicore
    part of parallel could fail on platforms that do not support an
    arbitrarily large payload in system functions read()/write() on
    pipes (seen on macOS where a restriction to INT_MAX bytes is
    documented, without doing a partial read unlike Linux). The
    payload is now split into 1Gb chunks to avoid that problem.
    (PR#18571)
  * qqplot(x,y, conf.level=.) gives better confidence bounds when
    length(x) != length(y), thanks to Alexander Ploner's report and
    patch proposal (PR#18557).
  * norm(&lt;0-length&gt;, "2") now gives zero instead of an error, as all
    the other norm types, thanks to Mikael Jagan's PR#18542.
  * Build-stage Rd macros \packageAuthor and \packageMaintainer now
    process Authors@R, fixing NA results when the package DESCRIPTION
    omits Author and Maintainer fields.
  * Formatting and printing complex numbers could give things like
    0.1683-0i because of rounding error: -0i is now replaced by +0i.
  * postscript() refused to accept a title comment containing the
    letter "W" (PR#18599).
  * isoreg(c(1,Inf)) signals an error instead of segfaulting, fixing
    PR#18603.
  * tiff(type = "Xlib") was only outputting the last page of
    multi-page plots.
  * tools::latexToUtf8() again knows about \~{n} and other letters
    with tilde, fixing a regression in R 4.3.0, and about \^{i} as an
    alternative to \^{\i} (similarly with other accents).
    Furthermore, LaTeX codes for accented I letters are now correctly
    converted, also fixing related mistakes in
    tools::encoded_text_to_latex().
  * tar(*, tar = "internal") no longer creates out-of-spec tar files
    in the very rare case of user or group names longer than 32
    bytes, fixing PR#17871 with thanks to Ivan Krylov.
  * When using the "internal" timezone datetime code, adding a
    fraction of a second no longer adds one second, fixing PR#16856
    from a patch by Ivan Krylov.
  * tools::checkRd() no longer produces spurious notes about
    "unnecessary braces" from multi-line Rd results of \Sexpr macros.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1709208000">- CHANGES IN R 4.3.3:
  NEW FEATURES:
  * iconv() now fixes up variant encoding names such as "utf8"
    case-insensitively.
  DEPRECATED AND DEFUNCT:
  * The legacy encoding = "MacRoman" is deprecated in pdf() and
    postscript(): support was incomplete in earlier versions of R.
  BUG FIXES:
  * Arguments are now properly forwarded to methods on S4 generics
    with ... in the middle of their formal arguments. This was broken
    for the case when a method introduced an argument but did not
    include ... in its own formals. Thanks to Herv'e Pag`es for the
    report PR#18538.
  * Some invalid file arguments to pictex(), postscript() and xfig()
    opened a file called NA rather than throw an error.  These
    included postscript(NULL) (which some people expected to work
    like pdf(NULL)).
  * Passing filename = NA to svg(), cairo_pdf(), cairo_ps() or the
    Cairo-based bitmap devices opened a file called NA: it now throws
    an error.
  * quartz(file = NA) opened a file called NA, including when used as
    a Quartz-based bitmap device.  It now gives an error.
  * rank(&lt;long vector&gt;) now works, fixing PR#18617, thanks to Ilia
    Kats.
  * seq.int() did not adequately check its length.out argument.
  * match(&lt;POSIXct&gt;, .) is correct again for differing time zones,
    ditto for "POSIXlt", fixing PR#18618 reported by Bastian Klein.
  * drop.terms(*, dropx = &lt;0-length&gt;) now works, fixing PR#18563 as
    proposed by Mikael Jagan.
  * drop.terms(*) keeps + offset(.) terms when it should, PR#18565,
    and drop.terms() no longer makes up a response, PR#18566, fixing
    both bugs thanks to Mikael Jagan.
  * getS3method("t", "test") no longer finds the t.test() function,
    fixing PR#18627.
  * pdf() and postscript() support for the documented Adobe encodings
    "Greek" and "Cyrilllic" was missing (although the corresponding
    Windows' codepages could be used).
  * Computations of glyph metric information for pdf() and
    postscript() did not take into account that transliteration could
    replace one character by two or more (only seen on macOS 14) and
    typically warned that the information was not known.
  * rank(x) no longer overflows during integer addition, when
    computing rank average for largish but not-yet long vector x,
    fixing PR#18630, thanks to Ilia Kats.
  * list.files() on Windows now returns also files with names longer
    that 260 bytes (the Windows limit is 260 characters).
    Previously, some file names particularly with 'East Asian'
    characters were omitted.
  * cov2cor(&lt;0 x 0&gt;) now works, fixing PR#18423 thanks to Mikael
    Jagan and Elin Waring.
  * cov2cor(&lt;negative diagonal&gt;) and similar now give one warning
    instead of two, with better wording, fixing PR#18424 thanks to
    Mikael Jagan.
  * tools:: startDynamicHelp() now ensures port is in proper range,
    fixing PR#18645.
  * pbeta(x, a,b) is correct now for x=0 or 1 in the boundary cases
    where a or b or both are 0, fixing PR#18672 thanks to Michael
    Fay.
  * pmatch(x, table) for large table, also called for data frame row
    selection, dfrm[nm, ], is now interruptible, fixing PR#18656.
  * predict(&lt;rank-deficient lm&gt;, newdata=*) fix computing of nbasis,
    see Russ Lenth's comment 29 in PR#16158.
  * Added a work-around for a bug in macOS 14.3.1 and higher which
    prevents R plots in the Quartz Cocoa device from updating on
    screen.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1713960000">- CHANGES IN R 4.4.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Startup banners, R --version, sessionInfo() and R CMD check no
    longer report (64-bit) as part of the platform as this is almost
    universal - the increasingly rare 32-bit platforms will still
    report (32-bit).
    On Windows, ditto for window titles.
  * is.atomic(NULL) now returns FALSE, as NULL is not an atomic
    vector.  Strict back-compatibility would replace is.atomic(foo)
    by (is.null(foo) || is.atomic(foo)) but should happen only
    sparingly.
  NEW FEATURES:
  * The confint() methods for "glm" and "nls" objects have been
    copied to the stats package.  Previously, they were stubs which
    called versions in package MASS. The MASS namespace is no longer
    loaded if you invoke (say) confint(glmfit).  Further, the "glm"
    method for profile() and the plot() and pairs() methods for class
    "profile" have been copied from MASS to stats.  (profile.nls()
    and plot.profile.nls() were already in stats.)
  * The confint() and profile methods for "glm" objects have gained a
    possibility to do profiling based on the Rao Score statistic in
    addition to the default Likelihood Ratio. This is controlled by a
    new test = argument.
  * The pairs() method for "profile" objects has been extended with a
    which = argument to allow plotting only a subset of the
    parameters.
  * The "glm" method for anova() computes test statistics and
    p-values by default, using a chi-squared test or an F test
    depending on whether the dispersion is fixed or free.  Test
    statistics can be suppressed by giving argument test a false
    logical value.
  * In setRepositories() the repositories can be set using their
    names via name = instead of index ind =.
  * methods() and .S3methods() gain a all.names option for the (rare)
    case where functions starting with a . should be included.
  * Serializations can now be interrupted (e.g., by Ctrl-C on a
    Unix-alike) if they take too long, e.g., from save.image(),
    thanks to suggestions by Ivan Krylov and others on R-devel.
  * New startup option --max-connections to set the maximum number of
    simultaneous connections for the session.  Defaults to 128 as
    before: allowed values up to 4096 (but resource limits may in
    practice restrict to smaller values).
  * R on Windows (since Windows 10 2004) now uses the new Segment
    Heap allocator. This may improve performance of some
    memory-intensive applications.
  * When R packages are built, typically by R CMD build &lt;pkg&gt;, the
    new --user=&lt;build_user&gt; option overrides the (internally
    determined) user name, currently Sys.info()["user"] or LOGNAME.
    This is a (modified) fulfillment of Will Landau's suggestion in
    PR#17530.
  * tools::testInstalledBasic() gets new optional arguments outDir
    and testSrcdir, e.g., allowing to use it in a &lt;builddir&gt; !=
    &lt;srcdir&gt; setup, and in standard "binary" Windows installation
  * if* a source tests/ folder is present.
  * range(&lt;DT_with_Inf&gt;, finite = TRUE) now work for objects of class
    "Date", "POSIXct", and "POSIXlt" with infinite entries,
    analogously to range.default(), as proposed by Davis Vaughan on
    R-devel.  Other range()-methods can make use of new function
    .rangeNum().
  * New .internalGenerics object complementing .S3PrimitiveGenerics,
    for documentation and low-level book-keeping.
  * grid() now invisibly returns the x- and y- coordinates at which
    the grid-lines were drawn.
  * norm(., type) now also works for complex matrices.
  * kappa(., exact = TRUE, norm = *) now works for all norms and also
    for complex matrices.  In symmetric / triangular cases, the new
    argument uplo = "U" | "L" allows the upper or lower triangular
    part to be specified.
  * memDecompress(type = "unknown") recognizes compression in the
    default 'zlib' format as used by memCompress(type = "gzip").
  * memCompress() and memDecompress() will use the libdeflate library
    (&lt;https://github.com/ebiggers/libdeflate&gt;) if installed.  This
    uses the same type of compression for type = "gzip" but is 1.5-2x
    faster than the system libz library on some common platforms: the
    speed-up may depend on the library version.
  * diff() for objects of class "Date", "POSIXct", and "POSIXlt"
    accepts a units argument passed via ....
  * Dynamic help now does a much better job of rendering package
    DESCRIPTION metadata.
  * Rprof() gains an event argument and support for elapsed (real)
    time profiling on Unix (PR#18076).
  * filled.contour() gains a key.border argument.
  * tools::update_pkg_po() gets arguments pot_make and mo_make for
    _not_ re-making the corresponding files, and additionally a
    verbose argument.
  * Hexadecimal string colour specifications are now accepted in
    short form, so, for example, we can use "#123", which is
    equivalent to "#112233".
    Thanks to MikeFC for the original idea and Ella Kaye, Malcolm
    Barrett, George Stagg, and Hanne Oberman for the patch.
  * Plain-text help shows \var markup by angle brackets.
  * The new experimental primitive function declare() is intended to
    eventually allow information about R code to be communicated to
    the interpreter, compiler, and code analysis tools. The syntax
    for declarations is still being developed.
  * Functions psmirnov(), qsmirnov() and rsmirnov() in package stats
    have had argument two.sided renamed to alternative, to take into
    account that the permutation distributions of the one-sided
    statistics can be different in the case of ties.  Consequence of
    PR#18582.
  * sort() is now an implicit S4 generic in methods.
  * Formatting and printing, format(z), print(z), of complex vectors
    z no longer zap relatively small real or imaginary parts to zero,
    fixing PR#16752.  This is an API change, as it was documented
    previously to round real and imaginary parts together on purpose,
    producing nicer looking output.  As mentioned, e.g. in the PR,
    this change is compatible with many other "R-like" programming
    environments.
    We have simplified the internal code and now basically format the
    real and imaginary parts independently of each other.
  * New experimental functions Tailcall() and Exec() to support
    writing stack-space-efficient recursive functions.
  * Where characters are attempted to be plotted by pdf(),
    postscript() and xfig() which are not in the selected 8-bit
    character set (most often Latin-1) and the R session is using a
    UTF-8 locale, the warning messages will show the UTF-8 character
    rather than its bytes and one dot will be substituted per
    character rather than per byte.  (Platforms whose iconv() does
    transliteration silently plot the transliteration.)
    In a UTF-8 locale some transliterations are now done with a
    warning (e.g., dashes and Unicode minus to hyphen, ligatures are
    expanded, permille (‰) is replaced by o/oo), although the OS may
    have got there first.  These are warnings as they will continue
    to be replaced by dots in earlier versions of R.
  * The matrix multiplication functions crossprod() and tcrossprod()
    are now also primitive and S3 generic, as %*% had become in R
    4.3.0.
  * source() and example() have a new optional argument catch.aborts
    which allows continued evaluation of the R code after an error.
  * The non-Quartz tiff() devices allow additional types of
    compression if supported by the platform's libtiff library.
  * The list of base and recommended package names is now provided by
    tools::standard_package_names().
  * cairo_pdf() and cairo_ps() default to onefile = TRUE to closer
    match pdf() and postscript().
  * New option catch.script.errors provides a documented way to catch
    errors and then continue in non-interactive use.
  * L %||% R newly in base is an expressive idiom for the phrases
    if(!is.null(L)) L else R or if(is.null(L)) R else L.
  * The return value from warnings() now always inherits from
    "warnings" as documented, now also in the case of no warnings
    where it previously returned NULL.
  * as.complex("1i") now returns 0 + 1i instead of NA with a warning.
  * z &lt;- c(NA, 1i) now keeps the imaginary part Im(z[1]) == 0, no
    longer coercing to NA_complex_.  Similarly, cumsum(z) correctly
    sums real and imaginary parts separately, i.e., without
    "crosstalk" in case of NAs.
  * On Alpine Linux iconv() now maps "latin2", "latin-2", "latin9"
    and "latin-9" to encoding names the OS knows about
    (case-insensitively).
  * iconv(sub = "Unicode") now always zero-pads to four (hex) digits,
    rather than to 4 or 8.  (This seems to have become the convention
    once Unicode restricted the number of Unicode points to 2^21 - 1
    and so will never need more than 6 digits.)
  * NCOL(NULL) now returns 0 instead of 1, for consistency with
    cbind().
  * The information for the Euro glyph missing from the Adobe .afm
    files for the Courier, Helvetica and Times families has been
    copied from their URW equivalents - this will improve vertical
    centring in the pdf() and postscript() devices.
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.12.0.  The changes are almost entirely cosmetic.
  * The included LAPACK sources have been updated to version 3.12.0
    and some further double-complex routines added.
  * There are new font families for the 2014--5 URW 2.0 fonts (see
    ?pdf) which are included in recent versions of Ghostscript.
    These have font widths for most Greek glyphs and a few others
    which were missing from the original versions (whose font
    families remain available for reproducibility, although
    Ghostscript-based viewers will render using the 2.0 versions).
  * Improve the large-n efficiency of as.matrix(&lt;dist&gt;), thanks an R
    contributors effort, notably by Tim Taylor and Heather Turner,
    see PR#18660.
  * The default and numeric methods of all.equal() get a check.class
    option.
  * zapsmall() gets new optional arguments, function mFUN and min.d,
    for extra flexibility; fulfills a wish in PR#18199.  Also, it is
    now an implicit S4 generic in package methods.
  * The Rd filter for aspell() gains an ignore argument.
  * New generic function sort_by(), primarily useful for the
    data.frame method which can be used to sort rows of a data frame
    by one or more columns.
  * The icence headers for the RPC code in src/extra/xdr have been
    updated to use the GPL-compatible licence published by Oracle
    America in 2010.
  * New function pkg2HTML() in tools to create single-page HTML
    reference manuals for R packages.
  * The byte code evaluator now uses less C stack space for recursive
    calls to byte-compiled functions. It also makes more of an effort
    to avoid allocations for scalar return values.
  * New completion option backtick (disabled by default) allows
    non-syntactic completions to be wrapped in backquotes. This is
    currently only useful for Jupyter notebooks via the IRkernel
    package, and may cause problems for other backends.
  INSTALLATION:
  * The parser has been updated to work with bison 3.8.2, which is
    now used for the pre-generated parsers in gram.c, file.c, and
    gramRd.c. A few parser error messages have changed, which may
    affect code that relies on exact messages.
  INSTALLATION on a UNIX-ALIKE:
  * System valgrind headers are now required to use configure option
  - -with-valgrind-instrumentation with value 1 or 2.
  * configure will warn if it encounters a 32-bit build, as that is
    nowadays almost untested.
  * Environment variable R_SYSTEM_ABI is no longer used and so no
    longer recorded in etc/Renviron (it was not on Windows and was
    only ever used when preparing package tools).
  * If the libdeflate library and headers are available, libdeflate
    rather than libz is used to (de)compress R objects in lazy-load
    databases.  Typically tasks spend up to 5% of their time on such
    operations, although creating lazy-data databases is one of the
    exceptions.
    This can be suppressed if the library is available by the
    configure option --without-libdeflate-compression.
  * configure option --enable-lto=check has not worked reliably since
    2019 and has been removed.
  * The minimum autoconf requirement for a maintainer build has been
    increased to autoconf 2.71.
    It is intended to increase this to 2.72 for R 4.5.0: the
    distributed configure file was generated using 2.72.
  * The minimum version requirement for an external LAPACK has been
    reduced to 3.9.0.
  * No default C++ compiler is set if no C++17 compiler is detected:
    there is no longer an automatic fallback to C++14 or C++11.
    Compilers from the last five years should have sufficient
    support: for others macros CXX and CXXSTD can be set in file
    config.site to provide a fallback if needed.
    The Objective-C++ compiler now by default uses the standard
    selected by R for C++ (currently C++17) rather than the default
    standard for the C++ compiler (which on macOS is still C++98).
  INSTALLATION on macOS:
  * A new configure option --with-newAccelerate makes use of Apple's
    'new' BLAS / LAPACK interfaces in their Accelerate framework.
    Those interfaces are only available in macOS 13.3 or later, and
    building requires SDK 13.3 or later (from the Command Line Tools
    or Xcode 14.3 or later).
    By default the option uses new Accelerate for BLAS calls: to also
    use it for LAPACK use option --with-newAccelerate=lapack.  The
    later interfaces provide LAPACK 3.9.1 rather than 3.2.1: 3.9.1 is
    from 2021-04 and does not include the improved algorithms
    introduced in LAPACK 3.10.0 (including for BLAS calls).
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools44, an update of the Rtools43 toolchain.  It is
    based on GCC 13 and newer versions of MinGW-W64, binutils and
    libraries (targeting 64-bit Intel CPUs).  R-devel can no longer
    be built using Rtools43 without changes.
  * Rtools44 has experimental support for 64-bit ARM (aarch64) CPUs
    _via_ the LLVM 17 toolchain using lld, clang/flang-new and
    libc++.
  UTILITIES:
  * R CMD check notes when S4-style exports are used without
    declaring a strong dependence on package methods.
  * tools::checkRd() (used by R CMD check) detects more problems with
    \Sexpr-based dynamic content, including bad nesting of \Sexprs
    and invalid arguments.
  * tools::checkRd() now reports Rd titles and section names ending
    in a period; this is ignored by R CMD check unless environment
    variable _R_CHECK_RD_CHECKRD_MINLEVEL_ is set to -5 or smaller.
  * R CMD check now notes Rd files without an \alias, as long
    documented in 'Writing R Extensions' §1.3.1.  The check for a
    missing \description has been moved from tools::checkRd() to
    tools::checkRdContents().
  * R CMD check now visits inst/NEWS.Rd and OS-specific man
    subdirectories when checking Rd files.
  * tools::checkDocFiles() and tools::checkRdContents() now also
    check internal Rd files by default, but "specially" (ignoring
    missing documentation of arguments).
  * R CMD Rdiff gets option --useEx.
  * R CMD check now warns on non-portable uses of Fortran KIND such
    as INTEGER(KIND=4) and REAL(KIND=8).
    To see the failing lines set environment variable
    _R_CHECK_FORTRAN_KIND_DETAILS_ to a true value.
  * When checking Rd files, R CMD check now notes some of the "lost
    braces" that tools::checkRd() finds.  Typical problems are Rd
    macros missing the initial backslash (e.g., code{...}), in-text
    set notation (e.g., {1, 2}, where the braces need escaping), and
    \itemize lists with \describe-style entries of the form
    \item{label}{description}.
  * R CMD INSTALL (and hence check) will compile C++ code with
  - DR_NO_REMAP if environment variable _R_CXX_USE_NO_REMAP_ is set
    to a true value.  It is planned that this will in future become
    the default for compiling C++.
  * The new built-in Rd macro \dontdiff{} can be used to mark example
    code whose output should be ignored when comparing check output
    to reference output (tests/Examples/&lt;pkg&gt;-Ex.Rout.save).  The
    \dontdiff tag, like \donttest, is _not_ shown on the rendered
    help page, so provides a clean alternative to ##
    IGNORE_RDIFF_(BEGIN|END) comments.
  * R CMD build when there is no NAMESPACE, now uses the recommended
    exportPattern("^[^.]"), instead of exporting everything.
  * R CMD check now warns about non-ASCII characters in the NAMESPACE
    file (in addition to R files). Such packages are not portable and
    may fail to install on some platforms.
  C-LEVEL FACILITIES:
  * Headers R_ext/Applic.h and R-ext/Linpack.h used to include
    R_ext/BLAS.h although this was undocumented and unneeded by their
    documented entry points.  They no longer do so.
  * New function R_missing(), factored out from do_missing(), used to
    fix PR#18579.
  * SEXP type S4SXP has been renamed to OBJSXP to support
    experimenting with alternative object systems.  The S4SXP value
    can still be used in C code but is now deprecated.  Based on
    contributions from the R Consortium's Object-Oriented Programming
    Working Group.
  * New function pow1p(x,y) for accurate (1+x)^y.
  * mkCharLenCE was incorrectly documented to take a size_t length
    but was implemented with int (and character strings in R are
    limited to 2^31 - 1 bytes).
  DEPRECATED AND DEFUNCT:
  * data() no longer handles zipped data from long-defunct (since R
    2.13.0) --use-zip-data installations.
  * The legacy graphics devices pictex() and xfig() are now
    deprecated.  They do not support recent graphics enhancements and
    their font handling is rudimentary. The intention is to retain
    them for historical interest as long as they remain somewhat
    functional.
  * Support for encoding = "MacRoman" has been removed from the pdf()
    and postscript() devices - this was a legacy encoding supporting
    classic macOS up to 2001 and no longer has universal libiconv
    support.
  * is.R() is deprecated as no other S dialect is known to be in use
    (and this could only identify historical dialects, not future
    ones).
    Further information on calls can be obtained by setting the
    environment variable _R_DEPRECATED_IS_R_ to error which turns the
    deprecation warning into an error and so by default gives a
    traceback.  (This is done by R CMD check --as-cran.)
  * UseMethod() no longer forwards local variables assigned in the
    generic function into method call environments before evaluating
    the method body. This makes method calls behave more like
    standard function calls and makes method code easier to analyze
    correctly.
  * The twelve as.data.frame.&lt;class&gt;() methods which were deprecated
    only via _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ and in R CMD
    check --as-cran are formally deprecated now in favour of calling
    as.data.frame() or as.data.frame.vector().  The deprecation
    "check" now works also when as.data.frame() is S4 generic thanks
    to Ivan Krylov.
  * The default method for the directional comparison operators &lt;, &gt;,
    &lt;=, and &gt;= now signals an error when one of the operands is a
    language object, i.e. a symbol or a call.
  * For terms.formula(), deprecate abb and neg.out arguments
    _formally_ in addition to just documenting it.
  BUG FIXES:
  * The methods package is more robust to not being attached to the
    search path.  More work needs to be done.
  * pairwise.t.test() misbehaved when subgroups had 0 DF for
    variance, even with pool.sd = TRUE.  (PR#18594 by Jack Berry).
  * Probability distribution functions [dpq]&lt;distrib&gt;(x, *), but also
    bessel[IKJY](x, .) now consistently preserve attributes(x) when
    length(x) == 0, e.g., for a 2 x 0 matrix, thanks to Karolis
    Koncevičius' report PR#18509.
  * Group "Summary" computations such as sum(1:3, 4, na.rm = 5, NA,
    7, na.rm = LL) now give an error instead of either 17 or NN for
    LL true or false, as proposed by Ivan Krylov on the R-devel
    mailing list.  (This also means it is now an error to specify
    na.rm more than once.)
  * as.complex(x) now returns complex(real = x, imaginary = 0) for
    _all_ numerical and logical x, notably also for NA or
    NA_integer_.
  * Directories are now omitted by file.copy(, recursive = FALSE) and
    in file.append() (PR#17337).
  * gsub() and sub() are now more robust to integer overflow when
    reporting errors caused by too large input strings (PR#18346).
  * Top-level handlers are now more robust to attempts to remove a
    handler whilst handlers are running (PR#18508).
  * The handling of Alt+F4 in dialogs created on Windows using
    GraphApp has been fixed (PR#13870).
  * density() more consistently computes grid values for the
    FFT-based convolution, following Robert Schlicht's analysis and
    proposal in PR#18337, correcting density values typically by a
    factor of about 0.999.  Argument old.coords = TRUE provides back
    compatibility.
  * palette.colors() gains a name argument that defaults to FALSE
    controlling whether the vector of colours that is returned has
    names (where possible).  PR#18529.
  * tools::xgettext() no longer extracts the (non-translatable) class
    names from warningCondition and errorCondition calls.
  * S3method(&lt;gen&gt;, &lt;class&gt;, &lt;func&gt;) in the NAMESPACE file now works
    (again) when &lt;func&gt; is visible from the namespace, e.g.,
    imported, or in base.
  * getParseData(f) now also works for a function defined in the
    first of several &lt;pkg&gt;/R/*.R source files, thanks to Kirill
    Müller's report and Duncan Murdoch's patch in PR#16756.
  * Rd \Sexpr macros with nested #ifdef conditionals were not
    processed.
  * A non-blocking connection with non-default encoding (such as a
    socket) now correctly returns from readLines() after new data has
    arrived also when its EOF had been reached previously.  Thanks to
    Peter Meilstrup's report on R-devel and Ivan Krylov's report and
    patch proposal in PR#18555.
  * tools::checkRdContents() failed to detect empty argument
    descriptions when they spanned multiple lines, including those
    generated by prompt().  These cases are now noted by R CMD check.
  * Plain-text help no longer outputs spurious colons in the
    arguments list (for multi-line \item labels in the Rd source).
  * kappa() and rcond() work correctly in more cases; kappa(., norm =
    "2") now warns that it computes the 1-norm with (default) exact =
    FALSE; prompted by Mikael Jagan's quite comprehensive PR#18543.
  * Rd skeletons generated by prompt() or promptData() now use a
    dummy title (so R CMD build works).  tools::checkRdContents() has
    been updated to detect such template leftovers, including from
    promptPackage().
  * When S4 method dispatch fails because no method was found, the
    error message now includes the signature argument names; thanks
    to Michael Chirico's proposal on the R-devel list.
  * withAutoprint({ .. }) now preserves srcrefs previously lost,
    thanks to Andrew Simmons' report plus fix in PR#18572.
  * transform.data.frame() no longer adjusts names; in particular,
    untransformed variables are kept as-is, including those with
    syntactically invalid names (PR#17890).
  * The keep.source option for Rd \Sexpr blocks is no longer ignored.
  * The formula methods for t.test() and wilcox.test() now catch when
    paired is passed, addressing PR#14359; use Pair(x1, x2) ~ 1 for a
    paired test.
  * The level reported in the browser prompt was often too large. It
    now shows the number of browser contexts on the stack.
  * For cbind() and rbind(), the optional deparse.level argument is
    now properly passed to methods, thanks to Mikael Jagan's PR#18579
    and comments there.
  * Some error and warning messages for large ('long vector')
    matrix(v, nr, nc) and dim(m) &lt;- d are now correct about sizes,
    using long long formatting, fixing PR#18612 (and more) reported
    by Mikael Jagan.
  * readChar(useBytes = TRUE) now terminates strings even when the
    underlying connection uses extra spaces in the input buffer.
    This fixes problems with extra garbage seen with gzip
    connections, PR#18605.
  * Named capture in PCRE regular expressions now works also with
    more than 127 named groups (PR#18588).
  * Datetime functions are now robust against long jumps when dealing
    with internal time zone changes.  This avoids confusing warnings
    about an invalid time zone, previously triggered by turning
    warnings into errors or handling them via tryCatch (PR#17966,
    PR#17780).
  * Datetime functions now restore even an empty TZ environment
    variable after internal time zone changes (PR#17724).  This makes
    results of datetime functions with this (typically unintentional)
    setting more predictable.
  * drop.terms(*) now drops response as by default, keep.response =
    FALSE, fixing PR#18564 thanks to Mikael Jagan.
  * dummy.coef(.) now also works for lm()-models with character
    categorical predictor variables rather than factor ones, fixing
    PR#18635 reported by Jinsong Zhao.
  * formals(f) &lt;- formals(f) now also works for a function w/o
    arguments and atomic _constant_ body(f).
  * Correct as.function(&lt;invalid list&gt;, .)'s error message.
  * removeSource() is yet more thorough in finding and removing
    "srcref" and the other source references from parsed R language
    chunks, fixing PR#18638 thanks to Andrew Simmons.
  * dgeom() is more accurate now, notably when its result is very
    small, fixing PR#18642 thanks to the proposal of Morten Welinder,
    also improving other instances where C level binom_raw(x, n, ..)
    has x == 0 or x== n.
  * warning() with options(warn = 1) has improved output for
    multi-line messages.
  * axis.Date() and axis.POSIXct() now respect the par("lab") setting
    for the number of pretty() intervals.
  * Comparisons for language objects (which are based on deparsing)
    are now more careful about using accurate deparsed results
    (PR#18676).
  * Plain-text help (Rd2txt) now correctly preserves blank lines
    following single-line \dontrun code.
  * &lt;POSIXlt&gt;[*] no longer sets wrong "balanced" attribute, fixing
    PR#18681 thanks to Mikael Jagan.
  * str(&lt;classed-call&gt;) now deparses the call as expected, fixing
    PR#18684, reported by Dave Slager.
  * In Rd examples, code following the closing brace of a \dontrun,
    \dontshow or \donttest tag on the same line is no longer skipped
    when R CMD check runs the examples.
  * as.data.frame(matrix(*, ncol=0)) now gets valid names() and
    colnames(); reported by Davis Vaughan on the R-devel list.
  * Internal Mathlib function stirlerr(n) is now almost fully
    (52-bit) accurate for all n &gt;= ~5.9 and more accurate also in the
    range 1 -- 5.9.  This entails small ("after 12th decimal")
    changes in density functions, e.g., dgamma() in _some_ regions of
    their support.  The fix was partly prompted by Morten Welinder's
    PR#18640.
  * Numbers like 9876543.2 are now considered non-integer by Mathlib
    internal R_nonint(), amending original fix of PR#15734.
  * Rd comment lines no longer cause broken paragraphs in the
    rendered PDF and plain-text help. In code blocks, pure comment
    lines (starting with %) no longer produce an empty line.
  * xtabs(Freq ~ .) now consistently defaults to na.action = na.pass,
    using na.rm = FALSE (added as an argument) when summing over Freq
    (PR#17770).
  * tools::testInstalledPackage() is no longer silent about failures
    from running examples or tests and its return code no longer
    ignores failures from checking vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1718366400">- CHANGES IN R 4.4.1:
  C-LEVEL FACILITIES:
  * Functions R_atof and R_strtod declared in header R_ext/Utils.h
    are now documented in 'Writing R Extensions' and so formally part
    of the API.
  * The non-API entry points Rf_setSVector, Rf_StringFalse,
    Rf_StringTrue and Rf_isBlankString have been added to those
    reported by R CMD check.
  * The new function Rf_allocLang is now available. This provides an
    alternative to the idiom of calling Rf_allocList followed by
    SET_TYPEOF.
  UTILITIES:
  * R CMD check now reports as warnings what gfortran calls 'Fortran
    2018 deleted features', all of which have long been marked as
    'obsolescent' and some of which were deleted in Fortran 2008 or
    earlier.  Fortran compilers are no longer required to support
    these.
  BUG FIXES:
  * as.numeric(), scan(), type.convert() and other places which use
    the internal C function R_strtod now require a _non-empty_ digit
    sequence in a decimal or binary exponent.  This aligns with the
    C/POSIX standard for strtod and with ?NumericConstants.
  * as.data.frame(m, make.names=NA) now works correctly for a matrix
    m with NA's in row names.
  * The error message from &lt;POSIXlt&gt;[["hour"]] and similar now
    mentions *[[, "hour"]], as wished for in PR#17409 and proposed by
    Michael Chirico.
  * qbinom() and potentially qpois(), qnbinom(), no longer sometimes
    fail accurate inversion (of pbinom(), etc), thanks to Christopher
    Chang's report and patch in PR#18711.
  * The internal help server on Windows can again serve requests sent
    in quick succession, fixing a regression in R 4.4.0.
  * debugcall(&lt;S3Generic&gt;()) now also works when a corresponding
    S4-generic version is in the methods cache (PR#18143).
  * Package tools' toTitleCase(ch0) now returns character(0) when ch0
    is of zero length; fixing PR#18724, reported by David Hugh Jones.
  * R CMD check is no longer broken (without a check result and no
    explanation in 00check.log) for a package which declares an
    invalid VignetteBuilder in DESCRIPTION but has no vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1730376000">- CHANGES IN R 4.4.2:
  C-LEVEL FACILITIES:
  * The S-compatibility macros F77_COM and F77_COMDECL defined in
    header R_ext/RS.h are deprecated and will be removed shortly.  We
    could find no record of their use.
  BUG FIXES:
  * Mathlib function lgammacor(x) no longer warns about underflow to
    zero for large x.
  * Text widths and heights were incorrectly reported by the Quartz
    device if the drawing context didn't exist yet (typically when
    drawing off-screen to a window that is yet to appear, see
    PR#18591).
  * The Quartz device could segfault in cases where paths with spaces
    are used in the new glyph drawing API.  Thanks to Tomek
    Gieorgijewski (PR#18758).
  * On macOS in R CRAN builds, it is again possible to read
    little-endian UTF-16 text with a BOM from a connection using
    encoding="UTF-16".  Users building R from source should avoid
    using the system libiconv in macOS 14.1 and later.
  * methods' internal .requirePackage() now re-enables primitive
    method dispatch when needed; thanks to Ivan Krylov for
    demystifying CRAN package check failures on the R-devel mailing
    list.</changelog>
</package>
<package pkgid="6492bf9f83a22a25fb0557979116f20ad873f99ab2809b8bc4cd6f1bc2bf2916353b299f5e92bca6fc7d745902faa82b4ad23b14a2074271e2442f4672f77d27" name="R-grDevices-debuginfo" arch="x86_64">
  <version epoch="0" ver="4.4.2" rel="51.0.2.2.sr20241103"/>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1620302400">- To get in sync with d:l:R:autoCRAN the Matrix package's split
  in -devel was reversed.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339200">- improved spec file according to comments of dimstar in
  https://build.opensuse.org/request/show/892685</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339201">- CHANGES IN R 4.1.0:
  FUTURE DIRECTIONS:
  * It is planned that the 4.1.x series will be the last to support
    32-bit Windows, with production of binary packages for that
    series continuing until early 2023.
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Data set esoph in package datasets now provides the correct
    numbers of controls; previously it had the numbers of cases added
    to these.  (Reported by Alexander Fowler in PR#17964.)
  NEW FEATURES:
  * www.omegahat.net is no longer one of the repositories known by
    default to setRepositories().  (Nowadays it only provides source
    packages and is often unavailable.)
  * Function package_dependencies() (in package tools) can now use
    different dependency types for direct and recursive dependencies.
  * The checking of the size of tarball in R CMD check --as-cran
    &lt;pkg&gt; may be tweaked via the new environment variable
    _R_CHECK_CRAN_INCOMING_TARBALL_THRESHOLD_, as suggested in
    PR#17777 by Jan Gorecki.
  * Using c() to combine a factor with other factors now gives a
    factor, an ordered factor when combining ordered factors with
    identical levels.
  * apply() gains a simplify argument to allow disabling of
    simplification of results.
  * The format() method for class "ftable" gets a new option justify.
    (Suggested by Thomas Soeiro.)
  * New ...names() utility.  (Proposed by Neal Fultz in PR#17705.)
  * type.convert() now warns when its as.is argument is not
    specified, as the help file always said it _should_.  In that
    case, the default is changed to TRUE in line with its change in
    read.table() (related to stringsAsFactor) in R 4.0.0.
  * When printing list arrays, classed objects are now shown _via_
    their format() value if this is a short enough character string,
    or by giving the first elements of their class vector and their
    length.
  * capabilities() gets new entry "Rprof" which is TRUE when R has
    been configured with the equivalent of --enable-R-profiling (as
    it is by default).  (Related to Michael Orlitzky's report
    PR#17836.)
  * str(xS4) now also shows extraneous attributes of an S4 object
    xS4.
  * Rudimentary support for vi-style tags in rtags() and R CMD rtags
    has been added.  (Based on a patch from Neal Fultz in PR#17214.)
  * checkRdContents() is now exported from tools; it and also
    checkDocFiles() have a new option chkInternal allowing to check
    Rd files marked with keyword "internal" as well.  The latter can
    be activated for R CMD check via environment variable
    _R_CHECK_RD_INTERNAL_TOO_.
  * New functions numToBits() and numToInts() extend the raw
    conversion utilities to (double precision) numeric.
  * Functions URLencode() and URLdecode() in package utils now work
    on vectors of URIs.  (Based on patch from Bob Rudis submitted
    with PR#17873.)
  * path.expand() can expand ~user on most Unix-alikes even when
    readline is not in use.  It tries harder to expand ~, for example
    should environment variable HOME be unset.
  * For HTML help (both dynamic and static), Rd file links to help
    pages in external packages are now treated as references to
    topics rather than file names, and fall back to a file link only
    if the topic is not found in the target package. The earlier rule
    which prioritized file names over topics can be restored by
    setting the environment variable _R_HELP_LINKS_TO_TOPICS_ to a
    false value.
  * c() now removes NULL arguments before dispatching to methods,
    thus simplifying the implementation of c() methods, _but_ for
    back compatibility keeps NULL when it is the first argument.
    (From a report and patch proposal by Lionel Henry in PR#17900.)
  * Vectorize()'s result function's environment no longer keeps
    unneeded objects.
  * Function ...elt() now propagates visibility consistently with
    ..n.  (Thanks to Lionel Henry's PR#17905.)
  * capture.output() no longer uses non-standard evaluation to
    evaluate its arguments.  This makes evaluation of functions like
    parent.frame() more consistent.  (Thanks to Lionel Henry's
    PR#17907.)
  * packBits(bits, type="double") now works as inverse of
    numToBits().  (Thanks to Bill Dunlap's proposal in PR#17914.)
  * curlGetHeaders() has two new arguments, timeout to specify the
    timeout for that call (overriding getOption("timeout")) and TLS
    to specify the minimum TLS protocol version to be used for
    https:// URIs (_inter alia_ providing a means to check for sites
    using deprecated TLS versions 1.0 and 1.1).
  * For nls(), an optional constant scaleOffset may be added to the
    denominator of the relative offset convergence test for cases
    where the fit of a model is expected to be exact, thanks to a
    proposal by John Nash.  nls(*, trace=TRUE) now also shows the
    convergence criterion.
  * Numeric differentiation _via_ numericDeriv() gets new optional
    arguments eps and central, the latter for taking central divided
    differences.  The latter can be activated for nls() via
    nls.control(nDcentral = TRUE).
  * nls() now passes the trace and control arguments to getInitial(),
    notably for all self-starting models, so these can also be fit in
    zero-noise situations via a scaleOffset.  For this reason, the
    initial function of a selfStart model must now have ... in its
    argument list.
  * bquote(splice = TRUE) can now splice expression vectors with
    attributes: this makes it possible to splice the result of
    parse(keep.source = TRUE).  (Report and patch provided by Lionel
    Henry in PR#17869.)
  * textConnection() gets an optional name argument.
  * get(), exists(), and get0() now signal an error if the first
    argument has length greater than 1.  Previously additional
    elements were silently ignored.  (Suggested by Antoine Fabri on
    R-devel.)
  * R now provides a shorthand notation for creating functions, e.g.
    \(x) x + 1 is parsed as function(x) x + 1.
  * R now provides a simple native forward pipe syntax |&gt;.  The
    simple form of the forward pipe inserts the left-hand side as the
    first argument in the right-hand side call.  The pipe
    implementation as a syntax transformation was motivated by
    suggestions from Jim Hester and Lionel Henry.
  * all.equal(f, g) for functions now by default also compares their
    environment(.)s, notably via new all.equal method for class
    function.  Comparison of nls() fits, e.g., may now need
    all.equal(m1, m2, check.environment = FALSE).
  * .libPaths() gets a new option include.site, allowing to _not_
    include the site library.  (Thanks to Dario Strbenac's suggestion
    and Gabe Becker's PR#18016.)
  * Lithuanian translations are now available.  (Thanks to Rimantas
    Zakauskas.)
  * names() now works for DOTSXP objects.  On the other hand, in
    R-lang, the R language manual, we now warn against relying on the
    structure or even existence of such dot-dot-dot objects.
  * all.equal() no longer gives an error on DOTSXP objects.
  * capabilities("cairo") now applies only to the file-based devices
    as it is now possible (if very unusual) to build R with Cairo
    support for those but not for X11().
  * There is optional support for tracing the progress of
    loadNamespace() - see its help.
  * (Not Windows.)  l10n_info() reports an additional element, the
    name of the encoding as reported by the OS (which may differ from
    the encoding part (if any) of the result from
    Sys.getlocale("LC_CTYPE").
  * New function gregexec() which generalizes regexec() to find _all_
    disjoint matches and well as all substrings corresponding to
    parenthesized subexpressions of the given regular expression.
    (Contributed by Brodie Gaslam.)
  * New function charClass() in package utils to query the
    wide-character classification functions in use (such as
    iswprint).
  * The names of quantile()'s result no longer depend on the global
    getOption("digits"), but quantile() gets a new optional argument
    digits = 7 instead.
  * grep(), sub(), regexp and variants work considerably faster for
    long factors with few levels.  (Thanks to Michael Chirico's
    PR#18063.)
  * Provide grouping of x11() graphics windows within a window
    manager such as Gnome or Unity; thanks to a patch by Ivan Krylov
    posted to R-devel.
  * The split() method for class data.frame now allows the f argument
    to be specified as a formula.
  * sprintf now warns on arguments unused by the format string.
  * New palettes "Rocket" and "Mako" for hcl.colors() (approximating
    palettes of the same name from the 'viridisLite' package).
    Contributed by Achim Zeileis.
  * The base environment and its namespace are now locked (so one can
    no longer add bindings to these or remove from these).
  * Rterm handling of multi-byte characters has been improved,
    allowing use of such characters when supported by the current
    locale.
  * Rterm now accepts ALT+ +xxxxxxxx sequences to enter Unicode
    characters as hex digits.
  * Environment variable LC_ALL on Windows now takes precedence over
    LC_CTYPE and variables for other supported categories, matching
    the POSIX behaviour.
  * duplicated() and anyDuplicated() are now optimized for integer
    and real vectors that are known to be sorted via the ALTREP
    framework. Contributed by Gabriel Becker via PR#17993.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 14
    and so packages that provide graphics devices should be
    reinstalled.
  * Graphics devices should now specify deviceVersion to indicate
    what version of the graphics engine they support.
  * Graphics devices can now specify deviceClip.  If TRUE, the
    graphics engine will never perform any clipping of output itself.
    The clipping that the graphics engine does perform (for both
    canClip = TRUE and canClip = FALSE) has been improved to avoid
    producing unnecessary artifacts in clipped output.
  * The grid package now allows gpar(fill) to be a linearGradient(),
    a radialGradient(), or a pattern().  The viewport(clip) can now
    also be a grob, which defines a clipping path, and there is a new
    viewport(mask) that can also be a grob, which defines a mask.
    These new features are only supported so far on the Cairo-based
    graphics devices and on the pdf() device.
  * (Not Windows.)  A warning is given when a Cairo-based type is
    specified for a png(), jpeg(), tiff() or bmp() device but Cairo
    is unsupported (so type = "Xlib" is tried instead).
  * grSoftVersion() now reports the versions of FreeType and
    FontConfig if they are used directly (not _via_ Pango), as is
    most commonly done on macOS.
  C-LEVEL FACILITIES:
  * The _standalone_ libRmath math library and R's C API now provide
    log1pexp() again as documented, and gain log1mexp().
  INSTALLATION on a UNIX-ALIKE:
  * configure checks for a program pkgconf if program pkg-config is
    not found.  These are now only looked for on the path (like
    almost all other programs) so if needed specify a full path to
    the command in PKG_CONFIG, for example in file config.site.
  * C99 function iswblank is required - it was last seen missing ca
    2003 so the workaround has been removed.
  * There are new configure options --with-internal-iswxxxxx,
  - -with-internal-towlower and --with-internal-wcwidth which allows
    the system functions for wide-character classification,
    case-switching and width (wcwidth and wcswidth) to be replaced by
    internal ones.  The first has long been used on macOS, AIX (and
    Windows) but this enables it to be unselected there and selected
    for other platforms (it is the new default on Solaris).  The
    second is new in this version of R and is selected by default on
    macOS and Solaris.  The third has long been the default and
    remains so as it contains customizations for East Asian
    languages.
    System versions of these functions are often minimally
    implemented (sometimes only for ASCII characters) and may not
    cover the full range of Unicode points: for example Solaris (and
    Windows) only cover the Basic Multilingual Plane.
  * Cairo installations without X11 are more likely to be detected by
    configure, when the file-based Cairo graphics devices will be
    available but not X11(type = "cairo").
  * There is a new configure option --with-static-cairo which is the
    default on macOS.  This should be used when only static cairo
    (and where relevant, Pango) libraries are available.
  * Cairo-based graphics devices on platforms without Pango but with
    FreeType/FontConfig will make use of the latter for font
    selection.
  LINK-TIME OPTIMIZATION on a UNIX-ALIKE:
  * Configuring with flag --enable-lto=R now also uses LTO when
    installing the recommended packages.
  * R CMD INSTALL and R CMD SHLIB have a new flag --use-LTO to use
    LTO when compiling code, for use with R configured with
  - -enable-lto=R.  For R configured with --enable-lto, they have
    the new flag --no-use-LTO.
    Packages can opt in or out of LTO compilation _via_ a UseLTO
    field in the DESCRIPTION file.  (As usual this can be overridden
    by the command-line flags.)
  BUILDING R on Windows:
  * for GCC &gt;= 8, FC_LEN_T is defined in config.h and hence character
    lengths are passed from C to Fortran in _inter alia_ BLAS and
    LAPACK calls.
  * There is a new text file src/gnuwin32/README.compilation, which
    outlines how C/Fortran code compilation is organized and
    documents new features:
  * R can be built with Link-Time Optimization with a suitable
    compiler - doing so with GCC 9.2 showed several
    inconsistencies which have been corrected.
  * There is support for cross-compiling the C and Fortran code
    in R and standard packages on suitable (Linux) platforms.
    This is mainly intended to allow developers to test later
    versions of compilers - for example using GCC 9.2 or 10.x has
    detected issues that GCC 8.3 in Rtools40 does not.
  * There is experimental support for cross-building R packages
    with C, C++ and/or Fortran code.
  * The R installer can now be optionally built to support a single
    architecture (only 64-bit or only 32-bit).
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++14 where
    available (which it is on all currently checked platforms): if
    not (as before) C++11 is used if available otherwise C++ is not
    supported.
    Packages which specify C++11 will still be installed using C++11.
    C++14 compilers may give deprecation warnings, most often for
    std::random_shuffle (deprecated in C++14 and removed in C++17).
    Either specify C++11 (see 'Writing R Extensions') or modernize
    the code and if needed specify C++14.  The latter has been
    supported since R 3.4.0 so the package's DESCRIPTION would need
    to include something like
    Depends: R (&gt;= 3.4)
  PACKAGE INSTALLATION on Windows:
  * R CMD INSTALL and R CMD SHLIB make use of their flag --use-LTO
    when the LTO_OPT make macro is set in file etc/${R_ARCH}/Makeconf
    or in a personal/site Makevars file.  (For details see 'Writing R
    Extensions' SS4.5.)
    This provides a valuable check on code consistency.  It does work
    with GCC 8.3 as in Rtools40, but that does not detect everything
    the CRAN checks with current GCC do.
  PACKAGE INSTALLATION on macOS:
  * The default personal library directory on builds with
  - -enable-aqua (including CRAN builds) now differs by CPU type,
    one of
    ~/Library/R/x86_64/x.y/library
    ~/Library/R/arm64/x.y/library
    This uses the CPU type R (and hence the packages) were built for,
    so when a x86_64 build of R is run under Rosetta emulation on an
    arm64 Mac, the first is used.
  UTILITIES:
  * R CMD check can now scan package functions for bogus return
    statements, which were possibly intended as return() calls (wish
    of PR#17180, patch by Sebastian Meyer). This check can be
    activated via the new environment variable
    _R_CHECK_BOGUS_RETURN_, true for --as-cran.
  * R CMD build omits tarballs and binaries of previous builds from
    the top-level package directory.  (PR#17828, patch by Sebastian
    Meyer.)
  * R CMD check now runs sanity checks on the use of LazyData, for
    example that a data directory is present and that
    LazyDataCompression is not specified without LazyData and has a
    documented value.  For packages with large LazyData databases
    without specifying LazyDataCompression, there is a reference to
    the code given in 'Writing R Extensions' SS1.1.6 to test the
    choice of compression (as in all the CRAN packages tested a
    non-default method was preferred).
  * R CMD build removes LazyData and LazyDataCompression fields from
    the DESCRIPTION file of packages without a data directory.
  ENCODING-RELATED CHANGES:
  * The parser now treats \Unnnnnnnn escapes larger than the upper
    limit for Unicode points (\U10FFFF) as an error as they cannot be
    represented by valid UTF-8.
    Where such escapes are used for outputting non-printable
    (including unassigned) characters, 6 hex digits are used (rather
    than 8 with leading zeros).  For clarity, braces are used, for
    example \U{0effff}.
  * The parser now looks for non-ASCII spaces on Solaris (as
    previously on most other OSes).
  * There are warnings (including from the parser) on the use of
    unpaired surrogate Unicode points such as \uD834.  (These cannot
    be converted to valid UTF-8.)
  * Functions nchar(), tolower(), toupper() and chartr() and those
    using regular expressions have more support for inputs with a
    marked Latin-1 encoding.
  * The character-classification functions used (by default) to
    replace the system iswxxxxx functions on Windows, macOS and AIX
    have been updated to Unicode 13.0.0.
    The character-width tables have been updated to include new
    assignments in Unicode 13.0.0.
  * The code for evaluating default (extended) regular expressions
    now uses the same character-classification functions as the rest
    of R (previously they differed on Windows, macOS and AIX).
  * There is a build-time option to replace the system's
    wide-character wctrans C function by tables shipped with R: use
    configure option --with-internal-towlower or (on Windows)
  - DUSE_RI18N_CASE in CFLAGS when building R.  This may be needed
    to allow tolower() and toupper() to work with Unicode characters
    beyond the Basic Multilingual Plane where not supported by system
    functions (e.g. on Solaris where it is the new default).
  * R is more careful when truncating UTF-8 and other multi-byte
    strings that are too long to be printed, passed to the system or
    libraries or placed into an internal buffer.  Truncation will no
    longer produce incomplete multibyte characters.
  DEPRECATED AND DEFUNCT:
  * Function plclust() from the package stats and
    package.dependencies(), pkgDepends(), getDepList(),
    installFoundDepends(), and vignetteDepends() from package tools
    are defunct.
  * Defunct functions checkNEWS() and readNEWS() from package tools
    and CRAN.packages() from utils have been removed.
  * R CMD config CXXCPP is defunct (it was deprecated in R 3.6.2).
  * parallel::detectCores() drops support for Irix (retired in 2013).
  * The LINPACK argument to chol.default(), chol2inv(),
    solve.default() and svd() has been defunct since R 3.1.0.  It was
    silently ignored up to R 4.0.3 but now gives an error.
  * Subsetting/indexing, such as ddd[*] or ddd$x on a DOTSXP
    (dot-dot-dot) object ddd has been disabled; it worked by accident
    only and was undocumented.
  BUG FIXES:
  * Many more C-level allocations (mainly by malloc and strdup) are
    checked for success with suitable alternative actions.
  * Bug fix for replayPlot(); this was turning off graphics engine
    display list recording if a recorded plot was replayed in the
    same session.  The impact of the bug became visible if resize the
    device after replay OR if attempted another savePlot() after
    replay (empty display list means empty screen on resize or empty
    saved plot).
  * R CMD check etc now warn when a package exports non-existing S4
    classes or methods, also in case of no "methods" presence.
    (Reported by Alex Bertram; reproducible example and patch by
    Sebastian Meyer in PR#16662.)
  * boxplot() now also accepts calls for labels such as ylab, the
    same as plot().  (Reported by Marius Hofert.)
  * The help page for xtabs() now correctly states that addNA is
    setting na.action = na.pass among others.  (Reported as PR#17770
    by Thomas Soeiro.)
  * The R CMD check &lt;pkg&gt; gives a longer and more comprehensible
    message when DESCRIPTION misses dependencies, e.g., in Imports:.
    (Thanks to the contributors of PR#17179.)
  * update.default() now calls the generic update() on the formula to
    work correctly for models with extended formulas.  (As reported
    and suggested by Neal Fultz in PR#17865.)
  * The horizontal position of leaves in a dendrogram is now correct
    also with center = FALSE.  (PR#14938, patch from Sebastian
    Meyer.)
  * all.equal.POSIXt() no longer warns about and subsequently ignores
    inconsistent "tzone" attributes, but describes the difference in
    its return value (PR#17277).  This check can be disabled _via_
    the new argument check.tzone = FALSE as suggested by Sebastian
    Meyer.
  * as.POSIXct() now populates the "tzone" attribute from its tz
    argument when x is a logical vector consisting entirely of NA
    values.
  * x[[2^31]] &lt;- v now works.  (Thanks to the report and patch by
    Suharto Anggono in PR#17330.)
  * In log-scale graphics, axis() ticks and label positions are now
    computed more carefully and symmetrically in their range,
    typically providing _more_ ticks, fulfilling wishes in PR#17936.
    The change really corresponds to an improved axisTicks() (package
    grDevices), potentially influencing grid and lattice, for
    example.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now correct to at
    least five digits where it was catastrophically wrong,
    previously.
  * sum(df) and similar "Summary"- and "Math"-group member functions
    now work for data frames df with logical columns, notably also of
    zero rows.  (Reported to R-devel by Martin "b706".)
  * unsplit() had trouble with tibbles due to unsound use of rep(NA,
    len)-indexing, which should use NA_integer_ (Reported to R-devel
    by Mario Annau.)
  * pnorm(x, log.p = TRUE) underflows to -Inf slightly later.
  * show(&lt;hidden S4 generic&gt;) prints better and without quotes for
    non-hidden S4 generics.
  * read.table() and relatives treated an "NA" column name as missing
    when check.names = FALSE PR#18007.
  * Parsing strings containing UTF-16 surrogate pairs such as
    "\uD834\uDD1E" works better on some (uncommon) platforms.
    sprintf("%X", utf8ToInt("\uD834\uDD1E")) should now give "1D11E"
    on all platforms.
  * identical(x,y) is no longer true for differing DOTSXP objects,
    fixing PR#18032.
  * str() now works correctly for DOTSXP and related exotics, even
    when these are doomed.
    Additionally, it no longer fails for lists with a class and
    "irregular" method definitions such that e.g. lapply(*) will
    necessarily fail, as currently for different igraph objects.
  * Too long lines in environment files (e.g. Renviron) no longer
    crash R. This limit has been increased to 100,000 bytes.
    (PR#18001.)
  * There is a further workaround for FreeType giving incorrect
    italic font faces with cairo-based graphics devices on macOS.
  * add_datalist(*, force = TRUE) (from package tools) now actually
    updates an existing data/datalist file for new content.  (Thanks
    to a report and patch by Sebastian Meyer in PR#18048.)
  * cut.Date() and cut.POSIXt() could produce an empty last interval
    for breaks = "months" or breaks = "years".  (Reported as PR#18053
    by Christopher Carbone.)
  * Detection of the encoding of 'regular' macOS locales such as
    en_US (which is UTF-8) had been broken by a macOS change:
    fortunately these are now rarely used with en_US.UTF-8 being
    preferred.
  * sub() and gsub(pattern, repl, x, *) now keep attributes of x such
    as names() also when pattern is NA (PR#18079).
  * Time differences ("difftime" objects) get a replacement and a
    rep() method to keep "units" consistent.  (Thanks to a report and
    patch by Nicolas Bennett in PR#18066.)
  * The \RdOpts macro, setting defaults for \Sexpr options in an Rd
    file, had been ineffective since R 2.12.0: it now works again.
    (Thanks to a report and patch by Sebastian Meyer in PR#18073.)
  * mclapply and pvec no longer accidentally terminate parallel
    processes started before by mcparallel or related calls in
    package parallel (PR#18078).
  * grep and other functions for evaluating (extended) regular
    expressions handle in Unicode also strings not explicitly flagged
    UTF-8, but flagged native when running in UTF-8 locale.
  * Fixed a crash in fifo implementation on Windows (PR#18031).
  * Binary mode in fifo on Windows is now properly detected from
    argument open (PR#15600, PR#18031).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1622808000">- The line %{__install} -m 755 -d %{_infodir}
  no longer works in TW or Factory.
  But without that line it works everywhere. So this instruction
  was commented out of the spec file.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1628596800">- CHANGES IN R 4.1.1:
  NEW FEATURES:
  * require(pkg, quietly = TRUE) is quieter and in particular does
    not warn if the package is not found.
  DEPRECATED AND DEFUNCT:
  * Use of ftp:// URIs should be regarded as deprecated, with
    on-going support confined to method = "libcurl" and not routinely
    tested.  (Nowadays no major browser supports them.)
  * The non-default method = "internal" is deprecated for http:// and
    ftp:// URIs for both download.file and url.
  * On Windows, method = "wininet" is deprecated for http://,
    https:// and ftp:// URIs for both download.file and url.  (A
    warning is only given for ftp://.)
    For ftp:// URIs the default method is now "libcurl" if available
    (which it is on CRAN builds).
    method = "wininet" remains the default for http:// and https://
    URIs but if libcurl is available, using method = "libcurl" is
    preferred.
  INSTALLATION:
  * make check now works also without a LaTeX installation.  (Thanks
    to Sebastian Meyer's PR#18103.)
  BUG FIXES:
  * make check-devel works again in an R build configured with
  - -without-recommended-packages.
  * qnbinom(p, size, mu) for large size/mu is correct now in a range
    of cases (PR#18095); similarly for the (size, prob)
    parametrization of the negative binomial.  Also qpois() and
    qbinom() are better and or faster for extreme cases.  The
    underlying C code has been modularized and is common to all four
    cases of discrete distributions.
  * gap.axis is now part of the axis() arguments which are passed
    from bxp(), and hence boxplot().  (Thanks to Martin Smith's
    report and suggestions in PR#18109.)
  * .First and .Last can again be set from the site profile.
  * seq.int(from, to, *) and seq.default(..) now work better in large
    range cases where from-to is infinite where the two boundaries
    are finite.
  * all.equal(x,y) now returns TRUE correctly also when several
    entries of abs(x) and abs(y) are close to .Machine$double.xmax,
    the largest finite numeric.
  * model.frame() now clears the object bit when removing the class
    attribute of a value via na.action (PR#18100).
  * charClass() now works with multi-character strings on Windows
    (PR#18104, fixed by Bill Dunlap).
  * encodeString() on Solaris now works again in Latin-1 encoding on
    characters represented differently in UTF-8.  Support for
    surrogate pairs on Solaris has been improved.
  * file.show() on Windows now works with non-ASCII path names
    representable in the current native encoding (PR#18132).
  * Embedded R on Windows can now find R home directory via the
    registry even when installed only for the current user
    (PR#18135).
  * pretty(x) with finite x now returns finite values also in the
    case where the extreme x values are close in size to the maximal
    representable number .Machine$double.xmax.
    Also, it's been tweaked for very small ranges and when a boundary
    is close (or equal) to zero; e.g., pretty(c(0,1e-317)) no longer
    has negative numbers, currently still warning about a very small
    range, and pretty(2^-(1024 - 2^-1/(c(24,10)))) is more accurate.
  * The error message for not finding vignette files when weaving has
    correct file sizes now. (Thanks to Sebastian Meyer's PR#18154.)
  * dnbinom(20, &lt;large&gt;, 1) now correctly gives 0, and similar cases
    are more accurate with underflow precaution.  (Reported by Francisco Vera Alcivar in PR#18072.)</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635163200">- repaired https://bugzilla.suse.com/show_bug.cgi?id=1191380
  (rpmacros now go to rpmmacrodir)
- minor clean-ups in spec file</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635768000">- CHANGES IN R 4.1.2:
  C-LEVEL FACILITIES:
  * The workaround in headers R.h and Rmath.h (using namespace std;)
    for the Oracle Developer Studio compiler is no longer needed now
    C++11 is required so has been removed.  A couple more usages of
    log() (which should have been std::log()) with an int argument
    are reported on Solaris.
  * The undocumented limit of 4095 bytes on messages from the
    S-compatibility macros PROBLEM and MESSAGE is now documented and
    longer messages will be silently truncated rather than
    potentially causing segfaults.
  * If the R_NO_SEGV_HANDLER environment variable is non-empty, the
    signal handler for SEGV/ILL/BUS signals (which offers recovery
    user interface) is not set. This allows more reliable debugging
    of crashes that involve the console.
  DEPRECATED AND DEFUNCT:
  * The legacy S-compatibility macros PROBLEM, MESSAGE, ERROR, WARN,
    WARNING, RECOVER, ... are deprecated and will be hidden in R
    4.2.0. R's native interface of Rf_error and Rf_warning has long
    been preferred.
  BUG FIXES:
  * .mapply(F, dots, .) no longer segfaults when dots is not a list
    and uses match.fun(F) as always documented; reported by Andrew
    Simmons in PR#18164.
  * hist(&lt;Date&gt;, ...) and hist(&lt;POSIXt&gt;, ...)  no longer pass
    arguments for rect() (such as col and density) to axis().
    (Thanks to Sebastian Meyer's PR#18171.)
  * \Sexpr{ch} now preserves Encoding(ch). (Thanks to report and
    patch by Jeroen Ooms in PR#18152.)
  * Setting the RNG to "Marsaglia-Multicarry" e.g., by RNGkind(), now
    warns in more places, thanks to Andr'e Gillibert's report and
    patch in PR#18168.
  * gray(numeric(), alpha=1/2) no longer segfaults, fixing PR#18183,
    reported by Till Krenz.
  * Fixed dnbinom(x, size=&lt;very_small&gt;, .., log=TRUE) regression,
    reported by Martin Morgan.
  * as.Date.POSIXlt(x) now keeps names(x), thanks to Davis Vaughan's
    report and patch in PR#18188.
  * model.response() now strips an "AsIs" class typically, thanks to
    Duncan Murdoch's report and other discussants in PR#18190.
  * try() is considerably faster in case of an error and long call,
    as e.g., from some do.call().  Thanks to Alexander Kaever's
    suggestion posted to R-devel.
  * qqline(y = &lt;object&gt;) such as y=I(.), now works, see also
    PR#18190.
  * Non-integer mgp par() settings are now handled correctly in
    axis() and mtext(), thanks to Mikael Jagan and Duncan Murdoch's
    report and suggestion in PR#18194.
  * formatC(x) returns length zero character() now, rather than ""
    when x is of length zero, as documented, thanks to Davis
    Vaughan's post to R-devel.
  * removeSource(fn) now retains (other) attributes(fn).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1647000000">- CHANGES IN R 4.1.3:
  NEW FEATURES:
  * The default version of Bioconductor has been changed to 3.14.
    (This is used by setRepositories and the menus in GUIs.)
  UTILITIES:
  * R CMD check --as-cran has a workaround for a bug in versions of
    file up to at least 5.41 which mis-identify DBF files last
    changed in 2022 as executables.
  C-LEVEL FACILITIES:
  * The legacy S-compatibility macros SINGLE_* in R_ext/Constants.h
    (included by R.h) are deprecated and will be removed in R 4.2.0.
  BUG FIXES:
  * Initialization of self-starting nls() models with initialization
    functions following the pre-R-4.1.0 API (without the ...
    argument) works again for now, with a deprecation warning.
  * Fixed quoting of ~autodetect~ in Java setting defaults to avoid
    inadvertent user lookup due to leading ~, reported in PR#18231 by
    Harold Gutch.
  * substr(., start, stop) &lt;- v now treats _negative_ stop values
    correctly.  Reported with a patch in PR#18228 by Brodie Gaslam.
  * Subscripting an array x without dimnames by a
    length(dim(x))-column character matrix gave "random" non-sense,
    now an error; reported in PR#18244 by Mikael Jagan.
  * ...names() now matches names(list(...)) closely, fixing PR#18247.
  * all.equal(*, scale = s) now works as intended when length(s) &gt; 1,
    partly thanks to Michael Chirico's PR#18272.
  * print(x) for long vectors x now also works for named atomic
    vectors or lists and prints the correct number when reaching the
    getOption("max.print") limit; partly thanks to a report and
    proposal by Hugh Parsonage to the R-devel list.
  * all.equal(&lt;selfStart&gt;, *) no longer signals a deprecation
    warning.
  * reformulate(*, response=r) gives a helpful error message now when
    length(r) &gt; 1, thanks to Bill Dunlap's PR#18281.
  * Modifying globalCallingHandlers inside withCallingHandlers() now
    works or fails correctly, thanks to Henrik Bengtsson's PR#18257.
  * hist(&lt;Date&gt;, breaks = "days") and hist(&lt;POSIXt&gt;, breaks = "secs")
    no longer fail for inputs of length 1.
  * qbeta(.001, .9, .009) and similar cases now converge correctly
    thanks to Ben Bolker's report in PR#17746.
  * window(x, start, end) no longer wrongly signals "'start' cannot
    be after 'end'", fixing PR#17527 and PR#18291.
  * data() now checks that its (rarely used) list argument is a
    character vector - a couple of packages passed other types and
    gave incorrect results.
  * which() now checks its arr.ind argument is TRUE rather coercing
    to logical and taking the first element - which gave incorrect
    results in package code.
  * model.weights() and model.offset() more carefully extract their
    model components, thanks to Ben Bolker and Tim Taylor's R-devel
    post.
  * list.files(recursive = TRUE) now shows all broken symlinks
    (previously, some of them may have been omitted, PR#18296).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1650628800">- CHANGES IN R 4.2.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * The formula method of aggregate() now matches the generic in
    naming its first argument x (resolving PR#18299 by Thomas
    Soeiro).
    This means that calling aggregate() with a formula as a named
    first argument requires name formula in earlier versions of R and
    name x now, so portable code should not name the argument (code
    in many packages did).
  * Calling &amp;&amp; or || with either argument of length greater than one
    now gives a warning (which it is intended will become an error).
  * Calling if() or while() with a condition of length greater than
    one gives an error rather than a warning.  Consequently,
    environment variable _R_CHECK_LENGTH_1_CONDITION_ no longer has
    any effect.
  * Windows users should consult the WINDOWS section below for some
    profound changes including
  * Support for 32-bit builds has been dropped.
  * UTF-8 locales are used where available.
  * The default locations for the R installation and personal
    library folder have been changed.
    Thanks to Tomas Kalibera for months of work on the Windows port
    for this release.
  NEW FEATURES:
  * matrix(x, n, m) now warns in more cases where length(x) differs
    from n * m, as suggested by Abby Spurdle and Wolfgang Huber in
    Feb 2021 on the R-devel mailing list.
    This warning can be turned into an error by setting environment
    variable _R_CHECK_MATRIX_DATA_ to TRUE: R CMD check --as-cran
    does so unless it is already set.
  * Function file_test() in package utils gains tests for symlinks,
    readability and writability.
  * capabilities("libxml") is now false.
    The description of capabilities("http/ftp") now reflects that it
    refers to the default method, no longer the internal one.
  * simplify2array() gains an except argument for controlling the
    exceptions used by sapply().
  * Environment variables R_LIBS_USER and R_LIBS_SITE are both now
    set to the R system default if unset or empty, and can be set to
    NULL to indicate an empty list of user or site library
    directories.
  * The warning for axis()(-like) calls in cases of relatively small
    ranges (typically in log-scale situations) is slightly improved
    _and_ suppressed from explicit calls to .axisPars() as has always
    been the intention.
  * The contrasts setter function `contrasts&lt;-` gains an explicit
    default how.many = NULL rather than just using missing(how.many).
  * grid.pretty() gains a new optional argument n = 5.
  * There is a new function .pretty() with option bounds as a
    technical-utility version of pretty().  It and pretty() gain a
    new argument f.min with a better than back-compatible default.
  * Function grDevices::axisTicks() and related functions such as
    graphics::axis() work better, notably for the log scale; partly
    because of the pretty() improvements, but also because care is
    taken e.g., when ylim is finite but diff(ylim) is infinite.
  * nclass.FD() gains a digits option.
  * The R Mathlib internal C function bd0() (called indirectly from a
    dozen probability density and distribution functions such as
    dpois(), dbinom(), dgamma(), pgamma() _etc_) has been
    complemented by a more sophisticated and (mostly) more accurate C
    function ebd0(), currently called only by internal dpois_raw()
    improving accuracy for R level dpois() and potentially others
    calling it such as dnbinom(), dgamma() or pgamma().  (Thanks to
    Morten Welinder's PR#15628.)
  * write.ftable() gains sep = " " argument as suggested by Thomas
    Soeiro.
  * The names of the locale categories supported by R's
    Sys.getlocale() and Sys.setlocale() are now provided by variable
    .LC.categories in the base namespace.
  * The Date and POSIXt methods for hist() and the histogram method
    for plot() now also use the new default col = "lightgray" in
    consistency with the corresponding change to hist()'s default for
    R 4.0.0.
  * hist.default() gains new fuzz argument, and the histogram plot
    method no longer uses fractional axis ticks when displaying
    counts ("Frequency").
  * mapply() and hence Map() now also obey the "max-or-0-if-any"
    recycling rule, such that, e.g., Map(`+`, 1:3, 1[0]) is valid
    now.
  * as.character(&lt;obj&gt;) for "hexmode" or "octmode" objects now
    fulfils the important basic rule as.character(x)[j] ===
    as.character(x[j]).
  * The set utility functions, notably intersect() have been tweaked
    to be more consistent and symmetric in their two set arguments,
    also preserving a common mode.
  * substr(ch, start,end) &lt;- new now e.g., preserves names(ch); ditto
    for substring(), thanks to a patch from Brodie Gaslam.
  * plot(&lt;lm&gt;) gains a extend.ylim.f argument, in partial response to
    PR#15285; further PR#17784 is fixed thanks to several
    contributors and a patch by Elin Waring.  The Cook's dist
    contours get customizable via cook.col and cook.lty with a
    different default color and their legend is nicer by default and
    customizable via cook.legendChanges.
  * Attempting to subset an object that is not subsettable now
    signals an error of class notSubsettableError. The
    non-subsettable object is contained in the object field of the
    error condition.
  * Subscript-out-of-bounds errors are now signaled as errors of
    class subscriptOutOfBoundsError.
  * Stack-overflow errors are now signaled as errors inheriting from
    class stackOverflowError. See ?stackOverflowError for more
    details.
  * New partly experimental Sys.setLanguage() utility, solving the
    main problem of PR#18055.
  * gettext() and gettextf() get a new option trim = TRUE which when
    set to false allows translations for strings such as "Execution
    halted\n" typical for C code.
  * An experimental implementation of hash tables is now available.
    See ?hashtab for more details.
  * identical() gains a extptr.as.ref argument for requesting that
    external pointer objects be compared as reference objects.
  * reorder() gets an argument decreasing which it passes to sort()
    for level creation; based on the wish and patch by Thomas Soeiro
    in PR#18243.
  * as.vector() gains a data.frame method which returns a simple
    named list, also clearing a long standing 'FIXME' to enable
    as.vector(&lt;data.frame&gt;, mode="list").  This breaks code relying
    on as.vector(&lt;data.frame&gt;) to return the unchanged data frame.
  * legend() is now vectorized for arguments cex, x.intersp, and
    text.width.  The latter can now also be specified as a vector
    (one element for each column of the legend) or as NA for
    computing a proper column wise maximum value of strwidth(legend).
    The argument y.intersp can be specified as a vector with one
    entry for each row of the legend.
    legend() also gains new arguments title.cex and title.font.
    Thanks to Swetlana Herbrandt.
  * Deparsing no longer remaps attribute names dim, dimnames, levels,
    names and tsp to historical S-compatible names (which structure()
    maps back).
  * sample() and sample.int() have additional sanity checks on their
    size and n arguments.
    all.equal.numeric() gains a sanity check on its tolerance
    argument - calling all.equal(a, b, c) for three numeric vectors
    is a surprisingly common error.
    mean(na.rm =), rank(na.last =), barplot(legend.text =),
    boxplot(), contour(drawlabels =), polygon(border =) and
    methods::is(class2 =) have more robust sanity checks on their
    arguments.
    R CMD Rd2pdf (used by R CMD check) has a more robust sanity check
    on the format of \alias{} commands.
  * psigamma(x, deriv) for negative x now also works for deriv = 4
    and 5; their underlying C level dpsifn() is documented in
    'Writing R Extensions'.
  * The HTML help system now uses HTML5 (wish of PR#18149).
  * ks.test() now provides exact p-values also with ties and MC
    p-values in the two-sample (Smirnov) case.  By Torsten Hothorn.
  * ks.test() gains a formula interface, with y ~ 1 for the
    one-sample (Kolmogorov) test and y ~ group for the two-sample
    (Smirnov) test.  Contributed by Torsten Hothorn.
  * The return value from ks.test() now has class c("ks.test",
    "htest") - packages using try() need to take care to use
    inherits() and not == on the class.
  * New functions psmirnov(), qsmirnov() and rsmirnov() in package
    stats implementing the asymptotic and exact distributions of the
    two-sample Smirnov statistic.
  * iconv() now allows sub = "c99" to use C99-style escapes for UTF-8
    inputs which cannot be converted to encoding to.
  * In a forward pipe |&gt; expression it is now possible to use a named
    argument with the placeholder _ in the rhs call to specify where
    the lhs is to be inserted.  The placeholder can only appear once
    on the rhs.
  * The included LAPACK sources have been updated to version 3.10.0,
    except for the four Fortran 77 routines which 3.10.0 has
    re-implemented in Fortran 90 (where the older versions have been
    retained as the R build process does not support Fortran 90).
  * path.expand() and most other uses of tilde expansion now warn if
    a path would be too long if expanded.  (An exception is
    file.exists(), which silently returns false.)
  * trunc(&lt;Date&gt;, *) now supports units = "months" or "years" for
    consistency with the POSIXt method, thanks to Dirk Eddelbuettel's
    proposal in PR#18099.
  * list2DF() now checks that its arguments are of the same length,
    rather than use recycling.
  * The HTML help system has several new features: LaTeX-like math
    can be typeset using either KaTeX or MathJax, usage and example
    code is highlighted using Prism, and for dynamic help the output
    of examples and demos can be shown within the browser if the
    knitr package is installed. These features can be disabled by
    setting the environment variable _R_HELP_ENABLE_ENHANCED_HTML_ to
    a false value.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 15
    and so packages that provide graphics devices should be
    reinstalled.
  * The grid package now allows the user to specify a "vector" of
    pattern fills.  The fill argument to gpar() accepts a list of
    gradients and/or patterns and the functions linearGradient(),
    radialGradient(), and pattern() have a new group argument.
    Points grobs (data symbols) can now also have a pattern fill.
    The grobCoords() function now returns a more informative and
    complex result.
  * The grid package has new functions for drawing isolated groups:
    grid.group(), grid.define(), and grid.use().  These functions add
    compositing operators and affine transformations to R's graphics
    capabilities.
    The grid package also has new functions for stroking and filling
    paths: grid.stroke(), grid.fill(), and grid.fillStroke().
    A new function as.path() allows the user to specify the fill rule
    for a path that is to be used for clipping, stroking, or filling;
    available options are "winding" and "evenodd".  A new function
    as.mask() allows the user to specify the type of a mask;
    available options are "alpha" and "luminance".
    These new features are only supported so far (at most) on the
    Cairo-based graphics devices and on the pdf() device.
  * dev.capabilities() reports on device support for the new
    features.
  * par() now warns about unnamed non-character arguments to prevent
    misuse such as {usr &lt;- par("usr"); par(usr)}.
  INSTALLATION:
  * Facilities for accessing ftp:// sites are no longer tested
    (except _pro tem_ for curlGetHeaders()) as modern browsers have
    removed support.
  * R can now be built with DEFS = -DSTRICT_R_HEADERS .
  PACKAGE INSTALLATION:
  * R CMD INSTALL no longer tangles vignettes. This completes an R
    CMD build change in R 3.0.0 and affects packages built before R
    3.0.2. Such packages should be re-made with R CMD build to have
    the tangled R code of vignettes shipped with the tarball.
  * USE_FC_LEN_T will become the default: this uses the correct
    prototypes for Fortran BLAS/LAPACK routines called from C/C++,
    and requires adjustment of most such calls - see 'Writing R
    Extensions' SS6.6.2.  (This has been supported since R 3.6.2.)
  * Package installation speed for packages installed with
    keep.source has been improved. This resolve the issue reported by
    Ofek Shilon in PR#18236.
  UTILITIES:
  * R CMD check can optionally report files/directories left behind
    in home, /tmp (even though TMPDIR is set) and other directories.
    See the "R Internals" manual for details.
  * R CMD check now reports byte-compilation errors during
    installation.  These are not usually fatal but may result in
    parts of the package not being byte-compiled.
  * _R_CHECK_DEPENDS_ONLY_ can be applied selectively to examples,
    tests and/or vignettes in R CMD check: see the "R Internals"
    manual.
  * _R_CHECK_SRC_MINUS_W_IMPLICIT_ now defaults to true: recent
    versions of Apple clang on macOS have made implicit function
    declarations in C into a compilation error.
  * R CMD check --as-cran makes use of the environment variable
    AUTORECONF.  See the "R Internals" manual SS8 for further details.
  * R CMD check --use-valgrind also uses valgrind when re-building
    vignettes as some non-Sweave vignettes unhelpfully comment out
    all their code when R CMD check runs vignettes.
  * Errors in re-building vignettes (unless there are LaTeX errors)
    are reported by R CMD check as ERROR rather than WARNING when
    running vignettes has been skipped (as it frequently is in CRAN
    checks and by --as-cran).
  * R CMD Rd2pdf gains a --quiet option that is used by R CMD build
    when building the PDF package manual.
  * R CMD Rd2pdf now always runs LaTeX in batch mode, consistent with
    Texinfo &gt;= 6.7. The --batch option is ignored.
  * R CMD build and R CMD check now include the Rd file name and line
    numbers in the error message of an \Sexpr evaluation failure.
  * For packages using the \doi Rd macro (now an install-time \Sexpr)
    but no other dynamic Rd content, R CMD build now produces a
    smaller tarball and is considerably faster - skipping temporary
    package installation.
  C-LEVEL FACILITIES:
  * The non-API header R_ext/R-ftp-http.h is no longer provided, as
    the entry points it covered are now all defunct.
  * A number of non-API declarations and macro definitions have been
    moved from the installed header Rinternals.h to the internal
    header Defn.h. Packages that only use entry points and
    definitions documented to be part of the API as specified in
    'Writing R Extensions' SS6 should not be affected.
  * The macro USE_RINTERNALS no longer has any effect when compiling
    package code.  Packages which also use R_NO_REMAP will need to
    ensure that the remapped names are used for calls to API
    functions that were formerly also made available as macros.
  * The deprecated legacy S-compatibility macros PROBLEM, MESSAGE,
    ERROR, WARN, WARNING, RECOVER, ... are no longer defined in
    R_exts/RS.h (included by R.h).  Replace these by calls to
    Rf_error and Rf_warning (defined in header R_ext/Error.h included
    by R.h).
    Header R_ext/RS.h no longer includes R_ext/Error.h.
  * Header R_ext/Constants.h (included by R.h) when included from C++
    now includes the C++ header cfloat rather than the C header
    float.h (now possible as C++11 is required).
  * The legacy S-compatibility macros DOUBLE_* in R_ext/Constants.h
    (included by R.h) are deprecated.
  * The deprecated S-compatibility macros SINGLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * R_Calloc, R_Free and R_Realloc are preferred to their unprefixed
    forms and error messages now use the prefix. These forms were
    introduced in R 3.4.0 and are available even when
    STRICT_R_HEADERS is defined.
  * rmultinom has been documented in 'Writing R Extensions' SS6 so is
    now part of the R API.
  * Similarly, Rtanpi, called from R level tanpi() is now part of the
    R API.
  * The long-deprecated, undocumented and non-API entry point call_R
    is no longer declared in R_ext/RS.h (included by R.h).
  * The header S.h which has been unsupported since Jan 2016 has been
    removed.  Use R.h instead.
  DEPRECATED AND DEFUNCT:
  * The (non-default and deprecated) method = "internal" for
    download.file() and url() no longer supports http:// nor ftp://
    URIs.  (It is used only for file:// URIs.)
    On Windows, download.file(method = "wininet") no longer supports
    ftp:// URIs.  (It is no longer the default method, which is
    "libcurl" and does.)
    On Windows, the deprecated method = "wininet" now gives a warning
    for http:// and https:// URIs for both download.file() and url().
    (It is no longer the default method.)
  * On Windows, the command-line option --max-mem-size and
    environment variable R_MAX_MEM_SIZE are defunct.  The memory
    allocation limit was important for 32-bit builds, but these are
    no longer supported.
  * default.stringsAsFactors() is now formally deprecated, where that
    was only mentioned on its regular help page, previously.  So it
    now gives a warning if called.
  * unix.time() is defunct now; it had been deprecated since R 3.4.0.
  BUG FIXES:
  * Setting digits = 0 in format(), print.default() (and hence
    typically print()) or options() is again invalid.  Its behaviour
    was platform-dependent, and it is unclear what "zero significant
    digits" should mean (PR#18098).
  * Messages from C code in the cairo section of package grDevices
    are now also offered for translation, thanks to Michael Chirico's
    PR#18123.
  * mean(x) with finite x now is finite also without "long.double"
    capability.
  * R CMD Rd2pdf no longer leaves an empty build directory behind
    when it aborts due to an already existing output file.  (Thanks
    to Sebastian Meyer's PR#18141.)
  * density(x, weights = w, na.rm = TRUE) when anyNA(x) is true, now
    removes weights "in parallel" to x, fixing PR#18151, reported by
    Matthias Gondan.  Additionally, it gets a subdensity option.
  * Conversion of \Sexpr[]{&lt;expR&gt;} to LaTeX or HTML no longer
    produces long blocks of empty lines when &lt;expR&gt; itself contains
    several lines all producing empty output.  Thanks to a report and
    patch by Ivan Krylov posted to R-devel.
  * R CMD build no longer fails if a package vignette uses child
    documents and inst/doc exists.  (Thanks to Sebastian Meyer's
    PR#18156.)
  * When an R documentation ('help' source) file man/foo.Rd in a
    package has \donttest{..} examples with a syntax error, it is now
    signalled as ERROR and with correct line numbers relating to the
  * -Ex.R file, thanks to Duncan Murdoch and Sebastian Meyer's
    reports and patch proposals in PR#17501.
  * Improved determination of the correct translation domain in
    non-base packages, addressing the combination of PR#18092 and
    PR#17998 (#c6) with reports and _augmented_ patch #2904 by
    Suharto Anggono.
    Note that "R-base" is no longer the default domain e.g., for
    top-level calls to gettext(); rather translation needs explicit
    domain = * specification in such cases.
  * identical(attrib.as.set=FALSE) now works correctly with data
    frames with default row names (Thanks to Charlie Gao's PR#18179).
  * txtProgressBar() now enforces a non-zero width for argument char,
    without which no progress can be visible.
  * dimnames(table(d)) is more consistent in the case where d is a
    list with a single component, thanks to Thomas Soeiro's report to
    R-devel.
    Further, table(d1, d2) now gives an error when d1 and d2 are data
    frames as suggested by Thomas in PR#18224.
  * Fix for drawing semi-transparent lines and fills on the native
    Windows graphics device (PR#18219 and PR#16694).  Thanks to Nick
    Ray for helpful diagnosis on Bugzilla.
  * The deparser now wraps sub-expressions such as if(A) ..  with
    parentheses when needed; thanks to Duncan Murdoch's PR#18232 and
    Lionel Henry's patches there.
  * remove.packages() no longer tries to uninstall Priority: base
    packages, thanks to a report and suggestions by Colin Fay in
    PR#18227.
  * win.metafile() now has xpinch and ypinch arguments so that the
    user can override Windows' (potentially wrong) guess at device
    dimensions.
  * x[i] and x[[i]] for non-integer i should now behave in all cases
    as always documented: the index used is equivalent to
    as.integer(i) unless that would overflow where trunc(i) is used
    instead; thanks to Suharto Anggono's report and patch proposals
    in PR#17977.
  * asOneSidedFormula() now associates the resulting formula with the
    global environment rather than the evaluation environment created
    for the call.
  * &lt;bibentry&gt;$name now matches the field name case-insensitively,
    consistent with bibentry() creation and the replacement method.
  * cbind() failed to detect some length mismatches with a mixture of
    time-series and non-time-series inputs.
  * The default LaTeX style file Sweave.sty used by the RweaveLatex
    driver no longer loads the obsolete ae package; thanks to a
    report by Thomas Soeiro in PR#18271.  Furthermore, it now skips
    \usepackage[T1]{fontenc} for engines other than pdfTeX (if
    detected) or if the new [nofontenc] option is used.
  * smooth.spline() now stores its logical cv argument more safely,
    fixing a rare bug when printing, and also stores n.
  * smooth.spline(x,y,*) now computes the cv.crit statistic
    correctly, also when is.unsorted(x), fixing PR#18294.
  * The data.frame method of rbind() now warns when binding
    not-wholly-recycling vectors, by analogy to the default method
    (for matrices).
  * setAs() finds the correct class for name to when multiple
    packages define a class with that name. Thanks to Gabor Csardi
    for the report.
  * Fix for detaching a package when two classes of the same name are
    present in method signatures for the same generic. Thanks to
    Gabor Csardi for the report.
  * match.arg("", c("", "a", "B")) gives a better error message, in
    part from PR#17959, thanks to Elin Waring.
  * R CMD Sweave --clean no longer removes pre-existing files or
    subdirectories (PR#18242).
  * The quartz() device no longer splits polylines into subpaths.
    That has caused narrowly-spaced lines with many points to always
    look solid even when dashed line type was used due to dash phase
    restarts.
  * Deparsing constructs such as quote(1 + `!`(2) + 3) works again as
    before R 3.5.0, thanks to the report and patch in PR#18284 by
    Suharto Anggono.
  * as.list(f) for a factor f now keeps names(f), fixing PR#18309.
  * qbeta(.001, .9, .009) and analogous qf() calls now return a
    correct value instead of NaN or wrongly 1, all with a warning;
    thanks to the report by Ludger Goeminne in PR#18302.
  * plot.lm() failed to produce the plot of residuals vs.  factor
    levels (i.e., which=5 when leverages are constant) for models
    with character predictors (PR#17840).
  * interaction.plot(..., xtick = TRUE) misplaced the x-axis line
    (PR#18305).
  * Not strictly fixing a bug, format()ing and print()ing of
    non-finite Date and POSIXt values NaN and +/-Inf no longer show
    as NA but the respective string, e.g., Inf, for consistency with
    numeric vector's behaviour, fulfilling the wish of PR#18308.
  * R CMD check no longer runs test scripts generated from
    corresponding .Rin files twice and now signals an ERROR if
    processing an .Rin script fails.
  * tools::Rd2txt() used for plain-text help pages now renders \hrefs
    (if tools::Rd2txt_options(showURLs = TRUE)) and \urls with
    percent-encoding and standards-compliant delimiting style (angle
    brackets and no URL: prefix).  \email is now rendered with a
    mailto: prefix.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1655985600">- CHANGES IN R 4.2.1:
  NEW FEATURES:
  * New function utils::findCRANmirror() to find out if a CRAN mirror
    has been selected, otherwise fallback to the main site.  This
    behaves in the same way as tools::CRAN_package_db() and is
    intended for packages wishing to access CRAN for purposes other
    than installing packages.
    The need for this was shown by a day when the main CRAN website
    was offline and a dozen or so packages which had its URL
    hardcoded failed their checks.
  INSTALLATION on a UNIX-ALIKE:
  * The libraries searched for by --with-blas (without a value) now
    include BLIS (after OpenBLAS but before ATLAS).  And on macOS,
    the Accelerate framework (after ATLAS).  (This is patterned after
    the AX_BLAS macro from the Autoconf Archive.)
  * The included LAPACK sources have been updated to 3.10.1.
  UTILITIES:
  * The (full path to) the command tidy to be used for HTML
    validation can be set by environment variable R_TIDYCMD.
  * Setting environment variable _R_CHECK_RD_VALIDATE_RD2HTML_ to a
    false value will override R CMD check --as-cran and turn off HTML
    validation.  This provides a way to circumvent a problematic
    tidy.
    The 2006 version that ships with macOS is always skipped.
  C-LEVEL FACILITIES:
  * The undocumented legacy declarations of Sint, Sfloat, SINT_MAX
    and SINT_MIN in header R.h are deprecated.
  BUG FIXES:
  * fisher.test(d) no longer segfaults for "large" d; fixing PR#18336
    by preventing/detecting an integer overflow reliably.
  * tar(., files=*) now produces correctly the warning about invalid
    uid or gid of files, fixing PR#18344, reported by Martin Morgan.
  * tk_choose.files() with multi = FALSE misbehaved on paths
    containing spaces (PR#18334) (regression introduced in R 4.0.0).
  * sort(x, partial = ind, *) now works correctly notably for the
    non-default na.last = FALSE or TRUE, fixing PR#18335 reported by
    James Edwards.
  * Environment variable _R_CHECK_XREFS_REPOSITORIES_ is only used
    for checking .Rd cross-references in R CMD check (as documented)
    and not for other uses looking for a CRAN mirror.
  * The search for a CRAN mirror when checking packages now uses
    getOption("repos") if that specifies a CRAN mirror, even when it
    does not also specify all three Bioconductor repositories (as was
    previously required).
  * The HTML code generated by tools::Rd2HTML() has been improved to
    pass tidy 5.8.0.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1667217600">- CHANGES IN R 4.2.2:
  NEW FEATURES:
  * tools::Rdiff(useDiff = TRUE) checks for the presence of an
    external diff command and switches to useDiff = FALSE if none is
    found.  This allows R CMD Rdiff to always work.
  * On Windows, environment variable R_LIBCURL_SSL_REVOKE_BEST_EFFORT
    can be used to switch to only 'best-effort' SSL certificate
    revocation checks with the default "libcurl" download method.
    This reduces security, but may be needed for downloads to work
    with MITM proxies (PR#18379).
  * (macOS) The run-time check for libraries from XQuartz for X11 and
    Tcl/Tk no longer uses otool from the Apple Developer Tools
    (PR#18400).
  * The LaTeX style for producing the PDF manuals, Rd.sty, now loads
    the standard amsmath, amsfonts and amssymb packages for greater
    coverage of math commands in the Rd \eqn and \deqn macros.  The
    \mathscr LaTeX command is also provided (via the mathrsfs
    package, if available, or the amsfonts bundle otherwise),
    fulfilling the wish of PR#18398.
  * (Windows) The default format of readClipboard() and
    writeClipboard() has been changed to 13 (CF_UNICODETEXT).
  INSTALLATION on a UNIX-ALIKE:
  * The PDF manuals (if built) can be compacted by the new target
    make compact-pdf (at the top level or in directory doc/manual).
  * There is now configure support for LLVM clang 15 on Linux, which
    defaults to position-independent (PIE) executables whereas
    gfortran does not.
  * Many small changes to ease compilation (and suppress warnings)
    with LLVM clang 15.
  BUG FIXES:
  * Rscript -e would fail if stdin were closed (Reported by Henrik
    Bengtsson.)
  * qt(*, log.p=TRUE) in outer tails no longer produces NaN in its
    final steps, thus fixing PR#18360.
  * tools::Rd2latex() now escapes hashes and ampersands when writing
    URLs, fixing LaTeX errors with such URLs in \tabular.
  * When isGeneric(f, fdef=*) is used with mismatching names, the
    warning is better understandable; reported (with fix) in PR#18370
    by Gabe Becker.
  * poly(x, n) now works again (and is now documented) when x is a
    "Date" or "POSIXct" object, or of another class while fulfilling
    mode(x) == "numeric".  This also enables poly(x, *, raw=TRUE) for
    such variables.  Reported by Michael Chirico to R-devel.
  * write.table(), write.csv() and write.csv2() restore their
    numerical precision (internal equivalent of digits = 15) after an
    interrupt (PR#18384).
  * One can now read also byte FF from a clipboard connection
    (PR#18385).
  * source("") and source(character()) now give more helpful error
    messages.
  * R CMD check --as-cran set _R_CHECK_TIMINGS_ too late to have the
    intended effect.
  * as.POSIXlt(x) now also works with very large dates x, fixing
    PR#18401 reported by Hannes M"uhleisen.
  * Files can now be extracted even from very large zip archives
    (PR#18390, thanks to Martin Jakt).
  * Non-finite objects of class "POSIXlt" are now correctly coerced
    to classes "Date" and "POSIXct"; following up on the extension to
    format() them correctly.
  * Added methods for is.finite(), is.infinite() and is.nan() for
    "POSIXlt" date-time objects.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1678881600">- CHANGES IN R 4.2.3:
  C-LEVEL FACILITIES:
  * The definition of DL_FUNC in R_ext/Rdynload.h has been changed to
    be fully C-compliant.  This means that functions loaded _via_ for
    example R_GetCCallable need to be cast to an appropriate type if
    they have any arguments.
  * .Machine has a new element sizeof.time_t to identify old systems
    with a 32-bit type and hence a limited range of date-times (and
    limited support for dates millions of years from present).
  PACKAGE INSTALLATION:
  * (Windows) The default C++ standard had accidentally been left at
    C++11 when it was changed to C++14 on Unix.
  BUG FIXES:
  * As "POSIXlt" objects may be "partially filled" and their list
    components meant to be recycled, length() now is the length of
    the longest component.
  * as.POSIXlt.Date() could underflow for dates in the far past (more
    than half a million years BCE).
  * as.Date.POSIXlt(x) would return "1970-01-01" instead of NA in R
    4.2.2, e.g., for
    x &lt;- as.POSIXlt(c("2019-01-30","2001-1-1"))
    x$mon &lt;- c(0L, NA); as.Date(x)
  * R CMD check failed to apply enabled _R_CHECK_SUGGESTS_ONLY_ to
    examples and vignettes (regression in R 4.2.0).
  * R CMD check did not re-build vignettes in separate processes by
    default (regression in R 4.2.0).
  * Running examples from HTML documentation now restores previous
    knitr settings and options (PR#18420).
  * Quartz: fonts are now located using Core Graphics API instead of
    deprecated ATS which is no longer supported in the macOS 13 SDK
    (PR#18426).  This also addresses an issue where the currently
    used font in the Quartz device context was not correctly
    retained.
  * (Windows) Math symbols in text drawing functions are again
    rendered correctly (PR#18440).  This fixes a regression in R
    4.2.1 caused by a fix in PR#18382 which uncovered an issue in
    GraphApp due to which the symbol charset was not used with TT
    Symbol font face.
  * (Windows) Installing a package with a src/Makefile.{win,ucrt}
    file includes ~/.R/Makevars.win64 in the search for user
    makevars, as documented in "R Installation and Administration"
    and done for packages with a src/Makevars.{win,ucrt} file.
  * format(&lt;POSIXlt_w/_unbalanced_sec&gt;, "....%OS&lt;n&gt;") with n &gt; 0 no
    longer accidentally uses the unbalanced seconds, thanks to
    Suharto Anggono's report (including patch) in PR#18448.
  * solve.default(a, b) works around issues with some versions of
    LAPACK when a contains NA or NaN values.
  * When UseMethod() cannot dispatch, it no longer segfaults
    producing the error message in case of a long class(), thanks to
    Joris Vankerschaver's report (including patch) in PR#18447.
  * When example(foo, ..) produces graphics on an interactive device
    it needs to open itself, it now leaves devAskNewPage() unchanged
    even when it was FALSE, thus fixing a 14 years old '&lt;FIXME&gt;'.
  * packageDescription() again catches errors from encoding
    conversions. This also fixes broken packageVersion() in C locale
    on systems where iconv does not support transliteration.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1681128000">- add patch to build with libcurl &gt;= 8</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1682078400">- CHANGES IN R 4.3.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Calling &amp;&amp; or || with LHS or (if evaluated) RHS of length greater
    than one is now always an error, with a report of the form
    'length = 4' in coercion to 'logical(1)'
    Environment variable _R_CHECK_LENGTH_1_LOGIC2_ no longer has any
    effect.
  NEW FEATURES:
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.10.1.  (This caused some platform-dependent
    changes to package check output.)  And then to the sources from
    LAPACK version 3.11.0 (with changes only to double complex
    subroutines).
  * The included LAPACK sources have been updated to include the four
    Fortran 90 routines rather than their Fortran 77 predecessors.
    This may give some different signs in SVDs or
    eigendecompositions..  (This completes the transition to LAPACK
    3.10.x begun in R 4.2.0.)
  * The LAPACK sources have been updated to version 3.11.0.  (No new
    subroutines have been added, so this almost entirely bug fixes:
    Those fixes do affect some computations with NaNs, including R's
    NA.)
  * The parser now signals _classed_ errors, notably in case of the
    pipe operator |&gt;.  The error object and message now give line and
    column numbers, mostly as proposed and provided by Duncan Murdoch
    in PR#18328.
  * toeplitz() is now generalized for asymmetric cases, with a
    toeplitz2() variant.
  * xy.coords() and xyz.coords() and consequently, e.g., plot(x,y,
    log = "y") now signal a _classed_ warning about negative values
    of y (where log(.) is NA).  Such a warning can be specifically
    suppressed or caught otherwise.
  * Regular expression functions now check more thoroughly whether
    their inputs are valid strings (in their encoding, e.g. in
    UTF-8).
  * The performance of grep(), sub(), gsub() and strsplit() has been
    improved, particularly with perl = TRUE and fixed = TRUE.  Use of
    useBytes = TRUE for performance reasons should no longer be
    needed and is discouraged: it may lead to incorrect results.
  * apropos() gains an argument dot_internals which is used by the
    completion (help(rcompgen)) engine to also see base internals
    such as .POSIXct().
  * Support in tools::Rdiff() for comparing uncompressed PDF files is
    further reduced - see its help page.
  * qqplot(x, y, ...) gains conf.level and conf.args arguments for
    computing and plotting a confidence band for the treatment
    function transforming the distribution of x into the distribution
    of y (Switzer, 1976, _Biometrika_). Contributed by Torsten
    Hothorn.
  * Performance of package_dependencies() has been improved for cases
    when the number of dependencies is large.
  * Strings newly created by gsub(), sub() and strsplit(), when any
    of the inputs is marked as "bytes", are also marked as "bytes".
    This reduces the risk of creating invalid strings and accidental
    substitution of bytes deemed invalid.
  * Support for readLines(encoding = "bytes") has been added to allow
    processing special text files byte-by-byte, without creating
    invalid strings.
  * iconv(from = "") now takes into account any declared encoding of
    the input elements and uses it in preference to the native
    encoding.  This reduces the risk of accidental creation of
    invalid strings, particularly when different elements of the
    input have different encoding (including "bytes").
  * Package repositories in getOption("repos") are now initialized
    from the repositories file when utils is loaded (if not already
    set, e.g., in .Rprofile).  (From a report and patch proposal by
    Gabriel Becker in PR#18405.)
  * compactPDF() gets a verbose option.
  * type.convert() and hence read.table() get new option tryLogical =
    TRUE with back compatible default.  When set to false, converts
    "F" or "T" columns to character.
  * Added new unit prefixes "R" and "Q" for abbreviating
    (unrealistically large) sizes beyond 10^{27} in standard = "SI",
    thanks to Henrik Bengtsson's PR#18435.
  * as.data.frame()'s default method now also works fine with atomic
    objects inheriting from classes such as "roman", "octmode" and
    "hexmode", such fulfilling the wish of PR#18421, by Benjamin
    Feakins.
  * The as.data.frame.vector() utility now errors for wrong-length
    row.names.  It warned for almost six years, with "Will be an
    error!".
  * sessionInfo() now also contains La_version() and reports codepage
    and timezone when relevant, in both print() and toLatex() methods
    which also get new option tzone for displaying timezone
    information when locale = FALSE.
  * New function R_compiled_by() reports the C and Fortran compilers
    used to build R, if known.
  * predict(&lt;lm&gt;, newdata = *) no longer unnecessarily creates an
    offset of all 0s.
  * solve() for complex inputs now uses argument tol and by default
    checks for 'computational singularity' (as it long has done for
    numeric inputs).
  * predict(&lt;rank-deficient lm&gt;, newdata=*) now obeys a new argument
    rankdeficient, with new default "warnif", warning only if there
    are non-estimable cases in newdata.  Other options include
    rankdeficient = "NA", predicting NA for non-estimable newdata
    cases.  This addresses PR#15072 by Russ Lenth and is based on his
    original proposal and discussions in PR#16158 also by David Firth
    and Elin Waring.  Still somewhat experimental.
  * Rgui console implementation now works better with the NVDA screen
    reader when the full blinking cursor is selected.  The underlying
    improvements in cursor handling may help also other screen
    readers on Windows.
  * The drop-field control in GraphApp can now be left with the TAB
    key and all controls can be navigated in the reverse order using
    the Shift+TAB key, improving accessibility of the Rgui
    configuration editor.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now fully accurate
    (instead of to "only" minimally five digits).
  * demo(error.catching) now also shows off withWarnings() and
    tryCatchWEMs().
  * As an experimental feature the placeholder _ can now also be used
    in the rhs of a forward pipe |&gt; expression as the first argument
    in an extraction call, such as _$coef. More generally, it can be
    used as the head of a chain of extractions, such as _$coef[[2]].
  * Spaces in the environment variable used to choose the R session's
    temporary directory (TMPDIR, TMP and TEMP are tried in turn) are
    now fatal.  (On Windows the 'short path' version of the path is
    tried and used if that does not contain a space.)
  * all.equal.numeric() gets a new optional switch giveErr to return
    the numeric error as attribute.  Relatedly,
    stopifnot(all.equal&lt;some&gt;(a, b, ..)) is as "smart" now, as
    stopifnot(all.equal(....)) has been already, thus allowing
    customized all.equal&lt;Some&gt;() wrappers.
  * R on Windows is now able to work with path names longer than 260
    characters when these are enabled in the system (requires at
    least Windows 10 version 1607).  Packages should be updated to
    work with long paths as well, instead of assuming PATH_MAX to be
    the maximum length.  Custom front-ends and applications embedding
    R need to update their manifests if they wish to allow this
    feature.  See
    &lt;https://blog.r-project.org/2023/03/07/path-length-limit-on-windows&gt;
    for more information.
  * 'Object not found' and 'Missing argument' errors now give a more
    accurate error context. Patch provided by Lionel Henry in
    PR#18241.
  * The @ operator is now an S3 generic. Based on contributions by
    Tomasz Kalinowski in PR#18482.
  * New generic chooseOpsMethod() provides a mechanism for objects to
    resolve cases where two suitable methods are found for an Ops
    Group Generic. This supports experimenting with alternative
    object systems. Based on contributions by Tomasz Kalinowski in
    PR#18484.
  * inherits(x, what) now accepts values other than a simple
    character vector for argument what. A new generic, nameOfClass(),
    is called to resolve the class name from what. This supports
    experimenting with alternative object systems. Based on
    contributions by Tomasz Kalinowski in PR#18485.
  * Detection of BLAS/LAPACK in use (sessionInfo()) with FlexiBLAS
    now reports the current backend.
  * The "data.frame" method for subset() now warns about extraneous
    arguments, typically catching the use of = instead of == in the
    subset expression.
  * Calling a:b when numeric a or b is longer than one may now be
    made into an error by setting environment variable
    _R_CHECK_LENGTH_COLON_ to a true value, along the proposal in
    PR#18419 by Henrik Bengtsson.
  * density(x, weights = *) now warns if automatic bandwidth
    selection happens without using weights; new optional warnWbw may
    suppress the warning.  Prompted by Christoph Dalitz' PR#18490 and
    its discussants.
  * rm(list = *) is faster and more readable thanks to Kevin Ushey's
    PR#18492.
  * The plot.lm() function no longer produces a normal Q-Q plot for
    GLMs. Instead it plots a half-normal Q-Q plot of the absolute
    value of the standardized deviance residuals.
  * The print() method for class "summary.glm" no longer shows
    summary statistics for the deviance residuals by default.  Its
    optional argument show.residuals can be used to show them if
    required.
  * The tapply() function now accepts a data frame as its X argument,
    and allows INDEX to be a formula in that case. by.data.frame()
    similarly allows INDICES to be a formula.
  * The performance of df[j] &lt;- value (including for missing j) and
    write.table(df) has been improved for data frames df with a large
    number of columns.  (Thanks to Gabriel Becker's PR#18500,
    PR#18503 and discussants, prompted by a report from Toby Dylan
    Hocking on the R-devel mailing list.)
  * The matrix multiply operator %*% is now an S3 generic, belonging
    to new group generic matrixOps.  From Tomasz Kalinowski's
    contribution in PR#18483.
  * New function array2DF() to convert arrays to data frames,
    particularly useful for the list arrays created by tapply().
  DATES and TIMES:
  * On platforms where (non-UTC) datetimes before 1902 (or before
    1900 as with system functions on recent macOS) are guessed by
    extrapolating time zones from 1902-2037, there is a warning at
    the first use of extrapolation in a session.  (As all time zones
    post 2037 are extrapolation, we do not warn on those.)
  * (Platforms using --with-internal-tzone, including Windows and by
    default macOS). How years are printed in dates or date-times can
    be controlled by environment variable R_PAD_YEARS_BY_ZERO.  The
    default remains to pad to 4 digits by zeroes, but setting value
    no gives no padding (as used by default by glibc).
  * strftime() tries harder to determine the offset for the "%z"
    format, and succeeds on the mainstream R platforms.
  * strftime() has a limit of 2048 bytes on the string produced -
    attempting to exceed this is an error.  (Previously it silently
    truncated at 255 bytes.)
  * sessionInfo() records (and by default prints) the system time
    zone as part of the locale information.  Also, the source
    (system/internal) of the date-time conversion and printing
    functions.
  * Objects of class "POSIXlt" created in this version of R always
    have 11 components: component zone is always set, and component
    gmtoff is set for times in UTC and usually set on the (almost
    all) platforms which have C-level support, otherwise is NA.
  * There are comprehensive validity checks on the structure of
    objects of class "POSIXlt" when converting (including formatting
    and printing).  (This avoids mis-conversions of hand-crafted
    objects.)
  * There is some support for using the native date-time routines on
    macOS: this is only viable on recent versions (e.g. 12.6 and 13)
    and does get wrong some historical changes (before 1900, during
    WWII).  Use of --with-internal-tzone remains the default.
  * as.POSIXct(&lt;numeric&gt;) and as.POSIXlt(.) (without specifying
    origin) now work.  So does as.Date(&lt;numeric&gt;).
  * as.Date.POSIXct(., tz) now treats several tz values, notably
    "GMT" as equivalent to "UTC", proposed and improved by Michael
    Chirico and Joshua Ulrich in PR#17674.
  * Experimental balancePOSIXlt() utility allows using "ragged" and
    or out-of-range "POSIXlt" objects more correctly, e.g., in
    subsetting and subassignments.  Such objects are now documented.
    More experimentally, a "POSIXlt" object may have an attribute
    "balanced" indicating if it is known to be filled or fully
    balanced.
  * Functions axis.Date() and axis.POSIXct() are rewritten to gain
    better default tick locations and better default formats by using
    prettyDate(). Thanks to Swetlana Herbrandt.
  * The mapping of Windows' names for time zones to IANA's 'Olson'
    names has been updated.  When ICU is available (it is by
    default), it is used to get a mapping for the current region set
    in Windows.  This can be overridden by setting environment
    variable TZ to the desired Olson name - see OlsonNames() for
    those currently available.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 16
    and so packages that provide graphics devices should be
    reinstalled.
  * The grDevices and grid packages have new functions for rendering
    typeset glyphs, primarily: grDevices::glyphInfo() and
    grid::grid.glyph().
    Rendering of typeset glyphs is only supported so far on the
    Cairo-based graphics devices and on the pdf() and quartz()
    devices.
  * The defined behaviour for "clear" and "source" compositing
    operators (via grid::grid.group()) has been changed (to align
    better with simple interpretation of original Porter-Duff
    definitions).
  * Support for gradients, patterns, clipping paths, masks, groups,
    compositing operators, and affine transformations has been added
    to the quartz() device.
  INSTALLATION on a UNIX-ALIKE:
  * A system installation of generic LAPACK 3.10.0 or later will be
    preferred to the version in the R sources.
    configure option --with-lapack=no (equivalently --without-lapack)
    forces compilation of the internal LAPACK sources.
    If --with-lapack is not specified, a system liblapack is looked
    for and used if it reports version 3.10.0 or later and does not
    contain BLAS routines.
    Packages using LAPACK will need to be reinstalled if this changes
    to using an external library.
  * On aarch64 Linux platforms using GCC, configure now defaults to
  - fPIC (instead of -fpic), as desired in PR#18326.
  * configure now checks conversion of datetimes between POSIXlt and
    POSIXct around year 2020.  Failure (which has been seen on
    platforms missing tzdata) is fatal.
  * If configure option --with-valgrind-instrumentation is given
    value 1 or 2, option --with-system-valgrind-headers is now the
    default and ignored (with a warning).  It is highly recommended
    that the system headers are installed alongside valgrind: they
    are part of its packaging on some Linux distributions and
    packaged separately (e.g. in the valgrind-devel RPM) on others.
    configure will give a warning if they are not found.
    The system headers will be required in a future release of R to
    build with valgrind instrumentation.
  * libcurl 8.x is now accepted by configure: despite a change in
    major version number it changes neither API nor ABI.
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools43, an update of the Rtools42 toolchain.  It is
    based on gcc 12 and newer versions of MinGW-W64, binutils and
    libraries.  At this time R-devel can still be built using
    Rtools42 without changes, but when R-devel is installed via the
    installer, it will by default look for Rtools43.
  * Old make targets rsync-extsoft and 32-bit ones that are no longer
    needed have been removed.
  * Default builds (including for packages) no longer select C99.
    Thus the C standard used is the default for the compiler, which
    for the toolchain in Rtools43 is C17.  (This is consistent with
    Unix builds.)
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++17 where
    available (which it is on all currently checked platforms): if
    not C++14 or C++11 is used if available otherwise C++ is not
    supported.
  * USE_FC_LEN_T is the default: this uses the correct
    (compiler-dependent) prototypes for Fortran BLAS/LAPACK routines
    called from C/C++, and requires adjustment of many such calls -
    see 'Writing R Extensions' SS6.6.1.
  * There is initial support for C++23 as several compilers are now
    supporting -std=c++23 or -std=c++2b or similar.  As for C++20,
    there no additional configure checks for C++23 features beyond a
    check that the compiler reports a __cplusplus value greater than
    that in the C++20 standard.  C++ feature tests should be used.
  * There is support for a package to indicate the version of the C
    standard which should be used to compile it, and for the
    installing user to specify this.  In most cases R defaults to the
    C compiler's default standard which is C17 (a `bug-fix' of C11) -
    earlier versions of R or compilers may have defaulted to C99.
    Current options are:
    USE_C17 Use a standard that is at most C17.  The intention is to
    allow legacy packages to still be installed when later C
    standards become the default, including packages using new
    keywords as identifiers or with K&amp;R-style function
    declarations.  This will use C17 if available, falling back
    to C11.
    USE_C90 Use the C90 (aka C89) standard.  (As that standard did
    not require compilers to identify that version, all we can
    verify is that the compiler does not claim to be using a
    later standard.  It may accept C99 features - for example
    clang accepts // to make comments.)
    USE_C99 Use the C99 standard. This should be rarely needed - it
    avoids the few new features of C11/C17 which can be useful if
    a package assumes them if C17 is specified and they are not
    implemented.
    USE_C23 Use C23 (or in future, later).  Compiler/library support
    for C23 is still being implemented, but LLVM clang from
    15.0.0 and the upcoming GCC 13 have quite extensive support.
    These can be specified as part of the SystemRequirements field in
    the package's DESCRIPTION file or _via_ options --use-C17 and so
    on of R CMD INSTALL and R CMD SHLIB.
    For further details see "Writing R Extensions" SS1.2.5.
  * (Windows) A src/Makefile.ucrt or src/Makefile.win file is now
    included after R_HOME/etcR_ARCH/Makeconf and so no longer needs
    to include that file itself.  Installation of a package with such
    a file now uses a site Makevars file in the same way as a package
    with a src/Makevars.win file would.
  * configure is now passed crucial variables such as CC and CFLAGS
    in its environment, as many packages were not setting them (as
    documented in 'Writing R Extensions' SS1.2).
    This has most effect where configure is used to compile parts of
    the package - most often by cmake or libtool which obfuscate the
    actual compile commands used.
    Also used for configure.win and configure.ucrt on Windows.
  FORTRAN FLAGS:
  * The flag -fno-optimize-sibling-calls is no longer forced for
    gfortran 7 and later.  It should no longer be needed now using
    'hidden' character-length arguments when calling BLAS/LAPACK
    routines from C/C++ is the default even for packages.  (Unless
    perhaps packages call Fortran code from C/C++ without using R's
    headers and without allowing for these arguments.)
  C-LEVEL FACILITIES:
  * The deprecated S-compatibility macros DOUBLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * The deprecated legacy typedefs of Sint and Sfloat in header R.h
    are no longer defined, and that header no longer includes header
    limits.h from C nor climits from C++.
  * New macro CAD5R() is provided in Rinternals.h and used in a few
    places in the R sources.
  * ALTREP now supports VECSXP vectors. Contributed by Gabor Csardi
    in PR#17620.
  * The Rcomplex definition (in header R_ext/Complex.h) has been
    extended to prevent possible mis-compilation when interfacing
    with Fortran (PR#18430).  The new definition causes compiler
    warnings with static initializers such as {1, 2}, which can be
    changed to {.r=1, .i=2}.
    Using the new definition from C++ depends on compiler extensions
    supporting C features that have not been incorporated into the
    C++ standards but are available in g++ and clang++: this may
    result in C++ compiler warnings but these have been worked around
    for recent versions of common compilers (GCC, Apple/LLVM clang,
    Intel).
    It is intended to change the inclusion of header R_ext/Complex.h
    by other R headers, so C/C++ code files which make use of
    Rcomplex should include that header explicitly.
  UTILITIES:
  * R CMD check does more checking of package .Rd files, warning
    about invalid email addresses and (some) invalid URIs and noting
    empty \item labels in description lists.
  * R CMD check now also reports problems when reading package news
    in md (file NEWS.md) and (optionally) plain text (file NEWS)
    formats.
  * _R_CHECK_TIMINGS_ defaults to a value from the environment even
    for R CMD check --as-cran; this allows for exceptionally fast or
    slow platforms.
    It now applies to checking PDF and HTML versions of the manuals,
    and 'checking CRAN incoming feasibility'.
  * R CMD check can optionally (but included in --as-cran) check
    whether HTML math rendering _via_ KaTeX works for the package .Rd
    files.
  * Non-interactive debugger invocations can be trapped by setting
    the environment variable _R_CHECK_BROWSER_NONINTERACTIVE_ to a
    true value.  This is enabled by R CMD check --as-cran to detect
    the use of leftover browser() statements in the package.
  * The use of sprintf and vsprintf from C/C++ has been deprecated in
    macOS 13 and is a known security risk.  R CMD check now reports
    (on all platforms) if their use is found in compiled code:
    replace by snprintf or vsnprintf respectively. [*NB:* whether
    such calls get compiled into the package is platform-dependent.]
  * Where recorded at installation, R CMD check reports the C and
    Fortran compilers used to build R.
    It reports the OS in use (if known, as given by osVersion) as
    well as that R was built for.
    It notes if a C++ standard was specified which is older than the
    current default: many packages have used C++11 to mean 'not
    C++98' - as C++11 is the minimum supported since R 4.0.0, that
    specification can probably be removed.
  * R CMD INSTALL reports the compilers (and on macOS, the SDK) used,
    and this is copied to the output of R CMD check.
    Where a C++ standard is specified, it is reported.
  * R CMD check's 'checking compilation flags in Makevars' has been
    relaxed to accept the use of flags such as -std=f2008 in
    PKG_FFLAGS.
  * tools::buildVignettes() has a new argument skip, which is used by
    R CMD check to skip (and note) vignettes with unavailable
    \VignetteDepends (PR#18318).
  * New generic .AtNames() added to enable class-specific completions
    after @. The formerly internal function findMatches() is now
    exported, mainly for use in methods for .DollarNames() and
    .AtNames().
  DEPRECATED AND DEFUNCT:
  * default.stringsAsFactors() is defunct.
  * Calling as.data.frame.&lt;class&gt;() directly (for 12 atomic classes)
    is going to be formally deprecated, currently activated by
    setting the environment variable
    _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ to non-empty, which also
    happens in R CMD check --as-cran.
  BUG FIXES:
  * Hashed environments with sizes less than 5 can now grow.
    (Reported to R-devel by Duncan Garmonsway.)
  * as.character(&lt;Rd&gt;, deparse = TRUE) failed to re-escape curly
    braces in LaTeX-like text.  (Reported by Hadley Wickham in
    PR#18324.)
  * library() now passes its lib.loc argument when requiring Depends
    packages; reported (with fix) in PR#18331 by Mikael Jagan.
  * R CMD Stangle: improved message about 'Output' files.
  * head(x, n) and tail(x, n) now signal an error if n is not
    numeric, instead of incidentally "working" sometimes returning
    all of x.  Reported and discussed by Colin Fay, in PR#18357.
  * The "lm" method for summary() now gives the correct F-statistic
    when the model contains an offset.  Reported in PR#18008.
  * C() and `contrasts&lt;-`() now preserve factor level names when
    given a function object (as opposed a function name which did
    preserve names). Reported in PR#17616.
  * c(a = 1, 2)[[]] no longer matches 2 but rather signals a
    _classed_ error.  Reported and analysed by Davis Vaughan in
    PR#18367, a duplicate of PR#18004, by Jan Meis et al.  For
    consistency, NULL[[]] is also erroneous now.  x[[]] &lt;- v gives an
    error of the same class "MissingSubscriptError".
  * The relist() function of utils now supports NULL elements in the
    skeleton (PR#15854).
  * ordered(levels = *) (missing x) now works analogously to factor(,
    ordered=TRUE); reported (with fix) by Achim Zeileis in PR#18389.
  * User-defined Rd macro definitions can now span multiple lines,
    thanks to a patch from Duncan Murdoch. Previously, the Rd parser
    silently ignored everything after the first line.
  * Plain-text help (tools::Rd2txt()) now preserves an initial blank
    line for text following description list items.
  * tools::Rd2HTML() and tools::Rd2latex() no longer split \arguments
    and \value lists at Rd comments.
  * tools::Rd2latex() now correctly handles optional text outside
    \items of argument lists as well as bracketed text at the
    beginning of sections, e.g., \value{[NULL]}.
  * as.character(&lt;POSIXt&gt;) now behaves more in line with the methods
    for atomic vectors such as numbers, and is no longer influenced
    by options().  Ditto for as.character(&lt;Date&gt;).  The
    as.character() method gets arguments digits and OutDec with
    defaults _not_ depending on options().  Use of as.character(*,
    format = .) now warns.
  * Similarly, the as.character.hexmode() and *.octmode() methods
    also behave as good citizen methods and back compatibility option
    keepStr = TRUE.
  * The as.POSIXlt(&lt;POSIXlt&gt;) and as.POSIXct(&lt;POSIXct&gt;) default
    methods now do obey their tz argument, also in this case.
  * as.POSIXlt(&lt;Date&gt;) now does apply a tz (time zone) argument, as
    does as.POSIXct(); partly suggested by Roland Fuss on the R-devel
    mailing list.
  * as.Date.POSIXlt(x) now also works when the list components are of
    unequal length, aka "partially filled" or "ragged".
  * expand.model.frame() looked up variables in the wrong environment
    when applied to models fitted without data.  Reported in
    PR#18414.
  * time() now (also) uses the ts.eps = getOption("ts.eps") argument
    and thus by default rounds values very close to the start (or
    end) of a year.  Based on a proposal by Andre"i V. Kostyrka on
    R-help.
  * Printing of a factanal() result with just one factor and sort =
    TRUE now works regularly, fixing PR#17863 by Timothy Bates,
    thanks to the 'R Contributors' working group.
  * Printing 0-length objects of class "factor", "roman", "hexmode",
    "octmode", "person", "bibentry", or "citation" now prints
    something better, one of which fixes PR#18422, reported by
    Benjamin Feakins.
  * Sys.timezone() queries timedatectl only if systemd is loaded;
    addressing a report by Jan Gorecki in PR#17421.
  * The formula method of cor.test() had scoping problems when
    environment(formula) was not the calling environment; reported
    with a patch proposal by Mao Kobayashi in PR#18439.
  * attach() of an environment with active bindings now preserves the
    active bindings.  Reported by Kevin Ushey in PR#18425.
  * BLAS detection now works also with system-provided libraries not
    available as regular files.  This fixes detection of the
    Accelerate framework on macOS since Big Sur.  Reported by David
    Novgorodsky.
  * download.file() gives a helpful error message in case of an
    invalid download.file.method option, thanks to Colin Fay's report
    in PR#18455.
  * Sporadic crashes of Rterm when using completion have been fixed.
  * Rprof() is now more reliable.  A livelock in thread
    initialization with too short sampling interval has been fixed on
    macOS.  A deadlock in using the C runtime has been fixed on
    Windows.  A potential deadlock has been prevented on Unix.
  * Cursor placement in Rgui now works even after a fixed-width font
    is selected.
  * Mandatory options (options()) are now set on startup so that
    saving and restoring them always works (PR#18372).
  * Package installation, R CMD INSTALL or install.packages(*), now
    parses each of the &lt;pkg&gt;/R/*.R files individually instead of
    first concatenating and then parse()ing the large resulting file.
    This allows parser or syntax errors to be diagnosed with correct
    file names and line numbers, thanks to Simon Dedman's report and
    Bill Dunlap's patch in PR#17859.
    This _does_ require syntactically self contained R source files
    now, fixing another inadvertent bug.
  * predict.lm(&lt;model with offset&gt;) now finds the offset in the
    correct environment, thanks to Andr'e Gillibert's report and patch
    in PR#18456.
  * getInitial(&lt;formula&gt;) now finds the selfStart model in the
    correct environment.  (Reported by Ivan Krylov in PR#18368.)
  * Fix for possible segfault when using recently-added graphics
    features, such as gradients, clipping paths, masks, and groups
    with pdf(file=NULL).
  * class(m) &lt;- class(m) no longer changes a matrix m by adding a
    class _attribute_.
  * packageDate(pkg) now only warns once if there is no pkg.
  * When ts() creates a multivariate time series, "mts", it also
    inherits from "array" now, and is.mts() is documented _and_
    stricter.
  * Rd2txt() now preserves line breaks of \verb Rd content and from
    duplicated \cr.  The former also fixes the rendering of verbatim
    output from Rd \Sexpr in plain-text help.
  * uniroot(f, interval) should no longer wrongly converge _outside_
    the interval in some cases where abs(f(x)) == Inf for an x at the
    interval boundary, thanks to posts by Ben Bolker and Serguei
    Sokol on R-devel.
  * Vectorized alpha handling in palette functions such as in gray(),
    rainbow(), or hcl.colors() works correctly now, thanks to Achim
    Zeileis' report and patch in PR#18476.
  * Formatting and print()ing of bibentry objects has dropped the
    deprecated citation.bibtex.max argument, such that the bibtex
    argument's default for print.bibentry() depends directly on the
    citation.bibtex.max option, whereas in format.bibentry() the
    option no longer applies.
  * Attempting to use a character string naming a foreign function
    entry point in a foreign function call in a package will now
    signal an error if the packages has called R_forceSymbols to
    specify that symbols must be used.
  * An error in table() could permanently set options(warn=2)
    promoting all subsequent warnings to errors.
  * The sigma() function gave misleading results for binary GLMs.  A
    new method for objects of class "glm" returns the square root of
    the estimate of the dispersion parameter using the same
    calculation as summary.glm().
  * bs() and ns() in the (typical) case of automatic knot
    construction, when some of the supposedly inner knots coincide
    with boundary knots, now moves them inside (with a warning),
    building on PR#18442 by Ben Bolker.
  * R CMD on Windows now skips the site profile with --no-site-file
    and --vanilla even when R_PROFILE is set (PR#18512, from Kevin
    Ushey).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1686916800">- CHANGES IN R 4.3.1:
  C-LEVEL FACILITIES:
  * The C-level API version of R's integrate(), Rdqags() in Applic.h,
    now returns the correct number of integrand evaluations neval,
    fixing PR#18515 reported and diagnosed by Stephen Wade.
  * The C prototypes for LAPACK calls dspgv and dtptrs in
    R_exts/Lapack.h had one too many and one too few character length
    arguments - but this has not caused any known issues. To get the
    corrected prototypes, include
    [#]include &lt;Rconfig.h&gt; // for PR18534fixed
    [#]ifdef PR18534fixed
    [#] define usePR18534fix 1
    [#]endif
    [#]include &lt;R_exts/Lapack.h&gt;
    in your C/C++ code (PR#18534).
  INSTALLATION:
  * Many of the checks of esoteric Internet operations and those
    using unreliable external sites have been moved to a new target
    that is not run by default and primarily intended for the core
    developers.  To run them use
    cd tests; make test-Internet-dev
  BUG FIXES:
  * .S3methods(), typically called from methods(), again marks
    methods from package base as visible.
    Also, the visibility of non-base methods is again determined by
    the method's presence in search().
  * tools::Rdiff() is now more robust against invalid strings, fixing
    installation tests on Windows without Rtools installed
    (PR#18530).
  * Fix (new) bug in hcl.colors(2, *), by Achim Zeileis (PR#18523).
  * head(., &lt;illegal&gt;) and tail(..) now produce more useful "Error in
    ...." error messages, fixing PR#18362.
  * Package code syntax on Windows is checked in UTF-8 when UTF-8 is
    the native encoding.
  * na.contiguous(x) now also returns the first run, when it is at
    the beginning and there is a later one of the same length;
    reported to R-devel, including a fix, by Georgi Boshnakov.
    Further, by default, it modifies only an existing attr(*,"tsp")
    but otherwise no longer sets one.
  * chol(&lt;not pos.def&gt;, pivot = &lt;T|F&gt;) now gives a correct error or
    warning message (depending on pivot), thanks to Mikael Jagan's
    (PR#18541).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1699012800">- CHANGES IN R 4.3.2:
  NEW FEATURES:
  * The default initialization of the "repos" option from the
    repositories file at startup can be skipped by setting
    environment variable R_REPOSITORIES to NULL such that
    getOption("repos") is empty if not set elsewhere.
  * qr.X() is now an implicit S4 generic in methods.
  * iconv(to = "ASCII//TRANSLIT") is emulated using substitution on
    platforms which do not support it (notably Alpine Linux).  This
    should give a human-readable conversion in ASCII on all platforms
    (rather than NA_character_).
  * trans3d() gains options continuous and verbose addressing the
    problem of possible "wrap around" when projecting too long
    curves, as reported by Achim Zeileis in PR#18537.
  * tools::showNonASCII() has been rewritten to work better on macOS
    14 (which has a changed implementation of iconv()).
  * tiff(type = "quartz") (the default on macOS) now warns if
    compression is specified: it continues to be ignored.
  INSTALLATION on a UNIX-ALIKE:
  * There is some support for building with Intel's LLVM-based
    compilers on x86_64 Linux, such as (C) icx, (C++) ipcx and
    (Fortran) ifx from oneAPI 2023.x.y.
  * There is support for using LLVM's flang-new as the Fortran
    compiler from LLVM 16.0.x (preferably 17.0.0 or later).
  UTILITIES:
  * R CMD check reports the use of the Fortran 90 random number
    generator RANDOM_NUMBER() and the subroutines to initialize it.
    'Writing R Extensions' has example code to use R's RNGs from
    Fortran.
  BUG FIXES:
  * substr(x, n, L) &lt;- cc now works (more) correctly for multibyte
    UTF-8 strings x when L &gt; nchar(x), thanks to a report and patch
    by 'Architect 95'.
  * contrib.url(character()) now returns 0-length character() as
    documented, which also avoids spurious warnings from
    available.packages() et al. in the edge case of an empty vector
    of repository URLs.
  * readChar(., 4e8) no longer fails, thanks to Kodi Arfer's report
    (PR#18557).
  * lapply(&lt;list&gt;, as.data.frame) no longer warns falsely for some
    base vector components.
  * Communication between parent and child processes in the multicore
    part of parallel could fail on platforms that do not support an
    arbitrarily large payload in system functions read()/write() on
    pipes (seen on macOS where a restriction to INT_MAX bytes is
    documented, without doing a partial read unlike Linux). The
    payload is now split into 1Gb chunks to avoid that problem.
    (PR#18571)
  * qqplot(x,y, conf.level=.) gives better confidence bounds when
    length(x) != length(y), thanks to Alexander Ploner's report and
    patch proposal (PR#18557).
  * norm(&lt;0-length&gt;, "2") now gives zero instead of an error, as all
    the other norm types, thanks to Mikael Jagan's PR#18542.
  * Build-stage Rd macros \packageAuthor and \packageMaintainer now
    process Authors@R, fixing NA results when the package DESCRIPTION
    omits Author and Maintainer fields.
  * Formatting and printing complex numbers could give things like
    0.1683-0i because of rounding error: -0i is now replaced by +0i.
  * postscript() refused to accept a title comment containing the
    letter "W" (PR#18599).
  * isoreg(c(1,Inf)) signals an error instead of segfaulting, fixing
    PR#18603.
  * tiff(type = "Xlib") was only outputting the last page of
    multi-page plots.
  * tools::latexToUtf8() again knows about \~{n} and other letters
    with tilde, fixing a regression in R 4.3.0, and about \^{i} as an
    alternative to \^{\i} (similarly with other accents).
    Furthermore, LaTeX codes for accented I letters are now correctly
    converted, also fixing related mistakes in
    tools::encoded_text_to_latex().
  * tar(*, tar = "internal") no longer creates out-of-spec tar files
    in the very rare case of user or group names longer than 32
    bytes, fixing PR#17871 with thanks to Ivan Krylov.
  * When using the "internal" timezone datetime code, adding a
    fraction of a second no longer adds one second, fixing PR#16856
    from a patch by Ivan Krylov.
  * tools::checkRd() no longer produces spurious notes about
    "unnecessary braces" from multi-line Rd results of \Sexpr macros.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1709208000">- CHANGES IN R 4.3.3:
  NEW FEATURES:
  * iconv() now fixes up variant encoding names such as "utf8"
    case-insensitively.
  DEPRECATED AND DEFUNCT:
  * The legacy encoding = "MacRoman" is deprecated in pdf() and
    postscript(): support was incomplete in earlier versions of R.
  BUG FIXES:
  * Arguments are now properly forwarded to methods on S4 generics
    with ... in the middle of their formal arguments. This was broken
    for the case when a method introduced an argument but did not
    include ... in its own formals. Thanks to Herv'e Pag`es for the
    report PR#18538.
  * Some invalid file arguments to pictex(), postscript() and xfig()
    opened a file called NA rather than throw an error.  These
    included postscript(NULL) (which some people expected to work
    like pdf(NULL)).
  * Passing filename = NA to svg(), cairo_pdf(), cairo_ps() or the
    Cairo-based bitmap devices opened a file called NA: it now throws
    an error.
  * quartz(file = NA) opened a file called NA, including when used as
    a Quartz-based bitmap device.  It now gives an error.
  * rank(&lt;long vector&gt;) now works, fixing PR#18617, thanks to Ilia
    Kats.
  * seq.int() did not adequately check its length.out argument.
  * match(&lt;POSIXct&gt;, .) is correct again for differing time zones,
    ditto for "POSIXlt", fixing PR#18618 reported by Bastian Klein.
  * drop.terms(*, dropx = &lt;0-length&gt;) now works, fixing PR#18563 as
    proposed by Mikael Jagan.
  * drop.terms(*) keeps + offset(.) terms when it should, PR#18565,
    and drop.terms() no longer makes up a response, PR#18566, fixing
    both bugs thanks to Mikael Jagan.
  * getS3method("t", "test") no longer finds the t.test() function,
    fixing PR#18627.
  * pdf() and postscript() support for the documented Adobe encodings
    "Greek" and "Cyrilllic" was missing (although the corresponding
    Windows' codepages could be used).
  * Computations of glyph metric information for pdf() and
    postscript() did not take into account that transliteration could
    replace one character by two or more (only seen on macOS 14) and
    typically warned that the information was not known.
  * rank(x) no longer overflows during integer addition, when
    computing rank average for largish but not-yet long vector x,
    fixing PR#18630, thanks to Ilia Kats.
  * list.files() on Windows now returns also files with names longer
    that 260 bytes (the Windows limit is 260 characters).
    Previously, some file names particularly with 'East Asian'
    characters were omitted.
  * cov2cor(&lt;0 x 0&gt;) now works, fixing PR#18423 thanks to Mikael
    Jagan and Elin Waring.
  * cov2cor(&lt;negative diagonal&gt;) and similar now give one warning
    instead of two, with better wording, fixing PR#18424 thanks to
    Mikael Jagan.
  * tools:: startDynamicHelp() now ensures port is in proper range,
    fixing PR#18645.
  * pbeta(x, a,b) is correct now for x=0 or 1 in the boundary cases
    where a or b or both are 0, fixing PR#18672 thanks to Michael
    Fay.
  * pmatch(x, table) for large table, also called for data frame row
    selection, dfrm[nm, ], is now interruptible, fixing PR#18656.
  * predict(&lt;rank-deficient lm&gt;, newdata=*) fix computing of nbasis,
    see Russ Lenth's comment 29 in PR#16158.
  * Added a work-around for a bug in macOS 14.3.1 and higher which
    prevents R plots in the Quartz Cocoa device from updating on
    screen.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1713960000">- CHANGES IN R 4.4.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Startup banners, R --version, sessionInfo() and R CMD check no
    longer report (64-bit) as part of the platform as this is almost
    universal - the increasingly rare 32-bit platforms will still
    report (32-bit).
    On Windows, ditto for window titles.
  * is.atomic(NULL) now returns FALSE, as NULL is not an atomic
    vector.  Strict back-compatibility would replace is.atomic(foo)
    by (is.null(foo) || is.atomic(foo)) but should happen only
    sparingly.
  NEW FEATURES:
  * The confint() methods for "glm" and "nls" objects have been
    copied to the stats package.  Previously, they were stubs which
    called versions in package MASS. The MASS namespace is no longer
    loaded if you invoke (say) confint(glmfit).  Further, the "glm"
    method for profile() and the plot() and pairs() methods for class
    "profile" have been copied from MASS to stats.  (profile.nls()
    and plot.profile.nls() were already in stats.)
  * The confint() and profile methods for "glm" objects have gained a
    possibility to do profiling based on the Rao Score statistic in
    addition to the default Likelihood Ratio. This is controlled by a
    new test = argument.
  * The pairs() method for "profile" objects has been extended with a
    which = argument to allow plotting only a subset of the
    parameters.
  * The "glm" method for anova() computes test statistics and
    p-values by default, using a chi-squared test or an F test
    depending on whether the dispersion is fixed or free.  Test
    statistics can be suppressed by giving argument test a false
    logical value.
  * In setRepositories() the repositories can be set using their
    names via name = instead of index ind =.
  * methods() and .S3methods() gain a all.names option for the (rare)
    case where functions starting with a . should be included.
  * Serializations can now be interrupted (e.g., by Ctrl-C on a
    Unix-alike) if they take too long, e.g., from save.image(),
    thanks to suggestions by Ivan Krylov and others on R-devel.
  * New startup option --max-connections to set the maximum number of
    simultaneous connections for the session.  Defaults to 128 as
    before: allowed values up to 4096 (but resource limits may in
    practice restrict to smaller values).
  * R on Windows (since Windows 10 2004) now uses the new Segment
    Heap allocator. This may improve performance of some
    memory-intensive applications.
  * When R packages are built, typically by R CMD build &lt;pkg&gt;, the
    new --user=&lt;build_user&gt; option overrides the (internally
    determined) user name, currently Sys.info()["user"] or LOGNAME.
    This is a (modified) fulfillment of Will Landau's suggestion in
    PR#17530.
  * tools::testInstalledBasic() gets new optional arguments outDir
    and testSrcdir, e.g., allowing to use it in a &lt;builddir&gt; !=
    &lt;srcdir&gt; setup, and in standard "binary" Windows installation
  * if* a source tests/ folder is present.
  * range(&lt;DT_with_Inf&gt;, finite = TRUE) now work for objects of class
    "Date", "POSIXct", and "POSIXlt" with infinite entries,
    analogously to range.default(), as proposed by Davis Vaughan on
    R-devel.  Other range()-methods can make use of new function
    .rangeNum().
  * New .internalGenerics object complementing .S3PrimitiveGenerics,
    for documentation and low-level book-keeping.
  * grid() now invisibly returns the x- and y- coordinates at which
    the grid-lines were drawn.
  * norm(., type) now also works for complex matrices.
  * kappa(., exact = TRUE, norm = *) now works for all norms and also
    for complex matrices.  In symmetric / triangular cases, the new
    argument uplo = "U" | "L" allows the upper or lower triangular
    part to be specified.
  * memDecompress(type = "unknown") recognizes compression in the
    default 'zlib' format as used by memCompress(type = "gzip").
  * memCompress() and memDecompress() will use the libdeflate library
    (&lt;https://github.com/ebiggers/libdeflate&gt;) if installed.  This
    uses the same type of compression for type = "gzip" but is 1.5-2x
    faster than the system libz library on some common platforms: the
    speed-up may depend on the library version.
  * diff() for objects of class "Date", "POSIXct", and "POSIXlt"
    accepts a units argument passed via ....
  * Dynamic help now does a much better job of rendering package
    DESCRIPTION metadata.
  * Rprof() gains an event argument and support for elapsed (real)
    time profiling on Unix (PR#18076).
  * filled.contour() gains a key.border argument.
  * tools::update_pkg_po() gets arguments pot_make and mo_make for
    _not_ re-making the corresponding files, and additionally a
    verbose argument.
  * Hexadecimal string colour specifications are now accepted in
    short form, so, for example, we can use "#123", which is
    equivalent to "#112233".
    Thanks to MikeFC for the original idea and Ella Kaye, Malcolm
    Barrett, George Stagg, and Hanne Oberman for the patch.
  * Plain-text help shows \var markup by angle brackets.
  * The new experimental primitive function declare() is intended to
    eventually allow information about R code to be communicated to
    the interpreter, compiler, and code analysis tools. The syntax
    for declarations is still being developed.
  * Functions psmirnov(), qsmirnov() and rsmirnov() in package stats
    have had argument two.sided renamed to alternative, to take into
    account that the permutation distributions of the one-sided
    statistics can be different in the case of ties.  Consequence of
    PR#18582.
  * sort() is now an implicit S4 generic in methods.
  * Formatting and printing, format(z), print(z), of complex vectors
    z no longer zap relatively small real or imaginary parts to zero,
    fixing PR#16752.  This is an API change, as it was documented
    previously to round real and imaginary parts together on purpose,
    producing nicer looking output.  As mentioned, e.g. in the PR,
    this change is compatible with many other "R-like" programming
    environments.
    We have simplified the internal code and now basically format the
    real and imaginary parts independently of each other.
  * New experimental functions Tailcall() and Exec() to support
    writing stack-space-efficient recursive functions.
  * Where characters are attempted to be plotted by pdf(),
    postscript() and xfig() which are not in the selected 8-bit
    character set (most often Latin-1) and the R session is using a
    UTF-8 locale, the warning messages will show the UTF-8 character
    rather than its bytes and one dot will be substituted per
    character rather than per byte.  (Platforms whose iconv() does
    transliteration silently plot the transliteration.)
    In a UTF-8 locale some transliterations are now done with a
    warning (e.g., dashes and Unicode minus to hyphen, ligatures are
    expanded, permille (‰) is replaced by o/oo), although the OS may
    have got there first.  These are warnings as they will continue
    to be replaced by dots in earlier versions of R.
  * The matrix multiplication functions crossprod() and tcrossprod()
    are now also primitive and S3 generic, as %*% had become in R
    4.3.0.
  * source() and example() have a new optional argument catch.aborts
    which allows continued evaluation of the R code after an error.
  * The non-Quartz tiff() devices allow additional types of
    compression if supported by the platform's libtiff library.
  * The list of base and recommended package names is now provided by
    tools::standard_package_names().
  * cairo_pdf() and cairo_ps() default to onefile = TRUE to closer
    match pdf() and postscript().
  * New option catch.script.errors provides a documented way to catch
    errors and then continue in non-interactive use.
  * L %||% R newly in base is an expressive idiom for the phrases
    if(!is.null(L)) L else R or if(is.null(L)) R else L.
  * The return value from warnings() now always inherits from
    "warnings" as documented, now also in the case of no warnings
    where it previously returned NULL.
  * as.complex("1i") now returns 0 + 1i instead of NA with a warning.
  * z &lt;- c(NA, 1i) now keeps the imaginary part Im(z[1]) == 0, no
    longer coercing to NA_complex_.  Similarly, cumsum(z) correctly
    sums real and imaginary parts separately, i.e., without
    "crosstalk" in case of NAs.
  * On Alpine Linux iconv() now maps "latin2", "latin-2", "latin9"
    and "latin-9" to encoding names the OS knows about
    (case-insensitively).
  * iconv(sub = "Unicode") now always zero-pads to four (hex) digits,
    rather than to 4 or 8.  (This seems to have become the convention
    once Unicode restricted the number of Unicode points to 2^21 - 1
    and so will never need more than 6 digits.)
  * NCOL(NULL) now returns 0 instead of 1, for consistency with
    cbind().
  * The information for the Euro glyph missing from the Adobe .afm
    files for the Courier, Helvetica and Times families has been
    copied from their URW equivalents - this will improve vertical
    centring in the pdf() and postscript() devices.
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.12.0.  The changes are almost entirely cosmetic.
  * The included LAPACK sources have been updated to version 3.12.0
    and some further double-complex routines added.
  * There are new font families for the 2014--5 URW 2.0 fonts (see
    ?pdf) which are included in recent versions of Ghostscript.
    These have font widths for most Greek glyphs and a few others
    which were missing from the original versions (whose font
    families remain available for reproducibility, although
    Ghostscript-based viewers will render using the 2.0 versions).
  * Improve the large-n efficiency of as.matrix(&lt;dist&gt;), thanks an R
    contributors effort, notably by Tim Taylor and Heather Turner,
    see PR#18660.
  * The default and numeric methods of all.equal() get a check.class
    option.
  * zapsmall() gets new optional arguments, function mFUN and min.d,
    for extra flexibility; fulfills a wish in PR#18199.  Also, it is
    now an implicit S4 generic in package methods.
  * The Rd filter for aspell() gains an ignore argument.
  * New generic function sort_by(), primarily useful for the
    data.frame method which can be used to sort rows of a data frame
    by one or more columns.
  * The icence headers for the RPC code in src/extra/xdr have been
    updated to use the GPL-compatible licence published by Oracle
    America in 2010.
  * New function pkg2HTML() in tools to create single-page HTML
    reference manuals for R packages.
  * The byte code evaluator now uses less C stack space for recursive
    calls to byte-compiled functions. It also makes more of an effort
    to avoid allocations for scalar return values.
  * New completion option backtick (disabled by default) allows
    non-syntactic completions to be wrapped in backquotes. This is
    currently only useful for Jupyter notebooks via the IRkernel
    package, and may cause problems for other backends.
  INSTALLATION:
  * The parser has been updated to work with bison 3.8.2, which is
    now used for the pre-generated parsers in gram.c, file.c, and
    gramRd.c. A few parser error messages have changed, which may
    affect code that relies on exact messages.
  INSTALLATION on a UNIX-ALIKE:
  * System valgrind headers are now required to use configure option
  - -with-valgrind-instrumentation with value 1 or 2.
  * configure will warn if it encounters a 32-bit build, as that is
    nowadays almost untested.
  * Environment variable R_SYSTEM_ABI is no longer used and so no
    longer recorded in etc/Renviron (it was not on Windows and was
    only ever used when preparing package tools).
  * If the libdeflate library and headers are available, libdeflate
    rather than libz is used to (de)compress R objects in lazy-load
    databases.  Typically tasks spend up to 5% of their time on such
    operations, although creating lazy-data databases is one of the
    exceptions.
    This can be suppressed if the library is available by the
    configure option --without-libdeflate-compression.
  * configure option --enable-lto=check has not worked reliably since
    2019 and has been removed.
  * The minimum autoconf requirement for a maintainer build has been
    increased to autoconf 2.71.
    It is intended to increase this to 2.72 for R 4.5.0: the
    distributed configure file was generated using 2.72.
  * The minimum version requirement for an external LAPACK has been
    reduced to 3.9.0.
  * No default C++ compiler is set if no C++17 compiler is detected:
    there is no longer an automatic fallback to C++14 or C++11.
    Compilers from the last five years should have sufficient
    support: for others macros CXX and CXXSTD can be set in file
    config.site to provide a fallback if needed.
    The Objective-C++ compiler now by default uses the standard
    selected by R for C++ (currently C++17) rather than the default
    standard for the C++ compiler (which on macOS is still C++98).
  INSTALLATION on macOS:
  * A new configure option --with-newAccelerate makes use of Apple's
    'new' BLAS / LAPACK interfaces in their Accelerate framework.
    Those interfaces are only available in macOS 13.3 or later, and
    building requires SDK 13.3 or later (from the Command Line Tools
    or Xcode 14.3 or later).
    By default the option uses new Accelerate for BLAS calls: to also
    use it for LAPACK use option --with-newAccelerate=lapack.  The
    later interfaces provide LAPACK 3.9.1 rather than 3.2.1: 3.9.1 is
    from 2021-04 and does not include the improved algorithms
    introduced in LAPACK 3.10.0 (including for BLAS calls).
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools44, an update of the Rtools43 toolchain.  It is
    based on GCC 13 and newer versions of MinGW-W64, binutils and
    libraries (targeting 64-bit Intel CPUs).  R-devel can no longer
    be built using Rtools43 without changes.
  * Rtools44 has experimental support for 64-bit ARM (aarch64) CPUs
    _via_ the LLVM 17 toolchain using lld, clang/flang-new and
    libc++.
  UTILITIES:
  * R CMD check notes when S4-style exports are used without
    declaring a strong dependence on package methods.
  * tools::checkRd() (used by R CMD check) detects more problems with
    \Sexpr-based dynamic content, including bad nesting of \Sexprs
    and invalid arguments.
  * tools::checkRd() now reports Rd titles and section names ending
    in a period; this is ignored by R CMD check unless environment
    variable _R_CHECK_RD_CHECKRD_MINLEVEL_ is set to -5 or smaller.
  * R CMD check now notes Rd files without an \alias, as long
    documented in 'Writing R Extensions' §1.3.1.  The check for a
    missing \description has been moved from tools::checkRd() to
    tools::checkRdContents().
  * R CMD check now visits inst/NEWS.Rd and OS-specific man
    subdirectories when checking Rd files.
  * tools::checkDocFiles() and tools::checkRdContents() now also
    check internal Rd files by default, but "specially" (ignoring
    missing documentation of arguments).
  * R CMD Rdiff gets option --useEx.
  * R CMD check now warns on non-portable uses of Fortran KIND such
    as INTEGER(KIND=4) and REAL(KIND=8).
    To see the failing lines set environment variable
    _R_CHECK_FORTRAN_KIND_DETAILS_ to a true value.
  * When checking Rd files, R CMD check now notes some of the "lost
    braces" that tools::checkRd() finds.  Typical problems are Rd
    macros missing the initial backslash (e.g., code{...}), in-text
    set notation (e.g., {1, 2}, where the braces need escaping), and
    \itemize lists with \describe-style entries of the form
    \item{label}{description}.
  * R CMD INSTALL (and hence check) will compile C++ code with
  - DR_NO_REMAP if environment variable _R_CXX_USE_NO_REMAP_ is set
    to a true value.  It is planned that this will in future become
    the default for compiling C++.
  * The new built-in Rd macro \dontdiff{} can be used to mark example
    code whose output should be ignored when comparing check output
    to reference output (tests/Examples/&lt;pkg&gt;-Ex.Rout.save).  The
    \dontdiff tag, like \donttest, is _not_ shown on the rendered
    help page, so provides a clean alternative to ##
    IGNORE_RDIFF_(BEGIN|END) comments.
  * R CMD build when there is no NAMESPACE, now uses the recommended
    exportPattern("^[^.]"), instead of exporting everything.
  * R CMD check now warns about non-ASCII characters in the NAMESPACE
    file (in addition to R files). Such packages are not portable and
    may fail to install on some platforms.
  C-LEVEL FACILITIES:
  * Headers R_ext/Applic.h and R-ext/Linpack.h used to include
    R_ext/BLAS.h although this was undocumented and unneeded by their
    documented entry points.  They no longer do so.
  * New function R_missing(), factored out from do_missing(), used to
    fix PR#18579.
  * SEXP type S4SXP has been renamed to OBJSXP to support
    experimenting with alternative object systems.  The S4SXP value
    can still be used in C code but is now deprecated.  Based on
    contributions from the R Consortium's Object-Oriented Programming
    Working Group.
  * New function pow1p(x,y) for accurate (1+x)^y.
  * mkCharLenCE was incorrectly documented to take a size_t length
    but was implemented with int (and character strings in R are
    limited to 2^31 - 1 bytes).
  DEPRECATED AND DEFUNCT:
  * data() no longer handles zipped data from long-defunct (since R
    2.13.0) --use-zip-data installations.
  * The legacy graphics devices pictex() and xfig() are now
    deprecated.  They do not support recent graphics enhancements and
    their font handling is rudimentary. The intention is to retain
    them for historical interest as long as they remain somewhat
    functional.
  * Support for encoding = "MacRoman" has been removed from the pdf()
    and postscript() devices - this was a legacy encoding supporting
    classic macOS up to 2001 and no longer has universal libiconv
    support.
  * is.R() is deprecated as no other S dialect is known to be in use
    (and this could only identify historical dialects, not future
    ones).
    Further information on calls can be obtained by setting the
    environment variable _R_DEPRECATED_IS_R_ to error which turns the
    deprecation warning into an error and so by default gives a
    traceback.  (This is done by R CMD check --as-cran.)
  * UseMethod() no longer forwards local variables assigned in the
    generic function into method call environments before evaluating
    the method body. This makes method calls behave more like
    standard function calls and makes method code easier to analyze
    correctly.
  * The twelve as.data.frame.&lt;class&gt;() methods which were deprecated
    only via _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ and in R CMD
    check --as-cran are formally deprecated now in favour of calling
    as.data.frame() or as.data.frame.vector().  The deprecation
    "check" now works also when as.data.frame() is S4 generic thanks
    to Ivan Krylov.
  * The default method for the directional comparison operators &lt;, &gt;,
    &lt;=, and &gt;= now signals an error when one of the operands is a
    language object, i.e. a symbol or a call.
  * For terms.formula(), deprecate abb and neg.out arguments
    _formally_ in addition to just documenting it.
  BUG FIXES:
  * The methods package is more robust to not being attached to the
    search path.  More work needs to be done.
  * pairwise.t.test() misbehaved when subgroups had 0 DF for
    variance, even with pool.sd = TRUE.  (PR#18594 by Jack Berry).
  * Probability distribution functions [dpq]&lt;distrib&gt;(x, *), but also
    bessel[IKJY](x, .) now consistently preserve attributes(x) when
    length(x) == 0, e.g., for a 2 x 0 matrix, thanks to Karolis
    Koncevičius' report PR#18509.
  * Group "Summary" computations such as sum(1:3, 4, na.rm = 5, NA,
    7, na.rm = LL) now give an error instead of either 17 or NN for
    LL true or false, as proposed by Ivan Krylov on the R-devel
    mailing list.  (This also means it is now an error to specify
    na.rm more than once.)
  * as.complex(x) now returns complex(real = x, imaginary = 0) for
    _all_ numerical and logical x, notably also for NA or
    NA_integer_.
  * Directories are now omitted by file.copy(, recursive = FALSE) and
    in file.append() (PR#17337).
  * gsub() and sub() are now more robust to integer overflow when
    reporting errors caused by too large input strings (PR#18346).
  * Top-level handlers are now more robust to attempts to remove a
    handler whilst handlers are running (PR#18508).
  * The handling of Alt+F4 in dialogs created on Windows using
    GraphApp has been fixed (PR#13870).
  * density() more consistently computes grid values for the
    FFT-based convolution, following Robert Schlicht's analysis and
    proposal in PR#18337, correcting density values typically by a
    factor of about 0.999.  Argument old.coords = TRUE provides back
    compatibility.
  * palette.colors() gains a name argument that defaults to FALSE
    controlling whether the vector of colours that is returned has
    names (where possible).  PR#18529.
  * tools::xgettext() no longer extracts the (non-translatable) class
    names from warningCondition and errorCondition calls.
  * S3method(&lt;gen&gt;, &lt;class&gt;, &lt;func&gt;) in the NAMESPACE file now works
    (again) when &lt;func&gt; is visible from the namespace, e.g.,
    imported, or in base.
  * getParseData(f) now also works for a function defined in the
    first of several &lt;pkg&gt;/R/*.R source files, thanks to Kirill
    Müller's report and Duncan Murdoch's patch in PR#16756.
  * Rd \Sexpr macros with nested #ifdef conditionals were not
    processed.
  * A non-blocking connection with non-default encoding (such as a
    socket) now correctly returns from readLines() after new data has
    arrived also when its EOF had been reached previously.  Thanks to
    Peter Meilstrup's report on R-devel and Ivan Krylov's report and
    patch proposal in PR#18555.
  * tools::checkRdContents() failed to detect empty argument
    descriptions when they spanned multiple lines, including those
    generated by prompt().  These cases are now noted by R CMD check.
  * Plain-text help no longer outputs spurious colons in the
    arguments list (for multi-line \item labels in the Rd source).
  * kappa() and rcond() work correctly in more cases; kappa(., norm =
    "2") now warns that it computes the 1-norm with (default) exact =
    FALSE; prompted by Mikael Jagan's quite comprehensive PR#18543.
  * Rd skeletons generated by prompt() or promptData() now use a
    dummy title (so R CMD build works).  tools::checkRdContents() has
    been updated to detect such template leftovers, including from
    promptPackage().
  * When S4 method dispatch fails because no method was found, the
    error message now includes the signature argument names; thanks
    to Michael Chirico's proposal on the R-devel list.
  * withAutoprint({ .. }) now preserves srcrefs previously lost,
    thanks to Andrew Simmons' report plus fix in PR#18572.
  * transform.data.frame() no longer adjusts names; in particular,
    untransformed variables are kept as-is, including those with
    syntactically invalid names (PR#17890).
  * The keep.source option for Rd \Sexpr blocks is no longer ignored.
  * The formula methods for t.test() and wilcox.test() now catch when
    paired is passed, addressing PR#14359; use Pair(x1, x2) ~ 1 for a
    paired test.
  * The level reported in the browser prompt was often too large. It
    now shows the number of browser contexts on the stack.
  * For cbind() and rbind(), the optional deparse.level argument is
    now properly passed to methods, thanks to Mikael Jagan's PR#18579
    and comments there.
  * Some error and warning messages for large ('long vector')
    matrix(v, nr, nc) and dim(m) &lt;- d are now correct about sizes,
    using long long formatting, fixing PR#18612 (and more) reported
    by Mikael Jagan.
  * readChar(useBytes = TRUE) now terminates strings even when the
    underlying connection uses extra spaces in the input buffer.
    This fixes problems with extra garbage seen with gzip
    connections, PR#18605.
  * Named capture in PCRE regular expressions now works also with
    more than 127 named groups (PR#18588).
  * Datetime functions are now robust against long jumps when dealing
    with internal time zone changes.  This avoids confusing warnings
    about an invalid time zone, previously triggered by turning
    warnings into errors or handling them via tryCatch (PR#17966,
    PR#17780).
  * Datetime functions now restore even an empty TZ environment
    variable after internal time zone changes (PR#17724).  This makes
    results of datetime functions with this (typically unintentional)
    setting more predictable.
  * drop.terms(*) now drops response as by default, keep.response =
    FALSE, fixing PR#18564 thanks to Mikael Jagan.
  * dummy.coef(.) now also works for lm()-models with character
    categorical predictor variables rather than factor ones, fixing
    PR#18635 reported by Jinsong Zhao.
  * formals(f) &lt;- formals(f) now also works for a function w/o
    arguments and atomic _constant_ body(f).
  * Correct as.function(&lt;invalid list&gt;, .)'s error message.
  * removeSource() is yet more thorough in finding and removing
    "srcref" and the other source references from parsed R language
    chunks, fixing PR#18638 thanks to Andrew Simmons.
  * dgeom() is more accurate now, notably when its result is very
    small, fixing PR#18642 thanks to the proposal of Morten Welinder,
    also improving other instances where C level binom_raw(x, n, ..)
    has x == 0 or x== n.
  * warning() with options(warn = 1) has improved output for
    multi-line messages.
  * axis.Date() and axis.POSIXct() now respect the par("lab") setting
    for the number of pretty() intervals.
  * Comparisons for language objects (which are based on deparsing)
    are now more careful about using accurate deparsed results
    (PR#18676).
  * Plain-text help (Rd2txt) now correctly preserves blank lines
    following single-line \dontrun code.
  * &lt;POSIXlt&gt;[*] no longer sets wrong "balanced" attribute, fixing
    PR#18681 thanks to Mikael Jagan.
  * str(&lt;classed-call&gt;) now deparses the call as expected, fixing
    PR#18684, reported by Dave Slager.
  * In Rd examples, code following the closing brace of a \dontrun,
    \dontshow or \donttest tag on the same line is no longer skipped
    when R CMD check runs the examples.
  * as.data.frame(matrix(*, ncol=0)) now gets valid names() and
    colnames(); reported by Davis Vaughan on the R-devel list.
  * Internal Mathlib function stirlerr(n) is now almost fully
    (52-bit) accurate for all n &gt;= ~5.9 and more accurate also in the
    range 1 -- 5.9.  This entails small ("after 12th decimal")
    changes in density functions, e.g., dgamma() in _some_ regions of
    their support.  The fix was partly prompted by Morten Welinder's
    PR#18640.
  * Numbers like 9876543.2 are now considered non-integer by Mathlib
    internal R_nonint(), amending original fix of PR#15734.
  * Rd comment lines no longer cause broken paragraphs in the
    rendered PDF and plain-text help. In code blocks, pure comment
    lines (starting with %) no longer produce an empty line.
  * xtabs(Freq ~ .) now consistently defaults to na.action = na.pass,
    using na.rm = FALSE (added as an argument) when summing over Freq
    (PR#17770).
  * tools::testInstalledPackage() is no longer silent about failures
    from running examples or tests and its return code no longer
    ignores failures from checking vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1718366400">- CHANGES IN R 4.4.1:
  C-LEVEL FACILITIES:
  * Functions R_atof and R_strtod declared in header R_ext/Utils.h
    are now documented in 'Writing R Extensions' and so formally part
    of the API.
  * The non-API entry points Rf_setSVector, Rf_StringFalse,
    Rf_StringTrue and Rf_isBlankString have been added to those
    reported by R CMD check.
  * The new function Rf_allocLang is now available. This provides an
    alternative to the idiom of calling Rf_allocList followed by
    SET_TYPEOF.
  UTILITIES:
  * R CMD check now reports as warnings what gfortran calls 'Fortran
    2018 deleted features', all of which have long been marked as
    'obsolescent' and some of which were deleted in Fortran 2008 or
    earlier.  Fortran compilers are no longer required to support
    these.
  BUG FIXES:
  * as.numeric(), scan(), type.convert() and other places which use
    the internal C function R_strtod now require a _non-empty_ digit
    sequence in a decimal or binary exponent.  This aligns with the
    C/POSIX standard for strtod and with ?NumericConstants.
  * as.data.frame(m, make.names=NA) now works correctly for a matrix
    m with NA's in row names.
  * The error message from &lt;POSIXlt&gt;[["hour"]] and similar now
    mentions *[[, "hour"]], as wished for in PR#17409 and proposed by
    Michael Chirico.
  * qbinom() and potentially qpois(), qnbinom(), no longer sometimes
    fail accurate inversion (of pbinom(), etc), thanks to Christopher
    Chang's report and patch in PR#18711.
  * The internal help server on Windows can again serve requests sent
    in quick succession, fixing a regression in R 4.4.0.
  * debugcall(&lt;S3Generic&gt;()) now also works when a corresponding
    S4-generic version is in the methods cache (PR#18143).
  * Package tools' toTitleCase(ch0) now returns character(0) when ch0
    is of zero length; fixing PR#18724, reported by David Hugh Jones.
  * R CMD check is no longer broken (without a check result and no
    explanation in 00check.log) for a package which declares an
    invalid VignetteBuilder in DESCRIPTION but has no vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1730376000">- CHANGES IN R 4.4.2:
  C-LEVEL FACILITIES:
  * The S-compatibility macros F77_COM and F77_COMDECL defined in
    header R_ext/RS.h are deprecated and will be removed shortly.  We
    could find no record of their use.
  BUG FIXES:
  * Mathlib function lgammacor(x) no longer warns about underflow to
    zero for large x.
  * Text widths and heights were incorrectly reported by the Quartz
    device if the drawing context didn't exist yet (typically when
    drawing off-screen to a window that is yet to appear, see
    PR#18591).
  * The Quartz device could segfault in cases where paths with spaces
    are used in the new glyph drawing API.  Thanks to Tomek
    Gieorgijewski (PR#18758).
  * On macOS in R CRAN builds, it is again possible to read
    little-endian UTF-16 text with a BOM from a connection using
    encoding="UTF-16".  Users building R from source should avoid
    using the system libiconv in macOS 14.1 and later.
  * methods' internal .requirePackage() now re-enables primitive
    method dispatch when needed; thanks to Ivan Krylov for
    demystifying CRAN package check failures on the R-devel mailing
    list.</changelog>
</package>
<package pkgid="a712829b77fa6d94160494f3b4622e584a5fadd3f681734c61fdc332cdc260276d2e8486c7ccac00e48ae7145f459d9513cdbbf9be7ae220d45f1f30bc1def30" name="R-graphics" arch="i586">
  <version epoch="0" ver="4.4.2" rel="51.0.2.2.sr20241103"/>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1620302400">- To get in sync with d:l:R:autoCRAN the Matrix package's split
  in -devel was reversed.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339200">- improved spec file according to comments of dimstar in
  https://build.opensuse.org/request/show/892685</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339201">- CHANGES IN R 4.1.0:
  FUTURE DIRECTIONS:
  * It is planned that the 4.1.x series will be the last to support
    32-bit Windows, with production of binary packages for that
    series continuing until early 2023.
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Data set esoph in package datasets now provides the correct
    numbers of controls; previously it had the numbers of cases added
    to these.  (Reported by Alexander Fowler in PR#17964.)
  NEW FEATURES:
  * www.omegahat.net is no longer one of the repositories known by
    default to setRepositories().  (Nowadays it only provides source
    packages and is often unavailable.)
  * Function package_dependencies() (in package tools) can now use
    different dependency types for direct and recursive dependencies.
  * The checking of the size of tarball in R CMD check --as-cran
    &lt;pkg&gt; may be tweaked via the new environment variable
    _R_CHECK_CRAN_INCOMING_TARBALL_THRESHOLD_, as suggested in
    PR#17777 by Jan Gorecki.
  * Using c() to combine a factor with other factors now gives a
    factor, an ordered factor when combining ordered factors with
    identical levels.
  * apply() gains a simplify argument to allow disabling of
    simplification of results.
  * The format() method for class "ftable" gets a new option justify.
    (Suggested by Thomas Soeiro.)
  * New ...names() utility.  (Proposed by Neal Fultz in PR#17705.)
  * type.convert() now warns when its as.is argument is not
    specified, as the help file always said it _should_.  In that
    case, the default is changed to TRUE in line with its change in
    read.table() (related to stringsAsFactor) in R 4.0.0.
  * When printing list arrays, classed objects are now shown _via_
    their format() value if this is a short enough character string,
    or by giving the first elements of their class vector and their
    length.
  * capabilities() gets new entry "Rprof" which is TRUE when R has
    been configured with the equivalent of --enable-R-profiling (as
    it is by default).  (Related to Michael Orlitzky's report
    PR#17836.)
  * str(xS4) now also shows extraneous attributes of an S4 object
    xS4.
  * Rudimentary support for vi-style tags in rtags() and R CMD rtags
    has been added.  (Based on a patch from Neal Fultz in PR#17214.)
  * checkRdContents() is now exported from tools; it and also
    checkDocFiles() have a new option chkInternal allowing to check
    Rd files marked with keyword "internal" as well.  The latter can
    be activated for R CMD check via environment variable
    _R_CHECK_RD_INTERNAL_TOO_.
  * New functions numToBits() and numToInts() extend the raw
    conversion utilities to (double precision) numeric.
  * Functions URLencode() and URLdecode() in package utils now work
    on vectors of URIs.  (Based on patch from Bob Rudis submitted
    with PR#17873.)
  * path.expand() can expand ~user on most Unix-alikes even when
    readline is not in use.  It tries harder to expand ~, for example
    should environment variable HOME be unset.
  * For HTML help (both dynamic and static), Rd file links to help
    pages in external packages are now treated as references to
    topics rather than file names, and fall back to a file link only
    if the topic is not found in the target package. The earlier rule
    which prioritized file names over topics can be restored by
    setting the environment variable _R_HELP_LINKS_TO_TOPICS_ to a
    false value.
  * c() now removes NULL arguments before dispatching to methods,
    thus simplifying the implementation of c() methods, _but_ for
    back compatibility keeps NULL when it is the first argument.
    (From a report and patch proposal by Lionel Henry in PR#17900.)
  * Vectorize()'s result function's environment no longer keeps
    unneeded objects.
  * Function ...elt() now propagates visibility consistently with
    ..n.  (Thanks to Lionel Henry's PR#17905.)
  * capture.output() no longer uses non-standard evaluation to
    evaluate its arguments.  This makes evaluation of functions like
    parent.frame() more consistent.  (Thanks to Lionel Henry's
    PR#17907.)
  * packBits(bits, type="double") now works as inverse of
    numToBits().  (Thanks to Bill Dunlap's proposal in PR#17914.)
  * curlGetHeaders() has two new arguments, timeout to specify the
    timeout for that call (overriding getOption("timeout")) and TLS
    to specify the minimum TLS protocol version to be used for
    https:// URIs (_inter alia_ providing a means to check for sites
    using deprecated TLS versions 1.0 and 1.1).
  * For nls(), an optional constant scaleOffset may be added to the
    denominator of the relative offset convergence test for cases
    where the fit of a model is expected to be exact, thanks to a
    proposal by John Nash.  nls(*, trace=TRUE) now also shows the
    convergence criterion.
  * Numeric differentiation _via_ numericDeriv() gets new optional
    arguments eps and central, the latter for taking central divided
    differences.  The latter can be activated for nls() via
    nls.control(nDcentral = TRUE).
  * nls() now passes the trace and control arguments to getInitial(),
    notably for all self-starting models, so these can also be fit in
    zero-noise situations via a scaleOffset.  For this reason, the
    initial function of a selfStart model must now have ... in its
    argument list.
  * bquote(splice = TRUE) can now splice expression vectors with
    attributes: this makes it possible to splice the result of
    parse(keep.source = TRUE).  (Report and patch provided by Lionel
    Henry in PR#17869.)
  * textConnection() gets an optional name argument.
  * get(), exists(), and get0() now signal an error if the first
    argument has length greater than 1.  Previously additional
    elements were silently ignored.  (Suggested by Antoine Fabri on
    R-devel.)
  * R now provides a shorthand notation for creating functions, e.g.
    \(x) x + 1 is parsed as function(x) x + 1.
  * R now provides a simple native forward pipe syntax |&gt;.  The
    simple form of the forward pipe inserts the left-hand side as the
    first argument in the right-hand side call.  The pipe
    implementation as a syntax transformation was motivated by
    suggestions from Jim Hester and Lionel Henry.
  * all.equal(f, g) for functions now by default also compares their
    environment(.)s, notably via new all.equal method for class
    function.  Comparison of nls() fits, e.g., may now need
    all.equal(m1, m2, check.environment = FALSE).
  * .libPaths() gets a new option include.site, allowing to _not_
    include the site library.  (Thanks to Dario Strbenac's suggestion
    and Gabe Becker's PR#18016.)
  * Lithuanian translations are now available.  (Thanks to Rimantas
    Zakauskas.)
  * names() now works for DOTSXP objects.  On the other hand, in
    R-lang, the R language manual, we now warn against relying on the
    structure or even existence of such dot-dot-dot objects.
  * all.equal() no longer gives an error on DOTSXP objects.
  * capabilities("cairo") now applies only to the file-based devices
    as it is now possible (if very unusual) to build R with Cairo
    support for those but not for X11().
  * There is optional support for tracing the progress of
    loadNamespace() - see its help.
  * (Not Windows.)  l10n_info() reports an additional element, the
    name of the encoding as reported by the OS (which may differ from
    the encoding part (if any) of the result from
    Sys.getlocale("LC_CTYPE").
  * New function gregexec() which generalizes regexec() to find _all_
    disjoint matches and well as all substrings corresponding to
    parenthesized subexpressions of the given regular expression.
    (Contributed by Brodie Gaslam.)
  * New function charClass() in package utils to query the
    wide-character classification functions in use (such as
    iswprint).
  * The names of quantile()'s result no longer depend on the global
    getOption("digits"), but quantile() gets a new optional argument
    digits = 7 instead.
  * grep(), sub(), regexp and variants work considerably faster for
    long factors with few levels.  (Thanks to Michael Chirico's
    PR#18063.)
  * Provide grouping of x11() graphics windows within a window
    manager such as Gnome or Unity; thanks to a patch by Ivan Krylov
    posted to R-devel.
  * The split() method for class data.frame now allows the f argument
    to be specified as a formula.
  * sprintf now warns on arguments unused by the format string.
  * New palettes "Rocket" and "Mako" for hcl.colors() (approximating
    palettes of the same name from the 'viridisLite' package).
    Contributed by Achim Zeileis.
  * The base environment and its namespace are now locked (so one can
    no longer add bindings to these or remove from these).
  * Rterm handling of multi-byte characters has been improved,
    allowing use of such characters when supported by the current
    locale.
  * Rterm now accepts ALT+ +xxxxxxxx sequences to enter Unicode
    characters as hex digits.
  * Environment variable LC_ALL on Windows now takes precedence over
    LC_CTYPE and variables for other supported categories, matching
    the POSIX behaviour.
  * duplicated() and anyDuplicated() are now optimized for integer
    and real vectors that are known to be sorted via the ALTREP
    framework. Contributed by Gabriel Becker via PR#17993.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 14
    and so packages that provide graphics devices should be
    reinstalled.
  * Graphics devices should now specify deviceVersion to indicate
    what version of the graphics engine they support.
  * Graphics devices can now specify deviceClip.  If TRUE, the
    graphics engine will never perform any clipping of output itself.
    The clipping that the graphics engine does perform (for both
    canClip = TRUE and canClip = FALSE) has been improved to avoid
    producing unnecessary artifacts in clipped output.
  * The grid package now allows gpar(fill) to be a linearGradient(),
    a radialGradient(), or a pattern().  The viewport(clip) can now
    also be a grob, which defines a clipping path, and there is a new
    viewport(mask) that can also be a grob, which defines a mask.
    These new features are only supported so far on the Cairo-based
    graphics devices and on the pdf() device.
  * (Not Windows.)  A warning is given when a Cairo-based type is
    specified for a png(), jpeg(), tiff() or bmp() device but Cairo
    is unsupported (so type = "Xlib" is tried instead).
  * grSoftVersion() now reports the versions of FreeType and
    FontConfig if they are used directly (not _via_ Pango), as is
    most commonly done on macOS.
  C-LEVEL FACILITIES:
  * The _standalone_ libRmath math library and R's C API now provide
    log1pexp() again as documented, and gain log1mexp().
  INSTALLATION on a UNIX-ALIKE:
  * configure checks for a program pkgconf if program pkg-config is
    not found.  These are now only looked for on the path (like
    almost all other programs) so if needed specify a full path to
    the command in PKG_CONFIG, for example in file config.site.
  * C99 function iswblank is required - it was last seen missing ca
    2003 so the workaround has been removed.
  * There are new configure options --with-internal-iswxxxxx,
  - -with-internal-towlower and --with-internal-wcwidth which allows
    the system functions for wide-character classification,
    case-switching and width (wcwidth and wcswidth) to be replaced by
    internal ones.  The first has long been used on macOS, AIX (and
    Windows) but this enables it to be unselected there and selected
    for other platforms (it is the new default on Solaris).  The
    second is new in this version of R and is selected by default on
    macOS and Solaris.  The third has long been the default and
    remains so as it contains customizations for East Asian
    languages.
    System versions of these functions are often minimally
    implemented (sometimes only for ASCII characters) and may not
    cover the full range of Unicode points: for example Solaris (and
    Windows) only cover the Basic Multilingual Plane.
  * Cairo installations without X11 are more likely to be detected by
    configure, when the file-based Cairo graphics devices will be
    available but not X11(type = "cairo").
  * There is a new configure option --with-static-cairo which is the
    default on macOS.  This should be used when only static cairo
    (and where relevant, Pango) libraries are available.
  * Cairo-based graphics devices on platforms without Pango but with
    FreeType/FontConfig will make use of the latter for font
    selection.
  LINK-TIME OPTIMIZATION on a UNIX-ALIKE:
  * Configuring with flag --enable-lto=R now also uses LTO when
    installing the recommended packages.
  * R CMD INSTALL and R CMD SHLIB have a new flag --use-LTO to use
    LTO when compiling code, for use with R configured with
  - -enable-lto=R.  For R configured with --enable-lto, they have
    the new flag --no-use-LTO.
    Packages can opt in or out of LTO compilation _via_ a UseLTO
    field in the DESCRIPTION file.  (As usual this can be overridden
    by the command-line flags.)
  BUILDING R on Windows:
  * for GCC &gt;= 8, FC_LEN_T is defined in config.h and hence character
    lengths are passed from C to Fortran in _inter alia_ BLAS and
    LAPACK calls.
  * There is a new text file src/gnuwin32/README.compilation, which
    outlines how C/Fortran code compilation is organized and
    documents new features:
  * R can be built with Link-Time Optimization with a suitable
    compiler - doing so with GCC 9.2 showed several
    inconsistencies which have been corrected.
  * There is support for cross-compiling the C and Fortran code
    in R and standard packages on suitable (Linux) platforms.
    This is mainly intended to allow developers to test later
    versions of compilers - for example using GCC 9.2 or 10.x has
    detected issues that GCC 8.3 in Rtools40 does not.
  * There is experimental support for cross-building R packages
    with C, C++ and/or Fortran code.
  * The R installer can now be optionally built to support a single
    architecture (only 64-bit or only 32-bit).
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++14 where
    available (which it is on all currently checked platforms): if
    not (as before) C++11 is used if available otherwise C++ is not
    supported.
    Packages which specify C++11 will still be installed using C++11.
    C++14 compilers may give deprecation warnings, most often for
    std::random_shuffle (deprecated in C++14 and removed in C++17).
    Either specify C++11 (see 'Writing R Extensions') or modernize
    the code and if needed specify C++14.  The latter has been
    supported since R 3.4.0 so the package's DESCRIPTION would need
    to include something like
    Depends: R (&gt;= 3.4)
  PACKAGE INSTALLATION on Windows:
  * R CMD INSTALL and R CMD SHLIB make use of their flag --use-LTO
    when the LTO_OPT make macro is set in file etc/${R_ARCH}/Makeconf
    or in a personal/site Makevars file.  (For details see 'Writing R
    Extensions' SS4.5.)
    This provides a valuable check on code consistency.  It does work
    with GCC 8.3 as in Rtools40, but that does not detect everything
    the CRAN checks with current GCC do.
  PACKAGE INSTALLATION on macOS:
  * The default personal library directory on builds with
  - -enable-aqua (including CRAN builds) now differs by CPU type,
    one of
    ~/Library/R/x86_64/x.y/library
    ~/Library/R/arm64/x.y/library
    This uses the CPU type R (and hence the packages) were built for,
    so when a x86_64 build of R is run under Rosetta emulation on an
    arm64 Mac, the first is used.
  UTILITIES:
  * R CMD check can now scan package functions for bogus return
    statements, which were possibly intended as return() calls (wish
    of PR#17180, patch by Sebastian Meyer). This check can be
    activated via the new environment variable
    _R_CHECK_BOGUS_RETURN_, true for --as-cran.
  * R CMD build omits tarballs and binaries of previous builds from
    the top-level package directory.  (PR#17828, patch by Sebastian
    Meyer.)
  * R CMD check now runs sanity checks on the use of LazyData, for
    example that a data directory is present and that
    LazyDataCompression is not specified without LazyData and has a
    documented value.  For packages with large LazyData databases
    without specifying LazyDataCompression, there is a reference to
    the code given in 'Writing R Extensions' SS1.1.6 to test the
    choice of compression (as in all the CRAN packages tested a
    non-default method was preferred).
  * R CMD build removes LazyData and LazyDataCompression fields from
    the DESCRIPTION file of packages without a data directory.
  ENCODING-RELATED CHANGES:
  * The parser now treats \Unnnnnnnn escapes larger than the upper
    limit for Unicode points (\U10FFFF) as an error as they cannot be
    represented by valid UTF-8.
    Where such escapes are used for outputting non-printable
    (including unassigned) characters, 6 hex digits are used (rather
    than 8 with leading zeros).  For clarity, braces are used, for
    example \U{0effff}.
  * The parser now looks for non-ASCII spaces on Solaris (as
    previously on most other OSes).
  * There are warnings (including from the parser) on the use of
    unpaired surrogate Unicode points such as \uD834.  (These cannot
    be converted to valid UTF-8.)
  * Functions nchar(), tolower(), toupper() and chartr() and those
    using regular expressions have more support for inputs with a
    marked Latin-1 encoding.
  * The character-classification functions used (by default) to
    replace the system iswxxxxx functions on Windows, macOS and AIX
    have been updated to Unicode 13.0.0.
    The character-width tables have been updated to include new
    assignments in Unicode 13.0.0.
  * The code for evaluating default (extended) regular expressions
    now uses the same character-classification functions as the rest
    of R (previously they differed on Windows, macOS and AIX).
  * There is a build-time option to replace the system's
    wide-character wctrans C function by tables shipped with R: use
    configure option --with-internal-towlower or (on Windows)
  - DUSE_RI18N_CASE in CFLAGS when building R.  This may be needed
    to allow tolower() and toupper() to work with Unicode characters
    beyond the Basic Multilingual Plane where not supported by system
    functions (e.g. on Solaris where it is the new default).
  * R is more careful when truncating UTF-8 and other multi-byte
    strings that are too long to be printed, passed to the system or
    libraries or placed into an internal buffer.  Truncation will no
    longer produce incomplete multibyte characters.
  DEPRECATED AND DEFUNCT:
  * Function plclust() from the package stats and
    package.dependencies(), pkgDepends(), getDepList(),
    installFoundDepends(), and vignetteDepends() from package tools
    are defunct.
  * Defunct functions checkNEWS() and readNEWS() from package tools
    and CRAN.packages() from utils have been removed.
  * R CMD config CXXCPP is defunct (it was deprecated in R 3.6.2).
  * parallel::detectCores() drops support for Irix (retired in 2013).
  * The LINPACK argument to chol.default(), chol2inv(),
    solve.default() and svd() has been defunct since R 3.1.0.  It was
    silently ignored up to R 4.0.3 but now gives an error.
  * Subsetting/indexing, such as ddd[*] or ddd$x on a DOTSXP
    (dot-dot-dot) object ddd has been disabled; it worked by accident
    only and was undocumented.
  BUG FIXES:
  * Many more C-level allocations (mainly by malloc and strdup) are
    checked for success with suitable alternative actions.
  * Bug fix for replayPlot(); this was turning off graphics engine
    display list recording if a recorded plot was replayed in the
    same session.  The impact of the bug became visible if resize the
    device after replay OR if attempted another savePlot() after
    replay (empty display list means empty screen on resize or empty
    saved plot).
  * R CMD check etc now warn when a package exports non-existing S4
    classes or methods, also in case of no "methods" presence.
    (Reported by Alex Bertram; reproducible example and patch by
    Sebastian Meyer in PR#16662.)
  * boxplot() now also accepts calls for labels such as ylab, the
    same as plot().  (Reported by Marius Hofert.)
  * The help page for xtabs() now correctly states that addNA is
    setting na.action = na.pass among others.  (Reported as PR#17770
    by Thomas Soeiro.)
  * The R CMD check &lt;pkg&gt; gives a longer and more comprehensible
    message when DESCRIPTION misses dependencies, e.g., in Imports:.
    (Thanks to the contributors of PR#17179.)
  * update.default() now calls the generic update() on the formula to
    work correctly for models with extended formulas.  (As reported
    and suggested by Neal Fultz in PR#17865.)
  * The horizontal position of leaves in a dendrogram is now correct
    also with center = FALSE.  (PR#14938, patch from Sebastian
    Meyer.)
  * all.equal.POSIXt() no longer warns about and subsequently ignores
    inconsistent "tzone" attributes, but describes the difference in
    its return value (PR#17277).  This check can be disabled _via_
    the new argument check.tzone = FALSE as suggested by Sebastian
    Meyer.
  * as.POSIXct() now populates the "tzone" attribute from its tz
    argument when x is a logical vector consisting entirely of NA
    values.
  * x[[2^31]] &lt;- v now works.  (Thanks to the report and patch by
    Suharto Anggono in PR#17330.)
  * In log-scale graphics, axis() ticks and label positions are now
    computed more carefully and symmetrically in their range,
    typically providing _more_ ticks, fulfilling wishes in PR#17936.
    The change really corresponds to an improved axisTicks() (package
    grDevices), potentially influencing grid and lattice, for
    example.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now correct to at
    least five digits where it was catastrophically wrong,
    previously.
  * sum(df) and similar "Summary"- and "Math"-group member functions
    now work for data frames df with logical columns, notably also of
    zero rows.  (Reported to R-devel by Martin "b706".)
  * unsplit() had trouble with tibbles due to unsound use of rep(NA,
    len)-indexing, which should use NA_integer_ (Reported to R-devel
    by Mario Annau.)
  * pnorm(x, log.p = TRUE) underflows to -Inf slightly later.
  * show(&lt;hidden S4 generic&gt;) prints better and without quotes for
    non-hidden S4 generics.
  * read.table() and relatives treated an "NA" column name as missing
    when check.names = FALSE PR#18007.
  * Parsing strings containing UTF-16 surrogate pairs such as
    "\uD834\uDD1E" works better on some (uncommon) platforms.
    sprintf("%X", utf8ToInt("\uD834\uDD1E")) should now give "1D11E"
    on all platforms.
  * identical(x,y) is no longer true for differing DOTSXP objects,
    fixing PR#18032.
  * str() now works correctly for DOTSXP and related exotics, even
    when these are doomed.
    Additionally, it no longer fails for lists with a class and
    "irregular" method definitions such that e.g. lapply(*) will
    necessarily fail, as currently for different igraph objects.
  * Too long lines in environment files (e.g. Renviron) no longer
    crash R. This limit has been increased to 100,000 bytes.
    (PR#18001.)
  * There is a further workaround for FreeType giving incorrect
    italic font faces with cairo-based graphics devices on macOS.
  * add_datalist(*, force = TRUE) (from package tools) now actually
    updates an existing data/datalist file for new content.  (Thanks
    to a report and patch by Sebastian Meyer in PR#18048.)
  * cut.Date() and cut.POSIXt() could produce an empty last interval
    for breaks = "months" or breaks = "years".  (Reported as PR#18053
    by Christopher Carbone.)
  * Detection of the encoding of 'regular' macOS locales such as
    en_US (which is UTF-8) had been broken by a macOS change:
    fortunately these are now rarely used with en_US.UTF-8 being
    preferred.
  * sub() and gsub(pattern, repl, x, *) now keep attributes of x such
    as names() also when pattern is NA (PR#18079).
  * Time differences ("difftime" objects) get a replacement and a
    rep() method to keep "units" consistent.  (Thanks to a report and
    patch by Nicolas Bennett in PR#18066.)
  * The \RdOpts macro, setting defaults for \Sexpr options in an Rd
    file, had been ineffective since R 2.12.0: it now works again.
    (Thanks to a report and patch by Sebastian Meyer in PR#18073.)
  * mclapply and pvec no longer accidentally terminate parallel
    processes started before by mcparallel or related calls in
    package parallel (PR#18078).
  * grep and other functions for evaluating (extended) regular
    expressions handle in Unicode also strings not explicitly flagged
    UTF-8, but flagged native when running in UTF-8 locale.
  * Fixed a crash in fifo implementation on Windows (PR#18031).
  * Binary mode in fifo on Windows is now properly detected from
    argument open (PR#15600, PR#18031).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1622808000">- The line %{__install} -m 755 -d %{_infodir}
  no longer works in TW or Factory.
  But without that line it works everywhere. So this instruction
  was commented out of the spec file.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1628596800">- CHANGES IN R 4.1.1:
  NEW FEATURES:
  * require(pkg, quietly = TRUE) is quieter and in particular does
    not warn if the package is not found.
  DEPRECATED AND DEFUNCT:
  * Use of ftp:// URIs should be regarded as deprecated, with
    on-going support confined to method = "libcurl" and not routinely
    tested.  (Nowadays no major browser supports them.)
  * The non-default method = "internal" is deprecated for http:// and
    ftp:// URIs for both download.file and url.
  * On Windows, method = "wininet" is deprecated for http://,
    https:// and ftp:// URIs for both download.file and url.  (A
    warning is only given for ftp://.)
    For ftp:// URIs the default method is now "libcurl" if available
    (which it is on CRAN builds).
    method = "wininet" remains the default for http:// and https://
    URIs but if libcurl is available, using method = "libcurl" is
    preferred.
  INSTALLATION:
  * make check now works also without a LaTeX installation.  (Thanks
    to Sebastian Meyer's PR#18103.)
  BUG FIXES:
  * make check-devel works again in an R build configured with
  - -without-recommended-packages.
  * qnbinom(p, size, mu) for large size/mu is correct now in a range
    of cases (PR#18095); similarly for the (size, prob)
    parametrization of the negative binomial.  Also qpois() and
    qbinom() are better and or faster for extreme cases.  The
    underlying C code has been modularized and is common to all four
    cases of discrete distributions.
  * gap.axis is now part of the axis() arguments which are passed
    from bxp(), and hence boxplot().  (Thanks to Martin Smith's
    report and suggestions in PR#18109.)
  * .First and .Last can again be set from the site profile.
  * seq.int(from, to, *) and seq.default(..) now work better in large
    range cases where from-to is infinite where the two boundaries
    are finite.
  * all.equal(x,y) now returns TRUE correctly also when several
    entries of abs(x) and abs(y) are close to .Machine$double.xmax,
    the largest finite numeric.
  * model.frame() now clears the object bit when removing the class
    attribute of a value via na.action (PR#18100).
  * charClass() now works with multi-character strings on Windows
    (PR#18104, fixed by Bill Dunlap).
  * encodeString() on Solaris now works again in Latin-1 encoding on
    characters represented differently in UTF-8.  Support for
    surrogate pairs on Solaris has been improved.
  * file.show() on Windows now works with non-ASCII path names
    representable in the current native encoding (PR#18132).
  * Embedded R on Windows can now find R home directory via the
    registry even when installed only for the current user
    (PR#18135).
  * pretty(x) with finite x now returns finite values also in the
    case where the extreme x values are close in size to the maximal
    representable number .Machine$double.xmax.
    Also, it's been tweaked for very small ranges and when a boundary
    is close (or equal) to zero; e.g., pretty(c(0,1e-317)) no longer
    has negative numbers, currently still warning about a very small
    range, and pretty(2^-(1024 - 2^-1/(c(24,10)))) is more accurate.
  * The error message for not finding vignette files when weaving has
    correct file sizes now. (Thanks to Sebastian Meyer's PR#18154.)
  * dnbinom(20, &lt;large&gt;, 1) now correctly gives 0, and similar cases
    are more accurate with underflow precaution.  (Reported by Francisco Vera Alcivar in PR#18072.)</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635163200">- repaired https://bugzilla.suse.com/show_bug.cgi?id=1191380
  (rpmacros now go to rpmmacrodir)
- minor clean-ups in spec file</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635768000">- CHANGES IN R 4.1.2:
  C-LEVEL FACILITIES:
  * The workaround in headers R.h and Rmath.h (using namespace std;)
    for the Oracle Developer Studio compiler is no longer needed now
    C++11 is required so has been removed.  A couple more usages of
    log() (which should have been std::log()) with an int argument
    are reported on Solaris.
  * The undocumented limit of 4095 bytes on messages from the
    S-compatibility macros PROBLEM and MESSAGE is now documented and
    longer messages will be silently truncated rather than
    potentially causing segfaults.
  * If the R_NO_SEGV_HANDLER environment variable is non-empty, the
    signal handler for SEGV/ILL/BUS signals (which offers recovery
    user interface) is not set. This allows more reliable debugging
    of crashes that involve the console.
  DEPRECATED AND DEFUNCT:
  * The legacy S-compatibility macros PROBLEM, MESSAGE, ERROR, WARN,
    WARNING, RECOVER, ... are deprecated and will be hidden in R
    4.2.0. R's native interface of Rf_error and Rf_warning has long
    been preferred.
  BUG FIXES:
  * .mapply(F, dots, .) no longer segfaults when dots is not a list
    and uses match.fun(F) as always documented; reported by Andrew
    Simmons in PR#18164.
  * hist(&lt;Date&gt;, ...) and hist(&lt;POSIXt&gt;, ...)  no longer pass
    arguments for rect() (such as col and density) to axis().
    (Thanks to Sebastian Meyer's PR#18171.)
  * \Sexpr{ch} now preserves Encoding(ch). (Thanks to report and
    patch by Jeroen Ooms in PR#18152.)
  * Setting the RNG to "Marsaglia-Multicarry" e.g., by RNGkind(), now
    warns in more places, thanks to Andr'e Gillibert's report and
    patch in PR#18168.
  * gray(numeric(), alpha=1/2) no longer segfaults, fixing PR#18183,
    reported by Till Krenz.
  * Fixed dnbinom(x, size=&lt;very_small&gt;, .., log=TRUE) regression,
    reported by Martin Morgan.
  * as.Date.POSIXlt(x) now keeps names(x), thanks to Davis Vaughan's
    report and patch in PR#18188.
  * model.response() now strips an "AsIs" class typically, thanks to
    Duncan Murdoch's report and other discussants in PR#18190.
  * try() is considerably faster in case of an error and long call,
    as e.g., from some do.call().  Thanks to Alexander Kaever's
    suggestion posted to R-devel.
  * qqline(y = &lt;object&gt;) such as y=I(.), now works, see also
    PR#18190.
  * Non-integer mgp par() settings are now handled correctly in
    axis() and mtext(), thanks to Mikael Jagan and Duncan Murdoch's
    report and suggestion in PR#18194.
  * formatC(x) returns length zero character() now, rather than ""
    when x is of length zero, as documented, thanks to Davis
    Vaughan's post to R-devel.
  * removeSource(fn) now retains (other) attributes(fn).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1647000000">- CHANGES IN R 4.1.3:
  NEW FEATURES:
  * The default version of Bioconductor has been changed to 3.14.
    (This is used by setRepositories and the menus in GUIs.)
  UTILITIES:
  * R CMD check --as-cran has a workaround for a bug in versions of
    file up to at least 5.41 which mis-identify DBF files last
    changed in 2022 as executables.
  C-LEVEL FACILITIES:
  * The legacy S-compatibility macros SINGLE_* in R_ext/Constants.h
    (included by R.h) are deprecated and will be removed in R 4.2.0.
  BUG FIXES:
  * Initialization of self-starting nls() models with initialization
    functions following the pre-R-4.1.0 API (without the ...
    argument) works again for now, with a deprecation warning.
  * Fixed quoting of ~autodetect~ in Java setting defaults to avoid
    inadvertent user lookup due to leading ~, reported in PR#18231 by
    Harold Gutch.
  * substr(., start, stop) &lt;- v now treats _negative_ stop values
    correctly.  Reported with a patch in PR#18228 by Brodie Gaslam.
  * Subscripting an array x without dimnames by a
    length(dim(x))-column character matrix gave "random" non-sense,
    now an error; reported in PR#18244 by Mikael Jagan.
  * ...names() now matches names(list(...)) closely, fixing PR#18247.
  * all.equal(*, scale = s) now works as intended when length(s) &gt; 1,
    partly thanks to Michael Chirico's PR#18272.
  * print(x) for long vectors x now also works for named atomic
    vectors or lists and prints the correct number when reaching the
    getOption("max.print") limit; partly thanks to a report and
    proposal by Hugh Parsonage to the R-devel list.
  * all.equal(&lt;selfStart&gt;, *) no longer signals a deprecation
    warning.
  * reformulate(*, response=r) gives a helpful error message now when
    length(r) &gt; 1, thanks to Bill Dunlap's PR#18281.
  * Modifying globalCallingHandlers inside withCallingHandlers() now
    works or fails correctly, thanks to Henrik Bengtsson's PR#18257.
  * hist(&lt;Date&gt;, breaks = "days") and hist(&lt;POSIXt&gt;, breaks = "secs")
    no longer fail for inputs of length 1.
  * qbeta(.001, .9, .009) and similar cases now converge correctly
    thanks to Ben Bolker's report in PR#17746.
  * window(x, start, end) no longer wrongly signals "'start' cannot
    be after 'end'", fixing PR#17527 and PR#18291.
  * data() now checks that its (rarely used) list argument is a
    character vector - a couple of packages passed other types and
    gave incorrect results.
  * which() now checks its arr.ind argument is TRUE rather coercing
    to logical and taking the first element - which gave incorrect
    results in package code.
  * model.weights() and model.offset() more carefully extract their
    model components, thanks to Ben Bolker and Tim Taylor's R-devel
    post.
  * list.files(recursive = TRUE) now shows all broken symlinks
    (previously, some of them may have been omitted, PR#18296).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1650628800">- CHANGES IN R 4.2.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * The formula method of aggregate() now matches the generic in
    naming its first argument x (resolving PR#18299 by Thomas
    Soeiro).
    This means that calling aggregate() with a formula as a named
    first argument requires name formula in earlier versions of R and
    name x now, so portable code should not name the argument (code
    in many packages did).
  * Calling &amp;&amp; or || with either argument of length greater than one
    now gives a warning (which it is intended will become an error).
  * Calling if() or while() with a condition of length greater than
    one gives an error rather than a warning.  Consequently,
    environment variable _R_CHECK_LENGTH_1_CONDITION_ no longer has
    any effect.
  * Windows users should consult the WINDOWS section below for some
    profound changes including
  * Support for 32-bit builds has been dropped.
  * UTF-8 locales are used where available.
  * The default locations for the R installation and personal
    library folder have been changed.
    Thanks to Tomas Kalibera for months of work on the Windows port
    for this release.
  NEW FEATURES:
  * matrix(x, n, m) now warns in more cases where length(x) differs
    from n * m, as suggested by Abby Spurdle and Wolfgang Huber in
    Feb 2021 on the R-devel mailing list.
    This warning can be turned into an error by setting environment
    variable _R_CHECK_MATRIX_DATA_ to TRUE: R CMD check --as-cran
    does so unless it is already set.
  * Function file_test() in package utils gains tests for symlinks,
    readability and writability.
  * capabilities("libxml") is now false.
    The description of capabilities("http/ftp") now reflects that it
    refers to the default method, no longer the internal one.
  * simplify2array() gains an except argument for controlling the
    exceptions used by sapply().
  * Environment variables R_LIBS_USER and R_LIBS_SITE are both now
    set to the R system default if unset or empty, and can be set to
    NULL to indicate an empty list of user or site library
    directories.
  * The warning for axis()(-like) calls in cases of relatively small
    ranges (typically in log-scale situations) is slightly improved
    _and_ suppressed from explicit calls to .axisPars() as has always
    been the intention.
  * The contrasts setter function `contrasts&lt;-` gains an explicit
    default how.many = NULL rather than just using missing(how.many).
  * grid.pretty() gains a new optional argument n = 5.
  * There is a new function .pretty() with option bounds as a
    technical-utility version of pretty().  It and pretty() gain a
    new argument f.min with a better than back-compatible default.
  * Function grDevices::axisTicks() and related functions such as
    graphics::axis() work better, notably for the log scale; partly
    because of the pretty() improvements, but also because care is
    taken e.g., when ylim is finite but diff(ylim) is infinite.
  * nclass.FD() gains a digits option.
  * The R Mathlib internal C function bd0() (called indirectly from a
    dozen probability density and distribution functions such as
    dpois(), dbinom(), dgamma(), pgamma() _etc_) has been
    complemented by a more sophisticated and (mostly) more accurate C
    function ebd0(), currently called only by internal dpois_raw()
    improving accuracy for R level dpois() and potentially others
    calling it such as dnbinom(), dgamma() or pgamma().  (Thanks to
    Morten Welinder's PR#15628.)
  * write.ftable() gains sep = " " argument as suggested by Thomas
    Soeiro.
  * The names of the locale categories supported by R's
    Sys.getlocale() and Sys.setlocale() are now provided by variable
    .LC.categories in the base namespace.
  * The Date and POSIXt methods for hist() and the histogram method
    for plot() now also use the new default col = "lightgray" in
    consistency with the corresponding change to hist()'s default for
    R 4.0.0.
  * hist.default() gains new fuzz argument, and the histogram plot
    method no longer uses fractional axis ticks when displaying
    counts ("Frequency").
  * mapply() and hence Map() now also obey the "max-or-0-if-any"
    recycling rule, such that, e.g., Map(`+`, 1:3, 1[0]) is valid
    now.
  * as.character(&lt;obj&gt;) for "hexmode" or "octmode" objects now
    fulfils the important basic rule as.character(x)[j] ===
    as.character(x[j]).
  * The set utility functions, notably intersect() have been tweaked
    to be more consistent and symmetric in their two set arguments,
    also preserving a common mode.
  * substr(ch, start,end) &lt;- new now e.g., preserves names(ch); ditto
    for substring(), thanks to a patch from Brodie Gaslam.
  * plot(&lt;lm&gt;) gains a extend.ylim.f argument, in partial response to
    PR#15285; further PR#17784 is fixed thanks to several
    contributors and a patch by Elin Waring.  The Cook's dist
    contours get customizable via cook.col and cook.lty with a
    different default color and their legend is nicer by default and
    customizable via cook.legendChanges.
  * Attempting to subset an object that is not subsettable now
    signals an error of class notSubsettableError. The
    non-subsettable object is contained in the object field of the
    error condition.
  * Subscript-out-of-bounds errors are now signaled as errors of
    class subscriptOutOfBoundsError.
  * Stack-overflow errors are now signaled as errors inheriting from
    class stackOverflowError. See ?stackOverflowError for more
    details.
  * New partly experimental Sys.setLanguage() utility, solving the
    main problem of PR#18055.
  * gettext() and gettextf() get a new option trim = TRUE which when
    set to false allows translations for strings such as "Execution
    halted\n" typical for C code.
  * An experimental implementation of hash tables is now available.
    See ?hashtab for more details.
  * identical() gains a extptr.as.ref argument for requesting that
    external pointer objects be compared as reference objects.
  * reorder() gets an argument decreasing which it passes to sort()
    for level creation; based on the wish and patch by Thomas Soeiro
    in PR#18243.
  * as.vector() gains a data.frame method which returns a simple
    named list, also clearing a long standing 'FIXME' to enable
    as.vector(&lt;data.frame&gt;, mode="list").  This breaks code relying
    on as.vector(&lt;data.frame&gt;) to return the unchanged data frame.
  * legend() is now vectorized for arguments cex, x.intersp, and
    text.width.  The latter can now also be specified as a vector
    (one element for each column of the legend) or as NA for
    computing a proper column wise maximum value of strwidth(legend).
    The argument y.intersp can be specified as a vector with one
    entry for each row of the legend.
    legend() also gains new arguments title.cex and title.font.
    Thanks to Swetlana Herbrandt.
  * Deparsing no longer remaps attribute names dim, dimnames, levels,
    names and tsp to historical S-compatible names (which structure()
    maps back).
  * sample() and sample.int() have additional sanity checks on their
    size and n arguments.
    all.equal.numeric() gains a sanity check on its tolerance
    argument - calling all.equal(a, b, c) for three numeric vectors
    is a surprisingly common error.
    mean(na.rm =), rank(na.last =), barplot(legend.text =),
    boxplot(), contour(drawlabels =), polygon(border =) and
    methods::is(class2 =) have more robust sanity checks on their
    arguments.
    R CMD Rd2pdf (used by R CMD check) has a more robust sanity check
    on the format of \alias{} commands.
  * psigamma(x, deriv) for negative x now also works for deriv = 4
    and 5; their underlying C level dpsifn() is documented in
    'Writing R Extensions'.
  * The HTML help system now uses HTML5 (wish of PR#18149).
  * ks.test() now provides exact p-values also with ties and MC
    p-values in the two-sample (Smirnov) case.  By Torsten Hothorn.
  * ks.test() gains a formula interface, with y ~ 1 for the
    one-sample (Kolmogorov) test and y ~ group for the two-sample
    (Smirnov) test.  Contributed by Torsten Hothorn.
  * The return value from ks.test() now has class c("ks.test",
    "htest") - packages using try() need to take care to use
    inherits() and not == on the class.
  * New functions psmirnov(), qsmirnov() and rsmirnov() in package
    stats implementing the asymptotic and exact distributions of the
    two-sample Smirnov statistic.
  * iconv() now allows sub = "c99" to use C99-style escapes for UTF-8
    inputs which cannot be converted to encoding to.
  * In a forward pipe |&gt; expression it is now possible to use a named
    argument with the placeholder _ in the rhs call to specify where
    the lhs is to be inserted.  The placeholder can only appear once
    on the rhs.
  * The included LAPACK sources have been updated to version 3.10.0,
    except for the four Fortran 77 routines which 3.10.0 has
    re-implemented in Fortran 90 (where the older versions have been
    retained as the R build process does not support Fortran 90).
  * path.expand() and most other uses of tilde expansion now warn if
    a path would be too long if expanded.  (An exception is
    file.exists(), which silently returns false.)
  * trunc(&lt;Date&gt;, *) now supports units = "months" or "years" for
    consistency with the POSIXt method, thanks to Dirk Eddelbuettel's
    proposal in PR#18099.
  * list2DF() now checks that its arguments are of the same length,
    rather than use recycling.
  * The HTML help system has several new features: LaTeX-like math
    can be typeset using either KaTeX or MathJax, usage and example
    code is highlighted using Prism, and for dynamic help the output
    of examples and demos can be shown within the browser if the
    knitr package is installed. These features can be disabled by
    setting the environment variable _R_HELP_ENABLE_ENHANCED_HTML_ to
    a false value.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 15
    and so packages that provide graphics devices should be
    reinstalled.
  * The grid package now allows the user to specify a "vector" of
    pattern fills.  The fill argument to gpar() accepts a list of
    gradients and/or patterns and the functions linearGradient(),
    radialGradient(), and pattern() have a new group argument.
    Points grobs (data symbols) can now also have a pattern fill.
    The grobCoords() function now returns a more informative and
    complex result.
  * The grid package has new functions for drawing isolated groups:
    grid.group(), grid.define(), and grid.use().  These functions add
    compositing operators and affine transformations to R's graphics
    capabilities.
    The grid package also has new functions for stroking and filling
    paths: grid.stroke(), grid.fill(), and grid.fillStroke().
    A new function as.path() allows the user to specify the fill rule
    for a path that is to be used for clipping, stroking, or filling;
    available options are "winding" and "evenodd".  A new function
    as.mask() allows the user to specify the type of a mask;
    available options are "alpha" and "luminance".
    These new features are only supported so far (at most) on the
    Cairo-based graphics devices and on the pdf() device.
  * dev.capabilities() reports on device support for the new
    features.
  * par() now warns about unnamed non-character arguments to prevent
    misuse such as {usr &lt;- par("usr"); par(usr)}.
  INSTALLATION:
  * Facilities for accessing ftp:// sites are no longer tested
    (except _pro tem_ for curlGetHeaders()) as modern browsers have
    removed support.
  * R can now be built with DEFS = -DSTRICT_R_HEADERS .
  PACKAGE INSTALLATION:
  * R CMD INSTALL no longer tangles vignettes. This completes an R
    CMD build change in R 3.0.0 and affects packages built before R
    3.0.2. Such packages should be re-made with R CMD build to have
    the tangled R code of vignettes shipped with the tarball.
  * USE_FC_LEN_T will become the default: this uses the correct
    prototypes for Fortran BLAS/LAPACK routines called from C/C++,
    and requires adjustment of most such calls - see 'Writing R
    Extensions' SS6.6.2.  (This has been supported since R 3.6.2.)
  * Package installation speed for packages installed with
    keep.source has been improved. This resolve the issue reported by
    Ofek Shilon in PR#18236.
  UTILITIES:
  * R CMD check can optionally report files/directories left behind
    in home, /tmp (even though TMPDIR is set) and other directories.
    See the "R Internals" manual for details.
  * R CMD check now reports byte-compilation errors during
    installation.  These are not usually fatal but may result in
    parts of the package not being byte-compiled.
  * _R_CHECK_DEPENDS_ONLY_ can be applied selectively to examples,
    tests and/or vignettes in R CMD check: see the "R Internals"
    manual.
  * _R_CHECK_SRC_MINUS_W_IMPLICIT_ now defaults to true: recent
    versions of Apple clang on macOS have made implicit function
    declarations in C into a compilation error.
  * R CMD check --as-cran makes use of the environment variable
    AUTORECONF.  See the "R Internals" manual SS8 for further details.
  * R CMD check --use-valgrind also uses valgrind when re-building
    vignettes as some non-Sweave vignettes unhelpfully comment out
    all their code when R CMD check runs vignettes.
  * Errors in re-building vignettes (unless there are LaTeX errors)
    are reported by R CMD check as ERROR rather than WARNING when
    running vignettes has been skipped (as it frequently is in CRAN
    checks and by --as-cran).
  * R CMD Rd2pdf gains a --quiet option that is used by R CMD build
    when building the PDF package manual.
  * R CMD Rd2pdf now always runs LaTeX in batch mode, consistent with
    Texinfo &gt;= 6.7. The --batch option is ignored.
  * R CMD build and R CMD check now include the Rd file name and line
    numbers in the error message of an \Sexpr evaluation failure.
  * For packages using the \doi Rd macro (now an install-time \Sexpr)
    but no other dynamic Rd content, R CMD build now produces a
    smaller tarball and is considerably faster - skipping temporary
    package installation.
  C-LEVEL FACILITIES:
  * The non-API header R_ext/R-ftp-http.h is no longer provided, as
    the entry points it covered are now all defunct.
  * A number of non-API declarations and macro definitions have been
    moved from the installed header Rinternals.h to the internal
    header Defn.h. Packages that only use entry points and
    definitions documented to be part of the API as specified in
    'Writing R Extensions' SS6 should not be affected.
  * The macro USE_RINTERNALS no longer has any effect when compiling
    package code.  Packages which also use R_NO_REMAP will need to
    ensure that the remapped names are used for calls to API
    functions that were formerly also made available as macros.
  * The deprecated legacy S-compatibility macros PROBLEM, MESSAGE,
    ERROR, WARN, WARNING, RECOVER, ... are no longer defined in
    R_exts/RS.h (included by R.h).  Replace these by calls to
    Rf_error and Rf_warning (defined in header R_ext/Error.h included
    by R.h).
    Header R_ext/RS.h no longer includes R_ext/Error.h.
  * Header R_ext/Constants.h (included by R.h) when included from C++
    now includes the C++ header cfloat rather than the C header
    float.h (now possible as C++11 is required).
  * The legacy S-compatibility macros DOUBLE_* in R_ext/Constants.h
    (included by R.h) are deprecated.
  * The deprecated S-compatibility macros SINGLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * R_Calloc, R_Free and R_Realloc are preferred to their unprefixed
    forms and error messages now use the prefix. These forms were
    introduced in R 3.4.0 and are available even when
    STRICT_R_HEADERS is defined.
  * rmultinom has been documented in 'Writing R Extensions' SS6 so is
    now part of the R API.
  * Similarly, Rtanpi, called from R level tanpi() is now part of the
    R API.
  * The long-deprecated, undocumented and non-API entry point call_R
    is no longer declared in R_ext/RS.h (included by R.h).
  * The header S.h which has been unsupported since Jan 2016 has been
    removed.  Use R.h instead.
  DEPRECATED AND DEFUNCT:
  * The (non-default and deprecated) method = "internal" for
    download.file() and url() no longer supports http:// nor ftp://
    URIs.  (It is used only for file:// URIs.)
    On Windows, download.file(method = "wininet") no longer supports
    ftp:// URIs.  (It is no longer the default method, which is
    "libcurl" and does.)
    On Windows, the deprecated method = "wininet" now gives a warning
    for http:// and https:// URIs for both download.file() and url().
    (It is no longer the default method.)
  * On Windows, the command-line option --max-mem-size and
    environment variable R_MAX_MEM_SIZE are defunct.  The memory
    allocation limit was important for 32-bit builds, but these are
    no longer supported.
  * default.stringsAsFactors() is now formally deprecated, where that
    was only mentioned on its regular help page, previously.  So it
    now gives a warning if called.
  * unix.time() is defunct now; it had been deprecated since R 3.4.0.
  BUG FIXES:
  * Setting digits = 0 in format(), print.default() (and hence
    typically print()) or options() is again invalid.  Its behaviour
    was platform-dependent, and it is unclear what "zero significant
    digits" should mean (PR#18098).
  * Messages from C code in the cairo section of package grDevices
    are now also offered for translation, thanks to Michael Chirico's
    PR#18123.
  * mean(x) with finite x now is finite also without "long.double"
    capability.
  * R CMD Rd2pdf no longer leaves an empty build directory behind
    when it aborts due to an already existing output file.  (Thanks
    to Sebastian Meyer's PR#18141.)
  * density(x, weights = w, na.rm = TRUE) when anyNA(x) is true, now
    removes weights "in parallel" to x, fixing PR#18151, reported by
    Matthias Gondan.  Additionally, it gets a subdensity option.
  * Conversion of \Sexpr[]{&lt;expR&gt;} to LaTeX or HTML no longer
    produces long blocks of empty lines when &lt;expR&gt; itself contains
    several lines all producing empty output.  Thanks to a report and
    patch by Ivan Krylov posted to R-devel.
  * R CMD build no longer fails if a package vignette uses child
    documents and inst/doc exists.  (Thanks to Sebastian Meyer's
    PR#18156.)
  * When an R documentation ('help' source) file man/foo.Rd in a
    package has \donttest{..} examples with a syntax error, it is now
    signalled as ERROR and with correct line numbers relating to the
  * -Ex.R file, thanks to Duncan Murdoch and Sebastian Meyer's
    reports and patch proposals in PR#17501.
  * Improved determination of the correct translation domain in
    non-base packages, addressing the combination of PR#18092 and
    PR#17998 (#c6) with reports and _augmented_ patch #2904 by
    Suharto Anggono.
    Note that "R-base" is no longer the default domain e.g., for
    top-level calls to gettext(); rather translation needs explicit
    domain = * specification in such cases.
  * identical(attrib.as.set=FALSE) now works correctly with data
    frames with default row names (Thanks to Charlie Gao's PR#18179).
  * txtProgressBar() now enforces a non-zero width for argument char,
    without which no progress can be visible.
  * dimnames(table(d)) is more consistent in the case where d is a
    list with a single component, thanks to Thomas Soeiro's report to
    R-devel.
    Further, table(d1, d2) now gives an error when d1 and d2 are data
    frames as suggested by Thomas in PR#18224.
  * Fix for drawing semi-transparent lines and fills on the native
    Windows graphics device (PR#18219 and PR#16694).  Thanks to Nick
    Ray for helpful diagnosis on Bugzilla.
  * The deparser now wraps sub-expressions such as if(A) ..  with
    parentheses when needed; thanks to Duncan Murdoch's PR#18232 and
    Lionel Henry's patches there.
  * remove.packages() no longer tries to uninstall Priority: base
    packages, thanks to a report and suggestions by Colin Fay in
    PR#18227.
  * win.metafile() now has xpinch and ypinch arguments so that the
    user can override Windows' (potentially wrong) guess at device
    dimensions.
  * x[i] and x[[i]] for non-integer i should now behave in all cases
    as always documented: the index used is equivalent to
    as.integer(i) unless that would overflow where trunc(i) is used
    instead; thanks to Suharto Anggono's report and patch proposals
    in PR#17977.
  * asOneSidedFormula() now associates the resulting formula with the
    global environment rather than the evaluation environment created
    for the call.
  * &lt;bibentry&gt;$name now matches the field name case-insensitively,
    consistent with bibentry() creation and the replacement method.
  * cbind() failed to detect some length mismatches with a mixture of
    time-series and non-time-series inputs.
  * The default LaTeX style file Sweave.sty used by the RweaveLatex
    driver no longer loads the obsolete ae package; thanks to a
    report by Thomas Soeiro in PR#18271.  Furthermore, it now skips
    \usepackage[T1]{fontenc} for engines other than pdfTeX (if
    detected) or if the new [nofontenc] option is used.
  * smooth.spline() now stores its logical cv argument more safely,
    fixing a rare bug when printing, and also stores n.
  * smooth.spline(x,y,*) now computes the cv.crit statistic
    correctly, also when is.unsorted(x), fixing PR#18294.
  * The data.frame method of rbind() now warns when binding
    not-wholly-recycling vectors, by analogy to the default method
    (for matrices).
  * setAs() finds the correct class for name to when multiple
    packages define a class with that name. Thanks to Gabor Csardi
    for the report.
  * Fix for detaching a package when two classes of the same name are
    present in method signatures for the same generic. Thanks to
    Gabor Csardi for the report.
  * match.arg("", c("", "a", "B")) gives a better error message, in
    part from PR#17959, thanks to Elin Waring.
  * R CMD Sweave --clean no longer removes pre-existing files or
    subdirectories (PR#18242).
  * The quartz() device no longer splits polylines into subpaths.
    That has caused narrowly-spaced lines with many points to always
    look solid even when dashed line type was used due to dash phase
    restarts.
  * Deparsing constructs such as quote(1 + `!`(2) + 3) works again as
    before R 3.5.0, thanks to the report and patch in PR#18284 by
    Suharto Anggono.
  * as.list(f) for a factor f now keeps names(f), fixing PR#18309.
  * qbeta(.001, .9, .009) and analogous qf() calls now return a
    correct value instead of NaN or wrongly 1, all with a warning;
    thanks to the report by Ludger Goeminne in PR#18302.
  * plot.lm() failed to produce the plot of residuals vs.  factor
    levels (i.e., which=5 when leverages are constant) for models
    with character predictors (PR#17840).
  * interaction.plot(..., xtick = TRUE) misplaced the x-axis line
    (PR#18305).
  * Not strictly fixing a bug, format()ing and print()ing of
    non-finite Date and POSIXt values NaN and +/-Inf no longer show
    as NA but the respective string, e.g., Inf, for consistency with
    numeric vector's behaviour, fulfilling the wish of PR#18308.
  * R CMD check no longer runs test scripts generated from
    corresponding .Rin files twice and now signals an ERROR if
    processing an .Rin script fails.
  * tools::Rd2txt() used for plain-text help pages now renders \hrefs
    (if tools::Rd2txt_options(showURLs = TRUE)) and \urls with
    percent-encoding and standards-compliant delimiting style (angle
    brackets and no URL: prefix).  \email is now rendered with a
    mailto: prefix.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1655985600">- CHANGES IN R 4.2.1:
  NEW FEATURES:
  * New function utils::findCRANmirror() to find out if a CRAN mirror
    has been selected, otherwise fallback to the main site.  This
    behaves in the same way as tools::CRAN_package_db() and is
    intended for packages wishing to access CRAN for purposes other
    than installing packages.
    The need for this was shown by a day when the main CRAN website
    was offline and a dozen or so packages which had its URL
    hardcoded failed their checks.
  INSTALLATION on a UNIX-ALIKE:
  * The libraries searched for by --with-blas (without a value) now
    include BLIS (after OpenBLAS but before ATLAS).  And on macOS,
    the Accelerate framework (after ATLAS).  (This is patterned after
    the AX_BLAS macro from the Autoconf Archive.)
  * The included LAPACK sources have been updated to 3.10.1.
  UTILITIES:
  * The (full path to) the command tidy to be used for HTML
    validation can be set by environment variable R_TIDYCMD.
  * Setting environment variable _R_CHECK_RD_VALIDATE_RD2HTML_ to a
    false value will override R CMD check --as-cran and turn off HTML
    validation.  This provides a way to circumvent a problematic
    tidy.
    The 2006 version that ships with macOS is always skipped.
  C-LEVEL FACILITIES:
  * The undocumented legacy declarations of Sint, Sfloat, SINT_MAX
    and SINT_MIN in header R.h are deprecated.
  BUG FIXES:
  * fisher.test(d) no longer segfaults for "large" d; fixing PR#18336
    by preventing/detecting an integer overflow reliably.
  * tar(., files=*) now produces correctly the warning about invalid
    uid or gid of files, fixing PR#18344, reported by Martin Morgan.
  * tk_choose.files() with multi = FALSE misbehaved on paths
    containing spaces (PR#18334) (regression introduced in R 4.0.0).
  * sort(x, partial = ind, *) now works correctly notably for the
    non-default na.last = FALSE or TRUE, fixing PR#18335 reported by
    James Edwards.
  * Environment variable _R_CHECK_XREFS_REPOSITORIES_ is only used
    for checking .Rd cross-references in R CMD check (as documented)
    and not for other uses looking for a CRAN mirror.
  * The search for a CRAN mirror when checking packages now uses
    getOption("repos") if that specifies a CRAN mirror, even when it
    does not also specify all three Bioconductor repositories (as was
    previously required).
  * The HTML code generated by tools::Rd2HTML() has been improved to
    pass tidy 5.8.0.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1667217600">- CHANGES IN R 4.2.2:
  NEW FEATURES:
  * tools::Rdiff(useDiff = TRUE) checks for the presence of an
    external diff command and switches to useDiff = FALSE if none is
    found.  This allows R CMD Rdiff to always work.
  * On Windows, environment variable R_LIBCURL_SSL_REVOKE_BEST_EFFORT
    can be used to switch to only 'best-effort' SSL certificate
    revocation checks with the default "libcurl" download method.
    This reduces security, but may be needed for downloads to work
    with MITM proxies (PR#18379).
  * (macOS) The run-time check for libraries from XQuartz for X11 and
    Tcl/Tk no longer uses otool from the Apple Developer Tools
    (PR#18400).
  * The LaTeX style for producing the PDF manuals, Rd.sty, now loads
    the standard amsmath, amsfonts and amssymb packages for greater
    coverage of math commands in the Rd \eqn and \deqn macros.  The
    \mathscr LaTeX command is also provided (via the mathrsfs
    package, if available, or the amsfonts bundle otherwise),
    fulfilling the wish of PR#18398.
  * (Windows) The default format of readClipboard() and
    writeClipboard() has been changed to 13 (CF_UNICODETEXT).
  INSTALLATION on a UNIX-ALIKE:
  * The PDF manuals (if built) can be compacted by the new target
    make compact-pdf (at the top level or in directory doc/manual).
  * There is now configure support for LLVM clang 15 on Linux, which
    defaults to position-independent (PIE) executables whereas
    gfortran does not.
  * Many small changes to ease compilation (and suppress warnings)
    with LLVM clang 15.
  BUG FIXES:
  * Rscript -e would fail if stdin were closed (Reported by Henrik
    Bengtsson.)
  * qt(*, log.p=TRUE) in outer tails no longer produces NaN in its
    final steps, thus fixing PR#18360.
  * tools::Rd2latex() now escapes hashes and ampersands when writing
    URLs, fixing LaTeX errors with such URLs in \tabular.
  * When isGeneric(f, fdef=*) is used with mismatching names, the
    warning is better understandable; reported (with fix) in PR#18370
    by Gabe Becker.
  * poly(x, n) now works again (and is now documented) when x is a
    "Date" or "POSIXct" object, or of another class while fulfilling
    mode(x) == "numeric".  This also enables poly(x, *, raw=TRUE) for
    such variables.  Reported by Michael Chirico to R-devel.
  * write.table(), write.csv() and write.csv2() restore their
    numerical precision (internal equivalent of digits = 15) after an
    interrupt (PR#18384).
  * One can now read also byte FF from a clipboard connection
    (PR#18385).
  * source("") and source(character()) now give more helpful error
    messages.
  * R CMD check --as-cran set _R_CHECK_TIMINGS_ too late to have the
    intended effect.
  * as.POSIXlt(x) now also works with very large dates x, fixing
    PR#18401 reported by Hannes M"uhleisen.
  * Files can now be extracted even from very large zip archives
    (PR#18390, thanks to Martin Jakt).
  * Non-finite objects of class "POSIXlt" are now correctly coerced
    to classes "Date" and "POSIXct"; following up on the extension to
    format() them correctly.
  * Added methods for is.finite(), is.infinite() and is.nan() for
    "POSIXlt" date-time objects.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1678881600">- CHANGES IN R 4.2.3:
  C-LEVEL FACILITIES:
  * The definition of DL_FUNC in R_ext/Rdynload.h has been changed to
    be fully C-compliant.  This means that functions loaded _via_ for
    example R_GetCCallable need to be cast to an appropriate type if
    they have any arguments.
  * .Machine has a new element sizeof.time_t to identify old systems
    with a 32-bit type and hence a limited range of date-times (and
    limited support for dates millions of years from present).
  PACKAGE INSTALLATION:
  * (Windows) The default C++ standard had accidentally been left at
    C++11 when it was changed to C++14 on Unix.
  BUG FIXES:
  * As "POSIXlt" objects may be "partially filled" and their list
    components meant to be recycled, length() now is the length of
    the longest component.
  * as.POSIXlt.Date() could underflow for dates in the far past (more
    than half a million years BCE).
  * as.Date.POSIXlt(x) would return "1970-01-01" instead of NA in R
    4.2.2, e.g., for
    x &lt;- as.POSIXlt(c("2019-01-30","2001-1-1"))
    x$mon &lt;- c(0L, NA); as.Date(x)
  * R CMD check failed to apply enabled _R_CHECK_SUGGESTS_ONLY_ to
    examples and vignettes (regression in R 4.2.0).
  * R CMD check did not re-build vignettes in separate processes by
    default (regression in R 4.2.0).
  * Running examples from HTML documentation now restores previous
    knitr settings and options (PR#18420).
  * Quartz: fonts are now located using Core Graphics API instead of
    deprecated ATS which is no longer supported in the macOS 13 SDK
    (PR#18426).  This also addresses an issue where the currently
    used font in the Quartz device context was not correctly
    retained.
  * (Windows) Math symbols in text drawing functions are again
    rendered correctly (PR#18440).  This fixes a regression in R
    4.2.1 caused by a fix in PR#18382 which uncovered an issue in
    GraphApp due to which the symbol charset was not used with TT
    Symbol font face.
  * (Windows) Installing a package with a src/Makefile.{win,ucrt}
    file includes ~/.R/Makevars.win64 in the search for user
    makevars, as documented in "R Installation and Administration"
    and done for packages with a src/Makevars.{win,ucrt} file.
  * format(&lt;POSIXlt_w/_unbalanced_sec&gt;, "....%OS&lt;n&gt;") with n &gt; 0 no
    longer accidentally uses the unbalanced seconds, thanks to
    Suharto Anggono's report (including patch) in PR#18448.
  * solve.default(a, b) works around issues with some versions of
    LAPACK when a contains NA or NaN values.
  * When UseMethod() cannot dispatch, it no longer segfaults
    producing the error message in case of a long class(), thanks to
    Joris Vankerschaver's report (including patch) in PR#18447.
  * When example(foo, ..) produces graphics on an interactive device
    it needs to open itself, it now leaves devAskNewPage() unchanged
    even when it was FALSE, thus fixing a 14 years old '&lt;FIXME&gt;'.
  * packageDescription() again catches errors from encoding
    conversions. This also fixes broken packageVersion() in C locale
    on systems where iconv does not support transliteration.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1681128000">- add patch to build with libcurl &gt;= 8</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1682078400">- CHANGES IN R 4.3.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Calling &amp;&amp; or || with LHS or (if evaluated) RHS of length greater
    than one is now always an error, with a report of the form
    'length = 4' in coercion to 'logical(1)'
    Environment variable _R_CHECK_LENGTH_1_LOGIC2_ no longer has any
    effect.
  NEW FEATURES:
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.10.1.  (This caused some platform-dependent
    changes to package check output.)  And then to the sources from
    LAPACK version 3.11.0 (with changes only to double complex
    subroutines).
  * The included LAPACK sources have been updated to include the four
    Fortran 90 routines rather than their Fortran 77 predecessors.
    This may give some different signs in SVDs or
    eigendecompositions..  (This completes the transition to LAPACK
    3.10.x begun in R 4.2.0.)
  * The LAPACK sources have been updated to version 3.11.0.  (No new
    subroutines have been added, so this almost entirely bug fixes:
    Those fixes do affect some computations with NaNs, including R's
    NA.)
  * The parser now signals _classed_ errors, notably in case of the
    pipe operator |&gt;.  The error object and message now give line and
    column numbers, mostly as proposed and provided by Duncan Murdoch
    in PR#18328.
  * toeplitz() is now generalized for asymmetric cases, with a
    toeplitz2() variant.
  * xy.coords() and xyz.coords() and consequently, e.g., plot(x,y,
    log = "y") now signal a _classed_ warning about negative values
    of y (where log(.) is NA).  Such a warning can be specifically
    suppressed or caught otherwise.
  * Regular expression functions now check more thoroughly whether
    their inputs are valid strings (in their encoding, e.g. in
    UTF-8).
  * The performance of grep(), sub(), gsub() and strsplit() has been
    improved, particularly with perl = TRUE and fixed = TRUE.  Use of
    useBytes = TRUE for performance reasons should no longer be
    needed and is discouraged: it may lead to incorrect results.
  * apropos() gains an argument dot_internals which is used by the
    completion (help(rcompgen)) engine to also see base internals
    such as .POSIXct().
  * Support in tools::Rdiff() for comparing uncompressed PDF files is
    further reduced - see its help page.
  * qqplot(x, y, ...) gains conf.level and conf.args arguments for
    computing and plotting a confidence band for the treatment
    function transforming the distribution of x into the distribution
    of y (Switzer, 1976, _Biometrika_). Contributed by Torsten
    Hothorn.
  * Performance of package_dependencies() has been improved for cases
    when the number of dependencies is large.
  * Strings newly created by gsub(), sub() and strsplit(), when any
    of the inputs is marked as "bytes", are also marked as "bytes".
    This reduces the risk of creating invalid strings and accidental
    substitution of bytes deemed invalid.
  * Support for readLines(encoding = "bytes") has been added to allow
    processing special text files byte-by-byte, without creating
    invalid strings.
  * iconv(from = "") now takes into account any declared encoding of
    the input elements and uses it in preference to the native
    encoding.  This reduces the risk of accidental creation of
    invalid strings, particularly when different elements of the
    input have different encoding (including "bytes").
  * Package repositories in getOption("repos") are now initialized
    from the repositories file when utils is loaded (if not already
    set, e.g., in .Rprofile).  (From a report and patch proposal by
    Gabriel Becker in PR#18405.)
  * compactPDF() gets a verbose option.
  * type.convert() and hence read.table() get new option tryLogical =
    TRUE with back compatible default.  When set to false, converts
    "F" or "T" columns to character.
  * Added new unit prefixes "R" and "Q" for abbreviating
    (unrealistically large) sizes beyond 10^{27} in standard = "SI",
    thanks to Henrik Bengtsson's PR#18435.
  * as.data.frame()'s default method now also works fine with atomic
    objects inheriting from classes such as "roman", "octmode" and
    "hexmode", such fulfilling the wish of PR#18421, by Benjamin
    Feakins.
  * The as.data.frame.vector() utility now errors for wrong-length
    row.names.  It warned for almost six years, with "Will be an
    error!".
  * sessionInfo() now also contains La_version() and reports codepage
    and timezone when relevant, in both print() and toLatex() methods
    which also get new option tzone for displaying timezone
    information when locale = FALSE.
  * New function R_compiled_by() reports the C and Fortran compilers
    used to build R, if known.
  * predict(&lt;lm&gt;, newdata = *) no longer unnecessarily creates an
    offset of all 0s.
  * solve() for complex inputs now uses argument tol and by default
    checks for 'computational singularity' (as it long has done for
    numeric inputs).
  * predict(&lt;rank-deficient lm&gt;, newdata=*) now obeys a new argument
    rankdeficient, with new default "warnif", warning only if there
    are non-estimable cases in newdata.  Other options include
    rankdeficient = "NA", predicting NA for non-estimable newdata
    cases.  This addresses PR#15072 by Russ Lenth and is based on his
    original proposal and discussions in PR#16158 also by David Firth
    and Elin Waring.  Still somewhat experimental.
  * Rgui console implementation now works better with the NVDA screen
    reader when the full blinking cursor is selected.  The underlying
    improvements in cursor handling may help also other screen
    readers on Windows.
  * The drop-field control in GraphApp can now be left with the TAB
    key and all controls can be navigated in the reverse order using
    the Shift+TAB key, improving accessibility of the Rgui
    configuration editor.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now fully accurate
    (instead of to "only" minimally five digits).
  * demo(error.catching) now also shows off withWarnings() and
    tryCatchWEMs().
  * As an experimental feature the placeholder _ can now also be used
    in the rhs of a forward pipe |&gt; expression as the first argument
    in an extraction call, such as _$coef. More generally, it can be
    used as the head of a chain of extractions, such as _$coef[[2]].
  * Spaces in the environment variable used to choose the R session's
    temporary directory (TMPDIR, TMP and TEMP are tried in turn) are
    now fatal.  (On Windows the 'short path' version of the path is
    tried and used if that does not contain a space.)
  * all.equal.numeric() gets a new optional switch giveErr to return
    the numeric error as attribute.  Relatedly,
    stopifnot(all.equal&lt;some&gt;(a, b, ..)) is as "smart" now, as
    stopifnot(all.equal(....)) has been already, thus allowing
    customized all.equal&lt;Some&gt;() wrappers.
  * R on Windows is now able to work with path names longer than 260
    characters when these are enabled in the system (requires at
    least Windows 10 version 1607).  Packages should be updated to
    work with long paths as well, instead of assuming PATH_MAX to be
    the maximum length.  Custom front-ends and applications embedding
    R need to update their manifests if they wish to allow this
    feature.  See
    &lt;https://blog.r-project.org/2023/03/07/path-length-limit-on-windows&gt;
    for more information.
  * 'Object not found' and 'Missing argument' errors now give a more
    accurate error context. Patch provided by Lionel Henry in
    PR#18241.
  * The @ operator is now an S3 generic. Based on contributions by
    Tomasz Kalinowski in PR#18482.
  * New generic chooseOpsMethod() provides a mechanism for objects to
    resolve cases where two suitable methods are found for an Ops
    Group Generic. This supports experimenting with alternative
    object systems. Based on contributions by Tomasz Kalinowski in
    PR#18484.
  * inherits(x, what) now accepts values other than a simple
    character vector for argument what. A new generic, nameOfClass(),
    is called to resolve the class name from what. This supports
    experimenting with alternative object systems. Based on
    contributions by Tomasz Kalinowski in PR#18485.
  * Detection of BLAS/LAPACK in use (sessionInfo()) with FlexiBLAS
    now reports the current backend.
  * The "data.frame" method for subset() now warns about extraneous
    arguments, typically catching the use of = instead of == in the
    subset expression.
  * Calling a:b when numeric a or b is longer than one may now be
    made into an error by setting environment variable
    _R_CHECK_LENGTH_COLON_ to a true value, along the proposal in
    PR#18419 by Henrik Bengtsson.
  * density(x, weights = *) now warns if automatic bandwidth
    selection happens without using weights; new optional warnWbw may
    suppress the warning.  Prompted by Christoph Dalitz' PR#18490 and
    its discussants.
  * rm(list = *) is faster and more readable thanks to Kevin Ushey's
    PR#18492.
  * The plot.lm() function no longer produces a normal Q-Q plot for
    GLMs. Instead it plots a half-normal Q-Q plot of the absolute
    value of the standardized deviance residuals.
  * The print() method for class "summary.glm" no longer shows
    summary statistics for the deviance residuals by default.  Its
    optional argument show.residuals can be used to show them if
    required.
  * The tapply() function now accepts a data frame as its X argument,
    and allows INDEX to be a formula in that case. by.data.frame()
    similarly allows INDICES to be a formula.
  * The performance of df[j] &lt;- value (including for missing j) and
    write.table(df) has been improved for data frames df with a large
    number of columns.  (Thanks to Gabriel Becker's PR#18500,
    PR#18503 and discussants, prompted by a report from Toby Dylan
    Hocking on the R-devel mailing list.)
  * The matrix multiply operator %*% is now an S3 generic, belonging
    to new group generic matrixOps.  From Tomasz Kalinowski's
    contribution in PR#18483.
  * New function array2DF() to convert arrays to data frames,
    particularly useful for the list arrays created by tapply().
  DATES and TIMES:
  * On platforms where (non-UTC) datetimes before 1902 (or before
    1900 as with system functions on recent macOS) are guessed by
    extrapolating time zones from 1902-2037, there is a warning at
    the first use of extrapolation in a session.  (As all time zones
    post 2037 are extrapolation, we do not warn on those.)
  * (Platforms using --with-internal-tzone, including Windows and by
    default macOS). How years are printed in dates or date-times can
    be controlled by environment variable R_PAD_YEARS_BY_ZERO.  The
    default remains to pad to 4 digits by zeroes, but setting value
    no gives no padding (as used by default by glibc).
  * strftime() tries harder to determine the offset for the "%z"
    format, and succeeds on the mainstream R platforms.
  * strftime() has a limit of 2048 bytes on the string produced -
    attempting to exceed this is an error.  (Previously it silently
    truncated at 255 bytes.)
  * sessionInfo() records (and by default prints) the system time
    zone as part of the locale information.  Also, the source
    (system/internal) of the date-time conversion and printing
    functions.
  * Objects of class "POSIXlt" created in this version of R always
    have 11 components: component zone is always set, and component
    gmtoff is set for times in UTC and usually set on the (almost
    all) platforms which have C-level support, otherwise is NA.
  * There are comprehensive validity checks on the structure of
    objects of class "POSIXlt" when converting (including formatting
    and printing).  (This avoids mis-conversions of hand-crafted
    objects.)
  * There is some support for using the native date-time routines on
    macOS: this is only viable on recent versions (e.g. 12.6 and 13)
    and does get wrong some historical changes (before 1900, during
    WWII).  Use of --with-internal-tzone remains the default.
  * as.POSIXct(&lt;numeric&gt;) and as.POSIXlt(.) (without specifying
    origin) now work.  So does as.Date(&lt;numeric&gt;).
  * as.Date.POSIXct(., tz) now treats several tz values, notably
    "GMT" as equivalent to "UTC", proposed and improved by Michael
    Chirico and Joshua Ulrich in PR#17674.
  * Experimental balancePOSIXlt() utility allows using "ragged" and
    or out-of-range "POSIXlt" objects more correctly, e.g., in
    subsetting and subassignments.  Such objects are now documented.
    More experimentally, a "POSIXlt" object may have an attribute
    "balanced" indicating if it is known to be filled or fully
    balanced.
  * Functions axis.Date() and axis.POSIXct() are rewritten to gain
    better default tick locations and better default formats by using
    prettyDate(). Thanks to Swetlana Herbrandt.
  * The mapping of Windows' names for time zones to IANA's 'Olson'
    names has been updated.  When ICU is available (it is by
    default), it is used to get a mapping for the current region set
    in Windows.  This can be overridden by setting environment
    variable TZ to the desired Olson name - see OlsonNames() for
    those currently available.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 16
    and so packages that provide graphics devices should be
    reinstalled.
  * The grDevices and grid packages have new functions for rendering
    typeset glyphs, primarily: grDevices::glyphInfo() and
    grid::grid.glyph().
    Rendering of typeset glyphs is only supported so far on the
    Cairo-based graphics devices and on the pdf() and quartz()
    devices.
  * The defined behaviour for "clear" and "source" compositing
    operators (via grid::grid.group()) has been changed (to align
    better with simple interpretation of original Porter-Duff
    definitions).
  * Support for gradients, patterns, clipping paths, masks, groups,
    compositing operators, and affine transformations has been added
    to the quartz() device.
  INSTALLATION on a UNIX-ALIKE:
  * A system installation of generic LAPACK 3.10.0 or later will be
    preferred to the version in the R sources.
    configure option --with-lapack=no (equivalently --without-lapack)
    forces compilation of the internal LAPACK sources.
    If --with-lapack is not specified, a system liblapack is looked
    for and used if it reports version 3.10.0 or later and does not
    contain BLAS routines.
    Packages using LAPACK will need to be reinstalled if this changes
    to using an external library.
  * On aarch64 Linux platforms using GCC, configure now defaults to
  - fPIC (instead of -fpic), as desired in PR#18326.
  * configure now checks conversion of datetimes between POSIXlt and
    POSIXct around year 2020.  Failure (which has been seen on
    platforms missing tzdata) is fatal.
  * If configure option --with-valgrind-instrumentation is given
    value 1 or 2, option --with-system-valgrind-headers is now the
    default and ignored (with a warning).  It is highly recommended
    that the system headers are installed alongside valgrind: they
    are part of its packaging on some Linux distributions and
    packaged separately (e.g. in the valgrind-devel RPM) on others.
    configure will give a warning if they are not found.
    The system headers will be required in a future release of R to
    build with valgrind instrumentation.
  * libcurl 8.x is now accepted by configure: despite a change in
    major version number it changes neither API nor ABI.
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools43, an update of the Rtools42 toolchain.  It is
    based on gcc 12 and newer versions of MinGW-W64, binutils and
    libraries.  At this time R-devel can still be built using
    Rtools42 without changes, but when R-devel is installed via the
    installer, it will by default look for Rtools43.
  * Old make targets rsync-extsoft and 32-bit ones that are no longer
    needed have been removed.
  * Default builds (including for packages) no longer select C99.
    Thus the C standard used is the default for the compiler, which
    for the toolchain in Rtools43 is C17.  (This is consistent with
    Unix builds.)
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++17 where
    available (which it is on all currently checked platforms): if
    not C++14 or C++11 is used if available otherwise C++ is not
    supported.
  * USE_FC_LEN_T is the default: this uses the correct
    (compiler-dependent) prototypes for Fortran BLAS/LAPACK routines
    called from C/C++, and requires adjustment of many such calls -
    see 'Writing R Extensions' SS6.6.1.
  * There is initial support for C++23 as several compilers are now
    supporting -std=c++23 or -std=c++2b or similar.  As for C++20,
    there no additional configure checks for C++23 features beyond a
    check that the compiler reports a __cplusplus value greater than
    that in the C++20 standard.  C++ feature tests should be used.
  * There is support for a package to indicate the version of the C
    standard which should be used to compile it, and for the
    installing user to specify this.  In most cases R defaults to the
    C compiler's default standard which is C17 (a `bug-fix' of C11) -
    earlier versions of R or compilers may have defaulted to C99.
    Current options are:
    USE_C17 Use a standard that is at most C17.  The intention is to
    allow legacy packages to still be installed when later C
    standards become the default, including packages using new
    keywords as identifiers or with K&amp;R-style function
    declarations.  This will use C17 if available, falling back
    to C11.
    USE_C90 Use the C90 (aka C89) standard.  (As that standard did
    not require compilers to identify that version, all we can
    verify is that the compiler does not claim to be using a
    later standard.  It may accept C99 features - for example
    clang accepts // to make comments.)
    USE_C99 Use the C99 standard. This should be rarely needed - it
    avoids the few new features of C11/C17 which can be useful if
    a package assumes them if C17 is specified and they are not
    implemented.
    USE_C23 Use C23 (or in future, later).  Compiler/library support
    for C23 is still being implemented, but LLVM clang from
    15.0.0 and the upcoming GCC 13 have quite extensive support.
    These can be specified as part of the SystemRequirements field in
    the package's DESCRIPTION file or _via_ options --use-C17 and so
    on of R CMD INSTALL and R CMD SHLIB.
    For further details see "Writing R Extensions" SS1.2.5.
  * (Windows) A src/Makefile.ucrt or src/Makefile.win file is now
    included after R_HOME/etcR_ARCH/Makeconf and so no longer needs
    to include that file itself.  Installation of a package with such
    a file now uses a site Makevars file in the same way as a package
    with a src/Makevars.win file would.
  * configure is now passed crucial variables such as CC and CFLAGS
    in its environment, as many packages were not setting them (as
    documented in 'Writing R Extensions' SS1.2).
    This has most effect where configure is used to compile parts of
    the package - most often by cmake or libtool which obfuscate the
    actual compile commands used.
    Also used for configure.win and configure.ucrt on Windows.
  FORTRAN FLAGS:
  * The flag -fno-optimize-sibling-calls is no longer forced for
    gfortran 7 and later.  It should no longer be needed now using
    'hidden' character-length arguments when calling BLAS/LAPACK
    routines from C/C++ is the default even for packages.  (Unless
    perhaps packages call Fortran code from C/C++ without using R's
    headers and without allowing for these arguments.)
  C-LEVEL FACILITIES:
  * The deprecated S-compatibility macros DOUBLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * The deprecated legacy typedefs of Sint and Sfloat in header R.h
    are no longer defined, and that header no longer includes header
    limits.h from C nor climits from C++.
  * New macro CAD5R() is provided in Rinternals.h and used in a few
    places in the R sources.
  * ALTREP now supports VECSXP vectors. Contributed by Gabor Csardi
    in PR#17620.
  * The Rcomplex definition (in header R_ext/Complex.h) has been
    extended to prevent possible mis-compilation when interfacing
    with Fortran (PR#18430).  The new definition causes compiler
    warnings with static initializers such as {1, 2}, which can be
    changed to {.r=1, .i=2}.
    Using the new definition from C++ depends on compiler extensions
    supporting C features that have not been incorporated into the
    C++ standards but are available in g++ and clang++: this may
    result in C++ compiler warnings but these have been worked around
    for recent versions of common compilers (GCC, Apple/LLVM clang,
    Intel).
    It is intended to change the inclusion of header R_ext/Complex.h
    by other R headers, so C/C++ code files which make use of
    Rcomplex should include that header explicitly.
  UTILITIES:
  * R CMD check does more checking of package .Rd files, warning
    about invalid email addresses and (some) invalid URIs and noting
    empty \item labels in description lists.
  * R CMD check now also reports problems when reading package news
    in md (file NEWS.md) and (optionally) plain text (file NEWS)
    formats.
  * _R_CHECK_TIMINGS_ defaults to a value from the environment even
    for R CMD check --as-cran; this allows for exceptionally fast or
    slow platforms.
    It now applies to checking PDF and HTML versions of the manuals,
    and 'checking CRAN incoming feasibility'.
  * R CMD check can optionally (but included in --as-cran) check
    whether HTML math rendering _via_ KaTeX works for the package .Rd
    files.
  * Non-interactive debugger invocations can be trapped by setting
    the environment variable _R_CHECK_BROWSER_NONINTERACTIVE_ to a
    true value.  This is enabled by R CMD check --as-cran to detect
    the use of leftover browser() statements in the package.
  * The use of sprintf and vsprintf from C/C++ has been deprecated in
    macOS 13 and is a known security risk.  R CMD check now reports
    (on all platforms) if their use is found in compiled code:
    replace by snprintf or vsnprintf respectively. [*NB:* whether
    such calls get compiled into the package is platform-dependent.]
  * Where recorded at installation, R CMD check reports the C and
    Fortran compilers used to build R.
    It reports the OS in use (if known, as given by osVersion) as
    well as that R was built for.
    It notes if a C++ standard was specified which is older than the
    current default: many packages have used C++11 to mean 'not
    C++98' - as C++11 is the minimum supported since R 4.0.0, that
    specification can probably be removed.
  * R CMD INSTALL reports the compilers (and on macOS, the SDK) used,
    and this is copied to the output of R CMD check.
    Where a C++ standard is specified, it is reported.
  * R CMD check's 'checking compilation flags in Makevars' has been
    relaxed to accept the use of flags such as -std=f2008 in
    PKG_FFLAGS.
  * tools::buildVignettes() has a new argument skip, which is used by
    R CMD check to skip (and note) vignettes with unavailable
    \VignetteDepends (PR#18318).
  * New generic .AtNames() added to enable class-specific completions
    after @. The formerly internal function findMatches() is now
    exported, mainly for use in methods for .DollarNames() and
    .AtNames().
  DEPRECATED AND DEFUNCT:
  * default.stringsAsFactors() is defunct.
  * Calling as.data.frame.&lt;class&gt;() directly (for 12 atomic classes)
    is going to be formally deprecated, currently activated by
    setting the environment variable
    _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ to non-empty, which also
    happens in R CMD check --as-cran.
  BUG FIXES:
  * Hashed environments with sizes less than 5 can now grow.
    (Reported to R-devel by Duncan Garmonsway.)
  * as.character(&lt;Rd&gt;, deparse = TRUE) failed to re-escape curly
    braces in LaTeX-like text.  (Reported by Hadley Wickham in
    PR#18324.)
  * library() now passes its lib.loc argument when requiring Depends
    packages; reported (with fix) in PR#18331 by Mikael Jagan.
  * R CMD Stangle: improved message about 'Output' files.
  * head(x, n) and tail(x, n) now signal an error if n is not
    numeric, instead of incidentally "working" sometimes returning
    all of x.  Reported and discussed by Colin Fay, in PR#18357.
  * The "lm" method for summary() now gives the correct F-statistic
    when the model contains an offset.  Reported in PR#18008.
  * C() and `contrasts&lt;-`() now preserve factor level names when
    given a function object (as opposed a function name which did
    preserve names). Reported in PR#17616.
  * c(a = 1, 2)[[]] no longer matches 2 but rather signals a
    _classed_ error.  Reported and analysed by Davis Vaughan in
    PR#18367, a duplicate of PR#18004, by Jan Meis et al.  For
    consistency, NULL[[]] is also erroneous now.  x[[]] &lt;- v gives an
    error of the same class "MissingSubscriptError".
  * The relist() function of utils now supports NULL elements in the
    skeleton (PR#15854).
  * ordered(levels = *) (missing x) now works analogously to factor(,
    ordered=TRUE); reported (with fix) by Achim Zeileis in PR#18389.
  * User-defined Rd macro definitions can now span multiple lines,
    thanks to a patch from Duncan Murdoch. Previously, the Rd parser
    silently ignored everything after the first line.
  * Plain-text help (tools::Rd2txt()) now preserves an initial blank
    line for text following description list items.
  * tools::Rd2HTML() and tools::Rd2latex() no longer split \arguments
    and \value lists at Rd comments.
  * tools::Rd2latex() now correctly handles optional text outside
    \items of argument lists as well as bracketed text at the
    beginning of sections, e.g., \value{[NULL]}.
  * as.character(&lt;POSIXt&gt;) now behaves more in line with the methods
    for atomic vectors such as numbers, and is no longer influenced
    by options().  Ditto for as.character(&lt;Date&gt;).  The
    as.character() method gets arguments digits and OutDec with
    defaults _not_ depending on options().  Use of as.character(*,
    format = .) now warns.
  * Similarly, the as.character.hexmode() and *.octmode() methods
    also behave as good citizen methods and back compatibility option
    keepStr = TRUE.
  * The as.POSIXlt(&lt;POSIXlt&gt;) and as.POSIXct(&lt;POSIXct&gt;) default
    methods now do obey their tz argument, also in this case.
  * as.POSIXlt(&lt;Date&gt;) now does apply a tz (time zone) argument, as
    does as.POSIXct(); partly suggested by Roland Fuss on the R-devel
    mailing list.
  * as.Date.POSIXlt(x) now also works when the list components are of
    unequal length, aka "partially filled" or "ragged".
  * expand.model.frame() looked up variables in the wrong environment
    when applied to models fitted without data.  Reported in
    PR#18414.
  * time() now (also) uses the ts.eps = getOption("ts.eps") argument
    and thus by default rounds values very close to the start (or
    end) of a year.  Based on a proposal by Andre"i V. Kostyrka on
    R-help.
  * Printing of a factanal() result with just one factor and sort =
    TRUE now works regularly, fixing PR#17863 by Timothy Bates,
    thanks to the 'R Contributors' working group.
  * Printing 0-length objects of class "factor", "roman", "hexmode",
    "octmode", "person", "bibentry", or "citation" now prints
    something better, one of which fixes PR#18422, reported by
    Benjamin Feakins.
  * Sys.timezone() queries timedatectl only if systemd is loaded;
    addressing a report by Jan Gorecki in PR#17421.
  * The formula method of cor.test() had scoping problems when
    environment(formula) was not the calling environment; reported
    with a patch proposal by Mao Kobayashi in PR#18439.
  * attach() of an environment with active bindings now preserves the
    active bindings.  Reported by Kevin Ushey in PR#18425.
  * BLAS detection now works also with system-provided libraries not
    available as regular files.  This fixes detection of the
    Accelerate framework on macOS since Big Sur.  Reported by David
    Novgorodsky.
  * download.file() gives a helpful error message in case of an
    invalid download.file.method option, thanks to Colin Fay's report
    in PR#18455.
  * Sporadic crashes of Rterm when using completion have been fixed.
  * Rprof() is now more reliable.  A livelock in thread
    initialization with too short sampling interval has been fixed on
    macOS.  A deadlock in using the C runtime has been fixed on
    Windows.  A potential deadlock has been prevented on Unix.
  * Cursor placement in Rgui now works even after a fixed-width font
    is selected.
  * Mandatory options (options()) are now set on startup so that
    saving and restoring them always works (PR#18372).
  * Package installation, R CMD INSTALL or install.packages(*), now
    parses each of the &lt;pkg&gt;/R/*.R files individually instead of
    first concatenating and then parse()ing the large resulting file.
    This allows parser or syntax errors to be diagnosed with correct
    file names and line numbers, thanks to Simon Dedman's report and
    Bill Dunlap's patch in PR#17859.
    This _does_ require syntactically self contained R source files
    now, fixing another inadvertent bug.
  * predict.lm(&lt;model with offset&gt;) now finds the offset in the
    correct environment, thanks to Andr'e Gillibert's report and patch
    in PR#18456.
  * getInitial(&lt;formula&gt;) now finds the selfStart model in the
    correct environment.  (Reported by Ivan Krylov in PR#18368.)
  * Fix for possible segfault when using recently-added graphics
    features, such as gradients, clipping paths, masks, and groups
    with pdf(file=NULL).
  * class(m) &lt;- class(m) no longer changes a matrix m by adding a
    class _attribute_.
  * packageDate(pkg) now only warns once if there is no pkg.
  * When ts() creates a multivariate time series, "mts", it also
    inherits from "array" now, and is.mts() is documented _and_
    stricter.
  * Rd2txt() now preserves line breaks of \verb Rd content and from
    duplicated \cr.  The former also fixes the rendering of verbatim
    output from Rd \Sexpr in plain-text help.
  * uniroot(f, interval) should no longer wrongly converge _outside_
    the interval in some cases where abs(f(x)) == Inf for an x at the
    interval boundary, thanks to posts by Ben Bolker and Serguei
    Sokol on R-devel.
  * Vectorized alpha handling in palette functions such as in gray(),
    rainbow(), or hcl.colors() works correctly now, thanks to Achim
    Zeileis' report and patch in PR#18476.
  * Formatting and print()ing of bibentry objects has dropped the
    deprecated citation.bibtex.max argument, such that the bibtex
    argument's default for print.bibentry() depends directly on the
    citation.bibtex.max option, whereas in format.bibentry() the
    option no longer applies.
  * Attempting to use a character string naming a foreign function
    entry point in a foreign function call in a package will now
    signal an error if the packages has called R_forceSymbols to
    specify that symbols must be used.
  * An error in table() could permanently set options(warn=2)
    promoting all subsequent warnings to errors.
  * The sigma() function gave misleading results for binary GLMs.  A
    new method for objects of class "glm" returns the square root of
    the estimate of the dispersion parameter using the same
    calculation as summary.glm().
  * bs() and ns() in the (typical) case of automatic knot
    construction, when some of the supposedly inner knots coincide
    with boundary knots, now moves them inside (with a warning),
    building on PR#18442 by Ben Bolker.
  * R CMD on Windows now skips the site profile with --no-site-file
    and --vanilla even when R_PROFILE is set (PR#18512, from Kevin
    Ushey).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1686916800">- CHANGES IN R 4.3.1:
  C-LEVEL FACILITIES:
  * The C-level API version of R's integrate(), Rdqags() in Applic.h,
    now returns the correct number of integrand evaluations neval,
    fixing PR#18515 reported and diagnosed by Stephen Wade.
  * The C prototypes for LAPACK calls dspgv and dtptrs in
    R_exts/Lapack.h had one too many and one too few character length
    arguments - but this has not caused any known issues. To get the
    corrected prototypes, include
    [#]include &lt;Rconfig.h&gt; // for PR18534fixed
    [#]ifdef PR18534fixed
    [#] define usePR18534fix 1
    [#]endif
    [#]include &lt;R_exts/Lapack.h&gt;
    in your C/C++ code (PR#18534).
  INSTALLATION:
  * Many of the checks of esoteric Internet operations and those
    using unreliable external sites have been moved to a new target
    that is not run by default and primarily intended for the core
    developers.  To run them use
    cd tests; make test-Internet-dev
  BUG FIXES:
  * .S3methods(), typically called from methods(), again marks
    methods from package base as visible.
    Also, the visibility of non-base methods is again determined by
    the method's presence in search().
  * tools::Rdiff() is now more robust against invalid strings, fixing
    installation tests on Windows without Rtools installed
    (PR#18530).
  * Fix (new) bug in hcl.colors(2, *), by Achim Zeileis (PR#18523).
  * head(., &lt;illegal&gt;) and tail(..) now produce more useful "Error in
    ...." error messages, fixing PR#18362.
  * Package code syntax on Windows is checked in UTF-8 when UTF-8 is
    the native encoding.
  * na.contiguous(x) now also returns the first run, when it is at
    the beginning and there is a later one of the same length;
    reported to R-devel, including a fix, by Georgi Boshnakov.
    Further, by default, it modifies only an existing attr(*,"tsp")
    but otherwise no longer sets one.
  * chol(&lt;not pos.def&gt;, pivot = &lt;T|F&gt;) now gives a correct error or
    warning message (depending on pivot), thanks to Mikael Jagan's
    (PR#18541).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1699012800">- CHANGES IN R 4.3.2:
  NEW FEATURES:
  * The default initialization of the "repos" option from the
    repositories file at startup can be skipped by setting
    environment variable R_REPOSITORIES to NULL such that
    getOption("repos") is empty if not set elsewhere.
  * qr.X() is now an implicit S4 generic in methods.
  * iconv(to = "ASCII//TRANSLIT") is emulated using substitution on
    platforms which do not support it (notably Alpine Linux).  This
    should give a human-readable conversion in ASCII on all platforms
    (rather than NA_character_).
  * trans3d() gains options continuous and verbose addressing the
    problem of possible "wrap around" when projecting too long
    curves, as reported by Achim Zeileis in PR#18537.
  * tools::showNonASCII() has been rewritten to work better on macOS
    14 (which has a changed implementation of iconv()).
  * tiff(type = "quartz") (the default on macOS) now warns if
    compression is specified: it continues to be ignored.
  INSTALLATION on a UNIX-ALIKE:
  * There is some support for building with Intel's LLVM-based
    compilers on x86_64 Linux, such as (C) icx, (C++) ipcx and
    (Fortran) ifx from oneAPI 2023.x.y.
  * There is support for using LLVM's flang-new as the Fortran
    compiler from LLVM 16.0.x (preferably 17.0.0 or later).
  UTILITIES:
  * R CMD check reports the use of the Fortran 90 random number
    generator RANDOM_NUMBER() and the subroutines to initialize it.
    'Writing R Extensions' has example code to use R's RNGs from
    Fortran.
  BUG FIXES:
  * substr(x, n, L) &lt;- cc now works (more) correctly for multibyte
    UTF-8 strings x when L &gt; nchar(x), thanks to a report and patch
    by 'Architect 95'.
  * contrib.url(character()) now returns 0-length character() as
    documented, which also avoids spurious warnings from
    available.packages() et al. in the edge case of an empty vector
    of repository URLs.
  * readChar(., 4e8) no longer fails, thanks to Kodi Arfer's report
    (PR#18557).
  * lapply(&lt;list&gt;, as.data.frame) no longer warns falsely for some
    base vector components.
  * Communication between parent and child processes in the multicore
    part of parallel could fail on platforms that do not support an
    arbitrarily large payload in system functions read()/write() on
    pipes (seen on macOS where a restriction to INT_MAX bytes is
    documented, without doing a partial read unlike Linux). The
    payload is now split into 1Gb chunks to avoid that problem.
    (PR#18571)
  * qqplot(x,y, conf.level=.) gives better confidence bounds when
    length(x) != length(y), thanks to Alexander Ploner's report and
    patch proposal (PR#18557).
  * norm(&lt;0-length&gt;, "2") now gives zero instead of an error, as all
    the other norm types, thanks to Mikael Jagan's PR#18542.
  * Build-stage Rd macros \packageAuthor and \packageMaintainer now
    process Authors@R, fixing NA results when the package DESCRIPTION
    omits Author and Maintainer fields.
  * Formatting and printing complex numbers could give things like
    0.1683-0i because of rounding error: -0i is now replaced by +0i.
  * postscript() refused to accept a title comment containing the
    letter "W" (PR#18599).
  * isoreg(c(1,Inf)) signals an error instead of segfaulting, fixing
    PR#18603.
  * tiff(type = "Xlib") was only outputting the last page of
    multi-page plots.
  * tools::latexToUtf8() again knows about \~{n} and other letters
    with tilde, fixing a regression in R 4.3.0, and about \^{i} as an
    alternative to \^{\i} (similarly with other accents).
    Furthermore, LaTeX codes for accented I letters are now correctly
    converted, also fixing related mistakes in
    tools::encoded_text_to_latex().
  * tar(*, tar = "internal") no longer creates out-of-spec tar files
    in the very rare case of user or group names longer than 32
    bytes, fixing PR#17871 with thanks to Ivan Krylov.
  * When using the "internal" timezone datetime code, adding a
    fraction of a second no longer adds one second, fixing PR#16856
    from a patch by Ivan Krylov.
  * tools::checkRd() no longer produces spurious notes about
    "unnecessary braces" from multi-line Rd results of \Sexpr macros.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1709208000">- CHANGES IN R 4.3.3:
  NEW FEATURES:
  * iconv() now fixes up variant encoding names such as "utf8"
    case-insensitively.
  DEPRECATED AND DEFUNCT:
  * The legacy encoding = "MacRoman" is deprecated in pdf() and
    postscript(): support was incomplete in earlier versions of R.
  BUG FIXES:
  * Arguments are now properly forwarded to methods on S4 generics
    with ... in the middle of their formal arguments. This was broken
    for the case when a method introduced an argument but did not
    include ... in its own formals. Thanks to Herv'e Pag`es for the
    report PR#18538.
  * Some invalid file arguments to pictex(), postscript() and xfig()
    opened a file called NA rather than throw an error.  These
    included postscript(NULL) (which some people expected to work
    like pdf(NULL)).
  * Passing filename = NA to svg(), cairo_pdf(), cairo_ps() or the
    Cairo-based bitmap devices opened a file called NA: it now throws
    an error.
  * quartz(file = NA) opened a file called NA, including when used as
    a Quartz-based bitmap device.  It now gives an error.
  * rank(&lt;long vector&gt;) now works, fixing PR#18617, thanks to Ilia
    Kats.
  * seq.int() did not adequately check its length.out argument.
  * match(&lt;POSIXct&gt;, .) is correct again for differing time zones,
    ditto for "POSIXlt", fixing PR#18618 reported by Bastian Klein.
  * drop.terms(*, dropx = &lt;0-length&gt;) now works, fixing PR#18563 as
    proposed by Mikael Jagan.
  * drop.terms(*) keeps + offset(.) terms when it should, PR#18565,
    and drop.terms() no longer makes up a response, PR#18566, fixing
    both bugs thanks to Mikael Jagan.
  * getS3method("t", "test") no longer finds the t.test() function,
    fixing PR#18627.
  * pdf() and postscript() support for the documented Adobe encodings
    "Greek" and "Cyrilllic" was missing (although the corresponding
    Windows' codepages could be used).
  * Computations of glyph metric information for pdf() and
    postscript() did not take into account that transliteration could
    replace one character by two or more (only seen on macOS 14) and
    typically warned that the information was not known.
  * rank(x) no longer overflows during integer addition, when
    computing rank average for largish but not-yet long vector x,
    fixing PR#18630, thanks to Ilia Kats.
  * list.files() on Windows now returns also files with names longer
    that 260 bytes (the Windows limit is 260 characters).
    Previously, some file names particularly with 'East Asian'
    characters were omitted.
  * cov2cor(&lt;0 x 0&gt;) now works, fixing PR#18423 thanks to Mikael
    Jagan and Elin Waring.
  * cov2cor(&lt;negative diagonal&gt;) and similar now give one warning
    instead of two, with better wording, fixing PR#18424 thanks to
    Mikael Jagan.
  * tools:: startDynamicHelp() now ensures port is in proper range,
    fixing PR#18645.
  * pbeta(x, a,b) is correct now for x=0 or 1 in the boundary cases
    where a or b or both are 0, fixing PR#18672 thanks to Michael
    Fay.
  * pmatch(x, table) for large table, also called for data frame row
    selection, dfrm[nm, ], is now interruptible, fixing PR#18656.
  * predict(&lt;rank-deficient lm&gt;, newdata=*) fix computing of nbasis,
    see Russ Lenth's comment 29 in PR#16158.
  * Added a work-around for a bug in macOS 14.3.1 and higher which
    prevents R plots in the Quartz Cocoa device from updating on
    screen.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1713960000">- CHANGES IN R 4.4.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Startup banners, R --version, sessionInfo() and R CMD check no
    longer report (64-bit) as part of the platform as this is almost
    universal - the increasingly rare 32-bit platforms will still
    report (32-bit).
    On Windows, ditto for window titles.
  * is.atomic(NULL) now returns FALSE, as NULL is not an atomic
    vector.  Strict back-compatibility would replace is.atomic(foo)
    by (is.null(foo) || is.atomic(foo)) but should happen only
    sparingly.
  NEW FEATURES:
  * The confint() methods for "glm" and "nls" objects have been
    copied to the stats package.  Previously, they were stubs which
    called versions in package MASS. The MASS namespace is no longer
    loaded if you invoke (say) confint(glmfit).  Further, the "glm"
    method for profile() and the plot() and pairs() methods for class
    "profile" have been copied from MASS to stats.  (profile.nls()
    and plot.profile.nls() were already in stats.)
  * The confint() and profile methods for "glm" objects have gained a
    possibility to do profiling based on the Rao Score statistic in
    addition to the default Likelihood Ratio. This is controlled by a
    new test = argument.
  * The pairs() method for "profile" objects has been extended with a
    which = argument to allow plotting only a subset of the
    parameters.
  * The "glm" method for anova() computes test statistics and
    p-values by default, using a chi-squared test or an F test
    depending on whether the dispersion is fixed or free.  Test
    statistics can be suppressed by giving argument test a false
    logical value.
  * In setRepositories() the repositories can be set using their
    names via name = instead of index ind =.
  * methods() and .S3methods() gain a all.names option for the (rare)
    case where functions starting with a . should be included.
  * Serializations can now be interrupted (e.g., by Ctrl-C on a
    Unix-alike) if they take too long, e.g., from save.image(),
    thanks to suggestions by Ivan Krylov and others on R-devel.
  * New startup option --max-connections to set the maximum number of
    simultaneous connections for the session.  Defaults to 128 as
    before: allowed values up to 4096 (but resource limits may in
    practice restrict to smaller values).
  * R on Windows (since Windows 10 2004) now uses the new Segment
    Heap allocator. This may improve performance of some
    memory-intensive applications.
  * When R packages are built, typically by R CMD build &lt;pkg&gt;, the
    new --user=&lt;build_user&gt; option overrides the (internally
    determined) user name, currently Sys.info()["user"] or LOGNAME.
    This is a (modified) fulfillment of Will Landau's suggestion in
    PR#17530.
  * tools::testInstalledBasic() gets new optional arguments outDir
    and testSrcdir, e.g., allowing to use it in a &lt;builddir&gt; !=
    &lt;srcdir&gt; setup, and in standard "binary" Windows installation
  * if* a source tests/ folder is present.
  * range(&lt;DT_with_Inf&gt;, finite = TRUE) now work for objects of class
    "Date", "POSIXct", and "POSIXlt" with infinite entries,
    analogously to range.default(), as proposed by Davis Vaughan on
    R-devel.  Other range()-methods can make use of new function
    .rangeNum().
  * New .internalGenerics object complementing .S3PrimitiveGenerics,
    for documentation and low-level book-keeping.
  * grid() now invisibly returns the x- and y- coordinates at which
    the grid-lines were drawn.
  * norm(., type) now also works for complex matrices.
  * kappa(., exact = TRUE, norm = *) now works for all norms and also
    for complex matrices.  In symmetric / triangular cases, the new
    argument uplo = "U" | "L" allows the upper or lower triangular
    part to be specified.
  * memDecompress(type = "unknown") recognizes compression in the
    default 'zlib' format as used by memCompress(type = "gzip").
  * memCompress() and memDecompress() will use the libdeflate library
    (&lt;https://github.com/ebiggers/libdeflate&gt;) if installed.  This
    uses the same type of compression for type = "gzip" but is 1.5-2x
    faster than the system libz library on some common platforms: the
    speed-up may depend on the library version.
  * diff() for objects of class "Date", "POSIXct", and "POSIXlt"
    accepts a units argument passed via ....
  * Dynamic help now does a much better job of rendering package
    DESCRIPTION metadata.
  * Rprof() gains an event argument and support for elapsed (real)
    time profiling on Unix (PR#18076).
  * filled.contour() gains a key.border argument.
  * tools::update_pkg_po() gets arguments pot_make and mo_make for
    _not_ re-making the corresponding files, and additionally a
    verbose argument.
  * Hexadecimal string colour specifications are now accepted in
    short form, so, for example, we can use "#123", which is
    equivalent to "#112233".
    Thanks to MikeFC for the original idea and Ella Kaye, Malcolm
    Barrett, George Stagg, and Hanne Oberman for the patch.
  * Plain-text help shows \var markup by angle brackets.
  * The new experimental primitive function declare() is intended to
    eventually allow information about R code to be communicated to
    the interpreter, compiler, and code analysis tools. The syntax
    for declarations is still being developed.
  * Functions psmirnov(), qsmirnov() and rsmirnov() in package stats
    have had argument two.sided renamed to alternative, to take into
    account that the permutation distributions of the one-sided
    statistics can be different in the case of ties.  Consequence of
    PR#18582.
  * sort() is now an implicit S4 generic in methods.
  * Formatting and printing, format(z), print(z), of complex vectors
    z no longer zap relatively small real or imaginary parts to zero,
    fixing PR#16752.  This is an API change, as it was documented
    previously to round real and imaginary parts together on purpose,
    producing nicer looking output.  As mentioned, e.g. in the PR,
    this change is compatible with many other "R-like" programming
    environments.
    We have simplified the internal code and now basically format the
    real and imaginary parts independently of each other.
  * New experimental functions Tailcall() and Exec() to support
    writing stack-space-efficient recursive functions.
  * Where characters are attempted to be plotted by pdf(),
    postscript() and xfig() which are not in the selected 8-bit
    character set (most often Latin-1) and the R session is using a
    UTF-8 locale, the warning messages will show the UTF-8 character
    rather than its bytes and one dot will be substituted per
    character rather than per byte.  (Platforms whose iconv() does
    transliteration silently plot the transliteration.)
    In a UTF-8 locale some transliterations are now done with a
    warning (e.g., dashes and Unicode minus to hyphen, ligatures are
    expanded, permille (‰) is replaced by o/oo), although the OS may
    have got there first.  These are warnings as they will continue
    to be replaced by dots in earlier versions of R.
  * The matrix multiplication functions crossprod() and tcrossprod()
    are now also primitive and S3 generic, as %*% had become in R
    4.3.0.
  * source() and example() have a new optional argument catch.aborts
    which allows continued evaluation of the R code after an error.
  * The non-Quartz tiff() devices allow additional types of
    compression if supported by the platform's libtiff library.
  * The list of base and recommended package names is now provided by
    tools::standard_package_names().
  * cairo_pdf() and cairo_ps() default to onefile = TRUE to closer
    match pdf() and postscript().
  * New option catch.script.errors provides a documented way to catch
    errors and then continue in non-interactive use.
  * L %||% R newly in base is an expressive idiom for the phrases
    if(!is.null(L)) L else R or if(is.null(L)) R else L.
  * The return value from warnings() now always inherits from
    "warnings" as documented, now also in the case of no warnings
    where it previously returned NULL.
  * as.complex("1i") now returns 0 + 1i instead of NA with a warning.
  * z &lt;- c(NA, 1i) now keeps the imaginary part Im(z[1]) == 0, no
    longer coercing to NA_complex_.  Similarly, cumsum(z) correctly
    sums real and imaginary parts separately, i.e., without
    "crosstalk" in case of NAs.
  * On Alpine Linux iconv() now maps "latin2", "latin-2", "latin9"
    and "latin-9" to encoding names the OS knows about
    (case-insensitively).
  * iconv(sub = "Unicode") now always zero-pads to four (hex) digits,
    rather than to 4 or 8.  (This seems to have become the convention
    once Unicode restricted the number of Unicode points to 2^21 - 1
    and so will never need more than 6 digits.)
  * NCOL(NULL) now returns 0 instead of 1, for consistency with
    cbind().
  * The information for the Euro glyph missing from the Adobe .afm
    files for the Courier, Helvetica and Times families has been
    copied from their URW equivalents - this will improve vertical
    centring in the pdf() and postscript() devices.
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.12.0.  The changes are almost entirely cosmetic.
  * The included LAPACK sources have been updated to version 3.12.0
    and some further double-complex routines added.
  * There are new font families for the 2014--5 URW 2.0 fonts (see
    ?pdf) which are included in recent versions of Ghostscript.
    These have font widths for most Greek glyphs and a few others
    which were missing from the original versions (whose font
    families remain available for reproducibility, although
    Ghostscript-based viewers will render using the 2.0 versions).
  * Improve the large-n efficiency of as.matrix(&lt;dist&gt;), thanks an R
    contributors effort, notably by Tim Taylor and Heather Turner,
    see PR#18660.
  * The default and numeric methods of all.equal() get a check.class
    option.
  * zapsmall() gets new optional arguments, function mFUN and min.d,
    for extra flexibility; fulfills a wish in PR#18199.  Also, it is
    now an implicit S4 generic in package methods.
  * The Rd filter for aspell() gains an ignore argument.
  * New generic function sort_by(), primarily useful for the
    data.frame method which can be used to sort rows of a data frame
    by one or more columns.
  * The icence headers for the RPC code in src/extra/xdr have been
    updated to use the GPL-compatible licence published by Oracle
    America in 2010.
  * New function pkg2HTML() in tools to create single-page HTML
    reference manuals for R packages.
  * The byte code evaluator now uses less C stack space for recursive
    calls to byte-compiled functions. It also makes more of an effort
    to avoid allocations for scalar return values.
  * New completion option backtick (disabled by default) allows
    non-syntactic completions to be wrapped in backquotes. This is
    currently only useful for Jupyter notebooks via the IRkernel
    package, and may cause problems for other backends.
  INSTALLATION:
  * The parser has been updated to work with bison 3.8.2, which is
    now used for the pre-generated parsers in gram.c, file.c, and
    gramRd.c. A few parser error messages have changed, which may
    affect code that relies on exact messages.
  INSTALLATION on a UNIX-ALIKE:
  * System valgrind headers are now required to use configure option
  - -with-valgrind-instrumentation with value 1 or 2.
  * configure will warn if it encounters a 32-bit build, as that is
    nowadays almost untested.
  * Environment variable R_SYSTEM_ABI is no longer used and so no
    longer recorded in etc/Renviron (it was not on Windows and was
    only ever used when preparing package tools).
  * If the libdeflate library and headers are available, libdeflate
    rather than libz is used to (de)compress R objects in lazy-load
    databases.  Typically tasks spend up to 5% of their time on such
    operations, although creating lazy-data databases is one of the
    exceptions.
    This can be suppressed if the library is available by the
    configure option --without-libdeflate-compression.
  * configure option --enable-lto=check has not worked reliably since
    2019 and has been removed.
  * The minimum autoconf requirement for a maintainer build has been
    increased to autoconf 2.71.
    It is intended to increase this to 2.72 for R 4.5.0: the
    distributed configure file was generated using 2.72.
  * The minimum version requirement for an external LAPACK has been
    reduced to 3.9.0.
  * No default C++ compiler is set if no C++17 compiler is detected:
    there is no longer an automatic fallback to C++14 or C++11.
    Compilers from the last five years should have sufficient
    support: for others macros CXX and CXXSTD can be set in file
    config.site to provide a fallback if needed.
    The Objective-C++ compiler now by default uses the standard
    selected by R for C++ (currently C++17) rather than the default
    standard for the C++ compiler (which on macOS is still C++98).
  INSTALLATION on macOS:
  * A new configure option --with-newAccelerate makes use of Apple's
    'new' BLAS / LAPACK interfaces in their Accelerate framework.
    Those interfaces are only available in macOS 13.3 or later, and
    building requires SDK 13.3 or later (from the Command Line Tools
    or Xcode 14.3 or later).
    By default the option uses new Accelerate for BLAS calls: to also
    use it for LAPACK use option --with-newAccelerate=lapack.  The
    later interfaces provide LAPACK 3.9.1 rather than 3.2.1: 3.9.1 is
    from 2021-04 and does not include the improved algorithms
    introduced in LAPACK 3.10.0 (including for BLAS calls).
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools44, an update of the Rtools43 toolchain.  It is
    based on GCC 13 and newer versions of MinGW-W64, binutils and
    libraries (targeting 64-bit Intel CPUs).  R-devel can no longer
    be built using Rtools43 without changes.
  * Rtools44 has experimental support for 64-bit ARM (aarch64) CPUs
    _via_ the LLVM 17 toolchain using lld, clang/flang-new and
    libc++.
  UTILITIES:
  * R CMD check notes when S4-style exports are used without
    declaring a strong dependence on package methods.
  * tools::checkRd() (used by R CMD check) detects more problems with
    \Sexpr-based dynamic content, including bad nesting of \Sexprs
    and invalid arguments.
  * tools::checkRd() now reports Rd titles and section names ending
    in a period; this is ignored by R CMD check unless environment
    variable _R_CHECK_RD_CHECKRD_MINLEVEL_ is set to -5 or smaller.
  * R CMD check now notes Rd files without an \alias, as long
    documented in 'Writing R Extensions' §1.3.1.  The check for a
    missing \description has been moved from tools::checkRd() to
    tools::checkRdContents().
  * R CMD check now visits inst/NEWS.Rd and OS-specific man
    subdirectories when checking Rd files.
  * tools::checkDocFiles() and tools::checkRdContents() now also
    check internal Rd files by default, but "specially" (ignoring
    missing documentation of arguments).
  * R CMD Rdiff gets option --useEx.
  * R CMD check now warns on non-portable uses of Fortran KIND such
    as INTEGER(KIND=4) and REAL(KIND=8).
    To see the failing lines set environment variable
    _R_CHECK_FORTRAN_KIND_DETAILS_ to a true value.
  * When checking Rd files, R CMD check now notes some of the "lost
    braces" that tools::checkRd() finds.  Typical problems are Rd
    macros missing the initial backslash (e.g., code{...}), in-text
    set notation (e.g., {1, 2}, where the braces need escaping), and
    \itemize lists with \describe-style entries of the form
    \item{label}{description}.
  * R CMD INSTALL (and hence check) will compile C++ code with
  - DR_NO_REMAP if environment variable _R_CXX_USE_NO_REMAP_ is set
    to a true value.  It is planned that this will in future become
    the default for compiling C++.
  * The new built-in Rd macro \dontdiff{} can be used to mark example
    code whose output should be ignored when comparing check output
    to reference output (tests/Examples/&lt;pkg&gt;-Ex.Rout.save).  The
    \dontdiff tag, like \donttest, is _not_ shown on the rendered
    help page, so provides a clean alternative to ##
    IGNORE_RDIFF_(BEGIN|END) comments.
  * R CMD build when there is no NAMESPACE, now uses the recommended
    exportPattern("^[^.]"), instead of exporting everything.
  * R CMD check now warns about non-ASCII characters in the NAMESPACE
    file (in addition to R files). Such packages are not portable and
    may fail to install on some platforms.
  C-LEVEL FACILITIES:
  * Headers R_ext/Applic.h and R-ext/Linpack.h used to include
    R_ext/BLAS.h although this was undocumented and unneeded by their
    documented entry points.  They no longer do so.
  * New function R_missing(), factored out from do_missing(), used to
    fix PR#18579.
  * SEXP type S4SXP has been renamed to OBJSXP to support
    experimenting with alternative object systems.  The S4SXP value
    can still be used in C code but is now deprecated.  Based on
    contributions from the R Consortium's Object-Oriented Programming
    Working Group.
  * New function pow1p(x,y) for accurate (1+x)^y.
  * mkCharLenCE was incorrectly documented to take a size_t length
    but was implemented with int (and character strings in R are
    limited to 2^31 - 1 bytes).
  DEPRECATED AND DEFUNCT:
  * data() no longer handles zipped data from long-defunct (since R
    2.13.0) --use-zip-data installations.
  * The legacy graphics devices pictex() and xfig() are now
    deprecated.  They do not support recent graphics enhancements and
    their font handling is rudimentary. The intention is to retain
    them for historical interest as long as they remain somewhat
    functional.
  * Support for encoding = "MacRoman" has been removed from the pdf()
    and postscript() devices - this was a legacy encoding supporting
    classic macOS up to 2001 and no longer has universal libiconv
    support.
  * is.R() is deprecated as no other S dialect is known to be in use
    (and this could only identify historical dialects, not future
    ones).
    Further information on calls can be obtained by setting the
    environment variable _R_DEPRECATED_IS_R_ to error which turns the
    deprecation warning into an error and so by default gives a
    traceback.  (This is done by R CMD check --as-cran.)
  * UseMethod() no longer forwards local variables assigned in the
    generic function into method call environments before evaluating
    the method body. This makes method calls behave more like
    standard function calls and makes method code easier to analyze
    correctly.
  * The twelve as.data.frame.&lt;class&gt;() methods which were deprecated
    only via _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ and in R CMD
    check --as-cran are formally deprecated now in favour of calling
    as.data.frame() or as.data.frame.vector().  The deprecation
    "check" now works also when as.data.frame() is S4 generic thanks
    to Ivan Krylov.
  * The default method for the directional comparison operators &lt;, &gt;,
    &lt;=, and &gt;= now signals an error when one of the operands is a
    language object, i.e. a symbol or a call.
  * For terms.formula(), deprecate abb and neg.out arguments
    _formally_ in addition to just documenting it.
  BUG FIXES:
  * The methods package is more robust to not being attached to the
    search path.  More work needs to be done.
  * pairwise.t.test() misbehaved when subgroups had 0 DF for
    variance, even with pool.sd = TRUE.  (PR#18594 by Jack Berry).
  * Probability distribution functions [dpq]&lt;distrib&gt;(x, *), but also
    bessel[IKJY](x, .) now consistently preserve attributes(x) when
    length(x) == 0, e.g., for a 2 x 0 matrix, thanks to Karolis
    Koncevičius' report PR#18509.
  * Group "Summary" computations such as sum(1:3, 4, na.rm = 5, NA,
    7, na.rm = LL) now give an error instead of either 17 or NN for
    LL true or false, as proposed by Ivan Krylov on the R-devel
    mailing list.  (This also means it is now an error to specify
    na.rm more than once.)
  * as.complex(x) now returns complex(real = x, imaginary = 0) for
    _all_ numerical and logical x, notably also for NA or
    NA_integer_.
  * Directories are now omitted by file.copy(, recursive = FALSE) and
    in file.append() (PR#17337).
  * gsub() and sub() are now more robust to integer overflow when
    reporting errors caused by too large input strings (PR#18346).
  * Top-level handlers are now more robust to attempts to remove a
    handler whilst handlers are running (PR#18508).
  * The handling of Alt+F4 in dialogs created on Windows using
    GraphApp has been fixed (PR#13870).
  * density() more consistently computes grid values for the
    FFT-based convolution, following Robert Schlicht's analysis and
    proposal in PR#18337, correcting density values typically by a
    factor of about 0.999.  Argument old.coords = TRUE provides back
    compatibility.
  * palette.colors() gains a name argument that defaults to FALSE
    controlling whether the vector of colours that is returned has
    names (where possible).  PR#18529.
  * tools::xgettext() no longer extracts the (non-translatable) class
    names from warningCondition and errorCondition calls.
  * S3method(&lt;gen&gt;, &lt;class&gt;, &lt;func&gt;) in the NAMESPACE file now works
    (again) when &lt;func&gt; is visible from the namespace, e.g.,
    imported, or in base.
  * getParseData(f) now also works for a function defined in the
    first of several &lt;pkg&gt;/R/*.R source files, thanks to Kirill
    Müller's report and Duncan Murdoch's patch in PR#16756.
  * Rd \Sexpr macros with nested #ifdef conditionals were not
    processed.
  * A non-blocking connection with non-default encoding (such as a
    socket) now correctly returns from readLines() after new data has
    arrived also when its EOF had been reached previously.  Thanks to
    Peter Meilstrup's report on R-devel and Ivan Krylov's report and
    patch proposal in PR#18555.
  * tools::checkRdContents() failed to detect empty argument
    descriptions when they spanned multiple lines, including those
    generated by prompt().  These cases are now noted by R CMD check.
  * Plain-text help no longer outputs spurious colons in the
    arguments list (for multi-line \item labels in the Rd source).
  * kappa() and rcond() work correctly in more cases; kappa(., norm =
    "2") now warns that it computes the 1-norm with (default) exact =
    FALSE; prompted by Mikael Jagan's quite comprehensive PR#18543.
  * Rd skeletons generated by prompt() or promptData() now use a
    dummy title (so R CMD build works).  tools::checkRdContents() has
    been updated to detect such template leftovers, including from
    promptPackage().
  * When S4 method dispatch fails because no method was found, the
    error message now includes the signature argument names; thanks
    to Michael Chirico's proposal on the R-devel list.
  * withAutoprint({ .. }) now preserves srcrefs previously lost,
    thanks to Andrew Simmons' report plus fix in PR#18572.
  * transform.data.frame() no longer adjusts names; in particular,
    untransformed variables are kept as-is, including those with
    syntactically invalid names (PR#17890).
  * The keep.source option for Rd \Sexpr blocks is no longer ignored.
  * The formula methods for t.test() and wilcox.test() now catch when
    paired is passed, addressing PR#14359; use Pair(x1, x2) ~ 1 for a
    paired test.
  * The level reported in the browser prompt was often too large. It
    now shows the number of browser contexts on the stack.
  * For cbind() and rbind(), the optional deparse.level argument is
    now properly passed to methods, thanks to Mikael Jagan's PR#18579
    and comments there.
  * Some error and warning messages for large ('long vector')
    matrix(v, nr, nc) and dim(m) &lt;- d are now correct about sizes,
    using long long formatting, fixing PR#18612 (and more) reported
    by Mikael Jagan.
  * readChar(useBytes = TRUE) now terminates strings even when the
    underlying connection uses extra spaces in the input buffer.
    This fixes problems with extra garbage seen with gzip
    connections, PR#18605.
  * Named capture in PCRE regular expressions now works also with
    more than 127 named groups (PR#18588).
  * Datetime functions are now robust against long jumps when dealing
    with internal time zone changes.  This avoids confusing warnings
    about an invalid time zone, previously triggered by turning
    warnings into errors or handling them via tryCatch (PR#17966,
    PR#17780).
  * Datetime functions now restore even an empty TZ environment
    variable after internal time zone changes (PR#17724).  This makes
    results of datetime functions with this (typically unintentional)
    setting more predictable.
  * drop.terms(*) now drops response as by default, keep.response =
    FALSE, fixing PR#18564 thanks to Mikael Jagan.
  * dummy.coef(.) now also works for lm()-models with character
    categorical predictor variables rather than factor ones, fixing
    PR#18635 reported by Jinsong Zhao.
  * formals(f) &lt;- formals(f) now also works for a function w/o
    arguments and atomic _constant_ body(f).
  * Correct as.function(&lt;invalid list&gt;, .)'s error message.
  * removeSource() is yet more thorough in finding and removing
    "srcref" and the other source references from parsed R language
    chunks, fixing PR#18638 thanks to Andrew Simmons.
  * dgeom() is more accurate now, notably when its result is very
    small, fixing PR#18642 thanks to the proposal of Morten Welinder,
    also improving other instances where C level binom_raw(x, n, ..)
    has x == 0 or x== n.
  * warning() with options(warn = 1) has improved output for
    multi-line messages.
  * axis.Date() and axis.POSIXct() now respect the par("lab") setting
    for the number of pretty() intervals.
  * Comparisons for language objects (which are based on deparsing)
    are now more careful about using accurate deparsed results
    (PR#18676).
  * Plain-text help (Rd2txt) now correctly preserves blank lines
    following single-line \dontrun code.
  * &lt;POSIXlt&gt;[*] no longer sets wrong "balanced" attribute, fixing
    PR#18681 thanks to Mikael Jagan.
  * str(&lt;classed-call&gt;) now deparses the call as expected, fixing
    PR#18684, reported by Dave Slager.
  * In Rd examples, code following the closing brace of a \dontrun,
    \dontshow or \donttest tag on the same line is no longer skipped
    when R CMD check runs the examples.
  * as.data.frame(matrix(*, ncol=0)) now gets valid names() and
    colnames(); reported by Davis Vaughan on the R-devel list.
  * Internal Mathlib function stirlerr(n) is now almost fully
    (52-bit) accurate for all n &gt;= ~5.9 and more accurate also in the
    range 1 -- 5.9.  This entails small ("after 12th decimal")
    changes in density functions, e.g., dgamma() in _some_ regions of
    their support.  The fix was partly prompted by Morten Welinder's
    PR#18640.
  * Numbers like 9876543.2 are now considered non-integer by Mathlib
    internal R_nonint(), amending original fix of PR#15734.
  * Rd comment lines no longer cause broken paragraphs in the
    rendered PDF and plain-text help. In code blocks, pure comment
    lines (starting with %) no longer produce an empty line.
  * xtabs(Freq ~ .) now consistently defaults to na.action = na.pass,
    using na.rm = FALSE (added as an argument) when summing over Freq
    (PR#17770).
  * tools::testInstalledPackage() is no longer silent about failures
    from running examples or tests and its return code no longer
    ignores failures from checking vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1718366400">- CHANGES IN R 4.4.1:
  C-LEVEL FACILITIES:
  * Functions R_atof and R_strtod declared in header R_ext/Utils.h
    are now documented in 'Writing R Extensions' and so formally part
    of the API.
  * The non-API entry points Rf_setSVector, Rf_StringFalse,
    Rf_StringTrue and Rf_isBlankString have been added to those
    reported by R CMD check.
  * The new function Rf_allocLang is now available. This provides an
    alternative to the idiom of calling Rf_allocList followed by
    SET_TYPEOF.
  UTILITIES:
  * R CMD check now reports as warnings what gfortran calls 'Fortran
    2018 deleted features', all of which have long been marked as
    'obsolescent' and some of which were deleted in Fortran 2008 or
    earlier.  Fortran compilers are no longer required to support
    these.
  BUG FIXES:
  * as.numeric(), scan(), type.convert() and other places which use
    the internal C function R_strtod now require a _non-empty_ digit
    sequence in a decimal or binary exponent.  This aligns with the
    C/POSIX standard for strtod and with ?NumericConstants.
  * as.data.frame(m, make.names=NA) now works correctly for a matrix
    m with NA's in row names.
  * The error message from &lt;POSIXlt&gt;[["hour"]] and similar now
    mentions *[[, "hour"]], as wished for in PR#17409 and proposed by
    Michael Chirico.
  * qbinom() and potentially qpois(), qnbinom(), no longer sometimes
    fail accurate inversion (of pbinom(), etc), thanks to Christopher
    Chang's report and patch in PR#18711.
  * The internal help server on Windows can again serve requests sent
    in quick succession, fixing a regression in R 4.4.0.
  * debugcall(&lt;S3Generic&gt;()) now also works when a corresponding
    S4-generic version is in the methods cache (PR#18143).
  * Package tools' toTitleCase(ch0) now returns character(0) when ch0
    is of zero length; fixing PR#18724, reported by David Hugh Jones.
  * R CMD check is no longer broken (without a check result and no
    explanation in 00check.log) for a package which declares an
    invalid VignetteBuilder in DESCRIPTION but has no vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1730376000">- CHANGES IN R 4.4.2:
  C-LEVEL FACILITIES:
  * The S-compatibility macros F77_COM and F77_COMDECL defined in
    header R_ext/RS.h are deprecated and will be removed shortly.  We
    could find no record of their use.
  BUG FIXES:
  * Mathlib function lgammacor(x) no longer warns about underflow to
    zero for large x.
  * Text widths and heights were incorrectly reported by the Quartz
    device if the drawing context didn't exist yet (typically when
    drawing off-screen to a window that is yet to appear, see
    PR#18591).
  * The Quartz device could segfault in cases where paths with spaces
    are used in the new glyph drawing API.  Thanks to Tomek
    Gieorgijewski (PR#18758).
  * On macOS in R CRAN builds, it is again possible to read
    little-endian UTF-16 text with a BOM from a connection using
    encoding="UTF-16".  Users building R from source should avoid
    using the system libiconv in macOS 14.1 and later.
  * methods' internal .requirePackage() now re-enables primitive
    method dispatch when needed; thanks to Ivan Krylov for
    demystifying CRAN package check failures on the R-devel mailing
    list.</changelog>
</package>
<package pkgid="b283d844fc27502f1a9a4c40316764f42c67ecb8e463807be5b113d7590aafbe6c33867e61b323bdbdb3bfe66d075573d27f146105d59782b3affcd8c429d3ce" name="R-graphics" arch="x86_64">
  <version epoch="0" ver="4.4.2" rel="51.0.2.2.sr20241103"/>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1620302400">- To get in sync with d:l:R:autoCRAN the Matrix package's split
  in -devel was reversed.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339200">- improved spec file according to comments of dimstar in
  https://build.opensuse.org/request/show/892685</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339201">- CHANGES IN R 4.1.0:
  FUTURE DIRECTIONS:
  * It is planned that the 4.1.x series will be the last to support
    32-bit Windows, with production of binary packages for that
    series continuing until early 2023.
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Data set esoph in package datasets now provides the correct
    numbers of controls; previously it had the numbers of cases added
    to these.  (Reported by Alexander Fowler in PR#17964.)
  NEW FEATURES:
  * www.omegahat.net is no longer one of the repositories known by
    default to setRepositories().  (Nowadays it only provides source
    packages and is often unavailable.)
  * Function package_dependencies() (in package tools) can now use
    different dependency types for direct and recursive dependencies.
  * The checking of the size of tarball in R CMD check --as-cran
    &lt;pkg&gt; may be tweaked via the new environment variable
    _R_CHECK_CRAN_INCOMING_TARBALL_THRESHOLD_, as suggested in
    PR#17777 by Jan Gorecki.
  * Using c() to combine a factor with other factors now gives a
    factor, an ordered factor when combining ordered factors with
    identical levels.
  * apply() gains a simplify argument to allow disabling of
    simplification of results.
  * The format() method for class "ftable" gets a new option justify.
    (Suggested by Thomas Soeiro.)
  * New ...names() utility.  (Proposed by Neal Fultz in PR#17705.)
  * type.convert() now warns when its as.is argument is not
    specified, as the help file always said it _should_.  In that
    case, the default is changed to TRUE in line with its change in
    read.table() (related to stringsAsFactor) in R 4.0.0.
  * When printing list arrays, classed objects are now shown _via_
    their format() value if this is a short enough character string,
    or by giving the first elements of their class vector and their
    length.
  * capabilities() gets new entry "Rprof" which is TRUE when R has
    been configured with the equivalent of --enable-R-profiling (as
    it is by default).  (Related to Michael Orlitzky's report
    PR#17836.)
  * str(xS4) now also shows extraneous attributes of an S4 object
    xS4.
  * Rudimentary support for vi-style tags in rtags() and R CMD rtags
    has been added.  (Based on a patch from Neal Fultz in PR#17214.)
  * checkRdContents() is now exported from tools; it and also
    checkDocFiles() have a new option chkInternal allowing to check
    Rd files marked with keyword "internal" as well.  The latter can
    be activated for R CMD check via environment variable
    _R_CHECK_RD_INTERNAL_TOO_.
  * New functions numToBits() and numToInts() extend the raw
    conversion utilities to (double precision) numeric.
  * Functions URLencode() and URLdecode() in package utils now work
    on vectors of URIs.  (Based on patch from Bob Rudis submitted
    with PR#17873.)
  * path.expand() can expand ~user on most Unix-alikes even when
    readline is not in use.  It tries harder to expand ~, for example
    should environment variable HOME be unset.
  * For HTML help (both dynamic and static), Rd file links to help
    pages in external packages are now treated as references to
    topics rather than file names, and fall back to a file link only
    if the topic is not found in the target package. The earlier rule
    which prioritized file names over topics can be restored by
    setting the environment variable _R_HELP_LINKS_TO_TOPICS_ to a
    false value.
  * c() now removes NULL arguments before dispatching to methods,
    thus simplifying the implementation of c() methods, _but_ for
    back compatibility keeps NULL when it is the first argument.
    (From a report and patch proposal by Lionel Henry in PR#17900.)
  * Vectorize()'s result function's environment no longer keeps
    unneeded objects.
  * Function ...elt() now propagates visibility consistently with
    ..n.  (Thanks to Lionel Henry's PR#17905.)
  * capture.output() no longer uses non-standard evaluation to
    evaluate its arguments.  This makes evaluation of functions like
    parent.frame() more consistent.  (Thanks to Lionel Henry's
    PR#17907.)
  * packBits(bits, type="double") now works as inverse of
    numToBits().  (Thanks to Bill Dunlap's proposal in PR#17914.)
  * curlGetHeaders() has two new arguments, timeout to specify the
    timeout for that call (overriding getOption("timeout")) and TLS
    to specify the minimum TLS protocol version to be used for
    https:// URIs (_inter alia_ providing a means to check for sites
    using deprecated TLS versions 1.0 and 1.1).
  * For nls(), an optional constant scaleOffset may be added to the
    denominator of the relative offset convergence test for cases
    where the fit of a model is expected to be exact, thanks to a
    proposal by John Nash.  nls(*, trace=TRUE) now also shows the
    convergence criterion.
  * Numeric differentiation _via_ numericDeriv() gets new optional
    arguments eps and central, the latter for taking central divided
    differences.  The latter can be activated for nls() via
    nls.control(nDcentral = TRUE).
  * nls() now passes the trace and control arguments to getInitial(),
    notably for all self-starting models, so these can also be fit in
    zero-noise situations via a scaleOffset.  For this reason, the
    initial function of a selfStart model must now have ... in its
    argument list.
  * bquote(splice = TRUE) can now splice expression vectors with
    attributes: this makes it possible to splice the result of
    parse(keep.source = TRUE).  (Report and patch provided by Lionel
    Henry in PR#17869.)
  * textConnection() gets an optional name argument.
  * get(), exists(), and get0() now signal an error if the first
    argument has length greater than 1.  Previously additional
    elements were silently ignored.  (Suggested by Antoine Fabri on
    R-devel.)
  * R now provides a shorthand notation for creating functions, e.g.
    \(x) x + 1 is parsed as function(x) x + 1.
  * R now provides a simple native forward pipe syntax |&gt;.  The
    simple form of the forward pipe inserts the left-hand side as the
    first argument in the right-hand side call.  The pipe
    implementation as a syntax transformation was motivated by
    suggestions from Jim Hester and Lionel Henry.
  * all.equal(f, g) for functions now by default also compares their
    environment(.)s, notably via new all.equal method for class
    function.  Comparison of nls() fits, e.g., may now need
    all.equal(m1, m2, check.environment = FALSE).
  * .libPaths() gets a new option include.site, allowing to _not_
    include the site library.  (Thanks to Dario Strbenac's suggestion
    and Gabe Becker's PR#18016.)
  * Lithuanian translations are now available.  (Thanks to Rimantas
    Zakauskas.)
  * names() now works for DOTSXP objects.  On the other hand, in
    R-lang, the R language manual, we now warn against relying on the
    structure or even existence of such dot-dot-dot objects.
  * all.equal() no longer gives an error on DOTSXP objects.
  * capabilities("cairo") now applies only to the file-based devices
    as it is now possible (if very unusual) to build R with Cairo
    support for those but not for X11().
  * There is optional support for tracing the progress of
    loadNamespace() - see its help.
  * (Not Windows.)  l10n_info() reports an additional element, the
    name of the encoding as reported by the OS (which may differ from
    the encoding part (if any) of the result from
    Sys.getlocale("LC_CTYPE").
  * New function gregexec() which generalizes regexec() to find _all_
    disjoint matches and well as all substrings corresponding to
    parenthesized subexpressions of the given regular expression.
    (Contributed by Brodie Gaslam.)
  * New function charClass() in package utils to query the
    wide-character classification functions in use (such as
    iswprint).
  * The names of quantile()'s result no longer depend on the global
    getOption("digits"), but quantile() gets a new optional argument
    digits = 7 instead.
  * grep(), sub(), regexp and variants work considerably faster for
    long factors with few levels.  (Thanks to Michael Chirico's
    PR#18063.)
  * Provide grouping of x11() graphics windows within a window
    manager such as Gnome or Unity; thanks to a patch by Ivan Krylov
    posted to R-devel.
  * The split() method for class data.frame now allows the f argument
    to be specified as a formula.
  * sprintf now warns on arguments unused by the format string.
  * New palettes "Rocket" and "Mako" for hcl.colors() (approximating
    palettes of the same name from the 'viridisLite' package).
    Contributed by Achim Zeileis.
  * The base environment and its namespace are now locked (so one can
    no longer add bindings to these or remove from these).
  * Rterm handling of multi-byte characters has been improved,
    allowing use of such characters when supported by the current
    locale.
  * Rterm now accepts ALT+ +xxxxxxxx sequences to enter Unicode
    characters as hex digits.
  * Environment variable LC_ALL on Windows now takes precedence over
    LC_CTYPE and variables for other supported categories, matching
    the POSIX behaviour.
  * duplicated() and anyDuplicated() are now optimized for integer
    and real vectors that are known to be sorted via the ALTREP
    framework. Contributed by Gabriel Becker via PR#17993.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 14
    and so packages that provide graphics devices should be
    reinstalled.
  * Graphics devices should now specify deviceVersion to indicate
    what version of the graphics engine they support.
  * Graphics devices can now specify deviceClip.  If TRUE, the
    graphics engine will never perform any clipping of output itself.
    The clipping that the graphics engine does perform (for both
    canClip = TRUE and canClip = FALSE) has been improved to avoid
    producing unnecessary artifacts in clipped output.
  * The grid package now allows gpar(fill) to be a linearGradient(),
    a radialGradient(), or a pattern().  The viewport(clip) can now
    also be a grob, which defines a clipping path, and there is a new
    viewport(mask) that can also be a grob, which defines a mask.
    These new features are only supported so far on the Cairo-based
    graphics devices and on the pdf() device.
  * (Not Windows.)  A warning is given when a Cairo-based type is
    specified for a png(), jpeg(), tiff() or bmp() device but Cairo
    is unsupported (so type = "Xlib" is tried instead).
  * grSoftVersion() now reports the versions of FreeType and
    FontConfig if they are used directly (not _via_ Pango), as is
    most commonly done on macOS.
  C-LEVEL FACILITIES:
  * The _standalone_ libRmath math library and R's C API now provide
    log1pexp() again as documented, and gain log1mexp().
  INSTALLATION on a UNIX-ALIKE:
  * configure checks for a program pkgconf if program pkg-config is
    not found.  These are now only looked for on the path (like
    almost all other programs) so if needed specify a full path to
    the command in PKG_CONFIG, for example in file config.site.
  * C99 function iswblank is required - it was last seen missing ca
    2003 so the workaround has been removed.
  * There are new configure options --with-internal-iswxxxxx,
  - -with-internal-towlower and --with-internal-wcwidth which allows
    the system functions for wide-character classification,
    case-switching and width (wcwidth and wcswidth) to be replaced by
    internal ones.  The first has long been used on macOS, AIX (and
    Windows) but this enables it to be unselected there and selected
    for other platforms (it is the new default on Solaris).  The
    second is new in this version of R and is selected by default on
    macOS and Solaris.  The third has long been the default and
    remains so as it contains customizations for East Asian
    languages.
    System versions of these functions are often minimally
    implemented (sometimes only for ASCII characters) and may not
    cover the full range of Unicode points: for example Solaris (and
    Windows) only cover the Basic Multilingual Plane.
  * Cairo installations without X11 are more likely to be detected by
    configure, when the file-based Cairo graphics devices will be
    available but not X11(type = "cairo").
  * There is a new configure option --with-static-cairo which is the
    default on macOS.  This should be used when only static cairo
    (and where relevant, Pango) libraries are available.
  * Cairo-based graphics devices on platforms without Pango but with
    FreeType/FontConfig will make use of the latter for font
    selection.
  LINK-TIME OPTIMIZATION on a UNIX-ALIKE:
  * Configuring with flag --enable-lto=R now also uses LTO when
    installing the recommended packages.
  * R CMD INSTALL and R CMD SHLIB have a new flag --use-LTO to use
    LTO when compiling code, for use with R configured with
  - -enable-lto=R.  For R configured with --enable-lto, they have
    the new flag --no-use-LTO.
    Packages can opt in or out of LTO compilation _via_ a UseLTO
    field in the DESCRIPTION file.  (As usual this can be overridden
    by the command-line flags.)
  BUILDING R on Windows:
  * for GCC &gt;= 8, FC_LEN_T is defined in config.h and hence character
    lengths are passed from C to Fortran in _inter alia_ BLAS and
    LAPACK calls.
  * There is a new text file src/gnuwin32/README.compilation, which
    outlines how C/Fortran code compilation is organized and
    documents new features:
  * R can be built with Link-Time Optimization with a suitable
    compiler - doing so with GCC 9.2 showed several
    inconsistencies which have been corrected.
  * There is support for cross-compiling the C and Fortran code
    in R and standard packages on suitable (Linux) platforms.
    This is mainly intended to allow developers to test later
    versions of compilers - for example using GCC 9.2 or 10.x has
    detected issues that GCC 8.3 in Rtools40 does not.
  * There is experimental support for cross-building R packages
    with C, C++ and/or Fortran code.
  * The R installer can now be optionally built to support a single
    architecture (only 64-bit or only 32-bit).
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++14 where
    available (which it is on all currently checked platforms): if
    not (as before) C++11 is used if available otherwise C++ is not
    supported.
    Packages which specify C++11 will still be installed using C++11.
    C++14 compilers may give deprecation warnings, most often for
    std::random_shuffle (deprecated in C++14 and removed in C++17).
    Either specify C++11 (see 'Writing R Extensions') or modernize
    the code and if needed specify C++14.  The latter has been
    supported since R 3.4.0 so the package's DESCRIPTION would need
    to include something like
    Depends: R (&gt;= 3.4)
  PACKAGE INSTALLATION on Windows:
  * R CMD INSTALL and R CMD SHLIB make use of their flag --use-LTO
    when the LTO_OPT make macro is set in file etc/${R_ARCH}/Makeconf
    or in a personal/site Makevars file.  (For details see 'Writing R
    Extensions' SS4.5.)
    This provides a valuable check on code consistency.  It does work
    with GCC 8.3 as in Rtools40, but that does not detect everything
    the CRAN checks with current GCC do.
  PACKAGE INSTALLATION on macOS:
  * The default personal library directory on builds with
  - -enable-aqua (including CRAN builds) now differs by CPU type,
    one of
    ~/Library/R/x86_64/x.y/library
    ~/Library/R/arm64/x.y/library
    This uses the CPU type R (and hence the packages) were built for,
    so when a x86_64 build of R is run under Rosetta emulation on an
    arm64 Mac, the first is used.
  UTILITIES:
  * R CMD check can now scan package functions for bogus return
    statements, which were possibly intended as return() calls (wish
    of PR#17180, patch by Sebastian Meyer). This check can be
    activated via the new environment variable
    _R_CHECK_BOGUS_RETURN_, true for --as-cran.
  * R CMD build omits tarballs and binaries of previous builds from
    the top-level package directory.  (PR#17828, patch by Sebastian
    Meyer.)
  * R CMD check now runs sanity checks on the use of LazyData, for
    example that a data directory is present and that
    LazyDataCompression is not specified without LazyData and has a
    documented value.  For packages with large LazyData databases
    without specifying LazyDataCompression, there is a reference to
    the code given in 'Writing R Extensions' SS1.1.6 to test the
    choice of compression (as in all the CRAN packages tested a
    non-default method was preferred).
  * R CMD build removes LazyData and LazyDataCompression fields from
    the DESCRIPTION file of packages without a data directory.
  ENCODING-RELATED CHANGES:
  * The parser now treats \Unnnnnnnn escapes larger than the upper
    limit for Unicode points (\U10FFFF) as an error as they cannot be
    represented by valid UTF-8.
    Where such escapes are used for outputting non-printable
    (including unassigned) characters, 6 hex digits are used (rather
    than 8 with leading zeros).  For clarity, braces are used, for
    example \U{0effff}.
  * The parser now looks for non-ASCII spaces on Solaris (as
    previously on most other OSes).
  * There are warnings (including from the parser) on the use of
    unpaired surrogate Unicode points such as \uD834.  (These cannot
    be converted to valid UTF-8.)
  * Functions nchar(), tolower(), toupper() and chartr() and those
    using regular expressions have more support for inputs with a
    marked Latin-1 encoding.
  * The character-classification functions used (by default) to
    replace the system iswxxxxx functions on Windows, macOS and AIX
    have been updated to Unicode 13.0.0.
    The character-width tables have been updated to include new
    assignments in Unicode 13.0.0.
  * The code for evaluating default (extended) regular expressions
    now uses the same character-classification functions as the rest
    of R (previously they differed on Windows, macOS and AIX).
  * There is a build-time option to replace the system's
    wide-character wctrans C function by tables shipped with R: use
    configure option --with-internal-towlower or (on Windows)
  - DUSE_RI18N_CASE in CFLAGS when building R.  This may be needed
    to allow tolower() and toupper() to work with Unicode characters
    beyond the Basic Multilingual Plane where not supported by system
    functions (e.g. on Solaris where it is the new default).
  * R is more careful when truncating UTF-8 and other multi-byte
    strings that are too long to be printed, passed to the system or
    libraries or placed into an internal buffer.  Truncation will no
    longer produce incomplete multibyte characters.
  DEPRECATED AND DEFUNCT:
  * Function plclust() from the package stats and
    package.dependencies(), pkgDepends(), getDepList(),
    installFoundDepends(), and vignetteDepends() from package tools
    are defunct.
  * Defunct functions checkNEWS() and readNEWS() from package tools
    and CRAN.packages() from utils have been removed.
  * R CMD config CXXCPP is defunct (it was deprecated in R 3.6.2).
  * parallel::detectCores() drops support for Irix (retired in 2013).
  * The LINPACK argument to chol.default(), chol2inv(),
    solve.default() and svd() has been defunct since R 3.1.0.  It was
    silently ignored up to R 4.0.3 but now gives an error.
  * Subsetting/indexing, such as ddd[*] or ddd$x on a DOTSXP
    (dot-dot-dot) object ddd has been disabled; it worked by accident
    only and was undocumented.
  BUG FIXES:
  * Many more C-level allocations (mainly by malloc and strdup) are
    checked for success with suitable alternative actions.
  * Bug fix for replayPlot(); this was turning off graphics engine
    display list recording if a recorded plot was replayed in the
    same session.  The impact of the bug became visible if resize the
    device after replay OR if attempted another savePlot() after
    replay (empty display list means empty screen on resize or empty
    saved plot).
  * R CMD check etc now warn when a package exports non-existing S4
    classes or methods, also in case of no "methods" presence.
    (Reported by Alex Bertram; reproducible example and patch by
    Sebastian Meyer in PR#16662.)
  * boxplot() now also accepts calls for labels such as ylab, the
    same as plot().  (Reported by Marius Hofert.)
  * The help page for xtabs() now correctly states that addNA is
    setting na.action = na.pass among others.  (Reported as PR#17770
    by Thomas Soeiro.)
  * The R CMD check &lt;pkg&gt; gives a longer and more comprehensible
    message when DESCRIPTION misses dependencies, e.g., in Imports:.
    (Thanks to the contributors of PR#17179.)
  * update.default() now calls the generic update() on the formula to
    work correctly for models with extended formulas.  (As reported
    and suggested by Neal Fultz in PR#17865.)
  * The horizontal position of leaves in a dendrogram is now correct
    also with center = FALSE.  (PR#14938, patch from Sebastian
    Meyer.)
  * all.equal.POSIXt() no longer warns about and subsequently ignores
    inconsistent "tzone" attributes, but describes the difference in
    its return value (PR#17277).  This check can be disabled _via_
    the new argument check.tzone = FALSE as suggested by Sebastian
    Meyer.
  * as.POSIXct() now populates the "tzone" attribute from its tz
    argument when x is a logical vector consisting entirely of NA
    values.
  * x[[2^31]] &lt;- v now works.  (Thanks to the report and patch by
    Suharto Anggono in PR#17330.)
  * In log-scale graphics, axis() ticks and label positions are now
    computed more carefully and symmetrically in their range,
    typically providing _more_ ticks, fulfilling wishes in PR#17936.
    The change really corresponds to an improved axisTicks() (package
    grDevices), potentially influencing grid and lattice, for
    example.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now correct to at
    least five digits where it was catastrophically wrong,
    previously.
  * sum(df) and similar "Summary"- and "Math"-group member functions
    now work for data frames df with logical columns, notably also of
    zero rows.  (Reported to R-devel by Martin "b706".)
  * unsplit() had trouble with tibbles due to unsound use of rep(NA,
    len)-indexing, which should use NA_integer_ (Reported to R-devel
    by Mario Annau.)
  * pnorm(x, log.p = TRUE) underflows to -Inf slightly later.
  * show(&lt;hidden S4 generic&gt;) prints better and without quotes for
    non-hidden S4 generics.
  * read.table() and relatives treated an "NA" column name as missing
    when check.names = FALSE PR#18007.
  * Parsing strings containing UTF-16 surrogate pairs such as
    "\uD834\uDD1E" works better on some (uncommon) platforms.
    sprintf("%X", utf8ToInt("\uD834\uDD1E")) should now give "1D11E"
    on all platforms.
  * identical(x,y) is no longer true for differing DOTSXP objects,
    fixing PR#18032.
  * str() now works correctly for DOTSXP and related exotics, even
    when these are doomed.
    Additionally, it no longer fails for lists with a class and
    "irregular" method definitions such that e.g. lapply(*) will
    necessarily fail, as currently for different igraph objects.
  * Too long lines in environment files (e.g. Renviron) no longer
    crash R. This limit has been increased to 100,000 bytes.
    (PR#18001.)
  * There is a further workaround for FreeType giving incorrect
    italic font faces with cairo-based graphics devices on macOS.
  * add_datalist(*, force = TRUE) (from package tools) now actually
    updates an existing data/datalist file for new content.  (Thanks
    to a report and patch by Sebastian Meyer in PR#18048.)
  * cut.Date() and cut.POSIXt() could produce an empty last interval
    for breaks = "months" or breaks = "years".  (Reported as PR#18053
    by Christopher Carbone.)
  * Detection of the encoding of 'regular' macOS locales such as
    en_US (which is UTF-8) had been broken by a macOS change:
    fortunately these are now rarely used with en_US.UTF-8 being
    preferred.
  * sub() and gsub(pattern, repl, x, *) now keep attributes of x such
    as names() also when pattern is NA (PR#18079).
  * Time differences ("difftime" objects) get a replacement and a
    rep() method to keep "units" consistent.  (Thanks to a report and
    patch by Nicolas Bennett in PR#18066.)
  * The \RdOpts macro, setting defaults for \Sexpr options in an Rd
    file, had been ineffective since R 2.12.0: it now works again.
    (Thanks to a report and patch by Sebastian Meyer in PR#18073.)
  * mclapply and pvec no longer accidentally terminate parallel
    processes started before by mcparallel or related calls in
    package parallel (PR#18078).
  * grep and other functions for evaluating (extended) regular
    expressions handle in Unicode also strings not explicitly flagged
    UTF-8, but flagged native when running in UTF-8 locale.
  * Fixed a crash in fifo implementation on Windows (PR#18031).
  * Binary mode in fifo on Windows is now properly detected from
    argument open (PR#15600, PR#18031).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1622808000">- The line %{__install} -m 755 -d %{_infodir}
  no longer works in TW or Factory.
  But without that line it works everywhere. So this instruction
  was commented out of the spec file.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1628596800">- CHANGES IN R 4.1.1:
  NEW FEATURES:
  * require(pkg, quietly = TRUE) is quieter and in particular does
    not warn if the package is not found.
  DEPRECATED AND DEFUNCT:
  * Use of ftp:// URIs should be regarded as deprecated, with
    on-going support confined to method = "libcurl" and not routinely
    tested.  (Nowadays no major browser supports them.)
  * The non-default method = "internal" is deprecated for http:// and
    ftp:// URIs for both download.file and url.
  * On Windows, method = "wininet" is deprecated for http://,
    https:// and ftp:// URIs for both download.file and url.  (A
    warning is only given for ftp://.)
    For ftp:// URIs the default method is now "libcurl" if available
    (which it is on CRAN builds).
    method = "wininet" remains the default for http:// and https://
    URIs but if libcurl is available, using method = "libcurl" is
    preferred.
  INSTALLATION:
  * make check now works also without a LaTeX installation.  (Thanks
    to Sebastian Meyer's PR#18103.)
  BUG FIXES:
  * make check-devel works again in an R build configured with
  - -without-recommended-packages.
  * qnbinom(p, size, mu) for large size/mu is correct now in a range
    of cases (PR#18095); similarly for the (size, prob)
    parametrization of the negative binomial.  Also qpois() and
    qbinom() are better and or faster for extreme cases.  The
    underlying C code has been modularized and is common to all four
    cases of discrete distributions.
  * gap.axis is now part of the axis() arguments which are passed
    from bxp(), and hence boxplot().  (Thanks to Martin Smith's
    report and suggestions in PR#18109.)
  * .First and .Last can again be set from the site profile.
  * seq.int(from, to, *) and seq.default(..) now work better in large
    range cases where from-to is infinite where the two boundaries
    are finite.
  * all.equal(x,y) now returns TRUE correctly also when several
    entries of abs(x) and abs(y) are close to .Machine$double.xmax,
    the largest finite numeric.
  * model.frame() now clears the object bit when removing the class
    attribute of a value via na.action (PR#18100).
  * charClass() now works with multi-character strings on Windows
    (PR#18104, fixed by Bill Dunlap).
  * encodeString() on Solaris now works again in Latin-1 encoding on
    characters represented differently in UTF-8.  Support for
    surrogate pairs on Solaris has been improved.
  * file.show() on Windows now works with non-ASCII path names
    representable in the current native encoding (PR#18132).
  * Embedded R on Windows can now find R home directory via the
    registry even when installed only for the current user
    (PR#18135).
  * pretty(x) with finite x now returns finite values also in the
    case where the extreme x values are close in size to the maximal
    representable number .Machine$double.xmax.
    Also, it's been tweaked for very small ranges and when a boundary
    is close (or equal) to zero; e.g., pretty(c(0,1e-317)) no longer
    has negative numbers, currently still warning about a very small
    range, and pretty(2^-(1024 - 2^-1/(c(24,10)))) is more accurate.
  * The error message for not finding vignette files when weaving has
    correct file sizes now. (Thanks to Sebastian Meyer's PR#18154.)
  * dnbinom(20, &lt;large&gt;, 1) now correctly gives 0, and similar cases
    are more accurate with underflow precaution.  (Reported by Francisco Vera Alcivar in PR#18072.)</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635163200">- repaired https://bugzilla.suse.com/show_bug.cgi?id=1191380
  (rpmacros now go to rpmmacrodir)
- minor clean-ups in spec file</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635768000">- CHANGES IN R 4.1.2:
  C-LEVEL FACILITIES:
  * The workaround in headers R.h and Rmath.h (using namespace std;)
    for the Oracle Developer Studio compiler is no longer needed now
    C++11 is required so has been removed.  A couple more usages of
    log() (which should have been std::log()) with an int argument
    are reported on Solaris.
  * The undocumented limit of 4095 bytes on messages from the
    S-compatibility macros PROBLEM and MESSAGE is now documented and
    longer messages will be silently truncated rather than
    potentially causing segfaults.
  * If the R_NO_SEGV_HANDLER environment variable is non-empty, the
    signal handler for SEGV/ILL/BUS signals (which offers recovery
    user interface) is not set. This allows more reliable debugging
    of crashes that involve the console.
  DEPRECATED AND DEFUNCT:
  * The legacy S-compatibility macros PROBLEM, MESSAGE, ERROR, WARN,
    WARNING, RECOVER, ... are deprecated and will be hidden in R
    4.2.0. R's native interface of Rf_error and Rf_warning has long
    been preferred.
  BUG FIXES:
  * .mapply(F, dots, .) no longer segfaults when dots is not a list
    and uses match.fun(F) as always documented; reported by Andrew
    Simmons in PR#18164.
  * hist(&lt;Date&gt;, ...) and hist(&lt;POSIXt&gt;, ...)  no longer pass
    arguments for rect() (such as col and density) to axis().
    (Thanks to Sebastian Meyer's PR#18171.)
  * \Sexpr{ch} now preserves Encoding(ch). (Thanks to report and
    patch by Jeroen Ooms in PR#18152.)
  * Setting the RNG to "Marsaglia-Multicarry" e.g., by RNGkind(), now
    warns in more places, thanks to Andr'e Gillibert's report and
    patch in PR#18168.
  * gray(numeric(), alpha=1/2) no longer segfaults, fixing PR#18183,
    reported by Till Krenz.
  * Fixed dnbinom(x, size=&lt;very_small&gt;, .., log=TRUE) regression,
    reported by Martin Morgan.
  * as.Date.POSIXlt(x) now keeps names(x), thanks to Davis Vaughan's
    report and patch in PR#18188.
  * model.response() now strips an "AsIs" class typically, thanks to
    Duncan Murdoch's report and other discussants in PR#18190.
  * try() is considerably faster in case of an error and long call,
    as e.g., from some do.call().  Thanks to Alexander Kaever's
    suggestion posted to R-devel.
  * qqline(y = &lt;object&gt;) such as y=I(.), now works, see also
    PR#18190.
  * Non-integer mgp par() settings are now handled correctly in
    axis() and mtext(), thanks to Mikael Jagan and Duncan Murdoch's
    report and suggestion in PR#18194.
  * formatC(x) returns length zero character() now, rather than ""
    when x is of length zero, as documented, thanks to Davis
    Vaughan's post to R-devel.
  * removeSource(fn) now retains (other) attributes(fn).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1647000000">- CHANGES IN R 4.1.3:
  NEW FEATURES:
  * The default version of Bioconductor has been changed to 3.14.
    (This is used by setRepositories and the menus in GUIs.)
  UTILITIES:
  * R CMD check --as-cran has a workaround for a bug in versions of
    file up to at least 5.41 which mis-identify DBF files last
    changed in 2022 as executables.
  C-LEVEL FACILITIES:
  * The legacy S-compatibility macros SINGLE_* in R_ext/Constants.h
    (included by R.h) are deprecated and will be removed in R 4.2.0.
  BUG FIXES:
  * Initialization of self-starting nls() models with initialization
    functions following the pre-R-4.1.0 API (without the ...
    argument) works again for now, with a deprecation warning.
  * Fixed quoting of ~autodetect~ in Java setting defaults to avoid
    inadvertent user lookup due to leading ~, reported in PR#18231 by
    Harold Gutch.
  * substr(., start, stop) &lt;- v now treats _negative_ stop values
    correctly.  Reported with a patch in PR#18228 by Brodie Gaslam.
  * Subscripting an array x without dimnames by a
    length(dim(x))-column character matrix gave "random" non-sense,
    now an error; reported in PR#18244 by Mikael Jagan.
  * ...names() now matches names(list(...)) closely, fixing PR#18247.
  * all.equal(*, scale = s) now works as intended when length(s) &gt; 1,
    partly thanks to Michael Chirico's PR#18272.
  * print(x) for long vectors x now also works for named atomic
    vectors or lists and prints the correct number when reaching the
    getOption("max.print") limit; partly thanks to a report and
    proposal by Hugh Parsonage to the R-devel list.
  * all.equal(&lt;selfStart&gt;, *) no longer signals a deprecation
    warning.
  * reformulate(*, response=r) gives a helpful error message now when
    length(r) &gt; 1, thanks to Bill Dunlap's PR#18281.
  * Modifying globalCallingHandlers inside withCallingHandlers() now
    works or fails correctly, thanks to Henrik Bengtsson's PR#18257.
  * hist(&lt;Date&gt;, breaks = "days") and hist(&lt;POSIXt&gt;, breaks = "secs")
    no longer fail for inputs of length 1.
  * qbeta(.001, .9, .009) and similar cases now converge correctly
    thanks to Ben Bolker's report in PR#17746.
  * window(x, start, end) no longer wrongly signals "'start' cannot
    be after 'end'", fixing PR#17527 and PR#18291.
  * data() now checks that its (rarely used) list argument is a
    character vector - a couple of packages passed other types and
    gave incorrect results.
  * which() now checks its arr.ind argument is TRUE rather coercing
    to logical and taking the first element - which gave incorrect
    results in package code.
  * model.weights() and model.offset() more carefully extract their
    model components, thanks to Ben Bolker and Tim Taylor's R-devel
    post.
  * list.files(recursive = TRUE) now shows all broken symlinks
    (previously, some of them may have been omitted, PR#18296).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1650628800">- CHANGES IN R 4.2.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * The formula method of aggregate() now matches the generic in
    naming its first argument x (resolving PR#18299 by Thomas
    Soeiro).
    This means that calling aggregate() with a formula as a named
    first argument requires name formula in earlier versions of R and
    name x now, so portable code should not name the argument (code
    in many packages did).
  * Calling &amp;&amp; or || with either argument of length greater than one
    now gives a warning (which it is intended will become an error).
  * Calling if() or while() with a condition of length greater than
    one gives an error rather than a warning.  Consequently,
    environment variable _R_CHECK_LENGTH_1_CONDITION_ no longer has
    any effect.
  * Windows users should consult the WINDOWS section below for some
    profound changes including
  * Support for 32-bit builds has been dropped.
  * UTF-8 locales are used where available.
  * The default locations for the R installation and personal
    library folder have been changed.
    Thanks to Tomas Kalibera for months of work on the Windows port
    for this release.
  NEW FEATURES:
  * matrix(x, n, m) now warns in more cases where length(x) differs
    from n * m, as suggested by Abby Spurdle and Wolfgang Huber in
    Feb 2021 on the R-devel mailing list.
    This warning can be turned into an error by setting environment
    variable _R_CHECK_MATRIX_DATA_ to TRUE: R CMD check --as-cran
    does so unless it is already set.
  * Function file_test() in package utils gains tests for symlinks,
    readability and writability.
  * capabilities("libxml") is now false.
    The description of capabilities("http/ftp") now reflects that it
    refers to the default method, no longer the internal one.
  * simplify2array() gains an except argument for controlling the
    exceptions used by sapply().
  * Environment variables R_LIBS_USER and R_LIBS_SITE are both now
    set to the R system default if unset or empty, and can be set to
    NULL to indicate an empty list of user or site library
    directories.
  * The warning for axis()(-like) calls in cases of relatively small
    ranges (typically in log-scale situations) is slightly improved
    _and_ suppressed from explicit calls to .axisPars() as has always
    been the intention.
  * The contrasts setter function `contrasts&lt;-` gains an explicit
    default how.many = NULL rather than just using missing(how.many).
  * grid.pretty() gains a new optional argument n = 5.
  * There is a new function .pretty() with option bounds as a
    technical-utility version of pretty().  It and pretty() gain a
    new argument f.min with a better than back-compatible default.
  * Function grDevices::axisTicks() and related functions such as
    graphics::axis() work better, notably for the log scale; partly
    because of the pretty() improvements, but also because care is
    taken e.g., when ylim is finite but diff(ylim) is infinite.
  * nclass.FD() gains a digits option.
  * The R Mathlib internal C function bd0() (called indirectly from a
    dozen probability density and distribution functions such as
    dpois(), dbinom(), dgamma(), pgamma() _etc_) has been
    complemented by a more sophisticated and (mostly) more accurate C
    function ebd0(), currently called only by internal dpois_raw()
    improving accuracy for R level dpois() and potentially others
    calling it such as dnbinom(), dgamma() or pgamma().  (Thanks to
    Morten Welinder's PR#15628.)
  * write.ftable() gains sep = " " argument as suggested by Thomas
    Soeiro.
  * The names of the locale categories supported by R's
    Sys.getlocale() and Sys.setlocale() are now provided by variable
    .LC.categories in the base namespace.
  * The Date and POSIXt methods for hist() and the histogram method
    for plot() now also use the new default col = "lightgray" in
    consistency with the corresponding change to hist()'s default for
    R 4.0.0.
  * hist.default() gains new fuzz argument, and the histogram plot
    method no longer uses fractional axis ticks when displaying
    counts ("Frequency").
  * mapply() and hence Map() now also obey the "max-or-0-if-any"
    recycling rule, such that, e.g., Map(`+`, 1:3, 1[0]) is valid
    now.
  * as.character(&lt;obj&gt;) for "hexmode" or "octmode" objects now
    fulfils the important basic rule as.character(x)[j] ===
    as.character(x[j]).
  * The set utility functions, notably intersect() have been tweaked
    to be more consistent and symmetric in their two set arguments,
    also preserving a common mode.
  * substr(ch, start,end) &lt;- new now e.g., preserves names(ch); ditto
    for substring(), thanks to a patch from Brodie Gaslam.
  * plot(&lt;lm&gt;) gains a extend.ylim.f argument, in partial response to
    PR#15285; further PR#17784 is fixed thanks to several
    contributors and a patch by Elin Waring.  The Cook's dist
    contours get customizable via cook.col and cook.lty with a
    different default color and their legend is nicer by default and
    customizable via cook.legendChanges.
  * Attempting to subset an object that is not subsettable now
    signals an error of class notSubsettableError. The
    non-subsettable object is contained in the object field of the
    error condition.
  * Subscript-out-of-bounds errors are now signaled as errors of
    class subscriptOutOfBoundsError.
  * Stack-overflow errors are now signaled as errors inheriting from
    class stackOverflowError. See ?stackOverflowError for more
    details.
  * New partly experimental Sys.setLanguage() utility, solving the
    main problem of PR#18055.
  * gettext() and gettextf() get a new option trim = TRUE which when
    set to false allows translations for strings such as "Execution
    halted\n" typical for C code.
  * An experimental implementation of hash tables is now available.
    See ?hashtab for more details.
  * identical() gains a extptr.as.ref argument for requesting that
    external pointer objects be compared as reference objects.
  * reorder() gets an argument decreasing which it passes to sort()
    for level creation; based on the wish and patch by Thomas Soeiro
    in PR#18243.
  * as.vector() gains a data.frame method which returns a simple
    named list, also clearing a long standing 'FIXME' to enable
    as.vector(&lt;data.frame&gt;, mode="list").  This breaks code relying
    on as.vector(&lt;data.frame&gt;) to return the unchanged data frame.
  * legend() is now vectorized for arguments cex, x.intersp, and
    text.width.  The latter can now also be specified as a vector
    (one element for each column of the legend) or as NA for
    computing a proper column wise maximum value of strwidth(legend).
    The argument y.intersp can be specified as a vector with one
    entry for each row of the legend.
    legend() also gains new arguments title.cex and title.font.
    Thanks to Swetlana Herbrandt.
  * Deparsing no longer remaps attribute names dim, dimnames, levels,
    names and tsp to historical S-compatible names (which structure()
    maps back).
  * sample() and sample.int() have additional sanity checks on their
    size and n arguments.
    all.equal.numeric() gains a sanity check on its tolerance
    argument - calling all.equal(a, b, c) for three numeric vectors
    is a surprisingly common error.
    mean(na.rm =), rank(na.last =), barplot(legend.text =),
    boxplot(), contour(drawlabels =), polygon(border =) and
    methods::is(class2 =) have more robust sanity checks on their
    arguments.
    R CMD Rd2pdf (used by R CMD check) has a more robust sanity check
    on the format of \alias{} commands.
  * psigamma(x, deriv) for negative x now also works for deriv = 4
    and 5; their underlying C level dpsifn() is documented in
    'Writing R Extensions'.
  * The HTML help system now uses HTML5 (wish of PR#18149).
  * ks.test() now provides exact p-values also with ties and MC
    p-values in the two-sample (Smirnov) case.  By Torsten Hothorn.
  * ks.test() gains a formula interface, with y ~ 1 for the
    one-sample (Kolmogorov) test and y ~ group for the two-sample
    (Smirnov) test.  Contributed by Torsten Hothorn.
  * The return value from ks.test() now has class c("ks.test",
    "htest") - packages using try() need to take care to use
    inherits() and not == on the class.
  * New functions psmirnov(), qsmirnov() and rsmirnov() in package
    stats implementing the asymptotic and exact distributions of the
    two-sample Smirnov statistic.
  * iconv() now allows sub = "c99" to use C99-style escapes for UTF-8
    inputs which cannot be converted to encoding to.
  * In a forward pipe |&gt; expression it is now possible to use a named
    argument with the placeholder _ in the rhs call to specify where
    the lhs is to be inserted.  The placeholder can only appear once
    on the rhs.
  * The included LAPACK sources have been updated to version 3.10.0,
    except for the four Fortran 77 routines which 3.10.0 has
    re-implemented in Fortran 90 (where the older versions have been
    retained as the R build process does not support Fortran 90).
  * path.expand() and most other uses of tilde expansion now warn if
    a path would be too long if expanded.  (An exception is
    file.exists(), which silently returns false.)
  * trunc(&lt;Date&gt;, *) now supports units = "months" or "years" for
    consistency with the POSIXt method, thanks to Dirk Eddelbuettel's
    proposal in PR#18099.
  * list2DF() now checks that its arguments are of the same length,
    rather than use recycling.
  * The HTML help system has several new features: LaTeX-like math
    can be typeset using either KaTeX or MathJax, usage and example
    code is highlighted using Prism, and for dynamic help the output
    of examples and demos can be shown within the browser if the
    knitr package is installed. These features can be disabled by
    setting the environment variable _R_HELP_ENABLE_ENHANCED_HTML_ to
    a false value.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 15
    and so packages that provide graphics devices should be
    reinstalled.
  * The grid package now allows the user to specify a "vector" of
    pattern fills.  The fill argument to gpar() accepts a list of
    gradients and/or patterns and the functions linearGradient(),
    radialGradient(), and pattern() have a new group argument.
    Points grobs (data symbols) can now also have a pattern fill.
    The grobCoords() function now returns a more informative and
    complex result.
  * The grid package has new functions for drawing isolated groups:
    grid.group(), grid.define(), and grid.use().  These functions add
    compositing operators and affine transformations to R's graphics
    capabilities.
    The grid package also has new functions for stroking and filling
    paths: grid.stroke(), grid.fill(), and grid.fillStroke().
    A new function as.path() allows the user to specify the fill rule
    for a path that is to be used for clipping, stroking, or filling;
    available options are "winding" and "evenodd".  A new function
    as.mask() allows the user to specify the type of a mask;
    available options are "alpha" and "luminance".
    These new features are only supported so far (at most) on the
    Cairo-based graphics devices and on the pdf() device.
  * dev.capabilities() reports on device support for the new
    features.
  * par() now warns about unnamed non-character arguments to prevent
    misuse such as {usr &lt;- par("usr"); par(usr)}.
  INSTALLATION:
  * Facilities for accessing ftp:// sites are no longer tested
    (except _pro tem_ for curlGetHeaders()) as modern browsers have
    removed support.
  * R can now be built with DEFS = -DSTRICT_R_HEADERS .
  PACKAGE INSTALLATION:
  * R CMD INSTALL no longer tangles vignettes. This completes an R
    CMD build change in R 3.0.0 and affects packages built before R
    3.0.2. Such packages should be re-made with R CMD build to have
    the tangled R code of vignettes shipped with the tarball.
  * USE_FC_LEN_T will become the default: this uses the correct
    prototypes for Fortran BLAS/LAPACK routines called from C/C++,
    and requires adjustment of most such calls - see 'Writing R
    Extensions' SS6.6.2.  (This has been supported since R 3.6.2.)
  * Package installation speed for packages installed with
    keep.source has been improved. This resolve the issue reported by
    Ofek Shilon in PR#18236.
  UTILITIES:
  * R CMD check can optionally report files/directories left behind
    in home, /tmp (even though TMPDIR is set) and other directories.
    See the "R Internals" manual for details.
  * R CMD check now reports byte-compilation errors during
    installation.  These are not usually fatal but may result in
    parts of the package not being byte-compiled.
  * _R_CHECK_DEPENDS_ONLY_ can be applied selectively to examples,
    tests and/or vignettes in R CMD check: see the "R Internals"
    manual.
  * _R_CHECK_SRC_MINUS_W_IMPLICIT_ now defaults to true: recent
    versions of Apple clang on macOS have made implicit function
    declarations in C into a compilation error.
  * R CMD check --as-cran makes use of the environment variable
    AUTORECONF.  See the "R Internals" manual SS8 for further details.
  * R CMD check --use-valgrind also uses valgrind when re-building
    vignettes as some non-Sweave vignettes unhelpfully comment out
    all their code when R CMD check runs vignettes.
  * Errors in re-building vignettes (unless there are LaTeX errors)
    are reported by R CMD check as ERROR rather than WARNING when
    running vignettes has been skipped (as it frequently is in CRAN
    checks and by --as-cran).
  * R CMD Rd2pdf gains a --quiet option that is used by R CMD build
    when building the PDF package manual.
  * R CMD Rd2pdf now always runs LaTeX in batch mode, consistent with
    Texinfo &gt;= 6.7. The --batch option is ignored.
  * R CMD build and R CMD check now include the Rd file name and line
    numbers in the error message of an \Sexpr evaluation failure.
  * For packages using the \doi Rd macro (now an install-time \Sexpr)
    but no other dynamic Rd content, R CMD build now produces a
    smaller tarball and is considerably faster - skipping temporary
    package installation.
  C-LEVEL FACILITIES:
  * The non-API header R_ext/R-ftp-http.h is no longer provided, as
    the entry points it covered are now all defunct.
  * A number of non-API declarations and macro definitions have been
    moved from the installed header Rinternals.h to the internal
    header Defn.h. Packages that only use entry points and
    definitions documented to be part of the API as specified in
    'Writing R Extensions' SS6 should not be affected.
  * The macro USE_RINTERNALS no longer has any effect when compiling
    package code.  Packages which also use R_NO_REMAP will need to
    ensure that the remapped names are used for calls to API
    functions that were formerly also made available as macros.
  * The deprecated legacy S-compatibility macros PROBLEM, MESSAGE,
    ERROR, WARN, WARNING, RECOVER, ... are no longer defined in
    R_exts/RS.h (included by R.h).  Replace these by calls to
    Rf_error and Rf_warning (defined in header R_ext/Error.h included
    by R.h).
    Header R_ext/RS.h no longer includes R_ext/Error.h.
  * Header R_ext/Constants.h (included by R.h) when included from C++
    now includes the C++ header cfloat rather than the C header
    float.h (now possible as C++11 is required).
  * The legacy S-compatibility macros DOUBLE_* in R_ext/Constants.h
    (included by R.h) are deprecated.
  * The deprecated S-compatibility macros SINGLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * R_Calloc, R_Free and R_Realloc are preferred to their unprefixed
    forms and error messages now use the prefix. These forms were
    introduced in R 3.4.0 and are available even when
    STRICT_R_HEADERS is defined.
  * rmultinom has been documented in 'Writing R Extensions' SS6 so is
    now part of the R API.
  * Similarly, Rtanpi, called from R level tanpi() is now part of the
    R API.
  * The long-deprecated, undocumented and non-API entry point call_R
    is no longer declared in R_ext/RS.h (included by R.h).
  * The header S.h which has been unsupported since Jan 2016 has been
    removed.  Use R.h instead.
  DEPRECATED AND DEFUNCT:
  * The (non-default and deprecated) method = "internal" for
    download.file() and url() no longer supports http:// nor ftp://
    URIs.  (It is used only for file:// URIs.)
    On Windows, download.file(method = "wininet") no longer supports
    ftp:// URIs.  (It is no longer the default method, which is
    "libcurl" and does.)
    On Windows, the deprecated method = "wininet" now gives a warning
    for http:// and https:// URIs for both download.file() and url().
    (It is no longer the default method.)
  * On Windows, the command-line option --max-mem-size and
    environment variable R_MAX_MEM_SIZE are defunct.  The memory
    allocation limit was important for 32-bit builds, but these are
    no longer supported.
  * default.stringsAsFactors() is now formally deprecated, where that
    was only mentioned on its regular help page, previously.  So it
    now gives a warning if called.
  * unix.time() is defunct now; it had been deprecated since R 3.4.0.
  BUG FIXES:
  * Setting digits = 0 in format(), print.default() (and hence
    typically print()) or options() is again invalid.  Its behaviour
    was platform-dependent, and it is unclear what "zero significant
    digits" should mean (PR#18098).
  * Messages from C code in the cairo section of package grDevices
    are now also offered for translation, thanks to Michael Chirico's
    PR#18123.
  * mean(x) with finite x now is finite also without "long.double"
    capability.
  * R CMD Rd2pdf no longer leaves an empty build directory behind
    when it aborts due to an already existing output file.  (Thanks
    to Sebastian Meyer's PR#18141.)
  * density(x, weights = w, na.rm = TRUE) when anyNA(x) is true, now
    removes weights "in parallel" to x, fixing PR#18151, reported by
    Matthias Gondan.  Additionally, it gets a subdensity option.
  * Conversion of \Sexpr[]{&lt;expR&gt;} to LaTeX or HTML no longer
    produces long blocks of empty lines when &lt;expR&gt; itself contains
    several lines all producing empty output.  Thanks to a report and
    patch by Ivan Krylov posted to R-devel.
  * R CMD build no longer fails if a package vignette uses child
    documents and inst/doc exists.  (Thanks to Sebastian Meyer's
    PR#18156.)
  * When an R documentation ('help' source) file man/foo.Rd in a
    package has \donttest{..} examples with a syntax error, it is now
    signalled as ERROR and with correct line numbers relating to the
  * -Ex.R file, thanks to Duncan Murdoch and Sebastian Meyer's
    reports and patch proposals in PR#17501.
  * Improved determination of the correct translation domain in
    non-base packages, addressing the combination of PR#18092 and
    PR#17998 (#c6) with reports and _augmented_ patch #2904 by
    Suharto Anggono.
    Note that "R-base" is no longer the default domain e.g., for
    top-level calls to gettext(); rather translation needs explicit
    domain = * specification in such cases.
  * identical(attrib.as.set=FALSE) now works correctly with data
    frames with default row names (Thanks to Charlie Gao's PR#18179).
  * txtProgressBar() now enforces a non-zero width for argument char,
    without which no progress can be visible.
  * dimnames(table(d)) is more consistent in the case where d is a
    list with a single component, thanks to Thomas Soeiro's report to
    R-devel.
    Further, table(d1, d2) now gives an error when d1 and d2 are data
    frames as suggested by Thomas in PR#18224.
  * Fix for drawing semi-transparent lines and fills on the native
    Windows graphics device (PR#18219 and PR#16694).  Thanks to Nick
    Ray for helpful diagnosis on Bugzilla.
  * The deparser now wraps sub-expressions such as if(A) ..  with
    parentheses when needed; thanks to Duncan Murdoch's PR#18232 and
    Lionel Henry's patches there.
  * remove.packages() no longer tries to uninstall Priority: base
    packages, thanks to a report and suggestions by Colin Fay in
    PR#18227.
  * win.metafile() now has xpinch and ypinch arguments so that the
    user can override Windows' (potentially wrong) guess at device
    dimensions.
  * x[i] and x[[i]] for non-integer i should now behave in all cases
    as always documented: the index used is equivalent to
    as.integer(i) unless that would overflow where trunc(i) is used
    instead; thanks to Suharto Anggono's report and patch proposals
    in PR#17977.
  * asOneSidedFormula() now associates the resulting formula with the
    global environment rather than the evaluation environment created
    for the call.
  * &lt;bibentry&gt;$name now matches the field name case-insensitively,
    consistent with bibentry() creation and the replacement method.
  * cbind() failed to detect some length mismatches with a mixture of
    time-series and non-time-series inputs.
  * The default LaTeX style file Sweave.sty used by the RweaveLatex
    driver no longer loads the obsolete ae package; thanks to a
    report by Thomas Soeiro in PR#18271.  Furthermore, it now skips
    \usepackage[T1]{fontenc} for engines other than pdfTeX (if
    detected) or if the new [nofontenc] option is used.
  * smooth.spline() now stores its logical cv argument more safely,
    fixing a rare bug when printing, and also stores n.
  * smooth.spline(x,y,*) now computes the cv.crit statistic
    correctly, also when is.unsorted(x), fixing PR#18294.
  * The data.frame method of rbind() now warns when binding
    not-wholly-recycling vectors, by analogy to the default method
    (for matrices).
  * setAs() finds the correct class for name to when multiple
    packages define a class with that name. Thanks to Gabor Csardi
    for the report.
  * Fix for detaching a package when two classes of the same name are
    present in method signatures for the same generic. Thanks to
    Gabor Csardi for the report.
  * match.arg("", c("", "a", "B")) gives a better error message, in
    part from PR#17959, thanks to Elin Waring.
  * R CMD Sweave --clean no longer removes pre-existing files or
    subdirectories (PR#18242).
  * The quartz() device no longer splits polylines into subpaths.
    That has caused narrowly-spaced lines with many points to always
    look solid even when dashed line type was used due to dash phase
    restarts.
  * Deparsing constructs such as quote(1 + `!`(2) + 3) works again as
    before R 3.5.0, thanks to the report and patch in PR#18284 by
    Suharto Anggono.
  * as.list(f) for a factor f now keeps names(f), fixing PR#18309.
  * qbeta(.001, .9, .009) and analogous qf() calls now return a
    correct value instead of NaN or wrongly 1, all with a warning;
    thanks to the report by Ludger Goeminne in PR#18302.
  * plot.lm() failed to produce the plot of residuals vs.  factor
    levels (i.e., which=5 when leverages are constant) for models
    with character predictors (PR#17840).
  * interaction.plot(..., xtick = TRUE) misplaced the x-axis line
    (PR#18305).
  * Not strictly fixing a bug, format()ing and print()ing of
    non-finite Date and POSIXt values NaN and +/-Inf no longer show
    as NA but the respective string, e.g., Inf, for consistency with
    numeric vector's behaviour, fulfilling the wish of PR#18308.
  * R CMD check no longer runs test scripts generated from
    corresponding .Rin files twice and now signals an ERROR if
    processing an .Rin script fails.
  * tools::Rd2txt() used for plain-text help pages now renders \hrefs
    (if tools::Rd2txt_options(showURLs = TRUE)) and \urls with
    percent-encoding and standards-compliant delimiting style (angle
    brackets and no URL: prefix).  \email is now rendered with a
    mailto: prefix.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1655985600">- CHANGES IN R 4.2.1:
  NEW FEATURES:
  * New function utils::findCRANmirror() to find out if a CRAN mirror
    has been selected, otherwise fallback to the main site.  This
    behaves in the same way as tools::CRAN_package_db() and is
    intended for packages wishing to access CRAN for purposes other
    than installing packages.
    The need for this was shown by a day when the main CRAN website
    was offline and a dozen or so packages which had its URL
    hardcoded failed their checks.
  INSTALLATION on a UNIX-ALIKE:
  * The libraries searched for by --with-blas (without a value) now
    include BLIS (after OpenBLAS but before ATLAS).  And on macOS,
    the Accelerate framework (after ATLAS).  (This is patterned after
    the AX_BLAS macro from the Autoconf Archive.)
  * The included LAPACK sources have been updated to 3.10.1.
  UTILITIES:
  * The (full path to) the command tidy to be used for HTML
    validation can be set by environment variable R_TIDYCMD.
  * Setting environment variable _R_CHECK_RD_VALIDATE_RD2HTML_ to a
    false value will override R CMD check --as-cran and turn off HTML
    validation.  This provides a way to circumvent a problematic
    tidy.
    The 2006 version that ships with macOS is always skipped.
  C-LEVEL FACILITIES:
  * The undocumented legacy declarations of Sint, Sfloat, SINT_MAX
    and SINT_MIN in header R.h are deprecated.
  BUG FIXES:
  * fisher.test(d) no longer segfaults for "large" d; fixing PR#18336
    by preventing/detecting an integer overflow reliably.
  * tar(., files=*) now produces correctly the warning about invalid
    uid or gid of files, fixing PR#18344, reported by Martin Morgan.
  * tk_choose.files() with multi = FALSE misbehaved on paths
    containing spaces (PR#18334) (regression introduced in R 4.0.0).
  * sort(x, partial = ind, *) now works correctly notably for the
    non-default na.last = FALSE or TRUE, fixing PR#18335 reported by
    James Edwards.
  * Environment variable _R_CHECK_XREFS_REPOSITORIES_ is only used
    for checking .Rd cross-references in R CMD check (as documented)
    and not for other uses looking for a CRAN mirror.
  * The search for a CRAN mirror when checking packages now uses
    getOption("repos") if that specifies a CRAN mirror, even when it
    does not also specify all three Bioconductor repositories (as was
    previously required).
  * The HTML code generated by tools::Rd2HTML() has been improved to
    pass tidy 5.8.0.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1667217600">- CHANGES IN R 4.2.2:
  NEW FEATURES:
  * tools::Rdiff(useDiff = TRUE) checks for the presence of an
    external diff command and switches to useDiff = FALSE if none is
    found.  This allows R CMD Rdiff to always work.
  * On Windows, environment variable R_LIBCURL_SSL_REVOKE_BEST_EFFORT
    can be used to switch to only 'best-effort' SSL certificate
    revocation checks with the default "libcurl" download method.
    This reduces security, but may be needed for downloads to work
    with MITM proxies (PR#18379).
  * (macOS) The run-time check for libraries from XQuartz for X11 and
    Tcl/Tk no longer uses otool from the Apple Developer Tools
    (PR#18400).
  * The LaTeX style for producing the PDF manuals, Rd.sty, now loads
    the standard amsmath, amsfonts and amssymb packages for greater
    coverage of math commands in the Rd \eqn and \deqn macros.  The
    \mathscr LaTeX command is also provided (via the mathrsfs
    package, if available, or the amsfonts bundle otherwise),
    fulfilling the wish of PR#18398.
  * (Windows) The default format of readClipboard() and
    writeClipboard() has been changed to 13 (CF_UNICODETEXT).
  INSTALLATION on a UNIX-ALIKE:
  * The PDF manuals (if built) can be compacted by the new target
    make compact-pdf (at the top level or in directory doc/manual).
  * There is now configure support for LLVM clang 15 on Linux, which
    defaults to position-independent (PIE) executables whereas
    gfortran does not.
  * Many small changes to ease compilation (and suppress warnings)
    with LLVM clang 15.
  BUG FIXES:
  * Rscript -e would fail if stdin were closed (Reported by Henrik
    Bengtsson.)
  * qt(*, log.p=TRUE) in outer tails no longer produces NaN in its
    final steps, thus fixing PR#18360.
  * tools::Rd2latex() now escapes hashes and ampersands when writing
    URLs, fixing LaTeX errors with such URLs in \tabular.
  * When isGeneric(f, fdef=*) is used with mismatching names, the
    warning is better understandable; reported (with fix) in PR#18370
    by Gabe Becker.
  * poly(x, n) now works again (and is now documented) when x is a
    "Date" or "POSIXct" object, or of another class while fulfilling
    mode(x) == "numeric".  This also enables poly(x, *, raw=TRUE) for
    such variables.  Reported by Michael Chirico to R-devel.
  * write.table(), write.csv() and write.csv2() restore their
    numerical precision (internal equivalent of digits = 15) after an
    interrupt (PR#18384).
  * One can now read also byte FF from a clipboard connection
    (PR#18385).
  * source("") and source(character()) now give more helpful error
    messages.
  * R CMD check --as-cran set _R_CHECK_TIMINGS_ too late to have the
    intended effect.
  * as.POSIXlt(x) now also works with very large dates x, fixing
    PR#18401 reported by Hannes M"uhleisen.
  * Files can now be extracted even from very large zip archives
    (PR#18390, thanks to Martin Jakt).
  * Non-finite objects of class "POSIXlt" are now correctly coerced
    to classes "Date" and "POSIXct"; following up on the extension to
    format() them correctly.
  * Added methods for is.finite(), is.infinite() and is.nan() for
    "POSIXlt" date-time objects.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1678881600">- CHANGES IN R 4.2.3:
  C-LEVEL FACILITIES:
  * The definition of DL_FUNC in R_ext/Rdynload.h has been changed to
    be fully C-compliant.  This means that functions loaded _via_ for
    example R_GetCCallable need to be cast to an appropriate type if
    they have any arguments.
  * .Machine has a new element sizeof.time_t to identify old systems
    with a 32-bit type and hence a limited range of date-times (and
    limited support for dates millions of years from present).
  PACKAGE INSTALLATION:
  * (Windows) The default C++ standard had accidentally been left at
    C++11 when it was changed to C++14 on Unix.
  BUG FIXES:
  * As "POSIXlt" objects may be "partially filled" and their list
    components meant to be recycled, length() now is the length of
    the longest component.
  * as.POSIXlt.Date() could underflow for dates in the far past (more
    than half a million years BCE).
  * as.Date.POSIXlt(x) would return "1970-01-01" instead of NA in R
    4.2.2, e.g., for
    x &lt;- as.POSIXlt(c("2019-01-30","2001-1-1"))
    x$mon &lt;- c(0L, NA); as.Date(x)
  * R CMD check failed to apply enabled _R_CHECK_SUGGESTS_ONLY_ to
    examples and vignettes (regression in R 4.2.0).
  * R CMD check did not re-build vignettes in separate processes by
    default (regression in R 4.2.0).
  * Running examples from HTML documentation now restores previous
    knitr settings and options (PR#18420).
  * Quartz: fonts are now located using Core Graphics API instead of
    deprecated ATS which is no longer supported in the macOS 13 SDK
    (PR#18426).  This also addresses an issue where the currently
    used font in the Quartz device context was not correctly
    retained.
  * (Windows) Math symbols in text drawing functions are again
    rendered correctly (PR#18440).  This fixes a regression in R
    4.2.1 caused by a fix in PR#18382 which uncovered an issue in
    GraphApp due to which the symbol charset was not used with TT
    Symbol font face.
  * (Windows) Installing a package with a src/Makefile.{win,ucrt}
    file includes ~/.R/Makevars.win64 in the search for user
    makevars, as documented in "R Installation and Administration"
    and done for packages with a src/Makevars.{win,ucrt} file.
  * format(&lt;POSIXlt_w/_unbalanced_sec&gt;, "....%OS&lt;n&gt;") with n &gt; 0 no
    longer accidentally uses the unbalanced seconds, thanks to
    Suharto Anggono's report (including patch) in PR#18448.
  * solve.default(a, b) works around issues with some versions of
    LAPACK when a contains NA or NaN values.
  * When UseMethod() cannot dispatch, it no longer segfaults
    producing the error message in case of a long class(), thanks to
    Joris Vankerschaver's report (including patch) in PR#18447.
  * When example(foo, ..) produces graphics on an interactive device
    it needs to open itself, it now leaves devAskNewPage() unchanged
    even when it was FALSE, thus fixing a 14 years old '&lt;FIXME&gt;'.
  * packageDescription() again catches errors from encoding
    conversions. This also fixes broken packageVersion() in C locale
    on systems where iconv does not support transliteration.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1681128000">- add patch to build with libcurl &gt;= 8</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1682078400">- CHANGES IN R 4.3.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Calling &amp;&amp; or || with LHS or (if evaluated) RHS of length greater
    than one is now always an error, with a report of the form
    'length = 4' in coercion to 'logical(1)'
    Environment variable _R_CHECK_LENGTH_1_LOGIC2_ no longer has any
    effect.
  NEW FEATURES:
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.10.1.  (This caused some platform-dependent
    changes to package check output.)  And then to the sources from
    LAPACK version 3.11.0 (with changes only to double complex
    subroutines).
  * The included LAPACK sources have been updated to include the four
    Fortran 90 routines rather than their Fortran 77 predecessors.
    This may give some different signs in SVDs or
    eigendecompositions..  (This completes the transition to LAPACK
    3.10.x begun in R 4.2.0.)
  * The LAPACK sources have been updated to version 3.11.0.  (No new
    subroutines have been added, so this almost entirely bug fixes:
    Those fixes do affect some computations with NaNs, including R's
    NA.)
  * The parser now signals _classed_ errors, notably in case of the
    pipe operator |&gt;.  The error object and message now give line and
    column numbers, mostly as proposed and provided by Duncan Murdoch
    in PR#18328.
  * toeplitz() is now generalized for asymmetric cases, with a
    toeplitz2() variant.
  * xy.coords() and xyz.coords() and consequently, e.g., plot(x,y,
    log = "y") now signal a _classed_ warning about negative values
    of y (where log(.) is NA).  Such a warning can be specifically
    suppressed or caught otherwise.
  * Regular expression functions now check more thoroughly whether
    their inputs are valid strings (in their encoding, e.g. in
    UTF-8).
  * The performance of grep(), sub(), gsub() and strsplit() has been
    improved, particularly with perl = TRUE and fixed = TRUE.  Use of
    useBytes = TRUE for performance reasons should no longer be
    needed and is discouraged: it may lead to incorrect results.
  * apropos() gains an argument dot_internals which is used by the
    completion (help(rcompgen)) engine to also see base internals
    such as .POSIXct().
  * Support in tools::Rdiff() for comparing uncompressed PDF files is
    further reduced - see its help page.
  * qqplot(x, y, ...) gains conf.level and conf.args arguments for
    computing and plotting a confidence band for the treatment
    function transforming the distribution of x into the distribution
    of y (Switzer, 1976, _Biometrika_). Contributed by Torsten
    Hothorn.
  * Performance of package_dependencies() has been improved for cases
    when the number of dependencies is large.
  * Strings newly created by gsub(), sub() and strsplit(), when any
    of the inputs is marked as "bytes", are also marked as "bytes".
    This reduces the risk of creating invalid strings and accidental
    substitution of bytes deemed invalid.
  * Support for readLines(encoding = "bytes") has been added to allow
    processing special text files byte-by-byte, without creating
    invalid strings.
  * iconv(from = "") now takes into account any declared encoding of
    the input elements and uses it in preference to the native
    encoding.  This reduces the risk of accidental creation of
    invalid strings, particularly when different elements of the
    input have different encoding (including "bytes").
  * Package repositories in getOption("repos") are now initialized
    from the repositories file when utils is loaded (if not already
    set, e.g., in .Rprofile).  (From a report and patch proposal by
    Gabriel Becker in PR#18405.)
  * compactPDF() gets a verbose option.
  * type.convert() and hence read.table() get new option tryLogical =
    TRUE with back compatible default.  When set to false, converts
    "F" or "T" columns to character.
  * Added new unit prefixes "R" and "Q" for abbreviating
    (unrealistically large) sizes beyond 10^{27} in standard = "SI",
    thanks to Henrik Bengtsson's PR#18435.
  * as.data.frame()'s default method now also works fine with atomic
    objects inheriting from classes such as "roman", "octmode" and
    "hexmode", such fulfilling the wish of PR#18421, by Benjamin
    Feakins.
  * The as.data.frame.vector() utility now errors for wrong-length
    row.names.  It warned for almost six years, with "Will be an
    error!".
  * sessionInfo() now also contains La_version() and reports codepage
    and timezone when relevant, in both print() and toLatex() methods
    which also get new option tzone for displaying timezone
    information when locale = FALSE.
  * New function R_compiled_by() reports the C and Fortran compilers
    used to build R, if known.
  * predict(&lt;lm&gt;, newdata = *) no longer unnecessarily creates an
    offset of all 0s.
  * solve() for complex inputs now uses argument tol and by default
    checks for 'computational singularity' (as it long has done for
    numeric inputs).
  * predict(&lt;rank-deficient lm&gt;, newdata=*) now obeys a new argument
    rankdeficient, with new default "warnif", warning only if there
    are non-estimable cases in newdata.  Other options include
    rankdeficient = "NA", predicting NA for non-estimable newdata
    cases.  This addresses PR#15072 by Russ Lenth and is based on his
    original proposal and discussions in PR#16158 also by David Firth
    and Elin Waring.  Still somewhat experimental.
  * Rgui console implementation now works better with the NVDA screen
    reader when the full blinking cursor is selected.  The underlying
    improvements in cursor handling may help also other screen
    readers on Windows.
  * The drop-field control in GraphApp can now be left with the TAB
    key and all controls can be navigated in the reverse order using
    the Shift+TAB key, improving accessibility of the Rgui
    configuration editor.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now fully accurate
    (instead of to "only" minimally five digits).
  * demo(error.catching) now also shows off withWarnings() and
    tryCatchWEMs().
  * As an experimental feature the placeholder _ can now also be used
    in the rhs of a forward pipe |&gt; expression as the first argument
    in an extraction call, such as _$coef. More generally, it can be
    used as the head of a chain of extractions, such as _$coef[[2]].
  * Spaces in the environment variable used to choose the R session's
    temporary directory (TMPDIR, TMP and TEMP are tried in turn) are
    now fatal.  (On Windows the 'short path' version of the path is
    tried and used if that does not contain a space.)
  * all.equal.numeric() gets a new optional switch giveErr to return
    the numeric error as attribute.  Relatedly,
    stopifnot(all.equal&lt;some&gt;(a, b, ..)) is as "smart" now, as
    stopifnot(all.equal(....)) has been already, thus allowing
    customized all.equal&lt;Some&gt;() wrappers.
  * R on Windows is now able to work with path names longer than 260
    characters when these are enabled in the system (requires at
    least Windows 10 version 1607).  Packages should be updated to
    work with long paths as well, instead of assuming PATH_MAX to be
    the maximum length.  Custom front-ends and applications embedding
    R need to update their manifests if they wish to allow this
    feature.  See
    &lt;https://blog.r-project.org/2023/03/07/path-length-limit-on-windows&gt;
    for more information.
  * 'Object not found' and 'Missing argument' errors now give a more
    accurate error context. Patch provided by Lionel Henry in
    PR#18241.
  * The @ operator is now an S3 generic. Based on contributions by
    Tomasz Kalinowski in PR#18482.
  * New generic chooseOpsMethod() provides a mechanism for objects to
    resolve cases where two suitable methods are found for an Ops
    Group Generic. This supports experimenting with alternative
    object systems. Based on contributions by Tomasz Kalinowski in
    PR#18484.
  * inherits(x, what) now accepts values other than a simple
    character vector for argument what. A new generic, nameOfClass(),
    is called to resolve the class name from what. This supports
    experimenting with alternative object systems. Based on
    contributions by Tomasz Kalinowski in PR#18485.
  * Detection of BLAS/LAPACK in use (sessionInfo()) with FlexiBLAS
    now reports the current backend.
  * The "data.frame" method for subset() now warns about extraneous
    arguments, typically catching the use of = instead of == in the
    subset expression.
  * Calling a:b when numeric a or b is longer than one may now be
    made into an error by setting environment variable
    _R_CHECK_LENGTH_COLON_ to a true value, along the proposal in
    PR#18419 by Henrik Bengtsson.
  * density(x, weights = *) now warns if automatic bandwidth
    selection happens without using weights; new optional warnWbw may
    suppress the warning.  Prompted by Christoph Dalitz' PR#18490 and
    its discussants.
  * rm(list = *) is faster and more readable thanks to Kevin Ushey's
    PR#18492.
  * The plot.lm() function no longer produces a normal Q-Q plot for
    GLMs. Instead it plots a half-normal Q-Q plot of the absolute
    value of the standardized deviance residuals.
  * The print() method for class "summary.glm" no longer shows
    summary statistics for the deviance residuals by default.  Its
    optional argument show.residuals can be used to show them if
    required.
  * The tapply() function now accepts a data frame as its X argument,
    and allows INDEX to be a formula in that case. by.data.frame()
    similarly allows INDICES to be a formula.
  * The performance of df[j] &lt;- value (including for missing j) and
    write.table(df) has been improved for data frames df with a large
    number of columns.  (Thanks to Gabriel Becker's PR#18500,
    PR#18503 and discussants, prompted by a report from Toby Dylan
    Hocking on the R-devel mailing list.)
  * The matrix multiply operator %*% is now an S3 generic, belonging
    to new group generic matrixOps.  From Tomasz Kalinowski's
    contribution in PR#18483.
  * New function array2DF() to convert arrays to data frames,
    particularly useful for the list arrays created by tapply().
  DATES and TIMES:
  * On platforms where (non-UTC) datetimes before 1902 (or before
    1900 as with system functions on recent macOS) are guessed by
    extrapolating time zones from 1902-2037, there is a warning at
    the first use of extrapolation in a session.  (As all time zones
    post 2037 are extrapolation, we do not warn on those.)
  * (Platforms using --with-internal-tzone, including Windows and by
    default macOS). How years are printed in dates or date-times can
    be controlled by environment variable R_PAD_YEARS_BY_ZERO.  The
    default remains to pad to 4 digits by zeroes, but setting value
    no gives no padding (as used by default by glibc).
  * strftime() tries harder to determine the offset for the "%z"
    format, and succeeds on the mainstream R platforms.
  * strftime() has a limit of 2048 bytes on the string produced -
    attempting to exceed this is an error.  (Previously it silently
    truncated at 255 bytes.)
  * sessionInfo() records (and by default prints) the system time
    zone as part of the locale information.  Also, the source
    (system/internal) of the date-time conversion and printing
    functions.
  * Objects of class "POSIXlt" created in this version of R always
    have 11 components: component zone is always set, and component
    gmtoff is set for times in UTC and usually set on the (almost
    all) platforms which have C-level support, otherwise is NA.
  * There are comprehensive validity checks on the structure of
    objects of class "POSIXlt" when converting (including formatting
    and printing).  (This avoids mis-conversions of hand-crafted
    objects.)
  * There is some support for using the native date-time routines on
    macOS: this is only viable on recent versions (e.g. 12.6 and 13)
    and does get wrong some historical changes (before 1900, during
    WWII).  Use of --with-internal-tzone remains the default.
  * as.POSIXct(&lt;numeric&gt;) and as.POSIXlt(.) (without specifying
    origin) now work.  So does as.Date(&lt;numeric&gt;).
  * as.Date.POSIXct(., tz) now treats several tz values, notably
    "GMT" as equivalent to "UTC", proposed and improved by Michael
    Chirico and Joshua Ulrich in PR#17674.
  * Experimental balancePOSIXlt() utility allows using "ragged" and
    or out-of-range "POSIXlt" objects more correctly, e.g., in
    subsetting and subassignments.  Such objects are now documented.
    More experimentally, a "POSIXlt" object may have an attribute
    "balanced" indicating if it is known to be filled or fully
    balanced.
  * Functions axis.Date() and axis.POSIXct() are rewritten to gain
    better default tick locations and better default formats by using
    prettyDate(). Thanks to Swetlana Herbrandt.
  * The mapping of Windows' names for time zones to IANA's 'Olson'
    names has been updated.  When ICU is available (it is by
    default), it is used to get a mapping for the current region set
    in Windows.  This can be overridden by setting environment
    variable TZ to the desired Olson name - see OlsonNames() for
    those currently available.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 16
    and so packages that provide graphics devices should be
    reinstalled.
  * The grDevices and grid packages have new functions for rendering
    typeset glyphs, primarily: grDevices::glyphInfo() and
    grid::grid.glyph().
    Rendering of typeset glyphs is only supported so far on the
    Cairo-based graphics devices and on the pdf() and quartz()
    devices.
  * The defined behaviour for "clear" and "source" compositing
    operators (via grid::grid.group()) has been changed (to align
    better with simple interpretation of original Porter-Duff
    definitions).
  * Support for gradients, patterns, clipping paths, masks, groups,
    compositing operators, and affine transformations has been added
    to the quartz() device.
  INSTALLATION on a UNIX-ALIKE:
  * A system installation of generic LAPACK 3.10.0 or later will be
    preferred to the version in the R sources.
    configure option --with-lapack=no (equivalently --without-lapack)
    forces compilation of the internal LAPACK sources.
    If --with-lapack is not specified, a system liblapack is looked
    for and used if it reports version 3.10.0 or later and does not
    contain BLAS routines.
    Packages using LAPACK will need to be reinstalled if this changes
    to using an external library.
  * On aarch64 Linux platforms using GCC, configure now defaults to
  - fPIC (instead of -fpic), as desired in PR#18326.
  * configure now checks conversion of datetimes between POSIXlt and
    POSIXct around year 2020.  Failure (which has been seen on
    platforms missing tzdata) is fatal.
  * If configure option --with-valgrind-instrumentation is given
    value 1 or 2, option --with-system-valgrind-headers is now the
    default and ignored (with a warning).  It is highly recommended
    that the system headers are installed alongside valgrind: they
    are part of its packaging on some Linux distributions and
    packaged separately (e.g. in the valgrind-devel RPM) on others.
    configure will give a warning if they are not found.
    The system headers will be required in a future release of R to
    build with valgrind instrumentation.
  * libcurl 8.x is now accepted by configure: despite a change in
    major version number it changes neither API nor ABI.
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools43, an update of the Rtools42 toolchain.  It is
    based on gcc 12 and newer versions of MinGW-W64, binutils and
    libraries.  At this time R-devel can still be built using
    Rtools42 without changes, but when R-devel is installed via the
    installer, it will by default look for Rtools43.
  * Old make targets rsync-extsoft and 32-bit ones that are no longer
    needed have been removed.
  * Default builds (including for packages) no longer select C99.
    Thus the C standard used is the default for the compiler, which
    for the toolchain in Rtools43 is C17.  (This is consistent with
    Unix builds.)
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++17 where
    available (which it is on all currently checked platforms): if
    not C++14 or C++11 is used if available otherwise C++ is not
    supported.
  * USE_FC_LEN_T is the default: this uses the correct
    (compiler-dependent) prototypes for Fortran BLAS/LAPACK routines
    called from C/C++, and requires adjustment of many such calls -
    see 'Writing R Extensions' SS6.6.1.
  * There is initial support for C++23 as several compilers are now
    supporting -std=c++23 or -std=c++2b or similar.  As for C++20,
    there no additional configure checks for C++23 features beyond a
    check that the compiler reports a __cplusplus value greater than
    that in the C++20 standard.  C++ feature tests should be used.
  * There is support for a package to indicate the version of the C
    standard which should be used to compile it, and for the
    installing user to specify this.  In most cases R defaults to the
    C compiler's default standard which is C17 (a `bug-fix' of C11) -
    earlier versions of R or compilers may have defaulted to C99.
    Current options are:
    USE_C17 Use a standard that is at most C17.  The intention is to
    allow legacy packages to still be installed when later C
    standards become the default, including packages using new
    keywords as identifiers or with K&amp;R-style function
    declarations.  This will use C17 if available, falling back
    to C11.
    USE_C90 Use the C90 (aka C89) standard.  (As that standard did
    not require compilers to identify that version, all we can
    verify is that the compiler does not claim to be using a
    later standard.  It may accept C99 features - for example
    clang accepts // to make comments.)
    USE_C99 Use the C99 standard. This should be rarely needed - it
    avoids the few new features of C11/C17 which can be useful if
    a package assumes them if C17 is specified and they are not
    implemented.
    USE_C23 Use C23 (or in future, later).  Compiler/library support
    for C23 is still being implemented, but LLVM clang from
    15.0.0 and the upcoming GCC 13 have quite extensive support.
    These can be specified as part of the SystemRequirements field in
    the package's DESCRIPTION file or _via_ options --use-C17 and so
    on of R CMD INSTALL and R CMD SHLIB.
    For further details see "Writing R Extensions" SS1.2.5.
  * (Windows) A src/Makefile.ucrt or src/Makefile.win file is now
    included after R_HOME/etcR_ARCH/Makeconf and so no longer needs
    to include that file itself.  Installation of a package with such
    a file now uses a site Makevars file in the same way as a package
    with a src/Makevars.win file would.
  * configure is now passed crucial variables such as CC and CFLAGS
    in its environment, as many packages were not setting them (as
    documented in 'Writing R Extensions' SS1.2).
    This has most effect where configure is used to compile parts of
    the package - most often by cmake or libtool which obfuscate the
    actual compile commands used.
    Also used for configure.win and configure.ucrt on Windows.
  FORTRAN FLAGS:
  * The flag -fno-optimize-sibling-calls is no longer forced for
    gfortran 7 and later.  It should no longer be needed now using
    'hidden' character-length arguments when calling BLAS/LAPACK
    routines from C/C++ is the default even for packages.  (Unless
    perhaps packages call Fortran code from C/C++ without using R's
    headers and without allowing for these arguments.)
  C-LEVEL FACILITIES:
  * The deprecated S-compatibility macros DOUBLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * The deprecated legacy typedefs of Sint and Sfloat in header R.h
    are no longer defined, and that header no longer includes header
    limits.h from C nor climits from C++.
  * New macro CAD5R() is provided in Rinternals.h and used in a few
    places in the R sources.
  * ALTREP now supports VECSXP vectors. Contributed by Gabor Csardi
    in PR#17620.
  * The Rcomplex definition (in header R_ext/Complex.h) has been
    extended to prevent possible mis-compilation when interfacing
    with Fortran (PR#18430).  The new definition causes compiler
    warnings with static initializers such as {1, 2}, which can be
    changed to {.r=1, .i=2}.
    Using the new definition from C++ depends on compiler extensions
    supporting C features that have not been incorporated into the
    C++ standards but are available in g++ and clang++: this may
    result in C++ compiler warnings but these have been worked around
    for recent versions of common compilers (GCC, Apple/LLVM clang,
    Intel).
    It is intended to change the inclusion of header R_ext/Complex.h
    by other R headers, so C/C++ code files which make use of
    Rcomplex should include that header explicitly.
  UTILITIES:
  * R CMD check does more checking of package .Rd files, warning
    about invalid email addresses and (some) invalid URIs and noting
    empty \item labels in description lists.
  * R CMD check now also reports problems when reading package news
    in md (file NEWS.md) and (optionally) plain text (file NEWS)
    formats.
  * _R_CHECK_TIMINGS_ defaults to a value from the environment even
    for R CMD check --as-cran; this allows for exceptionally fast or
    slow platforms.
    It now applies to checking PDF and HTML versions of the manuals,
    and 'checking CRAN incoming feasibility'.
  * R CMD check can optionally (but included in --as-cran) check
    whether HTML math rendering _via_ KaTeX works for the package .Rd
    files.
  * Non-interactive debugger invocations can be trapped by setting
    the environment variable _R_CHECK_BROWSER_NONINTERACTIVE_ to a
    true value.  This is enabled by R CMD check --as-cran to detect
    the use of leftover browser() statements in the package.
  * The use of sprintf and vsprintf from C/C++ has been deprecated in
    macOS 13 and is a known security risk.  R CMD check now reports
    (on all platforms) if their use is found in compiled code:
    replace by snprintf or vsnprintf respectively. [*NB:* whether
    such calls get compiled into the package is platform-dependent.]
  * Where recorded at installation, R CMD check reports the C and
    Fortran compilers used to build R.
    It reports the OS in use (if known, as given by osVersion) as
    well as that R was built for.
    It notes if a C++ standard was specified which is older than the
    current default: many packages have used C++11 to mean 'not
    C++98' - as C++11 is the minimum supported since R 4.0.0, that
    specification can probably be removed.
  * R CMD INSTALL reports the compilers (and on macOS, the SDK) used,
    and this is copied to the output of R CMD check.
    Where a C++ standard is specified, it is reported.
  * R CMD check's 'checking compilation flags in Makevars' has been
    relaxed to accept the use of flags such as -std=f2008 in
    PKG_FFLAGS.
  * tools::buildVignettes() has a new argument skip, which is used by
    R CMD check to skip (and note) vignettes with unavailable
    \VignetteDepends (PR#18318).
  * New generic .AtNames() added to enable class-specific completions
    after @. The formerly internal function findMatches() is now
    exported, mainly for use in methods for .DollarNames() and
    .AtNames().
  DEPRECATED AND DEFUNCT:
  * default.stringsAsFactors() is defunct.
  * Calling as.data.frame.&lt;class&gt;() directly (for 12 atomic classes)
    is going to be formally deprecated, currently activated by
    setting the environment variable
    _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ to non-empty, which also
    happens in R CMD check --as-cran.
  BUG FIXES:
  * Hashed environments with sizes less than 5 can now grow.
    (Reported to R-devel by Duncan Garmonsway.)
  * as.character(&lt;Rd&gt;, deparse = TRUE) failed to re-escape curly
    braces in LaTeX-like text.  (Reported by Hadley Wickham in
    PR#18324.)
  * library() now passes its lib.loc argument when requiring Depends
    packages; reported (with fix) in PR#18331 by Mikael Jagan.
  * R CMD Stangle: improved message about 'Output' files.
  * head(x, n) and tail(x, n) now signal an error if n is not
    numeric, instead of incidentally "working" sometimes returning
    all of x.  Reported and discussed by Colin Fay, in PR#18357.
  * The "lm" method for summary() now gives the correct F-statistic
    when the model contains an offset.  Reported in PR#18008.
  * C() and `contrasts&lt;-`() now preserve factor level names when
    given a function object (as opposed a function name which did
    preserve names). Reported in PR#17616.
  * c(a = 1, 2)[[]] no longer matches 2 but rather signals a
    _classed_ error.  Reported and analysed by Davis Vaughan in
    PR#18367, a duplicate of PR#18004, by Jan Meis et al.  For
    consistency, NULL[[]] is also erroneous now.  x[[]] &lt;- v gives an
    error of the same class "MissingSubscriptError".
  * The relist() function of utils now supports NULL elements in the
    skeleton (PR#15854).
  * ordered(levels = *) (missing x) now works analogously to factor(,
    ordered=TRUE); reported (with fix) by Achim Zeileis in PR#18389.
  * User-defined Rd macro definitions can now span multiple lines,
    thanks to a patch from Duncan Murdoch. Previously, the Rd parser
    silently ignored everything after the first line.
  * Plain-text help (tools::Rd2txt()) now preserves an initial blank
    line for text following description list items.
  * tools::Rd2HTML() and tools::Rd2latex() no longer split \arguments
    and \value lists at Rd comments.
  * tools::Rd2latex() now correctly handles optional text outside
    \items of argument lists as well as bracketed text at the
    beginning of sections, e.g., \value{[NULL]}.
  * as.character(&lt;POSIXt&gt;) now behaves more in line with the methods
    for atomic vectors such as numbers, and is no longer influenced
    by options().  Ditto for as.character(&lt;Date&gt;).  The
    as.character() method gets arguments digits and OutDec with
    defaults _not_ depending on options().  Use of as.character(*,
    format = .) now warns.
  * Similarly, the as.character.hexmode() and *.octmode() methods
    also behave as good citizen methods and back compatibility option
    keepStr = TRUE.
  * The as.POSIXlt(&lt;POSIXlt&gt;) and as.POSIXct(&lt;POSIXct&gt;) default
    methods now do obey their tz argument, also in this case.
  * as.POSIXlt(&lt;Date&gt;) now does apply a tz (time zone) argument, as
    does as.POSIXct(); partly suggested by Roland Fuss on the R-devel
    mailing list.
  * as.Date.POSIXlt(x) now also works when the list components are of
    unequal length, aka "partially filled" or "ragged".
  * expand.model.frame() looked up variables in the wrong environment
    when applied to models fitted without data.  Reported in
    PR#18414.
  * time() now (also) uses the ts.eps = getOption("ts.eps") argument
    and thus by default rounds values very close to the start (or
    end) of a year.  Based on a proposal by Andre"i V. Kostyrka on
    R-help.
  * Printing of a factanal() result with just one factor and sort =
    TRUE now works regularly, fixing PR#17863 by Timothy Bates,
    thanks to the 'R Contributors' working group.
  * Printing 0-length objects of class "factor", "roman", "hexmode",
    "octmode", "person", "bibentry", or "citation" now prints
    something better, one of which fixes PR#18422, reported by
    Benjamin Feakins.
  * Sys.timezone() queries timedatectl only if systemd is loaded;
    addressing a report by Jan Gorecki in PR#17421.
  * The formula method of cor.test() had scoping problems when
    environment(formula) was not the calling environment; reported
    with a patch proposal by Mao Kobayashi in PR#18439.
  * attach() of an environment with active bindings now preserves the
    active bindings.  Reported by Kevin Ushey in PR#18425.
  * BLAS detection now works also with system-provided libraries not
    available as regular files.  This fixes detection of the
    Accelerate framework on macOS since Big Sur.  Reported by David
    Novgorodsky.
  * download.file() gives a helpful error message in case of an
    invalid download.file.method option, thanks to Colin Fay's report
    in PR#18455.
  * Sporadic crashes of Rterm when using completion have been fixed.
  * Rprof() is now more reliable.  A livelock in thread
    initialization with too short sampling interval has been fixed on
    macOS.  A deadlock in using the C runtime has been fixed on
    Windows.  A potential deadlock has been prevented on Unix.
  * Cursor placement in Rgui now works even after a fixed-width font
    is selected.
  * Mandatory options (options()) are now set on startup so that
    saving and restoring them always works (PR#18372).
  * Package installation, R CMD INSTALL or install.packages(*), now
    parses each of the &lt;pkg&gt;/R/*.R files individually instead of
    first concatenating and then parse()ing the large resulting file.
    This allows parser or syntax errors to be diagnosed with correct
    file names and line numbers, thanks to Simon Dedman's report and
    Bill Dunlap's patch in PR#17859.
    This _does_ require syntactically self contained R source files
    now, fixing another inadvertent bug.
  * predict.lm(&lt;model with offset&gt;) now finds the offset in the
    correct environment, thanks to Andr'e Gillibert's report and patch
    in PR#18456.
  * getInitial(&lt;formula&gt;) now finds the selfStart model in the
    correct environment.  (Reported by Ivan Krylov in PR#18368.)
  * Fix for possible segfault when using recently-added graphics
    features, such as gradients, clipping paths, masks, and groups
    with pdf(file=NULL).
  * class(m) &lt;- class(m) no longer changes a matrix m by adding a
    class _attribute_.
  * packageDate(pkg) now only warns once if there is no pkg.
  * When ts() creates a multivariate time series, "mts", it also
    inherits from "array" now, and is.mts() is documented _and_
    stricter.
  * Rd2txt() now preserves line breaks of \verb Rd content and from
    duplicated \cr.  The former also fixes the rendering of verbatim
    output from Rd \Sexpr in plain-text help.
  * uniroot(f, interval) should no longer wrongly converge _outside_
    the interval in some cases where abs(f(x)) == Inf for an x at the
    interval boundary, thanks to posts by Ben Bolker and Serguei
    Sokol on R-devel.
  * Vectorized alpha handling in palette functions such as in gray(),
    rainbow(), or hcl.colors() works correctly now, thanks to Achim
    Zeileis' report and patch in PR#18476.
  * Formatting and print()ing of bibentry objects has dropped the
    deprecated citation.bibtex.max argument, such that the bibtex
    argument's default for print.bibentry() depends directly on the
    citation.bibtex.max option, whereas in format.bibentry() the
    option no longer applies.
  * Attempting to use a character string naming a foreign function
    entry point in a foreign function call in a package will now
    signal an error if the packages has called R_forceSymbols to
    specify that symbols must be used.
  * An error in table() could permanently set options(warn=2)
    promoting all subsequent warnings to errors.
  * The sigma() function gave misleading results for binary GLMs.  A
    new method for objects of class "glm" returns the square root of
    the estimate of the dispersion parameter using the same
    calculation as summary.glm().
  * bs() and ns() in the (typical) case of automatic knot
    construction, when some of the supposedly inner knots coincide
    with boundary knots, now moves them inside (with a warning),
    building on PR#18442 by Ben Bolker.
  * R CMD on Windows now skips the site profile with --no-site-file
    and --vanilla even when R_PROFILE is set (PR#18512, from Kevin
    Ushey).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1686916800">- CHANGES IN R 4.3.1:
  C-LEVEL FACILITIES:
  * The C-level API version of R's integrate(), Rdqags() in Applic.h,
    now returns the correct number of integrand evaluations neval,
    fixing PR#18515 reported and diagnosed by Stephen Wade.
  * The C prototypes for LAPACK calls dspgv and dtptrs in
    R_exts/Lapack.h had one too many and one too few character length
    arguments - but this has not caused any known issues. To get the
    corrected prototypes, include
    [#]include &lt;Rconfig.h&gt; // for PR18534fixed
    [#]ifdef PR18534fixed
    [#] define usePR18534fix 1
    [#]endif
    [#]include &lt;R_exts/Lapack.h&gt;
    in your C/C++ code (PR#18534).
  INSTALLATION:
  * Many of the checks of esoteric Internet operations and those
    using unreliable external sites have been moved to a new target
    that is not run by default and primarily intended for the core
    developers.  To run them use
    cd tests; make test-Internet-dev
  BUG FIXES:
  * .S3methods(), typically called from methods(), again marks
    methods from package base as visible.
    Also, the visibility of non-base methods is again determined by
    the method's presence in search().
  * tools::Rdiff() is now more robust against invalid strings, fixing
    installation tests on Windows without Rtools installed
    (PR#18530).
  * Fix (new) bug in hcl.colors(2, *), by Achim Zeileis (PR#18523).
  * head(., &lt;illegal&gt;) and tail(..) now produce more useful "Error in
    ...." error messages, fixing PR#18362.
  * Package code syntax on Windows is checked in UTF-8 when UTF-8 is
    the native encoding.
  * na.contiguous(x) now also returns the first run, when it is at
    the beginning and there is a later one of the same length;
    reported to R-devel, including a fix, by Georgi Boshnakov.
    Further, by default, it modifies only an existing attr(*,"tsp")
    but otherwise no longer sets one.
  * chol(&lt;not pos.def&gt;, pivot = &lt;T|F&gt;) now gives a correct error or
    warning message (depending on pivot), thanks to Mikael Jagan's
    (PR#18541).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1699012800">- CHANGES IN R 4.3.2:
  NEW FEATURES:
  * The default initialization of the "repos" option from the
    repositories file at startup can be skipped by setting
    environment variable R_REPOSITORIES to NULL such that
    getOption("repos") is empty if not set elsewhere.
  * qr.X() is now an implicit S4 generic in methods.
  * iconv(to = "ASCII//TRANSLIT") is emulated using substitution on
    platforms which do not support it (notably Alpine Linux).  This
    should give a human-readable conversion in ASCII on all platforms
    (rather than NA_character_).
  * trans3d() gains options continuous and verbose addressing the
    problem of possible "wrap around" when projecting too long
    curves, as reported by Achim Zeileis in PR#18537.
  * tools::showNonASCII() has been rewritten to work better on macOS
    14 (which has a changed implementation of iconv()).
  * tiff(type = "quartz") (the default on macOS) now warns if
    compression is specified: it continues to be ignored.
  INSTALLATION on a UNIX-ALIKE:
  * There is some support for building with Intel's LLVM-based
    compilers on x86_64 Linux, such as (C) icx, (C++) ipcx and
    (Fortran) ifx from oneAPI 2023.x.y.
  * There is support for using LLVM's flang-new as the Fortran
    compiler from LLVM 16.0.x (preferably 17.0.0 or later).
  UTILITIES:
  * R CMD check reports the use of the Fortran 90 random number
    generator RANDOM_NUMBER() and the subroutines to initialize it.
    'Writing R Extensions' has example code to use R's RNGs from
    Fortran.
  BUG FIXES:
  * substr(x, n, L) &lt;- cc now works (more) correctly for multibyte
    UTF-8 strings x when L &gt; nchar(x), thanks to a report and patch
    by 'Architect 95'.
  * contrib.url(character()) now returns 0-length character() as
    documented, which also avoids spurious warnings from
    available.packages() et al. in the edge case of an empty vector
    of repository URLs.
  * readChar(., 4e8) no longer fails, thanks to Kodi Arfer's report
    (PR#18557).
  * lapply(&lt;list&gt;, as.data.frame) no longer warns falsely for some
    base vector components.
  * Communication between parent and child processes in the multicore
    part of parallel could fail on platforms that do not support an
    arbitrarily large payload in system functions read()/write() on
    pipes (seen on macOS where a restriction to INT_MAX bytes is
    documented, without doing a partial read unlike Linux). The
    payload is now split into 1Gb chunks to avoid that problem.
    (PR#18571)
  * qqplot(x,y, conf.level=.) gives better confidence bounds when
    length(x) != length(y), thanks to Alexander Ploner's report and
    patch proposal (PR#18557).
  * norm(&lt;0-length&gt;, "2") now gives zero instead of an error, as all
    the other norm types, thanks to Mikael Jagan's PR#18542.
  * Build-stage Rd macros \packageAuthor and \packageMaintainer now
    process Authors@R, fixing NA results when the package DESCRIPTION
    omits Author and Maintainer fields.
  * Formatting and printing complex numbers could give things like
    0.1683-0i because of rounding error: -0i is now replaced by +0i.
  * postscript() refused to accept a title comment containing the
    letter "W" (PR#18599).
  * isoreg(c(1,Inf)) signals an error instead of segfaulting, fixing
    PR#18603.
  * tiff(type = "Xlib") was only outputting the last page of
    multi-page plots.
  * tools::latexToUtf8() again knows about \~{n} and other letters
    with tilde, fixing a regression in R 4.3.0, and about \^{i} as an
    alternative to \^{\i} (similarly with other accents).
    Furthermore, LaTeX codes for accented I letters are now correctly
    converted, also fixing related mistakes in
    tools::encoded_text_to_latex().
  * tar(*, tar = "internal") no longer creates out-of-spec tar files
    in the very rare case of user or group names longer than 32
    bytes, fixing PR#17871 with thanks to Ivan Krylov.
  * When using the "internal" timezone datetime code, adding a
    fraction of a second no longer adds one second, fixing PR#16856
    from a patch by Ivan Krylov.
  * tools::checkRd() no longer produces spurious notes about
    "unnecessary braces" from multi-line Rd results of \Sexpr macros.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1709208000">- CHANGES IN R 4.3.3:
  NEW FEATURES:
  * iconv() now fixes up variant encoding names such as "utf8"
    case-insensitively.
  DEPRECATED AND DEFUNCT:
  * The legacy encoding = "MacRoman" is deprecated in pdf() and
    postscript(): support was incomplete in earlier versions of R.
  BUG FIXES:
  * Arguments are now properly forwarded to methods on S4 generics
    with ... in the middle of their formal arguments. This was broken
    for the case when a method introduced an argument but did not
    include ... in its own formals. Thanks to Herv'e Pag`es for the
    report PR#18538.
  * Some invalid file arguments to pictex(), postscript() and xfig()
    opened a file called NA rather than throw an error.  These
    included postscript(NULL) (which some people expected to work
    like pdf(NULL)).
  * Passing filename = NA to svg(), cairo_pdf(), cairo_ps() or the
    Cairo-based bitmap devices opened a file called NA: it now throws
    an error.
  * quartz(file = NA) opened a file called NA, including when used as
    a Quartz-based bitmap device.  It now gives an error.
  * rank(&lt;long vector&gt;) now works, fixing PR#18617, thanks to Ilia
    Kats.
  * seq.int() did not adequately check its length.out argument.
  * match(&lt;POSIXct&gt;, .) is correct again for differing time zones,
    ditto for "POSIXlt", fixing PR#18618 reported by Bastian Klein.
  * drop.terms(*, dropx = &lt;0-length&gt;) now works, fixing PR#18563 as
    proposed by Mikael Jagan.
  * drop.terms(*) keeps + offset(.) terms when it should, PR#18565,
    and drop.terms() no longer makes up a response, PR#18566, fixing
    both bugs thanks to Mikael Jagan.
  * getS3method("t", "test") no longer finds the t.test() function,
    fixing PR#18627.
  * pdf() and postscript() support for the documented Adobe encodings
    "Greek" and "Cyrilllic" was missing (although the corresponding
    Windows' codepages could be used).
  * Computations of glyph metric information for pdf() and
    postscript() did not take into account that transliteration could
    replace one character by two or more (only seen on macOS 14) and
    typically warned that the information was not known.
  * rank(x) no longer overflows during integer addition, when
    computing rank average for largish but not-yet long vector x,
    fixing PR#18630, thanks to Ilia Kats.
  * list.files() on Windows now returns also files with names longer
    that 260 bytes (the Windows limit is 260 characters).
    Previously, some file names particularly with 'East Asian'
    characters were omitted.
  * cov2cor(&lt;0 x 0&gt;) now works, fixing PR#18423 thanks to Mikael
    Jagan and Elin Waring.
  * cov2cor(&lt;negative diagonal&gt;) and similar now give one warning
    instead of two, with better wording, fixing PR#18424 thanks to
    Mikael Jagan.
  * tools:: startDynamicHelp() now ensures port is in proper range,
    fixing PR#18645.
  * pbeta(x, a,b) is correct now for x=0 or 1 in the boundary cases
    where a or b or both are 0, fixing PR#18672 thanks to Michael
    Fay.
  * pmatch(x, table) for large table, also called for data frame row
    selection, dfrm[nm, ], is now interruptible, fixing PR#18656.
  * predict(&lt;rank-deficient lm&gt;, newdata=*) fix computing of nbasis,
    see Russ Lenth's comment 29 in PR#16158.
  * Added a work-around for a bug in macOS 14.3.1 and higher which
    prevents R plots in the Quartz Cocoa device from updating on
    screen.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1713960000">- CHANGES IN R 4.4.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Startup banners, R --version, sessionInfo() and R CMD check no
    longer report (64-bit) as part of the platform as this is almost
    universal - the increasingly rare 32-bit platforms will still
    report (32-bit).
    On Windows, ditto for window titles.
  * is.atomic(NULL) now returns FALSE, as NULL is not an atomic
    vector.  Strict back-compatibility would replace is.atomic(foo)
    by (is.null(foo) || is.atomic(foo)) but should happen only
    sparingly.
  NEW FEATURES:
  * The confint() methods for "glm" and "nls" objects have been
    copied to the stats package.  Previously, they were stubs which
    called versions in package MASS. The MASS namespace is no longer
    loaded if you invoke (say) confint(glmfit).  Further, the "glm"
    method for profile() and the plot() and pairs() methods for class
    "profile" have been copied from MASS to stats.  (profile.nls()
    and plot.profile.nls() were already in stats.)
  * The confint() and profile methods for "glm" objects have gained a
    possibility to do profiling based on the Rao Score statistic in
    addition to the default Likelihood Ratio. This is controlled by a
    new test = argument.
  * The pairs() method for "profile" objects has been extended with a
    which = argument to allow plotting only a subset of the
    parameters.
  * The "glm" method for anova() computes test statistics and
    p-values by default, using a chi-squared test or an F test
    depending on whether the dispersion is fixed or free.  Test
    statistics can be suppressed by giving argument test a false
    logical value.
  * In setRepositories() the repositories can be set using their
    names via name = instead of index ind =.
  * methods() and .S3methods() gain a all.names option for the (rare)
    case where functions starting with a . should be included.
  * Serializations can now be interrupted (e.g., by Ctrl-C on a
    Unix-alike) if they take too long, e.g., from save.image(),
    thanks to suggestions by Ivan Krylov and others on R-devel.
  * New startup option --max-connections to set the maximum number of
    simultaneous connections for the session.  Defaults to 128 as
    before: allowed values up to 4096 (but resource limits may in
    practice restrict to smaller values).
  * R on Windows (since Windows 10 2004) now uses the new Segment
    Heap allocator. This may improve performance of some
    memory-intensive applications.
  * When R packages are built, typically by R CMD build &lt;pkg&gt;, the
    new --user=&lt;build_user&gt; option overrides the (internally
    determined) user name, currently Sys.info()["user"] or LOGNAME.
    This is a (modified) fulfillment of Will Landau's suggestion in
    PR#17530.
  * tools::testInstalledBasic() gets new optional arguments outDir
    and testSrcdir, e.g., allowing to use it in a &lt;builddir&gt; !=
    &lt;srcdir&gt; setup, and in standard "binary" Windows installation
  * if* a source tests/ folder is present.
  * range(&lt;DT_with_Inf&gt;, finite = TRUE) now work for objects of class
    "Date", "POSIXct", and "POSIXlt" with infinite entries,
    analogously to range.default(), as proposed by Davis Vaughan on
    R-devel.  Other range()-methods can make use of new function
    .rangeNum().
  * New .internalGenerics object complementing .S3PrimitiveGenerics,
    for documentation and low-level book-keeping.
  * grid() now invisibly returns the x- and y- coordinates at which
    the grid-lines were drawn.
  * norm(., type) now also works for complex matrices.
  * kappa(., exact = TRUE, norm = *) now works for all norms and also
    for complex matrices.  In symmetric / triangular cases, the new
    argument uplo = "U" | "L" allows the upper or lower triangular
    part to be specified.
  * memDecompress(type = "unknown") recognizes compression in the
    default 'zlib' format as used by memCompress(type = "gzip").
  * memCompress() and memDecompress() will use the libdeflate library
    (&lt;https://github.com/ebiggers/libdeflate&gt;) if installed.  This
    uses the same type of compression for type = "gzip" but is 1.5-2x
    faster than the system libz library on some common platforms: the
    speed-up may depend on the library version.
  * diff() for objects of class "Date", "POSIXct", and "POSIXlt"
    accepts a units argument passed via ....
  * Dynamic help now does a much better job of rendering package
    DESCRIPTION metadata.
  * Rprof() gains an event argument and support for elapsed (real)
    time profiling on Unix (PR#18076).
  * filled.contour() gains a key.border argument.
  * tools::update_pkg_po() gets arguments pot_make and mo_make for
    _not_ re-making the corresponding files, and additionally a
    verbose argument.
  * Hexadecimal string colour specifications are now accepted in
    short form, so, for example, we can use "#123", which is
    equivalent to "#112233".
    Thanks to MikeFC for the original idea and Ella Kaye, Malcolm
    Barrett, George Stagg, and Hanne Oberman for the patch.
  * Plain-text help shows \var markup by angle brackets.
  * The new experimental primitive function declare() is intended to
    eventually allow information about R code to be communicated to
    the interpreter, compiler, and code analysis tools. The syntax
    for declarations is still being developed.
  * Functions psmirnov(), qsmirnov() and rsmirnov() in package stats
    have had argument two.sided renamed to alternative, to take into
    account that the permutation distributions of the one-sided
    statistics can be different in the case of ties.  Consequence of
    PR#18582.
  * sort() is now an implicit S4 generic in methods.
  * Formatting and printing, format(z), print(z), of complex vectors
    z no longer zap relatively small real or imaginary parts to zero,
    fixing PR#16752.  This is an API change, as it was documented
    previously to round real and imaginary parts together on purpose,
    producing nicer looking output.  As mentioned, e.g. in the PR,
    this change is compatible with many other "R-like" programming
    environments.
    We have simplified the internal code and now basically format the
    real and imaginary parts independently of each other.
  * New experimental functions Tailcall() and Exec() to support
    writing stack-space-efficient recursive functions.
  * Where characters are attempted to be plotted by pdf(),
    postscript() and xfig() which are not in the selected 8-bit
    character set (most often Latin-1) and the R session is using a
    UTF-8 locale, the warning messages will show the UTF-8 character
    rather than its bytes and one dot will be substituted per
    character rather than per byte.  (Platforms whose iconv() does
    transliteration silently plot the transliteration.)
    In a UTF-8 locale some transliterations are now done with a
    warning (e.g., dashes and Unicode minus to hyphen, ligatures are
    expanded, permille (‰) is replaced by o/oo), although the OS may
    have got there first.  These are warnings as they will continue
    to be replaced by dots in earlier versions of R.
  * The matrix multiplication functions crossprod() and tcrossprod()
    are now also primitive and S3 generic, as %*% had become in R
    4.3.0.
  * source() and example() have a new optional argument catch.aborts
    which allows continued evaluation of the R code after an error.
  * The non-Quartz tiff() devices allow additional types of
    compression if supported by the platform's libtiff library.
  * The list of base and recommended package names is now provided by
    tools::standard_package_names().
  * cairo_pdf() and cairo_ps() default to onefile = TRUE to closer
    match pdf() and postscript().
  * New option catch.script.errors provides a documented way to catch
    errors and then continue in non-interactive use.
  * L %||% R newly in base is an expressive idiom for the phrases
    if(!is.null(L)) L else R or if(is.null(L)) R else L.
  * The return value from warnings() now always inherits from
    "warnings" as documented, now also in the case of no warnings
    where it previously returned NULL.
  * as.complex("1i") now returns 0 + 1i instead of NA with a warning.
  * z &lt;- c(NA, 1i) now keeps the imaginary part Im(z[1]) == 0, no
    longer coercing to NA_complex_.  Similarly, cumsum(z) correctly
    sums real and imaginary parts separately, i.e., without
    "crosstalk" in case of NAs.
  * On Alpine Linux iconv() now maps "latin2", "latin-2", "latin9"
    and "latin-9" to encoding names the OS knows about
    (case-insensitively).
  * iconv(sub = "Unicode") now always zero-pads to four (hex) digits,
    rather than to 4 or 8.  (This seems to have become the convention
    once Unicode restricted the number of Unicode points to 2^21 - 1
    and so will never need more than 6 digits.)
  * NCOL(NULL) now returns 0 instead of 1, for consistency with
    cbind().
  * The information for the Euro glyph missing from the Adobe .afm
    files for the Courier, Helvetica and Times families has been
    copied from their URW equivalents - this will improve vertical
    centring in the pdf() and postscript() devices.
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.12.0.  The changes are almost entirely cosmetic.
  * The included LAPACK sources have been updated to version 3.12.0
    and some further double-complex routines added.
  * There are new font families for the 2014--5 URW 2.0 fonts (see
    ?pdf) which are included in recent versions of Ghostscript.
    These have font widths for most Greek glyphs and a few others
    which were missing from the original versions (whose font
    families remain available for reproducibility, although
    Ghostscript-based viewers will render using the 2.0 versions).
  * Improve the large-n efficiency of as.matrix(&lt;dist&gt;), thanks an R
    contributors effort, notably by Tim Taylor and Heather Turner,
    see PR#18660.
  * The default and numeric methods of all.equal() get a check.class
    option.
  * zapsmall() gets new optional arguments, function mFUN and min.d,
    for extra flexibility; fulfills a wish in PR#18199.  Also, it is
    now an implicit S4 generic in package methods.
  * The Rd filter for aspell() gains an ignore argument.
  * New generic function sort_by(), primarily useful for the
    data.frame method which can be used to sort rows of a data frame
    by one or more columns.
  * The icence headers for the RPC code in src/extra/xdr have been
    updated to use the GPL-compatible licence published by Oracle
    America in 2010.
  * New function pkg2HTML() in tools to create single-page HTML
    reference manuals for R packages.
  * The byte code evaluator now uses less C stack space for recursive
    calls to byte-compiled functions. It also makes more of an effort
    to avoid allocations for scalar return values.
  * New completion option backtick (disabled by default) allows
    non-syntactic completions to be wrapped in backquotes. This is
    currently only useful for Jupyter notebooks via the IRkernel
    package, and may cause problems for other backends.
  INSTALLATION:
  * The parser has been updated to work with bison 3.8.2, which is
    now used for the pre-generated parsers in gram.c, file.c, and
    gramRd.c. A few parser error messages have changed, which may
    affect code that relies on exact messages.
  INSTALLATION on a UNIX-ALIKE:
  * System valgrind headers are now required to use configure option
  - -with-valgrind-instrumentation with value 1 or 2.
  * configure will warn if it encounters a 32-bit build, as that is
    nowadays almost untested.
  * Environment variable R_SYSTEM_ABI is no longer used and so no
    longer recorded in etc/Renviron (it was not on Windows and was
    only ever used when preparing package tools).
  * If the libdeflate library and headers are available, libdeflate
    rather than libz is used to (de)compress R objects in lazy-load
    databases.  Typically tasks spend up to 5% of their time on such
    operations, although creating lazy-data databases is one of the
    exceptions.
    This can be suppressed if the library is available by the
    configure option --without-libdeflate-compression.
  * configure option --enable-lto=check has not worked reliably since
    2019 and has been removed.
  * The minimum autoconf requirement for a maintainer build has been
    increased to autoconf 2.71.
    It is intended to increase this to 2.72 for R 4.5.0: the
    distributed configure file was generated using 2.72.
  * The minimum version requirement for an external LAPACK has been
    reduced to 3.9.0.
  * No default C++ compiler is set if no C++17 compiler is detected:
    there is no longer an automatic fallback to C++14 or C++11.
    Compilers from the last five years should have sufficient
    support: for others macros CXX and CXXSTD can be set in file
    config.site to provide a fallback if needed.
    The Objective-C++ compiler now by default uses the standard
    selected by R for C++ (currently C++17) rather than the default
    standard for the C++ compiler (which on macOS is still C++98).
  INSTALLATION on macOS:
  * A new configure option --with-newAccelerate makes use of Apple's
    'new' BLAS / LAPACK interfaces in their Accelerate framework.
    Those interfaces are only available in macOS 13.3 or later, and
    building requires SDK 13.3 or later (from the Command Line Tools
    or Xcode 14.3 or later).
    By default the option uses new Accelerate for BLAS calls: to also
    use it for LAPACK use option --with-newAccelerate=lapack.  The
    later interfaces provide LAPACK 3.9.1 rather than 3.2.1: 3.9.1 is
    from 2021-04 and does not include the improved algorithms
    introduced in LAPACK 3.10.0 (including for BLAS calls).
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools44, an update of the Rtools43 toolchain.  It is
    based on GCC 13 and newer versions of MinGW-W64, binutils and
    libraries (targeting 64-bit Intel CPUs).  R-devel can no longer
    be built using Rtools43 without changes.
  * Rtools44 has experimental support for 64-bit ARM (aarch64) CPUs
    _via_ the LLVM 17 toolchain using lld, clang/flang-new and
    libc++.
  UTILITIES:
  * R CMD check notes when S4-style exports are used without
    declaring a strong dependence on package methods.
  * tools::checkRd() (used by R CMD check) detects more problems with
    \Sexpr-based dynamic content, including bad nesting of \Sexprs
    and invalid arguments.
  * tools::checkRd() now reports Rd titles and section names ending
    in a period; this is ignored by R CMD check unless environment
    variable _R_CHECK_RD_CHECKRD_MINLEVEL_ is set to -5 or smaller.
  * R CMD check now notes Rd files without an \alias, as long
    documented in 'Writing R Extensions' §1.3.1.  The check for a
    missing \description has been moved from tools::checkRd() to
    tools::checkRdContents().
  * R CMD check now visits inst/NEWS.Rd and OS-specific man
    subdirectories when checking Rd files.
  * tools::checkDocFiles() and tools::checkRdContents() now also
    check internal Rd files by default, but "specially" (ignoring
    missing documentation of arguments).
  * R CMD Rdiff gets option --useEx.
  * R CMD check now warns on non-portable uses of Fortran KIND such
    as INTEGER(KIND=4) and REAL(KIND=8).
    To see the failing lines set environment variable
    _R_CHECK_FORTRAN_KIND_DETAILS_ to a true value.
  * When checking Rd files, R CMD check now notes some of the "lost
    braces" that tools::checkRd() finds.  Typical problems are Rd
    macros missing the initial backslash (e.g., code{...}), in-text
    set notation (e.g., {1, 2}, where the braces need escaping), and
    \itemize lists with \describe-style entries of the form
    \item{label}{description}.
  * R CMD INSTALL (and hence check) will compile C++ code with
  - DR_NO_REMAP if environment variable _R_CXX_USE_NO_REMAP_ is set
    to a true value.  It is planned that this will in future become
    the default for compiling C++.
  * The new built-in Rd macro \dontdiff{} can be used to mark example
    code whose output should be ignored when comparing check output
    to reference output (tests/Examples/&lt;pkg&gt;-Ex.Rout.save).  The
    \dontdiff tag, like \donttest, is _not_ shown on the rendered
    help page, so provides a clean alternative to ##
    IGNORE_RDIFF_(BEGIN|END) comments.
  * R CMD build when there is no NAMESPACE, now uses the recommended
    exportPattern("^[^.]"), instead of exporting everything.
  * R CMD check now warns about non-ASCII characters in the NAMESPACE
    file (in addition to R files). Such packages are not portable and
    may fail to install on some platforms.
  C-LEVEL FACILITIES:
  * Headers R_ext/Applic.h and R-ext/Linpack.h used to include
    R_ext/BLAS.h although this was undocumented and unneeded by their
    documented entry points.  They no longer do so.
  * New function R_missing(), factored out from do_missing(), used to
    fix PR#18579.
  * SEXP type S4SXP has been renamed to OBJSXP to support
    experimenting with alternative object systems.  The S4SXP value
    can still be used in C code but is now deprecated.  Based on
    contributions from the R Consortium's Object-Oriented Programming
    Working Group.
  * New function pow1p(x,y) for accurate (1+x)^y.
  * mkCharLenCE was incorrectly documented to take a size_t length
    but was implemented with int (and character strings in R are
    limited to 2^31 - 1 bytes).
  DEPRECATED AND DEFUNCT:
  * data() no longer handles zipped data from long-defunct (since R
    2.13.0) --use-zip-data installations.
  * The legacy graphics devices pictex() and xfig() are now
    deprecated.  They do not support recent graphics enhancements and
    their font handling is rudimentary. The intention is to retain
    them for historical interest as long as they remain somewhat
    functional.
  * Support for encoding = "MacRoman" has been removed from the pdf()
    and postscript() devices - this was a legacy encoding supporting
    classic macOS up to 2001 and no longer has universal libiconv
    support.
  * is.R() is deprecated as no other S dialect is known to be in use
    (and this could only identify historical dialects, not future
    ones).
    Further information on calls can be obtained by setting the
    environment variable _R_DEPRECATED_IS_R_ to error which turns the
    deprecation warning into an error and so by default gives a
    traceback.  (This is done by R CMD check --as-cran.)
  * UseMethod() no longer forwards local variables assigned in the
    generic function into method call environments before evaluating
    the method body. This makes method calls behave more like
    standard function calls and makes method code easier to analyze
    correctly.
  * The twelve as.data.frame.&lt;class&gt;() methods which were deprecated
    only via _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ and in R CMD
    check --as-cran are formally deprecated now in favour of calling
    as.data.frame() or as.data.frame.vector().  The deprecation
    "check" now works also when as.data.frame() is S4 generic thanks
    to Ivan Krylov.
  * The default method for the directional comparison operators &lt;, &gt;,
    &lt;=, and &gt;= now signals an error when one of the operands is a
    language object, i.e. a symbol or a call.
  * For terms.formula(), deprecate abb and neg.out arguments
    _formally_ in addition to just documenting it.
  BUG FIXES:
  * The methods package is more robust to not being attached to the
    search path.  More work needs to be done.
  * pairwise.t.test() misbehaved when subgroups had 0 DF for
    variance, even with pool.sd = TRUE.  (PR#18594 by Jack Berry).
  * Probability distribution functions [dpq]&lt;distrib&gt;(x, *), but also
    bessel[IKJY](x, .) now consistently preserve attributes(x) when
    length(x) == 0, e.g., for a 2 x 0 matrix, thanks to Karolis
    Koncevičius' report PR#18509.
  * Group "Summary" computations such as sum(1:3, 4, na.rm = 5, NA,
    7, na.rm = LL) now give an error instead of either 17 or NN for
    LL true or false, as proposed by Ivan Krylov on the R-devel
    mailing list.  (This also means it is now an error to specify
    na.rm more than once.)
  * as.complex(x) now returns complex(real = x, imaginary = 0) for
    _all_ numerical and logical x, notably also for NA or
    NA_integer_.
  * Directories are now omitted by file.copy(, recursive = FALSE) and
    in file.append() (PR#17337).
  * gsub() and sub() are now more robust to integer overflow when
    reporting errors caused by too large input strings (PR#18346).
  * Top-level handlers are now more robust to attempts to remove a
    handler whilst handlers are running (PR#18508).
  * The handling of Alt+F4 in dialogs created on Windows using
    GraphApp has been fixed (PR#13870).
  * density() more consistently computes grid values for the
    FFT-based convolution, following Robert Schlicht's analysis and
    proposal in PR#18337, correcting density values typically by a
    factor of about 0.999.  Argument old.coords = TRUE provides back
    compatibility.
  * palette.colors() gains a name argument that defaults to FALSE
    controlling whether the vector of colours that is returned has
    names (where possible).  PR#18529.
  * tools::xgettext() no longer extracts the (non-translatable) class
    names from warningCondition and errorCondition calls.
  * S3method(&lt;gen&gt;, &lt;class&gt;, &lt;func&gt;) in the NAMESPACE file now works
    (again) when &lt;func&gt; is visible from the namespace, e.g.,
    imported, or in base.
  * getParseData(f) now also works for a function defined in the
    first of several &lt;pkg&gt;/R/*.R source files, thanks to Kirill
    Müller's report and Duncan Murdoch's patch in PR#16756.
  * Rd \Sexpr macros with nested #ifdef conditionals were not
    processed.
  * A non-blocking connection with non-default encoding (such as a
    socket) now correctly returns from readLines() after new data has
    arrived also when its EOF had been reached previously.  Thanks to
    Peter Meilstrup's report on R-devel and Ivan Krylov's report and
    patch proposal in PR#18555.
  * tools::checkRdContents() failed to detect empty argument
    descriptions when they spanned multiple lines, including those
    generated by prompt().  These cases are now noted by R CMD check.
  * Plain-text help no longer outputs spurious colons in the
    arguments list (for multi-line \item labels in the Rd source).
  * kappa() and rcond() work correctly in more cases; kappa(., norm =
    "2") now warns that it computes the 1-norm with (default) exact =
    FALSE; prompted by Mikael Jagan's quite comprehensive PR#18543.
  * Rd skeletons generated by prompt() or promptData() now use a
    dummy title (so R CMD build works).  tools::checkRdContents() has
    been updated to detect such template leftovers, including from
    promptPackage().
  * When S4 method dispatch fails because no method was found, the
    error message now includes the signature argument names; thanks
    to Michael Chirico's proposal on the R-devel list.
  * withAutoprint({ .. }) now preserves srcrefs previously lost,
    thanks to Andrew Simmons' report plus fix in PR#18572.
  * transform.data.frame() no longer adjusts names; in particular,
    untransformed variables are kept as-is, including those with
    syntactically invalid names (PR#17890).
  * The keep.source option for Rd \Sexpr blocks is no longer ignored.
  * The formula methods for t.test() and wilcox.test() now catch when
    paired is passed, addressing PR#14359; use Pair(x1, x2) ~ 1 for a
    paired test.
  * The level reported in the browser prompt was often too large. It
    now shows the number of browser contexts on the stack.
  * For cbind() and rbind(), the optional deparse.level argument is
    now properly passed to methods, thanks to Mikael Jagan's PR#18579
    and comments there.
  * Some error and warning messages for large ('long vector')
    matrix(v, nr, nc) and dim(m) &lt;- d are now correct about sizes,
    using long long formatting, fixing PR#18612 (and more) reported
    by Mikael Jagan.
  * readChar(useBytes = TRUE) now terminates strings even when the
    underlying connection uses extra spaces in the input buffer.
    This fixes problems with extra garbage seen with gzip
    connections, PR#18605.
  * Named capture in PCRE regular expressions now works also with
    more than 127 named groups (PR#18588).
  * Datetime functions are now robust against long jumps when dealing
    with internal time zone changes.  This avoids confusing warnings
    about an invalid time zone, previously triggered by turning
    warnings into errors or handling them via tryCatch (PR#17966,
    PR#17780).
  * Datetime functions now restore even an empty TZ environment
    variable after internal time zone changes (PR#17724).  This makes
    results of datetime functions with this (typically unintentional)
    setting more predictable.
  * drop.terms(*) now drops response as by default, keep.response =
    FALSE, fixing PR#18564 thanks to Mikael Jagan.
  * dummy.coef(.) now also works for lm()-models with character
    categorical predictor variables rather than factor ones, fixing
    PR#18635 reported by Jinsong Zhao.
  * formals(f) &lt;- formals(f) now also works for a function w/o
    arguments and atomic _constant_ body(f).
  * Correct as.function(&lt;invalid list&gt;, .)'s error message.
  * removeSource() is yet more thorough in finding and removing
    "srcref" and the other source references from parsed R language
    chunks, fixing PR#18638 thanks to Andrew Simmons.
  * dgeom() is more accurate now, notably when its result is very
    small, fixing PR#18642 thanks to the proposal of Morten Welinder,
    also improving other instances where C level binom_raw(x, n, ..)
    has x == 0 or x== n.
  * warning() with options(warn = 1) has improved output for
    multi-line messages.
  * axis.Date() and axis.POSIXct() now respect the par("lab") setting
    for the number of pretty() intervals.
  * Comparisons for language objects (which are based on deparsing)
    are now more careful about using accurate deparsed results
    (PR#18676).
  * Plain-text help (Rd2txt) now correctly preserves blank lines
    following single-line \dontrun code.
  * &lt;POSIXlt&gt;[*] no longer sets wrong "balanced" attribute, fixing
    PR#18681 thanks to Mikael Jagan.
  * str(&lt;classed-call&gt;) now deparses the call as expected, fixing
    PR#18684, reported by Dave Slager.
  * In Rd examples, code following the closing brace of a \dontrun,
    \dontshow or \donttest tag on the same line is no longer skipped
    when R CMD check runs the examples.
  * as.data.frame(matrix(*, ncol=0)) now gets valid names() and
    colnames(); reported by Davis Vaughan on the R-devel list.
  * Internal Mathlib function stirlerr(n) is now almost fully
    (52-bit) accurate for all n &gt;= ~5.9 and more accurate also in the
    range 1 -- 5.9.  This entails small ("after 12th decimal")
    changes in density functions, e.g., dgamma() in _some_ regions of
    their support.  The fix was partly prompted by Morten Welinder's
    PR#18640.
  * Numbers like 9876543.2 are now considered non-integer by Mathlib
    internal R_nonint(), amending original fix of PR#15734.
  * Rd comment lines no longer cause broken paragraphs in the
    rendered PDF and plain-text help. In code blocks, pure comment
    lines (starting with %) no longer produce an empty line.
  * xtabs(Freq ~ .) now consistently defaults to na.action = na.pass,
    using na.rm = FALSE (added as an argument) when summing over Freq
    (PR#17770).
  * tools::testInstalledPackage() is no longer silent about failures
    from running examples or tests and its return code no longer
    ignores failures from checking vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1718366400">- CHANGES IN R 4.4.1:
  C-LEVEL FACILITIES:
  * Functions R_atof and R_strtod declared in header R_ext/Utils.h
    are now documented in 'Writing R Extensions' and so formally part
    of the API.
  * The non-API entry points Rf_setSVector, Rf_StringFalse,
    Rf_StringTrue and Rf_isBlankString have been added to those
    reported by R CMD check.
  * The new function Rf_allocLang is now available. This provides an
    alternative to the idiom of calling Rf_allocList followed by
    SET_TYPEOF.
  UTILITIES:
  * R CMD check now reports as warnings what gfortran calls 'Fortran
    2018 deleted features', all of which have long been marked as
    'obsolescent' and some of which were deleted in Fortran 2008 or
    earlier.  Fortran compilers are no longer required to support
    these.
  BUG FIXES:
  * as.numeric(), scan(), type.convert() and other places which use
    the internal C function R_strtod now require a _non-empty_ digit
    sequence in a decimal or binary exponent.  This aligns with the
    C/POSIX standard for strtod and with ?NumericConstants.
  * as.data.frame(m, make.names=NA) now works correctly for a matrix
    m with NA's in row names.
  * The error message from &lt;POSIXlt&gt;[["hour"]] and similar now
    mentions *[[, "hour"]], as wished for in PR#17409 and proposed by
    Michael Chirico.
  * qbinom() and potentially qpois(), qnbinom(), no longer sometimes
    fail accurate inversion (of pbinom(), etc), thanks to Christopher
    Chang's report and patch in PR#18711.
  * The internal help server on Windows can again serve requests sent
    in quick succession, fixing a regression in R 4.4.0.
  * debugcall(&lt;S3Generic&gt;()) now also works when a corresponding
    S4-generic version is in the methods cache (PR#18143).
  * Package tools' toTitleCase(ch0) now returns character(0) when ch0
    is of zero length; fixing PR#18724, reported by David Hugh Jones.
  * R CMD check is no longer broken (without a check result and no
    explanation in 00check.log) for a package which declares an
    invalid VignetteBuilder in DESCRIPTION but has no vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1730376000">- CHANGES IN R 4.4.2:
  C-LEVEL FACILITIES:
  * The S-compatibility macros F77_COM and F77_COMDECL defined in
    header R_ext/RS.h are deprecated and will be removed shortly.  We
    could find no record of their use.
  BUG FIXES:
  * Mathlib function lgammacor(x) no longer warns about underflow to
    zero for large x.
  * Text widths and heights were incorrectly reported by the Quartz
    device if the drawing context didn't exist yet (typically when
    drawing off-screen to a window that is yet to appear, see
    PR#18591).
  * The Quartz device could segfault in cases where paths with spaces
    are used in the new glyph drawing API.  Thanks to Tomek
    Gieorgijewski (PR#18758).
  * On macOS in R CRAN builds, it is again possible to read
    little-endian UTF-16 text with a BOM from a connection using
    encoding="UTF-16".  Users building R from source should avoid
    using the system libiconv in macOS 14.1 and later.
  * methods' internal .requirePackage() now re-enables primitive
    method dispatch when needed; thanks to Ivan Krylov for
    demystifying CRAN package check failures on the R-devel mailing
    list.</changelog>
</package>
<package pkgid="6d9f1e970f2c473162ed3af65a54635ce8811f29c6d4a9426ccb1c2b7d6999a345710d869c43744d949b2a4533a3a17d5b890937ef1795e663ee559735bcb04f" name="R-graphics-debuginfo" arch="i586">
  <version epoch="0" ver="4.4.2" rel="51.0.2.2.sr20241103"/>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1620302400">- To get in sync with d:l:R:autoCRAN the Matrix package's split
  in -devel was reversed.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339200">- improved spec file according to comments of dimstar in
  https://build.opensuse.org/request/show/892685</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339201">- CHANGES IN R 4.1.0:
  FUTURE DIRECTIONS:
  * It is planned that the 4.1.x series will be the last to support
    32-bit Windows, with production of binary packages for that
    series continuing until early 2023.
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Data set esoph in package datasets now provides the correct
    numbers of controls; previously it had the numbers of cases added
    to these.  (Reported by Alexander Fowler in PR#17964.)
  NEW FEATURES:
  * www.omegahat.net is no longer one of the repositories known by
    default to setRepositories().  (Nowadays it only provides source
    packages and is often unavailable.)
  * Function package_dependencies() (in package tools) can now use
    different dependency types for direct and recursive dependencies.
  * The checking of the size of tarball in R CMD check --as-cran
    &lt;pkg&gt; may be tweaked via the new environment variable
    _R_CHECK_CRAN_INCOMING_TARBALL_THRESHOLD_, as suggested in
    PR#17777 by Jan Gorecki.
  * Using c() to combine a factor with other factors now gives a
    factor, an ordered factor when combining ordered factors with
    identical levels.
  * apply() gains a simplify argument to allow disabling of
    simplification of results.
  * The format() method for class "ftable" gets a new option justify.
    (Suggested by Thomas Soeiro.)
  * New ...names() utility.  (Proposed by Neal Fultz in PR#17705.)
  * type.convert() now warns when its as.is argument is not
    specified, as the help file always said it _should_.  In that
    case, the default is changed to TRUE in line with its change in
    read.table() (related to stringsAsFactor) in R 4.0.0.
  * When printing list arrays, classed objects are now shown _via_
    their format() value if this is a short enough character string,
    or by giving the first elements of their class vector and their
    length.
  * capabilities() gets new entry "Rprof" which is TRUE when R has
    been configured with the equivalent of --enable-R-profiling (as
    it is by default).  (Related to Michael Orlitzky's report
    PR#17836.)
  * str(xS4) now also shows extraneous attributes of an S4 object
    xS4.
  * Rudimentary support for vi-style tags in rtags() and R CMD rtags
    has been added.  (Based on a patch from Neal Fultz in PR#17214.)
  * checkRdContents() is now exported from tools; it and also
    checkDocFiles() have a new option chkInternal allowing to check
    Rd files marked with keyword "internal" as well.  The latter can
    be activated for R CMD check via environment variable
    _R_CHECK_RD_INTERNAL_TOO_.
  * New functions numToBits() and numToInts() extend the raw
    conversion utilities to (double precision) numeric.
  * Functions URLencode() and URLdecode() in package utils now work
    on vectors of URIs.  (Based on patch from Bob Rudis submitted
    with PR#17873.)
  * path.expand() can expand ~user on most Unix-alikes even when
    readline is not in use.  It tries harder to expand ~, for example
    should environment variable HOME be unset.
  * For HTML help (both dynamic and static), Rd file links to help
    pages in external packages are now treated as references to
    topics rather than file names, and fall back to a file link only
    if the topic is not found in the target package. The earlier rule
    which prioritized file names over topics can be restored by
    setting the environment variable _R_HELP_LINKS_TO_TOPICS_ to a
    false value.
  * c() now removes NULL arguments before dispatching to methods,
    thus simplifying the implementation of c() methods, _but_ for
    back compatibility keeps NULL when it is the first argument.
    (From a report and patch proposal by Lionel Henry in PR#17900.)
  * Vectorize()'s result function's environment no longer keeps
    unneeded objects.
  * Function ...elt() now propagates visibility consistently with
    ..n.  (Thanks to Lionel Henry's PR#17905.)
  * capture.output() no longer uses non-standard evaluation to
    evaluate its arguments.  This makes evaluation of functions like
    parent.frame() more consistent.  (Thanks to Lionel Henry's
    PR#17907.)
  * packBits(bits, type="double") now works as inverse of
    numToBits().  (Thanks to Bill Dunlap's proposal in PR#17914.)
  * curlGetHeaders() has two new arguments, timeout to specify the
    timeout for that call (overriding getOption("timeout")) and TLS
    to specify the minimum TLS protocol version to be used for
    https:// URIs (_inter alia_ providing a means to check for sites
    using deprecated TLS versions 1.0 and 1.1).
  * For nls(), an optional constant scaleOffset may be added to the
    denominator of the relative offset convergence test for cases
    where the fit of a model is expected to be exact, thanks to a
    proposal by John Nash.  nls(*, trace=TRUE) now also shows the
    convergence criterion.
  * Numeric differentiation _via_ numericDeriv() gets new optional
    arguments eps and central, the latter for taking central divided
    differences.  The latter can be activated for nls() via
    nls.control(nDcentral = TRUE).
  * nls() now passes the trace and control arguments to getInitial(),
    notably for all self-starting models, so these can also be fit in
    zero-noise situations via a scaleOffset.  For this reason, the
    initial function of a selfStart model must now have ... in its
    argument list.
  * bquote(splice = TRUE) can now splice expression vectors with
    attributes: this makes it possible to splice the result of
    parse(keep.source = TRUE).  (Report and patch provided by Lionel
    Henry in PR#17869.)
  * textConnection() gets an optional name argument.
  * get(), exists(), and get0() now signal an error if the first
    argument has length greater than 1.  Previously additional
    elements were silently ignored.  (Suggested by Antoine Fabri on
    R-devel.)
  * R now provides a shorthand notation for creating functions, e.g.
    \(x) x + 1 is parsed as function(x) x + 1.
  * R now provides a simple native forward pipe syntax |&gt;.  The
    simple form of the forward pipe inserts the left-hand side as the
    first argument in the right-hand side call.  The pipe
    implementation as a syntax transformation was motivated by
    suggestions from Jim Hester and Lionel Henry.
  * all.equal(f, g) for functions now by default also compares their
    environment(.)s, notably via new all.equal method for class
    function.  Comparison of nls() fits, e.g., may now need
    all.equal(m1, m2, check.environment = FALSE).
  * .libPaths() gets a new option include.site, allowing to _not_
    include the site library.  (Thanks to Dario Strbenac's suggestion
    and Gabe Becker's PR#18016.)
  * Lithuanian translations are now available.  (Thanks to Rimantas
    Zakauskas.)
  * names() now works for DOTSXP objects.  On the other hand, in
    R-lang, the R language manual, we now warn against relying on the
    structure or even existence of such dot-dot-dot objects.
  * all.equal() no longer gives an error on DOTSXP objects.
  * capabilities("cairo") now applies only to the file-based devices
    as it is now possible (if very unusual) to build R with Cairo
    support for those but not for X11().
  * There is optional support for tracing the progress of
    loadNamespace() - see its help.
  * (Not Windows.)  l10n_info() reports an additional element, the
    name of the encoding as reported by the OS (which may differ from
    the encoding part (if any) of the result from
    Sys.getlocale("LC_CTYPE").
  * New function gregexec() which generalizes regexec() to find _all_
    disjoint matches and well as all substrings corresponding to
    parenthesized subexpressions of the given regular expression.
    (Contributed by Brodie Gaslam.)
  * New function charClass() in package utils to query the
    wide-character classification functions in use (such as
    iswprint).
  * The names of quantile()'s result no longer depend on the global
    getOption("digits"), but quantile() gets a new optional argument
    digits = 7 instead.
  * grep(), sub(), regexp and variants work considerably faster for
    long factors with few levels.  (Thanks to Michael Chirico's
    PR#18063.)
  * Provide grouping of x11() graphics windows within a window
    manager such as Gnome or Unity; thanks to a patch by Ivan Krylov
    posted to R-devel.
  * The split() method for class data.frame now allows the f argument
    to be specified as a formula.
  * sprintf now warns on arguments unused by the format string.
  * New palettes "Rocket" and "Mako" for hcl.colors() (approximating
    palettes of the same name from the 'viridisLite' package).
    Contributed by Achim Zeileis.
  * The base environment and its namespace are now locked (so one can
    no longer add bindings to these or remove from these).
  * Rterm handling of multi-byte characters has been improved,
    allowing use of such characters when supported by the current
    locale.
  * Rterm now accepts ALT+ +xxxxxxxx sequences to enter Unicode
    characters as hex digits.
  * Environment variable LC_ALL on Windows now takes precedence over
    LC_CTYPE and variables for other supported categories, matching
    the POSIX behaviour.
  * duplicated() and anyDuplicated() are now optimized for integer
    and real vectors that are known to be sorted via the ALTREP
    framework. Contributed by Gabriel Becker via PR#17993.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 14
    and so packages that provide graphics devices should be
    reinstalled.
  * Graphics devices should now specify deviceVersion to indicate
    what version of the graphics engine they support.
  * Graphics devices can now specify deviceClip.  If TRUE, the
    graphics engine will never perform any clipping of output itself.
    The clipping that the graphics engine does perform (for both
    canClip = TRUE and canClip = FALSE) has been improved to avoid
    producing unnecessary artifacts in clipped output.
  * The grid package now allows gpar(fill) to be a linearGradient(),
    a radialGradient(), or a pattern().  The viewport(clip) can now
    also be a grob, which defines a clipping path, and there is a new
    viewport(mask) that can also be a grob, which defines a mask.
    These new features are only supported so far on the Cairo-based
    graphics devices and on the pdf() device.
  * (Not Windows.)  A warning is given when a Cairo-based type is
    specified for a png(), jpeg(), tiff() or bmp() device but Cairo
    is unsupported (so type = "Xlib" is tried instead).
  * grSoftVersion() now reports the versions of FreeType and
    FontConfig if they are used directly (not _via_ Pango), as is
    most commonly done on macOS.
  C-LEVEL FACILITIES:
  * The _standalone_ libRmath math library and R's C API now provide
    log1pexp() again as documented, and gain log1mexp().
  INSTALLATION on a UNIX-ALIKE:
  * configure checks for a program pkgconf if program pkg-config is
    not found.  These are now only looked for on the path (like
    almost all other programs) so if needed specify a full path to
    the command in PKG_CONFIG, for example in file config.site.
  * C99 function iswblank is required - it was last seen missing ca
    2003 so the workaround has been removed.
  * There are new configure options --with-internal-iswxxxxx,
  - -with-internal-towlower and --with-internal-wcwidth which allows
    the system functions for wide-character classification,
    case-switching and width (wcwidth and wcswidth) to be replaced by
    internal ones.  The first has long been used on macOS, AIX (and
    Windows) but this enables it to be unselected there and selected
    for other platforms (it is the new default on Solaris).  The
    second is new in this version of R and is selected by default on
    macOS and Solaris.  The third has long been the default and
    remains so as it contains customizations for East Asian
    languages.
    System versions of these functions are often minimally
    implemented (sometimes only for ASCII characters) and may not
    cover the full range of Unicode points: for example Solaris (and
    Windows) only cover the Basic Multilingual Plane.
  * Cairo installations without X11 are more likely to be detected by
    configure, when the file-based Cairo graphics devices will be
    available but not X11(type = "cairo").
  * There is a new configure option --with-static-cairo which is the
    default on macOS.  This should be used when only static cairo
    (and where relevant, Pango) libraries are available.
  * Cairo-based graphics devices on platforms without Pango but with
    FreeType/FontConfig will make use of the latter for font
    selection.
  LINK-TIME OPTIMIZATION on a UNIX-ALIKE:
  * Configuring with flag --enable-lto=R now also uses LTO when
    installing the recommended packages.
  * R CMD INSTALL and R CMD SHLIB have a new flag --use-LTO to use
    LTO when compiling code, for use with R configured with
  - -enable-lto=R.  For R configured with --enable-lto, they have
    the new flag --no-use-LTO.
    Packages can opt in or out of LTO compilation _via_ a UseLTO
    field in the DESCRIPTION file.  (As usual this can be overridden
    by the command-line flags.)
  BUILDING R on Windows:
  * for GCC &gt;= 8, FC_LEN_T is defined in config.h and hence character
    lengths are passed from C to Fortran in _inter alia_ BLAS and
    LAPACK calls.
  * There is a new text file src/gnuwin32/README.compilation, which
    outlines how C/Fortran code compilation is organized and
    documents new features:
  * R can be built with Link-Time Optimization with a suitable
    compiler - doing so with GCC 9.2 showed several
    inconsistencies which have been corrected.
  * There is support for cross-compiling the C and Fortran code
    in R and standard packages on suitable (Linux) platforms.
    This is mainly intended to allow developers to test later
    versions of compilers - for example using GCC 9.2 or 10.x has
    detected issues that GCC 8.3 in Rtools40 does not.
  * There is experimental support for cross-building R packages
    with C, C++ and/or Fortran code.
  * The R installer can now be optionally built to support a single
    architecture (only 64-bit or only 32-bit).
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++14 where
    available (which it is on all currently checked platforms): if
    not (as before) C++11 is used if available otherwise C++ is not
    supported.
    Packages which specify C++11 will still be installed using C++11.
    C++14 compilers may give deprecation warnings, most often for
    std::random_shuffle (deprecated in C++14 and removed in C++17).
    Either specify C++11 (see 'Writing R Extensions') or modernize
    the code and if needed specify C++14.  The latter has been
    supported since R 3.4.0 so the package's DESCRIPTION would need
    to include something like
    Depends: R (&gt;= 3.4)
  PACKAGE INSTALLATION on Windows:
  * R CMD INSTALL and R CMD SHLIB make use of their flag --use-LTO
    when the LTO_OPT make macro is set in file etc/${R_ARCH}/Makeconf
    or in a personal/site Makevars file.  (For details see 'Writing R
    Extensions' SS4.5.)
    This provides a valuable check on code consistency.  It does work
    with GCC 8.3 as in Rtools40, but that does not detect everything
    the CRAN checks with current GCC do.
  PACKAGE INSTALLATION on macOS:
  * The default personal library directory on builds with
  - -enable-aqua (including CRAN builds) now differs by CPU type,
    one of
    ~/Library/R/x86_64/x.y/library
    ~/Library/R/arm64/x.y/library
    This uses the CPU type R (and hence the packages) were built for,
    so when a x86_64 build of R is run under Rosetta emulation on an
    arm64 Mac, the first is used.
  UTILITIES:
  * R CMD check can now scan package functions for bogus return
    statements, which were possibly intended as return() calls (wish
    of PR#17180, patch by Sebastian Meyer). This check can be
    activated via the new environment variable
    _R_CHECK_BOGUS_RETURN_, true for --as-cran.
  * R CMD build omits tarballs and binaries of previous builds from
    the top-level package directory.  (PR#17828, patch by Sebastian
    Meyer.)
  * R CMD check now runs sanity checks on the use of LazyData, for
    example that a data directory is present and that
    LazyDataCompression is not specified without LazyData and has a
    documented value.  For packages with large LazyData databases
    without specifying LazyDataCompression, there is a reference to
    the code given in 'Writing R Extensions' SS1.1.6 to test the
    choice of compression (as in all the CRAN packages tested a
    non-default method was preferred).
  * R CMD build removes LazyData and LazyDataCompression fields from
    the DESCRIPTION file of packages without a data directory.
  ENCODING-RELATED CHANGES:
  * The parser now treats \Unnnnnnnn escapes larger than the upper
    limit for Unicode points (\U10FFFF) as an error as they cannot be
    represented by valid UTF-8.
    Where such escapes are used for outputting non-printable
    (including unassigned) characters, 6 hex digits are used (rather
    than 8 with leading zeros).  For clarity, braces are used, for
    example \U{0effff}.
  * The parser now looks for non-ASCII spaces on Solaris (as
    previously on most other OSes).
  * There are warnings (including from the parser) on the use of
    unpaired surrogate Unicode points such as \uD834.  (These cannot
    be converted to valid UTF-8.)
  * Functions nchar(), tolower(), toupper() and chartr() and those
    using regular expressions have more support for inputs with a
    marked Latin-1 encoding.
  * The character-classification functions used (by default) to
    replace the system iswxxxxx functions on Windows, macOS and AIX
    have been updated to Unicode 13.0.0.
    The character-width tables have been updated to include new
    assignments in Unicode 13.0.0.
  * The code for evaluating default (extended) regular expressions
    now uses the same character-classification functions as the rest
    of R (previously they differed on Windows, macOS and AIX).
  * There is a build-time option to replace the system's
    wide-character wctrans C function by tables shipped with R: use
    configure option --with-internal-towlower or (on Windows)
  - DUSE_RI18N_CASE in CFLAGS when building R.  This may be needed
    to allow tolower() and toupper() to work with Unicode characters
    beyond the Basic Multilingual Plane where not supported by system
    functions (e.g. on Solaris where it is the new default).
  * R is more careful when truncating UTF-8 and other multi-byte
    strings that are too long to be printed, passed to the system or
    libraries or placed into an internal buffer.  Truncation will no
    longer produce incomplete multibyte characters.
  DEPRECATED AND DEFUNCT:
  * Function plclust() from the package stats and
    package.dependencies(), pkgDepends(), getDepList(),
    installFoundDepends(), and vignetteDepends() from package tools
    are defunct.
  * Defunct functions checkNEWS() and readNEWS() from package tools
    and CRAN.packages() from utils have been removed.
  * R CMD config CXXCPP is defunct (it was deprecated in R 3.6.2).
  * parallel::detectCores() drops support for Irix (retired in 2013).
  * The LINPACK argument to chol.default(), chol2inv(),
    solve.default() and svd() has been defunct since R 3.1.0.  It was
    silently ignored up to R 4.0.3 but now gives an error.
  * Subsetting/indexing, such as ddd[*] or ddd$x on a DOTSXP
    (dot-dot-dot) object ddd has been disabled; it worked by accident
    only and was undocumented.
  BUG FIXES:
  * Many more C-level allocations (mainly by malloc and strdup) are
    checked for success with suitable alternative actions.
  * Bug fix for replayPlot(); this was turning off graphics engine
    display list recording if a recorded plot was replayed in the
    same session.  The impact of the bug became visible if resize the
    device after replay OR if attempted another savePlot() after
    replay (empty display list means empty screen on resize or empty
    saved plot).
  * R CMD check etc now warn when a package exports non-existing S4
    classes or methods, also in case of no "methods" presence.
    (Reported by Alex Bertram; reproducible example and patch by
    Sebastian Meyer in PR#16662.)
  * boxplot() now also accepts calls for labels such as ylab, the
    same as plot().  (Reported by Marius Hofert.)
  * The help page for xtabs() now correctly states that addNA is
    setting na.action = na.pass among others.  (Reported as PR#17770
    by Thomas Soeiro.)
  * The R CMD check &lt;pkg&gt; gives a longer and more comprehensible
    message when DESCRIPTION misses dependencies, e.g., in Imports:.
    (Thanks to the contributors of PR#17179.)
  * update.default() now calls the generic update() on the formula to
    work correctly for models with extended formulas.  (As reported
    and suggested by Neal Fultz in PR#17865.)
  * The horizontal position of leaves in a dendrogram is now correct
    also with center = FALSE.  (PR#14938, patch from Sebastian
    Meyer.)
  * all.equal.POSIXt() no longer warns about and subsequently ignores
    inconsistent "tzone" attributes, but describes the difference in
    its return value (PR#17277).  This check can be disabled _via_
    the new argument check.tzone = FALSE as suggested by Sebastian
    Meyer.
  * as.POSIXct() now populates the "tzone" attribute from its tz
    argument when x is a logical vector consisting entirely of NA
    values.
  * x[[2^31]] &lt;- v now works.  (Thanks to the report and patch by
    Suharto Anggono in PR#17330.)
  * In log-scale graphics, axis() ticks and label positions are now
    computed more carefully and symmetrically in their range,
    typically providing _more_ ticks, fulfilling wishes in PR#17936.
    The change really corresponds to an improved axisTicks() (package
    grDevices), potentially influencing grid and lattice, for
    example.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now correct to at
    least five digits where it was catastrophically wrong,
    previously.
  * sum(df) and similar "Summary"- and "Math"-group member functions
    now work for data frames df with logical columns, notably also of
    zero rows.  (Reported to R-devel by Martin "b706".)
  * unsplit() had trouble with tibbles due to unsound use of rep(NA,
    len)-indexing, which should use NA_integer_ (Reported to R-devel
    by Mario Annau.)
  * pnorm(x, log.p = TRUE) underflows to -Inf slightly later.
  * show(&lt;hidden S4 generic&gt;) prints better and without quotes for
    non-hidden S4 generics.
  * read.table() and relatives treated an "NA" column name as missing
    when check.names = FALSE PR#18007.
  * Parsing strings containing UTF-16 surrogate pairs such as
    "\uD834\uDD1E" works better on some (uncommon) platforms.
    sprintf("%X", utf8ToInt("\uD834\uDD1E")) should now give "1D11E"
    on all platforms.
  * identical(x,y) is no longer true for differing DOTSXP objects,
    fixing PR#18032.
  * str() now works correctly for DOTSXP and related exotics, even
    when these are doomed.
    Additionally, it no longer fails for lists with a class and
    "irregular" method definitions such that e.g. lapply(*) will
    necessarily fail, as currently for different igraph objects.
  * Too long lines in environment files (e.g. Renviron) no longer
    crash R. This limit has been increased to 100,000 bytes.
    (PR#18001.)
  * There is a further workaround for FreeType giving incorrect
    italic font faces with cairo-based graphics devices on macOS.
  * add_datalist(*, force = TRUE) (from package tools) now actually
    updates an existing data/datalist file for new content.  (Thanks
    to a report and patch by Sebastian Meyer in PR#18048.)
  * cut.Date() and cut.POSIXt() could produce an empty last interval
    for breaks = "months" or breaks = "years".  (Reported as PR#18053
    by Christopher Carbone.)
  * Detection of the encoding of 'regular' macOS locales such as
    en_US (which is UTF-8) had been broken by a macOS change:
    fortunately these are now rarely used with en_US.UTF-8 being
    preferred.
  * sub() and gsub(pattern, repl, x, *) now keep attributes of x such
    as names() also when pattern is NA (PR#18079).
  * Time differences ("difftime" objects) get a replacement and a
    rep() method to keep "units" consistent.  (Thanks to a report and
    patch by Nicolas Bennett in PR#18066.)
  * The \RdOpts macro, setting defaults for \Sexpr options in an Rd
    file, had been ineffective since R 2.12.0: it now works again.
    (Thanks to a report and patch by Sebastian Meyer in PR#18073.)
  * mclapply and pvec no longer accidentally terminate parallel
    processes started before by mcparallel or related calls in
    package parallel (PR#18078).
  * grep and other functions for evaluating (extended) regular
    expressions handle in Unicode also strings not explicitly flagged
    UTF-8, but flagged native when running in UTF-8 locale.
  * Fixed a crash in fifo implementation on Windows (PR#18031).
  * Binary mode in fifo on Windows is now properly detected from
    argument open (PR#15600, PR#18031).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1622808000">- The line %{__install} -m 755 -d %{_infodir}
  no longer works in TW or Factory.
  But without that line it works everywhere. So this instruction
  was commented out of the spec file.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1628596800">- CHANGES IN R 4.1.1:
  NEW FEATURES:
  * require(pkg, quietly = TRUE) is quieter and in particular does
    not warn if the package is not found.
  DEPRECATED AND DEFUNCT:
  * Use of ftp:// URIs should be regarded as deprecated, with
    on-going support confined to method = "libcurl" and not routinely
    tested.  (Nowadays no major browser supports them.)
  * The non-default method = "internal" is deprecated for http:// and
    ftp:// URIs for both download.file and url.
  * On Windows, method = "wininet" is deprecated for http://,
    https:// and ftp:// URIs for both download.file and url.  (A
    warning is only given for ftp://.)
    For ftp:// URIs the default method is now "libcurl" if available
    (which it is on CRAN builds).
    method = "wininet" remains the default for http:// and https://
    URIs but if libcurl is available, using method = "libcurl" is
    preferred.
  INSTALLATION:
  * make check now works also without a LaTeX installation.  (Thanks
    to Sebastian Meyer's PR#18103.)
  BUG FIXES:
  * make check-devel works again in an R build configured with
  - -without-recommended-packages.
  * qnbinom(p, size, mu) for large size/mu is correct now in a range
    of cases (PR#18095); similarly for the (size, prob)
    parametrization of the negative binomial.  Also qpois() and
    qbinom() are better and or faster for extreme cases.  The
    underlying C code has been modularized and is common to all four
    cases of discrete distributions.
  * gap.axis is now part of the axis() arguments which are passed
    from bxp(), and hence boxplot().  (Thanks to Martin Smith's
    report and suggestions in PR#18109.)
  * .First and .Last can again be set from the site profile.
  * seq.int(from, to, *) and seq.default(..) now work better in large
    range cases where from-to is infinite where the two boundaries
    are finite.
  * all.equal(x,y) now returns TRUE correctly also when several
    entries of abs(x) and abs(y) are close to .Machine$double.xmax,
    the largest finite numeric.
  * model.frame() now clears the object bit when removing the class
    attribute of a value via na.action (PR#18100).
  * charClass() now works with multi-character strings on Windows
    (PR#18104, fixed by Bill Dunlap).
  * encodeString() on Solaris now works again in Latin-1 encoding on
    characters represented differently in UTF-8.  Support for
    surrogate pairs on Solaris has been improved.
  * file.show() on Windows now works with non-ASCII path names
    representable in the current native encoding (PR#18132).
  * Embedded R on Windows can now find R home directory via the
    registry even when installed only for the current user
    (PR#18135).
  * pretty(x) with finite x now returns finite values also in the
    case where the extreme x values are close in size to the maximal
    representable number .Machine$double.xmax.
    Also, it's been tweaked for very small ranges and when a boundary
    is close (or equal) to zero; e.g., pretty(c(0,1e-317)) no longer
    has negative numbers, currently still warning about a very small
    range, and pretty(2^-(1024 - 2^-1/(c(24,10)))) is more accurate.
  * The error message for not finding vignette files when weaving has
    correct file sizes now. (Thanks to Sebastian Meyer's PR#18154.)
  * dnbinom(20, &lt;large&gt;, 1) now correctly gives 0, and similar cases
    are more accurate with underflow precaution.  (Reported by Francisco Vera Alcivar in PR#18072.)</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635163200">- repaired https://bugzilla.suse.com/show_bug.cgi?id=1191380
  (rpmacros now go to rpmmacrodir)
- minor clean-ups in spec file</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635768000">- CHANGES IN R 4.1.2:
  C-LEVEL FACILITIES:
  * The workaround in headers R.h and Rmath.h (using namespace std;)
    for the Oracle Developer Studio compiler is no longer needed now
    C++11 is required so has been removed.  A couple more usages of
    log() (which should have been std::log()) with an int argument
    are reported on Solaris.
  * The undocumented limit of 4095 bytes on messages from the
    S-compatibility macros PROBLEM and MESSAGE is now documented and
    longer messages will be silently truncated rather than
    potentially causing segfaults.
  * If the R_NO_SEGV_HANDLER environment variable is non-empty, the
    signal handler for SEGV/ILL/BUS signals (which offers recovery
    user interface) is not set. This allows more reliable debugging
    of crashes that involve the console.
  DEPRECATED AND DEFUNCT:
  * The legacy S-compatibility macros PROBLEM, MESSAGE, ERROR, WARN,
    WARNING, RECOVER, ... are deprecated and will be hidden in R
    4.2.0. R's native interface of Rf_error and Rf_warning has long
    been preferred.
  BUG FIXES:
  * .mapply(F, dots, .) no longer segfaults when dots is not a list
    and uses match.fun(F) as always documented; reported by Andrew
    Simmons in PR#18164.
  * hist(&lt;Date&gt;, ...) and hist(&lt;POSIXt&gt;, ...)  no longer pass
    arguments for rect() (such as col and density) to axis().
    (Thanks to Sebastian Meyer's PR#18171.)
  * \Sexpr{ch} now preserves Encoding(ch). (Thanks to report and
    patch by Jeroen Ooms in PR#18152.)
  * Setting the RNG to "Marsaglia-Multicarry" e.g., by RNGkind(), now
    warns in more places, thanks to Andr'e Gillibert's report and
    patch in PR#18168.
  * gray(numeric(), alpha=1/2) no longer segfaults, fixing PR#18183,
    reported by Till Krenz.
  * Fixed dnbinom(x, size=&lt;very_small&gt;, .., log=TRUE) regression,
    reported by Martin Morgan.
  * as.Date.POSIXlt(x) now keeps names(x), thanks to Davis Vaughan's
    report and patch in PR#18188.
  * model.response() now strips an "AsIs" class typically, thanks to
    Duncan Murdoch's report and other discussants in PR#18190.
  * try() is considerably faster in case of an error and long call,
    as e.g., from some do.call().  Thanks to Alexander Kaever's
    suggestion posted to R-devel.
  * qqline(y = &lt;object&gt;) such as y=I(.), now works, see also
    PR#18190.
  * Non-integer mgp par() settings are now handled correctly in
    axis() and mtext(), thanks to Mikael Jagan and Duncan Murdoch's
    report and suggestion in PR#18194.
  * formatC(x) returns length zero character() now, rather than ""
    when x is of length zero, as documented, thanks to Davis
    Vaughan's post to R-devel.
  * removeSource(fn) now retains (other) attributes(fn).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1647000000">- CHANGES IN R 4.1.3:
  NEW FEATURES:
  * The default version of Bioconductor has been changed to 3.14.
    (This is used by setRepositories and the menus in GUIs.)
  UTILITIES:
  * R CMD check --as-cran has a workaround for a bug in versions of
    file up to at least 5.41 which mis-identify DBF files last
    changed in 2022 as executables.
  C-LEVEL FACILITIES:
  * The legacy S-compatibility macros SINGLE_* in R_ext/Constants.h
    (included by R.h) are deprecated and will be removed in R 4.2.0.
  BUG FIXES:
  * Initialization of self-starting nls() models with initialization
    functions following the pre-R-4.1.0 API (without the ...
    argument) works again for now, with a deprecation warning.
  * Fixed quoting of ~autodetect~ in Java setting defaults to avoid
    inadvertent user lookup due to leading ~, reported in PR#18231 by
    Harold Gutch.
  * substr(., start, stop) &lt;- v now treats _negative_ stop values
    correctly.  Reported with a patch in PR#18228 by Brodie Gaslam.
  * Subscripting an array x without dimnames by a
    length(dim(x))-column character matrix gave "random" non-sense,
    now an error; reported in PR#18244 by Mikael Jagan.
  * ...names() now matches names(list(...)) closely, fixing PR#18247.
  * all.equal(*, scale = s) now works as intended when length(s) &gt; 1,
    partly thanks to Michael Chirico's PR#18272.
  * print(x) for long vectors x now also works for named atomic
    vectors or lists and prints the correct number when reaching the
    getOption("max.print") limit; partly thanks to a report and
    proposal by Hugh Parsonage to the R-devel list.
  * all.equal(&lt;selfStart&gt;, *) no longer signals a deprecation
    warning.
  * reformulate(*, response=r) gives a helpful error message now when
    length(r) &gt; 1, thanks to Bill Dunlap's PR#18281.
  * Modifying globalCallingHandlers inside withCallingHandlers() now
    works or fails correctly, thanks to Henrik Bengtsson's PR#18257.
  * hist(&lt;Date&gt;, breaks = "days") and hist(&lt;POSIXt&gt;, breaks = "secs")
    no longer fail for inputs of length 1.
  * qbeta(.001, .9, .009) and similar cases now converge correctly
    thanks to Ben Bolker's report in PR#17746.
  * window(x, start, end) no longer wrongly signals "'start' cannot
    be after 'end'", fixing PR#17527 and PR#18291.
  * data() now checks that its (rarely used) list argument is a
    character vector - a couple of packages passed other types and
    gave incorrect results.
  * which() now checks its arr.ind argument is TRUE rather coercing
    to logical and taking the first element - which gave incorrect
    results in package code.
  * model.weights() and model.offset() more carefully extract their
    model components, thanks to Ben Bolker and Tim Taylor's R-devel
    post.
  * list.files(recursive = TRUE) now shows all broken symlinks
    (previously, some of them may have been omitted, PR#18296).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1650628800">- CHANGES IN R 4.2.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * The formula method of aggregate() now matches the generic in
    naming its first argument x (resolving PR#18299 by Thomas
    Soeiro).
    This means that calling aggregate() with a formula as a named
    first argument requires name formula in earlier versions of R and
    name x now, so portable code should not name the argument (code
    in many packages did).
  * Calling &amp;&amp; or || with either argument of length greater than one
    now gives a warning (which it is intended will become an error).
  * Calling if() or while() with a condition of length greater than
    one gives an error rather than a warning.  Consequently,
    environment variable _R_CHECK_LENGTH_1_CONDITION_ no longer has
    any effect.
  * Windows users should consult the WINDOWS section below for some
    profound changes including
  * Support for 32-bit builds has been dropped.
  * UTF-8 locales are used where available.
  * The default locations for the R installation and personal
    library folder have been changed.
    Thanks to Tomas Kalibera for months of work on the Windows port
    for this release.
  NEW FEATURES:
  * matrix(x, n, m) now warns in more cases where length(x) differs
    from n * m, as suggested by Abby Spurdle and Wolfgang Huber in
    Feb 2021 on the R-devel mailing list.
    This warning can be turned into an error by setting environment
    variable _R_CHECK_MATRIX_DATA_ to TRUE: R CMD check --as-cran
    does so unless it is already set.
  * Function file_test() in package utils gains tests for symlinks,
    readability and writability.
  * capabilities("libxml") is now false.
    The description of capabilities("http/ftp") now reflects that it
    refers to the default method, no longer the internal one.
  * simplify2array() gains an except argument for controlling the
    exceptions used by sapply().
  * Environment variables R_LIBS_USER and R_LIBS_SITE are both now
    set to the R system default if unset or empty, and can be set to
    NULL to indicate an empty list of user or site library
    directories.
  * The warning for axis()(-like) calls in cases of relatively small
    ranges (typically in log-scale situations) is slightly improved
    _and_ suppressed from explicit calls to .axisPars() as has always
    been the intention.
  * The contrasts setter function `contrasts&lt;-` gains an explicit
    default how.many = NULL rather than just using missing(how.many).
  * grid.pretty() gains a new optional argument n = 5.
  * There is a new function .pretty() with option bounds as a
    technical-utility version of pretty().  It and pretty() gain a
    new argument f.min with a better than back-compatible default.
  * Function grDevices::axisTicks() and related functions such as
    graphics::axis() work better, notably for the log scale; partly
    because of the pretty() improvements, but also because care is
    taken e.g., when ylim is finite but diff(ylim) is infinite.
  * nclass.FD() gains a digits option.
  * The R Mathlib internal C function bd0() (called indirectly from a
    dozen probability density and distribution functions such as
    dpois(), dbinom(), dgamma(), pgamma() _etc_) has been
    complemented by a more sophisticated and (mostly) more accurate C
    function ebd0(), currently called only by internal dpois_raw()
    improving accuracy for R level dpois() and potentially others
    calling it such as dnbinom(), dgamma() or pgamma().  (Thanks to
    Morten Welinder's PR#15628.)
  * write.ftable() gains sep = " " argument as suggested by Thomas
    Soeiro.
  * The names of the locale categories supported by R's
    Sys.getlocale() and Sys.setlocale() are now provided by variable
    .LC.categories in the base namespace.
  * The Date and POSIXt methods for hist() and the histogram method
    for plot() now also use the new default col = "lightgray" in
    consistency with the corresponding change to hist()'s default for
    R 4.0.0.
  * hist.default() gains new fuzz argument, and the histogram plot
    method no longer uses fractional axis ticks when displaying
    counts ("Frequency").
  * mapply() and hence Map() now also obey the "max-or-0-if-any"
    recycling rule, such that, e.g., Map(`+`, 1:3, 1[0]) is valid
    now.
  * as.character(&lt;obj&gt;) for "hexmode" or "octmode" objects now
    fulfils the important basic rule as.character(x)[j] ===
    as.character(x[j]).
  * The set utility functions, notably intersect() have been tweaked
    to be more consistent and symmetric in their two set arguments,
    also preserving a common mode.
  * substr(ch, start,end) &lt;- new now e.g., preserves names(ch); ditto
    for substring(), thanks to a patch from Brodie Gaslam.
  * plot(&lt;lm&gt;) gains a extend.ylim.f argument, in partial response to
    PR#15285; further PR#17784 is fixed thanks to several
    contributors and a patch by Elin Waring.  The Cook's dist
    contours get customizable via cook.col and cook.lty with a
    different default color and their legend is nicer by default and
    customizable via cook.legendChanges.
  * Attempting to subset an object that is not subsettable now
    signals an error of class notSubsettableError. The
    non-subsettable object is contained in the object field of the
    error condition.
  * Subscript-out-of-bounds errors are now signaled as errors of
    class subscriptOutOfBoundsError.
  * Stack-overflow errors are now signaled as errors inheriting from
    class stackOverflowError. See ?stackOverflowError for more
    details.
  * New partly experimental Sys.setLanguage() utility, solving the
    main problem of PR#18055.
  * gettext() and gettextf() get a new option trim = TRUE which when
    set to false allows translations for strings such as "Execution
    halted\n" typical for C code.
  * An experimental implementation of hash tables is now available.
    See ?hashtab for more details.
  * identical() gains a extptr.as.ref argument for requesting that
    external pointer objects be compared as reference objects.
  * reorder() gets an argument decreasing which it passes to sort()
    for level creation; based on the wish and patch by Thomas Soeiro
    in PR#18243.
  * as.vector() gains a data.frame method which returns a simple
    named list, also clearing a long standing 'FIXME' to enable
    as.vector(&lt;data.frame&gt;, mode="list").  This breaks code relying
    on as.vector(&lt;data.frame&gt;) to return the unchanged data frame.
  * legend() is now vectorized for arguments cex, x.intersp, and
    text.width.  The latter can now also be specified as a vector
    (one element for each column of the legend) or as NA for
    computing a proper column wise maximum value of strwidth(legend).
    The argument y.intersp can be specified as a vector with one
    entry for each row of the legend.
    legend() also gains new arguments title.cex and title.font.
    Thanks to Swetlana Herbrandt.
  * Deparsing no longer remaps attribute names dim, dimnames, levels,
    names and tsp to historical S-compatible names (which structure()
    maps back).
  * sample() and sample.int() have additional sanity checks on their
    size and n arguments.
    all.equal.numeric() gains a sanity check on its tolerance
    argument - calling all.equal(a, b, c) for three numeric vectors
    is a surprisingly common error.
    mean(na.rm =), rank(na.last =), barplot(legend.text =),
    boxplot(), contour(drawlabels =), polygon(border =) and
    methods::is(class2 =) have more robust sanity checks on their
    arguments.
    R CMD Rd2pdf (used by R CMD check) has a more robust sanity check
    on the format of \alias{} commands.
  * psigamma(x, deriv) for negative x now also works for deriv = 4
    and 5; their underlying C level dpsifn() is documented in
    'Writing R Extensions'.
  * The HTML help system now uses HTML5 (wish of PR#18149).
  * ks.test() now provides exact p-values also with ties and MC
    p-values in the two-sample (Smirnov) case.  By Torsten Hothorn.
  * ks.test() gains a formula interface, with y ~ 1 for the
    one-sample (Kolmogorov) test and y ~ group for the two-sample
    (Smirnov) test.  Contributed by Torsten Hothorn.
  * The return value from ks.test() now has class c("ks.test",
    "htest") - packages using try() need to take care to use
    inherits() and not == on the class.
  * New functions psmirnov(), qsmirnov() and rsmirnov() in package
    stats implementing the asymptotic and exact distributions of the
    two-sample Smirnov statistic.
  * iconv() now allows sub = "c99" to use C99-style escapes for UTF-8
    inputs which cannot be converted to encoding to.
  * In a forward pipe |&gt; expression it is now possible to use a named
    argument with the placeholder _ in the rhs call to specify where
    the lhs is to be inserted.  The placeholder can only appear once
    on the rhs.
  * The included LAPACK sources have been updated to version 3.10.0,
    except for the four Fortran 77 routines which 3.10.0 has
    re-implemented in Fortran 90 (where the older versions have been
    retained as the R build process does not support Fortran 90).
  * path.expand() and most other uses of tilde expansion now warn if
    a path would be too long if expanded.  (An exception is
    file.exists(), which silently returns false.)
  * trunc(&lt;Date&gt;, *) now supports units = "months" or "years" for
    consistency with the POSIXt method, thanks to Dirk Eddelbuettel's
    proposal in PR#18099.
  * list2DF() now checks that its arguments are of the same length,
    rather than use recycling.
  * The HTML help system has several new features: LaTeX-like math
    can be typeset using either KaTeX or MathJax, usage and example
    code is highlighted using Prism, and for dynamic help the output
    of examples and demos can be shown within the browser if the
    knitr package is installed. These features can be disabled by
    setting the environment variable _R_HELP_ENABLE_ENHANCED_HTML_ to
    a false value.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 15
    and so packages that provide graphics devices should be
    reinstalled.
  * The grid package now allows the user to specify a "vector" of
    pattern fills.  The fill argument to gpar() accepts a list of
    gradients and/or patterns and the functions linearGradient(),
    radialGradient(), and pattern() have a new group argument.
    Points grobs (data symbols) can now also have a pattern fill.
    The grobCoords() function now returns a more informative and
    complex result.
  * The grid package has new functions for drawing isolated groups:
    grid.group(), grid.define(), and grid.use().  These functions add
    compositing operators and affine transformations to R's graphics
    capabilities.
    The grid package also has new functions for stroking and filling
    paths: grid.stroke(), grid.fill(), and grid.fillStroke().
    A new function as.path() allows the user to specify the fill rule
    for a path that is to be used for clipping, stroking, or filling;
    available options are "winding" and "evenodd".  A new function
    as.mask() allows the user to specify the type of a mask;
    available options are "alpha" and "luminance".
    These new features are only supported so far (at most) on the
    Cairo-based graphics devices and on the pdf() device.
  * dev.capabilities() reports on device support for the new
    features.
  * par() now warns about unnamed non-character arguments to prevent
    misuse such as {usr &lt;- par("usr"); par(usr)}.
  INSTALLATION:
  * Facilities for accessing ftp:// sites are no longer tested
    (except _pro tem_ for curlGetHeaders()) as modern browsers have
    removed support.
  * R can now be built with DEFS = -DSTRICT_R_HEADERS .
  PACKAGE INSTALLATION:
  * R CMD INSTALL no longer tangles vignettes. This completes an R
    CMD build change in R 3.0.0 and affects packages built before R
    3.0.2. Such packages should be re-made with R CMD build to have
    the tangled R code of vignettes shipped with the tarball.
  * USE_FC_LEN_T will become the default: this uses the correct
    prototypes for Fortran BLAS/LAPACK routines called from C/C++,
    and requires adjustment of most such calls - see 'Writing R
    Extensions' SS6.6.2.  (This has been supported since R 3.6.2.)
  * Package installation speed for packages installed with
    keep.source has been improved. This resolve the issue reported by
    Ofek Shilon in PR#18236.
  UTILITIES:
  * R CMD check can optionally report files/directories left behind
    in home, /tmp (even though TMPDIR is set) and other directories.
    See the "R Internals" manual for details.
  * R CMD check now reports byte-compilation errors during
    installation.  These are not usually fatal but may result in
    parts of the package not being byte-compiled.
  * _R_CHECK_DEPENDS_ONLY_ can be applied selectively to examples,
    tests and/or vignettes in R CMD check: see the "R Internals"
    manual.
  * _R_CHECK_SRC_MINUS_W_IMPLICIT_ now defaults to true: recent
    versions of Apple clang on macOS have made implicit function
    declarations in C into a compilation error.
  * R CMD check --as-cran makes use of the environment variable
    AUTORECONF.  See the "R Internals" manual SS8 for further details.
  * R CMD check --use-valgrind also uses valgrind when re-building
    vignettes as some non-Sweave vignettes unhelpfully comment out
    all their code when R CMD check runs vignettes.
  * Errors in re-building vignettes (unless there are LaTeX errors)
    are reported by R CMD check as ERROR rather than WARNING when
    running vignettes has been skipped (as it frequently is in CRAN
    checks and by --as-cran).
  * R CMD Rd2pdf gains a --quiet option that is used by R CMD build
    when building the PDF package manual.
  * R CMD Rd2pdf now always runs LaTeX in batch mode, consistent with
    Texinfo &gt;= 6.7. The --batch option is ignored.
  * R CMD build and R CMD check now include the Rd file name and line
    numbers in the error message of an \Sexpr evaluation failure.
  * For packages using the \doi Rd macro (now an install-time \Sexpr)
    but no other dynamic Rd content, R CMD build now produces a
    smaller tarball and is considerably faster - skipping temporary
    package installation.
  C-LEVEL FACILITIES:
  * The non-API header R_ext/R-ftp-http.h is no longer provided, as
    the entry points it covered are now all defunct.
  * A number of non-API declarations and macro definitions have been
    moved from the installed header Rinternals.h to the internal
    header Defn.h. Packages that only use entry points and
    definitions documented to be part of the API as specified in
    'Writing R Extensions' SS6 should not be affected.
  * The macro USE_RINTERNALS no longer has any effect when compiling
    package code.  Packages which also use R_NO_REMAP will need to
    ensure that the remapped names are used for calls to API
    functions that were formerly also made available as macros.
  * The deprecated legacy S-compatibility macros PROBLEM, MESSAGE,
    ERROR, WARN, WARNING, RECOVER, ... are no longer defined in
    R_exts/RS.h (included by R.h).  Replace these by calls to
    Rf_error and Rf_warning (defined in header R_ext/Error.h included
    by R.h).
    Header R_ext/RS.h no longer includes R_ext/Error.h.
  * Header R_ext/Constants.h (included by R.h) when included from C++
    now includes the C++ header cfloat rather than the C header
    float.h (now possible as C++11 is required).
  * The legacy S-compatibility macros DOUBLE_* in R_ext/Constants.h
    (included by R.h) are deprecated.
  * The deprecated S-compatibility macros SINGLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * R_Calloc, R_Free and R_Realloc are preferred to their unprefixed
    forms and error messages now use the prefix. These forms were
    introduced in R 3.4.0 and are available even when
    STRICT_R_HEADERS is defined.
  * rmultinom has been documented in 'Writing R Extensions' SS6 so is
    now part of the R API.
  * Similarly, Rtanpi, called from R level tanpi() is now part of the
    R API.
  * The long-deprecated, undocumented and non-API entry point call_R
    is no longer declared in R_ext/RS.h (included by R.h).
  * The header S.h which has been unsupported since Jan 2016 has been
    removed.  Use R.h instead.
  DEPRECATED AND DEFUNCT:
  * The (non-default and deprecated) method = "internal" for
    download.file() and url() no longer supports http:// nor ftp://
    URIs.  (It is used only for file:// URIs.)
    On Windows, download.file(method = "wininet") no longer supports
    ftp:// URIs.  (It is no longer the default method, which is
    "libcurl" and does.)
    On Windows, the deprecated method = "wininet" now gives a warning
    for http:// and https:// URIs for both download.file() and url().
    (It is no longer the default method.)
  * On Windows, the command-line option --max-mem-size and
    environment variable R_MAX_MEM_SIZE are defunct.  The memory
    allocation limit was important for 32-bit builds, but these are
    no longer supported.
  * default.stringsAsFactors() is now formally deprecated, where that
    was only mentioned on its regular help page, previously.  So it
    now gives a warning if called.
  * unix.time() is defunct now; it had been deprecated since R 3.4.0.
  BUG FIXES:
  * Setting digits = 0 in format(), print.default() (and hence
    typically print()) or options() is again invalid.  Its behaviour
    was platform-dependent, and it is unclear what "zero significant
    digits" should mean (PR#18098).
  * Messages from C code in the cairo section of package grDevices
    are now also offered for translation, thanks to Michael Chirico's
    PR#18123.
  * mean(x) with finite x now is finite also without "long.double"
    capability.
  * R CMD Rd2pdf no longer leaves an empty build directory behind
    when it aborts due to an already existing output file.  (Thanks
    to Sebastian Meyer's PR#18141.)
  * density(x, weights = w, na.rm = TRUE) when anyNA(x) is true, now
    removes weights "in parallel" to x, fixing PR#18151, reported by
    Matthias Gondan.  Additionally, it gets a subdensity option.
  * Conversion of \Sexpr[]{&lt;expR&gt;} to LaTeX or HTML no longer
    produces long blocks of empty lines when &lt;expR&gt; itself contains
    several lines all producing empty output.  Thanks to a report and
    patch by Ivan Krylov posted to R-devel.
  * R CMD build no longer fails if a package vignette uses child
    documents and inst/doc exists.  (Thanks to Sebastian Meyer's
    PR#18156.)
  * When an R documentation ('help' source) file man/foo.Rd in a
    package has \donttest{..} examples with a syntax error, it is now
    signalled as ERROR and with correct line numbers relating to the
  * -Ex.R file, thanks to Duncan Murdoch and Sebastian Meyer's
    reports and patch proposals in PR#17501.
  * Improved determination of the correct translation domain in
    non-base packages, addressing the combination of PR#18092 and
    PR#17998 (#c6) with reports and _augmented_ patch #2904 by
    Suharto Anggono.
    Note that "R-base" is no longer the default domain e.g., for
    top-level calls to gettext(); rather translation needs explicit
    domain = * specification in such cases.
  * identical(attrib.as.set=FALSE) now works correctly with data
    frames with default row names (Thanks to Charlie Gao's PR#18179).
  * txtProgressBar() now enforces a non-zero width for argument char,
    without which no progress can be visible.
  * dimnames(table(d)) is more consistent in the case where d is a
    list with a single component, thanks to Thomas Soeiro's report to
    R-devel.
    Further, table(d1, d2) now gives an error when d1 and d2 are data
    frames as suggested by Thomas in PR#18224.
  * Fix for drawing semi-transparent lines and fills on the native
    Windows graphics device (PR#18219 and PR#16694).  Thanks to Nick
    Ray for helpful diagnosis on Bugzilla.
  * The deparser now wraps sub-expressions such as if(A) ..  with
    parentheses when needed; thanks to Duncan Murdoch's PR#18232 and
    Lionel Henry's patches there.
  * remove.packages() no longer tries to uninstall Priority: base
    packages, thanks to a report and suggestions by Colin Fay in
    PR#18227.
  * win.metafile() now has xpinch and ypinch arguments so that the
    user can override Windows' (potentially wrong) guess at device
    dimensions.
  * x[i] and x[[i]] for non-integer i should now behave in all cases
    as always documented: the index used is equivalent to
    as.integer(i) unless that would overflow where trunc(i) is used
    instead; thanks to Suharto Anggono's report and patch proposals
    in PR#17977.
  * asOneSidedFormula() now associates the resulting formula with the
    global environment rather than the evaluation environment created
    for the call.
  * &lt;bibentry&gt;$name now matches the field name case-insensitively,
    consistent with bibentry() creation and the replacement method.
  * cbind() failed to detect some length mismatches with a mixture of
    time-series and non-time-series inputs.
  * The default LaTeX style file Sweave.sty used by the RweaveLatex
    driver no longer loads the obsolete ae package; thanks to a
    report by Thomas Soeiro in PR#18271.  Furthermore, it now skips
    \usepackage[T1]{fontenc} for engines other than pdfTeX (if
    detected) or if the new [nofontenc] option is used.
  * smooth.spline() now stores its logical cv argument more safely,
    fixing a rare bug when printing, and also stores n.
  * smooth.spline(x,y,*) now computes the cv.crit statistic
    correctly, also when is.unsorted(x), fixing PR#18294.
  * The data.frame method of rbind() now warns when binding
    not-wholly-recycling vectors, by analogy to the default method
    (for matrices).
  * setAs() finds the correct class for name to when multiple
    packages define a class with that name. Thanks to Gabor Csardi
    for the report.
  * Fix for detaching a package when two classes of the same name are
    present in method signatures for the same generic. Thanks to
    Gabor Csardi for the report.
  * match.arg("", c("", "a", "B")) gives a better error message, in
    part from PR#17959, thanks to Elin Waring.
  * R CMD Sweave --clean no longer removes pre-existing files or
    subdirectories (PR#18242).
  * The quartz() device no longer splits polylines into subpaths.
    That has caused narrowly-spaced lines with many points to always
    look solid even when dashed line type was used due to dash phase
    restarts.
  * Deparsing constructs such as quote(1 + `!`(2) + 3) works again as
    before R 3.5.0, thanks to the report and patch in PR#18284 by
    Suharto Anggono.
  * as.list(f) for a factor f now keeps names(f), fixing PR#18309.
  * qbeta(.001, .9, .009) and analogous qf() calls now return a
    correct value instead of NaN or wrongly 1, all with a warning;
    thanks to the report by Ludger Goeminne in PR#18302.
  * plot.lm() failed to produce the plot of residuals vs.  factor
    levels (i.e., which=5 when leverages are constant) for models
    with character predictors (PR#17840).
  * interaction.plot(..., xtick = TRUE) misplaced the x-axis line
    (PR#18305).
  * Not strictly fixing a bug, format()ing and print()ing of
    non-finite Date and POSIXt values NaN and +/-Inf no longer show
    as NA but the respective string, e.g., Inf, for consistency with
    numeric vector's behaviour, fulfilling the wish of PR#18308.
  * R CMD check no longer runs test scripts generated from
    corresponding .Rin files twice and now signals an ERROR if
    processing an .Rin script fails.
  * tools::Rd2txt() used for plain-text help pages now renders \hrefs
    (if tools::Rd2txt_options(showURLs = TRUE)) and \urls with
    percent-encoding and standards-compliant delimiting style (angle
    brackets and no URL: prefix).  \email is now rendered with a
    mailto: prefix.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1655985600">- CHANGES IN R 4.2.1:
  NEW FEATURES:
  * New function utils::findCRANmirror() to find out if a CRAN mirror
    has been selected, otherwise fallback to the main site.  This
    behaves in the same way as tools::CRAN_package_db() and is
    intended for packages wishing to access CRAN for purposes other
    than installing packages.
    The need for this was shown by a day when the main CRAN website
    was offline and a dozen or so packages which had its URL
    hardcoded failed their checks.
  INSTALLATION on a UNIX-ALIKE:
  * The libraries searched for by --with-blas (without a value) now
    include BLIS (after OpenBLAS but before ATLAS).  And on macOS,
    the Accelerate framework (after ATLAS).  (This is patterned after
    the AX_BLAS macro from the Autoconf Archive.)
  * The included LAPACK sources have been updated to 3.10.1.
  UTILITIES:
  * The (full path to) the command tidy to be used for HTML
    validation can be set by environment variable R_TIDYCMD.
  * Setting environment variable _R_CHECK_RD_VALIDATE_RD2HTML_ to a
    false value will override R CMD check --as-cran and turn off HTML
    validation.  This provides a way to circumvent a problematic
    tidy.
    The 2006 version that ships with macOS is always skipped.
  C-LEVEL FACILITIES:
  * The undocumented legacy declarations of Sint, Sfloat, SINT_MAX
    and SINT_MIN in header R.h are deprecated.
  BUG FIXES:
  * fisher.test(d) no longer segfaults for "large" d; fixing PR#18336
    by preventing/detecting an integer overflow reliably.
  * tar(., files=*) now produces correctly the warning about invalid
    uid or gid of files, fixing PR#18344, reported by Martin Morgan.
  * tk_choose.files() with multi = FALSE misbehaved on paths
    containing spaces (PR#18334) (regression introduced in R 4.0.0).
  * sort(x, partial = ind, *) now works correctly notably for the
    non-default na.last = FALSE or TRUE, fixing PR#18335 reported by
    James Edwards.
  * Environment variable _R_CHECK_XREFS_REPOSITORIES_ is only used
    for checking .Rd cross-references in R CMD check (as documented)
    and not for other uses looking for a CRAN mirror.
  * The search for a CRAN mirror when checking packages now uses
    getOption("repos") if that specifies a CRAN mirror, even when it
    does not also specify all three Bioconductor repositories (as was
    previously required).
  * The HTML code generated by tools::Rd2HTML() has been improved to
    pass tidy 5.8.0.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1667217600">- CHANGES IN R 4.2.2:
  NEW FEATURES:
  * tools::Rdiff(useDiff = TRUE) checks for the presence of an
    external diff command and switches to useDiff = FALSE if none is
    found.  This allows R CMD Rdiff to always work.
  * On Windows, environment variable R_LIBCURL_SSL_REVOKE_BEST_EFFORT
    can be used to switch to only 'best-effort' SSL certificate
    revocation checks with the default "libcurl" download method.
    This reduces security, but may be needed for downloads to work
    with MITM proxies (PR#18379).
  * (macOS) The run-time check for libraries from XQuartz for X11 and
    Tcl/Tk no longer uses otool from the Apple Developer Tools
    (PR#18400).
  * The LaTeX style for producing the PDF manuals, Rd.sty, now loads
    the standard amsmath, amsfonts and amssymb packages for greater
    coverage of math commands in the Rd \eqn and \deqn macros.  The
    \mathscr LaTeX command is also provided (via the mathrsfs
    package, if available, or the amsfonts bundle otherwise),
    fulfilling the wish of PR#18398.
  * (Windows) The default format of readClipboard() and
    writeClipboard() has been changed to 13 (CF_UNICODETEXT).
  INSTALLATION on a UNIX-ALIKE:
  * The PDF manuals (if built) can be compacted by the new target
    make compact-pdf (at the top level or in directory doc/manual).
  * There is now configure support for LLVM clang 15 on Linux, which
    defaults to position-independent (PIE) executables whereas
    gfortran does not.
  * Many small changes to ease compilation (and suppress warnings)
    with LLVM clang 15.
  BUG FIXES:
  * Rscript -e would fail if stdin were closed (Reported by Henrik
    Bengtsson.)
  * qt(*, log.p=TRUE) in outer tails no longer produces NaN in its
    final steps, thus fixing PR#18360.
  * tools::Rd2latex() now escapes hashes and ampersands when writing
    URLs, fixing LaTeX errors with such URLs in \tabular.
  * When isGeneric(f, fdef=*) is used with mismatching names, the
    warning is better understandable; reported (with fix) in PR#18370
    by Gabe Becker.
  * poly(x, n) now works again (and is now documented) when x is a
    "Date" or "POSIXct" object, or of another class while fulfilling
    mode(x) == "numeric".  This also enables poly(x, *, raw=TRUE) for
    such variables.  Reported by Michael Chirico to R-devel.
  * write.table(), write.csv() and write.csv2() restore their
    numerical precision (internal equivalent of digits = 15) after an
    interrupt (PR#18384).
  * One can now read also byte FF from a clipboard connection
    (PR#18385).
  * source("") and source(character()) now give more helpful error
    messages.
  * R CMD check --as-cran set _R_CHECK_TIMINGS_ too late to have the
    intended effect.
  * as.POSIXlt(x) now also works with very large dates x, fixing
    PR#18401 reported by Hannes M"uhleisen.
  * Files can now be extracted even from very large zip archives
    (PR#18390, thanks to Martin Jakt).
  * Non-finite objects of class "POSIXlt" are now correctly coerced
    to classes "Date" and "POSIXct"; following up on the extension to
    format() them correctly.
  * Added methods for is.finite(), is.infinite() and is.nan() for
    "POSIXlt" date-time objects.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1678881600">- CHANGES IN R 4.2.3:
  C-LEVEL FACILITIES:
  * The definition of DL_FUNC in R_ext/Rdynload.h has been changed to
    be fully C-compliant.  This means that functions loaded _via_ for
    example R_GetCCallable need to be cast to an appropriate type if
    they have any arguments.
  * .Machine has a new element sizeof.time_t to identify old systems
    with a 32-bit type and hence a limited range of date-times (and
    limited support for dates millions of years from present).
  PACKAGE INSTALLATION:
  * (Windows) The default C++ standard had accidentally been left at
    C++11 when it was changed to C++14 on Unix.
  BUG FIXES:
  * As "POSIXlt" objects may be "partially filled" and their list
    components meant to be recycled, length() now is the length of
    the longest component.
  * as.POSIXlt.Date() could underflow for dates in the far past (more
    than half a million years BCE).
  * as.Date.POSIXlt(x) would return "1970-01-01" instead of NA in R
    4.2.2, e.g., for
    x &lt;- as.POSIXlt(c("2019-01-30","2001-1-1"))
    x$mon &lt;- c(0L, NA); as.Date(x)
  * R CMD check failed to apply enabled _R_CHECK_SUGGESTS_ONLY_ to
    examples and vignettes (regression in R 4.2.0).
  * R CMD check did not re-build vignettes in separate processes by
    default (regression in R 4.2.0).
  * Running examples from HTML documentation now restores previous
    knitr settings and options (PR#18420).
  * Quartz: fonts are now located using Core Graphics API instead of
    deprecated ATS which is no longer supported in the macOS 13 SDK
    (PR#18426).  This also addresses an issue where the currently
    used font in the Quartz device context was not correctly
    retained.
  * (Windows) Math symbols in text drawing functions are again
    rendered correctly (PR#18440).  This fixes a regression in R
    4.2.1 caused by a fix in PR#18382 which uncovered an issue in
    GraphApp due to which the symbol charset was not used with TT
    Symbol font face.
  * (Windows) Installing a package with a src/Makefile.{win,ucrt}
    file includes ~/.R/Makevars.win64 in the search for user
    makevars, as documented in "R Installation and Administration"
    and done for packages with a src/Makevars.{win,ucrt} file.
  * format(&lt;POSIXlt_w/_unbalanced_sec&gt;, "....%OS&lt;n&gt;") with n &gt; 0 no
    longer accidentally uses the unbalanced seconds, thanks to
    Suharto Anggono's report (including patch) in PR#18448.
  * solve.default(a, b) works around issues with some versions of
    LAPACK when a contains NA or NaN values.
  * When UseMethod() cannot dispatch, it no longer segfaults
    producing the error message in case of a long class(), thanks to
    Joris Vankerschaver's report (including patch) in PR#18447.
  * When example(foo, ..) produces graphics on an interactive device
    it needs to open itself, it now leaves devAskNewPage() unchanged
    even when it was FALSE, thus fixing a 14 years old '&lt;FIXME&gt;'.
  * packageDescription() again catches errors from encoding
    conversions. This also fixes broken packageVersion() in C locale
    on systems where iconv does not support transliteration.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1681128000">- add patch to build with libcurl &gt;= 8</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1682078400">- CHANGES IN R 4.3.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Calling &amp;&amp; or || with LHS or (if evaluated) RHS of length greater
    than one is now always an error, with a report of the form
    'length = 4' in coercion to 'logical(1)'
    Environment variable _R_CHECK_LENGTH_1_LOGIC2_ no longer has any
    effect.
  NEW FEATURES:
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.10.1.  (This caused some platform-dependent
    changes to package check output.)  And then to the sources from
    LAPACK version 3.11.0 (with changes only to double complex
    subroutines).
  * The included LAPACK sources have been updated to include the four
    Fortran 90 routines rather than their Fortran 77 predecessors.
    This may give some different signs in SVDs or
    eigendecompositions..  (This completes the transition to LAPACK
    3.10.x begun in R 4.2.0.)
  * The LAPACK sources have been updated to version 3.11.0.  (No new
    subroutines have been added, so this almost entirely bug fixes:
    Those fixes do affect some computations with NaNs, including R's
    NA.)
  * The parser now signals _classed_ errors, notably in case of the
    pipe operator |&gt;.  The error object and message now give line and
    column numbers, mostly as proposed and provided by Duncan Murdoch
    in PR#18328.
  * toeplitz() is now generalized for asymmetric cases, with a
    toeplitz2() variant.
  * xy.coords() and xyz.coords() and consequently, e.g., plot(x,y,
    log = "y") now signal a _classed_ warning about negative values
    of y (where log(.) is NA).  Such a warning can be specifically
    suppressed or caught otherwise.
  * Regular expression functions now check more thoroughly whether
    their inputs are valid strings (in their encoding, e.g. in
    UTF-8).
  * The performance of grep(), sub(), gsub() and strsplit() has been
    improved, particularly with perl = TRUE and fixed = TRUE.  Use of
    useBytes = TRUE for performance reasons should no longer be
    needed and is discouraged: it may lead to incorrect results.
  * apropos() gains an argument dot_internals which is used by the
    completion (help(rcompgen)) engine to also see base internals
    such as .POSIXct().
  * Support in tools::Rdiff() for comparing uncompressed PDF files is
    further reduced - see its help page.
  * qqplot(x, y, ...) gains conf.level and conf.args arguments for
    computing and plotting a confidence band for the treatment
    function transforming the distribution of x into the distribution
    of y (Switzer, 1976, _Biometrika_). Contributed by Torsten
    Hothorn.
  * Performance of package_dependencies() has been improved for cases
    when the number of dependencies is large.
  * Strings newly created by gsub(), sub() and strsplit(), when any
    of the inputs is marked as "bytes", are also marked as "bytes".
    This reduces the risk of creating invalid strings and accidental
    substitution of bytes deemed invalid.
  * Support for readLines(encoding = "bytes") has been added to allow
    processing special text files byte-by-byte, without creating
    invalid strings.
  * iconv(from = "") now takes into account any declared encoding of
    the input elements and uses it in preference to the native
    encoding.  This reduces the risk of accidental creation of
    invalid strings, particularly when different elements of the
    input have different encoding (including "bytes").
  * Package repositories in getOption("repos") are now initialized
    from the repositories file when utils is loaded (if not already
    set, e.g., in .Rprofile).  (From a report and patch proposal by
    Gabriel Becker in PR#18405.)
  * compactPDF() gets a verbose option.
  * type.convert() and hence read.table() get new option tryLogical =
    TRUE with back compatible default.  When set to false, converts
    "F" or "T" columns to character.
  * Added new unit prefixes "R" and "Q" for abbreviating
    (unrealistically large) sizes beyond 10^{27} in standard = "SI",
    thanks to Henrik Bengtsson's PR#18435.
  * as.data.frame()'s default method now also works fine with atomic
    objects inheriting from classes such as "roman", "octmode" and
    "hexmode", such fulfilling the wish of PR#18421, by Benjamin
    Feakins.
  * The as.data.frame.vector() utility now errors for wrong-length
    row.names.  It warned for almost six years, with "Will be an
    error!".
  * sessionInfo() now also contains La_version() and reports codepage
    and timezone when relevant, in both print() and toLatex() methods
    which also get new option tzone for displaying timezone
    information when locale = FALSE.
  * New function R_compiled_by() reports the C and Fortran compilers
    used to build R, if known.
  * predict(&lt;lm&gt;, newdata = *) no longer unnecessarily creates an
    offset of all 0s.
  * solve() for complex inputs now uses argument tol and by default
    checks for 'computational singularity' (as it long has done for
    numeric inputs).
  * predict(&lt;rank-deficient lm&gt;, newdata=*) now obeys a new argument
    rankdeficient, with new default "warnif", warning only if there
    are non-estimable cases in newdata.  Other options include
    rankdeficient = "NA", predicting NA for non-estimable newdata
    cases.  This addresses PR#15072 by Russ Lenth and is based on his
    original proposal and discussions in PR#16158 also by David Firth
    and Elin Waring.  Still somewhat experimental.
  * Rgui console implementation now works better with the NVDA screen
    reader when the full blinking cursor is selected.  The underlying
    improvements in cursor handling may help also other screen
    readers on Windows.
  * The drop-field control in GraphApp can now be left with the TAB
    key and all controls can be navigated in the reverse order using
    the Shift+TAB key, improving accessibility of the Rgui
    configuration editor.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now fully accurate
    (instead of to "only" minimally five digits).
  * demo(error.catching) now also shows off withWarnings() and
    tryCatchWEMs().
  * As an experimental feature the placeholder _ can now also be used
    in the rhs of a forward pipe |&gt; expression as the first argument
    in an extraction call, such as _$coef. More generally, it can be
    used as the head of a chain of extractions, such as _$coef[[2]].
  * Spaces in the environment variable used to choose the R session's
    temporary directory (TMPDIR, TMP and TEMP are tried in turn) are
    now fatal.  (On Windows the 'short path' version of the path is
    tried and used if that does not contain a space.)
  * all.equal.numeric() gets a new optional switch giveErr to return
    the numeric error as attribute.  Relatedly,
    stopifnot(all.equal&lt;some&gt;(a, b, ..)) is as "smart" now, as
    stopifnot(all.equal(....)) has been already, thus allowing
    customized all.equal&lt;Some&gt;() wrappers.
  * R on Windows is now able to work with path names longer than 260
    characters when these are enabled in the system (requires at
    least Windows 10 version 1607).  Packages should be updated to
    work with long paths as well, instead of assuming PATH_MAX to be
    the maximum length.  Custom front-ends and applications embedding
    R need to update their manifests if they wish to allow this
    feature.  See
    &lt;https://blog.r-project.org/2023/03/07/path-length-limit-on-windows&gt;
    for more information.
  * 'Object not found' and 'Missing argument' errors now give a more
    accurate error context. Patch provided by Lionel Henry in
    PR#18241.
  * The @ operator is now an S3 generic. Based on contributions by
    Tomasz Kalinowski in PR#18482.
  * New generic chooseOpsMethod() provides a mechanism for objects to
    resolve cases where two suitable methods are found for an Ops
    Group Generic. This supports experimenting with alternative
    object systems. Based on contributions by Tomasz Kalinowski in
    PR#18484.
  * inherits(x, what) now accepts values other than a simple
    character vector for argument what. A new generic, nameOfClass(),
    is called to resolve the class name from what. This supports
    experimenting with alternative object systems. Based on
    contributions by Tomasz Kalinowski in PR#18485.
  * Detection of BLAS/LAPACK in use (sessionInfo()) with FlexiBLAS
    now reports the current backend.
  * The "data.frame" method for subset() now warns about extraneous
    arguments, typically catching the use of = instead of == in the
    subset expression.
  * Calling a:b when numeric a or b is longer than one may now be
    made into an error by setting environment variable
    _R_CHECK_LENGTH_COLON_ to a true value, along the proposal in
    PR#18419 by Henrik Bengtsson.
  * density(x, weights = *) now warns if automatic bandwidth
    selection happens without using weights; new optional warnWbw may
    suppress the warning.  Prompted by Christoph Dalitz' PR#18490 and
    its discussants.
  * rm(list = *) is faster and more readable thanks to Kevin Ushey's
    PR#18492.
  * The plot.lm() function no longer produces a normal Q-Q plot for
    GLMs. Instead it plots a half-normal Q-Q plot of the absolute
    value of the standardized deviance residuals.
  * The print() method for class "summary.glm" no longer shows
    summary statistics for the deviance residuals by default.  Its
    optional argument show.residuals can be used to show them if
    required.
  * The tapply() function now accepts a data frame as its X argument,
    and allows INDEX to be a formula in that case. by.data.frame()
    similarly allows INDICES to be a formula.
  * The performance of df[j] &lt;- value (including for missing j) and
    write.table(df) has been improved for data frames df with a large
    number of columns.  (Thanks to Gabriel Becker's PR#18500,
    PR#18503 and discussants, prompted by a report from Toby Dylan
    Hocking on the R-devel mailing list.)
  * The matrix multiply operator %*% is now an S3 generic, belonging
    to new group generic matrixOps.  From Tomasz Kalinowski's
    contribution in PR#18483.
  * New function array2DF() to convert arrays to data frames,
    particularly useful for the list arrays created by tapply().
  DATES and TIMES:
  * On platforms where (non-UTC) datetimes before 1902 (or before
    1900 as with system functions on recent macOS) are guessed by
    extrapolating time zones from 1902-2037, there is a warning at
    the first use of extrapolation in a session.  (As all time zones
    post 2037 are extrapolation, we do not warn on those.)
  * (Platforms using --with-internal-tzone, including Windows and by
    default macOS). How years are printed in dates or date-times can
    be controlled by environment variable R_PAD_YEARS_BY_ZERO.  The
    default remains to pad to 4 digits by zeroes, but setting value
    no gives no padding (as used by default by glibc).
  * strftime() tries harder to determine the offset for the "%z"
    format, and succeeds on the mainstream R platforms.
  * strftime() has a limit of 2048 bytes on the string produced -
    attempting to exceed this is an error.  (Previously it silently
    truncated at 255 bytes.)
  * sessionInfo() records (and by default prints) the system time
    zone as part of the locale information.  Also, the source
    (system/internal) of the date-time conversion and printing
    functions.
  * Objects of class "POSIXlt" created in this version of R always
    have 11 components: component zone is always set, and component
    gmtoff is set for times in UTC and usually set on the (almost
    all) platforms which have C-level support, otherwise is NA.
  * There are comprehensive validity checks on the structure of
    objects of class "POSIXlt" when converting (including formatting
    and printing).  (This avoids mis-conversions of hand-crafted
    objects.)
  * There is some support for using the native date-time routines on
    macOS: this is only viable on recent versions (e.g. 12.6 and 13)
    and does get wrong some historical changes (before 1900, during
    WWII).  Use of --with-internal-tzone remains the default.
  * as.POSIXct(&lt;numeric&gt;) and as.POSIXlt(.) (without specifying
    origin) now work.  So does as.Date(&lt;numeric&gt;).
  * as.Date.POSIXct(., tz) now treats several tz values, notably
    "GMT" as equivalent to "UTC", proposed and improved by Michael
    Chirico and Joshua Ulrich in PR#17674.
  * Experimental balancePOSIXlt() utility allows using "ragged" and
    or out-of-range "POSIXlt" objects more correctly, e.g., in
    subsetting and subassignments.  Such objects are now documented.
    More experimentally, a "POSIXlt" object may have an attribute
    "balanced" indicating if it is known to be filled or fully
    balanced.
  * Functions axis.Date() and axis.POSIXct() are rewritten to gain
    better default tick locations and better default formats by using
    prettyDate(). Thanks to Swetlana Herbrandt.
  * The mapping of Windows' names for time zones to IANA's 'Olson'
    names has been updated.  When ICU is available (it is by
    default), it is used to get a mapping for the current region set
    in Windows.  This can be overridden by setting environment
    variable TZ to the desired Olson name - see OlsonNames() for
    those currently available.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 16
    and so packages that provide graphics devices should be
    reinstalled.
  * The grDevices and grid packages have new functions for rendering
    typeset glyphs, primarily: grDevices::glyphInfo() and
    grid::grid.glyph().
    Rendering of typeset glyphs is only supported so far on the
    Cairo-based graphics devices and on the pdf() and quartz()
    devices.
  * The defined behaviour for "clear" and "source" compositing
    operators (via grid::grid.group()) has been changed (to align
    better with simple interpretation of original Porter-Duff
    definitions).
  * Support for gradients, patterns, clipping paths, masks, groups,
    compositing operators, and affine transformations has been added
    to the quartz() device.
  INSTALLATION on a UNIX-ALIKE:
  * A system installation of generic LAPACK 3.10.0 or later will be
    preferred to the version in the R sources.
    configure option --with-lapack=no (equivalently --without-lapack)
    forces compilation of the internal LAPACK sources.
    If --with-lapack is not specified, a system liblapack is looked
    for and used if it reports version 3.10.0 or later and does not
    contain BLAS routines.
    Packages using LAPACK will need to be reinstalled if this changes
    to using an external library.
  * On aarch64 Linux platforms using GCC, configure now defaults to
  - fPIC (instead of -fpic), as desired in PR#18326.
  * configure now checks conversion of datetimes between POSIXlt and
    POSIXct around year 2020.  Failure (which has been seen on
    platforms missing tzdata) is fatal.
  * If configure option --with-valgrind-instrumentation is given
    value 1 or 2, option --with-system-valgrind-headers is now the
    default and ignored (with a warning).  It is highly recommended
    that the system headers are installed alongside valgrind: they
    are part of its packaging on some Linux distributions and
    packaged separately (e.g. in the valgrind-devel RPM) on others.
    configure will give a warning if they are not found.
    The system headers will be required in a future release of R to
    build with valgrind instrumentation.
  * libcurl 8.x is now accepted by configure: despite a change in
    major version number it changes neither API nor ABI.
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools43, an update of the Rtools42 toolchain.  It is
    based on gcc 12 and newer versions of MinGW-W64, binutils and
    libraries.  At this time R-devel can still be built using
    Rtools42 without changes, but when R-devel is installed via the
    installer, it will by default look for Rtools43.
  * Old make targets rsync-extsoft and 32-bit ones that are no longer
    needed have been removed.
  * Default builds (including for packages) no longer select C99.
    Thus the C standard used is the default for the compiler, which
    for the toolchain in Rtools43 is C17.  (This is consistent with
    Unix builds.)
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++17 where
    available (which it is on all currently checked platforms): if
    not C++14 or C++11 is used if available otherwise C++ is not
    supported.
  * USE_FC_LEN_T is the default: this uses the correct
    (compiler-dependent) prototypes for Fortran BLAS/LAPACK routines
    called from C/C++, and requires adjustment of many such calls -
    see 'Writing R Extensions' SS6.6.1.
  * There is initial support for C++23 as several compilers are now
    supporting -std=c++23 or -std=c++2b or similar.  As for C++20,
    there no additional configure checks for C++23 features beyond a
    check that the compiler reports a __cplusplus value greater than
    that in the C++20 standard.  C++ feature tests should be used.
  * There is support for a package to indicate the version of the C
    standard which should be used to compile it, and for the
    installing user to specify this.  In most cases R defaults to the
    C compiler's default standard which is C17 (a `bug-fix' of C11) -
    earlier versions of R or compilers may have defaulted to C99.
    Current options are:
    USE_C17 Use a standard that is at most C17.  The intention is to
    allow legacy packages to still be installed when later C
    standards become the default, including packages using new
    keywords as identifiers or with K&amp;R-style function
    declarations.  This will use C17 if available, falling back
    to C11.
    USE_C90 Use the C90 (aka C89) standard.  (As that standard did
    not require compilers to identify that version, all we can
    verify is that the compiler does not claim to be using a
    later standard.  It may accept C99 features - for example
    clang accepts // to make comments.)
    USE_C99 Use the C99 standard. This should be rarely needed - it
    avoids the few new features of C11/C17 which can be useful if
    a package assumes them if C17 is specified and they are not
    implemented.
    USE_C23 Use C23 (or in future, later).  Compiler/library support
    for C23 is still being implemented, but LLVM clang from
    15.0.0 and the upcoming GCC 13 have quite extensive support.
    These can be specified as part of the SystemRequirements field in
    the package's DESCRIPTION file or _via_ options --use-C17 and so
    on of R CMD INSTALL and R CMD SHLIB.
    For further details see "Writing R Extensions" SS1.2.5.
  * (Windows) A src/Makefile.ucrt or src/Makefile.win file is now
    included after R_HOME/etcR_ARCH/Makeconf and so no longer needs
    to include that file itself.  Installation of a package with such
    a file now uses a site Makevars file in the same way as a package
    with a src/Makevars.win file would.
  * configure is now passed crucial variables such as CC and CFLAGS
    in its environment, as many packages were not setting them (as
    documented in 'Writing R Extensions' SS1.2).
    This has most effect where configure is used to compile parts of
    the package - most often by cmake or libtool which obfuscate the
    actual compile commands used.
    Also used for configure.win and configure.ucrt on Windows.
  FORTRAN FLAGS:
  * The flag -fno-optimize-sibling-calls is no longer forced for
    gfortran 7 and later.  It should no longer be needed now using
    'hidden' character-length arguments when calling BLAS/LAPACK
    routines from C/C++ is the default even for packages.  (Unless
    perhaps packages call Fortran code from C/C++ without using R's
    headers and without allowing for these arguments.)
  C-LEVEL FACILITIES:
  * The deprecated S-compatibility macros DOUBLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * The deprecated legacy typedefs of Sint and Sfloat in header R.h
    are no longer defined, and that header no longer includes header
    limits.h from C nor climits from C++.
  * New macro CAD5R() is provided in Rinternals.h and used in a few
    places in the R sources.
  * ALTREP now supports VECSXP vectors. Contributed by Gabor Csardi
    in PR#17620.
  * The Rcomplex definition (in header R_ext/Complex.h) has been
    extended to prevent possible mis-compilation when interfacing
    with Fortran (PR#18430).  The new definition causes compiler
    warnings with static initializers such as {1, 2}, which can be
    changed to {.r=1, .i=2}.
    Using the new definition from C++ depends on compiler extensions
    supporting C features that have not been incorporated into the
    C++ standards but are available in g++ and clang++: this may
    result in C++ compiler warnings but these have been worked around
    for recent versions of common compilers (GCC, Apple/LLVM clang,
    Intel).
    It is intended to change the inclusion of header R_ext/Complex.h
    by other R headers, so C/C++ code files which make use of
    Rcomplex should include that header explicitly.
  UTILITIES:
  * R CMD check does more checking of package .Rd files, warning
    about invalid email addresses and (some) invalid URIs and noting
    empty \item labels in description lists.
  * R CMD check now also reports problems when reading package news
    in md (file NEWS.md) and (optionally) plain text (file NEWS)
    formats.
  * _R_CHECK_TIMINGS_ defaults to a value from the environment even
    for R CMD check --as-cran; this allows for exceptionally fast or
    slow platforms.
    It now applies to checking PDF and HTML versions of the manuals,
    and 'checking CRAN incoming feasibility'.
  * R CMD check can optionally (but included in --as-cran) check
    whether HTML math rendering _via_ KaTeX works for the package .Rd
    files.
  * Non-interactive debugger invocations can be trapped by setting
    the environment variable _R_CHECK_BROWSER_NONINTERACTIVE_ to a
    true value.  This is enabled by R CMD check --as-cran to detect
    the use of leftover browser() statements in the package.
  * The use of sprintf and vsprintf from C/C++ has been deprecated in
    macOS 13 and is a known security risk.  R CMD check now reports
    (on all platforms) if their use is found in compiled code:
    replace by snprintf or vsnprintf respectively. [*NB:* whether
    such calls get compiled into the package is platform-dependent.]
  * Where recorded at installation, R CMD check reports the C and
    Fortran compilers used to build R.
    It reports the OS in use (if known, as given by osVersion) as
    well as that R was built for.
    It notes if a C++ standard was specified which is older than the
    current default: many packages have used C++11 to mean 'not
    C++98' - as C++11 is the minimum supported since R 4.0.0, that
    specification can probably be removed.
  * R CMD INSTALL reports the compilers (and on macOS, the SDK) used,
    and this is copied to the output of R CMD check.
    Where a C++ standard is specified, it is reported.
  * R CMD check's 'checking compilation flags in Makevars' has been
    relaxed to accept the use of flags such as -std=f2008 in
    PKG_FFLAGS.
  * tools::buildVignettes() has a new argument skip, which is used by
    R CMD check to skip (and note) vignettes with unavailable
    \VignetteDepends (PR#18318).
  * New generic .AtNames() added to enable class-specific completions
    after @. The formerly internal function findMatches() is now
    exported, mainly for use in methods for .DollarNames() and
    .AtNames().
  DEPRECATED AND DEFUNCT:
  * default.stringsAsFactors() is defunct.
  * Calling as.data.frame.&lt;class&gt;() directly (for 12 atomic classes)
    is going to be formally deprecated, currently activated by
    setting the environment variable
    _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ to non-empty, which also
    happens in R CMD check --as-cran.
  BUG FIXES:
  * Hashed environments with sizes less than 5 can now grow.
    (Reported to R-devel by Duncan Garmonsway.)
  * as.character(&lt;Rd&gt;, deparse = TRUE) failed to re-escape curly
    braces in LaTeX-like text.  (Reported by Hadley Wickham in
    PR#18324.)
  * library() now passes its lib.loc argument when requiring Depends
    packages; reported (with fix) in PR#18331 by Mikael Jagan.
  * R CMD Stangle: improved message about 'Output' files.
  * head(x, n) and tail(x, n) now signal an error if n is not
    numeric, instead of incidentally "working" sometimes returning
    all of x.  Reported and discussed by Colin Fay, in PR#18357.
  * The "lm" method for summary() now gives the correct F-statistic
    when the model contains an offset.  Reported in PR#18008.
  * C() and `contrasts&lt;-`() now preserve factor level names when
    given a function object (as opposed a function name which did
    preserve names). Reported in PR#17616.
  * c(a = 1, 2)[[]] no longer matches 2 but rather signals a
    _classed_ error.  Reported and analysed by Davis Vaughan in
    PR#18367, a duplicate of PR#18004, by Jan Meis et al.  For
    consistency, NULL[[]] is also erroneous now.  x[[]] &lt;- v gives an
    error of the same class "MissingSubscriptError".
  * The relist() function of utils now supports NULL elements in the
    skeleton (PR#15854).
  * ordered(levels = *) (missing x) now works analogously to factor(,
    ordered=TRUE); reported (with fix) by Achim Zeileis in PR#18389.
  * User-defined Rd macro definitions can now span multiple lines,
    thanks to a patch from Duncan Murdoch. Previously, the Rd parser
    silently ignored everything after the first line.
  * Plain-text help (tools::Rd2txt()) now preserves an initial blank
    line for text following description list items.
  * tools::Rd2HTML() and tools::Rd2latex() no longer split \arguments
    and \value lists at Rd comments.
  * tools::Rd2latex() now correctly handles optional text outside
    \items of argument lists as well as bracketed text at the
    beginning of sections, e.g., \value{[NULL]}.
  * as.character(&lt;POSIXt&gt;) now behaves more in line with the methods
    for atomic vectors such as numbers, and is no longer influenced
    by options().  Ditto for as.character(&lt;Date&gt;).  The
    as.character() method gets arguments digits and OutDec with
    defaults _not_ depending on options().  Use of as.character(*,
    format = .) now warns.
  * Similarly, the as.character.hexmode() and *.octmode() methods
    also behave as good citizen methods and back compatibility option
    keepStr = TRUE.
  * The as.POSIXlt(&lt;POSIXlt&gt;) and as.POSIXct(&lt;POSIXct&gt;) default
    methods now do obey their tz argument, also in this case.
  * as.POSIXlt(&lt;Date&gt;) now does apply a tz (time zone) argument, as
    does as.POSIXct(); partly suggested by Roland Fuss on the R-devel
    mailing list.
  * as.Date.POSIXlt(x) now also works when the list components are of
    unequal length, aka "partially filled" or "ragged".
  * expand.model.frame() looked up variables in the wrong environment
    when applied to models fitted without data.  Reported in
    PR#18414.
  * time() now (also) uses the ts.eps = getOption("ts.eps") argument
    and thus by default rounds values very close to the start (or
    end) of a year.  Based on a proposal by Andre"i V. Kostyrka on
    R-help.
  * Printing of a factanal() result with just one factor and sort =
    TRUE now works regularly, fixing PR#17863 by Timothy Bates,
    thanks to the 'R Contributors' working group.
  * Printing 0-length objects of class "factor", "roman", "hexmode",
    "octmode", "person", "bibentry", or "citation" now prints
    something better, one of which fixes PR#18422, reported by
    Benjamin Feakins.
  * Sys.timezone() queries timedatectl only if systemd is loaded;
    addressing a report by Jan Gorecki in PR#17421.
  * The formula method of cor.test() had scoping problems when
    environment(formula) was not the calling environment; reported
    with a patch proposal by Mao Kobayashi in PR#18439.
  * attach() of an environment with active bindings now preserves the
    active bindings.  Reported by Kevin Ushey in PR#18425.
  * BLAS detection now works also with system-provided libraries not
    available as regular files.  This fixes detection of the
    Accelerate framework on macOS since Big Sur.  Reported by David
    Novgorodsky.
  * download.file() gives a helpful error message in case of an
    invalid download.file.method option, thanks to Colin Fay's report
    in PR#18455.
  * Sporadic crashes of Rterm when using completion have been fixed.
  * Rprof() is now more reliable.  A livelock in thread
    initialization with too short sampling interval has been fixed on
    macOS.  A deadlock in using the C runtime has been fixed on
    Windows.  A potential deadlock has been prevented on Unix.
  * Cursor placement in Rgui now works even after a fixed-width font
    is selected.
  * Mandatory options (options()) are now set on startup so that
    saving and restoring them always works (PR#18372).
  * Package installation, R CMD INSTALL or install.packages(*), now
    parses each of the &lt;pkg&gt;/R/*.R files individually instead of
    first concatenating and then parse()ing the large resulting file.
    This allows parser or syntax errors to be diagnosed with correct
    file names and line numbers, thanks to Simon Dedman's report and
    Bill Dunlap's patch in PR#17859.
    This _does_ require syntactically self contained R source files
    now, fixing another inadvertent bug.
  * predict.lm(&lt;model with offset&gt;) now finds the offset in the
    correct environment, thanks to Andr'e Gillibert's report and patch
    in PR#18456.
  * getInitial(&lt;formula&gt;) now finds the selfStart model in the
    correct environment.  (Reported by Ivan Krylov in PR#18368.)
  * Fix for possible segfault when using recently-added graphics
    features, such as gradients, clipping paths, masks, and groups
    with pdf(file=NULL).
  * class(m) &lt;- class(m) no longer changes a matrix m by adding a
    class _attribute_.
  * packageDate(pkg) now only warns once if there is no pkg.
  * When ts() creates a multivariate time series, "mts", it also
    inherits from "array" now, and is.mts() is documented _and_
    stricter.
  * Rd2txt() now preserves line breaks of \verb Rd content and from
    duplicated \cr.  The former also fixes the rendering of verbatim
    output from Rd \Sexpr in plain-text help.
  * uniroot(f, interval) should no longer wrongly converge _outside_
    the interval in some cases where abs(f(x)) == Inf for an x at the
    interval boundary, thanks to posts by Ben Bolker and Serguei
    Sokol on R-devel.
  * Vectorized alpha handling in palette functions such as in gray(),
    rainbow(), or hcl.colors() works correctly now, thanks to Achim
    Zeileis' report and patch in PR#18476.
  * Formatting and print()ing of bibentry objects has dropped the
    deprecated citation.bibtex.max argument, such that the bibtex
    argument's default for print.bibentry() depends directly on the
    citation.bibtex.max option, whereas in format.bibentry() the
    option no longer applies.
  * Attempting to use a character string naming a foreign function
    entry point in a foreign function call in a package will now
    signal an error if the packages has called R_forceSymbols to
    specify that symbols must be used.
  * An error in table() could permanently set options(warn=2)
    promoting all subsequent warnings to errors.
  * The sigma() function gave misleading results for binary GLMs.  A
    new method for objects of class "glm" returns the square root of
    the estimate of the dispersion parameter using the same
    calculation as summary.glm().
  * bs() and ns() in the (typical) case of automatic knot
    construction, when some of the supposedly inner knots coincide
    with boundary knots, now moves them inside (with a warning),
    building on PR#18442 by Ben Bolker.
  * R CMD on Windows now skips the site profile with --no-site-file
    and --vanilla even when R_PROFILE is set (PR#18512, from Kevin
    Ushey).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1686916800">- CHANGES IN R 4.3.1:
  C-LEVEL FACILITIES:
  * The C-level API version of R's integrate(), Rdqags() in Applic.h,
    now returns the correct number of integrand evaluations neval,
    fixing PR#18515 reported and diagnosed by Stephen Wade.
  * The C prototypes for LAPACK calls dspgv and dtptrs in
    R_exts/Lapack.h had one too many and one too few character length
    arguments - but this has not caused any known issues. To get the
    corrected prototypes, include
    [#]include &lt;Rconfig.h&gt; // for PR18534fixed
    [#]ifdef PR18534fixed
    [#] define usePR18534fix 1
    [#]endif
    [#]include &lt;R_exts/Lapack.h&gt;
    in your C/C++ code (PR#18534).
  INSTALLATION:
  * Many of the checks of esoteric Internet operations and those
    using unreliable external sites have been moved to a new target
    that is not run by default and primarily intended for the core
    developers.  To run them use
    cd tests; make test-Internet-dev
  BUG FIXES:
  * .S3methods(), typically called from methods(), again marks
    methods from package base as visible.
    Also, the visibility of non-base methods is again determined by
    the method's presence in search().
  * tools::Rdiff() is now more robust against invalid strings, fixing
    installation tests on Windows without Rtools installed
    (PR#18530).
  * Fix (new) bug in hcl.colors(2, *), by Achim Zeileis (PR#18523).
  * head(., &lt;illegal&gt;) and tail(..) now produce more useful "Error in
    ...." error messages, fixing PR#18362.
  * Package code syntax on Windows is checked in UTF-8 when UTF-8 is
    the native encoding.
  * na.contiguous(x) now also returns the first run, when it is at
    the beginning and there is a later one of the same length;
    reported to R-devel, including a fix, by Georgi Boshnakov.
    Further, by default, it modifies only an existing attr(*,"tsp")
    but otherwise no longer sets one.
  * chol(&lt;not pos.def&gt;, pivot = &lt;T|F&gt;) now gives a correct error or
    warning message (depending on pivot), thanks to Mikael Jagan's
    (PR#18541).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1699012800">- CHANGES IN R 4.3.2:
  NEW FEATURES:
  * The default initialization of the "repos" option from the
    repositories file at startup can be skipped by setting
    environment variable R_REPOSITORIES to NULL such that
    getOption("repos") is empty if not set elsewhere.
  * qr.X() is now an implicit S4 generic in methods.
  * iconv(to = "ASCII//TRANSLIT") is emulated using substitution on
    platforms which do not support it (notably Alpine Linux).  This
    should give a human-readable conversion in ASCII on all platforms
    (rather than NA_character_).
  * trans3d() gains options continuous and verbose addressing the
    problem of possible "wrap around" when projecting too long
    curves, as reported by Achim Zeileis in PR#18537.
  * tools::showNonASCII() has been rewritten to work better on macOS
    14 (which has a changed implementation of iconv()).
  * tiff(type = "quartz") (the default on macOS) now warns if
    compression is specified: it continues to be ignored.
  INSTALLATION on a UNIX-ALIKE:
  * There is some support for building with Intel's LLVM-based
    compilers on x86_64 Linux, such as (C) icx, (C++) ipcx and
    (Fortran) ifx from oneAPI 2023.x.y.
  * There is support for using LLVM's flang-new as the Fortran
    compiler from LLVM 16.0.x (preferably 17.0.0 or later).
  UTILITIES:
  * R CMD check reports the use of the Fortran 90 random number
    generator RANDOM_NUMBER() and the subroutines to initialize it.
    'Writing R Extensions' has example code to use R's RNGs from
    Fortran.
  BUG FIXES:
  * substr(x, n, L) &lt;- cc now works (more) correctly for multibyte
    UTF-8 strings x when L &gt; nchar(x), thanks to a report and patch
    by 'Architect 95'.
  * contrib.url(character()) now returns 0-length character() as
    documented, which also avoids spurious warnings from
    available.packages() et al. in the edge case of an empty vector
    of repository URLs.
  * readChar(., 4e8) no longer fails, thanks to Kodi Arfer's report
    (PR#18557).
  * lapply(&lt;list&gt;, as.data.frame) no longer warns falsely for some
    base vector components.
  * Communication between parent and child processes in the multicore
    part of parallel could fail on platforms that do not support an
    arbitrarily large payload in system functions read()/write() on
    pipes (seen on macOS where a restriction to INT_MAX bytes is
    documented, without doing a partial read unlike Linux). The
    payload is now split into 1Gb chunks to avoid that problem.
    (PR#18571)
  * qqplot(x,y, conf.level=.) gives better confidence bounds when
    length(x) != length(y), thanks to Alexander Ploner's report and
    patch proposal (PR#18557).
  * norm(&lt;0-length&gt;, "2") now gives zero instead of an error, as all
    the other norm types, thanks to Mikael Jagan's PR#18542.
  * Build-stage Rd macros \packageAuthor and \packageMaintainer now
    process Authors@R, fixing NA results when the package DESCRIPTION
    omits Author and Maintainer fields.
  * Formatting and printing complex numbers could give things like
    0.1683-0i because of rounding error: -0i is now replaced by +0i.
  * postscript() refused to accept a title comment containing the
    letter "W" (PR#18599).
  * isoreg(c(1,Inf)) signals an error instead of segfaulting, fixing
    PR#18603.
  * tiff(type = "Xlib") was only outputting the last page of
    multi-page plots.
  * tools::latexToUtf8() again knows about \~{n} and other letters
    with tilde, fixing a regression in R 4.3.0, and about \^{i} as an
    alternative to \^{\i} (similarly with other accents).
    Furthermore, LaTeX codes for accented I letters are now correctly
    converted, also fixing related mistakes in
    tools::encoded_text_to_latex().
  * tar(*, tar = "internal") no longer creates out-of-spec tar files
    in the very rare case of user or group names longer than 32
    bytes, fixing PR#17871 with thanks to Ivan Krylov.
  * When using the "internal" timezone datetime code, adding a
    fraction of a second no longer adds one second, fixing PR#16856
    from a patch by Ivan Krylov.
  * tools::checkRd() no longer produces spurious notes about
    "unnecessary braces" from multi-line Rd results of \Sexpr macros.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1709208000">- CHANGES IN R 4.3.3:
  NEW FEATURES:
  * iconv() now fixes up variant encoding names such as "utf8"
    case-insensitively.
  DEPRECATED AND DEFUNCT:
  * The legacy encoding = "MacRoman" is deprecated in pdf() and
    postscript(): support was incomplete in earlier versions of R.
  BUG FIXES:
  * Arguments are now properly forwarded to methods on S4 generics
    with ... in the middle of their formal arguments. This was broken
    for the case when a method introduced an argument but did not
    include ... in its own formals. Thanks to Herv'e Pag`es for the
    report PR#18538.
  * Some invalid file arguments to pictex(), postscript() and xfig()
    opened a file called NA rather than throw an error.  These
    included postscript(NULL) (which some people expected to work
    like pdf(NULL)).
  * Passing filename = NA to svg(), cairo_pdf(), cairo_ps() or the
    Cairo-based bitmap devices opened a file called NA: it now throws
    an error.
  * quartz(file = NA) opened a file called NA, including when used as
    a Quartz-based bitmap device.  It now gives an error.
  * rank(&lt;long vector&gt;) now works, fixing PR#18617, thanks to Ilia
    Kats.
  * seq.int() did not adequately check its length.out argument.
  * match(&lt;POSIXct&gt;, .) is correct again for differing time zones,
    ditto for "POSIXlt", fixing PR#18618 reported by Bastian Klein.
  * drop.terms(*, dropx = &lt;0-length&gt;) now works, fixing PR#18563 as
    proposed by Mikael Jagan.
  * drop.terms(*) keeps + offset(.) terms when it should, PR#18565,
    and drop.terms() no longer makes up a response, PR#18566, fixing
    both bugs thanks to Mikael Jagan.
  * getS3method("t", "test") no longer finds the t.test() function,
    fixing PR#18627.
  * pdf() and postscript() support for the documented Adobe encodings
    "Greek" and "Cyrilllic" was missing (although the corresponding
    Windows' codepages could be used).
  * Computations of glyph metric information for pdf() and
    postscript() did not take into account that transliteration could
    replace one character by two or more (only seen on macOS 14) and
    typically warned that the information was not known.
  * rank(x) no longer overflows during integer addition, when
    computing rank average for largish but not-yet long vector x,
    fixing PR#18630, thanks to Ilia Kats.
  * list.files() on Windows now returns also files with names longer
    that 260 bytes (the Windows limit is 260 characters).
    Previously, some file names particularly with 'East Asian'
    characters were omitted.
  * cov2cor(&lt;0 x 0&gt;) now works, fixing PR#18423 thanks to Mikael
    Jagan and Elin Waring.
  * cov2cor(&lt;negative diagonal&gt;) and similar now give one warning
    instead of two, with better wording, fixing PR#18424 thanks to
    Mikael Jagan.
  * tools:: startDynamicHelp() now ensures port is in proper range,
    fixing PR#18645.
  * pbeta(x, a,b) is correct now for x=0 or 1 in the boundary cases
    where a or b or both are 0, fixing PR#18672 thanks to Michael
    Fay.
  * pmatch(x, table) for large table, also called for data frame row
    selection, dfrm[nm, ], is now interruptible, fixing PR#18656.
  * predict(&lt;rank-deficient lm&gt;, newdata=*) fix computing of nbasis,
    see Russ Lenth's comment 29 in PR#16158.
  * Added a work-around for a bug in macOS 14.3.1 and higher which
    prevents R plots in the Quartz Cocoa device from updating on
    screen.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1713960000">- CHANGES IN R 4.4.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Startup banners, R --version, sessionInfo() and R CMD check no
    longer report (64-bit) as part of the platform as this is almost
    universal - the increasingly rare 32-bit platforms will still
    report (32-bit).
    On Windows, ditto for window titles.
  * is.atomic(NULL) now returns FALSE, as NULL is not an atomic
    vector.  Strict back-compatibility would replace is.atomic(foo)
    by (is.null(foo) || is.atomic(foo)) but should happen only
    sparingly.
  NEW FEATURES:
  * The confint() methods for "glm" and "nls" objects have been
    copied to the stats package.  Previously, they were stubs which
    called versions in package MASS. The MASS namespace is no longer
    loaded if you invoke (say) confint(glmfit).  Further, the "glm"
    method for profile() and the plot() and pairs() methods for class
    "profile" have been copied from MASS to stats.  (profile.nls()
    and plot.profile.nls() were already in stats.)
  * The confint() and profile methods for "glm" objects have gained a
    possibility to do profiling based on the Rao Score statistic in
    addition to the default Likelihood Ratio. This is controlled by a
    new test = argument.
  * The pairs() method for "profile" objects has been extended with a
    which = argument to allow plotting only a subset of the
    parameters.
  * The "glm" method for anova() computes test statistics and
    p-values by default, using a chi-squared test or an F test
    depending on whether the dispersion is fixed or free.  Test
    statistics can be suppressed by giving argument test a false
    logical value.
  * In setRepositories() the repositories can be set using their
    names via name = instead of index ind =.
  * methods() and .S3methods() gain a all.names option for the (rare)
    case where functions starting with a . should be included.
  * Serializations can now be interrupted (e.g., by Ctrl-C on a
    Unix-alike) if they take too long, e.g., from save.image(),
    thanks to suggestions by Ivan Krylov and others on R-devel.
  * New startup option --max-connections to set the maximum number of
    simultaneous connections for the session.  Defaults to 128 as
    before: allowed values up to 4096 (but resource limits may in
    practice restrict to smaller values).
  * R on Windows (since Windows 10 2004) now uses the new Segment
    Heap allocator. This may improve performance of some
    memory-intensive applications.
  * When R packages are built, typically by R CMD build &lt;pkg&gt;, the
    new --user=&lt;build_user&gt; option overrides the (internally
    determined) user name, currently Sys.info()["user"] or LOGNAME.
    This is a (modified) fulfillment of Will Landau's suggestion in
    PR#17530.
  * tools::testInstalledBasic() gets new optional arguments outDir
    and testSrcdir, e.g., allowing to use it in a &lt;builddir&gt; !=
    &lt;srcdir&gt; setup, and in standard "binary" Windows installation
  * if* a source tests/ folder is present.
  * range(&lt;DT_with_Inf&gt;, finite = TRUE) now work for objects of class
    "Date", "POSIXct", and "POSIXlt" with infinite entries,
    analogously to range.default(), as proposed by Davis Vaughan on
    R-devel.  Other range()-methods can make use of new function
    .rangeNum().
  * New .internalGenerics object complementing .S3PrimitiveGenerics,
    for documentation and low-level book-keeping.
  * grid() now invisibly returns the x- and y- coordinates at which
    the grid-lines were drawn.
  * norm(., type) now also works for complex matrices.
  * kappa(., exact = TRUE, norm = *) now works for all norms and also
    for complex matrices.  In symmetric / triangular cases, the new
    argument uplo = "U" | "L" allows the upper or lower triangular
    part to be specified.
  * memDecompress(type = "unknown") recognizes compression in the
    default 'zlib' format as used by memCompress(type = "gzip").
  * memCompress() and memDecompress() will use the libdeflate library
    (&lt;https://github.com/ebiggers/libdeflate&gt;) if installed.  This
    uses the same type of compression for type = "gzip" but is 1.5-2x
    faster than the system libz library on some common platforms: the
    speed-up may depend on the library version.
  * diff() for objects of class "Date", "POSIXct", and "POSIXlt"
    accepts a units argument passed via ....
  * Dynamic help now does a much better job of rendering package
    DESCRIPTION metadata.
  * Rprof() gains an event argument and support for elapsed (real)
    time profiling on Unix (PR#18076).
  * filled.contour() gains a key.border argument.
  * tools::update_pkg_po() gets arguments pot_make and mo_make for
    _not_ re-making the corresponding files, and additionally a
    verbose argument.
  * Hexadecimal string colour specifications are now accepted in
    short form, so, for example, we can use "#123", which is
    equivalent to "#112233".
    Thanks to MikeFC for the original idea and Ella Kaye, Malcolm
    Barrett, George Stagg, and Hanne Oberman for the patch.
  * Plain-text help shows \var markup by angle brackets.
  * The new experimental primitive function declare() is intended to
    eventually allow information about R code to be communicated to
    the interpreter, compiler, and code analysis tools. The syntax
    for declarations is still being developed.
  * Functions psmirnov(), qsmirnov() and rsmirnov() in package stats
    have had argument two.sided renamed to alternative, to take into
    account that the permutation distributions of the one-sided
    statistics can be different in the case of ties.  Consequence of
    PR#18582.
  * sort() is now an implicit S4 generic in methods.
  * Formatting and printing, format(z), print(z), of complex vectors
    z no longer zap relatively small real or imaginary parts to zero,
    fixing PR#16752.  This is an API change, as it was documented
    previously to round real and imaginary parts together on purpose,
    producing nicer looking output.  As mentioned, e.g. in the PR,
    this change is compatible with many other "R-like" programming
    environments.
    We have simplified the internal code and now basically format the
    real and imaginary parts independently of each other.
  * New experimental functions Tailcall() and Exec() to support
    writing stack-space-efficient recursive functions.
  * Where characters are attempted to be plotted by pdf(),
    postscript() and xfig() which are not in the selected 8-bit
    character set (most often Latin-1) and the R session is using a
    UTF-8 locale, the warning messages will show the UTF-8 character
    rather than its bytes and one dot will be substituted per
    character rather than per byte.  (Platforms whose iconv() does
    transliteration silently plot the transliteration.)
    In a UTF-8 locale some transliterations are now done with a
    warning (e.g., dashes and Unicode minus to hyphen, ligatures are
    expanded, permille (‰) is replaced by o/oo), although the OS may
    have got there first.  These are warnings as they will continue
    to be replaced by dots in earlier versions of R.
  * The matrix multiplication functions crossprod() and tcrossprod()
    are now also primitive and S3 generic, as %*% had become in R
    4.3.0.
  * source() and example() have a new optional argument catch.aborts
    which allows continued evaluation of the R code after an error.
  * The non-Quartz tiff() devices allow additional types of
    compression if supported by the platform's libtiff library.
  * The list of base and recommended package names is now provided by
    tools::standard_package_names().
  * cairo_pdf() and cairo_ps() default to onefile = TRUE to closer
    match pdf() and postscript().
  * New option catch.script.errors provides a documented way to catch
    errors and then continue in non-interactive use.
  * L %||% R newly in base is an expressive idiom for the phrases
    if(!is.null(L)) L else R or if(is.null(L)) R else L.
  * The return value from warnings() now always inherits from
    "warnings" as documented, now also in the case of no warnings
    where it previously returned NULL.
  * as.complex("1i") now returns 0 + 1i instead of NA with a warning.
  * z &lt;- c(NA, 1i) now keeps the imaginary part Im(z[1]) == 0, no
    longer coercing to NA_complex_.  Similarly, cumsum(z) correctly
    sums real and imaginary parts separately, i.e., without
    "crosstalk" in case of NAs.
  * On Alpine Linux iconv() now maps "latin2", "latin-2", "latin9"
    and "latin-9" to encoding names the OS knows about
    (case-insensitively).
  * iconv(sub = "Unicode") now always zero-pads to four (hex) digits,
    rather than to 4 or 8.  (This seems to have become the convention
    once Unicode restricted the number of Unicode points to 2^21 - 1
    and so will never need more than 6 digits.)
  * NCOL(NULL) now returns 0 instead of 1, for consistency with
    cbind().
  * The information for the Euro glyph missing from the Adobe .afm
    files for the Courier, Helvetica and Times families has been
    copied from their URW equivalents - this will improve vertical
    centring in the pdf() and postscript() devices.
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.12.0.  The changes are almost entirely cosmetic.
  * The included LAPACK sources have been updated to version 3.12.0
    and some further double-complex routines added.
  * There are new font families for the 2014--5 URW 2.0 fonts (see
    ?pdf) which are included in recent versions of Ghostscript.
    These have font widths for most Greek glyphs and a few others
    which were missing from the original versions (whose font
    families remain available for reproducibility, although
    Ghostscript-based viewers will render using the 2.0 versions).
  * Improve the large-n efficiency of as.matrix(&lt;dist&gt;), thanks an R
    contributors effort, notably by Tim Taylor and Heather Turner,
    see PR#18660.
  * The default and numeric methods of all.equal() get a check.class
    option.
  * zapsmall() gets new optional arguments, function mFUN and min.d,
    for extra flexibility; fulfills a wish in PR#18199.  Also, it is
    now an implicit S4 generic in package methods.
  * The Rd filter for aspell() gains an ignore argument.
  * New generic function sort_by(), primarily useful for the
    data.frame method which can be used to sort rows of a data frame
    by one or more columns.
  * The icence headers for the RPC code in src/extra/xdr have been
    updated to use the GPL-compatible licence published by Oracle
    America in 2010.
  * New function pkg2HTML() in tools to create single-page HTML
    reference manuals for R packages.
  * The byte code evaluator now uses less C stack space for recursive
    calls to byte-compiled functions. It also makes more of an effort
    to avoid allocations for scalar return values.
  * New completion option backtick (disabled by default) allows
    non-syntactic completions to be wrapped in backquotes. This is
    currently only useful for Jupyter notebooks via the IRkernel
    package, and may cause problems for other backends.
  INSTALLATION:
  * The parser has been updated to work with bison 3.8.2, which is
    now used for the pre-generated parsers in gram.c, file.c, and
    gramRd.c. A few parser error messages have changed, which may
    affect code that relies on exact messages.
  INSTALLATION on a UNIX-ALIKE:
  * System valgrind headers are now required to use configure option
  - -with-valgrind-instrumentation with value 1 or 2.
  * configure will warn if it encounters a 32-bit build, as that is
    nowadays almost untested.
  * Environment variable R_SYSTEM_ABI is no longer used and so no
    longer recorded in etc/Renviron (it was not on Windows and was
    only ever used when preparing package tools).
  * If the libdeflate library and headers are available, libdeflate
    rather than libz is used to (de)compress R objects in lazy-load
    databases.  Typically tasks spend up to 5% of their time on such
    operations, although creating lazy-data databases is one of the
    exceptions.
    This can be suppressed if the library is available by the
    configure option --without-libdeflate-compression.
  * configure option --enable-lto=check has not worked reliably since
    2019 and has been removed.
  * The minimum autoconf requirement for a maintainer build has been
    increased to autoconf 2.71.
    It is intended to increase this to 2.72 for R 4.5.0: the
    distributed configure file was generated using 2.72.
  * The minimum version requirement for an external LAPACK has been
    reduced to 3.9.0.
  * No default C++ compiler is set if no C++17 compiler is detected:
    there is no longer an automatic fallback to C++14 or C++11.
    Compilers from the last five years should have sufficient
    support: for others macros CXX and CXXSTD can be set in file
    config.site to provide a fallback if needed.
    The Objective-C++ compiler now by default uses the standard
    selected by R for C++ (currently C++17) rather than the default
    standard for the C++ compiler (which on macOS is still C++98).
  INSTALLATION on macOS:
  * A new configure option --with-newAccelerate makes use of Apple's
    'new' BLAS / LAPACK interfaces in their Accelerate framework.
    Those interfaces are only available in macOS 13.3 or later, and
    building requires SDK 13.3 or later (from the Command Line Tools
    or Xcode 14.3 or later).
    By default the option uses new Accelerate for BLAS calls: to also
    use it for LAPACK use option --with-newAccelerate=lapack.  The
    later interfaces provide LAPACK 3.9.1 rather than 3.2.1: 3.9.1 is
    from 2021-04 and does not include the improved algorithms
    introduced in LAPACK 3.10.0 (including for BLAS calls).
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools44, an update of the Rtools43 toolchain.  It is
    based on GCC 13 and newer versions of MinGW-W64, binutils and
    libraries (targeting 64-bit Intel CPUs).  R-devel can no longer
    be built using Rtools43 without changes.
  * Rtools44 has experimental support for 64-bit ARM (aarch64) CPUs
    _via_ the LLVM 17 toolchain using lld, clang/flang-new and
    libc++.
  UTILITIES:
  * R CMD check notes when S4-style exports are used without
    declaring a strong dependence on package methods.
  * tools::checkRd() (used by R CMD check) detects more problems with
    \Sexpr-based dynamic content, including bad nesting of \Sexprs
    and invalid arguments.
  * tools::checkRd() now reports Rd titles and section names ending
    in a period; this is ignored by R CMD check unless environment
    variable _R_CHECK_RD_CHECKRD_MINLEVEL_ is set to -5 or smaller.
  * R CMD check now notes Rd files without an \alias, as long
    documented in 'Writing R Extensions' §1.3.1.  The check for a
    missing \description has been moved from tools::checkRd() to
    tools::checkRdContents().
  * R CMD check now visits inst/NEWS.Rd and OS-specific man
    subdirectories when checking Rd files.
  * tools::checkDocFiles() and tools::checkRdContents() now also
    check internal Rd files by default, but "specially" (ignoring
    missing documentation of arguments).
  * R CMD Rdiff gets option --useEx.
  * R CMD check now warns on non-portable uses of Fortran KIND such
    as INTEGER(KIND=4) and REAL(KIND=8).
    To see the failing lines set environment variable
    _R_CHECK_FORTRAN_KIND_DETAILS_ to a true value.
  * When checking Rd files, R CMD check now notes some of the "lost
    braces" that tools::checkRd() finds.  Typical problems are Rd
    macros missing the initial backslash (e.g., code{...}), in-text
    set notation (e.g., {1, 2}, where the braces need escaping), and
    \itemize lists with \describe-style entries of the form
    \item{label}{description}.
  * R CMD INSTALL (and hence check) will compile C++ code with
  - DR_NO_REMAP if environment variable _R_CXX_USE_NO_REMAP_ is set
    to a true value.  It is planned that this will in future become
    the default for compiling C++.
  * The new built-in Rd macro \dontdiff{} can be used to mark example
    code whose output should be ignored when comparing check output
    to reference output (tests/Examples/&lt;pkg&gt;-Ex.Rout.save).  The
    \dontdiff tag, like \donttest, is _not_ shown on the rendered
    help page, so provides a clean alternative to ##
    IGNORE_RDIFF_(BEGIN|END) comments.
  * R CMD build when there is no NAMESPACE, now uses the recommended
    exportPattern("^[^.]"), instead of exporting everything.
  * R CMD check now warns about non-ASCII characters in the NAMESPACE
    file (in addition to R files). Such packages are not portable and
    may fail to install on some platforms.
  C-LEVEL FACILITIES:
  * Headers R_ext/Applic.h and R-ext/Linpack.h used to include
    R_ext/BLAS.h although this was undocumented and unneeded by their
    documented entry points.  They no longer do so.
  * New function R_missing(), factored out from do_missing(), used to
    fix PR#18579.
  * SEXP type S4SXP has been renamed to OBJSXP to support
    experimenting with alternative object systems.  The S4SXP value
    can still be used in C code but is now deprecated.  Based on
    contributions from the R Consortium's Object-Oriented Programming
    Working Group.
  * New function pow1p(x,y) for accurate (1+x)^y.
  * mkCharLenCE was incorrectly documented to take a size_t length
    but was implemented with int (and character strings in R are
    limited to 2^31 - 1 bytes).
  DEPRECATED AND DEFUNCT:
  * data() no longer handles zipped data from long-defunct (since R
    2.13.0) --use-zip-data installations.
  * The legacy graphics devices pictex() and xfig() are now
    deprecated.  They do not support recent graphics enhancements and
    their font handling is rudimentary. The intention is to retain
    them for historical interest as long as they remain somewhat
    functional.
  * Support for encoding = "MacRoman" has been removed from the pdf()
    and postscript() devices - this was a legacy encoding supporting
    classic macOS up to 2001 and no longer has universal libiconv
    support.
  * is.R() is deprecated as no other S dialect is known to be in use
    (and this could only identify historical dialects, not future
    ones).
    Further information on calls can be obtained by setting the
    environment variable _R_DEPRECATED_IS_R_ to error which turns the
    deprecation warning into an error and so by default gives a
    traceback.  (This is done by R CMD check --as-cran.)
  * UseMethod() no longer forwards local variables assigned in the
    generic function into method call environments before evaluating
    the method body. This makes method calls behave more like
    standard function calls and makes method code easier to analyze
    correctly.
  * The twelve as.data.frame.&lt;class&gt;() methods which were deprecated
    only via _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ and in R CMD
    check --as-cran are formally deprecated now in favour of calling
    as.data.frame() or as.data.frame.vector().  The deprecation
    "check" now works also when as.data.frame() is S4 generic thanks
    to Ivan Krylov.
  * The default method for the directional comparison operators &lt;, &gt;,
    &lt;=, and &gt;= now signals an error when one of the operands is a
    language object, i.e. a symbol or a call.
  * For terms.formula(), deprecate abb and neg.out arguments
    _formally_ in addition to just documenting it.
  BUG FIXES:
  * The methods package is more robust to not being attached to the
    search path.  More work needs to be done.
  * pairwise.t.test() misbehaved when subgroups had 0 DF for
    variance, even with pool.sd = TRUE.  (PR#18594 by Jack Berry).
  * Probability distribution functions [dpq]&lt;distrib&gt;(x, *), but also
    bessel[IKJY](x, .) now consistently preserve attributes(x) when
    length(x) == 0, e.g., for a 2 x 0 matrix, thanks to Karolis
    Koncevičius' report PR#18509.
  * Group "Summary" computations such as sum(1:3, 4, na.rm = 5, NA,
    7, na.rm = LL) now give an error instead of either 17 or NN for
    LL true or false, as proposed by Ivan Krylov on the R-devel
    mailing list.  (This also means it is now an error to specify
    na.rm more than once.)
  * as.complex(x) now returns complex(real = x, imaginary = 0) for
    _all_ numerical and logical x, notably also for NA or
    NA_integer_.
  * Directories are now omitted by file.copy(, recursive = FALSE) and
    in file.append() (PR#17337).
  * gsub() and sub() are now more robust to integer overflow when
    reporting errors caused by too large input strings (PR#18346).
  * Top-level handlers are now more robust to attempts to remove a
    handler whilst handlers are running (PR#18508).
  * The handling of Alt+F4 in dialogs created on Windows using
    GraphApp has been fixed (PR#13870).
  * density() more consistently computes grid values for the
    FFT-based convolution, following Robert Schlicht's analysis and
    proposal in PR#18337, correcting density values typically by a
    factor of about 0.999.  Argument old.coords = TRUE provides back
    compatibility.
  * palette.colors() gains a name argument that defaults to FALSE
    controlling whether the vector of colours that is returned has
    names (where possible).  PR#18529.
  * tools::xgettext() no longer extracts the (non-translatable) class
    names from warningCondition and errorCondition calls.
  * S3method(&lt;gen&gt;, &lt;class&gt;, &lt;func&gt;) in the NAMESPACE file now works
    (again) when &lt;func&gt; is visible from the namespace, e.g.,
    imported, or in base.
  * getParseData(f) now also works for a function defined in the
    first of several &lt;pkg&gt;/R/*.R source files, thanks to Kirill
    Müller's report and Duncan Murdoch's patch in PR#16756.
  * Rd \Sexpr macros with nested #ifdef conditionals were not
    processed.
  * A non-blocking connection with non-default encoding (such as a
    socket) now correctly returns from readLines() after new data has
    arrived also when its EOF had been reached previously.  Thanks to
    Peter Meilstrup's report on R-devel and Ivan Krylov's report and
    patch proposal in PR#18555.
  * tools::checkRdContents() failed to detect empty argument
    descriptions when they spanned multiple lines, including those
    generated by prompt().  These cases are now noted by R CMD check.
  * Plain-text help no longer outputs spurious colons in the
    arguments list (for multi-line \item labels in the Rd source).
  * kappa() and rcond() work correctly in more cases; kappa(., norm =
    "2") now warns that it computes the 1-norm with (default) exact =
    FALSE; prompted by Mikael Jagan's quite comprehensive PR#18543.
  * Rd skeletons generated by prompt() or promptData() now use a
    dummy title (so R CMD build works).  tools::checkRdContents() has
    been updated to detect such template leftovers, including from
    promptPackage().
  * When S4 method dispatch fails because no method was found, the
    error message now includes the signature argument names; thanks
    to Michael Chirico's proposal on the R-devel list.
  * withAutoprint({ .. }) now preserves srcrefs previously lost,
    thanks to Andrew Simmons' report plus fix in PR#18572.
  * transform.data.frame() no longer adjusts names; in particular,
    untransformed variables are kept as-is, including those with
    syntactically invalid names (PR#17890).
  * The keep.source option for Rd \Sexpr blocks is no longer ignored.
  * The formula methods for t.test() and wilcox.test() now catch when
    paired is passed, addressing PR#14359; use Pair(x1, x2) ~ 1 for a
    paired test.
  * The level reported in the browser prompt was often too large. It
    now shows the number of browser contexts on the stack.
  * For cbind() and rbind(), the optional deparse.level argument is
    now properly passed to methods, thanks to Mikael Jagan's PR#18579
    and comments there.
  * Some error and warning messages for large ('long vector')
    matrix(v, nr, nc) and dim(m) &lt;- d are now correct about sizes,
    using long long formatting, fixing PR#18612 (and more) reported
    by Mikael Jagan.
  * readChar(useBytes = TRUE) now terminates strings even when the
    underlying connection uses extra spaces in the input buffer.
    This fixes problems with extra garbage seen with gzip
    connections, PR#18605.
  * Named capture in PCRE regular expressions now works also with
    more than 127 named groups (PR#18588).
  * Datetime functions are now robust against long jumps when dealing
    with internal time zone changes.  This avoids confusing warnings
    about an invalid time zone, previously triggered by turning
    warnings into errors or handling them via tryCatch (PR#17966,
    PR#17780).
  * Datetime functions now restore even an empty TZ environment
    variable after internal time zone changes (PR#17724).  This makes
    results of datetime functions with this (typically unintentional)
    setting more predictable.
  * drop.terms(*) now drops response as by default, keep.response =
    FALSE, fixing PR#18564 thanks to Mikael Jagan.
  * dummy.coef(.) now also works for lm()-models with character
    categorical predictor variables rather than factor ones, fixing
    PR#18635 reported by Jinsong Zhao.
  * formals(f) &lt;- formals(f) now also works for a function w/o
    arguments and atomic _constant_ body(f).
  * Correct as.function(&lt;invalid list&gt;, .)'s error message.
  * removeSource() is yet more thorough in finding and removing
    "srcref" and the other source references from parsed R language
    chunks, fixing PR#18638 thanks to Andrew Simmons.
  * dgeom() is more accurate now, notably when its result is very
    small, fixing PR#18642 thanks to the proposal of Morten Welinder,
    also improving other instances where C level binom_raw(x, n, ..)
    has x == 0 or x== n.
  * warning() with options(warn = 1) has improved output for
    multi-line messages.
  * axis.Date() and axis.POSIXct() now respect the par("lab") setting
    for the number of pretty() intervals.
  * Comparisons for language objects (which are based on deparsing)
    are now more careful about using accurate deparsed results
    (PR#18676).
  * Plain-text help (Rd2txt) now correctly preserves blank lines
    following single-line \dontrun code.
  * &lt;POSIXlt&gt;[*] no longer sets wrong "balanced" attribute, fixing
    PR#18681 thanks to Mikael Jagan.
  * str(&lt;classed-call&gt;) now deparses the call as expected, fixing
    PR#18684, reported by Dave Slager.
  * In Rd examples, code following the closing brace of a \dontrun,
    \dontshow or \donttest tag on the same line is no longer skipped
    when R CMD check runs the examples.
  * as.data.frame(matrix(*, ncol=0)) now gets valid names() and
    colnames(); reported by Davis Vaughan on the R-devel list.
  * Internal Mathlib function stirlerr(n) is now almost fully
    (52-bit) accurate for all n &gt;= ~5.9 and more accurate also in the
    range 1 -- 5.9.  This entails small ("after 12th decimal")
    changes in density functions, e.g., dgamma() in _some_ regions of
    their support.  The fix was partly prompted by Morten Welinder's
    PR#18640.
  * Numbers like 9876543.2 are now considered non-integer by Mathlib
    internal R_nonint(), amending original fix of PR#15734.
  * Rd comment lines no longer cause broken paragraphs in the
    rendered PDF and plain-text help. In code blocks, pure comment
    lines (starting with %) no longer produce an empty line.
  * xtabs(Freq ~ .) now consistently defaults to na.action = na.pass,
    using na.rm = FALSE (added as an argument) when summing over Freq
    (PR#17770).
  * tools::testInstalledPackage() is no longer silent about failures
    from running examples or tests and its return code no longer
    ignores failures from checking vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1718366400">- CHANGES IN R 4.4.1:
  C-LEVEL FACILITIES:
  * Functions R_atof and R_strtod declared in header R_ext/Utils.h
    are now documented in 'Writing R Extensions' and so formally part
    of the API.
  * The non-API entry points Rf_setSVector, Rf_StringFalse,
    Rf_StringTrue and Rf_isBlankString have been added to those
    reported by R CMD check.
  * The new function Rf_allocLang is now available. This provides an
    alternative to the idiom of calling Rf_allocList followed by
    SET_TYPEOF.
  UTILITIES:
  * R CMD check now reports as warnings what gfortran calls 'Fortran
    2018 deleted features', all of which have long been marked as
    'obsolescent' and some of which were deleted in Fortran 2008 or
    earlier.  Fortran compilers are no longer required to support
    these.
  BUG FIXES:
  * as.numeric(), scan(), type.convert() and other places which use
    the internal C function R_strtod now require a _non-empty_ digit
    sequence in a decimal or binary exponent.  This aligns with the
    C/POSIX standard for strtod and with ?NumericConstants.
  * as.data.frame(m, make.names=NA) now works correctly for a matrix
    m with NA's in row names.
  * The error message from &lt;POSIXlt&gt;[["hour"]] and similar now
    mentions *[[, "hour"]], as wished for in PR#17409 and proposed by
    Michael Chirico.
  * qbinom() and potentially qpois(), qnbinom(), no longer sometimes
    fail accurate inversion (of pbinom(), etc), thanks to Christopher
    Chang's report and patch in PR#18711.
  * The internal help server on Windows can again serve requests sent
    in quick succession, fixing a regression in R 4.4.0.
  * debugcall(&lt;S3Generic&gt;()) now also works when a corresponding
    S4-generic version is in the methods cache (PR#18143).
  * Package tools' toTitleCase(ch0) now returns character(0) when ch0
    is of zero length; fixing PR#18724, reported by David Hugh Jones.
  * R CMD check is no longer broken (without a check result and no
    explanation in 00check.log) for a package which declares an
    invalid VignetteBuilder in DESCRIPTION but has no vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1730376000">- CHANGES IN R 4.4.2:
  C-LEVEL FACILITIES:
  * The S-compatibility macros F77_COM and F77_COMDECL defined in
    header R_ext/RS.h are deprecated and will be removed shortly.  We
    could find no record of their use.
  BUG FIXES:
  * Mathlib function lgammacor(x) no longer warns about underflow to
    zero for large x.
  * Text widths and heights were incorrectly reported by the Quartz
    device if the drawing context didn't exist yet (typically when
    drawing off-screen to a window that is yet to appear, see
    PR#18591).
  * The Quartz device could segfault in cases where paths with spaces
    are used in the new glyph drawing API.  Thanks to Tomek
    Gieorgijewski (PR#18758).
  * On macOS in R CRAN builds, it is again possible to read
    little-endian UTF-16 text with a BOM from a connection using
    encoding="UTF-16".  Users building R from source should avoid
    using the system libiconv in macOS 14.1 and later.
  * methods' internal .requirePackage() now re-enables primitive
    method dispatch when needed; thanks to Ivan Krylov for
    demystifying CRAN package check failures on the R-devel mailing
    list.</changelog>
</package>
<package pkgid="6e6b5ff488ae3697e5f48e524700470caf01e91eeef211ec537eb9aee156840d48be29923b67f3ab4a0a51a6a913c834827aab368c7f1587e9bb8ed0410716d4" name="R-graphics-debuginfo" arch="x86_64">
  <version epoch="0" ver="4.4.2" rel="51.0.2.2.sr20241103"/>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1620302400">- To get in sync with d:l:R:autoCRAN the Matrix package's split
  in -devel was reversed.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339200">- improved spec file according to comments of dimstar in
  https://build.opensuse.org/request/show/892685</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339201">- CHANGES IN R 4.1.0:
  FUTURE DIRECTIONS:
  * It is planned that the 4.1.x series will be the last to support
    32-bit Windows, with production of binary packages for that
    series continuing until early 2023.
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Data set esoph in package datasets now provides the correct
    numbers of controls; previously it had the numbers of cases added
    to these.  (Reported by Alexander Fowler in PR#17964.)
  NEW FEATURES:
  * www.omegahat.net is no longer one of the repositories known by
    default to setRepositories().  (Nowadays it only provides source
    packages and is often unavailable.)
  * Function package_dependencies() (in package tools) can now use
    different dependency types for direct and recursive dependencies.
  * The checking of the size of tarball in R CMD check --as-cran
    &lt;pkg&gt; may be tweaked via the new environment variable
    _R_CHECK_CRAN_INCOMING_TARBALL_THRESHOLD_, as suggested in
    PR#17777 by Jan Gorecki.
  * Using c() to combine a factor with other factors now gives a
    factor, an ordered factor when combining ordered factors with
    identical levels.
  * apply() gains a simplify argument to allow disabling of
    simplification of results.
  * The format() method for class "ftable" gets a new option justify.
    (Suggested by Thomas Soeiro.)
  * New ...names() utility.  (Proposed by Neal Fultz in PR#17705.)
  * type.convert() now warns when its as.is argument is not
    specified, as the help file always said it _should_.  In that
    case, the default is changed to TRUE in line with its change in
    read.table() (related to stringsAsFactor) in R 4.0.0.
  * When printing list arrays, classed objects are now shown _via_
    their format() value if this is a short enough character string,
    or by giving the first elements of their class vector and their
    length.
  * capabilities() gets new entry "Rprof" which is TRUE when R has
    been configured with the equivalent of --enable-R-profiling (as
    it is by default).  (Related to Michael Orlitzky's report
    PR#17836.)
  * str(xS4) now also shows extraneous attributes of an S4 object
    xS4.
  * Rudimentary support for vi-style tags in rtags() and R CMD rtags
    has been added.  (Based on a patch from Neal Fultz in PR#17214.)
  * checkRdContents() is now exported from tools; it and also
    checkDocFiles() have a new option chkInternal allowing to check
    Rd files marked with keyword "internal" as well.  The latter can
    be activated for R CMD check via environment variable
    _R_CHECK_RD_INTERNAL_TOO_.
  * New functions numToBits() and numToInts() extend the raw
    conversion utilities to (double precision) numeric.
  * Functions URLencode() and URLdecode() in package utils now work
    on vectors of URIs.  (Based on patch from Bob Rudis submitted
    with PR#17873.)
  * path.expand() can expand ~user on most Unix-alikes even when
    readline is not in use.  It tries harder to expand ~, for example
    should environment variable HOME be unset.
  * For HTML help (both dynamic and static), Rd file links to help
    pages in external packages are now treated as references to
    topics rather than file names, and fall back to a file link only
    if the topic is not found in the target package. The earlier rule
    which prioritized file names over topics can be restored by
    setting the environment variable _R_HELP_LINKS_TO_TOPICS_ to a
    false value.
  * c() now removes NULL arguments before dispatching to methods,
    thus simplifying the implementation of c() methods, _but_ for
    back compatibility keeps NULL when it is the first argument.
    (From a report and patch proposal by Lionel Henry in PR#17900.)
  * Vectorize()'s result function's environment no longer keeps
    unneeded objects.
  * Function ...elt() now propagates visibility consistently with
    ..n.  (Thanks to Lionel Henry's PR#17905.)
  * capture.output() no longer uses non-standard evaluation to
    evaluate its arguments.  This makes evaluation of functions like
    parent.frame() more consistent.  (Thanks to Lionel Henry's
    PR#17907.)
  * packBits(bits, type="double") now works as inverse of
    numToBits().  (Thanks to Bill Dunlap's proposal in PR#17914.)
  * curlGetHeaders() has two new arguments, timeout to specify the
    timeout for that call (overriding getOption("timeout")) and TLS
    to specify the minimum TLS protocol version to be used for
    https:// URIs (_inter alia_ providing a means to check for sites
    using deprecated TLS versions 1.0 and 1.1).
  * For nls(), an optional constant scaleOffset may be added to the
    denominator of the relative offset convergence test for cases
    where the fit of a model is expected to be exact, thanks to a
    proposal by John Nash.  nls(*, trace=TRUE) now also shows the
    convergence criterion.
  * Numeric differentiation _via_ numericDeriv() gets new optional
    arguments eps and central, the latter for taking central divided
    differences.  The latter can be activated for nls() via
    nls.control(nDcentral = TRUE).
  * nls() now passes the trace and control arguments to getInitial(),
    notably for all self-starting models, so these can also be fit in
    zero-noise situations via a scaleOffset.  For this reason, the
    initial function of a selfStart model must now have ... in its
    argument list.
  * bquote(splice = TRUE) can now splice expression vectors with
    attributes: this makes it possible to splice the result of
    parse(keep.source = TRUE).  (Report and patch provided by Lionel
    Henry in PR#17869.)
  * textConnection() gets an optional name argument.
  * get(), exists(), and get0() now signal an error if the first
    argument has length greater than 1.  Previously additional
    elements were silently ignored.  (Suggested by Antoine Fabri on
    R-devel.)
  * R now provides a shorthand notation for creating functions, e.g.
    \(x) x + 1 is parsed as function(x) x + 1.
  * R now provides a simple native forward pipe syntax |&gt;.  The
    simple form of the forward pipe inserts the left-hand side as the
    first argument in the right-hand side call.  The pipe
    implementation as a syntax transformation was motivated by
    suggestions from Jim Hester and Lionel Henry.
  * all.equal(f, g) for functions now by default also compares their
    environment(.)s, notably via new all.equal method for class
    function.  Comparison of nls() fits, e.g., may now need
    all.equal(m1, m2, check.environment = FALSE).
  * .libPaths() gets a new option include.site, allowing to _not_
    include the site library.  (Thanks to Dario Strbenac's suggestion
    and Gabe Becker's PR#18016.)
  * Lithuanian translations are now available.  (Thanks to Rimantas
    Zakauskas.)
  * names() now works for DOTSXP objects.  On the other hand, in
    R-lang, the R language manual, we now warn against relying on the
    structure or even existence of such dot-dot-dot objects.
  * all.equal() no longer gives an error on DOTSXP objects.
  * capabilities("cairo") now applies only to the file-based devices
    as it is now possible (if very unusual) to build R with Cairo
    support for those but not for X11().
  * There is optional support for tracing the progress of
    loadNamespace() - see its help.
  * (Not Windows.)  l10n_info() reports an additional element, the
    name of the encoding as reported by the OS (which may differ from
    the encoding part (if any) of the result from
    Sys.getlocale("LC_CTYPE").
  * New function gregexec() which generalizes regexec() to find _all_
    disjoint matches and well as all substrings corresponding to
    parenthesized subexpressions of the given regular expression.
    (Contributed by Brodie Gaslam.)
  * New function charClass() in package utils to query the
    wide-character classification functions in use (such as
    iswprint).
  * The names of quantile()'s result no longer depend on the global
    getOption("digits"), but quantile() gets a new optional argument
    digits = 7 instead.
  * grep(), sub(), regexp and variants work considerably faster for
    long factors with few levels.  (Thanks to Michael Chirico's
    PR#18063.)
  * Provide grouping of x11() graphics windows within a window
    manager such as Gnome or Unity; thanks to a patch by Ivan Krylov
    posted to R-devel.
  * The split() method for class data.frame now allows the f argument
    to be specified as a formula.
  * sprintf now warns on arguments unused by the format string.
  * New palettes "Rocket" and "Mako" for hcl.colors() (approximating
    palettes of the same name from the 'viridisLite' package).
    Contributed by Achim Zeileis.
  * The base environment and its namespace are now locked (so one can
    no longer add bindings to these or remove from these).
  * Rterm handling of multi-byte characters has been improved,
    allowing use of such characters when supported by the current
    locale.
  * Rterm now accepts ALT+ +xxxxxxxx sequences to enter Unicode
    characters as hex digits.
  * Environment variable LC_ALL on Windows now takes precedence over
    LC_CTYPE and variables for other supported categories, matching
    the POSIX behaviour.
  * duplicated() and anyDuplicated() are now optimized for integer
    and real vectors that are known to be sorted via the ALTREP
    framework. Contributed by Gabriel Becker via PR#17993.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 14
    and so packages that provide graphics devices should be
    reinstalled.
  * Graphics devices should now specify deviceVersion to indicate
    what version of the graphics engine they support.
  * Graphics devices can now specify deviceClip.  If TRUE, the
    graphics engine will never perform any clipping of output itself.
    The clipping that the graphics engine does perform (for both
    canClip = TRUE and canClip = FALSE) has been improved to avoid
    producing unnecessary artifacts in clipped output.
  * The grid package now allows gpar(fill) to be a linearGradient(),
    a radialGradient(), or a pattern().  The viewport(clip) can now
    also be a grob, which defines a clipping path, and there is a new
    viewport(mask) that can also be a grob, which defines a mask.
    These new features are only supported so far on the Cairo-based
    graphics devices and on the pdf() device.
  * (Not Windows.)  A warning is given when a Cairo-based type is
    specified for a png(), jpeg(), tiff() or bmp() device but Cairo
    is unsupported (so type = "Xlib" is tried instead).
  * grSoftVersion() now reports the versions of FreeType and
    FontConfig if they are used directly (not _via_ Pango), as is
    most commonly done on macOS.
  C-LEVEL FACILITIES:
  * The _standalone_ libRmath math library and R's C API now provide
    log1pexp() again as documented, and gain log1mexp().
  INSTALLATION on a UNIX-ALIKE:
  * configure checks for a program pkgconf if program pkg-config is
    not found.  These are now only looked for on the path (like
    almost all other programs) so if needed specify a full path to
    the command in PKG_CONFIG, for example in file config.site.
  * C99 function iswblank is required - it was last seen missing ca
    2003 so the workaround has been removed.
  * There are new configure options --with-internal-iswxxxxx,
  - -with-internal-towlower and --with-internal-wcwidth which allows
    the system functions for wide-character classification,
    case-switching and width (wcwidth and wcswidth) to be replaced by
    internal ones.  The first has long been used on macOS, AIX (and
    Windows) but this enables it to be unselected there and selected
    for other platforms (it is the new default on Solaris).  The
    second is new in this version of R and is selected by default on
    macOS and Solaris.  The third has long been the default and
    remains so as it contains customizations for East Asian
    languages.
    System versions of these functions are often minimally
    implemented (sometimes only for ASCII characters) and may not
    cover the full range of Unicode points: for example Solaris (and
    Windows) only cover the Basic Multilingual Plane.
  * Cairo installations without X11 are more likely to be detected by
    configure, when the file-based Cairo graphics devices will be
    available but not X11(type = "cairo").
  * There is a new configure option --with-static-cairo which is the
    default on macOS.  This should be used when only static cairo
    (and where relevant, Pango) libraries are available.
  * Cairo-based graphics devices on platforms without Pango but with
    FreeType/FontConfig will make use of the latter for font
    selection.
  LINK-TIME OPTIMIZATION on a UNIX-ALIKE:
  * Configuring with flag --enable-lto=R now also uses LTO when
    installing the recommended packages.
  * R CMD INSTALL and R CMD SHLIB have a new flag --use-LTO to use
    LTO when compiling code, for use with R configured with
  - -enable-lto=R.  For R configured with --enable-lto, they have
    the new flag --no-use-LTO.
    Packages can opt in or out of LTO compilation _via_ a UseLTO
    field in the DESCRIPTION file.  (As usual this can be overridden
    by the command-line flags.)
  BUILDING R on Windows:
  * for GCC &gt;= 8, FC_LEN_T is defined in config.h and hence character
    lengths are passed from C to Fortran in _inter alia_ BLAS and
    LAPACK calls.
  * There is a new text file src/gnuwin32/README.compilation, which
    outlines how C/Fortran code compilation is organized and
    documents new features:
  * R can be built with Link-Time Optimization with a suitable
    compiler - doing so with GCC 9.2 showed several
    inconsistencies which have been corrected.
  * There is support for cross-compiling the C and Fortran code
    in R and standard packages on suitable (Linux) platforms.
    This is mainly intended to allow developers to test later
    versions of compilers - for example using GCC 9.2 or 10.x has
    detected issues that GCC 8.3 in Rtools40 does not.
  * There is experimental support for cross-building R packages
    with C, C++ and/or Fortran code.
  * The R installer can now be optionally built to support a single
    architecture (only 64-bit or only 32-bit).
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++14 where
    available (which it is on all currently checked platforms): if
    not (as before) C++11 is used if available otherwise C++ is not
    supported.
    Packages which specify C++11 will still be installed using C++11.
    C++14 compilers may give deprecation warnings, most often for
    std::random_shuffle (deprecated in C++14 and removed in C++17).
    Either specify C++11 (see 'Writing R Extensions') or modernize
    the code and if needed specify C++14.  The latter has been
    supported since R 3.4.0 so the package's DESCRIPTION would need
    to include something like
    Depends: R (&gt;= 3.4)
  PACKAGE INSTALLATION on Windows:
  * R CMD INSTALL and R CMD SHLIB make use of their flag --use-LTO
    when the LTO_OPT make macro is set in file etc/${R_ARCH}/Makeconf
    or in a personal/site Makevars file.  (For details see 'Writing R
    Extensions' SS4.5.)
    This provides a valuable check on code consistency.  It does work
    with GCC 8.3 as in Rtools40, but that does not detect everything
    the CRAN checks with current GCC do.
  PACKAGE INSTALLATION on macOS:
  * The default personal library directory on builds with
  - -enable-aqua (including CRAN builds) now differs by CPU type,
    one of
    ~/Library/R/x86_64/x.y/library
    ~/Library/R/arm64/x.y/library
    This uses the CPU type R (and hence the packages) were built for,
    so when a x86_64 build of R is run under Rosetta emulation on an
    arm64 Mac, the first is used.
  UTILITIES:
  * R CMD check can now scan package functions for bogus return
    statements, which were possibly intended as return() calls (wish
    of PR#17180, patch by Sebastian Meyer). This check can be
    activated via the new environment variable
    _R_CHECK_BOGUS_RETURN_, true for --as-cran.
  * R CMD build omits tarballs and binaries of previous builds from
    the top-level package directory.  (PR#17828, patch by Sebastian
    Meyer.)
  * R CMD check now runs sanity checks on the use of LazyData, for
    example that a data directory is present and that
    LazyDataCompression is not specified without LazyData and has a
    documented value.  For packages with large LazyData databases
    without specifying LazyDataCompression, there is a reference to
    the code given in 'Writing R Extensions' SS1.1.6 to test the
    choice of compression (as in all the CRAN packages tested a
    non-default method was preferred).
  * R CMD build removes LazyData and LazyDataCompression fields from
    the DESCRIPTION file of packages without a data directory.
  ENCODING-RELATED CHANGES:
  * The parser now treats \Unnnnnnnn escapes larger than the upper
    limit for Unicode points (\U10FFFF) as an error as they cannot be
    represented by valid UTF-8.
    Where such escapes are used for outputting non-printable
    (including unassigned) characters, 6 hex digits are used (rather
    than 8 with leading zeros).  For clarity, braces are used, for
    example \U{0effff}.
  * The parser now looks for non-ASCII spaces on Solaris (as
    previously on most other OSes).
  * There are warnings (including from the parser) on the use of
    unpaired surrogate Unicode points such as \uD834.  (These cannot
    be converted to valid UTF-8.)
  * Functions nchar(), tolower(), toupper() and chartr() and those
    using regular expressions have more support for inputs with a
    marked Latin-1 encoding.
  * The character-classification functions used (by default) to
    replace the system iswxxxxx functions on Windows, macOS and AIX
    have been updated to Unicode 13.0.0.
    The character-width tables have been updated to include new
    assignments in Unicode 13.0.0.
  * The code for evaluating default (extended) regular expressions
    now uses the same character-classification functions as the rest
    of R (previously they differed on Windows, macOS and AIX).
  * There is a build-time option to replace the system's
    wide-character wctrans C function by tables shipped with R: use
    configure option --with-internal-towlower or (on Windows)
  - DUSE_RI18N_CASE in CFLAGS when building R.  This may be needed
    to allow tolower() and toupper() to work with Unicode characters
    beyond the Basic Multilingual Plane where not supported by system
    functions (e.g. on Solaris where it is the new default).
  * R is more careful when truncating UTF-8 and other multi-byte
    strings that are too long to be printed, passed to the system or
    libraries or placed into an internal buffer.  Truncation will no
    longer produce incomplete multibyte characters.
  DEPRECATED AND DEFUNCT:
  * Function plclust() from the package stats and
    package.dependencies(), pkgDepends(), getDepList(),
    installFoundDepends(), and vignetteDepends() from package tools
    are defunct.
  * Defunct functions checkNEWS() and readNEWS() from package tools
    and CRAN.packages() from utils have been removed.
  * R CMD config CXXCPP is defunct (it was deprecated in R 3.6.2).
  * parallel::detectCores() drops support for Irix (retired in 2013).
  * The LINPACK argument to chol.default(), chol2inv(),
    solve.default() and svd() has been defunct since R 3.1.0.  It was
    silently ignored up to R 4.0.3 but now gives an error.
  * Subsetting/indexing, such as ddd[*] or ddd$x on a DOTSXP
    (dot-dot-dot) object ddd has been disabled; it worked by accident
    only and was undocumented.
  BUG FIXES:
  * Many more C-level allocations (mainly by malloc and strdup) are
    checked for success with suitable alternative actions.
  * Bug fix for replayPlot(); this was turning off graphics engine
    display list recording if a recorded plot was replayed in the
    same session.  The impact of the bug became visible if resize the
    device after replay OR if attempted another savePlot() after
    replay (empty display list means empty screen on resize or empty
    saved plot).
  * R CMD check etc now warn when a package exports non-existing S4
    classes or methods, also in case of no "methods" presence.
    (Reported by Alex Bertram; reproducible example and patch by
    Sebastian Meyer in PR#16662.)
  * boxplot() now also accepts calls for labels such as ylab, the
    same as plot().  (Reported by Marius Hofert.)
  * The help page for xtabs() now correctly states that addNA is
    setting na.action = na.pass among others.  (Reported as PR#17770
    by Thomas Soeiro.)
  * The R CMD check &lt;pkg&gt; gives a longer and more comprehensible
    message when DESCRIPTION misses dependencies, e.g., in Imports:.
    (Thanks to the contributors of PR#17179.)
  * update.default() now calls the generic update() on the formula to
    work correctly for models with extended formulas.  (As reported
    and suggested by Neal Fultz in PR#17865.)
  * The horizontal position of leaves in a dendrogram is now correct
    also with center = FALSE.  (PR#14938, patch from Sebastian
    Meyer.)
  * all.equal.POSIXt() no longer warns about and subsequently ignores
    inconsistent "tzone" attributes, but describes the difference in
    its return value (PR#17277).  This check can be disabled _via_
    the new argument check.tzone = FALSE as suggested by Sebastian
    Meyer.
  * as.POSIXct() now populates the "tzone" attribute from its tz
    argument when x is a logical vector consisting entirely of NA
    values.
  * x[[2^31]] &lt;- v now works.  (Thanks to the report and patch by
    Suharto Anggono in PR#17330.)
  * In log-scale graphics, axis() ticks and label positions are now
    computed more carefully and symmetrically in their range,
    typically providing _more_ ticks, fulfilling wishes in PR#17936.
    The change really corresponds to an improved axisTicks() (package
    grDevices), potentially influencing grid and lattice, for
    example.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now correct to at
    least five digits where it was catastrophically wrong,
    previously.
  * sum(df) and similar "Summary"- and "Math"-group member functions
    now work for data frames df with logical columns, notably also of
    zero rows.  (Reported to R-devel by Martin "b706".)
  * unsplit() had trouble with tibbles due to unsound use of rep(NA,
    len)-indexing, which should use NA_integer_ (Reported to R-devel
    by Mario Annau.)
  * pnorm(x, log.p = TRUE) underflows to -Inf slightly later.
  * show(&lt;hidden S4 generic&gt;) prints better and without quotes for
    non-hidden S4 generics.
  * read.table() and relatives treated an "NA" column name as missing
    when check.names = FALSE PR#18007.
  * Parsing strings containing UTF-16 surrogate pairs such as
    "\uD834\uDD1E" works better on some (uncommon) platforms.
    sprintf("%X", utf8ToInt("\uD834\uDD1E")) should now give "1D11E"
    on all platforms.
  * identical(x,y) is no longer true for differing DOTSXP objects,
    fixing PR#18032.
  * str() now works correctly for DOTSXP and related exotics, even
    when these are doomed.
    Additionally, it no longer fails for lists with a class and
    "irregular" method definitions such that e.g. lapply(*) will
    necessarily fail, as currently for different igraph objects.
  * Too long lines in environment files (e.g. Renviron) no longer
    crash R. This limit has been increased to 100,000 bytes.
    (PR#18001.)
  * There is a further workaround for FreeType giving incorrect
    italic font faces with cairo-based graphics devices on macOS.
  * add_datalist(*, force = TRUE) (from package tools) now actually
    updates an existing data/datalist file for new content.  (Thanks
    to a report and patch by Sebastian Meyer in PR#18048.)
  * cut.Date() and cut.POSIXt() could produce an empty last interval
    for breaks = "months" or breaks = "years".  (Reported as PR#18053
    by Christopher Carbone.)
  * Detection of the encoding of 'regular' macOS locales such as
    en_US (which is UTF-8) had been broken by a macOS change:
    fortunately these are now rarely used with en_US.UTF-8 being
    preferred.
  * sub() and gsub(pattern, repl, x, *) now keep attributes of x such
    as names() also when pattern is NA (PR#18079).
  * Time differences ("difftime" objects) get a replacement and a
    rep() method to keep "units" consistent.  (Thanks to a report and
    patch by Nicolas Bennett in PR#18066.)
  * The \RdOpts macro, setting defaults for \Sexpr options in an Rd
    file, had been ineffective since R 2.12.0: it now works again.
    (Thanks to a report and patch by Sebastian Meyer in PR#18073.)
  * mclapply and pvec no longer accidentally terminate parallel
    processes started before by mcparallel or related calls in
    package parallel (PR#18078).
  * grep and other functions for evaluating (extended) regular
    expressions handle in Unicode also strings not explicitly flagged
    UTF-8, but flagged native when running in UTF-8 locale.
  * Fixed a crash in fifo implementation on Windows (PR#18031).
  * Binary mode in fifo on Windows is now properly detected from
    argument open (PR#15600, PR#18031).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1622808000">- The line %{__install} -m 755 -d %{_infodir}
  no longer works in TW or Factory.
  But without that line it works everywhere. So this instruction
  was commented out of the spec file.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1628596800">- CHANGES IN R 4.1.1:
  NEW FEATURES:
  * require(pkg, quietly = TRUE) is quieter and in particular does
    not warn if the package is not found.
  DEPRECATED AND DEFUNCT:
  * Use of ftp:// URIs should be regarded as deprecated, with
    on-going support confined to method = "libcurl" and not routinely
    tested.  (Nowadays no major browser supports them.)
  * The non-default method = "internal" is deprecated for http:// and
    ftp:// URIs for both download.file and url.
  * On Windows, method = "wininet" is deprecated for http://,
    https:// and ftp:// URIs for both download.file and url.  (A
    warning is only given for ftp://.)
    For ftp:// URIs the default method is now "libcurl" if available
    (which it is on CRAN builds).
    method = "wininet" remains the default for http:// and https://
    URIs but if libcurl is available, using method = "libcurl" is
    preferred.
  INSTALLATION:
  * make check now works also without a LaTeX installation.  (Thanks
    to Sebastian Meyer's PR#18103.)
  BUG FIXES:
  * make check-devel works again in an R build configured with
  - -without-recommended-packages.
  * qnbinom(p, size, mu) for large size/mu is correct now in a range
    of cases (PR#18095); similarly for the (size, prob)
    parametrization of the negative binomial.  Also qpois() and
    qbinom() are better and or faster for extreme cases.  The
    underlying C code has been modularized and is common to all four
    cases of discrete distributions.
  * gap.axis is now part of the axis() arguments which are passed
    from bxp(), and hence boxplot().  (Thanks to Martin Smith's
    report and suggestions in PR#18109.)
  * .First and .Last can again be set from the site profile.
  * seq.int(from, to, *) and seq.default(..) now work better in large
    range cases where from-to is infinite where the two boundaries
    are finite.
  * all.equal(x,y) now returns TRUE correctly also when several
    entries of abs(x) and abs(y) are close to .Machine$double.xmax,
    the largest finite numeric.
  * model.frame() now clears the object bit when removing the class
    attribute of a value via na.action (PR#18100).
  * charClass() now works with multi-character strings on Windows
    (PR#18104, fixed by Bill Dunlap).
  * encodeString() on Solaris now works again in Latin-1 encoding on
    characters represented differently in UTF-8.  Support for
    surrogate pairs on Solaris has been improved.
  * file.show() on Windows now works with non-ASCII path names
    representable in the current native encoding (PR#18132).
  * Embedded R on Windows can now find R home directory via the
    registry even when installed only for the current user
    (PR#18135).
  * pretty(x) with finite x now returns finite values also in the
    case where the extreme x values are close in size to the maximal
    representable number .Machine$double.xmax.
    Also, it's been tweaked for very small ranges and when a boundary
    is close (or equal) to zero; e.g., pretty(c(0,1e-317)) no longer
    has negative numbers, currently still warning about a very small
    range, and pretty(2^-(1024 - 2^-1/(c(24,10)))) is more accurate.
  * The error message for not finding vignette files when weaving has
    correct file sizes now. (Thanks to Sebastian Meyer's PR#18154.)
  * dnbinom(20, &lt;large&gt;, 1) now correctly gives 0, and similar cases
    are more accurate with underflow precaution.  (Reported by Francisco Vera Alcivar in PR#18072.)</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635163200">- repaired https://bugzilla.suse.com/show_bug.cgi?id=1191380
  (rpmacros now go to rpmmacrodir)
- minor clean-ups in spec file</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635768000">- CHANGES IN R 4.1.2:
  C-LEVEL FACILITIES:
  * The workaround in headers R.h and Rmath.h (using namespace std;)
    for the Oracle Developer Studio compiler is no longer needed now
    C++11 is required so has been removed.  A couple more usages of
    log() (which should have been std::log()) with an int argument
    are reported on Solaris.
  * The undocumented limit of 4095 bytes on messages from the
    S-compatibility macros PROBLEM and MESSAGE is now documented and
    longer messages will be silently truncated rather than
    potentially causing segfaults.
  * If the R_NO_SEGV_HANDLER environment variable is non-empty, the
    signal handler for SEGV/ILL/BUS signals (which offers recovery
    user interface) is not set. This allows more reliable debugging
    of crashes that involve the console.
  DEPRECATED AND DEFUNCT:
  * The legacy S-compatibility macros PROBLEM, MESSAGE, ERROR, WARN,
    WARNING, RECOVER, ... are deprecated and will be hidden in R
    4.2.0. R's native interface of Rf_error and Rf_warning has long
    been preferred.
  BUG FIXES:
  * .mapply(F, dots, .) no longer segfaults when dots is not a list
    and uses match.fun(F) as always documented; reported by Andrew
    Simmons in PR#18164.
  * hist(&lt;Date&gt;, ...) and hist(&lt;POSIXt&gt;, ...)  no longer pass
    arguments for rect() (such as col and density) to axis().
    (Thanks to Sebastian Meyer's PR#18171.)
  * \Sexpr{ch} now preserves Encoding(ch). (Thanks to report and
    patch by Jeroen Ooms in PR#18152.)
  * Setting the RNG to "Marsaglia-Multicarry" e.g., by RNGkind(), now
    warns in more places, thanks to Andr'e Gillibert's report and
    patch in PR#18168.
  * gray(numeric(), alpha=1/2) no longer segfaults, fixing PR#18183,
    reported by Till Krenz.
  * Fixed dnbinom(x, size=&lt;very_small&gt;, .., log=TRUE) regression,
    reported by Martin Morgan.
  * as.Date.POSIXlt(x) now keeps names(x), thanks to Davis Vaughan's
    report and patch in PR#18188.
  * model.response() now strips an "AsIs" class typically, thanks to
    Duncan Murdoch's report and other discussants in PR#18190.
  * try() is considerably faster in case of an error and long call,
    as e.g., from some do.call().  Thanks to Alexander Kaever's
    suggestion posted to R-devel.
  * qqline(y = &lt;object&gt;) such as y=I(.), now works, see also
    PR#18190.
  * Non-integer mgp par() settings are now handled correctly in
    axis() and mtext(), thanks to Mikael Jagan and Duncan Murdoch's
    report and suggestion in PR#18194.
  * formatC(x) returns length zero character() now, rather than ""
    when x is of length zero, as documented, thanks to Davis
    Vaughan's post to R-devel.
  * removeSource(fn) now retains (other) attributes(fn).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1647000000">- CHANGES IN R 4.1.3:
  NEW FEATURES:
  * The default version of Bioconductor has been changed to 3.14.
    (This is used by setRepositories and the menus in GUIs.)
  UTILITIES:
  * R CMD check --as-cran has a workaround for a bug in versions of
    file up to at least 5.41 which mis-identify DBF files last
    changed in 2022 as executables.
  C-LEVEL FACILITIES:
  * The legacy S-compatibility macros SINGLE_* in R_ext/Constants.h
    (included by R.h) are deprecated and will be removed in R 4.2.0.
  BUG FIXES:
  * Initialization of self-starting nls() models with initialization
    functions following the pre-R-4.1.0 API (without the ...
    argument) works again for now, with a deprecation warning.
  * Fixed quoting of ~autodetect~ in Java setting defaults to avoid
    inadvertent user lookup due to leading ~, reported in PR#18231 by
    Harold Gutch.
  * substr(., start, stop) &lt;- v now treats _negative_ stop values
    correctly.  Reported with a patch in PR#18228 by Brodie Gaslam.
  * Subscripting an array x without dimnames by a
    length(dim(x))-column character matrix gave "random" non-sense,
    now an error; reported in PR#18244 by Mikael Jagan.
  * ...names() now matches names(list(...)) closely, fixing PR#18247.
  * all.equal(*, scale = s) now works as intended when length(s) &gt; 1,
    partly thanks to Michael Chirico's PR#18272.
  * print(x) for long vectors x now also works for named atomic
    vectors or lists and prints the correct number when reaching the
    getOption("max.print") limit; partly thanks to a report and
    proposal by Hugh Parsonage to the R-devel list.
  * all.equal(&lt;selfStart&gt;, *) no longer signals a deprecation
    warning.
  * reformulate(*, response=r) gives a helpful error message now when
    length(r) &gt; 1, thanks to Bill Dunlap's PR#18281.
  * Modifying globalCallingHandlers inside withCallingHandlers() now
    works or fails correctly, thanks to Henrik Bengtsson's PR#18257.
  * hist(&lt;Date&gt;, breaks = "days") and hist(&lt;POSIXt&gt;, breaks = "secs")
    no longer fail for inputs of length 1.
  * qbeta(.001, .9, .009) and similar cases now converge correctly
    thanks to Ben Bolker's report in PR#17746.
  * window(x, start, end) no longer wrongly signals "'start' cannot
    be after 'end'", fixing PR#17527 and PR#18291.
  * data() now checks that its (rarely used) list argument is a
    character vector - a couple of packages passed other types and
    gave incorrect results.
  * which() now checks its arr.ind argument is TRUE rather coercing
    to logical and taking the first element - which gave incorrect
    results in package code.
  * model.weights() and model.offset() more carefully extract their
    model components, thanks to Ben Bolker and Tim Taylor's R-devel
    post.
  * list.files(recursive = TRUE) now shows all broken symlinks
    (previously, some of them may have been omitted, PR#18296).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1650628800">- CHANGES IN R 4.2.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * The formula method of aggregate() now matches the generic in
    naming its first argument x (resolving PR#18299 by Thomas
    Soeiro).
    This means that calling aggregate() with a formula as a named
    first argument requires name formula in earlier versions of R and
    name x now, so portable code should not name the argument (code
    in many packages did).
  * Calling &amp;&amp; or || with either argument of length greater than one
    now gives a warning (which it is intended will become an error).
  * Calling if() or while() with a condition of length greater than
    one gives an error rather than a warning.  Consequently,
    environment variable _R_CHECK_LENGTH_1_CONDITION_ no longer has
    any effect.
  * Windows users should consult the WINDOWS section below for some
    profound changes including
  * Support for 32-bit builds has been dropped.
  * UTF-8 locales are used where available.
  * The default locations for the R installation and personal
    library folder have been changed.
    Thanks to Tomas Kalibera for months of work on the Windows port
    for this release.
  NEW FEATURES:
  * matrix(x, n, m) now warns in more cases where length(x) differs
    from n * m, as suggested by Abby Spurdle and Wolfgang Huber in
    Feb 2021 on the R-devel mailing list.
    This warning can be turned into an error by setting environment
    variable _R_CHECK_MATRIX_DATA_ to TRUE: R CMD check --as-cran
    does so unless it is already set.
  * Function file_test() in package utils gains tests for symlinks,
    readability and writability.
  * capabilities("libxml") is now false.
    The description of capabilities("http/ftp") now reflects that it
    refers to the default method, no longer the internal one.
  * simplify2array() gains an except argument for controlling the
    exceptions used by sapply().
  * Environment variables R_LIBS_USER and R_LIBS_SITE are both now
    set to the R system default if unset or empty, and can be set to
    NULL to indicate an empty list of user or site library
    directories.
  * The warning for axis()(-like) calls in cases of relatively small
    ranges (typically in log-scale situations) is slightly improved
    _and_ suppressed from explicit calls to .axisPars() as has always
    been the intention.
  * The contrasts setter function `contrasts&lt;-` gains an explicit
    default how.many = NULL rather than just using missing(how.many).
  * grid.pretty() gains a new optional argument n = 5.
  * There is a new function .pretty() with option bounds as a
    technical-utility version of pretty().  It and pretty() gain a
    new argument f.min with a better than back-compatible default.
  * Function grDevices::axisTicks() and related functions such as
    graphics::axis() work better, notably for the log scale; partly
    because of the pretty() improvements, but also because care is
    taken e.g., when ylim is finite but diff(ylim) is infinite.
  * nclass.FD() gains a digits option.
  * The R Mathlib internal C function bd0() (called indirectly from a
    dozen probability density and distribution functions such as
    dpois(), dbinom(), dgamma(), pgamma() _etc_) has been
    complemented by a more sophisticated and (mostly) more accurate C
    function ebd0(), currently called only by internal dpois_raw()
    improving accuracy for R level dpois() and potentially others
    calling it such as dnbinom(), dgamma() or pgamma().  (Thanks to
    Morten Welinder's PR#15628.)
  * write.ftable() gains sep = " " argument as suggested by Thomas
    Soeiro.
  * The names of the locale categories supported by R's
    Sys.getlocale() and Sys.setlocale() are now provided by variable
    .LC.categories in the base namespace.
  * The Date and POSIXt methods for hist() and the histogram method
    for plot() now also use the new default col = "lightgray" in
    consistency with the corresponding change to hist()'s default for
    R 4.0.0.
  * hist.default() gains new fuzz argument, and the histogram plot
    method no longer uses fractional axis ticks when displaying
    counts ("Frequency").
  * mapply() and hence Map() now also obey the "max-or-0-if-any"
    recycling rule, such that, e.g., Map(`+`, 1:3, 1[0]) is valid
    now.
  * as.character(&lt;obj&gt;) for "hexmode" or "octmode" objects now
    fulfils the important basic rule as.character(x)[j] ===
    as.character(x[j]).
  * The set utility functions, notably intersect() have been tweaked
    to be more consistent and symmetric in their two set arguments,
    also preserving a common mode.
  * substr(ch, start,end) &lt;- new now e.g., preserves names(ch); ditto
    for substring(), thanks to a patch from Brodie Gaslam.
  * plot(&lt;lm&gt;) gains a extend.ylim.f argument, in partial response to
    PR#15285; further PR#17784 is fixed thanks to several
    contributors and a patch by Elin Waring.  The Cook's dist
    contours get customizable via cook.col and cook.lty with a
    different default color and their legend is nicer by default and
    customizable via cook.legendChanges.
  * Attempting to subset an object that is not subsettable now
    signals an error of class notSubsettableError. The
    non-subsettable object is contained in the object field of the
    error condition.
  * Subscript-out-of-bounds errors are now signaled as errors of
    class subscriptOutOfBoundsError.
  * Stack-overflow errors are now signaled as errors inheriting from
    class stackOverflowError. See ?stackOverflowError for more
    details.
  * New partly experimental Sys.setLanguage() utility, solving the
    main problem of PR#18055.
  * gettext() and gettextf() get a new option trim = TRUE which when
    set to false allows translations for strings such as "Execution
    halted\n" typical for C code.
  * An experimental implementation of hash tables is now available.
    See ?hashtab for more details.
  * identical() gains a extptr.as.ref argument for requesting that
    external pointer objects be compared as reference objects.
  * reorder() gets an argument decreasing which it passes to sort()
    for level creation; based on the wish and patch by Thomas Soeiro
    in PR#18243.
  * as.vector() gains a data.frame method which returns a simple
    named list, also clearing a long standing 'FIXME' to enable
    as.vector(&lt;data.frame&gt;, mode="list").  This breaks code relying
    on as.vector(&lt;data.frame&gt;) to return the unchanged data frame.
  * legend() is now vectorized for arguments cex, x.intersp, and
    text.width.  The latter can now also be specified as a vector
    (one element for each column of the legend) or as NA for
    computing a proper column wise maximum value of strwidth(legend).
    The argument y.intersp can be specified as a vector with one
    entry for each row of the legend.
    legend() also gains new arguments title.cex and title.font.
    Thanks to Swetlana Herbrandt.
  * Deparsing no longer remaps attribute names dim, dimnames, levels,
    names and tsp to historical S-compatible names (which structure()
    maps back).
  * sample() and sample.int() have additional sanity checks on their
    size and n arguments.
    all.equal.numeric() gains a sanity check on its tolerance
    argument - calling all.equal(a, b, c) for three numeric vectors
    is a surprisingly common error.
    mean(na.rm =), rank(na.last =), barplot(legend.text =),
    boxplot(), contour(drawlabels =), polygon(border =) and
    methods::is(class2 =) have more robust sanity checks on their
    arguments.
    R CMD Rd2pdf (used by R CMD check) has a more robust sanity check
    on the format of \alias{} commands.
  * psigamma(x, deriv) for negative x now also works for deriv = 4
    and 5; their underlying C level dpsifn() is documented in
    'Writing R Extensions'.
  * The HTML help system now uses HTML5 (wish of PR#18149).
  * ks.test() now provides exact p-values also with ties and MC
    p-values in the two-sample (Smirnov) case.  By Torsten Hothorn.
  * ks.test() gains a formula interface, with y ~ 1 for the
    one-sample (Kolmogorov) test and y ~ group for the two-sample
    (Smirnov) test.  Contributed by Torsten Hothorn.
  * The return value from ks.test() now has class c("ks.test",
    "htest") - packages using try() need to take care to use
    inherits() and not == on the class.
  * New functions psmirnov(), qsmirnov() and rsmirnov() in package
    stats implementing the asymptotic and exact distributions of the
    two-sample Smirnov statistic.
  * iconv() now allows sub = "c99" to use C99-style escapes for UTF-8
    inputs which cannot be converted to encoding to.
  * In a forward pipe |&gt; expression it is now possible to use a named
    argument with the placeholder _ in the rhs call to specify where
    the lhs is to be inserted.  The placeholder can only appear once
    on the rhs.
  * The included LAPACK sources have been updated to version 3.10.0,
    except for the four Fortran 77 routines which 3.10.0 has
    re-implemented in Fortran 90 (where the older versions have been
    retained as the R build process does not support Fortran 90).
  * path.expand() and most other uses of tilde expansion now warn if
    a path would be too long if expanded.  (An exception is
    file.exists(), which silently returns false.)
  * trunc(&lt;Date&gt;, *) now supports units = "months" or "years" for
    consistency with the POSIXt method, thanks to Dirk Eddelbuettel's
    proposal in PR#18099.
  * list2DF() now checks that its arguments are of the same length,
    rather than use recycling.
  * The HTML help system has several new features: LaTeX-like math
    can be typeset using either KaTeX or MathJax, usage and example
    code is highlighted using Prism, and for dynamic help the output
    of examples and demos can be shown within the browser if the
    knitr package is installed. These features can be disabled by
    setting the environment variable _R_HELP_ENABLE_ENHANCED_HTML_ to
    a false value.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 15
    and so packages that provide graphics devices should be
    reinstalled.
  * The grid package now allows the user to specify a "vector" of
    pattern fills.  The fill argument to gpar() accepts a list of
    gradients and/or patterns and the functions linearGradient(),
    radialGradient(), and pattern() have a new group argument.
    Points grobs (data symbols) can now also have a pattern fill.
    The grobCoords() function now returns a more informative and
    complex result.
  * The grid package has new functions for drawing isolated groups:
    grid.group(), grid.define(), and grid.use().  These functions add
    compositing operators and affine transformations to R's graphics
    capabilities.
    The grid package also has new functions for stroking and filling
    paths: grid.stroke(), grid.fill(), and grid.fillStroke().
    A new function as.path() allows the user to specify the fill rule
    for a path that is to be used for clipping, stroking, or filling;
    available options are "winding" and "evenodd".  A new function
    as.mask() allows the user to specify the type of a mask;
    available options are "alpha" and "luminance".
    These new features are only supported so far (at most) on the
    Cairo-based graphics devices and on the pdf() device.
  * dev.capabilities() reports on device support for the new
    features.
  * par() now warns about unnamed non-character arguments to prevent
    misuse such as {usr &lt;- par("usr"); par(usr)}.
  INSTALLATION:
  * Facilities for accessing ftp:// sites are no longer tested
    (except _pro tem_ for curlGetHeaders()) as modern browsers have
    removed support.
  * R can now be built with DEFS = -DSTRICT_R_HEADERS .
  PACKAGE INSTALLATION:
  * R CMD INSTALL no longer tangles vignettes. This completes an R
    CMD build change in R 3.0.0 and affects packages built before R
    3.0.2. Such packages should be re-made with R CMD build to have
    the tangled R code of vignettes shipped with the tarball.
  * USE_FC_LEN_T will become the default: this uses the correct
    prototypes for Fortran BLAS/LAPACK routines called from C/C++,
    and requires adjustment of most such calls - see 'Writing R
    Extensions' SS6.6.2.  (This has been supported since R 3.6.2.)
  * Package installation speed for packages installed with
    keep.source has been improved. This resolve the issue reported by
    Ofek Shilon in PR#18236.
  UTILITIES:
  * R CMD check can optionally report files/directories left behind
    in home, /tmp (even though TMPDIR is set) and other directories.
    See the "R Internals" manual for details.
  * R CMD check now reports byte-compilation errors during
    installation.  These are not usually fatal but may result in
    parts of the package not being byte-compiled.
  * _R_CHECK_DEPENDS_ONLY_ can be applied selectively to examples,
    tests and/or vignettes in R CMD check: see the "R Internals"
    manual.
  * _R_CHECK_SRC_MINUS_W_IMPLICIT_ now defaults to true: recent
    versions of Apple clang on macOS have made implicit function
    declarations in C into a compilation error.
  * R CMD check --as-cran makes use of the environment variable
    AUTORECONF.  See the "R Internals" manual SS8 for further details.
  * R CMD check --use-valgrind also uses valgrind when re-building
    vignettes as some non-Sweave vignettes unhelpfully comment out
    all their code when R CMD check runs vignettes.
  * Errors in re-building vignettes (unless there are LaTeX errors)
    are reported by R CMD check as ERROR rather than WARNING when
    running vignettes has been skipped (as it frequently is in CRAN
    checks and by --as-cran).
  * R CMD Rd2pdf gains a --quiet option that is used by R CMD build
    when building the PDF package manual.
  * R CMD Rd2pdf now always runs LaTeX in batch mode, consistent with
    Texinfo &gt;= 6.7. The --batch option is ignored.
  * R CMD build and R CMD check now include the Rd file name and line
    numbers in the error message of an \Sexpr evaluation failure.
  * For packages using the \doi Rd macro (now an install-time \Sexpr)
    but no other dynamic Rd content, R CMD build now produces a
    smaller tarball and is considerably faster - skipping temporary
    package installation.
  C-LEVEL FACILITIES:
  * The non-API header R_ext/R-ftp-http.h is no longer provided, as
    the entry points it covered are now all defunct.
  * A number of non-API declarations and macro definitions have been
    moved from the installed header Rinternals.h to the internal
    header Defn.h. Packages that only use entry points and
    definitions documented to be part of the API as specified in
    'Writing R Extensions' SS6 should not be affected.
  * The macro USE_RINTERNALS no longer has any effect when compiling
    package code.  Packages which also use R_NO_REMAP will need to
    ensure that the remapped names are used for calls to API
    functions that were formerly also made available as macros.
  * The deprecated legacy S-compatibility macros PROBLEM, MESSAGE,
    ERROR, WARN, WARNING, RECOVER, ... are no longer defined in
    R_exts/RS.h (included by R.h).  Replace these by calls to
    Rf_error and Rf_warning (defined in header R_ext/Error.h included
    by R.h).
    Header R_ext/RS.h no longer includes R_ext/Error.h.
  * Header R_ext/Constants.h (included by R.h) when included from C++
    now includes the C++ header cfloat rather than the C header
    float.h (now possible as C++11 is required).
  * The legacy S-compatibility macros DOUBLE_* in R_ext/Constants.h
    (included by R.h) are deprecated.
  * The deprecated S-compatibility macros SINGLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * R_Calloc, R_Free and R_Realloc are preferred to their unprefixed
    forms and error messages now use the prefix. These forms were
    introduced in R 3.4.0 and are available even when
    STRICT_R_HEADERS is defined.
  * rmultinom has been documented in 'Writing R Extensions' SS6 so is
    now part of the R API.
  * Similarly, Rtanpi, called from R level tanpi() is now part of the
    R API.
  * The long-deprecated, undocumented and non-API entry point call_R
    is no longer declared in R_ext/RS.h (included by R.h).
  * The header S.h which has been unsupported since Jan 2016 has been
    removed.  Use R.h instead.
  DEPRECATED AND DEFUNCT:
  * The (non-default and deprecated) method = "internal" for
    download.file() and url() no longer supports http:// nor ftp://
    URIs.  (It is used only for file:// URIs.)
    On Windows, download.file(method = "wininet") no longer supports
    ftp:// URIs.  (It is no longer the default method, which is
    "libcurl" and does.)
    On Windows, the deprecated method = "wininet" now gives a warning
    for http:// and https:// URIs for both download.file() and url().
    (It is no longer the default method.)
  * On Windows, the command-line option --max-mem-size and
    environment variable R_MAX_MEM_SIZE are defunct.  The memory
    allocation limit was important for 32-bit builds, but these are
    no longer supported.
  * default.stringsAsFactors() is now formally deprecated, where that
    was only mentioned on its regular help page, previously.  So it
    now gives a warning if called.
  * unix.time() is defunct now; it had been deprecated since R 3.4.0.
  BUG FIXES:
  * Setting digits = 0 in format(), print.default() (and hence
    typically print()) or options() is again invalid.  Its behaviour
    was platform-dependent, and it is unclear what "zero significant
    digits" should mean (PR#18098).
  * Messages from C code in the cairo section of package grDevices
    are now also offered for translation, thanks to Michael Chirico's
    PR#18123.
  * mean(x) with finite x now is finite also without "long.double"
    capability.
  * R CMD Rd2pdf no longer leaves an empty build directory behind
    when it aborts due to an already existing output file.  (Thanks
    to Sebastian Meyer's PR#18141.)
  * density(x, weights = w, na.rm = TRUE) when anyNA(x) is true, now
    removes weights "in parallel" to x, fixing PR#18151, reported by
    Matthias Gondan.  Additionally, it gets a subdensity option.
  * Conversion of \Sexpr[]{&lt;expR&gt;} to LaTeX or HTML no longer
    produces long blocks of empty lines when &lt;expR&gt; itself contains
    several lines all producing empty output.  Thanks to a report and
    patch by Ivan Krylov posted to R-devel.
  * R CMD build no longer fails if a package vignette uses child
    documents and inst/doc exists.  (Thanks to Sebastian Meyer's
    PR#18156.)
  * When an R documentation ('help' source) file man/foo.Rd in a
    package has \donttest{..} examples with a syntax error, it is now
    signalled as ERROR and with correct line numbers relating to the
  * -Ex.R file, thanks to Duncan Murdoch and Sebastian Meyer's
    reports and patch proposals in PR#17501.
  * Improved determination of the correct translation domain in
    non-base packages, addressing the combination of PR#18092 and
    PR#17998 (#c6) with reports and _augmented_ patch #2904 by
    Suharto Anggono.
    Note that "R-base" is no longer the default domain e.g., for
    top-level calls to gettext(); rather translation needs explicit
    domain = * specification in such cases.
  * identical(attrib.as.set=FALSE) now works correctly with data
    frames with default row names (Thanks to Charlie Gao's PR#18179).
  * txtProgressBar() now enforces a non-zero width for argument char,
    without which no progress can be visible.
  * dimnames(table(d)) is more consistent in the case where d is a
    list with a single component, thanks to Thomas Soeiro's report to
    R-devel.
    Further, table(d1, d2) now gives an error when d1 and d2 are data
    frames as suggested by Thomas in PR#18224.
  * Fix for drawing semi-transparent lines and fills on the native
    Windows graphics device (PR#18219 and PR#16694).  Thanks to Nick
    Ray for helpful diagnosis on Bugzilla.
  * The deparser now wraps sub-expressions such as if(A) ..  with
    parentheses when needed; thanks to Duncan Murdoch's PR#18232 and
    Lionel Henry's patches there.
  * remove.packages() no longer tries to uninstall Priority: base
    packages, thanks to a report and suggestions by Colin Fay in
    PR#18227.
  * win.metafile() now has xpinch and ypinch arguments so that the
    user can override Windows' (potentially wrong) guess at device
    dimensions.
  * x[i] and x[[i]] for non-integer i should now behave in all cases
    as always documented: the index used is equivalent to
    as.integer(i) unless that would overflow where trunc(i) is used
    instead; thanks to Suharto Anggono's report and patch proposals
    in PR#17977.
  * asOneSidedFormula() now associates the resulting formula with the
    global environment rather than the evaluation environment created
    for the call.
  * &lt;bibentry&gt;$name now matches the field name case-insensitively,
    consistent with bibentry() creation and the replacement method.
  * cbind() failed to detect some length mismatches with a mixture of
    time-series and non-time-series inputs.
  * The default LaTeX style file Sweave.sty used by the RweaveLatex
    driver no longer loads the obsolete ae package; thanks to a
    report by Thomas Soeiro in PR#18271.  Furthermore, it now skips
    \usepackage[T1]{fontenc} for engines other than pdfTeX (if
    detected) or if the new [nofontenc] option is used.
  * smooth.spline() now stores its logical cv argument more safely,
    fixing a rare bug when printing, and also stores n.
  * smooth.spline(x,y,*) now computes the cv.crit statistic
    correctly, also when is.unsorted(x), fixing PR#18294.
  * The data.frame method of rbind() now warns when binding
    not-wholly-recycling vectors, by analogy to the default method
    (for matrices).
  * setAs() finds the correct class for name to when multiple
    packages define a class with that name. Thanks to Gabor Csardi
    for the report.
  * Fix for detaching a package when two classes of the same name are
    present in method signatures for the same generic. Thanks to
    Gabor Csardi for the report.
  * match.arg("", c("", "a", "B")) gives a better error message, in
    part from PR#17959, thanks to Elin Waring.
  * R CMD Sweave --clean no longer removes pre-existing files or
    subdirectories (PR#18242).
  * The quartz() device no longer splits polylines into subpaths.
    That has caused narrowly-spaced lines with many points to always
    look solid even when dashed line type was used due to dash phase
    restarts.
  * Deparsing constructs such as quote(1 + `!`(2) + 3) works again as
    before R 3.5.0, thanks to the report and patch in PR#18284 by
    Suharto Anggono.
  * as.list(f) for a factor f now keeps names(f), fixing PR#18309.
  * qbeta(.001, .9, .009) and analogous qf() calls now return a
    correct value instead of NaN or wrongly 1, all with a warning;
    thanks to the report by Ludger Goeminne in PR#18302.
  * plot.lm() failed to produce the plot of residuals vs.  factor
    levels (i.e., which=5 when leverages are constant) for models
    with character predictors (PR#17840).
  * interaction.plot(..., xtick = TRUE) misplaced the x-axis line
    (PR#18305).
  * Not strictly fixing a bug, format()ing and print()ing of
    non-finite Date and POSIXt values NaN and +/-Inf no longer show
    as NA but the respective string, e.g., Inf, for consistency with
    numeric vector's behaviour, fulfilling the wish of PR#18308.
  * R CMD check no longer runs test scripts generated from
    corresponding .Rin files twice and now signals an ERROR if
    processing an .Rin script fails.
  * tools::Rd2txt() used for plain-text help pages now renders \hrefs
    (if tools::Rd2txt_options(showURLs = TRUE)) and \urls with
    percent-encoding and standards-compliant delimiting style (angle
    brackets and no URL: prefix).  \email is now rendered with a
    mailto: prefix.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1655985600">- CHANGES IN R 4.2.1:
  NEW FEATURES:
  * New function utils::findCRANmirror() to find out if a CRAN mirror
    has been selected, otherwise fallback to the main site.  This
    behaves in the same way as tools::CRAN_package_db() and is
    intended for packages wishing to access CRAN for purposes other
    than installing packages.
    The need for this was shown by a day when the main CRAN website
    was offline and a dozen or so packages which had its URL
    hardcoded failed their checks.
  INSTALLATION on a UNIX-ALIKE:
  * The libraries searched for by --with-blas (without a value) now
    include BLIS (after OpenBLAS but before ATLAS).  And on macOS,
    the Accelerate framework (after ATLAS).  (This is patterned after
    the AX_BLAS macro from the Autoconf Archive.)
  * The included LAPACK sources have been updated to 3.10.1.
  UTILITIES:
  * The (full path to) the command tidy to be used for HTML
    validation can be set by environment variable R_TIDYCMD.
  * Setting environment variable _R_CHECK_RD_VALIDATE_RD2HTML_ to a
    false value will override R CMD check --as-cran and turn off HTML
    validation.  This provides a way to circumvent a problematic
    tidy.
    The 2006 version that ships with macOS is always skipped.
  C-LEVEL FACILITIES:
  * The undocumented legacy declarations of Sint, Sfloat, SINT_MAX
    and SINT_MIN in header R.h are deprecated.
  BUG FIXES:
  * fisher.test(d) no longer segfaults for "large" d; fixing PR#18336
    by preventing/detecting an integer overflow reliably.
  * tar(., files=*) now produces correctly the warning about invalid
    uid or gid of files, fixing PR#18344, reported by Martin Morgan.
  * tk_choose.files() with multi = FALSE misbehaved on paths
    containing spaces (PR#18334) (regression introduced in R 4.0.0).
  * sort(x, partial = ind, *) now works correctly notably for the
    non-default na.last = FALSE or TRUE, fixing PR#18335 reported by
    James Edwards.
  * Environment variable _R_CHECK_XREFS_REPOSITORIES_ is only used
    for checking .Rd cross-references in R CMD check (as documented)
    and not for other uses looking for a CRAN mirror.
  * The search for a CRAN mirror when checking packages now uses
    getOption("repos") if that specifies a CRAN mirror, even when it
    does not also specify all three Bioconductor repositories (as was
    previously required).
  * The HTML code generated by tools::Rd2HTML() has been improved to
    pass tidy 5.8.0.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1667217600">- CHANGES IN R 4.2.2:
  NEW FEATURES:
  * tools::Rdiff(useDiff = TRUE) checks for the presence of an
    external diff command and switches to useDiff = FALSE if none is
    found.  This allows R CMD Rdiff to always work.
  * On Windows, environment variable R_LIBCURL_SSL_REVOKE_BEST_EFFORT
    can be used to switch to only 'best-effort' SSL certificate
    revocation checks with the default "libcurl" download method.
    This reduces security, but may be needed for downloads to work
    with MITM proxies (PR#18379).
  * (macOS) The run-time check for libraries from XQuartz for X11 and
    Tcl/Tk no longer uses otool from the Apple Developer Tools
    (PR#18400).
  * The LaTeX style for producing the PDF manuals, Rd.sty, now loads
    the standard amsmath, amsfonts and amssymb packages for greater
    coverage of math commands in the Rd \eqn and \deqn macros.  The
    \mathscr LaTeX command is also provided (via the mathrsfs
    package, if available, or the amsfonts bundle otherwise),
    fulfilling the wish of PR#18398.
  * (Windows) The default format of readClipboard() and
    writeClipboard() has been changed to 13 (CF_UNICODETEXT).
  INSTALLATION on a UNIX-ALIKE:
  * The PDF manuals (if built) can be compacted by the new target
    make compact-pdf (at the top level or in directory doc/manual).
  * There is now configure support for LLVM clang 15 on Linux, which
    defaults to position-independent (PIE) executables whereas
    gfortran does not.
  * Many small changes to ease compilation (and suppress warnings)
    with LLVM clang 15.
  BUG FIXES:
  * Rscript -e would fail if stdin were closed (Reported by Henrik
    Bengtsson.)
  * qt(*, log.p=TRUE) in outer tails no longer produces NaN in its
    final steps, thus fixing PR#18360.
  * tools::Rd2latex() now escapes hashes and ampersands when writing
    URLs, fixing LaTeX errors with such URLs in \tabular.
  * When isGeneric(f, fdef=*) is used with mismatching names, the
    warning is better understandable; reported (with fix) in PR#18370
    by Gabe Becker.
  * poly(x, n) now works again (and is now documented) when x is a
    "Date" or "POSIXct" object, or of another class while fulfilling
    mode(x) == "numeric".  This also enables poly(x, *, raw=TRUE) for
    such variables.  Reported by Michael Chirico to R-devel.
  * write.table(), write.csv() and write.csv2() restore their
    numerical precision (internal equivalent of digits = 15) after an
    interrupt (PR#18384).
  * One can now read also byte FF from a clipboard connection
    (PR#18385).
  * source("") and source(character()) now give more helpful error
    messages.
  * R CMD check --as-cran set _R_CHECK_TIMINGS_ too late to have the
    intended effect.
  * as.POSIXlt(x) now also works with very large dates x, fixing
    PR#18401 reported by Hannes M"uhleisen.
  * Files can now be extracted even from very large zip archives
    (PR#18390, thanks to Martin Jakt).
  * Non-finite objects of class "POSIXlt" are now correctly coerced
    to classes "Date" and "POSIXct"; following up on the extension to
    format() them correctly.
  * Added methods for is.finite(), is.infinite() and is.nan() for
    "POSIXlt" date-time objects.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1678881600">- CHANGES IN R 4.2.3:
  C-LEVEL FACILITIES:
  * The definition of DL_FUNC in R_ext/Rdynload.h has been changed to
    be fully C-compliant.  This means that functions loaded _via_ for
    example R_GetCCallable need to be cast to an appropriate type if
    they have any arguments.
  * .Machine has a new element sizeof.time_t to identify old systems
    with a 32-bit type and hence a limited range of date-times (and
    limited support for dates millions of years from present).
  PACKAGE INSTALLATION:
  * (Windows) The default C++ standard had accidentally been left at
    C++11 when it was changed to C++14 on Unix.
  BUG FIXES:
  * As "POSIXlt" objects may be "partially filled" and their list
    components meant to be recycled, length() now is the length of
    the longest component.
  * as.POSIXlt.Date() could underflow for dates in the far past (more
    than half a million years BCE).
  * as.Date.POSIXlt(x) would return "1970-01-01" instead of NA in R
    4.2.2, e.g., for
    x &lt;- as.POSIXlt(c("2019-01-30","2001-1-1"))
    x$mon &lt;- c(0L, NA); as.Date(x)
  * R CMD check failed to apply enabled _R_CHECK_SUGGESTS_ONLY_ to
    examples and vignettes (regression in R 4.2.0).
  * R CMD check did not re-build vignettes in separate processes by
    default (regression in R 4.2.0).
  * Running examples from HTML documentation now restores previous
    knitr settings and options (PR#18420).
  * Quartz: fonts are now located using Core Graphics API instead of
    deprecated ATS which is no longer supported in the macOS 13 SDK
    (PR#18426).  This also addresses an issue where the currently
    used font in the Quartz device context was not correctly
    retained.
  * (Windows) Math symbols in text drawing functions are again
    rendered correctly (PR#18440).  This fixes a regression in R
    4.2.1 caused by a fix in PR#18382 which uncovered an issue in
    GraphApp due to which the symbol charset was not used with TT
    Symbol font face.
  * (Windows) Installing a package with a src/Makefile.{win,ucrt}
    file includes ~/.R/Makevars.win64 in the search for user
    makevars, as documented in "R Installation and Administration"
    and done for packages with a src/Makevars.{win,ucrt} file.
  * format(&lt;POSIXlt_w/_unbalanced_sec&gt;, "....%OS&lt;n&gt;") with n &gt; 0 no
    longer accidentally uses the unbalanced seconds, thanks to
    Suharto Anggono's report (including patch) in PR#18448.
  * solve.default(a, b) works around issues with some versions of
    LAPACK when a contains NA or NaN values.
  * When UseMethod() cannot dispatch, it no longer segfaults
    producing the error message in case of a long class(), thanks to
    Joris Vankerschaver's report (including patch) in PR#18447.
  * When example(foo, ..) produces graphics on an interactive device
    it needs to open itself, it now leaves devAskNewPage() unchanged
    even when it was FALSE, thus fixing a 14 years old '&lt;FIXME&gt;'.
  * packageDescription() again catches errors from encoding
    conversions. This also fixes broken packageVersion() in C locale
    on systems where iconv does not support transliteration.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1681128000">- add patch to build with libcurl &gt;= 8</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1682078400">- CHANGES IN R 4.3.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Calling &amp;&amp; or || with LHS or (if evaluated) RHS of length greater
    than one is now always an error, with a report of the form
    'length = 4' in coercion to 'logical(1)'
    Environment variable _R_CHECK_LENGTH_1_LOGIC2_ no longer has any
    effect.
  NEW FEATURES:
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.10.1.  (This caused some platform-dependent
    changes to package check output.)  And then to the sources from
    LAPACK version 3.11.0 (with changes only to double complex
    subroutines).
  * The included LAPACK sources have been updated to include the four
    Fortran 90 routines rather than their Fortran 77 predecessors.
    This may give some different signs in SVDs or
    eigendecompositions..  (This completes the transition to LAPACK
    3.10.x begun in R 4.2.0.)
  * The LAPACK sources have been updated to version 3.11.0.  (No new
    subroutines have been added, so this almost entirely bug fixes:
    Those fixes do affect some computations with NaNs, including R's
    NA.)
  * The parser now signals _classed_ errors, notably in case of the
    pipe operator |&gt;.  The error object and message now give line and
    column numbers, mostly as proposed and provided by Duncan Murdoch
    in PR#18328.
  * toeplitz() is now generalized for asymmetric cases, with a
    toeplitz2() variant.
  * xy.coords() and xyz.coords() and consequently, e.g., plot(x,y,
    log = "y") now signal a _classed_ warning about negative values
    of y (where log(.) is NA).  Such a warning can be specifically
    suppressed or caught otherwise.
  * Regular expression functions now check more thoroughly whether
    their inputs are valid strings (in their encoding, e.g. in
    UTF-8).
  * The performance of grep(), sub(), gsub() and strsplit() has been
    improved, particularly with perl = TRUE and fixed = TRUE.  Use of
    useBytes = TRUE for performance reasons should no longer be
    needed and is discouraged: it may lead to incorrect results.
  * apropos() gains an argument dot_internals which is used by the
    completion (help(rcompgen)) engine to also see base internals
    such as .POSIXct().
  * Support in tools::Rdiff() for comparing uncompressed PDF files is
    further reduced - see its help page.
  * qqplot(x, y, ...) gains conf.level and conf.args arguments for
    computing and plotting a confidence band for the treatment
    function transforming the distribution of x into the distribution
    of y (Switzer, 1976, _Biometrika_). Contributed by Torsten
    Hothorn.
  * Performance of package_dependencies() has been improved for cases
    when the number of dependencies is large.
  * Strings newly created by gsub(), sub() and strsplit(), when any
    of the inputs is marked as "bytes", are also marked as "bytes".
    This reduces the risk of creating invalid strings and accidental
    substitution of bytes deemed invalid.
  * Support for readLines(encoding = "bytes") has been added to allow
    processing special text files byte-by-byte, without creating
    invalid strings.
  * iconv(from = "") now takes into account any declared encoding of
    the input elements and uses it in preference to the native
    encoding.  This reduces the risk of accidental creation of
    invalid strings, particularly when different elements of the
    input have different encoding (including "bytes").
  * Package repositories in getOption("repos") are now initialized
    from the repositories file when utils is loaded (if not already
    set, e.g., in .Rprofile).  (From a report and patch proposal by
    Gabriel Becker in PR#18405.)
  * compactPDF() gets a verbose option.
  * type.convert() and hence read.table() get new option tryLogical =
    TRUE with back compatible default.  When set to false, converts
    "F" or "T" columns to character.
  * Added new unit prefixes "R" and "Q" for abbreviating
    (unrealistically large) sizes beyond 10^{27} in standard = "SI",
    thanks to Henrik Bengtsson's PR#18435.
  * as.data.frame()'s default method now also works fine with atomic
    objects inheriting from classes such as "roman", "octmode" and
    "hexmode", such fulfilling the wish of PR#18421, by Benjamin
    Feakins.
  * The as.data.frame.vector() utility now errors for wrong-length
    row.names.  It warned for almost six years, with "Will be an
    error!".
  * sessionInfo() now also contains La_version() and reports codepage
    and timezone when relevant, in both print() and toLatex() methods
    which also get new option tzone for displaying timezone
    information when locale = FALSE.
  * New function R_compiled_by() reports the C and Fortran compilers
    used to build R, if known.
  * predict(&lt;lm&gt;, newdata = *) no longer unnecessarily creates an
    offset of all 0s.
  * solve() for complex inputs now uses argument tol and by default
    checks for 'computational singularity' (as it long has done for
    numeric inputs).
  * predict(&lt;rank-deficient lm&gt;, newdata=*) now obeys a new argument
    rankdeficient, with new default "warnif", warning only if there
    are non-estimable cases in newdata.  Other options include
    rankdeficient = "NA", predicting NA for non-estimable newdata
    cases.  This addresses PR#15072 by Russ Lenth and is based on his
    original proposal and discussions in PR#16158 also by David Firth
    and Elin Waring.  Still somewhat experimental.
  * Rgui console implementation now works better with the NVDA screen
    reader when the full blinking cursor is selected.  The underlying
    improvements in cursor handling may help also other screen
    readers on Windows.
  * The drop-field control in GraphApp can now be left with the TAB
    key and all controls can be navigated in the reverse order using
    the Shift+TAB key, improving accessibility of the Rgui
    configuration editor.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now fully accurate
    (instead of to "only" minimally five digits).
  * demo(error.catching) now also shows off withWarnings() and
    tryCatchWEMs().
  * As an experimental feature the placeholder _ can now also be used
    in the rhs of a forward pipe |&gt; expression as the first argument
    in an extraction call, such as _$coef. More generally, it can be
    used as the head of a chain of extractions, such as _$coef[[2]].
  * Spaces in the environment variable used to choose the R session's
    temporary directory (TMPDIR, TMP and TEMP are tried in turn) are
    now fatal.  (On Windows the 'short path' version of the path is
    tried and used if that does not contain a space.)
  * all.equal.numeric() gets a new optional switch giveErr to return
    the numeric error as attribute.  Relatedly,
    stopifnot(all.equal&lt;some&gt;(a, b, ..)) is as "smart" now, as
    stopifnot(all.equal(....)) has been already, thus allowing
    customized all.equal&lt;Some&gt;() wrappers.
  * R on Windows is now able to work with path names longer than 260
    characters when these are enabled in the system (requires at
    least Windows 10 version 1607).  Packages should be updated to
    work with long paths as well, instead of assuming PATH_MAX to be
    the maximum length.  Custom front-ends and applications embedding
    R need to update their manifests if they wish to allow this
    feature.  See
    &lt;https://blog.r-project.org/2023/03/07/path-length-limit-on-windows&gt;
    for more information.
  * 'Object not found' and 'Missing argument' errors now give a more
    accurate error context. Patch provided by Lionel Henry in
    PR#18241.
  * The @ operator is now an S3 generic. Based on contributions by
    Tomasz Kalinowski in PR#18482.
  * New generic chooseOpsMethod() provides a mechanism for objects to
    resolve cases where two suitable methods are found for an Ops
    Group Generic. This supports experimenting with alternative
    object systems. Based on contributions by Tomasz Kalinowski in
    PR#18484.
  * inherits(x, what) now accepts values other than a simple
    character vector for argument what. A new generic, nameOfClass(),
    is called to resolve the class name from what. This supports
    experimenting with alternative object systems. Based on
    contributions by Tomasz Kalinowski in PR#18485.
  * Detection of BLAS/LAPACK in use (sessionInfo()) with FlexiBLAS
    now reports the current backend.
  * The "data.frame" method for subset() now warns about extraneous
    arguments, typically catching the use of = instead of == in the
    subset expression.
  * Calling a:b when numeric a or b is longer than one may now be
    made into an error by setting environment variable
    _R_CHECK_LENGTH_COLON_ to a true value, along the proposal in
    PR#18419 by Henrik Bengtsson.
  * density(x, weights = *) now warns if automatic bandwidth
    selection happens without using weights; new optional warnWbw may
    suppress the warning.  Prompted by Christoph Dalitz' PR#18490 and
    its discussants.
  * rm(list = *) is faster and more readable thanks to Kevin Ushey's
    PR#18492.
  * The plot.lm() function no longer produces a normal Q-Q plot for
    GLMs. Instead it plots a half-normal Q-Q plot of the absolute
    value of the standardized deviance residuals.
  * The print() method for class "summary.glm" no longer shows
    summary statistics for the deviance residuals by default.  Its
    optional argument show.residuals can be used to show them if
    required.
  * The tapply() function now accepts a data frame as its X argument,
    and allows INDEX to be a formula in that case. by.data.frame()
    similarly allows INDICES to be a formula.
  * The performance of df[j] &lt;- value (including for missing j) and
    write.table(df) has been improved for data frames df with a large
    number of columns.  (Thanks to Gabriel Becker's PR#18500,
    PR#18503 and discussants, prompted by a report from Toby Dylan
    Hocking on the R-devel mailing list.)
  * The matrix multiply operator %*% is now an S3 generic, belonging
    to new group generic matrixOps.  From Tomasz Kalinowski's
    contribution in PR#18483.
  * New function array2DF() to convert arrays to data frames,
    particularly useful for the list arrays created by tapply().
  DATES and TIMES:
  * On platforms where (non-UTC) datetimes before 1902 (or before
    1900 as with system functions on recent macOS) are guessed by
    extrapolating time zones from 1902-2037, there is a warning at
    the first use of extrapolation in a session.  (As all time zones
    post 2037 are extrapolation, we do not warn on those.)
  * (Platforms using --with-internal-tzone, including Windows and by
    default macOS). How years are printed in dates or date-times can
    be controlled by environment variable R_PAD_YEARS_BY_ZERO.  The
    default remains to pad to 4 digits by zeroes, but setting value
    no gives no padding (as used by default by glibc).
  * strftime() tries harder to determine the offset for the "%z"
    format, and succeeds on the mainstream R platforms.
  * strftime() has a limit of 2048 bytes on the string produced -
    attempting to exceed this is an error.  (Previously it silently
    truncated at 255 bytes.)
  * sessionInfo() records (and by default prints) the system time
    zone as part of the locale information.  Also, the source
    (system/internal) of the date-time conversion and printing
    functions.
  * Objects of class "POSIXlt" created in this version of R always
    have 11 components: component zone is always set, and component
    gmtoff is set for times in UTC and usually set on the (almost
    all) platforms which have C-level support, otherwise is NA.
  * There are comprehensive validity checks on the structure of
    objects of class "POSIXlt" when converting (including formatting
    and printing).  (This avoids mis-conversions of hand-crafted
    objects.)
  * There is some support for using the native date-time routines on
    macOS: this is only viable on recent versions (e.g. 12.6 and 13)
    and does get wrong some historical changes (before 1900, during
    WWII).  Use of --with-internal-tzone remains the default.
  * as.POSIXct(&lt;numeric&gt;) and as.POSIXlt(.) (without specifying
    origin) now work.  So does as.Date(&lt;numeric&gt;).
  * as.Date.POSIXct(., tz) now treats several tz values, notably
    "GMT" as equivalent to "UTC", proposed and improved by Michael
    Chirico and Joshua Ulrich in PR#17674.
  * Experimental balancePOSIXlt() utility allows using "ragged" and
    or out-of-range "POSIXlt" objects more correctly, e.g., in
    subsetting and subassignments.  Such objects are now documented.
    More experimentally, a "POSIXlt" object may have an attribute
    "balanced" indicating if it is known to be filled or fully
    balanced.
  * Functions axis.Date() and axis.POSIXct() are rewritten to gain
    better default tick locations and better default formats by using
    prettyDate(). Thanks to Swetlana Herbrandt.
  * The mapping of Windows' names for time zones to IANA's 'Olson'
    names has been updated.  When ICU is available (it is by
    default), it is used to get a mapping for the current region set
    in Windows.  This can be overridden by setting environment
    variable TZ to the desired Olson name - see OlsonNames() for
    those currently available.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 16
    and so packages that provide graphics devices should be
    reinstalled.
  * The grDevices and grid packages have new functions for rendering
    typeset glyphs, primarily: grDevices::glyphInfo() and
    grid::grid.glyph().
    Rendering of typeset glyphs is only supported so far on the
    Cairo-based graphics devices and on the pdf() and quartz()
    devices.
  * The defined behaviour for "clear" and "source" compositing
    operators (via grid::grid.group()) has been changed (to align
    better with simple interpretation of original Porter-Duff
    definitions).
  * Support for gradients, patterns, clipping paths, masks, groups,
    compositing operators, and affine transformations has been added
    to the quartz() device.
  INSTALLATION on a UNIX-ALIKE:
  * A system installation of generic LAPACK 3.10.0 or later will be
    preferred to the version in the R sources.
    configure option --with-lapack=no (equivalently --without-lapack)
    forces compilation of the internal LAPACK sources.
    If --with-lapack is not specified, a system liblapack is looked
    for and used if it reports version 3.10.0 or later and does not
    contain BLAS routines.
    Packages using LAPACK will need to be reinstalled if this changes
    to using an external library.
  * On aarch64 Linux platforms using GCC, configure now defaults to
  - fPIC (instead of -fpic), as desired in PR#18326.
  * configure now checks conversion of datetimes between POSIXlt and
    POSIXct around year 2020.  Failure (which has been seen on
    platforms missing tzdata) is fatal.
  * If configure option --with-valgrind-instrumentation is given
    value 1 or 2, option --with-system-valgrind-headers is now the
    default and ignored (with a warning).  It is highly recommended
    that the system headers are installed alongside valgrind: they
    are part of its packaging on some Linux distributions and
    packaged separately (e.g. in the valgrind-devel RPM) on others.
    configure will give a warning if they are not found.
    The system headers will be required in a future release of R to
    build with valgrind instrumentation.
  * libcurl 8.x is now accepted by configure: despite a change in
    major version number it changes neither API nor ABI.
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools43, an update of the Rtools42 toolchain.  It is
    based on gcc 12 and newer versions of MinGW-W64, binutils and
    libraries.  At this time R-devel can still be built using
    Rtools42 without changes, but when R-devel is installed via the
    installer, it will by default look for Rtools43.
  * Old make targets rsync-extsoft and 32-bit ones that are no longer
    needed have been removed.
  * Default builds (including for packages) no longer select C99.
    Thus the C standard used is the default for the compiler, which
    for the toolchain in Rtools43 is C17.  (This is consistent with
    Unix builds.)
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++17 where
    available (which it is on all currently checked platforms): if
    not C++14 or C++11 is used if available otherwise C++ is not
    supported.
  * USE_FC_LEN_T is the default: this uses the correct
    (compiler-dependent) prototypes for Fortran BLAS/LAPACK routines
    called from C/C++, and requires adjustment of many such calls -
    see 'Writing R Extensions' SS6.6.1.
  * There is initial support for C++23 as several compilers are now
    supporting -std=c++23 or -std=c++2b or similar.  As for C++20,
    there no additional configure checks for C++23 features beyond a
    check that the compiler reports a __cplusplus value greater than
    that in the C++20 standard.  C++ feature tests should be used.
  * There is support for a package to indicate the version of the C
    standard which should be used to compile it, and for the
    installing user to specify this.  In most cases R defaults to the
    C compiler's default standard which is C17 (a `bug-fix' of C11) -
    earlier versions of R or compilers may have defaulted to C99.
    Current options are:
    USE_C17 Use a standard that is at most C17.  The intention is to
    allow legacy packages to still be installed when later C
    standards become the default, including packages using new
    keywords as identifiers or with K&amp;R-style function
    declarations.  This will use C17 if available, falling back
    to C11.
    USE_C90 Use the C90 (aka C89) standard.  (As that standard did
    not require compilers to identify that version, all we can
    verify is that the compiler does not claim to be using a
    later standard.  It may accept C99 features - for example
    clang accepts // to make comments.)
    USE_C99 Use the C99 standard. This should be rarely needed - it
    avoids the few new features of C11/C17 which can be useful if
    a package assumes them if C17 is specified and they are not
    implemented.
    USE_C23 Use C23 (or in future, later).  Compiler/library support
    for C23 is still being implemented, but LLVM clang from
    15.0.0 and the upcoming GCC 13 have quite extensive support.
    These can be specified as part of the SystemRequirements field in
    the package's DESCRIPTION file or _via_ options --use-C17 and so
    on of R CMD INSTALL and R CMD SHLIB.
    For further details see "Writing R Extensions" SS1.2.5.
  * (Windows) A src/Makefile.ucrt or src/Makefile.win file is now
    included after R_HOME/etcR_ARCH/Makeconf and so no longer needs
    to include that file itself.  Installation of a package with such
    a file now uses a site Makevars file in the same way as a package
    with a src/Makevars.win file would.
  * configure is now passed crucial variables such as CC and CFLAGS
    in its environment, as many packages were not setting them (as
    documented in 'Writing R Extensions' SS1.2).
    This has most effect where configure is used to compile parts of
    the package - most often by cmake or libtool which obfuscate the
    actual compile commands used.
    Also used for configure.win and configure.ucrt on Windows.
  FORTRAN FLAGS:
  * The flag -fno-optimize-sibling-calls is no longer forced for
    gfortran 7 and later.  It should no longer be needed now using
    'hidden' character-length arguments when calling BLAS/LAPACK
    routines from C/C++ is the default even for packages.  (Unless
    perhaps packages call Fortran code from C/C++ without using R's
    headers and without allowing for these arguments.)
  C-LEVEL FACILITIES:
  * The deprecated S-compatibility macros DOUBLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * The deprecated legacy typedefs of Sint and Sfloat in header R.h
    are no longer defined, and that header no longer includes header
    limits.h from C nor climits from C++.
  * New macro CAD5R() is provided in Rinternals.h and used in a few
    places in the R sources.
  * ALTREP now supports VECSXP vectors. Contributed by Gabor Csardi
    in PR#17620.
  * The Rcomplex definition (in header R_ext/Complex.h) has been
    extended to prevent possible mis-compilation when interfacing
    with Fortran (PR#18430).  The new definition causes compiler
    warnings with static initializers such as {1, 2}, which can be
    changed to {.r=1, .i=2}.
    Using the new definition from C++ depends on compiler extensions
    supporting C features that have not been incorporated into the
    C++ standards but are available in g++ and clang++: this may
    result in C++ compiler warnings but these have been worked around
    for recent versions of common compilers (GCC, Apple/LLVM clang,
    Intel).
    It is intended to change the inclusion of header R_ext/Complex.h
    by other R headers, so C/C++ code files which make use of
    Rcomplex should include that header explicitly.
  UTILITIES:
  * R CMD check does more checking of package .Rd files, warning
    about invalid email addresses and (some) invalid URIs and noting
    empty \item labels in description lists.
  * R CMD check now also reports problems when reading package news
    in md (file NEWS.md) and (optionally) plain text (file NEWS)
    formats.
  * _R_CHECK_TIMINGS_ defaults to a value from the environment even
    for R CMD check --as-cran; this allows for exceptionally fast or
    slow platforms.
    It now applies to checking PDF and HTML versions of the manuals,
    and 'checking CRAN incoming feasibility'.
  * R CMD check can optionally (but included in --as-cran) check
    whether HTML math rendering _via_ KaTeX works for the package .Rd
    files.
  * Non-interactive debugger invocations can be trapped by setting
    the environment variable _R_CHECK_BROWSER_NONINTERACTIVE_ to a
    true value.  This is enabled by R CMD check --as-cran to detect
    the use of leftover browser() statements in the package.
  * The use of sprintf and vsprintf from C/C++ has been deprecated in
    macOS 13 and is a known security risk.  R CMD check now reports
    (on all platforms) if their use is found in compiled code:
    replace by snprintf or vsnprintf respectively. [*NB:* whether
    such calls get compiled into the package is platform-dependent.]
  * Where recorded at installation, R CMD check reports the C and
    Fortran compilers used to build R.
    It reports the OS in use (if known, as given by osVersion) as
    well as that R was built for.
    It notes if a C++ standard was specified which is older than the
    current default: many packages have used C++11 to mean 'not
    C++98' - as C++11 is the minimum supported since R 4.0.0, that
    specification can probably be removed.
  * R CMD INSTALL reports the compilers (and on macOS, the SDK) used,
    and this is copied to the output of R CMD check.
    Where a C++ standard is specified, it is reported.
  * R CMD check's 'checking compilation flags in Makevars' has been
    relaxed to accept the use of flags such as -std=f2008 in
    PKG_FFLAGS.
  * tools::buildVignettes() has a new argument skip, which is used by
    R CMD check to skip (and note) vignettes with unavailable
    \VignetteDepends (PR#18318).
  * New generic .AtNames() added to enable class-specific completions
    after @. The formerly internal function findMatches() is now
    exported, mainly for use in methods for .DollarNames() and
    .AtNames().
  DEPRECATED AND DEFUNCT:
  * default.stringsAsFactors() is defunct.
  * Calling as.data.frame.&lt;class&gt;() directly (for 12 atomic classes)
    is going to be formally deprecated, currently activated by
    setting the environment variable
    _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ to non-empty, which also
    happens in R CMD check --as-cran.
  BUG FIXES:
  * Hashed environments with sizes less than 5 can now grow.
    (Reported to R-devel by Duncan Garmonsway.)
  * as.character(&lt;Rd&gt;, deparse = TRUE) failed to re-escape curly
    braces in LaTeX-like text.  (Reported by Hadley Wickham in
    PR#18324.)
  * library() now passes its lib.loc argument when requiring Depends
    packages; reported (with fix) in PR#18331 by Mikael Jagan.
  * R CMD Stangle: improved message about 'Output' files.
  * head(x, n) and tail(x, n) now signal an error if n is not
    numeric, instead of incidentally "working" sometimes returning
    all of x.  Reported and discussed by Colin Fay, in PR#18357.
  * The "lm" method for summary() now gives the correct F-statistic
    when the model contains an offset.  Reported in PR#18008.
  * C() and `contrasts&lt;-`() now preserve factor level names when
    given a function object (as opposed a function name which did
    preserve names). Reported in PR#17616.
  * c(a = 1, 2)[[]] no longer matches 2 but rather signals a
    _classed_ error.  Reported and analysed by Davis Vaughan in
    PR#18367, a duplicate of PR#18004, by Jan Meis et al.  For
    consistency, NULL[[]] is also erroneous now.  x[[]] &lt;- v gives an
    error of the same class "MissingSubscriptError".
  * The relist() function of utils now supports NULL elements in the
    skeleton (PR#15854).
  * ordered(levels = *) (missing x) now works analogously to factor(,
    ordered=TRUE); reported (with fix) by Achim Zeileis in PR#18389.
  * User-defined Rd macro definitions can now span multiple lines,
    thanks to a patch from Duncan Murdoch. Previously, the Rd parser
    silently ignored everything after the first line.
  * Plain-text help (tools::Rd2txt()) now preserves an initial blank
    line for text following description list items.
  * tools::Rd2HTML() and tools::Rd2latex() no longer split \arguments
    and \value lists at Rd comments.
  * tools::Rd2latex() now correctly handles optional text outside
    \items of argument lists as well as bracketed text at the
    beginning of sections, e.g., \value{[NULL]}.
  * as.character(&lt;POSIXt&gt;) now behaves more in line with the methods
    for atomic vectors such as numbers, and is no longer influenced
    by options().  Ditto for as.character(&lt;Date&gt;).  The
    as.character() method gets arguments digits and OutDec with
    defaults _not_ depending on options().  Use of as.character(*,
    format = .) now warns.
  * Similarly, the as.character.hexmode() and *.octmode() methods
    also behave as good citizen methods and back compatibility option
    keepStr = TRUE.
  * The as.POSIXlt(&lt;POSIXlt&gt;) and as.POSIXct(&lt;POSIXct&gt;) default
    methods now do obey their tz argument, also in this case.
  * as.POSIXlt(&lt;Date&gt;) now does apply a tz (time zone) argument, as
    does as.POSIXct(); partly suggested by Roland Fuss on the R-devel
    mailing list.
  * as.Date.POSIXlt(x) now also works when the list components are of
    unequal length, aka "partially filled" or "ragged".
  * expand.model.frame() looked up variables in the wrong environment
    when applied to models fitted without data.  Reported in
    PR#18414.
  * time() now (also) uses the ts.eps = getOption("ts.eps") argument
    and thus by default rounds values very close to the start (or
    end) of a year.  Based on a proposal by Andre"i V. Kostyrka on
    R-help.
  * Printing of a factanal() result with just one factor and sort =
    TRUE now works regularly, fixing PR#17863 by Timothy Bates,
    thanks to the 'R Contributors' working group.
  * Printing 0-length objects of class "factor", "roman", "hexmode",
    "octmode", "person", "bibentry", or "citation" now prints
    something better, one of which fixes PR#18422, reported by
    Benjamin Feakins.
  * Sys.timezone() queries timedatectl only if systemd is loaded;
    addressing a report by Jan Gorecki in PR#17421.
  * The formula method of cor.test() had scoping problems when
    environment(formula) was not the calling environment; reported
    with a patch proposal by Mao Kobayashi in PR#18439.
  * attach() of an environment with active bindings now preserves the
    active bindings.  Reported by Kevin Ushey in PR#18425.
  * BLAS detection now works also with system-provided libraries not
    available as regular files.  This fixes detection of the
    Accelerate framework on macOS since Big Sur.  Reported by David
    Novgorodsky.
  * download.file() gives a helpful error message in case of an
    invalid download.file.method option, thanks to Colin Fay's report
    in PR#18455.
  * Sporadic crashes of Rterm when using completion have been fixed.
  * Rprof() is now more reliable.  A livelock in thread
    initialization with too short sampling interval has been fixed on
    macOS.  A deadlock in using the C runtime has been fixed on
    Windows.  A potential deadlock has been prevented on Unix.
  * Cursor placement in Rgui now works even after a fixed-width font
    is selected.
  * Mandatory options (options()) are now set on startup so that
    saving and restoring them always works (PR#18372).
  * Package installation, R CMD INSTALL or install.packages(*), now
    parses each of the &lt;pkg&gt;/R/*.R files individually instead of
    first concatenating and then parse()ing the large resulting file.
    This allows parser or syntax errors to be diagnosed with correct
    file names and line numbers, thanks to Simon Dedman's report and
    Bill Dunlap's patch in PR#17859.
    This _does_ require syntactically self contained R source files
    now, fixing another inadvertent bug.
  * predict.lm(&lt;model with offset&gt;) now finds the offset in the
    correct environment, thanks to Andr'e Gillibert's report and patch
    in PR#18456.
  * getInitial(&lt;formula&gt;) now finds the selfStart model in the
    correct environment.  (Reported by Ivan Krylov in PR#18368.)
  * Fix for possible segfault when using recently-added graphics
    features, such as gradients, clipping paths, masks, and groups
    with pdf(file=NULL).
  * class(m) &lt;- class(m) no longer changes a matrix m by adding a
    class _attribute_.
  * packageDate(pkg) now only warns once if there is no pkg.
  * When ts() creates a multivariate time series, "mts", it also
    inherits from "array" now, and is.mts() is documented _and_
    stricter.
  * Rd2txt() now preserves line breaks of \verb Rd content and from
    duplicated \cr.  The former also fixes the rendering of verbatim
    output from Rd \Sexpr in plain-text help.
  * uniroot(f, interval) should no longer wrongly converge _outside_
    the interval in some cases where abs(f(x)) == Inf for an x at the
    interval boundary, thanks to posts by Ben Bolker and Serguei
    Sokol on R-devel.
  * Vectorized alpha handling in palette functions such as in gray(),
    rainbow(), or hcl.colors() works correctly now, thanks to Achim
    Zeileis' report and patch in PR#18476.
  * Formatting and print()ing of bibentry objects has dropped the
    deprecated citation.bibtex.max argument, such that the bibtex
    argument's default for print.bibentry() depends directly on the
    citation.bibtex.max option, whereas in format.bibentry() the
    option no longer applies.
  * Attempting to use a character string naming a foreign function
    entry point in a foreign function call in a package will now
    signal an error if the packages has called R_forceSymbols to
    specify that symbols must be used.
  * An error in table() could permanently set options(warn=2)
    promoting all subsequent warnings to errors.
  * The sigma() function gave misleading results for binary GLMs.  A
    new method for objects of class "glm" returns the square root of
    the estimate of the dispersion parameter using the same
    calculation as summary.glm().
  * bs() and ns() in the (typical) case of automatic knot
    construction, when some of the supposedly inner knots coincide
    with boundary knots, now moves them inside (with a warning),
    building on PR#18442 by Ben Bolker.
  * R CMD on Windows now skips the site profile with --no-site-file
    and --vanilla even when R_PROFILE is set (PR#18512, from Kevin
    Ushey).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1686916800">- CHANGES IN R 4.3.1:
  C-LEVEL FACILITIES:
  * The C-level API version of R's integrate(), Rdqags() in Applic.h,
    now returns the correct number of integrand evaluations neval,
    fixing PR#18515 reported and diagnosed by Stephen Wade.
  * The C prototypes for LAPACK calls dspgv and dtptrs in
    R_exts/Lapack.h had one too many and one too few character length
    arguments - but this has not caused any known issues. To get the
    corrected prototypes, include
    [#]include &lt;Rconfig.h&gt; // for PR18534fixed
    [#]ifdef PR18534fixed
    [#] define usePR18534fix 1
    [#]endif
    [#]include &lt;R_exts/Lapack.h&gt;
    in your C/C++ code (PR#18534).
  INSTALLATION:
  * Many of the checks of esoteric Internet operations and those
    using unreliable external sites have been moved to a new target
    that is not run by default and primarily intended for the core
    developers.  To run them use
    cd tests; make test-Internet-dev
  BUG FIXES:
  * .S3methods(), typically called from methods(), again marks
    methods from package base as visible.
    Also, the visibility of non-base methods is again determined by
    the method's presence in search().
  * tools::Rdiff() is now more robust against invalid strings, fixing
    installation tests on Windows without Rtools installed
    (PR#18530).
  * Fix (new) bug in hcl.colors(2, *), by Achim Zeileis (PR#18523).
  * head(., &lt;illegal&gt;) and tail(..) now produce more useful "Error in
    ...." error messages, fixing PR#18362.
  * Package code syntax on Windows is checked in UTF-8 when UTF-8 is
    the native encoding.
  * na.contiguous(x) now also returns the first run, when it is at
    the beginning and there is a later one of the same length;
    reported to R-devel, including a fix, by Georgi Boshnakov.
    Further, by default, it modifies only an existing attr(*,"tsp")
    but otherwise no longer sets one.
  * chol(&lt;not pos.def&gt;, pivot = &lt;T|F&gt;) now gives a correct error or
    warning message (depending on pivot), thanks to Mikael Jagan's
    (PR#18541).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1699012800">- CHANGES IN R 4.3.2:
  NEW FEATURES:
  * The default initialization of the "repos" option from the
    repositories file at startup can be skipped by setting
    environment variable R_REPOSITORIES to NULL such that
    getOption("repos") is empty if not set elsewhere.
  * qr.X() is now an implicit S4 generic in methods.
  * iconv(to = "ASCII//TRANSLIT") is emulated using substitution on
    platforms which do not support it (notably Alpine Linux).  This
    should give a human-readable conversion in ASCII on all platforms
    (rather than NA_character_).
  * trans3d() gains options continuous and verbose addressing the
    problem of possible "wrap around" when projecting too long
    curves, as reported by Achim Zeileis in PR#18537.
  * tools::showNonASCII() has been rewritten to work better on macOS
    14 (which has a changed implementation of iconv()).
  * tiff(type = "quartz") (the default on macOS) now warns if
    compression is specified: it continues to be ignored.
  INSTALLATION on a UNIX-ALIKE:
  * There is some support for building with Intel's LLVM-based
    compilers on x86_64 Linux, such as (C) icx, (C++) ipcx and
    (Fortran) ifx from oneAPI 2023.x.y.
  * There is support for using LLVM's flang-new as the Fortran
    compiler from LLVM 16.0.x (preferably 17.0.0 or later).
  UTILITIES:
  * R CMD check reports the use of the Fortran 90 random number
    generator RANDOM_NUMBER() and the subroutines to initialize it.
    'Writing R Extensions' has example code to use R's RNGs from
    Fortran.
  BUG FIXES:
  * substr(x, n, L) &lt;- cc now works (more) correctly for multibyte
    UTF-8 strings x when L &gt; nchar(x), thanks to a report and patch
    by 'Architect 95'.
  * contrib.url(character()) now returns 0-length character() as
    documented, which also avoids spurious warnings from
    available.packages() et al. in the edge case of an empty vector
    of repository URLs.
  * readChar(., 4e8) no longer fails, thanks to Kodi Arfer's report
    (PR#18557).
  * lapply(&lt;list&gt;, as.data.frame) no longer warns falsely for some
    base vector components.
  * Communication between parent and child processes in the multicore
    part of parallel could fail on platforms that do not support an
    arbitrarily large payload in system functions read()/write() on
    pipes (seen on macOS where a restriction to INT_MAX bytes is
    documented, without doing a partial read unlike Linux). The
    payload is now split into 1Gb chunks to avoid that problem.
    (PR#18571)
  * qqplot(x,y, conf.level=.) gives better confidence bounds when
    length(x) != length(y), thanks to Alexander Ploner's report and
    patch proposal (PR#18557).
  * norm(&lt;0-length&gt;, "2") now gives zero instead of an error, as all
    the other norm types, thanks to Mikael Jagan's PR#18542.
  * Build-stage Rd macros \packageAuthor and \packageMaintainer now
    process Authors@R, fixing NA results when the package DESCRIPTION
    omits Author and Maintainer fields.
  * Formatting and printing complex numbers could give things like
    0.1683-0i because of rounding error: -0i is now replaced by +0i.
  * postscript() refused to accept a title comment containing the
    letter "W" (PR#18599).
  * isoreg(c(1,Inf)) signals an error instead of segfaulting, fixing
    PR#18603.
  * tiff(type = "Xlib") was only outputting the last page of
    multi-page plots.
  * tools::latexToUtf8() again knows about \~{n} and other letters
    with tilde, fixing a regression in R 4.3.0, and about \^{i} as an
    alternative to \^{\i} (similarly with other accents).
    Furthermore, LaTeX codes for accented I letters are now correctly
    converted, also fixing related mistakes in
    tools::encoded_text_to_latex().
  * tar(*, tar = "internal") no longer creates out-of-spec tar files
    in the very rare case of user or group names longer than 32
    bytes, fixing PR#17871 with thanks to Ivan Krylov.
  * When using the "internal" timezone datetime code, adding a
    fraction of a second no longer adds one second, fixing PR#16856
    from a patch by Ivan Krylov.
  * tools::checkRd() no longer produces spurious notes about
    "unnecessary braces" from multi-line Rd results of \Sexpr macros.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1709208000">- CHANGES IN R 4.3.3:
  NEW FEATURES:
  * iconv() now fixes up variant encoding names such as "utf8"
    case-insensitively.
  DEPRECATED AND DEFUNCT:
  * The legacy encoding = "MacRoman" is deprecated in pdf() and
    postscript(): support was incomplete in earlier versions of R.
  BUG FIXES:
  * Arguments are now properly forwarded to methods on S4 generics
    with ... in the middle of their formal arguments. This was broken
    for the case when a method introduced an argument but did not
    include ... in its own formals. Thanks to Herv'e Pag`es for the
    report PR#18538.
  * Some invalid file arguments to pictex(), postscript() and xfig()
    opened a file called NA rather than throw an error.  These
    included postscript(NULL) (which some people expected to work
    like pdf(NULL)).
  * Passing filename = NA to svg(), cairo_pdf(), cairo_ps() or the
    Cairo-based bitmap devices opened a file called NA: it now throws
    an error.
  * quartz(file = NA) opened a file called NA, including when used as
    a Quartz-based bitmap device.  It now gives an error.
  * rank(&lt;long vector&gt;) now works, fixing PR#18617, thanks to Ilia
    Kats.
  * seq.int() did not adequately check its length.out argument.
  * match(&lt;POSIXct&gt;, .) is correct again for differing time zones,
    ditto for "POSIXlt", fixing PR#18618 reported by Bastian Klein.
  * drop.terms(*, dropx = &lt;0-length&gt;) now works, fixing PR#18563 as
    proposed by Mikael Jagan.
  * drop.terms(*) keeps + offset(.) terms when it should, PR#18565,
    and drop.terms() no longer makes up a response, PR#18566, fixing
    both bugs thanks to Mikael Jagan.
  * getS3method("t", "test") no longer finds the t.test() function,
    fixing PR#18627.
  * pdf() and postscript() support for the documented Adobe encodings
    "Greek" and "Cyrilllic" was missing (although the corresponding
    Windows' codepages could be used).
  * Computations of glyph metric information for pdf() and
    postscript() did not take into account that transliteration could
    replace one character by two or more (only seen on macOS 14) and
    typically warned that the information was not known.
  * rank(x) no longer overflows during integer addition, when
    computing rank average for largish but not-yet long vector x,
    fixing PR#18630, thanks to Ilia Kats.
  * list.files() on Windows now returns also files with names longer
    that 260 bytes (the Windows limit is 260 characters).
    Previously, some file names particularly with 'East Asian'
    characters were omitted.
  * cov2cor(&lt;0 x 0&gt;) now works, fixing PR#18423 thanks to Mikael
    Jagan and Elin Waring.
  * cov2cor(&lt;negative diagonal&gt;) and similar now give one warning
    instead of two, with better wording, fixing PR#18424 thanks to
    Mikael Jagan.
  * tools:: startDynamicHelp() now ensures port is in proper range,
    fixing PR#18645.
  * pbeta(x, a,b) is correct now for x=0 or 1 in the boundary cases
    where a or b or both are 0, fixing PR#18672 thanks to Michael
    Fay.
  * pmatch(x, table) for large table, also called for data frame row
    selection, dfrm[nm, ], is now interruptible, fixing PR#18656.
  * predict(&lt;rank-deficient lm&gt;, newdata=*) fix computing of nbasis,
    see Russ Lenth's comment 29 in PR#16158.
  * Added a work-around for a bug in macOS 14.3.1 and higher which
    prevents R plots in the Quartz Cocoa device from updating on
    screen.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1713960000">- CHANGES IN R 4.4.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Startup banners, R --version, sessionInfo() and R CMD check no
    longer report (64-bit) as part of the platform as this is almost
    universal - the increasingly rare 32-bit platforms will still
    report (32-bit).
    On Windows, ditto for window titles.
  * is.atomic(NULL) now returns FALSE, as NULL is not an atomic
    vector.  Strict back-compatibility would replace is.atomic(foo)
    by (is.null(foo) || is.atomic(foo)) but should happen only
    sparingly.
  NEW FEATURES:
  * The confint() methods for "glm" and "nls" objects have been
    copied to the stats package.  Previously, they were stubs which
    called versions in package MASS. The MASS namespace is no longer
    loaded if you invoke (say) confint(glmfit).  Further, the "glm"
    method for profile() and the plot() and pairs() methods for class
    "profile" have been copied from MASS to stats.  (profile.nls()
    and plot.profile.nls() were already in stats.)
  * The confint() and profile methods for "glm" objects have gained a
    possibility to do profiling based on the Rao Score statistic in
    addition to the default Likelihood Ratio. This is controlled by a
    new test = argument.
  * The pairs() method for "profile" objects has been extended with a
    which = argument to allow plotting only a subset of the
    parameters.
  * The "glm" method for anova() computes test statistics and
    p-values by default, using a chi-squared test or an F test
    depending on whether the dispersion is fixed or free.  Test
    statistics can be suppressed by giving argument test a false
    logical value.
  * In setRepositories() the repositories can be set using their
    names via name = instead of index ind =.
  * methods() and .S3methods() gain a all.names option for the (rare)
    case where functions starting with a . should be included.
  * Serializations can now be interrupted (e.g., by Ctrl-C on a
    Unix-alike) if they take too long, e.g., from save.image(),
    thanks to suggestions by Ivan Krylov and others on R-devel.
  * New startup option --max-connections to set the maximum number of
    simultaneous connections for the session.  Defaults to 128 as
    before: allowed values up to 4096 (but resource limits may in
    practice restrict to smaller values).
  * R on Windows (since Windows 10 2004) now uses the new Segment
    Heap allocator. This may improve performance of some
    memory-intensive applications.
  * When R packages are built, typically by R CMD build &lt;pkg&gt;, the
    new --user=&lt;build_user&gt; option overrides the (internally
    determined) user name, currently Sys.info()["user"] or LOGNAME.
    This is a (modified) fulfillment of Will Landau's suggestion in
    PR#17530.
  * tools::testInstalledBasic() gets new optional arguments outDir
    and testSrcdir, e.g., allowing to use it in a &lt;builddir&gt; !=
    &lt;srcdir&gt; setup, and in standard "binary" Windows installation
  * if* a source tests/ folder is present.
  * range(&lt;DT_with_Inf&gt;, finite = TRUE) now work for objects of class
    "Date", "POSIXct", and "POSIXlt" with infinite entries,
    analogously to range.default(), as proposed by Davis Vaughan on
    R-devel.  Other range()-methods can make use of new function
    .rangeNum().
  * New .internalGenerics object complementing .S3PrimitiveGenerics,
    for documentation and low-level book-keeping.
  * grid() now invisibly returns the x- and y- coordinates at which
    the grid-lines were drawn.
  * norm(., type) now also works for complex matrices.
  * kappa(., exact = TRUE, norm = *) now works for all norms and also
    for complex matrices.  In symmetric / triangular cases, the new
    argument uplo = "U" | "L" allows the upper or lower triangular
    part to be specified.
  * memDecompress(type = "unknown") recognizes compression in the
    default 'zlib' format as used by memCompress(type = "gzip").
  * memCompress() and memDecompress() will use the libdeflate library
    (&lt;https://github.com/ebiggers/libdeflate&gt;) if installed.  This
    uses the same type of compression for type = "gzip" but is 1.5-2x
    faster than the system libz library on some common platforms: the
    speed-up may depend on the library version.
  * diff() for objects of class "Date", "POSIXct", and "POSIXlt"
    accepts a units argument passed via ....
  * Dynamic help now does a much better job of rendering package
    DESCRIPTION metadata.
  * Rprof() gains an event argument and support for elapsed (real)
    time profiling on Unix (PR#18076).
  * filled.contour() gains a key.border argument.
  * tools::update_pkg_po() gets arguments pot_make and mo_make for
    _not_ re-making the corresponding files, and additionally a
    verbose argument.
  * Hexadecimal string colour specifications are now accepted in
    short form, so, for example, we can use "#123", which is
    equivalent to "#112233".
    Thanks to MikeFC for the original idea and Ella Kaye, Malcolm
    Barrett, George Stagg, and Hanne Oberman for the patch.
  * Plain-text help shows \var markup by angle brackets.
  * The new experimental primitive function declare() is intended to
    eventually allow information about R code to be communicated to
    the interpreter, compiler, and code analysis tools. The syntax
    for declarations is still being developed.
  * Functions psmirnov(), qsmirnov() and rsmirnov() in package stats
    have had argument two.sided renamed to alternative, to take into
    account that the permutation distributions of the one-sided
    statistics can be different in the case of ties.  Consequence of
    PR#18582.
  * sort() is now an implicit S4 generic in methods.
  * Formatting and printing, format(z), print(z), of complex vectors
    z no longer zap relatively small real or imaginary parts to zero,
    fixing PR#16752.  This is an API change, as it was documented
    previously to round real and imaginary parts together on purpose,
    producing nicer looking output.  As mentioned, e.g. in the PR,
    this change is compatible with many other "R-like" programming
    environments.
    We have simplified the internal code and now basically format the
    real and imaginary parts independently of each other.
  * New experimental functions Tailcall() and Exec() to support
    writing stack-space-efficient recursive functions.
  * Where characters are attempted to be plotted by pdf(),
    postscript() and xfig() which are not in the selected 8-bit
    character set (most often Latin-1) and the R session is using a
    UTF-8 locale, the warning messages will show the UTF-8 character
    rather than its bytes and one dot will be substituted per
    character rather than per byte.  (Platforms whose iconv() does
    transliteration silently plot the transliteration.)
    In a UTF-8 locale some transliterations are now done with a
    warning (e.g., dashes and Unicode minus to hyphen, ligatures are
    expanded, permille (‰) is replaced by o/oo), although the OS may
    have got there first.  These are warnings as they will continue
    to be replaced by dots in earlier versions of R.
  * The matrix multiplication functions crossprod() and tcrossprod()
    are now also primitive and S3 generic, as %*% had become in R
    4.3.0.
  * source() and example() have a new optional argument catch.aborts
    which allows continued evaluation of the R code after an error.
  * The non-Quartz tiff() devices allow additional types of
    compression if supported by the platform's libtiff library.
  * The list of base and recommended package names is now provided by
    tools::standard_package_names().
  * cairo_pdf() and cairo_ps() default to onefile = TRUE to closer
    match pdf() and postscript().
  * New option catch.script.errors provides a documented way to catch
    errors and then continue in non-interactive use.
  * L %||% R newly in base is an expressive idiom for the phrases
    if(!is.null(L)) L else R or if(is.null(L)) R else L.
  * The return value from warnings() now always inherits from
    "warnings" as documented, now also in the case of no warnings
    where it previously returned NULL.
  * as.complex("1i") now returns 0 + 1i instead of NA with a warning.
  * z &lt;- c(NA, 1i) now keeps the imaginary part Im(z[1]) == 0, no
    longer coercing to NA_complex_.  Similarly, cumsum(z) correctly
    sums real and imaginary parts separately, i.e., without
    "crosstalk" in case of NAs.
  * On Alpine Linux iconv() now maps "latin2", "latin-2", "latin9"
    and "latin-9" to encoding names the OS knows about
    (case-insensitively).
  * iconv(sub = "Unicode") now always zero-pads to four (hex) digits,
    rather than to 4 or 8.  (This seems to have become the convention
    once Unicode restricted the number of Unicode points to 2^21 - 1
    and so will never need more than 6 digits.)
  * NCOL(NULL) now returns 0 instead of 1, for consistency with
    cbind().
  * The information for the Euro glyph missing from the Adobe .afm
    files for the Courier, Helvetica and Times families has been
    copied from their URW equivalents - this will improve vertical
    centring in the pdf() and postscript() devices.
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.12.0.  The changes are almost entirely cosmetic.
  * The included LAPACK sources have been updated to version 3.12.0
    and some further double-complex routines added.
  * There are new font families for the 2014--5 URW 2.0 fonts (see
    ?pdf) which are included in recent versions of Ghostscript.
    These have font widths for most Greek glyphs and a few others
    which were missing from the original versions (whose font
    families remain available for reproducibility, although
    Ghostscript-based viewers will render using the 2.0 versions).
  * Improve the large-n efficiency of as.matrix(&lt;dist&gt;), thanks an R
    contributors effort, notably by Tim Taylor and Heather Turner,
    see PR#18660.
  * The default and numeric methods of all.equal() get a check.class
    option.
  * zapsmall() gets new optional arguments, function mFUN and min.d,
    for extra flexibility; fulfills a wish in PR#18199.  Also, it is
    now an implicit S4 generic in package methods.
  * The Rd filter for aspell() gains an ignore argument.
  * New generic function sort_by(), primarily useful for the
    data.frame method which can be used to sort rows of a data frame
    by one or more columns.
  * The icence headers for the RPC code in src/extra/xdr have been
    updated to use the GPL-compatible licence published by Oracle
    America in 2010.
  * New function pkg2HTML() in tools to create single-page HTML
    reference manuals for R packages.
  * The byte code evaluator now uses less C stack space for recursive
    calls to byte-compiled functions. It also makes more of an effort
    to avoid allocations for scalar return values.
  * New completion option backtick (disabled by default) allows
    non-syntactic completions to be wrapped in backquotes. This is
    currently only useful for Jupyter notebooks via the IRkernel
    package, and may cause problems for other backends.
  INSTALLATION:
  * The parser has been updated to work with bison 3.8.2, which is
    now used for the pre-generated parsers in gram.c, file.c, and
    gramRd.c. A few parser error messages have changed, which may
    affect code that relies on exact messages.
  INSTALLATION on a UNIX-ALIKE:
  * System valgrind headers are now required to use configure option
  - -with-valgrind-instrumentation with value 1 or 2.
  * configure will warn if it encounters a 32-bit build, as that is
    nowadays almost untested.
  * Environment variable R_SYSTEM_ABI is no longer used and so no
    longer recorded in etc/Renviron (it was not on Windows and was
    only ever used when preparing package tools).
  * If the libdeflate library and headers are available, libdeflate
    rather than libz is used to (de)compress R objects in lazy-load
    databases.  Typically tasks spend up to 5% of their time on such
    operations, although creating lazy-data databases is one of the
    exceptions.
    This can be suppressed if the library is available by the
    configure option --without-libdeflate-compression.
  * configure option --enable-lto=check has not worked reliably since
    2019 and has been removed.
  * The minimum autoconf requirement for a maintainer build has been
    increased to autoconf 2.71.
    It is intended to increase this to 2.72 for R 4.5.0: the
    distributed configure file was generated using 2.72.
  * The minimum version requirement for an external LAPACK has been
    reduced to 3.9.0.
  * No default C++ compiler is set if no C++17 compiler is detected:
    there is no longer an automatic fallback to C++14 or C++11.
    Compilers from the last five years should have sufficient
    support: for others macros CXX and CXXSTD can be set in file
    config.site to provide a fallback if needed.
    The Objective-C++ compiler now by default uses the standard
    selected by R for C++ (currently C++17) rather than the default
    standard for the C++ compiler (which on macOS is still C++98).
  INSTALLATION on macOS:
  * A new configure option --with-newAccelerate makes use of Apple's
    'new' BLAS / LAPACK interfaces in their Accelerate framework.
    Those interfaces are only available in macOS 13.3 or later, and
    building requires SDK 13.3 or later (from the Command Line Tools
    or Xcode 14.3 or later).
    By default the option uses new Accelerate for BLAS calls: to also
    use it for LAPACK use option --with-newAccelerate=lapack.  The
    later interfaces provide LAPACK 3.9.1 rather than 3.2.1: 3.9.1 is
    from 2021-04 and does not include the improved algorithms
    introduced in LAPACK 3.10.0 (including for BLAS calls).
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools44, an update of the Rtools43 toolchain.  It is
    based on GCC 13 and newer versions of MinGW-W64, binutils and
    libraries (targeting 64-bit Intel CPUs).  R-devel can no longer
    be built using Rtools43 without changes.
  * Rtools44 has experimental support for 64-bit ARM (aarch64) CPUs
    _via_ the LLVM 17 toolchain using lld, clang/flang-new and
    libc++.
  UTILITIES:
  * R CMD check notes when S4-style exports are used without
    declaring a strong dependence on package methods.
  * tools::checkRd() (used by R CMD check) detects more problems with
    \Sexpr-based dynamic content, including bad nesting of \Sexprs
    and invalid arguments.
  * tools::checkRd() now reports Rd titles and section names ending
    in a period; this is ignored by R CMD check unless environment
    variable _R_CHECK_RD_CHECKRD_MINLEVEL_ is set to -5 or smaller.
  * R CMD check now notes Rd files without an \alias, as long
    documented in 'Writing R Extensions' §1.3.1.  The check for a
    missing \description has been moved from tools::checkRd() to
    tools::checkRdContents().
  * R CMD check now visits inst/NEWS.Rd and OS-specific man
    subdirectories when checking Rd files.
  * tools::checkDocFiles() and tools::checkRdContents() now also
    check internal Rd files by default, but "specially" (ignoring
    missing documentation of arguments).
  * R CMD Rdiff gets option --useEx.
  * R CMD check now warns on non-portable uses of Fortran KIND such
    as INTEGER(KIND=4) and REAL(KIND=8).
    To see the failing lines set environment variable
    _R_CHECK_FORTRAN_KIND_DETAILS_ to a true value.
  * When checking Rd files, R CMD check now notes some of the "lost
    braces" that tools::checkRd() finds.  Typical problems are Rd
    macros missing the initial backslash (e.g., code{...}), in-text
    set notation (e.g., {1, 2}, where the braces need escaping), and
    \itemize lists with \describe-style entries of the form
    \item{label}{description}.
  * R CMD INSTALL (and hence check) will compile C++ code with
  - DR_NO_REMAP if environment variable _R_CXX_USE_NO_REMAP_ is set
    to a true value.  It is planned that this will in future become
    the default for compiling C++.
  * The new built-in Rd macro \dontdiff{} can be used to mark example
    code whose output should be ignored when comparing check output
    to reference output (tests/Examples/&lt;pkg&gt;-Ex.Rout.save).  The
    \dontdiff tag, like \donttest, is _not_ shown on the rendered
    help page, so provides a clean alternative to ##
    IGNORE_RDIFF_(BEGIN|END) comments.
  * R CMD build when there is no NAMESPACE, now uses the recommended
    exportPattern("^[^.]"), instead of exporting everything.
  * R CMD check now warns about non-ASCII characters in the NAMESPACE
    file (in addition to R files). Such packages are not portable and
    may fail to install on some platforms.
  C-LEVEL FACILITIES:
  * Headers R_ext/Applic.h and R-ext/Linpack.h used to include
    R_ext/BLAS.h although this was undocumented and unneeded by their
    documented entry points.  They no longer do so.
  * New function R_missing(), factored out from do_missing(), used to
    fix PR#18579.
  * SEXP type S4SXP has been renamed to OBJSXP to support
    experimenting with alternative object systems.  The S4SXP value
    can still be used in C code but is now deprecated.  Based on
    contributions from the R Consortium's Object-Oriented Programming
    Working Group.
  * New function pow1p(x,y) for accurate (1+x)^y.
  * mkCharLenCE was incorrectly documented to take a size_t length
    but was implemented with int (and character strings in R are
    limited to 2^31 - 1 bytes).
  DEPRECATED AND DEFUNCT:
  * data() no longer handles zipped data from long-defunct (since R
    2.13.0) --use-zip-data installations.
  * The legacy graphics devices pictex() and xfig() are now
    deprecated.  They do not support recent graphics enhancements and
    their font handling is rudimentary. The intention is to retain
    them for historical interest as long as they remain somewhat
    functional.
  * Support for encoding = "MacRoman" has been removed from the pdf()
    and postscript() devices - this was a legacy encoding supporting
    classic macOS up to 2001 and no longer has universal libiconv
    support.
  * is.R() is deprecated as no other S dialect is known to be in use
    (and this could only identify historical dialects, not future
    ones).
    Further information on calls can be obtained by setting the
    environment variable _R_DEPRECATED_IS_R_ to error which turns the
    deprecation warning into an error and so by default gives a
    traceback.  (This is done by R CMD check --as-cran.)
  * UseMethod() no longer forwards local variables assigned in the
    generic function into method call environments before evaluating
    the method body. This makes method calls behave more like
    standard function calls and makes method code easier to analyze
    correctly.
  * The twelve as.data.frame.&lt;class&gt;() methods which were deprecated
    only via _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ and in R CMD
    check --as-cran are formally deprecated now in favour of calling
    as.data.frame() or as.data.frame.vector().  The deprecation
    "check" now works also when as.data.frame() is S4 generic thanks
    to Ivan Krylov.
  * The default method for the directional comparison operators &lt;, &gt;,
    &lt;=, and &gt;= now signals an error when one of the operands is a
    language object, i.e. a symbol or a call.
  * For terms.formula(), deprecate abb and neg.out arguments
    _formally_ in addition to just documenting it.
  BUG FIXES:
  * The methods package is more robust to not being attached to the
    search path.  More work needs to be done.
  * pairwise.t.test() misbehaved when subgroups had 0 DF for
    variance, even with pool.sd = TRUE.  (PR#18594 by Jack Berry).
  * Probability distribution functions [dpq]&lt;distrib&gt;(x, *), but also
    bessel[IKJY](x, .) now consistently preserve attributes(x) when
    length(x) == 0, e.g., for a 2 x 0 matrix, thanks to Karolis
    Koncevičius' report PR#18509.
  * Group "Summary" computations such as sum(1:3, 4, na.rm = 5, NA,
    7, na.rm = LL) now give an error instead of either 17 or NN for
    LL true or false, as proposed by Ivan Krylov on the R-devel
    mailing list.  (This also means it is now an error to specify
    na.rm more than once.)
  * as.complex(x) now returns complex(real = x, imaginary = 0) for
    _all_ numerical and logical x, notably also for NA or
    NA_integer_.
  * Directories are now omitted by file.copy(, recursive = FALSE) and
    in file.append() (PR#17337).
  * gsub() and sub() are now more robust to integer overflow when
    reporting errors caused by too large input strings (PR#18346).
  * Top-level handlers are now more robust to attempts to remove a
    handler whilst handlers are running (PR#18508).
  * The handling of Alt+F4 in dialogs created on Windows using
    GraphApp has been fixed (PR#13870).
  * density() more consistently computes grid values for the
    FFT-based convolution, following Robert Schlicht's analysis and
    proposal in PR#18337, correcting density values typically by a
    factor of about 0.999.  Argument old.coords = TRUE provides back
    compatibility.
  * palette.colors() gains a name argument that defaults to FALSE
    controlling whether the vector of colours that is returned has
    names (where possible).  PR#18529.
  * tools::xgettext() no longer extracts the (non-translatable) class
    names from warningCondition and errorCondition calls.
  * S3method(&lt;gen&gt;, &lt;class&gt;, &lt;func&gt;) in the NAMESPACE file now works
    (again) when &lt;func&gt; is visible from the namespace, e.g.,
    imported, or in base.
  * getParseData(f) now also works for a function defined in the
    first of several &lt;pkg&gt;/R/*.R source files, thanks to Kirill
    Müller's report and Duncan Murdoch's patch in PR#16756.
  * Rd \Sexpr macros with nested #ifdef conditionals were not
    processed.
  * A non-blocking connection with non-default encoding (such as a
    socket) now correctly returns from readLines() after new data has
    arrived also when its EOF had been reached previously.  Thanks to
    Peter Meilstrup's report on R-devel and Ivan Krylov's report and
    patch proposal in PR#18555.
  * tools::checkRdContents() failed to detect empty argument
    descriptions when they spanned multiple lines, including those
    generated by prompt().  These cases are now noted by R CMD check.
  * Plain-text help no longer outputs spurious colons in the
    arguments list (for multi-line \item labels in the Rd source).
  * kappa() and rcond() work correctly in more cases; kappa(., norm =
    "2") now warns that it computes the 1-norm with (default) exact =
    FALSE; prompted by Mikael Jagan's quite comprehensive PR#18543.
  * Rd skeletons generated by prompt() or promptData() now use a
    dummy title (so R CMD build works).  tools::checkRdContents() has
    been updated to detect such template leftovers, including from
    promptPackage().
  * When S4 method dispatch fails because no method was found, the
    error message now includes the signature argument names; thanks
    to Michael Chirico's proposal on the R-devel list.
  * withAutoprint({ .. }) now preserves srcrefs previously lost,
    thanks to Andrew Simmons' report plus fix in PR#18572.
  * transform.data.frame() no longer adjusts names; in particular,
    untransformed variables are kept as-is, including those with
    syntactically invalid names (PR#17890).
  * The keep.source option for Rd \Sexpr blocks is no longer ignored.
  * The formula methods for t.test() and wilcox.test() now catch when
    paired is passed, addressing PR#14359; use Pair(x1, x2) ~ 1 for a
    paired test.
  * The level reported in the browser prompt was often too large. It
    now shows the number of browser contexts on the stack.
  * For cbind() and rbind(), the optional deparse.level argument is
    now properly passed to methods, thanks to Mikael Jagan's PR#18579
    and comments there.
  * Some error and warning messages for large ('long vector')
    matrix(v, nr, nc) and dim(m) &lt;- d are now correct about sizes,
    using long long formatting, fixing PR#18612 (and more) reported
    by Mikael Jagan.
  * readChar(useBytes = TRUE) now terminates strings even when the
    underlying connection uses extra spaces in the input buffer.
    This fixes problems with extra garbage seen with gzip
    connections, PR#18605.
  * Named capture in PCRE regular expressions now works also with
    more than 127 named groups (PR#18588).
  * Datetime functions are now robust against long jumps when dealing
    with internal time zone changes.  This avoids confusing warnings
    about an invalid time zone, previously triggered by turning
    warnings into errors or handling them via tryCatch (PR#17966,
    PR#17780).
  * Datetime functions now restore even an empty TZ environment
    variable after internal time zone changes (PR#17724).  This makes
    results of datetime functions with this (typically unintentional)
    setting more predictable.
  * drop.terms(*) now drops response as by default, keep.response =
    FALSE, fixing PR#18564 thanks to Mikael Jagan.
  * dummy.coef(.) now also works for lm()-models with character
    categorical predictor variables rather than factor ones, fixing
    PR#18635 reported by Jinsong Zhao.
  * formals(f) &lt;- formals(f) now also works for a function w/o
    arguments and atomic _constant_ body(f).
  * Correct as.function(&lt;invalid list&gt;, .)'s error message.
  * removeSource() is yet more thorough in finding and removing
    "srcref" and the other source references from parsed R language
    chunks, fixing PR#18638 thanks to Andrew Simmons.
  * dgeom() is more accurate now, notably when its result is very
    small, fixing PR#18642 thanks to the proposal of Morten Welinder,
    also improving other instances where C level binom_raw(x, n, ..)
    has x == 0 or x== n.
  * warning() with options(warn = 1) has improved output for
    multi-line messages.
  * axis.Date() and axis.POSIXct() now respect the par("lab") setting
    for the number of pretty() intervals.
  * Comparisons for language objects (which are based on deparsing)
    are now more careful about using accurate deparsed results
    (PR#18676).
  * Plain-text help (Rd2txt) now correctly preserves blank lines
    following single-line \dontrun code.
  * &lt;POSIXlt&gt;[*] no longer sets wrong "balanced" attribute, fixing
    PR#18681 thanks to Mikael Jagan.
  * str(&lt;classed-call&gt;) now deparses the call as expected, fixing
    PR#18684, reported by Dave Slager.
  * In Rd examples, code following the closing brace of a \dontrun,
    \dontshow or \donttest tag on the same line is no longer skipped
    when R CMD check runs the examples.
  * as.data.frame(matrix(*, ncol=0)) now gets valid names() and
    colnames(); reported by Davis Vaughan on the R-devel list.
  * Internal Mathlib function stirlerr(n) is now almost fully
    (52-bit) accurate for all n &gt;= ~5.9 and more accurate also in the
    range 1 -- 5.9.  This entails small ("after 12th decimal")
    changes in density functions, e.g., dgamma() in _some_ regions of
    their support.  The fix was partly prompted by Morten Welinder's
    PR#18640.
  * Numbers like 9876543.2 are now considered non-integer by Mathlib
    internal R_nonint(), amending original fix of PR#15734.
  * Rd comment lines no longer cause broken paragraphs in the
    rendered PDF and plain-text help. In code blocks, pure comment
    lines (starting with %) no longer produce an empty line.
  * xtabs(Freq ~ .) now consistently defaults to na.action = na.pass,
    using na.rm = FALSE (added as an argument) when summing over Freq
    (PR#17770).
  * tools::testInstalledPackage() is no longer silent about failures
    from running examples or tests and its return code no longer
    ignores failures from checking vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1718366400">- CHANGES IN R 4.4.1:
  C-LEVEL FACILITIES:
  * Functions R_atof and R_strtod declared in header R_ext/Utils.h
    are now documented in 'Writing R Extensions' and so formally part
    of the API.
  * The non-API entry points Rf_setSVector, Rf_StringFalse,
    Rf_StringTrue and Rf_isBlankString have been added to those
    reported by R CMD check.
  * The new function Rf_allocLang is now available. This provides an
    alternative to the idiom of calling Rf_allocList followed by
    SET_TYPEOF.
  UTILITIES:
  * R CMD check now reports as warnings what gfortran calls 'Fortran
    2018 deleted features', all of which have long been marked as
    'obsolescent' and some of which were deleted in Fortran 2008 or
    earlier.  Fortran compilers are no longer required to support
    these.
  BUG FIXES:
  * as.numeric(), scan(), type.convert() and other places which use
    the internal C function R_strtod now require a _non-empty_ digit
    sequence in a decimal or binary exponent.  This aligns with the
    C/POSIX standard for strtod and with ?NumericConstants.
  * as.data.frame(m, make.names=NA) now works correctly for a matrix
    m with NA's in row names.
  * The error message from &lt;POSIXlt&gt;[["hour"]] and similar now
    mentions *[[, "hour"]], as wished for in PR#17409 and proposed by
    Michael Chirico.
  * qbinom() and potentially qpois(), qnbinom(), no longer sometimes
    fail accurate inversion (of pbinom(), etc), thanks to Christopher
    Chang's report and patch in PR#18711.
  * The internal help server on Windows can again serve requests sent
    in quick succession, fixing a regression in R 4.4.0.
  * debugcall(&lt;S3Generic&gt;()) now also works when a corresponding
    S4-generic version is in the methods cache (PR#18143).
  * Package tools' toTitleCase(ch0) now returns character(0) when ch0
    is of zero length; fixing PR#18724, reported by David Hugh Jones.
  * R CMD check is no longer broken (without a check result and no
    explanation in 00check.log) for a package which declares an
    invalid VignetteBuilder in DESCRIPTION but has no vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1730376000">- CHANGES IN R 4.4.2:
  C-LEVEL FACILITIES:
  * The S-compatibility macros F77_COM and F77_COMDECL defined in
    header R_ext/RS.h are deprecated and will be removed shortly.  We
    could find no record of their use.
  BUG FIXES:
  * Mathlib function lgammacor(x) no longer warns about underflow to
    zero for large x.
  * Text widths and heights were incorrectly reported by the Quartz
    device if the drawing context didn't exist yet (typically when
    drawing off-screen to a window that is yet to appear, see
    PR#18591).
  * The Quartz device could segfault in cases where paths with spaces
    are used in the new glyph drawing API.  Thanks to Tomek
    Gieorgijewski (PR#18758).
  * On macOS in R CRAN builds, it is again possible to read
    little-endian UTF-16 text with a BOM from a connection using
    encoding="UTF-16".  Users building R from source should avoid
    using the system libiconv in macOS 14.1 and later.
  * methods' internal .requirePackage() now re-enables primitive
    method dispatch when needed; thanks to Ivan Krylov for
    demystifying CRAN package check failures on the R-devel mailing
    list.</changelog>
</package>
<package pkgid="7d77aae67a438cc6ee329e0cb7450bdf22dc542cdb372ca46eb8913030d8af38e85d27ab94f8c14c636f21e3f11c3acfc80ee9e9e97d63fe8500e9ddac338618" name="R-grid" arch="i586">
  <version epoch="0" ver="4.4.2" rel="51.0.2.2.sr20241103"/>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1620302400">- To get in sync with d:l:R:autoCRAN the Matrix package's split
  in -devel was reversed.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339200">- improved spec file according to comments of dimstar in
  https://build.opensuse.org/request/show/892685</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339201">- CHANGES IN R 4.1.0:
  FUTURE DIRECTIONS:
  * It is planned that the 4.1.x series will be the last to support
    32-bit Windows, with production of binary packages for that
    series continuing until early 2023.
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Data set esoph in package datasets now provides the correct
    numbers of controls; previously it had the numbers of cases added
    to these.  (Reported by Alexander Fowler in PR#17964.)
  NEW FEATURES:
  * www.omegahat.net is no longer one of the repositories known by
    default to setRepositories().  (Nowadays it only provides source
    packages and is often unavailable.)
  * Function package_dependencies() (in package tools) can now use
    different dependency types for direct and recursive dependencies.
  * The checking of the size of tarball in R CMD check --as-cran
    &lt;pkg&gt; may be tweaked via the new environment variable
    _R_CHECK_CRAN_INCOMING_TARBALL_THRESHOLD_, as suggested in
    PR#17777 by Jan Gorecki.
  * Using c() to combine a factor with other factors now gives a
    factor, an ordered factor when combining ordered factors with
    identical levels.
  * apply() gains a simplify argument to allow disabling of
    simplification of results.
  * The format() method for class "ftable" gets a new option justify.
    (Suggested by Thomas Soeiro.)
  * New ...names() utility.  (Proposed by Neal Fultz in PR#17705.)
  * type.convert() now warns when its as.is argument is not
    specified, as the help file always said it _should_.  In that
    case, the default is changed to TRUE in line with its change in
    read.table() (related to stringsAsFactor) in R 4.0.0.
  * When printing list arrays, classed objects are now shown _via_
    their format() value if this is a short enough character string,
    or by giving the first elements of their class vector and their
    length.
  * capabilities() gets new entry "Rprof" which is TRUE when R has
    been configured with the equivalent of --enable-R-profiling (as
    it is by default).  (Related to Michael Orlitzky's report
    PR#17836.)
  * str(xS4) now also shows extraneous attributes of an S4 object
    xS4.
  * Rudimentary support for vi-style tags in rtags() and R CMD rtags
    has been added.  (Based on a patch from Neal Fultz in PR#17214.)
  * checkRdContents() is now exported from tools; it and also
    checkDocFiles() have a new option chkInternal allowing to check
    Rd files marked with keyword "internal" as well.  The latter can
    be activated for R CMD check via environment variable
    _R_CHECK_RD_INTERNAL_TOO_.
  * New functions numToBits() and numToInts() extend the raw
    conversion utilities to (double precision) numeric.
  * Functions URLencode() and URLdecode() in package utils now work
    on vectors of URIs.  (Based on patch from Bob Rudis submitted
    with PR#17873.)
  * path.expand() can expand ~user on most Unix-alikes even when
    readline is not in use.  It tries harder to expand ~, for example
    should environment variable HOME be unset.
  * For HTML help (both dynamic and static), Rd file links to help
    pages in external packages are now treated as references to
    topics rather than file names, and fall back to a file link only
    if the topic is not found in the target package. The earlier rule
    which prioritized file names over topics can be restored by
    setting the environment variable _R_HELP_LINKS_TO_TOPICS_ to a
    false value.
  * c() now removes NULL arguments before dispatching to methods,
    thus simplifying the implementation of c() methods, _but_ for
    back compatibility keeps NULL when it is the first argument.
    (From a report and patch proposal by Lionel Henry in PR#17900.)
  * Vectorize()'s result function's environment no longer keeps
    unneeded objects.
  * Function ...elt() now propagates visibility consistently with
    ..n.  (Thanks to Lionel Henry's PR#17905.)
  * capture.output() no longer uses non-standard evaluation to
    evaluate its arguments.  This makes evaluation of functions like
    parent.frame() more consistent.  (Thanks to Lionel Henry's
    PR#17907.)
  * packBits(bits, type="double") now works as inverse of
    numToBits().  (Thanks to Bill Dunlap's proposal in PR#17914.)
  * curlGetHeaders() has two new arguments, timeout to specify the
    timeout for that call (overriding getOption("timeout")) and TLS
    to specify the minimum TLS protocol version to be used for
    https:// URIs (_inter alia_ providing a means to check for sites
    using deprecated TLS versions 1.0 and 1.1).
  * For nls(), an optional constant scaleOffset may be added to the
    denominator of the relative offset convergence test for cases
    where the fit of a model is expected to be exact, thanks to a
    proposal by John Nash.  nls(*, trace=TRUE) now also shows the
    convergence criterion.
  * Numeric differentiation _via_ numericDeriv() gets new optional
    arguments eps and central, the latter for taking central divided
    differences.  The latter can be activated for nls() via
    nls.control(nDcentral = TRUE).
  * nls() now passes the trace and control arguments to getInitial(),
    notably for all self-starting models, so these can also be fit in
    zero-noise situations via a scaleOffset.  For this reason, the
    initial function of a selfStart model must now have ... in its
    argument list.
  * bquote(splice = TRUE) can now splice expression vectors with
    attributes: this makes it possible to splice the result of
    parse(keep.source = TRUE).  (Report and patch provided by Lionel
    Henry in PR#17869.)
  * textConnection() gets an optional name argument.
  * get(), exists(), and get0() now signal an error if the first
    argument has length greater than 1.  Previously additional
    elements were silently ignored.  (Suggested by Antoine Fabri on
    R-devel.)
  * R now provides a shorthand notation for creating functions, e.g.
    \(x) x + 1 is parsed as function(x) x + 1.
  * R now provides a simple native forward pipe syntax |&gt;.  The
    simple form of the forward pipe inserts the left-hand side as the
    first argument in the right-hand side call.  The pipe
    implementation as a syntax transformation was motivated by
    suggestions from Jim Hester and Lionel Henry.
  * all.equal(f, g) for functions now by default also compares their
    environment(.)s, notably via new all.equal method for class
    function.  Comparison of nls() fits, e.g., may now need
    all.equal(m1, m2, check.environment = FALSE).
  * .libPaths() gets a new option include.site, allowing to _not_
    include the site library.  (Thanks to Dario Strbenac's suggestion
    and Gabe Becker's PR#18016.)
  * Lithuanian translations are now available.  (Thanks to Rimantas
    Zakauskas.)
  * names() now works for DOTSXP objects.  On the other hand, in
    R-lang, the R language manual, we now warn against relying on the
    structure or even existence of such dot-dot-dot objects.
  * all.equal() no longer gives an error on DOTSXP objects.
  * capabilities("cairo") now applies only to the file-based devices
    as it is now possible (if very unusual) to build R with Cairo
    support for those but not for X11().
  * There is optional support for tracing the progress of
    loadNamespace() - see its help.
  * (Not Windows.)  l10n_info() reports an additional element, the
    name of the encoding as reported by the OS (which may differ from
    the encoding part (if any) of the result from
    Sys.getlocale("LC_CTYPE").
  * New function gregexec() which generalizes regexec() to find _all_
    disjoint matches and well as all substrings corresponding to
    parenthesized subexpressions of the given regular expression.
    (Contributed by Brodie Gaslam.)
  * New function charClass() in package utils to query the
    wide-character classification functions in use (such as
    iswprint).
  * The names of quantile()'s result no longer depend on the global
    getOption("digits"), but quantile() gets a new optional argument
    digits = 7 instead.
  * grep(), sub(), regexp and variants work considerably faster for
    long factors with few levels.  (Thanks to Michael Chirico's
    PR#18063.)
  * Provide grouping of x11() graphics windows within a window
    manager such as Gnome or Unity; thanks to a patch by Ivan Krylov
    posted to R-devel.
  * The split() method for class data.frame now allows the f argument
    to be specified as a formula.
  * sprintf now warns on arguments unused by the format string.
  * New palettes "Rocket" and "Mako" for hcl.colors() (approximating
    palettes of the same name from the 'viridisLite' package).
    Contributed by Achim Zeileis.
  * The base environment and its namespace are now locked (so one can
    no longer add bindings to these or remove from these).
  * Rterm handling of multi-byte characters has been improved,
    allowing use of such characters when supported by the current
    locale.
  * Rterm now accepts ALT+ +xxxxxxxx sequences to enter Unicode
    characters as hex digits.
  * Environment variable LC_ALL on Windows now takes precedence over
    LC_CTYPE and variables for other supported categories, matching
    the POSIX behaviour.
  * duplicated() and anyDuplicated() are now optimized for integer
    and real vectors that are known to be sorted via the ALTREP
    framework. Contributed by Gabriel Becker via PR#17993.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 14
    and so packages that provide graphics devices should be
    reinstalled.
  * Graphics devices should now specify deviceVersion to indicate
    what version of the graphics engine they support.
  * Graphics devices can now specify deviceClip.  If TRUE, the
    graphics engine will never perform any clipping of output itself.
    The clipping that the graphics engine does perform (for both
    canClip = TRUE and canClip = FALSE) has been improved to avoid
    producing unnecessary artifacts in clipped output.
  * The grid package now allows gpar(fill) to be a linearGradient(),
    a radialGradient(), or a pattern().  The viewport(clip) can now
    also be a grob, which defines a clipping path, and there is a new
    viewport(mask) that can also be a grob, which defines a mask.
    These new features are only supported so far on the Cairo-based
    graphics devices and on the pdf() device.
  * (Not Windows.)  A warning is given when a Cairo-based type is
    specified for a png(), jpeg(), tiff() or bmp() device but Cairo
    is unsupported (so type = "Xlib" is tried instead).
  * grSoftVersion() now reports the versions of FreeType and
    FontConfig if they are used directly (not _via_ Pango), as is
    most commonly done on macOS.
  C-LEVEL FACILITIES:
  * The _standalone_ libRmath math library and R's C API now provide
    log1pexp() again as documented, and gain log1mexp().
  INSTALLATION on a UNIX-ALIKE:
  * configure checks for a program pkgconf if program pkg-config is
    not found.  These are now only looked for on the path (like
    almost all other programs) so if needed specify a full path to
    the command in PKG_CONFIG, for example in file config.site.
  * C99 function iswblank is required - it was last seen missing ca
    2003 so the workaround has been removed.
  * There are new configure options --with-internal-iswxxxxx,
  - -with-internal-towlower and --with-internal-wcwidth which allows
    the system functions for wide-character classification,
    case-switching and width (wcwidth and wcswidth) to be replaced by
    internal ones.  The first has long been used on macOS, AIX (and
    Windows) but this enables it to be unselected there and selected
    for other platforms (it is the new default on Solaris).  The
    second is new in this version of R and is selected by default on
    macOS and Solaris.  The third has long been the default and
    remains so as it contains customizations for East Asian
    languages.
    System versions of these functions are often minimally
    implemented (sometimes only for ASCII characters) and may not
    cover the full range of Unicode points: for example Solaris (and
    Windows) only cover the Basic Multilingual Plane.
  * Cairo installations without X11 are more likely to be detected by
    configure, when the file-based Cairo graphics devices will be
    available but not X11(type = "cairo").
  * There is a new configure option --with-static-cairo which is the
    default on macOS.  This should be used when only static cairo
    (and where relevant, Pango) libraries are available.
  * Cairo-based graphics devices on platforms without Pango but with
    FreeType/FontConfig will make use of the latter for font
    selection.
  LINK-TIME OPTIMIZATION on a UNIX-ALIKE:
  * Configuring with flag --enable-lto=R now also uses LTO when
    installing the recommended packages.
  * R CMD INSTALL and R CMD SHLIB have a new flag --use-LTO to use
    LTO when compiling code, for use with R configured with
  - -enable-lto=R.  For R configured with --enable-lto, they have
    the new flag --no-use-LTO.
    Packages can opt in or out of LTO compilation _via_ a UseLTO
    field in the DESCRIPTION file.  (As usual this can be overridden
    by the command-line flags.)
  BUILDING R on Windows:
  * for GCC &gt;= 8, FC_LEN_T is defined in config.h and hence character
    lengths are passed from C to Fortran in _inter alia_ BLAS and
    LAPACK calls.
  * There is a new text file src/gnuwin32/README.compilation, which
    outlines how C/Fortran code compilation is organized and
    documents new features:
  * R can be built with Link-Time Optimization with a suitable
    compiler - doing so with GCC 9.2 showed several
    inconsistencies which have been corrected.
  * There is support for cross-compiling the C and Fortran code
    in R and standard packages on suitable (Linux) platforms.
    This is mainly intended to allow developers to test later
    versions of compilers - for example using GCC 9.2 or 10.x has
    detected issues that GCC 8.3 in Rtools40 does not.
  * There is experimental support for cross-building R packages
    with C, C++ and/or Fortran code.
  * The R installer can now be optionally built to support a single
    architecture (only 64-bit or only 32-bit).
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++14 where
    available (which it is on all currently checked platforms): if
    not (as before) C++11 is used if available otherwise C++ is not
    supported.
    Packages which specify C++11 will still be installed using C++11.
    C++14 compilers may give deprecation warnings, most often for
    std::random_shuffle (deprecated in C++14 and removed in C++17).
    Either specify C++11 (see 'Writing R Extensions') or modernize
    the code and if needed specify C++14.  The latter has been
    supported since R 3.4.0 so the package's DESCRIPTION would need
    to include something like
    Depends: R (&gt;= 3.4)
  PACKAGE INSTALLATION on Windows:
  * R CMD INSTALL and R CMD SHLIB make use of their flag --use-LTO
    when the LTO_OPT make macro is set in file etc/${R_ARCH}/Makeconf
    or in a personal/site Makevars file.  (For details see 'Writing R
    Extensions' SS4.5.)
    This provides a valuable check on code consistency.  It does work
    with GCC 8.3 as in Rtools40, but that does not detect everything
    the CRAN checks with current GCC do.
  PACKAGE INSTALLATION on macOS:
  * The default personal library directory on builds with
  - -enable-aqua (including CRAN builds) now differs by CPU type,
    one of
    ~/Library/R/x86_64/x.y/library
    ~/Library/R/arm64/x.y/library
    This uses the CPU type R (and hence the packages) were built for,
    so when a x86_64 build of R is run under Rosetta emulation on an
    arm64 Mac, the first is used.
  UTILITIES:
  * R CMD check can now scan package functions for bogus return
    statements, which were possibly intended as return() calls (wish
    of PR#17180, patch by Sebastian Meyer). This check can be
    activated via the new environment variable
    _R_CHECK_BOGUS_RETURN_, true for --as-cran.
  * R CMD build omits tarballs and binaries of previous builds from
    the top-level package directory.  (PR#17828, patch by Sebastian
    Meyer.)
  * R CMD check now runs sanity checks on the use of LazyData, for
    example that a data directory is present and that
    LazyDataCompression is not specified without LazyData and has a
    documented value.  For packages with large LazyData databases
    without specifying LazyDataCompression, there is a reference to
    the code given in 'Writing R Extensions' SS1.1.6 to test the
    choice of compression (as in all the CRAN packages tested a
    non-default method was preferred).
  * R CMD build removes LazyData and LazyDataCompression fields from
    the DESCRIPTION file of packages without a data directory.
  ENCODING-RELATED CHANGES:
  * The parser now treats \Unnnnnnnn escapes larger than the upper
    limit for Unicode points (\U10FFFF) as an error as they cannot be
    represented by valid UTF-8.
    Where such escapes are used for outputting non-printable
    (including unassigned) characters, 6 hex digits are used (rather
    than 8 with leading zeros).  For clarity, braces are used, for
    example \U{0effff}.
  * The parser now looks for non-ASCII spaces on Solaris (as
    previously on most other OSes).
  * There are warnings (including from the parser) on the use of
    unpaired surrogate Unicode points such as \uD834.  (These cannot
    be converted to valid UTF-8.)
  * Functions nchar(), tolower(), toupper() and chartr() and those
    using regular expressions have more support for inputs with a
    marked Latin-1 encoding.
  * The character-classification functions used (by default) to
    replace the system iswxxxxx functions on Windows, macOS and AIX
    have been updated to Unicode 13.0.0.
    The character-width tables have been updated to include new
    assignments in Unicode 13.0.0.
  * The code for evaluating default (extended) regular expressions
    now uses the same character-classification functions as the rest
    of R (previously they differed on Windows, macOS and AIX).
  * There is a build-time option to replace the system's
    wide-character wctrans C function by tables shipped with R: use
    configure option --with-internal-towlower or (on Windows)
  - DUSE_RI18N_CASE in CFLAGS when building R.  This may be needed
    to allow tolower() and toupper() to work with Unicode characters
    beyond the Basic Multilingual Plane where not supported by system
    functions (e.g. on Solaris where it is the new default).
  * R is more careful when truncating UTF-8 and other multi-byte
    strings that are too long to be printed, passed to the system or
    libraries or placed into an internal buffer.  Truncation will no
    longer produce incomplete multibyte characters.
  DEPRECATED AND DEFUNCT:
  * Function plclust() from the package stats and
    package.dependencies(), pkgDepends(), getDepList(),
    installFoundDepends(), and vignetteDepends() from package tools
    are defunct.
  * Defunct functions checkNEWS() and readNEWS() from package tools
    and CRAN.packages() from utils have been removed.
  * R CMD config CXXCPP is defunct (it was deprecated in R 3.6.2).
  * parallel::detectCores() drops support for Irix (retired in 2013).
  * The LINPACK argument to chol.default(), chol2inv(),
    solve.default() and svd() has been defunct since R 3.1.0.  It was
    silently ignored up to R 4.0.3 but now gives an error.
  * Subsetting/indexing, such as ddd[*] or ddd$x on a DOTSXP
    (dot-dot-dot) object ddd has been disabled; it worked by accident
    only and was undocumented.
  BUG FIXES:
  * Many more C-level allocations (mainly by malloc and strdup) are
    checked for success with suitable alternative actions.
  * Bug fix for replayPlot(); this was turning off graphics engine
    display list recording if a recorded plot was replayed in the
    same session.  The impact of the bug became visible if resize the
    device after replay OR if attempted another savePlot() after
    replay (empty display list means empty screen on resize or empty
    saved plot).
  * R CMD check etc now warn when a package exports non-existing S4
    classes or methods, also in case of no "methods" presence.
    (Reported by Alex Bertram; reproducible example and patch by
    Sebastian Meyer in PR#16662.)
  * boxplot() now also accepts calls for labels such as ylab, the
    same as plot().  (Reported by Marius Hofert.)
  * The help page for xtabs() now correctly states that addNA is
    setting na.action = na.pass among others.  (Reported as PR#17770
    by Thomas Soeiro.)
  * The R CMD check &lt;pkg&gt; gives a longer and more comprehensible
    message when DESCRIPTION misses dependencies, e.g., in Imports:.
    (Thanks to the contributors of PR#17179.)
  * update.default() now calls the generic update() on the formula to
    work correctly for models with extended formulas.  (As reported
    and suggested by Neal Fultz in PR#17865.)
  * The horizontal position of leaves in a dendrogram is now correct
    also with center = FALSE.  (PR#14938, patch from Sebastian
    Meyer.)
  * all.equal.POSIXt() no longer warns about and subsequently ignores
    inconsistent "tzone" attributes, but describes the difference in
    its return value (PR#17277).  This check can be disabled _via_
    the new argument check.tzone = FALSE as suggested by Sebastian
    Meyer.
  * as.POSIXct() now populates the "tzone" attribute from its tz
    argument when x is a logical vector consisting entirely of NA
    values.
  * x[[2^31]] &lt;- v now works.  (Thanks to the report and patch by
    Suharto Anggono in PR#17330.)
  * In log-scale graphics, axis() ticks and label positions are now
    computed more carefully and symmetrically in their range,
    typically providing _more_ ticks, fulfilling wishes in PR#17936.
    The change really corresponds to an improved axisTicks() (package
    grDevices), potentially influencing grid and lattice, for
    example.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now correct to at
    least five digits where it was catastrophically wrong,
    previously.
  * sum(df) and similar "Summary"- and "Math"-group member functions
    now work for data frames df with logical columns, notably also of
    zero rows.  (Reported to R-devel by Martin "b706".)
  * unsplit() had trouble with tibbles due to unsound use of rep(NA,
    len)-indexing, which should use NA_integer_ (Reported to R-devel
    by Mario Annau.)
  * pnorm(x, log.p = TRUE) underflows to -Inf slightly later.
  * show(&lt;hidden S4 generic&gt;) prints better and without quotes for
    non-hidden S4 generics.
  * read.table() and relatives treated an "NA" column name as missing
    when check.names = FALSE PR#18007.
  * Parsing strings containing UTF-16 surrogate pairs such as
    "\uD834\uDD1E" works better on some (uncommon) platforms.
    sprintf("%X", utf8ToInt("\uD834\uDD1E")) should now give "1D11E"
    on all platforms.
  * identical(x,y) is no longer true for differing DOTSXP objects,
    fixing PR#18032.
  * str() now works correctly for DOTSXP and related exotics, even
    when these are doomed.
    Additionally, it no longer fails for lists with a class and
    "irregular" method definitions such that e.g. lapply(*) will
    necessarily fail, as currently for different igraph objects.
  * Too long lines in environment files (e.g. Renviron) no longer
    crash R. This limit has been increased to 100,000 bytes.
    (PR#18001.)
  * There is a further workaround for FreeType giving incorrect
    italic font faces with cairo-based graphics devices on macOS.
  * add_datalist(*, force = TRUE) (from package tools) now actually
    updates an existing data/datalist file for new content.  (Thanks
    to a report and patch by Sebastian Meyer in PR#18048.)
  * cut.Date() and cut.POSIXt() could produce an empty last interval
    for breaks = "months" or breaks = "years".  (Reported as PR#18053
    by Christopher Carbone.)
  * Detection of the encoding of 'regular' macOS locales such as
    en_US (which is UTF-8) had been broken by a macOS change:
    fortunately these are now rarely used with en_US.UTF-8 being
    preferred.
  * sub() and gsub(pattern, repl, x, *) now keep attributes of x such
    as names() also when pattern is NA (PR#18079).
  * Time differences ("difftime" objects) get a replacement and a
    rep() method to keep "units" consistent.  (Thanks to a report and
    patch by Nicolas Bennett in PR#18066.)
  * The \RdOpts macro, setting defaults for \Sexpr options in an Rd
    file, had been ineffective since R 2.12.0: it now works again.
    (Thanks to a report and patch by Sebastian Meyer in PR#18073.)
  * mclapply and pvec no longer accidentally terminate parallel
    processes started before by mcparallel or related calls in
    package parallel (PR#18078).
  * grep and other functions for evaluating (extended) regular
    expressions handle in Unicode also strings not explicitly flagged
    UTF-8, but flagged native when running in UTF-8 locale.
  * Fixed a crash in fifo implementation on Windows (PR#18031).
  * Binary mode in fifo on Windows is now properly detected from
    argument open (PR#15600, PR#18031).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1622808000">- The line %{__install} -m 755 -d %{_infodir}
  no longer works in TW or Factory.
  But without that line it works everywhere. So this instruction
  was commented out of the spec file.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1628596800">- CHANGES IN R 4.1.1:
  NEW FEATURES:
  * require(pkg, quietly = TRUE) is quieter and in particular does
    not warn if the package is not found.
  DEPRECATED AND DEFUNCT:
  * Use of ftp:// URIs should be regarded as deprecated, with
    on-going support confined to method = "libcurl" and not routinely
    tested.  (Nowadays no major browser supports them.)
  * The non-default method = "internal" is deprecated for http:// and
    ftp:// URIs for both download.file and url.
  * On Windows, method = "wininet" is deprecated for http://,
    https:// and ftp:// URIs for both download.file and url.  (A
    warning is only given for ftp://.)
    For ftp:// URIs the default method is now "libcurl" if available
    (which it is on CRAN builds).
    method = "wininet" remains the default for http:// and https://
    URIs but if libcurl is available, using method = "libcurl" is
    preferred.
  INSTALLATION:
  * make check now works also without a LaTeX installation.  (Thanks
    to Sebastian Meyer's PR#18103.)
  BUG FIXES:
  * make check-devel works again in an R build configured with
  - -without-recommended-packages.
  * qnbinom(p, size, mu) for large size/mu is correct now in a range
    of cases (PR#18095); similarly for the (size, prob)
    parametrization of the negative binomial.  Also qpois() and
    qbinom() are better and or faster for extreme cases.  The
    underlying C code has been modularized and is common to all four
    cases of discrete distributions.
  * gap.axis is now part of the axis() arguments which are passed
    from bxp(), and hence boxplot().  (Thanks to Martin Smith's
    report and suggestions in PR#18109.)
  * .First and .Last can again be set from the site profile.
  * seq.int(from, to, *) and seq.default(..) now work better in large
    range cases where from-to is infinite where the two boundaries
    are finite.
  * all.equal(x,y) now returns TRUE correctly also when several
    entries of abs(x) and abs(y) are close to .Machine$double.xmax,
    the largest finite numeric.
  * model.frame() now clears the object bit when removing the class
    attribute of a value via na.action (PR#18100).
  * charClass() now works with multi-character strings on Windows
    (PR#18104, fixed by Bill Dunlap).
  * encodeString() on Solaris now works again in Latin-1 encoding on
    characters represented differently in UTF-8.  Support for
    surrogate pairs on Solaris has been improved.
  * file.show() on Windows now works with non-ASCII path names
    representable in the current native encoding (PR#18132).
  * Embedded R on Windows can now find R home directory via the
    registry even when installed only for the current user
    (PR#18135).
  * pretty(x) with finite x now returns finite values also in the
    case where the extreme x values are close in size to the maximal
    representable number .Machine$double.xmax.
    Also, it's been tweaked for very small ranges and when a boundary
    is close (or equal) to zero; e.g., pretty(c(0,1e-317)) no longer
    has negative numbers, currently still warning about a very small
    range, and pretty(2^-(1024 - 2^-1/(c(24,10)))) is more accurate.
  * The error message for not finding vignette files when weaving has
    correct file sizes now. (Thanks to Sebastian Meyer's PR#18154.)
  * dnbinom(20, &lt;large&gt;, 1) now correctly gives 0, and similar cases
    are more accurate with underflow precaution.  (Reported by Francisco Vera Alcivar in PR#18072.)</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635163200">- repaired https://bugzilla.suse.com/show_bug.cgi?id=1191380
  (rpmacros now go to rpmmacrodir)
- minor clean-ups in spec file</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635768000">- CHANGES IN R 4.1.2:
  C-LEVEL FACILITIES:
  * The workaround in headers R.h and Rmath.h (using namespace std;)
    for the Oracle Developer Studio compiler is no longer needed now
    C++11 is required so has been removed.  A couple more usages of
    log() (which should have been std::log()) with an int argument
    are reported on Solaris.
  * The undocumented limit of 4095 bytes on messages from the
    S-compatibility macros PROBLEM and MESSAGE is now documented and
    longer messages will be silently truncated rather than
    potentially causing segfaults.
  * If the R_NO_SEGV_HANDLER environment variable is non-empty, the
    signal handler for SEGV/ILL/BUS signals (which offers recovery
    user interface) is not set. This allows more reliable debugging
    of crashes that involve the console.
  DEPRECATED AND DEFUNCT:
  * The legacy S-compatibility macros PROBLEM, MESSAGE, ERROR, WARN,
    WARNING, RECOVER, ... are deprecated and will be hidden in R
    4.2.0. R's native interface of Rf_error and Rf_warning has long
    been preferred.
  BUG FIXES:
  * .mapply(F, dots, .) no longer segfaults when dots is not a list
    and uses match.fun(F) as always documented; reported by Andrew
    Simmons in PR#18164.
  * hist(&lt;Date&gt;, ...) and hist(&lt;POSIXt&gt;, ...)  no longer pass
    arguments for rect() (such as col and density) to axis().
    (Thanks to Sebastian Meyer's PR#18171.)
  * \Sexpr{ch} now preserves Encoding(ch). (Thanks to report and
    patch by Jeroen Ooms in PR#18152.)
  * Setting the RNG to "Marsaglia-Multicarry" e.g., by RNGkind(), now
    warns in more places, thanks to Andr'e Gillibert's report and
    patch in PR#18168.
  * gray(numeric(), alpha=1/2) no longer segfaults, fixing PR#18183,
    reported by Till Krenz.
  * Fixed dnbinom(x, size=&lt;very_small&gt;, .., log=TRUE) regression,
    reported by Martin Morgan.
  * as.Date.POSIXlt(x) now keeps names(x), thanks to Davis Vaughan's
    report and patch in PR#18188.
  * model.response() now strips an "AsIs" class typically, thanks to
    Duncan Murdoch's report and other discussants in PR#18190.
  * try() is considerably faster in case of an error and long call,
    as e.g., from some do.call().  Thanks to Alexander Kaever's
    suggestion posted to R-devel.
  * qqline(y = &lt;object&gt;) such as y=I(.), now works, see also
    PR#18190.
  * Non-integer mgp par() settings are now handled correctly in
    axis() and mtext(), thanks to Mikael Jagan and Duncan Murdoch's
    report and suggestion in PR#18194.
  * formatC(x) returns length zero character() now, rather than ""
    when x is of length zero, as documented, thanks to Davis
    Vaughan's post to R-devel.
  * removeSource(fn) now retains (other) attributes(fn).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1647000000">- CHANGES IN R 4.1.3:
  NEW FEATURES:
  * The default version of Bioconductor has been changed to 3.14.
    (This is used by setRepositories and the menus in GUIs.)
  UTILITIES:
  * R CMD check --as-cran has a workaround for a bug in versions of
    file up to at least 5.41 which mis-identify DBF files last
    changed in 2022 as executables.
  C-LEVEL FACILITIES:
  * The legacy S-compatibility macros SINGLE_* in R_ext/Constants.h
    (included by R.h) are deprecated and will be removed in R 4.2.0.
  BUG FIXES:
  * Initialization of self-starting nls() models with initialization
    functions following the pre-R-4.1.0 API (without the ...
    argument) works again for now, with a deprecation warning.
  * Fixed quoting of ~autodetect~ in Java setting defaults to avoid
    inadvertent user lookup due to leading ~, reported in PR#18231 by
    Harold Gutch.
  * substr(., start, stop) &lt;- v now treats _negative_ stop values
    correctly.  Reported with a patch in PR#18228 by Brodie Gaslam.
  * Subscripting an array x without dimnames by a
    length(dim(x))-column character matrix gave "random" non-sense,
    now an error; reported in PR#18244 by Mikael Jagan.
  * ...names() now matches names(list(...)) closely, fixing PR#18247.
  * all.equal(*, scale = s) now works as intended when length(s) &gt; 1,
    partly thanks to Michael Chirico's PR#18272.
  * print(x) for long vectors x now also works for named atomic
    vectors or lists and prints the correct number when reaching the
    getOption("max.print") limit; partly thanks to a report and
    proposal by Hugh Parsonage to the R-devel list.
  * all.equal(&lt;selfStart&gt;, *) no longer signals a deprecation
    warning.
  * reformulate(*, response=r) gives a helpful error message now when
    length(r) &gt; 1, thanks to Bill Dunlap's PR#18281.
  * Modifying globalCallingHandlers inside withCallingHandlers() now
    works or fails correctly, thanks to Henrik Bengtsson's PR#18257.
  * hist(&lt;Date&gt;, breaks = "days") and hist(&lt;POSIXt&gt;, breaks = "secs")
    no longer fail for inputs of length 1.
  * qbeta(.001, .9, .009) and similar cases now converge correctly
    thanks to Ben Bolker's report in PR#17746.
  * window(x, start, end) no longer wrongly signals "'start' cannot
    be after 'end'", fixing PR#17527 and PR#18291.
  * data() now checks that its (rarely used) list argument is a
    character vector - a couple of packages passed other types and
    gave incorrect results.
  * which() now checks its arr.ind argument is TRUE rather coercing
    to logical and taking the first element - which gave incorrect
    results in package code.
  * model.weights() and model.offset() more carefully extract their
    model components, thanks to Ben Bolker and Tim Taylor's R-devel
    post.
  * list.files(recursive = TRUE) now shows all broken symlinks
    (previously, some of them may have been omitted, PR#18296).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1650628800">- CHANGES IN R 4.2.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * The formula method of aggregate() now matches the generic in
    naming its first argument x (resolving PR#18299 by Thomas
    Soeiro).
    This means that calling aggregate() with a formula as a named
    first argument requires name formula in earlier versions of R and
    name x now, so portable code should not name the argument (code
    in many packages did).
  * Calling &amp;&amp; or || with either argument of length greater than one
    now gives a warning (which it is intended will become an error).
  * Calling if() or while() with a condition of length greater than
    one gives an error rather than a warning.  Consequently,
    environment variable _R_CHECK_LENGTH_1_CONDITION_ no longer has
    any effect.
  * Windows users should consult the WINDOWS section below for some
    profound changes including
  * Support for 32-bit builds has been dropped.
  * UTF-8 locales are used where available.
  * The default locations for the R installation and personal
    library folder have been changed.
    Thanks to Tomas Kalibera for months of work on the Windows port
    for this release.
  NEW FEATURES:
  * matrix(x, n, m) now warns in more cases where length(x) differs
    from n * m, as suggested by Abby Spurdle and Wolfgang Huber in
    Feb 2021 on the R-devel mailing list.
    This warning can be turned into an error by setting environment
    variable _R_CHECK_MATRIX_DATA_ to TRUE: R CMD check --as-cran
    does so unless it is already set.
  * Function file_test() in package utils gains tests for symlinks,
    readability and writability.
  * capabilities("libxml") is now false.
    The description of capabilities("http/ftp") now reflects that it
    refers to the default method, no longer the internal one.
  * simplify2array() gains an except argument for controlling the
    exceptions used by sapply().
  * Environment variables R_LIBS_USER and R_LIBS_SITE are both now
    set to the R system default if unset or empty, and can be set to
    NULL to indicate an empty list of user or site library
    directories.
  * The warning for axis()(-like) calls in cases of relatively small
    ranges (typically in log-scale situations) is slightly improved
    _and_ suppressed from explicit calls to .axisPars() as has always
    been the intention.
  * The contrasts setter function `contrasts&lt;-` gains an explicit
    default how.many = NULL rather than just using missing(how.many).
  * grid.pretty() gains a new optional argument n = 5.
  * There is a new function .pretty() with option bounds as a
    technical-utility version of pretty().  It and pretty() gain a
    new argument f.min with a better than back-compatible default.
  * Function grDevices::axisTicks() and related functions such as
    graphics::axis() work better, notably for the log scale; partly
    because of the pretty() improvements, but also because care is
    taken e.g., when ylim is finite but diff(ylim) is infinite.
  * nclass.FD() gains a digits option.
  * The R Mathlib internal C function bd0() (called indirectly from a
    dozen probability density and distribution functions such as
    dpois(), dbinom(), dgamma(), pgamma() _etc_) has been
    complemented by a more sophisticated and (mostly) more accurate C
    function ebd0(), currently called only by internal dpois_raw()
    improving accuracy for R level dpois() and potentially others
    calling it such as dnbinom(), dgamma() or pgamma().  (Thanks to
    Morten Welinder's PR#15628.)
  * write.ftable() gains sep = " " argument as suggested by Thomas
    Soeiro.
  * The names of the locale categories supported by R's
    Sys.getlocale() and Sys.setlocale() are now provided by variable
    .LC.categories in the base namespace.
  * The Date and POSIXt methods for hist() and the histogram method
    for plot() now also use the new default col = "lightgray" in
    consistency with the corresponding change to hist()'s default for
    R 4.0.0.
  * hist.default() gains new fuzz argument, and the histogram plot
    method no longer uses fractional axis ticks when displaying
    counts ("Frequency").
  * mapply() and hence Map() now also obey the "max-or-0-if-any"
    recycling rule, such that, e.g., Map(`+`, 1:3, 1[0]) is valid
    now.
  * as.character(&lt;obj&gt;) for "hexmode" or "octmode" objects now
    fulfils the important basic rule as.character(x)[j] ===
    as.character(x[j]).
  * The set utility functions, notably intersect() have been tweaked
    to be more consistent and symmetric in their two set arguments,
    also preserving a common mode.
  * substr(ch, start,end) &lt;- new now e.g., preserves names(ch); ditto
    for substring(), thanks to a patch from Brodie Gaslam.
  * plot(&lt;lm&gt;) gains a extend.ylim.f argument, in partial response to
    PR#15285; further PR#17784 is fixed thanks to several
    contributors and a patch by Elin Waring.  The Cook's dist
    contours get customizable via cook.col and cook.lty with a
    different default color and their legend is nicer by default and
    customizable via cook.legendChanges.
  * Attempting to subset an object that is not subsettable now
    signals an error of class notSubsettableError. The
    non-subsettable object is contained in the object field of the
    error condition.
  * Subscript-out-of-bounds errors are now signaled as errors of
    class subscriptOutOfBoundsError.
  * Stack-overflow errors are now signaled as errors inheriting from
    class stackOverflowError. See ?stackOverflowError for more
    details.
  * New partly experimental Sys.setLanguage() utility, solving the
    main problem of PR#18055.
  * gettext() and gettextf() get a new option trim = TRUE which when
    set to false allows translations for strings such as "Execution
    halted\n" typical for C code.
  * An experimental implementation of hash tables is now available.
    See ?hashtab for more details.
  * identical() gains a extptr.as.ref argument for requesting that
    external pointer objects be compared as reference objects.
  * reorder() gets an argument decreasing which it passes to sort()
    for level creation; based on the wish and patch by Thomas Soeiro
    in PR#18243.
  * as.vector() gains a data.frame method which returns a simple
    named list, also clearing a long standing 'FIXME' to enable
    as.vector(&lt;data.frame&gt;, mode="list").  This breaks code relying
    on as.vector(&lt;data.frame&gt;) to return the unchanged data frame.
  * legend() is now vectorized for arguments cex, x.intersp, and
    text.width.  The latter can now also be specified as a vector
    (one element for each column of the legend) or as NA for
    computing a proper column wise maximum value of strwidth(legend).
    The argument y.intersp can be specified as a vector with one
    entry for each row of the legend.
    legend() also gains new arguments title.cex and title.font.
    Thanks to Swetlana Herbrandt.
  * Deparsing no longer remaps attribute names dim, dimnames, levels,
    names and tsp to historical S-compatible names (which structure()
    maps back).
  * sample() and sample.int() have additional sanity checks on their
    size and n arguments.
    all.equal.numeric() gains a sanity check on its tolerance
    argument - calling all.equal(a, b, c) for three numeric vectors
    is a surprisingly common error.
    mean(na.rm =), rank(na.last =), barplot(legend.text =),
    boxplot(), contour(drawlabels =), polygon(border =) and
    methods::is(class2 =) have more robust sanity checks on their
    arguments.
    R CMD Rd2pdf (used by R CMD check) has a more robust sanity check
    on the format of \alias{} commands.
  * psigamma(x, deriv) for negative x now also works for deriv = 4
    and 5; their underlying C level dpsifn() is documented in
    'Writing R Extensions'.
  * The HTML help system now uses HTML5 (wish of PR#18149).
  * ks.test() now provides exact p-values also with ties and MC
    p-values in the two-sample (Smirnov) case.  By Torsten Hothorn.
  * ks.test() gains a formula interface, with y ~ 1 for the
    one-sample (Kolmogorov) test and y ~ group for the two-sample
    (Smirnov) test.  Contributed by Torsten Hothorn.
  * The return value from ks.test() now has class c("ks.test",
    "htest") - packages using try() need to take care to use
    inherits() and not == on the class.
  * New functions psmirnov(), qsmirnov() and rsmirnov() in package
    stats implementing the asymptotic and exact distributions of the
    two-sample Smirnov statistic.
  * iconv() now allows sub = "c99" to use C99-style escapes for UTF-8
    inputs which cannot be converted to encoding to.
  * In a forward pipe |&gt; expression it is now possible to use a named
    argument with the placeholder _ in the rhs call to specify where
    the lhs is to be inserted.  The placeholder can only appear once
    on the rhs.
  * The included LAPACK sources have been updated to version 3.10.0,
    except for the four Fortran 77 routines which 3.10.0 has
    re-implemented in Fortran 90 (where the older versions have been
    retained as the R build process does not support Fortran 90).
  * path.expand() and most other uses of tilde expansion now warn if
    a path would be too long if expanded.  (An exception is
    file.exists(), which silently returns false.)
  * trunc(&lt;Date&gt;, *) now supports units = "months" or "years" for
    consistency with the POSIXt method, thanks to Dirk Eddelbuettel's
    proposal in PR#18099.
  * list2DF() now checks that its arguments are of the same length,
    rather than use recycling.
  * The HTML help system has several new features: LaTeX-like math
    can be typeset using either KaTeX or MathJax, usage and example
    code is highlighted using Prism, and for dynamic help the output
    of examples and demos can be shown within the browser if the
    knitr package is installed. These features can be disabled by
    setting the environment variable _R_HELP_ENABLE_ENHANCED_HTML_ to
    a false value.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 15
    and so packages that provide graphics devices should be
    reinstalled.
  * The grid package now allows the user to specify a "vector" of
    pattern fills.  The fill argument to gpar() accepts a list of
    gradients and/or patterns and the functions linearGradient(),
    radialGradient(), and pattern() have a new group argument.
    Points grobs (data symbols) can now also have a pattern fill.
    The grobCoords() function now returns a more informative and
    complex result.
  * The grid package has new functions for drawing isolated groups:
    grid.group(), grid.define(), and grid.use().  These functions add
    compositing operators and affine transformations to R's graphics
    capabilities.
    The grid package also has new functions for stroking and filling
    paths: grid.stroke(), grid.fill(), and grid.fillStroke().
    A new function as.path() allows the user to specify the fill rule
    for a path that is to be used for clipping, stroking, or filling;
    available options are "winding" and "evenodd".  A new function
    as.mask() allows the user to specify the type of a mask;
    available options are "alpha" and "luminance".
    These new features are only supported so far (at most) on the
    Cairo-based graphics devices and on the pdf() device.
  * dev.capabilities() reports on device support for the new
    features.
  * par() now warns about unnamed non-character arguments to prevent
    misuse such as {usr &lt;- par("usr"); par(usr)}.
  INSTALLATION:
  * Facilities for accessing ftp:// sites are no longer tested
    (except _pro tem_ for curlGetHeaders()) as modern browsers have
    removed support.
  * R can now be built with DEFS = -DSTRICT_R_HEADERS .
  PACKAGE INSTALLATION:
  * R CMD INSTALL no longer tangles vignettes. This completes an R
    CMD build change in R 3.0.0 and affects packages built before R
    3.0.2. Such packages should be re-made with R CMD build to have
    the tangled R code of vignettes shipped with the tarball.
  * USE_FC_LEN_T will become the default: this uses the correct
    prototypes for Fortran BLAS/LAPACK routines called from C/C++,
    and requires adjustment of most such calls - see 'Writing R
    Extensions' SS6.6.2.  (This has been supported since R 3.6.2.)
  * Package installation speed for packages installed with
    keep.source has been improved. This resolve the issue reported by
    Ofek Shilon in PR#18236.
  UTILITIES:
  * R CMD check can optionally report files/directories left behind
    in home, /tmp (even though TMPDIR is set) and other directories.
    See the "R Internals" manual for details.
  * R CMD check now reports byte-compilation errors during
    installation.  These are not usually fatal but may result in
    parts of the package not being byte-compiled.
  * _R_CHECK_DEPENDS_ONLY_ can be applied selectively to examples,
    tests and/or vignettes in R CMD check: see the "R Internals"
    manual.
  * _R_CHECK_SRC_MINUS_W_IMPLICIT_ now defaults to true: recent
    versions of Apple clang on macOS have made implicit function
    declarations in C into a compilation error.
  * R CMD check --as-cran makes use of the environment variable
    AUTORECONF.  See the "R Internals" manual SS8 for further details.
  * R CMD check --use-valgrind also uses valgrind when re-building
    vignettes as some non-Sweave vignettes unhelpfully comment out
    all their code when R CMD check runs vignettes.
  * Errors in re-building vignettes (unless there are LaTeX errors)
    are reported by R CMD check as ERROR rather than WARNING when
    running vignettes has been skipped (as it frequently is in CRAN
    checks and by --as-cran).
  * R CMD Rd2pdf gains a --quiet option that is used by R CMD build
    when building the PDF package manual.
  * R CMD Rd2pdf now always runs LaTeX in batch mode, consistent with
    Texinfo &gt;= 6.7. The --batch option is ignored.
  * R CMD build and R CMD check now include the Rd file name and line
    numbers in the error message of an \Sexpr evaluation failure.
  * For packages using the \doi Rd macro (now an install-time \Sexpr)
    but no other dynamic Rd content, R CMD build now produces a
    smaller tarball and is considerably faster - skipping temporary
    package installation.
  C-LEVEL FACILITIES:
  * The non-API header R_ext/R-ftp-http.h is no longer provided, as
    the entry points it covered are now all defunct.
  * A number of non-API declarations and macro definitions have been
    moved from the installed header Rinternals.h to the internal
    header Defn.h. Packages that only use entry points and
    definitions documented to be part of the API as specified in
    'Writing R Extensions' SS6 should not be affected.
  * The macro USE_RINTERNALS no longer has any effect when compiling
    package code.  Packages which also use R_NO_REMAP will need to
    ensure that the remapped names are used for calls to API
    functions that were formerly also made available as macros.
  * The deprecated legacy S-compatibility macros PROBLEM, MESSAGE,
    ERROR, WARN, WARNING, RECOVER, ... are no longer defined in
    R_exts/RS.h (included by R.h).  Replace these by calls to
    Rf_error and Rf_warning (defined in header R_ext/Error.h included
    by R.h).
    Header R_ext/RS.h no longer includes R_ext/Error.h.
  * Header R_ext/Constants.h (included by R.h) when included from C++
    now includes the C++ header cfloat rather than the C header
    float.h (now possible as C++11 is required).
  * The legacy S-compatibility macros DOUBLE_* in R_ext/Constants.h
    (included by R.h) are deprecated.
  * The deprecated S-compatibility macros SINGLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * R_Calloc, R_Free and R_Realloc are preferred to their unprefixed
    forms and error messages now use the prefix. These forms were
    introduced in R 3.4.0 and are available even when
    STRICT_R_HEADERS is defined.
  * rmultinom has been documented in 'Writing R Extensions' SS6 so is
    now part of the R API.
  * Similarly, Rtanpi, called from R level tanpi() is now part of the
    R API.
  * The long-deprecated, undocumented and non-API entry point call_R
    is no longer declared in R_ext/RS.h (included by R.h).
  * The header S.h which has been unsupported since Jan 2016 has been
    removed.  Use R.h instead.
  DEPRECATED AND DEFUNCT:
  * The (non-default and deprecated) method = "internal" for
    download.file() and url() no longer supports http:// nor ftp://
    URIs.  (It is used only for file:// URIs.)
    On Windows, download.file(method = "wininet") no longer supports
    ftp:// URIs.  (It is no longer the default method, which is
    "libcurl" and does.)
    On Windows, the deprecated method = "wininet" now gives a warning
    for http:// and https:// URIs for both download.file() and url().
    (It is no longer the default method.)
  * On Windows, the command-line option --max-mem-size and
    environment variable R_MAX_MEM_SIZE are defunct.  The memory
    allocation limit was important for 32-bit builds, but these are
    no longer supported.
  * default.stringsAsFactors() is now formally deprecated, where that
    was only mentioned on its regular help page, previously.  So it
    now gives a warning if called.
  * unix.time() is defunct now; it had been deprecated since R 3.4.0.
  BUG FIXES:
  * Setting digits = 0 in format(), print.default() (and hence
    typically print()) or options() is again invalid.  Its behaviour
    was platform-dependent, and it is unclear what "zero significant
    digits" should mean (PR#18098).
  * Messages from C code in the cairo section of package grDevices
    are now also offered for translation, thanks to Michael Chirico's
    PR#18123.
  * mean(x) with finite x now is finite also without "long.double"
    capability.
  * R CMD Rd2pdf no longer leaves an empty build directory behind
    when it aborts due to an already existing output file.  (Thanks
    to Sebastian Meyer's PR#18141.)
  * density(x, weights = w, na.rm = TRUE) when anyNA(x) is true, now
    removes weights "in parallel" to x, fixing PR#18151, reported by
    Matthias Gondan.  Additionally, it gets a subdensity option.
  * Conversion of \Sexpr[]{&lt;expR&gt;} to LaTeX or HTML no longer
    produces long blocks of empty lines when &lt;expR&gt; itself contains
    several lines all producing empty output.  Thanks to a report and
    patch by Ivan Krylov posted to R-devel.
  * R CMD build no longer fails if a package vignette uses child
    documents and inst/doc exists.  (Thanks to Sebastian Meyer's
    PR#18156.)
  * When an R documentation ('help' source) file man/foo.Rd in a
    package has \donttest{..} examples with a syntax error, it is now
    signalled as ERROR and with correct line numbers relating to the
  * -Ex.R file, thanks to Duncan Murdoch and Sebastian Meyer's
    reports and patch proposals in PR#17501.
  * Improved determination of the correct translation domain in
    non-base packages, addressing the combination of PR#18092 and
    PR#17998 (#c6) with reports and _augmented_ patch #2904 by
    Suharto Anggono.
    Note that "R-base" is no longer the default domain e.g., for
    top-level calls to gettext(); rather translation needs explicit
    domain = * specification in such cases.
  * identical(attrib.as.set=FALSE) now works correctly with data
    frames with default row names (Thanks to Charlie Gao's PR#18179).
  * txtProgressBar() now enforces a non-zero width for argument char,
    without which no progress can be visible.
  * dimnames(table(d)) is more consistent in the case where d is a
    list with a single component, thanks to Thomas Soeiro's report to
    R-devel.
    Further, table(d1, d2) now gives an error when d1 and d2 are data
    frames as suggested by Thomas in PR#18224.
  * Fix for drawing semi-transparent lines and fills on the native
    Windows graphics device (PR#18219 and PR#16694).  Thanks to Nick
    Ray for helpful diagnosis on Bugzilla.
  * The deparser now wraps sub-expressions such as if(A) ..  with
    parentheses when needed; thanks to Duncan Murdoch's PR#18232 and
    Lionel Henry's patches there.
  * remove.packages() no longer tries to uninstall Priority: base
    packages, thanks to a report and suggestions by Colin Fay in
    PR#18227.
  * win.metafile() now has xpinch and ypinch arguments so that the
    user can override Windows' (potentially wrong) guess at device
    dimensions.
  * x[i] and x[[i]] for non-integer i should now behave in all cases
    as always documented: the index used is equivalent to
    as.integer(i) unless that would overflow where trunc(i) is used
    instead; thanks to Suharto Anggono's report and patch proposals
    in PR#17977.
  * asOneSidedFormula() now associates the resulting formula with the
    global environment rather than the evaluation environment created
    for the call.
  * &lt;bibentry&gt;$name now matches the field name case-insensitively,
    consistent with bibentry() creation and the replacement method.
  * cbind() failed to detect some length mismatches with a mixture of
    time-series and non-time-series inputs.
  * The default LaTeX style file Sweave.sty used by the RweaveLatex
    driver no longer loads the obsolete ae package; thanks to a
    report by Thomas Soeiro in PR#18271.  Furthermore, it now skips
    \usepackage[T1]{fontenc} for engines other than pdfTeX (if
    detected) or if the new [nofontenc] option is used.
  * smooth.spline() now stores its logical cv argument more safely,
    fixing a rare bug when printing, and also stores n.
  * smooth.spline(x,y,*) now computes the cv.crit statistic
    correctly, also when is.unsorted(x), fixing PR#18294.
  * The data.frame method of rbind() now warns when binding
    not-wholly-recycling vectors, by analogy to the default method
    (for matrices).
  * setAs() finds the correct class for name to when multiple
    packages define a class with that name. Thanks to Gabor Csardi
    for the report.
  * Fix for detaching a package when two classes of the same name are
    present in method signatures for the same generic. Thanks to
    Gabor Csardi for the report.
  * match.arg("", c("", "a", "B")) gives a better error message, in
    part from PR#17959, thanks to Elin Waring.
  * R CMD Sweave --clean no longer removes pre-existing files or
    subdirectories (PR#18242).
  * The quartz() device no longer splits polylines into subpaths.
    That has caused narrowly-spaced lines with many points to always
    look solid even when dashed line type was used due to dash phase
    restarts.
  * Deparsing constructs such as quote(1 + `!`(2) + 3) works again as
    before R 3.5.0, thanks to the report and patch in PR#18284 by
    Suharto Anggono.
  * as.list(f) for a factor f now keeps names(f), fixing PR#18309.
  * qbeta(.001, .9, .009) and analogous qf() calls now return a
    correct value instead of NaN or wrongly 1, all with a warning;
    thanks to the report by Ludger Goeminne in PR#18302.
  * plot.lm() failed to produce the plot of residuals vs.  factor
    levels (i.e., which=5 when leverages are constant) for models
    with character predictors (PR#17840).
  * interaction.plot(..., xtick = TRUE) misplaced the x-axis line
    (PR#18305).
  * Not strictly fixing a bug, format()ing and print()ing of
    non-finite Date and POSIXt values NaN and +/-Inf no longer show
    as NA but the respective string, e.g., Inf, for consistency with
    numeric vector's behaviour, fulfilling the wish of PR#18308.
  * R CMD check no longer runs test scripts generated from
    corresponding .Rin files twice and now signals an ERROR if
    processing an .Rin script fails.
  * tools::Rd2txt() used for plain-text help pages now renders \hrefs
    (if tools::Rd2txt_options(showURLs = TRUE)) and \urls with
    percent-encoding and standards-compliant delimiting style (angle
    brackets and no URL: prefix).  \email is now rendered with a
    mailto: prefix.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1655985600">- CHANGES IN R 4.2.1:
  NEW FEATURES:
  * New function utils::findCRANmirror() to find out if a CRAN mirror
    has been selected, otherwise fallback to the main site.  This
    behaves in the same way as tools::CRAN_package_db() and is
    intended for packages wishing to access CRAN for purposes other
    than installing packages.
    The need for this was shown by a day when the main CRAN website
    was offline and a dozen or so packages which had its URL
    hardcoded failed their checks.
  INSTALLATION on a UNIX-ALIKE:
  * The libraries searched for by --with-blas (without a value) now
    include BLIS (after OpenBLAS but before ATLAS).  And on macOS,
    the Accelerate framework (after ATLAS).  (This is patterned after
    the AX_BLAS macro from the Autoconf Archive.)
  * The included LAPACK sources have been updated to 3.10.1.
  UTILITIES:
  * The (full path to) the command tidy to be used for HTML
    validation can be set by environment variable R_TIDYCMD.
  * Setting environment variable _R_CHECK_RD_VALIDATE_RD2HTML_ to a
    false value will override R CMD check --as-cran and turn off HTML
    validation.  This provides a way to circumvent a problematic
    tidy.
    The 2006 version that ships with macOS is always skipped.
  C-LEVEL FACILITIES:
  * The undocumented legacy declarations of Sint, Sfloat, SINT_MAX
    and SINT_MIN in header R.h are deprecated.
  BUG FIXES:
  * fisher.test(d) no longer segfaults for "large" d; fixing PR#18336
    by preventing/detecting an integer overflow reliably.
  * tar(., files=*) now produces correctly the warning about invalid
    uid or gid of files, fixing PR#18344, reported by Martin Morgan.
  * tk_choose.files() with multi = FALSE misbehaved on paths
    containing spaces (PR#18334) (regression introduced in R 4.0.0).
  * sort(x, partial = ind, *) now works correctly notably for the
    non-default na.last = FALSE or TRUE, fixing PR#18335 reported by
    James Edwards.
  * Environment variable _R_CHECK_XREFS_REPOSITORIES_ is only used
    for checking .Rd cross-references in R CMD check (as documented)
    and not for other uses looking for a CRAN mirror.
  * The search for a CRAN mirror when checking packages now uses
    getOption("repos") if that specifies a CRAN mirror, even when it
    does not also specify all three Bioconductor repositories (as was
    previously required).
  * The HTML code generated by tools::Rd2HTML() has been improved to
    pass tidy 5.8.0.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1667217600">- CHANGES IN R 4.2.2:
  NEW FEATURES:
  * tools::Rdiff(useDiff = TRUE) checks for the presence of an
    external diff command and switches to useDiff = FALSE if none is
    found.  This allows R CMD Rdiff to always work.
  * On Windows, environment variable R_LIBCURL_SSL_REVOKE_BEST_EFFORT
    can be used to switch to only 'best-effort' SSL certificate
    revocation checks with the default "libcurl" download method.
    This reduces security, but may be needed for downloads to work
    with MITM proxies (PR#18379).
  * (macOS) The run-time check for libraries from XQuartz for X11 and
    Tcl/Tk no longer uses otool from the Apple Developer Tools
    (PR#18400).
  * The LaTeX style for producing the PDF manuals, Rd.sty, now loads
    the standard amsmath, amsfonts and amssymb packages for greater
    coverage of math commands in the Rd \eqn and \deqn macros.  The
    \mathscr LaTeX command is also provided (via the mathrsfs
    package, if available, or the amsfonts bundle otherwise),
    fulfilling the wish of PR#18398.
  * (Windows) The default format of readClipboard() and
    writeClipboard() has been changed to 13 (CF_UNICODETEXT).
  INSTALLATION on a UNIX-ALIKE:
  * The PDF manuals (if built) can be compacted by the new target
    make compact-pdf (at the top level or in directory doc/manual).
  * There is now configure support for LLVM clang 15 on Linux, which
    defaults to position-independent (PIE) executables whereas
    gfortran does not.
  * Many small changes to ease compilation (and suppress warnings)
    with LLVM clang 15.
  BUG FIXES:
  * Rscript -e would fail if stdin were closed (Reported by Henrik
    Bengtsson.)
  * qt(*, log.p=TRUE) in outer tails no longer produces NaN in its
    final steps, thus fixing PR#18360.
  * tools::Rd2latex() now escapes hashes and ampersands when writing
    URLs, fixing LaTeX errors with such URLs in \tabular.
  * When isGeneric(f, fdef=*) is used with mismatching names, the
    warning is better understandable; reported (with fix) in PR#18370
    by Gabe Becker.
  * poly(x, n) now works again (and is now documented) when x is a
    "Date" or "POSIXct" object, or of another class while fulfilling
    mode(x) == "numeric".  This also enables poly(x, *, raw=TRUE) for
    such variables.  Reported by Michael Chirico to R-devel.
  * write.table(), write.csv() and write.csv2() restore their
    numerical precision (internal equivalent of digits = 15) after an
    interrupt (PR#18384).
  * One can now read also byte FF from a clipboard connection
    (PR#18385).
  * source("") and source(character()) now give more helpful error
    messages.
  * R CMD check --as-cran set _R_CHECK_TIMINGS_ too late to have the
    intended effect.
  * as.POSIXlt(x) now also works with very large dates x, fixing
    PR#18401 reported by Hannes M"uhleisen.
  * Files can now be extracted even from very large zip archives
    (PR#18390, thanks to Martin Jakt).
  * Non-finite objects of class "POSIXlt" are now correctly coerced
    to classes "Date" and "POSIXct"; following up on the extension to
    format() them correctly.
  * Added methods for is.finite(), is.infinite() and is.nan() for
    "POSIXlt" date-time objects.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1678881600">- CHANGES IN R 4.2.3:
  C-LEVEL FACILITIES:
  * The definition of DL_FUNC in R_ext/Rdynload.h has been changed to
    be fully C-compliant.  This means that functions loaded _via_ for
    example R_GetCCallable need to be cast to an appropriate type if
    they have any arguments.
  * .Machine has a new element sizeof.time_t to identify old systems
    with a 32-bit type and hence a limited range of date-times (and
    limited support for dates millions of years from present).
  PACKAGE INSTALLATION:
  * (Windows) The default C++ standard had accidentally been left at
    C++11 when it was changed to C++14 on Unix.
  BUG FIXES:
  * As "POSIXlt" objects may be "partially filled" and their list
    components meant to be recycled, length() now is the length of
    the longest component.
  * as.POSIXlt.Date() could underflow for dates in the far past (more
    than half a million years BCE).
  * as.Date.POSIXlt(x) would return "1970-01-01" instead of NA in R
    4.2.2, e.g., for
    x &lt;- as.POSIXlt(c("2019-01-30","2001-1-1"))
    x$mon &lt;- c(0L, NA); as.Date(x)
  * R CMD check failed to apply enabled _R_CHECK_SUGGESTS_ONLY_ to
    examples and vignettes (regression in R 4.2.0).
  * R CMD check did not re-build vignettes in separate processes by
    default (regression in R 4.2.0).
  * Running examples from HTML documentation now restores previous
    knitr settings and options (PR#18420).
  * Quartz: fonts are now located using Core Graphics API instead of
    deprecated ATS which is no longer supported in the macOS 13 SDK
    (PR#18426).  This also addresses an issue where the currently
    used font in the Quartz device context was not correctly
    retained.
  * (Windows) Math symbols in text drawing functions are again
    rendered correctly (PR#18440).  This fixes a regression in R
    4.2.1 caused by a fix in PR#18382 which uncovered an issue in
    GraphApp due to which the symbol charset was not used with TT
    Symbol font face.
  * (Windows) Installing a package with a src/Makefile.{win,ucrt}
    file includes ~/.R/Makevars.win64 in the search for user
    makevars, as documented in "R Installation and Administration"
    and done for packages with a src/Makevars.{win,ucrt} file.
  * format(&lt;POSIXlt_w/_unbalanced_sec&gt;, "....%OS&lt;n&gt;") with n &gt; 0 no
    longer accidentally uses the unbalanced seconds, thanks to
    Suharto Anggono's report (including patch) in PR#18448.
  * solve.default(a, b) works around issues with some versions of
    LAPACK when a contains NA or NaN values.
  * When UseMethod() cannot dispatch, it no longer segfaults
    producing the error message in case of a long class(), thanks to
    Joris Vankerschaver's report (including patch) in PR#18447.
  * When example(foo, ..) produces graphics on an interactive device
    it needs to open itself, it now leaves devAskNewPage() unchanged
    even when it was FALSE, thus fixing a 14 years old '&lt;FIXME&gt;'.
  * packageDescription() again catches errors from encoding
    conversions. This also fixes broken packageVersion() in C locale
    on systems where iconv does not support transliteration.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1681128000">- add patch to build with libcurl &gt;= 8</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1682078400">- CHANGES IN R 4.3.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Calling &amp;&amp; or || with LHS or (if evaluated) RHS of length greater
    than one is now always an error, with a report of the form
    'length = 4' in coercion to 'logical(1)'
    Environment variable _R_CHECK_LENGTH_1_LOGIC2_ no longer has any
    effect.
  NEW FEATURES:
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.10.1.  (This caused some platform-dependent
    changes to package check output.)  And then to the sources from
    LAPACK version 3.11.0 (with changes only to double complex
    subroutines).
  * The included LAPACK sources have been updated to include the four
    Fortran 90 routines rather than their Fortran 77 predecessors.
    This may give some different signs in SVDs or
    eigendecompositions..  (This completes the transition to LAPACK
    3.10.x begun in R 4.2.0.)
  * The LAPACK sources have been updated to version 3.11.0.  (No new
    subroutines have been added, so this almost entirely bug fixes:
    Those fixes do affect some computations with NaNs, including R's
    NA.)
  * The parser now signals _classed_ errors, notably in case of the
    pipe operator |&gt;.  The error object and message now give line and
    column numbers, mostly as proposed and provided by Duncan Murdoch
    in PR#18328.
  * toeplitz() is now generalized for asymmetric cases, with a
    toeplitz2() variant.
  * xy.coords() and xyz.coords() and consequently, e.g., plot(x,y,
    log = "y") now signal a _classed_ warning about negative values
    of y (where log(.) is NA).  Such a warning can be specifically
    suppressed or caught otherwise.
  * Regular expression functions now check more thoroughly whether
    their inputs are valid strings (in their encoding, e.g. in
    UTF-8).
  * The performance of grep(), sub(), gsub() and strsplit() has been
    improved, particularly with perl = TRUE and fixed = TRUE.  Use of
    useBytes = TRUE for performance reasons should no longer be
    needed and is discouraged: it may lead to incorrect results.
  * apropos() gains an argument dot_internals which is used by the
    completion (help(rcompgen)) engine to also see base internals
    such as .POSIXct().
  * Support in tools::Rdiff() for comparing uncompressed PDF files is
    further reduced - see its help page.
  * qqplot(x, y, ...) gains conf.level and conf.args arguments for
    computing and plotting a confidence band for the treatment
    function transforming the distribution of x into the distribution
    of y (Switzer, 1976, _Biometrika_). Contributed by Torsten
    Hothorn.
  * Performance of package_dependencies() has been improved for cases
    when the number of dependencies is large.
  * Strings newly created by gsub(), sub() and strsplit(), when any
    of the inputs is marked as "bytes", are also marked as "bytes".
    This reduces the risk of creating invalid strings and accidental
    substitution of bytes deemed invalid.
  * Support for readLines(encoding = "bytes") has been added to allow
    processing special text files byte-by-byte, without creating
    invalid strings.
  * iconv(from = "") now takes into account any declared encoding of
    the input elements and uses it in preference to the native
    encoding.  This reduces the risk of accidental creation of
    invalid strings, particularly when different elements of the
    input have different encoding (including "bytes").
  * Package repositories in getOption("repos") are now initialized
    from the repositories file when utils is loaded (if not already
    set, e.g., in .Rprofile).  (From a report and patch proposal by
    Gabriel Becker in PR#18405.)
  * compactPDF() gets a verbose option.
  * type.convert() and hence read.table() get new option tryLogical =
    TRUE with back compatible default.  When set to false, converts
    "F" or "T" columns to character.
  * Added new unit prefixes "R" and "Q" for abbreviating
    (unrealistically large) sizes beyond 10^{27} in standard = "SI",
    thanks to Henrik Bengtsson's PR#18435.
  * as.data.frame()'s default method now also works fine with atomic
    objects inheriting from classes such as "roman", "octmode" and
    "hexmode", such fulfilling the wish of PR#18421, by Benjamin
    Feakins.
  * The as.data.frame.vector() utility now errors for wrong-length
    row.names.  It warned for almost six years, with "Will be an
    error!".
  * sessionInfo() now also contains La_version() and reports codepage
    and timezone when relevant, in both print() and toLatex() methods
    which also get new option tzone for displaying timezone
    information when locale = FALSE.
  * New function R_compiled_by() reports the C and Fortran compilers
    used to build R, if known.
  * predict(&lt;lm&gt;, newdata = *) no longer unnecessarily creates an
    offset of all 0s.
  * solve() for complex inputs now uses argument tol and by default
    checks for 'computational singularity' (as it long has done for
    numeric inputs).
  * predict(&lt;rank-deficient lm&gt;, newdata=*) now obeys a new argument
    rankdeficient, with new default "warnif", warning only if there
    are non-estimable cases in newdata.  Other options include
    rankdeficient = "NA", predicting NA for non-estimable newdata
    cases.  This addresses PR#15072 by Russ Lenth and is based on his
    original proposal and discussions in PR#16158 also by David Firth
    and Elin Waring.  Still somewhat experimental.
  * Rgui console implementation now works better with the NVDA screen
    reader when the full blinking cursor is selected.  The underlying
    improvements in cursor handling may help also other screen
    readers on Windows.
  * The drop-field control in GraphApp can now be left with the TAB
    key and all controls can be navigated in the reverse order using
    the Shift+TAB key, improving accessibility of the Rgui
    configuration editor.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now fully accurate
    (instead of to "only" minimally five digits).
  * demo(error.catching) now also shows off withWarnings() and
    tryCatchWEMs().
  * As an experimental feature the placeholder _ can now also be used
    in the rhs of a forward pipe |&gt; expression as the first argument
    in an extraction call, such as _$coef. More generally, it can be
    used as the head of a chain of extractions, such as _$coef[[2]].
  * Spaces in the environment variable used to choose the R session's
    temporary directory (TMPDIR, TMP and TEMP are tried in turn) are
    now fatal.  (On Windows the 'short path' version of the path is
    tried and used if that does not contain a space.)
  * all.equal.numeric() gets a new optional switch giveErr to return
    the numeric error as attribute.  Relatedly,
    stopifnot(all.equal&lt;some&gt;(a, b, ..)) is as "smart" now, as
    stopifnot(all.equal(....)) has been already, thus allowing
    customized all.equal&lt;Some&gt;() wrappers.
  * R on Windows is now able to work with path names longer than 260
    characters when these are enabled in the system (requires at
    least Windows 10 version 1607).  Packages should be updated to
    work with long paths as well, instead of assuming PATH_MAX to be
    the maximum length.  Custom front-ends and applications embedding
    R need to update their manifests if they wish to allow this
    feature.  See
    &lt;https://blog.r-project.org/2023/03/07/path-length-limit-on-windows&gt;
    for more information.
  * 'Object not found' and 'Missing argument' errors now give a more
    accurate error context. Patch provided by Lionel Henry in
    PR#18241.
  * The @ operator is now an S3 generic. Based on contributions by
    Tomasz Kalinowski in PR#18482.
  * New generic chooseOpsMethod() provides a mechanism for objects to
    resolve cases where two suitable methods are found for an Ops
    Group Generic. This supports experimenting with alternative
    object systems. Based on contributions by Tomasz Kalinowski in
    PR#18484.
  * inherits(x, what) now accepts values other than a simple
    character vector for argument what. A new generic, nameOfClass(),
    is called to resolve the class name from what. This supports
    experimenting with alternative object systems. Based on
    contributions by Tomasz Kalinowski in PR#18485.
  * Detection of BLAS/LAPACK in use (sessionInfo()) with FlexiBLAS
    now reports the current backend.
  * The "data.frame" method for subset() now warns about extraneous
    arguments, typically catching the use of = instead of == in the
    subset expression.
  * Calling a:b when numeric a or b is longer than one may now be
    made into an error by setting environment variable
    _R_CHECK_LENGTH_COLON_ to a true value, along the proposal in
    PR#18419 by Henrik Bengtsson.
  * density(x, weights = *) now warns if automatic bandwidth
    selection happens without using weights; new optional warnWbw may
    suppress the warning.  Prompted by Christoph Dalitz' PR#18490 and
    its discussants.
  * rm(list = *) is faster and more readable thanks to Kevin Ushey's
    PR#18492.
  * The plot.lm() function no longer produces a normal Q-Q plot for
    GLMs. Instead it plots a half-normal Q-Q plot of the absolute
    value of the standardized deviance residuals.
  * The print() method for class "summary.glm" no longer shows
    summary statistics for the deviance residuals by default.  Its
    optional argument show.residuals can be used to show them if
    required.
  * The tapply() function now accepts a data frame as its X argument,
    and allows INDEX to be a formula in that case. by.data.frame()
    similarly allows INDICES to be a formula.
  * The performance of df[j] &lt;- value (including for missing j) and
    write.table(df) has been improved for data frames df with a large
    number of columns.  (Thanks to Gabriel Becker's PR#18500,
    PR#18503 and discussants, prompted by a report from Toby Dylan
    Hocking on the R-devel mailing list.)
  * The matrix multiply operator %*% is now an S3 generic, belonging
    to new group generic matrixOps.  From Tomasz Kalinowski's
    contribution in PR#18483.
  * New function array2DF() to convert arrays to data frames,
    particularly useful for the list arrays created by tapply().
  DATES and TIMES:
  * On platforms where (non-UTC) datetimes before 1902 (or before
    1900 as with system functions on recent macOS) are guessed by
    extrapolating time zones from 1902-2037, there is a warning at
    the first use of extrapolation in a session.  (As all time zones
    post 2037 are extrapolation, we do not warn on those.)
  * (Platforms using --with-internal-tzone, including Windows and by
    default macOS). How years are printed in dates or date-times can
    be controlled by environment variable R_PAD_YEARS_BY_ZERO.  The
    default remains to pad to 4 digits by zeroes, but setting value
    no gives no padding (as used by default by glibc).
  * strftime() tries harder to determine the offset for the "%z"
    format, and succeeds on the mainstream R platforms.
  * strftime() has a limit of 2048 bytes on the string produced -
    attempting to exceed this is an error.  (Previously it silently
    truncated at 255 bytes.)
  * sessionInfo() records (and by default prints) the system time
    zone as part of the locale information.  Also, the source
    (system/internal) of the date-time conversion and printing
    functions.
  * Objects of class "POSIXlt" created in this version of R always
    have 11 components: component zone is always set, and component
    gmtoff is set for times in UTC and usually set on the (almost
    all) platforms which have C-level support, otherwise is NA.
  * There are comprehensive validity checks on the structure of
    objects of class "POSIXlt" when converting (including formatting
    and printing).  (This avoids mis-conversions of hand-crafted
    objects.)
  * There is some support for using the native date-time routines on
    macOS: this is only viable on recent versions (e.g. 12.6 and 13)
    and does get wrong some historical changes (before 1900, during
    WWII).  Use of --with-internal-tzone remains the default.
  * as.POSIXct(&lt;numeric&gt;) and as.POSIXlt(.) (without specifying
    origin) now work.  So does as.Date(&lt;numeric&gt;).
  * as.Date.POSIXct(., tz) now treats several tz values, notably
    "GMT" as equivalent to "UTC", proposed and improved by Michael
    Chirico and Joshua Ulrich in PR#17674.
  * Experimental balancePOSIXlt() utility allows using "ragged" and
    or out-of-range "POSIXlt" objects more correctly, e.g., in
    subsetting and subassignments.  Such objects are now documented.
    More experimentally, a "POSIXlt" object may have an attribute
    "balanced" indicating if it is known to be filled or fully
    balanced.
  * Functions axis.Date() and axis.POSIXct() are rewritten to gain
    better default tick locations and better default formats by using
    prettyDate(). Thanks to Swetlana Herbrandt.
  * The mapping of Windows' names for time zones to IANA's 'Olson'
    names has been updated.  When ICU is available (it is by
    default), it is used to get a mapping for the current region set
    in Windows.  This can be overridden by setting environment
    variable TZ to the desired Olson name - see OlsonNames() for
    those currently available.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 16
    and so packages that provide graphics devices should be
    reinstalled.
  * The grDevices and grid packages have new functions for rendering
    typeset glyphs, primarily: grDevices::glyphInfo() and
    grid::grid.glyph().
    Rendering of typeset glyphs is only supported so far on the
    Cairo-based graphics devices and on the pdf() and quartz()
    devices.
  * The defined behaviour for "clear" and "source" compositing
    operators (via grid::grid.group()) has been changed (to align
    better with simple interpretation of original Porter-Duff
    definitions).
  * Support for gradients, patterns, clipping paths, masks, groups,
    compositing operators, and affine transformations has been added
    to the quartz() device.
  INSTALLATION on a UNIX-ALIKE:
  * A system installation of generic LAPACK 3.10.0 or later will be
    preferred to the version in the R sources.
    configure option --with-lapack=no (equivalently --without-lapack)
    forces compilation of the internal LAPACK sources.
    If --with-lapack is not specified, a system liblapack is looked
    for and used if it reports version 3.10.0 or later and does not
    contain BLAS routines.
    Packages using LAPACK will need to be reinstalled if this changes
    to using an external library.
  * On aarch64 Linux platforms using GCC, configure now defaults to
  - fPIC (instead of -fpic), as desired in PR#18326.
  * configure now checks conversion of datetimes between POSIXlt and
    POSIXct around year 2020.  Failure (which has been seen on
    platforms missing tzdata) is fatal.
  * If configure option --with-valgrind-instrumentation is given
    value 1 or 2, option --with-system-valgrind-headers is now the
    default and ignored (with a warning).  It is highly recommended
    that the system headers are installed alongside valgrind: they
    are part of its packaging on some Linux distributions and
    packaged separately (e.g. in the valgrind-devel RPM) on others.
    configure will give a warning if they are not found.
    The system headers will be required in a future release of R to
    build with valgrind instrumentation.
  * libcurl 8.x is now accepted by configure: despite a change in
    major version number it changes neither API nor ABI.
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools43, an update of the Rtools42 toolchain.  It is
    based on gcc 12 and newer versions of MinGW-W64, binutils and
    libraries.  At this time R-devel can still be built using
    Rtools42 without changes, but when R-devel is installed via the
    installer, it will by default look for Rtools43.
  * Old make targets rsync-extsoft and 32-bit ones that are no longer
    needed have been removed.
  * Default builds (including for packages) no longer select C99.
    Thus the C standard used is the default for the compiler, which
    for the toolchain in Rtools43 is C17.  (This is consistent with
    Unix builds.)
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++17 where
    available (which it is on all currently checked platforms): if
    not C++14 or C++11 is used if available otherwise C++ is not
    supported.
  * USE_FC_LEN_T is the default: this uses the correct
    (compiler-dependent) prototypes for Fortran BLAS/LAPACK routines
    called from C/C++, and requires adjustment of many such calls -
    see 'Writing R Extensions' SS6.6.1.
  * There is initial support for C++23 as several compilers are now
    supporting -std=c++23 or -std=c++2b or similar.  As for C++20,
    there no additional configure checks for C++23 features beyond a
    check that the compiler reports a __cplusplus value greater than
    that in the C++20 standard.  C++ feature tests should be used.
  * There is support for a package to indicate the version of the C
    standard which should be used to compile it, and for the
    installing user to specify this.  In most cases R defaults to the
    C compiler's default standard which is C17 (a `bug-fix' of C11) -
    earlier versions of R or compilers may have defaulted to C99.
    Current options are:
    USE_C17 Use a standard that is at most C17.  The intention is to
    allow legacy packages to still be installed when later C
    standards become the default, including packages using new
    keywords as identifiers or with K&amp;R-style function
    declarations.  This will use C17 if available, falling back
    to C11.
    USE_C90 Use the C90 (aka C89) standard.  (As that standard did
    not require compilers to identify that version, all we can
    verify is that the compiler does not claim to be using a
    later standard.  It may accept C99 features - for example
    clang accepts // to make comments.)
    USE_C99 Use the C99 standard. This should be rarely needed - it
    avoids the few new features of C11/C17 which can be useful if
    a package assumes them if C17 is specified and they are not
    implemented.
    USE_C23 Use C23 (or in future, later).  Compiler/library support
    for C23 is still being implemented, but LLVM clang from
    15.0.0 and the upcoming GCC 13 have quite extensive support.
    These can be specified as part of the SystemRequirements field in
    the package's DESCRIPTION file or _via_ options --use-C17 and so
    on of R CMD INSTALL and R CMD SHLIB.
    For further details see "Writing R Extensions" SS1.2.5.
  * (Windows) A src/Makefile.ucrt or src/Makefile.win file is now
    included after R_HOME/etcR_ARCH/Makeconf and so no longer needs
    to include that file itself.  Installation of a package with such
    a file now uses a site Makevars file in the same way as a package
    with a src/Makevars.win file would.
  * configure is now passed crucial variables such as CC and CFLAGS
    in its environment, as many packages were not setting them (as
    documented in 'Writing R Extensions' SS1.2).
    This has most effect where configure is used to compile parts of
    the package - most often by cmake or libtool which obfuscate the
    actual compile commands used.
    Also used for configure.win and configure.ucrt on Windows.
  FORTRAN FLAGS:
  * The flag -fno-optimize-sibling-calls is no longer forced for
    gfortran 7 and later.  It should no longer be needed now using
    'hidden' character-length arguments when calling BLAS/LAPACK
    routines from C/C++ is the default even for packages.  (Unless
    perhaps packages call Fortran code from C/C++ without using R's
    headers and without allowing for these arguments.)
  C-LEVEL FACILITIES:
  * The deprecated S-compatibility macros DOUBLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * The deprecated legacy typedefs of Sint and Sfloat in header R.h
    are no longer defined, and that header no longer includes header
    limits.h from C nor climits from C++.
  * New macro CAD5R() is provided in Rinternals.h and used in a few
    places in the R sources.
  * ALTREP now supports VECSXP vectors. Contributed by Gabor Csardi
    in PR#17620.
  * The Rcomplex definition (in header R_ext/Complex.h) has been
    extended to prevent possible mis-compilation when interfacing
    with Fortran (PR#18430).  The new definition causes compiler
    warnings with static initializers such as {1, 2}, which can be
    changed to {.r=1, .i=2}.
    Using the new definition from C++ depends on compiler extensions
    supporting C features that have not been incorporated into the
    C++ standards but are available in g++ and clang++: this may
    result in C++ compiler warnings but these have been worked around
    for recent versions of common compilers (GCC, Apple/LLVM clang,
    Intel).
    It is intended to change the inclusion of header R_ext/Complex.h
    by other R headers, so C/C++ code files which make use of
    Rcomplex should include that header explicitly.
  UTILITIES:
  * R CMD check does more checking of package .Rd files, warning
    about invalid email addresses and (some) invalid URIs and noting
    empty \item labels in description lists.
  * R CMD check now also reports problems when reading package news
    in md (file NEWS.md) and (optionally) plain text (file NEWS)
    formats.
  * _R_CHECK_TIMINGS_ defaults to a value from the environment even
    for R CMD check --as-cran; this allows for exceptionally fast or
    slow platforms.
    It now applies to checking PDF and HTML versions of the manuals,
    and 'checking CRAN incoming feasibility'.
  * R CMD check can optionally (but included in --as-cran) check
    whether HTML math rendering _via_ KaTeX works for the package .Rd
    files.
  * Non-interactive debugger invocations can be trapped by setting
    the environment variable _R_CHECK_BROWSER_NONINTERACTIVE_ to a
    true value.  This is enabled by R CMD check --as-cran to detect
    the use of leftover browser() statements in the package.
  * The use of sprintf and vsprintf from C/C++ has been deprecated in
    macOS 13 and is a known security risk.  R CMD check now reports
    (on all platforms) if their use is found in compiled code:
    replace by snprintf or vsnprintf respectively. [*NB:* whether
    such calls get compiled into the package is platform-dependent.]
  * Where recorded at installation, R CMD check reports the C and
    Fortran compilers used to build R.
    It reports the OS in use (if known, as given by osVersion) as
    well as that R was built for.
    It notes if a C++ standard was specified which is older than the
    current default: many packages have used C++11 to mean 'not
    C++98' - as C++11 is the minimum supported since R 4.0.0, that
    specification can probably be removed.
  * R CMD INSTALL reports the compilers (and on macOS, the SDK) used,
    and this is copied to the output of R CMD check.
    Where a C++ standard is specified, it is reported.
  * R CMD check's 'checking compilation flags in Makevars' has been
    relaxed to accept the use of flags such as -std=f2008 in
    PKG_FFLAGS.
  * tools::buildVignettes() has a new argument skip, which is used by
    R CMD check to skip (and note) vignettes with unavailable
    \VignetteDepends (PR#18318).
  * New generic .AtNames() added to enable class-specific completions
    after @. The formerly internal function findMatches() is now
    exported, mainly for use in methods for .DollarNames() and
    .AtNames().
  DEPRECATED AND DEFUNCT:
  * default.stringsAsFactors() is defunct.
  * Calling as.data.frame.&lt;class&gt;() directly (for 12 atomic classes)
    is going to be formally deprecated, currently activated by
    setting the environment variable
    _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ to non-empty, which also
    happens in R CMD check --as-cran.
  BUG FIXES:
  * Hashed environments with sizes less than 5 can now grow.
    (Reported to R-devel by Duncan Garmonsway.)
  * as.character(&lt;Rd&gt;, deparse = TRUE) failed to re-escape curly
    braces in LaTeX-like text.  (Reported by Hadley Wickham in
    PR#18324.)
  * library() now passes its lib.loc argument when requiring Depends
    packages; reported (with fix) in PR#18331 by Mikael Jagan.
  * R CMD Stangle: improved message about 'Output' files.
  * head(x, n) and tail(x, n) now signal an error if n is not
    numeric, instead of incidentally "working" sometimes returning
    all of x.  Reported and discussed by Colin Fay, in PR#18357.
  * The "lm" method for summary() now gives the correct F-statistic
    when the model contains an offset.  Reported in PR#18008.
  * C() and `contrasts&lt;-`() now preserve factor level names when
    given a function object (as opposed a function name which did
    preserve names). Reported in PR#17616.
  * c(a = 1, 2)[[]] no longer matches 2 but rather signals a
    _classed_ error.  Reported and analysed by Davis Vaughan in
    PR#18367, a duplicate of PR#18004, by Jan Meis et al.  For
    consistency, NULL[[]] is also erroneous now.  x[[]] &lt;- v gives an
    error of the same class "MissingSubscriptError".
  * The relist() function of utils now supports NULL elements in the
    skeleton (PR#15854).
  * ordered(levels = *) (missing x) now works analogously to factor(,
    ordered=TRUE); reported (with fix) by Achim Zeileis in PR#18389.
  * User-defined Rd macro definitions can now span multiple lines,
    thanks to a patch from Duncan Murdoch. Previously, the Rd parser
    silently ignored everything after the first line.
  * Plain-text help (tools::Rd2txt()) now preserves an initial blank
    line for text following description list items.
  * tools::Rd2HTML() and tools::Rd2latex() no longer split \arguments
    and \value lists at Rd comments.
  * tools::Rd2latex() now correctly handles optional text outside
    \items of argument lists as well as bracketed text at the
    beginning of sections, e.g., \value{[NULL]}.
  * as.character(&lt;POSIXt&gt;) now behaves more in line with the methods
    for atomic vectors such as numbers, and is no longer influenced
    by options().  Ditto for as.character(&lt;Date&gt;).  The
    as.character() method gets arguments digits and OutDec with
    defaults _not_ depending on options().  Use of as.character(*,
    format = .) now warns.
  * Similarly, the as.character.hexmode() and *.octmode() methods
    also behave as good citizen methods and back compatibility option
    keepStr = TRUE.
  * The as.POSIXlt(&lt;POSIXlt&gt;) and as.POSIXct(&lt;POSIXct&gt;) default
    methods now do obey their tz argument, also in this case.
  * as.POSIXlt(&lt;Date&gt;) now does apply a tz (time zone) argument, as
    does as.POSIXct(); partly suggested by Roland Fuss on the R-devel
    mailing list.
  * as.Date.POSIXlt(x) now also works when the list components are of
    unequal length, aka "partially filled" or "ragged".
  * expand.model.frame() looked up variables in the wrong environment
    when applied to models fitted without data.  Reported in
    PR#18414.
  * time() now (also) uses the ts.eps = getOption("ts.eps") argument
    and thus by default rounds values very close to the start (or
    end) of a year.  Based on a proposal by Andre"i V. Kostyrka on
    R-help.
  * Printing of a factanal() result with just one factor and sort =
    TRUE now works regularly, fixing PR#17863 by Timothy Bates,
    thanks to the 'R Contributors' working group.
  * Printing 0-length objects of class "factor", "roman", "hexmode",
    "octmode", "person", "bibentry", or "citation" now prints
    something better, one of which fixes PR#18422, reported by
    Benjamin Feakins.
  * Sys.timezone() queries timedatectl only if systemd is loaded;
    addressing a report by Jan Gorecki in PR#17421.
  * The formula method of cor.test() had scoping problems when
    environment(formula) was not the calling environment; reported
    with a patch proposal by Mao Kobayashi in PR#18439.
  * attach() of an environment with active bindings now preserves the
    active bindings.  Reported by Kevin Ushey in PR#18425.
  * BLAS detection now works also with system-provided libraries not
    available as regular files.  This fixes detection of the
    Accelerate framework on macOS since Big Sur.  Reported by David
    Novgorodsky.
  * download.file() gives a helpful error message in case of an
    invalid download.file.method option, thanks to Colin Fay's report
    in PR#18455.
  * Sporadic crashes of Rterm when using completion have been fixed.
  * Rprof() is now more reliable.  A livelock in thread
    initialization with too short sampling interval has been fixed on
    macOS.  A deadlock in using the C runtime has been fixed on
    Windows.  A potential deadlock has been prevented on Unix.
  * Cursor placement in Rgui now works even after a fixed-width font
    is selected.
  * Mandatory options (options()) are now set on startup so that
    saving and restoring them always works (PR#18372).
  * Package installation, R CMD INSTALL or install.packages(*), now
    parses each of the &lt;pkg&gt;/R/*.R files individually instead of
    first concatenating and then parse()ing the large resulting file.
    This allows parser or syntax errors to be diagnosed with correct
    file names and line numbers, thanks to Simon Dedman's report and
    Bill Dunlap's patch in PR#17859.
    This _does_ require syntactically self contained R source files
    now, fixing another inadvertent bug.
  * predict.lm(&lt;model with offset&gt;) now finds the offset in the
    correct environment, thanks to Andr'e Gillibert's report and patch
    in PR#18456.
  * getInitial(&lt;formula&gt;) now finds the selfStart model in the
    correct environment.  (Reported by Ivan Krylov in PR#18368.)
  * Fix for possible segfault when using recently-added graphics
    features, such as gradients, clipping paths, masks, and groups
    with pdf(file=NULL).
  * class(m) &lt;- class(m) no longer changes a matrix m by adding a
    class _attribute_.
  * packageDate(pkg) now only warns once if there is no pkg.
  * When ts() creates a multivariate time series, "mts", it also
    inherits from "array" now, and is.mts() is documented _and_
    stricter.
  * Rd2txt() now preserves line breaks of \verb Rd content and from
    duplicated \cr.  The former also fixes the rendering of verbatim
    output from Rd \Sexpr in plain-text help.
  * uniroot(f, interval) should no longer wrongly converge _outside_
    the interval in some cases where abs(f(x)) == Inf for an x at the
    interval boundary, thanks to posts by Ben Bolker and Serguei
    Sokol on R-devel.
  * Vectorized alpha handling in palette functions such as in gray(),
    rainbow(), or hcl.colors() works correctly now, thanks to Achim
    Zeileis' report and patch in PR#18476.
  * Formatting and print()ing of bibentry objects has dropped the
    deprecated citation.bibtex.max argument, such that the bibtex
    argument's default for print.bibentry() depends directly on the
    citation.bibtex.max option, whereas in format.bibentry() the
    option no longer applies.
  * Attempting to use a character string naming a foreign function
    entry point in a foreign function call in a package will now
    signal an error if the packages has called R_forceSymbols to
    specify that symbols must be used.
  * An error in table() could permanently set options(warn=2)
    promoting all subsequent warnings to errors.
  * The sigma() function gave misleading results for binary GLMs.  A
    new method for objects of class "glm" returns the square root of
    the estimate of the dispersion parameter using the same
    calculation as summary.glm().
  * bs() and ns() in the (typical) case of automatic knot
    construction, when some of the supposedly inner knots coincide
    with boundary knots, now moves them inside (with a warning),
    building on PR#18442 by Ben Bolker.
  * R CMD on Windows now skips the site profile with --no-site-file
    and --vanilla even when R_PROFILE is set (PR#18512, from Kevin
    Ushey).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1686916800">- CHANGES IN R 4.3.1:
  C-LEVEL FACILITIES:
  * The C-level API version of R's integrate(), Rdqags() in Applic.h,
    now returns the correct number of integrand evaluations neval,
    fixing PR#18515 reported and diagnosed by Stephen Wade.
  * The C prototypes for LAPACK calls dspgv and dtptrs in
    R_exts/Lapack.h had one too many and one too few character length
    arguments - but this has not caused any known issues. To get the
    corrected prototypes, include
    [#]include &lt;Rconfig.h&gt; // for PR18534fixed
    [#]ifdef PR18534fixed
    [#] define usePR18534fix 1
    [#]endif
    [#]include &lt;R_exts/Lapack.h&gt;
    in your C/C++ code (PR#18534).
  INSTALLATION:
  * Many of the checks of esoteric Internet operations and those
    using unreliable external sites have been moved to a new target
    that is not run by default and primarily intended for the core
    developers.  To run them use
    cd tests; make test-Internet-dev
  BUG FIXES:
  * .S3methods(), typically called from methods(), again marks
    methods from package base as visible.
    Also, the visibility of non-base methods is again determined by
    the method's presence in search().
  * tools::Rdiff() is now more robust against invalid strings, fixing
    installation tests on Windows without Rtools installed
    (PR#18530).
  * Fix (new) bug in hcl.colors(2, *), by Achim Zeileis (PR#18523).
  * head(., &lt;illegal&gt;) and tail(..) now produce more useful "Error in
    ...." error messages, fixing PR#18362.
  * Package code syntax on Windows is checked in UTF-8 when UTF-8 is
    the native encoding.
  * na.contiguous(x) now also returns the first run, when it is at
    the beginning and there is a later one of the same length;
    reported to R-devel, including a fix, by Georgi Boshnakov.
    Further, by default, it modifies only an existing attr(*,"tsp")
    but otherwise no longer sets one.
  * chol(&lt;not pos.def&gt;, pivot = &lt;T|F&gt;) now gives a correct error or
    warning message (depending on pivot), thanks to Mikael Jagan's
    (PR#18541).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1699012800">- CHANGES IN R 4.3.2:
  NEW FEATURES:
  * The default initialization of the "repos" option from the
    repositories file at startup can be skipped by setting
    environment variable R_REPOSITORIES to NULL such that
    getOption("repos") is empty if not set elsewhere.
  * qr.X() is now an implicit S4 generic in methods.
  * iconv(to = "ASCII//TRANSLIT") is emulated using substitution on
    platforms which do not support it (notably Alpine Linux).  This
    should give a human-readable conversion in ASCII on all platforms
    (rather than NA_character_).
  * trans3d() gains options continuous and verbose addressing the
    problem of possible "wrap around" when projecting too long
    curves, as reported by Achim Zeileis in PR#18537.
  * tools::showNonASCII() has been rewritten to work better on macOS
    14 (which has a changed implementation of iconv()).
  * tiff(type = "quartz") (the default on macOS) now warns if
    compression is specified: it continues to be ignored.
  INSTALLATION on a UNIX-ALIKE:
  * There is some support for building with Intel's LLVM-based
    compilers on x86_64 Linux, such as (C) icx, (C++) ipcx and
    (Fortran) ifx from oneAPI 2023.x.y.
  * There is support for using LLVM's flang-new as the Fortran
    compiler from LLVM 16.0.x (preferably 17.0.0 or later).
  UTILITIES:
  * R CMD check reports the use of the Fortran 90 random number
    generator RANDOM_NUMBER() and the subroutines to initialize it.
    'Writing R Extensions' has example code to use R's RNGs from
    Fortran.
  BUG FIXES:
  * substr(x, n, L) &lt;- cc now works (more) correctly for multibyte
    UTF-8 strings x when L &gt; nchar(x), thanks to a report and patch
    by 'Architect 95'.
  * contrib.url(character()) now returns 0-length character() as
    documented, which also avoids spurious warnings from
    available.packages() et al. in the edge case of an empty vector
    of repository URLs.
  * readChar(., 4e8) no longer fails, thanks to Kodi Arfer's report
    (PR#18557).
  * lapply(&lt;list&gt;, as.data.frame) no longer warns falsely for some
    base vector components.
  * Communication between parent and child processes in the multicore
    part of parallel could fail on platforms that do not support an
    arbitrarily large payload in system functions read()/write() on
    pipes (seen on macOS where a restriction to INT_MAX bytes is
    documented, without doing a partial read unlike Linux). The
    payload is now split into 1Gb chunks to avoid that problem.
    (PR#18571)
  * qqplot(x,y, conf.level=.) gives better confidence bounds when
    length(x) != length(y), thanks to Alexander Ploner's report and
    patch proposal (PR#18557).
  * norm(&lt;0-length&gt;, "2") now gives zero instead of an error, as all
    the other norm types, thanks to Mikael Jagan's PR#18542.
  * Build-stage Rd macros \packageAuthor and \packageMaintainer now
    process Authors@R, fixing NA results when the package DESCRIPTION
    omits Author and Maintainer fields.
  * Formatting and printing complex numbers could give things like
    0.1683-0i because of rounding error: -0i is now replaced by +0i.
  * postscript() refused to accept a title comment containing the
    letter "W" (PR#18599).
  * isoreg(c(1,Inf)) signals an error instead of segfaulting, fixing
    PR#18603.
  * tiff(type = "Xlib") was only outputting the last page of
    multi-page plots.
  * tools::latexToUtf8() again knows about \~{n} and other letters
    with tilde, fixing a regression in R 4.3.0, and about \^{i} as an
    alternative to \^{\i} (similarly with other accents).
    Furthermore, LaTeX codes for accented I letters are now correctly
    converted, also fixing related mistakes in
    tools::encoded_text_to_latex().
  * tar(*, tar = "internal") no longer creates out-of-spec tar files
    in the very rare case of user or group names longer than 32
    bytes, fixing PR#17871 with thanks to Ivan Krylov.
  * When using the "internal" timezone datetime code, adding a
    fraction of a second no longer adds one second, fixing PR#16856
    from a patch by Ivan Krylov.
  * tools::checkRd() no longer produces spurious notes about
    "unnecessary braces" from multi-line Rd results of \Sexpr macros.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1709208000">- CHANGES IN R 4.3.3:
  NEW FEATURES:
  * iconv() now fixes up variant encoding names such as "utf8"
    case-insensitively.
  DEPRECATED AND DEFUNCT:
  * The legacy encoding = "MacRoman" is deprecated in pdf() and
    postscript(): support was incomplete in earlier versions of R.
  BUG FIXES:
  * Arguments are now properly forwarded to methods on S4 generics
    with ... in the middle of their formal arguments. This was broken
    for the case when a method introduced an argument but did not
    include ... in its own formals. Thanks to Herv'e Pag`es for the
    report PR#18538.
  * Some invalid file arguments to pictex(), postscript() and xfig()
    opened a file called NA rather than throw an error.  These
    included postscript(NULL) (which some people expected to work
    like pdf(NULL)).
  * Passing filename = NA to svg(), cairo_pdf(), cairo_ps() or the
    Cairo-based bitmap devices opened a file called NA: it now throws
    an error.
  * quartz(file = NA) opened a file called NA, including when used as
    a Quartz-based bitmap device.  It now gives an error.
  * rank(&lt;long vector&gt;) now works, fixing PR#18617, thanks to Ilia
    Kats.
  * seq.int() did not adequately check its length.out argument.
  * match(&lt;POSIXct&gt;, .) is correct again for differing time zones,
    ditto for "POSIXlt", fixing PR#18618 reported by Bastian Klein.
  * drop.terms(*, dropx = &lt;0-length&gt;) now works, fixing PR#18563 as
    proposed by Mikael Jagan.
  * drop.terms(*) keeps + offset(.) terms when it should, PR#18565,
    and drop.terms() no longer makes up a response, PR#18566, fixing
    both bugs thanks to Mikael Jagan.
  * getS3method("t", "test") no longer finds the t.test() function,
    fixing PR#18627.
  * pdf() and postscript() support for the documented Adobe encodings
    "Greek" and "Cyrilllic" was missing (although the corresponding
    Windows' codepages could be used).
  * Computations of glyph metric information for pdf() and
    postscript() did not take into account that transliteration could
    replace one character by two or more (only seen on macOS 14) and
    typically warned that the information was not known.
  * rank(x) no longer overflows during integer addition, when
    computing rank average for largish but not-yet long vector x,
    fixing PR#18630, thanks to Ilia Kats.
  * list.files() on Windows now returns also files with names longer
    that 260 bytes (the Windows limit is 260 characters).
    Previously, some file names particularly with 'East Asian'
    characters were omitted.
  * cov2cor(&lt;0 x 0&gt;) now works, fixing PR#18423 thanks to Mikael
    Jagan and Elin Waring.
  * cov2cor(&lt;negative diagonal&gt;) and similar now give one warning
    instead of two, with better wording, fixing PR#18424 thanks to
    Mikael Jagan.
  * tools:: startDynamicHelp() now ensures port is in proper range,
    fixing PR#18645.
  * pbeta(x, a,b) is correct now for x=0 or 1 in the boundary cases
    where a or b or both are 0, fixing PR#18672 thanks to Michael
    Fay.
  * pmatch(x, table) for large table, also called for data frame row
    selection, dfrm[nm, ], is now interruptible, fixing PR#18656.
  * predict(&lt;rank-deficient lm&gt;, newdata=*) fix computing of nbasis,
    see Russ Lenth's comment 29 in PR#16158.
  * Added a work-around for a bug in macOS 14.3.1 and higher which
    prevents R plots in the Quartz Cocoa device from updating on
    screen.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1713960000">- CHANGES IN R 4.4.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Startup banners, R --version, sessionInfo() and R CMD check no
    longer report (64-bit) as part of the platform as this is almost
    universal - the increasingly rare 32-bit platforms will still
    report (32-bit).
    On Windows, ditto for window titles.
  * is.atomic(NULL) now returns FALSE, as NULL is not an atomic
    vector.  Strict back-compatibility would replace is.atomic(foo)
    by (is.null(foo) || is.atomic(foo)) but should happen only
    sparingly.
  NEW FEATURES:
  * The confint() methods for "glm" and "nls" objects have been
    copied to the stats package.  Previously, they were stubs which
    called versions in package MASS. The MASS namespace is no longer
    loaded if you invoke (say) confint(glmfit).  Further, the "glm"
    method for profile() and the plot() and pairs() methods for class
    "profile" have been copied from MASS to stats.  (profile.nls()
    and plot.profile.nls() were already in stats.)
  * The confint() and profile methods for "glm" objects have gained a
    possibility to do profiling based on the Rao Score statistic in
    addition to the default Likelihood Ratio. This is controlled by a
    new test = argument.
  * The pairs() method for "profile" objects has been extended with a
    which = argument to allow plotting only a subset of the
    parameters.
  * The "glm" method for anova() computes test statistics and
    p-values by default, using a chi-squared test or an F test
    depending on whether the dispersion is fixed or free.  Test
    statistics can be suppressed by giving argument test a false
    logical value.
  * In setRepositories() the repositories can be set using their
    names via name = instead of index ind =.
  * methods() and .S3methods() gain a all.names option for the (rare)
    case where functions starting with a . should be included.
  * Serializations can now be interrupted (e.g., by Ctrl-C on a
    Unix-alike) if they take too long, e.g., from save.image(),
    thanks to suggestions by Ivan Krylov and others on R-devel.
  * New startup option --max-connections to set the maximum number of
    simultaneous connections for the session.  Defaults to 128 as
    before: allowed values up to 4096 (but resource limits may in
    practice restrict to smaller values).
  * R on Windows (since Windows 10 2004) now uses the new Segment
    Heap allocator. This may improve performance of some
    memory-intensive applications.
  * When R packages are built, typically by R CMD build &lt;pkg&gt;, the
    new --user=&lt;build_user&gt; option overrides the (internally
    determined) user name, currently Sys.info()["user"] or LOGNAME.
    This is a (modified) fulfillment of Will Landau's suggestion in
    PR#17530.
  * tools::testInstalledBasic() gets new optional arguments outDir
    and testSrcdir, e.g., allowing to use it in a &lt;builddir&gt; !=
    &lt;srcdir&gt; setup, and in standard "binary" Windows installation
  * if* a source tests/ folder is present.
  * range(&lt;DT_with_Inf&gt;, finite = TRUE) now work for objects of class
    "Date", "POSIXct", and "POSIXlt" with infinite entries,
    analogously to range.default(), as proposed by Davis Vaughan on
    R-devel.  Other range()-methods can make use of new function
    .rangeNum().
  * New .internalGenerics object complementing .S3PrimitiveGenerics,
    for documentation and low-level book-keeping.
  * grid() now invisibly returns the x- and y- coordinates at which
    the grid-lines were drawn.
  * norm(., type) now also works for complex matrices.
  * kappa(., exact = TRUE, norm = *) now works for all norms and also
    for complex matrices.  In symmetric / triangular cases, the new
    argument uplo = "U" | "L" allows the upper or lower triangular
    part to be specified.
  * memDecompress(type = "unknown") recognizes compression in the
    default 'zlib' format as used by memCompress(type = "gzip").
  * memCompress() and memDecompress() will use the libdeflate library
    (&lt;https://github.com/ebiggers/libdeflate&gt;) if installed.  This
    uses the same type of compression for type = "gzip" but is 1.5-2x
    faster than the system libz library on some common platforms: the
    speed-up may depend on the library version.
  * diff() for objects of class "Date", "POSIXct", and "POSIXlt"
    accepts a units argument passed via ....
  * Dynamic help now does a much better job of rendering package
    DESCRIPTION metadata.
  * Rprof() gains an event argument and support for elapsed (real)
    time profiling on Unix (PR#18076).
  * filled.contour() gains a key.border argument.
  * tools::update_pkg_po() gets arguments pot_make and mo_make for
    _not_ re-making the corresponding files, and additionally a
    verbose argument.
  * Hexadecimal string colour specifications are now accepted in
    short form, so, for example, we can use "#123", which is
    equivalent to "#112233".
    Thanks to MikeFC for the original idea and Ella Kaye, Malcolm
    Barrett, George Stagg, and Hanne Oberman for the patch.
  * Plain-text help shows \var markup by angle brackets.
  * The new experimental primitive function declare() is intended to
    eventually allow information about R code to be communicated to
    the interpreter, compiler, and code analysis tools. The syntax
    for declarations is still being developed.
  * Functions psmirnov(), qsmirnov() and rsmirnov() in package stats
    have had argument two.sided renamed to alternative, to take into
    account that the permutation distributions of the one-sided
    statistics can be different in the case of ties.  Consequence of
    PR#18582.
  * sort() is now an implicit S4 generic in methods.
  * Formatting and printing, format(z), print(z), of complex vectors
    z no longer zap relatively small real or imaginary parts to zero,
    fixing PR#16752.  This is an API change, as it was documented
    previously to round real and imaginary parts together on purpose,
    producing nicer looking output.  As mentioned, e.g. in the PR,
    this change is compatible with many other "R-like" programming
    environments.
    We have simplified the internal code and now basically format the
    real and imaginary parts independently of each other.
  * New experimental functions Tailcall() and Exec() to support
    writing stack-space-efficient recursive functions.
  * Where characters are attempted to be plotted by pdf(),
    postscript() and xfig() which are not in the selected 8-bit
    character set (most often Latin-1) and the R session is using a
    UTF-8 locale, the warning messages will show the UTF-8 character
    rather than its bytes and one dot will be substituted per
    character rather than per byte.  (Platforms whose iconv() does
    transliteration silently plot the transliteration.)
    In a UTF-8 locale some transliterations are now done with a
    warning (e.g., dashes and Unicode minus to hyphen, ligatures are
    expanded, permille (‰) is replaced by o/oo), although the OS may
    have got there first.  These are warnings as they will continue
    to be replaced by dots in earlier versions of R.
  * The matrix multiplication functions crossprod() and tcrossprod()
    are now also primitive and S3 generic, as %*% had become in R
    4.3.0.
  * source() and example() have a new optional argument catch.aborts
    which allows continued evaluation of the R code after an error.
  * The non-Quartz tiff() devices allow additional types of
    compression if supported by the platform's libtiff library.
  * The list of base and recommended package names is now provided by
    tools::standard_package_names().
  * cairo_pdf() and cairo_ps() default to onefile = TRUE to closer
    match pdf() and postscript().
  * New option catch.script.errors provides a documented way to catch
    errors and then continue in non-interactive use.
  * L %||% R newly in base is an expressive idiom for the phrases
    if(!is.null(L)) L else R or if(is.null(L)) R else L.
  * The return value from warnings() now always inherits from
    "warnings" as documented, now also in the case of no warnings
    where it previously returned NULL.
  * as.complex("1i") now returns 0 + 1i instead of NA with a warning.
  * z &lt;- c(NA, 1i) now keeps the imaginary part Im(z[1]) == 0, no
    longer coercing to NA_complex_.  Similarly, cumsum(z) correctly
    sums real and imaginary parts separately, i.e., without
    "crosstalk" in case of NAs.
  * On Alpine Linux iconv() now maps "latin2", "latin-2", "latin9"
    and "latin-9" to encoding names the OS knows about
    (case-insensitively).
  * iconv(sub = "Unicode") now always zero-pads to four (hex) digits,
    rather than to 4 or 8.  (This seems to have become the convention
    once Unicode restricted the number of Unicode points to 2^21 - 1
    and so will never need more than 6 digits.)
  * NCOL(NULL) now returns 0 instead of 1, for consistency with
    cbind().
  * The information for the Euro glyph missing from the Adobe .afm
    files for the Courier, Helvetica and Times families has been
    copied from their URW equivalents - this will improve vertical
    centring in the pdf() and postscript() devices.
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.12.0.  The changes are almost entirely cosmetic.
  * The included LAPACK sources have been updated to version 3.12.0
    and some further double-complex routines added.
  * There are new font families for the 2014--5 URW 2.0 fonts (see
    ?pdf) which are included in recent versions of Ghostscript.
    These have font widths for most Greek glyphs and a few others
    which were missing from the original versions (whose font
    families remain available for reproducibility, although
    Ghostscript-based viewers will render using the 2.0 versions).
  * Improve the large-n efficiency of as.matrix(&lt;dist&gt;), thanks an R
    contributors effort, notably by Tim Taylor and Heather Turner,
    see PR#18660.
  * The default and numeric methods of all.equal() get a check.class
    option.
  * zapsmall() gets new optional arguments, function mFUN and min.d,
    for extra flexibility; fulfills a wish in PR#18199.  Also, it is
    now an implicit S4 generic in package methods.
  * The Rd filter for aspell() gains an ignore argument.
  * New generic function sort_by(), primarily useful for the
    data.frame method which can be used to sort rows of a data frame
    by one or more columns.
  * The icence headers for the RPC code in src/extra/xdr have been
    updated to use the GPL-compatible licence published by Oracle
    America in 2010.
  * New function pkg2HTML() in tools to create single-page HTML
    reference manuals for R packages.
  * The byte code evaluator now uses less C stack space for recursive
    calls to byte-compiled functions. It also makes more of an effort
    to avoid allocations for scalar return values.
  * New completion option backtick (disabled by default) allows
    non-syntactic completions to be wrapped in backquotes. This is
    currently only useful for Jupyter notebooks via the IRkernel
    package, and may cause problems for other backends.
  INSTALLATION:
  * The parser has been updated to work with bison 3.8.2, which is
    now used for the pre-generated parsers in gram.c, file.c, and
    gramRd.c. A few parser error messages have changed, which may
    affect code that relies on exact messages.
  INSTALLATION on a UNIX-ALIKE:
  * System valgrind headers are now required to use configure option
  - -with-valgrind-instrumentation with value 1 or 2.
  * configure will warn if it encounters a 32-bit build, as that is
    nowadays almost untested.
  * Environment variable R_SYSTEM_ABI is no longer used and so no
    longer recorded in etc/Renviron (it was not on Windows and was
    only ever used when preparing package tools).
  * If the libdeflate library and headers are available, libdeflate
    rather than libz is used to (de)compress R objects in lazy-load
    databases.  Typically tasks spend up to 5% of their time on such
    operations, although creating lazy-data databases is one of the
    exceptions.
    This can be suppressed if the library is available by the
    configure option --without-libdeflate-compression.
  * configure option --enable-lto=check has not worked reliably since
    2019 and has been removed.
  * The minimum autoconf requirement for a maintainer build has been
    increased to autoconf 2.71.
    It is intended to increase this to 2.72 for R 4.5.0: the
    distributed configure file was generated using 2.72.
  * The minimum version requirement for an external LAPACK has been
    reduced to 3.9.0.
  * No default C++ compiler is set if no C++17 compiler is detected:
    there is no longer an automatic fallback to C++14 or C++11.
    Compilers from the last five years should have sufficient
    support: for others macros CXX and CXXSTD can be set in file
    config.site to provide a fallback if needed.
    The Objective-C++ compiler now by default uses the standard
    selected by R for C++ (currently C++17) rather than the default
    standard for the C++ compiler (which on macOS is still C++98).
  INSTALLATION on macOS:
  * A new configure option --with-newAccelerate makes use of Apple's
    'new' BLAS / LAPACK interfaces in their Accelerate framework.
    Those interfaces are only available in macOS 13.3 or later, and
    building requires SDK 13.3 or later (from the Command Line Tools
    or Xcode 14.3 or later).
    By default the option uses new Accelerate for BLAS calls: to also
    use it for LAPACK use option --with-newAccelerate=lapack.  The
    later interfaces provide LAPACK 3.9.1 rather than 3.2.1: 3.9.1 is
    from 2021-04 and does not include the improved algorithms
    introduced in LAPACK 3.10.0 (including for BLAS calls).
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools44, an update of the Rtools43 toolchain.  It is
    based on GCC 13 and newer versions of MinGW-W64, binutils and
    libraries (targeting 64-bit Intel CPUs).  R-devel can no longer
    be built using Rtools43 without changes.
  * Rtools44 has experimental support for 64-bit ARM (aarch64) CPUs
    _via_ the LLVM 17 toolchain using lld, clang/flang-new and
    libc++.
  UTILITIES:
  * R CMD check notes when S4-style exports are used without
    declaring a strong dependence on package methods.
  * tools::checkRd() (used by R CMD check) detects more problems with
    \Sexpr-based dynamic content, including bad nesting of \Sexprs
    and invalid arguments.
  * tools::checkRd() now reports Rd titles and section names ending
    in a period; this is ignored by R CMD check unless environment
    variable _R_CHECK_RD_CHECKRD_MINLEVEL_ is set to -5 or smaller.
  * R CMD check now notes Rd files without an \alias, as long
    documented in 'Writing R Extensions' §1.3.1.  The check for a
    missing \description has been moved from tools::checkRd() to
    tools::checkRdContents().
  * R CMD check now visits inst/NEWS.Rd and OS-specific man
    subdirectories when checking Rd files.
  * tools::checkDocFiles() and tools::checkRdContents() now also
    check internal Rd files by default, but "specially" (ignoring
    missing documentation of arguments).
  * R CMD Rdiff gets option --useEx.
  * R CMD check now warns on non-portable uses of Fortran KIND such
    as INTEGER(KIND=4) and REAL(KIND=8).
    To see the failing lines set environment variable
    _R_CHECK_FORTRAN_KIND_DETAILS_ to a true value.
  * When checking Rd files, R CMD check now notes some of the "lost
    braces" that tools::checkRd() finds.  Typical problems are Rd
    macros missing the initial backslash (e.g., code{...}), in-text
    set notation (e.g., {1, 2}, where the braces need escaping), and
    \itemize lists with \describe-style entries of the form
    \item{label}{description}.
  * R CMD INSTALL (and hence check) will compile C++ code with
  - DR_NO_REMAP if environment variable _R_CXX_USE_NO_REMAP_ is set
    to a true value.  It is planned that this will in future become
    the default for compiling C++.
  * The new built-in Rd macro \dontdiff{} can be used to mark example
    code whose output should be ignored when comparing check output
    to reference output (tests/Examples/&lt;pkg&gt;-Ex.Rout.save).  The
    \dontdiff tag, like \donttest, is _not_ shown on the rendered
    help page, so provides a clean alternative to ##
    IGNORE_RDIFF_(BEGIN|END) comments.
  * R CMD build when there is no NAMESPACE, now uses the recommended
    exportPattern("^[^.]"), instead of exporting everything.
  * R CMD check now warns about non-ASCII characters in the NAMESPACE
    file (in addition to R files). Such packages are not portable and
    may fail to install on some platforms.
  C-LEVEL FACILITIES:
  * Headers R_ext/Applic.h and R-ext/Linpack.h used to include
    R_ext/BLAS.h although this was undocumented and unneeded by their
    documented entry points.  They no longer do so.
  * New function R_missing(), factored out from do_missing(), used to
    fix PR#18579.
  * SEXP type S4SXP has been renamed to OBJSXP to support
    experimenting with alternative object systems.  The S4SXP value
    can still be used in C code but is now deprecated.  Based on
    contributions from the R Consortium's Object-Oriented Programming
    Working Group.
  * New function pow1p(x,y) for accurate (1+x)^y.
  * mkCharLenCE was incorrectly documented to take a size_t length
    but was implemented with int (and character strings in R are
    limited to 2^31 - 1 bytes).
  DEPRECATED AND DEFUNCT:
  * data() no longer handles zipped data from long-defunct (since R
    2.13.0) --use-zip-data installations.
  * The legacy graphics devices pictex() and xfig() are now
    deprecated.  They do not support recent graphics enhancements and
    their font handling is rudimentary. The intention is to retain
    them for historical interest as long as they remain somewhat
    functional.
  * Support for encoding = "MacRoman" has been removed from the pdf()
    and postscript() devices - this was a legacy encoding supporting
    classic macOS up to 2001 and no longer has universal libiconv
    support.
  * is.R() is deprecated as no other S dialect is known to be in use
    (and this could only identify historical dialects, not future
    ones).
    Further information on calls can be obtained by setting the
    environment variable _R_DEPRECATED_IS_R_ to error which turns the
    deprecation warning into an error and so by default gives a
    traceback.  (This is done by R CMD check --as-cran.)
  * UseMethod() no longer forwards local variables assigned in the
    generic function into method call environments before evaluating
    the method body. This makes method calls behave more like
    standard function calls and makes method code easier to analyze
    correctly.
  * The twelve as.data.frame.&lt;class&gt;() methods which were deprecated
    only via _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ and in R CMD
    check --as-cran are formally deprecated now in favour of calling
    as.data.frame() or as.data.frame.vector().  The deprecation
    "check" now works also when as.data.frame() is S4 generic thanks
    to Ivan Krylov.
  * The default method for the directional comparison operators &lt;, &gt;,
    &lt;=, and &gt;= now signals an error when one of the operands is a
    language object, i.e. a symbol or a call.
  * For terms.formula(), deprecate abb and neg.out arguments
    _formally_ in addition to just documenting it.
  BUG FIXES:
  * The methods package is more robust to not being attached to the
    search path.  More work needs to be done.
  * pairwise.t.test() misbehaved when subgroups had 0 DF for
    variance, even with pool.sd = TRUE.  (PR#18594 by Jack Berry).
  * Probability distribution functions [dpq]&lt;distrib&gt;(x, *), but also
    bessel[IKJY](x, .) now consistently preserve attributes(x) when
    length(x) == 0, e.g., for a 2 x 0 matrix, thanks to Karolis
    Koncevičius' report PR#18509.
  * Group "Summary" computations such as sum(1:3, 4, na.rm = 5, NA,
    7, na.rm = LL) now give an error instead of either 17 or NN for
    LL true or false, as proposed by Ivan Krylov on the R-devel
    mailing list.  (This also means it is now an error to specify
    na.rm more than once.)
  * as.complex(x) now returns complex(real = x, imaginary = 0) for
    _all_ numerical and logical x, notably also for NA or
    NA_integer_.
  * Directories are now omitted by file.copy(, recursive = FALSE) and
    in file.append() (PR#17337).
  * gsub() and sub() are now more robust to integer overflow when
    reporting errors caused by too large input strings (PR#18346).
  * Top-level handlers are now more robust to attempts to remove a
    handler whilst handlers are running (PR#18508).
  * The handling of Alt+F4 in dialogs created on Windows using
    GraphApp has been fixed (PR#13870).
  * density() more consistently computes grid values for the
    FFT-based convolution, following Robert Schlicht's analysis and
    proposal in PR#18337, correcting density values typically by a
    factor of about 0.999.  Argument old.coords = TRUE provides back
    compatibility.
  * palette.colors() gains a name argument that defaults to FALSE
    controlling whether the vector of colours that is returned has
    names (where possible).  PR#18529.
  * tools::xgettext() no longer extracts the (non-translatable) class
    names from warningCondition and errorCondition calls.
  * S3method(&lt;gen&gt;, &lt;class&gt;, &lt;func&gt;) in the NAMESPACE file now works
    (again) when &lt;func&gt; is visible from the namespace, e.g.,
    imported, or in base.
  * getParseData(f) now also works for a function defined in the
    first of several &lt;pkg&gt;/R/*.R source files, thanks to Kirill
    Müller's report and Duncan Murdoch's patch in PR#16756.
  * Rd \Sexpr macros with nested #ifdef conditionals were not
    processed.
  * A non-blocking connection with non-default encoding (such as a
    socket) now correctly returns from readLines() after new data has
    arrived also when its EOF had been reached previously.  Thanks to
    Peter Meilstrup's report on R-devel and Ivan Krylov's report and
    patch proposal in PR#18555.
  * tools::checkRdContents() failed to detect empty argument
    descriptions when they spanned multiple lines, including those
    generated by prompt().  These cases are now noted by R CMD check.
  * Plain-text help no longer outputs spurious colons in the
    arguments list (for multi-line \item labels in the Rd source).
  * kappa() and rcond() work correctly in more cases; kappa(., norm =
    "2") now warns that it computes the 1-norm with (default) exact =
    FALSE; prompted by Mikael Jagan's quite comprehensive PR#18543.
  * Rd skeletons generated by prompt() or promptData() now use a
    dummy title (so R CMD build works).  tools::checkRdContents() has
    been updated to detect such template leftovers, including from
    promptPackage().
  * When S4 method dispatch fails because no method was found, the
    error message now includes the signature argument names; thanks
    to Michael Chirico's proposal on the R-devel list.
  * withAutoprint({ .. }) now preserves srcrefs previously lost,
    thanks to Andrew Simmons' report plus fix in PR#18572.
  * transform.data.frame() no longer adjusts names; in particular,
    untransformed variables are kept as-is, including those with
    syntactically invalid names (PR#17890).
  * The keep.source option for Rd \Sexpr blocks is no longer ignored.
  * The formula methods for t.test() and wilcox.test() now catch when
    paired is passed, addressing PR#14359; use Pair(x1, x2) ~ 1 for a
    paired test.
  * The level reported in the browser prompt was often too large. It
    now shows the number of browser contexts on the stack.
  * For cbind() and rbind(), the optional deparse.level argument is
    now properly passed to methods, thanks to Mikael Jagan's PR#18579
    and comments there.
  * Some error and warning messages for large ('long vector')
    matrix(v, nr, nc) and dim(m) &lt;- d are now correct about sizes,
    using long long formatting, fixing PR#18612 (and more) reported
    by Mikael Jagan.
  * readChar(useBytes = TRUE) now terminates strings even when the
    underlying connection uses extra spaces in the input buffer.
    This fixes problems with extra garbage seen with gzip
    connections, PR#18605.
  * Named capture in PCRE regular expressions now works also with
    more than 127 named groups (PR#18588).
  * Datetime functions are now robust against long jumps when dealing
    with internal time zone changes.  This avoids confusing warnings
    about an invalid time zone, previously triggered by turning
    warnings into errors or handling them via tryCatch (PR#17966,
    PR#17780).
  * Datetime functions now restore even an empty TZ environment
    variable after internal time zone changes (PR#17724).  This makes
    results of datetime functions with this (typically unintentional)
    setting more predictable.
  * drop.terms(*) now drops response as by default, keep.response =
    FALSE, fixing PR#18564 thanks to Mikael Jagan.
  * dummy.coef(.) now also works for lm()-models with character
    categorical predictor variables rather than factor ones, fixing
    PR#18635 reported by Jinsong Zhao.
  * formals(f) &lt;- formals(f) now also works for a function w/o
    arguments and atomic _constant_ body(f).
  * Correct as.function(&lt;invalid list&gt;, .)'s error message.
  * removeSource() is yet more thorough in finding and removing
    "srcref" and the other source references from parsed R language
    chunks, fixing PR#18638 thanks to Andrew Simmons.
  * dgeom() is more accurate now, notably when its result is very
    small, fixing PR#18642 thanks to the proposal of Morten Welinder,
    also improving other instances where C level binom_raw(x, n, ..)
    has x == 0 or x== n.
  * warning() with options(warn = 1) has improved output for
    multi-line messages.
  * axis.Date() and axis.POSIXct() now respect the par("lab") setting
    for the number of pretty() intervals.
  * Comparisons for language objects (which are based on deparsing)
    are now more careful about using accurate deparsed results
    (PR#18676).
  * Plain-text help (Rd2txt) now correctly preserves blank lines
    following single-line \dontrun code.
  * &lt;POSIXlt&gt;[*] no longer sets wrong "balanced" attribute, fixing
    PR#18681 thanks to Mikael Jagan.
  * str(&lt;classed-call&gt;) now deparses the call as expected, fixing
    PR#18684, reported by Dave Slager.
  * In Rd examples, code following the closing brace of a \dontrun,
    \dontshow or \donttest tag on the same line is no longer skipped
    when R CMD check runs the examples.
  * as.data.frame(matrix(*, ncol=0)) now gets valid names() and
    colnames(); reported by Davis Vaughan on the R-devel list.
  * Internal Mathlib function stirlerr(n) is now almost fully
    (52-bit) accurate for all n &gt;= ~5.9 and more accurate also in the
    range 1 -- 5.9.  This entails small ("after 12th decimal")
    changes in density functions, e.g., dgamma() in _some_ regions of
    their support.  The fix was partly prompted by Morten Welinder's
    PR#18640.
  * Numbers like 9876543.2 are now considered non-integer by Mathlib
    internal R_nonint(), amending original fix of PR#15734.
  * Rd comment lines no longer cause broken paragraphs in the
    rendered PDF and plain-text help. In code blocks, pure comment
    lines (starting with %) no longer produce an empty line.
  * xtabs(Freq ~ .) now consistently defaults to na.action = na.pass,
    using na.rm = FALSE (added as an argument) when summing over Freq
    (PR#17770).
  * tools::testInstalledPackage() is no longer silent about failures
    from running examples or tests and its return code no longer
    ignores failures from checking vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1718366400">- CHANGES IN R 4.4.1:
  C-LEVEL FACILITIES:
  * Functions R_atof and R_strtod declared in header R_ext/Utils.h
    are now documented in 'Writing R Extensions' and so formally part
    of the API.
  * The non-API entry points Rf_setSVector, Rf_StringFalse,
    Rf_StringTrue and Rf_isBlankString have been added to those
    reported by R CMD check.
  * The new function Rf_allocLang is now available. This provides an
    alternative to the idiom of calling Rf_allocList followed by
    SET_TYPEOF.
  UTILITIES:
  * R CMD check now reports as warnings what gfortran calls 'Fortran
    2018 deleted features', all of which have long been marked as
    'obsolescent' and some of which were deleted in Fortran 2008 or
    earlier.  Fortran compilers are no longer required to support
    these.
  BUG FIXES:
  * as.numeric(), scan(), type.convert() and other places which use
    the internal C function R_strtod now require a _non-empty_ digit
    sequence in a decimal or binary exponent.  This aligns with the
    C/POSIX standard for strtod and with ?NumericConstants.
  * as.data.frame(m, make.names=NA) now works correctly for a matrix
    m with NA's in row names.
  * The error message from &lt;POSIXlt&gt;[["hour"]] and similar now
    mentions *[[, "hour"]], as wished for in PR#17409 and proposed by
    Michael Chirico.
  * qbinom() and potentially qpois(), qnbinom(), no longer sometimes
    fail accurate inversion (of pbinom(), etc), thanks to Christopher
    Chang's report and patch in PR#18711.
  * The internal help server on Windows can again serve requests sent
    in quick succession, fixing a regression in R 4.4.0.
  * debugcall(&lt;S3Generic&gt;()) now also works when a corresponding
    S4-generic version is in the methods cache (PR#18143).
  * Package tools' toTitleCase(ch0) now returns character(0) when ch0
    is of zero length; fixing PR#18724, reported by David Hugh Jones.
  * R CMD check is no longer broken (without a check result and no
    explanation in 00check.log) for a package which declares an
    invalid VignetteBuilder in DESCRIPTION but has no vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1730376000">- CHANGES IN R 4.4.2:
  C-LEVEL FACILITIES:
  * The S-compatibility macros F77_COM and F77_COMDECL defined in
    header R_ext/RS.h are deprecated and will be removed shortly.  We
    could find no record of their use.
  BUG FIXES:
  * Mathlib function lgammacor(x) no longer warns about underflow to
    zero for large x.
  * Text widths and heights were incorrectly reported by the Quartz
    device if the drawing context didn't exist yet (typically when
    drawing off-screen to a window that is yet to appear, see
    PR#18591).
  * The Quartz device could segfault in cases where paths with spaces
    are used in the new glyph drawing API.  Thanks to Tomek
    Gieorgijewski (PR#18758).
  * On macOS in R CRAN builds, it is again possible to read
    little-endian UTF-16 text with a BOM from a connection using
    encoding="UTF-16".  Users building R from source should avoid
    using the system libiconv in macOS 14.1 and later.
  * methods' internal .requirePackage() now re-enables primitive
    method dispatch when needed; thanks to Ivan Krylov for
    demystifying CRAN package check failures on the R-devel mailing
    list.</changelog>
</package>
<package pkgid="c804140f4d51906970fd74b669a85b78354a7e5d55b1046c631aa4323e8f5d340aee78fc105034829e83854068777dc84e7fc95ded97baa064a5ebac2965d3d9" name="R-grid" arch="x86_64">
  <version epoch="0" ver="4.4.2" rel="51.0.2.2.sr20241103"/>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1620302400">- To get in sync with d:l:R:autoCRAN the Matrix package's split
  in -devel was reversed.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339200">- improved spec file according to comments of dimstar in
  https://build.opensuse.org/request/show/892685</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339201">- CHANGES IN R 4.1.0:
  FUTURE DIRECTIONS:
  * It is planned that the 4.1.x series will be the last to support
    32-bit Windows, with production of binary packages for that
    series continuing until early 2023.
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Data set esoph in package datasets now provides the correct
    numbers of controls; previously it had the numbers of cases added
    to these.  (Reported by Alexander Fowler in PR#17964.)
  NEW FEATURES:
  * www.omegahat.net is no longer one of the repositories known by
    default to setRepositories().  (Nowadays it only provides source
    packages and is often unavailable.)
  * Function package_dependencies() (in package tools) can now use
    different dependency types for direct and recursive dependencies.
  * The checking of the size of tarball in R CMD check --as-cran
    &lt;pkg&gt; may be tweaked via the new environment variable
    _R_CHECK_CRAN_INCOMING_TARBALL_THRESHOLD_, as suggested in
    PR#17777 by Jan Gorecki.
  * Using c() to combine a factor with other factors now gives a
    factor, an ordered factor when combining ordered factors with
    identical levels.
  * apply() gains a simplify argument to allow disabling of
    simplification of results.
  * The format() method for class "ftable" gets a new option justify.
    (Suggested by Thomas Soeiro.)
  * New ...names() utility.  (Proposed by Neal Fultz in PR#17705.)
  * type.convert() now warns when its as.is argument is not
    specified, as the help file always said it _should_.  In that
    case, the default is changed to TRUE in line with its change in
    read.table() (related to stringsAsFactor) in R 4.0.0.
  * When printing list arrays, classed objects are now shown _via_
    their format() value if this is a short enough character string,
    or by giving the first elements of their class vector and their
    length.
  * capabilities() gets new entry "Rprof" which is TRUE when R has
    been configured with the equivalent of --enable-R-profiling (as
    it is by default).  (Related to Michael Orlitzky's report
    PR#17836.)
  * str(xS4) now also shows extraneous attributes of an S4 object
    xS4.
  * Rudimentary support for vi-style tags in rtags() and R CMD rtags
    has been added.  (Based on a patch from Neal Fultz in PR#17214.)
  * checkRdContents() is now exported from tools; it and also
    checkDocFiles() have a new option chkInternal allowing to check
    Rd files marked with keyword "internal" as well.  The latter can
    be activated for R CMD check via environment variable
    _R_CHECK_RD_INTERNAL_TOO_.
  * New functions numToBits() and numToInts() extend the raw
    conversion utilities to (double precision) numeric.
  * Functions URLencode() and URLdecode() in package utils now work
    on vectors of URIs.  (Based on patch from Bob Rudis submitted
    with PR#17873.)
  * path.expand() can expand ~user on most Unix-alikes even when
    readline is not in use.  It tries harder to expand ~, for example
    should environment variable HOME be unset.
  * For HTML help (both dynamic and static), Rd file links to help
    pages in external packages are now treated as references to
    topics rather than file names, and fall back to a file link only
    if the topic is not found in the target package. The earlier rule
    which prioritized file names over topics can be restored by
    setting the environment variable _R_HELP_LINKS_TO_TOPICS_ to a
    false value.
  * c() now removes NULL arguments before dispatching to methods,
    thus simplifying the implementation of c() methods, _but_ for
    back compatibility keeps NULL when it is the first argument.
    (From a report and patch proposal by Lionel Henry in PR#17900.)
  * Vectorize()'s result function's environment no longer keeps
    unneeded objects.
  * Function ...elt() now propagates visibility consistently with
    ..n.  (Thanks to Lionel Henry's PR#17905.)
  * capture.output() no longer uses non-standard evaluation to
    evaluate its arguments.  This makes evaluation of functions like
    parent.frame() more consistent.  (Thanks to Lionel Henry's
    PR#17907.)
  * packBits(bits, type="double") now works as inverse of
    numToBits().  (Thanks to Bill Dunlap's proposal in PR#17914.)
  * curlGetHeaders() has two new arguments, timeout to specify the
    timeout for that call (overriding getOption("timeout")) and TLS
    to specify the minimum TLS protocol version to be used for
    https:// URIs (_inter alia_ providing a means to check for sites
    using deprecated TLS versions 1.0 and 1.1).
  * For nls(), an optional constant scaleOffset may be added to the
    denominator of the relative offset convergence test for cases
    where the fit of a model is expected to be exact, thanks to a
    proposal by John Nash.  nls(*, trace=TRUE) now also shows the
    convergence criterion.
  * Numeric differentiation _via_ numericDeriv() gets new optional
    arguments eps and central, the latter for taking central divided
    differences.  The latter can be activated for nls() via
    nls.control(nDcentral = TRUE).
  * nls() now passes the trace and control arguments to getInitial(),
    notably for all self-starting models, so these can also be fit in
    zero-noise situations via a scaleOffset.  For this reason, the
    initial function of a selfStart model must now have ... in its
    argument list.
  * bquote(splice = TRUE) can now splice expression vectors with
    attributes: this makes it possible to splice the result of
    parse(keep.source = TRUE).  (Report and patch provided by Lionel
    Henry in PR#17869.)
  * textConnection() gets an optional name argument.
  * get(), exists(), and get0() now signal an error if the first
    argument has length greater than 1.  Previously additional
    elements were silently ignored.  (Suggested by Antoine Fabri on
    R-devel.)
  * R now provides a shorthand notation for creating functions, e.g.
    \(x) x + 1 is parsed as function(x) x + 1.
  * R now provides a simple native forward pipe syntax |&gt;.  The
    simple form of the forward pipe inserts the left-hand side as the
    first argument in the right-hand side call.  The pipe
    implementation as a syntax transformation was motivated by
    suggestions from Jim Hester and Lionel Henry.
  * all.equal(f, g) for functions now by default also compares their
    environment(.)s, notably via new all.equal method for class
    function.  Comparison of nls() fits, e.g., may now need
    all.equal(m1, m2, check.environment = FALSE).
  * .libPaths() gets a new option include.site, allowing to _not_
    include the site library.  (Thanks to Dario Strbenac's suggestion
    and Gabe Becker's PR#18016.)
  * Lithuanian translations are now available.  (Thanks to Rimantas
    Zakauskas.)
  * names() now works for DOTSXP objects.  On the other hand, in
    R-lang, the R language manual, we now warn against relying on the
    structure or even existence of such dot-dot-dot objects.
  * all.equal() no longer gives an error on DOTSXP objects.
  * capabilities("cairo") now applies only to the file-based devices
    as it is now possible (if very unusual) to build R with Cairo
    support for those but not for X11().
  * There is optional support for tracing the progress of
    loadNamespace() - see its help.
  * (Not Windows.)  l10n_info() reports an additional element, the
    name of the encoding as reported by the OS (which may differ from
    the encoding part (if any) of the result from
    Sys.getlocale("LC_CTYPE").
  * New function gregexec() which generalizes regexec() to find _all_
    disjoint matches and well as all substrings corresponding to
    parenthesized subexpressions of the given regular expression.
    (Contributed by Brodie Gaslam.)
  * New function charClass() in package utils to query the
    wide-character classification functions in use (such as
    iswprint).
  * The names of quantile()'s result no longer depend on the global
    getOption("digits"), but quantile() gets a new optional argument
    digits = 7 instead.
  * grep(), sub(), regexp and variants work considerably faster for
    long factors with few levels.  (Thanks to Michael Chirico's
    PR#18063.)
  * Provide grouping of x11() graphics windows within a window
    manager such as Gnome or Unity; thanks to a patch by Ivan Krylov
    posted to R-devel.
  * The split() method for class data.frame now allows the f argument
    to be specified as a formula.
  * sprintf now warns on arguments unused by the format string.
  * New palettes "Rocket" and "Mako" for hcl.colors() (approximating
    palettes of the same name from the 'viridisLite' package).
    Contributed by Achim Zeileis.
  * The base environment and its namespace are now locked (so one can
    no longer add bindings to these or remove from these).
  * Rterm handling of multi-byte characters has been improved,
    allowing use of such characters when supported by the current
    locale.
  * Rterm now accepts ALT+ +xxxxxxxx sequences to enter Unicode
    characters as hex digits.
  * Environment variable LC_ALL on Windows now takes precedence over
    LC_CTYPE and variables for other supported categories, matching
    the POSIX behaviour.
  * duplicated() and anyDuplicated() are now optimized for integer
    and real vectors that are known to be sorted via the ALTREP
    framework. Contributed by Gabriel Becker via PR#17993.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 14
    and so packages that provide graphics devices should be
    reinstalled.
  * Graphics devices should now specify deviceVersion to indicate
    what version of the graphics engine they support.
  * Graphics devices can now specify deviceClip.  If TRUE, the
    graphics engine will never perform any clipping of output itself.
    The clipping that the graphics engine does perform (for both
    canClip = TRUE and canClip = FALSE) has been improved to avoid
    producing unnecessary artifacts in clipped output.
  * The grid package now allows gpar(fill) to be a linearGradient(),
    a radialGradient(), or a pattern().  The viewport(clip) can now
    also be a grob, which defines a clipping path, and there is a new
    viewport(mask) that can also be a grob, which defines a mask.
    These new features are only supported so far on the Cairo-based
    graphics devices and on the pdf() device.
  * (Not Windows.)  A warning is given when a Cairo-based type is
    specified for a png(), jpeg(), tiff() or bmp() device but Cairo
    is unsupported (so type = "Xlib" is tried instead).
  * grSoftVersion() now reports the versions of FreeType and
    FontConfig if they are used directly (not _via_ Pango), as is
    most commonly done on macOS.
  C-LEVEL FACILITIES:
  * The _standalone_ libRmath math library and R's C API now provide
    log1pexp() again as documented, and gain log1mexp().
  INSTALLATION on a UNIX-ALIKE:
  * configure checks for a program pkgconf if program pkg-config is
    not found.  These are now only looked for on the path (like
    almost all other programs) so if needed specify a full path to
    the command in PKG_CONFIG, for example in file config.site.
  * C99 function iswblank is required - it was last seen missing ca
    2003 so the workaround has been removed.
  * There are new configure options --with-internal-iswxxxxx,
  - -with-internal-towlower and --with-internal-wcwidth which allows
    the system functions for wide-character classification,
    case-switching and width (wcwidth and wcswidth) to be replaced by
    internal ones.  The first has long been used on macOS, AIX (and
    Windows) but this enables it to be unselected there and selected
    for other platforms (it is the new default on Solaris).  The
    second is new in this version of R and is selected by default on
    macOS and Solaris.  The third has long been the default and
    remains so as it contains customizations for East Asian
    languages.
    System versions of these functions are often minimally
    implemented (sometimes only for ASCII characters) and may not
    cover the full range of Unicode points: for example Solaris (and
    Windows) only cover the Basic Multilingual Plane.
  * Cairo installations without X11 are more likely to be detected by
    configure, when the file-based Cairo graphics devices will be
    available but not X11(type = "cairo").
  * There is a new configure option --with-static-cairo which is the
    default on macOS.  This should be used when only static cairo
    (and where relevant, Pango) libraries are available.
  * Cairo-based graphics devices on platforms without Pango but with
    FreeType/FontConfig will make use of the latter for font
    selection.
  LINK-TIME OPTIMIZATION on a UNIX-ALIKE:
  * Configuring with flag --enable-lto=R now also uses LTO when
    installing the recommended packages.
  * R CMD INSTALL and R CMD SHLIB have a new flag --use-LTO to use
    LTO when compiling code, for use with R configured with
  - -enable-lto=R.  For R configured with --enable-lto, they have
    the new flag --no-use-LTO.
    Packages can opt in or out of LTO compilation _via_ a UseLTO
    field in the DESCRIPTION file.  (As usual this can be overridden
    by the command-line flags.)
  BUILDING R on Windows:
  * for GCC &gt;= 8, FC_LEN_T is defined in config.h and hence character
    lengths are passed from C to Fortran in _inter alia_ BLAS and
    LAPACK calls.
  * There is a new text file src/gnuwin32/README.compilation, which
    outlines how C/Fortran code compilation is organized and
    documents new features:
  * R can be built with Link-Time Optimization with a suitable
    compiler - doing so with GCC 9.2 showed several
    inconsistencies which have been corrected.
  * There is support for cross-compiling the C and Fortran code
    in R and standard packages on suitable (Linux) platforms.
    This is mainly intended to allow developers to test later
    versions of compilers - for example using GCC 9.2 or 10.x has
    detected issues that GCC 8.3 in Rtools40 does not.
  * There is experimental support for cross-building R packages
    with C, C++ and/or Fortran code.
  * The R installer can now be optionally built to support a single
    architecture (only 64-bit or only 32-bit).
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++14 where
    available (which it is on all currently checked platforms): if
    not (as before) C++11 is used if available otherwise C++ is not
    supported.
    Packages which specify C++11 will still be installed using C++11.
    C++14 compilers may give deprecation warnings, most often for
    std::random_shuffle (deprecated in C++14 and removed in C++17).
    Either specify C++11 (see 'Writing R Extensions') or modernize
    the code and if needed specify C++14.  The latter has been
    supported since R 3.4.0 so the package's DESCRIPTION would need
    to include something like
    Depends: R (&gt;= 3.4)
  PACKAGE INSTALLATION on Windows:
  * R CMD INSTALL and R CMD SHLIB make use of their flag --use-LTO
    when the LTO_OPT make macro is set in file etc/${R_ARCH}/Makeconf
    or in a personal/site Makevars file.  (For details see 'Writing R
    Extensions' SS4.5.)
    This provides a valuable check on code consistency.  It does work
    with GCC 8.3 as in Rtools40, but that does not detect everything
    the CRAN checks with current GCC do.
  PACKAGE INSTALLATION on macOS:
  * The default personal library directory on builds with
  - -enable-aqua (including CRAN builds) now differs by CPU type,
    one of
    ~/Library/R/x86_64/x.y/library
    ~/Library/R/arm64/x.y/library
    This uses the CPU type R (and hence the packages) were built for,
    so when a x86_64 build of R is run under Rosetta emulation on an
    arm64 Mac, the first is used.
  UTILITIES:
  * R CMD check can now scan package functions for bogus return
    statements, which were possibly intended as return() calls (wish
    of PR#17180, patch by Sebastian Meyer). This check can be
    activated via the new environment variable
    _R_CHECK_BOGUS_RETURN_, true for --as-cran.
  * R CMD build omits tarballs and binaries of previous builds from
    the top-level package directory.  (PR#17828, patch by Sebastian
    Meyer.)
  * R CMD check now runs sanity checks on the use of LazyData, for
    example that a data directory is present and that
    LazyDataCompression is not specified without LazyData and has a
    documented value.  For packages with large LazyData databases
    without specifying LazyDataCompression, there is a reference to
    the code given in 'Writing R Extensions' SS1.1.6 to test the
    choice of compression (as in all the CRAN packages tested a
    non-default method was preferred).
  * R CMD build removes LazyData and LazyDataCompression fields from
    the DESCRIPTION file of packages without a data directory.
  ENCODING-RELATED CHANGES:
  * The parser now treats \Unnnnnnnn escapes larger than the upper
    limit for Unicode points (\U10FFFF) as an error as they cannot be
    represented by valid UTF-8.
    Where such escapes are used for outputting non-printable
    (including unassigned) characters, 6 hex digits are used (rather
    than 8 with leading zeros).  For clarity, braces are used, for
    example \U{0effff}.
  * The parser now looks for non-ASCII spaces on Solaris (as
    previously on most other OSes).
  * There are warnings (including from the parser) on the use of
    unpaired surrogate Unicode points such as \uD834.  (These cannot
    be converted to valid UTF-8.)
  * Functions nchar(), tolower(), toupper() and chartr() and those
    using regular expressions have more support for inputs with a
    marked Latin-1 encoding.
  * The character-classification functions used (by default) to
    replace the system iswxxxxx functions on Windows, macOS and AIX
    have been updated to Unicode 13.0.0.
    The character-width tables have been updated to include new
    assignments in Unicode 13.0.0.
  * The code for evaluating default (extended) regular expressions
    now uses the same character-classification functions as the rest
    of R (previously they differed on Windows, macOS and AIX).
  * There is a build-time option to replace the system's
    wide-character wctrans C function by tables shipped with R: use
    configure option --with-internal-towlower or (on Windows)
  - DUSE_RI18N_CASE in CFLAGS when building R.  This may be needed
    to allow tolower() and toupper() to work with Unicode characters
    beyond the Basic Multilingual Plane where not supported by system
    functions (e.g. on Solaris where it is the new default).
  * R is more careful when truncating UTF-8 and other multi-byte
    strings that are too long to be printed, passed to the system or
    libraries or placed into an internal buffer.  Truncation will no
    longer produce incomplete multibyte characters.
  DEPRECATED AND DEFUNCT:
  * Function plclust() from the package stats and
    package.dependencies(), pkgDepends(), getDepList(),
    installFoundDepends(), and vignetteDepends() from package tools
    are defunct.
  * Defunct functions checkNEWS() and readNEWS() from package tools
    and CRAN.packages() from utils have been removed.
  * R CMD config CXXCPP is defunct (it was deprecated in R 3.6.2).
  * parallel::detectCores() drops support for Irix (retired in 2013).
  * The LINPACK argument to chol.default(), chol2inv(),
    solve.default() and svd() has been defunct since R 3.1.0.  It was
    silently ignored up to R 4.0.3 but now gives an error.
  * Subsetting/indexing, such as ddd[*] or ddd$x on a DOTSXP
    (dot-dot-dot) object ddd has been disabled; it worked by accident
    only and was undocumented.
  BUG FIXES:
  * Many more C-level allocations (mainly by malloc and strdup) are
    checked for success with suitable alternative actions.
  * Bug fix for replayPlot(); this was turning off graphics engine
    display list recording if a recorded plot was replayed in the
    same session.  The impact of the bug became visible if resize the
    device after replay OR if attempted another savePlot() after
    replay (empty display list means empty screen on resize or empty
    saved plot).
  * R CMD check etc now warn when a package exports non-existing S4
    classes or methods, also in case of no "methods" presence.
    (Reported by Alex Bertram; reproducible example and patch by
    Sebastian Meyer in PR#16662.)
  * boxplot() now also accepts calls for labels such as ylab, the
    same as plot().  (Reported by Marius Hofert.)
  * The help page for xtabs() now correctly states that addNA is
    setting na.action = na.pass among others.  (Reported as PR#17770
    by Thomas Soeiro.)
  * The R CMD check &lt;pkg&gt; gives a longer and more comprehensible
    message when DESCRIPTION misses dependencies, e.g., in Imports:.
    (Thanks to the contributors of PR#17179.)
  * update.default() now calls the generic update() on the formula to
    work correctly for models with extended formulas.  (As reported
    and suggested by Neal Fultz in PR#17865.)
  * The horizontal position of leaves in a dendrogram is now correct
    also with center = FALSE.  (PR#14938, patch from Sebastian
    Meyer.)
  * all.equal.POSIXt() no longer warns about and subsequently ignores
    inconsistent "tzone" attributes, but describes the difference in
    its return value (PR#17277).  This check can be disabled _via_
    the new argument check.tzone = FALSE as suggested by Sebastian
    Meyer.
  * as.POSIXct() now populates the "tzone" attribute from its tz
    argument when x is a logical vector consisting entirely of NA
    values.
  * x[[2^31]] &lt;- v now works.  (Thanks to the report and patch by
    Suharto Anggono in PR#17330.)
  * In log-scale graphics, axis() ticks and label positions are now
    computed more carefully and symmetrically in their range,
    typically providing _more_ ticks, fulfilling wishes in PR#17936.
    The change really corresponds to an improved axisTicks() (package
    grDevices), potentially influencing grid and lattice, for
    example.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now correct to at
    least five digits where it was catastrophically wrong,
    previously.
  * sum(df) and similar "Summary"- and "Math"-group member functions
    now work for data frames df with logical columns, notably also of
    zero rows.  (Reported to R-devel by Martin "b706".)
  * unsplit() had trouble with tibbles due to unsound use of rep(NA,
    len)-indexing, which should use NA_integer_ (Reported to R-devel
    by Mario Annau.)
  * pnorm(x, log.p = TRUE) underflows to -Inf slightly later.
  * show(&lt;hidden S4 generic&gt;) prints better and without quotes for
    non-hidden S4 generics.
  * read.table() and relatives treated an "NA" column name as missing
    when check.names = FALSE PR#18007.
  * Parsing strings containing UTF-16 surrogate pairs such as
    "\uD834\uDD1E" works better on some (uncommon) platforms.
    sprintf("%X", utf8ToInt("\uD834\uDD1E")) should now give "1D11E"
    on all platforms.
  * identical(x,y) is no longer true for differing DOTSXP objects,
    fixing PR#18032.
  * str() now works correctly for DOTSXP and related exotics, even
    when these are doomed.
    Additionally, it no longer fails for lists with a class and
    "irregular" method definitions such that e.g. lapply(*) will
    necessarily fail, as currently for different igraph objects.
  * Too long lines in environment files (e.g. Renviron) no longer
    crash R. This limit has been increased to 100,000 bytes.
    (PR#18001.)
  * There is a further workaround for FreeType giving incorrect
    italic font faces with cairo-based graphics devices on macOS.
  * add_datalist(*, force = TRUE) (from package tools) now actually
    updates an existing data/datalist file for new content.  (Thanks
    to a report and patch by Sebastian Meyer in PR#18048.)
  * cut.Date() and cut.POSIXt() could produce an empty last interval
    for breaks = "months" or breaks = "years".  (Reported as PR#18053
    by Christopher Carbone.)
  * Detection of the encoding of 'regular' macOS locales such as
    en_US (which is UTF-8) had been broken by a macOS change:
    fortunately these are now rarely used with en_US.UTF-8 being
    preferred.
  * sub() and gsub(pattern, repl, x, *) now keep attributes of x such
    as names() also when pattern is NA (PR#18079).
  * Time differences ("difftime" objects) get a replacement and a
    rep() method to keep "units" consistent.  (Thanks to a report and
    patch by Nicolas Bennett in PR#18066.)
  * The \RdOpts macro, setting defaults for \Sexpr options in an Rd
    file, had been ineffective since R 2.12.0: it now works again.
    (Thanks to a report and patch by Sebastian Meyer in PR#18073.)
  * mclapply and pvec no longer accidentally terminate parallel
    processes started before by mcparallel or related calls in
    package parallel (PR#18078).
  * grep and other functions for evaluating (extended) regular
    expressions handle in Unicode also strings not explicitly flagged
    UTF-8, but flagged native when running in UTF-8 locale.
  * Fixed a crash in fifo implementation on Windows (PR#18031).
  * Binary mode in fifo on Windows is now properly detected from
    argument open (PR#15600, PR#18031).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1622808000">- The line %{__install} -m 755 -d %{_infodir}
  no longer works in TW or Factory.
  But without that line it works everywhere. So this instruction
  was commented out of the spec file.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1628596800">- CHANGES IN R 4.1.1:
  NEW FEATURES:
  * require(pkg, quietly = TRUE) is quieter and in particular does
    not warn if the package is not found.
  DEPRECATED AND DEFUNCT:
  * Use of ftp:// URIs should be regarded as deprecated, with
    on-going support confined to method = "libcurl" and not routinely
    tested.  (Nowadays no major browser supports them.)
  * The non-default method = "internal" is deprecated for http:// and
    ftp:// URIs for both download.file and url.
  * On Windows, method = "wininet" is deprecated for http://,
    https:// and ftp:// URIs for both download.file and url.  (A
    warning is only given for ftp://.)
    For ftp:// URIs the default method is now "libcurl" if available
    (which it is on CRAN builds).
    method = "wininet" remains the default for http:// and https://
    URIs but if libcurl is available, using method = "libcurl" is
    preferred.
  INSTALLATION:
  * make check now works also without a LaTeX installation.  (Thanks
    to Sebastian Meyer's PR#18103.)
  BUG FIXES:
  * make check-devel works again in an R build configured with
  - -without-recommended-packages.
  * qnbinom(p, size, mu) for large size/mu is correct now in a range
    of cases (PR#18095); similarly for the (size, prob)
    parametrization of the negative binomial.  Also qpois() and
    qbinom() are better and or faster for extreme cases.  The
    underlying C code has been modularized and is common to all four
    cases of discrete distributions.
  * gap.axis is now part of the axis() arguments which are passed
    from bxp(), and hence boxplot().  (Thanks to Martin Smith's
    report and suggestions in PR#18109.)
  * .First and .Last can again be set from the site profile.
  * seq.int(from, to, *) and seq.default(..) now work better in large
    range cases where from-to is infinite where the two boundaries
    are finite.
  * all.equal(x,y) now returns TRUE correctly also when several
    entries of abs(x) and abs(y) are close to .Machine$double.xmax,
    the largest finite numeric.
  * model.frame() now clears the object bit when removing the class
    attribute of a value via na.action (PR#18100).
  * charClass() now works with multi-character strings on Windows
    (PR#18104, fixed by Bill Dunlap).
  * encodeString() on Solaris now works again in Latin-1 encoding on
    characters represented differently in UTF-8.  Support for
    surrogate pairs on Solaris has been improved.
  * file.show() on Windows now works with non-ASCII path names
    representable in the current native encoding (PR#18132).
  * Embedded R on Windows can now find R home directory via the
    registry even when installed only for the current user
    (PR#18135).
  * pretty(x) with finite x now returns finite values also in the
    case where the extreme x values are close in size to the maximal
    representable number .Machine$double.xmax.
    Also, it's been tweaked for very small ranges and when a boundary
    is close (or equal) to zero; e.g., pretty(c(0,1e-317)) no longer
    has negative numbers, currently still warning about a very small
    range, and pretty(2^-(1024 - 2^-1/(c(24,10)))) is more accurate.
  * The error message for not finding vignette files when weaving has
    correct file sizes now. (Thanks to Sebastian Meyer's PR#18154.)
  * dnbinom(20, &lt;large&gt;, 1) now correctly gives 0, and similar cases
    are more accurate with underflow precaution.  (Reported by Francisco Vera Alcivar in PR#18072.)</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635163200">- repaired https://bugzilla.suse.com/show_bug.cgi?id=1191380
  (rpmacros now go to rpmmacrodir)
- minor clean-ups in spec file</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635768000">- CHANGES IN R 4.1.2:
  C-LEVEL FACILITIES:
  * The workaround in headers R.h and Rmath.h (using namespace std;)
    for the Oracle Developer Studio compiler is no longer needed now
    C++11 is required so has been removed.  A couple more usages of
    log() (which should have been std::log()) with an int argument
    are reported on Solaris.
  * The undocumented limit of 4095 bytes on messages from the
    S-compatibility macros PROBLEM and MESSAGE is now documented and
    longer messages will be silently truncated rather than
    potentially causing segfaults.
  * If the R_NO_SEGV_HANDLER environment variable is non-empty, the
    signal handler for SEGV/ILL/BUS signals (which offers recovery
    user interface) is not set. This allows more reliable debugging
    of crashes that involve the console.
  DEPRECATED AND DEFUNCT:
  * The legacy S-compatibility macros PROBLEM, MESSAGE, ERROR, WARN,
    WARNING, RECOVER, ... are deprecated and will be hidden in R
    4.2.0. R's native interface of Rf_error and Rf_warning has long
    been preferred.
  BUG FIXES:
  * .mapply(F, dots, .) no longer segfaults when dots is not a list
    and uses match.fun(F) as always documented; reported by Andrew
    Simmons in PR#18164.
  * hist(&lt;Date&gt;, ...) and hist(&lt;POSIXt&gt;, ...)  no longer pass
    arguments for rect() (such as col and density) to axis().
    (Thanks to Sebastian Meyer's PR#18171.)
  * \Sexpr{ch} now preserves Encoding(ch). (Thanks to report and
    patch by Jeroen Ooms in PR#18152.)
  * Setting the RNG to "Marsaglia-Multicarry" e.g., by RNGkind(), now
    warns in more places, thanks to Andr'e Gillibert's report and
    patch in PR#18168.
  * gray(numeric(), alpha=1/2) no longer segfaults, fixing PR#18183,
    reported by Till Krenz.
  * Fixed dnbinom(x, size=&lt;very_small&gt;, .., log=TRUE) regression,
    reported by Martin Morgan.
  * as.Date.POSIXlt(x) now keeps names(x), thanks to Davis Vaughan's
    report and patch in PR#18188.
  * model.response() now strips an "AsIs" class typically, thanks to
    Duncan Murdoch's report and other discussants in PR#18190.
  * try() is considerably faster in case of an error and long call,
    as e.g., from some do.call().  Thanks to Alexander Kaever's
    suggestion posted to R-devel.
  * qqline(y = &lt;object&gt;) such as y=I(.), now works, see also
    PR#18190.
  * Non-integer mgp par() settings are now handled correctly in
    axis() and mtext(), thanks to Mikael Jagan and Duncan Murdoch's
    report and suggestion in PR#18194.
  * formatC(x) returns length zero character() now, rather than ""
    when x is of length zero, as documented, thanks to Davis
    Vaughan's post to R-devel.
  * removeSource(fn) now retains (other) attributes(fn).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1647000000">- CHANGES IN R 4.1.3:
  NEW FEATURES:
  * The default version of Bioconductor has been changed to 3.14.
    (This is used by setRepositories and the menus in GUIs.)
  UTILITIES:
  * R CMD check --as-cran has a workaround for a bug in versions of
    file up to at least 5.41 which mis-identify DBF files last
    changed in 2022 as executables.
  C-LEVEL FACILITIES:
  * The legacy S-compatibility macros SINGLE_* in R_ext/Constants.h
    (included by R.h) are deprecated and will be removed in R 4.2.0.
  BUG FIXES:
  * Initialization of self-starting nls() models with initialization
    functions following the pre-R-4.1.0 API (without the ...
    argument) works again for now, with a deprecation warning.
  * Fixed quoting of ~autodetect~ in Java setting defaults to avoid
    inadvertent user lookup due to leading ~, reported in PR#18231 by
    Harold Gutch.
  * substr(., start, stop) &lt;- v now treats _negative_ stop values
    correctly.  Reported with a patch in PR#18228 by Brodie Gaslam.
  * Subscripting an array x without dimnames by a
    length(dim(x))-column character matrix gave "random" non-sense,
    now an error; reported in PR#18244 by Mikael Jagan.
  * ...names() now matches names(list(...)) closely, fixing PR#18247.
  * all.equal(*, scale = s) now works as intended when length(s) &gt; 1,
    partly thanks to Michael Chirico's PR#18272.
  * print(x) for long vectors x now also works for named atomic
    vectors or lists and prints the correct number when reaching the
    getOption("max.print") limit; partly thanks to a report and
    proposal by Hugh Parsonage to the R-devel list.
  * all.equal(&lt;selfStart&gt;, *) no longer signals a deprecation
    warning.
  * reformulate(*, response=r) gives a helpful error message now when
    length(r) &gt; 1, thanks to Bill Dunlap's PR#18281.
  * Modifying globalCallingHandlers inside withCallingHandlers() now
    works or fails correctly, thanks to Henrik Bengtsson's PR#18257.
  * hist(&lt;Date&gt;, breaks = "days") and hist(&lt;POSIXt&gt;, breaks = "secs")
    no longer fail for inputs of length 1.
  * qbeta(.001, .9, .009) and similar cases now converge correctly
    thanks to Ben Bolker's report in PR#17746.
  * window(x, start, end) no longer wrongly signals "'start' cannot
    be after 'end'", fixing PR#17527 and PR#18291.
  * data() now checks that its (rarely used) list argument is a
    character vector - a couple of packages passed other types and
    gave incorrect results.
  * which() now checks its arr.ind argument is TRUE rather coercing
    to logical and taking the first element - which gave incorrect
    results in package code.
  * model.weights() and model.offset() more carefully extract their
    model components, thanks to Ben Bolker and Tim Taylor's R-devel
    post.
  * list.files(recursive = TRUE) now shows all broken symlinks
    (previously, some of them may have been omitted, PR#18296).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1650628800">- CHANGES IN R 4.2.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * The formula method of aggregate() now matches the generic in
    naming its first argument x (resolving PR#18299 by Thomas
    Soeiro).
    This means that calling aggregate() with a formula as a named
    first argument requires name formula in earlier versions of R and
    name x now, so portable code should not name the argument (code
    in many packages did).
  * Calling &amp;&amp; or || with either argument of length greater than one
    now gives a warning (which it is intended will become an error).
  * Calling if() or while() with a condition of length greater than
    one gives an error rather than a warning.  Consequently,
    environment variable _R_CHECK_LENGTH_1_CONDITION_ no longer has
    any effect.
  * Windows users should consult the WINDOWS section below for some
    profound changes including
  * Support for 32-bit builds has been dropped.
  * UTF-8 locales are used where available.
  * The default locations for the R installation and personal
    library folder have been changed.
    Thanks to Tomas Kalibera for months of work on the Windows port
    for this release.
  NEW FEATURES:
  * matrix(x, n, m) now warns in more cases where length(x) differs
    from n * m, as suggested by Abby Spurdle and Wolfgang Huber in
    Feb 2021 on the R-devel mailing list.
    This warning can be turned into an error by setting environment
    variable _R_CHECK_MATRIX_DATA_ to TRUE: R CMD check --as-cran
    does so unless it is already set.
  * Function file_test() in package utils gains tests for symlinks,
    readability and writability.
  * capabilities("libxml") is now false.
    The description of capabilities("http/ftp") now reflects that it
    refers to the default method, no longer the internal one.
  * simplify2array() gains an except argument for controlling the
    exceptions used by sapply().
  * Environment variables R_LIBS_USER and R_LIBS_SITE are both now
    set to the R system default if unset or empty, and can be set to
    NULL to indicate an empty list of user or site library
    directories.
  * The warning for axis()(-like) calls in cases of relatively small
    ranges (typically in log-scale situations) is slightly improved
    _and_ suppressed from explicit calls to .axisPars() as has always
    been the intention.
  * The contrasts setter function `contrasts&lt;-` gains an explicit
    default how.many = NULL rather than just using missing(how.many).
  * grid.pretty() gains a new optional argument n = 5.
  * There is a new function .pretty() with option bounds as a
    technical-utility version of pretty().  It and pretty() gain a
    new argument f.min with a better than back-compatible default.
  * Function grDevices::axisTicks() and related functions such as
    graphics::axis() work better, notably for the log scale; partly
    because of the pretty() improvements, but also because care is
    taken e.g., when ylim is finite but diff(ylim) is infinite.
  * nclass.FD() gains a digits option.
  * The R Mathlib internal C function bd0() (called indirectly from a
    dozen probability density and distribution functions such as
    dpois(), dbinom(), dgamma(), pgamma() _etc_) has been
    complemented by a more sophisticated and (mostly) more accurate C
    function ebd0(), currently called only by internal dpois_raw()
    improving accuracy for R level dpois() and potentially others
    calling it such as dnbinom(), dgamma() or pgamma().  (Thanks to
    Morten Welinder's PR#15628.)
  * write.ftable() gains sep = " " argument as suggested by Thomas
    Soeiro.
  * The names of the locale categories supported by R's
    Sys.getlocale() and Sys.setlocale() are now provided by variable
    .LC.categories in the base namespace.
  * The Date and POSIXt methods for hist() and the histogram method
    for plot() now also use the new default col = "lightgray" in
    consistency with the corresponding change to hist()'s default for
    R 4.0.0.
  * hist.default() gains new fuzz argument, and the histogram plot
    method no longer uses fractional axis ticks when displaying
    counts ("Frequency").
  * mapply() and hence Map() now also obey the "max-or-0-if-any"
    recycling rule, such that, e.g., Map(`+`, 1:3, 1[0]) is valid
    now.
  * as.character(&lt;obj&gt;) for "hexmode" or "octmode" objects now
    fulfils the important basic rule as.character(x)[j] ===
    as.character(x[j]).
  * The set utility functions, notably intersect() have been tweaked
    to be more consistent and symmetric in their two set arguments,
    also preserving a common mode.
  * substr(ch, start,end) &lt;- new now e.g., preserves names(ch); ditto
    for substring(), thanks to a patch from Brodie Gaslam.
  * plot(&lt;lm&gt;) gains a extend.ylim.f argument, in partial response to
    PR#15285; further PR#17784 is fixed thanks to several
    contributors and a patch by Elin Waring.  The Cook's dist
    contours get customizable via cook.col and cook.lty with a
    different default color and their legend is nicer by default and
    customizable via cook.legendChanges.
  * Attempting to subset an object that is not subsettable now
    signals an error of class notSubsettableError. The
    non-subsettable object is contained in the object field of the
    error condition.
  * Subscript-out-of-bounds errors are now signaled as errors of
    class subscriptOutOfBoundsError.
  * Stack-overflow errors are now signaled as errors inheriting from
    class stackOverflowError. See ?stackOverflowError for more
    details.
  * New partly experimental Sys.setLanguage() utility, solving the
    main problem of PR#18055.
  * gettext() and gettextf() get a new option trim = TRUE which when
    set to false allows translations for strings such as "Execution
    halted\n" typical for C code.
  * An experimental implementation of hash tables is now available.
    See ?hashtab for more details.
  * identical() gains a extptr.as.ref argument for requesting that
    external pointer objects be compared as reference objects.
  * reorder() gets an argument decreasing which it passes to sort()
    for level creation; based on the wish and patch by Thomas Soeiro
    in PR#18243.
  * as.vector() gains a data.frame method which returns a simple
    named list, also clearing a long standing 'FIXME' to enable
    as.vector(&lt;data.frame&gt;, mode="list").  This breaks code relying
    on as.vector(&lt;data.frame&gt;) to return the unchanged data frame.
  * legend() is now vectorized for arguments cex, x.intersp, and
    text.width.  The latter can now also be specified as a vector
    (one element for each column of the legend) or as NA for
    computing a proper column wise maximum value of strwidth(legend).
    The argument y.intersp can be specified as a vector with one
    entry for each row of the legend.
    legend() also gains new arguments title.cex and title.font.
    Thanks to Swetlana Herbrandt.
  * Deparsing no longer remaps attribute names dim, dimnames, levels,
    names and tsp to historical S-compatible names (which structure()
    maps back).
  * sample() and sample.int() have additional sanity checks on their
    size and n arguments.
    all.equal.numeric() gains a sanity check on its tolerance
    argument - calling all.equal(a, b, c) for three numeric vectors
    is a surprisingly common error.
    mean(na.rm =), rank(na.last =), barplot(legend.text =),
    boxplot(), contour(drawlabels =), polygon(border =) and
    methods::is(class2 =) have more robust sanity checks on their
    arguments.
    R CMD Rd2pdf (used by R CMD check) has a more robust sanity check
    on the format of \alias{} commands.
  * psigamma(x, deriv) for negative x now also works for deriv = 4
    and 5; their underlying C level dpsifn() is documented in
    'Writing R Extensions'.
  * The HTML help system now uses HTML5 (wish of PR#18149).
  * ks.test() now provides exact p-values also with ties and MC
    p-values in the two-sample (Smirnov) case.  By Torsten Hothorn.
  * ks.test() gains a formula interface, with y ~ 1 for the
    one-sample (Kolmogorov) test and y ~ group for the two-sample
    (Smirnov) test.  Contributed by Torsten Hothorn.
  * The return value from ks.test() now has class c("ks.test",
    "htest") - packages using try() need to take care to use
    inherits() and not == on the class.
  * New functions psmirnov(), qsmirnov() and rsmirnov() in package
    stats implementing the asymptotic and exact distributions of the
    two-sample Smirnov statistic.
  * iconv() now allows sub = "c99" to use C99-style escapes for UTF-8
    inputs which cannot be converted to encoding to.
  * In a forward pipe |&gt; expression it is now possible to use a named
    argument with the placeholder _ in the rhs call to specify where
    the lhs is to be inserted.  The placeholder can only appear once
    on the rhs.
  * The included LAPACK sources have been updated to version 3.10.0,
    except for the four Fortran 77 routines which 3.10.0 has
    re-implemented in Fortran 90 (where the older versions have been
    retained as the R build process does not support Fortran 90).
  * path.expand() and most other uses of tilde expansion now warn if
    a path would be too long if expanded.  (An exception is
    file.exists(), which silently returns false.)
  * trunc(&lt;Date&gt;, *) now supports units = "months" or "years" for
    consistency with the POSIXt method, thanks to Dirk Eddelbuettel's
    proposal in PR#18099.
  * list2DF() now checks that its arguments are of the same length,
    rather than use recycling.
  * The HTML help system has several new features: LaTeX-like math
    can be typeset using either KaTeX or MathJax, usage and example
    code is highlighted using Prism, and for dynamic help the output
    of examples and demos can be shown within the browser if the
    knitr package is installed. These features can be disabled by
    setting the environment variable _R_HELP_ENABLE_ENHANCED_HTML_ to
    a false value.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 15
    and so packages that provide graphics devices should be
    reinstalled.
  * The grid package now allows the user to specify a "vector" of
    pattern fills.  The fill argument to gpar() accepts a list of
    gradients and/or patterns and the functions linearGradient(),
    radialGradient(), and pattern() have a new group argument.
    Points grobs (data symbols) can now also have a pattern fill.
    The grobCoords() function now returns a more informative and
    complex result.
  * The grid package has new functions for drawing isolated groups:
    grid.group(), grid.define(), and grid.use().  These functions add
    compositing operators and affine transformations to R's graphics
    capabilities.
    The grid package also has new functions for stroking and filling
    paths: grid.stroke(), grid.fill(), and grid.fillStroke().
    A new function as.path() allows the user to specify the fill rule
    for a path that is to be used for clipping, stroking, or filling;
    available options are "winding" and "evenodd".  A new function
    as.mask() allows the user to specify the type of a mask;
    available options are "alpha" and "luminance".
    These new features are only supported so far (at most) on the
    Cairo-based graphics devices and on the pdf() device.
  * dev.capabilities() reports on device support for the new
    features.
  * par() now warns about unnamed non-character arguments to prevent
    misuse such as {usr &lt;- par("usr"); par(usr)}.
  INSTALLATION:
  * Facilities for accessing ftp:// sites are no longer tested
    (except _pro tem_ for curlGetHeaders()) as modern browsers have
    removed support.
  * R can now be built with DEFS = -DSTRICT_R_HEADERS .
  PACKAGE INSTALLATION:
  * R CMD INSTALL no longer tangles vignettes. This completes an R
    CMD build change in R 3.0.0 and affects packages built before R
    3.0.2. Such packages should be re-made with R CMD build to have
    the tangled R code of vignettes shipped with the tarball.
  * USE_FC_LEN_T will become the default: this uses the correct
    prototypes for Fortran BLAS/LAPACK routines called from C/C++,
    and requires adjustment of most such calls - see 'Writing R
    Extensions' SS6.6.2.  (This has been supported since R 3.6.2.)
  * Package installation speed for packages installed with
    keep.source has been improved. This resolve the issue reported by
    Ofek Shilon in PR#18236.
  UTILITIES:
  * R CMD check can optionally report files/directories left behind
    in home, /tmp (even though TMPDIR is set) and other directories.
    See the "R Internals" manual for details.
  * R CMD check now reports byte-compilation errors during
    installation.  These are not usually fatal but may result in
    parts of the package not being byte-compiled.
  * _R_CHECK_DEPENDS_ONLY_ can be applied selectively to examples,
    tests and/or vignettes in R CMD check: see the "R Internals"
    manual.
  * _R_CHECK_SRC_MINUS_W_IMPLICIT_ now defaults to true: recent
    versions of Apple clang on macOS have made implicit function
    declarations in C into a compilation error.
  * R CMD check --as-cran makes use of the environment variable
    AUTORECONF.  See the "R Internals" manual SS8 for further details.
  * R CMD check --use-valgrind also uses valgrind when re-building
    vignettes as some non-Sweave vignettes unhelpfully comment out
    all their code when R CMD check runs vignettes.
  * Errors in re-building vignettes (unless there are LaTeX errors)
    are reported by R CMD check as ERROR rather than WARNING when
    running vignettes has been skipped (as it frequently is in CRAN
    checks and by --as-cran).
  * R CMD Rd2pdf gains a --quiet option that is used by R CMD build
    when building the PDF package manual.
  * R CMD Rd2pdf now always runs LaTeX in batch mode, consistent with
    Texinfo &gt;= 6.7. The --batch option is ignored.
  * R CMD build and R CMD check now include the Rd file name and line
    numbers in the error message of an \Sexpr evaluation failure.
  * For packages using the \doi Rd macro (now an install-time \Sexpr)
    but no other dynamic Rd content, R CMD build now produces a
    smaller tarball and is considerably faster - skipping temporary
    package installation.
  C-LEVEL FACILITIES:
  * The non-API header R_ext/R-ftp-http.h is no longer provided, as
    the entry points it covered are now all defunct.
  * A number of non-API declarations and macro definitions have been
    moved from the installed header Rinternals.h to the internal
    header Defn.h. Packages that only use entry points and
    definitions documented to be part of the API as specified in
    'Writing R Extensions' SS6 should not be affected.
  * The macro USE_RINTERNALS no longer has any effect when compiling
    package code.  Packages which also use R_NO_REMAP will need to
    ensure that the remapped names are used for calls to API
    functions that were formerly also made available as macros.
  * The deprecated legacy S-compatibility macros PROBLEM, MESSAGE,
    ERROR, WARN, WARNING, RECOVER, ... are no longer defined in
    R_exts/RS.h (included by R.h).  Replace these by calls to
    Rf_error and Rf_warning (defined in header R_ext/Error.h included
    by R.h).
    Header R_ext/RS.h no longer includes R_ext/Error.h.
  * Header R_ext/Constants.h (included by R.h) when included from C++
    now includes the C++ header cfloat rather than the C header
    float.h (now possible as C++11 is required).
  * The legacy S-compatibility macros DOUBLE_* in R_ext/Constants.h
    (included by R.h) are deprecated.
  * The deprecated S-compatibility macros SINGLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * R_Calloc, R_Free and R_Realloc are preferred to their unprefixed
    forms and error messages now use the prefix. These forms were
    introduced in R 3.4.0 and are available even when
    STRICT_R_HEADERS is defined.
  * rmultinom has been documented in 'Writing R Extensions' SS6 so is
    now part of the R API.
  * Similarly, Rtanpi, called from R level tanpi() is now part of the
    R API.
  * The long-deprecated, undocumented and non-API entry point call_R
    is no longer declared in R_ext/RS.h (included by R.h).
  * The header S.h which has been unsupported since Jan 2016 has been
    removed.  Use R.h instead.
  DEPRECATED AND DEFUNCT:
  * The (non-default and deprecated) method = "internal" for
    download.file() and url() no longer supports http:// nor ftp://
    URIs.  (It is used only for file:// URIs.)
    On Windows, download.file(method = "wininet") no longer supports
    ftp:// URIs.  (It is no longer the default method, which is
    "libcurl" and does.)
    On Windows, the deprecated method = "wininet" now gives a warning
    for http:// and https:// URIs for both download.file() and url().
    (It is no longer the default method.)
  * On Windows, the command-line option --max-mem-size and
    environment variable R_MAX_MEM_SIZE are defunct.  The memory
    allocation limit was important for 32-bit builds, but these are
    no longer supported.
  * default.stringsAsFactors() is now formally deprecated, where that
    was only mentioned on its regular help page, previously.  So it
    now gives a warning if called.
  * unix.time() is defunct now; it had been deprecated since R 3.4.0.
  BUG FIXES:
  * Setting digits = 0 in format(), print.default() (and hence
    typically print()) or options() is again invalid.  Its behaviour
    was platform-dependent, and it is unclear what "zero significant
    digits" should mean (PR#18098).
  * Messages from C code in the cairo section of package grDevices
    are now also offered for translation, thanks to Michael Chirico's
    PR#18123.
  * mean(x) with finite x now is finite also without "long.double"
    capability.
  * R CMD Rd2pdf no longer leaves an empty build directory behind
    when it aborts due to an already existing output file.  (Thanks
    to Sebastian Meyer's PR#18141.)
  * density(x, weights = w, na.rm = TRUE) when anyNA(x) is true, now
    removes weights "in parallel" to x, fixing PR#18151, reported by
    Matthias Gondan.  Additionally, it gets a subdensity option.
  * Conversion of \Sexpr[]{&lt;expR&gt;} to LaTeX or HTML no longer
    produces long blocks of empty lines when &lt;expR&gt; itself contains
    several lines all producing empty output.  Thanks to a report and
    patch by Ivan Krylov posted to R-devel.
  * R CMD build no longer fails if a package vignette uses child
    documents and inst/doc exists.  (Thanks to Sebastian Meyer's
    PR#18156.)
  * When an R documentation ('help' source) file man/foo.Rd in a
    package has \donttest{..} examples with a syntax error, it is now
    signalled as ERROR and with correct line numbers relating to the
  * -Ex.R file, thanks to Duncan Murdoch and Sebastian Meyer's
    reports and patch proposals in PR#17501.
  * Improved determination of the correct translation domain in
    non-base packages, addressing the combination of PR#18092 and
    PR#17998 (#c6) with reports and _augmented_ patch #2904 by
    Suharto Anggono.
    Note that "R-base" is no longer the default domain e.g., for
    top-level calls to gettext(); rather translation needs explicit
    domain = * specification in such cases.
  * identical(attrib.as.set=FALSE) now works correctly with data
    frames with default row names (Thanks to Charlie Gao's PR#18179).
  * txtProgressBar() now enforces a non-zero width for argument char,
    without which no progress can be visible.
  * dimnames(table(d)) is more consistent in the case where d is a
    list with a single component, thanks to Thomas Soeiro's report to
    R-devel.
    Further, table(d1, d2) now gives an error when d1 and d2 are data
    frames as suggested by Thomas in PR#18224.
  * Fix for drawing semi-transparent lines and fills on the native
    Windows graphics device (PR#18219 and PR#16694).  Thanks to Nick
    Ray for helpful diagnosis on Bugzilla.
  * The deparser now wraps sub-expressions such as if(A) ..  with
    parentheses when needed; thanks to Duncan Murdoch's PR#18232 and
    Lionel Henry's patches there.
  * remove.packages() no longer tries to uninstall Priority: base
    packages, thanks to a report and suggestions by Colin Fay in
    PR#18227.
  * win.metafile() now has xpinch and ypinch arguments so that the
    user can override Windows' (potentially wrong) guess at device
    dimensions.
  * x[i] and x[[i]] for non-integer i should now behave in all cases
    as always documented: the index used is equivalent to
    as.integer(i) unless that would overflow where trunc(i) is used
    instead; thanks to Suharto Anggono's report and patch proposals
    in PR#17977.
  * asOneSidedFormula() now associates the resulting formula with the
    global environment rather than the evaluation environment created
    for the call.
  * &lt;bibentry&gt;$name now matches the field name case-insensitively,
    consistent with bibentry() creation and the replacement method.
  * cbind() failed to detect some length mismatches with a mixture of
    time-series and non-time-series inputs.
  * The default LaTeX style file Sweave.sty used by the RweaveLatex
    driver no longer loads the obsolete ae package; thanks to a
    report by Thomas Soeiro in PR#18271.  Furthermore, it now skips
    \usepackage[T1]{fontenc} for engines other than pdfTeX (if
    detected) or if the new [nofontenc] option is used.
  * smooth.spline() now stores its logical cv argument more safely,
    fixing a rare bug when printing, and also stores n.
  * smooth.spline(x,y,*) now computes the cv.crit statistic
    correctly, also when is.unsorted(x), fixing PR#18294.
  * The data.frame method of rbind() now warns when binding
    not-wholly-recycling vectors, by analogy to the default method
    (for matrices).
  * setAs() finds the correct class for name to when multiple
    packages define a class with that name. Thanks to Gabor Csardi
    for the report.
  * Fix for detaching a package when two classes of the same name are
    present in method signatures for the same generic. Thanks to
    Gabor Csardi for the report.
  * match.arg("", c("", "a", "B")) gives a better error message, in
    part from PR#17959, thanks to Elin Waring.
  * R CMD Sweave --clean no longer removes pre-existing files or
    subdirectories (PR#18242).
  * The quartz() device no longer splits polylines into subpaths.
    That has caused narrowly-spaced lines with many points to always
    look solid even when dashed line type was used due to dash phase
    restarts.
  * Deparsing constructs such as quote(1 + `!`(2) + 3) works again as
    before R 3.5.0, thanks to the report and patch in PR#18284 by
    Suharto Anggono.
  * as.list(f) for a factor f now keeps names(f), fixing PR#18309.
  * qbeta(.001, .9, .009) and analogous qf() calls now return a
    correct value instead of NaN or wrongly 1, all with a warning;
    thanks to the report by Ludger Goeminne in PR#18302.
  * plot.lm() failed to produce the plot of residuals vs.  factor
    levels (i.e., which=5 when leverages are constant) for models
    with character predictors (PR#17840).
  * interaction.plot(..., xtick = TRUE) misplaced the x-axis line
    (PR#18305).
  * Not strictly fixing a bug, format()ing and print()ing of
    non-finite Date and POSIXt values NaN and +/-Inf no longer show
    as NA but the respective string, e.g., Inf, for consistency with
    numeric vector's behaviour, fulfilling the wish of PR#18308.
  * R CMD check no longer runs test scripts generated from
    corresponding .Rin files twice and now signals an ERROR if
    processing an .Rin script fails.
  * tools::Rd2txt() used for plain-text help pages now renders \hrefs
    (if tools::Rd2txt_options(showURLs = TRUE)) and \urls with
    percent-encoding and standards-compliant delimiting style (angle
    brackets and no URL: prefix).  \email is now rendered with a
    mailto: prefix.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1655985600">- CHANGES IN R 4.2.1:
  NEW FEATURES:
  * New function utils::findCRANmirror() to find out if a CRAN mirror
    has been selected, otherwise fallback to the main site.  This
    behaves in the same way as tools::CRAN_package_db() and is
    intended for packages wishing to access CRAN for purposes other
    than installing packages.
    The need for this was shown by a day when the main CRAN website
    was offline and a dozen or so packages which had its URL
    hardcoded failed their checks.
  INSTALLATION on a UNIX-ALIKE:
  * The libraries searched for by --with-blas (without a value) now
    include BLIS (after OpenBLAS but before ATLAS).  And on macOS,
    the Accelerate framework (after ATLAS).  (This is patterned after
    the AX_BLAS macro from the Autoconf Archive.)
  * The included LAPACK sources have been updated to 3.10.1.
  UTILITIES:
  * The (full path to) the command tidy to be used for HTML
    validation can be set by environment variable R_TIDYCMD.
  * Setting environment variable _R_CHECK_RD_VALIDATE_RD2HTML_ to a
    false value will override R CMD check --as-cran and turn off HTML
    validation.  This provides a way to circumvent a problematic
    tidy.
    The 2006 version that ships with macOS is always skipped.
  C-LEVEL FACILITIES:
  * The undocumented legacy declarations of Sint, Sfloat, SINT_MAX
    and SINT_MIN in header R.h are deprecated.
  BUG FIXES:
  * fisher.test(d) no longer segfaults for "large" d; fixing PR#18336
    by preventing/detecting an integer overflow reliably.
  * tar(., files=*) now produces correctly the warning about invalid
    uid or gid of files, fixing PR#18344, reported by Martin Morgan.
  * tk_choose.files() with multi = FALSE misbehaved on paths
    containing spaces (PR#18334) (regression introduced in R 4.0.0).
  * sort(x, partial = ind, *) now works correctly notably for the
    non-default na.last = FALSE or TRUE, fixing PR#18335 reported by
    James Edwards.
  * Environment variable _R_CHECK_XREFS_REPOSITORIES_ is only used
    for checking .Rd cross-references in R CMD check (as documented)
    and not for other uses looking for a CRAN mirror.
  * The search for a CRAN mirror when checking packages now uses
    getOption("repos") if that specifies a CRAN mirror, even when it
    does not also specify all three Bioconductor repositories (as was
    previously required).
  * The HTML code generated by tools::Rd2HTML() has been improved to
    pass tidy 5.8.0.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1667217600">- CHANGES IN R 4.2.2:
  NEW FEATURES:
  * tools::Rdiff(useDiff = TRUE) checks for the presence of an
    external diff command and switches to useDiff = FALSE if none is
    found.  This allows R CMD Rdiff to always work.
  * On Windows, environment variable R_LIBCURL_SSL_REVOKE_BEST_EFFORT
    can be used to switch to only 'best-effort' SSL certificate
    revocation checks with the default "libcurl" download method.
    This reduces security, but may be needed for downloads to work
    with MITM proxies (PR#18379).
  * (macOS) The run-time check for libraries from XQuartz for X11 and
    Tcl/Tk no longer uses otool from the Apple Developer Tools
    (PR#18400).
  * The LaTeX style for producing the PDF manuals, Rd.sty, now loads
    the standard amsmath, amsfonts and amssymb packages for greater
    coverage of math commands in the Rd \eqn and \deqn macros.  The
    \mathscr LaTeX command is also provided (via the mathrsfs
    package, if available, or the amsfonts bundle otherwise),
    fulfilling the wish of PR#18398.
  * (Windows) The default format of readClipboard() and
    writeClipboard() has been changed to 13 (CF_UNICODETEXT).
  INSTALLATION on a UNIX-ALIKE:
  * The PDF manuals (if built) can be compacted by the new target
    make compact-pdf (at the top level or in directory doc/manual).
  * There is now configure support for LLVM clang 15 on Linux, which
    defaults to position-independent (PIE) executables whereas
    gfortran does not.
  * Many small changes to ease compilation (and suppress warnings)
    with LLVM clang 15.
  BUG FIXES:
  * Rscript -e would fail if stdin were closed (Reported by Henrik
    Bengtsson.)
  * qt(*, log.p=TRUE) in outer tails no longer produces NaN in its
    final steps, thus fixing PR#18360.
  * tools::Rd2latex() now escapes hashes and ampersands when writing
    URLs, fixing LaTeX errors with such URLs in \tabular.
  * When isGeneric(f, fdef=*) is used with mismatching names, the
    warning is better understandable; reported (with fix) in PR#18370
    by Gabe Becker.
  * poly(x, n) now works again (and is now documented) when x is a
    "Date" or "POSIXct" object, or of another class while fulfilling
    mode(x) == "numeric".  This also enables poly(x, *, raw=TRUE) for
    such variables.  Reported by Michael Chirico to R-devel.
  * write.table(), write.csv() and write.csv2() restore their
    numerical precision (internal equivalent of digits = 15) after an
    interrupt (PR#18384).
  * One can now read also byte FF from a clipboard connection
    (PR#18385).
  * source("") and source(character()) now give more helpful error
    messages.
  * R CMD check --as-cran set _R_CHECK_TIMINGS_ too late to have the
    intended effect.
  * as.POSIXlt(x) now also works with very large dates x, fixing
    PR#18401 reported by Hannes M"uhleisen.
  * Files can now be extracted even from very large zip archives
    (PR#18390, thanks to Martin Jakt).
  * Non-finite objects of class "POSIXlt" are now correctly coerced
    to classes "Date" and "POSIXct"; following up on the extension to
    format() them correctly.
  * Added methods for is.finite(), is.infinite() and is.nan() for
    "POSIXlt" date-time objects.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1678881600">- CHANGES IN R 4.2.3:
  C-LEVEL FACILITIES:
  * The definition of DL_FUNC in R_ext/Rdynload.h has been changed to
    be fully C-compliant.  This means that functions loaded _via_ for
    example R_GetCCallable need to be cast to an appropriate type if
    they have any arguments.
  * .Machine has a new element sizeof.time_t to identify old systems
    with a 32-bit type and hence a limited range of date-times (and
    limited support for dates millions of years from present).
  PACKAGE INSTALLATION:
  * (Windows) The default C++ standard had accidentally been left at
    C++11 when it was changed to C++14 on Unix.
  BUG FIXES:
  * As "POSIXlt" objects may be "partially filled" and their list
    components meant to be recycled, length() now is the length of
    the longest component.
  * as.POSIXlt.Date() could underflow for dates in the far past (more
    than half a million years BCE).
  * as.Date.POSIXlt(x) would return "1970-01-01" instead of NA in R
    4.2.2, e.g., for
    x &lt;- as.POSIXlt(c("2019-01-30","2001-1-1"))
    x$mon &lt;- c(0L, NA); as.Date(x)
  * R CMD check failed to apply enabled _R_CHECK_SUGGESTS_ONLY_ to
    examples and vignettes (regression in R 4.2.0).
  * R CMD check did not re-build vignettes in separate processes by
    default (regression in R 4.2.0).
  * Running examples from HTML documentation now restores previous
    knitr settings and options (PR#18420).
  * Quartz: fonts are now located using Core Graphics API instead of
    deprecated ATS which is no longer supported in the macOS 13 SDK
    (PR#18426).  This also addresses an issue where the currently
    used font in the Quartz device context was not correctly
    retained.
  * (Windows) Math symbols in text drawing functions are again
    rendered correctly (PR#18440).  This fixes a regression in R
    4.2.1 caused by a fix in PR#18382 which uncovered an issue in
    GraphApp due to which the symbol charset was not used with TT
    Symbol font face.
  * (Windows) Installing a package with a src/Makefile.{win,ucrt}
    file includes ~/.R/Makevars.win64 in the search for user
    makevars, as documented in "R Installation and Administration"
    and done for packages with a src/Makevars.{win,ucrt} file.
  * format(&lt;POSIXlt_w/_unbalanced_sec&gt;, "....%OS&lt;n&gt;") with n &gt; 0 no
    longer accidentally uses the unbalanced seconds, thanks to
    Suharto Anggono's report (including patch) in PR#18448.
  * solve.default(a, b) works around issues with some versions of
    LAPACK when a contains NA or NaN values.
  * When UseMethod() cannot dispatch, it no longer segfaults
    producing the error message in case of a long class(), thanks to
    Joris Vankerschaver's report (including patch) in PR#18447.
  * When example(foo, ..) produces graphics on an interactive device
    it needs to open itself, it now leaves devAskNewPage() unchanged
    even when it was FALSE, thus fixing a 14 years old '&lt;FIXME&gt;'.
  * packageDescription() again catches errors from encoding
    conversions. This also fixes broken packageVersion() in C locale
    on systems where iconv does not support transliteration.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1681128000">- add patch to build with libcurl &gt;= 8</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1682078400">- CHANGES IN R 4.3.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Calling &amp;&amp; or || with LHS or (if evaluated) RHS of length greater
    than one is now always an error, with a report of the form
    'length = 4' in coercion to 'logical(1)'
    Environment variable _R_CHECK_LENGTH_1_LOGIC2_ no longer has any
    effect.
  NEW FEATURES:
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.10.1.  (This caused some platform-dependent
    changes to package check output.)  And then to the sources from
    LAPACK version 3.11.0 (with changes only to double complex
    subroutines).
  * The included LAPACK sources have been updated to include the four
    Fortran 90 routines rather than their Fortran 77 predecessors.
    This may give some different signs in SVDs or
    eigendecompositions..  (This completes the transition to LAPACK
    3.10.x begun in R 4.2.0.)
  * The LAPACK sources have been updated to version 3.11.0.  (No new
    subroutines have been added, so this almost entirely bug fixes:
    Those fixes do affect some computations with NaNs, including R's
    NA.)
  * The parser now signals _classed_ errors, notably in case of the
    pipe operator |&gt;.  The error object and message now give line and
    column numbers, mostly as proposed and provided by Duncan Murdoch
    in PR#18328.
  * toeplitz() is now generalized for asymmetric cases, with a
    toeplitz2() variant.
  * xy.coords() and xyz.coords() and consequently, e.g., plot(x,y,
    log = "y") now signal a _classed_ warning about negative values
    of y (where log(.) is NA).  Such a warning can be specifically
    suppressed or caught otherwise.
  * Regular expression functions now check more thoroughly whether
    their inputs are valid strings (in their encoding, e.g. in
    UTF-8).
  * The performance of grep(), sub(), gsub() and strsplit() has been
    improved, particularly with perl = TRUE and fixed = TRUE.  Use of
    useBytes = TRUE for performance reasons should no longer be
    needed and is discouraged: it may lead to incorrect results.
  * apropos() gains an argument dot_internals which is used by the
    completion (help(rcompgen)) engine to also see base internals
    such as .POSIXct().
  * Support in tools::Rdiff() for comparing uncompressed PDF files is
    further reduced - see its help page.
  * qqplot(x, y, ...) gains conf.level and conf.args arguments for
    computing and plotting a confidence band for the treatment
    function transforming the distribution of x into the distribution
    of y (Switzer, 1976, _Biometrika_). Contributed by Torsten
    Hothorn.
  * Performance of package_dependencies() has been improved for cases
    when the number of dependencies is large.
  * Strings newly created by gsub(), sub() and strsplit(), when any
    of the inputs is marked as "bytes", are also marked as "bytes".
    This reduces the risk of creating invalid strings and accidental
    substitution of bytes deemed invalid.
  * Support for readLines(encoding = "bytes") has been added to allow
    processing special text files byte-by-byte, without creating
    invalid strings.
  * iconv(from = "") now takes into account any declared encoding of
    the input elements and uses it in preference to the native
    encoding.  This reduces the risk of accidental creation of
    invalid strings, particularly when different elements of the
    input have different encoding (including "bytes").
  * Package repositories in getOption("repos") are now initialized
    from the repositories file when utils is loaded (if not already
    set, e.g., in .Rprofile).  (From a report and patch proposal by
    Gabriel Becker in PR#18405.)
  * compactPDF() gets a verbose option.
  * type.convert() and hence read.table() get new option tryLogical =
    TRUE with back compatible default.  When set to false, converts
    "F" or "T" columns to character.
  * Added new unit prefixes "R" and "Q" for abbreviating
    (unrealistically large) sizes beyond 10^{27} in standard = "SI",
    thanks to Henrik Bengtsson's PR#18435.
  * as.data.frame()'s default method now also works fine with atomic
    objects inheriting from classes such as "roman", "octmode" and
    "hexmode", such fulfilling the wish of PR#18421, by Benjamin
    Feakins.
  * The as.data.frame.vector() utility now errors for wrong-length
    row.names.  It warned for almost six years, with "Will be an
    error!".
  * sessionInfo() now also contains La_version() and reports codepage
    and timezone when relevant, in both print() and toLatex() methods
    which also get new option tzone for displaying timezone
    information when locale = FALSE.
  * New function R_compiled_by() reports the C and Fortran compilers
    used to build R, if known.
  * predict(&lt;lm&gt;, newdata = *) no longer unnecessarily creates an
    offset of all 0s.
  * solve() for complex inputs now uses argument tol and by default
    checks for 'computational singularity' (as it long has done for
    numeric inputs).
  * predict(&lt;rank-deficient lm&gt;, newdata=*) now obeys a new argument
    rankdeficient, with new default "warnif", warning only if there
    are non-estimable cases in newdata.  Other options include
    rankdeficient = "NA", predicting NA for non-estimable newdata
    cases.  This addresses PR#15072 by Russ Lenth and is based on his
    original proposal and discussions in PR#16158 also by David Firth
    and Elin Waring.  Still somewhat experimental.
  * Rgui console implementation now works better with the NVDA screen
    reader when the full blinking cursor is selected.  The underlying
    improvements in cursor handling may help also other screen
    readers on Windows.
  * The drop-field control in GraphApp can now be left with the TAB
    key and all controls can be navigated in the reverse order using
    the Shift+TAB key, improving accessibility of the Rgui
    configuration editor.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now fully accurate
    (instead of to "only" minimally five digits).
  * demo(error.catching) now also shows off withWarnings() and
    tryCatchWEMs().
  * As an experimental feature the placeholder _ can now also be used
    in the rhs of a forward pipe |&gt; expression as the first argument
    in an extraction call, such as _$coef. More generally, it can be
    used as the head of a chain of extractions, such as _$coef[[2]].
  * Spaces in the environment variable used to choose the R session's
    temporary directory (TMPDIR, TMP and TEMP are tried in turn) are
    now fatal.  (On Windows the 'short path' version of the path is
    tried and used if that does not contain a space.)
  * all.equal.numeric() gets a new optional switch giveErr to return
    the numeric error as attribute.  Relatedly,
    stopifnot(all.equal&lt;some&gt;(a, b, ..)) is as "smart" now, as
    stopifnot(all.equal(....)) has been already, thus allowing
    customized all.equal&lt;Some&gt;() wrappers.
  * R on Windows is now able to work with path names longer than 260
    characters when these are enabled in the system (requires at
    least Windows 10 version 1607).  Packages should be updated to
    work with long paths as well, instead of assuming PATH_MAX to be
    the maximum length.  Custom front-ends and applications embedding
    R need to update their manifests if they wish to allow this
    feature.  See
    &lt;https://blog.r-project.org/2023/03/07/path-length-limit-on-windows&gt;
    for more information.
  * 'Object not found' and 'Missing argument' errors now give a more
    accurate error context. Patch provided by Lionel Henry in
    PR#18241.
  * The @ operator is now an S3 generic. Based on contributions by
    Tomasz Kalinowski in PR#18482.
  * New generic chooseOpsMethod() provides a mechanism for objects to
    resolve cases where two suitable methods are found for an Ops
    Group Generic. This supports experimenting with alternative
    object systems. Based on contributions by Tomasz Kalinowski in
    PR#18484.
  * inherits(x, what) now accepts values other than a simple
    character vector for argument what. A new generic, nameOfClass(),
    is called to resolve the class name from what. This supports
    experimenting with alternative object systems. Based on
    contributions by Tomasz Kalinowski in PR#18485.
  * Detection of BLAS/LAPACK in use (sessionInfo()) with FlexiBLAS
    now reports the current backend.
  * The "data.frame" method for subset() now warns about extraneous
    arguments, typically catching the use of = instead of == in the
    subset expression.
  * Calling a:b when numeric a or b is longer than one may now be
    made into an error by setting environment variable
    _R_CHECK_LENGTH_COLON_ to a true value, along the proposal in
    PR#18419 by Henrik Bengtsson.
  * density(x, weights = *) now warns if automatic bandwidth
    selection happens without using weights; new optional warnWbw may
    suppress the warning.  Prompted by Christoph Dalitz' PR#18490 and
    its discussants.
  * rm(list = *) is faster and more readable thanks to Kevin Ushey's
    PR#18492.
  * The plot.lm() function no longer produces a normal Q-Q plot for
    GLMs. Instead it plots a half-normal Q-Q plot of the absolute
    value of the standardized deviance residuals.
  * The print() method for class "summary.glm" no longer shows
    summary statistics for the deviance residuals by default.  Its
    optional argument show.residuals can be used to show them if
    required.
  * The tapply() function now accepts a data frame as its X argument,
    and allows INDEX to be a formula in that case. by.data.frame()
    similarly allows INDICES to be a formula.
  * The performance of df[j] &lt;- value (including for missing j) and
    write.table(df) has been improved for data frames df with a large
    number of columns.  (Thanks to Gabriel Becker's PR#18500,
    PR#18503 and discussants, prompted by a report from Toby Dylan
    Hocking on the R-devel mailing list.)
  * The matrix multiply operator %*% is now an S3 generic, belonging
    to new group generic matrixOps.  From Tomasz Kalinowski's
    contribution in PR#18483.
  * New function array2DF() to convert arrays to data frames,
    particularly useful for the list arrays created by tapply().
  DATES and TIMES:
  * On platforms where (non-UTC) datetimes before 1902 (or before
    1900 as with system functions on recent macOS) are guessed by
    extrapolating time zones from 1902-2037, there is a warning at
    the first use of extrapolation in a session.  (As all time zones
    post 2037 are extrapolation, we do not warn on those.)
  * (Platforms using --with-internal-tzone, including Windows and by
    default macOS). How years are printed in dates or date-times can
    be controlled by environment variable R_PAD_YEARS_BY_ZERO.  The
    default remains to pad to 4 digits by zeroes, but setting value
    no gives no padding (as used by default by glibc).
  * strftime() tries harder to determine the offset for the "%z"
    format, and succeeds on the mainstream R platforms.
  * strftime() has a limit of 2048 bytes on the string produced -
    attempting to exceed this is an error.  (Previously it silently
    truncated at 255 bytes.)
  * sessionInfo() records (and by default prints) the system time
    zone as part of the locale information.  Also, the source
    (system/internal) of the date-time conversion and printing
    functions.
  * Objects of class "POSIXlt" created in this version of R always
    have 11 components: component zone is always set, and component
    gmtoff is set for times in UTC and usually set on the (almost
    all) platforms which have C-level support, otherwise is NA.
  * There are comprehensive validity checks on the structure of
    objects of class "POSIXlt" when converting (including formatting
    and printing).  (This avoids mis-conversions of hand-crafted
    objects.)
  * There is some support for using the native date-time routines on
    macOS: this is only viable on recent versions (e.g. 12.6 and 13)
    and does get wrong some historical changes (before 1900, during
    WWII).  Use of --with-internal-tzone remains the default.
  * as.POSIXct(&lt;numeric&gt;) and as.POSIXlt(.) (without specifying
    origin) now work.  So does as.Date(&lt;numeric&gt;).
  * as.Date.POSIXct(., tz) now treats several tz values, notably
    "GMT" as equivalent to "UTC", proposed and improved by Michael
    Chirico and Joshua Ulrich in PR#17674.
  * Experimental balancePOSIXlt() utility allows using "ragged" and
    or out-of-range "POSIXlt" objects more correctly, e.g., in
    subsetting and subassignments.  Such objects are now documented.
    More experimentally, a "POSIXlt" object may have an attribute
    "balanced" indicating if it is known to be filled or fully
    balanced.
  * Functions axis.Date() and axis.POSIXct() are rewritten to gain
    better default tick locations and better default formats by using
    prettyDate(). Thanks to Swetlana Herbrandt.
  * The mapping of Windows' names for time zones to IANA's 'Olson'
    names has been updated.  When ICU is available (it is by
    default), it is used to get a mapping for the current region set
    in Windows.  This can be overridden by setting environment
    variable TZ to the desired Olson name - see OlsonNames() for
    those currently available.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 16
    and so packages that provide graphics devices should be
    reinstalled.
  * The grDevices and grid packages have new functions for rendering
    typeset glyphs, primarily: grDevices::glyphInfo() and
    grid::grid.glyph().
    Rendering of typeset glyphs is only supported so far on the
    Cairo-based graphics devices and on the pdf() and quartz()
    devices.
  * The defined behaviour for "clear" and "source" compositing
    operators (via grid::grid.group()) has been changed (to align
    better with simple interpretation of original Porter-Duff
    definitions).
  * Support for gradients, patterns, clipping paths, masks, groups,
    compositing operators, and affine transformations has been added
    to the quartz() device.
  INSTALLATION on a UNIX-ALIKE:
  * A system installation of generic LAPACK 3.10.0 or later will be
    preferred to the version in the R sources.
    configure option --with-lapack=no (equivalently --without-lapack)
    forces compilation of the internal LAPACK sources.
    If --with-lapack is not specified, a system liblapack is looked
    for and used if it reports version 3.10.0 or later and does not
    contain BLAS routines.
    Packages using LAPACK will need to be reinstalled if this changes
    to using an external library.
  * On aarch64 Linux platforms using GCC, configure now defaults to
  - fPIC (instead of -fpic), as desired in PR#18326.
  * configure now checks conversion of datetimes between POSIXlt and
    POSIXct around year 2020.  Failure (which has been seen on
    platforms missing tzdata) is fatal.
  * If configure option --with-valgrind-instrumentation is given
    value 1 or 2, option --with-system-valgrind-headers is now the
    default and ignored (with a warning).  It is highly recommended
    that the system headers are installed alongside valgrind: they
    are part of its packaging on some Linux distributions and
    packaged separately (e.g. in the valgrind-devel RPM) on others.
    configure will give a warning if they are not found.
    The system headers will be required in a future release of R to
    build with valgrind instrumentation.
  * libcurl 8.x is now accepted by configure: despite a change in
    major version number it changes neither API nor ABI.
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools43, an update of the Rtools42 toolchain.  It is
    based on gcc 12 and newer versions of MinGW-W64, binutils and
    libraries.  At this time R-devel can still be built using
    Rtools42 without changes, but when R-devel is installed via the
    installer, it will by default look for Rtools43.
  * Old make targets rsync-extsoft and 32-bit ones that are no longer
    needed have been removed.
  * Default builds (including for packages) no longer select C99.
    Thus the C standard used is the default for the compiler, which
    for the toolchain in Rtools43 is C17.  (This is consistent with
    Unix builds.)
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++17 where
    available (which it is on all currently checked platforms): if
    not C++14 or C++11 is used if available otherwise C++ is not
    supported.
  * USE_FC_LEN_T is the default: this uses the correct
    (compiler-dependent) prototypes for Fortran BLAS/LAPACK routines
    called from C/C++, and requires adjustment of many such calls -
    see 'Writing R Extensions' SS6.6.1.
  * There is initial support for C++23 as several compilers are now
    supporting -std=c++23 or -std=c++2b or similar.  As for C++20,
    there no additional configure checks for C++23 features beyond a
    check that the compiler reports a __cplusplus value greater than
    that in the C++20 standard.  C++ feature tests should be used.
  * There is support for a package to indicate the version of the C
    standard which should be used to compile it, and for the
    installing user to specify this.  In most cases R defaults to the
    C compiler's default standard which is C17 (a `bug-fix' of C11) -
    earlier versions of R or compilers may have defaulted to C99.
    Current options are:
    USE_C17 Use a standard that is at most C17.  The intention is to
    allow legacy packages to still be installed when later C
    standards become the default, including packages using new
    keywords as identifiers or with K&amp;R-style function
    declarations.  This will use C17 if available, falling back
    to C11.
    USE_C90 Use the C90 (aka C89) standard.  (As that standard did
    not require compilers to identify that version, all we can
    verify is that the compiler does not claim to be using a
    later standard.  It may accept C99 features - for example
    clang accepts // to make comments.)
    USE_C99 Use the C99 standard. This should be rarely needed - it
    avoids the few new features of C11/C17 which can be useful if
    a package assumes them if C17 is specified and they are not
    implemented.
    USE_C23 Use C23 (or in future, later).  Compiler/library support
    for C23 is still being implemented, but LLVM clang from
    15.0.0 and the upcoming GCC 13 have quite extensive support.
    These can be specified as part of the SystemRequirements field in
    the package's DESCRIPTION file or _via_ options --use-C17 and so
    on of R CMD INSTALL and R CMD SHLIB.
    For further details see "Writing R Extensions" SS1.2.5.
  * (Windows) A src/Makefile.ucrt or src/Makefile.win file is now
    included after R_HOME/etcR_ARCH/Makeconf and so no longer needs
    to include that file itself.  Installation of a package with such
    a file now uses a site Makevars file in the same way as a package
    with a src/Makevars.win file would.
  * configure is now passed crucial variables such as CC and CFLAGS
    in its environment, as many packages were not setting them (as
    documented in 'Writing R Extensions' SS1.2).
    This has most effect where configure is used to compile parts of
    the package - most often by cmake or libtool which obfuscate the
    actual compile commands used.
    Also used for configure.win and configure.ucrt on Windows.
  FORTRAN FLAGS:
  * The flag -fno-optimize-sibling-calls is no longer forced for
    gfortran 7 and later.  It should no longer be needed now using
    'hidden' character-length arguments when calling BLAS/LAPACK
    routines from C/C++ is the default even for packages.  (Unless
    perhaps packages call Fortran code from C/C++ without using R's
    headers and without allowing for these arguments.)
  C-LEVEL FACILITIES:
  * The deprecated S-compatibility macros DOUBLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * The deprecated legacy typedefs of Sint and Sfloat in header R.h
    are no longer defined, and that header no longer includes header
    limits.h from C nor climits from C++.
  * New macro CAD5R() is provided in Rinternals.h and used in a few
    places in the R sources.
  * ALTREP now supports VECSXP vectors. Contributed by Gabor Csardi
    in PR#17620.
  * The Rcomplex definition (in header R_ext/Complex.h) has been
    extended to prevent possible mis-compilation when interfacing
    with Fortran (PR#18430).  The new definition causes compiler
    warnings with static initializers such as {1, 2}, which can be
    changed to {.r=1, .i=2}.
    Using the new definition from C++ depends on compiler extensions
    supporting C features that have not been incorporated into the
    C++ standards but are available in g++ and clang++: this may
    result in C++ compiler warnings but these have been worked around
    for recent versions of common compilers (GCC, Apple/LLVM clang,
    Intel).
    It is intended to change the inclusion of header R_ext/Complex.h
    by other R headers, so C/C++ code files which make use of
    Rcomplex should include that header explicitly.
  UTILITIES:
  * R CMD check does more checking of package .Rd files, warning
    about invalid email addresses and (some) invalid URIs and noting
    empty \item labels in description lists.
  * R CMD check now also reports problems when reading package news
    in md (file NEWS.md) and (optionally) plain text (file NEWS)
    formats.
  * _R_CHECK_TIMINGS_ defaults to a value from the environment even
    for R CMD check --as-cran; this allows for exceptionally fast or
    slow platforms.
    It now applies to checking PDF and HTML versions of the manuals,
    and 'checking CRAN incoming feasibility'.
  * R CMD check can optionally (but included in --as-cran) check
    whether HTML math rendering _via_ KaTeX works for the package .Rd
    files.
  * Non-interactive debugger invocations can be trapped by setting
    the environment variable _R_CHECK_BROWSER_NONINTERACTIVE_ to a
    true value.  This is enabled by R CMD check --as-cran to detect
    the use of leftover browser() statements in the package.
  * The use of sprintf and vsprintf from C/C++ has been deprecated in
    macOS 13 and is a known security risk.  R CMD check now reports
    (on all platforms) if their use is found in compiled code:
    replace by snprintf or vsnprintf respectively. [*NB:* whether
    such calls get compiled into the package is platform-dependent.]
  * Where recorded at installation, R CMD check reports the C and
    Fortran compilers used to build R.
    It reports the OS in use (if known, as given by osVersion) as
    well as that R was built for.
    It notes if a C++ standard was specified which is older than the
    current default: many packages have used C++11 to mean 'not
    C++98' - as C++11 is the minimum supported since R 4.0.0, that
    specification can probably be removed.
  * R CMD INSTALL reports the compilers (and on macOS, the SDK) used,
    and this is copied to the output of R CMD check.
    Where a C++ standard is specified, it is reported.
  * R CMD check's 'checking compilation flags in Makevars' has been
    relaxed to accept the use of flags such as -std=f2008 in
    PKG_FFLAGS.
  * tools::buildVignettes() has a new argument skip, which is used by
    R CMD check to skip (and note) vignettes with unavailable
    \VignetteDepends (PR#18318).
  * New generic .AtNames() added to enable class-specific completions
    after @. The formerly internal function findMatches() is now
    exported, mainly for use in methods for .DollarNames() and
    .AtNames().
  DEPRECATED AND DEFUNCT:
  * default.stringsAsFactors() is defunct.
  * Calling as.data.frame.&lt;class&gt;() directly (for 12 atomic classes)
    is going to be formally deprecated, currently activated by
    setting the environment variable
    _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ to non-empty, which also
    happens in R CMD check --as-cran.
  BUG FIXES:
  * Hashed environments with sizes less than 5 can now grow.
    (Reported to R-devel by Duncan Garmonsway.)
  * as.character(&lt;Rd&gt;, deparse = TRUE) failed to re-escape curly
    braces in LaTeX-like text.  (Reported by Hadley Wickham in
    PR#18324.)
  * library() now passes its lib.loc argument when requiring Depends
    packages; reported (with fix) in PR#18331 by Mikael Jagan.
  * R CMD Stangle: improved message about 'Output' files.
  * head(x, n) and tail(x, n) now signal an error if n is not
    numeric, instead of incidentally "working" sometimes returning
    all of x.  Reported and discussed by Colin Fay, in PR#18357.
  * The "lm" method for summary() now gives the correct F-statistic
    when the model contains an offset.  Reported in PR#18008.
  * C() and `contrasts&lt;-`() now preserve factor level names when
    given a function object (as opposed a function name which did
    preserve names). Reported in PR#17616.
  * c(a = 1, 2)[[]] no longer matches 2 but rather signals a
    _classed_ error.  Reported and analysed by Davis Vaughan in
    PR#18367, a duplicate of PR#18004, by Jan Meis et al.  For
    consistency, NULL[[]] is also erroneous now.  x[[]] &lt;- v gives an
    error of the same class "MissingSubscriptError".
  * The relist() function of utils now supports NULL elements in the
    skeleton (PR#15854).
  * ordered(levels = *) (missing x) now works analogously to factor(,
    ordered=TRUE); reported (with fix) by Achim Zeileis in PR#18389.
  * User-defined Rd macro definitions can now span multiple lines,
    thanks to a patch from Duncan Murdoch. Previously, the Rd parser
    silently ignored everything after the first line.
  * Plain-text help (tools::Rd2txt()) now preserves an initial blank
    line for text following description list items.
  * tools::Rd2HTML() and tools::Rd2latex() no longer split \arguments
    and \value lists at Rd comments.
  * tools::Rd2latex() now correctly handles optional text outside
    \items of argument lists as well as bracketed text at the
    beginning of sections, e.g., \value{[NULL]}.
  * as.character(&lt;POSIXt&gt;) now behaves more in line with the methods
    for atomic vectors such as numbers, and is no longer influenced
    by options().  Ditto for as.character(&lt;Date&gt;).  The
    as.character() method gets arguments digits and OutDec with
    defaults _not_ depending on options().  Use of as.character(*,
    format = .) now warns.
  * Similarly, the as.character.hexmode() and *.octmode() methods
    also behave as good citizen methods and back compatibility option
    keepStr = TRUE.
  * The as.POSIXlt(&lt;POSIXlt&gt;) and as.POSIXct(&lt;POSIXct&gt;) default
    methods now do obey their tz argument, also in this case.
  * as.POSIXlt(&lt;Date&gt;) now does apply a tz (time zone) argument, as
    does as.POSIXct(); partly suggested by Roland Fuss on the R-devel
    mailing list.
  * as.Date.POSIXlt(x) now also works when the list components are of
    unequal length, aka "partially filled" or "ragged".
  * expand.model.frame() looked up variables in the wrong environment
    when applied to models fitted without data.  Reported in
    PR#18414.
  * time() now (also) uses the ts.eps = getOption("ts.eps") argument
    and thus by default rounds values very close to the start (or
    end) of a year.  Based on a proposal by Andre"i V. Kostyrka on
    R-help.
  * Printing of a factanal() result with just one factor and sort =
    TRUE now works regularly, fixing PR#17863 by Timothy Bates,
    thanks to the 'R Contributors' working group.
  * Printing 0-length objects of class "factor", "roman", "hexmode",
    "octmode", "person", "bibentry", or "citation" now prints
    something better, one of which fixes PR#18422, reported by
    Benjamin Feakins.
  * Sys.timezone() queries timedatectl only if systemd is loaded;
    addressing a report by Jan Gorecki in PR#17421.
  * The formula method of cor.test() had scoping problems when
    environment(formula) was not the calling environment; reported
    with a patch proposal by Mao Kobayashi in PR#18439.
  * attach() of an environment with active bindings now preserves the
    active bindings.  Reported by Kevin Ushey in PR#18425.
  * BLAS detection now works also with system-provided libraries not
    available as regular files.  This fixes detection of the
    Accelerate framework on macOS since Big Sur.  Reported by David
    Novgorodsky.
  * download.file() gives a helpful error message in case of an
    invalid download.file.method option, thanks to Colin Fay's report
    in PR#18455.
  * Sporadic crashes of Rterm when using completion have been fixed.
  * Rprof() is now more reliable.  A livelock in thread
    initialization with too short sampling interval has been fixed on
    macOS.  A deadlock in using the C runtime has been fixed on
    Windows.  A potential deadlock has been prevented on Unix.
  * Cursor placement in Rgui now works even after a fixed-width font
    is selected.
  * Mandatory options (options()) are now set on startup so that
    saving and restoring them always works (PR#18372).
  * Package installation, R CMD INSTALL or install.packages(*), now
    parses each of the &lt;pkg&gt;/R/*.R files individually instead of
    first concatenating and then parse()ing the large resulting file.
    This allows parser or syntax errors to be diagnosed with correct
    file names and line numbers, thanks to Simon Dedman's report and
    Bill Dunlap's patch in PR#17859.
    This _does_ require syntactically self contained R source files
    now, fixing another inadvertent bug.
  * predict.lm(&lt;model with offset&gt;) now finds the offset in the
    correct environment, thanks to Andr'e Gillibert's report and patch
    in PR#18456.
  * getInitial(&lt;formula&gt;) now finds the selfStart model in the
    correct environment.  (Reported by Ivan Krylov in PR#18368.)
  * Fix for possible segfault when using recently-added graphics
    features, such as gradients, clipping paths, masks, and groups
    with pdf(file=NULL).
  * class(m) &lt;- class(m) no longer changes a matrix m by adding a
    class _attribute_.
  * packageDate(pkg) now only warns once if there is no pkg.
  * When ts() creates a multivariate time series, "mts", it also
    inherits from "array" now, and is.mts() is documented _and_
    stricter.
  * Rd2txt() now preserves line breaks of \verb Rd content and from
    duplicated \cr.  The former also fixes the rendering of verbatim
    output from Rd \Sexpr in plain-text help.
  * uniroot(f, interval) should no longer wrongly converge _outside_
    the interval in some cases where abs(f(x)) == Inf for an x at the
    interval boundary, thanks to posts by Ben Bolker and Serguei
    Sokol on R-devel.
  * Vectorized alpha handling in palette functions such as in gray(),
    rainbow(), or hcl.colors() works correctly now, thanks to Achim
    Zeileis' report and patch in PR#18476.
  * Formatting and print()ing of bibentry objects has dropped the
    deprecated citation.bibtex.max argument, such that the bibtex
    argument's default for print.bibentry() depends directly on the
    citation.bibtex.max option, whereas in format.bibentry() the
    option no longer applies.
  * Attempting to use a character string naming a foreign function
    entry point in a foreign function call in a package will now
    signal an error if the packages has called R_forceSymbols to
    specify that symbols must be used.
  * An error in table() could permanently set options(warn=2)
    promoting all subsequent warnings to errors.
  * The sigma() function gave misleading results for binary GLMs.  A
    new method for objects of class "glm" returns the square root of
    the estimate of the dispersion parameter using the same
    calculation as summary.glm().
  * bs() and ns() in the (typical) case of automatic knot
    construction, when some of the supposedly inner knots coincide
    with boundary knots, now moves them inside (with a warning),
    building on PR#18442 by Ben Bolker.
  * R CMD on Windows now skips the site profile with --no-site-file
    and --vanilla even when R_PROFILE is set (PR#18512, from Kevin
    Ushey).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1686916800">- CHANGES IN R 4.3.1:
  C-LEVEL FACILITIES:
  * The C-level API version of R's integrate(), Rdqags() in Applic.h,
    now returns the correct number of integrand evaluations neval,
    fixing PR#18515 reported and diagnosed by Stephen Wade.
  * The C prototypes for LAPACK calls dspgv and dtptrs in
    R_exts/Lapack.h had one too many and one too few character length
    arguments - but this has not caused any known issues. To get the
    corrected prototypes, include
    [#]include &lt;Rconfig.h&gt; // for PR18534fixed
    [#]ifdef PR18534fixed
    [#] define usePR18534fix 1
    [#]endif
    [#]include &lt;R_exts/Lapack.h&gt;
    in your C/C++ code (PR#18534).
  INSTALLATION:
  * Many of the checks of esoteric Internet operations and those
    using unreliable external sites have been moved to a new target
    that is not run by default and primarily intended for the core
    developers.  To run them use
    cd tests; make test-Internet-dev
  BUG FIXES:
  * .S3methods(), typically called from methods(), again marks
    methods from package base as visible.
    Also, the visibility of non-base methods is again determined by
    the method's presence in search().
  * tools::Rdiff() is now more robust against invalid strings, fixing
    installation tests on Windows without Rtools installed
    (PR#18530).
  * Fix (new) bug in hcl.colors(2, *), by Achim Zeileis (PR#18523).
  * head(., &lt;illegal&gt;) and tail(..) now produce more useful "Error in
    ...." error messages, fixing PR#18362.
  * Package code syntax on Windows is checked in UTF-8 when UTF-8 is
    the native encoding.
  * na.contiguous(x) now also returns the first run, when it is at
    the beginning and there is a later one of the same length;
    reported to R-devel, including a fix, by Georgi Boshnakov.
    Further, by default, it modifies only an existing attr(*,"tsp")
    but otherwise no longer sets one.
  * chol(&lt;not pos.def&gt;, pivot = &lt;T|F&gt;) now gives a correct error or
    warning message (depending on pivot), thanks to Mikael Jagan's
    (PR#18541).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1699012800">- CHANGES IN R 4.3.2:
  NEW FEATURES:
  * The default initialization of the "repos" option from the
    repositories file at startup can be skipped by setting
    environment variable R_REPOSITORIES to NULL such that
    getOption("repos") is empty if not set elsewhere.
  * qr.X() is now an implicit S4 generic in methods.
  * iconv(to = "ASCII//TRANSLIT") is emulated using substitution on
    platforms which do not support it (notably Alpine Linux).  This
    should give a human-readable conversion in ASCII on all platforms
    (rather than NA_character_).
  * trans3d() gains options continuous and verbose addressing the
    problem of possible "wrap around" when projecting too long
    curves, as reported by Achim Zeileis in PR#18537.
  * tools::showNonASCII() has been rewritten to work better on macOS
    14 (which has a changed implementation of iconv()).
  * tiff(type = "quartz") (the default on macOS) now warns if
    compression is specified: it continues to be ignored.
  INSTALLATION on a UNIX-ALIKE:
  * There is some support for building with Intel's LLVM-based
    compilers on x86_64 Linux, such as (C) icx, (C++) ipcx and
    (Fortran) ifx from oneAPI 2023.x.y.
  * There is support for using LLVM's flang-new as the Fortran
    compiler from LLVM 16.0.x (preferably 17.0.0 or later).
  UTILITIES:
  * R CMD check reports the use of the Fortran 90 random number
    generator RANDOM_NUMBER() and the subroutines to initialize it.
    'Writing R Extensions' has example code to use R's RNGs from
    Fortran.
  BUG FIXES:
  * substr(x, n, L) &lt;- cc now works (more) correctly for multibyte
    UTF-8 strings x when L &gt; nchar(x), thanks to a report and patch
    by 'Architect 95'.
  * contrib.url(character()) now returns 0-length character() as
    documented, which also avoids spurious warnings from
    available.packages() et al. in the edge case of an empty vector
    of repository URLs.
  * readChar(., 4e8) no longer fails, thanks to Kodi Arfer's report
    (PR#18557).
  * lapply(&lt;list&gt;, as.data.frame) no longer warns falsely for some
    base vector components.
  * Communication between parent and child processes in the multicore
    part of parallel could fail on platforms that do not support an
    arbitrarily large payload in system functions read()/write() on
    pipes (seen on macOS where a restriction to INT_MAX bytes is
    documented, without doing a partial read unlike Linux). The
    payload is now split into 1Gb chunks to avoid that problem.
    (PR#18571)
  * qqplot(x,y, conf.level=.) gives better confidence bounds when
    length(x) != length(y), thanks to Alexander Ploner's report and
    patch proposal (PR#18557).
  * norm(&lt;0-length&gt;, "2") now gives zero instead of an error, as all
    the other norm types, thanks to Mikael Jagan's PR#18542.
  * Build-stage Rd macros \packageAuthor and \packageMaintainer now
    process Authors@R, fixing NA results when the package DESCRIPTION
    omits Author and Maintainer fields.
  * Formatting and printing complex numbers could give things like
    0.1683-0i because of rounding error: -0i is now replaced by +0i.
  * postscript() refused to accept a title comment containing the
    letter "W" (PR#18599).
  * isoreg(c(1,Inf)) signals an error instead of segfaulting, fixing
    PR#18603.
  * tiff(type = "Xlib") was only outputting the last page of
    multi-page plots.
  * tools::latexToUtf8() again knows about \~{n} and other letters
    with tilde, fixing a regression in R 4.3.0, and about \^{i} as an
    alternative to \^{\i} (similarly with other accents).
    Furthermore, LaTeX codes for accented I letters are now correctly
    converted, also fixing related mistakes in
    tools::encoded_text_to_latex().
  * tar(*, tar = "internal") no longer creates out-of-spec tar files
    in the very rare case of user or group names longer than 32
    bytes, fixing PR#17871 with thanks to Ivan Krylov.
  * When using the "internal" timezone datetime code, adding a
    fraction of a second no longer adds one second, fixing PR#16856
    from a patch by Ivan Krylov.
  * tools::checkRd() no longer produces spurious notes about
    "unnecessary braces" from multi-line Rd results of \Sexpr macros.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1709208000">- CHANGES IN R 4.3.3:
  NEW FEATURES:
  * iconv() now fixes up variant encoding names such as "utf8"
    case-insensitively.
  DEPRECATED AND DEFUNCT:
  * The legacy encoding = "MacRoman" is deprecated in pdf() and
    postscript(): support was incomplete in earlier versions of R.
  BUG FIXES:
  * Arguments are now properly forwarded to methods on S4 generics
    with ... in the middle of their formal arguments. This was broken
    for the case when a method introduced an argument but did not
    include ... in its own formals. Thanks to Herv'e Pag`es for the
    report PR#18538.
  * Some invalid file arguments to pictex(), postscript() and xfig()
    opened a file called NA rather than throw an error.  These
    included postscript(NULL) (which some people expected to work
    like pdf(NULL)).
  * Passing filename = NA to svg(), cairo_pdf(), cairo_ps() or the
    Cairo-based bitmap devices opened a file called NA: it now throws
    an error.
  * quartz(file = NA) opened a file called NA, including when used as
    a Quartz-based bitmap device.  It now gives an error.
  * rank(&lt;long vector&gt;) now works, fixing PR#18617, thanks to Ilia
    Kats.
  * seq.int() did not adequately check its length.out argument.
  * match(&lt;POSIXct&gt;, .) is correct again for differing time zones,
    ditto for "POSIXlt", fixing PR#18618 reported by Bastian Klein.
  * drop.terms(*, dropx = &lt;0-length&gt;) now works, fixing PR#18563 as
    proposed by Mikael Jagan.
  * drop.terms(*) keeps + offset(.) terms when it should, PR#18565,
    and drop.terms() no longer makes up a response, PR#18566, fixing
    both bugs thanks to Mikael Jagan.
  * getS3method("t", "test") no longer finds the t.test() function,
    fixing PR#18627.
  * pdf() and postscript() support for the documented Adobe encodings
    "Greek" and "Cyrilllic" was missing (although the corresponding
    Windows' codepages could be used).
  * Computations of glyph metric information for pdf() and
    postscript() did not take into account that transliteration could
    replace one character by two or more (only seen on macOS 14) and
    typically warned that the information was not known.
  * rank(x) no longer overflows during integer addition, when
    computing rank average for largish but not-yet long vector x,
    fixing PR#18630, thanks to Ilia Kats.
  * list.files() on Windows now returns also files with names longer
    that 260 bytes (the Windows limit is 260 characters).
    Previously, some file names particularly with 'East Asian'
    characters were omitted.
  * cov2cor(&lt;0 x 0&gt;) now works, fixing PR#18423 thanks to Mikael
    Jagan and Elin Waring.
  * cov2cor(&lt;negative diagonal&gt;) and similar now give one warning
    instead of two, with better wording, fixing PR#18424 thanks to
    Mikael Jagan.
  * tools:: startDynamicHelp() now ensures port is in proper range,
    fixing PR#18645.
  * pbeta(x, a,b) is correct now for x=0 or 1 in the boundary cases
    where a or b or both are 0, fixing PR#18672 thanks to Michael
    Fay.
  * pmatch(x, table) for large table, also called for data frame row
    selection, dfrm[nm, ], is now interruptible, fixing PR#18656.
  * predict(&lt;rank-deficient lm&gt;, newdata=*) fix computing of nbasis,
    see Russ Lenth's comment 29 in PR#16158.
  * Added a work-around for a bug in macOS 14.3.1 and higher which
    prevents R plots in the Quartz Cocoa device from updating on
    screen.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1713960000">- CHANGES IN R 4.4.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Startup banners, R --version, sessionInfo() and R CMD check no
    longer report (64-bit) as part of the platform as this is almost
    universal - the increasingly rare 32-bit platforms will still
    report (32-bit).
    On Windows, ditto for window titles.
  * is.atomic(NULL) now returns FALSE, as NULL is not an atomic
    vector.  Strict back-compatibility would replace is.atomic(foo)
    by (is.null(foo) || is.atomic(foo)) but should happen only
    sparingly.
  NEW FEATURES:
  * The confint() methods for "glm" and "nls" objects have been
    copied to the stats package.  Previously, they were stubs which
    called versions in package MASS. The MASS namespace is no longer
    loaded if you invoke (say) confint(glmfit).  Further, the "glm"
    method for profile() and the plot() and pairs() methods for class
    "profile" have been copied from MASS to stats.  (profile.nls()
    and plot.profile.nls() were already in stats.)
  * The confint() and profile methods for "glm" objects have gained a
    possibility to do profiling based on the Rao Score statistic in
    addition to the default Likelihood Ratio. This is controlled by a
    new test = argument.
  * The pairs() method for "profile" objects has been extended with a
    which = argument to allow plotting only a subset of the
    parameters.
  * The "glm" method for anova() computes test statistics and
    p-values by default, using a chi-squared test or an F test
    depending on whether the dispersion is fixed or free.  Test
    statistics can be suppressed by giving argument test a false
    logical value.
  * In setRepositories() the repositories can be set using their
    names via name = instead of index ind =.
  * methods() and .S3methods() gain a all.names option for the (rare)
    case where functions starting with a . should be included.
  * Serializations can now be interrupted (e.g., by Ctrl-C on a
    Unix-alike) if they take too long, e.g., from save.image(),
    thanks to suggestions by Ivan Krylov and others on R-devel.
  * New startup option --max-connections to set the maximum number of
    simultaneous connections for the session.  Defaults to 128 as
    before: allowed values up to 4096 (but resource limits may in
    practice restrict to smaller values).
  * R on Windows (since Windows 10 2004) now uses the new Segment
    Heap allocator. This may improve performance of some
    memory-intensive applications.
  * When R packages are built, typically by R CMD build &lt;pkg&gt;, the
    new --user=&lt;build_user&gt; option overrides the (internally
    determined) user name, currently Sys.info()["user"] or LOGNAME.
    This is a (modified) fulfillment of Will Landau's suggestion in
    PR#17530.
  * tools::testInstalledBasic() gets new optional arguments outDir
    and testSrcdir, e.g., allowing to use it in a &lt;builddir&gt; !=
    &lt;srcdir&gt; setup, and in standard "binary" Windows installation
  * if* a source tests/ folder is present.
  * range(&lt;DT_with_Inf&gt;, finite = TRUE) now work for objects of class
    "Date", "POSIXct", and "POSIXlt" with infinite entries,
    analogously to range.default(), as proposed by Davis Vaughan on
    R-devel.  Other range()-methods can make use of new function
    .rangeNum().
  * New .internalGenerics object complementing .S3PrimitiveGenerics,
    for documentation and low-level book-keeping.
  * grid() now invisibly returns the x- and y- coordinates at which
    the grid-lines were drawn.
  * norm(., type) now also works for complex matrices.
  * kappa(., exact = TRUE, norm = *) now works for all norms and also
    for complex matrices.  In symmetric / triangular cases, the new
    argument uplo = "U" | "L" allows the upper or lower triangular
    part to be specified.
  * memDecompress(type = "unknown") recognizes compression in the
    default 'zlib' format as used by memCompress(type = "gzip").
  * memCompress() and memDecompress() will use the libdeflate library
    (&lt;https://github.com/ebiggers/libdeflate&gt;) if installed.  This
    uses the same type of compression for type = "gzip" but is 1.5-2x
    faster than the system libz library on some common platforms: the
    speed-up may depend on the library version.
  * diff() for objects of class "Date", "POSIXct", and "POSIXlt"
    accepts a units argument passed via ....
  * Dynamic help now does a much better job of rendering package
    DESCRIPTION metadata.
  * Rprof() gains an event argument and support for elapsed (real)
    time profiling on Unix (PR#18076).
  * filled.contour() gains a key.border argument.
  * tools::update_pkg_po() gets arguments pot_make and mo_make for
    _not_ re-making the corresponding files, and additionally a
    verbose argument.
  * Hexadecimal string colour specifications are now accepted in
    short form, so, for example, we can use "#123", which is
    equivalent to "#112233".
    Thanks to MikeFC for the original idea and Ella Kaye, Malcolm
    Barrett, George Stagg, and Hanne Oberman for the patch.
  * Plain-text help shows \var markup by angle brackets.
  * The new experimental primitive function declare() is intended to
    eventually allow information about R code to be communicated to
    the interpreter, compiler, and code analysis tools. The syntax
    for declarations is still being developed.
  * Functions psmirnov(), qsmirnov() and rsmirnov() in package stats
    have had argument two.sided renamed to alternative, to take into
    account that the permutation distributions of the one-sided
    statistics can be different in the case of ties.  Consequence of
    PR#18582.
  * sort() is now an implicit S4 generic in methods.
  * Formatting and printing, format(z), print(z), of complex vectors
    z no longer zap relatively small real or imaginary parts to zero,
    fixing PR#16752.  This is an API change, as it was documented
    previously to round real and imaginary parts together on purpose,
    producing nicer looking output.  As mentioned, e.g. in the PR,
    this change is compatible with many other "R-like" programming
    environments.
    We have simplified the internal code and now basically format the
    real and imaginary parts independently of each other.
  * New experimental functions Tailcall() and Exec() to support
    writing stack-space-efficient recursive functions.
  * Where characters are attempted to be plotted by pdf(),
    postscript() and xfig() which are not in the selected 8-bit
    character set (most often Latin-1) and the R session is using a
    UTF-8 locale, the warning messages will show the UTF-8 character
    rather than its bytes and one dot will be substituted per
    character rather than per byte.  (Platforms whose iconv() does
    transliteration silently plot the transliteration.)
    In a UTF-8 locale some transliterations are now done with a
    warning (e.g., dashes and Unicode minus to hyphen, ligatures are
    expanded, permille (‰) is replaced by o/oo), although the OS may
    have got there first.  These are warnings as they will continue
    to be replaced by dots in earlier versions of R.
  * The matrix multiplication functions crossprod() and tcrossprod()
    are now also primitive and S3 generic, as %*% had become in R
    4.3.0.
  * source() and example() have a new optional argument catch.aborts
    which allows continued evaluation of the R code after an error.
  * The non-Quartz tiff() devices allow additional types of
    compression if supported by the platform's libtiff library.
  * The list of base and recommended package names is now provided by
    tools::standard_package_names().
  * cairo_pdf() and cairo_ps() default to onefile = TRUE to closer
    match pdf() and postscript().
  * New option catch.script.errors provides a documented way to catch
    errors and then continue in non-interactive use.
  * L %||% R newly in base is an expressive idiom for the phrases
    if(!is.null(L)) L else R or if(is.null(L)) R else L.
  * The return value from warnings() now always inherits from
    "warnings" as documented, now also in the case of no warnings
    where it previously returned NULL.
  * as.complex("1i") now returns 0 + 1i instead of NA with a warning.
  * z &lt;- c(NA, 1i) now keeps the imaginary part Im(z[1]) == 0, no
    longer coercing to NA_complex_.  Similarly, cumsum(z) correctly
    sums real and imaginary parts separately, i.e., without
    "crosstalk" in case of NAs.
  * On Alpine Linux iconv() now maps "latin2", "latin-2", "latin9"
    and "latin-9" to encoding names the OS knows about
    (case-insensitively).
  * iconv(sub = "Unicode") now always zero-pads to four (hex) digits,
    rather than to 4 or 8.  (This seems to have become the convention
    once Unicode restricted the number of Unicode points to 2^21 - 1
    and so will never need more than 6 digits.)
  * NCOL(NULL) now returns 0 instead of 1, for consistency with
    cbind().
  * The information for the Euro glyph missing from the Adobe .afm
    files for the Courier, Helvetica and Times families has been
    copied from their URW equivalents - this will improve vertical
    centring in the pdf() and postscript() devices.
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.12.0.  The changes are almost entirely cosmetic.
  * The included LAPACK sources have been updated to version 3.12.0
    and some further double-complex routines added.
  * There are new font families for the 2014--5 URW 2.0 fonts (see
    ?pdf) which are included in recent versions of Ghostscript.
    These have font widths for most Greek glyphs and a few others
    which were missing from the original versions (whose font
    families remain available for reproducibility, although
    Ghostscript-based viewers will render using the 2.0 versions).
  * Improve the large-n efficiency of as.matrix(&lt;dist&gt;), thanks an R
    contributors effort, notably by Tim Taylor and Heather Turner,
    see PR#18660.
  * The default and numeric methods of all.equal() get a check.class
    option.
  * zapsmall() gets new optional arguments, function mFUN and min.d,
    for extra flexibility; fulfills a wish in PR#18199.  Also, it is
    now an implicit S4 generic in package methods.
  * The Rd filter for aspell() gains an ignore argument.
  * New generic function sort_by(), primarily useful for the
    data.frame method which can be used to sort rows of a data frame
    by one or more columns.
  * The icence headers for the RPC code in src/extra/xdr have been
    updated to use the GPL-compatible licence published by Oracle
    America in 2010.
  * New function pkg2HTML() in tools to create single-page HTML
    reference manuals for R packages.
  * The byte code evaluator now uses less C stack space for recursive
    calls to byte-compiled functions. It also makes more of an effort
    to avoid allocations for scalar return values.
  * New completion option backtick (disabled by default) allows
    non-syntactic completions to be wrapped in backquotes. This is
    currently only useful for Jupyter notebooks via the IRkernel
    package, and may cause problems for other backends.
  INSTALLATION:
  * The parser has been updated to work with bison 3.8.2, which is
    now used for the pre-generated parsers in gram.c, file.c, and
    gramRd.c. A few parser error messages have changed, which may
    affect code that relies on exact messages.
  INSTALLATION on a UNIX-ALIKE:
  * System valgrind headers are now required to use configure option
  - -with-valgrind-instrumentation with value 1 or 2.
  * configure will warn if it encounters a 32-bit build, as that is
    nowadays almost untested.
  * Environment variable R_SYSTEM_ABI is no longer used and so no
    longer recorded in etc/Renviron (it was not on Windows and was
    only ever used when preparing package tools).
  * If the libdeflate library and headers are available, libdeflate
    rather than libz is used to (de)compress R objects in lazy-load
    databases.  Typically tasks spend up to 5% of their time on such
    operations, although creating lazy-data databases is one of the
    exceptions.
    This can be suppressed if the library is available by the
    configure option --without-libdeflate-compression.
  * configure option --enable-lto=check has not worked reliably since
    2019 and has been removed.
  * The minimum autoconf requirement for a maintainer build has been
    increased to autoconf 2.71.
    It is intended to increase this to 2.72 for R 4.5.0: the
    distributed configure file was generated using 2.72.
  * The minimum version requirement for an external LAPACK has been
    reduced to 3.9.0.
  * No default C++ compiler is set if no C++17 compiler is detected:
    there is no longer an automatic fallback to C++14 or C++11.
    Compilers from the last five years should have sufficient
    support: for others macros CXX and CXXSTD can be set in file
    config.site to provide a fallback if needed.
    The Objective-C++ compiler now by default uses the standard
    selected by R for C++ (currently C++17) rather than the default
    standard for the C++ compiler (which on macOS is still C++98).
  INSTALLATION on macOS:
  * A new configure option --with-newAccelerate makes use of Apple's
    'new' BLAS / LAPACK interfaces in their Accelerate framework.
    Those interfaces are only available in macOS 13.3 or later, and
    building requires SDK 13.3 or later (from the Command Line Tools
    or Xcode 14.3 or later).
    By default the option uses new Accelerate for BLAS calls: to also
    use it for LAPACK use option --with-newAccelerate=lapack.  The
    later interfaces provide LAPACK 3.9.1 rather than 3.2.1: 3.9.1 is
    from 2021-04 and does not include the improved algorithms
    introduced in LAPACK 3.10.0 (including for BLAS calls).
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools44, an update of the Rtools43 toolchain.  It is
    based on GCC 13 and newer versions of MinGW-W64, binutils and
    libraries (targeting 64-bit Intel CPUs).  R-devel can no longer
    be built using Rtools43 without changes.
  * Rtools44 has experimental support for 64-bit ARM (aarch64) CPUs
    _via_ the LLVM 17 toolchain using lld, clang/flang-new and
    libc++.
  UTILITIES:
  * R CMD check notes when S4-style exports are used without
    declaring a strong dependence on package methods.
  * tools::checkRd() (used by R CMD check) detects more problems with
    \Sexpr-based dynamic content, including bad nesting of \Sexprs
    and invalid arguments.
  * tools::checkRd() now reports Rd titles and section names ending
    in a period; this is ignored by R CMD check unless environment
    variable _R_CHECK_RD_CHECKRD_MINLEVEL_ is set to -5 or smaller.
  * R CMD check now notes Rd files without an \alias, as long
    documented in 'Writing R Extensions' §1.3.1.  The check for a
    missing \description has been moved from tools::checkRd() to
    tools::checkRdContents().
  * R CMD check now visits inst/NEWS.Rd and OS-specific man
    subdirectories when checking Rd files.
  * tools::checkDocFiles() and tools::checkRdContents() now also
    check internal Rd files by default, but "specially" (ignoring
    missing documentation of arguments).
  * R CMD Rdiff gets option --useEx.
  * R CMD check now warns on non-portable uses of Fortran KIND such
    as INTEGER(KIND=4) and REAL(KIND=8).
    To see the failing lines set environment variable
    _R_CHECK_FORTRAN_KIND_DETAILS_ to a true value.
  * When checking Rd files, R CMD check now notes some of the "lost
    braces" that tools::checkRd() finds.  Typical problems are Rd
    macros missing the initial backslash (e.g., code{...}), in-text
    set notation (e.g., {1, 2}, where the braces need escaping), and
    \itemize lists with \describe-style entries of the form
    \item{label}{description}.
  * R CMD INSTALL (and hence check) will compile C++ code with
  - DR_NO_REMAP if environment variable _R_CXX_USE_NO_REMAP_ is set
    to a true value.  It is planned that this will in future become
    the default for compiling C++.
  * The new built-in Rd macro \dontdiff{} can be used to mark example
    code whose output should be ignored when comparing check output
    to reference output (tests/Examples/&lt;pkg&gt;-Ex.Rout.save).  The
    \dontdiff tag, like \donttest, is _not_ shown on the rendered
    help page, so provides a clean alternative to ##
    IGNORE_RDIFF_(BEGIN|END) comments.
  * R CMD build when there is no NAMESPACE, now uses the recommended
    exportPattern("^[^.]"), instead of exporting everything.
  * R CMD check now warns about non-ASCII characters in the NAMESPACE
    file (in addition to R files). Such packages are not portable and
    may fail to install on some platforms.
  C-LEVEL FACILITIES:
  * Headers R_ext/Applic.h and R-ext/Linpack.h used to include
    R_ext/BLAS.h although this was undocumented and unneeded by their
    documented entry points.  They no longer do so.
  * New function R_missing(), factored out from do_missing(), used to
    fix PR#18579.
  * SEXP type S4SXP has been renamed to OBJSXP to support
    experimenting with alternative object systems.  The S4SXP value
    can still be used in C code but is now deprecated.  Based on
    contributions from the R Consortium's Object-Oriented Programming
    Working Group.
  * New function pow1p(x,y) for accurate (1+x)^y.
  * mkCharLenCE was incorrectly documented to take a size_t length
    but was implemented with int (and character strings in R are
    limited to 2^31 - 1 bytes).
  DEPRECATED AND DEFUNCT:
  * data() no longer handles zipped data from long-defunct (since R
    2.13.0) --use-zip-data installations.
  * The legacy graphics devices pictex() and xfig() are now
    deprecated.  They do not support recent graphics enhancements and
    their font handling is rudimentary. The intention is to retain
    them for historical interest as long as they remain somewhat
    functional.
  * Support for encoding = "MacRoman" has been removed from the pdf()
    and postscript() devices - this was a legacy encoding supporting
    classic macOS up to 2001 and no longer has universal libiconv
    support.
  * is.R() is deprecated as no other S dialect is known to be in use
    (and this could only identify historical dialects, not future
    ones).
    Further information on calls can be obtained by setting the
    environment variable _R_DEPRECATED_IS_R_ to error which turns the
    deprecation warning into an error and so by default gives a
    traceback.  (This is done by R CMD check --as-cran.)
  * UseMethod() no longer forwards local variables assigned in the
    generic function into method call environments before evaluating
    the method body. This makes method calls behave more like
    standard function calls and makes method code easier to analyze
    correctly.
  * The twelve as.data.frame.&lt;class&gt;() methods which were deprecated
    only via _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ and in R CMD
    check --as-cran are formally deprecated now in favour of calling
    as.data.frame() or as.data.frame.vector().  The deprecation
    "check" now works also when as.data.frame() is S4 generic thanks
    to Ivan Krylov.
  * The default method for the directional comparison operators &lt;, &gt;,
    &lt;=, and &gt;= now signals an error when one of the operands is a
    language object, i.e. a symbol or a call.
  * For terms.formula(), deprecate abb and neg.out arguments
    _formally_ in addition to just documenting it.
  BUG FIXES:
  * The methods package is more robust to not being attached to the
    search path.  More work needs to be done.
  * pairwise.t.test() misbehaved when subgroups had 0 DF for
    variance, even with pool.sd = TRUE.  (PR#18594 by Jack Berry).
  * Probability distribution functions [dpq]&lt;distrib&gt;(x, *), but also
    bessel[IKJY](x, .) now consistently preserve attributes(x) when
    length(x) == 0, e.g., for a 2 x 0 matrix, thanks to Karolis
    Koncevičius' report PR#18509.
  * Group "Summary" computations such as sum(1:3, 4, na.rm = 5, NA,
    7, na.rm = LL) now give an error instead of either 17 or NN for
    LL true or false, as proposed by Ivan Krylov on the R-devel
    mailing list.  (This also means it is now an error to specify
    na.rm more than once.)
  * as.complex(x) now returns complex(real = x, imaginary = 0) for
    _all_ numerical and logical x, notably also for NA or
    NA_integer_.
  * Directories are now omitted by file.copy(, recursive = FALSE) and
    in file.append() (PR#17337).
  * gsub() and sub() are now more robust to integer overflow when
    reporting errors caused by too large input strings (PR#18346).
  * Top-level handlers are now more robust to attempts to remove a
    handler whilst handlers are running (PR#18508).
  * The handling of Alt+F4 in dialogs created on Windows using
    GraphApp has been fixed (PR#13870).
  * density() more consistently computes grid values for the
    FFT-based convolution, following Robert Schlicht's analysis and
    proposal in PR#18337, correcting density values typically by a
    factor of about 0.999.  Argument old.coords = TRUE provides back
    compatibility.
  * palette.colors() gains a name argument that defaults to FALSE
    controlling whether the vector of colours that is returned has
    names (where possible).  PR#18529.
  * tools::xgettext() no longer extracts the (non-translatable) class
    names from warningCondition and errorCondition calls.
  * S3method(&lt;gen&gt;, &lt;class&gt;, &lt;func&gt;) in the NAMESPACE file now works
    (again) when &lt;func&gt; is visible from the namespace, e.g.,
    imported, or in base.
  * getParseData(f) now also works for a function defined in the
    first of several &lt;pkg&gt;/R/*.R source files, thanks to Kirill
    Müller's report and Duncan Murdoch's patch in PR#16756.
  * Rd \Sexpr macros with nested #ifdef conditionals were not
    processed.
  * A non-blocking connection with non-default encoding (such as a
    socket) now correctly returns from readLines() after new data has
    arrived also when its EOF had been reached previously.  Thanks to
    Peter Meilstrup's report on R-devel and Ivan Krylov's report and
    patch proposal in PR#18555.
  * tools::checkRdContents() failed to detect empty argument
    descriptions when they spanned multiple lines, including those
    generated by prompt().  These cases are now noted by R CMD check.
  * Plain-text help no longer outputs spurious colons in the
    arguments list (for multi-line \item labels in the Rd source).
  * kappa() and rcond() work correctly in more cases; kappa(., norm =
    "2") now warns that it computes the 1-norm with (default) exact =
    FALSE; prompted by Mikael Jagan's quite comprehensive PR#18543.
  * Rd skeletons generated by prompt() or promptData() now use a
    dummy title (so R CMD build works).  tools::checkRdContents() has
    been updated to detect such template leftovers, including from
    promptPackage().
  * When S4 method dispatch fails because no method was found, the
    error message now includes the signature argument names; thanks
    to Michael Chirico's proposal on the R-devel list.
  * withAutoprint({ .. }) now preserves srcrefs previously lost,
    thanks to Andrew Simmons' report plus fix in PR#18572.
  * transform.data.frame() no longer adjusts names; in particular,
    untransformed variables are kept as-is, including those with
    syntactically invalid names (PR#17890).
  * The keep.source option for Rd \Sexpr blocks is no longer ignored.
  * The formula methods for t.test() and wilcox.test() now catch when
    paired is passed, addressing PR#14359; use Pair(x1, x2) ~ 1 for a
    paired test.
  * The level reported in the browser prompt was often too large. It
    now shows the number of browser contexts on the stack.
  * For cbind() and rbind(), the optional deparse.level argument is
    now properly passed to methods, thanks to Mikael Jagan's PR#18579
    and comments there.
  * Some error and warning messages for large ('long vector')
    matrix(v, nr, nc) and dim(m) &lt;- d are now correct about sizes,
    using long long formatting, fixing PR#18612 (and more) reported
    by Mikael Jagan.
  * readChar(useBytes = TRUE) now terminates strings even when the
    underlying connection uses extra spaces in the input buffer.
    This fixes problems with extra garbage seen with gzip
    connections, PR#18605.
  * Named capture in PCRE regular expressions now works also with
    more than 127 named groups (PR#18588).
  * Datetime functions are now robust against long jumps when dealing
    with internal time zone changes.  This avoids confusing warnings
    about an invalid time zone, previously triggered by turning
    warnings into errors or handling them via tryCatch (PR#17966,
    PR#17780).
  * Datetime functions now restore even an empty TZ environment
    variable after internal time zone changes (PR#17724).  This makes
    results of datetime functions with this (typically unintentional)
    setting more predictable.
  * drop.terms(*) now drops response as by default, keep.response =
    FALSE, fixing PR#18564 thanks to Mikael Jagan.
  * dummy.coef(.) now also works for lm()-models with character
    categorical predictor variables rather than factor ones, fixing
    PR#18635 reported by Jinsong Zhao.
  * formals(f) &lt;- formals(f) now also works for a function w/o
    arguments and atomic _constant_ body(f).
  * Correct as.function(&lt;invalid list&gt;, .)'s error message.
  * removeSource() is yet more thorough in finding and removing
    "srcref" and the other source references from parsed R language
    chunks, fixing PR#18638 thanks to Andrew Simmons.
  * dgeom() is more accurate now, notably when its result is very
    small, fixing PR#18642 thanks to the proposal of Morten Welinder,
    also improving other instances where C level binom_raw(x, n, ..)
    has x == 0 or x== n.
  * warning() with options(warn = 1) has improved output for
    multi-line messages.
  * axis.Date() and axis.POSIXct() now respect the par("lab") setting
    for the number of pretty() intervals.
  * Comparisons for language objects (which are based on deparsing)
    are now more careful about using accurate deparsed results
    (PR#18676).
  * Plain-text help (Rd2txt) now correctly preserves blank lines
    following single-line \dontrun code.
  * &lt;POSIXlt&gt;[*] no longer sets wrong "balanced" attribute, fixing
    PR#18681 thanks to Mikael Jagan.
  * str(&lt;classed-call&gt;) now deparses the call as expected, fixing
    PR#18684, reported by Dave Slager.
  * In Rd examples, code following the closing brace of a \dontrun,
    \dontshow or \donttest tag on the same line is no longer skipped
    when R CMD check runs the examples.
  * as.data.frame(matrix(*, ncol=0)) now gets valid names() and
    colnames(); reported by Davis Vaughan on the R-devel list.
  * Internal Mathlib function stirlerr(n) is now almost fully
    (52-bit) accurate for all n &gt;= ~5.9 and more accurate also in the
    range 1 -- 5.9.  This entails small ("after 12th decimal")
    changes in density functions, e.g., dgamma() in _some_ regions of
    their support.  The fix was partly prompted by Morten Welinder's
    PR#18640.
  * Numbers like 9876543.2 are now considered non-integer by Mathlib
    internal R_nonint(), amending original fix of PR#15734.
  * Rd comment lines no longer cause broken paragraphs in the
    rendered PDF and plain-text help. In code blocks, pure comment
    lines (starting with %) no longer produce an empty line.
  * xtabs(Freq ~ .) now consistently defaults to na.action = na.pass,
    using na.rm = FALSE (added as an argument) when summing over Freq
    (PR#17770).
  * tools::testInstalledPackage() is no longer silent about failures
    from running examples or tests and its return code no longer
    ignores failures from checking vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1718366400">- CHANGES IN R 4.4.1:
  C-LEVEL FACILITIES:
  * Functions R_atof and R_strtod declared in header R_ext/Utils.h
    are now documented in 'Writing R Extensions' and so formally part
    of the API.
  * The non-API entry points Rf_setSVector, Rf_StringFalse,
    Rf_StringTrue and Rf_isBlankString have been added to those
    reported by R CMD check.
  * The new function Rf_allocLang is now available. This provides an
    alternative to the idiom of calling Rf_allocList followed by
    SET_TYPEOF.
  UTILITIES:
  * R CMD check now reports as warnings what gfortran calls 'Fortran
    2018 deleted features', all of which have long been marked as
    'obsolescent' and some of which were deleted in Fortran 2008 or
    earlier.  Fortran compilers are no longer required to support
    these.
  BUG FIXES:
  * as.numeric(), scan(), type.convert() and other places which use
    the internal C function R_strtod now require a _non-empty_ digit
    sequence in a decimal or binary exponent.  This aligns with the
    C/POSIX standard for strtod and with ?NumericConstants.
  * as.data.frame(m, make.names=NA) now works correctly for a matrix
    m with NA's in row names.
  * The error message from &lt;POSIXlt&gt;[["hour"]] and similar now
    mentions *[[, "hour"]], as wished for in PR#17409 and proposed by
    Michael Chirico.
  * qbinom() and potentially qpois(), qnbinom(), no longer sometimes
    fail accurate inversion (of pbinom(), etc), thanks to Christopher
    Chang's report and patch in PR#18711.
  * The internal help server on Windows can again serve requests sent
    in quick succession, fixing a regression in R 4.4.0.
  * debugcall(&lt;S3Generic&gt;()) now also works when a corresponding
    S4-generic version is in the methods cache (PR#18143).
  * Package tools' toTitleCase(ch0) now returns character(0) when ch0
    is of zero length; fixing PR#18724, reported by David Hugh Jones.
  * R CMD check is no longer broken (without a check result and no
    explanation in 00check.log) for a package which declares an
    invalid VignetteBuilder in DESCRIPTION but has no vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1730376000">- CHANGES IN R 4.4.2:
  C-LEVEL FACILITIES:
  * The S-compatibility macros F77_COM and F77_COMDECL defined in
    header R_ext/RS.h are deprecated and will be removed shortly.  We
    could find no record of their use.
  BUG FIXES:
  * Mathlib function lgammacor(x) no longer warns about underflow to
    zero for large x.
  * Text widths and heights were incorrectly reported by the Quartz
    device if the drawing context didn't exist yet (typically when
    drawing off-screen to a window that is yet to appear, see
    PR#18591).
  * The Quartz device could segfault in cases where paths with spaces
    are used in the new glyph drawing API.  Thanks to Tomek
    Gieorgijewski (PR#18758).
  * On macOS in R CRAN builds, it is again possible to read
    little-endian UTF-16 text with a BOM from a connection using
    encoding="UTF-16".  Users building R from source should avoid
    using the system libiconv in macOS 14.1 and later.
  * methods' internal .requirePackage() now re-enables primitive
    method dispatch when needed; thanks to Ivan Krylov for
    demystifying CRAN package check failures on the R-devel mailing
    list.</changelog>
</package>
<package pkgid="5e98b92f3115840d2bd4042706fe99b124a6ddcaa83c6c8479ead871e4d44c2fe3340b595cdcdb73e0c9e7f0c8176eb0c8cf5789a11fc961e6c806d7cce27a28" name="R-grid-debuginfo" arch="i586">
  <version epoch="0" ver="4.4.2" rel="51.0.2.2.sr20241103"/>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1620302400">- To get in sync with d:l:R:autoCRAN the Matrix package's split
  in -devel was reversed.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339200">- improved spec file according to comments of dimstar in
  https://build.opensuse.org/request/show/892685</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339201">- CHANGES IN R 4.1.0:
  FUTURE DIRECTIONS:
  * It is planned that the 4.1.x series will be the last to support
    32-bit Windows, with production of binary packages for that
    series continuing until early 2023.
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Data set esoph in package datasets now provides the correct
    numbers of controls; previously it had the numbers of cases added
    to these.  (Reported by Alexander Fowler in PR#17964.)
  NEW FEATURES:
  * www.omegahat.net is no longer one of the repositories known by
    default to setRepositories().  (Nowadays it only provides source
    packages and is often unavailable.)
  * Function package_dependencies() (in package tools) can now use
    different dependency types for direct and recursive dependencies.
  * The checking of the size of tarball in R CMD check --as-cran
    &lt;pkg&gt; may be tweaked via the new environment variable
    _R_CHECK_CRAN_INCOMING_TARBALL_THRESHOLD_, as suggested in
    PR#17777 by Jan Gorecki.
  * Using c() to combine a factor with other factors now gives a
    factor, an ordered factor when combining ordered factors with
    identical levels.
  * apply() gains a simplify argument to allow disabling of
    simplification of results.
  * The format() method for class "ftable" gets a new option justify.
    (Suggested by Thomas Soeiro.)
  * New ...names() utility.  (Proposed by Neal Fultz in PR#17705.)
  * type.convert() now warns when its as.is argument is not
    specified, as the help file always said it _should_.  In that
    case, the default is changed to TRUE in line with its change in
    read.table() (related to stringsAsFactor) in R 4.0.0.
  * When printing list arrays, classed objects are now shown _via_
    their format() value if this is a short enough character string,
    or by giving the first elements of their class vector and their
    length.
  * capabilities() gets new entry "Rprof" which is TRUE when R has
    been configured with the equivalent of --enable-R-profiling (as
    it is by default).  (Related to Michael Orlitzky's report
    PR#17836.)
  * str(xS4) now also shows extraneous attributes of an S4 object
    xS4.
  * Rudimentary support for vi-style tags in rtags() and R CMD rtags
    has been added.  (Based on a patch from Neal Fultz in PR#17214.)
  * checkRdContents() is now exported from tools; it and also
    checkDocFiles() have a new option chkInternal allowing to check
    Rd files marked with keyword "internal" as well.  The latter can
    be activated for R CMD check via environment variable
    _R_CHECK_RD_INTERNAL_TOO_.
  * New functions numToBits() and numToInts() extend the raw
    conversion utilities to (double precision) numeric.
  * Functions URLencode() and URLdecode() in package utils now work
    on vectors of URIs.  (Based on patch from Bob Rudis submitted
    with PR#17873.)
  * path.expand() can expand ~user on most Unix-alikes even when
    readline is not in use.  It tries harder to expand ~, for example
    should environment variable HOME be unset.
  * For HTML help (both dynamic and static), Rd file links to help
    pages in external packages are now treated as references to
    topics rather than file names, and fall back to a file link only
    if the topic is not found in the target package. The earlier rule
    which prioritized file names over topics can be restored by
    setting the environment variable _R_HELP_LINKS_TO_TOPICS_ to a
    false value.
  * c() now removes NULL arguments before dispatching to methods,
    thus simplifying the implementation of c() methods, _but_ for
    back compatibility keeps NULL when it is the first argument.
    (From a report and patch proposal by Lionel Henry in PR#17900.)
  * Vectorize()'s result function's environment no longer keeps
    unneeded objects.
  * Function ...elt() now propagates visibility consistently with
    ..n.  (Thanks to Lionel Henry's PR#17905.)
  * capture.output() no longer uses non-standard evaluation to
    evaluate its arguments.  This makes evaluation of functions like
    parent.frame() more consistent.  (Thanks to Lionel Henry's
    PR#17907.)
  * packBits(bits, type="double") now works as inverse of
    numToBits().  (Thanks to Bill Dunlap's proposal in PR#17914.)
  * curlGetHeaders() has two new arguments, timeout to specify the
    timeout for that call (overriding getOption("timeout")) and TLS
    to specify the minimum TLS protocol version to be used for
    https:// URIs (_inter alia_ providing a means to check for sites
    using deprecated TLS versions 1.0 and 1.1).
  * For nls(), an optional constant scaleOffset may be added to the
    denominator of the relative offset convergence test for cases
    where the fit of a model is expected to be exact, thanks to a
    proposal by John Nash.  nls(*, trace=TRUE) now also shows the
    convergence criterion.
  * Numeric differentiation _via_ numericDeriv() gets new optional
    arguments eps and central, the latter for taking central divided
    differences.  The latter can be activated for nls() via
    nls.control(nDcentral = TRUE).
  * nls() now passes the trace and control arguments to getInitial(),
    notably for all self-starting models, so these can also be fit in
    zero-noise situations via a scaleOffset.  For this reason, the
    initial function of a selfStart model must now have ... in its
    argument list.
  * bquote(splice = TRUE) can now splice expression vectors with
    attributes: this makes it possible to splice the result of
    parse(keep.source = TRUE).  (Report and patch provided by Lionel
    Henry in PR#17869.)
  * textConnection() gets an optional name argument.
  * get(), exists(), and get0() now signal an error if the first
    argument has length greater than 1.  Previously additional
    elements were silently ignored.  (Suggested by Antoine Fabri on
    R-devel.)
  * R now provides a shorthand notation for creating functions, e.g.
    \(x) x + 1 is parsed as function(x) x + 1.
  * R now provides a simple native forward pipe syntax |&gt;.  The
    simple form of the forward pipe inserts the left-hand side as the
    first argument in the right-hand side call.  The pipe
    implementation as a syntax transformation was motivated by
    suggestions from Jim Hester and Lionel Henry.
  * all.equal(f, g) for functions now by default also compares their
    environment(.)s, notably via new all.equal method for class
    function.  Comparison of nls() fits, e.g., may now need
    all.equal(m1, m2, check.environment = FALSE).
  * .libPaths() gets a new option include.site, allowing to _not_
    include the site library.  (Thanks to Dario Strbenac's suggestion
    and Gabe Becker's PR#18016.)
  * Lithuanian translations are now available.  (Thanks to Rimantas
    Zakauskas.)
  * names() now works for DOTSXP objects.  On the other hand, in
    R-lang, the R language manual, we now warn against relying on the
    structure or even existence of such dot-dot-dot objects.
  * all.equal() no longer gives an error on DOTSXP objects.
  * capabilities("cairo") now applies only to the file-based devices
    as it is now possible (if very unusual) to build R with Cairo
    support for those but not for X11().
  * There is optional support for tracing the progress of
    loadNamespace() - see its help.
  * (Not Windows.)  l10n_info() reports an additional element, the
    name of the encoding as reported by the OS (which may differ from
    the encoding part (if any) of the result from
    Sys.getlocale("LC_CTYPE").
  * New function gregexec() which generalizes regexec() to find _all_
    disjoint matches and well as all substrings corresponding to
    parenthesized subexpressions of the given regular expression.
    (Contributed by Brodie Gaslam.)
  * New function charClass() in package utils to query the
    wide-character classification functions in use (such as
    iswprint).
  * The names of quantile()'s result no longer depend on the global
    getOption("digits"), but quantile() gets a new optional argument
    digits = 7 instead.
  * grep(), sub(), regexp and variants work considerably faster for
    long factors with few levels.  (Thanks to Michael Chirico's
    PR#18063.)
  * Provide grouping of x11() graphics windows within a window
    manager such as Gnome or Unity; thanks to a patch by Ivan Krylov
    posted to R-devel.
  * The split() method for class data.frame now allows the f argument
    to be specified as a formula.
  * sprintf now warns on arguments unused by the format string.
  * New palettes "Rocket" and "Mako" for hcl.colors() (approximating
    palettes of the same name from the 'viridisLite' package).
    Contributed by Achim Zeileis.
  * The base environment and its namespace are now locked (so one can
    no longer add bindings to these or remove from these).
  * Rterm handling of multi-byte characters has been improved,
    allowing use of such characters when supported by the current
    locale.
  * Rterm now accepts ALT+ +xxxxxxxx sequences to enter Unicode
    characters as hex digits.
  * Environment variable LC_ALL on Windows now takes precedence over
    LC_CTYPE and variables for other supported categories, matching
    the POSIX behaviour.
  * duplicated() and anyDuplicated() are now optimized for integer
    and real vectors that are known to be sorted via the ALTREP
    framework. Contributed by Gabriel Becker via PR#17993.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 14
    and so packages that provide graphics devices should be
    reinstalled.
  * Graphics devices should now specify deviceVersion to indicate
    what version of the graphics engine they support.
  * Graphics devices can now specify deviceClip.  If TRUE, the
    graphics engine will never perform any clipping of output itself.
    The clipping that the graphics engine does perform (for both
    canClip = TRUE and canClip = FALSE) has been improved to avoid
    producing unnecessary artifacts in clipped output.
  * The grid package now allows gpar(fill) to be a linearGradient(),
    a radialGradient(), or a pattern().  The viewport(clip) can now
    also be a grob, which defines a clipping path, and there is a new
    viewport(mask) that can also be a grob, which defines a mask.
    These new features are only supported so far on the Cairo-based
    graphics devices and on the pdf() device.
  * (Not Windows.)  A warning is given when a Cairo-based type is
    specified for a png(), jpeg(), tiff() or bmp() device but Cairo
    is unsupported (so type = "Xlib" is tried instead).
  * grSoftVersion() now reports the versions of FreeType and
    FontConfig if they are used directly (not _via_ Pango), as is
    most commonly done on macOS.
  C-LEVEL FACILITIES:
  * The _standalone_ libRmath math library and R's C API now provide
    log1pexp() again as documented, and gain log1mexp().
  INSTALLATION on a UNIX-ALIKE:
  * configure checks for a program pkgconf if program pkg-config is
    not found.  These are now only looked for on the path (like
    almost all other programs) so if needed specify a full path to
    the command in PKG_CONFIG, for example in file config.site.
  * C99 function iswblank is required - it was last seen missing ca
    2003 so the workaround has been removed.
  * There are new configure options --with-internal-iswxxxxx,
  - -with-internal-towlower and --with-internal-wcwidth which allows
    the system functions for wide-character classification,
    case-switching and width (wcwidth and wcswidth) to be replaced by
    internal ones.  The first has long been used on macOS, AIX (and
    Windows) but this enables it to be unselected there and selected
    for other platforms (it is the new default on Solaris).  The
    second is new in this version of R and is selected by default on
    macOS and Solaris.  The third has long been the default and
    remains so as it contains customizations for East Asian
    languages.
    System versions of these functions are often minimally
    implemented (sometimes only for ASCII characters) and may not
    cover the full range of Unicode points: for example Solaris (and
    Windows) only cover the Basic Multilingual Plane.
  * Cairo installations without X11 are more likely to be detected by
    configure, when the file-based Cairo graphics devices will be
    available but not X11(type = "cairo").
  * There is a new configure option --with-static-cairo which is the
    default on macOS.  This should be used when only static cairo
    (and where relevant, Pango) libraries are available.
  * Cairo-based graphics devices on platforms without Pango but with
    FreeType/FontConfig will make use of the latter for font
    selection.
  LINK-TIME OPTIMIZATION on a UNIX-ALIKE:
  * Configuring with flag --enable-lto=R now also uses LTO when
    installing the recommended packages.
  * R CMD INSTALL and R CMD SHLIB have a new flag --use-LTO to use
    LTO when compiling code, for use with R configured with
  - -enable-lto=R.  For R configured with --enable-lto, they have
    the new flag --no-use-LTO.
    Packages can opt in or out of LTO compilation _via_ a UseLTO
    field in the DESCRIPTION file.  (As usual this can be overridden
    by the command-line flags.)
  BUILDING R on Windows:
  * for GCC &gt;= 8, FC_LEN_T is defined in config.h and hence character
    lengths are passed from C to Fortran in _inter alia_ BLAS and
    LAPACK calls.
  * There is a new text file src/gnuwin32/README.compilation, which
    outlines how C/Fortran code compilation is organized and
    documents new features:
  * R can be built with Link-Time Optimization with a suitable
    compiler - doing so with GCC 9.2 showed several
    inconsistencies which have been corrected.
  * There is support for cross-compiling the C and Fortran code
    in R and standard packages on suitable (Linux) platforms.
    This is mainly intended to allow developers to test later
    versions of compilers - for example using GCC 9.2 or 10.x has
    detected issues that GCC 8.3 in Rtools40 does not.
  * There is experimental support for cross-building R packages
    with C, C++ and/or Fortran code.
  * The R installer can now be optionally built to support a single
    architecture (only 64-bit or only 32-bit).
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++14 where
    available (which it is on all currently checked platforms): if
    not (as before) C++11 is used if available otherwise C++ is not
    supported.
    Packages which specify C++11 will still be installed using C++11.
    C++14 compilers may give deprecation warnings, most often for
    std::random_shuffle (deprecated in C++14 and removed in C++17).
    Either specify C++11 (see 'Writing R Extensions') or modernize
    the code and if needed specify C++14.  The latter has been
    supported since R 3.4.0 so the package's DESCRIPTION would need
    to include something like
    Depends: R (&gt;= 3.4)
  PACKAGE INSTALLATION on Windows:
  * R CMD INSTALL and R CMD SHLIB make use of their flag --use-LTO
    when the LTO_OPT make macro is set in file etc/${R_ARCH}/Makeconf
    or in a personal/site Makevars file.  (For details see 'Writing R
    Extensions' SS4.5.)
    This provides a valuable check on code consistency.  It does work
    with GCC 8.3 as in Rtools40, but that does not detect everything
    the CRAN checks with current GCC do.
  PACKAGE INSTALLATION on macOS:
  * The default personal library directory on builds with
  - -enable-aqua (including CRAN builds) now differs by CPU type,
    one of
    ~/Library/R/x86_64/x.y/library
    ~/Library/R/arm64/x.y/library
    This uses the CPU type R (and hence the packages) were built for,
    so when a x86_64 build of R is run under Rosetta emulation on an
    arm64 Mac, the first is used.
  UTILITIES:
  * R CMD check can now scan package functions for bogus return
    statements, which were possibly intended as return() calls (wish
    of PR#17180, patch by Sebastian Meyer). This check can be
    activated via the new environment variable
    _R_CHECK_BOGUS_RETURN_, true for --as-cran.
  * R CMD build omits tarballs and binaries of previous builds from
    the top-level package directory.  (PR#17828, patch by Sebastian
    Meyer.)
  * R CMD check now runs sanity checks on the use of LazyData, for
    example that a data directory is present and that
    LazyDataCompression is not specified without LazyData and has a
    documented value.  For packages with large LazyData databases
    without specifying LazyDataCompression, there is a reference to
    the code given in 'Writing R Extensions' SS1.1.6 to test the
    choice of compression (as in all the CRAN packages tested a
    non-default method was preferred).
  * R CMD build removes LazyData and LazyDataCompression fields from
    the DESCRIPTION file of packages without a data directory.
  ENCODING-RELATED CHANGES:
  * The parser now treats \Unnnnnnnn escapes larger than the upper
    limit for Unicode points (\U10FFFF) as an error as they cannot be
    represented by valid UTF-8.
    Where such escapes are used for outputting non-printable
    (including unassigned) characters, 6 hex digits are used (rather
    than 8 with leading zeros).  For clarity, braces are used, for
    example \U{0effff}.
  * The parser now looks for non-ASCII spaces on Solaris (as
    previously on most other OSes).
  * There are warnings (including from the parser) on the use of
    unpaired surrogate Unicode points such as \uD834.  (These cannot
    be converted to valid UTF-8.)
  * Functions nchar(), tolower(), toupper() and chartr() and those
    using regular expressions have more support for inputs with a
    marked Latin-1 encoding.
  * The character-classification functions used (by default) to
    replace the system iswxxxxx functions on Windows, macOS and AIX
    have been updated to Unicode 13.0.0.
    The character-width tables have been updated to include new
    assignments in Unicode 13.0.0.
  * The code for evaluating default (extended) regular expressions
    now uses the same character-classification functions as the rest
    of R (previously they differed on Windows, macOS and AIX).
  * There is a build-time option to replace the system's
    wide-character wctrans C function by tables shipped with R: use
    configure option --with-internal-towlower or (on Windows)
  - DUSE_RI18N_CASE in CFLAGS when building R.  This may be needed
    to allow tolower() and toupper() to work with Unicode characters
    beyond the Basic Multilingual Plane where not supported by system
    functions (e.g. on Solaris where it is the new default).
  * R is more careful when truncating UTF-8 and other multi-byte
    strings that are too long to be printed, passed to the system or
    libraries or placed into an internal buffer.  Truncation will no
    longer produce incomplete multibyte characters.
  DEPRECATED AND DEFUNCT:
  * Function plclust() from the package stats and
    package.dependencies(), pkgDepends(), getDepList(),
    installFoundDepends(), and vignetteDepends() from package tools
    are defunct.
  * Defunct functions checkNEWS() and readNEWS() from package tools
    and CRAN.packages() from utils have been removed.
  * R CMD config CXXCPP is defunct (it was deprecated in R 3.6.2).
  * parallel::detectCores() drops support for Irix (retired in 2013).
  * The LINPACK argument to chol.default(), chol2inv(),
    solve.default() and svd() has been defunct since R 3.1.0.  It was
    silently ignored up to R 4.0.3 but now gives an error.
  * Subsetting/indexing, such as ddd[*] or ddd$x on a DOTSXP
    (dot-dot-dot) object ddd has been disabled; it worked by accident
    only and was undocumented.
  BUG FIXES:
  * Many more C-level allocations (mainly by malloc and strdup) are
    checked for success with suitable alternative actions.
  * Bug fix for replayPlot(); this was turning off graphics engine
    display list recording if a recorded plot was replayed in the
    same session.  The impact of the bug became visible if resize the
    device after replay OR if attempted another savePlot() after
    replay (empty display list means empty screen on resize or empty
    saved plot).
  * R CMD check etc now warn when a package exports non-existing S4
    classes or methods, also in case of no "methods" presence.
    (Reported by Alex Bertram; reproducible example and patch by
    Sebastian Meyer in PR#16662.)
  * boxplot() now also accepts calls for labels such as ylab, the
    same as plot().  (Reported by Marius Hofert.)
  * The help page for xtabs() now correctly states that addNA is
    setting na.action = na.pass among others.  (Reported as PR#17770
    by Thomas Soeiro.)
  * The R CMD check &lt;pkg&gt; gives a longer and more comprehensible
    message when DESCRIPTION misses dependencies, e.g., in Imports:.
    (Thanks to the contributors of PR#17179.)
  * update.default() now calls the generic update() on the formula to
    work correctly for models with extended formulas.  (As reported
    and suggested by Neal Fultz in PR#17865.)
  * The horizontal position of leaves in a dendrogram is now correct
    also with center = FALSE.  (PR#14938, patch from Sebastian
    Meyer.)
  * all.equal.POSIXt() no longer warns about and subsequently ignores
    inconsistent "tzone" attributes, but describes the difference in
    its return value (PR#17277).  This check can be disabled _via_
    the new argument check.tzone = FALSE as suggested by Sebastian
    Meyer.
  * as.POSIXct() now populates the "tzone" attribute from its tz
    argument when x is a logical vector consisting entirely of NA
    values.
  * x[[2^31]] &lt;- v now works.  (Thanks to the report and patch by
    Suharto Anggono in PR#17330.)
  * In log-scale graphics, axis() ticks and label positions are now
    computed more carefully and symmetrically in their range,
    typically providing _more_ ticks, fulfilling wishes in PR#17936.
    The change really corresponds to an improved axisTicks() (package
    grDevices), potentially influencing grid and lattice, for
    example.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now correct to at
    least five digits where it was catastrophically wrong,
    previously.
  * sum(df) and similar "Summary"- and "Math"-group member functions
    now work for data frames df with logical columns, notably also of
    zero rows.  (Reported to R-devel by Martin "b706".)
  * unsplit() had trouble with tibbles due to unsound use of rep(NA,
    len)-indexing, which should use NA_integer_ (Reported to R-devel
    by Mario Annau.)
  * pnorm(x, log.p = TRUE) underflows to -Inf slightly later.
  * show(&lt;hidden S4 generic&gt;) prints better and without quotes for
    non-hidden S4 generics.
  * read.table() and relatives treated an "NA" column name as missing
    when check.names = FALSE PR#18007.
  * Parsing strings containing UTF-16 surrogate pairs such as
    "\uD834\uDD1E" works better on some (uncommon) platforms.
    sprintf("%X", utf8ToInt("\uD834\uDD1E")) should now give "1D11E"
    on all platforms.
  * identical(x,y) is no longer true for differing DOTSXP objects,
    fixing PR#18032.
  * str() now works correctly for DOTSXP and related exotics, even
    when these are doomed.
    Additionally, it no longer fails for lists with a class and
    "irregular" method definitions such that e.g. lapply(*) will
    necessarily fail, as currently for different igraph objects.
  * Too long lines in environment files (e.g. Renviron) no longer
    crash R. This limit has been increased to 100,000 bytes.
    (PR#18001.)
  * There is a further workaround for FreeType giving incorrect
    italic font faces with cairo-based graphics devices on macOS.
  * add_datalist(*, force = TRUE) (from package tools) now actually
    updates an existing data/datalist file for new content.  (Thanks
    to a report and patch by Sebastian Meyer in PR#18048.)
  * cut.Date() and cut.POSIXt() could produce an empty last interval
    for breaks = "months" or breaks = "years".  (Reported as PR#18053
    by Christopher Carbone.)
  * Detection of the encoding of 'regular' macOS locales such as
    en_US (which is UTF-8) had been broken by a macOS change:
    fortunately these are now rarely used with en_US.UTF-8 being
    preferred.
  * sub() and gsub(pattern, repl, x, *) now keep attributes of x such
    as names() also when pattern is NA (PR#18079).
  * Time differences ("difftime" objects) get a replacement and a
    rep() method to keep "units" consistent.  (Thanks to a report and
    patch by Nicolas Bennett in PR#18066.)
  * The \RdOpts macro, setting defaults for \Sexpr options in an Rd
    file, had been ineffective since R 2.12.0: it now works again.
    (Thanks to a report and patch by Sebastian Meyer in PR#18073.)
  * mclapply and pvec no longer accidentally terminate parallel
    processes started before by mcparallel or related calls in
    package parallel (PR#18078).
  * grep and other functions for evaluating (extended) regular
    expressions handle in Unicode also strings not explicitly flagged
    UTF-8, but flagged native when running in UTF-8 locale.
  * Fixed a crash in fifo implementation on Windows (PR#18031).
  * Binary mode in fifo on Windows is now properly detected from
    argument open (PR#15600, PR#18031).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1622808000">- The line %{__install} -m 755 -d %{_infodir}
  no longer works in TW or Factory.
  But without that line it works everywhere. So this instruction
  was commented out of the spec file.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1628596800">- CHANGES IN R 4.1.1:
  NEW FEATURES:
  * require(pkg, quietly = TRUE) is quieter and in particular does
    not warn if the package is not found.
  DEPRECATED AND DEFUNCT:
  * Use of ftp:// URIs should be regarded as deprecated, with
    on-going support confined to method = "libcurl" and not routinely
    tested.  (Nowadays no major browser supports them.)
  * The non-default method = "internal" is deprecated for http:// and
    ftp:// URIs for both download.file and url.
  * On Windows, method = "wininet" is deprecated for http://,
    https:// and ftp:// URIs for both download.file and url.  (A
    warning is only given for ftp://.)
    For ftp:// URIs the default method is now "libcurl" if available
    (which it is on CRAN builds).
    method = "wininet" remains the default for http:// and https://
    URIs but if libcurl is available, using method = "libcurl" is
    preferred.
  INSTALLATION:
  * make check now works also without a LaTeX installation.  (Thanks
    to Sebastian Meyer's PR#18103.)
  BUG FIXES:
  * make check-devel works again in an R build configured with
  - -without-recommended-packages.
  * qnbinom(p, size, mu) for large size/mu is correct now in a range
    of cases (PR#18095); similarly for the (size, prob)
    parametrization of the negative binomial.  Also qpois() and
    qbinom() are better and or faster for extreme cases.  The
    underlying C code has been modularized and is common to all four
    cases of discrete distributions.
  * gap.axis is now part of the axis() arguments which are passed
    from bxp(), and hence boxplot().  (Thanks to Martin Smith's
    report and suggestions in PR#18109.)
  * .First and .Last can again be set from the site profile.
  * seq.int(from, to, *) and seq.default(..) now work better in large
    range cases where from-to is infinite where the two boundaries
    are finite.
  * all.equal(x,y) now returns TRUE correctly also when several
    entries of abs(x) and abs(y) are close to .Machine$double.xmax,
    the largest finite numeric.
  * model.frame() now clears the object bit when removing the class
    attribute of a value via na.action (PR#18100).
  * charClass() now works with multi-character strings on Windows
    (PR#18104, fixed by Bill Dunlap).
  * encodeString() on Solaris now works again in Latin-1 encoding on
    characters represented differently in UTF-8.  Support for
    surrogate pairs on Solaris has been improved.
  * file.show() on Windows now works with non-ASCII path names
    representable in the current native encoding (PR#18132).
  * Embedded R on Windows can now find R home directory via the
    registry even when installed only for the current user
    (PR#18135).
  * pretty(x) with finite x now returns finite values also in the
    case where the extreme x values are close in size to the maximal
    representable number .Machine$double.xmax.
    Also, it's been tweaked for very small ranges and when a boundary
    is close (or equal) to zero; e.g., pretty(c(0,1e-317)) no longer
    has negative numbers, currently still warning about a very small
    range, and pretty(2^-(1024 - 2^-1/(c(24,10)))) is more accurate.
  * The error message for not finding vignette files when weaving has
    correct file sizes now. (Thanks to Sebastian Meyer's PR#18154.)
  * dnbinom(20, &lt;large&gt;, 1) now correctly gives 0, and similar cases
    are more accurate with underflow precaution.  (Reported by Francisco Vera Alcivar in PR#18072.)</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635163200">- repaired https://bugzilla.suse.com/show_bug.cgi?id=1191380
  (rpmacros now go to rpmmacrodir)
- minor clean-ups in spec file</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635768000">- CHANGES IN R 4.1.2:
  C-LEVEL FACILITIES:
  * The workaround in headers R.h and Rmath.h (using namespace std;)
    for the Oracle Developer Studio compiler is no longer needed now
    C++11 is required so has been removed.  A couple more usages of
    log() (which should have been std::log()) with an int argument
    are reported on Solaris.
  * The undocumented limit of 4095 bytes on messages from the
    S-compatibility macros PROBLEM and MESSAGE is now documented and
    longer messages will be silently truncated rather than
    potentially causing segfaults.
  * If the R_NO_SEGV_HANDLER environment variable is non-empty, the
    signal handler for SEGV/ILL/BUS signals (which offers recovery
    user interface) is not set. This allows more reliable debugging
    of crashes that involve the console.
  DEPRECATED AND DEFUNCT:
  * The legacy S-compatibility macros PROBLEM, MESSAGE, ERROR, WARN,
    WARNING, RECOVER, ... are deprecated and will be hidden in R
    4.2.0. R's native interface of Rf_error and Rf_warning has long
    been preferred.
  BUG FIXES:
  * .mapply(F, dots, .) no longer segfaults when dots is not a list
    and uses match.fun(F) as always documented; reported by Andrew
    Simmons in PR#18164.
  * hist(&lt;Date&gt;, ...) and hist(&lt;POSIXt&gt;, ...)  no longer pass
    arguments for rect() (such as col and density) to axis().
    (Thanks to Sebastian Meyer's PR#18171.)
  * \Sexpr{ch} now preserves Encoding(ch). (Thanks to report and
    patch by Jeroen Ooms in PR#18152.)
  * Setting the RNG to "Marsaglia-Multicarry" e.g., by RNGkind(), now
    warns in more places, thanks to Andr'e Gillibert's report and
    patch in PR#18168.
  * gray(numeric(), alpha=1/2) no longer segfaults, fixing PR#18183,
    reported by Till Krenz.
  * Fixed dnbinom(x, size=&lt;very_small&gt;, .., log=TRUE) regression,
    reported by Martin Morgan.
  * as.Date.POSIXlt(x) now keeps names(x), thanks to Davis Vaughan's
    report and patch in PR#18188.
  * model.response() now strips an "AsIs" class typically, thanks to
    Duncan Murdoch's report and other discussants in PR#18190.
  * try() is considerably faster in case of an error and long call,
    as e.g., from some do.call().  Thanks to Alexander Kaever's
    suggestion posted to R-devel.
  * qqline(y = &lt;object&gt;) such as y=I(.), now works, see also
    PR#18190.
  * Non-integer mgp par() settings are now handled correctly in
    axis() and mtext(), thanks to Mikael Jagan and Duncan Murdoch's
    report and suggestion in PR#18194.
  * formatC(x) returns length zero character() now, rather than ""
    when x is of length zero, as documented, thanks to Davis
    Vaughan's post to R-devel.
  * removeSource(fn) now retains (other) attributes(fn).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1647000000">- CHANGES IN R 4.1.3:
  NEW FEATURES:
  * The default version of Bioconductor has been changed to 3.14.
    (This is used by setRepositories and the menus in GUIs.)
  UTILITIES:
  * R CMD check --as-cran has a workaround for a bug in versions of
    file up to at least 5.41 which mis-identify DBF files last
    changed in 2022 as executables.
  C-LEVEL FACILITIES:
  * The legacy S-compatibility macros SINGLE_* in R_ext/Constants.h
    (included by R.h) are deprecated and will be removed in R 4.2.0.
  BUG FIXES:
  * Initialization of self-starting nls() models with initialization
    functions following the pre-R-4.1.0 API (without the ...
    argument) works again for now, with a deprecation warning.
  * Fixed quoting of ~autodetect~ in Java setting defaults to avoid
    inadvertent user lookup due to leading ~, reported in PR#18231 by
    Harold Gutch.
  * substr(., start, stop) &lt;- v now treats _negative_ stop values
    correctly.  Reported with a patch in PR#18228 by Brodie Gaslam.
  * Subscripting an array x without dimnames by a
    length(dim(x))-column character matrix gave "random" non-sense,
    now an error; reported in PR#18244 by Mikael Jagan.
  * ...names() now matches names(list(...)) closely, fixing PR#18247.
  * all.equal(*, scale = s) now works as intended when length(s) &gt; 1,
    partly thanks to Michael Chirico's PR#18272.
  * print(x) for long vectors x now also works for named atomic
    vectors or lists and prints the correct number when reaching the
    getOption("max.print") limit; partly thanks to a report and
    proposal by Hugh Parsonage to the R-devel list.
  * all.equal(&lt;selfStart&gt;, *) no longer signals a deprecation
    warning.
  * reformulate(*, response=r) gives a helpful error message now when
    length(r) &gt; 1, thanks to Bill Dunlap's PR#18281.
  * Modifying globalCallingHandlers inside withCallingHandlers() now
    works or fails correctly, thanks to Henrik Bengtsson's PR#18257.
  * hist(&lt;Date&gt;, breaks = "days") and hist(&lt;POSIXt&gt;, breaks = "secs")
    no longer fail for inputs of length 1.
  * qbeta(.001, .9, .009) and similar cases now converge correctly
    thanks to Ben Bolker's report in PR#17746.
  * window(x, start, end) no longer wrongly signals "'start' cannot
    be after 'end'", fixing PR#17527 and PR#18291.
  * data() now checks that its (rarely used) list argument is a
    character vector - a couple of packages passed other types and
    gave incorrect results.
  * which() now checks its arr.ind argument is TRUE rather coercing
    to logical and taking the first element - which gave incorrect
    results in package code.
  * model.weights() and model.offset() more carefully extract their
    model components, thanks to Ben Bolker and Tim Taylor's R-devel
    post.
  * list.files(recursive = TRUE) now shows all broken symlinks
    (previously, some of them may have been omitted, PR#18296).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1650628800">- CHANGES IN R 4.2.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * The formula method of aggregate() now matches the generic in
    naming its first argument x (resolving PR#18299 by Thomas
    Soeiro).
    This means that calling aggregate() with a formula as a named
    first argument requires name formula in earlier versions of R and
    name x now, so portable code should not name the argument (code
    in many packages did).
  * Calling &amp;&amp; or || with either argument of length greater than one
    now gives a warning (which it is intended will become an error).
  * Calling if() or while() with a condition of length greater than
    one gives an error rather than a warning.  Consequently,
    environment variable _R_CHECK_LENGTH_1_CONDITION_ no longer has
    any effect.
  * Windows users should consult the WINDOWS section below for some
    profound changes including
  * Support for 32-bit builds has been dropped.
  * UTF-8 locales are used where available.
  * The default locations for the R installation and personal
    library folder have been changed.
    Thanks to Tomas Kalibera for months of work on the Windows port
    for this release.
  NEW FEATURES:
  * matrix(x, n, m) now warns in more cases where length(x) differs
    from n * m, as suggested by Abby Spurdle and Wolfgang Huber in
    Feb 2021 on the R-devel mailing list.
    This warning can be turned into an error by setting environment
    variable _R_CHECK_MATRIX_DATA_ to TRUE: R CMD check --as-cran
    does so unless it is already set.
  * Function file_test() in package utils gains tests for symlinks,
    readability and writability.
  * capabilities("libxml") is now false.
    The description of capabilities("http/ftp") now reflects that it
    refers to the default method, no longer the internal one.
  * simplify2array() gains an except argument for controlling the
    exceptions used by sapply().
  * Environment variables R_LIBS_USER and R_LIBS_SITE are both now
    set to the R system default if unset or empty, and can be set to
    NULL to indicate an empty list of user or site library
    directories.
  * The warning for axis()(-like) calls in cases of relatively small
    ranges (typically in log-scale situations) is slightly improved
    _and_ suppressed from explicit calls to .axisPars() as has always
    been the intention.
  * The contrasts setter function `contrasts&lt;-` gains an explicit
    default how.many = NULL rather than just using missing(how.many).
  * grid.pretty() gains a new optional argument n = 5.
  * There is a new function .pretty() with option bounds as a
    technical-utility version of pretty().  It and pretty() gain a
    new argument f.min with a better than back-compatible default.
  * Function grDevices::axisTicks() and related functions such as
    graphics::axis() work better, notably for the log scale; partly
    because of the pretty() improvements, but also because care is
    taken e.g., when ylim is finite but diff(ylim) is infinite.
  * nclass.FD() gains a digits option.
  * The R Mathlib internal C function bd0() (called indirectly from a
    dozen probability density and distribution functions such as
    dpois(), dbinom(), dgamma(), pgamma() _etc_) has been
    complemented by a more sophisticated and (mostly) more accurate C
    function ebd0(), currently called only by internal dpois_raw()
    improving accuracy for R level dpois() and potentially others
    calling it such as dnbinom(), dgamma() or pgamma().  (Thanks to
    Morten Welinder's PR#15628.)
  * write.ftable() gains sep = " " argument as suggested by Thomas
    Soeiro.
  * The names of the locale categories supported by R's
    Sys.getlocale() and Sys.setlocale() are now provided by variable
    .LC.categories in the base namespace.
  * The Date and POSIXt methods for hist() and the histogram method
    for plot() now also use the new default col = "lightgray" in
    consistency with the corresponding change to hist()'s default for
    R 4.0.0.
  * hist.default() gains new fuzz argument, and the histogram plot
    method no longer uses fractional axis ticks when displaying
    counts ("Frequency").
  * mapply() and hence Map() now also obey the "max-or-0-if-any"
    recycling rule, such that, e.g., Map(`+`, 1:3, 1[0]) is valid
    now.
  * as.character(&lt;obj&gt;) for "hexmode" or "octmode" objects now
    fulfils the important basic rule as.character(x)[j] ===
    as.character(x[j]).
  * The set utility functions, notably intersect() have been tweaked
    to be more consistent and symmetric in their two set arguments,
    also preserving a common mode.
  * substr(ch, start,end) &lt;- new now e.g., preserves names(ch); ditto
    for substring(), thanks to a patch from Brodie Gaslam.
  * plot(&lt;lm&gt;) gains a extend.ylim.f argument, in partial response to
    PR#15285; further PR#17784 is fixed thanks to several
    contributors and a patch by Elin Waring.  The Cook's dist
    contours get customizable via cook.col and cook.lty with a
    different default color and their legend is nicer by default and
    customizable via cook.legendChanges.
  * Attempting to subset an object that is not subsettable now
    signals an error of class notSubsettableError. The
    non-subsettable object is contained in the object field of the
    error condition.
  * Subscript-out-of-bounds errors are now signaled as errors of
    class subscriptOutOfBoundsError.
  * Stack-overflow errors are now signaled as errors inheriting from
    class stackOverflowError. See ?stackOverflowError for more
    details.
  * New partly experimental Sys.setLanguage() utility, solving the
    main problem of PR#18055.
  * gettext() and gettextf() get a new option trim = TRUE which when
    set to false allows translations for strings such as "Execution
    halted\n" typical for C code.
  * An experimental implementation of hash tables is now available.
    See ?hashtab for more details.
  * identical() gains a extptr.as.ref argument for requesting that
    external pointer objects be compared as reference objects.
  * reorder() gets an argument decreasing which it passes to sort()
    for level creation; based on the wish and patch by Thomas Soeiro
    in PR#18243.
  * as.vector() gains a data.frame method which returns a simple
    named list, also clearing a long standing 'FIXME' to enable
    as.vector(&lt;data.frame&gt;, mode="list").  This breaks code relying
    on as.vector(&lt;data.frame&gt;) to return the unchanged data frame.
  * legend() is now vectorized for arguments cex, x.intersp, and
    text.width.  The latter can now also be specified as a vector
    (one element for each column of the legend) or as NA for
    computing a proper column wise maximum value of strwidth(legend).
    The argument y.intersp can be specified as a vector with one
    entry for each row of the legend.
    legend() also gains new arguments title.cex and title.font.
    Thanks to Swetlana Herbrandt.
  * Deparsing no longer remaps attribute names dim, dimnames, levels,
    names and tsp to historical S-compatible names (which structure()
    maps back).
  * sample() and sample.int() have additional sanity checks on their
    size and n arguments.
    all.equal.numeric() gains a sanity check on its tolerance
    argument - calling all.equal(a, b, c) for three numeric vectors
    is a surprisingly common error.
    mean(na.rm =), rank(na.last =), barplot(legend.text =),
    boxplot(), contour(drawlabels =), polygon(border =) and
    methods::is(class2 =) have more robust sanity checks on their
    arguments.
    R CMD Rd2pdf (used by R CMD check) has a more robust sanity check
    on the format of \alias{} commands.
  * psigamma(x, deriv) for negative x now also works for deriv = 4
    and 5; their underlying C level dpsifn() is documented in
    'Writing R Extensions'.
  * The HTML help system now uses HTML5 (wish of PR#18149).
  * ks.test() now provides exact p-values also with ties and MC
    p-values in the two-sample (Smirnov) case.  By Torsten Hothorn.
  * ks.test() gains a formula interface, with y ~ 1 for the
    one-sample (Kolmogorov) test and y ~ group for the two-sample
    (Smirnov) test.  Contributed by Torsten Hothorn.
  * The return value from ks.test() now has class c("ks.test",
    "htest") - packages using try() need to take care to use
    inherits() and not == on the class.
  * New functions psmirnov(), qsmirnov() and rsmirnov() in package
    stats implementing the asymptotic and exact distributions of the
    two-sample Smirnov statistic.
  * iconv() now allows sub = "c99" to use C99-style escapes for UTF-8
    inputs which cannot be converted to encoding to.
  * In a forward pipe |&gt; expression it is now possible to use a named
    argument with the placeholder _ in the rhs call to specify where
    the lhs is to be inserted.  The placeholder can only appear once
    on the rhs.
  * The included LAPACK sources have been updated to version 3.10.0,
    except for the four Fortran 77 routines which 3.10.0 has
    re-implemented in Fortran 90 (where the older versions have been
    retained as the R build process does not support Fortran 90).
  * path.expand() and most other uses of tilde expansion now warn if
    a path would be too long if expanded.  (An exception is
    file.exists(), which silently returns false.)
  * trunc(&lt;Date&gt;, *) now supports units = "months" or "years" for
    consistency with the POSIXt method, thanks to Dirk Eddelbuettel's
    proposal in PR#18099.
  * list2DF() now checks that its arguments are of the same length,
    rather than use recycling.
  * The HTML help system has several new features: LaTeX-like math
    can be typeset using either KaTeX or MathJax, usage and example
    code is highlighted using Prism, and for dynamic help the output
    of examples and demos can be shown within the browser if the
    knitr package is installed. These features can be disabled by
    setting the environment variable _R_HELP_ENABLE_ENHANCED_HTML_ to
    a false value.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 15
    and so packages that provide graphics devices should be
    reinstalled.
  * The grid package now allows the user to specify a "vector" of
    pattern fills.  The fill argument to gpar() accepts a list of
    gradients and/or patterns and the functions linearGradient(),
    radialGradient(), and pattern() have a new group argument.
    Points grobs (data symbols) can now also have a pattern fill.
    The grobCoords() function now returns a more informative and
    complex result.
  * The grid package has new functions for drawing isolated groups:
    grid.group(), grid.define(), and grid.use().  These functions add
    compositing operators and affine transformations to R's graphics
    capabilities.
    The grid package also has new functions for stroking and filling
    paths: grid.stroke(), grid.fill(), and grid.fillStroke().
    A new function as.path() allows the user to specify the fill rule
    for a path that is to be used for clipping, stroking, or filling;
    available options are "winding" and "evenodd".  A new function
    as.mask() allows the user to specify the type of a mask;
    available options are "alpha" and "luminance".
    These new features are only supported so far (at most) on the
    Cairo-based graphics devices and on the pdf() device.
  * dev.capabilities() reports on device support for the new
    features.
  * par() now warns about unnamed non-character arguments to prevent
    misuse such as {usr &lt;- par("usr"); par(usr)}.
  INSTALLATION:
  * Facilities for accessing ftp:// sites are no longer tested
    (except _pro tem_ for curlGetHeaders()) as modern browsers have
    removed support.
  * R can now be built with DEFS = -DSTRICT_R_HEADERS .
  PACKAGE INSTALLATION:
  * R CMD INSTALL no longer tangles vignettes. This completes an R
    CMD build change in R 3.0.0 and affects packages built before R
    3.0.2. Such packages should be re-made with R CMD build to have
    the tangled R code of vignettes shipped with the tarball.
  * USE_FC_LEN_T will become the default: this uses the correct
    prototypes for Fortran BLAS/LAPACK routines called from C/C++,
    and requires adjustment of most such calls - see 'Writing R
    Extensions' SS6.6.2.  (This has been supported since R 3.6.2.)
  * Package installation speed for packages installed with
    keep.source has been improved. This resolve the issue reported by
    Ofek Shilon in PR#18236.
  UTILITIES:
  * R CMD check can optionally report files/directories left behind
    in home, /tmp (even though TMPDIR is set) and other directories.
    See the "R Internals" manual for details.
  * R CMD check now reports byte-compilation errors during
    installation.  These are not usually fatal but may result in
    parts of the package not being byte-compiled.
  * _R_CHECK_DEPENDS_ONLY_ can be applied selectively to examples,
    tests and/or vignettes in R CMD check: see the "R Internals"
    manual.
  * _R_CHECK_SRC_MINUS_W_IMPLICIT_ now defaults to true: recent
    versions of Apple clang on macOS have made implicit function
    declarations in C into a compilation error.
  * R CMD check --as-cran makes use of the environment variable
    AUTORECONF.  See the "R Internals" manual SS8 for further details.
  * R CMD check --use-valgrind also uses valgrind when re-building
    vignettes as some non-Sweave vignettes unhelpfully comment out
    all their code when R CMD check runs vignettes.
  * Errors in re-building vignettes (unless there are LaTeX errors)
    are reported by R CMD check as ERROR rather than WARNING when
    running vignettes has been skipped (as it frequently is in CRAN
    checks and by --as-cran).
  * R CMD Rd2pdf gains a --quiet option that is used by R CMD build
    when building the PDF package manual.
  * R CMD Rd2pdf now always runs LaTeX in batch mode, consistent with
    Texinfo &gt;= 6.7. The --batch option is ignored.
  * R CMD build and R CMD check now include the Rd file name and line
    numbers in the error message of an \Sexpr evaluation failure.
  * For packages using the \doi Rd macro (now an install-time \Sexpr)
    but no other dynamic Rd content, R CMD build now produces a
    smaller tarball and is considerably faster - skipping temporary
    package installation.
  C-LEVEL FACILITIES:
  * The non-API header R_ext/R-ftp-http.h is no longer provided, as
    the entry points it covered are now all defunct.
  * A number of non-API declarations and macro definitions have been
    moved from the installed header Rinternals.h to the internal
    header Defn.h. Packages that only use entry points and
    definitions documented to be part of the API as specified in
    'Writing R Extensions' SS6 should not be affected.
  * The macro USE_RINTERNALS no longer has any effect when compiling
    package code.  Packages which also use R_NO_REMAP will need to
    ensure that the remapped names are used for calls to API
    functions that were formerly also made available as macros.
  * The deprecated legacy S-compatibility macros PROBLEM, MESSAGE,
    ERROR, WARN, WARNING, RECOVER, ... are no longer defined in
    R_exts/RS.h (included by R.h).  Replace these by calls to
    Rf_error and Rf_warning (defined in header R_ext/Error.h included
    by R.h).
    Header R_ext/RS.h no longer includes R_ext/Error.h.
  * Header R_ext/Constants.h (included by R.h) when included from C++
    now includes the C++ header cfloat rather than the C header
    float.h (now possible as C++11 is required).
  * The legacy S-compatibility macros DOUBLE_* in R_ext/Constants.h
    (included by R.h) are deprecated.
  * The deprecated S-compatibility macros SINGLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * R_Calloc, R_Free and R_Realloc are preferred to their unprefixed
    forms and error messages now use the prefix. These forms were
    introduced in R 3.4.0 and are available even when
    STRICT_R_HEADERS is defined.
  * rmultinom has been documented in 'Writing R Extensions' SS6 so is
    now part of the R API.
  * Similarly, Rtanpi, called from R level tanpi() is now part of the
    R API.
  * The long-deprecated, undocumented and non-API entry point call_R
    is no longer declared in R_ext/RS.h (included by R.h).
  * The header S.h which has been unsupported since Jan 2016 has been
    removed.  Use R.h instead.
  DEPRECATED AND DEFUNCT:
  * The (non-default and deprecated) method = "internal" for
    download.file() and url() no longer supports http:// nor ftp://
    URIs.  (It is used only for file:// URIs.)
    On Windows, download.file(method = "wininet") no longer supports
    ftp:// URIs.  (It is no longer the default method, which is
    "libcurl" and does.)
    On Windows, the deprecated method = "wininet" now gives a warning
    for http:// and https:// URIs for both download.file() and url().
    (It is no longer the default method.)
  * On Windows, the command-line option --max-mem-size and
    environment variable R_MAX_MEM_SIZE are defunct.  The memory
    allocation limit was important for 32-bit builds, but these are
    no longer supported.
  * default.stringsAsFactors() is now formally deprecated, where that
    was only mentioned on its regular help page, previously.  So it
    now gives a warning if called.
  * unix.time() is defunct now; it had been deprecated since R 3.4.0.
  BUG FIXES:
  * Setting digits = 0 in format(), print.default() (and hence
    typically print()) or options() is again invalid.  Its behaviour
    was platform-dependent, and it is unclear what "zero significant
    digits" should mean (PR#18098).
  * Messages from C code in the cairo section of package grDevices
    are now also offered for translation, thanks to Michael Chirico's
    PR#18123.
  * mean(x) with finite x now is finite also without "long.double"
    capability.
  * R CMD Rd2pdf no longer leaves an empty build directory behind
    when it aborts due to an already existing output file.  (Thanks
    to Sebastian Meyer's PR#18141.)
  * density(x, weights = w, na.rm = TRUE) when anyNA(x) is true, now
    removes weights "in parallel" to x, fixing PR#18151, reported by
    Matthias Gondan.  Additionally, it gets a subdensity option.
  * Conversion of \Sexpr[]{&lt;expR&gt;} to LaTeX or HTML no longer
    produces long blocks of empty lines when &lt;expR&gt; itself contains
    several lines all producing empty output.  Thanks to a report and
    patch by Ivan Krylov posted to R-devel.
  * R CMD build no longer fails if a package vignette uses child
    documents and inst/doc exists.  (Thanks to Sebastian Meyer's
    PR#18156.)
  * When an R documentation ('help' source) file man/foo.Rd in a
    package has \donttest{..} examples with a syntax error, it is now
    signalled as ERROR and with correct line numbers relating to the
  * -Ex.R file, thanks to Duncan Murdoch and Sebastian Meyer's
    reports and patch proposals in PR#17501.
  * Improved determination of the correct translation domain in
    non-base packages, addressing the combination of PR#18092 and
    PR#17998 (#c6) with reports and _augmented_ patch #2904 by
    Suharto Anggono.
    Note that "R-base" is no longer the default domain e.g., for
    top-level calls to gettext(); rather translation needs explicit
    domain = * specification in such cases.
  * identical(attrib.as.set=FALSE) now works correctly with data
    frames with default row names (Thanks to Charlie Gao's PR#18179).
  * txtProgressBar() now enforces a non-zero width for argument char,
    without which no progress can be visible.
  * dimnames(table(d)) is more consistent in the case where d is a
    list with a single component, thanks to Thomas Soeiro's report to
    R-devel.
    Further, table(d1, d2) now gives an error when d1 and d2 are data
    frames as suggested by Thomas in PR#18224.
  * Fix for drawing semi-transparent lines and fills on the native
    Windows graphics device (PR#18219 and PR#16694).  Thanks to Nick
    Ray for helpful diagnosis on Bugzilla.
  * The deparser now wraps sub-expressions such as if(A) ..  with
    parentheses when needed; thanks to Duncan Murdoch's PR#18232 and
    Lionel Henry's patches there.
  * remove.packages() no longer tries to uninstall Priority: base
    packages, thanks to a report and suggestions by Colin Fay in
    PR#18227.
  * win.metafile() now has xpinch and ypinch arguments so that the
    user can override Windows' (potentially wrong) guess at device
    dimensions.
  * x[i] and x[[i]] for non-integer i should now behave in all cases
    as always documented: the index used is equivalent to
    as.integer(i) unless that would overflow where trunc(i) is used
    instead; thanks to Suharto Anggono's report and patch proposals
    in PR#17977.
  * asOneSidedFormula() now associates the resulting formula with the
    global environment rather than the evaluation environment created
    for the call.
  * &lt;bibentry&gt;$name now matches the field name case-insensitively,
    consistent with bibentry() creation and the replacement method.
  * cbind() failed to detect some length mismatches with a mixture of
    time-series and non-time-series inputs.
  * The default LaTeX style file Sweave.sty used by the RweaveLatex
    driver no longer loads the obsolete ae package; thanks to a
    report by Thomas Soeiro in PR#18271.  Furthermore, it now skips
    \usepackage[T1]{fontenc} for engines other than pdfTeX (if
    detected) or if the new [nofontenc] option is used.
  * smooth.spline() now stores its logical cv argument more safely,
    fixing a rare bug when printing, and also stores n.
  * smooth.spline(x,y,*) now computes the cv.crit statistic
    correctly, also when is.unsorted(x), fixing PR#18294.
  * The data.frame method of rbind() now warns when binding
    not-wholly-recycling vectors, by analogy to the default method
    (for matrices).
  * setAs() finds the correct class for name to when multiple
    packages define a class with that name. Thanks to Gabor Csardi
    for the report.
  * Fix for detaching a package when two classes of the same name are
    present in method signatures for the same generic. Thanks to
    Gabor Csardi for the report.
  * match.arg("", c("", "a", "B")) gives a better error message, in
    part from PR#17959, thanks to Elin Waring.
  * R CMD Sweave --clean no longer removes pre-existing files or
    subdirectories (PR#18242).
  * The quartz() device no longer splits polylines into subpaths.
    That has caused narrowly-spaced lines with many points to always
    look solid even when dashed line type was used due to dash phase
    restarts.
  * Deparsing constructs such as quote(1 + `!`(2) + 3) works again as
    before R 3.5.0, thanks to the report and patch in PR#18284 by
    Suharto Anggono.
  * as.list(f) for a factor f now keeps names(f), fixing PR#18309.
  * qbeta(.001, .9, .009) and analogous qf() calls now return a
    correct value instead of NaN or wrongly 1, all with a warning;
    thanks to the report by Ludger Goeminne in PR#18302.
  * plot.lm() failed to produce the plot of residuals vs.  factor
    levels (i.e., which=5 when leverages are constant) for models
    with character predictors (PR#17840).
  * interaction.plot(..., xtick = TRUE) misplaced the x-axis line
    (PR#18305).
  * Not strictly fixing a bug, format()ing and print()ing of
    non-finite Date and POSIXt values NaN and +/-Inf no longer show
    as NA but the respective string, e.g., Inf, for consistency with
    numeric vector's behaviour, fulfilling the wish of PR#18308.
  * R CMD check no longer runs test scripts generated from
    corresponding .Rin files twice and now signals an ERROR if
    processing an .Rin script fails.
  * tools::Rd2txt() used for plain-text help pages now renders \hrefs
    (if tools::Rd2txt_options(showURLs = TRUE)) and \urls with
    percent-encoding and standards-compliant delimiting style (angle
    brackets and no URL: prefix).  \email is now rendered with a
    mailto: prefix.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1655985600">- CHANGES IN R 4.2.1:
  NEW FEATURES:
  * New function utils::findCRANmirror() to find out if a CRAN mirror
    has been selected, otherwise fallback to the main site.  This
    behaves in the same way as tools::CRAN_package_db() and is
    intended for packages wishing to access CRAN for purposes other
    than installing packages.
    The need for this was shown by a day when the main CRAN website
    was offline and a dozen or so packages which had its URL
    hardcoded failed their checks.
  INSTALLATION on a UNIX-ALIKE:
  * The libraries searched for by --with-blas (without a value) now
    include BLIS (after OpenBLAS but before ATLAS).  And on macOS,
    the Accelerate framework (after ATLAS).  (This is patterned after
    the AX_BLAS macro from the Autoconf Archive.)
  * The included LAPACK sources have been updated to 3.10.1.
  UTILITIES:
  * The (full path to) the command tidy to be used for HTML
    validation can be set by environment variable R_TIDYCMD.
  * Setting environment variable _R_CHECK_RD_VALIDATE_RD2HTML_ to a
    false value will override R CMD check --as-cran and turn off HTML
    validation.  This provides a way to circumvent a problematic
    tidy.
    The 2006 version that ships with macOS is always skipped.
  C-LEVEL FACILITIES:
  * The undocumented legacy declarations of Sint, Sfloat, SINT_MAX
    and SINT_MIN in header R.h are deprecated.
  BUG FIXES:
  * fisher.test(d) no longer segfaults for "large" d; fixing PR#18336
    by preventing/detecting an integer overflow reliably.
  * tar(., files=*) now produces correctly the warning about invalid
    uid or gid of files, fixing PR#18344, reported by Martin Morgan.
  * tk_choose.files() with multi = FALSE misbehaved on paths
    containing spaces (PR#18334) (regression introduced in R 4.0.0).
  * sort(x, partial = ind, *) now works correctly notably for the
    non-default na.last = FALSE or TRUE, fixing PR#18335 reported by
    James Edwards.
  * Environment variable _R_CHECK_XREFS_REPOSITORIES_ is only used
    for checking .Rd cross-references in R CMD check (as documented)
    and not for other uses looking for a CRAN mirror.
  * The search for a CRAN mirror when checking packages now uses
    getOption("repos") if that specifies a CRAN mirror, even when it
    does not also specify all three Bioconductor repositories (as was
    previously required).
  * The HTML code generated by tools::Rd2HTML() has been improved to
    pass tidy 5.8.0.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1667217600">- CHANGES IN R 4.2.2:
  NEW FEATURES:
  * tools::Rdiff(useDiff = TRUE) checks for the presence of an
    external diff command and switches to useDiff = FALSE if none is
    found.  This allows R CMD Rdiff to always work.
  * On Windows, environment variable R_LIBCURL_SSL_REVOKE_BEST_EFFORT
    can be used to switch to only 'best-effort' SSL certificate
    revocation checks with the default "libcurl" download method.
    This reduces security, but may be needed for downloads to work
    with MITM proxies (PR#18379).
  * (macOS) The run-time check for libraries from XQuartz for X11 and
    Tcl/Tk no longer uses otool from the Apple Developer Tools
    (PR#18400).
  * The LaTeX style for producing the PDF manuals, Rd.sty, now loads
    the standard amsmath, amsfonts and amssymb packages for greater
    coverage of math commands in the Rd \eqn and \deqn macros.  The
    \mathscr LaTeX command is also provided (via the mathrsfs
    package, if available, or the amsfonts bundle otherwise),
    fulfilling the wish of PR#18398.
  * (Windows) The default format of readClipboard() and
    writeClipboard() has been changed to 13 (CF_UNICODETEXT).
  INSTALLATION on a UNIX-ALIKE:
  * The PDF manuals (if built) can be compacted by the new target
    make compact-pdf (at the top level or in directory doc/manual).
  * There is now configure support for LLVM clang 15 on Linux, which
    defaults to position-independent (PIE) executables whereas
    gfortran does not.
  * Many small changes to ease compilation (and suppress warnings)
    with LLVM clang 15.
  BUG FIXES:
  * Rscript -e would fail if stdin were closed (Reported by Henrik
    Bengtsson.)
  * qt(*, log.p=TRUE) in outer tails no longer produces NaN in its
    final steps, thus fixing PR#18360.
  * tools::Rd2latex() now escapes hashes and ampersands when writing
    URLs, fixing LaTeX errors with such URLs in \tabular.
  * When isGeneric(f, fdef=*) is used with mismatching names, the
    warning is better understandable; reported (with fix) in PR#18370
    by Gabe Becker.
  * poly(x, n) now works again (and is now documented) when x is a
    "Date" or "POSIXct" object, or of another class while fulfilling
    mode(x) == "numeric".  This also enables poly(x, *, raw=TRUE) for
    such variables.  Reported by Michael Chirico to R-devel.
  * write.table(), write.csv() and write.csv2() restore their
    numerical precision (internal equivalent of digits = 15) after an
    interrupt (PR#18384).
  * One can now read also byte FF from a clipboard connection
    (PR#18385).
  * source("") and source(character()) now give more helpful error
    messages.
  * R CMD check --as-cran set _R_CHECK_TIMINGS_ too late to have the
    intended effect.
  * as.POSIXlt(x) now also works with very large dates x, fixing
    PR#18401 reported by Hannes M"uhleisen.
  * Files can now be extracted even from very large zip archives
    (PR#18390, thanks to Martin Jakt).
  * Non-finite objects of class "POSIXlt" are now correctly coerced
    to classes "Date" and "POSIXct"; following up on the extension to
    format() them correctly.
  * Added methods for is.finite(), is.infinite() and is.nan() for
    "POSIXlt" date-time objects.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1678881600">- CHANGES IN R 4.2.3:
  C-LEVEL FACILITIES:
  * The definition of DL_FUNC in R_ext/Rdynload.h has been changed to
    be fully C-compliant.  This means that functions loaded _via_ for
    example R_GetCCallable need to be cast to an appropriate type if
    they have any arguments.
  * .Machine has a new element sizeof.time_t to identify old systems
    with a 32-bit type and hence a limited range of date-times (and
    limited support for dates millions of years from present).
  PACKAGE INSTALLATION:
  * (Windows) The default C++ standard had accidentally been left at
    C++11 when it was changed to C++14 on Unix.
  BUG FIXES:
  * As "POSIXlt" objects may be "partially filled" and their list
    components meant to be recycled, length() now is the length of
    the longest component.
  * as.POSIXlt.Date() could underflow for dates in the far past (more
    than half a million years BCE).
  * as.Date.POSIXlt(x) would return "1970-01-01" instead of NA in R
    4.2.2, e.g., for
    x &lt;- as.POSIXlt(c("2019-01-30","2001-1-1"))
    x$mon &lt;- c(0L, NA); as.Date(x)
  * R CMD check failed to apply enabled _R_CHECK_SUGGESTS_ONLY_ to
    examples and vignettes (regression in R 4.2.0).
  * R CMD check did not re-build vignettes in separate processes by
    default (regression in R 4.2.0).
  * Running examples from HTML documentation now restores previous
    knitr settings and options (PR#18420).
  * Quartz: fonts are now located using Core Graphics API instead of
    deprecated ATS which is no longer supported in the macOS 13 SDK
    (PR#18426).  This also addresses an issue where the currently
    used font in the Quartz device context was not correctly
    retained.
  * (Windows) Math symbols in text drawing functions are again
    rendered correctly (PR#18440).  This fixes a regression in R
    4.2.1 caused by a fix in PR#18382 which uncovered an issue in
    GraphApp due to which the symbol charset was not used with TT
    Symbol font face.
  * (Windows) Installing a package with a src/Makefile.{win,ucrt}
    file includes ~/.R/Makevars.win64 in the search for user
    makevars, as documented in "R Installation and Administration"
    and done for packages with a src/Makevars.{win,ucrt} file.
  * format(&lt;POSIXlt_w/_unbalanced_sec&gt;, "....%OS&lt;n&gt;") with n &gt; 0 no
    longer accidentally uses the unbalanced seconds, thanks to
    Suharto Anggono's report (including patch) in PR#18448.
  * solve.default(a, b) works around issues with some versions of
    LAPACK when a contains NA or NaN values.
  * When UseMethod() cannot dispatch, it no longer segfaults
    producing the error message in case of a long class(), thanks to
    Joris Vankerschaver's report (including patch) in PR#18447.
  * When example(foo, ..) produces graphics on an interactive device
    it needs to open itself, it now leaves devAskNewPage() unchanged
    even when it was FALSE, thus fixing a 14 years old '&lt;FIXME&gt;'.
  * packageDescription() again catches errors from encoding
    conversions. This also fixes broken packageVersion() in C locale
    on systems where iconv does not support transliteration.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1681128000">- add patch to build with libcurl &gt;= 8</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1682078400">- CHANGES IN R 4.3.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Calling &amp;&amp; or || with LHS or (if evaluated) RHS of length greater
    than one is now always an error, with a report of the form
    'length = 4' in coercion to 'logical(1)'
    Environment variable _R_CHECK_LENGTH_1_LOGIC2_ no longer has any
    effect.
  NEW FEATURES:
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.10.1.  (This caused some platform-dependent
    changes to package check output.)  And then to the sources from
    LAPACK version 3.11.0 (with changes only to double complex
    subroutines).
  * The included LAPACK sources have been updated to include the four
    Fortran 90 routines rather than their Fortran 77 predecessors.
    This may give some different signs in SVDs or
    eigendecompositions..  (This completes the transition to LAPACK
    3.10.x begun in R 4.2.0.)
  * The LAPACK sources have been updated to version 3.11.0.  (No new
    subroutines have been added, so this almost entirely bug fixes:
    Those fixes do affect some computations with NaNs, including R's
    NA.)
  * The parser now signals _classed_ errors, notably in case of the
    pipe operator |&gt;.  The error object and message now give line and
    column numbers, mostly as proposed and provided by Duncan Murdoch
    in PR#18328.
  * toeplitz() is now generalized for asymmetric cases, with a
    toeplitz2() variant.
  * xy.coords() and xyz.coords() and consequently, e.g., plot(x,y,
    log = "y") now signal a _classed_ warning about negative values
    of y (where log(.) is NA).  Such a warning can be specifically
    suppressed or caught otherwise.
  * Regular expression functions now check more thoroughly whether
    their inputs are valid strings (in their encoding, e.g. in
    UTF-8).
  * The performance of grep(), sub(), gsub() and strsplit() has been
    improved, particularly with perl = TRUE and fixed = TRUE.  Use of
    useBytes = TRUE for performance reasons should no longer be
    needed and is discouraged: it may lead to incorrect results.
  * apropos() gains an argument dot_internals which is used by the
    completion (help(rcompgen)) engine to also see base internals
    such as .POSIXct().
  * Support in tools::Rdiff() for comparing uncompressed PDF files is
    further reduced - see its help page.
  * qqplot(x, y, ...) gains conf.level and conf.args arguments for
    computing and plotting a confidence band for the treatment
    function transforming the distribution of x into the distribution
    of y (Switzer, 1976, _Biometrika_). Contributed by Torsten
    Hothorn.
  * Performance of package_dependencies() has been improved for cases
    when the number of dependencies is large.
  * Strings newly created by gsub(), sub() and strsplit(), when any
    of the inputs is marked as "bytes", are also marked as "bytes".
    This reduces the risk of creating invalid strings and accidental
    substitution of bytes deemed invalid.
  * Support for readLines(encoding = "bytes") has been added to allow
    processing special text files byte-by-byte, without creating
    invalid strings.
  * iconv(from = "") now takes into account any declared encoding of
    the input elements and uses it in preference to the native
    encoding.  This reduces the risk of accidental creation of
    invalid strings, particularly when different elements of the
    input have different encoding (including "bytes").
  * Package repositories in getOption("repos") are now initialized
    from the repositories file when utils is loaded (if not already
    set, e.g., in .Rprofile).  (From a report and patch proposal by
    Gabriel Becker in PR#18405.)
  * compactPDF() gets a verbose option.
  * type.convert() and hence read.table() get new option tryLogical =
    TRUE with back compatible default.  When set to false, converts
    "F" or "T" columns to character.
  * Added new unit prefixes "R" and "Q" for abbreviating
    (unrealistically large) sizes beyond 10^{27} in standard = "SI",
    thanks to Henrik Bengtsson's PR#18435.
  * as.data.frame()'s default method now also works fine with atomic
    objects inheriting from classes such as "roman", "octmode" and
    "hexmode", such fulfilling the wish of PR#18421, by Benjamin
    Feakins.
  * The as.data.frame.vector() utility now errors for wrong-length
    row.names.  It warned for almost six years, with "Will be an
    error!".
  * sessionInfo() now also contains La_version() and reports codepage
    and timezone when relevant, in both print() and toLatex() methods
    which also get new option tzone for displaying timezone
    information when locale = FALSE.
  * New function R_compiled_by() reports the C and Fortran compilers
    used to build R, if known.
  * predict(&lt;lm&gt;, newdata = *) no longer unnecessarily creates an
    offset of all 0s.
  * solve() for complex inputs now uses argument tol and by default
    checks for 'computational singularity' (as it long has done for
    numeric inputs).
  * predict(&lt;rank-deficient lm&gt;, newdata=*) now obeys a new argument
    rankdeficient, with new default "warnif", warning only if there
    are non-estimable cases in newdata.  Other options include
    rankdeficient = "NA", predicting NA for non-estimable newdata
    cases.  This addresses PR#15072 by Russ Lenth and is based on his
    original proposal and discussions in PR#16158 also by David Firth
    and Elin Waring.  Still somewhat experimental.
  * Rgui console implementation now works better with the NVDA screen
    reader when the full blinking cursor is selected.  The underlying
    improvements in cursor handling may help also other screen
    readers on Windows.
  * The drop-field control in GraphApp can now be left with the TAB
    key and all controls can be navigated in the reverse order using
    the Shift+TAB key, improving accessibility of the Rgui
    configuration editor.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now fully accurate
    (instead of to "only" minimally five digits).
  * demo(error.catching) now also shows off withWarnings() and
    tryCatchWEMs().
  * As an experimental feature the placeholder _ can now also be used
    in the rhs of a forward pipe |&gt; expression as the first argument
    in an extraction call, such as _$coef. More generally, it can be
    used as the head of a chain of extractions, such as _$coef[[2]].
  * Spaces in the environment variable used to choose the R session's
    temporary directory (TMPDIR, TMP and TEMP are tried in turn) are
    now fatal.  (On Windows the 'short path' version of the path is
    tried and used if that does not contain a space.)
  * all.equal.numeric() gets a new optional switch giveErr to return
    the numeric error as attribute.  Relatedly,
    stopifnot(all.equal&lt;some&gt;(a, b, ..)) is as "smart" now, as
    stopifnot(all.equal(....)) has been already, thus allowing
    customized all.equal&lt;Some&gt;() wrappers.
  * R on Windows is now able to work with path names longer than 260
    characters when these are enabled in the system (requires at
    least Windows 10 version 1607).  Packages should be updated to
    work with long paths as well, instead of assuming PATH_MAX to be
    the maximum length.  Custom front-ends and applications embedding
    R need to update their manifests if they wish to allow this
    feature.  See
    &lt;https://blog.r-project.org/2023/03/07/path-length-limit-on-windows&gt;
    for more information.
  * 'Object not found' and 'Missing argument' errors now give a more
    accurate error context. Patch provided by Lionel Henry in
    PR#18241.
  * The @ operator is now an S3 generic. Based on contributions by
    Tomasz Kalinowski in PR#18482.
  * New generic chooseOpsMethod() provides a mechanism for objects to
    resolve cases where two suitable methods are found for an Ops
    Group Generic. This supports experimenting with alternative
    object systems. Based on contributions by Tomasz Kalinowski in
    PR#18484.
  * inherits(x, what) now accepts values other than a simple
    character vector for argument what. A new generic, nameOfClass(),
    is called to resolve the class name from what. This supports
    experimenting with alternative object systems. Based on
    contributions by Tomasz Kalinowski in PR#18485.
  * Detection of BLAS/LAPACK in use (sessionInfo()) with FlexiBLAS
    now reports the current backend.
  * The "data.frame" method for subset() now warns about extraneous
    arguments, typically catching the use of = instead of == in the
    subset expression.
  * Calling a:b when numeric a or b is longer than one may now be
    made into an error by setting environment variable
    _R_CHECK_LENGTH_COLON_ to a true value, along the proposal in
    PR#18419 by Henrik Bengtsson.
  * density(x, weights = *) now warns if automatic bandwidth
    selection happens without using weights; new optional warnWbw may
    suppress the warning.  Prompted by Christoph Dalitz' PR#18490 and
    its discussants.
  * rm(list = *) is faster and more readable thanks to Kevin Ushey's
    PR#18492.
  * The plot.lm() function no longer produces a normal Q-Q plot for
    GLMs. Instead it plots a half-normal Q-Q plot of the absolute
    value of the standardized deviance residuals.
  * The print() method for class "summary.glm" no longer shows
    summary statistics for the deviance residuals by default.  Its
    optional argument show.residuals can be used to show them if
    required.
  * The tapply() function now accepts a data frame as its X argument,
    and allows INDEX to be a formula in that case. by.data.frame()
    similarly allows INDICES to be a formula.
  * The performance of df[j] &lt;- value (including for missing j) and
    write.table(df) has been improved for data frames df with a large
    number of columns.  (Thanks to Gabriel Becker's PR#18500,
    PR#18503 and discussants, prompted by a report from Toby Dylan
    Hocking on the R-devel mailing list.)
  * The matrix multiply operator %*% is now an S3 generic, belonging
    to new group generic matrixOps.  From Tomasz Kalinowski's
    contribution in PR#18483.
  * New function array2DF() to convert arrays to data frames,
    particularly useful for the list arrays created by tapply().
  DATES and TIMES:
  * On platforms where (non-UTC) datetimes before 1902 (or before
    1900 as with system functions on recent macOS) are guessed by
    extrapolating time zones from 1902-2037, there is a warning at
    the first use of extrapolation in a session.  (As all time zones
    post 2037 are extrapolation, we do not warn on those.)
  * (Platforms using --with-internal-tzone, including Windows and by
    default macOS). How years are printed in dates or date-times can
    be controlled by environment variable R_PAD_YEARS_BY_ZERO.  The
    default remains to pad to 4 digits by zeroes, but setting value
    no gives no padding (as used by default by glibc).
  * strftime() tries harder to determine the offset for the "%z"
    format, and succeeds on the mainstream R platforms.
  * strftime() has a limit of 2048 bytes on the string produced -
    attempting to exceed this is an error.  (Previously it silently
    truncated at 255 bytes.)
  * sessionInfo() records (and by default prints) the system time
    zone as part of the locale information.  Also, the source
    (system/internal) of the date-time conversion and printing
    functions.
  * Objects of class "POSIXlt" created in this version of R always
    have 11 components: component zone is always set, and component
    gmtoff is set for times in UTC and usually set on the (almost
    all) platforms which have C-level support, otherwise is NA.
  * There are comprehensive validity checks on the structure of
    objects of class "POSIXlt" when converting (including formatting
    and printing).  (This avoids mis-conversions of hand-crafted
    objects.)
  * There is some support for using the native date-time routines on
    macOS: this is only viable on recent versions (e.g. 12.6 and 13)
    and does get wrong some historical changes (before 1900, during
    WWII).  Use of --with-internal-tzone remains the default.
  * as.POSIXct(&lt;numeric&gt;) and as.POSIXlt(.) (without specifying
    origin) now work.  So does as.Date(&lt;numeric&gt;).
  * as.Date.POSIXct(., tz) now treats several tz values, notably
    "GMT" as equivalent to "UTC", proposed and improved by Michael
    Chirico and Joshua Ulrich in PR#17674.
  * Experimental balancePOSIXlt() utility allows using "ragged" and
    or out-of-range "POSIXlt" objects more correctly, e.g., in
    subsetting and subassignments.  Such objects are now documented.
    More experimentally, a "POSIXlt" object may have an attribute
    "balanced" indicating if it is known to be filled or fully
    balanced.
  * Functions axis.Date() and axis.POSIXct() are rewritten to gain
    better default tick locations and better default formats by using
    prettyDate(). Thanks to Swetlana Herbrandt.
  * The mapping of Windows' names for time zones to IANA's 'Olson'
    names has been updated.  When ICU is available (it is by
    default), it is used to get a mapping for the current region set
    in Windows.  This can be overridden by setting environment
    variable TZ to the desired Olson name - see OlsonNames() for
    those currently available.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 16
    and so packages that provide graphics devices should be
    reinstalled.
  * The grDevices and grid packages have new functions for rendering
    typeset glyphs, primarily: grDevices::glyphInfo() and
    grid::grid.glyph().
    Rendering of typeset glyphs is only supported so far on the
    Cairo-based graphics devices and on the pdf() and quartz()
    devices.
  * The defined behaviour for "clear" and "source" compositing
    operators (via grid::grid.group()) has been changed (to align
    better with simple interpretation of original Porter-Duff
    definitions).
  * Support for gradients, patterns, clipping paths, masks, groups,
    compositing operators, and affine transformations has been added
    to the quartz() device.
  INSTALLATION on a UNIX-ALIKE:
  * A system installation of generic LAPACK 3.10.0 or later will be
    preferred to the version in the R sources.
    configure option --with-lapack=no (equivalently --without-lapack)
    forces compilation of the internal LAPACK sources.
    If --with-lapack is not specified, a system liblapack is looked
    for and used if it reports version 3.10.0 or later and does not
    contain BLAS routines.
    Packages using LAPACK will need to be reinstalled if this changes
    to using an external library.
  * On aarch64 Linux platforms using GCC, configure now defaults to
  - fPIC (instead of -fpic), as desired in PR#18326.
  * configure now checks conversion of datetimes between POSIXlt and
    POSIXct around year 2020.  Failure (which has been seen on
    platforms missing tzdata) is fatal.
  * If configure option --with-valgrind-instrumentation is given
    value 1 or 2, option --with-system-valgrind-headers is now the
    default and ignored (with a warning).  It is highly recommended
    that the system headers are installed alongside valgrind: they
    are part of its packaging on some Linux distributions and
    packaged separately (e.g. in the valgrind-devel RPM) on others.
    configure will give a warning if they are not found.
    The system headers will be required in a future release of R to
    build with valgrind instrumentation.
  * libcurl 8.x is now accepted by configure: despite a change in
    major version number it changes neither API nor ABI.
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools43, an update of the Rtools42 toolchain.  It is
    based on gcc 12 and newer versions of MinGW-W64, binutils and
    libraries.  At this time R-devel can still be built using
    Rtools42 without changes, but when R-devel is installed via the
    installer, it will by default look for Rtools43.
  * Old make targets rsync-extsoft and 32-bit ones that are no longer
    needed have been removed.
  * Default builds (including for packages) no longer select C99.
    Thus the C standard used is the default for the compiler, which
    for the toolchain in Rtools43 is C17.  (This is consistent with
    Unix builds.)
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++17 where
    available (which it is on all currently checked platforms): if
    not C++14 or C++11 is used if available otherwise C++ is not
    supported.
  * USE_FC_LEN_T is the default: this uses the correct
    (compiler-dependent) prototypes for Fortran BLAS/LAPACK routines
    called from C/C++, and requires adjustment of many such calls -
    see 'Writing R Extensions' SS6.6.1.
  * There is initial support for C++23 as several compilers are now
    supporting -std=c++23 or -std=c++2b or similar.  As for C++20,
    there no additional configure checks for C++23 features beyond a
    check that the compiler reports a __cplusplus value greater than
    that in the C++20 standard.  C++ feature tests should be used.
  * There is support for a package to indicate the version of the C
    standard which should be used to compile it, and for the
    installing user to specify this.  In most cases R defaults to the
    C compiler's default standard which is C17 (a `bug-fix' of C11) -
    earlier versions of R or compilers may have defaulted to C99.
    Current options are:
    USE_C17 Use a standard that is at most C17.  The intention is to
    allow legacy packages to still be installed when later C
    standards become the default, including packages using new
    keywords as identifiers or with K&amp;R-style function
    declarations.  This will use C17 if available, falling back
    to C11.
    USE_C90 Use the C90 (aka C89) standard.  (As that standard did
    not require compilers to identify that version, all we can
    verify is that the compiler does not claim to be using a
    later standard.  It may accept C99 features - for example
    clang accepts // to make comments.)
    USE_C99 Use the C99 standard. This should be rarely needed - it
    avoids the few new features of C11/C17 which can be useful if
    a package assumes them if C17 is specified and they are not
    implemented.
    USE_C23 Use C23 (or in future, later).  Compiler/library support
    for C23 is still being implemented, but LLVM clang from
    15.0.0 and the upcoming GCC 13 have quite extensive support.
    These can be specified as part of the SystemRequirements field in
    the package's DESCRIPTION file or _via_ options --use-C17 and so
    on of R CMD INSTALL and R CMD SHLIB.
    For further details see "Writing R Extensions" SS1.2.5.
  * (Windows) A src/Makefile.ucrt or src/Makefile.win file is now
    included after R_HOME/etcR_ARCH/Makeconf and so no longer needs
    to include that file itself.  Installation of a package with such
    a file now uses a site Makevars file in the same way as a package
    with a src/Makevars.win file would.
  * configure is now passed crucial variables such as CC and CFLAGS
    in its environment, as many packages were not setting them (as
    documented in 'Writing R Extensions' SS1.2).
    This has most effect where configure is used to compile parts of
    the package - most often by cmake or libtool which obfuscate the
    actual compile commands used.
    Also used for configure.win and configure.ucrt on Windows.
  FORTRAN FLAGS:
  * The flag -fno-optimize-sibling-calls is no longer forced for
    gfortran 7 and later.  It should no longer be needed now using
    'hidden' character-length arguments when calling BLAS/LAPACK
    routines from C/C++ is the default even for packages.  (Unless
    perhaps packages call Fortran code from C/C++ without using R's
    headers and without allowing for these arguments.)
  C-LEVEL FACILITIES:
  * The deprecated S-compatibility macros DOUBLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * The deprecated legacy typedefs of Sint and Sfloat in header R.h
    are no longer defined, and that header no longer includes header
    limits.h from C nor climits from C++.
  * New macro CAD5R() is provided in Rinternals.h and used in a few
    places in the R sources.
  * ALTREP now supports VECSXP vectors. Contributed by Gabor Csardi
    in PR#17620.
  * The Rcomplex definition (in header R_ext/Complex.h) has been
    extended to prevent possible mis-compilation when interfacing
    with Fortran (PR#18430).  The new definition causes compiler
    warnings with static initializers such as {1, 2}, which can be
    changed to {.r=1, .i=2}.
    Using the new definition from C++ depends on compiler extensions
    supporting C features that have not been incorporated into the
    C++ standards but are available in g++ and clang++: this may
    result in C++ compiler warnings but these have been worked around
    for recent versions of common compilers (GCC, Apple/LLVM clang,
    Intel).
    It is intended to change the inclusion of header R_ext/Complex.h
    by other R headers, so C/C++ code files which make use of
    Rcomplex should include that header explicitly.
  UTILITIES:
  * R CMD check does more checking of package .Rd files, warning
    about invalid email addresses and (some) invalid URIs and noting
    empty \item labels in description lists.
  * R CMD check now also reports problems when reading package news
    in md (file NEWS.md) and (optionally) plain text (file NEWS)
    formats.
  * _R_CHECK_TIMINGS_ defaults to a value from the environment even
    for R CMD check --as-cran; this allows for exceptionally fast or
    slow platforms.
    It now applies to checking PDF and HTML versions of the manuals,
    and 'checking CRAN incoming feasibility'.
  * R CMD check can optionally (but included in --as-cran) check
    whether HTML math rendering _via_ KaTeX works for the package .Rd
    files.
  * Non-interactive debugger invocations can be trapped by setting
    the environment variable _R_CHECK_BROWSER_NONINTERACTIVE_ to a
    true value.  This is enabled by R CMD check --as-cran to detect
    the use of leftover browser() statements in the package.
  * The use of sprintf and vsprintf from C/C++ has been deprecated in
    macOS 13 and is a known security risk.  R CMD check now reports
    (on all platforms) if their use is found in compiled code:
    replace by snprintf or vsnprintf respectively. [*NB:* whether
    such calls get compiled into the package is platform-dependent.]
  * Where recorded at installation, R CMD check reports the C and
    Fortran compilers used to build R.
    It reports the OS in use (if known, as given by osVersion) as
    well as that R was built for.
    It notes if a C++ standard was specified which is older than the
    current default: many packages have used C++11 to mean 'not
    C++98' - as C++11 is the minimum supported since R 4.0.0, that
    specification can probably be removed.
  * R CMD INSTALL reports the compilers (and on macOS, the SDK) used,
    and this is copied to the output of R CMD check.
    Where a C++ standard is specified, it is reported.
  * R CMD check's 'checking compilation flags in Makevars' has been
    relaxed to accept the use of flags such as -std=f2008 in
    PKG_FFLAGS.
  * tools::buildVignettes() has a new argument skip, which is used by
    R CMD check to skip (and note) vignettes with unavailable
    \VignetteDepends (PR#18318).
  * New generic .AtNames() added to enable class-specific completions
    after @. The formerly internal function findMatches() is now
    exported, mainly for use in methods for .DollarNames() and
    .AtNames().
  DEPRECATED AND DEFUNCT:
  * default.stringsAsFactors() is defunct.
  * Calling as.data.frame.&lt;class&gt;() directly (for 12 atomic classes)
    is going to be formally deprecated, currently activated by
    setting the environment variable
    _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ to non-empty, which also
    happens in R CMD check --as-cran.
  BUG FIXES:
  * Hashed environments with sizes less than 5 can now grow.
    (Reported to R-devel by Duncan Garmonsway.)
  * as.character(&lt;Rd&gt;, deparse = TRUE) failed to re-escape curly
    braces in LaTeX-like text.  (Reported by Hadley Wickham in
    PR#18324.)
  * library() now passes its lib.loc argument when requiring Depends
    packages; reported (with fix) in PR#18331 by Mikael Jagan.
  * R CMD Stangle: improved message about 'Output' files.
  * head(x, n) and tail(x, n) now signal an error if n is not
    numeric, instead of incidentally "working" sometimes returning
    all of x.  Reported and discussed by Colin Fay, in PR#18357.
  * The "lm" method for summary() now gives the correct F-statistic
    when the model contains an offset.  Reported in PR#18008.
  * C() and `contrasts&lt;-`() now preserve factor level names when
    given a function object (as opposed a function name which did
    preserve names). Reported in PR#17616.
  * c(a = 1, 2)[[]] no longer matches 2 but rather signals a
    _classed_ error.  Reported and analysed by Davis Vaughan in
    PR#18367, a duplicate of PR#18004, by Jan Meis et al.  For
    consistency, NULL[[]] is also erroneous now.  x[[]] &lt;- v gives an
    error of the same class "MissingSubscriptError".
  * The relist() function of utils now supports NULL elements in the
    skeleton (PR#15854).
  * ordered(levels = *) (missing x) now works analogously to factor(,
    ordered=TRUE); reported (with fix) by Achim Zeileis in PR#18389.
  * User-defined Rd macro definitions can now span multiple lines,
    thanks to a patch from Duncan Murdoch. Previously, the Rd parser
    silently ignored everything after the first line.
  * Plain-text help (tools::Rd2txt()) now preserves an initial blank
    line for text following description list items.
  * tools::Rd2HTML() and tools::Rd2latex() no longer split \arguments
    and \value lists at Rd comments.
  * tools::Rd2latex() now correctly handles optional text outside
    \items of argument lists as well as bracketed text at the
    beginning of sections, e.g., \value{[NULL]}.
  * as.character(&lt;POSIXt&gt;) now behaves more in line with the methods
    for atomic vectors such as numbers, and is no longer influenced
    by options().  Ditto for as.character(&lt;Date&gt;).  The
    as.character() method gets arguments digits and OutDec with
    defaults _not_ depending on options().  Use of as.character(*,
    format = .) now warns.
  * Similarly, the as.character.hexmode() and *.octmode() methods
    also behave as good citizen methods and back compatibility option
    keepStr = TRUE.
  * The as.POSIXlt(&lt;POSIXlt&gt;) and as.POSIXct(&lt;POSIXct&gt;) default
    methods now do obey their tz argument, also in this case.
  * as.POSIXlt(&lt;Date&gt;) now does apply a tz (time zone) argument, as
    does as.POSIXct(); partly suggested by Roland Fuss on the R-devel
    mailing list.
  * as.Date.POSIXlt(x) now also works when the list components are of
    unequal length, aka "partially filled" or "ragged".
  * expand.model.frame() looked up variables in the wrong environment
    when applied to models fitted without data.  Reported in
    PR#18414.
  * time() now (also) uses the ts.eps = getOption("ts.eps") argument
    and thus by default rounds values very close to the start (or
    end) of a year.  Based on a proposal by Andre"i V. Kostyrka on
    R-help.
  * Printing of a factanal() result with just one factor and sort =
    TRUE now works regularly, fixing PR#17863 by Timothy Bates,
    thanks to the 'R Contributors' working group.
  * Printing 0-length objects of class "factor", "roman", "hexmode",
    "octmode", "person", "bibentry", or "citation" now prints
    something better, one of which fixes PR#18422, reported by
    Benjamin Feakins.
  * Sys.timezone() queries timedatectl only if systemd is loaded;
    addressing a report by Jan Gorecki in PR#17421.
  * The formula method of cor.test() had scoping problems when
    environment(formula) was not the calling environment; reported
    with a patch proposal by Mao Kobayashi in PR#18439.
  * attach() of an environment with active bindings now preserves the
    active bindings.  Reported by Kevin Ushey in PR#18425.
  * BLAS detection now works also with system-provided libraries not
    available as regular files.  This fixes detection of the
    Accelerate framework on macOS since Big Sur.  Reported by David
    Novgorodsky.
  * download.file() gives a helpful error message in case of an
    invalid download.file.method option, thanks to Colin Fay's report
    in PR#18455.
  * Sporadic crashes of Rterm when using completion have been fixed.
  * Rprof() is now more reliable.  A livelock in thread
    initialization with too short sampling interval has been fixed on
    macOS.  A deadlock in using the C runtime has been fixed on
    Windows.  A potential deadlock has been prevented on Unix.
  * Cursor placement in Rgui now works even after a fixed-width font
    is selected.
  * Mandatory options (options()) are now set on startup so that
    saving and restoring them always works (PR#18372).
  * Package installation, R CMD INSTALL or install.packages(*), now
    parses each of the &lt;pkg&gt;/R/*.R files individually instead of
    first concatenating and then parse()ing the large resulting file.
    This allows parser or syntax errors to be diagnosed with correct
    file names and line numbers, thanks to Simon Dedman's report and
    Bill Dunlap's patch in PR#17859.
    This _does_ require syntactically self contained R source files
    now, fixing another inadvertent bug.
  * predict.lm(&lt;model with offset&gt;) now finds the offset in the
    correct environment, thanks to Andr'e Gillibert's report and patch
    in PR#18456.
  * getInitial(&lt;formula&gt;) now finds the selfStart model in the
    correct environment.  (Reported by Ivan Krylov in PR#18368.)
  * Fix for possible segfault when using recently-added graphics
    features, such as gradients, clipping paths, masks, and groups
    with pdf(file=NULL).
  * class(m) &lt;- class(m) no longer changes a matrix m by adding a
    class _attribute_.
  * packageDate(pkg) now only warns once if there is no pkg.
  * When ts() creates a multivariate time series, "mts", it also
    inherits from "array" now, and is.mts() is documented _and_
    stricter.
  * Rd2txt() now preserves line breaks of \verb Rd content and from
    duplicated \cr.  The former also fixes the rendering of verbatim
    output from Rd \Sexpr in plain-text help.
  * uniroot(f, interval) should no longer wrongly converge _outside_
    the interval in some cases where abs(f(x)) == Inf for an x at the
    interval boundary, thanks to posts by Ben Bolker and Serguei
    Sokol on R-devel.
  * Vectorized alpha handling in palette functions such as in gray(),
    rainbow(), or hcl.colors() works correctly now, thanks to Achim
    Zeileis' report and patch in PR#18476.
  * Formatting and print()ing of bibentry objects has dropped the
    deprecated citation.bibtex.max argument, such that the bibtex
    argument's default for print.bibentry() depends directly on the
    citation.bibtex.max option, whereas in format.bibentry() the
    option no longer applies.
  * Attempting to use a character string naming a foreign function
    entry point in a foreign function call in a package will now
    signal an error if the packages has called R_forceSymbols to
    specify that symbols must be used.
  * An error in table() could permanently set options(warn=2)
    promoting all subsequent warnings to errors.
  * The sigma() function gave misleading results for binary GLMs.  A
    new method for objects of class "glm" returns the square root of
    the estimate of the dispersion parameter using the same
    calculation as summary.glm().
  * bs() and ns() in the (typical) case of automatic knot
    construction, when some of the supposedly inner knots coincide
    with boundary knots, now moves them inside (with a warning),
    building on PR#18442 by Ben Bolker.
  * R CMD on Windows now skips the site profile with --no-site-file
    and --vanilla even when R_PROFILE is set (PR#18512, from Kevin
    Ushey).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1686916800">- CHANGES IN R 4.3.1:
  C-LEVEL FACILITIES:
  * The C-level API version of R's integrate(), Rdqags() in Applic.h,
    now returns the correct number of integrand evaluations neval,
    fixing PR#18515 reported and diagnosed by Stephen Wade.
  * The C prototypes for LAPACK calls dspgv and dtptrs in
    R_exts/Lapack.h had one too many and one too few character length
    arguments - but this has not caused any known issues. To get the
    corrected prototypes, include
    [#]include &lt;Rconfig.h&gt; // for PR18534fixed
    [#]ifdef PR18534fixed
    [#] define usePR18534fix 1
    [#]endif
    [#]include &lt;R_exts/Lapack.h&gt;
    in your C/C++ code (PR#18534).
  INSTALLATION:
  * Many of the checks of esoteric Internet operations and those
    using unreliable external sites have been moved to a new target
    that is not run by default and primarily intended for the core
    developers.  To run them use
    cd tests; make test-Internet-dev
  BUG FIXES:
  * .S3methods(), typically called from methods(), again marks
    methods from package base as visible.
    Also, the visibility of non-base methods is again determined by
    the method's presence in search().
  * tools::Rdiff() is now more robust against invalid strings, fixing
    installation tests on Windows without Rtools installed
    (PR#18530).
  * Fix (new) bug in hcl.colors(2, *), by Achim Zeileis (PR#18523).
  * head(., &lt;illegal&gt;) and tail(..) now produce more useful "Error in
    ...." error messages, fixing PR#18362.
  * Package code syntax on Windows is checked in UTF-8 when UTF-8 is
    the native encoding.
  * na.contiguous(x) now also returns the first run, when it is at
    the beginning and there is a later one of the same length;
    reported to R-devel, including a fix, by Georgi Boshnakov.
    Further, by default, it modifies only an existing attr(*,"tsp")
    but otherwise no longer sets one.
  * chol(&lt;not pos.def&gt;, pivot = &lt;T|F&gt;) now gives a correct error or
    warning message (depending on pivot), thanks to Mikael Jagan's
    (PR#18541).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1699012800">- CHANGES IN R 4.3.2:
  NEW FEATURES:
  * The default initialization of the "repos" option from the
    repositories file at startup can be skipped by setting
    environment variable R_REPOSITORIES to NULL such that
    getOption("repos") is empty if not set elsewhere.
  * qr.X() is now an implicit S4 generic in methods.
  * iconv(to = "ASCII//TRANSLIT") is emulated using substitution on
    platforms which do not support it (notably Alpine Linux).  This
    should give a human-readable conversion in ASCII on all platforms
    (rather than NA_character_).
  * trans3d() gains options continuous and verbose addressing the
    problem of possible "wrap around" when projecting too long
    curves, as reported by Achim Zeileis in PR#18537.
  * tools::showNonASCII() has been rewritten to work better on macOS
    14 (which has a changed implementation of iconv()).
  * tiff(type = "quartz") (the default on macOS) now warns if
    compression is specified: it continues to be ignored.
  INSTALLATION on a UNIX-ALIKE:
  * There is some support for building with Intel's LLVM-based
    compilers on x86_64 Linux, such as (C) icx, (C++) ipcx and
    (Fortran) ifx from oneAPI 2023.x.y.
  * There is support for using LLVM's flang-new as the Fortran
    compiler from LLVM 16.0.x (preferably 17.0.0 or later).
  UTILITIES:
  * R CMD check reports the use of the Fortran 90 random number
    generator RANDOM_NUMBER() and the subroutines to initialize it.
    'Writing R Extensions' has example code to use R's RNGs from
    Fortran.
  BUG FIXES:
  * substr(x, n, L) &lt;- cc now works (more) correctly for multibyte
    UTF-8 strings x when L &gt; nchar(x), thanks to a report and patch
    by 'Architect 95'.
  * contrib.url(character()) now returns 0-length character() as
    documented, which also avoids spurious warnings from
    available.packages() et al. in the edge case of an empty vector
    of repository URLs.
  * readChar(., 4e8) no longer fails, thanks to Kodi Arfer's report
    (PR#18557).
  * lapply(&lt;list&gt;, as.data.frame) no longer warns falsely for some
    base vector components.
  * Communication between parent and child processes in the multicore
    part of parallel could fail on platforms that do not support an
    arbitrarily large payload in system functions read()/write() on
    pipes (seen on macOS where a restriction to INT_MAX bytes is
    documented, without doing a partial read unlike Linux). The
    payload is now split into 1Gb chunks to avoid that problem.
    (PR#18571)
  * qqplot(x,y, conf.level=.) gives better confidence bounds when
    length(x) != length(y), thanks to Alexander Ploner's report and
    patch proposal (PR#18557).
  * norm(&lt;0-length&gt;, "2") now gives zero instead of an error, as all
    the other norm types, thanks to Mikael Jagan's PR#18542.
  * Build-stage Rd macros \packageAuthor and \packageMaintainer now
    process Authors@R, fixing NA results when the package DESCRIPTION
    omits Author and Maintainer fields.
  * Formatting and printing complex numbers could give things like
    0.1683-0i because of rounding error: -0i is now replaced by +0i.
  * postscript() refused to accept a title comment containing the
    letter "W" (PR#18599).
  * isoreg(c(1,Inf)) signals an error instead of segfaulting, fixing
    PR#18603.
  * tiff(type = "Xlib") was only outputting the last page of
    multi-page plots.
  * tools::latexToUtf8() again knows about \~{n} and other letters
    with tilde, fixing a regression in R 4.3.0, and about \^{i} as an
    alternative to \^{\i} (similarly with other accents).
    Furthermore, LaTeX codes for accented I letters are now correctly
    converted, also fixing related mistakes in
    tools::encoded_text_to_latex().
  * tar(*, tar = "internal") no longer creates out-of-spec tar files
    in the very rare case of user or group names longer than 32
    bytes, fixing PR#17871 with thanks to Ivan Krylov.
  * When using the "internal" timezone datetime code, adding a
    fraction of a second no longer adds one second, fixing PR#16856
    from a patch by Ivan Krylov.
  * tools::checkRd() no longer produces spurious notes about
    "unnecessary braces" from multi-line Rd results of \Sexpr macros.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1709208000">- CHANGES IN R 4.3.3:
  NEW FEATURES:
  * iconv() now fixes up variant encoding names such as "utf8"
    case-insensitively.
  DEPRECATED AND DEFUNCT:
  * The legacy encoding = "MacRoman" is deprecated in pdf() and
    postscript(): support was incomplete in earlier versions of R.
  BUG FIXES:
  * Arguments are now properly forwarded to methods on S4 generics
    with ... in the middle of their formal arguments. This was broken
    for the case when a method introduced an argument but did not
    include ... in its own formals. Thanks to Herv'e Pag`es for the
    report PR#18538.
  * Some invalid file arguments to pictex(), postscript() and xfig()
    opened a file called NA rather than throw an error.  These
    included postscript(NULL) (which some people expected to work
    like pdf(NULL)).
  * Passing filename = NA to svg(), cairo_pdf(), cairo_ps() or the
    Cairo-based bitmap devices opened a file called NA: it now throws
    an error.
  * quartz(file = NA) opened a file called NA, including when used as
    a Quartz-based bitmap device.  It now gives an error.
  * rank(&lt;long vector&gt;) now works, fixing PR#18617, thanks to Ilia
    Kats.
  * seq.int() did not adequately check its length.out argument.
  * match(&lt;POSIXct&gt;, .) is correct again for differing time zones,
    ditto for "POSIXlt", fixing PR#18618 reported by Bastian Klein.
  * drop.terms(*, dropx = &lt;0-length&gt;) now works, fixing PR#18563 as
    proposed by Mikael Jagan.
  * drop.terms(*) keeps + offset(.) terms when it should, PR#18565,
    and drop.terms() no longer makes up a response, PR#18566, fixing
    both bugs thanks to Mikael Jagan.
  * getS3method("t", "test") no longer finds the t.test() function,
    fixing PR#18627.
  * pdf() and postscript() support for the documented Adobe encodings
    "Greek" and "Cyrilllic" was missing (although the corresponding
    Windows' codepages could be used).
  * Computations of glyph metric information for pdf() and
    postscript() did not take into account that transliteration could
    replace one character by two or more (only seen on macOS 14) and
    typically warned that the information was not known.
  * rank(x) no longer overflows during integer addition, when
    computing rank average for largish but not-yet long vector x,
    fixing PR#18630, thanks to Ilia Kats.
  * list.files() on Windows now returns also files with names longer
    that 260 bytes (the Windows limit is 260 characters).
    Previously, some file names particularly with 'East Asian'
    characters were omitted.
  * cov2cor(&lt;0 x 0&gt;) now works, fixing PR#18423 thanks to Mikael
    Jagan and Elin Waring.
  * cov2cor(&lt;negative diagonal&gt;) and similar now give one warning
    instead of two, with better wording, fixing PR#18424 thanks to
    Mikael Jagan.
  * tools:: startDynamicHelp() now ensures port is in proper range,
    fixing PR#18645.
  * pbeta(x, a,b) is correct now for x=0 or 1 in the boundary cases
    where a or b or both are 0, fixing PR#18672 thanks to Michael
    Fay.
  * pmatch(x, table) for large table, also called for data frame row
    selection, dfrm[nm, ], is now interruptible, fixing PR#18656.
  * predict(&lt;rank-deficient lm&gt;, newdata=*) fix computing of nbasis,
    see Russ Lenth's comment 29 in PR#16158.
  * Added a work-around for a bug in macOS 14.3.1 and higher which
    prevents R plots in the Quartz Cocoa device from updating on
    screen.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1713960000">- CHANGES IN R 4.4.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Startup banners, R --version, sessionInfo() and R CMD check no
    longer report (64-bit) as part of the platform as this is almost
    universal - the increasingly rare 32-bit platforms will still
    report (32-bit).
    On Windows, ditto for window titles.
  * is.atomic(NULL) now returns FALSE, as NULL is not an atomic
    vector.  Strict back-compatibility would replace is.atomic(foo)
    by (is.null(foo) || is.atomic(foo)) but should happen only
    sparingly.
  NEW FEATURES:
  * The confint() methods for "glm" and "nls" objects have been
    copied to the stats package.  Previously, they were stubs which
    called versions in package MASS. The MASS namespace is no longer
    loaded if you invoke (say) confint(glmfit).  Further, the "glm"
    method for profile() and the plot() and pairs() methods for class
    "profile" have been copied from MASS to stats.  (profile.nls()
    and plot.profile.nls() were already in stats.)
  * The confint() and profile methods for "glm" objects have gained a
    possibility to do profiling based on the Rao Score statistic in
    addition to the default Likelihood Ratio. This is controlled by a
    new test = argument.
  * The pairs() method for "profile" objects has been extended with a
    which = argument to allow plotting only a subset of the
    parameters.
  * The "glm" method for anova() computes test statistics and
    p-values by default, using a chi-squared test or an F test
    depending on whether the dispersion is fixed or free.  Test
    statistics can be suppressed by giving argument test a false
    logical value.
  * In setRepositories() the repositories can be set using their
    names via name = instead of index ind =.
  * methods() and .S3methods() gain a all.names option for the (rare)
    case where functions starting with a . should be included.
  * Serializations can now be interrupted (e.g., by Ctrl-C on a
    Unix-alike) if they take too long, e.g., from save.image(),
    thanks to suggestions by Ivan Krylov and others on R-devel.
  * New startup option --max-connections to set the maximum number of
    simultaneous connections for the session.  Defaults to 128 as
    before: allowed values up to 4096 (but resource limits may in
    practice restrict to smaller values).
  * R on Windows (since Windows 10 2004) now uses the new Segment
    Heap allocator. This may improve performance of some
    memory-intensive applications.
  * When R packages are built, typically by R CMD build &lt;pkg&gt;, the
    new --user=&lt;build_user&gt; option overrides the (internally
    determined) user name, currently Sys.info()["user"] or LOGNAME.
    This is a (modified) fulfillment of Will Landau's suggestion in
    PR#17530.
  * tools::testInstalledBasic() gets new optional arguments outDir
    and testSrcdir, e.g., allowing to use it in a &lt;builddir&gt; !=
    &lt;srcdir&gt; setup, and in standard "binary" Windows installation
  * if* a source tests/ folder is present.
  * range(&lt;DT_with_Inf&gt;, finite = TRUE) now work for objects of class
    "Date", "POSIXct", and "POSIXlt" with infinite entries,
    analogously to range.default(), as proposed by Davis Vaughan on
    R-devel.  Other range()-methods can make use of new function
    .rangeNum().
  * New .internalGenerics object complementing .S3PrimitiveGenerics,
    for documentation and low-level book-keeping.
  * grid() now invisibly returns the x- and y- coordinates at which
    the grid-lines were drawn.
  * norm(., type) now also works for complex matrices.
  * kappa(., exact = TRUE, norm = *) now works for all norms and also
    for complex matrices.  In symmetric / triangular cases, the new
    argument uplo = "U" | "L" allows the upper or lower triangular
    part to be specified.
  * memDecompress(type = "unknown") recognizes compression in the
    default 'zlib' format as used by memCompress(type = "gzip").
  * memCompress() and memDecompress() will use the libdeflate library
    (&lt;https://github.com/ebiggers/libdeflate&gt;) if installed.  This
    uses the same type of compression for type = "gzip" but is 1.5-2x
    faster than the system libz library on some common platforms: the
    speed-up may depend on the library version.
  * diff() for objects of class "Date", "POSIXct", and "POSIXlt"
    accepts a units argument passed via ....
  * Dynamic help now does a much better job of rendering package
    DESCRIPTION metadata.
  * Rprof() gains an event argument and support for elapsed (real)
    time profiling on Unix (PR#18076).
  * filled.contour() gains a key.border argument.
  * tools::update_pkg_po() gets arguments pot_make and mo_make for
    _not_ re-making the corresponding files, and additionally a
    verbose argument.
  * Hexadecimal string colour specifications are now accepted in
    short form, so, for example, we can use "#123", which is
    equivalent to "#112233".
    Thanks to MikeFC for the original idea and Ella Kaye, Malcolm
    Barrett, George Stagg, and Hanne Oberman for the patch.
  * Plain-text help shows \var markup by angle brackets.
  * The new experimental primitive function declare() is intended to
    eventually allow information about R code to be communicated to
    the interpreter, compiler, and code analysis tools. The syntax
    for declarations is still being developed.
  * Functions psmirnov(), qsmirnov() and rsmirnov() in package stats
    have had argument two.sided renamed to alternative, to take into
    account that the permutation distributions of the one-sided
    statistics can be different in the case of ties.  Consequence of
    PR#18582.
  * sort() is now an implicit S4 generic in methods.
  * Formatting and printing, format(z), print(z), of complex vectors
    z no longer zap relatively small real or imaginary parts to zero,
    fixing PR#16752.  This is an API change, as it was documented
    previously to round real and imaginary parts together on purpose,
    producing nicer looking output.  As mentioned, e.g. in the PR,
    this change is compatible with many other "R-like" programming
    environments.
    We have simplified the internal code and now basically format the
    real and imaginary parts independently of each other.
  * New experimental functions Tailcall() and Exec() to support
    writing stack-space-efficient recursive functions.
  * Where characters are attempted to be plotted by pdf(),
    postscript() and xfig() which are not in the selected 8-bit
    character set (most often Latin-1) and the R session is using a
    UTF-8 locale, the warning messages will show the UTF-8 character
    rather than its bytes and one dot will be substituted per
    character rather than per byte.  (Platforms whose iconv() does
    transliteration silently plot the transliteration.)
    In a UTF-8 locale some transliterations are now done with a
    warning (e.g., dashes and Unicode minus to hyphen, ligatures are
    expanded, permille (‰) is replaced by o/oo), although the OS may
    have got there first.  These are warnings as they will continue
    to be replaced by dots in earlier versions of R.
  * The matrix multiplication functions crossprod() and tcrossprod()
    are now also primitive and S3 generic, as %*% had become in R
    4.3.0.
  * source() and example() have a new optional argument catch.aborts
    which allows continued evaluation of the R code after an error.
  * The non-Quartz tiff() devices allow additional types of
    compression if supported by the platform's libtiff library.
  * The list of base and recommended package names is now provided by
    tools::standard_package_names().
  * cairo_pdf() and cairo_ps() default to onefile = TRUE to closer
    match pdf() and postscript().
  * New option catch.script.errors provides a documented way to catch
    errors and then continue in non-interactive use.
  * L %||% R newly in base is an expressive idiom for the phrases
    if(!is.null(L)) L else R or if(is.null(L)) R else L.
  * The return value from warnings() now always inherits from
    "warnings" as documented, now also in the case of no warnings
    where it previously returned NULL.
  * as.complex("1i") now returns 0 + 1i instead of NA with a warning.
  * z &lt;- c(NA, 1i) now keeps the imaginary part Im(z[1]) == 0, no
    longer coercing to NA_complex_.  Similarly, cumsum(z) correctly
    sums real and imaginary parts separately, i.e., without
    "crosstalk" in case of NAs.
  * On Alpine Linux iconv() now maps "latin2", "latin-2", "latin9"
    and "latin-9" to encoding names the OS knows about
    (case-insensitively).
  * iconv(sub = "Unicode") now always zero-pads to four (hex) digits,
    rather than to 4 or 8.  (This seems to have become the convention
    once Unicode restricted the number of Unicode points to 2^21 - 1
    and so will never need more than 6 digits.)
  * NCOL(NULL) now returns 0 instead of 1, for consistency with
    cbind().
  * The information for the Euro glyph missing from the Adobe .afm
    files for the Courier, Helvetica and Times families has been
    copied from their URW equivalents - this will improve vertical
    centring in the pdf() and postscript() devices.
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.12.0.  The changes are almost entirely cosmetic.
  * The included LAPACK sources have been updated to version 3.12.0
    and some further double-complex routines added.
  * There are new font families for the 2014--5 URW 2.0 fonts (see
    ?pdf) which are included in recent versions of Ghostscript.
    These have font widths for most Greek glyphs and a few others
    which were missing from the original versions (whose font
    families remain available for reproducibility, although
    Ghostscript-based viewers will render using the 2.0 versions).
  * Improve the large-n efficiency of as.matrix(&lt;dist&gt;), thanks an R
    contributors effort, notably by Tim Taylor and Heather Turner,
    see PR#18660.
  * The default and numeric methods of all.equal() get a check.class
    option.
  * zapsmall() gets new optional arguments, function mFUN and min.d,
    for extra flexibility; fulfills a wish in PR#18199.  Also, it is
    now an implicit S4 generic in package methods.
  * The Rd filter for aspell() gains an ignore argument.
  * New generic function sort_by(), primarily useful for the
    data.frame method which can be used to sort rows of a data frame
    by one or more columns.
  * The icence headers for the RPC code in src/extra/xdr have been
    updated to use the GPL-compatible licence published by Oracle
    America in 2010.
  * New function pkg2HTML() in tools to create single-page HTML
    reference manuals for R packages.
  * The byte code evaluator now uses less C stack space for recursive
    calls to byte-compiled functions. It also makes more of an effort
    to avoid allocations for scalar return values.
  * New completion option backtick (disabled by default) allows
    non-syntactic completions to be wrapped in backquotes. This is
    currently only useful for Jupyter notebooks via the IRkernel
    package, and may cause problems for other backends.
  INSTALLATION:
  * The parser has been updated to work with bison 3.8.2, which is
    now used for the pre-generated parsers in gram.c, file.c, and
    gramRd.c. A few parser error messages have changed, which may
    affect code that relies on exact messages.
  INSTALLATION on a UNIX-ALIKE:
  * System valgrind headers are now required to use configure option
  - -with-valgrind-instrumentation with value 1 or 2.
  * configure will warn if it encounters a 32-bit build, as that is
    nowadays almost untested.
  * Environment variable R_SYSTEM_ABI is no longer used and so no
    longer recorded in etc/Renviron (it was not on Windows and was
    only ever used when preparing package tools).
  * If the libdeflate library and headers are available, libdeflate
    rather than libz is used to (de)compress R objects in lazy-load
    databases.  Typically tasks spend up to 5% of their time on such
    operations, although creating lazy-data databases is one of the
    exceptions.
    This can be suppressed if the library is available by the
    configure option --without-libdeflate-compression.
  * configure option --enable-lto=check has not worked reliably since
    2019 and has been removed.
  * The minimum autoconf requirement for a maintainer build has been
    increased to autoconf 2.71.
    It is intended to increase this to 2.72 for R 4.5.0: the
    distributed configure file was generated using 2.72.
  * The minimum version requirement for an external LAPACK has been
    reduced to 3.9.0.
  * No default C++ compiler is set if no C++17 compiler is detected:
    there is no longer an automatic fallback to C++14 or C++11.
    Compilers from the last five years should have sufficient
    support: for others macros CXX and CXXSTD can be set in file
    config.site to provide a fallback if needed.
    The Objective-C++ compiler now by default uses the standard
    selected by R for C++ (currently C++17) rather than the default
    standard for the C++ compiler (which on macOS is still C++98).
  INSTALLATION on macOS:
  * A new configure option --with-newAccelerate makes use of Apple's
    'new' BLAS / LAPACK interfaces in their Accelerate framework.
    Those interfaces are only available in macOS 13.3 or later, and
    building requires SDK 13.3 or later (from the Command Line Tools
    or Xcode 14.3 or later).
    By default the option uses new Accelerate for BLAS calls: to also
    use it for LAPACK use option --with-newAccelerate=lapack.  The
    later interfaces provide LAPACK 3.9.1 rather than 3.2.1: 3.9.1 is
    from 2021-04 and does not include the improved algorithms
    introduced in LAPACK 3.10.0 (including for BLAS calls).
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools44, an update of the Rtools43 toolchain.  It is
    based on GCC 13 and newer versions of MinGW-W64, binutils and
    libraries (targeting 64-bit Intel CPUs).  R-devel can no longer
    be built using Rtools43 without changes.
  * Rtools44 has experimental support for 64-bit ARM (aarch64) CPUs
    _via_ the LLVM 17 toolchain using lld, clang/flang-new and
    libc++.
  UTILITIES:
  * R CMD check notes when S4-style exports are used without
    declaring a strong dependence on package methods.
  * tools::checkRd() (used by R CMD check) detects more problems with
    \Sexpr-based dynamic content, including bad nesting of \Sexprs
    and invalid arguments.
  * tools::checkRd() now reports Rd titles and section names ending
    in a period; this is ignored by R CMD check unless environment
    variable _R_CHECK_RD_CHECKRD_MINLEVEL_ is set to -5 or smaller.
  * R CMD check now notes Rd files without an \alias, as long
    documented in 'Writing R Extensions' §1.3.1.  The check for a
    missing \description has been moved from tools::checkRd() to
    tools::checkRdContents().
  * R CMD check now visits inst/NEWS.Rd and OS-specific man
    subdirectories when checking Rd files.
  * tools::checkDocFiles() and tools::checkRdContents() now also
    check internal Rd files by default, but "specially" (ignoring
    missing documentation of arguments).
  * R CMD Rdiff gets option --useEx.
  * R CMD check now warns on non-portable uses of Fortran KIND such
    as INTEGER(KIND=4) and REAL(KIND=8).
    To see the failing lines set environment variable
    _R_CHECK_FORTRAN_KIND_DETAILS_ to a true value.
  * When checking Rd files, R CMD check now notes some of the "lost
    braces" that tools::checkRd() finds.  Typical problems are Rd
    macros missing the initial backslash (e.g., code{...}), in-text
    set notation (e.g., {1, 2}, where the braces need escaping), and
    \itemize lists with \describe-style entries of the form
    \item{label}{description}.
  * R CMD INSTALL (and hence check) will compile C++ code with
  - DR_NO_REMAP if environment variable _R_CXX_USE_NO_REMAP_ is set
    to a true value.  It is planned that this will in future become
    the default for compiling C++.
  * The new built-in Rd macro \dontdiff{} can be used to mark example
    code whose output should be ignored when comparing check output
    to reference output (tests/Examples/&lt;pkg&gt;-Ex.Rout.save).  The
    \dontdiff tag, like \donttest, is _not_ shown on the rendered
    help page, so provides a clean alternative to ##
    IGNORE_RDIFF_(BEGIN|END) comments.
  * R CMD build when there is no NAMESPACE, now uses the recommended
    exportPattern("^[^.]"), instead of exporting everything.
  * R CMD check now warns about non-ASCII characters in the NAMESPACE
    file (in addition to R files). Such packages are not portable and
    may fail to install on some platforms.
  C-LEVEL FACILITIES:
  * Headers R_ext/Applic.h and R-ext/Linpack.h used to include
    R_ext/BLAS.h although this was undocumented and unneeded by their
    documented entry points.  They no longer do so.
  * New function R_missing(), factored out from do_missing(), used to
    fix PR#18579.
  * SEXP type S4SXP has been renamed to OBJSXP to support
    experimenting with alternative object systems.  The S4SXP value
    can still be used in C code but is now deprecated.  Based on
    contributions from the R Consortium's Object-Oriented Programming
    Working Group.
  * New function pow1p(x,y) for accurate (1+x)^y.
  * mkCharLenCE was incorrectly documented to take a size_t length
    but was implemented with int (and character strings in R are
    limited to 2^31 - 1 bytes).
  DEPRECATED AND DEFUNCT:
  * data() no longer handles zipped data from long-defunct (since R
    2.13.0) --use-zip-data installations.
  * The legacy graphics devices pictex() and xfig() are now
    deprecated.  They do not support recent graphics enhancements and
    their font handling is rudimentary. The intention is to retain
    them for historical interest as long as they remain somewhat
    functional.
  * Support for encoding = "MacRoman" has been removed from the pdf()
    and postscript() devices - this was a legacy encoding supporting
    classic macOS up to 2001 and no longer has universal libiconv
    support.
  * is.R() is deprecated as no other S dialect is known to be in use
    (and this could only identify historical dialects, not future
    ones).
    Further information on calls can be obtained by setting the
    environment variable _R_DEPRECATED_IS_R_ to error which turns the
    deprecation warning into an error and so by default gives a
    traceback.  (This is done by R CMD check --as-cran.)
  * UseMethod() no longer forwards local variables assigned in the
    generic function into method call environments before evaluating
    the method body. This makes method calls behave more like
    standard function calls and makes method code easier to analyze
    correctly.
  * The twelve as.data.frame.&lt;class&gt;() methods which were deprecated
    only via _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ and in R CMD
    check --as-cran are formally deprecated now in favour of calling
    as.data.frame() or as.data.frame.vector().  The deprecation
    "check" now works also when as.data.frame() is S4 generic thanks
    to Ivan Krylov.
  * The default method for the directional comparison operators &lt;, &gt;,
    &lt;=, and &gt;= now signals an error when one of the operands is a
    language object, i.e. a symbol or a call.
  * For terms.formula(), deprecate abb and neg.out arguments
    _formally_ in addition to just documenting it.
  BUG FIXES:
  * The methods package is more robust to not being attached to the
    search path.  More work needs to be done.
  * pairwise.t.test() misbehaved when subgroups had 0 DF for
    variance, even with pool.sd = TRUE.  (PR#18594 by Jack Berry).
  * Probability distribution functions [dpq]&lt;distrib&gt;(x, *), but also
    bessel[IKJY](x, .) now consistently preserve attributes(x) when
    length(x) == 0, e.g., for a 2 x 0 matrix, thanks to Karolis
    Koncevičius' report PR#18509.
  * Group "Summary" computations such as sum(1:3, 4, na.rm = 5, NA,
    7, na.rm = LL) now give an error instead of either 17 or NN for
    LL true or false, as proposed by Ivan Krylov on the R-devel
    mailing list.  (This also means it is now an error to specify
    na.rm more than once.)
  * as.complex(x) now returns complex(real = x, imaginary = 0) for
    _all_ numerical and logical x, notably also for NA or
    NA_integer_.
  * Directories are now omitted by file.copy(, recursive = FALSE) and
    in file.append() (PR#17337).
  * gsub() and sub() are now more robust to integer overflow when
    reporting errors caused by too large input strings (PR#18346).
  * Top-level handlers are now more robust to attempts to remove a
    handler whilst handlers are running (PR#18508).
  * The handling of Alt+F4 in dialogs created on Windows using
    GraphApp has been fixed (PR#13870).
  * density() more consistently computes grid values for the
    FFT-based convolution, following Robert Schlicht's analysis and
    proposal in PR#18337, correcting density values typically by a
    factor of about 0.999.  Argument old.coords = TRUE provides back
    compatibility.
  * palette.colors() gains a name argument that defaults to FALSE
    controlling whether the vector of colours that is returned has
    names (where possible).  PR#18529.
  * tools::xgettext() no longer extracts the (non-translatable) class
    names from warningCondition and errorCondition calls.
  * S3method(&lt;gen&gt;, &lt;class&gt;, &lt;func&gt;) in the NAMESPACE file now works
    (again) when &lt;func&gt; is visible from the namespace, e.g.,
    imported, or in base.
  * getParseData(f) now also works for a function defined in the
    first of several &lt;pkg&gt;/R/*.R source files, thanks to Kirill
    Müller's report and Duncan Murdoch's patch in PR#16756.
  * Rd \Sexpr macros with nested #ifdef conditionals were not
    processed.
  * A non-blocking connection with non-default encoding (such as a
    socket) now correctly returns from readLines() after new data has
    arrived also when its EOF had been reached previously.  Thanks to
    Peter Meilstrup's report on R-devel and Ivan Krylov's report and
    patch proposal in PR#18555.
  * tools::checkRdContents() failed to detect empty argument
    descriptions when they spanned multiple lines, including those
    generated by prompt().  These cases are now noted by R CMD check.
  * Plain-text help no longer outputs spurious colons in the
    arguments list (for multi-line \item labels in the Rd source).
  * kappa() and rcond() work correctly in more cases; kappa(., norm =
    "2") now warns that it computes the 1-norm with (default) exact =
    FALSE; prompted by Mikael Jagan's quite comprehensive PR#18543.
  * Rd skeletons generated by prompt() or promptData() now use a
    dummy title (so R CMD build works).  tools::checkRdContents() has
    been updated to detect such template leftovers, including from
    promptPackage().
  * When S4 method dispatch fails because no method was found, the
    error message now includes the signature argument names; thanks
    to Michael Chirico's proposal on the R-devel list.
  * withAutoprint({ .. }) now preserves srcrefs previously lost,
    thanks to Andrew Simmons' report plus fix in PR#18572.
  * transform.data.frame() no longer adjusts names; in particular,
    untransformed variables are kept as-is, including those with
    syntactically invalid names (PR#17890).
  * The keep.source option for Rd \Sexpr blocks is no longer ignored.
  * The formula methods for t.test() and wilcox.test() now catch when
    paired is passed, addressing PR#14359; use Pair(x1, x2) ~ 1 for a
    paired test.
  * The level reported in the browser prompt was often too large. It
    now shows the number of browser contexts on the stack.
  * For cbind() and rbind(), the optional deparse.level argument is
    now properly passed to methods, thanks to Mikael Jagan's PR#18579
    and comments there.
  * Some error and warning messages for large ('long vector')
    matrix(v, nr, nc) and dim(m) &lt;- d are now correct about sizes,
    using long long formatting, fixing PR#18612 (and more) reported
    by Mikael Jagan.
  * readChar(useBytes = TRUE) now terminates strings even when the
    underlying connection uses extra spaces in the input buffer.
    This fixes problems with extra garbage seen with gzip
    connections, PR#18605.
  * Named capture in PCRE regular expressions now works also with
    more than 127 named groups (PR#18588).
  * Datetime functions are now robust against long jumps when dealing
    with internal time zone changes.  This avoids confusing warnings
    about an invalid time zone, previously triggered by turning
    warnings into errors or handling them via tryCatch (PR#17966,
    PR#17780).
  * Datetime functions now restore even an empty TZ environment
    variable after internal time zone changes (PR#17724).  This makes
    results of datetime functions with this (typically unintentional)
    setting more predictable.
  * drop.terms(*) now drops response as by default, keep.response =
    FALSE, fixing PR#18564 thanks to Mikael Jagan.
  * dummy.coef(.) now also works for lm()-models with character
    categorical predictor variables rather than factor ones, fixing
    PR#18635 reported by Jinsong Zhao.
  * formals(f) &lt;- formals(f) now also works for a function w/o
    arguments and atomic _constant_ body(f).
  * Correct as.function(&lt;invalid list&gt;, .)'s error message.
  * removeSource() is yet more thorough in finding and removing
    "srcref" and the other source references from parsed R language
    chunks, fixing PR#18638 thanks to Andrew Simmons.
  * dgeom() is more accurate now, notably when its result is very
    small, fixing PR#18642 thanks to the proposal of Morten Welinder,
    also improving other instances where C level binom_raw(x, n, ..)
    has x == 0 or x== n.
  * warning() with options(warn = 1) has improved output for
    multi-line messages.
  * axis.Date() and axis.POSIXct() now respect the par("lab") setting
    for the number of pretty() intervals.
  * Comparisons for language objects (which are based on deparsing)
    are now more careful about using accurate deparsed results
    (PR#18676).
  * Plain-text help (Rd2txt) now correctly preserves blank lines
    following single-line \dontrun code.
  * &lt;POSIXlt&gt;[*] no longer sets wrong "balanced" attribute, fixing
    PR#18681 thanks to Mikael Jagan.
  * str(&lt;classed-call&gt;) now deparses the call as expected, fixing
    PR#18684, reported by Dave Slager.
  * In Rd examples, code following the closing brace of a \dontrun,
    \dontshow or \donttest tag on the same line is no longer skipped
    when R CMD check runs the examples.
  * as.data.frame(matrix(*, ncol=0)) now gets valid names() and
    colnames(); reported by Davis Vaughan on the R-devel list.
  * Internal Mathlib function stirlerr(n) is now almost fully
    (52-bit) accurate for all n &gt;= ~5.9 and more accurate also in the
    range 1 -- 5.9.  This entails small ("after 12th decimal")
    changes in density functions, e.g., dgamma() in _some_ regions of
    their support.  The fix was partly prompted by Morten Welinder's
    PR#18640.
  * Numbers like 9876543.2 are now considered non-integer by Mathlib
    internal R_nonint(), amending original fix of PR#15734.
  * Rd comment lines no longer cause broken paragraphs in the
    rendered PDF and plain-text help. In code blocks, pure comment
    lines (starting with %) no longer produce an empty line.
  * xtabs(Freq ~ .) now consistently defaults to na.action = na.pass,
    using na.rm = FALSE (added as an argument) when summing over Freq
    (PR#17770).
  * tools::testInstalledPackage() is no longer silent about failures
    from running examples or tests and its return code no longer
    ignores failures from checking vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1718366400">- CHANGES IN R 4.4.1:
  C-LEVEL FACILITIES:
  * Functions R_atof and R_strtod declared in header R_ext/Utils.h
    are now documented in 'Writing R Extensions' and so formally part
    of the API.
  * The non-API entry points Rf_setSVector, Rf_StringFalse,
    Rf_StringTrue and Rf_isBlankString have been added to those
    reported by R CMD check.
  * The new function Rf_allocLang is now available. This provides an
    alternative to the idiom of calling Rf_allocList followed by
    SET_TYPEOF.
  UTILITIES:
  * R CMD check now reports as warnings what gfortran calls 'Fortran
    2018 deleted features', all of which have long been marked as
    'obsolescent' and some of which were deleted in Fortran 2008 or
    earlier.  Fortran compilers are no longer required to support
    these.
  BUG FIXES:
  * as.numeric(), scan(), type.convert() and other places which use
    the internal C function R_strtod now require a _non-empty_ digit
    sequence in a decimal or binary exponent.  This aligns with the
    C/POSIX standard for strtod and with ?NumericConstants.
  * as.data.frame(m, make.names=NA) now works correctly for a matrix
    m with NA's in row names.
  * The error message from &lt;POSIXlt&gt;[["hour"]] and similar now
    mentions *[[, "hour"]], as wished for in PR#17409 and proposed by
    Michael Chirico.
  * qbinom() and potentially qpois(), qnbinom(), no longer sometimes
    fail accurate inversion (of pbinom(), etc), thanks to Christopher
    Chang's report and patch in PR#18711.
  * The internal help server on Windows can again serve requests sent
    in quick succession, fixing a regression in R 4.4.0.
  * debugcall(&lt;S3Generic&gt;()) now also works when a corresponding
    S4-generic version is in the methods cache (PR#18143).
  * Package tools' toTitleCase(ch0) now returns character(0) when ch0
    is of zero length; fixing PR#18724, reported by David Hugh Jones.
  * R CMD check is no longer broken (without a check result and no
    explanation in 00check.log) for a package which declares an
    invalid VignetteBuilder in DESCRIPTION but has no vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1730376000">- CHANGES IN R 4.4.2:
  C-LEVEL FACILITIES:
  * The S-compatibility macros F77_COM and F77_COMDECL defined in
    header R_ext/RS.h are deprecated and will be removed shortly.  We
    could find no record of their use.
  BUG FIXES:
  * Mathlib function lgammacor(x) no longer warns about underflow to
    zero for large x.
  * Text widths and heights were incorrectly reported by the Quartz
    device if the drawing context didn't exist yet (typically when
    drawing off-screen to a window that is yet to appear, see
    PR#18591).
  * The Quartz device could segfault in cases where paths with spaces
    are used in the new glyph drawing API.  Thanks to Tomek
    Gieorgijewski (PR#18758).
  * On macOS in R CRAN builds, it is again possible to read
    little-endian UTF-16 text with a BOM from a connection using
    encoding="UTF-16".  Users building R from source should avoid
    using the system libiconv in macOS 14.1 and later.
  * methods' internal .requirePackage() now re-enables primitive
    method dispatch when needed; thanks to Ivan Krylov for
    demystifying CRAN package check failures on the R-devel mailing
    list.</changelog>
</package>
<package pkgid="39a72d7d5f4cbca4415fbe65c0d183cd7f551689c3d470f1a347f07ba589ac7e0380ac7889260680752b4571e1e775f25416a18cbcd40589da0ed3ed71f1368f" name="R-grid-debuginfo" arch="x86_64">
  <version epoch="0" ver="4.4.2" rel="51.0.2.2.sr20241103"/>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1620302400">- To get in sync with d:l:R:autoCRAN the Matrix package's split
  in -devel was reversed.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339200">- improved spec file according to comments of dimstar in
  https://build.opensuse.org/request/show/892685</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339201">- CHANGES IN R 4.1.0:
  FUTURE DIRECTIONS:
  * It is planned that the 4.1.x series will be the last to support
    32-bit Windows, with production of binary packages for that
    series continuing until early 2023.
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Data set esoph in package datasets now provides the correct
    numbers of controls; previously it had the numbers of cases added
    to these.  (Reported by Alexander Fowler in PR#17964.)
  NEW FEATURES:
  * www.omegahat.net is no longer one of the repositories known by
    default to setRepositories().  (Nowadays it only provides source
    packages and is often unavailable.)
  * Function package_dependencies() (in package tools) can now use
    different dependency types for direct and recursive dependencies.
  * The checking of the size of tarball in R CMD check --as-cran
    &lt;pkg&gt; may be tweaked via the new environment variable
    _R_CHECK_CRAN_INCOMING_TARBALL_THRESHOLD_, as suggested in
    PR#17777 by Jan Gorecki.
  * Using c() to combine a factor with other factors now gives a
    factor, an ordered factor when combining ordered factors with
    identical levels.
  * apply() gains a simplify argument to allow disabling of
    simplification of results.
  * The format() method for class "ftable" gets a new option justify.
    (Suggested by Thomas Soeiro.)
  * New ...names() utility.  (Proposed by Neal Fultz in PR#17705.)
  * type.convert() now warns when its as.is argument is not
    specified, as the help file always said it _should_.  In that
    case, the default is changed to TRUE in line with its change in
    read.table() (related to stringsAsFactor) in R 4.0.0.
  * When printing list arrays, classed objects are now shown _via_
    their format() value if this is a short enough character string,
    or by giving the first elements of their class vector and their
    length.
  * capabilities() gets new entry "Rprof" which is TRUE when R has
    been configured with the equivalent of --enable-R-profiling (as
    it is by default).  (Related to Michael Orlitzky's report
    PR#17836.)
  * str(xS4) now also shows extraneous attributes of an S4 object
    xS4.
  * Rudimentary support for vi-style tags in rtags() and R CMD rtags
    has been added.  (Based on a patch from Neal Fultz in PR#17214.)
  * checkRdContents() is now exported from tools; it and also
    checkDocFiles() have a new option chkInternal allowing to check
    Rd files marked with keyword "internal" as well.  The latter can
    be activated for R CMD check via environment variable
    _R_CHECK_RD_INTERNAL_TOO_.
  * New functions numToBits() and numToInts() extend the raw
    conversion utilities to (double precision) numeric.
  * Functions URLencode() and URLdecode() in package utils now work
    on vectors of URIs.  (Based on patch from Bob Rudis submitted
    with PR#17873.)
  * path.expand() can expand ~user on most Unix-alikes even when
    readline is not in use.  It tries harder to expand ~, for example
    should environment variable HOME be unset.
  * For HTML help (both dynamic and static), Rd file links to help
    pages in external packages are now treated as references to
    topics rather than file names, and fall back to a file link only
    if the topic is not found in the target package. The earlier rule
    which prioritized file names over topics can be restored by
    setting the environment variable _R_HELP_LINKS_TO_TOPICS_ to a
    false value.
  * c() now removes NULL arguments before dispatching to methods,
    thus simplifying the implementation of c() methods, _but_ for
    back compatibility keeps NULL when it is the first argument.
    (From a report and patch proposal by Lionel Henry in PR#17900.)
  * Vectorize()'s result function's environment no longer keeps
    unneeded objects.
  * Function ...elt() now propagates visibility consistently with
    ..n.  (Thanks to Lionel Henry's PR#17905.)
  * capture.output() no longer uses non-standard evaluation to
    evaluate its arguments.  This makes evaluation of functions like
    parent.frame() more consistent.  (Thanks to Lionel Henry's
    PR#17907.)
  * packBits(bits, type="double") now works as inverse of
    numToBits().  (Thanks to Bill Dunlap's proposal in PR#17914.)
  * curlGetHeaders() has two new arguments, timeout to specify the
    timeout for that call (overriding getOption("timeout")) and TLS
    to specify the minimum TLS protocol version to be used for
    https:// URIs (_inter alia_ providing a means to check for sites
    using deprecated TLS versions 1.0 and 1.1).
  * For nls(), an optional constant scaleOffset may be added to the
    denominator of the relative offset convergence test for cases
    where the fit of a model is expected to be exact, thanks to a
    proposal by John Nash.  nls(*, trace=TRUE) now also shows the
    convergence criterion.
  * Numeric differentiation _via_ numericDeriv() gets new optional
    arguments eps and central, the latter for taking central divided
    differences.  The latter can be activated for nls() via
    nls.control(nDcentral = TRUE).
  * nls() now passes the trace and control arguments to getInitial(),
    notably for all self-starting models, so these can also be fit in
    zero-noise situations via a scaleOffset.  For this reason, the
    initial function of a selfStart model must now have ... in its
    argument list.
  * bquote(splice = TRUE) can now splice expression vectors with
    attributes: this makes it possible to splice the result of
    parse(keep.source = TRUE).  (Report and patch provided by Lionel
    Henry in PR#17869.)
  * textConnection() gets an optional name argument.
  * get(), exists(), and get0() now signal an error if the first
    argument has length greater than 1.  Previously additional
    elements were silently ignored.  (Suggested by Antoine Fabri on
    R-devel.)
  * R now provides a shorthand notation for creating functions, e.g.
    \(x) x + 1 is parsed as function(x) x + 1.
  * R now provides a simple native forward pipe syntax |&gt;.  The
    simple form of the forward pipe inserts the left-hand side as the
    first argument in the right-hand side call.  The pipe
    implementation as a syntax transformation was motivated by
    suggestions from Jim Hester and Lionel Henry.
  * all.equal(f, g) for functions now by default also compares their
    environment(.)s, notably via new all.equal method for class
    function.  Comparison of nls() fits, e.g., may now need
    all.equal(m1, m2, check.environment = FALSE).
  * .libPaths() gets a new option include.site, allowing to _not_
    include the site library.  (Thanks to Dario Strbenac's suggestion
    and Gabe Becker's PR#18016.)
  * Lithuanian translations are now available.  (Thanks to Rimantas
    Zakauskas.)
  * names() now works for DOTSXP objects.  On the other hand, in
    R-lang, the R language manual, we now warn against relying on the
    structure or even existence of such dot-dot-dot objects.
  * all.equal() no longer gives an error on DOTSXP objects.
  * capabilities("cairo") now applies only to the file-based devices
    as it is now possible (if very unusual) to build R with Cairo
    support for those but not for X11().
  * There is optional support for tracing the progress of
    loadNamespace() - see its help.
  * (Not Windows.)  l10n_info() reports an additional element, the
    name of the encoding as reported by the OS (which may differ from
    the encoding part (if any) of the result from
    Sys.getlocale("LC_CTYPE").
  * New function gregexec() which generalizes regexec() to find _all_
    disjoint matches and well as all substrings corresponding to
    parenthesized subexpressions of the given regular expression.
    (Contributed by Brodie Gaslam.)
  * New function charClass() in package utils to query the
    wide-character classification functions in use (such as
    iswprint).
  * The names of quantile()'s result no longer depend on the global
    getOption("digits"), but quantile() gets a new optional argument
    digits = 7 instead.
  * grep(), sub(), regexp and variants work considerably faster for
    long factors with few levels.  (Thanks to Michael Chirico's
    PR#18063.)
  * Provide grouping of x11() graphics windows within a window
    manager such as Gnome or Unity; thanks to a patch by Ivan Krylov
    posted to R-devel.
  * The split() method for class data.frame now allows the f argument
    to be specified as a formula.
  * sprintf now warns on arguments unused by the format string.
  * New palettes "Rocket" and "Mako" for hcl.colors() (approximating
    palettes of the same name from the 'viridisLite' package).
    Contributed by Achim Zeileis.
  * The base environment and its namespace are now locked (so one can
    no longer add bindings to these or remove from these).
  * Rterm handling of multi-byte characters has been improved,
    allowing use of such characters when supported by the current
    locale.
  * Rterm now accepts ALT+ +xxxxxxxx sequences to enter Unicode
    characters as hex digits.
  * Environment variable LC_ALL on Windows now takes precedence over
    LC_CTYPE and variables for other supported categories, matching
    the POSIX behaviour.
  * duplicated() and anyDuplicated() are now optimized for integer
    and real vectors that are known to be sorted via the ALTREP
    framework. Contributed by Gabriel Becker via PR#17993.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 14
    and so packages that provide graphics devices should be
    reinstalled.
  * Graphics devices should now specify deviceVersion to indicate
    what version of the graphics engine they support.
  * Graphics devices can now specify deviceClip.  If TRUE, the
    graphics engine will never perform any clipping of output itself.
    The clipping that the graphics engine does perform (for both
    canClip = TRUE and canClip = FALSE) has been improved to avoid
    producing unnecessary artifacts in clipped output.
  * The grid package now allows gpar(fill) to be a linearGradient(),
    a radialGradient(), or a pattern().  The viewport(clip) can now
    also be a grob, which defines a clipping path, and there is a new
    viewport(mask) that can also be a grob, which defines a mask.
    These new features are only supported so far on the Cairo-based
    graphics devices and on the pdf() device.
  * (Not Windows.)  A warning is given when a Cairo-based type is
    specified for a png(), jpeg(), tiff() or bmp() device but Cairo
    is unsupported (so type = "Xlib" is tried instead).
  * grSoftVersion() now reports the versions of FreeType and
    FontConfig if they are used directly (not _via_ Pango), as is
    most commonly done on macOS.
  C-LEVEL FACILITIES:
  * The _standalone_ libRmath math library and R's C API now provide
    log1pexp() again as documented, and gain log1mexp().
  INSTALLATION on a UNIX-ALIKE:
  * configure checks for a program pkgconf if program pkg-config is
    not found.  These are now only looked for on the path (like
    almost all other programs) so if needed specify a full path to
    the command in PKG_CONFIG, for example in file config.site.
  * C99 function iswblank is required - it was last seen missing ca
    2003 so the workaround has been removed.
  * There are new configure options --with-internal-iswxxxxx,
  - -with-internal-towlower and --with-internal-wcwidth which allows
    the system functions for wide-character classification,
    case-switching and width (wcwidth and wcswidth) to be replaced by
    internal ones.  The first has long been used on macOS, AIX (and
    Windows) but this enables it to be unselected there and selected
    for other platforms (it is the new default on Solaris).  The
    second is new in this version of R and is selected by default on
    macOS and Solaris.  The third has long been the default and
    remains so as it contains customizations for East Asian
    languages.
    System versions of these functions are often minimally
    implemented (sometimes only for ASCII characters) and may not
    cover the full range of Unicode points: for example Solaris (and
    Windows) only cover the Basic Multilingual Plane.
  * Cairo installations without X11 are more likely to be detected by
    configure, when the file-based Cairo graphics devices will be
    available but not X11(type = "cairo").
  * There is a new configure option --with-static-cairo which is the
    default on macOS.  This should be used when only static cairo
    (and where relevant, Pango) libraries are available.
  * Cairo-based graphics devices on platforms without Pango but with
    FreeType/FontConfig will make use of the latter for font
    selection.
  LINK-TIME OPTIMIZATION on a UNIX-ALIKE:
  * Configuring with flag --enable-lto=R now also uses LTO when
    installing the recommended packages.
  * R CMD INSTALL and R CMD SHLIB have a new flag --use-LTO to use
    LTO when compiling code, for use with R configured with
  - -enable-lto=R.  For R configured with --enable-lto, they have
    the new flag --no-use-LTO.
    Packages can opt in or out of LTO compilation _via_ a UseLTO
    field in the DESCRIPTION file.  (As usual this can be overridden
    by the command-line flags.)
  BUILDING R on Windows:
  * for GCC &gt;= 8, FC_LEN_T is defined in config.h and hence character
    lengths are passed from C to Fortran in _inter alia_ BLAS and
    LAPACK calls.
  * There is a new text file src/gnuwin32/README.compilation, which
    outlines how C/Fortran code compilation is organized and
    documents new features:
  * R can be built with Link-Time Optimization with a suitable
    compiler - doing so with GCC 9.2 showed several
    inconsistencies which have been corrected.
  * There is support for cross-compiling the C and Fortran code
    in R and standard packages on suitable (Linux) platforms.
    This is mainly intended to allow developers to test later
    versions of compilers - for example using GCC 9.2 or 10.x has
    detected issues that GCC 8.3 in Rtools40 does not.
  * There is experimental support for cross-building R packages
    with C, C++ and/or Fortran code.
  * The R installer can now be optionally built to support a single
    architecture (only 64-bit or only 32-bit).
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++14 where
    available (which it is on all currently checked platforms): if
    not (as before) C++11 is used if available otherwise C++ is not
    supported.
    Packages which specify C++11 will still be installed using C++11.
    C++14 compilers may give deprecation warnings, most often for
    std::random_shuffle (deprecated in C++14 and removed in C++17).
    Either specify C++11 (see 'Writing R Extensions') or modernize
    the code and if needed specify C++14.  The latter has been
    supported since R 3.4.0 so the package's DESCRIPTION would need
    to include something like
    Depends: R (&gt;= 3.4)
  PACKAGE INSTALLATION on Windows:
  * R CMD INSTALL and R CMD SHLIB make use of their flag --use-LTO
    when the LTO_OPT make macro is set in file etc/${R_ARCH}/Makeconf
    or in a personal/site Makevars file.  (For details see 'Writing R
    Extensions' SS4.5.)
    This provides a valuable check on code consistency.  It does work
    with GCC 8.3 as in Rtools40, but that does not detect everything
    the CRAN checks with current GCC do.
  PACKAGE INSTALLATION on macOS:
  * The default personal library directory on builds with
  - -enable-aqua (including CRAN builds) now differs by CPU type,
    one of
    ~/Library/R/x86_64/x.y/library
    ~/Library/R/arm64/x.y/library
    This uses the CPU type R (and hence the packages) were built for,
    so when a x86_64 build of R is run under Rosetta emulation on an
    arm64 Mac, the first is used.
  UTILITIES:
  * R CMD check can now scan package functions for bogus return
    statements, which were possibly intended as return() calls (wish
    of PR#17180, patch by Sebastian Meyer). This check can be
    activated via the new environment variable
    _R_CHECK_BOGUS_RETURN_, true for --as-cran.
  * R CMD build omits tarballs and binaries of previous builds from
    the top-level package directory.  (PR#17828, patch by Sebastian
    Meyer.)
  * R CMD check now runs sanity checks on the use of LazyData, for
    example that a data directory is present and that
    LazyDataCompression is not specified without LazyData and has a
    documented value.  For packages with large LazyData databases
    without specifying LazyDataCompression, there is a reference to
    the code given in 'Writing R Extensions' SS1.1.6 to test the
    choice of compression (as in all the CRAN packages tested a
    non-default method was preferred).
  * R CMD build removes LazyData and LazyDataCompression fields from
    the DESCRIPTION file of packages without a data directory.
  ENCODING-RELATED CHANGES:
  * The parser now treats \Unnnnnnnn escapes larger than the upper
    limit for Unicode points (\U10FFFF) as an error as they cannot be
    represented by valid UTF-8.
    Where such escapes are used for outputting non-printable
    (including unassigned) characters, 6 hex digits are used (rather
    than 8 with leading zeros).  For clarity, braces are used, for
    example \U{0effff}.
  * The parser now looks for non-ASCII spaces on Solaris (as
    previously on most other OSes).
  * There are warnings (including from the parser) on the use of
    unpaired surrogate Unicode points such as \uD834.  (These cannot
    be converted to valid UTF-8.)
  * Functions nchar(), tolower(), toupper() and chartr() and those
    using regular expressions have more support for inputs with a
    marked Latin-1 encoding.
  * The character-classification functions used (by default) to
    replace the system iswxxxxx functions on Windows, macOS and AIX
    have been updated to Unicode 13.0.0.
    The character-width tables have been updated to include new
    assignments in Unicode 13.0.0.
  * The code for evaluating default (extended) regular expressions
    now uses the same character-classification functions as the rest
    of R (previously they differed on Windows, macOS and AIX).
  * There is a build-time option to replace the system's
    wide-character wctrans C function by tables shipped with R: use
    configure option --with-internal-towlower or (on Windows)
  - DUSE_RI18N_CASE in CFLAGS when building R.  This may be needed
    to allow tolower() and toupper() to work with Unicode characters
    beyond the Basic Multilingual Plane where not supported by system
    functions (e.g. on Solaris where it is the new default).
  * R is more careful when truncating UTF-8 and other multi-byte
    strings that are too long to be printed, passed to the system or
    libraries or placed into an internal buffer.  Truncation will no
    longer produce incomplete multibyte characters.
  DEPRECATED AND DEFUNCT:
  * Function plclust() from the package stats and
    package.dependencies(), pkgDepends(), getDepList(),
    installFoundDepends(), and vignetteDepends() from package tools
    are defunct.
  * Defunct functions checkNEWS() and readNEWS() from package tools
    and CRAN.packages() from utils have been removed.
  * R CMD config CXXCPP is defunct (it was deprecated in R 3.6.2).
  * parallel::detectCores() drops support for Irix (retired in 2013).
  * The LINPACK argument to chol.default(), chol2inv(),
    solve.default() and svd() has been defunct since R 3.1.0.  It was
    silently ignored up to R 4.0.3 but now gives an error.
  * Subsetting/indexing, such as ddd[*] or ddd$x on a DOTSXP
    (dot-dot-dot) object ddd has been disabled; it worked by accident
    only and was undocumented.
  BUG FIXES:
  * Many more C-level allocations (mainly by malloc and strdup) are
    checked for success with suitable alternative actions.
  * Bug fix for replayPlot(); this was turning off graphics engine
    display list recording if a recorded plot was replayed in the
    same session.  The impact of the bug became visible if resize the
    device after replay OR if attempted another savePlot() after
    replay (empty display list means empty screen on resize or empty
    saved plot).
  * R CMD check etc now warn when a package exports non-existing S4
    classes or methods, also in case of no "methods" presence.
    (Reported by Alex Bertram; reproducible example and patch by
    Sebastian Meyer in PR#16662.)
  * boxplot() now also accepts calls for labels such as ylab, the
    same as plot().  (Reported by Marius Hofert.)
  * The help page for xtabs() now correctly states that addNA is
    setting na.action = na.pass among others.  (Reported as PR#17770
    by Thomas Soeiro.)
  * The R CMD check &lt;pkg&gt; gives a longer and more comprehensible
    message when DESCRIPTION misses dependencies, e.g., in Imports:.
    (Thanks to the contributors of PR#17179.)
  * update.default() now calls the generic update() on the formula to
    work correctly for models with extended formulas.  (As reported
    and suggested by Neal Fultz in PR#17865.)
  * The horizontal position of leaves in a dendrogram is now correct
    also with center = FALSE.  (PR#14938, patch from Sebastian
    Meyer.)
  * all.equal.POSIXt() no longer warns about and subsequently ignores
    inconsistent "tzone" attributes, but describes the difference in
    its return value (PR#17277).  This check can be disabled _via_
    the new argument check.tzone = FALSE as suggested by Sebastian
    Meyer.
  * as.POSIXct() now populates the "tzone" attribute from its tz
    argument when x is a logical vector consisting entirely of NA
    values.
  * x[[2^31]] &lt;- v now works.  (Thanks to the report and patch by
    Suharto Anggono in PR#17330.)
  * In log-scale graphics, axis() ticks and label positions are now
    computed more carefully and symmetrically in their range,
    typically providing _more_ ticks, fulfilling wishes in PR#17936.
    The change really corresponds to an improved axisTicks() (package
    grDevices), potentially influencing grid and lattice, for
    example.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now correct to at
    least five digits where it was catastrophically wrong,
    previously.
  * sum(df) and similar "Summary"- and "Math"-group member functions
    now work for data frames df with logical columns, notably also of
    zero rows.  (Reported to R-devel by Martin "b706".)
  * unsplit() had trouble with tibbles due to unsound use of rep(NA,
    len)-indexing, which should use NA_integer_ (Reported to R-devel
    by Mario Annau.)
  * pnorm(x, log.p = TRUE) underflows to -Inf slightly later.
  * show(&lt;hidden S4 generic&gt;) prints better and without quotes for
    non-hidden S4 generics.
  * read.table() and relatives treated an "NA" column name as missing
    when check.names = FALSE PR#18007.
  * Parsing strings containing UTF-16 surrogate pairs such as
    "\uD834\uDD1E" works better on some (uncommon) platforms.
    sprintf("%X", utf8ToInt("\uD834\uDD1E")) should now give "1D11E"
    on all platforms.
  * identical(x,y) is no longer true for differing DOTSXP objects,
    fixing PR#18032.
  * str() now works correctly for DOTSXP and related exotics, even
    when these are doomed.
    Additionally, it no longer fails for lists with a class and
    "irregular" method definitions such that e.g. lapply(*) will
    necessarily fail, as currently for different igraph objects.
  * Too long lines in environment files (e.g. Renviron) no longer
    crash R. This limit has been increased to 100,000 bytes.
    (PR#18001.)
  * There is a further workaround for FreeType giving incorrect
    italic font faces with cairo-based graphics devices on macOS.
  * add_datalist(*, force = TRUE) (from package tools) now actually
    updates an existing data/datalist file for new content.  (Thanks
    to a report and patch by Sebastian Meyer in PR#18048.)
  * cut.Date() and cut.POSIXt() could produce an empty last interval
    for breaks = "months" or breaks = "years".  (Reported as PR#18053
    by Christopher Carbone.)
  * Detection of the encoding of 'regular' macOS locales such as
    en_US (which is UTF-8) had been broken by a macOS change:
    fortunately these are now rarely used with en_US.UTF-8 being
    preferred.
  * sub() and gsub(pattern, repl, x, *) now keep attributes of x such
    as names() also when pattern is NA (PR#18079).
  * Time differences ("difftime" objects) get a replacement and a
    rep() method to keep "units" consistent.  (Thanks to a report and
    patch by Nicolas Bennett in PR#18066.)
  * The \RdOpts macro, setting defaults for \Sexpr options in an Rd
    file, had been ineffective since R 2.12.0: it now works again.
    (Thanks to a report and patch by Sebastian Meyer in PR#18073.)
  * mclapply and pvec no longer accidentally terminate parallel
    processes started before by mcparallel or related calls in
    package parallel (PR#18078).
  * grep and other functions for evaluating (extended) regular
    expressions handle in Unicode also strings not explicitly flagged
    UTF-8, but flagged native when running in UTF-8 locale.
  * Fixed a crash in fifo implementation on Windows (PR#18031).
  * Binary mode in fifo on Windows is now properly detected from
    argument open (PR#15600, PR#18031).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1622808000">- The line %{__install} -m 755 -d %{_infodir}
  no longer works in TW or Factory.
  But without that line it works everywhere. So this instruction
  was commented out of the spec file.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1628596800">- CHANGES IN R 4.1.1:
  NEW FEATURES:
  * require(pkg, quietly = TRUE) is quieter and in particular does
    not warn if the package is not found.
  DEPRECATED AND DEFUNCT:
  * Use of ftp:// URIs should be regarded as deprecated, with
    on-going support confined to method = "libcurl" and not routinely
    tested.  (Nowadays no major browser supports them.)
  * The non-default method = "internal" is deprecated for http:// and
    ftp:// URIs for both download.file and url.
  * On Windows, method = "wininet" is deprecated for http://,
    https:// and ftp:// URIs for both download.file and url.  (A
    warning is only given for ftp://.)
    For ftp:// URIs the default method is now "libcurl" if available
    (which it is on CRAN builds).
    method = "wininet" remains the default for http:// and https://
    URIs but if libcurl is available, using method = "libcurl" is
    preferred.
  INSTALLATION:
  * make check now works also without a LaTeX installation.  (Thanks
    to Sebastian Meyer's PR#18103.)
  BUG FIXES:
  * make check-devel works again in an R build configured with
  - -without-recommended-packages.
  * qnbinom(p, size, mu) for large size/mu is correct now in a range
    of cases (PR#18095); similarly for the (size, prob)
    parametrization of the negative binomial.  Also qpois() and
    qbinom() are better and or faster for extreme cases.  The
    underlying C code has been modularized and is common to all four
    cases of discrete distributions.
  * gap.axis is now part of the axis() arguments which are passed
    from bxp(), and hence boxplot().  (Thanks to Martin Smith's
    report and suggestions in PR#18109.)
  * .First and .Last can again be set from the site profile.
  * seq.int(from, to, *) and seq.default(..) now work better in large
    range cases where from-to is infinite where the two boundaries
    are finite.
  * all.equal(x,y) now returns TRUE correctly also when several
    entries of abs(x) and abs(y) are close to .Machine$double.xmax,
    the largest finite numeric.
  * model.frame() now clears the object bit when removing the class
    attribute of a value via na.action (PR#18100).
  * charClass() now works with multi-character strings on Windows
    (PR#18104, fixed by Bill Dunlap).
  * encodeString() on Solaris now works again in Latin-1 encoding on
    characters represented differently in UTF-8.  Support for
    surrogate pairs on Solaris has been improved.
  * file.show() on Windows now works with non-ASCII path names
    representable in the current native encoding (PR#18132).
  * Embedded R on Windows can now find R home directory via the
    registry even when installed only for the current user
    (PR#18135).
  * pretty(x) with finite x now returns finite values also in the
    case where the extreme x values are close in size to the maximal
    representable number .Machine$double.xmax.
    Also, it's been tweaked for very small ranges and when a boundary
    is close (or equal) to zero; e.g., pretty(c(0,1e-317)) no longer
    has negative numbers, currently still warning about a very small
    range, and pretty(2^-(1024 - 2^-1/(c(24,10)))) is more accurate.
  * The error message for not finding vignette files when weaving has
    correct file sizes now. (Thanks to Sebastian Meyer's PR#18154.)
  * dnbinom(20, &lt;large&gt;, 1) now correctly gives 0, and similar cases
    are more accurate with underflow precaution.  (Reported by Francisco Vera Alcivar in PR#18072.)</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635163200">- repaired https://bugzilla.suse.com/show_bug.cgi?id=1191380
  (rpmacros now go to rpmmacrodir)
- minor clean-ups in spec file</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635768000">- CHANGES IN R 4.1.2:
  C-LEVEL FACILITIES:
  * The workaround in headers R.h and Rmath.h (using namespace std;)
    for the Oracle Developer Studio compiler is no longer needed now
    C++11 is required so has been removed.  A couple more usages of
    log() (which should have been std::log()) with an int argument
    are reported on Solaris.
  * The undocumented limit of 4095 bytes on messages from the
    S-compatibility macros PROBLEM and MESSAGE is now documented and
    longer messages will be silently truncated rather than
    potentially causing segfaults.
  * If the R_NO_SEGV_HANDLER environment variable is non-empty, the
    signal handler for SEGV/ILL/BUS signals (which offers recovery
    user interface) is not set. This allows more reliable debugging
    of crashes that involve the console.
  DEPRECATED AND DEFUNCT:
  * The legacy S-compatibility macros PROBLEM, MESSAGE, ERROR, WARN,
    WARNING, RECOVER, ... are deprecated and will be hidden in R
    4.2.0. R's native interface of Rf_error and Rf_warning has long
    been preferred.
  BUG FIXES:
  * .mapply(F, dots, .) no longer segfaults when dots is not a list
    and uses match.fun(F) as always documented; reported by Andrew
    Simmons in PR#18164.
  * hist(&lt;Date&gt;, ...) and hist(&lt;POSIXt&gt;, ...)  no longer pass
    arguments for rect() (such as col and density) to axis().
    (Thanks to Sebastian Meyer's PR#18171.)
  * \Sexpr{ch} now preserves Encoding(ch). (Thanks to report and
    patch by Jeroen Ooms in PR#18152.)
  * Setting the RNG to "Marsaglia-Multicarry" e.g., by RNGkind(), now
    warns in more places, thanks to Andr'e Gillibert's report and
    patch in PR#18168.
  * gray(numeric(), alpha=1/2) no longer segfaults, fixing PR#18183,
    reported by Till Krenz.
  * Fixed dnbinom(x, size=&lt;very_small&gt;, .., log=TRUE) regression,
    reported by Martin Morgan.
  * as.Date.POSIXlt(x) now keeps names(x), thanks to Davis Vaughan's
    report and patch in PR#18188.
  * model.response() now strips an "AsIs" class typically, thanks to
    Duncan Murdoch's report and other discussants in PR#18190.
  * try() is considerably faster in case of an error and long call,
    as e.g., from some do.call().  Thanks to Alexander Kaever's
    suggestion posted to R-devel.
  * qqline(y = &lt;object&gt;) such as y=I(.), now works, see also
    PR#18190.
  * Non-integer mgp par() settings are now handled correctly in
    axis() and mtext(), thanks to Mikael Jagan and Duncan Murdoch's
    report and suggestion in PR#18194.
  * formatC(x) returns length zero character() now, rather than ""
    when x is of length zero, as documented, thanks to Davis
    Vaughan's post to R-devel.
  * removeSource(fn) now retains (other) attributes(fn).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1647000000">- CHANGES IN R 4.1.3:
  NEW FEATURES:
  * The default version of Bioconductor has been changed to 3.14.
    (This is used by setRepositories and the menus in GUIs.)
  UTILITIES:
  * R CMD check --as-cran has a workaround for a bug in versions of
    file up to at least 5.41 which mis-identify DBF files last
    changed in 2022 as executables.
  C-LEVEL FACILITIES:
  * The legacy S-compatibility macros SINGLE_* in R_ext/Constants.h
    (included by R.h) are deprecated and will be removed in R 4.2.0.
  BUG FIXES:
  * Initialization of self-starting nls() models with initialization
    functions following the pre-R-4.1.0 API (without the ...
    argument) works again for now, with a deprecation warning.
  * Fixed quoting of ~autodetect~ in Java setting defaults to avoid
    inadvertent user lookup due to leading ~, reported in PR#18231 by
    Harold Gutch.
  * substr(., start, stop) &lt;- v now treats _negative_ stop values
    correctly.  Reported with a patch in PR#18228 by Brodie Gaslam.
  * Subscripting an array x without dimnames by a
    length(dim(x))-column character matrix gave "random" non-sense,
    now an error; reported in PR#18244 by Mikael Jagan.
  * ...names() now matches names(list(...)) closely, fixing PR#18247.
  * all.equal(*, scale = s) now works as intended when length(s) &gt; 1,
    partly thanks to Michael Chirico's PR#18272.
  * print(x) for long vectors x now also works for named atomic
    vectors or lists and prints the correct number when reaching the
    getOption("max.print") limit; partly thanks to a report and
    proposal by Hugh Parsonage to the R-devel list.
  * all.equal(&lt;selfStart&gt;, *) no longer signals a deprecation
    warning.
  * reformulate(*, response=r) gives a helpful error message now when
    length(r) &gt; 1, thanks to Bill Dunlap's PR#18281.
  * Modifying globalCallingHandlers inside withCallingHandlers() now
    works or fails correctly, thanks to Henrik Bengtsson's PR#18257.
  * hist(&lt;Date&gt;, breaks = "days") and hist(&lt;POSIXt&gt;, breaks = "secs")
    no longer fail for inputs of length 1.
  * qbeta(.001, .9, .009) and similar cases now converge correctly
    thanks to Ben Bolker's report in PR#17746.
  * window(x, start, end) no longer wrongly signals "'start' cannot
    be after 'end'", fixing PR#17527 and PR#18291.
  * data() now checks that its (rarely used) list argument is a
    character vector - a couple of packages passed other types and
    gave incorrect results.
  * which() now checks its arr.ind argument is TRUE rather coercing
    to logical and taking the first element - which gave incorrect
    results in package code.
  * model.weights() and model.offset() more carefully extract their
    model components, thanks to Ben Bolker and Tim Taylor's R-devel
    post.
  * list.files(recursive = TRUE) now shows all broken symlinks
    (previously, some of them may have been omitted, PR#18296).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1650628800">- CHANGES IN R 4.2.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * The formula method of aggregate() now matches the generic in
    naming its first argument x (resolving PR#18299 by Thomas
    Soeiro).
    This means that calling aggregate() with a formula as a named
    first argument requires name formula in earlier versions of R and
    name x now, so portable code should not name the argument (code
    in many packages did).
  * Calling &amp;&amp; or || with either argument of length greater than one
    now gives a warning (which it is intended will become an error).
  * Calling if() or while() with a condition of length greater than
    one gives an error rather than a warning.  Consequently,
    environment variable _R_CHECK_LENGTH_1_CONDITION_ no longer has
    any effect.
  * Windows users should consult the WINDOWS section below for some
    profound changes including
  * Support for 32-bit builds has been dropped.
  * UTF-8 locales are used where available.
  * The default locations for the R installation and personal
    library folder have been changed.
    Thanks to Tomas Kalibera for months of work on the Windows port
    for this release.
  NEW FEATURES:
  * matrix(x, n, m) now warns in more cases where length(x) differs
    from n * m, as suggested by Abby Spurdle and Wolfgang Huber in
    Feb 2021 on the R-devel mailing list.
    This warning can be turned into an error by setting environment
    variable _R_CHECK_MATRIX_DATA_ to TRUE: R CMD check --as-cran
    does so unless it is already set.
  * Function file_test() in package utils gains tests for symlinks,
    readability and writability.
  * capabilities("libxml") is now false.
    The description of capabilities("http/ftp") now reflects that it
    refers to the default method, no longer the internal one.
  * simplify2array() gains an except argument for controlling the
    exceptions used by sapply().
  * Environment variables R_LIBS_USER and R_LIBS_SITE are both now
    set to the R system default if unset or empty, and can be set to
    NULL to indicate an empty list of user or site library
    directories.
  * The warning for axis()(-like) calls in cases of relatively small
    ranges (typically in log-scale situations) is slightly improved
    _and_ suppressed from explicit calls to .axisPars() as has always
    been the intention.
  * The contrasts setter function `contrasts&lt;-` gains an explicit
    default how.many = NULL rather than just using missing(how.many).
  * grid.pretty() gains a new optional argument n = 5.
  * There is a new function .pretty() with option bounds as a
    technical-utility version of pretty().  It and pretty() gain a
    new argument f.min with a better than back-compatible default.
  * Function grDevices::axisTicks() and related functions such as
    graphics::axis() work better, notably for the log scale; partly
    because of the pretty() improvements, but also because care is
    taken e.g., when ylim is finite but diff(ylim) is infinite.
  * nclass.FD() gains a digits option.
  * The R Mathlib internal C function bd0() (called indirectly from a
    dozen probability density and distribution functions such as
    dpois(), dbinom(), dgamma(), pgamma() _etc_) has been
    complemented by a more sophisticated and (mostly) more accurate C
    function ebd0(), currently called only by internal dpois_raw()
    improving accuracy for R level dpois() and potentially others
    calling it such as dnbinom(), dgamma() or pgamma().  (Thanks to
    Morten Welinder's PR#15628.)
  * write.ftable() gains sep = " " argument as suggested by Thomas
    Soeiro.
  * The names of the locale categories supported by R's
    Sys.getlocale() and Sys.setlocale() are now provided by variable
    .LC.categories in the base namespace.
  * The Date and POSIXt methods for hist() and the histogram method
    for plot() now also use the new default col = "lightgray" in
    consistency with the corresponding change to hist()'s default for
    R 4.0.0.
  * hist.default() gains new fuzz argument, and the histogram plot
    method no longer uses fractional axis ticks when displaying
    counts ("Frequency").
  * mapply() and hence Map() now also obey the "max-or-0-if-any"
    recycling rule, such that, e.g., Map(`+`, 1:3, 1[0]) is valid
    now.
  * as.character(&lt;obj&gt;) for "hexmode" or "octmode" objects now
    fulfils the important basic rule as.character(x)[j] ===
    as.character(x[j]).
  * The set utility functions, notably intersect() have been tweaked
    to be more consistent and symmetric in their two set arguments,
    also preserving a common mode.
  * substr(ch, start,end) &lt;- new now e.g., preserves names(ch); ditto
    for substring(), thanks to a patch from Brodie Gaslam.
  * plot(&lt;lm&gt;) gains a extend.ylim.f argument, in partial response to
    PR#15285; further PR#17784 is fixed thanks to several
    contributors and a patch by Elin Waring.  The Cook's dist
    contours get customizable via cook.col and cook.lty with a
    different default color and their legend is nicer by default and
    customizable via cook.legendChanges.
  * Attempting to subset an object that is not subsettable now
    signals an error of class notSubsettableError. The
    non-subsettable object is contained in the object field of the
    error condition.
  * Subscript-out-of-bounds errors are now signaled as errors of
    class subscriptOutOfBoundsError.
  * Stack-overflow errors are now signaled as errors inheriting from
    class stackOverflowError. See ?stackOverflowError for more
    details.
  * New partly experimental Sys.setLanguage() utility, solving the
    main problem of PR#18055.
  * gettext() and gettextf() get a new option trim = TRUE which when
    set to false allows translations for strings such as "Execution
    halted\n" typical for C code.
  * An experimental implementation of hash tables is now available.
    See ?hashtab for more details.
  * identical() gains a extptr.as.ref argument for requesting that
    external pointer objects be compared as reference objects.
  * reorder() gets an argument decreasing which it passes to sort()
    for level creation; based on the wish and patch by Thomas Soeiro
    in PR#18243.
  * as.vector() gains a data.frame method which returns a simple
    named list, also clearing a long standing 'FIXME' to enable
    as.vector(&lt;data.frame&gt;, mode="list").  This breaks code relying
    on as.vector(&lt;data.frame&gt;) to return the unchanged data frame.
  * legend() is now vectorized for arguments cex, x.intersp, and
    text.width.  The latter can now also be specified as a vector
    (one element for each column of the legend) or as NA for
    computing a proper column wise maximum value of strwidth(legend).
    The argument y.intersp can be specified as a vector with one
    entry for each row of the legend.
    legend() also gains new arguments title.cex and title.font.
    Thanks to Swetlana Herbrandt.
  * Deparsing no longer remaps attribute names dim, dimnames, levels,
    names and tsp to historical S-compatible names (which structure()
    maps back).
  * sample() and sample.int() have additional sanity checks on their
    size and n arguments.
    all.equal.numeric() gains a sanity check on its tolerance
    argument - calling all.equal(a, b, c) for three numeric vectors
    is a surprisingly common error.
    mean(na.rm =), rank(na.last =), barplot(legend.text =),
    boxplot(), contour(drawlabels =), polygon(border =) and
    methods::is(class2 =) have more robust sanity checks on their
    arguments.
    R CMD Rd2pdf (used by R CMD check) has a more robust sanity check
    on the format of \alias{} commands.
  * psigamma(x, deriv) for negative x now also works for deriv = 4
    and 5; their underlying C level dpsifn() is documented in
    'Writing R Extensions'.
  * The HTML help system now uses HTML5 (wish of PR#18149).
  * ks.test() now provides exact p-values also with ties and MC
    p-values in the two-sample (Smirnov) case.  By Torsten Hothorn.
  * ks.test() gains a formula interface, with y ~ 1 for the
    one-sample (Kolmogorov) test and y ~ group for the two-sample
    (Smirnov) test.  Contributed by Torsten Hothorn.
  * The return value from ks.test() now has class c("ks.test",
    "htest") - packages using try() need to take care to use
    inherits() and not == on the class.
  * New functions psmirnov(), qsmirnov() and rsmirnov() in package
    stats implementing the asymptotic and exact distributions of the
    two-sample Smirnov statistic.
  * iconv() now allows sub = "c99" to use C99-style escapes for UTF-8
    inputs which cannot be converted to encoding to.
  * In a forward pipe |&gt; expression it is now possible to use a named
    argument with the placeholder _ in the rhs call to specify where
    the lhs is to be inserted.  The placeholder can only appear once
    on the rhs.
  * The included LAPACK sources have been updated to version 3.10.0,
    except for the four Fortran 77 routines which 3.10.0 has
    re-implemented in Fortran 90 (where the older versions have been
    retained as the R build process does not support Fortran 90).
  * path.expand() and most other uses of tilde expansion now warn if
    a path would be too long if expanded.  (An exception is
    file.exists(), which silently returns false.)
  * trunc(&lt;Date&gt;, *) now supports units = "months" or "years" for
    consistency with the POSIXt method, thanks to Dirk Eddelbuettel's
    proposal in PR#18099.
  * list2DF() now checks that its arguments are of the same length,
    rather than use recycling.
  * The HTML help system has several new features: LaTeX-like math
    can be typeset using either KaTeX or MathJax, usage and example
    code is highlighted using Prism, and for dynamic help the output
    of examples and demos can be shown within the browser if the
    knitr package is installed. These features can be disabled by
    setting the environment variable _R_HELP_ENABLE_ENHANCED_HTML_ to
    a false value.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 15
    and so packages that provide graphics devices should be
    reinstalled.
  * The grid package now allows the user to specify a "vector" of
    pattern fills.  The fill argument to gpar() accepts a list of
    gradients and/or patterns and the functions linearGradient(),
    radialGradient(), and pattern() have a new group argument.
    Points grobs (data symbols) can now also have a pattern fill.
    The grobCoords() function now returns a more informative and
    complex result.
  * The grid package has new functions for drawing isolated groups:
    grid.group(), grid.define(), and grid.use().  These functions add
    compositing operators and affine transformations to R's graphics
    capabilities.
    The grid package also has new functions for stroking and filling
    paths: grid.stroke(), grid.fill(), and grid.fillStroke().
    A new function as.path() allows the user to specify the fill rule
    for a path that is to be used for clipping, stroking, or filling;
    available options are "winding" and "evenodd".  A new function
    as.mask() allows the user to specify the type of a mask;
    available options are "alpha" and "luminance".
    These new features are only supported so far (at most) on the
    Cairo-based graphics devices and on the pdf() device.
  * dev.capabilities() reports on device support for the new
    features.
  * par() now warns about unnamed non-character arguments to prevent
    misuse such as {usr &lt;- par("usr"); par(usr)}.
  INSTALLATION:
  * Facilities for accessing ftp:// sites are no longer tested
    (except _pro tem_ for curlGetHeaders()) as modern browsers have
    removed support.
  * R can now be built with DEFS = -DSTRICT_R_HEADERS .
  PACKAGE INSTALLATION:
  * R CMD INSTALL no longer tangles vignettes. This completes an R
    CMD build change in R 3.0.0 and affects packages built before R
    3.0.2. Such packages should be re-made with R CMD build to have
    the tangled R code of vignettes shipped with the tarball.
  * USE_FC_LEN_T will become the default: this uses the correct
    prototypes for Fortran BLAS/LAPACK routines called from C/C++,
    and requires adjustment of most such calls - see 'Writing R
    Extensions' SS6.6.2.  (This has been supported since R 3.6.2.)
  * Package installation speed for packages installed with
    keep.source has been improved. This resolve the issue reported by
    Ofek Shilon in PR#18236.
  UTILITIES:
  * R CMD check can optionally report files/directories left behind
    in home, /tmp (even though TMPDIR is set) and other directories.
    See the "R Internals" manual for details.
  * R CMD check now reports byte-compilation errors during
    installation.  These are not usually fatal but may result in
    parts of the package not being byte-compiled.
  * _R_CHECK_DEPENDS_ONLY_ can be applied selectively to examples,
    tests and/or vignettes in R CMD check: see the "R Internals"
    manual.
  * _R_CHECK_SRC_MINUS_W_IMPLICIT_ now defaults to true: recent
    versions of Apple clang on macOS have made implicit function
    declarations in C into a compilation error.
  * R CMD check --as-cran makes use of the environment variable
    AUTORECONF.  See the "R Internals" manual SS8 for further details.
  * R CMD check --use-valgrind also uses valgrind when re-building
    vignettes as some non-Sweave vignettes unhelpfully comment out
    all their code when R CMD check runs vignettes.
  * Errors in re-building vignettes (unless there are LaTeX errors)
    are reported by R CMD check as ERROR rather than WARNING when
    running vignettes has been skipped (as it frequently is in CRAN
    checks and by --as-cran).
  * R CMD Rd2pdf gains a --quiet option that is used by R CMD build
    when building the PDF package manual.
  * R CMD Rd2pdf now always runs LaTeX in batch mode, consistent with
    Texinfo &gt;= 6.7. The --batch option is ignored.
  * R CMD build and R CMD check now include the Rd file name and line
    numbers in the error message of an \Sexpr evaluation failure.
  * For packages using the \doi Rd macro (now an install-time \Sexpr)
    but no other dynamic Rd content, R CMD build now produces a
    smaller tarball and is considerably faster - skipping temporary
    package installation.
  C-LEVEL FACILITIES:
  * The non-API header R_ext/R-ftp-http.h is no longer provided, as
    the entry points it covered are now all defunct.
  * A number of non-API declarations and macro definitions have been
    moved from the installed header Rinternals.h to the internal
    header Defn.h. Packages that only use entry points and
    definitions documented to be part of the API as specified in
    'Writing R Extensions' SS6 should not be affected.
  * The macro USE_RINTERNALS no longer has any effect when compiling
    package code.  Packages which also use R_NO_REMAP will need to
    ensure that the remapped names are used for calls to API
    functions that were formerly also made available as macros.
  * The deprecated legacy S-compatibility macros PROBLEM, MESSAGE,
    ERROR, WARN, WARNING, RECOVER, ... are no longer defined in
    R_exts/RS.h (included by R.h).  Replace these by calls to
    Rf_error and Rf_warning (defined in header R_ext/Error.h included
    by R.h).
    Header R_ext/RS.h no longer includes R_ext/Error.h.
  * Header R_ext/Constants.h (included by R.h) when included from C++
    now includes the C++ header cfloat rather than the C header
    float.h (now possible as C++11 is required).
  * The legacy S-compatibility macros DOUBLE_* in R_ext/Constants.h
    (included by R.h) are deprecated.
  * The deprecated S-compatibility macros SINGLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * R_Calloc, R_Free and R_Realloc are preferred to their unprefixed
    forms and error messages now use the prefix. These forms were
    introduced in R 3.4.0 and are available even when
    STRICT_R_HEADERS is defined.
  * rmultinom has been documented in 'Writing R Extensions' SS6 so is
    now part of the R API.
  * Similarly, Rtanpi, called from R level tanpi() is now part of the
    R API.
  * The long-deprecated, undocumented and non-API entry point call_R
    is no longer declared in R_ext/RS.h (included by R.h).
  * The header S.h which has been unsupported since Jan 2016 has been
    removed.  Use R.h instead.
  DEPRECATED AND DEFUNCT:
  * The (non-default and deprecated) method = "internal" for
    download.file() and url() no longer supports http:// nor ftp://
    URIs.  (It is used only for file:// URIs.)
    On Windows, download.file(method = "wininet") no longer supports
    ftp:// URIs.  (It is no longer the default method, which is
    "libcurl" and does.)
    On Windows, the deprecated method = "wininet" now gives a warning
    for http:// and https:// URIs for both download.file() and url().
    (It is no longer the default method.)
  * On Windows, the command-line option --max-mem-size and
    environment variable R_MAX_MEM_SIZE are defunct.  The memory
    allocation limit was important for 32-bit builds, but these are
    no longer supported.
  * default.stringsAsFactors() is now formally deprecated, where that
    was only mentioned on its regular help page, previously.  So it
    now gives a warning if called.
  * unix.time() is defunct now; it had been deprecated since R 3.4.0.
  BUG FIXES:
  * Setting digits = 0 in format(), print.default() (and hence
    typically print()) or options() is again invalid.  Its behaviour
    was platform-dependent, and it is unclear what "zero significant
    digits" should mean (PR#18098).
  * Messages from C code in the cairo section of package grDevices
    are now also offered for translation, thanks to Michael Chirico's
    PR#18123.
  * mean(x) with finite x now is finite also without "long.double"
    capability.
  * R CMD Rd2pdf no longer leaves an empty build directory behind
    when it aborts due to an already existing output file.  (Thanks
    to Sebastian Meyer's PR#18141.)
  * density(x, weights = w, na.rm = TRUE) when anyNA(x) is true, now
    removes weights "in parallel" to x, fixing PR#18151, reported by
    Matthias Gondan.  Additionally, it gets a subdensity option.
  * Conversion of \Sexpr[]{&lt;expR&gt;} to LaTeX or HTML no longer
    produces long blocks of empty lines when &lt;expR&gt; itself contains
    several lines all producing empty output.  Thanks to a report and
    patch by Ivan Krylov posted to R-devel.
  * R CMD build no longer fails if a package vignette uses child
    documents and inst/doc exists.  (Thanks to Sebastian Meyer's
    PR#18156.)
  * When an R documentation ('help' source) file man/foo.Rd in a
    package has \donttest{..} examples with a syntax error, it is now
    signalled as ERROR and with correct line numbers relating to the
  * -Ex.R file, thanks to Duncan Murdoch and Sebastian Meyer's
    reports and patch proposals in PR#17501.
  * Improved determination of the correct translation domain in
    non-base packages, addressing the combination of PR#18092 and
    PR#17998 (#c6) with reports and _augmented_ patch #2904 by
    Suharto Anggono.
    Note that "R-base" is no longer the default domain e.g., for
    top-level calls to gettext(); rather translation needs explicit
    domain = * specification in such cases.
  * identical(attrib.as.set=FALSE) now works correctly with data
    frames with default row names (Thanks to Charlie Gao's PR#18179).
  * txtProgressBar() now enforces a non-zero width for argument char,
    without which no progress can be visible.
  * dimnames(table(d)) is more consistent in the case where d is a
    list with a single component, thanks to Thomas Soeiro's report to
    R-devel.
    Further, table(d1, d2) now gives an error when d1 and d2 are data
    frames as suggested by Thomas in PR#18224.
  * Fix for drawing semi-transparent lines and fills on the native
    Windows graphics device (PR#18219 and PR#16694).  Thanks to Nick
    Ray for helpful diagnosis on Bugzilla.
  * The deparser now wraps sub-expressions such as if(A) ..  with
    parentheses when needed; thanks to Duncan Murdoch's PR#18232 and
    Lionel Henry's patches there.
  * remove.packages() no longer tries to uninstall Priority: base
    packages, thanks to a report and suggestions by Colin Fay in
    PR#18227.
  * win.metafile() now has xpinch and ypinch arguments so that the
    user can override Windows' (potentially wrong) guess at device
    dimensions.
  * x[i] and x[[i]] for non-integer i should now behave in all cases
    as always documented: the index used is equivalent to
    as.integer(i) unless that would overflow where trunc(i) is used
    instead; thanks to Suharto Anggono's report and patch proposals
    in PR#17977.
  * asOneSidedFormula() now associates the resulting formula with the
    global environment rather than the evaluation environment created
    for the call.
  * &lt;bibentry&gt;$name now matches the field name case-insensitively,
    consistent with bibentry() creation and the replacement method.
  * cbind() failed to detect some length mismatches with a mixture of
    time-series and non-time-series inputs.
  * The default LaTeX style file Sweave.sty used by the RweaveLatex
    driver no longer loads the obsolete ae package; thanks to a
    report by Thomas Soeiro in PR#18271.  Furthermore, it now skips
    \usepackage[T1]{fontenc} for engines other than pdfTeX (if
    detected) or if the new [nofontenc] option is used.
  * smooth.spline() now stores its logical cv argument more safely,
    fixing a rare bug when printing, and also stores n.
  * smooth.spline(x,y,*) now computes the cv.crit statistic
    correctly, also when is.unsorted(x), fixing PR#18294.
  * The data.frame method of rbind() now warns when binding
    not-wholly-recycling vectors, by analogy to the default method
    (for matrices).
  * setAs() finds the correct class for name to when multiple
    packages define a class with that name. Thanks to Gabor Csardi
    for the report.
  * Fix for detaching a package when two classes of the same name are
    present in method signatures for the same generic. Thanks to
    Gabor Csardi for the report.
  * match.arg("", c("", "a", "B")) gives a better error message, in
    part from PR#17959, thanks to Elin Waring.
  * R CMD Sweave --clean no longer removes pre-existing files or
    subdirectories (PR#18242).
  * The quartz() device no longer splits polylines into subpaths.
    That has caused narrowly-spaced lines with many points to always
    look solid even when dashed line type was used due to dash phase
    restarts.
  * Deparsing constructs such as quote(1 + `!`(2) + 3) works again as
    before R 3.5.0, thanks to the report and patch in PR#18284 by
    Suharto Anggono.
  * as.list(f) for a factor f now keeps names(f), fixing PR#18309.
  * qbeta(.001, .9, .009) and analogous qf() calls now return a
    correct value instead of NaN or wrongly 1, all with a warning;
    thanks to the report by Ludger Goeminne in PR#18302.
  * plot.lm() failed to produce the plot of residuals vs.  factor
    levels (i.e., which=5 when leverages are constant) for models
    with character predictors (PR#17840).
  * interaction.plot(..., xtick = TRUE) misplaced the x-axis line
    (PR#18305).
  * Not strictly fixing a bug, format()ing and print()ing of
    non-finite Date and POSIXt values NaN and +/-Inf no longer show
    as NA but the respective string, e.g., Inf, for consistency with
    numeric vector's behaviour, fulfilling the wish of PR#18308.
  * R CMD check no longer runs test scripts generated from
    corresponding .Rin files twice and now signals an ERROR if
    processing an .Rin script fails.
  * tools::Rd2txt() used for plain-text help pages now renders \hrefs
    (if tools::Rd2txt_options(showURLs = TRUE)) and \urls with
    percent-encoding and standards-compliant delimiting style (angle
    brackets and no URL: prefix).  \email is now rendered with a
    mailto: prefix.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1655985600">- CHANGES IN R 4.2.1:
  NEW FEATURES:
  * New function utils::findCRANmirror() to find out if a CRAN mirror
    has been selected, otherwise fallback to the main site.  This
    behaves in the same way as tools::CRAN_package_db() and is
    intended for packages wishing to access CRAN for purposes other
    than installing packages.
    The need for this was shown by a day when the main CRAN website
    was offline and a dozen or so packages which had its URL
    hardcoded failed their checks.
  INSTALLATION on a UNIX-ALIKE:
  * The libraries searched for by --with-blas (without a value) now
    include BLIS (after OpenBLAS but before ATLAS).  And on macOS,
    the Accelerate framework (after ATLAS).  (This is patterned after
    the AX_BLAS macro from the Autoconf Archive.)
  * The included LAPACK sources have been updated to 3.10.1.
  UTILITIES:
  * The (full path to) the command tidy to be used for HTML
    validation can be set by environment variable R_TIDYCMD.
  * Setting environment variable _R_CHECK_RD_VALIDATE_RD2HTML_ to a
    false value will override R CMD check --as-cran and turn off HTML
    validation.  This provides a way to circumvent a problematic
    tidy.
    The 2006 version that ships with macOS is always skipped.
  C-LEVEL FACILITIES:
  * The undocumented legacy declarations of Sint, Sfloat, SINT_MAX
    and SINT_MIN in header R.h are deprecated.
  BUG FIXES:
  * fisher.test(d) no longer segfaults for "large" d; fixing PR#18336
    by preventing/detecting an integer overflow reliably.
  * tar(., files=*) now produces correctly the warning about invalid
    uid or gid of files, fixing PR#18344, reported by Martin Morgan.
  * tk_choose.files() with multi = FALSE misbehaved on paths
    containing spaces (PR#18334) (regression introduced in R 4.0.0).
  * sort(x, partial = ind, *) now works correctly notably for the
    non-default na.last = FALSE or TRUE, fixing PR#18335 reported by
    James Edwards.
  * Environment variable _R_CHECK_XREFS_REPOSITORIES_ is only used
    for checking .Rd cross-references in R CMD check (as documented)
    and not for other uses looking for a CRAN mirror.
  * The search for a CRAN mirror when checking packages now uses
    getOption("repos") if that specifies a CRAN mirror, even when it
    does not also specify all three Bioconductor repositories (as was
    previously required).
  * The HTML code generated by tools::Rd2HTML() has been improved to
    pass tidy 5.8.0.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1667217600">- CHANGES IN R 4.2.2:
  NEW FEATURES:
  * tools::Rdiff(useDiff = TRUE) checks for the presence of an
    external diff command and switches to useDiff = FALSE if none is
    found.  This allows R CMD Rdiff to always work.
  * On Windows, environment variable R_LIBCURL_SSL_REVOKE_BEST_EFFORT
    can be used to switch to only 'best-effort' SSL certificate
    revocation checks with the default "libcurl" download method.
    This reduces security, but may be needed for downloads to work
    with MITM proxies (PR#18379).
  * (macOS) The run-time check for libraries from XQuartz for X11 and
    Tcl/Tk no longer uses otool from the Apple Developer Tools
    (PR#18400).
  * The LaTeX style for producing the PDF manuals, Rd.sty, now loads
    the standard amsmath, amsfonts and amssymb packages for greater
    coverage of math commands in the Rd \eqn and \deqn macros.  The
    \mathscr LaTeX command is also provided (via the mathrsfs
    package, if available, or the amsfonts bundle otherwise),
    fulfilling the wish of PR#18398.
  * (Windows) The default format of readClipboard() and
    writeClipboard() has been changed to 13 (CF_UNICODETEXT).
  INSTALLATION on a UNIX-ALIKE:
  * The PDF manuals (if built) can be compacted by the new target
    make compact-pdf (at the top level or in directory doc/manual).
  * There is now configure support for LLVM clang 15 on Linux, which
    defaults to position-independent (PIE) executables whereas
    gfortran does not.
  * Many small changes to ease compilation (and suppress warnings)
    with LLVM clang 15.
  BUG FIXES:
  * Rscript -e would fail if stdin were closed (Reported by Henrik
    Bengtsson.)
  * qt(*, log.p=TRUE) in outer tails no longer produces NaN in its
    final steps, thus fixing PR#18360.
  * tools::Rd2latex() now escapes hashes and ampersands when writing
    URLs, fixing LaTeX errors with such URLs in \tabular.
  * When isGeneric(f, fdef=*) is used with mismatching names, the
    warning is better understandable; reported (with fix) in PR#18370
    by Gabe Becker.
  * poly(x, n) now works again (and is now documented) when x is a
    "Date" or "POSIXct" object, or of another class while fulfilling
    mode(x) == "numeric".  This also enables poly(x, *, raw=TRUE) for
    such variables.  Reported by Michael Chirico to R-devel.
  * write.table(), write.csv() and write.csv2() restore their
    numerical precision (internal equivalent of digits = 15) after an
    interrupt (PR#18384).
  * One can now read also byte FF from a clipboard connection
    (PR#18385).
  * source("") and source(character()) now give more helpful error
    messages.
  * R CMD check --as-cran set _R_CHECK_TIMINGS_ too late to have the
    intended effect.
  * as.POSIXlt(x) now also works with very large dates x, fixing
    PR#18401 reported by Hannes M"uhleisen.
  * Files can now be extracted even from very large zip archives
    (PR#18390, thanks to Martin Jakt).
  * Non-finite objects of class "POSIXlt" are now correctly coerced
    to classes "Date" and "POSIXct"; following up on the extension to
    format() them correctly.
  * Added methods for is.finite(), is.infinite() and is.nan() for
    "POSIXlt" date-time objects.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1678881600">- CHANGES IN R 4.2.3:
  C-LEVEL FACILITIES:
  * The definition of DL_FUNC in R_ext/Rdynload.h has been changed to
    be fully C-compliant.  This means that functions loaded _via_ for
    example R_GetCCallable need to be cast to an appropriate type if
    they have any arguments.
  * .Machine has a new element sizeof.time_t to identify old systems
    with a 32-bit type and hence a limited range of date-times (and
    limited support for dates millions of years from present).
  PACKAGE INSTALLATION:
  * (Windows) The default C++ standard had accidentally been left at
    C++11 when it was changed to C++14 on Unix.
  BUG FIXES:
  * As "POSIXlt" objects may be "partially filled" and their list
    components meant to be recycled, length() now is the length of
    the longest component.
  * as.POSIXlt.Date() could underflow for dates in the far past (more
    than half a million years BCE).
  * as.Date.POSIXlt(x) would return "1970-01-01" instead of NA in R
    4.2.2, e.g., for
    x &lt;- as.POSIXlt(c("2019-01-30","2001-1-1"))
    x$mon &lt;- c(0L, NA); as.Date(x)
  * R CMD check failed to apply enabled _R_CHECK_SUGGESTS_ONLY_ to
    examples and vignettes (regression in R 4.2.0).
  * R CMD check did not re-build vignettes in separate processes by
    default (regression in R 4.2.0).
  * Running examples from HTML documentation now restores previous
    knitr settings and options (PR#18420).
  * Quartz: fonts are now located using Core Graphics API instead of
    deprecated ATS which is no longer supported in the macOS 13 SDK
    (PR#18426).  This also addresses an issue where the currently
    used font in the Quartz device context was not correctly
    retained.
  * (Windows) Math symbols in text drawing functions are again
    rendered correctly (PR#18440).  This fixes a regression in R
    4.2.1 caused by a fix in PR#18382 which uncovered an issue in
    GraphApp due to which the symbol charset was not used with TT
    Symbol font face.
  * (Windows) Installing a package with a src/Makefile.{win,ucrt}
    file includes ~/.R/Makevars.win64 in the search for user
    makevars, as documented in "R Installation and Administration"
    and done for packages with a src/Makevars.{win,ucrt} file.
  * format(&lt;POSIXlt_w/_unbalanced_sec&gt;, "....%OS&lt;n&gt;") with n &gt; 0 no
    longer accidentally uses the unbalanced seconds, thanks to
    Suharto Anggono's report (including patch) in PR#18448.
  * solve.default(a, b) works around issues with some versions of
    LAPACK when a contains NA or NaN values.
  * When UseMethod() cannot dispatch, it no longer segfaults
    producing the error message in case of a long class(), thanks to
    Joris Vankerschaver's report (including patch) in PR#18447.
  * When example(foo, ..) produces graphics on an interactive device
    it needs to open itself, it now leaves devAskNewPage() unchanged
    even when it was FALSE, thus fixing a 14 years old '&lt;FIXME&gt;'.
  * packageDescription() again catches errors from encoding
    conversions. This also fixes broken packageVersion() in C locale
    on systems where iconv does not support transliteration.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1681128000">- add patch to build with libcurl &gt;= 8</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1682078400">- CHANGES IN R 4.3.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Calling &amp;&amp; or || with LHS or (if evaluated) RHS of length greater
    than one is now always an error, with a report of the form
    'length = 4' in coercion to 'logical(1)'
    Environment variable _R_CHECK_LENGTH_1_LOGIC2_ no longer has any
    effect.
  NEW FEATURES:
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.10.1.  (This caused some platform-dependent
    changes to package check output.)  And then to the sources from
    LAPACK version 3.11.0 (with changes only to double complex
    subroutines).
  * The included LAPACK sources have been updated to include the four
    Fortran 90 routines rather than their Fortran 77 predecessors.
    This may give some different signs in SVDs or
    eigendecompositions..  (This completes the transition to LAPACK
    3.10.x begun in R 4.2.0.)
  * The LAPACK sources have been updated to version 3.11.0.  (No new
    subroutines have been added, so this almost entirely bug fixes:
    Those fixes do affect some computations with NaNs, including R's
    NA.)
  * The parser now signals _classed_ errors, notably in case of the
    pipe operator |&gt;.  The error object and message now give line and
    column numbers, mostly as proposed and provided by Duncan Murdoch
    in PR#18328.
  * toeplitz() is now generalized for asymmetric cases, with a
    toeplitz2() variant.
  * xy.coords() and xyz.coords() and consequently, e.g., plot(x,y,
    log = "y") now signal a _classed_ warning about negative values
    of y (where log(.) is NA).  Such a warning can be specifically
    suppressed or caught otherwise.
  * Regular expression functions now check more thoroughly whether
    their inputs are valid strings (in their encoding, e.g. in
    UTF-8).
  * The performance of grep(), sub(), gsub() and strsplit() has been
    improved, particularly with perl = TRUE and fixed = TRUE.  Use of
    useBytes = TRUE for performance reasons should no longer be
    needed and is discouraged: it may lead to incorrect results.
  * apropos() gains an argument dot_internals which is used by the
    completion (help(rcompgen)) engine to also see base internals
    such as .POSIXct().
  * Support in tools::Rdiff() for comparing uncompressed PDF files is
    further reduced - see its help page.
  * qqplot(x, y, ...) gains conf.level and conf.args arguments for
    computing and plotting a confidence band for the treatment
    function transforming the distribution of x into the distribution
    of y (Switzer, 1976, _Biometrika_). Contributed by Torsten
    Hothorn.
  * Performance of package_dependencies() has been improved for cases
    when the number of dependencies is large.
  * Strings newly created by gsub(), sub() and strsplit(), when any
    of the inputs is marked as "bytes", are also marked as "bytes".
    This reduces the risk of creating invalid strings and accidental
    substitution of bytes deemed invalid.
  * Support for readLines(encoding = "bytes") has been added to allow
    processing special text files byte-by-byte, without creating
    invalid strings.
  * iconv(from = "") now takes into account any declared encoding of
    the input elements and uses it in preference to the native
    encoding.  This reduces the risk of accidental creation of
    invalid strings, particularly when different elements of the
    input have different encoding (including "bytes").
  * Package repositories in getOption("repos") are now initialized
    from the repositories file when utils is loaded (if not already
    set, e.g., in .Rprofile).  (From a report and patch proposal by
    Gabriel Becker in PR#18405.)
  * compactPDF() gets a verbose option.
  * type.convert() and hence read.table() get new option tryLogical =
    TRUE with back compatible default.  When set to false, converts
    "F" or "T" columns to character.
  * Added new unit prefixes "R" and "Q" for abbreviating
    (unrealistically large) sizes beyond 10^{27} in standard = "SI",
    thanks to Henrik Bengtsson's PR#18435.
  * as.data.frame()'s default method now also works fine with atomic
    objects inheriting from classes such as "roman", "octmode" and
    "hexmode", such fulfilling the wish of PR#18421, by Benjamin
    Feakins.
  * The as.data.frame.vector() utility now errors for wrong-length
    row.names.  It warned for almost six years, with "Will be an
    error!".
  * sessionInfo() now also contains La_version() and reports codepage
    and timezone when relevant, in both print() and toLatex() methods
    which also get new option tzone for displaying timezone
    information when locale = FALSE.
  * New function R_compiled_by() reports the C and Fortran compilers
    used to build R, if known.
  * predict(&lt;lm&gt;, newdata = *) no longer unnecessarily creates an
    offset of all 0s.
  * solve() for complex inputs now uses argument tol and by default
    checks for 'computational singularity' (as it long has done for
    numeric inputs).
  * predict(&lt;rank-deficient lm&gt;, newdata=*) now obeys a new argument
    rankdeficient, with new default "warnif", warning only if there
    are non-estimable cases in newdata.  Other options include
    rankdeficient = "NA", predicting NA for non-estimable newdata
    cases.  This addresses PR#15072 by Russ Lenth and is based on his
    original proposal and discussions in PR#16158 also by David Firth
    and Elin Waring.  Still somewhat experimental.
  * Rgui console implementation now works better with the NVDA screen
    reader when the full blinking cursor is selected.  The underlying
    improvements in cursor handling may help also other screen
    readers on Windows.
  * The drop-field control in GraphApp can now be left with the TAB
    key and all controls can be navigated in the reverse order using
    the Shift+TAB key, improving accessibility of the Rgui
    configuration editor.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now fully accurate
    (instead of to "only" minimally five digits).
  * demo(error.catching) now also shows off withWarnings() and
    tryCatchWEMs().
  * As an experimental feature the placeholder _ can now also be used
    in the rhs of a forward pipe |&gt; expression as the first argument
    in an extraction call, such as _$coef. More generally, it can be
    used as the head of a chain of extractions, such as _$coef[[2]].
  * Spaces in the environment variable used to choose the R session's
    temporary directory (TMPDIR, TMP and TEMP are tried in turn) are
    now fatal.  (On Windows the 'short path' version of the path is
    tried and used if that does not contain a space.)
  * all.equal.numeric() gets a new optional switch giveErr to return
    the numeric error as attribute.  Relatedly,
    stopifnot(all.equal&lt;some&gt;(a, b, ..)) is as "smart" now, as
    stopifnot(all.equal(....)) has been already, thus allowing
    customized all.equal&lt;Some&gt;() wrappers.
  * R on Windows is now able to work with path names longer than 260
    characters when these are enabled in the system (requires at
    least Windows 10 version 1607).  Packages should be updated to
    work with long paths as well, instead of assuming PATH_MAX to be
    the maximum length.  Custom front-ends and applications embedding
    R need to update their manifests if they wish to allow this
    feature.  See
    &lt;https://blog.r-project.org/2023/03/07/path-length-limit-on-windows&gt;
    for more information.
  * 'Object not found' and 'Missing argument' errors now give a more
    accurate error context. Patch provided by Lionel Henry in
    PR#18241.
  * The @ operator is now an S3 generic. Based on contributions by
    Tomasz Kalinowski in PR#18482.
  * New generic chooseOpsMethod() provides a mechanism for objects to
    resolve cases where two suitable methods are found for an Ops
    Group Generic. This supports experimenting with alternative
    object systems. Based on contributions by Tomasz Kalinowski in
    PR#18484.
  * inherits(x, what) now accepts values other than a simple
    character vector for argument what. A new generic, nameOfClass(),
    is called to resolve the class name from what. This supports
    experimenting with alternative object systems. Based on
    contributions by Tomasz Kalinowski in PR#18485.
  * Detection of BLAS/LAPACK in use (sessionInfo()) with FlexiBLAS
    now reports the current backend.
  * The "data.frame" method for subset() now warns about extraneous
    arguments, typically catching the use of = instead of == in the
    subset expression.
  * Calling a:b when numeric a or b is longer than one may now be
    made into an error by setting environment variable
    _R_CHECK_LENGTH_COLON_ to a true value, along the proposal in
    PR#18419 by Henrik Bengtsson.
  * density(x, weights = *) now warns if automatic bandwidth
    selection happens without using weights; new optional warnWbw may
    suppress the warning.  Prompted by Christoph Dalitz' PR#18490 and
    its discussants.
  * rm(list = *) is faster and more readable thanks to Kevin Ushey's
    PR#18492.
  * The plot.lm() function no longer produces a normal Q-Q plot for
    GLMs. Instead it plots a half-normal Q-Q plot of the absolute
    value of the standardized deviance residuals.
  * The print() method for class "summary.glm" no longer shows
    summary statistics for the deviance residuals by default.  Its
    optional argument show.residuals can be used to show them if
    required.
  * The tapply() function now accepts a data frame as its X argument,
    and allows INDEX to be a formula in that case. by.data.frame()
    similarly allows INDICES to be a formula.
  * The performance of df[j] &lt;- value (including for missing j) and
    write.table(df) has been improved for data frames df with a large
    number of columns.  (Thanks to Gabriel Becker's PR#18500,
    PR#18503 and discussants, prompted by a report from Toby Dylan
    Hocking on the R-devel mailing list.)
  * The matrix multiply operator %*% is now an S3 generic, belonging
    to new group generic matrixOps.  From Tomasz Kalinowski's
    contribution in PR#18483.
  * New function array2DF() to convert arrays to data frames,
    particularly useful for the list arrays created by tapply().
  DATES and TIMES:
  * On platforms where (non-UTC) datetimes before 1902 (or before
    1900 as with system functions on recent macOS) are guessed by
    extrapolating time zones from 1902-2037, there is a warning at
    the first use of extrapolation in a session.  (As all time zones
    post 2037 are extrapolation, we do not warn on those.)
  * (Platforms using --with-internal-tzone, including Windows and by
    default macOS). How years are printed in dates or date-times can
    be controlled by environment variable R_PAD_YEARS_BY_ZERO.  The
    default remains to pad to 4 digits by zeroes, but setting value
    no gives no padding (as used by default by glibc).
  * strftime() tries harder to determine the offset for the "%z"
    format, and succeeds on the mainstream R platforms.
  * strftime() has a limit of 2048 bytes on the string produced -
    attempting to exceed this is an error.  (Previously it silently
    truncated at 255 bytes.)
  * sessionInfo() records (and by default prints) the system time
    zone as part of the locale information.  Also, the source
    (system/internal) of the date-time conversion and printing
    functions.
  * Objects of class "POSIXlt" created in this version of R always
    have 11 components: component zone is always set, and component
    gmtoff is set for times in UTC and usually set on the (almost
    all) platforms which have C-level support, otherwise is NA.
  * There are comprehensive validity checks on the structure of
    objects of class "POSIXlt" when converting (including formatting
    and printing).  (This avoids mis-conversions of hand-crafted
    objects.)
  * There is some support for using the native date-time routines on
    macOS: this is only viable on recent versions (e.g. 12.6 and 13)
    and does get wrong some historical changes (before 1900, during
    WWII).  Use of --with-internal-tzone remains the default.
  * as.POSIXct(&lt;numeric&gt;) and as.POSIXlt(.) (without specifying
    origin) now work.  So does as.Date(&lt;numeric&gt;).
  * as.Date.POSIXct(., tz) now treats several tz values, notably
    "GMT" as equivalent to "UTC", proposed and improved by Michael
    Chirico and Joshua Ulrich in PR#17674.
  * Experimental balancePOSIXlt() utility allows using "ragged" and
    or out-of-range "POSIXlt" objects more correctly, e.g., in
    subsetting and subassignments.  Such objects are now documented.
    More experimentally, a "POSIXlt" object may have an attribute
    "balanced" indicating if it is known to be filled or fully
    balanced.
  * Functions axis.Date() and axis.POSIXct() are rewritten to gain
    better default tick locations and better default formats by using
    prettyDate(). Thanks to Swetlana Herbrandt.
  * The mapping of Windows' names for time zones to IANA's 'Olson'
    names has been updated.  When ICU is available (it is by
    default), it is used to get a mapping for the current region set
    in Windows.  This can be overridden by setting environment
    variable TZ to the desired Olson name - see OlsonNames() for
    those currently available.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 16
    and so packages that provide graphics devices should be
    reinstalled.
  * The grDevices and grid packages have new functions for rendering
    typeset glyphs, primarily: grDevices::glyphInfo() and
    grid::grid.glyph().
    Rendering of typeset glyphs is only supported so far on the
    Cairo-based graphics devices and on the pdf() and quartz()
    devices.
  * The defined behaviour for "clear" and "source" compositing
    operators (via grid::grid.group()) has been changed (to align
    better with simple interpretation of original Porter-Duff
    definitions).
  * Support for gradients, patterns, clipping paths, masks, groups,
    compositing operators, and affine transformations has been added
    to the quartz() device.
  INSTALLATION on a UNIX-ALIKE:
  * A system installation of generic LAPACK 3.10.0 or later will be
    preferred to the version in the R sources.
    configure option --with-lapack=no (equivalently --without-lapack)
    forces compilation of the internal LAPACK sources.
    If --with-lapack is not specified, a system liblapack is looked
    for and used if it reports version 3.10.0 or later and does not
    contain BLAS routines.
    Packages using LAPACK will need to be reinstalled if this changes
    to using an external library.
  * On aarch64 Linux platforms using GCC, configure now defaults to
  - fPIC (instead of -fpic), as desired in PR#18326.
  * configure now checks conversion of datetimes between POSIXlt and
    POSIXct around year 2020.  Failure (which has been seen on
    platforms missing tzdata) is fatal.
  * If configure option --with-valgrind-instrumentation is given
    value 1 or 2, option --with-system-valgrind-headers is now the
    default and ignored (with a warning).  It is highly recommended
    that the system headers are installed alongside valgrind: they
    are part of its packaging on some Linux distributions and
    packaged separately (e.g. in the valgrind-devel RPM) on others.
    configure will give a warning if they are not found.
    The system headers will be required in a future release of R to
    build with valgrind instrumentation.
  * libcurl 8.x is now accepted by configure: despite a change in
    major version number it changes neither API nor ABI.
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools43, an update of the Rtools42 toolchain.  It is
    based on gcc 12 and newer versions of MinGW-W64, binutils and
    libraries.  At this time R-devel can still be built using
    Rtools42 without changes, but when R-devel is installed via the
    installer, it will by default look for Rtools43.
  * Old make targets rsync-extsoft and 32-bit ones that are no longer
    needed have been removed.
  * Default builds (including for packages) no longer select C99.
    Thus the C standard used is the default for the compiler, which
    for the toolchain in Rtools43 is C17.  (This is consistent with
    Unix builds.)
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++17 where
    available (which it is on all currently checked platforms): if
    not C++14 or C++11 is used if available otherwise C++ is not
    supported.
  * USE_FC_LEN_T is the default: this uses the correct
    (compiler-dependent) prototypes for Fortran BLAS/LAPACK routines
    called from C/C++, and requires adjustment of many such calls -
    see 'Writing R Extensions' SS6.6.1.
  * There is initial support for C++23 as several compilers are now
    supporting -std=c++23 or -std=c++2b or similar.  As for C++20,
    there no additional configure checks for C++23 features beyond a
    check that the compiler reports a __cplusplus value greater than
    that in the C++20 standard.  C++ feature tests should be used.
  * There is support for a package to indicate the version of the C
    standard which should be used to compile it, and for the
    installing user to specify this.  In most cases R defaults to the
    C compiler's default standard which is C17 (a `bug-fix' of C11) -
    earlier versions of R or compilers may have defaulted to C99.
    Current options are:
    USE_C17 Use a standard that is at most C17.  The intention is to
    allow legacy packages to still be installed when later C
    standards become the default, including packages using new
    keywords as identifiers or with K&amp;R-style function
    declarations.  This will use C17 if available, falling back
    to C11.
    USE_C90 Use the C90 (aka C89) standard.  (As that standard did
    not require compilers to identify that version, all we can
    verify is that the compiler does not claim to be using a
    later standard.  It may accept C99 features - for example
    clang accepts // to make comments.)
    USE_C99 Use the C99 standard. This should be rarely needed - it
    avoids the few new features of C11/C17 which can be useful if
    a package assumes them if C17 is specified and they are not
    implemented.
    USE_C23 Use C23 (or in future, later).  Compiler/library support
    for C23 is still being implemented, but LLVM clang from
    15.0.0 and the upcoming GCC 13 have quite extensive support.
    These can be specified as part of the SystemRequirements field in
    the package's DESCRIPTION file or _via_ options --use-C17 and so
    on of R CMD INSTALL and R CMD SHLIB.
    For further details see "Writing R Extensions" SS1.2.5.
  * (Windows) A src/Makefile.ucrt or src/Makefile.win file is now
    included after R_HOME/etcR_ARCH/Makeconf and so no longer needs
    to include that file itself.  Installation of a package with such
    a file now uses a site Makevars file in the same way as a package
    with a src/Makevars.win file would.
  * configure is now passed crucial variables such as CC and CFLAGS
    in its environment, as many packages were not setting them (as
    documented in 'Writing R Extensions' SS1.2).
    This has most effect where configure is used to compile parts of
    the package - most often by cmake or libtool which obfuscate the
    actual compile commands used.
    Also used for configure.win and configure.ucrt on Windows.
  FORTRAN FLAGS:
  * The flag -fno-optimize-sibling-calls is no longer forced for
    gfortran 7 and later.  It should no longer be needed now using
    'hidden' character-length arguments when calling BLAS/LAPACK
    routines from C/C++ is the default even for packages.  (Unless
    perhaps packages call Fortran code from C/C++ without using R's
    headers and without allowing for these arguments.)
  C-LEVEL FACILITIES:
  * The deprecated S-compatibility macros DOUBLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * The deprecated legacy typedefs of Sint and Sfloat in header R.h
    are no longer defined, and that header no longer includes header
    limits.h from C nor climits from C++.
  * New macro CAD5R() is provided in Rinternals.h and used in a few
    places in the R sources.
  * ALTREP now supports VECSXP vectors. Contributed by Gabor Csardi
    in PR#17620.
  * The Rcomplex definition (in header R_ext/Complex.h) has been
    extended to prevent possible mis-compilation when interfacing
    with Fortran (PR#18430).  The new definition causes compiler
    warnings with static initializers such as {1, 2}, which can be
    changed to {.r=1, .i=2}.
    Using the new definition from C++ depends on compiler extensions
    supporting C features that have not been incorporated into the
    C++ standards but are available in g++ and clang++: this may
    result in C++ compiler warnings but these have been worked around
    for recent versions of common compilers (GCC, Apple/LLVM clang,
    Intel).
    It is intended to change the inclusion of header R_ext/Complex.h
    by other R headers, so C/C++ code files which make use of
    Rcomplex should include that header explicitly.
  UTILITIES:
  * R CMD check does more checking of package .Rd files, warning
    about invalid email addresses and (some) invalid URIs and noting
    empty \item labels in description lists.
  * R CMD check now also reports problems when reading package news
    in md (file NEWS.md) and (optionally) plain text (file NEWS)
    formats.
  * _R_CHECK_TIMINGS_ defaults to a value from the environment even
    for R CMD check --as-cran; this allows for exceptionally fast or
    slow platforms.
    It now applies to checking PDF and HTML versions of the manuals,
    and 'checking CRAN incoming feasibility'.
  * R CMD check can optionally (but included in --as-cran) check
    whether HTML math rendering _via_ KaTeX works for the package .Rd
    files.
  * Non-interactive debugger invocations can be trapped by setting
    the environment variable _R_CHECK_BROWSER_NONINTERACTIVE_ to a
    true value.  This is enabled by R CMD check --as-cran to detect
    the use of leftover browser() statements in the package.
  * The use of sprintf and vsprintf from C/C++ has been deprecated in
    macOS 13 and is a known security risk.  R CMD check now reports
    (on all platforms) if their use is found in compiled code:
    replace by snprintf or vsnprintf respectively. [*NB:* whether
    such calls get compiled into the package is platform-dependent.]
  * Where recorded at installation, R CMD check reports the C and
    Fortran compilers used to build R.
    It reports the OS in use (if known, as given by osVersion) as
    well as that R was built for.
    It notes if a C++ standard was specified which is older than the
    current default: many packages have used C++11 to mean 'not
    C++98' - as C++11 is the minimum supported since R 4.0.0, that
    specification can probably be removed.
  * R CMD INSTALL reports the compilers (and on macOS, the SDK) used,
    and this is copied to the output of R CMD check.
    Where a C++ standard is specified, it is reported.
  * R CMD check's 'checking compilation flags in Makevars' has been
    relaxed to accept the use of flags such as -std=f2008 in
    PKG_FFLAGS.
  * tools::buildVignettes() has a new argument skip, which is used by
    R CMD check to skip (and note) vignettes with unavailable
    \VignetteDepends (PR#18318).
  * New generic .AtNames() added to enable class-specific completions
    after @. The formerly internal function findMatches() is now
    exported, mainly for use in methods for .DollarNames() and
    .AtNames().
  DEPRECATED AND DEFUNCT:
  * default.stringsAsFactors() is defunct.
  * Calling as.data.frame.&lt;class&gt;() directly (for 12 atomic classes)
    is going to be formally deprecated, currently activated by
    setting the environment variable
    _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ to non-empty, which also
    happens in R CMD check --as-cran.
  BUG FIXES:
  * Hashed environments with sizes less than 5 can now grow.
    (Reported to R-devel by Duncan Garmonsway.)
  * as.character(&lt;Rd&gt;, deparse = TRUE) failed to re-escape curly
    braces in LaTeX-like text.  (Reported by Hadley Wickham in
    PR#18324.)
  * library() now passes its lib.loc argument when requiring Depends
    packages; reported (with fix) in PR#18331 by Mikael Jagan.
  * R CMD Stangle: improved message about 'Output' files.
  * head(x, n) and tail(x, n) now signal an error if n is not
    numeric, instead of incidentally "working" sometimes returning
    all of x.  Reported and discussed by Colin Fay, in PR#18357.
  * The "lm" method for summary() now gives the correct F-statistic
    when the model contains an offset.  Reported in PR#18008.
  * C() and `contrasts&lt;-`() now preserve factor level names when
    given a function object (as opposed a function name which did
    preserve names). Reported in PR#17616.
  * c(a = 1, 2)[[]] no longer matches 2 but rather signals a
    _classed_ error.  Reported and analysed by Davis Vaughan in
    PR#18367, a duplicate of PR#18004, by Jan Meis et al.  For
    consistency, NULL[[]] is also erroneous now.  x[[]] &lt;- v gives an
    error of the same class "MissingSubscriptError".
  * The relist() function of utils now supports NULL elements in the
    skeleton (PR#15854).
  * ordered(levels = *) (missing x) now works analogously to factor(,
    ordered=TRUE); reported (with fix) by Achim Zeileis in PR#18389.
  * User-defined Rd macro definitions can now span multiple lines,
    thanks to a patch from Duncan Murdoch. Previously, the Rd parser
    silently ignored everything after the first line.
  * Plain-text help (tools::Rd2txt()) now preserves an initial blank
    line for text following description list items.
  * tools::Rd2HTML() and tools::Rd2latex() no longer split \arguments
    and \value lists at Rd comments.
  * tools::Rd2latex() now correctly handles optional text outside
    \items of argument lists as well as bracketed text at the
    beginning of sections, e.g., \value{[NULL]}.
  * as.character(&lt;POSIXt&gt;) now behaves more in line with the methods
    for atomic vectors such as numbers, and is no longer influenced
    by options().  Ditto for as.character(&lt;Date&gt;).  The
    as.character() method gets arguments digits and OutDec with
    defaults _not_ depending on options().  Use of as.character(*,
    format = .) now warns.
  * Similarly, the as.character.hexmode() and *.octmode() methods
    also behave as good citizen methods and back compatibility option
    keepStr = TRUE.
  * The as.POSIXlt(&lt;POSIXlt&gt;) and as.POSIXct(&lt;POSIXct&gt;) default
    methods now do obey their tz argument, also in this case.
  * as.POSIXlt(&lt;Date&gt;) now does apply a tz (time zone) argument, as
    does as.POSIXct(); partly suggested by Roland Fuss on the R-devel
    mailing list.
  * as.Date.POSIXlt(x) now also works when the list components are of
    unequal length, aka "partially filled" or "ragged".
  * expand.model.frame() looked up variables in the wrong environment
    when applied to models fitted without data.  Reported in
    PR#18414.
  * time() now (also) uses the ts.eps = getOption("ts.eps") argument
    and thus by default rounds values very close to the start (or
    end) of a year.  Based on a proposal by Andre"i V. Kostyrka on
    R-help.
  * Printing of a factanal() result with just one factor and sort =
    TRUE now works regularly, fixing PR#17863 by Timothy Bates,
    thanks to the 'R Contributors' working group.
  * Printing 0-length objects of class "factor", "roman", "hexmode",
    "octmode", "person", "bibentry", or "citation" now prints
    something better, one of which fixes PR#18422, reported by
    Benjamin Feakins.
  * Sys.timezone() queries timedatectl only if systemd is loaded;
    addressing a report by Jan Gorecki in PR#17421.
  * The formula method of cor.test() had scoping problems when
    environment(formula) was not the calling environment; reported
    with a patch proposal by Mao Kobayashi in PR#18439.
  * attach() of an environment with active bindings now preserves the
    active bindings.  Reported by Kevin Ushey in PR#18425.
  * BLAS detection now works also with system-provided libraries not
    available as regular files.  This fixes detection of the
    Accelerate framework on macOS since Big Sur.  Reported by David
    Novgorodsky.
  * download.file() gives a helpful error message in case of an
    invalid download.file.method option, thanks to Colin Fay's report
    in PR#18455.
  * Sporadic crashes of Rterm when using completion have been fixed.
  * Rprof() is now more reliable.  A livelock in thread
    initialization with too short sampling interval has been fixed on
    macOS.  A deadlock in using the C runtime has been fixed on
    Windows.  A potential deadlock has been prevented on Unix.
  * Cursor placement in Rgui now works even after a fixed-width font
    is selected.
  * Mandatory options (options()) are now set on startup so that
    saving and restoring them always works (PR#18372).
  * Package installation, R CMD INSTALL or install.packages(*), now
    parses each of the &lt;pkg&gt;/R/*.R files individually instead of
    first concatenating and then parse()ing the large resulting file.
    This allows parser or syntax errors to be diagnosed with correct
    file names and line numbers, thanks to Simon Dedman's report and
    Bill Dunlap's patch in PR#17859.
    This _does_ require syntactically self contained R source files
    now, fixing another inadvertent bug.
  * predict.lm(&lt;model with offset&gt;) now finds the offset in the
    correct environment, thanks to Andr'e Gillibert's report and patch
    in PR#18456.
  * getInitial(&lt;formula&gt;) now finds the selfStart model in the
    correct environment.  (Reported by Ivan Krylov in PR#18368.)
  * Fix for possible segfault when using recently-added graphics
    features, such as gradients, clipping paths, masks, and groups
    with pdf(file=NULL).
  * class(m) &lt;- class(m) no longer changes a matrix m by adding a
    class _attribute_.
  * packageDate(pkg) now only warns once if there is no pkg.
  * When ts() creates a multivariate time series, "mts", it also
    inherits from "array" now, and is.mts() is documented _and_
    stricter.
  * Rd2txt() now preserves line breaks of \verb Rd content and from
    duplicated \cr.  The former also fixes the rendering of verbatim
    output from Rd \Sexpr in plain-text help.
  * uniroot(f, interval) should no longer wrongly converge _outside_
    the interval in some cases where abs(f(x)) == Inf for an x at the
    interval boundary, thanks to posts by Ben Bolker and Serguei
    Sokol on R-devel.
  * Vectorized alpha handling in palette functions such as in gray(),
    rainbow(), or hcl.colors() works correctly now, thanks to Achim
    Zeileis' report and patch in PR#18476.
  * Formatting and print()ing of bibentry objects has dropped the
    deprecated citation.bibtex.max argument, such that the bibtex
    argument's default for print.bibentry() depends directly on the
    citation.bibtex.max option, whereas in format.bibentry() the
    option no longer applies.
  * Attempting to use a character string naming a foreign function
    entry point in a foreign function call in a package will now
    signal an error if the packages has called R_forceSymbols to
    specify that symbols must be used.
  * An error in table() could permanently set options(warn=2)
    promoting all subsequent warnings to errors.
  * The sigma() function gave misleading results for binary GLMs.  A
    new method for objects of class "glm" returns the square root of
    the estimate of the dispersion parameter using the same
    calculation as summary.glm().
  * bs() and ns() in the (typical) case of automatic knot
    construction, when some of the supposedly inner knots coincide
    with boundary knots, now moves them inside (with a warning),
    building on PR#18442 by Ben Bolker.
  * R CMD on Windows now skips the site profile with --no-site-file
    and --vanilla even when R_PROFILE is set (PR#18512, from Kevin
    Ushey).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1686916800">- CHANGES IN R 4.3.1:
  C-LEVEL FACILITIES:
  * The C-level API version of R's integrate(), Rdqags() in Applic.h,
    now returns the correct number of integrand evaluations neval,
    fixing PR#18515 reported and diagnosed by Stephen Wade.
  * The C prototypes for LAPACK calls dspgv and dtptrs in
    R_exts/Lapack.h had one too many and one too few character length
    arguments - but this has not caused any known issues. To get the
    corrected prototypes, include
    [#]include &lt;Rconfig.h&gt; // for PR18534fixed
    [#]ifdef PR18534fixed
    [#] define usePR18534fix 1
    [#]endif
    [#]include &lt;R_exts/Lapack.h&gt;
    in your C/C++ code (PR#18534).
  INSTALLATION:
  * Many of the checks of esoteric Internet operations and those
    using unreliable external sites have been moved to a new target
    that is not run by default and primarily intended for the core
    developers.  To run them use
    cd tests; make test-Internet-dev
  BUG FIXES:
  * .S3methods(), typically called from methods(), again marks
    methods from package base as visible.
    Also, the visibility of non-base methods is again determined by
    the method's presence in search().
  * tools::Rdiff() is now more robust against invalid strings, fixing
    installation tests on Windows without Rtools installed
    (PR#18530).
  * Fix (new) bug in hcl.colors(2, *), by Achim Zeileis (PR#18523).
  * head(., &lt;illegal&gt;) and tail(..) now produce more useful "Error in
    ...." error messages, fixing PR#18362.
  * Package code syntax on Windows is checked in UTF-8 when UTF-8 is
    the native encoding.
  * na.contiguous(x) now also returns the first run, when it is at
    the beginning and there is a later one of the same length;
    reported to R-devel, including a fix, by Georgi Boshnakov.
    Further, by default, it modifies only an existing attr(*,"tsp")
    but otherwise no longer sets one.
  * chol(&lt;not pos.def&gt;, pivot = &lt;T|F&gt;) now gives a correct error or
    warning message (depending on pivot), thanks to Mikael Jagan's
    (PR#18541).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1699012800">- CHANGES IN R 4.3.2:
  NEW FEATURES:
  * The default initialization of the "repos" option from the
    repositories file at startup can be skipped by setting
    environment variable R_REPOSITORIES to NULL such that
    getOption("repos") is empty if not set elsewhere.
  * qr.X() is now an implicit S4 generic in methods.
  * iconv(to = "ASCII//TRANSLIT") is emulated using substitution on
    platforms which do not support it (notably Alpine Linux).  This
    should give a human-readable conversion in ASCII on all platforms
    (rather than NA_character_).
  * trans3d() gains options continuous and verbose addressing the
    problem of possible "wrap around" when projecting too long
    curves, as reported by Achim Zeileis in PR#18537.
  * tools::showNonASCII() has been rewritten to work better on macOS
    14 (which has a changed implementation of iconv()).
  * tiff(type = "quartz") (the default on macOS) now warns if
    compression is specified: it continues to be ignored.
  INSTALLATION on a UNIX-ALIKE:
  * There is some support for building with Intel's LLVM-based
    compilers on x86_64 Linux, such as (C) icx, (C++) ipcx and
    (Fortran) ifx from oneAPI 2023.x.y.
  * There is support for using LLVM's flang-new as the Fortran
    compiler from LLVM 16.0.x (preferably 17.0.0 or later).
  UTILITIES:
  * R CMD check reports the use of the Fortran 90 random number
    generator RANDOM_NUMBER() and the subroutines to initialize it.
    'Writing R Extensions' has example code to use R's RNGs from
    Fortran.
  BUG FIXES:
  * substr(x, n, L) &lt;- cc now works (more) correctly for multibyte
    UTF-8 strings x when L &gt; nchar(x), thanks to a report and patch
    by 'Architect 95'.
  * contrib.url(character()) now returns 0-length character() as
    documented, which also avoids spurious warnings from
    available.packages() et al. in the edge case of an empty vector
    of repository URLs.
  * readChar(., 4e8) no longer fails, thanks to Kodi Arfer's report
    (PR#18557).
  * lapply(&lt;list&gt;, as.data.frame) no longer warns falsely for some
    base vector components.
  * Communication between parent and child processes in the multicore
    part of parallel could fail on platforms that do not support an
    arbitrarily large payload in system functions read()/write() on
    pipes (seen on macOS where a restriction to INT_MAX bytes is
    documented, without doing a partial read unlike Linux). The
    payload is now split into 1Gb chunks to avoid that problem.
    (PR#18571)
  * qqplot(x,y, conf.level=.) gives better confidence bounds when
    length(x) != length(y), thanks to Alexander Ploner's report and
    patch proposal (PR#18557).
  * norm(&lt;0-length&gt;, "2") now gives zero instead of an error, as all
    the other norm types, thanks to Mikael Jagan's PR#18542.
  * Build-stage Rd macros \packageAuthor and \packageMaintainer now
    process Authors@R, fixing NA results when the package DESCRIPTION
    omits Author and Maintainer fields.
  * Formatting and printing complex numbers could give things like
    0.1683-0i because of rounding error: -0i is now replaced by +0i.
  * postscript() refused to accept a title comment containing the
    letter "W" (PR#18599).
  * isoreg(c(1,Inf)) signals an error instead of segfaulting, fixing
    PR#18603.
  * tiff(type = "Xlib") was only outputting the last page of
    multi-page plots.
  * tools::latexToUtf8() again knows about \~{n} and other letters
    with tilde, fixing a regression in R 4.3.0, and about \^{i} as an
    alternative to \^{\i} (similarly with other accents).
    Furthermore, LaTeX codes for accented I letters are now correctly
    converted, also fixing related mistakes in
    tools::encoded_text_to_latex().
  * tar(*, tar = "internal") no longer creates out-of-spec tar files
    in the very rare case of user or group names longer than 32
    bytes, fixing PR#17871 with thanks to Ivan Krylov.
  * When using the "internal" timezone datetime code, adding a
    fraction of a second no longer adds one second, fixing PR#16856
    from a patch by Ivan Krylov.
  * tools::checkRd() no longer produces spurious notes about
    "unnecessary braces" from multi-line Rd results of \Sexpr macros.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1709208000">- CHANGES IN R 4.3.3:
  NEW FEATURES:
  * iconv() now fixes up variant encoding names such as "utf8"
    case-insensitively.
  DEPRECATED AND DEFUNCT:
  * The legacy encoding = "MacRoman" is deprecated in pdf() and
    postscript(): support was incomplete in earlier versions of R.
  BUG FIXES:
  * Arguments are now properly forwarded to methods on S4 generics
    with ... in the middle of their formal arguments. This was broken
    for the case when a method introduced an argument but did not
    include ... in its own formals. Thanks to Herv'e Pag`es for the
    report PR#18538.
  * Some invalid file arguments to pictex(), postscript() and xfig()
    opened a file called NA rather than throw an error.  These
    included postscript(NULL) (which some people expected to work
    like pdf(NULL)).
  * Passing filename = NA to svg(), cairo_pdf(), cairo_ps() or the
    Cairo-based bitmap devices opened a file called NA: it now throws
    an error.
  * quartz(file = NA) opened a file called NA, including when used as
    a Quartz-based bitmap device.  It now gives an error.
  * rank(&lt;long vector&gt;) now works, fixing PR#18617, thanks to Ilia
    Kats.
  * seq.int() did not adequately check its length.out argument.
  * match(&lt;POSIXct&gt;, .) is correct again for differing time zones,
    ditto for "POSIXlt", fixing PR#18618 reported by Bastian Klein.
  * drop.terms(*, dropx = &lt;0-length&gt;) now works, fixing PR#18563 as
    proposed by Mikael Jagan.
  * drop.terms(*) keeps + offset(.) terms when it should, PR#18565,
    and drop.terms() no longer makes up a response, PR#18566, fixing
    both bugs thanks to Mikael Jagan.
  * getS3method("t", "test") no longer finds the t.test() function,
    fixing PR#18627.
  * pdf() and postscript() support for the documented Adobe encodings
    "Greek" and "Cyrilllic" was missing (although the corresponding
    Windows' codepages could be used).
  * Computations of glyph metric information for pdf() and
    postscript() did not take into account that transliteration could
    replace one character by two or more (only seen on macOS 14) and
    typically warned that the information was not known.
  * rank(x) no longer overflows during integer addition, when
    computing rank average for largish but not-yet long vector x,
    fixing PR#18630, thanks to Ilia Kats.
  * list.files() on Windows now returns also files with names longer
    that 260 bytes (the Windows limit is 260 characters).
    Previously, some file names particularly with 'East Asian'
    characters were omitted.
  * cov2cor(&lt;0 x 0&gt;) now works, fixing PR#18423 thanks to Mikael
    Jagan and Elin Waring.
  * cov2cor(&lt;negative diagonal&gt;) and similar now give one warning
    instead of two, with better wording, fixing PR#18424 thanks to
    Mikael Jagan.
  * tools:: startDynamicHelp() now ensures port is in proper range,
    fixing PR#18645.
  * pbeta(x, a,b) is correct now for x=0 or 1 in the boundary cases
    where a or b or both are 0, fixing PR#18672 thanks to Michael
    Fay.
  * pmatch(x, table) for large table, also called for data frame row
    selection, dfrm[nm, ], is now interruptible, fixing PR#18656.
  * predict(&lt;rank-deficient lm&gt;, newdata=*) fix computing of nbasis,
    see Russ Lenth's comment 29 in PR#16158.
  * Added a work-around for a bug in macOS 14.3.1 and higher which
    prevents R plots in the Quartz Cocoa device from updating on
    screen.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1713960000">- CHANGES IN R 4.4.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Startup banners, R --version, sessionInfo() and R CMD check no
    longer report (64-bit) as part of the platform as this is almost
    universal - the increasingly rare 32-bit platforms will still
    report (32-bit).
    On Windows, ditto for window titles.
  * is.atomic(NULL) now returns FALSE, as NULL is not an atomic
    vector.  Strict back-compatibility would replace is.atomic(foo)
    by (is.null(foo) || is.atomic(foo)) but should happen only
    sparingly.
  NEW FEATURES:
  * The confint() methods for "glm" and "nls" objects have been
    copied to the stats package.  Previously, they were stubs which
    called versions in package MASS. The MASS namespace is no longer
    loaded if you invoke (say) confint(glmfit).  Further, the "glm"
    method for profile() and the plot() and pairs() methods for class
    "profile" have been copied from MASS to stats.  (profile.nls()
    and plot.profile.nls() were already in stats.)
  * The confint() and profile methods for "glm" objects have gained a
    possibility to do profiling based on the Rao Score statistic in
    addition to the default Likelihood Ratio. This is controlled by a
    new test = argument.
  * The pairs() method for "profile" objects has been extended with a
    which = argument to allow plotting only a subset of the
    parameters.
  * The "glm" method for anova() computes test statistics and
    p-values by default, using a chi-squared test or an F test
    depending on whether the dispersion is fixed or free.  Test
    statistics can be suppressed by giving argument test a false
    logical value.
  * In setRepositories() the repositories can be set using their
    names via name = instead of index ind =.
  * methods() and .S3methods() gain a all.names option for the (rare)
    case where functions starting with a . should be included.
  * Serializations can now be interrupted (e.g., by Ctrl-C on a
    Unix-alike) if they take too long, e.g., from save.image(),
    thanks to suggestions by Ivan Krylov and others on R-devel.
  * New startup option --max-connections to set the maximum number of
    simultaneous connections for the session.  Defaults to 128 as
    before: allowed values up to 4096 (but resource limits may in
    practice restrict to smaller values).
  * R on Windows (since Windows 10 2004) now uses the new Segment
    Heap allocator. This may improve performance of some
    memory-intensive applications.
  * When R packages are built, typically by R CMD build &lt;pkg&gt;, the
    new --user=&lt;build_user&gt; option overrides the (internally
    determined) user name, currently Sys.info()["user"] or LOGNAME.
    This is a (modified) fulfillment of Will Landau's suggestion in
    PR#17530.
  * tools::testInstalledBasic() gets new optional arguments outDir
    and testSrcdir, e.g., allowing to use it in a &lt;builddir&gt; !=
    &lt;srcdir&gt; setup, and in standard "binary" Windows installation
  * if* a source tests/ folder is present.
  * range(&lt;DT_with_Inf&gt;, finite = TRUE) now work for objects of class
    "Date", "POSIXct", and "POSIXlt" with infinite entries,
    analogously to range.default(), as proposed by Davis Vaughan on
    R-devel.  Other range()-methods can make use of new function
    .rangeNum().
  * New .internalGenerics object complementing .S3PrimitiveGenerics,
    for documentation and low-level book-keeping.
  * grid() now invisibly returns the x- and y- coordinates at which
    the grid-lines were drawn.
  * norm(., type) now also works for complex matrices.
  * kappa(., exact = TRUE, norm = *) now works for all norms and also
    for complex matrices.  In symmetric / triangular cases, the new
    argument uplo = "U" | "L" allows the upper or lower triangular
    part to be specified.
  * memDecompress(type = "unknown") recognizes compression in the
    default 'zlib' format as used by memCompress(type = "gzip").
  * memCompress() and memDecompress() will use the libdeflate library
    (&lt;https://github.com/ebiggers/libdeflate&gt;) if installed.  This
    uses the same type of compression for type = "gzip" but is 1.5-2x
    faster than the system libz library on some common platforms: the
    speed-up may depend on the library version.
  * diff() for objects of class "Date", "POSIXct", and "POSIXlt"
    accepts a units argument passed via ....
  * Dynamic help now does a much better job of rendering package
    DESCRIPTION metadata.
  * Rprof() gains an event argument and support for elapsed (real)
    time profiling on Unix (PR#18076).
  * filled.contour() gains a key.border argument.
  * tools::update_pkg_po() gets arguments pot_make and mo_make for
    _not_ re-making the corresponding files, and additionally a
    verbose argument.
  * Hexadecimal string colour specifications are now accepted in
    short form, so, for example, we can use "#123", which is
    equivalent to "#112233".
    Thanks to MikeFC for the original idea and Ella Kaye, Malcolm
    Barrett, George Stagg, and Hanne Oberman for the patch.
  * Plain-text help shows \var markup by angle brackets.
  * The new experimental primitive function declare() is intended to
    eventually allow information about R code to be communicated to
    the interpreter, compiler, and code analysis tools. The syntax
    for declarations is still being developed.
  * Functions psmirnov(), qsmirnov() and rsmirnov() in package stats
    have had argument two.sided renamed to alternative, to take into
    account that the permutation distributions of the one-sided
    statistics can be different in the case of ties.  Consequence of
    PR#18582.
  * sort() is now an implicit S4 generic in methods.
  * Formatting and printing, format(z), print(z), of complex vectors
    z no longer zap relatively small real or imaginary parts to zero,
    fixing PR#16752.  This is an API change, as it was documented
    previously to round real and imaginary parts together on purpose,
    producing nicer looking output.  As mentioned, e.g. in the PR,
    this change is compatible with many other "R-like" programming
    environments.
    We have simplified the internal code and now basically format the
    real and imaginary parts independently of each other.
  * New experimental functions Tailcall() and Exec() to support
    writing stack-space-efficient recursive functions.
  * Where characters are attempted to be plotted by pdf(),
    postscript() and xfig() which are not in the selected 8-bit
    character set (most often Latin-1) and the R session is using a
    UTF-8 locale, the warning messages will show the UTF-8 character
    rather than its bytes and one dot will be substituted per
    character rather than per byte.  (Platforms whose iconv() does
    transliteration silently plot the transliteration.)
    In a UTF-8 locale some transliterations are now done with a
    warning (e.g., dashes and Unicode minus to hyphen, ligatures are
    expanded, permille (‰) is replaced by o/oo), although the OS may
    have got there first.  These are warnings as they will continue
    to be replaced by dots in earlier versions of R.
  * The matrix multiplication functions crossprod() and tcrossprod()
    are now also primitive and S3 generic, as %*% had become in R
    4.3.0.
  * source() and example() have a new optional argument catch.aborts
    which allows continued evaluation of the R code after an error.
  * The non-Quartz tiff() devices allow additional types of
    compression if supported by the platform's libtiff library.
  * The list of base and recommended package names is now provided by
    tools::standard_package_names().
  * cairo_pdf() and cairo_ps() default to onefile = TRUE to closer
    match pdf() and postscript().
  * New option catch.script.errors provides a documented way to catch
    errors and then continue in non-interactive use.
  * L %||% R newly in base is an expressive idiom for the phrases
    if(!is.null(L)) L else R or if(is.null(L)) R else L.
  * The return value from warnings() now always inherits from
    "warnings" as documented, now also in the case of no warnings
    where it previously returned NULL.
  * as.complex("1i") now returns 0 + 1i instead of NA with a warning.
  * z &lt;- c(NA, 1i) now keeps the imaginary part Im(z[1]) == 0, no
    longer coercing to NA_complex_.  Similarly, cumsum(z) correctly
    sums real and imaginary parts separately, i.e., without
    "crosstalk" in case of NAs.
  * On Alpine Linux iconv() now maps "latin2", "latin-2", "latin9"
    and "latin-9" to encoding names the OS knows about
    (case-insensitively).
  * iconv(sub = "Unicode") now always zero-pads to four (hex) digits,
    rather than to 4 or 8.  (This seems to have become the convention
    once Unicode restricted the number of Unicode points to 2^21 - 1
    and so will never need more than 6 digits.)
  * NCOL(NULL) now returns 0 instead of 1, for consistency with
    cbind().
  * The information for the Euro glyph missing from the Adobe .afm
    files for the Courier, Helvetica and Times families has been
    copied from their URW equivalents - this will improve vertical
    centring in the pdf() and postscript() devices.
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.12.0.  The changes are almost entirely cosmetic.
  * The included LAPACK sources have been updated to version 3.12.0
    and some further double-complex routines added.
  * There are new font families for the 2014--5 URW 2.0 fonts (see
    ?pdf) which are included in recent versions of Ghostscript.
    These have font widths for most Greek glyphs and a few others
    which were missing from the original versions (whose font
    families remain available for reproducibility, although
    Ghostscript-based viewers will render using the 2.0 versions).
  * Improve the large-n efficiency of as.matrix(&lt;dist&gt;), thanks an R
    contributors effort, notably by Tim Taylor and Heather Turner,
    see PR#18660.
  * The default and numeric methods of all.equal() get a check.class
    option.
  * zapsmall() gets new optional arguments, function mFUN and min.d,
    for extra flexibility; fulfills a wish in PR#18199.  Also, it is
    now an implicit S4 generic in package methods.
  * The Rd filter for aspell() gains an ignore argument.
  * New generic function sort_by(), primarily useful for the
    data.frame method which can be used to sort rows of a data frame
    by one or more columns.
  * The icence headers for the RPC code in src/extra/xdr have been
    updated to use the GPL-compatible licence published by Oracle
    America in 2010.
  * New function pkg2HTML() in tools to create single-page HTML
    reference manuals for R packages.
  * The byte code evaluator now uses less C stack space for recursive
    calls to byte-compiled functions. It also makes more of an effort
    to avoid allocations for scalar return values.
  * New completion option backtick (disabled by default) allows
    non-syntactic completions to be wrapped in backquotes. This is
    currently only useful for Jupyter notebooks via the IRkernel
    package, and may cause problems for other backends.
  INSTALLATION:
  * The parser has been updated to work with bison 3.8.2, which is
    now used for the pre-generated parsers in gram.c, file.c, and
    gramRd.c. A few parser error messages have changed, which may
    affect code that relies on exact messages.
  INSTALLATION on a UNIX-ALIKE:
  * System valgrind headers are now required to use configure option
  - -with-valgrind-instrumentation with value 1 or 2.
  * configure will warn if it encounters a 32-bit build, as that is
    nowadays almost untested.
  * Environment variable R_SYSTEM_ABI is no longer used and so no
    longer recorded in etc/Renviron (it was not on Windows and was
    only ever used when preparing package tools).
  * If the libdeflate library and headers are available, libdeflate
    rather than libz is used to (de)compress R objects in lazy-load
    databases.  Typically tasks spend up to 5% of their time on such
    operations, although creating lazy-data databases is one of the
    exceptions.
    This can be suppressed if the library is available by the
    configure option --without-libdeflate-compression.
  * configure option --enable-lto=check has not worked reliably since
    2019 and has been removed.
  * The minimum autoconf requirement for a maintainer build has been
    increased to autoconf 2.71.
    It is intended to increase this to 2.72 for R 4.5.0: the
    distributed configure file was generated using 2.72.
  * The minimum version requirement for an external LAPACK has been
    reduced to 3.9.0.
  * No default C++ compiler is set if no C++17 compiler is detected:
    there is no longer an automatic fallback to C++14 or C++11.
    Compilers from the last five years should have sufficient
    support: for others macros CXX and CXXSTD can be set in file
    config.site to provide a fallback if needed.
    The Objective-C++ compiler now by default uses the standard
    selected by R for C++ (currently C++17) rather than the default
    standard for the C++ compiler (which on macOS is still C++98).
  INSTALLATION on macOS:
  * A new configure option --with-newAccelerate makes use of Apple's
    'new' BLAS / LAPACK interfaces in their Accelerate framework.
    Those interfaces are only available in macOS 13.3 or later, and
    building requires SDK 13.3 or later (from the Command Line Tools
    or Xcode 14.3 or later).
    By default the option uses new Accelerate for BLAS calls: to also
    use it for LAPACK use option --with-newAccelerate=lapack.  The
    later interfaces provide LAPACK 3.9.1 rather than 3.2.1: 3.9.1 is
    from 2021-04 and does not include the improved algorithms
    introduced in LAPACK 3.10.0 (including for BLAS calls).
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools44, an update of the Rtools43 toolchain.  It is
    based on GCC 13 and newer versions of MinGW-W64, binutils and
    libraries (targeting 64-bit Intel CPUs).  R-devel can no longer
    be built using Rtools43 without changes.
  * Rtools44 has experimental support for 64-bit ARM (aarch64) CPUs
    _via_ the LLVM 17 toolchain using lld, clang/flang-new and
    libc++.
  UTILITIES:
  * R CMD check notes when S4-style exports are used without
    declaring a strong dependence on package methods.
  * tools::checkRd() (used by R CMD check) detects more problems with
    \Sexpr-based dynamic content, including bad nesting of \Sexprs
    and invalid arguments.
  * tools::checkRd() now reports Rd titles and section names ending
    in a period; this is ignored by R CMD check unless environment
    variable _R_CHECK_RD_CHECKRD_MINLEVEL_ is set to -5 or smaller.
  * R CMD check now notes Rd files without an \alias, as long
    documented in 'Writing R Extensions' §1.3.1.  The check for a
    missing \description has been moved from tools::checkRd() to
    tools::checkRdContents().
  * R CMD check now visits inst/NEWS.Rd and OS-specific man
    subdirectories when checking Rd files.
  * tools::checkDocFiles() and tools::checkRdContents() now also
    check internal Rd files by default, but "specially" (ignoring
    missing documentation of arguments).
  * R CMD Rdiff gets option --useEx.
  * R CMD check now warns on non-portable uses of Fortran KIND such
    as INTEGER(KIND=4) and REAL(KIND=8).
    To see the failing lines set environment variable
    _R_CHECK_FORTRAN_KIND_DETAILS_ to a true value.
  * When checking Rd files, R CMD check now notes some of the "lost
    braces" that tools::checkRd() finds.  Typical problems are Rd
    macros missing the initial backslash (e.g., code{...}), in-text
    set notation (e.g., {1, 2}, where the braces need escaping), and
    \itemize lists with \describe-style entries of the form
    \item{label}{description}.
  * R CMD INSTALL (and hence check) will compile C++ code with
  - DR_NO_REMAP if environment variable _R_CXX_USE_NO_REMAP_ is set
    to a true value.  It is planned that this will in future become
    the default for compiling C++.
  * The new built-in Rd macro \dontdiff{} can be used to mark example
    code whose output should be ignored when comparing check output
    to reference output (tests/Examples/&lt;pkg&gt;-Ex.Rout.save).  The
    \dontdiff tag, like \donttest, is _not_ shown on the rendered
    help page, so provides a clean alternative to ##
    IGNORE_RDIFF_(BEGIN|END) comments.
  * R CMD build when there is no NAMESPACE, now uses the recommended
    exportPattern("^[^.]"), instead of exporting everything.
  * R CMD check now warns about non-ASCII characters in the NAMESPACE
    file (in addition to R files). Such packages are not portable and
    may fail to install on some platforms.
  C-LEVEL FACILITIES:
  * Headers R_ext/Applic.h and R-ext/Linpack.h used to include
    R_ext/BLAS.h although this was undocumented and unneeded by their
    documented entry points.  They no longer do so.
  * New function R_missing(), factored out from do_missing(), used to
    fix PR#18579.
  * SEXP type S4SXP has been renamed to OBJSXP to support
    experimenting with alternative object systems.  The S4SXP value
    can still be used in C code but is now deprecated.  Based on
    contributions from the R Consortium's Object-Oriented Programming
    Working Group.
  * New function pow1p(x,y) for accurate (1+x)^y.
  * mkCharLenCE was incorrectly documented to take a size_t length
    but was implemented with int (and character strings in R are
    limited to 2^31 - 1 bytes).
  DEPRECATED AND DEFUNCT:
  * data() no longer handles zipped data from long-defunct (since R
    2.13.0) --use-zip-data installations.
  * The legacy graphics devices pictex() and xfig() are now
    deprecated.  They do not support recent graphics enhancements and
    their font handling is rudimentary. The intention is to retain
    them for historical interest as long as they remain somewhat
    functional.
  * Support for encoding = "MacRoman" has been removed from the pdf()
    and postscript() devices - this was a legacy encoding supporting
    classic macOS up to 2001 and no longer has universal libiconv
    support.
  * is.R() is deprecated as no other S dialect is known to be in use
    (and this could only identify historical dialects, not future
    ones).
    Further information on calls can be obtained by setting the
    environment variable _R_DEPRECATED_IS_R_ to error which turns the
    deprecation warning into an error and so by default gives a
    traceback.  (This is done by R CMD check --as-cran.)
  * UseMethod() no longer forwards local variables assigned in the
    generic function into method call environments before evaluating
    the method body. This makes method calls behave more like
    standard function calls and makes method code easier to analyze
    correctly.
  * The twelve as.data.frame.&lt;class&gt;() methods which were deprecated
    only via _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ and in R CMD
    check --as-cran are formally deprecated now in favour of calling
    as.data.frame() or as.data.frame.vector().  The deprecation
    "check" now works also when as.data.frame() is S4 generic thanks
    to Ivan Krylov.
  * The default method for the directional comparison operators &lt;, &gt;,
    &lt;=, and &gt;= now signals an error when one of the operands is a
    language object, i.e. a symbol or a call.
  * For terms.formula(), deprecate abb and neg.out arguments
    _formally_ in addition to just documenting it.
  BUG FIXES:
  * The methods package is more robust to not being attached to the
    search path.  More work needs to be done.
  * pairwise.t.test() misbehaved when subgroups had 0 DF for
    variance, even with pool.sd = TRUE.  (PR#18594 by Jack Berry).
  * Probability distribution functions [dpq]&lt;distrib&gt;(x, *), but also
    bessel[IKJY](x, .) now consistently preserve attributes(x) when
    length(x) == 0, e.g., for a 2 x 0 matrix, thanks to Karolis
    Koncevičius' report PR#18509.
  * Group "Summary" computations such as sum(1:3, 4, na.rm = 5, NA,
    7, na.rm = LL) now give an error instead of either 17 or NN for
    LL true or false, as proposed by Ivan Krylov on the R-devel
    mailing list.  (This also means it is now an error to specify
    na.rm more than once.)
  * as.complex(x) now returns complex(real = x, imaginary = 0) for
    _all_ numerical and logical x, notably also for NA or
    NA_integer_.
  * Directories are now omitted by file.copy(, recursive = FALSE) and
    in file.append() (PR#17337).
  * gsub() and sub() are now more robust to integer overflow when
    reporting errors caused by too large input strings (PR#18346).
  * Top-level handlers are now more robust to attempts to remove a
    handler whilst handlers are running (PR#18508).
  * The handling of Alt+F4 in dialogs created on Windows using
    GraphApp has been fixed (PR#13870).
  * density() more consistently computes grid values for the
    FFT-based convolution, following Robert Schlicht's analysis and
    proposal in PR#18337, correcting density values typically by a
    factor of about 0.999.  Argument old.coords = TRUE provides back
    compatibility.
  * palette.colors() gains a name argument that defaults to FALSE
    controlling whether the vector of colours that is returned has
    names (where possible).  PR#18529.
  * tools::xgettext() no longer extracts the (non-translatable) class
    names from warningCondition and errorCondition calls.
  * S3method(&lt;gen&gt;, &lt;class&gt;, &lt;func&gt;) in the NAMESPACE file now works
    (again) when &lt;func&gt; is visible from the namespace, e.g.,
    imported, or in base.
  * getParseData(f) now also works for a function defined in the
    first of several &lt;pkg&gt;/R/*.R source files, thanks to Kirill
    Müller's report and Duncan Murdoch's patch in PR#16756.
  * Rd \Sexpr macros with nested #ifdef conditionals were not
    processed.
  * A non-blocking connection with non-default encoding (such as a
    socket) now correctly returns from readLines() after new data has
    arrived also when its EOF had been reached previously.  Thanks to
    Peter Meilstrup's report on R-devel and Ivan Krylov's report and
    patch proposal in PR#18555.
  * tools::checkRdContents() failed to detect empty argument
    descriptions when they spanned multiple lines, including those
    generated by prompt().  These cases are now noted by R CMD check.
  * Plain-text help no longer outputs spurious colons in the
    arguments list (for multi-line \item labels in the Rd source).
  * kappa() and rcond() work correctly in more cases; kappa(., norm =
    "2") now warns that it computes the 1-norm with (default) exact =
    FALSE; prompted by Mikael Jagan's quite comprehensive PR#18543.
  * Rd skeletons generated by prompt() or promptData() now use a
    dummy title (so R CMD build works).  tools::checkRdContents() has
    been updated to detect such template leftovers, including from
    promptPackage().
  * When S4 method dispatch fails because no method was found, the
    error message now includes the signature argument names; thanks
    to Michael Chirico's proposal on the R-devel list.
  * withAutoprint({ .. }) now preserves srcrefs previously lost,
    thanks to Andrew Simmons' report plus fix in PR#18572.
  * transform.data.frame() no longer adjusts names; in particular,
    untransformed variables are kept as-is, including those with
    syntactically invalid names (PR#17890).
  * The keep.source option for Rd \Sexpr blocks is no longer ignored.
  * The formula methods for t.test() and wilcox.test() now catch when
    paired is passed, addressing PR#14359; use Pair(x1, x2) ~ 1 for a
    paired test.
  * The level reported in the browser prompt was often too large. It
    now shows the number of browser contexts on the stack.
  * For cbind() and rbind(), the optional deparse.level argument is
    now properly passed to methods, thanks to Mikael Jagan's PR#18579
    and comments there.
  * Some error and warning messages for large ('long vector')
    matrix(v, nr, nc) and dim(m) &lt;- d are now correct about sizes,
    using long long formatting, fixing PR#18612 (and more) reported
    by Mikael Jagan.
  * readChar(useBytes = TRUE) now terminates strings even when the
    underlying connection uses extra spaces in the input buffer.
    This fixes problems with extra garbage seen with gzip
    connections, PR#18605.
  * Named capture in PCRE regular expressions now works also with
    more than 127 named groups (PR#18588).
  * Datetime functions are now robust against long jumps when dealing
    with internal time zone changes.  This avoids confusing warnings
    about an invalid time zone, previously triggered by turning
    warnings into errors or handling them via tryCatch (PR#17966,
    PR#17780).
  * Datetime functions now restore even an empty TZ environment
    variable after internal time zone changes (PR#17724).  This makes
    results of datetime functions with this (typically unintentional)
    setting more predictable.
  * drop.terms(*) now drops response as by default, keep.response =
    FALSE, fixing PR#18564 thanks to Mikael Jagan.
  * dummy.coef(.) now also works for lm()-models with character
    categorical predictor variables rather than factor ones, fixing
    PR#18635 reported by Jinsong Zhao.
  * formals(f) &lt;- formals(f) now also works for a function w/o
    arguments and atomic _constant_ body(f).
  * Correct as.function(&lt;invalid list&gt;, .)'s error message.
  * removeSource() is yet more thorough in finding and removing
    "srcref" and the other source references from parsed R language
    chunks, fixing PR#18638 thanks to Andrew Simmons.
  * dgeom() is more accurate now, notably when its result is very
    small, fixing PR#18642 thanks to the proposal of Morten Welinder,
    also improving other instances where C level binom_raw(x, n, ..)
    has x == 0 or x== n.
  * warning() with options(warn = 1) has improved output for
    multi-line messages.
  * axis.Date() and axis.POSIXct() now respect the par("lab") setting
    for the number of pretty() intervals.
  * Comparisons for language objects (which are based on deparsing)
    are now more careful about using accurate deparsed results
    (PR#18676).
  * Plain-text help (Rd2txt) now correctly preserves blank lines
    following single-line \dontrun code.
  * &lt;POSIXlt&gt;[*] no longer sets wrong "balanced" attribute, fixing
    PR#18681 thanks to Mikael Jagan.
  * str(&lt;classed-call&gt;) now deparses the call as expected, fixing
    PR#18684, reported by Dave Slager.
  * In Rd examples, code following the closing brace of a \dontrun,
    \dontshow or \donttest tag on the same line is no longer skipped
    when R CMD check runs the examples.
  * as.data.frame(matrix(*, ncol=0)) now gets valid names() and
    colnames(); reported by Davis Vaughan on the R-devel list.
  * Internal Mathlib function stirlerr(n) is now almost fully
    (52-bit) accurate for all n &gt;= ~5.9 and more accurate also in the
    range 1 -- 5.9.  This entails small ("after 12th decimal")
    changes in density functions, e.g., dgamma() in _some_ regions of
    their support.  The fix was partly prompted by Morten Welinder's
    PR#18640.
  * Numbers like 9876543.2 are now considered non-integer by Mathlib
    internal R_nonint(), amending original fix of PR#15734.
  * Rd comment lines no longer cause broken paragraphs in the
    rendered PDF and plain-text help. In code blocks, pure comment
    lines (starting with %) no longer produce an empty line.
  * xtabs(Freq ~ .) now consistently defaults to na.action = na.pass,
    using na.rm = FALSE (added as an argument) when summing over Freq
    (PR#17770).
  * tools::testInstalledPackage() is no longer silent about failures
    from running examples or tests and its return code no longer
    ignores failures from checking vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1718366400">- CHANGES IN R 4.4.1:
  C-LEVEL FACILITIES:
  * Functions R_atof and R_strtod declared in header R_ext/Utils.h
    are now documented in 'Writing R Extensions' and so formally part
    of the API.
  * The non-API entry points Rf_setSVector, Rf_StringFalse,
    Rf_StringTrue and Rf_isBlankString have been added to those
    reported by R CMD check.
  * The new function Rf_allocLang is now available. This provides an
    alternative to the idiom of calling Rf_allocList followed by
    SET_TYPEOF.
  UTILITIES:
  * R CMD check now reports as warnings what gfortran calls 'Fortran
    2018 deleted features', all of which have long been marked as
    'obsolescent' and some of which were deleted in Fortran 2008 or
    earlier.  Fortran compilers are no longer required to support
    these.
  BUG FIXES:
  * as.numeric(), scan(), type.convert() and other places which use
    the internal C function R_strtod now require a _non-empty_ digit
    sequence in a decimal or binary exponent.  This aligns with the
    C/POSIX standard for strtod and with ?NumericConstants.
  * as.data.frame(m, make.names=NA) now works correctly for a matrix
    m with NA's in row names.
  * The error message from &lt;POSIXlt&gt;[["hour"]] and similar now
    mentions *[[, "hour"]], as wished for in PR#17409 and proposed by
    Michael Chirico.
  * qbinom() and potentially qpois(), qnbinom(), no longer sometimes
    fail accurate inversion (of pbinom(), etc), thanks to Christopher
    Chang's report and patch in PR#18711.
  * The internal help server on Windows can again serve requests sent
    in quick succession, fixing a regression in R 4.4.0.
  * debugcall(&lt;S3Generic&gt;()) now also works when a corresponding
    S4-generic version is in the methods cache (PR#18143).
  * Package tools' toTitleCase(ch0) now returns character(0) when ch0
    is of zero length; fixing PR#18724, reported by David Hugh Jones.
  * R CMD check is no longer broken (without a check result and no
    explanation in 00check.log) for a package which declares an
    invalid VignetteBuilder in DESCRIPTION but has no vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1730376000">- CHANGES IN R 4.4.2:
  C-LEVEL FACILITIES:
  * The S-compatibility macros F77_COM and F77_COMDECL defined in
    header R_ext/RS.h are deprecated and will be removed shortly.  We
    could find no record of their use.
  BUG FIXES:
  * Mathlib function lgammacor(x) no longer warns about underflow to
    zero for large x.
  * Text widths and heights were incorrectly reported by the Quartz
    device if the drawing context didn't exist yet (typically when
    drawing off-screen to a window that is yet to appear, see
    PR#18591).
  * The Quartz device could segfault in cases where paths with spaces
    are used in the new glyph drawing API.  Thanks to Tomek
    Gieorgijewski (PR#18758).
  * On macOS in R CRAN builds, it is again possible to read
    little-endian UTF-16 text with a BOM from a connection using
    encoding="UTF-16".  Users building R from source should avoid
    using the system libiconv in macOS 14.1 and later.
  * methods' internal .requirePackage() now re-enables primitive
    method dispatch when needed; thanks to Ivan Krylov for
    demystifying CRAN package check failures on the R-devel mailing
    list.</changelog>
</package>
<package pkgid="1def03ad7f510fcd1e772b3327cff2ff2e663bde0e3c4a95551de88347ba59147ce6b29b823997b5ecf1c8fdbe3a2eed913cd5a0460a4b2f2028b3533a6ed095" name="R-lattice" arch="i586">
  <version epoch="0" ver="0.22.6" rel="51.0.2.2.sr20241103"/>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1620302400">- To get in sync with d:l:R:autoCRAN the Matrix package's split
  in -devel was reversed.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339200">- improved spec file according to comments of dimstar in
  https://build.opensuse.org/request/show/892685</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339201">- CHANGES IN R 4.1.0:
  FUTURE DIRECTIONS:
  * It is planned that the 4.1.x series will be the last to support
    32-bit Windows, with production of binary packages for that
    series continuing until early 2023.
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Data set esoph in package datasets now provides the correct
    numbers of controls; previously it had the numbers of cases added
    to these.  (Reported by Alexander Fowler in PR#17964.)
  NEW FEATURES:
  * www.omegahat.net is no longer one of the repositories known by
    default to setRepositories().  (Nowadays it only provides source
    packages and is often unavailable.)
  * Function package_dependencies() (in package tools) can now use
    different dependency types for direct and recursive dependencies.
  * The checking of the size of tarball in R CMD check --as-cran
    &lt;pkg&gt; may be tweaked via the new environment variable
    _R_CHECK_CRAN_INCOMING_TARBALL_THRESHOLD_, as suggested in
    PR#17777 by Jan Gorecki.
  * Using c() to combine a factor with other factors now gives a
    factor, an ordered factor when combining ordered factors with
    identical levels.
  * apply() gains a simplify argument to allow disabling of
    simplification of results.
  * The format() method for class "ftable" gets a new option justify.
    (Suggested by Thomas Soeiro.)
  * New ...names() utility.  (Proposed by Neal Fultz in PR#17705.)
  * type.convert() now warns when its as.is argument is not
    specified, as the help file always said it _should_.  In that
    case, the default is changed to TRUE in line with its change in
    read.table() (related to stringsAsFactor) in R 4.0.0.
  * When printing list arrays, classed objects are now shown _via_
    their format() value if this is a short enough character string,
    or by giving the first elements of their class vector and their
    length.
  * capabilities() gets new entry "Rprof" which is TRUE when R has
    been configured with the equivalent of --enable-R-profiling (as
    it is by default).  (Related to Michael Orlitzky's report
    PR#17836.)
  * str(xS4) now also shows extraneous attributes of an S4 object
    xS4.
  * Rudimentary support for vi-style tags in rtags() and R CMD rtags
    has been added.  (Based on a patch from Neal Fultz in PR#17214.)
  * checkRdContents() is now exported from tools; it and also
    checkDocFiles() have a new option chkInternal allowing to check
    Rd files marked with keyword "internal" as well.  The latter can
    be activated for R CMD check via environment variable
    _R_CHECK_RD_INTERNAL_TOO_.
  * New functions numToBits() and numToInts() extend the raw
    conversion utilities to (double precision) numeric.
  * Functions URLencode() and URLdecode() in package utils now work
    on vectors of URIs.  (Based on patch from Bob Rudis submitted
    with PR#17873.)
  * path.expand() can expand ~user on most Unix-alikes even when
    readline is not in use.  It tries harder to expand ~, for example
    should environment variable HOME be unset.
  * For HTML help (both dynamic and static), Rd file links to help
    pages in external packages are now treated as references to
    topics rather than file names, and fall back to a file link only
    if the topic is not found in the target package. The earlier rule
    which prioritized file names over topics can be restored by
    setting the environment variable _R_HELP_LINKS_TO_TOPICS_ to a
    false value.
  * c() now removes NULL arguments before dispatching to methods,
    thus simplifying the implementation of c() methods, _but_ for
    back compatibility keeps NULL when it is the first argument.
    (From a report and patch proposal by Lionel Henry in PR#17900.)
  * Vectorize()'s result function's environment no longer keeps
    unneeded objects.
  * Function ...elt() now propagates visibility consistently with
    ..n.  (Thanks to Lionel Henry's PR#17905.)
  * capture.output() no longer uses non-standard evaluation to
    evaluate its arguments.  This makes evaluation of functions like
    parent.frame() more consistent.  (Thanks to Lionel Henry's
    PR#17907.)
  * packBits(bits, type="double") now works as inverse of
    numToBits().  (Thanks to Bill Dunlap's proposal in PR#17914.)
  * curlGetHeaders() has two new arguments, timeout to specify the
    timeout for that call (overriding getOption("timeout")) and TLS
    to specify the minimum TLS protocol version to be used for
    https:// URIs (_inter alia_ providing a means to check for sites
    using deprecated TLS versions 1.0 and 1.1).
  * For nls(), an optional constant scaleOffset may be added to the
    denominator of the relative offset convergence test for cases
    where the fit of a model is expected to be exact, thanks to a
    proposal by John Nash.  nls(*, trace=TRUE) now also shows the
    convergence criterion.
  * Numeric differentiation _via_ numericDeriv() gets new optional
    arguments eps and central, the latter for taking central divided
    differences.  The latter can be activated for nls() via
    nls.control(nDcentral = TRUE).
  * nls() now passes the trace and control arguments to getInitial(),
    notably for all self-starting models, so these can also be fit in
    zero-noise situations via a scaleOffset.  For this reason, the
    initial function of a selfStart model must now have ... in its
    argument list.
  * bquote(splice = TRUE) can now splice expression vectors with
    attributes: this makes it possible to splice the result of
    parse(keep.source = TRUE).  (Report and patch provided by Lionel
    Henry in PR#17869.)
  * textConnection() gets an optional name argument.
  * get(), exists(), and get0() now signal an error if the first
    argument has length greater than 1.  Previously additional
    elements were silently ignored.  (Suggested by Antoine Fabri on
    R-devel.)
  * R now provides a shorthand notation for creating functions, e.g.
    \(x) x + 1 is parsed as function(x) x + 1.
  * R now provides a simple native forward pipe syntax |&gt;.  The
    simple form of the forward pipe inserts the left-hand side as the
    first argument in the right-hand side call.  The pipe
    implementation as a syntax transformation was motivated by
    suggestions from Jim Hester and Lionel Henry.
  * all.equal(f, g) for functions now by default also compares their
    environment(.)s, notably via new all.equal method for class
    function.  Comparison of nls() fits, e.g., may now need
    all.equal(m1, m2, check.environment = FALSE).
  * .libPaths() gets a new option include.site, allowing to _not_
    include the site library.  (Thanks to Dario Strbenac's suggestion
    and Gabe Becker's PR#18016.)
  * Lithuanian translations are now available.  (Thanks to Rimantas
    Zakauskas.)
  * names() now works for DOTSXP objects.  On the other hand, in
    R-lang, the R language manual, we now warn against relying on the
    structure or even existence of such dot-dot-dot objects.
  * all.equal() no longer gives an error on DOTSXP objects.
  * capabilities("cairo") now applies only to the file-based devices
    as it is now possible (if very unusual) to build R with Cairo
    support for those but not for X11().
  * There is optional support for tracing the progress of
    loadNamespace() - see its help.
  * (Not Windows.)  l10n_info() reports an additional element, the
    name of the encoding as reported by the OS (which may differ from
    the encoding part (if any) of the result from
    Sys.getlocale("LC_CTYPE").
  * New function gregexec() which generalizes regexec() to find _all_
    disjoint matches and well as all substrings corresponding to
    parenthesized subexpressions of the given regular expression.
    (Contributed by Brodie Gaslam.)
  * New function charClass() in package utils to query the
    wide-character classification functions in use (such as
    iswprint).
  * The names of quantile()'s result no longer depend on the global
    getOption("digits"), but quantile() gets a new optional argument
    digits = 7 instead.
  * grep(), sub(), regexp and variants work considerably faster for
    long factors with few levels.  (Thanks to Michael Chirico's
    PR#18063.)
  * Provide grouping of x11() graphics windows within a window
    manager such as Gnome or Unity; thanks to a patch by Ivan Krylov
    posted to R-devel.
  * The split() method for class data.frame now allows the f argument
    to be specified as a formula.
  * sprintf now warns on arguments unused by the format string.
  * New palettes "Rocket" and "Mako" for hcl.colors() (approximating
    palettes of the same name from the 'viridisLite' package).
    Contributed by Achim Zeileis.
  * The base environment and its namespace are now locked (so one can
    no longer add bindings to these or remove from these).
  * Rterm handling of multi-byte characters has been improved,
    allowing use of such characters when supported by the current
    locale.
  * Rterm now accepts ALT+ +xxxxxxxx sequences to enter Unicode
    characters as hex digits.
  * Environment variable LC_ALL on Windows now takes precedence over
    LC_CTYPE and variables for other supported categories, matching
    the POSIX behaviour.
  * duplicated() and anyDuplicated() are now optimized for integer
    and real vectors that are known to be sorted via the ALTREP
    framework. Contributed by Gabriel Becker via PR#17993.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 14
    and so packages that provide graphics devices should be
    reinstalled.
  * Graphics devices should now specify deviceVersion to indicate
    what version of the graphics engine they support.
  * Graphics devices can now specify deviceClip.  If TRUE, the
    graphics engine will never perform any clipping of output itself.
    The clipping that the graphics engine does perform (for both
    canClip = TRUE and canClip = FALSE) has been improved to avoid
    producing unnecessary artifacts in clipped output.
  * The grid package now allows gpar(fill) to be a linearGradient(),
    a radialGradient(), or a pattern().  The viewport(clip) can now
    also be a grob, which defines a clipping path, and there is a new
    viewport(mask) that can also be a grob, which defines a mask.
    These new features are only supported so far on the Cairo-based
    graphics devices and on the pdf() device.
  * (Not Windows.)  A warning is given when a Cairo-based type is
    specified for a png(), jpeg(), tiff() or bmp() device but Cairo
    is unsupported (so type = "Xlib" is tried instead).
  * grSoftVersion() now reports the versions of FreeType and
    FontConfig if they are used directly (not _via_ Pango), as is
    most commonly done on macOS.
  C-LEVEL FACILITIES:
  * The _standalone_ libRmath math library and R's C API now provide
    log1pexp() again as documented, and gain log1mexp().
  INSTALLATION on a UNIX-ALIKE:
  * configure checks for a program pkgconf if program pkg-config is
    not found.  These are now only looked for on the path (like
    almost all other programs) so if needed specify a full path to
    the command in PKG_CONFIG, for example in file config.site.
  * C99 function iswblank is required - it was last seen missing ca
    2003 so the workaround has been removed.
  * There are new configure options --with-internal-iswxxxxx,
  - -with-internal-towlower and --with-internal-wcwidth which allows
    the system functions for wide-character classification,
    case-switching and width (wcwidth and wcswidth) to be replaced by
    internal ones.  The first has long been used on macOS, AIX (and
    Windows) but this enables it to be unselected there and selected
    for other platforms (it is the new default on Solaris).  The
    second is new in this version of R and is selected by default on
    macOS and Solaris.  The third has long been the default and
    remains so as it contains customizations for East Asian
    languages.
    System versions of these functions are often minimally
    implemented (sometimes only for ASCII characters) and may not
    cover the full range of Unicode points: for example Solaris (and
    Windows) only cover the Basic Multilingual Plane.
  * Cairo installations without X11 are more likely to be detected by
    configure, when the file-based Cairo graphics devices will be
    available but not X11(type = "cairo").
  * There is a new configure option --with-static-cairo which is the
    default on macOS.  This should be used when only static cairo
    (and where relevant, Pango) libraries are available.
  * Cairo-based graphics devices on platforms without Pango but with
    FreeType/FontConfig will make use of the latter for font
    selection.
  LINK-TIME OPTIMIZATION on a UNIX-ALIKE:
  * Configuring with flag --enable-lto=R now also uses LTO when
    installing the recommended packages.
  * R CMD INSTALL and R CMD SHLIB have a new flag --use-LTO to use
    LTO when compiling code, for use with R configured with
  - -enable-lto=R.  For R configured with --enable-lto, they have
    the new flag --no-use-LTO.
    Packages can opt in or out of LTO compilation _via_ a UseLTO
    field in the DESCRIPTION file.  (As usual this can be overridden
    by the command-line flags.)
  BUILDING R on Windows:
  * for GCC &gt;= 8, FC_LEN_T is defined in config.h and hence character
    lengths are passed from C to Fortran in _inter alia_ BLAS and
    LAPACK calls.
  * There is a new text file src/gnuwin32/README.compilation, which
    outlines how C/Fortran code compilation is organized and
    documents new features:
  * R can be built with Link-Time Optimization with a suitable
    compiler - doing so with GCC 9.2 showed several
    inconsistencies which have been corrected.
  * There is support for cross-compiling the C and Fortran code
    in R and standard packages on suitable (Linux) platforms.
    This is mainly intended to allow developers to test later
    versions of compilers - for example using GCC 9.2 or 10.x has
    detected issues that GCC 8.3 in Rtools40 does not.
  * There is experimental support for cross-building R packages
    with C, C++ and/or Fortran code.
  * The R installer can now be optionally built to support a single
    architecture (only 64-bit or only 32-bit).
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++14 where
    available (which it is on all currently checked platforms): if
    not (as before) C++11 is used if available otherwise C++ is not
    supported.
    Packages which specify C++11 will still be installed using C++11.
    C++14 compilers may give deprecation warnings, most often for
    std::random_shuffle (deprecated in C++14 and removed in C++17).
    Either specify C++11 (see 'Writing R Extensions') or modernize
    the code and if needed specify C++14.  The latter has been
    supported since R 3.4.0 so the package's DESCRIPTION would need
    to include something like
    Depends: R (&gt;= 3.4)
  PACKAGE INSTALLATION on Windows:
  * R CMD INSTALL and R CMD SHLIB make use of their flag --use-LTO
    when the LTO_OPT make macro is set in file etc/${R_ARCH}/Makeconf
    or in a personal/site Makevars file.  (For details see 'Writing R
    Extensions' SS4.5.)
    This provides a valuable check on code consistency.  It does work
    with GCC 8.3 as in Rtools40, but that does not detect everything
    the CRAN checks with current GCC do.
  PACKAGE INSTALLATION on macOS:
  * The default personal library directory on builds with
  - -enable-aqua (including CRAN builds) now differs by CPU type,
    one of
    ~/Library/R/x86_64/x.y/library
    ~/Library/R/arm64/x.y/library
    This uses the CPU type R (and hence the packages) were built for,
    so when a x86_64 build of R is run under Rosetta emulation on an
    arm64 Mac, the first is used.
  UTILITIES:
  * R CMD check can now scan package functions for bogus return
    statements, which were possibly intended as return() calls (wish
    of PR#17180, patch by Sebastian Meyer). This check can be
    activated via the new environment variable
    _R_CHECK_BOGUS_RETURN_, true for --as-cran.
  * R CMD build omits tarballs and binaries of previous builds from
    the top-level package directory.  (PR#17828, patch by Sebastian
    Meyer.)
  * R CMD check now runs sanity checks on the use of LazyData, for
    example that a data directory is present and that
    LazyDataCompression is not specified without LazyData and has a
    documented value.  For packages with large LazyData databases
    without specifying LazyDataCompression, there is a reference to
    the code given in 'Writing R Extensions' SS1.1.6 to test the
    choice of compression (as in all the CRAN packages tested a
    non-default method was preferred).
  * R CMD build removes LazyData and LazyDataCompression fields from
    the DESCRIPTION file of packages without a data directory.
  ENCODING-RELATED CHANGES:
  * The parser now treats \Unnnnnnnn escapes larger than the upper
    limit for Unicode points (\U10FFFF) as an error as they cannot be
    represented by valid UTF-8.
    Where such escapes are used for outputting non-printable
    (including unassigned) characters, 6 hex digits are used (rather
    than 8 with leading zeros).  For clarity, braces are used, for
    example \U{0effff}.
  * The parser now looks for non-ASCII spaces on Solaris (as
    previously on most other OSes).
  * There are warnings (including from the parser) on the use of
    unpaired surrogate Unicode points such as \uD834.  (These cannot
    be converted to valid UTF-8.)
  * Functions nchar(), tolower(), toupper() and chartr() and those
    using regular expressions have more support for inputs with a
    marked Latin-1 encoding.
  * The character-classification functions used (by default) to
    replace the system iswxxxxx functions on Windows, macOS and AIX
    have been updated to Unicode 13.0.0.
    The character-width tables have been updated to include new
    assignments in Unicode 13.0.0.
  * The code for evaluating default (extended) regular expressions
    now uses the same character-classification functions as the rest
    of R (previously they differed on Windows, macOS and AIX).
  * There is a build-time option to replace the system's
    wide-character wctrans C function by tables shipped with R: use
    configure option --with-internal-towlower or (on Windows)
  - DUSE_RI18N_CASE in CFLAGS when building R.  This may be needed
    to allow tolower() and toupper() to work with Unicode characters
    beyond the Basic Multilingual Plane where not supported by system
    functions (e.g. on Solaris where it is the new default).
  * R is more careful when truncating UTF-8 and other multi-byte
    strings that are too long to be printed, passed to the system or
    libraries or placed into an internal buffer.  Truncation will no
    longer produce incomplete multibyte characters.
  DEPRECATED AND DEFUNCT:
  * Function plclust() from the package stats and
    package.dependencies(), pkgDepends(), getDepList(),
    installFoundDepends(), and vignetteDepends() from package tools
    are defunct.
  * Defunct functions checkNEWS() and readNEWS() from package tools
    and CRAN.packages() from utils have been removed.
  * R CMD config CXXCPP is defunct (it was deprecated in R 3.6.2).
  * parallel::detectCores() drops support for Irix (retired in 2013).
  * The LINPACK argument to chol.default(), chol2inv(),
    solve.default() and svd() has been defunct since R 3.1.0.  It was
    silently ignored up to R 4.0.3 but now gives an error.
  * Subsetting/indexing, such as ddd[*] or ddd$x on a DOTSXP
    (dot-dot-dot) object ddd has been disabled; it worked by accident
    only and was undocumented.
  BUG FIXES:
  * Many more C-level allocations (mainly by malloc and strdup) are
    checked for success with suitable alternative actions.
  * Bug fix for replayPlot(); this was turning off graphics engine
    display list recording if a recorded plot was replayed in the
    same session.  The impact of the bug became visible if resize the
    device after replay OR if attempted another savePlot() after
    replay (empty display list means empty screen on resize or empty
    saved plot).
  * R CMD check etc now warn when a package exports non-existing S4
    classes or methods, also in case of no "methods" presence.
    (Reported by Alex Bertram; reproducible example and patch by
    Sebastian Meyer in PR#16662.)
  * boxplot() now also accepts calls for labels such as ylab, the
    same as plot().  (Reported by Marius Hofert.)
  * The help page for xtabs() now correctly states that addNA is
    setting na.action = na.pass among others.  (Reported as PR#17770
    by Thomas Soeiro.)
  * The R CMD check &lt;pkg&gt; gives a longer and more comprehensible
    message when DESCRIPTION misses dependencies, e.g., in Imports:.
    (Thanks to the contributors of PR#17179.)
  * update.default() now calls the generic update() on the formula to
    work correctly for models with extended formulas.  (As reported
    and suggested by Neal Fultz in PR#17865.)
  * The horizontal position of leaves in a dendrogram is now correct
    also with center = FALSE.  (PR#14938, patch from Sebastian
    Meyer.)
  * all.equal.POSIXt() no longer warns about and subsequently ignores
    inconsistent "tzone" attributes, but describes the difference in
    its return value (PR#17277).  This check can be disabled _via_
    the new argument check.tzone = FALSE as suggested by Sebastian
    Meyer.
  * as.POSIXct() now populates the "tzone" attribute from its tz
    argument when x is a logical vector consisting entirely of NA
    values.
  * x[[2^31]] &lt;- v now works.  (Thanks to the report and patch by
    Suharto Anggono in PR#17330.)
  * In log-scale graphics, axis() ticks and label positions are now
    computed more carefully and symmetrically in their range,
    typically providing _more_ ticks, fulfilling wishes in PR#17936.
    The change really corresponds to an improved axisTicks() (package
    grDevices), potentially influencing grid and lattice, for
    example.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now correct to at
    least five digits where it was catastrophically wrong,
    previously.
  * sum(df) and similar "Summary"- and "Math"-group member functions
    now work for data frames df with logical columns, notably also of
    zero rows.  (Reported to R-devel by Martin "b706".)
  * unsplit() had trouble with tibbles due to unsound use of rep(NA,
    len)-indexing, which should use NA_integer_ (Reported to R-devel
    by Mario Annau.)
  * pnorm(x, log.p = TRUE) underflows to -Inf slightly later.
  * show(&lt;hidden S4 generic&gt;) prints better and without quotes for
    non-hidden S4 generics.
  * read.table() and relatives treated an "NA" column name as missing
    when check.names = FALSE PR#18007.
  * Parsing strings containing UTF-16 surrogate pairs such as
    "\uD834\uDD1E" works better on some (uncommon) platforms.
    sprintf("%X", utf8ToInt("\uD834\uDD1E")) should now give "1D11E"
    on all platforms.
  * identical(x,y) is no longer true for differing DOTSXP objects,
    fixing PR#18032.
  * str() now works correctly for DOTSXP and related exotics, even
    when these are doomed.
    Additionally, it no longer fails for lists with a class and
    "irregular" method definitions such that e.g. lapply(*) will
    necessarily fail, as currently for different igraph objects.
  * Too long lines in environment files (e.g. Renviron) no longer
    crash R. This limit has been increased to 100,000 bytes.
    (PR#18001.)
  * There is a further workaround for FreeType giving incorrect
    italic font faces with cairo-based graphics devices on macOS.
  * add_datalist(*, force = TRUE) (from package tools) now actually
    updates an existing data/datalist file for new content.  (Thanks
    to a report and patch by Sebastian Meyer in PR#18048.)
  * cut.Date() and cut.POSIXt() could produce an empty last interval
    for breaks = "months" or breaks = "years".  (Reported as PR#18053
    by Christopher Carbone.)
  * Detection of the encoding of 'regular' macOS locales such as
    en_US (which is UTF-8) had been broken by a macOS change:
    fortunately these are now rarely used with en_US.UTF-8 being
    preferred.
  * sub() and gsub(pattern, repl, x, *) now keep attributes of x such
    as names() also when pattern is NA (PR#18079).
  * Time differences ("difftime" objects) get a replacement and a
    rep() method to keep "units" consistent.  (Thanks to a report and
    patch by Nicolas Bennett in PR#18066.)
  * The \RdOpts macro, setting defaults for \Sexpr options in an Rd
    file, had been ineffective since R 2.12.0: it now works again.
    (Thanks to a report and patch by Sebastian Meyer in PR#18073.)
  * mclapply and pvec no longer accidentally terminate parallel
    processes started before by mcparallel or related calls in
    package parallel (PR#18078).
  * grep and other functions for evaluating (extended) regular
    expressions handle in Unicode also strings not explicitly flagged
    UTF-8, but flagged native when running in UTF-8 locale.
  * Fixed a crash in fifo implementation on Windows (PR#18031).
  * Binary mode in fifo on Windows is now properly detected from
    argument open (PR#15600, PR#18031).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1622808000">- The line %{__install} -m 755 -d %{_infodir}
  no longer works in TW or Factory.
  But without that line it works everywhere. So this instruction
  was commented out of the spec file.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1628596800">- CHANGES IN R 4.1.1:
  NEW FEATURES:
  * require(pkg, quietly = TRUE) is quieter and in particular does
    not warn if the package is not found.
  DEPRECATED AND DEFUNCT:
  * Use of ftp:// URIs should be regarded as deprecated, with
    on-going support confined to method = "libcurl" and not routinely
    tested.  (Nowadays no major browser supports them.)
  * The non-default method = "internal" is deprecated for http:// and
    ftp:// URIs for both download.file and url.
  * On Windows, method = "wininet" is deprecated for http://,
    https:// and ftp:// URIs for both download.file and url.  (A
    warning is only given for ftp://.)
    For ftp:// URIs the default method is now "libcurl" if available
    (which it is on CRAN builds).
    method = "wininet" remains the default for http:// and https://
    URIs but if libcurl is available, using method = "libcurl" is
    preferred.
  INSTALLATION:
  * make check now works also without a LaTeX installation.  (Thanks
    to Sebastian Meyer's PR#18103.)
  BUG FIXES:
  * make check-devel works again in an R build configured with
  - -without-recommended-packages.
  * qnbinom(p, size, mu) for large size/mu is correct now in a range
    of cases (PR#18095); similarly for the (size, prob)
    parametrization of the negative binomial.  Also qpois() and
    qbinom() are better and or faster for extreme cases.  The
    underlying C code has been modularized and is common to all four
    cases of discrete distributions.
  * gap.axis is now part of the axis() arguments which are passed
    from bxp(), and hence boxplot().  (Thanks to Martin Smith's
    report and suggestions in PR#18109.)
  * .First and .Last can again be set from the site profile.
  * seq.int(from, to, *) and seq.default(..) now work better in large
    range cases where from-to is infinite where the two boundaries
    are finite.
  * all.equal(x,y) now returns TRUE correctly also when several
    entries of abs(x) and abs(y) are close to .Machine$double.xmax,
    the largest finite numeric.
  * model.frame() now clears the object bit when removing the class
    attribute of a value via na.action (PR#18100).
  * charClass() now works with multi-character strings on Windows
    (PR#18104, fixed by Bill Dunlap).
  * encodeString() on Solaris now works again in Latin-1 encoding on
    characters represented differently in UTF-8.  Support for
    surrogate pairs on Solaris has been improved.
  * file.show() on Windows now works with non-ASCII path names
    representable in the current native encoding (PR#18132).
  * Embedded R on Windows can now find R home directory via the
    registry even when installed only for the current user
    (PR#18135).
  * pretty(x) with finite x now returns finite values also in the
    case where the extreme x values are close in size to the maximal
    representable number .Machine$double.xmax.
    Also, it's been tweaked for very small ranges and when a boundary
    is close (or equal) to zero; e.g., pretty(c(0,1e-317)) no longer
    has negative numbers, currently still warning about a very small
    range, and pretty(2^-(1024 - 2^-1/(c(24,10)))) is more accurate.
  * The error message for not finding vignette files when weaving has
    correct file sizes now. (Thanks to Sebastian Meyer's PR#18154.)
  * dnbinom(20, &lt;large&gt;, 1) now correctly gives 0, and similar cases
    are more accurate with underflow precaution.  (Reported by Francisco Vera Alcivar in PR#18072.)</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635163200">- repaired https://bugzilla.suse.com/show_bug.cgi?id=1191380
  (rpmacros now go to rpmmacrodir)
- minor clean-ups in spec file</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635768000">- CHANGES IN R 4.1.2:
  C-LEVEL FACILITIES:
  * The workaround in headers R.h and Rmath.h (using namespace std;)
    for the Oracle Developer Studio compiler is no longer needed now
    C++11 is required so has been removed.  A couple more usages of
    log() (which should have been std::log()) with an int argument
    are reported on Solaris.
  * The undocumented limit of 4095 bytes on messages from the
    S-compatibility macros PROBLEM and MESSAGE is now documented and
    longer messages will be silently truncated rather than
    potentially causing segfaults.
  * If the R_NO_SEGV_HANDLER environment variable is non-empty, the
    signal handler for SEGV/ILL/BUS signals (which offers recovery
    user interface) is not set. This allows more reliable debugging
    of crashes that involve the console.
  DEPRECATED AND DEFUNCT:
  * The legacy S-compatibility macros PROBLEM, MESSAGE, ERROR, WARN,
    WARNING, RECOVER, ... are deprecated and will be hidden in R
    4.2.0. R's native interface of Rf_error and Rf_warning has long
    been preferred.
  BUG FIXES:
  * .mapply(F, dots, .) no longer segfaults when dots is not a list
    and uses match.fun(F) as always documented; reported by Andrew
    Simmons in PR#18164.
  * hist(&lt;Date&gt;, ...) and hist(&lt;POSIXt&gt;, ...)  no longer pass
    arguments for rect() (such as col and density) to axis().
    (Thanks to Sebastian Meyer's PR#18171.)
  * \Sexpr{ch} now preserves Encoding(ch). (Thanks to report and
    patch by Jeroen Ooms in PR#18152.)
  * Setting the RNG to "Marsaglia-Multicarry" e.g., by RNGkind(), now
    warns in more places, thanks to Andr'e Gillibert's report and
    patch in PR#18168.
  * gray(numeric(), alpha=1/2) no longer segfaults, fixing PR#18183,
    reported by Till Krenz.
  * Fixed dnbinom(x, size=&lt;very_small&gt;, .., log=TRUE) regression,
    reported by Martin Morgan.
  * as.Date.POSIXlt(x) now keeps names(x), thanks to Davis Vaughan's
    report and patch in PR#18188.
  * model.response() now strips an "AsIs" class typically, thanks to
    Duncan Murdoch's report and other discussants in PR#18190.
  * try() is considerably faster in case of an error and long call,
    as e.g., from some do.call().  Thanks to Alexander Kaever's
    suggestion posted to R-devel.
  * qqline(y = &lt;object&gt;) such as y=I(.), now works, see also
    PR#18190.
  * Non-integer mgp par() settings are now handled correctly in
    axis() and mtext(), thanks to Mikael Jagan and Duncan Murdoch's
    report and suggestion in PR#18194.
  * formatC(x) returns length zero character() now, rather than ""
    when x is of length zero, as documented, thanks to Davis
    Vaughan's post to R-devel.
  * removeSource(fn) now retains (other) attributes(fn).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1647000000">- CHANGES IN R 4.1.3:
  NEW FEATURES:
  * The default version of Bioconductor has been changed to 3.14.
    (This is used by setRepositories and the menus in GUIs.)
  UTILITIES:
  * R CMD check --as-cran has a workaround for a bug in versions of
    file up to at least 5.41 which mis-identify DBF files last
    changed in 2022 as executables.
  C-LEVEL FACILITIES:
  * The legacy S-compatibility macros SINGLE_* in R_ext/Constants.h
    (included by R.h) are deprecated and will be removed in R 4.2.0.
  BUG FIXES:
  * Initialization of self-starting nls() models with initialization
    functions following the pre-R-4.1.0 API (without the ...
    argument) works again for now, with a deprecation warning.
  * Fixed quoting of ~autodetect~ in Java setting defaults to avoid
    inadvertent user lookup due to leading ~, reported in PR#18231 by
    Harold Gutch.
  * substr(., start, stop) &lt;- v now treats _negative_ stop values
    correctly.  Reported with a patch in PR#18228 by Brodie Gaslam.
  * Subscripting an array x without dimnames by a
    length(dim(x))-column character matrix gave "random" non-sense,
    now an error; reported in PR#18244 by Mikael Jagan.
  * ...names() now matches names(list(...)) closely, fixing PR#18247.
  * all.equal(*, scale = s) now works as intended when length(s) &gt; 1,
    partly thanks to Michael Chirico's PR#18272.
  * print(x) for long vectors x now also works for named atomic
    vectors or lists and prints the correct number when reaching the
    getOption("max.print") limit; partly thanks to a report and
    proposal by Hugh Parsonage to the R-devel list.
  * all.equal(&lt;selfStart&gt;, *) no longer signals a deprecation
    warning.
  * reformulate(*, response=r) gives a helpful error message now when
    length(r) &gt; 1, thanks to Bill Dunlap's PR#18281.
  * Modifying globalCallingHandlers inside withCallingHandlers() now
    works or fails correctly, thanks to Henrik Bengtsson's PR#18257.
  * hist(&lt;Date&gt;, breaks = "days") and hist(&lt;POSIXt&gt;, breaks = "secs")
    no longer fail for inputs of length 1.
  * qbeta(.001, .9, .009) and similar cases now converge correctly
    thanks to Ben Bolker's report in PR#17746.
  * window(x, start, end) no longer wrongly signals "'start' cannot
    be after 'end'", fixing PR#17527 and PR#18291.
  * data() now checks that its (rarely used) list argument is a
    character vector - a couple of packages passed other types and
    gave incorrect results.
  * which() now checks its arr.ind argument is TRUE rather coercing
    to logical and taking the first element - which gave incorrect
    results in package code.
  * model.weights() and model.offset() more carefully extract their
    model components, thanks to Ben Bolker and Tim Taylor's R-devel
    post.
  * list.files(recursive = TRUE) now shows all broken symlinks
    (previously, some of them may have been omitted, PR#18296).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1650628800">- CHANGES IN R 4.2.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * The formula method of aggregate() now matches the generic in
    naming its first argument x (resolving PR#18299 by Thomas
    Soeiro).
    This means that calling aggregate() with a formula as a named
    first argument requires name formula in earlier versions of R and
    name x now, so portable code should not name the argument (code
    in many packages did).
  * Calling &amp;&amp; or || with either argument of length greater than one
    now gives a warning (which it is intended will become an error).
  * Calling if() or while() with a condition of length greater than
    one gives an error rather than a warning.  Consequently,
    environment variable _R_CHECK_LENGTH_1_CONDITION_ no longer has
    any effect.
  * Windows users should consult the WINDOWS section below for some
    profound changes including
  * Support for 32-bit builds has been dropped.
  * UTF-8 locales are used where available.
  * The default locations for the R installation and personal
    library folder have been changed.
    Thanks to Tomas Kalibera for months of work on the Windows port
    for this release.
  NEW FEATURES:
  * matrix(x, n, m) now warns in more cases where length(x) differs
    from n * m, as suggested by Abby Spurdle and Wolfgang Huber in
    Feb 2021 on the R-devel mailing list.
    This warning can be turned into an error by setting environment
    variable _R_CHECK_MATRIX_DATA_ to TRUE: R CMD check --as-cran
    does so unless it is already set.
  * Function file_test() in package utils gains tests for symlinks,
    readability and writability.
  * capabilities("libxml") is now false.
    The description of capabilities("http/ftp") now reflects that it
    refers to the default method, no longer the internal one.
  * simplify2array() gains an except argument for controlling the
    exceptions used by sapply().
  * Environment variables R_LIBS_USER and R_LIBS_SITE are both now
    set to the R system default if unset or empty, and can be set to
    NULL to indicate an empty list of user or site library
    directories.
  * The warning for axis()(-like) calls in cases of relatively small
    ranges (typically in log-scale situations) is slightly improved
    _and_ suppressed from explicit calls to .axisPars() as has always
    been the intention.
  * The contrasts setter function `contrasts&lt;-` gains an explicit
    default how.many = NULL rather than just using missing(how.many).
  * grid.pretty() gains a new optional argument n = 5.
  * There is a new function .pretty() with option bounds as a
    technical-utility version of pretty().  It and pretty() gain a
    new argument f.min with a better than back-compatible default.
  * Function grDevices::axisTicks() and related functions such as
    graphics::axis() work better, notably for the log scale; partly
    because of the pretty() improvements, but also because care is
    taken e.g., when ylim is finite but diff(ylim) is infinite.
  * nclass.FD() gains a digits option.
  * The R Mathlib internal C function bd0() (called indirectly from a
    dozen probability density and distribution functions such as
    dpois(), dbinom(), dgamma(), pgamma() _etc_) has been
    complemented by a more sophisticated and (mostly) more accurate C
    function ebd0(), currently called only by internal dpois_raw()
    improving accuracy for R level dpois() and potentially others
    calling it such as dnbinom(), dgamma() or pgamma().  (Thanks to
    Morten Welinder's PR#15628.)
  * write.ftable() gains sep = " " argument as suggested by Thomas
    Soeiro.
  * The names of the locale categories supported by R's
    Sys.getlocale() and Sys.setlocale() are now provided by variable
    .LC.categories in the base namespace.
  * The Date and POSIXt methods for hist() and the histogram method
    for plot() now also use the new default col = "lightgray" in
    consistency with the corresponding change to hist()'s default for
    R 4.0.0.
  * hist.default() gains new fuzz argument, and the histogram plot
    method no longer uses fractional axis ticks when displaying
    counts ("Frequency").
  * mapply() and hence Map() now also obey the "max-or-0-if-any"
    recycling rule, such that, e.g., Map(`+`, 1:3, 1[0]) is valid
    now.
  * as.character(&lt;obj&gt;) for "hexmode" or "octmode" objects now
    fulfils the important basic rule as.character(x)[j] ===
    as.character(x[j]).
  * The set utility functions, notably intersect() have been tweaked
    to be more consistent and symmetric in their two set arguments,
    also preserving a common mode.
  * substr(ch, start,end) &lt;- new now e.g., preserves names(ch); ditto
    for substring(), thanks to a patch from Brodie Gaslam.
  * plot(&lt;lm&gt;) gains a extend.ylim.f argument, in partial response to
    PR#15285; further PR#17784 is fixed thanks to several
    contributors and a patch by Elin Waring.  The Cook's dist
    contours get customizable via cook.col and cook.lty with a
    different default color and their legend is nicer by default and
    customizable via cook.legendChanges.
  * Attempting to subset an object that is not subsettable now
    signals an error of class notSubsettableError. The
    non-subsettable object is contained in the object field of the
    error condition.
  * Subscript-out-of-bounds errors are now signaled as errors of
    class subscriptOutOfBoundsError.
  * Stack-overflow errors are now signaled as errors inheriting from
    class stackOverflowError. See ?stackOverflowError for more
    details.
  * New partly experimental Sys.setLanguage() utility, solving the
    main problem of PR#18055.
  * gettext() and gettextf() get a new option trim = TRUE which when
    set to false allows translations for strings such as "Execution
    halted\n" typical for C code.
  * An experimental implementation of hash tables is now available.
    See ?hashtab for more details.
  * identical() gains a extptr.as.ref argument for requesting that
    external pointer objects be compared as reference objects.
  * reorder() gets an argument decreasing which it passes to sort()
    for level creation; based on the wish and patch by Thomas Soeiro
    in PR#18243.
  * as.vector() gains a data.frame method which returns a simple
    named list, also clearing a long standing 'FIXME' to enable
    as.vector(&lt;data.frame&gt;, mode="list").  This breaks code relying
    on as.vector(&lt;data.frame&gt;) to return the unchanged data frame.
  * legend() is now vectorized for arguments cex, x.intersp, and
    text.width.  The latter can now also be specified as a vector
    (one element for each column of the legend) or as NA for
    computing a proper column wise maximum value of strwidth(legend).
    The argument y.intersp can be specified as a vector with one
    entry for each row of the legend.
    legend() also gains new arguments title.cex and title.font.
    Thanks to Swetlana Herbrandt.
  * Deparsing no longer remaps attribute names dim, dimnames, levels,
    names and tsp to historical S-compatible names (which structure()
    maps back).
  * sample() and sample.int() have additional sanity checks on their
    size and n arguments.
    all.equal.numeric() gains a sanity check on its tolerance
    argument - calling all.equal(a, b, c) for three numeric vectors
    is a surprisingly common error.
    mean(na.rm =), rank(na.last =), barplot(legend.text =),
    boxplot(), contour(drawlabels =), polygon(border =) and
    methods::is(class2 =) have more robust sanity checks on their
    arguments.
    R CMD Rd2pdf (used by R CMD check) has a more robust sanity check
    on the format of \alias{} commands.
  * psigamma(x, deriv) for negative x now also works for deriv = 4
    and 5; their underlying C level dpsifn() is documented in
    'Writing R Extensions'.
  * The HTML help system now uses HTML5 (wish of PR#18149).
  * ks.test() now provides exact p-values also with ties and MC
    p-values in the two-sample (Smirnov) case.  By Torsten Hothorn.
  * ks.test() gains a formula interface, with y ~ 1 for the
    one-sample (Kolmogorov) test and y ~ group for the two-sample
    (Smirnov) test.  Contributed by Torsten Hothorn.
  * The return value from ks.test() now has class c("ks.test",
    "htest") - packages using try() need to take care to use
    inherits() and not == on the class.
  * New functions psmirnov(), qsmirnov() and rsmirnov() in package
    stats implementing the asymptotic and exact distributions of the
    two-sample Smirnov statistic.
  * iconv() now allows sub = "c99" to use C99-style escapes for UTF-8
    inputs which cannot be converted to encoding to.
  * In a forward pipe |&gt; expression it is now possible to use a named
    argument with the placeholder _ in the rhs call to specify where
    the lhs is to be inserted.  The placeholder can only appear once
    on the rhs.
  * The included LAPACK sources have been updated to version 3.10.0,
    except for the four Fortran 77 routines which 3.10.0 has
    re-implemented in Fortran 90 (where the older versions have been
    retained as the R build process does not support Fortran 90).
  * path.expand() and most other uses of tilde expansion now warn if
    a path would be too long if expanded.  (An exception is
    file.exists(), which silently returns false.)
  * trunc(&lt;Date&gt;, *) now supports units = "months" or "years" for
    consistency with the POSIXt method, thanks to Dirk Eddelbuettel's
    proposal in PR#18099.
  * list2DF() now checks that its arguments are of the same length,
    rather than use recycling.
  * The HTML help system has several new features: LaTeX-like math
    can be typeset using either KaTeX or MathJax, usage and example
    code is highlighted using Prism, and for dynamic help the output
    of examples and demos can be shown within the browser if the
    knitr package is installed. These features can be disabled by
    setting the environment variable _R_HELP_ENABLE_ENHANCED_HTML_ to
    a false value.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 15
    and so packages that provide graphics devices should be
    reinstalled.
  * The grid package now allows the user to specify a "vector" of
    pattern fills.  The fill argument to gpar() accepts a list of
    gradients and/or patterns and the functions linearGradient(),
    radialGradient(), and pattern() have a new group argument.
    Points grobs (data symbols) can now also have a pattern fill.
    The grobCoords() function now returns a more informative and
    complex result.
  * The grid package has new functions for drawing isolated groups:
    grid.group(), grid.define(), and grid.use().  These functions add
    compositing operators and affine transformations to R's graphics
    capabilities.
    The grid package also has new functions for stroking and filling
    paths: grid.stroke(), grid.fill(), and grid.fillStroke().
    A new function as.path() allows the user to specify the fill rule
    for a path that is to be used for clipping, stroking, or filling;
    available options are "winding" and "evenodd".  A new function
    as.mask() allows the user to specify the type of a mask;
    available options are "alpha" and "luminance".
    These new features are only supported so far (at most) on the
    Cairo-based graphics devices and on the pdf() device.
  * dev.capabilities() reports on device support for the new
    features.
  * par() now warns about unnamed non-character arguments to prevent
    misuse such as {usr &lt;- par("usr"); par(usr)}.
  INSTALLATION:
  * Facilities for accessing ftp:// sites are no longer tested
    (except _pro tem_ for curlGetHeaders()) as modern browsers have
    removed support.
  * R can now be built with DEFS = -DSTRICT_R_HEADERS .
  PACKAGE INSTALLATION:
  * R CMD INSTALL no longer tangles vignettes. This completes an R
    CMD build change in R 3.0.0 and affects packages built before R
    3.0.2. Such packages should be re-made with R CMD build to have
    the tangled R code of vignettes shipped with the tarball.
  * USE_FC_LEN_T will become the default: this uses the correct
    prototypes for Fortran BLAS/LAPACK routines called from C/C++,
    and requires adjustment of most such calls - see 'Writing R
    Extensions' SS6.6.2.  (This has been supported since R 3.6.2.)
  * Package installation speed for packages installed with
    keep.source has been improved. This resolve the issue reported by
    Ofek Shilon in PR#18236.
  UTILITIES:
  * R CMD check can optionally report files/directories left behind
    in home, /tmp (even though TMPDIR is set) and other directories.
    See the "R Internals" manual for details.
  * R CMD check now reports byte-compilation errors during
    installation.  These are not usually fatal but may result in
    parts of the package not being byte-compiled.
  * _R_CHECK_DEPENDS_ONLY_ can be applied selectively to examples,
    tests and/or vignettes in R CMD check: see the "R Internals"
    manual.
  * _R_CHECK_SRC_MINUS_W_IMPLICIT_ now defaults to true: recent
    versions of Apple clang on macOS have made implicit function
    declarations in C into a compilation error.
  * R CMD check --as-cran makes use of the environment variable
    AUTORECONF.  See the "R Internals" manual SS8 for further details.
  * R CMD check --use-valgrind also uses valgrind when re-building
    vignettes as some non-Sweave vignettes unhelpfully comment out
    all their code when R CMD check runs vignettes.
  * Errors in re-building vignettes (unless there are LaTeX errors)
    are reported by R CMD check as ERROR rather than WARNING when
    running vignettes has been skipped (as it frequently is in CRAN
    checks and by --as-cran).
  * R CMD Rd2pdf gains a --quiet option that is used by R CMD build
    when building the PDF package manual.
  * R CMD Rd2pdf now always runs LaTeX in batch mode, consistent with
    Texinfo &gt;= 6.7. The --batch option is ignored.
  * R CMD build and R CMD check now include the Rd file name and line
    numbers in the error message of an \Sexpr evaluation failure.
  * For packages using the \doi Rd macro (now an install-time \Sexpr)
    but no other dynamic Rd content, R CMD build now produces a
    smaller tarball and is considerably faster - skipping temporary
    package installation.
  C-LEVEL FACILITIES:
  * The non-API header R_ext/R-ftp-http.h is no longer provided, as
    the entry points it covered are now all defunct.
  * A number of non-API declarations and macro definitions have been
    moved from the installed header Rinternals.h to the internal
    header Defn.h. Packages that only use entry points and
    definitions documented to be part of the API as specified in
    'Writing R Extensions' SS6 should not be affected.
  * The macro USE_RINTERNALS no longer has any effect when compiling
    package code.  Packages which also use R_NO_REMAP will need to
    ensure that the remapped names are used for calls to API
    functions that were formerly also made available as macros.
  * The deprecated legacy S-compatibility macros PROBLEM, MESSAGE,
    ERROR, WARN, WARNING, RECOVER, ... are no longer defined in
    R_exts/RS.h (included by R.h).  Replace these by calls to
    Rf_error and Rf_warning (defined in header R_ext/Error.h included
    by R.h).
    Header R_ext/RS.h no longer includes R_ext/Error.h.
  * Header R_ext/Constants.h (included by R.h) when included from C++
    now includes the C++ header cfloat rather than the C header
    float.h (now possible as C++11 is required).
  * The legacy S-compatibility macros DOUBLE_* in R_ext/Constants.h
    (included by R.h) are deprecated.
  * The deprecated S-compatibility macros SINGLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * R_Calloc, R_Free and R_Realloc are preferred to their unprefixed
    forms and error messages now use the prefix. These forms were
    introduced in R 3.4.0 and are available even when
    STRICT_R_HEADERS is defined.
  * rmultinom has been documented in 'Writing R Extensions' SS6 so is
    now part of the R API.
  * Similarly, Rtanpi, called from R level tanpi() is now part of the
    R API.
  * The long-deprecated, undocumented and non-API entry point call_R
    is no longer declared in R_ext/RS.h (included by R.h).
  * The header S.h which has been unsupported since Jan 2016 has been
    removed.  Use R.h instead.
  DEPRECATED AND DEFUNCT:
  * The (non-default and deprecated) method = "internal" for
    download.file() and url() no longer supports http:// nor ftp://
    URIs.  (It is used only for file:// URIs.)
    On Windows, download.file(method = "wininet") no longer supports
    ftp:// URIs.  (It is no longer the default method, which is
    "libcurl" and does.)
    On Windows, the deprecated method = "wininet" now gives a warning
    for http:// and https:// URIs for both download.file() and url().
    (It is no longer the default method.)
  * On Windows, the command-line option --max-mem-size and
    environment variable R_MAX_MEM_SIZE are defunct.  The memory
    allocation limit was important for 32-bit builds, but these are
    no longer supported.
  * default.stringsAsFactors() is now formally deprecated, where that
    was only mentioned on its regular help page, previously.  So it
    now gives a warning if called.
  * unix.time() is defunct now; it had been deprecated since R 3.4.0.
  BUG FIXES:
  * Setting digits = 0 in format(), print.default() (and hence
    typically print()) or options() is again invalid.  Its behaviour
    was platform-dependent, and it is unclear what "zero significant
    digits" should mean (PR#18098).
  * Messages from C code in the cairo section of package grDevices
    are now also offered for translation, thanks to Michael Chirico's
    PR#18123.
  * mean(x) with finite x now is finite also without "long.double"
    capability.
  * R CMD Rd2pdf no longer leaves an empty build directory behind
    when it aborts due to an already existing output file.  (Thanks
    to Sebastian Meyer's PR#18141.)
  * density(x, weights = w, na.rm = TRUE) when anyNA(x) is true, now
    removes weights "in parallel" to x, fixing PR#18151, reported by
    Matthias Gondan.  Additionally, it gets a subdensity option.
  * Conversion of \Sexpr[]{&lt;expR&gt;} to LaTeX or HTML no longer
    produces long blocks of empty lines when &lt;expR&gt; itself contains
    several lines all producing empty output.  Thanks to a report and
    patch by Ivan Krylov posted to R-devel.
  * R CMD build no longer fails if a package vignette uses child
    documents and inst/doc exists.  (Thanks to Sebastian Meyer's
    PR#18156.)
  * When an R documentation ('help' source) file man/foo.Rd in a
    package has \donttest{..} examples with a syntax error, it is now
    signalled as ERROR and with correct line numbers relating to the
  * -Ex.R file, thanks to Duncan Murdoch and Sebastian Meyer's
    reports and patch proposals in PR#17501.
  * Improved determination of the correct translation domain in
    non-base packages, addressing the combination of PR#18092 and
    PR#17998 (#c6) with reports and _augmented_ patch #2904 by
    Suharto Anggono.
    Note that "R-base" is no longer the default domain e.g., for
    top-level calls to gettext(); rather translation needs explicit
    domain = * specification in such cases.
  * identical(attrib.as.set=FALSE) now works correctly with data
    frames with default row names (Thanks to Charlie Gao's PR#18179).
  * txtProgressBar() now enforces a non-zero width for argument char,
    without which no progress can be visible.
  * dimnames(table(d)) is more consistent in the case where d is a
    list with a single component, thanks to Thomas Soeiro's report to
    R-devel.
    Further, table(d1, d2) now gives an error when d1 and d2 are data
    frames as suggested by Thomas in PR#18224.
  * Fix for drawing semi-transparent lines and fills on the native
    Windows graphics device (PR#18219 and PR#16694).  Thanks to Nick
    Ray for helpful diagnosis on Bugzilla.
  * The deparser now wraps sub-expressions such as if(A) ..  with
    parentheses when needed; thanks to Duncan Murdoch's PR#18232 and
    Lionel Henry's patches there.
  * remove.packages() no longer tries to uninstall Priority: base
    packages, thanks to a report and suggestions by Colin Fay in
    PR#18227.
  * win.metafile() now has xpinch and ypinch arguments so that the
    user can override Windows' (potentially wrong) guess at device
    dimensions.
  * x[i] and x[[i]] for non-integer i should now behave in all cases
    as always documented: the index used is equivalent to
    as.integer(i) unless that would overflow where trunc(i) is used
    instead; thanks to Suharto Anggono's report and patch proposals
    in PR#17977.
  * asOneSidedFormula() now associates the resulting formula with the
    global environment rather than the evaluation environment created
    for the call.
  * &lt;bibentry&gt;$name now matches the field name case-insensitively,
    consistent with bibentry() creation and the replacement method.
  * cbind() failed to detect some length mismatches with a mixture of
    time-series and non-time-series inputs.
  * The default LaTeX style file Sweave.sty used by the RweaveLatex
    driver no longer loads the obsolete ae package; thanks to a
    report by Thomas Soeiro in PR#18271.  Furthermore, it now skips
    \usepackage[T1]{fontenc} for engines other than pdfTeX (if
    detected) or if the new [nofontenc] option is used.
  * smooth.spline() now stores its logical cv argument more safely,
    fixing a rare bug when printing, and also stores n.
  * smooth.spline(x,y,*) now computes the cv.crit statistic
    correctly, also when is.unsorted(x), fixing PR#18294.
  * The data.frame method of rbind() now warns when binding
    not-wholly-recycling vectors, by analogy to the default method
    (for matrices).
  * setAs() finds the correct class for name to when multiple
    packages define a class with that name. Thanks to Gabor Csardi
    for the report.
  * Fix for detaching a package when two classes of the same name are
    present in method signatures for the same generic. Thanks to
    Gabor Csardi for the report.
  * match.arg("", c("", "a", "B")) gives a better error message, in
    part from PR#17959, thanks to Elin Waring.
  * R CMD Sweave --clean no longer removes pre-existing files or
    subdirectories (PR#18242).
  * The quartz() device no longer splits polylines into subpaths.
    That has caused narrowly-spaced lines with many points to always
    look solid even when dashed line type was used due to dash phase
    restarts.
  * Deparsing constructs such as quote(1 + `!`(2) + 3) works again as
    before R 3.5.0, thanks to the report and patch in PR#18284 by
    Suharto Anggono.
  * as.list(f) for a factor f now keeps names(f), fixing PR#18309.
  * qbeta(.001, .9, .009) and analogous qf() calls now return a
    correct value instead of NaN or wrongly 1, all with a warning;
    thanks to the report by Ludger Goeminne in PR#18302.
  * plot.lm() failed to produce the plot of residuals vs.  factor
    levels (i.e., which=5 when leverages are constant) for models
    with character predictors (PR#17840).
  * interaction.plot(..., xtick = TRUE) misplaced the x-axis line
    (PR#18305).
  * Not strictly fixing a bug, format()ing and print()ing of
    non-finite Date and POSIXt values NaN and +/-Inf no longer show
    as NA but the respective string, e.g., Inf, for consistency with
    numeric vector's behaviour, fulfilling the wish of PR#18308.
  * R CMD check no longer runs test scripts generated from
    corresponding .Rin files twice and now signals an ERROR if
    processing an .Rin script fails.
  * tools::Rd2txt() used for plain-text help pages now renders \hrefs
    (if tools::Rd2txt_options(showURLs = TRUE)) and \urls with
    percent-encoding and standards-compliant delimiting style (angle
    brackets and no URL: prefix).  \email is now rendered with a
    mailto: prefix.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1655985600">- CHANGES IN R 4.2.1:
  NEW FEATURES:
  * New function utils::findCRANmirror() to find out if a CRAN mirror
    has been selected, otherwise fallback to the main site.  This
    behaves in the same way as tools::CRAN_package_db() and is
    intended for packages wishing to access CRAN for purposes other
    than installing packages.
    The need for this was shown by a day when the main CRAN website
    was offline and a dozen or so packages which had its URL
    hardcoded failed their checks.
  INSTALLATION on a UNIX-ALIKE:
  * The libraries searched for by --with-blas (without a value) now
    include BLIS (after OpenBLAS but before ATLAS).  And on macOS,
    the Accelerate framework (after ATLAS).  (This is patterned after
    the AX_BLAS macro from the Autoconf Archive.)
  * The included LAPACK sources have been updated to 3.10.1.
  UTILITIES:
  * The (full path to) the command tidy to be used for HTML
    validation can be set by environment variable R_TIDYCMD.
  * Setting environment variable _R_CHECK_RD_VALIDATE_RD2HTML_ to a
    false value will override R CMD check --as-cran and turn off HTML
    validation.  This provides a way to circumvent a problematic
    tidy.
    The 2006 version that ships with macOS is always skipped.
  C-LEVEL FACILITIES:
  * The undocumented legacy declarations of Sint, Sfloat, SINT_MAX
    and SINT_MIN in header R.h are deprecated.
  BUG FIXES:
  * fisher.test(d) no longer segfaults for "large" d; fixing PR#18336
    by preventing/detecting an integer overflow reliably.
  * tar(., files=*) now produces correctly the warning about invalid
    uid or gid of files, fixing PR#18344, reported by Martin Morgan.
  * tk_choose.files() with multi = FALSE misbehaved on paths
    containing spaces (PR#18334) (regression introduced in R 4.0.0).
  * sort(x, partial = ind, *) now works correctly notably for the
    non-default na.last = FALSE or TRUE, fixing PR#18335 reported by
    James Edwards.
  * Environment variable _R_CHECK_XREFS_REPOSITORIES_ is only used
    for checking .Rd cross-references in R CMD check (as documented)
    and not for other uses looking for a CRAN mirror.
  * The search for a CRAN mirror when checking packages now uses
    getOption("repos") if that specifies a CRAN mirror, even when it
    does not also specify all three Bioconductor repositories (as was
    previously required).
  * The HTML code generated by tools::Rd2HTML() has been improved to
    pass tidy 5.8.0.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1667217600">- CHANGES IN R 4.2.2:
  NEW FEATURES:
  * tools::Rdiff(useDiff = TRUE) checks for the presence of an
    external diff command and switches to useDiff = FALSE if none is
    found.  This allows R CMD Rdiff to always work.
  * On Windows, environment variable R_LIBCURL_SSL_REVOKE_BEST_EFFORT
    can be used to switch to only 'best-effort' SSL certificate
    revocation checks with the default "libcurl" download method.
    This reduces security, but may be needed for downloads to work
    with MITM proxies (PR#18379).
  * (macOS) The run-time check for libraries from XQuartz for X11 and
    Tcl/Tk no longer uses otool from the Apple Developer Tools
    (PR#18400).
  * The LaTeX style for producing the PDF manuals, Rd.sty, now loads
    the standard amsmath, amsfonts and amssymb packages for greater
    coverage of math commands in the Rd \eqn and \deqn macros.  The
    \mathscr LaTeX command is also provided (via the mathrsfs
    package, if available, or the amsfonts bundle otherwise),
    fulfilling the wish of PR#18398.
  * (Windows) The default format of readClipboard() and
    writeClipboard() has been changed to 13 (CF_UNICODETEXT).
  INSTALLATION on a UNIX-ALIKE:
  * The PDF manuals (if built) can be compacted by the new target
    make compact-pdf (at the top level or in directory doc/manual).
  * There is now configure support for LLVM clang 15 on Linux, which
    defaults to position-independent (PIE) executables whereas
    gfortran does not.
  * Many small changes to ease compilation (and suppress warnings)
    with LLVM clang 15.
  BUG FIXES:
  * Rscript -e would fail if stdin were closed (Reported by Henrik
    Bengtsson.)
  * qt(*, log.p=TRUE) in outer tails no longer produces NaN in its
    final steps, thus fixing PR#18360.
  * tools::Rd2latex() now escapes hashes and ampersands when writing
    URLs, fixing LaTeX errors with such URLs in \tabular.
  * When isGeneric(f, fdef=*) is used with mismatching names, the
    warning is better understandable; reported (with fix) in PR#18370
    by Gabe Becker.
  * poly(x, n) now works again (and is now documented) when x is a
    "Date" or "POSIXct" object, or of another class while fulfilling
    mode(x) == "numeric".  This also enables poly(x, *, raw=TRUE) for
    such variables.  Reported by Michael Chirico to R-devel.
  * write.table(), write.csv() and write.csv2() restore their
    numerical precision (internal equivalent of digits = 15) after an
    interrupt (PR#18384).
  * One can now read also byte FF from a clipboard connection
    (PR#18385).
  * source("") and source(character()) now give more helpful error
    messages.
  * R CMD check --as-cran set _R_CHECK_TIMINGS_ too late to have the
    intended effect.
  * as.POSIXlt(x) now also works with very large dates x, fixing
    PR#18401 reported by Hannes M"uhleisen.
  * Files can now be extracted even from very large zip archives
    (PR#18390, thanks to Martin Jakt).
  * Non-finite objects of class "POSIXlt" are now correctly coerced
    to classes "Date" and "POSIXct"; following up on the extension to
    format() them correctly.
  * Added methods for is.finite(), is.infinite() and is.nan() for
    "POSIXlt" date-time objects.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1678881600">- CHANGES IN R 4.2.3:
  C-LEVEL FACILITIES:
  * The definition of DL_FUNC in R_ext/Rdynload.h has been changed to
    be fully C-compliant.  This means that functions loaded _via_ for
    example R_GetCCallable need to be cast to an appropriate type if
    they have any arguments.
  * .Machine has a new element sizeof.time_t to identify old systems
    with a 32-bit type and hence a limited range of date-times (and
    limited support for dates millions of years from present).
  PACKAGE INSTALLATION:
  * (Windows) The default C++ standard had accidentally been left at
    C++11 when it was changed to C++14 on Unix.
  BUG FIXES:
  * As "POSIXlt" objects may be "partially filled" and their list
    components meant to be recycled, length() now is the length of
    the longest component.
  * as.POSIXlt.Date() could underflow for dates in the far past (more
    than half a million years BCE).
  * as.Date.POSIXlt(x) would return "1970-01-01" instead of NA in R
    4.2.2, e.g., for
    x &lt;- as.POSIXlt(c("2019-01-30","2001-1-1"))
    x$mon &lt;- c(0L, NA); as.Date(x)
  * R CMD check failed to apply enabled _R_CHECK_SUGGESTS_ONLY_ to
    examples and vignettes (regression in R 4.2.0).
  * R CMD check did not re-build vignettes in separate processes by
    default (regression in R 4.2.0).
  * Running examples from HTML documentation now restores previous
    knitr settings and options (PR#18420).
  * Quartz: fonts are now located using Core Graphics API instead of
    deprecated ATS which is no longer supported in the macOS 13 SDK
    (PR#18426).  This also addresses an issue where the currently
    used font in the Quartz device context was not correctly
    retained.
  * (Windows) Math symbols in text drawing functions are again
    rendered correctly (PR#18440).  This fixes a regression in R
    4.2.1 caused by a fix in PR#18382 which uncovered an issue in
    GraphApp due to which the symbol charset was not used with TT
    Symbol font face.
  * (Windows) Installing a package with a src/Makefile.{win,ucrt}
    file includes ~/.R/Makevars.win64 in the search for user
    makevars, as documented in "R Installation and Administration"
    and done for packages with a src/Makevars.{win,ucrt} file.
  * format(&lt;POSIXlt_w/_unbalanced_sec&gt;, "....%OS&lt;n&gt;") with n &gt; 0 no
    longer accidentally uses the unbalanced seconds, thanks to
    Suharto Anggono's report (including patch) in PR#18448.
  * solve.default(a, b) works around issues with some versions of
    LAPACK when a contains NA or NaN values.
  * When UseMethod() cannot dispatch, it no longer segfaults
    producing the error message in case of a long class(), thanks to
    Joris Vankerschaver's report (including patch) in PR#18447.
  * When example(foo, ..) produces graphics on an interactive device
    it needs to open itself, it now leaves devAskNewPage() unchanged
    even when it was FALSE, thus fixing a 14 years old '&lt;FIXME&gt;'.
  * packageDescription() again catches errors from encoding
    conversions. This also fixes broken packageVersion() in C locale
    on systems where iconv does not support transliteration.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1681128000">- add patch to build with libcurl &gt;= 8</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1682078400">- CHANGES IN R 4.3.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Calling &amp;&amp; or || with LHS or (if evaluated) RHS of length greater
    than one is now always an error, with a report of the form
    'length = 4' in coercion to 'logical(1)'
    Environment variable _R_CHECK_LENGTH_1_LOGIC2_ no longer has any
    effect.
  NEW FEATURES:
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.10.1.  (This caused some platform-dependent
    changes to package check output.)  And then to the sources from
    LAPACK version 3.11.0 (with changes only to double complex
    subroutines).
  * The included LAPACK sources have been updated to include the four
    Fortran 90 routines rather than their Fortran 77 predecessors.
    This may give some different signs in SVDs or
    eigendecompositions..  (This completes the transition to LAPACK
    3.10.x begun in R 4.2.0.)
  * The LAPACK sources have been updated to version 3.11.0.  (No new
    subroutines have been added, so this almost entirely bug fixes:
    Those fixes do affect some computations with NaNs, including R's
    NA.)
  * The parser now signals _classed_ errors, notably in case of the
    pipe operator |&gt;.  The error object and message now give line and
    column numbers, mostly as proposed and provided by Duncan Murdoch
    in PR#18328.
  * toeplitz() is now generalized for asymmetric cases, with a
    toeplitz2() variant.
  * xy.coords() and xyz.coords() and consequently, e.g., plot(x,y,
    log = "y") now signal a _classed_ warning about negative values
    of y (where log(.) is NA).  Such a warning can be specifically
    suppressed or caught otherwise.
  * Regular expression functions now check more thoroughly whether
    their inputs are valid strings (in their encoding, e.g. in
    UTF-8).
  * The performance of grep(), sub(), gsub() and strsplit() has been
    improved, particularly with perl = TRUE and fixed = TRUE.  Use of
    useBytes = TRUE for performance reasons should no longer be
    needed and is discouraged: it may lead to incorrect results.
  * apropos() gains an argument dot_internals which is used by the
    completion (help(rcompgen)) engine to also see base internals
    such as .POSIXct().
  * Support in tools::Rdiff() for comparing uncompressed PDF files is
    further reduced - see its help page.
  * qqplot(x, y, ...) gains conf.level and conf.args arguments for
    computing and plotting a confidence band for the treatment
    function transforming the distribution of x into the distribution
    of y (Switzer, 1976, _Biometrika_). Contributed by Torsten
    Hothorn.
  * Performance of package_dependencies() has been improved for cases
    when the number of dependencies is large.
  * Strings newly created by gsub(), sub() and strsplit(), when any
    of the inputs is marked as "bytes", are also marked as "bytes".
    This reduces the risk of creating invalid strings and accidental
    substitution of bytes deemed invalid.
  * Support for readLines(encoding = "bytes") has been added to allow
    processing special text files byte-by-byte, without creating
    invalid strings.
  * iconv(from = "") now takes into account any declared encoding of
    the input elements and uses it in preference to the native
    encoding.  This reduces the risk of accidental creation of
    invalid strings, particularly when different elements of the
    input have different encoding (including "bytes").
  * Package repositories in getOption("repos") are now initialized
    from the repositories file when utils is loaded (if not already
    set, e.g., in .Rprofile).  (From a report and patch proposal by
    Gabriel Becker in PR#18405.)
  * compactPDF() gets a verbose option.
  * type.convert() and hence read.table() get new option tryLogical =
    TRUE with back compatible default.  When set to false, converts
    "F" or "T" columns to character.
  * Added new unit prefixes "R" and "Q" for abbreviating
    (unrealistically large) sizes beyond 10^{27} in standard = "SI",
    thanks to Henrik Bengtsson's PR#18435.
  * as.data.frame()'s default method now also works fine with atomic
    objects inheriting from classes such as "roman", "octmode" and
    "hexmode", such fulfilling the wish of PR#18421, by Benjamin
    Feakins.
  * The as.data.frame.vector() utility now errors for wrong-length
    row.names.  It warned for almost six years, with "Will be an
    error!".
  * sessionInfo() now also contains La_version() and reports codepage
    and timezone when relevant, in both print() and toLatex() methods
    which also get new option tzone for displaying timezone
    information when locale = FALSE.
  * New function R_compiled_by() reports the C and Fortran compilers
    used to build R, if known.
  * predict(&lt;lm&gt;, newdata = *) no longer unnecessarily creates an
    offset of all 0s.
  * solve() for complex inputs now uses argument tol and by default
    checks for 'computational singularity' (as it long has done for
    numeric inputs).
  * predict(&lt;rank-deficient lm&gt;, newdata=*) now obeys a new argument
    rankdeficient, with new default "warnif", warning only if there
    are non-estimable cases in newdata.  Other options include
    rankdeficient = "NA", predicting NA for non-estimable newdata
    cases.  This addresses PR#15072 by Russ Lenth and is based on his
    original proposal and discussions in PR#16158 also by David Firth
    and Elin Waring.  Still somewhat experimental.
  * Rgui console implementation now works better with the NVDA screen
    reader when the full blinking cursor is selected.  The underlying
    improvements in cursor handling may help also other screen
    readers on Windows.
  * The drop-field control in GraphApp can now be left with the TAB
    key and all controls can be navigated in the reverse order using
    the Shift+TAB key, improving accessibility of the Rgui
    configuration editor.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now fully accurate
    (instead of to "only" minimally five digits).
  * demo(error.catching) now also shows off withWarnings() and
    tryCatchWEMs().
  * As an experimental feature the placeholder _ can now also be used
    in the rhs of a forward pipe |&gt; expression as the first argument
    in an extraction call, such as _$coef. More generally, it can be
    used as the head of a chain of extractions, such as _$coef[[2]].
  * Spaces in the environment variable used to choose the R session's
    temporary directory (TMPDIR, TMP and TEMP are tried in turn) are
    now fatal.  (On Windows the 'short path' version of the path is
    tried and used if that does not contain a space.)
  * all.equal.numeric() gets a new optional switch giveErr to return
    the numeric error as attribute.  Relatedly,
    stopifnot(all.equal&lt;some&gt;(a, b, ..)) is as "smart" now, as
    stopifnot(all.equal(....)) has been already, thus allowing
    customized all.equal&lt;Some&gt;() wrappers.
  * R on Windows is now able to work with path names longer than 260
    characters when these are enabled in the system (requires at
    least Windows 10 version 1607).  Packages should be updated to
    work with long paths as well, instead of assuming PATH_MAX to be
    the maximum length.  Custom front-ends and applications embedding
    R need to update their manifests if they wish to allow this
    feature.  See
    &lt;https://blog.r-project.org/2023/03/07/path-length-limit-on-windows&gt;
    for more information.
  * 'Object not found' and 'Missing argument' errors now give a more
    accurate error context. Patch provided by Lionel Henry in
    PR#18241.
  * The @ operator is now an S3 generic. Based on contributions by
    Tomasz Kalinowski in PR#18482.
  * New generic chooseOpsMethod() provides a mechanism for objects to
    resolve cases where two suitable methods are found for an Ops
    Group Generic. This supports experimenting with alternative
    object systems. Based on contributions by Tomasz Kalinowski in
    PR#18484.
  * inherits(x, what) now accepts values other than a simple
    character vector for argument what. A new generic, nameOfClass(),
    is called to resolve the class name from what. This supports
    experimenting with alternative object systems. Based on
    contributions by Tomasz Kalinowski in PR#18485.
  * Detection of BLAS/LAPACK in use (sessionInfo()) with FlexiBLAS
    now reports the current backend.
  * The "data.frame" method for subset() now warns about extraneous
    arguments, typically catching the use of = instead of == in the
    subset expression.
  * Calling a:b when numeric a or b is longer than one may now be
    made into an error by setting environment variable
    _R_CHECK_LENGTH_COLON_ to a true value, along the proposal in
    PR#18419 by Henrik Bengtsson.
  * density(x, weights = *) now warns if automatic bandwidth
    selection happens without using weights; new optional warnWbw may
    suppress the warning.  Prompted by Christoph Dalitz' PR#18490 and
    its discussants.
  * rm(list = *) is faster and more readable thanks to Kevin Ushey's
    PR#18492.
  * The plot.lm() function no longer produces a normal Q-Q plot for
    GLMs. Instead it plots a half-normal Q-Q plot of the absolute
    value of the standardized deviance residuals.
  * The print() method for class "summary.glm" no longer shows
    summary statistics for the deviance residuals by default.  Its
    optional argument show.residuals can be used to show them if
    required.
  * The tapply() function now accepts a data frame as its X argument,
    and allows INDEX to be a formula in that case. by.data.frame()
    similarly allows INDICES to be a formula.
  * The performance of df[j] &lt;- value (including for missing j) and
    write.table(df) has been improved for data frames df with a large
    number of columns.  (Thanks to Gabriel Becker's PR#18500,
    PR#18503 and discussants, prompted by a report from Toby Dylan
    Hocking on the R-devel mailing list.)
  * The matrix multiply operator %*% is now an S3 generic, belonging
    to new group generic matrixOps.  From Tomasz Kalinowski's
    contribution in PR#18483.
  * New function array2DF() to convert arrays to data frames,
    particularly useful for the list arrays created by tapply().
  DATES and TIMES:
  * On platforms where (non-UTC) datetimes before 1902 (or before
    1900 as with system functions on recent macOS) are guessed by
    extrapolating time zones from 1902-2037, there is a warning at
    the first use of extrapolation in a session.  (As all time zones
    post 2037 are extrapolation, we do not warn on those.)
  * (Platforms using --with-internal-tzone, including Windows and by
    default macOS). How years are printed in dates or date-times can
    be controlled by environment variable R_PAD_YEARS_BY_ZERO.  The
    default remains to pad to 4 digits by zeroes, but setting value
    no gives no padding (as used by default by glibc).
  * strftime() tries harder to determine the offset for the "%z"
    format, and succeeds on the mainstream R platforms.
  * strftime() has a limit of 2048 bytes on the string produced -
    attempting to exceed this is an error.  (Previously it silently
    truncated at 255 bytes.)
  * sessionInfo() records (and by default prints) the system time
    zone as part of the locale information.  Also, the source
    (system/internal) of the date-time conversion and printing
    functions.
  * Objects of class "POSIXlt" created in this version of R always
    have 11 components: component zone is always set, and component
    gmtoff is set for times in UTC and usually set on the (almost
    all) platforms which have C-level support, otherwise is NA.
  * There are comprehensive validity checks on the structure of
    objects of class "POSIXlt" when converting (including formatting
    and printing).  (This avoids mis-conversions of hand-crafted
    objects.)
  * There is some support for using the native date-time routines on
    macOS: this is only viable on recent versions (e.g. 12.6 and 13)
    and does get wrong some historical changes (before 1900, during
    WWII).  Use of --with-internal-tzone remains the default.
  * as.POSIXct(&lt;numeric&gt;) and as.POSIXlt(.) (without specifying
    origin) now work.  So does as.Date(&lt;numeric&gt;).
  * as.Date.POSIXct(., tz) now treats several tz values, notably
    "GMT" as equivalent to "UTC", proposed and improved by Michael
    Chirico and Joshua Ulrich in PR#17674.
  * Experimental balancePOSIXlt() utility allows using "ragged" and
    or out-of-range "POSIXlt" objects more correctly, e.g., in
    subsetting and subassignments.  Such objects are now documented.
    More experimentally, a "POSIXlt" object may have an attribute
    "balanced" indicating if it is known to be filled or fully
    balanced.
  * Functions axis.Date() and axis.POSIXct() are rewritten to gain
    better default tick locations and better default formats by using
    prettyDate(). Thanks to Swetlana Herbrandt.
  * The mapping of Windows' names for time zones to IANA's 'Olson'
    names has been updated.  When ICU is available (it is by
    default), it is used to get a mapping for the current region set
    in Windows.  This can be overridden by setting environment
    variable TZ to the desired Olson name - see OlsonNames() for
    those currently available.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 16
    and so packages that provide graphics devices should be
    reinstalled.
  * The grDevices and grid packages have new functions for rendering
    typeset glyphs, primarily: grDevices::glyphInfo() and
    grid::grid.glyph().
    Rendering of typeset glyphs is only supported so far on the
    Cairo-based graphics devices and on the pdf() and quartz()
    devices.
  * The defined behaviour for "clear" and "source" compositing
    operators (via grid::grid.group()) has been changed (to align
    better with simple interpretation of original Porter-Duff
    definitions).
  * Support for gradients, patterns, clipping paths, masks, groups,
    compositing operators, and affine transformations has been added
    to the quartz() device.
  INSTALLATION on a UNIX-ALIKE:
  * A system installation of generic LAPACK 3.10.0 or later will be
    preferred to the version in the R sources.
    configure option --with-lapack=no (equivalently --without-lapack)
    forces compilation of the internal LAPACK sources.
    If --with-lapack is not specified, a system liblapack is looked
    for and used if it reports version 3.10.0 or later and does not
    contain BLAS routines.
    Packages using LAPACK will need to be reinstalled if this changes
    to using an external library.
  * On aarch64 Linux platforms using GCC, configure now defaults to
  - fPIC (instead of -fpic), as desired in PR#18326.
  * configure now checks conversion of datetimes between POSIXlt and
    POSIXct around year 2020.  Failure (which has been seen on
    platforms missing tzdata) is fatal.
  * If configure option --with-valgrind-instrumentation is given
    value 1 or 2, option --with-system-valgrind-headers is now the
    default and ignored (with a warning).  It is highly recommended
    that the system headers are installed alongside valgrind: they
    are part of its packaging on some Linux distributions and
    packaged separately (e.g. in the valgrind-devel RPM) on others.
    configure will give a warning if they are not found.
    The system headers will be required in a future release of R to
    build with valgrind instrumentation.
  * libcurl 8.x is now accepted by configure: despite a change in
    major version number it changes neither API nor ABI.
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools43, an update of the Rtools42 toolchain.  It is
    based on gcc 12 and newer versions of MinGW-W64, binutils and
    libraries.  At this time R-devel can still be built using
    Rtools42 without changes, but when R-devel is installed via the
    installer, it will by default look for Rtools43.
  * Old make targets rsync-extsoft and 32-bit ones that are no longer
    needed have been removed.
  * Default builds (including for packages) no longer select C99.
    Thus the C standard used is the default for the compiler, which
    for the toolchain in Rtools43 is C17.  (This is consistent with
    Unix builds.)
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++17 where
    available (which it is on all currently checked platforms): if
    not C++14 or C++11 is used if available otherwise C++ is not
    supported.
  * USE_FC_LEN_T is the default: this uses the correct
    (compiler-dependent) prototypes for Fortran BLAS/LAPACK routines
    called from C/C++, and requires adjustment of many such calls -
    see 'Writing R Extensions' SS6.6.1.
  * There is initial support for C++23 as several compilers are now
    supporting -std=c++23 or -std=c++2b or similar.  As for C++20,
    there no additional configure checks for C++23 features beyond a
    check that the compiler reports a __cplusplus value greater than
    that in the C++20 standard.  C++ feature tests should be used.
  * There is support for a package to indicate the version of the C
    standard which should be used to compile it, and for the
    installing user to specify this.  In most cases R defaults to the
    C compiler's default standard which is C17 (a `bug-fix' of C11) -
    earlier versions of R or compilers may have defaulted to C99.
    Current options are:
    USE_C17 Use a standard that is at most C17.  The intention is to
    allow legacy packages to still be installed when later C
    standards become the default, including packages using new
    keywords as identifiers or with K&amp;R-style function
    declarations.  This will use C17 if available, falling back
    to C11.
    USE_C90 Use the C90 (aka C89) standard.  (As that standard did
    not require compilers to identify that version, all we can
    verify is that the compiler does not claim to be using a
    later standard.  It may accept C99 features - for example
    clang accepts // to make comments.)
    USE_C99 Use the C99 standard. This should be rarely needed - it
    avoids the few new features of C11/C17 which can be useful if
    a package assumes them if C17 is specified and they are not
    implemented.
    USE_C23 Use C23 (or in future, later).  Compiler/library support
    for C23 is still being implemented, but LLVM clang from
    15.0.0 and the upcoming GCC 13 have quite extensive support.
    These can be specified as part of the SystemRequirements field in
    the package's DESCRIPTION file or _via_ options --use-C17 and so
    on of R CMD INSTALL and R CMD SHLIB.
    For further details see "Writing R Extensions" SS1.2.5.
  * (Windows) A src/Makefile.ucrt or src/Makefile.win file is now
    included after R_HOME/etcR_ARCH/Makeconf and so no longer needs
    to include that file itself.  Installation of a package with such
    a file now uses a site Makevars file in the same way as a package
    with a src/Makevars.win file would.
  * configure is now passed crucial variables such as CC and CFLAGS
    in its environment, as many packages were not setting them (as
    documented in 'Writing R Extensions' SS1.2).
    This has most effect where configure is used to compile parts of
    the package - most often by cmake or libtool which obfuscate the
    actual compile commands used.
    Also used for configure.win and configure.ucrt on Windows.
  FORTRAN FLAGS:
  * The flag -fno-optimize-sibling-calls is no longer forced for
    gfortran 7 and later.  It should no longer be needed now using
    'hidden' character-length arguments when calling BLAS/LAPACK
    routines from C/C++ is the default even for packages.  (Unless
    perhaps packages call Fortran code from C/C++ without using R's
    headers and without allowing for these arguments.)
  C-LEVEL FACILITIES:
  * The deprecated S-compatibility macros DOUBLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * The deprecated legacy typedefs of Sint and Sfloat in header R.h
    are no longer defined, and that header no longer includes header
    limits.h from C nor climits from C++.
  * New macro CAD5R() is provided in Rinternals.h and used in a few
    places in the R sources.
  * ALTREP now supports VECSXP vectors. Contributed by Gabor Csardi
    in PR#17620.
  * The Rcomplex definition (in header R_ext/Complex.h) has been
    extended to prevent possible mis-compilation when interfacing
    with Fortran (PR#18430).  The new definition causes compiler
    warnings with static initializers such as {1, 2}, which can be
    changed to {.r=1, .i=2}.
    Using the new definition from C++ depends on compiler extensions
    supporting C features that have not been incorporated into the
    C++ standards but are available in g++ and clang++: this may
    result in C++ compiler warnings but these have been worked around
    for recent versions of common compilers (GCC, Apple/LLVM clang,
    Intel).
    It is intended to change the inclusion of header R_ext/Complex.h
    by other R headers, so C/C++ code files which make use of
    Rcomplex should include that header explicitly.
  UTILITIES:
  * R CMD check does more checking of package .Rd files, warning
    about invalid email addresses and (some) invalid URIs and noting
    empty \item labels in description lists.
  * R CMD check now also reports problems when reading package news
    in md (file NEWS.md) and (optionally) plain text (file NEWS)
    formats.
  * _R_CHECK_TIMINGS_ defaults to a value from the environment even
    for R CMD check --as-cran; this allows for exceptionally fast or
    slow platforms.
    It now applies to checking PDF and HTML versions of the manuals,
    and 'checking CRAN incoming feasibility'.
  * R CMD check can optionally (but included in --as-cran) check
    whether HTML math rendering _via_ KaTeX works for the package .Rd
    files.
  * Non-interactive debugger invocations can be trapped by setting
    the environment variable _R_CHECK_BROWSER_NONINTERACTIVE_ to a
    true value.  This is enabled by R CMD check --as-cran to detect
    the use of leftover browser() statements in the package.
  * The use of sprintf and vsprintf from C/C++ has been deprecated in
    macOS 13 and is a known security risk.  R CMD check now reports
    (on all platforms) if their use is found in compiled code:
    replace by snprintf or vsnprintf respectively. [*NB:* whether
    such calls get compiled into the package is platform-dependent.]
  * Where recorded at installation, R CMD check reports the C and
    Fortran compilers used to build R.
    It reports the OS in use (if known, as given by osVersion) as
    well as that R was built for.
    It notes if a C++ standard was specified which is older than the
    current default: many packages have used C++11 to mean 'not
    C++98' - as C++11 is the minimum supported since R 4.0.0, that
    specification can probably be removed.
  * R CMD INSTALL reports the compilers (and on macOS, the SDK) used,
    and this is copied to the output of R CMD check.
    Where a C++ standard is specified, it is reported.
  * R CMD check's 'checking compilation flags in Makevars' has been
    relaxed to accept the use of flags such as -std=f2008 in
    PKG_FFLAGS.
  * tools::buildVignettes() has a new argument skip, which is used by
    R CMD check to skip (and note) vignettes with unavailable
    \VignetteDepends (PR#18318).
  * New generic .AtNames() added to enable class-specific completions
    after @. The formerly internal function findMatches() is now
    exported, mainly for use in methods for .DollarNames() and
    .AtNames().
  DEPRECATED AND DEFUNCT:
  * default.stringsAsFactors() is defunct.
  * Calling as.data.frame.&lt;class&gt;() directly (for 12 atomic classes)
    is going to be formally deprecated, currently activated by
    setting the environment variable
    _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ to non-empty, which also
    happens in R CMD check --as-cran.
  BUG FIXES:
  * Hashed environments with sizes less than 5 can now grow.
    (Reported to R-devel by Duncan Garmonsway.)
  * as.character(&lt;Rd&gt;, deparse = TRUE) failed to re-escape curly
    braces in LaTeX-like text.  (Reported by Hadley Wickham in
    PR#18324.)
  * library() now passes its lib.loc argument when requiring Depends
    packages; reported (with fix) in PR#18331 by Mikael Jagan.
  * R CMD Stangle: improved message about 'Output' files.
  * head(x, n) and tail(x, n) now signal an error if n is not
    numeric, instead of incidentally "working" sometimes returning
    all of x.  Reported and discussed by Colin Fay, in PR#18357.
  * The "lm" method for summary() now gives the correct F-statistic
    when the model contains an offset.  Reported in PR#18008.
  * C() and `contrasts&lt;-`() now preserve factor level names when
    given a function object (as opposed a function name which did
    preserve names). Reported in PR#17616.
  * c(a = 1, 2)[[]] no longer matches 2 but rather signals a
    _classed_ error.  Reported and analysed by Davis Vaughan in
    PR#18367, a duplicate of PR#18004, by Jan Meis et al.  For
    consistency, NULL[[]] is also erroneous now.  x[[]] &lt;- v gives an
    error of the same class "MissingSubscriptError".
  * The relist() function of utils now supports NULL elements in the
    skeleton (PR#15854).
  * ordered(levels = *) (missing x) now works analogously to factor(,
    ordered=TRUE); reported (with fix) by Achim Zeileis in PR#18389.
  * User-defined Rd macro definitions can now span multiple lines,
    thanks to a patch from Duncan Murdoch. Previously, the Rd parser
    silently ignored everything after the first line.
  * Plain-text help (tools::Rd2txt()) now preserves an initial blank
    line for text following description list items.
  * tools::Rd2HTML() and tools::Rd2latex() no longer split \arguments
    and \value lists at Rd comments.
  * tools::Rd2latex() now correctly handles optional text outside
    \items of argument lists as well as bracketed text at the
    beginning of sections, e.g., \value{[NULL]}.
  * as.character(&lt;POSIXt&gt;) now behaves more in line with the methods
    for atomic vectors such as numbers, and is no longer influenced
    by options().  Ditto for as.character(&lt;Date&gt;).  The
    as.character() method gets arguments digits and OutDec with
    defaults _not_ depending on options().  Use of as.character(*,
    format = .) now warns.
  * Similarly, the as.character.hexmode() and *.octmode() methods
    also behave as good citizen methods and back compatibility option
    keepStr = TRUE.
  * The as.POSIXlt(&lt;POSIXlt&gt;) and as.POSIXct(&lt;POSIXct&gt;) default
    methods now do obey their tz argument, also in this case.
  * as.POSIXlt(&lt;Date&gt;) now does apply a tz (time zone) argument, as
    does as.POSIXct(); partly suggested by Roland Fuss on the R-devel
    mailing list.
  * as.Date.POSIXlt(x) now also works when the list components are of
    unequal length, aka "partially filled" or "ragged".
  * expand.model.frame() looked up variables in the wrong environment
    when applied to models fitted without data.  Reported in
    PR#18414.
  * time() now (also) uses the ts.eps = getOption("ts.eps") argument
    and thus by default rounds values very close to the start (or
    end) of a year.  Based on a proposal by Andre"i V. Kostyrka on
    R-help.
  * Printing of a factanal() result with just one factor and sort =
    TRUE now works regularly, fixing PR#17863 by Timothy Bates,
    thanks to the 'R Contributors' working group.
  * Printing 0-length objects of class "factor", "roman", "hexmode",
    "octmode", "person", "bibentry", or "citation" now prints
    something better, one of which fixes PR#18422, reported by
    Benjamin Feakins.
  * Sys.timezone() queries timedatectl only if systemd is loaded;
    addressing a report by Jan Gorecki in PR#17421.
  * The formula method of cor.test() had scoping problems when
    environment(formula) was not the calling environment; reported
    with a patch proposal by Mao Kobayashi in PR#18439.
  * attach() of an environment with active bindings now preserves the
    active bindings.  Reported by Kevin Ushey in PR#18425.
  * BLAS detection now works also with system-provided libraries not
    available as regular files.  This fixes detection of the
    Accelerate framework on macOS since Big Sur.  Reported by David
    Novgorodsky.
  * download.file() gives a helpful error message in case of an
    invalid download.file.method option, thanks to Colin Fay's report
    in PR#18455.
  * Sporadic crashes of Rterm when using completion have been fixed.
  * Rprof() is now more reliable.  A livelock in thread
    initialization with too short sampling interval has been fixed on
    macOS.  A deadlock in using the C runtime has been fixed on
    Windows.  A potential deadlock has been prevented on Unix.
  * Cursor placement in Rgui now works even after a fixed-width font
    is selected.
  * Mandatory options (options()) are now set on startup so that
    saving and restoring them always works (PR#18372).
  * Package installation, R CMD INSTALL or install.packages(*), now
    parses each of the &lt;pkg&gt;/R/*.R files individually instead of
    first concatenating and then parse()ing the large resulting file.
    This allows parser or syntax errors to be diagnosed with correct
    file names and line numbers, thanks to Simon Dedman's report and
    Bill Dunlap's patch in PR#17859.
    This _does_ require syntactically self contained R source files
    now, fixing another inadvertent bug.
  * predict.lm(&lt;model with offset&gt;) now finds the offset in the
    correct environment, thanks to Andr'e Gillibert's report and patch
    in PR#18456.
  * getInitial(&lt;formula&gt;) now finds the selfStart model in the
    correct environment.  (Reported by Ivan Krylov in PR#18368.)
  * Fix for possible segfault when using recently-added graphics
    features, such as gradients, clipping paths, masks, and groups
    with pdf(file=NULL).
  * class(m) &lt;- class(m) no longer changes a matrix m by adding a
    class _attribute_.
  * packageDate(pkg) now only warns once if there is no pkg.
  * When ts() creates a multivariate time series, "mts", it also
    inherits from "array" now, and is.mts() is documented _and_
    stricter.
  * Rd2txt() now preserves line breaks of \verb Rd content and from
    duplicated \cr.  The former also fixes the rendering of verbatim
    output from Rd \Sexpr in plain-text help.
  * uniroot(f, interval) should no longer wrongly converge _outside_
    the interval in some cases where abs(f(x)) == Inf for an x at the
    interval boundary, thanks to posts by Ben Bolker and Serguei
    Sokol on R-devel.
  * Vectorized alpha handling in palette functions such as in gray(),
    rainbow(), or hcl.colors() works correctly now, thanks to Achim
    Zeileis' report and patch in PR#18476.
  * Formatting and print()ing of bibentry objects has dropped the
    deprecated citation.bibtex.max argument, such that the bibtex
    argument's default for print.bibentry() depends directly on the
    citation.bibtex.max option, whereas in format.bibentry() the
    option no longer applies.
  * Attempting to use a character string naming a foreign function
    entry point in a foreign function call in a package will now
    signal an error if the packages has called R_forceSymbols to
    specify that symbols must be used.
  * An error in table() could permanently set options(warn=2)
    promoting all subsequent warnings to errors.
  * The sigma() function gave misleading results for binary GLMs.  A
    new method for objects of class "glm" returns the square root of
    the estimate of the dispersion parameter using the same
    calculation as summary.glm().
  * bs() and ns() in the (typical) case of automatic knot
    construction, when some of the supposedly inner knots coincide
    with boundary knots, now moves them inside (with a warning),
    building on PR#18442 by Ben Bolker.
  * R CMD on Windows now skips the site profile with --no-site-file
    and --vanilla even when R_PROFILE is set (PR#18512, from Kevin
    Ushey).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1686916800">- CHANGES IN R 4.3.1:
  C-LEVEL FACILITIES:
  * The C-level API version of R's integrate(), Rdqags() in Applic.h,
    now returns the correct number of integrand evaluations neval,
    fixing PR#18515 reported and diagnosed by Stephen Wade.
  * The C prototypes for LAPACK calls dspgv and dtptrs in
    R_exts/Lapack.h had one too many and one too few character length
    arguments - but this has not caused any known issues. To get the
    corrected prototypes, include
    [#]include &lt;Rconfig.h&gt; // for PR18534fixed
    [#]ifdef PR18534fixed
    [#] define usePR18534fix 1
    [#]endif
    [#]include &lt;R_exts/Lapack.h&gt;
    in your C/C++ code (PR#18534).
  INSTALLATION:
  * Many of the checks of esoteric Internet operations and those
    using unreliable external sites have been moved to a new target
    that is not run by default and primarily intended for the core
    developers.  To run them use
    cd tests; make test-Internet-dev
  BUG FIXES:
  * .S3methods(), typically called from methods(), again marks
    methods from package base as visible.
    Also, the visibility of non-base methods is again determined by
    the method's presence in search().
  * tools::Rdiff() is now more robust against invalid strings, fixing
    installation tests on Windows without Rtools installed
    (PR#18530).
  * Fix (new) bug in hcl.colors(2, *), by Achim Zeileis (PR#18523).
  * head(., &lt;illegal&gt;) and tail(..) now produce more useful "Error in
    ...." error messages, fixing PR#18362.
  * Package code syntax on Windows is checked in UTF-8 when UTF-8 is
    the native encoding.
  * na.contiguous(x) now also returns the first run, when it is at
    the beginning and there is a later one of the same length;
    reported to R-devel, including a fix, by Georgi Boshnakov.
    Further, by default, it modifies only an existing attr(*,"tsp")
    but otherwise no longer sets one.
  * chol(&lt;not pos.def&gt;, pivot = &lt;T|F&gt;) now gives a correct error or
    warning message (depending on pivot), thanks to Mikael Jagan's
    (PR#18541).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1699012800">- CHANGES IN R 4.3.2:
  NEW FEATURES:
  * The default initialization of the "repos" option from the
    repositories file at startup can be skipped by setting
    environment variable R_REPOSITORIES to NULL such that
    getOption("repos") is empty if not set elsewhere.
  * qr.X() is now an implicit S4 generic in methods.
  * iconv(to = "ASCII//TRANSLIT") is emulated using substitution on
    platforms which do not support it (notably Alpine Linux).  This
    should give a human-readable conversion in ASCII on all platforms
    (rather than NA_character_).
  * trans3d() gains options continuous and verbose addressing the
    problem of possible "wrap around" when projecting too long
    curves, as reported by Achim Zeileis in PR#18537.
  * tools::showNonASCII() has been rewritten to work better on macOS
    14 (which has a changed implementation of iconv()).
  * tiff(type = "quartz") (the default on macOS) now warns if
    compression is specified: it continues to be ignored.
  INSTALLATION on a UNIX-ALIKE:
  * There is some support for building with Intel's LLVM-based
    compilers on x86_64 Linux, such as (C) icx, (C++) ipcx and
    (Fortran) ifx from oneAPI 2023.x.y.
  * There is support for using LLVM's flang-new as the Fortran
    compiler from LLVM 16.0.x (preferably 17.0.0 or later).
  UTILITIES:
  * R CMD check reports the use of the Fortran 90 random number
    generator RANDOM_NUMBER() and the subroutines to initialize it.
    'Writing R Extensions' has example code to use R's RNGs from
    Fortran.
  BUG FIXES:
  * substr(x, n, L) &lt;- cc now works (more) correctly for multibyte
    UTF-8 strings x when L &gt; nchar(x), thanks to a report and patch
    by 'Architect 95'.
  * contrib.url(character()) now returns 0-length character() as
    documented, which also avoids spurious warnings from
    available.packages() et al. in the edge case of an empty vector
    of repository URLs.
  * readChar(., 4e8) no longer fails, thanks to Kodi Arfer's report
    (PR#18557).
  * lapply(&lt;list&gt;, as.data.frame) no longer warns falsely for some
    base vector components.
  * Communication between parent and child processes in the multicore
    part of parallel could fail on platforms that do not support an
    arbitrarily large payload in system functions read()/write() on
    pipes (seen on macOS where a restriction to INT_MAX bytes is
    documented, without doing a partial read unlike Linux). The
    payload is now split into 1Gb chunks to avoid that problem.
    (PR#18571)
  * qqplot(x,y, conf.level=.) gives better confidence bounds when
    length(x) != length(y), thanks to Alexander Ploner's report and
    patch proposal (PR#18557).
  * norm(&lt;0-length&gt;, "2") now gives zero instead of an error, as all
    the other norm types, thanks to Mikael Jagan's PR#18542.
  * Build-stage Rd macros \packageAuthor and \packageMaintainer now
    process Authors@R, fixing NA results when the package DESCRIPTION
    omits Author and Maintainer fields.
  * Formatting and printing complex numbers could give things like
    0.1683-0i because of rounding error: -0i is now replaced by +0i.
  * postscript() refused to accept a title comment containing the
    letter "W" (PR#18599).
  * isoreg(c(1,Inf)) signals an error instead of segfaulting, fixing
    PR#18603.
  * tiff(type = "Xlib") was only outputting the last page of
    multi-page plots.
  * tools::latexToUtf8() again knows about \~{n} and other letters
    with tilde, fixing a regression in R 4.3.0, and about \^{i} as an
    alternative to \^{\i} (similarly with other accents).
    Furthermore, LaTeX codes for accented I letters are now correctly
    converted, also fixing related mistakes in
    tools::encoded_text_to_latex().
  * tar(*, tar = "internal") no longer creates out-of-spec tar files
    in the very rare case of user or group names longer than 32
    bytes, fixing PR#17871 with thanks to Ivan Krylov.
  * When using the "internal" timezone datetime code, adding a
    fraction of a second no longer adds one second, fixing PR#16856
    from a patch by Ivan Krylov.
  * tools::checkRd() no longer produces spurious notes about
    "unnecessary braces" from multi-line Rd results of \Sexpr macros.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1709208000">- CHANGES IN R 4.3.3:
  NEW FEATURES:
  * iconv() now fixes up variant encoding names such as "utf8"
    case-insensitively.
  DEPRECATED AND DEFUNCT:
  * The legacy encoding = "MacRoman" is deprecated in pdf() and
    postscript(): support was incomplete in earlier versions of R.
  BUG FIXES:
  * Arguments are now properly forwarded to methods on S4 generics
    with ... in the middle of their formal arguments. This was broken
    for the case when a method introduced an argument but did not
    include ... in its own formals. Thanks to Herv'e Pag`es for the
    report PR#18538.
  * Some invalid file arguments to pictex(), postscript() and xfig()
    opened a file called NA rather than throw an error.  These
    included postscript(NULL) (which some people expected to work
    like pdf(NULL)).
  * Passing filename = NA to svg(), cairo_pdf(), cairo_ps() or the
    Cairo-based bitmap devices opened a file called NA: it now throws
    an error.
  * quartz(file = NA) opened a file called NA, including when used as
    a Quartz-based bitmap device.  It now gives an error.
  * rank(&lt;long vector&gt;) now works, fixing PR#18617, thanks to Ilia
    Kats.
  * seq.int() did not adequately check its length.out argument.
  * match(&lt;POSIXct&gt;, .) is correct again for differing time zones,
    ditto for "POSIXlt", fixing PR#18618 reported by Bastian Klein.
  * drop.terms(*, dropx = &lt;0-length&gt;) now works, fixing PR#18563 as
    proposed by Mikael Jagan.
  * drop.terms(*) keeps + offset(.) terms when it should, PR#18565,
    and drop.terms() no longer makes up a response, PR#18566, fixing
    both bugs thanks to Mikael Jagan.
  * getS3method("t", "test") no longer finds the t.test() function,
    fixing PR#18627.
  * pdf() and postscript() support for the documented Adobe encodings
    "Greek" and "Cyrilllic" was missing (although the corresponding
    Windows' codepages could be used).
  * Computations of glyph metric information for pdf() and
    postscript() did not take into account that transliteration could
    replace one character by two or more (only seen on macOS 14) and
    typically warned that the information was not known.
  * rank(x) no longer overflows during integer addition, when
    computing rank average for largish but not-yet long vector x,
    fixing PR#18630, thanks to Ilia Kats.
  * list.files() on Windows now returns also files with names longer
    that 260 bytes (the Windows limit is 260 characters).
    Previously, some file names particularly with 'East Asian'
    characters were omitted.
  * cov2cor(&lt;0 x 0&gt;) now works, fixing PR#18423 thanks to Mikael
    Jagan and Elin Waring.
  * cov2cor(&lt;negative diagonal&gt;) and similar now give one warning
    instead of two, with better wording, fixing PR#18424 thanks to
    Mikael Jagan.
  * tools:: startDynamicHelp() now ensures port is in proper range,
    fixing PR#18645.
  * pbeta(x, a,b) is correct now for x=0 or 1 in the boundary cases
    where a or b or both are 0, fixing PR#18672 thanks to Michael
    Fay.
  * pmatch(x, table) for large table, also called for data frame row
    selection, dfrm[nm, ], is now interruptible, fixing PR#18656.
  * predict(&lt;rank-deficient lm&gt;, newdata=*) fix computing of nbasis,
    see Russ Lenth's comment 29 in PR#16158.
  * Added a work-around for a bug in macOS 14.3.1 and higher which
    prevents R plots in the Quartz Cocoa device from updating on
    screen.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1713960000">- CHANGES IN R 4.4.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Startup banners, R --version, sessionInfo() and R CMD check no
    longer report (64-bit) as part of the platform as this is almost
    universal - the increasingly rare 32-bit platforms will still
    report (32-bit).
    On Windows, ditto for window titles.
  * is.atomic(NULL) now returns FALSE, as NULL is not an atomic
    vector.  Strict back-compatibility would replace is.atomic(foo)
    by (is.null(foo) || is.atomic(foo)) but should happen only
    sparingly.
  NEW FEATURES:
  * The confint() methods for "glm" and "nls" objects have been
    copied to the stats package.  Previously, they were stubs which
    called versions in package MASS. The MASS namespace is no longer
    loaded if you invoke (say) confint(glmfit).  Further, the "glm"
    method for profile() and the plot() and pairs() methods for class
    "profile" have been copied from MASS to stats.  (profile.nls()
    and plot.profile.nls() were already in stats.)
  * The confint() and profile methods for "glm" objects have gained a
    possibility to do profiling based on the Rao Score statistic in
    addition to the default Likelihood Ratio. This is controlled by a
    new test = argument.
  * The pairs() method for "profile" objects has been extended with a
    which = argument to allow plotting only a subset of the
    parameters.
  * The "glm" method for anova() computes test statistics and
    p-values by default, using a chi-squared test or an F test
    depending on whether the dispersion is fixed or free.  Test
    statistics can be suppressed by giving argument test a false
    logical value.
  * In setRepositories() the repositories can be set using their
    names via name = instead of index ind =.
  * methods() and .S3methods() gain a all.names option for the (rare)
    case where functions starting with a . should be included.
  * Serializations can now be interrupted (e.g., by Ctrl-C on a
    Unix-alike) if they take too long, e.g., from save.image(),
    thanks to suggestions by Ivan Krylov and others on R-devel.
  * New startup option --max-connections to set the maximum number of
    simultaneous connections for the session.  Defaults to 128 as
    before: allowed values up to 4096 (but resource limits may in
    practice restrict to smaller values).
  * R on Windows (since Windows 10 2004) now uses the new Segment
    Heap allocator. This may improve performance of some
    memory-intensive applications.
  * When R packages are built, typically by R CMD build &lt;pkg&gt;, the
    new --user=&lt;build_user&gt; option overrides the (internally
    determined) user name, currently Sys.info()["user"] or LOGNAME.
    This is a (modified) fulfillment of Will Landau's suggestion in
    PR#17530.
  * tools::testInstalledBasic() gets new optional arguments outDir
    and testSrcdir, e.g., allowing to use it in a &lt;builddir&gt; !=
    &lt;srcdir&gt; setup, and in standard "binary" Windows installation
  * if* a source tests/ folder is present.
  * range(&lt;DT_with_Inf&gt;, finite = TRUE) now work for objects of class
    "Date", "POSIXct", and "POSIXlt" with infinite entries,
    analogously to range.default(), as proposed by Davis Vaughan on
    R-devel.  Other range()-methods can make use of new function
    .rangeNum().
  * New .internalGenerics object complementing .S3PrimitiveGenerics,
    for documentation and low-level book-keeping.
  * grid() now invisibly returns the x- and y- coordinates at which
    the grid-lines were drawn.
  * norm(., type) now also works for complex matrices.
  * kappa(., exact = TRUE, norm = *) now works for all norms and also
    for complex matrices.  In symmetric / triangular cases, the new
    argument uplo = "U" | "L" allows the upper or lower triangular
    part to be specified.
  * memDecompress(type = "unknown") recognizes compression in the
    default 'zlib' format as used by memCompress(type = "gzip").
  * memCompress() and memDecompress() will use the libdeflate library
    (&lt;https://github.com/ebiggers/libdeflate&gt;) if installed.  This
    uses the same type of compression for type = "gzip" but is 1.5-2x
    faster than the system libz library on some common platforms: the
    speed-up may depend on the library version.
  * diff() for objects of class "Date", "POSIXct", and "POSIXlt"
    accepts a units argument passed via ....
  * Dynamic help now does a much better job of rendering package
    DESCRIPTION metadata.
  * Rprof() gains an event argument and support for elapsed (real)
    time profiling on Unix (PR#18076).
  * filled.contour() gains a key.border argument.
  * tools::update_pkg_po() gets arguments pot_make and mo_make for
    _not_ re-making the corresponding files, and additionally a
    verbose argument.
  * Hexadecimal string colour specifications are now accepted in
    short form, so, for example, we can use "#123", which is
    equivalent to "#112233".
    Thanks to MikeFC for the original idea and Ella Kaye, Malcolm
    Barrett, George Stagg, and Hanne Oberman for the patch.
  * Plain-text help shows \var markup by angle brackets.
  * The new experimental primitive function declare() is intended to
    eventually allow information about R code to be communicated to
    the interpreter, compiler, and code analysis tools. The syntax
    for declarations is still being developed.
  * Functions psmirnov(), qsmirnov() and rsmirnov() in package stats
    have had argument two.sided renamed to alternative, to take into
    account that the permutation distributions of the one-sided
    statistics can be different in the case of ties.  Consequence of
    PR#18582.
  * sort() is now an implicit S4 generic in methods.
  * Formatting and printing, format(z), print(z), of complex vectors
    z no longer zap relatively small real or imaginary parts to zero,
    fixing PR#16752.  This is an API change, as it was documented
    previously to round real and imaginary parts together on purpose,
    producing nicer looking output.  As mentioned, e.g. in the PR,
    this change is compatible with many other "R-like" programming
    environments.
    We have simplified the internal code and now basically format the
    real and imaginary parts independently of each other.
  * New experimental functions Tailcall() and Exec() to support
    writing stack-space-efficient recursive functions.
  * Where characters are attempted to be plotted by pdf(),
    postscript() and xfig() which are not in the selected 8-bit
    character set (most often Latin-1) and the R session is using a
    UTF-8 locale, the warning messages will show the UTF-8 character
    rather than its bytes and one dot will be substituted per
    character rather than per byte.  (Platforms whose iconv() does
    transliteration silently plot the transliteration.)
    In a UTF-8 locale some transliterations are now done with a
    warning (e.g., dashes and Unicode minus to hyphen, ligatures are
    expanded, permille (‰) is replaced by o/oo), although the OS may
    have got there first.  These are warnings as they will continue
    to be replaced by dots in earlier versions of R.
  * The matrix multiplication functions crossprod() and tcrossprod()
    are now also primitive and S3 generic, as %*% had become in R
    4.3.0.
  * source() and example() have a new optional argument catch.aborts
    which allows continued evaluation of the R code after an error.
  * The non-Quartz tiff() devices allow additional types of
    compression if supported by the platform's libtiff library.
  * The list of base and recommended package names is now provided by
    tools::standard_package_names().
  * cairo_pdf() and cairo_ps() default to onefile = TRUE to closer
    match pdf() and postscript().
  * New option catch.script.errors provides a documented way to catch
    errors and then continue in non-interactive use.
  * L %||% R newly in base is an expressive idiom for the phrases
    if(!is.null(L)) L else R or if(is.null(L)) R else L.
  * The return value from warnings() now always inherits from
    "warnings" as documented, now also in the case of no warnings
    where it previously returned NULL.
  * as.complex("1i") now returns 0 + 1i instead of NA with a warning.
  * z &lt;- c(NA, 1i) now keeps the imaginary part Im(z[1]) == 0, no
    longer coercing to NA_complex_.  Similarly, cumsum(z) correctly
    sums real and imaginary parts separately, i.e., without
    "crosstalk" in case of NAs.
  * On Alpine Linux iconv() now maps "latin2", "latin-2", "latin9"
    and "latin-9" to encoding names the OS knows about
    (case-insensitively).
  * iconv(sub = "Unicode") now always zero-pads to four (hex) digits,
    rather than to 4 or 8.  (This seems to have become the convention
    once Unicode restricted the number of Unicode points to 2^21 - 1
    and so will never need more than 6 digits.)
  * NCOL(NULL) now returns 0 instead of 1, for consistency with
    cbind().
  * The information for the Euro glyph missing from the Adobe .afm
    files for the Courier, Helvetica and Times families has been
    copied from their URW equivalents - this will improve vertical
    centring in the pdf() and postscript() devices.
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.12.0.  The changes are almost entirely cosmetic.
  * The included LAPACK sources have been updated to version 3.12.0
    and some further double-complex routines added.
  * There are new font families for the 2014--5 URW 2.0 fonts (see
    ?pdf) which are included in recent versions of Ghostscript.
    These have font widths for most Greek glyphs and a few others
    which were missing from the original versions (whose font
    families remain available for reproducibility, although
    Ghostscript-based viewers will render using the 2.0 versions).
  * Improve the large-n efficiency of as.matrix(&lt;dist&gt;), thanks an R
    contributors effort, notably by Tim Taylor and Heather Turner,
    see PR#18660.
  * The default and numeric methods of all.equal() get a check.class
    option.
  * zapsmall() gets new optional arguments, function mFUN and min.d,
    for extra flexibility; fulfills a wish in PR#18199.  Also, it is
    now an implicit S4 generic in package methods.
  * The Rd filter for aspell() gains an ignore argument.
  * New generic function sort_by(), primarily useful for the
    data.frame method which can be used to sort rows of a data frame
    by one or more columns.
  * The icence headers for the RPC code in src/extra/xdr have been
    updated to use the GPL-compatible licence published by Oracle
    America in 2010.
  * New function pkg2HTML() in tools to create single-page HTML
    reference manuals for R packages.
  * The byte code evaluator now uses less C stack space for recursive
    calls to byte-compiled functions. It also makes more of an effort
    to avoid allocations for scalar return values.
  * New completion option backtick (disabled by default) allows
    non-syntactic completions to be wrapped in backquotes. This is
    currently only useful for Jupyter notebooks via the IRkernel
    package, and may cause problems for other backends.
  INSTALLATION:
  * The parser has been updated to work with bison 3.8.2, which is
    now used for the pre-generated parsers in gram.c, file.c, and
    gramRd.c. A few parser error messages have changed, which may
    affect code that relies on exact messages.
  INSTALLATION on a UNIX-ALIKE:
  * System valgrind headers are now required to use configure option
  - -with-valgrind-instrumentation with value 1 or 2.
  * configure will warn if it encounters a 32-bit build, as that is
    nowadays almost untested.
  * Environment variable R_SYSTEM_ABI is no longer used and so no
    longer recorded in etc/Renviron (it was not on Windows and was
    only ever used when preparing package tools).
  * If the libdeflate library and headers are available, libdeflate
    rather than libz is used to (de)compress R objects in lazy-load
    databases.  Typically tasks spend up to 5% of their time on such
    operations, although creating lazy-data databases is one of the
    exceptions.
    This can be suppressed if the library is available by the
    configure option --without-libdeflate-compression.
  * configure option --enable-lto=check has not worked reliably since
    2019 and has been removed.
  * The minimum autoconf requirement for a maintainer build has been
    increased to autoconf 2.71.
    It is intended to increase this to 2.72 for R 4.5.0: the
    distributed configure file was generated using 2.72.
  * The minimum version requirement for an external LAPACK has been
    reduced to 3.9.0.
  * No default C++ compiler is set if no C++17 compiler is detected:
    there is no longer an automatic fallback to C++14 or C++11.
    Compilers from the last five years should have sufficient
    support: for others macros CXX and CXXSTD can be set in file
    config.site to provide a fallback if needed.
    The Objective-C++ compiler now by default uses the standard
    selected by R for C++ (currently C++17) rather than the default
    standard for the C++ compiler (which on macOS is still C++98).
  INSTALLATION on macOS:
  * A new configure option --with-newAccelerate makes use of Apple's
    'new' BLAS / LAPACK interfaces in their Accelerate framework.
    Those interfaces are only available in macOS 13.3 or later, and
    building requires SDK 13.3 or later (from the Command Line Tools
    or Xcode 14.3 or later).
    By default the option uses new Accelerate for BLAS calls: to also
    use it for LAPACK use option --with-newAccelerate=lapack.  The
    later interfaces provide LAPACK 3.9.1 rather than 3.2.1: 3.9.1 is
    from 2021-04 and does not include the improved algorithms
    introduced in LAPACK 3.10.0 (including for BLAS calls).
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools44, an update of the Rtools43 toolchain.  It is
    based on GCC 13 and newer versions of MinGW-W64, binutils and
    libraries (targeting 64-bit Intel CPUs).  R-devel can no longer
    be built using Rtools43 without changes.
  * Rtools44 has experimental support for 64-bit ARM (aarch64) CPUs
    _via_ the LLVM 17 toolchain using lld, clang/flang-new and
    libc++.
  UTILITIES:
  * R CMD check notes when S4-style exports are used without
    declaring a strong dependence on package methods.
  * tools::checkRd() (used by R CMD check) detects more problems with
    \Sexpr-based dynamic content, including bad nesting of \Sexprs
    and invalid arguments.
  * tools::checkRd() now reports Rd titles and section names ending
    in a period; this is ignored by R CMD check unless environment
    variable _R_CHECK_RD_CHECKRD_MINLEVEL_ is set to -5 or smaller.
  * R CMD check now notes Rd files without an \alias, as long
    documented in 'Writing R Extensions' §1.3.1.  The check for a
    missing \description has been moved from tools::checkRd() to
    tools::checkRdContents().
  * R CMD check now visits inst/NEWS.Rd and OS-specific man
    subdirectories when checking Rd files.
  * tools::checkDocFiles() and tools::checkRdContents() now also
    check internal Rd files by default, but "specially" (ignoring
    missing documentation of arguments).
  * R CMD Rdiff gets option --useEx.
  * R CMD check now warns on non-portable uses of Fortran KIND such
    as INTEGER(KIND=4) and REAL(KIND=8).
    To see the failing lines set environment variable
    _R_CHECK_FORTRAN_KIND_DETAILS_ to a true value.
  * When checking Rd files, R CMD check now notes some of the "lost
    braces" that tools::checkRd() finds.  Typical problems are Rd
    macros missing the initial backslash (e.g., code{...}), in-text
    set notation (e.g., {1, 2}, where the braces need escaping), and
    \itemize lists with \describe-style entries of the form
    \item{label}{description}.
  * R CMD INSTALL (and hence check) will compile C++ code with
  - DR_NO_REMAP if environment variable _R_CXX_USE_NO_REMAP_ is set
    to a true value.  It is planned that this will in future become
    the default for compiling C++.
  * The new built-in Rd macro \dontdiff{} can be used to mark example
    code whose output should be ignored when comparing check output
    to reference output (tests/Examples/&lt;pkg&gt;-Ex.Rout.save).  The
    \dontdiff tag, like \donttest, is _not_ shown on the rendered
    help page, so provides a clean alternative to ##
    IGNORE_RDIFF_(BEGIN|END) comments.
  * R CMD build when there is no NAMESPACE, now uses the recommended
    exportPattern("^[^.]"), instead of exporting everything.
  * R CMD check now warns about non-ASCII characters in the NAMESPACE
    file (in addition to R files). Such packages are not portable and
    may fail to install on some platforms.
  C-LEVEL FACILITIES:
  * Headers R_ext/Applic.h and R-ext/Linpack.h used to include
    R_ext/BLAS.h although this was undocumented and unneeded by their
    documented entry points.  They no longer do so.
  * New function R_missing(), factored out from do_missing(), used to
    fix PR#18579.
  * SEXP type S4SXP has been renamed to OBJSXP to support
    experimenting with alternative object systems.  The S4SXP value
    can still be used in C code but is now deprecated.  Based on
    contributions from the R Consortium's Object-Oriented Programming
    Working Group.
  * New function pow1p(x,y) for accurate (1+x)^y.
  * mkCharLenCE was incorrectly documented to take a size_t length
    but was implemented with int (and character strings in R are
    limited to 2^31 - 1 bytes).
  DEPRECATED AND DEFUNCT:
  * data() no longer handles zipped data from long-defunct (since R
    2.13.0) --use-zip-data installations.
  * The legacy graphics devices pictex() and xfig() are now
    deprecated.  They do not support recent graphics enhancements and
    their font handling is rudimentary. The intention is to retain
    them for historical interest as long as they remain somewhat
    functional.
  * Support for encoding = "MacRoman" has been removed from the pdf()
    and postscript() devices - this was a legacy encoding supporting
    classic macOS up to 2001 and no longer has universal libiconv
    support.
  * is.R() is deprecated as no other S dialect is known to be in use
    (and this could only identify historical dialects, not future
    ones).
    Further information on calls can be obtained by setting the
    environment variable _R_DEPRECATED_IS_R_ to error which turns the
    deprecation warning into an error and so by default gives a
    traceback.  (This is done by R CMD check --as-cran.)
  * UseMethod() no longer forwards local variables assigned in the
    generic function into method call environments before evaluating
    the method body. This makes method calls behave more like
    standard function calls and makes method code easier to analyze
    correctly.
  * The twelve as.data.frame.&lt;class&gt;() methods which were deprecated
    only via _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ and in R CMD
    check --as-cran are formally deprecated now in favour of calling
    as.data.frame() or as.data.frame.vector().  The deprecation
    "check" now works also when as.data.frame() is S4 generic thanks
    to Ivan Krylov.
  * The default method for the directional comparison operators &lt;, &gt;,
    &lt;=, and &gt;= now signals an error when one of the operands is a
    language object, i.e. a symbol or a call.
  * For terms.formula(), deprecate abb and neg.out arguments
    _formally_ in addition to just documenting it.
  BUG FIXES:
  * The methods package is more robust to not being attached to the
    search path.  More work needs to be done.
  * pairwise.t.test() misbehaved when subgroups had 0 DF for
    variance, even with pool.sd = TRUE.  (PR#18594 by Jack Berry).
  * Probability distribution functions [dpq]&lt;distrib&gt;(x, *), but also
    bessel[IKJY](x, .) now consistently preserve attributes(x) when
    length(x) == 0, e.g., for a 2 x 0 matrix, thanks to Karolis
    Koncevičius' report PR#18509.
  * Group "Summary" computations such as sum(1:3, 4, na.rm = 5, NA,
    7, na.rm = LL) now give an error instead of either 17 or NN for
    LL true or false, as proposed by Ivan Krylov on the R-devel
    mailing list.  (This also means it is now an error to specify
    na.rm more than once.)
  * as.complex(x) now returns complex(real = x, imaginary = 0) for
    _all_ numerical and logical x, notably also for NA or
    NA_integer_.
  * Directories are now omitted by file.copy(, recursive = FALSE) and
    in file.append() (PR#17337).
  * gsub() and sub() are now more robust to integer overflow when
    reporting errors caused by too large input strings (PR#18346).
  * Top-level handlers are now more robust to attempts to remove a
    handler whilst handlers are running (PR#18508).
  * The handling of Alt+F4 in dialogs created on Windows using
    GraphApp has been fixed (PR#13870).
  * density() more consistently computes grid values for the
    FFT-based convolution, following Robert Schlicht's analysis and
    proposal in PR#18337, correcting density values typically by a
    factor of about 0.999.  Argument old.coords = TRUE provides back
    compatibility.
  * palette.colors() gains a name argument that defaults to FALSE
    controlling whether the vector of colours that is returned has
    names (where possible).  PR#18529.
  * tools::xgettext() no longer extracts the (non-translatable) class
    names from warningCondition and errorCondition calls.
  * S3method(&lt;gen&gt;, &lt;class&gt;, &lt;func&gt;) in the NAMESPACE file now works
    (again) when &lt;func&gt; is visible from the namespace, e.g.,
    imported, or in base.
  * getParseData(f) now also works for a function defined in the
    first of several &lt;pkg&gt;/R/*.R source files, thanks to Kirill
    Müller's report and Duncan Murdoch's patch in PR#16756.
  * Rd \Sexpr macros with nested #ifdef conditionals were not
    processed.
  * A non-blocking connection with non-default encoding (such as a
    socket) now correctly returns from readLines() after new data has
    arrived also when its EOF had been reached previously.  Thanks to
    Peter Meilstrup's report on R-devel and Ivan Krylov's report and
    patch proposal in PR#18555.
  * tools::checkRdContents() failed to detect empty argument
    descriptions when they spanned multiple lines, including those
    generated by prompt().  These cases are now noted by R CMD check.
  * Plain-text help no longer outputs spurious colons in the
    arguments list (for multi-line \item labels in the Rd source).
  * kappa() and rcond() work correctly in more cases; kappa(., norm =
    "2") now warns that it computes the 1-norm with (default) exact =
    FALSE; prompted by Mikael Jagan's quite comprehensive PR#18543.
  * Rd skeletons generated by prompt() or promptData() now use a
    dummy title (so R CMD build works).  tools::checkRdContents() has
    been updated to detect such template leftovers, including from
    promptPackage().
  * When S4 method dispatch fails because no method was found, the
    error message now includes the signature argument names; thanks
    to Michael Chirico's proposal on the R-devel list.
  * withAutoprint({ .. }) now preserves srcrefs previously lost,
    thanks to Andrew Simmons' report plus fix in PR#18572.
  * transform.data.frame() no longer adjusts names; in particular,
    untransformed variables are kept as-is, including those with
    syntactically invalid names (PR#17890).
  * The keep.source option for Rd \Sexpr blocks is no longer ignored.
  * The formula methods for t.test() and wilcox.test() now catch when
    paired is passed, addressing PR#14359; use Pair(x1, x2) ~ 1 for a
    paired test.
  * The level reported in the browser prompt was often too large. It
    now shows the number of browser contexts on the stack.
  * For cbind() and rbind(), the optional deparse.level argument is
    now properly passed to methods, thanks to Mikael Jagan's PR#18579
    and comments there.
  * Some error and warning messages for large ('long vector')
    matrix(v, nr, nc) and dim(m) &lt;- d are now correct about sizes,
    using long long formatting, fixing PR#18612 (and more) reported
    by Mikael Jagan.
  * readChar(useBytes = TRUE) now terminates strings even when the
    underlying connection uses extra spaces in the input buffer.
    This fixes problems with extra garbage seen with gzip
    connections, PR#18605.
  * Named capture in PCRE regular expressions now works also with
    more than 127 named groups (PR#18588).
  * Datetime functions are now robust against long jumps when dealing
    with internal time zone changes.  This avoids confusing warnings
    about an invalid time zone, previously triggered by turning
    warnings into errors or handling them via tryCatch (PR#17966,
    PR#17780).
  * Datetime functions now restore even an empty TZ environment
    variable after internal time zone changes (PR#17724).  This makes
    results of datetime functions with this (typically unintentional)
    setting more predictable.
  * drop.terms(*) now drops response as by default, keep.response =
    FALSE, fixing PR#18564 thanks to Mikael Jagan.
  * dummy.coef(.) now also works for lm()-models with character
    categorical predictor variables rather than factor ones, fixing
    PR#18635 reported by Jinsong Zhao.
  * formals(f) &lt;- formals(f) now also works for a function w/o
    arguments and atomic _constant_ body(f).
  * Correct as.function(&lt;invalid list&gt;, .)'s error message.
  * removeSource() is yet more thorough in finding and removing
    "srcref" and the other source references from parsed R language
    chunks, fixing PR#18638 thanks to Andrew Simmons.
  * dgeom() is more accurate now, notably when its result is very
    small, fixing PR#18642 thanks to the proposal of Morten Welinder,
    also improving other instances where C level binom_raw(x, n, ..)
    has x == 0 or x== n.
  * warning() with options(warn = 1) has improved output for
    multi-line messages.
  * axis.Date() and axis.POSIXct() now respect the par("lab") setting
    for the number of pretty() intervals.
  * Comparisons for language objects (which are based on deparsing)
    are now more careful about using accurate deparsed results
    (PR#18676).
  * Plain-text help (Rd2txt) now correctly preserves blank lines
    following single-line \dontrun code.
  * &lt;POSIXlt&gt;[*] no longer sets wrong "balanced" attribute, fixing
    PR#18681 thanks to Mikael Jagan.
  * str(&lt;classed-call&gt;) now deparses the call as expected, fixing
    PR#18684, reported by Dave Slager.
  * In Rd examples, code following the closing brace of a \dontrun,
    \dontshow or \donttest tag on the same line is no longer skipped
    when R CMD check runs the examples.
  * as.data.frame(matrix(*, ncol=0)) now gets valid names() and
    colnames(); reported by Davis Vaughan on the R-devel list.
  * Internal Mathlib function stirlerr(n) is now almost fully
    (52-bit) accurate for all n &gt;= ~5.9 and more accurate also in the
    range 1 -- 5.9.  This entails small ("after 12th decimal")
    changes in density functions, e.g., dgamma() in _some_ regions of
    their support.  The fix was partly prompted by Morten Welinder's
    PR#18640.
  * Numbers like 9876543.2 are now considered non-integer by Mathlib
    internal R_nonint(), amending original fix of PR#15734.
  * Rd comment lines no longer cause broken paragraphs in the
    rendered PDF and plain-text help. In code blocks, pure comment
    lines (starting with %) no longer produce an empty line.
  * xtabs(Freq ~ .) now consistently defaults to na.action = na.pass,
    using na.rm = FALSE (added as an argument) when summing over Freq
    (PR#17770).
  * tools::testInstalledPackage() is no longer silent about failures
    from running examples or tests and its return code no longer
    ignores failures from checking vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1718366400">- CHANGES IN R 4.4.1:
  C-LEVEL FACILITIES:
  * Functions R_atof and R_strtod declared in header R_ext/Utils.h
    are now documented in 'Writing R Extensions' and so formally part
    of the API.
  * The non-API entry points Rf_setSVector, Rf_StringFalse,
    Rf_StringTrue and Rf_isBlankString have been added to those
    reported by R CMD check.
  * The new function Rf_allocLang is now available. This provides an
    alternative to the idiom of calling Rf_allocList followed by
    SET_TYPEOF.
  UTILITIES:
  * R CMD check now reports as warnings what gfortran calls 'Fortran
    2018 deleted features', all of which have long been marked as
    'obsolescent' and some of which were deleted in Fortran 2008 or
    earlier.  Fortran compilers are no longer required to support
    these.
  BUG FIXES:
  * as.numeric(), scan(), type.convert() and other places which use
    the internal C function R_strtod now require a _non-empty_ digit
    sequence in a decimal or binary exponent.  This aligns with the
    C/POSIX standard for strtod and with ?NumericConstants.
  * as.data.frame(m, make.names=NA) now works correctly for a matrix
    m with NA's in row names.
  * The error message from &lt;POSIXlt&gt;[["hour"]] and similar now
    mentions *[[, "hour"]], as wished for in PR#17409 and proposed by
    Michael Chirico.
  * qbinom() and potentially qpois(), qnbinom(), no longer sometimes
    fail accurate inversion (of pbinom(), etc), thanks to Christopher
    Chang's report and patch in PR#18711.
  * The internal help server on Windows can again serve requests sent
    in quick succession, fixing a regression in R 4.4.0.
  * debugcall(&lt;S3Generic&gt;()) now also works when a corresponding
    S4-generic version is in the methods cache (PR#18143).
  * Package tools' toTitleCase(ch0) now returns character(0) when ch0
    is of zero length; fixing PR#18724, reported by David Hugh Jones.
  * R CMD check is no longer broken (without a check result and no
    explanation in 00check.log) for a package which declares an
    invalid VignetteBuilder in DESCRIPTION but has no vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1730376000">- CHANGES IN R 4.4.2:
  C-LEVEL FACILITIES:
  * The S-compatibility macros F77_COM and F77_COMDECL defined in
    header R_ext/RS.h are deprecated and will be removed shortly.  We
    could find no record of their use.
  BUG FIXES:
  * Mathlib function lgammacor(x) no longer warns about underflow to
    zero for large x.
  * Text widths and heights were incorrectly reported by the Quartz
    device if the drawing context didn't exist yet (typically when
    drawing off-screen to a window that is yet to appear, see
    PR#18591).
  * The Quartz device could segfault in cases where paths with spaces
    are used in the new glyph drawing API.  Thanks to Tomek
    Gieorgijewski (PR#18758).
  * On macOS in R CRAN builds, it is again possible to read
    little-endian UTF-16 text with a BOM from a connection using
    encoding="UTF-16".  Users building R from source should avoid
    using the system libiconv in macOS 14.1 and later.
  * methods' internal .requirePackage() now re-enables primitive
    method dispatch when needed; thanks to Ivan Krylov for
    demystifying CRAN package check failures on the R-devel mailing
    list.</changelog>
</package>
<package pkgid="1741406a3f7ebd1f05be349f9f5e7115d946f1219acfabb439aa66784ab02c7945e60c8e1e8aea7bb5437f2f8636b2b565c8c3bf07d9c88ae1b570db76ff7832" name="R-lattice" arch="x86_64">
  <version epoch="0" ver="0.22.6" rel="51.0.2.2.sr20241103"/>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1620302400">- To get in sync with d:l:R:autoCRAN the Matrix package's split
  in -devel was reversed.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339200">- improved spec file according to comments of dimstar in
  https://build.opensuse.org/request/show/892685</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339201">- CHANGES IN R 4.1.0:
  FUTURE DIRECTIONS:
  * It is planned that the 4.1.x series will be the last to support
    32-bit Windows, with production of binary packages for that
    series continuing until early 2023.
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Data set esoph in package datasets now provides the correct
    numbers of controls; previously it had the numbers of cases added
    to these.  (Reported by Alexander Fowler in PR#17964.)
  NEW FEATURES:
  * www.omegahat.net is no longer one of the repositories known by
    default to setRepositories().  (Nowadays it only provides source
    packages and is often unavailable.)
  * Function package_dependencies() (in package tools) can now use
    different dependency types for direct and recursive dependencies.
  * The checking of the size of tarball in R CMD check --as-cran
    &lt;pkg&gt; may be tweaked via the new environment variable
    _R_CHECK_CRAN_INCOMING_TARBALL_THRESHOLD_, as suggested in
    PR#17777 by Jan Gorecki.
  * Using c() to combine a factor with other factors now gives a
    factor, an ordered factor when combining ordered factors with
    identical levels.
  * apply() gains a simplify argument to allow disabling of
    simplification of results.
  * The format() method for class "ftable" gets a new option justify.
    (Suggested by Thomas Soeiro.)
  * New ...names() utility.  (Proposed by Neal Fultz in PR#17705.)
  * type.convert() now warns when its as.is argument is not
    specified, as the help file always said it _should_.  In that
    case, the default is changed to TRUE in line with its change in
    read.table() (related to stringsAsFactor) in R 4.0.0.
  * When printing list arrays, classed objects are now shown _via_
    their format() value if this is a short enough character string,
    or by giving the first elements of their class vector and their
    length.
  * capabilities() gets new entry "Rprof" which is TRUE when R has
    been configured with the equivalent of --enable-R-profiling (as
    it is by default).  (Related to Michael Orlitzky's report
    PR#17836.)
  * str(xS4) now also shows extraneous attributes of an S4 object
    xS4.
  * Rudimentary support for vi-style tags in rtags() and R CMD rtags
    has been added.  (Based on a patch from Neal Fultz in PR#17214.)
  * checkRdContents() is now exported from tools; it and also
    checkDocFiles() have a new option chkInternal allowing to check
    Rd files marked with keyword "internal" as well.  The latter can
    be activated for R CMD check via environment variable
    _R_CHECK_RD_INTERNAL_TOO_.
  * New functions numToBits() and numToInts() extend the raw
    conversion utilities to (double precision) numeric.
  * Functions URLencode() and URLdecode() in package utils now work
    on vectors of URIs.  (Based on patch from Bob Rudis submitted
    with PR#17873.)
  * path.expand() can expand ~user on most Unix-alikes even when
    readline is not in use.  It tries harder to expand ~, for example
    should environment variable HOME be unset.
  * For HTML help (both dynamic and static), Rd file links to help
    pages in external packages are now treated as references to
    topics rather than file names, and fall back to a file link only
    if the topic is not found in the target package. The earlier rule
    which prioritized file names over topics can be restored by
    setting the environment variable _R_HELP_LINKS_TO_TOPICS_ to a
    false value.
  * c() now removes NULL arguments before dispatching to methods,
    thus simplifying the implementation of c() methods, _but_ for
    back compatibility keeps NULL when it is the first argument.
    (From a report and patch proposal by Lionel Henry in PR#17900.)
  * Vectorize()'s result function's environment no longer keeps
    unneeded objects.
  * Function ...elt() now propagates visibility consistently with
    ..n.  (Thanks to Lionel Henry's PR#17905.)
  * capture.output() no longer uses non-standard evaluation to
    evaluate its arguments.  This makes evaluation of functions like
    parent.frame() more consistent.  (Thanks to Lionel Henry's
    PR#17907.)
  * packBits(bits, type="double") now works as inverse of
    numToBits().  (Thanks to Bill Dunlap's proposal in PR#17914.)
  * curlGetHeaders() has two new arguments, timeout to specify the
    timeout for that call (overriding getOption("timeout")) and TLS
    to specify the minimum TLS protocol version to be used for
    https:// URIs (_inter alia_ providing a means to check for sites
    using deprecated TLS versions 1.0 and 1.1).
  * For nls(), an optional constant scaleOffset may be added to the
    denominator of the relative offset convergence test for cases
    where the fit of a model is expected to be exact, thanks to a
    proposal by John Nash.  nls(*, trace=TRUE) now also shows the
    convergence criterion.
  * Numeric differentiation _via_ numericDeriv() gets new optional
    arguments eps and central, the latter for taking central divided
    differences.  The latter can be activated for nls() via
    nls.control(nDcentral = TRUE).
  * nls() now passes the trace and control arguments to getInitial(),
    notably for all self-starting models, so these can also be fit in
    zero-noise situations via a scaleOffset.  For this reason, the
    initial function of a selfStart model must now have ... in its
    argument list.
  * bquote(splice = TRUE) can now splice expression vectors with
    attributes: this makes it possible to splice the result of
    parse(keep.source = TRUE).  (Report and patch provided by Lionel
    Henry in PR#17869.)
  * textConnection() gets an optional name argument.
  * get(), exists(), and get0() now signal an error if the first
    argument has length greater than 1.  Previously additional
    elements were silently ignored.  (Suggested by Antoine Fabri on
    R-devel.)
  * R now provides a shorthand notation for creating functions, e.g.
    \(x) x + 1 is parsed as function(x) x + 1.
  * R now provides a simple native forward pipe syntax |&gt;.  The
    simple form of the forward pipe inserts the left-hand side as the
    first argument in the right-hand side call.  The pipe
    implementation as a syntax transformation was motivated by
    suggestions from Jim Hester and Lionel Henry.
  * all.equal(f, g) for functions now by default also compares their
    environment(.)s, notably via new all.equal method for class
    function.  Comparison of nls() fits, e.g., may now need
    all.equal(m1, m2, check.environment = FALSE).
  * .libPaths() gets a new option include.site, allowing to _not_
    include the site library.  (Thanks to Dario Strbenac's suggestion
    and Gabe Becker's PR#18016.)
  * Lithuanian translations are now available.  (Thanks to Rimantas
    Zakauskas.)
  * names() now works for DOTSXP objects.  On the other hand, in
    R-lang, the R language manual, we now warn against relying on the
    structure or even existence of such dot-dot-dot objects.
  * all.equal() no longer gives an error on DOTSXP objects.
  * capabilities("cairo") now applies only to the file-based devices
    as it is now possible (if very unusual) to build R with Cairo
    support for those but not for X11().
  * There is optional support for tracing the progress of
    loadNamespace() - see its help.
  * (Not Windows.)  l10n_info() reports an additional element, the
    name of the encoding as reported by the OS (which may differ from
    the encoding part (if any) of the result from
    Sys.getlocale("LC_CTYPE").
  * New function gregexec() which generalizes regexec() to find _all_
    disjoint matches and well as all substrings corresponding to
    parenthesized subexpressions of the given regular expression.
    (Contributed by Brodie Gaslam.)
  * New function charClass() in package utils to query the
    wide-character classification functions in use (such as
    iswprint).
  * The names of quantile()'s result no longer depend on the global
    getOption("digits"), but quantile() gets a new optional argument
    digits = 7 instead.
  * grep(), sub(), regexp and variants work considerably faster for
    long factors with few levels.  (Thanks to Michael Chirico's
    PR#18063.)
  * Provide grouping of x11() graphics windows within a window
    manager such as Gnome or Unity; thanks to a patch by Ivan Krylov
    posted to R-devel.
  * The split() method for class data.frame now allows the f argument
    to be specified as a formula.
  * sprintf now warns on arguments unused by the format string.
  * New palettes "Rocket" and "Mako" for hcl.colors() (approximating
    palettes of the same name from the 'viridisLite' package).
    Contributed by Achim Zeileis.
  * The base environment and its namespace are now locked (so one can
    no longer add bindings to these or remove from these).
  * Rterm handling of multi-byte characters has been improved,
    allowing use of such characters when supported by the current
    locale.
  * Rterm now accepts ALT+ +xxxxxxxx sequences to enter Unicode
    characters as hex digits.
  * Environment variable LC_ALL on Windows now takes precedence over
    LC_CTYPE and variables for other supported categories, matching
    the POSIX behaviour.
  * duplicated() and anyDuplicated() are now optimized for integer
    and real vectors that are known to be sorted via the ALTREP
    framework. Contributed by Gabriel Becker via PR#17993.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 14
    and so packages that provide graphics devices should be
    reinstalled.
  * Graphics devices should now specify deviceVersion to indicate
    what version of the graphics engine they support.
  * Graphics devices can now specify deviceClip.  If TRUE, the
    graphics engine will never perform any clipping of output itself.
    The clipping that the graphics engine does perform (for both
    canClip = TRUE and canClip = FALSE) has been improved to avoid
    producing unnecessary artifacts in clipped output.
  * The grid package now allows gpar(fill) to be a linearGradient(),
    a radialGradient(), or a pattern().  The viewport(clip) can now
    also be a grob, which defines a clipping path, and there is a new
    viewport(mask) that can also be a grob, which defines a mask.
    These new features are only supported so far on the Cairo-based
    graphics devices and on the pdf() device.
  * (Not Windows.)  A warning is given when a Cairo-based type is
    specified for a png(), jpeg(), tiff() or bmp() device but Cairo
    is unsupported (so type = "Xlib" is tried instead).
  * grSoftVersion() now reports the versions of FreeType and
    FontConfig if they are used directly (not _via_ Pango), as is
    most commonly done on macOS.
  C-LEVEL FACILITIES:
  * The _standalone_ libRmath math library and R's C API now provide
    log1pexp() again as documented, and gain log1mexp().
  INSTALLATION on a UNIX-ALIKE:
  * configure checks for a program pkgconf if program pkg-config is
    not found.  These are now only looked for on the path (like
    almost all other programs) so if needed specify a full path to
    the command in PKG_CONFIG, for example in file config.site.
  * C99 function iswblank is required - it was last seen missing ca
    2003 so the workaround has been removed.
  * There are new configure options --with-internal-iswxxxxx,
  - -with-internal-towlower and --with-internal-wcwidth which allows
    the system functions for wide-character classification,
    case-switching and width (wcwidth and wcswidth) to be replaced by
    internal ones.  The first has long been used on macOS, AIX (and
    Windows) but this enables it to be unselected there and selected
    for other platforms (it is the new default on Solaris).  The
    second is new in this version of R and is selected by default on
    macOS and Solaris.  The third has long been the default and
    remains so as it contains customizations for East Asian
    languages.
    System versions of these functions are often minimally
    implemented (sometimes only for ASCII characters) and may not
    cover the full range of Unicode points: for example Solaris (and
    Windows) only cover the Basic Multilingual Plane.
  * Cairo installations without X11 are more likely to be detected by
    configure, when the file-based Cairo graphics devices will be
    available but not X11(type = "cairo").
  * There is a new configure option --with-static-cairo which is the
    default on macOS.  This should be used when only static cairo
    (and where relevant, Pango) libraries are available.
  * Cairo-based graphics devices on platforms without Pango but with
    FreeType/FontConfig will make use of the latter for font
    selection.
  LINK-TIME OPTIMIZATION on a UNIX-ALIKE:
  * Configuring with flag --enable-lto=R now also uses LTO when
    installing the recommended packages.
  * R CMD INSTALL and R CMD SHLIB have a new flag --use-LTO to use
    LTO when compiling code, for use with R configured with
  - -enable-lto=R.  For R configured with --enable-lto, they have
    the new flag --no-use-LTO.
    Packages can opt in or out of LTO compilation _via_ a UseLTO
    field in the DESCRIPTION file.  (As usual this can be overridden
    by the command-line flags.)
  BUILDING R on Windows:
  * for GCC &gt;= 8, FC_LEN_T is defined in config.h and hence character
    lengths are passed from C to Fortran in _inter alia_ BLAS and
    LAPACK calls.
  * There is a new text file src/gnuwin32/README.compilation, which
    outlines how C/Fortran code compilation is organized and
    documents new features:
  * R can be built with Link-Time Optimization with a suitable
    compiler - doing so with GCC 9.2 showed several
    inconsistencies which have been corrected.
  * There is support for cross-compiling the C and Fortran code
    in R and standard packages on suitable (Linux) platforms.
    This is mainly intended to allow developers to test later
    versions of compilers - for example using GCC 9.2 or 10.x has
    detected issues that GCC 8.3 in Rtools40 does not.
  * There is experimental support for cross-building R packages
    with C, C++ and/or Fortran code.
  * The R installer can now be optionally built to support a single
    architecture (only 64-bit or only 32-bit).
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++14 where
    available (which it is on all currently checked platforms): if
    not (as before) C++11 is used if available otherwise C++ is not
    supported.
    Packages which specify C++11 will still be installed using C++11.
    C++14 compilers may give deprecation warnings, most often for
    std::random_shuffle (deprecated in C++14 and removed in C++17).
    Either specify C++11 (see 'Writing R Extensions') or modernize
    the code and if needed specify C++14.  The latter has been
    supported since R 3.4.0 so the package's DESCRIPTION would need
    to include something like
    Depends: R (&gt;= 3.4)
  PACKAGE INSTALLATION on Windows:
  * R CMD INSTALL and R CMD SHLIB make use of their flag --use-LTO
    when the LTO_OPT make macro is set in file etc/${R_ARCH}/Makeconf
    or in a personal/site Makevars file.  (For details see 'Writing R
    Extensions' SS4.5.)
    This provides a valuable check on code consistency.  It does work
    with GCC 8.3 as in Rtools40, but that does not detect everything
    the CRAN checks with current GCC do.
  PACKAGE INSTALLATION on macOS:
  * The default personal library directory on builds with
  - -enable-aqua (including CRAN builds) now differs by CPU type,
    one of
    ~/Library/R/x86_64/x.y/library
    ~/Library/R/arm64/x.y/library
    This uses the CPU type R (and hence the packages) were built for,
    so when a x86_64 build of R is run under Rosetta emulation on an
    arm64 Mac, the first is used.
  UTILITIES:
  * R CMD check can now scan package functions for bogus return
    statements, which were possibly intended as return() calls (wish
    of PR#17180, patch by Sebastian Meyer). This check can be
    activated via the new environment variable
    _R_CHECK_BOGUS_RETURN_, true for --as-cran.
  * R CMD build omits tarballs and binaries of previous builds from
    the top-level package directory.  (PR#17828, patch by Sebastian
    Meyer.)
  * R CMD check now runs sanity checks on the use of LazyData, for
    example that a data directory is present and that
    LazyDataCompression is not specified without LazyData and has a
    documented value.  For packages with large LazyData databases
    without specifying LazyDataCompression, there is a reference to
    the code given in 'Writing R Extensions' SS1.1.6 to test the
    choice of compression (as in all the CRAN packages tested a
    non-default method was preferred).
  * R CMD build removes LazyData and LazyDataCompression fields from
    the DESCRIPTION file of packages without a data directory.
  ENCODING-RELATED CHANGES:
  * The parser now treats \Unnnnnnnn escapes larger than the upper
    limit for Unicode points (\U10FFFF) as an error as they cannot be
    represented by valid UTF-8.
    Where such escapes are used for outputting non-printable
    (including unassigned) characters, 6 hex digits are used (rather
    than 8 with leading zeros).  For clarity, braces are used, for
    example \U{0effff}.
  * The parser now looks for non-ASCII spaces on Solaris (as
    previously on most other OSes).
  * There are warnings (including from the parser) on the use of
    unpaired surrogate Unicode points such as \uD834.  (These cannot
    be converted to valid UTF-8.)
  * Functions nchar(), tolower(), toupper() and chartr() and those
    using regular expressions have more support for inputs with a
    marked Latin-1 encoding.
  * The character-classification functions used (by default) to
    replace the system iswxxxxx functions on Windows, macOS and AIX
    have been updated to Unicode 13.0.0.
    The character-width tables have been updated to include new
    assignments in Unicode 13.0.0.
  * The code for evaluating default (extended) regular expressions
    now uses the same character-classification functions as the rest
    of R (previously they differed on Windows, macOS and AIX).
  * There is a build-time option to replace the system's
    wide-character wctrans C function by tables shipped with R: use
    configure option --with-internal-towlower or (on Windows)
  - DUSE_RI18N_CASE in CFLAGS when building R.  This may be needed
    to allow tolower() and toupper() to work with Unicode characters
    beyond the Basic Multilingual Plane where not supported by system
    functions (e.g. on Solaris where it is the new default).
  * R is more careful when truncating UTF-8 and other multi-byte
    strings that are too long to be printed, passed to the system or
    libraries or placed into an internal buffer.  Truncation will no
    longer produce incomplete multibyte characters.
  DEPRECATED AND DEFUNCT:
  * Function plclust() from the package stats and
    package.dependencies(), pkgDepends(), getDepList(),
    installFoundDepends(), and vignetteDepends() from package tools
    are defunct.
  * Defunct functions checkNEWS() and readNEWS() from package tools
    and CRAN.packages() from utils have been removed.
  * R CMD config CXXCPP is defunct (it was deprecated in R 3.6.2).
  * parallel::detectCores() drops support for Irix (retired in 2013).
  * The LINPACK argument to chol.default(), chol2inv(),
    solve.default() and svd() has been defunct since R 3.1.0.  It was
    silently ignored up to R 4.0.3 but now gives an error.
  * Subsetting/indexing, such as ddd[*] or ddd$x on a DOTSXP
    (dot-dot-dot) object ddd has been disabled; it worked by accident
    only and was undocumented.
  BUG FIXES:
  * Many more C-level allocations (mainly by malloc and strdup) are
    checked for success with suitable alternative actions.
  * Bug fix for replayPlot(); this was turning off graphics engine
    display list recording if a recorded plot was replayed in the
    same session.  The impact of the bug became visible if resize the
    device after replay OR if attempted another savePlot() after
    replay (empty display list means empty screen on resize or empty
    saved plot).
  * R CMD check etc now warn when a package exports non-existing S4
    classes or methods, also in case of no "methods" presence.
    (Reported by Alex Bertram; reproducible example and patch by
    Sebastian Meyer in PR#16662.)
  * boxplot() now also accepts calls for labels such as ylab, the
    same as plot().  (Reported by Marius Hofert.)
  * The help page for xtabs() now correctly states that addNA is
    setting na.action = na.pass among others.  (Reported as PR#17770
    by Thomas Soeiro.)
  * The R CMD check &lt;pkg&gt; gives a longer and more comprehensible
    message when DESCRIPTION misses dependencies, e.g., in Imports:.
    (Thanks to the contributors of PR#17179.)
  * update.default() now calls the generic update() on the formula to
    work correctly for models with extended formulas.  (As reported
    and suggested by Neal Fultz in PR#17865.)
  * The horizontal position of leaves in a dendrogram is now correct
    also with center = FALSE.  (PR#14938, patch from Sebastian
    Meyer.)
  * all.equal.POSIXt() no longer warns about and subsequently ignores
    inconsistent "tzone" attributes, but describes the difference in
    its return value (PR#17277).  This check can be disabled _via_
    the new argument check.tzone = FALSE as suggested by Sebastian
    Meyer.
  * as.POSIXct() now populates the "tzone" attribute from its tz
    argument when x is a logical vector consisting entirely of NA
    values.
  * x[[2^31]] &lt;- v now works.  (Thanks to the report and patch by
    Suharto Anggono in PR#17330.)
  * In log-scale graphics, axis() ticks and label positions are now
    computed more carefully and symmetrically in their range,
    typically providing _more_ ticks, fulfilling wishes in PR#17936.
    The change really corresponds to an improved axisTicks() (package
    grDevices), potentially influencing grid and lattice, for
    example.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now correct to at
    least five digits where it was catastrophically wrong,
    previously.
  * sum(df) and similar "Summary"- and "Math"-group member functions
    now work for data frames df with logical columns, notably also of
    zero rows.  (Reported to R-devel by Martin "b706".)
  * unsplit() had trouble with tibbles due to unsound use of rep(NA,
    len)-indexing, which should use NA_integer_ (Reported to R-devel
    by Mario Annau.)
  * pnorm(x, log.p = TRUE) underflows to -Inf slightly later.
  * show(&lt;hidden S4 generic&gt;) prints better and without quotes for
    non-hidden S4 generics.
  * read.table() and relatives treated an "NA" column name as missing
    when check.names = FALSE PR#18007.
  * Parsing strings containing UTF-16 surrogate pairs such as
    "\uD834\uDD1E" works better on some (uncommon) platforms.
    sprintf("%X", utf8ToInt("\uD834\uDD1E")) should now give "1D11E"
    on all platforms.
  * identical(x,y) is no longer true for differing DOTSXP objects,
    fixing PR#18032.
  * str() now works correctly for DOTSXP and related exotics, even
    when these are doomed.
    Additionally, it no longer fails for lists with a class and
    "irregular" method definitions such that e.g. lapply(*) will
    necessarily fail, as currently for different igraph objects.
  * Too long lines in environment files (e.g. Renviron) no longer
    crash R. This limit has been increased to 100,000 bytes.
    (PR#18001.)
  * There is a further workaround for FreeType giving incorrect
    italic font faces with cairo-based graphics devices on macOS.
  * add_datalist(*, force = TRUE) (from package tools) now actually
    updates an existing data/datalist file for new content.  (Thanks
    to a report and patch by Sebastian Meyer in PR#18048.)
  * cut.Date() and cut.POSIXt() could produce an empty last interval
    for breaks = "months" or breaks = "years".  (Reported as PR#18053
    by Christopher Carbone.)
  * Detection of the encoding of 'regular' macOS locales such as
    en_US (which is UTF-8) had been broken by a macOS change:
    fortunately these are now rarely used with en_US.UTF-8 being
    preferred.
  * sub() and gsub(pattern, repl, x, *) now keep attributes of x such
    as names() also when pattern is NA (PR#18079).
  * Time differences ("difftime" objects) get a replacement and a
    rep() method to keep "units" consistent.  (Thanks to a report and
    patch by Nicolas Bennett in PR#18066.)
  * The \RdOpts macro, setting defaults for \Sexpr options in an Rd
    file, had been ineffective since R 2.12.0: it now works again.
    (Thanks to a report and patch by Sebastian Meyer in PR#18073.)
  * mclapply and pvec no longer accidentally terminate parallel
    processes started before by mcparallel or related calls in
    package parallel (PR#18078).
  * grep and other functions for evaluating (extended) regular
    expressions handle in Unicode also strings not explicitly flagged
    UTF-8, but flagged native when running in UTF-8 locale.
  * Fixed a crash in fifo implementation on Windows (PR#18031).
  * Binary mode in fifo on Windows is now properly detected from
    argument open (PR#15600, PR#18031).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1622808000">- The line %{__install} -m 755 -d %{_infodir}
  no longer works in TW or Factory.
  But without that line it works everywhere. So this instruction
  was commented out of the spec file.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1628596800">- CHANGES IN R 4.1.1:
  NEW FEATURES:
  * require(pkg, quietly = TRUE) is quieter and in particular does
    not warn if the package is not found.
  DEPRECATED AND DEFUNCT:
  * Use of ftp:// URIs should be regarded as deprecated, with
    on-going support confined to method = "libcurl" and not routinely
    tested.  (Nowadays no major browser supports them.)
  * The non-default method = "internal" is deprecated for http:// and
    ftp:// URIs for both download.file and url.
  * On Windows, method = "wininet" is deprecated for http://,
    https:// and ftp:// URIs for both download.file and url.  (A
    warning is only given for ftp://.)
    For ftp:// URIs the default method is now "libcurl" if available
    (which it is on CRAN builds).
    method = "wininet" remains the default for http:// and https://
    URIs but if libcurl is available, using method = "libcurl" is
    preferred.
  INSTALLATION:
  * make check now works also without a LaTeX installation.  (Thanks
    to Sebastian Meyer's PR#18103.)
  BUG FIXES:
  * make check-devel works again in an R build configured with
  - -without-recommended-packages.
  * qnbinom(p, size, mu) for large size/mu is correct now in a range
    of cases (PR#18095); similarly for the (size, prob)
    parametrization of the negative binomial.  Also qpois() and
    qbinom() are better and or faster for extreme cases.  The
    underlying C code has been modularized and is common to all four
    cases of discrete distributions.
  * gap.axis is now part of the axis() arguments which are passed
    from bxp(), and hence boxplot().  (Thanks to Martin Smith's
    report and suggestions in PR#18109.)
  * .First and .Last can again be set from the site profile.
  * seq.int(from, to, *) and seq.default(..) now work better in large
    range cases where from-to is infinite where the two boundaries
    are finite.
  * all.equal(x,y) now returns TRUE correctly also when several
    entries of abs(x) and abs(y) are close to .Machine$double.xmax,
    the largest finite numeric.
  * model.frame() now clears the object bit when removing the class
    attribute of a value via na.action (PR#18100).
  * charClass() now works with multi-character strings on Windows
    (PR#18104, fixed by Bill Dunlap).
  * encodeString() on Solaris now works again in Latin-1 encoding on
    characters represented differently in UTF-8.  Support for
    surrogate pairs on Solaris has been improved.
  * file.show() on Windows now works with non-ASCII path names
    representable in the current native encoding (PR#18132).
  * Embedded R on Windows can now find R home directory via the
    registry even when installed only for the current user
    (PR#18135).
  * pretty(x) with finite x now returns finite values also in the
    case where the extreme x values are close in size to the maximal
    representable number .Machine$double.xmax.
    Also, it's been tweaked for very small ranges and when a boundary
    is close (or equal) to zero; e.g., pretty(c(0,1e-317)) no longer
    has negative numbers, currently still warning about a very small
    range, and pretty(2^-(1024 - 2^-1/(c(24,10)))) is more accurate.
  * The error message for not finding vignette files when weaving has
    correct file sizes now. (Thanks to Sebastian Meyer's PR#18154.)
  * dnbinom(20, &lt;large&gt;, 1) now correctly gives 0, and similar cases
    are more accurate with underflow precaution.  (Reported by Francisco Vera Alcivar in PR#18072.)</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635163200">- repaired https://bugzilla.suse.com/show_bug.cgi?id=1191380
  (rpmacros now go to rpmmacrodir)
- minor clean-ups in spec file</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635768000">- CHANGES IN R 4.1.2:
  C-LEVEL FACILITIES:
  * The workaround in headers R.h and Rmath.h (using namespace std;)
    for the Oracle Developer Studio compiler is no longer needed now
    C++11 is required so has been removed.  A couple more usages of
    log() (which should have been std::log()) with an int argument
    are reported on Solaris.
  * The undocumented limit of 4095 bytes on messages from the
    S-compatibility macros PROBLEM and MESSAGE is now documented and
    longer messages will be silently truncated rather than
    potentially causing segfaults.
  * If the R_NO_SEGV_HANDLER environment variable is non-empty, the
    signal handler for SEGV/ILL/BUS signals (which offers recovery
    user interface) is not set. This allows more reliable debugging
    of crashes that involve the console.
  DEPRECATED AND DEFUNCT:
  * The legacy S-compatibility macros PROBLEM, MESSAGE, ERROR, WARN,
    WARNING, RECOVER, ... are deprecated and will be hidden in R
    4.2.0. R's native interface of Rf_error and Rf_warning has long
    been preferred.
  BUG FIXES:
  * .mapply(F, dots, .) no longer segfaults when dots is not a list
    and uses match.fun(F) as always documented; reported by Andrew
    Simmons in PR#18164.
  * hist(&lt;Date&gt;, ...) and hist(&lt;POSIXt&gt;, ...)  no longer pass
    arguments for rect() (such as col and density) to axis().
    (Thanks to Sebastian Meyer's PR#18171.)
  * \Sexpr{ch} now preserves Encoding(ch). (Thanks to report and
    patch by Jeroen Ooms in PR#18152.)
  * Setting the RNG to "Marsaglia-Multicarry" e.g., by RNGkind(), now
    warns in more places, thanks to Andr'e Gillibert's report and
    patch in PR#18168.
  * gray(numeric(), alpha=1/2) no longer segfaults, fixing PR#18183,
    reported by Till Krenz.
  * Fixed dnbinom(x, size=&lt;very_small&gt;, .., log=TRUE) regression,
    reported by Martin Morgan.
  * as.Date.POSIXlt(x) now keeps names(x), thanks to Davis Vaughan's
    report and patch in PR#18188.
  * model.response() now strips an "AsIs" class typically, thanks to
    Duncan Murdoch's report and other discussants in PR#18190.
  * try() is considerably faster in case of an error and long call,
    as e.g., from some do.call().  Thanks to Alexander Kaever's
    suggestion posted to R-devel.
  * qqline(y = &lt;object&gt;) such as y=I(.), now works, see also
    PR#18190.
  * Non-integer mgp par() settings are now handled correctly in
    axis() and mtext(), thanks to Mikael Jagan and Duncan Murdoch's
    report and suggestion in PR#18194.
  * formatC(x) returns length zero character() now, rather than ""
    when x is of length zero, as documented, thanks to Davis
    Vaughan's post to R-devel.
  * removeSource(fn) now retains (other) attributes(fn).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1647000000">- CHANGES IN R 4.1.3:
  NEW FEATURES:
  * The default version of Bioconductor has been changed to 3.14.
    (This is used by setRepositories and the menus in GUIs.)
  UTILITIES:
  * R CMD check --as-cran has a workaround for a bug in versions of
    file up to at least 5.41 which mis-identify DBF files last
    changed in 2022 as executables.
  C-LEVEL FACILITIES:
  * The legacy S-compatibility macros SINGLE_* in R_ext/Constants.h
    (included by R.h) are deprecated and will be removed in R 4.2.0.
  BUG FIXES:
  * Initialization of self-starting nls() models with initialization
    functions following the pre-R-4.1.0 API (without the ...
    argument) works again for now, with a deprecation warning.
  * Fixed quoting of ~autodetect~ in Java setting defaults to avoid
    inadvertent user lookup due to leading ~, reported in PR#18231 by
    Harold Gutch.
  * substr(., start, stop) &lt;- v now treats _negative_ stop values
    correctly.  Reported with a patch in PR#18228 by Brodie Gaslam.
  * Subscripting an array x without dimnames by a
    length(dim(x))-column character matrix gave "random" non-sense,
    now an error; reported in PR#18244 by Mikael Jagan.
  * ...names() now matches names(list(...)) closely, fixing PR#18247.
  * all.equal(*, scale = s) now works as intended when length(s) &gt; 1,
    partly thanks to Michael Chirico's PR#18272.
  * print(x) for long vectors x now also works for named atomic
    vectors or lists and prints the correct number when reaching the
    getOption("max.print") limit; partly thanks to a report and
    proposal by Hugh Parsonage to the R-devel list.
  * all.equal(&lt;selfStart&gt;, *) no longer signals a deprecation
    warning.
  * reformulate(*, response=r) gives a helpful error message now when
    length(r) &gt; 1, thanks to Bill Dunlap's PR#18281.
  * Modifying globalCallingHandlers inside withCallingHandlers() now
    works or fails correctly, thanks to Henrik Bengtsson's PR#18257.
  * hist(&lt;Date&gt;, breaks = "days") and hist(&lt;POSIXt&gt;, breaks = "secs")
    no longer fail for inputs of length 1.
  * qbeta(.001, .9, .009) and similar cases now converge correctly
    thanks to Ben Bolker's report in PR#17746.
  * window(x, start, end) no longer wrongly signals "'start' cannot
    be after 'end'", fixing PR#17527 and PR#18291.
  * data() now checks that its (rarely used) list argument is a
    character vector - a couple of packages passed other types and
    gave incorrect results.
  * which() now checks its arr.ind argument is TRUE rather coercing
    to logical and taking the first element - which gave incorrect
    results in package code.
  * model.weights() and model.offset() more carefully extract their
    model components, thanks to Ben Bolker and Tim Taylor's R-devel
    post.
  * list.files(recursive = TRUE) now shows all broken symlinks
    (previously, some of them may have been omitted, PR#18296).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1650628800">- CHANGES IN R 4.2.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * The formula method of aggregate() now matches the generic in
    naming its first argument x (resolving PR#18299 by Thomas
    Soeiro).
    This means that calling aggregate() with a formula as a named
    first argument requires name formula in earlier versions of R and
    name x now, so portable code should not name the argument (code
    in many packages did).
  * Calling &amp;&amp; or || with either argument of length greater than one
    now gives a warning (which it is intended will become an error).
  * Calling if() or while() with a condition of length greater than
    one gives an error rather than a warning.  Consequently,
    environment variable _R_CHECK_LENGTH_1_CONDITION_ no longer has
    any effect.
  * Windows users should consult the WINDOWS section below for some
    profound changes including
  * Support for 32-bit builds has been dropped.
  * UTF-8 locales are used where available.
  * The default locations for the R installation and personal
    library folder have been changed.
    Thanks to Tomas Kalibera for months of work on the Windows port
    for this release.
  NEW FEATURES:
  * matrix(x, n, m) now warns in more cases where length(x) differs
    from n * m, as suggested by Abby Spurdle and Wolfgang Huber in
    Feb 2021 on the R-devel mailing list.
    This warning can be turned into an error by setting environment
    variable _R_CHECK_MATRIX_DATA_ to TRUE: R CMD check --as-cran
    does so unless it is already set.
  * Function file_test() in package utils gains tests for symlinks,
    readability and writability.
  * capabilities("libxml") is now false.
    The description of capabilities("http/ftp") now reflects that it
    refers to the default method, no longer the internal one.
  * simplify2array() gains an except argument for controlling the
    exceptions used by sapply().
  * Environment variables R_LIBS_USER and R_LIBS_SITE are both now
    set to the R system default if unset or empty, and can be set to
    NULL to indicate an empty list of user or site library
    directories.
  * The warning for axis()(-like) calls in cases of relatively small
    ranges (typically in log-scale situations) is slightly improved
    _and_ suppressed from explicit calls to .axisPars() as has always
    been the intention.
  * The contrasts setter function `contrasts&lt;-` gains an explicit
    default how.many = NULL rather than just using missing(how.many).
  * grid.pretty() gains a new optional argument n = 5.
  * There is a new function .pretty() with option bounds as a
    technical-utility version of pretty().  It and pretty() gain a
    new argument f.min with a better than back-compatible default.
  * Function grDevices::axisTicks() and related functions such as
    graphics::axis() work better, notably for the log scale; partly
    because of the pretty() improvements, but also because care is
    taken e.g., when ylim is finite but diff(ylim) is infinite.
  * nclass.FD() gains a digits option.
  * The R Mathlib internal C function bd0() (called indirectly from a
    dozen probability density and distribution functions such as
    dpois(), dbinom(), dgamma(), pgamma() _etc_) has been
    complemented by a more sophisticated and (mostly) more accurate C
    function ebd0(), currently called only by internal dpois_raw()
    improving accuracy for R level dpois() and potentially others
    calling it such as dnbinom(), dgamma() or pgamma().  (Thanks to
    Morten Welinder's PR#15628.)
  * write.ftable() gains sep = " " argument as suggested by Thomas
    Soeiro.
  * The names of the locale categories supported by R's
    Sys.getlocale() and Sys.setlocale() are now provided by variable
    .LC.categories in the base namespace.
  * The Date and POSIXt methods for hist() and the histogram method
    for plot() now also use the new default col = "lightgray" in
    consistency with the corresponding change to hist()'s default for
    R 4.0.0.
  * hist.default() gains new fuzz argument, and the histogram plot
    method no longer uses fractional axis ticks when displaying
    counts ("Frequency").
  * mapply() and hence Map() now also obey the "max-or-0-if-any"
    recycling rule, such that, e.g., Map(`+`, 1:3, 1[0]) is valid
    now.
  * as.character(&lt;obj&gt;) for "hexmode" or "octmode" objects now
    fulfils the important basic rule as.character(x)[j] ===
    as.character(x[j]).
  * The set utility functions, notably intersect() have been tweaked
    to be more consistent and symmetric in their two set arguments,
    also preserving a common mode.
  * substr(ch, start,end) &lt;- new now e.g., preserves names(ch); ditto
    for substring(), thanks to a patch from Brodie Gaslam.
  * plot(&lt;lm&gt;) gains a extend.ylim.f argument, in partial response to
    PR#15285; further PR#17784 is fixed thanks to several
    contributors and a patch by Elin Waring.  The Cook's dist
    contours get customizable via cook.col and cook.lty with a
    different default color and their legend is nicer by default and
    customizable via cook.legendChanges.
  * Attempting to subset an object that is not subsettable now
    signals an error of class notSubsettableError. The
    non-subsettable object is contained in the object field of the
    error condition.
  * Subscript-out-of-bounds errors are now signaled as errors of
    class subscriptOutOfBoundsError.
  * Stack-overflow errors are now signaled as errors inheriting from
    class stackOverflowError. See ?stackOverflowError for more
    details.
  * New partly experimental Sys.setLanguage() utility, solving the
    main problem of PR#18055.
  * gettext() and gettextf() get a new option trim = TRUE which when
    set to false allows translations for strings such as "Execution
    halted\n" typical for C code.
  * An experimental implementation of hash tables is now available.
    See ?hashtab for more details.
  * identical() gains a extptr.as.ref argument for requesting that
    external pointer objects be compared as reference objects.
  * reorder() gets an argument decreasing which it passes to sort()
    for level creation; based on the wish and patch by Thomas Soeiro
    in PR#18243.
  * as.vector() gains a data.frame method which returns a simple
    named list, also clearing a long standing 'FIXME' to enable
    as.vector(&lt;data.frame&gt;, mode="list").  This breaks code relying
    on as.vector(&lt;data.frame&gt;) to return the unchanged data frame.
  * legend() is now vectorized for arguments cex, x.intersp, and
    text.width.  The latter can now also be specified as a vector
    (one element for each column of the legend) or as NA for
    computing a proper column wise maximum value of strwidth(legend).
    The argument y.intersp can be specified as a vector with one
    entry for each row of the legend.
    legend() also gains new arguments title.cex and title.font.
    Thanks to Swetlana Herbrandt.
  * Deparsing no longer remaps attribute names dim, dimnames, levels,
    names and tsp to historical S-compatible names (which structure()
    maps back).
  * sample() and sample.int() have additional sanity checks on their
    size and n arguments.
    all.equal.numeric() gains a sanity check on its tolerance
    argument - calling all.equal(a, b, c) for three numeric vectors
    is a surprisingly common error.
    mean(na.rm =), rank(na.last =), barplot(legend.text =),
    boxplot(), contour(drawlabels =), polygon(border =) and
    methods::is(class2 =) have more robust sanity checks on their
    arguments.
    R CMD Rd2pdf (used by R CMD check) has a more robust sanity check
    on the format of \alias{} commands.
  * psigamma(x, deriv) for negative x now also works for deriv = 4
    and 5; their underlying C level dpsifn() is documented in
    'Writing R Extensions'.
  * The HTML help system now uses HTML5 (wish of PR#18149).
  * ks.test() now provides exact p-values also with ties and MC
    p-values in the two-sample (Smirnov) case.  By Torsten Hothorn.
  * ks.test() gains a formula interface, with y ~ 1 for the
    one-sample (Kolmogorov) test and y ~ group for the two-sample
    (Smirnov) test.  Contributed by Torsten Hothorn.
  * The return value from ks.test() now has class c("ks.test",
    "htest") - packages using try() need to take care to use
    inherits() and not == on the class.
  * New functions psmirnov(), qsmirnov() and rsmirnov() in package
    stats implementing the asymptotic and exact distributions of the
    two-sample Smirnov statistic.
  * iconv() now allows sub = "c99" to use C99-style escapes for UTF-8
    inputs which cannot be converted to encoding to.
  * In a forward pipe |&gt; expression it is now possible to use a named
    argument with the placeholder _ in the rhs call to specify where
    the lhs is to be inserted.  The placeholder can only appear once
    on the rhs.
  * The included LAPACK sources have been updated to version 3.10.0,
    except for the four Fortran 77 routines which 3.10.0 has
    re-implemented in Fortran 90 (where the older versions have been
    retained as the R build process does not support Fortran 90).
  * path.expand() and most other uses of tilde expansion now warn if
    a path would be too long if expanded.  (An exception is
    file.exists(), which silently returns false.)
  * trunc(&lt;Date&gt;, *) now supports units = "months" or "years" for
    consistency with the POSIXt method, thanks to Dirk Eddelbuettel's
    proposal in PR#18099.
  * list2DF() now checks that its arguments are of the same length,
    rather than use recycling.
  * The HTML help system has several new features: LaTeX-like math
    can be typeset using either KaTeX or MathJax, usage and example
    code is highlighted using Prism, and for dynamic help the output
    of examples and demos can be shown within the browser if the
    knitr package is installed. These features can be disabled by
    setting the environment variable _R_HELP_ENABLE_ENHANCED_HTML_ to
    a false value.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 15
    and so packages that provide graphics devices should be
    reinstalled.
  * The grid package now allows the user to specify a "vector" of
    pattern fills.  The fill argument to gpar() accepts a list of
    gradients and/or patterns and the functions linearGradient(),
    radialGradient(), and pattern() have a new group argument.
    Points grobs (data symbols) can now also have a pattern fill.
    The grobCoords() function now returns a more informative and
    complex result.
  * The grid package has new functions for drawing isolated groups:
    grid.group(), grid.define(), and grid.use().  These functions add
    compositing operators and affine transformations to R's graphics
    capabilities.
    The grid package also has new functions for stroking and filling
    paths: grid.stroke(), grid.fill(), and grid.fillStroke().
    A new function as.path() allows the user to specify the fill rule
    for a path that is to be used for clipping, stroking, or filling;
    available options are "winding" and "evenodd".  A new function
    as.mask() allows the user to specify the type of a mask;
    available options are "alpha" and "luminance".
    These new features are only supported so far (at most) on the
    Cairo-based graphics devices and on the pdf() device.
  * dev.capabilities() reports on device support for the new
    features.
  * par() now warns about unnamed non-character arguments to prevent
    misuse such as {usr &lt;- par("usr"); par(usr)}.
  INSTALLATION:
  * Facilities for accessing ftp:// sites are no longer tested
    (except _pro tem_ for curlGetHeaders()) as modern browsers have
    removed support.
  * R can now be built with DEFS = -DSTRICT_R_HEADERS .
  PACKAGE INSTALLATION:
  * R CMD INSTALL no longer tangles vignettes. This completes an R
    CMD build change in R 3.0.0 and affects packages built before R
    3.0.2. Such packages should be re-made with R CMD build to have
    the tangled R code of vignettes shipped with the tarball.
  * USE_FC_LEN_T will become the default: this uses the correct
    prototypes for Fortran BLAS/LAPACK routines called from C/C++,
    and requires adjustment of most such calls - see 'Writing R
    Extensions' SS6.6.2.  (This has been supported since R 3.6.2.)
  * Package installation speed for packages installed with
    keep.source has been improved. This resolve the issue reported by
    Ofek Shilon in PR#18236.
  UTILITIES:
  * R CMD check can optionally report files/directories left behind
    in home, /tmp (even though TMPDIR is set) and other directories.
    See the "R Internals" manual for details.
  * R CMD check now reports byte-compilation errors during
    installation.  These are not usually fatal but may result in
    parts of the package not being byte-compiled.
  * _R_CHECK_DEPENDS_ONLY_ can be applied selectively to examples,
    tests and/or vignettes in R CMD check: see the "R Internals"
    manual.
  * _R_CHECK_SRC_MINUS_W_IMPLICIT_ now defaults to true: recent
    versions of Apple clang on macOS have made implicit function
    declarations in C into a compilation error.
  * R CMD check --as-cran makes use of the environment variable
    AUTORECONF.  See the "R Internals" manual SS8 for further details.
  * R CMD check --use-valgrind also uses valgrind when re-building
    vignettes as some non-Sweave vignettes unhelpfully comment out
    all their code when R CMD check runs vignettes.
  * Errors in re-building vignettes (unless there are LaTeX errors)
    are reported by R CMD check as ERROR rather than WARNING when
    running vignettes has been skipped (as it frequently is in CRAN
    checks and by --as-cran).
  * R CMD Rd2pdf gains a --quiet option that is used by R CMD build
    when building the PDF package manual.
  * R CMD Rd2pdf now always runs LaTeX in batch mode, consistent with
    Texinfo &gt;= 6.7. The --batch option is ignored.
  * R CMD build and R CMD check now include the Rd file name and line
    numbers in the error message of an \Sexpr evaluation failure.
  * For packages using the \doi Rd macro (now an install-time \Sexpr)
    but no other dynamic Rd content, R CMD build now produces a
    smaller tarball and is considerably faster - skipping temporary
    package installation.
  C-LEVEL FACILITIES:
  * The non-API header R_ext/R-ftp-http.h is no longer provided, as
    the entry points it covered are now all defunct.
  * A number of non-API declarations and macro definitions have been
    moved from the installed header Rinternals.h to the internal
    header Defn.h. Packages that only use entry points and
    definitions documented to be part of the API as specified in
    'Writing R Extensions' SS6 should not be affected.
  * The macro USE_RINTERNALS no longer has any effect when compiling
    package code.  Packages which also use R_NO_REMAP will need to
    ensure that the remapped names are used for calls to API
    functions that were formerly also made available as macros.
  * The deprecated legacy S-compatibility macros PROBLEM, MESSAGE,
    ERROR, WARN, WARNING, RECOVER, ... are no longer defined in
    R_exts/RS.h (included by R.h).  Replace these by calls to
    Rf_error and Rf_warning (defined in header R_ext/Error.h included
    by R.h).
    Header R_ext/RS.h no longer includes R_ext/Error.h.
  * Header R_ext/Constants.h (included by R.h) when included from C++
    now includes the C++ header cfloat rather than the C header
    float.h (now possible as C++11 is required).
  * The legacy S-compatibility macros DOUBLE_* in R_ext/Constants.h
    (included by R.h) are deprecated.
  * The deprecated S-compatibility macros SINGLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * R_Calloc, R_Free and R_Realloc are preferred to their unprefixed
    forms and error messages now use the prefix. These forms were
    introduced in R 3.4.0 and are available even when
    STRICT_R_HEADERS is defined.
  * rmultinom has been documented in 'Writing R Extensions' SS6 so is
    now part of the R API.
  * Similarly, Rtanpi, called from R level tanpi() is now part of the
    R API.
  * The long-deprecated, undocumented and non-API entry point call_R
    is no longer declared in R_ext/RS.h (included by R.h).
  * The header S.h which has been unsupported since Jan 2016 has been
    removed.  Use R.h instead.
  DEPRECATED AND DEFUNCT:
  * The (non-default and deprecated) method = "internal" for
    download.file() and url() no longer supports http:// nor ftp://
    URIs.  (It is used only for file:// URIs.)
    On Windows, download.file(method = "wininet") no longer supports
    ftp:// URIs.  (It is no longer the default method, which is
    "libcurl" and does.)
    On Windows, the deprecated method = "wininet" now gives a warning
    for http:// and https:// URIs for both download.file() and url().
    (It is no longer the default method.)
  * On Windows, the command-line option --max-mem-size and
    environment variable R_MAX_MEM_SIZE are defunct.  The memory
    allocation limit was important for 32-bit builds, but these are
    no longer supported.
  * default.stringsAsFactors() is now formally deprecated, where that
    was only mentioned on its regular help page, previously.  So it
    now gives a warning if called.
  * unix.time() is defunct now; it had been deprecated since R 3.4.0.
  BUG FIXES:
  * Setting digits = 0 in format(), print.default() (and hence
    typically print()) or options() is again invalid.  Its behaviour
    was platform-dependent, and it is unclear what "zero significant
    digits" should mean (PR#18098).
  * Messages from C code in the cairo section of package grDevices
    are now also offered for translation, thanks to Michael Chirico's
    PR#18123.
  * mean(x) with finite x now is finite also without "long.double"
    capability.
  * R CMD Rd2pdf no longer leaves an empty build directory behind
    when it aborts due to an already existing output file.  (Thanks
    to Sebastian Meyer's PR#18141.)
  * density(x, weights = w, na.rm = TRUE) when anyNA(x) is true, now
    removes weights "in parallel" to x, fixing PR#18151, reported by
    Matthias Gondan.  Additionally, it gets a subdensity option.
  * Conversion of \Sexpr[]{&lt;expR&gt;} to LaTeX or HTML no longer
    produces long blocks of empty lines when &lt;expR&gt; itself contains
    several lines all producing empty output.  Thanks to a report and
    patch by Ivan Krylov posted to R-devel.
  * R CMD build no longer fails if a package vignette uses child
    documents and inst/doc exists.  (Thanks to Sebastian Meyer's
    PR#18156.)
  * When an R documentation ('help' source) file man/foo.Rd in a
    package has \donttest{..} examples with a syntax error, it is now
    signalled as ERROR and with correct line numbers relating to the
  * -Ex.R file, thanks to Duncan Murdoch and Sebastian Meyer's
    reports and patch proposals in PR#17501.
  * Improved determination of the correct translation domain in
    non-base packages, addressing the combination of PR#18092 and
    PR#17998 (#c6) with reports and _augmented_ patch #2904 by
    Suharto Anggono.
    Note that "R-base" is no longer the default domain e.g., for
    top-level calls to gettext(); rather translation needs explicit
    domain = * specification in such cases.
  * identical(attrib.as.set=FALSE) now works correctly with data
    frames with default row names (Thanks to Charlie Gao's PR#18179).
  * txtProgressBar() now enforces a non-zero width for argument char,
    without which no progress can be visible.
  * dimnames(table(d)) is more consistent in the case where d is a
    list with a single component, thanks to Thomas Soeiro's report to
    R-devel.
    Further, table(d1, d2) now gives an error when d1 and d2 are data
    frames as suggested by Thomas in PR#18224.
  * Fix for drawing semi-transparent lines and fills on the native
    Windows graphics device (PR#18219 and PR#16694).  Thanks to Nick
    Ray for helpful diagnosis on Bugzilla.
  * The deparser now wraps sub-expressions such as if(A) ..  with
    parentheses when needed; thanks to Duncan Murdoch's PR#18232 and
    Lionel Henry's patches there.
  * remove.packages() no longer tries to uninstall Priority: base
    packages, thanks to a report and suggestions by Colin Fay in
    PR#18227.
  * win.metafile() now has xpinch and ypinch arguments so that the
    user can override Windows' (potentially wrong) guess at device
    dimensions.
  * x[i] and x[[i]] for non-integer i should now behave in all cases
    as always documented: the index used is equivalent to
    as.integer(i) unless that would overflow where trunc(i) is used
    instead; thanks to Suharto Anggono's report and patch proposals
    in PR#17977.
  * asOneSidedFormula() now associates the resulting formula with the
    global environment rather than the evaluation environment created
    for the call.
  * &lt;bibentry&gt;$name now matches the field name case-insensitively,
    consistent with bibentry() creation and the replacement method.
  * cbind() failed to detect some length mismatches with a mixture of
    time-series and non-time-series inputs.
  * The default LaTeX style file Sweave.sty used by the RweaveLatex
    driver no longer loads the obsolete ae package; thanks to a
    report by Thomas Soeiro in PR#18271.  Furthermore, it now skips
    \usepackage[T1]{fontenc} for engines other than pdfTeX (if
    detected) or if the new [nofontenc] option is used.
  * smooth.spline() now stores its logical cv argument more safely,
    fixing a rare bug when printing, and also stores n.
  * smooth.spline(x,y,*) now computes the cv.crit statistic
    correctly, also when is.unsorted(x), fixing PR#18294.
  * The data.frame method of rbind() now warns when binding
    not-wholly-recycling vectors, by analogy to the default method
    (for matrices).
  * setAs() finds the correct class for name to when multiple
    packages define a class with that name. Thanks to Gabor Csardi
    for the report.
  * Fix for detaching a package when two classes of the same name are
    present in method signatures for the same generic. Thanks to
    Gabor Csardi for the report.
  * match.arg("", c("", "a", "B")) gives a better error message, in
    part from PR#17959, thanks to Elin Waring.
  * R CMD Sweave --clean no longer removes pre-existing files or
    subdirectories (PR#18242).
  * The quartz() device no longer splits polylines into subpaths.
    That has caused narrowly-spaced lines with many points to always
    look solid even when dashed line type was used due to dash phase
    restarts.
  * Deparsing constructs such as quote(1 + `!`(2) + 3) works again as
    before R 3.5.0, thanks to the report and patch in PR#18284 by
    Suharto Anggono.
  * as.list(f) for a factor f now keeps names(f), fixing PR#18309.
  * qbeta(.001, .9, .009) and analogous qf() calls now return a
    correct value instead of NaN or wrongly 1, all with a warning;
    thanks to the report by Ludger Goeminne in PR#18302.
  * plot.lm() failed to produce the plot of residuals vs.  factor
    levels (i.e., which=5 when leverages are constant) for models
    with character predictors (PR#17840).
  * interaction.plot(..., xtick = TRUE) misplaced the x-axis line
    (PR#18305).
  * Not strictly fixing a bug, format()ing and print()ing of
    non-finite Date and POSIXt values NaN and +/-Inf no longer show
    as NA but the respective string, e.g., Inf, for consistency with
    numeric vector's behaviour, fulfilling the wish of PR#18308.
  * R CMD check no longer runs test scripts generated from
    corresponding .Rin files twice and now signals an ERROR if
    processing an .Rin script fails.
  * tools::Rd2txt() used for plain-text help pages now renders \hrefs
    (if tools::Rd2txt_options(showURLs = TRUE)) and \urls with
    percent-encoding and standards-compliant delimiting style (angle
    brackets and no URL: prefix).  \email is now rendered with a
    mailto: prefix.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1655985600">- CHANGES IN R 4.2.1:
  NEW FEATURES:
  * New function utils::findCRANmirror() to find out if a CRAN mirror
    has been selected, otherwise fallback to the main site.  This
    behaves in the same way as tools::CRAN_package_db() and is
    intended for packages wishing to access CRAN for purposes other
    than installing packages.
    The need for this was shown by a day when the main CRAN website
    was offline and a dozen or so packages which had its URL
    hardcoded failed their checks.
  INSTALLATION on a UNIX-ALIKE:
  * The libraries searched for by --with-blas (without a value) now
    include BLIS (after OpenBLAS but before ATLAS).  And on macOS,
    the Accelerate framework (after ATLAS).  (This is patterned after
    the AX_BLAS macro from the Autoconf Archive.)
  * The included LAPACK sources have been updated to 3.10.1.
  UTILITIES:
  * The (full path to) the command tidy to be used for HTML
    validation can be set by environment variable R_TIDYCMD.
  * Setting environment variable _R_CHECK_RD_VALIDATE_RD2HTML_ to a
    false value will override R CMD check --as-cran and turn off HTML
    validation.  This provides a way to circumvent a problematic
    tidy.
    The 2006 version that ships with macOS is always skipped.
  C-LEVEL FACILITIES:
  * The undocumented legacy declarations of Sint, Sfloat, SINT_MAX
    and SINT_MIN in header R.h are deprecated.
  BUG FIXES:
  * fisher.test(d) no longer segfaults for "large" d; fixing PR#18336
    by preventing/detecting an integer overflow reliably.
  * tar(., files=*) now produces correctly the warning about invalid
    uid or gid of files, fixing PR#18344, reported by Martin Morgan.
  * tk_choose.files() with multi = FALSE misbehaved on paths
    containing spaces (PR#18334) (regression introduced in R 4.0.0).
  * sort(x, partial = ind, *) now works correctly notably for the
    non-default na.last = FALSE or TRUE, fixing PR#18335 reported by
    James Edwards.
  * Environment variable _R_CHECK_XREFS_REPOSITORIES_ is only used
    for checking .Rd cross-references in R CMD check (as documented)
    and not for other uses looking for a CRAN mirror.
  * The search for a CRAN mirror when checking packages now uses
    getOption("repos") if that specifies a CRAN mirror, even when it
    does not also specify all three Bioconductor repositories (as was
    previously required).
  * The HTML code generated by tools::Rd2HTML() has been improved to
    pass tidy 5.8.0.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1667217600">- CHANGES IN R 4.2.2:
  NEW FEATURES:
  * tools::Rdiff(useDiff = TRUE) checks for the presence of an
    external diff command and switches to useDiff = FALSE if none is
    found.  This allows R CMD Rdiff to always work.
  * On Windows, environment variable R_LIBCURL_SSL_REVOKE_BEST_EFFORT
    can be used to switch to only 'best-effort' SSL certificate
    revocation checks with the default "libcurl" download method.
    This reduces security, but may be needed for downloads to work
    with MITM proxies (PR#18379).
  * (macOS) The run-time check for libraries from XQuartz for X11 and
    Tcl/Tk no longer uses otool from the Apple Developer Tools
    (PR#18400).
  * The LaTeX style for producing the PDF manuals, Rd.sty, now loads
    the standard amsmath, amsfonts and amssymb packages for greater
    coverage of math commands in the Rd \eqn and \deqn macros.  The
    \mathscr LaTeX command is also provided (via the mathrsfs
    package, if available, or the amsfonts bundle otherwise),
    fulfilling the wish of PR#18398.
  * (Windows) The default format of readClipboard() and
    writeClipboard() has been changed to 13 (CF_UNICODETEXT).
  INSTALLATION on a UNIX-ALIKE:
  * The PDF manuals (if built) can be compacted by the new target
    make compact-pdf (at the top level or in directory doc/manual).
  * There is now configure support for LLVM clang 15 on Linux, which
    defaults to position-independent (PIE) executables whereas
    gfortran does not.
  * Many small changes to ease compilation (and suppress warnings)
    with LLVM clang 15.
  BUG FIXES:
  * Rscript -e would fail if stdin were closed (Reported by Henrik
    Bengtsson.)
  * qt(*, log.p=TRUE) in outer tails no longer produces NaN in its
    final steps, thus fixing PR#18360.
  * tools::Rd2latex() now escapes hashes and ampersands when writing
    URLs, fixing LaTeX errors with such URLs in \tabular.
  * When isGeneric(f, fdef=*) is used with mismatching names, the
    warning is better understandable; reported (with fix) in PR#18370
    by Gabe Becker.
  * poly(x, n) now works again (and is now documented) when x is a
    "Date" or "POSIXct" object, or of another class while fulfilling
    mode(x) == "numeric".  This also enables poly(x, *, raw=TRUE) for
    such variables.  Reported by Michael Chirico to R-devel.
  * write.table(), write.csv() and write.csv2() restore their
    numerical precision (internal equivalent of digits = 15) after an
    interrupt (PR#18384).
  * One can now read also byte FF from a clipboard connection
    (PR#18385).
  * source("") and source(character()) now give more helpful error
    messages.
  * R CMD check --as-cran set _R_CHECK_TIMINGS_ too late to have the
    intended effect.
  * as.POSIXlt(x) now also works with very large dates x, fixing
    PR#18401 reported by Hannes M"uhleisen.
  * Files can now be extracted even from very large zip archives
    (PR#18390, thanks to Martin Jakt).
  * Non-finite objects of class "POSIXlt" are now correctly coerced
    to classes "Date" and "POSIXct"; following up on the extension to
    format() them correctly.
  * Added methods for is.finite(), is.infinite() and is.nan() for
    "POSIXlt" date-time objects.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1678881600">- CHANGES IN R 4.2.3:
  C-LEVEL FACILITIES:
  * The definition of DL_FUNC in R_ext/Rdynload.h has been changed to
    be fully C-compliant.  This means that functions loaded _via_ for
    example R_GetCCallable need to be cast to an appropriate type if
    they have any arguments.
  * .Machine has a new element sizeof.time_t to identify old systems
    with a 32-bit type and hence a limited range of date-times (and
    limited support for dates millions of years from present).
  PACKAGE INSTALLATION:
  * (Windows) The default C++ standard had accidentally been left at
    C++11 when it was changed to C++14 on Unix.
  BUG FIXES:
  * As "POSIXlt" objects may be "partially filled" and their list
    components meant to be recycled, length() now is the length of
    the longest component.
  * as.POSIXlt.Date() could underflow for dates in the far past (more
    than half a million years BCE).
  * as.Date.POSIXlt(x) would return "1970-01-01" instead of NA in R
    4.2.2, e.g., for
    x &lt;- as.POSIXlt(c("2019-01-30","2001-1-1"))
    x$mon &lt;- c(0L, NA); as.Date(x)
  * R CMD check failed to apply enabled _R_CHECK_SUGGESTS_ONLY_ to
    examples and vignettes (regression in R 4.2.0).
  * R CMD check did not re-build vignettes in separate processes by
    default (regression in R 4.2.0).
  * Running examples from HTML documentation now restores previous
    knitr settings and options (PR#18420).
  * Quartz: fonts are now located using Core Graphics API instead of
    deprecated ATS which is no longer supported in the macOS 13 SDK
    (PR#18426).  This also addresses an issue where the currently
    used font in the Quartz device context was not correctly
    retained.
  * (Windows) Math symbols in text drawing functions are again
    rendered correctly (PR#18440).  This fixes a regression in R
    4.2.1 caused by a fix in PR#18382 which uncovered an issue in
    GraphApp due to which the symbol charset was not used with TT
    Symbol font face.
  * (Windows) Installing a package with a src/Makefile.{win,ucrt}
    file includes ~/.R/Makevars.win64 in the search for user
    makevars, as documented in "R Installation and Administration"
    and done for packages with a src/Makevars.{win,ucrt} file.
  * format(&lt;POSIXlt_w/_unbalanced_sec&gt;, "....%OS&lt;n&gt;") with n &gt; 0 no
    longer accidentally uses the unbalanced seconds, thanks to
    Suharto Anggono's report (including patch) in PR#18448.
  * solve.default(a, b) works around issues with some versions of
    LAPACK when a contains NA or NaN values.
  * When UseMethod() cannot dispatch, it no longer segfaults
    producing the error message in case of a long class(), thanks to
    Joris Vankerschaver's report (including patch) in PR#18447.
  * When example(foo, ..) produces graphics on an interactive device
    it needs to open itself, it now leaves devAskNewPage() unchanged
    even when it was FALSE, thus fixing a 14 years old '&lt;FIXME&gt;'.
  * packageDescription() again catches errors from encoding
    conversions. This also fixes broken packageVersion() in C locale
    on systems where iconv does not support transliteration.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1681128000">- add patch to build with libcurl &gt;= 8</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1682078400">- CHANGES IN R 4.3.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Calling &amp;&amp; or || with LHS or (if evaluated) RHS of length greater
    than one is now always an error, with a report of the form
    'length = 4' in coercion to 'logical(1)'
    Environment variable _R_CHECK_LENGTH_1_LOGIC2_ no longer has any
    effect.
  NEW FEATURES:
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.10.1.  (This caused some platform-dependent
    changes to package check output.)  And then to the sources from
    LAPACK version 3.11.0 (with changes only to double complex
    subroutines).
  * The included LAPACK sources have been updated to include the four
    Fortran 90 routines rather than their Fortran 77 predecessors.
    This may give some different signs in SVDs or
    eigendecompositions..  (This completes the transition to LAPACK
    3.10.x begun in R 4.2.0.)
  * The LAPACK sources have been updated to version 3.11.0.  (No new
    subroutines have been added, so this almost entirely bug fixes:
    Those fixes do affect some computations with NaNs, including R's
    NA.)
  * The parser now signals _classed_ errors, notably in case of the
    pipe operator |&gt;.  The error object and message now give line and
    column numbers, mostly as proposed and provided by Duncan Murdoch
    in PR#18328.
  * toeplitz() is now generalized for asymmetric cases, with a
    toeplitz2() variant.
  * xy.coords() and xyz.coords() and consequently, e.g., plot(x,y,
    log = "y") now signal a _classed_ warning about negative values
    of y (where log(.) is NA).  Such a warning can be specifically
    suppressed or caught otherwise.
  * Regular expression functions now check more thoroughly whether
    their inputs are valid strings (in their encoding, e.g. in
    UTF-8).
  * The performance of grep(), sub(), gsub() and strsplit() has been
    improved, particularly with perl = TRUE and fixed = TRUE.  Use of
    useBytes = TRUE for performance reasons should no longer be
    needed and is discouraged: it may lead to incorrect results.
  * apropos() gains an argument dot_internals which is used by the
    completion (help(rcompgen)) engine to also see base internals
    such as .POSIXct().
  * Support in tools::Rdiff() for comparing uncompressed PDF files is
    further reduced - see its help page.
  * qqplot(x, y, ...) gains conf.level and conf.args arguments for
    computing and plotting a confidence band for the treatment
    function transforming the distribution of x into the distribution
    of y (Switzer, 1976, _Biometrika_). Contributed by Torsten
    Hothorn.
  * Performance of package_dependencies() has been improved for cases
    when the number of dependencies is large.
  * Strings newly created by gsub(), sub() and strsplit(), when any
    of the inputs is marked as "bytes", are also marked as "bytes".
    This reduces the risk of creating invalid strings and accidental
    substitution of bytes deemed invalid.
  * Support for readLines(encoding = "bytes") has been added to allow
    processing special text files byte-by-byte, without creating
    invalid strings.
  * iconv(from = "") now takes into account any declared encoding of
    the input elements and uses it in preference to the native
    encoding.  This reduces the risk of accidental creation of
    invalid strings, particularly when different elements of the
    input have different encoding (including "bytes").
  * Package repositories in getOption("repos") are now initialized
    from the repositories file when utils is loaded (if not already
    set, e.g., in .Rprofile).  (From a report and patch proposal by
    Gabriel Becker in PR#18405.)
  * compactPDF() gets a verbose option.
  * type.convert() and hence read.table() get new option tryLogical =
    TRUE with back compatible default.  When set to false, converts
    "F" or "T" columns to character.
  * Added new unit prefixes "R" and "Q" for abbreviating
    (unrealistically large) sizes beyond 10^{27} in standard = "SI",
    thanks to Henrik Bengtsson's PR#18435.
  * as.data.frame()'s default method now also works fine with atomic
    objects inheriting from classes such as "roman", "octmode" and
    "hexmode", such fulfilling the wish of PR#18421, by Benjamin
    Feakins.
  * The as.data.frame.vector() utility now errors for wrong-length
    row.names.  It warned for almost six years, with "Will be an
    error!".
  * sessionInfo() now also contains La_version() and reports codepage
    and timezone when relevant, in both print() and toLatex() methods
    which also get new option tzone for displaying timezone
    information when locale = FALSE.
  * New function R_compiled_by() reports the C and Fortran compilers
    used to build R, if known.
  * predict(&lt;lm&gt;, newdata = *) no longer unnecessarily creates an
    offset of all 0s.
  * solve() for complex inputs now uses argument tol and by default
    checks for 'computational singularity' (as it long has done for
    numeric inputs).
  * predict(&lt;rank-deficient lm&gt;, newdata=*) now obeys a new argument
    rankdeficient, with new default "warnif", warning only if there
    are non-estimable cases in newdata.  Other options include
    rankdeficient = "NA", predicting NA for non-estimable newdata
    cases.  This addresses PR#15072 by Russ Lenth and is based on his
    original proposal and discussions in PR#16158 also by David Firth
    and Elin Waring.  Still somewhat experimental.
  * Rgui console implementation now works better with the NVDA screen
    reader when the full blinking cursor is selected.  The underlying
    improvements in cursor handling may help also other screen
    readers on Windows.
  * The drop-field control in GraphApp can now be left with the TAB
    key and all controls can be navigated in the reverse order using
    the Shift+TAB key, improving accessibility of the Rgui
    configuration editor.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now fully accurate
    (instead of to "only" minimally five digits).
  * demo(error.catching) now also shows off withWarnings() and
    tryCatchWEMs().
  * As an experimental feature the placeholder _ can now also be used
    in the rhs of a forward pipe |&gt; expression as the first argument
    in an extraction call, such as _$coef. More generally, it can be
    used as the head of a chain of extractions, such as _$coef[[2]].
  * Spaces in the environment variable used to choose the R session's
    temporary directory (TMPDIR, TMP and TEMP are tried in turn) are
    now fatal.  (On Windows the 'short path' version of the path is
    tried and used if that does not contain a space.)
  * all.equal.numeric() gets a new optional switch giveErr to return
    the numeric error as attribute.  Relatedly,
    stopifnot(all.equal&lt;some&gt;(a, b, ..)) is as "smart" now, as
    stopifnot(all.equal(....)) has been already, thus allowing
    customized all.equal&lt;Some&gt;() wrappers.
  * R on Windows is now able to work with path names longer than 260
    characters when these are enabled in the system (requires at
    least Windows 10 version 1607).  Packages should be updated to
    work with long paths as well, instead of assuming PATH_MAX to be
    the maximum length.  Custom front-ends and applications embedding
    R need to update their manifests if they wish to allow this
    feature.  See
    &lt;https://blog.r-project.org/2023/03/07/path-length-limit-on-windows&gt;
    for more information.
  * 'Object not found' and 'Missing argument' errors now give a more
    accurate error context. Patch provided by Lionel Henry in
    PR#18241.
  * The @ operator is now an S3 generic. Based on contributions by
    Tomasz Kalinowski in PR#18482.
  * New generic chooseOpsMethod() provides a mechanism for objects to
    resolve cases where two suitable methods are found for an Ops
    Group Generic. This supports experimenting with alternative
    object systems. Based on contributions by Tomasz Kalinowski in
    PR#18484.
  * inherits(x, what) now accepts values other than a simple
    character vector for argument what. A new generic, nameOfClass(),
    is called to resolve the class name from what. This supports
    experimenting with alternative object systems. Based on
    contributions by Tomasz Kalinowski in PR#18485.
  * Detection of BLAS/LAPACK in use (sessionInfo()) with FlexiBLAS
    now reports the current backend.
  * The "data.frame" method for subset() now warns about extraneous
    arguments, typically catching the use of = instead of == in the
    subset expression.
  * Calling a:b when numeric a or b is longer than one may now be
    made into an error by setting environment variable
    _R_CHECK_LENGTH_COLON_ to a true value, along the proposal in
    PR#18419 by Henrik Bengtsson.
  * density(x, weights = *) now warns if automatic bandwidth
    selection happens without using weights; new optional warnWbw may
    suppress the warning.  Prompted by Christoph Dalitz' PR#18490 and
    its discussants.
  * rm(list = *) is faster and more readable thanks to Kevin Ushey's
    PR#18492.
  * The plot.lm() function no longer produces a normal Q-Q plot for
    GLMs. Instead it plots a half-normal Q-Q plot of the absolute
    value of the standardized deviance residuals.
  * The print() method for class "summary.glm" no longer shows
    summary statistics for the deviance residuals by default.  Its
    optional argument show.residuals can be used to show them if
    required.
  * The tapply() function now accepts a data frame as its X argument,
    and allows INDEX to be a formula in that case. by.data.frame()
    similarly allows INDICES to be a formula.
  * The performance of df[j] &lt;- value (including for missing j) and
    write.table(df) has been improved for data frames df with a large
    number of columns.  (Thanks to Gabriel Becker's PR#18500,
    PR#18503 and discussants, prompted by a report from Toby Dylan
    Hocking on the R-devel mailing list.)
  * The matrix multiply operator %*% is now an S3 generic, belonging
    to new group generic matrixOps.  From Tomasz Kalinowski's
    contribution in PR#18483.
  * New function array2DF() to convert arrays to data frames,
    particularly useful for the list arrays created by tapply().
  DATES and TIMES:
  * On platforms where (non-UTC) datetimes before 1902 (or before
    1900 as with system functions on recent macOS) are guessed by
    extrapolating time zones from 1902-2037, there is a warning at
    the first use of extrapolation in a session.  (As all time zones
    post 2037 are extrapolation, we do not warn on those.)
  * (Platforms using --with-internal-tzone, including Windows and by
    default macOS). How years are printed in dates or date-times can
    be controlled by environment variable R_PAD_YEARS_BY_ZERO.  The
    default remains to pad to 4 digits by zeroes, but setting value
    no gives no padding (as used by default by glibc).
  * strftime() tries harder to determine the offset for the "%z"
    format, and succeeds on the mainstream R platforms.
  * strftime() has a limit of 2048 bytes on the string produced -
    attempting to exceed this is an error.  (Previously it silently
    truncated at 255 bytes.)
  * sessionInfo() records (and by default prints) the system time
    zone as part of the locale information.  Also, the source
    (system/internal) of the date-time conversion and printing
    functions.
  * Objects of class "POSIXlt" created in this version of R always
    have 11 components: component zone is always set, and component
    gmtoff is set for times in UTC and usually set on the (almost
    all) platforms which have C-level support, otherwise is NA.
  * There are comprehensive validity checks on the structure of
    objects of class "POSIXlt" when converting (including formatting
    and printing).  (This avoids mis-conversions of hand-crafted
    objects.)
  * There is some support for using the native date-time routines on
    macOS: this is only viable on recent versions (e.g. 12.6 and 13)
    and does get wrong some historical changes (before 1900, during
    WWII).  Use of --with-internal-tzone remains the default.
  * as.POSIXct(&lt;numeric&gt;) and as.POSIXlt(.) (without specifying
    origin) now work.  So does as.Date(&lt;numeric&gt;).
  * as.Date.POSIXct(., tz) now treats several tz values, notably
    "GMT" as equivalent to "UTC", proposed and improved by Michael
    Chirico and Joshua Ulrich in PR#17674.
  * Experimental balancePOSIXlt() utility allows using "ragged" and
    or out-of-range "POSIXlt" objects more correctly, e.g., in
    subsetting and subassignments.  Such objects are now documented.
    More experimentally, a "POSIXlt" object may have an attribute
    "balanced" indicating if it is known to be filled or fully
    balanced.
  * Functions axis.Date() and axis.POSIXct() are rewritten to gain
    better default tick locations and better default formats by using
    prettyDate(). Thanks to Swetlana Herbrandt.
  * The mapping of Windows' names for time zones to IANA's 'Olson'
    names has been updated.  When ICU is available (it is by
    default), it is used to get a mapping for the current region set
    in Windows.  This can be overridden by setting environment
    variable TZ to the desired Olson name - see OlsonNames() for
    those currently available.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 16
    and so packages that provide graphics devices should be
    reinstalled.
  * The grDevices and grid packages have new functions for rendering
    typeset glyphs, primarily: grDevices::glyphInfo() and
    grid::grid.glyph().
    Rendering of typeset glyphs is only supported so far on the
    Cairo-based graphics devices and on the pdf() and quartz()
    devices.
  * The defined behaviour for "clear" and "source" compositing
    operators (via grid::grid.group()) has been changed (to align
    better with simple interpretation of original Porter-Duff
    definitions).
  * Support for gradients, patterns, clipping paths, masks, groups,
    compositing operators, and affine transformations has been added
    to the quartz() device.
  INSTALLATION on a UNIX-ALIKE:
  * A system installation of generic LAPACK 3.10.0 or later will be
    preferred to the version in the R sources.
    configure option --with-lapack=no (equivalently --without-lapack)
    forces compilation of the internal LAPACK sources.
    If --with-lapack is not specified, a system liblapack is looked
    for and used if it reports version 3.10.0 or later and does not
    contain BLAS routines.
    Packages using LAPACK will need to be reinstalled if this changes
    to using an external library.
  * On aarch64 Linux platforms using GCC, configure now defaults to
  - fPIC (instead of -fpic), as desired in PR#18326.
  * configure now checks conversion of datetimes between POSIXlt and
    POSIXct around year 2020.  Failure (which has been seen on
    platforms missing tzdata) is fatal.
  * If configure option --with-valgrind-instrumentation is given
    value 1 or 2, option --with-system-valgrind-headers is now the
    default and ignored (with a warning).  It is highly recommended
    that the system headers are installed alongside valgrind: they
    are part of its packaging on some Linux distributions and
    packaged separately (e.g. in the valgrind-devel RPM) on others.
    configure will give a warning if they are not found.
    The system headers will be required in a future release of R to
    build with valgrind instrumentation.
  * libcurl 8.x is now accepted by configure: despite a change in
    major version number it changes neither API nor ABI.
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools43, an update of the Rtools42 toolchain.  It is
    based on gcc 12 and newer versions of MinGW-W64, binutils and
    libraries.  At this time R-devel can still be built using
    Rtools42 without changes, but when R-devel is installed via the
    installer, it will by default look for Rtools43.
  * Old make targets rsync-extsoft and 32-bit ones that are no longer
    needed have been removed.
  * Default builds (including for packages) no longer select C99.
    Thus the C standard used is the default for the compiler, which
    for the toolchain in Rtools43 is C17.  (This is consistent with
    Unix builds.)
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++17 where
    available (which it is on all currently checked platforms): if
    not C++14 or C++11 is used if available otherwise C++ is not
    supported.
  * USE_FC_LEN_T is the default: this uses the correct
    (compiler-dependent) prototypes for Fortran BLAS/LAPACK routines
    called from C/C++, and requires adjustment of many such calls -
    see 'Writing R Extensions' SS6.6.1.
  * There is initial support for C++23 as several compilers are now
    supporting -std=c++23 or -std=c++2b or similar.  As for C++20,
    there no additional configure checks for C++23 features beyond a
    check that the compiler reports a __cplusplus value greater than
    that in the C++20 standard.  C++ feature tests should be used.
  * There is support for a package to indicate the version of the C
    standard which should be used to compile it, and for the
    installing user to specify this.  In most cases R defaults to the
    C compiler's default standard which is C17 (a `bug-fix' of C11) -
    earlier versions of R or compilers may have defaulted to C99.
    Current options are:
    USE_C17 Use a standard that is at most C17.  The intention is to
    allow legacy packages to still be installed when later C
    standards become the default, including packages using new
    keywords as identifiers or with K&amp;R-style function
    declarations.  This will use C17 if available, falling back
    to C11.
    USE_C90 Use the C90 (aka C89) standard.  (As that standard did
    not require compilers to identify that version, all we can
    verify is that the compiler does not claim to be using a
    later standard.  It may accept C99 features - for example
    clang accepts // to make comments.)
    USE_C99 Use the C99 standard. This should be rarely needed - it
    avoids the few new features of C11/C17 which can be useful if
    a package assumes them if C17 is specified and they are not
    implemented.
    USE_C23 Use C23 (or in future, later).  Compiler/library support
    for C23 is still being implemented, but LLVM clang from
    15.0.0 and the upcoming GCC 13 have quite extensive support.
    These can be specified as part of the SystemRequirements field in
    the package's DESCRIPTION file or _via_ options --use-C17 and so
    on of R CMD INSTALL and R CMD SHLIB.
    For further details see "Writing R Extensions" SS1.2.5.
  * (Windows) A src/Makefile.ucrt or src/Makefile.win file is now
    included after R_HOME/etcR_ARCH/Makeconf and so no longer needs
    to include that file itself.  Installation of a package with such
    a file now uses a site Makevars file in the same way as a package
    with a src/Makevars.win file would.
  * configure is now passed crucial variables such as CC and CFLAGS
    in its environment, as many packages were not setting them (as
    documented in 'Writing R Extensions' SS1.2).
    This has most effect where configure is used to compile parts of
    the package - most often by cmake or libtool which obfuscate the
    actual compile commands used.
    Also used for configure.win and configure.ucrt on Windows.
  FORTRAN FLAGS:
  * The flag -fno-optimize-sibling-calls is no longer forced for
    gfortran 7 and later.  It should no longer be needed now using
    'hidden' character-length arguments when calling BLAS/LAPACK
    routines from C/C++ is the default even for packages.  (Unless
    perhaps packages call Fortran code from C/C++ without using R's
    headers and without allowing for these arguments.)
  C-LEVEL FACILITIES:
  * The deprecated S-compatibility macros DOUBLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * The deprecated legacy typedefs of Sint and Sfloat in header R.h
    are no longer defined, and that header no longer includes header
    limits.h from C nor climits from C++.
  * New macro CAD5R() is provided in Rinternals.h and used in a few
    places in the R sources.
  * ALTREP now supports VECSXP vectors. Contributed by Gabor Csardi
    in PR#17620.
  * The Rcomplex definition (in header R_ext/Complex.h) has been
    extended to prevent possible mis-compilation when interfacing
    with Fortran (PR#18430).  The new definition causes compiler
    warnings with static initializers such as {1, 2}, which can be
    changed to {.r=1, .i=2}.
    Using the new definition from C++ depends on compiler extensions
    supporting C features that have not been incorporated into the
    C++ standards but are available in g++ and clang++: this may
    result in C++ compiler warnings but these have been worked around
    for recent versions of common compilers (GCC, Apple/LLVM clang,
    Intel).
    It is intended to change the inclusion of header R_ext/Complex.h
    by other R headers, so C/C++ code files which make use of
    Rcomplex should include that header explicitly.
  UTILITIES:
  * R CMD check does more checking of package .Rd files, warning
    about invalid email addresses and (some) invalid URIs and noting
    empty \item labels in description lists.
  * R CMD check now also reports problems when reading package news
    in md (file NEWS.md) and (optionally) plain text (file NEWS)
    formats.
  * _R_CHECK_TIMINGS_ defaults to a value from the environment even
    for R CMD check --as-cran; this allows for exceptionally fast or
    slow platforms.
    It now applies to checking PDF and HTML versions of the manuals,
    and 'checking CRAN incoming feasibility'.
  * R CMD check can optionally (but included in --as-cran) check
    whether HTML math rendering _via_ KaTeX works for the package .Rd
    files.
  * Non-interactive debugger invocations can be trapped by setting
    the environment variable _R_CHECK_BROWSER_NONINTERACTIVE_ to a
    true value.  This is enabled by R CMD check --as-cran to detect
    the use of leftover browser() statements in the package.
  * The use of sprintf and vsprintf from C/C++ has been deprecated in
    macOS 13 and is a known security risk.  R CMD check now reports
    (on all platforms) if their use is found in compiled code:
    replace by snprintf or vsnprintf respectively. [*NB:* whether
    such calls get compiled into the package is platform-dependent.]
  * Where recorded at installation, R CMD check reports the C and
    Fortran compilers used to build R.
    It reports the OS in use (if known, as given by osVersion) as
    well as that R was built for.
    It notes if a C++ standard was specified which is older than the
    current default: many packages have used C++11 to mean 'not
    C++98' - as C++11 is the minimum supported since R 4.0.0, that
    specification can probably be removed.
  * R CMD INSTALL reports the compilers (and on macOS, the SDK) used,
    and this is copied to the output of R CMD check.
    Where a C++ standard is specified, it is reported.
  * R CMD check's 'checking compilation flags in Makevars' has been
    relaxed to accept the use of flags such as -std=f2008 in
    PKG_FFLAGS.
  * tools::buildVignettes() has a new argument skip, which is used by
    R CMD check to skip (and note) vignettes with unavailable
    \VignetteDepends (PR#18318).
  * New generic .AtNames() added to enable class-specific completions
    after @. The formerly internal function findMatches() is now
    exported, mainly for use in methods for .DollarNames() and
    .AtNames().
  DEPRECATED AND DEFUNCT:
  * default.stringsAsFactors() is defunct.
  * Calling as.data.frame.&lt;class&gt;() directly (for 12 atomic classes)
    is going to be formally deprecated, currently activated by
    setting the environment variable
    _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ to non-empty, which also
    happens in R CMD check --as-cran.
  BUG FIXES:
  * Hashed environments with sizes less than 5 can now grow.
    (Reported to R-devel by Duncan Garmonsway.)
  * as.character(&lt;Rd&gt;, deparse = TRUE) failed to re-escape curly
    braces in LaTeX-like text.  (Reported by Hadley Wickham in
    PR#18324.)
  * library() now passes its lib.loc argument when requiring Depends
    packages; reported (with fix) in PR#18331 by Mikael Jagan.
  * R CMD Stangle: improved message about 'Output' files.
  * head(x, n) and tail(x, n) now signal an error if n is not
    numeric, instead of incidentally "working" sometimes returning
    all of x.  Reported and discussed by Colin Fay, in PR#18357.
  * The "lm" method for summary() now gives the correct F-statistic
    when the model contains an offset.  Reported in PR#18008.
  * C() and `contrasts&lt;-`() now preserve factor level names when
    given a function object (as opposed a function name which did
    preserve names). Reported in PR#17616.
  * c(a = 1, 2)[[]] no longer matches 2 but rather signals a
    _classed_ error.  Reported and analysed by Davis Vaughan in
    PR#18367, a duplicate of PR#18004, by Jan Meis et al.  For
    consistency, NULL[[]] is also erroneous now.  x[[]] &lt;- v gives an
    error of the same class "MissingSubscriptError".
  * The relist() function of utils now supports NULL elements in the
    skeleton (PR#15854).
  * ordered(levels = *) (missing x) now works analogously to factor(,
    ordered=TRUE); reported (with fix) by Achim Zeileis in PR#18389.
  * User-defined Rd macro definitions can now span multiple lines,
    thanks to a patch from Duncan Murdoch. Previously, the Rd parser
    silently ignored everything after the first line.
  * Plain-text help (tools::Rd2txt()) now preserves an initial blank
    line for text following description list items.
  * tools::Rd2HTML() and tools::Rd2latex() no longer split \arguments
    and \value lists at Rd comments.
  * tools::Rd2latex() now correctly handles optional text outside
    \items of argument lists as well as bracketed text at the
    beginning of sections, e.g., \value{[NULL]}.
  * as.character(&lt;POSIXt&gt;) now behaves more in line with the methods
    for atomic vectors such as numbers, and is no longer influenced
    by options().  Ditto for as.character(&lt;Date&gt;).  The
    as.character() method gets arguments digits and OutDec with
    defaults _not_ depending on options().  Use of as.character(*,
    format = .) now warns.
  * Similarly, the as.character.hexmode() and *.octmode() methods
    also behave as good citizen methods and back compatibility option
    keepStr = TRUE.
  * The as.POSIXlt(&lt;POSIXlt&gt;) and as.POSIXct(&lt;POSIXct&gt;) default
    methods now do obey their tz argument, also in this case.
  * as.POSIXlt(&lt;Date&gt;) now does apply a tz (time zone) argument, as
    does as.POSIXct(); partly suggested by Roland Fuss on the R-devel
    mailing list.
  * as.Date.POSIXlt(x) now also works when the list components are of
    unequal length, aka "partially filled" or "ragged".
  * expand.model.frame() looked up variables in the wrong environment
    when applied to models fitted without data.  Reported in
    PR#18414.
  * time() now (also) uses the ts.eps = getOption("ts.eps") argument
    and thus by default rounds values very close to the start (or
    end) of a year.  Based on a proposal by Andre"i V. Kostyrka on
    R-help.
  * Printing of a factanal() result with just one factor and sort =
    TRUE now works regularly, fixing PR#17863 by Timothy Bates,
    thanks to the 'R Contributors' working group.
  * Printing 0-length objects of class "factor", "roman", "hexmode",
    "octmode", "person", "bibentry", or "citation" now prints
    something better, one of which fixes PR#18422, reported by
    Benjamin Feakins.
  * Sys.timezone() queries timedatectl only if systemd is loaded;
    addressing a report by Jan Gorecki in PR#17421.
  * The formula method of cor.test() had scoping problems when
    environment(formula) was not the calling environment; reported
    with a patch proposal by Mao Kobayashi in PR#18439.
  * attach() of an environment with active bindings now preserves the
    active bindings.  Reported by Kevin Ushey in PR#18425.
  * BLAS detection now works also with system-provided libraries not
    available as regular files.  This fixes detection of the
    Accelerate framework on macOS since Big Sur.  Reported by David
    Novgorodsky.
  * download.file() gives a helpful error message in case of an
    invalid download.file.method option, thanks to Colin Fay's report
    in PR#18455.
  * Sporadic crashes of Rterm when using completion have been fixed.
  * Rprof() is now more reliable.  A livelock in thread
    initialization with too short sampling interval has been fixed on
    macOS.  A deadlock in using the C runtime has been fixed on
    Windows.  A potential deadlock has been prevented on Unix.
  * Cursor placement in Rgui now works even after a fixed-width font
    is selected.
  * Mandatory options (options()) are now set on startup so that
    saving and restoring them always works (PR#18372).
  * Package installation, R CMD INSTALL or install.packages(*), now
    parses each of the &lt;pkg&gt;/R/*.R files individually instead of
    first concatenating and then parse()ing the large resulting file.
    This allows parser or syntax errors to be diagnosed with correct
    file names and line numbers, thanks to Simon Dedman's report and
    Bill Dunlap's patch in PR#17859.
    This _does_ require syntactically self contained R source files
    now, fixing another inadvertent bug.
  * predict.lm(&lt;model with offset&gt;) now finds the offset in the
    correct environment, thanks to Andr'e Gillibert's report and patch
    in PR#18456.
  * getInitial(&lt;formula&gt;) now finds the selfStart model in the
    correct environment.  (Reported by Ivan Krylov in PR#18368.)
  * Fix for possible segfault when using recently-added graphics
    features, such as gradients, clipping paths, masks, and groups
    with pdf(file=NULL).
  * class(m) &lt;- class(m) no longer changes a matrix m by adding a
    class _attribute_.
  * packageDate(pkg) now only warns once if there is no pkg.
  * When ts() creates a multivariate time series, "mts", it also
    inherits from "array" now, and is.mts() is documented _and_
    stricter.
  * Rd2txt() now preserves line breaks of \verb Rd content and from
    duplicated \cr.  The former also fixes the rendering of verbatim
    output from Rd \Sexpr in plain-text help.
  * uniroot(f, interval) should no longer wrongly converge _outside_
    the interval in some cases where abs(f(x)) == Inf for an x at the
    interval boundary, thanks to posts by Ben Bolker and Serguei
    Sokol on R-devel.
  * Vectorized alpha handling in palette functions such as in gray(),
    rainbow(), or hcl.colors() works correctly now, thanks to Achim
    Zeileis' report and patch in PR#18476.
  * Formatting and print()ing of bibentry objects has dropped the
    deprecated citation.bibtex.max argument, such that the bibtex
    argument's default for print.bibentry() depends directly on the
    citation.bibtex.max option, whereas in format.bibentry() the
    option no longer applies.
  * Attempting to use a character string naming a foreign function
    entry point in a foreign function call in a package will now
    signal an error if the packages has called R_forceSymbols to
    specify that symbols must be used.
  * An error in table() could permanently set options(warn=2)
    promoting all subsequent warnings to errors.
  * The sigma() function gave misleading results for binary GLMs.  A
    new method for objects of class "glm" returns the square root of
    the estimate of the dispersion parameter using the same
    calculation as summary.glm().
  * bs() and ns() in the (typical) case of automatic knot
    construction, when some of the supposedly inner knots coincide
    with boundary knots, now moves them inside (with a warning),
    building on PR#18442 by Ben Bolker.
  * R CMD on Windows now skips the site profile with --no-site-file
    and --vanilla even when R_PROFILE is set (PR#18512, from Kevin
    Ushey).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1686916800">- CHANGES IN R 4.3.1:
  C-LEVEL FACILITIES:
  * The C-level API version of R's integrate(), Rdqags() in Applic.h,
    now returns the correct number of integrand evaluations neval,
    fixing PR#18515 reported and diagnosed by Stephen Wade.
  * The C prototypes for LAPACK calls dspgv and dtptrs in
    R_exts/Lapack.h had one too many and one too few character length
    arguments - but this has not caused any known issues. To get the
    corrected prototypes, include
    [#]include &lt;Rconfig.h&gt; // for PR18534fixed
    [#]ifdef PR18534fixed
    [#] define usePR18534fix 1
    [#]endif
    [#]include &lt;R_exts/Lapack.h&gt;
    in your C/C++ code (PR#18534).
  INSTALLATION:
  * Many of the checks of esoteric Internet operations and those
    using unreliable external sites have been moved to a new target
    that is not run by default and primarily intended for the core
    developers.  To run them use
    cd tests; make test-Internet-dev
  BUG FIXES:
  * .S3methods(), typically called from methods(), again marks
    methods from package base as visible.
    Also, the visibility of non-base methods is again determined by
    the method's presence in search().
  * tools::Rdiff() is now more robust against invalid strings, fixing
    installation tests on Windows without Rtools installed
    (PR#18530).
  * Fix (new) bug in hcl.colors(2, *), by Achim Zeileis (PR#18523).
  * head(., &lt;illegal&gt;) and tail(..) now produce more useful "Error in
    ...." error messages, fixing PR#18362.
  * Package code syntax on Windows is checked in UTF-8 when UTF-8 is
    the native encoding.
  * na.contiguous(x) now also returns the first run, when it is at
    the beginning and there is a later one of the same length;
    reported to R-devel, including a fix, by Georgi Boshnakov.
    Further, by default, it modifies only an existing attr(*,"tsp")
    but otherwise no longer sets one.
  * chol(&lt;not pos.def&gt;, pivot = &lt;T|F&gt;) now gives a correct error or
    warning message (depending on pivot), thanks to Mikael Jagan's
    (PR#18541).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1699012800">- CHANGES IN R 4.3.2:
  NEW FEATURES:
  * The default initialization of the "repos" option from the
    repositories file at startup can be skipped by setting
    environment variable R_REPOSITORIES to NULL such that
    getOption("repos") is empty if not set elsewhere.
  * qr.X() is now an implicit S4 generic in methods.
  * iconv(to = "ASCII//TRANSLIT") is emulated using substitution on
    platforms which do not support it (notably Alpine Linux).  This
    should give a human-readable conversion in ASCII on all platforms
    (rather than NA_character_).
  * trans3d() gains options continuous and verbose addressing the
    problem of possible "wrap around" when projecting too long
    curves, as reported by Achim Zeileis in PR#18537.
  * tools::showNonASCII() has been rewritten to work better on macOS
    14 (which has a changed implementation of iconv()).
  * tiff(type = "quartz") (the default on macOS) now warns if
    compression is specified: it continues to be ignored.
  INSTALLATION on a UNIX-ALIKE:
  * There is some support for building with Intel's LLVM-based
    compilers on x86_64 Linux, such as (C) icx, (C++) ipcx and
    (Fortran) ifx from oneAPI 2023.x.y.
  * There is support for using LLVM's flang-new as the Fortran
    compiler from LLVM 16.0.x (preferably 17.0.0 or later).
  UTILITIES:
  * R CMD check reports the use of the Fortran 90 random number
    generator RANDOM_NUMBER() and the subroutines to initialize it.
    'Writing R Extensions' has example code to use R's RNGs from
    Fortran.
  BUG FIXES:
  * substr(x, n, L) &lt;- cc now works (more) correctly for multibyte
    UTF-8 strings x when L &gt; nchar(x), thanks to a report and patch
    by 'Architect 95'.
  * contrib.url(character()) now returns 0-length character() as
    documented, which also avoids spurious warnings from
    available.packages() et al. in the edge case of an empty vector
    of repository URLs.
  * readChar(., 4e8) no longer fails, thanks to Kodi Arfer's report
    (PR#18557).
  * lapply(&lt;list&gt;, as.data.frame) no longer warns falsely for some
    base vector components.
  * Communication between parent and child processes in the multicore
    part of parallel could fail on platforms that do not support an
    arbitrarily large payload in system functions read()/write() on
    pipes (seen on macOS where a restriction to INT_MAX bytes is
    documented, without doing a partial read unlike Linux). The
    payload is now split into 1Gb chunks to avoid that problem.
    (PR#18571)
  * qqplot(x,y, conf.level=.) gives better confidence bounds when
    length(x) != length(y), thanks to Alexander Ploner's report and
    patch proposal (PR#18557).
  * norm(&lt;0-length&gt;, "2") now gives zero instead of an error, as all
    the other norm types, thanks to Mikael Jagan's PR#18542.
  * Build-stage Rd macros \packageAuthor and \packageMaintainer now
    process Authors@R, fixing NA results when the package DESCRIPTION
    omits Author and Maintainer fields.
  * Formatting and printing complex numbers could give things like
    0.1683-0i because of rounding error: -0i is now replaced by +0i.
  * postscript() refused to accept a title comment containing the
    letter "W" (PR#18599).
  * isoreg(c(1,Inf)) signals an error instead of segfaulting, fixing
    PR#18603.
  * tiff(type = "Xlib") was only outputting the last page of
    multi-page plots.
  * tools::latexToUtf8() again knows about \~{n} and other letters
    with tilde, fixing a regression in R 4.3.0, and about \^{i} as an
    alternative to \^{\i} (similarly with other accents).
    Furthermore, LaTeX codes for accented I letters are now correctly
    converted, also fixing related mistakes in
    tools::encoded_text_to_latex().
  * tar(*, tar = "internal") no longer creates out-of-spec tar files
    in the very rare case of user or group names longer than 32
    bytes, fixing PR#17871 with thanks to Ivan Krylov.
  * When using the "internal" timezone datetime code, adding a
    fraction of a second no longer adds one second, fixing PR#16856
    from a patch by Ivan Krylov.
  * tools::checkRd() no longer produces spurious notes about
    "unnecessary braces" from multi-line Rd results of \Sexpr macros.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1709208000">- CHANGES IN R 4.3.3:
  NEW FEATURES:
  * iconv() now fixes up variant encoding names such as "utf8"
    case-insensitively.
  DEPRECATED AND DEFUNCT:
  * The legacy encoding = "MacRoman" is deprecated in pdf() and
    postscript(): support was incomplete in earlier versions of R.
  BUG FIXES:
  * Arguments are now properly forwarded to methods on S4 generics
    with ... in the middle of their formal arguments. This was broken
    for the case when a method introduced an argument but did not
    include ... in its own formals. Thanks to Herv'e Pag`es for the
    report PR#18538.
  * Some invalid file arguments to pictex(), postscript() and xfig()
    opened a file called NA rather than throw an error.  These
    included postscript(NULL) (which some people expected to work
    like pdf(NULL)).
  * Passing filename = NA to svg(), cairo_pdf(), cairo_ps() or the
    Cairo-based bitmap devices opened a file called NA: it now throws
    an error.
  * quartz(file = NA) opened a file called NA, including when used as
    a Quartz-based bitmap device.  It now gives an error.
  * rank(&lt;long vector&gt;) now works, fixing PR#18617, thanks to Ilia
    Kats.
  * seq.int() did not adequately check its length.out argument.
  * match(&lt;POSIXct&gt;, .) is correct again for differing time zones,
    ditto for "POSIXlt", fixing PR#18618 reported by Bastian Klein.
  * drop.terms(*, dropx = &lt;0-length&gt;) now works, fixing PR#18563 as
    proposed by Mikael Jagan.
  * drop.terms(*) keeps + offset(.) terms when it should, PR#18565,
    and drop.terms() no longer makes up a response, PR#18566, fixing
    both bugs thanks to Mikael Jagan.
  * getS3method("t", "test") no longer finds the t.test() function,
    fixing PR#18627.
  * pdf() and postscript() support for the documented Adobe encodings
    "Greek" and "Cyrilllic" was missing (although the corresponding
    Windows' codepages could be used).
  * Computations of glyph metric information for pdf() and
    postscript() did not take into account that transliteration could
    replace one character by two or more (only seen on macOS 14) and
    typically warned that the information was not known.
  * rank(x) no longer overflows during integer addition, when
    computing rank average for largish but not-yet long vector x,
    fixing PR#18630, thanks to Ilia Kats.
  * list.files() on Windows now returns also files with names longer
    that 260 bytes (the Windows limit is 260 characters).
    Previously, some file names particularly with 'East Asian'
    characters were omitted.
  * cov2cor(&lt;0 x 0&gt;) now works, fixing PR#18423 thanks to Mikael
    Jagan and Elin Waring.
  * cov2cor(&lt;negative diagonal&gt;) and similar now give one warning
    instead of two, with better wording, fixing PR#18424 thanks to
    Mikael Jagan.
  * tools:: startDynamicHelp() now ensures port is in proper range,
    fixing PR#18645.
  * pbeta(x, a,b) is correct now for x=0 or 1 in the boundary cases
    where a or b or both are 0, fixing PR#18672 thanks to Michael
    Fay.
  * pmatch(x, table) for large table, also called for data frame row
    selection, dfrm[nm, ], is now interruptible, fixing PR#18656.
  * predict(&lt;rank-deficient lm&gt;, newdata=*) fix computing of nbasis,
    see Russ Lenth's comment 29 in PR#16158.
  * Added a work-around for a bug in macOS 14.3.1 and higher which
    prevents R plots in the Quartz Cocoa device from updating on
    screen.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1713960000">- CHANGES IN R 4.4.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Startup banners, R --version, sessionInfo() and R CMD check no
    longer report (64-bit) as part of the platform as this is almost
    universal - the increasingly rare 32-bit platforms will still
    report (32-bit).
    On Windows, ditto for window titles.
  * is.atomic(NULL) now returns FALSE, as NULL is not an atomic
    vector.  Strict back-compatibility would replace is.atomic(foo)
    by (is.null(foo) || is.atomic(foo)) but should happen only
    sparingly.
  NEW FEATURES:
  * The confint() methods for "glm" and "nls" objects have been
    copied to the stats package.  Previously, they were stubs which
    called versions in package MASS. The MASS namespace is no longer
    loaded if you invoke (say) confint(glmfit).  Further, the "glm"
    method for profile() and the plot() and pairs() methods for class
    "profile" have been copied from MASS to stats.  (profile.nls()
    and plot.profile.nls() were already in stats.)
  * The confint() and profile methods for "glm" objects have gained a
    possibility to do profiling based on the Rao Score statistic in
    addition to the default Likelihood Ratio. This is controlled by a
    new test = argument.
  * The pairs() method for "profile" objects has been extended with a
    which = argument to allow plotting only a subset of the
    parameters.
  * The "glm" method for anova() computes test statistics and
    p-values by default, using a chi-squared test or an F test
    depending on whether the dispersion is fixed or free.  Test
    statistics can be suppressed by giving argument test a false
    logical value.
  * In setRepositories() the repositories can be set using their
    names via name = instead of index ind =.
  * methods() and .S3methods() gain a all.names option for the (rare)
    case where functions starting with a . should be included.
  * Serializations can now be interrupted (e.g., by Ctrl-C on a
    Unix-alike) if they take too long, e.g., from save.image(),
    thanks to suggestions by Ivan Krylov and others on R-devel.
  * New startup option --max-connections to set the maximum number of
    simultaneous connections for the session.  Defaults to 128 as
    before: allowed values up to 4096 (but resource limits may in
    practice restrict to smaller values).
  * R on Windows (since Windows 10 2004) now uses the new Segment
    Heap allocator. This may improve performance of some
    memory-intensive applications.
  * When R packages are built, typically by R CMD build &lt;pkg&gt;, the
    new --user=&lt;build_user&gt; option overrides the (internally
    determined) user name, currently Sys.info()["user"] or LOGNAME.
    This is a (modified) fulfillment of Will Landau's suggestion in
    PR#17530.
  * tools::testInstalledBasic() gets new optional arguments outDir
    and testSrcdir, e.g., allowing to use it in a &lt;builddir&gt; !=
    &lt;srcdir&gt; setup, and in standard "binary" Windows installation
  * if* a source tests/ folder is present.
  * range(&lt;DT_with_Inf&gt;, finite = TRUE) now work for objects of class
    "Date", "POSIXct", and "POSIXlt" with infinite entries,
    analogously to range.default(), as proposed by Davis Vaughan on
    R-devel.  Other range()-methods can make use of new function
    .rangeNum().
  * New .internalGenerics object complementing .S3PrimitiveGenerics,
    for documentation and low-level book-keeping.
  * grid() now invisibly returns the x- and y- coordinates at which
    the grid-lines were drawn.
  * norm(., type) now also works for complex matrices.
  * kappa(., exact = TRUE, norm = *) now works for all norms and also
    for complex matrices.  In symmetric / triangular cases, the new
    argument uplo = "U" | "L" allows the upper or lower triangular
    part to be specified.
  * memDecompress(type = "unknown") recognizes compression in the
    default 'zlib' format as used by memCompress(type = "gzip").
  * memCompress() and memDecompress() will use the libdeflate library
    (&lt;https://github.com/ebiggers/libdeflate&gt;) if installed.  This
    uses the same type of compression for type = "gzip" but is 1.5-2x
    faster than the system libz library on some common platforms: the
    speed-up may depend on the library version.
  * diff() for objects of class "Date", "POSIXct", and "POSIXlt"
    accepts a units argument passed via ....
  * Dynamic help now does a much better job of rendering package
    DESCRIPTION metadata.
  * Rprof() gains an event argument and support for elapsed (real)
    time profiling on Unix (PR#18076).
  * filled.contour() gains a key.border argument.
  * tools::update_pkg_po() gets arguments pot_make and mo_make for
    _not_ re-making the corresponding files, and additionally a
    verbose argument.
  * Hexadecimal string colour specifications are now accepted in
    short form, so, for example, we can use "#123", which is
    equivalent to "#112233".
    Thanks to MikeFC for the original idea and Ella Kaye, Malcolm
    Barrett, George Stagg, and Hanne Oberman for the patch.
  * Plain-text help shows \var markup by angle brackets.
  * The new experimental primitive function declare() is intended to
    eventually allow information about R code to be communicated to
    the interpreter, compiler, and code analysis tools. The syntax
    for declarations is still being developed.
  * Functions psmirnov(), qsmirnov() and rsmirnov() in package stats
    have had argument two.sided renamed to alternative, to take into
    account that the permutation distributions of the one-sided
    statistics can be different in the case of ties.  Consequence of
    PR#18582.
  * sort() is now an implicit S4 generic in methods.
  * Formatting and printing, format(z), print(z), of complex vectors
    z no longer zap relatively small real or imaginary parts to zero,
    fixing PR#16752.  This is an API change, as it was documented
    previously to round real and imaginary parts together on purpose,
    producing nicer looking output.  As mentioned, e.g. in the PR,
    this change is compatible with many other "R-like" programming
    environments.
    We have simplified the internal code and now basically format the
    real and imaginary parts independently of each other.
  * New experimental functions Tailcall() and Exec() to support
    writing stack-space-efficient recursive functions.
  * Where characters are attempted to be plotted by pdf(),
    postscript() and xfig() which are not in the selected 8-bit
    character set (most often Latin-1) and the R session is using a
    UTF-8 locale, the warning messages will show the UTF-8 character
    rather than its bytes and one dot will be substituted per
    character rather than per byte.  (Platforms whose iconv() does
    transliteration silently plot the transliteration.)
    In a UTF-8 locale some transliterations are now done with a
    warning (e.g., dashes and Unicode minus to hyphen, ligatures are
    expanded, permille (‰) is replaced by o/oo), although the OS may
    have got there first.  These are warnings as they will continue
    to be replaced by dots in earlier versions of R.
  * The matrix multiplication functions crossprod() and tcrossprod()
    are now also primitive and S3 generic, as %*% had become in R
    4.3.0.
  * source() and example() have a new optional argument catch.aborts
    which allows continued evaluation of the R code after an error.
  * The non-Quartz tiff() devices allow additional types of
    compression if supported by the platform's libtiff library.
  * The list of base and recommended package names is now provided by
    tools::standard_package_names().
  * cairo_pdf() and cairo_ps() default to onefile = TRUE to closer
    match pdf() and postscript().
  * New option catch.script.errors provides a documented way to catch
    errors and then continue in non-interactive use.
  * L %||% R newly in base is an expressive idiom for the phrases
    if(!is.null(L)) L else R or if(is.null(L)) R else L.
  * The return value from warnings() now always inherits from
    "warnings" as documented, now also in the case of no warnings
    where it previously returned NULL.
  * as.complex("1i") now returns 0 + 1i instead of NA with a warning.
  * z &lt;- c(NA, 1i) now keeps the imaginary part Im(z[1]) == 0, no
    longer coercing to NA_complex_.  Similarly, cumsum(z) correctly
    sums real and imaginary parts separately, i.e., without
    "crosstalk" in case of NAs.
  * On Alpine Linux iconv() now maps "latin2", "latin-2", "latin9"
    and "latin-9" to encoding names the OS knows about
    (case-insensitively).
  * iconv(sub = "Unicode") now always zero-pads to four (hex) digits,
    rather than to 4 or 8.  (This seems to have become the convention
    once Unicode restricted the number of Unicode points to 2^21 - 1
    and so will never need more than 6 digits.)
  * NCOL(NULL) now returns 0 instead of 1, for consistency with
    cbind().
  * The information for the Euro glyph missing from the Adobe .afm
    files for the Courier, Helvetica and Times families has been
    copied from their URW equivalents - this will improve vertical
    centring in the pdf() and postscript() devices.
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.12.0.  The changes are almost entirely cosmetic.
  * The included LAPACK sources have been updated to version 3.12.0
    and some further double-complex routines added.
  * There are new font families for the 2014--5 URW 2.0 fonts (see
    ?pdf) which are included in recent versions of Ghostscript.
    These have font widths for most Greek glyphs and a few others
    which were missing from the original versions (whose font
    families remain available for reproducibility, although
    Ghostscript-based viewers will render using the 2.0 versions).
  * Improve the large-n efficiency of as.matrix(&lt;dist&gt;), thanks an R
    contributors effort, notably by Tim Taylor and Heather Turner,
    see PR#18660.
  * The default and numeric methods of all.equal() get a check.class
    option.
  * zapsmall() gets new optional arguments, function mFUN and min.d,
    for extra flexibility; fulfills a wish in PR#18199.  Also, it is
    now an implicit S4 generic in package methods.
  * The Rd filter for aspell() gains an ignore argument.
  * New generic function sort_by(), primarily useful for the
    data.frame method which can be used to sort rows of a data frame
    by one or more columns.
  * The icence headers for the RPC code in src/extra/xdr have been
    updated to use the GPL-compatible licence published by Oracle
    America in 2010.
  * New function pkg2HTML() in tools to create single-page HTML
    reference manuals for R packages.
  * The byte code evaluator now uses less C stack space for recursive
    calls to byte-compiled functions. It also makes more of an effort
    to avoid allocations for scalar return values.
  * New completion option backtick (disabled by default) allows
    non-syntactic completions to be wrapped in backquotes. This is
    currently only useful for Jupyter notebooks via the IRkernel
    package, and may cause problems for other backends.
  INSTALLATION:
  * The parser has been updated to work with bison 3.8.2, which is
    now used for the pre-generated parsers in gram.c, file.c, and
    gramRd.c. A few parser error messages have changed, which may
    affect code that relies on exact messages.
  INSTALLATION on a UNIX-ALIKE:
  * System valgrind headers are now required to use configure option
  - -with-valgrind-instrumentation with value 1 or 2.
  * configure will warn if it encounters a 32-bit build, as that is
    nowadays almost untested.
  * Environment variable R_SYSTEM_ABI is no longer used and so no
    longer recorded in etc/Renviron (it was not on Windows and was
    only ever used when preparing package tools).
  * If the libdeflate library and headers are available, libdeflate
    rather than libz is used to (de)compress R objects in lazy-load
    databases.  Typically tasks spend up to 5% of their time on such
    operations, although creating lazy-data databases is one of the
    exceptions.
    This can be suppressed if the library is available by the
    configure option --without-libdeflate-compression.
  * configure option --enable-lto=check has not worked reliably since
    2019 and has been removed.
  * The minimum autoconf requirement for a maintainer build has been
    increased to autoconf 2.71.
    It is intended to increase this to 2.72 for R 4.5.0: the
    distributed configure file was generated using 2.72.
  * The minimum version requirement for an external LAPACK has been
    reduced to 3.9.0.
  * No default C++ compiler is set if no C++17 compiler is detected:
    there is no longer an automatic fallback to C++14 or C++11.
    Compilers from the last five years should have sufficient
    support: for others macros CXX and CXXSTD can be set in file
    config.site to provide a fallback if needed.
    The Objective-C++ compiler now by default uses the standard
    selected by R for C++ (currently C++17) rather than the default
    standard for the C++ compiler (which on macOS is still C++98).
  INSTALLATION on macOS:
  * A new configure option --with-newAccelerate makes use of Apple's
    'new' BLAS / LAPACK interfaces in their Accelerate framework.
    Those interfaces are only available in macOS 13.3 or later, and
    building requires SDK 13.3 or later (from the Command Line Tools
    or Xcode 14.3 or later).
    By default the option uses new Accelerate for BLAS calls: to also
    use it for LAPACK use option --with-newAccelerate=lapack.  The
    later interfaces provide LAPACK 3.9.1 rather than 3.2.1: 3.9.1 is
    from 2021-04 and does not include the improved algorithms
    introduced in LAPACK 3.10.0 (including for BLAS calls).
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools44, an update of the Rtools43 toolchain.  It is
    based on GCC 13 and newer versions of MinGW-W64, binutils and
    libraries (targeting 64-bit Intel CPUs).  R-devel can no longer
    be built using Rtools43 without changes.
  * Rtools44 has experimental support for 64-bit ARM (aarch64) CPUs
    _via_ the LLVM 17 toolchain using lld, clang/flang-new and
    libc++.
  UTILITIES:
  * R CMD check notes when S4-style exports are used without
    declaring a strong dependence on package methods.
  * tools::checkRd() (used by R CMD check) detects more problems with
    \Sexpr-based dynamic content, including bad nesting of \Sexprs
    and invalid arguments.
  * tools::checkRd() now reports Rd titles and section names ending
    in a period; this is ignored by R CMD check unless environment
    variable _R_CHECK_RD_CHECKRD_MINLEVEL_ is set to -5 or smaller.
  * R CMD check now notes Rd files without an \alias, as long
    documented in 'Writing R Extensions' §1.3.1.  The check for a
    missing \description has been moved from tools::checkRd() to
    tools::checkRdContents().
  * R CMD check now visits inst/NEWS.Rd and OS-specific man
    subdirectories when checking Rd files.
  * tools::checkDocFiles() and tools::checkRdContents() now also
    check internal Rd files by default, but "specially" (ignoring
    missing documentation of arguments).
  * R CMD Rdiff gets option --useEx.
  * R CMD check now warns on non-portable uses of Fortran KIND such
    as INTEGER(KIND=4) and REAL(KIND=8).
    To see the failing lines set environment variable
    _R_CHECK_FORTRAN_KIND_DETAILS_ to a true value.
  * When checking Rd files, R CMD check now notes some of the "lost
    braces" that tools::checkRd() finds.  Typical problems are Rd
    macros missing the initial backslash (e.g., code{...}), in-text
    set notation (e.g., {1, 2}, where the braces need escaping), and
    \itemize lists with \describe-style entries of the form
    \item{label}{description}.
  * R CMD INSTALL (and hence check) will compile C++ code with
  - DR_NO_REMAP if environment variable _R_CXX_USE_NO_REMAP_ is set
    to a true value.  It is planned that this will in future become
    the default for compiling C++.
  * The new built-in Rd macro \dontdiff{} can be used to mark example
    code whose output should be ignored when comparing check output
    to reference output (tests/Examples/&lt;pkg&gt;-Ex.Rout.save).  The
    \dontdiff tag, like \donttest, is _not_ shown on the rendered
    help page, so provides a clean alternative to ##
    IGNORE_RDIFF_(BEGIN|END) comments.
  * R CMD build when there is no NAMESPACE, now uses the recommended
    exportPattern("^[^.]"), instead of exporting everything.
  * R CMD check now warns about non-ASCII characters in the NAMESPACE
    file (in addition to R files). Such packages are not portable and
    may fail to install on some platforms.
  C-LEVEL FACILITIES:
  * Headers R_ext/Applic.h and R-ext/Linpack.h used to include
    R_ext/BLAS.h although this was undocumented and unneeded by their
    documented entry points.  They no longer do so.
  * New function R_missing(), factored out from do_missing(), used to
    fix PR#18579.
  * SEXP type S4SXP has been renamed to OBJSXP to support
    experimenting with alternative object systems.  The S4SXP value
    can still be used in C code but is now deprecated.  Based on
    contributions from the R Consortium's Object-Oriented Programming
    Working Group.
  * New function pow1p(x,y) for accurate (1+x)^y.
  * mkCharLenCE was incorrectly documented to take a size_t length
    but was implemented with int (and character strings in R are
    limited to 2^31 - 1 bytes).
  DEPRECATED AND DEFUNCT:
  * data() no longer handles zipped data from long-defunct (since R
    2.13.0) --use-zip-data installations.
  * The legacy graphics devices pictex() and xfig() are now
    deprecated.  They do not support recent graphics enhancements and
    their font handling is rudimentary. The intention is to retain
    them for historical interest as long as they remain somewhat
    functional.
  * Support for encoding = "MacRoman" has been removed from the pdf()
    and postscript() devices - this was a legacy encoding supporting
    classic macOS up to 2001 and no longer has universal libiconv
    support.
  * is.R() is deprecated as no other S dialect is known to be in use
    (and this could only identify historical dialects, not future
    ones).
    Further information on calls can be obtained by setting the
    environment variable _R_DEPRECATED_IS_R_ to error which turns the
    deprecation warning into an error and so by default gives a
    traceback.  (This is done by R CMD check --as-cran.)
  * UseMethod() no longer forwards local variables assigned in the
    generic function into method call environments before evaluating
    the method body. This makes method calls behave more like
    standard function calls and makes method code easier to analyze
    correctly.
  * The twelve as.data.frame.&lt;class&gt;() methods which were deprecated
    only via _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ and in R CMD
    check --as-cran are formally deprecated now in favour of calling
    as.data.frame() or as.data.frame.vector().  The deprecation
    "check" now works also when as.data.frame() is S4 generic thanks
    to Ivan Krylov.
  * The default method for the directional comparison operators &lt;, &gt;,
    &lt;=, and &gt;= now signals an error when one of the operands is a
    language object, i.e. a symbol or a call.
  * For terms.formula(), deprecate abb and neg.out arguments
    _formally_ in addition to just documenting it.
  BUG FIXES:
  * The methods package is more robust to not being attached to the
    search path.  More work needs to be done.
  * pairwise.t.test() misbehaved when subgroups had 0 DF for
    variance, even with pool.sd = TRUE.  (PR#18594 by Jack Berry).
  * Probability distribution functions [dpq]&lt;distrib&gt;(x, *), but also
    bessel[IKJY](x, .) now consistently preserve attributes(x) when
    length(x) == 0, e.g., for a 2 x 0 matrix, thanks to Karolis
    Koncevičius' report PR#18509.
  * Group "Summary" computations such as sum(1:3, 4, na.rm = 5, NA,
    7, na.rm = LL) now give an error instead of either 17 or NN for
    LL true or false, as proposed by Ivan Krylov on the R-devel
    mailing list.  (This also means it is now an error to specify
    na.rm more than once.)
  * as.complex(x) now returns complex(real = x, imaginary = 0) for
    _all_ numerical and logical x, notably also for NA or
    NA_integer_.
  * Directories are now omitted by file.copy(, recursive = FALSE) and
    in file.append() (PR#17337).
  * gsub() and sub() are now more robust to integer overflow when
    reporting errors caused by too large input strings (PR#18346).
  * Top-level handlers are now more robust to attempts to remove a
    handler whilst handlers are running (PR#18508).
  * The handling of Alt+F4 in dialogs created on Windows using
    GraphApp has been fixed (PR#13870).
  * density() more consistently computes grid values for the
    FFT-based convolution, following Robert Schlicht's analysis and
    proposal in PR#18337, correcting density values typically by a
    factor of about 0.999.  Argument old.coords = TRUE provides back
    compatibility.
  * palette.colors() gains a name argument that defaults to FALSE
    controlling whether the vector of colours that is returned has
    names (where possible).  PR#18529.
  * tools::xgettext() no longer extracts the (non-translatable) class
    names from warningCondition and errorCondition calls.
  * S3method(&lt;gen&gt;, &lt;class&gt;, &lt;func&gt;) in the NAMESPACE file now works
    (again) when &lt;func&gt; is visible from the namespace, e.g.,
    imported, or in base.
  * getParseData(f) now also works for a function defined in the
    first of several &lt;pkg&gt;/R/*.R source files, thanks to Kirill
    Müller's report and Duncan Murdoch's patch in PR#16756.
  * Rd \Sexpr macros with nested #ifdef conditionals were not
    processed.
  * A non-blocking connection with non-default encoding (such as a
    socket) now correctly returns from readLines() after new data has
    arrived also when its EOF had been reached previously.  Thanks to
    Peter Meilstrup's report on R-devel and Ivan Krylov's report and
    patch proposal in PR#18555.
  * tools::checkRdContents() failed to detect empty argument
    descriptions when they spanned multiple lines, including those
    generated by prompt().  These cases are now noted by R CMD check.
  * Plain-text help no longer outputs spurious colons in the
    arguments list (for multi-line \item labels in the Rd source).
  * kappa() and rcond() work correctly in more cases; kappa(., norm =
    "2") now warns that it computes the 1-norm with (default) exact =
    FALSE; prompted by Mikael Jagan's quite comprehensive PR#18543.
  * Rd skeletons generated by prompt() or promptData() now use a
    dummy title (so R CMD build works).  tools::checkRdContents() has
    been updated to detect such template leftovers, including from
    promptPackage().
  * When S4 method dispatch fails because no method was found, the
    error message now includes the signature argument names; thanks
    to Michael Chirico's proposal on the R-devel list.
  * withAutoprint({ .. }) now preserves srcrefs previously lost,
    thanks to Andrew Simmons' report plus fix in PR#18572.
  * transform.data.frame() no longer adjusts names; in particular,
    untransformed variables are kept as-is, including those with
    syntactically invalid names (PR#17890).
  * The keep.source option for Rd \Sexpr blocks is no longer ignored.
  * The formula methods for t.test() and wilcox.test() now catch when
    paired is passed, addressing PR#14359; use Pair(x1, x2) ~ 1 for a
    paired test.
  * The level reported in the browser prompt was often too large. It
    now shows the number of browser contexts on the stack.
  * For cbind() and rbind(), the optional deparse.level argument is
    now properly passed to methods, thanks to Mikael Jagan's PR#18579
    and comments there.
  * Some error and warning messages for large ('long vector')
    matrix(v, nr, nc) and dim(m) &lt;- d are now correct about sizes,
    using long long formatting, fixing PR#18612 (and more) reported
    by Mikael Jagan.
  * readChar(useBytes = TRUE) now terminates strings even when the
    underlying connection uses extra spaces in the input buffer.
    This fixes problems with extra garbage seen with gzip
    connections, PR#18605.
  * Named capture in PCRE regular expressions now works also with
    more than 127 named groups (PR#18588).
  * Datetime functions are now robust against long jumps when dealing
    with internal time zone changes.  This avoids confusing warnings
    about an invalid time zone, previously triggered by turning
    warnings into errors or handling them via tryCatch (PR#17966,
    PR#17780).
  * Datetime functions now restore even an empty TZ environment
    variable after internal time zone changes (PR#17724).  This makes
    results of datetime functions with this (typically unintentional)
    setting more predictable.
  * drop.terms(*) now drops response as by default, keep.response =
    FALSE, fixing PR#18564 thanks to Mikael Jagan.
  * dummy.coef(.) now also works for lm()-models with character
    categorical predictor variables rather than factor ones, fixing
    PR#18635 reported by Jinsong Zhao.
  * formals(f) &lt;- formals(f) now also works for a function w/o
    arguments and atomic _constant_ body(f).
  * Correct as.function(&lt;invalid list&gt;, .)'s error message.
  * removeSource() is yet more thorough in finding and removing
    "srcref" and the other source references from parsed R language
    chunks, fixing PR#18638 thanks to Andrew Simmons.
  * dgeom() is more accurate now, notably when its result is very
    small, fixing PR#18642 thanks to the proposal of Morten Welinder,
    also improving other instances where C level binom_raw(x, n, ..)
    has x == 0 or x== n.
  * warning() with options(warn = 1) has improved output for
    multi-line messages.
  * axis.Date() and axis.POSIXct() now respect the par("lab") setting
    for the number of pretty() intervals.
  * Comparisons for language objects (which are based on deparsing)
    are now more careful about using accurate deparsed results
    (PR#18676).
  * Plain-text help (Rd2txt) now correctly preserves blank lines
    following single-line \dontrun code.
  * &lt;POSIXlt&gt;[*] no longer sets wrong "balanced" attribute, fixing
    PR#18681 thanks to Mikael Jagan.
  * str(&lt;classed-call&gt;) now deparses the call as expected, fixing
    PR#18684, reported by Dave Slager.
  * In Rd examples, code following the closing brace of a \dontrun,
    \dontshow or \donttest tag on the same line is no longer skipped
    when R CMD check runs the examples.
  * as.data.frame(matrix(*, ncol=0)) now gets valid names() and
    colnames(); reported by Davis Vaughan on the R-devel list.
  * Internal Mathlib function stirlerr(n) is now almost fully
    (52-bit) accurate for all n &gt;= ~5.9 and more accurate also in the
    range 1 -- 5.9.  This entails small ("after 12th decimal")
    changes in density functions, e.g., dgamma() in _some_ regions of
    their support.  The fix was partly prompted by Morten Welinder's
    PR#18640.
  * Numbers like 9876543.2 are now considered non-integer by Mathlib
    internal R_nonint(), amending original fix of PR#15734.
  * Rd comment lines no longer cause broken paragraphs in the
    rendered PDF and plain-text help. In code blocks, pure comment
    lines (starting with %) no longer produce an empty line.
  * xtabs(Freq ~ .) now consistently defaults to na.action = na.pass,
    using na.rm = FALSE (added as an argument) when summing over Freq
    (PR#17770).
  * tools::testInstalledPackage() is no longer silent about failures
    from running examples or tests and its return code no longer
    ignores failures from checking vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1718366400">- CHANGES IN R 4.4.1:
  C-LEVEL FACILITIES:
  * Functions R_atof and R_strtod declared in header R_ext/Utils.h
    are now documented in 'Writing R Extensions' and so formally part
    of the API.
  * The non-API entry points Rf_setSVector, Rf_StringFalse,
    Rf_StringTrue and Rf_isBlankString have been added to those
    reported by R CMD check.
  * The new function Rf_allocLang is now available. This provides an
    alternative to the idiom of calling Rf_allocList followed by
    SET_TYPEOF.
  UTILITIES:
  * R CMD check now reports as warnings what gfortran calls 'Fortran
    2018 deleted features', all of which have long been marked as
    'obsolescent' and some of which were deleted in Fortran 2008 or
    earlier.  Fortran compilers are no longer required to support
    these.
  BUG FIXES:
  * as.numeric(), scan(), type.convert() and other places which use
    the internal C function R_strtod now require a _non-empty_ digit
    sequence in a decimal or binary exponent.  This aligns with the
    C/POSIX standard for strtod and with ?NumericConstants.
  * as.data.frame(m, make.names=NA) now works correctly for a matrix
    m with NA's in row names.
  * The error message from &lt;POSIXlt&gt;[["hour"]] and similar now
    mentions *[[, "hour"]], as wished for in PR#17409 and proposed by
    Michael Chirico.
  * qbinom() and potentially qpois(), qnbinom(), no longer sometimes
    fail accurate inversion (of pbinom(), etc), thanks to Christopher
    Chang's report and patch in PR#18711.
  * The internal help server on Windows can again serve requests sent
    in quick succession, fixing a regression in R 4.4.0.
  * debugcall(&lt;S3Generic&gt;()) now also works when a corresponding
    S4-generic version is in the methods cache (PR#18143).
  * Package tools' toTitleCase(ch0) now returns character(0) when ch0
    is of zero length; fixing PR#18724, reported by David Hugh Jones.
  * R CMD check is no longer broken (without a check result and no
    explanation in 00check.log) for a package which declares an
    invalid VignetteBuilder in DESCRIPTION but has no vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1730376000">- CHANGES IN R 4.4.2:
  C-LEVEL FACILITIES:
  * The S-compatibility macros F77_COM and F77_COMDECL defined in
    header R_ext/RS.h are deprecated and will be removed shortly.  We
    could find no record of their use.
  BUG FIXES:
  * Mathlib function lgammacor(x) no longer warns about underflow to
    zero for large x.
  * Text widths and heights were incorrectly reported by the Quartz
    device if the drawing context didn't exist yet (typically when
    drawing off-screen to a window that is yet to appear, see
    PR#18591).
  * The Quartz device could segfault in cases where paths with spaces
    are used in the new glyph drawing API.  Thanks to Tomek
    Gieorgijewski (PR#18758).
  * On macOS in R CRAN builds, it is again possible to read
    little-endian UTF-16 text with a BOM from a connection using
    encoding="UTF-16".  Users building R from source should avoid
    using the system libiconv in macOS 14.1 and later.
  * methods' internal .requirePackage() now re-enables primitive
    method dispatch when needed; thanks to Ivan Krylov for
    demystifying CRAN package check failures on the R-devel mailing
    list.</changelog>
</package>
<package pkgid="ce3401dae0d43633a1baf2b762bf6c12cd109c840cc4965bda44369c00cfb477f216cb4e89f7ed10df319d9a74a591a2f9ae40de572f188a0fbef330d43b7f44" name="R-lattice-debuginfo" arch="i586">
  <version epoch="0" ver="0.22.6" rel="51.0.2.2.sr20241103"/>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1620302400">- To get in sync with d:l:R:autoCRAN the Matrix package's split
  in -devel was reversed.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339200">- improved spec file according to comments of dimstar in
  https://build.opensuse.org/request/show/892685</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339201">- CHANGES IN R 4.1.0:
  FUTURE DIRECTIONS:
  * It is planned that the 4.1.x series will be the last to support
    32-bit Windows, with production of binary packages for that
    series continuing until early 2023.
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Data set esoph in package datasets now provides the correct
    numbers of controls; previously it had the numbers of cases added
    to these.  (Reported by Alexander Fowler in PR#17964.)
  NEW FEATURES:
  * www.omegahat.net is no longer one of the repositories known by
    default to setRepositories().  (Nowadays it only provides source
    packages and is often unavailable.)
  * Function package_dependencies() (in package tools) can now use
    different dependency types for direct and recursive dependencies.
  * The checking of the size of tarball in R CMD check --as-cran
    &lt;pkg&gt; may be tweaked via the new environment variable
    _R_CHECK_CRAN_INCOMING_TARBALL_THRESHOLD_, as suggested in
    PR#17777 by Jan Gorecki.
  * Using c() to combine a factor with other factors now gives a
    factor, an ordered factor when combining ordered factors with
    identical levels.
  * apply() gains a simplify argument to allow disabling of
    simplification of results.
  * The format() method for class "ftable" gets a new option justify.
    (Suggested by Thomas Soeiro.)
  * New ...names() utility.  (Proposed by Neal Fultz in PR#17705.)
  * type.convert() now warns when its as.is argument is not
    specified, as the help file always said it _should_.  In that
    case, the default is changed to TRUE in line with its change in
    read.table() (related to stringsAsFactor) in R 4.0.0.
  * When printing list arrays, classed objects are now shown _via_
    their format() value if this is a short enough character string,
    or by giving the first elements of their class vector and their
    length.
  * capabilities() gets new entry "Rprof" which is TRUE when R has
    been configured with the equivalent of --enable-R-profiling (as
    it is by default).  (Related to Michael Orlitzky's report
    PR#17836.)
  * str(xS4) now also shows extraneous attributes of an S4 object
    xS4.
  * Rudimentary support for vi-style tags in rtags() and R CMD rtags
    has been added.  (Based on a patch from Neal Fultz in PR#17214.)
  * checkRdContents() is now exported from tools; it and also
    checkDocFiles() have a new option chkInternal allowing to check
    Rd files marked with keyword "internal" as well.  The latter can
    be activated for R CMD check via environment variable
    _R_CHECK_RD_INTERNAL_TOO_.
  * New functions numToBits() and numToInts() extend the raw
    conversion utilities to (double precision) numeric.
  * Functions URLencode() and URLdecode() in package utils now work
    on vectors of URIs.  (Based on patch from Bob Rudis submitted
    with PR#17873.)
  * path.expand() can expand ~user on most Unix-alikes even when
    readline is not in use.  It tries harder to expand ~, for example
    should environment variable HOME be unset.
  * For HTML help (both dynamic and static), Rd file links to help
    pages in external packages are now treated as references to
    topics rather than file names, and fall back to a file link only
    if the topic is not found in the target package. The earlier rule
    which prioritized file names over topics can be restored by
    setting the environment variable _R_HELP_LINKS_TO_TOPICS_ to a
    false value.
  * c() now removes NULL arguments before dispatching to methods,
    thus simplifying the implementation of c() methods, _but_ for
    back compatibility keeps NULL when it is the first argument.
    (From a report and patch proposal by Lionel Henry in PR#17900.)
  * Vectorize()'s result function's environment no longer keeps
    unneeded objects.
  * Function ...elt() now propagates visibility consistently with
    ..n.  (Thanks to Lionel Henry's PR#17905.)
  * capture.output() no longer uses non-standard evaluation to
    evaluate its arguments.  This makes evaluation of functions like
    parent.frame() more consistent.  (Thanks to Lionel Henry's
    PR#17907.)
  * packBits(bits, type="double") now works as inverse of
    numToBits().  (Thanks to Bill Dunlap's proposal in PR#17914.)
  * curlGetHeaders() has two new arguments, timeout to specify the
    timeout for that call (overriding getOption("timeout")) and TLS
    to specify the minimum TLS protocol version to be used for
    https:// URIs (_inter alia_ providing a means to check for sites
    using deprecated TLS versions 1.0 and 1.1).
  * For nls(), an optional constant scaleOffset may be added to the
    denominator of the relative offset convergence test for cases
    where the fit of a model is expected to be exact, thanks to a
    proposal by John Nash.  nls(*, trace=TRUE) now also shows the
    convergence criterion.
  * Numeric differentiation _via_ numericDeriv() gets new optional
    arguments eps and central, the latter for taking central divided
    differences.  The latter can be activated for nls() via
    nls.control(nDcentral = TRUE).
  * nls() now passes the trace and control arguments to getInitial(),
    notably for all self-starting models, so these can also be fit in
    zero-noise situations via a scaleOffset.  For this reason, the
    initial function of a selfStart model must now have ... in its
    argument list.
  * bquote(splice = TRUE) can now splice expression vectors with
    attributes: this makes it possible to splice the result of
    parse(keep.source = TRUE).  (Report and patch provided by Lionel
    Henry in PR#17869.)
  * textConnection() gets an optional name argument.
  * get(), exists(), and get0() now signal an error if the first
    argument has length greater than 1.  Previously additional
    elements were silently ignored.  (Suggested by Antoine Fabri on
    R-devel.)
  * R now provides a shorthand notation for creating functions, e.g.
    \(x) x + 1 is parsed as function(x) x + 1.
  * R now provides a simple native forward pipe syntax |&gt;.  The
    simple form of the forward pipe inserts the left-hand side as the
    first argument in the right-hand side call.  The pipe
    implementation as a syntax transformation was motivated by
    suggestions from Jim Hester and Lionel Henry.
  * all.equal(f, g) for functions now by default also compares their
    environment(.)s, notably via new all.equal method for class
    function.  Comparison of nls() fits, e.g., may now need
    all.equal(m1, m2, check.environment = FALSE).
  * .libPaths() gets a new option include.site, allowing to _not_
    include the site library.  (Thanks to Dario Strbenac's suggestion
    and Gabe Becker's PR#18016.)
  * Lithuanian translations are now available.  (Thanks to Rimantas
    Zakauskas.)
  * names() now works for DOTSXP objects.  On the other hand, in
    R-lang, the R language manual, we now warn against relying on the
    structure or even existence of such dot-dot-dot objects.
  * all.equal() no longer gives an error on DOTSXP objects.
  * capabilities("cairo") now applies only to the file-based devices
    as it is now possible (if very unusual) to build R with Cairo
    support for those but not for X11().
  * There is optional support for tracing the progress of
    loadNamespace() - see its help.
  * (Not Windows.)  l10n_info() reports an additional element, the
    name of the encoding as reported by the OS (which may differ from
    the encoding part (if any) of the result from
    Sys.getlocale("LC_CTYPE").
  * New function gregexec() which generalizes regexec() to find _all_
    disjoint matches and well as all substrings corresponding to
    parenthesized subexpressions of the given regular expression.
    (Contributed by Brodie Gaslam.)
  * New function charClass() in package utils to query the
    wide-character classification functions in use (such as
    iswprint).
  * The names of quantile()'s result no longer depend on the global
    getOption("digits"), but quantile() gets a new optional argument
    digits = 7 instead.
  * grep(), sub(), regexp and variants work considerably faster for
    long factors with few levels.  (Thanks to Michael Chirico's
    PR#18063.)
  * Provide grouping of x11() graphics windows within a window
    manager such as Gnome or Unity; thanks to a patch by Ivan Krylov
    posted to R-devel.
  * The split() method for class data.frame now allows the f argument
    to be specified as a formula.
  * sprintf now warns on arguments unused by the format string.
  * New palettes "Rocket" and "Mako" for hcl.colors() (approximating
    palettes of the same name from the 'viridisLite' package).
    Contributed by Achim Zeileis.
  * The base environment and its namespace are now locked (so one can
    no longer add bindings to these or remove from these).
  * Rterm handling of multi-byte characters has been improved,
    allowing use of such characters when supported by the current
    locale.
  * Rterm now accepts ALT+ +xxxxxxxx sequences to enter Unicode
    characters as hex digits.
  * Environment variable LC_ALL on Windows now takes precedence over
    LC_CTYPE and variables for other supported categories, matching
    the POSIX behaviour.
  * duplicated() and anyDuplicated() are now optimized for integer
    and real vectors that are known to be sorted via the ALTREP
    framework. Contributed by Gabriel Becker via PR#17993.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 14
    and so packages that provide graphics devices should be
    reinstalled.
  * Graphics devices should now specify deviceVersion to indicate
    what version of the graphics engine they support.
  * Graphics devices can now specify deviceClip.  If TRUE, the
    graphics engine will never perform any clipping of output itself.
    The clipping that the graphics engine does perform (for both
    canClip = TRUE and canClip = FALSE) has been improved to avoid
    producing unnecessary artifacts in clipped output.
  * The grid package now allows gpar(fill) to be a linearGradient(),
    a radialGradient(), or a pattern().  The viewport(clip) can now
    also be a grob, which defines a clipping path, and there is a new
    viewport(mask) that can also be a grob, which defines a mask.
    These new features are only supported so far on the Cairo-based
    graphics devices and on the pdf() device.
  * (Not Windows.)  A warning is given when a Cairo-based type is
    specified for a png(), jpeg(), tiff() or bmp() device but Cairo
    is unsupported (so type = "Xlib" is tried instead).
  * grSoftVersion() now reports the versions of FreeType and
    FontConfig if they are used directly (not _via_ Pango), as is
    most commonly done on macOS.
  C-LEVEL FACILITIES:
  * The _standalone_ libRmath math library and R's C API now provide
    log1pexp() again as documented, and gain log1mexp().
  INSTALLATION on a UNIX-ALIKE:
  * configure checks for a program pkgconf if program pkg-config is
    not found.  These are now only looked for on the path (like
    almost all other programs) so if needed specify a full path to
    the command in PKG_CONFIG, for example in file config.site.
  * C99 function iswblank is required - it was last seen missing ca
    2003 so the workaround has been removed.
  * There are new configure options --with-internal-iswxxxxx,
  - -with-internal-towlower and --with-internal-wcwidth which allows
    the system functions for wide-character classification,
    case-switching and width (wcwidth and wcswidth) to be replaced by
    internal ones.  The first has long been used on macOS, AIX (and
    Windows) but this enables it to be unselected there and selected
    for other platforms (it is the new default on Solaris).  The
    second is new in this version of R and is selected by default on
    macOS and Solaris.  The third has long been the default and
    remains so as it contains customizations for East Asian
    languages.
    System versions of these functions are often minimally
    implemented (sometimes only for ASCII characters) and may not
    cover the full range of Unicode points: for example Solaris (and
    Windows) only cover the Basic Multilingual Plane.
  * Cairo installations without X11 are more likely to be detected by
    configure, when the file-based Cairo graphics devices will be
    available but not X11(type = "cairo").
  * There is a new configure option --with-static-cairo which is the
    default on macOS.  This should be used when only static cairo
    (and where relevant, Pango) libraries are available.
  * Cairo-based graphics devices on platforms without Pango but with
    FreeType/FontConfig will make use of the latter for font
    selection.
  LINK-TIME OPTIMIZATION on a UNIX-ALIKE:
  * Configuring with flag --enable-lto=R now also uses LTO when
    installing the recommended packages.
  * R CMD INSTALL and R CMD SHLIB have a new flag --use-LTO to use
    LTO when compiling code, for use with R configured with
  - -enable-lto=R.  For R configured with --enable-lto, they have
    the new flag --no-use-LTO.
    Packages can opt in or out of LTO compilation _via_ a UseLTO
    field in the DESCRIPTION file.  (As usual this can be overridden
    by the command-line flags.)
  BUILDING R on Windows:
  * for GCC &gt;= 8, FC_LEN_T is defined in config.h and hence character
    lengths are passed from C to Fortran in _inter alia_ BLAS and
    LAPACK calls.
  * There is a new text file src/gnuwin32/README.compilation, which
    outlines how C/Fortran code compilation is organized and
    documents new features:
  * R can be built with Link-Time Optimization with a suitable
    compiler - doing so with GCC 9.2 showed several
    inconsistencies which have been corrected.
  * There is support for cross-compiling the C and Fortran code
    in R and standard packages on suitable (Linux) platforms.
    This is mainly intended to allow developers to test later
    versions of compilers - for example using GCC 9.2 or 10.x has
    detected issues that GCC 8.3 in Rtools40 does not.
  * There is experimental support for cross-building R packages
    with C, C++ and/or Fortran code.
  * The R installer can now be optionally built to support a single
    architecture (only 64-bit or only 32-bit).
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++14 where
    available (which it is on all currently checked platforms): if
    not (as before) C++11 is used if available otherwise C++ is not
    supported.
    Packages which specify C++11 will still be installed using C++11.
    C++14 compilers may give deprecation warnings, most often for
    std::random_shuffle (deprecated in C++14 and removed in C++17).
    Either specify C++11 (see 'Writing R Extensions') or modernize
    the code and if needed specify C++14.  The latter has been
    supported since R 3.4.0 so the package's DESCRIPTION would need
    to include something like
    Depends: R (&gt;= 3.4)
  PACKAGE INSTALLATION on Windows:
  * R CMD INSTALL and R CMD SHLIB make use of their flag --use-LTO
    when the LTO_OPT make macro is set in file etc/${R_ARCH}/Makeconf
    or in a personal/site Makevars file.  (For details see 'Writing R
    Extensions' SS4.5.)
    This provides a valuable check on code consistency.  It does work
    with GCC 8.3 as in Rtools40, but that does not detect everything
    the CRAN checks with current GCC do.
  PACKAGE INSTALLATION on macOS:
  * The default personal library directory on builds with
  - -enable-aqua (including CRAN builds) now differs by CPU type,
    one of
    ~/Library/R/x86_64/x.y/library
    ~/Library/R/arm64/x.y/library
    This uses the CPU type R (and hence the packages) were built for,
    so when a x86_64 build of R is run under Rosetta emulation on an
    arm64 Mac, the first is used.
  UTILITIES:
  * R CMD check can now scan package functions for bogus return
    statements, which were possibly intended as return() calls (wish
    of PR#17180, patch by Sebastian Meyer). This check can be
    activated via the new environment variable
    _R_CHECK_BOGUS_RETURN_, true for --as-cran.
  * R CMD build omits tarballs and binaries of previous builds from
    the top-level package directory.  (PR#17828, patch by Sebastian
    Meyer.)
  * R CMD check now runs sanity checks on the use of LazyData, for
    example that a data directory is present and that
    LazyDataCompression is not specified without LazyData and has a
    documented value.  For packages with large LazyData databases
    without specifying LazyDataCompression, there is a reference to
    the code given in 'Writing R Extensions' SS1.1.6 to test the
    choice of compression (as in all the CRAN packages tested a
    non-default method was preferred).
  * R CMD build removes LazyData and LazyDataCompression fields from
    the DESCRIPTION file of packages without a data directory.
  ENCODING-RELATED CHANGES:
  * The parser now treats \Unnnnnnnn escapes larger than the upper
    limit for Unicode points (\U10FFFF) as an error as they cannot be
    represented by valid UTF-8.
    Where such escapes are used for outputting non-printable
    (including unassigned) characters, 6 hex digits are used (rather
    than 8 with leading zeros).  For clarity, braces are used, for
    example \U{0effff}.
  * The parser now looks for non-ASCII spaces on Solaris (as
    previously on most other OSes).
  * There are warnings (including from the parser) on the use of
    unpaired surrogate Unicode points such as \uD834.  (These cannot
    be converted to valid UTF-8.)
  * Functions nchar(), tolower(), toupper() and chartr() and those
    using regular expressions have more support for inputs with a
    marked Latin-1 encoding.
  * The character-classification functions used (by default) to
    replace the system iswxxxxx functions on Windows, macOS and AIX
    have been updated to Unicode 13.0.0.
    The character-width tables have been updated to include new
    assignments in Unicode 13.0.0.
  * The code for evaluating default (extended) regular expressions
    now uses the same character-classification functions as the rest
    of R (previously they differed on Windows, macOS and AIX).
  * There is a build-time option to replace the system's
    wide-character wctrans C function by tables shipped with R: use
    configure option --with-internal-towlower or (on Windows)
  - DUSE_RI18N_CASE in CFLAGS when building R.  This may be needed
    to allow tolower() and toupper() to work with Unicode characters
    beyond the Basic Multilingual Plane where not supported by system
    functions (e.g. on Solaris where it is the new default).
  * R is more careful when truncating UTF-8 and other multi-byte
    strings that are too long to be printed, passed to the system or
    libraries or placed into an internal buffer.  Truncation will no
    longer produce incomplete multibyte characters.
  DEPRECATED AND DEFUNCT:
  * Function plclust() from the package stats and
    package.dependencies(), pkgDepends(), getDepList(),
    installFoundDepends(), and vignetteDepends() from package tools
    are defunct.
  * Defunct functions checkNEWS() and readNEWS() from package tools
    and CRAN.packages() from utils have been removed.
  * R CMD config CXXCPP is defunct (it was deprecated in R 3.6.2).
  * parallel::detectCores() drops support for Irix (retired in 2013).
  * The LINPACK argument to chol.default(), chol2inv(),
    solve.default() and svd() has been defunct since R 3.1.0.  It was
    silently ignored up to R 4.0.3 but now gives an error.
  * Subsetting/indexing, such as ddd[*] or ddd$x on a DOTSXP
    (dot-dot-dot) object ddd has been disabled; it worked by accident
    only and was undocumented.
  BUG FIXES:
  * Many more C-level allocations (mainly by malloc and strdup) are
    checked for success with suitable alternative actions.
  * Bug fix for replayPlot(); this was turning off graphics engine
    display list recording if a recorded plot was replayed in the
    same session.  The impact of the bug became visible if resize the
    device after replay OR if attempted another savePlot() after
    replay (empty display list means empty screen on resize or empty
    saved plot).
  * R CMD check etc now warn when a package exports non-existing S4
    classes or methods, also in case of no "methods" presence.
    (Reported by Alex Bertram; reproducible example and patch by
    Sebastian Meyer in PR#16662.)
  * boxplot() now also accepts calls for labels such as ylab, the
    same as plot().  (Reported by Marius Hofert.)
  * The help page for xtabs() now correctly states that addNA is
    setting na.action = na.pass among others.  (Reported as PR#17770
    by Thomas Soeiro.)
  * The R CMD check &lt;pkg&gt; gives a longer and more comprehensible
    message when DESCRIPTION misses dependencies, e.g., in Imports:.
    (Thanks to the contributors of PR#17179.)
  * update.default() now calls the generic update() on the formula to
    work correctly for models with extended formulas.  (As reported
    and suggested by Neal Fultz in PR#17865.)
  * The horizontal position of leaves in a dendrogram is now correct
    also with center = FALSE.  (PR#14938, patch from Sebastian
    Meyer.)
  * all.equal.POSIXt() no longer warns about and subsequently ignores
    inconsistent "tzone" attributes, but describes the difference in
    its return value (PR#17277).  This check can be disabled _via_
    the new argument check.tzone = FALSE as suggested by Sebastian
    Meyer.
  * as.POSIXct() now populates the "tzone" attribute from its tz
    argument when x is a logical vector consisting entirely of NA
    values.
  * x[[2^31]] &lt;- v now works.  (Thanks to the report and patch by
    Suharto Anggono in PR#17330.)
  * In log-scale graphics, axis() ticks and label positions are now
    computed more carefully and symmetrically in their range,
    typically providing _more_ ticks, fulfilling wishes in PR#17936.
    The change really corresponds to an improved axisTicks() (package
    grDevices), potentially influencing grid and lattice, for
    example.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now correct to at
    least five digits where it was catastrophically wrong,
    previously.
  * sum(df) and similar "Summary"- and "Math"-group member functions
    now work for data frames df with logical columns, notably also of
    zero rows.  (Reported to R-devel by Martin "b706".)
  * unsplit() had trouble with tibbles due to unsound use of rep(NA,
    len)-indexing, which should use NA_integer_ (Reported to R-devel
    by Mario Annau.)
  * pnorm(x, log.p = TRUE) underflows to -Inf slightly later.
  * show(&lt;hidden S4 generic&gt;) prints better and without quotes for
    non-hidden S4 generics.
  * read.table() and relatives treated an "NA" column name as missing
    when check.names = FALSE PR#18007.
  * Parsing strings containing UTF-16 surrogate pairs such as
    "\uD834\uDD1E" works better on some (uncommon) platforms.
    sprintf("%X", utf8ToInt("\uD834\uDD1E")) should now give "1D11E"
    on all platforms.
  * identical(x,y) is no longer true for differing DOTSXP objects,
    fixing PR#18032.
  * str() now works correctly for DOTSXP and related exotics, even
    when these are doomed.
    Additionally, it no longer fails for lists with a class and
    "irregular" method definitions such that e.g. lapply(*) will
    necessarily fail, as currently for different igraph objects.
  * Too long lines in environment files (e.g. Renviron) no longer
    crash R. This limit has been increased to 100,000 bytes.
    (PR#18001.)
  * There is a further workaround for FreeType giving incorrect
    italic font faces with cairo-based graphics devices on macOS.
  * add_datalist(*, force = TRUE) (from package tools) now actually
    updates an existing data/datalist file for new content.  (Thanks
    to a report and patch by Sebastian Meyer in PR#18048.)
  * cut.Date() and cut.POSIXt() could produce an empty last interval
    for breaks = "months" or breaks = "years".  (Reported as PR#18053
    by Christopher Carbone.)
  * Detection of the encoding of 'regular' macOS locales such as
    en_US (which is UTF-8) had been broken by a macOS change:
    fortunately these are now rarely used with en_US.UTF-8 being
    preferred.
  * sub() and gsub(pattern, repl, x, *) now keep attributes of x such
    as names() also when pattern is NA (PR#18079).
  * Time differences ("difftime" objects) get a replacement and a
    rep() method to keep "units" consistent.  (Thanks to a report and
    patch by Nicolas Bennett in PR#18066.)
  * The \RdOpts macro, setting defaults for \Sexpr options in an Rd
    file, had been ineffective since R 2.12.0: it now works again.
    (Thanks to a report and patch by Sebastian Meyer in PR#18073.)
  * mclapply and pvec no longer accidentally terminate parallel
    processes started before by mcparallel or related calls in
    package parallel (PR#18078).
  * grep and other functions for evaluating (extended) regular
    expressions handle in Unicode also strings not explicitly flagged
    UTF-8, but flagged native when running in UTF-8 locale.
  * Fixed a crash in fifo implementation on Windows (PR#18031).
  * Binary mode in fifo on Windows is now properly detected from
    argument open (PR#15600, PR#18031).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1622808000">- The line %{__install} -m 755 -d %{_infodir}
  no longer works in TW or Factory.
  But without that line it works everywhere. So this instruction
  was commented out of the spec file.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1628596800">- CHANGES IN R 4.1.1:
  NEW FEATURES:
  * require(pkg, quietly = TRUE) is quieter and in particular does
    not warn if the package is not found.
  DEPRECATED AND DEFUNCT:
  * Use of ftp:// URIs should be regarded as deprecated, with
    on-going support confined to method = "libcurl" and not routinely
    tested.  (Nowadays no major browser supports them.)
  * The non-default method = "internal" is deprecated for http:// and
    ftp:// URIs for both download.file and url.
  * On Windows, method = "wininet" is deprecated for http://,
    https:// and ftp:// URIs for both download.file and url.  (A
    warning is only given for ftp://.)
    For ftp:// URIs the default method is now "libcurl" if available
    (which it is on CRAN builds).
    method = "wininet" remains the default for http:// and https://
    URIs but if libcurl is available, using method = "libcurl" is
    preferred.
  INSTALLATION:
  * make check now works also without a LaTeX installation.  (Thanks
    to Sebastian Meyer's PR#18103.)
  BUG FIXES:
  * make check-devel works again in an R build configured with
  - -without-recommended-packages.
  * qnbinom(p, size, mu) for large size/mu is correct now in a range
    of cases (PR#18095); similarly for the (size, prob)
    parametrization of the negative binomial.  Also qpois() and
    qbinom() are better and or faster for extreme cases.  The
    underlying C code has been modularized and is common to all four
    cases of discrete distributions.
  * gap.axis is now part of the axis() arguments which are passed
    from bxp(), and hence boxplot().  (Thanks to Martin Smith's
    report and suggestions in PR#18109.)
  * .First and .Last can again be set from the site profile.
  * seq.int(from, to, *) and seq.default(..) now work better in large
    range cases where from-to is infinite where the two boundaries
    are finite.
  * all.equal(x,y) now returns TRUE correctly also when several
    entries of abs(x) and abs(y) are close to .Machine$double.xmax,
    the largest finite numeric.
  * model.frame() now clears the object bit when removing the class
    attribute of a value via na.action (PR#18100).
  * charClass() now works with multi-character strings on Windows
    (PR#18104, fixed by Bill Dunlap).
  * encodeString() on Solaris now works again in Latin-1 encoding on
    characters represented differently in UTF-8.  Support for
    surrogate pairs on Solaris has been improved.
  * file.show() on Windows now works with non-ASCII path names
    representable in the current native encoding (PR#18132).
  * Embedded R on Windows can now find R home directory via the
    registry even when installed only for the current user
    (PR#18135).
  * pretty(x) with finite x now returns finite values also in the
    case where the extreme x values are close in size to the maximal
    representable number .Machine$double.xmax.
    Also, it's been tweaked for very small ranges and when a boundary
    is close (or equal) to zero; e.g., pretty(c(0,1e-317)) no longer
    has negative numbers, currently still warning about a very small
    range, and pretty(2^-(1024 - 2^-1/(c(24,10)))) is more accurate.
  * The error message for not finding vignette files when weaving has
    correct file sizes now. (Thanks to Sebastian Meyer's PR#18154.)
  * dnbinom(20, &lt;large&gt;, 1) now correctly gives 0, and similar cases
    are more accurate with underflow precaution.  (Reported by Francisco Vera Alcivar in PR#18072.)</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635163200">- repaired https://bugzilla.suse.com/show_bug.cgi?id=1191380
  (rpmacros now go to rpmmacrodir)
- minor clean-ups in spec file</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635768000">- CHANGES IN R 4.1.2:
  C-LEVEL FACILITIES:
  * The workaround in headers R.h and Rmath.h (using namespace std;)
    for the Oracle Developer Studio compiler is no longer needed now
    C++11 is required so has been removed.  A couple more usages of
    log() (which should have been std::log()) with an int argument
    are reported on Solaris.
  * The undocumented limit of 4095 bytes on messages from the
    S-compatibility macros PROBLEM and MESSAGE is now documented and
    longer messages will be silently truncated rather than
    potentially causing segfaults.
  * If the R_NO_SEGV_HANDLER environment variable is non-empty, the
    signal handler for SEGV/ILL/BUS signals (which offers recovery
    user interface) is not set. This allows more reliable debugging
    of crashes that involve the console.
  DEPRECATED AND DEFUNCT:
  * The legacy S-compatibility macros PROBLEM, MESSAGE, ERROR, WARN,
    WARNING, RECOVER, ... are deprecated and will be hidden in R
    4.2.0. R's native interface of Rf_error and Rf_warning has long
    been preferred.
  BUG FIXES:
  * .mapply(F, dots, .) no longer segfaults when dots is not a list
    and uses match.fun(F) as always documented; reported by Andrew
    Simmons in PR#18164.
  * hist(&lt;Date&gt;, ...) and hist(&lt;POSIXt&gt;, ...)  no longer pass
    arguments for rect() (such as col and density) to axis().
    (Thanks to Sebastian Meyer's PR#18171.)
  * \Sexpr{ch} now preserves Encoding(ch). (Thanks to report and
    patch by Jeroen Ooms in PR#18152.)
  * Setting the RNG to "Marsaglia-Multicarry" e.g., by RNGkind(), now
    warns in more places, thanks to Andr'e Gillibert's report and
    patch in PR#18168.
  * gray(numeric(), alpha=1/2) no longer segfaults, fixing PR#18183,
    reported by Till Krenz.
  * Fixed dnbinom(x, size=&lt;very_small&gt;, .., log=TRUE) regression,
    reported by Martin Morgan.
  * as.Date.POSIXlt(x) now keeps names(x), thanks to Davis Vaughan's
    report and patch in PR#18188.
  * model.response() now strips an "AsIs" class typically, thanks to
    Duncan Murdoch's report and other discussants in PR#18190.
  * try() is considerably faster in case of an error and long call,
    as e.g., from some do.call().  Thanks to Alexander Kaever's
    suggestion posted to R-devel.
  * qqline(y = &lt;object&gt;) such as y=I(.), now works, see also
    PR#18190.
  * Non-integer mgp par() settings are now handled correctly in
    axis() and mtext(), thanks to Mikael Jagan and Duncan Murdoch's
    report and suggestion in PR#18194.
  * formatC(x) returns length zero character() now, rather than ""
    when x is of length zero, as documented, thanks to Davis
    Vaughan's post to R-devel.
  * removeSource(fn) now retains (other) attributes(fn).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1647000000">- CHANGES IN R 4.1.3:
  NEW FEATURES:
  * The default version of Bioconductor has been changed to 3.14.
    (This is used by setRepositories and the menus in GUIs.)
  UTILITIES:
  * R CMD check --as-cran has a workaround for a bug in versions of
    file up to at least 5.41 which mis-identify DBF files last
    changed in 2022 as executables.
  C-LEVEL FACILITIES:
  * The legacy S-compatibility macros SINGLE_* in R_ext/Constants.h
    (included by R.h) are deprecated and will be removed in R 4.2.0.
  BUG FIXES:
  * Initialization of self-starting nls() models with initialization
    functions following the pre-R-4.1.0 API (without the ...
    argument) works again for now, with a deprecation warning.
  * Fixed quoting of ~autodetect~ in Java setting defaults to avoid
    inadvertent user lookup due to leading ~, reported in PR#18231 by
    Harold Gutch.
  * substr(., start, stop) &lt;- v now treats _negative_ stop values
    correctly.  Reported with a patch in PR#18228 by Brodie Gaslam.
  * Subscripting an array x without dimnames by a
    length(dim(x))-column character matrix gave "random" non-sense,
    now an error; reported in PR#18244 by Mikael Jagan.
  * ...names() now matches names(list(...)) closely, fixing PR#18247.
  * all.equal(*, scale = s) now works as intended when length(s) &gt; 1,
    partly thanks to Michael Chirico's PR#18272.
  * print(x) for long vectors x now also works for named atomic
    vectors or lists and prints the correct number when reaching the
    getOption("max.print") limit; partly thanks to a report and
    proposal by Hugh Parsonage to the R-devel list.
  * all.equal(&lt;selfStart&gt;, *) no longer signals a deprecation
    warning.
  * reformulate(*, response=r) gives a helpful error message now when
    length(r) &gt; 1, thanks to Bill Dunlap's PR#18281.
  * Modifying globalCallingHandlers inside withCallingHandlers() now
    works or fails correctly, thanks to Henrik Bengtsson's PR#18257.
  * hist(&lt;Date&gt;, breaks = "days") and hist(&lt;POSIXt&gt;, breaks = "secs")
    no longer fail for inputs of length 1.
  * qbeta(.001, .9, .009) and similar cases now converge correctly
    thanks to Ben Bolker's report in PR#17746.
  * window(x, start, end) no longer wrongly signals "'start' cannot
    be after 'end'", fixing PR#17527 and PR#18291.
  * data() now checks that its (rarely used) list argument is a
    character vector - a couple of packages passed other types and
    gave incorrect results.
  * which() now checks its arr.ind argument is TRUE rather coercing
    to logical and taking the first element - which gave incorrect
    results in package code.
  * model.weights() and model.offset() more carefully extract their
    model components, thanks to Ben Bolker and Tim Taylor's R-devel
    post.
  * list.files(recursive = TRUE) now shows all broken symlinks
    (previously, some of them may have been omitted, PR#18296).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1650628800">- CHANGES IN R 4.2.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * The formula method of aggregate() now matches the generic in
    naming its first argument x (resolving PR#18299 by Thomas
    Soeiro).
    This means that calling aggregate() with a formula as a named
    first argument requires name formula in earlier versions of R and
    name x now, so portable code should not name the argument (code
    in many packages did).
  * Calling &amp;&amp; or || with either argument of length greater than one
    now gives a warning (which it is intended will become an error).
  * Calling if() or while() with a condition of length greater than
    one gives an error rather than a warning.  Consequently,
    environment variable _R_CHECK_LENGTH_1_CONDITION_ no longer has
    any effect.
  * Windows users should consult the WINDOWS section below for some
    profound changes including
  * Support for 32-bit builds has been dropped.
  * UTF-8 locales are used where available.
  * The default locations for the R installation and personal
    library folder have been changed.
    Thanks to Tomas Kalibera for months of work on the Windows port
    for this release.
  NEW FEATURES:
  * matrix(x, n, m) now warns in more cases where length(x) differs
    from n * m, as suggested by Abby Spurdle and Wolfgang Huber in
    Feb 2021 on the R-devel mailing list.
    This warning can be turned into an error by setting environment
    variable _R_CHECK_MATRIX_DATA_ to TRUE: R CMD check --as-cran
    does so unless it is already set.
  * Function file_test() in package utils gains tests for symlinks,
    readability and writability.
  * capabilities("libxml") is now false.
    The description of capabilities("http/ftp") now reflects that it
    refers to the default method, no longer the internal one.
  * simplify2array() gains an except argument for controlling the
    exceptions used by sapply().
  * Environment variables R_LIBS_USER and R_LIBS_SITE are both now
    set to the R system default if unset or empty, and can be set to
    NULL to indicate an empty list of user or site library
    directories.
  * The warning for axis()(-like) calls in cases of relatively small
    ranges (typically in log-scale situations) is slightly improved
    _and_ suppressed from explicit calls to .axisPars() as has always
    been the intention.
  * The contrasts setter function `contrasts&lt;-` gains an explicit
    default how.many = NULL rather than just using missing(how.many).
  * grid.pretty() gains a new optional argument n = 5.
  * There is a new function .pretty() with option bounds as a
    technical-utility version of pretty().  It and pretty() gain a
    new argument f.min with a better than back-compatible default.
  * Function grDevices::axisTicks() and related functions such as
    graphics::axis() work better, notably for the log scale; partly
    because of the pretty() improvements, but also because care is
    taken e.g., when ylim is finite but diff(ylim) is infinite.
  * nclass.FD() gains a digits option.
  * The R Mathlib internal C function bd0() (called indirectly from a
    dozen probability density and distribution functions such as
    dpois(), dbinom(), dgamma(), pgamma() _etc_) has been
    complemented by a more sophisticated and (mostly) more accurate C
    function ebd0(), currently called only by internal dpois_raw()
    improving accuracy for R level dpois() and potentially others
    calling it such as dnbinom(), dgamma() or pgamma().  (Thanks to
    Morten Welinder's PR#15628.)
  * write.ftable() gains sep = " " argument as suggested by Thomas
    Soeiro.
  * The names of the locale categories supported by R's
    Sys.getlocale() and Sys.setlocale() are now provided by variable
    .LC.categories in the base namespace.
  * The Date and POSIXt methods for hist() and the histogram method
    for plot() now also use the new default col = "lightgray" in
    consistency with the corresponding change to hist()'s default for
    R 4.0.0.
  * hist.default() gains new fuzz argument, and the histogram plot
    method no longer uses fractional axis ticks when displaying
    counts ("Frequency").
  * mapply() and hence Map() now also obey the "max-or-0-if-any"
    recycling rule, such that, e.g., Map(`+`, 1:3, 1[0]) is valid
    now.
  * as.character(&lt;obj&gt;) for "hexmode" or "octmode" objects now
    fulfils the important basic rule as.character(x)[j] ===
    as.character(x[j]).
  * The set utility functions, notably intersect() have been tweaked
    to be more consistent and symmetric in their two set arguments,
    also preserving a common mode.
  * substr(ch, start,end) &lt;- new now e.g., preserves names(ch); ditto
    for substring(), thanks to a patch from Brodie Gaslam.
  * plot(&lt;lm&gt;) gains a extend.ylim.f argument, in partial response to
    PR#15285; further PR#17784 is fixed thanks to several
    contributors and a patch by Elin Waring.  The Cook's dist
    contours get customizable via cook.col and cook.lty with a
    different default color and their legend is nicer by default and
    customizable via cook.legendChanges.
  * Attempting to subset an object that is not subsettable now
    signals an error of class notSubsettableError. The
    non-subsettable object is contained in the object field of the
    error condition.
  * Subscript-out-of-bounds errors are now signaled as errors of
    class subscriptOutOfBoundsError.
  * Stack-overflow errors are now signaled as errors inheriting from
    class stackOverflowError. See ?stackOverflowError for more
    details.
  * New partly experimental Sys.setLanguage() utility, solving the
    main problem of PR#18055.
  * gettext() and gettextf() get a new option trim = TRUE which when
    set to false allows translations for strings such as "Execution
    halted\n" typical for C code.
  * An experimental implementation of hash tables is now available.
    See ?hashtab for more details.
  * identical() gains a extptr.as.ref argument for requesting that
    external pointer objects be compared as reference objects.
  * reorder() gets an argument decreasing which it passes to sort()
    for level creation; based on the wish and patch by Thomas Soeiro
    in PR#18243.
  * as.vector() gains a data.frame method which returns a simple
    named list, also clearing a long standing 'FIXME' to enable
    as.vector(&lt;data.frame&gt;, mode="list").  This breaks code relying
    on as.vector(&lt;data.frame&gt;) to return the unchanged data frame.
  * legend() is now vectorized for arguments cex, x.intersp, and
    text.width.  The latter can now also be specified as a vector
    (one element for each column of the legend) or as NA for
    computing a proper column wise maximum value of strwidth(legend).
    The argument y.intersp can be specified as a vector with one
    entry for each row of the legend.
    legend() also gains new arguments title.cex and title.font.
    Thanks to Swetlana Herbrandt.
  * Deparsing no longer remaps attribute names dim, dimnames, levels,
    names and tsp to historical S-compatible names (which structure()
    maps back).
  * sample() and sample.int() have additional sanity checks on their
    size and n arguments.
    all.equal.numeric() gains a sanity check on its tolerance
    argument - calling all.equal(a, b, c) for three numeric vectors
    is a surprisingly common error.
    mean(na.rm =), rank(na.last =), barplot(legend.text =),
    boxplot(), contour(drawlabels =), polygon(border =) and
    methods::is(class2 =) have more robust sanity checks on their
    arguments.
    R CMD Rd2pdf (used by R CMD check) has a more robust sanity check
    on the format of \alias{} commands.
  * psigamma(x, deriv) for negative x now also works for deriv = 4
    and 5; their underlying C level dpsifn() is documented in
    'Writing R Extensions'.
  * The HTML help system now uses HTML5 (wish of PR#18149).
  * ks.test() now provides exact p-values also with ties and MC
    p-values in the two-sample (Smirnov) case.  By Torsten Hothorn.
  * ks.test() gains a formula interface, with y ~ 1 for the
    one-sample (Kolmogorov) test and y ~ group for the two-sample
    (Smirnov) test.  Contributed by Torsten Hothorn.
  * The return value from ks.test() now has class c("ks.test",
    "htest") - packages using try() need to take care to use
    inherits() and not == on the class.
  * New functions psmirnov(), qsmirnov() and rsmirnov() in package
    stats implementing the asymptotic and exact distributions of the
    two-sample Smirnov statistic.
  * iconv() now allows sub = "c99" to use C99-style escapes for UTF-8
    inputs which cannot be converted to encoding to.
  * In a forward pipe |&gt; expression it is now possible to use a named
    argument with the placeholder _ in the rhs call to specify where
    the lhs is to be inserted.  The placeholder can only appear once
    on the rhs.
  * The included LAPACK sources have been updated to version 3.10.0,
    except for the four Fortran 77 routines which 3.10.0 has
    re-implemented in Fortran 90 (where the older versions have been
    retained as the R build process does not support Fortran 90).
  * path.expand() and most other uses of tilde expansion now warn if
    a path would be too long if expanded.  (An exception is
    file.exists(), which silently returns false.)
  * trunc(&lt;Date&gt;, *) now supports units = "months" or "years" for
    consistency with the POSIXt method, thanks to Dirk Eddelbuettel's
    proposal in PR#18099.
  * list2DF() now checks that its arguments are of the same length,
    rather than use recycling.
  * The HTML help system has several new features: LaTeX-like math
    can be typeset using either KaTeX or MathJax, usage and example
    code is highlighted using Prism, and for dynamic help the output
    of examples and demos can be shown within the browser if the
    knitr package is installed. These features can be disabled by
    setting the environment variable _R_HELP_ENABLE_ENHANCED_HTML_ to
    a false value.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 15
    and so packages that provide graphics devices should be
    reinstalled.
  * The grid package now allows the user to specify a "vector" of
    pattern fills.  The fill argument to gpar() accepts a list of
    gradients and/or patterns and the functions linearGradient(),
    radialGradient(), and pattern() have a new group argument.
    Points grobs (data symbols) can now also have a pattern fill.
    The grobCoords() function now returns a more informative and
    complex result.
  * The grid package has new functions for drawing isolated groups:
    grid.group(), grid.define(), and grid.use().  These functions add
    compositing operators and affine transformations to R's graphics
    capabilities.
    The grid package also has new functions for stroking and filling
    paths: grid.stroke(), grid.fill(), and grid.fillStroke().
    A new function as.path() allows the user to specify the fill rule
    for a path that is to be used for clipping, stroking, or filling;
    available options are "winding" and "evenodd".  A new function
    as.mask() allows the user to specify the type of a mask;
    available options are "alpha" and "luminance".
    These new features are only supported so far (at most) on the
    Cairo-based graphics devices and on the pdf() device.
  * dev.capabilities() reports on device support for the new
    features.
  * par() now warns about unnamed non-character arguments to prevent
    misuse such as {usr &lt;- par("usr"); par(usr)}.
  INSTALLATION:
  * Facilities for accessing ftp:// sites are no longer tested
    (except _pro tem_ for curlGetHeaders()) as modern browsers have
    removed support.
  * R can now be built with DEFS = -DSTRICT_R_HEADERS .
  PACKAGE INSTALLATION:
  * R CMD INSTALL no longer tangles vignettes. This completes an R
    CMD build change in R 3.0.0 and affects packages built before R
    3.0.2. Such packages should be re-made with R CMD build to have
    the tangled R code of vignettes shipped with the tarball.
  * USE_FC_LEN_T will become the default: this uses the correct
    prototypes for Fortran BLAS/LAPACK routines called from C/C++,
    and requires adjustment of most such calls - see 'Writing R
    Extensions' SS6.6.2.  (This has been supported since R 3.6.2.)
  * Package installation speed for packages installed with
    keep.source has been improved. This resolve the issue reported by
    Ofek Shilon in PR#18236.
  UTILITIES:
  * R CMD check can optionally report files/directories left behind
    in home, /tmp (even though TMPDIR is set) and other directories.
    See the "R Internals" manual for details.
  * R CMD check now reports byte-compilation errors during
    installation.  These are not usually fatal but may result in
    parts of the package not being byte-compiled.
  * _R_CHECK_DEPENDS_ONLY_ can be applied selectively to examples,
    tests and/or vignettes in R CMD check: see the "R Internals"
    manual.
  * _R_CHECK_SRC_MINUS_W_IMPLICIT_ now defaults to true: recent
    versions of Apple clang on macOS have made implicit function
    declarations in C into a compilation error.
  * R CMD check --as-cran makes use of the environment variable
    AUTORECONF.  See the "R Internals" manual SS8 for further details.
  * R CMD check --use-valgrind also uses valgrind when re-building
    vignettes as some non-Sweave vignettes unhelpfully comment out
    all their code when R CMD check runs vignettes.
  * Errors in re-building vignettes (unless there are LaTeX errors)
    are reported by R CMD check as ERROR rather than WARNING when
    running vignettes has been skipped (as it frequently is in CRAN
    checks and by --as-cran).
  * R CMD Rd2pdf gains a --quiet option that is used by R CMD build
    when building the PDF package manual.
  * R CMD Rd2pdf now always runs LaTeX in batch mode, consistent with
    Texinfo &gt;= 6.7. The --batch option is ignored.
  * R CMD build and R CMD check now include the Rd file name and line
    numbers in the error message of an \Sexpr evaluation failure.
  * For packages using the \doi Rd macro (now an install-time \Sexpr)
    but no other dynamic Rd content, R CMD build now produces a
    smaller tarball and is considerably faster - skipping temporary
    package installation.
  C-LEVEL FACILITIES:
  * The non-API header R_ext/R-ftp-http.h is no longer provided, as
    the entry points it covered are now all defunct.
  * A number of non-API declarations and macro definitions have been
    moved from the installed header Rinternals.h to the internal
    header Defn.h. Packages that only use entry points and
    definitions documented to be part of the API as specified in
    'Writing R Extensions' SS6 should not be affected.
  * The macro USE_RINTERNALS no longer has any effect when compiling
    package code.  Packages which also use R_NO_REMAP will need to
    ensure that the remapped names are used for calls to API
    functions that were formerly also made available as macros.
  * The deprecated legacy S-compatibility macros PROBLEM, MESSAGE,
    ERROR, WARN, WARNING, RECOVER, ... are no longer defined in
    R_exts/RS.h (included by R.h).  Replace these by calls to
    Rf_error and Rf_warning (defined in header R_ext/Error.h included
    by R.h).
    Header R_ext/RS.h no longer includes R_ext/Error.h.
  * Header R_ext/Constants.h (included by R.h) when included from C++
    now includes the C++ header cfloat rather than the C header
    float.h (now possible as C++11 is required).
  * The legacy S-compatibility macros DOUBLE_* in R_ext/Constants.h
    (included by R.h) are deprecated.
  * The deprecated S-compatibility macros SINGLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * R_Calloc, R_Free and R_Realloc are preferred to their unprefixed
    forms and error messages now use the prefix. These forms were
    introduced in R 3.4.0 and are available even when
    STRICT_R_HEADERS is defined.
  * rmultinom has been documented in 'Writing R Extensions' SS6 so is
    now part of the R API.
  * Similarly, Rtanpi, called from R level tanpi() is now part of the
    R API.
  * The long-deprecated, undocumented and non-API entry point call_R
    is no longer declared in R_ext/RS.h (included by R.h).
  * The header S.h which has been unsupported since Jan 2016 has been
    removed.  Use R.h instead.
  DEPRECATED AND DEFUNCT:
  * The (non-default and deprecated) method = "internal" for
    download.file() and url() no longer supports http:// nor ftp://
    URIs.  (It is used only for file:// URIs.)
    On Windows, download.file(method = "wininet") no longer supports
    ftp:// URIs.  (It is no longer the default method, which is
    "libcurl" and does.)
    On Windows, the deprecated method = "wininet" now gives a warning
    for http:// and https:// URIs for both download.file() and url().
    (It is no longer the default method.)
  * On Windows, the command-line option --max-mem-size and
    environment variable R_MAX_MEM_SIZE are defunct.  The memory
    allocation limit was important for 32-bit builds, but these are
    no longer supported.
  * default.stringsAsFactors() is now formally deprecated, where that
    was only mentioned on its regular help page, previously.  So it
    now gives a warning if called.
  * unix.time() is defunct now; it had been deprecated since R 3.4.0.
  BUG FIXES:
  * Setting digits = 0 in format(), print.default() (and hence
    typically print()) or options() is again invalid.  Its behaviour
    was platform-dependent, and it is unclear what "zero significant
    digits" should mean (PR#18098).
  * Messages from C code in the cairo section of package grDevices
    are now also offered for translation, thanks to Michael Chirico's
    PR#18123.
  * mean(x) with finite x now is finite also without "long.double"
    capability.
  * R CMD Rd2pdf no longer leaves an empty build directory behind
    when it aborts due to an already existing output file.  (Thanks
    to Sebastian Meyer's PR#18141.)
  * density(x, weights = w, na.rm = TRUE) when anyNA(x) is true, now
    removes weights "in parallel" to x, fixing PR#18151, reported by
    Matthias Gondan.  Additionally, it gets a subdensity option.
  * Conversion of \Sexpr[]{&lt;expR&gt;} to LaTeX or HTML no longer
    produces long blocks of empty lines when &lt;expR&gt; itself contains
    several lines all producing empty output.  Thanks to a report and
    patch by Ivan Krylov posted to R-devel.
  * R CMD build no longer fails if a package vignette uses child
    documents and inst/doc exists.  (Thanks to Sebastian Meyer's
    PR#18156.)
  * When an R documentation ('help' source) file man/foo.Rd in a
    package has \donttest{..} examples with a syntax error, it is now
    signalled as ERROR and with correct line numbers relating to the
  * -Ex.R file, thanks to Duncan Murdoch and Sebastian Meyer's
    reports and patch proposals in PR#17501.
  * Improved determination of the correct translation domain in
    non-base packages, addressing the combination of PR#18092 and
    PR#17998 (#c6) with reports and _augmented_ patch #2904 by
    Suharto Anggono.
    Note that "R-base" is no longer the default domain e.g., for
    top-level calls to gettext(); rather translation needs explicit
    domain = * specification in such cases.
  * identical(attrib.as.set=FALSE) now works correctly with data
    frames with default row names (Thanks to Charlie Gao's PR#18179).
  * txtProgressBar() now enforces a non-zero width for argument char,
    without which no progress can be visible.
  * dimnames(table(d)) is more consistent in the case where d is a
    list with a single component, thanks to Thomas Soeiro's report to
    R-devel.
    Further, table(d1, d2) now gives an error when d1 and d2 are data
    frames as suggested by Thomas in PR#18224.
  * Fix for drawing semi-transparent lines and fills on the native
    Windows graphics device (PR#18219 and PR#16694).  Thanks to Nick
    Ray for helpful diagnosis on Bugzilla.
  * The deparser now wraps sub-expressions such as if(A) ..  with
    parentheses when needed; thanks to Duncan Murdoch's PR#18232 and
    Lionel Henry's patches there.
  * remove.packages() no longer tries to uninstall Priority: base
    packages, thanks to a report and suggestions by Colin Fay in
    PR#18227.
  * win.metafile() now has xpinch and ypinch arguments so that the
    user can override Windows' (potentially wrong) guess at device
    dimensions.
  * x[i] and x[[i]] for non-integer i should now behave in all cases
    as always documented: the index used is equivalent to
    as.integer(i) unless that would overflow where trunc(i) is used
    instead; thanks to Suharto Anggono's report and patch proposals
    in PR#17977.
  * asOneSidedFormula() now associates the resulting formula with the
    global environment rather than the evaluation environment created
    for the call.
  * &lt;bibentry&gt;$name now matches the field name case-insensitively,
    consistent with bibentry() creation and the replacement method.
  * cbind() failed to detect some length mismatches with a mixture of
    time-series and non-time-series inputs.
  * The default LaTeX style file Sweave.sty used by the RweaveLatex
    driver no longer loads the obsolete ae package; thanks to a
    report by Thomas Soeiro in PR#18271.  Furthermore, it now skips
    \usepackage[T1]{fontenc} for engines other than pdfTeX (if
    detected) or if the new [nofontenc] option is used.
  * smooth.spline() now stores its logical cv argument more safely,
    fixing a rare bug when printing, and also stores n.
  * smooth.spline(x,y,*) now computes the cv.crit statistic
    correctly, also when is.unsorted(x), fixing PR#18294.
  * The data.frame method of rbind() now warns when binding
    not-wholly-recycling vectors, by analogy to the default method
    (for matrices).
  * setAs() finds the correct class for name to when multiple
    packages define a class with that name. Thanks to Gabor Csardi
    for the report.
  * Fix for detaching a package when two classes of the same name are
    present in method signatures for the same generic. Thanks to
    Gabor Csardi for the report.
  * match.arg("", c("", "a", "B")) gives a better error message, in
    part from PR#17959, thanks to Elin Waring.
  * R CMD Sweave --clean no longer removes pre-existing files or
    subdirectories (PR#18242).
  * The quartz() device no longer splits polylines into subpaths.
    That has caused narrowly-spaced lines with many points to always
    look solid even when dashed line type was used due to dash phase
    restarts.
  * Deparsing constructs such as quote(1 + `!`(2) + 3) works again as
    before R 3.5.0, thanks to the report and patch in PR#18284 by
    Suharto Anggono.
  * as.list(f) for a factor f now keeps names(f), fixing PR#18309.
  * qbeta(.001, .9, .009) and analogous qf() calls now return a
    correct value instead of NaN or wrongly 1, all with a warning;
    thanks to the report by Ludger Goeminne in PR#18302.
  * plot.lm() failed to produce the plot of residuals vs.  factor
    levels (i.e., which=5 when leverages are constant) for models
    with character predictors (PR#17840).
  * interaction.plot(..., xtick = TRUE) misplaced the x-axis line
    (PR#18305).
  * Not strictly fixing a bug, format()ing and print()ing of
    non-finite Date and POSIXt values NaN and +/-Inf no longer show
    as NA but the respective string, e.g., Inf, for consistency with
    numeric vector's behaviour, fulfilling the wish of PR#18308.
  * R CMD check no longer runs test scripts generated from
    corresponding .Rin files twice and now signals an ERROR if
    processing an .Rin script fails.
  * tools::Rd2txt() used for plain-text help pages now renders \hrefs
    (if tools::Rd2txt_options(showURLs = TRUE)) and \urls with
    percent-encoding and standards-compliant delimiting style (angle
    brackets and no URL: prefix).  \email is now rendered with a
    mailto: prefix.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1655985600">- CHANGES IN R 4.2.1:
  NEW FEATURES:
  * New function utils::findCRANmirror() to find out if a CRAN mirror
    has been selected, otherwise fallback to the main site.  This
    behaves in the same way as tools::CRAN_package_db() and is
    intended for packages wishing to access CRAN for purposes other
    than installing packages.
    The need for this was shown by a day when the main CRAN website
    was offline and a dozen or so packages which had its URL
    hardcoded failed their checks.
  INSTALLATION on a UNIX-ALIKE:
  * The libraries searched for by --with-blas (without a value) now
    include BLIS (after OpenBLAS but before ATLAS).  And on macOS,
    the Accelerate framework (after ATLAS).  (This is patterned after
    the AX_BLAS macro from the Autoconf Archive.)
  * The included LAPACK sources have been updated to 3.10.1.
  UTILITIES:
  * The (full path to) the command tidy to be used for HTML
    validation can be set by environment variable R_TIDYCMD.
  * Setting environment variable _R_CHECK_RD_VALIDATE_RD2HTML_ to a
    false value will override R CMD check --as-cran and turn off HTML
    validation.  This provides a way to circumvent a problematic
    tidy.
    The 2006 version that ships with macOS is always skipped.
  C-LEVEL FACILITIES:
  * The undocumented legacy declarations of Sint, Sfloat, SINT_MAX
    and SINT_MIN in header R.h are deprecated.
  BUG FIXES:
  * fisher.test(d) no longer segfaults for "large" d; fixing PR#18336
    by preventing/detecting an integer overflow reliably.
  * tar(., files=*) now produces correctly the warning about invalid
    uid or gid of files, fixing PR#18344, reported by Martin Morgan.
  * tk_choose.files() with multi = FALSE misbehaved on paths
    containing spaces (PR#18334) (regression introduced in R 4.0.0).
  * sort(x, partial = ind, *) now works correctly notably for the
    non-default na.last = FALSE or TRUE, fixing PR#18335 reported by
    James Edwards.
  * Environment variable _R_CHECK_XREFS_REPOSITORIES_ is only used
    for checking .Rd cross-references in R CMD check (as documented)
    and not for other uses looking for a CRAN mirror.
  * The search for a CRAN mirror when checking packages now uses
    getOption("repos") if that specifies a CRAN mirror, even when it
    does not also specify all three Bioconductor repositories (as was
    previously required).
  * The HTML code generated by tools::Rd2HTML() has been improved to
    pass tidy 5.8.0.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1667217600">- CHANGES IN R 4.2.2:
  NEW FEATURES:
  * tools::Rdiff(useDiff = TRUE) checks for the presence of an
    external diff command and switches to useDiff = FALSE if none is
    found.  This allows R CMD Rdiff to always work.
  * On Windows, environment variable R_LIBCURL_SSL_REVOKE_BEST_EFFORT
    can be used to switch to only 'best-effort' SSL certificate
    revocation checks with the default "libcurl" download method.
    This reduces security, but may be needed for downloads to work
    with MITM proxies (PR#18379).
  * (macOS) The run-time check for libraries from XQuartz for X11 and
    Tcl/Tk no longer uses otool from the Apple Developer Tools
    (PR#18400).
  * The LaTeX style for producing the PDF manuals, Rd.sty, now loads
    the standard amsmath, amsfonts and amssymb packages for greater
    coverage of math commands in the Rd \eqn and \deqn macros.  The
    \mathscr LaTeX command is also provided (via the mathrsfs
    package, if available, or the amsfonts bundle otherwise),
    fulfilling the wish of PR#18398.
  * (Windows) The default format of readClipboard() and
    writeClipboard() has been changed to 13 (CF_UNICODETEXT).
  INSTALLATION on a UNIX-ALIKE:
  * The PDF manuals (if built) can be compacted by the new target
    make compact-pdf (at the top level or in directory doc/manual).
  * There is now configure support for LLVM clang 15 on Linux, which
    defaults to position-independent (PIE) executables whereas
    gfortran does not.
  * Many small changes to ease compilation (and suppress warnings)
    with LLVM clang 15.
  BUG FIXES:
  * Rscript -e would fail if stdin were closed (Reported by Henrik
    Bengtsson.)
  * qt(*, log.p=TRUE) in outer tails no longer produces NaN in its
    final steps, thus fixing PR#18360.
  * tools::Rd2latex() now escapes hashes and ampersands when writing
    URLs, fixing LaTeX errors with such URLs in \tabular.
  * When isGeneric(f, fdef=*) is used with mismatching names, the
    warning is better understandable; reported (with fix) in PR#18370
    by Gabe Becker.
  * poly(x, n) now works again (and is now documented) when x is a
    "Date" or "POSIXct" object, or of another class while fulfilling
    mode(x) == "numeric".  This also enables poly(x, *, raw=TRUE) for
    such variables.  Reported by Michael Chirico to R-devel.
  * write.table(), write.csv() and write.csv2() restore their
    numerical precision (internal equivalent of digits = 15) after an
    interrupt (PR#18384).
  * One can now read also byte FF from a clipboard connection
    (PR#18385).
  * source("") and source(character()) now give more helpful error
    messages.
  * R CMD check --as-cran set _R_CHECK_TIMINGS_ too late to have the
    intended effect.
  * as.POSIXlt(x) now also works with very large dates x, fixing
    PR#18401 reported by Hannes M"uhleisen.
  * Files can now be extracted even from very large zip archives
    (PR#18390, thanks to Martin Jakt).
  * Non-finite objects of class "POSIXlt" are now correctly coerced
    to classes "Date" and "POSIXct"; following up on the extension to
    format() them correctly.
  * Added methods for is.finite(), is.infinite() and is.nan() for
    "POSIXlt" date-time objects.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1678881600">- CHANGES IN R 4.2.3:
  C-LEVEL FACILITIES:
  * The definition of DL_FUNC in R_ext/Rdynload.h has been changed to
    be fully C-compliant.  This means that functions loaded _via_ for
    example R_GetCCallable need to be cast to an appropriate type if
    they have any arguments.
  * .Machine has a new element sizeof.time_t to identify old systems
    with a 32-bit type and hence a limited range of date-times (and
    limited support for dates millions of years from present).
  PACKAGE INSTALLATION:
  * (Windows) The default C++ standard had accidentally been left at
    C++11 when it was changed to C++14 on Unix.
  BUG FIXES:
  * As "POSIXlt" objects may be "partially filled" and their list
    components meant to be recycled, length() now is the length of
    the longest component.
  * as.POSIXlt.Date() could underflow for dates in the far past (more
    than half a million years BCE).
  * as.Date.POSIXlt(x) would return "1970-01-01" instead of NA in R
    4.2.2, e.g., for
    x &lt;- as.POSIXlt(c("2019-01-30","2001-1-1"))
    x$mon &lt;- c(0L, NA); as.Date(x)
  * R CMD check failed to apply enabled _R_CHECK_SUGGESTS_ONLY_ to
    examples and vignettes (regression in R 4.2.0).
  * R CMD check did not re-build vignettes in separate processes by
    default (regression in R 4.2.0).
  * Running examples from HTML documentation now restores previous
    knitr settings and options (PR#18420).
  * Quartz: fonts are now located using Core Graphics API instead of
    deprecated ATS which is no longer supported in the macOS 13 SDK
    (PR#18426).  This also addresses an issue where the currently
    used font in the Quartz device context was not correctly
    retained.
  * (Windows) Math symbols in text drawing functions are again
    rendered correctly (PR#18440).  This fixes a regression in R
    4.2.1 caused by a fix in PR#18382 which uncovered an issue in
    GraphApp due to which the symbol charset was not used with TT
    Symbol font face.
  * (Windows) Installing a package with a src/Makefile.{win,ucrt}
    file includes ~/.R/Makevars.win64 in the search for user
    makevars, as documented in "R Installation and Administration"
    and done for packages with a src/Makevars.{win,ucrt} file.
  * format(&lt;POSIXlt_w/_unbalanced_sec&gt;, "....%OS&lt;n&gt;") with n &gt; 0 no
    longer accidentally uses the unbalanced seconds, thanks to
    Suharto Anggono's report (including patch) in PR#18448.
  * solve.default(a, b) works around issues with some versions of
    LAPACK when a contains NA or NaN values.
  * When UseMethod() cannot dispatch, it no longer segfaults
    producing the error message in case of a long class(), thanks to
    Joris Vankerschaver's report (including patch) in PR#18447.
  * When example(foo, ..) produces graphics on an interactive device
    it needs to open itself, it now leaves devAskNewPage() unchanged
    even when it was FALSE, thus fixing a 14 years old '&lt;FIXME&gt;'.
  * packageDescription() again catches errors from encoding
    conversions. This also fixes broken packageVersion() in C locale
    on systems where iconv does not support transliteration.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1681128000">- add patch to build with libcurl &gt;= 8</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1682078400">- CHANGES IN R 4.3.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Calling &amp;&amp; or || with LHS or (if evaluated) RHS of length greater
    than one is now always an error, with a report of the form
    'length = 4' in coercion to 'logical(1)'
    Environment variable _R_CHECK_LENGTH_1_LOGIC2_ no longer has any
    effect.
  NEW FEATURES:
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.10.1.  (This caused some platform-dependent
    changes to package check output.)  And then to the sources from
    LAPACK version 3.11.0 (with changes only to double complex
    subroutines).
  * The included LAPACK sources have been updated to include the four
    Fortran 90 routines rather than their Fortran 77 predecessors.
    This may give some different signs in SVDs or
    eigendecompositions..  (This completes the transition to LAPACK
    3.10.x begun in R 4.2.0.)
  * The LAPACK sources have been updated to version 3.11.0.  (No new
    subroutines have been added, so this almost entirely bug fixes:
    Those fixes do affect some computations with NaNs, including R's
    NA.)
  * The parser now signals _classed_ errors, notably in case of the
    pipe operator |&gt;.  The error object and message now give line and
    column numbers, mostly as proposed and provided by Duncan Murdoch
    in PR#18328.
  * toeplitz() is now generalized for asymmetric cases, with a
    toeplitz2() variant.
  * xy.coords() and xyz.coords() and consequently, e.g., plot(x,y,
    log = "y") now signal a _classed_ warning about negative values
    of y (where log(.) is NA).  Such a warning can be specifically
    suppressed or caught otherwise.
  * Regular expression functions now check more thoroughly whether
    their inputs are valid strings (in their encoding, e.g. in
    UTF-8).
  * The performance of grep(), sub(), gsub() and strsplit() has been
    improved, particularly with perl = TRUE and fixed = TRUE.  Use of
    useBytes = TRUE for performance reasons should no longer be
    needed and is discouraged: it may lead to incorrect results.
  * apropos() gains an argument dot_internals which is used by the
    completion (help(rcompgen)) engine to also see base internals
    such as .POSIXct().
  * Support in tools::Rdiff() for comparing uncompressed PDF files is
    further reduced - see its help page.
  * qqplot(x, y, ...) gains conf.level and conf.args arguments for
    computing and plotting a confidence band for the treatment
    function transforming the distribution of x into the distribution
    of y (Switzer, 1976, _Biometrika_). Contributed by Torsten
    Hothorn.
  * Performance of package_dependencies() has been improved for cases
    when the number of dependencies is large.
  * Strings newly created by gsub(), sub() and strsplit(), when any
    of the inputs is marked as "bytes", are also marked as "bytes".
    This reduces the risk of creating invalid strings and accidental
    substitution of bytes deemed invalid.
  * Support for readLines(encoding = "bytes") has been added to allow
    processing special text files byte-by-byte, without creating
    invalid strings.
  * iconv(from = "") now takes into account any declared encoding of
    the input elements and uses it in preference to the native
    encoding.  This reduces the risk of accidental creation of
    invalid strings, particularly when different elements of the
    input have different encoding (including "bytes").
  * Package repositories in getOption("repos") are now initialized
    from the repositories file when utils is loaded (if not already
    set, e.g., in .Rprofile).  (From a report and patch proposal by
    Gabriel Becker in PR#18405.)
  * compactPDF() gets a verbose option.
  * type.convert() and hence read.table() get new option tryLogical =
    TRUE with back compatible default.  When set to false, converts
    "F" or "T" columns to character.
  * Added new unit prefixes "R" and "Q" for abbreviating
    (unrealistically large) sizes beyond 10^{27} in standard = "SI",
    thanks to Henrik Bengtsson's PR#18435.
  * as.data.frame()'s default method now also works fine with atomic
    objects inheriting from classes such as "roman", "octmode" and
    "hexmode", such fulfilling the wish of PR#18421, by Benjamin
    Feakins.
  * The as.data.frame.vector() utility now errors for wrong-length
    row.names.  It warned for almost six years, with "Will be an
    error!".
  * sessionInfo() now also contains La_version() and reports codepage
    and timezone when relevant, in both print() and toLatex() methods
    which also get new option tzone for displaying timezone
    information when locale = FALSE.
  * New function R_compiled_by() reports the C and Fortran compilers
    used to build R, if known.
  * predict(&lt;lm&gt;, newdata = *) no longer unnecessarily creates an
    offset of all 0s.
  * solve() for complex inputs now uses argument tol and by default
    checks for 'computational singularity' (as it long has done for
    numeric inputs).
  * predict(&lt;rank-deficient lm&gt;, newdata=*) now obeys a new argument
    rankdeficient, with new default "warnif", warning only if there
    are non-estimable cases in newdata.  Other options include
    rankdeficient = "NA", predicting NA for non-estimable newdata
    cases.  This addresses PR#15072 by Russ Lenth and is based on his
    original proposal and discussions in PR#16158 also by David Firth
    and Elin Waring.  Still somewhat experimental.
  * Rgui console implementation now works better with the NVDA screen
    reader when the full blinking cursor is selected.  The underlying
    improvements in cursor handling may help also other screen
    readers on Windows.
  * The drop-field control in GraphApp can now be left with the TAB
    key and all controls can be navigated in the reverse order using
    the Shift+TAB key, improving accessibility of the Rgui
    configuration editor.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now fully accurate
    (instead of to "only" minimally five digits).
  * demo(error.catching) now also shows off withWarnings() and
    tryCatchWEMs().
  * As an experimental feature the placeholder _ can now also be used
    in the rhs of a forward pipe |&gt; expression as the first argument
    in an extraction call, such as _$coef. More generally, it can be
    used as the head of a chain of extractions, such as _$coef[[2]].
  * Spaces in the environment variable used to choose the R session's
    temporary directory (TMPDIR, TMP and TEMP are tried in turn) are
    now fatal.  (On Windows the 'short path' version of the path is
    tried and used if that does not contain a space.)
  * all.equal.numeric() gets a new optional switch giveErr to return
    the numeric error as attribute.  Relatedly,
    stopifnot(all.equal&lt;some&gt;(a, b, ..)) is as "smart" now, as
    stopifnot(all.equal(....)) has been already, thus allowing
    customized all.equal&lt;Some&gt;() wrappers.
  * R on Windows is now able to work with path names longer than 260
    characters when these are enabled in the system (requires at
    least Windows 10 version 1607).  Packages should be updated to
    work with long paths as well, instead of assuming PATH_MAX to be
    the maximum length.  Custom front-ends and applications embedding
    R need to update their manifests if they wish to allow this
    feature.  See
    &lt;https://blog.r-project.org/2023/03/07/path-length-limit-on-windows&gt;
    for more information.
  * 'Object not found' and 'Missing argument' errors now give a more
    accurate error context. Patch provided by Lionel Henry in
    PR#18241.
  * The @ operator is now an S3 generic. Based on contributions by
    Tomasz Kalinowski in PR#18482.
  * New generic chooseOpsMethod() provides a mechanism for objects to
    resolve cases where two suitable methods are found for an Ops
    Group Generic. This supports experimenting with alternative
    object systems. Based on contributions by Tomasz Kalinowski in
    PR#18484.
  * inherits(x, what) now accepts values other than a simple
    character vector for argument what. A new generic, nameOfClass(),
    is called to resolve the class name from what. This supports
    experimenting with alternative object systems. Based on
    contributions by Tomasz Kalinowski in PR#18485.
  * Detection of BLAS/LAPACK in use (sessionInfo()) with FlexiBLAS
    now reports the current backend.
  * The "data.frame" method for subset() now warns about extraneous
    arguments, typically catching the use of = instead of == in the
    subset expression.
  * Calling a:b when numeric a or b is longer than one may now be
    made into an error by setting environment variable
    _R_CHECK_LENGTH_COLON_ to a true value, along the proposal in
    PR#18419 by Henrik Bengtsson.
  * density(x, weights = *) now warns if automatic bandwidth
    selection happens without using weights; new optional warnWbw may
    suppress the warning.  Prompted by Christoph Dalitz' PR#18490 and
    its discussants.
  * rm(list = *) is faster and more readable thanks to Kevin Ushey's
    PR#18492.
  * The plot.lm() function no longer produces a normal Q-Q plot for
    GLMs. Instead it plots a half-normal Q-Q plot of the absolute
    value of the standardized deviance residuals.
  * The print() method for class "summary.glm" no longer shows
    summary statistics for the deviance residuals by default.  Its
    optional argument show.residuals can be used to show them if
    required.
  * The tapply() function now accepts a data frame as its X argument,
    and allows INDEX to be a formula in that case. by.data.frame()
    similarly allows INDICES to be a formula.
  * The performance of df[j] &lt;- value (including for missing j) and
    write.table(df) has been improved for data frames df with a large
    number of columns.  (Thanks to Gabriel Becker's PR#18500,
    PR#18503 and discussants, prompted by a report from Toby Dylan
    Hocking on the R-devel mailing list.)
  * The matrix multiply operator %*% is now an S3 generic, belonging
    to new group generic matrixOps.  From Tomasz Kalinowski's
    contribution in PR#18483.
  * New function array2DF() to convert arrays to data frames,
    particularly useful for the list arrays created by tapply().
  DATES and TIMES:
  * On platforms where (non-UTC) datetimes before 1902 (or before
    1900 as with system functions on recent macOS) are guessed by
    extrapolating time zones from 1902-2037, there is a warning at
    the first use of extrapolation in a session.  (As all time zones
    post 2037 are extrapolation, we do not warn on those.)
  * (Platforms using --with-internal-tzone, including Windows and by
    default macOS). How years are printed in dates or date-times can
    be controlled by environment variable R_PAD_YEARS_BY_ZERO.  The
    default remains to pad to 4 digits by zeroes, but setting value
    no gives no padding (as used by default by glibc).
  * strftime() tries harder to determine the offset for the "%z"
    format, and succeeds on the mainstream R platforms.
  * strftime() has a limit of 2048 bytes on the string produced -
    attempting to exceed this is an error.  (Previously it silently
    truncated at 255 bytes.)
  * sessionInfo() records (and by default prints) the system time
    zone as part of the locale information.  Also, the source
    (system/internal) of the date-time conversion and printing
    functions.
  * Objects of class "POSIXlt" created in this version of R always
    have 11 components: component zone is always set, and component
    gmtoff is set for times in UTC and usually set on the (almost
    all) platforms which have C-level support, otherwise is NA.
  * There are comprehensive validity checks on the structure of
    objects of class "POSIXlt" when converting (including formatting
    and printing).  (This avoids mis-conversions of hand-crafted
    objects.)
  * There is some support for using the native date-time routines on
    macOS: this is only viable on recent versions (e.g. 12.6 and 13)
    and does get wrong some historical changes (before 1900, during
    WWII).  Use of --with-internal-tzone remains the default.
  * as.POSIXct(&lt;numeric&gt;) and as.POSIXlt(.) (without specifying
    origin) now work.  So does as.Date(&lt;numeric&gt;).
  * as.Date.POSIXct(., tz) now treats several tz values, notably
    "GMT" as equivalent to "UTC", proposed and improved by Michael
    Chirico and Joshua Ulrich in PR#17674.
  * Experimental balancePOSIXlt() utility allows using "ragged" and
    or out-of-range "POSIXlt" objects more correctly, e.g., in
    subsetting and subassignments.  Such objects are now documented.
    More experimentally, a "POSIXlt" object may have an attribute
    "balanced" indicating if it is known to be filled or fully
    balanced.
  * Functions axis.Date() and axis.POSIXct() are rewritten to gain
    better default tick locations and better default formats by using
    prettyDate(). Thanks to Swetlana Herbrandt.
  * The mapping of Windows' names for time zones to IANA's 'Olson'
    names has been updated.  When ICU is available (it is by
    default), it is used to get a mapping for the current region set
    in Windows.  This can be overridden by setting environment
    variable TZ to the desired Olson name - see OlsonNames() for
    those currently available.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 16
    and so packages that provide graphics devices should be
    reinstalled.
  * The grDevices and grid packages have new functions for rendering
    typeset glyphs, primarily: grDevices::glyphInfo() and
    grid::grid.glyph().
    Rendering of typeset glyphs is only supported so far on the
    Cairo-based graphics devices and on the pdf() and quartz()
    devices.
  * The defined behaviour for "clear" and "source" compositing
    operators (via grid::grid.group()) has been changed (to align
    better with simple interpretation of original Porter-Duff
    definitions).
  * Support for gradients, patterns, clipping paths, masks, groups,
    compositing operators, and affine transformations has been added
    to the quartz() device.
  INSTALLATION on a UNIX-ALIKE:
  * A system installation of generic LAPACK 3.10.0 or later will be
    preferred to the version in the R sources.
    configure option --with-lapack=no (equivalently --without-lapack)
    forces compilation of the internal LAPACK sources.
    If --with-lapack is not specified, a system liblapack is looked
    for and used if it reports version 3.10.0 or later and does not
    contain BLAS routines.
    Packages using LAPACK will need to be reinstalled if this changes
    to using an external library.
  * On aarch64 Linux platforms using GCC, configure now defaults to
  - fPIC (instead of -fpic), as desired in PR#18326.
  * configure now checks conversion of datetimes between POSIXlt and
    POSIXct around year 2020.  Failure (which has been seen on
    platforms missing tzdata) is fatal.
  * If configure option --with-valgrind-instrumentation is given
    value 1 or 2, option --with-system-valgrind-headers is now the
    default and ignored (with a warning).  It is highly recommended
    that the system headers are installed alongside valgrind: they
    are part of its packaging on some Linux distributions and
    packaged separately (e.g. in the valgrind-devel RPM) on others.
    configure will give a warning if they are not found.
    The system headers will be required in a future release of R to
    build with valgrind instrumentation.
  * libcurl 8.x is now accepted by configure: despite a change in
    major version number it changes neither API nor ABI.
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools43, an update of the Rtools42 toolchain.  It is
    based on gcc 12 and newer versions of MinGW-W64, binutils and
    libraries.  At this time R-devel can still be built using
    Rtools42 without changes, but when R-devel is installed via the
    installer, it will by default look for Rtools43.
  * Old make targets rsync-extsoft and 32-bit ones that are no longer
    needed have been removed.
  * Default builds (including for packages) no longer select C99.
    Thus the C standard used is the default for the compiler, which
    for the toolchain in Rtools43 is C17.  (This is consistent with
    Unix builds.)
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++17 where
    available (which it is on all currently checked platforms): if
    not C++14 or C++11 is used if available otherwise C++ is not
    supported.
  * USE_FC_LEN_T is the default: this uses the correct
    (compiler-dependent) prototypes for Fortran BLAS/LAPACK routines
    called from C/C++, and requires adjustment of many such calls -
    see 'Writing R Extensions' SS6.6.1.
  * There is initial support for C++23 as several compilers are now
    supporting -std=c++23 or -std=c++2b or similar.  As for C++20,
    there no additional configure checks for C++23 features beyond a
    check that the compiler reports a __cplusplus value greater than
    that in the C++20 standard.  C++ feature tests should be used.
  * There is support for a package to indicate the version of the C
    standard which should be used to compile it, and for the
    installing user to specify this.  In most cases R defaults to the
    C compiler's default standard which is C17 (a `bug-fix' of C11) -
    earlier versions of R or compilers may have defaulted to C99.
    Current options are:
    USE_C17 Use a standard that is at most C17.  The intention is to
    allow legacy packages to still be installed when later C
    standards become the default, including packages using new
    keywords as identifiers or with K&amp;R-style function
    declarations.  This will use C17 if available, falling back
    to C11.
    USE_C90 Use the C90 (aka C89) standard.  (As that standard did
    not require compilers to identify that version, all we can
    verify is that the compiler does not claim to be using a
    later standard.  It may accept C99 features - for example
    clang accepts // to make comments.)
    USE_C99 Use the C99 standard. This should be rarely needed - it
    avoids the few new features of C11/C17 which can be useful if
    a package assumes them if C17 is specified and they are not
    implemented.
    USE_C23 Use C23 (or in future, later).  Compiler/library support
    for C23 is still being implemented, but LLVM clang from
    15.0.0 and the upcoming GCC 13 have quite extensive support.
    These can be specified as part of the SystemRequirements field in
    the package's DESCRIPTION file or _via_ options --use-C17 and so
    on of R CMD INSTALL and R CMD SHLIB.
    For further details see "Writing R Extensions" SS1.2.5.
  * (Windows) A src/Makefile.ucrt or src/Makefile.win file is now
    included after R_HOME/etcR_ARCH/Makeconf and so no longer needs
    to include that file itself.  Installation of a package with such
    a file now uses a site Makevars file in the same way as a package
    with a src/Makevars.win file would.
  * configure is now passed crucial variables such as CC and CFLAGS
    in its environment, as many packages were not setting them (as
    documented in 'Writing R Extensions' SS1.2).
    This has most effect where configure is used to compile parts of
    the package - most often by cmake or libtool which obfuscate the
    actual compile commands used.
    Also used for configure.win and configure.ucrt on Windows.
  FORTRAN FLAGS:
  * The flag -fno-optimize-sibling-calls is no longer forced for
    gfortran 7 and later.  It should no longer be needed now using
    'hidden' character-length arguments when calling BLAS/LAPACK
    routines from C/C++ is the default even for packages.  (Unless
    perhaps packages call Fortran code from C/C++ without using R's
    headers and without allowing for these arguments.)
  C-LEVEL FACILITIES:
  * The deprecated S-compatibility macros DOUBLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * The deprecated legacy typedefs of Sint and Sfloat in header R.h
    are no longer defined, and that header no longer includes header
    limits.h from C nor climits from C++.
  * New macro CAD5R() is provided in Rinternals.h and used in a few
    places in the R sources.
  * ALTREP now supports VECSXP vectors. Contributed by Gabor Csardi
    in PR#17620.
  * The Rcomplex definition (in header R_ext/Complex.h) has been
    extended to prevent possible mis-compilation when interfacing
    with Fortran (PR#18430).  The new definition causes compiler
    warnings with static initializers such as {1, 2}, which can be
    changed to {.r=1, .i=2}.
    Using the new definition from C++ depends on compiler extensions
    supporting C features that have not been incorporated into the
    C++ standards but are available in g++ and clang++: this may
    result in C++ compiler warnings but these have been worked around
    for recent versions of common compilers (GCC, Apple/LLVM clang,
    Intel).
    It is intended to change the inclusion of header R_ext/Complex.h
    by other R headers, so C/C++ code files which make use of
    Rcomplex should include that header explicitly.
  UTILITIES:
  * R CMD check does more checking of package .Rd files, warning
    about invalid email addresses and (some) invalid URIs and noting
    empty \item labels in description lists.
  * R CMD check now also reports problems when reading package news
    in md (file NEWS.md) and (optionally) plain text (file NEWS)
    formats.
  * _R_CHECK_TIMINGS_ defaults to a value from the environment even
    for R CMD check --as-cran; this allows for exceptionally fast or
    slow platforms.
    It now applies to checking PDF and HTML versions of the manuals,
    and 'checking CRAN incoming feasibility'.
  * R CMD check can optionally (but included in --as-cran) check
    whether HTML math rendering _via_ KaTeX works for the package .Rd
    files.
  * Non-interactive debugger invocations can be trapped by setting
    the environment variable _R_CHECK_BROWSER_NONINTERACTIVE_ to a
    true value.  This is enabled by R CMD check --as-cran to detect
    the use of leftover browser() statements in the package.
  * The use of sprintf and vsprintf from C/C++ has been deprecated in
    macOS 13 and is a known security risk.  R CMD check now reports
    (on all platforms) if their use is found in compiled code:
    replace by snprintf or vsnprintf respectively. [*NB:* whether
    such calls get compiled into the package is platform-dependent.]
  * Where recorded at installation, R CMD check reports the C and
    Fortran compilers used to build R.
    It reports the OS in use (if known, as given by osVersion) as
    well as that R was built for.
    It notes if a C++ standard was specified which is older than the
    current default: many packages have used C++11 to mean 'not
    C++98' - as C++11 is the minimum supported since R 4.0.0, that
    specification can probably be removed.
  * R CMD INSTALL reports the compilers (and on macOS, the SDK) used,
    and this is copied to the output of R CMD check.
    Where a C++ standard is specified, it is reported.
  * R CMD check's 'checking compilation flags in Makevars' has been
    relaxed to accept the use of flags such as -std=f2008 in
    PKG_FFLAGS.
  * tools::buildVignettes() has a new argument skip, which is used by
    R CMD check to skip (and note) vignettes with unavailable
    \VignetteDepends (PR#18318).
  * New generic .AtNames() added to enable class-specific completions
    after @. The formerly internal function findMatches() is now
    exported, mainly for use in methods for .DollarNames() and
    .AtNames().
  DEPRECATED AND DEFUNCT:
  * default.stringsAsFactors() is defunct.
  * Calling as.data.frame.&lt;class&gt;() directly (for 12 atomic classes)
    is going to be formally deprecated, currently activated by
    setting the environment variable
    _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ to non-empty, which also
    happens in R CMD check --as-cran.
  BUG FIXES:
  * Hashed environments with sizes less than 5 can now grow.
    (Reported to R-devel by Duncan Garmonsway.)
  * as.character(&lt;Rd&gt;, deparse = TRUE) failed to re-escape curly
    braces in LaTeX-like text.  (Reported by Hadley Wickham in
    PR#18324.)
  * library() now passes its lib.loc argument when requiring Depends
    packages; reported (with fix) in PR#18331 by Mikael Jagan.
  * R CMD Stangle: improved message about 'Output' files.
  * head(x, n) and tail(x, n) now signal an error if n is not
    numeric, instead of incidentally "working" sometimes returning
    all of x.  Reported and discussed by Colin Fay, in PR#18357.
  * The "lm" method for summary() now gives the correct F-statistic
    when the model contains an offset.  Reported in PR#18008.
  * C() and `contrasts&lt;-`() now preserve factor level names when
    given a function object (as opposed a function name which did
    preserve names). Reported in PR#17616.
  * c(a = 1, 2)[[]] no longer matches 2 but rather signals a
    _classed_ error.  Reported and analysed by Davis Vaughan in
    PR#18367, a duplicate of PR#18004, by Jan Meis et al.  For
    consistency, NULL[[]] is also erroneous now.  x[[]] &lt;- v gives an
    error of the same class "MissingSubscriptError".
  * The relist() function of utils now supports NULL elements in the
    skeleton (PR#15854).
  * ordered(levels = *) (missing x) now works analogously to factor(,
    ordered=TRUE); reported (with fix) by Achim Zeileis in PR#18389.
  * User-defined Rd macro definitions can now span multiple lines,
    thanks to a patch from Duncan Murdoch. Previously, the Rd parser
    silently ignored everything after the first line.
  * Plain-text help (tools::Rd2txt()) now preserves an initial blank
    line for text following description list items.
  * tools::Rd2HTML() and tools::Rd2latex() no longer split \arguments
    and \value lists at Rd comments.
  * tools::Rd2latex() now correctly handles optional text outside
    \items of argument lists as well as bracketed text at the
    beginning of sections, e.g., \value{[NULL]}.
  * as.character(&lt;POSIXt&gt;) now behaves more in line with the methods
    for atomic vectors such as numbers, and is no longer influenced
    by options().  Ditto for as.character(&lt;Date&gt;).  The
    as.character() method gets arguments digits and OutDec with
    defaults _not_ depending on options().  Use of as.character(*,
    format = .) now warns.
  * Similarly, the as.character.hexmode() and *.octmode() methods
    also behave as good citizen methods and back compatibility option
    keepStr = TRUE.
  * The as.POSIXlt(&lt;POSIXlt&gt;) and as.POSIXct(&lt;POSIXct&gt;) default
    methods now do obey their tz argument, also in this case.
  * as.POSIXlt(&lt;Date&gt;) now does apply a tz (time zone) argument, as
    does as.POSIXct(); partly suggested by Roland Fuss on the R-devel
    mailing list.
  * as.Date.POSIXlt(x) now also works when the list components are of
    unequal length, aka "partially filled" or "ragged".
  * expand.model.frame() looked up variables in the wrong environment
    when applied to models fitted without data.  Reported in
    PR#18414.
  * time() now (also) uses the ts.eps = getOption("ts.eps") argument
    and thus by default rounds values very close to the start (or
    end) of a year.  Based on a proposal by Andre"i V. Kostyrka on
    R-help.
  * Printing of a factanal() result with just one factor and sort =
    TRUE now works regularly, fixing PR#17863 by Timothy Bates,
    thanks to the 'R Contributors' working group.
  * Printing 0-length objects of class "factor", "roman", "hexmode",
    "octmode", "person", "bibentry", or "citation" now prints
    something better, one of which fixes PR#18422, reported by
    Benjamin Feakins.
  * Sys.timezone() queries timedatectl only if systemd is loaded;
    addressing a report by Jan Gorecki in PR#17421.
  * The formula method of cor.test() had scoping problems when
    environment(formula) was not the calling environment; reported
    with a patch proposal by Mao Kobayashi in PR#18439.
  * attach() of an environment with active bindings now preserves the
    active bindings.  Reported by Kevin Ushey in PR#18425.
  * BLAS detection now works also with system-provided libraries not
    available as regular files.  This fixes detection of the
    Accelerate framework on macOS since Big Sur.  Reported by David
    Novgorodsky.
  * download.file() gives a helpful error message in case of an
    invalid download.file.method option, thanks to Colin Fay's report
    in PR#18455.
  * Sporadic crashes of Rterm when using completion have been fixed.
  * Rprof() is now more reliable.  A livelock in thread
    initialization with too short sampling interval has been fixed on
    macOS.  A deadlock in using the C runtime has been fixed on
    Windows.  A potential deadlock has been prevented on Unix.
  * Cursor placement in Rgui now works even after a fixed-width font
    is selected.
  * Mandatory options (options()) are now set on startup so that
    saving and restoring them always works (PR#18372).
  * Package installation, R CMD INSTALL or install.packages(*), now
    parses each of the &lt;pkg&gt;/R/*.R files individually instead of
    first concatenating and then parse()ing the large resulting file.
    This allows parser or syntax errors to be diagnosed with correct
    file names and line numbers, thanks to Simon Dedman's report and
    Bill Dunlap's patch in PR#17859.
    This _does_ require syntactically self contained R source files
    now, fixing another inadvertent bug.
  * predict.lm(&lt;model with offset&gt;) now finds the offset in the
    correct environment, thanks to Andr'e Gillibert's report and patch
    in PR#18456.
  * getInitial(&lt;formula&gt;) now finds the selfStart model in the
    correct environment.  (Reported by Ivan Krylov in PR#18368.)
  * Fix for possible segfault when using recently-added graphics
    features, such as gradients, clipping paths, masks, and groups
    with pdf(file=NULL).
  * class(m) &lt;- class(m) no longer changes a matrix m by adding a
    class _attribute_.
  * packageDate(pkg) now only warns once if there is no pkg.
  * When ts() creates a multivariate time series, "mts", it also
    inherits from "array" now, and is.mts() is documented _and_
    stricter.
  * Rd2txt() now preserves line breaks of \verb Rd content and from
    duplicated \cr.  The former also fixes the rendering of verbatim
    output from Rd \Sexpr in plain-text help.
  * uniroot(f, interval) should no longer wrongly converge _outside_
    the interval in some cases where abs(f(x)) == Inf for an x at the
    interval boundary, thanks to posts by Ben Bolker and Serguei
    Sokol on R-devel.
  * Vectorized alpha handling in palette functions such as in gray(),
    rainbow(), or hcl.colors() works correctly now, thanks to Achim
    Zeileis' report and patch in PR#18476.
  * Formatting and print()ing of bibentry objects has dropped the
    deprecated citation.bibtex.max argument, such that the bibtex
    argument's default for print.bibentry() depends directly on the
    citation.bibtex.max option, whereas in format.bibentry() the
    option no longer applies.
  * Attempting to use a character string naming a foreign function
    entry point in a foreign function call in a package will now
    signal an error if the packages has called R_forceSymbols to
    specify that symbols must be used.
  * An error in table() could permanently set options(warn=2)
    promoting all subsequent warnings to errors.
  * The sigma() function gave misleading results for binary GLMs.  A
    new method for objects of class "glm" returns the square root of
    the estimate of the dispersion parameter using the same
    calculation as summary.glm().
  * bs() and ns() in the (typical) case of automatic knot
    construction, when some of the supposedly inner knots coincide
    with boundary knots, now moves them inside (with a warning),
    building on PR#18442 by Ben Bolker.
  * R CMD on Windows now skips the site profile with --no-site-file
    and --vanilla even when R_PROFILE is set (PR#18512, from Kevin
    Ushey).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1686916800">- CHANGES IN R 4.3.1:
  C-LEVEL FACILITIES:
  * The C-level API version of R's integrate(), Rdqags() in Applic.h,
    now returns the correct number of integrand evaluations neval,
    fixing PR#18515 reported and diagnosed by Stephen Wade.
  * The C prototypes for LAPACK calls dspgv and dtptrs in
    R_exts/Lapack.h had one too many and one too few character length
    arguments - but this has not caused any known issues. To get the
    corrected prototypes, include
    [#]include &lt;Rconfig.h&gt; // for PR18534fixed
    [#]ifdef PR18534fixed
    [#] define usePR18534fix 1
    [#]endif
    [#]include &lt;R_exts/Lapack.h&gt;
    in your C/C++ code (PR#18534).
  INSTALLATION:
  * Many of the checks of esoteric Internet operations and those
    using unreliable external sites have been moved to a new target
    that is not run by default and primarily intended for the core
    developers.  To run them use
    cd tests; make test-Internet-dev
  BUG FIXES:
  * .S3methods(), typically called from methods(), again marks
    methods from package base as visible.
    Also, the visibility of non-base methods is again determined by
    the method's presence in search().
  * tools::Rdiff() is now more robust against invalid strings, fixing
    installation tests on Windows without Rtools installed
    (PR#18530).
  * Fix (new) bug in hcl.colors(2, *), by Achim Zeileis (PR#18523).
  * head(., &lt;illegal&gt;) and tail(..) now produce more useful "Error in
    ...." error messages, fixing PR#18362.
  * Package code syntax on Windows is checked in UTF-8 when UTF-8 is
    the native encoding.
  * na.contiguous(x) now also returns the first run, when it is at
    the beginning and there is a later one of the same length;
    reported to R-devel, including a fix, by Georgi Boshnakov.
    Further, by default, it modifies only an existing attr(*,"tsp")
    but otherwise no longer sets one.
  * chol(&lt;not pos.def&gt;, pivot = &lt;T|F&gt;) now gives a correct error or
    warning message (depending on pivot), thanks to Mikael Jagan's
    (PR#18541).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1699012800">- CHANGES IN R 4.3.2:
  NEW FEATURES:
  * The default initialization of the "repos" option from the
    repositories file at startup can be skipped by setting
    environment variable R_REPOSITORIES to NULL such that
    getOption("repos") is empty if not set elsewhere.
  * qr.X() is now an implicit S4 generic in methods.
  * iconv(to = "ASCII//TRANSLIT") is emulated using substitution on
    platforms which do not support it (notably Alpine Linux).  This
    should give a human-readable conversion in ASCII on all platforms
    (rather than NA_character_).
  * trans3d() gains options continuous and verbose addressing the
    problem of possible "wrap around" when projecting too long
    curves, as reported by Achim Zeileis in PR#18537.
  * tools::showNonASCII() has been rewritten to work better on macOS
    14 (which has a changed implementation of iconv()).
  * tiff(type = "quartz") (the default on macOS) now warns if
    compression is specified: it continues to be ignored.
  INSTALLATION on a UNIX-ALIKE:
  * There is some support for building with Intel's LLVM-based
    compilers on x86_64 Linux, such as (C) icx, (C++) ipcx and
    (Fortran) ifx from oneAPI 2023.x.y.
  * There is support for using LLVM's flang-new as the Fortran
    compiler from LLVM 16.0.x (preferably 17.0.0 or later).
  UTILITIES:
  * R CMD check reports the use of the Fortran 90 random number
    generator RANDOM_NUMBER() and the subroutines to initialize it.
    'Writing R Extensions' has example code to use R's RNGs from
    Fortran.
  BUG FIXES:
  * substr(x, n, L) &lt;- cc now works (more) correctly for multibyte
    UTF-8 strings x when L &gt; nchar(x), thanks to a report and patch
    by 'Architect 95'.
  * contrib.url(character()) now returns 0-length character() as
    documented, which also avoids spurious warnings from
    available.packages() et al. in the edge case of an empty vector
    of repository URLs.
  * readChar(., 4e8) no longer fails, thanks to Kodi Arfer's report
    (PR#18557).
  * lapply(&lt;list&gt;, as.data.frame) no longer warns falsely for some
    base vector components.
  * Communication between parent and child processes in the multicore
    part of parallel could fail on platforms that do not support an
    arbitrarily large payload in system functions read()/write() on
    pipes (seen on macOS where a restriction to INT_MAX bytes is
    documented, without doing a partial read unlike Linux). The
    payload is now split into 1Gb chunks to avoid that problem.
    (PR#18571)
  * qqplot(x,y, conf.level=.) gives better confidence bounds when
    length(x) != length(y), thanks to Alexander Ploner's report and
    patch proposal (PR#18557).
  * norm(&lt;0-length&gt;, "2") now gives zero instead of an error, as all
    the other norm types, thanks to Mikael Jagan's PR#18542.
  * Build-stage Rd macros \packageAuthor and \packageMaintainer now
    process Authors@R, fixing NA results when the package DESCRIPTION
    omits Author and Maintainer fields.
  * Formatting and printing complex numbers could give things like
    0.1683-0i because of rounding error: -0i is now replaced by +0i.
  * postscript() refused to accept a title comment containing the
    letter "W" (PR#18599).
  * isoreg(c(1,Inf)) signals an error instead of segfaulting, fixing
    PR#18603.
  * tiff(type = "Xlib") was only outputting the last page of
    multi-page plots.
  * tools::latexToUtf8() again knows about \~{n} and other letters
    with tilde, fixing a regression in R 4.3.0, and about \^{i} as an
    alternative to \^{\i} (similarly with other accents).
    Furthermore, LaTeX codes for accented I letters are now correctly
    converted, also fixing related mistakes in
    tools::encoded_text_to_latex().
  * tar(*, tar = "internal") no longer creates out-of-spec tar files
    in the very rare case of user or group names longer than 32
    bytes, fixing PR#17871 with thanks to Ivan Krylov.
  * When using the "internal" timezone datetime code, adding a
    fraction of a second no longer adds one second, fixing PR#16856
    from a patch by Ivan Krylov.
  * tools::checkRd() no longer produces spurious notes about
    "unnecessary braces" from multi-line Rd results of \Sexpr macros.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1709208000">- CHANGES IN R 4.3.3:
  NEW FEATURES:
  * iconv() now fixes up variant encoding names such as "utf8"
    case-insensitively.
  DEPRECATED AND DEFUNCT:
  * The legacy encoding = "MacRoman" is deprecated in pdf() and
    postscript(): support was incomplete in earlier versions of R.
  BUG FIXES:
  * Arguments are now properly forwarded to methods on S4 generics
    with ... in the middle of their formal arguments. This was broken
    for the case when a method introduced an argument but did not
    include ... in its own formals. Thanks to Herv'e Pag`es for the
    report PR#18538.
  * Some invalid file arguments to pictex(), postscript() and xfig()
    opened a file called NA rather than throw an error.  These
    included postscript(NULL) (which some people expected to work
    like pdf(NULL)).
  * Passing filename = NA to svg(), cairo_pdf(), cairo_ps() or the
    Cairo-based bitmap devices opened a file called NA: it now throws
    an error.
  * quartz(file = NA) opened a file called NA, including when used as
    a Quartz-based bitmap device.  It now gives an error.
  * rank(&lt;long vector&gt;) now works, fixing PR#18617, thanks to Ilia
    Kats.
  * seq.int() did not adequately check its length.out argument.
  * match(&lt;POSIXct&gt;, .) is correct again for differing time zones,
    ditto for "POSIXlt", fixing PR#18618 reported by Bastian Klein.
  * drop.terms(*, dropx = &lt;0-length&gt;) now works, fixing PR#18563 as
    proposed by Mikael Jagan.
  * drop.terms(*) keeps + offset(.) terms when it should, PR#18565,
    and drop.terms() no longer makes up a response, PR#18566, fixing
    both bugs thanks to Mikael Jagan.
  * getS3method("t", "test") no longer finds the t.test() function,
    fixing PR#18627.
  * pdf() and postscript() support for the documented Adobe encodings
    "Greek" and "Cyrilllic" was missing (although the corresponding
    Windows' codepages could be used).
  * Computations of glyph metric information for pdf() and
    postscript() did not take into account that transliteration could
    replace one character by two or more (only seen on macOS 14) and
    typically warned that the information was not known.
  * rank(x) no longer overflows during integer addition, when
    computing rank average for largish but not-yet long vector x,
    fixing PR#18630, thanks to Ilia Kats.
  * list.files() on Windows now returns also files with names longer
    that 260 bytes (the Windows limit is 260 characters).
    Previously, some file names particularly with 'East Asian'
    characters were omitted.
  * cov2cor(&lt;0 x 0&gt;) now works, fixing PR#18423 thanks to Mikael
    Jagan and Elin Waring.
  * cov2cor(&lt;negative diagonal&gt;) and similar now give one warning
    instead of two, with better wording, fixing PR#18424 thanks to
    Mikael Jagan.
  * tools:: startDynamicHelp() now ensures port is in proper range,
    fixing PR#18645.
  * pbeta(x, a,b) is correct now for x=0 or 1 in the boundary cases
    where a or b or both are 0, fixing PR#18672 thanks to Michael
    Fay.
  * pmatch(x, table) for large table, also called for data frame row
    selection, dfrm[nm, ], is now interruptible, fixing PR#18656.
  * predict(&lt;rank-deficient lm&gt;, newdata=*) fix computing of nbasis,
    see Russ Lenth's comment 29 in PR#16158.
  * Added a work-around for a bug in macOS 14.3.1 and higher which
    prevents R plots in the Quartz Cocoa device from updating on
    screen.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1713960000">- CHANGES IN R 4.4.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Startup banners, R --version, sessionInfo() and R CMD check no
    longer report (64-bit) as part of the platform as this is almost
    universal - the increasingly rare 32-bit platforms will still
    report (32-bit).
    On Windows, ditto for window titles.
  * is.atomic(NULL) now returns FALSE, as NULL is not an atomic
    vector.  Strict back-compatibility would replace is.atomic(foo)
    by (is.null(foo) || is.atomic(foo)) but should happen only
    sparingly.
  NEW FEATURES:
  * The confint() methods for "glm" and "nls" objects have been
    copied to the stats package.  Previously, they were stubs which
    called versions in package MASS. The MASS namespace is no longer
    loaded if you invoke (say) confint(glmfit).  Further, the "glm"
    method for profile() and the plot() and pairs() methods for class
    "profile" have been copied from MASS to stats.  (profile.nls()
    and plot.profile.nls() were already in stats.)
  * The confint() and profile methods for "glm" objects have gained a
    possibility to do profiling based on the Rao Score statistic in
    addition to the default Likelihood Ratio. This is controlled by a
    new test = argument.
  * The pairs() method for "profile" objects has been extended with a
    which = argument to allow plotting only a subset of the
    parameters.
  * The "glm" method for anova() computes test statistics and
    p-values by default, using a chi-squared test or an F test
    depending on whether the dispersion is fixed or free.  Test
    statistics can be suppressed by giving argument test a false
    logical value.
  * In setRepositories() the repositories can be set using their
    names via name = instead of index ind =.
  * methods() and .S3methods() gain a all.names option for the (rare)
    case where functions starting with a . should be included.
  * Serializations can now be interrupted (e.g., by Ctrl-C on a
    Unix-alike) if they take too long, e.g., from save.image(),
    thanks to suggestions by Ivan Krylov and others on R-devel.
  * New startup option --max-connections to set the maximum number of
    simultaneous connections for the session.  Defaults to 128 as
    before: allowed values up to 4096 (but resource limits may in
    practice restrict to smaller values).
  * R on Windows (since Windows 10 2004) now uses the new Segment
    Heap allocator. This may improve performance of some
    memory-intensive applications.
  * When R packages are built, typically by R CMD build &lt;pkg&gt;, the
    new --user=&lt;build_user&gt; option overrides the (internally
    determined) user name, currently Sys.info()["user"] or LOGNAME.
    This is a (modified) fulfillment of Will Landau's suggestion in
    PR#17530.
  * tools::testInstalledBasic() gets new optional arguments outDir
    and testSrcdir, e.g., allowing to use it in a &lt;builddir&gt; !=
    &lt;srcdir&gt; setup, and in standard "binary" Windows installation
  * if* a source tests/ folder is present.
  * range(&lt;DT_with_Inf&gt;, finite = TRUE) now work for objects of class
    "Date", "POSIXct", and "POSIXlt" with infinite entries,
    analogously to range.default(), as proposed by Davis Vaughan on
    R-devel.  Other range()-methods can make use of new function
    .rangeNum().
  * New .internalGenerics object complementing .S3PrimitiveGenerics,
    for documentation and low-level book-keeping.
  * grid() now invisibly returns the x- and y- coordinates at which
    the grid-lines were drawn.
  * norm(., type) now also works for complex matrices.
  * kappa(., exact = TRUE, norm = *) now works for all norms and also
    for complex matrices.  In symmetric / triangular cases, the new
    argument uplo = "U" | "L" allows the upper or lower triangular
    part to be specified.
  * memDecompress(type = "unknown") recognizes compression in the
    default 'zlib' format as used by memCompress(type = "gzip").
  * memCompress() and memDecompress() will use the libdeflate library
    (&lt;https://github.com/ebiggers/libdeflate&gt;) if installed.  This
    uses the same type of compression for type = "gzip" but is 1.5-2x
    faster than the system libz library on some common platforms: the
    speed-up may depend on the library version.
  * diff() for objects of class "Date", "POSIXct", and "POSIXlt"
    accepts a units argument passed via ....
  * Dynamic help now does a much better job of rendering package
    DESCRIPTION metadata.
  * Rprof() gains an event argument and support for elapsed (real)
    time profiling on Unix (PR#18076).
  * filled.contour() gains a key.border argument.
  * tools::update_pkg_po() gets arguments pot_make and mo_make for
    _not_ re-making the corresponding files, and additionally a
    verbose argument.
  * Hexadecimal string colour specifications are now accepted in
    short form, so, for example, we can use "#123", which is
    equivalent to "#112233".
    Thanks to MikeFC for the original idea and Ella Kaye, Malcolm
    Barrett, George Stagg, and Hanne Oberman for the patch.
  * Plain-text help shows \var markup by angle brackets.
  * The new experimental primitive function declare() is intended to
    eventually allow information about R code to be communicated to
    the interpreter, compiler, and code analysis tools. The syntax
    for declarations is still being developed.
  * Functions psmirnov(), qsmirnov() and rsmirnov() in package stats
    have had argument two.sided renamed to alternative, to take into
    account that the permutation distributions of the one-sided
    statistics can be different in the case of ties.  Consequence of
    PR#18582.
  * sort() is now an implicit S4 generic in methods.
  * Formatting and printing, format(z), print(z), of complex vectors
    z no longer zap relatively small real or imaginary parts to zero,
    fixing PR#16752.  This is an API change, as it was documented
    previously to round real and imaginary parts together on purpose,
    producing nicer looking output.  As mentioned, e.g. in the PR,
    this change is compatible with many other "R-like" programming
    environments.
    We have simplified the internal code and now basically format the
    real and imaginary parts independently of each other.
  * New experimental functions Tailcall() and Exec() to support
    writing stack-space-efficient recursive functions.
  * Where characters are attempted to be plotted by pdf(),
    postscript() and xfig() which are not in the selected 8-bit
    character set (most often Latin-1) and the R session is using a
    UTF-8 locale, the warning messages will show the UTF-8 character
    rather than its bytes and one dot will be substituted per
    character rather than per byte.  (Platforms whose iconv() does
    transliteration silently plot the transliteration.)
    In a UTF-8 locale some transliterations are now done with a
    warning (e.g., dashes and Unicode minus to hyphen, ligatures are
    expanded, permille (‰) is replaced by o/oo), although the OS may
    have got there first.  These are warnings as they will continue
    to be replaced by dots in earlier versions of R.
  * The matrix multiplication functions crossprod() and tcrossprod()
    are now also primitive and S3 generic, as %*% had become in R
    4.3.0.
  * source() and example() have a new optional argument catch.aborts
    which allows continued evaluation of the R code after an error.
  * The non-Quartz tiff() devices allow additional types of
    compression if supported by the platform's libtiff library.
  * The list of base and recommended package names is now provided by
    tools::standard_package_names().
  * cairo_pdf() and cairo_ps() default to onefile = TRUE to closer
    match pdf() and postscript().
  * New option catch.script.errors provides a documented way to catch
    errors and then continue in non-interactive use.
  * L %||% R newly in base is an expressive idiom for the phrases
    if(!is.null(L)) L else R or if(is.null(L)) R else L.
  * The return value from warnings() now always inherits from
    "warnings" as documented, now also in the case of no warnings
    where it previously returned NULL.
  * as.complex("1i") now returns 0 + 1i instead of NA with a warning.
  * z &lt;- c(NA, 1i) now keeps the imaginary part Im(z[1]) == 0, no
    longer coercing to NA_complex_.  Similarly, cumsum(z) correctly
    sums real and imaginary parts separately, i.e., without
    "crosstalk" in case of NAs.
  * On Alpine Linux iconv() now maps "latin2", "latin-2", "latin9"
    and "latin-9" to encoding names the OS knows about
    (case-insensitively).
  * iconv(sub = "Unicode") now always zero-pads to four (hex) digits,
    rather than to 4 or 8.  (This seems to have become the convention
    once Unicode restricted the number of Unicode points to 2^21 - 1
    and so will never need more than 6 digits.)
  * NCOL(NULL) now returns 0 instead of 1, for consistency with
    cbind().
  * The information for the Euro glyph missing from the Adobe .afm
    files for the Courier, Helvetica and Times families has been
    copied from their URW equivalents - this will improve vertical
    centring in the pdf() and postscript() devices.
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.12.0.  The changes are almost entirely cosmetic.
  * The included LAPACK sources have been updated to version 3.12.0
    and some further double-complex routines added.
  * There are new font families for the 2014--5 URW 2.0 fonts (see
    ?pdf) which are included in recent versions of Ghostscript.
    These have font widths for most Greek glyphs and a few others
    which were missing from the original versions (whose font
    families remain available for reproducibility, although
    Ghostscript-based viewers will render using the 2.0 versions).
  * Improve the large-n efficiency of as.matrix(&lt;dist&gt;), thanks an R
    contributors effort, notably by Tim Taylor and Heather Turner,
    see PR#18660.
  * The default and numeric methods of all.equal() get a check.class
    option.
  * zapsmall() gets new optional arguments, function mFUN and min.d,
    for extra flexibility; fulfills a wish in PR#18199.  Also, it is
    now an implicit S4 generic in package methods.
  * The Rd filter for aspell() gains an ignore argument.
  * New generic function sort_by(), primarily useful for the
    data.frame method which can be used to sort rows of a data frame
    by one or more columns.
  * The icence headers for the RPC code in src/extra/xdr have been
    updated to use the GPL-compatible licence published by Oracle
    America in 2010.
  * New function pkg2HTML() in tools to create single-page HTML
    reference manuals for R packages.
  * The byte code evaluator now uses less C stack space for recursive
    calls to byte-compiled functions. It also makes more of an effort
    to avoid allocations for scalar return values.
  * New completion option backtick (disabled by default) allows
    non-syntactic completions to be wrapped in backquotes. This is
    currently only useful for Jupyter notebooks via the IRkernel
    package, and may cause problems for other backends.
  INSTALLATION:
  * The parser has been updated to work with bison 3.8.2, which is
    now used for the pre-generated parsers in gram.c, file.c, and
    gramRd.c. A few parser error messages have changed, which may
    affect code that relies on exact messages.
  INSTALLATION on a UNIX-ALIKE:
  * System valgrind headers are now required to use configure option
  - -with-valgrind-instrumentation with value 1 or 2.
  * configure will warn if it encounters a 32-bit build, as that is
    nowadays almost untested.
  * Environment variable R_SYSTEM_ABI is no longer used and so no
    longer recorded in etc/Renviron (it was not on Windows and was
    only ever used when preparing package tools).
  * If the libdeflate library and headers are available, libdeflate
    rather than libz is used to (de)compress R objects in lazy-load
    databases.  Typically tasks spend up to 5% of their time on such
    operations, although creating lazy-data databases is one of the
    exceptions.
    This can be suppressed if the library is available by the
    configure option --without-libdeflate-compression.
  * configure option --enable-lto=check has not worked reliably since
    2019 and has been removed.
  * The minimum autoconf requirement for a maintainer build has been
    increased to autoconf 2.71.
    It is intended to increase this to 2.72 for R 4.5.0: the
    distributed configure file was generated using 2.72.
  * The minimum version requirement for an external LAPACK has been
    reduced to 3.9.0.
  * No default C++ compiler is set if no C++17 compiler is detected:
    there is no longer an automatic fallback to C++14 or C++11.
    Compilers from the last five years should have sufficient
    support: for others macros CXX and CXXSTD can be set in file
    config.site to provide a fallback if needed.
    The Objective-C++ compiler now by default uses the standard
    selected by R for C++ (currently C++17) rather than the default
    standard for the C++ compiler (which on macOS is still C++98).
  INSTALLATION on macOS:
  * A new configure option --with-newAccelerate makes use of Apple's
    'new' BLAS / LAPACK interfaces in their Accelerate framework.
    Those interfaces are only available in macOS 13.3 or later, and
    building requires SDK 13.3 or later (from the Command Line Tools
    or Xcode 14.3 or later).
    By default the option uses new Accelerate for BLAS calls: to also
    use it for LAPACK use option --with-newAccelerate=lapack.  The
    later interfaces provide LAPACK 3.9.1 rather than 3.2.1: 3.9.1 is
    from 2021-04 and does not include the improved algorithms
    introduced in LAPACK 3.10.0 (including for BLAS calls).
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools44, an update of the Rtools43 toolchain.  It is
    based on GCC 13 and newer versions of MinGW-W64, binutils and
    libraries (targeting 64-bit Intel CPUs).  R-devel can no longer
    be built using Rtools43 without changes.
  * Rtools44 has experimental support for 64-bit ARM (aarch64) CPUs
    _via_ the LLVM 17 toolchain using lld, clang/flang-new and
    libc++.
  UTILITIES:
  * R CMD check notes when S4-style exports are used without
    declaring a strong dependence on package methods.
  * tools::checkRd() (used by R CMD check) detects more problems with
    \Sexpr-based dynamic content, including bad nesting of \Sexprs
    and invalid arguments.
  * tools::checkRd() now reports Rd titles and section names ending
    in a period; this is ignored by R CMD check unless environment
    variable _R_CHECK_RD_CHECKRD_MINLEVEL_ is set to -5 or smaller.
  * R CMD check now notes Rd files without an \alias, as long
    documented in 'Writing R Extensions' §1.3.1.  The check for a
    missing \description has been moved from tools::checkRd() to
    tools::checkRdContents().
  * R CMD check now visits inst/NEWS.Rd and OS-specific man
    subdirectories when checking Rd files.
  * tools::checkDocFiles() and tools::checkRdContents() now also
    check internal Rd files by default, but "specially" (ignoring
    missing documentation of arguments).
  * R CMD Rdiff gets option --useEx.
  * R CMD check now warns on non-portable uses of Fortran KIND such
    as INTEGER(KIND=4) and REAL(KIND=8).
    To see the failing lines set environment variable
    _R_CHECK_FORTRAN_KIND_DETAILS_ to a true value.
  * When checking Rd files, R CMD check now notes some of the "lost
    braces" that tools::checkRd() finds.  Typical problems are Rd
    macros missing the initial backslash (e.g., code{...}), in-text
    set notation (e.g., {1, 2}, where the braces need escaping), and
    \itemize lists with \describe-style entries of the form
    \item{label}{description}.
  * R CMD INSTALL (and hence check) will compile C++ code with
  - DR_NO_REMAP if environment variable _R_CXX_USE_NO_REMAP_ is set
    to a true value.  It is planned that this will in future become
    the default for compiling C++.
  * The new built-in Rd macro \dontdiff{} can be used to mark example
    code whose output should be ignored when comparing check output
    to reference output (tests/Examples/&lt;pkg&gt;-Ex.Rout.save).  The
    \dontdiff tag, like \donttest, is _not_ shown on the rendered
    help page, so provides a clean alternative to ##
    IGNORE_RDIFF_(BEGIN|END) comments.
  * R CMD build when there is no NAMESPACE, now uses the recommended
    exportPattern("^[^.]"), instead of exporting everything.
  * R CMD check now warns about non-ASCII characters in the NAMESPACE
    file (in addition to R files). Such packages are not portable and
    may fail to install on some platforms.
  C-LEVEL FACILITIES:
  * Headers R_ext/Applic.h and R-ext/Linpack.h used to include
    R_ext/BLAS.h although this was undocumented and unneeded by their
    documented entry points.  They no longer do so.
  * New function R_missing(), factored out from do_missing(), used to
    fix PR#18579.
  * SEXP type S4SXP has been renamed to OBJSXP to support
    experimenting with alternative object systems.  The S4SXP value
    can still be used in C code but is now deprecated.  Based on
    contributions from the R Consortium's Object-Oriented Programming
    Working Group.
  * New function pow1p(x,y) for accurate (1+x)^y.
  * mkCharLenCE was incorrectly documented to take a size_t length
    but was implemented with int (and character strings in R are
    limited to 2^31 - 1 bytes).
  DEPRECATED AND DEFUNCT:
  * data() no longer handles zipped data from long-defunct (since R
    2.13.0) --use-zip-data installations.
  * The legacy graphics devices pictex() and xfig() are now
    deprecated.  They do not support recent graphics enhancements and
    their font handling is rudimentary. The intention is to retain
    them for historical interest as long as they remain somewhat
    functional.
  * Support for encoding = "MacRoman" has been removed from the pdf()
    and postscript() devices - this was a legacy encoding supporting
    classic macOS up to 2001 and no longer has universal libiconv
    support.
  * is.R() is deprecated as no other S dialect is known to be in use
    (and this could only identify historical dialects, not future
    ones).
    Further information on calls can be obtained by setting the
    environment variable _R_DEPRECATED_IS_R_ to error which turns the
    deprecation warning into an error and so by default gives a
    traceback.  (This is done by R CMD check --as-cran.)
  * UseMethod() no longer forwards local variables assigned in the
    generic function into method call environments before evaluating
    the method body. This makes method calls behave more like
    standard function calls and makes method code easier to analyze
    correctly.
  * The twelve as.data.frame.&lt;class&gt;() methods which were deprecated
    only via _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ and in R CMD
    check --as-cran are formally deprecated now in favour of calling
    as.data.frame() or as.data.frame.vector().  The deprecation
    "check" now works also when as.data.frame() is S4 generic thanks
    to Ivan Krylov.
  * The default method for the directional comparison operators &lt;, &gt;,
    &lt;=, and &gt;= now signals an error when one of the operands is a
    language object, i.e. a symbol or a call.
  * For terms.formula(), deprecate abb and neg.out arguments
    _formally_ in addition to just documenting it.
  BUG FIXES:
  * The methods package is more robust to not being attached to the
    search path.  More work needs to be done.
  * pairwise.t.test() misbehaved when subgroups had 0 DF for
    variance, even with pool.sd = TRUE.  (PR#18594 by Jack Berry).
  * Probability distribution functions [dpq]&lt;distrib&gt;(x, *), but also
    bessel[IKJY](x, .) now consistently preserve attributes(x) when
    length(x) == 0, e.g., for a 2 x 0 matrix, thanks to Karolis
    Koncevičius' report PR#18509.
  * Group "Summary" computations such as sum(1:3, 4, na.rm = 5, NA,
    7, na.rm = LL) now give an error instead of either 17 or NN for
    LL true or false, as proposed by Ivan Krylov on the R-devel
    mailing list.  (This also means it is now an error to specify
    na.rm more than once.)
  * as.complex(x) now returns complex(real = x, imaginary = 0) for
    _all_ numerical and logical x, notably also for NA or
    NA_integer_.
  * Directories are now omitted by file.copy(, recursive = FALSE) and
    in file.append() (PR#17337).
  * gsub() and sub() are now more robust to integer overflow when
    reporting errors caused by too large input strings (PR#18346).
  * Top-level handlers are now more robust to attempts to remove a
    handler whilst handlers are running (PR#18508).
  * The handling of Alt+F4 in dialogs created on Windows using
    GraphApp has been fixed (PR#13870).
  * density() more consistently computes grid values for the
    FFT-based convolution, following Robert Schlicht's analysis and
    proposal in PR#18337, correcting density values typically by a
    factor of about 0.999.  Argument old.coords = TRUE provides back
    compatibility.
  * palette.colors() gains a name argument that defaults to FALSE
    controlling whether the vector of colours that is returned has
    names (where possible).  PR#18529.
  * tools::xgettext() no longer extracts the (non-translatable) class
    names from warningCondition and errorCondition calls.
  * S3method(&lt;gen&gt;, &lt;class&gt;, &lt;func&gt;) in the NAMESPACE file now works
    (again) when &lt;func&gt; is visible from the namespace, e.g.,
    imported, or in base.
  * getParseData(f) now also works for a function defined in the
    first of several &lt;pkg&gt;/R/*.R source files, thanks to Kirill
    Müller's report and Duncan Murdoch's patch in PR#16756.
  * Rd \Sexpr macros with nested #ifdef conditionals were not
    processed.
  * A non-blocking connection with non-default encoding (such as a
    socket) now correctly returns from readLines() after new data has
    arrived also when its EOF had been reached previously.  Thanks to
    Peter Meilstrup's report on R-devel and Ivan Krylov's report and
    patch proposal in PR#18555.
  * tools::checkRdContents() failed to detect empty argument
    descriptions when they spanned multiple lines, including those
    generated by prompt().  These cases are now noted by R CMD check.
  * Plain-text help no longer outputs spurious colons in the
    arguments list (for multi-line \item labels in the Rd source).
  * kappa() and rcond() work correctly in more cases; kappa(., norm =
    "2") now warns that it computes the 1-norm with (default) exact =
    FALSE; prompted by Mikael Jagan's quite comprehensive PR#18543.
  * Rd skeletons generated by prompt() or promptData() now use a
    dummy title (so R CMD build works).  tools::checkRdContents() has
    been updated to detect such template leftovers, including from
    promptPackage().
  * When S4 method dispatch fails because no method was found, the
    error message now includes the signature argument names; thanks
    to Michael Chirico's proposal on the R-devel list.
  * withAutoprint({ .. }) now preserves srcrefs previously lost,
    thanks to Andrew Simmons' report plus fix in PR#18572.
  * transform.data.frame() no longer adjusts names; in particular,
    untransformed variables are kept as-is, including those with
    syntactically invalid names (PR#17890).
  * The keep.source option for Rd \Sexpr blocks is no longer ignored.
  * The formula methods for t.test() and wilcox.test() now catch when
    paired is passed, addressing PR#14359; use Pair(x1, x2) ~ 1 for a
    paired test.
  * The level reported in the browser prompt was often too large. It
    now shows the number of browser contexts on the stack.
  * For cbind() and rbind(), the optional deparse.level argument is
    now properly passed to methods, thanks to Mikael Jagan's PR#18579
    and comments there.
  * Some error and warning messages for large ('long vector')
    matrix(v, nr, nc) and dim(m) &lt;- d are now correct about sizes,
    using long long formatting, fixing PR#18612 (and more) reported
    by Mikael Jagan.
  * readChar(useBytes = TRUE) now terminates strings even when the
    underlying connection uses extra spaces in the input buffer.
    This fixes problems with extra garbage seen with gzip
    connections, PR#18605.
  * Named capture in PCRE regular expressions now works also with
    more than 127 named groups (PR#18588).
  * Datetime functions are now robust against long jumps when dealing
    with internal time zone changes.  This avoids confusing warnings
    about an invalid time zone, previously triggered by turning
    warnings into errors or handling them via tryCatch (PR#17966,
    PR#17780).
  * Datetime functions now restore even an empty TZ environment
    variable after internal time zone changes (PR#17724).  This makes
    results of datetime functions with this (typically unintentional)
    setting more predictable.
  * drop.terms(*) now drops response as by default, keep.response =
    FALSE, fixing PR#18564 thanks to Mikael Jagan.
  * dummy.coef(.) now also works for lm()-models with character
    categorical predictor variables rather than factor ones, fixing
    PR#18635 reported by Jinsong Zhao.
  * formals(f) &lt;- formals(f) now also works for a function w/o
    arguments and atomic _constant_ body(f).
  * Correct as.function(&lt;invalid list&gt;, .)'s error message.
  * removeSource() is yet more thorough in finding and removing
    "srcref" and the other source references from parsed R language
    chunks, fixing PR#18638 thanks to Andrew Simmons.
  * dgeom() is more accurate now, notably when its result is very
    small, fixing PR#18642 thanks to the proposal of Morten Welinder,
    also improving other instances where C level binom_raw(x, n, ..)
    has x == 0 or x== n.
  * warning() with options(warn = 1) has improved output for
    multi-line messages.
  * axis.Date() and axis.POSIXct() now respect the par("lab") setting
    for the number of pretty() intervals.
  * Comparisons for language objects (which are based on deparsing)
    are now more careful about using accurate deparsed results
    (PR#18676).
  * Plain-text help (Rd2txt) now correctly preserves blank lines
    following single-line \dontrun code.
  * &lt;POSIXlt&gt;[*] no longer sets wrong "balanced" attribute, fixing
    PR#18681 thanks to Mikael Jagan.
  * str(&lt;classed-call&gt;) now deparses the call as expected, fixing
    PR#18684, reported by Dave Slager.
  * In Rd examples, code following the closing brace of a \dontrun,
    \dontshow or \donttest tag on the same line is no longer skipped
    when R CMD check runs the examples.
  * as.data.frame(matrix(*, ncol=0)) now gets valid names() and
    colnames(); reported by Davis Vaughan on the R-devel list.
  * Internal Mathlib function stirlerr(n) is now almost fully
    (52-bit) accurate for all n &gt;= ~5.9 and more accurate also in the
    range 1 -- 5.9.  This entails small ("after 12th decimal")
    changes in density functions, e.g., dgamma() in _some_ regions of
    their support.  The fix was partly prompted by Morten Welinder's
    PR#18640.
  * Numbers like 9876543.2 are now considered non-integer by Mathlib
    internal R_nonint(), amending original fix of PR#15734.
  * Rd comment lines no longer cause broken paragraphs in the
    rendered PDF and plain-text help. In code blocks, pure comment
    lines (starting with %) no longer produce an empty line.
  * xtabs(Freq ~ .) now consistently defaults to na.action = na.pass,
    using na.rm = FALSE (added as an argument) when summing over Freq
    (PR#17770).
  * tools::testInstalledPackage() is no longer silent about failures
    from running examples or tests and its return code no longer
    ignores failures from checking vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1718366400">- CHANGES IN R 4.4.1:
  C-LEVEL FACILITIES:
  * Functions R_atof and R_strtod declared in header R_ext/Utils.h
    are now documented in 'Writing R Extensions' and so formally part
    of the API.
  * The non-API entry points Rf_setSVector, Rf_StringFalse,
    Rf_StringTrue and Rf_isBlankString have been added to those
    reported by R CMD check.
  * The new function Rf_allocLang is now available. This provides an
    alternative to the idiom of calling Rf_allocList followed by
    SET_TYPEOF.
  UTILITIES:
  * R CMD check now reports as warnings what gfortran calls 'Fortran
    2018 deleted features', all of which have long been marked as
    'obsolescent' and some of which were deleted in Fortran 2008 or
    earlier.  Fortran compilers are no longer required to support
    these.
  BUG FIXES:
  * as.numeric(), scan(), type.convert() and other places which use
    the internal C function R_strtod now require a _non-empty_ digit
    sequence in a decimal or binary exponent.  This aligns with the
    C/POSIX standard for strtod and with ?NumericConstants.
  * as.data.frame(m, make.names=NA) now works correctly for a matrix
    m with NA's in row names.
  * The error message from &lt;POSIXlt&gt;[["hour"]] and similar now
    mentions *[[, "hour"]], as wished for in PR#17409 and proposed by
    Michael Chirico.
  * qbinom() and potentially qpois(), qnbinom(), no longer sometimes
    fail accurate inversion (of pbinom(), etc), thanks to Christopher
    Chang's report and patch in PR#18711.
  * The internal help server on Windows can again serve requests sent
    in quick succession, fixing a regression in R 4.4.0.
  * debugcall(&lt;S3Generic&gt;()) now also works when a corresponding
    S4-generic version is in the methods cache (PR#18143).
  * Package tools' toTitleCase(ch0) now returns character(0) when ch0
    is of zero length; fixing PR#18724, reported by David Hugh Jones.
  * R CMD check is no longer broken (without a check result and no
    explanation in 00check.log) for a package which declares an
    invalid VignetteBuilder in DESCRIPTION but has no vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1730376000">- CHANGES IN R 4.4.2:
  C-LEVEL FACILITIES:
  * The S-compatibility macros F77_COM and F77_COMDECL defined in
    header R_ext/RS.h are deprecated and will be removed shortly.  We
    could find no record of their use.
  BUG FIXES:
  * Mathlib function lgammacor(x) no longer warns about underflow to
    zero for large x.
  * Text widths and heights were incorrectly reported by the Quartz
    device if the drawing context didn't exist yet (typically when
    drawing off-screen to a window that is yet to appear, see
    PR#18591).
  * The Quartz device could segfault in cases where paths with spaces
    are used in the new glyph drawing API.  Thanks to Tomek
    Gieorgijewski (PR#18758).
  * On macOS in R CRAN builds, it is again possible to read
    little-endian UTF-16 text with a BOM from a connection using
    encoding="UTF-16".  Users building R from source should avoid
    using the system libiconv in macOS 14.1 and later.
  * methods' internal .requirePackage() now re-enables primitive
    method dispatch when needed; thanks to Ivan Krylov for
    demystifying CRAN package check failures on the R-devel mailing
    list.</changelog>
</package>
<package pkgid="7a27da8e239c65f2679d426188ffc6f2365460831295ec05efe7dc98f77ef84764d8108b179abd4f928d068dab2ef57e97c5fcc172ba5d8b4920a45c0f04557b" name="R-lattice-debuginfo" arch="x86_64">
  <version epoch="0" ver="0.22.6" rel="51.0.2.2.sr20241103"/>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1620302400">- To get in sync with d:l:R:autoCRAN the Matrix package's split
  in -devel was reversed.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339200">- improved spec file according to comments of dimstar in
  https://build.opensuse.org/request/show/892685</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339201">- CHANGES IN R 4.1.0:
  FUTURE DIRECTIONS:
  * It is planned that the 4.1.x series will be the last to support
    32-bit Windows, with production of binary packages for that
    series continuing until early 2023.
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Data set esoph in package datasets now provides the correct
    numbers of controls; previously it had the numbers of cases added
    to these.  (Reported by Alexander Fowler in PR#17964.)
  NEW FEATURES:
  * www.omegahat.net is no longer one of the repositories known by
    default to setRepositories().  (Nowadays it only provides source
    packages and is often unavailable.)
  * Function package_dependencies() (in package tools) can now use
    different dependency types for direct and recursive dependencies.
  * The checking of the size of tarball in R CMD check --as-cran
    &lt;pkg&gt; may be tweaked via the new environment variable
    _R_CHECK_CRAN_INCOMING_TARBALL_THRESHOLD_, as suggested in
    PR#17777 by Jan Gorecki.
  * Using c() to combine a factor with other factors now gives a
    factor, an ordered factor when combining ordered factors with
    identical levels.
  * apply() gains a simplify argument to allow disabling of
    simplification of results.
  * The format() method for class "ftable" gets a new option justify.
    (Suggested by Thomas Soeiro.)
  * New ...names() utility.  (Proposed by Neal Fultz in PR#17705.)
  * type.convert() now warns when its as.is argument is not
    specified, as the help file always said it _should_.  In that
    case, the default is changed to TRUE in line with its change in
    read.table() (related to stringsAsFactor) in R 4.0.0.
  * When printing list arrays, classed objects are now shown _via_
    their format() value if this is a short enough character string,
    or by giving the first elements of their class vector and their
    length.
  * capabilities() gets new entry "Rprof" which is TRUE when R has
    been configured with the equivalent of --enable-R-profiling (as
    it is by default).  (Related to Michael Orlitzky's report
    PR#17836.)
  * str(xS4) now also shows extraneous attributes of an S4 object
    xS4.
  * Rudimentary support for vi-style tags in rtags() and R CMD rtags
    has been added.  (Based on a patch from Neal Fultz in PR#17214.)
  * checkRdContents() is now exported from tools; it and also
    checkDocFiles() have a new option chkInternal allowing to check
    Rd files marked with keyword "internal" as well.  The latter can
    be activated for R CMD check via environment variable
    _R_CHECK_RD_INTERNAL_TOO_.
  * New functions numToBits() and numToInts() extend the raw
    conversion utilities to (double precision) numeric.
  * Functions URLencode() and URLdecode() in package utils now work
    on vectors of URIs.  (Based on patch from Bob Rudis submitted
    with PR#17873.)
  * path.expand() can expand ~user on most Unix-alikes even when
    readline is not in use.  It tries harder to expand ~, for example
    should environment variable HOME be unset.
  * For HTML help (both dynamic and static), Rd file links to help
    pages in external packages are now treated as references to
    topics rather than file names, and fall back to a file link only
    if the topic is not found in the target package. The earlier rule
    which prioritized file names over topics can be restored by
    setting the environment variable _R_HELP_LINKS_TO_TOPICS_ to a
    false value.
  * c() now removes NULL arguments before dispatching to methods,
    thus simplifying the implementation of c() methods, _but_ for
    back compatibility keeps NULL when it is the first argument.
    (From a report and patch proposal by Lionel Henry in PR#17900.)
  * Vectorize()'s result function's environment no longer keeps
    unneeded objects.
  * Function ...elt() now propagates visibility consistently with
    ..n.  (Thanks to Lionel Henry's PR#17905.)
  * capture.output() no longer uses non-standard evaluation to
    evaluate its arguments.  This makes evaluation of functions like
    parent.frame() more consistent.  (Thanks to Lionel Henry's
    PR#17907.)
  * packBits(bits, type="double") now works as inverse of
    numToBits().  (Thanks to Bill Dunlap's proposal in PR#17914.)
  * curlGetHeaders() has two new arguments, timeout to specify the
    timeout for that call (overriding getOption("timeout")) and TLS
    to specify the minimum TLS protocol version to be used for
    https:// URIs (_inter alia_ providing a means to check for sites
    using deprecated TLS versions 1.0 and 1.1).
  * For nls(), an optional constant scaleOffset may be added to the
    denominator of the relative offset convergence test for cases
    where the fit of a model is expected to be exact, thanks to a
    proposal by John Nash.  nls(*, trace=TRUE) now also shows the
    convergence criterion.
  * Numeric differentiation _via_ numericDeriv() gets new optional
    arguments eps and central, the latter for taking central divided
    differences.  The latter can be activated for nls() via
    nls.control(nDcentral = TRUE).
  * nls() now passes the trace and control arguments to getInitial(),
    notably for all self-starting models, so these can also be fit in
    zero-noise situations via a scaleOffset.  For this reason, the
    initial function of a selfStart model must now have ... in its
    argument list.
  * bquote(splice = TRUE) can now splice expression vectors with
    attributes: this makes it possible to splice the result of
    parse(keep.source = TRUE).  (Report and patch provided by Lionel
    Henry in PR#17869.)
  * textConnection() gets an optional name argument.
  * get(), exists(), and get0() now signal an error if the first
    argument has length greater than 1.  Previously additional
    elements were silently ignored.  (Suggested by Antoine Fabri on
    R-devel.)
  * R now provides a shorthand notation for creating functions, e.g.
    \(x) x + 1 is parsed as function(x) x + 1.
  * R now provides a simple native forward pipe syntax |&gt;.  The
    simple form of the forward pipe inserts the left-hand side as the
    first argument in the right-hand side call.  The pipe
    implementation as a syntax transformation was motivated by
    suggestions from Jim Hester and Lionel Henry.
  * all.equal(f, g) for functions now by default also compares their
    environment(.)s, notably via new all.equal method for class
    function.  Comparison of nls() fits, e.g., may now need
    all.equal(m1, m2, check.environment = FALSE).
  * .libPaths() gets a new option include.site, allowing to _not_
    include the site library.  (Thanks to Dario Strbenac's suggestion
    and Gabe Becker's PR#18016.)
  * Lithuanian translations are now available.  (Thanks to Rimantas
    Zakauskas.)
  * names() now works for DOTSXP objects.  On the other hand, in
    R-lang, the R language manual, we now warn against relying on the
    structure or even existence of such dot-dot-dot objects.
  * all.equal() no longer gives an error on DOTSXP objects.
  * capabilities("cairo") now applies only to the file-based devices
    as it is now possible (if very unusual) to build R with Cairo
    support for those but not for X11().
  * There is optional support for tracing the progress of
    loadNamespace() - see its help.
  * (Not Windows.)  l10n_info() reports an additional element, the
    name of the encoding as reported by the OS (which may differ from
    the encoding part (if any) of the result from
    Sys.getlocale("LC_CTYPE").
  * New function gregexec() which generalizes regexec() to find _all_
    disjoint matches and well as all substrings corresponding to
    parenthesized subexpressions of the given regular expression.
    (Contributed by Brodie Gaslam.)
  * New function charClass() in package utils to query the
    wide-character classification functions in use (such as
    iswprint).
  * The names of quantile()'s result no longer depend on the global
    getOption("digits"), but quantile() gets a new optional argument
    digits = 7 instead.
  * grep(), sub(), regexp and variants work considerably faster for
    long factors with few levels.  (Thanks to Michael Chirico's
    PR#18063.)
  * Provide grouping of x11() graphics windows within a window
    manager such as Gnome or Unity; thanks to a patch by Ivan Krylov
    posted to R-devel.
  * The split() method for class data.frame now allows the f argument
    to be specified as a formula.
  * sprintf now warns on arguments unused by the format string.
  * New palettes "Rocket" and "Mako" for hcl.colors() (approximating
    palettes of the same name from the 'viridisLite' package).
    Contributed by Achim Zeileis.
  * The base environment and its namespace are now locked (so one can
    no longer add bindings to these or remove from these).
  * Rterm handling of multi-byte characters has been improved,
    allowing use of such characters when supported by the current
    locale.
  * Rterm now accepts ALT+ +xxxxxxxx sequences to enter Unicode
    characters as hex digits.
  * Environment variable LC_ALL on Windows now takes precedence over
    LC_CTYPE and variables for other supported categories, matching
    the POSIX behaviour.
  * duplicated() and anyDuplicated() are now optimized for integer
    and real vectors that are known to be sorted via the ALTREP
    framework. Contributed by Gabriel Becker via PR#17993.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 14
    and so packages that provide graphics devices should be
    reinstalled.
  * Graphics devices should now specify deviceVersion to indicate
    what version of the graphics engine they support.
  * Graphics devices can now specify deviceClip.  If TRUE, the
    graphics engine will never perform any clipping of output itself.
    The clipping that the graphics engine does perform (for both
    canClip = TRUE and canClip = FALSE) has been improved to avoid
    producing unnecessary artifacts in clipped output.
  * The grid package now allows gpar(fill) to be a linearGradient(),
    a radialGradient(), or a pattern().  The viewport(clip) can now
    also be a grob, which defines a clipping path, and there is a new
    viewport(mask) that can also be a grob, which defines a mask.
    These new features are only supported so far on the Cairo-based
    graphics devices and on the pdf() device.
  * (Not Windows.)  A warning is given when a Cairo-based type is
    specified for a png(), jpeg(), tiff() or bmp() device but Cairo
    is unsupported (so type = "Xlib" is tried instead).
  * grSoftVersion() now reports the versions of FreeType and
    FontConfig if they are used directly (not _via_ Pango), as is
    most commonly done on macOS.
  C-LEVEL FACILITIES:
  * The _standalone_ libRmath math library and R's C API now provide
    log1pexp() again as documented, and gain log1mexp().
  INSTALLATION on a UNIX-ALIKE:
  * configure checks for a program pkgconf if program pkg-config is
    not found.  These are now only looked for on the path (like
    almost all other programs) so if needed specify a full path to
    the command in PKG_CONFIG, for example in file config.site.
  * C99 function iswblank is required - it was last seen missing ca
    2003 so the workaround has been removed.
  * There are new configure options --with-internal-iswxxxxx,
  - -with-internal-towlower and --with-internal-wcwidth which allows
    the system functions for wide-character classification,
    case-switching and width (wcwidth and wcswidth) to be replaced by
    internal ones.  The first has long been used on macOS, AIX (and
    Windows) but this enables it to be unselected there and selected
    for other platforms (it is the new default on Solaris).  The
    second is new in this version of R and is selected by default on
    macOS and Solaris.  The third has long been the default and
    remains so as it contains customizations for East Asian
    languages.
    System versions of these functions are often minimally
    implemented (sometimes only for ASCII characters) and may not
    cover the full range of Unicode points: for example Solaris (and
    Windows) only cover the Basic Multilingual Plane.
  * Cairo installations without X11 are more likely to be detected by
    configure, when the file-based Cairo graphics devices will be
    available but not X11(type = "cairo").
  * There is a new configure option --with-static-cairo which is the
    default on macOS.  This should be used when only static cairo
    (and where relevant, Pango) libraries are available.
  * Cairo-based graphics devices on platforms without Pango but with
    FreeType/FontConfig will make use of the latter for font
    selection.
  LINK-TIME OPTIMIZATION on a UNIX-ALIKE:
  * Configuring with flag --enable-lto=R now also uses LTO when
    installing the recommended packages.
  * R CMD INSTALL and R CMD SHLIB have a new flag --use-LTO to use
    LTO when compiling code, for use with R configured with
  - -enable-lto=R.  For R configured with --enable-lto, they have
    the new flag --no-use-LTO.
    Packages can opt in or out of LTO compilation _via_ a UseLTO
    field in the DESCRIPTION file.  (As usual this can be overridden
    by the command-line flags.)
  BUILDING R on Windows:
  * for GCC &gt;= 8, FC_LEN_T is defined in config.h and hence character
    lengths are passed from C to Fortran in _inter alia_ BLAS and
    LAPACK calls.
  * There is a new text file src/gnuwin32/README.compilation, which
    outlines how C/Fortran code compilation is organized and
    documents new features:
  * R can be built with Link-Time Optimization with a suitable
    compiler - doing so with GCC 9.2 showed several
    inconsistencies which have been corrected.
  * There is support for cross-compiling the C and Fortran code
    in R and standard packages on suitable (Linux) platforms.
    This is mainly intended to allow developers to test later
    versions of compilers - for example using GCC 9.2 or 10.x has
    detected issues that GCC 8.3 in Rtools40 does not.
  * There is experimental support for cross-building R packages
    with C, C++ and/or Fortran code.
  * The R installer can now be optionally built to support a single
    architecture (only 64-bit or only 32-bit).
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++14 where
    available (which it is on all currently checked platforms): if
    not (as before) C++11 is used if available otherwise C++ is not
    supported.
    Packages which specify C++11 will still be installed using C++11.
    C++14 compilers may give deprecation warnings, most often for
    std::random_shuffle (deprecated in C++14 and removed in C++17).
    Either specify C++11 (see 'Writing R Extensions') or modernize
    the code and if needed specify C++14.  The latter has been
    supported since R 3.4.0 so the package's DESCRIPTION would need
    to include something like
    Depends: R (&gt;= 3.4)
  PACKAGE INSTALLATION on Windows:
  * R CMD INSTALL and R CMD SHLIB make use of their flag --use-LTO
    when the LTO_OPT make macro is set in file etc/${R_ARCH}/Makeconf
    or in a personal/site Makevars file.  (For details see 'Writing R
    Extensions' SS4.5.)
    This provides a valuable check on code consistency.  It does work
    with GCC 8.3 as in Rtools40, but that does not detect everything
    the CRAN checks with current GCC do.
  PACKAGE INSTALLATION on macOS:
  * The default personal library directory on builds with
  - -enable-aqua (including CRAN builds) now differs by CPU type,
    one of
    ~/Library/R/x86_64/x.y/library
    ~/Library/R/arm64/x.y/library
    This uses the CPU type R (and hence the packages) were built for,
    so when a x86_64 build of R is run under Rosetta emulation on an
    arm64 Mac, the first is used.
  UTILITIES:
  * R CMD check can now scan package functions for bogus return
    statements, which were possibly intended as return() calls (wish
    of PR#17180, patch by Sebastian Meyer). This check can be
    activated via the new environment variable
    _R_CHECK_BOGUS_RETURN_, true for --as-cran.
  * R CMD build omits tarballs and binaries of previous builds from
    the top-level package directory.  (PR#17828, patch by Sebastian
    Meyer.)
  * R CMD check now runs sanity checks on the use of LazyData, for
    example that a data directory is present and that
    LazyDataCompression is not specified without LazyData and has a
    documented value.  For packages with large LazyData databases
    without specifying LazyDataCompression, there is a reference to
    the code given in 'Writing R Extensions' SS1.1.6 to test the
    choice of compression (as in all the CRAN packages tested a
    non-default method was preferred).
  * R CMD build removes LazyData and LazyDataCompression fields from
    the DESCRIPTION file of packages without a data directory.
  ENCODING-RELATED CHANGES:
  * The parser now treats \Unnnnnnnn escapes larger than the upper
    limit for Unicode points (\U10FFFF) as an error as they cannot be
    represented by valid UTF-8.
    Where such escapes are used for outputting non-printable
    (including unassigned) characters, 6 hex digits are used (rather
    than 8 with leading zeros).  For clarity, braces are used, for
    example \U{0effff}.
  * The parser now looks for non-ASCII spaces on Solaris (as
    previously on most other OSes).
  * There are warnings (including from the parser) on the use of
    unpaired surrogate Unicode points such as \uD834.  (These cannot
    be converted to valid UTF-8.)
  * Functions nchar(), tolower(), toupper() and chartr() and those
    using regular expressions have more support for inputs with a
    marked Latin-1 encoding.
  * The character-classification functions used (by default) to
    replace the system iswxxxxx functions on Windows, macOS and AIX
    have been updated to Unicode 13.0.0.
    The character-width tables have been updated to include new
    assignments in Unicode 13.0.0.
  * The code for evaluating default (extended) regular expressions
    now uses the same character-classification functions as the rest
    of R (previously they differed on Windows, macOS and AIX).
  * There is a build-time option to replace the system's
    wide-character wctrans C function by tables shipped with R: use
    configure option --with-internal-towlower or (on Windows)
  - DUSE_RI18N_CASE in CFLAGS when building R.  This may be needed
    to allow tolower() and toupper() to work with Unicode characters
    beyond the Basic Multilingual Plane where not supported by system
    functions (e.g. on Solaris where it is the new default).
  * R is more careful when truncating UTF-8 and other multi-byte
    strings that are too long to be printed, passed to the system or
    libraries or placed into an internal buffer.  Truncation will no
    longer produce incomplete multibyte characters.
  DEPRECATED AND DEFUNCT:
  * Function plclust() from the package stats and
    package.dependencies(), pkgDepends(), getDepList(),
    installFoundDepends(), and vignetteDepends() from package tools
    are defunct.
  * Defunct functions checkNEWS() and readNEWS() from package tools
    and CRAN.packages() from utils have been removed.
  * R CMD config CXXCPP is defunct (it was deprecated in R 3.6.2).
  * parallel::detectCores() drops support for Irix (retired in 2013).
  * The LINPACK argument to chol.default(), chol2inv(),
    solve.default() and svd() has been defunct since R 3.1.0.  It was
    silently ignored up to R 4.0.3 but now gives an error.
  * Subsetting/indexing, such as ddd[*] or ddd$x on a DOTSXP
    (dot-dot-dot) object ddd has been disabled; it worked by accident
    only and was undocumented.
  BUG FIXES:
  * Many more C-level allocations (mainly by malloc and strdup) are
    checked for success with suitable alternative actions.
  * Bug fix for replayPlot(); this was turning off graphics engine
    display list recording if a recorded plot was replayed in the
    same session.  The impact of the bug became visible if resize the
    device after replay OR if attempted another savePlot() after
    replay (empty display list means empty screen on resize or empty
    saved plot).
  * R CMD check etc now warn when a package exports non-existing S4
    classes or methods, also in case of no "methods" presence.
    (Reported by Alex Bertram; reproducible example and patch by
    Sebastian Meyer in PR#16662.)
  * boxplot() now also accepts calls for labels such as ylab, the
    same as plot().  (Reported by Marius Hofert.)
  * The help page for xtabs() now correctly states that addNA is
    setting na.action = na.pass among others.  (Reported as PR#17770
    by Thomas Soeiro.)
  * The R CMD check &lt;pkg&gt; gives a longer and more comprehensible
    message when DESCRIPTION misses dependencies, e.g., in Imports:.
    (Thanks to the contributors of PR#17179.)
  * update.default() now calls the generic update() on the formula to
    work correctly for models with extended formulas.  (As reported
    and suggested by Neal Fultz in PR#17865.)
  * The horizontal position of leaves in a dendrogram is now correct
    also with center = FALSE.  (PR#14938, patch from Sebastian
    Meyer.)
  * all.equal.POSIXt() no longer warns about and subsequently ignores
    inconsistent "tzone" attributes, but describes the difference in
    its return value (PR#17277).  This check can be disabled _via_
    the new argument check.tzone = FALSE as suggested by Sebastian
    Meyer.
  * as.POSIXct() now populates the "tzone" attribute from its tz
    argument when x is a logical vector consisting entirely of NA
    values.
  * x[[2^31]] &lt;- v now works.  (Thanks to the report and patch by
    Suharto Anggono in PR#17330.)
  * In log-scale graphics, axis() ticks and label positions are now
    computed more carefully and symmetrically in their range,
    typically providing _more_ ticks, fulfilling wishes in PR#17936.
    The change really corresponds to an improved axisTicks() (package
    grDevices), potentially influencing grid and lattice, for
    example.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now correct to at
    least five digits where it was catastrophically wrong,
    previously.
  * sum(df) and similar "Summary"- and "Math"-group member functions
    now work for data frames df with logical columns, notably also of
    zero rows.  (Reported to R-devel by Martin "b706".)
  * unsplit() had trouble with tibbles due to unsound use of rep(NA,
    len)-indexing, which should use NA_integer_ (Reported to R-devel
    by Mario Annau.)
  * pnorm(x, log.p = TRUE) underflows to -Inf slightly later.
  * show(&lt;hidden S4 generic&gt;) prints better and without quotes for
    non-hidden S4 generics.
  * read.table() and relatives treated an "NA" column name as missing
    when check.names = FALSE PR#18007.
  * Parsing strings containing UTF-16 surrogate pairs such as
    "\uD834\uDD1E" works better on some (uncommon) platforms.
    sprintf("%X", utf8ToInt("\uD834\uDD1E")) should now give "1D11E"
    on all platforms.
  * identical(x,y) is no longer true for differing DOTSXP objects,
    fixing PR#18032.
  * str() now works correctly for DOTSXP and related exotics, even
    when these are doomed.
    Additionally, it no longer fails for lists with a class and
    "irregular" method definitions such that e.g. lapply(*) will
    necessarily fail, as currently for different igraph objects.
  * Too long lines in environment files (e.g. Renviron) no longer
    crash R. This limit has been increased to 100,000 bytes.
    (PR#18001.)
  * There is a further workaround for FreeType giving incorrect
    italic font faces with cairo-based graphics devices on macOS.
  * add_datalist(*, force = TRUE) (from package tools) now actually
    updates an existing data/datalist file for new content.  (Thanks
    to a report and patch by Sebastian Meyer in PR#18048.)
  * cut.Date() and cut.POSIXt() could produce an empty last interval
    for breaks = "months" or breaks = "years".  (Reported as PR#18053
    by Christopher Carbone.)
  * Detection of the encoding of 'regular' macOS locales such as
    en_US (which is UTF-8) had been broken by a macOS change:
    fortunately these are now rarely used with en_US.UTF-8 being
    preferred.
  * sub() and gsub(pattern, repl, x, *) now keep attributes of x such
    as names() also when pattern is NA (PR#18079).
  * Time differences ("difftime" objects) get a replacement and a
    rep() method to keep "units" consistent.  (Thanks to a report and
    patch by Nicolas Bennett in PR#18066.)
  * The \RdOpts macro, setting defaults for \Sexpr options in an Rd
    file, had been ineffective since R 2.12.0: it now works again.
    (Thanks to a report and patch by Sebastian Meyer in PR#18073.)
  * mclapply and pvec no longer accidentally terminate parallel
    processes started before by mcparallel or related calls in
    package parallel (PR#18078).
  * grep and other functions for evaluating (extended) regular
    expressions handle in Unicode also strings not explicitly flagged
    UTF-8, but flagged native when running in UTF-8 locale.
  * Fixed a crash in fifo implementation on Windows (PR#18031).
  * Binary mode in fifo on Windows is now properly detected from
    argument open (PR#15600, PR#18031).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1622808000">- The line %{__install} -m 755 -d %{_infodir}
  no longer works in TW or Factory.
  But without that line it works everywhere. So this instruction
  was commented out of the spec file.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1628596800">- CHANGES IN R 4.1.1:
  NEW FEATURES:
  * require(pkg, quietly = TRUE) is quieter and in particular does
    not warn if the package is not found.
  DEPRECATED AND DEFUNCT:
  * Use of ftp:// URIs should be regarded as deprecated, with
    on-going support confined to method = "libcurl" and not routinely
    tested.  (Nowadays no major browser supports them.)
  * The non-default method = "internal" is deprecated for http:// and
    ftp:// URIs for both download.file and url.
  * On Windows, method = "wininet" is deprecated for http://,
    https:// and ftp:// URIs for both download.file and url.  (A
    warning is only given for ftp://.)
    For ftp:// URIs the default method is now "libcurl" if available
    (which it is on CRAN builds).
    method = "wininet" remains the default for http:// and https://
    URIs but if libcurl is available, using method = "libcurl" is
    preferred.
  INSTALLATION:
  * make check now works also without a LaTeX installation.  (Thanks
    to Sebastian Meyer's PR#18103.)
  BUG FIXES:
  * make check-devel works again in an R build configured with
  - -without-recommended-packages.
  * qnbinom(p, size, mu) for large size/mu is correct now in a range
    of cases (PR#18095); similarly for the (size, prob)
    parametrization of the negative binomial.  Also qpois() and
    qbinom() are better and or faster for extreme cases.  The
    underlying C code has been modularized and is common to all four
    cases of discrete distributions.
  * gap.axis is now part of the axis() arguments which are passed
    from bxp(), and hence boxplot().  (Thanks to Martin Smith's
    report and suggestions in PR#18109.)
  * .First and .Last can again be set from the site profile.
  * seq.int(from, to, *) and seq.default(..) now work better in large
    range cases where from-to is infinite where the two boundaries
    are finite.
  * all.equal(x,y) now returns TRUE correctly also when several
    entries of abs(x) and abs(y) are close to .Machine$double.xmax,
    the largest finite numeric.
  * model.frame() now clears the object bit when removing the class
    attribute of a value via na.action (PR#18100).
  * charClass() now works with multi-character strings on Windows
    (PR#18104, fixed by Bill Dunlap).
  * encodeString() on Solaris now works again in Latin-1 encoding on
    characters represented differently in UTF-8.  Support for
    surrogate pairs on Solaris has been improved.
  * file.show() on Windows now works with non-ASCII path names
    representable in the current native encoding (PR#18132).
  * Embedded R on Windows can now find R home directory via the
    registry even when installed only for the current user
    (PR#18135).
  * pretty(x) with finite x now returns finite values also in the
    case where the extreme x values are close in size to the maximal
    representable number .Machine$double.xmax.
    Also, it's been tweaked for very small ranges and when a boundary
    is close (or equal) to zero; e.g., pretty(c(0,1e-317)) no longer
    has negative numbers, currently still warning about a very small
    range, and pretty(2^-(1024 - 2^-1/(c(24,10)))) is more accurate.
  * The error message for not finding vignette files when weaving has
    correct file sizes now. (Thanks to Sebastian Meyer's PR#18154.)
  * dnbinom(20, &lt;large&gt;, 1) now correctly gives 0, and similar cases
    are more accurate with underflow precaution.  (Reported by Francisco Vera Alcivar in PR#18072.)</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635163200">- repaired https://bugzilla.suse.com/show_bug.cgi?id=1191380
  (rpmacros now go to rpmmacrodir)
- minor clean-ups in spec file</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635768000">- CHANGES IN R 4.1.2:
  C-LEVEL FACILITIES:
  * The workaround in headers R.h and Rmath.h (using namespace std;)
    for the Oracle Developer Studio compiler is no longer needed now
    C++11 is required so has been removed.  A couple more usages of
    log() (which should have been std::log()) with an int argument
    are reported on Solaris.
  * The undocumented limit of 4095 bytes on messages from the
    S-compatibility macros PROBLEM and MESSAGE is now documented and
    longer messages will be silently truncated rather than
    potentially causing segfaults.
  * If the R_NO_SEGV_HANDLER environment variable is non-empty, the
    signal handler for SEGV/ILL/BUS signals (which offers recovery
    user interface) is not set. This allows more reliable debugging
    of crashes that involve the console.
  DEPRECATED AND DEFUNCT:
  * The legacy S-compatibility macros PROBLEM, MESSAGE, ERROR, WARN,
    WARNING, RECOVER, ... are deprecated and will be hidden in R
    4.2.0. R's native interface of Rf_error and Rf_warning has long
    been preferred.
  BUG FIXES:
  * .mapply(F, dots, .) no longer segfaults when dots is not a list
    and uses match.fun(F) as always documented; reported by Andrew
    Simmons in PR#18164.
  * hist(&lt;Date&gt;, ...) and hist(&lt;POSIXt&gt;, ...)  no longer pass
    arguments for rect() (such as col and density) to axis().
    (Thanks to Sebastian Meyer's PR#18171.)
  * \Sexpr{ch} now preserves Encoding(ch). (Thanks to report and
    patch by Jeroen Ooms in PR#18152.)
  * Setting the RNG to "Marsaglia-Multicarry" e.g., by RNGkind(), now
    warns in more places, thanks to Andr'e Gillibert's report and
    patch in PR#18168.
  * gray(numeric(), alpha=1/2) no longer segfaults, fixing PR#18183,
    reported by Till Krenz.
  * Fixed dnbinom(x, size=&lt;very_small&gt;, .., log=TRUE) regression,
    reported by Martin Morgan.
  * as.Date.POSIXlt(x) now keeps names(x), thanks to Davis Vaughan's
    report and patch in PR#18188.
  * model.response() now strips an "AsIs" class typically, thanks to
    Duncan Murdoch's report and other discussants in PR#18190.
  * try() is considerably faster in case of an error and long call,
    as e.g., from some do.call().  Thanks to Alexander Kaever's
    suggestion posted to R-devel.
  * qqline(y = &lt;object&gt;) such as y=I(.), now works, see also
    PR#18190.
  * Non-integer mgp par() settings are now handled correctly in
    axis() and mtext(), thanks to Mikael Jagan and Duncan Murdoch's
    report and suggestion in PR#18194.
  * formatC(x) returns length zero character() now, rather than ""
    when x is of length zero, as documented, thanks to Davis
    Vaughan's post to R-devel.
  * removeSource(fn) now retains (other) attributes(fn).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1647000000">- CHANGES IN R 4.1.3:
  NEW FEATURES:
  * The default version of Bioconductor has been changed to 3.14.
    (This is used by setRepositories and the menus in GUIs.)
  UTILITIES:
  * R CMD check --as-cran has a workaround for a bug in versions of
    file up to at least 5.41 which mis-identify DBF files last
    changed in 2022 as executables.
  C-LEVEL FACILITIES:
  * The legacy S-compatibility macros SINGLE_* in R_ext/Constants.h
    (included by R.h) are deprecated and will be removed in R 4.2.0.
  BUG FIXES:
  * Initialization of self-starting nls() models with initialization
    functions following the pre-R-4.1.0 API (without the ...
    argument) works again for now, with a deprecation warning.
  * Fixed quoting of ~autodetect~ in Java setting defaults to avoid
    inadvertent user lookup due to leading ~, reported in PR#18231 by
    Harold Gutch.
  * substr(., start, stop) &lt;- v now treats _negative_ stop values
    correctly.  Reported with a patch in PR#18228 by Brodie Gaslam.
  * Subscripting an array x without dimnames by a
    length(dim(x))-column character matrix gave "random" non-sense,
    now an error; reported in PR#18244 by Mikael Jagan.
  * ...names() now matches names(list(...)) closely, fixing PR#18247.
  * all.equal(*, scale = s) now works as intended when length(s) &gt; 1,
    partly thanks to Michael Chirico's PR#18272.
  * print(x) for long vectors x now also works for named atomic
    vectors or lists and prints the correct number when reaching the
    getOption("max.print") limit; partly thanks to a report and
    proposal by Hugh Parsonage to the R-devel list.
  * all.equal(&lt;selfStart&gt;, *) no longer signals a deprecation
    warning.
  * reformulate(*, response=r) gives a helpful error message now when
    length(r) &gt; 1, thanks to Bill Dunlap's PR#18281.
  * Modifying globalCallingHandlers inside withCallingHandlers() now
    works or fails correctly, thanks to Henrik Bengtsson's PR#18257.
  * hist(&lt;Date&gt;, breaks = "days") and hist(&lt;POSIXt&gt;, breaks = "secs")
    no longer fail for inputs of length 1.
  * qbeta(.001, .9, .009) and similar cases now converge correctly
    thanks to Ben Bolker's report in PR#17746.
  * window(x, start, end) no longer wrongly signals "'start' cannot
    be after 'end'", fixing PR#17527 and PR#18291.
  * data() now checks that its (rarely used) list argument is a
    character vector - a couple of packages passed other types and
    gave incorrect results.
  * which() now checks its arr.ind argument is TRUE rather coercing
    to logical and taking the first element - which gave incorrect
    results in package code.
  * model.weights() and model.offset() more carefully extract their
    model components, thanks to Ben Bolker and Tim Taylor's R-devel
    post.
  * list.files(recursive = TRUE) now shows all broken symlinks
    (previously, some of them may have been omitted, PR#18296).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1650628800">- CHANGES IN R 4.2.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * The formula method of aggregate() now matches the generic in
    naming its first argument x (resolving PR#18299 by Thomas
    Soeiro).
    This means that calling aggregate() with a formula as a named
    first argument requires name formula in earlier versions of R and
    name x now, so portable code should not name the argument (code
    in many packages did).
  * Calling &amp;&amp; or || with either argument of length greater than one
    now gives a warning (which it is intended will become an error).
  * Calling if() or while() with a condition of length greater than
    one gives an error rather than a warning.  Consequently,
    environment variable _R_CHECK_LENGTH_1_CONDITION_ no longer has
    any effect.
  * Windows users should consult the WINDOWS section below for some
    profound changes including
  * Support for 32-bit builds has been dropped.
  * UTF-8 locales are used where available.
  * The default locations for the R installation and personal
    library folder have been changed.
    Thanks to Tomas Kalibera for months of work on the Windows port
    for this release.
  NEW FEATURES:
  * matrix(x, n, m) now warns in more cases where length(x) differs
    from n * m, as suggested by Abby Spurdle and Wolfgang Huber in
    Feb 2021 on the R-devel mailing list.
    This warning can be turned into an error by setting environment
    variable _R_CHECK_MATRIX_DATA_ to TRUE: R CMD check --as-cran
    does so unless it is already set.
  * Function file_test() in package utils gains tests for symlinks,
    readability and writability.
  * capabilities("libxml") is now false.
    The description of capabilities("http/ftp") now reflects that it
    refers to the default method, no longer the internal one.
  * simplify2array() gains an except argument for controlling the
    exceptions used by sapply().
  * Environment variables R_LIBS_USER and R_LIBS_SITE are both now
    set to the R system default if unset or empty, and can be set to
    NULL to indicate an empty list of user or site library
    directories.
  * The warning for axis()(-like) calls in cases of relatively small
    ranges (typically in log-scale situations) is slightly improved
    _and_ suppressed from explicit calls to .axisPars() as has always
    been the intention.
  * The contrasts setter function `contrasts&lt;-` gains an explicit
    default how.many = NULL rather than just using missing(how.many).
  * grid.pretty() gains a new optional argument n = 5.
  * There is a new function .pretty() with option bounds as a
    technical-utility version of pretty().  It and pretty() gain a
    new argument f.min with a better than back-compatible default.
  * Function grDevices::axisTicks() and related functions such as
    graphics::axis() work better, notably for the log scale; partly
    because of the pretty() improvements, but also because care is
    taken e.g., when ylim is finite but diff(ylim) is infinite.
  * nclass.FD() gains a digits option.
  * The R Mathlib internal C function bd0() (called indirectly from a
    dozen probability density and distribution functions such as
    dpois(), dbinom(), dgamma(), pgamma() _etc_) has been
    complemented by a more sophisticated and (mostly) more accurate C
    function ebd0(), currently called only by internal dpois_raw()
    improving accuracy for R level dpois() and potentially others
    calling it such as dnbinom(), dgamma() or pgamma().  (Thanks to
    Morten Welinder's PR#15628.)
  * write.ftable() gains sep = " " argument as suggested by Thomas
    Soeiro.
  * The names of the locale categories supported by R's
    Sys.getlocale() and Sys.setlocale() are now provided by variable
    .LC.categories in the base namespace.
  * The Date and POSIXt methods for hist() and the histogram method
    for plot() now also use the new default col = "lightgray" in
    consistency with the corresponding change to hist()'s default for
    R 4.0.0.
  * hist.default() gains new fuzz argument, and the histogram plot
    method no longer uses fractional axis ticks when displaying
    counts ("Frequency").
  * mapply() and hence Map() now also obey the "max-or-0-if-any"
    recycling rule, such that, e.g., Map(`+`, 1:3, 1[0]) is valid
    now.
  * as.character(&lt;obj&gt;) for "hexmode" or "octmode" objects now
    fulfils the important basic rule as.character(x)[j] ===
    as.character(x[j]).
  * The set utility functions, notably intersect() have been tweaked
    to be more consistent and symmetric in their two set arguments,
    also preserving a common mode.
  * substr(ch, start,end) &lt;- new now e.g., preserves names(ch); ditto
    for substring(), thanks to a patch from Brodie Gaslam.
  * plot(&lt;lm&gt;) gains a extend.ylim.f argument, in partial response to
    PR#15285; further PR#17784 is fixed thanks to several
    contributors and a patch by Elin Waring.  The Cook's dist
    contours get customizable via cook.col and cook.lty with a
    different default color and their legend is nicer by default and
    customizable via cook.legendChanges.
  * Attempting to subset an object that is not subsettable now
    signals an error of class notSubsettableError. The
    non-subsettable object is contained in the object field of the
    error condition.
  * Subscript-out-of-bounds errors are now signaled as errors of
    class subscriptOutOfBoundsError.
  * Stack-overflow errors are now signaled as errors inheriting from
    class stackOverflowError. See ?stackOverflowError for more
    details.
  * New partly experimental Sys.setLanguage() utility, solving the
    main problem of PR#18055.
  * gettext() and gettextf() get a new option trim = TRUE which when
    set to false allows translations for strings such as "Execution
    halted\n" typical for C code.
  * An experimental implementation of hash tables is now available.
    See ?hashtab for more details.
  * identical() gains a extptr.as.ref argument for requesting that
    external pointer objects be compared as reference objects.
  * reorder() gets an argument decreasing which it passes to sort()
    for level creation; based on the wish and patch by Thomas Soeiro
    in PR#18243.
  * as.vector() gains a data.frame method which returns a simple
    named list, also clearing a long standing 'FIXME' to enable
    as.vector(&lt;data.frame&gt;, mode="list").  This breaks code relying
    on as.vector(&lt;data.frame&gt;) to return the unchanged data frame.
  * legend() is now vectorized for arguments cex, x.intersp, and
    text.width.  The latter can now also be specified as a vector
    (one element for each column of the legend) or as NA for
    computing a proper column wise maximum value of strwidth(legend).
    The argument y.intersp can be specified as a vector with one
    entry for each row of the legend.
    legend() also gains new arguments title.cex and title.font.
    Thanks to Swetlana Herbrandt.
  * Deparsing no longer remaps attribute names dim, dimnames, levels,
    names and tsp to historical S-compatible names (which structure()
    maps back).
  * sample() and sample.int() have additional sanity checks on their
    size and n arguments.
    all.equal.numeric() gains a sanity check on its tolerance
    argument - calling all.equal(a, b, c) for three numeric vectors
    is a surprisingly common error.
    mean(na.rm =), rank(na.last =), barplot(legend.text =),
    boxplot(), contour(drawlabels =), polygon(border =) and
    methods::is(class2 =) have more robust sanity checks on their
    arguments.
    R CMD Rd2pdf (used by R CMD check) has a more robust sanity check
    on the format of \alias{} commands.
  * psigamma(x, deriv) for negative x now also works for deriv = 4
    and 5; their underlying C level dpsifn() is documented in
    'Writing R Extensions'.
  * The HTML help system now uses HTML5 (wish of PR#18149).
  * ks.test() now provides exact p-values also with ties and MC
    p-values in the two-sample (Smirnov) case.  By Torsten Hothorn.
  * ks.test() gains a formula interface, with y ~ 1 for the
    one-sample (Kolmogorov) test and y ~ group for the two-sample
    (Smirnov) test.  Contributed by Torsten Hothorn.
  * The return value from ks.test() now has class c("ks.test",
    "htest") - packages using try() need to take care to use
    inherits() and not == on the class.
  * New functions psmirnov(), qsmirnov() and rsmirnov() in package
    stats implementing the asymptotic and exact distributions of the
    two-sample Smirnov statistic.
  * iconv() now allows sub = "c99" to use C99-style escapes for UTF-8
    inputs which cannot be converted to encoding to.
  * In a forward pipe |&gt; expression it is now possible to use a named
    argument with the placeholder _ in the rhs call to specify where
    the lhs is to be inserted.  The placeholder can only appear once
    on the rhs.
  * The included LAPACK sources have been updated to version 3.10.0,
    except for the four Fortran 77 routines which 3.10.0 has
    re-implemented in Fortran 90 (where the older versions have been
    retained as the R build process does not support Fortran 90).
  * path.expand() and most other uses of tilde expansion now warn if
    a path would be too long if expanded.  (An exception is
    file.exists(), which silently returns false.)
  * trunc(&lt;Date&gt;, *) now supports units = "months" or "years" for
    consistency with the POSIXt method, thanks to Dirk Eddelbuettel's
    proposal in PR#18099.
  * list2DF() now checks that its arguments are of the same length,
    rather than use recycling.
  * The HTML help system has several new features: LaTeX-like math
    can be typeset using either KaTeX or MathJax, usage and example
    code is highlighted using Prism, and for dynamic help the output
    of examples and demos can be shown within the browser if the
    knitr package is installed. These features can be disabled by
    setting the environment variable _R_HELP_ENABLE_ENHANCED_HTML_ to
    a false value.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 15
    and so packages that provide graphics devices should be
    reinstalled.
  * The grid package now allows the user to specify a "vector" of
    pattern fills.  The fill argument to gpar() accepts a list of
    gradients and/or patterns and the functions linearGradient(),
    radialGradient(), and pattern() have a new group argument.
    Points grobs (data symbols) can now also have a pattern fill.
    The grobCoords() function now returns a more informative and
    complex result.
  * The grid package has new functions for drawing isolated groups:
    grid.group(), grid.define(), and grid.use().  These functions add
    compositing operators and affine transformations to R's graphics
    capabilities.
    The grid package also has new functions for stroking and filling
    paths: grid.stroke(), grid.fill(), and grid.fillStroke().
    A new function as.path() allows the user to specify the fill rule
    for a path that is to be used for clipping, stroking, or filling;
    available options are "winding" and "evenodd".  A new function
    as.mask() allows the user to specify the type of a mask;
    available options are "alpha" and "luminance".
    These new features are only supported so far (at most) on the
    Cairo-based graphics devices and on the pdf() device.
  * dev.capabilities() reports on device support for the new
    features.
  * par() now warns about unnamed non-character arguments to prevent
    misuse such as {usr &lt;- par("usr"); par(usr)}.
  INSTALLATION:
  * Facilities for accessing ftp:// sites are no longer tested
    (except _pro tem_ for curlGetHeaders()) as modern browsers have
    removed support.
  * R can now be built with DEFS = -DSTRICT_R_HEADERS .
  PACKAGE INSTALLATION:
  * R CMD INSTALL no longer tangles vignettes. This completes an R
    CMD build change in R 3.0.0 and affects packages built before R
    3.0.2. Such packages should be re-made with R CMD build to have
    the tangled R code of vignettes shipped with the tarball.
  * USE_FC_LEN_T will become the default: this uses the correct
    prototypes for Fortran BLAS/LAPACK routines called from C/C++,
    and requires adjustment of most such calls - see 'Writing R
    Extensions' SS6.6.2.  (This has been supported since R 3.6.2.)
  * Package installation speed for packages installed with
    keep.source has been improved. This resolve the issue reported by
    Ofek Shilon in PR#18236.
  UTILITIES:
  * R CMD check can optionally report files/directories left behind
    in home, /tmp (even though TMPDIR is set) and other directories.
    See the "R Internals" manual for details.
  * R CMD check now reports byte-compilation errors during
    installation.  These are not usually fatal but may result in
    parts of the package not being byte-compiled.
  * _R_CHECK_DEPENDS_ONLY_ can be applied selectively to examples,
    tests and/or vignettes in R CMD check: see the "R Internals"
    manual.
  * _R_CHECK_SRC_MINUS_W_IMPLICIT_ now defaults to true: recent
    versions of Apple clang on macOS have made implicit function
    declarations in C into a compilation error.
  * R CMD check --as-cran makes use of the environment variable
    AUTORECONF.  See the "R Internals" manual SS8 for further details.
  * R CMD check --use-valgrind also uses valgrind when re-building
    vignettes as some non-Sweave vignettes unhelpfully comment out
    all their code when R CMD check runs vignettes.
  * Errors in re-building vignettes (unless there are LaTeX errors)
    are reported by R CMD check as ERROR rather than WARNING when
    running vignettes has been skipped (as it frequently is in CRAN
    checks and by --as-cran).
  * R CMD Rd2pdf gains a --quiet option that is used by R CMD build
    when building the PDF package manual.
  * R CMD Rd2pdf now always runs LaTeX in batch mode, consistent with
    Texinfo &gt;= 6.7. The --batch option is ignored.
  * R CMD build and R CMD check now include the Rd file name and line
    numbers in the error message of an \Sexpr evaluation failure.
  * For packages using the \doi Rd macro (now an install-time \Sexpr)
    but no other dynamic Rd content, R CMD build now produces a
    smaller tarball and is considerably faster - skipping temporary
    package installation.
  C-LEVEL FACILITIES:
  * The non-API header R_ext/R-ftp-http.h is no longer provided, as
    the entry points it covered are now all defunct.
  * A number of non-API declarations and macro definitions have been
    moved from the installed header Rinternals.h to the internal
    header Defn.h. Packages that only use entry points and
    definitions documented to be part of the API as specified in
    'Writing R Extensions' SS6 should not be affected.
  * The macro USE_RINTERNALS no longer has any effect when compiling
    package code.  Packages which also use R_NO_REMAP will need to
    ensure that the remapped names are used for calls to API
    functions that were formerly also made available as macros.
  * The deprecated legacy S-compatibility macros PROBLEM, MESSAGE,
    ERROR, WARN, WARNING, RECOVER, ... are no longer defined in
    R_exts/RS.h (included by R.h).  Replace these by calls to
    Rf_error and Rf_warning (defined in header R_ext/Error.h included
    by R.h).
    Header R_ext/RS.h no longer includes R_ext/Error.h.
  * Header R_ext/Constants.h (included by R.h) when included from C++
    now includes the C++ header cfloat rather than the C header
    float.h (now possible as C++11 is required).
  * The legacy S-compatibility macros DOUBLE_* in R_ext/Constants.h
    (included by R.h) are deprecated.
  * The deprecated S-compatibility macros SINGLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * R_Calloc, R_Free and R_Realloc are preferred to their unprefixed
    forms and error messages now use the prefix. These forms were
    introduced in R 3.4.0 and are available even when
    STRICT_R_HEADERS is defined.
  * rmultinom has been documented in 'Writing R Extensions' SS6 so is
    now part of the R API.
  * Similarly, Rtanpi, called from R level tanpi() is now part of the
    R API.
  * The long-deprecated, undocumented and non-API entry point call_R
    is no longer declared in R_ext/RS.h (included by R.h).
  * The header S.h which has been unsupported since Jan 2016 has been
    removed.  Use R.h instead.
  DEPRECATED AND DEFUNCT:
  * The (non-default and deprecated) method = "internal" for
    download.file() and url() no longer supports http:// nor ftp://
    URIs.  (It is used only for file:// URIs.)
    On Windows, download.file(method = "wininet") no longer supports
    ftp:// URIs.  (It is no longer the default method, which is
    "libcurl" and does.)
    On Windows, the deprecated method = "wininet" now gives a warning
    for http:// and https:// URIs for both download.file() and url().
    (It is no longer the default method.)
  * On Windows, the command-line option --max-mem-size and
    environment variable R_MAX_MEM_SIZE are defunct.  The memory
    allocation limit was important for 32-bit builds, but these are
    no longer supported.
  * default.stringsAsFactors() is now formally deprecated, where that
    was only mentioned on its regular help page, previously.  So it
    now gives a warning if called.
  * unix.time() is defunct now; it had been deprecated since R 3.4.0.
  BUG FIXES:
  * Setting digits = 0 in format(), print.default() (and hence
    typically print()) or options() is again invalid.  Its behaviour
    was platform-dependent, and it is unclear what "zero significant
    digits" should mean (PR#18098).
  * Messages from C code in the cairo section of package grDevices
    are now also offered for translation, thanks to Michael Chirico's
    PR#18123.
  * mean(x) with finite x now is finite also without "long.double"
    capability.
  * R CMD Rd2pdf no longer leaves an empty build directory behind
    when it aborts due to an already existing output file.  (Thanks
    to Sebastian Meyer's PR#18141.)
  * density(x, weights = w, na.rm = TRUE) when anyNA(x) is true, now
    removes weights "in parallel" to x, fixing PR#18151, reported by
    Matthias Gondan.  Additionally, it gets a subdensity option.
  * Conversion of \Sexpr[]{&lt;expR&gt;} to LaTeX or HTML no longer
    produces long blocks of empty lines when &lt;expR&gt; itself contains
    several lines all producing empty output.  Thanks to a report and
    patch by Ivan Krylov posted to R-devel.
  * R CMD build no longer fails if a package vignette uses child
    documents and inst/doc exists.  (Thanks to Sebastian Meyer's
    PR#18156.)
  * When an R documentation ('help' source) file man/foo.Rd in a
    package has \donttest{..} examples with a syntax error, it is now
    signalled as ERROR and with correct line numbers relating to the
  * -Ex.R file, thanks to Duncan Murdoch and Sebastian Meyer's
    reports and patch proposals in PR#17501.
  * Improved determination of the correct translation domain in
    non-base packages, addressing the combination of PR#18092 and
    PR#17998 (#c6) with reports and _augmented_ patch #2904 by
    Suharto Anggono.
    Note that "R-base" is no longer the default domain e.g., for
    top-level calls to gettext(); rather translation needs explicit
    domain = * specification in such cases.
  * identical(attrib.as.set=FALSE) now works correctly with data
    frames with default row names (Thanks to Charlie Gao's PR#18179).
  * txtProgressBar() now enforces a non-zero width for argument char,
    without which no progress can be visible.
  * dimnames(table(d)) is more consistent in the case where d is a
    list with a single component, thanks to Thomas Soeiro's report to
    R-devel.
    Further, table(d1, d2) now gives an error when d1 and d2 are data
    frames as suggested by Thomas in PR#18224.
  * Fix for drawing semi-transparent lines and fills on the native
    Windows graphics device (PR#18219 and PR#16694).  Thanks to Nick
    Ray for helpful diagnosis on Bugzilla.
  * The deparser now wraps sub-expressions such as if(A) ..  with
    parentheses when needed; thanks to Duncan Murdoch's PR#18232 and
    Lionel Henry's patches there.
  * remove.packages() no longer tries to uninstall Priority: base
    packages, thanks to a report and suggestions by Colin Fay in
    PR#18227.
  * win.metafile() now has xpinch and ypinch arguments so that the
    user can override Windows' (potentially wrong) guess at device
    dimensions.
  * x[i] and x[[i]] for non-integer i should now behave in all cases
    as always documented: the index used is equivalent to
    as.integer(i) unless that would overflow where trunc(i) is used
    instead; thanks to Suharto Anggono's report and patch proposals
    in PR#17977.
  * asOneSidedFormula() now associates the resulting formula with the
    global environment rather than the evaluation environment created
    for the call.
  * &lt;bibentry&gt;$name now matches the field name case-insensitively,
    consistent with bibentry() creation and the replacement method.
  * cbind() failed to detect some length mismatches with a mixture of
    time-series and non-time-series inputs.
  * The default LaTeX style file Sweave.sty used by the RweaveLatex
    driver no longer loads the obsolete ae package; thanks to a
    report by Thomas Soeiro in PR#18271.  Furthermore, it now skips
    \usepackage[T1]{fontenc} for engines other than pdfTeX (if
    detected) or if the new [nofontenc] option is used.
  * smooth.spline() now stores its logical cv argument more safely,
    fixing a rare bug when printing, and also stores n.
  * smooth.spline(x,y,*) now computes the cv.crit statistic
    correctly, also when is.unsorted(x), fixing PR#18294.
  * The data.frame method of rbind() now warns when binding
    not-wholly-recycling vectors, by analogy to the default method
    (for matrices).
  * setAs() finds the correct class for name to when multiple
    packages define a class with that name. Thanks to Gabor Csardi
    for the report.
  * Fix for detaching a package when two classes of the same name are
    present in method signatures for the same generic. Thanks to
    Gabor Csardi for the report.
  * match.arg("", c("", "a", "B")) gives a better error message, in
    part from PR#17959, thanks to Elin Waring.
  * R CMD Sweave --clean no longer removes pre-existing files or
    subdirectories (PR#18242).
  * The quartz() device no longer splits polylines into subpaths.
    That has caused narrowly-spaced lines with many points to always
    look solid even when dashed line type was used due to dash phase
    restarts.
  * Deparsing constructs such as quote(1 + `!`(2) + 3) works again as
    before R 3.5.0, thanks to the report and patch in PR#18284 by
    Suharto Anggono.
  * as.list(f) for a factor f now keeps names(f), fixing PR#18309.
  * qbeta(.001, .9, .009) and analogous qf() calls now return a
    correct value instead of NaN or wrongly 1, all with a warning;
    thanks to the report by Ludger Goeminne in PR#18302.
  * plot.lm() failed to produce the plot of residuals vs.  factor
    levels (i.e., which=5 when leverages are constant) for models
    with character predictors (PR#17840).
  * interaction.plot(..., xtick = TRUE) misplaced the x-axis line
    (PR#18305).
  * Not strictly fixing a bug, format()ing and print()ing of
    non-finite Date and POSIXt values NaN and +/-Inf no longer show
    as NA but the respective string, e.g., Inf, for consistency with
    numeric vector's behaviour, fulfilling the wish of PR#18308.
  * R CMD check no longer runs test scripts generated from
    corresponding .Rin files twice and now signals an ERROR if
    processing an .Rin script fails.
  * tools::Rd2txt() used for plain-text help pages now renders \hrefs
    (if tools::Rd2txt_options(showURLs = TRUE)) and \urls with
    percent-encoding and standards-compliant delimiting style (angle
    brackets and no URL: prefix).  \email is now rendered with a
    mailto: prefix.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1655985600">- CHANGES IN R 4.2.1:
  NEW FEATURES:
  * New function utils::findCRANmirror() to find out if a CRAN mirror
    has been selected, otherwise fallback to the main site.  This
    behaves in the same way as tools::CRAN_package_db() and is
    intended for packages wishing to access CRAN for purposes other
    than installing packages.
    The need for this was shown by a day when the main CRAN website
    was offline and a dozen or so packages which had its URL
    hardcoded failed their checks.
  INSTALLATION on a UNIX-ALIKE:
  * The libraries searched for by --with-blas (without a value) now
    include BLIS (after OpenBLAS but before ATLAS).  And on macOS,
    the Accelerate framework (after ATLAS).  (This is patterned after
    the AX_BLAS macro from the Autoconf Archive.)
  * The included LAPACK sources have been updated to 3.10.1.
  UTILITIES:
  * The (full path to) the command tidy to be used for HTML
    validation can be set by environment variable R_TIDYCMD.
  * Setting environment variable _R_CHECK_RD_VALIDATE_RD2HTML_ to a
    false value will override R CMD check --as-cran and turn off HTML
    validation.  This provides a way to circumvent a problematic
    tidy.
    The 2006 version that ships with macOS is always skipped.
  C-LEVEL FACILITIES:
  * The undocumented legacy declarations of Sint, Sfloat, SINT_MAX
    and SINT_MIN in header R.h are deprecated.
  BUG FIXES:
  * fisher.test(d) no longer segfaults for "large" d; fixing PR#18336
    by preventing/detecting an integer overflow reliably.
  * tar(., files=*) now produces correctly the warning about invalid
    uid or gid of files, fixing PR#18344, reported by Martin Morgan.
  * tk_choose.files() with multi = FALSE misbehaved on paths
    containing spaces (PR#18334) (regression introduced in R 4.0.0).
  * sort(x, partial = ind, *) now works correctly notably for the
    non-default na.last = FALSE or TRUE, fixing PR#18335 reported by
    James Edwards.
  * Environment variable _R_CHECK_XREFS_REPOSITORIES_ is only used
    for checking .Rd cross-references in R CMD check (as documented)
    and not for other uses looking for a CRAN mirror.
  * The search for a CRAN mirror when checking packages now uses
    getOption("repos") if that specifies a CRAN mirror, even when it
    does not also specify all three Bioconductor repositories (as was
    previously required).
  * The HTML code generated by tools::Rd2HTML() has been improved to
    pass tidy 5.8.0.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1667217600">- CHANGES IN R 4.2.2:
  NEW FEATURES:
  * tools::Rdiff(useDiff = TRUE) checks for the presence of an
    external diff command and switches to useDiff = FALSE if none is
    found.  This allows R CMD Rdiff to always work.
  * On Windows, environment variable R_LIBCURL_SSL_REVOKE_BEST_EFFORT
    can be used to switch to only 'best-effort' SSL certificate
    revocation checks with the default "libcurl" download method.
    This reduces security, but may be needed for downloads to work
    with MITM proxies (PR#18379).
  * (macOS) The run-time check for libraries from XQuartz for X11 and
    Tcl/Tk no longer uses otool from the Apple Developer Tools
    (PR#18400).
  * The LaTeX style for producing the PDF manuals, Rd.sty, now loads
    the standard amsmath, amsfonts and amssymb packages for greater
    coverage of math commands in the Rd \eqn and \deqn macros.  The
    \mathscr LaTeX command is also provided (via the mathrsfs
    package, if available, or the amsfonts bundle otherwise),
    fulfilling the wish of PR#18398.
  * (Windows) The default format of readClipboard() and
    writeClipboard() has been changed to 13 (CF_UNICODETEXT).
  INSTALLATION on a UNIX-ALIKE:
  * The PDF manuals (if built) can be compacted by the new target
    make compact-pdf (at the top level or in directory doc/manual).
  * There is now configure support for LLVM clang 15 on Linux, which
    defaults to position-independent (PIE) executables whereas
    gfortran does not.
  * Many small changes to ease compilation (and suppress warnings)
    with LLVM clang 15.
  BUG FIXES:
  * Rscript -e would fail if stdin were closed (Reported by Henrik
    Bengtsson.)
  * qt(*, log.p=TRUE) in outer tails no longer produces NaN in its
    final steps, thus fixing PR#18360.
  * tools::Rd2latex() now escapes hashes and ampersands when writing
    URLs, fixing LaTeX errors with such URLs in \tabular.
  * When isGeneric(f, fdef=*) is used with mismatching names, the
    warning is better understandable; reported (with fix) in PR#18370
    by Gabe Becker.
  * poly(x, n) now works again (and is now documented) when x is a
    "Date" or "POSIXct" object, or of another class while fulfilling
    mode(x) == "numeric".  This also enables poly(x, *, raw=TRUE) for
    such variables.  Reported by Michael Chirico to R-devel.
  * write.table(), write.csv() and write.csv2() restore their
    numerical precision (internal equivalent of digits = 15) after an
    interrupt (PR#18384).
  * One can now read also byte FF from a clipboard connection
    (PR#18385).
  * source("") and source(character()) now give more helpful error
    messages.
  * R CMD check --as-cran set _R_CHECK_TIMINGS_ too late to have the
    intended effect.
  * as.POSIXlt(x) now also works with very large dates x, fixing
    PR#18401 reported by Hannes M"uhleisen.
  * Files can now be extracted even from very large zip archives
    (PR#18390, thanks to Martin Jakt).
  * Non-finite objects of class "POSIXlt" are now correctly coerced
    to classes "Date" and "POSIXct"; following up on the extension to
    format() them correctly.
  * Added methods for is.finite(), is.infinite() and is.nan() for
    "POSIXlt" date-time objects.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1678881600">- CHANGES IN R 4.2.3:
  C-LEVEL FACILITIES:
  * The definition of DL_FUNC in R_ext/Rdynload.h has been changed to
    be fully C-compliant.  This means that functions loaded _via_ for
    example R_GetCCallable need to be cast to an appropriate type if
    they have any arguments.
  * .Machine has a new element sizeof.time_t to identify old systems
    with a 32-bit type and hence a limited range of date-times (and
    limited support for dates millions of years from present).
  PACKAGE INSTALLATION:
  * (Windows) The default C++ standard had accidentally been left at
    C++11 when it was changed to C++14 on Unix.
  BUG FIXES:
  * As "POSIXlt" objects may be "partially filled" and their list
    components meant to be recycled, length() now is the length of
    the longest component.
  * as.POSIXlt.Date() could underflow for dates in the far past (more
    than half a million years BCE).
  * as.Date.POSIXlt(x) would return "1970-01-01" instead of NA in R
    4.2.2, e.g., for
    x &lt;- as.POSIXlt(c("2019-01-30","2001-1-1"))
    x$mon &lt;- c(0L, NA); as.Date(x)
  * R CMD check failed to apply enabled _R_CHECK_SUGGESTS_ONLY_ to
    examples and vignettes (regression in R 4.2.0).
  * R CMD check did not re-build vignettes in separate processes by
    default (regression in R 4.2.0).
  * Running examples from HTML documentation now restores previous
    knitr settings and options (PR#18420).
  * Quartz: fonts are now located using Core Graphics API instead of
    deprecated ATS which is no longer supported in the macOS 13 SDK
    (PR#18426).  This also addresses an issue where the currently
    used font in the Quartz device context was not correctly
    retained.
  * (Windows) Math symbols in text drawing functions are again
    rendered correctly (PR#18440).  This fixes a regression in R
    4.2.1 caused by a fix in PR#18382 which uncovered an issue in
    GraphApp due to which the symbol charset was not used with TT
    Symbol font face.
  * (Windows) Installing a package with a src/Makefile.{win,ucrt}
    file includes ~/.R/Makevars.win64 in the search for user
    makevars, as documented in "R Installation and Administration"
    and done for packages with a src/Makevars.{win,ucrt} file.
  * format(&lt;POSIXlt_w/_unbalanced_sec&gt;, "....%OS&lt;n&gt;") with n &gt; 0 no
    longer accidentally uses the unbalanced seconds, thanks to
    Suharto Anggono's report (including patch) in PR#18448.
  * solve.default(a, b) works around issues with some versions of
    LAPACK when a contains NA or NaN values.
  * When UseMethod() cannot dispatch, it no longer segfaults
    producing the error message in case of a long class(), thanks to
    Joris Vankerschaver's report (including patch) in PR#18447.
  * When example(foo, ..) produces graphics on an interactive device
    it needs to open itself, it now leaves devAskNewPage() unchanged
    even when it was FALSE, thus fixing a 14 years old '&lt;FIXME&gt;'.
  * packageDescription() again catches errors from encoding
    conversions. This also fixes broken packageVersion() in C locale
    on systems where iconv does not support transliteration.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1681128000">- add patch to build with libcurl &gt;= 8</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1682078400">- CHANGES IN R 4.3.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Calling &amp;&amp; or || with LHS or (if evaluated) RHS of length greater
    than one is now always an error, with a report of the form
    'length = 4' in coercion to 'logical(1)'
    Environment variable _R_CHECK_LENGTH_1_LOGIC2_ no longer has any
    effect.
  NEW FEATURES:
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.10.1.  (This caused some platform-dependent
    changes to package check output.)  And then to the sources from
    LAPACK version 3.11.0 (with changes only to double complex
    subroutines).
  * The included LAPACK sources have been updated to include the four
    Fortran 90 routines rather than their Fortran 77 predecessors.
    This may give some different signs in SVDs or
    eigendecompositions..  (This completes the transition to LAPACK
    3.10.x begun in R 4.2.0.)
  * The LAPACK sources have been updated to version 3.11.0.  (No new
    subroutines have been added, so this almost entirely bug fixes:
    Those fixes do affect some computations with NaNs, including R's
    NA.)
  * The parser now signals _classed_ errors, notably in case of the
    pipe operator |&gt;.  The error object and message now give line and
    column numbers, mostly as proposed and provided by Duncan Murdoch
    in PR#18328.
  * toeplitz() is now generalized for asymmetric cases, with a
    toeplitz2() variant.
  * xy.coords() and xyz.coords() and consequently, e.g., plot(x,y,
    log = "y") now signal a _classed_ warning about negative values
    of y (where log(.) is NA).  Such a warning can be specifically
    suppressed or caught otherwise.
  * Regular expression functions now check more thoroughly whether
    their inputs are valid strings (in their encoding, e.g. in
    UTF-8).
  * The performance of grep(), sub(), gsub() and strsplit() has been
    improved, particularly with perl = TRUE and fixed = TRUE.  Use of
    useBytes = TRUE for performance reasons should no longer be
    needed and is discouraged: it may lead to incorrect results.
  * apropos() gains an argument dot_internals which is used by the
    completion (help(rcompgen)) engine to also see base internals
    such as .POSIXct().
  * Support in tools::Rdiff() for comparing uncompressed PDF files is
    further reduced - see its help page.
  * qqplot(x, y, ...) gains conf.level and conf.args arguments for
    computing and plotting a confidence band for the treatment
    function transforming the distribution of x into the distribution
    of y (Switzer, 1976, _Biometrika_). Contributed by Torsten
    Hothorn.
  * Performance of package_dependencies() has been improved for cases
    when the number of dependencies is large.
  * Strings newly created by gsub(), sub() and strsplit(), when any
    of the inputs is marked as "bytes", are also marked as "bytes".
    This reduces the risk of creating invalid strings and accidental
    substitution of bytes deemed invalid.
  * Support for readLines(encoding = "bytes") has been added to allow
    processing special text files byte-by-byte, without creating
    invalid strings.
  * iconv(from = "") now takes into account any declared encoding of
    the input elements and uses it in preference to the native
    encoding.  This reduces the risk of accidental creation of
    invalid strings, particularly when different elements of the
    input have different encoding (including "bytes").
  * Package repositories in getOption("repos") are now initialized
    from the repositories file when utils is loaded (if not already
    set, e.g., in .Rprofile).  (From a report and patch proposal by
    Gabriel Becker in PR#18405.)
  * compactPDF() gets a verbose option.
  * type.convert() and hence read.table() get new option tryLogical =
    TRUE with back compatible default.  When set to false, converts
    "F" or "T" columns to character.
  * Added new unit prefixes "R" and "Q" for abbreviating
    (unrealistically large) sizes beyond 10^{27} in standard = "SI",
    thanks to Henrik Bengtsson's PR#18435.
  * as.data.frame()'s default method now also works fine with atomic
    objects inheriting from classes such as "roman", "octmode" and
    "hexmode", such fulfilling the wish of PR#18421, by Benjamin
    Feakins.
  * The as.data.frame.vector() utility now errors for wrong-length
    row.names.  It warned for almost six years, with "Will be an
    error!".
  * sessionInfo() now also contains La_version() and reports codepage
    and timezone when relevant, in both print() and toLatex() methods
    which also get new option tzone for displaying timezone
    information when locale = FALSE.
  * New function R_compiled_by() reports the C and Fortran compilers
    used to build R, if known.
  * predict(&lt;lm&gt;, newdata = *) no longer unnecessarily creates an
    offset of all 0s.
  * solve() for complex inputs now uses argument tol and by default
    checks for 'computational singularity' (as it long has done for
    numeric inputs).
  * predict(&lt;rank-deficient lm&gt;, newdata=*) now obeys a new argument
    rankdeficient, with new default "warnif", warning only if there
    are non-estimable cases in newdata.  Other options include
    rankdeficient = "NA", predicting NA for non-estimable newdata
    cases.  This addresses PR#15072 by Russ Lenth and is based on his
    original proposal and discussions in PR#16158 also by David Firth
    and Elin Waring.  Still somewhat experimental.
  * Rgui console implementation now works better with the NVDA screen
    reader when the full blinking cursor is selected.  The underlying
    improvements in cursor handling may help also other screen
    readers on Windows.
  * The drop-field control in GraphApp can now be left with the TAB
    key and all controls can be navigated in the reverse order using
    the Shift+TAB key, improving accessibility of the Rgui
    configuration editor.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now fully accurate
    (instead of to "only" minimally five digits).
  * demo(error.catching) now also shows off withWarnings() and
    tryCatchWEMs().
  * As an experimental feature the placeholder _ can now also be used
    in the rhs of a forward pipe |&gt; expression as the first argument
    in an extraction call, such as _$coef. More generally, it can be
    used as the head of a chain of extractions, such as _$coef[[2]].
  * Spaces in the environment variable used to choose the R session's
    temporary directory (TMPDIR, TMP and TEMP are tried in turn) are
    now fatal.  (On Windows the 'short path' version of the path is
    tried and used if that does not contain a space.)
  * all.equal.numeric() gets a new optional switch giveErr to return
    the numeric error as attribute.  Relatedly,
    stopifnot(all.equal&lt;some&gt;(a, b, ..)) is as "smart" now, as
    stopifnot(all.equal(....)) has been already, thus allowing
    customized all.equal&lt;Some&gt;() wrappers.
  * R on Windows is now able to work with path names longer than 260
    characters when these are enabled in the system (requires at
    least Windows 10 version 1607).  Packages should be updated to
    work with long paths as well, instead of assuming PATH_MAX to be
    the maximum length.  Custom front-ends and applications embedding
    R need to update their manifests if they wish to allow this
    feature.  See
    &lt;https://blog.r-project.org/2023/03/07/path-length-limit-on-windows&gt;
    for more information.
  * 'Object not found' and 'Missing argument' errors now give a more
    accurate error context. Patch provided by Lionel Henry in
    PR#18241.
  * The @ operator is now an S3 generic. Based on contributions by
    Tomasz Kalinowski in PR#18482.
  * New generic chooseOpsMethod() provides a mechanism for objects to
    resolve cases where two suitable methods are found for an Ops
    Group Generic. This supports experimenting with alternative
    object systems. Based on contributions by Tomasz Kalinowski in
    PR#18484.
  * inherits(x, what) now accepts values other than a simple
    character vector for argument what. A new generic, nameOfClass(),
    is called to resolve the class name from what. This supports
    experimenting with alternative object systems. Based on
    contributions by Tomasz Kalinowski in PR#18485.
  * Detection of BLAS/LAPACK in use (sessionInfo()) with FlexiBLAS
    now reports the current backend.
  * The "data.frame" method for subset() now warns about extraneous
    arguments, typically catching the use of = instead of == in the
    subset expression.
  * Calling a:b when numeric a or b is longer than one may now be
    made into an error by setting environment variable
    _R_CHECK_LENGTH_COLON_ to a true value, along the proposal in
    PR#18419 by Henrik Bengtsson.
  * density(x, weights = *) now warns if automatic bandwidth
    selection happens without using weights; new optional warnWbw may
    suppress the warning.  Prompted by Christoph Dalitz' PR#18490 and
    its discussants.
  * rm(list = *) is faster and more readable thanks to Kevin Ushey's
    PR#18492.
  * The plot.lm() function no longer produces a normal Q-Q plot for
    GLMs. Instead it plots a half-normal Q-Q plot of the absolute
    value of the standardized deviance residuals.
  * The print() method for class "summary.glm" no longer shows
    summary statistics for the deviance residuals by default.  Its
    optional argument show.residuals can be used to show them if
    required.
  * The tapply() function now accepts a data frame as its X argument,
    and allows INDEX to be a formula in that case. by.data.frame()
    similarly allows INDICES to be a formula.
  * The performance of df[j] &lt;- value (including for missing j) and
    write.table(df) has been improved for data frames df with a large
    number of columns.  (Thanks to Gabriel Becker's PR#18500,
    PR#18503 and discussants, prompted by a report from Toby Dylan
    Hocking on the R-devel mailing list.)
  * The matrix multiply operator %*% is now an S3 generic, belonging
    to new group generic matrixOps.  From Tomasz Kalinowski's
    contribution in PR#18483.
  * New function array2DF() to convert arrays to data frames,
    particularly useful for the list arrays created by tapply().
  DATES and TIMES:
  * On platforms where (non-UTC) datetimes before 1902 (or before
    1900 as with system functions on recent macOS) are guessed by
    extrapolating time zones from 1902-2037, there is a warning at
    the first use of extrapolation in a session.  (As all time zones
    post 2037 are extrapolation, we do not warn on those.)
  * (Platforms using --with-internal-tzone, including Windows and by
    default macOS). How years are printed in dates or date-times can
    be controlled by environment variable R_PAD_YEARS_BY_ZERO.  The
    default remains to pad to 4 digits by zeroes, but setting value
    no gives no padding (as used by default by glibc).
  * strftime() tries harder to determine the offset for the "%z"
    format, and succeeds on the mainstream R platforms.
  * strftime() has a limit of 2048 bytes on the string produced -
    attempting to exceed this is an error.  (Previously it silently
    truncated at 255 bytes.)
  * sessionInfo() records (and by default prints) the system time
    zone as part of the locale information.  Also, the source
    (system/internal) of the date-time conversion and printing
    functions.
  * Objects of class "POSIXlt" created in this version of R always
    have 11 components: component zone is always set, and component
    gmtoff is set for times in UTC and usually set on the (almost
    all) platforms which have C-level support, otherwise is NA.
  * There are comprehensive validity checks on the structure of
    objects of class "POSIXlt" when converting (including formatting
    and printing).  (This avoids mis-conversions of hand-crafted
    objects.)
  * There is some support for using the native date-time routines on
    macOS: this is only viable on recent versions (e.g. 12.6 and 13)
    and does get wrong some historical changes (before 1900, during
    WWII).  Use of --with-internal-tzone remains the default.
  * as.POSIXct(&lt;numeric&gt;) and as.POSIXlt(.) (without specifying
    origin) now work.  So does as.Date(&lt;numeric&gt;).
  * as.Date.POSIXct(., tz) now treats several tz values, notably
    "GMT" as equivalent to "UTC", proposed and improved by Michael
    Chirico and Joshua Ulrich in PR#17674.
  * Experimental balancePOSIXlt() utility allows using "ragged" and
    or out-of-range "POSIXlt" objects more correctly, e.g., in
    subsetting and subassignments.  Such objects are now documented.
    More experimentally, a "POSIXlt" object may have an attribute
    "balanced" indicating if it is known to be filled or fully
    balanced.
  * Functions axis.Date() and axis.POSIXct() are rewritten to gain
    better default tick locations and better default formats by using
    prettyDate(). Thanks to Swetlana Herbrandt.
  * The mapping of Windows' names for time zones to IANA's 'Olson'
    names has been updated.  When ICU is available (it is by
    default), it is used to get a mapping for the current region set
    in Windows.  This can be overridden by setting environment
    variable TZ to the desired Olson name - see OlsonNames() for
    those currently available.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 16
    and so packages that provide graphics devices should be
    reinstalled.
  * The grDevices and grid packages have new functions for rendering
    typeset glyphs, primarily: grDevices::glyphInfo() and
    grid::grid.glyph().
    Rendering of typeset glyphs is only supported so far on the
    Cairo-based graphics devices and on the pdf() and quartz()
    devices.
  * The defined behaviour for "clear" and "source" compositing
    operators (via grid::grid.group()) has been changed (to align
    better with simple interpretation of original Porter-Duff
    definitions).
  * Support for gradients, patterns, clipping paths, masks, groups,
    compositing operators, and affine transformations has been added
    to the quartz() device.
  INSTALLATION on a UNIX-ALIKE:
  * A system installation of generic LAPACK 3.10.0 or later will be
    preferred to the version in the R sources.
    configure option --with-lapack=no (equivalently --without-lapack)
    forces compilation of the internal LAPACK sources.
    If --with-lapack is not specified, a system liblapack is looked
    for and used if it reports version 3.10.0 or later and does not
    contain BLAS routines.
    Packages using LAPACK will need to be reinstalled if this changes
    to using an external library.
  * On aarch64 Linux platforms using GCC, configure now defaults to
  - fPIC (instead of -fpic), as desired in PR#18326.
  * configure now checks conversion of datetimes between POSIXlt and
    POSIXct around year 2020.  Failure (which has been seen on
    platforms missing tzdata) is fatal.
  * If configure option --with-valgrind-instrumentation is given
    value 1 or 2, option --with-system-valgrind-headers is now the
    default and ignored (with a warning).  It is highly recommended
    that the system headers are installed alongside valgrind: they
    are part of its packaging on some Linux distributions and
    packaged separately (e.g. in the valgrind-devel RPM) on others.
    configure will give a warning if they are not found.
    The system headers will be required in a future release of R to
    build with valgrind instrumentation.
  * libcurl 8.x is now accepted by configure: despite a change in
    major version number it changes neither API nor ABI.
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools43, an update of the Rtools42 toolchain.  It is
    based on gcc 12 and newer versions of MinGW-W64, binutils and
    libraries.  At this time R-devel can still be built using
    Rtools42 without changes, but when R-devel is installed via the
    installer, it will by default look for Rtools43.
  * Old make targets rsync-extsoft and 32-bit ones that are no longer
    needed have been removed.
  * Default builds (including for packages) no longer select C99.
    Thus the C standard used is the default for the compiler, which
    for the toolchain in Rtools43 is C17.  (This is consistent with
    Unix builds.)
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++17 where
    available (which it is on all currently checked platforms): if
    not C++14 or C++11 is used if available otherwise C++ is not
    supported.
  * USE_FC_LEN_T is the default: this uses the correct
    (compiler-dependent) prototypes for Fortran BLAS/LAPACK routines
    called from C/C++, and requires adjustment of many such calls -
    see 'Writing R Extensions' SS6.6.1.
  * There is initial support for C++23 as several compilers are now
    supporting -std=c++23 or -std=c++2b or similar.  As for C++20,
    there no additional configure checks for C++23 features beyond a
    check that the compiler reports a __cplusplus value greater than
    that in the C++20 standard.  C++ feature tests should be used.
  * There is support for a package to indicate the version of the C
    standard which should be used to compile it, and for the
    installing user to specify this.  In most cases R defaults to the
    C compiler's default standard which is C17 (a `bug-fix' of C11) -
    earlier versions of R or compilers may have defaulted to C99.
    Current options are:
    USE_C17 Use a standard that is at most C17.  The intention is to
    allow legacy packages to still be installed when later C
    standards become the default, including packages using new
    keywords as identifiers or with K&amp;R-style function
    declarations.  This will use C17 if available, falling back
    to C11.
    USE_C90 Use the C90 (aka C89) standard.  (As that standard did
    not require compilers to identify that version, all we can
    verify is that the compiler does not claim to be using a
    later standard.  It may accept C99 features - for example
    clang accepts // to make comments.)
    USE_C99 Use the C99 standard. This should be rarely needed - it
    avoids the few new features of C11/C17 which can be useful if
    a package assumes them if C17 is specified and they are not
    implemented.
    USE_C23 Use C23 (or in future, later).  Compiler/library support
    for C23 is still being implemented, but LLVM clang from
    15.0.0 and the upcoming GCC 13 have quite extensive support.
    These can be specified as part of the SystemRequirements field in
    the package's DESCRIPTION file or _via_ options --use-C17 and so
    on of R CMD INSTALL and R CMD SHLIB.
    For further details see "Writing R Extensions" SS1.2.5.
  * (Windows) A src/Makefile.ucrt or src/Makefile.win file is now
    included after R_HOME/etcR_ARCH/Makeconf and so no longer needs
    to include that file itself.  Installation of a package with such
    a file now uses a site Makevars file in the same way as a package
    with a src/Makevars.win file would.
  * configure is now passed crucial variables such as CC and CFLAGS
    in its environment, as many packages were not setting them (as
    documented in 'Writing R Extensions' SS1.2).
    This has most effect where configure is used to compile parts of
    the package - most often by cmake or libtool which obfuscate the
    actual compile commands used.
    Also used for configure.win and configure.ucrt on Windows.
  FORTRAN FLAGS:
  * The flag -fno-optimize-sibling-calls is no longer forced for
    gfortran 7 and later.  It should no longer be needed now using
    'hidden' character-length arguments when calling BLAS/LAPACK
    routines from C/C++ is the default even for packages.  (Unless
    perhaps packages call Fortran code from C/C++ without using R's
    headers and without allowing for these arguments.)
  C-LEVEL FACILITIES:
  * The deprecated S-compatibility macros DOUBLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * The deprecated legacy typedefs of Sint and Sfloat in header R.h
    are no longer defined, and that header no longer includes header
    limits.h from C nor climits from C++.
  * New macro CAD5R() is provided in Rinternals.h and used in a few
    places in the R sources.
  * ALTREP now supports VECSXP vectors. Contributed by Gabor Csardi
    in PR#17620.
  * The Rcomplex definition (in header R_ext/Complex.h) has been
    extended to prevent possible mis-compilation when interfacing
    with Fortran (PR#18430).  The new definition causes compiler
    warnings with static initializers such as {1, 2}, which can be
    changed to {.r=1, .i=2}.
    Using the new definition from C++ depends on compiler extensions
    supporting C features that have not been incorporated into the
    C++ standards but are available in g++ and clang++: this may
    result in C++ compiler warnings but these have been worked around
    for recent versions of common compilers (GCC, Apple/LLVM clang,
    Intel).
    It is intended to change the inclusion of header R_ext/Complex.h
    by other R headers, so C/C++ code files which make use of
    Rcomplex should include that header explicitly.
  UTILITIES:
  * R CMD check does more checking of package .Rd files, warning
    about invalid email addresses and (some) invalid URIs and noting
    empty \item labels in description lists.
  * R CMD check now also reports problems when reading package news
    in md (file NEWS.md) and (optionally) plain text (file NEWS)
    formats.
  * _R_CHECK_TIMINGS_ defaults to a value from the environment even
    for R CMD check --as-cran; this allows for exceptionally fast or
    slow platforms.
    It now applies to checking PDF and HTML versions of the manuals,
    and 'checking CRAN incoming feasibility'.
  * R CMD check can optionally (but included in --as-cran) check
    whether HTML math rendering _via_ KaTeX works for the package .Rd
    files.
  * Non-interactive debugger invocations can be trapped by setting
    the environment variable _R_CHECK_BROWSER_NONINTERACTIVE_ to a
    true value.  This is enabled by R CMD check --as-cran to detect
    the use of leftover browser() statements in the package.
  * The use of sprintf and vsprintf from C/C++ has been deprecated in
    macOS 13 and is a known security risk.  R CMD check now reports
    (on all platforms) if their use is found in compiled code:
    replace by snprintf or vsnprintf respectively. [*NB:* whether
    such calls get compiled into the package is platform-dependent.]
  * Where recorded at installation, R CMD check reports the C and
    Fortran compilers used to build R.
    It reports the OS in use (if known, as given by osVersion) as
    well as that R was built for.
    It notes if a C++ standard was specified which is older than the
    current default: many packages have used C++11 to mean 'not
    C++98' - as C++11 is the minimum supported since R 4.0.0, that
    specification can probably be removed.
  * R CMD INSTALL reports the compilers (and on macOS, the SDK) used,
    and this is copied to the output of R CMD check.
    Where a C++ standard is specified, it is reported.
  * R CMD check's 'checking compilation flags in Makevars' has been
    relaxed to accept the use of flags such as -std=f2008 in
    PKG_FFLAGS.
  * tools::buildVignettes() has a new argument skip, which is used by
    R CMD check to skip (and note) vignettes with unavailable
    \VignetteDepends (PR#18318).
  * New generic .AtNames() added to enable class-specific completions
    after @. The formerly internal function findMatches() is now
    exported, mainly for use in methods for .DollarNames() and
    .AtNames().
  DEPRECATED AND DEFUNCT:
  * default.stringsAsFactors() is defunct.
  * Calling as.data.frame.&lt;class&gt;() directly (for 12 atomic classes)
    is going to be formally deprecated, currently activated by
    setting the environment variable
    _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ to non-empty, which also
    happens in R CMD check --as-cran.
  BUG FIXES:
  * Hashed environments with sizes less than 5 can now grow.
    (Reported to R-devel by Duncan Garmonsway.)
  * as.character(&lt;Rd&gt;, deparse = TRUE) failed to re-escape curly
    braces in LaTeX-like text.  (Reported by Hadley Wickham in
    PR#18324.)
  * library() now passes its lib.loc argument when requiring Depends
    packages; reported (with fix) in PR#18331 by Mikael Jagan.
  * R CMD Stangle: improved message about 'Output' files.
  * head(x, n) and tail(x, n) now signal an error if n is not
    numeric, instead of incidentally "working" sometimes returning
    all of x.  Reported and discussed by Colin Fay, in PR#18357.
  * The "lm" method for summary() now gives the correct F-statistic
    when the model contains an offset.  Reported in PR#18008.
  * C() and `contrasts&lt;-`() now preserve factor level names when
    given a function object (as opposed a function name which did
    preserve names). Reported in PR#17616.
  * c(a = 1, 2)[[]] no longer matches 2 but rather signals a
    _classed_ error.  Reported and analysed by Davis Vaughan in
    PR#18367, a duplicate of PR#18004, by Jan Meis et al.  For
    consistency, NULL[[]] is also erroneous now.  x[[]] &lt;- v gives an
    error of the same class "MissingSubscriptError".
  * The relist() function of utils now supports NULL elements in the
    skeleton (PR#15854).
  * ordered(levels = *) (missing x) now works analogously to factor(,
    ordered=TRUE); reported (with fix) by Achim Zeileis in PR#18389.
  * User-defined Rd macro definitions can now span multiple lines,
    thanks to a patch from Duncan Murdoch. Previously, the Rd parser
    silently ignored everything after the first line.
  * Plain-text help (tools::Rd2txt()) now preserves an initial blank
    line for text following description list items.
  * tools::Rd2HTML() and tools::Rd2latex() no longer split \arguments
    and \value lists at Rd comments.
  * tools::Rd2latex() now correctly handles optional text outside
    \items of argument lists as well as bracketed text at the
    beginning of sections, e.g., \value{[NULL]}.
  * as.character(&lt;POSIXt&gt;) now behaves more in line with the methods
    for atomic vectors such as numbers, and is no longer influenced
    by options().  Ditto for as.character(&lt;Date&gt;).  The
    as.character() method gets arguments digits and OutDec with
    defaults _not_ depending on options().  Use of as.character(*,
    format = .) now warns.
  * Similarly, the as.character.hexmode() and *.octmode() methods
    also behave as good citizen methods and back compatibility option
    keepStr = TRUE.
  * The as.POSIXlt(&lt;POSIXlt&gt;) and as.POSIXct(&lt;POSIXct&gt;) default
    methods now do obey their tz argument, also in this case.
  * as.POSIXlt(&lt;Date&gt;) now does apply a tz (time zone) argument, as
    does as.POSIXct(); partly suggested by Roland Fuss on the R-devel
    mailing list.
  * as.Date.POSIXlt(x) now also works when the list components are of
    unequal length, aka "partially filled" or "ragged".
  * expand.model.frame() looked up variables in the wrong environment
    when applied to models fitted without data.  Reported in
    PR#18414.
  * time() now (also) uses the ts.eps = getOption("ts.eps") argument
    and thus by default rounds values very close to the start (or
    end) of a year.  Based on a proposal by Andre"i V. Kostyrka on
    R-help.
  * Printing of a factanal() result with just one factor and sort =
    TRUE now works regularly, fixing PR#17863 by Timothy Bates,
    thanks to the 'R Contributors' working group.
  * Printing 0-length objects of class "factor", "roman", "hexmode",
    "octmode", "person", "bibentry", or "citation" now prints
    something better, one of which fixes PR#18422, reported by
    Benjamin Feakins.
  * Sys.timezone() queries timedatectl only if systemd is loaded;
    addressing a report by Jan Gorecki in PR#17421.
  * The formula method of cor.test() had scoping problems when
    environment(formula) was not the calling environment; reported
    with a patch proposal by Mao Kobayashi in PR#18439.
  * attach() of an environment with active bindings now preserves the
    active bindings.  Reported by Kevin Ushey in PR#18425.
  * BLAS detection now works also with system-provided libraries not
    available as regular files.  This fixes detection of the
    Accelerate framework on macOS since Big Sur.  Reported by David
    Novgorodsky.
  * download.file() gives a helpful error message in case of an
    invalid download.file.method option, thanks to Colin Fay's report
    in PR#18455.
  * Sporadic crashes of Rterm when using completion have been fixed.
  * Rprof() is now more reliable.  A livelock in thread
    initialization with too short sampling interval has been fixed on
    macOS.  A deadlock in using the C runtime has been fixed on
    Windows.  A potential deadlock has been prevented on Unix.
  * Cursor placement in Rgui now works even after a fixed-width font
    is selected.
  * Mandatory options (options()) are now set on startup so that
    saving and restoring them always works (PR#18372).
  * Package installation, R CMD INSTALL or install.packages(*), now
    parses each of the &lt;pkg&gt;/R/*.R files individually instead of
    first concatenating and then parse()ing the large resulting file.
    This allows parser or syntax errors to be diagnosed with correct
    file names and line numbers, thanks to Simon Dedman's report and
    Bill Dunlap's patch in PR#17859.
    This _does_ require syntactically self contained R source files
    now, fixing another inadvertent bug.
  * predict.lm(&lt;model with offset&gt;) now finds the offset in the
    correct environment, thanks to Andr'e Gillibert's report and patch
    in PR#18456.
  * getInitial(&lt;formula&gt;) now finds the selfStart model in the
    correct environment.  (Reported by Ivan Krylov in PR#18368.)
  * Fix for possible segfault when using recently-added graphics
    features, such as gradients, clipping paths, masks, and groups
    with pdf(file=NULL).
  * class(m) &lt;- class(m) no longer changes a matrix m by adding a
    class _attribute_.
  * packageDate(pkg) now only warns once if there is no pkg.
  * When ts() creates a multivariate time series, "mts", it also
    inherits from "array" now, and is.mts() is documented _and_
    stricter.
  * Rd2txt() now preserves line breaks of \verb Rd content and from
    duplicated \cr.  The former also fixes the rendering of verbatim
    output from Rd \Sexpr in plain-text help.
  * uniroot(f, interval) should no longer wrongly converge _outside_
    the interval in some cases where abs(f(x)) == Inf for an x at the
    interval boundary, thanks to posts by Ben Bolker and Serguei
    Sokol on R-devel.
  * Vectorized alpha handling in palette functions such as in gray(),
    rainbow(), or hcl.colors() works correctly now, thanks to Achim
    Zeileis' report and patch in PR#18476.
  * Formatting and print()ing of bibentry objects has dropped the
    deprecated citation.bibtex.max argument, such that the bibtex
    argument's default for print.bibentry() depends directly on the
    citation.bibtex.max option, whereas in format.bibentry() the
    option no longer applies.
  * Attempting to use a character string naming a foreign function
    entry point in a foreign function call in a package will now
    signal an error if the packages has called R_forceSymbols to
    specify that symbols must be used.
  * An error in table() could permanently set options(warn=2)
    promoting all subsequent warnings to errors.
  * The sigma() function gave misleading results for binary GLMs.  A
    new method for objects of class "glm" returns the square root of
    the estimate of the dispersion parameter using the same
    calculation as summary.glm().
  * bs() and ns() in the (typical) case of automatic knot
    construction, when some of the supposedly inner knots coincide
    with boundary knots, now moves them inside (with a warning),
    building on PR#18442 by Ben Bolker.
  * R CMD on Windows now skips the site profile with --no-site-file
    and --vanilla even when R_PROFILE is set (PR#18512, from Kevin
    Ushey).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1686916800">- CHANGES IN R 4.3.1:
  C-LEVEL FACILITIES:
  * The C-level API version of R's integrate(), Rdqags() in Applic.h,
    now returns the correct number of integrand evaluations neval,
    fixing PR#18515 reported and diagnosed by Stephen Wade.
  * The C prototypes for LAPACK calls dspgv and dtptrs in
    R_exts/Lapack.h had one too many and one too few character length
    arguments - but this has not caused any known issues. To get the
    corrected prototypes, include
    [#]include &lt;Rconfig.h&gt; // for PR18534fixed
    [#]ifdef PR18534fixed
    [#] define usePR18534fix 1
    [#]endif
    [#]include &lt;R_exts/Lapack.h&gt;
    in your C/C++ code (PR#18534).
  INSTALLATION:
  * Many of the checks of esoteric Internet operations and those
    using unreliable external sites have been moved to a new target
    that is not run by default and primarily intended for the core
    developers.  To run them use
    cd tests; make test-Internet-dev
  BUG FIXES:
  * .S3methods(), typically called from methods(), again marks
    methods from package base as visible.
    Also, the visibility of non-base methods is again determined by
    the method's presence in search().
  * tools::Rdiff() is now more robust against invalid strings, fixing
    installation tests on Windows without Rtools installed
    (PR#18530).
  * Fix (new) bug in hcl.colors(2, *), by Achim Zeileis (PR#18523).
  * head(., &lt;illegal&gt;) and tail(..) now produce more useful "Error in
    ...." error messages, fixing PR#18362.
  * Package code syntax on Windows is checked in UTF-8 when UTF-8 is
    the native encoding.
  * na.contiguous(x) now also returns the first run, when it is at
    the beginning and there is a later one of the same length;
    reported to R-devel, including a fix, by Georgi Boshnakov.
    Further, by default, it modifies only an existing attr(*,"tsp")
    but otherwise no longer sets one.
  * chol(&lt;not pos.def&gt;, pivot = &lt;T|F&gt;) now gives a correct error or
    warning message (depending on pivot), thanks to Mikael Jagan's
    (PR#18541).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1699012800">- CHANGES IN R 4.3.2:
  NEW FEATURES:
  * The default initialization of the "repos" option from the
    repositories file at startup can be skipped by setting
    environment variable R_REPOSITORIES to NULL such that
    getOption("repos") is empty if not set elsewhere.
  * qr.X() is now an implicit S4 generic in methods.
  * iconv(to = "ASCII//TRANSLIT") is emulated using substitution on
    platforms which do not support it (notably Alpine Linux).  This
    should give a human-readable conversion in ASCII on all platforms
    (rather than NA_character_).
  * trans3d() gains options continuous and verbose addressing the
    problem of possible "wrap around" when projecting too long
    curves, as reported by Achim Zeileis in PR#18537.
  * tools::showNonASCII() has been rewritten to work better on macOS
    14 (which has a changed implementation of iconv()).
  * tiff(type = "quartz") (the default on macOS) now warns if
    compression is specified: it continues to be ignored.
  INSTALLATION on a UNIX-ALIKE:
  * There is some support for building with Intel's LLVM-based
    compilers on x86_64 Linux, such as (C) icx, (C++) ipcx and
    (Fortran) ifx from oneAPI 2023.x.y.
  * There is support for using LLVM's flang-new as the Fortran
    compiler from LLVM 16.0.x (preferably 17.0.0 or later).
  UTILITIES:
  * R CMD check reports the use of the Fortran 90 random number
    generator RANDOM_NUMBER() and the subroutines to initialize it.
    'Writing R Extensions' has example code to use R's RNGs from
    Fortran.
  BUG FIXES:
  * substr(x, n, L) &lt;- cc now works (more) correctly for multibyte
    UTF-8 strings x when L &gt; nchar(x), thanks to a report and patch
    by 'Architect 95'.
  * contrib.url(character()) now returns 0-length character() as
    documented, which also avoids spurious warnings from
    available.packages() et al. in the edge case of an empty vector
    of repository URLs.
  * readChar(., 4e8) no longer fails, thanks to Kodi Arfer's report
    (PR#18557).
  * lapply(&lt;list&gt;, as.data.frame) no longer warns falsely for some
    base vector components.
  * Communication between parent and child processes in the multicore
    part of parallel could fail on platforms that do not support an
    arbitrarily large payload in system functions read()/write() on
    pipes (seen on macOS where a restriction to INT_MAX bytes is
    documented, without doing a partial read unlike Linux). The
    payload is now split into 1Gb chunks to avoid that problem.
    (PR#18571)
  * qqplot(x,y, conf.level=.) gives better confidence bounds when
    length(x) != length(y), thanks to Alexander Ploner's report and
    patch proposal (PR#18557).
  * norm(&lt;0-length&gt;, "2") now gives zero instead of an error, as all
    the other norm types, thanks to Mikael Jagan's PR#18542.
  * Build-stage Rd macros \packageAuthor and \packageMaintainer now
    process Authors@R, fixing NA results when the package DESCRIPTION
    omits Author and Maintainer fields.
  * Formatting and printing complex numbers could give things like
    0.1683-0i because of rounding error: -0i is now replaced by +0i.
  * postscript() refused to accept a title comment containing the
    letter "W" (PR#18599).
  * isoreg(c(1,Inf)) signals an error instead of segfaulting, fixing
    PR#18603.
  * tiff(type = "Xlib") was only outputting the last page of
    multi-page plots.
  * tools::latexToUtf8() again knows about \~{n} and other letters
    with tilde, fixing a regression in R 4.3.0, and about \^{i} as an
    alternative to \^{\i} (similarly with other accents).
    Furthermore, LaTeX codes for accented I letters are now correctly
    converted, also fixing related mistakes in
    tools::encoded_text_to_latex().
  * tar(*, tar = "internal") no longer creates out-of-spec tar files
    in the very rare case of user or group names longer than 32
    bytes, fixing PR#17871 with thanks to Ivan Krylov.
  * When using the "internal" timezone datetime code, adding a
    fraction of a second no longer adds one second, fixing PR#16856
    from a patch by Ivan Krylov.
  * tools::checkRd() no longer produces spurious notes about
    "unnecessary braces" from multi-line Rd results of \Sexpr macros.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1709208000">- CHANGES IN R 4.3.3:
  NEW FEATURES:
  * iconv() now fixes up variant encoding names such as "utf8"
    case-insensitively.
  DEPRECATED AND DEFUNCT:
  * The legacy encoding = "MacRoman" is deprecated in pdf() and
    postscript(): support was incomplete in earlier versions of R.
  BUG FIXES:
  * Arguments are now properly forwarded to methods on S4 generics
    with ... in the middle of their formal arguments. This was broken
    for the case when a method introduced an argument but did not
    include ... in its own formals. Thanks to Herv'e Pag`es for the
    report PR#18538.
  * Some invalid file arguments to pictex(), postscript() and xfig()
    opened a file called NA rather than throw an error.  These
    included postscript(NULL) (which some people expected to work
    like pdf(NULL)).
  * Passing filename = NA to svg(), cairo_pdf(), cairo_ps() or the
    Cairo-based bitmap devices opened a file called NA: it now throws
    an error.
  * quartz(file = NA) opened a file called NA, including when used as
    a Quartz-based bitmap device.  It now gives an error.
  * rank(&lt;long vector&gt;) now works, fixing PR#18617, thanks to Ilia
    Kats.
  * seq.int() did not adequately check its length.out argument.
  * match(&lt;POSIXct&gt;, .) is correct again for differing time zones,
    ditto for "POSIXlt", fixing PR#18618 reported by Bastian Klein.
  * drop.terms(*, dropx = &lt;0-length&gt;) now works, fixing PR#18563 as
    proposed by Mikael Jagan.
  * drop.terms(*) keeps + offset(.) terms when it should, PR#18565,
    and drop.terms() no longer makes up a response, PR#18566, fixing
    both bugs thanks to Mikael Jagan.
  * getS3method("t", "test") no longer finds the t.test() function,
    fixing PR#18627.
  * pdf() and postscript() support for the documented Adobe encodings
    "Greek" and "Cyrilllic" was missing (although the corresponding
    Windows' codepages could be used).
  * Computations of glyph metric information for pdf() and
    postscript() did not take into account that transliteration could
    replace one character by two or more (only seen on macOS 14) and
    typically warned that the information was not known.
  * rank(x) no longer overflows during integer addition, when
    computing rank average for largish but not-yet long vector x,
    fixing PR#18630, thanks to Ilia Kats.
  * list.files() on Windows now returns also files with names longer
    that 260 bytes (the Windows limit is 260 characters).
    Previously, some file names particularly with 'East Asian'
    characters were omitted.
  * cov2cor(&lt;0 x 0&gt;) now works, fixing PR#18423 thanks to Mikael
    Jagan and Elin Waring.
  * cov2cor(&lt;negative diagonal&gt;) and similar now give one warning
    instead of two, with better wording, fixing PR#18424 thanks to
    Mikael Jagan.
  * tools:: startDynamicHelp() now ensures port is in proper range,
    fixing PR#18645.
  * pbeta(x, a,b) is correct now for x=0 or 1 in the boundary cases
    where a or b or both are 0, fixing PR#18672 thanks to Michael
    Fay.
  * pmatch(x, table) for large table, also called for data frame row
    selection, dfrm[nm, ], is now interruptible, fixing PR#18656.
  * predict(&lt;rank-deficient lm&gt;, newdata=*) fix computing of nbasis,
    see Russ Lenth's comment 29 in PR#16158.
  * Added a work-around for a bug in macOS 14.3.1 and higher which
    prevents R plots in the Quartz Cocoa device from updating on
    screen.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1713960000">- CHANGES IN R 4.4.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Startup banners, R --version, sessionInfo() and R CMD check no
    longer report (64-bit) as part of the platform as this is almost
    universal - the increasingly rare 32-bit platforms will still
    report (32-bit).
    On Windows, ditto for window titles.
  * is.atomic(NULL) now returns FALSE, as NULL is not an atomic
    vector.  Strict back-compatibility would replace is.atomic(foo)
    by (is.null(foo) || is.atomic(foo)) but should happen only
    sparingly.
  NEW FEATURES:
  * The confint() methods for "glm" and "nls" objects have been
    copied to the stats package.  Previously, they were stubs which
    called versions in package MASS. The MASS namespace is no longer
    loaded if you invoke (say) confint(glmfit).  Further, the "glm"
    method for profile() and the plot() and pairs() methods for class
    "profile" have been copied from MASS to stats.  (profile.nls()
    and plot.profile.nls() were already in stats.)
  * The confint() and profile methods for "glm" objects have gained a
    possibility to do profiling based on the Rao Score statistic in
    addition to the default Likelihood Ratio. This is controlled by a
    new test = argument.
  * The pairs() method for "profile" objects has been extended with a
    which = argument to allow plotting only a subset of the
    parameters.
  * The "glm" method for anova() computes test statistics and
    p-values by default, using a chi-squared test or an F test
    depending on whether the dispersion is fixed or free.  Test
    statistics can be suppressed by giving argument test a false
    logical value.
  * In setRepositories() the repositories can be set using their
    names via name = instead of index ind =.
  * methods() and .S3methods() gain a all.names option for the (rare)
    case where functions starting with a . should be included.
  * Serializations can now be interrupted (e.g., by Ctrl-C on a
    Unix-alike) if they take too long, e.g., from save.image(),
    thanks to suggestions by Ivan Krylov and others on R-devel.
  * New startup option --max-connections to set the maximum number of
    simultaneous connections for the session.  Defaults to 128 as
    before: allowed values up to 4096 (but resource limits may in
    practice restrict to smaller values).
  * R on Windows (since Windows 10 2004) now uses the new Segment
    Heap allocator. This may improve performance of some
    memory-intensive applications.
  * When R packages are built, typically by R CMD build &lt;pkg&gt;, the
    new --user=&lt;build_user&gt; option overrides the (internally
    determined) user name, currently Sys.info()["user"] or LOGNAME.
    This is a (modified) fulfillment of Will Landau's suggestion in
    PR#17530.
  * tools::testInstalledBasic() gets new optional arguments outDir
    and testSrcdir, e.g., allowing to use it in a &lt;builddir&gt; !=
    &lt;srcdir&gt; setup, and in standard "binary" Windows installation
  * if* a source tests/ folder is present.
  * range(&lt;DT_with_Inf&gt;, finite = TRUE) now work for objects of class
    "Date", "POSIXct", and "POSIXlt" with infinite entries,
    analogously to range.default(), as proposed by Davis Vaughan on
    R-devel.  Other range()-methods can make use of new function
    .rangeNum().
  * New .internalGenerics object complementing .S3PrimitiveGenerics,
    for documentation and low-level book-keeping.
  * grid() now invisibly returns the x- and y- coordinates at which
    the grid-lines were drawn.
  * norm(., type) now also works for complex matrices.
  * kappa(., exact = TRUE, norm = *) now works for all norms and also
    for complex matrices.  In symmetric / triangular cases, the new
    argument uplo = "U" | "L" allows the upper or lower triangular
    part to be specified.
  * memDecompress(type = "unknown") recognizes compression in the
    default 'zlib' format as used by memCompress(type = "gzip").
  * memCompress() and memDecompress() will use the libdeflate library
    (&lt;https://github.com/ebiggers/libdeflate&gt;) if installed.  This
    uses the same type of compression for type = "gzip" but is 1.5-2x
    faster than the system libz library on some common platforms: the
    speed-up may depend on the library version.
  * diff() for objects of class "Date", "POSIXct", and "POSIXlt"
    accepts a units argument passed via ....
  * Dynamic help now does a much better job of rendering package
    DESCRIPTION metadata.
  * Rprof() gains an event argument and support for elapsed (real)
    time profiling on Unix (PR#18076).
  * filled.contour() gains a key.border argument.
  * tools::update_pkg_po() gets arguments pot_make and mo_make for
    _not_ re-making the corresponding files, and additionally a
    verbose argument.
  * Hexadecimal string colour specifications are now accepted in
    short form, so, for example, we can use "#123", which is
    equivalent to "#112233".
    Thanks to MikeFC for the original idea and Ella Kaye, Malcolm
    Barrett, George Stagg, and Hanne Oberman for the patch.
  * Plain-text help shows \var markup by angle brackets.
  * The new experimental primitive function declare() is intended to
    eventually allow information about R code to be communicated to
    the interpreter, compiler, and code analysis tools. The syntax
    for declarations is still being developed.
  * Functions psmirnov(), qsmirnov() and rsmirnov() in package stats
    have had argument two.sided renamed to alternative, to take into
    account that the permutation distributions of the one-sided
    statistics can be different in the case of ties.  Consequence of
    PR#18582.
  * sort() is now an implicit S4 generic in methods.
  * Formatting and printing, format(z), print(z), of complex vectors
    z no longer zap relatively small real or imaginary parts to zero,
    fixing PR#16752.  This is an API change, as it was documented
    previously to round real and imaginary parts together on purpose,
    producing nicer looking output.  As mentioned, e.g. in the PR,
    this change is compatible with many other "R-like" programming
    environments.
    We have simplified the internal code and now basically format the
    real and imaginary parts independently of each other.
  * New experimental functions Tailcall() and Exec() to support
    writing stack-space-efficient recursive functions.
  * Where characters are attempted to be plotted by pdf(),
    postscript() and xfig() which are not in the selected 8-bit
    character set (most often Latin-1) and the R session is using a
    UTF-8 locale, the warning messages will show the UTF-8 character
    rather than its bytes and one dot will be substituted per
    character rather than per byte.  (Platforms whose iconv() does
    transliteration silently plot the transliteration.)
    In a UTF-8 locale some transliterations are now done with a
    warning (e.g., dashes and Unicode minus to hyphen, ligatures are
    expanded, permille (‰) is replaced by o/oo), although the OS may
    have got there first.  These are warnings as they will continue
    to be replaced by dots in earlier versions of R.
  * The matrix multiplication functions crossprod() and tcrossprod()
    are now also primitive and S3 generic, as %*% had become in R
    4.3.0.
  * source() and example() have a new optional argument catch.aborts
    which allows continued evaluation of the R code after an error.
  * The non-Quartz tiff() devices allow additional types of
    compression if supported by the platform's libtiff library.
  * The list of base and recommended package names is now provided by
    tools::standard_package_names().
  * cairo_pdf() and cairo_ps() default to onefile = TRUE to closer
    match pdf() and postscript().
  * New option catch.script.errors provides a documented way to catch
    errors and then continue in non-interactive use.
  * L %||% R newly in base is an expressive idiom for the phrases
    if(!is.null(L)) L else R or if(is.null(L)) R else L.
  * The return value from warnings() now always inherits from
    "warnings" as documented, now also in the case of no warnings
    where it previously returned NULL.
  * as.complex("1i") now returns 0 + 1i instead of NA with a warning.
  * z &lt;- c(NA, 1i) now keeps the imaginary part Im(z[1]) == 0, no
    longer coercing to NA_complex_.  Similarly, cumsum(z) correctly
    sums real and imaginary parts separately, i.e., without
    "crosstalk" in case of NAs.
  * On Alpine Linux iconv() now maps "latin2", "latin-2", "latin9"
    and "latin-9" to encoding names the OS knows about
    (case-insensitively).
  * iconv(sub = "Unicode") now always zero-pads to four (hex) digits,
    rather than to 4 or 8.  (This seems to have become the convention
    once Unicode restricted the number of Unicode points to 2^21 - 1
    and so will never need more than 6 digits.)
  * NCOL(NULL) now returns 0 instead of 1, for consistency with
    cbind().
  * The information for the Euro glyph missing from the Adobe .afm
    files for the Courier, Helvetica and Times families has been
    copied from their URW equivalents - this will improve vertical
    centring in the pdf() and postscript() devices.
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.12.0.  The changes are almost entirely cosmetic.
  * The included LAPACK sources have been updated to version 3.12.0
    and some further double-complex routines added.
  * There are new font families for the 2014--5 URW 2.0 fonts (see
    ?pdf) which are included in recent versions of Ghostscript.
    These have font widths for most Greek glyphs and a few others
    which were missing from the original versions (whose font
    families remain available for reproducibility, although
    Ghostscript-based viewers will render using the 2.0 versions).
  * Improve the large-n efficiency of as.matrix(&lt;dist&gt;), thanks an R
    contributors effort, notably by Tim Taylor and Heather Turner,
    see PR#18660.
  * The default and numeric methods of all.equal() get a check.class
    option.
  * zapsmall() gets new optional arguments, function mFUN and min.d,
    for extra flexibility; fulfills a wish in PR#18199.  Also, it is
    now an implicit S4 generic in package methods.
  * The Rd filter for aspell() gains an ignore argument.
  * New generic function sort_by(), primarily useful for the
    data.frame method which can be used to sort rows of a data frame
    by one or more columns.
  * The icence headers for the RPC code in src/extra/xdr have been
    updated to use the GPL-compatible licence published by Oracle
    America in 2010.
  * New function pkg2HTML() in tools to create single-page HTML
    reference manuals for R packages.
  * The byte code evaluator now uses less C stack space for recursive
    calls to byte-compiled functions. It also makes more of an effort
    to avoid allocations for scalar return values.
  * New completion option backtick (disabled by default) allows
    non-syntactic completions to be wrapped in backquotes. This is
    currently only useful for Jupyter notebooks via the IRkernel
    package, and may cause problems for other backends.
  INSTALLATION:
  * The parser has been updated to work with bison 3.8.2, which is
    now used for the pre-generated parsers in gram.c, file.c, and
    gramRd.c. A few parser error messages have changed, which may
    affect code that relies on exact messages.
  INSTALLATION on a UNIX-ALIKE:
  * System valgrind headers are now required to use configure option
  - -with-valgrind-instrumentation with value 1 or 2.
  * configure will warn if it encounters a 32-bit build, as that is
    nowadays almost untested.
  * Environment variable R_SYSTEM_ABI is no longer used and so no
    longer recorded in etc/Renviron (it was not on Windows and was
    only ever used when preparing package tools).
  * If the libdeflate library and headers are available, libdeflate
    rather than libz is used to (de)compress R objects in lazy-load
    databases.  Typically tasks spend up to 5% of their time on such
    operations, although creating lazy-data databases is one of the
    exceptions.
    This can be suppressed if the library is available by the
    configure option --without-libdeflate-compression.
  * configure option --enable-lto=check has not worked reliably since
    2019 and has been removed.
  * The minimum autoconf requirement for a maintainer build has been
    increased to autoconf 2.71.
    It is intended to increase this to 2.72 for R 4.5.0: the
    distributed configure file was generated using 2.72.
  * The minimum version requirement for an external LAPACK has been
    reduced to 3.9.0.
  * No default C++ compiler is set if no C++17 compiler is detected:
    there is no longer an automatic fallback to C++14 or C++11.
    Compilers from the last five years should have sufficient
    support: for others macros CXX and CXXSTD can be set in file
    config.site to provide a fallback if needed.
    The Objective-C++ compiler now by default uses the standard
    selected by R for C++ (currently C++17) rather than the default
    standard for the C++ compiler (which on macOS is still C++98).
  INSTALLATION on macOS:
  * A new configure option --with-newAccelerate makes use of Apple's
    'new' BLAS / LAPACK interfaces in their Accelerate framework.
    Those interfaces are only available in macOS 13.3 or later, and
    building requires SDK 13.3 or later (from the Command Line Tools
    or Xcode 14.3 or later).
    By default the option uses new Accelerate for BLAS calls: to also
    use it for LAPACK use option --with-newAccelerate=lapack.  The
    later interfaces provide LAPACK 3.9.1 rather than 3.2.1: 3.9.1 is
    from 2021-04 and does not include the improved algorithms
    introduced in LAPACK 3.10.0 (including for BLAS calls).
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools44, an update of the Rtools43 toolchain.  It is
    based on GCC 13 and newer versions of MinGW-W64, binutils and
    libraries (targeting 64-bit Intel CPUs).  R-devel can no longer
    be built using Rtools43 without changes.
  * Rtools44 has experimental support for 64-bit ARM (aarch64) CPUs
    _via_ the LLVM 17 toolchain using lld, clang/flang-new and
    libc++.
  UTILITIES:
  * R CMD check notes when S4-style exports are used without
    declaring a strong dependence on package methods.
  * tools::checkRd() (used by R CMD check) detects more problems with
    \Sexpr-based dynamic content, including bad nesting of \Sexprs
    and invalid arguments.
  * tools::checkRd() now reports Rd titles and section names ending
    in a period; this is ignored by R CMD check unless environment
    variable _R_CHECK_RD_CHECKRD_MINLEVEL_ is set to -5 or smaller.
  * R CMD check now notes Rd files without an \alias, as long
    documented in 'Writing R Extensions' §1.3.1.  The check for a
    missing \description has been moved from tools::checkRd() to
    tools::checkRdContents().
  * R CMD check now visits inst/NEWS.Rd and OS-specific man
    subdirectories when checking Rd files.
  * tools::checkDocFiles() and tools::checkRdContents() now also
    check internal Rd files by default, but "specially" (ignoring
    missing documentation of arguments).
  * R CMD Rdiff gets option --useEx.
  * R CMD check now warns on non-portable uses of Fortran KIND such
    as INTEGER(KIND=4) and REAL(KIND=8).
    To see the failing lines set environment variable
    _R_CHECK_FORTRAN_KIND_DETAILS_ to a true value.
  * When checking Rd files, R CMD check now notes some of the "lost
    braces" that tools::checkRd() finds.  Typical problems are Rd
    macros missing the initial backslash (e.g., code{...}), in-text
    set notation (e.g., {1, 2}, where the braces need escaping), and
    \itemize lists with \describe-style entries of the form
    \item{label}{description}.
  * R CMD INSTALL (and hence check) will compile C++ code with
  - DR_NO_REMAP if environment variable _R_CXX_USE_NO_REMAP_ is set
    to a true value.  It is planned that this will in future become
    the default for compiling C++.
  * The new built-in Rd macro \dontdiff{} can be used to mark example
    code whose output should be ignored when comparing check output
    to reference output (tests/Examples/&lt;pkg&gt;-Ex.Rout.save).  The
    \dontdiff tag, like \donttest, is _not_ shown on the rendered
    help page, so provides a clean alternative to ##
    IGNORE_RDIFF_(BEGIN|END) comments.
  * R CMD build when there is no NAMESPACE, now uses the recommended
    exportPattern("^[^.]"), instead of exporting everything.
  * R CMD check now warns about non-ASCII characters in the NAMESPACE
    file (in addition to R files). Such packages are not portable and
    may fail to install on some platforms.
  C-LEVEL FACILITIES:
  * Headers R_ext/Applic.h and R-ext/Linpack.h used to include
    R_ext/BLAS.h although this was undocumented and unneeded by their
    documented entry points.  They no longer do so.
  * New function R_missing(), factored out from do_missing(), used to
    fix PR#18579.
  * SEXP type S4SXP has been renamed to OBJSXP to support
    experimenting with alternative object systems.  The S4SXP value
    can still be used in C code but is now deprecated.  Based on
    contributions from the R Consortium's Object-Oriented Programming
    Working Group.
  * New function pow1p(x,y) for accurate (1+x)^y.
  * mkCharLenCE was incorrectly documented to take a size_t length
    but was implemented with int (and character strings in R are
    limited to 2^31 - 1 bytes).
  DEPRECATED AND DEFUNCT:
  * data() no longer handles zipped data from long-defunct (since R
    2.13.0) --use-zip-data installations.
  * The legacy graphics devices pictex() and xfig() are now
    deprecated.  They do not support recent graphics enhancements and
    their font handling is rudimentary. The intention is to retain
    them for historical interest as long as they remain somewhat
    functional.
  * Support for encoding = "MacRoman" has been removed from the pdf()
    and postscript() devices - this was a legacy encoding supporting
    classic macOS up to 2001 and no longer has universal libiconv
    support.
  * is.R() is deprecated as no other S dialect is known to be in use
    (and this could only identify historical dialects, not future
    ones).
    Further information on calls can be obtained by setting the
    environment variable _R_DEPRECATED_IS_R_ to error which turns the
    deprecation warning into an error and so by default gives a
    traceback.  (This is done by R CMD check --as-cran.)
  * UseMethod() no longer forwards local variables assigned in the
    generic function into method call environments before evaluating
    the method body. This makes method calls behave more like
    standard function calls and makes method code easier to analyze
    correctly.
  * The twelve as.data.frame.&lt;class&gt;() methods which were deprecated
    only via _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ and in R CMD
    check --as-cran are formally deprecated now in favour of calling
    as.data.frame() or as.data.frame.vector().  The deprecation
    "check" now works also when as.data.frame() is S4 generic thanks
    to Ivan Krylov.
  * The default method for the directional comparison operators &lt;, &gt;,
    &lt;=, and &gt;= now signals an error when one of the operands is a
    language object, i.e. a symbol or a call.
  * For terms.formula(), deprecate abb and neg.out arguments
    _formally_ in addition to just documenting it.
  BUG FIXES:
  * The methods package is more robust to not being attached to the
    search path.  More work needs to be done.
  * pairwise.t.test() misbehaved when subgroups had 0 DF for
    variance, even with pool.sd = TRUE.  (PR#18594 by Jack Berry).
  * Probability distribution functions [dpq]&lt;distrib&gt;(x, *), but also
    bessel[IKJY](x, .) now consistently preserve attributes(x) when
    length(x) == 0, e.g., for a 2 x 0 matrix, thanks to Karolis
    Koncevičius' report PR#18509.
  * Group "Summary" computations such as sum(1:3, 4, na.rm = 5, NA,
    7, na.rm = LL) now give an error instead of either 17 or NN for
    LL true or false, as proposed by Ivan Krylov on the R-devel
    mailing list.  (This also means it is now an error to specify
    na.rm more than once.)
  * as.complex(x) now returns complex(real = x, imaginary = 0) for
    _all_ numerical and logical x, notably also for NA or
    NA_integer_.
  * Directories are now omitted by file.copy(, recursive = FALSE) and
    in file.append() (PR#17337).
  * gsub() and sub() are now more robust to integer overflow when
    reporting errors caused by too large input strings (PR#18346).
  * Top-level handlers are now more robust to attempts to remove a
    handler whilst handlers are running (PR#18508).
  * The handling of Alt+F4 in dialogs created on Windows using
    GraphApp has been fixed (PR#13870).
  * density() more consistently computes grid values for the
    FFT-based convolution, following Robert Schlicht's analysis and
    proposal in PR#18337, correcting density values typically by a
    factor of about 0.999.  Argument old.coords = TRUE provides back
    compatibility.
  * palette.colors() gains a name argument that defaults to FALSE
    controlling whether the vector of colours that is returned has
    names (where possible).  PR#18529.
  * tools::xgettext() no longer extracts the (non-translatable) class
    names from warningCondition and errorCondition calls.
  * S3method(&lt;gen&gt;, &lt;class&gt;, &lt;func&gt;) in the NAMESPACE file now works
    (again) when &lt;func&gt; is visible from the namespace, e.g.,
    imported, or in base.
  * getParseData(f) now also works for a function defined in the
    first of several &lt;pkg&gt;/R/*.R source files, thanks to Kirill
    Müller's report and Duncan Murdoch's patch in PR#16756.
  * Rd \Sexpr macros with nested #ifdef conditionals were not
    processed.
  * A non-blocking connection with non-default encoding (such as a
    socket) now correctly returns from readLines() after new data has
    arrived also when its EOF had been reached previously.  Thanks to
    Peter Meilstrup's report on R-devel and Ivan Krylov's report and
    patch proposal in PR#18555.
  * tools::checkRdContents() failed to detect empty argument
    descriptions when they spanned multiple lines, including those
    generated by prompt().  These cases are now noted by R CMD check.
  * Plain-text help no longer outputs spurious colons in the
    arguments list (for multi-line \item labels in the Rd source).
  * kappa() and rcond() work correctly in more cases; kappa(., norm =
    "2") now warns that it computes the 1-norm with (default) exact =
    FALSE; prompted by Mikael Jagan's quite comprehensive PR#18543.
  * Rd skeletons generated by prompt() or promptData() now use a
    dummy title (so R CMD build works).  tools::checkRdContents() has
    been updated to detect such template leftovers, including from
    promptPackage().
  * When S4 method dispatch fails because no method was found, the
    error message now includes the signature argument names; thanks
    to Michael Chirico's proposal on the R-devel list.
  * withAutoprint({ .. }) now preserves srcrefs previously lost,
    thanks to Andrew Simmons' report plus fix in PR#18572.
  * transform.data.frame() no longer adjusts names; in particular,
    untransformed variables are kept as-is, including those with
    syntactically invalid names (PR#17890).
  * The keep.source option for Rd \Sexpr blocks is no longer ignored.
  * The formula methods for t.test() and wilcox.test() now catch when
    paired is passed, addressing PR#14359; use Pair(x1, x2) ~ 1 for a
    paired test.
  * The level reported in the browser prompt was often too large. It
    now shows the number of browser contexts on the stack.
  * For cbind() and rbind(), the optional deparse.level argument is
    now properly passed to methods, thanks to Mikael Jagan's PR#18579
    and comments there.
  * Some error and warning messages for large ('long vector')
    matrix(v, nr, nc) and dim(m) &lt;- d are now correct about sizes,
    using long long formatting, fixing PR#18612 (and more) reported
    by Mikael Jagan.
  * readChar(useBytes = TRUE) now terminates strings even when the
    underlying connection uses extra spaces in the input buffer.
    This fixes problems with extra garbage seen with gzip
    connections, PR#18605.
  * Named capture in PCRE regular expressions now works also with
    more than 127 named groups (PR#18588).
  * Datetime functions are now robust against long jumps when dealing
    with internal time zone changes.  This avoids confusing warnings
    about an invalid time zone, previously triggered by turning
    warnings into errors or handling them via tryCatch (PR#17966,
    PR#17780).
  * Datetime functions now restore even an empty TZ environment
    variable after internal time zone changes (PR#17724).  This makes
    results of datetime functions with this (typically unintentional)
    setting more predictable.
  * drop.terms(*) now drops response as by default, keep.response =
    FALSE, fixing PR#18564 thanks to Mikael Jagan.
  * dummy.coef(.) now also works for lm()-models with character
    categorical predictor variables rather than factor ones, fixing
    PR#18635 reported by Jinsong Zhao.
  * formals(f) &lt;- formals(f) now also works for a function w/o
    arguments and atomic _constant_ body(f).
  * Correct as.function(&lt;invalid list&gt;, .)'s error message.
  * removeSource() is yet more thorough in finding and removing
    "srcref" and the other source references from parsed R language
    chunks, fixing PR#18638 thanks to Andrew Simmons.
  * dgeom() is more accurate now, notably when its result is very
    small, fixing PR#18642 thanks to the proposal of Morten Welinder,
    also improving other instances where C level binom_raw(x, n, ..)
    has x == 0 or x== n.
  * warning() with options(warn = 1) has improved output for
    multi-line messages.
  * axis.Date() and axis.POSIXct() now respect the par("lab") setting
    for the number of pretty() intervals.
  * Comparisons for language objects (which are based on deparsing)
    are now more careful about using accurate deparsed results
    (PR#18676).
  * Plain-text help (Rd2txt) now correctly preserves blank lines
    following single-line \dontrun code.
  * &lt;POSIXlt&gt;[*] no longer sets wrong "balanced" attribute, fixing
    PR#18681 thanks to Mikael Jagan.
  * str(&lt;classed-call&gt;) now deparses the call as expected, fixing
    PR#18684, reported by Dave Slager.
  * In Rd examples, code following the closing brace of a \dontrun,
    \dontshow or \donttest tag on the same line is no longer skipped
    when R CMD check runs the examples.
  * as.data.frame(matrix(*, ncol=0)) now gets valid names() and
    colnames(); reported by Davis Vaughan on the R-devel list.
  * Internal Mathlib function stirlerr(n) is now almost fully
    (52-bit) accurate for all n &gt;= ~5.9 and more accurate also in the
    range 1 -- 5.9.  This entails small ("after 12th decimal")
    changes in density functions, e.g., dgamma() in _some_ regions of
    their support.  The fix was partly prompted by Morten Welinder's
    PR#18640.
  * Numbers like 9876543.2 are now considered non-integer by Mathlib
    internal R_nonint(), amending original fix of PR#15734.
  * Rd comment lines no longer cause broken paragraphs in the
    rendered PDF and plain-text help. In code blocks, pure comment
    lines (starting with %) no longer produce an empty line.
  * xtabs(Freq ~ .) now consistently defaults to na.action = na.pass,
    using na.rm = FALSE (added as an argument) when summing over Freq
    (PR#17770).
  * tools::testInstalledPackage() is no longer silent about failures
    from running examples or tests and its return code no longer
    ignores failures from checking vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1718366400">- CHANGES IN R 4.4.1:
  C-LEVEL FACILITIES:
  * Functions R_atof and R_strtod declared in header R_ext/Utils.h
    are now documented in 'Writing R Extensions' and so formally part
    of the API.
  * The non-API entry points Rf_setSVector, Rf_StringFalse,
    Rf_StringTrue and Rf_isBlankString have been added to those
    reported by R CMD check.
  * The new function Rf_allocLang is now available. This provides an
    alternative to the idiom of calling Rf_allocList followed by
    SET_TYPEOF.
  UTILITIES:
  * R CMD check now reports as warnings what gfortran calls 'Fortran
    2018 deleted features', all of which have long been marked as
    'obsolescent' and some of which were deleted in Fortran 2008 or
    earlier.  Fortran compilers are no longer required to support
    these.
  BUG FIXES:
  * as.numeric(), scan(), type.convert() and other places which use
    the internal C function R_strtod now require a _non-empty_ digit
    sequence in a decimal or binary exponent.  This aligns with the
    C/POSIX standard for strtod and with ?NumericConstants.
  * as.data.frame(m, make.names=NA) now works correctly for a matrix
    m with NA's in row names.
  * The error message from &lt;POSIXlt&gt;[["hour"]] and similar now
    mentions *[[, "hour"]], as wished for in PR#17409 and proposed by
    Michael Chirico.
  * qbinom() and potentially qpois(), qnbinom(), no longer sometimes
    fail accurate inversion (of pbinom(), etc), thanks to Christopher
    Chang's report and patch in PR#18711.
  * The internal help server on Windows can again serve requests sent
    in quick succession, fixing a regression in R 4.4.0.
  * debugcall(&lt;S3Generic&gt;()) now also works when a corresponding
    S4-generic version is in the methods cache (PR#18143).
  * Package tools' toTitleCase(ch0) now returns character(0) when ch0
    is of zero length; fixing PR#18724, reported by David Hugh Jones.
  * R CMD check is no longer broken (without a check result and no
    explanation in 00check.log) for a package which declares an
    invalid VignetteBuilder in DESCRIPTION but has no vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1730376000">- CHANGES IN R 4.4.2:
  C-LEVEL FACILITIES:
  * The S-compatibility macros F77_COM and F77_COMDECL defined in
    header R_ext/RS.h are deprecated and will be removed shortly.  We
    could find no record of their use.
  BUG FIXES:
  * Mathlib function lgammacor(x) no longer warns about underflow to
    zero for large x.
  * Text widths and heights were incorrectly reported by the Quartz
    device if the drawing context didn't exist yet (typically when
    drawing off-screen to a window that is yet to appear, see
    PR#18591).
  * The Quartz device could segfault in cases where paths with spaces
    are used in the new glyph drawing API.  Thanks to Tomek
    Gieorgijewski (PR#18758).
  * On macOS in R CRAN builds, it is again possible to read
    little-endian UTF-16 text with a BOM from a connection using
    encoding="UTF-16".  Users building R from source should avoid
    using the system libiconv in macOS 14.1 and later.
  * methods' internal .requirePackage() now re-enables primitive
    method dispatch when needed; thanks to Ivan Krylov for
    demystifying CRAN package check failures on the R-devel mailing
    list.</changelog>
</package>
<package pkgid="90f636a5200daf51eb4bef06836be256d3102e42cd1bd5de7f4ef7ed6b1594ba3abc362e0e49efe9baab1ad3924ec5b2948cdc208e614f208a312e433c99a226" name="R-methods" arch="i586">
  <version epoch="0" ver="4.4.2" rel="51.0.2.2.sr20241103"/>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1620302400">- To get in sync with d:l:R:autoCRAN the Matrix package's split
  in -devel was reversed.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339200">- improved spec file according to comments of dimstar in
  https://build.opensuse.org/request/show/892685</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339201">- CHANGES IN R 4.1.0:
  FUTURE DIRECTIONS:
  * It is planned that the 4.1.x series will be the last to support
    32-bit Windows, with production of binary packages for that
    series continuing until early 2023.
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Data set esoph in package datasets now provides the correct
    numbers of controls; previously it had the numbers of cases added
    to these.  (Reported by Alexander Fowler in PR#17964.)
  NEW FEATURES:
  * www.omegahat.net is no longer one of the repositories known by
    default to setRepositories().  (Nowadays it only provides source
    packages and is often unavailable.)
  * Function package_dependencies() (in package tools) can now use
    different dependency types for direct and recursive dependencies.
  * The checking of the size of tarball in R CMD check --as-cran
    &lt;pkg&gt; may be tweaked via the new environment variable
    _R_CHECK_CRAN_INCOMING_TARBALL_THRESHOLD_, as suggested in
    PR#17777 by Jan Gorecki.
  * Using c() to combine a factor with other factors now gives a
    factor, an ordered factor when combining ordered factors with
    identical levels.
  * apply() gains a simplify argument to allow disabling of
    simplification of results.
  * The format() method for class "ftable" gets a new option justify.
    (Suggested by Thomas Soeiro.)
  * New ...names() utility.  (Proposed by Neal Fultz in PR#17705.)
  * type.convert() now warns when its as.is argument is not
    specified, as the help file always said it _should_.  In that
    case, the default is changed to TRUE in line with its change in
    read.table() (related to stringsAsFactor) in R 4.0.0.
  * When printing list arrays, classed objects are now shown _via_
    their format() value if this is a short enough character string,
    or by giving the first elements of their class vector and their
    length.
  * capabilities() gets new entry "Rprof" which is TRUE when R has
    been configured with the equivalent of --enable-R-profiling (as
    it is by default).  (Related to Michael Orlitzky's report
    PR#17836.)
  * str(xS4) now also shows extraneous attributes of an S4 object
    xS4.
  * Rudimentary support for vi-style tags in rtags() and R CMD rtags
    has been added.  (Based on a patch from Neal Fultz in PR#17214.)
  * checkRdContents() is now exported from tools; it and also
    checkDocFiles() have a new option chkInternal allowing to check
    Rd files marked with keyword "internal" as well.  The latter can
    be activated for R CMD check via environment variable
    _R_CHECK_RD_INTERNAL_TOO_.
  * New functions numToBits() and numToInts() extend the raw
    conversion utilities to (double precision) numeric.
  * Functions URLencode() and URLdecode() in package utils now work
    on vectors of URIs.  (Based on patch from Bob Rudis submitted
    with PR#17873.)
  * path.expand() can expand ~user on most Unix-alikes even when
    readline is not in use.  It tries harder to expand ~, for example
    should environment variable HOME be unset.
  * For HTML help (both dynamic and static), Rd file links to help
    pages in external packages are now treated as references to
    topics rather than file names, and fall back to a file link only
    if the topic is not found in the target package. The earlier rule
    which prioritized file names over topics can be restored by
    setting the environment variable _R_HELP_LINKS_TO_TOPICS_ to a
    false value.
  * c() now removes NULL arguments before dispatching to methods,
    thus simplifying the implementation of c() methods, _but_ for
    back compatibility keeps NULL when it is the first argument.
    (From a report and patch proposal by Lionel Henry in PR#17900.)
  * Vectorize()'s result function's environment no longer keeps
    unneeded objects.
  * Function ...elt() now propagates visibility consistently with
    ..n.  (Thanks to Lionel Henry's PR#17905.)
  * capture.output() no longer uses non-standard evaluation to
    evaluate its arguments.  This makes evaluation of functions like
    parent.frame() more consistent.  (Thanks to Lionel Henry's
    PR#17907.)
  * packBits(bits, type="double") now works as inverse of
    numToBits().  (Thanks to Bill Dunlap's proposal in PR#17914.)
  * curlGetHeaders() has two new arguments, timeout to specify the
    timeout for that call (overriding getOption("timeout")) and TLS
    to specify the minimum TLS protocol version to be used for
    https:// URIs (_inter alia_ providing a means to check for sites
    using deprecated TLS versions 1.0 and 1.1).
  * For nls(), an optional constant scaleOffset may be added to the
    denominator of the relative offset convergence test for cases
    where the fit of a model is expected to be exact, thanks to a
    proposal by John Nash.  nls(*, trace=TRUE) now also shows the
    convergence criterion.
  * Numeric differentiation _via_ numericDeriv() gets new optional
    arguments eps and central, the latter for taking central divided
    differences.  The latter can be activated for nls() via
    nls.control(nDcentral = TRUE).
  * nls() now passes the trace and control arguments to getInitial(),
    notably for all self-starting models, so these can also be fit in
    zero-noise situations via a scaleOffset.  For this reason, the
    initial function of a selfStart model must now have ... in its
    argument list.
  * bquote(splice = TRUE) can now splice expression vectors with
    attributes: this makes it possible to splice the result of
    parse(keep.source = TRUE).  (Report and patch provided by Lionel
    Henry in PR#17869.)
  * textConnection() gets an optional name argument.
  * get(), exists(), and get0() now signal an error if the first
    argument has length greater than 1.  Previously additional
    elements were silently ignored.  (Suggested by Antoine Fabri on
    R-devel.)
  * R now provides a shorthand notation for creating functions, e.g.
    \(x) x + 1 is parsed as function(x) x + 1.
  * R now provides a simple native forward pipe syntax |&gt;.  The
    simple form of the forward pipe inserts the left-hand side as the
    first argument in the right-hand side call.  The pipe
    implementation as a syntax transformation was motivated by
    suggestions from Jim Hester and Lionel Henry.
  * all.equal(f, g) for functions now by default also compares their
    environment(.)s, notably via new all.equal method for class
    function.  Comparison of nls() fits, e.g., may now need
    all.equal(m1, m2, check.environment = FALSE).
  * .libPaths() gets a new option include.site, allowing to _not_
    include the site library.  (Thanks to Dario Strbenac's suggestion
    and Gabe Becker's PR#18016.)
  * Lithuanian translations are now available.  (Thanks to Rimantas
    Zakauskas.)
  * names() now works for DOTSXP objects.  On the other hand, in
    R-lang, the R language manual, we now warn against relying on the
    structure or even existence of such dot-dot-dot objects.
  * all.equal() no longer gives an error on DOTSXP objects.
  * capabilities("cairo") now applies only to the file-based devices
    as it is now possible (if very unusual) to build R with Cairo
    support for those but not for X11().
  * There is optional support for tracing the progress of
    loadNamespace() - see its help.
  * (Not Windows.)  l10n_info() reports an additional element, the
    name of the encoding as reported by the OS (which may differ from
    the encoding part (if any) of the result from
    Sys.getlocale("LC_CTYPE").
  * New function gregexec() which generalizes regexec() to find _all_
    disjoint matches and well as all substrings corresponding to
    parenthesized subexpressions of the given regular expression.
    (Contributed by Brodie Gaslam.)
  * New function charClass() in package utils to query the
    wide-character classification functions in use (such as
    iswprint).
  * The names of quantile()'s result no longer depend on the global
    getOption("digits"), but quantile() gets a new optional argument
    digits = 7 instead.
  * grep(), sub(), regexp and variants work considerably faster for
    long factors with few levels.  (Thanks to Michael Chirico's
    PR#18063.)
  * Provide grouping of x11() graphics windows within a window
    manager such as Gnome or Unity; thanks to a patch by Ivan Krylov
    posted to R-devel.
  * The split() method for class data.frame now allows the f argument
    to be specified as a formula.
  * sprintf now warns on arguments unused by the format string.
  * New palettes "Rocket" and "Mako" for hcl.colors() (approximating
    palettes of the same name from the 'viridisLite' package).
    Contributed by Achim Zeileis.
  * The base environment and its namespace are now locked (so one can
    no longer add bindings to these or remove from these).
  * Rterm handling of multi-byte characters has been improved,
    allowing use of such characters when supported by the current
    locale.
  * Rterm now accepts ALT+ +xxxxxxxx sequences to enter Unicode
    characters as hex digits.
  * Environment variable LC_ALL on Windows now takes precedence over
    LC_CTYPE and variables for other supported categories, matching
    the POSIX behaviour.
  * duplicated() and anyDuplicated() are now optimized for integer
    and real vectors that are known to be sorted via the ALTREP
    framework. Contributed by Gabriel Becker via PR#17993.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 14
    and so packages that provide graphics devices should be
    reinstalled.
  * Graphics devices should now specify deviceVersion to indicate
    what version of the graphics engine they support.
  * Graphics devices can now specify deviceClip.  If TRUE, the
    graphics engine will never perform any clipping of output itself.
    The clipping that the graphics engine does perform (for both
    canClip = TRUE and canClip = FALSE) has been improved to avoid
    producing unnecessary artifacts in clipped output.
  * The grid package now allows gpar(fill) to be a linearGradient(),
    a radialGradient(), or a pattern().  The viewport(clip) can now
    also be a grob, which defines a clipping path, and there is a new
    viewport(mask) that can also be a grob, which defines a mask.
    These new features are only supported so far on the Cairo-based
    graphics devices and on the pdf() device.
  * (Not Windows.)  A warning is given when a Cairo-based type is
    specified for a png(), jpeg(), tiff() or bmp() device but Cairo
    is unsupported (so type = "Xlib" is tried instead).
  * grSoftVersion() now reports the versions of FreeType and
    FontConfig if they are used directly (not _via_ Pango), as is
    most commonly done on macOS.
  C-LEVEL FACILITIES:
  * The _standalone_ libRmath math library and R's C API now provide
    log1pexp() again as documented, and gain log1mexp().
  INSTALLATION on a UNIX-ALIKE:
  * configure checks for a program pkgconf if program pkg-config is
    not found.  These are now only looked for on the path (like
    almost all other programs) so if needed specify a full path to
    the command in PKG_CONFIG, for example in file config.site.
  * C99 function iswblank is required - it was last seen missing ca
    2003 so the workaround has been removed.
  * There are new configure options --with-internal-iswxxxxx,
  - -with-internal-towlower and --with-internal-wcwidth which allows
    the system functions for wide-character classification,
    case-switching and width (wcwidth and wcswidth) to be replaced by
    internal ones.  The first has long been used on macOS, AIX (and
    Windows) but this enables it to be unselected there and selected
    for other platforms (it is the new default on Solaris).  The
    second is new in this version of R and is selected by default on
    macOS and Solaris.  The third has long been the default and
    remains so as it contains customizations for East Asian
    languages.
    System versions of these functions are often minimally
    implemented (sometimes only for ASCII characters) and may not
    cover the full range of Unicode points: for example Solaris (and
    Windows) only cover the Basic Multilingual Plane.
  * Cairo installations without X11 are more likely to be detected by
    configure, when the file-based Cairo graphics devices will be
    available but not X11(type = "cairo").
  * There is a new configure option --with-static-cairo which is the
    default on macOS.  This should be used when only static cairo
    (and where relevant, Pango) libraries are available.
  * Cairo-based graphics devices on platforms without Pango but with
    FreeType/FontConfig will make use of the latter for font
    selection.
  LINK-TIME OPTIMIZATION on a UNIX-ALIKE:
  * Configuring with flag --enable-lto=R now also uses LTO when
    installing the recommended packages.
  * R CMD INSTALL and R CMD SHLIB have a new flag --use-LTO to use
    LTO when compiling code, for use with R configured with
  - -enable-lto=R.  For R configured with --enable-lto, they have
    the new flag --no-use-LTO.
    Packages can opt in or out of LTO compilation _via_ a UseLTO
    field in the DESCRIPTION file.  (As usual this can be overridden
    by the command-line flags.)
  BUILDING R on Windows:
  * for GCC &gt;= 8, FC_LEN_T is defined in config.h and hence character
    lengths are passed from C to Fortran in _inter alia_ BLAS and
    LAPACK calls.
  * There is a new text file src/gnuwin32/README.compilation, which
    outlines how C/Fortran code compilation is organized and
    documents new features:
  * R can be built with Link-Time Optimization with a suitable
    compiler - doing so with GCC 9.2 showed several
    inconsistencies which have been corrected.
  * There is support for cross-compiling the C and Fortran code
    in R and standard packages on suitable (Linux) platforms.
    This is mainly intended to allow developers to test later
    versions of compilers - for example using GCC 9.2 or 10.x has
    detected issues that GCC 8.3 in Rtools40 does not.
  * There is experimental support for cross-building R packages
    with C, C++ and/or Fortran code.
  * The R installer can now be optionally built to support a single
    architecture (only 64-bit or only 32-bit).
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++14 where
    available (which it is on all currently checked platforms): if
    not (as before) C++11 is used if available otherwise C++ is not
    supported.
    Packages which specify C++11 will still be installed using C++11.
    C++14 compilers may give deprecation warnings, most often for
    std::random_shuffle (deprecated in C++14 and removed in C++17).
    Either specify C++11 (see 'Writing R Extensions') or modernize
    the code and if needed specify C++14.  The latter has been
    supported since R 3.4.0 so the package's DESCRIPTION would need
    to include something like
    Depends: R (&gt;= 3.4)
  PACKAGE INSTALLATION on Windows:
  * R CMD INSTALL and R CMD SHLIB make use of their flag --use-LTO
    when the LTO_OPT make macro is set in file etc/${R_ARCH}/Makeconf
    or in a personal/site Makevars file.  (For details see 'Writing R
    Extensions' SS4.5.)
    This provides a valuable check on code consistency.  It does work
    with GCC 8.3 as in Rtools40, but that does not detect everything
    the CRAN checks with current GCC do.
  PACKAGE INSTALLATION on macOS:
  * The default personal library directory on builds with
  - -enable-aqua (including CRAN builds) now differs by CPU type,
    one of
    ~/Library/R/x86_64/x.y/library
    ~/Library/R/arm64/x.y/library
    This uses the CPU type R (and hence the packages) were built for,
    so when a x86_64 build of R is run under Rosetta emulation on an
    arm64 Mac, the first is used.
  UTILITIES:
  * R CMD check can now scan package functions for bogus return
    statements, which were possibly intended as return() calls (wish
    of PR#17180, patch by Sebastian Meyer). This check can be
    activated via the new environment variable
    _R_CHECK_BOGUS_RETURN_, true for --as-cran.
  * R CMD build omits tarballs and binaries of previous builds from
    the top-level package directory.  (PR#17828, patch by Sebastian
    Meyer.)
  * R CMD check now runs sanity checks on the use of LazyData, for
    example that a data directory is present and that
    LazyDataCompression is not specified without LazyData and has a
    documented value.  For packages with large LazyData databases
    without specifying LazyDataCompression, there is a reference to
    the code given in 'Writing R Extensions' SS1.1.6 to test the
    choice of compression (as in all the CRAN packages tested a
    non-default method was preferred).
  * R CMD build removes LazyData and LazyDataCompression fields from
    the DESCRIPTION file of packages without a data directory.
  ENCODING-RELATED CHANGES:
  * The parser now treats \Unnnnnnnn escapes larger than the upper
    limit for Unicode points (\U10FFFF) as an error as they cannot be
    represented by valid UTF-8.
    Where such escapes are used for outputting non-printable
    (including unassigned) characters, 6 hex digits are used (rather
    than 8 with leading zeros).  For clarity, braces are used, for
    example \U{0effff}.
  * The parser now looks for non-ASCII spaces on Solaris (as
    previously on most other OSes).
  * There are warnings (including from the parser) on the use of
    unpaired surrogate Unicode points such as \uD834.  (These cannot
    be converted to valid UTF-8.)
  * Functions nchar(), tolower(), toupper() and chartr() and those
    using regular expressions have more support for inputs with a
    marked Latin-1 encoding.
  * The character-classification functions used (by default) to
    replace the system iswxxxxx functions on Windows, macOS and AIX
    have been updated to Unicode 13.0.0.
    The character-width tables have been updated to include new
    assignments in Unicode 13.0.0.
  * The code for evaluating default (extended) regular expressions
    now uses the same character-classification functions as the rest
    of R (previously they differed on Windows, macOS and AIX).
  * There is a build-time option to replace the system's
    wide-character wctrans C function by tables shipped with R: use
    configure option --with-internal-towlower or (on Windows)
  - DUSE_RI18N_CASE in CFLAGS when building R.  This may be needed
    to allow tolower() and toupper() to work with Unicode characters
    beyond the Basic Multilingual Plane where not supported by system
    functions (e.g. on Solaris where it is the new default).
  * R is more careful when truncating UTF-8 and other multi-byte
    strings that are too long to be printed, passed to the system or
    libraries or placed into an internal buffer.  Truncation will no
    longer produce incomplete multibyte characters.
  DEPRECATED AND DEFUNCT:
  * Function plclust() from the package stats and
    package.dependencies(), pkgDepends(), getDepList(),
    installFoundDepends(), and vignetteDepends() from package tools
    are defunct.
  * Defunct functions checkNEWS() and readNEWS() from package tools
    and CRAN.packages() from utils have been removed.
  * R CMD config CXXCPP is defunct (it was deprecated in R 3.6.2).
  * parallel::detectCores() drops support for Irix (retired in 2013).
  * The LINPACK argument to chol.default(), chol2inv(),
    solve.default() and svd() has been defunct since R 3.1.0.  It was
    silently ignored up to R 4.0.3 but now gives an error.
  * Subsetting/indexing, such as ddd[*] or ddd$x on a DOTSXP
    (dot-dot-dot) object ddd has been disabled; it worked by accident
    only and was undocumented.
  BUG FIXES:
  * Many more C-level allocations (mainly by malloc and strdup) are
    checked for success with suitable alternative actions.
  * Bug fix for replayPlot(); this was turning off graphics engine
    display list recording if a recorded plot was replayed in the
    same session.  The impact of the bug became visible if resize the
    device after replay OR if attempted another savePlot() after
    replay (empty display list means empty screen on resize or empty
    saved plot).
  * R CMD check etc now warn when a package exports non-existing S4
    classes or methods, also in case of no "methods" presence.
    (Reported by Alex Bertram; reproducible example and patch by
    Sebastian Meyer in PR#16662.)
  * boxplot() now also accepts calls for labels such as ylab, the
    same as plot().  (Reported by Marius Hofert.)
  * The help page for xtabs() now correctly states that addNA is
    setting na.action = na.pass among others.  (Reported as PR#17770
    by Thomas Soeiro.)
  * The R CMD check &lt;pkg&gt; gives a longer and more comprehensible
    message when DESCRIPTION misses dependencies, e.g., in Imports:.
    (Thanks to the contributors of PR#17179.)
  * update.default() now calls the generic update() on the formula to
    work correctly for models with extended formulas.  (As reported
    and suggested by Neal Fultz in PR#17865.)
  * The horizontal position of leaves in a dendrogram is now correct
    also with center = FALSE.  (PR#14938, patch from Sebastian
    Meyer.)
  * all.equal.POSIXt() no longer warns about and subsequently ignores
    inconsistent "tzone" attributes, but describes the difference in
    its return value (PR#17277).  This check can be disabled _via_
    the new argument check.tzone = FALSE as suggested by Sebastian
    Meyer.
  * as.POSIXct() now populates the "tzone" attribute from its tz
    argument when x is a logical vector consisting entirely of NA
    values.
  * x[[2^31]] &lt;- v now works.  (Thanks to the report and patch by
    Suharto Anggono in PR#17330.)
  * In log-scale graphics, axis() ticks and label positions are now
    computed more carefully and symmetrically in their range,
    typically providing _more_ ticks, fulfilling wishes in PR#17936.
    The change really corresponds to an improved axisTicks() (package
    grDevices), potentially influencing grid and lattice, for
    example.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now correct to at
    least five digits where it was catastrophically wrong,
    previously.
  * sum(df) and similar "Summary"- and "Math"-group member functions
    now work for data frames df with logical columns, notably also of
    zero rows.  (Reported to R-devel by Martin "b706".)
  * unsplit() had trouble with tibbles due to unsound use of rep(NA,
    len)-indexing, which should use NA_integer_ (Reported to R-devel
    by Mario Annau.)
  * pnorm(x, log.p = TRUE) underflows to -Inf slightly later.
  * show(&lt;hidden S4 generic&gt;) prints better and without quotes for
    non-hidden S4 generics.
  * read.table() and relatives treated an "NA" column name as missing
    when check.names = FALSE PR#18007.
  * Parsing strings containing UTF-16 surrogate pairs such as
    "\uD834\uDD1E" works better on some (uncommon) platforms.
    sprintf("%X", utf8ToInt("\uD834\uDD1E")) should now give "1D11E"
    on all platforms.
  * identical(x,y) is no longer true for differing DOTSXP objects,
    fixing PR#18032.
  * str() now works correctly for DOTSXP and related exotics, even
    when these are doomed.
    Additionally, it no longer fails for lists with a class and
    "irregular" method definitions such that e.g. lapply(*) will
    necessarily fail, as currently for different igraph objects.
  * Too long lines in environment files (e.g. Renviron) no longer
    crash R. This limit has been increased to 100,000 bytes.
    (PR#18001.)
  * There is a further workaround for FreeType giving incorrect
    italic font faces with cairo-based graphics devices on macOS.
  * add_datalist(*, force = TRUE) (from package tools) now actually
    updates an existing data/datalist file for new content.  (Thanks
    to a report and patch by Sebastian Meyer in PR#18048.)
  * cut.Date() and cut.POSIXt() could produce an empty last interval
    for breaks = "months" or breaks = "years".  (Reported as PR#18053
    by Christopher Carbone.)
  * Detection of the encoding of 'regular' macOS locales such as
    en_US (which is UTF-8) had been broken by a macOS change:
    fortunately these are now rarely used with en_US.UTF-8 being
    preferred.
  * sub() and gsub(pattern, repl, x, *) now keep attributes of x such
    as names() also when pattern is NA (PR#18079).
  * Time differences ("difftime" objects) get a replacement and a
    rep() method to keep "units" consistent.  (Thanks to a report and
    patch by Nicolas Bennett in PR#18066.)
  * The \RdOpts macro, setting defaults for \Sexpr options in an Rd
    file, had been ineffective since R 2.12.0: it now works again.
    (Thanks to a report and patch by Sebastian Meyer in PR#18073.)
  * mclapply and pvec no longer accidentally terminate parallel
    processes started before by mcparallel or related calls in
    package parallel (PR#18078).
  * grep and other functions for evaluating (extended) regular
    expressions handle in Unicode also strings not explicitly flagged
    UTF-8, but flagged native when running in UTF-8 locale.
  * Fixed a crash in fifo implementation on Windows (PR#18031).
  * Binary mode in fifo on Windows is now properly detected from
    argument open (PR#15600, PR#18031).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1622808000">- The line %{__install} -m 755 -d %{_infodir}
  no longer works in TW or Factory.
  But without that line it works everywhere. So this instruction
  was commented out of the spec file.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1628596800">- CHANGES IN R 4.1.1:
  NEW FEATURES:
  * require(pkg, quietly = TRUE) is quieter and in particular does
    not warn if the package is not found.
  DEPRECATED AND DEFUNCT:
  * Use of ftp:// URIs should be regarded as deprecated, with
    on-going support confined to method = "libcurl" and not routinely
    tested.  (Nowadays no major browser supports them.)
  * The non-default method = "internal" is deprecated for http:// and
    ftp:// URIs for both download.file and url.
  * On Windows, method = "wininet" is deprecated for http://,
    https:// and ftp:// URIs for both download.file and url.  (A
    warning is only given for ftp://.)
    For ftp:// URIs the default method is now "libcurl" if available
    (which it is on CRAN builds).
    method = "wininet" remains the default for http:// and https://
    URIs but if libcurl is available, using method = "libcurl" is
    preferred.
  INSTALLATION:
  * make check now works also without a LaTeX installation.  (Thanks
    to Sebastian Meyer's PR#18103.)
  BUG FIXES:
  * make check-devel works again in an R build configured with
  - -without-recommended-packages.
  * qnbinom(p, size, mu) for large size/mu is correct now in a range
    of cases (PR#18095); similarly for the (size, prob)
    parametrization of the negative binomial.  Also qpois() and
    qbinom() are better and or faster for extreme cases.  The
    underlying C code has been modularized and is common to all four
    cases of discrete distributions.
  * gap.axis is now part of the axis() arguments which are passed
    from bxp(), and hence boxplot().  (Thanks to Martin Smith's
    report and suggestions in PR#18109.)
  * .First and .Last can again be set from the site profile.
  * seq.int(from, to, *) and seq.default(..) now work better in large
    range cases where from-to is infinite where the two boundaries
    are finite.
  * all.equal(x,y) now returns TRUE correctly also when several
    entries of abs(x) and abs(y) are close to .Machine$double.xmax,
    the largest finite numeric.
  * model.frame() now clears the object bit when removing the class
    attribute of a value via na.action (PR#18100).
  * charClass() now works with multi-character strings on Windows
    (PR#18104, fixed by Bill Dunlap).
  * encodeString() on Solaris now works again in Latin-1 encoding on
    characters represented differently in UTF-8.  Support for
    surrogate pairs on Solaris has been improved.
  * file.show() on Windows now works with non-ASCII path names
    representable in the current native encoding (PR#18132).
  * Embedded R on Windows can now find R home directory via the
    registry even when installed only for the current user
    (PR#18135).
  * pretty(x) with finite x now returns finite values also in the
    case where the extreme x values are close in size to the maximal
    representable number .Machine$double.xmax.
    Also, it's been tweaked for very small ranges and when a boundary
    is close (or equal) to zero; e.g., pretty(c(0,1e-317)) no longer
    has negative numbers, currently still warning about a very small
    range, and pretty(2^-(1024 - 2^-1/(c(24,10)))) is more accurate.
  * The error message for not finding vignette files when weaving has
    correct file sizes now. (Thanks to Sebastian Meyer's PR#18154.)
  * dnbinom(20, &lt;large&gt;, 1) now correctly gives 0, and similar cases
    are more accurate with underflow precaution.  (Reported by Francisco Vera Alcivar in PR#18072.)</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635163200">- repaired https://bugzilla.suse.com/show_bug.cgi?id=1191380
  (rpmacros now go to rpmmacrodir)
- minor clean-ups in spec file</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635768000">- CHANGES IN R 4.1.2:
  C-LEVEL FACILITIES:
  * The workaround in headers R.h and Rmath.h (using namespace std;)
    for the Oracle Developer Studio compiler is no longer needed now
    C++11 is required so has been removed.  A couple more usages of
    log() (which should have been std::log()) with an int argument
    are reported on Solaris.
  * The undocumented limit of 4095 bytes on messages from the
    S-compatibility macros PROBLEM and MESSAGE is now documented and
    longer messages will be silently truncated rather than
    potentially causing segfaults.
  * If the R_NO_SEGV_HANDLER environment variable is non-empty, the
    signal handler for SEGV/ILL/BUS signals (which offers recovery
    user interface) is not set. This allows more reliable debugging
    of crashes that involve the console.
  DEPRECATED AND DEFUNCT:
  * The legacy S-compatibility macros PROBLEM, MESSAGE, ERROR, WARN,
    WARNING, RECOVER, ... are deprecated and will be hidden in R
    4.2.0. R's native interface of Rf_error and Rf_warning has long
    been preferred.
  BUG FIXES:
  * .mapply(F, dots, .) no longer segfaults when dots is not a list
    and uses match.fun(F) as always documented; reported by Andrew
    Simmons in PR#18164.
  * hist(&lt;Date&gt;, ...) and hist(&lt;POSIXt&gt;, ...)  no longer pass
    arguments for rect() (such as col and density) to axis().
    (Thanks to Sebastian Meyer's PR#18171.)
  * \Sexpr{ch} now preserves Encoding(ch). (Thanks to report and
    patch by Jeroen Ooms in PR#18152.)
  * Setting the RNG to "Marsaglia-Multicarry" e.g., by RNGkind(), now
    warns in more places, thanks to Andr'e Gillibert's report and
    patch in PR#18168.
  * gray(numeric(), alpha=1/2) no longer segfaults, fixing PR#18183,
    reported by Till Krenz.
  * Fixed dnbinom(x, size=&lt;very_small&gt;, .., log=TRUE) regression,
    reported by Martin Morgan.
  * as.Date.POSIXlt(x) now keeps names(x), thanks to Davis Vaughan's
    report and patch in PR#18188.
  * model.response() now strips an "AsIs" class typically, thanks to
    Duncan Murdoch's report and other discussants in PR#18190.
  * try() is considerably faster in case of an error and long call,
    as e.g., from some do.call().  Thanks to Alexander Kaever's
    suggestion posted to R-devel.
  * qqline(y = &lt;object&gt;) such as y=I(.), now works, see also
    PR#18190.
  * Non-integer mgp par() settings are now handled correctly in
    axis() and mtext(), thanks to Mikael Jagan and Duncan Murdoch's
    report and suggestion in PR#18194.
  * formatC(x) returns length zero character() now, rather than ""
    when x is of length zero, as documented, thanks to Davis
    Vaughan's post to R-devel.
  * removeSource(fn) now retains (other) attributes(fn).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1647000000">- CHANGES IN R 4.1.3:
  NEW FEATURES:
  * The default version of Bioconductor has been changed to 3.14.
    (This is used by setRepositories and the menus in GUIs.)
  UTILITIES:
  * R CMD check --as-cran has a workaround for a bug in versions of
    file up to at least 5.41 which mis-identify DBF files last
    changed in 2022 as executables.
  C-LEVEL FACILITIES:
  * The legacy S-compatibility macros SINGLE_* in R_ext/Constants.h
    (included by R.h) are deprecated and will be removed in R 4.2.0.
  BUG FIXES:
  * Initialization of self-starting nls() models with initialization
    functions following the pre-R-4.1.0 API (without the ...
    argument) works again for now, with a deprecation warning.
  * Fixed quoting of ~autodetect~ in Java setting defaults to avoid
    inadvertent user lookup due to leading ~, reported in PR#18231 by
    Harold Gutch.
  * substr(., start, stop) &lt;- v now treats _negative_ stop values
    correctly.  Reported with a patch in PR#18228 by Brodie Gaslam.
  * Subscripting an array x without dimnames by a
    length(dim(x))-column character matrix gave "random" non-sense,
    now an error; reported in PR#18244 by Mikael Jagan.
  * ...names() now matches names(list(...)) closely, fixing PR#18247.
  * all.equal(*, scale = s) now works as intended when length(s) &gt; 1,
    partly thanks to Michael Chirico's PR#18272.
  * print(x) for long vectors x now also works for named atomic
    vectors or lists and prints the correct number when reaching the
    getOption("max.print") limit; partly thanks to a report and
    proposal by Hugh Parsonage to the R-devel list.
  * all.equal(&lt;selfStart&gt;, *) no longer signals a deprecation
    warning.
  * reformulate(*, response=r) gives a helpful error message now when
    length(r) &gt; 1, thanks to Bill Dunlap's PR#18281.
  * Modifying globalCallingHandlers inside withCallingHandlers() now
    works or fails correctly, thanks to Henrik Bengtsson's PR#18257.
  * hist(&lt;Date&gt;, breaks = "days") and hist(&lt;POSIXt&gt;, breaks = "secs")
    no longer fail for inputs of length 1.
  * qbeta(.001, .9, .009) and similar cases now converge correctly
    thanks to Ben Bolker's report in PR#17746.
  * window(x, start, end) no longer wrongly signals "'start' cannot
    be after 'end'", fixing PR#17527 and PR#18291.
  * data() now checks that its (rarely used) list argument is a
    character vector - a couple of packages passed other types and
    gave incorrect results.
  * which() now checks its arr.ind argument is TRUE rather coercing
    to logical and taking the first element - which gave incorrect
    results in package code.
  * model.weights() and model.offset() more carefully extract their
    model components, thanks to Ben Bolker and Tim Taylor's R-devel
    post.
  * list.files(recursive = TRUE) now shows all broken symlinks
    (previously, some of them may have been omitted, PR#18296).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1650628800">- CHANGES IN R 4.2.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * The formula method of aggregate() now matches the generic in
    naming its first argument x (resolving PR#18299 by Thomas
    Soeiro).
    This means that calling aggregate() with a formula as a named
    first argument requires name formula in earlier versions of R and
    name x now, so portable code should not name the argument (code
    in many packages did).
  * Calling &amp;&amp; or || with either argument of length greater than one
    now gives a warning (which it is intended will become an error).
  * Calling if() or while() with a condition of length greater than
    one gives an error rather than a warning.  Consequently,
    environment variable _R_CHECK_LENGTH_1_CONDITION_ no longer has
    any effect.
  * Windows users should consult the WINDOWS section below for some
    profound changes including
  * Support for 32-bit builds has been dropped.
  * UTF-8 locales are used where available.
  * The default locations for the R installation and personal
    library folder have been changed.
    Thanks to Tomas Kalibera for months of work on the Windows port
    for this release.
  NEW FEATURES:
  * matrix(x, n, m) now warns in more cases where length(x) differs
    from n * m, as suggested by Abby Spurdle and Wolfgang Huber in
    Feb 2021 on the R-devel mailing list.
    This warning can be turned into an error by setting environment
    variable _R_CHECK_MATRIX_DATA_ to TRUE: R CMD check --as-cran
    does so unless it is already set.
  * Function file_test() in package utils gains tests for symlinks,
    readability and writability.
  * capabilities("libxml") is now false.
    The description of capabilities("http/ftp") now reflects that it
    refers to the default method, no longer the internal one.
  * simplify2array() gains an except argument for controlling the
    exceptions used by sapply().
  * Environment variables R_LIBS_USER and R_LIBS_SITE are both now
    set to the R system default if unset or empty, and can be set to
    NULL to indicate an empty list of user or site library
    directories.
  * The warning for axis()(-like) calls in cases of relatively small
    ranges (typically in log-scale situations) is slightly improved
    _and_ suppressed from explicit calls to .axisPars() as has always
    been the intention.
  * The contrasts setter function `contrasts&lt;-` gains an explicit
    default how.many = NULL rather than just using missing(how.many).
  * grid.pretty() gains a new optional argument n = 5.
  * There is a new function .pretty() with option bounds as a
    technical-utility version of pretty().  It and pretty() gain a
    new argument f.min with a better than back-compatible default.
  * Function grDevices::axisTicks() and related functions such as
    graphics::axis() work better, notably for the log scale; partly
    because of the pretty() improvements, but also because care is
    taken e.g., when ylim is finite but diff(ylim) is infinite.
  * nclass.FD() gains a digits option.
  * The R Mathlib internal C function bd0() (called indirectly from a
    dozen probability density and distribution functions such as
    dpois(), dbinom(), dgamma(), pgamma() _etc_) has been
    complemented by a more sophisticated and (mostly) more accurate C
    function ebd0(), currently called only by internal dpois_raw()
    improving accuracy for R level dpois() and potentially others
    calling it such as dnbinom(), dgamma() or pgamma().  (Thanks to
    Morten Welinder's PR#15628.)
  * write.ftable() gains sep = " " argument as suggested by Thomas
    Soeiro.
  * The names of the locale categories supported by R's
    Sys.getlocale() and Sys.setlocale() are now provided by variable
    .LC.categories in the base namespace.
  * The Date and POSIXt methods for hist() and the histogram method
    for plot() now also use the new default col = "lightgray" in
    consistency with the corresponding change to hist()'s default for
    R 4.0.0.
  * hist.default() gains new fuzz argument, and the histogram plot
    method no longer uses fractional axis ticks when displaying
    counts ("Frequency").
  * mapply() and hence Map() now also obey the "max-or-0-if-any"
    recycling rule, such that, e.g., Map(`+`, 1:3, 1[0]) is valid
    now.
  * as.character(&lt;obj&gt;) for "hexmode" or "octmode" objects now
    fulfils the important basic rule as.character(x)[j] ===
    as.character(x[j]).
  * The set utility functions, notably intersect() have been tweaked
    to be more consistent and symmetric in their two set arguments,
    also preserving a common mode.
  * substr(ch, start,end) &lt;- new now e.g., preserves names(ch); ditto
    for substring(), thanks to a patch from Brodie Gaslam.
  * plot(&lt;lm&gt;) gains a extend.ylim.f argument, in partial response to
    PR#15285; further PR#17784 is fixed thanks to several
    contributors and a patch by Elin Waring.  The Cook's dist
    contours get customizable via cook.col and cook.lty with a
    different default color and their legend is nicer by default and
    customizable via cook.legendChanges.
  * Attempting to subset an object that is not subsettable now
    signals an error of class notSubsettableError. The
    non-subsettable object is contained in the object field of the
    error condition.
  * Subscript-out-of-bounds errors are now signaled as errors of
    class subscriptOutOfBoundsError.
  * Stack-overflow errors are now signaled as errors inheriting from
    class stackOverflowError. See ?stackOverflowError for more
    details.
  * New partly experimental Sys.setLanguage() utility, solving the
    main problem of PR#18055.
  * gettext() and gettextf() get a new option trim = TRUE which when
    set to false allows translations for strings such as "Execution
    halted\n" typical for C code.
  * An experimental implementation of hash tables is now available.
    See ?hashtab for more details.
  * identical() gains a extptr.as.ref argument for requesting that
    external pointer objects be compared as reference objects.
  * reorder() gets an argument decreasing which it passes to sort()
    for level creation; based on the wish and patch by Thomas Soeiro
    in PR#18243.
  * as.vector() gains a data.frame method which returns a simple
    named list, also clearing a long standing 'FIXME' to enable
    as.vector(&lt;data.frame&gt;, mode="list").  This breaks code relying
    on as.vector(&lt;data.frame&gt;) to return the unchanged data frame.
  * legend() is now vectorized for arguments cex, x.intersp, and
    text.width.  The latter can now also be specified as a vector
    (one element for each column of the legend) or as NA for
    computing a proper column wise maximum value of strwidth(legend).
    The argument y.intersp can be specified as a vector with one
    entry for each row of the legend.
    legend() also gains new arguments title.cex and title.font.
    Thanks to Swetlana Herbrandt.
  * Deparsing no longer remaps attribute names dim, dimnames, levels,
    names and tsp to historical S-compatible names (which structure()
    maps back).
  * sample() and sample.int() have additional sanity checks on their
    size and n arguments.
    all.equal.numeric() gains a sanity check on its tolerance
    argument - calling all.equal(a, b, c) for three numeric vectors
    is a surprisingly common error.
    mean(na.rm =), rank(na.last =), barplot(legend.text =),
    boxplot(), contour(drawlabels =), polygon(border =) and
    methods::is(class2 =) have more robust sanity checks on their
    arguments.
    R CMD Rd2pdf (used by R CMD check) has a more robust sanity check
    on the format of \alias{} commands.
  * psigamma(x, deriv) for negative x now also works for deriv = 4
    and 5; their underlying C level dpsifn() is documented in
    'Writing R Extensions'.
  * The HTML help system now uses HTML5 (wish of PR#18149).
  * ks.test() now provides exact p-values also with ties and MC
    p-values in the two-sample (Smirnov) case.  By Torsten Hothorn.
  * ks.test() gains a formula interface, with y ~ 1 for the
    one-sample (Kolmogorov) test and y ~ group for the two-sample
    (Smirnov) test.  Contributed by Torsten Hothorn.
  * The return value from ks.test() now has class c("ks.test",
    "htest") - packages using try() need to take care to use
    inherits() and not == on the class.
  * New functions psmirnov(), qsmirnov() and rsmirnov() in package
    stats implementing the asymptotic and exact distributions of the
    two-sample Smirnov statistic.
  * iconv() now allows sub = "c99" to use C99-style escapes for UTF-8
    inputs which cannot be converted to encoding to.
  * In a forward pipe |&gt; expression it is now possible to use a named
    argument with the placeholder _ in the rhs call to specify where
    the lhs is to be inserted.  The placeholder can only appear once
    on the rhs.
  * The included LAPACK sources have been updated to version 3.10.0,
    except for the four Fortran 77 routines which 3.10.0 has
    re-implemented in Fortran 90 (where the older versions have been
    retained as the R build process does not support Fortran 90).
  * path.expand() and most other uses of tilde expansion now warn if
    a path would be too long if expanded.  (An exception is
    file.exists(), which silently returns false.)
  * trunc(&lt;Date&gt;, *) now supports units = "months" or "years" for
    consistency with the POSIXt method, thanks to Dirk Eddelbuettel's
    proposal in PR#18099.
  * list2DF() now checks that its arguments are of the same length,
    rather than use recycling.
  * The HTML help system has several new features: LaTeX-like math
    can be typeset using either KaTeX or MathJax, usage and example
    code is highlighted using Prism, and for dynamic help the output
    of examples and demos can be shown within the browser if the
    knitr package is installed. These features can be disabled by
    setting the environment variable _R_HELP_ENABLE_ENHANCED_HTML_ to
    a false value.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 15
    and so packages that provide graphics devices should be
    reinstalled.
  * The grid package now allows the user to specify a "vector" of
    pattern fills.  The fill argument to gpar() accepts a list of
    gradients and/or patterns and the functions linearGradient(),
    radialGradient(), and pattern() have a new group argument.
    Points grobs (data symbols) can now also have a pattern fill.
    The grobCoords() function now returns a more informative and
    complex result.
  * The grid package has new functions for drawing isolated groups:
    grid.group(), grid.define(), and grid.use().  These functions add
    compositing operators and affine transformations to R's graphics
    capabilities.
    The grid package also has new functions for stroking and filling
    paths: grid.stroke(), grid.fill(), and grid.fillStroke().
    A new function as.path() allows the user to specify the fill rule
    for a path that is to be used for clipping, stroking, or filling;
    available options are "winding" and "evenodd".  A new function
    as.mask() allows the user to specify the type of a mask;
    available options are "alpha" and "luminance".
    These new features are only supported so far (at most) on the
    Cairo-based graphics devices and on the pdf() device.
  * dev.capabilities() reports on device support for the new
    features.
  * par() now warns about unnamed non-character arguments to prevent
    misuse such as {usr &lt;- par("usr"); par(usr)}.
  INSTALLATION:
  * Facilities for accessing ftp:// sites are no longer tested
    (except _pro tem_ for curlGetHeaders()) as modern browsers have
    removed support.
  * R can now be built with DEFS = -DSTRICT_R_HEADERS .
  PACKAGE INSTALLATION:
  * R CMD INSTALL no longer tangles vignettes. This completes an R
    CMD build change in R 3.0.0 and affects packages built before R
    3.0.2. Such packages should be re-made with R CMD build to have
    the tangled R code of vignettes shipped with the tarball.
  * USE_FC_LEN_T will become the default: this uses the correct
    prototypes for Fortran BLAS/LAPACK routines called from C/C++,
    and requires adjustment of most such calls - see 'Writing R
    Extensions' SS6.6.2.  (This has been supported since R 3.6.2.)
  * Package installation speed for packages installed with
    keep.source has been improved. This resolve the issue reported by
    Ofek Shilon in PR#18236.
  UTILITIES:
  * R CMD check can optionally report files/directories left behind
    in home, /tmp (even though TMPDIR is set) and other directories.
    See the "R Internals" manual for details.
  * R CMD check now reports byte-compilation errors during
    installation.  These are not usually fatal but may result in
    parts of the package not being byte-compiled.
  * _R_CHECK_DEPENDS_ONLY_ can be applied selectively to examples,
    tests and/or vignettes in R CMD check: see the "R Internals"
    manual.
  * _R_CHECK_SRC_MINUS_W_IMPLICIT_ now defaults to true: recent
    versions of Apple clang on macOS have made implicit function
    declarations in C into a compilation error.
  * R CMD check --as-cran makes use of the environment variable
    AUTORECONF.  See the "R Internals" manual SS8 for further details.
  * R CMD check --use-valgrind also uses valgrind when re-building
    vignettes as some non-Sweave vignettes unhelpfully comment out
    all their code when R CMD check runs vignettes.
  * Errors in re-building vignettes (unless there are LaTeX errors)
    are reported by R CMD check as ERROR rather than WARNING when
    running vignettes has been skipped (as it frequently is in CRAN
    checks and by --as-cran).
  * R CMD Rd2pdf gains a --quiet option that is used by R CMD build
    when building the PDF package manual.
  * R CMD Rd2pdf now always runs LaTeX in batch mode, consistent with
    Texinfo &gt;= 6.7. The --batch option is ignored.
  * R CMD build and R CMD check now include the Rd file name and line
    numbers in the error message of an \Sexpr evaluation failure.
  * For packages using the \doi Rd macro (now an install-time \Sexpr)
    but no other dynamic Rd content, R CMD build now produces a
    smaller tarball and is considerably faster - skipping temporary
    package installation.
  C-LEVEL FACILITIES:
  * The non-API header R_ext/R-ftp-http.h is no longer provided, as
    the entry points it covered are now all defunct.
  * A number of non-API declarations and macro definitions have been
    moved from the installed header Rinternals.h to the internal
    header Defn.h. Packages that only use entry points and
    definitions documented to be part of the API as specified in
    'Writing R Extensions' SS6 should not be affected.
  * The macro USE_RINTERNALS no longer has any effect when compiling
    package code.  Packages which also use R_NO_REMAP will need to
    ensure that the remapped names are used for calls to API
    functions that were formerly also made available as macros.
  * The deprecated legacy S-compatibility macros PROBLEM, MESSAGE,
    ERROR, WARN, WARNING, RECOVER, ... are no longer defined in
    R_exts/RS.h (included by R.h).  Replace these by calls to
    Rf_error and Rf_warning (defined in header R_ext/Error.h included
    by R.h).
    Header R_ext/RS.h no longer includes R_ext/Error.h.
  * Header R_ext/Constants.h (included by R.h) when included from C++
    now includes the C++ header cfloat rather than the C header
    float.h (now possible as C++11 is required).
  * The legacy S-compatibility macros DOUBLE_* in R_ext/Constants.h
    (included by R.h) are deprecated.
  * The deprecated S-compatibility macros SINGLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * R_Calloc, R_Free and R_Realloc are preferred to their unprefixed
    forms and error messages now use the prefix. These forms were
    introduced in R 3.4.0 and are available even when
    STRICT_R_HEADERS is defined.
  * rmultinom has been documented in 'Writing R Extensions' SS6 so is
    now part of the R API.
  * Similarly, Rtanpi, called from R level tanpi() is now part of the
    R API.
  * The long-deprecated, undocumented and non-API entry point call_R
    is no longer declared in R_ext/RS.h (included by R.h).
  * The header S.h which has been unsupported since Jan 2016 has been
    removed.  Use R.h instead.
  DEPRECATED AND DEFUNCT:
  * The (non-default and deprecated) method = "internal" for
    download.file() and url() no longer supports http:// nor ftp://
    URIs.  (It is used only for file:// URIs.)
    On Windows, download.file(method = "wininet") no longer supports
    ftp:// URIs.  (It is no longer the default method, which is
    "libcurl" and does.)
    On Windows, the deprecated method = "wininet" now gives a warning
    for http:// and https:// URIs for both download.file() and url().
    (It is no longer the default method.)
  * On Windows, the command-line option --max-mem-size and
    environment variable R_MAX_MEM_SIZE are defunct.  The memory
    allocation limit was important for 32-bit builds, but these are
    no longer supported.
  * default.stringsAsFactors() is now formally deprecated, where that
    was only mentioned on its regular help page, previously.  So it
    now gives a warning if called.
  * unix.time() is defunct now; it had been deprecated since R 3.4.0.
  BUG FIXES:
  * Setting digits = 0 in format(), print.default() (and hence
    typically print()) or options() is again invalid.  Its behaviour
    was platform-dependent, and it is unclear what "zero significant
    digits" should mean (PR#18098).
  * Messages from C code in the cairo section of package grDevices
    are now also offered for translation, thanks to Michael Chirico's
    PR#18123.
  * mean(x) with finite x now is finite also without "long.double"
    capability.
  * R CMD Rd2pdf no longer leaves an empty build directory behind
    when it aborts due to an already existing output file.  (Thanks
    to Sebastian Meyer's PR#18141.)
  * density(x, weights = w, na.rm = TRUE) when anyNA(x) is true, now
    removes weights "in parallel" to x, fixing PR#18151, reported by
    Matthias Gondan.  Additionally, it gets a subdensity option.
  * Conversion of \Sexpr[]{&lt;expR&gt;} to LaTeX or HTML no longer
    produces long blocks of empty lines when &lt;expR&gt; itself contains
    several lines all producing empty output.  Thanks to a report and
    patch by Ivan Krylov posted to R-devel.
  * R CMD build no longer fails if a package vignette uses child
    documents and inst/doc exists.  (Thanks to Sebastian Meyer's
    PR#18156.)
  * When an R documentation ('help' source) file man/foo.Rd in a
    package has \donttest{..} examples with a syntax error, it is now
    signalled as ERROR and with correct line numbers relating to the
  * -Ex.R file, thanks to Duncan Murdoch and Sebastian Meyer's
    reports and patch proposals in PR#17501.
  * Improved determination of the correct translation domain in
    non-base packages, addressing the combination of PR#18092 and
    PR#17998 (#c6) with reports and _augmented_ patch #2904 by
    Suharto Anggono.
    Note that "R-base" is no longer the default domain e.g., for
    top-level calls to gettext(); rather translation needs explicit
    domain = * specification in such cases.
  * identical(attrib.as.set=FALSE) now works correctly with data
    frames with default row names (Thanks to Charlie Gao's PR#18179).
  * txtProgressBar() now enforces a non-zero width for argument char,
    without which no progress can be visible.
  * dimnames(table(d)) is more consistent in the case where d is a
    list with a single component, thanks to Thomas Soeiro's report to
    R-devel.
    Further, table(d1, d2) now gives an error when d1 and d2 are data
    frames as suggested by Thomas in PR#18224.
  * Fix for drawing semi-transparent lines and fills on the native
    Windows graphics device (PR#18219 and PR#16694).  Thanks to Nick
    Ray for helpful diagnosis on Bugzilla.
  * The deparser now wraps sub-expressions such as if(A) ..  with
    parentheses when needed; thanks to Duncan Murdoch's PR#18232 and
    Lionel Henry's patches there.
  * remove.packages() no longer tries to uninstall Priority: base
    packages, thanks to a report and suggestions by Colin Fay in
    PR#18227.
  * win.metafile() now has xpinch and ypinch arguments so that the
    user can override Windows' (potentially wrong) guess at device
    dimensions.
  * x[i] and x[[i]] for non-integer i should now behave in all cases
    as always documented: the index used is equivalent to
    as.integer(i) unless that would overflow where trunc(i) is used
    instead; thanks to Suharto Anggono's report and patch proposals
    in PR#17977.
  * asOneSidedFormula() now associates the resulting formula with the
    global environment rather than the evaluation environment created
    for the call.
  * &lt;bibentry&gt;$name now matches the field name case-insensitively,
    consistent with bibentry() creation and the replacement method.
  * cbind() failed to detect some length mismatches with a mixture of
    time-series and non-time-series inputs.
  * The default LaTeX style file Sweave.sty used by the RweaveLatex
    driver no longer loads the obsolete ae package; thanks to a
    report by Thomas Soeiro in PR#18271.  Furthermore, it now skips
    \usepackage[T1]{fontenc} for engines other than pdfTeX (if
    detected) or if the new [nofontenc] option is used.
  * smooth.spline() now stores its logical cv argument more safely,
    fixing a rare bug when printing, and also stores n.
  * smooth.spline(x,y,*) now computes the cv.crit statistic
    correctly, also when is.unsorted(x), fixing PR#18294.
  * The data.frame method of rbind() now warns when binding
    not-wholly-recycling vectors, by analogy to the default method
    (for matrices).
  * setAs() finds the correct class for name to when multiple
    packages define a class with that name. Thanks to Gabor Csardi
    for the report.
  * Fix for detaching a package when two classes of the same name are
    present in method signatures for the same generic. Thanks to
    Gabor Csardi for the report.
  * match.arg("", c("", "a", "B")) gives a better error message, in
    part from PR#17959, thanks to Elin Waring.
  * R CMD Sweave --clean no longer removes pre-existing files or
    subdirectories (PR#18242).
  * The quartz() device no longer splits polylines into subpaths.
    That has caused narrowly-spaced lines with many points to always
    look solid even when dashed line type was used due to dash phase
    restarts.
  * Deparsing constructs such as quote(1 + `!`(2) + 3) works again as
    before R 3.5.0, thanks to the report and patch in PR#18284 by
    Suharto Anggono.
  * as.list(f) for a factor f now keeps names(f), fixing PR#18309.
  * qbeta(.001, .9, .009) and analogous qf() calls now return a
    correct value instead of NaN or wrongly 1, all with a warning;
    thanks to the report by Ludger Goeminne in PR#18302.
  * plot.lm() failed to produce the plot of residuals vs.  factor
    levels (i.e., which=5 when leverages are constant) for models
    with character predictors (PR#17840).
  * interaction.plot(..., xtick = TRUE) misplaced the x-axis line
    (PR#18305).
  * Not strictly fixing a bug, format()ing and print()ing of
    non-finite Date and POSIXt values NaN and +/-Inf no longer show
    as NA but the respective string, e.g., Inf, for consistency with
    numeric vector's behaviour, fulfilling the wish of PR#18308.
  * R CMD check no longer runs test scripts generated from
    corresponding .Rin files twice and now signals an ERROR if
    processing an .Rin script fails.
  * tools::Rd2txt() used for plain-text help pages now renders \hrefs
    (if tools::Rd2txt_options(showURLs = TRUE)) and \urls with
    percent-encoding and standards-compliant delimiting style (angle
    brackets and no URL: prefix).  \email is now rendered with a
    mailto: prefix.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1655985600">- CHANGES IN R 4.2.1:
  NEW FEATURES:
  * New function utils::findCRANmirror() to find out if a CRAN mirror
    has been selected, otherwise fallback to the main site.  This
    behaves in the same way as tools::CRAN_package_db() and is
    intended for packages wishing to access CRAN for purposes other
    than installing packages.
    The need for this was shown by a day when the main CRAN website
    was offline and a dozen or so packages which had its URL
    hardcoded failed their checks.
  INSTALLATION on a UNIX-ALIKE:
  * The libraries searched for by --with-blas (without a value) now
    include BLIS (after OpenBLAS but before ATLAS).  And on macOS,
    the Accelerate framework (after ATLAS).  (This is patterned after
    the AX_BLAS macro from the Autoconf Archive.)
  * The included LAPACK sources have been updated to 3.10.1.
  UTILITIES:
  * The (full path to) the command tidy to be used for HTML
    validation can be set by environment variable R_TIDYCMD.
  * Setting environment variable _R_CHECK_RD_VALIDATE_RD2HTML_ to a
    false value will override R CMD check --as-cran and turn off HTML
    validation.  This provides a way to circumvent a problematic
    tidy.
    The 2006 version that ships with macOS is always skipped.
  C-LEVEL FACILITIES:
  * The undocumented legacy declarations of Sint, Sfloat, SINT_MAX
    and SINT_MIN in header R.h are deprecated.
  BUG FIXES:
  * fisher.test(d) no longer segfaults for "large" d; fixing PR#18336
    by preventing/detecting an integer overflow reliably.
  * tar(., files=*) now produces correctly the warning about invalid
    uid or gid of files, fixing PR#18344, reported by Martin Morgan.
  * tk_choose.files() with multi = FALSE misbehaved on paths
    containing spaces (PR#18334) (regression introduced in R 4.0.0).
  * sort(x, partial = ind, *) now works correctly notably for the
    non-default na.last = FALSE or TRUE, fixing PR#18335 reported by
    James Edwards.
  * Environment variable _R_CHECK_XREFS_REPOSITORIES_ is only used
    for checking .Rd cross-references in R CMD check (as documented)
    and not for other uses looking for a CRAN mirror.
  * The search for a CRAN mirror when checking packages now uses
    getOption("repos") if that specifies a CRAN mirror, even when it
    does not also specify all three Bioconductor repositories (as was
    previously required).
  * The HTML code generated by tools::Rd2HTML() has been improved to
    pass tidy 5.8.0.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1667217600">- CHANGES IN R 4.2.2:
  NEW FEATURES:
  * tools::Rdiff(useDiff = TRUE) checks for the presence of an
    external diff command and switches to useDiff = FALSE if none is
    found.  This allows R CMD Rdiff to always work.
  * On Windows, environment variable R_LIBCURL_SSL_REVOKE_BEST_EFFORT
    can be used to switch to only 'best-effort' SSL certificate
    revocation checks with the default "libcurl" download method.
    This reduces security, but may be needed for downloads to work
    with MITM proxies (PR#18379).
  * (macOS) The run-time check for libraries from XQuartz for X11 and
    Tcl/Tk no longer uses otool from the Apple Developer Tools
    (PR#18400).
  * The LaTeX style for producing the PDF manuals, Rd.sty, now loads
    the standard amsmath, amsfonts and amssymb packages for greater
    coverage of math commands in the Rd \eqn and \deqn macros.  The
    \mathscr LaTeX command is also provided (via the mathrsfs
    package, if available, or the amsfonts bundle otherwise),
    fulfilling the wish of PR#18398.
  * (Windows) The default format of readClipboard() and
    writeClipboard() has been changed to 13 (CF_UNICODETEXT).
  INSTALLATION on a UNIX-ALIKE:
  * The PDF manuals (if built) can be compacted by the new target
    make compact-pdf (at the top level or in directory doc/manual).
  * There is now configure support for LLVM clang 15 on Linux, which
    defaults to position-independent (PIE) executables whereas
    gfortran does not.
  * Many small changes to ease compilation (and suppress warnings)
    with LLVM clang 15.
  BUG FIXES:
  * Rscript -e would fail if stdin were closed (Reported by Henrik
    Bengtsson.)
  * qt(*, log.p=TRUE) in outer tails no longer produces NaN in its
    final steps, thus fixing PR#18360.
  * tools::Rd2latex() now escapes hashes and ampersands when writing
    URLs, fixing LaTeX errors with such URLs in \tabular.
  * When isGeneric(f, fdef=*) is used with mismatching names, the
    warning is better understandable; reported (with fix) in PR#18370
    by Gabe Becker.
  * poly(x, n) now works again (and is now documented) when x is a
    "Date" or "POSIXct" object, or of another class while fulfilling
    mode(x) == "numeric".  This also enables poly(x, *, raw=TRUE) for
    such variables.  Reported by Michael Chirico to R-devel.
  * write.table(), write.csv() and write.csv2() restore their
    numerical precision (internal equivalent of digits = 15) after an
    interrupt (PR#18384).
  * One can now read also byte FF from a clipboard connection
    (PR#18385).
  * source("") and source(character()) now give more helpful error
    messages.
  * R CMD check --as-cran set _R_CHECK_TIMINGS_ too late to have the
    intended effect.
  * as.POSIXlt(x) now also works with very large dates x, fixing
    PR#18401 reported by Hannes M"uhleisen.
  * Files can now be extracted even from very large zip archives
    (PR#18390, thanks to Martin Jakt).
  * Non-finite objects of class "POSIXlt" are now correctly coerced
    to classes "Date" and "POSIXct"; following up on the extension to
    format() them correctly.
  * Added methods for is.finite(), is.infinite() and is.nan() for
    "POSIXlt" date-time objects.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1678881600">- CHANGES IN R 4.2.3:
  C-LEVEL FACILITIES:
  * The definition of DL_FUNC in R_ext/Rdynload.h has been changed to
    be fully C-compliant.  This means that functions loaded _via_ for
    example R_GetCCallable need to be cast to an appropriate type if
    they have any arguments.
  * .Machine has a new element sizeof.time_t to identify old systems
    with a 32-bit type and hence a limited range of date-times (and
    limited support for dates millions of years from present).
  PACKAGE INSTALLATION:
  * (Windows) The default C++ standard had accidentally been left at
    C++11 when it was changed to C++14 on Unix.
  BUG FIXES:
  * As "POSIXlt" objects may be "partially filled" and their list
    components meant to be recycled, length() now is the length of
    the longest component.
  * as.POSIXlt.Date() could underflow for dates in the far past (more
    than half a million years BCE).
  * as.Date.POSIXlt(x) would return "1970-01-01" instead of NA in R
    4.2.2, e.g., for
    x &lt;- as.POSIXlt(c("2019-01-30","2001-1-1"))
    x$mon &lt;- c(0L, NA); as.Date(x)
  * R CMD check failed to apply enabled _R_CHECK_SUGGESTS_ONLY_ to
    examples and vignettes (regression in R 4.2.0).
  * R CMD check did not re-build vignettes in separate processes by
    default (regression in R 4.2.0).
  * Running examples from HTML documentation now restores previous
    knitr settings and options (PR#18420).
  * Quartz: fonts are now located using Core Graphics API instead of
    deprecated ATS which is no longer supported in the macOS 13 SDK
    (PR#18426).  This also addresses an issue where the currently
    used font in the Quartz device context was not correctly
    retained.
  * (Windows) Math symbols in text drawing functions are again
    rendered correctly (PR#18440).  This fixes a regression in R
    4.2.1 caused by a fix in PR#18382 which uncovered an issue in
    GraphApp due to which the symbol charset was not used with TT
    Symbol font face.
  * (Windows) Installing a package with a src/Makefile.{win,ucrt}
    file includes ~/.R/Makevars.win64 in the search for user
    makevars, as documented in "R Installation and Administration"
    and done for packages with a src/Makevars.{win,ucrt} file.
  * format(&lt;POSIXlt_w/_unbalanced_sec&gt;, "....%OS&lt;n&gt;") with n &gt; 0 no
    longer accidentally uses the unbalanced seconds, thanks to
    Suharto Anggono's report (including patch) in PR#18448.
  * solve.default(a, b) works around issues with some versions of
    LAPACK when a contains NA or NaN values.
  * When UseMethod() cannot dispatch, it no longer segfaults
    producing the error message in case of a long class(), thanks to
    Joris Vankerschaver's report (including patch) in PR#18447.
  * When example(foo, ..) produces graphics on an interactive device
    it needs to open itself, it now leaves devAskNewPage() unchanged
    even when it was FALSE, thus fixing a 14 years old '&lt;FIXME&gt;'.
  * packageDescription() again catches errors from encoding
    conversions. This also fixes broken packageVersion() in C locale
    on systems where iconv does not support transliteration.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1681128000">- add patch to build with libcurl &gt;= 8</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1682078400">- CHANGES IN R 4.3.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Calling &amp;&amp; or || with LHS or (if evaluated) RHS of length greater
    than one is now always an error, with a report of the form
    'length = 4' in coercion to 'logical(1)'
    Environment variable _R_CHECK_LENGTH_1_LOGIC2_ no longer has any
    effect.
  NEW FEATURES:
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.10.1.  (This caused some platform-dependent
    changes to package check output.)  And then to the sources from
    LAPACK version 3.11.0 (with changes only to double complex
    subroutines).
  * The included LAPACK sources have been updated to include the four
    Fortran 90 routines rather than their Fortran 77 predecessors.
    This may give some different signs in SVDs or
    eigendecompositions..  (This completes the transition to LAPACK
    3.10.x begun in R 4.2.0.)
  * The LAPACK sources have been updated to version 3.11.0.  (No new
    subroutines have been added, so this almost entirely bug fixes:
    Those fixes do affect some computations with NaNs, including R's
    NA.)
  * The parser now signals _classed_ errors, notably in case of the
    pipe operator |&gt;.  The error object and message now give line and
    column numbers, mostly as proposed and provided by Duncan Murdoch
    in PR#18328.
  * toeplitz() is now generalized for asymmetric cases, with a
    toeplitz2() variant.
  * xy.coords() and xyz.coords() and consequently, e.g., plot(x,y,
    log = "y") now signal a _classed_ warning about negative values
    of y (where log(.) is NA).  Such a warning can be specifically
    suppressed or caught otherwise.
  * Regular expression functions now check more thoroughly whether
    their inputs are valid strings (in their encoding, e.g. in
    UTF-8).
  * The performance of grep(), sub(), gsub() and strsplit() has been
    improved, particularly with perl = TRUE and fixed = TRUE.  Use of
    useBytes = TRUE for performance reasons should no longer be
    needed and is discouraged: it may lead to incorrect results.
  * apropos() gains an argument dot_internals which is used by the
    completion (help(rcompgen)) engine to also see base internals
    such as .POSIXct().
  * Support in tools::Rdiff() for comparing uncompressed PDF files is
    further reduced - see its help page.
  * qqplot(x, y, ...) gains conf.level and conf.args arguments for
    computing and plotting a confidence band for the treatment
    function transforming the distribution of x into the distribution
    of y (Switzer, 1976, _Biometrika_). Contributed by Torsten
    Hothorn.
  * Performance of package_dependencies() has been improved for cases
    when the number of dependencies is large.
  * Strings newly created by gsub(), sub() and strsplit(), when any
    of the inputs is marked as "bytes", are also marked as "bytes".
    This reduces the risk of creating invalid strings and accidental
    substitution of bytes deemed invalid.
  * Support for readLines(encoding = "bytes") has been added to allow
    processing special text files byte-by-byte, without creating
    invalid strings.
  * iconv(from = "") now takes into account any declared encoding of
    the input elements and uses it in preference to the native
    encoding.  This reduces the risk of accidental creation of
    invalid strings, particularly when different elements of the
    input have different encoding (including "bytes").
  * Package repositories in getOption("repos") are now initialized
    from the repositories file when utils is loaded (if not already
    set, e.g., in .Rprofile).  (From a report and patch proposal by
    Gabriel Becker in PR#18405.)
  * compactPDF() gets a verbose option.
  * type.convert() and hence read.table() get new option tryLogical =
    TRUE with back compatible default.  When set to false, converts
    "F" or "T" columns to character.
  * Added new unit prefixes "R" and "Q" for abbreviating
    (unrealistically large) sizes beyond 10^{27} in standard = "SI",
    thanks to Henrik Bengtsson's PR#18435.
  * as.data.frame()'s default method now also works fine with atomic
    objects inheriting from classes such as "roman", "octmode" and
    "hexmode", such fulfilling the wish of PR#18421, by Benjamin
    Feakins.
  * The as.data.frame.vector() utility now errors for wrong-length
    row.names.  It warned for almost six years, with "Will be an
    error!".
  * sessionInfo() now also contains La_version() and reports codepage
    and timezone when relevant, in both print() and toLatex() methods
    which also get new option tzone for displaying timezone
    information when locale = FALSE.
  * New function R_compiled_by() reports the C and Fortran compilers
    used to build R, if known.
  * predict(&lt;lm&gt;, newdata = *) no longer unnecessarily creates an
    offset of all 0s.
  * solve() for complex inputs now uses argument tol and by default
    checks for 'computational singularity' (as it long has done for
    numeric inputs).
  * predict(&lt;rank-deficient lm&gt;, newdata=*) now obeys a new argument
    rankdeficient, with new default "warnif", warning only if there
    are non-estimable cases in newdata.  Other options include
    rankdeficient = "NA", predicting NA for non-estimable newdata
    cases.  This addresses PR#15072 by Russ Lenth and is based on his
    original proposal and discussions in PR#16158 also by David Firth
    and Elin Waring.  Still somewhat experimental.
  * Rgui console implementation now works better with the NVDA screen
    reader when the full blinking cursor is selected.  The underlying
    improvements in cursor handling may help also other screen
    readers on Windows.
  * The drop-field control in GraphApp can now be left with the TAB
    key and all controls can be navigated in the reverse order using
    the Shift+TAB key, improving accessibility of the Rgui
    configuration editor.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now fully accurate
    (instead of to "only" minimally five digits).
  * demo(error.catching) now also shows off withWarnings() and
    tryCatchWEMs().
  * As an experimental feature the placeholder _ can now also be used
    in the rhs of a forward pipe |&gt; expression as the first argument
    in an extraction call, such as _$coef. More generally, it can be
    used as the head of a chain of extractions, such as _$coef[[2]].
  * Spaces in the environment variable used to choose the R session's
    temporary directory (TMPDIR, TMP and TEMP are tried in turn) are
    now fatal.  (On Windows the 'short path' version of the path is
    tried and used if that does not contain a space.)
  * all.equal.numeric() gets a new optional switch giveErr to return
    the numeric error as attribute.  Relatedly,
    stopifnot(all.equal&lt;some&gt;(a, b, ..)) is as "smart" now, as
    stopifnot(all.equal(....)) has been already, thus allowing
    customized all.equal&lt;Some&gt;() wrappers.
  * R on Windows is now able to work with path names longer than 260
    characters when these are enabled in the system (requires at
    least Windows 10 version 1607).  Packages should be updated to
    work with long paths as well, instead of assuming PATH_MAX to be
    the maximum length.  Custom front-ends and applications embedding
    R need to update their manifests if they wish to allow this
    feature.  See
    &lt;https://blog.r-project.org/2023/03/07/path-length-limit-on-windows&gt;
    for more information.
  * 'Object not found' and 'Missing argument' errors now give a more
    accurate error context. Patch provided by Lionel Henry in
    PR#18241.
  * The @ operator is now an S3 generic. Based on contributions by
    Tomasz Kalinowski in PR#18482.
  * New generic chooseOpsMethod() provides a mechanism for objects to
    resolve cases where two suitable methods are found for an Ops
    Group Generic. This supports experimenting with alternative
    object systems. Based on contributions by Tomasz Kalinowski in
    PR#18484.
  * inherits(x, what) now accepts values other than a simple
    character vector for argument what. A new generic, nameOfClass(),
    is called to resolve the class name from what. This supports
    experimenting with alternative object systems. Based on
    contributions by Tomasz Kalinowski in PR#18485.
  * Detection of BLAS/LAPACK in use (sessionInfo()) with FlexiBLAS
    now reports the current backend.
  * The "data.frame" method for subset() now warns about extraneous
    arguments, typically catching the use of = instead of == in the
    subset expression.
  * Calling a:b when numeric a or b is longer than one may now be
    made into an error by setting environment variable
    _R_CHECK_LENGTH_COLON_ to a true value, along the proposal in
    PR#18419 by Henrik Bengtsson.
  * density(x, weights = *) now warns if automatic bandwidth
    selection happens without using weights; new optional warnWbw may
    suppress the warning.  Prompted by Christoph Dalitz' PR#18490 and
    its discussants.
  * rm(list = *) is faster and more readable thanks to Kevin Ushey's
    PR#18492.
  * The plot.lm() function no longer produces a normal Q-Q plot for
    GLMs. Instead it plots a half-normal Q-Q plot of the absolute
    value of the standardized deviance residuals.
  * The print() method for class "summary.glm" no longer shows
    summary statistics for the deviance residuals by default.  Its
    optional argument show.residuals can be used to show them if
    required.
  * The tapply() function now accepts a data frame as its X argument,
    and allows INDEX to be a formula in that case. by.data.frame()
    similarly allows INDICES to be a formula.
  * The performance of df[j] &lt;- value (including for missing j) and
    write.table(df) has been improved for data frames df with a large
    number of columns.  (Thanks to Gabriel Becker's PR#18500,
    PR#18503 and discussants, prompted by a report from Toby Dylan
    Hocking on the R-devel mailing list.)
  * The matrix multiply operator %*% is now an S3 generic, belonging
    to new group generic matrixOps.  From Tomasz Kalinowski's
    contribution in PR#18483.
  * New function array2DF() to convert arrays to data frames,
    particularly useful for the list arrays created by tapply().
  DATES and TIMES:
  * On platforms where (non-UTC) datetimes before 1902 (or before
    1900 as with system functions on recent macOS) are guessed by
    extrapolating time zones from 1902-2037, there is a warning at
    the first use of extrapolation in a session.  (As all time zones
    post 2037 are extrapolation, we do not warn on those.)
  * (Platforms using --with-internal-tzone, including Windows and by
    default macOS). How years are printed in dates or date-times can
    be controlled by environment variable R_PAD_YEARS_BY_ZERO.  The
    default remains to pad to 4 digits by zeroes, but setting value
    no gives no padding (as used by default by glibc).
  * strftime() tries harder to determine the offset for the "%z"
    format, and succeeds on the mainstream R platforms.
  * strftime() has a limit of 2048 bytes on the string produced -
    attempting to exceed this is an error.  (Previously it silently
    truncated at 255 bytes.)
  * sessionInfo() records (and by default prints) the system time
    zone as part of the locale information.  Also, the source
    (system/internal) of the date-time conversion and printing
    functions.
  * Objects of class "POSIXlt" created in this version of R always
    have 11 components: component zone is always set, and component
    gmtoff is set for times in UTC and usually set on the (almost
    all) platforms which have C-level support, otherwise is NA.
  * There are comprehensive validity checks on the structure of
    objects of class "POSIXlt" when converting (including formatting
    and printing).  (This avoids mis-conversions of hand-crafted
    objects.)
  * There is some support for using the native date-time routines on
    macOS: this is only viable on recent versions (e.g. 12.6 and 13)
    and does get wrong some historical changes (before 1900, during
    WWII).  Use of --with-internal-tzone remains the default.
  * as.POSIXct(&lt;numeric&gt;) and as.POSIXlt(.) (without specifying
    origin) now work.  So does as.Date(&lt;numeric&gt;).
  * as.Date.POSIXct(., tz) now treats several tz values, notably
    "GMT" as equivalent to "UTC", proposed and improved by Michael
    Chirico and Joshua Ulrich in PR#17674.
  * Experimental balancePOSIXlt() utility allows using "ragged" and
    or out-of-range "POSIXlt" objects more correctly, e.g., in
    subsetting and subassignments.  Such objects are now documented.
    More experimentally, a "POSIXlt" object may have an attribute
    "balanced" indicating if it is known to be filled or fully
    balanced.
  * Functions axis.Date() and axis.POSIXct() are rewritten to gain
    better default tick locations and better default formats by using
    prettyDate(). Thanks to Swetlana Herbrandt.
  * The mapping of Windows' names for time zones to IANA's 'Olson'
    names has been updated.  When ICU is available (it is by
    default), it is used to get a mapping for the current region set
    in Windows.  This can be overridden by setting environment
    variable TZ to the desired Olson name - see OlsonNames() for
    those currently available.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 16
    and so packages that provide graphics devices should be
    reinstalled.
  * The grDevices and grid packages have new functions for rendering
    typeset glyphs, primarily: grDevices::glyphInfo() and
    grid::grid.glyph().
    Rendering of typeset glyphs is only supported so far on the
    Cairo-based graphics devices and on the pdf() and quartz()
    devices.
  * The defined behaviour for "clear" and "source" compositing
    operators (via grid::grid.group()) has been changed (to align
    better with simple interpretation of original Porter-Duff
    definitions).
  * Support for gradients, patterns, clipping paths, masks, groups,
    compositing operators, and affine transformations has been added
    to the quartz() device.
  INSTALLATION on a UNIX-ALIKE:
  * A system installation of generic LAPACK 3.10.0 or later will be
    preferred to the version in the R sources.
    configure option --with-lapack=no (equivalently --without-lapack)
    forces compilation of the internal LAPACK sources.
    If --with-lapack is not specified, a system liblapack is looked
    for and used if it reports version 3.10.0 or later and does not
    contain BLAS routines.
    Packages using LAPACK will need to be reinstalled if this changes
    to using an external library.
  * On aarch64 Linux platforms using GCC, configure now defaults to
  - fPIC (instead of -fpic), as desired in PR#18326.
  * configure now checks conversion of datetimes between POSIXlt and
    POSIXct around year 2020.  Failure (which has been seen on
    platforms missing tzdata) is fatal.
  * If configure option --with-valgrind-instrumentation is given
    value 1 or 2, option --with-system-valgrind-headers is now the
    default and ignored (with a warning).  It is highly recommended
    that the system headers are installed alongside valgrind: they
    are part of its packaging on some Linux distributions and
    packaged separately (e.g. in the valgrind-devel RPM) on others.
    configure will give a warning if they are not found.
    The system headers will be required in a future release of R to
    build with valgrind instrumentation.
  * libcurl 8.x is now accepted by configure: despite a change in
    major version number it changes neither API nor ABI.
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools43, an update of the Rtools42 toolchain.  It is
    based on gcc 12 and newer versions of MinGW-W64, binutils and
    libraries.  At this time R-devel can still be built using
    Rtools42 without changes, but when R-devel is installed via the
    installer, it will by default look for Rtools43.
  * Old make targets rsync-extsoft and 32-bit ones that are no longer
    needed have been removed.
  * Default builds (including for packages) no longer select C99.
    Thus the C standard used is the default for the compiler, which
    for the toolchain in Rtools43 is C17.  (This is consistent with
    Unix builds.)
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++17 where
    available (which it is on all currently checked platforms): if
    not C++14 or C++11 is used if available otherwise C++ is not
    supported.
  * USE_FC_LEN_T is the default: this uses the correct
    (compiler-dependent) prototypes for Fortran BLAS/LAPACK routines
    called from C/C++, and requires adjustment of many such calls -
    see 'Writing R Extensions' SS6.6.1.
  * There is initial support for C++23 as several compilers are now
    supporting -std=c++23 or -std=c++2b or similar.  As for C++20,
    there no additional configure checks for C++23 features beyond a
    check that the compiler reports a __cplusplus value greater than
    that in the C++20 standard.  C++ feature tests should be used.
  * There is support for a package to indicate the version of the C
    standard which should be used to compile it, and for the
    installing user to specify this.  In most cases R defaults to the
    C compiler's default standard which is C17 (a `bug-fix' of C11) -
    earlier versions of R or compilers may have defaulted to C99.
    Current options are:
    USE_C17 Use a standard that is at most C17.  The intention is to
    allow legacy packages to still be installed when later C
    standards become the default, including packages using new
    keywords as identifiers or with K&amp;R-style function
    declarations.  This will use C17 if available, falling back
    to C11.
    USE_C90 Use the C90 (aka C89) standard.  (As that standard did
    not require compilers to identify that version, all we can
    verify is that the compiler does not claim to be using a
    later standard.  It may accept C99 features - for example
    clang accepts // to make comments.)
    USE_C99 Use the C99 standard. This should be rarely needed - it
    avoids the few new features of C11/C17 which can be useful if
    a package assumes them if C17 is specified and they are not
    implemented.
    USE_C23 Use C23 (or in future, later).  Compiler/library support
    for C23 is still being implemented, but LLVM clang from
    15.0.0 and the upcoming GCC 13 have quite extensive support.
    These can be specified as part of the SystemRequirements field in
    the package's DESCRIPTION file or _via_ options --use-C17 and so
    on of R CMD INSTALL and R CMD SHLIB.
    For further details see "Writing R Extensions" SS1.2.5.
  * (Windows) A src/Makefile.ucrt or src/Makefile.win file is now
    included after R_HOME/etcR_ARCH/Makeconf and so no longer needs
    to include that file itself.  Installation of a package with such
    a file now uses a site Makevars file in the same way as a package
    with a src/Makevars.win file would.
  * configure is now passed crucial variables such as CC and CFLAGS
    in its environment, as many packages were not setting them (as
    documented in 'Writing R Extensions' SS1.2).
    This has most effect where configure is used to compile parts of
    the package - most often by cmake or libtool which obfuscate the
    actual compile commands used.
    Also used for configure.win and configure.ucrt on Windows.
  FORTRAN FLAGS:
  * The flag -fno-optimize-sibling-calls is no longer forced for
    gfortran 7 and later.  It should no longer be needed now using
    'hidden' character-length arguments when calling BLAS/LAPACK
    routines from C/C++ is the default even for packages.  (Unless
    perhaps packages call Fortran code from C/C++ without using R's
    headers and without allowing for these arguments.)
  C-LEVEL FACILITIES:
  * The deprecated S-compatibility macros DOUBLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * The deprecated legacy typedefs of Sint and Sfloat in header R.h
    are no longer defined, and that header no longer includes header
    limits.h from C nor climits from C++.
  * New macro CAD5R() is provided in Rinternals.h and used in a few
    places in the R sources.
  * ALTREP now supports VECSXP vectors. Contributed by Gabor Csardi
    in PR#17620.
  * The Rcomplex definition (in header R_ext/Complex.h) has been
    extended to prevent possible mis-compilation when interfacing
    with Fortran (PR#18430).  The new definition causes compiler
    warnings with static initializers such as {1, 2}, which can be
    changed to {.r=1, .i=2}.
    Using the new definition from C++ depends on compiler extensions
    supporting C features that have not been incorporated into the
    C++ standards but are available in g++ and clang++: this may
    result in C++ compiler warnings but these have been worked around
    for recent versions of common compilers (GCC, Apple/LLVM clang,
    Intel).
    It is intended to change the inclusion of header R_ext/Complex.h
    by other R headers, so C/C++ code files which make use of
    Rcomplex should include that header explicitly.
  UTILITIES:
  * R CMD check does more checking of package .Rd files, warning
    about invalid email addresses and (some) invalid URIs and noting
    empty \item labels in description lists.
  * R CMD check now also reports problems when reading package news
    in md (file NEWS.md) and (optionally) plain text (file NEWS)
    formats.
  * _R_CHECK_TIMINGS_ defaults to a value from the environment even
    for R CMD check --as-cran; this allows for exceptionally fast or
    slow platforms.
    It now applies to checking PDF and HTML versions of the manuals,
    and 'checking CRAN incoming feasibility'.
  * R CMD check can optionally (but included in --as-cran) check
    whether HTML math rendering _via_ KaTeX works for the package .Rd
    files.
  * Non-interactive debugger invocations can be trapped by setting
    the environment variable _R_CHECK_BROWSER_NONINTERACTIVE_ to a
    true value.  This is enabled by R CMD check --as-cran to detect
    the use of leftover browser() statements in the package.
  * The use of sprintf and vsprintf from C/C++ has been deprecated in
    macOS 13 and is a known security risk.  R CMD check now reports
    (on all platforms) if their use is found in compiled code:
    replace by snprintf or vsnprintf respectively. [*NB:* whether
    such calls get compiled into the package is platform-dependent.]
  * Where recorded at installation, R CMD check reports the C and
    Fortran compilers used to build R.
    It reports the OS in use (if known, as given by osVersion) as
    well as that R was built for.
    It notes if a C++ standard was specified which is older than the
    current default: many packages have used C++11 to mean 'not
    C++98' - as C++11 is the minimum supported since R 4.0.0, that
    specification can probably be removed.
  * R CMD INSTALL reports the compilers (and on macOS, the SDK) used,
    and this is copied to the output of R CMD check.
    Where a C++ standard is specified, it is reported.
  * R CMD check's 'checking compilation flags in Makevars' has been
    relaxed to accept the use of flags such as -std=f2008 in
    PKG_FFLAGS.
  * tools::buildVignettes() has a new argument skip, which is used by
    R CMD check to skip (and note) vignettes with unavailable
    \VignetteDepends (PR#18318).
  * New generic .AtNames() added to enable class-specific completions
    after @. The formerly internal function findMatches() is now
    exported, mainly for use in methods for .DollarNames() and
    .AtNames().
  DEPRECATED AND DEFUNCT:
  * default.stringsAsFactors() is defunct.
  * Calling as.data.frame.&lt;class&gt;() directly (for 12 atomic classes)
    is going to be formally deprecated, currently activated by
    setting the environment variable
    _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ to non-empty, which also
    happens in R CMD check --as-cran.
  BUG FIXES:
  * Hashed environments with sizes less than 5 can now grow.
    (Reported to R-devel by Duncan Garmonsway.)
  * as.character(&lt;Rd&gt;, deparse = TRUE) failed to re-escape curly
    braces in LaTeX-like text.  (Reported by Hadley Wickham in
    PR#18324.)
  * library() now passes its lib.loc argument when requiring Depends
    packages; reported (with fix) in PR#18331 by Mikael Jagan.
  * R CMD Stangle: improved message about 'Output' files.
  * head(x, n) and tail(x, n) now signal an error if n is not
    numeric, instead of incidentally "working" sometimes returning
    all of x.  Reported and discussed by Colin Fay, in PR#18357.
  * The "lm" method for summary() now gives the correct F-statistic
    when the model contains an offset.  Reported in PR#18008.
  * C() and `contrasts&lt;-`() now preserve factor level names when
    given a function object (as opposed a function name which did
    preserve names). Reported in PR#17616.
  * c(a = 1, 2)[[]] no longer matches 2 but rather signals a
    _classed_ error.  Reported and analysed by Davis Vaughan in
    PR#18367, a duplicate of PR#18004, by Jan Meis et al.  For
    consistency, NULL[[]] is also erroneous now.  x[[]] &lt;- v gives an
    error of the same class "MissingSubscriptError".
  * The relist() function of utils now supports NULL elements in the
    skeleton (PR#15854).
  * ordered(levels = *) (missing x) now works analogously to factor(,
    ordered=TRUE); reported (with fix) by Achim Zeileis in PR#18389.
  * User-defined Rd macro definitions can now span multiple lines,
    thanks to a patch from Duncan Murdoch. Previously, the Rd parser
    silently ignored everything after the first line.
  * Plain-text help (tools::Rd2txt()) now preserves an initial blank
    line for text following description list items.
  * tools::Rd2HTML() and tools::Rd2latex() no longer split \arguments
    and \value lists at Rd comments.
  * tools::Rd2latex() now correctly handles optional text outside
    \items of argument lists as well as bracketed text at the
    beginning of sections, e.g., \value{[NULL]}.
  * as.character(&lt;POSIXt&gt;) now behaves more in line with the methods
    for atomic vectors such as numbers, and is no longer influenced
    by options().  Ditto for as.character(&lt;Date&gt;).  The
    as.character() method gets arguments digits and OutDec with
    defaults _not_ depending on options().  Use of as.character(*,
    format = .) now warns.
  * Similarly, the as.character.hexmode() and *.octmode() methods
    also behave as good citizen methods and back compatibility option
    keepStr = TRUE.
  * The as.POSIXlt(&lt;POSIXlt&gt;) and as.POSIXct(&lt;POSIXct&gt;) default
    methods now do obey their tz argument, also in this case.
  * as.POSIXlt(&lt;Date&gt;) now does apply a tz (time zone) argument, as
    does as.POSIXct(); partly suggested by Roland Fuss on the R-devel
    mailing list.
  * as.Date.POSIXlt(x) now also works when the list components are of
    unequal length, aka "partially filled" or "ragged".
  * expand.model.frame() looked up variables in the wrong environment
    when applied to models fitted without data.  Reported in
    PR#18414.
  * time() now (also) uses the ts.eps = getOption("ts.eps") argument
    and thus by default rounds values very close to the start (or
    end) of a year.  Based on a proposal by Andre"i V. Kostyrka on
    R-help.
  * Printing of a factanal() result with just one factor and sort =
    TRUE now works regularly, fixing PR#17863 by Timothy Bates,
    thanks to the 'R Contributors' working group.
  * Printing 0-length objects of class "factor", "roman", "hexmode",
    "octmode", "person", "bibentry", or "citation" now prints
    something better, one of which fixes PR#18422, reported by
    Benjamin Feakins.
  * Sys.timezone() queries timedatectl only if systemd is loaded;
    addressing a report by Jan Gorecki in PR#17421.
  * The formula method of cor.test() had scoping problems when
    environment(formula) was not the calling environment; reported
    with a patch proposal by Mao Kobayashi in PR#18439.
  * attach() of an environment with active bindings now preserves the
    active bindings.  Reported by Kevin Ushey in PR#18425.
  * BLAS detection now works also with system-provided libraries not
    available as regular files.  This fixes detection of the
    Accelerate framework on macOS since Big Sur.  Reported by David
    Novgorodsky.
  * download.file() gives a helpful error message in case of an
    invalid download.file.method option, thanks to Colin Fay's report
    in PR#18455.
  * Sporadic crashes of Rterm when using completion have been fixed.
  * Rprof() is now more reliable.  A livelock in thread
    initialization with too short sampling interval has been fixed on
    macOS.  A deadlock in using the C runtime has been fixed on
    Windows.  A potential deadlock has been prevented on Unix.
  * Cursor placement in Rgui now works even after a fixed-width font
    is selected.
  * Mandatory options (options()) are now set on startup so that
    saving and restoring them always works (PR#18372).
  * Package installation, R CMD INSTALL or install.packages(*), now
    parses each of the &lt;pkg&gt;/R/*.R files individually instead of
    first concatenating and then parse()ing the large resulting file.
    This allows parser or syntax errors to be diagnosed with correct
    file names and line numbers, thanks to Simon Dedman's report and
    Bill Dunlap's patch in PR#17859.
    This _does_ require syntactically self contained R source files
    now, fixing another inadvertent bug.
  * predict.lm(&lt;model with offset&gt;) now finds the offset in the
    correct environment, thanks to Andr'e Gillibert's report and patch
    in PR#18456.
  * getInitial(&lt;formula&gt;) now finds the selfStart model in the
    correct environment.  (Reported by Ivan Krylov in PR#18368.)
  * Fix for possible segfault when using recently-added graphics
    features, such as gradients, clipping paths, masks, and groups
    with pdf(file=NULL).
  * class(m) &lt;- class(m) no longer changes a matrix m by adding a
    class _attribute_.
  * packageDate(pkg) now only warns once if there is no pkg.
  * When ts() creates a multivariate time series, "mts", it also
    inherits from "array" now, and is.mts() is documented _and_
    stricter.
  * Rd2txt() now preserves line breaks of \verb Rd content and from
    duplicated \cr.  The former also fixes the rendering of verbatim
    output from Rd \Sexpr in plain-text help.
  * uniroot(f, interval) should no longer wrongly converge _outside_
    the interval in some cases where abs(f(x)) == Inf for an x at the
    interval boundary, thanks to posts by Ben Bolker and Serguei
    Sokol on R-devel.
  * Vectorized alpha handling in palette functions such as in gray(),
    rainbow(), or hcl.colors() works correctly now, thanks to Achim
    Zeileis' report and patch in PR#18476.
  * Formatting and print()ing of bibentry objects has dropped the
    deprecated citation.bibtex.max argument, such that the bibtex
    argument's default for print.bibentry() depends directly on the
    citation.bibtex.max option, whereas in format.bibentry() the
    option no longer applies.
  * Attempting to use a character string naming a foreign function
    entry point in a foreign function call in a package will now
    signal an error if the packages has called R_forceSymbols to
    specify that symbols must be used.
  * An error in table() could permanently set options(warn=2)
    promoting all subsequent warnings to errors.
  * The sigma() function gave misleading results for binary GLMs.  A
    new method for objects of class "glm" returns the square root of
    the estimate of the dispersion parameter using the same
    calculation as summary.glm().
  * bs() and ns() in the (typical) case of automatic knot
    construction, when some of the supposedly inner knots coincide
    with boundary knots, now moves them inside (with a warning),
    building on PR#18442 by Ben Bolker.
  * R CMD on Windows now skips the site profile with --no-site-file
    and --vanilla even when R_PROFILE is set (PR#18512, from Kevin
    Ushey).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1686916800">- CHANGES IN R 4.3.1:
  C-LEVEL FACILITIES:
  * The C-level API version of R's integrate(), Rdqags() in Applic.h,
    now returns the correct number of integrand evaluations neval,
    fixing PR#18515 reported and diagnosed by Stephen Wade.
  * The C prototypes for LAPACK calls dspgv and dtptrs in
    R_exts/Lapack.h had one too many and one too few character length
    arguments - but this has not caused any known issues. To get the
    corrected prototypes, include
    [#]include &lt;Rconfig.h&gt; // for PR18534fixed
    [#]ifdef PR18534fixed
    [#] define usePR18534fix 1
    [#]endif
    [#]include &lt;R_exts/Lapack.h&gt;
    in your C/C++ code (PR#18534).
  INSTALLATION:
  * Many of the checks of esoteric Internet operations and those
    using unreliable external sites have been moved to a new target
    that is not run by default and primarily intended for the core
    developers.  To run them use
    cd tests; make test-Internet-dev
  BUG FIXES:
  * .S3methods(), typically called from methods(), again marks
    methods from package base as visible.
    Also, the visibility of non-base methods is again determined by
    the method's presence in search().
  * tools::Rdiff() is now more robust against invalid strings, fixing
    installation tests on Windows without Rtools installed
    (PR#18530).
  * Fix (new) bug in hcl.colors(2, *), by Achim Zeileis (PR#18523).
  * head(., &lt;illegal&gt;) and tail(..) now produce more useful "Error in
    ...." error messages, fixing PR#18362.
  * Package code syntax on Windows is checked in UTF-8 when UTF-8 is
    the native encoding.
  * na.contiguous(x) now also returns the first run, when it is at
    the beginning and there is a later one of the same length;
    reported to R-devel, including a fix, by Georgi Boshnakov.
    Further, by default, it modifies only an existing attr(*,"tsp")
    but otherwise no longer sets one.
  * chol(&lt;not pos.def&gt;, pivot = &lt;T|F&gt;) now gives a correct error or
    warning message (depending on pivot), thanks to Mikael Jagan's
    (PR#18541).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1699012800">- CHANGES IN R 4.3.2:
  NEW FEATURES:
  * The default initialization of the "repos" option from the
    repositories file at startup can be skipped by setting
    environment variable R_REPOSITORIES to NULL such that
    getOption("repos") is empty if not set elsewhere.
  * qr.X() is now an implicit S4 generic in methods.
  * iconv(to = "ASCII//TRANSLIT") is emulated using substitution on
    platforms which do not support it (notably Alpine Linux).  This
    should give a human-readable conversion in ASCII on all platforms
    (rather than NA_character_).
  * trans3d() gains options continuous and verbose addressing the
    problem of possible "wrap around" when projecting too long
    curves, as reported by Achim Zeileis in PR#18537.
  * tools::showNonASCII() has been rewritten to work better on macOS
    14 (which has a changed implementation of iconv()).
  * tiff(type = "quartz") (the default on macOS) now warns if
    compression is specified: it continues to be ignored.
  INSTALLATION on a UNIX-ALIKE:
  * There is some support for building with Intel's LLVM-based
    compilers on x86_64 Linux, such as (C) icx, (C++) ipcx and
    (Fortran) ifx from oneAPI 2023.x.y.
  * There is support for using LLVM's flang-new as the Fortran
    compiler from LLVM 16.0.x (preferably 17.0.0 or later).
  UTILITIES:
  * R CMD check reports the use of the Fortran 90 random number
    generator RANDOM_NUMBER() and the subroutines to initialize it.
    'Writing R Extensions' has example code to use R's RNGs from
    Fortran.
  BUG FIXES:
  * substr(x, n, L) &lt;- cc now works (more) correctly for multibyte
    UTF-8 strings x when L &gt; nchar(x), thanks to a report and patch
    by 'Architect 95'.
  * contrib.url(character()) now returns 0-length character() as
    documented, which also avoids spurious warnings from
    available.packages() et al. in the edge case of an empty vector
    of repository URLs.
  * readChar(., 4e8) no longer fails, thanks to Kodi Arfer's report
    (PR#18557).
  * lapply(&lt;list&gt;, as.data.frame) no longer warns falsely for some
    base vector components.
  * Communication between parent and child processes in the multicore
    part of parallel could fail on platforms that do not support an
    arbitrarily large payload in system functions read()/write() on
    pipes (seen on macOS where a restriction to INT_MAX bytes is
    documented, without doing a partial read unlike Linux). The
    payload is now split into 1Gb chunks to avoid that problem.
    (PR#18571)
  * qqplot(x,y, conf.level=.) gives better confidence bounds when
    length(x) != length(y), thanks to Alexander Ploner's report and
    patch proposal (PR#18557).
  * norm(&lt;0-length&gt;, "2") now gives zero instead of an error, as all
    the other norm types, thanks to Mikael Jagan's PR#18542.
  * Build-stage Rd macros \packageAuthor and \packageMaintainer now
    process Authors@R, fixing NA results when the package DESCRIPTION
    omits Author and Maintainer fields.
  * Formatting and printing complex numbers could give things like
    0.1683-0i because of rounding error: -0i is now replaced by +0i.
  * postscript() refused to accept a title comment containing the
    letter "W" (PR#18599).
  * isoreg(c(1,Inf)) signals an error instead of segfaulting, fixing
    PR#18603.
  * tiff(type = "Xlib") was only outputting the last page of
    multi-page plots.
  * tools::latexToUtf8() again knows about \~{n} and other letters
    with tilde, fixing a regression in R 4.3.0, and about \^{i} as an
    alternative to \^{\i} (similarly with other accents).
    Furthermore, LaTeX codes for accented I letters are now correctly
    converted, also fixing related mistakes in
    tools::encoded_text_to_latex().
  * tar(*, tar = "internal") no longer creates out-of-spec tar files
    in the very rare case of user or group names longer than 32
    bytes, fixing PR#17871 with thanks to Ivan Krylov.
  * When using the "internal" timezone datetime code, adding a
    fraction of a second no longer adds one second, fixing PR#16856
    from a patch by Ivan Krylov.
  * tools::checkRd() no longer produces spurious notes about
    "unnecessary braces" from multi-line Rd results of \Sexpr macros.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1709208000">- CHANGES IN R 4.3.3:
  NEW FEATURES:
  * iconv() now fixes up variant encoding names such as "utf8"
    case-insensitively.
  DEPRECATED AND DEFUNCT:
  * The legacy encoding = "MacRoman" is deprecated in pdf() and
    postscript(): support was incomplete in earlier versions of R.
  BUG FIXES:
  * Arguments are now properly forwarded to methods on S4 generics
    with ... in the middle of their formal arguments. This was broken
    for the case when a method introduced an argument but did not
    include ... in its own formals. Thanks to Herv'e Pag`es for the
    report PR#18538.
  * Some invalid file arguments to pictex(), postscript() and xfig()
    opened a file called NA rather than throw an error.  These
    included postscript(NULL) (which some people expected to work
    like pdf(NULL)).
  * Passing filename = NA to svg(), cairo_pdf(), cairo_ps() or the
    Cairo-based bitmap devices opened a file called NA: it now throws
    an error.
  * quartz(file = NA) opened a file called NA, including when used as
    a Quartz-based bitmap device.  It now gives an error.
  * rank(&lt;long vector&gt;) now works, fixing PR#18617, thanks to Ilia
    Kats.
  * seq.int() did not adequately check its length.out argument.
  * match(&lt;POSIXct&gt;, .) is correct again for differing time zones,
    ditto for "POSIXlt", fixing PR#18618 reported by Bastian Klein.
  * drop.terms(*, dropx = &lt;0-length&gt;) now works, fixing PR#18563 as
    proposed by Mikael Jagan.
  * drop.terms(*) keeps + offset(.) terms when it should, PR#18565,
    and drop.terms() no longer makes up a response, PR#18566, fixing
    both bugs thanks to Mikael Jagan.
  * getS3method("t", "test") no longer finds the t.test() function,
    fixing PR#18627.
  * pdf() and postscript() support for the documented Adobe encodings
    "Greek" and "Cyrilllic" was missing (although the corresponding
    Windows' codepages could be used).
  * Computations of glyph metric information for pdf() and
    postscript() did not take into account that transliteration could
    replace one character by two or more (only seen on macOS 14) and
    typically warned that the information was not known.
  * rank(x) no longer overflows during integer addition, when
    computing rank average for largish but not-yet long vector x,
    fixing PR#18630, thanks to Ilia Kats.
  * list.files() on Windows now returns also files with names longer
    that 260 bytes (the Windows limit is 260 characters).
    Previously, some file names particularly with 'East Asian'
    characters were omitted.
  * cov2cor(&lt;0 x 0&gt;) now works, fixing PR#18423 thanks to Mikael
    Jagan and Elin Waring.
  * cov2cor(&lt;negative diagonal&gt;) and similar now give one warning
    instead of two, with better wording, fixing PR#18424 thanks to
    Mikael Jagan.
  * tools:: startDynamicHelp() now ensures port is in proper range,
    fixing PR#18645.
  * pbeta(x, a,b) is correct now for x=0 or 1 in the boundary cases
    where a or b or both are 0, fixing PR#18672 thanks to Michael
    Fay.
  * pmatch(x, table) for large table, also called for data frame row
    selection, dfrm[nm, ], is now interruptible, fixing PR#18656.
  * predict(&lt;rank-deficient lm&gt;, newdata=*) fix computing of nbasis,
    see Russ Lenth's comment 29 in PR#16158.
  * Added a work-around for a bug in macOS 14.3.1 and higher which
    prevents R plots in the Quartz Cocoa device from updating on
    screen.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1713960000">- CHANGES IN R 4.4.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Startup banners, R --version, sessionInfo() and R CMD check no
    longer report (64-bit) as part of the platform as this is almost
    universal - the increasingly rare 32-bit platforms will still
    report (32-bit).
    On Windows, ditto for window titles.
  * is.atomic(NULL) now returns FALSE, as NULL is not an atomic
    vector.  Strict back-compatibility would replace is.atomic(foo)
    by (is.null(foo) || is.atomic(foo)) but should happen only
    sparingly.
  NEW FEATURES:
  * The confint() methods for "glm" and "nls" objects have been
    copied to the stats package.  Previously, they were stubs which
    called versions in package MASS. The MASS namespace is no longer
    loaded if you invoke (say) confint(glmfit).  Further, the "glm"
    method for profile() and the plot() and pairs() methods for class
    "profile" have been copied from MASS to stats.  (profile.nls()
    and plot.profile.nls() were already in stats.)
  * The confint() and profile methods for "glm" objects have gained a
    possibility to do profiling based on the Rao Score statistic in
    addition to the default Likelihood Ratio. This is controlled by a
    new test = argument.
  * The pairs() method for "profile" objects has been extended with a
    which = argument to allow plotting only a subset of the
    parameters.
  * The "glm" method for anova() computes test statistics and
    p-values by default, using a chi-squared test or an F test
    depending on whether the dispersion is fixed or free.  Test
    statistics can be suppressed by giving argument test a false
    logical value.
  * In setRepositories() the repositories can be set using their
    names via name = instead of index ind =.
  * methods() and .S3methods() gain a all.names option for the (rare)
    case where functions starting with a . should be included.
  * Serializations can now be interrupted (e.g., by Ctrl-C on a
    Unix-alike) if they take too long, e.g., from save.image(),
    thanks to suggestions by Ivan Krylov and others on R-devel.
  * New startup option --max-connections to set the maximum number of
    simultaneous connections for the session.  Defaults to 128 as
    before: allowed values up to 4096 (but resource limits may in
    practice restrict to smaller values).
  * R on Windows (since Windows 10 2004) now uses the new Segment
    Heap allocator. This may improve performance of some
    memory-intensive applications.
  * When R packages are built, typically by R CMD build &lt;pkg&gt;, the
    new --user=&lt;build_user&gt; option overrides the (internally
    determined) user name, currently Sys.info()["user"] or LOGNAME.
    This is a (modified) fulfillment of Will Landau's suggestion in
    PR#17530.
  * tools::testInstalledBasic() gets new optional arguments outDir
    and testSrcdir, e.g., allowing to use it in a &lt;builddir&gt; !=
    &lt;srcdir&gt; setup, and in standard "binary" Windows installation
  * if* a source tests/ folder is present.
  * range(&lt;DT_with_Inf&gt;, finite = TRUE) now work for objects of class
    "Date", "POSIXct", and "POSIXlt" with infinite entries,
    analogously to range.default(), as proposed by Davis Vaughan on
    R-devel.  Other range()-methods can make use of new function
    .rangeNum().
  * New .internalGenerics object complementing .S3PrimitiveGenerics,
    for documentation and low-level book-keeping.
  * grid() now invisibly returns the x- and y- coordinates at which
    the grid-lines were drawn.
  * norm(., type) now also works for complex matrices.
  * kappa(., exact = TRUE, norm = *) now works for all norms and also
    for complex matrices.  In symmetric / triangular cases, the new
    argument uplo = "U" | "L" allows the upper or lower triangular
    part to be specified.
  * memDecompress(type = "unknown") recognizes compression in the
    default 'zlib' format as used by memCompress(type = "gzip").
  * memCompress() and memDecompress() will use the libdeflate library
    (&lt;https://github.com/ebiggers/libdeflate&gt;) if installed.  This
    uses the same type of compression for type = "gzip" but is 1.5-2x
    faster than the system libz library on some common platforms: the
    speed-up may depend on the library version.
  * diff() for objects of class "Date", "POSIXct", and "POSIXlt"
    accepts a units argument passed via ....
  * Dynamic help now does a much better job of rendering package
    DESCRIPTION metadata.
  * Rprof() gains an event argument and support for elapsed (real)
    time profiling on Unix (PR#18076).
  * filled.contour() gains a key.border argument.
  * tools::update_pkg_po() gets arguments pot_make and mo_make for
    _not_ re-making the corresponding files, and additionally a
    verbose argument.
  * Hexadecimal string colour specifications are now accepted in
    short form, so, for example, we can use "#123", which is
    equivalent to "#112233".
    Thanks to MikeFC for the original idea and Ella Kaye, Malcolm
    Barrett, George Stagg, and Hanne Oberman for the patch.
  * Plain-text help shows \var markup by angle brackets.
  * The new experimental primitive function declare() is intended to
    eventually allow information about R code to be communicated to
    the interpreter, compiler, and code analysis tools. The syntax
    for declarations is still being developed.
  * Functions psmirnov(), qsmirnov() and rsmirnov() in package stats
    have had argument two.sided renamed to alternative, to take into
    account that the permutation distributions of the one-sided
    statistics can be different in the case of ties.  Consequence of
    PR#18582.
  * sort() is now an implicit S4 generic in methods.
  * Formatting and printing, format(z), print(z), of complex vectors
    z no longer zap relatively small real or imaginary parts to zero,
    fixing PR#16752.  This is an API change, as it was documented
    previously to round real and imaginary parts together on purpose,
    producing nicer looking output.  As mentioned, e.g. in the PR,
    this change is compatible with many other "R-like" programming
    environments.
    We have simplified the internal code and now basically format the
    real and imaginary parts independently of each other.
  * New experimental functions Tailcall() and Exec() to support
    writing stack-space-efficient recursive functions.
  * Where characters are attempted to be plotted by pdf(),
    postscript() and xfig() which are not in the selected 8-bit
    character set (most often Latin-1) and the R session is using a
    UTF-8 locale, the warning messages will show the UTF-8 character
    rather than its bytes and one dot will be substituted per
    character rather than per byte.  (Platforms whose iconv() does
    transliteration silently plot the transliteration.)
    In a UTF-8 locale some transliterations are now done with a
    warning (e.g., dashes and Unicode minus to hyphen, ligatures are
    expanded, permille (‰) is replaced by o/oo), although the OS may
    have got there first.  These are warnings as they will continue
    to be replaced by dots in earlier versions of R.
  * The matrix multiplication functions crossprod() and tcrossprod()
    are now also primitive and S3 generic, as %*% had become in R
    4.3.0.
  * source() and example() have a new optional argument catch.aborts
    which allows continued evaluation of the R code after an error.
  * The non-Quartz tiff() devices allow additional types of
    compression if supported by the platform's libtiff library.
  * The list of base and recommended package names is now provided by
    tools::standard_package_names().
  * cairo_pdf() and cairo_ps() default to onefile = TRUE to closer
    match pdf() and postscript().
  * New option catch.script.errors provides a documented way to catch
    errors and then continue in non-interactive use.
  * L %||% R newly in base is an expressive idiom for the phrases
    if(!is.null(L)) L else R or if(is.null(L)) R else L.
  * The return value from warnings() now always inherits from
    "warnings" as documented, now also in the case of no warnings
    where it previously returned NULL.
  * as.complex("1i") now returns 0 + 1i instead of NA with a warning.
  * z &lt;- c(NA, 1i) now keeps the imaginary part Im(z[1]) == 0, no
    longer coercing to NA_complex_.  Similarly, cumsum(z) correctly
    sums real and imaginary parts separately, i.e., without
    "crosstalk" in case of NAs.
  * On Alpine Linux iconv() now maps "latin2", "latin-2", "latin9"
    and "latin-9" to encoding names the OS knows about
    (case-insensitively).
  * iconv(sub = "Unicode") now always zero-pads to four (hex) digits,
    rather than to 4 or 8.  (This seems to have become the convention
    once Unicode restricted the number of Unicode points to 2^21 - 1
    and so will never need more than 6 digits.)
  * NCOL(NULL) now returns 0 instead of 1, for consistency with
    cbind().
  * The information for the Euro glyph missing from the Adobe .afm
    files for the Courier, Helvetica and Times families has been
    copied from their URW equivalents - this will improve vertical
    centring in the pdf() and postscript() devices.
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.12.0.  The changes are almost entirely cosmetic.
  * The included LAPACK sources have been updated to version 3.12.0
    and some further double-complex routines added.
  * There are new font families for the 2014--5 URW 2.0 fonts (see
    ?pdf) which are included in recent versions of Ghostscript.
    These have font widths for most Greek glyphs and a few others
    which were missing from the original versions (whose font
    families remain available for reproducibility, although
    Ghostscript-based viewers will render using the 2.0 versions).
  * Improve the large-n efficiency of as.matrix(&lt;dist&gt;), thanks an R
    contributors effort, notably by Tim Taylor and Heather Turner,
    see PR#18660.
  * The default and numeric methods of all.equal() get a check.class
    option.
  * zapsmall() gets new optional arguments, function mFUN and min.d,
    for extra flexibility; fulfills a wish in PR#18199.  Also, it is
    now an implicit S4 generic in package methods.
  * The Rd filter for aspell() gains an ignore argument.
  * New generic function sort_by(), primarily useful for the
    data.frame method which can be used to sort rows of a data frame
    by one or more columns.
  * The icence headers for the RPC code in src/extra/xdr have been
    updated to use the GPL-compatible licence published by Oracle
    America in 2010.
  * New function pkg2HTML() in tools to create single-page HTML
    reference manuals for R packages.
  * The byte code evaluator now uses less C stack space for recursive
    calls to byte-compiled functions. It also makes more of an effort
    to avoid allocations for scalar return values.
  * New completion option backtick (disabled by default) allows
    non-syntactic completions to be wrapped in backquotes. This is
    currently only useful for Jupyter notebooks via the IRkernel
    package, and may cause problems for other backends.
  INSTALLATION:
  * The parser has been updated to work with bison 3.8.2, which is
    now used for the pre-generated parsers in gram.c, file.c, and
    gramRd.c. A few parser error messages have changed, which may
    affect code that relies on exact messages.
  INSTALLATION on a UNIX-ALIKE:
  * System valgrind headers are now required to use configure option
  - -with-valgrind-instrumentation with value 1 or 2.
  * configure will warn if it encounters a 32-bit build, as that is
    nowadays almost untested.
  * Environment variable R_SYSTEM_ABI is no longer used and so no
    longer recorded in etc/Renviron (it was not on Windows and was
    only ever used when preparing package tools).
  * If the libdeflate library and headers are available, libdeflate
    rather than libz is used to (de)compress R objects in lazy-load
    databases.  Typically tasks spend up to 5% of their time on such
    operations, although creating lazy-data databases is one of the
    exceptions.
    This can be suppressed if the library is available by the
    configure option --without-libdeflate-compression.
  * configure option --enable-lto=check has not worked reliably since
    2019 and has been removed.
  * The minimum autoconf requirement for a maintainer build has been
    increased to autoconf 2.71.
    It is intended to increase this to 2.72 for R 4.5.0: the
    distributed configure file was generated using 2.72.
  * The minimum version requirement for an external LAPACK has been
    reduced to 3.9.0.
  * No default C++ compiler is set if no C++17 compiler is detected:
    there is no longer an automatic fallback to C++14 or C++11.
    Compilers from the last five years should have sufficient
    support: for others macros CXX and CXXSTD can be set in file
    config.site to provide a fallback if needed.
    The Objective-C++ compiler now by default uses the standard
    selected by R for C++ (currently C++17) rather than the default
    standard for the C++ compiler (which on macOS is still C++98).
  INSTALLATION on macOS:
  * A new configure option --with-newAccelerate makes use of Apple's
    'new' BLAS / LAPACK interfaces in their Accelerate framework.
    Those interfaces are only available in macOS 13.3 or later, and
    building requires SDK 13.3 or later (from the Command Line Tools
    or Xcode 14.3 or later).
    By default the option uses new Accelerate for BLAS calls: to also
    use it for LAPACK use option --with-newAccelerate=lapack.  The
    later interfaces provide LAPACK 3.9.1 rather than 3.2.1: 3.9.1 is
    from 2021-04 and does not include the improved algorithms
    introduced in LAPACK 3.10.0 (including for BLAS calls).
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools44, an update of the Rtools43 toolchain.  It is
    based on GCC 13 and newer versions of MinGW-W64, binutils and
    libraries (targeting 64-bit Intel CPUs).  R-devel can no longer
    be built using Rtools43 without changes.
  * Rtools44 has experimental support for 64-bit ARM (aarch64) CPUs
    _via_ the LLVM 17 toolchain using lld, clang/flang-new and
    libc++.
  UTILITIES:
  * R CMD check notes when S4-style exports are used without
    declaring a strong dependence on package methods.
  * tools::checkRd() (used by R CMD check) detects more problems with
    \Sexpr-based dynamic content, including bad nesting of \Sexprs
    and invalid arguments.
  * tools::checkRd() now reports Rd titles and section names ending
    in a period; this is ignored by R CMD check unless environment
    variable _R_CHECK_RD_CHECKRD_MINLEVEL_ is set to -5 or smaller.
  * R CMD check now notes Rd files without an \alias, as long
    documented in 'Writing R Extensions' §1.3.1.  The check for a
    missing \description has been moved from tools::checkRd() to
    tools::checkRdContents().
  * R CMD check now visits inst/NEWS.Rd and OS-specific man
    subdirectories when checking Rd files.
  * tools::checkDocFiles() and tools::checkRdContents() now also
    check internal Rd files by default, but "specially" (ignoring
    missing documentation of arguments).
  * R CMD Rdiff gets option --useEx.
  * R CMD check now warns on non-portable uses of Fortran KIND such
    as INTEGER(KIND=4) and REAL(KIND=8).
    To see the failing lines set environment variable
    _R_CHECK_FORTRAN_KIND_DETAILS_ to a true value.
  * When checking Rd files, R CMD check now notes some of the "lost
    braces" that tools::checkRd() finds.  Typical problems are Rd
    macros missing the initial backslash (e.g., code{...}), in-text
    set notation (e.g., {1, 2}, where the braces need escaping), and
    \itemize lists with \describe-style entries of the form
    \item{label}{description}.
  * R CMD INSTALL (and hence check) will compile C++ code with
  - DR_NO_REMAP if environment variable _R_CXX_USE_NO_REMAP_ is set
    to a true value.  It is planned that this will in future become
    the default for compiling C++.
  * The new built-in Rd macro \dontdiff{} can be used to mark example
    code whose output should be ignored when comparing check output
    to reference output (tests/Examples/&lt;pkg&gt;-Ex.Rout.save).  The
    \dontdiff tag, like \donttest, is _not_ shown on the rendered
    help page, so provides a clean alternative to ##
    IGNORE_RDIFF_(BEGIN|END) comments.
  * R CMD build when there is no NAMESPACE, now uses the recommended
    exportPattern("^[^.]"), instead of exporting everything.
  * R CMD check now warns about non-ASCII characters in the NAMESPACE
    file (in addition to R files). Such packages are not portable and
    may fail to install on some platforms.
  C-LEVEL FACILITIES:
  * Headers R_ext/Applic.h and R-ext/Linpack.h used to include
    R_ext/BLAS.h although this was undocumented and unneeded by their
    documented entry points.  They no longer do so.
  * New function R_missing(), factored out from do_missing(), used to
    fix PR#18579.
  * SEXP type S4SXP has been renamed to OBJSXP to support
    experimenting with alternative object systems.  The S4SXP value
    can still be used in C code but is now deprecated.  Based on
    contributions from the R Consortium's Object-Oriented Programming
    Working Group.
  * New function pow1p(x,y) for accurate (1+x)^y.
  * mkCharLenCE was incorrectly documented to take a size_t length
    but was implemented with int (and character strings in R are
    limited to 2^31 - 1 bytes).
  DEPRECATED AND DEFUNCT:
  * data() no longer handles zipped data from long-defunct (since R
    2.13.0) --use-zip-data installations.
  * The legacy graphics devices pictex() and xfig() are now
    deprecated.  They do not support recent graphics enhancements and
    their font handling is rudimentary. The intention is to retain
    them for historical interest as long as they remain somewhat
    functional.
  * Support for encoding = "MacRoman" has been removed from the pdf()
    and postscript() devices - this was a legacy encoding supporting
    classic macOS up to 2001 and no longer has universal libiconv
    support.
  * is.R() is deprecated as no other S dialect is known to be in use
    (and this could only identify historical dialects, not future
    ones).
    Further information on calls can be obtained by setting the
    environment variable _R_DEPRECATED_IS_R_ to error which turns the
    deprecation warning into an error and so by default gives a
    traceback.  (This is done by R CMD check --as-cran.)
  * UseMethod() no longer forwards local variables assigned in the
    generic function into method call environments before evaluating
    the method body. This makes method calls behave more like
    standard function calls and makes method code easier to analyze
    correctly.
  * The twelve as.data.frame.&lt;class&gt;() methods which were deprecated
    only via _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ and in R CMD
    check --as-cran are formally deprecated now in favour of calling
    as.data.frame() or as.data.frame.vector().  The deprecation
    "check" now works also when as.data.frame() is S4 generic thanks
    to Ivan Krylov.
  * The default method for the directional comparison operators &lt;, &gt;,
    &lt;=, and &gt;= now signals an error when one of the operands is a
    language object, i.e. a symbol or a call.
  * For terms.formula(), deprecate abb and neg.out arguments
    _formally_ in addition to just documenting it.
  BUG FIXES:
  * The methods package is more robust to not being attached to the
    search path.  More work needs to be done.
  * pairwise.t.test() misbehaved when subgroups had 0 DF for
    variance, even with pool.sd = TRUE.  (PR#18594 by Jack Berry).
  * Probability distribution functions [dpq]&lt;distrib&gt;(x, *), but also
    bessel[IKJY](x, .) now consistently preserve attributes(x) when
    length(x) == 0, e.g., for a 2 x 0 matrix, thanks to Karolis
    Koncevičius' report PR#18509.
  * Group "Summary" computations such as sum(1:3, 4, na.rm = 5, NA,
    7, na.rm = LL) now give an error instead of either 17 or NN for
    LL true or false, as proposed by Ivan Krylov on the R-devel
    mailing list.  (This also means it is now an error to specify
    na.rm more than once.)
  * as.complex(x) now returns complex(real = x, imaginary = 0) for
    _all_ numerical and logical x, notably also for NA or
    NA_integer_.
  * Directories are now omitted by file.copy(, recursive = FALSE) and
    in file.append() (PR#17337).
  * gsub() and sub() are now more robust to integer overflow when
    reporting errors caused by too large input strings (PR#18346).
  * Top-level handlers are now more robust to attempts to remove a
    handler whilst handlers are running (PR#18508).
  * The handling of Alt+F4 in dialogs created on Windows using
    GraphApp has been fixed (PR#13870).
  * density() more consistently computes grid values for the
    FFT-based convolution, following Robert Schlicht's analysis and
    proposal in PR#18337, correcting density values typically by a
    factor of about 0.999.  Argument old.coords = TRUE provides back
    compatibility.
  * palette.colors() gains a name argument that defaults to FALSE
    controlling whether the vector of colours that is returned has
    names (where possible).  PR#18529.
  * tools::xgettext() no longer extracts the (non-translatable) class
    names from warningCondition and errorCondition calls.
  * S3method(&lt;gen&gt;, &lt;class&gt;, &lt;func&gt;) in the NAMESPACE file now works
    (again) when &lt;func&gt; is visible from the namespace, e.g.,
    imported, or in base.
  * getParseData(f) now also works for a function defined in the
    first of several &lt;pkg&gt;/R/*.R source files, thanks to Kirill
    Müller's report and Duncan Murdoch's patch in PR#16756.
  * Rd \Sexpr macros with nested #ifdef conditionals were not
    processed.
  * A non-blocking connection with non-default encoding (such as a
    socket) now correctly returns from readLines() after new data has
    arrived also when its EOF had been reached previously.  Thanks to
    Peter Meilstrup's report on R-devel and Ivan Krylov's report and
    patch proposal in PR#18555.
  * tools::checkRdContents() failed to detect empty argument
    descriptions when they spanned multiple lines, including those
    generated by prompt().  These cases are now noted by R CMD check.
  * Plain-text help no longer outputs spurious colons in the
    arguments list (for multi-line \item labels in the Rd source).
  * kappa() and rcond() work correctly in more cases; kappa(., norm =
    "2") now warns that it computes the 1-norm with (default) exact =
    FALSE; prompted by Mikael Jagan's quite comprehensive PR#18543.
  * Rd skeletons generated by prompt() or promptData() now use a
    dummy title (so R CMD build works).  tools::checkRdContents() has
    been updated to detect such template leftovers, including from
    promptPackage().
  * When S4 method dispatch fails because no method was found, the
    error message now includes the signature argument names; thanks
    to Michael Chirico's proposal on the R-devel list.
  * withAutoprint({ .. }) now preserves srcrefs previously lost,
    thanks to Andrew Simmons' report plus fix in PR#18572.
  * transform.data.frame() no longer adjusts names; in particular,
    untransformed variables are kept as-is, including those with
    syntactically invalid names (PR#17890).
  * The keep.source option for Rd \Sexpr blocks is no longer ignored.
  * The formula methods for t.test() and wilcox.test() now catch when
    paired is passed, addressing PR#14359; use Pair(x1, x2) ~ 1 for a
    paired test.
  * The level reported in the browser prompt was often too large. It
    now shows the number of browser contexts on the stack.
  * For cbind() and rbind(), the optional deparse.level argument is
    now properly passed to methods, thanks to Mikael Jagan's PR#18579
    and comments there.
  * Some error and warning messages for large ('long vector')
    matrix(v, nr, nc) and dim(m) &lt;- d are now correct about sizes,
    using long long formatting, fixing PR#18612 (and more) reported
    by Mikael Jagan.
  * readChar(useBytes = TRUE) now terminates strings even when the
    underlying connection uses extra spaces in the input buffer.
    This fixes problems with extra garbage seen with gzip
    connections, PR#18605.
  * Named capture in PCRE regular expressions now works also with
    more than 127 named groups (PR#18588).
  * Datetime functions are now robust against long jumps when dealing
    with internal time zone changes.  This avoids confusing warnings
    about an invalid time zone, previously triggered by turning
    warnings into errors or handling them via tryCatch (PR#17966,
    PR#17780).
  * Datetime functions now restore even an empty TZ environment
    variable after internal time zone changes (PR#17724).  This makes
    results of datetime functions with this (typically unintentional)
    setting more predictable.
  * drop.terms(*) now drops response as by default, keep.response =
    FALSE, fixing PR#18564 thanks to Mikael Jagan.
  * dummy.coef(.) now also works for lm()-models with character
    categorical predictor variables rather than factor ones, fixing
    PR#18635 reported by Jinsong Zhao.
  * formals(f) &lt;- formals(f) now also works for a function w/o
    arguments and atomic _constant_ body(f).
  * Correct as.function(&lt;invalid list&gt;, .)'s error message.
  * removeSource() is yet more thorough in finding and removing
    "srcref" and the other source references from parsed R language
    chunks, fixing PR#18638 thanks to Andrew Simmons.
  * dgeom() is more accurate now, notably when its result is very
    small, fixing PR#18642 thanks to the proposal of Morten Welinder,
    also improving other instances where C level binom_raw(x, n, ..)
    has x == 0 or x== n.
  * warning() with options(warn = 1) has improved output for
    multi-line messages.
  * axis.Date() and axis.POSIXct() now respect the par("lab") setting
    for the number of pretty() intervals.
  * Comparisons for language objects (which are based on deparsing)
    are now more careful about using accurate deparsed results
    (PR#18676).
  * Plain-text help (Rd2txt) now correctly preserves blank lines
    following single-line \dontrun code.
  * &lt;POSIXlt&gt;[*] no longer sets wrong "balanced" attribute, fixing
    PR#18681 thanks to Mikael Jagan.
  * str(&lt;classed-call&gt;) now deparses the call as expected, fixing
    PR#18684, reported by Dave Slager.
  * In Rd examples, code following the closing brace of a \dontrun,
    \dontshow or \donttest tag on the same line is no longer skipped
    when R CMD check runs the examples.
  * as.data.frame(matrix(*, ncol=0)) now gets valid names() and
    colnames(); reported by Davis Vaughan on the R-devel list.
  * Internal Mathlib function stirlerr(n) is now almost fully
    (52-bit) accurate for all n &gt;= ~5.9 and more accurate also in the
    range 1 -- 5.9.  This entails small ("after 12th decimal")
    changes in density functions, e.g., dgamma() in _some_ regions of
    their support.  The fix was partly prompted by Morten Welinder's
    PR#18640.
  * Numbers like 9876543.2 are now considered non-integer by Mathlib
    internal R_nonint(), amending original fix of PR#15734.
  * Rd comment lines no longer cause broken paragraphs in the
    rendered PDF and plain-text help. In code blocks, pure comment
    lines (starting with %) no longer produce an empty line.
  * xtabs(Freq ~ .) now consistently defaults to na.action = na.pass,
    using na.rm = FALSE (added as an argument) when summing over Freq
    (PR#17770).
  * tools::testInstalledPackage() is no longer silent about failures
    from running examples or tests and its return code no longer
    ignores failures from checking vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1718366400">- CHANGES IN R 4.4.1:
  C-LEVEL FACILITIES:
  * Functions R_atof and R_strtod declared in header R_ext/Utils.h
    are now documented in 'Writing R Extensions' and so formally part
    of the API.
  * The non-API entry points Rf_setSVector, Rf_StringFalse,
    Rf_StringTrue and Rf_isBlankString have been added to those
    reported by R CMD check.
  * The new function Rf_allocLang is now available. This provides an
    alternative to the idiom of calling Rf_allocList followed by
    SET_TYPEOF.
  UTILITIES:
  * R CMD check now reports as warnings what gfortran calls 'Fortran
    2018 deleted features', all of which have long been marked as
    'obsolescent' and some of which were deleted in Fortran 2008 or
    earlier.  Fortran compilers are no longer required to support
    these.
  BUG FIXES:
  * as.numeric(), scan(), type.convert() and other places which use
    the internal C function R_strtod now require a _non-empty_ digit
    sequence in a decimal or binary exponent.  This aligns with the
    C/POSIX standard for strtod and with ?NumericConstants.
  * as.data.frame(m, make.names=NA) now works correctly for a matrix
    m with NA's in row names.
  * The error message from &lt;POSIXlt&gt;[["hour"]] and similar now
    mentions *[[, "hour"]], as wished for in PR#17409 and proposed by
    Michael Chirico.
  * qbinom() and potentially qpois(), qnbinom(), no longer sometimes
    fail accurate inversion (of pbinom(), etc), thanks to Christopher
    Chang's report and patch in PR#18711.
  * The internal help server on Windows can again serve requests sent
    in quick succession, fixing a regression in R 4.4.0.
  * debugcall(&lt;S3Generic&gt;()) now also works when a corresponding
    S4-generic version is in the methods cache (PR#18143).
  * Package tools' toTitleCase(ch0) now returns character(0) when ch0
    is of zero length; fixing PR#18724, reported by David Hugh Jones.
  * R CMD check is no longer broken (without a check result and no
    explanation in 00check.log) for a package which declares an
    invalid VignetteBuilder in DESCRIPTION but has no vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1730376000">- CHANGES IN R 4.4.2:
  C-LEVEL FACILITIES:
  * The S-compatibility macros F77_COM and F77_COMDECL defined in
    header R_ext/RS.h are deprecated and will be removed shortly.  We
    could find no record of their use.
  BUG FIXES:
  * Mathlib function lgammacor(x) no longer warns about underflow to
    zero for large x.
  * Text widths and heights were incorrectly reported by the Quartz
    device if the drawing context didn't exist yet (typically when
    drawing off-screen to a window that is yet to appear, see
    PR#18591).
  * The Quartz device could segfault in cases where paths with spaces
    are used in the new glyph drawing API.  Thanks to Tomek
    Gieorgijewski (PR#18758).
  * On macOS in R CRAN builds, it is again possible to read
    little-endian UTF-16 text with a BOM from a connection using
    encoding="UTF-16".  Users building R from source should avoid
    using the system libiconv in macOS 14.1 and later.
  * methods' internal .requirePackage() now re-enables primitive
    method dispatch when needed; thanks to Ivan Krylov for
    demystifying CRAN package check failures on the R-devel mailing
    list.</changelog>
</package>
<package pkgid="96f479c9da89388341e2c6243a3db00f448cc2d54c5c5bef3190d1fd530e16bb7d796a6ea7a23a164897d4fb730d549633b60ea9efa09dd967eb556fe7c1fb92" name="R-methods" arch="x86_64">
  <version epoch="0" ver="4.4.2" rel="51.0.2.2.sr20241103"/>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1620302400">- To get in sync with d:l:R:autoCRAN the Matrix package's split
  in -devel was reversed.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339200">- improved spec file according to comments of dimstar in
  https://build.opensuse.org/request/show/892685</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339201">- CHANGES IN R 4.1.0:
  FUTURE DIRECTIONS:
  * It is planned that the 4.1.x series will be the last to support
    32-bit Windows, with production of binary packages for that
    series continuing until early 2023.
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Data set esoph in package datasets now provides the correct
    numbers of controls; previously it had the numbers of cases added
    to these.  (Reported by Alexander Fowler in PR#17964.)
  NEW FEATURES:
  * www.omegahat.net is no longer one of the repositories known by
    default to setRepositories().  (Nowadays it only provides source
    packages and is often unavailable.)
  * Function package_dependencies() (in package tools) can now use
    different dependency types for direct and recursive dependencies.
  * The checking of the size of tarball in R CMD check --as-cran
    &lt;pkg&gt; may be tweaked via the new environment variable
    _R_CHECK_CRAN_INCOMING_TARBALL_THRESHOLD_, as suggested in
    PR#17777 by Jan Gorecki.
  * Using c() to combine a factor with other factors now gives a
    factor, an ordered factor when combining ordered factors with
    identical levels.
  * apply() gains a simplify argument to allow disabling of
    simplification of results.
  * The format() method for class "ftable" gets a new option justify.
    (Suggested by Thomas Soeiro.)
  * New ...names() utility.  (Proposed by Neal Fultz in PR#17705.)
  * type.convert() now warns when its as.is argument is not
    specified, as the help file always said it _should_.  In that
    case, the default is changed to TRUE in line with its change in
    read.table() (related to stringsAsFactor) in R 4.0.0.
  * When printing list arrays, classed objects are now shown _via_
    their format() value if this is a short enough character string,
    or by giving the first elements of their class vector and their
    length.
  * capabilities() gets new entry "Rprof" which is TRUE when R has
    been configured with the equivalent of --enable-R-profiling (as
    it is by default).  (Related to Michael Orlitzky's report
    PR#17836.)
  * str(xS4) now also shows extraneous attributes of an S4 object
    xS4.
  * Rudimentary support for vi-style tags in rtags() and R CMD rtags
    has been added.  (Based on a patch from Neal Fultz in PR#17214.)
  * checkRdContents() is now exported from tools; it and also
    checkDocFiles() have a new option chkInternal allowing to check
    Rd files marked with keyword "internal" as well.  The latter can
    be activated for R CMD check via environment variable
    _R_CHECK_RD_INTERNAL_TOO_.
  * New functions numToBits() and numToInts() extend the raw
    conversion utilities to (double precision) numeric.
  * Functions URLencode() and URLdecode() in package utils now work
    on vectors of URIs.  (Based on patch from Bob Rudis submitted
    with PR#17873.)
  * path.expand() can expand ~user on most Unix-alikes even when
    readline is not in use.  It tries harder to expand ~, for example
    should environment variable HOME be unset.
  * For HTML help (both dynamic and static), Rd file links to help
    pages in external packages are now treated as references to
    topics rather than file names, and fall back to a file link only
    if the topic is not found in the target package. The earlier rule
    which prioritized file names over topics can be restored by
    setting the environment variable _R_HELP_LINKS_TO_TOPICS_ to a
    false value.
  * c() now removes NULL arguments before dispatching to methods,
    thus simplifying the implementation of c() methods, _but_ for
    back compatibility keeps NULL when it is the first argument.
    (From a report and patch proposal by Lionel Henry in PR#17900.)
  * Vectorize()'s result function's environment no longer keeps
    unneeded objects.
  * Function ...elt() now propagates visibility consistently with
    ..n.  (Thanks to Lionel Henry's PR#17905.)
  * capture.output() no longer uses non-standard evaluation to
    evaluate its arguments.  This makes evaluation of functions like
    parent.frame() more consistent.  (Thanks to Lionel Henry's
    PR#17907.)
  * packBits(bits, type="double") now works as inverse of
    numToBits().  (Thanks to Bill Dunlap's proposal in PR#17914.)
  * curlGetHeaders() has two new arguments, timeout to specify the
    timeout for that call (overriding getOption("timeout")) and TLS
    to specify the minimum TLS protocol version to be used for
    https:// URIs (_inter alia_ providing a means to check for sites
    using deprecated TLS versions 1.0 and 1.1).
  * For nls(), an optional constant scaleOffset may be added to the
    denominator of the relative offset convergence test for cases
    where the fit of a model is expected to be exact, thanks to a
    proposal by John Nash.  nls(*, trace=TRUE) now also shows the
    convergence criterion.
  * Numeric differentiation _via_ numericDeriv() gets new optional
    arguments eps and central, the latter for taking central divided
    differences.  The latter can be activated for nls() via
    nls.control(nDcentral = TRUE).
  * nls() now passes the trace and control arguments to getInitial(),
    notably for all self-starting models, so these can also be fit in
    zero-noise situations via a scaleOffset.  For this reason, the
    initial function of a selfStart model must now have ... in its
    argument list.
  * bquote(splice = TRUE) can now splice expression vectors with
    attributes: this makes it possible to splice the result of
    parse(keep.source = TRUE).  (Report and patch provided by Lionel
    Henry in PR#17869.)
  * textConnection() gets an optional name argument.
  * get(), exists(), and get0() now signal an error if the first
    argument has length greater than 1.  Previously additional
    elements were silently ignored.  (Suggested by Antoine Fabri on
    R-devel.)
  * R now provides a shorthand notation for creating functions, e.g.
    \(x) x + 1 is parsed as function(x) x + 1.
  * R now provides a simple native forward pipe syntax |&gt;.  The
    simple form of the forward pipe inserts the left-hand side as the
    first argument in the right-hand side call.  The pipe
    implementation as a syntax transformation was motivated by
    suggestions from Jim Hester and Lionel Henry.
  * all.equal(f, g) for functions now by default also compares their
    environment(.)s, notably via new all.equal method for class
    function.  Comparison of nls() fits, e.g., may now need
    all.equal(m1, m2, check.environment = FALSE).
  * .libPaths() gets a new option include.site, allowing to _not_
    include the site library.  (Thanks to Dario Strbenac's suggestion
    and Gabe Becker's PR#18016.)
  * Lithuanian translations are now available.  (Thanks to Rimantas
    Zakauskas.)
  * names() now works for DOTSXP objects.  On the other hand, in
    R-lang, the R language manual, we now warn against relying on the
    structure or even existence of such dot-dot-dot objects.
  * all.equal() no longer gives an error on DOTSXP objects.
  * capabilities("cairo") now applies only to the file-based devices
    as it is now possible (if very unusual) to build R with Cairo
    support for those but not for X11().
  * There is optional support for tracing the progress of
    loadNamespace() - see its help.
  * (Not Windows.)  l10n_info() reports an additional element, the
    name of the encoding as reported by the OS (which may differ from
    the encoding part (if any) of the result from
    Sys.getlocale("LC_CTYPE").
  * New function gregexec() which generalizes regexec() to find _all_
    disjoint matches and well as all substrings corresponding to
    parenthesized subexpressions of the given regular expression.
    (Contributed by Brodie Gaslam.)
  * New function charClass() in package utils to query the
    wide-character classification functions in use (such as
    iswprint).
  * The names of quantile()'s result no longer depend on the global
    getOption("digits"), but quantile() gets a new optional argument
    digits = 7 instead.
  * grep(), sub(), regexp and variants work considerably faster for
    long factors with few levels.  (Thanks to Michael Chirico's
    PR#18063.)
  * Provide grouping of x11() graphics windows within a window
    manager such as Gnome or Unity; thanks to a patch by Ivan Krylov
    posted to R-devel.
  * The split() method for class data.frame now allows the f argument
    to be specified as a formula.
  * sprintf now warns on arguments unused by the format string.
  * New palettes "Rocket" and "Mako" for hcl.colors() (approximating
    palettes of the same name from the 'viridisLite' package).
    Contributed by Achim Zeileis.
  * The base environment and its namespace are now locked (so one can
    no longer add bindings to these or remove from these).
  * Rterm handling of multi-byte characters has been improved,
    allowing use of such characters when supported by the current
    locale.
  * Rterm now accepts ALT+ +xxxxxxxx sequences to enter Unicode
    characters as hex digits.
  * Environment variable LC_ALL on Windows now takes precedence over
    LC_CTYPE and variables for other supported categories, matching
    the POSIX behaviour.
  * duplicated() and anyDuplicated() are now optimized for integer
    and real vectors that are known to be sorted via the ALTREP
    framework. Contributed by Gabriel Becker via PR#17993.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 14
    and so packages that provide graphics devices should be
    reinstalled.
  * Graphics devices should now specify deviceVersion to indicate
    what version of the graphics engine they support.
  * Graphics devices can now specify deviceClip.  If TRUE, the
    graphics engine will never perform any clipping of output itself.
    The clipping that the graphics engine does perform (for both
    canClip = TRUE and canClip = FALSE) has been improved to avoid
    producing unnecessary artifacts in clipped output.
  * The grid package now allows gpar(fill) to be a linearGradient(),
    a radialGradient(), or a pattern().  The viewport(clip) can now
    also be a grob, which defines a clipping path, and there is a new
    viewport(mask) that can also be a grob, which defines a mask.
    These new features are only supported so far on the Cairo-based
    graphics devices and on the pdf() device.
  * (Not Windows.)  A warning is given when a Cairo-based type is
    specified for a png(), jpeg(), tiff() or bmp() device but Cairo
    is unsupported (so type = "Xlib" is tried instead).
  * grSoftVersion() now reports the versions of FreeType and
    FontConfig if they are used directly (not _via_ Pango), as is
    most commonly done on macOS.
  C-LEVEL FACILITIES:
  * The _standalone_ libRmath math library and R's C API now provide
    log1pexp() again as documented, and gain log1mexp().
  INSTALLATION on a UNIX-ALIKE:
  * configure checks for a program pkgconf if program pkg-config is
    not found.  These are now only looked for on the path (like
    almost all other programs) so if needed specify a full path to
    the command in PKG_CONFIG, for example in file config.site.
  * C99 function iswblank is required - it was last seen missing ca
    2003 so the workaround has been removed.
  * There are new configure options --with-internal-iswxxxxx,
  - -with-internal-towlower and --with-internal-wcwidth which allows
    the system functions for wide-character classification,
    case-switching and width (wcwidth and wcswidth) to be replaced by
    internal ones.  The first has long been used on macOS, AIX (and
    Windows) but this enables it to be unselected there and selected
    for other platforms (it is the new default on Solaris).  The
    second is new in this version of R and is selected by default on
    macOS and Solaris.  The third has long been the default and
    remains so as it contains customizations for East Asian
    languages.
    System versions of these functions are often minimally
    implemented (sometimes only for ASCII characters) and may not
    cover the full range of Unicode points: for example Solaris (and
    Windows) only cover the Basic Multilingual Plane.
  * Cairo installations without X11 are more likely to be detected by
    configure, when the file-based Cairo graphics devices will be
    available but not X11(type = "cairo").
  * There is a new configure option --with-static-cairo which is the
    default on macOS.  This should be used when only static cairo
    (and where relevant, Pango) libraries are available.
  * Cairo-based graphics devices on platforms without Pango but with
    FreeType/FontConfig will make use of the latter for font
    selection.
  LINK-TIME OPTIMIZATION on a UNIX-ALIKE:
  * Configuring with flag --enable-lto=R now also uses LTO when
    installing the recommended packages.
  * R CMD INSTALL and R CMD SHLIB have a new flag --use-LTO to use
    LTO when compiling code, for use with R configured with
  - -enable-lto=R.  For R configured with --enable-lto, they have
    the new flag --no-use-LTO.
    Packages can opt in or out of LTO compilation _via_ a UseLTO
    field in the DESCRIPTION file.  (As usual this can be overridden
    by the command-line flags.)
  BUILDING R on Windows:
  * for GCC &gt;= 8, FC_LEN_T is defined in config.h and hence character
    lengths are passed from C to Fortran in _inter alia_ BLAS and
    LAPACK calls.
  * There is a new text file src/gnuwin32/README.compilation, which
    outlines how C/Fortran code compilation is organized and
    documents new features:
  * R can be built with Link-Time Optimization with a suitable
    compiler - doing so with GCC 9.2 showed several
    inconsistencies which have been corrected.
  * There is support for cross-compiling the C and Fortran code
    in R and standard packages on suitable (Linux) platforms.
    This is mainly intended to allow developers to test later
    versions of compilers - for example using GCC 9.2 or 10.x has
    detected issues that GCC 8.3 in Rtools40 does not.
  * There is experimental support for cross-building R packages
    with C, C++ and/or Fortran code.
  * The R installer can now be optionally built to support a single
    architecture (only 64-bit or only 32-bit).
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++14 where
    available (which it is on all currently checked platforms): if
    not (as before) C++11 is used if available otherwise C++ is not
    supported.
    Packages which specify C++11 will still be installed using C++11.
    C++14 compilers may give deprecation warnings, most often for
    std::random_shuffle (deprecated in C++14 and removed in C++17).
    Either specify C++11 (see 'Writing R Extensions') or modernize
    the code and if needed specify C++14.  The latter has been
    supported since R 3.4.0 so the package's DESCRIPTION would need
    to include something like
    Depends: R (&gt;= 3.4)
  PACKAGE INSTALLATION on Windows:
  * R CMD INSTALL and R CMD SHLIB make use of their flag --use-LTO
    when the LTO_OPT make macro is set in file etc/${R_ARCH}/Makeconf
    or in a personal/site Makevars file.  (For details see 'Writing R
    Extensions' SS4.5.)
    This provides a valuable check on code consistency.  It does work
    with GCC 8.3 as in Rtools40, but that does not detect everything
    the CRAN checks with current GCC do.
  PACKAGE INSTALLATION on macOS:
  * The default personal library directory on builds with
  - -enable-aqua (including CRAN builds) now differs by CPU type,
    one of
    ~/Library/R/x86_64/x.y/library
    ~/Library/R/arm64/x.y/library
    This uses the CPU type R (and hence the packages) were built for,
    so when a x86_64 build of R is run under Rosetta emulation on an
    arm64 Mac, the first is used.
  UTILITIES:
  * R CMD check can now scan package functions for bogus return
    statements, which were possibly intended as return() calls (wish
    of PR#17180, patch by Sebastian Meyer). This check can be
    activated via the new environment variable
    _R_CHECK_BOGUS_RETURN_, true for --as-cran.
  * R CMD build omits tarballs and binaries of previous builds from
    the top-level package directory.  (PR#17828, patch by Sebastian
    Meyer.)
  * R CMD check now runs sanity checks on the use of LazyData, for
    example that a data directory is present and that
    LazyDataCompression is not specified without LazyData and has a
    documented value.  For packages with large LazyData databases
    without specifying LazyDataCompression, there is a reference to
    the code given in 'Writing R Extensions' SS1.1.6 to test the
    choice of compression (as in all the CRAN packages tested a
    non-default method was preferred).
  * R CMD build removes LazyData and LazyDataCompression fields from
    the DESCRIPTION file of packages without a data directory.
  ENCODING-RELATED CHANGES:
  * The parser now treats \Unnnnnnnn escapes larger than the upper
    limit for Unicode points (\U10FFFF) as an error as they cannot be
    represented by valid UTF-8.
    Where such escapes are used for outputting non-printable
    (including unassigned) characters, 6 hex digits are used (rather
    than 8 with leading zeros).  For clarity, braces are used, for
    example \U{0effff}.
  * The parser now looks for non-ASCII spaces on Solaris (as
    previously on most other OSes).
  * There are warnings (including from the parser) on the use of
    unpaired surrogate Unicode points such as \uD834.  (These cannot
    be converted to valid UTF-8.)
  * Functions nchar(), tolower(), toupper() and chartr() and those
    using regular expressions have more support for inputs with a
    marked Latin-1 encoding.
  * The character-classification functions used (by default) to
    replace the system iswxxxxx functions on Windows, macOS and AIX
    have been updated to Unicode 13.0.0.
    The character-width tables have been updated to include new
    assignments in Unicode 13.0.0.
  * The code for evaluating default (extended) regular expressions
    now uses the same character-classification functions as the rest
    of R (previously they differed on Windows, macOS and AIX).
  * There is a build-time option to replace the system's
    wide-character wctrans C function by tables shipped with R: use
    configure option --with-internal-towlower or (on Windows)
  - DUSE_RI18N_CASE in CFLAGS when building R.  This may be needed
    to allow tolower() and toupper() to work with Unicode characters
    beyond the Basic Multilingual Plane where not supported by system
    functions (e.g. on Solaris where it is the new default).
  * R is more careful when truncating UTF-8 and other multi-byte
    strings that are too long to be printed, passed to the system or
    libraries or placed into an internal buffer.  Truncation will no
    longer produce incomplete multibyte characters.
  DEPRECATED AND DEFUNCT:
  * Function plclust() from the package stats and
    package.dependencies(), pkgDepends(), getDepList(),
    installFoundDepends(), and vignetteDepends() from package tools
    are defunct.
  * Defunct functions checkNEWS() and readNEWS() from package tools
    and CRAN.packages() from utils have been removed.
  * R CMD config CXXCPP is defunct (it was deprecated in R 3.6.2).
  * parallel::detectCores() drops support for Irix (retired in 2013).
  * The LINPACK argument to chol.default(), chol2inv(),
    solve.default() and svd() has been defunct since R 3.1.0.  It was
    silently ignored up to R 4.0.3 but now gives an error.
  * Subsetting/indexing, such as ddd[*] or ddd$x on a DOTSXP
    (dot-dot-dot) object ddd has been disabled; it worked by accident
    only and was undocumented.
  BUG FIXES:
  * Many more C-level allocations (mainly by malloc and strdup) are
    checked for success with suitable alternative actions.
  * Bug fix for replayPlot(); this was turning off graphics engine
    display list recording if a recorded plot was replayed in the
    same session.  The impact of the bug became visible if resize the
    device after replay OR if attempted another savePlot() after
    replay (empty display list means empty screen on resize or empty
    saved plot).
  * R CMD check etc now warn when a package exports non-existing S4
    classes or methods, also in case of no "methods" presence.
    (Reported by Alex Bertram; reproducible example and patch by
    Sebastian Meyer in PR#16662.)
  * boxplot() now also accepts calls for labels such as ylab, the
    same as plot().  (Reported by Marius Hofert.)
  * The help page for xtabs() now correctly states that addNA is
    setting na.action = na.pass among others.  (Reported as PR#17770
    by Thomas Soeiro.)
  * The R CMD check &lt;pkg&gt; gives a longer and more comprehensible
    message when DESCRIPTION misses dependencies, e.g., in Imports:.
    (Thanks to the contributors of PR#17179.)
  * update.default() now calls the generic update() on the formula to
    work correctly for models with extended formulas.  (As reported
    and suggested by Neal Fultz in PR#17865.)
  * The horizontal position of leaves in a dendrogram is now correct
    also with center = FALSE.  (PR#14938, patch from Sebastian
    Meyer.)
  * all.equal.POSIXt() no longer warns about and subsequently ignores
    inconsistent "tzone" attributes, but describes the difference in
    its return value (PR#17277).  This check can be disabled _via_
    the new argument check.tzone = FALSE as suggested by Sebastian
    Meyer.
  * as.POSIXct() now populates the "tzone" attribute from its tz
    argument when x is a logical vector consisting entirely of NA
    values.
  * x[[2^31]] &lt;- v now works.  (Thanks to the report and patch by
    Suharto Anggono in PR#17330.)
  * In log-scale graphics, axis() ticks and label positions are now
    computed more carefully and symmetrically in their range,
    typically providing _more_ ticks, fulfilling wishes in PR#17936.
    The change really corresponds to an improved axisTicks() (package
    grDevices), potentially influencing grid and lattice, for
    example.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now correct to at
    least five digits where it was catastrophically wrong,
    previously.
  * sum(df) and similar "Summary"- and "Math"-group member functions
    now work for data frames df with logical columns, notably also of
    zero rows.  (Reported to R-devel by Martin "b706".)
  * unsplit() had trouble with tibbles due to unsound use of rep(NA,
    len)-indexing, which should use NA_integer_ (Reported to R-devel
    by Mario Annau.)
  * pnorm(x, log.p = TRUE) underflows to -Inf slightly later.
  * show(&lt;hidden S4 generic&gt;) prints better and without quotes for
    non-hidden S4 generics.
  * read.table() and relatives treated an "NA" column name as missing
    when check.names = FALSE PR#18007.
  * Parsing strings containing UTF-16 surrogate pairs such as
    "\uD834\uDD1E" works better on some (uncommon) platforms.
    sprintf("%X", utf8ToInt("\uD834\uDD1E")) should now give "1D11E"
    on all platforms.
  * identical(x,y) is no longer true for differing DOTSXP objects,
    fixing PR#18032.
  * str() now works correctly for DOTSXP and related exotics, even
    when these are doomed.
    Additionally, it no longer fails for lists with a class and
    "irregular" method definitions such that e.g. lapply(*) will
    necessarily fail, as currently for different igraph objects.
  * Too long lines in environment files (e.g. Renviron) no longer
    crash R. This limit has been increased to 100,000 bytes.
    (PR#18001.)
  * There is a further workaround for FreeType giving incorrect
    italic font faces with cairo-based graphics devices on macOS.
  * add_datalist(*, force = TRUE) (from package tools) now actually
    updates an existing data/datalist file for new content.  (Thanks
    to a report and patch by Sebastian Meyer in PR#18048.)
  * cut.Date() and cut.POSIXt() could produce an empty last interval
    for breaks = "months" or breaks = "years".  (Reported as PR#18053
    by Christopher Carbone.)
  * Detection of the encoding of 'regular' macOS locales such as
    en_US (which is UTF-8) had been broken by a macOS change:
    fortunately these are now rarely used with en_US.UTF-8 being
    preferred.
  * sub() and gsub(pattern, repl, x, *) now keep attributes of x such
    as names() also when pattern is NA (PR#18079).
  * Time differences ("difftime" objects) get a replacement and a
    rep() method to keep "units" consistent.  (Thanks to a report and
    patch by Nicolas Bennett in PR#18066.)
  * The \RdOpts macro, setting defaults for \Sexpr options in an Rd
    file, had been ineffective since R 2.12.0: it now works again.
    (Thanks to a report and patch by Sebastian Meyer in PR#18073.)
  * mclapply and pvec no longer accidentally terminate parallel
    processes started before by mcparallel or related calls in
    package parallel (PR#18078).
  * grep and other functions for evaluating (extended) regular
    expressions handle in Unicode also strings not explicitly flagged
    UTF-8, but flagged native when running in UTF-8 locale.
  * Fixed a crash in fifo implementation on Windows (PR#18031).
  * Binary mode in fifo on Windows is now properly detected from
    argument open (PR#15600, PR#18031).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1622808000">- The line %{__install} -m 755 -d %{_infodir}
  no longer works in TW or Factory.
  But without that line it works everywhere. So this instruction
  was commented out of the spec file.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1628596800">- CHANGES IN R 4.1.1:
  NEW FEATURES:
  * require(pkg, quietly = TRUE) is quieter and in particular does
    not warn if the package is not found.
  DEPRECATED AND DEFUNCT:
  * Use of ftp:// URIs should be regarded as deprecated, with
    on-going support confined to method = "libcurl" and not routinely
    tested.  (Nowadays no major browser supports them.)
  * The non-default method = "internal" is deprecated for http:// and
    ftp:// URIs for both download.file and url.
  * On Windows, method = "wininet" is deprecated for http://,
    https:// and ftp:// URIs for both download.file and url.  (A
    warning is only given for ftp://.)
    For ftp:// URIs the default method is now "libcurl" if available
    (which it is on CRAN builds).
    method = "wininet" remains the default for http:// and https://
    URIs but if libcurl is available, using method = "libcurl" is
    preferred.
  INSTALLATION:
  * make check now works also without a LaTeX installation.  (Thanks
    to Sebastian Meyer's PR#18103.)
  BUG FIXES:
  * make check-devel works again in an R build configured with
  - -without-recommended-packages.
  * qnbinom(p, size, mu) for large size/mu is correct now in a range
    of cases (PR#18095); similarly for the (size, prob)
    parametrization of the negative binomial.  Also qpois() and
    qbinom() are better and or faster for extreme cases.  The
    underlying C code has been modularized and is common to all four
    cases of discrete distributions.
  * gap.axis is now part of the axis() arguments which are passed
    from bxp(), and hence boxplot().  (Thanks to Martin Smith's
    report and suggestions in PR#18109.)
  * .First and .Last can again be set from the site profile.
  * seq.int(from, to, *) and seq.default(..) now work better in large
    range cases where from-to is infinite where the two boundaries
    are finite.
  * all.equal(x,y) now returns TRUE correctly also when several
    entries of abs(x) and abs(y) are close to .Machine$double.xmax,
    the largest finite numeric.
  * model.frame() now clears the object bit when removing the class
    attribute of a value via na.action (PR#18100).
  * charClass() now works with multi-character strings on Windows
    (PR#18104, fixed by Bill Dunlap).
  * encodeString() on Solaris now works again in Latin-1 encoding on
    characters represented differently in UTF-8.  Support for
    surrogate pairs on Solaris has been improved.
  * file.show() on Windows now works with non-ASCII path names
    representable in the current native encoding (PR#18132).
  * Embedded R on Windows can now find R home directory via the
    registry even when installed only for the current user
    (PR#18135).
  * pretty(x) with finite x now returns finite values also in the
    case where the extreme x values are close in size to the maximal
    representable number .Machine$double.xmax.
    Also, it's been tweaked for very small ranges and when a boundary
    is close (or equal) to zero; e.g., pretty(c(0,1e-317)) no longer
    has negative numbers, currently still warning about a very small
    range, and pretty(2^-(1024 - 2^-1/(c(24,10)))) is more accurate.
  * The error message for not finding vignette files when weaving has
    correct file sizes now. (Thanks to Sebastian Meyer's PR#18154.)
  * dnbinom(20, &lt;large&gt;, 1) now correctly gives 0, and similar cases
    are more accurate with underflow precaution.  (Reported by Francisco Vera Alcivar in PR#18072.)</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635163200">- repaired https://bugzilla.suse.com/show_bug.cgi?id=1191380
  (rpmacros now go to rpmmacrodir)
- minor clean-ups in spec file</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635768000">- CHANGES IN R 4.1.2:
  C-LEVEL FACILITIES:
  * The workaround in headers R.h and Rmath.h (using namespace std;)
    for the Oracle Developer Studio compiler is no longer needed now
    C++11 is required so has been removed.  A couple more usages of
    log() (which should have been std::log()) with an int argument
    are reported on Solaris.
  * The undocumented limit of 4095 bytes on messages from the
    S-compatibility macros PROBLEM and MESSAGE is now documented and
    longer messages will be silently truncated rather than
    potentially causing segfaults.
  * If the R_NO_SEGV_HANDLER environment variable is non-empty, the
    signal handler for SEGV/ILL/BUS signals (which offers recovery
    user interface) is not set. This allows more reliable debugging
    of crashes that involve the console.
  DEPRECATED AND DEFUNCT:
  * The legacy S-compatibility macros PROBLEM, MESSAGE, ERROR, WARN,
    WARNING, RECOVER, ... are deprecated and will be hidden in R
    4.2.0. R's native interface of Rf_error and Rf_warning has long
    been preferred.
  BUG FIXES:
  * .mapply(F, dots, .) no longer segfaults when dots is not a list
    and uses match.fun(F) as always documented; reported by Andrew
    Simmons in PR#18164.
  * hist(&lt;Date&gt;, ...) and hist(&lt;POSIXt&gt;, ...)  no longer pass
    arguments for rect() (such as col and density) to axis().
    (Thanks to Sebastian Meyer's PR#18171.)
  * \Sexpr{ch} now preserves Encoding(ch). (Thanks to report and
    patch by Jeroen Ooms in PR#18152.)
  * Setting the RNG to "Marsaglia-Multicarry" e.g., by RNGkind(), now
    warns in more places, thanks to Andr'e Gillibert's report and
    patch in PR#18168.
  * gray(numeric(), alpha=1/2) no longer segfaults, fixing PR#18183,
    reported by Till Krenz.
  * Fixed dnbinom(x, size=&lt;very_small&gt;, .., log=TRUE) regression,
    reported by Martin Morgan.
  * as.Date.POSIXlt(x) now keeps names(x), thanks to Davis Vaughan's
    report and patch in PR#18188.
  * model.response() now strips an "AsIs" class typically, thanks to
    Duncan Murdoch's report and other discussants in PR#18190.
  * try() is considerably faster in case of an error and long call,
    as e.g., from some do.call().  Thanks to Alexander Kaever's
    suggestion posted to R-devel.
  * qqline(y = &lt;object&gt;) such as y=I(.), now works, see also
    PR#18190.
  * Non-integer mgp par() settings are now handled correctly in
    axis() and mtext(), thanks to Mikael Jagan and Duncan Murdoch's
    report and suggestion in PR#18194.
  * formatC(x) returns length zero character() now, rather than ""
    when x is of length zero, as documented, thanks to Davis
    Vaughan's post to R-devel.
  * removeSource(fn) now retains (other) attributes(fn).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1647000000">- CHANGES IN R 4.1.3:
  NEW FEATURES:
  * The default version of Bioconductor has been changed to 3.14.
    (This is used by setRepositories and the menus in GUIs.)
  UTILITIES:
  * R CMD check --as-cran has a workaround for a bug in versions of
    file up to at least 5.41 which mis-identify DBF files last
    changed in 2022 as executables.
  C-LEVEL FACILITIES:
  * The legacy S-compatibility macros SINGLE_* in R_ext/Constants.h
    (included by R.h) are deprecated and will be removed in R 4.2.0.
  BUG FIXES:
  * Initialization of self-starting nls() models with initialization
    functions following the pre-R-4.1.0 API (without the ...
    argument) works again for now, with a deprecation warning.
  * Fixed quoting of ~autodetect~ in Java setting defaults to avoid
    inadvertent user lookup due to leading ~, reported in PR#18231 by
    Harold Gutch.
  * substr(., start, stop) &lt;- v now treats _negative_ stop values
    correctly.  Reported with a patch in PR#18228 by Brodie Gaslam.
  * Subscripting an array x without dimnames by a
    length(dim(x))-column character matrix gave "random" non-sense,
    now an error; reported in PR#18244 by Mikael Jagan.
  * ...names() now matches names(list(...)) closely, fixing PR#18247.
  * all.equal(*, scale = s) now works as intended when length(s) &gt; 1,
    partly thanks to Michael Chirico's PR#18272.
  * print(x) for long vectors x now also works for named atomic
    vectors or lists and prints the correct number when reaching the
    getOption("max.print") limit; partly thanks to a report and
    proposal by Hugh Parsonage to the R-devel list.
  * all.equal(&lt;selfStart&gt;, *) no longer signals a deprecation
    warning.
  * reformulate(*, response=r) gives a helpful error message now when
    length(r) &gt; 1, thanks to Bill Dunlap's PR#18281.
  * Modifying globalCallingHandlers inside withCallingHandlers() now
    works or fails correctly, thanks to Henrik Bengtsson's PR#18257.
  * hist(&lt;Date&gt;, breaks = "days") and hist(&lt;POSIXt&gt;, breaks = "secs")
    no longer fail for inputs of length 1.
  * qbeta(.001, .9, .009) and similar cases now converge correctly
    thanks to Ben Bolker's report in PR#17746.
  * window(x, start, end) no longer wrongly signals "'start' cannot
    be after 'end'", fixing PR#17527 and PR#18291.
  * data() now checks that its (rarely used) list argument is a
    character vector - a couple of packages passed other types and
    gave incorrect results.
  * which() now checks its arr.ind argument is TRUE rather coercing
    to logical and taking the first element - which gave incorrect
    results in package code.
  * model.weights() and model.offset() more carefully extract their
    model components, thanks to Ben Bolker and Tim Taylor's R-devel
    post.
  * list.files(recursive = TRUE) now shows all broken symlinks
    (previously, some of them may have been omitted, PR#18296).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1650628800">- CHANGES IN R 4.2.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * The formula method of aggregate() now matches the generic in
    naming its first argument x (resolving PR#18299 by Thomas
    Soeiro).
    This means that calling aggregate() with a formula as a named
    first argument requires name formula in earlier versions of R and
    name x now, so portable code should not name the argument (code
    in many packages did).
  * Calling &amp;&amp; or || with either argument of length greater than one
    now gives a warning (which it is intended will become an error).
  * Calling if() or while() with a condition of length greater than
    one gives an error rather than a warning.  Consequently,
    environment variable _R_CHECK_LENGTH_1_CONDITION_ no longer has
    any effect.
  * Windows users should consult the WINDOWS section below for some
    profound changes including
  * Support for 32-bit builds has been dropped.
  * UTF-8 locales are used where available.
  * The default locations for the R installation and personal
    library folder have been changed.
    Thanks to Tomas Kalibera for months of work on the Windows port
    for this release.
  NEW FEATURES:
  * matrix(x, n, m) now warns in more cases where length(x) differs
    from n * m, as suggested by Abby Spurdle and Wolfgang Huber in
    Feb 2021 on the R-devel mailing list.
    This warning can be turned into an error by setting environment
    variable _R_CHECK_MATRIX_DATA_ to TRUE: R CMD check --as-cran
    does so unless it is already set.
  * Function file_test() in package utils gains tests for symlinks,
    readability and writability.
  * capabilities("libxml") is now false.
    The description of capabilities("http/ftp") now reflects that it
    refers to the default method, no longer the internal one.
  * simplify2array() gains an except argument for controlling the
    exceptions used by sapply().
  * Environment variables R_LIBS_USER and R_LIBS_SITE are both now
    set to the R system default if unset or empty, and can be set to
    NULL to indicate an empty list of user or site library
    directories.
  * The warning for axis()(-like) calls in cases of relatively small
    ranges (typically in log-scale situations) is slightly improved
    _and_ suppressed from explicit calls to .axisPars() as has always
    been the intention.
  * The contrasts setter function `contrasts&lt;-` gains an explicit
    default how.many = NULL rather than just using missing(how.many).
  * grid.pretty() gains a new optional argument n = 5.
  * There is a new function .pretty() with option bounds as a
    technical-utility version of pretty().  It and pretty() gain a
    new argument f.min with a better than back-compatible default.
  * Function grDevices::axisTicks() and related functions such as
    graphics::axis() work better, notably for the log scale; partly
    because of the pretty() improvements, but also because care is
    taken e.g., when ylim is finite but diff(ylim) is infinite.
  * nclass.FD() gains a digits option.
  * The R Mathlib internal C function bd0() (called indirectly from a
    dozen probability density and distribution functions such as
    dpois(), dbinom(), dgamma(), pgamma() _etc_) has been
    complemented by a more sophisticated and (mostly) more accurate C
    function ebd0(), currently called only by internal dpois_raw()
    improving accuracy for R level dpois() and potentially others
    calling it such as dnbinom(), dgamma() or pgamma().  (Thanks to
    Morten Welinder's PR#15628.)
  * write.ftable() gains sep = " " argument as suggested by Thomas
    Soeiro.
  * The names of the locale categories supported by R's
    Sys.getlocale() and Sys.setlocale() are now provided by variable
    .LC.categories in the base namespace.
  * The Date and POSIXt methods for hist() and the histogram method
    for plot() now also use the new default col = "lightgray" in
    consistency with the corresponding change to hist()'s default for
    R 4.0.0.
  * hist.default() gains new fuzz argument, and the histogram plot
    method no longer uses fractional axis ticks when displaying
    counts ("Frequency").
  * mapply() and hence Map() now also obey the "max-or-0-if-any"
    recycling rule, such that, e.g., Map(`+`, 1:3, 1[0]) is valid
    now.
  * as.character(&lt;obj&gt;) for "hexmode" or "octmode" objects now
    fulfils the important basic rule as.character(x)[j] ===
    as.character(x[j]).
  * The set utility functions, notably intersect() have been tweaked
    to be more consistent and symmetric in their two set arguments,
    also preserving a common mode.
  * substr(ch, start,end) &lt;- new now e.g., preserves names(ch); ditto
    for substring(), thanks to a patch from Brodie Gaslam.
  * plot(&lt;lm&gt;) gains a extend.ylim.f argument, in partial response to
    PR#15285; further PR#17784 is fixed thanks to several
    contributors and a patch by Elin Waring.  The Cook's dist
    contours get customizable via cook.col and cook.lty with a
    different default color and their legend is nicer by default and
    customizable via cook.legendChanges.
  * Attempting to subset an object that is not subsettable now
    signals an error of class notSubsettableError. The
    non-subsettable object is contained in the object field of the
    error condition.
  * Subscript-out-of-bounds errors are now signaled as errors of
    class subscriptOutOfBoundsError.
  * Stack-overflow errors are now signaled as errors inheriting from
    class stackOverflowError. See ?stackOverflowError for more
    details.
  * New partly experimental Sys.setLanguage() utility, solving the
    main problem of PR#18055.
  * gettext() and gettextf() get a new option trim = TRUE which when
    set to false allows translations for strings such as "Execution
    halted\n" typical for C code.
  * An experimental implementation of hash tables is now available.
    See ?hashtab for more details.
  * identical() gains a extptr.as.ref argument for requesting that
    external pointer objects be compared as reference objects.
  * reorder() gets an argument decreasing which it passes to sort()
    for level creation; based on the wish and patch by Thomas Soeiro
    in PR#18243.
  * as.vector() gains a data.frame method which returns a simple
    named list, also clearing a long standing 'FIXME' to enable
    as.vector(&lt;data.frame&gt;, mode="list").  This breaks code relying
    on as.vector(&lt;data.frame&gt;) to return the unchanged data frame.
  * legend() is now vectorized for arguments cex, x.intersp, and
    text.width.  The latter can now also be specified as a vector
    (one element for each column of the legend) or as NA for
    computing a proper column wise maximum value of strwidth(legend).
    The argument y.intersp can be specified as a vector with one
    entry for each row of the legend.
    legend() also gains new arguments title.cex and title.font.
    Thanks to Swetlana Herbrandt.
  * Deparsing no longer remaps attribute names dim, dimnames, levels,
    names and tsp to historical S-compatible names (which structure()
    maps back).
  * sample() and sample.int() have additional sanity checks on their
    size and n arguments.
    all.equal.numeric() gains a sanity check on its tolerance
    argument - calling all.equal(a, b, c) for three numeric vectors
    is a surprisingly common error.
    mean(na.rm =), rank(na.last =), barplot(legend.text =),
    boxplot(), contour(drawlabels =), polygon(border =) and
    methods::is(class2 =) have more robust sanity checks on their
    arguments.
    R CMD Rd2pdf (used by R CMD check) has a more robust sanity check
    on the format of \alias{} commands.
  * psigamma(x, deriv) for negative x now also works for deriv = 4
    and 5; their underlying C level dpsifn() is documented in
    'Writing R Extensions'.
  * The HTML help system now uses HTML5 (wish of PR#18149).
  * ks.test() now provides exact p-values also with ties and MC
    p-values in the two-sample (Smirnov) case.  By Torsten Hothorn.
  * ks.test() gains a formula interface, with y ~ 1 for the
    one-sample (Kolmogorov) test and y ~ group for the two-sample
    (Smirnov) test.  Contributed by Torsten Hothorn.
  * The return value from ks.test() now has class c("ks.test",
    "htest") - packages using try() need to take care to use
    inherits() and not == on the class.
  * New functions psmirnov(), qsmirnov() and rsmirnov() in package
    stats implementing the asymptotic and exact distributions of the
    two-sample Smirnov statistic.
  * iconv() now allows sub = "c99" to use C99-style escapes for UTF-8
    inputs which cannot be converted to encoding to.
  * In a forward pipe |&gt; expression it is now possible to use a named
    argument with the placeholder _ in the rhs call to specify where
    the lhs is to be inserted.  The placeholder can only appear once
    on the rhs.
  * The included LAPACK sources have been updated to version 3.10.0,
    except for the four Fortran 77 routines which 3.10.0 has
    re-implemented in Fortran 90 (where the older versions have been
    retained as the R build process does not support Fortran 90).
  * path.expand() and most other uses of tilde expansion now warn if
    a path would be too long if expanded.  (An exception is
    file.exists(), which silently returns false.)
  * trunc(&lt;Date&gt;, *) now supports units = "months" or "years" for
    consistency with the POSIXt method, thanks to Dirk Eddelbuettel's
    proposal in PR#18099.
  * list2DF() now checks that its arguments are of the same length,
    rather than use recycling.
  * The HTML help system has several new features: LaTeX-like math
    can be typeset using either KaTeX or MathJax, usage and example
    code is highlighted using Prism, and for dynamic help the output
    of examples and demos can be shown within the browser if the
    knitr package is installed. These features can be disabled by
    setting the environment variable _R_HELP_ENABLE_ENHANCED_HTML_ to
    a false value.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 15
    and so packages that provide graphics devices should be
    reinstalled.
  * The grid package now allows the user to specify a "vector" of
    pattern fills.  The fill argument to gpar() accepts a list of
    gradients and/or patterns and the functions linearGradient(),
    radialGradient(), and pattern() have a new group argument.
    Points grobs (data symbols) can now also have a pattern fill.
    The grobCoords() function now returns a more informative and
    complex result.
  * The grid package has new functions for drawing isolated groups:
    grid.group(), grid.define(), and grid.use().  These functions add
    compositing operators and affine transformations to R's graphics
    capabilities.
    The grid package also has new functions for stroking and filling
    paths: grid.stroke(), grid.fill(), and grid.fillStroke().
    A new function as.path() allows the user to specify the fill rule
    for a path that is to be used for clipping, stroking, or filling;
    available options are "winding" and "evenodd".  A new function
    as.mask() allows the user to specify the type of a mask;
    available options are "alpha" and "luminance".
    These new features are only supported so far (at most) on the
    Cairo-based graphics devices and on the pdf() device.
  * dev.capabilities() reports on device support for the new
    features.
  * par() now warns about unnamed non-character arguments to prevent
    misuse such as {usr &lt;- par("usr"); par(usr)}.
  INSTALLATION:
  * Facilities for accessing ftp:// sites are no longer tested
    (except _pro tem_ for curlGetHeaders()) as modern browsers have
    removed support.
  * R can now be built with DEFS = -DSTRICT_R_HEADERS .
  PACKAGE INSTALLATION:
  * R CMD INSTALL no longer tangles vignettes. This completes an R
    CMD build change in R 3.0.0 and affects packages built before R
    3.0.2. Such packages should be re-made with R CMD build to have
    the tangled R code of vignettes shipped with the tarball.
  * USE_FC_LEN_T will become the default: this uses the correct
    prototypes for Fortran BLAS/LAPACK routines called from C/C++,
    and requires adjustment of most such calls - see 'Writing R
    Extensions' SS6.6.2.  (This has been supported since R 3.6.2.)
  * Package installation speed for packages installed with
    keep.source has been improved. This resolve the issue reported by
    Ofek Shilon in PR#18236.
  UTILITIES:
  * R CMD check can optionally report files/directories left behind
    in home, /tmp (even though TMPDIR is set) and other directories.
    See the "R Internals" manual for details.
  * R CMD check now reports byte-compilation errors during
    installation.  These are not usually fatal but may result in
    parts of the package not being byte-compiled.
  * _R_CHECK_DEPENDS_ONLY_ can be applied selectively to examples,
    tests and/or vignettes in R CMD check: see the "R Internals"
    manual.
  * _R_CHECK_SRC_MINUS_W_IMPLICIT_ now defaults to true: recent
    versions of Apple clang on macOS have made implicit function
    declarations in C into a compilation error.
  * R CMD check --as-cran makes use of the environment variable
    AUTORECONF.  See the "R Internals" manual SS8 for further details.
  * R CMD check --use-valgrind also uses valgrind when re-building
    vignettes as some non-Sweave vignettes unhelpfully comment out
    all their code when R CMD check runs vignettes.
  * Errors in re-building vignettes (unless there are LaTeX errors)
    are reported by R CMD check as ERROR rather than WARNING when
    running vignettes has been skipped (as it frequently is in CRAN
    checks and by --as-cran).
  * R CMD Rd2pdf gains a --quiet option that is used by R CMD build
    when building the PDF package manual.
  * R CMD Rd2pdf now always runs LaTeX in batch mode, consistent with
    Texinfo &gt;= 6.7. The --batch option is ignored.
  * R CMD build and R CMD check now include the Rd file name and line
    numbers in the error message of an \Sexpr evaluation failure.
  * For packages using the \doi Rd macro (now an install-time \Sexpr)
    but no other dynamic Rd content, R CMD build now produces a
    smaller tarball and is considerably faster - skipping temporary
    package installation.
  C-LEVEL FACILITIES:
  * The non-API header R_ext/R-ftp-http.h is no longer provided, as
    the entry points it covered are now all defunct.
  * A number of non-API declarations and macro definitions have been
    moved from the installed header Rinternals.h to the internal
    header Defn.h. Packages that only use entry points and
    definitions documented to be part of the API as specified in
    'Writing R Extensions' SS6 should not be affected.
  * The macro USE_RINTERNALS no longer has any effect when compiling
    package code.  Packages which also use R_NO_REMAP will need to
    ensure that the remapped names are used for calls to API
    functions that were formerly also made available as macros.
  * The deprecated legacy S-compatibility macros PROBLEM, MESSAGE,
    ERROR, WARN, WARNING, RECOVER, ... are no longer defined in
    R_exts/RS.h (included by R.h).  Replace these by calls to
    Rf_error and Rf_warning (defined in header R_ext/Error.h included
    by R.h).
    Header R_ext/RS.h no longer includes R_ext/Error.h.
  * Header R_ext/Constants.h (included by R.h) when included from C++
    now includes the C++ header cfloat rather than the C header
    float.h (now possible as C++11 is required).
  * The legacy S-compatibility macros DOUBLE_* in R_ext/Constants.h
    (included by R.h) are deprecated.
  * The deprecated S-compatibility macros SINGLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * R_Calloc, R_Free and R_Realloc are preferred to their unprefixed
    forms and error messages now use the prefix. These forms were
    introduced in R 3.4.0 and are available even when
    STRICT_R_HEADERS is defined.
  * rmultinom has been documented in 'Writing R Extensions' SS6 so is
    now part of the R API.
  * Similarly, Rtanpi, called from R level tanpi() is now part of the
    R API.
  * The long-deprecated, undocumented and non-API entry point call_R
    is no longer declared in R_ext/RS.h (included by R.h).
  * The header S.h which has been unsupported since Jan 2016 has been
    removed.  Use R.h instead.
  DEPRECATED AND DEFUNCT:
  * The (non-default and deprecated) method = "internal" for
    download.file() and url() no longer supports http:// nor ftp://
    URIs.  (It is used only for file:// URIs.)
    On Windows, download.file(method = "wininet") no longer supports
    ftp:// URIs.  (It is no longer the default method, which is
    "libcurl" and does.)
    On Windows, the deprecated method = "wininet" now gives a warning
    for http:// and https:// URIs for both download.file() and url().
    (It is no longer the default method.)
  * On Windows, the command-line option --max-mem-size and
    environment variable R_MAX_MEM_SIZE are defunct.  The memory
    allocation limit was important for 32-bit builds, but these are
    no longer supported.
  * default.stringsAsFactors() is now formally deprecated, where that
    was only mentioned on its regular help page, previously.  So it
    now gives a warning if called.
  * unix.time() is defunct now; it had been deprecated since R 3.4.0.
  BUG FIXES:
  * Setting digits = 0 in format(), print.default() (and hence
    typically print()) or options() is again invalid.  Its behaviour
    was platform-dependent, and it is unclear what "zero significant
    digits" should mean (PR#18098).
  * Messages from C code in the cairo section of package grDevices
    are now also offered for translation, thanks to Michael Chirico's
    PR#18123.
  * mean(x) with finite x now is finite also without "long.double"
    capability.
  * R CMD Rd2pdf no longer leaves an empty build directory behind
    when it aborts due to an already existing output file.  (Thanks
    to Sebastian Meyer's PR#18141.)
  * density(x, weights = w, na.rm = TRUE) when anyNA(x) is true, now
    removes weights "in parallel" to x, fixing PR#18151, reported by
    Matthias Gondan.  Additionally, it gets a subdensity option.
  * Conversion of \Sexpr[]{&lt;expR&gt;} to LaTeX or HTML no longer
    produces long blocks of empty lines when &lt;expR&gt; itself contains
    several lines all producing empty output.  Thanks to a report and
    patch by Ivan Krylov posted to R-devel.
  * R CMD build no longer fails if a package vignette uses child
    documents and inst/doc exists.  (Thanks to Sebastian Meyer's
    PR#18156.)
  * When an R documentation ('help' source) file man/foo.Rd in a
    package has \donttest{..} examples with a syntax error, it is now
    signalled as ERROR and with correct line numbers relating to the
  * -Ex.R file, thanks to Duncan Murdoch and Sebastian Meyer's
    reports and patch proposals in PR#17501.
  * Improved determination of the correct translation domain in
    non-base packages, addressing the combination of PR#18092 and
    PR#17998 (#c6) with reports and _augmented_ patch #2904 by
    Suharto Anggono.
    Note that "R-base" is no longer the default domain e.g., for
    top-level calls to gettext(); rather translation needs explicit
    domain = * specification in such cases.
  * identical(attrib.as.set=FALSE) now works correctly with data
    frames with default row names (Thanks to Charlie Gao's PR#18179).
  * txtProgressBar() now enforces a non-zero width for argument char,
    without which no progress can be visible.
  * dimnames(table(d)) is more consistent in the case where d is a
    list with a single component, thanks to Thomas Soeiro's report to
    R-devel.
    Further, table(d1, d2) now gives an error when d1 and d2 are data
    frames as suggested by Thomas in PR#18224.
  * Fix for drawing semi-transparent lines and fills on the native
    Windows graphics device (PR#18219 and PR#16694).  Thanks to Nick
    Ray for helpful diagnosis on Bugzilla.
  * The deparser now wraps sub-expressions such as if(A) ..  with
    parentheses when needed; thanks to Duncan Murdoch's PR#18232 and
    Lionel Henry's patches there.
  * remove.packages() no longer tries to uninstall Priority: base
    packages, thanks to a report and suggestions by Colin Fay in
    PR#18227.
  * win.metafile() now has xpinch and ypinch arguments so that the
    user can override Windows' (potentially wrong) guess at device
    dimensions.
  * x[i] and x[[i]] for non-integer i should now behave in all cases
    as always documented: the index used is equivalent to
    as.integer(i) unless that would overflow where trunc(i) is used
    instead; thanks to Suharto Anggono's report and patch proposals
    in PR#17977.
  * asOneSidedFormula() now associates the resulting formula with the
    global environment rather than the evaluation environment created
    for the call.
  * &lt;bibentry&gt;$name now matches the field name case-insensitively,
    consistent with bibentry() creation and the replacement method.
  * cbind() failed to detect some length mismatches with a mixture of
    time-series and non-time-series inputs.
  * The default LaTeX style file Sweave.sty used by the RweaveLatex
    driver no longer loads the obsolete ae package; thanks to a
    report by Thomas Soeiro in PR#18271.  Furthermore, it now skips
    \usepackage[T1]{fontenc} for engines other than pdfTeX (if
    detected) or if the new [nofontenc] option is used.
  * smooth.spline() now stores its logical cv argument more safely,
    fixing a rare bug when printing, and also stores n.
  * smooth.spline(x,y,*) now computes the cv.crit statistic
    correctly, also when is.unsorted(x), fixing PR#18294.
  * The data.frame method of rbind() now warns when binding
    not-wholly-recycling vectors, by analogy to the default method
    (for matrices).
  * setAs() finds the correct class for name to when multiple
    packages define a class with that name. Thanks to Gabor Csardi
    for the report.
  * Fix for detaching a package when two classes of the same name are
    present in method signatures for the same generic. Thanks to
    Gabor Csardi for the report.
  * match.arg("", c("", "a", "B")) gives a better error message, in
    part from PR#17959, thanks to Elin Waring.
  * R CMD Sweave --clean no longer removes pre-existing files or
    subdirectories (PR#18242).
  * The quartz() device no longer splits polylines into subpaths.
    That has caused narrowly-spaced lines with many points to always
    look solid even when dashed line type was used due to dash phase
    restarts.
  * Deparsing constructs such as quote(1 + `!`(2) + 3) works again as
    before R 3.5.0, thanks to the report and patch in PR#18284 by
    Suharto Anggono.
  * as.list(f) for a factor f now keeps names(f), fixing PR#18309.
  * qbeta(.001, .9, .009) and analogous qf() calls now return a
    correct value instead of NaN or wrongly 1, all with a warning;
    thanks to the report by Ludger Goeminne in PR#18302.
  * plot.lm() failed to produce the plot of residuals vs.  factor
    levels (i.e., which=5 when leverages are constant) for models
    with character predictors (PR#17840).
  * interaction.plot(..., xtick = TRUE) misplaced the x-axis line
    (PR#18305).
  * Not strictly fixing a bug, format()ing and print()ing of
    non-finite Date and POSIXt values NaN and +/-Inf no longer show
    as NA but the respective string, e.g., Inf, for consistency with
    numeric vector's behaviour, fulfilling the wish of PR#18308.
  * R CMD check no longer runs test scripts generated from
    corresponding .Rin files twice and now signals an ERROR if
    processing an .Rin script fails.
  * tools::Rd2txt() used for plain-text help pages now renders \hrefs
    (if tools::Rd2txt_options(showURLs = TRUE)) and \urls with
    percent-encoding and standards-compliant delimiting style (angle
    brackets and no URL: prefix).  \email is now rendered with a
    mailto: prefix.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1655985600">- CHANGES IN R 4.2.1:
  NEW FEATURES:
  * New function utils::findCRANmirror() to find out if a CRAN mirror
    has been selected, otherwise fallback to the main site.  This
    behaves in the same way as tools::CRAN_package_db() and is
    intended for packages wishing to access CRAN for purposes other
    than installing packages.
    The need for this was shown by a day when the main CRAN website
    was offline and a dozen or so packages which had its URL
    hardcoded failed their checks.
  INSTALLATION on a UNIX-ALIKE:
  * The libraries searched for by --with-blas (without a value) now
    include BLIS (after OpenBLAS but before ATLAS).  And on macOS,
    the Accelerate framework (after ATLAS).  (This is patterned after
    the AX_BLAS macro from the Autoconf Archive.)
  * The included LAPACK sources have been updated to 3.10.1.
  UTILITIES:
  * The (full path to) the command tidy to be used for HTML
    validation can be set by environment variable R_TIDYCMD.
  * Setting environment variable _R_CHECK_RD_VALIDATE_RD2HTML_ to a
    false value will override R CMD check --as-cran and turn off HTML
    validation.  This provides a way to circumvent a problematic
    tidy.
    The 2006 version that ships with macOS is always skipped.
  C-LEVEL FACILITIES:
  * The undocumented legacy declarations of Sint, Sfloat, SINT_MAX
    and SINT_MIN in header R.h are deprecated.
  BUG FIXES:
  * fisher.test(d) no longer segfaults for "large" d; fixing PR#18336
    by preventing/detecting an integer overflow reliably.
  * tar(., files=*) now produces correctly the warning about invalid
    uid or gid of files, fixing PR#18344, reported by Martin Morgan.
  * tk_choose.files() with multi = FALSE misbehaved on paths
    containing spaces (PR#18334) (regression introduced in R 4.0.0).
  * sort(x, partial = ind, *) now works correctly notably for the
    non-default na.last = FALSE or TRUE, fixing PR#18335 reported by
    James Edwards.
  * Environment variable _R_CHECK_XREFS_REPOSITORIES_ is only used
    for checking .Rd cross-references in R CMD check (as documented)
    and not for other uses looking for a CRAN mirror.
  * The search for a CRAN mirror when checking packages now uses
    getOption("repos") if that specifies a CRAN mirror, even when it
    does not also specify all three Bioconductor repositories (as was
    previously required).
  * The HTML code generated by tools::Rd2HTML() has been improved to
    pass tidy 5.8.0.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1667217600">- CHANGES IN R 4.2.2:
  NEW FEATURES:
  * tools::Rdiff(useDiff = TRUE) checks for the presence of an
    external diff command and switches to useDiff = FALSE if none is
    found.  This allows R CMD Rdiff to always work.
  * On Windows, environment variable R_LIBCURL_SSL_REVOKE_BEST_EFFORT
    can be used to switch to only 'best-effort' SSL certificate
    revocation checks with the default "libcurl" download method.
    This reduces security, but may be needed for downloads to work
    with MITM proxies (PR#18379).
  * (macOS) The run-time check for libraries from XQuartz for X11 and
    Tcl/Tk no longer uses otool from the Apple Developer Tools
    (PR#18400).
  * The LaTeX style for producing the PDF manuals, Rd.sty, now loads
    the standard amsmath, amsfonts and amssymb packages for greater
    coverage of math commands in the Rd \eqn and \deqn macros.  The
    \mathscr LaTeX command is also provided (via the mathrsfs
    package, if available, or the amsfonts bundle otherwise),
    fulfilling the wish of PR#18398.
  * (Windows) The default format of readClipboard() and
    writeClipboard() has been changed to 13 (CF_UNICODETEXT).
  INSTALLATION on a UNIX-ALIKE:
  * The PDF manuals (if built) can be compacted by the new target
    make compact-pdf (at the top level or in directory doc/manual).
  * There is now configure support for LLVM clang 15 on Linux, which
    defaults to position-independent (PIE) executables whereas
    gfortran does not.
  * Many small changes to ease compilation (and suppress warnings)
    with LLVM clang 15.
  BUG FIXES:
  * Rscript -e would fail if stdin were closed (Reported by Henrik
    Bengtsson.)
  * qt(*, log.p=TRUE) in outer tails no longer produces NaN in its
    final steps, thus fixing PR#18360.
  * tools::Rd2latex() now escapes hashes and ampersands when writing
    URLs, fixing LaTeX errors with such URLs in \tabular.
  * When isGeneric(f, fdef=*) is used with mismatching names, the
    warning is better understandable; reported (with fix) in PR#18370
    by Gabe Becker.
  * poly(x, n) now works again (and is now documented) when x is a
    "Date" or "POSIXct" object, or of another class while fulfilling
    mode(x) == "numeric".  This also enables poly(x, *, raw=TRUE) for
    such variables.  Reported by Michael Chirico to R-devel.
  * write.table(), write.csv() and write.csv2() restore their
    numerical precision (internal equivalent of digits = 15) after an
    interrupt (PR#18384).
  * One can now read also byte FF from a clipboard connection
    (PR#18385).
  * source("") and source(character()) now give more helpful error
    messages.
  * R CMD check --as-cran set _R_CHECK_TIMINGS_ too late to have the
    intended effect.
  * as.POSIXlt(x) now also works with very large dates x, fixing
    PR#18401 reported by Hannes M"uhleisen.
  * Files can now be extracted even from very large zip archives
    (PR#18390, thanks to Martin Jakt).
  * Non-finite objects of class "POSIXlt" are now correctly coerced
    to classes "Date" and "POSIXct"; following up on the extension to
    format() them correctly.
  * Added methods for is.finite(), is.infinite() and is.nan() for
    "POSIXlt" date-time objects.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1678881600">- CHANGES IN R 4.2.3:
  C-LEVEL FACILITIES:
  * The definition of DL_FUNC in R_ext/Rdynload.h has been changed to
    be fully C-compliant.  This means that functions loaded _via_ for
    example R_GetCCallable need to be cast to an appropriate type if
    they have any arguments.
  * .Machine has a new element sizeof.time_t to identify old systems
    with a 32-bit type and hence a limited range of date-times (and
    limited support for dates millions of years from present).
  PACKAGE INSTALLATION:
  * (Windows) The default C++ standard had accidentally been left at
    C++11 when it was changed to C++14 on Unix.
  BUG FIXES:
  * As "POSIXlt" objects may be "partially filled" and their list
    components meant to be recycled, length() now is the length of
    the longest component.
  * as.POSIXlt.Date() could underflow for dates in the far past (more
    than half a million years BCE).
  * as.Date.POSIXlt(x) would return "1970-01-01" instead of NA in R
    4.2.2, e.g., for
    x &lt;- as.POSIXlt(c("2019-01-30","2001-1-1"))
    x$mon &lt;- c(0L, NA); as.Date(x)
  * R CMD check failed to apply enabled _R_CHECK_SUGGESTS_ONLY_ to
    examples and vignettes (regression in R 4.2.0).
  * R CMD check did not re-build vignettes in separate processes by
    default (regression in R 4.2.0).
  * Running examples from HTML documentation now restores previous
    knitr settings and options (PR#18420).
  * Quartz: fonts are now located using Core Graphics API instead of
    deprecated ATS which is no longer supported in the macOS 13 SDK
    (PR#18426).  This also addresses an issue where the currently
    used font in the Quartz device context was not correctly
    retained.
  * (Windows) Math symbols in text drawing functions are again
    rendered correctly (PR#18440).  This fixes a regression in R
    4.2.1 caused by a fix in PR#18382 which uncovered an issue in
    GraphApp due to which the symbol charset was not used with TT
    Symbol font face.
  * (Windows) Installing a package with a src/Makefile.{win,ucrt}
    file includes ~/.R/Makevars.win64 in the search for user
    makevars, as documented in "R Installation and Administration"
    and done for packages with a src/Makevars.{win,ucrt} file.
  * format(&lt;POSIXlt_w/_unbalanced_sec&gt;, "....%OS&lt;n&gt;") with n &gt; 0 no
    longer accidentally uses the unbalanced seconds, thanks to
    Suharto Anggono's report (including patch) in PR#18448.
  * solve.default(a, b) works around issues with some versions of
    LAPACK when a contains NA or NaN values.
  * When UseMethod() cannot dispatch, it no longer segfaults
    producing the error message in case of a long class(), thanks to
    Joris Vankerschaver's report (including patch) in PR#18447.
  * When example(foo, ..) produces graphics on an interactive device
    it needs to open itself, it now leaves devAskNewPage() unchanged
    even when it was FALSE, thus fixing a 14 years old '&lt;FIXME&gt;'.
  * packageDescription() again catches errors from encoding
    conversions. This also fixes broken packageVersion() in C locale
    on systems where iconv does not support transliteration.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1681128000">- add patch to build with libcurl &gt;= 8</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1682078400">- CHANGES IN R 4.3.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Calling &amp;&amp; or || with LHS or (if evaluated) RHS of length greater
    than one is now always an error, with a report of the form
    'length = 4' in coercion to 'logical(1)'
    Environment variable _R_CHECK_LENGTH_1_LOGIC2_ no longer has any
    effect.
  NEW FEATURES:
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.10.1.  (This caused some platform-dependent
    changes to package check output.)  And then to the sources from
    LAPACK version 3.11.0 (with changes only to double complex
    subroutines).
  * The included LAPACK sources have been updated to include the four
    Fortran 90 routines rather than their Fortran 77 predecessors.
    This may give some different signs in SVDs or
    eigendecompositions..  (This completes the transition to LAPACK
    3.10.x begun in R 4.2.0.)
  * The LAPACK sources have been updated to version 3.11.0.  (No new
    subroutines have been added, so this almost entirely bug fixes:
    Those fixes do affect some computations with NaNs, including R's
    NA.)
  * The parser now signals _classed_ errors, notably in case of the
    pipe operator |&gt;.  The error object and message now give line and
    column numbers, mostly as proposed and provided by Duncan Murdoch
    in PR#18328.
  * toeplitz() is now generalized for asymmetric cases, with a
    toeplitz2() variant.
  * xy.coords() and xyz.coords() and consequently, e.g., plot(x,y,
    log = "y") now signal a _classed_ warning about negative values
    of y (where log(.) is NA).  Such a warning can be specifically
    suppressed or caught otherwise.
  * Regular expression functions now check more thoroughly whether
    their inputs are valid strings (in their encoding, e.g. in
    UTF-8).
  * The performance of grep(), sub(), gsub() and strsplit() has been
    improved, particularly with perl = TRUE and fixed = TRUE.  Use of
    useBytes = TRUE for performance reasons should no longer be
    needed and is discouraged: it may lead to incorrect results.
  * apropos() gains an argument dot_internals which is used by the
    completion (help(rcompgen)) engine to also see base internals
    such as .POSIXct().
  * Support in tools::Rdiff() for comparing uncompressed PDF files is
    further reduced - see its help page.
  * qqplot(x, y, ...) gains conf.level and conf.args arguments for
    computing and plotting a confidence band for the treatment
    function transforming the distribution of x into the distribution
    of y (Switzer, 1976, _Biometrika_). Contributed by Torsten
    Hothorn.
  * Performance of package_dependencies() has been improved for cases
    when the number of dependencies is large.
  * Strings newly created by gsub(), sub() and strsplit(), when any
    of the inputs is marked as "bytes", are also marked as "bytes".
    This reduces the risk of creating invalid strings and accidental
    substitution of bytes deemed invalid.
  * Support for readLines(encoding = "bytes") has been added to allow
    processing special text files byte-by-byte, without creating
    invalid strings.
  * iconv(from = "") now takes into account any declared encoding of
    the input elements and uses it in preference to the native
    encoding.  This reduces the risk of accidental creation of
    invalid strings, particularly when different elements of the
    input have different encoding (including "bytes").
  * Package repositories in getOption("repos") are now initialized
    from the repositories file when utils is loaded (if not already
    set, e.g., in .Rprofile).  (From a report and patch proposal by
    Gabriel Becker in PR#18405.)
  * compactPDF() gets a verbose option.
  * type.convert() and hence read.table() get new option tryLogical =
    TRUE with back compatible default.  When set to false, converts
    "F" or "T" columns to character.
  * Added new unit prefixes "R" and "Q" for abbreviating
    (unrealistically large) sizes beyond 10^{27} in standard = "SI",
    thanks to Henrik Bengtsson's PR#18435.
  * as.data.frame()'s default method now also works fine with atomic
    objects inheriting from classes such as "roman", "octmode" and
    "hexmode", such fulfilling the wish of PR#18421, by Benjamin
    Feakins.
  * The as.data.frame.vector() utility now errors for wrong-length
    row.names.  It warned for almost six years, with "Will be an
    error!".
  * sessionInfo() now also contains La_version() and reports codepage
    and timezone when relevant, in both print() and toLatex() methods
    which also get new option tzone for displaying timezone
    information when locale = FALSE.
  * New function R_compiled_by() reports the C and Fortran compilers
    used to build R, if known.
  * predict(&lt;lm&gt;, newdata = *) no longer unnecessarily creates an
    offset of all 0s.
  * solve() for complex inputs now uses argument tol and by default
    checks for 'computational singularity' (as it long has done for
    numeric inputs).
  * predict(&lt;rank-deficient lm&gt;, newdata=*) now obeys a new argument
    rankdeficient, with new default "warnif", warning only if there
    are non-estimable cases in newdata.  Other options include
    rankdeficient = "NA", predicting NA for non-estimable newdata
    cases.  This addresses PR#15072 by Russ Lenth and is based on his
    original proposal and discussions in PR#16158 also by David Firth
    and Elin Waring.  Still somewhat experimental.
  * Rgui console implementation now works better with the NVDA screen
    reader when the full blinking cursor is selected.  The underlying
    improvements in cursor handling may help also other screen
    readers on Windows.
  * The drop-field control in GraphApp can now be left with the TAB
    key and all controls can be navigated in the reverse order using
    the Shift+TAB key, improving accessibility of the Rgui
    configuration editor.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now fully accurate
    (instead of to "only" minimally five digits).
  * demo(error.catching) now also shows off withWarnings() and
    tryCatchWEMs().
  * As an experimental feature the placeholder _ can now also be used
    in the rhs of a forward pipe |&gt; expression as the first argument
    in an extraction call, such as _$coef. More generally, it can be
    used as the head of a chain of extractions, such as _$coef[[2]].
  * Spaces in the environment variable used to choose the R session's
    temporary directory (TMPDIR, TMP and TEMP are tried in turn) are
    now fatal.  (On Windows the 'short path' version of the path is
    tried and used if that does not contain a space.)
  * all.equal.numeric() gets a new optional switch giveErr to return
    the numeric error as attribute.  Relatedly,
    stopifnot(all.equal&lt;some&gt;(a, b, ..)) is as "smart" now, as
    stopifnot(all.equal(....)) has been already, thus allowing
    customized all.equal&lt;Some&gt;() wrappers.
  * R on Windows is now able to work with path names longer than 260
    characters when these are enabled in the system (requires at
    least Windows 10 version 1607).  Packages should be updated to
    work with long paths as well, instead of assuming PATH_MAX to be
    the maximum length.  Custom front-ends and applications embedding
    R need to update their manifests if they wish to allow this
    feature.  See
    &lt;https://blog.r-project.org/2023/03/07/path-length-limit-on-windows&gt;
    for more information.
  * 'Object not found' and 'Missing argument' errors now give a more
    accurate error context. Patch provided by Lionel Henry in
    PR#18241.
  * The @ operator is now an S3 generic. Based on contributions by
    Tomasz Kalinowski in PR#18482.
  * New generic chooseOpsMethod() provides a mechanism for objects to
    resolve cases where two suitable methods are found for an Ops
    Group Generic. This supports experimenting with alternative
    object systems. Based on contributions by Tomasz Kalinowski in
    PR#18484.
  * inherits(x, what) now accepts values other than a simple
    character vector for argument what. A new generic, nameOfClass(),
    is called to resolve the class name from what. This supports
    experimenting with alternative object systems. Based on
    contributions by Tomasz Kalinowski in PR#18485.
  * Detection of BLAS/LAPACK in use (sessionInfo()) with FlexiBLAS
    now reports the current backend.
  * The "data.frame" method for subset() now warns about extraneous
    arguments, typically catching the use of = instead of == in the
    subset expression.
  * Calling a:b when numeric a or b is longer than one may now be
    made into an error by setting environment variable
    _R_CHECK_LENGTH_COLON_ to a true value, along the proposal in
    PR#18419 by Henrik Bengtsson.
  * density(x, weights = *) now warns if automatic bandwidth
    selection happens without using weights; new optional warnWbw may
    suppress the warning.  Prompted by Christoph Dalitz' PR#18490 and
    its discussants.
  * rm(list = *) is faster and more readable thanks to Kevin Ushey's
    PR#18492.
  * The plot.lm() function no longer produces a normal Q-Q plot for
    GLMs. Instead it plots a half-normal Q-Q plot of the absolute
    value of the standardized deviance residuals.
  * The print() method for class "summary.glm" no longer shows
    summary statistics for the deviance residuals by default.  Its
    optional argument show.residuals can be used to show them if
    required.
  * The tapply() function now accepts a data frame as its X argument,
    and allows INDEX to be a formula in that case. by.data.frame()
    similarly allows INDICES to be a formula.
  * The performance of df[j] &lt;- value (including for missing j) and
    write.table(df) has been improved for data frames df with a large
    number of columns.  (Thanks to Gabriel Becker's PR#18500,
    PR#18503 and discussants, prompted by a report from Toby Dylan
    Hocking on the R-devel mailing list.)
  * The matrix multiply operator %*% is now an S3 generic, belonging
    to new group generic matrixOps.  From Tomasz Kalinowski's
    contribution in PR#18483.
  * New function array2DF() to convert arrays to data frames,
    particularly useful for the list arrays created by tapply().
  DATES and TIMES:
  * On platforms where (non-UTC) datetimes before 1902 (or before
    1900 as with system functions on recent macOS) are guessed by
    extrapolating time zones from 1902-2037, there is a warning at
    the first use of extrapolation in a session.  (As all time zones
    post 2037 are extrapolation, we do not warn on those.)
  * (Platforms using --with-internal-tzone, including Windows and by
    default macOS). How years are printed in dates or date-times can
    be controlled by environment variable R_PAD_YEARS_BY_ZERO.  The
    default remains to pad to 4 digits by zeroes, but setting value
    no gives no padding (as used by default by glibc).
  * strftime() tries harder to determine the offset for the "%z"
    format, and succeeds on the mainstream R platforms.
  * strftime() has a limit of 2048 bytes on the string produced -
    attempting to exceed this is an error.  (Previously it silently
    truncated at 255 bytes.)
  * sessionInfo() records (and by default prints) the system time
    zone as part of the locale information.  Also, the source
    (system/internal) of the date-time conversion and printing
    functions.
  * Objects of class "POSIXlt" created in this version of R always
    have 11 components: component zone is always set, and component
    gmtoff is set for times in UTC and usually set on the (almost
    all) platforms which have C-level support, otherwise is NA.
  * There are comprehensive validity checks on the structure of
    objects of class "POSIXlt" when converting (including formatting
    and printing).  (This avoids mis-conversions of hand-crafted
    objects.)
  * There is some support for using the native date-time routines on
    macOS: this is only viable on recent versions (e.g. 12.6 and 13)
    and does get wrong some historical changes (before 1900, during
    WWII).  Use of --with-internal-tzone remains the default.
  * as.POSIXct(&lt;numeric&gt;) and as.POSIXlt(.) (without specifying
    origin) now work.  So does as.Date(&lt;numeric&gt;).
  * as.Date.POSIXct(., tz) now treats several tz values, notably
    "GMT" as equivalent to "UTC", proposed and improved by Michael
    Chirico and Joshua Ulrich in PR#17674.
  * Experimental balancePOSIXlt() utility allows using "ragged" and
    or out-of-range "POSIXlt" objects more correctly, e.g., in
    subsetting and subassignments.  Such objects are now documented.
    More experimentally, a "POSIXlt" object may have an attribute
    "balanced" indicating if it is known to be filled or fully
    balanced.
  * Functions axis.Date() and axis.POSIXct() are rewritten to gain
    better default tick locations and better default formats by using
    prettyDate(). Thanks to Swetlana Herbrandt.
  * The mapping of Windows' names for time zones to IANA's 'Olson'
    names has been updated.  When ICU is available (it is by
    default), it is used to get a mapping for the current region set
    in Windows.  This can be overridden by setting environment
    variable TZ to the desired Olson name - see OlsonNames() for
    those currently available.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 16
    and so packages that provide graphics devices should be
    reinstalled.
  * The grDevices and grid packages have new functions for rendering
    typeset glyphs, primarily: grDevices::glyphInfo() and
    grid::grid.glyph().
    Rendering of typeset glyphs is only supported so far on the
    Cairo-based graphics devices and on the pdf() and quartz()
    devices.
  * The defined behaviour for "clear" and "source" compositing
    operators (via grid::grid.group()) has been changed (to align
    better with simple interpretation of original Porter-Duff
    definitions).
  * Support for gradients, patterns, clipping paths, masks, groups,
    compositing operators, and affine transformations has been added
    to the quartz() device.
  INSTALLATION on a UNIX-ALIKE:
  * A system installation of generic LAPACK 3.10.0 or later will be
    preferred to the version in the R sources.
    configure option --with-lapack=no (equivalently --without-lapack)
    forces compilation of the internal LAPACK sources.
    If --with-lapack is not specified, a system liblapack is looked
    for and used if it reports version 3.10.0 or later and does not
    contain BLAS routines.
    Packages using LAPACK will need to be reinstalled if this changes
    to using an external library.
  * On aarch64 Linux platforms using GCC, configure now defaults to
  - fPIC (instead of -fpic), as desired in PR#18326.
  * configure now checks conversion of datetimes between POSIXlt and
    POSIXct around year 2020.  Failure (which has been seen on
    platforms missing tzdata) is fatal.
  * If configure option --with-valgrind-instrumentation is given
    value 1 or 2, option --with-system-valgrind-headers is now the
    default and ignored (with a warning).  It is highly recommended
    that the system headers are installed alongside valgrind: they
    are part of its packaging on some Linux distributions and
    packaged separately (e.g. in the valgrind-devel RPM) on others.
    configure will give a warning if they are not found.
    The system headers will be required in a future release of R to
    build with valgrind instrumentation.
  * libcurl 8.x is now accepted by configure: despite a change in
    major version number it changes neither API nor ABI.
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools43, an update of the Rtools42 toolchain.  It is
    based on gcc 12 and newer versions of MinGW-W64, binutils and
    libraries.  At this time R-devel can still be built using
    Rtools42 without changes, but when R-devel is installed via the
    installer, it will by default look for Rtools43.
  * Old make targets rsync-extsoft and 32-bit ones that are no longer
    needed have been removed.
  * Default builds (including for packages) no longer select C99.
    Thus the C standard used is the default for the compiler, which
    for the toolchain in Rtools43 is C17.  (This is consistent with
    Unix builds.)
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++17 where
    available (which it is on all currently checked platforms): if
    not C++14 or C++11 is used if available otherwise C++ is not
    supported.
  * USE_FC_LEN_T is the default: this uses the correct
    (compiler-dependent) prototypes for Fortran BLAS/LAPACK routines
    called from C/C++, and requires adjustment of many such calls -
    see 'Writing R Extensions' SS6.6.1.
  * There is initial support for C++23 as several compilers are now
    supporting -std=c++23 or -std=c++2b or similar.  As for C++20,
    there no additional configure checks for C++23 features beyond a
    check that the compiler reports a __cplusplus value greater than
    that in the C++20 standard.  C++ feature tests should be used.
  * There is support for a package to indicate the version of the C
    standard which should be used to compile it, and for the
    installing user to specify this.  In most cases R defaults to the
    C compiler's default standard which is C17 (a `bug-fix' of C11) -
    earlier versions of R or compilers may have defaulted to C99.
    Current options are:
    USE_C17 Use a standard that is at most C17.  The intention is to
    allow legacy packages to still be installed when later C
    standards become the default, including packages using new
    keywords as identifiers or with K&amp;R-style function
    declarations.  This will use C17 if available, falling back
    to C11.
    USE_C90 Use the C90 (aka C89) standard.  (As that standard did
    not require compilers to identify that version, all we can
    verify is that the compiler does not claim to be using a
    later standard.  It may accept C99 features - for example
    clang accepts // to make comments.)
    USE_C99 Use the C99 standard. This should be rarely needed - it
    avoids the few new features of C11/C17 which can be useful if
    a package assumes them if C17 is specified and they are not
    implemented.
    USE_C23 Use C23 (or in future, later).  Compiler/library support
    for C23 is still being implemented, but LLVM clang from
    15.0.0 and the upcoming GCC 13 have quite extensive support.
    These can be specified as part of the SystemRequirements field in
    the package's DESCRIPTION file or _via_ options --use-C17 and so
    on of R CMD INSTALL and R CMD SHLIB.
    For further details see "Writing R Extensions" SS1.2.5.
  * (Windows) A src/Makefile.ucrt or src/Makefile.win file is now
    included after R_HOME/etcR_ARCH/Makeconf and so no longer needs
    to include that file itself.  Installation of a package with such
    a file now uses a site Makevars file in the same way as a package
    with a src/Makevars.win file would.
  * configure is now passed crucial variables such as CC and CFLAGS
    in its environment, as many packages were not setting them (as
    documented in 'Writing R Extensions' SS1.2).
    This has most effect where configure is used to compile parts of
    the package - most often by cmake or libtool which obfuscate the
    actual compile commands used.
    Also used for configure.win and configure.ucrt on Windows.
  FORTRAN FLAGS:
  * The flag -fno-optimize-sibling-calls is no longer forced for
    gfortran 7 and later.  It should no longer be needed now using
    'hidden' character-length arguments when calling BLAS/LAPACK
    routines from C/C++ is the default even for packages.  (Unless
    perhaps packages call Fortran code from C/C++ without using R's
    headers and without allowing for these arguments.)
  C-LEVEL FACILITIES:
  * The deprecated S-compatibility macros DOUBLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * The deprecated legacy typedefs of Sint and Sfloat in header R.h
    are no longer defined, and that header no longer includes header
    limits.h from C nor climits from C++.
  * New macro CAD5R() is provided in Rinternals.h and used in a few
    places in the R sources.
  * ALTREP now supports VECSXP vectors. Contributed by Gabor Csardi
    in PR#17620.
  * The Rcomplex definition (in header R_ext/Complex.h) has been
    extended to prevent possible mis-compilation when interfacing
    with Fortran (PR#18430).  The new definition causes compiler
    warnings with static initializers such as {1, 2}, which can be
    changed to {.r=1, .i=2}.
    Using the new definition from C++ depends on compiler extensions
    supporting C features that have not been incorporated into the
    C++ standards but are available in g++ and clang++: this may
    result in C++ compiler warnings but these have been worked around
    for recent versions of common compilers (GCC, Apple/LLVM clang,
    Intel).
    It is intended to change the inclusion of header R_ext/Complex.h
    by other R headers, so C/C++ code files which make use of
    Rcomplex should include that header explicitly.
  UTILITIES:
  * R CMD check does more checking of package .Rd files, warning
    about invalid email addresses and (some) invalid URIs and noting
    empty \item labels in description lists.
  * R CMD check now also reports problems when reading package news
    in md (file NEWS.md) and (optionally) plain text (file NEWS)
    formats.
  * _R_CHECK_TIMINGS_ defaults to a value from the environment even
    for R CMD check --as-cran; this allows for exceptionally fast or
    slow platforms.
    It now applies to checking PDF and HTML versions of the manuals,
    and 'checking CRAN incoming feasibility'.
  * R CMD check can optionally (but included in --as-cran) check
    whether HTML math rendering _via_ KaTeX works for the package .Rd
    files.
  * Non-interactive debugger invocations can be trapped by setting
    the environment variable _R_CHECK_BROWSER_NONINTERACTIVE_ to a
    true value.  This is enabled by R CMD check --as-cran to detect
    the use of leftover browser() statements in the package.
  * The use of sprintf and vsprintf from C/C++ has been deprecated in
    macOS 13 and is a known security risk.  R CMD check now reports
    (on all platforms) if their use is found in compiled code:
    replace by snprintf or vsnprintf respectively. [*NB:* whether
    such calls get compiled into the package is platform-dependent.]
  * Where recorded at installation, R CMD check reports the C and
    Fortran compilers used to build R.
    It reports the OS in use (if known, as given by osVersion) as
    well as that R was built for.
    It notes if a C++ standard was specified which is older than the
    current default: many packages have used C++11 to mean 'not
    C++98' - as C++11 is the minimum supported since R 4.0.0, that
    specification can probably be removed.
  * R CMD INSTALL reports the compilers (and on macOS, the SDK) used,
    and this is copied to the output of R CMD check.
    Where a C++ standard is specified, it is reported.
  * R CMD check's 'checking compilation flags in Makevars' has been
    relaxed to accept the use of flags such as -std=f2008 in
    PKG_FFLAGS.
  * tools::buildVignettes() has a new argument skip, which is used by
    R CMD check to skip (and note) vignettes with unavailable
    \VignetteDepends (PR#18318).
  * New generic .AtNames() added to enable class-specific completions
    after @. The formerly internal function findMatches() is now
    exported, mainly for use in methods for .DollarNames() and
    .AtNames().
  DEPRECATED AND DEFUNCT:
  * default.stringsAsFactors() is defunct.
  * Calling as.data.frame.&lt;class&gt;() directly (for 12 atomic classes)
    is going to be formally deprecated, currently activated by
    setting the environment variable
    _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ to non-empty, which also
    happens in R CMD check --as-cran.
  BUG FIXES:
  * Hashed environments with sizes less than 5 can now grow.
    (Reported to R-devel by Duncan Garmonsway.)
  * as.character(&lt;Rd&gt;, deparse = TRUE) failed to re-escape curly
    braces in LaTeX-like text.  (Reported by Hadley Wickham in
    PR#18324.)
  * library() now passes its lib.loc argument when requiring Depends
    packages; reported (with fix) in PR#18331 by Mikael Jagan.
  * R CMD Stangle: improved message about 'Output' files.
  * head(x, n) and tail(x, n) now signal an error if n is not
    numeric, instead of incidentally "working" sometimes returning
    all of x.  Reported and discussed by Colin Fay, in PR#18357.
  * The "lm" method for summary() now gives the correct F-statistic
    when the model contains an offset.  Reported in PR#18008.
  * C() and `contrasts&lt;-`() now preserve factor level names when
    given a function object (as opposed a function name which did
    preserve names). Reported in PR#17616.
  * c(a = 1, 2)[[]] no longer matches 2 but rather signals a
    _classed_ error.  Reported and analysed by Davis Vaughan in
    PR#18367, a duplicate of PR#18004, by Jan Meis et al.  For
    consistency, NULL[[]] is also erroneous now.  x[[]] &lt;- v gives an
    error of the same class "MissingSubscriptError".
  * The relist() function of utils now supports NULL elements in the
    skeleton (PR#15854).
  * ordered(levels = *) (missing x) now works analogously to factor(,
    ordered=TRUE); reported (with fix) by Achim Zeileis in PR#18389.
  * User-defined Rd macro definitions can now span multiple lines,
    thanks to a patch from Duncan Murdoch. Previously, the Rd parser
    silently ignored everything after the first line.
  * Plain-text help (tools::Rd2txt()) now preserves an initial blank
    line for text following description list items.
  * tools::Rd2HTML() and tools::Rd2latex() no longer split \arguments
    and \value lists at Rd comments.
  * tools::Rd2latex() now correctly handles optional text outside
    \items of argument lists as well as bracketed text at the
    beginning of sections, e.g., \value{[NULL]}.
  * as.character(&lt;POSIXt&gt;) now behaves more in line with the methods
    for atomic vectors such as numbers, and is no longer influenced
    by options().  Ditto for as.character(&lt;Date&gt;).  The
    as.character() method gets arguments digits and OutDec with
    defaults _not_ depending on options().  Use of as.character(*,
    format = .) now warns.
  * Similarly, the as.character.hexmode() and *.octmode() methods
    also behave as good citizen methods and back compatibility option
    keepStr = TRUE.
  * The as.POSIXlt(&lt;POSIXlt&gt;) and as.POSIXct(&lt;POSIXct&gt;) default
    methods now do obey their tz argument, also in this case.
  * as.POSIXlt(&lt;Date&gt;) now does apply a tz (time zone) argument, as
    does as.POSIXct(); partly suggested by Roland Fuss on the R-devel
    mailing list.
  * as.Date.POSIXlt(x) now also works when the list components are of
    unequal length, aka "partially filled" or "ragged".
  * expand.model.frame() looked up variables in the wrong environment
    when applied to models fitted without data.  Reported in
    PR#18414.
  * time() now (also) uses the ts.eps = getOption("ts.eps") argument
    and thus by default rounds values very close to the start (or
    end) of a year.  Based on a proposal by Andre"i V. Kostyrka on
    R-help.
  * Printing of a factanal() result with just one factor and sort =
    TRUE now works regularly, fixing PR#17863 by Timothy Bates,
    thanks to the 'R Contributors' working group.
  * Printing 0-length objects of class "factor", "roman", "hexmode",
    "octmode", "person", "bibentry", or "citation" now prints
    something better, one of which fixes PR#18422, reported by
    Benjamin Feakins.
  * Sys.timezone() queries timedatectl only if systemd is loaded;
    addressing a report by Jan Gorecki in PR#17421.
  * The formula method of cor.test() had scoping problems when
    environment(formula) was not the calling environment; reported
    with a patch proposal by Mao Kobayashi in PR#18439.
  * attach() of an environment with active bindings now preserves the
    active bindings.  Reported by Kevin Ushey in PR#18425.
  * BLAS detection now works also with system-provided libraries not
    available as regular files.  This fixes detection of the
    Accelerate framework on macOS since Big Sur.  Reported by David
    Novgorodsky.
  * download.file() gives a helpful error message in case of an
    invalid download.file.method option, thanks to Colin Fay's report
    in PR#18455.
  * Sporadic crashes of Rterm when using completion have been fixed.
  * Rprof() is now more reliable.  A livelock in thread
    initialization with too short sampling interval has been fixed on
    macOS.  A deadlock in using the C runtime has been fixed on
    Windows.  A potential deadlock has been prevented on Unix.
  * Cursor placement in Rgui now works even after a fixed-width font
    is selected.
  * Mandatory options (options()) are now set on startup so that
    saving and restoring them always works (PR#18372).
  * Package installation, R CMD INSTALL or install.packages(*), now
    parses each of the &lt;pkg&gt;/R/*.R files individually instead of
    first concatenating and then parse()ing the large resulting file.
    This allows parser or syntax errors to be diagnosed with correct
    file names and line numbers, thanks to Simon Dedman's report and
    Bill Dunlap's patch in PR#17859.
    This _does_ require syntactically self contained R source files
    now, fixing another inadvertent bug.
  * predict.lm(&lt;model with offset&gt;) now finds the offset in the
    correct environment, thanks to Andr'e Gillibert's report and patch
    in PR#18456.
  * getInitial(&lt;formula&gt;) now finds the selfStart model in the
    correct environment.  (Reported by Ivan Krylov in PR#18368.)
  * Fix for possible segfault when using recently-added graphics
    features, such as gradients, clipping paths, masks, and groups
    with pdf(file=NULL).
  * class(m) &lt;- class(m) no longer changes a matrix m by adding a
    class _attribute_.
  * packageDate(pkg) now only warns once if there is no pkg.
  * When ts() creates a multivariate time series, "mts", it also
    inherits from "array" now, and is.mts() is documented _and_
    stricter.
  * Rd2txt() now preserves line breaks of \verb Rd content and from
    duplicated \cr.  The former also fixes the rendering of verbatim
    output from Rd \Sexpr in plain-text help.
  * uniroot(f, interval) should no longer wrongly converge _outside_
    the interval in some cases where abs(f(x)) == Inf for an x at the
    interval boundary, thanks to posts by Ben Bolker and Serguei
    Sokol on R-devel.
  * Vectorized alpha handling in palette functions such as in gray(),
    rainbow(), or hcl.colors() works correctly now, thanks to Achim
    Zeileis' report and patch in PR#18476.
  * Formatting and print()ing of bibentry objects has dropped the
    deprecated citation.bibtex.max argument, such that the bibtex
    argument's default for print.bibentry() depends directly on the
    citation.bibtex.max option, whereas in format.bibentry() the
    option no longer applies.
  * Attempting to use a character string naming a foreign function
    entry point in a foreign function call in a package will now
    signal an error if the packages has called R_forceSymbols to
    specify that symbols must be used.
  * An error in table() could permanently set options(warn=2)
    promoting all subsequent warnings to errors.
  * The sigma() function gave misleading results for binary GLMs.  A
    new method for objects of class "glm" returns the square root of
    the estimate of the dispersion parameter using the same
    calculation as summary.glm().
  * bs() and ns() in the (typical) case of automatic knot
    construction, when some of the supposedly inner knots coincide
    with boundary knots, now moves them inside (with a warning),
    building on PR#18442 by Ben Bolker.
  * R CMD on Windows now skips the site profile with --no-site-file
    and --vanilla even when R_PROFILE is set (PR#18512, from Kevin
    Ushey).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1686916800">- CHANGES IN R 4.3.1:
  C-LEVEL FACILITIES:
  * The C-level API version of R's integrate(), Rdqags() in Applic.h,
    now returns the correct number of integrand evaluations neval,
    fixing PR#18515 reported and diagnosed by Stephen Wade.
  * The C prototypes for LAPACK calls dspgv and dtptrs in
    R_exts/Lapack.h had one too many and one too few character length
    arguments - but this has not caused any known issues. To get the
    corrected prototypes, include
    [#]include &lt;Rconfig.h&gt; // for PR18534fixed
    [#]ifdef PR18534fixed
    [#] define usePR18534fix 1
    [#]endif
    [#]include &lt;R_exts/Lapack.h&gt;
    in your C/C++ code (PR#18534).
  INSTALLATION:
  * Many of the checks of esoteric Internet operations and those
    using unreliable external sites have been moved to a new target
    that is not run by default and primarily intended for the core
    developers.  To run them use
    cd tests; make test-Internet-dev
  BUG FIXES:
  * .S3methods(), typically called from methods(), again marks
    methods from package base as visible.
    Also, the visibility of non-base methods is again determined by
    the method's presence in search().
  * tools::Rdiff() is now more robust against invalid strings, fixing
    installation tests on Windows without Rtools installed
    (PR#18530).
  * Fix (new) bug in hcl.colors(2, *), by Achim Zeileis (PR#18523).
  * head(., &lt;illegal&gt;) and tail(..) now produce more useful "Error in
    ...." error messages, fixing PR#18362.
  * Package code syntax on Windows is checked in UTF-8 when UTF-8 is
    the native encoding.
  * na.contiguous(x) now also returns the first run, when it is at
    the beginning and there is a later one of the same length;
    reported to R-devel, including a fix, by Georgi Boshnakov.
    Further, by default, it modifies only an existing attr(*,"tsp")
    but otherwise no longer sets one.
  * chol(&lt;not pos.def&gt;, pivot = &lt;T|F&gt;) now gives a correct error or
    warning message (depending on pivot), thanks to Mikael Jagan's
    (PR#18541).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1699012800">- CHANGES IN R 4.3.2:
  NEW FEATURES:
  * The default initialization of the "repos" option from the
    repositories file at startup can be skipped by setting
    environment variable R_REPOSITORIES to NULL such that
    getOption("repos") is empty if not set elsewhere.
  * qr.X() is now an implicit S4 generic in methods.
  * iconv(to = "ASCII//TRANSLIT") is emulated using substitution on
    platforms which do not support it (notably Alpine Linux).  This
    should give a human-readable conversion in ASCII on all platforms
    (rather than NA_character_).
  * trans3d() gains options continuous and verbose addressing the
    problem of possible "wrap around" when projecting too long
    curves, as reported by Achim Zeileis in PR#18537.
  * tools::showNonASCII() has been rewritten to work better on macOS
    14 (which has a changed implementation of iconv()).
  * tiff(type = "quartz") (the default on macOS) now warns if
    compression is specified: it continues to be ignored.
  INSTALLATION on a UNIX-ALIKE:
  * There is some support for building with Intel's LLVM-based
    compilers on x86_64 Linux, such as (C) icx, (C++) ipcx and
    (Fortran) ifx from oneAPI 2023.x.y.
  * There is support for using LLVM's flang-new as the Fortran
    compiler from LLVM 16.0.x (preferably 17.0.0 or later).
  UTILITIES:
  * R CMD check reports the use of the Fortran 90 random number
    generator RANDOM_NUMBER() and the subroutines to initialize it.
    'Writing R Extensions' has example code to use R's RNGs from
    Fortran.
  BUG FIXES:
  * substr(x, n, L) &lt;- cc now works (more) correctly for multibyte
    UTF-8 strings x when L &gt; nchar(x), thanks to a report and patch
    by 'Architect 95'.
  * contrib.url(character()) now returns 0-length character() as
    documented, which also avoids spurious warnings from
    available.packages() et al. in the edge case of an empty vector
    of repository URLs.
  * readChar(., 4e8) no longer fails, thanks to Kodi Arfer's report
    (PR#18557).
  * lapply(&lt;list&gt;, as.data.frame) no longer warns falsely for some
    base vector components.
  * Communication between parent and child processes in the multicore
    part of parallel could fail on platforms that do not support an
    arbitrarily large payload in system functions read()/write() on
    pipes (seen on macOS where a restriction to INT_MAX bytes is
    documented, without doing a partial read unlike Linux). The
    payload is now split into 1Gb chunks to avoid that problem.
    (PR#18571)
  * qqplot(x,y, conf.level=.) gives better confidence bounds when
    length(x) != length(y), thanks to Alexander Ploner's report and
    patch proposal (PR#18557).
  * norm(&lt;0-length&gt;, "2") now gives zero instead of an error, as all
    the other norm types, thanks to Mikael Jagan's PR#18542.
  * Build-stage Rd macros \packageAuthor and \packageMaintainer now
    process Authors@R, fixing NA results when the package DESCRIPTION
    omits Author and Maintainer fields.
  * Formatting and printing complex numbers could give things like
    0.1683-0i because of rounding error: -0i is now replaced by +0i.
  * postscript() refused to accept a title comment containing the
    letter "W" (PR#18599).
  * isoreg(c(1,Inf)) signals an error instead of segfaulting, fixing
    PR#18603.
  * tiff(type = "Xlib") was only outputting the last page of
    multi-page plots.
  * tools::latexToUtf8() again knows about \~{n} and other letters
    with tilde, fixing a regression in R 4.3.0, and about \^{i} as an
    alternative to \^{\i} (similarly with other accents).
    Furthermore, LaTeX codes for accented I letters are now correctly
    converted, also fixing related mistakes in
    tools::encoded_text_to_latex().
  * tar(*, tar = "internal") no longer creates out-of-spec tar files
    in the very rare case of user or group names longer than 32
    bytes, fixing PR#17871 with thanks to Ivan Krylov.
  * When using the "internal" timezone datetime code, adding a
    fraction of a second no longer adds one second, fixing PR#16856
    from a patch by Ivan Krylov.
  * tools::checkRd() no longer produces spurious notes about
    "unnecessary braces" from multi-line Rd results of \Sexpr macros.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1709208000">- CHANGES IN R 4.3.3:
  NEW FEATURES:
  * iconv() now fixes up variant encoding names such as "utf8"
    case-insensitively.
  DEPRECATED AND DEFUNCT:
  * The legacy encoding = "MacRoman" is deprecated in pdf() and
    postscript(): support was incomplete in earlier versions of R.
  BUG FIXES:
  * Arguments are now properly forwarded to methods on S4 generics
    with ... in the middle of their formal arguments. This was broken
    for the case when a method introduced an argument but did not
    include ... in its own formals. Thanks to Herv'e Pag`es for the
    report PR#18538.
  * Some invalid file arguments to pictex(), postscript() and xfig()
    opened a file called NA rather than throw an error.  These
    included postscript(NULL) (which some people expected to work
    like pdf(NULL)).
  * Passing filename = NA to svg(), cairo_pdf(), cairo_ps() or the
    Cairo-based bitmap devices opened a file called NA: it now throws
    an error.
  * quartz(file = NA) opened a file called NA, including when used as
    a Quartz-based bitmap device.  It now gives an error.
  * rank(&lt;long vector&gt;) now works, fixing PR#18617, thanks to Ilia
    Kats.
  * seq.int() did not adequately check its length.out argument.
  * match(&lt;POSIXct&gt;, .) is correct again for differing time zones,
    ditto for "POSIXlt", fixing PR#18618 reported by Bastian Klein.
  * drop.terms(*, dropx = &lt;0-length&gt;) now works, fixing PR#18563 as
    proposed by Mikael Jagan.
  * drop.terms(*) keeps + offset(.) terms when it should, PR#18565,
    and drop.terms() no longer makes up a response, PR#18566, fixing
    both bugs thanks to Mikael Jagan.
  * getS3method("t", "test") no longer finds the t.test() function,
    fixing PR#18627.
  * pdf() and postscript() support for the documented Adobe encodings
    "Greek" and "Cyrilllic" was missing (although the corresponding
    Windows' codepages could be used).
  * Computations of glyph metric information for pdf() and
    postscript() did not take into account that transliteration could
    replace one character by two or more (only seen on macOS 14) and
    typically warned that the information was not known.
  * rank(x) no longer overflows during integer addition, when
    computing rank average for largish but not-yet long vector x,
    fixing PR#18630, thanks to Ilia Kats.
  * list.files() on Windows now returns also files with names longer
    that 260 bytes (the Windows limit is 260 characters).
    Previously, some file names particularly with 'East Asian'
    characters were omitted.
  * cov2cor(&lt;0 x 0&gt;) now works, fixing PR#18423 thanks to Mikael
    Jagan and Elin Waring.
  * cov2cor(&lt;negative diagonal&gt;) and similar now give one warning
    instead of two, with better wording, fixing PR#18424 thanks to
    Mikael Jagan.
  * tools:: startDynamicHelp() now ensures port is in proper range,
    fixing PR#18645.
  * pbeta(x, a,b) is correct now for x=0 or 1 in the boundary cases
    where a or b or both are 0, fixing PR#18672 thanks to Michael
    Fay.
  * pmatch(x, table) for large table, also called for data frame row
    selection, dfrm[nm, ], is now interruptible, fixing PR#18656.
  * predict(&lt;rank-deficient lm&gt;, newdata=*) fix computing of nbasis,
    see Russ Lenth's comment 29 in PR#16158.
  * Added a work-around for a bug in macOS 14.3.1 and higher which
    prevents R plots in the Quartz Cocoa device from updating on
    screen.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1713960000">- CHANGES IN R 4.4.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Startup banners, R --version, sessionInfo() and R CMD check no
    longer report (64-bit) as part of the platform as this is almost
    universal - the increasingly rare 32-bit platforms will still
    report (32-bit).
    On Windows, ditto for window titles.
  * is.atomic(NULL) now returns FALSE, as NULL is not an atomic
    vector.  Strict back-compatibility would replace is.atomic(foo)
    by (is.null(foo) || is.atomic(foo)) but should happen only
    sparingly.
  NEW FEATURES:
  * The confint() methods for "glm" and "nls" objects have been
    copied to the stats package.  Previously, they were stubs which
    called versions in package MASS. The MASS namespace is no longer
    loaded if you invoke (say) confint(glmfit).  Further, the "glm"
    method for profile() and the plot() and pairs() methods for class
    "profile" have been copied from MASS to stats.  (profile.nls()
    and plot.profile.nls() were already in stats.)
  * The confint() and profile methods for "glm" objects have gained a
    possibility to do profiling based on the Rao Score statistic in
    addition to the default Likelihood Ratio. This is controlled by a
    new test = argument.
  * The pairs() method for "profile" objects has been extended with a
    which = argument to allow plotting only a subset of the
    parameters.
  * The "glm" method for anova() computes test statistics and
    p-values by default, using a chi-squared test or an F test
    depending on whether the dispersion is fixed or free.  Test
    statistics can be suppressed by giving argument test a false
    logical value.
  * In setRepositories() the repositories can be set using their
    names via name = instead of index ind =.
  * methods() and .S3methods() gain a all.names option for the (rare)
    case where functions starting with a . should be included.
  * Serializations can now be interrupted (e.g., by Ctrl-C on a
    Unix-alike) if they take too long, e.g., from save.image(),
    thanks to suggestions by Ivan Krylov and others on R-devel.
  * New startup option --max-connections to set the maximum number of
    simultaneous connections for the session.  Defaults to 128 as
    before: allowed values up to 4096 (but resource limits may in
    practice restrict to smaller values).
  * R on Windows (since Windows 10 2004) now uses the new Segment
    Heap allocator. This may improve performance of some
    memory-intensive applications.
  * When R packages are built, typically by R CMD build &lt;pkg&gt;, the
    new --user=&lt;build_user&gt; option overrides the (internally
    determined) user name, currently Sys.info()["user"] or LOGNAME.
    This is a (modified) fulfillment of Will Landau's suggestion in
    PR#17530.
  * tools::testInstalledBasic() gets new optional arguments outDir
    and testSrcdir, e.g., allowing to use it in a &lt;builddir&gt; !=
    &lt;srcdir&gt; setup, and in standard "binary" Windows installation
  * if* a source tests/ folder is present.
  * range(&lt;DT_with_Inf&gt;, finite = TRUE) now work for objects of class
    "Date", "POSIXct", and "POSIXlt" with infinite entries,
    analogously to range.default(), as proposed by Davis Vaughan on
    R-devel.  Other range()-methods can make use of new function
    .rangeNum().
  * New .internalGenerics object complementing .S3PrimitiveGenerics,
    for documentation and low-level book-keeping.
  * grid() now invisibly returns the x- and y- coordinates at which
    the grid-lines were drawn.
  * norm(., type) now also works for complex matrices.
  * kappa(., exact = TRUE, norm = *) now works for all norms and also
    for complex matrices.  In symmetric / triangular cases, the new
    argument uplo = "U" | "L" allows the upper or lower triangular
    part to be specified.
  * memDecompress(type = "unknown") recognizes compression in the
    default 'zlib' format as used by memCompress(type = "gzip").
  * memCompress() and memDecompress() will use the libdeflate library
    (&lt;https://github.com/ebiggers/libdeflate&gt;) if installed.  This
    uses the same type of compression for type = "gzip" but is 1.5-2x
    faster than the system libz library on some common platforms: the
    speed-up may depend on the library version.
  * diff() for objects of class "Date", "POSIXct", and "POSIXlt"
    accepts a units argument passed via ....
  * Dynamic help now does a much better job of rendering package
    DESCRIPTION metadata.
  * Rprof() gains an event argument and support for elapsed (real)
    time profiling on Unix (PR#18076).
  * filled.contour() gains a key.border argument.
  * tools::update_pkg_po() gets arguments pot_make and mo_make for
    _not_ re-making the corresponding files, and additionally a
    verbose argument.
  * Hexadecimal string colour specifications are now accepted in
    short form, so, for example, we can use "#123", which is
    equivalent to "#112233".
    Thanks to MikeFC for the original idea and Ella Kaye, Malcolm
    Barrett, George Stagg, and Hanne Oberman for the patch.
  * Plain-text help shows \var markup by angle brackets.
  * The new experimental primitive function declare() is intended to
    eventually allow information about R code to be communicated to
    the interpreter, compiler, and code analysis tools. The syntax
    for declarations is still being developed.
  * Functions psmirnov(), qsmirnov() and rsmirnov() in package stats
    have had argument two.sided renamed to alternative, to take into
    account that the permutation distributions of the one-sided
    statistics can be different in the case of ties.  Consequence of
    PR#18582.
  * sort() is now an implicit S4 generic in methods.
  * Formatting and printing, format(z), print(z), of complex vectors
    z no longer zap relatively small real or imaginary parts to zero,
    fixing PR#16752.  This is an API change, as it was documented
    previously to round real and imaginary parts together on purpose,
    producing nicer looking output.  As mentioned, e.g. in the PR,
    this change is compatible with many other "R-like" programming
    environments.
    We have simplified the internal code and now basically format the
    real and imaginary parts independently of each other.
  * New experimental functions Tailcall() and Exec() to support
    writing stack-space-efficient recursive functions.
  * Where characters are attempted to be plotted by pdf(),
    postscript() and xfig() which are not in the selected 8-bit
    character set (most often Latin-1) and the R session is using a
    UTF-8 locale, the warning messages will show the UTF-8 character
    rather than its bytes and one dot will be substituted per
    character rather than per byte.  (Platforms whose iconv() does
    transliteration silently plot the transliteration.)
    In a UTF-8 locale some transliterations are now done with a
    warning (e.g., dashes and Unicode minus to hyphen, ligatures are
    expanded, permille (‰) is replaced by o/oo), although the OS may
    have got there first.  These are warnings as they will continue
    to be replaced by dots in earlier versions of R.
  * The matrix multiplication functions crossprod() and tcrossprod()
    are now also primitive and S3 generic, as %*% had become in R
    4.3.0.
  * source() and example() have a new optional argument catch.aborts
    which allows continued evaluation of the R code after an error.
  * The non-Quartz tiff() devices allow additional types of
    compression if supported by the platform's libtiff library.
  * The list of base and recommended package names is now provided by
    tools::standard_package_names().
  * cairo_pdf() and cairo_ps() default to onefile = TRUE to closer
    match pdf() and postscript().
  * New option catch.script.errors provides a documented way to catch
    errors and then continue in non-interactive use.
  * L %||% R newly in base is an expressive idiom for the phrases
    if(!is.null(L)) L else R or if(is.null(L)) R else L.
  * The return value from warnings() now always inherits from
    "warnings" as documented, now also in the case of no warnings
    where it previously returned NULL.
  * as.complex("1i") now returns 0 + 1i instead of NA with a warning.
  * z &lt;- c(NA, 1i) now keeps the imaginary part Im(z[1]) == 0, no
    longer coercing to NA_complex_.  Similarly, cumsum(z) correctly
    sums real and imaginary parts separately, i.e., without
    "crosstalk" in case of NAs.
  * On Alpine Linux iconv() now maps "latin2", "latin-2", "latin9"
    and "latin-9" to encoding names the OS knows about
    (case-insensitively).
  * iconv(sub = "Unicode") now always zero-pads to four (hex) digits,
    rather than to 4 or 8.  (This seems to have become the convention
    once Unicode restricted the number of Unicode points to 2^21 - 1
    and so will never need more than 6 digits.)
  * NCOL(NULL) now returns 0 instead of 1, for consistency with
    cbind().
  * The information for the Euro glyph missing from the Adobe .afm
    files for the Courier, Helvetica and Times families has been
    copied from their URW equivalents - this will improve vertical
    centring in the pdf() and postscript() devices.
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.12.0.  The changes are almost entirely cosmetic.
  * The included LAPACK sources have been updated to version 3.12.0
    and some further double-complex routines added.
  * There are new font families for the 2014--5 URW 2.0 fonts (see
    ?pdf) which are included in recent versions of Ghostscript.
    These have font widths for most Greek glyphs and a few others
    which were missing from the original versions (whose font
    families remain available for reproducibility, although
    Ghostscript-based viewers will render using the 2.0 versions).
  * Improve the large-n efficiency of as.matrix(&lt;dist&gt;), thanks an R
    contributors effort, notably by Tim Taylor and Heather Turner,
    see PR#18660.
  * The default and numeric methods of all.equal() get a check.class
    option.
  * zapsmall() gets new optional arguments, function mFUN and min.d,
    for extra flexibility; fulfills a wish in PR#18199.  Also, it is
    now an implicit S4 generic in package methods.
  * The Rd filter for aspell() gains an ignore argument.
  * New generic function sort_by(), primarily useful for the
    data.frame method which can be used to sort rows of a data frame
    by one or more columns.
  * The icence headers for the RPC code in src/extra/xdr have been
    updated to use the GPL-compatible licence published by Oracle
    America in 2010.
  * New function pkg2HTML() in tools to create single-page HTML
    reference manuals for R packages.
  * The byte code evaluator now uses less C stack space for recursive
    calls to byte-compiled functions. It also makes more of an effort
    to avoid allocations for scalar return values.
  * New completion option backtick (disabled by default) allows
    non-syntactic completions to be wrapped in backquotes. This is
    currently only useful for Jupyter notebooks via the IRkernel
    package, and may cause problems for other backends.
  INSTALLATION:
  * The parser has been updated to work with bison 3.8.2, which is
    now used for the pre-generated parsers in gram.c, file.c, and
    gramRd.c. A few parser error messages have changed, which may
    affect code that relies on exact messages.
  INSTALLATION on a UNIX-ALIKE:
  * System valgrind headers are now required to use configure option
  - -with-valgrind-instrumentation with value 1 or 2.
  * configure will warn if it encounters a 32-bit build, as that is
    nowadays almost untested.
  * Environment variable R_SYSTEM_ABI is no longer used and so no
    longer recorded in etc/Renviron (it was not on Windows and was
    only ever used when preparing package tools).
  * If the libdeflate library and headers are available, libdeflate
    rather than libz is used to (de)compress R objects in lazy-load
    databases.  Typically tasks spend up to 5% of their time on such
    operations, although creating lazy-data databases is one of the
    exceptions.
    This can be suppressed if the library is available by the
    configure option --without-libdeflate-compression.
  * configure option --enable-lto=check has not worked reliably since
    2019 and has been removed.
  * The minimum autoconf requirement for a maintainer build has been
    increased to autoconf 2.71.
    It is intended to increase this to 2.72 for R 4.5.0: the
    distributed configure file was generated using 2.72.
  * The minimum version requirement for an external LAPACK has been
    reduced to 3.9.0.
  * No default C++ compiler is set if no C++17 compiler is detected:
    there is no longer an automatic fallback to C++14 or C++11.
    Compilers from the last five years should have sufficient
    support: for others macros CXX and CXXSTD can be set in file
    config.site to provide a fallback if needed.
    The Objective-C++ compiler now by default uses the standard
    selected by R for C++ (currently C++17) rather than the default
    standard for the C++ compiler (which on macOS is still C++98).
  INSTALLATION on macOS:
  * A new configure option --with-newAccelerate makes use of Apple's
    'new' BLAS / LAPACK interfaces in their Accelerate framework.
    Those interfaces are only available in macOS 13.3 or later, and
    building requires SDK 13.3 or later (from the Command Line Tools
    or Xcode 14.3 or later).
    By default the option uses new Accelerate for BLAS calls: to also
    use it for LAPACK use option --with-newAccelerate=lapack.  The
    later interfaces provide LAPACK 3.9.1 rather than 3.2.1: 3.9.1 is
    from 2021-04 and does not include the improved algorithms
    introduced in LAPACK 3.10.0 (including for BLAS calls).
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools44, an update of the Rtools43 toolchain.  It is
    based on GCC 13 and newer versions of MinGW-W64, binutils and
    libraries (targeting 64-bit Intel CPUs).  R-devel can no longer
    be built using Rtools43 without changes.
  * Rtools44 has experimental support for 64-bit ARM (aarch64) CPUs
    _via_ the LLVM 17 toolchain using lld, clang/flang-new and
    libc++.
  UTILITIES:
  * R CMD check notes when S4-style exports are used without
    declaring a strong dependence on package methods.
  * tools::checkRd() (used by R CMD check) detects more problems with
    \Sexpr-based dynamic content, including bad nesting of \Sexprs
    and invalid arguments.
  * tools::checkRd() now reports Rd titles and section names ending
    in a period; this is ignored by R CMD check unless environment
    variable _R_CHECK_RD_CHECKRD_MINLEVEL_ is set to -5 or smaller.
  * R CMD check now notes Rd files without an \alias, as long
    documented in 'Writing R Extensions' §1.3.1.  The check for a
    missing \description has been moved from tools::checkRd() to
    tools::checkRdContents().
  * R CMD check now visits inst/NEWS.Rd and OS-specific man
    subdirectories when checking Rd files.
  * tools::checkDocFiles() and tools::checkRdContents() now also
    check internal Rd files by default, but "specially" (ignoring
    missing documentation of arguments).
  * R CMD Rdiff gets option --useEx.
  * R CMD check now warns on non-portable uses of Fortran KIND such
    as INTEGER(KIND=4) and REAL(KIND=8).
    To see the failing lines set environment variable
    _R_CHECK_FORTRAN_KIND_DETAILS_ to a true value.
  * When checking Rd files, R CMD check now notes some of the "lost
    braces" that tools::checkRd() finds.  Typical problems are Rd
    macros missing the initial backslash (e.g., code{...}), in-text
    set notation (e.g., {1, 2}, where the braces need escaping), and
    \itemize lists with \describe-style entries of the form
    \item{label}{description}.
  * R CMD INSTALL (and hence check) will compile C++ code with
  - DR_NO_REMAP if environment variable _R_CXX_USE_NO_REMAP_ is set
    to a true value.  It is planned that this will in future become
    the default for compiling C++.
  * The new built-in Rd macro \dontdiff{} can be used to mark example
    code whose output should be ignored when comparing check output
    to reference output (tests/Examples/&lt;pkg&gt;-Ex.Rout.save).  The
    \dontdiff tag, like \donttest, is _not_ shown on the rendered
    help page, so provides a clean alternative to ##
    IGNORE_RDIFF_(BEGIN|END) comments.
  * R CMD build when there is no NAMESPACE, now uses the recommended
    exportPattern("^[^.]"), instead of exporting everything.
  * R CMD check now warns about non-ASCII characters in the NAMESPACE
    file (in addition to R files). Such packages are not portable and
    may fail to install on some platforms.
  C-LEVEL FACILITIES:
  * Headers R_ext/Applic.h and R-ext/Linpack.h used to include
    R_ext/BLAS.h although this was undocumented and unneeded by their
    documented entry points.  They no longer do so.
  * New function R_missing(), factored out from do_missing(), used to
    fix PR#18579.
  * SEXP type S4SXP has been renamed to OBJSXP to support
    experimenting with alternative object systems.  The S4SXP value
    can still be used in C code but is now deprecated.  Based on
    contributions from the R Consortium's Object-Oriented Programming
    Working Group.
  * New function pow1p(x,y) for accurate (1+x)^y.
  * mkCharLenCE was incorrectly documented to take a size_t length
    but was implemented with int (and character strings in R are
    limited to 2^31 - 1 bytes).
  DEPRECATED AND DEFUNCT:
  * data() no longer handles zipped data from long-defunct (since R
    2.13.0) --use-zip-data installations.
  * The legacy graphics devices pictex() and xfig() are now
    deprecated.  They do not support recent graphics enhancements and
    their font handling is rudimentary. The intention is to retain
    them for historical interest as long as they remain somewhat
    functional.
  * Support for encoding = "MacRoman" has been removed from the pdf()
    and postscript() devices - this was a legacy encoding supporting
    classic macOS up to 2001 and no longer has universal libiconv
    support.
  * is.R() is deprecated as no other S dialect is known to be in use
    (and this could only identify historical dialects, not future
    ones).
    Further information on calls can be obtained by setting the
    environment variable _R_DEPRECATED_IS_R_ to error which turns the
    deprecation warning into an error and so by default gives a
    traceback.  (This is done by R CMD check --as-cran.)
  * UseMethod() no longer forwards local variables assigned in the
    generic function into method call environments before evaluating
    the method body. This makes method calls behave more like
    standard function calls and makes method code easier to analyze
    correctly.
  * The twelve as.data.frame.&lt;class&gt;() methods which were deprecated
    only via _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ and in R CMD
    check --as-cran are formally deprecated now in favour of calling
    as.data.frame() or as.data.frame.vector().  The deprecation
    "check" now works also when as.data.frame() is S4 generic thanks
    to Ivan Krylov.
  * The default method for the directional comparison operators &lt;, &gt;,
    &lt;=, and &gt;= now signals an error when one of the operands is a
    language object, i.e. a symbol or a call.
  * For terms.formula(), deprecate abb and neg.out arguments
    _formally_ in addition to just documenting it.
  BUG FIXES:
  * The methods package is more robust to not being attached to the
    search path.  More work needs to be done.
  * pairwise.t.test() misbehaved when subgroups had 0 DF for
    variance, even with pool.sd = TRUE.  (PR#18594 by Jack Berry).
  * Probability distribution functions [dpq]&lt;distrib&gt;(x, *), but also
    bessel[IKJY](x, .) now consistently preserve attributes(x) when
    length(x) == 0, e.g., for a 2 x 0 matrix, thanks to Karolis
    Koncevičius' report PR#18509.
  * Group "Summary" computations such as sum(1:3, 4, na.rm = 5, NA,
    7, na.rm = LL) now give an error instead of either 17 or NN for
    LL true or false, as proposed by Ivan Krylov on the R-devel
    mailing list.  (This also means it is now an error to specify
    na.rm more than once.)
  * as.complex(x) now returns complex(real = x, imaginary = 0) for
    _all_ numerical and logical x, notably also for NA or
    NA_integer_.
  * Directories are now omitted by file.copy(, recursive = FALSE) and
    in file.append() (PR#17337).
  * gsub() and sub() are now more robust to integer overflow when
    reporting errors caused by too large input strings (PR#18346).
  * Top-level handlers are now more robust to attempts to remove a
    handler whilst handlers are running (PR#18508).
  * The handling of Alt+F4 in dialogs created on Windows using
    GraphApp has been fixed (PR#13870).
  * density() more consistently computes grid values for the
    FFT-based convolution, following Robert Schlicht's analysis and
    proposal in PR#18337, correcting density values typically by a
    factor of about 0.999.  Argument old.coords = TRUE provides back
    compatibility.
  * palette.colors() gains a name argument that defaults to FALSE
    controlling whether the vector of colours that is returned has
    names (where possible).  PR#18529.
  * tools::xgettext() no longer extracts the (non-translatable) class
    names from warningCondition and errorCondition calls.
  * S3method(&lt;gen&gt;, &lt;class&gt;, &lt;func&gt;) in the NAMESPACE file now works
    (again) when &lt;func&gt; is visible from the namespace, e.g.,
    imported, or in base.
  * getParseData(f) now also works for a function defined in the
    first of several &lt;pkg&gt;/R/*.R source files, thanks to Kirill
    Müller's report and Duncan Murdoch's patch in PR#16756.
  * Rd \Sexpr macros with nested #ifdef conditionals were not
    processed.
  * A non-blocking connection with non-default encoding (such as a
    socket) now correctly returns from readLines() after new data has
    arrived also when its EOF had been reached previously.  Thanks to
    Peter Meilstrup's report on R-devel and Ivan Krylov's report and
    patch proposal in PR#18555.
  * tools::checkRdContents() failed to detect empty argument
    descriptions when they spanned multiple lines, including those
    generated by prompt().  These cases are now noted by R CMD check.
  * Plain-text help no longer outputs spurious colons in the
    arguments list (for multi-line \item labels in the Rd source).
  * kappa() and rcond() work correctly in more cases; kappa(., norm =
    "2") now warns that it computes the 1-norm with (default) exact =
    FALSE; prompted by Mikael Jagan's quite comprehensive PR#18543.
  * Rd skeletons generated by prompt() or promptData() now use a
    dummy title (so R CMD build works).  tools::checkRdContents() has
    been updated to detect such template leftovers, including from
    promptPackage().
  * When S4 method dispatch fails because no method was found, the
    error message now includes the signature argument names; thanks
    to Michael Chirico's proposal on the R-devel list.
  * withAutoprint({ .. }) now preserves srcrefs previously lost,
    thanks to Andrew Simmons' report plus fix in PR#18572.
  * transform.data.frame() no longer adjusts names; in particular,
    untransformed variables are kept as-is, including those with
    syntactically invalid names (PR#17890).
  * The keep.source option for Rd \Sexpr blocks is no longer ignored.
  * The formula methods for t.test() and wilcox.test() now catch when
    paired is passed, addressing PR#14359; use Pair(x1, x2) ~ 1 for a
    paired test.
  * The level reported in the browser prompt was often too large. It
    now shows the number of browser contexts on the stack.
  * For cbind() and rbind(), the optional deparse.level argument is
    now properly passed to methods, thanks to Mikael Jagan's PR#18579
    and comments there.
  * Some error and warning messages for large ('long vector')
    matrix(v, nr, nc) and dim(m) &lt;- d are now correct about sizes,
    using long long formatting, fixing PR#18612 (and more) reported
    by Mikael Jagan.
  * readChar(useBytes = TRUE) now terminates strings even when the
    underlying connection uses extra spaces in the input buffer.
    This fixes problems with extra garbage seen with gzip
    connections, PR#18605.
  * Named capture in PCRE regular expressions now works also with
    more than 127 named groups (PR#18588).
  * Datetime functions are now robust against long jumps when dealing
    with internal time zone changes.  This avoids confusing warnings
    about an invalid time zone, previously triggered by turning
    warnings into errors or handling them via tryCatch (PR#17966,
    PR#17780).
  * Datetime functions now restore even an empty TZ environment
    variable after internal time zone changes (PR#17724).  This makes
    results of datetime functions with this (typically unintentional)
    setting more predictable.
  * drop.terms(*) now drops response as by default, keep.response =
    FALSE, fixing PR#18564 thanks to Mikael Jagan.
  * dummy.coef(.) now also works for lm()-models with character
    categorical predictor variables rather than factor ones, fixing
    PR#18635 reported by Jinsong Zhao.
  * formals(f) &lt;- formals(f) now also works for a function w/o
    arguments and atomic _constant_ body(f).
  * Correct as.function(&lt;invalid list&gt;, .)'s error message.
  * removeSource() is yet more thorough in finding and removing
    "srcref" and the other source references from parsed R language
    chunks, fixing PR#18638 thanks to Andrew Simmons.
  * dgeom() is more accurate now, notably when its result is very
    small, fixing PR#18642 thanks to the proposal of Morten Welinder,
    also improving other instances where C level binom_raw(x, n, ..)
    has x == 0 or x== n.
  * warning() with options(warn = 1) has improved output for
    multi-line messages.
  * axis.Date() and axis.POSIXct() now respect the par("lab") setting
    for the number of pretty() intervals.
  * Comparisons for language objects (which are based on deparsing)
    are now more careful about using accurate deparsed results
    (PR#18676).
  * Plain-text help (Rd2txt) now correctly preserves blank lines
    following single-line \dontrun code.
  * &lt;POSIXlt&gt;[*] no longer sets wrong "balanced" attribute, fixing
    PR#18681 thanks to Mikael Jagan.
  * str(&lt;classed-call&gt;) now deparses the call as expected, fixing
    PR#18684, reported by Dave Slager.
  * In Rd examples, code following the closing brace of a \dontrun,
    \dontshow or \donttest tag on the same line is no longer skipped
    when R CMD check runs the examples.
  * as.data.frame(matrix(*, ncol=0)) now gets valid names() and
    colnames(); reported by Davis Vaughan on the R-devel list.
  * Internal Mathlib function stirlerr(n) is now almost fully
    (52-bit) accurate for all n &gt;= ~5.9 and more accurate also in the
    range 1 -- 5.9.  This entails small ("after 12th decimal")
    changes in density functions, e.g., dgamma() in _some_ regions of
    their support.  The fix was partly prompted by Morten Welinder's
    PR#18640.
  * Numbers like 9876543.2 are now considered non-integer by Mathlib
    internal R_nonint(), amending original fix of PR#15734.
  * Rd comment lines no longer cause broken paragraphs in the
    rendered PDF and plain-text help. In code blocks, pure comment
    lines (starting with %) no longer produce an empty line.
  * xtabs(Freq ~ .) now consistently defaults to na.action = na.pass,
    using na.rm = FALSE (added as an argument) when summing over Freq
    (PR#17770).
  * tools::testInstalledPackage() is no longer silent about failures
    from running examples or tests and its return code no longer
    ignores failures from checking vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1718366400">- CHANGES IN R 4.4.1:
  C-LEVEL FACILITIES:
  * Functions R_atof and R_strtod declared in header R_ext/Utils.h
    are now documented in 'Writing R Extensions' and so formally part
    of the API.
  * The non-API entry points Rf_setSVector, Rf_StringFalse,
    Rf_StringTrue and Rf_isBlankString have been added to those
    reported by R CMD check.
  * The new function Rf_allocLang is now available. This provides an
    alternative to the idiom of calling Rf_allocList followed by
    SET_TYPEOF.
  UTILITIES:
  * R CMD check now reports as warnings what gfortran calls 'Fortran
    2018 deleted features', all of which have long been marked as
    'obsolescent' and some of which were deleted in Fortran 2008 or
    earlier.  Fortran compilers are no longer required to support
    these.
  BUG FIXES:
  * as.numeric(), scan(), type.convert() and other places which use
    the internal C function R_strtod now require a _non-empty_ digit
    sequence in a decimal or binary exponent.  This aligns with the
    C/POSIX standard for strtod and with ?NumericConstants.
  * as.data.frame(m, make.names=NA) now works correctly for a matrix
    m with NA's in row names.
  * The error message from &lt;POSIXlt&gt;[["hour"]] and similar now
    mentions *[[, "hour"]], as wished for in PR#17409 and proposed by
    Michael Chirico.
  * qbinom() and potentially qpois(), qnbinom(), no longer sometimes
    fail accurate inversion (of pbinom(), etc), thanks to Christopher
    Chang's report and patch in PR#18711.
  * The internal help server on Windows can again serve requests sent
    in quick succession, fixing a regression in R 4.4.0.
  * debugcall(&lt;S3Generic&gt;()) now also works when a corresponding
    S4-generic version is in the methods cache (PR#18143).
  * Package tools' toTitleCase(ch0) now returns character(0) when ch0
    is of zero length; fixing PR#18724, reported by David Hugh Jones.
  * R CMD check is no longer broken (without a check result and no
    explanation in 00check.log) for a package which declares an
    invalid VignetteBuilder in DESCRIPTION but has no vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1730376000">- CHANGES IN R 4.4.2:
  C-LEVEL FACILITIES:
  * The S-compatibility macros F77_COM and F77_COMDECL defined in
    header R_ext/RS.h are deprecated and will be removed shortly.  We
    could find no record of their use.
  BUG FIXES:
  * Mathlib function lgammacor(x) no longer warns about underflow to
    zero for large x.
  * Text widths and heights were incorrectly reported by the Quartz
    device if the drawing context didn't exist yet (typically when
    drawing off-screen to a window that is yet to appear, see
    PR#18591).
  * The Quartz device could segfault in cases where paths with spaces
    are used in the new glyph drawing API.  Thanks to Tomek
    Gieorgijewski (PR#18758).
  * On macOS in R CRAN builds, it is again possible to read
    little-endian UTF-16 text with a BOM from a connection using
    encoding="UTF-16".  Users building R from source should avoid
    using the system libiconv in macOS 14.1 and later.
  * methods' internal .requirePackage() now re-enables primitive
    method dispatch when needed; thanks to Ivan Krylov for
    demystifying CRAN package check failures on the R-devel mailing
    list.</changelog>
</package>
<package pkgid="461573ac8e38843fb08043f7d0acf13d90e5f4fd66b049191090c6c85a068921169d371f892a5ab01e37b0958ebcd87a9506abd6843de85411555de465a8de92" name="R-methods-debuginfo" arch="i586">
  <version epoch="0" ver="4.4.2" rel="51.0.2.2.sr20241103"/>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1620302400">- To get in sync with d:l:R:autoCRAN the Matrix package's split
  in -devel was reversed.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339200">- improved spec file according to comments of dimstar in
  https://build.opensuse.org/request/show/892685</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339201">- CHANGES IN R 4.1.0:
  FUTURE DIRECTIONS:
  * It is planned that the 4.1.x series will be the last to support
    32-bit Windows, with production of binary packages for that
    series continuing until early 2023.
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Data set esoph in package datasets now provides the correct
    numbers of controls; previously it had the numbers of cases added
    to these.  (Reported by Alexander Fowler in PR#17964.)
  NEW FEATURES:
  * www.omegahat.net is no longer one of the repositories known by
    default to setRepositories().  (Nowadays it only provides source
    packages and is often unavailable.)
  * Function package_dependencies() (in package tools) can now use
    different dependency types for direct and recursive dependencies.
  * The checking of the size of tarball in R CMD check --as-cran
    &lt;pkg&gt; may be tweaked via the new environment variable
    _R_CHECK_CRAN_INCOMING_TARBALL_THRESHOLD_, as suggested in
    PR#17777 by Jan Gorecki.
  * Using c() to combine a factor with other factors now gives a
    factor, an ordered factor when combining ordered factors with
    identical levels.
  * apply() gains a simplify argument to allow disabling of
    simplification of results.
  * The format() method for class "ftable" gets a new option justify.
    (Suggested by Thomas Soeiro.)
  * New ...names() utility.  (Proposed by Neal Fultz in PR#17705.)
  * type.convert() now warns when its as.is argument is not
    specified, as the help file always said it _should_.  In that
    case, the default is changed to TRUE in line with its change in
    read.table() (related to stringsAsFactor) in R 4.0.0.
  * When printing list arrays, classed objects are now shown _via_
    their format() value if this is a short enough character string,
    or by giving the first elements of their class vector and their
    length.
  * capabilities() gets new entry "Rprof" which is TRUE when R has
    been configured with the equivalent of --enable-R-profiling (as
    it is by default).  (Related to Michael Orlitzky's report
    PR#17836.)
  * str(xS4) now also shows extraneous attributes of an S4 object
    xS4.
  * Rudimentary support for vi-style tags in rtags() and R CMD rtags
    has been added.  (Based on a patch from Neal Fultz in PR#17214.)
  * checkRdContents() is now exported from tools; it and also
    checkDocFiles() have a new option chkInternal allowing to check
    Rd files marked with keyword "internal" as well.  The latter can
    be activated for R CMD check via environment variable
    _R_CHECK_RD_INTERNAL_TOO_.
  * New functions numToBits() and numToInts() extend the raw
    conversion utilities to (double precision) numeric.
  * Functions URLencode() and URLdecode() in package utils now work
    on vectors of URIs.  (Based on patch from Bob Rudis submitted
    with PR#17873.)
  * path.expand() can expand ~user on most Unix-alikes even when
    readline is not in use.  It tries harder to expand ~, for example
    should environment variable HOME be unset.
  * For HTML help (both dynamic and static), Rd file links to help
    pages in external packages are now treated as references to
    topics rather than file names, and fall back to a file link only
    if the topic is not found in the target package. The earlier rule
    which prioritized file names over topics can be restored by
    setting the environment variable _R_HELP_LINKS_TO_TOPICS_ to a
    false value.
  * c() now removes NULL arguments before dispatching to methods,
    thus simplifying the implementation of c() methods, _but_ for
    back compatibility keeps NULL when it is the first argument.
    (From a report and patch proposal by Lionel Henry in PR#17900.)
  * Vectorize()'s result function's environment no longer keeps
    unneeded objects.
  * Function ...elt() now propagates visibility consistently with
    ..n.  (Thanks to Lionel Henry's PR#17905.)
  * capture.output() no longer uses non-standard evaluation to
    evaluate its arguments.  This makes evaluation of functions like
    parent.frame() more consistent.  (Thanks to Lionel Henry's
    PR#17907.)
  * packBits(bits, type="double") now works as inverse of
    numToBits().  (Thanks to Bill Dunlap's proposal in PR#17914.)
  * curlGetHeaders() has two new arguments, timeout to specify the
    timeout for that call (overriding getOption("timeout")) and TLS
    to specify the minimum TLS protocol version to be used for
    https:// URIs (_inter alia_ providing a means to check for sites
    using deprecated TLS versions 1.0 and 1.1).
  * For nls(), an optional constant scaleOffset may be added to the
    denominator of the relative offset convergence test for cases
    where the fit of a model is expected to be exact, thanks to a
    proposal by John Nash.  nls(*, trace=TRUE) now also shows the
    convergence criterion.
  * Numeric differentiation _via_ numericDeriv() gets new optional
    arguments eps and central, the latter for taking central divided
    differences.  The latter can be activated for nls() via
    nls.control(nDcentral = TRUE).
  * nls() now passes the trace and control arguments to getInitial(),
    notably for all self-starting models, so these can also be fit in
    zero-noise situations via a scaleOffset.  For this reason, the
    initial function of a selfStart model must now have ... in its
    argument list.
  * bquote(splice = TRUE) can now splice expression vectors with
    attributes: this makes it possible to splice the result of
    parse(keep.source = TRUE).  (Report and patch provided by Lionel
    Henry in PR#17869.)
  * textConnection() gets an optional name argument.
  * get(), exists(), and get0() now signal an error if the first
    argument has length greater than 1.  Previously additional
    elements were silently ignored.  (Suggested by Antoine Fabri on
    R-devel.)
  * R now provides a shorthand notation for creating functions, e.g.
    \(x) x + 1 is parsed as function(x) x + 1.
  * R now provides a simple native forward pipe syntax |&gt;.  The
    simple form of the forward pipe inserts the left-hand side as the
    first argument in the right-hand side call.  The pipe
    implementation as a syntax transformation was motivated by
    suggestions from Jim Hester and Lionel Henry.
  * all.equal(f, g) for functions now by default also compares their
    environment(.)s, notably via new all.equal method for class
    function.  Comparison of nls() fits, e.g., may now need
    all.equal(m1, m2, check.environment = FALSE).
  * .libPaths() gets a new option include.site, allowing to _not_
    include the site library.  (Thanks to Dario Strbenac's suggestion
    and Gabe Becker's PR#18016.)
  * Lithuanian translations are now available.  (Thanks to Rimantas
    Zakauskas.)
  * names() now works for DOTSXP objects.  On the other hand, in
    R-lang, the R language manual, we now warn against relying on the
    structure or even existence of such dot-dot-dot objects.
  * all.equal() no longer gives an error on DOTSXP objects.
  * capabilities("cairo") now applies only to the file-based devices
    as it is now possible (if very unusual) to build R with Cairo
    support for those but not for X11().
  * There is optional support for tracing the progress of
    loadNamespace() - see its help.
  * (Not Windows.)  l10n_info() reports an additional element, the
    name of the encoding as reported by the OS (which may differ from
    the encoding part (if any) of the result from
    Sys.getlocale("LC_CTYPE").
  * New function gregexec() which generalizes regexec() to find _all_
    disjoint matches and well as all substrings corresponding to
    parenthesized subexpressions of the given regular expression.
    (Contributed by Brodie Gaslam.)
  * New function charClass() in package utils to query the
    wide-character classification functions in use (such as
    iswprint).
  * The names of quantile()'s result no longer depend on the global
    getOption("digits"), but quantile() gets a new optional argument
    digits = 7 instead.
  * grep(), sub(), regexp and variants work considerably faster for
    long factors with few levels.  (Thanks to Michael Chirico's
    PR#18063.)
  * Provide grouping of x11() graphics windows within a window
    manager such as Gnome or Unity; thanks to a patch by Ivan Krylov
    posted to R-devel.
  * The split() method for class data.frame now allows the f argument
    to be specified as a formula.
  * sprintf now warns on arguments unused by the format string.
  * New palettes "Rocket" and "Mako" for hcl.colors() (approximating
    palettes of the same name from the 'viridisLite' package).
    Contributed by Achim Zeileis.
  * The base environment and its namespace are now locked (so one can
    no longer add bindings to these or remove from these).
  * Rterm handling of multi-byte characters has been improved,
    allowing use of such characters when supported by the current
    locale.
  * Rterm now accepts ALT+ +xxxxxxxx sequences to enter Unicode
    characters as hex digits.
  * Environment variable LC_ALL on Windows now takes precedence over
    LC_CTYPE and variables for other supported categories, matching
    the POSIX behaviour.
  * duplicated() and anyDuplicated() are now optimized for integer
    and real vectors that are known to be sorted via the ALTREP
    framework. Contributed by Gabriel Becker via PR#17993.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 14
    and so packages that provide graphics devices should be
    reinstalled.
  * Graphics devices should now specify deviceVersion to indicate
    what version of the graphics engine they support.
  * Graphics devices can now specify deviceClip.  If TRUE, the
    graphics engine will never perform any clipping of output itself.
    The clipping that the graphics engine does perform (for both
    canClip = TRUE and canClip = FALSE) has been improved to avoid
    producing unnecessary artifacts in clipped output.
  * The grid package now allows gpar(fill) to be a linearGradient(),
    a radialGradient(), or a pattern().  The viewport(clip) can now
    also be a grob, which defines a clipping path, and there is a new
    viewport(mask) that can also be a grob, which defines a mask.
    These new features are only supported so far on the Cairo-based
    graphics devices and on the pdf() device.
  * (Not Windows.)  A warning is given when a Cairo-based type is
    specified for a png(), jpeg(), tiff() or bmp() device but Cairo
    is unsupported (so type = "Xlib" is tried instead).
  * grSoftVersion() now reports the versions of FreeType and
    FontConfig if they are used directly (not _via_ Pango), as is
    most commonly done on macOS.
  C-LEVEL FACILITIES:
  * The _standalone_ libRmath math library and R's C API now provide
    log1pexp() again as documented, and gain log1mexp().
  INSTALLATION on a UNIX-ALIKE:
  * configure checks for a program pkgconf if program pkg-config is
    not found.  These are now only looked for on the path (like
    almost all other programs) so if needed specify a full path to
    the command in PKG_CONFIG, for example in file config.site.
  * C99 function iswblank is required - it was last seen missing ca
    2003 so the workaround has been removed.
  * There are new configure options --with-internal-iswxxxxx,
  - -with-internal-towlower and --with-internal-wcwidth which allows
    the system functions for wide-character classification,
    case-switching and width (wcwidth and wcswidth) to be replaced by
    internal ones.  The first has long been used on macOS, AIX (and
    Windows) but this enables it to be unselected there and selected
    for other platforms (it is the new default on Solaris).  The
    second is new in this version of R and is selected by default on
    macOS and Solaris.  The third has long been the default and
    remains so as it contains customizations for East Asian
    languages.
    System versions of these functions are often minimally
    implemented (sometimes only for ASCII characters) and may not
    cover the full range of Unicode points: for example Solaris (and
    Windows) only cover the Basic Multilingual Plane.
  * Cairo installations without X11 are more likely to be detected by
    configure, when the file-based Cairo graphics devices will be
    available but not X11(type = "cairo").
  * There is a new configure option --with-static-cairo which is the
    default on macOS.  This should be used when only static cairo
    (and where relevant, Pango) libraries are available.
  * Cairo-based graphics devices on platforms without Pango but with
    FreeType/FontConfig will make use of the latter for font
    selection.
  LINK-TIME OPTIMIZATION on a UNIX-ALIKE:
  * Configuring with flag --enable-lto=R now also uses LTO when
    installing the recommended packages.
  * R CMD INSTALL and R CMD SHLIB have a new flag --use-LTO to use
    LTO when compiling code, for use with R configured with
  - -enable-lto=R.  For R configured with --enable-lto, they have
    the new flag --no-use-LTO.
    Packages can opt in or out of LTO compilation _via_ a UseLTO
    field in the DESCRIPTION file.  (As usual this can be overridden
    by the command-line flags.)
  BUILDING R on Windows:
  * for GCC &gt;= 8, FC_LEN_T is defined in config.h and hence character
    lengths are passed from C to Fortran in _inter alia_ BLAS and
    LAPACK calls.
  * There is a new text file src/gnuwin32/README.compilation, which
    outlines how C/Fortran code compilation is organized and
    documents new features:
  * R can be built with Link-Time Optimization with a suitable
    compiler - doing so with GCC 9.2 showed several
    inconsistencies which have been corrected.
  * There is support for cross-compiling the C and Fortran code
    in R and standard packages on suitable (Linux) platforms.
    This is mainly intended to allow developers to test later
    versions of compilers - for example using GCC 9.2 or 10.x has
    detected issues that GCC 8.3 in Rtools40 does not.
  * There is experimental support for cross-building R packages
    with C, C++ and/or Fortran code.
  * The R installer can now be optionally built to support a single
    architecture (only 64-bit or only 32-bit).
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++14 where
    available (which it is on all currently checked platforms): if
    not (as before) C++11 is used if available otherwise C++ is not
    supported.
    Packages which specify C++11 will still be installed using C++11.
    C++14 compilers may give deprecation warnings, most often for
    std::random_shuffle (deprecated in C++14 and removed in C++17).
    Either specify C++11 (see 'Writing R Extensions') or modernize
    the code and if needed specify C++14.  The latter has been
    supported since R 3.4.0 so the package's DESCRIPTION would need
    to include something like
    Depends: R (&gt;= 3.4)
  PACKAGE INSTALLATION on Windows:
  * R CMD INSTALL and R CMD SHLIB make use of their flag --use-LTO
    when the LTO_OPT make macro is set in file etc/${R_ARCH}/Makeconf
    or in a personal/site Makevars file.  (For details see 'Writing R
    Extensions' SS4.5.)
    This provides a valuable check on code consistency.  It does work
    with GCC 8.3 as in Rtools40, but that does not detect everything
    the CRAN checks with current GCC do.
  PACKAGE INSTALLATION on macOS:
  * The default personal library directory on builds with
  - -enable-aqua (including CRAN builds) now differs by CPU type,
    one of
    ~/Library/R/x86_64/x.y/library
    ~/Library/R/arm64/x.y/library
    This uses the CPU type R (and hence the packages) were built for,
    so when a x86_64 build of R is run under Rosetta emulation on an
    arm64 Mac, the first is used.
  UTILITIES:
  * R CMD check can now scan package functions for bogus return
    statements, which were possibly intended as return() calls (wish
    of PR#17180, patch by Sebastian Meyer). This check can be
    activated via the new environment variable
    _R_CHECK_BOGUS_RETURN_, true for --as-cran.
  * R CMD build omits tarballs and binaries of previous builds from
    the top-level package directory.  (PR#17828, patch by Sebastian
    Meyer.)
  * R CMD check now runs sanity checks on the use of LazyData, for
    example that a data directory is present and that
    LazyDataCompression is not specified without LazyData and has a
    documented value.  For packages with large LazyData databases
    without specifying LazyDataCompression, there is a reference to
    the code given in 'Writing R Extensions' SS1.1.6 to test the
    choice of compression (as in all the CRAN packages tested a
    non-default method was preferred).
  * R CMD build removes LazyData and LazyDataCompression fields from
    the DESCRIPTION file of packages without a data directory.
  ENCODING-RELATED CHANGES:
  * The parser now treats \Unnnnnnnn escapes larger than the upper
    limit for Unicode points (\U10FFFF) as an error as they cannot be
    represented by valid UTF-8.
    Where such escapes are used for outputting non-printable
    (including unassigned) characters, 6 hex digits are used (rather
    than 8 with leading zeros).  For clarity, braces are used, for
    example \U{0effff}.
  * The parser now looks for non-ASCII spaces on Solaris (as
    previously on most other OSes).
  * There are warnings (including from the parser) on the use of
    unpaired surrogate Unicode points such as \uD834.  (These cannot
    be converted to valid UTF-8.)
  * Functions nchar(), tolower(), toupper() and chartr() and those
    using regular expressions have more support for inputs with a
    marked Latin-1 encoding.
  * The character-classification functions used (by default) to
    replace the system iswxxxxx functions on Windows, macOS and AIX
    have been updated to Unicode 13.0.0.
    The character-width tables have been updated to include new
    assignments in Unicode 13.0.0.
  * The code for evaluating default (extended) regular expressions
    now uses the same character-classification functions as the rest
    of R (previously they differed on Windows, macOS and AIX).
  * There is a build-time option to replace the system's
    wide-character wctrans C function by tables shipped with R: use
    configure option --with-internal-towlower or (on Windows)
  - DUSE_RI18N_CASE in CFLAGS when building R.  This may be needed
    to allow tolower() and toupper() to work with Unicode characters
    beyond the Basic Multilingual Plane where not supported by system
    functions (e.g. on Solaris where it is the new default).
  * R is more careful when truncating UTF-8 and other multi-byte
    strings that are too long to be printed, passed to the system or
    libraries or placed into an internal buffer.  Truncation will no
    longer produce incomplete multibyte characters.
  DEPRECATED AND DEFUNCT:
  * Function plclust() from the package stats and
    package.dependencies(), pkgDepends(), getDepList(),
    installFoundDepends(), and vignetteDepends() from package tools
    are defunct.
  * Defunct functions checkNEWS() and readNEWS() from package tools
    and CRAN.packages() from utils have been removed.
  * R CMD config CXXCPP is defunct (it was deprecated in R 3.6.2).
  * parallel::detectCores() drops support for Irix (retired in 2013).
  * The LINPACK argument to chol.default(), chol2inv(),
    solve.default() and svd() has been defunct since R 3.1.0.  It was
    silently ignored up to R 4.0.3 but now gives an error.
  * Subsetting/indexing, such as ddd[*] or ddd$x on a DOTSXP
    (dot-dot-dot) object ddd has been disabled; it worked by accident
    only and was undocumented.
  BUG FIXES:
  * Many more C-level allocations (mainly by malloc and strdup) are
    checked for success with suitable alternative actions.
  * Bug fix for replayPlot(); this was turning off graphics engine
    display list recording if a recorded plot was replayed in the
    same session.  The impact of the bug became visible if resize the
    device after replay OR if attempted another savePlot() after
    replay (empty display list means empty screen on resize or empty
    saved plot).
  * R CMD check etc now warn when a package exports non-existing S4
    classes or methods, also in case of no "methods" presence.
    (Reported by Alex Bertram; reproducible example and patch by
    Sebastian Meyer in PR#16662.)
  * boxplot() now also accepts calls for labels such as ylab, the
    same as plot().  (Reported by Marius Hofert.)
  * The help page for xtabs() now correctly states that addNA is
    setting na.action = na.pass among others.  (Reported as PR#17770
    by Thomas Soeiro.)
  * The R CMD check &lt;pkg&gt; gives a longer and more comprehensible
    message when DESCRIPTION misses dependencies, e.g., in Imports:.
    (Thanks to the contributors of PR#17179.)
  * update.default() now calls the generic update() on the formula to
    work correctly for models with extended formulas.  (As reported
    and suggested by Neal Fultz in PR#17865.)
  * The horizontal position of leaves in a dendrogram is now correct
    also with center = FALSE.  (PR#14938, patch from Sebastian
    Meyer.)
  * all.equal.POSIXt() no longer warns about and subsequently ignores
    inconsistent "tzone" attributes, but describes the difference in
    its return value (PR#17277).  This check can be disabled _via_
    the new argument check.tzone = FALSE as suggested by Sebastian
    Meyer.
  * as.POSIXct() now populates the "tzone" attribute from its tz
    argument when x is a logical vector consisting entirely of NA
    values.
  * x[[2^31]] &lt;- v now works.  (Thanks to the report and patch by
    Suharto Anggono in PR#17330.)
  * In log-scale graphics, axis() ticks and label positions are now
    computed more carefully and symmetrically in their range,
    typically providing _more_ ticks, fulfilling wishes in PR#17936.
    The change really corresponds to an improved axisTicks() (package
    grDevices), potentially influencing grid and lattice, for
    example.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now correct to at
    least five digits where it was catastrophically wrong,
    previously.
  * sum(df) and similar "Summary"- and "Math"-group member functions
    now work for data frames df with logical columns, notably also of
    zero rows.  (Reported to R-devel by Martin "b706".)
  * unsplit() had trouble with tibbles due to unsound use of rep(NA,
    len)-indexing, which should use NA_integer_ (Reported to R-devel
    by Mario Annau.)
  * pnorm(x, log.p = TRUE) underflows to -Inf slightly later.
  * show(&lt;hidden S4 generic&gt;) prints better and without quotes for
    non-hidden S4 generics.
  * read.table() and relatives treated an "NA" column name as missing
    when check.names = FALSE PR#18007.
  * Parsing strings containing UTF-16 surrogate pairs such as
    "\uD834\uDD1E" works better on some (uncommon) platforms.
    sprintf("%X", utf8ToInt("\uD834\uDD1E")) should now give "1D11E"
    on all platforms.
  * identical(x,y) is no longer true for differing DOTSXP objects,
    fixing PR#18032.
  * str() now works correctly for DOTSXP and related exotics, even
    when these are doomed.
    Additionally, it no longer fails for lists with a class and
    "irregular" method definitions such that e.g. lapply(*) will
    necessarily fail, as currently for different igraph objects.
  * Too long lines in environment files (e.g. Renviron) no longer
    crash R. This limit has been increased to 100,000 bytes.
    (PR#18001.)
  * There is a further workaround for FreeType giving incorrect
    italic font faces with cairo-based graphics devices on macOS.
  * add_datalist(*, force = TRUE) (from package tools) now actually
    updates an existing data/datalist file for new content.  (Thanks
    to a report and patch by Sebastian Meyer in PR#18048.)
  * cut.Date() and cut.POSIXt() could produce an empty last interval
    for breaks = "months" or breaks = "years".  (Reported as PR#18053
    by Christopher Carbone.)
  * Detection of the encoding of 'regular' macOS locales such as
    en_US (which is UTF-8) had been broken by a macOS change:
    fortunately these are now rarely used with en_US.UTF-8 being
    preferred.
  * sub() and gsub(pattern, repl, x, *) now keep attributes of x such
    as names() also when pattern is NA (PR#18079).
  * Time differences ("difftime" objects) get a replacement and a
    rep() method to keep "units" consistent.  (Thanks to a report and
    patch by Nicolas Bennett in PR#18066.)
  * The \RdOpts macro, setting defaults for \Sexpr options in an Rd
    file, had been ineffective since R 2.12.0: it now works again.
    (Thanks to a report and patch by Sebastian Meyer in PR#18073.)
  * mclapply and pvec no longer accidentally terminate parallel
    processes started before by mcparallel or related calls in
    package parallel (PR#18078).
  * grep and other functions for evaluating (extended) regular
    expressions handle in Unicode also strings not explicitly flagged
    UTF-8, but flagged native when running in UTF-8 locale.
  * Fixed a crash in fifo implementation on Windows (PR#18031).
  * Binary mode in fifo on Windows is now properly detected from
    argument open (PR#15600, PR#18031).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1622808000">- The line %{__install} -m 755 -d %{_infodir}
  no longer works in TW or Factory.
  But without that line it works everywhere. So this instruction
  was commented out of the spec file.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1628596800">- CHANGES IN R 4.1.1:
  NEW FEATURES:
  * require(pkg, quietly = TRUE) is quieter and in particular does
    not warn if the package is not found.
  DEPRECATED AND DEFUNCT:
  * Use of ftp:// URIs should be regarded as deprecated, with
    on-going support confined to method = "libcurl" and not routinely
    tested.  (Nowadays no major browser supports them.)
  * The non-default method = "internal" is deprecated for http:// and
    ftp:// URIs for both download.file and url.
  * On Windows, method = "wininet" is deprecated for http://,
    https:// and ftp:// URIs for both download.file and url.  (A
    warning is only given for ftp://.)
    For ftp:// URIs the default method is now "libcurl" if available
    (which it is on CRAN builds).
    method = "wininet" remains the default for http:// and https://
    URIs but if libcurl is available, using method = "libcurl" is
    preferred.
  INSTALLATION:
  * make check now works also without a LaTeX installation.  (Thanks
    to Sebastian Meyer's PR#18103.)
  BUG FIXES:
  * make check-devel works again in an R build configured with
  - -without-recommended-packages.
  * qnbinom(p, size, mu) for large size/mu is correct now in a range
    of cases (PR#18095); similarly for the (size, prob)
    parametrization of the negative binomial.  Also qpois() and
    qbinom() are better and or faster for extreme cases.  The
    underlying C code has been modularized and is common to all four
    cases of discrete distributions.
  * gap.axis is now part of the axis() arguments which are passed
    from bxp(), and hence boxplot().  (Thanks to Martin Smith's
    report and suggestions in PR#18109.)
  * .First and .Last can again be set from the site profile.
  * seq.int(from, to, *) and seq.default(..) now work better in large
    range cases where from-to is infinite where the two boundaries
    are finite.
  * all.equal(x,y) now returns TRUE correctly also when several
    entries of abs(x) and abs(y) are close to .Machine$double.xmax,
    the largest finite numeric.
  * model.frame() now clears the object bit when removing the class
    attribute of a value via na.action (PR#18100).
  * charClass() now works with multi-character strings on Windows
    (PR#18104, fixed by Bill Dunlap).
  * encodeString() on Solaris now works again in Latin-1 encoding on
    characters represented differently in UTF-8.  Support for
    surrogate pairs on Solaris has been improved.
  * file.show() on Windows now works with non-ASCII path names
    representable in the current native encoding (PR#18132).
  * Embedded R on Windows can now find R home directory via the
    registry even when installed only for the current user
    (PR#18135).
  * pretty(x) with finite x now returns finite values also in the
    case where the extreme x values are close in size to the maximal
    representable number .Machine$double.xmax.
    Also, it's been tweaked for very small ranges and when a boundary
    is close (or equal) to zero; e.g., pretty(c(0,1e-317)) no longer
    has negative numbers, currently still warning about a very small
    range, and pretty(2^-(1024 - 2^-1/(c(24,10)))) is more accurate.
  * The error message for not finding vignette files when weaving has
    correct file sizes now. (Thanks to Sebastian Meyer's PR#18154.)
  * dnbinom(20, &lt;large&gt;, 1) now correctly gives 0, and similar cases
    are more accurate with underflow precaution.  (Reported by Francisco Vera Alcivar in PR#18072.)</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635163200">- repaired https://bugzilla.suse.com/show_bug.cgi?id=1191380
  (rpmacros now go to rpmmacrodir)
- minor clean-ups in spec file</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635768000">- CHANGES IN R 4.1.2:
  C-LEVEL FACILITIES:
  * The workaround in headers R.h and Rmath.h (using namespace std;)
    for the Oracle Developer Studio compiler is no longer needed now
    C++11 is required so has been removed.  A couple more usages of
    log() (which should have been std::log()) with an int argument
    are reported on Solaris.
  * The undocumented limit of 4095 bytes on messages from the
    S-compatibility macros PROBLEM and MESSAGE is now documented and
    longer messages will be silently truncated rather than
    potentially causing segfaults.
  * If the R_NO_SEGV_HANDLER environment variable is non-empty, the
    signal handler for SEGV/ILL/BUS signals (which offers recovery
    user interface) is not set. This allows more reliable debugging
    of crashes that involve the console.
  DEPRECATED AND DEFUNCT:
  * The legacy S-compatibility macros PROBLEM, MESSAGE, ERROR, WARN,
    WARNING, RECOVER, ... are deprecated and will be hidden in R
    4.2.0. R's native interface of Rf_error and Rf_warning has long
    been preferred.
  BUG FIXES:
  * .mapply(F, dots, .) no longer segfaults when dots is not a list
    and uses match.fun(F) as always documented; reported by Andrew
    Simmons in PR#18164.
  * hist(&lt;Date&gt;, ...) and hist(&lt;POSIXt&gt;, ...)  no longer pass
    arguments for rect() (such as col and density) to axis().
    (Thanks to Sebastian Meyer's PR#18171.)
  * \Sexpr{ch} now preserves Encoding(ch). (Thanks to report and
    patch by Jeroen Ooms in PR#18152.)
  * Setting the RNG to "Marsaglia-Multicarry" e.g., by RNGkind(), now
    warns in more places, thanks to Andr'e Gillibert's report and
    patch in PR#18168.
  * gray(numeric(), alpha=1/2) no longer segfaults, fixing PR#18183,
    reported by Till Krenz.
  * Fixed dnbinom(x, size=&lt;very_small&gt;, .., log=TRUE) regression,
    reported by Martin Morgan.
  * as.Date.POSIXlt(x) now keeps names(x), thanks to Davis Vaughan's
    report and patch in PR#18188.
  * model.response() now strips an "AsIs" class typically, thanks to
    Duncan Murdoch's report and other discussants in PR#18190.
  * try() is considerably faster in case of an error and long call,
    as e.g., from some do.call().  Thanks to Alexander Kaever's
    suggestion posted to R-devel.
  * qqline(y = &lt;object&gt;) such as y=I(.), now works, see also
    PR#18190.
  * Non-integer mgp par() settings are now handled correctly in
    axis() and mtext(), thanks to Mikael Jagan and Duncan Murdoch's
    report and suggestion in PR#18194.
  * formatC(x) returns length zero character() now, rather than ""
    when x is of length zero, as documented, thanks to Davis
    Vaughan's post to R-devel.
  * removeSource(fn) now retains (other) attributes(fn).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1647000000">- CHANGES IN R 4.1.3:
  NEW FEATURES:
  * The default version of Bioconductor has been changed to 3.14.
    (This is used by setRepositories and the menus in GUIs.)
  UTILITIES:
  * R CMD check --as-cran has a workaround for a bug in versions of
    file up to at least 5.41 which mis-identify DBF files last
    changed in 2022 as executables.
  C-LEVEL FACILITIES:
  * The legacy S-compatibility macros SINGLE_* in R_ext/Constants.h
    (included by R.h) are deprecated and will be removed in R 4.2.0.
  BUG FIXES:
  * Initialization of self-starting nls() models with initialization
    functions following the pre-R-4.1.0 API (without the ...
    argument) works again for now, with a deprecation warning.
  * Fixed quoting of ~autodetect~ in Java setting defaults to avoid
    inadvertent user lookup due to leading ~, reported in PR#18231 by
    Harold Gutch.
  * substr(., start, stop) &lt;- v now treats _negative_ stop values
    correctly.  Reported with a patch in PR#18228 by Brodie Gaslam.
  * Subscripting an array x without dimnames by a
    length(dim(x))-column character matrix gave "random" non-sense,
    now an error; reported in PR#18244 by Mikael Jagan.
  * ...names() now matches names(list(...)) closely, fixing PR#18247.
  * all.equal(*, scale = s) now works as intended when length(s) &gt; 1,
    partly thanks to Michael Chirico's PR#18272.
  * print(x) for long vectors x now also works for named atomic
    vectors or lists and prints the correct number when reaching the
    getOption("max.print") limit; partly thanks to a report and
    proposal by Hugh Parsonage to the R-devel list.
  * all.equal(&lt;selfStart&gt;, *) no longer signals a deprecation
    warning.
  * reformulate(*, response=r) gives a helpful error message now when
    length(r) &gt; 1, thanks to Bill Dunlap's PR#18281.
  * Modifying globalCallingHandlers inside withCallingHandlers() now
    works or fails correctly, thanks to Henrik Bengtsson's PR#18257.
  * hist(&lt;Date&gt;, breaks = "days") and hist(&lt;POSIXt&gt;, breaks = "secs")
    no longer fail for inputs of length 1.
  * qbeta(.001, .9, .009) and similar cases now converge correctly
    thanks to Ben Bolker's report in PR#17746.
  * window(x, start, end) no longer wrongly signals "'start' cannot
    be after 'end'", fixing PR#17527 and PR#18291.
  * data() now checks that its (rarely used) list argument is a
    character vector - a couple of packages passed other types and
    gave incorrect results.
  * which() now checks its arr.ind argument is TRUE rather coercing
    to logical and taking the first element - which gave incorrect
    results in package code.
  * model.weights() and model.offset() more carefully extract their
    model components, thanks to Ben Bolker and Tim Taylor's R-devel
    post.
  * list.files(recursive = TRUE) now shows all broken symlinks
    (previously, some of them may have been omitted, PR#18296).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1650628800">- CHANGES IN R 4.2.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * The formula method of aggregate() now matches the generic in
    naming its first argument x (resolving PR#18299 by Thomas
    Soeiro).
    This means that calling aggregate() with a formula as a named
    first argument requires name formula in earlier versions of R and
    name x now, so portable code should not name the argument (code
    in many packages did).
  * Calling &amp;&amp; or || with either argument of length greater than one
    now gives a warning (which it is intended will become an error).
  * Calling if() or while() with a condition of length greater than
    one gives an error rather than a warning.  Consequently,
    environment variable _R_CHECK_LENGTH_1_CONDITION_ no longer has
    any effect.
  * Windows users should consult the WINDOWS section below for some
    profound changes including
  * Support for 32-bit builds has been dropped.
  * UTF-8 locales are used where available.
  * The default locations for the R installation and personal
    library folder have been changed.
    Thanks to Tomas Kalibera for months of work on the Windows port
    for this release.
  NEW FEATURES:
  * matrix(x, n, m) now warns in more cases where length(x) differs
    from n * m, as suggested by Abby Spurdle and Wolfgang Huber in
    Feb 2021 on the R-devel mailing list.
    This warning can be turned into an error by setting environment
    variable _R_CHECK_MATRIX_DATA_ to TRUE: R CMD check --as-cran
    does so unless it is already set.
  * Function file_test() in package utils gains tests for symlinks,
    readability and writability.
  * capabilities("libxml") is now false.
    The description of capabilities("http/ftp") now reflects that it
    refers to the default method, no longer the internal one.
  * simplify2array() gains an except argument for controlling the
    exceptions used by sapply().
  * Environment variables R_LIBS_USER and R_LIBS_SITE are both now
    set to the R system default if unset or empty, and can be set to
    NULL to indicate an empty list of user or site library
    directories.
  * The warning for axis()(-like) calls in cases of relatively small
    ranges (typically in log-scale situations) is slightly improved
    _and_ suppressed from explicit calls to .axisPars() as has always
    been the intention.
  * The contrasts setter function `contrasts&lt;-` gains an explicit
    default how.many = NULL rather than just using missing(how.many).
  * grid.pretty() gains a new optional argument n = 5.
  * There is a new function .pretty() with option bounds as a
    technical-utility version of pretty().  It and pretty() gain a
    new argument f.min with a better than back-compatible default.
  * Function grDevices::axisTicks() and related functions such as
    graphics::axis() work better, notably for the log scale; partly
    because of the pretty() improvements, but also because care is
    taken e.g., when ylim is finite but diff(ylim) is infinite.
  * nclass.FD() gains a digits option.
  * The R Mathlib internal C function bd0() (called indirectly from a
    dozen probability density and distribution functions such as
    dpois(), dbinom(), dgamma(), pgamma() _etc_) has been
    complemented by a more sophisticated and (mostly) more accurate C
    function ebd0(), currently called only by internal dpois_raw()
    improving accuracy for R level dpois() and potentially others
    calling it such as dnbinom(), dgamma() or pgamma().  (Thanks to
    Morten Welinder's PR#15628.)
  * write.ftable() gains sep = " " argument as suggested by Thomas
    Soeiro.
  * The names of the locale categories supported by R's
    Sys.getlocale() and Sys.setlocale() are now provided by variable
    .LC.categories in the base namespace.
  * The Date and POSIXt methods for hist() and the histogram method
    for plot() now also use the new default col = "lightgray" in
    consistency with the corresponding change to hist()'s default for
    R 4.0.0.
  * hist.default() gains new fuzz argument, and the histogram plot
    method no longer uses fractional axis ticks when displaying
    counts ("Frequency").
  * mapply() and hence Map() now also obey the "max-or-0-if-any"
    recycling rule, such that, e.g., Map(`+`, 1:3, 1[0]) is valid
    now.
  * as.character(&lt;obj&gt;) for "hexmode" or "octmode" objects now
    fulfils the important basic rule as.character(x)[j] ===
    as.character(x[j]).
  * The set utility functions, notably intersect() have been tweaked
    to be more consistent and symmetric in their two set arguments,
    also preserving a common mode.
  * substr(ch, start,end) &lt;- new now e.g., preserves names(ch); ditto
    for substring(), thanks to a patch from Brodie Gaslam.
  * plot(&lt;lm&gt;) gains a extend.ylim.f argument, in partial response to
    PR#15285; further PR#17784 is fixed thanks to several
    contributors and a patch by Elin Waring.  The Cook's dist
    contours get customizable via cook.col and cook.lty with a
    different default color and their legend is nicer by default and
    customizable via cook.legendChanges.
  * Attempting to subset an object that is not subsettable now
    signals an error of class notSubsettableError. The
    non-subsettable object is contained in the object field of the
    error condition.
  * Subscript-out-of-bounds errors are now signaled as errors of
    class subscriptOutOfBoundsError.
  * Stack-overflow errors are now signaled as errors inheriting from
    class stackOverflowError. See ?stackOverflowError for more
    details.
  * New partly experimental Sys.setLanguage() utility, solving the
    main problem of PR#18055.
  * gettext() and gettextf() get a new option trim = TRUE which when
    set to false allows translations for strings such as "Execution
    halted\n" typical for C code.
  * An experimental implementation of hash tables is now available.
    See ?hashtab for more details.
  * identical() gains a extptr.as.ref argument for requesting that
    external pointer objects be compared as reference objects.
  * reorder() gets an argument decreasing which it passes to sort()
    for level creation; based on the wish and patch by Thomas Soeiro
    in PR#18243.
  * as.vector() gains a data.frame method which returns a simple
    named list, also clearing a long standing 'FIXME' to enable
    as.vector(&lt;data.frame&gt;, mode="list").  This breaks code relying
    on as.vector(&lt;data.frame&gt;) to return the unchanged data frame.
  * legend() is now vectorized for arguments cex, x.intersp, and
    text.width.  The latter can now also be specified as a vector
    (one element for each column of the legend) or as NA for
    computing a proper column wise maximum value of strwidth(legend).
    The argument y.intersp can be specified as a vector with one
    entry for each row of the legend.
    legend() also gains new arguments title.cex and title.font.
    Thanks to Swetlana Herbrandt.
  * Deparsing no longer remaps attribute names dim, dimnames, levels,
    names and tsp to historical S-compatible names (which structure()
    maps back).
  * sample() and sample.int() have additional sanity checks on their
    size and n arguments.
    all.equal.numeric() gains a sanity check on its tolerance
    argument - calling all.equal(a, b, c) for three numeric vectors
    is a surprisingly common error.
    mean(na.rm =), rank(na.last =), barplot(legend.text =),
    boxplot(), contour(drawlabels =), polygon(border =) and
    methods::is(class2 =) have more robust sanity checks on their
    arguments.
    R CMD Rd2pdf (used by R CMD check) has a more robust sanity check
    on the format of \alias{} commands.
  * psigamma(x, deriv) for negative x now also works for deriv = 4
    and 5; their underlying C level dpsifn() is documented in
    'Writing R Extensions'.
  * The HTML help system now uses HTML5 (wish of PR#18149).
  * ks.test() now provides exact p-values also with ties and MC
    p-values in the two-sample (Smirnov) case.  By Torsten Hothorn.
  * ks.test() gains a formula interface, with y ~ 1 for the
    one-sample (Kolmogorov) test and y ~ group for the two-sample
    (Smirnov) test.  Contributed by Torsten Hothorn.
  * The return value from ks.test() now has class c("ks.test",
    "htest") - packages using try() need to take care to use
    inherits() and not == on the class.
  * New functions psmirnov(), qsmirnov() and rsmirnov() in package
    stats implementing the asymptotic and exact distributions of the
    two-sample Smirnov statistic.
  * iconv() now allows sub = "c99" to use C99-style escapes for UTF-8
    inputs which cannot be converted to encoding to.
  * In a forward pipe |&gt; expression it is now possible to use a named
    argument with the placeholder _ in the rhs call to specify where
    the lhs is to be inserted.  The placeholder can only appear once
    on the rhs.
  * The included LAPACK sources have been updated to version 3.10.0,
    except for the four Fortran 77 routines which 3.10.0 has
    re-implemented in Fortran 90 (where the older versions have been
    retained as the R build process does not support Fortran 90).
  * path.expand() and most other uses of tilde expansion now warn if
    a path would be too long if expanded.  (An exception is
    file.exists(), which silently returns false.)
  * trunc(&lt;Date&gt;, *) now supports units = "months" or "years" for
    consistency with the POSIXt method, thanks to Dirk Eddelbuettel's
    proposal in PR#18099.
  * list2DF() now checks that its arguments are of the same length,
    rather than use recycling.
  * The HTML help system has several new features: LaTeX-like math
    can be typeset using either KaTeX or MathJax, usage and example
    code is highlighted using Prism, and for dynamic help the output
    of examples and demos can be shown within the browser if the
    knitr package is installed. These features can be disabled by
    setting the environment variable _R_HELP_ENABLE_ENHANCED_HTML_ to
    a false value.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 15
    and so packages that provide graphics devices should be
    reinstalled.
  * The grid package now allows the user to specify a "vector" of
    pattern fills.  The fill argument to gpar() accepts a list of
    gradients and/or patterns and the functions linearGradient(),
    radialGradient(), and pattern() have a new group argument.
    Points grobs (data symbols) can now also have a pattern fill.
    The grobCoords() function now returns a more informative and
    complex result.
  * The grid package has new functions for drawing isolated groups:
    grid.group(), grid.define(), and grid.use().  These functions add
    compositing operators and affine transformations to R's graphics
    capabilities.
    The grid package also has new functions for stroking and filling
    paths: grid.stroke(), grid.fill(), and grid.fillStroke().
    A new function as.path() allows the user to specify the fill rule
    for a path that is to be used for clipping, stroking, or filling;
    available options are "winding" and "evenodd".  A new function
    as.mask() allows the user to specify the type of a mask;
    available options are "alpha" and "luminance".
    These new features are only supported so far (at most) on the
    Cairo-based graphics devices and on the pdf() device.
  * dev.capabilities() reports on device support for the new
    features.
  * par() now warns about unnamed non-character arguments to prevent
    misuse such as {usr &lt;- par("usr"); par(usr)}.
  INSTALLATION:
  * Facilities for accessing ftp:// sites are no longer tested
    (except _pro tem_ for curlGetHeaders()) as modern browsers have
    removed support.
  * R can now be built with DEFS = -DSTRICT_R_HEADERS .
  PACKAGE INSTALLATION:
  * R CMD INSTALL no longer tangles vignettes. This completes an R
    CMD build change in R 3.0.0 and affects packages built before R
    3.0.2. Such packages should be re-made with R CMD build to have
    the tangled R code of vignettes shipped with the tarball.
  * USE_FC_LEN_T will become the default: this uses the correct
    prototypes for Fortran BLAS/LAPACK routines called from C/C++,
    and requires adjustment of most such calls - see 'Writing R
    Extensions' SS6.6.2.  (This has been supported since R 3.6.2.)
  * Package installation speed for packages installed with
    keep.source has been improved. This resolve the issue reported by
    Ofek Shilon in PR#18236.
  UTILITIES:
  * R CMD check can optionally report files/directories left behind
    in home, /tmp (even though TMPDIR is set) and other directories.
    See the "R Internals" manual for details.
  * R CMD check now reports byte-compilation errors during
    installation.  These are not usually fatal but may result in
    parts of the package not being byte-compiled.
  * _R_CHECK_DEPENDS_ONLY_ can be applied selectively to examples,
    tests and/or vignettes in R CMD check: see the "R Internals"
    manual.
  * _R_CHECK_SRC_MINUS_W_IMPLICIT_ now defaults to true: recent
    versions of Apple clang on macOS have made implicit function
    declarations in C into a compilation error.
  * R CMD check --as-cran makes use of the environment variable
    AUTORECONF.  See the "R Internals" manual SS8 for further details.
  * R CMD check --use-valgrind also uses valgrind when re-building
    vignettes as some non-Sweave vignettes unhelpfully comment out
    all their code when R CMD check runs vignettes.
  * Errors in re-building vignettes (unless there are LaTeX errors)
    are reported by R CMD check as ERROR rather than WARNING when
    running vignettes has been skipped (as it frequently is in CRAN
    checks and by --as-cran).
  * R CMD Rd2pdf gains a --quiet option that is used by R CMD build
    when building the PDF package manual.
  * R CMD Rd2pdf now always runs LaTeX in batch mode, consistent with
    Texinfo &gt;= 6.7. The --batch option is ignored.
  * R CMD build and R CMD check now include the Rd file name and line
    numbers in the error message of an \Sexpr evaluation failure.
  * For packages using the \doi Rd macro (now an install-time \Sexpr)
    but no other dynamic Rd content, R CMD build now produces a
    smaller tarball and is considerably faster - skipping temporary
    package installation.
  C-LEVEL FACILITIES:
  * The non-API header R_ext/R-ftp-http.h is no longer provided, as
    the entry points it covered are now all defunct.
  * A number of non-API declarations and macro definitions have been
    moved from the installed header Rinternals.h to the internal
    header Defn.h. Packages that only use entry points and
    definitions documented to be part of the API as specified in
    'Writing R Extensions' SS6 should not be affected.
  * The macro USE_RINTERNALS no longer has any effect when compiling
    package code.  Packages which also use R_NO_REMAP will need to
    ensure that the remapped names are used for calls to API
    functions that were formerly also made available as macros.
  * The deprecated legacy S-compatibility macros PROBLEM, MESSAGE,
    ERROR, WARN, WARNING, RECOVER, ... are no longer defined in
    R_exts/RS.h (included by R.h).  Replace these by calls to
    Rf_error and Rf_warning (defined in header R_ext/Error.h included
    by R.h).
    Header R_ext/RS.h no longer includes R_ext/Error.h.
  * Header R_ext/Constants.h (included by R.h) when included from C++
    now includes the C++ header cfloat rather than the C header
    float.h (now possible as C++11 is required).
  * The legacy S-compatibility macros DOUBLE_* in R_ext/Constants.h
    (included by R.h) are deprecated.
  * The deprecated S-compatibility macros SINGLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * R_Calloc, R_Free and R_Realloc are preferred to their unprefixed
    forms and error messages now use the prefix. These forms were
    introduced in R 3.4.0 and are available even when
    STRICT_R_HEADERS is defined.
  * rmultinom has been documented in 'Writing R Extensions' SS6 so is
    now part of the R API.
  * Similarly, Rtanpi, called from R level tanpi() is now part of the
    R API.
  * The long-deprecated, undocumented and non-API entry point call_R
    is no longer declared in R_ext/RS.h (included by R.h).
  * The header S.h which has been unsupported since Jan 2016 has been
    removed.  Use R.h instead.
  DEPRECATED AND DEFUNCT:
  * The (non-default and deprecated) method = "internal" for
    download.file() and url() no longer supports http:// nor ftp://
    URIs.  (It is used only for file:// URIs.)
    On Windows, download.file(method = "wininet") no longer supports
    ftp:// URIs.  (It is no longer the default method, which is
    "libcurl" and does.)
    On Windows, the deprecated method = "wininet" now gives a warning
    for http:// and https:// URIs for both download.file() and url().
    (It is no longer the default method.)
  * On Windows, the command-line option --max-mem-size and
    environment variable R_MAX_MEM_SIZE are defunct.  The memory
    allocation limit was important for 32-bit builds, but these are
    no longer supported.
  * default.stringsAsFactors() is now formally deprecated, where that
    was only mentioned on its regular help page, previously.  So it
    now gives a warning if called.
  * unix.time() is defunct now; it had been deprecated since R 3.4.0.
  BUG FIXES:
  * Setting digits = 0 in format(), print.default() (and hence
    typically print()) or options() is again invalid.  Its behaviour
    was platform-dependent, and it is unclear what "zero significant
    digits" should mean (PR#18098).
  * Messages from C code in the cairo section of package grDevices
    are now also offered for translation, thanks to Michael Chirico's
    PR#18123.
  * mean(x) with finite x now is finite also without "long.double"
    capability.
  * R CMD Rd2pdf no longer leaves an empty build directory behind
    when it aborts due to an already existing output file.  (Thanks
    to Sebastian Meyer's PR#18141.)
  * density(x, weights = w, na.rm = TRUE) when anyNA(x) is true, now
    removes weights "in parallel" to x, fixing PR#18151, reported by
    Matthias Gondan.  Additionally, it gets a subdensity option.
  * Conversion of \Sexpr[]{&lt;expR&gt;} to LaTeX or HTML no longer
    produces long blocks of empty lines when &lt;expR&gt; itself contains
    several lines all producing empty output.  Thanks to a report and
    patch by Ivan Krylov posted to R-devel.
  * R CMD build no longer fails if a package vignette uses child
    documents and inst/doc exists.  (Thanks to Sebastian Meyer's
    PR#18156.)
  * When an R documentation ('help' source) file man/foo.Rd in a
    package has \donttest{..} examples with a syntax error, it is now
    signalled as ERROR and with correct line numbers relating to the
  * -Ex.R file, thanks to Duncan Murdoch and Sebastian Meyer's
    reports and patch proposals in PR#17501.
  * Improved determination of the correct translation domain in
    non-base packages, addressing the combination of PR#18092 and
    PR#17998 (#c6) with reports and _augmented_ patch #2904 by
    Suharto Anggono.
    Note that "R-base" is no longer the default domain e.g., for
    top-level calls to gettext(); rather translation needs explicit
    domain = * specification in such cases.
  * identical(attrib.as.set=FALSE) now works correctly with data
    frames with default row names (Thanks to Charlie Gao's PR#18179).
  * txtProgressBar() now enforces a non-zero width for argument char,
    without which no progress can be visible.
  * dimnames(table(d)) is more consistent in the case where d is a
    list with a single component, thanks to Thomas Soeiro's report to
    R-devel.
    Further, table(d1, d2) now gives an error when d1 and d2 are data
    frames as suggested by Thomas in PR#18224.
  * Fix for drawing semi-transparent lines and fills on the native
    Windows graphics device (PR#18219 and PR#16694).  Thanks to Nick
    Ray for helpful diagnosis on Bugzilla.
  * The deparser now wraps sub-expressions such as if(A) ..  with
    parentheses when needed; thanks to Duncan Murdoch's PR#18232 and
    Lionel Henry's patches there.
  * remove.packages() no longer tries to uninstall Priority: base
    packages, thanks to a report and suggestions by Colin Fay in
    PR#18227.
  * win.metafile() now has xpinch and ypinch arguments so that the
    user can override Windows' (potentially wrong) guess at device
    dimensions.
  * x[i] and x[[i]] for non-integer i should now behave in all cases
    as always documented: the index used is equivalent to
    as.integer(i) unless that would overflow where trunc(i) is used
    instead; thanks to Suharto Anggono's report and patch proposals
    in PR#17977.
  * asOneSidedFormula() now associates the resulting formula with the
    global environment rather than the evaluation environment created
    for the call.
  * &lt;bibentry&gt;$name now matches the field name case-insensitively,
    consistent with bibentry() creation and the replacement method.
  * cbind() failed to detect some length mismatches with a mixture of
    time-series and non-time-series inputs.
  * The default LaTeX style file Sweave.sty used by the RweaveLatex
    driver no longer loads the obsolete ae package; thanks to a
    report by Thomas Soeiro in PR#18271.  Furthermore, it now skips
    \usepackage[T1]{fontenc} for engines other than pdfTeX (if
    detected) or if the new [nofontenc] option is used.
  * smooth.spline() now stores its logical cv argument more safely,
    fixing a rare bug when printing, and also stores n.
  * smooth.spline(x,y,*) now computes the cv.crit statistic
    correctly, also when is.unsorted(x), fixing PR#18294.
  * The data.frame method of rbind() now warns when binding
    not-wholly-recycling vectors, by analogy to the default method
    (for matrices).
  * setAs() finds the correct class for name to when multiple
    packages define a class with that name. Thanks to Gabor Csardi
    for the report.
  * Fix for detaching a package when two classes of the same name are
    present in method signatures for the same generic. Thanks to
    Gabor Csardi for the report.
  * match.arg("", c("", "a", "B")) gives a better error message, in
    part from PR#17959, thanks to Elin Waring.
  * R CMD Sweave --clean no longer removes pre-existing files or
    subdirectories (PR#18242).
  * The quartz() device no longer splits polylines into subpaths.
    That has caused narrowly-spaced lines with many points to always
    look solid even when dashed line type was used due to dash phase
    restarts.
  * Deparsing constructs such as quote(1 + `!`(2) + 3) works again as
    before R 3.5.0, thanks to the report and patch in PR#18284 by
    Suharto Anggono.
  * as.list(f) for a factor f now keeps names(f), fixing PR#18309.
  * qbeta(.001, .9, .009) and analogous qf() calls now return a
    correct value instead of NaN or wrongly 1, all with a warning;
    thanks to the report by Ludger Goeminne in PR#18302.
  * plot.lm() failed to produce the plot of residuals vs.  factor
    levels (i.e., which=5 when leverages are constant) for models
    with character predictors (PR#17840).
  * interaction.plot(..., xtick = TRUE) misplaced the x-axis line
    (PR#18305).
  * Not strictly fixing a bug, format()ing and print()ing of
    non-finite Date and POSIXt values NaN and +/-Inf no longer show
    as NA but the respective string, e.g., Inf, for consistency with
    numeric vector's behaviour, fulfilling the wish of PR#18308.
  * R CMD check no longer runs test scripts generated from
    corresponding .Rin files twice and now signals an ERROR if
    processing an .Rin script fails.
  * tools::Rd2txt() used for plain-text help pages now renders \hrefs
    (if tools::Rd2txt_options(showURLs = TRUE)) and \urls with
    percent-encoding and standards-compliant delimiting style (angle
    brackets and no URL: prefix).  \email is now rendered with a
    mailto: prefix.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1655985600">- CHANGES IN R 4.2.1:
  NEW FEATURES:
  * New function utils::findCRANmirror() to find out if a CRAN mirror
    has been selected, otherwise fallback to the main site.  This
    behaves in the same way as tools::CRAN_package_db() and is
    intended for packages wishing to access CRAN for purposes other
    than installing packages.
    The need for this was shown by a day when the main CRAN website
    was offline and a dozen or so packages which had its URL
    hardcoded failed their checks.
  INSTALLATION on a UNIX-ALIKE:
  * The libraries searched for by --with-blas (without a value) now
    include BLIS (after OpenBLAS but before ATLAS).  And on macOS,
    the Accelerate framework (after ATLAS).  (This is patterned after
    the AX_BLAS macro from the Autoconf Archive.)
  * The included LAPACK sources have been updated to 3.10.1.
  UTILITIES:
  * The (full path to) the command tidy to be used for HTML
    validation can be set by environment variable R_TIDYCMD.
  * Setting environment variable _R_CHECK_RD_VALIDATE_RD2HTML_ to a
    false value will override R CMD check --as-cran and turn off HTML
    validation.  This provides a way to circumvent a problematic
    tidy.
    The 2006 version that ships with macOS is always skipped.
  C-LEVEL FACILITIES:
  * The undocumented legacy declarations of Sint, Sfloat, SINT_MAX
    and SINT_MIN in header R.h are deprecated.
  BUG FIXES:
  * fisher.test(d) no longer segfaults for "large" d; fixing PR#18336
    by preventing/detecting an integer overflow reliably.
  * tar(., files=*) now produces correctly the warning about invalid
    uid or gid of files, fixing PR#18344, reported by Martin Morgan.
  * tk_choose.files() with multi = FALSE misbehaved on paths
    containing spaces (PR#18334) (regression introduced in R 4.0.0).
  * sort(x, partial = ind, *) now works correctly notably for the
    non-default na.last = FALSE or TRUE, fixing PR#18335 reported by
    James Edwards.
  * Environment variable _R_CHECK_XREFS_REPOSITORIES_ is only used
    for checking .Rd cross-references in R CMD check (as documented)
    and not for other uses looking for a CRAN mirror.
  * The search for a CRAN mirror when checking packages now uses
    getOption("repos") if that specifies a CRAN mirror, even when it
    does not also specify all three Bioconductor repositories (as was
    previously required).
  * The HTML code generated by tools::Rd2HTML() has been improved to
    pass tidy 5.8.0.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1667217600">- CHANGES IN R 4.2.2:
  NEW FEATURES:
  * tools::Rdiff(useDiff = TRUE) checks for the presence of an
    external diff command and switches to useDiff = FALSE if none is
    found.  This allows R CMD Rdiff to always work.
  * On Windows, environment variable R_LIBCURL_SSL_REVOKE_BEST_EFFORT
    can be used to switch to only 'best-effort' SSL certificate
    revocation checks with the default "libcurl" download method.
    This reduces security, but may be needed for downloads to work
    with MITM proxies (PR#18379).
  * (macOS) The run-time check for libraries from XQuartz for X11 and
    Tcl/Tk no longer uses otool from the Apple Developer Tools
    (PR#18400).
  * The LaTeX style for producing the PDF manuals, Rd.sty, now loads
    the standard amsmath, amsfonts and amssymb packages for greater
    coverage of math commands in the Rd \eqn and \deqn macros.  The
    \mathscr LaTeX command is also provided (via the mathrsfs
    package, if available, or the amsfonts bundle otherwise),
    fulfilling the wish of PR#18398.
  * (Windows) The default format of readClipboard() and
    writeClipboard() has been changed to 13 (CF_UNICODETEXT).
  INSTALLATION on a UNIX-ALIKE:
  * The PDF manuals (if built) can be compacted by the new target
    make compact-pdf (at the top level or in directory doc/manual).
  * There is now configure support for LLVM clang 15 on Linux, which
    defaults to position-independent (PIE) executables whereas
    gfortran does not.
  * Many small changes to ease compilation (and suppress warnings)
    with LLVM clang 15.
  BUG FIXES:
  * Rscript -e would fail if stdin were closed (Reported by Henrik
    Bengtsson.)
  * qt(*, log.p=TRUE) in outer tails no longer produces NaN in its
    final steps, thus fixing PR#18360.
  * tools::Rd2latex() now escapes hashes and ampersands when writing
    URLs, fixing LaTeX errors with such URLs in \tabular.
  * When isGeneric(f, fdef=*) is used with mismatching names, the
    warning is better understandable; reported (with fix) in PR#18370
    by Gabe Becker.
  * poly(x, n) now works again (and is now documented) when x is a
    "Date" or "POSIXct" object, or of another class while fulfilling
    mode(x) == "numeric".  This also enables poly(x, *, raw=TRUE) for
    such variables.  Reported by Michael Chirico to R-devel.
  * write.table(), write.csv() and write.csv2() restore their
    numerical precision (internal equivalent of digits = 15) after an
    interrupt (PR#18384).
  * One can now read also byte FF from a clipboard connection
    (PR#18385).
  * source("") and source(character()) now give more helpful error
    messages.
  * R CMD check --as-cran set _R_CHECK_TIMINGS_ too late to have the
    intended effect.
  * as.POSIXlt(x) now also works with very large dates x, fixing
    PR#18401 reported by Hannes M"uhleisen.
  * Files can now be extracted even from very large zip archives
    (PR#18390, thanks to Martin Jakt).
  * Non-finite objects of class "POSIXlt" are now correctly coerced
    to classes "Date" and "POSIXct"; following up on the extension to
    format() them correctly.
  * Added methods for is.finite(), is.infinite() and is.nan() for
    "POSIXlt" date-time objects.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1678881600">- CHANGES IN R 4.2.3:
  C-LEVEL FACILITIES:
  * The definition of DL_FUNC in R_ext/Rdynload.h has been changed to
    be fully C-compliant.  This means that functions loaded _via_ for
    example R_GetCCallable need to be cast to an appropriate type if
    they have any arguments.
  * .Machine has a new element sizeof.time_t to identify old systems
    with a 32-bit type and hence a limited range of date-times (and
    limited support for dates millions of years from present).
  PACKAGE INSTALLATION:
  * (Windows) The default C++ standard had accidentally been left at
    C++11 when it was changed to C++14 on Unix.
  BUG FIXES:
  * As "POSIXlt" objects may be "partially filled" and their list
    components meant to be recycled, length() now is the length of
    the longest component.
  * as.POSIXlt.Date() could underflow for dates in the far past (more
    than half a million years BCE).
  * as.Date.POSIXlt(x) would return "1970-01-01" instead of NA in R
    4.2.2, e.g., for
    x &lt;- as.POSIXlt(c("2019-01-30","2001-1-1"))
    x$mon &lt;- c(0L, NA); as.Date(x)
  * R CMD check failed to apply enabled _R_CHECK_SUGGESTS_ONLY_ to
    examples and vignettes (regression in R 4.2.0).
  * R CMD check did not re-build vignettes in separate processes by
    default (regression in R 4.2.0).
  * Running examples from HTML documentation now restores previous
    knitr settings and options (PR#18420).
  * Quartz: fonts are now located using Core Graphics API instead of
    deprecated ATS which is no longer supported in the macOS 13 SDK
    (PR#18426).  This also addresses an issue where the currently
    used font in the Quartz device context was not correctly
    retained.
  * (Windows) Math symbols in text drawing functions are again
    rendered correctly (PR#18440).  This fixes a regression in R
    4.2.1 caused by a fix in PR#18382 which uncovered an issue in
    GraphApp due to which the symbol charset was not used with TT
    Symbol font face.
  * (Windows) Installing a package with a src/Makefile.{win,ucrt}
    file includes ~/.R/Makevars.win64 in the search for user
    makevars, as documented in "R Installation and Administration"
    and done for packages with a src/Makevars.{win,ucrt} file.
  * format(&lt;POSIXlt_w/_unbalanced_sec&gt;, "....%OS&lt;n&gt;") with n &gt; 0 no
    longer accidentally uses the unbalanced seconds, thanks to
    Suharto Anggono's report (including patch) in PR#18448.
  * solve.default(a, b) works around issues with some versions of
    LAPACK when a contains NA or NaN values.
  * When UseMethod() cannot dispatch, it no longer segfaults
    producing the error message in case of a long class(), thanks to
    Joris Vankerschaver's report (including patch) in PR#18447.
  * When example(foo, ..) produces graphics on an interactive device
    it needs to open itself, it now leaves devAskNewPage() unchanged
    even when it was FALSE, thus fixing a 14 years old '&lt;FIXME&gt;'.
  * packageDescription() again catches errors from encoding
    conversions. This also fixes broken packageVersion() in C locale
    on systems where iconv does not support transliteration.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1681128000">- add patch to build with libcurl &gt;= 8</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1682078400">- CHANGES IN R 4.3.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Calling &amp;&amp; or || with LHS or (if evaluated) RHS of length greater
    than one is now always an error, with a report of the form
    'length = 4' in coercion to 'logical(1)'
    Environment variable _R_CHECK_LENGTH_1_LOGIC2_ no longer has any
    effect.
  NEW FEATURES:
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.10.1.  (This caused some platform-dependent
    changes to package check output.)  And then to the sources from
    LAPACK version 3.11.0 (with changes only to double complex
    subroutines).
  * The included LAPACK sources have been updated to include the four
    Fortran 90 routines rather than their Fortran 77 predecessors.
    This may give some different signs in SVDs or
    eigendecompositions..  (This completes the transition to LAPACK
    3.10.x begun in R 4.2.0.)
  * The LAPACK sources have been updated to version 3.11.0.  (No new
    subroutines have been added, so this almost entirely bug fixes:
    Those fixes do affect some computations with NaNs, including R's
    NA.)
  * The parser now signals _classed_ errors, notably in case of the
    pipe operator |&gt;.  The error object and message now give line and
    column numbers, mostly as proposed and provided by Duncan Murdoch
    in PR#18328.
  * toeplitz() is now generalized for asymmetric cases, with a
    toeplitz2() variant.
  * xy.coords() and xyz.coords() and consequently, e.g., plot(x,y,
    log = "y") now signal a _classed_ warning about negative values
    of y (where log(.) is NA).  Such a warning can be specifically
    suppressed or caught otherwise.
  * Regular expression functions now check more thoroughly whether
    their inputs are valid strings (in their encoding, e.g. in
    UTF-8).
  * The performance of grep(), sub(), gsub() and strsplit() has been
    improved, particularly with perl = TRUE and fixed = TRUE.  Use of
    useBytes = TRUE for performance reasons should no longer be
    needed and is discouraged: it may lead to incorrect results.
  * apropos() gains an argument dot_internals which is used by the
    completion (help(rcompgen)) engine to also see base internals
    such as .POSIXct().
  * Support in tools::Rdiff() for comparing uncompressed PDF files is
    further reduced - see its help page.
  * qqplot(x, y, ...) gains conf.level and conf.args arguments for
    computing and plotting a confidence band for the treatment
    function transforming the distribution of x into the distribution
    of y (Switzer, 1976, _Biometrika_). Contributed by Torsten
    Hothorn.
  * Performance of package_dependencies() has been improved for cases
    when the number of dependencies is large.
  * Strings newly created by gsub(), sub() and strsplit(), when any
    of the inputs is marked as "bytes", are also marked as "bytes".
    This reduces the risk of creating invalid strings and accidental
    substitution of bytes deemed invalid.
  * Support for readLines(encoding = "bytes") has been added to allow
    processing special text files byte-by-byte, without creating
    invalid strings.
  * iconv(from = "") now takes into account any declared encoding of
    the input elements and uses it in preference to the native
    encoding.  This reduces the risk of accidental creation of
    invalid strings, particularly when different elements of the
    input have different encoding (including "bytes").
  * Package repositories in getOption("repos") are now initialized
    from the repositories file when utils is loaded (if not already
    set, e.g., in .Rprofile).  (From a report and patch proposal by
    Gabriel Becker in PR#18405.)
  * compactPDF() gets a verbose option.
  * type.convert() and hence read.table() get new option tryLogical =
    TRUE with back compatible default.  When set to false, converts
    "F" or "T" columns to character.
  * Added new unit prefixes "R" and "Q" for abbreviating
    (unrealistically large) sizes beyond 10^{27} in standard = "SI",
    thanks to Henrik Bengtsson's PR#18435.
  * as.data.frame()'s default method now also works fine with atomic
    objects inheriting from classes such as "roman", "octmode" and
    "hexmode", such fulfilling the wish of PR#18421, by Benjamin
    Feakins.
  * The as.data.frame.vector() utility now errors for wrong-length
    row.names.  It warned for almost six years, with "Will be an
    error!".
  * sessionInfo() now also contains La_version() and reports codepage
    and timezone when relevant, in both print() and toLatex() methods
    which also get new option tzone for displaying timezone
    information when locale = FALSE.
  * New function R_compiled_by() reports the C and Fortran compilers
    used to build R, if known.
  * predict(&lt;lm&gt;, newdata = *) no longer unnecessarily creates an
    offset of all 0s.
  * solve() for complex inputs now uses argument tol and by default
    checks for 'computational singularity' (as it long has done for
    numeric inputs).
  * predict(&lt;rank-deficient lm&gt;, newdata=*) now obeys a new argument
    rankdeficient, with new default "warnif", warning only if there
    are non-estimable cases in newdata.  Other options include
    rankdeficient = "NA", predicting NA for non-estimable newdata
    cases.  This addresses PR#15072 by Russ Lenth and is based on his
    original proposal and discussions in PR#16158 also by David Firth
    and Elin Waring.  Still somewhat experimental.
  * Rgui console implementation now works better with the NVDA screen
    reader when the full blinking cursor is selected.  The underlying
    improvements in cursor handling may help also other screen
    readers on Windows.
  * The drop-field control in GraphApp can now be left with the TAB
    key and all controls can be navigated in the reverse order using
    the Shift+TAB key, improving accessibility of the Rgui
    configuration editor.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now fully accurate
    (instead of to "only" minimally five digits).
  * demo(error.catching) now also shows off withWarnings() and
    tryCatchWEMs().
  * As an experimental feature the placeholder _ can now also be used
    in the rhs of a forward pipe |&gt; expression as the first argument
    in an extraction call, such as _$coef. More generally, it can be
    used as the head of a chain of extractions, such as _$coef[[2]].
  * Spaces in the environment variable used to choose the R session's
    temporary directory (TMPDIR, TMP and TEMP are tried in turn) are
    now fatal.  (On Windows the 'short path' version of the path is
    tried and used if that does not contain a space.)
  * all.equal.numeric() gets a new optional switch giveErr to return
    the numeric error as attribute.  Relatedly,
    stopifnot(all.equal&lt;some&gt;(a, b, ..)) is as "smart" now, as
    stopifnot(all.equal(....)) has been already, thus allowing
    customized all.equal&lt;Some&gt;() wrappers.
  * R on Windows is now able to work with path names longer than 260
    characters when these are enabled in the system (requires at
    least Windows 10 version 1607).  Packages should be updated to
    work with long paths as well, instead of assuming PATH_MAX to be
    the maximum length.  Custom front-ends and applications embedding
    R need to update their manifests if they wish to allow this
    feature.  See
    &lt;https://blog.r-project.org/2023/03/07/path-length-limit-on-windows&gt;
    for more information.
  * 'Object not found' and 'Missing argument' errors now give a more
    accurate error context. Patch provided by Lionel Henry in
    PR#18241.
  * The @ operator is now an S3 generic. Based on contributions by
    Tomasz Kalinowski in PR#18482.
  * New generic chooseOpsMethod() provides a mechanism for objects to
    resolve cases where two suitable methods are found for an Ops
    Group Generic. This supports experimenting with alternative
    object systems. Based on contributions by Tomasz Kalinowski in
    PR#18484.
  * inherits(x, what) now accepts values other than a simple
    character vector for argument what. A new generic, nameOfClass(),
    is called to resolve the class name from what. This supports
    experimenting with alternative object systems. Based on
    contributions by Tomasz Kalinowski in PR#18485.
  * Detection of BLAS/LAPACK in use (sessionInfo()) with FlexiBLAS
    now reports the current backend.
  * The "data.frame" method for subset() now warns about extraneous
    arguments, typically catching the use of = instead of == in the
    subset expression.
  * Calling a:b when numeric a or b is longer than one may now be
    made into an error by setting environment variable
    _R_CHECK_LENGTH_COLON_ to a true value, along the proposal in
    PR#18419 by Henrik Bengtsson.
  * density(x, weights = *) now warns if automatic bandwidth
    selection happens without using weights; new optional warnWbw may
    suppress the warning.  Prompted by Christoph Dalitz' PR#18490 and
    its discussants.
  * rm(list = *) is faster and more readable thanks to Kevin Ushey's
    PR#18492.
  * The plot.lm() function no longer produces a normal Q-Q plot for
    GLMs. Instead it plots a half-normal Q-Q plot of the absolute
    value of the standardized deviance residuals.
  * The print() method for class "summary.glm" no longer shows
    summary statistics for the deviance residuals by default.  Its
    optional argument show.residuals can be used to show them if
    required.
  * The tapply() function now accepts a data frame as its X argument,
    and allows INDEX to be a formula in that case. by.data.frame()
    similarly allows INDICES to be a formula.
  * The performance of df[j] &lt;- value (including for missing j) and
    write.table(df) has been improved for data frames df with a large
    number of columns.  (Thanks to Gabriel Becker's PR#18500,
    PR#18503 and discussants, prompted by a report from Toby Dylan
    Hocking on the R-devel mailing list.)
  * The matrix multiply operator %*% is now an S3 generic, belonging
    to new group generic matrixOps.  From Tomasz Kalinowski's
    contribution in PR#18483.
  * New function array2DF() to convert arrays to data frames,
    particularly useful for the list arrays created by tapply().
  DATES and TIMES:
  * On platforms where (non-UTC) datetimes before 1902 (or before
    1900 as with system functions on recent macOS) are guessed by
    extrapolating time zones from 1902-2037, there is a warning at
    the first use of extrapolation in a session.  (As all time zones
    post 2037 are extrapolation, we do not warn on those.)
  * (Platforms using --with-internal-tzone, including Windows and by
    default macOS). How years are printed in dates or date-times can
    be controlled by environment variable R_PAD_YEARS_BY_ZERO.  The
    default remains to pad to 4 digits by zeroes, but setting value
    no gives no padding (as used by default by glibc).
  * strftime() tries harder to determine the offset for the "%z"
    format, and succeeds on the mainstream R platforms.
  * strftime() has a limit of 2048 bytes on the string produced -
    attempting to exceed this is an error.  (Previously it silently
    truncated at 255 bytes.)
  * sessionInfo() records (and by default prints) the system time
    zone as part of the locale information.  Also, the source
    (system/internal) of the date-time conversion and printing
    functions.
  * Objects of class "POSIXlt" created in this version of R always
    have 11 components: component zone is always set, and component
    gmtoff is set for times in UTC and usually set on the (almost
    all) platforms which have C-level support, otherwise is NA.
  * There are comprehensive validity checks on the structure of
    objects of class "POSIXlt" when converting (including formatting
    and printing).  (This avoids mis-conversions of hand-crafted
    objects.)
  * There is some support for using the native date-time routines on
    macOS: this is only viable on recent versions (e.g. 12.6 and 13)
    and does get wrong some historical changes (before 1900, during
    WWII).  Use of --with-internal-tzone remains the default.
  * as.POSIXct(&lt;numeric&gt;) and as.POSIXlt(.) (without specifying
    origin) now work.  So does as.Date(&lt;numeric&gt;).
  * as.Date.POSIXct(., tz) now treats several tz values, notably
    "GMT" as equivalent to "UTC", proposed and improved by Michael
    Chirico and Joshua Ulrich in PR#17674.
  * Experimental balancePOSIXlt() utility allows using "ragged" and
    or out-of-range "POSIXlt" objects more correctly, e.g., in
    subsetting and subassignments.  Such objects are now documented.
    More experimentally, a "POSIXlt" object may have an attribute
    "balanced" indicating if it is known to be filled or fully
    balanced.
  * Functions axis.Date() and axis.POSIXct() are rewritten to gain
    better default tick locations and better default formats by using
    prettyDate(). Thanks to Swetlana Herbrandt.
  * The mapping of Windows' names for time zones to IANA's 'Olson'
    names has been updated.  When ICU is available (it is by
    default), it is used to get a mapping for the current region set
    in Windows.  This can be overridden by setting environment
    variable TZ to the desired Olson name - see OlsonNames() for
    those currently available.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 16
    and so packages that provide graphics devices should be
    reinstalled.
  * The grDevices and grid packages have new functions for rendering
    typeset glyphs, primarily: grDevices::glyphInfo() and
    grid::grid.glyph().
    Rendering of typeset glyphs is only supported so far on the
    Cairo-based graphics devices and on the pdf() and quartz()
    devices.
  * The defined behaviour for "clear" and "source" compositing
    operators (via grid::grid.group()) has been changed (to align
    better with simple interpretation of original Porter-Duff
    definitions).
  * Support for gradients, patterns, clipping paths, masks, groups,
    compositing operators, and affine transformations has been added
    to the quartz() device.
  INSTALLATION on a UNIX-ALIKE:
  * A system installation of generic LAPACK 3.10.0 or later will be
    preferred to the version in the R sources.
    configure option --with-lapack=no (equivalently --without-lapack)
    forces compilation of the internal LAPACK sources.
    If --with-lapack is not specified, a system liblapack is looked
    for and used if it reports version 3.10.0 or later and does not
    contain BLAS routines.
    Packages using LAPACK will need to be reinstalled if this changes
    to using an external library.
  * On aarch64 Linux platforms using GCC, configure now defaults to
  - fPIC (instead of -fpic), as desired in PR#18326.
  * configure now checks conversion of datetimes between POSIXlt and
    POSIXct around year 2020.  Failure (which has been seen on
    platforms missing tzdata) is fatal.
  * If configure option --with-valgrind-instrumentation is given
    value 1 or 2, option --with-system-valgrind-headers is now the
    default and ignored (with a warning).  It is highly recommended
    that the system headers are installed alongside valgrind: they
    are part of its packaging on some Linux distributions and
    packaged separately (e.g. in the valgrind-devel RPM) on others.
    configure will give a warning if they are not found.
    The system headers will be required in a future release of R to
    build with valgrind instrumentation.
  * libcurl 8.x is now accepted by configure: despite a change in
    major version number it changes neither API nor ABI.
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools43, an update of the Rtools42 toolchain.  It is
    based on gcc 12 and newer versions of MinGW-W64, binutils and
    libraries.  At this time R-devel can still be built using
    Rtools42 without changes, but when R-devel is installed via the
    installer, it will by default look for Rtools43.
  * Old make targets rsync-extsoft and 32-bit ones that are no longer
    needed have been removed.
  * Default builds (including for packages) no longer select C99.
    Thus the C standard used is the default for the compiler, which
    for the toolchain in Rtools43 is C17.  (This is consistent with
    Unix builds.)
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++17 where
    available (which it is on all currently checked platforms): if
    not C++14 or C++11 is used if available otherwise C++ is not
    supported.
  * USE_FC_LEN_T is the default: this uses the correct
    (compiler-dependent) prototypes for Fortran BLAS/LAPACK routines
    called from C/C++, and requires adjustment of many such calls -
    see 'Writing R Extensions' SS6.6.1.
  * There is initial support for C++23 as several compilers are now
    supporting -std=c++23 or -std=c++2b or similar.  As for C++20,
    there no additional configure checks for C++23 features beyond a
    check that the compiler reports a __cplusplus value greater than
    that in the C++20 standard.  C++ feature tests should be used.
  * There is support for a package to indicate the version of the C
    standard which should be used to compile it, and for the
    installing user to specify this.  In most cases R defaults to the
    C compiler's default standard which is C17 (a `bug-fix' of C11) -
    earlier versions of R or compilers may have defaulted to C99.
    Current options are:
    USE_C17 Use a standard that is at most C17.  The intention is to
    allow legacy packages to still be installed when later C
    standards become the default, including packages using new
    keywords as identifiers or with K&amp;R-style function
    declarations.  This will use C17 if available, falling back
    to C11.
    USE_C90 Use the C90 (aka C89) standard.  (As that standard did
    not require compilers to identify that version, all we can
    verify is that the compiler does not claim to be using a
    later standard.  It may accept C99 features - for example
    clang accepts // to make comments.)
    USE_C99 Use the C99 standard. This should be rarely needed - it
    avoids the few new features of C11/C17 which can be useful if
    a package assumes them if C17 is specified and they are not
    implemented.
    USE_C23 Use C23 (or in future, later).  Compiler/library support
    for C23 is still being implemented, but LLVM clang from
    15.0.0 and the upcoming GCC 13 have quite extensive support.
    These can be specified as part of the SystemRequirements field in
    the package's DESCRIPTION file or _via_ options --use-C17 and so
    on of R CMD INSTALL and R CMD SHLIB.
    For further details see "Writing R Extensions" SS1.2.5.
  * (Windows) A src/Makefile.ucrt or src/Makefile.win file is now
    included after R_HOME/etcR_ARCH/Makeconf and so no longer needs
    to include that file itself.  Installation of a package with such
    a file now uses a site Makevars file in the same way as a package
    with a src/Makevars.win file would.
  * configure is now passed crucial variables such as CC and CFLAGS
    in its environment, as many packages were not setting them (as
    documented in 'Writing R Extensions' SS1.2).
    This has most effect where configure is used to compile parts of
    the package - most often by cmake or libtool which obfuscate the
    actual compile commands used.
    Also used for configure.win and configure.ucrt on Windows.
  FORTRAN FLAGS:
  * The flag -fno-optimize-sibling-calls is no longer forced for
    gfortran 7 and later.  It should no longer be needed now using
    'hidden' character-length arguments when calling BLAS/LAPACK
    routines from C/C++ is the default even for packages.  (Unless
    perhaps packages call Fortran code from C/C++ without using R's
    headers and without allowing for these arguments.)
  C-LEVEL FACILITIES:
  * The deprecated S-compatibility macros DOUBLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * The deprecated legacy typedefs of Sint and Sfloat in header R.h
    are no longer defined, and that header no longer includes header
    limits.h from C nor climits from C++.
  * New macro CAD5R() is provided in Rinternals.h and used in a few
    places in the R sources.
  * ALTREP now supports VECSXP vectors. Contributed by Gabor Csardi
    in PR#17620.
  * The Rcomplex definition (in header R_ext/Complex.h) has been
    extended to prevent possible mis-compilation when interfacing
    with Fortran (PR#18430).  The new definition causes compiler
    warnings with static initializers such as {1, 2}, which can be
    changed to {.r=1, .i=2}.
    Using the new definition from C++ depends on compiler extensions
    supporting C features that have not been incorporated into the
    C++ standards but are available in g++ and clang++: this may
    result in C++ compiler warnings but these have been worked around
    for recent versions of common compilers (GCC, Apple/LLVM clang,
    Intel).
    It is intended to change the inclusion of header R_ext/Complex.h
    by other R headers, so C/C++ code files which make use of
    Rcomplex should include that header explicitly.
  UTILITIES:
  * R CMD check does more checking of package .Rd files, warning
    about invalid email addresses and (some) invalid URIs and noting
    empty \item labels in description lists.
  * R CMD check now also reports problems when reading package news
    in md (file NEWS.md) and (optionally) plain text (file NEWS)
    formats.
  * _R_CHECK_TIMINGS_ defaults to a value from the environment even
    for R CMD check --as-cran; this allows for exceptionally fast or
    slow platforms.
    It now applies to checking PDF and HTML versions of the manuals,
    and 'checking CRAN incoming feasibility'.
  * R CMD check can optionally (but included in --as-cran) check
    whether HTML math rendering _via_ KaTeX works for the package .Rd
    files.
  * Non-interactive debugger invocations can be trapped by setting
    the environment variable _R_CHECK_BROWSER_NONINTERACTIVE_ to a
    true value.  This is enabled by R CMD check --as-cran to detect
    the use of leftover browser() statements in the package.
  * The use of sprintf and vsprintf from C/C++ has been deprecated in
    macOS 13 and is a known security risk.  R CMD check now reports
    (on all platforms) if their use is found in compiled code:
    replace by snprintf or vsnprintf respectively. [*NB:* whether
    such calls get compiled into the package is platform-dependent.]
  * Where recorded at installation, R CMD check reports the C and
    Fortran compilers used to build R.
    It reports the OS in use (if known, as given by osVersion) as
    well as that R was built for.
    It notes if a C++ standard was specified which is older than the
    current default: many packages have used C++11 to mean 'not
    C++98' - as C++11 is the minimum supported since R 4.0.0, that
    specification can probably be removed.
  * R CMD INSTALL reports the compilers (and on macOS, the SDK) used,
    and this is copied to the output of R CMD check.
    Where a C++ standard is specified, it is reported.
  * R CMD check's 'checking compilation flags in Makevars' has been
    relaxed to accept the use of flags such as -std=f2008 in
    PKG_FFLAGS.
  * tools::buildVignettes() has a new argument skip, which is used by
    R CMD check to skip (and note) vignettes with unavailable
    \VignetteDepends (PR#18318).
  * New generic .AtNames() added to enable class-specific completions
    after @. The formerly internal function findMatches() is now
    exported, mainly for use in methods for .DollarNames() and
    .AtNames().
  DEPRECATED AND DEFUNCT:
  * default.stringsAsFactors() is defunct.
  * Calling as.data.frame.&lt;class&gt;() directly (for 12 atomic classes)
    is going to be formally deprecated, currently activated by
    setting the environment variable
    _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ to non-empty, which also
    happens in R CMD check --as-cran.
  BUG FIXES:
  * Hashed environments with sizes less than 5 can now grow.
    (Reported to R-devel by Duncan Garmonsway.)
  * as.character(&lt;Rd&gt;, deparse = TRUE) failed to re-escape curly
    braces in LaTeX-like text.  (Reported by Hadley Wickham in
    PR#18324.)
  * library() now passes its lib.loc argument when requiring Depends
    packages; reported (with fix) in PR#18331 by Mikael Jagan.
  * R CMD Stangle: improved message about 'Output' files.
  * head(x, n) and tail(x, n) now signal an error if n is not
    numeric, instead of incidentally "working" sometimes returning
    all of x.  Reported and discussed by Colin Fay, in PR#18357.
  * The "lm" method for summary() now gives the correct F-statistic
    when the model contains an offset.  Reported in PR#18008.
  * C() and `contrasts&lt;-`() now preserve factor level names when
    given a function object (as opposed a function name which did
    preserve names). Reported in PR#17616.
  * c(a = 1, 2)[[]] no longer matches 2 but rather signals a
    _classed_ error.  Reported and analysed by Davis Vaughan in
    PR#18367, a duplicate of PR#18004, by Jan Meis et al.  For
    consistency, NULL[[]] is also erroneous now.  x[[]] &lt;- v gives an
    error of the same class "MissingSubscriptError".
  * The relist() function of utils now supports NULL elements in the
    skeleton (PR#15854).
  * ordered(levels = *) (missing x) now works analogously to factor(,
    ordered=TRUE); reported (with fix) by Achim Zeileis in PR#18389.
  * User-defined Rd macro definitions can now span multiple lines,
    thanks to a patch from Duncan Murdoch. Previously, the Rd parser
    silently ignored everything after the first line.
  * Plain-text help (tools::Rd2txt()) now preserves an initial blank
    line for text following description list items.
  * tools::Rd2HTML() and tools::Rd2latex() no longer split \arguments
    and \value lists at Rd comments.
  * tools::Rd2latex() now correctly handles optional text outside
    \items of argument lists as well as bracketed text at the
    beginning of sections, e.g., \value{[NULL]}.
  * as.character(&lt;POSIXt&gt;) now behaves more in line with the methods
    for atomic vectors such as numbers, and is no longer influenced
    by options().  Ditto for as.character(&lt;Date&gt;).  The
    as.character() method gets arguments digits and OutDec with
    defaults _not_ depending on options().  Use of as.character(*,
    format = .) now warns.
  * Similarly, the as.character.hexmode() and *.octmode() methods
    also behave as good citizen methods and back compatibility option
    keepStr = TRUE.
  * The as.POSIXlt(&lt;POSIXlt&gt;) and as.POSIXct(&lt;POSIXct&gt;) default
    methods now do obey their tz argument, also in this case.
  * as.POSIXlt(&lt;Date&gt;) now does apply a tz (time zone) argument, as
    does as.POSIXct(); partly suggested by Roland Fuss on the R-devel
    mailing list.
  * as.Date.POSIXlt(x) now also works when the list components are of
    unequal length, aka "partially filled" or "ragged".
  * expand.model.frame() looked up variables in the wrong environment
    when applied to models fitted without data.  Reported in
    PR#18414.
  * time() now (also) uses the ts.eps = getOption("ts.eps") argument
    and thus by default rounds values very close to the start (or
    end) of a year.  Based on a proposal by Andre"i V. Kostyrka on
    R-help.
  * Printing of a factanal() result with just one factor and sort =
    TRUE now works regularly, fixing PR#17863 by Timothy Bates,
    thanks to the 'R Contributors' working group.
  * Printing 0-length objects of class "factor", "roman", "hexmode",
    "octmode", "person", "bibentry", or "citation" now prints
    something better, one of which fixes PR#18422, reported by
    Benjamin Feakins.
  * Sys.timezone() queries timedatectl only if systemd is loaded;
    addressing a report by Jan Gorecki in PR#17421.
  * The formula method of cor.test() had scoping problems when
    environment(formula) was not the calling environment; reported
    with a patch proposal by Mao Kobayashi in PR#18439.
  * attach() of an environment with active bindings now preserves the
    active bindings.  Reported by Kevin Ushey in PR#18425.
  * BLAS detection now works also with system-provided libraries not
    available as regular files.  This fixes detection of the
    Accelerate framework on macOS since Big Sur.  Reported by David
    Novgorodsky.
  * download.file() gives a helpful error message in case of an
    invalid download.file.method option, thanks to Colin Fay's report
    in PR#18455.
  * Sporadic crashes of Rterm when using completion have been fixed.
  * Rprof() is now more reliable.  A livelock in thread
    initialization with too short sampling interval has been fixed on
    macOS.  A deadlock in using the C runtime has been fixed on
    Windows.  A potential deadlock has been prevented on Unix.
  * Cursor placement in Rgui now works even after a fixed-width font
    is selected.
  * Mandatory options (options()) are now set on startup so that
    saving and restoring them always works (PR#18372).
  * Package installation, R CMD INSTALL or install.packages(*), now
    parses each of the &lt;pkg&gt;/R/*.R files individually instead of
    first concatenating and then parse()ing the large resulting file.
    This allows parser or syntax errors to be diagnosed with correct
    file names and line numbers, thanks to Simon Dedman's report and
    Bill Dunlap's patch in PR#17859.
    This _does_ require syntactically self contained R source files
    now, fixing another inadvertent bug.
  * predict.lm(&lt;model with offset&gt;) now finds the offset in the
    correct environment, thanks to Andr'e Gillibert's report and patch
    in PR#18456.
  * getInitial(&lt;formula&gt;) now finds the selfStart model in the
    correct environment.  (Reported by Ivan Krylov in PR#18368.)
  * Fix for possible segfault when using recently-added graphics
    features, such as gradients, clipping paths, masks, and groups
    with pdf(file=NULL).
  * class(m) &lt;- class(m) no longer changes a matrix m by adding a
    class _attribute_.
  * packageDate(pkg) now only warns once if there is no pkg.
  * When ts() creates a multivariate time series, "mts", it also
    inherits from "array" now, and is.mts() is documented _and_
    stricter.
  * Rd2txt() now preserves line breaks of \verb Rd content and from
    duplicated \cr.  The former also fixes the rendering of verbatim
    output from Rd \Sexpr in plain-text help.
  * uniroot(f, interval) should no longer wrongly converge _outside_
    the interval in some cases where abs(f(x)) == Inf for an x at the
    interval boundary, thanks to posts by Ben Bolker and Serguei
    Sokol on R-devel.
  * Vectorized alpha handling in palette functions such as in gray(),
    rainbow(), or hcl.colors() works correctly now, thanks to Achim
    Zeileis' report and patch in PR#18476.
  * Formatting and print()ing of bibentry objects has dropped the
    deprecated citation.bibtex.max argument, such that the bibtex
    argument's default for print.bibentry() depends directly on the
    citation.bibtex.max option, whereas in format.bibentry() the
    option no longer applies.
  * Attempting to use a character string naming a foreign function
    entry point in a foreign function call in a package will now
    signal an error if the packages has called R_forceSymbols to
    specify that symbols must be used.
  * An error in table() could permanently set options(warn=2)
    promoting all subsequent warnings to errors.
  * The sigma() function gave misleading results for binary GLMs.  A
    new method for objects of class "glm" returns the square root of
    the estimate of the dispersion parameter using the same
    calculation as summary.glm().
  * bs() and ns() in the (typical) case of automatic knot
    construction, when some of the supposedly inner knots coincide
    with boundary knots, now moves them inside (with a warning),
    building on PR#18442 by Ben Bolker.
  * R CMD on Windows now skips the site profile with --no-site-file
    and --vanilla even when R_PROFILE is set (PR#18512, from Kevin
    Ushey).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1686916800">- CHANGES IN R 4.3.1:
  C-LEVEL FACILITIES:
  * The C-level API version of R's integrate(), Rdqags() in Applic.h,
    now returns the correct number of integrand evaluations neval,
    fixing PR#18515 reported and diagnosed by Stephen Wade.
  * The C prototypes for LAPACK calls dspgv and dtptrs in
    R_exts/Lapack.h had one too many and one too few character length
    arguments - but this has not caused any known issues. To get the
    corrected prototypes, include
    [#]include &lt;Rconfig.h&gt; // for PR18534fixed
    [#]ifdef PR18534fixed
    [#] define usePR18534fix 1
    [#]endif
    [#]include &lt;R_exts/Lapack.h&gt;
    in your C/C++ code (PR#18534).
  INSTALLATION:
  * Many of the checks of esoteric Internet operations and those
    using unreliable external sites have been moved to a new target
    that is not run by default and primarily intended for the core
    developers.  To run them use
    cd tests; make test-Internet-dev
  BUG FIXES:
  * .S3methods(), typically called from methods(), again marks
    methods from package base as visible.
    Also, the visibility of non-base methods is again determined by
    the method's presence in search().
  * tools::Rdiff() is now more robust against invalid strings, fixing
    installation tests on Windows without Rtools installed
    (PR#18530).
  * Fix (new) bug in hcl.colors(2, *), by Achim Zeileis (PR#18523).
  * head(., &lt;illegal&gt;) and tail(..) now produce more useful "Error in
    ...." error messages, fixing PR#18362.
  * Package code syntax on Windows is checked in UTF-8 when UTF-8 is
    the native encoding.
  * na.contiguous(x) now also returns the first run, when it is at
    the beginning and there is a later one of the same length;
    reported to R-devel, including a fix, by Georgi Boshnakov.
    Further, by default, it modifies only an existing attr(*,"tsp")
    but otherwise no longer sets one.
  * chol(&lt;not pos.def&gt;, pivot = &lt;T|F&gt;) now gives a correct error or
    warning message (depending on pivot), thanks to Mikael Jagan's
    (PR#18541).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1699012800">- CHANGES IN R 4.3.2:
  NEW FEATURES:
  * The default initialization of the "repos" option from the
    repositories file at startup can be skipped by setting
    environment variable R_REPOSITORIES to NULL such that
    getOption("repos") is empty if not set elsewhere.
  * qr.X() is now an implicit S4 generic in methods.
  * iconv(to = "ASCII//TRANSLIT") is emulated using substitution on
    platforms which do not support it (notably Alpine Linux).  This
    should give a human-readable conversion in ASCII on all platforms
    (rather than NA_character_).
  * trans3d() gains options continuous and verbose addressing the
    problem of possible "wrap around" when projecting too long
    curves, as reported by Achim Zeileis in PR#18537.
  * tools::showNonASCII() has been rewritten to work better on macOS
    14 (which has a changed implementation of iconv()).
  * tiff(type = "quartz") (the default on macOS) now warns if
    compression is specified: it continues to be ignored.
  INSTALLATION on a UNIX-ALIKE:
  * There is some support for building with Intel's LLVM-based
    compilers on x86_64 Linux, such as (C) icx, (C++) ipcx and
    (Fortran) ifx from oneAPI 2023.x.y.
  * There is support for using LLVM's flang-new as the Fortran
    compiler from LLVM 16.0.x (preferably 17.0.0 or later).
  UTILITIES:
  * R CMD check reports the use of the Fortran 90 random number
    generator RANDOM_NUMBER() and the subroutines to initialize it.
    'Writing R Extensions' has example code to use R's RNGs from
    Fortran.
  BUG FIXES:
  * substr(x, n, L) &lt;- cc now works (more) correctly for multibyte
    UTF-8 strings x when L &gt; nchar(x), thanks to a report and patch
    by 'Architect 95'.
  * contrib.url(character()) now returns 0-length character() as
    documented, which also avoids spurious warnings from
    available.packages() et al. in the edge case of an empty vector
    of repository URLs.
  * readChar(., 4e8) no longer fails, thanks to Kodi Arfer's report
    (PR#18557).
  * lapply(&lt;list&gt;, as.data.frame) no longer warns falsely for some
    base vector components.
  * Communication between parent and child processes in the multicore
    part of parallel could fail on platforms that do not support an
    arbitrarily large payload in system functions read()/write() on
    pipes (seen on macOS where a restriction to INT_MAX bytes is
    documented, without doing a partial read unlike Linux). The
    payload is now split into 1Gb chunks to avoid that problem.
    (PR#18571)
  * qqplot(x,y, conf.level=.) gives better confidence bounds when
    length(x) != length(y), thanks to Alexander Ploner's report and
    patch proposal (PR#18557).
  * norm(&lt;0-length&gt;, "2") now gives zero instead of an error, as all
    the other norm types, thanks to Mikael Jagan's PR#18542.
  * Build-stage Rd macros \packageAuthor and \packageMaintainer now
    process Authors@R, fixing NA results when the package DESCRIPTION
    omits Author and Maintainer fields.
  * Formatting and printing complex numbers could give things like
    0.1683-0i because of rounding error: -0i is now replaced by +0i.
  * postscript() refused to accept a title comment containing the
    letter "W" (PR#18599).
  * isoreg(c(1,Inf)) signals an error instead of segfaulting, fixing
    PR#18603.
  * tiff(type = "Xlib") was only outputting the last page of
    multi-page plots.
  * tools::latexToUtf8() again knows about \~{n} and other letters
    with tilde, fixing a regression in R 4.3.0, and about \^{i} as an
    alternative to \^{\i} (similarly with other accents).
    Furthermore, LaTeX codes for accented I letters are now correctly
    converted, also fixing related mistakes in
    tools::encoded_text_to_latex().
  * tar(*, tar = "internal") no longer creates out-of-spec tar files
    in the very rare case of user or group names longer than 32
    bytes, fixing PR#17871 with thanks to Ivan Krylov.
  * When using the "internal" timezone datetime code, adding a
    fraction of a second no longer adds one second, fixing PR#16856
    from a patch by Ivan Krylov.
  * tools::checkRd() no longer produces spurious notes about
    "unnecessary braces" from multi-line Rd results of \Sexpr macros.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1709208000">- CHANGES IN R 4.3.3:
  NEW FEATURES:
  * iconv() now fixes up variant encoding names such as "utf8"
    case-insensitively.
  DEPRECATED AND DEFUNCT:
  * The legacy encoding = "MacRoman" is deprecated in pdf() and
    postscript(): support was incomplete in earlier versions of R.
  BUG FIXES:
  * Arguments are now properly forwarded to methods on S4 generics
    with ... in the middle of their formal arguments. This was broken
    for the case when a method introduced an argument but did not
    include ... in its own formals. Thanks to Herv'e Pag`es for the
    report PR#18538.
  * Some invalid file arguments to pictex(), postscript() and xfig()
    opened a file called NA rather than throw an error.  These
    included postscript(NULL) (which some people expected to work
    like pdf(NULL)).
  * Passing filename = NA to svg(), cairo_pdf(), cairo_ps() or the
    Cairo-based bitmap devices opened a file called NA: it now throws
    an error.
  * quartz(file = NA) opened a file called NA, including when used as
    a Quartz-based bitmap device.  It now gives an error.
  * rank(&lt;long vector&gt;) now works, fixing PR#18617, thanks to Ilia
    Kats.
  * seq.int() did not adequately check its length.out argument.
  * match(&lt;POSIXct&gt;, .) is correct again for differing time zones,
    ditto for "POSIXlt", fixing PR#18618 reported by Bastian Klein.
  * drop.terms(*, dropx = &lt;0-length&gt;) now works, fixing PR#18563 as
    proposed by Mikael Jagan.
  * drop.terms(*) keeps + offset(.) terms when it should, PR#18565,
    and drop.terms() no longer makes up a response, PR#18566, fixing
    both bugs thanks to Mikael Jagan.
  * getS3method("t", "test") no longer finds the t.test() function,
    fixing PR#18627.
  * pdf() and postscript() support for the documented Adobe encodings
    "Greek" and "Cyrilllic" was missing (although the corresponding
    Windows' codepages could be used).
  * Computations of glyph metric information for pdf() and
    postscript() did not take into account that transliteration could
    replace one character by two or more (only seen on macOS 14) and
    typically warned that the information was not known.
  * rank(x) no longer overflows during integer addition, when
    computing rank average for largish but not-yet long vector x,
    fixing PR#18630, thanks to Ilia Kats.
  * list.files() on Windows now returns also files with names longer
    that 260 bytes (the Windows limit is 260 characters).
    Previously, some file names particularly with 'East Asian'
    characters were omitted.
  * cov2cor(&lt;0 x 0&gt;) now works, fixing PR#18423 thanks to Mikael
    Jagan and Elin Waring.
  * cov2cor(&lt;negative diagonal&gt;) and similar now give one warning
    instead of two, with better wording, fixing PR#18424 thanks to
    Mikael Jagan.
  * tools:: startDynamicHelp() now ensures port is in proper range,
    fixing PR#18645.
  * pbeta(x, a,b) is correct now for x=0 or 1 in the boundary cases
    where a or b or both are 0, fixing PR#18672 thanks to Michael
    Fay.
  * pmatch(x, table) for large table, also called for data frame row
    selection, dfrm[nm, ], is now interruptible, fixing PR#18656.
  * predict(&lt;rank-deficient lm&gt;, newdata=*) fix computing of nbasis,
    see Russ Lenth's comment 29 in PR#16158.
  * Added a work-around for a bug in macOS 14.3.1 and higher which
    prevents R plots in the Quartz Cocoa device from updating on
    screen.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1713960000">- CHANGES IN R 4.4.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Startup banners, R --version, sessionInfo() and R CMD check no
    longer report (64-bit) as part of the platform as this is almost
    universal - the increasingly rare 32-bit platforms will still
    report (32-bit).
    On Windows, ditto for window titles.
  * is.atomic(NULL) now returns FALSE, as NULL is not an atomic
    vector.  Strict back-compatibility would replace is.atomic(foo)
    by (is.null(foo) || is.atomic(foo)) but should happen only
    sparingly.
  NEW FEATURES:
  * The confint() methods for "glm" and "nls" objects have been
    copied to the stats package.  Previously, they were stubs which
    called versions in package MASS. The MASS namespace is no longer
    loaded if you invoke (say) confint(glmfit).  Further, the "glm"
    method for profile() and the plot() and pairs() methods for class
    "profile" have been copied from MASS to stats.  (profile.nls()
    and plot.profile.nls() were already in stats.)
  * The confint() and profile methods for "glm" objects have gained a
    possibility to do profiling based on the Rao Score statistic in
    addition to the default Likelihood Ratio. This is controlled by a
    new test = argument.
  * The pairs() method for "profile" objects has been extended with a
    which = argument to allow plotting only a subset of the
    parameters.
  * The "glm" method for anova() computes test statistics and
    p-values by default, using a chi-squared test or an F test
    depending on whether the dispersion is fixed or free.  Test
    statistics can be suppressed by giving argument test a false
    logical value.
  * In setRepositories() the repositories can be set using their
    names via name = instead of index ind =.
  * methods() and .S3methods() gain a all.names option for the (rare)
    case where functions starting with a . should be included.
  * Serializations can now be interrupted (e.g., by Ctrl-C on a
    Unix-alike) if they take too long, e.g., from save.image(),
    thanks to suggestions by Ivan Krylov and others on R-devel.
  * New startup option --max-connections to set the maximum number of
    simultaneous connections for the session.  Defaults to 128 as
    before: allowed values up to 4096 (but resource limits may in
    practice restrict to smaller values).
  * R on Windows (since Windows 10 2004) now uses the new Segment
    Heap allocator. This may improve performance of some
    memory-intensive applications.
  * When R packages are built, typically by R CMD build &lt;pkg&gt;, the
    new --user=&lt;build_user&gt; option overrides the (internally
    determined) user name, currently Sys.info()["user"] or LOGNAME.
    This is a (modified) fulfillment of Will Landau's suggestion in
    PR#17530.
  * tools::testInstalledBasic() gets new optional arguments outDir
    and testSrcdir, e.g., allowing to use it in a &lt;builddir&gt; !=
    &lt;srcdir&gt; setup, and in standard "binary" Windows installation
  * if* a source tests/ folder is present.
  * range(&lt;DT_with_Inf&gt;, finite = TRUE) now work for objects of class
    "Date", "POSIXct", and "POSIXlt" with infinite entries,
    analogously to range.default(), as proposed by Davis Vaughan on
    R-devel.  Other range()-methods can make use of new function
    .rangeNum().
  * New .internalGenerics object complementing .S3PrimitiveGenerics,
    for documentation and low-level book-keeping.
  * grid() now invisibly returns the x- and y- coordinates at which
    the grid-lines were drawn.
  * norm(., type) now also works for complex matrices.
  * kappa(., exact = TRUE, norm = *) now works for all norms and also
    for complex matrices.  In symmetric / triangular cases, the new
    argument uplo = "U" | "L" allows the upper or lower triangular
    part to be specified.
  * memDecompress(type = "unknown") recognizes compression in the
    default 'zlib' format as used by memCompress(type = "gzip").
  * memCompress() and memDecompress() will use the libdeflate library
    (&lt;https://github.com/ebiggers/libdeflate&gt;) if installed.  This
    uses the same type of compression for type = "gzip" but is 1.5-2x
    faster than the system libz library on some common platforms: the
    speed-up may depend on the library version.
  * diff() for objects of class "Date", "POSIXct", and "POSIXlt"
    accepts a units argument passed via ....
  * Dynamic help now does a much better job of rendering package
    DESCRIPTION metadata.
  * Rprof() gains an event argument and support for elapsed (real)
    time profiling on Unix (PR#18076).
  * filled.contour() gains a key.border argument.
  * tools::update_pkg_po() gets arguments pot_make and mo_make for
    _not_ re-making the corresponding files, and additionally a
    verbose argument.
  * Hexadecimal string colour specifications are now accepted in
    short form, so, for example, we can use "#123", which is
    equivalent to "#112233".
    Thanks to MikeFC for the original idea and Ella Kaye, Malcolm
    Barrett, George Stagg, and Hanne Oberman for the patch.
  * Plain-text help shows \var markup by angle brackets.
  * The new experimental primitive function declare() is intended to
    eventually allow information about R code to be communicated to
    the interpreter, compiler, and code analysis tools. The syntax
    for declarations is still being developed.
  * Functions psmirnov(), qsmirnov() and rsmirnov() in package stats
    have had argument two.sided renamed to alternative, to take into
    account that the permutation distributions of the one-sided
    statistics can be different in the case of ties.  Consequence of
    PR#18582.
  * sort() is now an implicit S4 generic in methods.
  * Formatting and printing, format(z), print(z), of complex vectors
    z no longer zap relatively small real or imaginary parts to zero,
    fixing PR#16752.  This is an API change, as it was documented
    previously to round real and imaginary parts together on purpose,
    producing nicer looking output.  As mentioned, e.g. in the PR,
    this change is compatible with many other "R-like" programming
    environments.
    We have simplified the internal code and now basically format the
    real and imaginary parts independently of each other.
  * New experimental functions Tailcall() and Exec() to support
    writing stack-space-efficient recursive functions.
  * Where characters are attempted to be plotted by pdf(),
    postscript() and xfig() which are not in the selected 8-bit
    character set (most often Latin-1) and the R session is using a
    UTF-8 locale, the warning messages will show the UTF-8 character
    rather than its bytes and one dot will be substituted per
    character rather than per byte.  (Platforms whose iconv() does
    transliteration silently plot the transliteration.)
    In a UTF-8 locale some transliterations are now done with a
    warning (e.g., dashes and Unicode minus to hyphen, ligatures are
    expanded, permille (‰) is replaced by o/oo), although the OS may
    have got there first.  These are warnings as they will continue
    to be replaced by dots in earlier versions of R.
  * The matrix multiplication functions crossprod() and tcrossprod()
    are now also primitive and S3 generic, as %*% had become in R
    4.3.0.
  * source() and example() have a new optional argument catch.aborts
    which allows continued evaluation of the R code after an error.
  * The non-Quartz tiff() devices allow additional types of
    compression if supported by the platform's libtiff library.
  * The list of base and recommended package names is now provided by
    tools::standard_package_names().
  * cairo_pdf() and cairo_ps() default to onefile = TRUE to closer
    match pdf() and postscript().
  * New option catch.script.errors provides a documented way to catch
    errors and then continue in non-interactive use.
  * L %||% R newly in base is an expressive idiom for the phrases
    if(!is.null(L)) L else R or if(is.null(L)) R else L.
  * The return value from warnings() now always inherits from
    "warnings" as documented, now also in the case of no warnings
    where it previously returned NULL.
  * as.complex("1i") now returns 0 + 1i instead of NA with a warning.
  * z &lt;- c(NA, 1i) now keeps the imaginary part Im(z[1]) == 0, no
    longer coercing to NA_complex_.  Similarly, cumsum(z) correctly
    sums real and imaginary parts separately, i.e., without
    "crosstalk" in case of NAs.
  * On Alpine Linux iconv() now maps "latin2", "latin-2", "latin9"
    and "latin-9" to encoding names the OS knows about
    (case-insensitively).
  * iconv(sub = "Unicode") now always zero-pads to four (hex) digits,
    rather than to 4 or 8.  (This seems to have become the convention
    once Unicode restricted the number of Unicode points to 2^21 - 1
    and so will never need more than 6 digits.)
  * NCOL(NULL) now returns 0 instead of 1, for consistency with
    cbind().
  * The information for the Euro glyph missing from the Adobe .afm
    files for the Courier, Helvetica and Times families has been
    copied from their URW equivalents - this will improve vertical
    centring in the pdf() and postscript() devices.
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.12.0.  The changes are almost entirely cosmetic.
  * The included LAPACK sources have been updated to version 3.12.0
    and some further double-complex routines added.
  * There are new font families for the 2014--5 URW 2.0 fonts (see
    ?pdf) which are included in recent versions of Ghostscript.
    These have font widths for most Greek glyphs and a few others
    which were missing from the original versions (whose font
    families remain available for reproducibility, although
    Ghostscript-based viewers will render using the 2.0 versions).
  * Improve the large-n efficiency of as.matrix(&lt;dist&gt;), thanks an R
    contributors effort, notably by Tim Taylor and Heather Turner,
    see PR#18660.
  * The default and numeric methods of all.equal() get a check.class
    option.
  * zapsmall() gets new optional arguments, function mFUN and min.d,
    for extra flexibility; fulfills a wish in PR#18199.  Also, it is
    now an implicit S4 generic in package methods.
  * The Rd filter for aspell() gains an ignore argument.
  * New generic function sort_by(), primarily useful for the
    data.frame method which can be used to sort rows of a data frame
    by one or more columns.
  * The icence headers for the RPC code in src/extra/xdr have been
    updated to use the GPL-compatible licence published by Oracle
    America in 2010.
  * New function pkg2HTML() in tools to create single-page HTML
    reference manuals for R packages.
  * The byte code evaluator now uses less C stack space for recursive
    calls to byte-compiled functions. It also makes more of an effort
    to avoid allocations for scalar return values.
  * New completion option backtick (disabled by default) allows
    non-syntactic completions to be wrapped in backquotes. This is
    currently only useful for Jupyter notebooks via the IRkernel
    package, and may cause problems for other backends.
  INSTALLATION:
  * The parser has been updated to work with bison 3.8.2, which is
    now used for the pre-generated parsers in gram.c, file.c, and
    gramRd.c. A few parser error messages have changed, which may
    affect code that relies on exact messages.
  INSTALLATION on a UNIX-ALIKE:
  * System valgrind headers are now required to use configure option
  - -with-valgrind-instrumentation with value 1 or 2.
  * configure will warn if it encounters a 32-bit build, as that is
    nowadays almost untested.
  * Environment variable R_SYSTEM_ABI is no longer used and so no
    longer recorded in etc/Renviron (it was not on Windows and was
    only ever used when preparing package tools).
  * If the libdeflate library and headers are available, libdeflate
    rather than libz is used to (de)compress R objects in lazy-load
    databases.  Typically tasks spend up to 5% of their time on such
    operations, although creating lazy-data databases is one of the
    exceptions.
    This can be suppressed if the library is available by the
    configure option --without-libdeflate-compression.
  * configure option --enable-lto=check has not worked reliably since
    2019 and has been removed.
  * The minimum autoconf requirement for a maintainer build has been
    increased to autoconf 2.71.
    It is intended to increase this to 2.72 for R 4.5.0: the
    distributed configure file was generated using 2.72.
  * The minimum version requirement for an external LAPACK has been
    reduced to 3.9.0.
  * No default C++ compiler is set if no C++17 compiler is detected:
    there is no longer an automatic fallback to C++14 or C++11.
    Compilers from the last five years should have sufficient
    support: for others macros CXX and CXXSTD can be set in file
    config.site to provide a fallback if needed.
    The Objective-C++ compiler now by default uses the standard
    selected by R for C++ (currently C++17) rather than the default
    standard for the C++ compiler (which on macOS is still C++98).
  INSTALLATION on macOS:
  * A new configure option --with-newAccelerate makes use of Apple's
    'new' BLAS / LAPACK interfaces in their Accelerate framework.
    Those interfaces are only available in macOS 13.3 or later, and
    building requires SDK 13.3 or later (from the Command Line Tools
    or Xcode 14.3 or later).
    By default the option uses new Accelerate for BLAS calls: to also
    use it for LAPACK use option --with-newAccelerate=lapack.  The
    later interfaces provide LAPACK 3.9.1 rather than 3.2.1: 3.9.1 is
    from 2021-04 and does not include the improved algorithms
    introduced in LAPACK 3.10.0 (including for BLAS calls).
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools44, an update of the Rtools43 toolchain.  It is
    based on GCC 13 and newer versions of MinGW-W64, binutils and
    libraries (targeting 64-bit Intel CPUs).  R-devel can no longer
    be built using Rtools43 without changes.
  * Rtools44 has experimental support for 64-bit ARM (aarch64) CPUs
    _via_ the LLVM 17 toolchain using lld, clang/flang-new and
    libc++.
  UTILITIES:
  * R CMD check notes when S4-style exports are used without
    declaring a strong dependence on package methods.
  * tools::checkRd() (used by R CMD check) detects more problems with
    \Sexpr-based dynamic content, including bad nesting of \Sexprs
    and invalid arguments.
  * tools::checkRd() now reports Rd titles and section names ending
    in a period; this is ignored by R CMD check unless environment
    variable _R_CHECK_RD_CHECKRD_MINLEVEL_ is set to -5 or smaller.
  * R CMD check now notes Rd files without an \alias, as long
    documented in 'Writing R Extensions' §1.3.1.  The check for a
    missing \description has been moved from tools::checkRd() to
    tools::checkRdContents().
  * R CMD check now visits inst/NEWS.Rd and OS-specific man
    subdirectories when checking Rd files.
  * tools::checkDocFiles() and tools::checkRdContents() now also
    check internal Rd files by default, but "specially" (ignoring
    missing documentation of arguments).
  * R CMD Rdiff gets option --useEx.
  * R CMD check now warns on non-portable uses of Fortran KIND such
    as INTEGER(KIND=4) and REAL(KIND=8).
    To see the failing lines set environment variable
    _R_CHECK_FORTRAN_KIND_DETAILS_ to a true value.
  * When checking Rd files, R CMD check now notes some of the "lost
    braces" that tools::checkRd() finds.  Typical problems are Rd
    macros missing the initial backslash (e.g., code{...}), in-text
    set notation (e.g., {1, 2}, where the braces need escaping), and
    \itemize lists with \describe-style entries of the form
    \item{label}{description}.
  * R CMD INSTALL (and hence check) will compile C++ code with
  - DR_NO_REMAP if environment variable _R_CXX_USE_NO_REMAP_ is set
    to a true value.  It is planned that this will in future become
    the default for compiling C++.
  * The new built-in Rd macro \dontdiff{} can be used to mark example
    code whose output should be ignored when comparing check output
    to reference output (tests/Examples/&lt;pkg&gt;-Ex.Rout.save).  The
    \dontdiff tag, like \donttest, is _not_ shown on the rendered
    help page, so provides a clean alternative to ##
    IGNORE_RDIFF_(BEGIN|END) comments.
  * R CMD build when there is no NAMESPACE, now uses the recommended
    exportPattern("^[^.]"), instead of exporting everything.
  * R CMD check now warns about non-ASCII characters in the NAMESPACE
    file (in addition to R files). Such packages are not portable and
    may fail to install on some platforms.
  C-LEVEL FACILITIES:
  * Headers R_ext/Applic.h and R-ext/Linpack.h used to include
    R_ext/BLAS.h although this was undocumented and unneeded by their
    documented entry points.  They no longer do so.
  * New function R_missing(), factored out from do_missing(), used to
    fix PR#18579.
  * SEXP type S4SXP has been renamed to OBJSXP to support
    experimenting with alternative object systems.  The S4SXP value
    can still be used in C code but is now deprecated.  Based on
    contributions from the R Consortium's Object-Oriented Programming
    Working Group.
  * New function pow1p(x,y) for accurate (1+x)^y.
  * mkCharLenCE was incorrectly documented to take a size_t length
    but was implemented with int (and character strings in R are
    limited to 2^31 - 1 bytes).
  DEPRECATED AND DEFUNCT:
  * data() no longer handles zipped data from long-defunct (since R
    2.13.0) --use-zip-data installations.
  * The legacy graphics devices pictex() and xfig() are now
    deprecated.  They do not support recent graphics enhancements and
    their font handling is rudimentary. The intention is to retain
    them for historical interest as long as they remain somewhat
    functional.
  * Support for encoding = "MacRoman" has been removed from the pdf()
    and postscript() devices - this was a legacy encoding supporting
    classic macOS up to 2001 and no longer has universal libiconv
    support.
  * is.R() is deprecated as no other S dialect is known to be in use
    (and this could only identify historical dialects, not future
    ones).
    Further information on calls can be obtained by setting the
    environment variable _R_DEPRECATED_IS_R_ to error which turns the
    deprecation warning into an error and so by default gives a
    traceback.  (This is done by R CMD check --as-cran.)
  * UseMethod() no longer forwards local variables assigned in the
    generic function into method call environments before evaluating
    the method body. This makes method calls behave more like
    standard function calls and makes method code easier to analyze
    correctly.
  * The twelve as.data.frame.&lt;class&gt;() methods which were deprecated
    only via _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ and in R CMD
    check --as-cran are formally deprecated now in favour of calling
    as.data.frame() or as.data.frame.vector().  The deprecation
    "check" now works also when as.data.frame() is S4 generic thanks
    to Ivan Krylov.
  * The default method for the directional comparison operators &lt;, &gt;,
    &lt;=, and &gt;= now signals an error when one of the operands is a
    language object, i.e. a symbol or a call.
  * For terms.formula(), deprecate abb and neg.out arguments
    _formally_ in addition to just documenting it.
  BUG FIXES:
  * The methods package is more robust to not being attached to the
    search path.  More work needs to be done.
  * pairwise.t.test() misbehaved when subgroups had 0 DF for
    variance, even with pool.sd = TRUE.  (PR#18594 by Jack Berry).
  * Probability distribution functions [dpq]&lt;distrib&gt;(x, *), but also
    bessel[IKJY](x, .) now consistently preserve attributes(x) when
    length(x) == 0, e.g., for a 2 x 0 matrix, thanks to Karolis
    Koncevičius' report PR#18509.
  * Group "Summary" computations such as sum(1:3, 4, na.rm = 5, NA,
    7, na.rm = LL) now give an error instead of either 17 or NN for
    LL true or false, as proposed by Ivan Krylov on the R-devel
    mailing list.  (This also means it is now an error to specify
    na.rm more than once.)
  * as.complex(x) now returns complex(real = x, imaginary = 0) for
    _all_ numerical and logical x, notably also for NA or
    NA_integer_.
  * Directories are now omitted by file.copy(, recursive = FALSE) and
    in file.append() (PR#17337).
  * gsub() and sub() are now more robust to integer overflow when
    reporting errors caused by too large input strings (PR#18346).
  * Top-level handlers are now more robust to attempts to remove a
    handler whilst handlers are running (PR#18508).
  * The handling of Alt+F4 in dialogs created on Windows using
    GraphApp has been fixed (PR#13870).
  * density() more consistently computes grid values for the
    FFT-based convolution, following Robert Schlicht's analysis and
    proposal in PR#18337, correcting density values typically by a
    factor of about 0.999.  Argument old.coords = TRUE provides back
    compatibility.
  * palette.colors() gains a name argument that defaults to FALSE
    controlling whether the vector of colours that is returned has
    names (where possible).  PR#18529.
  * tools::xgettext() no longer extracts the (non-translatable) class
    names from warningCondition and errorCondition calls.
  * S3method(&lt;gen&gt;, &lt;class&gt;, &lt;func&gt;) in the NAMESPACE file now works
    (again) when &lt;func&gt; is visible from the namespace, e.g.,
    imported, or in base.
  * getParseData(f) now also works for a function defined in the
    first of several &lt;pkg&gt;/R/*.R source files, thanks to Kirill
    Müller's report and Duncan Murdoch's patch in PR#16756.
  * Rd \Sexpr macros with nested #ifdef conditionals were not
    processed.
  * A non-blocking connection with non-default encoding (such as a
    socket) now correctly returns from readLines() after new data has
    arrived also when its EOF had been reached previously.  Thanks to
    Peter Meilstrup's report on R-devel and Ivan Krylov's report and
    patch proposal in PR#18555.
  * tools::checkRdContents() failed to detect empty argument
    descriptions when they spanned multiple lines, including those
    generated by prompt().  These cases are now noted by R CMD check.
  * Plain-text help no longer outputs spurious colons in the
    arguments list (for multi-line \item labels in the Rd source).
  * kappa() and rcond() work correctly in more cases; kappa(., norm =
    "2") now warns that it computes the 1-norm with (default) exact =
    FALSE; prompted by Mikael Jagan's quite comprehensive PR#18543.
  * Rd skeletons generated by prompt() or promptData() now use a
    dummy title (so R CMD build works).  tools::checkRdContents() has
    been updated to detect such template leftovers, including from
    promptPackage().
  * When S4 method dispatch fails because no method was found, the
    error message now includes the signature argument names; thanks
    to Michael Chirico's proposal on the R-devel list.
  * withAutoprint({ .. }) now preserves srcrefs previously lost,
    thanks to Andrew Simmons' report plus fix in PR#18572.
  * transform.data.frame() no longer adjusts names; in particular,
    untransformed variables are kept as-is, including those with
    syntactically invalid names (PR#17890).
  * The keep.source option for Rd \Sexpr blocks is no longer ignored.
  * The formula methods for t.test() and wilcox.test() now catch when
    paired is passed, addressing PR#14359; use Pair(x1, x2) ~ 1 for a
    paired test.
  * The level reported in the browser prompt was often too large. It
    now shows the number of browser contexts on the stack.
  * For cbind() and rbind(), the optional deparse.level argument is
    now properly passed to methods, thanks to Mikael Jagan's PR#18579
    and comments there.
  * Some error and warning messages for large ('long vector')
    matrix(v, nr, nc) and dim(m) &lt;- d are now correct about sizes,
    using long long formatting, fixing PR#18612 (and more) reported
    by Mikael Jagan.
  * readChar(useBytes = TRUE) now terminates strings even when the
    underlying connection uses extra spaces in the input buffer.
    This fixes problems with extra garbage seen with gzip
    connections, PR#18605.
  * Named capture in PCRE regular expressions now works also with
    more than 127 named groups (PR#18588).
  * Datetime functions are now robust against long jumps when dealing
    with internal time zone changes.  This avoids confusing warnings
    about an invalid time zone, previously triggered by turning
    warnings into errors or handling them via tryCatch (PR#17966,
    PR#17780).
  * Datetime functions now restore even an empty TZ environment
    variable after internal time zone changes (PR#17724).  This makes
    results of datetime functions with this (typically unintentional)
    setting more predictable.
  * drop.terms(*) now drops response as by default, keep.response =
    FALSE, fixing PR#18564 thanks to Mikael Jagan.
  * dummy.coef(.) now also works for lm()-models with character
    categorical predictor variables rather than factor ones, fixing
    PR#18635 reported by Jinsong Zhao.
  * formals(f) &lt;- formals(f) now also works for a function w/o
    arguments and atomic _constant_ body(f).
  * Correct as.function(&lt;invalid list&gt;, .)'s error message.
  * removeSource() is yet more thorough in finding and removing
    "srcref" and the other source references from parsed R language
    chunks, fixing PR#18638 thanks to Andrew Simmons.
  * dgeom() is more accurate now, notably when its result is very
    small, fixing PR#18642 thanks to the proposal of Morten Welinder,
    also improving other instances where C level binom_raw(x, n, ..)
    has x == 0 or x== n.
  * warning() with options(warn = 1) has improved output for
    multi-line messages.
  * axis.Date() and axis.POSIXct() now respect the par("lab") setting
    for the number of pretty() intervals.
  * Comparisons for language objects (which are based on deparsing)
    are now more careful about using accurate deparsed results
    (PR#18676).
  * Plain-text help (Rd2txt) now correctly preserves blank lines
    following single-line \dontrun code.
  * &lt;POSIXlt&gt;[*] no longer sets wrong "balanced" attribute, fixing
    PR#18681 thanks to Mikael Jagan.
  * str(&lt;classed-call&gt;) now deparses the call as expected, fixing
    PR#18684, reported by Dave Slager.
  * In Rd examples, code following the closing brace of a \dontrun,
    \dontshow or \donttest tag on the same line is no longer skipped
    when R CMD check runs the examples.
  * as.data.frame(matrix(*, ncol=0)) now gets valid names() and
    colnames(); reported by Davis Vaughan on the R-devel list.
  * Internal Mathlib function stirlerr(n) is now almost fully
    (52-bit) accurate for all n &gt;= ~5.9 and more accurate also in the
    range 1 -- 5.9.  This entails small ("after 12th decimal")
    changes in density functions, e.g., dgamma() in _some_ regions of
    their support.  The fix was partly prompted by Morten Welinder's
    PR#18640.
  * Numbers like 9876543.2 are now considered non-integer by Mathlib
    internal R_nonint(), amending original fix of PR#15734.
  * Rd comment lines no longer cause broken paragraphs in the
    rendered PDF and plain-text help. In code blocks, pure comment
    lines (starting with %) no longer produce an empty line.
  * xtabs(Freq ~ .) now consistently defaults to na.action = na.pass,
    using na.rm = FALSE (added as an argument) when summing over Freq
    (PR#17770).
  * tools::testInstalledPackage() is no longer silent about failures
    from running examples or tests and its return code no longer
    ignores failures from checking vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1718366400">- CHANGES IN R 4.4.1:
  C-LEVEL FACILITIES:
  * Functions R_atof and R_strtod declared in header R_ext/Utils.h
    are now documented in 'Writing R Extensions' and so formally part
    of the API.
  * The non-API entry points Rf_setSVector, Rf_StringFalse,
    Rf_StringTrue and Rf_isBlankString have been added to those
    reported by R CMD check.
  * The new function Rf_allocLang is now available. This provides an
    alternative to the idiom of calling Rf_allocList followed by
    SET_TYPEOF.
  UTILITIES:
  * R CMD check now reports as warnings what gfortran calls 'Fortran
    2018 deleted features', all of which have long been marked as
    'obsolescent' and some of which were deleted in Fortran 2008 or
    earlier.  Fortran compilers are no longer required to support
    these.
  BUG FIXES:
  * as.numeric(), scan(), type.convert() and other places which use
    the internal C function R_strtod now require a _non-empty_ digit
    sequence in a decimal or binary exponent.  This aligns with the
    C/POSIX standard for strtod and with ?NumericConstants.
  * as.data.frame(m, make.names=NA) now works correctly for a matrix
    m with NA's in row names.
  * The error message from &lt;POSIXlt&gt;[["hour"]] and similar now
    mentions *[[, "hour"]], as wished for in PR#17409 and proposed by
    Michael Chirico.
  * qbinom() and potentially qpois(), qnbinom(), no longer sometimes
    fail accurate inversion (of pbinom(), etc), thanks to Christopher
    Chang's report and patch in PR#18711.
  * The internal help server on Windows can again serve requests sent
    in quick succession, fixing a regression in R 4.4.0.
  * debugcall(&lt;S3Generic&gt;()) now also works when a corresponding
    S4-generic version is in the methods cache (PR#18143).
  * Package tools' toTitleCase(ch0) now returns character(0) when ch0
    is of zero length; fixing PR#18724, reported by David Hugh Jones.
  * R CMD check is no longer broken (without a check result and no
    explanation in 00check.log) for a package which declares an
    invalid VignetteBuilder in DESCRIPTION but has no vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1730376000">- CHANGES IN R 4.4.2:
  C-LEVEL FACILITIES:
  * The S-compatibility macros F77_COM and F77_COMDECL defined in
    header R_ext/RS.h are deprecated and will be removed shortly.  We
    could find no record of their use.
  BUG FIXES:
  * Mathlib function lgammacor(x) no longer warns about underflow to
    zero for large x.
  * Text widths and heights were incorrectly reported by the Quartz
    device if the drawing context didn't exist yet (typically when
    drawing off-screen to a window that is yet to appear, see
    PR#18591).
  * The Quartz device could segfault in cases where paths with spaces
    are used in the new glyph drawing API.  Thanks to Tomek
    Gieorgijewski (PR#18758).
  * On macOS in R CRAN builds, it is again possible to read
    little-endian UTF-16 text with a BOM from a connection using
    encoding="UTF-16".  Users building R from source should avoid
    using the system libiconv in macOS 14.1 and later.
  * methods' internal .requirePackage() now re-enables primitive
    method dispatch when needed; thanks to Ivan Krylov for
    demystifying CRAN package check failures on the R-devel mailing
    list.</changelog>
</package>
<package pkgid="a5c119e81760e4326ee437130ae0e19cc5b7ee1a12b577b7e804102e3075b83ad622b6cf56b1a85ab2e5cd2d2095b12166172b3a0427c2c88618568f123984e9" name="R-methods-debuginfo" arch="x86_64">
  <version epoch="0" ver="4.4.2" rel="51.0.2.2.sr20241103"/>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1620302400">- To get in sync with d:l:R:autoCRAN the Matrix package's split
  in -devel was reversed.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339200">- improved spec file according to comments of dimstar in
  https://build.opensuse.org/request/show/892685</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339201">- CHANGES IN R 4.1.0:
  FUTURE DIRECTIONS:
  * It is planned that the 4.1.x series will be the last to support
    32-bit Windows, with production of binary packages for that
    series continuing until early 2023.
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Data set esoph in package datasets now provides the correct
    numbers of controls; previously it had the numbers of cases added
    to these.  (Reported by Alexander Fowler in PR#17964.)
  NEW FEATURES:
  * www.omegahat.net is no longer one of the repositories known by
    default to setRepositories().  (Nowadays it only provides source
    packages and is often unavailable.)
  * Function package_dependencies() (in package tools) can now use
    different dependency types for direct and recursive dependencies.
  * The checking of the size of tarball in R CMD check --as-cran
    &lt;pkg&gt; may be tweaked via the new environment variable
    _R_CHECK_CRAN_INCOMING_TARBALL_THRESHOLD_, as suggested in
    PR#17777 by Jan Gorecki.
  * Using c() to combine a factor with other factors now gives a
    factor, an ordered factor when combining ordered factors with
    identical levels.
  * apply() gains a simplify argument to allow disabling of
    simplification of results.
  * The format() method for class "ftable" gets a new option justify.
    (Suggested by Thomas Soeiro.)
  * New ...names() utility.  (Proposed by Neal Fultz in PR#17705.)
  * type.convert() now warns when its as.is argument is not
    specified, as the help file always said it _should_.  In that
    case, the default is changed to TRUE in line with its change in
    read.table() (related to stringsAsFactor) in R 4.0.0.
  * When printing list arrays, classed objects are now shown _via_
    their format() value if this is a short enough character string,
    or by giving the first elements of their class vector and their
    length.
  * capabilities() gets new entry "Rprof" which is TRUE when R has
    been configured with the equivalent of --enable-R-profiling (as
    it is by default).  (Related to Michael Orlitzky's report
    PR#17836.)
  * str(xS4) now also shows extraneous attributes of an S4 object
    xS4.
  * Rudimentary support for vi-style tags in rtags() and R CMD rtags
    has been added.  (Based on a patch from Neal Fultz in PR#17214.)
  * checkRdContents() is now exported from tools; it and also
    checkDocFiles() have a new option chkInternal allowing to check
    Rd files marked with keyword "internal" as well.  The latter can
    be activated for R CMD check via environment variable
    _R_CHECK_RD_INTERNAL_TOO_.
  * New functions numToBits() and numToInts() extend the raw
    conversion utilities to (double precision) numeric.
  * Functions URLencode() and URLdecode() in package utils now work
    on vectors of URIs.  (Based on patch from Bob Rudis submitted
    with PR#17873.)
  * path.expand() can expand ~user on most Unix-alikes even when
    readline is not in use.  It tries harder to expand ~, for example
    should environment variable HOME be unset.
  * For HTML help (both dynamic and static), Rd file links to help
    pages in external packages are now treated as references to
    topics rather than file names, and fall back to a file link only
    if the topic is not found in the target package. The earlier rule
    which prioritized file names over topics can be restored by
    setting the environment variable _R_HELP_LINKS_TO_TOPICS_ to a
    false value.
  * c() now removes NULL arguments before dispatching to methods,
    thus simplifying the implementation of c() methods, _but_ for
    back compatibility keeps NULL when it is the first argument.
    (From a report and patch proposal by Lionel Henry in PR#17900.)
  * Vectorize()'s result function's environment no longer keeps
    unneeded objects.
  * Function ...elt() now propagates visibility consistently with
    ..n.  (Thanks to Lionel Henry's PR#17905.)
  * capture.output() no longer uses non-standard evaluation to
    evaluate its arguments.  This makes evaluation of functions like
    parent.frame() more consistent.  (Thanks to Lionel Henry's
    PR#17907.)
  * packBits(bits, type="double") now works as inverse of
    numToBits().  (Thanks to Bill Dunlap's proposal in PR#17914.)
  * curlGetHeaders() has two new arguments, timeout to specify the
    timeout for that call (overriding getOption("timeout")) and TLS
    to specify the minimum TLS protocol version to be used for
    https:// URIs (_inter alia_ providing a means to check for sites
    using deprecated TLS versions 1.0 and 1.1).
  * For nls(), an optional constant scaleOffset may be added to the
    denominator of the relative offset convergence test for cases
    where the fit of a model is expected to be exact, thanks to a
    proposal by John Nash.  nls(*, trace=TRUE) now also shows the
    convergence criterion.
  * Numeric differentiation _via_ numericDeriv() gets new optional
    arguments eps and central, the latter for taking central divided
    differences.  The latter can be activated for nls() via
    nls.control(nDcentral = TRUE).
  * nls() now passes the trace and control arguments to getInitial(),
    notably for all self-starting models, so these can also be fit in
    zero-noise situations via a scaleOffset.  For this reason, the
    initial function of a selfStart model must now have ... in its
    argument list.
  * bquote(splice = TRUE) can now splice expression vectors with
    attributes: this makes it possible to splice the result of
    parse(keep.source = TRUE).  (Report and patch provided by Lionel
    Henry in PR#17869.)
  * textConnection() gets an optional name argument.
  * get(), exists(), and get0() now signal an error if the first
    argument has length greater than 1.  Previously additional
    elements were silently ignored.  (Suggested by Antoine Fabri on
    R-devel.)
  * R now provides a shorthand notation for creating functions, e.g.
    \(x) x + 1 is parsed as function(x) x + 1.
  * R now provides a simple native forward pipe syntax |&gt;.  The
    simple form of the forward pipe inserts the left-hand side as the
    first argument in the right-hand side call.  The pipe
    implementation as a syntax transformation was motivated by
    suggestions from Jim Hester and Lionel Henry.
  * all.equal(f, g) for functions now by default also compares their
    environment(.)s, notably via new all.equal method for class
    function.  Comparison of nls() fits, e.g., may now need
    all.equal(m1, m2, check.environment = FALSE).
  * .libPaths() gets a new option include.site, allowing to _not_
    include the site library.  (Thanks to Dario Strbenac's suggestion
    and Gabe Becker's PR#18016.)
  * Lithuanian translations are now available.  (Thanks to Rimantas
    Zakauskas.)
  * names() now works for DOTSXP objects.  On the other hand, in
    R-lang, the R language manual, we now warn against relying on the
    structure or even existence of such dot-dot-dot objects.
  * all.equal() no longer gives an error on DOTSXP objects.
  * capabilities("cairo") now applies only to the file-based devices
    as it is now possible (if very unusual) to build R with Cairo
    support for those but not for X11().
  * There is optional support for tracing the progress of
    loadNamespace() - see its help.
  * (Not Windows.)  l10n_info() reports an additional element, the
    name of the encoding as reported by the OS (which may differ from
    the encoding part (if any) of the result from
    Sys.getlocale("LC_CTYPE").
  * New function gregexec() which generalizes regexec() to find _all_
    disjoint matches and well as all substrings corresponding to
    parenthesized subexpressions of the given regular expression.
    (Contributed by Brodie Gaslam.)
  * New function charClass() in package utils to query the
    wide-character classification functions in use (such as
    iswprint).
  * The names of quantile()'s result no longer depend on the global
    getOption("digits"), but quantile() gets a new optional argument
    digits = 7 instead.
  * grep(), sub(), regexp and variants work considerably faster for
    long factors with few levels.  (Thanks to Michael Chirico's
    PR#18063.)
  * Provide grouping of x11() graphics windows within a window
    manager such as Gnome or Unity; thanks to a patch by Ivan Krylov
    posted to R-devel.
  * The split() method for class data.frame now allows the f argument
    to be specified as a formula.
  * sprintf now warns on arguments unused by the format string.
  * New palettes "Rocket" and "Mako" for hcl.colors() (approximating
    palettes of the same name from the 'viridisLite' package).
    Contributed by Achim Zeileis.
  * The base environment and its namespace are now locked (so one can
    no longer add bindings to these or remove from these).
  * Rterm handling of multi-byte characters has been improved,
    allowing use of such characters when supported by the current
    locale.
  * Rterm now accepts ALT+ +xxxxxxxx sequences to enter Unicode
    characters as hex digits.
  * Environment variable LC_ALL on Windows now takes precedence over
    LC_CTYPE and variables for other supported categories, matching
    the POSIX behaviour.
  * duplicated() and anyDuplicated() are now optimized for integer
    and real vectors that are known to be sorted via the ALTREP
    framework. Contributed by Gabriel Becker via PR#17993.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 14
    and so packages that provide graphics devices should be
    reinstalled.
  * Graphics devices should now specify deviceVersion to indicate
    what version of the graphics engine they support.
  * Graphics devices can now specify deviceClip.  If TRUE, the
    graphics engine will never perform any clipping of output itself.
    The clipping that the graphics engine does perform (for both
    canClip = TRUE and canClip = FALSE) has been improved to avoid
    producing unnecessary artifacts in clipped output.
  * The grid package now allows gpar(fill) to be a linearGradient(),
    a radialGradient(), or a pattern().  The viewport(clip) can now
    also be a grob, which defines a clipping path, and there is a new
    viewport(mask) that can also be a grob, which defines a mask.
    These new features are only supported so far on the Cairo-based
    graphics devices and on the pdf() device.
  * (Not Windows.)  A warning is given when a Cairo-based type is
    specified for a png(), jpeg(), tiff() or bmp() device but Cairo
    is unsupported (so type = "Xlib" is tried instead).
  * grSoftVersion() now reports the versions of FreeType and
    FontConfig if they are used directly (not _via_ Pango), as is
    most commonly done on macOS.
  C-LEVEL FACILITIES:
  * The _standalone_ libRmath math library and R's C API now provide
    log1pexp() again as documented, and gain log1mexp().
  INSTALLATION on a UNIX-ALIKE:
  * configure checks for a program pkgconf if program pkg-config is
    not found.  These are now only looked for on the path (like
    almost all other programs) so if needed specify a full path to
    the command in PKG_CONFIG, for example in file config.site.
  * C99 function iswblank is required - it was last seen missing ca
    2003 so the workaround has been removed.
  * There are new configure options --with-internal-iswxxxxx,
  - -with-internal-towlower and --with-internal-wcwidth which allows
    the system functions for wide-character classification,
    case-switching and width (wcwidth and wcswidth) to be replaced by
    internal ones.  The first has long been used on macOS, AIX (and
    Windows) but this enables it to be unselected there and selected
    for other platforms (it is the new default on Solaris).  The
    second is new in this version of R and is selected by default on
    macOS and Solaris.  The third has long been the default and
    remains so as it contains customizations for East Asian
    languages.
    System versions of these functions are often minimally
    implemented (sometimes only for ASCII characters) and may not
    cover the full range of Unicode points: for example Solaris (and
    Windows) only cover the Basic Multilingual Plane.
  * Cairo installations without X11 are more likely to be detected by
    configure, when the file-based Cairo graphics devices will be
    available but not X11(type = "cairo").
  * There is a new configure option --with-static-cairo which is the
    default on macOS.  This should be used when only static cairo
    (and where relevant, Pango) libraries are available.
  * Cairo-based graphics devices on platforms without Pango but with
    FreeType/FontConfig will make use of the latter for font
    selection.
  LINK-TIME OPTIMIZATION on a UNIX-ALIKE:
  * Configuring with flag --enable-lto=R now also uses LTO when
    installing the recommended packages.
  * R CMD INSTALL and R CMD SHLIB have a new flag --use-LTO to use
    LTO when compiling code, for use with R configured with
  - -enable-lto=R.  For R configured with --enable-lto, they have
    the new flag --no-use-LTO.
    Packages can opt in or out of LTO compilation _via_ a UseLTO
    field in the DESCRIPTION file.  (As usual this can be overridden
    by the command-line flags.)
  BUILDING R on Windows:
  * for GCC &gt;= 8, FC_LEN_T is defined in config.h and hence character
    lengths are passed from C to Fortran in _inter alia_ BLAS and
    LAPACK calls.
  * There is a new text file src/gnuwin32/README.compilation, which
    outlines how C/Fortran code compilation is organized and
    documents new features:
  * R can be built with Link-Time Optimization with a suitable
    compiler - doing so with GCC 9.2 showed several
    inconsistencies which have been corrected.
  * There is support for cross-compiling the C and Fortran code
    in R and standard packages on suitable (Linux) platforms.
    This is mainly intended to allow developers to test later
    versions of compilers - for example using GCC 9.2 or 10.x has
    detected issues that GCC 8.3 in Rtools40 does not.
  * There is experimental support for cross-building R packages
    with C, C++ and/or Fortran code.
  * The R installer can now be optionally built to support a single
    architecture (only 64-bit or only 32-bit).
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++14 where
    available (which it is on all currently checked platforms): if
    not (as before) C++11 is used if available otherwise C++ is not
    supported.
    Packages which specify C++11 will still be installed using C++11.
    C++14 compilers may give deprecation warnings, most often for
    std::random_shuffle (deprecated in C++14 and removed in C++17).
    Either specify C++11 (see 'Writing R Extensions') or modernize
    the code and if needed specify C++14.  The latter has been
    supported since R 3.4.0 so the package's DESCRIPTION would need
    to include something like
    Depends: R (&gt;= 3.4)
  PACKAGE INSTALLATION on Windows:
  * R CMD INSTALL and R CMD SHLIB make use of their flag --use-LTO
    when the LTO_OPT make macro is set in file etc/${R_ARCH}/Makeconf
    or in a personal/site Makevars file.  (For details see 'Writing R
    Extensions' SS4.5.)
    This provides a valuable check on code consistency.  It does work
    with GCC 8.3 as in Rtools40, but that does not detect everything
    the CRAN checks with current GCC do.
  PACKAGE INSTALLATION on macOS:
  * The default personal library directory on builds with
  - -enable-aqua (including CRAN builds) now differs by CPU type,
    one of
    ~/Library/R/x86_64/x.y/library
    ~/Library/R/arm64/x.y/library
    This uses the CPU type R (and hence the packages) were built for,
    so when a x86_64 build of R is run under Rosetta emulation on an
    arm64 Mac, the first is used.
  UTILITIES:
  * R CMD check can now scan package functions for bogus return
    statements, which were possibly intended as return() calls (wish
    of PR#17180, patch by Sebastian Meyer). This check can be
    activated via the new environment variable
    _R_CHECK_BOGUS_RETURN_, true for --as-cran.
  * R CMD build omits tarballs and binaries of previous builds from
    the top-level package directory.  (PR#17828, patch by Sebastian
    Meyer.)
  * R CMD check now runs sanity checks on the use of LazyData, for
    example that a data directory is present and that
    LazyDataCompression is not specified without LazyData and has a
    documented value.  For packages with large LazyData databases
    without specifying LazyDataCompression, there is a reference to
    the code given in 'Writing R Extensions' SS1.1.6 to test the
    choice of compression (as in all the CRAN packages tested a
    non-default method was preferred).
  * R CMD build removes LazyData and LazyDataCompression fields from
    the DESCRIPTION file of packages without a data directory.
  ENCODING-RELATED CHANGES:
  * The parser now treats \Unnnnnnnn escapes larger than the upper
    limit for Unicode points (\U10FFFF) as an error as they cannot be
    represented by valid UTF-8.
    Where such escapes are used for outputting non-printable
    (including unassigned) characters, 6 hex digits are used (rather
    than 8 with leading zeros).  For clarity, braces are used, for
    example \U{0effff}.
  * The parser now looks for non-ASCII spaces on Solaris (as
    previously on most other OSes).
  * There are warnings (including from the parser) on the use of
    unpaired surrogate Unicode points such as \uD834.  (These cannot
    be converted to valid UTF-8.)
  * Functions nchar(), tolower(), toupper() and chartr() and those
    using regular expressions have more support for inputs with a
    marked Latin-1 encoding.
  * The character-classification functions used (by default) to
    replace the system iswxxxxx functions on Windows, macOS and AIX
    have been updated to Unicode 13.0.0.
    The character-width tables have been updated to include new
    assignments in Unicode 13.0.0.
  * The code for evaluating default (extended) regular expressions
    now uses the same character-classification functions as the rest
    of R (previously they differed on Windows, macOS and AIX).
  * There is a build-time option to replace the system's
    wide-character wctrans C function by tables shipped with R: use
    configure option --with-internal-towlower or (on Windows)
  - DUSE_RI18N_CASE in CFLAGS when building R.  This may be needed
    to allow tolower() and toupper() to work with Unicode characters
    beyond the Basic Multilingual Plane where not supported by system
    functions (e.g. on Solaris where it is the new default).
  * R is more careful when truncating UTF-8 and other multi-byte
    strings that are too long to be printed, passed to the system or
    libraries or placed into an internal buffer.  Truncation will no
    longer produce incomplete multibyte characters.
  DEPRECATED AND DEFUNCT:
  * Function plclust() from the package stats and
    package.dependencies(), pkgDepends(), getDepList(),
    installFoundDepends(), and vignetteDepends() from package tools
    are defunct.
  * Defunct functions checkNEWS() and readNEWS() from package tools
    and CRAN.packages() from utils have been removed.
  * R CMD config CXXCPP is defunct (it was deprecated in R 3.6.2).
  * parallel::detectCores() drops support for Irix (retired in 2013).
  * The LINPACK argument to chol.default(), chol2inv(),
    solve.default() and svd() has been defunct since R 3.1.0.  It was
    silently ignored up to R 4.0.3 but now gives an error.
  * Subsetting/indexing, such as ddd[*] or ddd$x on a DOTSXP
    (dot-dot-dot) object ddd has been disabled; it worked by accident
    only and was undocumented.
  BUG FIXES:
  * Many more C-level allocations (mainly by malloc and strdup) are
    checked for success with suitable alternative actions.
  * Bug fix for replayPlot(); this was turning off graphics engine
    display list recording if a recorded plot was replayed in the
    same session.  The impact of the bug became visible if resize the
    device after replay OR if attempted another savePlot() after
    replay (empty display list means empty screen on resize or empty
    saved plot).
  * R CMD check etc now warn when a package exports non-existing S4
    classes or methods, also in case of no "methods" presence.
    (Reported by Alex Bertram; reproducible example and patch by
    Sebastian Meyer in PR#16662.)
  * boxplot() now also accepts calls for labels such as ylab, the
    same as plot().  (Reported by Marius Hofert.)
  * The help page for xtabs() now correctly states that addNA is
    setting na.action = na.pass among others.  (Reported as PR#17770
    by Thomas Soeiro.)
  * The R CMD check &lt;pkg&gt; gives a longer and more comprehensible
    message when DESCRIPTION misses dependencies, e.g., in Imports:.
    (Thanks to the contributors of PR#17179.)
  * update.default() now calls the generic update() on the formula to
    work correctly for models with extended formulas.  (As reported
    and suggested by Neal Fultz in PR#17865.)
  * The horizontal position of leaves in a dendrogram is now correct
    also with center = FALSE.  (PR#14938, patch from Sebastian
    Meyer.)
  * all.equal.POSIXt() no longer warns about and subsequently ignores
    inconsistent "tzone" attributes, but describes the difference in
    its return value (PR#17277).  This check can be disabled _via_
    the new argument check.tzone = FALSE as suggested by Sebastian
    Meyer.
  * as.POSIXct() now populates the "tzone" attribute from its tz
    argument when x is a logical vector consisting entirely of NA
    values.
  * x[[2^31]] &lt;- v now works.  (Thanks to the report and patch by
    Suharto Anggono in PR#17330.)
  * In log-scale graphics, axis() ticks and label positions are now
    computed more carefully and symmetrically in their range,
    typically providing _more_ ticks, fulfilling wishes in PR#17936.
    The change really corresponds to an improved axisTicks() (package
    grDevices), potentially influencing grid and lattice, for
    example.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now correct to at
    least five digits where it was catastrophically wrong,
    previously.
  * sum(df) and similar "Summary"- and "Math"-group member functions
    now work for data frames df with logical columns, notably also of
    zero rows.  (Reported to R-devel by Martin "b706".)
  * unsplit() had trouble with tibbles due to unsound use of rep(NA,
    len)-indexing, which should use NA_integer_ (Reported to R-devel
    by Mario Annau.)
  * pnorm(x, log.p = TRUE) underflows to -Inf slightly later.
  * show(&lt;hidden S4 generic&gt;) prints better and without quotes for
    non-hidden S4 generics.
  * read.table() and relatives treated an "NA" column name as missing
    when check.names = FALSE PR#18007.
  * Parsing strings containing UTF-16 surrogate pairs such as
    "\uD834\uDD1E" works better on some (uncommon) platforms.
    sprintf("%X", utf8ToInt("\uD834\uDD1E")) should now give "1D11E"
    on all platforms.
  * identical(x,y) is no longer true for differing DOTSXP objects,
    fixing PR#18032.
  * str() now works correctly for DOTSXP and related exotics, even
    when these are doomed.
    Additionally, it no longer fails for lists with a class and
    "irregular" method definitions such that e.g. lapply(*) will
    necessarily fail, as currently for different igraph objects.
  * Too long lines in environment files (e.g. Renviron) no longer
    crash R. This limit has been increased to 100,000 bytes.
    (PR#18001.)
  * There is a further workaround for FreeType giving incorrect
    italic font faces with cairo-based graphics devices on macOS.
  * add_datalist(*, force = TRUE) (from package tools) now actually
    updates an existing data/datalist file for new content.  (Thanks
    to a report and patch by Sebastian Meyer in PR#18048.)
  * cut.Date() and cut.POSIXt() could produce an empty last interval
    for breaks = "months" or breaks = "years".  (Reported as PR#18053
    by Christopher Carbone.)
  * Detection of the encoding of 'regular' macOS locales such as
    en_US (which is UTF-8) had been broken by a macOS change:
    fortunately these are now rarely used with en_US.UTF-8 being
    preferred.
  * sub() and gsub(pattern, repl, x, *) now keep attributes of x such
    as names() also when pattern is NA (PR#18079).
  * Time differences ("difftime" objects) get a replacement and a
    rep() method to keep "units" consistent.  (Thanks to a report and
    patch by Nicolas Bennett in PR#18066.)
  * The \RdOpts macro, setting defaults for \Sexpr options in an Rd
    file, had been ineffective since R 2.12.0: it now works again.
    (Thanks to a report and patch by Sebastian Meyer in PR#18073.)
  * mclapply and pvec no longer accidentally terminate parallel
    processes started before by mcparallel or related calls in
    package parallel (PR#18078).
  * grep and other functions for evaluating (extended) regular
    expressions handle in Unicode also strings not explicitly flagged
    UTF-8, but flagged native when running in UTF-8 locale.
  * Fixed a crash in fifo implementation on Windows (PR#18031).
  * Binary mode in fifo on Windows is now properly detected from
    argument open (PR#15600, PR#18031).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1622808000">- The line %{__install} -m 755 -d %{_infodir}
  no longer works in TW or Factory.
  But without that line it works everywhere. So this instruction
  was commented out of the spec file.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1628596800">- CHANGES IN R 4.1.1:
  NEW FEATURES:
  * require(pkg, quietly = TRUE) is quieter and in particular does
    not warn if the package is not found.
  DEPRECATED AND DEFUNCT:
  * Use of ftp:// URIs should be regarded as deprecated, with
    on-going support confined to method = "libcurl" and not routinely
    tested.  (Nowadays no major browser supports them.)
  * The non-default method = "internal" is deprecated for http:// and
    ftp:// URIs for both download.file and url.
  * On Windows, method = "wininet" is deprecated for http://,
    https:// and ftp:// URIs for both download.file and url.  (A
    warning is only given for ftp://.)
    For ftp:// URIs the default method is now "libcurl" if available
    (which it is on CRAN builds).
    method = "wininet" remains the default for http:// and https://
    URIs but if libcurl is available, using method = "libcurl" is
    preferred.
  INSTALLATION:
  * make check now works also without a LaTeX installation.  (Thanks
    to Sebastian Meyer's PR#18103.)
  BUG FIXES:
  * make check-devel works again in an R build configured with
  - -without-recommended-packages.
  * qnbinom(p, size, mu) for large size/mu is correct now in a range
    of cases (PR#18095); similarly for the (size, prob)
    parametrization of the negative binomial.  Also qpois() and
    qbinom() are better and or faster for extreme cases.  The
    underlying C code has been modularized and is common to all four
    cases of discrete distributions.
  * gap.axis is now part of the axis() arguments which are passed
    from bxp(), and hence boxplot().  (Thanks to Martin Smith's
    report and suggestions in PR#18109.)
  * .First and .Last can again be set from the site profile.
  * seq.int(from, to, *) and seq.default(..) now work better in large
    range cases where from-to is infinite where the two boundaries
    are finite.
  * all.equal(x,y) now returns TRUE correctly also when several
    entries of abs(x) and abs(y) are close to .Machine$double.xmax,
    the largest finite numeric.
  * model.frame() now clears the object bit when removing the class
    attribute of a value via na.action (PR#18100).
  * charClass() now works with multi-character strings on Windows
    (PR#18104, fixed by Bill Dunlap).
  * encodeString() on Solaris now works again in Latin-1 encoding on
    characters represented differently in UTF-8.  Support for
    surrogate pairs on Solaris has been improved.
  * file.show() on Windows now works with non-ASCII path names
    representable in the current native encoding (PR#18132).
  * Embedded R on Windows can now find R home directory via the
    registry even when installed only for the current user
    (PR#18135).
  * pretty(x) with finite x now returns finite values also in the
    case where the extreme x values are close in size to the maximal
    representable number .Machine$double.xmax.
    Also, it's been tweaked for very small ranges and when a boundary
    is close (or equal) to zero; e.g., pretty(c(0,1e-317)) no longer
    has negative numbers, currently still warning about a very small
    range, and pretty(2^-(1024 - 2^-1/(c(24,10)))) is more accurate.
  * The error message for not finding vignette files when weaving has
    correct file sizes now. (Thanks to Sebastian Meyer's PR#18154.)
  * dnbinom(20, &lt;large&gt;, 1) now correctly gives 0, and similar cases
    are more accurate with underflow precaution.  (Reported by Francisco Vera Alcivar in PR#18072.)</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635163200">- repaired https://bugzilla.suse.com/show_bug.cgi?id=1191380
  (rpmacros now go to rpmmacrodir)
- minor clean-ups in spec file</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635768000">- CHANGES IN R 4.1.2:
  C-LEVEL FACILITIES:
  * The workaround in headers R.h and Rmath.h (using namespace std;)
    for the Oracle Developer Studio compiler is no longer needed now
    C++11 is required so has been removed.  A couple more usages of
    log() (which should have been std::log()) with an int argument
    are reported on Solaris.
  * The undocumented limit of 4095 bytes on messages from the
    S-compatibility macros PROBLEM and MESSAGE is now documented and
    longer messages will be silently truncated rather than
    potentially causing segfaults.
  * If the R_NO_SEGV_HANDLER environment variable is non-empty, the
    signal handler for SEGV/ILL/BUS signals (which offers recovery
    user interface) is not set. This allows more reliable debugging
    of crashes that involve the console.
  DEPRECATED AND DEFUNCT:
  * The legacy S-compatibility macros PROBLEM, MESSAGE, ERROR, WARN,
    WARNING, RECOVER, ... are deprecated and will be hidden in R
    4.2.0. R's native interface of Rf_error and Rf_warning has long
    been preferred.
  BUG FIXES:
  * .mapply(F, dots, .) no longer segfaults when dots is not a list
    and uses match.fun(F) as always documented; reported by Andrew
    Simmons in PR#18164.
  * hist(&lt;Date&gt;, ...) and hist(&lt;POSIXt&gt;, ...)  no longer pass
    arguments for rect() (such as col and density) to axis().
    (Thanks to Sebastian Meyer's PR#18171.)
  * \Sexpr{ch} now preserves Encoding(ch). (Thanks to report and
    patch by Jeroen Ooms in PR#18152.)
  * Setting the RNG to "Marsaglia-Multicarry" e.g., by RNGkind(), now
    warns in more places, thanks to Andr'e Gillibert's report and
    patch in PR#18168.
  * gray(numeric(), alpha=1/2) no longer segfaults, fixing PR#18183,
    reported by Till Krenz.
  * Fixed dnbinom(x, size=&lt;very_small&gt;, .., log=TRUE) regression,
    reported by Martin Morgan.
  * as.Date.POSIXlt(x) now keeps names(x), thanks to Davis Vaughan's
    report and patch in PR#18188.
  * model.response() now strips an "AsIs" class typically, thanks to
    Duncan Murdoch's report and other discussants in PR#18190.
  * try() is considerably faster in case of an error and long call,
    as e.g., from some do.call().  Thanks to Alexander Kaever's
    suggestion posted to R-devel.
  * qqline(y = &lt;object&gt;) such as y=I(.), now works, see also
    PR#18190.
  * Non-integer mgp par() settings are now handled correctly in
    axis() and mtext(), thanks to Mikael Jagan and Duncan Murdoch's
    report and suggestion in PR#18194.
  * formatC(x) returns length zero character() now, rather than ""
    when x is of length zero, as documented, thanks to Davis
    Vaughan's post to R-devel.
  * removeSource(fn) now retains (other) attributes(fn).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1647000000">- CHANGES IN R 4.1.3:
  NEW FEATURES:
  * The default version of Bioconductor has been changed to 3.14.
    (This is used by setRepositories and the menus in GUIs.)
  UTILITIES:
  * R CMD check --as-cran has a workaround for a bug in versions of
    file up to at least 5.41 which mis-identify DBF files last
    changed in 2022 as executables.
  C-LEVEL FACILITIES:
  * The legacy S-compatibility macros SINGLE_* in R_ext/Constants.h
    (included by R.h) are deprecated and will be removed in R 4.2.0.
  BUG FIXES:
  * Initialization of self-starting nls() models with initialization
    functions following the pre-R-4.1.0 API (without the ...
    argument) works again for now, with a deprecation warning.
  * Fixed quoting of ~autodetect~ in Java setting defaults to avoid
    inadvertent user lookup due to leading ~, reported in PR#18231 by
    Harold Gutch.
  * substr(., start, stop) &lt;- v now treats _negative_ stop values
    correctly.  Reported with a patch in PR#18228 by Brodie Gaslam.
  * Subscripting an array x without dimnames by a
    length(dim(x))-column character matrix gave "random" non-sense,
    now an error; reported in PR#18244 by Mikael Jagan.
  * ...names() now matches names(list(...)) closely, fixing PR#18247.
  * all.equal(*, scale = s) now works as intended when length(s) &gt; 1,
    partly thanks to Michael Chirico's PR#18272.
  * print(x) for long vectors x now also works for named atomic
    vectors or lists and prints the correct number when reaching the
    getOption("max.print") limit; partly thanks to a report and
    proposal by Hugh Parsonage to the R-devel list.
  * all.equal(&lt;selfStart&gt;, *) no longer signals a deprecation
    warning.
  * reformulate(*, response=r) gives a helpful error message now when
    length(r) &gt; 1, thanks to Bill Dunlap's PR#18281.
  * Modifying globalCallingHandlers inside withCallingHandlers() now
    works or fails correctly, thanks to Henrik Bengtsson's PR#18257.
  * hist(&lt;Date&gt;, breaks = "days") and hist(&lt;POSIXt&gt;, breaks = "secs")
    no longer fail for inputs of length 1.
  * qbeta(.001, .9, .009) and similar cases now converge correctly
    thanks to Ben Bolker's report in PR#17746.
  * window(x, start, end) no longer wrongly signals "'start' cannot
    be after 'end'", fixing PR#17527 and PR#18291.
  * data() now checks that its (rarely used) list argument is a
    character vector - a couple of packages passed other types and
    gave incorrect results.
  * which() now checks its arr.ind argument is TRUE rather coercing
    to logical and taking the first element - which gave incorrect
    results in package code.
  * model.weights() and model.offset() more carefully extract their
    model components, thanks to Ben Bolker and Tim Taylor's R-devel
    post.
  * list.files(recursive = TRUE) now shows all broken symlinks
    (previously, some of them may have been omitted, PR#18296).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1650628800">- CHANGES IN R 4.2.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * The formula method of aggregate() now matches the generic in
    naming its first argument x (resolving PR#18299 by Thomas
    Soeiro).
    This means that calling aggregate() with a formula as a named
    first argument requires name formula in earlier versions of R and
    name x now, so portable code should not name the argument (code
    in many packages did).
  * Calling &amp;&amp; or || with either argument of length greater than one
    now gives a warning (which it is intended will become an error).
  * Calling if() or while() with a condition of length greater than
    one gives an error rather than a warning.  Consequently,
    environment variable _R_CHECK_LENGTH_1_CONDITION_ no longer has
    any effect.
  * Windows users should consult the WINDOWS section below for some
    profound changes including
  * Support for 32-bit builds has been dropped.
  * UTF-8 locales are used where available.
  * The default locations for the R installation and personal
    library folder have been changed.
    Thanks to Tomas Kalibera for months of work on the Windows port
    for this release.
  NEW FEATURES:
  * matrix(x, n, m) now warns in more cases where length(x) differs
    from n * m, as suggested by Abby Spurdle and Wolfgang Huber in
    Feb 2021 on the R-devel mailing list.
    This warning can be turned into an error by setting environment
    variable _R_CHECK_MATRIX_DATA_ to TRUE: R CMD check --as-cran
    does so unless it is already set.
  * Function file_test() in package utils gains tests for symlinks,
    readability and writability.
  * capabilities("libxml") is now false.
    The description of capabilities("http/ftp") now reflects that it
    refers to the default method, no longer the internal one.
  * simplify2array() gains an except argument for controlling the
    exceptions used by sapply().
  * Environment variables R_LIBS_USER and R_LIBS_SITE are both now
    set to the R system default if unset or empty, and can be set to
    NULL to indicate an empty list of user or site library
    directories.
  * The warning for axis()(-like) calls in cases of relatively small
    ranges (typically in log-scale situations) is slightly improved
    _and_ suppressed from explicit calls to .axisPars() as has always
    been the intention.
  * The contrasts setter function `contrasts&lt;-` gains an explicit
    default how.many = NULL rather than just using missing(how.many).
  * grid.pretty() gains a new optional argument n = 5.
  * There is a new function .pretty() with option bounds as a
    technical-utility version of pretty().  It and pretty() gain a
    new argument f.min with a better than back-compatible default.
  * Function grDevices::axisTicks() and related functions such as
    graphics::axis() work better, notably for the log scale; partly
    because of the pretty() improvements, but also because care is
    taken e.g., when ylim is finite but diff(ylim) is infinite.
  * nclass.FD() gains a digits option.
  * The R Mathlib internal C function bd0() (called indirectly from a
    dozen probability density and distribution functions such as
    dpois(), dbinom(), dgamma(), pgamma() _etc_) has been
    complemented by a more sophisticated and (mostly) more accurate C
    function ebd0(), currently called only by internal dpois_raw()
    improving accuracy for R level dpois() and potentially others
    calling it such as dnbinom(), dgamma() or pgamma().  (Thanks to
    Morten Welinder's PR#15628.)
  * write.ftable() gains sep = " " argument as suggested by Thomas
    Soeiro.
  * The names of the locale categories supported by R's
    Sys.getlocale() and Sys.setlocale() are now provided by variable
    .LC.categories in the base namespace.
  * The Date and POSIXt methods for hist() and the histogram method
    for plot() now also use the new default col = "lightgray" in
    consistency with the corresponding change to hist()'s default for
    R 4.0.0.
  * hist.default() gains new fuzz argument, and the histogram plot
    method no longer uses fractional axis ticks when displaying
    counts ("Frequency").
  * mapply() and hence Map() now also obey the "max-or-0-if-any"
    recycling rule, such that, e.g., Map(`+`, 1:3, 1[0]) is valid
    now.
  * as.character(&lt;obj&gt;) for "hexmode" or "octmode" objects now
    fulfils the important basic rule as.character(x)[j] ===
    as.character(x[j]).
  * The set utility functions, notably intersect() have been tweaked
    to be more consistent and symmetric in their two set arguments,
    also preserving a common mode.
  * substr(ch, start,end) &lt;- new now e.g., preserves names(ch); ditto
    for substring(), thanks to a patch from Brodie Gaslam.
  * plot(&lt;lm&gt;) gains a extend.ylim.f argument, in partial response to
    PR#15285; further PR#17784 is fixed thanks to several
    contributors and a patch by Elin Waring.  The Cook's dist
    contours get customizable via cook.col and cook.lty with a
    different default color and their legend is nicer by default and
    customizable via cook.legendChanges.
  * Attempting to subset an object that is not subsettable now
    signals an error of class notSubsettableError. The
    non-subsettable object is contained in the object field of the
    error condition.
  * Subscript-out-of-bounds errors are now signaled as errors of
    class subscriptOutOfBoundsError.
  * Stack-overflow errors are now signaled as errors inheriting from
    class stackOverflowError. See ?stackOverflowError for more
    details.
  * New partly experimental Sys.setLanguage() utility, solving the
    main problem of PR#18055.
  * gettext() and gettextf() get a new option trim = TRUE which when
    set to false allows translations for strings such as "Execution
    halted\n" typical for C code.
  * An experimental implementation of hash tables is now available.
    See ?hashtab for more details.
  * identical() gains a extptr.as.ref argument for requesting that
    external pointer objects be compared as reference objects.
  * reorder() gets an argument decreasing which it passes to sort()
    for level creation; based on the wish and patch by Thomas Soeiro
    in PR#18243.
  * as.vector() gains a data.frame method which returns a simple
    named list, also clearing a long standing 'FIXME' to enable
    as.vector(&lt;data.frame&gt;, mode="list").  This breaks code relying
    on as.vector(&lt;data.frame&gt;) to return the unchanged data frame.
  * legend() is now vectorized for arguments cex, x.intersp, and
    text.width.  The latter can now also be specified as a vector
    (one element for each column of the legend) or as NA for
    computing a proper column wise maximum value of strwidth(legend).
    The argument y.intersp can be specified as a vector with one
    entry for each row of the legend.
    legend() also gains new arguments title.cex and title.font.
    Thanks to Swetlana Herbrandt.
  * Deparsing no longer remaps attribute names dim, dimnames, levels,
    names and tsp to historical S-compatible names (which structure()
    maps back).
  * sample() and sample.int() have additional sanity checks on their
    size and n arguments.
    all.equal.numeric() gains a sanity check on its tolerance
    argument - calling all.equal(a, b, c) for three numeric vectors
    is a surprisingly common error.
    mean(na.rm =), rank(na.last =), barplot(legend.text =),
    boxplot(), contour(drawlabels =), polygon(border =) and
    methods::is(class2 =) have more robust sanity checks on their
    arguments.
    R CMD Rd2pdf (used by R CMD check) has a more robust sanity check
    on the format of \alias{} commands.
  * psigamma(x, deriv) for negative x now also works for deriv = 4
    and 5; their underlying C level dpsifn() is documented in
    'Writing R Extensions'.
  * The HTML help system now uses HTML5 (wish of PR#18149).
  * ks.test() now provides exact p-values also with ties and MC
    p-values in the two-sample (Smirnov) case.  By Torsten Hothorn.
  * ks.test() gains a formula interface, with y ~ 1 for the
    one-sample (Kolmogorov) test and y ~ group for the two-sample
    (Smirnov) test.  Contributed by Torsten Hothorn.
  * The return value from ks.test() now has class c("ks.test",
    "htest") - packages using try() need to take care to use
    inherits() and not == on the class.
  * New functions psmirnov(), qsmirnov() and rsmirnov() in package
    stats implementing the asymptotic and exact distributions of the
    two-sample Smirnov statistic.
  * iconv() now allows sub = "c99" to use C99-style escapes for UTF-8
    inputs which cannot be converted to encoding to.
  * In a forward pipe |&gt; expression it is now possible to use a named
    argument with the placeholder _ in the rhs call to specify where
    the lhs is to be inserted.  The placeholder can only appear once
    on the rhs.
  * The included LAPACK sources have been updated to version 3.10.0,
    except for the four Fortran 77 routines which 3.10.0 has
    re-implemented in Fortran 90 (where the older versions have been
    retained as the R build process does not support Fortran 90).
  * path.expand() and most other uses of tilde expansion now warn if
    a path would be too long if expanded.  (An exception is
    file.exists(), which silently returns false.)
  * trunc(&lt;Date&gt;, *) now supports units = "months" or "years" for
    consistency with the POSIXt method, thanks to Dirk Eddelbuettel's
    proposal in PR#18099.
  * list2DF() now checks that its arguments are of the same length,
    rather than use recycling.
  * The HTML help system has several new features: LaTeX-like math
    can be typeset using either KaTeX or MathJax, usage and example
    code is highlighted using Prism, and for dynamic help the output
    of examples and demos can be shown within the browser if the
    knitr package is installed. These features can be disabled by
    setting the environment variable _R_HELP_ENABLE_ENHANCED_HTML_ to
    a false value.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 15
    and so packages that provide graphics devices should be
    reinstalled.
  * The grid package now allows the user to specify a "vector" of
    pattern fills.  The fill argument to gpar() accepts a list of
    gradients and/or patterns and the functions linearGradient(),
    radialGradient(), and pattern() have a new group argument.
    Points grobs (data symbols) can now also have a pattern fill.
    The grobCoords() function now returns a more informative and
    complex result.
  * The grid package has new functions for drawing isolated groups:
    grid.group(), grid.define(), and grid.use().  These functions add
    compositing operators and affine transformations to R's graphics
    capabilities.
    The grid package also has new functions for stroking and filling
    paths: grid.stroke(), grid.fill(), and grid.fillStroke().
    A new function as.path() allows the user to specify the fill rule
    for a path that is to be used for clipping, stroking, or filling;
    available options are "winding" and "evenodd".  A new function
    as.mask() allows the user to specify the type of a mask;
    available options are "alpha" and "luminance".
    These new features are only supported so far (at most) on the
    Cairo-based graphics devices and on the pdf() device.
  * dev.capabilities() reports on device support for the new
    features.
  * par() now warns about unnamed non-character arguments to prevent
    misuse such as {usr &lt;- par("usr"); par(usr)}.
  INSTALLATION:
  * Facilities for accessing ftp:// sites are no longer tested
    (except _pro tem_ for curlGetHeaders()) as modern browsers have
    removed support.
  * R can now be built with DEFS = -DSTRICT_R_HEADERS .
  PACKAGE INSTALLATION:
  * R CMD INSTALL no longer tangles vignettes. This completes an R
    CMD build change in R 3.0.0 and affects packages built before R
    3.0.2. Such packages should be re-made with R CMD build to have
    the tangled R code of vignettes shipped with the tarball.
  * USE_FC_LEN_T will become the default: this uses the correct
    prototypes for Fortran BLAS/LAPACK routines called from C/C++,
    and requires adjustment of most such calls - see 'Writing R
    Extensions' SS6.6.2.  (This has been supported since R 3.6.2.)
  * Package installation speed for packages installed with
    keep.source has been improved. This resolve the issue reported by
    Ofek Shilon in PR#18236.
  UTILITIES:
  * R CMD check can optionally report files/directories left behind
    in home, /tmp (even though TMPDIR is set) and other directories.
    See the "R Internals" manual for details.
  * R CMD check now reports byte-compilation errors during
    installation.  These are not usually fatal but may result in
    parts of the package not being byte-compiled.
  * _R_CHECK_DEPENDS_ONLY_ can be applied selectively to examples,
    tests and/or vignettes in R CMD check: see the "R Internals"
    manual.
  * _R_CHECK_SRC_MINUS_W_IMPLICIT_ now defaults to true: recent
    versions of Apple clang on macOS have made implicit function
    declarations in C into a compilation error.
  * R CMD check --as-cran makes use of the environment variable
    AUTORECONF.  See the "R Internals" manual SS8 for further details.
  * R CMD check --use-valgrind also uses valgrind when re-building
    vignettes as some non-Sweave vignettes unhelpfully comment out
    all their code when R CMD check runs vignettes.
  * Errors in re-building vignettes (unless there are LaTeX errors)
    are reported by R CMD check as ERROR rather than WARNING when
    running vignettes has been skipped (as it frequently is in CRAN
    checks and by --as-cran).
  * R CMD Rd2pdf gains a --quiet option that is used by R CMD build
    when building the PDF package manual.
  * R CMD Rd2pdf now always runs LaTeX in batch mode, consistent with
    Texinfo &gt;= 6.7. The --batch option is ignored.
  * R CMD build and R CMD check now include the Rd file name and line
    numbers in the error message of an \Sexpr evaluation failure.
  * For packages using the \doi Rd macro (now an install-time \Sexpr)
    but no other dynamic Rd content, R CMD build now produces a
    smaller tarball and is considerably faster - skipping temporary
    package installation.
  C-LEVEL FACILITIES:
  * The non-API header R_ext/R-ftp-http.h is no longer provided, as
    the entry points it covered are now all defunct.
  * A number of non-API declarations and macro definitions have been
    moved from the installed header Rinternals.h to the internal
    header Defn.h. Packages that only use entry points and
    definitions documented to be part of the API as specified in
    'Writing R Extensions' SS6 should not be affected.
  * The macro USE_RINTERNALS no longer has any effect when compiling
    package code.  Packages which also use R_NO_REMAP will need to
    ensure that the remapped names are used for calls to API
    functions that were formerly also made available as macros.
  * The deprecated legacy S-compatibility macros PROBLEM, MESSAGE,
    ERROR, WARN, WARNING, RECOVER, ... are no longer defined in
    R_exts/RS.h (included by R.h).  Replace these by calls to
    Rf_error and Rf_warning (defined in header R_ext/Error.h included
    by R.h).
    Header R_ext/RS.h no longer includes R_ext/Error.h.
  * Header R_ext/Constants.h (included by R.h) when included from C++
    now includes the C++ header cfloat rather than the C header
    float.h (now possible as C++11 is required).
  * The legacy S-compatibility macros DOUBLE_* in R_ext/Constants.h
    (included by R.h) are deprecated.
  * The deprecated S-compatibility macros SINGLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * R_Calloc, R_Free and R_Realloc are preferred to their unprefixed
    forms and error messages now use the prefix. These forms were
    introduced in R 3.4.0 and are available even when
    STRICT_R_HEADERS is defined.
  * rmultinom has been documented in 'Writing R Extensions' SS6 so is
    now part of the R API.
  * Similarly, Rtanpi, called from R level tanpi() is now part of the
    R API.
  * The long-deprecated, undocumented and non-API entry point call_R
    is no longer declared in R_ext/RS.h (included by R.h).
  * The header S.h which has been unsupported since Jan 2016 has been
    removed.  Use R.h instead.
  DEPRECATED AND DEFUNCT:
  * The (non-default and deprecated) method = "internal" for
    download.file() and url() no longer supports http:// nor ftp://
    URIs.  (It is used only for file:// URIs.)
    On Windows, download.file(method = "wininet") no longer supports
    ftp:// URIs.  (It is no longer the default method, which is
    "libcurl" and does.)
    On Windows, the deprecated method = "wininet" now gives a warning
    for http:// and https:// URIs for both download.file() and url().
    (It is no longer the default method.)
  * On Windows, the command-line option --max-mem-size and
    environment variable R_MAX_MEM_SIZE are defunct.  The memory
    allocation limit was important for 32-bit builds, but these are
    no longer supported.
  * default.stringsAsFactors() is now formally deprecated, where that
    was only mentioned on its regular help page, previously.  So it
    now gives a warning if called.
  * unix.time() is defunct now; it had been deprecated since R 3.4.0.
  BUG FIXES:
  * Setting digits = 0 in format(), print.default() (and hence
    typically print()) or options() is again invalid.  Its behaviour
    was platform-dependent, and it is unclear what "zero significant
    digits" should mean (PR#18098).
  * Messages from C code in the cairo section of package grDevices
    are now also offered for translation, thanks to Michael Chirico's
    PR#18123.
  * mean(x) with finite x now is finite also without "long.double"
    capability.
  * R CMD Rd2pdf no longer leaves an empty build directory behind
    when it aborts due to an already existing output file.  (Thanks
    to Sebastian Meyer's PR#18141.)
  * density(x, weights = w, na.rm = TRUE) when anyNA(x) is true, now
    removes weights "in parallel" to x, fixing PR#18151, reported by
    Matthias Gondan.  Additionally, it gets a subdensity option.
  * Conversion of \Sexpr[]{&lt;expR&gt;} to LaTeX or HTML no longer
    produces long blocks of empty lines when &lt;expR&gt; itself contains
    several lines all producing empty output.  Thanks to a report and
    patch by Ivan Krylov posted to R-devel.
  * R CMD build no longer fails if a package vignette uses child
    documents and inst/doc exists.  (Thanks to Sebastian Meyer's
    PR#18156.)
  * When an R documentation ('help' source) file man/foo.Rd in a
    package has \donttest{..} examples with a syntax error, it is now
    signalled as ERROR and with correct line numbers relating to the
  * -Ex.R file, thanks to Duncan Murdoch and Sebastian Meyer's
    reports and patch proposals in PR#17501.
  * Improved determination of the correct translation domain in
    non-base packages, addressing the combination of PR#18092 and
    PR#17998 (#c6) with reports and _augmented_ patch #2904 by
    Suharto Anggono.
    Note that "R-base" is no longer the default domain e.g., for
    top-level calls to gettext(); rather translation needs explicit
    domain = * specification in such cases.
  * identical(attrib.as.set=FALSE) now works correctly with data
    frames with default row names (Thanks to Charlie Gao's PR#18179).
  * txtProgressBar() now enforces a non-zero width for argument char,
    without which no progress can be visible.
  * dimnames(table(d)) is more consistent in the case where d is a
    list with a single component, thanks to Thomas Soeiro's report to
    R-devel.
    Further, table(d1, d2) now gives an error when d1 and d2 are data
    frames as suggested by Thomas in PR#18224.
  * Fix for drawing semi-transparent lines and fills on the native
    Windows graphics device (PR#18219 and PR#16694).  Thanks to Nick
    Ray for helpful diagnosis on Bugzilla.
  * The deparser now wraps sub-expressions such as if(A) ..  with
    parentheses when needed; thanks to Duncan Murdoch's PR#18232 and
    Lionel Henry's patches there.
  * remove.packages() no longer tries to uninstall Priority: base
    packages, thanks to a report and suggestions by Colin Fay in
    PR#18227.
  * win.metafile() now has xpinch and ypinch arguments so that the
    user can override Windows' (potentially wrong) guess at device
    dimensions.
  * x[i] and x[[i]] for non-integer i should now behave in all cases
    as always documented: the index used is equivalent to
    as.integer(i) unless that would overflow where trunc(i) is used
    instead; thanks to Suharto Anggono's report and patch proposals
    in PR#17977.
  * asOneSidedFormula() now associates the resulting formula with the
    global environment rather than the evaluation environment created
    for the call.
  * &lt;bibentry&gt;$name now matches the field name case-insensitively,
    consistent with bibentry() creation and the replacement method.
  * cbind() failed to detect some length mismatches with a mixture of
    time-series and non-time-series inputs.
  * The default LaTeX style file Sweave.sty used by the RweaveLatex
    driver no longer loads the obsolete ae package; thanks to a
    report by Thomas Soeiro in PR#18271.  Furthermore, it now skips
    \usepackage[T1]{fontenc} for engines other than pdfTeX (if
    detected) or if the new [nofontenc] option is used.
  * smooth.spline() now stores its logical cv argument more safely,
    fixing a rare bug when printing, and also stores n.
  * smooth.spline(x,y,*) now computes the cv.crit statistic
    correctly, also when is.unsorted(x), fixing PR#18294.
  * The data.frame method of rbind() now warns when binding
    not-wholly-recycling vectors, by analogy to the default method
    (for matrices).
  * setAs() finds the correct class for name to when multiple
    packages define a class with that name. Thanks to Gabor Csardi
    for the report.
  * Fix for detaching a package when two classes of the same name are
    present in method signatures for the same generic. Thanks to
    Gabor Csardi for the report.
  * match.arg("", c("", "a", "B")) gives a better error message, in
    part from PR#17959, thanks to Elin Waring.
  * R CMD Sweave --clean no longer removes pre-existing files or
    subdirectories (PR#18242).
  * The quartz() device no longer splits polylines into subpaths.
    That has caused narrowly-spaced lines with many points to always
    look solid even when dashed line type was used due to dash phase
    restarts.
  * Deparsing constructs such as quote(1 + `!`(2) + 3) works again as
    before R 3.5.0, thanks to the report and patch in PR#18284 by
    Suharto Anggono.
  * as.list(f) for a factor f now keeps names(f), fixing PR#18309.
  * qbeta(.001, .9, .009) and analogous qf() calls now return a
    correct value instead of NaN or wrongly 1, all with a warning;
    thanks to the report by Ludger Goeminne in PR#18302.
  * plot.lm() failed to produce the plot of residuals vs.  factor
    levels (i.e., which=5 when leverages are constant) for models
    with character predictors (PR#17840).
  * interaction.plot(..., xtick = TRUE) misplaced the x-axis line
    (PR#18305).
  * Not strictly fixing a bug, format()ing and print()ing of
    non-finite Date and POSIXt values NaN and +/-Inf no longer show
    as NA but the respective string, e.g., Inf, for consistency with
    numeric vector's behaviour, fulfilling the wish of PR#18308.
  * R CMD check no longer runs test scripts generated from
    corresponding .Rin files twice and now signals an ERROR if
    processing an .Rin script fails.
  * tools::Rd2txt() used for plain-text help pages now renders \hrefs
    (if tools::Rd2txt_options(showURLs = TRUE)) and \urls with
    percent-encoding and standards-compliant delimiting style (angle
    brackets and no URL: prefix).  \email is now rendered with a
    mailto: prefix.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1655985600">- CHANGES IN R 4.2.1:
  NEW FEATURES:
  * New function utils::findCRANmirror() to find out if a CRAN mirror
    has been selected, otherwise fallback to the main site.  This
    behaves in the same way as tools::CRAN_package_db() and is
    intended for packages wishing to access CRAN for purposes other
    than installing packages.
    The need for this was shown by a day when the main CRAN website
    was offline and a dozen or so packages which had its URL
    hardcoded failed their checks.
  INSTALLATION on a UNIX-ALIKE:
  * The libraries searched for by --with-blas (without a value) now
    include BLIS (after OpenBLAS but before ATLAS).  And on macOS,
    the Accelerate framework (after ATLAS).  (This is patterned after
    the AX_BLAS macro from the Autoconf Archive.)
  * The included LAPACK sources have been updated to 3.10.1.
  UTILITIES:
  * The (full path to) the command tidy to be used for HTML
    validation can be set by environment variable R_TIDYCMD.
  * Setting environment variable _R_CHECK_RD_VALIDATE_RD2HTML_ to a
    false value will override R CMD check --as-cran and turn off HTML
    validation.  This provides a way to circumvent a problematic
    tidy.
    The 2006 version that ships with macOS is always skipped.
  C-LEVEL FACILITIES:
  * The undocumented legacy declarations of Sint, Sfloat, SINT_MAX
    and SINT_MIN in header R.h are deprecated.
  BUG FIXES:
  * fisher.test(d) no longer segfaults for "large" d; fixing PR#18336
    by preventing/detecting an integer overflow reliably.
  * tar(., files=*) now produces correctly the warning about invalid
    uid or gid of files, fixing PR#18344, reported by Martin Morgan.
  * tk_choose.files() with multi = FALSE misbehaved on paths
    containing spaces (PR#18334) (regression introduced in R 4.0.0).
  * sort(x, partial = ind, *) now works correctly notably for the
    non-default na.last = FALSE or TRUE, fixing PR#18335 reported by
    James Edwards.
  * Environment variable _R_CHECK_XREFS_REPOSITORIES_ is only used
    for checking .Rd cross-references in R CMD check (as documented)
    and not for other uses looking for a CRAN mirror.
  * The search for a CRAN mirror when checking packages now uses
    getOption("repos") if that specifies a CRAN mirror, even when it
    does not also specify all three Bioconductor repositories (as was
    previously required).
  * The HTML code generated by tools::Rd2HTML() has been improved to
    pass tidy 5.8.0.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1667217600">- CHANGES IN R 4.2.2:
  NEW FEATURES:
  * tools::Rdiff(useDiff = TRUE) checks for the presence of an
    external diff command and switches to useDiff = FALSE if none is
    found.  This allows R CMD Rdiff to always work.
  * On Windows, environment variable R_LIBCURL_SSL_REVOKE_BEST_EFFORT
    can be used to switch to only 'best-effort' SSL certificate
    revocation checks with the default "libcurl" download method.
    This reduces security, but may be needed for downloads to work
    with MITM proxies (PR#18379).
  * (macOS) The run-time check for libraries from XQuartz for X11 and
    Tcl/Tk no longer uses otool from the Apple Developer Tools
    (PR#18400).
  * The LaTeX style for producing the PDF manuals, Rd.sty, now loads
    the standard amsmath, amsfonts and amssymb packages for greater
    coverage of math commands in the Rd \eqn and \deqn macros.  The
    \mathscr LaTeX command is also provided (via the mathrsfs
    package, if available, or the amsfonts bundle otherwise),
    fulfilling the wish of PR#18398.
  * (Windows) The default format of readClipboard() and
    writeClipboard() has been changed to 13 (CF_UNICODETEXT).
  INSTALLATION on a UNIX-ALIKE:
  * The PDF manuals (if built) can be compacted by the new target
    make compact-pdf (at the top level or in directory doc/manual).
  * There is now configure support for LLVM clang 15 on Linux, which
    defaults to position-independent (PIE) executables whereas
    gfortran does not.
  * Many small changes to ease compilation (and suppress warnings)
    with LLVM clang 15.
  BUG FIXES:
  * Rscript -e would fail if stdin were closed (Reported by Henrik
    Bengtsson.)
  * qt(*, log.p=TRUE) in outer tails no longer produces NaN in its
    final steps, thus fixing PR#18360.
  * tools::Rd2latex() now escapes hashes and ampersands when writing
    URLs, fixing LaTeX errors with such URLs in \tabular.
  * When isGeneric(f, fdef=*) is used with mismatching names, the
    warning is better understandable; reported (with fix) in PR#18370
    by Gabe Becker.
  * poly(x, n) now works again (and is now documented) when x is a
    "Date" or "POSIXct" object, or of another class while fulfilling
    mode(x) == "numeric".  This also enables poly(x, *, raw=TRUE) for
    such variables.  Reported by Michael Chirico to R-devel.
  * write.table(), write.csv() and write.csv2() restore their
    numerical precision (internal equivalent of digits = 15) after an
    interrupt (PR#18384).
  * One can now read also byte FF from a clipboard connection
    (PR#18385).
  * source("") and source(character()) now give more helpful error
    messages.
  * R CMD check --as-cran set _R_CHECK_TIMINGS_ too late to have the
    intended effect.
  * as.POSIXlt(x) now also works with very large dates x, fixing
    PR#18401 reported by Hannes M"uhleisen.
  * Files can now be extracted even from very large zip archives
    (PR#18390, thanks to Martin Jakt).
  * Non-finite objects of class "POSIXlt" are now correctly coerced
    to classes "Date" and "POSIXct"; following up on the extension to
    format() them correctly.
  * Added methods for is.finite(), is.infinite() and is.nan() for
    "POSIXlt" date-time objects.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1678881600">- CHANGES IN R 4.2.3:
  C-LEVEL FACILITIES:
  * The definition of DL_FUNC in R_ext/Rdynload.h has been changed to
    be fully C-compliant.  This means that functions loaded _via_ for
    example R_GetCCallable need to be cast to an appropriate type if
    they have any arguments.
  * .Machine has a new element sizeof.time_t to identify old systems
    with a 32-bit type and hence a limited range of date-times (and
    limited support for dates millions of years from present).
  PACKAGE INSTALLATION:
  * (Windows) The default C++ standard had accidentally been left at
    C++11 when it was changed to C++14 on Unix.
  BUG FIXES:
  * As "POSIXlt" objects may be "partially filled" and their list
    components meant to be recycled, length() now is the length of
    the longest component.
  * as.POSIXlt.Date() could underflow for dates in the far past (more
    than half a million years BCE).
  * as.Date.POSIXlt(x) would return "1970-01-01" instead of NA in R
    4.2.2, e.g., for
    x &lt;- as.POSIXlt(c("2019-01-30","2001-1-1"))
    x$mon &lt;- c(0L, NA); as.Date(x)
  * R CMD check failed to apply enabled _R_CHECK_SUGGESTS_ONLY_ to
    examples and vignettes (regression in R 4.2.0).
  * R CMD check did not re-build vignettes in separate processes by
    default (regression in R 4.2.0).
  * Running examples from HTML documentation now restores previous
    knitr settings and options (PR#18420).
  * Quartz: fonts are now located using Core Graphics API instead of
    deprecated ATS which is no longer supported in the macOS 13 SDK
    (PR#18426).  This also addresses an issue where the currently
    used font in the Quartz device context was not correctly
    retained.
  * (Windows) Math symbols in text drawing functions are again
    rendered correctly (PR#18440).  This fixes a regression in R
    4.2.1 caused by a fix in PR#18382 which uncovered an issue in
    GraphApp due to which the symbol charset was not used with TT
    Symbol font face.
  * (Windows) Installing a package with a src/Makefile.{win,ucrt}
    file includes ~/.R/Makevars.win64 in the search for user
    makevars, as documented in "R Installation and Administration"
    and done for packages with a src/Makevars.{win,ucrt} file.
  * format(&lt;POSIXlt_w/_unbalanced_sec&gt;, "....%OS&lt;n&gt;") with n &gt; 0 no
    longer accidentally uses the unbalanced seconds, thanks to
    Suharto Anggono's report (including patch) in PR#18448.
  * solve.default(a, b) works around issues with some versions of
    LAPACK when a contains NA or NaN values.
  * When UseMethod() cannot dispatch, it no longer segfaults
    producing the error message in case of a long class(), thanks to
    Joris Vankerschaver's report (including patch) in PR#18447.
  * When example(foo, ..) produces graphics on an interactive device
    it needs to open itself, it now leaves devAskNewPage() unchanged
    even when it was FALSE, thus fixing a 14 years old '&lt;FIXME&gt;'.
  * packageDescription() again catches errors from encoding
    conversions. This also fixes broken packageVersion() in C locale
    on systems where iconv does not support transliteration.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1681128000">- add patch to build with libcurl &gt;= 8</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1682078400">- CHANGES IN R 4.3.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Calling &amp;&amp; or || with LHS or (if evaluated) RHS of length greater
    than one is now always an error, with a report of the form
    'length = 4' in coercion to 'logical(1)'
    Environment variable _R_CHECK_LENGTH_1_LOGIC2_ no longer has any
    effect.
  NEW FEATURES:
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.10.1.  (This caused some platform-dependent
    changes to package check output.)  And then to the sources from
    LAPACK version 3.11.0 (with changes only to double complex
    subroutines).
  * The included LAPACK sources have been updated to include the four
    Fortran 90 routines rather than their Fortran 77 predecessors.
    This may give some different signs in SVDs or
    eigendecompositions..  (This completes the transition to LAPACK
    3.10.x begun in R 4.2.0.)
  * The LAPACK sources have been updated to version 3.11.0.  (No new
    subroutines have been added, so this almost entirely bug fixes:
    Those fixes do affect some computations with NaNs, including R's
    NA.)
  * The parser now signals _classed_ errors, notably in case of the
    pipe operator |&gt;.  The error object and message now give line and
    column numbers, mostly as proposed and provided by Duncan Murdoch
    in PR#18328.
  * toeplitz() is now generalized for asymmetric cases, with a
    toeplitz2() variant.
  * xy.coords() and xyz.coords() and consequently, e.g., plot(x,y,
    log = "y") now signal a _classed_ warning about negative values
    of y (where log(.) is NA).  Such a warning can be specifically
    suppressed or caught otherwise.
  * Regular expression functions now check more thoroughly whether
    their inputs are valid strings (in their encoding, e.g. in
    UTF-8).
  * The performance of grep(), sub(), gsub() and strsplit() has been
    improved, particularly with perl = TRUE and fixed = TRUE.  Use of
    useBytes = TRUE for performance reasons should no longer be
    needed and is discouraged: it may lead to incorrect results.
  * apropos() gains an argument dot_internals which is used by the
    completion (help(rcompgen)) engine to also see base internals
    such as .POSIXct().
  * Support in tools::Rdiff() for comparing uncompressed PDF files is
    further reduced - see its help page.
  * qqplot(x, y, ...) gains conf.level and conf.args arguments for
    computing and plotting a confidence band for the treatment
    function transforming the distribution of x into the distribution
    of y (Switzer, 1976, _Biometrika_). Contributed by Torsten
    Hothorn.
  * Performance of package_dependencies() has been improved for cases
    when the number of dependencies is large.
  * Strings newly created by gsub(), sub() and strsplit(), when any
    of the inputs is marked as "bytes", are also marked as "bytes".
    This reduces the risk of creating invalid strings and accidental
    substitution of bytes deemed invalid.
  * Support for readLines(encoding = "bytes") has been added to allow
    processing special text files byte-by-byte, without creating
    invalid strings.
  * iconv(from = "") now takes into account any declared encoding of
    the input elements and uses it in preference to the native
    encoding.  This reduces the risk of accidental creation of
    invalid strings, particularly when different elements of the
    input have different encoding (including "bytes").
  * Package repositories in getOption("repos") are now initialized
    from the repositories file when utils is loaded (if not already
    set, e.g., in .Rprofile).  (From a report and patch proposal by
    Gabriel Becker in PR#18405.)
  * compactPDF() gets a verbose option.
  * type.convert() and hence read.table() get new option tryLogical =
    TRUE with back compatible default.  When set to false, converts
    "F" or "T" columns to character.
  * Added new unit prefixes "R" and "Q" for abbreviating
    (unrealistically large) sizes beyond 10^{27} in standard = "SI",
    thanks to Henrik Bengtsson's PR#18435.
  * as.data.frame()'s default method now also works fine with atomic
    objects inheriting from classes such as "roman", "octmode" and
    "hexmode", such fulfilling the wish of PR#18421, by Benjamin
    Feakins.
  * The as.data.frame.vector() utility now errors for wrong-length
    row.names.  It warned for almost six years, with "Will be an
    error!".
  * sessionInfo() now also contains La_version() and reports codepage
    and timezone when relevant, in both print() and toLatex() methods
    which also get new option tzone for displaying timezone
    information when locale = FALSE.
  * New function R_compiled_by() reports the C and Fortran compilers
    used to build R, if known.
  * predict(&lt;lm&gt;, newdata = *) no longer unnecessarily creates an
    offset of all 0s.
  * solve() for complex inputs now uses argument tol and by default
    checks for 'computational singularity' (as it long has done for
    numeric inputs).
  * predict(&lt;rank-deficient lm&gt;, newdata=*) now obeys a new argument
    rankdeficient, with new default "warnif", warning only if there
    are non-estimable cases in newdata.  Other options include
    rankdeficient = "NA", predicting NA for non-estimable newdata
    cases.  This addresses PR#15072 by Russ Lenth and is based on his
    original proposal and discussions in PR#16158 also by David Firth
    and Elin Waring.  Still somewhat experimental.
  * Rgui console implementation now works better with the NVDA screen
    reader when the full blinking cursor is selected.  The underlying
    improvements in cursor handling may help also other screen
    readers on Windows.
  * The drop-field control in GraphApp can now be left with the TAB
    key and all controls can be navigated in the reverse order using
    the Shift+TAB key, improving accessibility of the Rgui
    configuration editor.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now fully accurate
    (instead of to "only" minimally five digits).
  * demo(error.catching) now also shows off withWarnings() and
    tryCatchWEMs().
  * As an experimental feature the placeholder _ can now also be used
    in the rhs of a forward pipe |&gt; expression as the first argument
    in an extraction call, such as _$coef. More generally, it can be
    used as the head of a chain of extractions, such as _$coef[[2]].
  * Spaces in the environment variable used to choose the R session's
    temporary directory (TMPDIR, TMP and TEMP are tried in turn) are
    now fatal.  (On Windows the 'short path' version of the path is
    tried and used if that does not contain a space.)
  * all.equal.numeric() gets a new optional switch giveErr to return
    the numeric error as attribute.  Relatedly,
    stopifnot(all.equal&lt;some&gt;(a, b, ..)) is as "smart" now, as
    stopifnot(all.equal(....)) has been already, thus allowing
    customized all.equal&lt;Some&gt;() wrappers.
  * R on Windows is now able to work with path names longer than 260
    characters when these are enabled in the system (requires at
    least Windows 10 version 1607).  Packages should be updated to
    work with long paths as well, instead of assuming PATH_MAX to be
    the maximum length.  Custom front-ends and applications embedding
    R need to update their manifests if they wish to allow this
    feature.  See
    &lt;https://blog.r-project.org/2023/03/07/path-length-limit-on-windows&gt;
    for more information.
  * 'Object not found' and 'Missing argument' errors now give a more
    accurate error context. Patch provided by Lionel Henry in
    PR#18241.
  * The @ operator is now an S3 generic. Based on contributions by
    Tomasz Kalinowski in PR#18482.
  * New generic chooseOpsMethod() provides a mechanism for objects to
    resolve cases where two suitable methods are found for an Ops
    Group Generic. This supports experimenting with alternative
    object systems. Based on contributions by Tomasz Kalinowski in
    PR#18484.
  * inherits(x, what) now accepts values other than a simple
    character vector for argument what. A new generic, nameOfClass(),
    is called to resolve the class name from what. This supports
    experimenting with alternative object systems. Based on
    contributions by Tomasz Kalinowski in PR#18485.
  * Detection of BLAS/LAPACK in use (sessionInfo()) with FlexiBLAS
    now reports the current backend.
  * The "data.frame" method for subset() now warns about extraneous
    arguments, typically catching the use of = instead of == in the
    subset expression.
  * Calling a:b when numeric a or b is longer than one may now be
    made into an error by setting environment variable
    _R_CHECK_LENGTH_COLON_ to a true value, along the proposal in
    PR#18419 by Henrik Bengtsson.
  * density(x, weights = *) now warns if automatic bandwidth
    selection happens without using weights; new optional warnWbw may
    suppress the warning.  Prompted by Christoph Dalitz' PR#18490 and
    its discussants.
  * rm(list = *) is faster and more readable thanks to Kevin Ushey's
    PR#18492.
  * The plot.lm() function no longer produces a normal Q-Q plot for
    GLMs. Instead it plots a half-normal Q-Q plot of the absolute
    value of the standardized deviance residuals.
  * The print() method for class "summary.glm" no longer shows
    summary statistics for the deviance residuals by default.  Its
    optional argument show.residuals can be used to show them if
    required.
  * The tapply() function now accepts a data frame as its X argument,
    and allows INDEX to be a formula in that case. by.data.frame()
    similarly allows INDICES to be a formula.
  * The performance of df[j] &lt;- value (including for missing j) and
    write.table(df) has been improved for data frames df with a large
    number of columns.  (Thanks to Gabriel Becker's PR#18500,
    PR#18503 and discussants, prompted by a report from Toby Dylan
    Hocking on the R-devel mailing list.)
  * The matrix multiply operator %*% is now an S3 generic, belonging
    to new group generic matrixOps.  From Tomasz Kalinowski's
    contribution in PR#18483.
  * New function array2DF() to convert arrays to data frames,
    particularly useful for the list arrays created by tapply().
  DATES and TIMES:
  * On platforms where (non-UTC) datetimes before 1902 (or before
    1900 as with system functions on recent macOS) are guessed by
    extrapolating time zones from 1902-2037, there is a warning at
    the first use of extrapolation in a session.  (As all time zones
    post 2037 are extrapolation, we do not warn on those.)
  * (Platforms using --with-internal-tzone, including Windows and by
    default macOS). How years are printed in dates or date-times can
    be controlled by environment variable R_PAD_YEARS_BY_ZERO.  The
    default remains to pad to 4 digits by zeroes, but setting value
    no gives no padding (as used by default by glibc).
  * strftime() tries harder to determine the offset for the "%z"
    format, and succeeds on the mainstream R platforms.
  * strftime() has a limit of 2048 bytes on the string produced -
    attempting to exceed this is an error.  (Previously it silently
    truncated at 255 bytes.)
  * sessionInfo() records (and by default prints) the system time
    zone as part of the locale information.  Also, the source
    (system/internal) of the date-time conversion and printing
    functions.
  * Objects of class "POSIXlt" created in this version of R always
    have 11 components: component zone is always set, and component
    gmtoff is set for times in UTC and usually set on the (almost
    all) platforms which have C-level support, otherwise is NA.
  * There are comprehensive validity checks on the structure of
    objects of class "POSIXlt" when converting (including formatting
    and printing).  (This avoids mis-conversions of hand-crafted
    objects.)
  * There is some support for using the native date-time routines on
    macOS: this is only viable on recent versions (e.g. 12.6 and 13)
    and does get wrong some historical changes (before 1900, during
    WWII).  Use of --with-internal-tzone remains the default.
  * as.POSIXct(&lt;numeric&gt;) and as.POSIXlt(.) (without specifying
    origin) now work.  So does as.Date(&lt;numeric&gt;).
  * as.Date.POSIXct(., tz) now treats several tz values, notably
    "GMT" as equivalent to "UTC", proposed and improved by Michael
    Chirico and Joshua Ulrich in PR#17674.
  * Experimental balancePOSIXlt() utility allows using "ragged" and
    or out-of-range "POSIXlt" objects more correctly, e.g., in
    subsetting and subassignments.  Such objects are now documented.
    More experimentally, a "POSIXlt" object may have an attribute
    "balanced" indicating if it is known to be filled or fully
    balanced.
  * Functions axis.Date() and axis.POSIXct() are rewritten to gain
    better default tick locations and better default formats by using
    prettyDate(). Thanks to Swetlana Herbrandt.
  * The mapping of Windows' names for time zones to IANA's 'Olson'
    names has been updated.  When ICU is available (it is by
    default), it is used to get a mapping for the current region set
    in Windows.  This can be overridden by setting environment
    variable TZ to the desired Olson name - see OlsonNames() for
    those currently available.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 16
    and so packages that provide graphics devices should be
    reinstalled.
  * The grDevices and grid packages have new functions for rendering
    typeset glyphs, primarily: grDevices::glyphInfo() and
    grid::grid.glyph().
    Rendering of typeset glyphs is only supported so far on the
    Cairo-based graphics devices and on the pdf() and quartz()
    devices.
  * The defined behaviour for "clear" and "source" compositing
    operators (via grid::grid.group()) has been changed (to align
    better with simple interpretation of original Porter-Duff
    definitions).
  * Support for gradients, patterns, clipping paths, masks, groups,
    compositing operators, and affine transformations has been added
    to the quartz() device.
  INSTALLATION on a UNIX-ALIKE:
  * A system installation of generic LAPACK 3.10.0 or later will be
    preferred to the version in the R sources.
    configure option --with-lapack=no (equivalently --without-lapack)
    forces compilation of the internal LAPACK sources.
    If --with-lapack is not specified, a system liblapack is looked
    for and used if it reports version 3.10.0 or later and does not
    contain BLAS routines.
    Packages using LAPACK will need to be reinstalled if this changes
    to using an external library.
  * On aarch64 Linux platforms using GCC, configure now defaults to
  - fPIC (instead of -fpic), as desired in PR#18326.
  * configure now checks conversion of datetimes between POSIXlt and
    POSIXct around year 2020.  Failure (which has been seen on
    platforms missing tzdata) is fatal.
  * If configure option --with-valgrind-instrumentation is given
    value 1 or 2, option --with-system-valgrind-headers is now the
    default and ignored (with a warning).  It is highly recommended
    that the system headers are installed alongside valgrind: they
    are part of its packaging on some Linux distributions and
    packaged separately (e.g. in the valgrind-devel RPM) on others.
    configure will give a warning if they are not found.
    The system headers will be required in a future release of R to
    build with valgrind instrumentation.
  * libcurl 8.x is now accepted by configure: despite a change in
    major version number it changes neither API nor ABI.
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools43, an update of the Rtools42 toolchain.  It is
    based on gcc 12 and newer versions of MinGW-W64, binutils and
    libraries.  At this time R-devel can still be built using
    Rtools42 without changes, but when R-devel is installed via the
    installer, it will by default look for Rtools43.
  * Old make targets rsync-extsoft and 32-bit ones that are no longer
    needed have been removed.
  * Default builds (including for packages) no longer select C99.
    Thus the C standard used is the default for the compiler, which
    for the toolchain in Rtools43 is C17.  (This is consistent with
    Unix builds.)
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++17 where
    available (which it is on all currently checked platforms): if
    not C++14 or C++11 is used if available otherwise C++ is not
    supported.
  * USE_FC_LEN_T is the default: this uses the correct
    (compiler-dependent) prototypes for Fortran BLAS/LAPACK routines
    called from C/C++, and requires adjustment of many such calls -
    see 'Writing R Extensions' SS6.6.1.
  * There is initial support for C++23 as several compilers are now
    supporting -std=c++23 or -std=c++2b or similar.  As for C++20,
    there no additional configure checks for C++23 features beyond a
    check that the compiler reports a __cplusplus value greater than
    that in the C++20 standard.  C++ feature tests should be used.
  * There is support for a package to indicate the version of the C
    standard which should be used to compile it, and for the
    installing user to specify this.  In most cases R defaults to the
    C compiler's default standard which is C17 (a `bug-fix' of C11) -
    earlier versions of R or compilers may have defaulted to C99.
    Current options are:
    USE_C17 Use a standard that is at most C17.  The intention is to
    allow legacy packages to still be installed when later C
    standards become the default, including packages using new
    keywords as identifiers or with K&amp;R-style function
    declarations.  This will use C17 if available, falling back
    to C11.
    USE_C90 Use the C90 (aka C89) standard.  (As that standard did
    not require compilers to identify that version, all we can
    verify is that the compiler does not claim to be using a
    later standard.  It may accept C99 features - for example
    clang accepts // to make comments.)
    USE_C99 Use the C99 standard. This should be rarely needed - it
    avoids the few new features of C11/C17 which can be useful if
    a package assumes them if C17 is specified and they are not
    implemented.
    USE_C23 Use C23 (or in future, later).  Compiler/library support
    for C23 is still being implemented, but LLVM clang from
    15.0.0 and the upcoming GCC 13 have quite extensive support.
    These can be specified as part of the SystemRequirements field in
    the package's DESCRIPTION file or _via_ options --use-C17 and so
    on of R CMD INSTALL and R CMD SHLIB.
    For further details see "Writing R Extensions" SS1.2.5.
  * (Windows) A src/Makefile.ucrt or src/Makefile.win file is now
    included after R_HOME/etcR_ARCH/Makeconf and so no longer needs
    to include that file itself.  Installation of a package with such
    a file now uses a site Makevars file in the same way as a package
    with a src/Makevars.win file would.
  * configure is now passed crucial variables such as CC and CFLAGS
    in its environment, as many packages were not setting them (as
    documented in 'Writing R Extensions' SS1.2).
    This has most effect where configure is used to compile parts of
    the package - most often by cmake or libtool which obfuscate the
    actual compile commands used.
    Also used for configure.win and configure.ucrt on Windows.
  FORTRAN FLAGS:
  * The flag -fno-optimize-sibling-calls is no longer forced for
    gfortran 7 and later.  It should no longer be needed now using
    'hidden' character-length arguments when calling BLAS/LAPACK
    routines from C/C++ is the default even for packages.  (Unless
    perhaps packages call Fortran code from C/C++ without using R's
    headers and without allowing for these arguments.)
  C-LEVEL FACILITIES:
  * The deprecated S-compatibility macros DOUBLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * The deprecated legacy typedefs of Sint and Sfloat in header R.h
    are no longer defined, and that header no longer includes header
    limits.h from C nor climits from C++.
  * New macro CAD5R() is provided in Rinternals.h and used in a few
    places in the R sources.
  * ALTREP now supports VECSXP vectors. Contributed by Gabor Csardi
    in PR#17620.
  * The Rcomplex definition (in header R_ext/Complex.h) has been
    extended to prevent possible mis-compilation when interfacing
    with Fortran (PR#18430).  The new definition causes compiler
    warnings with static initializers such as {1, 2}, which can be
    changed to {.r=1, .i=2}.
    Using the new definition from C++ depends on compiler extensions
    supporting C features that have not been incorporated into the
    C++ standards but are available in g++ and clang++: this may
    result in C++ compiler warnings but these have been worked around
    for recent versions of common compilers (GCC, Apple/LLVM clang,
    Intel).
    It is intended to change the inclusion of header R_ext/Complex.h
    by other R headers, so C/C++ code files which make use of
    Rcomplex should include that header explicitly.
  UTILITIES:
  * R CMD check does more checking of package .Rd files, warning
    about invalid email addresses and (some) invalid URIs and noting
    empty \item labels in description lists.
  * R CMD check now also reports problems when reading package news
    in md (file NEWS.md) and (optionally) plain text (file NEWS)
    formats.
  * _R_CHECK_TIMINGS_ defaults to a value from the environment even
    for R CMD check --as-cran; this allows for exceptionally fast or
    slow platforms.
    It now applies to checking PDF and HTML versions of the manuals,
    and 'checking CRAN incoming feasibility'.
  * R CMD check can optionally (but included in --as-cran) check
    whether HTML math rendering _via_ KaTeX works for the package .Rd
    files.
  * Non-interactive debugger invocations can be trapped by setting
    the environment variable _R_CHECK_BROWSER_NONINTERACTIVE_ to a
    true value.  This is enabled by R CMD check --as-cran to detect
    the use of leftover browser() statements in the package.
  * The use of sprintf and vsprintf from C/C++ has been deprecated in
    macOS 13 and is a known security risk.  R CMD check now reports
    (on all platforms) if their use is found in compiled code:
    replace by snprintf or vsnprintf respectively. [*NB:* whether
    such calls get compiled into the package is platform-dependent.]
  * Where recorded at installation, R CMD check reports the C and
    Fortran compilers used to build R.
    It reports the OS in use (if known, as given by osVersion) as
    well as that R was built for.
    It notes if a C++ standard was specified which is older than the
    current default: many packages have used C++11 to mean 'not
    C++98' - as C++11 is the minimum supported since R 4.0.0, that
    specification can probably be removed.
  * R CMD INSTALL reports the compilers (and on macOS, the SDK) used,
    and this is copied to the output of R CMD check.
    Where a C++ standard is specified, it is reported.
  * R CMD check's 'checking compilation flags in Makevars' has been
    relaxed to accept the use of flags such as -std=f2008 in
    PKG_FFLAGS.
  * tools::buildVignettes() has a new argument skip, which is used by
    R CMD check to skip (and note) vignettes with unavailable
    \VignetteDepends (PR#18318).
  * New generic .AtNames() added to enable class-specific completions
    after @. The formerly internal function findMatches() is now
    exported, mainly for use in methods for .DollarNames() and
    .AtNames().
  DEPRECATED AND DEFUNCT:
  * default.stringsAsFactors() is defunct.
  * Calling as.data.frame.&lt;class&gt;() directly (for 12 atomic classes)
    is going to be formally deprecated, currently activated by
    setting the environment variable
    _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ to non-empty, which also
    happens in R CMD check --as-cran.
  BUG FIXES:
  * Hashed environments with sizes less than 5 can now grow.
    (Reported to R-devel by Duncan Garmonsway.)
  * as.character(&lt;Rd&gt;, deparse = TRUE) failed to re-escape curly
    braces in LaTeX-like text.  (Reported by Hadley Wickham in
    PR#18324.)
  * library() now passes its lib.loc argument when requiring Depends
    packages; reported (with fix) in PR#18331 by Mikael Jagan.
  * R CMD Stangle: improved message about 'Output' files.
  * head(x, n) and tail(x, n) now signal an error if n is not
    numeric, instead of incidentally "working" sometimes returning
    all of x.  Reported and discussed by Colin Fay, in PR#18357.
  * The "lm" method for summary() now gives the correct F-statistic
    when the model contains an offset.  Reported in PR#18008.
  * C() and `contrasts&lt;-`() now preserve factor level names when
    given a function object (as opposed a function name which did
    preserve names). Reported in PR#17616.
  * c(a = 1, 2)[[]] no longer matches 2 but rather signals a
    _classed_ error.  Reported and analysed by Davis Vaughan in
    PR#18367, a duplicate of PR#18004, by Jan Meis et al.  For
    consistency, NULL[[]] is also erroneous now.  x[[]] &lt;- v gives an
    error of the same class "MissingSubscriptError".
  * The relist() function of utils now supports NULL elements in the
    skeleton (PR#15854).
  * ordered(levels = *) (missing x) now works analogously to factor(,
    ordered=TRUE); reported (with fix) by Achim Zeileis in PR#18389.
  * User-defined Rd macro definitions can now span multiple lines,
    thanks to a patch from Duncan Murdoch. Previously, the Rd parser
    silently ignored everything after the first line.
  * Plain-text help (tools::Rd2txt()) now preserves an initial blank
    line for text following description list items.
  * tools::Rd2HTML() and tools::Rd2latex() no longer split \arguments
    and \value lists at Rd comments.
  * tools::Rd2latex() now correctly handles optional text outside
    \items of argument lists as well as bracketed text at the
    beginning of sections, e.g., \value{[NULL]}.
  * as.character(&lt;POSIXt&gt;) now behaves more in line with the methods
    for atomic vectors such as numbers, and is no longer influenced
    by options().  Ditto for as.character(&lt;Date&gt;).  The
    as.character() method gets arguments digits and OutDec with
    defaults _not_ depending on options().  Use of as.character(*,
    format = .) now warns.
  * Similarly, the as.character.hexmode() and *.octmode() methods
    also behave as good citizen methods and back compatibility option
    keepStr = TRUE.
  * The as.POSIXlt(&lt;POSIXlt&gt;) and as.POSIXct(&lt;POSIXct&gt;) default
    methods now do obey their tz argument, also in this case.
  * as.POSIXlt(&lt;Date&gt;) now does apply a tz (time zone) argument, as
    does as.POSIXct(); partly suggested by Roland Fuss on the R-devel
    mailing list.
  * as.Date.POSIXlt(x) now also works when the list components are of
    unequal length, aka "partially filled" or "ragged".
  * expand.model.frame() looked up variables in the wrong environment
    when applied to models fitted without data.  Reported in
    PR#18414.
  * time() now (also) uses the ts.eps = getOption("ts.eps") argument
    and thus by default rounds values very close to the start (or
    end) of a year.  Based on a proposal by Andre"i V. Kostyrka on
    R-help.
  * Printing of a factanal() result with just one factor and sort =
    TRUE now works regularly, fixing PR#17863 by Timothy Bates,
    thanks to the 'R Contributors' working group.
  * Printing 0-length objects of class "factor", "roman", "hexmode",
    "octmode", "person", "bibentry", or "citation" now prints
    something better, one of which fixes PR#18422, reported by
    Benjamin Feakins.
  * Sys.timezone() queries timedatectl only if systemd is loaded;
    addressing a report by Jan Gorecki in PR#17421.
  * The formula method of cor.test() had scoping problems when
    environment(formula) was not the calling environment; reported
    with a patch proposal by Mao Kobayashi in PR#18439.
  * attach() of an environment with active bindings now preserves the
    active bindings.  Reported by Kevin Ushey in PR#18425.
  * BLAS detection now works also with system-provided libraries not
    available as regular files.  This fixes detection of the
    Accelerate framework on macOS since Big Sur.  Reported by David
    Novgorodsky.
  * download.file() gives a helpful error message in case of an
    invalid download.file.method option, thanks to Colin Fay's report
    in PR#18455.
  * Sporadic crashes of Rterm when using completion have been fixed.
  * Rprof() is now more reliable.  A livelock in thread
    initialization with too short sampling interval has been fixed on
    macOS.  A deadlock in using the C runtime has been fixed on
    Windows.  A potential deadlock has been prevented on Unix.
  * Cursor placement in Rgui now works even after a fixed-width font
    is selected.
  * Mandatory options (options()) are now set on startup so that
    saving and restoring them always works (PR#18372).
  * Package installation, R CMD INSTALL or install.packages(*), now
    parses each of the &lt;pkg&gt;/R/*.R files individually instead of
    first concatenating and then parse()ing the large resulting file.
    This allows parser or syntax errors to be diagnosed with correct
    file names and line numbers, thanks to Simon Dedman's report and
    Bill Dunlap's patch in PR#17859.
    This _does_ require syntactically self contained R source files
    now, fixing another inadvertent bug.
  * predict.lm(&lt;model with offset&gt;) now finds the offset in the
    correct environment, thanks to Andr'e Gillibert's report and patch
    in PR#18456.
  * getInitial(&lt;formula&gt;) now finds the selfStart model in the
    correct environment.  (Reported by Ivan Krylov in PR#18368.)
  * Fix for possible segfault when using recently-added graphics
    features, such as gradients, clipping paths, masks, and groups
    with pdf(file=NULL).
  * class(m) &lt;- class(m) no longer changes a matrix m by adding a
    class _attribute_.
  * packageDate(pkg) now only warns once if there is no pkg.
  * When ts() creates a multivariate time series, "mts", it also
    inherits from "array" now, and is.mts() is documented _and_
    stricter.
  * Rd2txt() now preserves line breaks of \verb Rd content and from
    duplicated \cr.  The former also fixes the rendering of verbatim
    output from Rd \Sexpr in plain-text help.
  * uniroot(f, interval) should no longer wrongly converge _outside_
    the interval in some cases where abs(f(x)) == Inf for an x at the
    interval boundary, thanks to posts by Ben Bolker and Serguei
    Sokol on R-devel.
  * Vectorized alpha handling in palette functions such as in gray(),
    rainbow(), or hcl.colors() works correctly now, thanks to Achim
    Zeileis' report and patch in PR#18476.
  * Formatting and print()ing of bibentry objects has dropped the
    deprecated citation.bibtex.max argument, such that the bibtex
    argument's default for print.bibentry() depends directly on the
    citation.bibtex.max option, whereas in format.bibentry() the
    option no longer applies.
  * Attempting to use a character string naming a foreign function
    entry point in a foreign function call in a package will now
    signal an error if the packages has called R_forceSymbols to
    specify that symbols must be used.
  * An error in table() could permanently set options(warn=2)
    promoting all subsequent warnings to errors.
  * The sigma() function gave misleading results for binary GLMs.  A
    new method for objects of class "glm" returns the square root of
    the estimate of the dispersion parameter using the same
    calculation as summary.glm().
  * bs() and ns() in the (typical) case of automatic knot
    construction, when some of the supposedly inner knots coincide
    with boundary knots, now moves them inside (with a warning),
    building on PR#18442 by Ben Bolker.
  * R CMD on Windows now skips the site profile with --no-site-file
    and --vanilla even when R_PROFILE is set (PR#18512, from Kevin
    Ushey).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1686916800">- CHANGES IN R 4.3.1:
  C-LEVEL FACILITIES:
  * The C-level API version of R's integrate(), Rdqags() in Applic.h,
    now returns the correct number of integrand evaluations neval,
    fixing PR#18515 reported and diagnosed by Stephen Wade.
  * The C prototypes for LAPACK calls dspgv and dtptrs in
    R_exts/Lapack.h had one too many and one too few character length
    arguments - but this has not caused any known issues. To get the
    corrected prototypes, include
    [#]include &lt;Rconfig.h&gt; // for PR18534fixed
    [#]ifdef PR18534fixed
    [#] define usePR18534fix 1
    [#]endif
    [#]include &lt;R_exts/Lapack.h&gt;
    in your C/C++ code (PR#18534).
  INSTALLATION:
  * Many of the checks of esoteric Internet operations and those
    using unreliable external sites have been moved to a new target
    that is not run by default and primarily intended for the core
    developers.  To run them use
    cd tests; make test-Internet-dev
  BUG FIXES:
  * .S3methods(), typically called from methods(), again marks
    methods from package base as visible.
    Also, the visibility of non-base methods is again determined by
    the method's presence in search().
  * tools::Rdiff() is now more robust against invalid strings, fixing
    installation tests on Windows without Rtools installed
    (PR#18530).
  * Fix (new) bug in hcl.colors(2, *), by Achim Zeileis (PR#18523).
  * head(., &lt;illegal&gt;) and tail(..) now produce more useful "Error in
    ...." error messages, fixing PR#18362.
  * Package code syntax on Windows is checked in UTF-8 when UTF-8 is
    the native encoding.
  * na.contiguous(x) now also returns the first run, when it is at
    the beginning and there is a later one of the same length;
    reported to R-devel, including a fix, by Georgi Boshnakov.
    Further, by default, it modifies only an existing attr(*,"tsp")
    but otherwise no longer sets one.
  * chol(&lt;not pos.def&gt;, pivot = &lt;T|F&gt;) now gives a correct error or
    warning message (depending on pivot), thanks to Mikael Jagan's
    (PR#18541).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1699012800">- CHANGES IN R 4.3.2:
  NEW FEATURES:
  * The default initialization of the "repos" option from the
    repositories file at startup can be skipped by setting
    environment variable R_REPOSITORIES to NULL such that
    getOption("repos") is empty if not set elsewhere.
  * qr.X() is now an implicit S4 generic in methods.
  * iconv(to = "ASCII//TRANSLIT") is emulated using substitution on
    platforms which do not support it (notably Alpine Linux).  This
    should give a human-readable conversion in ASCII on all platforms
    (rather than NA_character_).
  * trans3d() gains options continuous and verbose addressing the
    problem of possible "wrap around" when projecting too long
    curves, as reported by Achim Zeileis in PR#18537.
  * tools::showNonASCII() has been rewritten to work better on macOS
    14 (which has a changed implementation of iconv()).
  * tiff(type = "quartz") (the default on macOS) now warns if
    compression is specified: it continues to be ignored.
  INSTALLATION on a UNIX-ALIKE:
  * There is some support for building with Intel's LLVM-based
    compilers on x86_64 Linux, such as (C) icx, (C++) ipcx and
    (Fortran) ifx from oneAPI 2023.x.y.
  * There is support for using LLVM's flang-new as the Fortran
    compiler from LLVM 16.0.x (preferably 17.0.0 or later).
  UTILITIES:
  * R CMD check reports the use of the Fortran 90 random number
    generator RANDOM_NUMBER() and the subroutines to initialize it.
    'Writing R Extensions' has example code to use R's RNGs from
    Fortran.
  BUG FIXES:
  * substr(x, n, L) &lt;- cc now works (more) correctly for multibyte
    UTF-8 strings x when L &gt; nchar(x), thanks to a report and patch
    by 'Architect 95'.
  * contrib.url(character()) now returns 0-length character() as
    documented, which also avoids spurious warnings from
    available.packages() et al. in the edge case of an empty vector
    of repository URLs.
  * readChar(., 4e8) no longer fails, thanks to Kodi Arfer's report
    (PR#18557).
  * lapply(&lt;list&gt;, as.data.frame) no longer warns falsely for some
    base vector components.
  * Communication between parent and child processes in the multicore
    part of parallel could fail on platforms that do not support an
    arbitrarily large payload in system functions read()/write() on
    pipes (seen on macOS where a restriction to INT_MAX bytes is
    documented, without doing a partial read unlike Linux). The
    payload is now split into 1Gb chunks to avoid that problem.
    (PR#18571)
  * qqplot(x,y, conf.level=.) gives better confidence bounds when
    length(x) != length(y), thanks to Alexander Ploner's report and
    patch proposal (PR#18557).
  * norm(&lt;0-length&gt;, "2") now gives zero instead of an error, as all
    the other norm types, thanks to Mikael Jagan's PR#18542.
  * Build-stage Rd macros \packageAuthor and \packageMaintainer now
    process Authors@R, fixing NA results when the package DESCRIPTION
    omits Author and Maintainer fields.
  * Formatting and printing complex numbers could give things like
    0.1683-0i because of rounding error: -0i is now replaced by +0i.
  * postscript() refused to accept a title comment containing the
    letter "W" (PR#18599).
  * isoreg(c(1,Inf)) signals an error instead of segfaulting, fixing
    PR#18603.
  * tiff(type = "Xlib") was only outputting the last page of
    multi-page plots.
  * tools::latexToUtf8() again knows about \~{n} and other letters
    with tilde, fixing a regression in R 4.3.0, and about \^{i} as an
    alternative to \^{\i} (similarly with other accents).
    Furthermore, LaTeX codes for accented I letters are now correctly
    converted, also fixing related mistakes in
    tools::encoded_text_to_latex().
  * tar(*, tar = "internal") no longer creates out-of-spec tar files
    in the very rare case of user or group names longer than 32
    bytes, fixing PR#17871 with thanks to Ivan Krylov.
  * When using the "internal" timezone datetime code, adding a
    fraction of a second no longer adds one second, fixing PR#16856
    from a patch by Ivan Krylov.
  * tools::checkRd() no longer produces spurious notes about
    "unnecessary braces" from multi-line Rd results of \Sexpr macros.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1709208000">- CHANGES IN R 4.3.3:
  NEW FEATURES:
  * iconv() now fixes up variant encoding names such as "utf8"
    case-insensitively.
  DEPRECATED AND DEFUNCT:
  * The legacy encoding = "MacRoman" is deprecated in pdf() and
    postscript(): support was incomplete in earlier versions of R.
  BUG FIXES:
  * Arguments are now properly forwarded to methods on S4 generics
    with ... in the middle of their formal arguments. This was broken
    for the case when a method introduced an argument but did not
    include ... in its own formals. Thanks to Herv'e Pag`es for the
    report PR#18538.
  * Some invalid file arguments to pictex(), postscript() and xfig()
    opened a file called NA rather than throw an error.  These
    included postscript(NULL) (which some people expected to work
    like pdf(NULL)).
  * Passing filename = NA to svg(), cairo_pdf(), cairo_ps() or the
    Cairo-based bitmap devices opened a file called NA: it now throws
    an error.
  * quartz(file = NA) opened a file called NA, including when used as
    a Quartz-based bitmap device.  It now gives an error.
  * rank(&lt;long vector&gt;) now works, fixing PR#18617, thanks to Ilia
    Kats.
  * seq.int() did not adequately check its length.out argument.
  * match(&lt;POSIXct&gt;, .) is correct again for differing time zones,
    ditto for "POSIXlt", fixing PR#18618 reported by Bastian Klein.
  * drop.terms(*, dropx = &lt;0-length&gt;) now works, fixing PR#18563 as
    proposed by Mikael Jagan.
  * drop.terms(*) keeps + offset(.) terms when it should, PR#18565,
    and drop.terms() no longer makes up a response, PR#18566, fixing
    both bugs thanks to Mikael Jagan.
  * getS3method("t", "test") no longer finds the t.test() function,
    fixing PR#18627.
  * pdf() and postscript() support for the documented Adobe encodings
    "Greek" and "Cyrilllic" was missing (although the corresponding
    Windows' codepages could be used).
  * Computations of glyph metric information for pdf() and
    postscript() did not take into account that transliteration could
    replace one character by two or more (only seen on macOS 14) and
    typically warned that the information was not known.
  * rank(x) no longer overflows during integer addition, when
    computing rank average for largish but not-yet long vector x,
    fixing PR#18630, thanks to Ilia Kats.
  * list.files() on Windows now returns also files with names longer
    that 260 bytes (the Windows limit is 260 characters).
    Previously, some file names particularly with 'East Asian'
    characters were omitted.
  * cov2cor(&lt;0 x 0&gt;) now works, fixing PR#18423 thanks to Mikael
    Jagan and Elin Waring.
  * cov2cor(&lt;negative diagonal&gt;) and similar now give one warning
    instead of two, with better wording, fixing PR#18424 thanks to
    Mikael Jagan.
  * tools:: startDynamicHelp() now ensures port is in proper range,
    fixing PR#18645.
  * pbeta(x, a,b) is correct now for x=0 or 1 in the boundary cases
    where a or b or both are 0, fixing PR#18672 thanks to Michael
    Fay.
  * pmatch(x, table) for large table, also called for data frame row
    selection, dfrm[nm, ], is now interruptible, fixing PR#18656.
  * predict(&lt;rank-deficient lm&gt;, newdata=*) fix computing of nbasis,
    see Russ Lenth's comment 29 in PR#16158.
  * Added a work-around for a bug in macOS 14.3.1 and higher which
    prevents R plots in the Quartz Cocoa device from updating on
    screen.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1713960000">- CHANGES IN R 4.4.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Startup banners, R --version, sessionInfo() and R CMD check no
    longer report (64-bit) as part of the platform as this is almost
    universal - the increasingly rare 32-bit platforms will still
    report (32-bit).
    On Windows, ditto for window titles.
  * is.atomic(NULL) now returns FALSE, as NULL is not an atomic
    vector.  Strict back-compatibility would replace is.atomic(foo)
    by (is.null(foo) || is.atomic(foo)) but should happen only
    sparingly.
  NEW FEATURES:
  * The confint() methods for "glm" and "nls" objects have been
    copied to the stats package.  Previously, they were stubs which
    called versions in package MASS. The MASS namespace is no longer
    loaded if you invoke (say) confint(glmfit).  Further, the "glm"
    method for profile() and the plot() and pairs() methods for class
    "profile" have been copied from MASS to stats.  (profile.nls()
    and plot.profile.nls() were already in stats.)
  * The confint() and profile methods for "glm" objects have gained a
    possibility to do profiling based on the Rao Score statistic in
    addition to the default Likelihood Ratio. This is controlled by a
    new test = argument.
  * The pairs() method for "profile" objects has been extended with a
    which = argument to allow plotting only a subset of the
    parameters.
  * The "glm" method for anova() computes test statistics and
    p-values by default, using a chi-squared test or an F test
    depending on whether the dispersion is fixed or free.  Test
    statistics can be suppressed by giving argument test a false
    logical value.
  * In setRepositories() the repositories can be set using their
    names via name = instead of index ind =.
  * methods() and .S3methods() gain a all.names option for the (rare)
    case where functions starting with a . should be included.
  * Serializations can now be interrupted (e.g., by Ctrl-C on a
    Unix-alike) if they take too long, e.g., from save.image(),
    thanks to suggestions by Ivan Krylov and others on R-devel.
  * New startup option --max-connections to set the maximum number of
    simultaneous connections for the session.  Defaults to 128 as
    before: allowed values up to 4096 (but resource limits may in
    practice restrict to smaller values).
  * R on Windows (since Windows 10 2004) now uses the new Segment
    Heap allocator. This may improve performance of some
    memory-intensive applications.
  * When R packages are built, typically by R CMD build &lt;pkg&gt;, the
    new --user=&lt;build_user&gt; option overrides the (internally
    determined) user name, currently Sys.info()["user"] or LOGNAME.
    This is a (modified) fulfillment of Will Landau's suggestion in
    PR#17530.
  * tools::testInstalledBasic() gets new optional arguments outDir
    and testSrcdir, e.g., allowing to use it in a &lt;builddir&gt; !=
    &lt;srcdir&gt; setup, and in standard "binary" Windows installation
  * if* a source tests/ folder is present.
  * range(&lt;DT_with_Inf&gt;, finite = TRUE) now work for objects of class
    "Date", "POSIXct", and "POSIXlt" with infinite entries,
    analogously to range.default(), as proposed by Davis Vaughan on
    R-devel.  Other range()-methods can make use of new function
    .rangeNum().
  * New .internalGenerics object complementing .S3PrimitiveGenerics,
    for documentation and low-level book-keeping.
  * grid() now invisibly returns the x- and y- coordinates at which
    the grid-lines were drawn.
  * norm(., type) now also works for complex matrices.
  * kappa(., exact = TRUE, norm = *) now works for all norms and also
    for complex matrices.  In symmetric / triangular cases, the new
    argument uplo = "U" | "L" allows the upper or lower triangular
    part to be specified.
  * memDecompress(type = "unknown") recognizes compression in the
    default 'zlib' format as used by memCompress(type = "gzip").
  * memCompress() and memDecompress() will use the libdeflate library
    (&lt;https://github.com/ebiggers/libdeflate&gt;) if installed.  This
    uses the same type of compression for type = "gzip" but is 1.5-2x
    faster than the system libz library on some common platforms: the
    speed-up may depend on the library version.
  * diff() for objects of class "Date", "POSIXct", and "POSIXlt"
    accepts a units argument passed via ....
  * Dynamic help now does a much better job of rendering package
    DESCRIPTION metadata.
  * Rprof() gains an event argument and support for elapsed (real)
    time profiling on Unix (PR#18076).
  * filled.contour() gains a key.border argument.
  * tools::update_pkg_po() gets arguments pot_make and mo_make for
    _not_ re-making the corresponding files, and additionally a
    verbose argument.
  * Hexadecimal string colour specifications are now accepted in
    short form, so, for example, we can use "#123", which is
    equivalent to "#112233".
    Thanks to MikeFC for the original idea and Ella Kaye, Malcolm
    Barrett, George Stagg, and Hanne Oberman for the patch.
  * Plain-text help shows \var markup by angle brackets.
  * The new experimental primitive function declare() is intended to
    eventually allow information about R code to be communicated to
    the interpreter, compiler, and code analysis tools. The syntax
    for declarations is still being developed.
  * Functions psmirnov(), qsmirnov() and rsmirnov() in package stats
    have had argument two.sided renamed to alternative, to take into
    account that the permutation distributions of the one-sided
    statistics can be different in the case of ties.  Consequence of
    PR#18582.
  * sort() is now an implicit S4 generic in methods.
  * Formatting and printing, format(z), print(z), of complex vectors
    z no longer zap relatively small real or imaginary parts to zero,
    fixing PR#16752.  This is an API change, as it was documented
    previously to round real and imaginary parts together on purpose,
    producing nicer looking output.  As mentioned, e.g. in the PR,
    this change is compatible with many other "R-like" programming
    environments.
    We have simplified the internal code and now basically format the
    real and imaginary parts independently of each other.
  * New experimental functions Tailcall() and Exec() to support
    writing stack-space-efficient recursive functions.
  * Where characters are attempted to be plotted by pdf(),
    postscript() and xfig() which are not in the selected 8-bit
    character set (most often Latin-1) and the R session is using a
    UTF-8 locale, the warning messages will show the UTF-8 character
    rather than its bytes and one dot will be substituted per
    character rather than per byte.  (Platforms whose iconv() does
    transliteration silently plot the transliteration.)
    In a UTF-8 locale some transliterations are now done with a
    warning (e.g., dashes and Unicode minus to hyphen, ligatures are
    expanded, permille (‰) is replaced by o/oo), although the OS may
    have got there first.  These are warnings as they will continue
    to be replaced by dots in earlier versions of R.
  * The matrix multiplication functions crossprod() and tcrossprod()
    are now also primitive and S3 generic, as %*% had become in R
    4.3.0.
  * source() and example() have a new optional argument catch.aborts
    which allows continued evaluation of the R code after an error.
  * The non-Quartz tiff() devices allow additional types of
    compression if supported by the platform's libtiff library.
  * The list of base and recommended package names is now provided by
    tools::standard_package_names().
  * cairo_pdf() and cairo_ps() default to onefile = TRUE to closer
    match pdf() and postscript().
  * New option catch.script.errors provides a documented way to catch
    errors and then continue in non-interactive use.
  * L %||% R newly in base is an expressive idiom for the phrases
    if(!is.null(L)) L else R or if(is.null(L)) R else L.
  * The return value from warnings() now always inherits from
    "warnings" as documented, now also in the case of no warnings
    where it previously returned NULL.
  * as.complex("1i") now returns 0 + 1i instead of NA with a warning.
  * z &lt;- c(NA, 1i) now keeps the imaginary part Im(z[1]) == 0, no
    longer coercing to NA_complex_.  Similarly, cumsum(z) correctly
    sums real and imaginary parts separately, i.e., without
    "crosstalk" in case of NAs.
  * On Alpine Linux iconv() now maps "latin2", "latin-2", "latin9"
    and "latin-9" to encoding names the OS knows about
    (case-insensitively).
  * iconv(sub = "Unicode") now always zero-pads to four (hex) digits,
    rather than to 4 or 8.  (This seems to have become the convention
    once Unicode restricted the number of Unicode points to 2^21 - 1
    and so will never need more than 6 digits.)
  * NCOL(NULL) now returns 0 instead of 1, for consistency with
    cbind().
  * The information for the Euro glyph missing from the Adobe .afm
    files for the Courier, Helvetica and Times families has been
    copied from their URW equivalents - this will improve vertical
    centring in the pdf() and postscript() devices.
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.12.0.  The changes are almost entirely cosmetic.
  * The included LAPACK sources have been updated to version 3.12.0
    and some further double-complex routines added.
  * There are new font families for the 2014--5 URW 2.0 fonts (see
    ?pdf) which are included in recent versions of Ghostscript.
    These have font widths for most Greek glyphs and a few others
    which were missing from the original versions (whose font
    families remain available for reproducibility, although
    Ghostscript-based viewers will render using the 2.0 versions).
  * Improve the large-n efficiency of as.matrix(&lt;dist&gt;), thanks an R
    contributors effort, notably by Tim Taylor and Heather Turner,
    see PR#18660.
  * The default and numeric methods of all.equal() get a check.class
    option.
  * zapsmall() gets new optional arguments, function mFUN and min.d,
    for extra flexibility; fulfills a wish in PR#18199.  Also, it is
    now an implicit S4 generic in package methods.
  * The Rd filter for aspell() gains an ignore argument.
  * New generic function sort_by(), primarily useful for the
    data.frame method which can be used to sort rows of a data frame
    by one or more columns.
  * The icence headers for the RPC code in src/extra/xdr have been
    updated to use the GPL-compatible licence published by Oracle
    America in 2010.
  * New function pkg2HTML() in tools to create single-page HTML
    reference manuals for R packages.
  * The byte code evaluator now uses less C stack space for recursive
    calls to byte-compiled functions. It also makes more of an effort
    to avoid allocations for scalar return values.
  * New completion option backtick (disabled by default) allows
    non-syntactic completions to be wrapped in backquotes. This is
    currently only useful for Jupyter notebooks via the IRkernel
    package, and may cause problems for other backends.
  INSTALLATION:
  * The parser has been updated to work with bison 3.8.2, which is
    now used for the pre-generated parsers in gram.c, file.c, and
    gramRd.c. A few parser error messages have changed, which may
    affect code that relies on exact messages.
  INSTALLATION on a UNIX-ALIKE:
  * System valgrind headers are now required to use configure option
  - -with-valgrind-instrumentation with value 1 or 2.
  * configure will warn if it encounters a 32-bit build, as that is
    nowadays almost untested.
  * Environment variable R_SYSTEM_ABI is no longer used and so no
    longer recorded in etc/Renviron (it was not on Windows and was
    only ever used when preparing package tools).
  * If the libdeflate library and headers are available, libdeflate
    rather than libz is used to (de)compress R objects in lazy-load
    databases.  Typically tasks spend up to 5% of their time on such
    operations, although creating lazy-data databases is one of the
    exceptions.
    This can be suppressed if the library is available by the
    configure option --without-libdeflate-compression.
  * configure option --enable-lto=check has not worked reliably since
    2019 and has been removed.
  * The minimum autoconf requirement for a maintainer build has been
    increased to autoconf 2.71.
    It is intended to increase this to 2.72 for R 4.5.0: the
    distributed configure file was generated using 2.72.
  * The minimum version requirement for an external LAPACK has been
    reduced to 3.9.0.
  * No default C++ compiler is set if no C++17 compiler is detected:
    there is no longer an automatic fallback to C++14 or C++11.
    Compilers from the last five years should have sufficient
    support: for others macros CXX and CXXSTD can be set in file
    config.site to provide a fallback if needed.
    The Objective-C++ compiler now by default uses the standard
    selected by R for C++ (currently C++17) rather than the default
    standard for the C++ compiler (which on macOS is still C++98).
  INSTALLATION on macOS:
  * A new configure option --with-newAccelerate makes use of Apple's
    'new' BLAS / LAPACK interfaces in their Accelerate framework.
    Those interfaces are only available in macOS 13.3 or later, and
    building requires SDK 13.3 or later (from the Command Line Tools
    or Xcode 14.3 or later).
    By default the option uses new Accelerate for BLAS calls: to also
    use it for LAPACK use option --with-newAccelerate=lapack.  The
    later interfaces provide LAPACK 3.9.1 rather than 3.2.1: 3.9.1 is
    from 2021-04 and does not include the improved algorithms
    introduced in LAPACK 3.10.0 (including for BLAS calls).
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools44, an update of the Rtools43 toolchain.  It is
    based on GCC 13 and newer versions of MinGW-W64, binutils and
    libraries (targeting 64-bit Intel CPUs).  R-devel can no longer
    be built using Rtools43 without changes.
  * Rtools44 has experimental support for 64-bit ARM (aarch64) CPUs
    _via_ the LLVM 17 toolchain using lld, clang/flang-new and
    libc++.
  UTILITIES:
  * R CMD check notes when S4-style exports are used without
    declaring a strong dependence on package methods.
  * tools::checkRd() (used by R CMD check) detects more problems with
    \Sexpr-based dynamic content, including bad nesting of \Sexprs
    and invalid arguments.
  * tools::checkRd() now reports Rd titles and section names ending
    in a period; this is ignored by R CMD check unless environment
    variable _R_CHECK_RD_CHECKRD_MINLEVEL_ is set to -5 or smaller.
  * R CMD check now notes Rd files without an \alias, as long
    documented in 'Writing R Extensions' §1.3.1.  The check for a
    missing \description has been moved from tools::checkRd() to
    tools::checkRdContents().
  * R CMD check now visits inst/NEWS.Rd and OS-specific man
    subdirectories when checking Rd files.
  * tools::checkDocFiles() and tools::checkRdContents() now also
    check internal Rd files by default, but "specially" (ignoring
    missing documentation of arguments).
  * R CMD Rdiff gets option --useEx.
  * R CMD check now warns on non-portable uses of Fortran KIND such
    as INTEGER(KIND=4) and REAL(KIND=8).
    To see the failing lines set environment variable
    _R_CHECK_FORTRAN_KIND_DETAILS_ to a true value.
  * When checking Rd files, R CMD check now notes some of the "lost
    braces" that tools::checkRd() finds.  Typical problems are Rd
    macros missing the initial backslash (e.g., code{...}), in-text
    set notation (e.g., {1, 2}, where the braces need escaping), and
    \itemize lists with \describe-style entries of the form
    \item{label}{description}.
  * R CMD INSTALL (and hence check) will compile C++ code with
  - DR_NO_REMAP if environment variable _R_CXX_USE_NO_REMAP_ is set
    to a true value.  It is planned that this will in future become
    the default for compiling C++.
  * The new built-in Rd macro \dontdiff{} can be used to mark example
    code whose output should be ignored when comparing check output
    to reference output (tests/Examples/&lt;pkg&gt;-Ex.Rout.save).  The
    \dontdiff tag, like \donttest, is _not_ shown on the rendered
    help page, so provides a clean alternative to ##
    IGNORE_RDIFF_(BEGIN|END) comments.
  * R CMD build when there is no NAMESPACE, now uses the recommended
    exportPattern("^[^.]"), instead of exporting everything.
  * R CMD check now warns about non-ASCII characters in the NAMESPACE
    file (in addition to R files). Such packages are not portable and
    may fail to install on some platforms.
  C-LEVEL FACILITIES:
  * Headers R_ext/Applic.h and R-ext/Linpack.h used to include
    R_ext/BLAS.h although this was undocumented and unneeded by their
    documented entry points.  They no longer do so.
  * New function R_missing(), factored out from do_missing(), used to
    fix PR#18579.
  * SEXP type S4SXP has been renamed to OBJSXP to support
    experimenting with alternative object systems.  The S4SXP value
    can still be used in C code but is now deprecated.  Based on
    contributions from the R Consortium's Object-Oriented Programming
    Working Group.
  * New function pow1p(x,y) for accurate (1+x)^y.
  * mkCharLenCE was incorrectly documented to take a size_t length
    but was implemented with int (and character strings in R are
    limited to 2^31 - 1 bytes).
  DEPRECATED AND DEFUNCT:
  * data() no longer handles zipped data from long-defunct (since R
    2.13.0) --use-zip-data installations.
  * The legacy graphics devices pictex() and xfig() are now
    deprecated.  They do not support recent graphics enhancements and
    their font handling is rudimentary. The intention is to retain
    them for historical interest as long as they remain somewhat
    functional.
  * Support for encoding = "MacRoman" has been removed from the pdf()
    and postscript() devices - this was a legacy encoding supporting
    classic macOS up to 2001 and no longer has universal libiconv
    support.
  * is.R() is deprecated as no other S dialect is known to be in use
    (and this could only identify historical dialects, not future
    ones).
    Further information on calls can be obtained by setting the
    environment variable _R_DEPRECATED_IS_R_ to error which turns the
    deprecation warning into an error and so by default gives a
    traceback.  (This is done by R CMD check --as-cran.)
  * UseMethod() no longer forwards local variables assigned in the
    generic function into method call environments before evaluating
    the method body. This makes method calls behave more like
    standard function calls and makes method code easier to analyze
    correctly.
  * The twelve as.data.frame.&lt;class&gt;() methods which were deprecated
    only via _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ and in R CMD
    check --as-cran are formally deprecated now in favour of calling
    as.data.frame() or as.data.frame.vector().  The deprecation
    "check" now works also when as.data.frame() is S4 generic thanks
    to Ivan Krylov.
  * The default method for the directional comparison operators &lt;, &gt;,
    &lt;=, and &gt;= now signals an error when one of the operands is a
    language object, i.e. a symbol or a call.
  * For terms.formula(), deprecate abb and neg.out arguments
    _formally_ in addition to just documenting it.
  BUG FIXES:
  * The methods package is more robust to not being attached to the
    search path.  More work needs to be done.
  * pairwise.t.test() misbehaved when subgroups had 0 DF for
    variance, even with pool.sd = TRUE.  (PR#18594 by Jack Berry).
  * Probability distribution functions [dpq]&lt;distrib&gt;(x, *), but also
    bessel[IKJY](x, .) now consistently preserve attributes(x) when
    length(x) == 0, e.g., for a 2 x 0 matrix, thanks to Karolis
    Koncevičius' report PR#18509.
  * Group "Summary" computations such as sum(1:3, 4, na.rm = 5, NA,
    7, na.rm = LL) now give an error instead of either 17 or NN for
    LL true or false, as proposed by Ivan Krylov on the R-devel
    mailing list.  (This also means it is now an error to specify
    na.rm more than once.)
  * as.complex(x) now returns complex(real = x, imaginary = 0) for
    _all_ numerical and logical x, notably also for NA or
    NA_integer_.
  * Directories are now omitted by file.copy(, recursive = FALSE) and
    in file.append() (PR#17337).
  * gsub() and sub() are now more robust to integer overflow when
    reporting errors caused by too large input strings (PR#18346).
  * Top-level handlers are now more robust to attempts to remove a
    handler whilst handlers are running (PR#18508).
  * The handling of Alt+F4 in dialogs created on Windows using
    GraphApp has been fixed (PR#13870).
  * density() more consistently computes grid values for the
    FFT-based convolution, following Robert Schlicht's analysis and
    proposal in PR#18337, correcting density values typically by a
    factor of about 0.999.  Argument old.coords = TRUE provides back
    compatibility.
  * palette.colors() gains a name argument that defaults to FALSE
    controlling whether the vector of colours that is returned has
    names (where possible).  PR#18529.
  * tools::xgettext() no longer extracts the (non-translatable) class
    names from warningCondition and errorCondition calls.
  * S3method(&lt;gen&gt;, &lt;class&gt;, &lt;func&gt;) in the NAMESPACE file now works
    (again) when &lt;func&gt; is visible from the namespace, e.g.,
    imported, or in base.
  * getParseData(f) now also works for a function defined in the
    first of several &lt;pkg&gt;/R/*.R source files, thanks to Kirill
    Müller's report and Duncan Murdoch's patch in PR#16756.
  * Rd \Sexpr macros with nested #ifdef conditionals were not
    processed.
  * A non-blocking connection with non-default encoding (such as a
    socket) now correctly returns from readLines() after new data has
    arrived also when its EOF had been reached previously.  Thanks to
    Peter Meilstrup's report on R-devel and Ivan Krylov's report and
    patch proposal in PR#18555.
  * tools::checkRdContents() failed to detect empty argument
    descriptions when they spanned multiple lines, including those
    generated by prompt().  These cases are now noted by R CMD check.
  * Plain-text help no longer outputs spurious colons in the
    arguments list (for multi-line \item labels in the Rd source).
  * kappa() and rcond() work correctly in more cases; kappa(., norm =
    "2") now warns that it computes the 1-norm with (default) exact =
    FALSE; prompted by Mikael Jagan's quite comprehensive PR#18543.
  * Rd skeletons generated by prompt() or promptData() now use a
    dummy title (so R CMD build works).  tools::checkRdContents() has
    been updated to detect such template leftovers, including from
    promptPackage().
  * When S4 method dispatch fails because no method was found, the
    error message now includes the signature argument names; thanks
    to Michael Chirico's proposal on the R-devel list.
  * withAutoprint({ .. }) now preserves srcrefs previously lost,
    thanks to Andrew Simmons' report plus fix in PR#18572.
  * transform.data.frame() no longer adjusts names; in particular,
    untransformed variables are kept as-is, including those with
    syntactically invalid names (PR#17890).
  * The keep.source option for Rd \Sexpr blocks is no longer ignored.
  * The formula methods for t.test() and wilcox.test() now catch when
    paired is passed, addressing PR#14359; use Pair(x1, x2) ~ 1 for a
    paired test.
  * The level reported in the browser prompt was often too large. It
    now shows the number of browser contexts on the stack.
  * For cbind() and rbind(), the optional deparse.level argument is
    now properly passed to methods, thanks to Mikael Jagan's PR#18579
    and comments there.
  * Some error and warning messages for large ('long vector')
    matrix(v, nr, nc) and dim(m) &lt;- d are now correct about sizes,
    using long long formatting, fixing PR#18612 (and more) reported
    by Mikael Jagan.
  * readChar(useBytes = TRUE) now terminates strings even when the
    underlying connection uses extra spaces in the input buffer.
    This fixes problems with extra garbage seen with gzip
    connections, PR#18605.
  * Named capture in PCRE regular expressions now works also with
    more than 127 named groups (PR#18588).
  * Datetime functions are now robust against long jumps when dealing
    with internal time zone changes.  This avoids confusing warnings
    about an invalid time zone, previously triggered by turning
    warnings into errors or handling them via tryCatch (PR#17966,
    PR#17780).
  * Datetime functions now restore even an empty TZ environment
    variable after internal time zone changes (PR#17724).  This makes
    results of datetime functions with this (typically unintentional)
    setting more predictable.
  * drop.terms(*) now drops response as by default, keep.response =
    FALSE, fixing PR#18564 thanks to Mikael Jagan.
  * dummy.coef(.) now also works for lm()-models with character
    categorical predictor variables rather than factor ones, fixing
    PR#18635 reported by Jinsong Zhao.
  * formals(f) &lt;- formals(f) now also works for a function w/o
    arguments and atomic _constant_ body(f).
  * Correct as.function(&lt;invalid list&gt;, .)'s error message.
  * removeSource() is yet more thorough in finding and removing
    "srcref" and the other source references from parsed R language
    chunks, fixing PR#18638 thanks to Andrew Simmons.
  * dgeom() is more accurate now, notably when its result is very
    small, fixing PR#18642 thanks to the proposal of Morten Welinder,
    also improving other instances where C level binom_raw(x, n, ..)
    has x == 0 or x== n.
  * warning() with options(warn = 1) has improved output for
    multi-line messages.
  * axis.Date() and axis.POSIXct() now respect the par("lab") setting
    for the number of pretty() intervals.
  * Comparisons for language objects (which are based on deparsing)
    are now more careful about using accurate deparsed results
    (PR#18676).
  * Plain-text help (Rd2txt) now correctly preserves blank lines
    following single-line \dontrun code.
  * &lt;POSIXlt&gt;[*] no longer sets wrong "balanced" attribute, fixing
    PR#18681 thanks to Mikael Jagan.
  * str(&lt;classed-call&gt;) now deparses the call as expected, fixing
    PR#18684, reported by Dave Slager.
  * In Rd examples, code following the closing brace of a \dontrun,
    \dontshow or \donttest tag on the same line is no longer skipped
    when R CMD check runs the examples.
  * as.data.frame(matrix(*, ncol=0)) now gets valid names() and
    colnames(); reported by Davis Vaughan on the R-devel list.
  * Internal Mathlib function stirlerr(n) is now almost fully
    (52-bit) accurate for all n &gt;= ~5.9 and more accurate also in the
    range 1 -- 5.9.  This entails small ("after 12th decimal")
    changes in density functions, e.g., dgamma() in _some_ regions of
    their support.  The fix was partly prompted by Morten Welinder's
    PR#18640.
  * Numbers like 9876543.2 are now considered non-integer by Mathlib
    internal R_nonint(), amending original fix of PR#15734.
  * Rd comment lines no longer cause broken paragraphs in the
    rendered PDF and plain-text help. In code blocks, pure comment
    lines (starting with %) no longer produce an empty line.
  * xtabs(Freq ~ .) now consistently defaults to na.action = na.pass,
    using na.rm = FALSE (added as an argument) when summing over Freq
    (PR#17770).
  * tools::testInstalledPackage() is no longer silent about failures
    from running examples or tests and its return code no longer
    ignores failures from checking vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1718366400">- CHANGES IN R 4.4.1:
  C-LEVEL FACILITIES:
  * Functions R_atof and R_strtod declared in header R_ext/Utils.h
    are now documented in 'Writing R Extensions' and so formally part
    of the API.
  * The non-API entry points Rf_setSVector, Rf_StringFalse,
    Rf_StringTrue and Rf_isBlankString have been added to those
    reported by R CMD check.
  * The new function Rf_allocLang is now available. This provides an
    alternative to the idiom of calling Rf_allocList followed by
    SET_TYPEOF.
  UTILITIES:
  * R CMD check now reports as warnings what gfortran calls 'Fortran
    2018 deleted features', all of which have long been marked as
    'obsolescent' and some of which were deleted in Fortran 2008 or
    earlier.  Fortran compilers are no longer required to support
    these.
  BUG FIXES:
  * as.numeric(), scan(), type.convert() and other places which use
    the internal C function R_strtod now require a _non-empty_ digit
    sequence in a decimal or binary exponent.  This aligns with the
    C/POSIX standard for strtod and with ?NumericConstants.
  * as.data.frame(m, make.names=NA) now works correctly for a matrix
    m with NA's in row names.
  * The error message from &lt;POSIXlt&gt;[["hour"]] and similar now
    mentions *[[, "hour"]], as wished for in PR#17409 and proposed by
    Michael Chirico.
  * qbinom() and potentially qpois(), qnbinom(), no longer sometimes
    fail accurate inversion (of pbinom(), etc), thanks to Christopher
    Chang's report and patch in PR#18711.
  * The internal help server on Windows can again serve requests sent
    in quick succession, fixing a regression in R 4.4.0.
  * debugcall(&lt;S3Generic&gt;()) now also works when a corresponding
    S4-generic version is in the methods cache (PR#18143).
  * Package tools' toTitleCase(ch0) now returns character(0) when ch0
    is of zero length; fixing PR#18724, reported by David Hugh Jones.
  * R CMD check is no longer broken (without a check result and no
    explanation in 00check.log) for a package which declares an
    invalid VignetteBuilder in DESCRIPTION but has no vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1730376000">- CHANGES IN R 4.4.2:
  C-LEVEL FACILITIES:
  * The S-compatibility macros F77_COM and F77_COMDECL defined in
    header R_ext/RS.h are deprecated and will be removed shortly.  We
    could find no record of their use.
  BUG FIXES:
  * Mathlib function lgammacor(x) no longer warns about underflow to
    zero for large x.
  * Text widths and heights were incorrectly reported by the Quartz
    device if the drawing context didn't exist yet (typically when
    drawing off-screen to a window that is yet to appear, see
    PR#18591).
  * The Quartz device could segfault in cases where paths with spaces
    are used in the new glyph drawing API.  Thanks to Tomek
    Gieorgijewski (PR#18758).
  * On macOS in R CRAN builds, it is again possible to read
    little-endian UTF-16 text with a BOM from a connection using
    encoding="UTF-16".  Users building R from source should avoid
    using the system libiconv in macOS 14.1 and later.
  * methods' internal .requirePackage() now re-enables primitive
    method dispatch when needed; thanks to Ivan Krylov for
    demystifying CRAN package check failures on the R-devel mailing
    list.</changelog>
</package>
<package pkgid="07958fe66b37731b8cebc461b850b46c384c8d5000b17abdd6d5cd67a1342bc8b4d69bab0a79100ad5b728e30397ce0cd8a29bd40b26cf5321623281a439a1b8" name="R-mgcv" arch="i586">
  <version epoch="0" ver="1.9.1" rel="51.0.2.2.sr20241103"/>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1620302400">- To get in sync with d:l:R:autoCRAN the Matrix package's split
  in -devel was reversed.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339200">- improved spec file according to comments of dimstar in
  https://build.opensuse.org/request/show/892685</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339201">- CHANGES IN R 4.1.0:
  FUTURE DIRECTIONS:
  * It is planned that the 4.1.x series will be the last to support
    32-bit Windows, with production of binary packages for that
    series continuing until early 2023.
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Data set esoph in package datasets now provides the correct
    numbers of controls; previously it had the numbers of cases added
    to these.  (Reported by Alexander Fowler in PR#17964.)
  NEW FEATURES:
  * www.omegahat.net is no longer one of the repositories known by
    default to setRepositories().  (Nowadays it only provides source
    packages and is often unavailable.)
  * Function package_dependencies() (in package tools) can now use
    different dependency types for direct and recursive dependencies.
  * The checking of the size of tarball in R CMD check --as-cran
    &lt;pkg&gt; may be tweaked via the new environment variable
    _R_CHECK_CRAN_INCOMING_TARBALL_THRESHOLD_, as suggested in
    PR#17777 by Jan Gorecki.
  * Using c() to combine a factor with other factors now gives a
    factor, an ordered factor when combining ordered factors with
    identical levels.
  * apply() gains a simplify argument to allow disabling of
    simplification of results.
  * The format() method for class "ftable" gets a new option justify.
    (Suggested by Thomas Soeiro.)
  * New ...names() utility.  (Proposed by Neal Fultz in PR#17705.)
  * type.convert() now warns when its as.is argument is not
    specified, as the help file always said it _should_.  In that
    case, the default is changed to TRUE in line with its change in
    read.table() (related to stringsAsFactor) in R 4.0.0.
  * When printing list arrays, classed objects are now shown _via_
    their format() value if this is a short enough character string,
    or by giving the first elements of their class vector and their
    length.
  * capabilities() gets new entry "Rprof" which is TRUE when R has
    been configured with the equivalent of --enable-R-profiling (as
    it is by default).  (Related to Michael Orlitzky's report
    PR#17836.)
  * str(xS4) now also shows extraneous attributes of an S4 object
    xS4.
  * Rudimentary support for vi-style tags in rtags() and R CMD rtags
    has been added.  (Based on a patch from Neal Fultz in PR#17214.)
  * checkRdContents() is now exported from tools; it and also
    checkDocFiles() have a new option chkInternal allowing to check
    Rd files marked with keyword "internal" as well.  The latter can
    be activated for R CMD check via environment variable
    _R_CHECK_RD_INTERNAL_TOO_.
  * New functions numToBits() and numToInts() extend the raw
    conversion utilities to (double precision) numeric.
  * Functions URLencode() and URLdecode() in package utils now work
    on vectors of URIs.  (Based on patch from Bob Rudis submitted
    with PR#17873.)
  * path.expand() can expand ~user on most Unix-alikes even when
    readline is not in use.  It tries harder to expand ~, for example
    should environment variable HOME be unset.
  * For HTML help (both dynamic and static), Rd file links to help
    pages in external packages are now treated as references to
    topics rather than file names, and fall back to a file link only
    if the topic is not found in the target package. The earlier rule
    which prioritized file names over topics can be restored by
    setting the environment variable _R_HELP_LINKS_TO_TOPICS_ to a
    false value.
  * c() now removes NULL arguments before dispatching to methods,
    thus simplifying the implementation of c() methods, _but_ for
    back compatibility keeps NULL when it is the first argument.
    (From a report and patch proposal by Lionel Henry in PR#17900.)
  * Vectorize()'s result function's environment no longer keeps
    unneeded objects.
  * Function ...elt() now propagates visibility consistently with
    ..n.  (Thanks to Lionel Henry's PR#17905.)
  * capture.output() no longer uses non-standard evaluation to
    evaluate its arguments.  This makes evaluation of functions like
    parent.frame() more consistent.  (Thanks to Lionel Henry's
    PR#17907.)
  * packBits(bits, type="double") now works as inverse of
    numToBits().  (Thanks to Bill Dunlap's proposal in PR#17914.)
  * curlGetHeaders() has two new arguments, timeout to specify the
    timeout for that call (overriding getOption("timeout")) and TLS
    to specify the minimum TLS protocol version to be used for
    https:// URIs (_inter alia_ providing a means to check for sites
    using deprecated TLS versions 1.0 and 1.1).
  * For nls(), an optional constant scaleOffset may be added to the
    denominator of the relative offset convergence test for cases
    where the fit of a model is expected to be exact, thanks to a
    proposal by John Nash.  nls(*, trace=TRUE) now also shows the
    convergence criterion.
  * Numeric differentiation _via_ numericDeriv() gets new optional
    arguments eps and central, the latter for taking central divided
    differences.  The latter can be activated for nls() via
    nls.control(nDcentral = TRUE).
  * nls() now passes the trace and control arguments to getInitial(),
    notably for all self-starting models, so these can also be fit in
    zero-noise situations via a scaleOffset.  For this reason, the
    initial function of a selfStart model must now have ... in its
    argument list.
  * bquote(splice = TRUE) can now splice expression vectors with
    attributes: this makes it possible to splice the result of
    parse(keep.source = TRUE).  (Report and patch provided by Lionel
    Henry in PR#17869.)
  * textConnection() gets an optional name argument.
  * get(), exists(), and get0() now signal an error if the first
    argument has length greater than 1.  Previously additional
    elements were silently ignored.  (Suggested by Antoine Fabri on
    R-devel.)
  * R now provides a shorthand notation for creating functions, e.g.
    \(x) x + 1 is parsed as function(x) x + 1.
  * R now provides a simple native forward pipe syntax |&gt;.  The
    simple form of the forward pipe inserts the left-hand side as the
    first argument in the right-hand side call.  The pipe
    implementation as a syntax transformation was motivated by
    suggestions from Jim Hester and Lionel Henry.
  * all.equal(f, g) for functions now by default also compares their
    environment(.)s, notably via new all.equal method for class
    function.  Comparison of nls() fits, e.g., may now need
    all.equal(m1, m2, check.environment = FALSE).
  * .libPaths() gets a new option include.site, allowing to _not_
    include the site library.  (Thanks to Dario Strbenac's suggestion
    and Gabe Becker's PR#18016.)
  * Lithuanian translations are now available.  (Thanks to Rimantas
    Zakauskas.)
  * names() now works for DOTSXP objects.  On the other hand, in
    R-lang, the R language manual, we now warn against relying on the
    structure or even existence of such dot-dot-dot objects.
  * all.equal() no longer gives an error on DOTSXP objects.
  * capabilities("cairo") now applies only to the file-based devices
    as it is now possible (if very unusual) to build R with Cairo
    support for those but not for X11().
  * There is optional support for tracing the progress of
    loadNamespace() - see its help.
  * (Not Windows.)  l10n_info() reports an additional element, the
    name of the encoding as reported by the OS (which may differ from
    the encoding part (if any) of the result from
    Sys.getlocale("LC_CTYPE").
  * New function gregexec() which generalizes regexec() to find _all_
    disjoint matches and well as all substrings corresponding to
    parenthesized subexpressions of the given regular expression.
    (Contributed by Brodie Gaslam.)
  * New function charClass() in package utils to query the
    wide-character classification functions in use (such as
    iswprint).
  * The names of quantile()'s result no longer depend on the global
    getOption("digits"), but quantile() gets a new optional argument
    digits = 7 instead.
  * grep(), sub(), regexp and variants work considerably faster for
    long factors with few levels.  (Thanks to Michael Chirico's
    PR#18063.)
  * Provide grouping of x11() graphics windows within a window
    manager such as Gnome or Unity; thanks to a patch by Ivan Krylov
    posted to R-devel.
  * The split() method for class data.frame now allows the f argument
    to be specified as a formula.
  * sprintf now warns on arguments unused by the format string.
  * New palettes "Rocket" and "Mako" for hcl.colors() (approximating
    palettes of the same name from the 'viridisLite' package).
    Contributed by Achim Zeileis.
  * The base environment and its namespace are now locked (so one can
    no longer add bindings to these or remove from these).
  * Rterm handling of multi-byte characters has been improved,
    allowing use of such characters when supported by the current
    locale.
  * Rterm now accepts ALT+ +xxxxxxxx sequences to enter Unicode
    characters as hex digits.
  * Environment variable LC_ALL on Windows now takes precedence over
    LC_CTYPE and variables for other supported categories, matching
    the POSIX behaviour.
  * duplicated() and anyDuplicated() are now optimized for integer
    and real vectors that are known to be sorted via the ALTREP
    framework. Contributed by Gabriel Becker via PR#17993.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 14
    and so packages that provide graphics devices should be
    reinstalled.
  * Graphics devices should now specify deviceVersion to indicate
    what version of the graphics engine they support.
  * Graphics devices can now specify deviceClip.  If TRUE, the
    graphics engine will never perform any clipping of output itself.
    The clipping that the graphics engine does perform (for both
    canClip = TRUE and canClip = FALSE) has been improved to avoid
    producing unnecessary artifacts in clipped output.
  * The grid package now allows gpar(fill) to be a linearGradient(),
    a radialGradient(), or a pattern().  The viewport(clip) can now
    also be a grob, which defines a clipping path, and there is a new
    viewport(mask) that can also be a grob, which defines a mask.
    These new features are only supported so far on the Cairo-based
    graphics devices and on the pdf() device.
  * (Not Windows.)  A warning is given when a Cairo-based type is
    specified for a png(), jpeg(), tiff() or bmp() device but Cairo
    is unsupported (so type = "Xlib" is tried instead).
  * grSoftVersion() now reports the versions of FreeType and
    FontConfig if they are used directly (not _via_ Pango), as is
    most commonly done on macOS.
  C-LEVEL FACILITIES:
  * The _standalone_ libRmath math library and R's C API now provide
    log1pexp() again as documented, and gain log1mexp().
  INSTALLATION on a UNIX-ALIKE:
  * configure checks for a program pkgconf if program pkg-config is
    not found.  These are now only looked for on the path (like
    almost all other programs) so if needed specify a full path to
    the command in PKG_CONFIG, for example in file config.site.
  * C99 function iswblank is required - it was last seen missing ca
    2003 so the workaround has been removed.
  * There are new configure options --with-internal-iswxxxxx,
  - -with-internal-towlower and --with-internal-wcwidth which allows
    the system functions for wide-character classification,
    case-switching and width (wcwidth and wcswidth) to be replaced by
    internal ones.  The first has long been used on macOS, AIX (and
    Windows) but this enables it to be unselected there and selected
    for other platforms (it is the new default on Solaris).  The
    second is new in this version of R and is selected by default on
    macOS and Solaris.  The third has long been the default and
    remains so as it contains customizations for East Asian
    languages.
    System versions of these functions are often minimally
    implemented (sometimes only for ASCII characters) and may not
    cover the full range of Unicode points: for example Solaris (and
    Windows) only cover the Basic Multilingual Plane.
  * Cairo installations without X11 are more likely to be detected by
    configure, when the file-based Cairo graphics devices will be
    available but not X11(type = "cairo").
  * There is a new configure option --with-static-cairo which is the
    default on macOS.  This should be used when only static cairo
    (and where relevant, Pango) libraries are available.
  * Cairo-based graphics devices on platforms without Pango but with
    FreeType/FontConfig will make use of the latter for font
    selection.
  LINK-TIME OPTIMIZATION on a UNIX-ALIKE:
  * Configuring with flag --enable-lto=R now also uses LTO when
    installing the recommended packages.
  * R CMD INSTALL and R CMD SHLIB have a new flag --use-LTO to use
    LTO when compiling code, for use with R configured with
  - -enable-lto=R.  For R configured with --enable-lto, they have
    the new flag --no-use-LTO.
    Packages can opt in or out of LTO compilation _via_ a UseLTO
    field in the DESCRIPTION file.  (As usual this can be overridden
    by the command-line flags.)
  BUILDING R on Windows:
  * for GCC &gt;= 8, FC_LEN_T is defined in config.h and hence character
    lengths are passed from C to Fortran in _inter alia_ BLAS and
    LAPACK calls.
  * There is a new text file src/gnuwin32/README.compilation, which
    outlines how C/Fortran code compilation is organized and
    documents new features:
  * R can be built with Link-Time Optimization with a suitable
    compiler - doing so with GCC 9.2 showed several
    inconsistencies which have been corrected.
  * There is support for cross-compiling the C and Fortran code
    in R and standard packages on suitable (Linux) platforms.
    This is mainly intended to allow developers to test later
    versions of compilers - for example using GCC 9.2 or 10.x has
    detected issues that GCC 8.3 in Rtools40 does not.
  * There is experimental support for cross-building R packages
    with C, C++ and/or Fortran code.
  * The R installer can now be optionally built to support a single
    architecture (only 64-bit or only 32-bit).
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++14 where
    available (which it is on all currently checked platforms): if
    not (as before) C++11 is used if available otherwise C++ is not
    supported.
    Packages which specify C++11 will still be installed using C++11.
    C++14 compilers may give deprecation warnings, most often for
    std::random_shuffle (deprecated in C++14 and removed in C++17).
    Either specify C++11 (see 'Writing R Extensions') or modernize
    the code and if needed specify C++14.  The latter has been
    supported since R 3.4.0 so the package's DESCRIPTION would need
    to include something like
    Depends: R (&gt;= 3.4)
  PACKAGE INSTALLATION on Windows:
  * R CMD INSTALL and R CMD SHLIB make use of their flag --use-LTO
    when the LTO_OPT make macro is set in file etc/${R_ARCH}/Makeconf
    or in a personal/site Makevars file.  (For details see 'Writing R
    Extensions' SS4.5.)
    This provides a valuable check on code consistency.  It does work
    with GCC 8.3 as in Rtools40, but that does not detect everything
    the CRAN checks with current GCC do.
  PACKAGE INSTALLATION on macOS:
  * The default personal library directory on builds with
  - -enable-aqua (including CRAN builds) now differs by CPU type,
    one of
    ~/Library/R/x86_64/x.y/library
    ~/Library/R/arm64/x.y/library
    This uses the CPU type R (and hence the packages) were built for,
    so when a x86_64 build of R is run under Rosetta emulation on an
    arm64 Mac, the first is used.
  UTILITIES:
  * R CMD check can now scan package functions for bogus return
    statements, which were possibly intended as return() calls (wish
    of PR#17180, patch by Sebastian Meyer). This check can be
    activated via the new environment variable
    _R_CHECK_BOGUS_RETURN_, true for --as-cran.
  * R CMD build omits tarballs and binaries of previous builds from
    the top-level package directory.  (PR#17828, patch by Sebastian
    Meyer.)
  * R CMD check now runs sanity checks on the use of LazyData, for
    example that a data directory is present and that
    LazyDataCompression is not specified without LazyData and has a
    documented value.  For packages with large LazyData databases
    without specifying LazyDataCompression, there is a reference to
    the code given in 'Writing R Extensions' SS1.1.6 to test the
    choice of compression (as in all the CRAN packages tested a
    non-default method was preferred).
  * R CMD build removes LazyData and LazyDataCompression fields from
    the DESCRIPTION file of packages without a data directory.
  ENCODING-RELATED CHANGES:
  * The parser now treats \Unnnnnnnn escapes larger than the upper
    limit for Unicode points (\U10FFFF) as an error as they cannot be
    represented by valid UTF-8.
    Where such escapes are used for outputting non-printable
    (including unassigned) characters, 6 hex digits are used (rather
    than 8 with leading zeros).  For clarity, braces are used, for
    example \U{0effff}.
  * The parser now looks for non-ASCII spaces on Solaris (as
    previously on most other OSes).
  * There are warnings (including from the parser) on the use of
    unpaired surrogate Unicode points such as \uD834.  (These cannot
    be converted to valid UTF-8.)
  * Functions nchar(), tolower(), toupper() and chartr() and those
    using regular expressions have more support for inputs with a
    marked Latin-1 encoding.
  * The character-classification functions used (by default) to
    replace the system iswxxxxx functions on Windows, macOS and AIX
    have been updated to Unicode 13.0.0.
    The character-width tables have been updated to include new
    assignments in Unicode 13.0.0.
  * The code for evaluating default (extended) regular expressions
    now uses the same character-classification functions as the rest
    of R (previously they differed on Windows, macOS and AIX).
  * There is a build-time option to replace the system's
    wide-character wctrans C function by tables shipped with R: use
    configure option --with-internal-towlower or (on Windows)
  - DUSE_RI18N_CASE in CFLAGS when building R.  This may be needed
    to allow tolower() and toupper() to work with Unicode characters
    beyond the Basic Multilingual Plane where not supported by system
    functions (e.g. on Solaris where it is the new default).
  * R is more careful when truncating UTF-8 and other multi-byte
    strings that are too long to be printed, passed to the system or
    libraries or placed into an internal buffer.  Truncation will no
    longer produce incomplete multibyte characters.
  DEPRECATED AND DEFUNCT:
  * Function plclust() from the package stats and
    package.dependencies(), pkgDepends(), getDepList(),
    installFoundDepends(), and vignetteDepends() from package tools
    are defunct.
  * Defunct functions checkNEWS() and readNEWS() from package tools
    and CRAN.packages() from utils have been removed.
  * R CMD config CXXCPP is defunct (it was deprecated in R 3.6.2).
  * parallel::detectCores() drops support for Irix (retired in 2013).
  * The LINPACK argument to chol.default(), chol2inv(),
    solve.default() and svd() has been defunct since R 3.1.0.  It was
    silently ignored up to R 4.0.3 but now gives an error.
  * Subsetting/indexing, such as ddd[*] or ddd$x on a DOTSXP
    (dot-dot-dot) object ddd has been disabled; it worked by accident
    only and was undocumented.
  BUG FIXES:
  * Many more C-level allocations (mainly by malloc and strdup) are
    checked for success with suitable alternative actions.
  * Bug fix for replayPlot(); this was turning off graphics engine
    display list recording if a recorded plot was replayed in the
    same session.  The impact of the bug became visible if resize the
    device after replay OR if attempted another savePlot() after
    replay (empty display list means empty screen on resize or empty
    saved plot).
  * R CMD check etc now warn when a package exports non-existing S4
    classes or methods, also in case of no "methods" presence.
    (Reported by Alex Bertram; reproducible example and patch by
    Sebastian Meyer in PR#16662.)
  * boxplot() now also accepts calls for labels such as ylab, the
    same as plot().  (Reported by Marius Hofert.)
  * The help page for xtabs() now correctly states that addNA is
    setting na.action = na.pass among others.  (Reported as PR#17770
    by Thomas Soeiro.)
  * The R CMD check &lt;pkg&gt; gives a longer and more comprehensible
    message when DESCRIPTION misses dependencies, e.g., in Imports:.
    (Thanks to the contributors of PR#17179.)
  * update.default() now calls the generic update() on the formula to
    work correctly for models with extended formulas.  (As reported
    and suggested by Neal Fultz in PR#17865.)
  * The horizontal position of leaves in a dendrogram is now correct
    also with center = FALSE.  (PR#14938, patch from Sebastian
    Meyer.)
  * all.equal.POSIXt() no longer warns about and subsequently ignores
    inconsistent "tzone" attributes, but describes the difference in
    its return value (PR#17277).  This check can be disabled _via_
    the new argument check.tzone = FALSE as suggested by Sebastian
    Meyer.
  * as.POSIXct() now populates the "tzone" attribute from its tz
    argument when x is a logical vector consisting entirely of NA
    values.
  * x[[2^31]] &lt;- v now works.  (Thanks to the report and patch by
    Suharto Anggono in PR#17330.)
  * In log-scale graphics, axis() ticks and label positions are now
    computed more carefully and symmetrically in their range,
    typically providing _more_ ticks, fulfilling wishes in PR#17936.
    The change really corresponds to an improved axisTicks() (package
    grDevices), potentially influencing grid and lattice, for
    example.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now correct to at
    least five digits where it was catastrophically wrong,
    previously.
  * sum(df) and similar "Summary"- and "Math"-group member functions
    now work for data frames df with logical columns, notably also of
    zero rows.  (Reported to R-devel by Martin "b706".)
  * unsplit() had trouble with tibbles due to unsound use of rep(NA,
    len)-indexing, which should use NA_integer_ (Reported to R-devel
    by Mario Annau.)
  * pnorm(x, log.p = TRUE) underflows to -Inf slightly later.
  * show(&lt;hidden S4 generic&gt;) prints better and without quotes for
    non-hidden S4 generics.
  * read.table() and relatives treated an "NA" column name as missing
    when check.names = FALSE PR#18007.
  * Parsing strings containing UTF-16 surrogate pairs such as
    "\uD834\uDD1E" works better on some (uncommon) platforms.
    sprintf("%X", utf8ToInt("\uD834\uDD1E")) should now give "1D11E"
    on all platforms.
  * identical(x,y) is no longer true for differing DOTSXP objects,
    fixing PR#18032.
  * str() now works correctly for DOTSXP and related exotics, even
    when these are doomed.
    Additionally, it no longer fails for lists with a class and
    "irregular" method definitions such that e.g. lapply(*) will
    necessarily fail, as currently for different igraph objects.
  * Too long lines in environment files (e.g. Renviron) no longer
    crash R. This limit has been increased to 100,000 bytes.
    (PR#18001.)
  * There is a further workaround for FreeType giving incorrect
    italic font faces with cairo-based graphics devices on macOS.
  * add_datalist(*, force = TRUE) (from package tools) now actually
    updates an existing data/datalist file for new content.  (Thanks
    to a report and patch by Sebastian Meyer in PR#18048.)
  * cut.Date() and cut.POSIXt() could produce an empty last interval
    for breaks = "months" or breaks = "years".  (Reported as PR#18053
    by Christopher Carbone.)
  * Detection of the encoding of 'regular' macOS locales such as
    en_US (which is UTF-8) had been broken by a macOS change:
    fortunately these are now rarely used with en_US.UTF-8 being
    preferred.
  * sub() and gsub(pattern, repl, x, *) now keep attributes of x such
    as names() also when pattern is NA (PR#18079).
  * Time differences ("difftime" objects) get a replacement and a
    rep() method to keep "units" consistent.  (Thanks to a report and
    patch by Nicolas Bennett in PR#18066.)
  * The \RdOpts macro, setting defaults for \Sexpr options in an Rd
    file, had been ineffective since R 2.12.0: it now works again.
    (Thanks to a report and patch by Sebastian Meyer in PR#18073.)
  * mclapply and pvec no longer accidentally terminate parallel
    processes started before by mcparallel or related calls in
    package parallel (PR#18078).
  * grep and other functions for evaluating (extended) regular
    expressions handle in Unicode also strings not explicitly flagged
    UTF-8, but flagged native when running in UTF-8 locale.
  * Fixed a crash in fifo implementation on Windows (PR#18031).
  * Binary mode in fifo on Windows is now properly detected from
    argument open (PR#15600, PR#18031).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1622808000">- The line %{__install} -m 755 -d %{_infodir}
  no longer works in TW or Factory.
  But without that line it works everywhere. So this instruction
  was commented out of the spec file.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1628596800">- CHANGES IN R 4.1.1:
  NEW FEATURES:
  * require(pkg, quietly = TRUE) is quieter and in particular does
    not warn if the package is not found.
  DEPRECATED AND DEFUNCT:
  * Use of ftp:// URIs should be regarded as deprecated, with
    on-going support confined to method = "libcurl" and not routinely
    tested.  (Nowadays no major browser supports them.)
  * The non-default method = "internal" is deprecated for http:// and
    ftp:// URIs for both download.file and url.
  * On Windows, method = "wininet" is deprecated for http://,
    https:// and ftp:// URIs for both download.file and url.  (A
    warning is only given for ftp://.)
    For ftp:// URIs the default method is now "libcurl" if available
    (which it is on CRAN builds).
    method = "wininet" remains the default for http:// and https://
    URIs but if libcurl is available, using method = "libcurl" is
    preferred.
  INSTALLATION:
  * make check now works also without a LaTeX installation.  (Thanks
    to Sebastian Meyer's PR#18103.)
  BUG FIXES:
  * make check-devel works again in an R build configured with
  - -without-recommended-packages.
  * qnbinom(p, size, mu) for large size/mu is correct now in a range
    of cases (PR#18095); similarly for the (size, prob)
    parametrization of the negative binomial.  Also qpois() and
    qbinom() are better and or faster for extreme cases.  The
    underlying C code has been modularized and is common to all four
    cases of discrete distributions.
  * gap.axis is now part of the axis() arguments which are passed
    from bxp(), and hence boxplot().  (Thanks to Martin Smith's
    report and suggestions in PR#18109.)
  * .First and .Last can again be set from the site profile.
  * seq.int(from, to, *) and seq.default(..) now work better in large
    range cases where from-to is infinite where the two boundaries
    are finite.
  * all.equal(x,y) now returns TRUE correctly also when several
    entries of abs(x) and abs(y) are close to .Machine$double.xmax,
    the largest finite numeric.
  * model.frame() now clears the object bit when removing the class
    attribute of a value via na.action (PR#18100).
  * charClass() now works with multi-character strings on Windows
    (PR#18104, fixed by Bill Dunlap).
  * encodeString() on Solaris now works again in Latin-1 encoding on
    characters represented differently in UTF-8.  Support for
    surrogate pairs on Solaris has been improved.
  * file.show() on Windows now works with non-ASCII path names
    representable in the current native encoding (PR#18132).
  * Embedded R on Windows can now find R home directory via the
    registry even when installed only for the current user
    (PR#18135).
  * pretty(x) with finite x now returns finite values also in the
    case where the extreme x values are close in size to the maximal
    representable number .Machine$double.xmax.
    Also, it's been tweaked for very small ranges and when a boundary
    is close (or equal) to zero; e.g., pretty(c(0,1e-317)) no longer
    has negative numbers, currently still warning about a very small
    range, and pretty(2^-(1024 - 2^-1/(c(24,10)))) is more accurate.
  * The error message for not finding vignette files when weaving has
    correct file sizes now. (Thanks to Sebastian Meyer's PR#18154.)
  * dnbinom(20, &lt;large&gt;, 1) now correctly gives 0, and similar cases
    are more accurate with underflow precaution.  (Reported by Francisco Vera Alcivar in PR#18072.)</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635163200">- repaired https://bugzilla.suse.com/show_bug.cgi?id=1191380
  (rpmacros now go to rpmmacrodir)
- minor clean-ups in spec file</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635768000">- CHANGES IN R 4.1.2:
  C-LEVEL FACILITIES:
  * The workaround in headers R.h and Rmath.h (using namespace std;)
    for the Oracle Developer Studio compiler is no longer needed now
    C++11 is required so has been removed.  A couple more usages of
    log() (which should have been std::log()) with an int argument
    are reported on Solaris.
  * The undocumented limit of 4095 bytes on messages from the
    S-compatibility macros PROBLEM and MESSAGE is now documented and
    longer messages will be silently truncated rather than
    potentially causing segfaults.
  * If the R_NO_SEGV_HANDLER environment variable is non-empty, the
    signal handler for SEGV/ILL/BUS signals (which offers recovery
    user interface) is not set. This allows more reliable debugging
    of crashes that involve the console.
  DEPRECATED AND DEFUNCT:
  * The legacy S-compatibility macros PROBLEM, MESSAGE, ERROR, WARN,
    WARNING, RECOVER, ... are deprecated and will be hidden in R
    4.2.0. R's native interface of Rf_error and Rf_warning has long
    been preferred.
  BUG FIXES:
  * .mapply(F, dots, .) no longer segfaults when dots is not a list
    and uses match.fun(F) as always documented; reported by Andrew
    Simmons in PR#18164.
  * hist(&lt;Date&gt;, ...) and hist(&lt;POSIXt&gt;, ...)  no longer pass
    arguments for rect() (such as col and density) to axis().
    (Thanks to Sebastian Meyer's PR#18171.)
  * \Sexpr{ch} now preserves Encoding(ch). (Thanks to report and
    patch by Jeroen Ooms in PR#18152.)
  * Setting the RNG to "Marsaglia-Multicarry" e.g., by RNGkind(), now
    warns in more places, thanks to Andr'e Gillibert's report and
    patch in PR#18168.
  * gray(numeric(), alpha=1/2) no longer segfaults, fixing PR#18183,
    reported by Till Krenz.
  * Fixed dnbinom(x, size=&lt;very_small&gt;, .., log=TRUE) regression,
    reported by Martin Morgan.
  * as.Date.POSIXlt(x) now keeps names(x), thanks to Davis Vaughan's
    report and patch in PR#18188.
  * model.response() now strips an "AsIs" class typically, thanks to
    Duncan Murdoch's report and other discussants in PR#18190.
  * try() is considerably faster in case of an error and long call,
    as e.g., from some do.call().  Thanks to Alexander Kaever's
    suggestion posted to R-devel.
  * qqline(y = &lt;object&gt;) such as y=I(.), now works, see also
    PR#18190.
  * Non-integer mgp par() settings are now handled correctly in
    axis() and mtext(), thanks to Mikael Jagan and Duncan Murdoch's
    report and suggestion in PR#18194.
  * formatC(x) returns length zero character() now, rather than ""
    when x is of length zero, as documented, thanks to Davis
    Vaughan's post to R-devel.
  * removeSource(fn) now retains (other) attributes(fn).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1647000000">- CHANGES IN R 4.1.3:
  NEW FEATURES:
  * The default version of Bioconductor has been changed to 3.14.
    (This is used by setRepositories and the menus in GUIs.)
  UTILITIES:
  * R CMD check --as-cran has a workaround for a bug in versions of
    file up to at least 5.41 which mis-identify DBF files last
    changed in 2022 as executables.
  C-LEVEL FACILITIES:
  * The legacy S-compatibility macros SINGLE_* in R_ext/Constants.h
    (included by R.h) are deprecated and will be removed in R 4.2.0.
  BUG FIXES:
  * Initialization of self-starting nls() models with initialization
    functions following the pre-R-4.1.0 API (without the ...
    argument) works again for now, with a deprecation warning.
  * Fixed quoting of ~autodetect~ in Java setting defaults to avoid
    inadvertent user lookup due to leading ~, reported in PR#18231 by
    Harold Gutch.
  * substr(., start, stop) &lt;- v now treats _negative_ stop values
    correctly.  Reported with a patch in PR#18228 by Brodie Gaslam.
  * Subscripting an array x without dimnames by a
    length(dim(x))-column character matrix gave "random" non-sense,
    now an error; reported in PR#18244 by Mikael Jagan.
  * ...names() now matches names(list(...)) closely, fixing PR#18247.
  * all.equal(*, scale = s) now works as intended when length(s) &gt; 1,
    partly thanks to Michael Chirico's PR#18272.
  * print(x) for long vectors x now also works for named atomic
    vectors or lists and prints the correct number when reaching the
    getOption("max.print") limit; partly thanks to a report and
    proposal by Hugh Parsonage to the R-devel list.
  * all.equal(&lt;selfStart&gt;, *) no longer signals a deprecation
    warning.
  * reformulate(*, response=r) gives a helpful error message now when
    length(r) &gt; 1, thanks to Bill Dunlap's PR#18281.
  * Modifying globalCallingHandlers inside withCallingHandlers() now
    works or fails correctly, thanks to Henrik Bengtsson's PR#18257.
  * hist(&lt;Date&gt;, breaks = "days") and hist(&lt;POSIXt&gt;, breaks = "secs")
    no longer fail for inputs of length 1.
  * qbeta(.001, .9, .009) and similar cases now converge correctly
    thanks to Ben Bolker's report in PR#17746.
  * window(x, start, end) no longer wrongly signals "'start' cannot
    be after 'end'", fixing PR#17527 and PR#18291.
  * data() now checks that its (rarely used) list argument is a
    character vector - a couple of packages passed other types and
    gave incorrect results.
  * which() now checks its arr.ind argument is TRUE rather coercing
    to logical and taking the first element - which gave incorrect
    results in package code.
  * model.weights() and model.offset() more carefully extract their
    model components, thanks to Ben Bolker and Tim Taylor's R-devel
    post.
  * list.files(recursive = TRUE) now shows all broken symlinks
    (previously, some of them may have been omitted, PR#18296).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1650628800">- CHANGES IN R 4.2.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * The formula method of aggregate() now matches the generic in
    naming its first argument x (resolving PR#18299 by Thomas
    Soeiro).
    This means that calling aggregate() with a formula as a named
    first argument requires name formula in earlier versions of R and
    name x now, so portable code should not name the argument (code
    in many packages did).
  * Calling &amp;&amp; or || with either argument of length greater than one
    now gives a warning (which it is intended will become an error).
  * Calling if() or while() with a condition of length greater than
    one gives an error rather than a warning.  Consequently,
    environment variable _R_CHECK_LENGTH_1_CONDITION_ no longer has
    any effect.
  * Windows users should consult the WINDOWS section below for some
    profound changes including
  * Support for 32-bit builds has been dropped.
  * UTF-8 locales are used where available.
  * The default locations for the R installation and personal
    library folder have been changed.
    Thanks to Tomas Kalibera for months of work on the Windows port
    for this release.
  NEW FEATURES:
  * matrix(x, n, m) now warns in more cases where length(x) differs
    from n * m, as suggested by Abby Spurdle and Wolfgang Huber in
    Feb 2021 on the R-devel mailing list.
    This warning can be turned into an error by setting environment
    variable _R_CHECK_MATRIX_DATA_ to TRUE: R CMD check --as-cran
    does so unless it is already set.
  * Function file_test() in package utils gains tests for symlinks,
    readability and writability.
  * capabilities("libxml") is now false.
    The description of capabilities("http/ftp") now reflects that it
    refers to the default method, no longer the internal one.
  * simplify2array() gains an except argument for controlling the
    exceptions used by sapply().
  * Environment variables R_LIBS_USER and R_LIBS_SITE are both now
    set to the R system default if unset or empty, and can be set to
    NULL to indicate an empty list of user or site library
    directories.
  * The warning for axis()(-like) calls in cases of relatively small
    ranges (typically in log-scale situations) is slightly improved
    _and_ suppressed from explicit calls to .axisPars() as has always
    been the intention.
  * The contrasts setter function `contrasts&lt;-` gains an explicit
    default how.many = NULL rather than just using missing(how.many).
  * grid.pretty() gains a new optional argument n = 5.
  * There is a new function .pretty() with option bounds as a
    technical-utility version of pretty().  It and pretty() gain a
    new argument f.min with a better than back-compatible default.
  * Function grDevices::axisTicks() and related functions such as
    graphics::axis() work better, notably for the log scale; partly
    because of the pretty() improvements, but also because care is
    taken e.g., when ylim is finite but diff(ylim) is infinite.
  * nclass.FD() gains a digits option.
  * The R Mathlib internal C function bd0() (called indirectly from a
    dozen probability density and distribution functions such as
    dpois(), dbinom(), dgamma(), pgamma() _etc_) has been
    complemented by a more sophisticated and (mostly) more accurate C
    function ebd0(), currently called only by internal dpois_raw()
    improving accuracy for R level dpois() and potentially others
    calling it such as dnbinom(), dgamma() or pgamma().  (Thanks to
    Morten Welinder's PR#15628.)
  * write.ftable() gains sep = " " argument as suggested by Thomas
    Soeiro.
  * The names of the locale categories supported by R's
    Sys.getlocale() and Sys.setlocale() are now provided by variable
    .LC.categories in the base namespace.
  * The Date and POSIXt methods for hist() and the histogram method
    for plot() now also use the new default col = "lightgray" in
    consistency with the corresponding change to hist()'s default for
    R 4.0.0.
  * hist.default() gains new fuzz argument, and the histogram plot
    method no longer uses fractional axis ticks when displaying
    counts ("Frequency").
  * mapply() and hence Map() now also obey the "max-or-0-if-any"
    recycling rule, such that, e.g., Map(`+`, 1:3, 1[0]) is valid
    now.
  * as.character(&lt;obj&gt;) for "hexmode" or "octmode" objects now
    fulfils the important basic rule as.character(x)[j] ===
    as.character(x[j]).
  * The set utility functions, notably intersect() have been tweaked
    to be more consistent and symmetric in their two set arguments,
    also preserving a common mode.
  * substr(ch, start,end) &lt;- new now e.g., preserves names(ch); ditto
    for substring(), thanks to a patch from Brodie Gaslam.
  * plot(&lt;lm&gt;) gains a extend.ylim.f argument, in partial response to
    PR#15285; further PR#17784 is fixed thanks to several
    contributors and a patch by Elin Waring.  The Cook's dist
    contours get customizable via cook.col and cook.lty with a
    different default color and their legend is nicer by default and
    customizable via cook.legendChanges.
  * Attempting to subset an object that is not subsettable now
    signals an error of class notSubsettableError. The
    non-subsettable object is contained in the object field of the
    error condition.
  * Subscript-out-of-bounds errors are now signaled as errors of
    class subscriptOutOfBoundsError.
  * Stack-overflow errors are now signaled as errors inheriting from
    class stackOverflowError. See ?stackOverflowError for more
    details.
  * New partly experimental Sys.setLanguage() utility, solving the
    main problem of PR#18055.
  * gettext() and gettextf() get a new option trim = TRUE which when
    set to false allows translations for strings such as "Execution
    halted\n" typical for C code.
  * An experimental implementation of hash tables is now available.
    See ?hashtab for more details.
  * identical() gains a extptr.as.ref argument for requesting that
    external pointer objects be compared as reference objects.
  * reorder() gets an argument decreasing which it passes to sort()
    for level creation; based on the wish and patch by Thomas Soeiro
    in PR#18243.
  * as.vector() gains a data.frame method which returns a simple
    named list, also clearing a long standing 'FIXME' to enable
    as.vector(&lt;data.frame&gt;, mode="list").  This breaks code relying
    on as.vector(&lt;data.frame&gt;) to return the unchanged data frame.
  * legend() is now vectorized for arguments cex, x.intersp, and
    text.width.  The latter can now also be specified as a vector
    (one element for each column of the legend) or as NA for
    computing a proper column wise maximum value of strwidth(legend).
    The argument y.intersp can be specified as a vector with one
    entry for each row of the legend.
    legend() also gains new arguments title.cex and title.font.
    Thanks to Swetlana Herbrandt.
  * Deparsing no longer remaps attribute names dim, dimnames, levels,
    names and tsp to historical S-compatible names (which structure()
    maps back).
  * sample() and sample.int() have additional sanity checks on their
    size and n arguments.
    all.equal.numeric() gains a sanity check on its tolerance
    argument - calling all.equal(a, b, c) for three numeric vectors
    is a surprisingly common error.
    mean(na.rm =), rank(na.last =), barplot(legend.text =),
    boxplot(), contour(drawlabels =), polygon(border =) and
    methods::is(class2 =) have more robust sanity checks on their
    arguments.
    R CMD Rd2pdf (used by R CMD check) has a more robust sanity check
    on the format of \alias{} commands.
  * psigamma(x, deriv) for negative x now also works for deriv = 4
    and 5; their underlying C level dpsifn() is documented in
    'Writing R Extensions'.
  * The HTML help system now uses HTML5 (wish of PR#18149).
  * ks.test() now provides exact p-values also with ties and MC
    p-values in the two-sample (Smirnov) case.  By Torsten Hothorn.
  * ks.test() gains a formula interface, with y ~ 1 for the
    one-sample (Kolmogorov) test and y ~ group for the two-sample
    (Smirnov) test.  Contributed by Torsten Hothorn.
  * The return value from ks.test() now has class c("ks.test",
    "htest") - packages using try() need to take care to use
    inherits() and not == on the class.
  * New functions psmirnov(), qsmirnov() and rsmirnov() in package
    stats implementing the asymptotic and exact distributions of the
    two-sample Smirnov statistic.
  * iconv() now allows sub = "c99" to use C99-style escapes for UTF-8
    inputs which cannot be converted to encoding to.
  * In a forward pipe |&gt; expression it is now possible to use a named
    argument with the placeholder _ in the rhs call to specify where
    the lhs is to be inserted.  The placeholder can only appear once
    on the rhs.
  * The included LAPACK sources have been updated to version 3.10.0,
    except for the four Fortran 77 routines which 3.10.0 has
    re-implemented in Fortran 90 (where the older versions have been
    retained as the R build process does not support Fortran 90).
  * path.expand() and most other uses of tilde expansion now warn if
    a path would be too long if expanded.  (An exception is
    file.exists(), which silently returns false.)
  * trunc(&lt;Date&gt;, *) now supports units = "months" or "years" for
    consistency with the POSIXt method, thanks to Dirk Eddelbuettel's
    proposal in PR#18099.
  * list2DF() now checks that its arguments are of the same length,
    rather than use recycling.
  * The HTML help system has several new features: LaTeX-like math
    can be typeset using either KaTeX or MathJax, usage and example
    code is highlighted using Prism, and for dynamic help the output
    of examples and demos can be shown within the browser if the
    knitr package is installed. These features can be disabled by
    setting the environment variable _R_HELP_ENABLE_ENHANCED_HTML_ to
    a false value.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 15
    and so packages that provide graphics devices should be
    reinstalled.
  * The grid package now allows the user to specify a "vector" of
    pattern fills.  The fill argument to gpar() accepts a list of
    gradients and/or patterns and the functions linearGradient(),
    radialGradient(), and pattern() have a new group argument.
    Points grobs (data symbols) can now also have a pattern fill.
    The grobCoords() function now returns a more informative and
    complex result.
  * The grid package has new functions for drawing isolated groups:
    grid.group(), grid.define(), and grid.use().  These functions add
    compositing operators and affine transformations to R's graphics
    capabilities.
    The grid package also has new functions for stroking and filling
    paths: grid.stroke(), grid.fill(), and grid.fillStroke().
    A new function as.path() allows the user to specify the fill rule
    for a path that is to be used for clipping, stroking, or filling;
    available options are "winding" and "evenodd".  A new function
    as.mask() allows the user to specify the type of a mask;
    available options are "alpha" and "luminance".
    These new features are only supported so far (at most) on the
    Cairo-based graphics devices and on the pdf() device.
  * dev.capabilities() reports on device support for the new
    features.
  * par() now warns about unnamed non-character arguments to prevent
    misuse such as {usr &lt;- par("usr"); par(usr)}.
  INSTALLATION:
  * Facilities for accessing ftp:// sites are no longer tested
    (except _pro tem_ for curlGetHeaders()) as modern browsers have
    removed support.
  * R can now be built with DEFS = -DSTRICT_R_HEADERS .
  PACKAGE INSTALLATION:
  * R CMD INSTALL no longer tangles vignettes. This completes an R
    CMD build change in R 3.0.0 and affects packages built before R
    3.0.2. Such packages should be re-made with R CMD build to have
    the tangled R code of vignettes shipped with the tarball.
  * USE_FC_LEN_T will become the default: this uses the correct
    prototypes for Fortran BLAS/LAPACK routines called from C/C++,
    and requires adjustment of most such calls - see 'Writing R
    Extensions' SS6.6.2.  (This has been supported since R 3.6.2.)
  * Package installation speed for packages installed with
    keep.source has been improved. This resolve the issue reported by
    Ofek Shilon in PR#18236.
  UTILITIES:
  * R CMD check can optionally report files/directories left behind
    in home, /tmp (even though TMPDIR is set) and other directories.
    See the "R Internals" manual for details.
  * R CMD check now reports byte-compilation errors during
    installation.  These are not usually fatal but may result in
    parts of the package not being byte-compiled.
  * _R_CHECK_DEPENDS_ONLY_ can be applied selectively to examples,
    tests and/or vignettes in R CMD check: see the "R Internals"
    manual.
  * _R_CHECK_SRC_MINUS_W_IMPLICIT_ now defaults to true: recent
    versions of Apple clang on macOS have made implicit function
    declarations in C into a compilation error.
  * R CMD check --as-cran makes use of the environment variable
    AUTORECONF.  See the "R Internals" manual SS8 for further details.
  * R CMD check --use-valgrind also uses valgrind when re-building
    vignettes as some non-Sweave vignettes unhelpfully comment out
    all their code when R CMD check runs vignettes.
  * Errors in re-building vignettes (unless there are LaTeX errors)
    are reported by R CMD check as ERROR rather than WARNING when
    running vignettes has been skipped (as it frequently is in CRAN
    checks and by --as-cran).
  * R CMD Rd2pdf gains a --quiet option that is used by R CMD build
    when building the PDF package manual.
  * R CMD Rd2pdf now always runs LaTeX in batch mode, consistent with
    Texinfo &gt;= 6.7. The --batch option is ignored.
  * R CMD build and R CMD check now include the Rd file name and line
    numbers in the error message of an \Sexpr evaluation failure.
  * For packages using the \doi Rd macro (now an install-time \Sexpr)
    but no other dynamic Rd content, R CMD build now produces a
    smaller tarball and is considerably faster - skipping temporary
    package installation.
  C-LEVEL FACILITIES:
  * The non-API header R_ext/R-ftp-http.h is no longer provided, as
    the entry points it covered are now all defunct.
  * A number of non-API declarations and macro definitions have been
    moved from the installed header Rinternals.h to the internal
    header Defn.h. Packages that only use entry points and
    definitions documented to be part of the API as specified in
    'Writing R Extensions' SS6 should not be affected.
  * The macro USE_RINTERNALS no longer has any effect when compiling
    package code.  Packages which also use R_NO_REMAP will need to
    ensure that the remapped names are used for calls to API
    functions that were formerly also made available as macros.
  * The deprecated legacy S-compatibility macros PROBLEM, MESSAGE,
    ERROR, WARN, WARNING, RECOVER, ... are no longer defined in
    R_exts/RS.h (included by R.h).  Replace these by calls to
    Rf_error and Rf_warning (defined in header R_ext/Error.h included
    by R.h).
    Header R_ext/RS.h no longer includes R_ext/Error.h.
  * Header R_ext/Constants.h (included by R.h) when included from C++
    now includes the C++ header cfloat rather than the C header
    float.h (now possible as C++11 is required).
  * The legacy S-compatibility macros DOUBLE_* in R_ext/Constants.h
    (included by R.h) are deprecated.
  * The deprecated S-compatibility macros SINGLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * R_Calloc, R_Free and R_Realloc are preferred to their unprefixed
    forms and error messages now use the prefix. These forms were
    introduced in R 3.4.0 and are available even when
    STRICT_R_HEADERS is defined.
  * rmultinom has been documented in 'Writing R Extensions' SS6 so is
    now part of the R API.
  * Similarly, Rtanpi, called from R level tanpi() is now part of the
    R API.
  * The long-deprecated, undocumented and non-API entry point call_R
    is no longer declared in R_ext/RS.h (included by R.h).
  * The header S.h which has been unsupported since Jan 2016 has been
    removed.  Use R.h instead.
  DEPRECATED AND DEFUNCT:
  * The (non-default and deprecated) method = "internal" for
    download.file() and url() no longer supports http:// nor ftp://
    URIs.  (It is used only for file:// URIs.)
    On Windows, download.file(method = "wininet") no longer supports
    ftp:// URIs.  (It is no longer the default method, which is
    "libcurl" and does.)
    On Windows, the deprecated method = "wininet" now gives a warning
    for http:// and https:// URIs for both download.file() and url().
    (It is no longer the default method.)
  * On Windows, the command-line option --max-mem-size and
    environment variable R_MAX_MEM_SIZE are defunct.  The memory
    allocation limit was important for 32-bit builds, but these are
    no longer supported.
  * default.stringsAsFactors() is now formally deprecated, where that
    was only mentioned on its regular help page, previously.  So it
    now gives a warning if called.
  * unix.time() is defunct now; it had been deprecated since R 3.4.0.
  BUG FIXES:
  * Setting digits = 0 in format(), print.default() (and hence
    typically print()) or options() is again invalid.  Its behaviour
    was platform-dependent, and it is unclear what "zero significant
    digits" should mean (PR#18098).
  * Messages from C code in the cairo section of package grDevices
    are now also offered for translation, thanks to Michael Chirico's
    PR#18123.
  * mean(x) with finite x now is finite also without "long.double"
    capability.
  * R CMD Rd2pdf no longer leaves an empty build directory behind
    when it aborts due to an already existing output file.  (Thanks
    to Sebastian Meyer's PR#18141.)
  * density(x, weights = w, na.rm = TRUE) when anyNA(x) is true, now
    removes weights "in parallel" to x, fixing PR#18151, reported by
    Matthias Gondan.  Additionally, it gets a subdensity option.
  * Conversion of \Sexpr[]{&lt;expR&gt;} to LaTeX or HTML no longer
    produces long blocks of empty lines when &lt;expR&gt; itself contains
    several lines all producing empty output.  Thanks to a report and
    patch by Ivan Krylov posted to R-devel.
  * R CMD build no longer fails if a package vignette uses child
    documents and inst/doc exists.  (Thanks to Sebastian Meyer's
    PR#18156.)
  * When an R documentation ('help' source) file man/foo.Rd in a
    package has \donttest{..} examples with a syntax error, it is now
    signalled as ERROR and with correct line numbers relating to the
  * -Ex.R file, thanks to Duncan Murdoch and Sebastian Meyer's
    reports and patch proposals in PR#17501.
  * Improved determination of the correct translation domain in
    non-base packages, addressing the combination of PR#18092 and
    PR#17998 (#c6) with reports and _augmented_ patch #2904 by
    Suharto Anggono.
    Note that "R-base" is no longer the default domain e.g., for
    top-level calls to gettext(); rather translation needs explicit
    domain = * specification in such cases.
  * identical(attrib.as.set=FALSE) now works correctly with data
    frames with default row names (Thanks to Charlie Gao's PR#18179).
  * txtProgressBar() now enforces a non-zero width for argument char,
    without which no progress can be visible.
  * dimnames(table(d)) is more consistent in the case where d is a
    list with a single component, thanks to Thomas Soeiro's report to
    R-devel.
    Further, table(d1, d2) now gives an error when d1 and d2 are data
    frames as suggested by Thomas in PR#18224.
  * Fix for drawing semi-transparent lines and fills on the native
    Windows graphics device (PR#18219 and PR#16694).  Thanks to Nick
    Ray for helpful diagnosis on Bugzilla.
  * The deparser now wraps sub-expressions such as if(A) ..  with
    parentheses when needed; thanks to Duncan Murdoch's PR#18232 and
    Lionel Henry's patches there.
  * remove.packages() no longer tries to uninstall Priority: base
    packages, thanks to a report and suggestions by Colin Fay in
    PR#18227.
  * win.metafile() now has xpinch and ypinch arguments so that the
    user can override Windows' (potentially wrong) guess at device
    dimensions.
  * x[i] and x[[i]] for non-integer i should now behave in all cases
    as always documented: the index used is equivalent to
    as.integer(i) unless that would overflow where trunc(i) is used
    instead; thanks to Suharto Anggono's report and patch proposals
    in PR#17977.
  * asOneSidedFormula() now associates the resulting formula with the
    global environment rather than the evaluation environment created
    for the call.
  * &lt;bibentry&gt;$name now matches the field name case-insensitively,
    consistent with bibentry() creation and the replacement method.
  * cbind() failed to detect some length mismatches with a mixture of
    time-series and non-time-series inputs.
  * The default LaTeX style file Sweave.sty used by the RweaveLatex
    driver no longer loads the obsolete ae package; thanks to a
    report by Thomas Soeiro in PR#18271.  Furthermore, it now skips
    \usepackage[T1]{fontenc} for engines other than pdfTeX (if
    detected) or if the new [nofontenc] option is used.
  * smooth.spline() now stores its logical cv argument more safely,
    fixing a rare bug when printing, and also stores n.
  * smooth.spline(x,y,*) now computes the cv.crit statistic
    correctly, also when is.unsorted(x), fixing PR#18294.
  * The data.frame method of rbind() now warns when binding
    not-wholly-recycling vectors, by analogy to the default method
    (for matrices).
  * setAs() finds the correct class for name to when multiple
    packages define a class with that name. Thanks to Gabor Csardi
    for the report.
  * Fix for detaching a package when two classes of the same name are
    present in method signatures for the same generic. Thanks to
    Gabor Csardi for the report.
  * match.arg("", c("", "a", "B")) gives a better error message, in
    part from PR#17959, thanks to Elin Waring.
  * R CMD Sweave --clean no longer removes pre-existing files or
    subdirectories (PR#18242).
  * The quartz() device no longer splits polylines into subpaths.
    That has caused narrowly-spaced lines with many points to always
    look solid even when dashed line type was used due to dash phase
    restarts.
  * Deparsing constructs such as quote(1 + `!`(2) + 3) works again as
    before R 3.5.0, thanks to the report and patch in PR#18284 by
    Suharto Anggono.
  * as.list(f) for a factor f now keeps names(f), fixing PR#18309.
  * qbeta(.001, .9, .009) and analogous qf() calls now return a
    correct value instead of NaN or wrongly 1, all with a warning;
    thanks to the report by Ludger Goeminne in PR#18302.
  * plot.lm() failed to produce the plot of residuals vs.  factor
    levels (i.e., which=5 when leverages are constant) for models
    with character predictors (PR#17840).
  * interaction.plot(..., xtick = TRUE) misplaced the x-axis line
    (PR#18305).
  * Not strictly fixing a bug, format()ing and print()ing of
    non-finite Date and POSIXt values NaN and +/-Inf no longer show
    as NA but the respective string, e.g., Inf, for consistency with
    numeric vector's behaviour, fulfilling the wish of PR#18308.
  * R CMD check no longer runs test scripts generated from
    corresponding .Rin files twice and now signals an ERROR if
    processing an .Rin script fails.
  * tools::Rd2txt() used for plain-text help pages now renders \hrefs
    (if tools::Rd2txt_options(showURLs = TRUE)) and \urls with
    percent-encoding and standards-compliant delimiting style (angle
    brackets and no URL: prefix).  \email is now rendered with a
    mailto: prefix.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1655985600">- CHANGES IN R 4.2.1:
  NEW FEATURES:
  * New function utils::findCRANmirror() to find out if a CRAN mirror
    has been selected, otherwise fallback to the main site.  This
    behaves in the same way as tools::CRAN_package_db() and is
    intended for packages wishing to access CRAN for purposes other
    than installing packages.
    The need for this was shown by a day when the main CRAN website
    was offline and a dozen or so packages which had its URL
    hardcoded failed their checks.
  INSTALLATION on a UNIX-ALIKE:
  * The libraries searched for by --with-blas (without a value) now
    include BLIS (after OpenBLAS but before ATLAS).  And on macOS,
    the Accelerate framework (after ATLAS).  (This is patterned after
    the AX_BLAS macro from the Autoconf Archive.)
  * The included LAPACK sources have been updated to 3.10.1.
  UTILITIES:
  * The (full path to) the command tidy to be used for HTML
    validation can be set by environment variable R_TIDYCMD.
  * Setting environment variable _R_CHECK_RD_VALIDATE_RD2HTML_ to a
    false value will override R CMD check --as-cran and turn off HTML
    validation.  This provides a way to circumvent a problematic
    tidy.
    The 2006 version that ships with macOS is always skipped.
  C-LEVEL FACILITIES:
  * The undocumented legacy declarations of Sint, Sfloat, SINT_MAX
    and SINT_MIN in header R.h are deprecated.
  BUG FIXES:
  * fisher.test(d) no longer segfaults for "large" d; fixing PR#18336
    by preventing/detecting an integer overflow reliably.
  * tar(., files=*) now produces correctly the warning about invalid
    uid or gid of files, fixing PR#18344, reported by Martin Morgan.
  * tk_choose.files() with multi = FALSE misbehaved on paths
    containing spaces (PR#18334) (regression introduced in R 4.0.0).
  * sort(x, partial = ind, *) now works correctly notably for the
    non-default na.last = FALSE or TRUE, fixing PR#18335 reported by
    James Edwards.
  * Environment variable _R_CHECK_XREFS_REPOSITORIES_ is only used
    for checking .Rd cross-references in R CMD check (as documented)
    and not for other uses looking for a CRAN mirror.
  * The search for a CRAN mirror when checking packages now uses
    getOption("repos") if that specifies a CRAN mirror, even when it
    does not also specify all three Bioconductor repositories (as was
    previously required).
  * The HTML code generated by tools::Rd2HTML() has been improved to
    pass tidy 5.8.0.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1667217600">- CHANGES IN R 4.2.2:
  NEW FEATURES:
  * tools::Rdiff(useDiff = TRUE) checks for the presence of an
    external diff command and switches to useDiff = FALSE if none is
    found.  This allows R CMD Rdiff to always work.
  * On Windows, environment variable R_LIBCURL_SSL_REVOKE_BEST_EFFORT
    can be used to switch to only 'best-effort' SSL certificate
    revocation checks with the default "libcurl" download method.
    This reduces security, but may be needed for downloads to work
    with MITM proxies (PR#18379).
  * (macOS) The run-time check for libraries from XQuartz for X11 and
    Tcl/Tk no longer uses otool from the Apple Developer Tools
    (PR#18400).
  * The LaTeX style for producing the PDF manuals, Rd.sty, now loads
    the standard amsmath, amsfonts and amssymb packages for greater
    coverage of math commands in the Rd \eqn and \deqn macros.  The
    \mathscr LaTeX command is also provided (via the mathrsfs
    package, if available, or the amsfonts bundle otherwise),
    fulfilling the wish of PR#18398.
  * (Windows) The default format of readClipboard() and
    writeClipboard() has been changed to 13 (CF_UNICODETEXT).
  INSTALLATION on a UNIX-ALIKE:
  * The PDF manuals (if built) can be compacted by the new target
    make compact-pdf (at the top level or in directory doc/manual).
  * There is now configure support for LLVM clang 15 on Linux, which
    defaults to position-independent (PIE) executables whereas
    gfortran does not.
  * Many small changes to ease compilation (and suppress warnings)
    with LLVM clang 15.
  BUG FIXES:
  * Rscript -e would fail if stdin were closed (Reported by Henrik
    Bengtsson.)
  * qt(*, log.p=TRUE) in outer tails no longer produces NaN in its
    final steps, thus fixing PR#18360.
  * tools::Rd2latex() now escapes hashes and ampersands when writing
    URLs, fixing LaTeX errors with such URLs in \tabular.
  * When isGeneric(f, fdef=*) is used with mismatching names, the
    warning is better understandable; reported (with fix) in PR#18370
    by Gabe Becker.
  * poly(x, n) now works again (and is now documented) when x is a
    "Date" or "POSIXct" object, or of another class while fulfilling
    mode(x) == "numeric".  This also enables poly(x, *, raw=TRUE) for
    such variables.  Reported by Michael Chirico to R-devel.
  * write.table(), write.csv() and write.csv2() restore their
    numerical precision (internal equivalent of digits = 15) after an
    interrupt (PR#18384).
  * One can now read also byte FF from a clipboard connection
    (PR#18385).
  * source("") and source(character()) now give more helpful error
    messages.
  * R CMD check --as-cran set _R_CHECK_TIMINGS_ too late to have the
    intended effect.
  * as.POSIXlt(x) now also works with very large dates x, fixing
    PR#18401 reported by Hannes M"uhleisen.
  * Files can now be extracted even from very large zip archives
    (PR#18390, thanks to Martin Jakt).
  * Non-finite objects of class "POSIXlt" are now correctly coerced
    to classes "Date" and "POSIXct"; following up on the extension to
    format() them correctly.
  * Added methods for is.finite(), is.infinite() and is.nan() for
    "POSIXlt" date-time objects.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1678881600">- CHANGES IN R 4.2.3:
  C-LEVEL FACILITIES:
  * The definition of DL_FUNC in R_ext/Rdynload.h has been changed to
    be fully C-compliant.  This means that functions loaded _via_ for
    example R_GetCCallable need to be cast to an appropriate type if
    they have any arguments.
  * .Machine has a new element sizeof.time_t to identify old systems
    with a 32-bit type and hence a limited range of date-times (and
    limited support for dates millions of years from present).
  PACKAGE INSTALLATION:
  * (Windows) The default C++ standard had accidentally been left at
    C++11 when it was changed to C++14 on Unix.
  BUG FIXES:
  * As "POSIXlt" objects may be "partially filled" and their list
    components meant to be recycled, length() now is the length of
    the longest component.
  * as.POSIXlt.Date() could underflow for dates in the far past (more
    than half a million years BCE).
  * as.Date.POSIXlt(x) would return "1970-01-01" instead of NA in R
    4.2.2, e.g., for
    x &lt;- as.POSIXlt(c("2019-01-30","2001-1-1"))
    x$mon &lt;- c(0L, NA); as.Date(x)
  * R CMD check failed to apply enabled _R_CHECK_SUGGESTS_ONLY_ to
    examples and vignettes (regression in R 4.2.0).
  * R CMD check did not re-build vignettes in separate processes by
    default (regression in R 4.2.0).
  * Running examples from HTML documentation now restores previous
    knitr settings and options (PR#18420).
  * Quartz: fonts are now located using Core Graphics API instead of
    deprecated ATS which is no longer supported in the macOS 13 SDK
    (PR#18426).  This also addresses an issue where the currently
    used font in the Quartz device context was not correctly
    retained.
  * (Windows) Math symbols in text drawing functions are again
    rendered correctly (PR#18440).  This fixes a regression in R
    4.2.1 caused by a fix in PR#18382 which uncovered an issue in
    GraphApp due to which the symbol charset was not used with TT
    Symbol font face.
  * (Windows) Installing a package with a src/Makefile.{win,ucrt}
    file includes ~/.R/Makevars.win64 in the search for user
    makevars, as documented in "R Installation and Administration"
    and done for packages with a src/Makevars.{win,ucrt} file.
  * format(&lt;POSIXlt_w/_unbalanced_sec&gt;, "....%OS&lt;n&gt;") with n &gt; 0 no
    longer accidentally uses the unbalanced seconds, thanks to
    Suharto Anggono's report (including patch) in PR#18448.
  * solve.default(a, b) works around issues with some versions of
    LAPACK when a contains NA or NaN values.
  * When UseMethod() cannot dispatch, it no longer segfaults
    producing the error message in case of a long class(), thanks to
    Joris Vankerschaver's report (including patch) in PR#18447.
  * When example(foo, ..) produces graphics on an interactive device
    it needs to open itself, it now leaves devAskNewPage() unchanged
    even when it was FALSE, thus fixing a 14 years old '&lt;FIXME&gt;'.
  * packageDescription() again catches errors from encoding
    conversions. This also fixes broken packageVersion() in C locale
    on systems where iconv does not support transliteration.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1681128000">- add patch to build with libcurl &gt;= 8</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1682078400">- CHANGES IN R 4.3.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Calling &amp;&amp; or || with LHS or (if evaluated) RHS of length greater
    than one is now always an error, with a report of the form
    'length = 4' in coercion to 'logical(1)'
    Environment variable _R_CHECK_LENGTH_1_LOGIC2_ no longer has any
    effect.
  NEW FEATURES:
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.10.1.  (This caused some platform-dependent
    changes to package check output.)  And then to the sources from
    LAPACK version 3.11.0 (with changes only to double complex
    subroutines).
  * The included LAPACK sources have been updated to include the four
    Fortran 90 routines rather than their Fortran 77 predecessors.
    This may give some different signs in SVDs or
    eigendecompositions..  (This completes the transition to LAPACK
    3.10.x begun in R 4.2.0.)
  * The LAPACK sources have been updated to version 3.11.0.  (No new
    subroutines have been added, so this almost entirely bug fixes:
    Those fixes do affect some computations with NaNs, including R's
    NA.)
  * The parser now signals _classed_ errors, notably in case of the
    pipe operator |&gt;.  The error object and message now give line and
    column numbers, mostly as proposed and provided by Duncan Murdoch
    in PR#18328.
  * toeplitz() is now generalized for asymmetric cases, with a
    toeplitz2() variant.
  * xy.coords() and xyz.coords() and consequently, e.g., plot(x,y,
    log = "y") now signal a _classed_ warning about negative values
    of y (where log(.) is NA).  Such a warning can be specifically
    suppressed or caught otherwise.
  * Regular expression functions now check more thoroughly whether
    their inputs are valid strings (in their encoding, e.g. in
    UTF-8).
  * The performance of grep(), sub(), gsub() and strsplit() has been
    improved, particularly with perl = TRUE and fixed = TRUE.  Use of
    useBytes = TRUE for performance reasons should no longer be
    needed and is discouraged: it may lead to incorrect results.
  * apropos() gains an argument dot_internals which is used by the
    completion (help(rcompgen)) engine to also see base internals
    such as .POSIXct().
  * Support in tools::Rdiff() for comparing uncompressed PDF files is
    further reduced - see its help page.
  * qqplot(x, y, ...) gains conf.level and conf.args arguments for
    computing and plotting a confidence band for the treatment
    function transforming the distribution of x into the distribution
    of y (Switzer, 1976, _Biometrika_). Contributed by Torsten
    Hothorn.
  * Performance of package_dependencies() has been improved for cases
    when the number of dependencies is large.
  * Strings newly created by gsub(), sub() and strsplit(), when any
    of the inputs is marked as "bytes", are also marked as "bytes".
    This reduces the risk of creating invalid strings and accidental
    substitution of bytes deemed invalid.
  * Support for readLines(encoding = "bytes") has been added to allow
    processing special text files byte-by-byte, without creating
    invalid strings.
  * iconv(from = "") now takes into account any declared encoding of
    the input elements and uses it in preference to the native
    encoding.  This reduces the risk of accidental creation of
    invalid strings, particularly when different elements of the
    input have different encoding (including "bytes").
  * Package repositories in getOption("repos") are now initialized
    from the repositories file when utils is loaded (if not already
    set, e.g., in .Rprofile).  (From a report and patch proposal by
    Gabriel Becker in PR#18405.)
  * compactPDF() gets a verbose option.
  * type.convert() and hence read.table() get new option tryLogical =
    TRUE with back compatible default.  When set to false, converts
    "F" or "T" columns to character.
  * Added new unit prefixes "R" and "Q" for abbreviating
    (unrealistically large) sizes beyond 10^{27} in standard = "SI",
    thanks to Henrik Bengtsson's PR#18435.
  * as.data.frame()'s default method now also works fine with atomic
    objects inheriting from classes such as "roman", "octmode" and
    "hexmode", such fulfilling the wish of PR#18421, by Benjamin
    Feakins.
  * The as.data.frame.vector() utility now errors for wrong-length
    row.names.  It warned for almost six years, with "Will be an
    error!".
  * sessionInfo() now also contains La_version() and reports codepage
    and timezone when relevant, in both print() and toLatex() methods
    which also get new option tzone for displaying timezone
    information when locale = FALSE.
  * New function R_compiled_by() reports the C and Fortran compilers
    used to build R, if known.
  * predict(&lt;lm&gt;, newdata = *) no longer unnecessarily creates an
    offset of all 0s.
  * solve() for complex inputs now uses argument tol and by default
    checks for 'computational singularity' (as it long has done for
    numeric inputs).
  * predict(&lt;rank-deficient lm&gt;, newdata=*) now obeys a new argument
    rankdeficient, with new default "warnif", warning only if there
    are non-estimable cases in newdata.  Other options include
    rankdeficient = "NA", predicting NA for non-estimable newdata
    cases.  This addresses PR#15072 by Russ Lenth and is based on his
    original proposal and discussions in PR#16158 also by David Firth
    and Elin Waring.  Still somewhat experimental.
  * Rgui console implementation now works better with the NVDA screen
    reader when the full blinking cursor is selected.  The underlying
    improvements in cursor handling may help also other screen
    readers on Windows.
  * The drop-field control in GraphApp can now be left with the TAB
    key and all controls can be navigated in the reverse order using
    the Shift+TAB key, improving accessibility of the Rgui
    configuration editor.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now fully accurate
    (instead of to "only" minimally five digits).
  * demo(error.catching) now also shows off withWarnings() and
    tryCatchWEMs().
  * As an experimental feature the placeholder _ can now also be used
    in the rhs of a forward pipe |&gt; expression as the first argument
    in an extraction call, such as _$coef. More generally, it can be
    used as the head of a chain of extractions, such as _$coef[[2]].
  * Spaces in the environment variable used to choose the R session's
    temporary directory (TMPDIR, TMP and TEMP are tried in turn) are
    now fatal.  (On Windows the 'short path' version of the path is
    tried and used if that does not contain a space.)
  * all.equal.numeric() gets a new optional switch giveErr to return
    the numeric error as attribute.  Relatedly,
    stopifnot(all.equal&lt;some&gt;(a, b, ..)) is as "smart" now, as
    stopifnot(all.equal(....)) has been already, thus allowing
    customized all.equal&lt;Some&gt;() wrappers.
  * R on Windows is now able to work with path names longer than 260
    characters when these are enabled in the system (requires at
    least Windows 10 version 1607).  Packages should be updated to
    work with long paths as well, instead of assuming PATH_MAX to be
    the maximum length.  Custom front-ends and applications embedding
    R need to update their manifests if they wish to allow this
    feature.  See
    &lt;https://blog.r-project.org/2023/03/07/path-length-limit-on-windows&gt;
    for more information.
  * 'Object not found' and 'Missing argument' errors now give a more
    accurate error context. Patch provided by Lionel Henry in
    PR#18241.
  * The @ operator is now an S3 generic. Based on contributions by
    Tomasz Kalinowski in PR#18482.
  * New generic chooseOpsMethod() provides a mechanism for objects to
    resolve cases where two suitable methods are found for an Ops
    Group Generic. This supports experimenting with alternative
    object systems. Based on contributions by Tomasz Kalinowski in
    PR#18484.
  * inherits(x, what) now accepts values other than a simple
    character vector for argument what. A new generic, nameOfClass(),
    is called to resolve the class name from what. This supports
    experimenting with alternative object systems. Based on
    contributions by Tomasz Kalinowski in PR#18485.
  * Detection of BLAS/LAPACK in use (sessionInfo()) with FlexiBLAS
    now reports the current backend.
  * The "data.frame" method for subset() now warns about extraneous
    arguments, typically catching the use of = instead of == in the
    subset expression.
  * Calling a:b when numeric a or b is longer than one may now be
    made into an error by setting environment variable
    _R_CHECK_LENGTH_COLON_ to a true value, along the proposal in
    PR#18419 by Henrik Bengtsson.
  * density(x, weights = *) now warns if automatic bandwidth
    selection happens without using weights; new optional warnWbw may
    suppress the warning.  Prompted by Christoph Dalitz' PR#18490 and
    its discussants.
  * rm(list = *) is faster and more readable thanks to Kevin Ushey's
    PR#18492.
  * The plot.lm() function no longer produces a normal Q-Q plot for
    GLMs. Instead it plots a half-normal Q-Q plot of the absolute
    value of the standardized deviance residuals.
  * The print() method for class "summary.glm" no longer shows
    summary statistics for the deviance residuals by default.  Its
    optional argument show.residuals can be used to show them if
    required.
  * The tapply() function now accepts a data frame as its X argument,
    and allows INDEX to be a formula in that case. by.data.frame()
    similarly allows INDICES to be a formula.
  * The performance of df[j] &lt;- value (including for missing j) and
    write.table(df) has been improved for data frames df with a large
    number of columns.  (Thanks to Gabriel Becker's PR#18500,
    PR#18503 and discussants, prompted by a report from Toby Dylan
    Hocking on the R-devel mailing list.)
  * The matrix multiply operator %*% is now an S3 generic, belonging
    to new group generic matrixOps.  From Tomasz Kalinowski's
    contribution in PR#18483.
  * New function array2DF() to convert arrays to data frames,
    particularly useful for the list arrays created by tapply().
  DATES and TIMES:
  * On platforms where (non-UTC) datetimes before 1902 (or before
    1900 as with system functions on recent macOS) are guessed by
    extrapolating time zones from 1902-2037, there is a warning at
    the first use of extrapolation in a session.  (As all time zones
    post 2037 are extrapolation, we do not warn on those.)
  * (Platforms using --with-internal-tzone, including Windows and by
    default macOS). How years are printed in dates or date-times can
    be controlled by environment variable R_PAD_YEARS_BY_ZERO.  The
    default remains to pad to 4 digits by zeroes, but setting value
    no gives no padding (as used by default by glibc).
  * strftime() tries harder to determine the offset for the "%z"
    format, and succeeds on the mainstream R platforms.
  * strftime() has a limit of 2048 bytes on the string produced -
    attempting to exceed this is an error.  (Previously it silently
    truncated at 255 bytes.)
  * sessionInfo() records (and by default prints) the system time
    zone as part of the locale information.  Also, the source
    (system/internal) of the date-time conversion and printing
    functions.
  * Objects of class "POSIXlt" created in this version of R always
    have 11 components: component zone is always set, and component
    gmtoff is set for times in UTC and usually set on the (almost
    all) platforms which have C-level support, otherwise is NA.
  * There are comprehensive validity checks on the structure of
    objects of class "POSIXlt" when converting (including formatting
    and printing).  (This avoids mis-conversions of hand-crafted
    objects.)
  * There is some support for using the native date-time routines on
    macOS: this is only viable on recent versions (e.g. 12.6 and 13)
    and does get wrong some historical changes (before 1900, during
    WWII).  Use of --with-internal-tzone remains the default.
  * as.POSIXct(&lt;numeric&gt;) and as.POSIXlt(.) (without specifying
    origin) now work.  So does as.Date(&lt;numeric&gt;).
  * as.Date.POSIXct(., tz) now treats several tz values, notably
    "GMT" as equivalent to "UTC", proposed and improved by Michael
    Chirico and Joshua Ulrich in PR#17674.
  * Experimental balancePOSIXlt() utility allows using "ragged" and
    or out-of-range "POSIXlt" objects more correctly, e.g., in
    subsetting and subassignments.  Such objects are now documented.
    More experimentally, a "POSIXlt" object may have an attribute
    "balanced" indicating if it is known to be filled or fully
    balanced.
  * Functions axis.Date() and axis.POSIXct() are rewritten to gain
    better default tick locations and better default formats by using
    prettyDate(). Thanks to Swetlana Herbrandt.
  * The mapping of Windows' names for time zones to IANA's 'Olson'
    names has been updated.  When ICU is available (it is by
    default), it is used to get a mapping for the current region set
    in Windows.  This can be overridden by setting environment
    variable TZ to the desired Olson name - see OlsonNames() for
    those currently available.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 16
    and so packages that provide graphics devices should be
    reinstalled.
  * The grDevices and grid packages have new functions for rendering
    typeset glyphs, primarily: grDevices::glyphInfo() and
    grid::grid.glyph().
    Rendering of typeset glyphs is only supported so far on the
    Cairo-based graphics devices and on the pdf() and quartz()
    devices.
  * The defined behaviour for "clear" and "source" compositing
    operators (via grid::grid.group()) has been changed (to align
    better with simple interpretation of original Porter-Duff
    definitions).
  * Support for gradients, patterns, clipping paths, masks, groups,
    compositing operators, and affine transformations has been added
    to the quartz() device.
  INSTALLATION on a UNIX-ALIKE:
  * A system installation of generic LAPACK 3.10.0 or later will be
    preferred to the version in the R sources.
    configure option --with-lapack=no (equivalently --without-lapack)
    forces compilation of the internal LAPACK sources.
    If --with-lapack is not specified, a system liblapack is looked
    for and used if it reports version 3.10.0 or later and does not
    contain BLAS routines.
    Packages using LAPACK will need to be reinstalled if this changes
    to using an external library.
  * On aarch64 Linux platforms using GCC, configure now defaults to
  - fPIC (instead of -fpic), as desired in PR#18326.
  * configure now checks conversion of datetimes between POSIXlt and
    POSIXct around year 2020.  Failure (which has been seen on
    platforms missing tzdata) is fatal.
  * If configure option --with-valgrind-instrumentation is given
    value 1 or 2, option --with-system-valgrind-headers is now the
    default and ignored (with a warning).  It is highly recommended
    that the system headers are installed alongside valgrind: they
    are part of its packaging on some Linux distributions and
    packaged separately (e.g. in the valgrind-devel RPM) on others.
    configure will give a warning if they are not found.
    The system headers will be required in a future release of R to
    build with valgrind instrumentation.
  * libcurl 8.x is now accepted by configure: despite a change in
    major version number it changes neither API nor ABI.
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools43, an update of the Rtools42 toolchain.  It is
    based on gcc 12 and newer versions of MinGW-W64, binutils and
    libraries.  At this time R-devel can still be built using
    Rtools42 without changes, but when R-devel is installed via the
    installer, it will by default look for Rtools43.
  * Old make targets rsync-extsoft and 32-bit ones that are no longer
    needed have been removed.
  * Default builds (including for packages) no longer select C99.
    Thus the C standard used is the default for the compiler, which
    for the toolchain in Rtools43 is C17.  (This is consistent with
    Unix builds.)
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++17 where
    available (which it is on all currently checked platforms): if
    not C++14 or C++11 is used if available otherwise C++ is not
    supported.
  * USE_FC_LEN_T is the default: this uses the correct
    (compiler-dependent) prototypes for Fortran BLAS/LAPACK routines
    called from C/C++, and requires adjustment of many such calls -
    see 'Writing R Extensions' SS6.6.1.
  * There is initial support for C++23 as several compilers are now
    supporting -std=c++23 or -std=c++2b or similar.  As for C++20,
    there no additional configure checks for C++23 features beyond a
    check that the compiler reports a __cplusplus value greater than
    that in the C++20 standard.  C++ feature tests should be used.
  * There is support for a package to indicate the version of the C
    standard which should be used to compile it, and for the
    installing user to specify this.  In most cases R defaults to the
    C compiler's default standard which is C17 (a `bug-fix' of C11) -
    earlier versions of R or compilers may have defaulted to C99.
    Current options are:
    USE_C17 Use a standard that is at most C17.  The intention is to
    allow legacy packages to still be installed when later C
    standards become the default, including packages using new
    keywords as identifiers or with K&amp;R-style function
    declarations.  This will use C17 if available, falling back
    to C11.
    USE_C90 Use the C90 (aka C89) standard.  (As that standard did
    not require compilers to identify that version, all we can
    verify is that the compiler does not claim to be using a
    later standard.  It may accept C99 features - for example
    clang accepts // to make comments.)
    USE_C99 Use the C99 standard. This should be rarely needed - it
    avoids the few new features of C11/C17 which can be useful if
    a package assumes them if C17 is specified and they are not
    implemented.
    USE_C23 Use C23 (or in future, later).  Compiler/library support
    for C23 is still being implemented, but LLVM clang from
    15.0.0 and the upcoming GCC 13 have quite extensive support.
    These can be specified as part of the SystemRequirements field in
    the package's DESCRIPTION file or _via_ options --use-C17 and so
    on of R CMD INSTALL and R CMD SHLIB.
    For further details see "Writing R Extensions" SS1.2.5.
  * (Windows) A src/Makefile.ucrt or src/Makefile.win file is now
    included after R_HOME/etcR_ARCH/Makeconf and so no longer needs
    to include that file itself.  Installation of a package with such
    a file now uses a site Makevars file in the same way as a package
    with a src/Makevars.win file would.
  * configure is now passed crucial variables such as CC and CFLAGS
    in its environment, as many packages were not setting them (as
    documented in 'Writing R Extensions' SS1.2).
    This has most effect where configure is used to compile parts of
    the package - most often by cmake or libtool which obfuscate the
    actual compile commands used.
    Also used for configure.win and configure.ucrt on Windows.
  FORTRAN FLAGS:
  * The flag -fno-optimize-sibling-calls is no longer forced for
    gfortran 7 and later.  It should no longer be needed now using
    'hidden' character-length arguments when calling BLAS/LAPACK
    routines from C/C++ is the default even for packages.  (Unless
    perhaps packages call Fortran code from C/C++ without using R's
    headers and without allowing for these arguments.)
  C-LEVEL FACILITIES:
  * The deprecated S-compatibility macros DOUBLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * The deprecated legacy typedefs of Sint and Sfloat in header R.h
    are no longer defined, and that header no longer includes header
    limits.h from C nor climits from C++.
  * New macro CAD5R() is provided in Rinternals.h and used in a few
    places in the R sources.
  * ALTREP now supports VECSXP vectors. Contributed by Gabor Csardi
    in PR#17620.
  * The Rcomplex definition (in header R_ext/Complex.h) has been
    extended to prevent possible mis-compilation when interfacing
    with Fortran (PR#18430).  The new definition causes compiler
    warnings with static initializers such as {1, 2}, which can be
    changed to {.r=1, .i=2}.
    Using the new definition from C++ depends on compiler extensions
    supporting C features that have not been incorporated into the
    C++ standards but are available in g++ and clang++: this may
    result in C++ compiler warnings but these have been worked around
    for recent versions of common compilers (GCC, Apple/LLVM clang,
    Intel).
    It is intended to change the inclusion of header R_ext/Complex.h
    by other R headers, so C/C++ code files which make use of
    Rcomplex should include that header explicitly.
  UTILITIES:
  * R CMD check does more checking of package .Rd files, warning
    about invalid email addresses and (some) invalid URIs and noting
    empty \item labels in description lists.
  * R CMD check now also reports problems when reading package news
    in md (file NEWS.md) and (optionally) plain text (file NEWS)
    formats.
  * _R_CHECK_TIMINGS_ defaults to a value from the environment even
    for R CMD check --as-cran; this allows for exceptionally fast or
    slow platforms.
    It now applies to checking PDF and HTML versions of the manuals,
    and 'checking CRAN incoming feasibility'.
  * R CMD check can optionally (but included in --as-cran) check
    whether HTML math rendering _via_ KaTeX works for the package .Rd
    files.
  * Non-interactive debugger invocations can be trapped by setting
    the environment variable _R_CHECK_BROWSER_NONINTERACTIVE_ to a
    true value.  This is enabled by R CMD check --as-cran to detect
    the use of leftover browser() statements in the package.
  * The use of sprintf and vsprintf from C/C++ has been deprecated in
    macOS 13 and is a known security risk.  R CMD check now reports
    (on all platforms) if their use is found in compiled code:
    replace by snprintf or vsnprintf respectively. [*NB:* whether
    such calls get compiled into the package is platform-dependent.]
  * Where recorded at installation, R CMD check reports the C and
    Fortran compilers used to build R.
    It reports the OS in use (if known, as given by osVersion) as
    well as that R was built for.
    It notes if a C++ standard was specified which is older than the
    current default: many packages have used C++11 to mean 'not
    C++98' - as C++11 is the minimum supported since R 4.0.0, that
    specification can probably be removed.
  * R CMD INSTALL reports the compilers (and on macOS, the SDK) used,
    and this is copied to the output of R CMD check.
    Where a C++ standard is specified, it is reported.
  * R CMD check's 'checking compilation flags in Makevars' has been
    relaxed to accept the use of flags such as -std=f2008 in
    PKG_FFLAGS.
  * tools::buildVignettes() has a new argument skip, which is used by
    R CMD check to skip (and note) vignettes with unavailable
    \VignetteDepends (PR#18318).
  * New generic .AtNames() added to enable class-specific completions
    after @. The formerly internal function findMatches() is now
    exported, mainly for use in methods for .DollarNames() and
    .AtNames().
  DEPRECATED AND DEFUNCT:
  * default.stringsAsFactors() is defunct.
  * Calling as.data.frame.&lt;class&gt;() directly (for 12 atomic classes)
    is going to be formally deprecated, currently activated by
    setting the environment variable
    _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ to non-empty, which also
    happens in R CMD check --as-cran.
  BUG FIXES:
  * Hashed environments with sizes less than 5 can now grow.
    (Reported to R-devel by Duncan Garmonsway.)
  * as.character(&lt;Rd&gt;, deparse = TRUE) failed to re-escape curly
    braces in LaTeX-like text.  (Reported by Hadley Wickham in
    PR#18324.)
  * library() now passes its lib.loc argument when requiring Depends
    packages; reported (with fix) in PR#18331 by Mikael Jagan.
  * R CMD Stangle: improved message about 'Output' files.
  * head(x, n) and tail(x, n) now signal an error if n is not
    numeric, instead of incidentally "working" sometimes returning
    all of x.  Reported and discussed by Colin Fay, in PR#18357.
  * The "lm" method for summary() now gives the correct F-statistic
    when the model contains an offset.  Reported in PR#18008.
  * C() and `contrasts&lt;-`() now preserve factor level names when
    given a function object (as opposed a function name which did
    preserve names). Reported in PR#17616.
  * c(a = 1, 2)[[]] no longer matches 2 but rather signals a
    _classed_ error.  Reported and analysed by Davis Vaughan in
    PR#18367, a duplicate of PR#18004, by Jan Meis et al.  For
    consistency, NULL[[]] is also erroneous now.  x[[]] &lt;- v gives an
    error of the same class "MissingSubscriptError".
  * The relist() function of utils now supports NULL elements in the
    skeleton (PR#15854).
  * ordered(levels = *) (missing x) now works analogously to factor(,
    ordered=TRUE); reported (with fix) by Achim Zeileis in PR#18389.
  * User-defined Rd macro definitions can now span multiple lines,
    thanks to a patch from Duncan Murdoch. Previously, the Rd parser
    silently ignored everything after the first line.
  * Plain-text help (tools::Rd2txt()) now preserves an initial blank
    line for text following description list items.
  * tools::Rd2HTML() and tools::Rd2latex() no longer split \arguments
    and \value lists at Rd comments.
  * tools::Rd2latex() now correctly handles optional text outside
    \items of argument lists as well as bracketed text at the
    beginning of sections, e.g., \value{[NULL]}.
  * as.character(&lt;POSIXt&gt;) now behaves more in line with the methods
    for atomic vectors such as numbers, and is no longer influenced
    by options().  Ditto for as.character(&lt;Date&gt;).  The
    as.character() method gets arguments digits and OutDec with
    defaults _not_ depending on options().  Use of as.character(*,
    format = .) now warns.
  * Similarly, the as.character.hexmode() and *.octmode() methods
    also behave as good citizen methods and back compatibility option
    keepStr = TRUE.
  * The as.POSIXlt(&lt;POSIXlt&gt;) and as.POSIXct(&lt;POSIXct&gt;) default
    methods now do obey their tz argument, also in this case.
  * as.POSIXlt(&lt;Date&gt;) now does apply a tz (time zone) argument, as
    does as.POSIXct(); partly suggested by Roland Fuss on the R-devel
    mailing list.
  * as.Date.POSIXlt(x) now also works when the list components are of
    unequal length, aka "partially filled" or "ragged".
  * expand.model.frame() looked up variables in the wrong environment
    when applied to models fitted without data.  Reported in
    PR#18414.
  * time() now (also) uses the ts.eps = getOption("ts.eps") argument
    and thus by default rounds values very close to the start (or
    end) of a year.  Based on a proposal by Andre"i V. Kostyrka on
    R-help.
  * Printing of a factanal() result with just one factor and sort =
    TRUE now works regularly, fixing PR#17863 by Timothy Bates,
    thanks to the 'R Contributors' working group.
  * Printing 0-length objects of class "factor", "roman", "hexmode",
    "octmode", "person", "bibentry", or "citation" now prints
    something better, one of which fixes PR#18422, reported by
    Benjamin Feakins.
  * Sys.timezone() queries timedatectl only if systemd is loaded;
    addressing a report by Jan Gorecki in PR#17421.
  * The formula method of cor.test() had scoping problems when
    environment(formula) was not the calling environment; reported
    with a patch proposal by Mao Kobayashi in PR#18439.
  * attach() of an environment with active bindings now preserves the
    active bindings.  Reported by Kevin Ushey in PR#18425.
  * BLAS detection now works also with system-provided libraries not
    available as regular files.  This fixes detection of the
    Accelerate framework on macOS since Big Sur.  Reported by David
    Novgorodsky.
  * download.file() gives a helpful error message in case of an
    invalid download.file.method option, thanks to Colin Fay's report
    in PR#18455.
  * Sporadic crashes of Rterm when using completion have been fixed.
  * Rprof() is now more reliable.  A livelock in thread
    initialization with too short sampling interval has been fixed on
    macOS.  A deadlock in using the C runtime has been fixed on
    Windows.  A potential deadlock has been prevented on Unix.
  * Cursor placement in Rgui now works even after a fixed-width font
    is selected.
  * Mandatory options (options()) are now set on startup so that
    saving and restoring them always works (PR#18372).
  * Package installation, R CMD INSTALL or install.packages(*), now
    parses each of the &lt;pkg&gt;/R/*.R files individually instead of
    first concatenating and then parse()ing the large resulting file.
    This allows parser or syntax errors to be diagnosed with correct
    file names and line numbers, thanks to Simon Dedman's report and
    Bill Dunlap's patch in PR#17859.
    This _does_ require syntactically self contained R source files
    now, fixing another inadvertent bug.
  * predict.lm(&lt;model with offset&gt;) now finds the offset in the
    correct environment, thanks to Andr'e Gillibert's report and patch
    in PR#18456.
  * getInitial(&lt;formula&gt;) now finds the selfStart model in the
    correct environment.  (Reported by Ivan Krylov in PR#18368.)
  * Fix for possible segfault when using recently-added graphics
    features, such as gradients, clipping paths, masks, and groups
    with pdf(file=NULL).
  * class(m) &lt;- class(m) no longer changes a matrix m by adding a
    class _attribute_.
  * packageDate(pkg) now only warns once if there is no pkg.
  * When ts() creates a multivariate time series, "mts", it also
    inherits from "array" now, and is.mts() is documented _and_
    stricter.
  * Rd2txt() now preserves line breaks of \verb Rd content and from
    duplicated \cr.  The former also fixes the rendering of verbatim
    output from Rd \Sexpr in plain-text help.
  * uniroot(f, interval) should no longer wrongly converge _outside_
    the interval in some cases where abs(f(x)) == Inf for an x at the
    interval boundary, thanks to posts by Ben Bolker and Serguei
    Sokol on R-devel.
  * Vectorized alpha handling in palette functions such as in gray(),
    rainbow(), or hcl.colors() works correctly now, thanks to Achim
    Zeileis' report and patch in PR#18476.
  * Formatting and print()ing of bibentry objects has dropped the
    deprecated citation.bibtex.max argument, such that the bibtex
    argument's default for print.bibentry() depends directly on the
    citation.bibtex.max option, whereas in format.bibentry() the
    option no longer applies.
  * Attempting to use a character string naming a foreign function
    entry point in a foreign function call in a package will now
    signal an error if the packages has called R_forceSymbols to
    specify that symbols must be used.
  * An error in table() could permanently set options(warn=2)
    promoting all subsequent warnings to errors.
  * The sigma() function gave misleading results for binary GLMs.  A
    new method for objects of class "glm" returns the square root of
    the estimate of the dispersion parameter using the same
    calculation as summary.glm().
  * bs() and ns() in the (typical) case of automatic knot
    construction, when some of the supposedly inner knots coincide
    with boundary knots, now moves them inside (with a warning),
    building on PR#18442 by Ben Bolker.
  * R CMD on Windows now skips the site profile with --no-site-file
    and --vanilla even when R_PROFILE is set (PR#18512, from Kevin
    Ushey).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1686916800">- CHANGES IN R 4.3.1:
  C-LEVEL FACILITIES:
  * The C-level API version of R's integrate(), Rdqags() in Applic.h,
    now returns the correct number of integrand evaluations neval,
    fixing PR#18515 reported and diagnosed by Stephen Wade.
  * The C prototypes for LAPACK calls dspgv and dtptrs in
    R_exts/Lapack.h had one too many and one too few character length
    arguments - but this has not caused any known issues. To get the
    corrected prototypes, include
    [#]include &lt;Rconfig.h&gt; // for PR18534fixed
    [#]ifdef PR18534fixed
    [#] define usePR18534fix 1
    [#]endif
    [#]include &lt;R_exts/Lapack.h&gt;
    in your C/C++ code (PR#18534).
  INSTALLATION:
  * Many of the checks of esoteric Internet operations and those
    using unreliable external sites have been moved to a new target
    that is not run by default and primarily intended for the core
    developers.  To run them use
    cd tests; make test-Internet-dev
  BUG FIXES:
  * .S3methods(), typically called from methods(), again marks
    methods from package base as visible.
    Also, the visibility of non-base methods is again determined by
    the method's presence in search().
  * tools::Rdiff() is now more robust against invalid strings, fixing
    installation tests on Windows without Rtools installed
    (PR#18530).
  * Fix (new) bug in hcl.colors(2, *), by Achim Zeileis (PR#18523).
  * head(., &lt;illegal&gt;) and tail(..) now produce more useful "Error in
    ...." error messages, fixing PR#18362.
  * Package code syntax on Windows is checked in UTF-8 when UTF-8 is
    the native encoding.
  * na.contiguous(x) now also returns the first run, when it is at
    the beginning and there is a later one of the same length;
    reported to R-devel, including a fix, by Georgi Boshnakov.
    Further, by default, it modifies only an existing attr(*,"tsp")
    but otherwise no longer sets one.
  * chol(&lt;not pos.def&gt;, pivot = &lt;T|F&gt;) now gives a correct error or
    warning message (depending on pivot), thanks to Mikael Jagan's
    (PR#18541).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1699012800">- CHANGES IN R 4.3.2:
  NEW FEATURES:
  * The default initialization of the "repos" option from the
    repositories file at startup can be skipped by setting
    environment variable R_REPOSITORIES to NULL such that
    getOption("repos") is empty if not set elsewhere.
  * qr.X() is now an implicit S4 generic in methods.
  * iconv(to = "ASCII//TRANSLIT") is emulated using substitution on
    platforms which do not support it (notably Alpine Linux).  This
    should give a human-readable conversion in ASCII on all platforms
    (rather than NA_character_).
  * trans3d() gains options continuous and verbose addressing the
    problem of possible "wrap around" when projecting too long
    curves, as reported by Achim Zeileis in PR#18537.
  * tools::showNonASCII() has been rewritten to work better on macOS
    14 (which has a changed implementation of iconv()).
  * tiff(type = "quartz") (the default on macOS) now warns if
    compression is specified: it continues to be ignored.
  INSTALLATION on a UNIX-ALIKE:
  * There is some support for building with Intel's LLVM-based
    compilers on x86_64 Linux, such as (C) icx, (C++) ipcx and
    (Fortran) ifx from oneAPI 2023.x.y.
  * There is support for using LLVM's flang-new as the Fortran
    compiler from LLVM 16.0.x (preferably 17.0.0 or later).
  UTILITIES:
  * R CMD check reports the use of the Fortran 90 random number
    generator RANDOM_NUMBER() and the subroutines to initialize it.
    'Writing R Extensions' has example code to use R's RNGs from
    Fortran.
  BUG FIXES:
  * substr(x, n, L) &lt;- cc now works (more) correctly for multibyte
    UTF-8 strings x when L &gt; nchar(x), thanks to a report and patch
    by 'Architect 95'.
  * contrib.url(character()) now returns 0-length character() as
    documented, which also avoids spurious warnings from
    available.packages() et al. in the edge case of an empty vector
    of repository URLs.
  * readChar(., 4e8) no longer fails, thanks to Kodi Arfer's report
    (PR#18557).
  * lapply(&lt;list&gt;, as.data.frame) no longer warns falsely for some
    base vector components.
  * Communication between parent and child processes in the multicore
    part of parallel could fail on platforms that do not support an
    arbitrarily large payload in system functions read()/write() on
    pipes (seen on macOS where a restriction to INT_MAX bytes is
    documented, without doing a partial read unlike Linux). The
    payload is now split into 1Gb chunks to avoid that problem.
    (PR#18571)
  * qqplot(x,y, conf.level=.) gives better confidence bounds when
    length(x) != length(y), thanks to Alexander Ploner's report and
    patch proposal (PR#18557).
  * norm(&lt;0-length&gt;, "2") now gives zero instead of an error, as all
    the other norm types, thanks to Mikael Jagan's PR#18542.
  * Build-stage Rd macros \packageAuthor and \packageMaintainer now
    process Authors@R, fixing NA results when the package DESCRIPTION
    omits Author and Maintainer fields.
  * Formatting and printing complex numbers could give things like
    0.1683-0i because of rounding error: -0i is now replaced by +0i.
  * postscript() refused to accept a title comment containing the
    letter "W" (PR#18599).
  * isoreg(c(1,Inf)) signals an error instead of segfaulting, fixing
    PR#18603.
  * tiff(type = "Xlib") was only outputting the last page of
    multi-page plots.
  * tools::latexToUtf8() again knows about \~{n} and other letters
    with tilde, fixing a regression in R 4.3.0, and about \^{i} as an
    alternative to \^{\i} (similarly with other accents).
    Furthermore, LaTeX codes for accented I letters are now correctly
    converted, also fixing related mistakes in
    tools::encoded_text_to_latex().
  * tar(*, tar = "internal") no longer creates out-of-spec tar files
    in the very rare case of user or group names longer than 32
    bytes, fixing PR#17871 with thanks to Ivan Krylov.
  * When using the "internal" timezone datetime code, adding a
    fraction of a second no longer adds one second, fixing PR#16856
    from a patch by Ivan Krylov.
  * tools::checkRd() no longer produces spurious notes about
    "unnecessary braces" from multi-line Rd results of \Sexpr macros.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1709208000">- CHANGES IN R 4.3.3:
  NEW FEATURES:
  * iconv() now fixes up variant encoding names such as "utf8"
    case-insensitively.
  DEPRECATED AND DEFUNCT:
  * The legacy encoding = "MacRoman" is deprecated in pdf() and
    postscript(): support was incomplete in earlier versions of R.
  BUG FIXES:
  * Arguments are now properly forwarded to methods on S4 generics
    with ... in the middle of their formal arguments. This was broken
    for the case when a method introduced an argument but did not
    include ... in its own formals. Thanks to Herv'e Pag`es for the
    report PR#18538.
  * Some invalid file arguments to pictex(), postscript() and xfig()
    opened a file called NA rather than throw an error.  These
    included postscript(NULL) (which some people expected to work
    like pdf(NULL)).
  * Passing filename = NA to svg(), cairo_pdf(), cairo_ps() or the
    Cairo-based bitmap devices opened a file called NA: it now throws
    an error.
  * quartz(file = NA) opened a file called NA, including when used as
    a Quartz-based bitmap device.  It now gives an error.
  * rank(&lt;long vector&gt;) now works, fixing PR#18617, thanks to Ilia
    Kats.
  * seq.int() did not adequately check its length.out argument.
  * match(&lt;POSIXct&gt;, .) is correct again for differing time zones,
    ditto for "POSIXlt", fixing PR#18618 reported by Bastian Klein.
  * drop.terms(*, dropx = &lt;0-length&gt;) now works, fixing PR#18563 as
    proposed by Mikael Jagan.
  * drop.terms(*) keeps + offset(.) terms when it should, PR#18565,
    and drop.terms() no longer makes up a response, PR#18566, fixing
    both bugs thanks to Mikael Jagan.
  * getS3method("t", "test") no longer finds the t.test() function,
    fixing PR#18627.
  * pdf() and postscript() support for the documented Adobe encodings
    "Greek" and "Cyrilllic" was missing (although the corresponding
    Windows' codepages could be used).
  * Computations of glyph metric information for pdf() and
    postscript() did not take into account that transliteration could
    replace one character by two or more (only seen on macOS 14) and
    typically warned that the information was not known.
  * rank(x) no longer overflows during integer addition, when
    computing rank average for largish but not-yet long vector x,
    fixing PR#18630, thanks to Ilia Kats.
  * list.files() on Windows now returns also files with names longer
    that 260 bytes (the Windows limit is 260 characters).
    Previously, some file names particularly with 'East Asian'
    characters were omitted.
  * cov2cor(&lt;0 x 0&gt;) now works, fixing PR#18423 thanks to Mikael
    Jagan and Elin Waring.
  * cov2cor(&lt;negative diagonal&gt;) and similar now give one warning
    instead of two, with better wording, fixing PR#18424 thanks to
    Mikael Jagan.
  * tools:: startDynamicHelp() now ensures port is in proper range,
    fixing PR#18645.
  * pbeta(x, a,b) is correct now for x=0 or 1 in the boundary cases
    where a or b or both are 0, fixing PR#18672 thanks to Michael
    Fay.
  * pmatch(x, table) for large table, also called for data frame row
    selection, dfrm[nm, ], is now interruptible, fixing PR#18656.
  * predict(&lt;rank-deficient lm&gt;, newdata=*) fix computing of nbasis,
    see Russ Lenth's comment 29 in PR#16158.
  * Added a work-around for a bug in macOS 14.3.1 and higher which
    prevents R plots in the Quartz Cocoa device from updating on
    screen.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1713960000">- CHANGES IN R 4.4.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Startup banners, R --version, sessionInfo() and R CMD check no
    longer report (64-bit) as part of the platform as this is almost
    universal - the increasingly rare 32-bit platforms will still
    report (32-bit).
    On Windows, ditto for window titles.
  * is.atomic(NULL) now returns FALSE, as NULL is not an atomic
    vector.  Strict back-compatibility would replace is.atomic(foo)
    by (is.null(foo) || is.atomic(foo)) but should happen only
    sparingly.
  NEW FEATURES:
  * The confint() methods for "glm" and "nls" objects have been
    copied to the stats package.  Previously, they were stubs which
    called versions in package MASS. The MASS namespace is no longer
    loaded if you invoke (say) confint(glmfit).  Further, the "glm"
    method for profile() and the plot() and pairs() methods for class
    "profile" have been copied from MASS to stats.  (profile.nls()
    and plot.profile.nls() were already in stats.)
  * The confint() and profile methods for "glm" objects have gained a
    possibility to do profiling based on the Rao Score statistic in
    addition to the default Likelihood Ratio. This is controlled by a
    new test = argument.
  * The pairs() method for "profile" objects has been extended with a
    which = argument to allow plotting only a subset of the
    parameters.
  * The "glm" method for anova() computes test statistics and
    p-values by default, using a chi-squared test or an F test
    depending on whether the dispersion is fixed or free.  Test
    statistics can be suppressed by giving argument test a false
    logical value.
  * In setRepositories() the repositories can be set using their
    names via name = instead of index ind =.
  * methods() and .S3methods() gain a all.names option for the (rare)
    case where functions starting with a . should be included.
  * Serializations can now be interrupted (e.g., by Ctrl-C on a
    Unix-alike) if they take too long, e.g., from save.image(),
    thanks to suggestions by Ivan Krylov and others on R-devel.
  * New startup option --max-connections to set the maximum number of
    simultaneous connections for the session.  Defaults to 128 as
    before: allowed values up to 4096 (but resource limits may in
    practice restrict to smaller values).
  * R on Windows (since Windows 10 2004) now uses the new Segment
    Heap allocator. This may improve performance of some
    memory-intensive applications.
  * When R packages are built, typically by R CMD build &lt;pkg&gt;, the
    new --user=&lt;build_user&gt; option overrides the (internally
    determined) user name, currently Sys.info()["user"] or LOGNAME.
    This is a (modified) fulfillment of Will Landau's suggestion in
    PR#17530.
  * tools::testInstalledBasic() gets new optional arguments outDir
    and testSrcdir, e.g., allowing to use it in a &lt;builddir&gt; !=
    &lt;srcdir&gt; setup, and in standard "binary" Windows installation
  * if* a source tests/ folder is present.
  * range(&lt;DT_with_Inf&gt;, finite = TRUE) now work for objects of class
    "Date", "POSIXct", and "POSIXlt" with infinite entries,
    analogously to range.default(), as proposed by Davis Vaughan on
    R-devel.  Other range()-methods can make use of new function
    .rangeNum().
  * New .internalGenerics object complementing .S3PrimitiveGenerics,
    for documentation and low-level book-keeping.
  * grid() now invisibly returns the x- and y- coordinates at which
    the grid-lines were drawn.
  * norm(., type) now also works for complex matrices.
  * kappa(., exact = TRUE, norm = *) now works for all norms and also
    for complex matrices.  In symmetric / triangular cases, the new
    argument uplo = "U" | "L" allows the upper or lower triangular
    part to be specified.
  * memDecompress(type = "unknown") recognizes compression in the
    default 'zlib' format as used by memCompress(type = "gzip").
  * memCompress() and memDecompress() will use the libdeflate library
    (&lt;https://github.com/ebiggers/libdeflate&gt;) if installed.  This
    uses the same type of compression for type = "gzip" but is 1.5-2x
    faster than the system libz library on some common platforms: the
    speed-up may depend on the library version.
  * diff() for objects of class "Date", "POSIXct", and "POSIXlt"
    accepts a units argument passed via ....
  * Dynamic help now does a much better job of rendering package
    DESCRIPTION metadata.
  * Rprof() gains an event argument and support for elapsed (real)
    time profiling on Unix (PR#18076).
  * filled.contour() gains a key.border argument.
  * tools::update_pkg_po() gets arguments pot_make and mo_make for
    _not_ re-making the corresponding files, and additionally a
    verbose argument.
  * Hexadecimal string colour specifications are now accepted in
    short form, so, for example, we can use "#123", which is
    equivalent to "#112233".
    Thanks to MikeFC for the original idea and Ella Kaye, Malcolm
    Barrett, George Stagg, and Hanne Oberman for the patch.
  * Plain-text help shows \var markup by angle brackets.
  * The new experimental primitive function declare() is intended to
    eventually allow information about R code to be communicated to
    the interpreter, compiler, and code analysis tools. The syntax
    for declarations is still being developed.
  * Functions psmirnov(), qsmirnov() and rsmirnov() in package stats
    have had argument two.sided renamed to alternative, to take into
    account that the permutation distributions of the one-sided
    statistics can be different in the case of ties.  Consequence of
    PR#18582.
  * sort() is now an implicit S4 generic in methods.
  * Formatting and printing, format(z), print(z), of complex vectors
    z no longer zap relatively small real or imaginary parts to zero,
    fixing PR#16752.  This is an API change, as it was documented
    previously to round real and imaginary parts together on purpose,
    producing nicer looking output.  As mentioned, e.g. in the PR,
    this change is compatible with many other "R-like" programming
    environments.
    We have simplified the internal code and now basically format the
    real and imaginary parts independently of each other.
  * New experimental functions Tailcall() and Exec() to support
    writing stack-space-efficient recursive functions.
  * Where characters are attempted to be plotted by pdf(),
    postscript() and xfig() which are not in the selected 8-bit
    character set (most often Latin-1) and the R session is using a
    UTF-8 locale, the warning messages will show the UTF-8 character
    rather than its bytes and one dot will be substituted per
    character rather than per byte.  (Platforms whose iconv() does
    transliteration silently plot the transliteration.)
    In a UTF-8 locale some transliterations are now done with a
    warning (e.g., dashes and Unicode minus to hyphen, ligatures are
    expanded, permille (‰) is replaced by o/oo), although the OS may
    have got there first.  These are warnings as they will continue
    to be replaced by dots in earlier versions of R.
  * The matrix multiplication functions crossprod() and tcrossprod()
    are now also primitive and S3 generic, as %*% had become in R
    4.3.0.
  * source() and example() have a new optional argument catch.aborts
    which allows continued evaluation of the R code after an error.
  * The non-Quartz tiff() devices allow additional types of
    compression if supported by the platform's libtiff library.
  * The list of base and recommended package names is now provided by
    tools::standard_package_names().
  * cairo_pdf() and cairo_ps() default to onefile = TRUE to closer
    match pdf() and postscript().
  * New option catch.script.errors provides a documented way to catch
    errors and then continue in non-interactive use.
  * L %||% R newly in base is an expressive idiom for the phrases
    if(!is.null(L)) L else R or if(is.null(L)) R else L.
  * The return value from warnings() now always inherits from
    "warnings" as documented, now also in the case of no warnings
    where it previously returned NULL.
  * as.complex("1i") now returns 0 + 1i instead of NA with a warning.
  * z &lt;- c(NA, 1i) now keeps the imaginary part Im(z[1]) == 0, no
    longer coercing to NA_complex_.  Similarly, cumsum(z) correctly
    sums real and imaginary parts separately, i.e., without
    "crosstalk" in case of NAs.
  * On Alpine Linux iconv() now maps "latin2", "latin-2", "latin9"
    and "latin-9" to encoding names the OS knows about
    (case-insensitively).
  * iconv(sub = "Unicode") now always zero-pads to four (hex) digits,
    rather than to 4 or 8.  (This seems to have become the convention
    once Unicode restricted the number of Unicode points to 2^21 - 1
    and so will never need more than 6 digits.)
  * NCOL(NULL) now returns 0 instead of 1, for consistency with
    cbind().
  * The information for the Euro glyph missing from the Adobe .afm
    files for the Courier, Helvetica and Times families has been
    copied from their URW equivalents - this will improve vertical
    centring in the pdf() and postscript() devices.
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.12.0.  The changes are almost entirely cosmetic.
  * The included LAPACK sources have been updated to version 3.12.0
    and some further double-complex routines added.
  * There are new font families for the 2014--5 URW 2.0 fonts (see
    ?pdf) which are included in recent versions of Ghostscript.
    These have font widths for most Greek glyphs and a few others
    which were missing from the original versions (whose font
    families remain available for reproducibility, although
    Ghostscript-based viewers will render using the 2.0 versions).
  * Improve the large-n efficiency of as.matrix(&lt;dist&gt;), thanks an R
    contributors effort, notably by Tim Taylor and Heather Turner,
    see PR#18660.
  * The default and numeric methods of all.equal() get a check.class
    option.
  * zapsmall() gets new optional arguments, function mFUN and min.d,
    for extra flexibility; fulfills a wish in PR#18199.  Also, it is
    now an implicit S4 generic in package methods.
  * The Rd filter for aspell() gains an ignore argument.
  * New generic function sort_by(), primarily useful for the
    data.frame method which can be used to sort rows of a data frame
    by one or more columns.
  * The icence headers for the RPC code in src/extra/xdr have been
    updated to use the GPL-compatible licence published by Oracle
    America in 2010.
  * New function pkg2HTML() in tools to create single-page HTML
    reference manuals for R packages.
  * The byte code evaluator now uses less C stack space for recursive
    calls to byte-compiled functions. It also makes more of an effort
    to avoid allocations for scalar return values.
  * New completion option backtick (disabled by default) allows
    non-syntactic completions to be wrapped in backquotes. This is
    currently only useful for Jupyter notebooks via the IRkernel
    package, and may cause problems for other backends.
  INSTALLATION:
  * The parser has been updated to work with bison 3.8.2, which is
    now used for the pre-generated parsers in gram.c, file.c, and
    gramRd.c. A few parser error messages have changed, which may
    affect code that relies on exact messages.
  INSTALLATION on a UNIX-ALIKE:
  * System valgrind headers are now required to use configure option
  - -with-valgrind-instrumentation with value 1 or 2.
  * configure will warn if it encounters a 32-bit build, as that is
    nowadays almost untested.
  * Environment variable R_SYSTEM_ABI is no longer used and so no
    longer recorded in etc/Renviron (it was not on Windows and was
    only ever used when preparing package tools).
  * If the libdeflate library and headers are available, libdeflate
    rather than libz is used to (de)compress R objects in lazy-load
    databases.  Typically tasks spend up to 5% of their time on such
    operations, although creating lazy-data databases is one of the
    exceptions.
    This can be suppressed if the library is available by the
    configure option --without-libdeflate-compression.
  * configure option --enable-lto=check has not worked reliably since
    2019 and has been removed.
  * The minimum autoconf requirement for a maintainer build has been
    increased to autoconf 2.71.
    It is intended to increase this to 2.72 for R 4.5.0: the
    distributed configure file was generated using 2.72.
  * The minimum version requirement for an external LAPACK has been
    reduced to 3.9.0.
  * No default C++ compiler is set if no C++17 compiler is detected:
    there is no longer an automatic fallback to C++14 or C++11.
    Compilers from the last five years should have sufficient
    support: for others macros CXX and CXXSTD can be set in file
    config.site to provide a fallback if needed.
    The Objective-C++ compiler now by default uses the standard
    selected by R for C++ (currently C++17) rather than the default
    standard for the C++ compiler (which on macOS is still C++98).
  INSTALLATION on macOS:
  * A new configure option --with-newAccelerate makes use of Apple's
    'new' BLAS / LAPACK interfaces in their Accelerate framework.
    Those interfaces are only available in macOS 13.3 or later, and
    building requires SDK 13.3 or later (from the Command Line Tools
    or Xcode 14.3 or later).
    By default the option uses new Accelerate for BLAS calls: to also
    use it for LAPACK use option --with-newAccelerate=lapack.  The
    later interfaces provide LAPACK 3.9.1 rather than 3.2.1: 3.9.1 is
    from 2021-04 and does not include the improved algorithms
    introduced in LAPACK 3.10.0 (including for BLAS calls).
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools44, an update of the Rtools43 toolchain.  It is
    based on GCC 13 and newer versions of MinGW-W64, binutils and
    libraries (targeting 64-bit Intel CPUs).  R-devel can no longer
    be built using Rtools43 without changes.
  * Rtools44 has experimental support for 64-bit ARM (aarch64) CPUs
    _via_ the LLVM 17 toolchain using lld, clang/flang-new and
    libc++.
  UTILITIES:
  * R CMD check notes when S4-style exports are used without
    declaring a strong dependence on package methods.
  * tools::checkRd() (used by R CMD check) detects more problems with
    \Sexpr-based dynamic content, including bad nesting of \Sexprs
    and invalid arguments.
  * tools::checkRd() now reports Rd titles and section names ending
    in a period; this is ignored by R CMD check unless environment
    variable _R_CHECK_RD_CHECKRD_MINLEVEL_ is set to -5 or smaller.
  * R CMD check now notes Rd files without an \alias, as long
    documented in 'Writing R Extensions' §1.3.1.  The check for a
    missing \description has been moved from tools::checkRd() to
    tools::checkRdContents().
  * R CMD check now visits inst/NEWS.Rd and OS-specific man
    subdirectories when checking Rd files.
  * tools::checkDocFiles() and tools::checkRdContents() now also
    check internal Rd files by default, but "specially" (ignoring
    missing documentation of arguments).
  * R CMD Rdiff gets option --useEx.
  * R CMD check now warns on non-portable uses of Fortran KIND such
    as INTEGER(KIND=4) and REAL(KIND=8).
    To see the failing lines set environment variable
    _R_CHECK_FORTRAN_KIND_DETAILS_ to a true value.
  * When checking Rd files, R CMD check now notes some of the "lost
    braces" that tools::checkRd() finds.  Typical problems are Rd
    macros missing the initial backslash (e.g., code{...}), in-text
    set notation (e.g., {1, 2}, where the braces need escaping), and
    \itemize lists with \describe-style entries of the form
    \item{label}{description}.
  * R CMD INSTALL (and hence check) will compile C++ code with
  - DR_NO_REMAP if environment variable _R_CXX_USE_NO_REMAP_ is set
    to a true value.  It is planned that this will in future become
    the default for compiling C++.
  * The new built-in Rd macro \dontdiff{} can be used to mark example
    code whose output should be ignored when comparing check output
    to reference output (tests/Examples/&lt;pkg&gt;-Ex.Rout.save).  The
    \dontdiff tag, like \donttest, is _not_ shown on the rendered
    help page, so provides a clean alternative to ##
    IGNORE_RDIFF_(BEGIN|END) comments.
  * R CMD build when there is no NAMESPACE, now uses the recommended
    exportPattern("^[^.]"), instead of exporting everything.
  * R CMD check now warns about non-ASCII characters in the NAMESPACE
    file (in addition to R files). Such packages are not portable and
    may fail to install on some platforms.
  C-LEVEL FACILITIES:
  * Headers R_ext/Applic.h and R-ext/Linpack.h used to include
    R_ext/BLAS.h although this was undocumented and unneeded by their
    documented entry points.  They no longer do so.
  * New function R_missing(), factored out from do_missing(), used to
    fix PR#18579.
  * SEXP type S4SXP has been renamed to OBJSXP to support
    experimenting with alternative object systems.  The S4SXP value
    can still be used in C code but is now deprecated.  Based on
    contributions from the R Consortium's Object-Oriented Programming
    Working Group.
  * New function pow1p(x,y) for accurate (1+x)^y.
  * mkCharLenCE was incorrectly documented to take a size_t length
    but was implemented with int (and character strings in R are
    limited to 2^31 - 1 bytes).
  DEPRECATED AND DEFUNCT:
  * data() no longer handles zipped data from long-defunct (since R
    2.13.0) --use-zip-data installations.
  * The legacy graphics devices pictex() and xfig() are now
    deprecated.  They do not support recent graphics enhancements and
    their font handling is rudimentary. The intention is to retain
    them for historical interest as long as they remain somewhat
    functional.
  * Support for encoding = "MacRoman" has been removed from the pdf()
    and postscript() devices - this was a legacy encoding supporting
    classic macOS up to 2001 and no longer has universal libiconv
    support.
  * is.R() is deprecated as no other S dialect is known to be in use
    (and this could only identify historical dialects, not future
    ones).
    Further information on calls can be obtained by setting the
    environment variable _R_DEPRECATED_IS_R_ to error which turns the
    deprecation warning into an error and so by default gives a
    traceback.  (This is done by R CMD check --as-cran.)
  * UseMethod() no longer forwards local variables assigned in the
    generic function into method call environments before evaluating
    the method body. This makes method calls behave more like
    standard function calls and makes method code easier to analyze
    correctly.
  * The twelve as.data.frame.&lt;class&gt;() methods which were deprecated
    only via _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ and in R CMD
    check --as-cran are formally deprecated now in favour of calling
    as.data.frame() or as.data.frame.vector().  The deprecation
    "check" now works also when as.data.frame() is S4 generic thanks
    to Ivan Krylov.
  * The default method for the directional comparison operators &lt;, &gt;,
    &lt;=, and &gt;= now signals an error when one of the operands is a
    language object, i.e. a symbol or a call.
  * For terms.formula(), deprecate abb and neg.out arguments
    _formally_ in addition to just documenting it.
  BUG FIXES:
  * The methods package is more robust to not being attached to the
    search path.  More work needs to be done.
  * pairwise.t.test() misbehaved when subgroups had 0 DF for
    variance, even with pool.sd = TRUE.  (PR#18594 by Jack Berry).
  * Probability distribution functions [dpq]&lt;distrib&gt;(x, *), but also
    bessel[IKJY](x, .) now consistently preserve attributes(x) when
    length(x) == 0, e.g., for a 2 x 0 matrix, thanks to Karolis
    Koncevičius' report PR#18509.
  * Group "Summary" computations such as sum(1:3, 4, na.rm = 5, NA,
    7, na.rm = LL) now give an error instead of either 17 or NN for
    LL true or false, as proposed by Ivan Krylov on the R-devel
    mailing list.  (This also means it is now an error to specify
    na.rm more than once.)
  * as.complex(x) now returns complex(real = x, imaginary = 0) for
    _all_ numerical and logical x, notably also for NA or
    NA_integer_.
  * Directories are now omitted by file.copy(, recursive = FALSE) and
    in file.append() (PR#17337).
  * gsub() and sub() are now more robust to integer overflow when
    reporting errors caused by too large input strings (PR#18346).
  * Top-level handlers are now more robust to attempts to remove a
    handler whilst handlers are running (PR#18508).
  * The handling of Alt+F4 in dialogs created on Windows using
    GraphApp has been fixed (PR#13870).
  * density() more consistently computes grid values for the
    FFT-based convolution, following Robert Schlicht's analysis and
    proposal in PR#18337, correcting density values typically by a
    factor of about 0.999.  Argument old.coords = TRUE provides back
    compatibility.
  * palette.colors() gains a name argument that defaults to FALSE
    controlling whether the vector of colours that is returned has
    names (where possible).  PR#18529.
  * tools::xgettext() no longer extracts the (non-translatable) class
    names from warningCondition and errorCondition calls.
  * S3method(&lt;gen&gt;, &lt;class&gt;, &lt;func&gt;) in the NAMESPACE file now works
    (again) when &lt;func&gt; is visible from the namespace, e.g.,
    imported, or in base.
  * getParseData(f) now also works for a function defined in the
    first of several &lt;pkg&gt;/R/*.R source files, thanks to Kirill
    Müller's report and Duncan Murdoch's patch in PR#16756.
  * Rd \Sexpr macros with nested #ifdef conditionals were not
    processed.
  * A non-blocking connection with non-default encoding (such as a
    socket) now correctly returns from readLines() after new data has
    arrived also when its EOF had been reached previously.  Thanks to
    Peter Meilstrup's report on R-devel and Ivan Krylov's report and
    patch proposal in PR#18555.
  * tools::checkRdContents() failed to detect empty argument
    descriptions when they spanned multiple lines, including those
    generated by prompt().  These cases are now noted by R CMD check.
  * Plain-text help no longer outputs spurious colons in the
    arguments list (for multi-line \item labels in the Rd source).
  * kappa() and rcond() work correctly in more cases; kappa(., norm =
    "2") now warns that it computes the 1-norm with (default) exact =
    FALSE; prompted by Mikael Jagan's quite comprehensive PR#18543.
  * Rd skeletons generated by prompt() or promptData() now use a
    dummy title (so R CMD build works).  tools::checkRdContents() has
    been updated to detect such template leftovers, including from
    promptPackage().
  * When S4 method dispatch fails because no method was found, the
    error message now includes the signature argument names; thanks
    to Michael Chirico's proposal on the R-devel list.
  * withAutoprint({ .. }) now preserves srcrefs previously lost,
    thanks to Andrew Simmons' report plus fix in PR#18572.
  * transform.data.frame() no longer adjusts names; in particular,
    untransformed variables are kept as-is, including those with
    syntactically invalid names (PR#17890).
  * The keep.source option for Rd \Sexpr blocks is no longer ignored.
  * The formula methods for t.test() and wilcox.test() now catch when
    paired is passed, addressing PR#14359; use Pair(x1, x2) ~ 1 for a
    paired test.
  * The level reported in the browser prompt was often too large. It
    now shows the number of browser contexts on the stack.
  * For cbind() and rbind(), the optional deparse.level argument is
    now properly passed to methods, thanks to Mikael Jagan's PR#18579
    and comments there.
  * Some error and warning messages for large ('long vector')
    matrix(v, nr, nc) and dim(m) &lt;- d are now correct about sizes,
    using long long formatting, fixing PR#18612 (and more) reported
    by Mikael Jagan.
  * readChar(useBytes = TRUE) now terminates strings even when the
    underlying connection uses extra spaces in the input buffer.
    This fixes problems with extra garbage seen with gzip
    connections, PR#18605.
  * Named capture in PCRE regular expressions now works also with
    more than 127 named groups (PR#18588).
  * Datetime functions are now robust against long jumps when dealing
    with internal time zone changes.  This avoids confusing warnings
    about an invalid time zone, previously triggered by turning
    warnings into errors or handling them via tryCatch (PR#17966,
    PR#17780).
  * Datetime functions now restore even an empty TZ environment
    variable after internal time zone changes (PR#17724).  This makes
    results of datetime functions with this (typically unintentional)
    setting more predictable.
  * drop.terms(*) now drops response as by default, keep.response =
    FALSE, fixing PR#18564 thanks to Mikael Jagan.
  * dummy.coef(.) now also works for lm()-models with character
    categorical predictor variables rather than factor ones, fixing
    PR#18635 reported by Jinsong Zhao.
  * formals(f) &lt;- formals(f) now also works for a function w/o
    arguments and atomic _constant_ body(f).
  * Correct as.function(&lt;invalid list&gt;, .)'s error message.
  * removeSource() is yet more thorough in finding and removing
    "srcref" and the other source references from parsed R language
    chunks, fixing PR#18638 thanks to Andrew Simmons.
  * dgeom() is more accurate now, notably when its result is very
    small, fixing PR#18642 thanks to the proposal of Morten Welinder,
    also improving other instances where C level binom_raw(x, n, ..)
    has x == 0 or x== n.
  * warning() with options(warn = 1) has improved output for
    multi-line messages.
  * axis.Date() and axis.POSIXct() now respect the par("lab") setting
    for the number of pretty() intervals.
  * Comparisons for language objects (which are based on deparsing)
    are now more careful about using accurate deparsed results
    (PR#18676).
  * Plain-text help (Rd2txt) now correctly preserves blank lines
    following single-line \dontrun code.
  * &lt;POSIXlt&gt;[*] no longer sets wrong "balanced" attribute, fixing
    PR#18681 thanks to Mikael Jagan.
  * str(&lt;classed-call&gt;) now deparses the call as expected, fixing
    PR#18684, reported by Dave Slager.
  * In Rd examples, code following the closing brace of a \dontrun,
    \dontshow or \donttest tag on the same line is no longer skipped
    when R CMD check runs the examples.
  * as.data.frame(matrix(*, ncol=0)) now gets valid names() and
    colnames(); reported by Davis Vaughan on the R-devel list.
  * Internal Mathlib function stirlerr(n) is now almost fully
    (52-bit) accurate for all n &gt;= ~5.9 and more accurate also in the
    range 1 -- 5.9.  This entails small ("after 12th decimal")
    changes in density functions, e.g., dgamma() in _some_ regions of
    their support.  The fix was partly prompted by Morten Welinder's
    PR#18640.
  * Numbers like 9876543.2 are now considered non-integer by Mathlib
    internal R_nonint(), amending original fix of PR#15734.
  * Rd comment lines no longer cause broken paragraphs in the
    rendered PDF and plain-text help. In code blocks, pure comment
    lines (starting with %) no longer produce an empty line.
  * xtabs(Freq ~ .) now consistently defaults to na.action = na.pass,
    using na.rm = FALSE (added as an argument) when summing over Freq
    (PR#17770).
  * tools::testInstalledPackage() is no longer silent about failures
    from running examples or tests and its return code no longer
    ignores failures from checking vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1718366400">- CHANGES IN R 4.4.1:
  C-LEVEL FACILITIES:
  * Functions R_atof and R_strtod declared in header R_ext/Utils.h
    are now documented in 'Writing R Extensions' and so formally part
    of the API.
  * The non-API entry points Rf_setSVector, Rf_StringFalse,
    Rf_StringTrue and Rf_isBlankString have been added to those
    reported by R CMD check.
  * The new function Rf_allocLang is now available. This provides an
    alternative to the idiom of calling Rf_allocList followed by
    SET_TYPEOF.
  UTILITIES:
  * R CMD check now reports as warnings what gfortran calls 'Fortran
    2018 deleted features', all of which have long been marked as
    'obsolescent' and some of which were deleted in Fortran 2008 or
    earlier.  Fortran compilers are no longer required to support
    these.
  BUG FIXES:
  * as.numeric(), scan(), type.convert() and other places which use
    the internal C function R_strtod now require a _non-empty_ digit
    sequence in a decimal or binary exponent.  This aligns with the
    C/POSIX standard for strtod and with ?NumericConstants.
  * as.data.frame(m, make.names=NA) now works correctly for a matrix
    m with NA's in row names.
  * The error message from &lt;POSIXlt&gt;[["hour"]] and similar now
    mentions *[[, "hour"]], as wished for in PR#17409 and proposed by
    Michael Chirico.
  * qbinom() and potentially qpois(), qnbinom(), no longer sometimes
    fail accurate inversion (of pbinom(), etc), thanks to Christopher
    Chang's report and patch in PR#18711.
  * The internal help server on Windows can again serve requests sent
    in quick succession, fixing a regression in R 4.4.0.
  * debugcall(&lt;S3Generic&gt;()) now also works when a corresponding
    S4-generic version is in the methods cache (PR#18143).
  * Package tools' toTitleCase(ch0) now returns character(0) when ch0
    is of zero length; fixing PR#18724, reported by David Hugh Jones.
  * R CMD check is no longer broken (without a check result and no
    explanation in 00check.log) for a package which declares an
    invalid VignetteBuilder in DESCRIPTION but has no vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1730376000">- CHANGES IN R 4.4.2:
  C-LEVEL FACILITIES:
  * The S-compatibility macros F77_COM and F77_COMDECL defined in
    header R_ext/RS.h are deprecated and will be removed shortly.  We
    could find no record of their use.
  BUG FIXES:
  * Mathlib function lgammacor(x) no longer warns about underflow to
    zero for large x.
  * Text widths and heights were incorrectly reported by the Quartz
    device if the drawing context didn't exist yet (typically when
    drawing off-screen to a window that is yet to appear, see
    PR#18591).
  * The Quartz device could segfault in cases where paths with spaces
    are used in the new glyph drawing API.  Thanks to Tomek
    Gieorgijewski (PR#18758).
  * On macOS in R CRAN builds, it is again possible to read
    little-endian UTF-16 text with a BOM from a connection using
    encoding="UTF-16".  Users building R from source should avoid
    using the system libiconv in macOS 14.1 and later.
  * methods' internal .requirePackage() now re-enables primitive
    method dispatch when needed; thanks to Ivan Krylov for
    demystifying CRAN package check failures on the R-devel mailing
    list.</changelog>
</package>
<package pkgid="2639cddeebb355909b1fd867aa94257b51a941b70a1b388d36fd9e4f82302cac40b2688f943ccfc5d57f5eeb9ddba1478f31c57e00824b70fccd25fea1ce55d1" name="R-mgcv" arch="x86_64">
  <version epoch="0" ver="1.9.1" rel="51.0.2.2.sr20241103"/>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1620302400">- To get in sync with d:l:R:autoCRAN the Matrix package's split
  in -devel was reversed.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339200">- improved spec file according to comments of dimstar in
  https://build.opensuse.org/request/show/892685</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339201">- CHANGES IN R 4.1.0:
  FUTURE DIRECTIONS:
  * It is planned that the 4.1.x series will be the last to support
    32-bit Windows, with production of binary packages for that
    series continuing until early 2023.
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Data set esoph in package datasets now provides the correct
    numbers of controls; previously it had the numbers of cases added
    to these.  (Reported by Alexander Fowler in PR#17964.)
  NEW FEATURES:
  * www.omegahat.net is no longer one of the repositories known by
    default to setRepositories().  (Nowadays it only provides source
    packages and is often unavailable.)
  * Function package_dependencies() (in package tools) can now use
    different dependency types for direct and recursive dependencies.
  * The checking of the size of tarball in R CMD check --as-cran
    &lt;pkg&gt; may be tweaked via the new environment variable
    _R_CHECK_CRAN_INCOMING_TARBALL_THRESHOLD_, as suggested in
    PR#17777 by Jan Gorecki.
  * Using c() to combine a factor with other factors now gives a
    factor, an ordered factor when combining ordered factors with
    identical levels.
  * apply() gains a simplify argument to allow disabling of
    simplification of results.
  * The format() method for class "ftable" gets a new option justify.
    (Suggested by Thomas Soeiro.)
  * New ...names() utility.  (Proposed by Neal Fultz in PR#17705.)
  * type.convert() now warns when its as.is argument is not
    specified, as the help file always said it _should_.  In that
    case, the default is changed to TRUE in line with its change in
    read.table() (related to stringsAsFactor) in R 4.0.0.
  * When printing list arrays, classed objects are now shown _via_
    their format() value if this is a short enough character string,
    or by giving the first elements of their class vector and their
    length.
  * capabilities() gets new entry "Rprof" which is TRUE when R has
    been configured with the equivalent of --enable-R-profiling (as
    it is by default).  (Related to Michael Orlitzky's report
    PR#17836.)
  * str(xS4) now also shows extraneous attributes of an S4 object
    xS4.
  * Rudimentary support for vi-style tags in rtags() and R CMD rtags
    has been added.  (Based on a patch from Neal Fultz in PR#17214.)
  * checkRdContents() is now exported from tools; it and also
    checkDocFiles() have a new option chkInternal allowing to check
    Rd files marked with keyword "internal" as well.  The latter can
    be activated for R CMD check via environment variable
    _R_CHECK_RD_INTERNAL_TOO_.
  * New functions numToBits() and numToInts() extend the raw
    conversion utilities to (double precision) numeric.
  * Functions URLencode() and URLdecode() in package utils now work
    on vectors of URIs.  (Based on patch from Bob Rudis submitted
    with PR#17873.)
  * path.expand() can expand ~user on most Unix-alikes even when
    readline is not in use.  It tries harder to expand ~, for example
    should environment variable HOME be unset.
  * For HTML help (both dynamic and static), Rd file links to help
    pages in external packages are now treated as references to
    topics rather than file names, and fall back to a file link only
    if the topic is not found in the target package. The earlier rule
    which prioritized file names over topics can be restored by
    setting the environment variable _R_HELP_LINKS_TO_TOPICS_ to a
    false value.
  * c() now removes NULL arguments before dispatching to methods,
    thus simplifying the implementation of c() methods, _but_ for
    back compatibility keeps NULL when it is the first argument.
    (From a report and patch proposal by Lionel Henry in PR#17900.)
  * Vectorize()'s result function's environment no longer keeps
    unneeded objects.
  * Function ...elt() now propagates visibility consistently with
    ..n.  (Thanks to Lionel Henry's PR#17905.)
  * capture.output() no longer uses non-standard evaluation to
    evaluate its arguments.  This makes evaluation of functions like
    parent.frame() more consistent.  (Thanks to Lionel Henry's
    PR#17907.)
  * packBits(bits, type="double") now works as inverse of
    numToBits().  (Thanks to Bill Dunlap's proposal in PR#17914.)
  * curlGetHeaders() has two new arguments, timeout to specify the
    timeout for that call (overriding getOption("timeout")) and TLS
    to specify the minimum TLS protocol version to be used for
    https:// URIs (_inter alia_ providing a means to check for sites
    using deprecated TLS versions 1.0 and 1.1).
  * For nls(), an optional constant scaleOffset may be added to the
    denominator of the relative offset convergence test for cases
    where the fit of a model is expected to be exact, thanks to a
    proposal by John Nash.  nls(*, trace=TRUE) now also shows the
    convergence criterion.
  * Numeric differentiation _via_ numericDeriv() gets new optional
    arguments eps and central, the latter for taking central divided
    differences.  The latter can be activated for nls() via
    nls.control(nDcentral = TRUE).
  * nls() now passes the trace and control arguments to getInitial(),
    notably for all self-starting models, so these can also be fit in
    zero-noise situations via a scaleOffset.  For this reason, the
    initial function of a selfStart model must now have ... in its
    argument list.
  * bquote(splice = TRUE) can now splice expression vectors with
    attributes: this makes it possible to splice the result of
    parse(keep.source = TRUE).  (Report and patch provided by Lionel
    Henry in PR#17869.)
  * textConnection() gets an optional name argument.
  * get(), exists(), and get0() now signal an error if the first
    argument has length greater than 1.  Previously additional
    elements were silently ignored.  (Suggested by Antoine Fabri on
    R-devel.)
  * R now provides a shorthand notation for creating functions, e.g.
    \(x) x + 1 is parsed as function(x) x + 1.
  * R now provides a simple native forward pipe syntax |&gt;.  The
    simple form of the forward pipe inserts the left-hand side as the
    first argument in the right-hand side call.  The pipe
    implementation as a syntax transformation was motivated by
    suggestions from Jim Hester and Lionel Henry.
  * all.equal(f, g) for functions now by default also compares their
    environment(.)s, notably via new all.equal method for class
    function.  Comparison of nls() fits, e.g., may now need
    all.equal(m1, m2, check.environment = FALSE).
  * .libPaths() gets a new option include.site, allowing to _not_
    include the site library.  (Thanks to Dario Strbenac's suggestion
    and Gabe Becker's PR#18016.)
  * Lithuanian translations are now available.  (Thanks to Rimantas
    Zakauskas.)
  * names() now works for DOTSXP objects.  On the other hand, in
    R-lang, the R language manual, we now warn against relying on the
    structure or even existence of such dot-dot-dot objects.
  * all.equal() no longer gives an error on DOTSXP objects.
  * capabilities("cairo") now applies only to the file-based devices
    as it is now possible (if very unusual) to build R with Cairo
    support for those but not for X11().
  * There is optional support for tracing the progress of
    loadNamespace() - see its help.
  * (Not Windows.)  l10n_info() reports an additional element, the
    name of the encoding as reported by the OS (which may differ from
    the encoding part (if any) of the result from
    Sys.getlocale("LC_CTYPE").
  * New function gregexec() which generalizes regexec() to find _all_
    disjoint matches and well as all substrings corresponding to
    parenthesized subexpressions of the given regular expression.
    (Contributed by Brodie Gaslam.)
  * New function charClass() in package utils to query the
    wide-character classification functions in use (such as
    iswprint).
  * The names of quantile()'s result no longer depend on the global
    getOption("digits"), but quantile() gets a new optional argument
    digits = 7 instead.
  * grep(), sub(), regexp and variants work considerably faster for
    long factors with few levels.  (Thanks to Michael Chirico's
    PR#18063.)
  * Provide grouping of x11() graphics windows within a window
    manager such as Gnome or Unity; thanks to a patch by Ivan Krylov
    posted to R-devel.
  * The split() method for class data.frame now allows the f argument
    to be specified as a formula.
  * sprintf now warns on arguments unused by the format string.
  * New palettes "Rocket" and "Mako" for hcl.colors() (approximating
    palettes of the same name from the 'viridisLite' package).
    Contributed by Achim Zeileis.
  * The base environment and its namespace are now locked (so one can
    no longer add bindings to these or remove from these).
  * Rterm handling of multi-byte characters has been improved,
    allowing use of such characters when supported by the current
    locale.
  * Rterm now accepts ALT+ +xxxxxxxx sequences to enter Unicode
    characters as hex digits.
  * Environment variable LC_ALL on Windows now takes precedence over
    LC_CTYPE and variables for other supported categories, matching
    the POSIX behaviour.
  * duplicated() and anyDuplicated() are now optimized for integer
    and real vectors that are known to be sorted via the ALTREP
    framework. Contributed by Gabriel Becker via PR#17993.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 14
    and so packages that provide graphics devices should be
    reinstalled.
  * Graphics devices should now specify deviceVersion to indicate
    what version of the graphics engine they support.
  * Graphics devices can now specify deviceClip.  If TRUE, the
    graphics engine will never perform any clipping of output itself.
    The clipping that the graphics engine does perform (for both
    canClip = TRUE and canClip = FALSE) has been improved to avoid
    producing unnecessary artifacts in clipped output.
  * The grid package now allows gpar(fill) to be a linearGradient(),
    a radialGradient(), or a pattern().  The viewport(clip) can now
    also be a grob, which defines a clipping path, and there is a new
    viewport(mask) that can also be a grob, which defines a mask.
    These new features are only supported so far on the Cairo-based
    graphics devices and on the pdf() device.
  * (Not Windows.)  A warning is given when a Cairo-based type is
    specified for a png(), jpeg(), tiff() or bmp() device but Cairo
    is unsupported (so type = "Xlib" is tried instead).
  * grSoftVersion() now reports the versions of FreeType and
    FontConfig if they are used directly (not _via_ Pango), as is
    most commonly done on macOS.
  C-LEVEL FACILITIES:
  * The _standalone_ libRmath math library and R's C API now provide
    log1pexp() again as documented, and gain log1mexp().
  INSTALLATION on a UNIX-ALIKE:
  * configure checks for a program pkgconf if program pkg-config is
    not found.  These are now only looked for on the path (like
    almost all other programs) so if needed specify a full path to
    the command in PKG_CONFIG, for example in file config.site.
  * C99 function iswblank is required - it was last seen missing ca
    2003 so the workaround has been removed.
  * There are new configure options --with-internal-iswxxxxx,
  - -with-internal-towlower and --with-internal-wcwidth which allows
    the system functions for wide-character classification,
    case-switching and width (wcwidth and wcswidth) to be replaced by
    internal ones.  The first has long been used on macOS, AIX (and
    Windows) but this enables it to be unselected there and selected
    for other platforms (it is the new default on Solaris).  The
    second is new in this version of R and is selected by default on
    macOS and Solaris.  The third has long been the default and
    remains so as it contains customizations for East Asian
    languages.
    System versions of these functions are often minimally
    implemented (sometimes only for ASCII characters) and may not
    cover the full range of Unicode points: for example Solaris (and
    Windows) only cover the Basic Multilingual Plane.
  * Cairo installations without X11 are more likely to be detected by
    configure, when the file-based Cairo graphics devices will be
    available but not X11(type = "cairo").
  * There is a new configure option --with-static-cairo which is the
    default on macOS.  This should be used when only static cairo
    (and where relevant, Pango) libraries are available.
  * Cairo-based graphics devices on platforms without Pango but with
    FreeType/FontConfig will make use of the latter for font
    selection.
  LINK-TIME OPTIMIZATION on a UNIX-ALIKE:
  * Configuring with flag --enable-lto=R now also uses LTO when
    installing the recommended packages.
  * R CMD INSTALL and R CMD SHLIB have a new flag --use-LTO to use
    LTO when compiling code, for use with R configured with
  - -enable-lto=R.  For R configured with --enable-lto, they have
    the new flag --no-use-LTO.
    Packages can opt in or out of LTO compilation _via_ a UseLTO
    field in the DESCRIPTION file.  (As usual this can be overridden
    by the command-line flags.)
  BUILDING R on Windows:
  * for GCC &gt;= 8, FC_LEN_T is defined in config.h and hence character
    lengths are passed from C to Fortran in _inter alia_ BLAS and
    LAPACK calls.
  * There is a new text file src/gnuwin32/README.compilation, which
    outlines how C/Fortran code compilation is organized and
    documents new features:
  * R can be built with Link-Time Optimization with a suitable
    compiler - doing so with GCC 9.2 showed several
    inconsistencies which have been corrected.
  * There is support for cross-compiling the C and Fortran code
    in R and standard packages on suitable (Linux) platforms.
    This is mainly intended to allow developers to test later
    versions of compilers - for example using GCC 9.2 or 10.x has
    detected issues that GCC 8.3 in Rtools40 does not.
  * There is experimental support for cross-building R packages
    with C, C++ and/or Fortran code.
  * The R installer can now be optionally built to support a single
    architecture (only 64-bit or only 32-bit).
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++14 where
    available (which it is on all currently checked platforms): if
    not (as before) C++11 is used if available otherwise C++ is not
    supported.
    Packages which specify C++11 will still be installed using C++11.
    C++14 compilers may give deprecation warnings, most often for
    std::random_shuffle (deprecated in C++14 and removed in C++17).
    Either specify C++11 (see 'Writing R Extensions') or modernize
    the code and if needed specify C++14.  The latter has been
    supported since R 3.4.0 so the package's DESCRIPTION would need
    to include something like
    Depends: R (&gt;= 3.4)
  PACKAGE INSTALLATION on Windows:
  * R CMD INSTALL and R CMD SHLIB make use of their flag --use-LTO
    when the LTO_OPT make macro is set in file etc/${R_ARCH}/Makeconf
    or in a personal/site Makevars file.  (For details see 'Writing R
    Extensions' SS4.5.)
    This provides a valuable check on code consistency.  It does work
    with GCC 8.3 as in Rtools40, but that does not detect everything
    the CRAN checks with current GCC do.
  PACKAGE INSTALLATION on macOS:
  * The default personal library directory on builds with
  - -enable-aqua (including CRAN builds) now differs by CPU type,
    one of
    ~/Library/R/x86_64/x.y/library
    ~/Library/R/arm64/x.y/library
    This uses the CPU type R (and hence the packages) were built for,
    so when a x86_64 build of R is run under Rosetta emulation on an
    arm64 Mac, the first is used.
  UTILITIES:
  * R CMD check can now scan package functions for bogus return
    statements, which were possibly intended as return() calls (wish
    of PR#17180, patch by Sebastian Meyer). This check can be
    activated via the new environment variable
    _R_CHECK_BOGUS_RETURN_, true for --as-cran.
  * R CMD build omits tarballs and binaries of previous builds from
    the top-level package directory.  (PR#17828, patch by Sebastian
    Meyer.)
  * R CMD check now runs sanity checks on the use of LazyData, for
    example that a data directory is present and that
    LazyDataCompression is not specified without LazyData and has a
    documented value.  For packages with large LazyData databases
    without specifying LazyDataCompression, there is a reference to
    the code given in 'Writing R Extensions' SS1.1.6 to test the
    choice of compression (as in all the CRAN packages tested a
    non-default method was preferred).
  * R CMD build removes LazyData and LazyDataCompression fields from
    the DESCRIPTION file of packages without a data directory.
  ENCODING-RELATED CHANGES:
  * The parser now treats \Unnnnnnnn escapes larger than the upper
    limit for Unicode points (\U10FFFF) as an error as they cannot be
    represented by valid UTF-8.
    Where such escapes are used for outputting non-printable
    (including unassigned) characters, 6 hex digits are used (rather
    than 8 with leading zeros).  For clarity, braces are used, for
    example \U{0effff}.
  * The parser now looks for non-ASCII spaces on Solaris (as
    previously on most other OSes).
  * There are warnings (including from the parser) on the use of
    unpaired surrogate Unicode points such as \uD834.  (These cannot
    be converted to valid UTF-8.)
  * Functions nchar(), tolower(), toupper() and chartr() and those
    using regular expressions have more support for inputs with a
    marked Latin-1 encoding.
  * The character-classification functions used (by default) to
    replace the system iswxxxxx functions on Windows, macOS and AIX
    have been updated to Unicode 13.0.0.
    The character-width tables have been updated to include new
    assignments in Unicode 13.0.0.
  * The code for evaluating default (extended) regular expressions
    now uses the same character-classification functions as the rest
    of R (previously they differed on Windows, macOS and AIX).
  * There is a build-time option to replace the system's
    wide-character wctrans C function by tables shipped with R: use
    configure option --with-internal-towlower or (on Windows)
  - DUSE_RI18N_CASE in CFLAGS when building R.  This may be needed
    to allow tolower() and toupper() to work with Unicode characters
    beyond the Basic Multilingual Plane where not supported by system
    functions (e.g. on Solaris where it is the new default).
  * R is more careful when truncating UTF-8 and other multi-byte
    strings that are too long to be printed, passed to the system or
    libraries or placed into an internal buffer.  Truncation will no
    longer produce incomplete multibyte characters.
  DEPRECATED AND DEFUNCT:
  * Function plclust() from the package stats and
    package.dependencies(), pkgDepends(), getDepList(),
    installFoundDepends(), and vignetteDepends() from package tools
    are defunct.
  * Defunct functions checkNEWS() and readNEWS() from package tools
    and CRAN.packages() from utils have been removed.
  * R CMD config CXXCPP is defunct (it was deprecated in R 3.6.2).
  * parallel::detectCores() drops support for Irix (retired in 2013).
  * The LINPACK argument to chol.default(), chol2inv(),
    solve.default() and svd() has been defunct since R 3.1.0.  It was
    silently ignored up to R 4.0.3 but now gives an error.
  * Subsetting/indexing, such as ddd[*] or ddd$x on a DOTSXP
    (dot-dot-dot) object ddd has been disabled; it worked by accident
    only and was undocumented.
  BUG FIXES:
  * Many more C-level allocations (mainly by malloc and strdup) are
    checked for success with suitable alternative actions.
  * Bug fix for replayPlot(); this was turning off graphics engine
    display list recording if a recorded plot was replayed in the
    same session.  The impact of the bug became visible if resize the
    device after replay OR if attempted another savePlot() after
    replay (empty display list means empty screen on resize or empty
    saved plot).
  * R CMD check etc now warn when a package exports non-existing S4
    classes or methods, also in case of no "methods" presence.
    (Reported by Alex Bertram; reproducible example and patch by
    Sebastian Meyer in PR#16662.)
  * boxplot() now also accepts calls for labels such as ylab, the
    same as plot().  (Reported by Marius Hofert.)
  * The help page for xtabs() now correctly states that addNA is
    setting na.action = na.pass among others.  (Reported as PR#17770
    by Thomas Soeiro.)
  * The R CMD check &lt;pkg&gt; gives a longer and more comprehensible
    message when DESCRIPTION misses dependencies, e.g., in Imports:.
    (Thanks to the contributors of PR#17179.)
  * update.default() now calls the generic update() on the formula to
    work correctly for models with extended formulas.  (As reported
    and suggested by Neal Fultz in PR#17865.)
  * The horizontal position of leaves in a dendrogram is now correct
    also with center = FALSE.  (PR#14938, patch from Sebastian
    Meyer.)
  * all.equal.POSIXt() no longer warns about and subsequently ignores
    inconsistent "tzone" attributes, but describes the difference in
    its return value (PR#17277).  This check can be disabled _via_
    the new argument check.tzone = FALSE as suggested by Sebastian
    Meyer.
  * as.POSIXct() now populates the "tzone" attribute from its tz
    argument when x is a logical vector consisting entirely of NA
    values.
  * x[[2^31]] &lt;- v now works.  (Thanks to the report and patch by
    Suharto Anggono in PR#17330.)
  * In log-scale graphics, axis() ticks and label positions are now
    computed more carefully and symmetrically in their range,
    typically providing _more_ ticks, fulfilling wishes in PR#17936.
    The change really corresponds to an improved axisTicks() (package
    grDevices), potentially influencing grid and lattice, for
    example.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now correct to at
    least five digits where it was catastrophically wrong,
    previously.
  * sum(df) and similar "Summary"- and "Math"-group member functions
    now work for data frames df with logical columns, notably also of
    zero rows.  (Reported to R-devel by Martin "b706".)
  * unsplit() had trouble with tibbles due to unsound use of rep(NA,
    len)-indexing, which should use NA_integer_ (Reported to R-devel
    by Mario Annau.)
  * pnorm(x, log.p = TRUE) underflows to -Inf slightly later.
  * show(&lt;hidden S4 generic&gt;) prints better and without quotes for
    non-hidden S4 generics.
  * read.table() and relatives treated an "NA" column name as missing
    when check.names = FALSE PR#18007.
  * Parsing strings containing UTF-16 surrogate pairs such as
    "\uD834\uDD1E" works better on some (uncommon) platforms.
    sprintf("%X", utf8ToInt("\uD834\uDD1E")) should now give "1D11E"
    on all platforms.
  * identical(x,y) is no longer true for differing DOTSXP objects,
    fixing PR#18032.
  * str() now works correctly for DOTSXP and related exotics, even
    when these are doomed.
    Additionally, it no longer fails for lists with a class and
    "irregular" method definitions such that e.g. lapply(*) will
    necessarily fail, as currently for different igraph objects.
  * Too long lines in environment files (e.g. Renviron) no longer
    crash R. This limit has been increased to 100,000 bytes.
    (PR#18001.)
  * There is a further workaround for FreeType giving incorrect
    italic font faces with cairo-based graphics devices on macOS.
  * add_datalist(*, force = TRUE) (from package tools) now actually
    updates an existing data/datalist file for new content.  (Thanks
    to a report and patch by Sebastian Meyer in PR#18048.)
  * cut.Date() and cut.POSIXt() could produce an empty last interval
    for breaks = "months" or breaks = "years".  (Reported as PR#18053
    by Christopher Carbone.)
  * Detection of the encoding of 'regular' macOS locales such as
    en_US (which is UTF-8) had been broken by a macOS change:
    fortunately these are now rarely used with en_US.UTF-8 being
    preferred.
  * sub() and gsub(pattern, repl, x, *) now keep attributes of x such
    as names() also when pattern is NA (PR#18079).
  * Time differences ("difftime" objects) get a replacement and a
    rep() method to keep "units" consistent.  (Thanks to a report and
    patch by Nicolas Bennett in PR#18066.)
  * The \RdOpts macro, setting defaults for \Sexpr options in an Rd
    file, had been ineffective since R 2.12.0: it now works again.
    (Thanks to a report and patch by Sebastian Meyer in PR#18073.)
  * mclapply and pvec no longer accidentally terminate parallel
    processes started before by mcparallel or related calls in
    package parallel (PR#18078).
  * grep and other functions for evaluating (extended) regular
    expressions handle in Unicode also strings not explicitly flagged
    UTF-8, but flagged native when running in UTF-8 locale.
  * Fixed a crash in fifo implementation on Windows (PR#18031).
  * Binary mode in fifo on Windows is now properly detected from
    argument open (PR#15600, PR#18031).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1622808000">- The line %{__install} -m 755 -d %{_infodir}
  no longer works in TW or Factory.
  But without that line it works everywhere. So this instruction
  was commented out of the spec file.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1628596800">- CHANGES IN R 4.1.1:
  NEW FEATURES:
  * require(pkg, quietly = TRUE) is quieter and in particular does
    not warn if the package is not found.
  DEPRECATED AND DEFUNCT:
  * Use of ftp:// URIs should be regarded as deprecated, with
    on-going support confined to method = "libcurl" and not routinely
    tested.  (Nowadays no major browser supports them.)
  * The non-default method = "internal" is deprecated for http:// and
    ftp:// URIs for both download.file and url.
  * On Windows, method = "wininet" is deprecated for http://,
    https:// and ftp:// URIs for both download.file and url.  (A
    warning is only given for ftp://.)
    For ftp:// URIs the default method is now "libcurl" if available
    (which it is on CRAN builds).
    method = "wininet" remains the default for http:// and https://
    URIs but if libcurl is available, using method = "libcurl" is
    preferred.
  INSTALLATION:
  * make check now works also without a LaTeX installation.  (Thanks
    to Sebastian Meyer's PR#18103.)
  BUG FIXES:
  * make check-devel works again in an R build configured with
  - -without-recommended-packages.
  * qnbinom(p, size, mu) for large size/mu is correct now in a range
    of cases (PR#18095); similarly for the (size, prob)
    parametrization of the negative binomial.  Also qpois() and
    qbinom() are better and or faster for extreme cases.  The
    underlying C code has been modularized and is common to all four
    cases of discrete distributions.
  * gap.axis is now part of the axis() arguments which are passed
    from bxp(), and hence boxplot().  (Thanks to Martin Smith's
    report and suggestions in PR#18109.)
  * .First and .Last can again be set from the site profile.
  * seq.int(from, to, *) and seq.default(..) now work better in large
    range cases where from-to is infinite where the two boundaries
    are finite.
  * all.equal(x,y) now returns TRUE correctly also when several
    entries of abs(x) and abs(y) are close to .Machine$double.xmax,
    the largest finite numeric.
  * model.frame() now clears the object bit when removing the class
    attribute of a value via na.action (PR#18100).
  * charClass() now works with multi-character strings on Windows
    (PR#18104, fixed by Bill Dunlap).
  * encodeString() on Solaris now works again in Latin-1 encoding on
    characters represented differently in UTF-8.  Support for
    surrogate pairs on Solaris has been improved.
  * file.show() on Windows now works with non-ASCII path names
    representable in the current native encoding (PR#18132).
  * Embedded R on Windows can now find R home directory via the
    registry even when installed only for the current user
    (PR#18135).
  * pretty(x) with finite x now returns finite values also in the
    case where the extreme x values are close in size to the maximal
    representable number .Machine$double.xmax.
    Also, it's been tweaked for very small ranges and when a boundary
    is close (or equal) to zero; e.g., pretty(c(0,1e-317)) no longer
    has negative numbers, currently still warning about a very small
    range, and pretty(2^-(1024 - 2^-1/(c(24,10)))) is more accurate.
  * The error message for not finding vignette files when weaving has
    correct file sizes now. (Thanks to Sebastian Meyer's PR#18154.)
  * dnbinom(20, &lt;large&gt;, 1) now correctly gives 0, and similar cases
    are more accurate with underflow precaution.  (Reported by Francisco Vera Alcivar in PR#18072.)</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635163200">- repaired https://bugzilla.suse.com/show_bug.cgi?id=1191380
  (rpmacros now go to rpmmacrodir)
- minor clean-ups in spec file</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635768000">- CHANGES IN R 4.1.2:
  C-LEVEL FACILITIES:
  * The workaround in headers R.h and Rmath.h (using namespace std;)
    for the Oracle Developer Studio compiler is no longer needed now
    C++11 is required so has been removed.  A couple more usages of
    log() (which should have been std::log()) with an int argument
    are reported on Solaris.
  * The undocumented limit of 4095 bytes on messages from the
    S-compatibility macros PROBLEM and MESSAGE is now documented and
    longer messages will be silently truncated rather than
    potentially causing segfaults.
  * If the R_NO_SEGV_HANDLER environment variable is non-empty, the
    signal handler for SEGV/ILL/BUS signals (which offers recovery
    user interface) is not set. This allows more reliable debugging
    of crashes that involve the console.
  DEPRECATED AND DEFUNCT:
  * The legacy S-compatibility macros PROBLEM, MESSAGE, ERROR, WARN,
    WARNING, RECOVER, ... are deprecated and will be hidden in R
    4.2.0. R's native interface of Rf_error and Rf_warning has long
    been preferred.
  BUG FIXES:
  * .mapply(F, dots, .) no longer segfaults when dots is not a list
    and uses match.fun(F) as always documented; reported by Andrew
    Simmons in PR#18164.
  * hist(&lt;Date&gt;, ...) and hist(&lt;POSIXt&gt;, ...)  no longer pass
    arguments for rect() (such as col and density) to axis().
    (Thanks to Sebastian Meyer's PR#18171.)
  * \Sexpr{ch} now preserves Encoding(ch). (Thanks to report and
    patch by Jeroen Ooms in PR#18152.)
  * Setting the RNG to "Marsaglia-Multicarry" e.g., by RNGkind(), now
    warns in more places, thanks to Andr'e Gillibert's report and
    patch in PR#18168.
  * gray(numeric(), alpha=1/2) no longer segfaults, fixing PR#18183,
    reported by Till Krenz.
  * Fixed dnbinom(x, size=&lt;very_small&gt;, .., log=TRUE) regression,
    reported by Martin Morgan.
  * as.Date.POSIXlt(x) now keeps names(x), thanks to Davis Vaughan's
    report and patch in PR#18188.
  * model.response() now strips an "AsIs" class typically, thanks to
    Duncan Murdoch's report and other discussants in PR#18190.
  * try() is considerably faster in case of an error and long call,
    as e.g., from some do.call().  Thanks to Alexander Kaever's
    suggestion posted to R-devel.
  * qqline(y = &lt;object&gt;) such as y=I(.), now works, see also
    PR#18190.
  * Non-integer mgp par() settings are now handled correctly in
    axis() and mtext(), thanks to Mikael Jagan and Duncan Murdoch's
    report and suggestion in PR#18194.
  * formatC(x) returns length zero character() now, rather than ""
    when x is of length zero, as documented, thanks to Davis
    Vaughan's post to R-devel.
  * removeSource(fn) now retains (other) attributes(fn).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1647000000">- CHANGES IN R 4.1.3:
  NEW FEATURES:
  * The default version of Bioconductor has been changed to 3.14.
    (This is used by setRepositories and the menus in GUIs.)
  UTILITIES:
  * R CMD check --as-cran has a workaround for a bug in versions of
    file up to at least 5.41 which mis-identify DBF files last
    changed in 2022 as executables.
  C-LEVEL FACILITIES:
  * The legacy S-compatibility macros SINGLE_* in R_ext/Constants.h
    (included by R.h) are deprecated and will be removed in R 4.2.0.
  BUG FIXES:
  * Initialization of self-starting nls() models with initialization
    functions following the pre-R-4.1.0 API (without the ...
    argument) works again for now, with a deprecation warning.
  * Fixed quoting of ~autodetect~ in Java setting defaults to avoid
    inadvertent user lookup due to leading ~, reported in PR#18231 by
    Harold Gutch.
  * substr(., start, stop) &lt;- v now treats _negative_ stop values
    correctly.  Reported with a patch in PR#18228 by Brodie Gaslam.
  * Subscripting an array x without dimnames by a
    length(dim(x))-column character matrix gave "random" non-sense,
    now an error; reported in PR#18244 by Mikael Jagan.
  * ...names() now matches names(list(...)) closely, fixing PR#18247.
  * all.equal(*, scale = s) now works as intended when length(s) &gt; 1,
    partly thanks to Michael Chirico's PR#18272.
  * print(x) for long vectors x now also works for named atomic
    vectors or lists and prints the correct number when reaching the
    getOption("max.print") limit; partly thanks to a report and
    proposal by Hugh Parsonage to the R-devel list.
  * all.equal(&lt;selfStart&gt;, *) no longer signals a deprecation
    warning.
  * reformulate(*, response=r) gives a helpful error message now when
    length(r) &gt; 1, thanks to Bill Dunlap's PR#18281.
  * Modifying globalCallingHandlers inside withCallingHandlers() now
    works or fails correctly, thanks to Henrik Bengtsson's PR#18257.
  * hist(&lt;Date&gt;, breaks = "days") and hist(&lt;POSIXt&gt;, breaks = "secs")
    no longer fail for inputs of length 1.
  * qbeta(.001, .9, .009) and similar cases now converge correctly
    thanks to Ben Bolker's report in PR#17746.
  * window(x, start, end) no longer wrongly signals "'start' cannot
    be after 'end'", fixing PR#17527 and PR#18291.
  * data() now checks that its (rarely used) list argument is a
    character vector - a couple of packages passed other types and
    gave incorrect results.
  * which() now checks its arr.ind argument is TRUE rather coercing
    to logical and taking the first element - which gave incorrect
    results in package code.
  * model.weights() and model.offset() more carefully extract their
    model components, thanks to Ben Bolker and Tim Taylor's R-devel
    post.
  * list.files(recursive = TRUE) now shows all broken symlinks
    (previously, some of them may have been omitted, PR#18296).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1650628800">- CHANGES IN R 4.2.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * The formula method of aggregate() now matches the generic in
    naming its first argument x (resolving PR#18299 by Thomas
    Soeiro).
    This means that calling aggregate() with a formula as a named
    first argument requires name formula in earlier versions of R and
    name x now, so portable code should not name the argument (code
    in many packages did).
  * Calling &amp;&amp; or || with either argument of length greater than one
    now gives a warning (which it is intended will become an error).
  * Calling if() or while() with a condition of length greater than
    one gives an error rather than a warning.  Consequently,
    environment variable _R_CHECK_LENGTH_1_CONDITION_ no longer has
    any effect.
  * Windows users should consult the WINDOWS section below for some
    profound changes including
  * Support for 32-bit builds has been dropped.
  * UTF-8 locales are used where available.
  * The default locations for the R installation and personal
    library folder have been changed.
    Thanks to Tomas Kalibera for months of work on the Windows port
    for this release.
  NEW FEATURES:
  * matrix(x, n, m) now warns in more cases where length(x) differs
    from n * m, as suggested by Abby Spurdle and Wolfgang Huber in
    Feb 2021 on the R-devel mailing list.
    This warning can be turned into an error by setting environment
    variable _R_CHECK_MATRIX_DATA_ to TRUE: R CMD check --as-cran
    does so unless it is already set.
  * Function file_test() in package utils gains tests for symlinks,
    readability and writability.
  * capabilities("libxml") is now false.
    The description of capabilities("http/ftp") now reflects that it
    refers to the default method, no longer the internal one.
  * simplify2array() gains an except argument for controlling the
    exceptions used by sapply().
  * Environment variables R_LIBS_USER and R_LIBS_SITE are both now
    set to the R system default if unset or empty, and can be set to
    NULL to indicate an empty list of user or site library
    directories.
  * The warning for axis()(-like) calls in cases of relatively small
    ranges (typically in log-scale situations) is slightly improved
    _and_ suppressed from explicit calls to .axisPars() as has always
    been the intention.
  * The contrasts setter function `contrasts&lt;-` gains an explicit
    default how.many = NULL rather than just using missing(how.many).
  * grid.pretty() gains a new optional argument n = 5.
  * There is a new function .pretty() with option bounds as a
    technical-utility version of pretty().  It and pretty() gain a
    new argument f.min with a better than back-compatible default.
  * Function grDevices::axisTicks() and related functions such as
    graphics::axis() work better, notably for the log scale; partly
    because of the pretty() improvements, but also because care is
    taken e.g., when ylim is finite but diff(ylim) is infinite.
  * nclass.FD() gains a digits option.
  * The R Mathlib internal C function bd0() (called indirectly from a
    dozen probability density and distribution functions such as
    dpois(), dbinom(), dgamma(), pgamma() _etc_) has been
    complemented by a more sophisticated and (mostly) more accurate C
    function ebd0(), currently called only by internal dpois_raw()
    improving accuracy for R level dpois() and potentially others
    calling it such as dnbinom(), dgamma() or pgamma().  (Thanks to
    Morten Welinder's PR#15628.)
  * write.ftable() gains sep = " " argument as suggested by Thomas
    Soeiro.
  * The names of the locale categories supported by R's
    Sys.getlocale() and Sys.setlocale() are now provided by variable
    .LC.categories in the base namespace.
  * The Date and POSIXt methods for hist() and the histogram method
    for plot() now also use the new default col = "lightgray" in
    consistency with the corresponding change to hist()'s default for
    R 4.0.0.
  * hist.default() gains new fuzz argument, and the histogram plot
    method no longer uses fractional axis ticks when displaying
    counts ("Frequency").
  * mapply() and hence Map() now also obey the "max-or-0-if-any"
    recycling rule, such that, e.g., Map(`+`, 1:3, 1[0]) is valid
    now.
  * as.character(&lt;obj&gt;) for "hexmode" or "octmode" objects now
    fulfils the important basic rule as.character(x)[j] ===
    as.character(x[j]).
  * The set utility functions, notably intersect() have been tweaked
    to be more consistent and symmetric in their two set arguments,
    also preserving a common mode.
  * substr(ch, start,end) &lt;- new now e.g., preserves names(ch); ditto
    for substring(), thanks to a patch from Brodie Gaslam.
  * plot(&lt;lm&gt;) gains a extend.ylim.f argument, in partial response to
    PR#15285; further PR#17784 is fixed thanks to several
    contributors and a patch by Elin Waring.  The Cook's dist
    contours get customizable via cook.col and cook.lty with a
    different default color and their legend is nicer by default and
    customizable via cook.legendChanges.
  * Attempting to subset an object that is not subsettable now
    signals an error of class notSubsettableError. The
    non-subsettable object is contained in the object field of the
    error condition.
  * Subscript-out-of-bounds errors are now signaled as errors of
    class subscriptOutOfBoundsError.
  * Stack-overflow errors are now signaled as errors inheriting from
    class stackOverflowError. See ?stackOverflowError for more
    details.
  * New partly experimental Sys.setLanguage() utility, solving the
    main problem of PR#18055.
  * gettext() and gettextf() get a new option trim = TRUE which when
    set to false allows translations for strings such as "Execution
    halted\n" typical for C code.
  * An experimental implementation of hash tables is now available.
    See ?hashtab for more details.
  * identical() gains a extptr.as.ref argument for requesting that
    external pointer objects be compared as reference objects.
  * reorder() gets an argument decreasing which it passes to sort()
    for level creation; based on the wish and patch by Thomas Soeiro
    in PR#18243.
  * as.vector() gains a data.frame method which returns a simple
    named list, also clearing a long standing 'FIXME' to enable
    as.vector(&lt;data.frame&gt;, mode="list").  This breaks code relying
    on as.vector(&lt;data.frame&gt;) to return the unchanged data frame.
  * legend() is now vectorized for arguments cex, x.intersp, and
    text.width.  The latter can now also be specified as a vector
    (one element for each column of the legend) or as NA for
    computing a proper column wise maximum value of strwidth(legend).
    The argument y.intersp can be specified as a vector with one
    entry for each row of the legend.
    legend() also gains new arguments title.cex and title.font.
    Thanks to Swetlana Herbrandt.
  * Deparsing no longer remaps attribute names dim, dimnames, levels,
    names and tsp to historical S-compatible names (which structure()
    maps back).
  * sample() and sample.int() have additional sanity checks on their
    size and n arguments.
    all.equal.numeric() gains a sanity check on its tolerance
    argument - calling all.equal(a, b, c) for three numeric vectors
    is a surprisingly common error.
    mean(na.rm =), rank(na.last =), barplot(legend.text =),
    boxplot(), contour(drawlabels =), polygon(border =) and
    methods::is(class2 =) have more robust sanity checks on their
    arguments.
    R CMD Rd2pdf (used by R CMD check) has a more robust sanity check
    on the format of \alias{} commands.
  * psigamma(x, deriv) for negative x now also works for deriv = 4
    and 5; their underlying C level dpsifn() is documented in
    'Writing R Extensions'.
  * The HTML help system now uses HTML5 (wish of PR#18149).
  * ks.test() now provides exact p-values also with ties and MC
    p-values in the two-sample (Smirnov) case.  By Torsten Hothorn.
  * ks.test() gains a formula interface, with y ~ 1 for the
    one-sample (Kolmogorov) test and y ~ group for the two-sample
    (Smirnov) test.  Contributed by Torsten Hothorn.
  * The return value from ks.test() now has class c("ks.test",
    "htest") - packages using try() need to take care to use
    inherits() and not == on the class.
  * New functions psmirnov(), qsmirnov() and rsmirnov() in package
    stats implementing the asymptotic and exact distributions of the
    two-sample Smirnov statistic.
  * iconv() now allows sub = "c99" to use C99-style escapes for UTF-8
    inputs which cannot be converted to encoding to.
  * In a forward pipe |&gt; expression it is now possible to use a named
    argument with the placeholder _ in the rhs call to specify where
    the lhs is to be inserted.  The placeholder can only appear once
    on the rhs.
  * The included LAPACK sources have been updated to version 3.10.0,
    except for the four Fortran 77 routines which 3.10.0 has
    re-implemented in Fortran 90 (where the older versions have been
    retained as the R build process does not support Fortran 90).
  * path.expand() and most other uses of tilde expansion now warn if
    a path would be too long if expanded.  (An exception is
    file.exists(), which silently returns false.)
  * trunc(&lt;Date&gt;, *) now supports units = "months" or "years" for
    consistency with the POSIXt method, thanks to Dirk Eddelbuettel's
    proposal in PR#18099.
  * list2DF() now checks that its arguments are of the same length,
    rather than use recycling.
  * The HTML help system has several new features: LaTeX-like math
    can be typeset using either KaTeX or MathJax, usage and example
    code is highlighted using Prism, and for dynamic help the output
    of examples and demos can be shown within the browser if the
    knitr package is installed. These features can be disabled by
    setting the environment variable _R_HELP_ENABLE_ENHANCED_HTML_ to
    a false value.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 15
    and so packages that provide graphics devices should be
    reinstalled.
  * The grid package now allows the user to specify a "vector" of
    pattern fills.  The fill argument to gpar() accepts a list of
    gradients and/or patterns and the functions linearGradient(),
    radialGradient(), and pattern() have a new group argument.
    Points grobs (data symbols) can now also have a pattern fill.
    The grobCoords() function now returns a more informative and
    complex result.
  * The grid package has new functions for drawing isolated groups:
    grid.group(), grid.define(), and grid.use().  These functions add
    compositing operators and affine transformations to R's graphics
    capabilities.
    The grid package also has new functions for stroking and filling
    paths: grid.stroke(), grid.fill(), and grid.fillStroke().
    A new function as.path() allows the user to specify the fill rule
    for a path that is to be used for clipping, stroking, or filling;
    available options are "winding" and "evenodd".  A new function
    as.mask() allows the user to specify the type of a mask;
    available options are "alpha" and "luminance".
    These new features are only supported so far (at most) on the
    Cairo-based graphics devices and on the pdf() device.
  * dev.capabilities() reports on device support for the new
    features.
  * par() now warns about unnamed non-character arguments to prevent
    misuse such as {usr &lt;- par("usr"); par(usr)}.
  INSTALLATION:
  * Facilities for accessing ftp:// sites are no longer tested
    (except _pro tem_ for curlGetHeaders()) as modern browsers have
    removed support.
  * R can now be built with DEFS = -DSTRICT_R_HEADERS .
  PACKAGE INSTALLATION:
  * R CMD INSTALL no longer tangles vignettes. This completes an R
    CMD build change in R 3.0.0 and affects packages built before R
    3.0.2. Such packages should be re-made with R CMD build to have
    the tangled R code of vignettes shipped with the tarball.
  * USE_FC_LEN_T will become the default: this uses the correct
    prototypes for Fortran BLAS/LAPACK routines called from C/C++,
    and requires adjustment of most such calls - see 'Writing R
    Extensions' SS6.6.2.  (This has been supported since R 3.6.2.)
  * Package installation speed for packages installed with
    keep.source has been improved. This resolve the issue reported by
    Ofek Shilon in PR#18236.
  UTILITIES:
  * R CMD check can optionally report files/directories left behind
    in home, /tmp (even though TMPDIR is set) and other directories.
    See the "R Internals" manual for details.
  * R CMD check now reports byte-compilation errors during
    installation.  These are not usually fatal but may result in
    parts of the package not being byte-compiled.
  * _R_CHECK_DEPENDS_ONLY_ can be applied selectively to examples,
    tests and/or vignettes in R CMD check: see the "R Internals"
    manual.
  * _R_CHECK_SRC_MINUS_W_IMPLICIT_ now defaults to true: recent
    versions of Apple clang on macOS have made implicit function
    declarations in C into a compilation error.
  * R CMD check --as-cran makes use of the environment variable
    AUTORECONF.  See the "R Internals" manual SS8 for further details.
  * R CMD check --use-valgrind also uses valgrind when re-building
    vignettes as some non-Sweave vignettes unhelpfully comment out
    all their code when R CMD check runs vignettes.
  * Errors in re-building vignettes (unless there are LaTeX errors)
    are reported by R CMD check as ERROR rather than WARNING when
    running vignettes has been skipped (as it frequently is in CRAN
    checks and by --as-cran).
  * R CMD Rd2pdf gains a --quiet option that is used by R CMD build
    when building the PDF package manual.
  * R CMD Rd2pdf now always runs LaTeX in batch mode, consistent with
    Texinfo &gt;= 6.7. The --batch option is ignored.
  * R CMD build and R CMD check now include the Rd file name and line
    numbers in the error message of an \Sexpr evaluation failure.
  * For packages using the \doi Rd macro (now an install-time \Sexpr)
    but no other dynamic Rd content, R CMD build now produces a
    smaller tarball and is considerably faster - skipping temporary
    package installation.
  C-LEVEL FACILITIES:
  * The non-API header R_ext/R-ftp-http.h is no longer provided, as
    the entry points it covered are now all defunct.
  * A number of non-API declarations and macro definitions have been
    moved from the installed header Rinternals.h to the internal
    header Defn.h. Packages that only use entry points and
    definitions documented to be part of the API as specified in
    'Writing R Extensions' SS6 should not be affected.
  * The macro USE_RINTERNALS no longer has any effect when compiling
    package code.  Packages which also use R_NO_REMAP will need to
    ensure that the remapped names are used for calls to API
    functions that were formerly also made available as macros.
  * The deprecated legacy S-compatibility macros PROBLEM, MESSAGE,
    ERROR, WARN, WARNING, RECOVER, ... are no longer defined in
    R_exts/RS.h (included by R.h).  Replace these by calls to
    Rf_error and Rf_warning (defined in header R_ext/Error.h included
    by R.h).
    Header R_ext/RS.h no longer includes R_ext/Error.h.
  * Header R_ext/Constants.h (included by R.h) when included from C++
    now includes the C++ header cfloat rather than the C header
    float.h (now possible as C++11 is required).
  * The legacy S-compatibility macros DOUBLE_* in R_ext/Constants.h
    (included by R.h) are deprecated.
  * The deprecated S-compatibility macros SINGLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * R_Calloc, R_Free and R_Realloc are preferred to their unprefixed
    forms and error messages now use the prefix. These forms were
    introduced in R 3.4.0 and are available even when
    STRICT_R_HEADERS is defined.
  * rmultinom has been documented in 'Writing R Extensions' SS6 so is
    now part of the R API.
  * Similarly, Rtanpi, called from R level tanpi() is now part of the
    R API.
  * The long-deprecated, undocumented and non-API entry point call_R
    is no longer declared in R_ext/RS.h (included by R.h).
  * The header S.h which has been unsupported since Jan 2016 has been
    removed.  Use R.h instead.
  DEPRECATED AND DEFUNCT:
  * The (non-default and deprecated) method = "internal" for
    download.file() and url() no longer supports http:// nor ftp://
    URIs.  (It is used only for file:// URIs.)
    On Windows, download.file(method = "wininet") no longer supports
    ftp:// URIs.  (It is no longer the default method, which is
    "libcurl" and does.)
    On Windows, the deprecated method = "wininet" now gives a warning
    for http:// and https:// URIs for both download.file() and url().
    (It is no longer the default method.)
  * On Windows, the command-line option --max-mem-size and
    environment variable R_MAX_MEM_SIZE are defunct.  The memory
    allocation limit was important for 32-bit builds, but these are
    no longer supported.
  * default.stringsAsFactors() is now formally deprecated, where that
    was only mentioned on its regular help page, previously.  So it
    now gives a warning if called.
  * unix.time() is defunct now; it had been deprecated since R 3.4.0.
  BUG FIXES:
  * Setting digits = 0 in format(), print.default() (and hence
    typically print()) or options() is again invalid.  Its behaviour
    was platform-dependent, and it is unclear what "zero significant
    digits" should mean (PR#18098).
  * Messages from C code in the cairo section of package grDevices
    are now also offered for translation, thanks to Michael Chirico's
    PR#18123.
  * mean(x) with finite x now is finite also without "long.double"
    capability.
  * R CMD Rd2pdf no longer leaves an empty build directory behind
    when it aborts due to an already existing output file.  (Thanks
    to Sebastian Meyer's PR#18141.)
  * density(x, weights = w, na.rm = TRUE) when anyNA(x) is true, now
    removes weights "in parallel" to x, fixing PR#18151, reported by
    Matthias Gondan.  Additionally, it gets a subdensity option.
  * Conversion of \Sexpr[]{&lt;expR&gt;} to LaTeX or HTML no longer
    produces long blocks of empty lines when &lt;expR&gt; itself contains
    several lines all producing empty output.  Thanks to a report and
    patch by Ivan Krylov posted to R-devel.
  * R CMD build no longer fails if a package vignette uses child
    documents and inst/doc exists.  (Thanks to Sebastian Meyer's
    PR#18156.)
  * When an R documentation ('help' source) file man/foo.Rd in a
    package has \donttest{..} examples with a syntax error, it is now
    signalled as ERROR and with correct line numbers relating to the
  * -Ex.R file, thanks to Duncan Murdoch and Sebastian Meyer's
    reports and patch proposals in PR#17501.
  * Improved determination of the correct translation domain in
    non-base packages, addressing the combination of PR#18092 and
    PR#17998 (#c6) with reports and _augmented_ patch #2904 by
    Suharto Anggono.
    Note that "R-base" is no longer the default domain e.g., for
    top-level calls to gettext(); rather translation needs explicit
    domain = * specification in such cases.
  * identical(attrib.as.set=FALSE) now works correctly with data
    frames with default row names (Thanks to Charlie Gao's PR#18179).
  * txtProgressBar() now enforces a non-zero width for argument char,
    without which no progress can be visible.
  * dimnames(table(d)) is more consistent in the case where d is a
    list with a single component, thanks to Thomas Soeiro's report to
    R-devel.
    Further, table(d1, d2) now gives an error when d1 and d2 are data
    frames as suggested by Thomas in PR#18224.
  * Fix for drawing semi-transparent lines and fills on the native
    Windows graphics device (PR#18219 and PR#16694).  Thanks to Nick
    Ray for helpful diagnosis on Bugzilla.
  * The deparser now wraps sub-expressions such as if(A) ..  with
    parentheses when needed; thanks to Duncan Murdoch's PR#18232 and
    Lionel Henry's patches there.
  * remove.packages() no longer tries to uninstall Priority: base
    packages, thanks to a report and suggestions by Colin Fay in
    PR#18227.
  * win.metafile() now has xpinch and ypinch arguments so that the
    user can override Windows' (potentially wrong) guess at device
    dimensions.
  * x[i] and x[[i]] for non-integer i should now behave in all cases
    as always documented: the index used is equivalent to
    as.integer(i) unless that would overflow where trunc(i) is used
    instead; thanks to Suharto Anggono's report and patch proposals
    in PR#17977.
  * asOneSidedFormula() now associates the resulting formula with the
    global environment rather than the evaluation environment created
    for the call.
  * &lt;bibentry&gt;$name now matches the field name case-insensitively,
    consistent with bibentry() creation and the replacement method.
  * cbind() failed to detect some length mismatches with a mixture of
    time-series and non-time-series inputs.
  * The default LaTeX style file Sweave.sty used by the RweaveLatex
    driver no longer loads the obsolete ae package; thanks to a
    report by Thomas Soeiro in PR#18271.  Furthermore, it now skips
    \usepackage[T1]{fontenc} for engines other than pdfTeX (if
    detected) or if the new [nofontenc] option is used.
  * smooth.spline() now stores its logical cv argument more safely,
    fixing a rare bug when printing, and also stores n.
  * smooth.spline(x,y,*) now computes the cv.crit statistic
    correctly, also when is.unsorted(x), fixing PR#18294.
  * The data.frame method of rbind() now warns when binding
    not-wholly-recycling vectors, by analogy to the default method
    (for matrices).
  * setAs() finds the correct class for name to when multiple
    packages define a class with that name. Thanks to Gabor Csardi
    for the report.
  * Fix for detaching a package when two classes of the same name are
    present in method signatures for the same generic. Thanks to
    Gabor Csardi for the report.
  * match.arg("", c("", "a", "B")) gives a better error message, in
    part from PR#17959, thanks to Elin Waring.
  * R CMD Sweave --clean no longer removes pre-existing files or
    subdirectories (PR#18242).
  * The quartz() device no longer splits polylines into subpaths.
    That has caused narrowly-spaced lines with many points to always
    look solid even when dashed line type was used due to dash phase
    restarts.
  * Deparsing constructs such as quote(1 + `!`(2) + 3) works again as
    before R 3.5.0, thanks to the report and patch in PR#18284 by
    Suharto Anggono.
  * as.list(f) for a factor f now keeps names(f), fixing PR#18309.
  * qbeta(.001, .9, .009) and analogous qf() calls now return a
    correct value instead of NaN or wrongly 1, all with a warning;
    thanks to the report by Ludger Goeminne in PR#18302.
  * plot.lm() failed to produce the plot of residuals vs.  factor
    levels (i.e., which=5 when leverages are constant) for models
    with character predictors (PR#17840).
  * interaction.plot(..., xtick = TRUE) misplaced the x-axis line
    (PR#18305).
  * Not strictly fixing a bug, format()ing and print()ing of
    non-finite Date and POSIXt values NaN and +/-Inf no longer show
    as NA but the respective string, e.g., Inf, for consistency with
    numeric vector's behaviour, fulfilling the wish of PR#18308.
  * R CMD check no longer runs test scripts generated from
    corresponding .Rin files twice and now signals an ERROR if
    processing an .Rin script fails.
  * tools::Rd2txt() used for plain-text help pages now renders \hrefs
    (if tools::Rd2txt_options(showURLs = TRUE)) and \urls with
    percent-encoding and standards-compliant delimiting style (angle
    brackets and no URL: prefix).  \email is now rendered with a
    mailto: prefix.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1655985600">- CHANGES IN R 4.2.1:
  NEW FEATURES:
  * New function utils::findCRANmirror() to find out if a CRAN mirror
    has been selected, otherwise fallback to the main site.  This
    behaves in the same way as tools::CRAN_package_db() and is
    intended for packages wishing to access CRAN for purposes other
    than installing packages.
    The need for this was shown by a day when the main CRAN website
    was offline and a dozen or so packages which had its URL
    hardcoded failed their checks.
  INSTALLATION on a UNIX-ALIKE:
  * The libraries searched for by --with-blas (without a value) now
    include BLIS (after OpenBLAS but before ATLAS).  And on macOS,
    the Accelerate framework (after ATLAS).  (This is patterned after
    the AX_BLAS macro from the Autoconf Archive.)
  * The included LAPACK sources have been updated to 3.10.1.
  UTILITIES:
  * The (full path to) the command tidy to be used for HTML
    validation can be set by environment variable R_TIDYCMD.
  * Setting environment variable _R_CHECK_RD_VALIDATE_RD2HTML_ to a
    false value will override R CMD check --as-cran and turn off HTML
    validation.  This provides a way to circumvent a problematic
    tidy.
    The 2006 version that ships with macOS is always skipped.
  C-LEVEL FACILITIES:
  * The undocumented legacy declarations of Sint, Sfloat, SINT_MAX
    and SINT_MIN in header R.h are deprecated.
  BUG FIXES:
  * fisher.test(d) no longer segfaults for "large" d; fixing PR#18336
    by preventing/detecting an integer overflow reliably.
  * tar(., files=*) now produces correctly the warning about invalid
    uid or gid of files, fixing PR#18344, reported by Martin Morgan.
  * tk_choose.files() with multi = FALSE misbehaved on paths
    containing spaces (PR#18334) (regression introduced in R 4.0.0).
  * sort(x, partial = ind, *) now works correctly notably for the
    non-default na.last = FALSE or TRUE, fixing PR#18335 reported by
    James Edwards.
  * Environment variable _R_CHECK_XREFS_REPOSITORIES_ is only used
    for checking .Rd cross-references in R CMD check (as documented)
    and not for other uses looking for a CRAN mirror.
  * The search for a CRAN mirror when checking packages now uses
    getOption("repos") if that specifies a CRAN mirror, even when it
    does not also specify all three Bioconductor repositories (as was
    previously required).
  * The HTML code generated by tools::Rd2HTML() has been improved to
    pass tidy 5.8.0.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1667217600">- CHANGES IN R 4.2.2:
  NEW FEATURES:
  * tools::Rdiff(useDiff = TRUE) checks for the presence of an
    external diff command and switches to useDiff = FALSE if none is
    found.  This allows R CMD Rdiff to always work.
  * On Windows, environment variable R_LIBCURL_SSL_REVOKE_BEST_EFFORT
    can be used to switch to only 'best-effort' SSL certificate
    revocation checks with the default "libcurl" download method.
    This reduces security, but may be needed for downloads to work
    with MITM proxies (PR#18379).
  * (macOS) The run-time check for libraries from XQuartz for X11 and
    Tcl/Tk no longer uses otool from the Apple Developer Tools
    (PR#18400).
  * The LaTeX style for producing the PDF manuals, Rd.sty, now loads
    the standard amsmath, amsfonts and amssymb packages for greater
    coverage of math commands in the Rd \eqn and \deqn macros.  The
    \mathscr LaTeX command is also provided (via the mathrsfs
    package, if available, or the amsfonts bundle otherwise),
    fulfilling the wish of PR#18398.
  * (Windows) The default format of readClipboard() and
    writeClipboard() has been changed to 13 (CF_UNICODETEXT).
  INSTALLATION on a UNIX-ALIKE:
  * The PDF manuals (if built) can be compacted by the new target
    make compact-pdf (at the top level or in directory doc/manual).
  * There is now configure support for LLVM clang 15 on Linux, which
    defaults to position-independent (PIE) executables whereas
    gfortran does not.
  * Many small changes to ease compilation (and suppress warnings)
    with LLVM clang 15.
  BUG FIXES:
  * Rscript -e would fail if stdin were closed (Reported by Henrik
    Bengtsson.)
  * qt(*, log.p=TRUE) in outer tails no longer produces NaN in its
    final steps, thus fixing PR#18360.
  * tools::Rd2latex() now escapes hashes and ampersands when writing
    URLs, fixing LaTeX errors with such URLs in \tabular.
  * When isGeneric(f, fdef=*) is used with mismatching names, the
    warning is better understandable; reported (with fix) in PR#18370
    by Gabe Becker.
  * poly(x, n) now works again (and is now documented) when x is a
    "Date" or "POSIXct" object, or of another class while fulfilling
    mode(x) == "numeric".  This also enables poly(x, *, raw=TRUE) for
    such variables.  Reported by Michael Chirico to R-devel.
  * write.table(), write.csv() and write.csv2() restore their
    numerical precision (internal equivalent of digits = 15) after an
    interrupt (PR#18384).
  * One can now read also byte FF from a clipboard connection
    (PR#18385).
  * source("") and source(character()) now give more helpful error
    messages.
  * R CMD check --as-cran set _R_CHECK_TIMINGS_ too late to have the
    intended effect.
  * as.POSIXlt(x) now also works with very large dates x, fixing
    PR#18401 reported by Hannes M"uhleisen.
  * Files can now be extracted even from very large zip archives
    (PR#18390, thanks to Martin Jakt).
  * Non-finite objects of class "POSIXlt" are now correctly coerced
    to classes "Date" and "POSIXct"; following up on the extension to
    format() them correctly.
  * Added methods for is.finite(), is.infinite() and is.nan() for
    "POSIXlt" date-time objects.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1678881600">- CHANGES IN R 4.2.3:
  C-LEVEL FACILITIES:
  * The definition of DL_FUNC in R_ext/Rdynload.h has been changed to
    be fully C-compliant.  This means that functions loaded _via_ for
    example R_GetCCallable need to be cast to an appropriate type if
    they have any arguments.
  * .Machine has a new element sizeof.time_t to identify old systems
    with a 32-bit type and hence a limited range of date-times (and
    limited support for dates millions of years from present).
  PACKAGE INSTALLATION:
  * (Windows) The default C++ standard had accidentally been left at
    C++11 when it was changed to C++14 on Unix.
  BUG FIXES:
  * As "POSIXlt" objects may be "partially filled" and their list
    components meant to be recycled, length() now is the length of
    the longest component.
  * as.POSIXlt.Date() could underflow for dates in the far past (more
    than half a million years BCE).
  * as.Date.POSIXlt(x) would return "1970-01-01" instead of NA in R
    4.2.2, e.g., for
    x &lt;- as.POSIXlt(c("2019-01-30","2001-1-1"))
    x$mon &lt;- c(0L, NA); as.Date(x)
  * R CMD check failed to apply enabled _R_CHECK_SUGGESTS_ONLY_ to
    examples and vignettes (regression in R 4.2.0).
  * R CMD check did not re-build vignettes in separate processes by
    default (regression in R 4.2.0).
  * Running examples from HTML documentation now restores previous
    knitr settings and options (PR#18420).
  * Quartz: fonts are now located using Core Graphics API instead of
    deprecated ATS which is no longer supported in the macOS 13 SDK
    (PR#18426).  This also addresses an issue where the currently
    used font in the Quartz device context was not correctly
    retained.
  * (Windows) Math symbols in text drawing functions are again
    rendered correctly (PR#18440).  This fixes a regression in R
    4.2.1 caused by a fix in PR#18382 which uncovered an issue in
    GraphApp due to which the symbol charset was not used with TT
    Symbol font face.
  * (Windows) Installing a package with a src/Makefile.{win,ucrt}
    file includes ~/.R/Makevars.win64 in the search for user
    makevars, as documented in "R Installation and Administration"
    and done for packages with a src/Makevars.{win,ucrt} file.
  * format(&lt;POSIXlt_w/_unbalanced_sec&gt;, "....%OS&lt;n&gt;") with n &gt; 0 no
    longer accidentally uses the unbalanced seconds, thanks to
    Suharto Anggono's report (including patch) in PR#18448.
  * solve.default(a, b) works around issues with some versions of
    LAPACK when a contains NA or NaN values.
  * When UseMethod() cannot dispatch, it no longer segfaults
    producing the error message in case of a long class(), thanks to
    Joris Vankerschaver's report (including patch) in PR#18447.
  * When example(foo, ..) produces graphics on an interactive device
    it needs to open itself, it now leaves devAskNewPage() unchanged
    even when it was FALSE, thus fixing a 14 years old '&lt;FIXME&gt;'.
  * packageDescription() again catches errors from encoding
    conversions. This also fixes broken packageVersion() in C locale
    on systems where iconv does not support transliteration.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1681128000">- add patch to build with libcurl &gt;= 8</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1682078400">- CHANGES IN R 4.3.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Calling &amp;&amp; or || with LHS or (if evaluated) RHS of length greater
    than one is now always an error, with a report of the form
    'length = 4' in coercion to 'logical(1)'
    Environment variable _R_CHECK_LENGTH_1_LOGIC2_ no longer has any
    effect.
  NEW FEATURES:
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.10.1.  (This caused some platform-dependent
    changes to package check output.)  And then to the sources from
    LAPACK version 3.11.0 (with changes only to double complex
    subroutines).
  * The included LAPACK sources have been updated to include the four
    Fortran 90 routines rather than their Fortran 77 predecessors.
    This may give some different signs in SVDs or
    eigendecompositions..  (This completes the transition to LAPACK
    3.10.x begun in R 4.2.0.)
  * The LAPACK sources have been updated to version 3.11.0.  (No new
    subroutines have been added, so this almost entirely bug fixes:
    Those fixes do affect some computations with NaNs, including R's
    NA.)
  * The parser now signals _classed_ errors, notably in case of the
    pipe operator |&gt;.  The error object and message now give line and
    column numbers, mostly as proposed and provided by Duncan Murdoch
    in PR#18328.
  * toeplitz() is now generalized for asymmetric cases, with a
    toeplitz2() variant.
  * xy.coords() and xyz.coords() and consequently, e.g., plot(x,y,
    log = "y") now signal a _classed_ warning about negative values
    of y (where log(.) is NA).  Such a warning can be specifically
    suppressed or caught otherwise.
  * Regular expression functions now check more thoroughly whether
    their inputs are valid strings (in their encoding, e.g. in
    UTF-8).
  * The performance of grep(), sub(), gsub() and strsplit() has been
    improved, particularly with perl = TRUE and fixed = TRUE.  Use of
    useBytes = TRUE for performance reasons should no longer be
    needed and is discouraged: it may lead to incorrect results.
  * apropos() gains an argument dot_internals which is used by the
    completion (help(rcompgen)) engine to also see base internals
    such as .POSIXct().
  * Support in tools::Rdiff() for comparing uncompressed PDF files is
    further reduced - see its help page.
  * qqplot(x, y, ...) gains conf.level and conf.args arguments for
    computing and plotting a confidence band for the treatment
    function transforming the distribution of x into the distribution
    of y (Switzer, 1976, _Biometrika_). Contributed by Torsten
    Hothorn.
  * Performance of package_dependencies() has been improved for cases
    when the number of dependencies is large.
  * Strings newly created by gsub(), sub() and strsplit(), when any
    of the inputs is marked as "bytes", are also marked as "bytes".
    This reduces the risk of creating invalid strings and accidental
    substitution of bytes deemed invalid.
  * Support for readLines(encoding = "bytes") has been added to allow
    processing special text files byte-by-byte, without creating
    invalid strings.
  * iconv(from = "") now takes into account any declared encoding of
    the input elements and uses it in preference to the native
    encoding.  This reduces the risk of accidental creation of
    invalid strings, particularly when different elements of the
    input have different encoding (including "bytes").
  * Package repositories in getOption("repos") are now initialized
    from the repositories file when utils is loaded (if not already
    set, e.g., in .Rprofile).  (From a report and patch proposal by
    Gabriel Becker in PR#18405.)
  * compactPDF() gets a verbose option.
  * type.convert() and hence read.table() get new option tryLogical =
    TRUE with back compatible default.  When set to false, converts
    "F" or "T" columns to character.
  * Added new unit prefixes "R" and "Q" for abbreviating
    (unrealistically large) sizes beyond 10^{27} in standard = "SI",
    thanks to Henrik Bengtsson's PR#18435.
  * as.data.frame()'s default method now also works fine with atomic
    objects inheriting from classes such as "roman", "octmode" and
    "hexmode", such fulfilling the wish of PR#18421, by Benjamin
    Feakins.
  * The as.data.frame.vector() utility now errors for wrong-length
    row.names.  It warned for almost six years, with "Will be an
    error!".
  * sessionInfo() now also contains La_version() and reports codepage
    and timezone when relevant, in both print() and toLatex() methods
    which also get new option tzone for displaying timezone
    information when locale = FALSE.
  * New function R_compiled_by() reports the C and Fortran compilers
    used to build R, if known.
  * predict(&lt;lm&gt;, newdata = *) no longer unnecessarily creates an
    offset of all 0s.
  * solve() for complex inputs now uses argument tol and by default
    checks for 'computational singularity' (as it long has done for
    numeric inputs).
  * predict(&lt;rank-deficient lm&gt;, newdata=*) now obeys a new argument
    rankdeficient, with new default "warnif", warning only if there
    are non-estimable cases in newdata.  Other options include
    rankdeficient = "NA", predicting NA for non-estimable newdata
    cases.  This addresses PR#15072 by Russ Lenth and is based on his
    original proposal and discussions in PR#16158 also by David Firth
    and Elin Waring.  Still somewhat experimental.
  * Rgui console implementation now works better with the NVDA screen
    reader when the full blinking cursor is selected.  The underlying
    improvements in cursor handling may help also other screen
    readers on Windows.
  * The drop-field control in GraphApp can now be left with the TAB
    key and all controls can be navigated in the reverse order using
    the Shift+TAB key, improving accessibility of the Rgui
    configuration editor.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now fully accurate
    (instead of to "only" minimally five digits).
  * demo(error.catching) now also shows off withWarnings() and
    tryCatchWEMs().
  * As an experimental feature the placeholder _ can now also be used
    in the rhs of a forward pipe |&gt; expression as the first argument
    in an extraction call, such as _$coef. More generally, it can be
    used as the head of a chain of extractions, such as _$coef[[2]].
  * Spaces in the environment variable used to choose the R session's
    temporary directory (TMPDIR, TMP and TEMP are tried in turn) are
    now fatal.  (On Windows the 'short path' version of the path is
    tried and used if that does not contain a space.)
  * all.equal.numeric() gets a new optional switch giveErr to return
    the numeric error as attribute.  Relatedly,
    stopifnot(all.equal&lt;some&gt;(a, b, ..)) is as "smart" now, as
    stopifnot(all.equal(....)) has been already, thus allowing
    customized all.equal&lt;Some&gt;() wrappers.
  * R on Windows is now able to work with path names longer than 260
    characters when these are enabled in the system (requires at
    least Windows 10 version 1607).  Packages should be updated to
    work with long paths as well, instead of assuming PATH_MAX to be
    the maximum length.  Custom front-ends and applications embedding
    R need to update their manifests if they wish to allow this
    feature.  See
    &lt;https://blog.r-project.org/2023/03/07/path-length-limit-on-windows&gt;
    for more information.
  * 'Object not found' and 'Missing argument' errors now give a more
    accurate error context. Patch provided by Lionel Henry in
    PR#18241.
  * The @ operator is now an S3 generic. Based on contributions by
    Tomasz Kalinowski in PR#18482.
  * New generic chooseOpsMethod() provides a mechanism for objects to
    resolve cases where two suitable methods are found for an Ops
    Group Generic. This supports experimenting with alternative
    object systems. Based on contributions by Tomasz Kalinowski in
    PR#18484.
  * inherits(x, what) now accepts values other than a simple
    character vector for argument what. A new generic, nameOfClass(),
    is called to resolve the class name from what. This supports
    experimenting with alternative object systems. Based on
    contributions by Tomasz Kalinowski in PR#18485.
  * Detection of BLAS/LAPACK in use (sessionInfo()) with FlexiBLAS
    now reports the current backend.
  * The "data.frame" method for subset() now warns about extraneous
    arguments, typically catching the use of = instead of == in the
    subset expression.
  * Calling a:b when numeric a or b is longer than one may now be
    made into an error by setting environment variable
    _R_CHECK_LENGTH_COLON_ to a true value, along the proposal in
    PR#18419 by Henrik Bengtsson.
  * density(x, weights = *) now warns if automatic bandwidth
    selection happens without using weights; new optional warnWbw may
    suppress the warning.  Prompted by Christoph Dalitz' PR#18490 and
    its discussants.
  * rm(list = *) is faster and more readable thanks to Kevin Ushey's
    PR#18492.
  * The plot.lm() function no longer produces a normal Q-Q plot for
    GLMs. Instead it plots a half-normal Q-Q plot of the absolute
    value of the standardized deviance residuals.
  * The print() method for class "summary.glm" no longer shows
    summary statistics for the deviance residuals by default.  Its
    optional argument show.residuals can be used to show them if
    required.
  * The tapply() function now accepts a data frame as its X argument,
    and allows INDEX to be a formula in that case. by.data.frame()
    similarly allows INDICES to be a formula.
  * The performance of df[j] &lt;- value (including for missing j) and
    write.table(df) has been improved for data frames df with a large
    number of columns.  (Thanks to Gabriel Becker's PR#18500,
    PR#18503 and discussants, prompted by a report from Toby Dylan
    Hocking on the R-devel mailing list.)
  * The matrix multiply operator %*% is now an S3 generic, belonging
    to new group generic matrixOps.  From Tomasz Kalinowski's
    contribution in PR#18483.
  * New function array2DF() to convert arrays to data frames,
    particularly useful for the list arrays created by tapply().
  DATES and TIMES:
  * On platforms where (non-UTC) datetimes before 1902 (or before
    1900 as with system functions on recent macOS) are guessed by
    extrapolating time zones from 1902-2037, there is a warning at
    the first use of extrapolation in a session.  (As all time zones
    post 2037 are extrapolation, we do not warn on those.)
  * (Platforms using --with-internal-tzone, including Windows and by
    default macOS). How years are printed in dates or date-times can
    be controlled by environment variable R_PAD_YEARS_BY_ZERO.  The
    default remains to pad to 4 digits by zeroes, but setting value
    no gives no padding (as used by default by glibc).
  * strftime() tries harder to determine the offset for the "%z"
    format, and succeeds on the mainstream R platforms.
  * strftime() has a limit of 2048 bytes on the string produced -
    attempting to exceed this is an error.  (Previously it silently
    truncated at 255 bytes.)
  * sessionInfo() records (and by default prints) the system time
    zone as part of the locale information.  Also, the source
    (system/internal) of the date-time conversion and printing
    functions.
  * Objects of class "POSIXlt" created in this version of R always
    have 11 components: component zone is always set, and component
    gmtoff is set for times in UTC and usually set on the (almost
    all) platforms which have C-level support, otherwise is NA.
  * There are comprehensive validity checks on the structure of
    objects of class "POSIXlt" when converting (including formatting
    and printing).  (This avoids mis-conversions of hand-crafted
    objects.)
  * There is some support for using the native date-time routines on
    macOS: this is only viable on recent versions (e.g. 12.6 and 13)
    and does get wrong some historical changes (before 1900, during
    WWII).  Use of --with-internal-tzone remains the default.
  * as.POSIXct(&lt;numeric&gt;) and as.POSIXlt(.) (without specifying
    origin) now work.  So does as.Date(&lt;numeric&gt;).
  * as.Date.POSIXct(., tz) now treats several tz values, notably
    "GMT" as equivalent to "UTC", proposed and improved by Michael
    Chirico and Joshua Ulrich in PR#17674.
  * Experimental balancePOSIXlt() utility allows using "ragged" and
    or out-of-range "POSIXlt" objects more correctly, e.g., in
    subsetting and subassignments.  Such objects are now documented.
    More experimentally, a "POSIXlt" object may have an attribute
    "balanced" indicating if it is known to be filled or fully
    balanced.
  * Functions axis.Date() and axis.POSIXct() are rewritten to gain
    better default tick locations and better default formats by using
    prettyDate(). Thanks to Swetlana Herbrandt.
  * The mapping of Windows' names for time zones to IANA's 'Olson'
    names has been updated.  When ICU is available (it is by
    default), it is used to get a mapping for the current region set
    in Windows.  This can be overridden by setting environment
    variable TZ to the desired Olson name - see OlsonNames() for
    those currently available.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 16
    and so packages that provide graphics devices should be
    reinstalled.
  * The grDevices and grid packages have new functions for rendering
    typeset glyphs, primarily: grDevices::glyphInfo() and
    grid::grid.glyph().
    Rendering of typeset glyphs is only supported so far on the
    Cairo-based graphics devices and on the pdf() and quartz()
    devices.
  * The defined behaviour for "clear" and "source" compositing
    operators (via grid::grid.group()) has been changed (to align
    better with simple interpretation of original Porter-Duff
    definitions).
  * Support for gradients, patterns, clipping paths, masks, groups,
    compositing operators, and affine transformations has been added
    to the quartz() device.
  INSTALLATION on a UNIX-ALIKE:
  * A system installation of generic LAPACK 3.10.0 or later will be
    preferred to the version in the R sources.
    configure option --with-lapack=no (equivalently --without-lapack)
    forces compilation of the internal LAPACK sources.
    If --with-lapack is not specified, a system liblapack is looked
    for and used if it reports version 3.10.0 or later and does not
    contain BLAS routines.
    Packages using LAPACK will need to be reinstalled if this changes
    to using an external library.
  * On aarch64 Linux platforms using GCC, configure now defaults to
  - fPIC (instead of -fpic), as desired in PR#18326.
  * configure now checks conversion of datetimes between POSIXlt and
    POSIXct around year 2020.  Failure (which has been seen on
    platforms missing tzdata) is fatal.
  * If configure option --with-valgrind-instrumentation is given
    value 1 or 2, option --with-system-valgrind-headers is now the
    default and ignored (with a warning).  It is highly recommended
    that the system headers are installed alongside valgrind: they
    are part of its packaging on some Linux distributions and
    packaged separately (e.g. in the valgrind-devel RPM) on others.
    configure will give a warning if they are not found.
    The system headers will be required in a future release of R to
    build with valgrind instrumentation.
  * libcurl 8.x is now accepted by configure: despite a change in
    major version number it changes neither API nor ABI.
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools43, an update of the Rtools42 toolchain.  It is
    based on gcc 12 and newer versions of MinGW-W64, binutils and
    libraries.  At this time R-devel can still be built using
    Rtools42 without changes, but when R-devel is installed via the
    installer, it will by default look for Rtools43.
  * Old make targets rsync-extsoft and 32-bit ones that are no longer
    needed have been removed.
  * Default builds (including for packages) no longer select C99.
    Thus the C standard used is the default for the compiler, which
    for the toolchain in Rtools43 is C17.  (This is consistent with
    Unix builds.)
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++17 where
    available (which it is on all currently checked platforms): if
    not C++14 or C++11 is used if available otherwise C++ is not
    supported.
  * USE_FC_LEN_T is the default: this uses the correct
    (compiler-dependent) prototypes for Fortran BLAS/LAPACK routines
    called from C/C++, and requires adjustment of many such calls -
    see 'Writing R Extensions' SS6.6.1.
  * There is initial support for C++23 as several compilers are now
    supporting -std=c++23 or -std=c++2b or similar.  As for C++20,
    there no additional configure checks for C++23 features beyond a
    check that the compiler reports a __cplusplus value greater than
    that in the C++20 standard.  C++ feature tests should be used.
  * There is support for a package to indicate the version of the C
    standard which should be used to compile it, and for the
    installing user to specify this.  In most cases R defaults to the
    C compiler's default standard which is C17 (a `bug-fix' of C11) -
    earlier versions of R or compilers may have defaulted to C99.
    Current options are:
    USE_C17 Use a standard that is at most C17.  The intention is to
    allow legacy packages to still be installed when later C
    standards become the default, including packages using new
    keywords as identifiers or with K&amp;R-style function
    declarations.  This will use C17 if available, falling back
    to C11.
    USE_C90 Use the C90 (aka C89) standard.  (As that standard did
    not require compilers to identify that version, all we can
    verify is that the compiler does not claim to be using a
    later standard.  It may accept C99 features - for example
    clang accepts // to make comments.)
    USE_C99 Use the C99 standard. This should be rarely needed - it
    avoids the few new features of C11/C17 which can be useful if
    a package assumes them if C17 is specified and they are not
    implemented.
    USE_C23 Use C23 (or in future, later).  Compiler/library support
    for C23 is still being implemented, but LLVM clang from
    15.0.0 and the upcoming GCC 13 have quite extensive support.
    These can be specified as part of the SystemRequirements field in
    the package's DESCRIPTION file or _via_ options --use-C17 and so
    on of R CMD INSTALL and R CMD SHLIB.
    For further details see "Writing R Extensions" SS1.2.5.
  * (Windows) A src/Makefile.ucrt or src/Makefile.win file is now
    included after R_HOME/etcR_ARCH/Makeconf and so no longer needs
    to include that file itself.  Installation of a package with such
    a file now uses a site Makevars file in the same way as a package
    with a src/Makevars.win file would.
  * configure is now passed crucial variables such as CC and CFLAGS
    in its environment, as many packages were not setting them (as
    documented in 'Writing R Extensions' SS1.2).
    This has most effect where configure is used to compile parts of
    the package - most often by cmake or libtool which obfuscate the
    actual compile commands used.
    Also used for configure.win and configure.ucrt on Windows.
  FORTRAN FLAGS:
  * The flag -fno-optimize-sibling-calls is no longer forced for
    gfortran 7 and later.  It should no longer be needed now using
    'hidden' character-length arguments when calling BLAS/LAPACK
    routines from C/C++ is the default even for packages.  (Unless
    perhaps packages call Fortran code from C/C++ without using R's
    headers and without allowing for these arguments.)
  C-LEVEL FACILITIES:
  * The deprecated S-compatibility macros DOUBLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * The deprecated legacy typedefs of Sint and Sfloat in header R.h
    are no longer defined, and that header no longer includes header
    limits.h from C nor climits from C++.
  * New macro CAD5R() is provided in Rinternals.h and used in a few
    places in the R sources.
  * ALTREP now supports VECSXP vectors. Contributed by Gabor Csardi
    in PR#17620.
  * The Rcomplex definition (in header R_ext/Complex.h) has been
    extended to prevent possible mis-compilation when interfacing
    with Fortran (PR#18430).  The new definition causes compiler
    warnings with static initializers such as {1, 2}, which can be
    changed to {.r=1, .i=2}.
    Using the new definition from C++ depends on compiler extensions
    supporting C features that have not been incorporated into the
    C++ standards but are available in g++ and clang++: this may
    result in C++ compiler warnings but these have been worked around
    for recent versions of common compilers (GCC, Apple/LLVM clang,
    Intel).
    It is intended to change the inclusion of header R_ext/Complex.h
    by other R headers, so C/C++ code files which make use of
    Rcomplex should include that header explicitly.
  UTILITIES:
  * R CMD check does more checking of package .Rd files, warning
    about invalid email addresses and (some) invalid URIs and noting
    empty \item labels in description lists.
  * R CMD check now also reports problems when reading package news
    in md (file NEWS.md) and (optionally) plain text (file NEWS)
    formats.
  * _R_CHECK_TIMINGS_ defaults to a value from the environment even
    for R CMD check --as-cran; this allows for exceptionally fast or
    slow platforms.
    It now applies to checking PDF and HTML versions of the manuals,
    and 'checking CRAN incoming feasibility'.
  * R CMD check can optionally (but included in --as-cran) check
    whether HTML math rendering _via_ KaTeX works for the package .Rd
    files.
  * Non-interactive debugger invocations can be trapped by setting
    the environment variable _R_CHECK_BROWSER_NONINTERACTIVE_ to a
    true value.  This is enabled by R CMD check --as-cran to detect
    the use of leftover browser() statements in the package.
  * The use of sprintf and vsprintf from C/C++ has been deprecated in
    macOS 13 and is a known security risk.  R CMD check now reports
    (on all platforms) if their use is found in compiled code:
    replace by snprintf or vsnprintf respectively. [*NB:* whether
    such calls get compiled into the package is platform-dependent.]
  * Where recorded at installation, R CMD check reports the C and
    Fortran compilers used to build R.
    It reports the OS in use (if known, as given by osVersion) as
    well as that R was built for.
    It notes if a C++ standard was specified which is older than the
    current default: many packages have used C++11 to mean 'not
    C++98' - as C++11 is the minimum supported since R 4.0.0, that
    specification can probably be removed.
  * R CMD INSTALL reports the compilers (and on macOS, the SDK) used,
    and this is copied to the output of R CMD check.
    Where a C++ standard is specified, it is reported.
  * R CMD check's 'checking compilation flags in Makevars' has been
    relaxed to accept the use of flags such as -std=f2008 in
    PKG_FFLAGS.
  * tools::buildVignettes() has a new argument skip, which is used by
    R CMD check to skip (and note) vignettes with unavailable
    \VignetteDepends (PR#18318).
  * New generic .AtNames() added to enable class-specific completions
    after @. The formerly internal function findMatches() is now
    exported, mainly for use in methods for .DollarNames() and
    .AtNames().
  DEPRECATED AND DEFUNCT:
  * default.stringsAsFactors() is defunct.
  * Calling as.data.frame.&lt;class&gt;() directly (for 12 atomic classes)
    is going to be formally deprecated, currently activated by
    setting the environment variable
    _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ to non-empty, which also
    happens in R CMD check --as-cran.
  BUG FIXES:
  * Hashed environments with sizes less than 5 can now grow.
    (Reported to R-devel by Duncan Garmonsway.)
  * as.character(&lt;Rd&gt;, deparse = TRUE) failed to re-escape curly
    braces in LaTeX-like text.  (Reported by Hadley Wickham in
    PR#18324.)
  * library() now passes its lib.loc argument when requiring Depends
    packages; reported (with fix) in PR#18331 by Mikael Jagan.
  * R CMD Stangle: improved message about 'Output' files.
  * head(x, n) and tail(x, n) now signal an error if n is not
    numeric, instead of incidentally "working" sometimes returning
    all of x.  Reported and discussed by Colin Fay, in PR#18357.
  * The "lm" method for summary() now gives the correct F-statistic
    when the model contains an offset.  Reported in PR#18008.
  * C() and `contrasts&lt;-`() now preserve factor level names when
    given a function object (as opposed a function name which did
    preserve names). Reported in PR#17616.
  * c(a = 1, 2)[[]] no longer matches 2 but rather signals a
    _classed_ error.  Reported and analysed by Davis Vaughan in
    PR#18367, a duplicate of PR#18004, by Jan Meis et al.  For
    consistency, NULL[[]] is also erroneous now.  x[[]] &lt;- v gives an
    error of the same class "MissingSubscriptError".
  * The relist() function of utils now supports NULL elements in the
    skeleton (PR#15854).
  * ordered(levels = *) (missing x) now works analogously to factor(,
    ordered=TRUE); reported (with fix) by Achim Zeileis in PR#18389.
  * User-defined Rd macro definitions can now span multiple lines,
    thanks to a patch from Duncan Murdoch. Previously, the Rd parser
    silently ignored everything after the first line.
  * Plain-text help (tools::Rd2txt()) now preserves an initial blank
    line for text following description list items.
  * tools::Rd2HTML() and tools::Rd2latex() no longer split \arguments
    and \value lists at Rd comments.
  * tools::Rd2latex() now correctly handles optional text outside
    \items of argument lists as well as bracketed text at the
    beginning of sections, e.g., \value{[NULL]}.
  * as.character(&lt;POSIXt&gt;) now behaves more in line with the methods
    for atomic vectors such as numbers, and is no longer influenced
    by options().  Ditto for as.character(&lt;Date&gt;).  The
    as.character() method gets arguments digits and OutDec with
    defaults _not_ depending on options().  Use of as.character(*,
    format = .) now warns.
  * Similarly, the as.character.hexmode() and *.octmode() methods
    also behave as good citizen methods and back compatibility option
    keepStr = TRUE.
  * The as.POSIXlt(&lt;POSIXlt&gt;) and as.POSIXct(&lt;POSIXct&gt;) default
    methods now do obey their tz argument, also in this case.
  * as.POSIXlt(&lt;Date&gt;) now does apply a tz (time zone) argument, as
    does as.POSIXct(); partly suggested by Roland Fuss on the R-devel
    mailing list.
  * as.Date.POSIXlt(x) now also works when the list components are of
    unequal length, aka "partially filled" or "ragged".
  * expand.model.frame() looked up variables in the wrong environment
    when applied to models fitted without data.  Reported in
    PR#18414.
  * time() now (also) uses the ts.eps = getOption("ts.eps") argument
    and thus by default rounds values very close to the start (or
    end) of a year.  Based on a proposal by Andre"i V. Kostyrka on
    R-help.
  * Printing of a factanal() result with just one factor and sort =
    TRUE now works regularly, fixing PR#17863 by Timothy Bates,
    thanks to the 'R Contributors' working group.
  * Printing 0-length objects of class "factor", "roman", "hexmode",
    "octmode", "person", "bibentry", or "citation" now prints
    something better, one of which fixes PR#18422, reported by
    Benjamin Feakins.
  * Sys.timezone() queries timedatectl only if systemd is loaded;
    addressing a report by Jan Gorecki in PR#17421.
  * The formula method of cor.test() had scoping problems when
    environment(formula) was not the calling environment; reported
    with a patch proposal by Mao Kobayashi in PR#18439.
  * attach() of an environment with active bindings now preserves the
    active bindings.  Reported by Kevin Ushey in PR#18425.
  * BLAS detection now works also with system-provided libraries not
    available as regular files.  This fixes detection of the
    Accelerate framework on macOS since Big Sur.  Reported by David
    Novgorodsky.
  * download.file() gives a helpful error message in case of an
    invalid download.file.method option, thanks to Colin Fay's report
    in PR#18455.
  * Sporadic crashes of Rterm when using completion have been fixed.
  * Rprof() is now more reliable.  A livelock in thread
    initialization with too short sampling interval has been fixed on
    macOS.  A deadlock in using the C runtime has been fixed on
    Windows.  A potential deadlock has been prevented on Unix.
  * Cursor placement in Rgui now works even after a fixed-width font
    is selected.
  * Mandatory options (options()) are now set on startup so that
    saving and restoring them always works (PR#18372).
  * Package installation, R CMD INSTALL or install.packages(*), now
    parses each of the &lt;pkg&gt;/R/*.R files individually instead of
    first concatenating and then parse()ing the large resulting file.
    This allows parser or syntax errors to be diagnosed with correct
    file names and line numbers, thanks to Simon Dedman's report and
    Bill Dunlap's patch in PR#17859.
    This _does_ require syntactically self contained R source files
    now, fixing another inadvertent bug.
  * predict.lm(&lt;model with offset&gt;) now finds the offset in the
    correct environment, thanks to Andr'e Gillibert's report and patch
    in PR#18456.
  * getInitial(&lt;formula&gt;) now finds the selfStart model in the
    correct environment.  (Reported by Ivan Krylov in PR#18368.)
  * Fix for possible segfault when using recently-added graphics
    features, such as gradients, clipping paths, masks, and groups
    with pdf(file=NULL).
  * class(m) &lt;- class(m) no longer changes a matrix m by adding a
    class _attribute_.
  * packageDate(pkg) now only warns once if there is no pkg.
  * When ts() creates a multivariate time series, "mts", it also
    inherits from "array" now, and is.mts() is documented _and_
    stricter.
  * Rd2txt() now preserves line breaks of \verb Rd content and from
    duplicated \cr.  The former also fixes the rendering of verbatim
    output from Rd \Sexpr in plain-text help.
  * uniroot(f, interval) should no longer wrongly converge _outside_
    the interval in some cases where abs(f(x)) == Inf for an x at the
    interval boundary, thanks to posts by Ben Bolker and Serguei
    Sokol on R-devel.
  * Vectorized alpha handling in palette functions such as in gray(),
    rainbow(), or hcl.colors() works correctly now, thanks to Achim
    Zeileis' report and patch in PR#18476.
  * Formatting and print()ing of bibentry objects has dropped the
    deprecated citation.bibtex.max argument, such that the bibtex
    argument's default for print.bibentry() depends directly on the
    citation.bibtex.max option, whereas in format.bibentry() the
    option no longer applies.
  * Attempting to use a character string naming a foreign function
    entry point in a foreign function call in a package will now
    signal an error if the packages has called R_forceSymbols to
    specify that symbols must be used.
  * An error in table() could permanently set options(warn=2)
    promoting all subsequent warnings to errors.
  * The sigma() function gave misleading results for binary GLMs.  A
    new method for objects of class "glm" returns the square root of
    the estimate of the dispersion parameter using the same
    calculation as summary.glm().
  * bs() and ns() in the (typical) case of automatic knot
    construction, when some of the supposedly inner knots coincide
    with boundary knots, now moves them inside (with a warning),
    building on PR#18442 by Ben Bolker.
  * R CMD on Windows now skips the site profile with --no-site-file
    and --vanilla even when R_PROFILE is set (PR#18512, from Kevin
    Ushey).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1686916800">- CHANGES IN R 4.3.1:
  C-LEVEL FACILITIES:
  * The C-level API version of R's integrate(), Rdqags() in Applic.h,
    now returns the correct number of integrand evaluations neval,
    fixing PR#18515 reported and diagnosed by Stephen Wade.
  * The C prototypes for LAPACK calls dspgv and dtptrs in
    R_exts/Lapack.h had one too many and one too few character length
    arguments - but this has not caused any known issues. To get the
    corrected prototypes, include
    [#]include &lt;Rconfig.h&gt; // for PR18534fixed
    [#]ifdef PR18534fixed
    [#] define usePR18534fix 1
    [#]endif
    [#]include &lt;R_exts/Lapack.h&gt;
    in your C/C++ code (PR#18534).
  INSTALLATION:
  * Many of the checks of esoteric Internet operations and those
    using unreliable external sites have been moved to a new target
    that is not run by default and primarily intended for the core
    developers.  To run them use
    cd tests; make test-Internet-dev
  BUG FIXES:
  * .S3methods(), typically called from methods(), again marks
    methods from package base as visible.
    Also, the visibility of non-base methods is again determined by
    the method's presence in search().
  * tools::Rdiff() is now more robust against invalid strings, fixing
    installation tests on Windows without Rtools installed
    (PR#18530).
  * Fix (new) bug in hcl.colors(2, *), by Achim Zeileis (PR#18523).
  * head(., &lt;illegal&gt;) and tail(..) now produce more useful "Error in
    ...." error messages, fixing PR#18362.
  * Package code syntax on Windows is checked in UTF-8 when UTF-8 is
    the native encoding.
  * na.contiguous(x) now also returns the first run, when it is at
    the beginning and there is a later one of the same length;
    reported to R-devel, including a fix, by Georgi Boshnakov.
    Further, by default, it modifies only an existing attr(*,"tsp")
    but otherwise no longer sets one.
  * chol(&lt;not pos.def&gt;, pivot = &lt;T|F&gt;) now gives a correct error or
    warning message (depending on pivot), thanks to Mikael Jagan's
    (PR#18541).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1699012800">- CHANGES IN R 4.3.2:
  NEW FEATURES:
  * The default initialization of the "repos" option from the
    repositories file at startup can be skipped by setting
    environment variable R_REPOSITORIES to NULL such that
    getOption("repos") is empty if not set elsewhere.
  * qr.X() is now an implicit S4 generic in methods.
  * iconv(to = "ASCII//TRANSLIT") is emulated using substitution on
    platforms which do not support it (notably Alpine Linux).  This
    should give a human-readable conversion in ASCII on all platforms
    (rather than NA_character_).
  * trans3d() gains options continuous and verbose addressing the
    problem of possible "wrap around" when projecting too long
    curves, as reported by Achim Zeileis in PR#18537.
  * tools::showNonASCII() has been rewritten to work better on macOS
    14 (which has a changed implementation of iconv()).
  * tiff(type = "quartz") (the default on macOS) now warns if
    compression is specified: it continues to be ignored.
  INSTALLATION on a UNIX-ALIKE:
  * There is some support for building with Intel's LLVM-based
    compilers on x86_64 Linux, such as (C) icx, (C++) ipcx and
    (Fortran) ifx from oneAPI 2023.x.y.
  * There is support for using LLVM's flang-new as the Fortran
    compiler from LLVM 16.0.x (preferably 17.0.0 or later).
  UTILITIES:
  * R CMD check reports the use of the Fortran 90 random number
    generator RANDOM_NUMBER() and the subroutines to initialize it.
    'Writing R Extensions' has example code to use R's RNGs from
    Fortran.
  BUG FIXES:
  * substr(x, n, L) &lt;- cc now works (more) correctly for multibyte
    UTF-8 strings x when L &gt; nchar(x), thanks to a report and patch
    by 'Architect 95'.
  * contrib.url(character()) now returns 0-length character() as
    documented, which also avoids spurious warnings from
    available.packages() et al. in the edge case of an empty vector
    of repository URLs.
  * readChar(., 4e8) no longer fails, thanks to Kodi Arfer's report
    (PR#18557).
  * lapply(&lt;list&gt;, as.data.frame) no longer warns falsely for some
    base vector components.
  * Communication between parent and child processes in the multicore
    part of parallel could fail on platforms that do not support an
    arbitrarily large payload in system functions read()/write() on
    pipes (seen on macOS where a restriction to INT_MAX bytes is
    documented, without doing a partial read unlike Linux). The
    payload is now split into 1Gb chunks to avoid that problem.
    (PR#18571)
  * qqplot(x,y, conf.level=.) gives better confidence bounds when
    length(x) != length(y), thanks to Alexander Ploner's report and
    patch proposal (PR#18557).
  * norm(&lt;0-length&gt;, "2") now gives zero instead of an error, as all
    the other norm types, thanks to Mikael Jagan's PR#18542.
  * Build-stage Rd macros \packageAuthor and \packageMaintainer now
    process Authors@R, fixing NA results when the package DESCRIPTION
    omits Author and Maintainer fields.
  * Formatting and printing complex numbers could give things like
    0.1683-0i because of rounding error: -0i is now replaced by +0i.
  * postscript() refused to accept a title comment containing the
    letter "W" (PR#18599).
  * isoreg(c(1,Inf)) signals an error instead of segfaulting, fixing
    PR#18603.
  * tiff(type = "Xlib") was only outputting the last page of
    multi-page plots.
  * tools::latexToUtf8() again knows about \~{n} and other letters
    with tilde, fixing a regression in R 4.3.0, and about \^{i} as an
    alternative to \^{\i} (similarly with other accents).
    Furthermore, LaTeX codes for accented I letters are now correctly
    converted, also fixing related mistakes in
    tools::encoded_text_to_latex().
  * tar(*, tar = "internal") no longer creates out-of-spec tar files
    in the very rare case of user or group names longer than 32
    bytes, fixing PR#17871 with thanks to Ivan Krylov.
  * When using the "internal" timezone datetime code, adding a
    fraction of a second no longer adds one second, fixing PR#16856
    from a patch by Ivan Krylov.
  * tools::checkRd() no longer produces spurious notes about
    "unnecessary braces" from multi-line Rd results of \Sexpr macros.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1709208000">- CHANGES IN R 4.3.3:
  NEW FEATURES:
  * iconv() now fixes up variant encoding names such as "utf8"
    case-insensitively.
  DEPRECATED AND DEFUNCT:
  * The legacy encoding = "MacRoman" is deprecated in pdf() and
    postscript(): support was incomplete in earlier versions of R.
  BUG FIXES:
  * Arguments are now properly forwarded to methods on S4 generics
    with ... in the middle of their formal arguments. This was broken
    for the case when a method introduced an argument but did not
    include ... in its own formals. Thanks to Herv'e Pag`es for the
    report PR#18538.
  * Some invalid file arguments to pictex(), postscript() and xfig()
    opened a file called NA rather than throw an error.  These
    included postscript(NULL) (which some people expected to work
    like pdf(NULL)).
  * Passing filename = NA to svg(), cairo_pdf(), cairo_ps() or the
    Cairo-based bitmap devices opened a file called NA: it now throws
    an error.
  * quartz(file = NA) opened a file called NA, including when used as
    a Quartz-based bitmap device.  It now gives an error.
  * rank(&lt;long vector&gt;) now works, fixing PR#18617, thanks to Ilia
    Kats.
  * seq.int() did not adequately check its length.out argument.
  * match(&lt;POSIXct&gt;, .) is correct again for differing time zones,
    ditto for "POSIXlt", fixing PR#18618 reported by Bastian Klein.
  * drop.terms(*, dropx = &lt;0-length&gt;) now works, fixing PR#18563 as
    proposed by Mikael Jagan.
  * drop.terms(*) keeps + offset(.) terms when it should, PR#18565,
    and drop.terms() no longer makes up a response, PR#18566, fixing
    both bugs thanks to Mikael Jagan.
  * getS3method("t", "test") no longer finds the t.test() function,
    fixing PR#18627.
  * pdf() and postscript() support for the documented Adobe encodings
    "Greek" and "Cyrilllic" was missing (although the corresponding
    Windows' codepages could be used).
  * Computations of glyph metric information for pdf() and
    postscript() did not take into account that transliteration could
    replace one character by two or more (only seen on macOS 14) and
    typically warned that the information was not known.
  * rank(x) no longer overflows during integer addition, when
    computing rank average for largish but not-yet long vector x,
    fixing PR#18630, thanks to Ilia Kats.
  * list.files() on Windows now returns also files with names longer
    that 260 bytes (the Windows limit is 260 characters).
    Previously, some file names particularly with 'East Asian'
    characters were omitted.
  * cov2cor(&lt;0 x 0&gt;) now works, fixing PR#18423 thanks to Mikael
    Jagan and Elin Waring.
  * cov2cor(&lt;negative diagonal&gt;) and similar now give one warning
    instead of two, with better wording, fixing PR#18424 thanks to
    Mikael Jagan.
  * tools:: startDynamicHelp() now ensures port is in proper range,
    fixing PR#18645.
  * pbeta(x, a,b) is correct now for x=0 or 1 in the boundary cases
    where a or b or both are 0, fixing PR#18672 thanks to Michael
    Fay.
  * pmatch(x, table) for large table, also called for data frame row
    selection, dfrm[nm, ], is now interruptible, fixing PR#18656.
  * predict(&lt;rank-deficient lm&gt;, newdata=*) fix computing of nbasis,
    see Russ Lenth's comment 29 in PR#16158.
  * Added a work-around for a bug in macOS 14.3.1 and higher which
    prevents R plots in the Quartz Cocoa device from updating on
    screen.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1713960000">- CHANGES IN R 4.4.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Startup banners, R --version, sessionInfo() and R CMD check no
    longer report (64-bit) as part of the platform as this is almost
    universal - the increasingly rare 32-bit platforms will still
    report (32-bit).
    On Windows, ditto for window titles.
  * is.atomic(NULL) now returns FALSE, as NULL is not an atomic
    vector.  Strict back-compatibility would replace is.atomic(foo)
    by (is.null(foo) || is.atomic(foo)) but should happen only
    sparingly.
  NEW FEATURES:
  * The confint() methods for "glm" and "nls" objects have been
    copied to the stats package.  Previously, they were stubs which
    called versions in package MASS. The MASS namespace is no longer
    loaded if you invoke (say) confint(glmfit).  Further, the "glm"
    method for profile() and the plot() and pairs() methods for class
    "profile" have been copied from MASS to stats.  (profile.nls()
    and plot.profile.nls() were already in stats.)
  * The confint() and profile methods for "glm" objects have gained a
    possibility to do profiling based on the Rao Score statistic in
    addition to the default Likelihood Ratio. This is controlled by a
    new test = argument.
  * The pairs() method for "profile" objects has been extended with a
    which = argument to allow plotting only a subset of the
    parameters.
  * The "glm" method for anova() computes test statistics and
    p-values by default, using a chi-squared test or an F test
    depending on whether the dispersion is fixed or free.  Test
    statistics can be suppressed by giving argument test a false
    logical value.
  * In setRepositories() the repositories can be set using their
    names via name = instead of index ind =.
  * methods() and .S3methods() gain a all.names option for the (rare)
    case where functions starting with a . should be included.
  * Serializations can now be interrupted (e.g., by Ctrl-C on a
    Unix-alike) if they take too long, e.g., from save.image(),
    thanks to suggestions by Ivan Krylov and others on R-devel.
  * New startup option --max-connections to set the maximum number of
    simultaneous connections for the session.  Defaults to 128 as
    before: allowed values up to 4096 (but resource limits may in
    practice restrict to smaller values).
  * R on Windows (since Windows 10 2004) now uses the new Segment
    Heap allocator. This may improve performance of some
    memory-intensive applications.
  * When R packages are built, typically by R CMD build &lt;pkg&gt;, the
    new --user=&lt;build_user&gt; option overrides the (internally
    determined) user name, currently Sys.info()["user"] or LOGNAME.
    This is a (modified) fulfillment of Will Landau's suggestion in
    PR#17530.
  * tools::testInstalledBasic() gets new optional arguments outDir
    and testSrcdir, e.g., allowing to use it in a &lt;builddir&gt; !=
    &lt;srcdir&gt; setup, and in standard "binary" Windows installation
  * if* a source tests/ folder is present.
  * range(&lt;DT_with_Inf&gt;, finite = TRUE) now work for objects of class
    "Date", "POSIXct", and "POSIXlt" with infinite entries,
    analogously to range.default(), as proposed by Davis Vaughan on
    R-devel.  Other range()-methods can make use of new function
    .rangeNum().
  * New .internalGenerics object complementing .S3PrimitiveGenerics,
    for documentation and low-level book-keeping.
  * grid() now invisibly returns the x- and y- coordinates at which
    the grid-lines were drawn.
  * norm(., type) now also works for complex matrices.
  * kappa(., exact = TRUE, norm = *) now works for all norms and also
    for complex matrices.  In symmetric / triangular cases, the new
    argument uplo = "U" | "L" allows the upper or lower triangular
    part to be specified.
  * memDecompress(type = "unknown") recognizes compression in the
    default 'zlib' format as used by memCompress(type = "gzip").
  * memCompress() and memDecompress() will use the libdeflate library
    (&lt;https://github.com/ebiggers/libdeflate&gt;) if installed.  This
    uses the same type of compression for type = "gzip" but is 1.5-2x
    faster than the system libz library on some common platforms: the
    speed-up may depend on the library version.
  * diff() for objects of class "Date", "POSIXct", and "POSIXlt"
    accepts a units argument passed via ....
  * Dynamic help now does a much better job of rendering package
    DESCRIPTION metadata.
  * Rprof() gains an event argument and support for elapsed (real)
    time profiling on Unix (PR#18076).
  * filled.contour() gains a key.border argument.
  * tools::update_pkg_po() gets arguments pot_make and mo_make for
    _not_ re-making the corresponding files, and additionally a
    verbose argument.
  * Hexadecimal string colour specifications are now accepted in
    short form, so, for example, we can use "#123", which is
    equivalent to "#112233".
    Thanks to MikeFC for the original idea and Ella Kaye, Malcolm
    Barrett, George Stagg, and Hanne Oberman for the patch.
  * Plain-text help shows \var markup by angle brackets.
  * The new experimental primitive function declare() is intended to
    eventually allow information about R code to be communicated to
    the interpreter, compiler, and code analysis tools. The syntax
    for declarations is still being developed.
  * Functions psmirnov(), qsmirnov() and rsmirnov() in package stats
    have had argument two.sided renamed to alternative, to take into
    account that the permutation distributions of the one-sided
    statistics can be different in the case of ties.  Consequence of
    PR#18582.
  * sort() is now an implicit S4 generic in methods.
  * Formatting and printing, format(z), print(z), of complex vectors
    z no longer zap relatively small real or imaginary parts to zero,
    fixing PR#16752.  This is an API change, as it was documented
    previously to round real and imaginary parts together on purpose,
    producing nicer looking output.  As mentioned, e.g. in the PR,
    this change is compatible with many other "R-like" programming
    environments.
    We have simplified the internal code and now basically format the
    real and imaginary parts independently of each other.
  * New experimental functions Tailcall() and Exec() to support
    writing stack-space-efficient recursive functions.
  * Where characters are attempted to be plotted by pdf(),
    postscript() and xfig() which are not in the selected 8-bit
    character set (most often Latin-1) and the R session is using a
    UTF-8 locale, the warning messages will show the UTF-8 character
    rather than its bytes and one dot will be substituted per
    character rather than per byte.  (Platforms whose iconv() does
    transliteration silently plot the transliteration.)
    In a UTF-8 locale some transliterations are now done with a
    warning (e.g., dashes and Unicode minus to hyphen, ligatures are
    expanded, permille (‰) is replaced by o/oo), although the OS may
    have got there first.  These are warnings as they will continue
    to be replaced by dots in earlier versions of R.
  * The matrix multiplication functions crossprod() and tcrossprod()
    are now also primitive and S3 generic, as %*% had become in R
    4.3.0.
  * source() and example() have a new optional argument catch.aborts
    which allows continued evaluation of the R code after an error.
  * The non-Quartz tiff() devices allow additional types of
    compression if supported by the platform's libtiff library.
  * The list of base and recommended package names is now provided by
    tools::standard_package_names().
  * cairo_pdf() and cairo_ps() default to onefile = TRUE to closer
    match pdf() and postscript().
  * New option catch.script.errors provides a documented way to catch
    errors and then continue in non-interactive use.
  * L %||% R newly in base is an expressive idiom for the phrases
    if(!is.null(L)) L else R or if(is.null(L)) R else L.
  * The return value from warnings() now always inherits from
    "warnings" as documented, now also in the case of no warnings
    where it previously returned NULL.
  * as.complex("1i") now returns 0 + 1i instead of NA with a warning.
  * z &lt;- c(NA, 1i) now keeps the imaginary part Im(z[1]) == 0, no
    longer coercing to NA_complex_.  Similarly, cumsum(z) correctly
    sums real and imaginary parts separately, i.e., without
    "crosstalk" in case of NAs.
  * On Alpine Linux iconv() now maps "latin2", "latin-2", "latin9"
    and "latin-9" to encoding names the OS knows about
    (case-insensitively).
  * iconv(sub = "Unicode") now always zero-pads to four (hex) digits,
    rather than to 4 or 8.  (This seems to have become the convention
    once Unicode restricted the number of Unicode points to 2^21 - 1
    and so will never need more than 6 digits.)
  * NCOL(NULL) now returns 0 instead of 1, for consistency with
    cbind().
  * The information for the Euro glyph missing from the Adobe .afm
    files for the Courier, Helvetica and Times families has been
    copied from their URW equivalents - this will improve vertical
    centring in the pdf() and postscript() devices.
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.12.0.  The changes are almost entirely cosmetic.
  * The included LAPACK sources have been updated to version 3.12.0
    and some further double-complex routines added.
  * There are new font families for the 2014--5 URW 2.0 fonts (see
    ?pdf) which are included in recent versions of Ghostscript.
    These have font widths for most Greek glyphs and a few others
    which were missing from the original versions (whose font
    families remain available for reproducibility, although
    Ghostscript-based viewers will render using the 2.0 versions).
  * Improve the large-n efficiency of as.matrix(&lt;dist&gt;), thanks an R
    contributors effort, notably by Tim Taylor and Heather Turner,
    see PR#18660.
  * The default and numeric methods of all.equal() get a check.class
    option.
  * zapsmall() gets new optional arguments, function mFUN and min.d,
    for extra flexibility; fulfills a wish in PR#18199.  Also, it is
    now an implicit S4 generic in package methods.
  * The Rd filter for aspell() gains an ignore argument.
  * New generic function sort_by(), primarily useful for the
    data.frame method which can be used to sort rows of a data frame
    by one or more columns.
  * The icence headers for the RPC code in src/extra/xdr have been
    updated to use the GPL-compatible licence published by Oracle
    America in 2010.
  * New function pkg2HTML() in tools to create single-page HTML
    reference manuals for R packages.
  * The byte code evaluator now uses less C stack space for recursive
    calls to byte-compiled functions. It also makes more of an effort
    to avoid allocations for scalar return values.
  * New completion option backtick (disabled by default) allows
    non-syntactic completions to be wrapped in backquotes. This is
    currently only useful for Jupyter notebooks via the IRkernel
    package, and may cause problems for other backends.
  INSTALLATION:
  * The parser has been updated to work with bison 3.8.2, which is
    now used for the pre-generated parsers in gram.c, file.c, and
    gramRd.c. A few parser error messages have changed, which may
    affect code that relies on exact messages.
  INSTALLATION on a UNIX-ALIKE:
  * System valgrind headers are now required to use configure option
  - -with-valgrind-instrumentation with value 1 or 2.
  * configure will warn if it encounters a 32-bit build, as that is
    nowadays almost untested.
  * Environment variable R_SYSTEM_ABI is no longer used and so no
    longer recorded in etc/Renviron (it was not on Windows and was
    only ever used when preparing package tools).
  * If the libdeflate library and headers are available, libdeflate
    rather than libz is used to (de)compress R objects in lazy-load
    databases.  Typically tasks spend up to 5% of their time on such
    operations, although creating lazy-data databases is one of the
    exceptions.
    This can be suppressed if the library is available by the
    configure option --without-libdeflate-compression.
  * configure option --enable-lto=check has not worked reliably since
    2019 and has been removed.
  * The minimum autoconf requirement for a maintainer build has been
    increased to autoconf 2.71.
    It is intended to increase this to 2.72 for R 4.5.0: the
    distributed configure file was generated using 2.72.
  * The minimum version requirement for an external LAPACK has been
    reduced to 3.9.0.
  * No default C++ compiler is set if no C++17 compiler is detected:
    there is no longer an automatic fallback to C++14 or C++11.
    Compilers from the last five years should have sufficient
    support: for others macros CXX and CXXSTD can be set in file
    config.site to provide a fallback if needed.
    The Objective-C++ compiler now by default uses the standard
    selected by R for C++ (currently C++17) rather than the default
    standard for the C++ compiler (which on macOS is still C++98).
  INSTALLATION on macOS:
  * A new configure option --with-newAccelerate makes use of Apple's
    'new' BLAS / LAPACK interfaces in their Accelerate framework.
    Those interfaces are only available in macOS 13.3 or later, and
    building requires SDK 13.3 or later (from the Command Line Tools
    or Xcode 14.3 or later).
    By default the option uses new Accelerate for BLAS calls: to also
    use it for LAPACK use option --with-newAccelerate=lapack.  The
    later interfaces provide LAPACK 3.9.1 rather than 3.2.1: 3.9.1 is
    from 2021-04 and does not include the improved algorithms
    introduced in LAPACK 3.10.0 (including for BLAS calls).
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools44, an update of the Rtools43 toolchain.  It is
    based on GCC 13 and newer versions of MinGW-W64, binutils and
    libraries (targeting 64-bit Intel CPUs).  R-devel can no longer
    be built using Rtools43 without changes.
  * Rtools44 has experimental support for 64-bit ARM (aarch64) CPUs
    _via_ the LLVM 17 toolchain using lld, clang/flang-new and
    libc++.
  UTILITIES:
  * R CMD check notes when S4-style exports are used without
    declaring a strong dependence on package methods.
  * tools::checkRd() (used by R CMD check) detects more problems with
    \Sexpr-based dynamic content, including bad nesting of \Sexprs
    and invalid arguments.
  * tools::checkRd() now reports Rd titles and section names ending
    in a period; this is ignored by R CMD check unless environment
    variable _R_CHECK_RD_CHECKRD_MINLEVEL_ is set to -5 or smaller.
  * R CMD check now notes Rd files without an \alias, as long
    documented in 'Writing R Extensions' §1.3.1.  The check for a
    missing \description has been moved from tools::checkRd() to
    tools::checkRdContents().
  * R CMD check now visits inst/NEWS.Rd and OS-specific man
    subdirectories when checking Rd files.
  * tools::checkDocFiles() and tools::checkRdContents() now also
    check internal Rd files by default, but "specially" (ignoring
    missing documentation of arguments).
  * R CMD Rdiff gets option --useEx.
  * R CMD check now warns on non-portable uses of Fortran KIND such
    as INTEGER(KIND=4) and REAL(KIND=8).
    To see the failing lines set environment variable
    _R_CHECK_FORTRAN_KIND_DETAILS_ to a true value.
  * When checking Rd files, R CMD check now notes some of the "lost
    braces" that tools::checkRd() finds.  Typical problems are Rd
    macros missing the initial backslash (e.g., code{...}), in-text
    set notation (e.g., {1, 2}, where the braces need escaping), and
    \itemize lists with \describe-style entries of the form
    \item{label}{description}.
  * R CMD INSTALL (and hence check) will compile C++ code with
  - DR_NO_REMAP if environment variable _R_CXX_USE_NO_REMAP_ is set
    to a true value.  It is planned that this will in future become
    the default for compiling C++.
  * The new built-in Rd macro \dontdiff{} can be used to mark example
    code whose output should be ignored when comparing check output
    to reference output (tests/Examples/&lt;pkg&gt;-Ex.Rout.save).  The
    \dontdiff tag, like \donttest, is _not_ shown on the rendered
    help page, so provides a clean alternative to ##
    IGNORE_RDIFF_(BEGIN|END) comments.
  * R CMD build when there is no NAMESPACE, now uses the recommended
    exportPattern("^[^.]"), instead of exporting everything.
  * R CMD check now warns about non-ASCII characters in the NAMESPACE
    file (in addition to R files). Such packages are not portable and
    may fail to install on some platforms.
  C-LEVEL FACILITIES:
  * Headers R_ext/Applic.h and R-ext/Linpack.h used to include
    R_ext/BLAS.h although this was undocumented and unneeded by their
    documented entry points.  They no longer do so.
  * New function R_missing(), factored out from do_missing(), used to
    fix PR#18579.
  * SEXP type S4SXP has been renamed to OBJSXP to support
    experimenting with alternative object systems.  The S4SXP value
    can still be used in C code but is now deprecated.  Based on
    contributions from the R Consortium's Object-Oriented Programming
    Working Group.
  * New function pow1p(x,y) for accurate (1+x)^y.
  * mkCharLenCE was incorrectly documented to take a size_t length
    but was implemented with int (and character strings in R are
    limited to 2^31 - 1 bytes).
  DEPRECATED AND DEFUNCT:
  * data() no longer handles zipped data from long-defunct (since R
    2.13.0) --use-zip-data installations.
  * The legacy graphics devices pictex() and xfig() are now
    deprecated.  They do not support recent graphics enhancements and
    their font handling is rudimentary. The intention is to retain
    them for historical interest as long as they remain somewhat
    functional.
  * Support for encoding = "MacRoman" has been removed from the pdf()
    and postscript() devices - this was a legacy encoding supporting
    classic macOS up to 2001 and no longer has universal libiconv
    support.
  * is.R() is deprecated as no other S dialect is known to be in use
    (and this could only identify historical dialects, not future
    ones).
    Further information on calls can be obtained by setting the
    environment variable _R_DEPRECATED_IS_R_ to error which turns the
    deprecation warning into an error and so by default gives a
    traceback.  (This is done by R CMD check --as-cran.)
  * UseMethod() no longer forwards local variables assigned in the
    generic function into method call environments before evaluating
    the method body. This makes method calls behave more like
    standard function calls and makes method code easier to analyze
    correctly.
  * The twelve as.data.frame.&lt;class&gt;() methods which were deprecated
    only via _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ and in R CMD
    check --as-cran are formally deprecated now in favour of calling
    as.data.frame() or as.data.frame.vector().  The deprecation
    "check" now works also when as.data.frame() is S4 generic thanks
    to Ivan Krylov.
  * The default method for the directional comparison operators &lt;, &gt;,
    &lt;=, and &gt;= now signals an error when one of the operands is a
    language object, i.e. a symbol or a call.
  * For terms.formula(), deprecate abb and neg.out arguments
    _formally_ in addition to just documenting it.
  BUG FIXES:
  * The methods package is more robust to not being attached to the
    search path.  More work needs to be done.
  * pairwise.t.test() misbehaved when subgroups had 0 DF for
    variance, even with pool.sd = TRUE.  (PR#18594 by Jack Berry).
  * Probability distribution functions [dpq]&lt;distrib&gt;(x, *), but also
    bessel[IKJY](x, .) now consistently preserve attributes(x) when
    length(x) == 0, e.g., for a 2 x 0 matrix, thanks to Karolis
    Koncevičius' report PR#18509.
  * Group "Summary" computations such as sum(1:3, 4, na.rm = 5, NA,
    7, na.rm = LL) now give an error instead of either 17 or NN for
    LL true or false, as proposed by Ivan Krylov on the R-devel
    mailing list.  (This also means it is now an error to specify
    na.rm more than once.)
  * as.complex(x) now returns complex(real = x, imaginary = 0) for
    _all_ numerical and logical x, notably also for NA or
    NA_integer_.
  * Directories are now omitted by file.copy(, recursive = FALSE) and
    in file.append() (PR#17337).
  * gsub() and sub() are now more robust to integer overflow when
    reporting errors caused by too large input strings (PR#18346).
  * Top-level handlers are now more robust to attempts to remove a
    handler whilst handlers are running (PR#18508).
  * The handling of Alt+F4 in dialogs created on Windows using
    GraphApp has been fixed (PR#13870).
  * density() more consistently computes grid values for the
    FFT-based convolution, following Robert Schlicht's analysis and
    proposal in PR#18337, correcting density values typically by a
    factor of about 0.999.  Argument old.coords = TRUE provides back
    compatibility.
  * palette.colors() gains a name argument that defaults to FALSE
    controlling whether the vector of colours that is returned has
    names (where possible).  PR#18529.
  * tools::xgettext() no longer extracts the (non-translatable) class
    names from warningCondition and errorCondition calls.
  * S3method(&lt;gen&gt;, &lt;class&gt;, &lt;func&gt;) in the NAMESPACE file now works
    (again) when &lt;func&gt; is visible from the namespace, e.g.,
    imported, or in base.
  * getParseData(f) now also works for a function defined in the
    first of several &lt;pkg&gt;/R/*.R source files, thanks to Kirill
    Müller's report and Duncan Murdoch's patch in PR#16756.
  * Rd \Sexpr macros with nested #ifdef conditionals were not
    processed.
  * A non-blocking connection with non-default encoding (such as a
    socket) now correctly returns from readLines() after new data has
    arrived also when its EOF had been reached previously.  Thanks to
    Peter Meilstrup's report on R-devel and Ivan Krylov's report and
    patch proposal in PR#18555.
  * tools::checkRdContents() failed to detect empty argument
    descriptions when they spanned multiple lines, including those
    generated by prompt().  These cases are now noted by R CMD check.
  * Plain-text help no longer outputs spurious colons in the
    arguments list (for multi-line \item labels in the Rd source).
  * kappa() and rcond() work correctly in more cases; kappa(., norm =
    "2") now warns that it computes the 1-norm with (default) exact =
    FALSE; prompted by Mikael Jagan's quite comprehensive PR#18543.
  * Rd skeletons generated by prompt() or promptData() now use a
    dummy title (so R CMD build works).  tools::checkRdContents() has
    been updated to detect such template leftovers, including from
    promptPackage().
  * When S4 method dispatch fails because no method was found, the
    error message now includes the signature argument names; thanks
    to Michael Chirico's proposal on the R-devel list.
  * withAutoprint({ .. }) now preserves srcrefs previously lost,
    thanks to Andrew Simmons' report plus fix in PR#18572.
  * transform.data.frame() no longer adjusts names; in particular,
    untransformed variables are kept as-is, including those with
    syntactically invalid names (PR#17890).
  * The keep.source option for Rd \Sexpr blocks is no longer ignored.
  * The formula methods for t.test() and wilcox.test() now catch when
    paired is passed, addressing PR#14359; use Pair(x1, x2) ~ 1 for a
    paired test.
  * The level reported in the browser prompt was often too large. It
    now shows the number of browser contexts on the stack.
  * For cbind() and rbind(), the optional deparse.level argument is
    now properly passed to methods, thanks to Mikael Jagan's PR#18579
    and comments there.
  * Some error and warning messages for large ('long vector')
    matrix(v, nr, nc) and dim(m) &lt;- d are now correct about sizes,
    using long long formatting, fixing PR#18612 (and more) reported
    by Mikael Jagan.
  * readChar(useBytes = TRUE) now terminates strings even when the
    underlying connection uses extra spaces in the input buffer.
    This fixes problems with extra garbage seen with gzip
    connections, PR#18605.
  * Named capture in PCRE regular expressions now works also with
    more than 127 named groups (PR#18588).
  * Datetime functions are now robust against long jumps when dealing
    with internal time zone changes.  This avoids confusing warnings
    about an invalid time zone, previously triggered by turning
    warnings into errors or handling them via tryCatch (PR#17966,
    PR#17780).
  * Datetime functions now restore even an empty TZ environment
    variable after internal time zone changes (PR#17724).  This makes
    results of datetime functions with this (typically unintentional)
    setting more predictable.
  * drop.terms(*) now drops response as by default, keep.response =
    FALSE, fixing PR#18564 thanks to Mikael Jagan.
  * dummy.coef(.) now also works for lm()-models with character
    categorical predictor variables rather than factor ones, fixing
    PR#18635 reported by Jinsong Zhao.
  * formals(f) &lt;- formals(f) now also works for a function w/o
    arguments and atomic _constant_ body(f).
  * Correct as.function(&lt;invalid list&gt;, .)'s error message.
  * removeSource() is yet more thorough in finding and removing
    "srcref" and the other source references from parsed R language
    chunks, fixing PR#18638 thanks to Andrew Simmons.
  * dgeom() is more accurate now, notably when its result is very
    small, fixing PR#18642 thanks to the proposal of Morten Welinder,
    also improving other instances where C level binom_raw(x, n, ..)
    has x == 0 or x== n.
  * warning() with options(warn = 1) has improved output for
    multi-line messages.
  * axis.Date() and axis.POSIXct() now respect the par("lab") setting
    for the number of pretty() intervals.
  * Comparisons for language objects (which are based on deparsing)
    are now more careful about using accurate deparsed results
    (PR#18676).
  * Plain-text help (Rd2txt) now correctly preserves blank lines
    following single-line \dontrun code.
  * &lt;POSIXlt&gt;[*] no longer sets wrong "balanced" attribute, fixing
    PR#18681 thanks to Mikael Jagan.
  * str(&lt;classed-call&gt;) now deparses the call as expected, fixing
    PR#18684, reported by Dave Slager.
  * In Rd examples, code following the closing brace of a \dontrun,
    \dontshow or \donttest tag on the same line is no longer skipped
    when R CMD check runs the examples.
  * as.data.frame(matrix(*, ncol=0)) now gets valid names() and
    colnames(); reported by Davis Vaughan on the R-devel list.
  * Internal Mathlib function stirlerr(n) is now almost fully
    (52-bit) accurate for all n &gt;= ~5.9 and more accurate also in the
    range 1 -- 5.9.  This entails small ("after 12th decimal")
    changes in density functions, e.g., dgamma() in _some_ regions of
    their support.  The fix was partly prompted by Morten Welinder's
    PR#18640.
  * Numbers like 9876543.2 are now considered non-integer by Mathlib
    internal R_nonint(), amending original fix of PR#15734.
  * Rd comment lines no longer cause broken paragraphs in the
    rendered PDF and plain-text help. In code blocks, pure comment
    lines (starting with %) no longer produce an empty line.
  * xtabs(Freq ~ .) now consistently defaults to na.action = na.pass,
    using na.rm = FALSE (added as an argument) when summing over Freq
    (PR#17770).
  * tools::testInstalledPackage() is no longer silent about failures
    from running examples or tests and its return code no longer
    ignores failures from checking vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1718366400">- CHANGES IN R 4.4.1:
  C-LEVEL FACILITIES:
  * Functions R_atof and R_strtod declared in header R_ext/Utils.h
    are now documented in 'Writing R Extensions' and so formally part
    of the API.
  * The non-API entry points Rf_setSVector, Rf_StringFalse,
    Rf_StringTrue and Rf_isBlankString have been added to those
    reported by R CMD check.
  * The new function Rf_allocLang is now available. This provides an
    alternative to the idiom of calling Rf_allocList followed by
    SET_TYPEOF.
  UTILITIES:
  * R CMD check now reports as warnings what gfortran calls 'Fortran
    2018 deleted features', all of which have long been marked as
    'obsolescent' and some of which were deleted in Fortran 2008 or
    earlier.  Fortran compilers are no longer required to support
    these.
  BUG FIXES:
  * as.numeric(), scan(), type.convert() and other places which use
    the internal C function R_strtod now require a _non-empty_ digit
    sequence in a decimal or binary exponent.  This aligns with the
    C/POSIX standard for strtod and with ?NumericConstants.
  * as.data.frame(m, make.names=NA) now works correctly for a matrix
    m with NA's in row names.
  * The error message from &lt;POSIXlt&gt;[["hour"]] and similar now
    mentions *[[, "hour"]], as wished for in PR#17409 and proposed by
    Michael Chirico.
  * qbinom() and potentially qpois(), qnbinom(), no longer sometimes
    fail accurate inversion (of pbinom(), etc), thanks to Christopher
    Chang's report and patch in PR#18711.
  * The internal help server on Windows can again serve requests sent
    in quick succession, fixing a regression in R 4.4.0.
  * debugcall(&lt;S3Generic&gt;()) now also works when a corresponding
    S4-generic version is in the methods cache (PR#18143).
  * Package tools' toTitleCase(ch0) now returns character(0) when ch0
    is of zero length; fixing PR#18724, reported by David Hugh Jones.
  * R CMD check is no longer broken (without a check result and no
    explanation in 00check.log) for a package which declares an
    invalid VignetteBuilder in DESCRIPTION but has no vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1730376000">- CHANGES IN R 4.4.2:
  C-LEVEL FACILITIES:
  * The S-compatibility macros F77_COM and F77_COMDECL defined in
    header R_ext/RS.h are deprecated and will be removed shortly.  We
    could find no record of their use.
  BUG FIXES:
  * Mathlib function lgammacor(x) no longer warns about underflow to
    zero for large x.
  * Text widths and heights were incorrectly reported by the Quartz
    device if the drawing context didn't exist yet (typically when
    drawing off-screen to a window that is yet to appear, see
    PR#18591).
  * The Quartz device could segfault in cases where paths with spaces
    are used in the new glyph drawing API.  Thanks to Tomek
    Gieorgijewski (PR#18758).
  * On macOS in R CRAN builds, it is again possible to read
    little-endian UTF-16 text with a BOM from a connection using
    encoding="UTF-16".  Users building R from source should avoid
    using the system libiconv in macOS 14.1 and later.
  * methods' internal .requirePackage() now re-enables primitive
    method dispatch when needed; thanks to Ivan Krylov for
    demystifying CRAN package check failures on the R-devel mailing
    list.</changelog>
</package>
<package pkgid="66031d3319978ed0a66e9cb9eab79fe7eca5ba95d5d4fae2f22453ec496b6fbbaa90341117ffd4e2d643e4464bd0737aa3f96f0a53662500f7ad22da719eb298" name="R-mgcv-debuginfo" arch="i586">
  <version epoch="0" ver="1.9.1" rel="51.0.2.2.sr20241103"/>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1620302400">- To get in sync with d:l:R:autoCRAN the Matrix package's split
  in -devel was reversed.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339200">- improved spec file according to comments of dimstar in
  https://build.opensuse.org/request/show/892685</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339201">- CHANGES IN R 4.1.0:
  FUTURE DIRECTIONS:
  * It is planned that the 4.1.x series will be the last to support
    32-bit Windows, with production of binary packages for that
    series continuing until early 2023.
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Data set esoph in package datasets now provides the correct
    numbers of controls; previously it had the numbers of cases added
    to these.  (Reported by Alexander Fowler in PR#17964.)
  NEW FEATURES:
  * www.omegahat.net is no longer one of the repositories known by
    default to setRepositories().  (Nowadays it only provides source
    packages and is often unavailable.)
  * Function package_dependencies() (in package tools) can now use
    different dependency types for direct and recursive dependencies.
  * The checking of the size of tarball in R CMD check --as-cran
    &lt;pkg&gt; may be tweaked via the new environment variable
    _R_CHECK_CRAN_INCOMING_TARBALL_THRESHOLD_, as suggested in
    PR#17777 by Jan Gorecki.
  * Using c() to combine a factor with other factors now gives a
    factor, an ordered factor when combining ordered factors with
    identical levels.
  * apply() gains a simplify argument to allow disabling of
    simplification of results.
  * The format() method for class "ftable" gets a new option justify.
    (Suggested by Thomas Soeiro.)
  * New ...names() utility.  (Proposed by Neal Fultz in PR#17705.)
  * type.convert() now warns when its as.is argument is not
    specified, as the help file always said it _should_.  In that
    case, the default is changed to TRUE in line with its change in
    read.table() (related to stringsAsFactor) in R 4.0.0.
  * When printing list arrays, classed objects are now shown _via_
    their format() value if this is a short enough character string,
    or by giving the first elements of their class vector and their
    length.
  * capabilities() gets new entry "Rprof" which is TRUE when R has
    been configured with the equivalent of --enable-R-profiling (as
    it is by default).  (Related to Michael Orlitzky's report
    PR#17836.)
  * str(xS4) now also shows extraneous attributes of an S4 object
    xS4.
  * Rudimentary support for vi-style tags in rtags() and R CMD rtags
    has been added.  (Based on a patch from Neal Fultz in PR#17214.)
  * checkRdContents() is now exported from tools; it and also
    checkDocFiles() have a new option chkInternal allowing to check
    Rd files marked with keyword "internal" as well.  The latter can
    be activated for R CMD check via environment variable
    _R_CHECK_RD_INTERNAL_TOO_.
  * New functions numToBits() and numToInts() extend the raw
    conversion utilities to (double precision) numeric.
  * Functions URLencode() and URLdecode() in package utils now work
    on vectors of URIs.  (Based on patch from Bob Rudis submitted
    with PR#17873.)
  * path.expand() can expand ~user on most Unix-alikes even when
    readline is not in use.  It tries harder to expand ~, for example
    should environment variable HOME be unset.
  * For HTML help (both dynamic and static), Rd file links to help
    pages in external packages are now treated as references to
    topics rather than file names, and fall back to a file link only
    if the topic is not found in the target package. The earlier rule
    which prioritized file names over topics can be restored by
    setting the environment variable _R_HELP_LINKS_TO_TOPICS_ to a
    false value.
  * c() now removes NULL arguments before dispatching to methods,
    thus simplifying the implementation of c() methods, _but_ for
    back compatibility keeps NULL when it is the first argument.
    (From a report and patch proposal by Lionel Henry in PR#17900.)
  * Vectorize()'s result function's environment no longer keeps
    unneeded objects.
  * Function ...elt() now propagates visibility consistently with
    ..n.  (Thanks to Lionel Henry's PR#17905.)
  * capture.output() no longer uses non-standard evaluation to
    evaluate its arguments.  This makes evaluation of functions like
    parent.frame() more consistent.  (Thanks to Lionel Henry's
    PR#17907.)
  * packBits(bits, type="double") now works as inverse of
    numToBits().  (Thanks to Bill Dunlap's proposal in PR#17914.)
  * curlGetHeaders() has two new arguments, timeout to specify the
    timeout for that call (overriding getOption("timeout")) and TLS
    to specify the minimum TLS protocol version to be used for
    https:// URIs (_inter alia_ providing a means to check for sites
    using deprecated TLS versions 1.0 and 1.1).
  * For nls(), an optional constant scaleOffset may be added to the
    denominator of the relative offset convergence test for cases
    where the fit of a model is expected to be exact, thanks to a
    proposal by John Nash.  nls(*, trace=TRUE) now also shows the
    convergence criterion.
  * Numeric differentiation _via_ numericDeriv() gets new optional
    arguments eps and central, the latter for taking central divided
    differences.  The latter can be activated for nls() via
    nls.control(nDcentral = TRUE).
  * nls() now passes the trace and control arguments to getInitial(),
    notably for all self-starting models, so these can also be fit in
    zero-noise situations via a scaleOffset.  For this reason, the
    initial function of a selfStart model must now have ... in its
    argument list.
  * bquote(splice = TRUE) can now splice expression vectors with
    attributes: this makes it possible to splice the result of
    parse(keep.source = TRUE).  (Report and patch provided by Lionel
    Henry in PR#17869.)
  * textConnection() gets an optional name argument.
  * get(), exists(), and get0() now signal an error if the first
    argument has length greater than 1.  Previously additional
    elements were silently ignored.  (Suggested by Antoine Fabri on
    R-devel.)
  * R now provides a shorthand notation for creating functions, e.g.
    \(x) x + 1 is parsed as function(x) x + 1.
  * R now provides a simple native forward pipe syntax |&gt;.  The
    simple form of the forward pipe inserts the left-hand side as the
    first argument in the right-hand side call.  The pipe
    implementation as a syntax transformation was motivated by
    suggestions from Jim Hester and Lionel Henry.
  * all.equal(f, g) for functions now by default also compares their
    environment(.)s, notably via new all.equal method for class
    function.  Comparison of nls() fits, e.g., may now need
    all.equal(m1, m2, check.environment = FALSE).
  * .libPaths() gets a new option include.site, allowing to _not_
    include the site library.  (Thanks to Dario Strbenac's suggestion
    and Gabe Becker's PR#18016.)
  * Lithuanian translations are now available.  (Thanks to Rimantas
    Zakauskas.)
  * names() now works for DOTSXP objects.  On the other hand, in
    R-lang, the R language manual, we now warn against relying on the
    structure or even existence of such dot-dot-dot objects.
  * all.equal() no longer gives an error on DOTSXP objects.
  * capabilities("cairo") now applies only to the file-based devices
    as it is now possible (if very unusual) to build R with Cairo
    support for those but not for X11().
  * There is optional support for tracing the progress of
    loadNamespace() - see its help.
  * (Not Windows.)  l10n_info() reports an additional element, the
    name of the encoding as reported by the OS (which may differ from
    the encoding part (if any) of the result from
    Sys.getlocale("LC_CTYPE").
  * New function gregexec() which generalizes regexec() to find _all_
    disjoint matches and well as all substrings corresponding to
    parenthesized subexpressions of the given regular expression.
    (Contributed by Brodie Gaslam.)
  * New function charClass() in package utils to query the
    wide-character classification functions in use (such as
    iswprint).
  * The names of quantile()'s result no longer depend on the global
    getOption("digits"), but quantile() gets a new optional argument
    digits = 7 instead.
  * grep(), sub(), regexp and variants work considerably faster for
    long factors with few levels.  (Thanks to Michael Chirico's
    PR#18063.)
  * Provide grouping of x11() graphics windows within a window
    manager such as Gnome or Unity; thanks to a patch by Ivan Krylov
    posted to R-devel.
  * The split() method for class data.frame now allows the f argument
    to be specified as a formula.
  * sprintf now warns on arguments unused by the format string.
  * New palettes "Rocket" and "Mako" for hcl.colors() (approximating
    palettes of the same name from the 'viridisLite' package).
    Contributed by Achim Zeileis.
  * The base environment and its namespace are now locked (so one can
    no longer add bindings to these or remove from these).
  * Rterm handling of multi-byte characters has been improved,
    allowing use of such characters when supported by the current
    locale.
  * Rterm now accepts ALT+ +xxxxxxxx sequences to enter Unicode
    characters as hex digits.
  * Environment variable LC_ALL on Windows now takes precedence over
    LC_CTYPE and variables for other supported categories, matching
    the POSIX behaviour.
  * duplicated() and anyDuplicated() are now optimized for integer
    and real vectors that are known to be sorted via the ALTREP
    framework. Contributed by Gabriel Becker via PR#17993.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 14
    and so packages that provide graphics devices should be
    reinstalled.
  * Graphics devices should now specify deviceVersion to indicate
    what version of the graphics engine they support.
  * Graphics devices can now specify deviceClip.  If TRUE, the
    graphics engine will never perform any clipping of output itself.
    The clipping that the graphics engine does perform (for both
    canClip = TRUE and canClip = FALSE) has been improved to avoid
    producing unnecessary artifacts in clipped output.
  * The grid package now allows gpar(fill) to be a linearGradient(),
    a radialGradient(), or a pattern().  The viewport(clip) can now
    also be a grob, which defines a clipping path, and there is a new
    viewport(mask) that can also be a grob, which defines a mask.
    These new features are only supported so far on the Cairo-based
    graphics devices and on the pdf() device.
  * (Not Windows.)  A warning is given when a Cairo-based type is
    specified for a png(), jpeg(), tiff() or bmp() device but Cairo
    is unsupported (so type = "Xlib" is tried instead).
  * grSoftVersion() now reports the versions of FreeType and
    FontConfig if they are used directly (not _via_ Pango), as is
    most commonly done on macOS.
  C-LEVEL FACILITIES:
  * The _standalone_ libRmath math library and R's C API now provide
    log1pexp() again as documented, and gain log1mexp().
  INSTALLATION on a UNIX-ALIKE:
  * configure checks for a program pkgconf if program pkg-config is
    not found.  These are now only looked for on the path (like
    almost all other programs) so if needed specify a full path to
    the command in PKG_CONFIG, for example in file config.site.
  * C99 function iswblank is required - it was last seen missing ca
    2003 so the workaround has been removed.
  * There are new configure options --with-internal-iswxxxxx,
  - -with-internal-towlower and --with-internal-wcwidth which allows
    the system functions for wide-character classification,
    case-switching and width (wcwidth and wcswidth) to be replaced by
    internal ones.  The first has long been used on macOS, AIX (and
    Windows) but this enables it to be unselected there and selected
    for other platforms (it is the new default on Solaris).  The
    second is new in this version of R and is selected by default on
    macOS and Solaris.  The third has long been the default and
    remains so as it contains customizations for East Asian
    languages.
    System versions of these functions are often minimally
    implemented (sometimes only for ASCII characters) and may not
    cover the full range of Unicode points: for example Solaris (and
    Windows) only cover the Basic Multilingual Plane.
  * Cairo installations without X11 are more likely to be detected by
    configure, when the file-based Cairo graphics devices will be
    available but not X11(type = "cairo").
  * There is a new configure option --with-static-cairo which is the
    default on macOS.  This should be used when only static cairo
    (and where relevant, Pango) libraries are available.
  * Cairo-based graphics devices on platforms without Pango but with
    FreeType/FontConfig will make use of the latter for font
    selection.
  LINK-TIME OPTIMIZATION on a UNIX-ALIKE:
  * Configuring with flag --enable-lto=R now also uses LTO when
    installing the recommended packages.
  * R CMD INSTALL and R CMD SHLIB have a new flag --use-LTO to use
    LTO when compiling code, for use with R configured with
  - -enable-lto=R.  For R configured with --enable-lto, they have
    the new flag --no-use-LTO.
    Packages can opt in or out of LTO compilation _via_ a UseLTO
    field in the DESCRIPTION file.  (As usual this can be overridden
    by the command-line flags.)
  BUILDING R on Windows:
  * for GCC &gt;= 8, FC_LEN_T is defined in config.h and hence character
    lengths are passed from C to Fortran in _inter alia_ BLAS and
    LAPACK calls.
  * There is a new text file src/gnuwin32/README.compilation, which
    outlines how C/Fortran code compilation is organized and
    documents new features:
  * R can be built with Link-Time Optimization with a suitable
    compiler - doing so with GCC 9.2 showed several
    inconsistencies which have been corrected.
  * There is support for cross-compiling the C and Fortran code
    in R and standard packages on suitable (Linux) platforms.
    This is mainly intended to allow developers to test later
    versions of compilers - for example using GCC 9.2 or 10.x has
    detected issues that GCC 8.3 in Rtools40 does not.
  * There is experimental support for cross-building R packages
    with C, C++ and/or Fortran code.
  * The R installer can now be optionally built to support a single
    architecture (only 64-bit or only 32-bit).
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++14 where
    available (which it is on all currently checked platforms): if
    not (as before) C++11 is used if available otherwise C++ is not
    supported.
    Packages which specify C++11 will still be installed using C++11.
    C++14 compilers may give deprecation warnings, most often for
    std::random_shuffle (deprecated in C++14 and removed in C++17).
    Either specify C++11 (see 'Writing R Extensions') or modernize
    the code and if needed specify C++14.  The latter has been
    supported since R 3.4.0 so the package's DESCRIPTION would need
    to include something like
    Depends: R (&gt;= 3.4)
  PACKAGE INSTALLATION on Windows:
  * R CMD INSTALL and R CMD SHLIB make use of their flag --use-LTO
    when the LTO_OPT make macro is set in file etc/${R_ARCH}/Makeconf
    or in a personal/site Makevars file.  (For details see 'Writing R
    Extensions' SS4.5.)
    This provides a valuable check on code consistency.  It does work
    with GCC 8.3 as in Rtools40, but that does not detect everything
    the CRAN checks with current GCC do.
  PACKAGE INSTALLATION on macOS:
  * The default personal library directory on builds with
  - -enable-aqua (including CRAN builds) now differs by CPU type,
    one of
    ~/Library/R/x86_64/x.y/library
    ~/Library/R/arm64/x.y/library
    This uses the CPU type R (and hence the packages) were built for,
    so when a x86_64 build of R is run under Rosetta emulation on an
    arm64 Mac, the first is used.
  UTILITIES:
  * R CMD check can now scan package functions for bogus return
    statements, which were possibly intended as return() calls (wish
    of PR#17180, patch by Sebastian Meyer). This check can be
    activated via the new environment variable
    _R_CHECK_BOGUS_RETURN_, true for --as-cran.
  * R CMD build omits tarballs and binaries of previous builds from
    the top-level package directory.  (PR#17828, patch by Sebastian
    Meyer.)
  * R CMD check now runs sanity checks on the use of LazyData, for
    example that a data directory is present and that
    LazyDataCompression is not specified without LazyData and has a
    documented value.  For packages with large LazyData databases
    without specifying LazyDataCompression, there is a reference to
    the code given in 'Writing R Extensions' SS1.1.6 to test the
    choice of compression (as in all the CRAN packages tested a
    non-default method was preferred).
  * R CMD build removes LazyData and LazyDataCompression fields from
    the DESCRIPTION file of packages without a data directory.
  ENCODING-RELATED CHANGES:
  * The parser now treats \Unnnnnnnn escapes larger than the upper
    limit for Unicode points (\U10FFFF) as an error as they cannot be
    represented by valid UTF-8.
    Where such escapes are used for outputting non-printable
    (including unassigned) characters, 6 hex digits are used (rather
    than 8 with leading zeros).  For clarity, braces are used, for
    example \U{0effff}.
  * The parser now looks for non-ASCII spaces on Solaris (as
    previously on most other OSes).
  * There are warnings (including from the parser) on the use of
    unpaired surrogate Unicode points such as \uD834.  (These cannot
    be converted to valid UTF-8.)
  * Functions nchar(), tolower(), toupper() and chartr() and those
    using regular expressions have more support for inputs with a
    marked Latin-1 encoding.
  * The character-classification functions used (by default) to
    replace the system iswxxxxx functions on Windows, macOS and AIX
    have been updated to Unicode 13.0.0.
    The character-width tables have been updated to include new
    assignments in Unicode 13.0.0.
  * The code for evaluating default (extended) regular expressions
    now uses the same character-classification functions as the rest
    of R (previously they differed on Windows, macOS and AIX).
  * There is a build-time option to replace the system's
    wide-character wctrans C function by tables shipped with R: use
    configure option --with-internal-towlower or (on Windows)
  - DUSE_RI18N_CASE in CFLAGS when building R.  This may be needed
    to allow tolower() and toupper() to work with Unicode characters
    beyond the Basic Multilingual Plane where not supported by system
    functions (e.g. on Solaris where it is the new default).
  * R is more careful when truncating UTF-8 and other multi-byte
    strings that are too long to be printed, passed to the system or
    libraries or placed into an internal buffer.  Truncation will no
    longer produce incomplete multibyte characters.
  DEPRECATED AND DEFUNCT:
  * Function plclust() from the package stats and
    package.dependencies(), pkgDepends(), getDepList(),
    installFoundDepends(), and vignetteDepends() from package tools
    are defunct.
  * Defunct functions checkNEWS() and readNEWS() from package tools
    and CRAN.packages() from utils have been removed.
  * R CMD config CXXCPP is defunct (it was deprecated in R 3.6.2).
  * parallel::detectCores() drops support for Irix (retired in 2013).
  * The LINPACK argument to chol.default(), chol2inv(),
    solve.default() and svd() has been defunct since R 3.1.0.  It was
    silently ignored up to R 4.0.3 but now gives an error.
  * Subsetting/indexing, such as ddd[*] or ddd$x on a DOTSXP
    (dot-dot-dot) object ddd has been disabled; it worked by accident
    only and was undocumented.
  BUG FIXES:
  * Many more C-level allocations (mainly by malloc and strdup) are
    checked for success with suitable alternative actions.
  * Bug fix for replayPlot(); this was turning off graphics engine
    display list recording if a recorded plot was replayed in the
    same session.  The impact of the bug became visible if resize the
    device after replay OR if attempted another savePlot() after
    replay (empty display list means empty screen on resize or empty
    saved plot).
  * R CMD check etc now warn when a package exports non-existing S4
    classes or methods, also in case of no "methods" presence.
    (Reported by Alex Bertram; reproducible example and patch by
    Sebastian Meyer in PR#16662.)
  * boxplot() now also accepts calls for labels such as ylab, the
    same as plot().  (Reported by Marius Hofert.)
  * The help page for xtabs() now correctly states that addNA is
    setting na.action = na.pass among others.  (Reported as PR#17770
    by Thomas Soeiro.)
  * The R CMD check &lt;pkg&gt; gives a longer and more comprehensible
    message when DESCRIPTION misses dependencies, e.g., in Imports:.
    (Thanks to the contributors of PR#17179.)
  * update.default() now calls the generic update() on the formula to
    work correctly for models with extended formulas.  (As reported
    and suggested by Neal Fultz in PR#17865.)
  * The horizontal position of leaves in a dendrogram is now correct
    also with center = FALSE.  (PR#14938, patch from Sebastian
    Meyer.)
  * all.equal.POSIXt() no longer warns about and subsequently ignores
    inconsistent "tzone" attributes, but describes the difference in
    its return value (PR#17277).  This check can be disabled _via_
    the new argument check.tzone = FALSE as suggested by Sebastian
    Meyer.
  * as.POSIXct() now populates the "tzone" attribute from its tz
    argument when x is a logical vector consisting entirely of NA
    values.
  * x[[2^31]] &lt;- v now works.  (Thanks to the report and patch by
    Suharto Anggono in PR#17330.)
  * In log-scale graphics, axis() ticks and label positions are now
    computed more carefully and symmetrically in their range,
    typically providing _more_ ticks, fulfilling wishes in PR#17936.
    The change really corresponds to an improved axisTicks() (package
    grDevices), potentially influencing grid and lattice, for
    example.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now correct to at
    least five digits where it was catastrophically wrong,
    previously.
  * sum(df) and similar "Summary"- and "Math"-group member functions
    now work for data frames df with logical columns, notably also of
    zero rows.  (Reported to R-devel by Martin "b706".)
  * unsplit() had trouble with tibbles due to unsound use of rep(NA,
    len)-indexing, which should use NA_integer_ (Reported to R-devel
    by Mario Annau.)
  * pnorm(x, log.p = TRUE) underflows to -Inf slightly later.
  * show(&lt;hidden S4 generic&gt;) prints better and without quotes for
    non-hidden S4 generics.
  * read.table() and relatives treated an "NA" column name as missing
    when check.names = FALSE PR#18007.
  * Parsing strings containing UTF-16 surrogate pairs such as
    "\uD834\uDD1E" works better on some (uncommon) platforms.
    sprintf("%X", utf8ToInt("\uD834\uDD1E")) should now give "1D11E"
    on all platforms.
  * identical(x,y) is no longer true for differing DOTSXP objects,
    fixing PR#18032.
  * str() now works correctly for DOTSXP and related exotics, even
    when these are doomed.
    Additionally, it no longer fails for lists with a class and
    "irregular" method definitions such that e.g. lapply(*) will
    necessarily fail, as currently for different igraph objects.
  * Too long lines in environment files (e.g. Renviron) no longer
    crash R. This limit has been increased to 100,000 bytes.
    (PR#18001.)
  * There is a further workaround for FreeType giving incorrect
    italic font faces with cairo-based graphics devices on macOS.
  * add_datalist(*, force = TRUE) (from package tools) now actually
    updates an existing data/datalist file for new content.  (Thanks
    to a report and patch by Sebastian Meyer in PR#18048.)
  * cut.Date() and cut.POSIXt() could produce an empty last interval
    for breaks = "months" or breaks = "years".  (Reported as PR#18053
    by Christopher Carbone.)
  * Detection of the encoding of 'regular' macOS locales such as
    en_US (which is UTF-8) had been broken by a macOS change:
    fortunately these are now rarely used with en_US.UTF-8 being
    preferred.
  * sub() and gsub(pattern, repl, x, *) now keep attributes of x such
    as names() also when pattern is NA (PR#18079).
  * Time differences ("difftime" objects) get a replacement and a
    rep() method to keep "units" consistent.  (Thanks to a report and
    patch by Nicolas Bennett in PR#18066.)
  * The \RdOpts macro, setting defaults for \Sexpr options in an Rd
    file, had been ineffective since R 2.12.0: it now works again.
    (Thanks to a report and patch by Sebastian Meyer in PR#18073.)
  * mclapply and pvec no longer accidentally terminate parallel
    processes started before by mcparallel or related calls in
    package parallel (PR#18078).
  * grep and other functions for evaluating (extended) regular
    expressions handle in Unicode also strings not explicitly flagged
    UTF-8, but flagged native when running in UTF-8 locale.
  * Fixed a crash in fifo implementation on Windows (PR#18031).
  * Binary mode in fifo on Windows is now properly detected from
    argument open (PR#15600, PR#18031).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1622808000">- The line %{__install} -m 755 -d %{_infodir}
  no longer works in TW or Factory.
  But without that line it works everywhere. So this instruction
  was commented out of the spec file.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1628596800">- CHANGES IN R 4.1.1:
  NEW FEATURES:
  * require(pkg, quietly = TRUE) is quieter and in particular does
    not warn if the package is not found.
  DEPRECATED AND DEFUNCT:
  * Use of ftp:// URIs should be regarded as deprecated, with
    on-going support confined to method = "libcurl" and not routinely
    tested.  (Nowadays no major browser supports them.)
  * The non-default method = "internal" is deprecated for http:// and
    ftp:// URIs for both download.file and url.
  * On Windows, method = "wininet" is deprecated for http://,
    https:// and ftp:// URIs for both download.file and url.  (A
    warning is only given for ftp://.)
    For ftp:// URIs the default method is now "libcurl" if available
    (which it is on CRAN builds).
    method = "wininet" remains the default for http:// and https://
    URIs but if libcurl is available, using method = "libcurl" is
    preferred.
  INSTALLATION:
  * make check now works also without a LaTeX installation.  (Thanks
    to Sebastian Meyer's PR#18103.)
  BUG FIXES:
  * make check-devel works again in an R build configured with
  - -without-recommended-packages.
  * qnbinom(p, size, mu) for large size/mu is correct now in a range
    of cases (PR#18095); similarly for the (size, prob)
    parametrization of the negative binomial.  Also qpois() and
    qbinom() are better and or faster for extreme cases.  The
    underlying C code has been modularized and is common to all four
    cases of discrete distributions.
  * gap.axis is now part of the axis() arguments which are passed
    from bxp(), and hence boxplot().  (Thanks to Martin Smith's
    report and suggestions in PR#18109.)
  * .First and .Last can again be set from the site profile.
  * seq.int(from, to, *) and seq.default(..) now work better in large
    range cases where from-to is infinite where the two boundaries
    are finite.
  * all.equal(x,y) now returns TRUE correctly also when several
    entries of abs(x) and abs(y) are close to .Machine$double.xmax,
    the largest finite numeric.
  * model.frame() now clears the object bit when removing the class
    attribute of a value via na.action (PR#18100).
  * charClass() now works with multi-character strings on Windows
    (PR#18104, fixed by Bill Dunlap).
  * encodeString() on Solaris now works again in Latin-1 encoding on
    characters represented differently in UTF-8.  Support for
    surrogate pairs on Solaris has been improved.
  * file.show() on Windows now works with non-ASCII path names
    representable in the current native encoding (PR#18132).
  * Embedded R on Windows can now find R home directory via the
    registry even when installed only for the current user
    (PR#18135).
  * pretty(x) with finite x now returns finite values also in the
    case where the extreme x values are close in size to the maximal
    representable number .Machine$double.xmax.
    Also, it's been tweaked for very small ranges and when a boundary
    is close (or equal) to zero; e.g., pretty(c(0,1e-317)) no longer
    has negative numbers, currently still warning about a very small
    range, and pretty(2^-(1024 - 2^-1/(c(24,10)))) is more accurate.
  * The error message for not finding vignette files when weaving has
    correct file sizes now. (Thanks to Sebastian Meyer's PR#18154.)
  * dnbinom(20, &lt;large&gt;, 1) now correctly gives 0, and similar cases
    are more accurate with underflow precaution.  (Reported by Francisco Vera Alcivar in PR#18072.)</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635163200">- repaired https://bugzilla.suse.com/show_bug.cgi?id=1191380
  (rpmacros now go to rpmmacrodir)
- minor clean-ups in spec file</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635768000">- CHANGES IN R 4.1.2:
  C-LEVEL FACILITIES:
  * The workaround in headers R.h and Rmath.h (using namespace std;)
    for the Oracle Developer Studio compiler is no longer needed now
    C++11 is required so has been removed.  A couple more usages of
    log() (which should have been std::log()) with an int argument
    are reported on Solaris.
  * The undocumented limit of 4095 bytes on messages from the
    S-compatibility macros PROBLEM and MESSAGE is now documented and
    longer messages will be silently truncated rather than
    potentially causing segfaults.
  * If the R_NO_SEGV_HANDLER environment variable is non-empty, the
    signal handler for SEGV/ILL/BUS signals (which offers recovery
    user interface) is not set. This allows more reliable debugging
    of crashes that involve the console.
  DEPRECATED AND DEFUNCT:
  * The legacy S-compatibility macros PROBLEM, MESSAGE, ERROR, WARN,
    WARNING, RECOVER, ... are deprecated and will be hidden in R
    4.2.0. R's native interface of Rf_error and Rf_warning has long
    been preferred.
  BUG FIXES:
  * .mapply(F, dots, .) no longer segfaults when dots is not a list
    and uses match.fun(F) as always documented; reported by Andrew
    Simmons in PR#18164.
  * hist(&lt;Date&gt;, ...) and hist(&lt;POSIXt&gt;, ...)  no longer pass
    arguments for rect() (such as col and density) to axis().
    (Thanks to Sebastian Meyer's PR#18171.)
  * \Sexpr{ch} now preserves Encoding(ch). (Thanks to report and
    patch by Jeroen Ooms in PR#18152.)
  * Setting the RNG to "Marsaglia-Multicarry" e.g., by RNGkind(), now
    warns in more places, thanks to Andr'e Gillibert's report and
    patch in PR#18168.
  * gray(numeric(), alpha=1/2) no longer segfaults, fixing PR#18183,
    reported by Till Krenz.
  * Fixed dnbinom(x, size=&lt;very_small&gt;, .., log=TRUE) regression,
    reported by Martin Morgan.
  * as.Date.POSIXlt(x) now keeps names(x), thanks to Davis Vaughan's
    report and patch in PR#18188.
  * model.response() now strips an "AsIs" class typically, thanks to
    Duncan Murdoch's report and other discussants in PR#18190.
  * try() is considerably faster in case of an error and long call,
    as e.g., from some do.call().  Thanks to Alexander Kaever's
    suggestion posted to R-devel.
  * qqline(y = &lt;object&gt;) such as y=I(.), now works, see also
    PR#18190.
  * Non-integer mgp par() settings are now handled correctly in
    axis() and mtext(), thanks to Mikael Jagan and Duncan Murdoch's
    report and suggestion in PR#18194.
  * formatC(x) returns length zero character() now, rather than ""
    when x is of length zero, as documented, thanks to Davis
    Vaughan's post to R-devel.
  * removeSource(fn) now retains (other) attributes(fn).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1647000000">- CHANGES IN R 4.1.3:
  NEW FEATURES:
  * The default version of Bioconductor has been changed to 3.14.
    (This is used by setRepositories and the menus in GUIs.)
  UTILITIES:
  * R CMD check --as-cran has a workaround for a bug in versions of
    file up to at least 5.41 which mis-identify DBF files last
    changed in 2022 as executables.
  C-LEVEL FACILITIES:
  * The legacy S-compatibility macros SINGLE_* in R_ext/Constants.h
    (included by R.h) are deprecated and will be removed in R 4.2.0.
  BUG FIXES:
  * Initialization of self-starting nls() models with initialization
    functions following the pre-R-4.1.0 API (without the ...
    argument) works again for now, with a deprecation warning.
  * Fixed quoting of ~autodetect~ in Java setting defaults to avoid
    inadvertent user lookup due to leading ~, reported in PR#18231 by
    Harold Gutch.
  * substr(., start, stop) &lt;- v now treats _negative_ stop values
    correctly.  Reported with a patch in PR#18228 by Brodie Gaslam.
  * Subscripting an array x without dimnames by a
    length(dim(x))-column character matrix gave "random" non-sense,
    now an error; reported in PR#18244 by Mikael Jagan.
  * ...names() now matches names(list(...)) closely, fixing PR#18247.
  * all.equal(*, scale = s) now works as intended when length(s) &gt; 1,
    partly thanks to Michael Chirico's PR#18272.
  * print(x) for long vectors x now also works for named atomic
    vectors or lists and prints the correct number when reaching the
    getOption("max.print") limit; partly thanks to a report and
    proposal by Hugh Parsonage to the R-devel list.
  * all.equal(&lt;selfStart&gt;, *) no longer signals a deprecation
    warning.
  * reformulate(*, response=r) gives a helpful error message now when
    length(r) &gt; 1, thanks to Bill Dunlap's PR#18281.
  * Modifying globalCallingHandlers inside withCallingHandlers() now
    works or fails correctly, thanks to Henrik Bengtsson's PR#18257.
  * hist(&lt;Date&gt;, breaks = "days") and hist(&lt;POSIXt&gt;, breaks = "secs")
    no longer fail for inputs of length 1.
  * qbeta(.001, .9, .009) and similar cases now converge correctly
    thanks to Ben Bolker's report in PR#17746.
  * window(x, start, end) no longer wrongly signals "'start' cannot
    be after 'end'", fixing PR#17527 and PR#18291.
  * data() now checks that its (rarely used) list argument is a
    character vector - a couple of packages passed other types and
    gave incorrect results.
  * which() now checks its arr.ind argument is TRUE rather coercing
    to logical and taking the first element - which gave incorrect
    results in package code.
  * model.weights() and model.offset() more carefully extract their
    model components, thanks to Ben Bolker and Tim Taylor's R-devel
    post.
  * list.files(recursive = TRUE) now shows all broken symlinks
    (previously, some of them may have been omitted, PR#18296).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1650628800">- CHANGES IN R 4.2.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * The formula method of aggregate() now matches the generic in
    naming its first argument x (resolving PR#18299 by Thomas
    Soeiro).
    This means that calling aggregate() with a formula as a named
    first argument requires name formula in earlier versions of R and
    name x now, so portable code should not name the argument (code
    in many packages did).
  * Calling &amp;&amp; or || with either argument of length greater than one
    now gives a warning (which it is intended will become an error).
  * Calling if() or while() with a condition of length greater than
    one gives an error rather than a warning.  Consequently,
    environment variable _R_CHECK_LENGTH_1_CONDITION_ no longer has
    any effect.
  * Windows users should consult the WINDOWS section below for some
    profound changes including
  * Support for 32-bit builds has been dropped.
  * UTF-8 locales are used where available.
  * The default locations for the R installation and personal
    library folder have been changed.
    Thanks to Tomas Kalibera for months of work on the Windows port
    for this release.
  NEW FEATURES:
  * matrix(x, n, m) now warns in more cases where length(x) differs
    from n * m, as suggested by Abby Spurdle and Wolfgang Huber in
    Feb 2021 on the R-devel mailing list.
    This warning can be turned into an error by setting environment
    variable _R_CHECK_MATRIX_DATA_ to TRUE: R CMD check --as-cran
    does so unless it is already set.
  * Function file_test() in package utils gains tests for symlinks,
    readability and writability.
  * capabilities("libxml") is now false.
    The description of capabilities("http/ftp") now reflects that it
    refers to the default method, no longer the internal one.
  * simplify2array() gains an except argument for controlling the
    exceptions used by sapply().
  * Environment variables R_LIBS_USER and R_LIBS_SITE are both now
    set to the R system default if unset or empty, and can be set to
    NULL to indicate an empty list of user or site library
    directories.
  * The warning for axis()(-like) calls in cases of relatively small
    ranges (typically in log-scale situations) is slightly improved
    _and_ suppressed from explicit calls to .axisPars() as has always
    been the intention.
  * The contrasts setter function `contrasts&lt;-` gains an explicit
    default how.many = NULL rather than just using missing(how.many).
  * grid.pretty() gains a new optional argument n = 5.
  * There is a new function .pretty() with option bounds as a
    technical-utility version of pretty().  It and pretty() gain a
    new argument f.min with a better than back-compatible default.
  * Function grDevices::axisTicks() and related functions such as
    graphics::axis() work better, notably for the log scale; partly
    because of the pretty() improvements, but also because care is
    taken e.g., when ylim is finite but diff(ylim) is infinite.
  * nclass.FD() gains a digits option.
  * The R Mathlib internal C function bd0() (called indirectly from a
    dozen probability density and distribution functions such as
    dpois(), dbinom(), dgamma(), pgamma() _etc_) has been
    complemented by a more sophisticated and (mostly) more accurate C
    function ebd0(), currently called only by internal dpois_raw()
    improving accuracy for R level dpois() and potentially others
    calling it such as dnbinom(), dgamma() or pgamma().  (Thanks to
    Morten Welinder's PR#15628.)
  * write.ftable() gains sep = " " argument as suggested by Thomas
    Soeiro.
  * The names of the locale categories supported by R's
    Sys.getlocale() and Sys.setlocale() are now provided by variable
    .LC.categories in the base namespace.
  * The Date and POSIXt methods for hist() and the histogram method
    for plot() now also use the new default col = "lightgray" in
    consistency with the corresponding change to hist()'s default for
    R 4.0.0.
  * hist.default() gains new fuzz argument, and the histogram plot
    method no longer uses fractional axis ticks when displaying
    counts ("Frequency").
  * mapply() and hence Map() now also obey the "max-or-0-if-any"
    recycling rule, such that, e.g., Map(`+`, 1:3, 1[0]) is valid
    now.
  * as.character(&lt;obj&gt;) for "hexmode" or "octmode" objects now
    fulfils the important basic rule as.character(x)[j] ===
    as.character(x[j]).
  * The set utility functions, notably intersect() have been tweaked
    to be more consistent and symmetric in their two set arguments,
    also preserving a common mode.
  * substr(ch, start,end) &lt;- new now e.g., preserves names(ch); ditto
    for substring(), thanks to a patch from Brodie Gaslam.
  * plot(&lt;lm&gt;) gains a extend.ylim.f argument, in partial response to
    PR#15285; further PR#17784 is fixed thanks to several
    contributors and a patch by Elin Waring.  The Cook's dist
    contours get customizable via cook.col and cook.lty with a
    different default color and their legend is nicer by default and
    customizable via cook.legendChanges.
  * Attempting to subset an object that is not subsettable now
    signals an error of class notSubsettableError. The
    non-subsettable object is contained in the object field of the
    error condition.
  * Subscript-out-of-bounds errors are now signaled as errors of
    class subscriptOutOfBoundsError.
  * Stack-overflow errors are now signaled as errors inheriting from
    class stackOverflowError. See ?stackOverflowError for more
    details.
  * New partly experimental Sys.setLanguage() utility, solving the
    main problem of PR#18055.
  * gettext() and gettextf() get a new option trim = TRUE which when
    set to false allows translations for strings such as "Execution
    halted\n" typical for C code.
  * An experimental implementation of hash tables is now available.
    See ?hashtab for more details.
  * identical() gains a extptr.as.ref argument for requesting that
    external pointer objects be compared as reference objects.
  * reorder() gets an argument decreasing which it passes to sort()
    for level creation; based on the wish and patch by Thomas Soeiro
    in PR#18243.
  * as.vector() gains a data.frame method which returns a simple
    named list, also clearing a long standing 'FIXME' to enable
    as.vector(&lt;data.frame&gt;, mode="list").  This breaks code relying
    on as.vector(&lt;data.frame&gt;) to return the unchanged data frame.
  * legend() is now vectorized for arguments cex, x.intersp, and
    text.width.  The latter can now also be specified as a vector
    (one element for each column of the legend) or as NA for
    computing a proper column wise maximum value of strwidth(legend).
    The argument y.intersp can be specified as a vector with one
    entry for each row of the legend.
    legend() also gains new arguments title.cex and title.font.
    Thanks to Swetlana Herbrandt.
  * Deparsing no longer remaps attribute names dim, dimnames, levels,
    names and tsp to historical S-compatible names (which structure()
    maps back).
  * sample() and sample.int() have additional sanity checks on their
    size and n arguments.
    all.equal.numeric() gains a sanity check on its tolerance
    argument - calling all.equal(a, b, c) for three numeric vectors
    is a surprisingly common error.
    mean(na.rm =), rank(na.last =), barplot(legend.text =),
    boxplot(), contour(drawlabels =), polygon(border =) and
    methods::is(class2 =) have more robust sanity checks on their
    arguments.
    R CMD Rd2pdf (used by R CMD check) has a more robust sanity check
    on the format of \alias{} commands.
  * psigamma(x, deriv) for negative x now also works for deriv = 4
    and 5; their underlying C level dpsifn() is documented in
    'Writing R Extensions'.
  * The HTML help system now uses HTML5 (wish of PR#18149).
  * ks.test() now provides exact p-values also with ties and MC
    p-values in the two-sample (Smirnov) case.  By Torsten Hothorn.
  * ks.test() gains a formula interface, with y ~ 1 for the
    one-sample (Kolmogorov) test and y ~ group for the two-sample
    (Smirnov) test.  Contributed by Torsten Hothorn.
  * The return value from ks.test() now has class c("ks.test",
    "htest") - packages using try() need to take care to use
    inherits() and not == on the class.
  * New functions psmirnov(), qsmirnov() and rsmirnov() in package
    stats implementing the asymptotic and exact distributions of the
    two-sample Smirnov statistic.
  * iconv() now allows sub = "c99" to use C99-style escapes for UTF-8
    inputs which cannot be converted to encoding to.
  * In a forward pipe |&gt; expression it is now possible to use a named
    argument with the placeholder _ in the rhs call to specify where
    the lhs is to be inserted.  The placeholder can only appear once
    on the rhs.
  * The included LAPACK sources have been updated to version 3.10.0,
    except for the four Fortran 77 routines which 3.10.0 has
    re-implemented in Fortran 90 (where the older versions have been
    retained as the R build process does not support Fortran 90).
  * path.expand() and most other uses of tilde expansion now warn if
    a path would be too long if expanded.  (An exception is
    file.exists(), which silently returns false.)
  * trunc(&lt;Date&gt;, *) now supports units = "months" or "years" for
    consistency with the POSIXt method, thanks to Dirk Eddelbuettel's
    proposal in PR#18099.
  * list2DF() now checks that its arguments are of the same length,
    rather than use recycling.
  * The HTML help system has several new features: LaTeX-like math
    can be typeset using either KaTeX or MathJax, usage and example
    code is highlighted using Prism, and for dynamic help the output
    of examples and demos can be shown within the browser if the
    knitr package is installed. These features can be disabled by
    setting the environment variable _R_HELP_ENABLE_ENHANCED_HTML_ to
    a false value.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 15
    and so packages that provide graphics devices should be
    reinstalled.
  * The grid package now allows the user to specify a "vector" of
    pattern fills.  The fill argument to gpar() accepts a list of
    gradients and/or patterns and the functions linearGradient(),
    radialGradient(), and pattern() have a new group argument.
    Points grobs (data symbols) can now also have a pattern fill.
    The grobCoords() function now returns a more informative and
    complex result.
  * The grid package has new functions for drawing isolated groups:
    grid.group(), grid.define(), and grid.use().  These functions add
    compositing operators and affine transformations to R's graphics
    capabilities.
    The grid package also has new functions for stroking and filling
    paths: grid.stroke(), grid.fill(), and grid.fillStroke().
    A new function as.path() allows the user to specify the fill rule
    for a path that is to be used for clipping, stroking, or filling;
    available options are "winding" and "evenodd".  A new function
    as.mask() allows the user to specify the type of a mask;
    available options are "alpha" and "luminance".
    These new features are only supported so far (at most) on the
    Cairo-based graphics devices and on the pdf() device.
  * dev.capabilities() reports on device support for the new
    features.
  * par() now warns about unnamed non-character arguments to prevent
    misuse such as {usr &lt;- par("usr"); par(usr)}.
  INSTALLATION:
  * Facilities for accessing ftp:// sites are no longer tested
    (except _pro tem_ for curlGetHeaders()) as modern browsers have
    removed support.
  * R can now be built with DEFS = -DSTRICT_R_HEADERS .
  PACKAGE INSTALLATION:
  * R CMD INSTALL no longer tangles vignettes. This completes an R
    CMD build change in R 3.0.0 and affects packages built before R
    3.0.2. Such packages should be re-made with R CMD build to have
    the tangled R code of vignettes shipped with the tarball.
  * USE_FC_LEN_T will become the default: this uses the correct
    prototypes for Fortran BLAS/LAPACK routines called from C/C++,
    and requires adjustment of most such calls - see 'Writing R
    Extensions' SS6.6.2.  (This has been supported since R 3.6.2.)
  * Package installation speed for packages installed with
    keep.source has been improved. This resolve the issue reported by
    Ofek Shilon in PR#18236.
  UTILITIES:
  * R CMD check can optionally report files/directories left behind
    in home, /tmp (even though TMPDIR is set) and other directories.
    See the "R Internals" manual for details.
  * R CMD check now reports byte-compilation errors during
    installation.  These are not usually fatal but may result in
    parts of the package not being byte-compiled.
  * _R_CHECK_DEPENDS_ONLY_ can be applied selectively to examples,
    tests and/or vignettes in R CMD check: see the "R Internals"
    manual.
  * _R_CHECK_SRC_MINUS_W_IMPLICIT_ now defaults to true: recent
    versions of Apple clang on macOS have made implicit function
    declarations in C into a compilation error.
  * R CMD check --as-cran makes use of the environment variable
    AUTORECONF.  See the "R Internals" manual SS8 for further details.
  * R CMD check --use-valgrind also uses valgrind when re-building
    vignettes as some non-Sweave vignettes unhelpfully comment out
    all their code when R CMD check runs vignettes.
  * Errors in re-building vignettes (unless there are LaTeX errors)
    are reported by R CMD check as ERROR rather than WARNING when
    running vignettes has been skipped (as it frequently is in CRAN
    checks and by --as-cran).
  * R CMD Rd2pdf gains a --quiet option that is used by R CMD build
    when building the PDF package manual.
  * R CMD Rd2pdf now always runs LaTeX in batch mode, consistent with
    Texinfo &gt;= 6.7. The --batch option is ignored.
  * R CMD build and R CMD check now include the Rd file name and line
    numbers in the error message of an \Sexpr evaluation failure.
  * For packages using the \doi Rd macro (now an install-time \Sexpr)
    but no other dynamic Rd content, R CMD build now produces a
    smaller tarball and is considerably faster - skipping temporary
    package installation.
  C-LEVEL FACILITIES:
  * The non-API header R_ext/R-ftp-http.h is no longer provided, as
    the entry points it covered are now all defunct.
  * A number of non-API declarations and macro definitions have been
    moved from the installed header Rinternals.h to the internal
    header Defn.h. Packages that only use entry points and
    definitions documented to be part of the API as specified in
    'Writing R Extensions' SS6 should not be affected.
  * The macro USE_RINTERNALS no longer has any effect when compiling
    package code.  Packages which also use R_NO_REMAP will need to
    ensure that the remapped names are used for calls to API
    functions that were formerly also made available as macros.
  * The deprecated legacy S-compatibility macros PROBLEM, MESSAGE,
    ERROR, WARN, WARNING, RECOVER, ... are no longer defined in
    R_exts/RS.h (included by R.h).  Replace these by calls to
    Rf_error and Rf_warning (defined in header R_ext/Error.h included
    by R.h).
    Header R_ext/RS.h no longer includes R_ext/Error.h.
  * Header R_ext/Constants.h (included by R.h) when included from C++
    now includes the C++ header cfloat rather than the C header
    float.h (now possible as C++11 is required).
  * The legacy S-compatibility macros DOUBLE_* in R_ext/Constants.h
    (included by R.h) are deprecated.
  * The deprecated S-compatibility macros SINGLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * R_Calloc, R_Free and R_Realloc are preferred to their unprefixed
    forms and error messages now use the prefix. These forms were
    introduced in R 3.4.0 and are available even when
    STRICT_R_HEADERS is defined.
  * rmultinom has been documented in 'Writing R Extensions' SS6 so is
    now part of the R API.
  * Similarly, Rtanpi, called from R level tanpi() is now part of the
    R API.
  * The long-deprecated, undocumented and non-API entry point call_R
    is no longer declared in R_ext/RS.h (included by R.h).
  * The header S.h which has been unsupported since Jan 2016 has been
    removed.  Use R.h instead.
  DEPRECATED AND DEFUNCT:
  * The (non-default and deprecated) method = "internal" for
    download.file() and url() no longer supports http:// nor ftp://
    URIs.  (It is used only for file:// URIs.)
    On Windows, download.file(method = "wininet") no longer supports
    ftp:// URIs.  (It is no longer the default method, which is
    "libcurl" and does.)
    On Windows, the deprecated method = "wininet" now gives a warning
    for http:// and https:// URIs for both download.file() and url().
    (It is no longer the default method.)
  * On Windows, the command-line option --max-mem-size and
    environment variable R_MAX_MEM_SIZE are defunct.  The memory
    allocation limit was important for 32-bit builds, but these are
    no longer supported.
  * default.stringsAsFactors() is now formally deprecated, where that
    was only mentioned on its regular help page, previously.  So it
    now gives a warning if called.
  * unix.time() is defunct now; it had been deprecated since R 3.4.0.
  BUG FIXES:
  * Setting digits = 0 in format(), print.default() (and hence
    typically print()) or options() is again invalid.  Its behaviour
    was platform-dependent, and it is unclear what "zero significant
    digits" should mean (PR#18098).
  * Messages from C code in the cairo section of package grDevices
    are now also offered for translation, thanks to Michael Chirico's
    PR#18123.
  * mean(x) with finite x now is finite also without "long.double"
    capability.
  * R CMD Rd2pdf no longer leaves an empty build directory behind
    when it aborts due to an already existing output file.  (Thanks
    to Sebastian Meyer's PR#18141.)
  * density(x, weights = w, na.rm = TRUE) when anyNA(x) is true, now
    removes weights "in parallel" to x, fixing PR#18151, reported by
    Matthias Gondan.  Additionally, it gets a subdensity option.
  * Conversion of \Sexpr[]{&lt;expR&gt;} to LaTeX or HTML no longer
    produces long blocks of empty lines when &lt;expR&gt; itself contains
    several lines all producing empty output.  Thanks to a report and
    patch by Ivan Krylov posted to R-devel.
  * R CMD build no longer fails if a package vignette uses child
    documents and inst/doc exists.  (Thanks to Sebastian Meyer's
    PR#18156.)
  * When an R documentation ('help' source) file man/foo.Rd in a
    package has \donttest{..} examples with a syntax error, it is now
    signalled as ERROR and with correct line numbers relating to the
  * -Ex.R file, thanks to Duncan Murdoch and Sebastian Meyer's
    reports and patch proposals in PR#17501.
  * Improved determination of the correct translation domain in
    non-base packages, addressing the combination of PR#18092 and
    PR#17998 (#c6) with reports and _augmented_ patch #2904 by
    Suharto Anggono.
    Note that "R-base" is no longer the default domain e.g., for
    top-level calls to gettext(); rather translation needs explicit
    domain = * specification in such cases.
  * identical(attrib.as.set=FALSE) now works correctly with data
    frames with default row names (Thanks to Charlie Gao's PR#18179).
  * txtProgressBar() now enforces a non-zero width for argument char,
    without which no progress can be visible.
  * dimnames(table(d)) is more consistent in the case where d is a
    list with a single component, thanks to Thomas Soeiro's report to
    R-devel.
    Further, table(d1, d2) now gives an error when d1 and d2 are data
    frames as suggested by Thomas in PR#18224.
  * Fix for drawing semi-transparent lines and fills on the native
    Windows graphics device (PR#18219 and PR#16694).  Thanks to Nick
    Ray for helpful diagnosis on Bugzilla.
  * The deparser now wraps sub-expressions such as if(A) ..  with
    parentheses when needed; thanks to Duncan Murdoch's PR#18232 and
    Lionel Henry's patches there.
  * remove.packages() no longer tries to uninstall Priority: base
    packages, thanks to a report and suggestions by Colin Fay in
    PR#18227.
  * win.metafile() now has xpinch and ypinch arguments so that the
    user can override Windows' (potentially wrong) guess at device
    dimensions.
  * x[i] and x[[i]] for non-integer i should now behave in all cases
    as always documented: the index used is equivalent to
    as.integer(i) unless that would overflow where trunc(i) is used
    instead; thanks to Suharto Anggono's report and patch proposals
    in PR#17977.
  * asOneSidedFormula() now associates the resulting formula with the
    global environment rather than the evaluation environment created
    for the call.
  * &lt;bibentry&gt;$name now matches the field name case-insensitively,
    consistent with bibentry() creation and the replacement method.
  * cbind() failed to detect some length mismatches with a mixture of
    time-series and non-time-series inputs.
  * The default LaTeX style file Sweave.sty used by the RweaveLatex
    driver no longer loads the obsolete ae package; thanks to a
    report by Thomas Soeiro in PR#18271.  Furthermore, it now skips
    \usepackage[T1]{fontenc} for engines other than pdfTeX (if
    detected) or if the new [nofontenc] option is used.
  * smooth.spline() now stores its logical cv argument more safely,
    fixing a rare bug when printing, and also stores n.
  * smooth.spline(x,y,*) now computes the cv.crit statistic
    correctly, also when is.unsorted(x), fixing PR#18294.
  * The data.frame method of rbind() now warns when binding
    not-wholly-recycling vectors, by analogy to the default method
    (for matrices).
  * setAs() finds the correct class for name to when multiple
    packages define a class with that name. Thanks to Gabor Csardi
    for the report.
  * Fix for detaching a package when two classes of the same name are
    present in method signatures for the same generic. Thanks to
    Gabor Csardi for the report.
  * match.arg("", c("", "a", "B")) gives a better error message, in
    part from PR#17959, thanks to Elin Waring.
  * R CMD Sweave --clean no longer removes pre-existing files or
    subdirectories (PR#18242).
  * The quartz() device no longer splits polylines into subpaths.
    That has caused narrowly-spaced lines with many points to always
    look solid even when dashed line type was used due to dash phase
    restarts.
  * Deparsing constructs such as quote(1 + `!`(2) + 3) works again as
    before R 3.5.0, thanks to the report and patch in PR#18284 by
    Suharto Anggono.
  * as.list(f) for a factor f now keeps names(f), fixing PR#18309.
  * qbeta(.001, .9, .009) and analogous qf() calls now return a
    correct value instead of NaN or wrongly 1, all with a warning;
    thanks to the report by Ludger Goeminne in PR#18302.
  * plot.lm() failed to produce the plot of residuals vs.  factor
    levels (i.e., which=5 when leverages are constant) for models
    with character predictors (PR#17840).
  * interaction.plot(..., xtick = TRUE) misplaced the x-axis line
    (PR#18305).
  * Not strictly fixing a bug, format()ing and print()ing of
    non-finite Date and POSIXt values NaN and +/-Inf no longer show
    as NA but the respective string, e.g., Inf, for consistency with
    numeric vector's behaviour, fulfilling the wish of PR#18308.
  * R CMD check no longer runs test scripts generated from
    corresponding .Rin files twice and now signals an ERROR if
    processing an .Rin script fails.
  * tools::Rd2txt() used for plain-text help pages now renders \hrefs
    (if tools::Rd2txt_options(showURLs = TRUE)) and \urls with
    percent-encoding and standards-compliant delimiting style (angle
    brackets and no URL: prefix).  \email is now rendered with a
    mailto: prefix.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1655985600">- CHANGES IN R 4.2.1:
  NEW FEATURES:
  * New function utils::findCRANmirror() to find out if a CRAN mirror
    has been selected, otherwise fallback to the main site.  This
    behaves in the same way as tools::CRAN_package_db() and is
    intended for packages wishing to access CRAN for purposes other
    than installing packages.
    The need for this was shown by a day when the main CRAN website
    was offline and a dozen or so packages which had its URL
    hardcoded failed their checks.
  INSTALLATION on a UNIX-ALIKE:
  * The libraries searched for by --with-blas (without a value) now
    include BLIS (after OpenBLAS but before ATLAS).  And on macOS,
    the Accelerate framework (after ATLAS).  (This is patterned after
    the AX_BLAS macro from the Autoconf Archive.)
  * The included LAPACK sources have been updated to 3.10.1.
  UTILITIES:
  * The (full path to) the command tidy to be used for HTML
    validation can be set by environment variable R_TIDYCMD.
  * Setting environment variable _R_CHECK_RD_VALIDATE_RD2HTML_ to a
    false value will override R CMD check --as-cran and turn off HTML
    validation.  This provides a way to circumvent a problematic
    tidy.
    The 2006 version that ships with macOS is always skipped.
  C-LEVEL FACILITIES:
  * The undocumented legacy declarations of Sint, Sfloat, SINT_MAX
    and SINT_MIN in header R.h are deprecated.
  BUG FIXES:
  * fisher.test(d) no longer segfaults for "large" d; fixing PR#18336
    by preventing/detecting an integer overflow reliably.
  * tar(., files=*) now produces correctly the warning about invalid
    uid or gid of files, fixing PR#18344, reported by Martin Morgan.
  * tk_choose.files() with multi = FALSE misbehaved on paths
    containing spaces (PR#18334) (regression introduced in R 4.0.0).
  * sort(x, partial = ind, *) now works correctly notably for the
    non-default na.last = FALSE or TRUE, fixing PR#18335 reported by
    James Edwards.
  * Environment variable _R_CHECK_XREFS_REPOSITORIES_ is only used
    for checking .Rd cross-references in R CMD check (as documented)
    and not for other uses looking for a CRAN mirror.
  * The search for a CRAN mirror when checking packages now uses
    getOption("repos") if that specifies a CRAN mirror, even when it
    does not also specify all three Bioconductor repositories (as was
    previously required).
  * The HTML code generated by tools::Rd2HTML() has been improved to
    pass tidy 5.8.0.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1667217600">- CHANGES IN R 4.2.2:
  NEW FEATURES:
  * tools::Rdiff(useDiff = TRUE) checks for the presence of an
    external diff command and switches to useDiff = FALSE if none is
    found.  This allows R CMD Rdiff to always work.
  * On Windows, environment variable R_LIBCURL_SSL_REVOKE_BEST_EFFORT
    can be used to switch to only 'best-effort' SSL certificate
    revocation checks with the default "libcurl" download method.
    This reduces security, but may be needed for downloads to work
    with MITM proxies (PR#18379).
  * (macOS) The run-time check for libraries from XQuartz for X11 and
    Tcl/Tk no longer uses otool from the Apple Developer Tools
    (PR#18400).
  * The LaTeX style for producing the PDF manuals, Rd.sty, now loads
    the standard amsmath, amsfonts and amssymb packages for greater
    coverage of math commands in the Rd \eqn and \deqn macros.  The
    \mathscr LaTeX command is also provided (via the mathrsfs
    package, if available, or the amsfonts bundle otherwise),
    fulfilling the wish of PR#18398.
  * (Windows) The default format of readClipboard() and
    writeClipboard() has been changed to 13 (CF_UNICODETEXT).
  INSTALLATION on a UNIX-ALIKE:
  * The PDF manuals (if built) can be compacted by the new target
    make compact-pdf (at the top level or in directory doc/manual).
  * There is now configure support for LLVM clang 15 on Linux, which
    defaults to position-independent (PIE) executables whereas
    gfortran does not.
  * Many small changes to ease compilation (and suppress warnings)
    with LLVM clang 15.
  BUG FIXES:
  * Rscript -e would fail if stdin were closed (Reported by Henrik
    Bengtsson.)
  * qt(*, log.p=TRUE) in outer tails no longer produces NaN in its
    final steps, thus fixing PR#18360.
  * tools::Rd2latex() now escapes hashes and ampersands when writing
    URLs, fixing LaTeX errors with such URLs in \tabular.
  * When isGeneric(f, fdef=*) is used with mismatching names, the
    warning is better understandable; reported (with fix) in PR#18370
    by Gabe Becker.
  * poly(x, n) now works again (and is now documented) when x is a
    "Date" or "POSIXct" object, or of another class while fulfilling
    mode(x) == "numeric".  This also enables poly(x, *, raw=TRUE) for
    such variables.  Reported by Michael Chirico to R-devel.
  * write.table(), write.csv() and write.csv2() restore their
    numerical precision (internal equivalent of digits = 15) after an
    interrupt (PR#18384).
  * One can now read also byte FF from a clipboard connection
    (PR#18385).
  * source("") and source(character()) now give more helpful error
    messages.
  * R CMD check --as-cran set _R_CHECK_TIMINGS_ too late to have the
    intended effect.
  * as.POSIXlt(x) now also works with very large dates x, fixing
    PR#18401 reported by Hannes M"uhleisen.
  * Files can now be extracted even from very large zip archives
    (PR#18390, thanks to Martin Jakt).
  * Non-finite objects of class "POSIXlt" are now correctly coerced
    to classes "Date" and "POSIXct"; following up on the extension to
    format() them correctly.
  * Added methods for is.finite(), is.infinite() and is.nan() for
    "POSIXlt" date-time objects.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1678881600">- CHANGES IN R 4.2.3:
  C-LEVEL FACILITIES:
  * The definition of DL_FUNC in R_ext/Rdynload.h has been changed to
    be fully C-compliant.  This means that functions loaded _via_ for
    example R_GetCCallable need to be cast to an appropriate type if
    they have any arguments.
  * .Machine has a new element sizeof.time_t to identify old systems
    with a 32-bit type and hence a limited range of date-times (and
    limited support for dates millions of years from present).
  PACKAGE INSTALLATION:
  * (Windows) The default C++ standard had accidentally been left at
    C++11 when it was changed to C++14 on Unix.
  BUG FIXES:
  * As "POSIXlt" objects may be "partially filled" and their list
    components meant to be recycled, length() now is the length of
    the longest component.
  * as.POSIXlt.Date() could underflow for dates in the far past (more
    than half a million years BCE).
  * as.Date.POSIXlt(x) would return "1970-01-01" instead of NA in R
    4.2.2, e.g., for
    x &lt;- as.POSIXlt(c("2019-01-30","2001-1-1"))
    x$mon &lt;- c(0L, NA); as.Date(x)
  * R CMD check failed to apply enabled _R_CHECK_SUGGESTS_ONLY_ to
    examples and vignettes (regression in R 4.2.0).
  * R CMD check did not re-build vignettes in separate processes by
    default (regression in R 4.2.0).
  * Running examples from HTML documentation now restores previous
    knitr settings and options (PR#18420).
  * Quartz: fonts are now located using Core Graphics API instead of
    deprecated ATS which is no longer supported in the macOS 13 SDK
    (PR#18426).  This also addresses an issue where the currently
    used font in the Quartz device context was not correctly
    retained.
  * (Windows) Math symbols in text drawing functions are again
    rendered correctly (PR#18440).  This fixes a regression in R
    4.2.1 caused by a fix in PR#18382 which uncovered an issue in
    GraphApp due to which the symbol charset was not used with TT
    Symbol font face.
  * (Windows) Installing a package with a src/Makefile.{win,ucrt}
    file includes ~/.R/Makevars.win64 in the search for user
    makevars, as documented in "R Installation and Administration"
    and done for packages with a src/Makevars.{win,ucrt} file.
  * format(&lt;POSIXlt_w/_unbalanced_sec&gt;, "....%OS&lt;n&gt;") with n &gt; 0 no
    longer accidentally uses the unbalanced seconds, thanks to
    Suharto Anggono's report (including patch) in PR#18448.
  * solve.default(a, b) works around issues with some versions of
    LAPACK when a contains NA or NaN values.
  * When UseMethod() cannot dispatch, it no longer segfaults
    producing the error message in case of a long class(), thanks to
    Joris Vankerschaver's report (including patch) in PR#18447.
  * When example(foo, ..) produces graphics on an interactive device
    it needs to open itself, it now leaves devAskNewPage() unchanged
    even when it was FALSE, thus fixing a 14 years old '&lt;FIXME&gt;'.
  * packageDescription() again catches errors from encoding
    conversions. This also fixes broken packageVersion() in C locale
    on systems where iconv does not support transliteration.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1681128000">- add patch to build with libcurl &gt;= 8</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1682078400">- CHANGES IN R 4.3.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Calling &amp;&amp; or || with LHS or (if evaluated) RHS of length greater
    than one is now always an error, with a report of the form
    'length = 4' in coercion to 'logical(1)'
    Environment variable _R_CHECK_LENGTH_1_LOGIC2_ no longer has any
    effect.
  NEW FEATURES:
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.10.1.  (This caused some platform-dependent
    changes to package check output.)  And then to the sources from
    LAPACK version 3.11.0 (with changes only to double complex
    subroutines).
  * The included LAPACK sources have been updated to include the four
    Fortran 90 routines rather than their Fortran 77 predecessors.
    This may give some different signs in SVDs or
    eigendecompositions..  (This completes the transition to LAPACK
    3.10.x begun in R 4.2.0.)
  * The LAPACK sources have been updated to version 3.11.0.  (No new
    subroutines have been added, so this almost entirely bug fixes:
    Those fixes do affect some computations with NaNs, including R's
    NA.)
  * The parser now signals _classed_ errors, notably in case of the
    pipe operator |&gt;.  The error object and message now give line and
    column numbers, mostly as proposed and provided by Duncan Murdoch
    in PR#18328.
  * toeplitz() is now generalized for asymmetric cases, with a
    toeplitz2() variant.
  * xy.coords() and xyz.coords() and consequently, e.g., plot(x,y,
    log = "y") now signal a _classed_ warning about negative values
    of y (where log(.) is NA).  Such a warning can be specifically
    suppressed or caught otherwise.
  * Regular expression functions now check more thoroughly whether
    their inputs are valid strings (in their encoding, e.g. in
    UTF-8).
  * The performance of grep(), sub(), gsub() and strsplit() has been
    improved, particularly with perl = TRUE and fixed = TRUE.  Use of
    useBytes = TRUE for performance reasons should no longer be
    needed and is discouraged: it may lead to incorrect results.
  * apropos() gains an argument dot_internals which is used by the
    completion (help(rcompgen)) engine to also see base internals
    such as .POSIXct().
  * Support in tools::Rdiff() for comparing uncompressed PDF files is
    further reduced - see its help page.
  * qqplot(x, y, ...) gains conf.level and conf.args arguments for
    computing and plotting a confidence band for the treatment
    function transforming the distribution of x into the distribution
    of y (Switzer, 1976, _Biometrika_). Contributed by Torsten
    Hothorn.
  * Performance of package_dependencies() has been improved for cases
    when the number of dependencies is large.
  * Strings newly created by gsub(), sub() and strsplit(), when any
    of the inputs is marked as "bytes", are also marked as "bytes".
    This reduces the risk of creating invalid strings and accidental
    substitution of bytes deemed invalid.
  * Support for readLines(encoding = "bytes") has been added to allow
    processing special text files byte-by-byte, without creating
    invalid strings.
  * iconv(from = "") now takes into account any declared encoding of
    the input elements and uses it in preference to the native
    encoding.  This reduces the risk of accidental creation of
    invalid strings, particularly when different elements of the
    input have different encoding (including "bytes").
  * Package repositories in getOption("repos") are now initialized
    from the repositories file when utils is loaded (if not already
    set, e.g., in .Rprofile).  (From a report and patch proposal by
    Gabriel Becker in PR#18405.)
  * compactPDF() gets a verbose option.
  * type.convert() and hence read.table() get new option tryLogical =
    TRUE with back compatible default.  When set to false, converts
    "F" or "T" columns to character.
  * Added new unit prefixes "R" and "Q" for abbreviating
    (unrealistically large) sizes beyond 10^{27} in standard = "SI",
    thanks to Henrik Bengtsson's PR#18435.
  * as.data.frame()'s default method now also works fine with atomic
    objects inheriting from classes such as "roman", "octmode" and
    "hexmode", such fulfilling the wish of PR#18421, by Benjamin
    Feakins.
  * The as.data.frame.vector() utility now errors for wrong-length
    row.names.  It warned for almost six years, with "Will be an
    error!".
  * sessionInfo() now also contains La_version() and reports codepage
    and timezone when relevant, in both print() and toLatex() methods
    which also get new option tzone for displaying timezone
    information when locale = FALSE.
  * New function R_compiled_by() reports the C and Fortran compilers
    used to build R, if known.
  * predict(&lt;lm&gt;, newdata = *) no longer unnecessarily creates an
    offset of all 0s.
  * solve() for complex inputs now uses argument tol and by default
    checks for 'computational singularity' (as it long has done for
    numeric inputs).
  * predict(&lt;rank-deficient lm&gt;, newdata=*) now obeys a new argument
    rankdeficient, with new default "warnif", warning only if there
    are non-estimable cases in newdata.  Other options include
    rankdeficient = "NA", predicting NA for non-estimable newdata
    cases.  This addresses PR#15072 by Russ Lenth and is based on his
    original proposal and discussions in PR#16158 also by David Firth
    and Elin Waring.  Still somewhat experimental.
  * Rgui console implementation now works better with the NVDA screen
    reader when the full blinking cursor is selected.  The underlying
    improvements in cursor handling may help also other screen
    readers on Windows.
  * The drop-field control in GraphApp can now be left with the TAB
    key and all controls can be navigated in the reverse order using
    the Shift+TAB key, improving accessibility of the Rgui
    configuration editor.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now fully accurate
    (instead of to "only" minimally five digits).
  * demo(error.catching) now also shows off withWarnings() and
    tryCatchWEMs().
  * As an experimental feature the placeholder _ can now also be used
    in the rhs of a forward pipe |&gt; expression as the first argument
    in an extraction call, such as _$coef. More generally, it can be
    used as the head of a chain of extractions, such as _$coef[[2]].
  * Spaces in the environment variable used to choose the R session's
    temporary directory (TMPDIR, TMP and TEMP are tried in turn) are
    now fatal.  (On Windows the 'short path' version of the path is
    tried and used if that does not contain a space.)
  * all.equal.numeric() gets a new optional switch giveErr to return
    the numeric error as attribute.  Relatedly,
    stopifnot(all.equal&lt;some&gt;(a, b, ..)) is as "smart" now, as
    stopifnot(all.equal(....)) has been already, thus allowing
    customized all.equal&lt;Some&gt;() wrappers.
  * R on Windows is now able to work with path names longer than 260
    characters when these are enabled in the system (requires at
    least Windows 10 version 1607).  Packages should be updated to
    work with long paths as well, instead of assuming PATH_MAX to be
    the maximum length.  Custom front-ends and applications embedding
    R need to update their manifests if they wish to allow this
    feature.  See
    &lt;https://blog.r-project.org/2023/03/07/path-length-limit-on-windows&gt;
    for more information.
  * 'Object not found' and 'Missing argument' errors now give a more
    accurate error context. Patch provided by Lionel Henry in
    PR#18241.
  * The @ operator is now an S3 generic. Based on contributions by
    Tomasz Kalinowski in PR#18482.
  * New generic chooseOpsMethod() provides a mechanism for objects to
    resolve cases where two suitable methods are found for an Ops
    Group Generic. This supports experimenting with alternative
    object systems. Based on contributions by Tomasz Kalinowski in
    PR#18484.
  * inherits(x, what) now accepts values other than a simple
    character vector for argument what. A new generic, nameOfClass(),
    is called to resolve the class name from what. This supports
    experimenting with alternative object systems. Based on
    contributions by Tomasz Kalinowski in PR#18485.
  * Detection of BLAS/LAPACK in use (sessionInfo()) with FlexiBLAS
    now reports the current backend.
  * The "data.frame" method for subset() now warns about extraneous
    arguments, typically catching the use of = instead of == in the
    subset expression.
  * Calling a:b when numeric a or b is longer than one may now be
    made into an error by setting environment variable
    _R_CHECK_LENGTH_COLON_ to a true value, along the proposal in
    PR#18419 by Henrik Bengtsson.
  * density(x, weights = *) now warns if automatic bandwidth
    selection happens without using weights; new optional warnWbw may
    suppress the warning.  Prompted by Christoph Dalitz' PR#18490 and
    its discussants.
  * rm(list = *) is faster and more readable thanks to Kevin Ushey's
    PR#18492.
  * The plot.lm() function no longer produces a normal Q-Q plot for
    GLMs. Instead it plots a half-normal Q-Q plot of the absolute
    value of the standardized deviance residuals.
  * The print() method for class "summary.glm" no longer shows
    summary statistics for the deviance residuals by default.  Its
    optional argument show.residuals can be used to show them if
    required.
  * The tapply() function now accepts a data frame as its X argument,
    and allows INDEX to be a formula in that case. by.data.frame()
    similarly allows INDICES to be a formula.
  * The performance of df[j] &lt;- value (including for missing j) and
    write.table(df) has been improved for data frames df with a large
    number of columns.  (Thanks to Gabriel Becker's PR#18500,
    PR#18503 and discussants, prompted by a report from Toby Dylan
    Hocking on the R-devel mailing list.)
  * The matrix multiply operator %*% is now an S3 generic, belonging
    to new group generic matrixOps.  From Tomasz Kalinowski's
    contribution in PR#18483.
  * New function array2DF() to convert arrays to data frames,
    particularly useful for the list arrays created by tapply().
  DATES and TIMES:
  * On platforms where (non-UTC) datetimes before 1902 (or before
    1900 as with system functions on recent macOS) are guessed by
    extrapolating time zones from 1902-2037, there is a warning at
    the first use of extrapolation in a session.  (As all time zones
    post 2037 are extrapolation, we do not warn on those.)
  * (Platforms using --with-internal-tzone, including Windows and by
    default macOS). How years are printed in dates or date-times can
    be controlled by environment variable R_PAD_YEARS_BY_ZERO.  The
    default remains to pad to 4 digits by zeroes, but setting value
    no gives no padding (as used by default by glibc).
  * strftime() tries harder to determine the offset for the "%z"
    format, and succeeds on the mainstream R platforms.
  * strftime() has a limit of 2048 bytes on the string produced -
    attempting to exceed this is an error.  (Previously it silently
    truncated at 255 bytes.)
  * sessionInfo() records (and by default prints) the system time
    zone as part of the locale information.  Also, the source
    (system/internal) of the date-time conversion and printing
    functions.
  * Objects of class "POSIXlt" created in this version of R always
    have 11 components: component zone is always set, and component
    gmtoff is set for times in UTC and usually set on the (almost
    all) platforms which have C-level support, otherwise is NA.
  * There are comprehensive validity checks on the structure of
    objects of class "POSIXlt" when converting (including formatting
    and printing).  (This avoids mis-conversions of hand-crafted
    objects.)
  * There is some support for using the native date-time routines on
    macOS: this is only viable on recent versions (e.g. 12.6 and 13)
    and does get wrong some historical changes (before 1900, during
    WWII).  Use of --with-internal-tzone remains the default.
  * as.POSIXct(&lt;numeric&gt;) and as.POSIXlt(.) (without specifying
    origin) now work.  So does as.Date(&lt;numeric&gt;).
  * as.Date.POSIXct(., tz) now treats several tz values, notably
    "GMT" as equivalent to "UTC", proposed and improved by Michael
    Chirico and Joshua Ulrich in PR#17674.
  * Experimental balancePOSIXlt() utility allows using "ragged" and
    or out-of-range "POSIXlt" objects more correctly, e.g., in
    subsetting and subassignments.  Such objects are now documented.
    More experimentally, a "POSIXlt" object may have an attribute
    "balanced" indicating if it is known to be filled or fully
    balanced.
  * Functions axis.Date() and axis.POSIXct() are rewritten to gain
    better default tick locations and better default formats by using
    prettyDate(). Thanks to Swetlana Herbrandt.
  * The mapping of Windows' names for time zones to IANA's 'Olson'
    names has been updated.  When ICU is available (it is by
    default), it is used to get a mapping for the current region set
    in Windows.  This can be overridden by setting environment
    variable TZ to the desired Olson name - see OlsonNames() for
    those currently available.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 16
    and so packages that provide graphics devices should be
    reinstalled.
  * The grDevices and grid packages have new functions for rendering
    typeset glyphs, primarily: grDevices::glyphInfo() and
    grid::grid.glyph().
    Rendering of typeset glyphs is only supported so far on the
    Cairo-based graphics devices and on the pdf() and quartz()
    devices.
  * The defined behaviour for "clear" and "source" compositing
    operators (via grid::grid.group()) has been changed (to align
    better with simple interpretation of original Porter-Duff
    definitions).
  * Support for gradients, patterns, clipping paths, masks, groups,
    compositing operators, and affine transformations has been added
    to the quartz() device.
  INSTALLATION on a UNIX-ALIKE:
  * A system installation of generic LAPACK 3.10.0 or later will be
    preferred to the version in the R sources.
    configure option --with-lapack=no (equivalently --without-lapack)
    forces compilation of the internal LAPACK sources.
    If --with-lapack is not specified, a system liblapack is looked
    for and used if it reports version 3.10.0 or later and does not
    contain BLAS routines.
    Packages using LAPACK will need to be reinstalled if this changes
    to using an external library.
  * On aarch64 Linux platforms using GCC, configure now defaults to
  - fPIC (instead of -fpic), as desired in PR#18326.
  * configure now checks conversion of datetimes between POSIXlt and
    POSIXct around year 2020.  Failure (which has been seen on
    platforms missing tzdata) is fatal.
  * If configure option --with-valgrind-instrumentation is given
    value 1 or 2, option --with-system-valgrind-headers is now the
    default and ignored (with a warning).  It is highly recommended
    that the system headers are installed alongside valgrind: they
    are part of its packaging on some Linux distributions and
    packaged separately (e.g. in the valgrind-devel RPM) on others.
    configure will give a warning if they are not found.
    The system headers will be required in a future release of R to
    build with valgrind instrumentation.
  * libcurl 8.x is now accepted by configure: despite a change in
    major version number it changes neither API nor ABI.
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools43, an update of the Rtools42 toolchain.  It is
    based on gcc 12 and newer versions of MinGW-W64, binutils and
    libraries.  At this time R-devel can still be built using
    Rtools42 without changes, but when R-devel is installed via the
    installer, it will by default look for Rtools43.
  * Old make targets rsync-extsoft and 32-bit ones that are no longer
    needed have been removed.
  * Default builds (including for packages) no longer select C99.
    Thus the C standard used is the default for the compiler, which
    for the toolchain in Rtools43 is C17.  (This is consistent with
    Unix builds.)
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++17 where
    available (which it is on all currently checked platforms): if
    not C++14 or C++11 is used if available otherwise C++ is not
    supported.
  * USE_FC_LEN_T is the default: this uses the correct
    (compiler-dependent) prototypes for Fortran BLAS/LAPACK routines
    called from C/C++, and requires adjustment of many such calls -
    see 'Writing R Extensions' SS6.6.1.
  * There is initial support for C++23 as several compilers are now
    supporting -std=c++23 or -std=c++2b or similar.  As for C++20,
    there no additional configure checks for C++23 features beyond a
    check that the compiler reports a __cplusplus value greater than
    that in the C++20 standard.  C++ feature tests should be used.
  * There is support for a package to indicate the version of the C
    standard which should be used to compile it, and for the
    installing user to specify this.  In most cases R defaults to the
    C compiler's default standard which is C17 (a `bug-fix' of C11) -
    earlier versions of R or compilers may have defaulted to C99.
    Current options are:
    USE_C17 Use a standard that is at most C17.  The intention is to
    allow legacy packages to still be installed when later C
    standards become the default, including packages using new
    keywords as identifiers or with K&amp;R-style function
    declarations.  This will use C17 if available, falling back
    to C11.
    USE_C90 Use the C90 (aka C89) standard.  (As that standard did
    not require compilers to identify that version, all we can
    verify is that the compiler does not claim to be using a
    later standard.  It may accept C99 features - for example
    clang accepts // to make comments.)
    USE_C99 Use the C99 standard. This should be rarely needed - it
    avoids the few new features of C11/C17 which can be useful if
    a package assumes them if C17 is specified and they are not
    implemented.
    USE_C23 Use C23 (or in future, later).  Compiler/library support
    for C23 is still being implemented, but LLVM clang from
    15.0.0 and the upcoming GCC 13 have quite extensive support.
    These can be specified as part of the SystemRequirements field in
    the package's DESCRIPTION file or _via_ options --use-C17 and so
    on of R CMD INSTALL and R CMD SHLIB.
    For further details see "Writing R Extensions" SS1.2.5.
  * (Windows) A src/Makefile.ucrt or src/Makefile.win file is now
    included after R_HOME/etcR_ARCH/Makeconf and so no longer needs
    to include that file itself.  Installation of a package with such
    a file now uses a site Makevars file in the same way as a package
    with a src/Makevars.win file would.
  * configure is now passed crucial variables such as CC and CFLAGS
    in its environment, as many packages were not setting them (as
    documented in 'Writing R Extensions' SS1.2).
    This has most effect where configure is used to compile parts of
    the package - most often by cmake or libtool which obfuscate the
    actual compile commands used.
    Also used for configure.win and configure.ucrt on Windows.
  FORTRAN FLAGS:
  * The flag -fno-optimize-sibling-calls is no longer forced for
    gfortran 7 and later.  It should no longer be needed now using
    'hidden' character-length arguments when calling BLAS/LAPACK
    routines from C/C++ is the default even for packages.  (Unless
    perhaps packages call Fortran code from C/C++ without using R's
    headers and without allowing for these arguments.)
  C-LEVEL FACILITIES:
  * The deprecated S-compatibility macros DOUBLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * The deprecated legacy typedefs of Sint and Sfloat in header R.h
    are no longer defined, and that header no longer includes header
    limits.h from C nor climits from C++.
  * New macro CAD5R() is provided in Rinternals.h and used in a few
    places in the R sources.
  * ALTREP now supports VECSXP vectors. Contributed by Gabor Csardi
    in PR#17620.
  * The Rcomplex definition (in header R_ext/Complex.h) has been
    extended to prevent possible mis-compilation when interfacing
    with Fortran (PR#18430).  The new definition causes compiler
    warnings with static initializers such as {1, 2}, which can be
    changed to {.r=1, .i=2}.
    Using the new definition from C++ depends on compiler extensions
    supporting C features that have not been incorporated into the
    C++ standards but are available in g++ and clang++: this may
    result in C++ compiler warnings but these have been worked around
    for recent versions of common compilers (GCC, Apple/LLVM clang,
    Intel).
    It is intended to change the inclusion of header R_ext/Complex.h
    by other R headers, so C/C++ code files which make use of
    Rcomplex should include that header explicitly.
  UTILITIES:
  * R CMD check does more checking of package .Rd files, warning
    about invalid email addresses and (some) invalid URIs and noting
    empty \item labels in description lists.
  * R CMD check now also reports problems when reading package news
    in md (file NEWS.md) and (optionally) plain text (file NEWS)
    formats.
  * _R_CHECK_TIMINGS_ defaults to a value from the environment even
    for R CMD check --as-cran; this allows for exceptionally fast or
    slow platforms.
    It now applies to checking PDF and HTML versions of the manuals,
    and 'checking CRAN incoming feasibility'.
  * R CMD check can optionally (but included in --as-cran) check
    whether HTML math rendering _via_ KaTeX works for the package .Rd
    files.
  * Non-interactive debugger invocations can be trapped by setting
    the environment variable _R_CHECK_BROWSER_NONINTERACTIVE_ to a
    true value.  This is enabled by R CMD check --as-cran to detect
    the use of leftover browser() statements in the package.
  * The use of sprintf and vsprintf from C/C++ has been deprecated in
    macOS 13 and is a known security risk.  R CMD check now reports
    (on all platforms) if their use is found in compiled code:
    replace by snprintf or vsnprintf respectively. [*NB:* whether
    such calls get compiled into the package is platform-dependent.]
  * Where recorded at installation, R CMD check reports the C and
    Fortran compilers used to build R.
    It reports the OS in use (if known, as given by osVersion) as
    well as that R was built for.
    It notes if a C++ standard was specified which is older than the
    current default: many packages have used C++11 to mean 'not
    C++98' - as C++11 is the minimum supported since R 4.0.0, that
    specification can probably be removed.
  * R CMD INSTALL reports the compilers (and on macOS, the SDK) used,
    and this is copied to the output of R CMD check.
    Where a C++ standard is specified, it is reported.
  * R CMD check's 'checking compilation flags in Makevars' has been
    relaxed to accept the use of flags such as -std=f2008 in
    PKG_FFLAGS.
  * tools::buildVignettes() has a new argument skip, which is used by
    R CMD check to skip (and note) vignettes with unavailable
    \VignetteDepends (PR#18318).
  * New generic .AtNames() added to enable class-specific completions
    after @. The formerly internal function findMatches() is now
    exported, mainly for use in methods for .DollarNames() and
    .AtNames().
  DEPRECATED AND DEFUNCT:
  * default.stringsAsFactors() is defunct.
  * Calling as.data.frame.&lt;class&gt;() directly (for 12 atomic classes)
    is going to be formally deprecated, currently activated by
    setting the environment variable
    _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ to non-empty, which also
    happens in R CMD check --as-cran.
  BUG FIXES:
  * Hashed environments with sizes less than 5 can now grow.
    (Reported to R-devel by Duncan Garmonsway.)
  * as.character(&lt;Rd&gt;, deparse = TRUE) failed to re-escape curly
    braces in LaTeX-like text.  (Reported by Hadley Wickham in
    PR#18324.)
  * library() now passes its lib.loc argument when requiring Depends
    packages; reported (with fix) in PR#18331 by Mikael Jagan.
  * R CMD Stangle: improved message about 'Output' files.
  * head(x, n) and tail(x, n) now signal an error if n is not
    numeric, instead of incidentally "working" sometimes returning
    all of x.  Reported and discussed by Colin Fay, in PR#18357.
  * The "lm" method for summary() now gives the correct F-statistic
    when the model contains an offset.  Reported in PR#18008.
  * C() and `contrasts&lt;-`() now preserve factor level names when
    given a function object (as opposed a function name which did
    preserve names). Reported in PR#17616.
  * c(a = 1, 2)[[]] no longer matches 2 but rather signals a
    _classed_ error.  Reported and analysed by Davis Vaughan in
    PR#18367, a duplicate of PR#18004, by Jan Meis et al.  For
    consistency, NULL[[]] is also erroneous now.  x[[]] &lt;- v gives an
    error of the same class "MissingSubscriptError".
  * The relist() function of utils now supports NULL elements in the
    skeleton (PR#15854).
  * ordered(levels = *) (missing x) now works analogously to factor(,
    ordered=TRUE); reported (with fix) by Achim Zeileis in PR#18389.
  * User-defined Rd macro definitions can now span multiple lines,
    thanks to a patch from Duncan Murdoch. Previously, the Rd parser
    silently ignored everything after the first line.
  * Plain-text help (tools::Rd2txt()) now preserves an initial blank
    line for text following description list items.
  * tools::Rd2HTML() and tools::Rd2latex() no longer split \arguments
    and \value lists at Rd comments.
  * tools::Rd2latex() now correctly handles optional text outside
    \items of argument lists as well as bracketed text at the
    beginning of sections, e.g., \value{[NULL]}.
  * as.character(&lt;POSIXt&gt;) now behaves more in line with the methods
    for atomic vectors such as numbers, and is no longer influenced
    by options().  Ditto for as.character(&lt;Date&gt;).  The
    as.character() method gets arguments digits and OutDec with
    defaults _not_ depending on options().  Use of as.character(*,
    format = .) now warns.
  * Similarly, the as.character.hexmode() and *.octmode() methods
    also behave as good citizen methods and back compatibility option
    keepStr = TRUE.
  * The as.POSIXlt(&lt;POSIXlt&gt;) and as.POSIXct(&lt;POSIXct&gt;) default
    methods now do obey their tz argument, also in this case.
  * as.POSIXlt(&lt;Date&gt;) now does apply a tz (time zone) argument, as
    does as.POSIXct(); partly suggested by Roland Fuss on the R-devel
    mailing list.
  * as.Date.POSIXlt(x) now also works when the list components are of
    unequal length, aka "partially filled" or "ragged".
  * expand.model.frame() looked up variables in the wrong environment
    when applied to models fitted without data.  Reported in
    PR#18414.
  * time() now (also) uses the ts.eps = getOption("ts.eps") argument
    and thus by default rounds values very close to the start (or
    end) of a year.  Based on a proposal by Andre"i V. Kostyrka on
    R-help.
  * Printing of a factanal() result with just one factor and sort =
    TRUE now works regularly, fixing PR#17863 by Timothy Bates,
    thanks to the 'R Contributors' working group.
  * Printing 0-length objects of class "factor", "roman", "hexmode",
    "octmode", "person", "bibentry", or "citation" now prints
    something better, one of which fixes PR#18422, reported by
    Benjamin Feakins.
  * Sys.timezone() queries timedatectl only if systemd is loaded;
    addressing a report by Jan Gorecki in PR#17421.
  * The formula method of cor.test() had scoping problems when
    environment(formula) was not the calling environment; reported
    with a patch proposal by Mao Kobayashi in PR#18439.
  * attach() of an environment with active bindings now preserves the
    active bindings.  Reported by Kevin Ushey in PR#18425.
  * BLAS detection now works also with system-provided libraries not
    available as regular files.  This fixes detection of the
    Accelerate framework on macOS since Big Sur.  Reported by David
    Novgorodsky.
  * download.file() gives a helpful error message in case of an
    invalid download.file.method option, thanks to Colin Fay's report
    in PR#18455.
  * Sporadic crashes of Rterm when using completion have been fixed.
  * Rprof() is now more reliable.  A livelock in thread
    initialization with too short sampling interval has been fixed on
    macOS.  A deadlock in using the C runtime has been fixed on
    Windows.  A potential deadlock has been prevented on Unix.
  * Cursor placement in Rgui now works even after a fixed-width font
    is selected.
  * Mandatory options (options()) are now set on startup so that
    saving and restoring them always works (PR#18372).
  * Package installation, R CMD INSTALL or install.packages(*), now
    parses each of the &lt;pkg&gt;/R/*.R files individually instead of
    first concatenating and then parse()ing the large resulting file.
    This allows parser or syntax errors to be diagnosed with correct
    file names and line numbers, thanks to Simon Dedman's report and
    Bill Dunlap's patch in PR#17859.
    This _does_ require syntactically self contained R source files
    now, fixing another inadvertent bug.
  * predict.lm(&lt;model with offset&gt;) now finds the offset in the
    correct environment, thanks to Andr'e Gillibert's report and patch
    in PR#18456.
  * getInitial(&lt;formula&gt;) now finds the selfStart model in the
    correct environment.  (Reported by Ivan Krylov in PR#18368.)
  * Fix for possible segfault when using recently-added graphics
    features, such as gradients, clipping paths, masks, and groups
    with pdf(file=NULL).
  * class(m) &lt;- class(m) no longer changes a matrix m by adding a
    class _attribute_.
  * packageDate(pkg) now only warns once if there is no pkg.
  * When ts() creates a multivariate time series, "mts", it also
    inherits from "array" now, and is.mts() is documented _and_
    stricter.
  * Rd2txt() now preserves line breaks of \verb Rd content and from
    duplicated \cr.  The former also fixes the rendering of verbatim
    output from Rd \Sexpr in plain-text help.
  * uniroot(f, interval) should no longer wrongly converge _outside_
    the interval in some cases where abs(f(x)) == Inf for an x at the
    interval boundary, thanks to posts by Ben Bolker and Serguei
    Sokol on R-devel.
  * Vectorized alpha handling in palette functions such as in gray(),
    rainbow(), or hcl.colors() works correctly now, thanks to Achim
    Zeileis' report and patch in PR#18476.
  * Formatting and print()ing of bibentry objects has dropped the
    deprecated citation.bibtex.max argument, such that the bibtex
    argument's default for print.bibentry() depends directly on the
    citation.bibtex.max option, whereas in format.bibentry() the
    option no longer applies.
  * Attempting to use a character string naming a foreign function
    entry point in a foreign function call in a package will now
    signal an error if the packages has called R_forceSymbols to
    specify that symbols must be used.
  * An error in table() could permanently set options(warn=2)
    promoting all subsequent warnings to errors.
  * The sigma() function gave misleading results for binary GLMs.  A
    new method for objects of class "glm" returns the square root of
    the estimate of the dispersion parameter using the same
    calculation as summary.glm().
  * bs() and ns() in the (typical) case of automatic knot
    construction, when some of the supposedly inner knots coincide
    with boundary knots, now moves them inside (with a warning),
    building on PR#18442 by Ben Bolker.
  * R CMD on Windows now skips the site profile with --no-site-file
    and --vanilla even when R_PROFILE is set (PR#18512, from Kevin
    Ushey).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1686916800">- CHANGES IN R 4.3.1:
  C-LEVEL FACILITIES:
  * The C-level API version of R's integrate(), Rdqags() in Applic.h,
    now returns the correct number of integrand evaluations neval,
    fixing PR#18515 reported and diagnosed by Stephen Wade.
  * The C prototypes for LAPACK calls dspgv and dtptrs in
    R_exts/Lapack.h had one too many and one too few character length
    arguments - but this has not caused any known issues. To get the
    corrected prototypes, include
    [#]include &lt;Rconfig.h&gt; // for PR18534fixed
    [#]ifdef PR18534fixed
    [#] define usePR18534fix 1
    [#]endif
    [#]include &lt;R_exts/Lapack.h&gt;
    in your C/C++ code (PR#18534).
  INSTALLATION:
  * Many of the checks of esoteric Internet operations and those
    using unreliable external sites have been moved to a new target
    that is not run by default and primarily intended for the core
    developers.  To run them use
    cd tests; make test-Internet-dev
  BUG FIXES:
  * .S3methods(), typically called from methods(), again marks
    methods from package base as visible.
    Also, the visibility of non-base methods is again determined by
    the method's presence in search().
  * tools::Rdiff() is now more robust against invalid strings, fixing
    installation tests on Windows without Rtools installed
    (PR#18530).
  * Fix (new) bug in hcl.colors(2, *), by Achim Zeileis (PR#18523).
  * head(., &lt;illegal&gt;) and tail(..) now produce more useful "Error in
    ...." error messages, fixing PR#18362.
  * Package code syntax on Windows is checked in UTF-8 when UTF-8 is
    the native encoding.
  * na.contiguous(x) now also returns the first run, when it is at
    the beginning and there is a later one of the same length;
    reported to R-devel, including a fix, by Georgi Boshnakov.
    Further, by default, it modifies only an existing attr(*,"tsp")
    but otherwise no longer sets one.
  * chol(&lt;not pos.def&gt;, pivot = &lt;T|F&gt;) now gives a correct error or
    warning message (depending on pivot), thanks to Mikael Jagan's
    (PR#18541).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1699012800">- CHANGES IN R 4.3.2:
  NEW FEATURES:
  * The default initialization of the "repos" option from the
    repositories file at startup can be skipped by setting
    environment variable R_REPOSITORIES to NULL such that
    getOption("repos") is empty if not set elsewhere.
  * qr.X() is now an implicit S4 generic in methods.
  * iconv(to = "ASCII//TRANSLIT") is emulated using substitution on
    platforms which do not support it (notably Alpine Linux).  This
    should give a human-readable conversion in ASCII on all platforms
    (rather than NA_character_).
  * trans3d() gains options continuous and verbose addressing the
    problem of possible "wrap around" when projecting too long
    curves, as reported by Achim Zeileis in PR#18537.
  * tools::showNonASCII() has been rewritten to work better on macOS
    14 (which has a changed implementation of iconv()).
  * tiff(type = "quartz") (the default on macOS) now warns if
    compression is specified: it continues to be ignored.
  INSTALLATION on a UNIX-ALIKE:
  * There is some support for building with Intel's LLVM-based
    compilers on x86_64 Linux, such as (C) icx, (C++) ipcx and
    (Fortran) ifx from oneAPI 2023.x.y.
  * There is support for using LLVM's flang-new as the Fortran
    compiler from LLVM 16.0.x (preferably 17.0.0 or later).
  UTILITIES:
  * R CMD check reports the use of the Fortran 90 random number
    generator RANDOM_NUMBER() and the subroutines to initialize it.
    'Writing R Extensions' has example code to use R's RNGs from
    Fortran.
  BUG FIXES:
  * substr(x, n, L) &lt;- cc now works (more) correctly for multibyte
    UTF-8 strings x when L &gt; nchar(x), thanks to a report and patch
    by 'Architect 95'.
  * contrib.url(character()) now returns 0-length character() as
    documented, which also avoids spurious warnings from
    available.packages() et al. in the edge case of an empty vector
    of repository URLs.
  * readChar(., 4e8) no longer fails, thanks to Kodi Arfer's report
    (PR#18557).
  * lapply(&lt;list&gt;, as.data.frame) no longer warns falsely for some
    base vector components.
  * Communication between parent and child processes in the multicore
    part of parallel could fail on platforms that do not support an
    arbitrarily large payload in system functions read()/write() on
    pipes (seen on macOS where a restriction to INT_MAX bytes is
    documented, without doing a partial read unlike Linux). The
    payload is now split into 1Gb chunks to avoid that problem.
    (PR#18571)
  * qqplot(x,y, conf.level=.) gives better confidence bounds when
    length(x) != length(y), thanks to Alexander Ploner's report and
    patch proposal (PR#18557).
  * norm(&lt;0-length&gt;, "2") now gives zero instead of an error, as all
    the other norm types, thanks to Mikael Jagan's PR#18542.
  * Build-stage Rd macros \packageAuthor and \packageMaintainer now
    process Authors@R, fixing NA results when the package DESCRIPTION
    omits Author and Maintainer fields.
  * Formatting and printing complex numbers could give things like
    0.1683-0i because of rounding error: -0i is now replaced by +0i.
  * postscript() refused to accept a title comment containing the
    letter "W" (PR#18599).
  * isoreg(c(1,Inf)) signals an error instead of segfaulting, fixing
    PR#18603.
  * tiff(type = "Xlib") was only outputting the last page of
    multi-page plots.
  * tools::latexToUtf8() again knows about \~{n} and other letters
    with tilde, fixing a regression in R 4.3.0, and about \^{i} as an
    alternative to \^{\i} (similarly with other accents).
    Furthermore, LaTeX codes for accented I letters are now correctly
    converted, also fixing related mistakes in
    tools::encoded_text_to_latex().
  * tar(*, tar = "internal") no longer creates out-of-spec tar files
    in the very rare case of user or group names longer than 32
    bytes, fixing PR#17871 with thanks to Ivan Krylov.
  * When using the "internal" timezone datetime code, adding a
    fraction of a second no longer adds one second, fixing PR#16856
    from a patch by Ivan Krylov.
  * tools::checkRd() no longer produces spurious notes about
    "unnecessary braces" from multi-line Rd results of \Sexpr macros.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1709208000">- CHANGES IN R 4.3.3:
  NEW FEATURES:
  * iconv() now fixes up variant encoding names such as "utf8"
    case-insensitively.
  DEPRECATED AND DEFUNCT:
  * The legacy encoding = "MacRoman" is deprecated in pdf() and
    postscript(): support was incomplete in earlier versions of R.
  BUG FIXES:
  * Arguments are now properly forwarded to methods on S4 generics
    with ... in the middle of their formal arguments. This was broken
    for the case when a method introduced an argument but did not
    include ... in its own formals. Thanks to Herv'e Pag`es for the
    report PR#18538.
  * Some invalid file arguments to pictex(), postscript() and xfig()
    opened a file called NA rather than throw an error.  These
    included postscript(NULL) (which some people expected to work
    like pdf(NULL)).
  * Passing filename = NA to svg(), cairo_pdf(), cairo_ps() or the
    Cairo-based bitmap devices opened a file called NA: it now throws
    an error.
  * quartz(file = NA) opened a file called NA, including when used as
    a Quartz-based bitmap device.  It now gives an error.
  * rank(&lt;long vector&gt;) now works, fixing PR#18617, thanks to Ilia
    Kats.
  * seq.int() did not adequately check its length.out argument.
  * match(&lt;POSIXct&gt;, .) is correct again for differing time zones,
    ditto for "POSIXlt", fixing PR#18618 reported by Bastian Klein.
  * drop.terms(*, dropx = &lt;0-length&gt;) now works, fixing PR#18563 as
    proposed by Mikael Jagan.
  * drop.terms(*) keeps + offset(.) terms when it should, PR#18565,
    and drop.terms() no longer makes up a response, PR#18566, fixing
    both bugs thanks to Mikael Jagan.
  * getS3method("t", "test") no longer finds the t.test() function,
    fixing PR#18627.
  * pdf() and postscript() support for the documented Adobe encodings
    "Greek" and "Cyrilllic" was missing (although the corresponding
    Windows' codepages could be used).
  * Computations of glyph metric information for pdf() and
    postscript() did not take into account that transliteration could
    replace one character by two or more (only seen on macOS 14) and
    typically warned that the information was not known.
  * rank(x) no longer overflows during integer addition, when
    computing rank average for largish but not-yet long vector x,
    fixing PR#18630, thanks to Ilia Kats.
  * list.files() on Windows now returns also files with names longer
    that 260 bytes (the Windows limit is 260 characters).
    Previously, some file names particularly with 'East Asian'
    characters were omitted.
  * cov2cor(&lt;0 x 0&gt;) now works, fixing PR#18423 thanks to Mikael
    Jagan and Elin Waring.
  * cov2cor(&lt;negative diagonal&gt;) and similar now give one warning
    instead of two, with better wording, fixing PR#18424 thanks to
    Mikael Jagan.
  * tools:: startDynamicHelp() now ensures port is in proper range,
    fixing PR#18645.
  * pbeta(x, a,b) is correct now for x=0 or 1 in the boundary cases
    where a or b or both are 0, fixing PR#18672 thanks to Michael
    Fay.
  * pmatch(x, table) for large table, also called for data frame row
    selection, dfrm[nm, ], is now interruptible, fixing PR#18656.
  * predict(&lt;rank-deficient lm&gt;, newdata=*) fix computing of nbasis,
    see Russ Lenth's comment 29 in PR#16158.
  * Added a work-around for a bug in macOS 14.3.1 and higher which
    prevents R plots in the Quartz Cocoa device from updating on
    screen.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1713960000">- CHANGES IN R 4.4.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Startup banners, R --version, sessionInfo() and R CMD check no
    longer report (64-bit) as part of the platform as this is almost
    universal - the increasingly rare 32-bit platforms will still
    report (32-bit).
    On Windows, ditto for window titles.
  * is.atomic(NULL) now returns FALSE, as NULL is not an atomic
    vector.  Strict back-compatibility would replace is.atomic(foo)
    by (is.null(foo) || is.atomic(foo)) but should happen only
    sparingly.
  NEW FEATURES:
  * The confint() methods for "glm" and "nls" objects have been
    copied to the stats package.  Previously, they were stubs which
    called versions in package MASS. The MASS namespace is no longer
    loaded if you invoke (say) confint(glmfit).  Further, the "glm"
    method for profile() and the plot() and pairs() methods for class
    "profile" have been copied from MASS to stats.  (profile.nls()
    and plot.profile.nls() were already in stats.)
  * The confint() and profile methods for "glm" objects have gained a
    possibility to do profiling based on the Rao Score statistic in
    addition to the default Likelihood Ratio. This is controlled by a
    new test = argument.
  * The pairs() method for "profile" objects has been extended with a
    which = argument to allow plotting only a subset of the
    parameters.
  * The "glm" method for anova() computes test statistics and
    p-values by default, using a chi-squared test or an F test
    depending on whether the dispersion is fixed or free.  Test
    statistics can be suppressed by giving argument test a false
    logical value.
  * In setRepositories() the repositories can be set using their
    names via name = instead of index ind =.
  * methods() and .S3methods() gain a all.names option for the (rare)
    case where functions starting with a . should be included.
  * Serializations can now be interrupted (e.g., by Ctrl-C on a
    Unix-alike) if they take too long, e.g., from save.image(),
    thanks to suggestions by Ivan Krylov and others on R-devel.
  * New startup option --max-connections to set the maximum number of
    simultaneous connections for the session.  Defaults to 128 as
    before: allowed values up to 4096 (but resource limits may in
    practice restrict to smaller values).
  * R on Windows (since Windows 10 2004) now uses the new Segment
    Heap allocator. This may improve performance of some
    memory-intensive applications.
  * When R packages are built, typically by R CMD build &lt;pkg&gt;, the
    new --user=&lt;build_user&gt; option overrides the (internally
    determined) user name, currently Sys.info()["user"] or LOGNAME.
    This is a (modified) fulfillment of Will Landau's suggestion in
    PR#17530.
  * tools::testInstalledBasic() gets new optional arguments outDir
    and testSrcdir, e.g., allowing to use it in a &lt;builddir&gt; !=
    &lt;srcdir&gt; setup, and in standard "binary" Windows installation
  * if* a source tests/ folder is present.
  * range(&lt;DT_with_Inf&gt;, finite = TRUE) now work for objects of class
    "Date", "POSIXct", and "POSIXlt" with infinite entries,
    analogously to range.default(), as proposed by Davis Vaughan on
    R-devel.  Other range()-methods can make use of new function
    .rangeNum().
  * New .internalGenerics object complementing .S3PrimitiveGenerics,
    for documentation and low-level book-keeping.
  * grid() now invisibly returns the x- and y- coordinates at which
    the grid-lines were drawn.
  * norm(., type) now also works for complex matrices.
  * kappa(., exact = TRUE, norm = *) now works for all norms and also
    for complex matrices.  In symmetric / triangular cases, the new
    argument uplo = "U" | "L" allows the upper or lower triangular
    part to be specified.
  * memDecompress(type = "unknown") recognizes compression in the
    default 'zlib' format as used by memCompress(type = "gzip").
  * memCompress() and memDecompress() will use the libdeflate library
    (&lt;https://github.com/ebiggers/libdeflate&gt;) if installed.  This
    uses the same type of compression for type = "gzip" but is 1.5-2x
    faster than the system libz library on some common platforms: the
    speed-up may depend on the library version.
  * diff() for objects of class "Date", "POSIXct", and "POSIXlt"
    accepts a units argument passed via ....
  * Dynamic help now does a much better job of rendering package
    DESCRIPTION metadata.
  * Rprof() gains an event argument and support for elapsed (real)
    time profiling on Unix (PR#18076).
  * filled.contour() gains a key.border argument.
  * tools::update_pkg_po() gets arguments pot_make and mo_make for
    _not_ re-making the corresponding files, and additionally a
    verbose argument.
  * Hexadecimal string colour specifications are now accepted in
    short form, so, for example, we can use "#123", which is
    equivalent to "#112233".
    Thanks to MikeFC for the original idea and Ella Kaye, Malcolm
    Barrett, George Stagg, and Hanne Oberman for the patch.
  * Plain-text help shows \var markup by angle brackets.
  * The new experimental primitive function declare() is intended to
    eventually allow information about R code to be communicated to
    the interpreter, compiler, and code analysis tools. The syntax
    for declarations is still being developed.
  * Functions psmirnov(), qsmirnov() and rsmirnov() in package stats
    have had argument two.sided renamed to alternative, to take into
    account that the permutation distributions of the one-sided
    statistics can be different in the case of ties.  Consequence of
    PR#18582.
  * sort() is now an implicit S4 generic in methods.
  * Formatting and printing, format(z), print(z), of complex vectors
    z no longer zap relatively small real or imaginary parts to zero,
    fixing PR#16752.  This is an API change, as it was documented
    previously to round real and imaginary parts together on purpose,
    producing nicer looking output.  As mentioned, e.g. in the PR,
    this change is compatible with many other "R-like" programming
    environments.
    We have simplified the internal code and now basically format the
    real and imaginary parts independently of each other.
  * New experimental functions Tailcall() and Exec() to support
    writing stack-space-efficient recursive functions.
  * Where characters are attempted to be plotted by pdf(),
    postscript() and xfig() which are not in the selected 8-bit
    character set (most often Latin-1) and the R session is using a
    UTF-8 locale, the warning messages will show the UTF-8 character
    rather than its bytes and one dot will be substituted per
    character rather than per byte.  (Platforms whose iconv() does
    transliteration silently plot the transliteration.)
    In a UTF-8 locale some transliterations are now done with a
    warning (e.g., dashes and Unicode minus to hyphen, ligatures are
    expanded, permille (‰) is replaced by o/oo), although the OS may
    have got there first.  These are warnings as they will continue
    to be replaced by dots in earlier versions of R.
  * The matrix multiplication functions crossprod() and tcrossprod()
    are now also primitive and S3 generic, as %*% had become in R
    4.3.0.
  * source() and example() have a new optional argument catch.aborts
    which allows continued evaluation of the R code after an error.
  * The non-Quartz tiff() devices allow additional types of
    compression if supported by the platform's libtiff library.
  * The list of base and recommended package names is now provided by
    tools::standard_package_names().
  * cairo_pdf() and cairo_ps() default to onefile = TRUE to closer
    match pdf() and postscript().
  * New option catch.script.errors provides a documented way to catch
    errors and then continue in non-interactive use.
  * L %||% R newly in base is an expressive idiom for the phrases
    if(!is.null(L)) L else R or if(is.null(L)) R else L.
  * The return value from warnings() now always inherits from
    "warnings" as documented, now also in the case of no warnings
    where it previously returned NULL.
  * as.complex("1i") now returns 0 + 1i instead of NA with a warning.
  * z &lt;- c(NA, 1i) now keeps the imaginary part Im(z[1]) == 0, no
    longer coercing to NA_complex_.  Similarly, cumsum(z) correctly
    sums real and imaginary parts separately, i.e., without
    "crosstalk" in case of NAs.
  * On Alpine Linux iconv() now maps "latin2", "latin-2", "latin9"
    and "latin-9" to encoding names the OS knows about
    (case-insensitively).
  * iconv(sub = "Unicode") now always zero-pads to four (hex) digits,
    rather than to 4 or 8.  (This seems to have become the convention
    once Unicode restricted the number of Unicode points to 2^21 - 1
    and so will never need more than 6 digits.)
  * NCOL(NULL) now returns 0 instead of 1, for consistency with
    cbind().
  * The information for the Euro glyph missing from the Adobe .afm
    files for the Courier, Helvetica and Times families has been
    copied from their URW equivalents - this will improve vertical
    centring in the pdf() and postscript() devices.
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.12.0.  The changes are almost entirely cosmetic.
  * The included LAPACK sources have been updated to version 3.12.0
    and some further double-complex routines added.
  * There are new font families for the 2014--5 URW 2.0 fonts (see
    ?pdf) which are included in recent versions of Ghostscript.
    These have font widths for most Greek glyphs and a few others
    which were missing from the original versions (whose font
    families remain available for reproducibility, although
    Ghostscript-based viewers will render using the 2.0 versions).
  * Improve the large-n efficiency of as.matrix(&lt;dist&gt;), thanks an R
    contributors effort, notably by Tim Taylor and Heather Turner,
    see PR#18660.
  * The default and numeric methods of all.equal() get a check.class
    option.
  * zapsmall() gets new optional arguments, function mFUN and min.d,
    for extra flexibility; fulfills a wish in PR#18199.  Also, it is
    now an implicit S4 generic in package methods.
  * The Rd filter for aspell() gains an ignore argument.
  * New generic function sort_by(), primarily useful for the
    data.frame method which can be used to sort rows of a data frame
    by one or more columns.
  * The icence headers for the RPC code in src/extra/xdr have been
    updated to use the GPL-compatible licence published by Oracle
    America in 2010.
  * New function pkg2HTML() in tools to create single-page HTML
    reference manuals for R packages.
  * The byte code evaluator now uses less C stack space for recursive
    calls to byte-compiled functions. It also makes more of an effort
    to avoid allocations for scalar return values.
  * New completion option backtick (disabled by default) allows
    non-syntactic completions to be wrapped in backquotes. This is
    currently only useful for Jupyter notebooks via the IRkernel
    package, and may cause problems for other backends.
  INSTALLATION:
  * The parser has been updated to work with bison 3.8.2, which is
    now used for the pre-generated parsers in gram.c, file.c, and
    gramRd.c. A few parser error messages have changed, which may
    affect code that relies on exact messages.
  INSTALLATION on a UNIX-ALIKE:
  * System valgrind headers are now required to use configure option
  - -with-valgrind-instrumentation with value 1 or 2.
  * configure will warn if it encounters a 32-bit build, as that is
    nowadays almost untested.
  * Environment variable R_SYSTEM_ABI is no longer used and so no
    longer recorded in etc/Renviron (it was not on Windows and was
    only ever used when preparing package tools).
  * If the libdeflate library and headers are available, libdeflate
    rather than libz is used to (de)compress R objects in lazy-load
    databases.  Typically tasks spend up to 5% of their time on such
    operations, although creating lazy-data databases is one of the
    exceptions.
    This can be suppressed if the library is available by the
    configure option --without-libdeflate-compression.
  * configure option --enable-lto=check has not worked reliably since
    2019 and has been removed.
  * The minimum autoconf requirement for a maintainer build has been
    increased to autoconf 2.71.
    It is intended to increase this to 2.72 for R 4.5.0: the
    distributed configure file was generated using 2.72.
  * The minimum version requirement for an external LAPACK has been
    reduced to 3.9.0.
  * No default C++ compiler is set if no C++17 compiler is detected:
    there is no longer an automatic fallback to C++14 or C++11.
    Compilers from the last five years should have sufficient
    support: for others macros CXX and CXXSTD can be set in file
    config.site to provide a fallback if needed.
    The Objective-C++ compiler now by default uses the standard
    selected by R for C++ (currently C++17) rather than the default
    standard for the C++ compiler (which on macOS is still C++98).
  INSTALLATION on macOS:
  * A new configure option --with-newAccelerate makes use of Apple's
    'new' BLAS / LAPACK interfaces in their Accelerate framework.
    Those interfaces are only available in macOS 13.3 or later, and
    building requires SDK 13.3 or later (from the Command Line Tools
    or Xcode 14.3 or later).
    By default the option uses new Accelerate for BLAS calls: to also
    use it for LAPACK use option --with-newAccelerate=lapack.  The
    later interfaces provide LAPACK 3.9.1 rather than 3.2.1: 3.9.1 is
    from 2021-04 and does not include the improved algorithms
    introduced in LAPACK 3.10.0 (including for BLAS calls).
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools44, an update of the Rtools43 toolchain.  It is
    based on GCC 13 and newer versions of MinGW-W64, binutils and
    libraries (targeting 64-bit Intel CPUs).  R-devel can no longer
    be built using Rtools43 without changes.
  * Rtools44 has experimental support for 64-bit ARM (aarch64) CPUs
    _via_ the LLVM 17 toolchain using lld, clang/flang-new and
    libc++.
  UTILITIES:
  * R CMD check notes when S4-style exports are used without
    declaring a strong dependence on package methods.
  * tools::checkRd() (used by R CMD check) detects more problems with
    \Sexpr-based dynamic content, including bad nesting of \Sexprs
    and invalid arguments.
  * tools::checkRd() now reports Rd titles and section names ending
    in a period; this is ignored by R CMD check unless environment
    variable _R_CHECK_RD_CHECKRD_MINLEVEL_ is set to -5 or smaller.
  * R CMD check now notes Rd files without an \alias, as long
    documented in 'Writing R Extensions' §1.3.1.  The check for a
    missing \description has been moved from tools::checkRd() to
    tools::checkRdContents().
  * R CMD check now visits inst/NEWS.Rd and OS-specific man
    subdirectories when checking Rd files.
  * tools::checkDocFiles() and tools::checkRdContents() now also
    check internal Rd files by default, but "specially" (ignoring
    missing documentation of arguments).
  * R CMD Rdiff gets option --useEx.
  * R CMD check now warns on non-portable uses of Fortran KIND such
    as INTEGER(KIND=4) and REAL(KIND=8).
    To see the failing lines set environment variable
    _R_CHECK_FORTRAN_KIND_DETAILS_ to a true value.
  * When checking Rd files, R CMD check now notes some of the "lost
    braces" that tools::checkRd() finds.  Typical problems are Rd
    macros missing the initial backslash (e.g., code{...}), in-text
    set notation (e.g., {1, 2}, where the braces need escaping), and
    \itemize lists with \describe-style entries of the form
    \item{label}{description}.
  * R CMD INSTALL (and hence check) will compile C++ code with
  - DR_NO_REMAP if environment variable _R_CXX_USE_NO_REMAP_ is set
    to a true value.  It is planned that this will in future become
    the default for compiling C++.
  * The new built-in Rd macro \dontdiff{} can be used to mark example
    code whose output should be ignored when comparing check output
    to reference output (tests/Examples/&lt;pkg&gt;-Ex.Rout.save).  The
    \dontdiff tag, like \donttest, is _not_ shown on the rendered
    help page, so provides a clean alternative to ##
    IGNORE_RDIFF_(BEGIN|END) comments.
  * R CMD build when there is no NAMESPACE, now uses the recommended
    exportPattern("^[^.]"), instead of exporting everything.
  * R CMD check now warns about non-ASCII characters in the NAMESPACE
    file (in addition to R files). Such packages are not portable and
    may fail to install on some platforms.
  C-LEVEL FACILITIES:
  * Headers R_ext/Applic.h and R-ext/Linpack.h used to include
    R_ext/BLAS.h although this was undocumented and unneeded by their
    documented entry points.  They no longer do so.
  * New function R_missing(), factored out from do_missing(), used to
    fix PR#18579.
  * SEXP type S4SXP has been renamed to OBJSXP to support
    experimenting with alternative object systems.  The S4SXP value
    can still be used in C code but is now deprecated.  Based on
    contributions from the R Consortium's Object-Oriented Programming
    Working Group.
  * New function pow1p(x,y) for accurate (1+x)^y.
  * mkCharLenCE was incorrectly documented to take a size_t length
    but was implemented with int (and character strings in R are
    limited to 2^31 - 1 bytes).
  DEPRECATED AND DEFUNCT:
  * data() no longer handles zipped data from long-defunct (since R
    2.13.0) --use-zip-data installations.
  * The legacy graphics devices pictex() and xfig() are now
    deprecated.  They do not support recent graphics enhancements and
    their font handling is rudimentary. The intention is to retain
    them for historical interest as long as they remain somewhat
    functional.
  * Support for encoding = "MacRoman" has been removed from the pdf()
    and postscript() devices - this was a legacy encoding supporting
    classic macOS up to 2001 and no longer has universal libiconv
    support.
  * is.R() is deprecated as no other S dialect is known to be in use
    (and this could only identify historical dialects, not future
    ones).
    Further information on calls can be obtained by setting the
    environment variable _R_DEPRECATED_IS_R_ to error which turns the
    deprecation warning into an error and so by default gives a
    traceback.  (This is done by R CMD check --as-cran.)
  * UseMethod() no longer forwards local variables assigned in the
    generic function into method call environments before evaluating
    the method body. This makes method calls behave more like
    standard function calls and makes method code easier to analyze
    correctly.
  * The twelve as.data.frame.&lt;class&gt;() methods which were deprecated
    only via _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ and in R CMD
    check --as-cran are formally deprecated now in favour of calling
    as.data.frame() or as.data.frame.vector().  The deprecation
    "check" now works also when as.data.frame() is S4 generic thanks
    to Ivan Krylov.
  * The default method for the directional comparison operators &lt;, &gt;,
    &lt;=, and &gt;= now signals an error when one of the operands is a
    language object, i.e. a symbol or a call.
  * For terms.formula(), deprecate abb and neg.out arguments
    _formally_ in addition to just documenting it.
  BUG FIXES:
  * The methods package is more robust to not being attached to the
    search path.  More work needs to be done.
  * pairwise.t.test() misbehaved when subgroups had 0 DF for
    variance, even with pool.sd = TRUE.  (PR#18594 by Jack Berry).
  * Probability distribution functions [dpq]&lt;distrib&gt;(x, *), but also
    bessel[IKJY](x, .) now consistently preserve attributes(x) when
    length(x) == 0, e.g., for a 2 x 0 matrix, thanks to Karolis
    Koncevičius' report PR#18509.
  * Group "Summary" computations such as sum(1:3, 4, na.rm = 5, NA,
    7, na.rm = LL) now give an error instead of either 17 or NN for
    LL true or false, as proposed by Ivan Krylov on the R-devel
    mailing list.  (This also means it is now an error to specify
    na.rm more than once.)
  * as.complex(x) now returns complex(real = x, imaginary = 0) for
    _all_ numerical and logical x, notably also for NA or
    NA_integer_.
  * Directories are now omitted by file.copy(, recursive = FALSE) and
    in file.append() (PR#17337).
  * gsub() and sub() are now more robust to integer overflow when
    reporting errors caused by too large input strings (PR#18346).
  * Top-level handlers are now more robust to attempts to remove a
    handler whilst handlers are running (PR#18508).
  * The handling of Alt+F4 in dialogs created on Windows using
    GraphApp has been fixed (PR#13870).
  * density() more consistently computes grid values for the
    FFT-based convolution, following Robert Schlicht's analysis and
    proposal in PR#18337, correcting density values typically by a
    factor of about 0.999.  Argument old.coords = TRUE provides back
    compatibility.
  * palette.colors() gains a name argument that defaults to FALSE
    controlling whether the vector of colours that is returned has
    names (where possible).  PR#18529.
  * tools::xgettext() no longer extracts the (non-translatable) class
    names from warningCondition and errorCondition calls.
  * S3method(&lt;gen&gt;, &lt;class&gt;, &lt;func&gt;) in the NAMESPACE file now works
    (again) when &lt;func&gt; is visible from the namespace, e.g.,
    imported, or in base.
  * getParseData(f) now also works for a function defined in the
    first of several &lt;pkg&gt;/R/*.R source files, thanks to Kirill
    Müller's report and Duncan Murdoch's patch in PR#16756.
  * Rd \Sexpr macros with nested #ifdef conditionals were not
    processed.
  * A non-blocking connection with non-default encoding (such as a
    socket) now correctly returns from readLines() after new data has
    arrived also when its EOF had been reached previously.  Thanks to
    Peter Meilstrup's report on R-devel and Ivan Krylov's report and
    patch proposal in PR#18555.
  * tools::checkRdContents() failed to detect empty argument
    descriptions when they spanned multiple lines, including those
    generated by prompt().  These cases are now noted by R CMD check.
  * Plain-text help no longer outputs spurious colons in the
    arguments list (for multi-line \item labels in the Rd source).
  * kappa() and rcond() work correctly in more cases; kappa(., norm =
    "2") now warns that it computes the 1-norm with (default) exact =
    FALSE; prompted by Mikael Jagan's quite comprehensive PR#18543.
  * Rd skeletons generated by prompt() or promptData() now use a
    dummy title (so R CMD build works).  tools::checkRdContents() has
    been updated to detect such template leftovers, including from
    promptPackage().
  * When S4 method dispatch fails because no method was found, the
    error message now includes the signature argument names; thanks
    to Michael Chirico's proposal on the R-devel list.
  * withAutoprint({ .. }) now preserves srcrefs previously lost,
    thanks to Andrew Simmons' report plus fix in PR#18572.
  * transform.data.frame() no longer adjusts names; in particular,
    untransformed variables are kept as-is, including those with
    syntactically invalid names (PR#17890).
  * The keep.source option for Rd \Sexpr blocks is no longer ignored.
  * The formula methods for t.test() and wilcox.test() now catch when
    paired is passed, addressing PR#14359; use Pair(x1, x2) ~ 1 for a
    paired test.
  * The level reported in the browser prompt was often too large. It
    now shows the number of browser contexts on the stack.
  * For cbind() and rbind(), the optional deparse.level argument is
    now properly passed to methods, thanks to Mikael Jagan's PR#18579
    and comments there.
  * Some error and warning messages for large ('long vector')
    matrix(v, nr, nc) and dim(m) &lt;- d are now correct about sizes,
    using long long formatting, fixing PR#18612 (and more) reported
    by Mikael Jagan.
  * readChar(useBytes = TRUE) now terminates strings even when the
    underlying connection uses extra spaces in the input buffer.
    This fixes problems with extra garbage seen with gzip
    connections, PR#18605.
  * Named capture in PCRE regular expressions now works also with
    more than 127 named groups (PR#18588).
  * Datetime functions are now robust against long jumps when dealing
    with internal time zone changes.  This avoids confusing warnings
    about an invalid time zone, previously triggered by turning
    warnings into errors or handling them via tryCatch (PR#17966,
    PR#17780).
  * Datetime functions now restore even an empty TZ environment
    variable after internal time zone changes (PR#17724).  This makes
    results of datetime functions with this (typically unintentional)
    setting more predictable.
  * drop.terms(*) now drops response as by default, keep.response =
    FALSE, fixing PR#18564 thanks to Mikael Jagan.
  * dummy.coef(.) now also works for lm()-models with character
    categorical predictor variables rather than factor ones, fixing
    PR#18635 reported by Jinsong Zhao.
  * formals(f) &lt;- formals(f) now also works for a function w/o
    arguments and atomic _constant_ body(f).
  * Correct as.function(&lt;invalid list&gt;, .)'s error message.
  * removeSource() is yet more thorough in finding and removing
    "srcref" and the other source references from parsed R language
    chunks, fixing PR#18638 thanks to Andrew Simmons.
  * dgeom() is more accurate now, notably when its result is very
    small, fixing PR#18642 thanks to the proposal of Morten Welinder,
    also improving other instances where C level binom_raw(x, n, ..)
    has x == 0 or x== n.
  * warning() with options(warn = 1) has improved output for
    multi-line messages.
  * axis.Date() and axis.POSIXct() now respect the par("lab") setting
    for the number of pretty() intervals.
  * Comparisons for language objects (which are based on deparsing)
    are now more careful about using accurate deparsed results
    (PR#18676).
  * Plain-text help (Rd2txt) now correctly preserves blank lines
    following single-line \dontrun code.
  * &lt;POSIXlt&gt;[*] no longer sets wrong "balanced" attribute, fixing
    PR#18681 thanks to Mikael Jagan.
  * str(&lt;classed-call&gt;) now deparses the call as expected, fixing
    PR#18684, reported by Dave Slager.
  * In Rd examples, code following the closing brace of a \dontrun,
    \dontshow or \donttest tag on the same line is no longer skipped
    when R CMD check runs the examples.
  * as.data.frame(matrix(*, ncol=0)) now gets valid names() and
    colnames(); reported by Davis Vaughan on the R-devel list.
  * Internal Mathlib function stirlerr(n) is now almost fully
    (52-bit) accurate for all n &gt;= ~5.9 and more accurate also in the
    range 1 -- 5.9.  This entails small ("after 12th decimal")
    changes in density functions, e.g., dgamma() in _some_ regions of
    their support.  The fix was partly prompted by Morten Welinder's
    PR#18640.
  * Numbers like 9876543.2 are now considered non-integer by Mathlib
    internal R_nonint(), amending original fix of PR#15734.
  * Rd comment lines no longer cause broken paragraphs in the
    rendered PDF and plain-text help. In code blocks, pure comment
    lines (starting with %) no longer produce an empty line.
  * xtabs(Freq ~ .) now consistently defaults to na.action = na.pass,
    using na.rm = FALSE (added as an argument) when summing over Freq
    (PR#17770).
  * tools::testInstalledPackage() is no longer silent about failures
    from running examples or tests and its return code no longer
    ignores failures from checking vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1718366400">- CHANGES IN R 4.4.1:
  C-LEVEL FACILITIES:
  * Functions R_atof and R_strtod declared in header R_ext/Utils.h
    are now documented in 'Writing R Extensions' and so formally part
    of the API.
  * The non-API entry points Rf_setSVector, Rf_StringFalse,
    Rf_StringTrue and Rf_isBlankString have been added to those
    reported by R CMD check.
  * The new function Rf_allocLang is now available. This provides an
    alternative to the idiom of calling Rf_allocList followed by
    SET_TYPEOF.
  UTILITIES:
  * R CMD check now reports as warnings what gfortran calls 'Fortran
    2018 deleted features', all of which have long been marked as
    'obsolescent' and some of which were deleted in Fortran 2008 or
    earlier.  Fortran compilers are no longer required to support
    these.
  BUG FIXES:
  * as.numeric(), scan(), type.convert() and other places which use
    the internal C function R_strtod now require a _non-empty_ digit
    sequence in a decimal or binary exponent.  This aligns with the
    C/POSIX standard for strtod and with ?NumericConstants.
  * as.data.frame(m, make.names=NA) now works correctly for a matrix
    m with NA's in row names.
  * The error message from &lt;POSIXlt&gt;[["hour"]] and similar now
    mentions *[[, "hour"]], as wished for in PR#17409 and proposed by
    Michael Chirico.
  * qbinom() and potentially qpois(), qnbinom(), no longer sometimes
    fail accurate inversion (of pbinom(), etc), thanks to Christopher
    Chang's report and patch in PR#18711.
  * The internal help server on Windows can again serve requests sent
    in quick succession, fixing a regression in R 4.4.0.
  * debugcall(&lt;S3Generic&gt;()) now also works when a corresponding
    S4-generic version is in the methods cache (PR#18143).
  * Package tools' toTitleCase(ch0) now returns character(0) when ch0
    is of zero length; fixing PR#18724, reported by David Hugh Jones.
  * R CMD check is no longer broken (without a check result and no
    explanation in 00check.log) for a package which declares an
    invalid VignetteBuilder in DESCRIPTION but has no vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1730376000">- CHANGES IN R 4.4.2:
  C-LEVEL FACILITIES:
  * The S-compatibility macros F77_COM and F77_COMDECL defined in
    header R_ext/RS.h are deprecated and will be removed shortly.  We
    could find no record of their use.
  BUG FIXES:
  * Mathlib function lgammacor(x) no longer warns about underflow to
    zero for large x.
  * Text widths and heights were incorrectly reported by the Quartz
    device if the drawing context didn't exist yet (typically when
    drawing off-screen to a window that is yet to appear, see
    PR#18591).
  * The Quartz device could segfault in cases where paths with spaces
    are used in the new glyph drawing API.  Thanks to Tomek
    Gieorgijewski (PR#18758).
  * On macOS in R CRAN builds, it is again possible to read
    little-endian UTF-16 text with a BOM from a connection using
    encoding="UTF-16".  Users building R from source should avoid
    using the system libiconv in macOS 14.1 and later.
  * methods' internal .requirePackage() now re-enables primitive
    method dispatch when needed; thanks to Ivan Krylov for
    demystifying CRAN package check failures on the R-devel mailing
    list.</changelog>
</package>
<package pkgid="cff5694fa628038c37033ab467c5f678afc7b9f9b03b0d872dc50d4657920c4a1f9b703220068d33cbe894c0cb4289c66f72afb200009cffe03e5d0ede7723bd" name="R-mgcv-debuginfo" arch="x86_64">
  <version epoch="0" ver="1.9.1" rel="51.0.2.2.sr20241103"/>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1620302400">- To get in sync with d:l:R:autoCRAN the Matrix package's split
  in -devel was reversed.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339200">- improved spec file according to comments of dimstar in
  https://build.opensuse.org/request/show/892685</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339201">- CHANGES IN R 4.1.0:
  FUTURE DIRECTIONS:
  * It is planned that the 4.1.x series will be the last to support
    32-bit Windows, with production of binary packages for that
    series continuing until early 2023.
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Data set esoph in package datasets now provides the correct
    numbers of controls; previously it had the numbers of cases added
    to these.  (Reported by Alexander Fowler in PR#17964.)
  NEW FEATURES:
  * www.omegahat.net is no longer one of the repositories known by
    default to setRepositories().  (Nowadays it only provides source
    packages and is often unavailable.)
  * Function package_dependencies() (in package tools) can now use
    different dependency types for direct and recursive dependencies.
  * The checking of the size of tarball in R CMD check --as-cran
    &lt;pkg&gt; may be tweaked via the new environment variable
    _R_CHECK_CRAN_INCOMING_TARBALL_THRESHOLD_, as suggested in
    PR#17777 by Jan Gorecki.
  * Using c() to combine a factor with other factors now gives a
    factor, an ordered factor when combining ordered factors with
    identical levels.
  * apply() gains a simplify argument to allow disabling of
    simplification of results.
  * The format() method for class "ftable" gets a new option justify.
    (Suggested by Thomas Soeiro.)
  * New ...names() utility.  (Proposed by Neal Fultz in PR#17705.)
  * type.convert() now warns when its as.is argument is not
    specified, as the help file always said it _should_.  In that
    case, the default is changed to TRUE in line with its change in
    read.table() (related to stringsAsFactor) in R 4.0.0.
  * When printing list arrays, classed objects are now shown _via_
    their format() value if this is a short enough character string,
    or by giving the first elements of their class vector and their
    length.
  * capabilities() gets new entry "Rprof" which is TRUE when R has
    been configured with the equivalent of --enable-R-profiling (as
    it is by default).  (Related to Michael Orlitzky's report
    PR#17836.)
  * str(xS4) now also shows extraneous attributes of an S4 object
    xS4.
  * Rudimentary support for vi-style tags in rtags() and R CMD rtags
    has been added.  (Based on a patch from Neal Fultz in PR#17214.)
  * checkRdContents() is now exported from tools; it and also
    checkDocFiles() have a new option chkInternal allowing to check
    Rd files marked with keyword "internal" as well.  The latter can
    be activated for R CMD check via environment variable
    _R_CHECK_RD_INTERNAL_TOO_.
  * New functions numToBits() and numToInts() extend the raw
    conversion utilities to (double precision) numeric.
  * Functions URLencode() and URLdecode() in package utils now work
    on vectors of URIs.  (Based on patch from Bob Rudis submitted
    with PR#17873.)
  * path.expand() can expand ~user on most Unix-alikes even when
    readline is not in use.  It tries harder to expand ~, for example
    should environment variable HOME be unset.
  * For HTML help (both dynamic and static), Rd file links to help
    pages in external packages are now treated as references to
    topics rather than file names, and fall back to a file link only
    if the topic is not found in the target package. The earlier rule
    which prioritized file names over topics can be restored by
    setting the environment variable _R_HELP_LINKS_TO_TOPICS_ to a
    false value.
  * c() now removes NULL arguments before dispatching to methods,
    thus simplifying the implementation of c() methods, _but_ for
    back compatibility keeps NULL when it is the first argument.
    (From a report and patch proposal by Lionel Henry in PR#17900.)
  * Vectorize()'s result function's environment no longer keeps
    unneeded objects.
  * Function ...elt() now propagates visibility consistently with
    ..n.  (Thanks to Lionel Henry's PR#17905.)
  * capture.output() no longer uses non-standard evaluation to
    evaluate its arguments.  This makes evaluation of functions like
    parent.frame() more consistent.  (Thanks to Lionel Henry's
    PR#17907.)
  * packBits(bits, type="double") now works as inverse of
    numToBits().  (Thanks to Bill Dunlap's proposal in PR#17914.)
  * curlGetHeaders() has two new arguments, timeout to specify the
    timeout for that call (overriding getOption("timeout")) and TLS
    to specify the minimum TLS protocol version to be used for
    https:// URIs (_inter alia_ providing a means to check for sites
    using deprecated TLS versions 1.0 and 1.1).
  * For nls(), an optional constant scaleOffset may be added to the
    denominator of the relative offset convergence test for cases
    where the fit of a model is expected to be exact, thanks to a
    proposal by John Nash.  nls(*, trace=TRUE) now also shows the
    convergence criterion.
  * Numeric differentiation _via_ numericDeriv() gets new optional
    arguments eps and central, the latter for taking central divided
    differences.  The latter can be activated for nls() via
    nls.control(nDcentral = TRUE).
  * nls() now passes the trace and control arguments to getInitial(),
    notably for all self-starting models, so these can also be fit in
    zero-noise situations via a scaleOffset.  For this reason, the
    initial function of a selfStart model must now have ... in its
    argument list.
  * bquote(splice = TRUE) can now splice expression vectors with
    attributes: this makes it possible to splice the result of
    parse(keep.source = TRUE).  (Report and patch provided by Lionel
    Henry in PR#17869.)
  * textConnection() gets an optional name argument.
  * get(), exists(), and get0() now signal an error if the first
    argument has length greater than 1.  Previously additional
    elements were silently ignored.  (Suggested by Antoine Fabri on
    R-devel.)
  * R now provides a shorthand notation for creating functions, e.g.
    \(x) x + 1 is parsed as function(x) x + 1.
  * R now provides a simple native forward pipe syntax |&gt;.  The
    simple form of the forward pipe inserts the left-hand side as the
    first argument in the right-hand side call.  The pipe
    implementation as a syntax transformation was motivated by
    suggestions from Jim Hester and Lionel Henry.
  * all.equal(f, g) for functions now by default also compares their
    environment(.)s, notably via new all.equal method for class
    function.  Comparison of nls() fits, e.g., may now need
    all.equal(m1, m2, check.environment = FALSE).
  * .libPaths() gets a new option include.site, allowing to _not_
    include the site library.  (Thanks to Dario Strbenac's suggestion
    and Gabe Becker's PR#18016.)
  * Lithuanian translations are now available.  (Thanks to Rimantas
    Zakauskas.)
  * names() now works for DOTSXP objects.  On the other hand, in
    R-lang, the R language manual, we now warn against relying on the
    structure or even existence of such dot-dot-dot objects.
  * all.equal() no longer gives an error on DOTSXP objects.
  * capabilities("cairo") now applies only to the file-based devices
    as it is now possible (if very unusual) to build R with Cairo
    support for those but not for X11().
  * There is optional support for tracing the progress of
    loadNamespace() - see its help.
  * (Not Windows.)  l10n_info() reports an additional element, the
    name of the encoding as reported by the OS (which may differ from
    the encoding part (if any) of the result from
    Sys.getlocale("LC_CTYPE").
  * New function gregexec() which generalizes regexec() to find _all_
    disjoint matches and well as all substrings corresponding to
    parenthesized subexpressions of the given regular expression.
    (Contributed by Brodie Gaslam.)
  * New function charClass() in package utils to query the
    wide-character classification functions in use (such as
    iswprint).
  * The names of quantile()'s result no longer depend on the global
    getOption("digits"), but quantile() gets a new optional argument
    digits = 7 instead.
  * grep(), sub(), regexp and variants work considerably faster for
    long factors with few levels.  (Thanks to Michael Chirico's
    PR#18063.)
  * Provide grouping of x11() graphics windows within a window
    manager such as Gnome or Unity; thanks to a patch by Ivan Krylov
    posted to R-devel.
  * The split() method for class data.frame now allows the f argument
    to be specified as a formula.
  * sprintf now warns on arguments unused by the format string.
  * New palettes "Rocket" and "Mako" for hcl.colors() (approximating
    palettes of the same name from the 'viridisLite' package).
    Contributed by Achim Zeileis.
  * The base environment and its namespace are now locked (so one can
    no longer add bindings to these or remove from these).
  * Rterm handling of multi-byte characters has been improved,
    allowing use of such characters when supported by the current
    locale.
  * Rterm now accepts ALT+ +xxxxxxxx sequences to enter Unicode
    characters as hex digits.
  * Environment variable LC_ALL on Windows now takes precedence over
    LC_CTYPE and variables for other supported categories, matching
    the POSIX behaviour.
  * duplicated() and anyDuplicated() are now optimized for integer
    and real vectors that are known to be sorted via the ALTREP
    framework. Contributed by Gabriel Becker via PR#17993.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 14
    and so packages that provide graphics devices should be
    reinstalled.
  * Graphics devices should now specify deviceVersion to indicate
    what version of the graphics engine they support.
  * Graphics devices can now specify deviceClip.  If TRUE, the
    graphics engine will never perform any clipping of output itself.
    The clipping that the graphics engine does perform (for both
    canClip = TRUE and canClip = FALSE) has been improved to avoid
    producing unnecessary artifacts in clipped output.
  * The grid package now allows gpar(fill) to be a linearGradient(),
    a radialGradient(), or a pattern().  The viewport(clip) can now
    also be a grob, which defines a clipping path, and there is a new
    viewport(mask) that can also be a grob, which defines a mask.
    These new features are only supported so far on the Cairo-based
    graphics devices and on the pdf() device.
  * (Not Windows.)  A warning is given when a Cairo-based type is
    specified for a png(), jpeg(), tiff() or bmp() device but Cairo
    is unsupported (so type = "Xlib" is tried instead).
  * grSoftVersion() now reports the versions of FreeType and
    FontConfig if they are used directly (not _via_ Pango), as is
    most commonly done on macOS.
  C-LEVEL FACILITIES:
  * The _standalone_ libRmath math library and R's C API now provide
    log1pexp() again as documented, and gain log1mexp().
  INSTALLATION on a UNIX-ALIKE:
  * configure checks for a program pkgconf if program pkg-config is
    not found.  These are now only looked for on the path (like
    almost all other programs) so if needed specify a full path to
    the command in PKG_CONFIG, for example in file config.site.
  * C99 function iswblank is required - it was last seen missing ca
    2003 so the workaround has been removed.
  * There are new configure options --with-internal-iswxxxxx,
  - -with-internal-towlower and --with-internal-wcwidth which allows
    the system functions for wide-character classification,
    case-switching and width (wcwidth and wcswidth) to be replaced by
    internal ones.  The first has long been used on macOS, AIX (and
    Windows) but this enables it to be unselected there and selected
    for other platforms (it is the new default on Solaris).  The
    second is new in this version of R and is selected by default on
    macOS and Solaris.  The third has long been the default and
    remains so as it contains customizations for East Asian
    languages.
    System versions of these functions are often minimally
    implemented (sometimes only for ASCII characters) and may not
    cover the full range of Unicode points: for example Solaris (and
    Windows) only cover the Basic Multilingual Plane.
  * Cairo installations without X11 are more likely to be detected by
    configure, when the file-based Cairo graphics devices will be
    available but not X11(type = "cairo").
  * There is a new configure option --with-static-cairo which is the
    default on macOS.  This should be used when only static cairo
    (and where relevant, Pango) libraries are available.
  * Cairo-based graphics devices on platforms without Pango but with
    FreeType/FontConfig will make use of the latter for font
    selection.
  LINK-TIME OPTIMIZATION on a UNIX-ALIKE:
  * Configuring with flag --enable-lto=R now also uses LTO when
    installing the recommended packages.
  * R CMD INSTALL and R CMD SHLIB have a new flag --use-LTO to use
    LTO when compiling code, for use with R configured with
  - -enable-lto=R.  For R configured with --enable-lto, they have
    the new flag --no-use-LTO.
    Packages can opt in or out of LTO compilation _via_ a UseLTO
    field in the DESCRIPTION file.  (As usual this can be overridden
    by the command-line flags.)
  BUILDING R on Windows:
  * for GCC &gt;= 8, FC_LEN_T is defined in config.h and hence character
    lengths are passed from C to Fortran in _inter alia_ BLAS and
    LAPACK calls.
  * There is a new text file src/gnuwin32/README.compilation, which
    outlines how C/Fortran code compilation is organized and
    documents new features:
  * R can be built with Link-Time Optimization with a suitable
    compiler - doing so with GCC 9.2 showed several
    inconsistencies which have been corrected.
  * There is support for cross-compiling the C and Fortran code
    in R and standard packages on suitable (Linux) platforms.
    This is mainly intended to allow developers to test later
    versions of compilers - for example using GCC 9.2 or 10.x has
    detected issues that GCC 8.3 in Rtools40 does not.
  * There is experimental support for cross-building R packages
    with C, C++ and/or Fortran code.
  * The R installer can now be optionally built to support a single
    architecture (only 64-bit or only 32-bit).
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++14 where
    available (which it is on all currently checked platforms): if
    not (as before) C++11 is used if available otherwise C++ is not
    supported.
    Packages which specify C++11 will still be installed using C++11.
    C++14 compilers may give deprecation warnings, most often for
    std::random_shuffle (deprecated in C++14 and removed in C++17).
    Either specify C++11 (see 'Writing R Extensions') or modernize
    the code and if needed specify C++14.  The latter has been
    supported since R 3.4.0 so the package's DESCRIPTION would need
    to include something like
    Depends: R (&gt;= 3.4)
  PACKAGE INSTALLATION on Windows:
  * R CMD INSTALL and R CMD SHLIB make use of their flag --use-LTO
    when the LTO_OPT make macro is set in file etc/${R_ARCH}/Makeconf
    or in a personal/site Makevars file.  (For details see 'Writing R
    Extensions' SS4.5.)
    This provides a valuable check on code consistency.  It does work
    with GCC 8.3 as in Rtools40, but that does not detect everything
    the CRAN checks with current GCC do.
  PACKAGE INSTALLATION on macOS:
  * The default personal library directory on builds with
  - -enable-aqua (including CRAN builds) now differs by CPU type,
    one of
    ~/Library/R/x86_64/x.y/library
    ~/Library/R/arm64/x.y/library
    This uses the CPU type R (and hence the packages) were built for,
    so when a x86_64 build of R is run under Rosetta emulation on an
    arm64 Mac, the first is used.
  UTILITIES:
  * R CMD check can now scan package functions for bogus return
    statements, which were possibly intended as return() calls (wish
    of PR#17180, patch by Sebastian Meyer). This check can be
    activated via the new environment variable
    _R_CHECK_BOGUS_RETURN_, true for --as-cran.
  * R CMD build omits tarballs and binaries of previous builds from
    the top-level package directory.  (PR#17828, patch by Sebastian
    Meyer.)
  * R CMD check now runs sanity checks on the use of LazyData, for
    example that a data directory is present and that
    LazyDataCompression is not specified without LazyData and has a
    documented value.  For packages with large LazyData databases
    without specifying LazyDataCompression, there is a reference to
    the code given in 'Writing R Extensions' SS1.1.6 to test the
    choice of compression (as in all the CRAN packages tested a
    non-default method was preferred).
  * R CMD build removes LazyData and LazyDataCompression fields from
    the DESCRIPTION file of packages without a data directory.
  ENCODING-RELATED CHANGES:
  * The parser now treats \Unnnnnnnn escapes larger than the upper
    limit for Unicode points (\U10FFFF) as an error as they cannot be
    represented by valid UTF-8.
    Where such escapes are used for outputting non-printable
    (including unassigned) characters, 6 hex digits are used (rather
    than 8 with leading zeros).  For clarity, braces are used, for
    example \U{0effff}.
  * The parser now looks for non-ASCII spaces on Solaris (as
    previously on most other OSes).
  * There are warnings (including from the parser) on the use of
    unpaired surrogate Unicode points such as \uD834.  (These cannot
    be converted to valid UTF-8.)
  * Functions nchar(), tolower(), toupper() and chartr() and those
    using regular expressions have more support for inputs with a
    marked Latin-1 encoding.
  * The character-classification functions used (by default) to
    replace the system iswxxxxx functions on Windows, macOS and AIX
    have been updated to Unicode 13.0.0.
    The character-width tables have been updated to include new
    assignments in Unicode 13.0.0.
  * The code for evaluating default (extended) regular expressions
    now uses the same character-classification functions as the rest
    of R (previously they differed on Windows, macOS and AIX).
  * There is a build-time option to replace the system's
    wide-character wctrans C function by tables shipped with R: use
    configure option --with-internal-towlower or (on Windows)
  - DUSE_RI18N_CASE in CFLAGS when building R.  This may be needed
    to allow tolower() and toupper() to work with Unicode characters
    beyond the Basic Multilingual Plane where not supported by system
    functions (e.g. on Solaris where it is the new default).
  * R is more careful when truncating UTF-8 and other multi-byte
    strings that are too long to be printed, passed to the system or
    libraries or placed into an internal buffer.  Truncation will no
    longer produce incomplete multibyte characters.
  DEPRECATED AND DEFUNCT:
  * Function plclust() from the package stats and
    package.dependencies(), pkgDepends(), getDepList(),
    installFoundDepends(), and vignetteDepends() from package tools
    are defunct.
  * Defunct functions checkNEWS() and readNEWS() from package tools
    and CRAN.packages() from utils have been removed.
  * R CMD config CXXCPP is defunct (it was deprecated in R 3.6.2).
  * parallel::detectCores() drops support for Irix (retired in 2013).
  * The LINPACK argument to chol.default(), chol2inv(),
    solve.default() and svd() has been defunct since R 3.1.0.  It was
    silently ignored up to R 4.0.3 but now gives an error.
  * Subsetting/indexing, such as ddd[*] or ddd$x on a DOTSXP
    (dot-dot-dot) object ddd has been disabled; it worked by accident
    only and was undocumented.
  BUG FIXES:
  * Many more C-level allocations (mainly by malloc and strdup) are
    checked for success with suitable alternative actions.
  * Bug fix for replayPlot(); this was turning off graphics engine
    display list recording if a recorded plot was replayed in the
    same session.  The impact of the bug became visible if resize the
    device after replay OR if attempted another savePlot() after
    replay (empty display list means empty screen on resize or empty
    saved plot).
  * R CMD check etc now warn when a package exports non-existing S4
    classes or methods, also in case of no "methods" presence.
    (Reported by Alex Bertram; reproducible example and patch by
    Sebastian Meyer in PR#16662.)
  * boxplot() now also accepts calls for labels such as ylab, the
    same as plot().  (Reported by Marius Hofert.)
  * The help page for xtabs() now correctly states that addNA is
    setting na.action = na.pass among others.  (Reported as PR#17770
    by Thomas Soeiro.)
  * The R CMD check &lt;pkg&gt; gives a longer and more comprehensible
    message when DESCRIPTION misses dependencies, e.g., in Imports:.
    (Thanks to the contributors of PR#17179.)
  * update.default() now calls the generic update() on the formula to
    work correctly for models with extended formulas.  (As reported
    and suggested by Neal Fultz in PR#17865.)
  * The horizontal position of leaves in a dendrogram is now correct
    also with center = FALSE.  (PR#14938, patch from Sebastian
    Meyer.)
  * all.equal.POSIXt() no longer warns about and subsequently ignores
    inconsistent "tzone" attributes, but describes the difference in
    its return value (PR#17277).  This check can be disabled _via_
    the new argument check.tzone = FALSE as suggested by Sebastian
    Meyer.
  * as.POSIXct() now populates the "tzone" attribute from its tz
    argument when x is a logical vector consisting entirely of NA
    values.
  * x[[2^31]] &lt;- v now works.  (Thanks to the report and patch by
    Suharto Anggono in PR#17330.)
  * In log-scale graphics, axis() ticks and label positions are now
    computed more carefully and symmetrically in their range,
    typically providing _more_ ticks, fulfilling wishes in PR#17936.
    The change really corresponds to an improved axisTicks() (package
    grDevices), potentially influencing grid and lattice, for
    example.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now correct to at
    least five digits where it was catastrophically wrong,
    previously.
  * sum(df) and similar "Summary"- and "Math"-group member functions
    now work for data frames df with logical columns, notably also of
    zero rows.  (Reported to R-devel by Martin "b706".)
  * unsplit() had trouble with tibbles due to unsound use of rep(NA,
    len)-indexing, which should use NA_integer_ (Reported to R-devel
    by Mario Annau.)
  * pnorm(x, log.p = TRUE) underflows to -Inf slightly later.
  * show(&lt;hidden S4 generic&gt;) prints better and without quotes for
    non-hidden S4 generics.
  * read.table() and relatives treated an "NA" column name as missing
    when check.names = FALSE PR#18007.
  * Parsing strings containing UTF-16 surrogate pairs such as
    "\uD834\uDD1E" works better on some (uncommon) platforms.
    sprintf("%X", utf8ToInt("\uD834\uDD1E")) should now give "1D11E"
    on all platforms.
  * identical(x,y) is no longer true for differing DOTSXP objects,
    fixing PR#18032.
  * str() now works correctly for DOTSXP and related exotics, even
    when these are doomed.
    Additionally, it no longer fails for lists with a class and
    "irregular" method definitions such that e.g. lapply(*) will
    necessarily fail, as currently for different igraph objects.
  * Too long lines in environment files (e.g. Renviron) no longer
    crash R. This limit has been increased to 100,000 bytes.
    (PR#18001.)
  * There is a further workaround for FreeType giving incorrect
    italic font faces with cairo-based graphics devices on macOS.
  * add_datalist(*, force = TRUE) (from package tools) now actually
    updates an existing data/datalist file for new content.  (Thanks
    to a report and patch by Sebastian Meyer in PR#18048.)
  * cut.Date() and cut.POSIXt() could produce an empty last interval
    for breaks = "months" or breaks = "years".  (Reported as PR#18053
    by Christopher Carbone.)
  * Detection of the encoding of 'regular' macOS locales such as
    en_US (which is UTF-8) had been broken by a macOS change:
    fortunately these are now rarely used with en_US.UTF-8 being
    preferred.
  * sub() and gsub(pattern, repl, x, *) now keep attributes of x such
    as names() also when pattern is NA (PR#18079).
  * Time differences ("difftime" objects) get a replacement and a
    rep() method to keep "units" consistent.  (Thanks to a report and
    patch by Nicolas Bennett in PR#18066.)
  * The \RdOpts macro, setting defaults for \Sexpr options in an Rd
    file, had been ineffective since R 2.12.0: it now works again.
    (Thanks to a report and patch by Sebastian Meyer in PR#18073.)
  * mclapply and pvec no longer accidentally terminate parallel
    processes started before by mcparallel or related calls in
    package parallel (PR#18078).
  * grep and other functions for evaluating (extended) regular
    expressions handle in Unicode also strings not explicitly flagged
    UTF-8, but flagged native when running in UTF-8 locale.
  * Fixed a crash in fifo implementation on Windows (PR#18031).
  * Binary mode in fifo on Windows is now properly detected from
    argument open (PR#15600, PR#18031).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1622808000">- The line %{__install} -m 755 -d %{_infodir}
  no longer works in TW or Factory.
  But without that line it works everywhere. So this instruction
  was commented out of the spec file.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1628596800">- CHANGES IN R 4.1.1:
  NEW FEATURES:
  * require(pkg, quietly = TRUE) is quieter and in particular does
    not warn if the package is not found.
  DEPRECATED AND DEFUNCT:
  * Use of ftp:// URIs should be regarded as deprecated, with
    on-going support confined to method = "libcurl" and not routinely
    tested.  (Nowadays no major browser supports them.)
  * The non-default method = "internal" is deprecated for http:// and
    ftp:// URIs for both download.file and url.
  * On Windows, method = "wininet" is deprecated for http://,
    https:// and ftp:// URIs for both download.file and url.  (A
    warning is only given for ftp://.)
    For ftp:// URIs the default method is now "libcurl" if available
    (which it is on CRAN builds).
    method = "wininet" remains the default for http:// and https://
    URIs but if libcurl is available, using method = "libcurl" is
    preferred.
  INSTALLATION:
  * make check now works also without a LaTeX installation.  (Thanks
    to Sebastian Meyer's PR#18103.)
  BUG FIXES:
  * make check-devel works again in an R build configured with
  - -without-recommended-packages.
  * qnbinom(p, size, mu) for large size/mu is correct now in a range
    of cases (PR#18095); similarly for the (size, prob)
    parametrization of the negative binomial.  Also qpois() and
    qbinom() are better and or faster for extreme cases.  The
    underlying C code has been modularized and is common to all four
    cases of discrete distributions.
  * gap.axis is now part of the axis() arguments which are passed
    from bxp(), and hence boxplot().  (Thanks to Martin Smith's
    report and suggestions in PR#18109.)
  * .First and .Last can again be set from the site profile.
  * seq.int(from, to, *) and seq.default(..) now work better in large
    range cases where from-to is infinite where the two boundaries
    are finite.
  * all.equal(x,y) now returns TRUE correctly also when several
    entries of abs(x) and abs(y) are close to .Machine$double.xmax,
    the largest finite numeric.
  * model.frame() now clears the object bit when removing the class
    attribute of a value via na.action (PR#18100).
  * charClass() now works with multi-character strings on Windows
    (PR#18104, fixed by Bill Dunlap).
  * encodeString() on Solaris now works again in Latin-1 encoding on
    characters represented differently in UTF-8.  Support for
    surrogate pairs on Solaris has been improved.
  * file.show() on Windows now works with non-ASCII path names
    representable in the current native encoding (PR#18132).
  * Embedded R on Windows can now find R home directory via the
    registry even when installed only for the current user
    (PR#18135).
  * pretty(x) with finite x now returns finite values also in the
    case where the extreme x values are close in size to the maximal
    representable number .Machine$double.xmax.
    Also, it's been tweaked for very small ranges and when a boundary
    is close (or equal) to zero; e.g., pretty(c(0,1e-317)) no longer
    has negative numbers, currently still warning about a very small
    range, and pretty(2^-(1024 - 2^-1/(c(24,10)))) is more accurate.
  * The error message for not finding vignette files when weaving has
    correct file sizes now. (Thanks to Sebastian Meyer's PR#18154.)
  * dnbinom(20, &lt;large&gt;, 1) now correctly gives 0, and similar cases
    are more accurate with underflow precaution.  (Reported by Francisco Vera Alcivar in PR#18072.)</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635163200">- repaired https://bugzilla.suse.com/show_bug.cgi?id=1191380
  (rpmacros now go to rpmmacrodir)
- minor clean-ups in spec file</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635768000">- CHANGES IN R 4.1.2:
  C-LEVEL FACILITIES:
  * The workaround in headers R.h and Rmath.h (using namespace std;)
    for the Oracle Developer Studio compiler is no longer needed now
    C++11 is required so has been removed.  A couple more usages of
    log() (which should have been std::log()) with an int argument
    are reported on Solaris.
  * The undocumented limit of 4095 bytes on messages from the
    S-compatibility macros PROBLEM and MESSAGE is now documented and
    longer messages will be silently truncated rather than
    potentially causing segfaults.
  * If the R_NO_SEGV_HANDLER environment variable is non-empty, the
    signal handler for SEGV/ILL/BUS signals (which offers recovery
    user interface) is not set. This allows more reliable debugging
    of crashes that involve the console.
  DEPRECATED AND DEFUNCT:
  * The legacy S-compatibility macros PROBLEM, MESSAGE, ERROR, WARN,
    WARNING, RECOVER, ... are deprecated and will be hidden in R
    4.2.0. R's native interface of Rf_error and Rf_warning has long
    been preferred.
  BUG FIXES:
  * .mapply(F, dots, .) no longer segfaults when dots is not a list
    and uses match.fun(F) as always documented; reported by Andrew
    Simmons in PR#18164.
  * hist(&lt;Date&gt;, ...) and hist(&lt;POSIXt&gt;, ...)  no longer pass
    arguments for rect() (such as col and density) to axis().
    (Thanks to Sebastian Meyer's PR#18171.)
  * \Sexpr{ch} now preserves Encoding(ch). (Thanks to report and
    patch by Jeroen Ooms in PR#18152.)
  * Setting the RNG to "Marsaglia-Multicarry" e.g., by RNGkind(), now
    warns in more places, thanks to Andr'e Gillibert's report and
    patch in PR#18168.
  * gray(numeric(), alpha=1/2) no longer segfaults, fixing PR#18183,
    reported by Till Krenz.
  * Fixed dnbinom(x, size=&lt;very_small&gt;, .., log=TRUE) regression,
    reported by Martin Morgan.
  * as.Date.POSIXlt(x) now keeps names(x), thanks to Davis Vaughan's
    report and patch in PR#18188.
  * model.response() now strips an "AsIs" class typically, thanks to
    Duncan Murdoch's report and other discussants in PR#18190.
  * try() is considerably faster in case of an error and long call,
    as e.g., from some do.call().  Thanks to Alexander Kaever's
    suggestion posted to R-devel.
  * qqline(y = &lt;object&gt;) such as y=I(.), now works, see also
    PR#18190.
  * Non-integer mgp par() settings are now handled correctly in
    axis() and mtext(), thanks to Mikael Jagan and Duncan Murdoch's
    report and suggestion in PR#18194.
  * formatC(x) returns length zero character() now, rather than ""
    when x is of length zero, as documented, thanks to Davis
    Vaughan's post to R-devel.
  * removeSource(fn) now retains (other) attributes(fn).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1647000000">- CHANGES IN R 4.1.3:
  NEW FEATURES:
  * The default version of Bioconductor has been changed to 3.14.
    (This is used by setRepositories and the menus in GUIs.)
  UTILITIES:
  * R CMD check --as-cran has a workaround for a bug in versions of
    file up to at least 5.41 which mis-identify DBF files last
    changed in 2022 as executables.
  C-LEVEL FACILITIES:
  * The legacy S-compatibility macros SINGLE_* in R_ext/Constants.h
    (included by R.h) are deprecated and will be removed in R 4.2.0.
  BUG FIXES:
  * Initialization of self-starting nls() models with initialization
    functions following the pre-R-4.1.0 API (without the ...
    argument) works again for now, with a deprecation warning.
  * Fixed quoting of ~autodetect~ in Java setting defaults to avoid
    inadvertent user lookup due to leading ~, reported in PR#18231 by
    Harold Gutch.
  * substr(., start, stop) &lt;- v now treats _negative_ stop values
    correctly.  Reported with a patch in PR#18228 by Brodie Gaslam.
  * Subscripting an array x without dimnames by a
    length(dim(x))-column character matrix gave "random" non-sense,
    now an error; reported in PR#18244 by Mikael Jagan.
  * ...names() now matches names(list(...)) closely, fixing PR#18247.
  * all.equal(*, scale = s) now works as intended when length(s) &gt; 1,
    partly thanks to Michael Chirico's PR#18272.
  * print(x) for long vectors x now also works for named atomic
    vectors or lists and prints the correct number when reaching the
    getOption("max.print") limit; partly thanks to a report and
    proposal by Hugh Parsonage to the R-devel list.
  * all.equal(&lt;selfStart&gt;, *) no longer signals a deprecation
    warning.
  * reformulate(*, response=r) gives a helpful error message now when
    length(r) &gt; 1, thanks to Bill Dunlap's PR#18281.
  * Modifying globalCallingHandlers inside withCallingHandlers() now
    works or fails correctly, thanks to Henrik Bengtsson's PR#18257.
  * hist(&lt;Date&gt;, breaks = "days") and hist(&lt;POSIXt&gt;, breaks = "secs")
    no longer fail for inputs of length 1.
  * qbeta(.001, .9, .009) and similar cases now converge correctly
    thanks to Ben Bolker's report in PR#17746.
  * window(x, start, end) no longer wrongly signals "'start' cannot
    be after 'end'", fixing PR#17527 and PR#18291.
  * data() now checks that its (rarely used) list argument is a
    character vector - a couple of packages passed other types and
    gave incorrect results.
  * which() now checks its arr.ind argument is TRUE rather coercing
    to logical and taking the first element - which gave incorrect
    results in package code.
  * model.weights() and model.offset() more carefully extract their
    model components, thanks to Ben Bolker and Tim Taylor's R-devel
    post.
  * list.files(recursive = TRUE) now shows all broken symlinks
    (previously, some of them may have been omitted, PR#18296).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1650628800">- CHANGES IN R 4.2.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * The formula method of aggregate() now matches the generic in
    naming its first argument x (resolving PR#18299 by Thomas
    Soeiro).
    This means that calling aggregate() with a formula as a named
    first argument requires name formula in earlier versions of R and
    name x now, so portable code should not name the argument (code
    in many packages did).
  * Calling &amp;&amp; or || with either argument of length greater than one
    now gives a warning (which it is intended will become an error).
  * Calling if() or while() with a condition of length greater than
    one gives an error rather than a warning.  Consequently,
    environment variable _R_CHECK_LENGTH_1_CONDITION_ no longer has
    any effect.
  * Windows users should consult the WINDOWS section below for some
    profound changes including
  * Support for 32-bit builds has been dropped.
  * UTF-8 locales are used where available.
  * The default locations for the R installation and personal
    library folder have been changed.
    Thanks to Tomas Kalibera for months of work on the Windows port
    for this release.
  NEW FEATURES:
  * matrix(x, n, m) now warns in more cases where length(x) differs
    from n * m, as suggested by Abby Spurdle and Wolfgang Huber in
    Feb 2021 on the R-devel mailing list.
    This warning can be turned into an error by setting environment
    variable _R_CHECK_MATRIX_DATA_ to TRUE: R CMD check --as-cran
    does so unless it is already set.
  * Function file_test() in package utils gains tests for symlinks,
    readability and writability.
  * capabilities("libxml") is now false.
    The description of capabilities("http/ftp") now reflects that it
    refers to the default method, no longer the internal one.
  * simplify2array() gains an except argument for controlling the
    exceptions used by sapply().
  * Environment variables R_LIBS_USER and R_LIBS_SITE are both now
    set to the R system default if unset or empty, and can be set to
    NULL to indicate an empty list of user or site library
    directories.
  * The warning for axis()(-like) calls in cases of relatively small
    ranges (typically in log-scale situations) is slightly improved
    _and_ suppressed from explicit calls to .axisPars() as has always
    been the intention.
  * The contrasts setter function `contrasts&lt;-` gains an explicit
    default how.many = NULL rather than just using missing(how.many).
  * grid.pretty() gains a new optional argument n = 5.
  * There is a new function .pretty() with option bounds as a
    technical-utility version of pretty().  It and pretty() gain a
    new argument f.min with a better than back-compatible default.
  * Function grDevices::axisTicks() and related functions such as
    graphics::axis() work better, notably for the log scale; partly
    because of the pretty() improvements, but also because care is
    taken e.g., when ylim is finite but diff(ylim) is infinite.
  * nclass.FD() gains a digits option.
  * The R Mathlib internal C function bd0() (called indirectly from a
    dozen probability density and distribution functions such as
    dpois(), dbinom(), dgamma(), pgamma() _etc_) has been
    complemented by a more sophisticated and (mostly) more accurate C
    function ebd0(), currently called only by internal dpois_raw()
    improving accuracy for R level dpois() and potentially others
    calling it such as dnbinom(), dgamma() or pgamma().  (Thanks to
    Morten Welinder's PR#15628.)
  * write.ftable() gains sep = " " argument as suggested by Thomas
    Soeiro.
  * The names of the locale categories supported by R's
    Sys.getlocale() and Sys.setlocale() are now provided by variable
    .LC.categories in the base namespace.
  * The Date and POSIXt methods for hist() and the histogram method
    for plot() now also use the new default col = "lightgray" in
    consistency with the corresponding change to hist()'s default for
    R 4.0.0.
  * hist.default() gains new fuzz argument, and the histogram plot
    method no longer uses fractional axis ticks when displaying
    counts ("Frequency").
  * mapply() and hence Map() now also obey the "max-or-0-if-any"
    recycling rule, such that, e.g., Map(`+`, 1:3, 1[0]) is valid
    now.
  * as.character(&lt;obj&gt;) for "hexmode" or "octmode" objects now
    fulfils the important basic rule as.character(x)[j] ===
    as.character(x[j]).
  * The set utility functions, notably intersect() have been tweaked
    to be more consistent and symmetric in their two set arguments,
    also preserving a common mode.
  * substr(ch, start,end) &lt;- new now e.g., preserves names(ch); ditto
    for substring(), thanks to a patch from Brodie Gaslam.
  * plot(&lt;lm&gt;) gains a extend.ylim.f argument, in partial response to
    PR#15285; further PR#17784 is fixed thanks to several
    contributors and a patch by Elin Waring.  The Cook's dist
    contours get customizable via cook.col and cook.lty with a
    different default color and their legend is nicer by default and
    customizable via cook.legendChanges.
  * Attempting to subset an object that is not subsettable now
    signals an error of class notSubsettableError. The
    non-subsettable object is contained in the object field of the
    error condition.
  * Subscript-out-of-bounds errors are now signaled as errors of
    class subscriptOutOfBoundsError.
  * Stack-overflow errors are now signaled as errors inheriting from
    class stackOverflowError. See ?stackOverflowError for more
    details.
  * New partly experimental Sys.setLanguage() utility, solving the
    main problem of PR#18055.
  * gettext() and gettextf() get a new option trim = TRUE which when
    set to false allows translations for strings such as "Execution
    halted\n" typical for C code.
  * An experimental implementation of hash tables is now available.
    See ?hashtab for more details.
  * identical() gains a extptr.as.ref argument for requesting that
    external pointer objects be compared as reference objects.
  * reorder() gets an argument decreasing which it passes to sort()
    for level creation; based on the wish and patch by Thomas Soeiro
    in PR#18243.
  * as.vector() gains a data.frame method which returns a simple
    named list, also clearing a long standing 'FIXME' to enable
    as.vector(&lt;data.frame&gt;, mode="list").  This breaks code relying
    on as.vector(&lt;data.frame&gt;) to return the unchanged data frame.
  * legend() is now vectorized for arguments cex, x.intersp, and
    text.width.  The latter can now also be specified as a vector
    (one element for each column of the legend) or as NA for
    computing a proper column wise maximum value of strwidth(legend).
    The argument y.intersp can be specified as a vector with one
    entry for each row of the legend.
    legend() also gains new arguments title.cex and title.font.
    Thanks to Swetlana Herbrandt.
  * Deparsing no longer remaps attribute names dim, dimnames, levels,
    names and tsp to historical S-compatible names (which structure()
    maps back).
  * sample() and sample.int() have additional sanity checks on their
    size and n arguments.
    all.equal.numeric() gains a sanity check on its tolerance
    argument - calling all.equal(a, b, c) for three numeric vectors
    is a surprisingly common error.
    mean(na.rm =), rank(na.last =), barplot(legend.text =),
    boxplot(), contour(drawlabels =), polygon(border =) and
    methods::is(class2 =) have more robust sanity checks on their
    arguments.
    R CMD Rd2pdf (used by R CMD check) has a more robust sanity check
    on the format of \alias{} commands.
  * psigamma(x, deriv) for negative x now also works for deriv = 4
    and 5; their underlying C level dpsifn() is documented in
    'Writing R Extensions'.
  * The HTML help system now uses HTML5 (wish of PR#18149).
  * ks.test() now provides exact p-values also with ties and MC
    p-values in the two-sample (Smirnov) case.  By Torsten Hothorn.
  * ks.test() gains a formula interface, with y ~ 1 for the
    one-sample (Kolmogorov) test and y ~ group for the two-sample
    (Smirnov) test.  Contributed by Torsten Hothorn.
  * The return value from ks.test() now has class c("ks.test",
    "htest") - packages using try() need to take care to use
    inherits() and not == on the class.
  * New functions psmirnov(), qsmirnov() and rsmirnov() in package
    stats implementing the asymptotic and exact distributions of the
    two-sample Smirnov statistic.
  * iconv() now allows sub = "c99" to use C99-style escapes for UTF-8
    inputs which cannot be converted to encoding to.
  * In a forward pipe |&gt; expression it is now possible to use a named
    argument with the placeholder _ in the rhs call to specify where
    the lhs is to be inserted.  The placeholder can only appear once
    on the rhs.
  * The included LAPACK sources have been updated to version 3.10.0,
    except for the four Fortran 77 routines which 3.10.0 has
    re-implemented in Fortran 90 (where the older versions have been
    retained as the R build process does not support Fortran 90).
  * path.expand() and most other uses of tilde expansion now warn if
    a path would be too long if expanded.  (An exception is
    file.exists(), which silently returns false.)
  * trunc(&lt;Date&gt;, *) now supports units = "months" or "years" for
    consistency with the POSIXt method, thanks to Dirk Eddelbuettel's
    proposal in PR#18099.
  * list2DF() now checks that its arguments are of the same length,
    rather than use recycling.
  * The HTML help system has several new features: LaTeX-like math
    can be typeset using either KaTeX or MathJax, usage and example
    code is highlighted using Prism, and for dynamic help the output
    of examples and demos can be shown within the browser if the
    knitr package is installed. These features can be disabled by
    setting the environment variable _R_HELP_ENABLE_ENHANCED_HTML_ to
    a false value.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 15
    and so packages that provide graphics devices should be
    reinstalled.
  * The grid package now allows the user to specify a "vector" of
    pattern fills.  The fill argument to gpar() accepts a list of
    gradients and/or patterns and the functions linearGradient(),
    radialGradient(), and pattern() have a new group argument.
    Points grobs (data symbols) can now also have a pattern fill.
    The grobCoords() function now returns a more informative and
    complex result.
  * The grid package has new functions for drawing isolated groups:
    grid.group(), grid.define(), and grid.use().  These functions add
    compositing operators and affine transformations to R's graphics
    capabilities.
    The grid package also has new functions for stroking and filling
    paths: grid.stroke(), grid.fill(), and grid.fillStroke().
    A new function as.path() allows the user to specify the fill rule
    for a path that is to be used for clipping, stroking, or filling;
    available options are "winding" and "evenodd".  A new function
    as.mask() allows the user to specify the type of a mask;
    available options are "alpha" and "luminance".
    These new features are only supported so far (at most) on the
    Cairo-based graphics devices and on the pdf() device.
  * dev.capabilities() reports on device support for the new
    features.
  * par() now warns about unnamed non-character arguments to prevent
    misuse such as {usr &lt;- par("usr"); par(usr)}.
  INSTALLATION:
  * Facilities for accessing ftp:// sites are no longer tested
    (except _pro tem_ for curlGetHeaders()) as modern browsers have
    removed support.
  * R can now be built with DEFS = -DSTRICT_R_HEADERS .
  PACKAGE INSTALLATION:
  * R CMD INSTALL no longer tangles vignettes. This completes an R
    CMD build change in R 3.0.0 and affects packages built before R
    3.0.2. Such packages should be re-made with R CMD build to have
    the tangled R code of vignettes shipped with the tarball.
  * USE_FC_LEN_T will become the default: this uses the correct
    prototypes for Fortran BLAS/LAPACK routines called from C/C++,
    and requires adjustment of most such calls - see 'Writing R
    Extensions' SS6.6.2.  (This has been supported since R 3.6.2.)
  * Package installation speed for packages installed with
    keep.source has been improved. This resolve the issue reported by
    Ofek Shilon in PR#18236.
  UTILITIES:
  * R CMD check can optionally report files/directories left behind
    in home, /tmp (even though TMPDIR is set) and other directories.
    See the "R Internals" manual for details.
  * R CMD check now reports byte-compilation errors during
    installation.  These are not usually fatal but may result in
    parts of the package not being byte-compiled.
  * _R_CHECK_DEPENDS_ONLY_ can be applied selectively to examples,
    tests and/or vignettes in R CMD check: see the "R Internals"
    manual.
  * _R_CHECK_SRC_MINUS_W_IMPLICIT_ now defaults to true: recent
    versions of Apple clang on macOS have made implicit function
    declarations in C into a compilation error.
  * R CMD check --as-cran makes use of the environment variable
    AUTORECONF.  See the "R Internals" manual SS8 for further details.
  * R CMD check --use-valgrind also uses valgrind when re-building
    vignettes as some non-Sweave vignettes unhelpfully comment out
    all their code when R CMD check runs vignettes.
  * Errors in re-building vignettes (unless there are LaTeX errors)
    are reported by R CMD check as ERROR rather than WARNING when
    running vignettes has been skipped (as it frequently is in CRAN
    checks and by --as-cran).
  * R CMD Rd2pdf gains a --quiet option that is used by R CMD build
    when building the PDF package manual.
  * R CMD Rd2pdf now always runs LaTeX in batch mode, consistent with
    Texinfo &gt;= 6.7. The --batch option is ignored.
  * R CMD build and R CMD check now include the Rd file name and line
    numbers in the error message of an \Sexpr evaluation failure.
  * For packages using the \doi Rd macro (now an install-time \Sexpr)
    but no other dynamic Rd content, R CMD build now produces a
    smaller tarball and is considerably faster - skipping temporary
    package installation.
  C-LEVEL FACILITIES:
  * The non-API header R_ext/R-ftp-http.h is no longer provided, as
    the entry points it covered are now all defunct.
  * A number of non-API declarations and macro definitions have been
    moved from the installed header Rinternals.h to the internal
    header Defn.h. Packages that only use entry points and
    definitions documented to be part of the API as specified in
    'Writing R Extensions' SS6 should not be affected.
  * The macro USE_RINTERNALS no longer has any effect when compiling
    package code.  Packages which also use R_NO_REMAP will need to
    ensure that the remapped names are used for calls to API
    functions that were formerly also made available as macros.
  * The deprecated legacy S-compatibility macros PROBLEM, MESSAGE,
    ERROR, WARN, WARNING, RECOVER, ... are no longer defined in
    R_exts/RS.h (included by R.h).  Replace these by calls to
    Rf_error and Rf_warning (defined in header R_ext/Error.h included
    by R.h).
    Header R_ext/RS.h no longer includes R_ext/Error.h.
  * Header R_ext/Constants.h (included by R.h) when included from C++
    now includes the C++ header cfloat rather than the C header
    float.h (now possible as C++11 is required).
  * The legacy S-compatibility macros DOUBLE_* in R_ext/Constants.h
    (included by R.h) are deprecated.
  * The deprecated S-compatibility macros SINGLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * R_Calloc, R_Free and R_Realloc are preferred to their unprefixed
    forms and error messages now use the prefix. These forms were
    introduced in R 3.4.0 and are available even when
    STRICT_R_HEADERS is defined.
  * rmultinom has been documented in 'Writing R Extensions' SS6 so is
    now part of the R API.
  * Similarly, Rtanpi, called from R level tanpi() is now part of the
    R API.
  * The long-deprecated, undocumented and non-API entry point call_R
    is no longer declared in R_ext/RS.h (included by R.h).
  * The header S.h which has been unsupported since Jan 2016 has been
    removed.  Use R.h instead.
  DEPRECATED AND DEFUNCT:
  * The (non-default and deprecated) method = "internal" for
    download.file() and url() no longer supports http:// nor ftp://
    URIs.  (It is used only for file:// URIs.)
    On Windows, download.file(method = "wininet") no longer supports
    ftp:// URIs.  (It is no longer the default method, which is
    "libcurl" and does.)
    On Windows, the deprecated method = "wininet" now gives a warning
    for http:// and https:// URIs for both download.file() and url().
    (It is no longer the default method.)
  * On Windows, the command-line option --max-mem-size and
    environment variable R_MAX_MEM_SIZE are defunct.  The memory
    allocation limit was important for 32-bit builds, but these are
    no longer supported.
  * default.stringsAsFactors() is now formally deprecated, where that
    was only mentioned on its regular help page, previously.  So it
    now gives a warning if called.
  * unix.time() is defunct now; it had been deprecated since R 3.4.0.
  BUG FIXES:
  * Setting digits = 0 in format(), print.default() (and hence
    typically print()) or options() is again invalid.  Its behaviour
    was platform-dependent, and it is unclear what "zero significant
    digits" should mean (PR#18098).
  * Messages from C code in the cairo section of package grDevices
    are now also offered for translation, thanks to Michael Chirico's
    PR#18123.
  * mean(x) with finite x now is finite also without "long.double"
    capability.
  * R CMD Rd2pdf no longer leaves an empty build directory behind
    when it aborts due to an already existing output file.  (Thanks
    to Sebastian Meyer's PR#18141.)
  * density(x, weights = w, na.rm = TRUE) when anyNA(x) is true, now
    removes weights "in parallel" to x, fixing PR#18151, reported by
    Matthias Gondan.  Additionally, it gets a subdensity option.
  * Conversion of \Sexpr[]{&lt;expR&gt;} to LaTeX or HTML no longer
    produces long blocks of empty lines when &lt;expR&gt; itself contains
    several lines all producing empty output.  Thanks to a report and
    patch by Ivan Krylov posted to R-devel.
  * R CMD build no longer fails if a package vignette uses child
    documents and inst/doc exists.  (Thanks to Sebastian Meyer's
    PR#18156.)
  * When an R documentation ('help' source) file man/foo.Rd in a
    package has \donttest{..} examples with a syntax error, it is now
    signalled as ERROR and with correct line numbers relating to the
  * -Ex.R file, thanks to Duncan Murdoch and Sebastian Meyer's
    reports and patch proposals in PR#17501.
  * Improved determination of the correct translation domain in
    non-base packages, addressing the combination of PR#18092 and
    PR#17998 (#c6) with reports and _augmented_ patch #2904 by
    Suharto Anggono.
    Note that "R-base" is no longer the default domain e.g., for
    top-level calls to gettext(); rather translation needs explicit
    domain = * specification in such cases.
  * identical(attrib.as.set=FALSE) now works correctly with data
    frames with default row names (Thanks to Charlie Gao's PR#18179).
  * txtProgressBar() now enforces a non-zero width for argument char,
    without which no progress can be visible.
  * dimnames(table(d)) is more consistent in the case where d is a
    list with a single component, thanks to Thomas Soeiro's report to
    R-devel.
    Further, table(d1, d2) now gives an error when d1 and d2 are data
    frames as suggested by Thomas in PR#18224.
  * Fix for drawing semi-transparent lines and fills on the native
    Windows graphics device (PR#18219 and PR#16694).  Thanks to Nick
    Ray for helpful diagnosis on Bugzilla.
  * The deparser now wraps sub-expressions such as if(A) ..  with
    parentheses when needed; thanks to Duncan Murdoch's PR#18232 and
    Lionel Henry's patches there.
  * remove.packages() no longer tries to uninstall Priority: base
    packages, thanks to a report and suggestions by Colin Fay in
    PR#18227.
  * win.metafile() now has xpinch and ypinch arguments so that the
    user can override Windows' (potentially wrong) guess at device
    dimensions.
  * x[i] and x[[i]] for non-integer i should now behave in all cases
    as always documented: the index used is equivalent to
    as.integer(i) unless that would overflow where trunc(i) is used
    instead; thanks to Suharto Anggono's report and patch proposals
    in PR#17977.
  * asOneSidedFormula() now associates the resulting formula with the
    global environment rather than the evaluation environment created
    for the call.
  * &lt;bibentry&gt;$name now matches the field name case-insensitively,
    consistent with bibentry() creation and the replacement method.
  * cbind() failed to detect some length mismatches with a mixture of
    time-series and non-time-series inputs.
  * The default LaTeX style file Sweave.sty used by the RweaveLatex
    driver no longer loads the obsolete ae package; thanks to a
    report by Thomas Soeiro in PR#18271.  Furthermore, it now skips
    \usepackage[T1]{fontenc} for engines other than pdfTeX (if
    detected) or if the new [nofontenc] option is used.
  * smooth.spline() now stores its logical cv argument more safely,
    fixing a rare bug when printing, and also stores n.
  * smooth.spline(x,y,*) now computes the cv.crit statistic
    correctly, also when is.unsorted(x), fixing PR#18294.
  * The data.frame method of rbind() now warns when binding
    not-wholly-recycling vectors, by analogy to the default method
    (for matrices).
  * setAs() finds the correct class for name to when multiple
    packages define a class with that name. Thanks to Gabor Csardi
    for the report.
  * Fix for detaching a package when two classes of the same name are
    present in method signatures for the same generic. Thanks to
    Gabor Csardi for the report.
  * match.arg("", c("", "a", "B")) gives a better error message, in
    part from PR#17959, thanks to Elin Waring.
  * R CMD Sweave --clean no longer removes pre-existing files or
    subdirectories (PR#18242).
  * The quartz() device no longer splits polylines into subpaths.
    That has caused narrowly-spaced lines with many points to always
    look solid even when dashed line type was used due to dash phase
    restarts.
  * Deparsing constructs such as quote(1 + `!`(2) + 3) works again as
    before R 3.5.0, thanks to the report and patch in PR#18284 by
    Suharto Anggono.
  * as.list(f) for a factor f now keeps names(f), fixing PR#18309.
  * qbeta(.001, .9, .009) and analogous qf() calls now return a
    correct value instead of NaN or wrongly 1, all with a warning;
    thanks to the report by Ludger Goeminne in PR#18302.
  * plot.lm() failed to produce the plot of residuals vs.  factor
    levels (i.e., which=5 when leverages are constant) for models
    with character predictors (PR#17840).
  * interaction.plot(..., xtick = TRUE) misplaced the x-axis line
    (PR#18305).
  * Not strictly fixing a bug, format()ing and print()ing of
    non-finite Date and POSIXt values NaN and +/-Inf no longer show
    as NA but the respective string, e.g., Inf, for consistency with
    numeric vector's behaviour, fulfilling the wish of PR#18308.
  * R CMD check no longer runs test scripts generated from
    corresponding .Rin files twice and now signals an ERROR if
    processing an .Rin script fails.
  * tools::Rd2txt() used for plain-text help pages now renders \hrefs
    (if tools::Rd2txt_options(showURLs = TRUE)) and \urls with
    percent-encoding and standards-compliant delimiting style (angle
    brackets and no URL: prefix).  \email is now rendered with a
    mailto: prefix.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1655985600">- CHANGES IN R 4.2.1:
  NEW FEATURES:
  * New function utils::findCRANmirror() to find out if a CRAN mirror
    has been selected, otherwise fallback to the main site.  This
    behaves in the same way as tools::CRAN_package_db() and is
    intended for packages wishing to access CRAN for purposes other
    than installing packages.
    The need for this was shown by a day when the main CRAN website
    was offline and a dozen or so packages which had its URL
    hardcoded failed their checks.
  INSTALLATION on a UNIX-ALIKE:
  * The libraries searched for by --with-blas (without a value) now
    include BLIS (after OpenBLAS but before ATLAS).  And on macOS,
    the Accelerate framework (after ATLAS).  (This is patterned after
    the AX_BLAS macro from the Autoconf Archive.)
  * The included LAPACK sources have been updated to 3.10.1.
  UTILITIES:
  * The (full path to) the command tidy to be used for HTML
    validation can be set by environment variable R_TIDYCMD.
  * Setting environment variable _R_CHECK_RD_VALIDATE_RD2HTML_ to a
    false value will override R CMD check --as-cran and turn off HTML
    validation.  This provides a way to circumvent a problematic
    tidy.
    The 2006 version that ships with macOS is always skipped.
  C-LEVEL FACILITIES:
  * The undocumented legacy declarations of Sint, Sfloat, SINT_MAX
    and SINT_MIN in header R.h are deprecated.
  BUG FIXES:
  * fisher.test(d) no longer segfaults for "large" d; fixing PR#18336
    by preventing/detecting an integer overflow reliably.
  * tar(., files=*) now produces correctly the warning about invalid
    uid or gid of files, fixing PR#18344, reported by Martin Morgan.
  * tk_choose.files() with multi = FALSE misbehaved on paths
    containing spaces (PR#18334) (regression introduced in R 4.0.0).
  * sort(x, partial = ind, *) now works correctly notably for the
    non-default na.last = FALSE or TRUE, fixing PR#18335 reported by
    James Edwards.
  * Environment variable _R_CHECK_XREFS_REPOSITORIES_ is only used
    for checking .Rd cross-references in R CMD check (as documented)
    and not for other uses looking for a CRAN mirror.
  * The search for a CRAN mirror when checking packages now uses
    getOption("repos") if that specifies a CRAN mirror, even when it
    does not also specify all three Bioconductor repositories (as was
    previously required).
  * The HTML code generated by tools::Rd2HTML() has been improved to
    pass tidy 5.8.0.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1667217600">- CHANGES IN R 4.2.2:
  NEW FEATURES:
  * tools::Rdiff(useDiff = TRUE) checks for the presence of an
    external diff command and switches to useDiff = FALSE if none is
    found.  This allows R CMD Rdiff to always work.
  * On Windows, environment variable R_LIBCURL_SSL_REVOKE_BEST_EFFORT
    can be used to switch to only 'best-effort' SSL certificate
    revocation checks with the default "libcurl" download method.
    This reduces security, but may be needed for downloads to work
    with MITM proxies (PR#18379).
  * (macOS) The run-time check for libraries from XQuartz for X11 and
    Tcl/Tk no longer uses otool from the Apple Developer Tools
    (PR#18400).
  * The LaTeX style for producing the PDF manuals, Rd.sty, now loads
    the standard amsmath, amsfonts and amssymb packages for greater
    coverage of math commands in the Rd \eqn and \deqn macros.  The
    \mathscr LaTeX command is also provided (via the mathrsfs
    package, if available, or the amsfonts bundle otherwise),
    fulfilling the wish of PR#18398.
  * (Windows) The default format of readClipboard() and
    writeClipboard() has been changed to 13 (CF_UNICODETEXT).
  INSTALLATION on a UNIX-ALIKE:
  * The PDF manuals (if built) can be compacted by the new target
    make compact-pdf (at the top level or in directory doc/manual).
  * There is now configure support for LLVM clang 15 on Linux, which
    defaults to position-independent (PIE) executables whereas
    gfortran does not.
  * Many small changes to ease compilation (and suppress warnings)
    with LLVM clang 15.
  BUG FIXES:
  * Rscript -e would fail if stdin were closed (Reported by Henrik
    Bengtsson.)
  * qt(*, log.p=TRUE) in outer tails no longer produces NaN in its
    final steps, thus fixing PR#18360.
  * tools::Rd2latex() now escapes hashes and ampersands when writing
    URLs, fixing LaTeX errors with such URLs in \tabular.
  * When isGeneric(f, fdef=*) is used with mismatching names, the
    warning is better understandable; reported (with fix) in PR#18370
    by Gabe Becker.
  * poly(x, n) now works again (and is now documented) when x is a
    "Date" or "POSIXct" object, or of another class while fulfilling
    mode(x) == "numeric".  This also enables poly(x, *, raw=TRUE) for
    such variables.  Reported by Michael Chirico to R-devel.
  * write.table(), write.csv() and write.csv2() restore their
    numerical precision (internal equivalent of digits = 15) after an
    interrupt (PR#18384).
  * One can now read also byte FF from a clipboard connection
    (PR#18385).
  * source("") and source(character()) now give more helpful error
    messages.
  * R CMD check --as-cran set _R_CHECK_TIMINGS_ too late to have the
    intended effect.
  * as.POSIXlt(x) now also works with very large dates x, fixing
    PR#18401 reported by Hannes M"uhleisen.
  * Files can now be extracted even from very large zip archives
    (PR#18390, thanks to Martin Jakt).
  * Non-finite objects of class "POSIXlt" are now correctly coerced
    to classes "Date" and "POSIXct"; following up on the extension to
    format() them correctly.
  * Added methods for is.finite(), is.infinite() and is.nan() for
    "POSIXlt" date-time objects.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1678881600">- CHANGES IN R 4.2.3:
  C-LEVEL FACILITIES:
  * The definition of DL_FUNC in R_ext/Rdynload.h has been changed to
    be fully C-compliant.  This means that functions loaded _via_ for
    example R_GetCCallable need to be cast to an appropriate type if
    they have any arguments.
  * .Machine has a new element sizeof.time_t to identify old systems
    with a 32-bit type and hence a limited range of date-times (and
    limited support for dates millions of years from present).
  PACKAGE INSTALLATION:
  * (Windows) The default C++ standard had accidentally been left at
    C++11 when it was changed to C++14 on Unix.
  BUG FIXES:
  * As "POSIXlt" objects may be "partially filled" and their list
    components meant to be recycled, length() now is the length of
    the longest component.
  * as.POSIXlt.Date() could underflow for dates in the far past (more
    than half a million years BCE).
  * as.Date.POSIXlt(x) would return "1970-01-01" instead of NA in R
    4.2.2, e.g., for
    x &lt;- as.POSIXlt(c("2019-01-30","2001-1-1"))
    x$mon &lt;- c(0L, NA); as.Date(x)
  * R CMD check failed to apply enabled _R_CHECK_SUGGESTS_ONLY_ to
    examples and vignettes (regression in R 4.2.0).
  * R CMD check did not re-build vignettes in separate processes by
    default (regression in R 4.2.0).
  * Running examples from HTML documentation now restores previous
    knitr settings and options (PR#18420).
  * Quartz: fonts are now located using Core Graphics API instead of
    deprecated ATS which is no longer supported in the macOS 13 SDK
    (PR#18426).  This also addresses an issue where the currently
    used font in the Quartz device context was not correctly
    retained.
  * (Windows) Math symbols in text drawing functions are again
    rendered correctly (PR#18440).  This fixes a regression in R
    4.2.1 caused by a fix in PR#18382 which uncovered an issue in
    GraphApp due to which the symbol charset was not used with TT
    Symbol font face.
  * (Windows) Installing a package with a src/Makefile.{win,ucrt}
    file includes ~/.R/Makevars.win64 in the search for user
    makevars, as documented in "R Installation and Administration"
    and done for packages with a src/Makevars.{win,ucrt} file.
  * format(&lt;POSIXlt_w/_unbalanced_sec&gt;, "....%OS&lt;n&gt;") with n &gt; 0 no
    longer accidentally uses the unbalanced seconds, thanks to
    Suharto Anggono's report (including patch) in PR#18448.
  * solve.default(a, b) works around issues with some versions of
    LAPACK when a contains NA or NaN values.
  * When UseMethod() cannot dispatch, it no longer segfaults
    producing the error message in case of a long class(), thanks to
    Joris Vankerschaver's report (including patch) in PR#18447.
  * When example(foo, ..) produces graphics on an interactive device
    it needs to open itself, it now leaves devAskNewPage() unchanged
    even when it was FALSE, thus fixing a 14 years old '&lt;FIXME&gt;'.
  * packageDescription() again catches errors from encoding
    conversions. This also fixes broken packageVersion() in C locale
    on systems where iconv does not support transliteration.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1681128000">- add patch to build with libcurl &gt;= 8</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1682078400">- CHANGES IN R 4.3.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Calling &amp;&amp; or || with LHS or (if evaluated) RHS of length greater
    than one is now always an error, with a report of the form
    'length = 4' in coercion to 'logical(1)'
    Environment variable _R_CHECK_LENGTH_1_LOGIC2_ no longer has any
    effect.
  NEW FEATURES:
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.10.1.  (This caused some platform-dependent
    changes to package check output.)  And then to the sources from
    LAPACK version 3.11.0 (with changes only to double complex
    subroutines).
  * The included LAPACK sources have been updated to include the four
    Fortran 90 routines rather than their Fortran 77 predecessors.
    This may give some different signs in SVDs or
    eigendecompositions..  (This completes the transition to LAPACK
    3.10.x begun in R 4.2.0.)
  * The LAPACK sources have been updated to version 3.11.0.  (No new
    subroutines have been added, so this almost entirely bug fixes:
    Those fixes do affect some computations with NaNs, including R's
    NA.)
  * The parser now signals _classed_ errors, notably in case of the
    pipe operator |&gt;.  The error object and message now give line and
    column numbers, mostly as proposed and provided by Duncan Murdoch
    in PR#18328.
  * toeplitz() is now generalized for asymmetric cases, with a
    toeplitz2() variant.
  * xy.coords() and xyz.coords() and consequently, e.g., plot(x,y,
    log = "y") now signal a _classed_ warning about negative values
    of y (where log(.) is NA).  Such a warning can be specifically
    suppressed or caught otherwise.
  * Regular expression functions now check more thoroughly whether
    their inputs are valid strings (in their encoding, e.g. in
    UTF-8).
  * The performance of grep(), sub(), gsub() and strsplit() has been
    improved, particularly with perl = TRUE and fixed = TRUE.  Use of
    useBytes = TRUE for performance reasons should no longer be
    needed and is discouraged: it may lead to incorrect results.
  * apropos() gains an argument dot_internals which is used by the
    completion (help(rcompgen)) engine to also see base internals
    such as .POSIXct().
  * Support in tools::Rdiff() for comparing uncompressed PDF files is
    further reduced - see its help page.
  * qqplot(x, y, ...) gains conf.level and conf.args arguments for
    computing and plotting a confidence band for the treatment
    function transforming the distribution of x into the distribution
    of y (Switzer, 1976, _Biometrika_). Contributed by Torsten
    Hothorn.
  * Performance of package_dependencies() has been improved for cases
    when the number of dependencies is large.
  * Strings newly created by gsub(), sub() and strsplit(), when any
    of the inputs is marked as "bytes", are also marked as "bytes".
    This reduces the risk of creating invalid strings and accidental
    substitution of bytes deemed invalid.
  * Support for readLines(encoding = "bytes") has been added to allow
    processing special text files byte-by-byte, without creating
    invalid strings.
  * iconv(from = "") now takes into account any declared encoding of
    the input elements and uses it in preference to the native
    encoding.  This reduces the risk of accidental creation of
    invalid strings, particularly when different elements of the
    input have different encoding (including "bytes").
  * Package repositories in getOption("repos") are now initialized
    from the repositories file when utils is loaded (if not already
    set, e.g., in .Rprofile).  (From a report and patch proposal by
    Gabriel Becker in PR#18405.)
  * compactPDF() gets a verbose option.
  * type.convert() and hence read.table() get new option tryLogical =
    TRUE with back compatible default.  When set to false, converts
    "F" or "T" columns to character.
  * Added new unit prefixes "R" and "Q" for abbreviating
    (unrealistically large) sizes beyond 10^{27} in standard = "SI",
    thanks to Henrik Bengtsson's PR#18435.
  * as.data.frame()'s default method now also works fine with atomic
    objects inheriting from classes such as "roman", "octmode" and
    "hexmode", such fulfilling the wish of PR#18421, by Benjamin
    Feakins.
  * The as.data.frame.vector() utility now errors for wrong-length
    row.names.  It warned for almost six years, with "Will be an
    error!".
  * sessionInfo() now also contains La_version() and reports codepage
    and timezone when relevant, in both print() and toLatex() methods
    which also get new option tzone for displaying timezone
    information when locale = FALSE.
  * New function R_compiled_by() reports the C and Fortran compilers
    used to build R, if known.
  * predict(&lt;lm&gt;, newdata = *) no longer unnecessarily creates an
    offset of all 0s.
  * solve() for complex inputs now uses argument tol and by default
    checks for 'computational singularity' (as it long has done for
    numeric inputs).
  * predict(&lt;rank-deficient lm&gt;, newdata=*) now obeys a new argument
    rankdeficient, with new default "warnif", warning only if there
    are non-estimable cases in newdata.  Other options include
    rankdeficient = "NA", predicting NA for non-estimable newdata
    cases.  This addresses PR#15072 by Russ Lenth and is based on his
    original proposal and discussions in PR#16158 also by David Firth
    and Elin Waring.  Still somewhat experimental.
  * Rgui console implementation now works better with the NVDA screen
    reader when the full blinking cursor is selected.  The underlying
    improvements in cursor handling may help also other screen
    readers on Windows.
  * The drop-field control in GraphApp can now be left with the TAB
    key and all controls can be navigated in the reverse order using
    the Shift+TAB key, improving accessibility of the Rgui
    configuration editor.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now fully accurate
    (instead of to "only" minimally five digits).
  * demo(error.catching) now also shows off withWarnings() and
    tryCatchWEMs().
  * As an experimental feature the placeholder _ can now also be used
    in the rhs of a forward pipe |&gt; expression as the first argument
    in an extraction call, such as _$coef. More generally, it can be
    used as the head of a chain of extractions, such as _$coef[[2]].
  * Spaces in the environment variable used to choose the R session's
    temporary directory (TMPDIR, TMP and TEMP are tried in turn) are
    now fatal.  (On Windows the 'short path' version of the path is
    tried and used if that does not contain a space.)
  * all.equal.numeric() gets a new optional switch giveErr to return
    the numeric error as attribute.  Relatedly,
    stopifnot(all.equal&lt;some&gt;(a, b, ..)) is as "smart" now, as
    stopifnot(all.equal(....)) has been already, thus allowing
    customized all.equal&lt;Some&gt;() wrappers.
  * R on Windows is now able to work with path names longer than 260
    characters when these are enabled in the system (requires at
    least Windows 10 version 1607).  Packages should be updated to
    work with long paths as well, instead of assuming PATH_MAX to be
    the maximum length.  Custom front-ends and applications embedding
    R need to update their manifests if they wish to allow this
    feature.  See
    &lt;https://blog.r-project.org/2023/03/07/path-length-limit-on-windows&gt;
    for more information.
  * 'Object not found' and 'Missing argument' errors now give a more
    accurate error context. Patch provided by Lionel Henry in
    PR#18241.
  * The @ operator is now an S3 generic. Based on contributions by
    Tomasz Kalinowski in PR#18482.
  * New generic chooseOpsMethod() provides a mechanism for objects to
    resolve cases where two suitable methods are found for an Ops
    Group Generic. This supports experimenting with alternative
    object systems. Based on contributions by Tomasz Kalinowski in
    PR#18484.
  * inherits(x, what) now accepts values other than a simple
    character vector for argument what. A new generic, nameOfClass(),
    is called to resolve the class name from what. This supports
    experimenting with alternative object systems. Based on
    contributions by Tomasz Kalinowski in PR#18485.
  * Detection of BLAS/LAPACK in use (sessionInfo()) with FlexiBLAS
    now reports the current backend.
  * The "data.frame" method for subset() now warns about extraneous
    arguments, typically catching the use of = instead of == in the
    subset expression.
  * Calling a:b when numeric a or b is longer than one may now be
    made into an error by setting environment variable
    _R_CHECK_LENGTH_COLON_ to a true value, along the proposal in
    PR#18419 by Henrik Bengtsson.
  * density(x, weights = *) now warns if automatic bandwidth
    selection happens without using weights; new optional warnWbw may
    suppress the warning.  Prompted by Christoph Dalitz' PR#18490 and
    its discussants.
  * rm(list = *) is faster and more readable thanks to Kevin Ushey's
    PR#18492.
  * The plot.lm() function no longer produces a normal Q-Q plot for
    GLMs. Instead it plots a half-normal Q-Q plot of the absolute
    value of the standardized deviance residuals.
  * The print() method for class "summary.glm" no longer shows
    summary statistics for the deviance residuals by default.  Its
    optional argument show.residuals can be used to show them if
    required.
  * The tapply() function now accepts a data frame as its X argument,
    and allows INDEX to be a formula in that case. by.data.frame()
    similarly allows INDICES to be a formula.
  * The performance of df[j] &lt;- value (including for missing j) and
    write.table(df) has been improved for data frames df with a large
    number of columns.  (Thanks to Gabriel Becker's PR#18500,
    PR#18503 and discussants, prompted by a report from Toby Dylan
    Hocking on the R-devel mailing list.)
  * The matrix multiply operator %*% is now an S3 generic, belonging
    to new group generic matrixOps.  From Tomasz Kalinowski's
    contribution in PR#18483.
  * New function array2DF() to convert arrays to data frames,
    particularly useful for the list arrays created by tapply().
  DATES and TIMES:
  * On platforms where (non-UTC) datetimes before 1902 (or before
    1900 as with system functions on recent macOS) are guessed by
    extrapolating time zones from 1902-2037, there is a warning at
    the first use of extrapolation in a session.  (As all time zones
    post 2037 are extrapolation, we do not warn on those.)
  * (Platforms using --with-internal-tzone, including Windows and by
    default macOS). How years are printed in dates or date-times can
    be controlled by environment variable R_PAD_YEARS_BY_ZERO.  The
    default remains to pad to 4 digits by zeroes, but setting value
    no gives no padding (as used by default by glibc).
  * strftime() tries harder to determine the offset for the "%z"
    format, and succeeds on the mainstream R platforms.
  * strftime() has a limit of 2048 bytes on the string produced -
    attempting to exceed this is an error.  (Previously it silently
    truncated at 255 bytes.)
  * sessionInfo() records (and by default prints) the system time
    zone as part of the locale information.  Also, the source
    (system/internal) of the date-time conversion and printing
    functions.
  * Objects of class "POSIXlt" created in this version of R always
    have 11 components: component zone is always set, and component
    gmtoff is set for times in UTC and usually set on the (almost
    all) platforms which have C-level support, otherwise is NA.
  * There are comprehensive validity checks on the structure of
    objects of class "POSIXlt" when converting (including formatting
    and printing).  (This avoids mis-conversions of hand-crafted
    objects.)
  * There is some support for using the native date-time routines on
    macOS: this is only viable on recent versions (e.g. 12.6 and 13)
    and does get wrong some historical changes (before 1900, during
    WWII).  Use of --with-internal-tzone remains the default.
  * as.POSIXct(&lt;numeric&gt;) and as.POSIXlt(.) (without specifying
    origin) now work.  So does as.Date(&lt;numeric&gt;).
  * as.Date.POSIXct(., tz) now treats several tz values, notably
    "GMT" as equivalent to "UTC", proposed and improved by Michael
    Chirico and Joshua Ulrich in PR#17674.
  * Experimental balancePOSIXlt() utility allows using "ragged" and
    or out-of-range "POSIXlt" objects more correctly, e.g., in
    subsetting and subassignments.  Such objects are now documented.
    More experimentally, a "POSIXlt" object may have an attribute
    "balanced" indicating if it is known to be filled or fully
    balanced.
  * Functions axis.Date() and axis.POSIXct() are rewritten to gain
    better default tick locations and better default formats by using
    prettyDate(). Thanks to Swetlana Herbrandt.
  * The mapping of Windows' names for time zones to IANA's 'Olson'
    names has been updated.  When ICU is available (it is by
    default), it is used to get a mapping for the current region set
    in Windows.  This can be overridden by setting environment
    variable TZ to the desired Olson name - see OlsonNames() for
    those currently available.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 16
    and so packages that provide graphics devices should be
    reinstalled.
  * The grDevices and grid packages have new functions for rendering
    typeset glyphs, primarily: grDevices::glyphInfo() and
    grid::grid.glyph().
    Rendering of typeset glyphs is only supported so far on the
    Cairo-based graphics devices and on the pdf() and quartz()
    devices.
  * The defined behaviour for "clear" and "source" compositing
    operators (via grid::grid.group()) has been changed (to align
    better with simple interpretation of original Porter-Duff
    definitions).
  * Support for gradients, patterns, clipping paths, masks, groups,
    compositing operators, and affine transformations has been added
    to the quartz() device.
  INSTALLATION on a UNIX-ALIKE:
  * A system installation of generic LAPACK 3.10.0 or later will be
    preferred to the version in the R sources.
    configure option --with-lapack=no (equivalently --without-lapack)
    forces compilation of the internal LAPACK sources.
    If --with-lapack is not specified, a system liblapack is looked
    for and used if it reports version 3.10.0 or later and does not
    contain BLAS routines.
    Packages using LAPACK will need to be reinstalled if this changes
    to using an external library.
  * On aarch64 Linux platforms using GCC, configure now defaults to
  - fPIC (instead of -fpic), as desired in PR#18326.
  * configure now checks conversion of datetimes between POSIXlt and
    POSIXct around year 2020.  Failure (which has been seen on
    platforms missing tzdata) is fatal.
  * If configure option --with-valgrind-instrumentation is given
    value 1 or 2, option --with-system-valgrind-headers is now the
    default and ignored (with a warning).  It is highly recommended
    that the system headers are installed alongside valgrind: they
    are part of its packaging on some Linux distributions and
    packaged separately (e.g. in the valgrind-devel RPM) on others.
    configure will give a warning if they are not found.
    The system headers will be required in a future release of R to
    build with valgrind instrumentation.
  * libcurl 8.x is now accepted by configure: despite a change in
    major version number it changes neither API nor ABI.
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools43, an update of the Rtools42 toolchain.  It is
    based on gcc 12 and newer versions of MinGW-W64, binutils and
    libraries.  At this time R-devel can still be built using
    Rtools42 without changes, but when R-devel is installed via the
    installer, it will by default look for Rtools43.
  * Old make targets rsync-extsoft and 32-bit ones that are no longer
    needed have been removed.
  * Default builds (including for packages) no longer select C99.
    Thus the C standard used is the default for the compiler, which
    for the toolchain in Rtools43 is C17.  (This is consistent with
    Unix builds.)
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++17 where
    available (which it is on all currently checked platforms): if
    not C++14 or C++11 is used if available otherwise C++ is not
    supported.
  * USE_FC_LEN_T is the default: this uses the correct
    (compiler-dependent) prototypes for Fortran BLAS/LAPACK routines
    called from C/C++, and requires adjustment of many such calls -
    see 'Writing R Extensions' SS6.6.1.
  * There is initial support for C++23 as several compilers are now
    supporting -std=c++23 or -std=c++2b or similar.  As for C++20,
    there no additional configure checks for C++23 features beyond a
    check that the compiler reports a __cplusplus value greater than
    that in the C++20 standard.  C++ feature tests should be used.
  * There is support for a package to indicate the version of the C
    standard which should be used to compile it, and for the
    installing user to specify this.  In most cases R defaults to the
    C compiler's default standard which is C17 (a `bug-fix' of C11) -
    earlier versions of R or compilers may have defaulted to C99.
    Current options are:
    USE_C17 Use a standard that is at most C17.  The intention is to
    allow legacy packages to still be installed when later C
    standards become the default, including packages using new
    keywords as identifiers or with K&amp;R-style function
    declarations.  This will use C17 if available, falling back
    to C11.
    USE_C90 Use the C90 (aka C89) standard.  (As that standard did
    not require compilers to identify that version, all we can
    verify is that the compiler does not claim to be using a
    later standard.  It may accept C99 features - for example
    clang accepts // to make comments.)
    USE_C99 Use the C99 standard. This should be rarely needed - it
    avoids the few new features of C11/C17 which can be useful if
    a package assumes them if C17 is specified and they are not
    implemented.
    USE_C23 Use C23 (or in future, later).  Compiler/library support
    for C23 is still being implemented, but LLVM clang from
    15.0.0 and the upcoming GCC 13 have quite extensive support.
    These can be specified as part of the SystemRequirements field in
    the package's DESCRIPTION file or _via_ options --use-C17 and so
    on of R CMD INSTALL and R CMD SHLIB.
    For further details see "Writing R Extensions" SS1.2.5.
  * (Windows) A src/Makefile.ucrt or src/Makefile.win file is now
    included after R_HOME/etcR_ARCH/Makeconf and so no longer needs
    to include that file itself.  Installation of a package with such
    a file now uses a site Makevars file in the same way as a package
    with a src/Makevars.win file would.
  * configure is now passed crucial variables such as CC and CFLAGS
    in its environment, as many packages were not setting them (as
    documented in 'Writing R Extensions' SS1.2).
    This has most effect where configure is used to compile parts of
    the package - most often by cmake or libtool which obfuscate the
    actual compile commands used.
    Also used for configure.win and configure.ucrt on Windows.
  FORTRAN FLAGS:
  * The flag -fno-optimize-sibling-calls is no longer forced for
    gfortran 7 and later.  It should no longer be needed now using
    'hidden' character-length arguments when calling BLAS/LAPACK
    routines from C/C++ is the default even for packages.  (Unless
    perhaps packages call Fortran code from C/C++ without using R's
    headers and without allowing for these arguments.)
  C-LEVEL FACILITIES:
  * The deprecated S-compatibility macros DOUBLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * The deprecated legacy typedefs of Sint and Sfloat in header R.h
    are no longer defined, and that header no longer includes header
    limits.h from C nor climits from C++.
  * New macro CAD5R() is provided in Rinternals.h and used in a few
    places in the R sources.
  * ALTREP now supports VECSXP vectors. Contributed by Gabor Csardi
    in PR#17620.
  * The Rcomplex definition (in header R_ext/Complex.h) has been
    extended to prevent possible mis-compilation when interfacing
    with Fortran (PR#18430).  The new definition causes compiler
    warnings with static initializers such as {1, 2}, which can be
    changed to {.r=1, .i=2}.
    Using the new definition from C++ depends on compiler extensions
    supporting C features that have not been incorporated into the
    C++ standards but are available in g++ and clang++: this may
    result in C++ compiler warnings but these have been worked around
    for recent versions of common compilers (GCC, Apple/LLVM clang,
    Intel).
    It is intended to change the inclusion of header R_ext/Complex.h
    by other R headers, so C/C++ code files which make use of
    Rcomplex should include that header explicitly.
  UTILITIES:
  * R CMD check does more checking of package .Rd files, warning
    about invalid email addresses and (some) invalid URIs and noting
    empty \item labels in description lists.
  * R CMD check now also reports problems when reading package news
    in md (file NEWS.md) and (optionally) plain text (file NEWS)
    formats.
  * _R_CHECK_TIMINGS_ defaults to a value from the environment even
    for R CMD check --as-cran; this allows for exceptionally fast or
    slow platforms.
    It now applies to checking PDF and HTML versions of the manuals,
    and 'checking CRAN incoming feasibility'.
  * R CMD check can optionally (but included in --as-cran) check
    whether HTML math rendering _via_ KaTeX works for the package .Rd
    files.
  * Non-interactive debugger invocations can be trapped by setting
    the environment variable _R_CHECK_BROWSER_NONINTERACTIVE_ to a
    true value.  This is enabled by R CMD check --as-cran to detect
    the use of leftover browser() statements in the package.
  * The use of sprintf and vsprintf from C/C++ has been deprecated in
    macOS 13 and is a known security risk.  R CMD check now reports
    (on all platforms) if their use is found in compiled code:
    replace by snprintf or vsnprintf respectively. [*NB:* whether
    such calls get compiled into the package is platform-dependent.]
  * Where recorded at installation, R CMD check reports the C and
    Fortran compilers used to build R.
    It reports the OS in use (if known, as given by osVersion) as
    well as that R was built for.
    It notes if a C++ standard was specified which is older than the
    current default: many packages have used C++11 to mean 'not
    C++98' - as C++11 is the minimum supported since R 4.0.0, that
    specification can probably be removed.
  * R CMD INSTALL reports the compilers (and on macOS, the SDK) used,
    and this is copied to the output of R CMD check.
    Where a C++ standard is specified, it is reported.
  * R CMD check's 'checking compilation flags in Makevars' has been
    relaxed to accept the use of flags such as -std=f2008 in
    PKG_FFLAGS.
  * tools::buildVignettes() has a new argument skip, which is used by
    R CMD check to skip (and note) vignettes with unavailable
    \VignetteDepends (PR#18318).
  * New generic .AtNames() added to enable class-specific completions
    after @. The formerly internal function findMatches() is now
    exported, mainly for use in methods for .DollarNames() and
    .AtNames().
  DEPRECATED AND DEFUNCT:
  * default.stringsAsFactors() is defunct.
  * Calling as.data.frame.&lt;class&gt;() directly (for 12 atomic classes)
    is going to be formally deprecated, currently activated by
    setting the environment variable
    _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ to non-empty, which also
    happens in R CMD check --as-cran.
  BUG FIXES:
  * Hashed environments with sizes less than 5 can now grow.
    (Reported to R-devel by Duncan Garmonsway.)
  * as.character(&lt;Rd&gt;, deparse = TRUE) failed to re-escape curly
    braces in LaTeX-like text.  (Reported by Hadley Wickham in
    PR#18324.)
  * library() now passes its lib.loc argument when requiring Depends
    packages; reported (with fix) in PR#18331 by Mikael Jagan.
  * R CMD Stangle: improved message about 'Output' files.
  * head(x, n) and tail(x, n) now signal an error if n is not
    numeric, instead of incidentally "working" sometimes returning
    all of x.  Reported and discussed by Colin Fay, in PR#18357.
  * The "lm" method for summary() now gives the correct F-statistic
    when the model contains an offset.  Reported in PR#18008.
  * C() and `contrasts&lt;-`() now preserve factor level names when
    given a function object (as opposed a function name which did
    preserve names). Reported in PR#17616.
  * c(a = 1, 2)[[]] no longer matches 2 but rather signals a
    _classed_ error.  Reported and analysed by Davis Vaughan in
    PR#18367, a duplicate of PR#18004, by Jan Meis et al.  For
    consistency, NULL[[]] is also erroneous now.  x[[]] &lt;- v gives an
    error of the same class "MissingSubscriptError".
  * The relist() function of utils now supports NULL elements in the
    skeleton (PR#15854).
  * ordered(levels = *) (missing x) now works analogously to factor(,
    ordered=TRUE); reported (with fix) by Achim Zeileis in PR#18389.
  * User-defined Rd macro definitions can now span multiple lines,
    thanks to a patch from Duncan Murdoch. Previously, the Rd parser
    silently ignored everything after the first line.
  * Plain-text help (tools::Rd2txt()) now preserves an initial blank
    line for text following description list items.
  * tools::Rd2HTML() and tools::Rd2latex() no longer split \arguments
    and \value lists at Rd comments.
  * tools::Rd2latex() now correctly handles optional text outside
    \items of argument lists as well as bracketed text at the
    beginning of sections, e.g., \value{[NULL]}.
  * as.character(&lt;POSIXt&gt;) now behaves more in line with the methods
    for atomic vectors such as numbers, and is no longer influenced
    by options().  Ditto for as.character(&lt;Date&gt;).  The
    as.character() method gets arguments digits and OutDec with
    defaults _not_ depending on options().  Use of as.character(*,
    format = .) now warns.
  * Similarly, the as.character.hexmode() and *.octmode() methods
    also behave as good citizen methods and back compatibility option
    keepStr = TRUE.
  * The as.POSIXlt(&lt;POSIXlt&gt;) and as.POSIXct(&lt;POSIXct&gt;) default
    methods now do obey their tz argument, also in this case.
  * as.POSIXlt(&lt;Date&gt;) now does apply a tz (time zone) argument, as
    does as.POSIXct(); partly suggested by Roland Fuss on the R-devel
    mailing list.
  * as.Date.POSIXlt(x) now also works when the list components are of
    unequal length, aka "partially filled" or "ragged".
  * expand.model.frame() looked up variables in the wrong environment
    when applied to models fitted without data.  Reported in
    PR#18414.
  * time() now (also) uses the ts.eps = getOption("ts.eps") argument
    and thus by default rounds values very close to the start (or
    end) of a year.  Based on a proposal by Andre"i V. Kostyrka on
    R-help.
  * Printing of a factanal() result with just one factor and sort =
    TRUE now works regularly, fixing PR#17863 by Timothy Bates,
    thanks to the 'R Contributors' working group.
  * Printing 0-length objects of class "factor", "roman", "hexmode",
    "octmode", "person", "bibentry", or "citation" now prints
    something better, one of which fixes PR#18422, reported by
    Benjamin Feakins.
  * Sys.timezone() queries timedatectl only if systemd is loaded;
    addressing a report by Jan Gorecki in PR#17421.
  * The formula method of cor.test() had scoping problems when
    environment(formula) was not the calling environment; reported
    with a patch proposal by Mao Kobayashi in PR#18439.
  * attach() of an environment with active bindings now preserves the
    active bindings.  Reported by Kevin Ushey in PR#18425.
  * BLAS detection now works also with system-provided libraries not
    available as regular files.  This fixes detection of the
    Accelerate framework on macOS since Big Sur.  Reported by David
    Novgorodsky.
  * download.file() gives a helpful error message in case of an
    invalid download.file.method option, thanks to Colin Fay's report
    in PR#18455.
  * Sporadic crashes of Rterm when using completion have been fixed.
  * Rprof() is now more reliable.  A livelock in thread
    initialization with too short sampling interval has been fixed on
    macOS.  A deadlock in using the C runtime has been fixed on
    Windows.  A potential deadlock has been prevented on Unix.
  * Cursor placement in Rgui now works even after a fixed-width font
    is selected.
  * Mandatory options (options()) are now set on startup so that
    saving and restoring them always works (PR#18372).
  * Package installation, R CMD INSTALL or install.packages(*), now
    parses each of the &lt;pkg&gt;/R/*.R files individually instead of
    first concatenating and then parse()ing the large resulting file.
    This allows parser or syntax errors to be diagnosed with correct
    file names and line numbers, thanks to Simon Dedman's report and
    Bill Dunlap's patch in PR#17859.
    This _does_ require syntactically self contained R source files
    now, fixing another inadvertent bug.
  * predict.lm(&lt;model with offset&gt;) now finds the offset in the
    correct environment, thanks to Andr'e Gillibert's report and patch
    in PR#18456.
  * getInitial(&lt;formula&gt;) now finds the selfStart model in the
    correct environment.  (Reported by Ivan Krylov in PR#18368.)
  * Fix for possible segfault when using recently-added graphics
    features, such as gradients, clipping paths, masks, and groups
    with pdf(file=NULL).
  * class(m) &lt;- class(m) no longer changes a matrix m by adding a
    class _attribute_.
  * packageDate(pkg) now only warns once if there is no pkg.
  * When ts() creates a multivariate time series, "mts", it also
    inherits from "array" now, and is.mts() is documented _and_
    stricter.
  * Rd2txt() now preserves line breaks of \verb Rd content and from
    duplicated \cr.  The former also fixes the rendering of verbatim
    output from Rd \Sexpr in plain-text help.
  * uniroot(f, interval) should no longer wrongly converge _outside_
    the interval in some cases where abs(f(x)) == Inf for an x at the
    interval boundary, thanks to posts by Ben Bolker and Serguei
    Sokol on R-devel.
  * Vectorized alpha handling in palette functions such as in gray(),
    rainbow(), or hcl.colors() works correctly now, thanks to Achim
    Zeileis' report and patch in PR#18476.
  * Formatting and print()ing of bibentry objects has dropped the
    deprecated citation.bibtex.max argument, such that the bibtex
    argument's default for print.bibentry() depends directly on the
    citation.bibtex.max option, whereas in format.bibentry() the
    option no longer applies.
  * Attempting to use a character string naming a foreign function
    entry point in a foreign function call in a package will now
    signal an error if the packages has called R_forceSymbols to
    specify that symbols must be used.
  * An error in table() could permanently set options(warn=2)
    promoting all subsequent warnings to errors.
  * The sigma() function gave misleading results for binary GLMs.  A
    new method for objects of class "glm" returns the square root of
    the estimate of the dispersion parameter using the same
    calculation as summary.glm().
  * bs() and ns() in the (typical) case of automatic knot
    construction, when some of the supposedly inner knots coincide
    with boundary knots, now moves them inside (with a warning),
    building on PR#18442 by Ben Bolker.
  * R CMD on Windows now skips the site profile with --no-site-file
    and --vanilla even when R_PROFILE is set (PR#18512, from Kevin
    Ushey).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1686916800">- CHANGES IN R 4.3.1:
  C-LEVEL FACILITIES:
  * The C-level API version of R's integrate(), Rdqags() in Applic.h,
    now returns the correct number of integrand evaluations neval,
    fixing PR#18515 reported and diagnosed by Stephen Wade.
  * The C prototypes for LAPACK calls dspgv and dtptrs in
    R_exts/Lapack.h had one too many and one too few character length
    arguments - but this has not caused any known issues. To get the
    corrected prototypes, include
    [#]include &lt;Rconfig.h&gt; // for PR18534fixed
    [#]ifdef PR18534fixed
    [#] define usePR18534fix 1
    [#]endif
    [#]include &lt;R_exts/Lapack.h&gt;
    in your C/C++ code (PR#18534).
  INSTALLATION:
  * Many of the checks of esoteric Internet operations and those
    using unreliable external sites have been moved to a new target
    that is not run by default and primarily intended for the core
    developers.  To run them use
    cd tests; make test-Internet-dev
  BUG FIXES:
  * .S3methods(), typically called from methods(), again marks
    methods from package base as visible.
    Also, the visibility of non-base methods is again determined by
    the method's presence in search().
  * tools::Rdiff() is now more robust against invalid strings, fixing
    installation tests on Windows without Rtools installed
    (PR#18530).
  * Fix (new) bug in hcl.colors(2, *), by Achim Zeileis (PR#18523).
  * head(., &lt;illegal&gt;) and tail(..) now produce more useful "Error in
    ...." error messages, fixing PR#18362.
  * Package code syntax on Windows is checked in UTF-8 when UTF-8 is
    the native encoding.
  * na.contiguous(x) now also returns the first run, when it is at
    the beginning and there is a later one of the same length;
    reported to R-devel, including a fix, by Georgi Boshnakov.
    Further, by default, it modifies only an existing attr(*,"tsp")
    but otherwise no longer sets one.
  * chol(&lt;not pos.def&gt;, pivot = &lt;T|F&gt;) now gives a correct error or
    warning message (depending on pivot), thanks to Mikael Jagan's
    (PR#18541).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1699012800">- CHANGES IN R 4.3.2:
  NEW FEATURES:
  * The default initialization of the "repos" option from the
    repositories file at startup can be skipped by setting
    environment variable R_REPOSITORIES to NULL such that
    getOption("repos") is empty if not set elsewhere.
  * qr.X() is now an implicit S4 generic in methods.
  * iconv(to = "ASCII//TRANSLIT") is emulated using substitution on
    platforms which do not support it (notably Alpine Linux).  This
    should give a human-readable conversion in ASCII on all platforms
    (rather than NA_character_).
  * trans3d() gains options continuous and verbose addressing the
    problem of possible "wrap around" when projecting too long
    curves, as reported by Achim Zeileis in PR#18537.
  * tools::showNonASCII() has been rewritten to work better on macOS
    14 (which has a changed implementation of iconv()).
  * tiff(type = "quartz") (the default on macOS) now warns if
    compression is specified: it continues to be ignored.
  INSTALLATION on a UNIX-ALIKE:
  * There is some support for building with Intel's LLVM-based
    compilers on x86_64 Linux, such as (C) icx, (C++) ipcx and
    (Fortran) ifx from oneAPI 2023.x.y.
  * There is support for using LLVM's flang-new as the Fortran
    compiler from LLVM 16.0.x (preferably 17.0.0 or later).
  UTILITIES:
  * R CMD check reports the use of the Fortran 90 random number
    generator RANDOM_NUMBER() and the subroutines to initialize it.
    'Writing R Extensions' has example code to use R's RNGs from
    Fortran.
  BUG FIXES:
  * substr(x, n, L) &lt;- cc now works (more) correctly for multibyte
    UTF-8 strings x when L &gt; nchar(x), thanks to a report and patch
    by 'Architect 95'.
  * contrib.url(character()) now returns 0-length character() as
    documented, which also avoids spurious warnings from
    available.packages() et al. in the edge case of an empty vector
    of repository URLs.
  * readChar(., 4e8) no longer fails, thanks to Kodi Arfer's report
    (PR#18557).
  * lapply(&lt;list&gt;, as.data.frame) no longer warns falsely for some
    base vector components.
  * Communication between parent and child processes in the multicore
    part of parallel could fail on platforms that do not support an
    arbitrarily large payload in system functions read()/write() on
    pipes (seen on macOS where a restriction to INT_MAX bytes is
    documented, without doing a partial read unlike Linux). The
    payload is now split into 1Gb chunks to avoid that problem.
    (PR#18571)
  * qqplot(x,y, conf.level=.) gives better confidence bounds when
    length(x) != length(y), thanks to Alexander Ploner's report and
    patch proposal (PR#18557).
  * norm(&lt;0-length&gt;, "2") now gives zero instead of an error, as all
    the other norm types, thanks to Mikael Jagan's PR#18542.
  * Build-stage Rd macros \packageAuthor and \packageMaintainer now
    process Authors@R, fixing NA results when the package DESCRIPTION
    omits Author and Maintainer fields.
  * Formatting and printing complex numbers could give things like
    0.1683-0i because of rounding error: -0i is now replaced by +0i.
  * postscript() refused to accept a title comment containing the
    letter "W" (PR#18599).
  * isoreg(c(1,Inf)) signals an error instead of segfaulting, fixing
    PR#18603.
  * tiff(type = "Xlib") was only outputting the last page of
    multi-page plots.
  * tools::latexToUtf8() again knows about \~{n} and other letters
    with tilde, fixing a regression in R 4.3.0, and about \^{i} as an
    alternative to \^{\i} (similarly with other accents).
    Furthermore, LaTeX codes for accented I letters are now correctly
    converted, also fixing related mistakes in
    tools::encoded_text_to_latex().
  * tar(*, tar = "internal") no longer creates out-of-spec tar files
    in the very rare case of user or group names longer than 32
    bytes, fixing PR#17871 with thanks to Ivan Krylov.
  * When using the "internal" timezone datetime code, adding a
    fraction of a second no longer adds one second, fixing PR#16856
    from a patch by Ivan Krylov.
  * tools::checkRd() no longer produces spurious notes about
    "unnecessary braces" from multi-line Rd results of \Sexpr macros.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1709208000">- CHANGES IN R 4.3.3:
  NEW FEATURES:
  * iconv() now fixes up variant encoding names such as "utf8"
    case-insensitively.
  DEPRECATED AND DEFUNCT:
  * The legacy encoding = "MacRoman" is deprecated in pdf() and
    postscript(): support was incomplete in earlier versions of R.
  BUG FIXES:
  * Arguments are now properly forwarded to methods on S4 generics
    with ... in the middle of their formal arguments. This was broken
    for the case when a method introduced an argument but did not
    include ... in its own formals. Thanks to Herv'e Pag`es for the
    report PR#18538.
  * Some invalid file arguments to pictex(), postscript() and xfig()
    opened a file called NA rather than throw an error.  These
    included postscript(NULL) (which some people expected to work
    like pdf(NULL)).
  * Passing filename = NA to svg(), cairo_pdf(), cairo_ps() or the
    Cairo-based bitmap devices opened a file called NA: it now throws
    an error.
  * quartz(file = NA) opened a file called NA, including when used as
    a Quartz-based bitmap device.  It now gives an error.
  * rank(&lt;long vector&gt;) now works, fixing PR#18617, thanks to Ilia
    Kats.
  * seq.int() did not adequately check its length.out argument.
  * match(&lt;POSIXct&gt;, .) is correct again for differing time zones,
    ditto for "POSIXlt", fixing PR#18618 reported by Bastian Klein.
  * drop.terms(*, dropx = &lt;0-length&gt;) now works, fixing PR#18563 as
    proposed by Mikael Jagan.
  * drop.terms(*) keeps + offset(.) terms when it should, PR#18565,
    and drop.terms() no longer makes up a response, PR#18566, fixing
    both bugs thanks to Mikael Jagan.
  * getS3method("t", "test") no longer finds the t.test() function,
    fixing PR#18627.
  * pdf() and postscript() support for the documented Adobe encodings
    "Greek" and "Cyrilllic" was missing (although the corresponding
    Windows' codepages could be used).
  * Computations of glyph metric information for pdf() and
    postscript() did not take into account that transliteration could
    replace one character by two or more (only seen on macOS 14) and
    typically warned that the information was not known.
  * rank(x) no longer overflows during integer addition, when
    computing rank average for largish but not-yet long vector x,
    fixing PR#18630, thanks to Ilia Kats.
  * list.files() on Windows now returns also files with names longer
    that 260 bytes (the Windows limit is 260 characters).
    Previously, some file names particularly with 'East Asian'
    characters were omitted.
  * cov2cor(&lt;0 x 0&gt;) now works, fixing PR#18423 thanks to Mikael
    Jagan and Elin Waring.
  * cov2cor(&lt;negative diagonal&gt;) and similar now give one warning
    instead of two, with better wording, fixing PR#18424 thanks to
    Mikael Jagan.
  * tools:: startDynamicHelp() now ensures port is in proper range,
    fixing PR#18645.
  * pbeta(x, a,b) is correct now for x=0 or 1 in the boundary cases
    where a or b or both are 0, fixing PR#18672 thanks to Michael
    Fay.
  * pmatch(x, table) for large table, also called for data frame row
    selection, dfrm[nm, ], is now interruptible, fixing PR#18656.
  * predict(&lt;rank-deficient lm&gt;, newdata=*) fix computing of nbasis,
    see Russ Lenth's comment 29 in PR#16158.
  * Added a work-around for a bug in macOS 14.3.1 and higher which
    prevents R plots in the Quartz Cocoa device from updating on
    screen.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1713960000">- CHANGES IN R 4.4.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Startup banners, R --version, sessionInfo() and R CMD check no
    longer report (64-bit) as part of the platform as this is almost
    universal - the increasingly rare 32-bit platforms will still
    report (32-bit).
    On Windows, ditto for window titles.
  * is.atomic(NULL) now returns FALSE, as NULL is not an atomic
    vector.  Strict back-compatibility would replace is.atomic(foo)
    by (is.null(foo) || is.atomic(foo)) but should happen only
    sparingly.
  NEW FEATURES:
  * The confint() methods for "glm" and "nls" objects have been
    copied to the stats package.  Previously, they were stubs which
    called versions in package MASS. The MASS namespace is no longer
    loaded if you invoke (say) confint(glmfit).  Further, the "glm"
    method for profile() and the plot() and pairs() methods for class
    "profile" have been copied from MASS to stats.  (profile.nls()
    and plot.profile.nls() were already in stats.)
  * The confint() and profile methods for "glm" objects have gained a
    possibility to do profiling based on the Rao Score statistic in
    addition to the default Likelihood Ratio. This is controlled by a
    new test = argument.
  * The pairs() method for "profile" objects has been extended with a
    which = argument to allow plotting only a subset of the
    parameters.
  * The "glm" method for anova() computes test statistics and
    p-values by default, using a chi-squared test or an F test
    depending on whether the dispersion is fixed or free.  Test
    statistics can be suppressed by giving argument test a false
    logical value.
  * In setRepositories() the repositories can be set using their
    names via name = instead of index ind =.
  * methods() and .S3methods() gain a all.names option for the (rare)
    case where functions starting with a . should be included.
  * Serializations can now be interrupted (e.g., by Ctrl-C on a
    Unix-alike) if they take too long, e.g., from save.image(),
    thanks to suggestions by Ivan Krylov and others on R-devel.
  * New startup option --max-connections to set the maximum number of
    simultaneous connections for the session.  Defaults to 128 as
    before: allowed values up to 4096 (but resource limits may in
    practice restrict to smaller values).
  * R on Windows (since Windows 10 2004) now uses the new Segment
    Heap allocator. This may improve performance of some
    memory-intensive applications.
  * When R packages are built, typically by R CMD build &lt;pkg&gt;, the
    new --user=&lt;build_user&gt; option overrides the (internally
    determined) user name, currently Sys.info()["user"] or LOGNAME.
    This is a (modified) fulfillment of Will Landau's suggestion in
    PR#17530.
  * tools::testInstalledBasic() gets new optional arguments outDir
    and testSrcdir, e.g., allowing to use it in a &lt;builddir&gt; !=
    &lt;srcdir&gt; setup, and in standard "binary" Windows installation
  * if* a source tests/ folder is present.
  * range(&lt;DT_with_Inf&gt;, finite = TRUE) now work for objects of class
    "Date", "POSIXct", and "POSIXlt" with infinite entries,
    analogously to range.default(), as proposed by Davis Vaughan on
    R-devel.  Other range()-methods can make use of new function
    .rangeNum().
  * New .internalGenerics object complementing .S3PrimitiveGenerics,
    for documentation and low-level book-keeping.
  * grid() now invisibly returns the x- and y- coordinates at which
    the grid-lines were drawn.
  * norm(., type) now also works for complex matrices.
  * kappa(., exact = TRUE, norm = *) now works for all norms and also
    for complex matrices.  In symmetric / triangular cases, the new
    argument uplo = "U" | "L" allows the upper or lower triangular
    part to be specified.
  * memDecompress(type = "unknown") recognizes compression in the
    default 'zlib' format as used by memCompress(type = "gzip").
  * memCompress() and memDecompress() will use the libdeflate library
    (&lt;https://github.com/ebiggers/libdeflate&gt;) if installed.  This
    uses the same type of compression for type = "gzip" but is 1.5-2x
    faster than the system libz library on some common platforms: the
    speed-up may depend on the library version.
  * diff() for objects of class "Date", "POSIXct", and "POSIXlt"
    accepts a units argument passed via ....
  * Dynamic help now does a much better job of rendering package
    DESCRIPTION metadata.
  * Rprof() gains an event argument and support for elapsed (real)
    time profiling on Unix (PR#18076).
  * filled.contour() gains a key.border argument.
  * tools::update_pkg_po() gets arguments pot_make and mo_make for
    _not_ re-making the corresponding files, and additionally a
    verbose argument.
  * Hexadecimal string colour specifications are now accepted in
    short form, so, for example, we can use "#123", which is
    equivalent to "#112233".
    Thanks to MikeFC for the original idea and Ella Kaye, Malcolm
    Barrett, George Stagg, and Hanne Oberman for the patch.
  * Plain-text help shows \var markup by angle brackets.
  * The new experimental primitive function declare() is intended to
    eventually allow information about R code to be communicated to
    the interpreter, compiler, and code analysis tools. The syntax
    for declarations is still being developed.
  * Functions psmirnov(), qsmirnov() and rsmirnov() in package stats
    have had argument two.sided renamed to alternative, to take into
    account that the permutation distributions of the one-sided
    statistics can be different in the case of ties.  Consequence of
    PR#18582.
  * sort() is now an implicit S4 generic in methods.
  * Formatting and printing, format(z), print(z), of complex vectors
    z no longer zap relatively small real or imaginary parts to zero,
    fixing PR#16752.  This is an API change, as it was documented
    previously to round real and imaginary parts together on purpose,
    producing nicer looking output.  As mentioned, e.g. in the PR,
    this change is compatible with many other "R-like" programming
    environments.
    We have simplified the internal code and now basically format the
    real and imaginary parts independently of each other.
  * New experimental functions Tailcall() and Exec() to support
    writing stack-space-efficient recursive functions.
  * Where characters are attempted to be plotted by pdf(),
    postscript() and xfig() which are not in the selected 8-bit
    character set (most often Latin-1) and the R session is using a
    UTF-8 locale, the warning messages will show the UTF-8 character
    rather than its bytes and one dot will be substituted per
    character rather than per byte.  (Platforms whose iconv() does
    transliteration silently plot the transliteration.)
    In a UTF-8 locale some transliterations are now done with a
    warning (e.g., dashes and Unicode minus to hyphen, ligatures are
    expanded, permille (‰) is replaced by o/oo), although the OS may
    have got there first.  These are warnings as they will continue
    to be replaced by dots in earlier versions of R.
  * The matrix multiplication functions crossprod() and tcrossprod()
    are now also primitive and S3 generic, as %*% had become in R
    4.3.0.
  * source() and example() have a new optional argument catch.aborts
    which allows continued evaluation of the R code after an error.
  * The non-Quartz tiff() devices allow additional types of
    compression if supported by the platform's libtiff library.
  * The list of base and recommended package names is now provided by
    tools::standard_package_names().
  * cairo_pdf() and cairo_ps() default to onefile = TRUE to closer
    match pdf() and postscript().
  * New option catch.script.errors provides a documented way to catch
    errors and then continue in non-interactive use.
  * L %||% R newly in base is an expressive idiom for the phrases
    if(!is.null(L)) L else R or if(is.null(L)) R else L.
  * The return value from warnings() now always inherits from
    "warnings" as documented, now also in the case of no warnings
    where it previously returned NULL.
  * as.complex("1i") now returns 0 + 1i instead of NA with a warning.
  * z &lt;- c(NA, 1i) now keeps the imaginary part Im(z[1]) == 0, no
    longer coercing to NA_complex_.  Similarly, cumsum(z) correctly
    sums real and imaginary parts separately, i.e., without
    "crosstalk" in case of NAs.
  * On Alpine Linux iconv() now maps "latin2", "latin-2", "latin9"
    and "latin-9" to encoding names the OS knows about
    (case-insensitively).
  * iconv(sub = "Unicode") now always zero-pads to four (hex) digits,
    rather than to 4 or 8.  (This seems to have become the convention
    once Unicode restricted the number of Unicode points to 2^21 - 1
    and so will never need more than 6 digits.)
  * NCOL(NULL) now returns 0 instead of 1, for consistency with
    cbind().
  * The information for the Euro glyph missing from the Adobe .afm
    files for the Courier, Helvetica and Times families has been
    copied from their URW equivalents - this will improve vertical
    centring in the pdf() and postscript() devices.
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.12.0.  The changes are almost entirely cosmetic.
  * The included LAPACK sources have been updated to version 3.12.0
    and some further double-complex routines added.
  * There are new font families for the 2014--5 URW 2.0 fonts (see
    ?pdf) which are included in recent versions of Ghostscript.
    These have font widths for most Greek glyphs and a few others
    which were missing from the original versions (whose font
    families remain available for reproducibility, although
    Ghostscript-based viewers will render using the 2.0 versions).
  * Improve the large-n efficiency of as.matrix(&lt;dist&gt;), thanks an R
    contributors effort, notably by Tim Taylor and Heather Turner,
    see PR#18660.
  * The default and numeric methods of all.equal() get a check.class
    option.
  * zapsmall() gets new optional arguments, function mFUN and min.d,
    for extra flexibility; fulfills a wish in PR#18199.  Also, it is
    now an implicit S4 generic in package methods.
  * The Rd filter for aspell() gains an ignore argument.
  * New generic function sort_by(), primarily useful for the
    data.frame method which can be used to sort rows of a data frame
    by one or more columns.
  * The icence headers for the RPC code in src/extra/xdr have been
    updated to use the GPL-compatible licence published by Oracle
    America in 2010.
  * New function pkg2HTML() in tools to create single-page HTML
    reference manuals for R packages.
  * The byte code evaluator now uses less C stack space for recursive
    calls to byte-compiled functions. It also makes more of an effort
    to avoid allocations for scalar return values.
  * New completion option backtick (disabled by default) allows
    non-syntactic completions to be wrapped in backquotes. This is
    currently only useful for Jupyter notebooks via the IRkernel
    package, and may cause problems for other backends.
  INSTALLATION:
  * The parser has been updated to work with bison 3.8.2, which is
    now used for the pre-generated parsers in gram.c, file.c, and
    gramRd.c. A few parser error messages have changed, which may
    affect code that relies on exact messages.
  INSTALLATION on a UNIX-ALIKE:
  * System valgrind headers are now required to use configure option
  - -with-valgrind-instrumentation with value 1 or 2.
  * configure will warn if it encounters a 32-bit build, as that is
    nowadays almost untested.
  * Environment variable R_SYSTEM_ABI is no longer used and so no
    longer recorded in etc/Renviron (it was not on Windows and was
    only ever used when preparing package tools).
  * If the libdeflate library and headers are available, libdeflate
    rather than libz is used to (de)compress R objects in lazy-load
    databases.  Typically tasks spend up to 5% of their time on such
    operations, although creating lazy-data databases is one of the
    exceptions.
    This can be suppressed if the library is available by the
    configure option --without-libdeflate-compression.
  * configure option --enable-lto=check has not worked reliably since
    2019 and has been removed.
  * The minimum autoconf requirement for a maintainer build has been
    increased to autoconf 2.71.
    It is intended to increase this to 2.72 for R 4.5.0: the
    distributed configure file was generated using 2.72.
  * The minimum version requirement for an external LAPACK has been
    reduced to 3.9.0.
  * No default C++ compiler is set if no C++17 compiler is detected:
    there is no longer an automatic fallback to C++14 or C++11.
    Compilers from the last five years should have sufficient
    support: for others macros CXX and CXXSTD can be set in file
    config.site to provide a fallback if needed.
    The Objective-C++ compiler now by default uses the standard
    selected by R for C++ (currently C++17) rather than the default
    standard for the C++ compiler (which on macOS is still C++98).
  INSTALLATION on macOS:
  * A new configure option --with-newAccelerate makes use of Apple's
    'new' BLAS / LAPACK interfaces in their Accelerate framework.
    Those interfaces are only available in macOS 13.3 or later, and
    building requires SDK 13.3 or later (from the Command Line Tools
    or Xcode 14.3 or later).
    By default the option uses new Accelerate for BLAS calls: to also
    use it for LAPACK use option --with-newAccelerate=lapack.  The
    later interfaces provide LAPACK 3.9.1 rather than 3.2.1: 3.9.1 is
    from 2021-04 and does not include the improved algorithms
    introduced in LAPACK 3.10.0 (including for BLAS calls).
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools44, an update of the Rtools43 toolchain.  It is
    based on GCC 13 and newer versions of MinGW-W64, binutils and
    libraries (targeting 64-bit Intel CPUs).  R-devel can no longer
    be built using Rtools43 without changes.
  * Rtools44 has experimental support for 64-bit ARM (aarch64) CPUs
    _via_ the LLVM 17 toolchain using lld, clang/flang-new and
    libc++.
  UTILITIES:
  * R CMD check notes when S4-style exports are used without
    declaring a strong dependence on package methods.
  * tools::checkRd() (used by R CMD check) detects more problems with
    \Sexpr-based dynamic content, including bad nesting of \Sexprs
    and invalid arguments.
  * tools::checkRd() now reports Rd titles and section names ending
    in a period; this is ignored by R CMD check unless environment
    variable _R_CHECK_RD_CHECKRD_MINLEVEL_ is set to -5 or smaller.
  * R CMD check now notes Rd files without an \alias, as long
    documented in 'Writing R Extensions' §1.3.1.  The check for a
    missing \description has been moved from tools::checkRd() to
    tools::checkRdContents().
  * R CMD check now visits inst/NEWS.Rd and OS-specific man
    subdirectories when checking Rd files.
  * tools::checkDocFiles() and tools::checkRdContents() now also
    check internal Rd files by default, but "specially" (ignoring
    missing documentation of arguments).
  * R CMD Rdiff gets option --useEx.
  * R CMD check now warns on non-portable uses of Fortran KIND such
    as INTEGER(KIND=4) and REAL(KIND=8).
    To see the failing lines set environment variable
    _R_CHECK_FORTRAN_KIND_DETAILS_ to a true value.
  * When checking Rd files, R CMD check now notes some of the "lost
    braces" that tools::checkRd() finds.  Typical problems are Rd
    macros missing the initial backslash (e.g., code{...}), in-text
    set notation (e.g., {1, 2}, where the braces need escaping), and
    \itemize lists with \describe-style entries of the form
    \item{label}{description}.
  * R CMD INSTALL (and hence check) will compile C++ code with
  - DR_NO_REMAP if environment variable _R_CXX_USE_NO_REMAP_ is set
    to a true value.  It is planned that this will in future become
    the default for compiling C++.
  * The new built-in Rd macro \dontdiff{} can be used to mark example
    code whose output should be ignored when comparing check output
    to reference output (tests/Examples/&lt;pkg&gt;-Ex.Rout.save).  The
    \dontdiff tag, like \donttest, is _not_ shown on the rendered
    help page, so provides a clean alternative to ##
    IGNORE_RDIFF_(BEGIN|END) comments.
  * R CMD build when there is no NAMESPACE, now uses the recommended
    exportPattern("^[^.]"), instead of exporting everything.
  * R CMD check now warns about non-ASCII characters in the NAMESPACE
    file (in addition to R files). Such packages are not portable and
    may fail to install on some platforms.
  C-LEVEL FACILITIES:
  * Headers R_ext/Applic.h and R-ext/Linpack.h used to include
    R_ext/BLAS.h although this was undocumented and unneeded by their
    documented entry points.  They no longer do so.
  * New function R_missing(), factored out from do_missing(), used to
    fix PR#18579.
  * SEXP type S4SXP has been renamed to OBJSXP to support
    experimenting with alternative object systems.  The S4SXP value
    can still be used in C code but is now deprecated.  Based on
    contributions from the R Consortium's Object-Oriented Programming
    Working Group.
  * New function pow1p(x,y) for accurate (1+x)^y.
  * mkCharLenCE was incorrectly documented to take a size_t length
    but was implemented with int (and character strings in R are
    limited to 2^31 - 1 bytes).
  DEPRECATED AND DEFUNCT:
  * data() no longer handles zipped data from long-defunct (since R
    2.13.0) --use-zip-data installations.
  * The legacy graphics devices pictex() and xfig() are now
    deprecated.  They do not support recent graphics enhancements and
    their font handling is rudimentary. The intention is to retain
    them for historical interest as long as they remain somewhat
    functional.
  * Support for encoding = "MacRoman" has been removed from the pdf()
    and postscript() devices - this was a legacy encoding supporting
    classic macOS up to 2001 and no longer has universal libiconv
    support.
  * is.R() is deprecated as no other S dialect is known to be in use
    (and this could only identify historical dialects, not future
    ones).
    Further information on calls can be obtained by setting the
    environment variable _R_DEPRECATED_IS_R_ to error which turns the
    deprecation warning into an error and so by default gives a
    traceback.  (This is done by R CMD check --as-cran.)
  * UseMethod() no longer forwards local variables assigned in the
    generic function into method call environments before evaluating
    the method body. This makes method calls behave more like
    standard function calls and makes method code easier to analyze
    correctly.
  * The twelve as.data.frame.&lt;class&gt;() methods which were deprecated
    only via _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ and in R CMD
    check --as-cran are formally deprecated now in favour of calling
    as.data.frame() or as.data.frame.vector().  The deprecation
    "check" now works also when as.data.frame() is S4 generic thanks
    to Ivan Krylov.
  * The default method for the directional comparison operators &lt;, &gt;,
    &lt;=, and &gt;= now signals an error when one of the operands is a
    language object, i.e. a symbol or a call.
  * For terms.formula(), deprecate abb and neg.out arguments
    _formally_ in addition to just documenting it.
  BUG FIXES:
  * The methods package is more robust to not being attached to the
    search path.  More work needs to be done.
  * pairwise.t.test() misbehaved when subgroups had 0 DF for
    variance, even with pool.sd = TRUE.  (PR#18594 by Jack Berry).
  * Probability distribution functions [dpq]&lt;distrib&gt;(x, *), but also
    bessel[IKJY](x, .) now consistently preserve attributes(x) when
    length(x) == 0, e.g., for a 2 x 0 matrix, thanks to Karolis
    Koncevičius' report PR#18509.
  * Group "Summary" computations such as sum(1:3, 4, na.rm = 5, NA,
    7, na.rm = LL) now give an error instead of either 17 or NN for
    LL true or false, as proposed by Ivan Krylov on the R-devel
    mailing list.  (This also means it is now an error to specify
    na.rm more than once.)
  * as.complex(x) now returns complex(real = x, imaginary = 0) for
    _all_ numerical and logical x, notably also for NA or
    NA_integer_.
  * Directories are now omitted by file.copy(, recursive = FALSE) and
    in file.append() (PR#17337).
  * gsub() and sub() are now more robust to integer overflow when
    reporting errors caused by too large input strings (PR#18346).
  * Top-level handlers are now more robust to attempts to remove a
    handler whilst handlers are running (PR#18508).
  * The handling of Alt+F4 in dialogs created on Windows using
    GraphApp has been fixed (PR#13870).
  * density() more consistently computes grid values for the
    FFT-based convolution, following Robert Schlicht's analysis and
    proposal in PR#18337, correcting density values typically by a
    factor of about 0.999.  Argument old.coords = TRUE provides back
    compatibility.
  * palette.colors() gains a name argument that defaults to FALSE
    controlling whether the vector of colours that is returned has
    names (where possible).  PR#18529.
  * tools::xgettext() no longer extracts the (non-translatable) class
    names from warningCondition and errorCondition calls.
  * S3method(&lt;gen&gt;, &lt;class&gt;, &lt;func&gt;) in the NAMESPACE file now works
    (again) when &lt;func&gt; is visible from the namespace, e.g.,
    imported, or in base.
  * getParseData(f) now also works for a function defined in the
    first of several &lt;pkg&gt;/R/*.R source files, thanks to Kirill
    Müller's report and Duncan Murdoch's patch in PR#16756.
  * Rd \Sexpr macros with nested #ifdef conditionals were not
    processed.
  * A non-blocking connection with non-default encoding (such as a
    socket) now correctly returns from readLines() after new data has
    arrived also when its EOF had been reached previously.  Thanks to
    Peter Meilstrup's report on R-devel and Ivan Krylov's report and
    patch proposal in PR#18555.
  * tools::checkRdContents() failed to detect empty argument
    descriptions when they spanned multiple lines, including those
    generated by prompt().  These cases are now noted by R CMD check.
  * Plain-text help no longer outputs spurious colons in the
    arguments list (for multi-line \item labels in the Rd source).
  * kappa() and rcond() work correctly in more cases; kappa(., norm =
    "2") now warns that it computes the 1-norm with (default) exact =
    FALSE; prompted by Mikael Jagan's quite comprehensive PR#18543.
  * Rd skeletons generated by prompt() or promptData() now use a
    dummy title (so R CMD build works).  tools::checkRdContents() has
    been updated to detect such template leftovers, including from
    promptPackage().
  * When S4 method dispatch fails because no method was found, the
    error message now includes the signature argument names; thanks
    to Michael Chirico's proposal on the R-devel list.
  * withAutoprint({ .. }) now preserves srcrefs previously lost,
    thanks to Andrew Simmons' report plus fix in PR#18572.
  * transform.data.frame() no longer adjusts names; in particular,
    untransformed variables are kept as-is, including those with
    syntactically invalid names (PR#17890).
  * The keep.source option for Rd \Sexpr blocks is no longer ignored.
  * The formula methods for t.test() and wilcox.test() now catch when
    paired is passed, addressing PR#14359; use Pair(x1, x2) ~ 1 for a
    paired test.
  * The level reported in the browser prompt was often too large. It
    now shows the number of browser contexts on the stack.
  * For cbind() and rbind(), the optional deparse.level argument is
    now properly passed to methods, thanks to Mikael Jagan's PR#18579
    and comments there.
  * Some error and warning messages for large ('long vector')
    matrix(v, nr, nc) and dim(m) &lt;- d are now correct about sizes,
    using long long formatting, fixing PR#18612 (and more) reported
    by Mikael Jagan.
  * readChar(useBytes = TRUE) now terminates strings even when the
    underlying connection uses extra spaces in the input buffer.
    This fixes problems with extra garbage seen with gzip
    connections, PR#18605.
  * Named capture in PCRE regular expressions now works also with
    more than 127 named groups (PR#18588).
  * Datetime functions are now robust against long jumps when dealing
    with internal time zone changes.  This avoids confusing warnings
    about an invalid time zone, previously triggered by turning
    warnings into errors or handling them via tryCatch (PR#17966,
    PR#17780).
  * Datetime functions now restore even an empty TZ environment
    variable after internal time zone changes (PR#17724).  This makes
    results of datetime functions with this (typically unintentional)
    setting more predictable.
  * drop.terms(*) now drops response as by default, keep.response =
    FALSE, fixing PR#18564 thanks to Mikael Jagan.
  * dummy.coef(.) now also works for lm()-models with character
    categorical predictor variables rather than factor ones, fixing
    PR#18635 reported by Jinsong Zhao.
  * formals(f) &lt;- formals(f) now also works for a function w/o
    arguments and atomic _constant_ body(f).
  * Correct as.function(&lt;invalid list&gt;, .)'s error message.
  * removeSource() is yet more thorough in finding and removing
    "srcref" and the other source references from parsed R language
    chunks, fixing PR#18638 thanks to Andrew Simmons.
  * dgeom() is more accurate now, notably when its result is very
    small, fixing PR#18642 thanks to the proposal of Morten Welinder,
    also improving other instances where C level binom_raw(x, n, ..)
    has x == 0 or x== n.
  * warning() with options(warn = 1) has improved output for
    multi-line messages.
  * axis.Date() and axis.POSIXct() now respect the par("lab") setting
    for the number of pretty() intervals.
  * Comparisons for language objects (which are based on deparsing)
    are now more careful about using accurate deparsed results
    (PR#18676).
  * Plain-text help (Rd2txt) now correctly preserves blank lines
    following single-line \dontrun code.
  * &lt;POSIXlt&gt;[*] no longer sets wrong "balanced" attribute, fixing
    PR#18681 thanks to Mikael Jagan.
  * str(&lt;classed-call&gt;) now deparses the call as expected, fixing
    PR#18684, reported by Dave Slager.
  * In Rd examples, code following the closing brace of a \dontrun,
    \dontshow or \donttest tag on the same line is no longer skipped
    when R CMD check runs the examples.
  * as.data.frame(matrix(*, ncol=0)) now gets valid names() and
    colnames(); reported by Davis Vaughan on the R-devel list.
  * Internal Mathlib function stirlerr(n) is now almost fully
    (52-bit) accurate for all n &gt;= ~5.9 and more accurate also in the
    range 1 -- 5.9.  This entails small ("after 12th decimal")
    changes in density functions, e.g., dgamma() in _some_ regions of
    their support.  The fix was partly prompted by Morten Welinder's
    PR#18640.
  * Numbers like 9876543.2 are now considered non-integer by Mathlib
    internal R_nonint(), amending original fix of PR#15734.
  * Rd comment lines no longer cause broken paragraphs in the
    rendered PDF and plain-text help. In code blocks, pure comment
    lines (starting with %) no longer produce an empty line.
  * xtabs(Freq ~ .) now consistently defaults to na.action = na.pass,
    using na.rm = FALSE (added as an argument) when summing over Freq
    (PR#17770).
  * tools::testInstalledPackage() is no longer silent about failures
    from running examples or tests and its return code no longer
    ignores failures from checking vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1718366400">- CHANGES IN R 4.4.1:
  C-LEVEL FACILITIES:
  * Functions R_atof and R_strtod declared in header R_ext/Utils.h
    are now documented in 'Writing R Extensions' and so formally part
    of the API.
  * The non-API entry points Rf_setSVector, Rf_StringFalse,
    Rf_StringTrue and Rf_isBlankString have been added to those
    reported by R CMD check.
  * The new function Rf_allocLang is now available. This provides an
    alternative to the idiom of calling Rf_allocList followed by
    SET_TYPEOF.
  UTILITIES:
  * R CMD check now reports as warnings what gfortran calls 'Fortran
    2018 deleted features', all of which have long been marked as
    'obsolescent' and some of which were deleted in Fortran 2008 or
    earlier.  Fortran compilers are no longer required to support
    these.
  BUG FIXES:
  * as.numeric(), scan(), type.convert() and other places which use
    the internal C function R_strtod now require a _non-empty_ digit
    sequence in a decimal or binary exponent.  This aligns with the
    C/POSIX standard for strtod and with ?NumericConstants.
  * as.data.frame(m, make.names=NA) now works correctly for a matrix
    m with NA's in row names.
  * The error message from &lt;POSIXlt&gt;[["hour"]] and similar now
    mentions *[[, "hour"]], as wished for in PR#17409 and proposed by
    Michael Chirico.
  * qbinom() and potentially qpois(), qnbinom(), no longer sometimes
    fail accurate inversion (of pbinom(), etc), thanks to Christopher
    Chang's report and patch in PR#18711.
  * The internal help server on Windows can again serve requests sent
    in quick succession, fixing a regression in R 4.4.0.
  * debugcall(&lt;S3Generic&gt;()) now also works when a corresponding
    S4-generic version is in the methods cache (PR#18143).
  * Package tools' toTitleCase(ch0) now returns character(0) when ch0
    is of zero length; fixing PR#18724, reported by David Hugh Jones.
  * R CMD check is no longer broken (without a check result and no
    explanation in 00check.log) for a package which declares an
    invalid VignetteBuilder in DESCRIPTION but has no vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1730376000">- CHANGES IN R 4.4.2:
  C-LEVEL FACILITIES:
  * The S-compatibility macros F77_COM and F77_COMDECL defined in
    header R_ext/RS.h are deprecated and will be removed shortly.  We
    could find no record of their use.
  BUG FIXES:
  * Mathlib function lgammacor(x) no longer warns about underflow to
    zero for large x.
  * Text widths and heights were incorrectly reported by the Quartz
    device if the drawing context didn't exist yet (typically when
    drawing off-screen to a window that is yet to appear, see
    PR#18591).
  * The Quartz device could segfault in cases where paths with spaces
    are used in the new glyph drawing API.  Thanks to Tomek
    Gieorgijewski (PR#18758).
  * On macOS in R CRAN builds, it is again possible to read
    little-endian UTF-16 text with a BOM from a connection using
    encoding="UTF-16".  Users building R from source should avoid
    using the system libiconv in macOS 14.1 and later.
  * methods' internal .requirePackage() now re-enables primitive
    method dispatch when needed; thanks to Ivan Krylov for
    demystifying CRAN package check failures on the R-devel mailing
    list.</changelog>
</package>
<package pkgid="70241dce82ed3de88f09e9642143aa76618a3aef678f54a48d9a839b0a6ef01c215a2bb3ed3695aab9373c1da8b1fe0f63ffeee6656f5be202e932619e9d1888" name="R-nlme" arch="i586">
  <version epoch="0" ver="3.1.166" rel="51.0.2.2.sr20241103"/>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1620302400">- To get in sync with d:l:R:autoCRAN the Matrix package's split
  in -devel was reversed.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339200">- improved spec file according to comments of dimstar in
  https://build.opensuse.org/request/show/892685</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339201">- CHANGES IN R 4.1.0:
  FUTURE DIRECTIONS:
  * It is planned that the 4.1.x series will be the last to support
    32-bit Windows, with production of binary packages for that
    series continuing until early 2023.
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Data set esoph in package datasets now provides the correct
    numbers of controls; previously it had the numbers of cases added
    to these.  (Reported by Alexander Fowler in PR#17964.)
  NEW FEATURES:
  * www.omegahat.net is no longer one of the repositories known by
    default to setRepositories().  (Nowadays it only provides source
    packages and is often unavailable.)
  * Function package_dependencies() (in package tools) can now use
    different dependency types for direct and recursive dependencies.
  * The checking of the size of tarball in R CMD check --as-cran
    &lt;pkg&gt; may be tweaked via the new environment variable
    _R_CHECK_CRAN_INCOMING_TARBALL_THRESHOLD_, as suggested in
    PR#17777 by Jan Gorecki.
  * Using c() to combine a factor with other factors now gives a
    factor, an ordered factor when combining ordered factors with
    identical levels.
  * apply() gains a simplify argument to allow disabling of
    simplification of results.
  * The format() method for class "ftable" gets a new option justify.
    (Suggested by Thomas Soeiro.)
  * New ...names() utility.  (Proposed by Neal Fultz in PR#17705.)
  * type.convert() now warns when its as.is argument is not
    specified, as the help file always said it _should_.  In that
    case, the default is changed to TRUE in line with its change in
    read.table() (related to stringsAsFactor) in R 4.0.0.
  * When printing list arrays, classed objects are now shown _via_
    their format() value if this is a short enough character string,
    or by giving the first elements of their class vector and their
    length.
  * capabilities() gets new entry "Rprof" which is TRUE when R has
    been configured with the equivalent of --enable-R-profiling (as
    it is by default).  (Related to Michael Orlitzky's report
    PR#17836.)
  * str(xS4) now also shows extraneous attributes of an S4 object
    xS4.
  * Rudimentary support for vi-style tags in rtags() and R CMD rtags
    has been added.  (Based on a patch from Neal Fultz in PR#17214.)
  * checkRdContents() is now exported from tools; it and also
    checkDocFiles() have a new option chkInternal allowing to check
    Rd files marked with keyword "internal" as well.  The latter can
    be activated for R CMD check via environment variable
    _R_CHECK_RD_INTERNAL_TOO_.
  * New functions numToBits() and numToInts() extend the raw
    conversion utilities to (double precision) numeric.
  * Functions URLencode() and URLdecode() in package utils now work
    on vectors of URIs.  (Based on patch from Bob Rudis submitted
    with PR#17873.)
  * path.expand() can expand ~user on most Unix-alikes even when
    readline is not in use.  It tries harder to expand ~, for example
    should environment variable HOME be unset.
  * For HTML help (both dynamic and static), Rd file links to help
    pages in external packages are now treated as references to
    topics rather than file names, and fall back to a file link only
    if the topic is not found in the target package. The earlier rule
    which prioritized file names over topics can be restored by
    setting the environment variable _R_HELP_LINKS_TO_TOPICS_ to a
    false value.
  * c() now removes NULL arguments before dispatching to methods,
    thus simplifying the implementation of c() methods, _but_ for
    back compatibility keeps NULL when it is the first argument.
    (From a report and patch proposal by Lionel Henry in PR#17900.)
  * Vectorize()'s result function's environment no longer keeps
    unneeded objects.
  * Function ...elt() now propagates visibility consistently with
    ..n.  (Thanks to Lionel Henry's PR#17905.)
  * capture.output() no longer uses non-standard evaluation to
    evaluate its arguments.  This makes evaluation of functions like
    parent.frame() more consistent.  (Thanks to Lionel Henry's
    PR#17907.)
  * packBits(bits, type="double") now works as inverse of
    numToBits().  (Thanks to Bill Dunlap's proposal in PR#17914.)
  * curlGetHeaders() has two new arguments, timeout to specify the
    timeout for that call (overriding getOption("timeout")) and TLS
    to specify the minimum TLS protocol version to be used for
    https:// URIs (_inter alia_ providing a means to check for sites
    using deprecated TLS versions 1.0 and 1.1).
  * For nls(), an optional constant scaleOffset may be added to the
    denominator of the relative offset convergence test for cases
    where the fit of a model is expected to be exact, thanks to a
    proposal by John Nash.  nls(*, trace=TRUE) now also shows the
    convergence criterion.
  * Numeric differentiation _via_ numericDeriv() gets new optional
    arguments eps and central, the latter for taking central divided
    differences.  The latter can be activated for nls() via
    nls.control(nDcentral = TRUE).
  * nls() now passes the trace and control arguments to getInitial(),
    notably for all self-starting models, so these can also be fit in
    zero-noise situations via a scaleOffset.  For this reason, the
    initial function of a selfStart model must now have ... in its
    argument list.
  * bquote(splice = TRUE) can now splice expression vectors with
    attributes: this makes it possible to splice the result of
    parse(keep.source = TRUE).  (Report and patch provided by Lionel
    Henry in PR#17869.)
  * textConnection() gets an optional name argument.
  * get(), exists(), and get0() now signal an error if the first
    argument has length greater than 1.  Previously additional
    elements were silently ignored.  (Suggested by Antoine Fabri on
    R-devel.)
  * R now provides a shorthand notation for creating functions, e.g.
    \(x) x + 1 is parsed as function(x) x + 1.
  * R now provides a simple native forward pipe syntax |&gt;.  The
    simple form of the forward pipe inserts the left-hand side as the
    first argument in the right-hand side call.  The pipe
    implementation as a syntax transformation was motivated by
    suggestions from Jim Hester and Lionel Henry.
  * all.equal(f, g) for functions now by default also compares their
    environment(.)s, notably via new all.equal method for class
    function.  Comparison of nls() fits, e.g., may now need
    all.equal(m1, m2, check.environment = FALSE).
  * .libPaths() gets a new option include.site, allowing to _not_
    include the site library.  (Thanks to Dario Strbenac's suggestion
    and Gabe Becker's PR#18016.)
  * Lithuanian translations are now available.  (Thanks to Rimantas
    Zakauskas.)
  * names() now works for DOTSXP objects.  On the other hand, in
    R-lang, the R language manual, we now warn against relying on the
    structure or even existence of such dot-dot-dot objects.
  * all.equal() no longer gives an error on DOTSXP objects.
  * capabilities("cairo") now applies only to the file-based devices
    as it is now possible (if very unusual) to build R with Cairo
    support for those but not for X11().
  * There is optional support for tracing the progress of
    loadNamespace() - see its help.
  * (Not Windows.)  l10n_info() reports an additional element, the
    name of the encoding as reported by the OS (which may differ from
    the encoding part (if any) of the result from
    Sys.getlocale("LC_CTYPE").
  * New function gregexec() which generalizes regexec() to find _all_
    disjoint matches and well as all substrings corresponding to
    parenthesized subexpressions of the given regular expression.
    (Contributed by Brodie Gaslam.)
  * New function charClass() in package utils to query the
    wide-character classification functions in use (such as
    iswprint).
  * The names of quantile()'s result no longer depend on the global
    getOption("digits"), but quantile() gets a new optional argument
    digits = 7 instead.
  * grep(), sub(), regexp and variants work considerably faster for
    long factors with few levels.  (Thanks to Michael Chirico's
    PR#18063.)
  * Provide grouping of x11() graphics windows within a window
    manager such as Gnome or Unity; thanks to a patch by Ivan Krylov
    posted to R-devel.
  * The split() method for class data.frame now allows the f argument
    to be specified as a formula.
  * sprintf now warns on arguments unused by the format string.
  * New palettes "Rocket" and "Mako" for hcl.colors() (approximating
    palettes of the same name from the 'viridisLite' package).
    Contributed by Achim Zeileis.
  * The base environment and its namespace are now locked (so one can
    no longer add bindings to these or remove from these).
  * Rterm handling of multi-byte characters has been improved,
    allowing use of such characters when supported by the current
    locale.
  * Rterm now accepts ALT+ +xxxxxxxx sequences to enter Unicode
    characters as hex digits.
  * Environment variable LC_ALL on Windows now takes precedence over
    LC_CTYPE and variables for other supported categories, matching
    the POSIX behaviour.
  * duplicated() and anyDuplicated() are now optimized for integer
    and real vectors that are known to be sorted via the ALTREP
    framework. Contributed by Gabriel Becker via PR#17993.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 14
    and so packages that provide graphics devices should be
    reinstalled.
  * Graphics devices should now specify deviceVersion to indicate
    what version of the graphics engine they support.
  * Graphics devices can now specify deviceClip.  If TRUE, the
    graphics engine will never perform any clipping of output itself.
    The clipping that the graphics engine does perform (for both
    canClip = TRUE and canClip = FALSE) has been improved to avoid
    producing unnecessary artifacts in clipped output.
  * The grid package now allows gpar(fill) to be a linearGradient(),
    a radialGradient(), or a pattern().  The viewport(clip) can now
    also be a grob, which defines a clipping path, and there is a new
    viewport(mask) that can also be a grob, which defines a mask.
    These new features are only supported so far on the Cairo-based
    graphics devices and on the pdf() device.
  * (Not Windows.)  A warning is given when a Cairo-based type is
    specified for a png(), jpeg(), tiff() or bmp() device but Cairo
    is unsupported (so type = "Xlib" is tried instead).
  * grSoftVersion() now reports the versions of FreeType and
    FontConfig if they are used directly (not _via_ Pango), as is
    most commonly done on macOS.
  C-LEVEL FACILITIES:
  * The _standalone_ libRmath math library and R's C API now provide
    log1pexp() again as documented, and gain log1mexp().
  INSTALLATION on a UNIX-ALIKE:
  * configure checks for a program pkgconf if program pkg-config is
    not found.  These are now only looked for on the path (like
    almost all other programs) so if needed specify a full path to
    the command in PKG_CONFIG, for example in file config.site.
  * C99 function iswblank is required - it was last seen missing ca
    2003 so the workaround has been removed.
  * There are new configure options --with-internal-iswxxxxx,
  - -with-internal-towlower and --with-internal-wcwidth which allows
    the system functions for wide-character classification,
    case-switching and width (wcwidth and wcswidth) to be replaced by
    internal ones.  The first has long been used on macOS, AIX (and
    Windows) but this enables it to be unselected there and selected
    for other platforms (it is the new default on Solaris).  The
    second is new in this version of R and is selected by default on
    macOS and Solaris.  The third has long been the default and
    remains so as it contains customizations for East Asian
    languages.
    System versions of these functions are often minimally
    implemented (sometimes only for ASCII characters) and may not
    cover the full range of Unicode points: for example Solaris (and
    Windows) only cover the Basic Multilingual Plane.
  * Cairo installations without X11 are more likely to be detected by
    configure, when the file-based Cairo graphics devices will be
    available but not X11(type = "cairo").
  * There is a new configure option --with-static-cairo which is the
    default on macOS.  This should be used when only static cairo
    (and where relevant, Pango) libraries are available.
  * Cairo-based graphics devices on platforms without Pango but with
    FreeType/FontConfig will make use of the latter for font
    selection.
  LINK-TIME OPTIMIZATION on a UNIX-ALIKE:
  * Configuring with flag --enable-lto=R now also uses LTO when
    installing the recommended packages.
  * R CMD INSTALL and R CMD SHLIB have a new flag --use-LTO to use
    LTO when compiling code, for use with R configured with
  - -enable-lto=R.  For R configured with --enable-lto, they have
    the new flag --no-use-LTO.
    Packages can opt in or out of LTO compilation _via_ a UseLTO
    field in the DESCRIPTION file.  (As usual this can be overridden
    by the command-line flags.)
  BUILDING R on Windows:
  * for GCC &gt;= 8, FC_LEN_T is defined in config.h and hence character
    lengths are passed from C to Fortran in _inter alia_ BLAS and
    LAPACK calls.
  * There is a new text file src/gnuwin32/README.compilation, which
    outlines how C/Fortran code compilation is organized and
    documents new features:
  * R can be built with Link-Time Optimization with a suitable
    compiler - doing so with GCC 9.2 showed several
    inconsistencies which have been corrected.
  * There is support for cross-compiling the C and Fortran code
    in R and standard packages on suitable (Linux) platforms.
    This is mainly intended to allow developers to test later
    versions of compilers - for example using GCC 9.2 or 10.x has
    detected issues that GCC 8.3 in Rtools40 does not.
  * There is experimental support for cross-building R packages
    with C, C++ and/or Fortran code.
  * The R installer can now be optionally built to support a single
    architecture (only 64-bit or only 32-bit).
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++14 where
    available (which it is on all currently checked platforms): if
    not (as before) C++11 is used if available otherwise C++ is not
    supported.
    Packages which specify C++11 will still be installed using C++11.
    C++14 compilers may give deprecation warnings, most often for
    std::random_shuffle (deprecated in C++14 and removed in C++17).
    Either specify C++11 (see 'Writing R Extensions') or modernize
    the code and if needed specify C++14.  The latter has been
    supported since R 3.4.0 so the package's DESCRIPTION would need
    to include something like
    Depends: R (&gt;= 3.4)
  PACKAGE INSTALLATION on Windows:
  * R CMD INSTALL and R CMD SHLIB make use of their flag --use-LTO
    when the LTO_OPT make macro is set in file etc/${R_ARCH}/Makeconf
    or in a personal/site Makevars file.  (For details see 'Writing R
    Extensions' SS4.5.)
    This provides a valuable check on code consistency.  It does work
    with GCC 8.3 as in Rtools40, but that does not detect everything
    the CRAN checks with current GCC do.
  PACKAGE INSTALLATION on macOS:
  * The default personal library directory on builds with
  - -enable-aqua (including CRAN builds) now differs by CPU type,
    one of
    ~/Library/R/x86_64/x.y/library
    ~/Library/R/arm64/x.y/library
    This uses the CPU type R (and hence the packages) were built for,
    so when a x86_64 build of R is run under Rosetta emulation on an
    arm64 Mac, the first is used.
  UTILITIES:
  * R CMD check can now scan package functions for bogus return
    statements, which were possibly intended as return() calls (wish
    of PR#17180, patch by Sebastian Meyer). This check can be
    activated via the new environment variable
    _R_CHECK_BOGUS_RETURN_, true for --as-cran.
  * R CMD build omits tarballs and binaries of previous builds from
    the top-level package directory.  (PR#17828, patch by Sebastian
    Meyer.)
  * R CMD check now runs sanity checks on the use of LazyData, for
    example that a data directory is present and that
    LazyDataCompression is not specified without LazyData and has a
    documented value.  For packages with large LazyData databases
    without specifying LazyDataCompression, there is a reference to
    the code given in 'Writing R Extensions' SS1.1.6 to test the
    choice of compression (as in all the CRAN packages tested a
    non-default method was preferred).
  * R CMD build removes LazyData and LazyDataCompression fields from
    the DESCRIPTION file of packages without a data directory.
  ENCODING-RELATED CHANGES:
  * The parser now treats \Unnnnnnnn escapes larger than the upper
    limit for Unicode points (\U10FFFF) as an error as they cannot be
    represented by valid UTF-8.
    Where such escapes are used for outputting non-printable
    (including unassigned) characters, 6 hex digits are used (rather
    than 8 with leading zeros).  For clarity, braces are used, for
    example \U{0effff}.
  * The parser now looks for non-ASCII spaces on Solaris (as
    previously on most other OSes).
  * There are warnings (including from the parser) on the use of
    unpaired surrogate Unicode points such as \uD834.  (These cannot
    be converted to valid UTF-8.)
  * Functions nchar(), tolower(), toupper() and chartr() and those
    using regular expressions have more support for inputs with a
    marked Latin-1 encoding.
  * The character-classification functions used (by default) to
    replace the system iswxxxxx functions on Windows, macOS and AIX
    have been updated to Unicode 13.0.0.
    The character-width tables have been updated to include new
    assignments in Unicode 13.0.0.
  * The code for evaluating default (extended) regular expressions
    now uses the same character-classification functions as the rest
    of R (previously they differed on Windows, macOS and AIX).
  * There is a build-time option to replace the system's
    wide-character wctrans C function by tables shipped with R: use
    configure option --with-internal-towlower or (on Windows)
  - DUSE_RI18N_CASE in CFLAGS when building R.  This may be needed
    to allow tolower() and toupper() to work with Unicode characters
    beyond the Basic Multilingual Plane where not supported by system
    functions (e.g. on Solaris where it is the new default).
  * R is more careful when truncating UTF-8 and other multi-byte
    strings that are too long to be printed, passed to the system or
    libraries or placed into an internal buffer.  Truncation will no
    longer produce incomplete multibyte characters.
  DEPRECATED AND DEFUNCT:
  * Function plclust() from the package stats and
    package.dependencies(), pkgDepends(), getDepList(),
    installFoundDepends(), and vignetteDepends() from package tools
    are defunct.
  * Defunct functions checkNEWS() and readNEWS() from package tools
    and CRAN.packages() from utils have been removed.
  * R CMD config CXXCPP is defunct (it was deprecated in R 3.6.2).
  * parallel::detectCores() drops support for Irix (retired in 2013).
  * The LINPACK argument to chol.default(), chol2inv(),
    solve.default() and svd() has been defunct since R 3.1.0.  It was
    silently ignored up to R 4.0.3 but now gives an error.
  * Subsetting/indexing, such as ddd[*] or ddd$x on a DOTSXP
    (dot-dot-dot) object ddd has been disabled; it worked by accident
    only and was undocumented.
  BUG FIXES:
  * Many more C-level allocations (mainly by malloc and strdup) are
    checked for success with suitable alternative actions.
  * Bug fix for replayPlot(); this was turning off graphics engine
    display list recording if a recorded plot was replayed in the
    same session.  The impact of the bug became visible if resize the
    device after replay OR if attempted another savePlot() after
    replay (empty display list means empty screen on resize or empty
    saved plot).
  * R CMD check etc now warn when a package exports non-existing S4
    classes or methods, also in case of no "methods" presence.
    (Reported by Alex Bertram; reproducible example and patch by
    Sebastian Meyer in PR#16662.)
  * boxplot() now also accepts calls for labels such as ylab, the
    same as plot().  (Reported by Marius Hofert.)
  * The help page for xtabs() now correctly states that addNA is
    setting na.action = na.pass among others.  (Reported as PR#17770
    by Thomas Soeiro.)
  * The R CMD check &lt;pkg&gt; gives a longer and more comprehensible
    message when DESCRIPTION misses dependencies, e.g., in Imports:.
    (Thanks to the contributors of PR#17179.)
  * update.default() now calls the generic update() on the formula to
    work correctly for models with extended formulas.  (As reported
    and suggested by Neal Fultz in PR#17865.)
  * The horizontal position of leaves in a dendrogram is now correct
    also with center = FALSE.  (PR#14938, patch from Sebastian
    Meyer.)
  * all.equal.POSIXt() no longer warns about and subsequently ignores
    inconsistent "tzone" attributes, but describes the difference in
    its return value (PR#17277).  This check can be disabled _via_
    the new argument check.tzone = FALSE as suggested by Sebastian
    Meyer.
  * as.POSIXct() now populates the "tzone" attribute from its tz
    argument when x is a logical vector consisting entirely of NA
    values.
  * x[[2^31]] &lt;- v now works.  (Thanks to the report and patch by
    Suharto Anggono in PR#17330.)
  * In log-scale graphics, axis() ticks and label positions are now
    computed more carefully and symmetrically in their range,
    typically providing _more_ ticks, fulfilling wishes in PR#17936.
    The change really corresponds to an improved axisTicks() (package
    grDevices), potentially influencing grid and lattice, for
    example.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now correct to at
    least five digits where it was catastrophically wrong,
    previously.
  * sum(df) and similar "Summary"- and "Math"-group member functions
    now work for data frames df with logical columns, notably also of
    zero rows.  (Reported to R-devel by Martin "b706".)
  * unsplit() had trouble with tibbles due to unsound use of rep(NA,
    len)-indexing, which should use NA_integer_ (Reported to R-devel
    by Mario Annau.)
  * pnorm(x, log.p = TRUE) underflows to -Inf slightly later.
  * show(&lt;hidden S4 generic&gt;) prints better and without quotes for
    non-hidden S4 generics.
  * read.table() and relatives treated an "NA" column name as missing
    when check.names = FALSE PR#18007.
  * Parsing strings containing UTF-16 surrogate pairs such as
    "\uD834\uDD1E" works better on some (uncommon) platforms.
    sprintf("%X", utf8ToInt("\uD834\uDD1E")) should now give "1D11E"
    on all platforms.
  * identical(x,y) is no longer true for differing DOTSXP objects,
    fixing PR#18032.
  * str() now works correctly for DOTSXP and related exotics, even
    when these are doomed.
    Additionally, it no longer fails for lists with a class and
    "irregular" method definitions such that e.g. lapply(*) will
    necessarily fail, as currently for different igraph objects.
  * Too long lines in environment files (e.g. Renviron) no longer
    crash R. This limit has been increased to 100,000 bytes.
    (PR#18001.)
  * There is a further workaround for FreeType giving incorrect
    italic font faces with cairo-based graphics devices on macOS.
  * add_datalist(*, force = TRUE) (from package tools) now actually
    updates an existing data/datalist file for new content.  (Thanks
    to a report and patch by Sebastian Meyer in PR#18048.)
  * cut.Date() and cut.POSIXt() could produce an empty last interval
    for breaks = "months" or breaks = "years".  (Reported as PR#18053
    by Christopher Carbone.)
  * Detection of the encoding of 'regular' macOS locales such as
    en_US (which is UTF-8) had been broken by a macOS change:
    fortunately these are now rarely used with en_US.UTF-8 being
    preferred.
  * sub() and gsub(pattern, repl, x, *) now keep attributes of x such
    as names() also when pattern is NA (PR#18079).
  * Time differences ("difftime" objects) get a replacement and a
    rep() method to keep "units" consistent.  (Thanks to a report and
    patch by Nicolas Bennett in PR#18066.)
  * The \RdOpts macro, setting defaults for \Sexpr options in an Rd
    file, had been ineffective since R 2.12.0: it now works again.
    (Thanks to a report and patch by Sebastian Meyer in PR#18073.)
  * mclapply and pvec no longer accidentally terminate parallel
    processes started before by mcparallel or related calls in
    package parallel (PR#18078).
  * grep and other functions for evaluating (extended) regular
    expressions handle in Unicode also strings not explicitly flagged
    UTF-8, but flagged native when running in UTF-8 locale.
  * Fixed a crash in fifo implementation on Windows (PR#18031).
  * Binary mode in fifo on Windows is now properly detected from
    argument open (PR#15600, PR#18031).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1622808000">- The line %{__install} -m 755 -d %{_infodir}
  no longer works in TW or Factory.
  But without that line it works everywhere. So this instruction
  was commented out of the spec file.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1628596800">- CHANGES IN R 4.1.1:
  NEW FEATURES:
  * require(pkg, quietly = TRUE) is quieter and in particular does
    not warn if the package is not found.
  DEPRECATED AND DEFUNCT:
  * Use of ftp:// URIs should be regarded as deprecated, with
    on-going support confined to method = "libcurl" and not routinely
    tested.  (Nowadays no major browser supports them.)
  * The non-default method = "internal" is deprecated for http:// and
    ftp:// URIs for both download.file and url.
  * On Windows, method = "wininet" is deprecated for http://,
    https:// and ftp:// URIs for both download.file and url.  (A
    warning is only given for ftp://.)
    For ftp:// URIs the default method is now "libcurl" if available
    (which it is on CRAN builds).
    method = "wininet" remains the default for http:// and https://
    URIs but if libcurl is available, using method = "libcurl" is
    preferred.
  INSTALLATION:
  * make check now works also without a LaTeX installation.  (Thanks
    to Sebastian Meyer's PR#18103.)
  BUG FIXES:
  * make check-devel works again in an R build configured with
  - -without-recommended-packages.
  * qnbinom(p, size, mu) for large size/mu is correct now in a range
    of cases (PR#18095); similarly for the (size, prob)
    parametrization of the negative binomial.  Also qpois() and
    qbinom() are better and or faster for extreme cases.  The
    underlying C code has been modularized and is common to all four
    cases of discrete distributions.
  * gap.axis is now part of the axis() arguments which are passed
    from bxp(), and hence boxplot().  (Thanks to Martin Smith's
    report and suggestions in PR#18109.)
  * .First and .Last can again be set from the site profile.
  * seq.int(from, to, *) and seq.default(..) now work better in large
    range cases where from-to is infinite where the two boundaries
    are finite.
  * all.equal(x,y) now returns TRUE correctly also when several
    entries of abs(x) and abs(y) are close to .Machine$double.xmax,
    the largest finite numeric.
  * model.frame() now clears the object bit when removing the class
    attribute of a value via na.action (PR#18100).
  * charClass() now works with multi-character strings on Windows
    (PR#18104, fixed by Bill Dunlap).
  * encodeString() on Solaris now works again in Latin-1 encoding on
    characters represented differently in UTF-8.  Support for
    surrogate pairs on Solaris has been improved.
  * file.show() on Windows now works with non-ASCII path names
    representable in the current native encoding (PR#18132).
  * Embedded R on Windows can now find R home directory via the
    registry even when installed only for the current user
    (PR#18135).
  * pretty(x) with finite x now returns finite values also in the
    case where the extreme x values are close in size to the maximal
    representable number .Machine$double.xmax.
    Also, it's been tweaked for very small ranges and when a boundary
    is close (or equal) to zero; e.g., pretty(c(0,1e-317)) no longer
    has negative numbers, currently still warning about a very small
    range, and pretty(2^-(1024 - 2^-1/(c(24,10)))) is more accurate.
  * The error message for not finding vignette files when weaving has
    correct file sizes now. (Thanks to Sebastian Meyer's PR#18154.)
  * dnbinom(20, &lt;large&gt;, 1) now correctly gives 0, and similar cases
    are more accurate with underflow precaution.  (Reported by Francisco Vera Alcivar in PR#18072.)</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635163200">- repaired https://bugzilla.suse.com/show_bug.cgi?id=1191380
  (rpmacros now go to rpmmacrodir)
- minor clean-ups in spec file</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635768000">- CHANGES IN R 4.1.2:
  C-LEVEL FACILITIES:
  * The workaround in headers R.h and Rmath.h (using namespace std;)
    for the Oracle Developer Studio compiler is no longer needed now
    C++11 is required so has been removed.  A couple more usages of
    log() (which should have been std::log()) with an int argument
    are reported on Solaris.
  * The undocumented limit of 4095 bytes on messages from the
    S-compatibility macros PROBLEM and MESSAGE is now documented and
    longer messages will be silently truncated rather than
    potentially causing segfaults.
  * If the R_NO_SEGV_HANDLER environment variable is non-empty, the
    signal handler for SEGV/ILL/BUS signals (which offers recovery
    user interface) is not set. This allows more reliable debugging
    of crashes that involve the console.
  DEPRECATED AND DEFUNCT:
  * The legacy S-compatibility macros PROBLEM, MESSAGE, ERROR, WARN,
    WARNING, RECOVER, ... are deprecated and will be hidden in R
    4.2.0. R's native interface of Rf_error and Rf_warning has long
    been preferred.
  BUG FIXES:
  * .mapply(F, dots, .) no longer segfaults when dots is not a list
    and uses match.fun(F) as always documented; reported by Andrew
    Simmons in PR#18164.
  * hist(&lt;Date&gt;, ...) and hist(&lt;POSIXt&gt;, ...)  no longer pass
    arguments for rect() (such as col and density) to axis().
    (Thanks to Sebastian Meyer's PR#18171.)
  * \Sexpr{ch} now preserves Encoding(ch). (Thanks to report and
    patch by Jeroen Ooms in PR#18152.)
  * Setting the RNG to "Marsaglia-Multicarry" e.g., by RNGkind(), now
    warns in more places, thanks to Andr'e Gillibert's report and
    patch in PR#18168.
  * gray(numeric(), alpha=1/2) no longer segfaults, fixing PR#18183,
    reported by Till Krenz.
  * Fixed dnbinom(x, size=&lt;very_small&gt;, .., log=TRUE) regression,
    reported by Martin Morgan.
  * as.Date.POSIXlt(x) now keeps names(x), thanks to Davis Vaughan's
    report and patch in PR#18188.
  * model.response() now strips an "AsIs" class typically, thanks to
    Duncan Murdoch's report and other discussants in PR#18190.
  * try() is considerably faster in case of an error and long call,
    as e.g., from some do.call().  Thanks to Alexander Kaever's
    suggestion posted to R-devel.
  * qqline(y = &lt;object&gt;) such as y=I(.), now works, see also
    PR#18190.
  * Non-integer mgp par() settings are now handled correctly in
    axis() and mtext(), thanks to Mikael Jagan and Duncan Murdoch's
    report and suggestion in PR#18194.
  * formatC(x) returns length zero character() now, rather than ""
    when x is of length zero, as documented, thanks to Davis
    Vaughan's post to R-devel.
  * removeSource(fn) now retains (other) attributes(fn).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1647000000">- CHANGES IN R 4.1.3:
  NEW FEATURES:
  * The default version of Bioconductor has been changed to 3.14.
    (This is used by setRepositories and the menus in GUIs.)
  UTILITIES:
  * R CMD check --as-cran has a workaround for a bug in versions of
    file up to at least 5.41 which mis-identify DBF files last
    changed in 2022 as executables.
  C-LEVEL FACILITIES:
  * The legacy S-compatibility macros SINGLE_* in R_ext/Constants.h
    (included by R.h) are deprecated and will be removed in R 4.2.0.
  BUG FIXES:
  * Initialization of self-starting nls() models with initialization
    functions following the pre-R-4.1.0 API (without the ...
    argument) works again for now, with a deprecation warning.
  * Fixed quoting of ~autodetect~ in Java setting defaults to avoid
    inadvertent user lookup due to leading ~, reported in PR#18231 by
    Harold Gutch.
  * substr(., start, stop) &lt;- v now treats _negative_ stop values
    correctly.  Reported with a patch in PR#18228 by Brodie Gaslam.
  * Subscripting an array x without dimnames by a
    length(dim(x))-column character matrix gave "random" non-sense,
    now an error; reported in PR#18244 by Mikael Jagan.
  * ...names() now matches names(list(...)) closely, fixing PR#18247.
  * all.equal(*, scale = s) now works as intended when length(s) &gt; 1,
    partly thanks to Michael Chirico's PR#18272.
  * print(x) for long vectors x now also works for named atomic
    vectors or lists and prints the correct number when reaching the
    getOption("max.print") limit; partly thanks to a report and
    proposal by Hugh Parsonage to the R-devel list.
  * all.equal(&lt;selfStart&gt;, *) no longer signals a deprecation
    warning.
  * reformulate(*, response=r) gives a helpful error message now when
    length(r) &gt; 1, thanks to Bill Dunlap's PR#18281.
  * Modifying globalCallingHandlers inside withCallingHandlers() now
    works or fails correctly, thanks to Henrik Bengtsson's PR#18257.
  * hist(&lt;Date&gt;, breaks = "days") and hist(&lt;POSIXt&gt;, breaks = "secs")
    no longer fail for inputs of length 1.
  * qbeta(.001, .9, .009) and similar cases now converge correctly
    thanks to Ben Bolker's report in PR#17746.
  * window(x, start, end) no longer wrongly signals "'start' cannot
    be after 'end'", fixing PR#17527 and PR#18291.
  * data() now checks that its (rarely used) list argument is a
    character vector - a couple of packages passed other types and
    gave incorrect results.
  * which() now checks its arr.ind argument is TRUE rather coercing
    to logical and taking the first element - which gave incorrect
    results in package code.
  * model.weights() and model.offset() more carefully extract their
    model components, thanks to Ben Bolker and Tim Taylor's R-devel
    post.
  * list.files(recursive = TRUE) now shows all broken symlinks
    (previously, some of them may have been omitted, PR#18296).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1650628800">- CHANGES IN R 4.2.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * The formula method of aggregate() now matches the generic in
    naming its first argument x (resolving PR#18299 by Thomas
    Soeiro).
    This means that calling aggregate() with a formula as a named
    first argument requires name formula in earlier versions of R and
    name x now, so portable code should not name the argument (code
    in many packages did).
  * Calling &amp;&amp; or || with either argument of length greater than one
    now gives a warning (which it is intended will become an error).
  * Calling if() or while() with a condition of length greater than
    one gives an error rather than a warning.  Consequently,
    environment variable _R_CHECK_LENGTH_1_CONDITION_ no longer has
    any effect.
  * Windows users should consult the WINDOWS section below for some
    profound changes including
  * Support for 32-bit builds has been dropped.
  * UTF-8 locales are used where available.
  * The default locations for the R installation and personal
    library folder have been changed.
    Thanks to Tomas Kalibera for months of work on the Windows port
    for this release.
  NEW FEATURES:
  * matrix(x, n, m) now warns in more cases where length(x) differs
    from n * m, as suggested by Abby Spurdle and Wolfgang Huber in
    Feb 2021 on the R-devel mailing list.
    This warning can be turned into an error by setting environment
    variable _R_CHECK_MATRIX_DATA_ to TRUE: R CMD check --as-cran
    does so unless it is already set.
  * Function file_test() in package utils gains tests for symlinks,
    readability and writability.
  * capabilities("libxml") is now false.
    The description of capabilities("http/ftp") now reflects that it
    refers to the default method, no longer the internal one.
  * simplify2array() gains an except argument for controlling the
    exceptions used by sapply().
  * Environment variables R_LIBS_USER and R_LIBS_SITE are both now
    set to the R system default if unset or empty, and can be set to
    NULL to indicate an empty list of user or site library
    directories.
  * The warning for axis()(-like) calls in cases of relatively small
    ranges (typically in log-scale situations) is slightly improved
    _and_ suppressed from explicit calls to .axisPars() as has always
    been the intention.
  * The contrasts setter function `contrasts&lt;-` gains an explicit
    default how.many = NULL rather than just using missing(how.many).
  * grid.pretty() gains a new optional argument n = 5.
  * There is a new function .pretty() with option bounds as a
    technical-utility version of pretty().  It and pretty() gain a
    new argument f.min with a better than back-compatible default.
  * Function grDevices::axisTicks() and related functions such as
    graphics::axis() work better, notably for the log scale; partly
    because of the pretty() improvements, but also because care is
    taken e.g., when ylim is finite but diff(ylim) is infinite.
  * nclass.FD() gains a digits option.
  * The R Mathlib internal C function bd0() (called indirectly from a
    dozen probability density and distribution functions such as
    dpois(), dbinom(), dgamma(), pgamma() _etc_) has been
    complemented by a more sophisticated and (mostly) more accurate C
    function ebd0(), currently called only by internal dpois_raw()
    improving accuracy for R level dpois() and potentially others
    calling it such as dnbinom(), dgamma() or pgamma().  (Thanks to
    Morten Welinder's PR#15628.)
  * write.ftable() gains sep = " " argument as suggested by Thomas
    Soeiro.
  * The names of the locale categories supported by R's
    Sys.getlocale() and Sys.setlocale() are now provided by variable
    .LC.categories in the base namespace.
  * The Date and POSIXt methods for hist() and the histogram method
    for plot() now also use the new default col = "lightgray" in
    consistency with the corresponding change to hist()'s default for
    R 4.0.0.
  * hist.default() gains new fuzz argument, and the histogram plot
    method no longer uses fractional axis ticks when displaying
    counts ("Frequency").
  * mapply() and hence Map() now also obey the "max-or-0-if-any"
    recycling rule, such that, e.g., Map(`+`, 1:3, 1[0]) is valid
    now.
  * as.character(&lt;obj&gt;) for "hexmode" or "octmode" objects now
    fulfils the important basic rule as.character(x)[j] ===
    as.character(x[j]).
  * The set utility functions, notably intersect() have been tweaked
    to be more consistent and symmetric in their two set arguments,
    also preserving a common mode.
  * substr(ch, start,end) &lt;- new now e.g., preserves names(ch); ditto
    for substring(), thanks to a patch from Brodie Gaslam.
  * plot(&lt;lm&gt;) gains a extend.ylim.f argument, in partial response to
    PR#15285; further PR#17784 is fixed thanks to several
    contributors and a patch by Elin Waring.  The Cook's dist
    contours get customizable via cook.col and cook.lty with a
    different default color and their legend is nicer by default and
    customizable via cook.legendChanges.
  * Attempting to subset an object that is not subsettable now
    signals an error of class notSubsettableError. The
    non-subsettable object is contained in the object field of the
    error condition.
  * Subscript-out-of-bounds errors are now signaled as errors of
    class subscriptOutOfBoundsError.
  * Stack-overflow errors are now signaled as errors inheriting from
    class stackOverflowError. See ?stackOverflowError for more
    details.
  * New partly experimental Sys.setLanguage() utility, solving the
    main problem of PR#18055.
  * gettext() and gettextf() get a new option trim = TRUE which when
    set to false allows translations for strings such as "Execution
    halted\n" typical for C code.
  * An experimental implementation of hash tables is now available.
    See ?hashtab for more details.
  * identical() gains a extptr.as.ref argument for requesting that
    external pointer objects be compared as reference objects.
  * reorder() gets an argument decreasing which it passes to sort()
    for level creation; based on the wish and patch by Thomas Soeiro
    in PR#18243.
  * as.vector() gains a data.frame method which returns a simple
    named list, also clearing a long standing 'FIXME' to enable
    as.vector(&lt;data.frame&gt;, mode="list").  This breaks code relying
    on as.vector(&lt;data.frame&gt;) to return the unchanged data frame.
  * legend() is now vectorized for arguments cex, x.intersp, and
    text.width.  The latter can now also be specified as a vector
    (one element for each column of the legend) or as NA for
    computing a proper column wise maximum value of strwidth(legend).
    The argument y.intersp can be specified as a vector with one
    entry for each row of the legend.
    legend() also gains new arguments title.cex and title.font.
    Thanks to Swetlana Herbrandt.
  * Deparsing no longer remaps attribute names dim, dimnames, levels,
    names and tsp to historical S-compatible names (which structure()
    maps back).
  * sample() and sample.int() have additional sanity checks on their
    size and n arguments.
    all.equal.numeric() gains a sanity check on its tolerance
    argument - calling all.equal(a, b, c) for three numeric vectors
    is a surprisingly common error.
    mean(na.rm =), rank(na.last =), barplot(legend.text =),
    boxplot(), contour(drawlabels =), polygon(border =) and
    methods::is(class2 =) have more robust sanity checks on their
    arguments.
    R CMD Rd2pdf (used by R CMD check) has a more robust sanity check
    on the format of \alias{} commands.
  * psigamma(x, deriv) for negative x now also works for deriv = 4
    and 5; their underlying C level dpsifn() is documented in
    'Writing R Extensions'.
  * The HTML help system now uses HTML5 (wish of PR#18149).
  * ks.test() now provides exact p-values also with ties and MC
    p-values in the two-sample (Smirnov) case.  By Torsten Hothorn.
  * ks.test() gains a formula interface, with y ~ 1 for the
    one-sample (Kolmogorov) test and y ~ group for the two-sample
    (Smirnov) test.  Contributed by Torsten Hothorn.
  * The return value from ks.test() now has class c("ks.test",
    "htest") - packages using try() need to take care to use
    inherits() and not == on the class.
  * New functions psmirnov(), qsmirnov() and rsmirnov() in package
    stats implementing the asymptotic and exact distributions of the
    two-sample Smirnov statistic.
  * iconv() now allows sub = "c99" to use C99-style escapes for UTF-8
    inputs which cannot be converted to encoding to.
  * In a forward pipe |&gt; expression it is now possible to use a named
    argument with the placeholder _ in the rhs call to specify where
    the lhs is to be inserted.  The placeholder can only appear once
    on the rhs.
  * The included LAPACK sources have been updated to version 3.10.0,
    except for the four Fortran 77 routines which 3.10.0 has
    re-implemented in Fortran 90 (where the older versions have been
    retained as the R build process does not support Fortran 90).
  * path.expand() and most other uses of tilde expansion now warn if
    a path would be too long if expanded.  (An exception is
    file.exists(), which silently returns false.)
  * trunc(&lt;Date&gt;, *) now supports units = "months" or "years" for
    consistency with the POSIXt method, thanks to Dirk Eddelbuettel's
    proposal in PR#18099.
  * list2DF() now checks that its arguments are of the same length,
    rather than use recycling.
  * The HTML help system has several new features: LaTeX-like math
    can be typeset using either KaTeX or MathJax, usage and example
    code is highlighted using Prism, and for dynamic help the output
    of examples and demos can be shown within the browser if the
    knitr package is installed. These features can be disabled by
    setting the environment variable _R_HELP_ENABLE_ENHANCED_HTML_ to
    a false value.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 15
    and so packages that provide graphics devices should be
    reinstalled.
  * The grid package now allows the user to specify a "vector" of
    pattern fills.  The fill argument to gpar() accepts a list of
    gradients and/or patterns and the functions linearGradient(),
    radialGradient(), and pattern() have a new group argument.
    Points grobs (data symbols) can now also have a pattern fill.
    The grobCoords() function now returns a more informative and
    complex result.
  * The grid package has new functions for drawing isolated groups:
    grid.group(), grid.define(), and grid.use().  These functions add
    compositing operators and affine transformations to R's graphics
    capabilities.
    The grid package also has new functions for stroking and filling
    paths: grid.stroke(), grid.fill(), and grid.fillStroke().
    A new function as.path() allows the user to specify the fill rule
    for a path that is to be used for clipping, stroking, or filling;
    available options are "winding" and "evenodd".  A new function
    as.mask() allows the user to specify the type of a mask;
    available options are "alpha" and "luminance".
    These new features are only supported so far (at most) on the
    Cairo-based graphics devices and on the pdf() device.
  * dev.capabilities() reports on device support for the new
    features.
  * par() now warns about unnamed non-character arguments to prevent
    misuse such as {usr &lt;- par("usr"); par(usr)}.
  INSTALLATION:
  * Facilities for accessing ftp:// sites are no longer tested
    (except _pro tem_ for curlGetHeaders()) as modern browsers have
    removed support.
  * R can now be built with DEFS = -DSTRICT_R_HEADERS .
  PACKAGE INSTALLATION:
  * R CMD INSTALL no longer tangles vignettes. This completes an R
    CMD build change in R 3.0.0 and affects packages built before R
    3.0.2. Such packages should be re-made with R CMD build to have
    the tangled R code of vignettes shipped with the tarball.
  * USE_FC_LEN_T will become the default: this uses the correct
    prototypes for Fortran BLAS/LAPACK routines called from C/C++,
    and requires adjustment of most such calls - see 'Writing R
    Extensions' SS6.6.2.  (This has been supported since R 3.6.2.)
  * Package installation speed for packages installed with
    keep.source has been improved. This resolve the issue reported by
    Ofek Shilon in PR#18236.
  UTILITIES:
  * R CMD check can optionally report files/directories left behind
    in home, /tmp (even though TMPDIR is set) and other directories.
    See the "R Internals" manual for details.
  * R CMD check now reports byte-compilation errors during
    installation.  These are not usually fatal but may result in
    parts of the package not being byte-compiled.
  * _R_CHECK_DEPENDS_ONLY_ can be applied selectively to examples,
    tests and/or vignettes in R CMD check: see the "R Internals"
    manual.
  * _R_CHECK_SRC_MINUS_W_IMPLICIT_ now defaults to true: recent
    versions of Apple clang on macOS have made implicit function
    declarations in C into a compilation error.
  * R CMD check --as-cran makes use of the environment variable
    AUTORECONF.  See the "R Internals" manual SS8 for further details.
  * R CMD check --use-valgrind also uses valgrind when re-building
    vignettes as some non-Sweave vignettes unhelpfully comment out
    all their code when R CMD check runs vignettes.
  * Errors in re-building vignettes (unless there are LaTeX errors)
    are reported by R CMD check as ERROR rather than WARNING when
    running vignettes has been skipped (as it frequently is in CRAN
    checks and by --as-cran).
  * R CMD Rd2pdf gains a --quiet option that is used by R CMD build
    when building the PDF package manual.
  * R CMD Rd2pdf now always runs LaTeX in batch mode, consistent with
    Texinfo &gt;= 6.7. The --batch option is ignored.
  * R CMD build and R CMD check now include the Rd file name and line
    numbers in the error message of an \Sexpr evaluation failure.
  * For packages using the \doi Rd macro (now an install-time \Sexpr)
    but no other dynamic Rd content, R CMD build now produces a
    smaller tarball and is considerably faster - skipping temporary
    package installation.
  C-LEVEL FACILITIES:
  * The non-API header R_ext/R-ftp-http.h is no longer provided, as
    the entry points it covered are now all defunct.
  * A number of non-API declarations and macro definitions have been
    moved from the installed header Rinternals.h to the internal
    header Defn.h. Packages that only use entry points and
    definitions documented to be part of the API as specified in
    'Writing R Extensions' SS6 should not be affected.
  * The macro USE_RINTERNALS no longer has any effect when compiling
    package code.  Packages which also use R_NO_REMAP will need to
    ensure that the remapped names are used for calls to API
    functions that were formerly also made available as macros.
  * The deprecated legacy S-compatibility macros PROBLEM, MESSAGE,
    ERROR, WARN, WARNING, RECOVER, ... are no longer defined in
    R_exts/RS.h (included by R.h).  Replace these by calls to
    Rf_error and Rf_warning (defined in header R_ext/Error.h included
    by R.h).
    Header R_ext/RS.h no longer includes R_ext/Error.h.
  * Header R_ext/Constants.h (included by R.h) when included from C++
    now includes the C++ header cfloat rather than the C header
    float.h (now possible as C++11 is required).
  * The legacy S-compatibility macros DOUBLE_* in R_ext/Constants.h
    (included by R.h) are deprecated.
  * The deprecated S-compatibility macros SINGLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * R_Calloc, R_Free and R_Realloc are preferred to their unprefixed
    forms and error messages now use the prefix. These forms were
    introduced in R 3.4.0 and are available even when
    STRICT_R_HEADERS is defined.
  * rmultinom has been documented in 'Writing R Extensions' SS6 so is
    now part of the R API.
  * Similarly, Rtanpi, called from R level tanpi() is now part of the
    R API.
  * The long-deprecated, undocumented and non-API entry point call_R
    is no longer declared in R_ext/RS.h (included by R.h).
  * The header S.h which has been unsupported since Jan 2016 has been
    removed.  Use R.h instead.
  DEPRECATED AND DEFUNCT:
  * The (non-default and deprecated) method = "internal" for
    download.file() and url() no longer supports http:// nor ftp://
    URIs.  (It is used only for file:// URIs.)
    On Windows, download.file(method = "wininet") no longer supports
    ftp:// URIs.  (It is no longer the default method, which is
    "libcurl" and does.)
    On Windows, the deprecated method = "wininet" now gives a warning
    for http:// and https:// URIs for both download.file() and url().
    (It is no longer the default method.)
  * On Windows, the command-line option --max-mem-size and
    environment variable R_MAX_MEM_SIZE are defunct.  The memory
    allocation limit was important for 32-bit builds, but these are
    no longer supported.
  * default.stringsAsFactors() is now formally deprecated, where that
    was only mentioned on its regular help page, previously.  So it
    now gives a warning if called.
  * unix.time() is defunct now; it had been deprecated since R 3.4.0.
  BUG FIXES:
  * Setting digits = 0 in format(), print.default() (and hence
    typically print()) or options() is again invalid.  Its behaviour
    was platform-dependent, and it is unclear what "zero significant
    digits" should mean (PR#18098).
  * Messages from C code in the cairo section of package grDevices
    are now also offered for translation, thanks to Michael Chirico's
    PR#18123.
  * mean(x) with finite x now is finite also without "long.double"
    capability.
  * R CMD Rd2pdf no longer leaves an empty build directory behind
    when it aborts due to an already existing output file.  (Thanks
    to Sebastian Meyer's PR#18141.)
  * density(x, weights = w, na.rm = TRUE) when anyNA(x) is true, now
    removes weights "in parallel" to x, fixing PR#18151, reported by
    Matthias Gondan.  Additionally, it gets a subdensity option.
  * Conversion of \Sexpr[]{&lt;expR&gt;} to LaTeX or HTML no longer
    produces long blocks of empty lines when &lt;expR&gt; itself contains
    several lines all producing empty output.  Thanks to a report and
    patch by Ivan Krylov posted to R-devel.
  * R CMD build no longer fails if a package vignette uses child
    documents and inst/doc exists.  (Thanks to Sebastian Meyer's
    PR#18156.)
  * When an R documentation ('help' source) file man/foo.Rd in a
    package has \donttest{..} examples with a syntax error, it is now
    signalled as ERROR and with correct line numbers relating to the
  * -Ex.R file, thanks to Duncan Murdoch and Sebastian Meyer's
    reports and patch proposals in PR#17501.
  * Improved determination of the correct translation domain in
    non-base packages, addressing the combination of PR#18092 and
    PR#17998 (#c6) with reports and _augmented_ patch #2904 by
    Suharto Anggono.
    Note that "R-base" is no longer the default domain e.g., for
    top-level calls to gettext(); rather translation needs explicit
    domain = * specification in such cases.
  * identical(attrib.as.set=FALSE) now works correctly with data
    frames with default row names (Thanks to Charlie Gao's PR#18179).
  * txtProgressBar() now enforces a non-zero width for argument char,
    without which no progress can be visible.
  * dimnames(table(d)) is more consistent in the case where d is a
    list with a single component, thanks to Thomas Soeiro's report to
    R-devel.
    Further, table(d1, d2) now gives an error when d1 and d2 are data
    frames as suggested by Thomas in PR#18224.
  * Fix for drawing semi-transparent lines and fills on the native
    Windows graphics device (PR#18219 and PR#16694).  Thanks to Nick
    Ray for helpful diagnosis on Bugzilla.
  * The deparser now wraps sub-expressions such as if(A) ..  with
    parentheses when needed; thanks to Duncan Murdoch's PR#18232 and
    Lionel Henry's patches there.
  * remove.packages() no longer tries to uninstall Priority: base
    packages, thanks to a report and suggestions by Colin Fay in
    PR#18227.
  * win.metafile() now has xpinch and ypinch arguments so that the
    user can override Windows' (potentially wrong) guess at device
    dimensions.
  * x[i] and x[[i]] for non-integer i should now behave in all cases
    as always documented: the index used is equivalent to
    as.integer(i) unless that would overflow where trunc(i) is used
    instead; thanks to Suharto Anggono's report and patch proposals
    in PR#17977.
  * asOneSidedFormula() now associates the resulting formula with the
    global environment rather than the evaluation environment created
    for the call.
  * &lt;bibentry&gt;$name now matches the field name case-insensitively,
    consistent with bibentry() creation and the replacement method.
  * cbind() failed to detect some length mismatches with a mixture of
    time-series and non-time-series inputs.
  * The default LaTeX style file Sweave.sty used by the RweaveLatex
    driver no longer loads the obsolete ae package; thanks to a
    report by Thomas Soeiro in PR#18271.  Furthermore, it now skips
    \usepackage[T1]{fontenc} for engines other than pdfTeX (if
    detected) or if the new [nofontenc] option is used.
  * smooth.spline() now stores its logical cv argument more safely,
    fixing a rare bug when printing, and also stores n.
  * smooth.spline(x,y,*) now computes the cv.crit statistic
    correctly, also when is.unsorted(x), fixing PR#18294.
  * The data.frame method of rbind() now warns when binding
    not-wholly-recycling vectors, by analogy to the default method
    (for matrices).
  * setAs() finds the correct class for name to when multiple
    packages define a class with that name. Thanks to Gabor Csardi
    for the report.
  * Fix for detaching a package when two classes of the same name are
    present in method signatures for the same generic. Thanks to
    Gabor Csardi for the report.
  * match.arg("", c("", "a", "B")) gives a better error message, in
    part from PR#17959, thanks to Elin Waring.
  * R CMD Sweave --clean no longer removes pre-existing files or
    subdirectories (PR#18242).
  * The quartz() device no longer splits polylines into subpaths.
    That has caused narrowly-spaced lines with many points to always
    look solid even when dashed line type was used due to dash phase
    restarts.
  * Deparsing constructs such as quote(1 + `!`(2) + 3) works again as
    before R 3.5.0, thanks to the report and patch in PR#18284 by
    Suharto Anggono.
  * as.list(f) for a factor f now keeps names(f), fixing PR#18309.
  * qbeta(.001, .9, .009) and analogous qf() calls now return a
    correct value instead of NaN or wrongly 1, all with a warning;
    thanks to the report by Ludger Goeminne in PR#18302.
  * plot.lm() failed to produce the plot of residuals vs.  factor
    levels (i.e., which=5 when leverages are constant) for models
    with character predictors (PR#17840).
  * interaction.plot(..., xtick = TRUE) misplaced the x-axis line
    (PR#18305).
  * Not strictly fixing a bug, format()ing and print()ing of
    non-finite Date and POSIXt values NaN and +/-Inf no longer show
    as NA but the respective string, e.g., Inf, for consistency with
    numeric vector's behaviour, fulfilling the wish of PR#18308.
  * R CMD check no longer runs test scripts generated from
    corresponding .Rin files twice and now signals an ERROR if
    processing an .Rin script fails.
  * tools::Rd2txt() used for plain-text help pages now renders \hrefs
    (if tools::Rd2txt_options(showURLs = TRUE)) and \urls with
    percent-encoding and standards-compliant delimiting style (angle
    brackets and no URL: prefix).  \email is now rendered with a
    mailto: prefix.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1655985600">- CHANGES IN R 4.2.1:
  NEW FEATURES:
  * New function utils::findCRANmirror() to find out if a CRAN mirror
    has been selected, otherwise fallback to the main site.  This
    behaves in the same way as tools::CRAN_package_db() and is
    intended for packages wishing to access CRAN for purposes other
    than installing packages.
    The need for this was shown by a day when the main CRAN website
    was offline and a dozen or so packages which had its URL
    hardcoded failed their checks.
  INSTALLATION on a UNIX-ALIKE:
  * The libraries searched for by --with-blas (without a value) now
    include BLIS (after OpenBLAS but before ATLAS).  And on macOS,
    the Accelerate framework (after ATLAS).  (This is patterned after
    the AX_BLAS macro from the Autoconf Archive.)
  * The included LAPACK sources have been updated to 3.10.1.
  UTILITIES:
  * The (full path to) the command tidy to be used for HTML
    validation can be set by environment variable R_TIDYCMD.
  * Setting environment variable _R_CHECK_RD_VALIDATE_RD2HTML_ to a
    false value will override R CMD check --as-cran and turn off HTML
    validation.  This provides a way to circumvent a problematic
    tidy.
    The 2006 version that ships with macOS is always skipped.
  C-LEVEL FACILITIES:
  * The undocumented legacy declarations of Sint, Sfloat, SINT_MAX
    and SINT_MIN in header R.h are deprecated.
  BUG FIXES:
  * fisher.test(d) no longer segfaults for "large" d; fixing PR#18336
    by preventing/detecting an integer overflow reliably.
  * tar(., files=*) now produces correctly the warning about invalid
    uid or gid of files, fixing PR#18344, reported by Martin Morgan.
  * tk_choose.files() with multi = FALSE misbehaved on paths
    containing spaces (PR#18334) (regression introduced in R 4.0.0).
  * sort(x, partial = ind, *) now works correctly notably for the
    non-default na.last = FALSE or TRUE, fixing PR#18335 reported by
    James Edwards.
  * Environment variable _R_CHECK_XREFS_REPOSITORIES_ is only used
    for checking .Rd cross-references in R CMD check (as documented)
    and not for other uses looking for a CRAN mirror.
  * The search for a CRAN mirror when checking packages now uses
    getOption("repos") if that specifies a CRAN mirror, even when it
    does not also specify all three Bioconductor repositories (as was
    previously required).
  * The HTML code generated by tools::Rd2HTML() has been improved to
    pass tidy 5.8.0.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1667217600">- CHANGES IN R 4.2.2:
  NEW FEATURES:
  * tools::Rdiff(useDiff = TRUE) checks for the presence of an
    external diff command and switches to useDiff = FALSE if none is
    found.  This allows R CMD Rdiff to always work.
  * On Windows, environment variable R_LIBCURL_SSL_REVOKE_BEST_EFFORT
    can be used to switch to only 'best-effort' SSL certificate
    revocation checks with the default "libcurl" download method.
    This reduces security, but may be needed for downloads to work
    with MITM proxies (PR#18379).
  * (macOS) The run-time check for libraries from XQuartz for X11 and
    Tcl/Tk no longer uses otool from the Apple Developer Tools
    (PR#18400).
  * The LaTeX style for producing the PDF manuals, Rd.sty, now loads
    the standard amsmath, amsfonts and amssymb packages for greater
    coverage of math commands in the Rd \eqn and \deqn macros.  The
    \mathscr LaTeX command is also provided (via the mathrsfs
    package, if available, or the amsfonts bundle otherwise),
    fulfilling the wish of PR#18398.
  * (Windows) The default format of readClipboard() and
    writeClipboard() has been changed to 13 (CF_UNICODETEXT).
  INSTALLATION on a UNIX-ALIKE:
  * The PDF manuals (if built) can be compacted by the new target
    make compact-pdf (at the top level or in directory doc/manual).
  * There is now configure support for LLVM clang 15 on Linux, which
    defaults to position-independent (PIE) executables whereas
    gfortran does not.
  * Many small changes to ease compilation (and suppress warnings)
    with LLVM clang 15.
  BUG FIXES:
  * Rscript -e would fail if stdin were closed (Reported by Henrik
    Bengtsson.)
  * qt(*, log.p=TRUE) in outer tails no longer produces NaN in its
    final steps, thus fixing PR#18360.
  * tools::Rd2latex() now escapes hashes and ampersands when writing
    URLs, fixing LaTeX errors with such URLs in \tabular.
  * When isGeneric(f, fdef=*) is used with mismatching names, the
    warning is better understandable; reported (with fix) in PR#18370
    by Gabe Becker.
  * poly(x, n) now works again (and is now documented) when x is a
    "Date" or "POSIXct" object, or of another class while fulfilling
    mode(x) == "numeric".  This also enables poly(x, *, raw=TRUE) for
    such variables.  Reported by Michael Chirico to R-devel.
  * write.table(), write.csv() and write.csv2() restore their
    numerical precision (internal equivalent of digits = 15) after an
    interrupt (PR#18384).
  * One can now read also byte FF from a clipboard connection
    (PR#18385).
  * source("") and source(character()) now give more helpful error
    messages.
  * R CMD check --as-cran set _R_CHECK_TIMINGS_ too late to have the
    intended effect.
  * as.POSIXlt(x) now also works with very large dates x, fixing
    PR#18401 reported by Hannes M"uhleisen.
  * Files can now be extracted even from very large zip archives
    (PR#18390, thanks to Martin Jakt).
  * Non-finite objects of class "POSIXlt" are now correctly coerced
    to classes "Date" and "POSIXct"; following up on the extension to
    format() them correctly.
  * Added methods for is.finite(), is.infinite() and is.nan() for
    "POSIXlt" date-time objects.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1678881600">- CHANGES IN R 4.2.3:
  C-LEVEL FACILITIES:
  * The definition of DL_FUNC in R_ext/Rdynload.h has been changed to
    be fully C-compliant.  This means that functions loaded _via_ for
    example R_GetCCallable need to be cast to an appropriate type if
    they have any arguments.
  * .Machine has a new element sizeof.time_t to identify old systems
    with a 32-bit type and hence a limited range of date-times (and
    limited support for dates millions of years from present).
  PACKAGE INSTALLATION:
  * (Windows) The default C++ standard had accidentally been left at
    C++11 when it was changed to C++14 on Unix.
  BUG FIXES:
  * As "POSIXlt" objects may be "partially filled" and their list
    components meant to be recycled, length() now is the length of
    the longest component.
  * as.POSIXlt.Date() could underflow for dates in the far past (more
    than half a million years BCE).
  * as.Date.POSIXlt(x) would return "1970-01-01" instead of NA in R
    4.2.2, e.g., for
    x &lt;- as.POSIXlt(c("2019-01-30","2001-1-1"))
    x$mon &lt;- c(0L, NA); as.Date(x)
  * R CMD check failed to apply enabled _R_CHECK_SUGGESTS_ONLY_ to
    examples and vignettes (regression in R 4.2.0).
  * R CMD check did not re-build vignettes in separate processes by
    default (regression in R 4.2.0).
  * Running examples from HTML documentation now restores previous
    knitr settings and options (PR#18420).
  * Quartz: fonts are now located using Core Graphics API instead of
    deprecated ATS which is no longer supported in the macOS 13 SDK
    (PR#18426).  This also addresses an issue where the currently
    used font in the Quartz device context was not correctly
    retained.
  * (Windows) Math symbols in text drawing functions are again
    rendered correctly (PR#18440).  This fixes a regression in R
    4.2.1 caused by a fix in PR#18382 which uncovered an issue in
    GraphApp due to which the symbol charset was not used with TT
    Symbol font face.
  * (Windows) Installing a package with a src/Makefile.{win,ucrt}
    file includes ~/.R/Makevars.win64 in the search for user
    makevars, as documented in "R Installation and Administration"
    and done for packages with a src/Makevars.{win,ucrt} file.
  * format(&lt;POSIXlt_w/_unbalanced_sec&gt;, "....%OS&lt;n&gt;") with n &gt; 0 no
    longer accidentally uses the unbalanced seconds, thanks to
    Suharto Anggono's report (including patch) in PR#18448.
  * solve.default(a, b) works around issues with some versions of
    LAPACK when a contains NA or NaN values.
  * When UseMethod() cannot dispatch, it no longer segfaults
    producing the error message in case of a long class(), thanks to
    Joris Vankerschaver's report (including patch) in PR#18447.
  * When example(foo, ..) produces graphics on an interactive device
    it needs to open itself, it now leaves devAskNewPage() unchanged
    even when it was FALSE, thus fixing a 14 years old '&lt;FIXME&gt;'.
  * packageDescription() again catches errors from encoding
    conversions. This also fixes broken packageVersion() in C locale
    on systems where iconv does not support transliteration.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1681128000">- add patch to build with libcurl &gt;= 8</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1682078400">- CHANGES IN R 4.3.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Calling &amp;&amp; or || with LHS or (if evaluated) RHS of length greater
    than one is now always an error, with a report of the form
    'length = 4' in coercion to 'logical(1)'
    Environment variable _R_CHECK_LENGTH_1_LOGIC2_ no longer has any
    effect.
  NEW FEATURES:
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.10.1.  (This caused some platform-dependent
    changes to package check output.)  And then to the sources from
    LAPACK version 3.11.0 (with changes only to double complex
    subroutines).
  * The included LAPACK sources have been updated to include the four
    Fortran 90 routines rather than their Fortran 77 predecessors.
    This may give some different signs in SVDs or
    eigendecompositions..  (This completes the transition to LAPACK
    3.10.x begun in R 4.2.0.)
  * The LAPACK sources have been updated to version 3.11.0.  (No new
    subroutines have been added, so this almost entirely bug fixes:
    Those fixes do affect some computations with NaNs, including R's
    NA.)
  * The parser now signals _classed_ errors, notably in case of the
    pipe operator |&gt;.  The error object and message now give line and
    column numbers, mostly as proposed and provided by Duncan Murdoch
    in PR#18328.
  * toeplitz() is now generalized for asymmetric cases, with a
    toeplitz2() variant.
  * xy.coords() and xyz.coords() and consequently, e.g., plot(x,y,
    log = "y") now signal a _classed_ warning about negative values
    of y (where log(.) is NA).  Such a warning can be specifically
    suppressed or caught otherwise.
  * Regular expression functions now check more thoroughly whether
    their inputs are valid strings (in their encoding, e.g. in
    UTF-8).
  * The performance of grep(), sub(), gsub() and strsplit() has been
    improved, particularly with perl = TRUE and fixed = TRUE.  Use of
    useBytes = TRUE for performance reasons should no longer be
    needed and is discouraged: it may lead to incorrect results.
  * apropos() gains an argument dot_internals which is used by the
    completion (help(rcompgen)) engine to also see base internals
    such as .POSIXct().
  * Support in tools::Rdiff() for comparing uncompressed PDF files is
    further reduced - see its help page.
  * qqplot(x, y, ...) gains conf.level and conf.args arguments for
    computing and plotting a confidence band for the treatment
    function transforming the distribution of x into the distribution
    of y (Switzer, 1976, _Biometrika_). Contributed by Torsten
    Hothorn.
  * Performance of package_dependencies() has been improved for cases
    when the number of dependencies is large.
  * Strings newly created by gsub(), sub() and strsplit(), when any
    of the inputs is marked as "bytes", are also marked as "bytes".
    This reduces the risk of creating invalid strings and accidental
    substitution of bytes deemed invalid.
  * Support for readLines(encoding = "bytes") has been added to allow
    processing special text files byte-by-byte, without creating
    invalid strings.
  * iconv(from = "") now takes into account any declared encoding of
    the input elements and uses it in preference to the native
    encoding.  This reduces the risk of accidental creation of
    invalid strings, particularly when different elements of the
    input have different encoding (including "bytes").
  * Package repositories in getOption("repos") are now initialized
    from the repositories file when utils is loaded (if not already
    set, e.g., in .Rprofile).  (From a report and patch proposal by
    Gabriel Becker in PR#18405.)
  * compactPDF() gets a verbose option.
  * type.convert() and hence read.table() get new option tryLogical =
    TRUE with back compatible default.  When set to false, converts
    "F" or "T" columns to character.
  * Added new unit prefixes "R" and "Q" for abbreviating
    (unrealistically large) sizes beyond 10^{27} in standard = "SI",
    thanks to Henrik Bengtsson's PR#18435.
  * as.data.frame()'s default method now also works fine with atomic
    objects inheriting from classes such as "roman", "octmode" and
    "hexmode", such fulfilling the wish of PR#18421, by Benjamin
    Feakins.
  * The as.data.frame.vector() utility now errors for wrong-length
    row.names.  It warned for almost six years, with "Will be an
    error!".
  * sessionInfo() now also contains La_version() and reports codepage
    and timezone when relevant, in both print() and toLatex() methods
    which also get new option tzone for displaying timezone
    information when locale = FALSE.
  * New function R_compiled_by() reports the C and Fortran compilers
    used to build R, if known.
  * predict(&lt;lm&gt;, newdata = *) no longer unnecessarily creates an
    offset of all 0s.
  * solve() for complex inputs now uses argument tol and by default
    checks for 'computational singularity' (as it long has done for
    numeric inputs).
  * predict(&lt;rank-deficient lm&gt;, newdata=*) now obeys a new argument
    rankdeficient, with new default "warnif", warning only if there
    are non-estimable cases in newdata.  Other options include
    rankdeficient = "NA", predicting NA for non-estimable newdata
    cases.  This addresses PR#15072 by Russ Lenth and is based on his
    original proposal and discussions in PR#16158 also by David Firth
    and Elin Waring.  Still somewhat experimental.
  * Rgui console implementation now works better with the NVDA screen
    reader when the full blinking cursor is selected.  The underlying
    improvements in cursor handling may help also other screen
    readers on Windows.
  * The drop-field control in GraphApp can now be left with the TAB
    key and all controls can be navigated in the reverse order using
    the Shift+TAB key, improving accessibility of the Rgui
    configuration editor.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now fully accurate
    (instead of to "only" minimally five digits).
  * demo(error.catching) now also shows off withWarnings() and
    tryCatchWEMs().
  * As an experimental feature the placeholder _ can now also be used
    in the rhs of a forward pipe |&gt; expression as the first argument
    in an extraction call, such as _$coef. More generally, it can be
    used as the head of a chain of extractions, such as _$coef[[2]].
  * Spaces in the environment variable used to choose the R session's
    temporary directory (TMPDIR, TMP and TEMP are tried in turn) are
    now fatal.  (On Windows the 'short path' version of the path is
    tried and used if that does not contain a space.)
  * all.equal.numeric() gets a new optional switch giveErr to return
    the numeric error as attribute.  Relatedly,
    stopifnot(all.equal&lt;some&gt;(a, b, ..)) is as "smart" now, as
    stopifnot(all.equal(....)) has been already, thus allowing
    customized all.equal&lt;Some&gt;() wrappers.
  * R on Windows is now able to work with path names longer than 260
    characters when these are enabled in the system (requires at
    least Windows 10 version 1607).  Packages should be updated to
    work with long paths as well, instead of assuming PATH_MAX to be
    the maximum length.  Custom front-ends and applications embedding
    R need to update their manifests if they wish to allow this
    feature.  See
    &lt;https://blog.r-project.org/2023/03/07/path-length-limit-on-windows&gt;
    for more information.
  * 'Object not found' and 'Missing argument' errors now give a more
    accurate error context. Patch provided by Lionel Henry in
    PR#18241.
  * The @ operator is now an S3 generic. Based on contributions by
    Tomasz Kalinowski in PR#18482.
  * New generic chooseOpsMethod() provides a mechanism for objects to
    resolve cases where two suitable methods are found for an Ops
    Group Generic. This supports experimenting with alternative
    object systems. Based on contributions by Tomasz Kalinowski in
    PR#18484.
  * inherits(x, what) now accepts values other than a simple
    character vector for argument what. A new generic, nameOfClass(),
    is called to resolve the class name from what. This supports
    experimenting with alternative object systems. Based on
    contributions by Tomasz Kalinowski in PR#18485.
  * Detection of BLAS/LAPACK in use (sessionInfo()) with FlexiBLAS
    now reports the current backend.
  * The "data.frame" method for subset() now warns about extraneous
    arguments, typically catching the use of = instead of == in the
    subset expression.
  * Calling a:b when numeric a or b is longer than one may now be
    made into an error by setting environment variable
    _R_CHECK_LENGTH_COLON_ to a true value, along the proposal in
    PR#18419 by Henrik Bengtsson.
  * density(x, weights = *) now warns if automatic bandwidth
    selection happens without using weights; new optional warnWbw may
    suppress the warning.  Prompted by Christoph Dalitz' PR#18490 and
    its discussants.
  * rm(list = *) is faster and more readable thanks to Kevin Ushey's
    PR#18492.
  * The plot.lm() function no longer produces a normal Q-Q plot for
    GLMs. Instead it plots a half-normal Q-Q plot of the absolute
    value of the standardized deviance residuals.
  * The print() method for class "summary.glm" no longer shows
    summary statistics for the deviance residuals by default.  Its
    optional argument show.residuals can be used to show them if
    required.
  * The tapply() function now accepts a data frame as its X argument,
    and allows INDEX to be a formula in that case. by.data.frame()
    similarly allows INDICES to be a formula.
  * The performance of df[j] &lt;- value (including for missing j) and
    write.table(df) has been improved for data frames df with a large
    number of columns.  (Thanks to Gabriel Becker's PR#18500,
    PR#18503 and discussants, prompted by a report from Toby Dylan
    Hocking on the R-devel mailing list.)
  * The matrix multiply operator %*% is now an S3 generic, belonging
    to new group generic matrixOps.  From Tomasz Kalinowski's
    contribution in PR#18483.
  * New function array2DF() to convert arrays to data frames,
    particularly useful for the list arrays created by tapply().
  DATES and TIMES:
  * On platforms where (non-UTC) datetimes before 1902 (or before
    1900 as with system functions on recent macOS) are guessed by
    extrapolating time zones from 1902-2037, there is a warning at
    the first use of extrapolation in a session.  (As all time zones
    post 2037 are extrapolation, we do not warn on those.)
  * (Platforms using --with-internal-tzone, including Windows and by
    default macOS). How years are printed in dates or date-times can
    be controlled by environment variable R_PAD_YEARS_BY_ZERO.  The
    default remains to pad to 4 digits by zeroes, but setting value
    no gives no padding (as used by default by glibc).
  * strftime() tries harder to determine the offset for the "%z"
    format, and succeeds on the mainstream R platforms.
  * strftime() has a limit of 2048 bytes on the string produced -
    attempting to exceed this is an error.  (Previously it silently
    truncated at 255 bytes.)
  * sessionInfo() records (and by default prints) the system time
    zone as part of the locale information.  Also, the source
    (system/internal) of the date-time conversion and printing
    functions.
  * Objects of class "POSIXlt" created in this version of R always
    have 11 components: component zone is always set, and component
    gmtoff is set for times in UTC and usually set on the (almost
    all) platforms which have C-level support, otherwise is NA.
  * There are comprehensive validity checks on the structure of
    objects of class "POSIXlt" when converting (including formatting
    and printing).  (This avoids mis-conversions of hand-crafted
    objects.)
  * There is some support for using the native date-time routines on
    macOS: this is only viable on recent versions (e.g. 12.6 and 13)
    and does get wrong some historical changes (before 1900, during
    WWII).  Use of --with-internal-tzone remains the default.
  * as.POSIXct(&lt;numeric&gt;) and as.POSIXlt(.) (without specifying
    origin) now work.  So does as.Date(&lt;numeric&gt;).
  * as.Date.POSIXct(., tz) now treats several tz values, notably
    "GMT" as equivalent to "UTC", proposed and improved by Michael
    Chirico and Joshua Ulrich in PR#17674.
  * Experimental balancePOSIXlt() utility allows using "ragged" and
    or out-of-range "POSIXlt" objects more correctly, e.g., in
    subsetting and subassignments.  Such objects are now documented.
    More experimentally, a "POSIXlt" object may have an attribute
    "balanced" indicating if it is known to be filled or fully
    balanced.
  * Functions axis.Date() and axis.POSIXct() are rewritten to gain
    better default tick locations and better default formats by using
    prettyDate(). Thanks to Swetlana Herbrandt.
  * The mapping of Windows' names for time zones to IANA's 'Olson'
    names has been updated.  When ICU is available (it is by
    default), it is used to get a mapping for the current region set
    in Windows.  This can be overridden by setting environment
    variable TZ to the desired Olson name - see OlsonNames() for
    those currently available.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 16
    and so packages that provide graphics devices should be
    reinstalled.
  * The grDevices and grid packages have new functions for rendering
    typeset glyphs, primarily: grDevices::glyphInfo() and
    grid::grid.glyph().
    Rendering of typeset glyphs is only supported so far on the
    Cairo-based graphics devices and on the pdf() and quartz()
    devices.
  * The defined behaviour for "clear" and "source" compositing
    operators (via grid::grid.group()) has been changed (to align
    better with simple interpretation of original Porter-Duff
    definitions).
  * Support for gradients, patterns, clipping paths, masks, groups,
    compositing operators, and affine transformations has been added
    to the quartz() device.
  INSTALLATION on a UNIX-ALIKE:
  * A system installation of generic LAPACK 3.10.0 or later will be
    preferred to the version in the R sources.
    configure option --with-lapack=no (equivalently --without-lapack)
    forces compilation of the internal LAPACK sources.
    If --with-lapack is not specified, a system liblapack is looked
    for and used if it reports version 3.10.0 or later and does not
    contain BLAS routines.
    Packages using LAPACK will need to be reinstalled if this changes
    to using an external library.
  * On aarch64 Linux platforms using GCC, configure now defaults to
  - fPIC (instead of -fpic), as desired in PR#18326.
  * configure now checks conversion of datetimes between POSIXlt and
    POSIXct around year 2020.  Failure (which has been seen on
    platforms missing tzdata) is fatal.
  * If configure option --with-valgrind-instrumentation is given
    value 1 or 2, option --with-system-valgrind-headers is now the
    default and ignored (with a warning).  It is highly recommended
    that the system headers are installed alongside valgrind: they
    are part of its packaging on some Linux distributions and
    packaged separately (e.g. in the valgrind-devel RPM) on others.
    configure will give a warning if they are not found.
    The system headers will be required in a future release of R to
    build with valgrind instrumentation.
  * libcurl 8.x is now accepted by configure: despite a change in
    major version number it changes neither API nor ABI.
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools43, an update of the Rtools42 toolchain.  It is
    based on gcc 12 and newer versions of MinGW-W64, binutils and
    libraries.  At this time R-devel can still be built using
    Rtools42 without changes, but when R-devel is installed via the
    installer, it will by default look for Rtools43.
  * Old make targets rsync-extsoft and 32-bit ones that are no longer
    needed have been removed.
  * Default builds (including for packages) no longer select C99.
    Thus the C standard used is the default for the compiler, which
    for the toolchain in Rtools43 is C17.  (This is consistent with
    Unix builds.)
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++17 where
    available (which it is on all currently checked platforms): if
    not C++14 or C++11 is used if available otherwise C++ is not
    supported.
  * USE_FC_LEN_T is the default: this uses the correct
    (compiler-dependent) prototypes for Fortran BLAS/LAPACK routines
    called from C/C++, and requires adjustment of many such calls -
    see 'Writing R Extensions' SS6.6.1.
  * There is initial support for C++23 as several compilers are now
    supporting -std=c++23 or -std=c++2b or similar.  As for C++20,
    there no additional configure checks for C++23 features beyond a
    check that the compiler reports a __cplusplus value greater than
    that in the C++20 standard.  C++ feature tests should be used.
  * There is support for a package to indicate the version of the C
    standard which should be used to compile it, and for the
    installing user to specify this.  In most cases R defaults to the
    C compiler's default standard which is C17 (a `bug-fix' of C11) -
    earlier versions of R or compilers may have defaulted to C99.
    Current options are:
    USE_C17 Use a standard that is at most C17.  The intention is to
    allow legacy packages to still be installed when later C
    standards become the default, including packages using new
    keywords as identifiers or with K&amp;R-style function
    declarations.  This will use C17 if available, falling back
    to C11.
    USE_C90 Use the C90 (aka C89) standard.  (As that standard did
    not require compilers to identify that version, all we can
    verify is that the compiler does not claim to be using a
    later standard.  It may accept C99 features - for example
    clang accepts // to make comments.)
    USE_C99 Use the C99 standard. This should be rarely needed - it
    avoids the few new features of C11/C17 which can be useful if
    a package assumes them if C17 is specified and they are not
    implemented.
    USE_C23 Use C23 (or in future, later).  Compiler/library support
    for C23 is still being implemented, but LLVM clang from
    15.0.0 and the upcoming GCC 13 have quite extensive support.
    These can be specified as part of the SystemRequirements field in
    the package's DESCRIPTION file or _via_ options --use-C17 and so
    on of R CMD INSTALL and R CMD SHLIB.
    For further details see "Writing R Extensions" SS1.2.5.
  * (Windows) A src/Makefile.ucrt or src/Makefile.win file is now
    included after R_HOME/etcR_ARCH/Makeconf and so no longer needs
    to include that file itself.  Installation of a package with such
    a file now uses a site Makevars file in the same way as a package
    with a src/Makevars.win file would.
  * configure is now passed crucial variables such as CC and CFLAGS
    in its environment, as many packages were not setting them (as
    documented in 'Writing R Extensions' SS1.2).
    This has most effect where configure is used to compile parts of
    the package - most often by cmake or libtool which obfuscate the
    actual compile commands used.
    Also used for configure.win and configure.ucrt on Windows.
  FORTRAN FLAGS:
  * The flag -fno-optimize-sibling-calls is no longer forced for
    gfortran 7 and later.  It should no longer be needed now using
    'hidden' character-length arguments when calling BLAS/LAPACK
    routines from C/C++ is the default even for packages.  (Unless
    perhaps packages call Fortran code from C/C++ without using R's
    headers and without allowing for these arguments.)
  C-LEVEL FACILITIES:
  * The deprecated S-compatibility macros DOUBLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * The deprecated legacy typedefs of Sint and Sfloat in header R.h
    are no longer defined, and that header no longer includes header
    limits.h from C nor climits from C++.
  * New macro CAD5R() is provided in Rinternals.h and used in a few
    places in the R sources.
  * ALTREP now supports VECSXP vectors. Contributed by Gabor Csardi
    in PR#17620.
  * The Rcomplex definition (in header R_ext/Complex.h) has been
    extended to prevent possible mis-compilation when interfacing
    with Fortran (PR#18430).  The new definition causes compiler
    warnings with static initializers such as {1, 2}, which can be
    changed to {.r=1, .i=2}.
    Using the new definition from C++ depends on compiler extensions
    supporting C features that have not been incorporated into the
    C++ standards but are available in g++ and clang++: this may
    result in C++ compiler warnings but these have been worked around
    for recent versions of common compilers (GCC, Apple/LLVM clang,
    Intel).
    It is intended to change the inclusion of header R_ext/Complex.h
    by other R headers, so C/C++ code files which make use of
    Rcomplex should include that header explicitly.
  UTILITIES:
  * R CMD check does more checking of package .Rd files, warning
    about invalid email addresses and (some) invalid URIs and noting
    empty \item labels in description lists.
  * R CMD check now also reports problems when reading package news
    in md (file NEWS.md) and (optionally) plain text (file NEWS)
    formats.
  * _R_CHECK_TIMINGS_ defaults to a value from the environment even
    for R CMD check --as-cran; this allows for exceptionally fast or
    slow platforms.
    It now applies to checking PDF and HTML versions of the manuals,
    and 'checking CRAN incoming feasibility'.
  * R CMD check can optionally (but included in --as-cran) check
    whether HTML math rendering _via_ KaTeX works for the package .Rd
    files.
  * Non-interactive debugger invocations can be trapped by setting
    the environment variable _R_CHECK_BROWSER_NONINTERACTIVE_ to a
    true value.  This is enabled by R CMD check --as-cran to detect
    the use of leftover browser() statements in the package.
  * The use of sprintf and vsprintf from C/C++ has been deprecated in
    macOS 13 and is a known security risk.  R CMD check now reports
    (on all platforms) if their use is found in compiled code:
    replace by snprintf or vsnprintf respectively. [*NB:* whether
    such calls get compiled into the package is platform-dependent.]
  * Where recorded at installation, R CMD check reports the C and
    Fortran compilers used to build R.
    It reports the OS in use (if known, as given by osVersion) as
    well as that R was built for.
    It notes if a C++ standard was specified which is older than the
    current default: many packages have used C++11 to mean 'not
    C++98' - as C++11 is the minimum supported since R 4.0.0, that
    specification can probably be removed.
  * R CMD INSTALL reports the compilers (and on macOS, the SDK) used,
    and this is copied to the output of R CMD check.
    Where a C++ standard is specified, it is reported.
  * R CMD check's 'checking compilation flags in Makevars' has been
    relaxed to accept the use of flags such as -std=f2008 in
    PKG_FFLAGS.
  * tools::buildVignettes() has a new argument skip, which is used by
    R CMD check to skip (and note) vignettes with unavailable
    \VignetteDepends (PR#18318).
  * New generic .AtNames() added to enable class-specific completions
    after @. The formerly internal function findMatches() is now
    exported, mainly for use in methods for .DollarNames() and
    .AtNames().
  DEPRECATED AND DEFUNCT:
  * default.stringsAsFactors() is defunct.
  * Calling as.data.frame.&lt;class&gt;() directly (for 12 atomic classes)
    is going to be formally deprecated, currently activated by
    setting the environment variable
    _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ to non-empty, which also
    happens in R CMD check --as-cran.
  BUG FIXES:
  * Hashed environments with sizes less than 5 can now grow.
    (Reported to R-devel by Duncan Garmonsway.)
  * as.character(&lt;Rd&gt;, deparse = TRUE) failed to re-escape curly
    braces in LaTeX-like text.  (Reported by Hadley Wickham in
    PR#18324.)
  * library() now passes its lib.loc argument when requiring Depends
    packages; reported (with fix) in PR#18331 by Mikael Jagan.
  * R CMD Stangle: improved message about 'Output' files.
  * head(x, n) and tail(x, n) now signal an error if n is not
    numeric, instead of incidentally "working" sometimes returning
    all of x.  Reported and discussed by Colin Fay, in PR#18357.
  * The "lm" method for summary() now gives the correct F-statistic
    when the model contains an offset.  Reported in PR#18008.
  * C() and `contrasts&lt;-`() now preserve factor level names when
    given a function object (as opposed a function name which did
    preserve names). Reported in PR#17616.
  * c(a = 1, 2)[[]] no longer matches 2 but rather signals a
    _classed_ error.  Reported and analysed by Davis Vaughan in
    PR#18367, a duplicate of PR#18004, by Jan Meis et al.  For
    consistency, NULL[[]] is also erroneous now.  x[[]] &lt;- v gives an
    error of the same class "MissingSubscriptError".
  * The relist() function of utils now supports NULL elements in the
    skeleton (PR#15854).
  * ordered(levels = *) (missing x) now works analogously to factor(,
    ordered=TRUE); reported (with fix) by Achim Zeileis in PR#18389.
  * User-defined Rd macro definitions can now span multiple lines,
    thanks to a patch from Duncan Murdoch. Previously, the Rd parser
    silently ignored everything after the first line.
  * Plain-text help (tools::Rd2txt()) now preserves an initial blank
    line for text following description list items.
  * tools::Rd2HTML() and tools::Rd2latex() no longer split \arguments
    and \value lists at Rd comments.
  * tools::Rd2latex() now correctly handles optional text outside
    \items of argument lists as well as bracketed text at the
    beginning of sections, e.g., \value{[NULL]}.
  * as.character(&lt;POSIXt&gt;) now behaves more in line with the methods
    for atomic vectors such as numbers, and is no longer influenced
    by options().  Ditto for as.character(&lt;Date&gt;).  The
    as.character() method gets arguments digits and OutDec with
    defaults _not_ depending on options().  Use of as.character(*,
    format = .) now warns.
  * Similarly, the as.character.hexmode() and *.octmode() methods
    also behave as good citizen methods and back compatibility option
    keepStr = TRUE.
  * The as.POSIXlt(&lt;POSIXlt&gt;) and as.POSIXct(&lt;POSIXct&gt;) default
    methods now do obey their tz argument, also in this case.
  * as.POSIXlt(&lt;Date&gt;) now does apply a tz (time zone) argument, as
    does as.POSIXct(); partly suggested by Roland Fuss on the R-devel
    mailing list.
  * as.Date.POSIXlt(x) now also works when the list components are of
    unequal length, aka "partially filled" or "ragged".
  * expand.model.frame() looked up variables in the wrong environment
    when applied to models fitted without data.  Reported in
    PR#18414.
  * time() now (also) uses the ts.eps = getOption("ts.eps") argument
    and thus by default rounds values very close to the start (or
    end) of a year.  Based on a proposal by Andre"i V. Kostyrka on
    R-help.
  * Printing of a factanal() result with just one factor and sort =
    TRUE now works regularly, fixing PR#17863 by Timothy Bates,
    thanks to the 'R Contributors' working group.
  * Printing 0-length objects of class "factor", "roman", "hexmode",
    "octmode", "person", "bibentry", or "citation" now prints
    something better, one of which fixes PR#18422, reported by
    Benjamin Feakins.
  * Sys.timezone() queries timedatectl only if systemd is loaded;
    addressing a report by Jan Gorecki in PR#17421.
  * The formula method of cor.test() had scoping problems when
    environment(formula) was not the calling environment; reported
    with a patch proposal by Mao Kobayashi in PR#18439.
  * attach() of an environment with active bindings now preserves the
    active bindings.  Reported by Kevin Ushey in PR#18425.
  * BLAS detection now works also with system-provided libraries not
    available as regular files.  This fixes detection of the
    Accelerate framework on macOS since Big Sur.  Reported by David
    Novgorodsky.
  * download.file() gives a helpful error message in case of an
    invalid download.file.method option, thanks to Colin Fay's report
    in PR#18455.
  * Sporadic crashes of Rterm when using completion have been fixed.
  * Rprof() is now more reliable.  A livelock in thread
    initialization with too short sampling interval has been fixed on
    macOS.  A deadlock in using the C runtime has been fixed on
    Windows.  A potential deadlock has been prevented on Unix.
  * Cursor placement in Rgui now works even after a fixed-width font
    is selected.
  * Mandatory options (options()) are now set on startup so that
    saving and restoring them always works (PR#18372).
  * Package installation, R CMD INSTALL or install.packages(*), now
    parses each of the &lt;pkg&gt;/R/*.R files individually instead of
    first concatenating and then parse()ing the large resulting file.
    This allows parser or syntax errors to be diagnosed with correct
    file names and line numbers, thanks to Simon Dedman's report and
    Bill Dunlap's patch in PR#17859.
    This _does_ require syntactically self contained R source files
    now, fixing another inadvertent bug.
  * predict.lm(&lt;model with offset&gt;) now finds the offset in the
    correct environment, thanks to Andr'e Gillibert's report and patch
    in PR#18456.
  * getInitial(&lt;formula&gt;) now finds the selfStart model in the
    correct environment.  (Reported by Ivan Krylov in PR#18368.)
  * Fix for possible segfault when using recently-added graphics
    features, such as gradients, clipping paths, masks, and groups
    with pdf(file=NULL).
  * class(m) &lt;- class(m) no longer changes a matrix m by adding a
    class _attribute_.
  * packageDate(pkg) now only warns once if there is no pkg.
  * When ts() creates a multivariate time series, "mts", it also
    inherits from "array" now, and is.mts() is documented _and_
    stricter.
  * Rd2txt() now preserves line breaks of \verb Rd content and from
    duplicated \cr.  The former also fixes the rendering of verbatim
    output from Rd \Sexpr in plain-text help.
  * uniroot(f, interval) should no longer wrongly converge _outside_
    the interval in some cases where abs(f(x)) == Inf for an x at the
    interval boundary, thanks to posts by Ben Bolker and Serguei
    Sokol on R-devel.
  * Vectorized alpha handling in palette functions such as in gray(),
    rainbow(), or hcl.colors() works correctly now, thanks to Achim
    Zeileis' report and patch in PR#18476.
  * Formatting and print()ing of bibentry objects has dropped the
    deprecated citation.bibtex.max argument, such that the bibtex
    argument's default for print.bibentry() depends directly on the
    citation.bibtex.max option, whereas in format.bibentry() the
    option no longer applies.
  * Attempting to use a character string naming a foreign function
    entry point in a foreign function call in a package will now
    signal an error if the packages has called R_forceSymbols to
    specify that symbols must be used.
  * An error in table() could permanently set options(warn=2)
    promoting all subsequent warnings to errors.
  * The sigma() function gave misleading results for binary GLMs.  A
    new method for objects of class "glm" returns the square root of
    the estimate of the dispersion parameter using the same
    calculation as summary.glm().
  * bs() and ns() in the (typical) case of automatic knot
    construction, when some of the supposedly inner knots coincide
    with boundary knots, now moves them inside (with a warning),
    building on PR#18442 by Ben Bolker.
  * R CMD on Windows now skips the site profile with --no-site-file
    and --vanilla even when R_PROFILE is set (PR#18512, from Kevin
    Ushey).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1686916800">- CHANGES IN R 4.3.1:
  C-LEVEL FACILITIES:
  * The C-level API version of R's integrate(), Rdqags() in Applic.h,
    now returns the correct number of integrand evaluations neval,
    fixing PR#18515 reported and diagnosed by Stephen Wade.
  * The C prototypes for LAPACK calls dspgv and dtptrs in
    R_exts/Lapack.h had one too many and one too few character length
    arguments - but this has not caused any known issues. To get the
    corrected prototypes, include
    [#]include &lt;Rconfig.h&gt; // for PR18534fixed
    [#]ifdef PR18534fixed
    [#] define usePR18534fix 1
    [#]endif
    [#]include &lt;R_exts/Lapack.h&gt;
    in your C/C++ code (PR#18534).
  INSTALLATION:
  * Many of the checks of esoteric Internet operations and those
    using unreliable external sites have been moved to a new target
    that is not run by default and primarily intended for the core
    developers.  To run them use
    cd tests; make test-Internet-dev
  BUG FIXES:
  * .S3methods(), typically called from methods(), again marks
    methods from package base as visible.
    Also, the visibility of non-base methods is again determined by
    the method's presence in search().
  * tools::Rdiff() is now more robust against invalid strings, fixing
    installation tests on Windows without Rtools installed
    (PR#18530).
  * Fix (new) bug in hcl.colors(2, *), by Achim Zeileis (PR#18523).
  * head(., &lt;illegal&gt;) and tail(..) now produce more useful "Error in
    ...." error messages, fixing PR#18362.
  * Package code syntax on Windows is checked in UTF-8 when UTF-8 is
    the native encoding.
  * na.contiguous(x) now also returns the first run, when it is at
    the beginning and there is a later one of the same length;
    reported to R-devel, including a fix, by Georgi Boshnakov.
    Further, by default, it modifies only an existing attr(*,"tsp")
    but otherwise no longer sets one.
  * chol(&lt;not pos.def&gt;, pivot = &lt;T|F&gt;) now gives a correct error or
    warning message (depending on pivot), thanks to Mikael Jagan's
    (PR#18541).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1699012800">- CHANGES IN R 4.3.2:
  NEW FEATURES:
  * The default initialization of the "repos" option from the
    repositories file at startup can be skipped by setting
    environment variable R_REPOSITORIES to NULL such that
    getOption("repos") is empty if not set elsewhere.
  * qr.X() is now an implicit S4 generic in methods.
  * iconv(to = "ASCII//TRANSLIT") is emulated using substitution on
    platforms which do not support it (notably Alpine Linux).  This
    should give a human-readable conversion in ASCII on all platforms
    (rather than NA_character_).
  * trans3d() gains options continuous and verbose addressing the
    problem of possible "wrap around" when projecting too long
    curves, as reported by Achim Zeileis in PR#18537.
  * tools::showNonASCII() has been rewritten to work better on macOS
    14 (which has a changed implementation of iconv()).
  * tiff(type = "quartz") (the default on macOS) now warns if
    compression is specified: it continues to be ignored.
  INSTALLATION on a UNIX-ALIKE:
  * There is some support for building with Intel's LLVM-based
    compilers on x86_64 Linux, such as (C) icx, (C++) ipcx and
    (Fortran) ifx from oneAPI 2023.x.y.
  * There is support for using LLVM's flang-new as the Fortran
    compiler from LLVM 16.0.x (preferably 17.0.0 or later).
  UTILITIES:
  * R CMD check reports the use of the Fortran 90 random number
    generator RANDOM_NUMBER() and the subroutines to initialize it.
    'Writing R Extensions' has example code to use R's RNGs from
    Fortran.
  BUG FIXES:
  * substr(x, n, L) &lt;- cc now works (more) correctly for multibyte
    UTF-8 strings x when L &gt; nchar(x), thanks to a report and patch
    by 'Architect 95'.
  * contrib.url(character()) now returns 0-length character() as
    documented, which also avoids spurious warnings from
    available.packages() et al. in the edge case of an empty vector
    of repository URLs.
  * readChar(., 4e8) no longer fails, thanks to Kodi Arfer's report
    (PR#18557).
  * lapply(&lt;list&gt;, as.data.frame) no longer warns falsely for some
    base vector components.
  * Communication between parent and child processes in the multicore
    part of parallel could fail on platforms that do not support an
    arbitrarily large payload in system functions read()/write() on
    pipes (seen on macOS where a restriction to INT_MAX bytes is
    documented, without doing a partial read unlike Linux). The
    payload is now split into 1Gb chunks to avoid that problem.
    (PR#18571)
  * qqplot(x,y, conf.level=.) gives better confidence bounds when
    length(x) != length(y), thanks to Alexander Ploner's report and
    patch proposal (PR#18557).
  * norm(&lt;0-length&gt;, "2") now gives zero instead of an error, as all
    the other norm types, thanks to Mikael Jagan's PR#18542.
  * Build-stage Rd macros \packageAuthor and \packageMaintainer now
    process Authors@R, fixing NA results when the package DESCRIPTION
    omits Author and Maintainer fields.
  * Formatting and printing complex numbers could give things like
    0.1683-0i because of rounding error: -0i is now replaced by +0i.
  * postscript() refused to accept a title comment containing the
    letter "W" (PR#18599).
  * isoreg(c(1,Inf)) signals an error instead of segfaulting, fixing
    PR#18603.
  * tiff(type = "Xlib") was only outputting the last page of
    multi-page plots.
  * tools::latexToUtf8() again knows about \~{n} and other letters
    with tilde, fixing a regression in R 4.3.0, and about \^{i} as an
    alternative to \^{\i} (similarly with other accents).
    Furthermore, LaTeX codes for accented I letters are now correctly
    converted, also fixing related mistakes in
    tools::encoded_text_to_latex().
  * tar(*, tar = "internal") no longer creates out-of-spec tar files
    in the very rare case of user or group names longer than 32
    bytes, fixing PR#17871 with thanks to Ivan Krylov.
  * When using the "internal" timezone datetime code, adding a
    fraction of a second no longer adds one second, fixing PR#16856
    from a patch by Ivan Krylov.
  * tools::checkRd() no longer produces spurious notes about
    "unnecessary braces" from multi-line Rd results of \Sexpr macros.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1709208000">- CHANGES IN R 4.3.3:
  NEW FEATURES:
  * iconv() now fixes up variant encoding names such as "utf8"
    case-insensitively.
  DEPRECATED AND DEFUNCT:
  * The legacy encoding = "MacRoman" is deprecated in pdf() and
    postscript(): support was incomplete in earlier versions of R.
  BUG FIXES:
  * Arguments are now properly forwarded to methods on S4 generics
    with ... in the middle of their formal arguments. This was broken
    for the case when a method introduced an argument but did not
    include ... in its own formals. Thanks to Herv'e Pag`es for the
    report PR#18538.
  * Some invalid file arguments to pictex(), postscript() and xfig()
    opened a file called NA rather than throw an error.  These
    included postscript(NULL) (which some people expected to work
    like pdf(NULL)).
  * Passing filename = NA to svg(), cairo_pdf(), cairo_ps() or the
    Cairo-based bitmap devices opened a file called NA: it now throws
    an error.
  * quartz(file = NA) opened a file called NA, including when used as
    a Quartz-based bitmap device.  It now gives an error.
  * rank(&lt;long vector&gt;) now works, fixing PR#18617, thanks to Ilia
    Kats.
  * seq.int() did not adequately check its length.out argument.
  * match(&lt;POSIXct&gt;, .) is correct again for differing time zones,
    ditto for "POSIXlt", fixing PR#18618 reported by Bastian Klein.
  * drop.terms(*, dropx = &lt;0-length&gt;) now works, fixing PR#18563 as
    proposed by Mikael Jagan.
  * drop.terms(*) keeps + offset(.) terms when it should, PR#18565,
    and drop.terms() no longer makes up a response, PR#18566, fixing
    both bugs thanks to Mikael Jagan.
  * getS3method("t", "test") no longer finds the t.test() function,
    fixing PR#18627.
  * pdf() and postscript() support for the documented Adobe encodings
    "Greek" and "Cyrilllic" was missing (although the corresponding
    Windows' codepages could be used).
  * Computations of glyph metric information for pdf() and
    postscript() did not take into account that transliteration could
    replace one character by two or more (only seen on macOS 14) and
    typically warned that the information was not known.
  * rank(x) no longer overflows during integer addition, when
    computing rank average for largish but not-yet long vector x,
    fixing PR#18630, thanks to Ilia Kats.
  * list.files() on Windows now returns also files with names longer
    that 260 bytes (the Windows limit is 260 characters).
    Previously, some file names particularly with 'East Asian'
    characters were omitted.
  * cov2cor(&lt;0 x 0&gt;) now works, fixing PR#18423 thanks to Mikael
    Jagan and Elin Waring.
  * cov2cor(&lt;negative diagonal&gt;) and similar now give one warning
    instead of two, with better wording, fixing PR#18424 thanks to
    Mikael Jagan.
  * tools:: startDynamicHelp() now ensures port is in proper range,
    fixing PR#18645.
  * pbeta(x, a,b) is correct now for x=0 or 1 in the boundary cases
    where a or b or both are 0, fixing PR#18672 thanks to Michael
    Fay.
  * pmatch(x, table) for large table, also called for data frame row
    selection, dfrm[nm, ], is now interruptible, fixing PR#18656.
  * predict(&lt;rank-deficient lm&gt;, newdata=*) fix computing of nbasis,
    see Russ Lenth's comment 29 in PR#16158.
  * Added a work-around for a bug in macOS 14.3.1 and higher which
    prevents R plots in the Quartz Cocoa device from updating on
    screen.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1713960000">- CHANGES IN R 4.4.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Startup banners, R --version, sessionInfo() and R CMD check no
    longer report (64-bit) as part of the platform as this is almost
    universal - the increasingly rare 32-bit platforms will still
    report (32-bit).
    On Windows, ditto for window titles.
  * is.atomic(NULL) now returns FALSE, as NULL is not an atomic
    vector.  Strict back-compatibility would replace is.atomic(foo)
    by (is.null(foo) || is.atomic(foo)) but should happen only
    sparingly.
  NEW FEATURES:
  * The confint() methods for "glm" and "nls" objects have been
    copied to the stats package.  Previously, they were stubs which
    called versions in package MASS. The MASS namespace is no longer
    loaded if you invoke (say) confint(glmfit).  Further, the "glm"
    method for profile() and the plot() and pairs() methods for class
    "profile" have been copied from MASS to stats.  (profile.nls()
    and plot.profile.nls() were already in stats.)
  * The confint() and profile methods for "glm" objects have gained a
    possibility to do profiling based on the Rao Score statistic in
    addition to the default Likelihood Ratio. This is controlled by a
    new test = argument.
  * The pairs() method for "profile" objects has been extended with a
    which = argument to allow plotting only a subset of the
    parameters.
  * The "glm" method for anova() computes test statistics and
    p-values by default, using a chi-squared test or an F test
    depending on whether the dispersion is fixed or free.  Test
    statistics can be suppressed by giving argument test a false
    logical value.
  * In setRepositories() the repositories can be set using their
    names via name = instead of index ind =.
  * methods() and .S3methods() gain a all.names option for the (rare)
    case where functions starting with a . should be included.
  * Serializations can now be interrupted (e.g., by Ctrl-C on a
    Unix-alike) if they take too long, e.g., from save.image(),
    thanks to suggestions by Ivan Krylov and others on R-devel.
  * New startup option --max-connections to set the maximum number of
    simultaneous connections for the session.  Defaults to 128 as
    before: allowed values up to 4096 (but resource limits may in
    practice restrict to smaller values).
  * R on Windows (since Windows 10 2004) now uses the new Segment
    Heap allocator. This may improve performance of some
    memory-intensive applications.
  * When R packages are built, typically by R CMD build &lt;pkg&gt;, the
    new --user=&lt;build_user&gt; option overrides the (internally
    determined) user name, currently Sys.info()["user"] or LOGNAME.
    This is a (modified) fulfillment of Will Landau's suggestion in
    PR#17530.
  * tools::testInstalledBasic() gets new optional arguments outDir
    and testSrcdir, e.g., allowing to use it in a &lt;builddir&gt; !=
    &lt;srcdir&gt; setup, and in standard "binary" Windows installation
  * if* a source tests/ folder is present.
  * range(&lt;DT_with_Inf&gt;, finite = TRUE) now work for objects of class
    "Date", "POSIXct", and "POSIXlt" with infinite entries,
    analogously to range.default(), as proposed by Davis Vaughan on
    R-devel.  Other range()-methods can make use of new function
    .rangeNum().
  * New .internalGenerics object complementing .S3PrimitiveGenerics,
    for documentation and low-level book-keeping.
  * grid() now invisibly returns the x- and y- coordinates at which
    the grid-lines were drawn.
  * norm(., type) now also works for complex matrices.
  * kappa(., exact = TRUE, norm = *) now works for all norms and also
    for complex matrices.  In symmetric / triangular cases, the new
    argument uplo = "U" | "L" allows the upper or lower triangular
    part to be specified.
  * memDecompress(type = "unknown") recognizes compression in the
    default 'zlib' format as used by memCompress(type = "gzip").
  * memCompress() and memDecompress() will use the libdeflate library
    (&lt;https://github.com/ebiggers/libdeflate&gt;) if installed.  This
    uses the same type of compression for type = "gzip" but is 1.5-2x
    faster than the system libz library on some common platforms: the
    speed-up may depend on the library version.
  * diff() for objects of class "Date", "POSIXct", and "POSIXlt"
    accepts a units argument passed via ....
  * Dynamic help now does a much better job of rendering package
    DESCRIPTION metadata.
  * Rprof() gains an event argument and support for elapsed (real)
    time profiling on Unix (PR#18076).
  * filled.contour() gains a key.border argument.
  * tools::update_pkg_po() gets arguments pot_make and mo_make for
    _not_ re-making the corresponding files, and additionally a
    verbose argument.
  * Hexadecimal string colour specifications are now accepted in
    short form, so, for example, we can use "#123", which is
    equivalent to "#112233".
    Thanks to MikeFC for the original idea and Ella Kaye, Malcolm
    Barrett, George Stagg, and Hanne Oberman for the patch.
  * Plain-text help shows \var markup by angle brackets.
  * The new experimental primitive function declare() is intended to
    eventually allow information about R code to be communicated to
    the interpreter, compiler, and code analysis tools. The syntax
    for declarations is still being developed.
  * Functions psmirnov(), qsmirnov() and rsmirnov() in package stats
    have had argument two.sided renamed to alternative, to take into
    account that the permutation distributions of the one-sided
    statistics can be different in the case of ties.  Consequence of
    PR#18582.
  * sort() is now an implicit S4 generic in methods.
  * Formatting and printing, format(z), print(z), of complex vectors
    z no longer zap relatively small real or imaginary parts to zero,
    fixing PR#16752.  This is an API change, as it was documented
    previously to round real and imaginary parts together on purpose,
    producing nicer looking output.  As mentioned, e.g. in the PR,
    this change is compatible with many other "R-like" programming
    environments.
    We have simplified the internal code and now basically format the
    real and imaginary parts independently of each other.
  * New experimental functions Tailcall() and Exec() to support
    writing stack-space-efficient recursive functions.
  * Where characters are attempted to be plotted by pdf(),
    postscript() and xfig() which are not in the selected 8-bit
    character set (most often Latin-1) and the R session is using a
    UTF-8 locale, the warning messages will show the UTF-8 character
    rather than its bytes and one dot will be substituted per
    character rather than per byte.  (Platforms whose iconv() does
    transliteration silently plot the transliteration.)
    In a UTF-8 locale some transliterations are now done with a
    warning (e.g., dashes and Unicode minus to hyphen, ligatures are
    expanded, permille (‰) is replaced by o/oo), although the OS may
    have got there first.  These are warnings as they will continue
    to be replaced by dots in earlier versions of R.
  * The matrix multiplication functions crossprod() and tcrossprod()
    are now also primitive and S3 generic, as %*% had become in R
    4.3.0.
  * source() and example() have a new optional argument catch.aborts
    which allows continued evaluation of the R code after an error.
  * The non-Quartz tiff() devices allow additional types of
    compression if supported by the platform's libtiff library.
  * The list of base and recommended package names is now provided by
    tools::standard_package_names().
  * cairo_pdf() and cairo_ps() default to onefile = TRUE to closer
    match pdf() and postscript().
  * New option catch.script.errors provides a documented way to catch
    errors and then continue in non-interactive use.
  * L %||% R newly in base is an expressive idiom for the phrases
    if(!is.null(L)) L else R or if(is.null(L)) R else L.
  * The return value from warnings() now always inherits from
    "warnings" as documented, now also in the case of no warnings
    where it previously returned NULL.
  * as.complex("1i") now returns 0 + 1i instead of NA with a warning.
  * z &lt;- c(NA, 1i) now keeps the imaginary part Im(z[1]) == 0, no
    longer coercing to NA_complex_.  Similarly, cumsum(z) correctly
    sums real and imaginary parts separately, i.e., without
    "crosstalk" in case of NAs.
  * On Alpine Linux iconv() now maps "latin2", "latin-2", "latin9"
    and "latin-9" to encoding names the OS knows about
    (case-insensitively).
  * iconv(sub = "Unicode") now always zero-pads to four (hex) digits,
    rather than to 4 or 8.  (This seems to have become the convention
    once Unicode restricted the number of Unicode points to 2^21 - 1
    and so will never need more than 6 digits.)
  * NCOL(NULL) now returns 0 instead of 1, for consistency with
    cbind().
  * The information for the Euro glyph missing from the Adobe .afm
    files for the Courier, Helvetica and Times families has been
    copied from their URW equivalents - this will improve vertical
    centring in the pdf() and postscript() devices.
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.12.0.  The changes are almost entirely cosmetic.
  * The included LAPACK sources have been updated to version 3.12.0
    and some further double-complex routines added.
  * There are new font families for the 2014--5 URW 2.0 fonts (see
    ?pdf) which are included in recent versions of Ghostscript.
    These have font widths for most Greek glyphs and a few others
    which were missing from the original versions (whose font
    families remain available for reproducibility, although
    Ghostscript-based viewers will render using the 2.0 versions).
  * Improve the large-n efficiency of as.matrix(&lt;dist&gt;), thanks an R
    contributors effort, notably by Tim Taylor and Heather Turner,
    see PR#18660.
  * The default and numeric methods of all.equal() get a check.class
    option.
  * zapsmall() gets new optional arguments, function mFUN and min.d,
    for extra flexibility; fulfills a wish in PR#18199.  Also, it is
    now an implicit S4 generic in package methods.
  * The Rd filter for aspell() gains an ignore argument.
  * New generic function sort_by(), primarily useful for the
    data.frame method which can be used to sort rows of a data frame
    by one or more columns.
  * The icence headers for the RPC code in src/extra/xdr have been
    updated to use the GPL-compatible licence published by Oracle
    America in 2010.
  * New function pkg2HTML() in tools to create single-page HTML
    reference manuals for R packages.
  * The byte code evaluator now uses less C stack space for recursive
    calls to byte-compiled functions. It also makes more of an effort
    to avoid allocations for scalar return values.
  * New completion option backtick (disabled by default) allows
    non-syntactic completions to be wrapped in backquotes. This is
    currently only useful for Jupyter notebooks via the IRkernel
    package, and may cause problems for other backends.
  INSTALLATION:
  * The parser has been updated to work with bison 3.8.2, which is
    now used for the pre-generated parsers in gram.c, file.c, and
    gramRd.c. A few parser error messages have changed, which may
    affect code that relies on exact messages.
  INSTALLATION on a UNIX-ALIKE:
  * System valgrind headers are now required to use configure option
  - -with-valgrind-instrumentation with value 1 or 2.
  * configure will warn if it encounters a 32-bit build, as that is
    nowadays almost untested.
  * Environment variable R_SYSTEM_ABI is no longer used and so no
    longer recorded in etc/Renviron (it was not on Windows and was
    only ever used when preparing package tools).
  * If the libdeflate library and headers are available, libdeflate
    rather than libz is used to (de)compress R objects in lazy-load
    databases.  Typically tasks spend up to 5% of their time on such
    operations, although creating lazy-data databases is one of the
    exceptions.
    This can be suppressed if the library is available by the
    configure option --without-libdeflate-compression.
  * configure option --enable-lto=check has not worked reliably since
    2019 and has been removed.
  * The minimum autoconf requirement for a maintainer build has been
    increased to autoconf 2.71.
    It is intended to increase this to 2.72 for R 4.5.0: the
    distributed configure file was generated using 2.72.
  * The minimum version requirement for an external LAPACK has been
    reduced to 3.9.0.
  * No default C++ compiler is set if no C++17 compiler is detected:
    there is no longer an automatic fallback to C++14 or C++11.
    Compilers from the last five years should have sufficient
    support: for others macros CXX and CXXSTD can be set in file
    config.site to provide a fallback if needed.
    The Objective-C++ compiler now by default uses the standard
    selected by R for C++ (currently C++17) rather than the default
    standard for the C++ compiler (which on macOS is still C++98).
  INSTALLATION on macOS:
  * A new configure option --with-newAccelerate makes use of Apple's
    'new' BLAS / LAPACK interfaces in their Accelerate framework.
    Those interfaces are only available in macOS 13.3 or later, and
    building requires SDK 13.3 or later (from the Command Line Tools
    or Xcode 14.3 or later).
    By default the option uses new Accelerate for BLAS calls: to also
    use it for LAPACK use option --with-newAccelerate=lapack.  The
    later interfaces provide LAPACK 3.9.1 rather than 3.2.1: 3.9.1 is
    from 2021-04 and does not include the improved algorithms
    introduced in LAPACK 3.10.0 (including for BLAS calls).
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools44, an update of the Rtools43 toolchain.  It is
    based on GCC 13 and newer versions of MinGW-W64, binutils and
    libraries (targeting 64-bit Intel CPUs).  R-devel can no longer
    be built using Rtools43 without changes.
  * Rtools44 has experimental support for 64-bit ARM (aarch64) CPUs
    _via_ the LLVM 17 toolchain using lld, clang/flang-new and
    libc++.
  UTILITIES:
  * R CMD check notes when S4-style exports are used without
    declaring a strong dependence on package methods.
  * tools::checkRd() (used by R CMD check) detects more problems with
    \Sexpr-based dynamic content, including bad nesting of \Sexprs
    and invalid arguments.
  * tools::checkRd() now reports Rd titles and section names ending
    in a period; this is ignored by R CMD check unless environment
    variable _R_CHECK_RD_CHECKRD_MINLEVEL_ is set to -5 or smaller.
  * R CMD check now notes Rd files without an \alias, as long
    documented in 'Writing R Extensions' §1.3.1.  The check for a
    missing \description has been moved from tools::checkRd() to
    tools::checkRdContents().
  * R CMD check now visits inst/NEWS.Rd and OS-specific man
    subdirectories when checking Rd files.
  * tools::checkDocFiles() and tools::checkRdContents() now also
    check internal Rd files by default, but "specially" (ignoring
    missing documentation of arguments).
  * R CMD Rdiff gets option --useEx.
  * R CMD check now warns on non-portable uses of Fortran KIND such
    as INTEGER(KIND=4) and REAL(KIND=8).
    To see the failing lines set environment variable
    _R_CHECK_FORTRAN_KIND_DETAILS_ to a true value.
  * When checking Rd files, R CMD check now notes some of the "lost
    braces" that tools::checkRd() finds.  Typical problems are Rd
    macros missing the initial backslash (e.g., code{...}), in-text
    set notation (e.g., {1, 2}, where the braces need escaping), and
    \itemize lists with \describe-style entries of the form
    \item{label}{description}.
  * R CMD INSTALL (and hence check) will compile C++ code with
  - DR_NO_REMAP if environment variable _R_CXX_USE_NO_REMAP_ is set
    to a true value.  It is planned that this will in future become
    the default for compiling C++.
  * The new built-in Rd macro \dontdiff{} can be used to mark example
    code whose output should be ignored when comparing check output
    to reference output (tests/Examples/&lt;pkg&gt;-Ex.Rout.save).  The
    \dontdiff tag, like \donttest, is _not_ shown on the rendered
    help page, so provides a clean alternative to ##
    IGNORE_RDIFF_(BEGIN|END) comments.
  * R CMD build when there is no NAMESPACE, now uses the recommended
    exportPattern("^[^.]"), instead of exporting everything.
  * R CMD check now warns about non-ASCII characters in the NAMESPACE
    file (in addition to R files). Such packages are not portable and
    may fail to install on some platforms.
  C-LEVEL FACILITIES:
  * Headers R_ext/Applic.h and R-ext/Linpack.h used to include
    R_ext/BLAS.h although this was undocumented and unneeded by their
    documented entry points.  They no longer do so.
  * New function R_missing(), factored out from do_missing(), used to
    fix PR#18579.
  * SEXP type S4SXP has been renamed to OBJSXP to support
    experimenting with alternative object systems.  The S4SXP value
    can still be used in C code but is now deprecated.  Based on
    contributions from the R Consortium's Object-Oriented Programming
    Working Group.
  * New function pow1p(x,y) for accurate (1+x)^y.
  * mkCharLenCE was incorrectly documented to take a size_t length
    but was implemented with int (and character strings in R are
    limited to 2^31 - 1 bytes).
  DEPRECATED AND DEFUNCT:
  * data() no longer handles zipped data from long-defunct (since R
    2.13.0) --use-zip-data installations.
  * The legacy graphics devices pictex() and xfig() are now
    deprecated.  They do not support recent graphics enhancements and
    their font handling is rudimentary. The intention is to retain
    them for historical interest as long as they remain somewhat
    functional.
  * Support for encoding = "MacRoman" has been removed from the pdf()
    and postscript() devices - this was a legacy encoding supporting
    classic macOS up to 2001 and no longer has universal libiconv
    support.
  * is.R() is deprecated as no other S dialect is known to be in use
    (and this could only identify historical dialects, not future
    ones).
    Further information on calls can be obtained by setting the
    environment variable _R_DEPRECATED_IS_R_ to error which turns the
    deprecation warning into an error and so by default gives a
    traceback.  (This is done by R CMD check --as-cran.)
  * UseMethod() no longer forwards local variables assigned in the
    generic function into method call environments before evaluating
    the method body. This makes method calls behave more like
    standard function calls and makes method code easier to analyze
    correctly.
  * The twelve as.data.frame.&lt;class&gt;() methods which were deprecated
    only via _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ and in R CMD
    check --as-cran are formally deprecated now in favour of calling
    as.data.frame() or as.data.frame.vector().  The deprecation
    "check" now works also when as.data.frame() is S4 generic thanks
    to Ivan Krylov.
  * The default method for the directional comparison operators &lt;, &gt;,
    &lt;=, and &gt;= now signals an error when one of the operands is a
    language object, i.e. a symbol or a call.
  * For terms.formula(), deprecate abb and neg.out arguments
    _formally_ in addition to just documenting it.
  BUG FIXES:
  * The methods package is more robust to not being attached to the
    search path.  More work needs to be done.
  * pairwise.t.test() misbehaved when subgroups had 0 DF for
    variance, even with pool.sd = TRUE.  (PR#18594 by Jack Berry).
  * Probability distribution functions [dpq]&lt;distrib&gt;(x, *), but also
    bessel[IKJY](x, .) now consistently preserve attributes(x) when
    length(x) == 0, e.g., for a 2 x 0 matrix, thanks to Karolis
    Koncevičius' report PR#18509.
  * Group "Summary" computations such as sum(1:3, 4, na.rm = 5, NA,
    7, na.rm = LL) now give an error instead of either 17 or NN for
    LL true or false, as proposed by Ivan Krylov on the R-devel
    mailing list.  (This also means it is now an error to specify
    na.rm more than once.)
  * as.complex(x) now returns complex(real = x, imaginary = 0) for
    _all_ numerical and logical x, notably also for NA or
    NA_integer_.
  * Directories are now omitted by file.copy(, recursive = FALSE) and
    in file.append() (PR#17337).
  * gsub() and sub() are now more robust to integer overflow when
    reporting errors caused by too large input strings (PR#18346).
  * Top-level handlers are now more robust to attempts to remove a
    handler whilst handlers are running (PR#18508).
  * The handling of Alt+F4 in dialogs created on Windows using
    GraphApp has been fixed (PR#13870).
  * density() more consistently computes grid values for the
    FFT-based convolution, following Robert Schlicht's analysis and
    proposal in PR#18337, correcting density values typically by a
    factor of about 0.999.  Argument old.coords = TRUE provides back
    compatibility.
  * palette.colors() gains a name argument that defaults to FALSE
    controlling whether the vector of colours that is returned has
    names (where possible).  PR#18529.
  * tools::xgettext() no longer extracts the (non-translatable) class
    names from warningCondition and errorCondition calls.
  * S3method(&lt;gen&gt;, &lt;class&gt;, &lt;func&gt;) in the NAMESPACE file now works
    (again) when &lt;func&gt; is visible from the namespace, e.g.,
    imported, or in base.
  * getParseData(f) now also works for a function defined in the
    first of several &lt;pkg&gt;/R/*.R source files, thanks to Kirill
    Müller's report and Duncan Murdoch's patch in PR#16756.
  * Rd \Sexpr macros with nested #ifdef conditionals were not
    processed.
  * A non-blocking connection with non-default encoding (such as a
    socket) now correctly returns from readLines() after new data has
    arrived also when its EOF had been reached previously.  Thanks to
    Peter Meilstrup's report on R-devel and Ivan Krylov's report and
    patch proposal in PR#18555.
  * tools::checkRdContents() failed to detect empty argument
    descriptions when they spanned multiple lines, including those
    generated by prompt().  These cases are now noted by R CMD check.
  * Plain-text help no longer outputs spurious colons in the
    arguments list (for multi-line \item labels in the Rd source).
  * kappa() and rcond() work correctly in more cases; kappa(., norm =
    "2") now warns that it computes the 1-norm with (default) exact =
    FALSE; prompted by Mikael Jagan's quite comprehensive PR#18543.
  * Rd skeletons generated by prompt() or promptData() now use a
    dummy title (so R CMD build works).  tools::checkRdContents() has
    been updated to detect such template leftovers, including from
    promptPackage().
  * When S4 method dispatch fails because no method was found, the
    error message now includes the signature argument names; thanks
    to Michael Chirico's proposal on the R-devel list.
  * withAutoprint({ .. }) now preserves srcrefs previously lost,
    thanks to Andrew Simmons' report plus fix in PR#18572.
  * transform.data.frame() no longer adjusts names; in particular,
    untransformed variables are kept as-is, including those with
    syntactically invalid names (PR#17890).
  * The keep.source option for Rd \Sexpr blocks is no longer ignored.
  * The formula methods for t.test() and wilcox.test() now catch when
    paired is passed, addressing PR#14359; use Pair(x1, x2) ~ 1 for a
    paired test.
  * The level reported in the browser prompt was often too large. It
    now shows the number of browser contexts on the stack.
  * For cbind() and rbind(), the optional deparse.level argument is
    now properly passed to methods, thanks to Mikael Jagan's PR#18579
    and comments there.
  * Some error and warning messages for large ('long vector')
    matrix(v, nr, nc) and dim(m) &lt;- d are now correct about sizes,
    using long long formatting, fixing PR#18612 (and more) reported
    by Mikael Jagan.
  * readChar(useBytes = TRUE) now terminates strings even when the
    underlying connection uses extra spaces in the input buffer.
    This fixes problems with extra garbage seen with gzip
    connections, PR#18605.
  * Named capture in PCRE regular expressions now works also with
    more than 127 named groups (PR#18588).
  * Datetime functions are now robust against long jumps when dealing
    with internal time zone changes.  This avoids confusing warnings
    about an invalid time zone, previously triggered by turning
    warnings into errors or handling them via tryCatch (PR#17966,
    PR#17780).
  * Datetime functions now restore even an empty TZ environment
    variable after internal time zone changes (PR#17724).  This makes
    results of datetime functions with this (typically unintentional)
    setting more predictable.
  * drop.terms(*) now drops response as by default, keep.response =
    FALSE, fixing PR#18564 thanks to Mikael Jagan.
  * dummy.coef(.) now also works for lm()-models with character
    categorical predictor variables rather than factor ones, fixing
    PR#18635 reported by Jinsong Zhao.
  * formals(f) &lt;- formals(f) now also works for a function w/o
    arguments and atomic _constant_ body(f).
  * Correct as.function(&lt;invalid list&gt;, .)'s error message.
  * removeSource() is yet more thorough in finding and removing
    "srcref" and the other source references from parsed R language
    chunks, fixing PR#18638 thanks to Andrew Simmons.
  * dgeom() is more accurate now, notably when its result is very
    small, fixing PR#18642 thanks to the proposal of Morten Welinder,
    also improving other instances where C level binom_raw(x, n, ..)
    has x == 0 or x== n.
  * warning() with options(warn = 1) has improved output for
    multi-line messages.
  * axis.Date() and axis.POSIXct() now respect the par("lab") setting
    for the number of pretty() intervals.
  * Comparisons for language objects (which are based on deparsing)
    are now more careful about using accurate deparsed results
    (PR#18676).
  * Plain-text help (Rd2txt) now correctly preserves blank lines
    following single-line \dontrun code.
  * &lt;POSIXlt&gt;[*] no longer sets wrong "balanced" attribute, fixing
    PR#18681 thanks to Mikael Jagan.
  * str(&lt;classed-call&gt;) now deparses the call as expected, fixing
    PR#18684, reported by Dave Slager.
  * In Rd examples, code following the closing brace of a \dontrun,
    \dontshow or \donttest tag on the same line is no longer skipped
    when R CMD check runs the examples.
  * as.data.frame(matrix(*, ncol=0)) now gets valid names() and
    colnames(); reported by Davis Vaughan on the R-devel list.
  * Internal Mathlib function stirlerr(n) is now almost fully
    (52-bit) accurate for all n &gt;= ~5.9 and more accurate also in the
    range 1 -- 5.9.  This entails small ("after 12th decimal")
    changes in density functions, e.g., dgamma() in _some_ regions of
    their support.  The fix was partly prompted by Morten Welinder's
    PR#18640.
  * Numbers like 9876543.2 are now considered non-integer by Mathlib
    internal R_nonint(), amending original fix of PR#15734.
  * Rd comment lines no longer cause broken paragraphs in the
    rendered PDF and plain-text help. In code blocks, pure comment
    lines (starting with %) no longer produce an empty line.
  * xtabs(Freq ~ .) now consistently defaults to na.action = na.pass,
    using na.rm = FALSE (added as an argument) when summing over Freq
    (PR#17770).
  * tools::testInstalledPackage() is no longer silent about failures
    from running examples or tests and its return code no longer
    ignores failures from checking vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1718366400">- CHANGES IN R 4.4.1:
  C-LEVEL FACILITIES:
  * Functions R_atof and R_strtod declared in header R_ext/Utils.h
    are now documented in 'Writing R Extensions' and so formally part
    of the API.
  * The non-API entry points Rf_setSVector, Rf_StringFalse,
    Rf_StringTrue and Rf_isBlankString have been added to those
    reported by R CMD check.
  * The new function Rf_allocLang is now available. This provides an
    alternative to the idiom of calling Rf_allocList followed by
    SET_TYPEOF.
  UTILITIES:
  * R CMD check now reports as warnings what gfortran calls 'Fortran
    2018 deleted features', all of which have long been marked as
    'obsolescent' and some of which were deleted in Fortran 2008 or
    earlier.  Fortran compilers are no longer required to support
    these.
  BUG FIXES:
  * as.numeric(), scan(), type.convert() and other places which use
    the internal C function R_strtod now require a _non-empty_ digit
    sequence in a decimal or binary exponent.  This aligns with the
    C/POSIX standard for strtod and with ?NumericConstants.
  * as.data.frame(m, make.names=NA) now works correctly for a matrix
    m with NA's in row names.
  * The error message from &lt;POSIXlt&gt;[["hour"]] and similar now
    mentions *[[, "hour"]], as wished for in PR#17409 and proposed by
    Michael Chirico.
  * qbinom() and potentially qpois(), qnbinom(), no longer sometimes
    fail accurate inversion (of pbinom(), etc), thanks to Christopher
    Chang's report and patch in PR#18711.
  * The internal help server on Windows can again serve requests sent
    in quick succession, fixing a regression in R 4.4.0.
  * debugcall(&lt;S3Generic&gt;()) now also works when a corresponding
    S4-generic version is in the methods cache (PR#18143).
  * Package tools' toTitleCase(ch0) now returns character(0) when ch0
    is of zero length; fixing PR#18724, reported by David Hugh Jones.
  * R CMD check is no longer broken (without a check result and no
    explanation in 00check.log) for a package which declares an
    invalid VignetteBuilder in DESCRIPTION but has no vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1730376000">- CHANGES IN R 4.4.2:
  C-LEVEL FACILITIES:
  * The S-compatibility macros F77_COM and F77_COMDECL defined in
    header R_ext/RS.h are deprecated and will be removed shortly.  We
    could find no record of their use.
  BUG FIXES:
  * Mathlib function lgammacor(x) no longer warns about underflow to
    zero for large x.
  * Text widths and heights were incorrectly reported by the Quartz
    device if the drawing context didn't exist yet (typically when
    drawing off-screen to a window that is yet to appear, see
    PR#18591).
  * The Quartz device could segfault in cases where paths with spaces
    are used in the new glyph drawing API.  Thanks to Tomek
    Gieorgijewski (PR#18758).
  * On macOS in R CRAN builds, it is again possible to read
    little-endian UTF-16 text with a BOM from a connection using
    encoding="UTF-16".  Users building R from source should avoid
    using the system libiconv in macOS 14.1 and later.
  * methods' internal .requirePackage() now re-enables primitive
    method dispatch when needed; thanks to Ivan Krylov for
    demystifying CRAN package check failures on the R-devel mailing
    list.</changelog>
</package>
<package pkgid="34e77ad2f247ac425fd6146753c806bd4fb804d46d01555f5ccd08e9876530321fb31b735ea17c0c260fde4c698aa49a35457f60f93dc2a3cc6cccd6e11d5bbc" name="R-nlme" arch="x86_64">
  <version epoch="0" ver="3.1.166" rel="51.0.2.2.sr20241103"/>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1620302400">- To get in sync with d:l:R:autoCRAN the Matrix package's split
  in -devel was reversed.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339200">- improved spec file according to comments of dimstar in
  https://build.opensuse.org/request/show/892685</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339201">- CHANGES IN R 4.1.0:
  FUTURE DIRECTIONS:
  * It is planned that the 4.1.x series will be the last to support
    32-bit Windows, with production of binary packages for that
    series continuing until early 2023.
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Data set esoph in package datasets now provides the correct
    numbers of controls; previously it had the numbers of cases added
    to these.  (Reported by Alexander Fowler in PR#17964.)
  NEW FEATURES:
  * www.omegahat.net is no longer one of the repositories known by
    default to setRepositories().  (Nowadays it only provides source
    packages and is often unavailable.)
  * Function package_dependencies() (in package tools) can now use
    different dependency types for direct and recursive dependencies.
  * The checking of the size of tarball in R CMD check --as-cran
    &lt;pkg&gt; may be tweaked via the new environment variable
    _R_CHECK_CRAN_INCOMING_TARBALL_THRESHOLD_, as suggested in
    PR#17777 by Jan Gorecki.
  * Using c() to combine a factor with other factors now gives a
    factor, an ordered factor when combining ordered factors with
    identical levels.
  * apply() gains a simplify argument to allow disabling of
    simplification of results.
  * The format() method for class "ftable" gets a new option justify.
    (Suggested by Thomas Soeiro.)
  * New ...names() utility.  (Proposed by Neal Fultz in PR#17705.)
  * type.convert() now warns when its as.is argument is not
    specified, as the help file always said it _should_.  In that
    case, the default is changed to TRUE in line with its change in
    read.table() (related to stringsAsFactor) in R 4.0.0.
  * When printing list arrays, classed objects are now shown _via_
    their format() value if this is a short enough character string,
    or by giving the first elements of their class vector and their
    length.
  * capabilities() gets new entry "Rprof" which is TRUE when R has
    been configured with the equivalent of --enable-R-profiling (as
    it is by default).  (Related to Michael Orlitzky's report
    PR#17836.)
  * str(xS4) now also shows extraneous attributes of an S4 object
    xS4.
  * Rudimentary support for vi-style tags in rtags() and R CMD rtags
    has been added.  (Based on a patch from Neal Fultz in PR#17214.)
  * checkRdContents() is now exported from tools; it and also
    checkDocFiles() have a new option chkInternal allowing to check
    Rd files marked with keyword "internal" as well.  The latter can
    be activated for R CMD check via environment variable
    _R_CHECK_RD_INTERNAL_TOO_.
  * New functions numToBits() and numToInts() extend the raw
    conversion utilities to (double precision) numeric.
  * Functions URLencode() and URLdecode() in package utils now work
    on vectors of URIs.  (Based on patch from Bob Rudis submitted
    with PR#17873.)
  * path.expand() can expand ~user on most Unix-alikes even when
    readline is not in use.  It tries harder to expand ~, for example
    should environment variable HOME be unset.
  * For HTML help (both dynamic and static), Rd file links to help
    pages in external packages are now treated as references to
    topics rather than file names, and fall back to a file link only
    if the topic is not found in the target package. The earlier rule
    which prioritized file names over topics can be restored by
    setting the environment variable _R_HELP_LINKS_TO_TOPICS_ to a
    false value.
  * c() now removes NULL arguments before dispatching to methods,
    thus simplifying the implementation of c() methods, _but_ for
    back compatibility keeps NULL when it is the first argument.
    (From a report and patch proposal by Lionel Henry in PR#17900.)
  * Vectorize()'s result function's environment no longer keeps
    unneeded objects.
  * Function ...elt() now propagates visibility consistently with
    ..n.  (Thanks to Lionel Henry's PR#17905.)
  * capture.output() no longer uses non-standard evaluation to
    evaluate its arguments.  This makes evaluation of functions like
    parent.frame() more consistent.  (Thanks to Lionel Henry's
    PR#17907.)
  * packBits(bits, type="double") now works as inverse of
    numToBits().  (Thanks to Bill Dunlap's proposal in PR#17914.)
  * curlGetHeaders() has two new arguments, timeout to specify the
    timeout for that call (overriding getOption("timeout")) and TLS
    to specify the minimum TLS protocol version to be used for
    https:// URIs (_inter alia_ providing a means to check for sites
    using deprecated TLS versions 1.0 and 1.1).
  * For nls(), an optional constant scaleOffset may be added to the
    denominator of the relative offset convergence test for cases
    where the fit of a model is expected to be exact, thanks to a
    proposal by John Nash.  nls(*, trace=TRUE) now also shows the
    convergence criterion.
  * Numeric differentiation _via_ numericDeriv() gets new optional
    arguments eps and central, the latter for taking central divided
    differences.  The latter can be activated for nls() via
    nls.control(nDcentral = TRUE).
  * nls() now passes the trace and control arguments to getInitial(),
    notably for all self-starting models, so these can also be fit in
    zero-noise situations via a scaleOffset.  For this reason, the
    initial function of a selfStart model must now have ... in its
    argument list.
  * bquote(splice = TRUE) can now splice expression vectors with
    attributes: this makes it possible to splice the result of
    parse(keep.source = TRUE).  (Report and patch provided by Lionel
    Henry in PR#17869.)
  * textConnection() gets an optional name argument.
  * get(), exists(), and get0() now signal an error if the first
    argument has length greater than 1.  Previously additional
    elements were silently ignored.  (Suggested by Antoine Fabri on
    R-devel.)
  * R now provides a shorthand notation for creating functions, e.g.
    \(x) x + 1 is parsed as function(x) x + 1.
  * R now provides a simple native forward pipe syntax |&gt;.  The
    simple form of the forward pipe inserts the left-hand side as the
    first argument in the right-hand side call.  The pipe
    implementation as a syntax transformation was motivated by
    suggestions from Jim Hester and Lionel Henry.
  * all.equal(f, g) for functions now by default also compares their
    environment(.)s, notably via new all.equal method for class
    function.  Comparison of nls() fits, e.g., may now need
    all.equal(m1, m2, check.environment = FALSE).
  * .libPaths() gets a new option include.site, allowing to _not_
    include the site library.  (Thanks to Dario Strbenac's suggestion
    and Gabe Becker's PR#18016.)
  * Lithuanian translations are now available.  (Thanks to Rimantas
    Zakauskas.)
  * names() now works for DOTSXP objects.  On the other hand, in
    R-lang, the R language manual, we now warn against relying on the
    structure or even existence of such dot-dot-dot objects.
  * all.equal() no longer gives an error on DOTSXP objects.
  * capabilities("cairo") now applies only to the file-based devices
    as it is now possible (if very unusual) to build R with Cairo
    support for those but not for X11().
  * There is optional support for tracing the progress of
    loadNamespace() - see its help.
  * (Not Windows.)  l10n_info() reports an additional element, the
    name of the encoding as reported by the OS (which may differ from
    the encoding part (if any) of the result from
    Sys.getlocale("LC_CTYPE").
  * New function gregexec() which generalizes regexec() to find _all_
    disjoint matches and well as all substrings corresponding to
    parenthesized subexpressions of the given regular expression.
    (Contributed by Brodie Gaslam.)
  * New function charClass() in package utils to query the
    wide-character classification functions in use (such as
    iswprint).
  * The names of quantile()'s result no longer depend on the global
    getOption("digits"), but quantile() gets a new optional argument
    digits = 7 instead.
  * grep(), sub(), regexp and variants work considerably faster for
    long factors with few levels.  (Thanks to Michael Chirico's
    PR#18063.)
  * Provide grouping of x11() graphics windows within a window
    manager such as Gnome or Unity; thanks to a patch by Ivan Krylov
    posted to R-devel.
  * The split() method for class data.frame now allows the f argument
    to be specified as a formula.
  * sprintf now warns on arguments unused by the format string.
  * New palettes "Rocket" and "Mako" for hcl.colors() (approximating
    palettes of the same name from the 'viridisLite' package).
    Contributed by Achim Zeileis.
  * The base environment and its namespace are now locked (so one can
    no longer add bindings to these or remove from these).
  * Rterm handling of multi-byte characters has been improved,
    allowing use of such characters when supported by the current
    locale.
  * Rterm now accepts ALT+ +xxxxxxxx sequences to enter Unicode
    characters as hex digits.
  * Environment variable LC_ALL on Windows now takes precedence over
    LC_CTYPE and variables for other supported categories, matching
    the POSIX behaviour.
  * duplicated() and anyDuplicated() are now optimized for integer
    and real vectors that are known to be sorted via the ALTREP
    framework. Contributed by Gabriel Becker via PR#17993.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 14
    and so packages that provide graphics devices should be
    reinstalled.
  * Graphics devices should now specify deviceVersion to indicate
    what version of the graphics engine they support.
  * Graphics devices can now specify deviceClip.  If TRUE, the
    graphics engine will never perform any clipping of output itself.
    The clipping that the graphics engine does perform (for both
    canClip = TRUE and canClip = FALSE) has been improved to avoid
    producing unnecessary artifacts in clipped output.
  * The grid package now allows gpar(fill) to be a linearGradient(),
    a radialGradient(), or a pattern().  The viewport(clip) can now
    also be a grob, which defines a clipping path, and there is a new
    viewport(mask) that can also be a grob, which defines a mask.
    These new features are only supported so far on the Cairo-based
    graphics devices and on the pdf() device.
  * (Not Windows.)  A warning is given when a Cairo-based type is
    specified for a png(), jpeg(), tiff() or bmp() device but Cairo
    is unsupported (so type = "Xlib" is tried instead).
  * grSoftVersion() now reports the versions of FreeType and
    FontConfig if they are used directly (not _via_ Pango), as is
    most commonly done on macOS.
  C-LEVEL FACILITIES:
  * The _standalone_ libRmath math library and R's C API now provide
    log1pexp() again as documented, and gain log1mexp().
  INSTALLATION on a UNIX-ALIKE:
  * configure checks for a program pkgconf if program pkg-config is
    not found.  These are now only looked for on the path (like
    almost all other programs) so if needed specify a full path to
    the command in PKG_CONFIG, for example in file config.site.
  * C99 function iswblank is required - it was last seen missing ca
    2003 so the workaround has been removed.
  * There are new configure options --with-internal-iswxxxxx,
  - -with-internal-towlower and --with-internal-wcwidth which allows
    the system functions for wide-character classification,
    case-switching and width (wcwidth and wcswidth) to be replaced by
    internal ones.  The first has long been used on macOS, AIX (and
    Windows) but this enables it to be unselected there and selected
    for other platforms (it is the new default on Solaris).  The
    second is new in this version of R and is selected by default on
    macOS and Solaris.  The third has long been the default and
    remains so as it contains customizations for East Asian
    languages.
    System versions of these functions are often minimally
    implemented (sometimes only for ASCII characters) and may not
    cover the full range of Unicode points: for example Solaris (and
    Windows) only cover the Basic Multilingual Plane.
  * Cairo installations without X11 are more likely to be detected by
    configure, when the file-based Cairo graphics devices will be
    available but not X11(type = "cairo").
  * There is a new configure option --with-static-cairo which is the
    default on macOS.  This should be used when only static cairo
    (and where relevant, Pango) libraries are available.
  * Cairo-based graphics devices on platforms without Pango but with
    FreeType/FontConfig will make use of the latter for font
    selection.
  LINK-TIME OPTIMIZATION on a UNIX-ALIKE:
  * Configuring with flag --enable-lto=R now also uses LTO when
    installing the recommended packages.
  * R CMD INSTALL and R CMD SHLIB have a new flag --use-LTO to use
    LTO when compiling code, for use with R configured with
  - -enable-lto=R.  For R configured with --enable-lto, they have
    the new flag --no-use-LTO.
    Packages can opt in or out of LTO compilation _via_ a UseLTO
    field in the DESCRIPTION file.  (As usual this can be overridden
    by the command-line flags.)
  BUILDING R on Windows:
  * for GCC &gt;= 8, FC_LEN_T is defined in config.h and hence character
    lengths are passed from C to Fortran in _inter alia_ BLAS and
    LAPACK calls.
  * There is a new text file src/gnuwin32/README.compilation, which
    outlines how C/Fortran code compilation is organized and
    documents new features:
  * R can be built with Link-Time Optimization with a suitable
    compiler - doing so with GCC 9.2 showed several
    inconsistencies which have been corrected.
  * There is support for cross-compiling the C and Fortran code
    in R and standard packages on suitable (Linux) platforms.
    This is mainly intended to allow developers to test later
    versions of compilers - for example using GCC 9.2 or 10.x has
    detected issues that GCC 8.3 in Rtools40 does not.
  * There is experimental support for cross-building R packages
    with C, C++ and/or Fortran code.
  * The R installer can now be optionally built to support a single
    architecture (only 64-bit or only 32-bit).
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++14 where
    available (which it is on all currently checked platforms): if
    not (as before) C++11 is used if available otherwise C++ is not
    supported.
    Packages which specify C++11 will still be installed using C++11.
    C++14 compilers may give deprecation warnings, most often for
    std::random_shuffle (deprecated in C++14 and removed in C++17).
    Either specify C++11 (see 'Writing R Extensions') or modernize
    the code and if needed specify C++14.  The latter has been
    supported since R 3.4.0 so the package's DESCRIPTION would need
    to include something like
    Depends: R (&gt;= 3.4)
  PACKAGE INSTALLATION on Windows:
  * R CMD INSTALL and R CMD SHLIB make use of their flag --use-LTO
    when the LTO_OPT make macro is set in file etc/${R_ARCH}/Makeconf
    or in a personal/site Makevars file.  (For details see 'Writing R
    Extensions' SS4.5.)
    This provides a valuable check on code consistency.  It does work
    with GCC 8.3 as in Rtools40, but that does not detect everything
    the CRAN checks with current GCC do.
  PACKAGE INSTALLATION on macOS:
  * The default personal library directory on builds with
  - -enable-aqua (including CRAN builds) now differs by CPU type,
    one of
    ~/Library/R/x86_64/x.y/library
    ~/Library/R/arm64/x.y/library
    This uses the CPU type R (and hence the packages) were built for,
    so when a x86_64 build of R is run under Rosetta emulation on an
    arm64 Mac, the first is used.
  UTILITIES:
  * R CMD check can now scan package functions for bogus return
    statements, which were possibly intended as return() calls (wish
    of PR#17180, patch by Sebastian Meyer). This check can be
    activated via the new environment variable
    _R_CHECK_BOGUS_RETURN_, true for --as-cran.
  * R CMD build omits tarballs and binaries of previous builds from
    the top-level package directory.  (PR#17828, patch by Sebastian
    Meyer.)
  * R CMD check now runs sanity checks on the use of LazyData, for
    example that a data directory is present and that
    LazyDataCompression is not specified without LazyData and has a
    documented value.  For packages with large LazyData databases
    without specifying LazyDataCompression, there is a reference to
    the code given in 'Writing R Extensions' SS1.1.6 to test the
    choice of compression (as in all the CRAN packages tested a
    non-default method was preferred).
  * R CMD build removes LazyData and LazyDataCompression fields from
    the DESCRIPTION file of packages without a data directory.
  ENCODING-RELATED CHANGES:
  * The parser now treats \Unnnnnnnn escapes larger than the upper
    limit for Unicode points (\U10FFFF) as an error as they cannot be
    represented by valid UTF-8.
    Where such escapes are used for outputting non-printable
    (including unassigned) characters, 6 hex digits are used (rather
    than 8 with leading zeros).  For clarity, braces are used, for
    example \U{0effff}.
  * The parser now looks for non-ASCII spaces on Solaris (as
    previously on most other OSes).
  * There are warnings (including from the parser) on the use of
    unpaired surrogate Unicode points such as \uD834.  (These cannot
    be converted to valid UTF-8.)
  * Functions nchar(), tolower(), toupper() and chartr() and those
    using regular expressions have more support for inputs with a
    marked Latin-1 encoding.
  * The character-classification functions used (by default) to
    replace the system iswxxxxx functions on Windows, macOS and AIX
    have been updated to Unicode 13.0.0.
    The character-width tables have been updated to include new
    assignments in Unicode 13.0.0.
  * The code for evaluating default (extended) regular expressions
    now uses the same character-classification functions as the rest
    of R (previously they differed on Windows, macOS and AIX).
  * There is a build-time option to replace the system's
    wide-character wctrans C function by tables shipped with R: use
    configure option --with-internal-towlower or (on Windows)
  - DUSE_RI18N_CASE in CFLAGS when building R.  This may be needed
    to allow tolower() and toupper() to work with Unicode characters
    beyond the Basic Multilingual Plane where not supported by system
    functions (e.g. on Solaris where it is the new default).
  * R is more careful when truncating UTF-8 and other multi-byte
    strings that are too long to be printed, passed to the system or
    libraries or placed into an internal buffer.  Truncation will no
    longer produce incomplete multibyte characters.
  DEPRECATED AND DEFUNCT:
  * Function plclust() from the package stats and
    package.dependencies(), pkgDepends(), getDepList(),
    installFoundDepends(), and vignetteDepends() from package tools
    are defunct.
  * Defunct functions checkNEWS() and readNEWS() from package tools
    and CRAN.packages() from utils have been removed.
  * R CMD config CXXCPP is defunct (it was deprecated in R 3.6.2).
  * parallel::detectCores() drops support for Irix (retired in 2013).
  * The LINPACK argument to chol.default(), chol2inv(),
    solve.default() and svd() has been defunct since R 3.1.0.  It was
    silently ignored up to R 4.0.3 but now gives an error.
  * Subsetting/indexing, such as ddd[*] or ddd$x on a DOTSXP
    (dot-dot-dot) object ddd has been disabled; it worked by accident
    only and was undocumented.
  BUG FIXES:
  * Many more C-level allocations (mainly by malloc and strdup) are
    checked for success with suitable alternative actions.
  * Bug fix for replayPlot(); this was turning off graphics engine
    display list recording if a recorded plot was replayed in the
    same session.  The impact of the bug became visible if resize the
    device after replay OR if attempted another savePlot() after
    replay (empty display list means empty screen on resize or empty
    saved plot).
  * R CMD check etc now warn when a package exports non-existing S4
    classes or methods, also in case of no "methods" presence.
    (Reported by Alex Bertram; reproducible example and patch by
    Sebastian Meyer in PR#16662.)
  * boxplot() now also accepts calls for labels such as ylab, the
    same as plot().  (Reported by Marius Hofert.)
  * The help page for xtabs() now correctly states that addNA is
    setting na.action = na.pass among others.  (Reported as PR#17770
    by Thomas Soeiro.)
  * The R CMD check &lt;pkg&gt; gives a longer and more comprehensible
    message when DESCRIPTION misses dependencies, e.g., in Imports:.
    (Thanks to the contributors of PR#17179.)
  * update.default() now calls the generic update() on the formula to
    work correctly for models with extended formulas.  (As reported
    and suggested by Neal Fultz in PR#17865.)
  * The horizontal position of leaves in a dendrogram is now correct
    also with center = FALSE.  (PR#14938, patch from Sebastian
    Meyer.)
  * all.equal.POSIXt() no longer warns about and subsequently ignores
    inconsistent "tzone" attributes, but describes the difference in
    its return value (PR#17277).  This check can be disabled _via_
    the new argument check.tzone = FALSE as suggested by Sebastian
    Meyer.
  * as.POSIXct() now populates the "tzone" attribute from its tz
    argument when x is a logical vector consisting entirely of NA
    values.
  * x[[2^31]] &lt;- v now works.  (Thanks to the report and patch by
    Suharto Anggono in PR#17330.)
  * In log-scale graphics, axis() ticks and label positions are now
    computed more carefully and symmetrically in their range,
    typically providing _more_ ticks, fulfilling wishes in PR#17936.
    The change really corresponds to an improved axisTicks() (package
    grDevices), potentially influencing grid and lattice, for
    example.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now correct to at
    least five digits where it was catastrophically wrong,
    previously.
  * sum(df) and similar "Summary"- and "Math"-group member functions
    now work for data frames df with logical columns, notably also of
    zero rows.  (Reported to R-devel by Martin "b706".)
  * unsplit() had trouble with tibbles due to unsound use of rep(NA,
    len)-indexing, which should use NA_integer_ (Reported to R-devel
    by Mario Annau.)
  * pnorm(x, log.p = TRUE) underflows to -Inf slightly later.
  * show(&lt;hidden S4 generic&gt;) prints better and without quotes for
    non-hidden S4 generics.
  * read.table() and relatives treated an "NA" column name as missing
    when check.names = FALSE PR#18007.
  * Parsing strings containing UTF-16 surrogate pairs such as
    "\uD834\uDD1E" works better on some (uncommon) platforms.
    sprintf("%X", utf8ToInt("\uD834\uDD1E")) should now give "1D11E"
    on all platforms.
  * identical(x,y) is no longer true for differing DOTSXP objects,
    fixing PR#18032.
  * str() now works correctly for DOTSXP and related exotics, even
    when these are doomed.
    Additionally, it no longer fails for lists with a class and
    "irregular" method definitions such that e.g. lapply(*) will
    necessarily fail, as currently for different igraph objects.
  * Too long lines in environment files (e.g. Renviron) no longer
    crash R. This limit has been increased to 100,000 bytes.
    (PR#18001.)
  * There is a further workaround for FreeType giving incorrect
    italic font faces with cairo-based graphics devices on macOS.
  * add_datalist(*, force = TRUE) (from package tools) now actually
    updates an existing data/datalist file for new content.  (Thanks
    to a report and patch by Sebastian Meyer in PR#18048.)
  * cut.Date() and cut.POSIXt() could produce an empty last interval
    for breaks = "months" or breaks = "years".  (Reported as PR#18053
    by Christopher Carbone.)
  * Detection of the encoding of 'regular' macOS locales such as
    en_US (which is UTF-8) had been broken by a macOS change:
    fortunately these are now rarely used with en_US.UTF-8 being
    preferred.
  * sub() and gsub(pattern, repl, x, *) now keep attributes of x such
    as names() also when pattern is NA (PR#18079).
  * Time differences ("difftime" objects) get a replacement and a
    rep() method to keep "units" consistent.  (Thanks to a report and
    patch by Nicolas Bennett in PR#18066.)
  * The \RdOpts macro, setting defaults for \Sexpr options in an Rd
    file, had been ineffective since R 2.12.0: it now works again.
    (Thanks to a report and patch by Sebastian Meyer in PR#18073.)
  * mclapply and pvec no longer accidentally terminate parallel
    processes started before by mcparallel or related calls in
    package parallel (PR#18078).
  * grep and other functions for evaluating (extended) regular
    expressions handle in Unicode also strings not explicitly flagged
    UTF-8, but flagged native when running in UTF-8 locale.
  * Fixed a crash in fifo implementation on Windows (PR#18031).
  * Binary mode in fifo on Windows is now properly detected from
    argument open (PR#15600, PR#18031).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1622808000">- The line %{__install} -m 755 -d %{_infodir}
  no longer works in TW or Factory.
  But without that line it works everywhere. So this instruction
  was commented out of the spec file.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1628596800">- CHANGES IN R 4.1.1:
  NEW FEATURES:
  * require(pkg, quietly = TRUE) is quieter and in particular does
    not warn if the package is not found.
  DEPRECATED AND DEFUNCT:
  * Use of ftp:// URIs should be regarded as deprecated, with
    on-going support confined to method = "libcurl" and not routinely
    tested.  (Nowadays no major browser supports them.)
  * The non-default method = "internal" is deprecated for http:// and
    ftp:// URIs for both download.file and url.
  * On Windows, method = "wininet" is deprecated for http://,
    https:// and ftp:// URIs for both download.file and url.  (A
    warning is only given for ftp://.)
    For ftp:// URIs the default method is now "libcurl" if available
    (which it is on CRAN builds).
    method = "wininet" remains the default for http:// and https://
    URIs but if libcurl is available, using method = "libcurl" is
    preferred.
  INSTALLATION:
  * make check now works also without a LaTeX installation.  (Thanks
    to Sebastian Meyer's PR#18103.)
  BUG FIXES:
  * make check-devel works again in an R build configured with
  - -without-recommended-packages.
  * qnbinom(p, size, mu) for large size/mu is correct now in a range
    of cases (PR#18095); similarly for the (size, prob)
    parametrization of the negative binomial.  Also qpois() and
    qbinom() are better and or faster for extreme cases.  The
    underlying C code has been modularized and is common to all four
    cases of discrete distributions.
  * gap.axis is now part of the axis() arguments which are passed
    from bxp(), and hence boxplot().  (Thanks to Martin Smith's
    report and suggestions in PR#18109.)
  * .First and .Last can again be set from the site profile.
  * seq.int(from, to, *) and seq.default(..) now work better in large
    range cases where from-to is infinite where the two boundaries
    are finite.
  * all.equal(x,y) now returns TRUE correctly also when several
    entries of abs(x) and abs(y) are close to .Machine$double.xmax,
    the largest finite numeric.
  * model.frame() now clears the object bit when removing the class
    attribute of a value via na.action (PR#18100).
  * charClass() now works with multi-character strings on Windows
    (PR#18104, fixed by Bill Dunlap).
  * encodeString() on Solaris now works again in Latin-1 encoding on
    characters represented differently in UTF-8.  Support for
    surrogate pairs on Solaris has been improved.
  * file.show() on Windows now works with non-ASCII path names
    representable in the current native encoding (PR#18132).
  * Embedded R on Windows can now find R home directory via the
    registry even when installed only for the current user
    (PR#18135).
  * pretty(x) with finite x now returns finite values also in the
    case where the extreme x values are close in size to the maximal
    representable number .Machine$double.xmax.
    Also, it's been tweaked for very small ranges and when a boundary
    is close (or equal) to zero; e.g., pretty(c(0,1e-317)) no longer
    has negative numbers, currently still warning about a very small
    range, and pretty(2^-(1024 - 2^-1/(c(24,10)))) is more accurate.
  * The error message for not finding vignette files when weaving has
    correct file sizes now. (Thanks to Sebastian Meyer's PR#18154.)
  * dnbinom(20, &lt;large&gt;, 1) now correctly gives 0, and similar cases
    are more accurate with underflow precaution.  (Reported by Francisco Vera Alcivar in PR#18072.)</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635163200">- repaired https://bugzilla.suse.com/show_bug.cgi?id=1191380
  (rpmacros now go to rpmmacrodir)
- minor clean-ups in spec file</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635768000">- CHANGES IN R 4.1.2:
  C-LEVEL FACILITIES:
  * The workaround in headers R.h and Rmath.h (using namespace std;)
    for the Oracle Developer Studio compiler is no longer needed now
    C++11 is required so has been removed.  A couple more usages of
    log() (which should have been std::log()) with an int argument
    are reported on Solaris.
  * The undocumented limit of 4095 bytes on messages from the
    S-compatibility macros PROBLEM and MESSAGE is now documented and
    longer messages will be silently truncated rather than
    potentially causing segfaults.
  * If the R_NO_SEGV_HANDLER environment variable is non-empty, the
    signal handler for SEGV/ILL/BUS signals (which offers recovery
    user interface) is not set. This allows more reliable debugging
    of crashes that involve the console.
  DEPRECATED AND DEFUNCT:
  * The legacy S-compatibility macros PROBLEM, MESSAGE, ERROR, WARN,
    WARNING, RECOVER, ... are deprecated and will be hidden in R
    4.2.0. R's native interface of Rf_error and Rf_warning has long
    been preferred.
  BUG FIXES:
  * .mapply(F, dots, .) no longer segfaults when dots is not a list
    and uses match.fun(F) as always documented; reported by Andrew
    Simmons in PR#18164.
  * hist(&lt;Date&gt;, ...) and hist(&lt;POSIXt&gt;, ...)  no longer pass
    arguments for rect() (such as col and density) to axis().
    (Thanks to Sebastian Meyer's PR#18171.)
  * \Sexpr{ch} now preserves Encoding(ch). (Thanks to report and
    patch by Jeroen Ooms in PR#18152.)
  * Setting the RNG to "Marsaglia-Multicarry" e.g., by RNGkind(), now
    warns in more places, thanks to Andr'e Gillibert's report and
    patch in PR#18168.
  * gray(numeric(), alpha=1/2) no longer segfaults, fixing PR#18183,
    reported by Till Krenz.
  * Fixed dnbinom(x, size=&lt;very_small&gt;, .., log=TRUE) regression,
    reported by Martin Morgan.
  * as.Date.POSIXlt(x) now keeps names(x), thanks to Davis Vaughan's
    report and patch in PR#18188.
  * model.response() now strips an "AsIs" class typically, thanks to
    Duncan Murdoch's report and other discussants in PR#18190.
  * try() is considerably faster in case of an error and long call,
    as e.g., from some do.call().  Thanks to Alexander Kaever's
    suggestion posted to R-devel.
  * qqline(y = &lt;object&gt;) such as y=I(.), now works, see also
    PR#18190.
  * Non-integer mgp par() settings are now handled correctly in
    axis() and mtext(), thanks to Mikael Jagan and Duncan Murdoch's
    report and suggestion in PR#18194.
  * formatC(x) returns length zero character() now, rather than ""
    when x is of length zero, as documented, thanks to Davis
    Vaughan's post to R-devel.
  * removeSource(fn) now retains (other) attributes(fn).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1647000000">- CHANGES IN R 4.1.3:
  NEW FEATURES:
  * The default version of Bioconductor has been changed to 3.14.
    (This is used by setRepositories and the menus in GUIs.)
  UTILITIES:
  * R CMD check --as-cran has a workaround for a bug in versions of
    file up to at least 5.41 which mis-identify DBF files last
    changed in 2022 as executables.
  C-LEVEL FACILITIES:
  * The legacy S-compatibility macros SINGLE_* in R_ext/Constants.h
    (included by R.h) are deprecated and will be removed in R 4.2.0.
  BUG FIXES:
  * Initialization of self-starting nls() models with initialization
    functions following the pre-R-4.1.0 API (without the ...
    argument) works again for now, with a deprecation warning.
  * Fixed quoting of ~autodetect~ in Java setting defaults to avoid
    inadvertent user lookup due to leading ~, reported in PR#18231 by
    Harold Gutch.
  * substr(., start, stop) &lt;- v now treats _negative_ stop values
    correctly.  Reported with a patch in PR#18228 by Brodie Gaslam.
  * Subscripting an array x without dimnames by a
    length(dim(x))-column character matrix gave "random" non-sense,
    now an error; reported in PR#18244 by Mikael Jagan.
  * ...names() now matches names(list(...)) closely, fixing PR#18247.
  * all.equal(*, scale = s) now works as intended when length(s) &gt; 1,
    partly thanks to Michael Chirico's PR#18272.
  * print(x) for long vectors x now also works for named atomic
    vectors or lists and prints the correct number when reaching the
    getOption("max.print") limit; partly thanks to a report and
    proposal by Hugh Parsonage to the R-devel list.
  * all.equal(&lt;selfStart&gt;, *) no longer signals a deprecation
    warning.
  * reformulate(*, response=r) gives a helpful error message now when
    length(r) &gt; 1, thanks to Bill Dunlap's PR#18281.
  * Modifying globalCallingHandlers inside withCallingHandlers() now
    works or fails correctly, thanks to Henrik Bengtsson's PR#18257.
  * hist(&lt;Date&gt;, breaks = "days") and hist(&lt;POSIXt&gt;, breaks = "secs")
    no longer fail for inputs of length 1.
  * qbeta(.001, .9, .009) and similar cases now converge correctly
    thanks to Ben Bolker's report in PR#17746.
  * window(x, start, end) no longer wrongly signals "'start' cannot
    be after 'end'", fixing PR#17527 and PR#18291.
  * data() now checks that its (rarely used) list argument is a
    character vector - a couple of packages passed other types and
    gave incorrect results.
  * which() now checks its arr.ind argument is TRUE rather coercing
    to logical and taking the first element - which gave incorrect
    results in package code.
  * model.weights() and model.offset() more carefully extract their
    model components, thanks to Ben Bolker and Tim Taylor's R-devel
    post.
  * list.files(recursive = TRUE) now shows all broken symlinks
    (previously, some of them may have been omitted, PR#18296).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1650628800">- CHANGES IN R 4.2.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * The formula method of aggregate() now matches the generic in
    naming its first argument x (resolving PR#18299 by Thomas
    Soeiro).
    This means that calling aggregate() with a formula as a named
    first argument requires name formula in earlier versions of R and
    name x now, so portable code should not name the argument (code
    in many packages did).
  * Calling &amp;&amp; or || with either argument of length greater than one
    now gives a warning (which it is intended will become an error).
  * Calling if() or while() with a condition of length greater than
    one gives an error rather than a warning.  Consequently,
    environment variable _R_CHECK_LENGTH_1_CONDITION_ no longer has
    any effect.
  * Windows users should consult the WINDOWS section below for some
    profound changes including
  * Support for 32-bit builds has been dropped.
  * UTF-8 locales are used where available.
  * The default locations for the R installation and personal
    library folder have been changed.
    Thanks to Tomas Kalibera for months of work on the Windows port
    for this release.
  NEW FEATURES:
  * matrix(x, n, m) now warns in more cases where length(x) differs
    from n * m, as suggested by Abby Spurdle and Wolfgang Huber in
    Feb 2021 on the R-devel mailing list.
    This warning can be turned into an error by setting environment
    variable _R_CHECK_MATRIX_DATA_ to TRUE: R CMD check --as-cran
    does so unless it is already set.
  * Function file_test() in package utils gains tests for symlinks,
    readability and writability.
  * capabilities("libxml") is now false.
    The description of capabilities("http/ftp") now reflects that it
    refers to the default method, no longer the internal one.
  * simplify2array() gains an except argument for controlling the
    exceptions used by sapply().
  * Environment variables R_LIBS_USER and R_LIBS_SITE are both now
    set to the R system default if unset or empty, and can be set to
    NULL to indicate an empty list of user or site library
    directories.
  * The warning for axis()(-like) calls in cases of relatively small
    ranges (typically in log-scale situations) is slightly improved
    _and_ suppressed from explicit calls to .axisPars() as has always
    been the intention.
  * The contrasts setter function `contrasts&lt;-` gains an explicit
    default how.many = NULL rather than just using missing(how.many).
  * grid.pretty() gains a new optional argument n = 5.
  * There is a new function .pretty() with option bounds as a
    technical-utility version of pretty().  It and pretty() gain a
    new argument f.min with a better than back-compatible default.
  * Function grDevices::axisTicks() and related functions such as
    graphics::axis() work better, notably for the log scale; partly
    because of the pretty() improvements, but also because care is
    taken e.g., when ylim is finite but diff(ylim) is infinite.
  * nclass.FD() gains a digits option.
  * The R Mathlib internal C function bd0() (called indirectly from a
    dozen probability density and distribution functions such as
    dpois(), dbinom(), dgamma(), pgamma() _etc_) has been
    complemented by a more sophisticated and (mostly) more accurate C
    function ebd0(), currently called only by internal dpois_raw()
    improving accuracy for R level dpois() and potentially others
    calling it such as dnbinom(), dgamma() or pgamma().  (Thanks to
    Morten Welinder's PR#15628.)
  * write.ftable() gains sep = " " argument as suggested by Thomas
    Soeiro.
  * The names of the locale categories supported by R's
    Sys.getlocale() and Sys.setlocale() are now provided by variable
    .LC.categories in the base namespace.
  * The Date and POSIXt methods for hist() and the histogram method
    for plot() now also use the new default col = "lightgray" in
    consistency with the corresponding change to hist()'s default for
    R 4.0.0.
  * hist.default() gains new fuzz argument, and the histogram plot
    method no longer uses fractional axis ticks when displaying
    counts ("Frequency").
  * mapply() and hence Map() now also obey the "max-or-0-if-any"
    recycling rule, such that, e.g., Map(`+`, 1:3, 1[0]) is valid
    now.
  * as.character(&lt;obj&gt;) for "hexmode" or "octmode" objects now
    fulfils the important basic rule as.character(x)[j] ===
    as.character(x[j]).
  * The set utility functions, notably intersect() have been tweaked
    to be more consistent and symmetric in their two set arguments,
    also preserving a common mode.
  * substr(ch, start,end) &lt;- new now e.g., preserves names(ch); ditto
    for substring(), thanks to a patch from Brodie Gaslam.
  * plot(&lt;lm&gt;) gains a extend.ylim.f argument, in partial response to
    PR#15285; further PR#17784 is fixed thanks to several
    contributors and a patch by Elin Waring.  The Cook's dist
    contours get customizable via cook.col and cook.lty with a
    different default color and their legend is nicer by default and
    customizable via cook.legendChanges.
  * Attempting to subset an object that is not subsettable now
    signals an error of class notSubsettableError. The
    non-subsettable object is contained in the object field of the
    error condition.
  * Subscript-out-of-bounds errors are now signaled as errors of
    class subscriptOutOfBoundsError.
  * Stack-overflow errors are now signaled as errors inheriting from
    class stackOverflowError. See ?stackOverflowError for more
    details.
  * New partly experimental Sys.setLanguage() utility, solving the
    main problem of PR#18055.
  * gettext() and gettextf() get a new option trim = TRUE which when
    set to false allows translations for strings such as "Execution
    halted\n" typical for C code.
  * An experimental implementation of hash tables is now available.
    See ?hashtab for more details.
  * identical() gains a extptr.as.ref argument for requesting that
    external pointer objects be compared as reference objects.
  * reorder() gets an argument decreasing which it passes to sort()
    for level creation; based on the wish and patch by Thomas Soeiro
    in PR#18243.
  * as.vector() gains a data.frame method which returns a simple
    named list, also clearing a long standing 'FIXME' to enable
    as.vector(&lt;data.frame&gt;, mode="list").  This breaks code relying
    on as.vector(&lt;data.frame&gt;) to return the unchanged data frame.
  * legend() is now vectorized for arguments cex, x.intersp, and
    text.width.  The latter can now also be specified as a vector
    (one element for each column of the legend) or as NA for
    computing a proper column wise maximum value of strwidth(legend).
    The argument y.intersp can be specified as a vector with one
    entry for each row of the legend.
    legend() also gains new arguments title.cex and title.font.
    Thanks to Swetlana Herbrandt.
  * Deparsing no longer remaps attribute names dim, dimnames, levels,
    names and tsp to historical S-compatible names (which structure()
    maps back).
  * sample() and sample.int() have additional sanity checks on their
    size and n arguments.
    all.equal.numeric() gains a sanity check on its tolerance
    argument - calling all.equal(a, b, c) for three numeric vectors
    is a surprisingly common error.
    mean(na.rm =), rank(na.last =), barplot(legend.text =),
    boxplot(), contour(drawlabels =), polygon(border =) and
    methods::is(class2 =) have more robust sanity checks on their
    arguments.
    R CMD Rd2pdf (used by R CMD check) has a more robust sanity check
    on the format of \alias{} commands.
  * psigamma(x, deriv) for negative x now also works for deriv = 4
    and 5; their underlying C level dpsifn() is documented in
    'Writing R Extensions'.
  * The HTML help system now uses HTML5 (wish of PR#18149).
  * ks.test() now provides exact p-values also with ties and MC
    p-values in the two-sample (Smirnov) case.  By Torsten Hothorn.
  * ks.test() gains a formula interface, with y ~ 1 for the
    one-sample (Kolmogorov) test and y ~ group for the two-sample
    (Smirnov) test.  Contributed by Torsten Hothorn.
  * The return value from ks.test() now has class c("ks.test",
    "htest") - packages using try() need to take care to use
    inherits() and not == on the class.
  * New functions psmirnov(), qsmirnov() and rsmirnov() in package
    stats implementing the asymptotic and exact distributions of the
    two-sample Smirnov statistic.
  * iconv() now allows sub = "c99" to use C99-style escapes for UTF-8
    inputs which cannot be converted to encoding to.
  * In a forward pipe |&gt; expression it is now possible to use a named
    argument with the placeholder _ in the rhs call to specify where
    the lhs is to be inserted.  The placeholder can only appear once
    on the rhs.
  * The included LAPACK sources have been updated to version 3.10.0,
    except for the four Fortran 77 routines which 3.10.0 has
    re-implemented in Fortran 90 (where the older versions have been
    retained as the R build process does not support Fortran 90).
  * path.expand() and most other uses of tilde expansion now warn if
    a path would be too long if expanded.  (An exception is
    file.exists(), which silently returns false.)
  * trunc(&lt;Date&gt;, *) now supports units = "months" or "years" for
    consistency with the POSIXt method, thanks to Dirk Eddelbuettel's
    proposal in PR#18099.
  * list2DF() now checks that its arguments are of the same length,
    rather than use recycling.
  * The HTML help system has several new features: LaTeX-like math
    can be typeset using either KaTeX or MathJax, usage and example
    code is highlighted using Prism, and for dynamic help the output
    of examples and demos can be shown within the browser if the
    knitr package is installed. These features can be disabled by
    setting the environment variable _R_HELP_ENABLE_ENHANCED_HTML_ to
    a false value.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 15
    and so packages that provide graphics devices should be
    reinstalled.
  * The grid package now allows the user to specify a "vector" of
    pattern fills.  The fill argument to gpar() accepts a list of
    gradients and/or patterns and the functions linearGradient(),
    radialGradient(), and pattern() have a new group argument.
    Points grobs (data symbols) can now also have a pattern fill.
    The grobCoords() function now returns a more informative and
    complex result.
  * The grid package has new functions for drawing isolated groups:
    grid.group(), grid.define(), and grid.use().  These functions add
    compositing operators and affine transformations to R's graphics
    capabilities.
    The grid package also has new functions for stroking and filling
    paths: grid.stroke(), grid.fill(), and grid.fillStroke().
    A new function as.path() allows the user to specify the fill rule
    for a path that is to be used for clipping, stroking, or filling;
    available options are "winding" and "evenodd".  A new function
    as.mask() allows the user to specify the type of a mask;
    available options are "alpha" and "luminance".
    These new features are only supported so far (at most) on the
    Cairo-based graphics devices and on the pdf() device.
  * dev.capabilities() reports on device support for the new
    features.
  * par() now warns about unnamed non-character arguments to prevent
    misuse such as {usr &lt;- par("usr"); par(usr)}.
  INSTALLATION:
  * Facilities for accessing ftp:// sites are no longer tested
    (except _pro tem_ for curlGetHeaders()) as modern browsers have
    removed support.
  * R can now be built with DEFS = -DSTRICT_R_HEADERS .
  PACKAGE INSTALLATION:
  * R CMD INSTALL no longer tangles vignettes. This completes an R
    CMD build change in R 3.0.0 and affects packages built before R
    3.0.2. Such packages should be re-made with R CMD build to have
    the tangled R code of vignettes shipped with the tarball.
  * USE_FC_LEN_T will become the default: this uses the correct
    prototypes for Fortran BLAS/LAPACK routines called from C/C++,
    and requires adjustment of most such calls - see 'Writing R
    Extensions' SS6.6.2.  (This has been supported since R 3.6.2.)
  * Package installation speed for packages installed with
    keep.source has been improved. This resolve the issue reported by
    Ofek Shilon in PR#18236.
  UTILITIES:
  * R CMD check can optionally report files/directories left behind
    in home, /tmp (even though TMPDIR is set) and other directories.
    See the "R Internals" manual for details.
  * R CMD check now reports byte-compilation errors during
    installation.  These are not usually fatal but may result in
    parts of the package not being byte-compiled.
  * _R_CHECK_DEPENDS_ONLY_ can be applied selectively to examples,
    tests and/or vignettes in R CMD check: see the "R Internals"
    manual.
  * _R_CHECK_SRC_MINUS_W_IMPLICIT_ now defaults to true: recent
    versions of Apple clang on macOS have made implicit function
    declarations in C into a compilation error.
  * R CMD check --as-cran makes use of the environment variable
    AUTORECONF.  See the "R Internals" manual SS8 for further details.
  * R CMD check --use-valgrind also uses valgrind when re-building
    vignettes as some non-Sweave vignettes unhelpfully comment out
    all their code when R CMD check runs vignettes.
  * Errors in re-building vignettes (unless there are LaTeX errors)
    are reported by R CMD check as ERROR rather than WARNING when
    running vignettes has been skipped (as it frequently is in CRAN
    checks and by --as-cran).
  * R CMD Rd2pdf gains a --quiet option that is used by R CMD build
    when building the PDF package manual.
  * R CMD Rd2pdf now always runs LaTeX in batch mode, consistent with
    Texinfo &gt;= 6.7. The --batch option is ignored.
  * R CMD build and R CMD check now include the Rd file name and line
    numbers in the error message of an \Sexpr evaluation failure.
  * For packages using the \doi Rd macro (now an install-time \Sexpr)
    but no other dynamic Rd content, R CMD build now produces a
    smaller tarball and is considerably faster - skipping temporary
    package installation.
  C-LEVEL FACILITIES:
  * The non-API header R_ext/R-ftp-http.h is no longer provided, as
    the entry points it covered are now all defunct.
  * A number of non-API declarations and macro definitions have been
    moved from the installed header Rinternals.h to the internal
    header Defn.h. Packages that only use entry points and
    definitions documented to be part of the API as specified in
    'Writing R Extensions' SS6 should not be affected.
  * The macro USE_RINTERNALS no longer has any effect when compiling
    package code.  Packages which also use R_NO_REMAP will need to
    ensure that the remapped names are used for calls to API
    functions that were formerly also made available as macros.
  * The deprecated legacy S-compatibility macros PROBLEM, MESSAGE,
    ERROR, WARN, WARNING, RECOVER, ... are no longer defined in
    R_exts/RS.h (included by R.h).  Replace these by calls to
    Rf_error and Rf_warning (defined in header R_ext/Error.h included
    by R.h).
    Header R_ext/RS.h no longer includes R_ext/Error.h.
  * Header R_ext/Constants.h (included by R.h) when included from C++
    now includes the C++ header cfloat rather than the C header
    float.h (now possible as C++11 is required).
  * The legacy S-compatibility macros DOUBLE_* in R_ext/Constants.h
    (included by R.h) are deprecated.
  * The deprecated S-compatibility macros SINGLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * R_Calloc, R_Free and R_Realloc are preferred to their unprefixed
    forms and error messages now use the prefix. These forms were
    introduced in R 3.4.0 and are available even when
    STRICT_R_HEADERS is defined.
  * rmultinom has been documented in 'Writing R Extensions' SS6 so is
    now part of the R API.
  * Similarly, Rtanpi, called from R level tanpi() is now part of the
    R API.
  * The long-deprecated, undocumented and non-API entry point call_R
    is no longer declared in R_ext/RS.h (included by R.h).
  * The header S.h which has been unsupported since Jan 2016 has been
    removed.  Use R.h instead.
  DEPRECATED AND DEFUNCT:
  * The (non-default and deprecated) method = "internal" for
    download.file() and url() no longer supports http:// nor ftp://
    URIs.  (It is used only for file:// URIs.)
    On Windows, download.file(method = "wininet") no longer supports
    ftp:// URIs.  (It is no longer the default method, which is
    "libcurl" and does.)
    On Windows, the deprecated method = "wininet" now gives a warning
    for http:// and https:// URIs for both download.file() and url().
    (It is no longer the default method.)
  * On Windows, the command-line option --max-mem-size and
    environment variable R_MAX_MEM_SIZE are defunct.  The memory
    allocation limit was important for 32-bit builds, but these are
    no longer supported.
  * default.stringsAsFactors() is now formally deprecated, where that
    was only mentioned on its regular help page, previously.  So it
    now gives a warning if called.
  * unix.time() is defunct now; it had been deprecated since R 3.4.0.
  BUG FIXES:
  * Setting digits = 0 in format(), print.default() (and hence
    typically print()) or options() is again invalid.  Its behaviour
    was platform-dependent, and it is unclear what "zero significant
    digits" should mean (PR#18098).
  * Messages from C code in the cairo section of package grDevices
    are now also offered for translation, thanks to Michael Chirico's
    PR#18123.
  * mean(x) with finite x now is finite also without "long.double"
    capability.
  * R CMD Rd2pdf no longer leaves an empty build directory behind
    when it aborts due to an already existing output file.  (Thanks
    to Sebastian Meyer's PR#18141.)
  * density(x, weights = w, na.rm = TRUE) when anyNA(x) is true, now
    removes weights "in parallel" to x, fixing PR#18151, reported by
    Matthias Gondan.  Additionally, it gets a subdensity option.
  * Conversion of \Sexpr[]{&lt;expR&gt;} to LaTeX or HTML no longer
    produces long blocks of empty lines when &lt;expR&gt; itself contains
    several lines all producing empty output.  Thanks to a report and
    patch by Ivan Krylov posted to R-devel.
  * R CMD build no longer fails if a package vignette uses child
    documents and inst/doc exists.  (Thanks to Sebastian Meyer's
    PR#18156.)
  * When an R documentation ('help' source) file man/foo.Rd in a
    package has \donttest{..} examples with a syntax error, it is now
    signalled as ERROR and with correct line numbers relating to the
  * -Ex.R file, thanks to Duncan Murdoch and Sebastian Meyer's
    reports and patch proposals in PR#17501.
  * Improved determination of the correct translation domain in
    non-base packages, addressing the combination of PR#18092 and
    PR#17998 (#c6) with reports and _augmented_ patch #2904 by
    Suharto Anggono.
    Note that "R-base" is no longer the default domain e.g., for
    top-level calls to gettext(); rather translation needs explicit
    domain = * specification in such cases.
  * identical(attrib.as.set=FALSE) now works correctly with data
    frames with default row names (Thanks to Charlie Gao's PR#18179).
  * txtProgressBar() now enforces a non-zero width for argument char,
    without which no progress can be visible.
  * dimnames(table(d)) is more consistent in the case where d is a
    list with a single component, thanks to Thomas Soeiro's report to
    R-devel.
    Further, table(d1, d2) now gives an error when d1 and d2 are data
    frames as suggested by Thomas in PR#18224.
  * Fix for drawing semi-transparent lines and fills on the native
    Windows graphics device (PR#18219 and PR#16694).  Thanks to Nick
    Ray for helpful diagnosis on Bugzilla.
  * The deparser now wraps sub-expressions such as if(A) ..  with
    parentheses when needed; thanks to Duncan Murdoch's PR#18232 and
    Lionel Henry's patches there.
  * remove.packages() no longer tries to uninstall Priority: base
    packages, thanks to a report and suggestions by Colin Fay in
    PR#18227.
  * win.metafile() now has xpinch and ypinch arguments so that the
    user can override Windows' (potentially wrong) guess at device
    dimensions.
  * x[i] and x[[i]] for non-integer i should now behave in all cases
    as always documented: the index used is equivalent to
    as.integer(i) unless that would overflow where trunc(i) is used
    instead; thanks to Suharto Anggono's report and patch proposals
    in PR#17977.
  * asOneSidedFormula() now associates the resulting formula with the
    global environment rather than the evaluation environment created
    for the call.
  * &lt;bibentry&gt;$name now matches the field name case-insensitively,
    consistent with bibentry() creation and the replacement method.
  * cbind() failed to detect some length mismatches with a mixture of
    time-series and non-time-series inputs.
  * The default LaTeX style file Sweave.sty used by the RweaveLatex
    driver no longer loads the obsolete ae package; thanks to a
    report by Thomas Soeiro in PR#18271.  Furthermore, it now skips
    \usepackage[T1]{fontenc} for engines other than pdfTeX (if
    detected) or if the new [nofontenc] option is used.
  * smooth.spline() now stores its logical cv argument more safely,
    fixing a rare bug when printing, and also stores n.
  * smooth.spline(x,y,*) now computes the cv.crit statistic
    correctly, also when is.unsorted(x), fixing PR#18294.
  * The data.frame method of rbind() now warns when binding
    not-wholly-recycling vectors, by analogy to the default method
    (for matrices).
  * setAs() finds the correct class for name to when multiple
    packages define a class with that name. Thanks to Gabor Csardi
    for the report.
  * Fix for detaching a package when two classes of the same name are
    present in method signatures for the same generic. Thanks to
    Gabor Csardi for the report.
  * match.arg("", c("", "a", "B")) gives a better error message, in
    part from PR#17959, thanks to Elin Waring.
  * R CMD Sweave --clean no longer removes pre-existing files or
    subdirectories (PR#18242).
  * The quartz() device no longer splits polylines into subpaths.
    That has caused narrowly-spaced lines with many points to always
    look solid even when dashed line type was used due to dash phase
    restarts.
  * Deparsing constructs such as quote(1 + `!`(2) + 3) works again as
    before R 3.5.0, thanks to the report and patch in PR#18284 by
    Suharto Anggono.
  * as.list(f) for a factor f now keeps names(f), fixing PR#18309.
  * qbeta(.001, .9, .009) and analogous qf() calls now return a
    correct value instead of NaN or wrongly 1, all with a warning;
    thanks to the report by Ludger Goeminne in PR#18302.
  * plot.lm() failed to produce the plot of residuals vs.  factor
    levels (i.e., which=5 when leverages are constant) for models
    with character predictors (PR#17840).
  * interaction.plot(..., xtick = TRUE) misplaced the x-axis line
    (PR#18305).
  * Not strictly fixing a bug, format()ing and print()ing of
    non-finite Date and POSIXt values NaN and +/-Inf no longer show
    as NA but the respective string, e.g., Inf, for consistency with
    numeric vector's behaviour, fulfilling the wish of PR#18308.
  * R CMD check no longer runs test scripts generated from
    corresponding .Rin files twice and now signals an ERROR if
    processing an .Rin script fails.
  * tools::Rd2txt() used for plain-text help pages now renders \hrefs
    (if tools::Rd2txt_options(showURLs = TRUE)) and \urls with
    percent-encoding and standards-compliant delimiting style (angle
    brackets and no URL: prefix).  \email is now rendered with a
    mailto: prefix.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1655985600">- CHANGES IN R 4.2.1:
  NEW FEATURES:
  * New function utils::findCRANmirror() to find out if a CRAN mirror
    has been selected, otherwise fallback to the main site.  This
    behaves in the same way as tools::CRAN_package_db() and is
    intended for packages wishing to access CRAN for purposes other
    than installing packages.
    The need for this was shown by a day when the main CRAN website
    was offline and a dozen or so packages which had its URL
    hardcoded failed their checks.
  INSTALLATION on a UNIX-ALIKE:
  * The libraries searched for by --with-blas (without a value) now
    include BLIS (after OpenBLAS but before ATLAS).  And on macOS,
    the Accelerate framework (after ATLAS).  (This is patterned after
    the AX_BLAS macro from the Autoconf Archive.)
  * The included LAPACK sources have been updated to 3.10.1.
  UTILITIES:
  * The (full path to) the command tidy to be used for HTML
    validation can be set by environment variable R_TIDYCMD.
  * Setting environment variable _R_CHECK_RD_VALIDATE_RD2HTML_ to a
    false value will override R CMD check --as-cran and turn off HTML
    validation.  This provides a way to circumvent a problematic
    tidy.
    The 2006 version that ships with macOS is always skipped.
  C-LEVEL FACILITIES:
  * The undocumented legacy declarations of Sint, Sfloat, SINT_MAX
    and SINT_MIN in header R.h are deprecated.
  BUG FIXES:
  * fisher.test(d) no longer segfaults for "large" d; fixing PR#18336
    by preventing/detecting an integer overflow reliably.
  * tar(., files=*) now produces correctly the warning about invalid
    uid or gid of files, fixing PR#18344, reported by Martin Morgan.
  * tk_choose.files() with multi = FALSE misbehaved on paths
    containing spaces (PR#18334) (regression introduced in R 4.0.0).
  * sort(x, partial = ind, *) now works correctly notably for the
    non-default na.last = FALSE or TRUE, fixing PR#18335 reported by
    James Edwards.
  * Environment variable _R_CHECK_XREFS_REPOSITORIES_ is only used
    for checking .Rd cross-references in R CMD check (as documented)
    and not for other uses looking for a CRAN mirror.
  * The search for a CRAN mirror when checking packages now uses
    getOption("repos") if that specifies a CRAN mirror, even when it
    does not also specify all three Bioconductor repositories (as was
    previously required).
  * The HTML code generated by tools::Rd2HTML() has been improved to
    pass tidy 5.8.0.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1667217600">- CHANGES IN R 4.2.2:
  NEW FEATURES:
  * tools::Rdiff(useDiff = TRUE) checks for the presence of an
    external diff command and switches to useDiff = FALSE if none is
    found.  This allows R CMD Rdiff to always work.
  * On Windows, environment variable R_LIBCURL_SSL_REVOKE_BEST_EFFORT
    can be used to switch to only 'best-effort' SSL certificate
    revocation checks with the default "libcurl" download method.
    This reduces security, but may be needed for downloads to work
    with MITM proxies (PR#18379).
  * (macOS) The run-time check for libraries from XQuartz for X11 and
    Tcl/Tk no longer uses otool from the Apple Developer Tools
    (PR#18400).
  * The LaTeX style for producing the PDF manuals, Rd.sty, now loads
    the standard amsmath, amsfonts and amssymb packages for greater
    coverage of math commands in the Rd \eqn and \deqn macros.  The
    \mathscr LaTeX command is also provided (via the mathrsfs
    package, if available, or the amsfonts bundle otherwise),
    fulfilling the wish of PR#18398.
  * (Windows) The default format of readClipboard() and
    writeClipboard() has been changed to 13 (CF_UNICODETEXT).
  INSTALLATION on a UNIX-ALIKE:
  * The PDF manuals (if built) can be compacted by the new target
    make compact-pdf (at the top level or in directory doc/manual).
  * There is now configure support for LLVM clang 15 on Linux, which
    defaults to position-independent (PIE) executables whereas
    gfortran does not.
  * Many small changes to ease compilation (and suppress warnings)
    with LLVM clang 15.
  BUG FIXES:
  * Rscript -e would fail if stdin were closed (Reported by Henrik
    Bengtsson.)
  * qt(*, log.p=TRUE) in outer tails no longer produces NaN in its
    final steps, thus fixing PR#18360.
  * tools::Rd2latex() now escapes hashes and ampersands when writing
    URLs, fixing LaTeX errors with such URLs in \tabular.
  * When isGeneric(f, fdef=*) is used with mismatching names, the
    warning is better understandable; reported (with fix) in PR#18370
    by Gabe Becker.
  * poly(x, n) now works again (and is now documented) when x is a
    "Date" or "POSIXct" object, or of another class while fulfilling
    mode(x) == "numeric".  This also enables poly(x, *, raw=TRUE) for
    such variables.  Reported by Michael Chirico to R-devel.
  * write.table(), write.csv() and write.csv2() restore their
    numerical precision (internal equivalent of digits = 15) after an
    interrupt (PR#18384).
  * One can now read also byte FF from a clipboard connection
    (PR#18385).
  * source("") and source(character()) now give more helpful error
    messages.
  * R CMD check --as-cran set _R_CHECK_TIMINGS_ too late to have the
    intended effect.
  * as.POSIXlt(x) now also works with very large dates x, fixing
    PR#18401 reported by Hannes M"uhleisen.
  * Files can now be extracted even from very large zip archives
    (PR#18390, thanks to Martin Jakt).
  * Non-finite objects of class "POSIXlt" are now correctly coerced
    to classes "Date" and "POSIXct"; following up on the extension to
    format() them correctly.
  * Added methods for is.finite(), is.infinite() and is.nan() for
    "POSIXlt" date-time objects.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1678881600">- CHANGES IN R 4.2.3:
  C-LEVEL FACILITIES:
  * The definition of DL_FUNC in R_ext/Rdynload.h has been changed to
    be fully C-compliant.  This means that functions loaded _via_ for
    example R_GetCCallable need to be cast to an appropriate type if
    they have any arguments.
  * .Machine has a new element sizeof.time_t to identify old systems
    with a 32-bit type and hence a limited range of date-times (and
    limited support for dates millions of years from present).
  PACKAGE INSTALLATION:
  * (Windows) The default C++ standard had accidentally been left at
    C++11 when it was changed to C++14 on Unix.
  BUG FIXES:
  * As "POSIXlt" objects may be "partially filled" and their list
    components meant to be recycled, length() now is the length of
    the longest component.
  * as.POSIXlt.Date() could underflow for dates in the far past (more
    than half a million years BCE).
  * as.Date.POSIXlt(x) would return "1970-01-01" instead of NA in R
    4.2.2, e.g., for
    x &lt;- as.POSIXlt(c("2019-01-30","2001-1-1"))
    x$mon &lt;- c(0L, NA); as.Date(x)
  * R CMD check failed to apply enabled _R_CHECK_SUGGESTS_ONLY_ to
    examples and vignettes (regression in R 4.2.0).
  * R CMD check did not re-build vignettes in separate processes by
    default (regression in R 4.2.0).
  * Running examples from HTML documentation now restores previous
    knitr settings and options (PR#18420).
  * Quartz: fonts are now located using Core Graphics API instead of
    deprecated ATS which is no longer supported in the macOS 13 SDK
    (PR#18426).  This also addresses an issue where the currently
    used font in the Quartz device context was not correctly
    retained.
  * (Windows) Math symbols in text drawing functions are again
    rendered correctly (PR#18440).  This fixes a regression in R
    4.2.1 caused by a fix in PR#18382 which uncovered an issue in
    GraphApp due to which the symbol charset was not used with TT
    Symbol font face.
  * (Windows) Installing a package with a src/Makefile.{win,ucrt}
    file includes ~/.R/Makevars.win64 in the search for user
    makevars, as documented in "R Installation and Administration"
    and done for packages with a src/Makevars.{win,ucrt} file.
  * format(&lt;POSIXlt_w/_unbalanced_sec&gt;, "....%OS&lt;n&gt;") with n &gt; 0 no
    longer accidentally uses the unbalanced seconds, thanks to
    Suharto Anggono's report (including patch) in PR#18448.
  * solve.default(a, b) works around issues with some versions of
    LAPACK when a contains NA or NaN values.
  * When UseMethod() cannot dispatch, it no longer segfaults
    producing the error message in case of a long class(), thanks to
    Joris Vankerschaver's report (including patch) in PR#18447.
  * When example(foo, ..) produces graphics on an interactive device
    it needs to open itself, it now leaves devAskNewPage() unchanged
    even when it was FALSE, thus fixing a 14 years old '&lt;FIXME&gt;'.
  * packageDescription() again catches errors from encoding
    conversions. This also fixes broken packageVersion() in C locale
    on systems where iconv does not support transliteration.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1681128000">- add patch to build with libcurl &gt;= 8</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1682078400">- CHANGES IN R 4.3.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Calling &amp;&amp; or || with LHS or (if evaluated) RHS of length greater
    than one is now always an error, with a report of the form
    'length = 4' in coercion to 'logical(1)'
    Environment variable _R_CHECK_LENGTH_1_LOGIC2_ no longer has any
    effect.
  NEW FEATURES:
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.10.1.  (This caused some platform-dependent
    changes to package check output.)  And then to the sources from
    LAPACK version 3.11.0 (with changes only to double complex
    subroutines).
  * The included LAPACK sources have been updated to include the four
    Fortran 90 routines rather than their Fortran 77 predecessors.
    This may give some different signs in SVDs or
    eigendecompositions..  (This completes the transition to LAPACK
    3.10.x begun in R 4.2.0.)
  * The LAPACK sources have been updated to version 3.11.0.  (No new
    subroutines have been added, so this almost entirely bug fixes:
    Those fixes do affect some computations with NaNs, including R's
    NA.)
  * The parser now signals _classed_ errors, notably in case of the
    pipe operator |&gt;.  The error object and message now give line and
    column numbers, mostly as proposed and provided by Duncan Murdoch
    in PR#18328.
  * toeplitz() is now generalized for asymmetric cases, with a
    toeplitz2() variant.
  * xy.coords() and xyz.coords() and consequently, e.g., plot(x,y,
    log = "y") now signal a _classed_ warning about negative values
    of y (where log(.) is NA).  Such a warning can be specifically
    suppressed or caught otherwise.
  * Regular expression functions now check more thoroughly whether
    their inputs are valid strings (in their encoding, e.g. in
    UTF-8).
  * The performance of grep(), sub(), gsub() and strsplit() has been
    improved, particularly with perl = TRUE and fixed = TRUE.  Use of
    useBytes = TRUE for performance reasons should no longer be
    needed and is discouraged: it may lead to incorrect results.
  * apropos() gains an argument dot_internals which is used by the
    completion (help(rcompgen)) engine to also see base internals
    such as .POSIXct().
  * Support in tools::Rdiff() for comparing uncompressed PDF files is
    further reduced - see its help page.
  * qqplot(x, y, ...) gains conf.level and conf.args arguments for
    computing and plotting a confidence band for the treatment
    function transforming the distribution of x into the distribution
    of y (Switzer, 1976, _Biometrika_). Contributed by Torsten
    Hothorn.
  * Performance of package_dependencies() has been improved for cases
    when the number of dependencies is large.
  * Strings newly created by gsub(), sub() and strsplit(), when any
    of the inputs is marked as "bytes", are also marked as "bytes".
    This reduces the risk of creating invalid strings and accidental
    substitution of bytes deemed invalid.
  * Support for readLines(encoding = "bytes") has been added to allow
    processing special text files byte-by-byte, without creating
    invalid strings.
  * iconv(from = "") now takes into account any declared encoding of
    the input elements and uses it in preference to the native
    encoding.  This reduces the risk of accidental creation of
    invalid strings, particularly when different elements of the
    input have different encoding (including "bytes").
  * Package repositories in getOption("repos") are now initialized
    from the repositories file when utils is loaded (if not already
    set, e.g., in .Rprofile).  (From a report and patch proposal by
    Gabriel Becker in PR#18405.)
  * compactPDF() gets a verbose option.
  * type.convert() and hence read.table() get new option tryLogical =
    TRUE with back compatible default.  When set to false, converts
    "F" or "T" columns to character.
  * Added new unit prefixes "R" and "Q" for abbreviating
    (unrealistically large) sizes beyond 10^{27} in standard = "SI",
    thanks to Henrik Bengtsson's PR#18435.
  * as.data.frame()'s default method now also works fine with atomic
    objects inheriting from classes such as "roman", "octmode" and
    "hexmode", such fulfilling the wish of PR#18421, by Benjamin
    Feakins.
  * The as.data.frame.vector() utility now errors for wrong-length
    row.names.  It warned for almost six years, with "Will be an
    error!".
  * sessionInfo() now also contains La_version() and reports codepage
    and timezone when relevant, in both print() and toLatex() methods
    which also get new option tzone for displaying timezone
    information when locale = FALSE.
  * New function R_compiled_by() reports the C and Fortran compilers
    used to build R, if known.
  * predict(&lt;lm&gt;, newdata = *) no longer unnecessarily creates an
    offset of all 0s.
  * solve() for complex inputs now uses argument tol and by default
    checks for 'computational singularity' (as it long has done for
    numeric inputs).
  * predict(&lt;rank-deficient lm&gt;, newdata=*) now obeys a new argument
    rankdeficient, with new default "warnif", warning only if there
    are non-estimable cases in newdata.  Other options include
    rankdeficient = "NA", predicting NA for non-estimable newdata
    cases.  This addresses PR#15072 by Russ Lenth and is based on his
    original proposal and discussions in PR#16158 also by David Firth
    and Elin Waring.  Still somewhat experimental.
  * Rgui console implementation now works better with the NVDA screen
    reader when the full blinking cursor is selected.  The underlying
    improvements in cursor handling may help also other screen
    readers on Windows.
  * The drop-field control in GraphApp can now be left with the TAB
    key and all controls can be navigated in the reverse order using
    the Shift+TAB key, improving accessibility of the Rgui
    configuration editor.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now fully accurate
    (instead of to "only" minimally five digits).
  * demo(error.catching) now also shows off withWarnings() and
    tryCatchWEMs().
  * As an experimental feature the placeholder _ can now also be used
    in the rhs of a forward pipe |&gt; expression as the first argument
    in an extraction call, such as _$coef. More generally, it can be
    used as the head of a chain of extractions, such as _$coef[[2]].
  * Spaces in the environment variable used to choose the R session's
    temporary directory (TMPDIR, TMP and TEMP are tried in turn) are
    now fatal.  (On Windows the 'short path' version of the path is
    tried and used if that does not contain a space.)
  * all.equal.numeric() gets a new optional switch giveErr to return
    the numeric error as attribute.  Relatedly,
    stopifnot(all.equal&lt;some&gt;(a, b, ..)) is as "smart" now, as
    stopifnot(all.equal(....)) has been already, thus allowing
    customized all.equal&lt;Some&gt;() wrappers.
  * R on Windows is now able to work with path names longer than 260
    characters when these are enabled in the system (requires at
    least Windows 10 version 1607).  Packages should be updated to
    work with long paths as well, instead of assuming PATH_MAX to be
    the maximum length.  Custom front-ends and applications embedding
    R need to update their manifests if they wish to allow this
    feature.  See
    &lt;https://blog.r-project.org/2023/03/07/path-length-limit-on-windows&gt;
    for more information.
  * 'Object not found' and 'Missing argument' errors now give a more
    accurate error context. Patch provided by Lionel Henry in
    PR#18241.
  * The @ operator is now an S3 generic. Based on contributions by
    Tomasz Kalinowski in PR#18482.
  * New generic chooseOpsMethod() provides a mechanism for objects to
    resolve cases where two suitable methods are found for an Ops
    Group Generic. This supports experimenting with alternative
    object systems. Based on contributions by Tomasz Kalinowski in
    PR#18484.
  * inherits(x, what) now accepts values other than a simple
    character vector for argument what. A new generic, nameOfClass(),
    is called to resolve the class name from what. This supports
    experimenting with alternative object systems. Based on
    contributions by Tomasz Kalinowski in PR#18485.
  * Detection of BLAS/LAPACK in use (sessionInfo()) with FlexiBLAS
    now reports the current backend.
  * The "data.frame" method for subset() now warns about extraneous
    arguments, typically catching the use of = instead of == in the
    subset expression.
  * Calling a:b when numeric a or b is longer than one may now be
    made into an error by setting environment variable
    _R_CHECK_LENGTH_COLON_ to a true value, along the proposal in
    PR#18419 by Henrik Bengtsson.
  * density(x, weights = *) now warns if automatic bandwidth
    selection happens without using weights; new optional warnWbw may
    suppress the warning.  Prompted by Christoph Dalitz' PR#18490 and
    its discussants.
  * rm(list = *) is faster and more readable thanks to Kevin Ushey's
    PR#18492.
  * The plot.lm() function no longer produces a normal Q-Q plot for
    GLMs. Instead it plots a half-normal Q-Q plot of the absolute
    value of the standardized deviance residuals.
  * The print() method for class "summary.glm" no longer shows
    summary statistics for the deviance residuals by default.  Its
    optional argument show.residuals can be used to show them if
    required.
  * The tapply() function now accepts a data frame as its X argument,
    and allows INDEX to be a formula in that case. by.data.frame()
    similarly allows INDICES to be a formula.
  * The performance of df[j] &lt;- value (including for missing j) and
    write.table(df) has been improved for data frames df with a large
    number of columns.  (Thanks to Gabriel Becker's PR#18500,
    PR#18503 and discussants, prompted by a report from Toby Dylan
    Hocking on the R-devel mailing list.)
  * The matrix multiply operator %*% is now an S3 generic, belonging
    to new group generic matrixOps.  From Tomasz Kalinowski's
    contribution in PR#18483.
  * New function array2DF() to convert arrays to data frames,
    particularly useful for the list arrays created by tapply().
  DATES and TIMES:
  * On platforms where (non-UTC) datetimes before 1902 (or before
    1900 as with system functions on recent macOS) are guessed by
    extrapolating time zones from 1902-2037, there is a warning at
    the first use of extrapolation in a session.  (As all time zones
    post 2037 are extrapolation, we do not warn on those.)
  * (Platforms using --with-internal-tzone, including Windows and by
    default macOS). How years are printed in dates or date-times can
    be controlled by environment variable R_PAD_YEARS_BY_ZERO.  The
    default remains to pad to 4 digits by zeroes, but setting value
    no gives no padding (as used by default by glibc).
  * strftime() tries harder to determine the offset for the "%z"
    format, and succeeds on the mainstream R platforms.
  * strftime() has a limit of 2048 bytes on the string produced -
    attempting to exceed this is an error.  (Previously it silently
    truncated at 255 bytes.)
  * sessionInfo() records (and by default prints) the system time
    zone as part of the locale information.  Also, the source
    (system/internal) of the date-time conversion and printing
    functions.
  * Objects of class "POSIXlt" created in this version of R always
    have 11 components: component zone is always set, and component
    gmtoff is set for times in UTC and usually set on the (almost
    all) platforms which have C-level support, otherwise is NA.
  * There are comprehensive validity checks on the structure of
    objects of class "POSIXlt" when converting (including formatting
    and printing).  (This avoids mis-conversions of hand-crafted
    objects.)
  * There is some support for using the native date-time routines on
    macOS: this is only viable on recent versions (e.g. 12.6 and 13)
    and does get wrong some historical changes (before 1900, during
    WWII).  Use of --with-internal-tzone remains the default.
  * as.POSIXct(&lt;numeric&gt;) and as.POSIXlt(.) (without specifying
    origin) now work.  So does as.Date(&lt;numeric&gt;).
  * as.Date.POSIXct(., tz) now treats several tz values, notably
    "GMT" as equivalent to "UTC", proposed and improved by Michael
    Chirico and Joshua Ulrich in PR#17674.
  * Experimental balancePOSIXlt() utility allows using "ragged" and
    or out-of-range "POSIXlt" objects more correctly, e.g., in
    subsetting and subassignments.  Such objects are now documented.
    More experimentally, a "POSIXlt" object may have an attribute
    "balanced" indicating if it is known to be filled or fully
    balanced.
  * Functions axis.Date() and axis.POSIXct() are rewritten to gain
    better default tick locations and better default formats by using
    prettyDate(). Thanks to Swetlana Herbrandt.
  * The mapping of Windows' names for time zones to IANA's 'Olson'
    names has been updated.  When ICU is available (it is by
    default), it is used to get a mapping for the current region set
    in Windows.  This can be overridden by setting environment
    variable TZ to the desired Olson name - see OlsonNames() for
    those currently available.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 16
    and so packages that provide graphics devices should be
    reinstalled.
  * The grDevices and grid packages have new functions for rendering
    typeset glyphs, primarily: grDevices::glyphInfo() and
    grid::grid.glyph().
    Rendering of typeset glyphs is only supported so far on the
    Cairo-based graphics devices and on the pdf() and quartz()
    devices.
  * The defined behaviour for "clear" and "source" compositing
    operators (via grid::grid.group()) has been changed (to align
    better with simple interpretation of original Porter-Duff
    definitions).
  * Support for gradients, patterns, clipping paths, masks, groups,
    compositing operators, and affine transformations has been added
    to the quartz() device.
  INSTALLATION on a UNIX-ALIKE:
  * A system installation of generic LAPACK 3.10.0 or later will be
    preferred to the version in the R sources.
    configure option --with-lapack=no (equivalently --without-lapack)
    forces compilation of the internal LAPACK sources.
    If --with-lapack is not specified, a system liblapack is looked
    for and used if it reports version 3.10.0 or later and does not
    contain BLAS routines.
    Packages using LAPACK will need to be reinstalled if this changes
    to using an external library.
  * On aarch64 Linux platforms using GCC, configure now defaults to
  - fPIC (instead of -fpic), as desired in PR#18326.
  * configure now checks conversion of datetimes between POSIXlt and
    POSIXct around year 2020.  Failure (which has been seen on
    platforms missing tzdata) is fatal.
  * If configure option --with-valgrind-instrumentation is given
    value 1 or 2, option --with-system-valgrind-headers is now the
    default and ignored (with a warning).  It is highly recommended
    that the system headers are installed alongside valgrind: they
    are part of its packaging on some Linux distributions and
    packaged separately (e.g. in the valgrind-devel RPM) on others.
    configure will give a warning if they are not found.
    The system headers will be required in a future release of R to
    build with valgrind instrumentation.
  * libcurl 8.x is now accepted by configure: despite a change in
    major version number it changes neither API nor ABI.
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools43, an update of the Rtools42 toolchain.  It is
    based on gcc 12 and newer versions of MinGW-W64, binutils and
    libraries.  At this time R-devel can still be built using
    Rtools42 without changes, but when R-devel is installed via the
    installer, it will by default look for Rtools43.
  * Old make targets rsync-extsoft and 32-bit ones that are no longer
    needed have been removed.
  * Default builds (including for packages) no longer select C99.
    Thus the C standard used is the default for the compiler, which
    for the toolchain in Rtools43 is C17.  (This is consistent with
    Unix builds.)
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++17 where
    available (which it is on all currently checked platforms): if
    not C++14 or C++11 is used if available otherwise C++ is not
    supported.
  * USE_FC_LEN_T is the default: this uses the correct
    (compiler-dependent) prototypes for Fortran BLAS/LAPACK routines
    called from C/C++, and requires adjustment of many such calls -
    see 'Writing R Extensions' SS6.6.1.
  * There is initial support for C++23 as several compilers are now
    supporting -std=c++23 or -std=c++2b or similar.  As for C++20,
    there no additional configure checks for C++23 features beyond a
    check that the compiler reports a __cplusplus value greater than
    that in the C++20 standard.  C++ feature tests should be used.
  * There is support for a package to indicate the version of the C
    standard which should be used to compile it, and for the
    installing user to specify this.  In most cases R defaults to the
    C compiler's default standard which is C17 (a `bug-fix' of C11) -
    earlier versions of R or compilers may have defaulted to C99.
    Current options are:
    USE_C17 Use a standard that is at most C17.  The intention is to
    allow legacy packages to still be installed when later C
    standards become the default, including packages using new
    keywords as identifiers or with K&amp;R-style function
    declarations.  This will use C17 if available, falling back
    to C11.
    USE_C90 Use the C90 (aka C89) standard.  (As that standard did
    not require compilers to identify that version, all we can
    verify is that the compiler does not claim to be using a
    later standard.  It may accept C99 features - for example
    clang accepts // to make comments.)
    USE_C99 Use the C99 standard. This should be rarely needed - it
    avoids the few new features of C11/C17 which can be useful if
    a package assumes them if C17 is specified and they are not
    implemented.
    USE_C23 Use C23 (or in future, later).  Compiler/library support
    for C23 is still being implemented, but LLVM clang from
    15.0.0 and the upcoming GCC 13 have quite extensive support.
    These can be specified as part of the SystemRequirements field in
    the package's DESCRIPTION file or _via_ options --use-C17 and so
    on of R CMD INSTALL and R CMD SHLIB.
    For further details see "Writing R Extensions" SS1.2.5.
  * (Windows) A src/Makefile.ucrt or src/Makefile.win file is now
    included after R_HOME/etcR_ARCH/Makeconf and so no longer needs
    to include that file itself.  Installation of a package with such
    a file now uses a site Makevars file in the same way as a package
    with a src/Makevars.win file would.
  * configure is now passed crucial variables such as CC and CFLAGS
    in its environment, as many packages were not setting them (as
    documented in 'Writing R Extensions' SS1.2).
    This has most effect where configure is used to compile parts of
    the package - most often by cmake or libtool which obfuscate the
    actual compile commands used.
    Also used for configure.win and configure.ucrt on Windows.
  FORTRAN FLAGS:
  * The flag -fno-optimize-sibling-calls is no longer forced for
    gfortran 7 and later.  It should no longer be needed now using
    'hidden' character-length arguments when calling BLAS/LAPACK
    routines from C/C++ is the default even for packages.  (Unless
    perhaps packages call Fortran code from C/C++ without using R's
    headers and without allowing for these arguments.)
  C-LEVEL FACILITIES:
  * The deprecated S-compatibility macros DOUBLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * The deprecated legacy typedefs of Sint and Sfloat in header R.h
    are no longer defined, and that header no longer includes header
    limits.h from C nor climits from C++.
  * New macro CAD5R() is provided in Rinternals.h and used in a few
    places in the R sources.
  * ALTREP now supports VECSXP vectors. Contributed by Gabor Csardi
    in PR#17620.
  * The Rcomplex definition (in header R_ext/Complex.h) has been
    extended to prevent possible mis-compilation when interfacing
    with Fortran (PR#18430).  The new definition causes compiler
    warnings with static initializers such as {1, 2}, which can be
    changed to {.r=1, .i=2}.
    Using the new definition from C++ depends on compiler extensions
    supporting C features that have not been incorporated into the
    C++ standards but are available in g++ and clang++: this may
    result in C++ compiler warnings but these have been worked around
    for recent versions of common compilers (GCC, Apple/LLVM clang,
    Intel).
    It is intended to change the inclusion of header R_ext/Complex.h
    by other R headers, so C/C++ code files which make use of
    Rcomplex should include that header explicitly.
  UTILITIES:
  * R CMD check does more checking of package .Rd files, warning
    about invalid email addresses and (some) invalid URIs and noting
    empty \item labels in description lists.
  * R CMD check now also reports problems when reading package news
    in md (file NEWS.md) and (optionally) plain text (file NEWS)
    formats.
  * _R_CHECK_TIMINGS_ defaults to a value from the environment even
    for R CMD check --as-cran; this allows for exceptionally fast or
    slow platforms.
    It now applies to checking PDF and HTML versions of the manuals,
    and 'checking CRAN incoming feasibility'.
  * R CMD check can optionally (but included in --as-cran) check
    whether HTML math rendering _via_ KaTeX works for the package .Rd
    files.
  * Non-interactive debugger invocations can be trapped by setting
    the environment variable _R_CHECK_BROWSER_NONINTERACTIVE_ to a
    true value.  This is enabled by R CMD check --as-cran to detect
    the use of leftover browser() statements in the package.
  * The use of sprintf and vsprintf from C/C++ has been deprecated in
    macOS 13 and is a known security risk.  R CMD check now reports
    (on all platforms) if their use is found in compiled code:
    replace by snprintf or vsnprintf respectively. [*NB:* whether
    such calls get compiled into the package is platform-dependent.]
  * Where recorded at installation, R CMD check reports the C and
    Fortran compilers used to build R.
    It reports the OS in use (if known, as given by osVersion) as
    well as that R was built for.
    It notes if a C++ standard was specified which is older than the
    current default: many packages have used C++11 to mean 'not
    C++98' - as C++11 is the minimum supported since R 4.0.0, that
    specification can probably be removed.
  * R CMD INSTALL reports the compilers (and on macOS, the SDK) used,
    and this is copied to the output of R CMD check.
    Where a C++ standard is specified, it is reported.
  * R CMD check's 'checking compilation flags in Makevars' has been
    relaxed to accept the use of flags such as -std=f2008 in
    PKG_FFLAGS.
  * tools::buildVignettes() has a new argument skip, which is used by
    R CMD check to skip (and note) vignettes with unavailable
    \VignetteDepends (PR#18318).
  * New generic .AtNames() added to enable class-specific completions
    after @. The formerly internal function findMatches() is now
    exported, mainly for use in methods for .DollarNames() and
    .AtNames().
  DEPRECATED AND DEFUNCT:
  * default.stringsAsFactors() is defunct.
  * Calling as.data.frame.&lt;class&gt;() directly (for 12 atomic classes)
    is going to be formally deprecated, currently activated by
    setting the environment variable
    _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ to non-empty, which also
    happens in R CMD check --as-cran.
  BUG FIXES:
  * Hashed environments with sizes less than 5 can now grow.
    (Reported to R-devel by Duncan Garmonsway.)
  * as.character(&lt;Rd&gt;, deparse = TRUE) failed to re-escape curly
    braces in LaTeX-like text.  (Reported by Hadley Wickham in
    PR#18324.)
  * library() now passes its lib.loc argument when requiring Depends
    packages; reported (with fix) in PR#18331 by Mikael Jagan.
  * R CMD Stangle: improved message about 'Output' files.
  * head(x, n) and tail(x, n) now signal an error if n is not
    numeric, instead of incidentally "working" sometimes returning
    all of x.  Reported and discussed by Colin Fay, in PR#18357.
  * The "lm" method for summary() now gives the correct F-statistic
    when the model contains an offset.  Reported in PR#18008.
  * C() and `contrasts&lt;-`() now preserve factor level names when
    given a function object (as opposed a function name which did
    preserve names). Reported in PR#17616.
  * c(a = 1, 2)[[]] no longer matches 2 but rather signals a
    _classed_ error.  Reported and analysed by Davis Vaughan in
    PR#18367, a duplicate of PR#18004, by Jan Meis et al.  For
    consistency, NULL[[]] is also erroneous now.  x[[]] &lt;- v gives an
    error of the same class "MissingSubscriptError".
  * The relist() function of utils now supports NULL elements in the
    skeleton (PR#15854).
  * ordered(levels = *) (missing x) now works analogously to factor(,
    ordered=TRUE); reported (with fix) by Achim Zeileis in PR#18389.
  * User-defined Rd macro definitions can now span multiple lines,
    thanks to a patch from Duncan Murdoch. Previously, the Rd parser
    silently ignored everything after the first line.
  * Plain-text help (tools::Rd2txt()) now preserves an initial blank
    line for text following description list items.
  * tools::Rd2HTML() and tools::Rd2latex() no longer split \arguments
    and \value lists at Rd comments.
  * tools::Rd2latex() now correctly handles optional text outside
    \items of argument lists as well as bracketed text at the
    beginning of sections, e.g., \value{[NULL]}.
  * as.character(&lt;POSIXt&gt;) now behaves more in line with the methods
    for atomic vectors such as numbers, and is no longer influenced
    by options().  Ditto for as.character(&lt;Date&gt;).  The
    as.character() method gets arguments digits and OutDec with
    defaults _not_ depending on options().  Use of as.character(*,
    format = .) now warns.
  * Similarly, the as.character.hexmode() and *.octmode() methods
    also behave as good citizen methods and back compatibility option
    keepStr = TRUE.
  * The as.POSIXlt(&lt;POSIXlt&gt;) and as.POSIXct(&lt;POSIXct&gt;) default
    methods now do obey their tz argument, also in this case.
  * as.POSIXlt(&lt;Date&gt;) now does apply a tz (time zone) argument, as
    does as.POSIXct(); partly suggested by Roland Fuss on the R-devel
    mailing list.
  * as.Date.POSIXlt(x) now also works when the list components are of
    unequal length, aka "partially filled" or "ragged".
  * expand.model.frame() looked up variables in the wrong environment
    when applied to models fitted without data.  Reported in
    PR#18414.
  * time() now (also) uses the ts.eps = getOption("ts.eps") argument
    and thus by default rounds values very close to the start (or
    end) of a year.  Based on a proposal by Andre"i V. Kostyrka on
    R-help.
  * Printing of a factanal() result with just one factor and sort =
    TRUE now works regularly, fixing PR#17863 by Timothy Bates,
    thanks to the 'R Contributors' working group.
  * Printing 0-length objects of class "factor", "roman", "hexmode",
    "octmode", "person", "bibentry", or "citation" now prints
    something better, one of which fixes PR#18422, reported by
    Benjamin Feakins.
  * Sys.timezone() queries timedatectl only if systemd is loaded;
    addressing a report by Jan Gorecki in PR#17421.
  * The formula method of cor.test() had scoping problems when
    environment(formula) was not the calling environment; reported
    with a patch proposal by Mao Kobayashi in PR#18439.
  * attach() of an environment with active bindings now preserves the
    active bindings.  Reported by Kevin Ushey in PR#18425.
  * BLAS detection now works also with system-provided libraries not
    available as regular files.  This fixes detection of the
    Accelerate framework on macOS since Big Sur.  Reported by David
    Novgorodsky.
  * download.file() gives a helpful error message in case of an
    invalid download.file.method option, thanks to Colin Fay's report
    in PR#18455.
  * Sporadic crashes of Rterm when using completion have been fixed.
  * Rprof() is now more reliable.  A livelock in thread
    initialization with too short sampling interval has been fixed on
    macOS.  A deadlock in using the C runtime has been fixed on
    Windows.  A potential deadlock has been prevented on Unix.
  * Cursor placement in Rgui now works even after a fixed-width font
    is selected.
  * Mandatory options (options()) are now set on startup so that
    saving and restoring them always works (PR#18372).
  * Package installation, R CMD INSTALL or install.packages(*), now
    parses each of the &lt;pkg&gt;/R/*.R files individually instead of
    first concatenating and then parse()ing the large resulting file.
    This allows parser or syntax errors to be diagnosed with correct
    file names and line numbers, thanks to Simon Dedman's report and
    Bill Dunlap's patch in PR#17859.
    This _does_ require syntactically self contained R source files
    now, fixing another inadvertent bug.
  * predict.lm(&lt;model with offset&gt;) now finds the offset in the
    correct environment, thanks to Andr'e Gillibert's report and patch
    in PR#18456.
  * getInitial(&lt;formula&gt;) now finds the selfStart model in the
    correct environment.  (Reported by Ivan Krylov in PR#18368.)
  * Fix for possible segfault when using recently-added graphics
    features, such as gradients, clipping paths, masks, and groups
    with pdf(file=NULL).
  * class(m) &lt;- class(m) no longer changes a matrix m by adding a
    class _attribute_.
  * packageDate(pkg) now only warns once if there is no pkg.
  * When ts() creates a multivariate time series, "mts", it also
    inherits from "array" now, and is.mts() is documented _and_
    stricter.
  * Rd2txt() now preserves line breaks of \verb Rd content and from
    duplicated \cr.  The former also fixes the rendering of verbatim
    output from Rd \Sexpr in plain-text help.
  * uniroot(f, interval) should no longer wrongly converge _outside_
    the interval in some cases where abs(f(x)) == Inf for an x at the
    interval boundary, thanks to posts by Ben Bolker and Serguei
    Sokol on R-devel.
  * Vectorized alpha handling in palette functions such as in gray(),
    rainbow(), or hcl.colors() works correctly now, thanks to Achim
    Zeileis' report and patch in PR#18476.
  * Formatting and print()ing of bibentry objects has dropped the
    deprecated citation.bibtex.max argument, such that the bibtex
    argument's default for print.bibentry() depends directly on the
    citation.bibtex.max option, whereas in format.bibentry() the
    option no longer applies.
  * Attempting to use a character string naming a foreign function
    entry point in a foreign function call in a package will now
    signal an error if the packages has called R_forceSymbols to
    specify that symbols must be used.
  * An error in table() could permanently set options(warn=2)
    promoting all subsequent warnings to errors.
  * The sigma() function gave misleading results for binary GLMs.  A
    new method for objects of class "glm" returns the square root of
    the estimate of the dispersion parameter using the same
    calculation as summary.glm().
  * bs() and ns() in the (typical) case of automatic knot
    construction, when some of the supposedly inner knots coincide
    with boundary knots, now moves them inside (with a warning),
    building on PR#18442 by Ben Bolker.
  * R CMD on Windows now skips the site profile with --no-site-file
    and --vanilla even when R_PROFILE is set (PR#18512, from Kevin
    Ushey).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1686916800">- CHANGES IN R 4.3.1:
  C-LEVEL FACILITIES:
  * The C-level API version of R's integrate(), Rdqags() in Applic.h,
    now returns the correct number of integrand evaluations neval,
    fixing PR#18515 reported and diagnosed by Stephen Wade.
  * The C prototypes for LAPACK calls dspgv and dtptrs in
    R_exts/Lapack.h had one too many and one too few character length
    arguments - but this has not caused any known issues. To get the
    corrected prototypes, include
    [#]include &lt;Rconfig.h&gt; // for PR18534fixed
    [#]ifdef PR18534fixed
    [#] define usePR18534fix 1
    [#]endif
    [#]include &lt;R_exts/Lapack.h&gt;
    in your C/C++ code (PR#18534).
  INSTALLATION:
  * Many of the checks of esoteric Internet operations and those
    using unreliable external sites have been moved to a new target
    that is not run by default and primarily intended for the core
    developers.  To run them use
    cd tests; make test-Internet-dev
  BUG FIXES:
  * .S3methods(), typically called from methods(), again marks
    methods from package base as visible.
    Also, the visibility of non-base methods is again determined by
    the method's presence in search().
  * tools::Rdiff() is now more robust against invalid strings, fixing
    installation tests on Windows without Rtools installed
    (PR#18530).
  * Fix (new) bug in hcl.colors(2, *), by Achim Zeileis (PR#18523).
  * head(., &lt;illegal&gt;) and tail(..) now produce more useful "Error in
    ...." error messages, fixing PR#18362.
  * Package code syntax on Windows is checked in UTF-8 when UTF-8 is
    the native encoding.
  * na.contiguous(x) now also returns the first run, when it is at
    the beginning and there is a later one of the same length;
    reported to R-devel, including a fix, by Georgi Boshnakov.
    Further, by default, it modifies only an existing attr(*,"tsp")
    but otherwise no longer sets one.
  * chol(&lt;not pos.def&gt;, pivot = &lt;T|F&gt;) now gives a correct error or
    warning message (depending on pivot), thanks to Mikael Jagan's
    (PR#18541).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1699012800">- CHANGES IN R 4.3.2:
  NEW FEATURES:
  * The default initialization of the "repos" option from the
    repositories file at startup can be skipped by setting
    environment variable R_REPOSITORIES to NULL such that
    getOption("repos") is empty if not set elsewhere.
  * qr.X() is now an implicit S4 generic in methods.
  * iconv(to = "ASCII//TRANSLIT") is emulated using substitution on
    platforms which do not support it (notably Alpine Linux).  This
    should give a human-readable conversion in ASCII on all platforms
    (rather than NA_character_).
  * trans3d() gains options continuous and verbose addressing the
    problem of possible "wrap around" when projecting too long
    curves, as reported by Achim Zeileis in PR#18537.
  * tools::showNonASCII() has been rewritten to work better on macOS
    14 (which has a changed implementation of iconv()).
  * tiff(type = "quartz") (the default on macOS) now warns if
    compression is specified: it continues to be ignored.
  INSTALLATION on a UNIX-ALIKE:
  * There is some support for building with Intel's LLVM-based
    compilers on x86_64 Linux, such as (C) icx, (C++) ipcx and
    (Fortran) ifx from oneAPI 2023.x.y.
  * There is support for using LLVM's flang-new as the Fortran
    compiler from LLVM 16.0.x (preferably 17.0.0 or later).
  UTILITIES:
  * R CMD check reports the use of the Fortran 90 random number
    generator RANDOM_NUMBER() and the subroutines to initialize it.
    'Writing R Extensions' has example code to use R's RNGs from
    Fortran.
  BUG FIXES:
  * substr(x, n, L) &lt;- cc now works (more) correctly for multibyte
    UTF-8 strings x when L &gt; nchar(x), thanks to a report and patch
    by 'Architect 95'.
  * contrib.url(character()) now returns 0-length character() as
    documented, which also avoids spurious warnings from
    available.packages() et al. in the edge case of an empty vector
    of repository URLs.
  * readChar(., 4e8) no longer fails, thanks to Kodi Arfer's report
    (PR#18557).
  * lapply(&lt;list&gt;, as.data.frame) no longer warns falsely for some
    base vector components.
  * Communication between parent and child processes in the multicore
    part of parallel could fail on platforms that do not support an
    arbitrarily large payload in system functions read()/write() on
    pipes (seen on macOS where a restriction to INT_MAX bytes is
    documented, without doing a partial read unlike Linux). The
    payload is now split into 1Gb chunks to avoid that problem.
    (PR#18571)
  * qqplot(x,y, conf.level=.) gives better confidence bounds when
    length(x) != length(y), thanks to Alexander Ploner's report and
    patch proposal (PR#18557).
  * norm(&lt;0-length&gt;, "2") now gives zero instead of an error, as all
    the other norm types, thanks to Mikael Jagan's PR#18542.
  * Build-stage Rd macros \packageAuthor and \packageMaintainer now
    process Authors@R, fixing NA results when the package DESCRIPTION
    omits Author and Maintainer fields.
  * Formatting and printing complex numbers could give things like
    0.1683-0i because of rounding error: -0i is now replaced by +0i.
  * postscript() refused to accept a title comment containing the
    letter "W" (PR#18599).
  * isoreg(c(1,Inf)) signals an error instead of segfaulting, fixing
    PR#18603.
  * tiff(type = "Xlib") was only outputting the last page of
    multi-page plots.
  * tools::latexToUtf8() again knows about \~{n} and other letters
    with tilde, fixing a regression in R 4.3.0, and about \^{i} as an
    alternative to \^{\i} (similarly with other accents).
    Furthermore, LaTeX codes for accented I letters are now correctly
    converted, also fixing related mistakes in
    tools::encoded_text_to_latex().
  * tar(*, tar = "internal") no longer creates out-of-spec tar files
    in the very rare case of user or group names longer than 32
    bytes, fixing PR#17871 with thanks to Ivan Krylov.
  * When using the "internal" timezone datetime code, adding a
    fraction of a second no longer adds one second, fixing PR#16856
    from a patch by Ivan Krylov.
  * tools::checkRd() no longer produces spurious notes about
    "unnecessary braces" from multi-line Rd results of \Sexpr macros.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1709208000">- CHANGES IN R 4.3.3:
  NEW FEATURES:
  * iconv() now fixes up variant encoding names such as "utf8"
    case-insensitively.
  DEPRECATED AND DEFUNCT:
  * The legacy encoding = "MacRoman" is deprecated in pdf() and
    postscript(): support was incomplete in earlier versions of R.
  BUG FIXES:
  * Arguments are now properly forwarded to methods on S4 generics
    with ... in the middle of their formal arguments. This was broken
    for the case when a method introduced an argument but did not
    include ... in its own formals. Thanks to Herv'e Pag`es for the
    report PR#18538.
  * Some invalid file arguments to pictex(), postscript() and xfig()
    opened a file called NA rather than throw an error.  These
    included postscript(NULL) (which some people expected to work
    like pdf(NULL)).
  * Passing filename = NA to svg(), cairo_pdf(), cairo_ps() or the
    Cairo-based bitmap devices opened a file called NA: it now throws
    an error.
  * quartz(file = NA) opened a file called NA, including when used as
    a Quartz-based bitmap device.  It now gives an error.
  * rank(&lt;long vector&gt;) now works, fixing PR#18617, thanks to Ilia
    Kats.
  * seq.int() did not adequately check its length.out argument.
  * match(&lt;POSIXct&gt;, .) is correct again for differing time zones,
    ditto for "POSIXlt", fixing PR#18618 reported by Bastian Klein.
  * drop.terms(*, dropx = &lt;0-length&gt;) now works, fixing PR#18563 as
    proposed by Mikael Jagan.
  * drop.terms(*) keeps + offset(.) terms when it should, PR#18565,
    and drop.terms() no longer makes up a response, PR#18566, fixing
    both bugs thanks to Mikael Jagan.
  * getS3method("t", "test") no longer finds the t.test() function,
    fixing PR#18627.
  * pdf() and postscript() support for the documented Adobe encodings
    "Greek" and "Cyrilllic" was missing (although the corresponding
    Windows' codepages could be used).
  * Computations of glyph metric information for pdf() and
    postscript() did not take into account that transliteration could
    replace one character by two or more (only seen on macOS 14) and
    typically warned that the information was not known.
  * rank(x) no longer overflows during integer addition, when
    computing rank average for largish but not-yet long vector x,
    fixing PR#18630, thanks to Ilia Kats.
  * list.files() on Windows now returns also files with names longer
    that 260 bytes (the Windows limit is 260 characters).
    Previously, some file names particularly with 'East Asian'
    characters were omitted.
  * cov2cor(&lt;0 x 0&gt;) now works, fixing PR#18423 thanks to Mikael
    Jagan and Elin Waring.
  * cov2cor(&lt;negative diagonal&gt;) and similar now give one warning
    instead of two, with better wording, fixing PR#18424 thanks to
    Mikael Jagan.
  * tools:: startDynamicHelp() now ensures port is in proper range,
    fixing PR#18645.
  * pbeta(x, a,b) is correct now for x=0 or 1 in the boundary cases
    where a or b or both are 0, fixing PR#18672 thanks to Michael
    Fay.
  * pmatch(x, table) for large table, also called for data frame row
    selection, dfrm[nm, ], is now interruptible, fixing PR#18656.
  * predict(&lt;rank-deficient lm&gt;, newdata=*) fix computing of nbasis,
    see Russ Lenth's comment 29 in PR#16158.
  * Added a work-around for a bug in macOS 14.3.1 and higher which
    prevents R plots in the Quartz Cocoa device from updating on
    screen.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1713960000">- CHANGES IN R 4.4.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Startup banners, R --version, sessionInfo() and R CMD check no
    longer report (64-bit) as part of the platform as this is almost
    universal - the increasingly rare 32-bit platforms will still
    report (32-bit).
    On Windows, ditto for window titles.
  * is.atomic(NULL) now returns FALSE, as NULL is not an atomic
    vector.  Strict back-compatibility would replace is.atomic(foo)
    by (is.null(foo) || is.atomic(foo)) but should happen only
    sparingly.
  NEW FEATURES:
  * The confint() methods for "glm" and "nls" objects have been
    copied to the stats package.  Previously, they were stubs which
    called versions in package MASS. The MASS namespace is no longer
    loaded if you invoke (say) confint(glmfit).  Further, the "glm"
    method for profile() and the plot() and pairs() methods for class
    "profile" have been copied from MASS to stats.  (profile.nls()
    and plot.profile.nls() were already in stats.)
  * The confint() and profile methods for "glm" objects have gained a
    possibility to do profiling based on the Rao Score statistic in
    addition to the default Likelihood Ratio. This is controlled by a
    new test = argument.
  * The pairs() method for "profile" objects has been extended with a
    which = argument to allow plotting only a subset of the
    parameters.
  * The "glm" method for anova() computes test statistics and
    p-values by default, using a chi-squared test or an F test
    depending on whether the dispersion is fixed or free.  Test
    statistics can be suppressed by giving argument test a false
    logical value.
  * In setRepositories() the repositories can be set using their
    names via name = instead of index ind =.
  * methods() and .S3methods() gain a all.names option for the (rare)
    case where functions starting with a . should be included.
  * Serializations can now be interrupted (e.g., by Ctrl-C on a
    Unix-alike) if they take too long, e.g., from save.image(),
    thanks to suggestions by Ivan Krylov and others on R-devel.
  * New startup option --max-connections to set the maximum number of
    simultaneous connections for the session.  Defaults to 128 as
    before: allowed values up to 4096 (but resource limits may in
    practice restrict to smaller values).
  * R on Windows (since Windows 10 2004) now uses the new Segment
    Heap allocator. This may improve performance of some
    memory-intensive applications.
  * When R packages are built, typically by R CMD build &lt;pkg&gt;, the
    new --user=&lt;build_user&gt; option overrides the (internally
    determined) user name, currently Sys.info()["user"] or LOGNAME.
    This is a (modified) fulfillment of Will Landau's suggestion in
    PR#17530.
  * tools::testInstalledBasic() gets new optional arguments outDir
    and testSrcdir, e.g., allowing to use it in a &lt;builddir&gt; !=
    &lt;srcdir&gt; setup, and in standard "binary" Windows installation
  * if* a source tests/ folder is present.
  * range(&lt;DT_with_Inf&gt;, finite = TRUE) now work for objects of class
    "Date", "POSIXct", and "POSIXlt" with infinite entries,
    analogously to range.default(), as proposed by Davis Vaughan on
    R-devel.  Other range()-methods can make use of new function
    .rangeNum().
  * New .internalGenerics object complementing .S3PrimitiveGenerics,
    for documentation and low-level book-keeping.
  * grid() now invisibly returns the x- and y- coordinates at which
    the grid-lines were drawn.
  * norm(., type) now also works for complex matrices.
  * kappa(., exact = TRUE, norm = *) now works for all norms and also
    for complex matrices.  In symmetric / triangular cases, the new
    argument uplo = "U" | "L" allows the upper or lower triangular
    part to be specified.
  * memDecompress(type = "unknown") recognizes compression in the
    default 'zlib' format as used by memCompress(type = "gzip").
  * memCompress() and memDecompress() will use the libdeflate library
    (&lt;https://github.com/ebiggers/libdeflate&gt;) if installed.  This
    uses the same type of compression for type = "gzip" but is 1.5-2x
    faster than the system libz library on some common platforms: the
    speed-up may depend on the library version.
  * diff() for objects of class "Date", "POSIXct", and "POSIXlt"
    accepts a units argument passed via ....
  * Dynamic help now does a much better job of rendering package
    DESCRIPTION metadata.
  * Rprof() gains an event argument and support for elapsed (real)
    time profiling on Unix (PR#18076).
  * filled.contour() gains a key.border argument.
  * tools::update_pkg_po() gets arguments pot_make and mo_make for
    _not_ re-making the corresponding files, and additionally a
    verbose argument.
  * Hexadecimal string colour specifications are now accepted in
    short form, so, for example, we can use "#123", which is
    equivalent to "#112233".
    Thanks to MikeFC for the original idea and Ella Kaye, Malcolm
    Barrett, George Stagg, and Hanne Oberman for the patch.
  * Plain-text help shows \var markup by angle brackets.
  * The new experimental primitive function declare() is intended to
    eventually allow information about R code to be communicated to
    the interpreter, compiler, and code analysis tools. The syntax
    for declarations is still being developed.
  * Functions psmirnov(), qsmirnov() and rsmirnov() in package stats
    have had argument two.sided renamed to alternative, to take into
    account that the permutation distributions of the one-sided
    statistics can be different in the case of ties.  Consequence of
    PR#18582.
  * sort() is now an implicit S4 generic in methods.
  * Formatting and printing, format(z), print(z), of complex vectors
    z no longer zap relatively small real or imaginary parts to zero,
    fixing PR#16752.  This is an API change, as it was documented
    previously to round real and imaginary parts together on purpose,
    producing nicer looking output.  As mentioned, e.g. in the PR,
    this change is compatible with many other "R-like" programming
    environments.
    We have simplified the internal code and now basically format the
    real and imaginary parts independently of each other.
  * New experimental functions Tailcall() and Exec() to support
    writing stack-space-efficient recursive functions.
  * Where characters are attempted to be plotted by pdf(),
    postscript() and xfig() which are not in the selected 8-bit
    character set (most often Latin-1) and the R session is using a
    UTF-8 locale, the warning messages will show the UTF-8 character
    rather than its bytes and one dot will be substituted per
    character rather than per byte.  (Platforms whose iconv() does
    transliteration silently plot the transliteration.)
    In a UTF-8 locale some transliterations are now done with a
    warning (e.g., dashes and Unicode minus to hyphen, ligatures are
    expanded, permille (‰) is replaced by o/oo), although the OS may
    have got there first.  These are warnings as they will continue
    to be replaced by dots in earlier versions of R.
  * The matrix multiplication functions crossprod() and tcrossprod()
    are now also primitive and S3 generic, as %*% had become in R
    4.3.0.
  * source() and example() have a new optional argument catch.aborts
    which allows continued evaluation of the R code after an error.
  * The non-Quartz tiff() devices allow additional types of
    compression if supported by the platform's libtiff library.
  * The list of base and recommended package names is now provided by
    tools::standard_package_names().
  * cairo_pdf() and cairo_ps() default to onefile = TRUE to closer
    match pdf() and postscript().
  * New option catch.script.errors provides a documented way to catch
    errors and then continue in non-interactive use.
  * L %||% R newly in base is an expressive idiom for the phrases
    if(!is.null(L)) L else R or if(is.null(L)) R else L.
  * The return value from warnings() now always inherits from
    "warnings" as documented, now also in the case of no warnings
    where it previously returned NULL.
  * as.complex("1i") now returns 0 + 1i instead of NA with a warning.
  * z &lt;- c(NA, 1i) now keeps the imaginary part Im(z[1]) == 0, no
    longer coercing to NA_complex_.  Similarly, cumsum(z) correctly
    sums real and imaginary parts separately, i.e., without
    "crosstalk" in case of NAs.
  * On Alpine Linux iconv() now maps "latin2", "latin-2", "latin9"
    and "latin-9" to encoding names the OS knows about
    (case-insensitively).
  * iconv(sub = "Unicode") now always zero-pads to four (hex) digits,
    rather than to 4 or 8.  (This seems to have become the convention
    once Unicode restricted the number of Unicode points to 2^21 - 1
    and so will never need more than 6 digits.)
  * NCOL(NULL) now returns 0 instead of 1, for consistency with
    cbind().
  * The information for the Euro glyph missing from the Adobe .afm
    files for the Courier, Helvetica and Times families has been
    copied from their URW equivalents - this will improve vertical
    centring in the pdf() and postscript() devices.
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.12.0.  The changes are almost entirely cosmetic.
  * The included LAPACK sources have been updated to version 3.12.0
    and some further double-complex routines added.
  * There are new font families for the 2014--5 URW 2.0 fonts (see
    ?pdf) which are included in recent versions of Ghostscript.
    These have font widths for most Greek glyphs and a few others
    which were missing from the original versions (whose font
    families remain available for reproducibility, although
    Ghostscript-based viewers will render using the 2.0 versions).
  * Improve the large-n efficiency of as.matrix(&lt;dist&gt;), thanks an R
    contributors effort, notably by Tim Taylor and Heather Turner,
    see PR#18660.
  * The default and numeric methods of all.equal() get a check.class
    option.
  * zapsmall() gets new optional arguments, function mFUN and min.d,
    for extra flexibility; fulfills a wish in PR#18199.  Also, it is
    now an implicit S4 generic in package methods.
  * The Rd filter for aspell() gains an ignore argument.
  * New generic function sort_by(), primarily useful for the
    data.frame method which can be used to sort rows of a data frame
    by one or more columns.
  * The icence headers for the RPC code in src/extra/xdr have been
    updated to use the GPL-compatible licence published by Oracle
    America in 2010.
  * New function pkg2HTML() in tools to create single-page HTML
    reference manuals for R packages.
  * The byte code evaluator now uses less C stack space for recursive
    calls to byte-compiled functions. It also makes more of an effort
    to avoid allocations for scalar return values.
  * New completion option backtick (disabled by default) allows
    non-syntactic completions to be wrapped in backquotes. This is
    currently only useful for Jupyter notebooks via the IRkernel
    package, and may cause problems for other backends.
  INSTALLATION:
  * The parser has been updated to work with bison 3.8.2, which is
    now used for the pre-generated parsers in gram.c, file.c, and
    gramRd.c. A few parser error messages have changed, which may
    affect code that relies on exact messages.
  INSTALLATION on a UNIX-ALIKE:
  * System valgrind headers are now required to use configure option
  - -with-valgrind-instrumentation with value 1 or 2.
  * configure will warn if it encounters a 32-bit build, as that is
    nowadays almost untested.
  * Environment variable R_SYSTEM_ABI is no longer used and so no
    longer recorded in etc/Renviron (it was not on Windows and was
    only ever used when preparing package tools).
  * If the libdeflate library and headers are available, libdeflate
    rather than libz is used to (de)compress R objects in lazy-load
    databases.  Typically tasks spend up to 5% of their time on such
    operations, although creating lazy-data databases is one of the
    exceptions.
    This can be suppressed if the library is available by the
    configure option --without-libdeflate-compression.
  * configure option --enable-lto=check has not worked reliably since
    2019 and has been removed.
  * The minimum autoconf requirement for a maintainer build has been
    increased to autoconf 2.71.
    It is intended to increase this to 2.72 for R 4.5.0: the
    distributed configure file was generated using 2.72.
  * The minimum version requirement for an external LAPACK has been
    reduced to 3.9.0.
  * No default C++ compiler is set if no C++17 compiler is detected:
    there is no longer an automatic fallback to C++14 or C++11.
    Compilers from the last five years should have sufficient
    support: for others macros CXX and CXXSTD can be set in file
    config.site to provide a fallback if needed.
    The Objective-C++ compiler now by default uses the standard
    selected by R for C++ (currently C++17) rather than the default
    standard for the C++ compiler (which on macOS is still C++98).
  INSTALLATION on macOS:
  * A new configure option --with-newAccelerate makes use of Apple's
    'new' BLAS / LAPACK interfaces in their Accelerate framework.
    Those interfaces are only available in macOS 13.3 or later, and
    building requires SDK 13.3 or later (from the Command Line Tools
    or Xcode 14.3 or later).
    By default the option uses new Accelerate for BLAS calls: to also
    use it for LAPACK use option --with-newAccelerate=lapack.  The
    later interfaces provide LAPACK 3.9.1 rather than 3.2.1: 3.9.1 is
    from 2021-04 and does not include the improved algorithms
    introduced in LAPACK 3.10.0 (including for BLAS calls).
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools44, an update of the Rtools43 toolchain.  It is
    based on GCC 13 and newer versions of MinGW-W64, binutils and
    libraries (targeting 64-bit Intel CPUs).  R-devel can no longer
    be built using Rtools43 without changes.
  * Rtools44 has experimental support for 64-bit ARM (aarch64) CPUs
    _via_ the LLVM 17 toolchain using lld, clang/flang-new and
    libc++.
  UTILITIES:
  * R CMD check notes when S4-style exports are used without
    declaring a strong dependence on package methods.
  * tools::checkRd() (used by R CMD check) detects more problems with
    \Sexpr-based dynamic content, including bad nesting of \Sexprs
    and invalid arguments.
  * tools::checkRd() now reports Rd titles and section names ending
    in a period; this is ignored by R CMD check unless environment
    variable _R_CHECK_RD_CHECKRD_MINLEVEL_ is set to -5 or smaller.
  * R CMD check now notes Rd files without an \alias, as long
    documented in 'Writing R Extensions' §1.3.1.  The check for a
    missing \description has been moved from tools::checkRd() to
    tools::checkRdContents().
  * R CMD check now visits inst/NEWS.Rd and OS-specific man
    subdirectories when checking Rd files.
  * tools::checkDocFiles() and tools::checkRdContents() now also
    check internal Rd files by default, but "specially" (ignoring
    missing documentation of arguments).
  * R CMD Rdiff gets option --useEx.
  * R CMD check now warns on non-portable uses of Fortran KIND such
    as INTEGER(KIND=4) and REAL(KIND=8).
    To see the failing lines set environment variable
    _R_CHECK_FORTRAN_KIND_DETAILS_ to a true value.
  * When checking Rd files, R CMD check now notes some of the "lost
    braces" that tools::checkRd() finds.  Typical problems are Rd
    macros missing the initial backslash (e.g., code{...}), in-text
    set notation (e.g., {1, 2}, where the braces need escaping), and
    \itemize lists with \describe-style entries of the form
    \item{label}{description}.
  * R CMD INSTALL (and hence check) will compile C++ code with
  - DR_NO_REMAP if environment variable _R_CXX_USE_NO_REMAP_ is set
    to a true value.  It is planned that this will in future become
    the default for compiling C++.
  * The new built-in Rd macro \dontdiff{} can be used to mark example
    code whose output should be ignored when comparing check output
    to reference output (tests/Examples/&lt;pkg&gt;-Ex.Rout.save).  The
    \dontdiff tag, like \donttest, is _not_ shown on the rendered
    help page, so provides a clean alternative to ##
    IGNORE_RDIFF_(BEGIN|END) comments.
  * R CMD build when there is no NAMESPACE, now uses the recommended
    exportPattern("^[^.]"), instead of exporting everything.
  * R CMD check now warns about non-ASCII characters in the NAMESPACE
    file (in addition to R files). Such packages are not portable and
    may fail to install on some platforms.
  C-LEVEL FACILITIES:
  * Headers R_ext/Applic.h and R-ext/Linpack.h used to include
    R_ext/BLAS.h although this was undocumented and unneeded by their
    documented entry points.  They no longer do so.
  * New function R_missing(), factored out from do_missing(), used to
    fix PR#18579.
  * SEXP type S4SXP has been renamed to OBJSXP to support
    experimenting with alternative object systems.  The S4SXP value
    can still be used in C code but is now deprecated.  Based on
    contributions from the R Consortium's Object-Oriented Programming
    Working Group.
  * New function pow1p(x,y) for accurate (1+x)^y.
  * mkCharLenCE was incorrectly documented to take a size_t length
    but was implemented with int (and character strings in R are
    limited to 2^31 - 1 bytes).
  DEPRECATED AND DEFUNCT:
  * data() no longer handles zipped data from long-defunct (since R
    2.13.0) --use-zip-data installations.
  * The legacy graphics devices pictex() and xfig() are now
    deprecated.  They do not support recent graphics enhancements and
    their font handling is rudimentary. The intention is to retain
    them for historical interest as long as they remain somewhat
    functional.
  * Support for encoding = "MacRoman" has been removed from the pdf()
    and postscript() devices - this was a legacy encoding supporting
    classic macOS up to 2001 and no longer has universal libiconv
    support.
  * is.R() is deprecated as no other S dialect is known to be in use
    (and this could only identify historical dialects, not future
    ones).
    Further information on calls can be obtained by setting the
    environment variable _R_DEPRECATED_IS_R_ to error which turns the
    deprecation warning into an error and so by default gives a
    traceback.  (This is done by R CMD check --as-cran.)
  * UseMethod() no longer forwards local variables assigned in the
    generic function into method call environments before evaluating
    the method body. This makes method calls behave more like
    standard function calls and makes method code easier to analyze
    correctly.
  * The twelve as.data.frame.&lt;class&gt;() methods which were deprecated
    only via _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ and in R CMD
    check --as-cran are formally deprecated now in favour of calling
    as.data.frame() or as.data.frame.vector().  The deprecation
    "check" now works also when as.data.frame() is S4 generic thanks
    to Ivan Krylov.
  * The default method for the directional comparison operators &lt;, &gt;,
    &lt;=, and &gt;= now signals an error when one of the operands is a
    language object, i.e. a symbol or a call.
  * For terms.formula(), deprecate abb and neg.out arguments
    _formally_ in addition to just documenting it.
  BUG FIXES:
  * The methods package is more robust to not being attached to the
    search path.  More work needs to be done.
  * pairwise.t.test() misbehaved when subgroups had 0 DF for
    variance, even with pool.sd = TRUE.  (PR#18594 by Jack Berry).
  * Probability distribution functions [dpq]&lt;distrib&gt;(x, *), but also
    bessel[IKJY](x, .) now consistently preserve attributes(x) when
    length(x) == 0, e.g., for a 2 x 0 matrix, thanks to Karolis
    Koncevičius' report PR#18509.
  * Group "Summary" computations such as sum(1:3, 4, na.rm = 5, NA,
    7, na.rm = LL) now give an error instead of either 17 or NN for
    LL true or false, as proposed by Ivan Krylov on the R-devel
    mailing list.  (This also means it is now an error to specify
    na.rm more than once.)
  * as.complex(x) now returns complex(real = x, imaginary = 0) for
    _all_ numerical and logical x, notably also for NA or
    NA_integer_.
  * Directories are now omitted by file.copy(, recursive = FALSE) and
    in file.append() (PR#17337).
  * gsub() and sub() are now more robust to integer overflow when
    reporting errors caused by too large input strings (PR#18346).
  * Top-level handlers are now more robust to attempts to remove a
    handler whilst handlers are running (PR#18508).
  * The handling of Alt+F4 in dialogs created on Windows using
    GraphApp has been fixed (PR#13870).
  * density() more consistently computes grid values for the
    FFT-based convolution, following Robert Schlicht's analysis and
    proposal in PR#18337, correcting density values typically by a
    factor of about 0.999.  Argument old.coords = TRUE provides back
    compatibility.
  * palette.colors() gains a name argument that defaults to FALSE
    controlling whether the vector of colours that is returned has
    names (where possible).  PR#18529.
  * tools::xgettext() no longer extracts the (non-translatable) class
    names from warningCondition and errorCondition calls.
  * S3method(&lt;gen&gt;, &lt;class&gt;, &lt;func&gt;) in the NAMESPACE file now works
    (again) when &lt;func&gt; is visible from the namespace, e.g.,
    imported, or in base.
  * getParseData(f) now also works for a function defined in the
    first of several &lt;pkg&gt;/R/*.R source files, thanks to Kirill
    Müller's report and Duncan Murdoch's patch in PR#16756.
  * Rd \Sexpr macros with nested #ifdef conditionals were not
    processed.
  * A non-blocking connection with non-default encoding (such as a
    socket) now correctly returns from readLines() after new data has
    arrived also when its EOF had been reached previously.  Thanks to
    Peter Meilstrup's report on R-devel and Ivan Krylov's report and
    patch proposal in PR#18555.
  * tools::checkRdContents() failed to detect empty argument
    descriptions when they spanned multiple lines, including those
    generated by prompt().  These cases are now noted by R CMD check.
  * Plain-text help no longer outputs spurious colons in the
    arguments list (for multi-line \item labels in the Rd source).
  * kappa() and rcond() work correctly in more cases; kappa(., norm =
    "2") now warns that it computes the 1-norm with (default) exact =
    FALSE; prompted by Mikael Jagan's quite comprehensive PR#18543.
  * Rd skeletons generated by prompt() or promptData() now use a
    dummy title (so R CMD build works).  tools::checkRdContents() has
    been updated to detect such template leftovers, including from
    promptPackage().
  * When S4 method dispatch fails because no method was found, the
    error message now includes the signature argument names; thanks
    to Michael Chirico's proposal on the R-devel list.
  * withAutoprint({ .. }) now preserves srcrefs previously lost,
    thanks to Andrew Simmons' report plus fix in PR#18572.
  * transform.data.frame() no longer adjusts names; in particular,
    untransformed variables are kept as-is, including those with
    syntactically invalid names (PR#17890).
  * The keep.source option for Rd \Sexpr blocks is no longer ignored.
  * The formula methods for t.test() and wilcox.test() now catch when
    paired is passed, addressing PR#14359; use Pair(x1, x2) ~ 1 for a
    paired test.
  * The level reported in the browser prompt was often too large. It
    now shows the number of browser contexts on the stack.
  * For cbind() and rbind(), the optional deparse.level argument is
    now properly passed to methods, thanks to Mikael Jagan's PR#18579
    and comments there.
  * Some error and warning messages for large ('long vector')
    matrix(v, nr, nc) and dim(m) &lt;- d are now correct about sizes,
    using long long formatting, fixing PR#18612 (and more) reported
    by Mikael Jagan.
  * readChar(useBytes = TRUE) now terminates strings even when the
    underlying connection uses extra spaces in the input buffer.
    This fixes problems with extra garbage seen with gzip
    connections, PR#18605.
  * Named capture in PCRE regular expressions now works also with
    more than 127 named groups (PR#18588).
  * Datetime functions are now robust against long jumps when dealing
    with internal time zone changes.  This avoids confusing warnings
    about an invalid time zone, previously triggered by turning
    warnings into errors or handling them via tryCatch (PR#17966,
    PR#17780).
  * Datetime functions now restore even an empty TZ environment
    variable after internal time zone changes (PR#17724).  This makes
    results of datetime functions with this (typically unintentional)
    setting more predictable.
  * drop.terms(*) now drops response as by default, keep.response =
    FALSE, fixing PR#18564 thanks to Mikael Jagan.
  * dummy.coef(.) now also works for lm()-models with character
    categorical predictor variables rather than factor ones, fixing
    PR#18635 reported by Jinsong Zhao.
  * formals(f) &lt;- formals(f) now also works for a function w/o
    arguments and atomic _constant_ body(f).
  * Correct as.function(&lt;invalid list&gt;, .)'s error message.
  * removeSource() is yet more thorough in finding and removing
    "srcref" and the other source references from parsed R language
    chunks, fixing PR#18638 thanks to Andrew Simmons.
  * dgeom() is more accurate now, notably when its result is very
    small, fixing PR#18642 thanks to the proposal of Morten Welinder,
    also improving other instances where C level binom_raw(x, n, ..)
    has x == 0 or x== n.
  * warning() with options(warn = 1) has improved output for
    multi-line messages.
  * axis.Date() and axis.POSIXct() now respect the par("lab") setting
    for the number of pretty() intervals.
  * Comparisons for language objects (which are based on deparsing)
    are now more careful about using accurate deparsed results
    (PR#18676).
  * Plain-text help (Rd2txt) now correctly preserves blank lines
    following single-line \dontrun code.
  * &lt;POSIXlt&gt;[*] no longer sets wrong "balanced" attribute, fixing
    PR#18681 thanks to Mikael Jagan.
  * str(&lt;classed-call&gt;) now deparses the call as expected, fixing
    PR#18684, reported by Dave Slager.
  * In Rd examples, code following the closing brace of a \dontrun,
    \dontshow or \donttest tag on the same line is no longer skipped
    when R CMD check runs the examples.
  * as.data.frame(matrix(*, ncol=0)) now gets valid names() and
    colnames(); reported by Davis Vaughan on the R-devel list.
  * Internal Mathlib function stirlerr(n) is now almost fully
    (52-bit) accurate for all n &gt;= ~5.9 and more accurate also in the
    range 1 -- 5.9.  This entails small ("after 12th decimal")
    changes in density functions, e.g., dgamma() in _some_ regions of
    their support.  The fix was partly prompted by Morten Welinder's
    PR#18640.
  * Numbers like 9876543.2 are now considered non-integer by Mathlib
    internal R_nonint(), amending original fix of PR#15734.
  * Rd comment lines no longer cause broken paragraphs in the
    rendered PDF and plain-text help. In code blocks, pure comment
    lines (starting with %) no longer produce an empty line.
  * xtabs(Freq ~ .) now consistently defaults to na.action = na.pass,
    using na.rm = FALSE (added as an argument) when summing over Freq
    (PR#17770).
  * tools::testInstalledPackage() is no longer silent about failures
    from running examples or tests and its return code no longer
    ignores failures from checking vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1718366400">- CHANGES IN R 4.4.1:
  C-LEVEL FACILITIES:
  * Functions R_atof and R_strtod declared in header R_ext/Utils.h
    are now documented in 'Writing R Extensions' and so formally part
    of the API.
  * The non-API entry points Rf_setSVector, Rf_StringFalse,
    Rf_StringTrue and Rf_isBlankString have been added to those
    reported by R CMD check.
  * The new function Rf_allocLang is now available. This provides an
    alternative to the idiom of calling Rf_allocList followed by
    SET_TYPEOF.
  UTILITIES:
  * R CMD check now reports as warnings what gfortran calls 'Fortran
    2018 deleted features', all of which have long been marked as
    'obsolescent' and some of which were deleted in Fortran 2008 or
    earlier.  Fortran compilers are no longer required to support
    these.
  BUG FIXES:
  * as.numeric(), scan(), type.convert() and other places which use
    the internal C function R_strtod now require a _non-empty_ digit
    sequence in a decimal or binary exponent.  This aligns with the
    C/POSIX standard for strtod and with ?NumericConstants.
  * as.data.frame(m, make.names=NA) now works correctly for a matrix
    m with NA's in row names.
  * The error message from &lt;POSIXlt&gt;[["hour"]] and similar now
    mentions *[[, "hour"]], as wished for in PR#17409 and proposed by
    Michael Chirico.
  * qbinom() and potentially qpois(), qnbinom(), no longer sometimes
    fail accurate inversion (of pbinom(), etc), thanks to Christopher
    Chang's report and patch in PR#18711.
  * The internal help server on Windows can again serve requests sent
    in quick succession, fixing a regression in R 4.4.0.
  * debugcall(&lt;S3Generic&gt;()) now also works when a corresponding
    S4-generic version is in the methods cache (PR#18143).
  * Package tools' toTitleCase(ch0) now returns character(0) when ch0
    is of zero length; fixing PR#18724, reported by David Hugh Jones.
  * R CMD check is no longer broken (without a check result and no
    explanation in 00check.log) for a package which declares an
    invalid VignetteBuilder in DESCRIPTION but has no vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1730376000">- CHANGES IN R 4.4.2:
  C-LEVEL FACILITIES:
  * The S-compatibility macros F77_COM and F77_COMDECL defined in
    header R_ext/RS.h are deprecated and will be removed shortly.  We
    could find no record of their use.
  BUG FIXES:
  * Mathlib function lgammacor(x) no longer warns about underflow to
    zero for large x.
  * Text widths and heights were incorrectly reported by the Quartz
    device if the drawing context didn't exist yet (typically when
    drawing off-screen to a window that is yet to appear, see
    PR#18591).
  * The Quartz device could segfault in cases where paths with spaces
    are used in the new glyph drawing API.  Thanks to Tomek
    Gieorgijewski (PR#18758).
  * On macOS in R CRAN builds, it is again possible to read
    little-endian UTF-16 text with a BOM from a connection using
    encoding="UTF-16".  Users building R from source should avoid
    using the system libiconv in macOS 14.1 and later.
  * methods' internal .requirePackage() now re-enables primitive
    method dispatch when needed; thanks to Ivan Krylov for
    demystifying CRAN package check failures on the R-devel mailing
    list.</changelog>
</package>
<package pkgid="877e4412d54e88a2134b2ffd57f9ae20a17895072fb6e8c1d917e0e85624248b8445d9faf8b52d7e05405d1bcaf29d56792ef04ab662e193a209f1f653549fe4" name="R-nlme-debuginfo" arch="i586">
  <version epoch="0" ver="3.1.166" rel="51.0.2.2.sr20241103"/>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1620302400">- To get in sync with d:l:R:autoCRAN the Matrix package's split
  in -devel was reversed.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339200">- improved spec file according to comments of dimstar in
  https://build.opensuse.org/request/show/892685</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339201">- CHANGES IN R 4.1.0:
  FUTURE DIRECTIONS:
  * It is planned that the 4.1.x series will be the last to support
    32-bit Windows, with production of binary packages for that
    series continuing until early 2023.
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Data set esoph in package datasets now provides the correct
    numbers of controls; previously it had the numbers of cases added
    to these.  (Reported by Alexander Fowler in PR#17964.)
  NEW FEATURES:
  * www.omegahat.net is no longer one of the repositories known by
    default to setRepositories().  (Nowadays it only provides source
    packages and is often unavailable.)
  * Function package_dependencies() (in package tools) can now use
    different dependency types for direct and recursive dependencies.
  * The checking of the size of tarball in R CMD check --as-cran
    &lt;pkg&gt; may be tweaked via the new environment variable
    _R_CHECK_CRAN_INCOMING_TARBALL_THRESHOLD_, as suggested in
    PR#17777 by Jan Gorecki.
  * Using c() to combine a factor with other factors now gives a
    factor, an ordered factor when combining ordered factors with
    identical levels.
  * apply() gains a simplify argument to allow disabling of
    simplification of results.
  * The format() method for class "ftable" gets a new option justify.
    (Suggested by Thomas Soeiro.)
  * New ...names() utility.  (Proposed by Neal Fultz in PR#17705.)
  * type.convert() now warns when its as.is argument is not
    specified, as the help file always said it _should_.  In that
    case, the default is changed to TRUE in line with its change in
    read.table() (related to stringsAsFactor) in R 4.0.0.
  * When printing list arrays, classed objects are now shown _via_
    their format() value if this is a short enough character string,
    or by giving the first elements of their class vector and their
    length.
  * capabilities() gets new entry "Rprof" which is TRUE when R has
    been configured with the equivalent of --enable-R-profiling (as
    it is by default).  (Related to Michael Orlitzky's report
    PR#17836.)
  * str(xS4) now also shows extraneous attributes of an S4 object
    xS4.
  * Rudimentary support for vi-style tags in rtags() and R CMD rtags
    has been added.  (Based on a patch from Neal Fultz in PR#17214.)
  * checkRdContents() is now exported from tools; it and also
    checkDocFiles() have a new option chkInternal allowing to check
    Rd files marked with keyword "internal" as well.  The latter can
    be activated for R CMD check via environment variable
    _R_CHECK_RD_INTERNAL_TOO_.
  * New functions numToBits() and numToInts() extend the raw
    conversion utilities to (double precision) numeric.
  * Functions URLencode() and URLdecode() in package utils now work
    on vectors of URIs.  (Based on patch from Bob Rudis submitted
    with PR#17873.)
  * path.expand() can expand ~user on most Unix-alikes even when
    readline is not in use.  It tries harder to expand ~, for example
    should environment variable HOME be unset.
  * For HTML help (both dynamic and static), Rd file links to help
    pages in external packages are now treated as references to
    topics rather than file names, and fall back to a file link only
    if the topic is not found in the target package. The earlier rule
    which prioritized file names over topics can be restored by
    setting the environment variable _R_HELP_LINKS_TO_TOPICS_ to a
    false value.
  * c() now removes NULL arguments before dispatching to methods,
    thus simplifying the implementation of c() methods, _but_ for
    back compatibility keeps NULL when it is the first argument.
    (From a report and patch proposal by Lionel Henry in PR#17900.)
  * Vectorize()'s result function's environment no longer keeps
    unneeded objects.
  * Function ...elt() now propagates visibility consistently with
    ..n.  (Thanks to Lionel Henry's PR#17905.)
  * capture.output() no longer uses non-standard evaluation to
    evaluate its arguments.  This makes evaluation of functions like
    parent.frame() more consistent.  (Thanks to Lionel Henry's
    PR#17907.)
  * packBits(bits, type="double") now works as inverse of
    numToBits().  (Thanks to Bill Dunlap's proposal in PR#17914.)
  * curlGetHeaders() has two new arguments, timeout to specify the
    timeout for that call (overriding getOption("timeout")) and TLS
    to specify the minimum TLS protocol version to be used for
    https:// URIs (_inter alia_ providing a means to check for sites
    using deprecated TLS versions 1.0 and 1.1).
  * For nls(), an optional constant scaleOffset may be added to the
    denominator of the relative offset convergence test for cases
    where the fit of a model is expected to be exact, thanks to a
    proposal by John Nash.  nls(*, trace=TRUE) now also shows the
    convergence criterion.
  * Numeric differentiation _via_ numericDeriv() gets new optional
    arguments eps and central, the latter for taking central divided
    differences.  The latter can be activated for nls() via
    nls.control(nDcentral = TRUE).
  * nls() now passes the trace and control arguments to getInitial(),
    notably for all self-starting models, so these can also be fit in
    zero-noise situations via a scaleOffset.  For this reason, the
    initial function of a selfStart model must now have ... in its
    argument list.
  * bquote(splice = TRUE) can now splice expression vectors with
    attributes: this makes it possible to splice the result of
    parse(keep.source = TRUE).  (Report and patch provided by Lionel
    Henry in PR#17869.)
  * textConnection() gets an optional name argument.
  * get(), exists(), and get0() now signal an error if the first
    argument has length greater than 1.  Previously additional
    elements were silently ignored.  (Suggested by Antoine Fabri on
    R-devel.)
  * R now provides a shorthand notation for creating functions, e.g.
    \(x) x + 1 is parsed as function(x) x + 1.
  * R now provides a simple native forward pipe syntax |&gt;.  The
    simple form of the forward pipe inserts the left-hand side as the
    first argument in the right-hand side call.  The pipe
    implementation as a syntax transformation was motivated by
    suggestions from Jim Hester and Lionel Henry.
  * all.equal(f, g) for functions now by default also compares their
    environment(.)s, notably via new all.equal method for class
    function.  Comparison of nls() fits, e.g., may now need
    all.equal(m1, m2, check.environment = FALSE).
  * .libPaths() gets a new option include.site, allowing to _not_
    include the site library.  (Thanks to Dario Strbenac's suggestion
    and Gabe Becker's PR#18016.)
  * Lithuanian translations are now available.  (Thanks to Rimantas
    Zakauskas.)
  * names() now works for DOTSXP objects.  On the other hand, in
    R-lang, the R language manual, we now warn against relying on the
    structure or even existence of such dot-dot-dot objects.
  * all.equal() no longer gives an error on DOTSXP objects.
  * capabilities("cairo") now applies only to the file-based devices
    as it is now possible (if very unusual) to build R with Cairo
    support for those but not for X11().
  * There is optional support for tracing the progress of
    loadNamespace() - see its help.
  * (Not Windows.)  l10n_info() reports an additional element, the
    name of the encoding as reported by the OS (which may differ from
    the encoding part (if any) of the result from
    Sys.getlocale("LC_CTYPE").
  * New function gregexec() which generalizes regexec() to find _all_
    disjoint matches and well as all substrings corresponding to
    parenthesized subexpressions of the given regular expression.
    (Contributed by Brodie Gaslam.)
  * New function charClass() in package utils to query the
    wide-character classification functions in use (such as
    iswprint).
  * The names of quantile()'s result no longer depend on the global
    getOption("digits"), but quantile() gets a new optional argument
    digits = 7 instead.
  * grep(), sub(), regexp and variants work considerably faster for
    long factors with few levels.  (Thanks to Michael Chirico's
    PR#18063.)
  * Provide grouping of x11() graphics windows within a window
    manager such as Gnome or Unity; thanks to a patch by Ivan Krylov
    posted to R-devel.
  * The split() method for class data.frame now allows the f argument
    to be specified as a formula.
  * sprintf now warns on arguments unused by the format string.
  * New palettes "Rocket" and "Mako" for hcl.colors() (approximating
    palettes of the same name from the 'viridisLite' package).
    Contributed by Achim Zeileis.
  * The base environment and its namespace are now locked (so one can
    no longer add bindings to these or remove from these).
  * Rterm handling of multi-byte characters has been improved,
    allowing use of such characters when supported by the current
    locale.
  * Rterm now accepts ALT+ +xxxxxxxx sequences to enter Unicode
    characters as hex digits.
  * Environment variable LC_ALL on Windows now takes precedence over
    LC_CTYPE and variables for other supported categories, matching
    the POSIX behaviour.
  * duplicated() and anyDuplicated() are now optimized for integer
    and real vectors that are known to be sorted via the ALTREP
    framework. Contributed by Gabriel Becker via PR#17993.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 14
    and so packages that provide graphics devices should be
    reinstalled.
  * Graphics devices should now specify deviceVersion to indicate
    what version of the graphics engine they support.
  * Graphics devices can now specify deviceClip.  If TRUE, the
    graphics engine will never perform any clipping of output itself.
    The clipping that the graphics engine does perform (for both
    canClip = TRUE and canClip = FALSE) has been improved to avoid
    producing unnecessary artifacts in clipped output.
  * The grid package now allows gpar(fill) to be a linearGradient(),
    a radialGradient(), or a pattern().  The viewport(clip) can now
    also be a grob, which defines a clipping path, and there is a new
    viewport(mask) that can also be a grob, which defines a mask.
    These new features are only supported so far on the Cairo-based
    graphics devices and on the pdf() device.
  * (Not Windows.)  A warning is given when a Cairo-based type is
    specified for a png(), jpeg(), tiff() or bmp() device but Cairo
    is unsupported (so type = "Xlib" is tried instead).
  * grSoftVersion() now reports the versions of FreeType and
    FontConfig if they are used directly (not _via_ Pango), as is
    most commonly done on macOS.
  C-LEVEL FACILITIES:
  * The _standalone_ libRmath math library and R's C API now provide
    log1pexp() again as documented, and gain log1mexp().
  INSTALLATION on a UNIX-ALIKE:
  * configure checks for a program pkgconf if program pkg-config is
    not found.  These are now only looked for on the path (like
    almost all other programs) so if needed specify a full path to
    the command in PKG_CONFIG, for example in file config.site.
  * C99 function iswblank is required - it was last seen missing ca
    2003 so the workaround has been removed.
  * There are new configure options --with-internal-iswxxxxx,
  - -with-internal-towlower and --with-internal-wcwidth which allows
    the system functions for wide-character classification,
    case-switching and width (wcwidth and wcswidth) to be replaced by
    internal ones.  The first has long been used on macOS, AIX (and
    Windows) but this enables it to be unselected there and selected
    for other platforms (it is the new default on Solaris).  The
    second is new in this version of R and is selected by default on
    macOS and Solaris.  The third has long been the default and
    remains so as it contains customizations for East Asian
    languages.
    System versions of these functions are often minimally
    implemented (sometimes only for ASCII characters) and may not
    cover the full range of Unicode points: for example Solaris (and
    Windows) only cover the Basic Multilingual Plane.
  * Cairo installations without X11 are more likely to be detected by
    configure, when the file-based Cairo graphics devices will be
    available but not X11(type = "cairo").
  * There is a new configure option --with-static-cairo which is the
    default on macOS.  This should be used when only static cairo
    (and where relevant, Pango) libraries are available.
  * Cairo-based graphics devices on platforms without Pango but with
    FreeType/FontConfig will make use of the latter for font
    selection.
  LINK-TIME OPTIMIZATION on a UNIX-ALIKE:
  * Configuring with flag --enable-lto=R now also uses LTO when
    installing the recommended packages.
  * R CMD INSTALL and R CMD SHLIB have a new flag --use-LTO to use
    LTO when compiling code, for use with R configured with
  - -enable-lto=R.  For R configured with --enable-lto, they have
    the new flag --no-use-LTO.
    Packages can opt in or out of LTO compilation _via_ a UseLTO
    field in the DESCRIPTION file.  (As usual this can be overridden
    by the command-line flags.)
  BUILDING R on Windows:
  * for GCC &gt;= 8, FC_LEN_T is defined in config.h and hence character
    lengths are passed from C to Fortran in _inter alia_ BLAS and
    LAPACK calls.
  * There is a new text file src/gnuwin32/README.compilation, which
    outlines how C/Fortran code compilation is organized and
    documents new features:
  * R can be built with Link-Time Optimization with a suitable
    compiler - doing so with GCC 9.2 showed several
    inconsistencies which have been corrected.
  * There is support for cross-compiling the C and Fortran code
    in R and standard packages on suitable (Linux) platforms.
    This is mainly intended to allow developers to test later
    versions of compilers - for example using GCC 9.2 or 10.x has
    detected issues that GCC 8.3 in Rtools40 does not.
  * There is experimental support for cross-building R packages
    with C, C++ and/or Fortran code.
  * The R installer can now be optionally built to support a single
    architecture (only 64-bit or only 32-bit).
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++14 where
    available (which it is on all currently checked platforms): if
    not (as before) C++11 is used if available otherwise C++ is not
    supported.
    Packages which specify C++11 will still be installed using C++11.
    C++14 compilers may give deprecation warnings, most often for
    std::random_shuffle (deprecated in C++14 and removed in C++17).
    Either specify C++11 (see 'Writing R Extensions') or modernize
    the code and if needed specify C++14.  The latter has been
    supported since R 3.4.0 so the package's DESCRIPTION would need
    to include something like
    Depends: R (&gt;= 3.4)
  PACKAGE INSTALLATION on Windows:
  * R CMD INSTALL and R CMD SHLIB make use of their flag --use-LTO
    when the LTO_OPT make macro is set in file etc/${R_ARCH}/Makeconf
    or in a personal/site Makevars file.  (For details see 'Writing R
    Extensions' SS4.5.)
    This provides a valuable check on code consistency.  It does work
    with GCC 8.3 as in Rtools40, but that does not detect everything
    the CRAN checks with current GCC do.
  PACKAGE INSTALLATION on macOS:
  * The default personal library directory on builds with
  - -enable-aqua (including CRAN builds) now differs by CPU type,
    one of
    ~/Library/R/x86_64/x.y/library
    ~/Library/R/arm64/x.y/library
    This uses the CPU type R (and hence the packages) were built for,
    so when a x86_64 build of R is run under Rosetta emulation on an
    arm64 Mac, the first is used.
  UTILITIES:
  * R CMD check can now scan package functions for bogus return
    statements, which were possibly intended as return() calls (wish
    of PR#17180, patch by Sebastian Meyer). This check can be
    activated via the new environment variable
    _R_CHECK_BOGUS_RETURN_, true for --as-cran.
  * R CMD build omits tarballs and binaries of previous builds from
    the top-level package directory.  (PR#17828, patch by Sebastian
    Meyer.)
  * R CMD check now runs sanity checks on the use of LazyData, for
    example that a data directory is present and that
    LazyDataCompression is not specified without LazyData and has a
    documented value.  For packages with large LazyData databases
    without specifying LazyDataCompression, there is a reference to
    the code given in 'Writing R Extensions' SS1.1.6 to test the
    choice of compression (as in all the CRAN packages tested a
    non-default method was preferred).
  * R CMD build removes LazyData and LazyDataCompression fields from
    the DESCRIPTION file of packages without a data directory.
  ENCODING-RELATED CHANGES:
  * The parser now treats \Unnnnnnnn escapes larger than the upper
    limit for Unicode points (\U10FFFF) as an error as they cannot be
    represented by valid UTF-8.
    Where such escapes are used for outputting non-printable
    (including unassigned) characters, 6 hex digits are used (rather
    than 8 with leading zeros).  For clarity, braces are used, for
    example \U{0effff}.
  * The parser now looks for non-ASCII spaces on Solaris (as
    previously on most other OSes).
  * There are warnings (including from the parser) on the use of
    unpaired surrogate Unicode points such as \uD834.  (These cannot
    be converted to valid UTF-8.)
  * Functions nchar(), tolower(), toupper() and chartr() and those
    using regular expressions have more support for inputs with a
    marked Latin-1 encoding.
  * The character-classification functions used (by default) to
    replace the system iswxxxxx functions on Windows, macOS and AIX
    have been updated to Unicode 13.0.0.
    The character-width tables have been updated to include new
    assignments in Unicode 13.0.0.
  * The code for evaluating default (extended) regular expressions
    now uses the same character-classification functions as the rest
    of R (previously they differed on Windows, macOS and AIX).
  * There is a build-time option to replace the system's
    wide-character wctrans C function by tables shipped with R: use
    configure option --with-internal-towlower or (on Windows)
  - DUSE_RI18N_CASE in CFLAGS when building R.  This may be needed
    to allow tolower() and toupper() to work with Unicode characters
    beyond the Basic Multilingual Plane where not supported by system
    functions (e.g. on Solaris where it is the new default).
  * R is more careful when truncating UTF-8 and other multi-byte
    strings that are too long to be printed, passed to the system or
    libraries or placed into an internal buffer.  Truncation will no
    longer produce incomplete multibyte characters.
  DEPRECATED AND DEFUNCT:
  * Function plclust() from the package stats and
    package.dependencies(), pkgDepends(), getDepList(),
    installFoundDepends(), and vignetteDepends() from package tools
    are defunct.
  * Defunct functions checkNEWS() and readNEWS() from package tools
    and CRAN.packages() from utils have been removed.
  * R CMD config CXXCPP is defunct (it was deprecated in R 3.6.2).
  * parallel::detectCores() drops support for Irix (retired in 2013).
  * The LINPACK argument to chol.default(), chol2inv(),
    solve.default() and svd() has been defunct since R 3.1.0.  It was
    silently ignored up to R 4.0.3 but now gives an error.
  * Subsetting/indexing, such as ddd[*] or ddd$x on a DOTSXP
    (dot-dot-dot) object ddd has been disabled; it worked by accident
    only and was undocumented.
  BUG FIXES:
  * Many more C-level allocations (mainly by malloc and strdup) are
    checked for success with suitable alternative actions.
  * Bug fix for replayPlot(); this was turning off graphics engine
    display list recording if a recorded plot was replayed in the
    same session.  The impact of the bug became visible if resize the
    device after replay OR if attempted another savePlot() after
    replay (empty display list means empty screen on resize or empty
    saved plot).
  * R CMD check etc now warn when a package exports non-existing S4
    classes or methods, also in case of no "methods" presence.
    (Reported by Alex Bertram; reproducible example and patch by
    Sebastian Meyer in PR#16662.)
  * boxplot() now also accepts calls for labels such as ylab, the
    same as plot().  (Reported by Marius Hofert.)
  * The help page for xtabs() now correctly states that addNA is
    setting na.action = na.pass among others.  (Reported as PR#17770
    by Thomas Soeiro.)
  * The R CMD check &lt;pkg&gt; gives a longer and more comprehensible
    message when DESCRIPTION misses dependencies, e.g., in Imports:.
    (Thanks to the contributors of PR#17179.)
  * update.default() now calls the generic update() on the formula to
    work correctly for models with extended formulas.  (As reported
    and suggested by Neal Fultz in PR#17865.)
  * The horizontal position of leaves in a dendrogram is now correct
    also with center = FALSE.  (PR#14938, patch from Sebastian
    Meyer.)
  * all.equal.POSIXt() no longer warns about and subsequently ignores
    inconsistent "tzone" attributes, but describes the difference in
    its return value (PR#17277).  This check can be disabled _via_
    the new argument check.tzone = FALSE as suggested by Sebastian
    Meyer.
  * as.POSIXct() now populates the "tzone" attribute from its tz
    argument when x is a logical vector consisting entirely of NA
    values.
  * x[[2^31]] &lt;- v now works.  (Thanks to the report and patch by
    Suharto Anggono in PR#17330.)
  * In log-scale graphics, axis() ticks and label positions are now
    computed more carefully and symmetrically in their range,
    typically providing _more_ ticks, fulfilling wishes in PR#17936.
    The change really corresponds to an improved axisTicks() (package
    grDevices), potentially influencing grid and lattice, for
    example.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now correct to at
    least five digits where it was catastrophically wrong,
    previously.
  * sum(df) and similar "Summary"- and "Math"-group member functions
    now work for data frames df with logical columns, notably also of
    zero rows.  (Reported to R-devel by Martin "b706".)
  * unsplit() had trouble with tibbles due to unsound use of rep(NA,
    len)-indexing, which should use NA_integer_ (Reported to R-devel
    by Mario Annau.)
  * pnorm(x, log.p = TRUE) underflows to -Inf slightly later.
  * show(&lt;hidden S4 generic&gt;) prints better and without quotes for
    non-hidden S4 generics.
  * read.table() and relatives treated an "NA" column name as missing
    when check.names = FALSE PR#18007.
  * Parsing strings containing UTF-16 surrogate pairs such as
    "\uD834\uDD1E" works better on some (uncommon) platforms.
    sprintf("%X", utf8ToInt("\uD834\uDD1E")) should now give "1D11E"
    on all platforms.
  * identical(x,y) is no longer true for differing DOTSXP objects,
    fixing PR#18032.
  * str() now works correctly for DOTSXP and related exotics, even
    when these are doomed.
    Additionally, it no longer fails for lists with a class and
    "irregular" method definitions such that e.g. lapply(*) will
    necessarily fail, as currently for different igraph objects.
  * Too long lines in environment files (e.g. Renviron) no longer
    crash R. This limit has been increased to 100,000 bytes.
    (PR#18001.)
  * There is a further workaround for FreeType giving incorrect
    italic font faces with cairo-based graphics devices on macOS.
  * add_datalist(*, force = TRUE) (from package tools) now actually
    updates an existing data/datalist file for new content.  (Thanks
    to a report and patch by Sebastian Meyer in PR#18048.)
  * cut.Date() and cut.POSIXt() could produce an empty last interval
    for breaks = "months" or breaks = "years".  (Reported as PR#18053
    by Christopher Carbone.)
  * Detection of the encoding of 'regular' macOS locales such as
    en_US (which is UTF-8) had been broken by a macOS change:
    fortunately these are now rarely used with en_US.UTF-8 being
    preferred.
  * sub() and gsub(pattern, repl, x, *) now keep attributes of x such
    as names() also when pattern is NA (PR#18079).
  * Time differences ("difftime" objects) get a replacement and a
    rep() method to keep "units" consistent.  (Thanks to a report and
    patch by Nicolas Bennett in PR#18066.)
  * The \RdOpts macro, setting defaults for \Sexpr options in an Rd
    file, had been ineffective since R 2.12.0: it now works again.
    (Thanks to a report and patch by Sebastian Meyer in PR#18073.)
  * mclapply and pvec no longer accidentally terminate parallel
    processes started before by mcparallel or related calls in
    package parallel (PR#18078).
  * grep and other functions for evaluating (extended) regular
    expressions handle in Unicode also strings not explicitly flagged
    UTF-8, but flagged native when running in UTF-8 locale.
  * Fixed a crash in fifo implementation on Windows (PR#18031).
  * Binary mode in fifo on Windows is now properly detected from
    argument open (PR#15600, PR#18031).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1622808000">- The line %{__install} -m 755 -d %{_infodir}
  no longer works in TW or Factory.
  But without that line it works everywhere. So this instruction
  was commented out of the spec file.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1628596800">- CHANGES IN R 4.1.1:
  NEW FEATURES:
  * require(pkg, quietly = TRUE) is quieter and in particular does
    not warn if the package is not found.
  DEPRECATED AND DEFUNCT:
  * Use of ftp:// URIs should be regarded as deprecated, with
    on-going support confined to method = "libcurl" and not routinely
    tested.  (Nowadays no major browser supports them.)
  * The non-default method = "internal" is deprecated for http:// and
    ftp:// URIs for both download.file and url.
  * On Windows, method = "wininet" is deprecated for http://,
    https:// and ftp:// URIs for both download.file and url.  (A
    warning is only given for ftp://.)
    For ftp:// URIs the default method is now "libcurl" if available
    (which it is on CRAN builds).
    method = "wininet" remains the default for http:// and https://
    URIs but if libcurl is available, using method = "libcurl" is
    preferred.
  INSTALLATION:
  * make check now works also without a LaTeX installation.  (Thanks
    to Sebastian Meyer's PR#18103.)
  BUG FIXES:
  * make check-devel works again in an R build configured with
  - -without-recommended-packages.
  * qnbinom(p, size, mu) for large size/mu is correct now in a range
    of cases (PR#18095); similarly for the (size, prob)
    parametrization of the negative binomial.  Also qpois() and
    qbinom() are better and or faster for extreme cases.  The
    underlying C code has been modularized and is common to all four
    cases of discrete distributions.
  * gap.axis is now part of the axis() arguments which are passed
    from bxp(), and hence boxplot().  (Thanks to Martin Smith's
    report and suggestions in PR#18109.)
  * .First and .Last can again be set from the site profile.
  * seq.int(from, to, *) and seq.default(..) now work better in large
    range cases where from-to is infinite where the two boundaries
    are finite.
  * all.equal(x,y) now returns TRUE correctly also when several
    entries of abs(x) and abs(y) are close to .Machine$double.xmax,
    the largest finite numeric.
  * model.frame() now clears the object bit when removing the class
    attribute of a value via na.action (PR#18100).
  * charClass() now works with multi-character strings on Windows
    (PR#18104, fixed by Bill Dunlap).
  * encodeString() on Solaris now works again in Latin-1 encoding on
    characters represented differently in UTF-8.  Support for
    surrogate pairs on Solaris has been improved.
  * file.show() on Windows now works with non-ASCII path names
    representable in the current native encoding (PR#18132).
  * Embedded R on Windows can now find R home directory via the
    registry even when installed only for the current user
    (PR#18135).
  * pretty(x) with finite x now returns finite values also in the
    case where the extreme x values are close in size to the maximal
    representable number .Machine$double.xmax.
    Also, it's been tweaked for very small ranges and when a boundary
    is close (or equal) to zero; e.g., pretty(c(0,1e-317)) no longer
    has negative numbers, currently still warning about a very small
    range, and pretty(2^-(1024 - 2^-1/(c(24,10)))) is more accurate.
  * The error message for not finding vignette files when weaving has
    correct file sizes now. (Thanks to Sebastian Meyer's PR#18154.)
  * dnbinom(20, &lt;large&gt;, 1) now correctly gives 0, and similar cases
    are more accurate with underflow precaution.  (Reported by Francisco Vera Alcivar in PR#18072.)</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635163200">- repaired https://bugzilla.suse.com/show_bug.cgi?id=1191380
  (rpmacros now go to rpmmacrodir)
- minor clean-ups in spec file</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635768000">- CHANGES IN R 4.1.2:
  C-LEVEL FACILITIES:
  * The workaround in headers R.h and Rmath.h (using namespace std;)
    for the Oracle Developer Studio compiler is no longer needed now
    C++11 is required so has been removed.  A couple more usages of
    log() (which should have been std::log()) with an int argument
    are reported on Solaris.
  * The undocumented limit of 4095 bytes on messages from the
    S-compatibility macros PROBLEM and MESSAGE is now documented and
    longer messages will be silently truncated rather than
    potentially causing segfaults.
  * If the R_NO_SEGV_HANDLER environment variable is non-empty, the
    signal handler for SEGV/ILL/BUS signals (which offers recovery
    user interface) is not set. This allows more reliable debugging
    of crashes that involve the console.
  DEPRECATED AND DEFUNCT:
  * The legacy S-compatibility macros PROBLEM, MESSAGE, ERROR, WARN,
    WARNING, RECOVER, ... are deprecated and will be hidden in R
    4.2.0. R's native interface of Rf_error and Rf_warning has long
    been preferred.
  BUG FIXES:
  * .mapply(F, dots, .) no longer segfaults when dots is not a list
    and uses match.fun(F) as always documented; reported by Andrew
    Simmons in PR#18164.
  * hist(&lt;Date&gt;, ...) and hist(&lt;POSIXt&gt;, ...)  no longer pass
    arguments for rect() (such as col and density) to axis().
    (Thanks to Sebastian Meyer's PR#18171.)
  * \Sexpr{ch} now preserves Encoding(ch). (Thanks to report and
    patch by Jeroen Ooms in PR#18152.)
  * Setting the RNG to "Marsaglia-Multicarry" e.g., by RNGkind(), now
    warns in more places, thanks to Andr'e Gillibert's report and
    patch in PR#18168.
  * gray(numeric(), alpha=1/2) no longer segfaults, fixing PR#18183,
    reported by Till Krenz.
  * Fixed dnbinom(x, size=&lt;very_small&gt;, .., log=TRUE) regression,
    reported by Martin Morgan.
  * as.Date.POSIXlt(x) now keeps names(x), thanks to Davis Vaughan's
    report and patch in PR#18188.
  * model.response() now strips an "AsIs" class typically, thanks to
    Duncan Murdoch's report and other discussants in PR#18190.
  * try() is considerably faster in case of an error and long call,
    as e.g., from some do.call().  Thanks to Alexander Kaever's
    suggestion posted to R-devel.
  * qqline(y = &lt;object&gt;) such as y=I(.), now works, see also
    PR#18190.
  * Non-integer mgp par() settings are now handled correctly in
    axis() and mtext(), thanks to Mikael Jagan and Duncan Murdoch's
    report and suggestion in PR#18194.
  * formatC(x) returns length zero character() now, rather than ""
    when x is of length zero, as documented, thanks to Davis
    Vaughan's post to R-devel.
  * removeSource(fn) now retains (other) attributes(fn).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1647000000">- CHANGES IN R 4.1.3:
  NEW FEATURES:
  * The default version of Bioconductor has been changed to 3.14.
    (This is used by setRepositories and the menus in GUIs.)
  UTILITIES:
  * R CMD check --as-cran has a workaround for a bug in versions of
    file up to at least 5.41 which mis-identify DBF files last
    changed in 2022 as executables.
  C-LEVEL FACILITIES:
  * The legacy S-compatibility macros SINGLE_* in R_ext/Constants.h
    (included by R.h) are deprecated and will be removed in R 4.2.0.
  BUG FIXES:
  * Initialization of self-starting nls() models with initialization
    functions following the pre-R-4.1.0 API (without the ...
    argument) works again for now, with a deprecation warning.
  * Fixed quoting of ~autodetect~ in Java setting defaults to avoid
    inadvertent user lookup due to leading ~, reported in PR#18231 by
    Harold Gutch.
  * substr(., start, stop) &lt;- v now treats _negative_ stop values
    correctly.  Reported with a patch in PR#18228 by Brodie Gaslam.
  * Subscripting an array x without dimnames by a
    length(dim(x))-column character matrix gave "random" non-sense,
    now an error; reported in PR#18244 by Mikael Jagan.
  * ...names() now matches names(list(...)) closely, fixing PR#18247.
  * all.equal(*, scale = s) now works as intended when length(s) &gt; 1,
    partly thanks to Michael Chirico's PR#18272.
  * print(x) for long vectors x now also works for named atomic
    vectors or lists and prints the correct number when reaching the
    getOption("max.print") limit; partly thanks to a report and
    proposal by Hugh Parsonage to the R-devel list.
  * all.equal(&lt;selfStart&gt;, *) no longer signals a deprecation
    warning.
  * reformulate(*, response=r) gives a helpful error message now when
    length(r) &gt; 1, thanks to Bill Dunlap's PR#18281.
  * Modifying globalCallingHandlers inside withCallingHandlers() now
    works or fails correctly, thanks to Henrik Bengtsson's PR#18257.
  * hist(&lt;Date&gt;, breaks = "days") and hist(&lt;POSIXt&gt;, breaks = "secs")
    no longer fail for inputs of length 1.
  * qbeta(.001, .9, .009) and similar cases now converge correctly
    thanks to Ben Bolker's report in PR#17746.
  * window(x, start, end) no longer wrongly signals "'start' cannot
    be after 'end'", fixing PR#17527 and PR#18291.
  * data() now checks that its (rarely used) list argument is a
    character vector - a couple of packages passed other types and
    gave incorrect results.
  * which() now checks its arr.ind argument is TRUE rather coercing
    to logical and taking the first element - which gave incorrect
    results in package code.
  * model.weights() and model.offset() more carefully extract their
    model components, thanks to Ben Bolker and Tim Taylor's R-devel
    post.
  * list.files(recursive = TRUE) now shows all broken symlinks
    (previously, some of them may have been omitted, PR#18296).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1650628800">- CHANGES IN R 4.2.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * The formula method of aggregate() now matches the generic in
    naming its first argument x (resolving PR#18299 by Thomas
    Soeiro).
    This means that calling aggregate() with a formula as a named
    first argument requires name formula in earlier versions of R and
    name x now, so portable code should not name the argument (code
    in many packages did).
  * Calling &amp;&amp; or || with either argument of length greater than one
    now gives a warning (which it is intended will become an error).
  * Calling if() or while() with a condition of length greater than
    one gives an error rather than a warning.  Consequently,
    environment variable _R_CHECK_LENGTH_1_CONDITION_ no longer has
    any effect.
  * Windows users should consult the WINDOWS section below for some
    profound changes including
  * Support for 32-bit builds has been dropped.
  * UTF-8 locales are used where available.
  * The default locations for the R installation and personal
    library folder have been changed.
    Thanks to Tomas Kalibera for months of work on the Windows port
    for this release.
  NEW FEATURES:
  * matrix(x, n, m) now warns in more cases where length(x) differs
    from n * m, as suggested by Abby Spurdle and Wolfgang Huber in
    Feb 2021 on the R-devel mailing list.
    This warning can be turned into an error by setting environment
    variable _R_CHECK_MATRIX_DATA_ to TRUE: R CMD check --as-cran
    does so unless it is already set.
  * Function file_test() in package utils gains tests for symlinks,
    readability and writability.
  * capabilities("libxml") is now false.
    The description of capabilities("http/ftp") now reflects that it
    refers to the default method, no longer the internal one.
  * simplify2array() gains an except argument for controlling the
    exceptions used by sapply().
  * Environment variables R_LIBS_USER and R_LIBS_SITE are both now
    set to the R system default if unset or empty, and can be set to
    NULL to indicate an empty list of user or site library
    directories.
  * The warning for axis()(-like) calls in cases of relatively small
    ranges (typically in log-scale situations) is slightly improved
    _and_ suppressed from explicit calls to .axisPars() as has always
    been the intention.
  * The contrasts setter function `contrasts&lt;-` gains an explicit
    default how.many = NULL rather than just using missing(how.many).
  * grid.pretty() gains a new optional argument n = 5.
  * There is a new function .pretty() with option bounds as a
    technical-utility version of pretty().  It and pretty() gain a
    new argument f.min with a better than back-compatible default.
  * Function grDevices::axisTicks() and related functions such as
    graphics::axis() work better, notably for the log scale; partly
    because of the pretty() improvements, but also because care is
    taken e.g., when ylim is finite but diff(ylim) is infinite.
  * nclass.FD() gains a digits option.
  * The R Mathlib internal C function bd0() (called indirectly from a
    dozen probability density and distribution functions such as
    dpois(), dbinom(), dgamma(), pgamma() _etc_) has been
    complemented by a more sophisticated and (mostly) more accurate C
    function ebd0(), currently called only by internal dpois_raw()
    improving accuracy for R level dpois() and potentially others
    calling it such as dnbinom(), dgamma() or pgamma().  (Thanks to
    Morten Welinder's PR#15628.)
  * write.ftable() gains sep = " " argument as suggested by Thomas
    Soeiro.
  * The names of the locale categories supported by R's
    Sys.getlocale() and Sys.setlocale() are now provided by variable
    .LC.categories in the base namespace.
  * The Date and POSIXt methods for hist() and the histogram method
    for plot() now also use the new default col = "lightgray" in
    consistency with the corresponding change to hist()'s default for
    R 4.0.0.
  * hist.default() gains new fuzz argument, and the histogram plot
    method no longer uses fractional axis ticks when displaying
    counts ("Frequency").
  * mapply() and hence Map() now also obey the "max-or-0-if-any"
    recycling rule, such that, e.g., Map(`+`, 1:3, 1[0]) is valid
    now.
  * as.character(&lt;obj&gt;) for "hexmode" or "octmode" objects now
    fulfils the important basic rule as.character(x)[j] ===
    as.character(x[j]).
  * The set utility functions, notably intersect() have been tweaked
    to be more consistent and symmetric in their two set arguments,
    also preserving a common mode.
  * substr(ch, start,end) &lt;- new now e.g., preserves names(ch); ditto
    for substring(), thanks to a patch from Brodie Gaslam.
  * plot(&lt;lm&gt;) gains a extend.ylim.f argument, in partial response to
    PR#15285; further PR#17784 is fixed thanks to several
    contributors and a patch by Elin Waring.  The Cook's dist
    contours get customizable via cook.col and cook.lty with a
    different default color and their legend is nicer by default and
    customizable via cook.legendChanges.
  * Attempting to subset an object that is not subsettable now
    signals an error of class notSubsettableError. The
    non-subsettable object is contained in the object field of the
    error condition.
  * Subscript-out-of-bounds errors are now signaled as errors of
    class subscriptOutOfBoundsError.
  * Stack-overflow errors are now signaled as errors inheriting from
    class stackOverflowError. See ?stackOverflowError for more
    details.
  * New partly experimental Sys.setLanguage() utility, solving the
    main problem of PR#18055.
  * gettext() and gettextf() get a new option trim = TRUE which when
    set to false allows translations for strings such as "Execution
    halted\n" typical for C code.
  * An experimental implementation of hash tables is now available.
    See ?hashtab for more details.
  * identical() gains a extptr.as.ref argument for requesting that
    external pointer objects be compared as reference objects.
  * reorder() gets an argument decreasing which it passes to sort()
    for level creation; based on the wish and patch by Thomas Soeiro
    in PR#18243.
  * as.vector() gains a data.frame method which returns a simple
    named list, also clearing a long standing 'FIXME' to enable
    as.vector(&lt;data.frame&gt;, mode="list").  This breaks code relying
    on as.vector(&lt;data.frame&gt;) to return the unchanged data frame.
  * legend() is now vectorized for arguments cex, x.intersp, and
    text.width.  The latter can now also be specified as a vector
    (one element for each column of the legend) or as NA for
    computing a proper column wise maximum value of strwidth(legend).
    The argument y.intersp can be specified as a vector with one
    entry for each row of the legend.
    legend() also gains new arguments title.cex and title.font.
    Thanks to Swetlana Herbrandt.
  * Deparsing no longer remaps attribute names dim, dimnames, levels,
    names and tsp to historical S-compatible names (which structure()
    maps back).
  * sample() and sample.int() have additional sanity checks on their
    size and n arguments.
    all.equal.numeric() gains a sanity check on its tolerance
    argument - calling all.equal(a, b, c) for three numeric vectors
    is a surprisingly common error.
    mean(na.rm =), rank(na.last =), barplot(legend.text =),
    boxplot(), contour(drawlabels =), polygon(border =) and
    methods::is(class2 =) have more robust sanity checks on their
    arguments.
    R CMD Rd2pdf (used by R CMD check) has a more robust sanity check
    on the format of \alias{} commands.
  * psigamma(x, deriv) for negative x now also works for deriv = 4
    and 5; their underlying C level dpsifn() is documented in
    'Writing R Extensions'.
  * The HTML help system now uses HTML5 (wish of PR#18149).
  * ks.test() now provides exact p-values also with ties and MC
    p-values in the two-sample (Smirnov) case.  By Torsten Hothorn.
  * ks.test() gains a formula interface, with y ~ 1 for the
    one-sample (Kolmogorov) test and y ~ group for the two-sample
    (Smirnov) test.  Contributed by Torsten Hothorn.
  * The return value from ks.test() now has class c("ks.test",
    "htest") - packages using try() need to take care to use
    inherits() and not == on the class.
  * New functions psmirnov(), qsmirnov() and rsmirnov() in package
    stats implementing the asymptotic and exact distributions of the
    two-sample Smirnov statistic.
  * iconv() now allows sub = "c99" to use C99-style escapes for UTF-8
    inputs which cannot be converted to encoding to.
  * In a forward pipe |&gt; expression it is now possible to use a named
    argument with the placeholder _ in the rhs call to specify where
    the lhs is to be inserted.  The placeholder can only appear once
    on the rhs.
  * The included LAPACK sources have been updated to version 3.10.0,
    except for the four Fortran 77 routines which 3.10.0 has
    re-implemented in Fortran 90 (where the older versions have been
    retained as the R build process does not support Fortran 90).
  * path.expand() and most other uses of tilde expansion now warn if
    a path would be too long if expanded.  (An exception is
    file.exists(), which silently returns false.)
  * trunc(&lt;Date&gt;, *) now supports units = "months" or "years" for
    consistency with the POSIXt method, thanks to Dirk Eddelbuettel's
    proposal in PR#18099.
  * list2DF() now checks that its arguments are of the same length,
    rather than use recycling.
  * The HTML help system has several new features: LaTeX-like math
    can be typeset using either KaTeX or MathJax, usage and example
    code is highlighted using Prism, and for dynamic help the output
    of examples and demos can be shown within the browser if the
    knitr package is installed. These features can be disabled by
    setting the environment variable _R_HELP_ENABLE_ENHANCED_HTML_ to
    a false value.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 15
    and so packages that provide graphics devices should be
    reinstalled.
  * The grid package now allows the user to specify a "vector" of
    pattern fills.  The fill argument to gpar() accepts a list of
    gradients and/or patterns and the functions linearGradient(),
    radialGradient(), and pattern() have a new group argument.
    Points grobs (data symbols) can now also have a pattern fill.
    The grobCoords() function now returns a more informative and
    complex result.
  * The grid package has new functions for drawing isolated groups:
    grid.group(), grid.define(), and grid.use().  These functions add
    compositing operators and affine transformations to R's graphics
    capabilities.
    The grid package also has new functions for stroking and filling
    paths: grid.stroke(), grid.fill(), and grid.fillStroke().
    A new function as.path() allows the user to specify the fill rule
    for a path that is to be used for clipping, stroking, or filling;
    available options are "winding" and "evenodd".  A new function
    as.mask() allows the user to specify the type of a mask;
    available options are "alpha" and "luminance".
    These new features are only supported so far (at most) on the
    Cairo-based graphics devices and on the pdf() device.
  * dev.capabilities() reports on device support for the new
    features.
  * par() now warns about unnamed non-character arguments to prevent
    misuse such as {usr &lt;- par("usr"); par(usr)}.
  INSTALLATION:
  * Facilities for accessing ftp:// sites are no longer tested
    (except _pro tem_ for curlGetHeaders()) as modern browsers have
    removed support.
  * R can now be built with DEFS = -DSTRICT_R_HEADERS .
  PACKAGE INSTALLATION:
  * R CMD INSTALL no longer tangles vignettes. This completes an R
    CMD build change in R 3.0.0 and affects packages built before R
    3.0.2. Such packages should be re-made with R CMD build to have
    the tangled R code of vignettes shipped with the tarball.
  * USE_FC_LEN_T will become the default: this uses the correct
    prototypes for Fortran BLAS/LAPACK routines called from C/C++,
    and requires adjustment of most such calls - see 'Writing R
    Extensions' SS6.6.2.  (This has been supported since R 3.6.2.)
  * Package installation speed for packages installed with
    keep.source has been improved. This resolve the issue reported by
    Ofek Shilon in PR#18236.
  UTILITIES:
  * R CMD check can optionally report files/directories left behind
    in home, /tmp (even though TMPDIR is set) and other directories.
    See the "R Internals" manual for details.
  * R CMD check now reports byte-compilation errors during
    installation.  These are not usually fatal but may result in
    parts of the package not being byte-compiled.
  * _R_CHECK_DEPENDS_ONLY_ can be applied selectively to examples,
    tests and/or vignettes in R CMD check: see the "R Internals"
    manual.
  * _R_CHECK_SRC_MINUS_W_IMPLICIT_ now defaults to true: recent
    versions of Apple clang on macOS have made implicit function
    declarations in C into a compilation error.
  * R CMD check --as-cran makes use of the environment variable
    AUTORECONF.  See the "R Internals" manual SS8 for further details.
  * R CMD check --use-valgrind also uses valgrind when re-building
    vignettes as some non-Sweave vignettes unhelpfully comment out
    all their code when R CMD check runs vignettes.
  * Errors in re-building vignettes (unless there are LaTeX errors)
    are reported by R CMD check as ERROR rather than WARNING when
    running vignettes has been skipped (as it frequently is in CRAN
    checks and by --as-cran).
  * R CMD Rd2pdf gains a --quiet option that is used by R CMD build
    when building the PDF package manual.
  * R CMD Rd2pdf now always runs LaTeX in batch mode, consistent with
    Texinfo &gt;= 6.7. The --batch option is ignored.
  * R CMD build and R CMD check now include the Rd file name and line
    numbers in the error message of an \Sexpr evaluation failure.
  * For packages using the \doi Rd macro (now an install-time \Sexpr)
    but no other dynamic Rd content, R CMD build now produces a
    smaller tarball and is considerably faster - skipping temporary
    package installation.
  C-LEVEL FACILITIES:
  * The non-API header R_ext/R-ftp-http.h is no longer provided, as
    the entry points it covered are now all defunct.
  * A number of non-API declarations and macro definitions have been
    moved from the installed header Rinternals.h to the internal
    header Defn.h. Packages that only use entry points and
    definitions documented to be part of the API as specified in
    'Writing R Extensions' SS6 should not be affected.
  * The macro USE_RINTERNALS no longer has any effect when compiling
    package code.  Packages which also use R_NO_REMAP will need to
    ensure that the remapped names are used for calls to API
    functions that were formerly also made available as macros.
  * The deprecated legacy S-compatibility macros PROBLEM, MESSAGE,
    ERROR, WARN, WARNING, RECOVER, ... are no longer defined in
    R_exts/RS.h (included by R.h).  Replace these by calls to
    Rf_error and Rf_warning (defined in header R_ext/Error.h included
    by R.h).
    Header R_ext/RS.h no longer includes R_ext/Error.h.
  * Header R_ext/Constants.h (included by R.h) when included from C++
    now includes the C++ header cfloat rather than the C header
    float.h (now possible as C++11 is required).
  * The legacy S-compatibility macros DOUBLE_* in R_ext/Constants.h
    (included by R.h) are deprecated.
  * The deprecated S-compatibility macros SINGLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * R_Calloc, R_Free and R_Realloc are preferred to their unprefixed
    forms and error messages now use the prefix. These forms were
    introduced in R 3.4.0 and are available even when
    STRICT_R_HEADERS is defined.
  * rmultinom has been documented in 'Writing R Extensions' SS6 so is
    now part of the R API.
  * Similarly, Rtanpi, called from R level tanpi() is now part of the
    R API.
  * The long-deprecated, undocumented and non-API entry point call_R
    is no longer declared in R_ext/RS.h (included by R.h).
  * The header S.h which has been unsupported since Jan 2016 has been
    removed.  Use R.h instead.
  DEPRECATED AND DEFUNCT:
  * The (non-default and deprecated) method = "internal" for
    download.file() and url() no longer supports http:// nor ftp://
    URIs.  (It is used only for file:// URIs.)
    On Windows, download.file(method = "wininet") no longer supports
    ftp:// URIs.  (It is no longer the default method, which is
    "libcurl" and does.)
    On Windows, the deprecated method = "wininet" now gives a warning
    for http:// and https:// URIs for both download.file() and url().
    (It is no longer the default method.)
  * On Windows, the command-line option --max-mem-size and
    environment variable R_MAX_MEM_SIZE are defunct.  The memory
    allocation limit was important for 32-bit builds, but these are
    no longer supported.
  * default.stringsAsFactors() is now formally deprecated, where that
    was only mentioned on its regular help page, previously.  So it
    now gives a warning if called.
  * unix.time() is defunct now; it had been deprecated since R 3.4.0.
  BUG FIXES:
  * Setting digits = 0 in format(), print.default() (and hence
    typically print()) or options() is again invalid.  Its behaviour
    was platform-dependent, and it is unclear what "zero significant
    digits" should mean (PR#18098).
  * Messages from C code in the cairo section of package grDevices
    are now also offered for translation, thanks to Michael Chirico's
    PR#18123.
  * mean(x) with finite x now is finite also without "long.double"
    capability.
  * R CMD Rd2pdf no longer leaves an empty build directory behind
    when it aborts due to an already existing output file.  (Thanks
    to Sebastian Meyer's PR#18141.)
  * density(x, weights = w, na.rm = TRUE) when anyNA(x) is true, now
    removes weights "in parallel" to x, fixing PR#18151, reported by
    Matthias Gondan.  Additionally, it gets a subdensity option.
  * Conversion of \Sexpr[]{&lt;expR&gt;} to LaTeX or HTML no longer
    produces long blocks of empty lines when &lt;expR&gt; itself contains
    several lines all producing empty output.  Thanks to a report and
    patch by Ivan Krylov posted to R-devel.
  * R CMD build no longer fails if a package vignette uses child
    documents and inst/doc exists.  (Thanks to Sebastian Meyer's
    PR#18156.)
  * When an R documentation ('help' source) file man/foo.Rd in a
    package has \donttest{..} examples with a syntax error, it is now
    signalled as ERROR and with correct line numbers relating to the
  * -Ex.R file, thanks to Duncan Murdoch and Sebastian Meyer's
    reports and patch proposals in PR#17501.
  * Improved determination of the correct translation domain in
    non-base packages, addressing the combination of PR#18092 and
    PR#17998 (#c6) with reports and _augmented_ patch #2904 by
    Suharto Anggono.
    Note that "R-base" is no longer the default domain e.g., for
    top-level calls to gettext(); rather translation needs explicit
    domain = * specification in such cases.
  * identical(attrib.as.set=FALSE) now works correctly with data
    frames with default row names (Thanks to Charlie Gao's PR#18179).
  * txtProgressBar() now enforces a non-zero width for argument char,
    without which no progress can be visible.
  * dimnames(table(d)) is more consistent in the case where d is a
    list with a single component, thanks to Thomas Soeiro's report to
    R-devel.
    Further, table(d1, d2) now gives an error when d1 and d2 are data
    frames as suggested by Thomas in PR#18224.
  * Fix for drawing semi-transparent lines and fills on the native
    Windows graphics device (PR#18219 and PR#16694).  Thanks to Nick
    Ray for helpful diagnosis on Bugzilla.
  * The deparser now wraps sub-expressions such as if(A) ..  with
    parentheses when needed; thanks to Duncan Murdoch's PR#18232 and
    Lionel Henry's patches there.
  * remove.packages() no longer tries to uninstall Priority: base
    packages, thanks to a report and suggestions by Colin Fay in
    PR#18227.
  * win.metafile() now has xpinch and ypinch arguments so that the
    user can override Windows' (potentially wrong) guess at device
    dimensions.
  * x[i] and x[[i]] for non-integer i should now behave in all cases
    as always documented: the index used is equivalent to
    as.integer(i) unless that would overflow where trunc(i) is used
    instead; thanks to Suharto Anggono's report and patch proposals
    in PR#17977.
  * asOneSidedFormula() now associates the resulting formula with the
    global environment rather than the evaluation environment created
    for the call.
  * &lt;bibentry&gt;$name now matches the field name case-insensitively,
    consistent with bibentry() creation and the replacement method.
  * cbind() failed to detect some length mismatches with a mixture of
    time-series and non-time-series inputs.
  * The default LaTeX style file Sweave.sty used by the RweaveLatex
    driver no longer loads the obsolete ae package; thanks to a
    report by Thomas Soeiro in PR#18271.  Furthermore, it now skips
    \usepackage[T1]{fontenc} for engines other than pdfTeX (if
    detected) or if the new [nofontenc] option is used.
  * smooth.spline() now stores its logical cv argument more safely,
    fixing a rare bug when printing, and also stores n.
  * smooth.spline(x,y,*) now computes the cv.crit statistic
    correctly, also when is.unsorted(x), fixing PR#18294.
  * The data.frame method of rbind() now warns when binding
    not-wholly-recycling vectors, by analogy to the default method
    (for matrices).
  * setAs() finds the correct class for name to when multiple
    packages define a class with that name. Thanks to Gabor Csardi
    for the report.
  * Fix for detaching a package when two classes of the same name are
    present in method signatures for the same generic. Thanks to
    Gabor Csardi for the report.
  * match.arg("", c("", "a", "B")) gives a better error message, in
    part from PR#17959, thanks to Elin Waring.
  * R CMD Sweave --clean no longer removes pre-existing files or
    subdirectories (PR#18242).
  * The quartz() device no longer splits polylines into subpaths.
    That has caused narrowly-spaced lines with many points to always
    look solid even when dashed line type was used due to dash phase
    restarts.
  * Deparsing constructs such as quote(1 + `!`(2) + 3) works again as
    before R 3.5.0, thanks to the report and patch in PR#18284 by
    Suharto Anggono.
  * as.list(f) for a factor f now keeps names(f), fixing PR#18309.
  * qbeta(.001, .9, .009) and analogous qf() calls now return a
    correct value instead of NaN or wrongly 1, all with a warning;
    thanks to the report by Ludger Goeminne in PR#18302.
  * plot.lm() failed to produce the plot of residuals vs.  factor
    levels (i.e., which=5 when leverages are constant) for models
    with character predictors (PR#17840).
  * interaction.plot(..., xtick = TRUE) misplaced the x-axis line
    (PR#18305).
  * Not strictly fixing a bug, format()ing and print()ing of
    non-finite Date and POSIXt values NaN and +/-Inf no longer show
    as NA but the respective string, e.g., Inf, for consistency with
    numeric vector's behaviour, fulfilling the wish of PR#18308.
  * R CMD check no longer runs test scripts generated from
    corresponding .Rin files twice and now signals an ERROR if
    processing an .Rin script fails.
  * tools::Rd2txt() used for plain-text help pages now renders \hrefs
    (if tools::Rd2txt_options(showURLs = TRUE)) and \urls with
    percent-encoding and standards-compliant delimiting style (angle
    brackets and no URL: prefix).  \email is now rendered with a
    mailto: prefix.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1655985600">- CHANGES IN R 4.2.1:
  NEW FEATURES:
  * New function utils::findCRANmirror() to find out if a CRAN mirror
    has been selected, otherwise fallback to the main site.  This
    behaves in the same way as tools::CRAN_package_db() and is
    intended for packages wishing to access CRAN for purposes other
    than installing packages.
    The need for this was shown by a day when the main CRAN website
    was offline and a dozen or so packages which had its URL
    hardcoded failed their checks.
  INSTALLATION on a UNIX-ALIKE:
  * The libraries searched for by --with-blas (without a value) now
    include BLIS (after OpenBLAS but before ATLAS).  And on macOS,
    the Accelerate framework (after ATLAS).  (This is patterned after
    the AX_BLAS macro from the Autoconf Archive.)
  * The included LAPACK sources have been updated to 3.10.1.
  UTILITIES:
  * The (full path to) the command tidy to be used for HTML
    validation can be set by environment variable R_TIDYCMD.
  * Setting environment variable _R_CHECK_RD_VALIDATE_RD2HTML_ to a
    false value will override R CMD check --as-cran and turn off HTML
    validation.  This provides a way to circumvent a problematic
    tidy.
    The 2006 version that ships with macOS is always skipped.
  C-LEVEL FACILITIES:
  * The undocumented legacy declarations of Sint, Sfloat, SINT_MAX
    and SINT_MIN in header R.h are deprecated.
  BUG FIXES:
  * fisher.test(d) no longer segfaults for "large" d; fixing PR#18336
    by preventing/detecting an integer overflow reliably.
  * tar(., files=*) now produces correctly the warning about invalid
    uid or gid of files, fixing PR#18344, reported by Martin Morgan.
  * tk_choose.files() with multi = FALSE misbehaved on paths
    containing spaces (PR#18334) (regression introduced in R 4.0.0).
  * sort(x, partial = ind, *) now works correctly notably for the
    non-default na.last = FALSE or TRUE, fixing PR#18335 reported by
    James Edwards.
  * Environment variable _R_CHECK_XREFS_REPOSITORIES_ is only used
    for checking .Rd cross-references in R CMD check (as documented)
    and not for other uses looking for a CRAN mirror.
  * The search for a CRAN mirror when checking packages now uses
    getOption("repos") if that specifies a CRAN mirror, even when it
    does not also specify all three Bioconductor repositories (as was
    previously required).
  * The HTML code generated by tools::Rd2HTML() has been improved to
    pass tidy 5.8.0.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1667217600">- CHANGES IN R 4.2.2:
  NEW FEATURES:
  * tools::Rdiff(useDiff = TRUE) checks for the presence of an
    external diff command and switches to useDiff = FALSE if none is
    found.  This allows R CMD Rdiff to always work.
  * On Windows, environment variable R_LIBCURL_SSL_REVOKE_BEST_EFFORT
    can be used to switch to only 'best-effort' SSL certificate
    revocation checks with the default "libcurl" download method.
    This reduces security, but may be needed for downloads to work
    with MITM proxies (PR#18379).
  * (macOS) The run-time check for libraries from XQuartz for X11 and
    Tcl/Tk no longer uses otool from the Apple Developer Tools
    (PR#18400).
  * The LaTeX style for producing the PDF manuals, Rd.sty, now loads
    the standard amsmath, amsfonts and amssymb packages for greater
    coverage of math commands in the Rd \eqn and \deqn macros.  The
    \mathscr LaTeX command is also provided (via the mathrsfs
    package, if available, or the amsfonts bundle otherwise),
    fulfilling the wish of PR#18398.
  * (Windows) The default format of readClipboard() and
    writeClipboard() has been changed to 13 (CF_UNICODETEXT).
  INSTALLATION on a UNIX-ALIKE:
  * The PDF manuals (if built) can be compacted by the new target
    make compact-pdf (at the top level or in directory doc/manual).
  * There is now configure support for LLVM clang 15 on Linux, which
    defaults to position-independent (PIE) executables whereas
    gfortran does not.
  * Many small changes to ease compilation (and suppress warnings)
    with LLVM clang 15.
  BUG FIXES:
  * Rscript -e would fail if stdin were closed (Reported by Henrik
    Bengtsson.)
  * qt(*, log.p=TRUE) in outer tails no longer produces NaN in its
    final steps, thus fixing PR#18360.
  * tools::Rd2latex() now escapes hashes and ampersands when writing
    URLs, fixing LaTeX errors with such URLs in \tabular.
  * When isGeneric(f, fdef=*) is used with mismatching names, the
    warning is better understandable; reported (with fix) in PR#18370
    by Gabe Becker.
  * poly(x, n) now works again (and is now documented) when x is a
    "Date" or "POSIXct" object, or of another class while fulfilling
    mode(x) == "numeric".  This also enables poly(x, *, raw=TRUE) for
    such variables.  Reported by Michael Chirico to R-devel.
  * write.table(), write.csv() and write.csv2() restore their
    numerical precision (internal equivalent of digits = 15) after an
    interrupt (PR#18384).
  * One can now read also byte FF from a clipboard connection
    (PR#18385).
  * source("") and source(character()) now give more helpful error
    messages.
  * R CMD check --as-cran set _R_CHECK_TIMINGS_ too late to have the
    intended effect.
  * as.POSIXlt(x) now also works with very large dates x, fixing
    PR#18401 reported by Hannes M"uhleisen.
  * Files can now be extracted even from very large zip archives
    (PR#18390, thanks to Martin Jakt).
  * Non-finite objects of class "POSIXlt" are now correctly coerced
    to classes "Date" and "POSIXct"; following up on the extension to
    format() them correctly.
  * Added methods for is.finite(), is.infinite() and is.nan() for
    "POSIXlt" date-time objects.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1678881600">- CHANGES IN R 4.2.3:
  C-LEVEL FACILITIES:
  * The definition of DL_FUNC in R_ext/Rdynload.h has been changed to
    be fully C-compliant.  This means that functions loaded _via_ for
    example R_GetCCallable need to be cast to an appropriate type if
    they have any arguments.
  * .Machine has a new element sizeof.time_t to identify old systems
    with a 32-bit type and hence a limited range of date-times (and
    limited support for dates millions of years from present).
  PACKAGE INSTALLATION:
  * (Windows) The default C++ standard had accidentally been left at
    C++11 when it was changed to C++14 on Unix.
  BUG FIXES:
  * As "POSIXlt" objects may be "partially filled" and their list
    components meant to be recycled, length() now is the length of
    the longest component.
  * as.POSIXlt.Date() could underflow for dates in the far past (more
    than half a million years BCE).
  * as.Date.POSIXlt(x) would return "1970-01-01" instead of NA in R
    4.2.2, e.g., for
    x &lt;- as.POSIXlt(c("2019-01-30","2001-1-1"))
    x$mon &lt;- c(0L, NA); as.Date(x)
  * R CMD check failed to apply enabled _R_CHECK_SUGGESTS_ONLY_ to
    examples and vignettes (regression in R 4.2.0).
  * R CMD check did not re-build vignettes in separate processes by
    default (regression in R 4.2.0).
  * Running examples from HTML documentation now restores previous
    knitr settings and options (PR#18420).
  * Quartz: fonts are now located using Core Graphics API instead of
    deprecated ATS which is no longer supported in the macOS 13 SDK
    (PR#18426).  This also addresses an issue where the currently
    used font in the Quartz device context was not correctly
    retained.
  * (Windows) Math symbols in text drawing functions are again
    rendered correctly (PR#18440).  This fixes a regression in R
    4.2.1 caused by a fix in PR#18382 which uncovered an issue in
    GraphApp due to which the symbol charset was not used with TT
    Symbol font face.
  * (Windows) Installing a package with a src/Makefile.{win,ucrt}
    file includes ~/.R/Makevars.win64 in the search for user
    makevars, as documented in "R Installation and Administration"
    and done for packages with a src/Makevars.{win,ucrt} file.
  * format(&lt;POSIXlt_w/_unbalanced_sec&gt;, "....%OS&lt;n&gt;") with n &gt; 0 no
    longer accidentally uses the unbalanced seconds, thanks to
    Suharto Anggono's report (including patch) in PR#18448.
  * solve.default(a, b) works around issues with some versions of
    LAPACK when a contains NA or NaN values.
  * When UseMethod() cannot dispatch, it no longer segfaults
    producing the error message in case of a long class(), thanks to
    Joris Vankerschaver's report (including patch) in PR#18447.
  * When example(foo, ..) produces graphics on an interactive device
    it needs to open itself, it now leaves devAskNewPage() unchanged
    even when it was FALSE, thus fixing a 14 years old '&lt;FIXME&gt;'.
  * packageDescription() again catches errors from encoding
    conversions. This also fixes broken packageVersion() in C locale
    on systems where iconv does not support transliteration.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1681128000">- add patch to build with libcurl &gt;= 8</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1682078400">- CHANGES IN R 4.3.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Calling &amp;&amp; or || with LHS or (if evaluated) RHS of length greater
    than one is now always an error, with a report of the form
    'length = 4' in coercion to 'logical(1)'
    Environment variable _R_CHECK_LENGTH_1_LOGIC2_ no longer has any
    effect.
  NEW FEATURES:
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.10.1.  (This caused some platform-dependent
    changes to package check output.)  And then to the sources from
    LAPACK version 3.11.0 (with changes only to double complex
    subroutines).
  * The included LAPACK sources have been updated to include the four
    Fortran 90 routines rather than their Fortran 77 predecessors.
    This may give some different signs in SVDs or
    eigendecompositions..  (This completes the transition to LAPACK
    3.10.x begun in R 4.2.0.)
  * The LAPACK sources have been updated to version 3.11.0.  (No new
    subroutines have been added, so this almost entirely bug fixes:
    Those fixes do affect some computations with NaNs, including R's
    NA.)
  * The parser now signals _classed_ errors, notably in case of the
    pipe operator |&gt;.  The error object and message now give line and
    column numbers, mostly as proposed and provided by Duncan Murdoch
    in PR#18328.
  * toeplitz() is now generalized for asymmetric cases, with a
    toeplitz2() variant.
  * xy.coords() and xyz.coords() and consequently, e.g., plot(x,y,
    log = "y") now signal a _classed_ warning about negative values
    of y (where log(.) is NA).  Such a warning can be specifically
    suppressed or caught otherwise.
  * Regular expression functions now check more thoroughly whether
    their inputs are valid strings (in their encoding, e.g. in
    UTF-8).
  * The performance of grep(), sub(), gsub() and strsplit() has been
    improved, particularly with perl = TRUE and fixed = TRUE.  Use of
    useBytes = TRUE for performance reasons should no longer be
    needed and is discouraged: it may lead to incorrect results.
  * apropos() gains an argument dot_internals which is used by the
    completion (help(rcompgen)) engine to also see base internals
    such as .POSIXct().
  * Support in tools::Rdiff() for comparing uncompressed PDF files is
    further reduced - see its help page.
  * qqplot(x, y, ...) gains conf.level and conf.args arguments for
    computing and plotting a confidence band for the treatment
    function transforming the distribution of x into the distribution
    of y (Switzer, 1976, _Biometrika_). Contributed by Torsten
    Hothorn.
  * Performance of package_dependencies() has been improved for cases
    when the number of dependencies is large.
  * Strings newly created by gsub(), sub() and strsplit(), when any
    of the inputs is marked as "bytes", are also marked as "bytes".
    This reduces the risk of creating invalid strings and accidental
    substitution of bytes deemed invalid.
  * Support for readLines(encoding = "bytes") has been added to allow
    processing special text files byte-by-byte, without creating
    invalid strings.
  * iconv(from = "") now takes into account any declared encoding of
    the input elements and uses it in preference to the native
    encoding.  This reduces the risk of accidental creation of
    invalid strings, particularly when different elements of the
    input have different encoding (including "bytes").
  * Package repositories in getOption("repos") are now initialized
    from the repositories file when utils is loaded (if not already
    set, e.g., in .Rprofile).  (From a report and patch proposal by
    Gabriel Becker in PR#18405.)
  * compactPDF() gets a verbose option.
  * type.convert() and hence read.table() get new option tryLogical =
    TRUE with back compatible default.  When set to false, converts
    "F" or "T" columns to character.
  * Added new unit prefixes "R" and "Q" for abbreviating
    (unrealistically large) sizes beyond 10^{27} in standard = "SI",
    thanks to Henrik Bengtsson's PR#18435.
  * as.data.frame()'s default method now also works fine with atomic
    objects inheriting from classes such as "roman", "octmode" and
    "hexmode", such fulfilling the wish of PR#18421, by Benjamin
    Feakins.
  * The as.data.frame.vector() utility now errors for wrong-length
    row.names.  It warned for almost six years, with "Will be an
    error!".
  * sessionInfo() now also contains La_version() and reports codepage
    and timezone when relevant, in both print() and toLatex() methods
    which also get new option tzone for displaying timezone
    information when locale = FALSE.
  * New function R_compiled_by() reports the C and Fortran compilers
    used to build R, if known.
  * predict(&lt;lm&gt;, newdata = *) no longer unnecessarily creates an
    offset of all 0s.
  * solve() for complex inputs now uses argument tol and by default
    checks for 'computational singularity' (as it long has done for
    numeric inputs).
  * predict(&lt;rank-deficient lm&gt;, newdata=*) now obeys a new argument
    rankdeficient, with new default "warnif", warning only if there
    are non-estimable cases in newdata.  Other options include
    rankdeficient = "NA", predicting NA for non-estimable newdata
    cases.  This addresses PR#15072 by Russ Lenth and is based on his
    original proposal and discussions in PR#16158 also by David Firth
    and Elin Waring.  Still somewhat experimental.
  * Rgui console implementation now works better with the NVDA screen
    reader when the full blinking cursor is selected.  The underlying
    improvements in cursor handling may help also other screen
    readers on Windows.
  * The drop-field control in GraphApp can now be left with the TAB
    key and all controls can be navigated in the reverse order using
    the Shift+TAB key, improving accessibility of the Rgui
    configuration editor.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now fully accurate
    (instead of to "only" minimally five digits).
  * demo(error.catching) now also shows off withWarnings() and
    tryCatchWEMs().
  * As an experimental feature the placeholder _ can now also be used
    in the rhs of a forward pipe |&gt; expression as the first argument
    in an extraction call, such as _$coef. More generally, it can be
    used as the head of a chain of extractions, such as _$coef[[2]].
  * Spaces in the environment variable used to choose the R session's
    temporary directory (TMPDIR, TMP and TEMP are tried in turn) are
    now fatal.  (On Windows the 'short path' version of the path is
    tried and used if that does not contain a space.)
  * all.equal.numeric() gets a new optional switch giveErr to return
    the numeric error as attribute.  Relatedly,
    stopifnot(all.equal&lt;some&gt;(a, b, ..)) is as "smart" now, as
    stopifnot(all.equal(....)) has been already, thus allowing
    customized all.equal&lt;Some&gt;() wrappers.
  * R on Windows is now able to work with path names longer than 260
    characters when these are enabled in the system (requires at
    least Windows 10 version 1607).  Packages should be updated to
    work with long paths as well, instead of assuming PATH_MAX to be
    the maximum length.  Custom front-ends and applications embedding
    R need to update their manifests if they wish to allow this
    feature.  See
    &lt;https://blog.r-project.org/2023/03/07/path-length-limit-on-windows&gt;
    for more information.
  * 'Object not found' and 'Missing argument' errors now give a more
    accurate error context. Patch provided by Lionel Henry in
    PR#18241.
  * The @ operator is now an S3 generic. Based on contributions by
    Tomasz Kalinowski in PR#18482.
  * New generic chooseOpsMethod() provides a mechanism for objects to
    resolve cases where two suitable methods are found for an Ops
    Group Generic. This supports experimenting with alternative
    object systems. Based on contributions by Tomasz Kalinowski in
    PR#18484.
  * inherits(x, what) now accepts values other than a simple
    character vector for argument what. A new generic, nameOfClass(),
    is called to resolve the class name from what. This supports
    experimenting with alternative object systems. Based on
    contributions by Tomasz Kalinowski in PR#18485.
  * Detection of BLAS/LAPACK in use (sessionInfo()) with FlexiBLAS
    now reports the current backend.
  * The "data.frame" method for subset() now warns about extraneous
    arguments, typically catching the use of = instead of == in the
    subset expression.
  * Calling a:b when numeric a or b is longer than one may now be
    made into an error by setting environment variable
    _R_CHECK_LENGTH_COLON_ to a true value, along the proposal in
    PR#18419 by Henrik Bengtsson.
  * density(x, weights = *) now warns if automatic bandwidth
    selection happens without using weights; new optional warnWbw may
    suppress the warning.  Prompted by Christoph Dalitz' PR#18490 and
    its discussants.
  * rm(list = *) is faster and more readable thanks to Kevin Ushey's
    PR#18492.
  * The plot.lm() function no longer produces a normal Q-Q plot for
    GLMs. Instead it plots a half-normal Q-Q plot of the absolute
    value of the standardized deviance residuals.
  * The print() method for class "summary.glm" no longer shows
    summary statistics for the deviance residuals by default.  Its
    optional argument show.residuals can be used to show them if
    required.
  * The tapply() function now accepts a data frame as its X argument,
    and allows INDEX to be a formula in that case. by.data.frame()
    similarly allows INDICES to be a formula.
  * The performance of df[j] &lt;- value (including for missing j) and
    write.table(df) has been improved for data frames df with a large
    number of columns.  (Thanks to Gabriel Becker's PR#18500,
    PR#18503 and discussants, prompted by a report from Toby Dylan
    Hocking on the R-devel mailing list.)
  * The matrix multiply operator %*% is now an S3 generic, belonging
    to new group generic matrixOps.  From Tomasz Kalinowski's
    contribution in PR#18483.
  * New function array2DF() to convert arrays to data frames,
    particularly useful for the list arrays created by tapply().
  DATES and TIMES:
  * On platforms where (non-UTC) datetimes before 1902 (or before
    1900 as with system functions on recent macOS) are guessed by
    extrapolating time zones from 1902-2037, there is a warning at
    the first use of extrapolation in a session.  (As all time zones
    post 2037 are extrapolation, we do not warn on those.)
  * (Platforms using --with-internal-tzone, including Windows and by
    default macOS). How years are printed in dates or date-times can
    be controlled by environment variable R_PAD_YEARS_BY_ZERO.  The
    default remains to pad to 4 digits by zeroes, but setting value
    no gives no padding (as used by default by glibc).
  * strftime() tries harder to determine the offset for the "%z"
    format, and succeeds on the mainstream R platforms.
  * strftime() has a limit of 2048 bytes on the string produced -
    attempting to exceed this is an error.  (Previously it silently
    truncated at 255 bytes.)
  * sessionInfo() records (and by default prints) the system time
    zone as part of the locale information.  Also, the source
    (system/internal) of the date-time conversion and printing
    functions.
  * Objects of class "POSIXlt" created in this version of R always
    have 11 components: component zone is always set, and component
    gmtoff is set for times in UTC and usually set on the (almost
    all) platforms which have C-level support, otherwise is NA.
  * There are comprehensive validity checks on the structure of
    objects of class "POSIXlt" when converting (including formatting
    and printing).  (This avoids mis-conversions of hand-crafted
    objects.)
  * There is some support for using the native date-time routines on
    macOS: this is only viable on recent versions (e.g. 12.6 and 13)
    and does get wrong some historical changes (before 1900, during
    WWII).  Use of --with-internal-tzone remains the default.
  * as.POSIXct(&lt;numeric&gt;) and as.POSIXlt(.) (without specifying
    origin) now work.  So does as.Date(&lt;numeric&gt;).
  * as.Date.POSIXct(., tz) now treats several tz values, notably
    "GMT" as equivalent to "UTC", proposed and improved by Michael
    Chirico and Joshua Ulrich in PR#17674.
  * Experimental balancePOSIXlt() utility allows using "ragged" and
    or out-of-range "POSIXlt" objects more correctly, e.g., in
    subsetting and subassignments.  Such objects are now documented.
    More experimentally, a "POSIXlt" object may have an attribute
    "balanced" indicating if it is known to be filled or fully
    balanced.
  * Functions axis.Date() and axis.POSIXct() are rewritten to gain
    better default tick locations and better default formats by using
    prettyDate(). Thanks to Swetlana Herbrandt.
  * The mapping of Windows' names for time zones to IANA's 'Olson'
    names has been updated.  When ICU is available (it is by
    default), it is used to get a mapping for the current region set
    in Windows.  This can be overridden by setting environment
    variable TZ to the desired Olson name - see OlsonNames() for
    those currently available.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 16
    and so packages that provide graphics devices should be
    reinstalled.
  * The grDevices and grid packages have new functions for rendering
    typeset glyphs, primarily: grDevices::glyphInfo() and
    grid::grid.glyph().
    Rendering of typeset glyphs is only supported so far on the
    Cairo-based graphics devices and on the pdf() and quartz()
    devices.
  * The defined behaviour for "clear" and "source" compositing
    operators (via grid::grid.group()) has been changed (to align
    better with simple interpretation of original Porter-Duff
    definitions).
  * Support for gradients, patterns, clipping paths, masks, groups,
    compositing operators, and affine transformations has been added
    to the quartz() device.
  INSTALLATION on a UNIX-ALIKE:
  * A system installation of generic LAPACK 3.10.0 or later will be
    preferred to the version in the R sources.
    configure option --with-lapack=no (equivalently --without-lapack)
    forces compilation of the internal LAPACK sources.
    If --with-lapack is not specified, a system liblapack is looked
    for and used if it reports version 3.10.0 or later and does not
    contain BLAS routines.
    Packages using LAPACK will need to be reinstalled if this changes
    to using an external library.
  * On aarch64 Linux platforms using GCC, configure now defaults to
  - fPIC (instead of -fpic), as desired in PR#18326.
  * configure now checks conversion of datetimes between POSIXlt and
    POSIXct around year 2020.  Failure (which has been seen on
    platforms missing tzdata) is fatal.
  * If configure option --with-valgrind-instrumentation is given
    value 1 or 2, option --with-system-valgrind-headers is now the
    default and ignored (with a warning).  It is highly recommended
    that the system headers are installed alongside valgrind: they
    are part of its packaging on some Linux distributions and
    packaged separately (e.g. in the valgrind-devel RPM) on others.
    configure will give a warning if they are not found.
    The system headers will be required in a future release of R to
    build with valgrind instrumentation.
  * libcurl 8.x is now accepted by configure: despite a change in
    major version number it changes neither API nor ABI.
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools43, an update of the Rtools42 toolchain.  It is
    based on gcc 12 and newer versions of MinGW-W64, binutils and
    libraries.  At this time R-devel can still be built using
    Rtools42 without changes, but when R-devel is installed via the
    installer, it will by default look for Rtools43.
  * Old make targets rsync-extsoft and 32-bit ones that are no longer
    needed have been removed.
  * Default builds (including for packages) no longer select C99.
    Thus the C standard used is the default for the compiler, which
    for the toolchain in Rtools43 is C17.  (This is consistent with
    Unix builds.)
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++17 where
    available (which it is on all currently checked platforms): if
    not C++14 or C++11 is used if available otherwise C++ is not
    supported.
  * USE_FC_LEN_T is the default: this uses the correct
    (compiler-dependent) prototypes for Fortran BLAS/LAPACK routines
    called from C/C++, and requires adjustment of many such calls -
    see 'Writing R Extensions' SS6.6.1.
  * There is initial support for C++23 as several compilers are now
    supporting -std=c++23 or -std=c++2b or similar.  As for C++20,
    there no additional configure checks for C++23 features beyond a
    check that the compiler reports a __cplusplus value greater than
    that in the C++20 standard.  C++ feature tests should be used.
  * There is support for a package to indicate the version of the C
    standard which should be used to compile it, and for the
    installing user to specify this.  In most cases R defaults to the
    C compiler's default standard which is C17 (a `bug-fix' of C11) -
    earlier versions of R or compilers may have defaulted to C99.
    Current options are:
    USE_C17 Use a standard that is at most C17.  The intention is to
    allow legacy packages to still be installed when later C
    standards become the default, including packages using new
    keywords as identifiers or with K&amp;R-style function
    declarations.  This will use C17 if available, falling back
    to C11.
    USE_C90 Use the C90 (aka C89) standard.  (As that standard did
    not require compilers to identify that version, all we can
    verify is that the compiler does not claim to be using a
    later standard.  It may accept C99 features - for example
    clang accepts // to make comments.)
    USE_C99 Use the C99 standard. This should be rarely needed - it
    avoids the few new features of C11/C17 which can be useful if
    a package assumes them if C17 is specified and they are not
    implemented.
    USE_C23 Use C23 (or in future, later).  Compiler/library support
    for C23 is still being implemented, but LLVM clang from
    15.0.0 and the upcoming GCC 13 have quite extensive support.
    These can be specified as part of the SystemRequirements field in
    the package's DESCRIPTION file or _via_ options --use-C17 and so
    on of R CMD INSTALL and R CMD SHLIB.
    For further details see "Writing R Extensions" SS1.2.5.
  * (Windows) A src/Makefile.ucrt or src/Makefile.win file is now
    included after R_HOME/etcR_ARCH/Makeconf and so no longer needs
    to include that file itself.  Installation of a package with such
    a file now uses a site Makevars file in the same way as a package
    with a src/Makevars.win file would.
  * configure is now passed crucial variables such as CC and CFLAGS
    in its environment, as many packages were not setting them (as
    documented in 'Writing R Extensions' SS1.2).
    This has most effect where configure is used to compile parts of
    the package - most often by cmake or libtool which obfuscate the
    actual compile commands used.
    Also used for configure.win and configure.ucrt on Windows.
  FORTRAN FLAGS:
  * The flag -fno-optimize-sibling-calls is no longer forced for
    gfortran 7 and later.  It should no longer be needed now using
    'hidden' character-length arguments when calling BLAS/LAPACK
    routines from C/C++ is the default even for packages.  (Unless
    perhaps packages call Fortran code from C/C++ without using R's
    headers and without allowing for these arguments.)
  C-LEVEL FACILITIES:
  * The deprecated S-compatibility macros DOUBLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * The deprecated legacy typedefs of Sint and Sfloat in header R.h
    are no longer defined, and that header no longer includes header
    limits.h from C nor climits from C++.
  * New macro CAD5R() is provided in Rinternals.h and used in a few
    places in the R sources.
  * ALTREP now supports VECSXP vectors. Contributed by Gabor Csardi
    in PR#17620.
  * The Rcomplex definition (in header R_ext/Complex.h) has been
    extended to prevent possible mis-compilation when interfacing
    with Fortran (PR#18430).  The new definition causes compiler
    warnings with static initializers such as {1, 2}, which can be
    changed to {.r=1, .i=2}.
    Using the new definition from C++ depends on compiler extensions
    supporting C features that have not been incorporated into the
    C++ standards but are available in g++ and clang++: this may
    result in C++ compiler warnings but these have been worked around
    for recent versions of common compilers (GCC, Apple/LLVM clang,
    Intel).
    It is intended to change the inclusion of header R_ext/Complex.h
    by other R headers, so C/C++ code files which make use of
    Rcomplex should include that header explicitly.
  UTILITIES:
  * R CMD check does more checking of package .Rd files, warning
    about invalid email addresses and (some) invalid URIs and noting
    empty \item labels in description lists.
  * R CMD check now also reports problems when reading package news
    in md (file NEWS.md) and (optionally) plain text (file NEWS)
    formats.
  * _R_CHECK_TIMINGS_ defaults to a value from the environment even
    for R CMD check --as-cran; this allows for exceptionally fast or
    slow platforms.
    It now applies to checking PDF and HTML versions of the manuals,
    and 'checking CRAN incoming feasibility'.
  * R CMD check can optionally (but included in --as-cran) check
    whether HTML math rendering _via_ KaTeX works for the package .Rd
    files.
  * Non-interactive debugger invocations can be trapped by setting
    the environment variable _R_CHECK_BROWSER_NONINTERACTIVE_ to a
    true value.  This is enabled by R CMD check --as-cran to detect
    the use of leftover browser() statements in the package.
  * The use of sprintf and vsprintf from C/C++ has been deprecated in
    macOS 13 and is a known security risk.  R CMD check now reports
    (on all platforms) if their use is found in compiled code:
    replace by snprintf or vsnprintf respectively. [*NB:* whether
    such calls get compiled into the package is platform-dependent.]
  * Where recorded at installation, R CMD check reports the C and
    Fortran compilers used to build R.
    It reports the OS in use (if known, as given by osVersion) as
    well as that R was built for.
    It notes if a C++ standard was specified which is older than the
    current default: many packages have used C++11 to mean 'not
    C++98' - as C++11 is the minimum supported since R 4.0.0, that
    specification can probably be removed.
  * R CMD INSTALL reports the compilers (and on macOS, the SDK) used,
    and this is copied to the output of R CMD check.
    Where a C++ standard is specified, it is reported.
  * R CMD check's 'checking compilation flags in Makevars' has been
    relaxed to accept the use of flags such as -std=f2008 in
    PKG_FFLAGS.
  * tools::buildVignettes() has a new argument skip, which is used by
    R CMD check to skip (and note) vignettes with unavailable
    \VignetteDepends (PR#18318).
  * New generic .AtNames() added to enable class-specific completions
    after @. The formerly internal function findMatches() is now
    exported, mainly for use in methods for .DollarNames() and
    .AtNames().
  DEPRECATED AND DEFUNCT:
  * default.stringsAsFactors() is defunct.
  * Calling as.data.frame.&lt;class&gt;() directly (for 12 atomic classes)
    is going to be formally deprecated, currently activated by
    setting the environment variable
    _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ to non-empty, which also
    happens in R CMD check --as-cran.
  BUG FIXES:
  * Hashed environments with sizes less than 5 can now grow.
    (Reported to R-devel by Duncan Garmonsway.)
  * as.character(&lt;Rd&gt;, deparse = TRUE) failed to re-escape curly
    braces in LaTeX-like text.  (Reported by Hadley Wickham in
    PR#18324.)
  * library() now passes its lib.loc argument when requiring Depends
    packages; reported (with fix) in PR#18331 by Mikael Jagan.
  * R CMD Stangle: improved message about 'Output' files.
  * head(x, n) and tail(x, n) now signal an error if n is not
    numeric, instead of incidentally "working" sometimes returning
    all of x.  Reported and discussed by Colin Fay, in PR#18357.
  * The "lm" method for summary() now gives the correct F-statistic
    when the model contains an offset.  Reported in PR#18008.
  * C() and `contrasts&lt;-`() now preserve factor level names when
    given a function object (as opposed a function name which did
    preserve names). Reported in PR#17616.
  * c(a = 1, 2)[[]] no longer matches 2 but rather signals a
    _classed_ error.  Reported and analysed by Davis Vaughan in
    PR#18367, a duplicate of PR#18004, by Jan Meis et al.  For
    consistency, NULL[[]] is also erroneous now.  x[[]] &lt;- v gives an
    error of the same class "MissingSubscriptError".
  * The relist() function of utils now supports NULL elements in the
    skeleton (PR#15854).
  * ordered(levels = *) (missing x) now works analogously to factor(,
    ordered=TRUE); reported (with fix) by Achim Zeileis in PR#18389.
  * User-defined Rd macro definitions can now span multiple lines,
    thanks to a patch from Duncan Murdoch. Previously, the Rd parser
    silently ignored everything after the first line.
  * Plain-text help (tools::Rd2txt()) now preserves an initial blank
    line for text following description list items.
  * tools::Rd2HTML() and tools::Rd2latex() no longer split \arguments
    and \value lists at Rd comments.
  * tools::Rd2latex() now correctly handles optional text outside
    \items of argument lists as well as bracketed text at the
    beginning of sections, e.g., \value{[NULL]}.
  * as.character(&lt;POSIXt&gt;) now behaves more in line with the methods
    for atomic vectors such as numbers, and is no longer influenced
    by options().  Ditto for as.character(&lt;Date&gt;).  The
    as.character() method gets arguments digits and OutDec with
    defaults _not_ depending on options().  Use of as.character(*,
    format = .) now warns.
  * Similarly, the as.character.hexmode() and *.octmode() methods
    also behave as good citizen methods and back compatibility option
    keepStr = TRUE.
  * The as.POSIXlt(&lt;POSIXlt&gt;) and as.POSIXct(&lt;POSIXct&gt;) default
    methods now do obey their tz argument, also in this case.
  * as.POSIXlt(&lt;Date&gt;) now does apply a tz (time zone) argument, as
    does as.POSIXct(); partly suggested by Roland Fuss on the R-devel
    mailing list.
  * as.Date.POSIXlt(x) now also works when the list components are of
    unequal length, aka "partially filled" or "ragged".
  * expand.model.frame() looked up variables in the wrong environment
    when applied to models fitted without data.  Reported in
    PR#18414.
  * time() now (also) uses the ts.eps = getOption("ts.eps") argument
    and thus by default rounds values very close to the start (or
    end) of a year.  Based on a proposal by Andre"i V. Kostyrka on
    R-help.
  * Printing of a factanal() result with just one factor and sort =
    TRUE now works regularly, fixing PR#17863 by Timothy Bates,
    thanks to the 'R Contributors' working group.
  * Printing 0-length objects of class "factor", "roman", "hexmode",
    "octmode", "person", "bibentry", or "citation" now prints
    something better, one of which fixes PR#18422, reported by
    Benjamin Feakins.
  * Sys.timezone() queries timedatectl only if systemd is loaded;
    addressing a report by Jan Gorecki in PR#17421.
  * The formula method of cor.test() had scoping problems when
    environment(formula) was not the calling environment; reported
    with a patch proposal by Mao Kobayashi in PR#18439.
  * attach() of an environment with active bindings now preserves the
    active bindings.  Reported by Kevin Ushey in PR#18425.
  * BLAS detection now works also with system-provided libraries not
    available as regular files.  This fixes detection of the
    Accelerate framework on macOS since Big Sur.  Reported by David
    Novgorodsky.
  * download.file() gives a helpful error message in case of an
    invalid download.file.method option, thanks to Colin Fay's report
    in PR#18455.
  * Sporadic crashes of Rterm when using completion have been fixed.
  * Rprof() is now more reliable.  A livelock in thread
    initialization with too short sampling interval has been fixed on
    macOS.  A deadlock in using the C runtime has been fixed on
    Windows.  A potential deadlock has been prevented on Unix.
  * Cursor placement in Rgui now works even after a fixed-width font
    is selected.
  * Mandatory options (options()) are now set on startup so that
    saving and restoring them always works (PR#18372).
  * Package installation, R CMD INSTALL or install.packages(*), now
    parses each of the &lt;pkg&gt;/R/*.R files individually instead of
    first concatenating and then parse()ing the large resulting file.
    This allows parser or syntax errors to be diagnosed with correct
    file names and line numbers, thanks to Simon Dedman's report and
    Bill Dunlap's patch in PR#17859.
    This _does_ require syntactically self contained R source files
    now, fixing another inadvertent bug.
  * predict.lm(&lt;model with offset&gt;) now finds the offset in the
    correct environment, thanks to Andr'e Gillibert's report and patch
    in PR#18456.
  * getInitial(&lt;formula&gt;) now finds the selfStart model in the
    correct environment.  (Reported by Ivan Krylov in PR#18368.)
  * Fix for possible segfault when using recently-added graphics
    features, such as gradients, clipping paths, masks, and groups
    with pdf(file=NULL).
  * class(m) &lt;- class(m) no longer changes a matrix m by adding a
    class _attribute_.
  * packageDate(pkg) now only warns once if there is no pkg.
  * When ts() creates a multivariate time series, "mts", it also
    inherits from "array" now, and is.mts() is documented _and_
    stricter.
  * Rd2txt() now preserves line breaks of \verb Rd content and from
    duplicated \cr.  The former also fixes the rendering of verbatim
    output from Rd \Sexpr in plain-text help.
  * uniroot(f, interval) should no longer wrongly converge _outside_
    the interval in some cases where abs(f(x)) == Inf for an x at the
    interval boundary, thanks to posts by Ben Bolker and Serguei
    Sokol on R-devel.
  * Vectorized alpha handling in palette functions such as in gray(),
    rainbow(), or hcl.colors() works correctly now, thanks to Achim
    Zeileis' report and patch in PR#18476.
  * Formatting and print()ing of bibentry objects has dropped the
    deprecated citation.bibtex.max argument, such that the bibtex
    argument's default for print.bibentry() depends directly on the
    citation.bibtex.max option, whereas in format.bibentry() the
    option no longer applies.
  * Attempting to use a character string naming a foreign function
    entry point in a foreign function call in a package will now
    signal an error if the packages has called R_forceSymbols to
    specify that symbols must be used.
  * An error in table() could permanently set options(warn=2)
    promoting all subsequent warnings to errors.
  * The sigma() function gave misleading results for binary GLMs.  A
    new method for objects of class "glm" returns the square root of
    the estimate of the dispersion parameter using the same
    calculation as summary.glm().
  * bs() and ns() in the (typical) case of automatic knot
    construction, when some of the supposedly inner knots coincide
    with boundary knots, now moves them inside (with a warning),
    building on PR#18442 by Ben Bolker.
  * R CMD on Windows now skips the site profile with --no-site-file
    and --vanilla even when R_PROFILE is set (PR#18512, from Kevin
    Ushey).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1686916800">- CHANGES IN R 4.3.1:
  C-LEVEL FACILITIES:
  * The C-level API version of R's integrate(), Rdqags() in Applic.h,
    now returns the correct number of integrand evaluations neval,
    fixing PR#18515 reported and diagnosed by Stephen Wade.
  * The C prototypes for LAPACK calls dspgv and dtptrs in
    R_exts/Lapack.h had one too many and one too few character length
    arguments - but this has not caused any known issues. To get the
    corrected prototypes, include
    [#]include &lt;Rconfig.h&gt; // for PR18534fixed
    [#]ifdef PR18534fixed
    [#] define usePR18534fix 1
    [#]endif
    [#]include &lt;R_exts/Lapack.h&gt;
    in your C/C++ code (PR#18534).
  INSTALLATION:
  * Many of the checks of esoteric Internet operations and those
    using unreliable external sites have been moved to a new target
    that is not run by default and primarily intended for the core
    developers.  To run them use
    cd tests; make test-Internet-dev
  BUG FIXES:
  * .S3methods(), typically called from methods(), again marks
    methods from package base as visible.
    Also, the visibility of non-base methods is again determined by
    the method's presence in search().
  * tools::Rdiff() is now more robust against invalid strings, fixing
    installation tests on Windows without Rtools installed
    (PR#18530).
  * Fix (new) bug in hcl.colors(2, *), by Achim Zeileis (PR#18523).
  * head(., &lt;illegal&gt;) and tail(..) now produce more useful "Error in
    ...." error messages, fixing PR#18362.
  * Package code syntax on Windows is checked in UTF-8 when UTF-8 is
    the native encoding.
  * na.contiguous(x) now also returns the first run, when it is at
    the beginning and there is a later one of the same length;
    reported to R-devel, including a fix, by Georgi Boshnakov.
    Further, by default, it modifies only an existing attr(*,"tsp")
    but otherwise no longer sets one.
  * chol(&lt;not pos.def&gt;, pivot = &lt;T|F&gt;) now gives a correct error or
    warning message (depending on pivot), thanks to Mikael Jagan's
    (PR#18541).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1699012800">- CHANGES IN R 4.3.2:
  NEW FEATURES:
  * The default initialization of the "repos" option from the
    repositories file at startup can be skipped by setting
    environment variable R_REPOSITORIES to NULL such that
    getOption("repos") is empty if not set elsewhere.
  * qr.X() is now an implicit S4 generic in methods.
  * iconv(to = "ASCII//TRANSLIT") is emulated using substitution on
    platforms which do not support it (notably Alpine Linux).  This
    should give a human-readable conversion in ASCII on all platforms
    (rather than NA_character_).
  * trans3d() gains options continuous and verbose addressing the
    problem of possible "wrap around" when projecting too long
    curves, as reported by Achim Zeileis in PR#18537.
  * tools::showNonASCII() has been rewritten to work better on macOS
    14 (which has a changed implementation of iconv()).
  * tiff(type = "quartz") (the default on macOS) now warns if
    compression is specified: it continues to be ignored.
  INSTALLATION on a UNIX-ALIKE:
  * There is some support for building with Intel's LLVM-based
    compilers on x86_64 Linux, such as (C) icx, (C++) ipcx and
    (Fortran) ifx from oneAPI 2023.x.y.
  * There is support for using LLVM's flang-new as the Fortran
    compiler from LLVM 16.0.x (preferably 17.0.0 or later).
  UTILITIES:
  * R CMD check reports the use of the Fortran 90 random number
    generator RANDOM_NUMBER() and the subroutines to initialize it.
    'Writing R Extensions' has example code to use R's RNGs from
    Fortran.
  BUG FIXES:
  * substr(x, n, L) &lt;- cc now works (more) correctly for multibyte
    UTF-8 strings x when L &gt; nchar(x), thanks to a report and patch
    by 'Architect 95'.
  * contrib.url(character()) now returns 0-length character() as
    documented, which also avoids spurious warnings from
    available.packages() et al. in the edge case of an empty vector
    of repository URLs.
  * readChar(., 4e8) no longer fails, thanks to Kodi Arfer's report
    (PR#18557).
  * lapply(&lt;list&gt;, as.data.frame) no longer warns falsely for some
    base vector components.
  * Communication between parent and child processes in the multicore
    part of parallel could fail on platforms that do not support an
    arbitrarily large payload in system functions read()/write() on
    pipes (seen on macOS where a restriction to INT_MAX bytes is
    documented, without doing a partial read unlike Linux). The
    payload is now split into 1Gb chunks to avoid that problem.
    (PR#18571)
  * qqplot(x,y, conf.level=.) gives better confidence bounds when
    length(x) != length(y), thanks to Alexander Ploner's report and
    patch proposal (PR#18557).
  * norm(&lt;0-length&gt;, "2") now gives zero instead of an error, as all
    the other norm types, thanks to Mikael Jagan's PR#18542.
  * Build-stage Rd macros \packageAuthor and \packageMaintainer now
    process Authors@R, fixing NA results when the package DESCRIPTION
    omits Author and Maintainer fields.
  * Formatting and printing complex numbers could give things like
    0.1683-0i because of rounding error: -0i is now replaced by +0i.
  * postscript() refused to accept a title comment containing the
    letter "W" (PR#18599).
  * isoreg(c(1,Inf)) signals an error instead of segfaulting, fixing
    PR#18603.
  * tiff(type = "Xlib") was only outputting the last page of
    multi-page plots.
  * tools::latexToUtf8() again knows about \~{n} and other letters
    with tilde, fixing a regression in R 4.3.0, and about \^{i} as an
    alternative to \^{\i} (similarly with other accents).
    Furthermore, LaTeX codes for accented I letters are now correctly
    converted, also fixing related mistakes in
    tools::encoded_text_to_latex().
  * tar(*, tar = "internal") no longer creates out-of-spec tar files
    in the very rare case of user or group names longer than 32
    bytes, fixing PR#17871 with thanks to Ivan Krylov.
  * When using the "internal" timezone datetime code, adding a
    fraction of a second no longer adds one second, fixing PR#16856
    from a patch by Ivan Krylov.
  * tools::checkRd() no longer produces spurious notes about
    "unnecessary braces" from multi-line Rd results of \Sexpr macros.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1709208000">- CHANGES IN R 4.3.3:
  NEW FEATURES:
  * iconv() now fixes up variant encoding names such as "utf8"
    case-insensitively.
  DEPRECATED AND DEFUNCT:
  * The legacy encoding = "MacRoman" is deprecated in pdf() and
    postscript(): support was incomplete in earlier versions of R.
  BUG FIXES:
  * Arguments are now properly forwarded to methods on S4 generics
    with ... in the middle of their formal arguments. This was broken
    for the case when a method introduced an argument but did not
    include ... in its own formals. Thanks to Herv'e Pag`es for the
    report PR#18538.
  * Some invalid file arguments to pictex(), postscript() and xfig()
    opened a file called NA rather than throw an error.  These
    included postscript(NULL) (which some people expected to work
    like pdf(NULL)).
  * Passing filename = NA to svg(), cairo_pdf(), cairo_ps() or the
    Cairo-based bitmap devices opened a file called NA: it now throws
    an error.
  * quartz(file = NA) opened a file called NA, including when used as
    a Quartz-based bitmap device.  It now gives an error.
  * rank(&lt;long vector&gt;) now works, fixing PR#18617, thanks to Ilia
    Kats.
  * seq.int() did not adequately check its length.out argument.
  * match(&lt;POSIXct&gt;, .) is correct again for differing time zones,
    ditto for "POSIXlt", fixing PR#18618 reported by Bastian Klein.
  * drop.terms(*, dropx = &lt;0-length&gt;) now works, fixing PR#18563 as
    proposed by Mikael Jagan.
  * drop.terms(*) keeps + offset(.) terms when it should, PR#18565,
    and drop.terms() no longer makes up a response, PR#18566, fixing
    both bugs thanks to Mikael Jagan.
  * getS3method("t", "test") no longer finds the t.test() function,
    fixing PR#18627.
  * pdf() and postscript() support for the documented Adobe encodings
    "Greek" and "Cyrilllic" was missing (although the corresponding
    Windows' codepages could be used).
  * Computations of glyph metric information for pdf() and
    postscript() did not take into account that transliteration could
    replace one character by two or more (only seen on macOS 14) and
    typically warned that the information was not known.
  * rank(x) no longer overflows during integer addition, when
    computing rank average for largish but not-yet long vector x,
    fixing PR#18630, thanks to Ilia Kats.
  * list.files() on Windows now returns also files with names longer
    that 260 bytes (the Windows limit is 260 characters).
    Previously, some file names particularly with 'East Asian'
    characters were omitted.
  * cov2cor(&lt;0 x 0&gt;) now works, fixing PR#18423 thanks to Mikael
    Jagan and Elin Waring.
  * cov2cor(&lt;negative diagonal&gt;) and similar now give one warning
    instead of two, with better wording, fixing PR#18424 thanks to
    Mikael Jagan.
  * tools:: startDynamicHelp() now ensures port is in proper range,
    fixing PR#18645.
  * pbeta(x, a,b) is correct now for x=0 or 1 in the boundary cases
    where a or b or both are 0, fixing PR#18672 thanks to Michael
    Fay.
  * pmatch(x, table) for large table, also called for data frame row
    selection, dfrm[nm, ], is now interruptible, fixing PR#18656.
  * predict(&lt;rank-deficient lm&gt;, newdata=*) fix computing of nbasis,
    see Russ Lenth's comment 29 in PR#16158.
  * Added a work-around for a bug in macOS 14.3.1 and higher which
    prevents R plots in the Quartz Cocoa device from updating on
    screen.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1713960000">- CHANGES IN R 4.4.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Startup banners, R --version, sessionInfo() and R CMD check no
    longer report (64-bit) as part of the platform as this is almost
    universal - the increasingly rare 32-bit platforms will still
    report (32-bit).
    On Windows, ditto for window titles.
  * is.atomic(NULL) now returns FALSE, as NULL is not an atomic
    vector.  Strict back-compatibility would replace is.atomic(foo)
    by (is.null(foo) || is.atomic(foo)) but should happen only
    sparingly.
  NEW FEATURES:
  * The confint() methods for "glm" and "nls" objects have been
    copied to the stats package.  Previously, they were stubs which
    called versions in package MASS. The MASS namespace is no longer
    loaded if you invoke (say) confint(glmfit).  Further, the "glm"
    method for profile() and the plot() and pairs() methods for class
    "profile" have been copied from MASS to stats.  (profile.nls()
    and plot.profile.nls() were already in stats.)
  * The confint() and profile methods for "glm" objects have gained a
    possibility to do profiling based on the Rao Score statistic in
    addition to the default Likelihood Ratio. This is controlled by a
    new test = argument.
  * The pairs() method for "profile" objects has been extended with a
    which = argument to allow plotting only a subset of the
    parameters.
  * The "glm" method for anova() computes test statistics and
    p-values by default, using a chi-squared test or an F test
    depending on whether the dispersion is fixed or free.  Test
    statistics can be suppressed by giving argument test a false
    logical value.
  * In setRepositories() the repositories can be set using their
    names via name = instead of index ind =.
  * methods() and .S3methods() gain a all.names option for the (rare)
    case where functions starting with a . should be included.
  * Serializations can now be interrupted (e.g., by Ctrl-C on a
    Unix-alike) if they take too long, e.g., from save.image(),
    thanks to suggestions by Ivan Krylov and others on R-devel.
  * New startup option --max-connections to set the maximum number of
    simultaneous connections for the session.  Defaults to 128 as
    before: allowed values up to 4096 (but resource limits may in
    practice restrict to smaller values).
  * R on Windows (since Windows 10 2004) now uses the new Segment
    Heap allocator. This may improve performance of some
    memory-intensive applications.
  * When R packages are built, typically by R CMD build &lt;pkg&gt;, the
    new --user=&lt;build_user&gt; option overrides the (internally
    determined) user name, currently Sys.info()["user"] or LOGNAME.
    This is a (modified) fulfillment of Will Landau's suggestion in
    PR#17530.
  * tools::testInstalledBasic() gets new optional arguments outDir
    and testSrcdir, e.g., allowing to use it in a &lt;builddir&gt; !=
    &lt;srcdir&gt; setup, and in standard "binary" Windows installation
  * if* a source tests/ folder is present.
  * range(&lt;DT_with_Inf&gt;, finite = TRUE) now work for objects of class
    "Date", "POSIXct", and "POSIXlt" with infinite entries,
    analogously to range.default(), as proposed by Davis Vaughan on
    R-devel.  Other range()-methods can make use of new function
    .rangeNum().
  * New .internalGenerics object complementing .S3PrimitiveGenerics,
    for documentation and low-level book-keeping.
  * grid() now invisibly returns the x- and y- coordinates at which
    the grid-lines were drawn.
  * norm(., type) now also works for complex matrices.
  * kappa(., exact = TRUE, norm = *) now works for all norms and also
    for complex matrices.  In symmetric / triangular cases, the new
    argument uplo = "U" | "L" allows the upper or lower triangular
    part to be specified.
  * memDecompress(type = "unknown") recognizes compression in the
    default 'zlib' format as used by memCompress(type = "gzip").
  * memCompress() and memDecompress() will use the libdeflate library
    (&lt;https://github.com/ebiggers/libdeflate&gt;) if installed.  This
    uses the same type of compression for type = "gzip" but is 1.5-2x
    faster than the system libz library on some common platforms: the
    speed-up may depend on the library version.
  * diff() for objects of class "Date", "POSIXct", and "POSIXlt"
    accepts a units argument passed via ....
  * Dynamic help now does a much better job of rendering package
    DESCRIPTION metadata.
  * Rprof() gains an event argument and support for elapsed (real)
    time profiling on Unix (PR#18076).
  * filled.contour() gains a key.border argument.
  * tools::update_pkg_po() gets arguments pot_make and mo_make for
    _not_ re-making the corresponding files, and additionally a
    verbose argument.
  * Hexadecimal string colour specifications are now accepted in
    short form, so, for example, we can use "#123", which is
    equivalent to "#112233".
    Thanks to MikeFC for the original idea and Ella Kaye, Malcolm
    Barrett, George Stagg, and Hanne Oberman for the patch.
  * Plain-text help shows \var markup by angle brackets.
  * The new experimental primitive function declare() is intended to
    eventually allow information about R code to be communicated to
    the interpreter, compiler, and code analysis tools. The syntax
    for declarations is still being developed.
  * Functions psmirnov(), qsmirnov() and rsmirnov() in package stats
    have had argument two.sided renamed to alternative, to take into
    account that the permutation distributions of the one-sided
    statistics can be different in the case of ties.  Consequence of
    PR#18582.
  * sort() is now an implicit S4 generic in methods.
  * Formatting and printing, format(z), print(z), of complex vectors
    z no longer zap relatively small real or imaginary parts to zero,
    fixing PR#16752.  This is an API change, as it was documented
    previously to round real and imaginary parts together on purpose,
    producing nicer looking output.  As mentioned, e.g. in the PR,
    this change is compatible with many other "R-like" programming
    environments.
    We have simplified the internal code and now basically format the
    real and imaginary parts independently of each other.
  * New experimental functions Tailcall() and Exec() to support
    writing stack-space-efficient recursive functions.
  * Where characters are attempted to be plotted by pdf(),
    postscript() and xfig() which are not in the selected 8-bit
    character set (most often Latin-1) and the R session is using a
    UTF-8 locale, the warning messages will show the UTF-8 character
    rather than its bytes and one dot will be substituted per
    character rather than per byte.  (Platforms whose iconv() does
    transliteration silently plot the transliteration.)
    In a UTF-8 locale some transliterations are now done with a
    warning (e.g., dashes and Unicode minus to hyphen, ligatures are
    expanded, permille (‰) is replaced by o/oo), although the OS may
    have got there first.  These are warnings as they will continue
    to be replaced by dots in earlier versions of R.
  * The matrix multiplication functions crossprod() and tcrossprod()
    are now also primitive and S3 generic, as %*% had become in R
    4.3.0.
  * source() and example() have a new optional argument catch.aborts
    which allows continued evaluation of the R code after an error.
  * The non-Quartz tiff() devices allow additional types of
    compression if supported by the platform's libtiff library.
  * The list of base and recommended package names is now provided by
    tools::standard_package_names().
  * cairo_pdf() and cairo_ps() default to onefile = TRUE to closer
    match pdf() and postscript().
  * New option catch.script.errors provides a documented way to catch
    errors and then continue in non-interactive use.
  * L %||% R newly in base is an expressive idiom for the phrases
    if(!is.null(L)) L else R or if(is.null(L)) R else L.
  * The return value from warnings() now always inherits from
    "warnings" as documented, now also in the case of no warnings
    where it previously returned NULL.
  * as.complex("1i") now returns 0 + 1i instead of NA with a warning.
  * z &lt;- c(NA, 1i) now keeps the imaginary part Im(z[1]) == 0, no
    longer coercing to NA_complex_.  Similarly, cumsum(z) correctly
    sums real and imaginary parts separately, i.e., without
    "crosstalk" in case of NAs.
  * On Alpine Linux iconv() now maps "latin2", "latin-2", "latin9"
    and "latin-9" to encoding names the OS knows about
    (case-insensitively).
  * iconv(sub = "Unicode") now always zero-pads to four (hex) digits,
    rather than to 4 or 8.  (This seems to have become the convention
    once Unicode restricted the number of Unicode points to 2^21 - 1
    and so will never need more than 6 digits.)
  * NCOL(NULL) now returns 0 instead of 1, for consistency with
    cbind().
  * The information for the Euro glyph missing from the Adobe .afm
    files for the Courier, Helvetica and Times families has been
    copied from their URW equivalents - this will improve vertical
    centring in the pdf() and postscript() devices.
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.12.0.  The changes are almost entirely cosmetic.
  * The included LAPACK sources have been updated to version 3.12.0
    and some further double-complex routines added.
  * There are new font families for the 2014--5 URW 2.0 fonts (see
    ?pdf) which are included in recent versions of Ghostscript.
    These have font widths for most Greek glyphs and a few others
    which were missing from the original versions (whose font
    families remain available for reproducibility, although
    Ghostscript-based viewers will render using the 2.0 versions).
  * Improve the large-n efficiency of as.matrix(&lt;dist&gt;), thanks an R
    contributors effort, notably by Tim Taylor and Heather Turner,
    see PR#18660.
  * The default and numeric methods of all.equal() get a check.class
    option.
  * zapsmall() gets new optional arguments, function mFUN and min.d,
    for extra flexibility; fulfills a wish in PR#18199.  Also, it is
    now an implicit S4 generic in package methods.
  * The Rd filter for aspell() gains an ignore argument.
  * New generic function sort_by(), primarily useful for the
    data.frame method which can be used to sort rows of a data frame
    by one or more columns.
  * The icence headers for the RPC code in src/extra/xdr have been
    updated to use the GPL-compatible licence published by Oracle
    America in 2010.
  * New function pkg2HTML() in tools to create single-page HTML
    reference manuals for R packages.
  * The byte code evaluator now uses less C stack space for recursive
    calls to byte-compiled functions. It also makes more of an effort
    to avoid allocations for scalar return values.
  * New completion option backtick (disabled by default) allows
    non-syntactic completions to be wrapped in backquotes. This is
    currently only useful for Jupyter notebooks via the IRkernel
    package, and may cause problems for other backends.
  INSTALLATION:
  * The parser has been updated to work with bison 3.8.2, which is
    now used for the pre-generated parsers in gram.c, file.c, and
    gramRd.c. A few parser error messages have changed, which may
    affect code that relies on exact messages.
  INSTALLATION on a UNIX-ALIKE:
  * System valgrind headers are now required to use configure option
  - -with-valgrind-instrumentation with value 1 or 2.
  * configure will warn if it encounters a 32-bit build, as that is
    nowadays almost untested.
  * Environment variable R_SYSTEM_ABI is no longer used and so no
    longer recorded in etc/Renviron (it was not on Windows and was
    only ever used when preparing package tools).
  * If the libdeflate library and headers are available, libdeflate
    rather than libz is used to (de)compress R objects in lazy-load
    databases.  Typically tasks spend up to 5% of their time on such
    operations, although creating lazy-data databases is one of the
    exceptions.
    This can be suppressed if the library is available by the
    configure option --without-libdeflate-compression.
  * configure option --enable-lto=check has not worked reliably since
    2019 and has been removed.
  * The minimum autoconf requirement for a maintainer build has been
    increased to autoconf 2.71.
    It is intended to increase this to 2.72 for R 4.5.0: the
    distributed configure file was generated using 2.72.
  * The minimum version requirement for an external LAPACK has been
    reduced to 3.9.0.
  * No default C++ compiler is set if no C++17 compiler is detected:
    there is no longer an automatic fallback to C++14 or C++11.
    Compilers from the last five years should have sufficient
    support: for others macros CXX and CXXSTD can be set in file
    config.site to provide a fallback if needed.
    The Objective-C++ compiler now by default uses the standard
    selected by R for C++ (currently C++17) rather than the default
    standard for the C++ compiler (which on macOS is still C++98).
  INSTALLATION on macOS:
  * A new configure option --with-newAccelerate makes use of Apple's
    'new' BLAS / LAPACK interfaces in their Accelerate framework.
    Those interfaces are only available in macOS 13.3 or later, and
    building requires SDK 13.3 or later (from the Command Line Tools
    or Xcode 14.3 or later).
    By default the option uses new Accelerate for BLAS calls: to also
    use it for LAPACK use option --with-newAccelerate=lapack.  The
    later interfaces provide LAPACK 3.9.1 rather than 3.2.1: 3.9.1 is
    from 2021-04 and does not include the improved algorithms
    introduced in LAPACK 3.10.0 (including for BLAS calls).
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools44, an update of the Rtools43 toolchain.  It is
    based on GCC 13 and newer versions of MinGW-W64, binutils and
    libraries (targeting 64-bit Intel CPUs).  R-devel can no longer
    be built using Rtools43 without changes.
  * Rtools44 has experimental support for 64-bit ARM (aarch64) CPUs
    _via_ the LLVM 17 toolchain using lld, clang/flang-new and
    libc++.
  UTILITIES:
  * R CMD check notes when S4-style exports are used without
    declaring a strong dependence on package methods.
  * tools::checkRd() (used by R CMD check) detects more problems with
    \Sexpr-based dynamic content, including bad nesting of \Sexprs
    and invalid arguments.
  * tools::checkRd() now reports Rd titles and section names ending
    in a period; this is ignored by R CMD check unless environment
    variable _R_CHECK_RD_CHECKRD_MINLEVEL_ is set to -5 or smaller.
  * R CMD check now notes Rd files without an \alias, as long
    documented in 'Writing R Extensions' §1.3.1.  The check for a
    missing \description has been moved from tools::checkRd() to
    tools::checkRdContents().
  * R CMD check now visits inst/NEWS.Rd and OS-specific man
    subdirectories when checking Rd files.
  * tools::checkDocFiles() and tools::checkRdContents() now also
    check internal Rd files by default, but "specially" (ignoring
    missing documentation of arguments).
  * R CMD Rdiff gets option --useEx.
  * R CMD check now warns on non-portable uses of Fortran KIND such
    as INTEGER(KIND=4) and REAL(KIND=8).
    To see the failing lines set environment variable
    _R_CHECK_FORTRAN_KIND_DETAILS_ to a true value.
  * When checking Rd files, R CMD check now notes some of the "lost
    braces" that tools::checkRd() finds.  Typical problems are Rd
    macros missing the initial backslash (e.g., code{...}), in-text
    set notation (e.g., {1, 2}, where the braces need escaping), and
    \itemize lists with \describe-style entries of the form
    \item{label}{description}.
  * R CMD INSTALL (and hence check) will compile C++ code with
  - DR_NO_REMAP if environment variable _R_CXX_USE_NO_REMAP_ is set
    to a true value.  It is planned that this will in future become
    the default for compiling C++.
  * The new built-in Rd macro \dontdiff{} can be used to mark example
    code whose output should be ignored when comparing check output
    to reference output (tests/Examples/&lt;pkg&gt;-Ex.Rout.save).  The
    \dontdiff tag, like \donttest, is _not_ shown on the rendered
    help page, so provides a clean alternative to ##
    IGNORE_RDIFF_(BEGIN|END) comments.
  * R CMD build when there is no NAMESPACE, now uses the recommended
    exportPattern("^[^.]"), instead of exporting everything.
  * R CMD check now warns about non-ASCII characters in the NAMESPACE
    file (in addition to R files). Such packages are not portable and
    may fail to install on some platforms.
  C-LEVEL FACILITIES:
  * Headers R_ext/Applic.h and R-ext/Linpack.h used to include
    R_ext/BLAS.h although this was undocumented and unneeded by their
    documented entry points.  They no longer do so.
  * New function R_missing(), factored out from do_missing(), used to
    fix PR#18579.
  * SEXP type S4SXP has been renamed to OBJSXP to support
    experimenting with alternative object systems.  The S4SXP value
    can still be used in C code but is now deprecated.  Based on
    contributions from the R Consortium's Object-Oriented Programming
    Working Group.
  * New function pow1p(x,y) for accurate (1+x)^y.
  * mkCharLenCE was incorrectly documented to take a size_t length
    but was implemented with int (and character strings in R are
    limited to 2^31 - 1 bytes).
  DEPRECATED AND DEFUNCT:
  * data() no longer handles zipped data from long-defunct (since R
    2.13.0) --use-zip-data installations.
  * The legacy graphics devices pictex() and xfig() are now
    deprecated.  They do not support recent graphics enhancements and
    their font handling is rudimentary. The intention is to retain
    them for historical interest as long as they remain somewhat
    functional.
  * Support for encoding = "MacRoman" has been removed from the pdf()
    and postscript() devices - this was a legacy encoding supporting
    classic macOS up to 2001 and no longer has universal libiconv
    support.
  * is.R() is deprecated as no other S dialect is known to be in use
    (and this could only identify historical dialects, not future
    ones).
    Further information on calls can be obtained by setting the
    environment variable _R_DEPRECATED_IS_R_ to error which turns the
    deprecation warning into an error and so by default gives a
    traceback.  (This is done by R CMD check --as-cran.)
  * UseMethod() no longer forwards local variables assigned in the
    generic function into method call environments before evaluating
    the method body. This makes method calls behave more like
    standard function calls and makes method code easier to analyze
    correctly.
  * The twelve as.data.frame.&lt;class&gt;() methods which were deprecated
    only via _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ and in R CMD
    check --as-cran are formally deprecated now in favour of calling
    as.data.frame() or as.data.frame.vector().  The deprecation
    "check" now works also when as.data.frame() is S4 generic thanks
    to Ivan Krylov.
  * The default method for the directional comparison operators &lt;, &gt;,
    &lt;=, and &gt;= now signals an error when one of the operands is a
    language object, i.e. a symbol or a call.
  * For terms.formula(), deprecate abb and neg.out arguments
    _formally_ in addition to just documenting it.
  BUG FIXES:
  * The methods package is more robust to not being attached to the
    search path.  More work needs to be done.
  * pairwise.t.test() misbehaved when subgroups had 0 DF for
    variance, even with pool.sd = TRUE.  (PR#18594 by Jack Berry).
  * Probability distribution functions [dpq]&lt;distrib&gt;(x, *), but also
    bessel[IKJY](x, .) now consistently preserve attributes(x) when
    length(x) == 0, e.g., for a 2 x 0 matrix, thanks to Karolis
    Koncevičius' report PR#18509.
  * Group "Summary" computations such as sum(1:3, 4, na.rm = 5, NA,
    7, na.rm = LL) now give an error instead of either 17 or NN for
    LL true or false, as proposed by Ivan Krylov on the R-devel
    mailing list.  (This also means it is now an error to specify
    na.rm more than once.)
  * as.complex(x) now returns complex(real = x, imaginary = 0) for
    _all_ numerical and logical x, notably also for NA or
    NA_integer_.
  * Directories are now omitted by file.copy(, recursive = FALSE) and
    in file.append() (PR#17337).
  * gsub() and sub() are now more robust to integer overflow when
    reporting errors caused by too large input strings (PR#18346).
  * Top-level handlers are now more robust to attempts to remove a
    handler whilst handlers are running (PR#18508).
  * The handling of Alt+F4 in dialogs created on Windows using
    GraphApp has been fixed (PR#13870).
  * density() more consistently computes grid values for the
    FFT-based convolution, following Robert Schlicht's analysis and
    proposal in PR#18337, correcting density values typically by a
    factor of about 0.999.  Argument old.coords = TRUE provides back
    compatibility.
  * palette.colors() gains a name argument that defaults to FALSE
    controlling whether the vector of colours that is returned has
    names (where possible).  PR#18529.
  * tools::xgettext() no longer extracts the (non-translatable) class
    names from warningCondition and errorCondition calls.
  * S3method(&lt;gen&gt;, &lt;class&gt;, &lt;func&gt;) in the NAMESPACE file now works
    (again) when &lt;func&gt; is visible from the namespace, e.g.,
    imported, or in base.
  * getParseData(f) now also works for a function defined in the
    first of several &lt;pkg&gt;/R/*.R source files, thanks to Kirill
    Müller's report and Duncan Murdoch's patch in PR#16756.
  * Rd \Sexpr macros with nested #ifdef conditionals were not
    processed.
  * A non-blocking connection with non-default encoding (such as a
    socket) now correctly returns from readLines() after new data has
    arrived also when its EOF had been reached previously.  Thanks to
    Peter Meilstrup's report on R-devel and Ivan Krylov's report and
    patch proposal in PR#18555.
  * tools::checkRdContents() failed to detect empty argument
    descriptions when they spanned multiple lines, including those
    generated by prompt().  These cases are now noted by R CMD check.
  * Plain-text help no longer outputs spurious colons in the
    arguments list (for multi-line \item labels in the Rd source).
  * kappa() and rcond() work correctly in more cases; kappa(., norm =
    "2") now warns that it computes the 1-norm with (default) exact =
    FALSE; prompted by Mikael Jagan's quite comprehensive PR#18543.
  * Rd skeletons generated by prompt() or promptData() now use a
    dummy title (so R CMD build works).  tools::checkRdContents() has
    been updated to detect such template leftovers, including from
    promptPackage().
  * When S4 method dispatch fails because no method was found, the
    error message now includes the signature argument names; thanks
    to Michael Chirico's proposal on the R-devel list.
  * withAutoprint({ .. }) now preserves srcrefs previously lost,
    thanks to Andrew Simmons' report plus fix in PR#18572.
  * transform.data.frame() no longer adjusts names; in particular,
    untransformed variables are kept as-is, including those with
    syntactically invalid names (PR#17890).
  * The keep.source option for Rd \Sexpr blocks is no longer ignored.
  * The formula methods for t.test() and wilcox.test() now catch when
    paired is passed, addressing PR#14359; use Pair(x1, x2) ~ 1 for a
    paired test.
  * The level reported in the browser prompt was often too large. It
    now shows the number of browser contexts on the stack.
  * For cbind() and rbind(), the optional deparse.level argument is
    now properly passed to methods, thanks to Mikael Jagan's PR#18579
    and comments there.
  * Some error and warning messages for large ('long vector')
    matrix(v, nr, nc) and dim(m) &lt;- d are now correct about sizes,
    using long long formatting, fixing PR#18612 (and more) reported
    by Mikael Jagan.
  * readChar(useBytes = TRUE) now terminates strings even when the
    underlying connection uses extra spaces in the input buffer.
    This fixes problems with extra garbage seen with gzip
    connections, PR#18605.
  * Named capture in PCRE regular expressions now works also with
    more than 127 named groups (PR#18588).
  * Datetime functions are now robust against long jumps when dealing
    with internal time zone changes.  This avoids confusing warnings
    about an invalid time zone, previously triggered by turning
    warnings into errors or handling them via tryCatch (PR#17966,
    PR#17780).
  * Datetime functions now restore even an empty TZ environment
    variable after internal time zone changes (PR#17724).  This makes
    results of datetime functions with this (typically unintentional)
    setting more predictable.
  * drop.terms(*) now drops response as by default, keep.response =
    FALSE, fixing PR#18564 thanks to Mikael Jagan.
  * dummy.coef(.) now also works for lm()-models with character
    categorical predictor variables rather than factor ones, fixing
    PR#18635 reported by Jinsong Zhao.
  * formals(f) &lt;- formals(f) now also works for a function w/o
    arguments and atomic _constant_ body(f).
  * Correct as.function(&lt;invalid list&gt;, .)'s error message.
  * removeSource() is yet more thorough in finding and removing
    "srcref" and the other source references from parsed R language
    chunks, fixing PR#18638 thanks to Andrew Simmons.
  * dgeom() is more accurate now, notably when its result is very
    small, fixing PR#18642 thanks to the proposal of Morten Welinder,
    also improving other instances where C level binom_raw(x, n, ..)
    has x == 0 or x== n.
  * warning() with options(warn = 1) has improved output for
    multi-line messages.
  * axis.Date() and axis.POSIXct() now respect the par("lab") setting
    for the number of pretty() intervals.
  * Comparisons for language objects (which are based on deparsing)
    are now more careful about using accurate deparsed results
    (PR#18676).
  * Plain-text help (Rd2txt) now correctly preserves blank lines
    following single-line \dontrun code.
  * &lt;POSIXlt&gt;[*] no longer sets wrong "balanced" attribute, fixing
    PR#18681 thanks to Mikael Jagan.
  * str(&lt;classed-call&gt;) now deparses the call as expected, fixing
    PR#18684, reported by Dave Slager.
  * In Rd examples, code following the closing brace of a \dontrun,
    \dontshow or \donttest tag on the same line is no longer skipped
    when R CMD check runs the examples.
  * as.data.frame(matrix(*, ncol=0)) now gets valid names() and
    colnames(); reported by Davis Vaughan on the R-devel list.
  * Internal Mathlib function stirlerr(n) is now almost fully
    (52-bit) accurate for all n &gt;= ~5.9 and more accurate also in the
    range 1 -- 5.9.  This entails small ("after 12th decimal")
    changes in density functions, e.g., dgamma() in _some_ regions of
    their support.  The fix was partly prompted by Morten Welinder's
    PR#18640.
  * Numbers like 9876543.2 are now considered non-integer by Mathlib
    internal R_nonint(), amending original fix of PR#15734.
  * Rd comment lines no longer cause broken paragraphs in the
    rendered PDF and plain-text help. In code blocks, pure comment
    lines (starting with %) no longer produce an empty line.
  * xtabs(Freq ~ .) now consistently defaults to na.action = na.pass,
    using na.rm = FALSE (added as an argument) when summing over Freq
    (PR#17770).
  * tools::testInstalledPackage() is no longer silent about failures
    from running examples or tests and its return code no longer
    ignores failures from checking vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1718366400">- CHANGES IN R 4.4.1:
  C-LEVEL FACILITIES:
  * Functions R_atof and R_strtod declared in header R_ext/Utils.h
    are now documented in 'Writing R Extensions' and so formally part
    of the API.
  * The non-API entry points Rf_setSVector, Rf_StringFalse,
    Rf_StringTrue and Rf_isBlankString have been added to those
    reported by R CMD check.
  * The new function Rf_allocLang is now available. This provides an
    alternative to the idiom of calling Rf_allocList followed by
    SET_TYPEOF.
  UTILITIES:
  * R CMD check now reports as warnings what gfortran calls 'Fortran
    2018 deleted features', all of which have long been marked as
    'obsolescent' and some of which were deleted in Fortran 2008 or
    earlier.  Fortran compilers are no longer required to support
    these.
  BUG FIXES:
  * as.numeric(), scan(), type.convert() and other places which use
    the internal C function R_strtod now require a _non-empty_ digit
    sequence in a decimal or binary exponent.  This aligns with the
    C/POSIX standard for strtod and with ?NumericConstants.
  * as.data.frame(m, make.names=NA) now works correctly for a matrix
    m with NA's in row names.
  * The error message from &lt;POSIXlt&gt;[["hour"]] and similar now
    mentions *[[, "hour"]], as wished for in PR#17409 and proposed by
    Michael Chirico.
  * qbinom() and potentially qpois(), qnbinom(), no longer sometimes
    fail accurate inversion (of pbinom(), etc), thanks to Christopher
    Chang's report and patch in PR#18711.
  * The internal help server on Windows can again serve requests sent
    in quick succession, fixing a regression in R 4.4.0.
  * debugcall(&lt;S3Generic&gt;()) now also works when a corresponding
    S4-generic version is in the methods cache (PR#18143).
  * Package tools' toTitleCase(ch0) now returns character(0) when ch0
    is of zero length; fixing PR#18724, reported by David Hugh Jones.
  * R CMD check is no longer broken (without a check result and no
    explanation in 00check.log) for a package which declares an
    invalid VignetteBuilder in DESCRIPTION but has no vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1730376000">- CHANGES IN R 4.4.2:
  C-LEVEL FACILITIES:
  * The S-compatibility macros F77_COM and F77_COMDECL defined in
    header R_ext/RS.h are deprecated and will be removed shortly.  We
    could find no record of their use.
  BUG FIXES:
  * Mathlib function lgammacor(x) no longer warns about underflow to
    zero for large x.
  * Text widths and heights were incorrectly reported by the Quartz
    device if the drawing context didn't exist yet (typically when
    drawing off-screen to a window that is yet to appear, see
    PR#18591).
  * The Quartz device could segfault in cases where paths with spaces
    are used in the new glyph drawing API.  Thanks to Tomek
    Gieorgijewski (PR#18758).
  * On macOS in R CRAN builds, it is again possible to read
    little-endian UTF-16 text with a BOM from a connection using
    encoding="UTF-16".  Users building R from source should avoid
    using the system libiconv in macOS 14.1 and later.
  * methods' internal .requirePackage() now re-enables primitive
    method dispatch when needed; thanks to Ivan Krylov for
    demystifying CRAN package check failures on the R-devel mailing
    list.</changelog>
</package>
<package pkgid="a433ce976aaf94669f3a0b0510430136b585b71069ba819f8db4dbc3d9f6d22ff992cf3a1db4ab19044c63ad49504ce163a23eb4002e029d66eeede09a78411c" name="R-nlme-debuginfo" arch="x86_64">
  <version epoch="0" ver="3.1.166" rel="51.0.2.2.sr20241103"/>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1620302400">- To get in sync with d:l:R:autoCRAN the Matrix package's split
  in -devel was reversed.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339200">- improved spec file according to comments of dimstar in
  https://build.opensuse.org/request/show/892685</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339201">- CHANGES IN R 4.1.0:
  FUTURE DIRECTIONS:
  * It is planned that the 4.1.x series will be the last to support
    32-bit Windows, with production of binary packages for that
    series continuing until early 2023.
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Data set esoph in package datasets now provides the correct
    numbers of controls; previously it had the numbers of cases added
    to these.  (Reported by Alexander Fowler in PR#17964.)
  NEW FEATURES:
  * www.omegahat.net is no longer one of the repositories known by
    default to setRepositories().  (Nowadays it only provides source
    packages and is often unavailable.)
  * Function package_dependencies() (in package tools) can now use
    different dependency types for direct and recursive dependencies.
  * The checking of the size of tarball in R CMD check --as-cran
    &lt;pkg&gt; may be tweaked via the new environment variable
    _R_CHECK_CRAN_INCOMING_TARBALL_THRESHOLD_, as suggested in
    PR#17777 by Jan Gorecki.
  * Using c() to combine a factor with other factors now gives a
    factor, an ordered factor when combining ordered factors with
    identical levels.
  * apply() gains a simplify argument to allow disabling of
    simplification of results.
  * The format() method for class "ftable" gets a new option justify.
    (Suggested by Thomas Soeiro.)
  * New ...names() utility.  (Proposed by Neal Fultz in PR#17705.)
  * type.convert() now warns when its as.is argument is not
    specified, as the help file always said it _should_.  In that
    case, the default is changed to TRUE in line with its change in
    read.table() (related to stringsAsFactor) in R 4.0.0.
  * When printing list arrays, classed objects are now shown _via_
    their format() value if this is a short enough character string,
    or by giving the first elements of their class vector and their
    length.
  * capabilities() gets new entry "Rprof" which is TRUE when R has
    been configured with the equivalent of --enable-R-profiling (as
    it is by default).  (Related to Michael Orlitzky's report
    PR#17836.)
  * str(xS4) now also shows extraneous attributes of an S4 object
    xS4.
  * Rudimentary support for vi-style tags in rtags() and R CMD rtags
    has been added.  (Based on a patch from Neal Fultz in PR#17214.)
  * checkRdContents() is now exported from tools; it and also
    checkDocFiles() have a new option chkInternal allowing to check
    Rd files marked with keyword "internal" as well.  The latter can
    be activated for R CMD check via environment variable
    _R_CHECK_RD_INTERNAL_TOO_.
  * New functions numToBits() and numToInts() extend the raw
    conversion utilities to (double precision) numeric.
  * Functions URLencode() and URLdecode() in package utils now work
    on vectors of URIs.  (Based on patch from Bob Rudis submitted
    with PR#17873.)
  * path.expand() can expand ~user on most Unix-alikes even when
    readline is not in use.  It tries harder to expand ~, for example
    should environment variable HOME be unset.
  * For HTML help (both dynamic and static), Rd file links to help
    pages in external packages are now treated as references to
    topics rather than file names, and fall back to a file link only
    if the topic is not found in the target package. The earlier rule
    which prioritized file names over topics can be restored by
    setting the environment variable _R_HELP_LINKS_TO_TOPICS_ to a
    false value.
  * c() now removes NULL arguments before dispatching to methods,
    thus simplifying the implementation of c() methods, _but_ for
    back compatibility keeps NULL when it is the first argument.
    (From a report and patch proposal by Lionel Henry in PR#17900.)
  * Vectorize()'s result function's environment no longer keeps
    unneeded objects.
  * Function ...elt() now propagates visibility consistently with
    ..n.  (Thanks to Lionel Henry's PR#17905.)
  * capture.output() no longer uses non-standard evaluation to
    evaluate its arguments.  This makes evaluation of functions like
    parent.frame() more consistent.  (Thanks to Lionel Henry's
    PR#17907.)
  * packBits(bits, type="double") now works as inverse of
    numToBits().  (Thanks to Bill Dunlap's proposal in PR#17914.)
  * curlGetHeaders() has two new arguments, timeout to specify the
    timeout for that call (overriding getOption("timeout")) and TLS
    to specify the minimum TLS protocol version to be used for
    https:// URIs (_inter alia_ providing a means to check for sites
    using deprecated TLS versions 1.0 and 1.1).
  * For nls(), an optional constant scaleOffset may be added to the
    denominator of the relative offset convergence test for cases
    where the fit of a model is expected to be exact, thanks to a
    proposal by John Nash.  nls(*, trace=TRUE) now also shows the
    convergence criterion.
  * Numeric differentiation _via_ numericDeriv() gets new optional
    arguments eps and central, the latter for taking central divided
    differences.  The latter can be activated for nls() via
    nls.control(nDcentral = TRUE).
  * nls() now passes the trace and control arguments to getInitial(),
    notably for all self-starting models, so these can also be fit in
    zero-noise situations via a scaleOffset.  For this reason, the
    initial function of a selfStart model must now have ... in its
    argument list.
  * bquote(splice = TRUE) can now splice expression vectors with
    attributes: this makes it possible to splice the result of
    parse(keep.source = TRUE).  (Report and patch provided by Lionel
    Henry in PR#17869.)
  * textConnection() gets an optional name argument.
  * get(), exists(), and get0() now signal an error if the first
    argument has length greater than 1.  Previously additional
    elements were silently ignored.  (Suggested by Antoine Fabri on
    R-devel.)
  * R now provides a shorthand notation for creating functions, e.g.
    \(x) x + 1 is parsed as function(x) x + 1.
  * R now provides a simple native forward pipe syntax |&gt;.  The
    simple form of the forward pipe inserts the left-hand side as the
    first argument in the right-hand side call.  The pipe
    implementation as a syntax transformation was motivated by
    suggestions from Jim Hester and Lionel Henry.
  * all.equal(f, g) for functions now by default also compares their
    environment(.)s, notably via new all.equal method for class
    function.  Comparison of nls() fits, e.g., may now need
    all.equal(m1, m2, check.environment = FALSE).
  * .libPaths() gets a new option include.site, allowing to _not_
    include the site library.  (Thanks to Dario Strbenac's suggestion
    and Gabe Becker's PR#18016.)
  * Lithuanian translations are now available.  (Thanks to Rimantas
    Zakauskas.)
  * names() now works for DOTSXP objects.  On the other hand, in
    R-lang, the R language manual, we now warn against relying on the
    structure or even existence of such dot-dot-dot objects.
  * all.equal() no longer gives an error on DOTSXP objects.
  * capabilities("cairo") now applies only to the file-based devices
    as it is now possible (if very unusual) to build R with Cairo
    support for those but not for X11().
  * There is optional support for tracing the progress of
    loadNamespace() - see its help.
  * (Not Windows.)  l10n_info() reports an additional element, the
    name of the encoding as reported by the OS (which may differ from
    the encoding part (if any) of the result from
    Sys.getlocale("LC_CTYPE").
  * New function gregexec() which generalizes regexec() to find _all_
    disjoint matches and well as all substrings corresponding to
    parenthesized subexpressions of the given regular expression.
    (Contributed by Brodie Gaslam.)
  * New function charClass() in package utils to query the
    wide-character classification functions in use (such as
    iswprint).
  * The names of quantile()'s result no longer depend on the global
    getOption("digits"), but quantile() gets a new optional argument
    digits = 7 instead.
  * grep(), sub(), regexp and variants work considerably faster for
    long factors with few levels.  (Thanks to Michael Chirico's
    PR#18063.)
  * Provide grouping of x11() graphics windows within a window
    manager such as Gnome or Unity; thanks to a patch by Ivan Krylov
    posted to R-devel.
  * The split() method for class data.frame now allows the f argument
    to be specified as a formula.
  * sprintf now warns on arguments unused by the format string.
  * New palettes "Rocket" and "Mako" for hcl.colors() (approximating
    palettes of the same name from the 'viridisLite' package).
    Contributed by Achim Zeileis.
  * The base environment and its namespace are now locked (so one can
    no longer add bindings to these or remove from these).
  * Rterm handling of multi-byte characters has been improved,
    allowing use of such characters when supported by the current
    locale.
  * Rterm now accepts ALT+ +xxxxxxxx sequences to enter Unicode
    characters as hex digits.
  * Environment variable LC_ALL on Windows now takes precedence over
    LC_CTYPE and variables for other supported categories, matching
    the POSIX behaviour.
  * duplicated() and anyDuplicated() are now optimized for integer
    and real vectors that are known to be sorted via the ALTREP
    framework. Contributed by Gabriel Becker via PR#17993.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 14
    and so packages that provide graphics devices should be
    reinstalled.
  * Graphics devices should now specify deviceVersion to indicate
    what version of the graphics engine they support.
  * Graphics devices can now specify deviceClip.  If TRUE, the
    graphics engine will never perform any clipping of output itself.
    The clipping that the graphics engine does perform (for both
    canClip = TRUE and canClip = FALSE) has been improved to avoid
    producing unnecessary artifacts in clipped output.
  * The grid package now allows gpar(fill) to be a linearGradient(),
    a radialGradient(), or a pattern().  The viewport(clip) can now
    also be a grob, which defines a clipping path, and there is a new
    viewport(mask) that can also be a grob, which defines a mask.
    These new features are only supported so far on the Cairo-based
    graphics devices and on the pdf() device.
  * (Not Windows.)  A warning is given when a Cairo-based type is
    specified for a png(), jpeg(), tiff() or bmp() device but Cairo
    is unsupported (so type = "Xlib" is tried instead).
  * grSoftVersion() now reports the versions of FreeType and
    FontConfig if they are used directly (not _via_ Pango), as is
    most commonly done on macOS.
  C-LEVEL FACILITIES:
  * The _standalone_ libRmath math library and R's C API now provide
    log1pexp() again as documented, and gain log1mexp().
  INSTALLATION on a UNIX-ALIKE:
  * configure checks for a program pkgconf if program pkg-config is
    not found.  These are now only looked for on the path (like
    almost all other programs) so if needed specify a full path to
    the command in PKG_CONFIG, for example in file config.site.
  * C99 function iswblank is required - it was last seen missing ca
    2003 so the workaround has been removed.
  * There are new configure options --with-internal-iswxxxxx,
  - -with-internal-towlower and --with-internal-wcwidth which allows
    the system functions for wide-character classification,
    case-switching and width (wcwidth and wcswidth) to be replaced by
    internal ones.  The first has long been used on macOS, AIX (and
    Windows) but this enables it to be unselected there and selected
    for other platforms (it is the new default on Solaris).  The
    second is new in this version of R and is selected by default on
    macOS and Solaris.  The third has long been the default and
    remains so as it contains customizations for East Asian
    languages.
    System versions of these functions are often minimally
    implemented (sometimes only for ASCII characters) and may not
    cover the full range of Unicode points: for example Solaris (and
    Windows) only cover the Basic Multilingual Plane.
  * Cairo installations without X11 are more likely to be detected by
    configure, when the file-based Cairo graphics devices will be
    available but not X11(type = "cairo").
  * There is a new configure option --with-static-cairo which is the
    default on macOS.  This should be used when only static cairo
    (and where relevant, Pango) libraries are available.
  * Cairo-based graphics devices on platforms without Pango but with
    FreeType/FontConfig will make use of the latter for font
    selection.
  LINK-TIME OPTIMIZATION on a UNIX-ALIKE:
  * Configuring with flag --enable-lto=R now also uses LTO when
    installing the recommended packages.
  * R CMD INSTALL and R CMD SHLIB have a new flag --use-LTO to use
    LTO when compiling code, for use with R configured with
  - -enable-lto=R.  For R configured with --enable-lto, they have
    the new flag --no-use-LTO.
    Packages can opt in or out of LTO compilation _via_ a UseLTO
    field in the DESCRIPTION file.  (As usual this can be overridden
    by the command-line flags.)
  BUILDING R on Windows:
  * for GCC &gt;= 8, FC_LEN_T is defined in config.h and hence character
    lengths are passed from C to Fortran in _inter alia_ BLAS and
    LAPACK calls.
  * There is a new text file src/gnuwin32/README.compilation, which
    outlines how C/Fortran code compilation is organized and
    documents new features:
  * R can be built with Link-Time Optimization with a suitable
    compiler - doing so with GCC 9.2 showed several
    inconsistencies which have been corrected.
  * There is support for cross-compiling the C and Fortran code
    in R and standard packages on suitable (Linux) platforms.
    This is mainly intended to allow developers to test later
    versions of compilers - for example using GCC 9.2 or 10.x has
    detected issues that GCC 8.3 in Rtools40 does not.
  * There is experimental support for cross-building R packages
    with C, C++ and/or Fortran code.
  * The R installer can now be optionally built to support a single
    architecture (only 64-bit or only 32-bit).
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++14 where
    available (which it is on all currently checked platforms): if
    not (as before) C++11 is used if available otherwise C++ is not
    supported.
    Packages which specify C++11 will still be installed using C++11.
    C++14 compilers may give deprecation warnings, most often for
    std::random_shuffle (deprecated in C++14 and removed in C++17).
    Either specify C++11 (see 'Writing R Extensions') or modernize
    the code and if needed specify C++14.  The latter has been
    supported since R 3.4.0 so the package's DESCRIPTION would need
    to include something like
    Depends: R (&gt;= 3.4)
  PACKAGE INSTALLATION on Windows:
  * R CMD INSTALL and R CMD SHLIB make use of their flag --use-LTO
    when the LTO_OPT make macro is set in file etc/${R_ARCH}/Makeconf
    or in a personal/site Makevars file.  (For details see 'Writing R
    Extensions' SS4.5.)
    This provides a valuable check on code consistency.  It does work
    with GCC 8.3 as in Rtools40, but that does not detect everything
    the CRAN checks with current GCC do.
  PACKAGE INSTALLATION on macOS:
  * The default personal library directory on builds with
  - -enable-aqua (including CRAN builds) now differs by CPU type,
    one of
    ~/Library/R/x86_64/x.y/library
    ~/Library/R/arm64/x.y/library
    This uses the CPU type R (and hence the packages) were built for,
    so when a x86_64 build of R is run under Rosetta emulation on an
    arm64 Mac, the first is used.
  UTILITIES:
  * R CMD check can now scan package functions for bogus return
    statements, which were possibly intended as return() calls (wish
    of PR#17180, patch by Sebastian Meyer). This check can be
    activated via the new environment variable
    _R_CHECK_BOGUS_RETURN_, true for --as-cran.
  * R CMD build omits tarballs and binaries of previous builds from
    the top-level package directory.  (PR#17828, patch by Sebastian
    Meyer.)
  * R CMD check now runs sanity checks on the use of LazyData, for
    example that a data directory is present and that
    LazyDataCompression is not specified without LazyData and has a
    documented value.  For packages with large LazyData databases
    without specifying LazyDataCompression, there is a reference to
    the code given in 'Writing R Extensions' SS1.1.6 to test the
    choice of compression (as in all the CRAN packages tested a
    non-default method was preferred).
  * R CMD build removes LazyData and LazyDataCompression fields from
    the DESCRIPTION file of packages without a data directory.
  ENCODING-RELATED CHANGES:
  * The parser now treats \Unnnnnnnn escapes larger than the upper
    limit for Unicode points (\U10FFFF) as an error as they cannot be
    represented by valid UTF-8.
    Where such escapes are used for outputting non-printable
    (including unassigned) characters, 6 hex digits are used (rather
    than 8 with leading zeros).  For clarity, braces are used, for
    example \U{0effff}.
  * The parser now looks for non-ASCII spaces on Solaris (as
    previously on most other OSes).
  * There are warnings (including from the parser) on the use of
    unpaired surrogate Unicode points such as \uD834.  (These cannot
    be converted to valid UTF-8.)
  * Functions nchar(), tolower(), toupper() and chartr() and those
    using regular expressions have more support for inputs with a
    marked Latin-1 encoding.
  * The character-classification functions used (by default) to
    replace the system iswxxxxx functions on Windows, macOS and AIX
    have been updated to Unicode 13.0.0.
    The character-width tables have been updated to include new
    assignments in Unicode 13.0.0.
  * The code for evaluating default (extended) regular expressions
    now uses the same character-classification functions as the rest
    of R (previously they differed on Windows, macOS and AIX).
  * There is a build-time option to replace the system's
    wide-character wctrans C function by tables shipped with R: use
    configure option --with-internal-towlower or (on Windows)
  - DUSE_RI18N_CASE in CFLAGS when building R.  This may be needed
    to allow tolower() and toupper() to work with Unicode characters
    beyond the Basic Multilingual Plane where not supported by system
    functions (e.g. on Solaris where it is the new default).
  * R is more careful when truncating UTF-8 and other multi-byte
    strings that are too long to be printed, passed to the system or
    libraries or placed into an internal buffer.  Truncation will no
    longer produce incomplete multibyte characters.
  DEPRECATED AND DEFUNCT:
  * Function plclust() from the package stats and
    package.dependencies(), pkgDepends(), getDepList(),
    installFoundDepends(), and vignetteDepends() from package tools
    are defunct.
  * Defunct functions checkNEWS() and readNEWS() from package tools
    and CRAN.packages() from utils have been removed.
  * R CMD config CXXCPP is defunct (it was deprecated in R 3.6.2).
  * parallel::detectCores() drops support for Irix (retired in 2013).
  * The LINPACK argument to chol.default(), chol2inv(),
    solve.default() and svd() has been defunct since R 3.1.0.  It was
    silently ignored up to R 4.0.3 but now gives an error.
  * Subsetting/indexing, such as ddd[*] or ddd$x on a DOTSXP
    (dot-dot-dot) object ddd has been disabled; it worked by accident
    only and was undocumented.
  BUG FIXES:
  * Many more C-level allocations (mainly by malloc and strdup) are
    checked for success with suitable alternative actions.
  * Bug fix for replayPlot(); this was turning off graphics engine
    display list recording if a recorded plot was replayed in the
    same session.  The impact of the bug became visible if resize the
    device after replay OR if attempted another savePlot() after
    replay (empty display list means empty screen on resize or empty
    saved plot).
  * R CMD check etc now warn when a package exports non-existing S4
    classes or methods, also in case of no "methods" presence.
    (Reported by Alex Bertram; reproducible example and patch by
    Sebastian Meyer in PR#16662.)
  * boxplot() now also accepts calls for labels such as ylab, the
    same as plot().  (Reported by Marius Hofert.)
  * The help page for xtabs() now correctly states that addNA is
    setting na.action = na.pass among others.  (Reported as PR#17770
    by Thomas Soeiro.)
  * The R CMD check &lt;pkg&gt; gives a longer and more comprehensible
    message when DESCRIPTION misses dependencies, e.g., in Imports:.
    (Thanks to the contributors of PR#17179.)
  * update.default() now calls the generic update() on the formula to
    work correctly for models with extended formulas.  (As reported
    and suggested by Neal Fultz in PR#17865.)
  * The horizontal position of leaves in a dendrogram is now correct
    also with center = FALSE.  (PR#14938, patch from Sebastian
    Meyer.)
  * all.equal.POSIXt() no longer warns about and subsequently ignores
    inconsistent "tzone" attributes, but describes the difference in
    its return value (PR#17277).  This check can be disabled _via_
    the new argument check.tzone = FALSE as suggested by Sebastian
    Meyer.
  * as.POSIXct() now populates the "tzone" attribute from its tz
    argument when x is a logical vector consisting entirely of NA
    values.
  * x[[2^31]] &lt;- v now works.  (Thanks to the report and patch by
    Suharto Anggono in PR#17330.)
  * In log-scale graphics, axis() ticks and label positions are now
    computed more carefully and symmetrically in their range,
    typically providing _more_ ticks, fulfilling wishes in PR#17936.
    The change really corresponds to an improved axisTicks() (package
    grDevices), potentially influencing grid and lattice, for
    example.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now correct to at
    least five digits where it was catastrophically wrong,
    previously.
  * sum(df) and similar "Summary"- and "Math"-group member functions
    now work for data frames df with logical columns, notably also of
    zero rows.  (Reported to R-devel by Martin "b706".)
  * unsplit() had trouble with tibbles due to unsound use of rep(NA,
    len)-indexing, which should use NA_integer_ (Reported to R-devel
    by Mario Annau.)
  * pnorm(x, log.p = TRUE) underflows to -Inf slightly later.
  * show(&lt;hidden S4 generic&gt;) prints better and without quotes for
    non-hidden S4 generics.
  * read.table() and relatives treated an "NA" column name as missing
    when check.names = FALSE PR#18007.
  * Parsing strings containing UTF-16 surrogate pairs such as
    "\uD834\uDD1E" works better on some (uncommon) platforms.
    sprintf("%X", utf8ToInt("\uD834\uDD1E")) should now give "1D11E"
    on all platforms.
  * identical(x,y) is no longer true for differing DOTSXP objects,
    fixing PR#18032.
  * str() now works correctly for DOTSXP and related exotics, even
    when these are doomed.
    Additionally, it no longer fails for lists with a class and
    "irregular" method definitions such that e.g. lapply(*) will
    necessarily fail, as currently for different igraph objects.
  * Too long lines in environment files (e.g. Renviron) no longer
    crash R. This limit has been increased to 100,000 bytes.
    (PR#18001.)
  * There is a further workaround for FreeType giving incorrect
    italic font faces with cairo-based graphics devices on macOS.
  * add_datalist(*, force = TRUE) (from package tools) now actually
    updates an existing data/datalist file for new content.  (Thanks
    to a report and patch by Sebastian Meyer in PR#18048.)
  * cut.Date() and cut.POSIXt() could produce an empty last interval
    for breaks = "months" or breaks = "years".  (Reported as PR#18053
    by Christopher Carbone.)
  * Detection of the encoding of 'regular' macOS locales such as
    en_US (which is UTF-8) had been broken by a macOS change:
    fortunately these are now rarely used with en_US.UTF-8 being
    preferred.
  * sub() and gsub(pattern, repl, x, *) now keep attributes of x such
    as names() also when pattern is NA (PR#18079).
  * Time differences ("difftime" objects) get a replacement and a
    rep() method to keep "units" consistent.  (Thanks to a report and
    patch by Nicolas Bennett in PR#18066.)
  * The \RdOpts macro, setting defaults for \Sexpr options in an Rd
    file, had been ineffective since R 2.12.0: it now works again.
    (Thanks to a report and patch by Sebastian Meyer in PR#18073.)
  * mclapply and pvec no longer accidentally terminate parallel
    processes started before by mcparallel or related calls in
    package parallel (PR#18078).
  * grep and other functions for evaluating (extended) regular
    expressions handle in Unicode also strings not explicitly flagged
    UTF-8, but flagged native when running in UTF-8 locale.
  * Fixed a crash in fifo implementation on Windows (PR#18031).
  * Binary mode in fifo on Windows is now properly detected from
    argument open (PR#15600, PR#18031).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1622808000">- The line %{__install} -m 755 -d %{_infodir}
  no longer works in TW or Factory.
  But without that line it works everywhere. So this instruction
  was commented out of the spec file.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1628596800">- CHANGES IN R 4.1.1:
  NEW FEATURES:
  * require(pkg, quietly = TRUE) is quieter and in particular does
    not warn if the package is not found.
  DEPRECATED AND DEFUNCT:
  * Use of ftp:// URIs should be regarded as deprecated, with
    on-going support confined to method = "libcurl" and not routinely
    tested.  (Nowadays no major browser supports them.)
  * The non-default method = "internal" is deprecated for http:// and
    ftp:// URIs for both download.file and url.
  * On Windows, method = "wininet" is deprecated for http://,
    https:// and ftp:// URIs for both download.file and url.  (A
    warning is only given for ftp://.)
    For ftp:// URIs the default method is now "libcurl" if available
    (which it is on CRAN builds).
    method = "wininet" remains the default for http:// and https://
    URIs but if libcurl is available, using method = "libcurl" is
    preferred.
  INSTALLATION:
  * make check now works also without a LaTeX installation.  (Thanks
    to Sebastian Meyer's PR#18103.)
  BUG FIXES:
  * make check-devel works again in an R build configured with
  - -without-recommended-packages.
  * qnbinom(p, size, mu) for large size/mu is correct now in a range
    of cases (PR#18095); similarly for the (size, prob)
    parametrization of the negative binomial.  Also qpois() and
    qbinom() are better and or faster for extreme cases.  The
    underlying C code has been modularized and is common to all four
    cases of discrete distributions.
  * gap.axis is now part of the axis() arguments which are passed
    from bxp(), and hence boxplot().  (Thanks to Martin Smith's
    report and suggestions in PR#18109.)
  * .First and .Last can again be set from the site profile.
  * seq.int(from, to, *) and seq.default(..) now work better in large
    range cases where from-to is infinite where the two boundaries
    are finite.
  * all.equal(x,y) now returns TRUE correctly also when several
    entries of abs(x) and abs(y) are close to .Machine$double.xmax,
    the largest finite numeric.
  * model.frame() now clears the object bit when removing the class
    attribute of a value via na.action (PR#18100).
  * charClass() now works with multi-character strings on Windows
    (PR#18104, fixed by Bill Dunlap).
  * encodeString() on Solaris now works again in Latin-1 encoding on
    characters represented differently in UTF-8.  Support for
    surrogate pairs on Solaris has been improved.
  * file.show() on Windows now works with non-ASCII path names
    representable in the current native encoding (PR#18132).
  * Embedded R on Windows can now find R home directory via the
    registry even when installed only for the current user
    (PR#18135).
  * pretty(x) with finite x now returns finite values also in the
    case where the extreme x values are close in size to the maximal
    representable number .Machine$double.xmax.
    Also, it's been tweaked for very small ranges and when a boundary
    is close (or equal) to zero; e.g., pretty(c(0,1e-317)) no longer
    has negative numbers, currently still warning about a very small
    range, and pretty(2^-(1024 - 2^-1/(c(24,10)))) is more accurate.
  * The error message for not finding vignette files when weaving has
    correct file sizes now. (Thanks to Sebastian Meyer's PR#18154.)
  * dnbinom(20, &lt;large&gt;, 1) now correctly gives 0, and similar cases
    are more accurate with underflow precaution.  (Reported by Francisco Vera Alcivar in PR#18072.)</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635163200">- repaired https://bugzilla.suse.com/show_bug.cgi?id=1191380
  (rpmacros now go to rpmmacrodir)
- minor clean-ups in spec file</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635768000">- CHANGES IN R 4.1.2:
  C-LEVEL FACILITIES:
  * The workaround in headers R.h and Rmath.h (using namespace std;)
    for the Oracle Developer Studio compiler is no longer needed now
    C++11 is required so has been removed.  A couple more usages of
    log() (which should have been std::log()) with an int argument
    are reported on Solaris.
  * The undocumented limit of 4095 bytes on messages from the
    S-compatibility macros PROBLEM and MESSAGE is now documented and
    longer messages will be silently truncated rather than
    potentially causing segfaults.
  * If the R_NO_SEGV_HANDLER environment variable is non-empty, the
    signal handler for SEGV/ILL/BUS signals (which offers recovery
    user interface) is not set. This allows more reliable debugging
    of crashes that involve the console.
  DEPRECATED AND DEFUNCT:
  * The legacy S-compatibility macros PROBLEM, MESSAGE, ERROR, WARN,
    WARNING, RECOVER, ... are deprecated and will be hidden in R
    4.2.0. R's native interface of Rf_error and Rf_warning has long
    been preferred.
  BUG FIXES:
  * .mapply(F, dots, .) no longer segfaults when dots is not a list
    and uses match.fun(F) as always documented; reported by Andrew
    Simmons in PR#18164.
  * hist(&lt;Date&gt;, ...) and hist(&lt;POSIXt&gt;, ...)  no longer pass
    arguments for rect() (such as col and density) to axis().
    (Thanks to Sebastian Meyer's PR#18171.)
  * \Sexpr{ch} now preserves Encoding(ch). (Thanks to report and
    patch by Jeroen Ooms in PR#18152.)
  * Setting the RNG to "Marsaglia-Multicarry" e.g., by RNGkind(), now
    warns in more places, thanks to Andr'e Gillibert's report and
    patch in PR#18168.
  * gray(numeric(), alpha=1/2) no longer segfaults, fixing PR#18183,
    reported by Till Krenz.
  * Fixed dnbinom(x, size=&lt;very_small&gt;, .., log=TRUE) regression,
    reported by Martin Morgan.
  * as.Date.POSIXlt(x) now keeps names(x), thanks to Davis Vaughan's
    report and patch in PR#18188.
  * model.response() now strips an "AsIs" class typically, thanks to
    Duncan Murdoch's report and other discussants in PR#18190.
  * try() is considerably faster in case of an error and long call,
    as e.g., from some do.call().  Thanks to Alexander Kaever's
    suggestion posted to R-devel.
  * qqline(y = &lt;object&gt;) such as y=I(.), now works, see also
    PR#18190.
  * Non-integer mgp par() settings are now handled correctly in
    axis() and mtext(), thanks to Mikael Jagan and Duncan Murdoch's
    report and suggestion in PR#18194.
  * formatC(x) returns length zero character() now, rather than ""
    when x is of length zero, as documented, thanks to Davis
    Vaughan's post to R-devel.
  * removeSource(fn) now retains (other) attributes(fn).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1647000000">- CHANGES IN R 4.1.3:
  NEW FEATURES:
  * The default version of Bioconductor has been changed to 3.14.
    (This is used by setRepositories and the menus in GUIs.)
  UTILITIES:
  * R CMD check --as-cran has a workaround for a bug in versions of
    file up to at least 5.41 which mis-identify DBF files last
    changed in 2022 as executables.
  C-LEVEL FACILITIES:
  * The legacy S-compatibility macros SINGLE_* in R_ext/Constants.h
    (included by R.h) are deprecated and will be removed in R 4.2.0.
  BUG FIXES:
  * Initialization of self-starting nls() models with initialization
    functions following the pre-R-4.1.0 API (without the ...
    argument) works again for now, with a deprecation warning.
  * Fixed quoting of ~autodetect~ in Java setting defaults to avoid
    inadvertent user lookup due to leading ~, reported in PR#18231 by
    Harold Gutch.
  * substr(., start, stop) &lt;- v now treats _negative_ stop values
    correctly.  Reported with a patch in PR#18228 by Brodie Gaslam.
  * Subscripting an array x without dimnames by a
    length(dim(x))-column character matrix gave "random" non-sense,
    now an error; reported in PR#18244 by Mikael Jagan.
  * ...names() now matches names(list(...)) closely, fixing PR#18247.
  * all.equal(*, scale = s) now works as intended when length(s) &gt; 1,
    partly thanks to Michael Chirico's PR#18272.
  * print(x) for long vectors x now also works for named atomic
    vectors or lists and prints the correct number when reaching the
    getOption("max.print") limit; partly thanks to a report and
    proposal by Hugh Parsonage to the R-devel list.
  * all.equal(&lt;selfStart&gt;, *) no longer signals a deprecation
    warning.
  * reformulate(*, response=r) gives a helpful error message now when
    length(r) &gt; 1, thanks to Bill Dunlap's PR#18281.
  * Modifying globalCallingHandlers inside withCallingHandlers() now
    works or fails correctly, thanks to Henrik Bengtsson's PR#18257.
  * hist(&lt;Date&gt;, breaks = "days") and hist(&lt;POSIXt&gt;, breaks = "secs")
    no longer fail for inputs of length 1.
  * qbeta(.001, .9, .009) and similar cases now converge correctly
    thanks to Ben Bolker's report in PR#17746.
  * window(x, start, end) no longer wrongly signals "'start' cannot
    be after 'end'", fixing PR#17527 and PR#18291.
  * data() now checks that its (rarely used) list argument is a
    character vector - a couple of packages passed other types and
    gave incorrect results.
  * which() now checks its arr.ind argument is TRUE rather coercing
    to logical and taking the first element - which gave incorrect
    results in package code.
  * model.weights() and model.offset() more carefully extract their
    model components, thanks to Ben Bolker and Tim Taylor's R-devel
    post.
  * list.files(recursive = TRUE) now shows all broken symlinks
    (previously, some of them may have been omitted, PR#18296).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1650628800">- CHANGES IN R 4.2.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * The formula method of aggregate() now matches the generic in
    naming its first argument x (resolving PR#18299 by Thomas
    Soeiro).
    This means that calling aggregate() with a formula as a named
    first argument requires name formula in earlier versions of R and
    name x now, so portable code should not name the argument (code
    in many packages did).
  * Calling &amp;&amp; or || with either argument of length greater than one
    now gives a warning (which it is intended will become an error).
  * Calling if() or while() with a condition of length greater than
    one gives an error rather than a warning.  Consequently,
    environment variable _R_CHECK_LENGTH_1_CONDITION_ no longer has
    any effect.
  * Windows users should consult the WINDOWS section below for some
    profound changes including
  * Support for 32-bit builds has been dropped.
  * UTF-8 locales are used where available.
  * The default locations for the R installation and personal
    library folder have been changed.
    Thanks to Tomas Kalibera for months of work on the Windows port
    for this release.
  NEW FEATURES:
  * matrix(x, n, m) now warns in more cases where length(x) differs
    from n * m, as suggested by Abby Spurdle and Wolfgang Huber in
    Feb 2021 on the R-devel mailing list.
    This warning can be turned into an error by setting environment
    variable _R_CHECK_MATRIX_DATA_ to TRUE: R CMD check --as-cran
    does so unless it is already set.
  * Function file_test() in package utils gains tests for symlinks,
    readability and writability.
  * capabilities("libxml") is now false.
    The description of capabilities("http/ftp") now reflects that it
    refers to the default method, no longer the internal one.
  * simplify2array() gains an except argument for controlling the
    exceptions used by sapply().
  * Environment variables R_LIBS_USER and R_LIBS_SITE are both now
    set to the R system default if unset or empty, and can be set to
    NULL to indicate an empty list of user or site library
    directories.
  * The warning for axis()(-like) calls in cases of relatively small
    ranges (typically in log-scale situations) is slightly improved
    _and_ suppressed from explicit calls to .axisPars() as has always
    been the intention.
  * The contrasts setter function `contrasts&lt;-` gains an explicit
    default how.many = NULL rather than just using missing(how.many).
  * grid.pretty() gains a new optional argument n = 5.
  * There is a new function .pretty() with option bounds as a
    technical-utility version of pretty().  It and pretty() gain a
    new argument f.min with a better than back-compatible default.
  * Function grDevices::axisTicks() and related functions such as
    graphics::axis() work better, notably for the log scale; partly
    because of the pretty() improvements, but also because care is
    taken e.g., when ylim is finite but diff(ylim) is infinite.
  * nclass.FD() gains a digits option.
  * The R Mathlib internal C function bd0() (called indirectly from a
    dozen probability density and distribution functions such as
    dpois(), dbinom(), dgamma(), pgamma() _etc_) has been
    complemented by a more sophisticated and (mostly) more accurate C
    function ebd0(), currently called only by internal dpois_raw()
    improving accuracy for R level dpois() and potentially others
    calling it such as dnbinom(), dgamma() or pgamma().  (Thanks to
    Morten Welinder's PR#15628.)
  * write.ftable() gains sep = " " argument as suggested by Thomas
    Soeiro.
  * The names of the locale categories supported by R's
    Sys.getlocale() and Sys.setlocale() are now provided by variable
    .LC.categories in the base namespace.
  * The Date and POSIXt methods for hist() and the histogram method
    for plot() now also use the new default col = "lightgray" in
    consistency with the corresponding change to hist()'s default for
    R 4.0.0.
  * hist.default() gains new fuzz argument, and the histogram plot
    method no longer uses fractional axis ticks when displaying
    counts ("Frequency").
  * mapply() and hence Map() now also obey the "max-or-0-if-any"
    recycling rule, such that, e.g., Map(`+`, 1:3, 1[0]) is valid
    now.
  * as.character(&lt;obj&gt;) for "hexmode" or "octmode" objects now
    fulfils the important basic rule as.character(x)[j] ===
    as.character(x[j]).
  * The set utility functions, notably intersect() have been tweaked
    to be more consistent and symmetric in their two set arguments,
    also preserving a common mode.
  * substr(ch, start,end) &lt;- new now e.g., preserves names(ch); ditto
    for substring(), thanks to a patch from Brodie Gaslam.
  * plot(&lt;lm&gt;) gains a extend.ylim.f argument, in partial response to
    PR#15285; further PR#17784 is fixed thanks to several
    contributors and a patch by Elin Waring.  The Cook's dist
    contours get customizable via cook.col and cook.lty with a
    different default color and their legend is nicer by default and
    customizable via cook.legendChanges.
  * Attempting to subset an object that is not subsettable now
    signals an error of class notSubsettableError. The
    non-subsettable object is contained in the object field of the
    error condition.
  * Subscript-out-of-bounds errors are now signaled as errors of
    class subscriptOutOfBoundsError.
  * Stack-overflow errors are now signaled as errors inheriting from
    class stackOverflowError. See ?stackOverflowError for more
    details.
  * New partly experimental Sys.setLanguage() utility, solving the
    main problem of PR#18055.
  * gettext() and gettextf() get a new option trim = TRUE which when
    set to false allows translations for strings such as "Execution
    halted\n" typical for C code.
  * An experimental implementation of hash tables is now available.
    See ?hashtab for more details.
  * identical() gains a extptr.as.ref argument for requesting that
    external pointer objects be compared as reference objects.
  * reorder() gets an argument decreasing which it passes to sort()
    for level creation; based on the wish and patch by Thomas Soeiro
    in PR#18243.
  * as.vector() gains a data.frame method which returns a simple
    named list, also clearing a long standing 'FIXME' to enable
    as.vector(&lt;data.frame&gt;, mode="list").  This breaks code relying
    on as.vector(&lt;data.frame&gt;) to return the unchanged data frame.
  * legend() is now vectorized for arguments cex, x.intersp, and
    text.width.  The latter can now also be specified as a vector
    (one element for each column of the legend) or as NA for
    computing a proper column wise maximum value of strwidth(legend).
    The argument y.intersp can be specified as a vector with one
    entry for each row of the legend.
    legend() also gains new arguments title.cex and title.font.
    Thanks to Swetlana Herbrandt.
  * Deparsing no longer remaps attribute names dim, dimnames, levels,
    names and tsp to historical S-compatible names (which structure()
    maps back).
  * sample() and sample.int() have additional sanity checks on their
    size and n arguments.
    all.equal.numeric() gains a sanity check on its tolerance
    argument - calling all.equal(a, b, c) for three numeric vectors
    is a surprisingly common error.
    mean(na.rm =), rank(na.last =), barplot(legend.text =),
    boxplot(), contour(drawlabels =), polygon(border =) and
    methods::is(class2 =) have more robust sanity checks on their
    arguments.
    R CMD Rd2pdf (used by R CMD check) has a more robust sanity check
    on the format of \alias{} commands.
  * psigamma(x, deriv) for negative x now also works for deriv = 4
    and 5; their underlying C level dpsifn() is documented in
    'Writing R Extensions'.
  * The HTML help system now uses HTML5 (wish of PR#18149).
  * ks.test() now provides exact p-values also with ties and MC
    p-values in the two-sample (Smirnov) case.  By Torsten Hothorn.
  * ks.test() gains a formula interface, with y ~ 1 for the
    one-sample (Kolmogorov) test and y ~ group for the two-sample
    (Smirnov) test.  Contributed by Torsten Hothorn.
  * The return value from ks.test() now has class c("ks.test",
    "htest") - packages using try() need to take care to use
    inherits() and not == on the class.
  * New functions psmirnov(), qsmirnov() and rsmirnov() in package
    stats implementing the asymptotic and exact distributions of the
    two-sample Smirnov statistic.
  * iconv() now allows sub = "c99" to use C99-style escapes for UTF-8
    inputs which cannot be converted to encoding to.
  * In a forward pipe |&gt; expression it is now possible to use a named
    argument with the placeholder _ in the rhs call to specify where
    the lhs is to be inserted.  The placeholder can only appear once
    on the rhs.
  * The included LAPACK sources have been updated to version 3.10.0,
    except for the four Fortran 77 routines which 3.10.0 has
    re-implemented in Fortran 90 (where the older versions have been
    retained as the R build process does not support Fortran 90).
  * path.expand() and most other uses of tilde expansion now warn if
    a path would be too long if expanded.  (An exception is
    file.exists(), which silently returns false.)
  * trunc(&lt;Date&gt;, *) now supports units = "months" or "years" for
    consistency with the POSIXt method, thanks to Dirk Eddelbuettel's
    proposal in PR#18099.
  * list2DF() now checks that its arguments are of the same length,
    rather than use recycling.
  * The HTML help system has several new features: LaTeX-like math
    can be typeset using either KaTeX or MathJax, usage and example
    code is highlighted using Prism, and for dynamic help the output
    of examples and demos can be shown within the browser if the
    knitr package is installed. These features can be disabled by
    setting the environment variable _R_HELP_ENABLE_ENHANCED_HTML_ to
    a false value.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 15
    and so packages that provide graphics devices should be
    reinstalled.
  * The grid package now allows the user to specify a "vector" of
    pattern fills.  The fill argument to gpar() accepts a list of
    gradients and/or patterns and the functions linearGradient(),
    radialGradient(), and pattern() have a new group argument.
    Points grobs (data symbols) can now also have a pattern fill.
    The grobCoords() function now returns a more informative and
    complex result.
  * The grid package has new functions for drawing isolated groups:
    grid.group(), grid.define(), and grid.use().  These functions add
    compositing operators and affine transformations to R's graphics
    capabilities.
    The grid package also has new functions for stroking and filling
    paths: grid.stroke(), grid.fill(), and grid.fillStroke().
    A new function as.path() allows the user to specify the fill rule
    for a path that is to be used for clipping, stroking, or filling;
    available options are "winding" and "evenodd".  A new function
    as.mask() allows the user to specify the type of a mask;
    available options are "alpha" and "luminance".
    These new features are only supported so far (at most) on the
    Cairo-based graphics devices and on the pdf() device.
  * dev.capabilities() reports on device support for the new
    features.
  * par() now warns about unnamed non-character arguments to prevent
    misuse such as {usr &lt;- par("usr"); par(usr)}.
  INSTALLATION:
  * Facilities for accessing ftp:// sites are no longer tested
    (except _pro tem_ for curlGetHeaders()) as modern browsers have
    removed support.
  * R can now be built with DEFS = -DSTRICT_R_HEADERS .
  PACKAGE INSTALLATION:
  * R CMD INSTALL no longer tangles vignettes. This completes an R
    CMD build change in R 3.0.0 and affects packages built before R
    3.0.2. Such packages should be re-made with R CMD build to have
    the tangled R code of vignettes shipped with the tarball.
  * USE_FC_LEN_T will become the default: this uses the correct
    prototypes for Fortran BLAS/LAPACK routines called from C/C++,
    and requires adjustment of most such calls - see 'Writing R
    Extensions' SS6.6.2.  (This has been supported since R 3.6.2.)
  * Package installation speed for packages installed with
    keep.source has been improved. This resolve the issue reported by
    Ofek Shilon in PR#18236.
  UTILITIES:
  * R CMD check can optionally report files/directories left behind
    in home, /tmp (even though TMPDIR is set) and other directories.
    See the "R Internals" manual for details.
  * R CMD check now reports byte-compilation errors during
    installation.  These are not usually fatal but may result in
    parts of the package not being byte-compiled.
  * _R_CHECK_DEPENDS_ONLY_ can be applied selectively to examples,
    tests and/or vignettes in R CMD check: see the "R Internals"
    manual.
  * _R_CHECK_SRC_MINUS_W_IMPLICIT_ now defaults to true: recent
    versions of Apple clang on macOS have made implicit function
    declarations in C into a compilation error.
  * R CMD check --as-cran makes use of the environment variable
    AUTORECONF.  See the "R Internals" manual SS8 for further details.
  * R CMD check --use-valgrind also uses valgrind when re-building
    vignettes as some non-Sweave vignettes unhelpfully comment out
    all their code when R CMD check runs vignettes.
  * Errors in re-building vignettes (unless there are LaTeX errors)
    are reported by R CMD check as ERROR rather than WARNING when
    running vignettes has been skipped (as it frequently is in CRAN
    checks and by --as-cran).
  * R CMD Rd2pdf gains a --quiet option that is used by R CMD build
    when building the PDF package manual.
  * R CMD Rd2pdf now always runs LaTeX in batch mode, consistent with
    Texinfo &gt;= 6.7. The --batch option is ignored.
  * R CMD build and R CMD check now include the Rd file name and line
    numbers in the error message of an \Sexpr evaluation failure.
  * For packages using the \doi Rd macro (now an install-time \Sexpr)
    but no other dynamic Rd content, R CMD build now produces a
    smaller tarball and is considerably faster - skipping temporary
    package installation.
  C-LEVEL FACILITIES:
  * The non-API header R_ext/R-ftp-http.h is no longer provided, as
    the entry points it covered are now all defunct.
  * A number of non-API declarations and macro definitions have been
    moved from the installed header Rinternals.h to the internal
    header Defn.h. Packages that only use entry points and
    definitions documented to be part of the API as specified in
    'Writing R Extensions' SS6 should not be affected.
  * The macro USE_RINTERNALS no longer has any effect when compiling
    package code.  Packages which also use R_NO_REMAP will need to
    ensure that the remapped names are used for calls to API
    functions that were formerly also made available as macros.
  * The deprecated legacy S-compatibility macros PROBLEM, MESSAGE,
    ERROR, WARN, WARNING, RECOVER, ... are no longer defined in
    R_exts/RS.h (included by R.h).  Replace these by calls to
    Rf_error and Rf_warning (defined in header R_ext/Error.h included
    by R.h).
    Header R_ext/RS.h no longer includes R_ext/Error.h.
  * Header R_ext/Constants.h (included by R.h) when included from C++
    now includes the C++ header cfloat rather than the C header
    float.h (now possible as C++11 is required).
  * The legacy S-compatibility macros DOUBLE_* in R_ext/Constants.h
    (included by R.h) are deprecated.
  * The deprecated S-compatibility macros SINGLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * R_Calloc, R_Free and R_Realloc are preferred to their unprefixed
    forms and error messages now use the prefix. These forms were
    introduced in R 3.4.0 and are available even when
    STRICT_R_HEADERS is defined.
  * rmultinom has been documented in 'Writing R Extensions' SS6 so is
    now part of the R API.
  * Similarly, Rtanpi, called from R level tanpi() is now part of the
    R API.
  * The long-deprecated, undocumented and non-API entry point call_R
    is no longer declared in R_ext/RS.h (included by R.h).
  * The header S.h which has been unsupported since Jan 2016 has been
    removed.  Use R.h instead.
  DEPRECATED AND DEFUNCT:
  * The (non-default and deprecated) method = "internal" for
    download.file() and url() no longer supports http:// nor ftp://
    URIs.  (It is used only for file:// URIs.)
    On Windows, download.file(method = "wininet") no longer supports
    ftp:// URIs.  (It is no longer the default method, which is
    "libcurl" and does.)
    On Windows, the deprecated method = "wininet" now gives a warning
    for http:// and https:// URIs for both download.file() and url().
    (It is no longer the default method.)
  * On Windows, the command-line option --max-mem-size and
    environment variable R_MAX_MEM_SIZE are defunct.  The memory
    allocation limit was important for 32-bit builds, but these are
    no longer supported.
  * default.stringsAsFactors() is now formally deprecated, where that
    was only mentioned on its regular help page, previously.  So it
    now gives a warning if called.
  * unix.time() is defunct now; it had been deprecated since R 3.4.0.
  BUG FIXES:
  * Setting digits = 0 in format(), print.default() (and hence
    typically print()) or options() is again invalid.  Its behaviour
    was platform-dependent, and it is unclear what "zero significant
    digits" should mean (PR#18098).
  * Messages from C code in the cairo section of package grDevices
    are now also offered for translation, thanks to Michael Chirico's
    PR#18123.
  * mean(x) with finite x now is finite also without "long.double"
    capability.
  * R CMD Rd2pdf no longer leaves an empty build directory behind
    when it aborts due to an already existing output file.  (Thanks
    to Sebastian Meyer's PR#18141.)
  * density(x, weights = w, na.rm = TRUE) when anyNA(x) is true, now
    removes weights "in parallel" to x, fixing PR#18151, reported by
    Matthias Gondan.  Additionally, it gets a subdensity option.
  * Conversion of \Sexpr[]{&lt;expR&gt;} to LaTeX or HTML no longer
    produces long blocks of empty lines when &lt;expR&gt; itself contains
    several lines all producing empty output.  Thanks to a report and
    patch by Ivan Krylov posted to R-devel.
  * R CMD build no longer fails if a package vignette uses child
    documents and inst/doc exists.  (Thanks to Sebastian Meyer's
    PR#18156.)
  * When an R documentation ('help' source) file man/foo.Rd in a
    package has \donttest{..} examples with a syntax error, it is now
    signalled as ERROR and with correct line numbers relating to the
  * -Ex.R file, thanks to Duncan Murdoch and Sebastian Meyer's
    reports and patch proposals in PR#17501.
  * Improved determination of the correct translation domain in
    non-base packages, addressing the combination of PR#18092 and
    PR#17998 (#c6) with reports and _augmented_ patch #2904 by
    Suharto Anggono.
    Note that "R-base" is no longer the default domain e.g., for
    top-level calls to gettext(); rather translation needs explicit
    domain = * specification in such cases.
  * identical(attrib.as.set=FALSE) now works correctly with data
    frames with default row names (Thanks to Charlie Gao's PR#18179).
  * txtProgressBar() now enforces a non-zero width for argument char,
    without which no progress can be visible.
  * dimnames(table(d)) is more consistent in the case where d is a
    list with a single component, thanks to Thomas Soeiro's report to
    R-devel.
    Further, table(d1, d2) now gives an error when d1 and d2 are data
    frames as suggested by Thomas in PR#18224.
  * Fix for drawing semi-transparent lines and fills on the native
    Windows graphics device (PR#18219 and PR#16694).  Thanks to Nick
    Ray for helpful diagnosis on Bugzilla.
  * The deparser now wraps sub-expressions such as if(A) ..  with
    parentheses when needed; thanks to Duncan Murdoch's PR#18232 and
    Lionel Henry's patches there.
  * remove.packages() no longer tries to uninstall Priority: base
    packages, thanks to a report and suggestions by Colin Fay in
    PR#18227.
  * win.metafile() now has xpinch and ypinch arguments so that the
    user can override Windows' (potentially wrong) guess at device
    dimensions.
  * x[i] and x[[i]] for non-integer i should now behave in all cases
    as always documented: the index used is equivalent to
    as.integer(i) unless that would overflow where trunc(i) is used
    instead; thanks to Suharto Anggono's report and patch proposals
    in PR#17977.
  * asOneSidedFormula() now associates the resulting formula with the
    global environment rather than the evaluation environment created
    for the call.
  * &lt;bibentry&gt;$name now matches the field name case-insensitively,
    consistent with bibentry() creation and the replacement method.
  * cbind() failed to detect some length mismatches with a mixture of
    time-series and non-time-series inputs.
  * The default LaTeX style file Sweave.sty used by the RweaveLatex
    driver no longer loads the obsolete ae package; thanks to a
    report by Thomas Soeiro in PR#18271.  Furthermore, it now skips
    \usepackage[T1]{fontenc} for engines other than pdfTeX (if
    detected) or if the new [nofontenc] option is used.
  * smooth.spline() now stores its logical cv argument more safely,
    fixing a rare bug when printing, and also stores n.
  * smooth.spline(x,y,*) now computes the cv.crit statistic
    correctly, also when is.unsorted(x), fixing PR#18294.
  * The data.frame method of rbind() now warns when binding
    not-wholly-recycling vectors, by analogy to the default method
    (for matrices).
  * setAs() finds the correct class for name to when multiple
    packages define a class with that name. Thanks to Gabor Csardi
    for the report.
  * Fix for detaching a package when two classes of the same name are
    present in method signatures for the same generic. Thanks to
    Gabor Csardi for the report.
  * match.arg("", c("", "a", "B")) gives a better error message, in
    part from PR#17959, thanks to Elin Waring.
  * R CMD Sweave --clean no longer removes pre-existing files or
    subdirectories (PR#18242).
  * The quartz() device no longer splits polylines into subpaths.
    That has caused narrowly-spaced lines with many points to always
    look solid even when dashed line type was used due to dash phase
    restarts.
  * Deparsing constructs such as quote(1 + `!`(2) + 3) works again as
    before R 3.5.0, thanks to the report and patch in PR#18284 by
    Suharto Anggono.
  * as.list(f) for a factor f now keeps names(f), fixing PR#18309.
  * qbeta(.001, .9, .009) and analogous qf() calls now return a
    correct value instead of NaN or wrongly 1, all with a warning;
    thanks to the report by Ludger Goeminne in PR#18302.
  * plot.lm() failed to produce the plot of residuals vs.  factor
    levels (i.e., which=5 when leverages are constant) for models
    with character predictors (PR#17840).
  * interaction.plot(..., xtick = TRUE) misplaced the x-axis line
    (PR#18305).
  * Not strictly fixing a bug, format()ing and print()ing of
    non-finite Date and POSIXt values NaN and +/-Inf no longer show
    as NA but the respective string, e.g., Inf, for consistency with
    numeric vector's behaviour, fulfilling the wish of PR#18308.
  * R CMD check no longer runs test scripts generated from
    corresponding .Rin files twice and now signals an ERROR if
    processing an .Rin script fails.
  * tools::Rd2txt() used for plain-text help pages now renders \hrefs
    (if tools::Rd2txt_options(showURLs = TRUE)) and \urls with
    percent-encoding and standards-compliant delimiting style (angle
    brackets and no URL: prefix).  \email is now rendered with a
    mailto: prefix.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1655985600">- CHANGES IN R 4.2.1:
  NEW FEATURES:
  * New function utils::findCRANmirror() to find out if a CRAN mirror
    has been selected, otherwise fallback to the main site.  This
    behaves in the same way as tools::CRAN_package_db() and is
    intended for packages wishing to access CRAN for purposes other
    than installing packages.
    The need for this was shown by a day when the main CRAN website
    was offline and a dozen or so packages which had its URL
    hardcoded failed their checks.
  INSTALLATION on a UNIX-ALIKE:
  * The libraries searched for by --with-blas (without a value) now
    include BLIS (after OpenBLAS but before ATLAS).  And on macOS,
    the Accelerate framework (after ATLAS).  (This is patterned after
    the AX_BLAS macro from the Autoconf Archive.)
  * The included LAPACK sources have been updated to 3.10.1.
  UTILITIES:
  * The (full path to) the command tidy to be used for HTML
    validation can be set by environment variable R_TIDYCMD.
  * Setting environment variable _R_CHECK_RD_VALIDATE_RD2HTML_ to a
    false value will override R CMD check --as-cran and turn off HTML
    validation.  This provides a way to circumvent a problematic
    tidy.
    The 2006 version that ships with macOS is always skipped.
  C-LEVEL FACILITIES:
  * The undocumented legacy declarations of Sint, Sfloat, SINT_MAX
    and SINT_MIN in header R.h are deprecated.
  BUG FIXES:
  * fisher.test(d) no longer segfaults for "large" d; fixing PR#18336
    by preventing/detecting an integer overflow reliably.
  * tar(., files=*) now produces correctly the warning about invalid
    uid or gid of files, fixing PR#18344, reported by Martin Morgan.
  * tk_choose.files() with multi = FALSE misbehaved on paths
    containing spaces (PR#18334) (regression introduced in R 4.0.0).
  * sort(x, partial = ind, *) now works correctly notably for the
    non-default na.last = FALSE or TRUE, fixing PR#18335 reported by
    James Edwards.
  * Environment variable _R_CHECK_XREFS_REPOSITORIES_ is only used
    for checking .Rd cross-references in R CMD check (as documented)
    and not for other uses looking for a CRAN mirror.
  * The search for a CRAN mirror when checking packages now uses
    getOption("repos") if that specifies a CRAN mirror, even when it
    does not also specify all three Bioconductor repositories (as was
    previously required).
  * The HTML code generated by tools::Rd2HTML() has been improved to
    pass tidy 5.8.0.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1667217600">- CHANGES IN R 4.2.2:
  NEW FEATURES:
  * tools::Rdiff(useDiff = TRUE) checks for the presence of an
    external diff command and switches to useDiff = FALSE if none is
    found.  This allows R CMD Rdiff to always work.
  * On Windows, environment variable R_LIBCURL_SSL_REVOKE_BEST_EFFORT
    can be used to switch to only 'best-effort' SSL certificate
    revocation checks with the default "libcurl" download method.
    This reduces security, but may be needed for downloads to work
    with MITM proxies (PR#18379).
  * (macOS) The run-time check for libraries from XQuartz for X11 and
    Tcl/Tk no longer uses otool from the Apple Developer Tools
    (PR#18400).
  * The LaTeX style for producing the PDF manuals, Rd.sty, now loads
    the standard amsmath, amsfonts and amssymb packages for greater
    coverage of math commands in the Rd \eqn and \deqn macros.  The
    \mathscr LaTeX command is also provided (via the mathrsfs
    package, if available, or the amsfonts bundle otherwise),
    fulfilling the wish of PR#18398.
  * (Windows) The default format of readClipboard() and
    writeClipboard() has been changed to 13 (CF_UNICODETEXT).
  INSTALLATION on a UNIX-ALIKE:
  * The PDF manuals (if built) can be compacted by the new target
    make compact-pdf (at the top level or in directory doc/manual).
  * There is now configure support for LLVM clang 15 on Linux, which
    defaults to position-independent (PIE) executables whereas
    gfortran does not.
  * Many small changes to ease compilation (and suppress warnings)
    with LLVM clang 15.
  BUG FIXES:
  * Rscript -e would fail if stdin were closed (Reported by Henrik
    Bengtsson.)
  * qt(*, log.p=TRUE) in outer tails no longer produces NaN in its
    final steps, thus fixing PR#18360.
  * tools::Rd2latex() now escapes hashes and ampersands when writing
    URLs, fixing LaTeX errors with such URLs in \tabular.
  * When isGeneric(f, fdef=*) is used with mismatching names, the
    warning is better understandable; reported (with fix) in PR#18370
    by Gabe Becker.
  * poly(x, n) now works again (and is now documented) when x is a
    "Date" or "POSIXct" object, or of another class while fulfilling
    mode(x) == "numeric".  This also enables poly(x, *, raw=TRUE) for
    such variables.  Reported by Michael Chirico to R-devel.
  * write.table(), write.csv() and write.csv2() restore their
    numerical precision (internal equivalent of digits = 15) after an
    interrupt (PR#18384).
  * One can now read also byte FF from a clipboard connection
    (PR#18385).
  * source("") and source(character()) now give more helpful error
    messages.
  * R CMD check --as-cran set _R_CHECK_TIMINGS_ too late to have the
    intended effect.
  * as.POSIXlt(x) now also works with very large dates x, fixing
    PR#18401 reported by Hannes M"uhleisen.
  * Files can now be extracted even from very large zip archives
    (PR#18390, thanks to Martin Jakt).
  * Non-finite objects of class "POSIXlt" are now correctly coerced
    to classes "Date" and "POSIXct"; following up on the extension to
    format() them correctly.
  * Added methods for is.finite(), is.infinite() and is.nan() for
    "POSIXlt" date-time objects.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1678881600">- CHANGES IN R 4.2.3:
  C-LEVEL FACILITIES:
  * The definition of DL_FUNC in R_ext/Rdynload.h has been changed to
    be fully C-compliant.  This means that functions loaded _via_ for
    example R_GetCCallable need to be cast to an appropriate type if
    they have any arguments.
  * .Machine has a new element sizeof.time_t to identify old systems
    with a 32-bit type and hence a limited range of date-times (and
    limited support for dates millions of years from present).
  PACKAGE INSTALLATION:
  * (Windows) The default C++ standard had accidentally been left at
    C++11 when it was changed to C++14 on Unix.
  BUG FIXES:
  * As "POSIXlt" objects may be "partially filled" and their list
    components meant to be recycled, length() now is the length of
    the longest component.
  * as.POSIXlt.Date() could underflow for dates in the far past (more
    than half a million years BCE).
  * as.Date.POSIXlt(x) would return "1970-01-01" instead of NA in R
    4.2.2, e.g., for
    x &lt;- as.POSIXlt(c("2019-01-30","2001-1-1"))
    x$mon &lt;- c(0L, NA); as.Date(x)
  * R CMD check failed to apply enabled _R_CHECK_SUGGESTS_ONLY_ to
    examples and vignettes (regression in R 4.2.0).
  * R CMD check did not re-build vignettes in separate processes by
    default (regression in R 4.2.0).
  * Running examples from HTML documentation now restores previous
    knitr settings and options (PR#18420).
  * Quartz: fonts are now located using Core Graphics API instead of
    deprecated ATS which is no longer supported in the macOS 13 SDK
    (PR#18426).  This also addresses an issue where the currently
    used font in the Quartz device context was not correctly
    retained.
  * (Windows) Math symbols in text drawing functions are again
    rendered correctly (PR#18440).  This fixes a regression in R
    4.2.1 caused by a fix in PR#18382 which uncovered an issue in
    GraphApp due to which the symbol charset was not used with TT
    Symbol font face.
  * (Windows) Installing a package with a src/Makefile.{win,ucrt}
    file includes ~/.R/Makevars.win64 in the search for user
    makevars, as documented in "R Installation and Administration"
    and done for packages with a src/Makevars.{win,ucrt} file.
  * format(&lt;POSIXlt_w/_unbalanced_sec&gt;, "....%OS&lt;n&gt;") with n &gt; 0 no
    longer accidentally uses the unbalanced seconds, thanks to
    Suharto Anggono's report (including patch) in PR#18448.
  * solve.default(a, b) works around issues with some versions of
    LAPACK when a contains NA or NaN values.
  * When UseMethod() cannot dispatch, it no longer segfaults
    producing the error message in case of a long class(), thanks to
    Joris Vankerschaver's report (including patch) in PR#18447.
  * When example(foo, ..) produces graphics on an interactive device
    it needs to open itself, it now leaves devAskNewPage() unchanged
    even when it was FALSE, thus fixing a 14 years old '&lt;FIXME&gt;'.
  * packageDescription() again catches errors from encoding
    conversions. This also fixes broken packageVersion() in C locale
    on systems where iconv does not support transliteration.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1681128000">- add patch to build with libcurl &gt;= 8</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1682078400">- CHANGES IN R 4.3.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Calling &amp;&amp; or || with LHS or (if evaluated) RHS of length greater
    than one is now always an error, with a report of the form
    'length = 4' in coercion to 'logical(1)'
    Environment variable _R_CHECK_LENGTH_1_LOGIC2_ no longer has any
    effect.
  NEW FEATURES:
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.10.1.  (This caused some platform-dependent
    changes to package check output.)  And then to the sources from
    LAPACK version 3.11.0 (with changes only to double complex
    subroutines).
  * The included LAPACK sources have been updated to include the four
    Fortran 90 routines rather than their Fortran 77 predecessors.
    This may give some different signs in SVDs or
    eigendecompositions..  (This completes the transition to LAPACK
    3.10.x begun in R 4.2.0.)
  * The LAPACK sources have been updated to version 3.11.0.  (No new
    subroutines have been added, so this almost entirely bug fixes:
    Those fixes do affect some computations with NaNs, including R's
    NA.)
  * The parser now signals _classed_ errors, notably in case of the
    pipe operator |&gt;.  The error object and message now give line and
    column numbers, mostly as proposed and provided by Duncan Murdoch
    in PR#18328.
  * toeplitz() is now generalized for asymmetric cases, with a
    toeplitz2() variant.
  * xy.coords() and xyz.coords() and consequently, e.g., plot(x,y,
    log = "y") now signal a _classed_ warning about negative values
    of y (where log(.) is NA).  Such a warning can be specifically
    suppressed or caught otherwise.
  * Regular expression functions now check more thoroughly whether
    their inputs are valid strings (in their encoding, e.g. in
    UTF-8).
  * The performance of grep(), sub(), gsub() and strsplit() has been
    improved, particularly with perl = TRUE and fixed = TRUE.  Use of
    useBytes = TRUE for performance reasons should no longer be
    needed and is discouraged: it may lead to incorrect results.
  * apropos() gains an argument dot_internals which is used by the
    completion (help(rcompgen)) engine to also see base internals
    such as .POSIXct().
  * Support in tools::Rdiff() for comparing uncompressed PDF files is
    further reduced - see its help page.
  * qqplot(x, y, ...) gains conf.level and conf.args arguments for
    computing and plotting a confidence band for the treatment
    function transforming the distribution of x into the distribution
    of y (Switzer, 1976, _Biometrika_). Contributed by Torsten
    Hothorn.
  * Performance of package_dependencies() has been improved for cases
    when the number of dependencies is large.
  * Strings newly created by gsub(), sub() and strsplit(), when any
    of the inputs is marked as "bytes", are also marked as "bytes".
    This reduces the risk of creating invalid strings and accidental
    substitution of bytes deemed invalid.
  * Support for readLines(encoding = "bytes") has been added to allow
    processing special text files byte-by-byte, without creating
    invalid strings.
  * iconv(from = "") now takes into account any declared encoding of
    the input elements and uses it in preference to the native
    encoding.  This reduces the risk of accidental creation of
    invalid strings, particularly when different elements of the
    input have different encoding (including "bytes").
  * Package repositories in getOption("repos") are now initialized
    from the repositories file when utils is loaded (if not already
    set, e.g., in .Rprofile).  (From a report and patch proposal by
    Gabriel Becker in PR#18405.)
  * compactPDF() gets a verbose option.
  * type.convert() and hence read.table() get new option tryLogical =
    TRUE with back compatible default.  When set to false, converts
    "F" or "T" columns to character.
  * Added new unit prefixes "R" and "Q" for abbreviating
    (unrealistically large) sizes beyond 10^{27} in standard = "SI",
    thanks to Henrik Bengtsson's PR#18435.
  * as.data.frame()'s default method now also works fine with atomic
    objects inheriting from classes such as "roman", "octmode" and
    "hexmode", such fulfilling the wish of PR#18421, by Benjamin
    Feakins.
  * The as.data.frame.vector() utility now errors for wrong-length
    row.names.  It warned for almost six years, with "Will be an
    error!".
  * sessionInfo() now also contains La_version() and reports codepage
    and timezone when relevant, in both print() and toLatex() methods
    which also get new option tzone for displaying timezone
    information when locale = FALSE.
  * New function R_compiled_by() reports the C and Fortran compilers
    used to build R, if known.
  * predict(&lt;lm&gt;, newdata = *) no longer unnecessarily creates an
    offset of all 0s.
  * solve() for complex inputs now uses argument tol and by default
    checks for 'computational singularity' (as it long has done for
    numeric inputs).
  * predict(&lt;rank-deficient lm&gt;, newdata=*) now obeys a new argument
    rankdeficient, with new default "warnif", warning only if there
    are non-estimable cases in newdata.  Other options include
    rankdeficient = "NA", predicting NA for non-estimable newdata
    cases.  This addresses PR#15072 by Russ Lenth and is based on his
    original proposal and discussions in PR#16158 also by David Firth
    and Elin Waring.  Still somewhat experimental.
  * Rgui console implementation now works better with the NVDA screen
    reader when the full blinking cursor is selected.  The underlying
    improvements in cursor handling may help also other screen
    readers on Windows.
  * The drop-field control in GraphApp can now be left with the TAB
    key and all controls can be navigated in the reverse order using
    the Shift+TAB key, improving accessibility of the Rgui
    configuration editor.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now fully accurate
    (instead of to "only" minimally five digits).
  * demo(error.catching) now also shows off withWarnings() and
    tryCatchWEMs().
  * As an experimental feature the placeholder _ can now also be used
    in the rhs of a forward pipe |&gt; expression as the first argument
    in an extraction call, such as _$coef. More generally, it can be
    used as the head of a chain of extractions, such as _$coef[[2]].
  * Spaces in the environment variable used to choose the R session's
    temporary directory (TMPDIR, TMP and TEMP are tried in turn) are
    now fatal.  (On Windows the 'short path' version of the path is
    tried and used if that does not contain a space.)
  * all.equal.numeric() gets a new optional switch giveErr to return
    the numeric error as attribute.  Relatedly,
    stopifnot(all.equal&lt;some&gt;(a, b, ..)) is as "smart" now, as
    stopifnot(all.equal(....)) has been already, thus allowing
    customized all.equal&lt;Some&gt;() wrappers.
  * R on Windows is now able to work with path names longer than 260
    characters when these are enabled in the system (requires at
    least Windows 10 version 1607).  Packages should be updated to
    work with long paths as well, instead of assuming PATH_MAX to be
    the maximum length.  Custom front-ends and applications embedding
    R need to update their manifests if they wish to allow this
    feature.  See
    &lt;https://blog.r-project.org/2023/03/07/path-length-limit-on-windows&gt;
    for more information.
  * 'Object not found' and 'Missing argument' errors now give a more
    accurate error context. Patch provided by Lionel Henry in
    PR#18241.
  * The @ operator is now an S3 generic. Based on contributions by
    Tomasz Kalinowski in PR#18482.
  * New generic chooseOpsMethod() provides a mechanism for objects to
    resolve cases where two suitable methods are found for an Ops
    Group Generic. This supports experimenting with alternative
    object systems. Based on contributions by Tomasz Kalinowski in
    PR#18484.
  * inherits(x, what) now accepts values other than a simple
    character vector for argument what. A new generic, nameOfClass(),
    is called to resolve the class name from what. This supports
    experimenting with alternative object systems. Based on
    contributions by Tomasz Kalinowski in PR#18485.
  * Detection of BLAS/LAPACK in use (sessionInfo()) with FlexiBLAS
    now reports the current backend.
  * The "data.frame" method for subset() now warns about extraneous
    arguments, typically catching the use of = instead of == in the
    subset expression.
  * Calling a:b when numeric a or b is longer than one may now be
    made into an error by setting environment variable
    _R_CHECK_LENGTH_COLON_ to a true value, along the proposal in
    PR#18419 by Henrik Bengtsson.
  * density(x, weights = *) now warns if automatic bandwidth
    selection happens without using weights; new optional warnWbw may
    suppress the warning.  Prompted by Christoph Dalitz' PR#18490 and
    its discussants.
  * rm(list = *) is faster and more readable thanks to Kevin Ushey's
    PR#18492.
  * The plot.lm() function no longer produces a normal Q-Q plot for
    GLMs. Instead it plots a half-normal Q-Q plot of the absolute
    value of the standardized deviance residuals.
  * The print() method for class "summary.glm" no longer shows
    summary statistics for the deviance residuals by default.  Its
    optional argument show.residuals can be used to show them if
    required.
  * The tapply() function now accepts a data frame as its X argument,
    and allows INDEX to be a formula in that case. by.data.frame()
    similarly allows INDICES to be a formula.
  * The performance of df[j] &lt;- value (including for missing j) and
    write.table(df) has been improved for data frames df with a large
    number of columns.  (Thanks to Gabriel Becker's PR#18500,
    PR#18503 and discussants, prompted by a report from Toby Dylan
    Hocking on the R-devel mailing list.)
  * The matrix multiply operator %*% is now an S3 generic, belonging
    to new group generic matrixOps.  From Tomasz Kalinowski's
    contribution in PR#18483.
  * New function array2DF() to convert arrays to data frames,
    particularly useful for the list arrays created by tapply().
  DATES and TIMES:
  * On platforms where (non-UTC) datetimes before 1902 (or before
    1900 as with system functions on recent macOS) are guessed by
    extrapolating time zones from 1902-2037, there is a warning at
    the first use of extrapolation in a session.  (As all time zones
    post 2037 are extrapolation, we do not warn on those.)
  * (Platforms using --with-internal-tzone, including Windows and by
    default macOS). How years are printed in dates or date-times can
    be controlled by environment variable R_PAD_YEARS_BY_ZERO.  The
    default remains to pad to 4 digits by zeroes, but setting value
    no gives no padding (as used by default by glibc).
  * strftime() tries harder to determine the offset for the "%z"
    format, and succeeds on the mainstream R platforms.
  * strftime() has a limit of 2048 bytes on the string produced -
    attempting to exceed this is an error.  (Previously it silently
    truncated at 255 bytes.)
  * sessionInfo() records (and by default prints) the system time
    zone as part of the locale information.  Also, the source
    (system/internal) of the date-time conversion and printing
    functions.
  * Objects of class "POSIXlt" created in this version of R always
    have 11 components: component zone is always set, and component
    gmtoff is set for times in UTC and usually set on the (almost
    all) platforms which have C-level support, otherwise is NA.
  * There are comprehensive validity checks on the structure of
    objects of class "POSIXlt" when converting (including formatting
    and printing).  (This avoids mis-conversions of hand-crafted
    objects.)
  * There is some support for using the native date-time routines on
    macOS: this is only viable on recent versions (e.g. 12.6 and 13)
    and does get wrong some historical changes (before 1900, during
    WWII).  Use of --with-internal-tzone remains the default.
  * as.POSIXct(&lt;numeric&gt;) and as.POSIXlt(.) (without specifying
    origin) now work.  So does as.Date(&lt;numeric&gt;).
  * as.Date.POSIXct(., tz) now treats several tz values, notably
    "GMT" as equivalent to "UTC", proposed and improved by Michael
    Chirico and Joshua Ulrich in PR#17674.
  * Experimental balancePOSIXlt() utility allows using "ragged" and
    or out-of-range "POSIXlt" objects more correctly, e.g., in
    subsetting and subassignments.  Such objects are now documented.
    More experimentally, a "POSIXlt" object may have an attribute
    "balanced" indicating if it is known to be filled or fully
    balanced.
  * Functions axis.Date() and axis.POSIXct() are rewritten to gain
    better default tick locations and better default formats by using
    prettyDate(). Thanks to Swetlana Herbrandt.
  * The mapping of Windows' names for time zones to IANA's 'Olson'
    names has been updated.  When ICU is available (it is by
    default), it is used to get a mapping for the current region set
    in Windows.  This can be overridden by setting environment
    variable TZ to the desired Olson name - see OlsonNames() for
    those currently available.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 16
    and so packages that provide graphics devices should be
    reinstalled.
  * The grDevices and grid packages have new functions for rendering
    typeset glyphs, primarily: grDevices::glyphInfo() and
    grid::grid.glyph().
    Rendering of typeset glyphs is only supported so far on the
    Cairo-based graphics devices and on the pdf() and quartz()
    devices.
  * The defined behaviour for "clear" and "source" compositing
    operators (via grid::grid.group()) has been changed (to align
    better with simple interpretation of original Porter-Duff
    definitions).
  * Support for gradients, patterns, clipping paths, masks, groups,
    compositing operators, and affine transformations has been added
    to the quartz() device.
  INSTALLATION on a UNIX-ALIKE:
  * A system installation of generic LAPACK 3.10.0 or later will be
    preferred to the version in the R sources.
    configure option --with-lapack=no (equivalently --without-lapack)
    forces compilation of the internal LAPACK sources.
    If --with-lapack is not specified, a system liblapack is looked
    for and used if it reports version 3.10.0 or later and does not
    contain BLAS routines.
    Packages using LAPACK will need to be reinstalled if this changes
    to using an external library.
  * On aarch64 Linux platforms using GCC, configure now defaults to
  - fPIC (instead of -fpic), as desired in PR#18326.
  * configure now checks conversion of datetimes between POSIXlt and
    POSIXct around year 2020.  Failure (which has been seen on
    platforms missing tzdata) is fatal.
  * If configure option --with-valgrind-instrumentation is given
    value 1 or 2, option --with-system-valgrind-headers is now the
    default and ignored (with a warning).  It is highly recommended
    that the system headers are installed alongside valgrind: they
    are part of its packaging on some Linux distributions and
    packaged separately (e.g. in the valgrind-devel RPM) on others.
    configure will give a warning if they are not found.
    The system headers will be required in a future release of R to
    build with valgrind instrumentation.
  * libcurl 8.x is now accepted by configure: despite a change in
    major version number it changes neither API nor ABI.
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools43, an update of the Rtools42 toolchain.  It is
    based on gcc 12 and newer versions of MinGW-W64, binutils and
    libraries.  At this time R-devel can still be built using
    Rtools42 without changes, but when R-devel is installed via the
    installer, it will by default look for Rtools43.
  * Old make targets rsync-extsoft and 32-bit ones that are no longer
    needed have been removed.
  * Default builds (including for packages) no longer select C99.
    Thus the C standard used is the default for the compiler, which
    for the toolchain in Rtools43 is C17.  (This is consistent with
    Unix builds.)
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++17 where
    available (which it is on all currently checked platforms): if
    not C++14 or C++11 is used if available otherwise C++ is not
    supported.
  * USE_FC_LEN_T is the default: this uses the correct
    (compiler-dependent) prototypes for Fortran BLAS/LAPACK routines
    called from C/C++, and requires adjustment of many such calls -
    see 'Writing R Extensions' SS6.6.1.
  * There is initial support for C++23 as several compilers are now
    supporting -std=c++23 or -std=c++2b or similar.  As for C++20,
    there no additional configure checks for C++23 features beyond a
    check that the compiler reports a __cplusplus value greater than
    that in the C++20 standard.  C++ feature tests should be used.
  * There is support for a package to indicate the version of the C
    standard which should be used to compile it, and for the
    installing user to specify this.  In most cases R defaults to the
    C compiler's default standard which is C17 (a `bug-fix' of C11) -
    earlier versions of R or compilers may have defaulted to C99.
    Current options are:
    USE_C17 Use a standard that is at most C17.  The intention is to
    allow legacy packages to still be installed when later C
    standards become the default, including packages using new
    keywords as identifiers or with K&amp;R-style function
    declarations.  This will use C17 if available, falling back
    to C11.
    USE_C90 Use the C90 (aka C89) standard.  (As that standard did
    not require compilers to identify that version, all we can
    verify is that the compiler does not claim to be using a
    later standard.  It may accept C99 features - for example
    clang accepts // to make comments.)
    USE_C99 Use the C99 standard. This should be rarely needed - it
    avoids the few new features of C11/C17 which can be useful if
    a package assumes them if C17 is specified and they are not
    implemented.
    USE_C23 Use C23 (or in future, later).  Compiler/library support
    for C23 is still being implemented, but LLVM clang from
    15.0.0 and the upcoming GCC 13 have quite extensive support.
    These can be specified as part of the SystemRequirements field in
    the package's DESCRIPTION file or _via_ options --use-C17 and so
    on of R CMD INSTALL and R CMD SHLIB.
    For further details see "Writing R Extensions" SS1.2.5.
  * (Windows) A src/Makefile.ucrt or src/Makefile.win file is now
    included after R_HOME/etcR_ARCH/Makeconf and so no longer needs
    to include that file itself.  Installation of a package with such
    a file now uses a site Makevars file in the same way as a package
    with a src/Makevars.win file would.
  * configure is now passed crucial variables such as CC and CFLAGS
    in its environment, as many packages were not setting them (as
    documented in 'Writing R Extensions' SS1.2).
    This has most effect where configure is used to compile parts of
    the package - most often by cmake or libtool which obfuscate the
    actual compile commands used.
    Also used for configure.win and configure.ucrt on Windows.
  FORTRAN FLAGS:
  * The flag -fno-optimize-sibling-calls is no longer forced for
    gfortran 7 and later.  It should no longer be needed now using
    'hidden' character-length arguments when calling BLAS/LAPACK
    routines from C/C++ is the default even for packages.  (Unless
    perhaps packages call Fortran code from C/C++ without using R's
    headers and without allowing for these arguments.)
  C-LEVEL FACILITIES:
  * The deprecated S-compatibility macros DOUBLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * The deprecated legacy typedefs of Sint and Sfloat in header R.h
    are no longer defined, and that header no longer includes header
    limits.h from C nor climits from C++.
  * New macro CAD5R() is provided in Rinternals.h and used in a few
    places in the R sources.
  * ALTREP now supports VECSXP vectors. Contributed by Gabor Csardi
    in PR#17620.
  * The Rcomplex definition (in header R_ext/Complex.h) has been
    extended to prevent possible mis-compilation when interfacing
    with Fortran (PR#18430).  The new definition causes compiler
    warnings with static initializers such as {1, 2}, which can be
    changed to {.r=1, .i=2}.
    Using the new definition from C++ depends on compiler extensions
    supporting C features that have not been incorporated into the
    C++ standards but are available in g++ and clang++: this may
    result in C++ compiler warnings but these have been worked around
    for recent versions of common compilers (GCC, Apple/LLVM clang,
    Intel).
    It is intended to change the inclusion of header R_ext/Complex.h
    by other R headers, so C/C++ code files which make use of
    Rcomplex should include that header explicitly.
  UTILITIES:
  * R CMD check does more checking of package .Rd files, warning
    about invalid email addresses and (some) invalid URIs and noting
    empty \item labels in description lists.
  * R CMD check now also reports problems when reading package news
    in md (file NEWS.md) and (optionally) plain text (file NEWS)
    formats.
  * _R_CHECK_TIMINGS_ defaults to a value from the environment even
    for R CMD check --as-cran; this allows for exceptionally fast or
    slow platforms.
    It now applies to checking PDF and HTML versions of the manuals,
    and 'checking CRAN incoming feasibility'.
  * R CMD check can optionally (but included in --as-cran) check
    whether HTML math rendering _via_ KaTeX works for the package .Rd
    files.
  * Non-interactive debugger invocations can be trapped by setting
    the environment variable _R_CHECK_BROWSER_NONINTERACTIVE_ to a
    true value.  This is enabled by R CMD check --as-cran to detect
    the use of leftover browser() statements in the package.
  * The use of sprintf and vsprintf from C/C++ has been deprecated in
    macOS 13 and is a known security risk.  R CMD check now reports
    (on all platforms) if their use is found in compiled code:
    replace by snprintf or vsnprintf respectively. [*NB:* whether
    such calls get compiled into the package is platform-dependent.]
  * Where recorded at installation, R CMD check reports the C and
    Fortran compilers used to build R.
    It reports the OS in use (if known, as given by osVersion) as
    well as that R was built for.
    It notes if a C++ standard was specified which is older than the
    current default: many packages have used C++11 to mean 'not
    C++98' - as C++11 is the minimum supported since R 4.0.0, that
    specification can probably be removed.
  * R CMD INSTALL reports the compilers (and on macOS, the SDK) used,
    and this is copied to the output of R CMD check.
    Where a C++ standard is specified, it is reported.
  * R CMD check's 'checking compilation flags in Makevars' has been
    relaxed to accept the use of flags such as -std=f2008 in
    PKG_FFLAGS.
  * tools::buildVignettes() has a new argument skip, which is used by
    R CMD check to skip (and note) vignettes with unavailable
    \VignetteDepends (PR#18318).
  * New generic .AtNames() added to enable class-specific completions
    after @. The formerly internal function findMatches() is now
    exported, mainly for use in methods for .DollarNames() and
    .AtNames().
  DEPRECATED AND DEFUNCT:
  * default.stringsAsFactors() is defunct.
  * Calling as.data.frame.&lt;class&gt;() directly (for 12 atomic classes)
    is going to be formally deprecated, currently activated by
    setting the environment variable
    _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ to non-empty, which also
    happens in R CMD check --as-cran.
  BUG FIXES:
  * Hashed environments with sizes less than 5 can now grow.
    (Reported to R-devel by Duncan Garmonsway.)
  * as.character(&lt;Rd&gt;, deparse = TRUE) failed to re-escape curly
    braces in LaTeX-like text.  (Reported by Hadley Wickham in
    PR#18324.)
  * library() now passes its lib.loc argument when requiring Depends
    packages; reported (with fix) in PR#18331 by Mikael Jagan.
  * R CMD Stangle: improved message about 'Output' files.
  * head(x, n) and tail(x, n) now signal an error if n is not
    numeric, instead of incidentally "working" sometimes returning
    all of x.  Reported and discussed by Colin Fay, in PR#18357.
  * The "lm" method for summary() now gives the correct F-statistic
    when the model contains an offset.  Reported in PR#18008.
  * C() and `contrasts&lt;-`() now preserve factor level names when
    given a function object (as opposed a function name which did
    preserve names). Reported in PR#17616.
  * c(a = 1, 2)[[]] no longer matches 2 but rather signals a
    _classed_ error.  Reported and analysed by Davis Vaughan in
    PR#18367, a duplicate of PR#18004, by Jan Meis et al.  For
    consistency, NULL[[]] is also erroneous now.  x[[]] &lt;- v gives an
    error of the same class "MissingSubscriptError".
  * The relist() function of utils now supports NULL elements in the
    skeleton (PR#15854).
  * ordered(levels = *) (missing x) now works analogously to factor(,
    ordered=TRUE); reported (with fix) by Achim Zeileis in PR#18389.
  * User-defined Rd macro definitions can now span multiple lines,
    thanks to a patch from Duncan Murdoch. Previously, the Rd parser
    silently ignored everything after the first line.
  * Plain-text help (tools::Rd2txt()) now preserves an initial blank
    line for text following description list items.
  * tools::Rd2HTML() and tools::Rd2latex() no longer split \arguments
    and \value lists at Rd comments.
  * tools::Rd2latex() now correctly handles optional text outside
    \items of argument lists as well as bracketed text at the
    beginning of sections, e.g., \value{[NULL]}.
  * as.character(&lt;POSIXt&gt;) now behaves more in line with the methods
    for atomic vectors such as numbers, and is no longer influenced
    by options().  Ditto for as.character(&lt;Date&gt;).  The
    as.character() method gets arguments digits and OutDec with
    defaults _not_ depending on options().  Use of as.character(*,
    format = .) now warns.
  * Similarly, the as.character.hexmode() and *.octmode() methods
    also behave as good citizen methods and back compatibility option
    keepStr = TRUE.
  * The as.POSIXlt(&lt;POSIXlt&gt;) and as.POSIXct(&lt;POSIXct&gt;) default
    methods now do obey their tz argument, also in this case.
  * as.POSIXlt(&lt;Date&gt;) now does apply a tz (time zone) argument, as
    does as.POSIXct(); partly suggested by Roland Fuss on the R-devel
    mailing list.
  * as.Date.POSIXlt(x) now also works when the list components are of
    unequal length, aka "partially filled" or "ragged".
  * expand.model.frame() looked up variables in the wrong environment
    when applied to models fitted without data.  Reported in
    PR#18414.
  * time() now (also) uses the ts.eps = getOption("ts.eps") argument
    and thus by default rounds values very close to the start (or
    end) of a year.  Based on a proposal by Andre"i V. Kostyrka on
    R-help.
  * Printing of a factanal() result with just one factor and sort =
    TRUE now works regularly, fixing PR#17863 by Timothy Bates,
    thanks to the 'R Contributors' working group.
  * Printing 0-length objects of class "factor", "roman", "hexmode",
    "octmode", "person", "bibentry", or "citation" now prints
    something better, one of which fixes PR#18422, reported by
    Benjamin Feakins.
  * Sys.timezone() queries timedatectl only if systemd is loaded;
    addressing a report by Jan Gorecki in PR#17421.
  * The formula method of cor.test() had scoping problems when
    environment(formula) was not the calling environment; reported
    with a patch proposal by Mao Kobayashi in PR#18439.
  * attach() of an environment with active bindings now preserves the
    active bindings.  Reported by Kevin Ushey in PR#18425.
  * BLAS detection now works also with system-provided libraries not
    available as regular files.  This fixes detection of the
    Accelerate framework on macOS since Big Sur.  Reported by David
    Novgorodsky.
  * download.file() gives a helpful error message in case of an
    invalid download.file.method option, thanks to Colin Fay's report
    in PR#18455.
  * Sporadic crashes of Rterm when using completion have been fixed.
  * Rprof() is now more reliable.  A livelock in thread
    initialization with too short sampling interval has been fixed on
    macOS.  A deadlock in using the C runtime has been fixed on
    Windows.  A potential deadlock has been prevented on Unix.
  * Cursor placement in Rgui now works even after a fixed-width font
    is selected.
  * Mandatory options (options()) are now set on startup so that
    saving and restoring them always works (PR#18372).
  * Package installation, R CMD INSTALL or install.packages(*), now
    parses each of the &lt;pkg&gt;/R/*.R files individually instead of
    first concatenating and then parse()ing the large resulting file.
    This allows parser or syntax errors to be diagnosed with correct
    file names and line numbers, thanks to Simon Dedman's report and
    Bill Dunlap's patch in PR#17859.
    This _does_ require syntactically self contained R source files
    now, fixing another inadvertent bug.
  * predict.lm(&lt;model with offset&gt;) now finds the offset in the
    correct environment, thanks to Andr'e Gillibert's report and patch
    in PR#18456.
  * getInitial(&lt;formula&gt;) now finds the selfStart model in the
    correct environment.  (Reported by Ivan Krylov in PR#18368.)
  * Fix for possible segfault when using recently-added graphics
    features, such as gradients, clipping paths, masks, and groups
    with pdf(file=NULL).
  * class(m) &lt;- class(m) no longer changes a matrix m by adding a
    class _attribute_.
  * packageDate(pkg) now only warns once if there is no pkg.
  * When ts() creates a multivariate time series, "mts", it also
    inherits from "array" now, and is.mts() is documented _and_
    stricter.
  * Rd2txt() now preserves line breaks of \verb Rd content and from
    duplicated \cr.  The former also fixes the rendering of verbatim
    output from Rd \Sexpr in plain-text help.
  * uniroot(f, interval) should no longer wrongly converge _outside_
    the interval in some cases where abs(f(x)) == Inf for an x at the
    interval boundary, thanks to posts by Ben Bolker and Serguei
    Sokol on R-devel.
  * Vectorized alpha handling in palette functions such as in gray(),
    rainbow(), or hcl.colors() works correctly now, thanks to Achim
    Zeileis' report and patch in PR#18476.
  * Formatting and print()ing of bibentry objects has dropped the
    deprecated citation.bibtex.max argument, such that the bibtex
    argument's default for print.bibentry() depends directly on the
    citation.bibtex.max option, whereas in format.bibentry() the
    option no longer applies.
  * Attempting to use a character string naming a foreign function
    entry point in a foreign function call in a package will now
    signal an error if the packages has called R_forceSymbols to
    specify that symbols must be used.
  * An error in table() could permanently set options(warn=2)
    promoting all subsequent warnings to errors.
  * The sigma() function gave misleading results for binary GLMs.  A
    new method for objects of class "glm" returns the square root of
    the estimate of the dispersion parameter using the same
    calculation as summary.glm().
  * bs() and ns() in the (typical) case of automatic knot
    construction, when some of the supposedly inner knots coincide
    with boundary knots, now moves them inside (with a warning),
    building on PR#18442 by Ben Bolker.
  * R CMD on Windows now skips the site profile with --no-site-file
    and --vanilla even when R_PROFILE is set (PR#18512, from Kevin
    Ushey).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1686916800">- CHANGES IN R 4.3.1:
  C-LEVEL FACILITIES:
  * The C-level API version of R's integrate(), Rdqags() in Applic.h,
    now returns the correct number of integrand evaluations neval,
    fixing PR#18515 reported and diagnosed by Stephen Wade.
  * The C prototypes for LAPACK calls dspgv and dtptrs in
    R_exts/Lapack.h had one too many and one too few character length
    arguments - but this has not caused any known issues. To get the
    corrected prototypes, include
    [#]include &lt;Rconfig.h&gt; // for PR18534fixed
    [#]ifdef PR18534fixed
    [#] define usePR18534fix 1
    [#]endif
    [#]include &lt;R_exts/Lapack.h&gt;
    in your C/C++ code (PR#18534).
  INSTALLATION:
  * Many of the checks of esoteric Internet operations and those
    using unreliable external sites have been moved to a new target
    that is not run by default and primarily intended for the core
    developers.  To run them use
    cd tests; make test-Internet-dev
  BUG FIXES:
  * .S3methods(), typically called from methods(), again marks
    methods from package base as visible.
    Also, the visibility of non-base methods is again determined by
    the method's presence in search().
  * tools::Rdiff() is now more robust against invalid strings, fixing
    installation tests on Windows without Rtools installed
    (PR#18530).
  * Fix (new) bug in hcl.colors(2, *), by Achim Zeileis (PR#18523).
  * head(., &lt;illegal&gt;) and tail(..) now produce more useful "Error in
    ...." error messages, fixing PR#18362.
  * Package code syntax on Windows is checked in UTF-8 when UTF-8 is
    the native encoding.
  * na.contiguous(x) now also returns the first run, when it is at
    the beginning and there is a later one of the same length;
    reported to R-devel, including a fix, by Georgi Boshnakov.
    Further, by default, it modifies only an existing attr(*,"tsp")
    but otherwise no longer sets one.
  * chol(&lt;not pos.def&gt;, pivot = &lt;T|F&gt;) now gives a correct error or
    warning message (depending on pivot), thanks to Mikael Jagan's
    (PR#18541).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1699012800">- CHANGES IN R 4.3.2:
  NEW FEATURES:
  * The default initialization of the "repos" option from the
    repositories file at startup can be skipped by setting
    environment variable R_REPOSITORIES to NULL such that
    getOption("repos") is empty if not set elsewhere.
  * qr.X() is now an implicit S4 generic in methods.
  * iconv(to = "ASCII//TRANSLIT") is emulated using substitution on
    platforms which do not support it (notably Alpine Linux).  This
    should give a human-readable conversion in ASCII on all platforms
    (rather than NA_character_).
  * trans3d() gains options continuous and verbose addressing the
    problem of possible "wrap around" when projecting too long
    curves, as reported by Achim Zeileis in PR#18537.
  * tools::showNonASCII() has been rewritten to work better on macOS
    14 (which has a changed implementation of iconv()).
  * tiff(type = "quartz") (the default on macOS) now warns if
    compression is specified: it continues to be ignored.
  INSTALLATION on a UNIX-ALIKE:
  * There is some support for building with Intel's LLVM-based
    compilers on x86_64 Linux, such as (C) icx, (C++) ipcx and
    (Fortran) ifx from oneAPI 2023.x.y.
  * There is support for using LLVM's flang-new as the Fortran
    compiler from LLVM 16.0.x (preferably 17.0.0 or later).
  UTILITIES:
  * R CMD check reports the use of the Fortran 90 random number
    generator RANDOM_NUMBER() and the subroutines to initialize it.
    'Writing R Extensions' has example code to use R's RNGs from
    Fortran.
  BUG FIXES:
  * substr(x, n, L) &lt;- cc now works (more) correctly for multibyte
    UTF-8 strings x when L &gt; nchar(x), thanks to a report and patch
    by 'Architect 95'.
  * contrib.url(character()) now returns 0-length character() as
    documented, which also avoids spurious warnings from
    available.packages() et al. in the edge case of an empty vector
    of repository URLs.
  * readChar(., 4e8) no longer fails, thanks to Kodi Arfer's report
    (PR#18557).
  * lapply(&lt;list&gt;, as.data.frame) no longer warns falsely for some
    base vector components.
  * Communication between parent and child processes in the multicore
    part of parallel could fail on platforms that do not support an
    arbitrarily large payload in system functions read()/write() on
    pipes (seen on macOS where a restriction to INT_MAX bytes is
    documented, without doing a partial read unlike Linux). The
    payload is now split into 1Gb chunks to avoid that problem.
    (PR#18571)
  * qqplot(x,y, conf.level=.) gives better confidence bounds when
    length(x) != length(y), thanks to Alexander Ploner's report and
    patch proposal (PR#18557).
  * norm(&lt;0-length&gt;, "2") now gives zero instead of an error, as all
    the other norm types, thanks to Mikael Jagan's PR#18542.
  * Build-stage Rd macros \packageAuthor and \packageMaintainer now
    process Authors@R, fixing NA results when the package DESCRIPTION
    omits Author and Maintainer fields.
  * Formatting and printing complex numbers could give things like
    0.1683-0i because of rounding error: -0i is now replaced by +0i.
  * postscript() refused to accept a title comment containing the
    letter "W" (PR#18599).
  * isoreg(c(1,Inf)) signals an error instead of segfaulting, fixing
    PR#18603.
  * tiff(type = "Xlib") was only outputting the last page of
    multi-page plots.
  * tools::latexToUtf8() again knows about \~{n} and other letters
    with tilde, fixing a regression in R 4.3.0, and about \^{i} as an
    alternative to \^{\i} (similarly with other accents).
    Furthermore, LaTeX codes for accented I letters are now correctly
    converted, also fixing related mistakes in
    tools::encoded_text_to_latex().
  * tar(*, tar = "internal") no longer creates out-of-spec tar files
    in the very rare case of user or group names longer than 32
    bytes, fixing PR#17871 with thanks to Ivan Krylov.
  * When using the "internal" timezone datetime code, adding a
    fraction of a second no longer adds one second, fixing PR#16856
    from a patch by Ivan Krylov.
  * tools::checkRd() no longer produces spurious notes about
    "unnecessary braces" from multi-line Rd results of \Sexpr macros.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1709208000">- CHANGES IN R 4.3.3:
  NEW FEATURES:
  * iconv() now fixes up variant encoding names such as "utf8"
    case-insensitively.
  DEPRECATED AND DEFUNCT:
  * The legacy encoding = "MacRoman" is deprecated in pdf() and
    postscript(): support was incomplete in earlier versions of R.
  BUG FIXES:
  * Arguments are now properly forwarded to methods on S4 generics
    with ... in the middle of their formal arguments. This was broken
    for the case when a method introduced an argument but did not
    include ... in its own formals. Thanks to Herv'e Pag`es for the
    report PR#18538.
  * Some invalid file arguments to pictex(), postscript() and xfig()
    opened a file called NA rather than throw an error.  These
    included postscript(NULL) (which some people expected to work
    like pdf(NULL)).
  * Passing filename = NA to svg(), cairo_pdf(), cairo_ps() or the
    Cairo-based bitmap devices opened a file called NA: it now throws
    an error.
  * quartz(file = NA) opened a file called NA, including when used as
    a Quartz-based bitmap device.  It now gives an error.
  * rank(&lt;long vector&gt;) now works, fixing PR#18617, thanks to Ilia
    Kats.
  * seq.int() did not adequately check its length.out argument.
  * match(&lt;POSIXct&gt;, .) is correct again for differing time zones,
    ditto for "POSIXlt", fixing PR#18618 reported by Bastian Klein.
  * drop.terms(*, dropx = &lt;0-length&gt;) now works, fixing PR#18563 as
    proposed by Mikael Jagan.
  * drop.terms(*) keeps + offset(.) terms when it should, PR#18565,
    and drop.terms() no longer makes up a response, PR#18566, fixing
    both bugs thanks to Mikael Jagan.
  * getS3method("t", "test") no longer finds the t.test() function,
    fixing PR#18627.
  * pdf() and postscript() support for the documented Adobe encodings
    "Greek" and "Cyrilllic" was missing (although the corresponding
    Windows' codepages could be used).
  * Computations of glyph metric information for pdf() and
    postscript() did not take into account that transliteration could
    replace one character by two or more (only seen on macOS 14) and
    typically warned that the information was not known.
  * rank(x) no longer overflows during integer addition, when
    computing rank average for largish but not-yet long vector x,
    fixing PR#18630, thanks to Ilia Kats.
  * list.files() on Windows now returns also files with names longer
    that 260 bytes (the Windows limit is 260 characters).
    Previously, some file names particularly with 'East Asian'
    characters were omitted.
  * cov2cor(&lt;0 x 0&gt;) now works, fixing PR#18423 thanks to Mikael
    Jagan and Elin Waring.
  * cov2cor(&lt;negative diagonal&gt;) and similar now give one warning
    instead of two, with better wording, fixing PR#18424 thanks to
    Mikael Jagan.
  * tools:: startDynamicHelp() now ensures port is in proper range,
    fixing PR#18645.
  * pbeta(x, a,b) is correct now for x=0 or 1 in the boundary cases
    where a or b or both are 0, fixing PR#18672 thanks to Michael
    Fay.
  * pmatch(x, table) for large table, also called for data frame row
    selection, dfrm[nm, ], is now interruptible, fixing PR#18656.
  * predict(&lt;rank-deficient lm&gt;, newdata=*) fix computing of nbasis,
    see Russ Lenth's comment 29 in PR#16158.
  * Added a work-around for a bug in macOS 14.3.1 and higher which
    prevents R plots in the Quartz Cocoa device from updating on
    screen.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1713960000">- CHANGES IN R 4.4.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Startup banners, R --version, sessionInfo() and R CMD check no
    longer report (64-bit) as part of the platform as this is almost
    universal - the increasingly rare 32-bit platforms will still
    report (32-bit).
    On Windows, ditto for window titles.
  * is.atomic(NULL) now returns FALSE, as NULL is not an atomic
    vector.  Strict back-compatibility would replace is.atomic(foo)
    by (is.null(foo) || is.atomic(foo)) but should happen only
    sparingly.
  NEW FEATURES:
  * The confint() methods for "glm" and "nls" objects have been
    copied to the stats package.  Previously, they were stubs which
    called versions in package MASS. The MASS namespace is no longer
    loaded if you invoke (say) confint(glmfit).  Further, the "glm"
    method for profile() and the plot() and pairs() methods for class
    "profile" have been copied from MASS to stats.  (profile.nls()
    and plot.profile.nls() were already in stats.)
  * The confint() and profile methods for "glm" objects have gained a
    possibility to do profiling based on the Rao Score statistic in
    addition to the default Likelihood Ratio. This is controlled by a
    new test = argument.
  * The pairs() method for "profile" objects has been extended with a
    which = argument to allow plotting only a subset of the
    parameters.
  * The "glm" method for anova() computes test statistics and
    p-values by default, using a chi-squared test or an F test
    depending on whether the dispersion is fixed or free.  Test
    statistics can be suppressed by giving argument test a false
    logical value.
  * In setRepositories() the repositories can be set using their
    names via name = instead of index ind =.
  * methods() and .S3methods() gain a all.names option for the (rare)
    case where functions starting with a . should be included.
  * Serializations can now be interrupted (e.g., by Ctrl-C on a
    Unix-alike) if they take too long, e.g., from save.image(),
    thanks to suggestions by Ivan Krylov and others on R-devel.
  * New startup option --max-connections to set the maximum number of
    simultaneous connections for the session.  Defaults to 128 as
    before: allowed values up to 4096 (but resource limits may in
    practice restrict to smaller values).
  * R on Windows (since Windows 10 2004) now uses the new Segment
    Heap allocator. This may improve performance of some
    memory-intensive applications.
  * When R packages are built, typically by R CMD build &lt;pkg&gt;, the
    new --user=&lt;build_user&gt; option overrides the (internally
    determined) user name, currently Sys.info()["user"] or LOGNAME.
    This is a (modified) fulfillment of Will Landau's suggestion in
    PR#17530.
  * tools::testInstalledBasic() gets new optional arguments outDir
    and testSrcdir, e.g., allowing to use it in a &lt;builddir&gt; !=
    &lt;srcdir&gt; setup, and in standard "binary" Windows installation
  * if* a source tests/ folder is present.
  * range(&lt;DT_with_Inf&gt;, finite = TRUE) now work for objects of class
    "Date", "POSIXct", and "POSIXlt" with infinite entries,
    analogously to range.default(), as proposed by Davis Vaughan on
    R-devel.  Other range()-methods can make use of new function
    .rangeNum().
  * New .internalGenerics object complementing .S3PrimitiveGenerics,
    for documentation and low-level book-keeping.
  * grid() now invisibly returns the x- and y- coordinates at which
    the grid-lines were drawn.
  * norm(., type) now also works for complex matrices.
  * kappa(., exact = TRUE, norm = *) now works for all norms and also
    for complex matrices.  In symmetric / triangular cases, the new
    argument uplo = "U" | "L" allows the upper or lower triangular
    part to be specified.
  * memDecompress(type = "unknown") recognizes compression in the
    default 'zlib' format as used by memCompress(type = "gzip").
  * memCompress() and memDecompress() will use the libdeflate library
    (&lt;https://github.com/ebiggers/libdeflate&gt;) if installed.  This
    uses the same type of compression for type = "gzip" but is 1.5-2x
    faster than the system libz library on some common platforms: the
    speed-up may depend on the library version.
  * diff() for objects of class "Date", "POSIXct", and "POSIXlt"
    accepts a units argument passed via ....
  * Dynamic help now does a much better job of rendering package
    DESCRIPTION metadata.
  * Rprof() gains an event argument and support for elapsed (real)
    time profiling on Unix (PR#18076).
  * filled.contour() gains a key.border argument.
  * tools::update_pkg_po() gets arguments pot_make and mo_make for
    _not_ re-making the corresponding files, and additionally a
    verbose argument.
  * Hexadecimal string colour specifications are now accepted in
    short form, so, for example, we can use "#123", which is
    equivalent to "#112233".
    Thanks to MikeFC for the original idea and Ella Kaye, Malcolm
    Barrett, George Stagg, and Hanne Oberman for the patch.
  * Plain-text help shows \var markup by angle brackets.
  * The new experimental primitive function declare() is intended to
    eventually allow information about R code to be communicated to
    the interpreter, compiler, and code analysis tools. The syntax
    for declarations is still being developed.
  * Functions psmirnov(), qsmirnov() and rsmirnov() in package stats
    have had argument two.sided renamed to alternative, to take into
    account that the permutation distributions of the one-sided
    statistics can be different in the case of ties.  Consequence of
    PR#18582.
  * sort() is now an implicit S4 generic in methods.
  * Formatting and printing, format(z), print(z), of complex vectors
    z no longer zap relatively small real or imaginary parts to zero,
    fixing PR#16752.  This is an API change, as it was documented
    previously to round real and imaginary parts together on purpose,
    producing nicer looking output.  As mentioned, e.g. in the PR,
    this change is compatible with many other "R-like" programming
    environments.
    We have simplified the internal code and now basically format the
    real and imaginary parts independently of each other.
  * New experimental functions Tailcall() and Exec() to support
    writing stack-space-efficient recursive functions.
  * Where characters are attempted to be plotted by pdf(),
    postscript() and xfig() which are not in the selected 8-bit
    character set (most often Latin-1) and the R session is using a
    UTF-8 locale, the warning messages will show the UTF-8 character
    rather than its bytes and one dot will be substituted per
    character rather than per byte.  (Platforms whose iconv() does
    transliteration silently plot the transliteration.)
    In a UTF-8 locale some transliterations are now done with a
    warning (e.g., dashes and Unicode minus to hyphen, ligatures are
    expanded, permille (‰) is replaced by o/oo), although the OS may
    have got there first.  These are warnings as they will continue
    to be replaced by dots in earlier versions of R.
  * The matrix multiplication functions crossprod() and tcrossprod()
    are now also primitive and S3 generic, as %*% had become in R
    4.3.0.
  * source() and example() have a new optional argument catch.aborts
    which allows continued evaluation of the R code after an error.
  * The non-Quartz tiff() devices allow additional types of
    compression if supported by the platform's libtiff library.
  * The list of base and recommended package names is now provided by
    tools::standard_package_names().
  * cairo_pdf() and cairo_ps() default to onefile = TRUE to closer
    match pdf() and postscript().
  * New option catch.script.errors provides a documented way to catch
    errors and then continue in non-interactive use.
  * L %||% R newly in base is an expressive idiom for the phrases
    if(!is.null(L)) L else R or if(is.null(L)) R else L.
  * The return value from warnings() now always inherits from
    "warnings" as documented, now also in the case of no warnings
    where it previously returned NULL.
  * as.complex("1i") now returns 0 + 1i instead of NA with a warning.
  * z &lt;- c(NA, 1i) now keeps the imaginary part Im(z[1]) == 0, no
    longer coercing to NA_complex_.  Similarly, cumsum(z) correctly
    sums real and imaginary parts separately, i.e., without
    "crosstalk" in case of NAs.
  * On Alpine Linux iconv() now maps "latin2", "latin-2", "latin9"
    and "latin-9" to encoding names the OS knows about
    (case-insensitively).
  * iconv(sub = "Unicode") now always zero-pads to four (hex) digits,
    rather than to 4 or 8.  (This seems to have become the convention
    once Unicode restricted the number of Unicode points to 2^21 - 1
    and so will never need more than 6 digits.)
  * NCOL(NULL) now returns 0 instead of 1, for consistency with
    cbind().
  * The information for the Euro glyph missing from the Adobe .afm
    files for the Courier, Helvetica and Times families has been
    copied from their URW equivalents - this will improve vertical
    centring in the pdf() and postscript() devices.
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.12.0.  The changes are almost entirely cosmetic.
  * The included LAPACK sources have been updated to version 3.12.0
    and some further double-complex routines added.
  * There are new font families for the 2014--5 URW 2.0 fonts (see
    ?pdf) which are included in recent versions of Ghostscript.
    These have font widths for most Greek glyphs and a few others
    which were missing from the original versions (whose font
    families remain available for reproducibility, although
    Ghostscript-based viewers will render using the 2.0 versions).
  * Improve the large-n efficiency of as.matrix(&lt;dist&gt;), thanks an R
    contributors effort, notably by Tim Taylor and Heather Turner,
    see PR#18660.
  * The default and numeric methods of all.equal() get a check.class
    option.
  * zapsmall() gets new optional arguments, function mFUN and min.d,
    for extra flexibility; fulfills a wish in PR#18199.  Also, it is
    now an implicit S4 generic in package methods.
  * The Rd filter for aspell() gains an ignore argument.
  * New generic function sort_by(), primarily useful for the
    data.frame method which can be used to sort rows of a data frame
    by one or more columns.
  * The icence headers for the RPC code in src/extra/xdr have been
    updated to use the GPL-compatible licence published by Oracle
    America in 2010.
  * New function pkg2HTML() in tools to create single-page HTML
    reference manuals for R packages.
  * The byte code evaluator now uses less C stack space for recursive
    calls to byte-compiled functions. It also makes more of an effort
    to avoid allocations for scalar return values.
  * New completion option backtick (disabled by default) allows
    non-syntactic completions to be wrapped in backquotes. This is
    currently only useful for Jupyter notebooks via the IRkernel
    package, and may cause problems for other backends.
  INSTALLATION:
  * The parser has been updated to work with bison 3.8.2, which is
    now used for the pre-generated parsers in gram.c, file.c, and
    gramRd.c. A few parser error messages have changed, which may
    affect code that relies on exact messages.
  INSTALLATION on a UNIX-ALIKE:
  * System valgrind headers are now required to use configure option
  - -with-valgrind-instrumentation with value 1 or 2.
  * configure will warn if it encounters a 32-bit build, as that is
    nowadays almost untested.
  * Environment variable R_SYSTEM_ABI is no longer used and so no
    longer recorded in etc/Renviron (it was not on Windows and was
    only ever used when preparing package tools).
  * If the libdeflate library and headers are available, libdeflate
    rather than libz is used to (de)compress R objects in lazy-load
    databases.  Typically tasks spend up to 5% of their time on such
    operations, although creating lazy-data databases is one of the
    exceptions.
    This can be suppressed if the library is available by the
    configure option --without-libdeflate-compression.
  * configure option --enable-lto=check has not worked reliably since
    2019 and has been removed.
  * The minimum autoconf requirement for a maintainer build has been
    increased to autoconf 2.71.
    It is intended to increase this to 2.72 for R 4.5.0: the
    distributed configure file was generated using 2.72.
  * The minimum version requirement for an external LAPACK has been
    reduced to 3.9.0.
  * No default C++ compiler is set if no C++17 compiler is detected:
    there is no longer an automatic fallback to C++14 or C++11.
    Compilers from the last five years should have sufficient
    support: for others macros CXX and CXXSTD can be set in file
    config.site to provide a fallback if needed.
    The Objective-C++ compiler now by default uses the standard
    selected by R for C++ (currently C++17) rather than the default
    standard for the C++ compiler (which on macOS is still C++98).
  INSTALLATION on macOS:
  * A new configure option --with-newAccelerate makes use of Apple's
    'new' BLAS / LAPACK interfaces in their Accelerate framework.
    Those interfaces are only available in macOS 13.3 or later, and
    building requires SDK 13.3 or later (from the Command Line Tools
    or Xcode 14.3 or later).
    By default the option uses new Accelerate for BLAS calls: to also
    use it for LAPACK use option --with-newAccelerate=lapack.  The
    later interfaces provide LAPACK 3.9.1 rather than 3.2.1: 3.9.1 is
    from 2021-04 and does not include the improved algorithms
    introduced in LAPACK 3.10.0 (including for BLAS calls).
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools44, an update of the Rtools43 toolchain.  It is
    based on GCC 13 and newer versions of MinGW-W64, binutils and
    libraries (targeting 64-bit Intel CPUs).  R-devel can no longer
    be built using Rtools43 without changes.
  * Rtools44 has experimental support for 64-bit ARM (aarch64) CPUs
    _via_ the LLVM 17 toolchain using lld, clang/flang-new and
    libc++.
  UTILITIES:
  * R CMD check notes when S4-style exports are used without
    declaring a strong dependence on package methods.
  * tools::checkRd() (used by R CMD check) detects more problems with
    \Sexpr-based dynamic content, including bad nesting of \Sexprs
    and invalid arguments.
  * tools::checkRd() now reports Rd titles and section names ending
    in a period; this is ignored by R CMD check unless environment
    variable _R_CHECK_RD_CHECKRD_MINLEVEL_ is set to -5 or smaller.
  * R CMD check now notes Rd files without an \alias, as long
    documented in 'Writing R Extensions' §1.3.1.  The check for a
    missing \description has been moved from tools::checkRd() to
    tools::checkRdContents().
  * R CMD check now visits inst/NEWS.Rd and OS-specific man
    subdirectories when checking Rd files.
  * tools::checkDocFiles() and tools::checkRdContents() now also
    check internal Rd files by default, but "specially" (ignoring
    missing documentation of arguments).
  * R CMD Rdiff gets option --useEx.
  * R CMD check now warns on non-portable uses of Fortran KIND such
    as INTEGER(KIND=4) and REAL(KIND=8).
    To see the failing lines set environment variable
    _R_CHECK_FORTRAN_KIND_DETAILS_ to a true value.
  * When checking Rd files, R CMD check now notes some of the "lost
    braces" that tools::checkRd() finds.  Typical problems are Rd
    macros missing the initial backslash (e.g., code{...}), in-text
    set notation (e.g., {1, 2}, where the braces need escaping), and
    \itemize lists with \describe-style entries of the form
    \item{label}{description}.
  * R CMD INSTALL (and hence check) will compile C++ code with
  - DR_NO_REMAP if environment variable _R_CXX_USE_NO_REMAP_ is set
    to a true value.  It is planned that this will in future become
    the default for compiling C++.
  * The new built-in Rd macro \dontdiff{} can be used to mark example
    code whose output should be ignored when comparing check output
    to reference output (tests/Examples/&lt;pkg&gt;-Ex.Rout.save).  The
    \dontdiff tag, like \donttest, is _not_ shown on the rendered
    help page, so provides a clean alternative to ##
    IGNORE_RDIFF_(BEGIN|END) comments.
  * R CMD build when there is no NAMESPACE, now uses the recommended
    exportPattern("^[^.]"), instead of exporting everything.
  * R CMD check now warns about non-ASCII characters in the NAMESPACE
    file (in addition to R files). Such packages are not portable and
    may fail to install on some platforms.
  C-LEVEL FACILITIES:
  * Headers R_ext/Applic.h and R-ext/Linpack.h used to include
    R_ext/BLAS.h although this was undocumented and unneeded by their
    documented entry points.  They no longer do so.
  * New function R_missing(), factored out from do_missing(), used to
    fix PR#18579.
  * SEXP type S4SXP has been renamed to OBJSXP to support
    experimenting with alternative object systems.  The S4SXP value
    can still be used in C code but is now deprecated.  Based on
    contributions from the R Consortium's Object-Oriented Programming
    Working Group.
  * New function pow1p(x,y) for accurate (1+x)^y.
  * mkCharLenCE was incorrectly documented to take a size_t length
    but was implemented with int (and character strings in R are
    limited to 2^31 - 1 bytes).
  DEPRECATED AND DEFUNCT:
  * data() no longer handles zipped data from long-defunct (since R
    2.13.0) --use-zip-data installations.
  * The legacy graphics devices pictex() and xfig() are now
    deprecated.  They do not support recent graphics enhancements and
    their font handling is rudimentary. The intention is to retain
    them for historical interest as long as they remain somewhat
    functional.
  * Support for encoding = "MacRoman" has been removed from the pdf()
    and postscript() devices - this was a legacy encoding supporting
    classic macOS up to 2001 and no longer has universal libiconv
    support.
  * is.R() is deprecated as no other S dialect is known to be in use
    (and this could only identify historical dialects, not future
    ones).
    Further information on calls can be obtained by setting the
    environment variable _R_DEPRECATED_IS_R_ to error which turns the
    deprecation warning into an error and so by default gives a
    traceback.  (This is done by R CMD check --as-cran.)
  * UseMethod() no longer forwards local variables assigned in the
    generic function into method call environments before evaluating
    the method body. This makes method calls behave more like
    standard function calls and makes method code easier to analyze
    correctly.
  * The twelve as.data.frame.&lt;class&gt;() methods which were deprecated
    only via _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ and in R CMD
    check --as-cran are formally deprecated now in favour of calling
    as.data.frame() or as.data.frame.vector().  The deprecation
    "check" now works also when as.data.frame() is S4 generic thanks
    to Ivan Krylov.
  * The default method for the directional comparison operators &lt;, &gt;,
    &lt;=, and &gt;= now signals an error when one of the operands is a
    language object, i.e. a symbol or a call.
  * For terms.formula(), deprecate abb and neg.out arguments
    _formally_ in addition to just documenting it.
  BUG FIXES:
  * The methods package is more robust to not being attached to the
    search path.  More work needs to be done.
  * pairwise.t.test() misbehaved when subgroups had 0 DF for
    variance, even with pool.sd = TRUE.  (PR#18594 by Jack Berry).
  * Probability distribution functions [dpq]&lt;distrib&gt;(x, *), but also
    bessel[IKJY](x, .) now consistently preserve attributes(x) when
    length(x) == 0, e.g., for a 2 x 0 matrix, thanks to Karolis
    Koncevičius' report PR#18509.
  * Group "Summary" computations such as sum(1:3, 4, na.rm = 5, NA,
    7, na.rm = LL) now give an error instead of either 17 or NN for
    LL true or false, as proposed by Ivan Krylov on the R-devel
    mailing list.  (This also means it is now an error to specify
    na.rm more than once.)
  * as.complex(x) now returns complex(real = x, imaginary = 0) for
    _all_ numerical and logical x, notably also for NA or
    NA_integer_.
  * Directories are now omitted by file.copy(, recursive = FALSE) and
    in file.append() (PR#17337).
  * gsub() and sub() are now more robust to integer overflow when
    reporting errors caused by too large input strings (PR#18346).
  * Top-level handlers are now more robust to attempts to remove a
    handler whilst handlers are running (PR#18508).
  * The handling of Alt+F4 in dialogs created on Windows using
    GraphApp has been fixed (PR#13870).
  * density() more consistently computes grid values for the
    FFT-based convolution, following Robert Schlicht's analysis and
    proposal in PR#18337, correcting density values typically by a
    factor of about 0.999.  Argument old.coords = TRUE provides back
    compatibility.
  * palette.colors() gains a name argument that defaults to FALSE
    controlling whether the vector of colours that is returned has
    names (where possible).  PR#18529.
  * tools::xgettext() no longer extracts the (non-translatable) class
    names from warningCondition and errorCondition calls.
  * S3method(&lt;gen&gt;, &lt;class&gt;, &lt;func&gt;) in the NAMESPACE file now works
    (again) when &lt;func&gt; is visible from the namespace, e.g.,
    imported, or in base.
  * getParseData(f) now also works for a function defined in the
    first of several &lt;pkg&gt;/R/*.R source files, thanks to Kirill
    Müller's report and Duncan Murdoch's patch in PR#16756.
  * Rd \Sexpr macros with nested #ifdef conditionals were not
    processed.
  * A non-blocking connection with non-default encoding (such as a
    socket) now correctly returns from readLines() after new data has
    arrived also when its EOF had been reached previously.  Thanks to
    Peter Meilstrup's report on R-devel and Ivan Krylov's report and
    patch proposal in PR#18555.
  * tools::checkRdContents() failed to detect empty argument
    descriptions when they spanned multiple lines, including those
    generated by prompt().  These cases are now noted by R CMD check.
  * Plain-text help no longer outputs spurious colons in the
    arguments list (for multi-line \item labels in the Rd source).
  * kappa() and rcond() work correctly in more cases; kappa(., norm =
    "2") now warns that it computes the 1-norm with (default) exact =
    FALSE; prompted by Mikael Jagan's quite comprehensive PR#18543.
  * Rd skeletons generated by prompt() or promptData() now use a
    dummy title (so R CMD build works).  tools::checkRdContents() has
    been updated to detect such template leftovers, including from
    promptPackage().
  * When S4 method dispatch fails because no method was found, the
    error message now includes the signature argument names; thanks
    to Michael Chirico's proposal on the R-devel list.
  * withAutoprint({ .. }) now preserves srcrefs previously lost,
    thanks to Andrew Simmons' report plus fix in PR#18572.
  * transform.data.frame() no longer adjusts names; in particular,
    untransformed variables are kept as-is, including those with
    syntactically invalid names (PR#17890).
  * The keep.source option for Rd \Sexpr blocks is no longer ignored.
  * The formula methods for t.test() and wilcox.test() now catch when
    paired is passed, addressing PR#14359; use Pair(x1, x2) ~ 1 for a
    paired test.
  * The level reported in the browser prompt was often too large. It
    now shows the number of browser contexts on the stack.
  * For cbind() and rbind(), the optional deparse.level argument is
    now properly passed to methods, thanks to Mikael Jagan's PR#18579
    and comments there.
  * Some error and warning messages for large ('long vector')
    matrix(v, nr, nc) and dim(m) &lt;- d are now correct about sizes,
    using long long formatting, fixing PR#18612 (and more) reported
    by Mikael Jagan.
  * readChar(useBytes = TRUE) now terminates strings even when the
    underlying connection uses extra spaces in the input buffer.
    This fixes problems with extra garbage seen with gzip
    connections, PR#18605.
  * Named capture in PCRE regular expressions now works also with
    more than 127 named groups (PR#18588).
  * Datetime functions are now robust against long jumps when dealing
    with internal time zone changes.  This avoids confusing warnings
    about an invalid time zone, previously triggered by turning
    warnings into errors or handling them via tryCatch (PR#17966,
    PR#17780).
  * Datetime functions now restore even an empty TZ environment
    variable after internal time zone changes (PR#17724).  This makes
    results of datetime functions with this (typically unintentional)
    setting more predictable.
  * drop.terms(*) now drops response as by default, keep.response =
    FALSE, fixing PR#18564 thanks to Mikael Jagan.
  * dummy.coef(.) now also works for lm()-models with character
    categorical predictor variables rather than factor ones, fixing
    PR#18635 reported by Jinsong Zhao.
  * formals(f) &lt;- formals(f) now also works for a function w/o
    arguments and atomic _constant_ body(f).
  * Correct as.function(&lt;invalid list&gt;, .)'s error message.
  * removeSource() is yet more thorough in finding and removing
    "srcref" and the other source references from parsed R language
    chunks, fixing PR#18638 thanks to Andrew Simmons.
  * dgeom() is more accurate now, notably when its result is very
    small, fixing PR#18642 thanks to the proposal of Morten Welinder,
    also improving other instances where C level binom_raw(x, n, ..)
    has x == 0 or x== n.
  * warning() with options(warn = 1) has improved output for
    multi-line messages.
  * axis.Date() and axis.POSIXct() now respect the par("lab") setting
    for the number of pretty() intervals.
  * Comparisons for language objects (which are based on deparsing)
    are now more careful about using accurate deparsed results
    (PR#18676).
  * Plain-text help (Rd2txt) now correctly preserves blank lines
    following single-line \dontrun code.
  * &lt;POSIXlt&gt;[*] no longer sets wrong "balanced" attribute, fixing
    PR#18681 thanks to Mikael Jagan.
  * str(&lt;classed-call&gt;) now deparses the call as expected, fixing
    PR#18684, reported by Dave Slager.
  * In Rd examples, code following the closing brace of a \dontrun,
    \dontshow or \donttest tag on the same line is no longer skipped
    when R CMD check runs the examples.
  * as.data.frame(matrix(*, ncol=0)) now gets valid names() and
    colnames(); reported by Davis Vaughan on the R-devel list.
  * Internal Mathlib function stirlerr(n) is now almost fully
    (52-bit) accurate for all n &gt;= ~5.9 and more accurate also in the
    range 1 -- 5.9.  This entails small ("after 12th decimal")
    changes in density functions, e.g., dgamma() in _some_ regions of
    their support.  The fix was partly prompted by Morten Welinder's
    PR#18640.
  * Numbers like 9876543.2 are now considered non-integer by Mathlib
    internal R_nonint(), amending original fix of PR#15734.
  * Rd comment lines no longer cause broken paragraphs in the
    rendered PDF and plain-text help. In code blocks, pure comment
    lines (starting with %) no longer produce an empty line.
  * xtabs(Freq ~ .) now consistently defaults to na.action = na.pass,
    using na.rm = FALSE (added as an argument) when summing over Freq
    (PR#17770).
  * tools::testInstalledPackage() is no longer silent about failures
    from running examples or tests and its return code no longer
    ignores failures from checking vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1718366400">- CHANGES IN R 4.4.1:
  C-LEVEL FACILITIES:
  * Functions R_atof and R_strtod declared in header R_ext/Utils.h
    are now documented in 'Writing R Extensions' and so formally part
    of the API.
  * The non-API entry points Rf_setSVector, Rf_StringFalse,
    Rf_StringTrue and Rf_isBlankString have been added to those
    reported by R CMD check.
  * The new function Rf_allocLang is now available. This provides an
    alternative to the idiom of calling Rf_allocList followed by
    SET_TYPEOF.
  UTILITIES:
  * R CMD check now reports as warnings what gfortran calls 'Fortran
    2018 deleted features', all of which have long been marked as
    'obsolescent' and some of which were deleted in Fortran 2008 or
    earlier.  Fortran compilers are no longer required to support
    these.
  BUG FIXES:
  * as.numeric(), scan(), type.convert() and other places which use
    the internal C function R_strtod now require a _non-empty_ digit
    sequence in a decimal or binary exponent.  This aligns with the
    C/POSIX standard for strtod and with ?NumericConstants.
  * as.data.frame(m, make.names=NA) now works correctly for a matrix
    m with NA's in row names.
  * The error message from &lt;POSIXlt&gt;[["hour"]] and similar now
    mentions *[[, "hour"]], as wished for in PR#17409 and proposed by
    Michael Chirico.
  * qbinom() and potentially qpois(), qnbinom(), no longer sometimes
    fail accurate inversion (of pbinom(), etc), thanks to Christopher
    Chang's report and patch in PR#18711.
  * The internal help server on Windows can again serve requests sent
    in quick succession, fixing a regression in R 4.4.0.
  * debugcall(&lt;S3Generic&gt;()) now also works when a corresponding
    S4-generic version is in the methods cache (PR#18143).
  * Package tools' toTitleCase(ch0) now returns character(0) when ch0
    is of zero length; fixing PR#18724, reported by David Hugh Jones.
  * R CMD check is no longer broken (without a check result and no
    explanation in 00check.log) for a package which declares an
    invalid VignetteBuilder in DESCRIPTION but has no vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1730376000">- CHANGES IN R 4.4.2:
  C-LEVEL FACILITIES:
  * The S-compatibility macros F77_COM and F77_COMDECL defined in
    header R_ext/RS.h are deprecated and will be removed shortly.  We
    could find no record of their use.
  BUG FIXES:
  * Mathlib function lgammacor(x) no longer warns about underflow to
    zero for large x.
  * Text widths and heights were incorrectly reported by the Quartz
    device if the drawing context didn't exist yet (typically when
    drawing off-screen to a window that is yet to appear, see
    PR#18591).
  * The Quartz device could segfault in cases where paths with spaces
    are used in the new glyph drawing API.  Thanks to Tomek
    Gieorgijewski (PR#18758).
  * On macOS in R CRAN builds, it is again possible to read
    little-endian UTF-16 text with a BOM from a connection using
    encoding="UTF-16".  Users building R from source should avoid
    using the system libiconv in macOS 14.1 and later.
  * methods' internal .requirePackage() now re-enables primitive
    method dispatch when needed; thanks to Ivan Krylov for
    demystifying CRAN package check failures on the R-devel mailing
    list.</changelog>
</package>
<package pkgid="23fd5e67fc19a379060ed2950872d7d2c0fc5f9965c83f56bd16c7442b703b4b39d3dfcc1bb9f60e90fa1657750639458bee7828ede7fa7053e363e943e6a311" name="R-nnet" arch="i586">
  <version epoch="0" ver="7.3.19" rel="51.0.2.2.sr20241103"/>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1620302400">- To get in sync with d:l:R:autoCRAN the Matrix package's split
  in -devel was reversed.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339200">- improved spec file according to comments of dimstar in
  https://build.opensuse.org/request/show/892685</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339201">- CHANGES IN R 4.1.0:
  FUTURE DIRECTIONS:
  * It is planned that the 4.1.x series will be the last to support
    32-bit Windows, with production of binary packages for that
    series continuing until early 2023.
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Data set esoph in package datasets now provides the correct
    numbers of controls; previously it had the numbers of cases added
    to these.  (Reported by Alexander Fowler in PR#17964.)
  NEW FEATURES:
  * www.omegahat.net is no longer one of the repositories known by
    default to setRepositories().  (Nowadays it only provides source
    packages and is often unavailable.)
  * Function package_dependencies() (in package tools) can now use
    different dependency types for direct and recursive dependencies.
  * The checking of the size of tarball in R CMD check --as-cran
    &lt;pkg&gt; may be tweaked via the new environment variable
    _R_CHECK_CRAN_INCOMING_TARBALL_THRESHOLD_, as suggested in
    PR#17777 by Jan Gorecki.
  * Using c() to combine a factor with other factors now gives a
    factor, an ordered factor when combining ordered factors with
    identical levels.
  * apply() gains a simplify argument to allow disabling of
    simplification of results.
  * The format() method for class "ftable" gets a new option justify.
    (Suggested by Thomas Soeiro.)
  * New ...names() utility.  (Proposed by Neal Fultz in PR#17705.)
  * type.convert() now warns when its as.is argument is not
    specified, as the help file always said it _should_.  In that
    case, the default is changed to TRUE in line with its change in
    read.table() (related to stringsAsFactor) in R 4.0.0.
  * When printing list arrays, classed objects are now shown _via_
    their format() value if this is a short enough character string,
    or by giving the first elements of their class vector and their
    length.
  * capabilities() gets new entry "Rprof" which is TRUE when R has
    been configured with the equivalent of --enable-R-profiling (as
    it is by default).  (Related to Michael Orlitzky's report
    PR#17836.)
  * str(xS4) now also shows extraneous attributes of an S4 object
    xS4.
  * Rudimentary support for vi-style tags in rtags() and R CMD rtags
    has been added.  (Based on a patch from Neal Fultz in PR#17214.)
  * checkRdContents() is now exported from tools; it and also
    checkDocFiles() have a new option chkInternal allowing to check
    Rd files marked with keyword "internal" as well.  The latter can
    be activated for R CMD check via environment variable
    _R_CHECK_RD_INTERNAL_TOO_.
  * New functions numToBits() and numToInts() extend the raw
    conversion utilities to (double precision) numeric.
  * Functions URLencode() and URLdecode() in package utils now work
    on vectors of URIs.  (Based on patch from Bob Rudis submitted
    with PR#17873.)
  * path.expand() can expand ~user on most Unix-alikes even when
    readline is not in use.  It tries harder to expand ~, for example
    should environment variable HOME be unset.
  * For HTML help (both dynamic and static), Rd file links to help
    pages in external packages are now treated as references to
    topics rather than file names, and fall back to a file link only
    if the topic is not found in the target package. The earlier rule
    which prioritized file names over topics can be restored by
    setting the environment variable _R_HELP_LINKS_TO_TOPICS_ to a
    false value.
  * c() now removes NULL arguments before dispatching to methods,
    thus simplifying the implementation of c() methods, _but_ for
    back compatibility keeps NULL when it is the first argument.
    (From a report and patch proposal by Lionel Henry in PR#17900.)
  * Vectorize()'s result function's environment no longer keeps
    unneeded objects.
  * Function ...elt() now propagates visibility consistently with
    ..n.  (Thanks to Lionel Henry's PR#17905.)
  * capture.output() no longer uses non-standard evaluation to
    evaluate its arguments.  This makes evaluation of functions like
    parent.frame() more consistent.  (Thanks to Lionel Henry's
    PR#17907.)
  * packBits(bits, type="double") now works as inverse of
    numToBits().  (Thanks to Bill Dunlap's proposal in PR#17914.)
  * curlGetHeaders() has two new arguments, timeout to specify the
    timeout for that call (overriding getOption("timeout")) and TLS
    to specify the minimum TLS protocol version to be used for
    https:// URIs (_inter alia_ providing a means to check for sites
    using deprecated TLS versions 1.0 and 1.1).
  * For nls(), an optional constant scaleOffset may be added to the
    denominator of the relative offset convergence test for cases
    where the fit of a model is expected to be exact, thanks to a
    proposal by John Nash.  nls(*, trace=TRUE) now also shows the
    convergence criterion.
  * Numeric differentiation _via_ numericDeriv() gets new optional
    arguments eps and central, the latter for taking central divided
    differences.  The latter can be activated for nls() via
    nls.control(nDcentral = TRUE).
  * nls() now passes the trace and control arguments to getInitial(),
    notably for all self-starting models, so these can also be fit in
    zero-noise situations via a scaleOffset.  For this reason, the
    initial function of a selfStart model must now have ... in its
    argument list.
  * bquote(splice = TRUE) can now splice expression vectors with
    attributes: this makes it possible to splice the result of
    parse(keep.source = TRUE).  (Report and patch provided by Lionel
    Henry in PR#17869.)
  * textConnection() gets an optional name argument.
  * get(), exists(), and get0() now signal an error if the first
    argument has length greater than 1.  Previously additional
    elements were silently ignored.  (Suggested by Antoine Fabri on
    R-devel.)
  * R now provides a shorthand notation for creating functions, e.g.
    \(x) x + 1 is parsed as function(x) x + 1.
  * R now provides a simple native forward pipe syntax |&gt;.  The
    simple form of the forward pipe inserts the left-hand side as the
    first argument in the right-hand side call.  The pipe
    implementation as a syntax transformation was motivated by
    suggestions from Jim Hester and Lionel Henry.
  * all.equal(f, g) for functions now by default also compares their
    environment(.)s, notably via new all.equal method for class
    function.  Comparison of nls() fits, e.g., may now need
    all.equal(m1, m2, check.environment = FALSE).
  * .libPaths() gets a new option include.site, allowing to _not_
    include the site library.  (Thanks to Dario Strbenac's suggestion
    and Gabe Becker's PR#18016.)
  * Lithuanian translations are now available.  (Thanks to Rimantas
    Zakauskas.)
  * names() now works for DOTSXP objects.  On the other hand, in
    R-lang, the R language manual, we now warn against relying on the
    structure or even existence of such dot-dot-dot objects.
  * all.equal() no longer gives an error on DOTSXP objects.
  * capabilities("cairo") now applies only to the file-based devices
    as it is now possible (if very unusual) to build R with Cairo
    support for those but not for X11().
  * There is optional support for tracing the progress of
    loadNamespace() - see its help.
  * (Not Windows.)  l10n_info() reports an additional element, the
    name of the encoding as reported by the OS (which may differ from
    the encoding part (if any) of the result from
    Sys.getlocale("LC_CTYPE").
  * New function gregexec() which generalizes regexec() to find _all_
    disjoint matches and well as all substrings corresponding to
    parenthesized subexpressions of the given regular expression.
    (Contributed by Brodie Gaslam.)
  * New function charClass() in package utils to query the
    wide-character classification functions in use (such as
    iswprint).
  * The names of quantile()'s result no longer depend on the global
    getOption("digits"), but quantile() gets a new optional argument
    digits = 7 instead.
  * grep(), sub(), regexp and variants work considerably faster for
    long factors with few levels.  (Thanks to Michael Chirico's
    PR#18063.)
  * Provide grouping of x11() graphics windows within a window
    manager such as Gnome or Unity; thanks to a patch by Ivan Krylov
    posted to R-devel.
  * The split() method for class data.frame now allows the f argument
    to be specified as a formula.
  * sprintf now warns on arguments unused by the format string.
  * New palettes "Rocket" and "Mako" for hcl.colors() (approximating
    palettes of the same name from the 'viridisLite' package).
    Contributed by Achim Zeileis.
  * The base environment and its namespace are now locked (so one can
    no longer add bindings to these or remove from these).
  * Rterm handling of multi-byte characters has been improved,
    allowing use of such characters when supported by the current
    locale.
  * Rterm now accepts ALT+ +xxxxxxxx sequences to enter Unicode
    characters as hex digits.
  * Environment variable LC_ALL on Windows now takes precedence over
    LC_CTYPE and variables for other supported categories, matching
    the POSIX behaviour.
  * duplicated() and anyDuplicated() are now optimized for integer
    and real vectors that are known to be sorted via the ALTREP
    framework. Contributed by Gabriel Becker via PR#17993.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 14
    and so packages that provide graphics devices should be
    reinstalled.
  * Graphics devices should now specify deviceVersion to indicate
    what version of the graphics engine they support.
  * Graphics devices can now specify deviceClip.  If TRUE, the
    graphics engine will never perform any clipping of output itself.
    The clipping that the graphics engine does perform (for both
    canClip = TRUE and canClip = FALSE) has been improved to avoid
    producing unnecessary artifacts in clipped output.
  * The grid package now allows gpar(fill) to be a linearGradient(),
    a radialGradient(), or a pattern().  The viewport(clip) can now
    also be a grob, which defines a clipping path, and there is a new
    viewport(mask) that can also be a grob, which defines a mask.
    These new features are only supported so far on the Cairo-based
    graphics devices and on the pdf() device.
  * (Not Windows.)  A warning is given when a Cairo-based type is
    specified for a png(), jpeg(), tiff() or bmp() device but Cairo
    is unsupported (so type = "Xlib" is tried instead).
  * grSoftVersion() now reports the versions of FreeType and
    FontConfig if they are used directly (not _via_ Pango), as is
    most commonly done on macOS.
  C-LEVEL FACILITIES:
  * The _standalone_ libRmath math library and R's C API now provide
    log1pexp() again as documented, and gain log1mexp().
  INSTALLATION on a UNIX-ALIKE:
  * configure checks for a program pkgconf if program pkg-config is
    not found.  These are now only looked for on the path (like
    almost all other programs) so if needed specify a full path to
    the command in PKG_CONFIG, for example in file config.site.
  * C99 function iswblank is required - it was last seen missing ca
    2003 so the workaround has been removed.
  * There are new configure options --with-internal-iswxxxxx,
  - -with-internal-towlower and --with-internal-wcwidth which allows
    the system functions for wide-character classification,
    case-switching and width (wcwidth and wcswidth) to be replaced by
    internal ones.  The first has long been used on macOS, AIX (and
    Windows) but this enables it to be unselected there and selected
    for other platforms (it is the new default on Solaris).  The
    second is new in this version of R and is selected by default on
    macOS and Solaris.  The third has long been the default and
    remains so as it contains customizations for East Asian
    languages.
    System versions of these functions are often minimally
    implemented (sometimes only for ASCII characters) and may not
    cover the full range of Unicode points: for example Solaris (and
    Windows) only cover the Basic Multilingual Plane.
  * Cairo installations without X11 are more likely to be detected by
    configure, when the file-based Cairo graphics devices will be
    available but not X11(type = "cairo").
  * There is a new configure option --with-static-cairo which is the
    default on macOS.  This should be used when only static cairo
    (and where relevant, Pango) libraries are available.
  * Cairo-based graphics devices on platforms without Pango but with
    FreeType/FontConfig will make use of the latter for font
    selection.
  LINK-TIME OPTIMIZATION on a UNIX-ALIKE:
  * Configuring with flag --enable-lto=R now also uses LTO when
    installing the recommended packages.
  * R CMD INSTALL and R CMD SHLIB have a new flag --use-LTO to use
    LTO when compiling code, for use with R configured with
  - -enable-lto=R.  For R configured with --enable-lto, they have
    the new flag --no-use-LTO.
    Packages can opt in or out of LTO compilation _via_ a UseLTO
    field in the DESCRIPTION file.  (As usual this can be overridden
    by the command-line flags.)
  BUILDING R on Windows:
  * for GCC &gt;= 8, FC_LEN_T is defined in config.h and hence character
    lengths are passed from C to Fortran in _inter alia_ BLAS and
    LAPACK calls.
  * There is a new text file src/gnuwin32/README.compilation, which
    outlines how C/Fortran code compilation is organized and
    documents new features:
  * R can be built with Link-Time Optimization with a suitable
    compiler - doing so with GCC 9.2 showed several
    inconsistencies which have been corrected.
  * There is support for cross-compiling the C and Fortran code
    in R and standard packages on suitable (Linux) platforms.
    This is mainly intended to allow developers to test later
    versions of compilers - for example using GCC 9.2 or 10.x has
    detected issues that GCC 8.3 in Rtools40 does not.
  * There is experimental support for cross-building R packages
    with C, C++ and/or Fortran code.
  * The R installer can now be optionally built to support a single
    architecture (only 64-bit or only 32-bit).
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++14 where
    available (which it is on all currently checked platforms): if
    not (as before) C++11 is used if available otherwise C++ is not
    supported.
    Packages which specify C++11 will still be installed using C++11.
    C++14 compilers may give deprecation warnings, most often for
    std::random_shuffle (deprecated in C++14 and removed in C++17).
    Either specify C++11 (see 'Writing R Extensions') or modernize
    the code and if needed specify C++14.  The latter has been
    supported since R 3.4.0 so the package's DESCRIPTION would need
    to include something like
    Depends: R (&gt;= 3.4)
  PACKAGE INSTALLATION on Windows:
  * R CMD INSTALL and R CMD SHLIB make use of their flag --use-LTO
    when the LTO_OPT make macro is set in file etc/${R_ARCH}/Makeconf
    or in a personal/site Makevars file.  (For details see 'Writing R
    Extensions' SS4.5.)
    This provides a valuable check on code consistency.  It does work
    with GCC 8.3 as in Rtools40, but that does not detect everything
    the CRAN checks with current GCC do.
  PACKAGE INSTALLATION on macOS:
  * The default personal library directory on builds with
  - -enable-aqua (including CRAN builds) now differs by CPU type,
    one of
    ~/Library/R/x86_64/x.y/library
    ~/Library/R/arm64/x.y/library
    This uses the CPU type R (and hence the packages) were built for,
    so when a x86_64 build of R is run under Rosetta emulation on an
    arm64 Mac, the first is used.
  UTILITIES:
  * R CMD check can now scan package functions for bogus return
    statements, which were possibly intended as return() calls (wish
    of PR#17180, patch by Sebastian Meyer). This check can be
    activated via the new environment variable
    _R_CHECK_BOGUS_RETURN_, true for --as-cran.
  * R CMD build omits tarballs and binaries of previous builds from
    the top-level package directory.  (PR#17828, patch by Sebastian
    Meyer.)
  * R CMD check now runs sanity checks on the use of LazyData, for
    example that a data directory is present and that
    LazyDataCompression is not specified without LazyData and has a
    documented value.  For packages with large LazyData databases
    without specifying LazyDataCompression, there is a reference to
    the code given in 'Writing R Extensions' SS1.1.6 to test the
    choice of compression (as in all the CRAN packages tested a
    non-default method was preferred).
  * R CMD build removes LazyData and LazyDataCompression fields from
    the DESCRIPTION file of packages without a data directory.
  ENCODING-RELATED CHANGES:
  * The parser now treats \Unnnnnnnn escapes larger than the upper
    limit for Unicode points (\U10FFFF) as an error as they cannot be
    represented by valid UTF-8.
    Where such escapes are used for outputting non-printable
    (including unassigned) characters, 6 hex digits are used (rather
    than 8 with leading zeros).  For clarity, braces are used, for
    example \U{0effff}.
  * The parser now looks for non-ASCII spaces on Solaris (as
    previously on most other OSes).
  * There are warnings (including from the parser) on the use of
    unpaired surrogate Unicode points such as \uD834.  (These cannot
    be converted to valid UTF-8.)
  * Functions nchar(), tolower(), toupper() and chartr() and those
    using regular expressions have more support for inputs with a
    marked Latin-1 encoding.
  * The character-classification functions used (by default) to
    replace the system iswxxxxx functions on Windows, macOS and AIX
    have been updated to Unicode 13.0.0.
    The character-width tables have been updated to include new
    assignments in Unicode 13.0.0.
  * The code for evaluating default (extended) regular expressions
    now uses the same character-classification functions as the rest
    of R (previously they differed on Windows, macOS and AIX).
  * There is a build-time option to replace the system's
    wide-character wctrans C function by tables shipped with R: use
    configure option --with-internal-towlower or (on Windows)
  - DUSE_RI18N_CASE in CFLAGS when building R.  This may be needed
    to allow tolower() and toupper() to work with Unicode characters
    beyond the Basic Multilingual Plane where not supported by system
    functions (e.g. on Solaris where it is the new default).
  * R is more careful when truncating UTF-8 and other multi-byte
    strings that are too long to be printed, passed to the system or
    libraries or placed into an internal buffer.  Truncation will no
    longer produce incomplete multibyte characters.
  DEPRECATED AND DEFUNCT:
  * Function plclust() from the package stats and
    package.dependencies(), pkgDepends(), getDepList(),
    installFoundDepends(), and vignetteDepends() from package tools
    are defunct.
  * Defunct functions checkNEWS() and readNEWS() from package tools
    and CRAN.packages() from utils have been removed.
  * R CMD config CXXCPP is defunct (it was deprecated in R 3.6.2).
  * parallel::detectCores() drops support for Irix (retired in 2013).
  * The LINPACK argument to chol.default(), chol2inv(),
    solve.default() and svd() has been defunct since R 3.1.0.  It was
    silently ignored up to R 4.0.3 but now gives an error.
  * Subsetting/indexing, such as ddd[*] or ddd$x on a DOTSXP
    (dot-dot-dot) object ddd has been disabled; it worked by accident
    only and was undocumented.
  BUG FIXES:
  * Many more C-level allocations (mainly by malloc and strdup) are
    checked for success with suitable alternative actions.
  * Bug fix for replayPlot(); this was turning off graphics engine
    display list recording if a recorded plot was replayed in the
    same session.  The impact of the bug became visible if resize the
    device after replay OR if attempted another savePlot() after
    replay (empty display list means empty screen on resize or empty
    saved plot).
  * R CMD check etc now warn when a package exports non-existing S4
    classes or methods, also in case of no "methods" presence.
    (Reported by Alex Bertram; reproducible example and patch by
    Sebastian Meyer in PR#16662.)
  * boxplot() now also accepts calls for labels such as ylab, the
    same as plot().  (Reported by Marius Hofert.)
  * The help page for xtabs() now correctly states that addNA is
    setting na.action = na.pass among others.  (Reported as PR#17770
    by Thomas Soeiro.)
  * The R CMD check &lt;pkg&gt; gives a longer and more comprehensible
    message when DESCRIPTION misses dependencies, e.g., in Imports:.
    (Thanks to the contributors of PR#17179.)
  * update.default() now calls the generic update() on the formula to
    work correctly for models with extended formulas.  (As reported
    and suggested by Neal Fultz in PR#17865.)
  * The horizontal position of leaves in a dendrogram is now correct
    also with center = FALSE.  (PR#14938, patch from Sebastian
    Meyer.)
  * all.equal.POSIXt() no longer warns about and subsequently ignores
    inconsistent "tzone" attributes, but describes the difference in
    its return value (PR#17277).  This check can be disabled _via_
    the new argument check.tzone = FALSE as suggested by Sebastian
    Meyer.
  * as.POSIXct() now populates the "tzone" attribute from its tz
    argument when x is a logical vector consisting entirely of NA
    values.
  * x[[2^31]] &lt;- v now works.  (Thanks to the report and patch by
    Suharto Anggono in PR#17330.)
  * In log-scale graphics, axis() ticks and label positions are now
    computed more carefully and symmetrically in their range,
    typically providing _more_ ticks, fulfilling wishes in PR#17936.
    The change really corresponds to an improved axisTicks() (package
    grDevices), potentially influencing grid and lattice, for
    example.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now correct to at
    least five digits where it was catastrophically wrong,
    previously.
  * sum(df) and similar "Summary"- and "Math"-group member functions
    now work for data frames df with logical columns, notably also of
    zero rows.  (Reported to R-devel by Martin "b706".)
  * unsplit() had trouble with tibbles due to unsound use of rep(NA,
    len)-indexing, which should use NA_integer_ (Reported to R-devel
    by Mario Annau.)
  * pnorm(x, log.p = TRUE) underflows to -Inf slightly later.
  * show(&lt;hidden S4 generic&gt;) prints better and without quotes for
    non-hidden S4 generics.
  * read.table() and relatives treated an "NA" column name as missing
    when check.names = FALSE PR#18007.
  * Parsing strings containing UTF-16 surrogate pairs such as
    "\uD834\uDD1E" works better on some (uncommon) platforms.
    sprintf("%X", utf8ToInt("\uD834\uDD1E")) should now give "1D11E"
    on all platforms.
  * identical(x,y) is no longer true for differing DOTSXP objects,
    fixing PR#18032.
  * str() now works correctly for DOTSXP and related exotics, even
    when these are doomed.
    Additionally, it no longer fails for lists with a class and
    "irregular" method definitions such that e.g. lapply(*) will
    necessarily fail, as currently for different igraph objects.
  * Too long lines in environment files (e.g. Renviron) no longer
    crash R. This limit has been increased to 100,000 bytes.
    (PR#18001.)
  * There is a further workaround for FreeType giving incorrect
    italic font faces with cairo-based graphics devices on macOS.
  * add_datalist(*, force = TRUE) (from package tools) now actually
    updates an existing data/datalist file for new content.  (Thanks
    to a report and patch by Sebastian Meyer in PR#18048.)
  * cut.Date() and cut.POSIXt() could produce an empty last interval
    for breaks = "months" or breaks = "years".  (Reported as PR#18053
    by Christopher Carbone.)
  * Detection of the encoding of 'regular' macOS locales such as
    en_US (which is UTF-8) had been broken by a macOS change:
    fortunately these are now rarely used with en_US.UTF-8 being
    preferred.
  * sub() and gsub(pattern, repl, x, *) now keep attributes of x such
    as names() also when pattern is NA (PR#18079).
  * Time differences ("difftime" objects) get a replacement and a
    rep() method to keep "units" consistent.  (Thanks to a report and
    patch by Nicolas Bennett in PR#18066.)
  * The \RdOpts macro, setting defaults for \Sexpr options in an Rd
    file, had been ineffective since R 2.12.0: it now works again.
    (Thanks to a report and patch by Sebastian Meyer in PR#18073.)
  * mclapply and pvec no longer accidentally terminate parallel
    processes started before by mcparallel or related calls in
    package parallel (PR#18078).
  * grep and other functions for evaluating (extended) regular
    expressions handle in Unicode also strings not explicitly flagged
    UTF-8, but flagged native when running in UTF-8 locale.
  * Fixed a crash in fifo implementation on Windows (PR#18031).
  * Binary mode in fifo on Windows is now properly detected from
    argument open (PR#15600, PR#18031).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1622808000">- The line %{__install} -m 755 -d %{_infodir}
  no longer works in TW or Factory.
  But without that line it works everywhere. So this instruction
  was commented out of the spec file.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1628596800">- CHANGES IN R 4.1.1:
  NEW FEATURES:
  * require(pkg, quietly = TRUE) is quieter and in particular does
    not warn if the package is not found.
  DEPRECATED AND DEFUNCT:
  * Use of ftp:// URIs should be regarded as deprecated, with
    on-going support confined to method = "libcurl" and not routinely
    tested.  (Nowadays no major browser supports them.)
  * The non-default method = "internal" is deprecated for http:// and
    ftp:// URIs for both download.file and url.
  * On Windows, method = "wininet" is deprecated for http://,
    https:// and ftp:// URIs for both download.file and url.  (A
    warning is only given for ftp://.)
    For ftp:// URIs the default method is now "libcurl" if available
    (which it is on CRAN builds).
    method = "wininet" remains the default for http:// and https://
    URIs but if libcurl is available, using method = "libcurl" is
    preferred.
  INSTALLATION:
  * make check now works also without a LaTeX installation.  (Thanks
    to Sebastian Meyer's PR#18103.)
  BUG FIXES:
  * make check-devel works again in an R build configured with
  - -without-recommended-packages.
  * qnbinom(p, size, mu) for large size/mu is correct now in a range
    of cases (PR#18095); similarly for the (size, prob)
    parametrization of the negative binomial.  Also qpois() and
    qbinom() are better and or faster for extreme cases.  The
    underlying C code has been modularized and is common to all four
    cases of discrete distributions.
  * gap.axis is now part of the axis() arguments which are passed
    from bxp(), and hence boxplot().  (Thanks to Martin Smith's
    report and suggestions in PR#18109.)
  * .First and .Last can again be set from the site profile.
  * seq.int(from, to, *) and seq.default(..) now work better in large
    range cases where from-to is infinite where the two boundaries
    are finite.
  * all.equal(x,y) now returns TRUE correctly also when several
    entries of abs(x) and abs(y) are close to .Machine$double.xmax,
    the largest finite numeric.
  * model.frame() now clears the object bit when removing the class
    attribute of a value via na.action (PR#18100).
  * charClass() now works with multi-character strings on Windows
    (PR#18104, fixed by Bill Dunlap).
  * encodeString() on Solaris now works again in Latin-1 encoding on
    characters represented differently in UTF-8.  Support for
    surrogate pairs on Solaris has been improved.
  * file.show() on Windows now works with non-ASCII path names
    representable in the current native encoding (PR#18132).
  * Embedded R on Windows can now find R home directory via the
    registry even when installed only for the current user
    (PR#18135).
  * pretty(x) with finite x now returns finite values also in the
    case where the extreme x values are close in size to the maximal
    representable number .Machine$double.xmax.
    Also, it's been tweaked for very small ranges and when a boundary
    is close (or equal) to zero; e.g., pretty(c(0,1e-317)) no longer
    has negative numbers, currently still warning about a very small
    range, and pretty(2^-(1024 - 2^-1/(c(24,10)))) is more accurate.
  * The error message for not finding vignette files when weaving has
    correct file sizes now. (Thanks to Sebastian Meyer's PR#18154.)
  * dnbinom(20, &lt;large&gt;, 1) now correctly gives 0, and similar cases
    are more accurate with underflow precaution.  (Reported by Francisco Vera Alcivar in PR#18072.)</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635163200">- repaired https://bugzilla.suse.com/show_bug.cgi?id=1191380
  (rpmacros now go to rpmmacrodir)
- minor clean-ups in spec file</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635768000">- CHANGES IN R 4.1.2:
  C-LEVEL FACILITIES:
  * The workaround in headers R.h and Rmath.h (using namespace std;)
    for the Oracle Developer Studio compiler is no longer needed now
    C++11 is required so has been removed.  A couple more usages of
    log() (which should have been std::log()) with an int argument
    are reported on Solaris.
  * The undocumented limit of 4095 bytes on messages from the
    S-compatibility macros PROBLEM and MESSAGE is now documented and
    longer messages will be silently truncated rather than
    potentially causing segfaults.
  * If the R_NO_SEGV_HANDLER environment variable is non-empty, the
    signal handler for SEGV/ILL/BUS signals (which offers recovery
    user interface) is not set. This allows more reliable debugging
    of crashes that involve the console.
  DEPRECATED AND DEFUNCT:
  * The legacy S-compatibility macros PROBLEM, MESSAGE, ERROR, WARN,
    WARNING, RECOVER, ... are deprecated and will be hidden in R
    4.2.0. R's native interface of Rf_error and Rf_warning has long
    been preferred.
  BUG FIXES:
  * .mapply(F, dots, .) no longer segfaults when dots is not a list
    and uses match.fun(F) as always documented; reported by Andrew
    Simmons in PR#18164.
  * hist(&lt;Date&gt;, ...) and hist(&lt;POSIXt&gt;, ...)  no longer pass
    arguments for rect() (such as col and density) to axis().
    (Thanks to Sebastian Meyer's PR#18171.)
  * \Sexpr{ch} now preserves Encoding(ch). (Thanks to report and
    patch by Jeroen Ooms in PR#18152.)
  * Setting the RNG to "Marsaglia-Multicarry" e.g., by RNGkind(), now
    warns in more places, thanks to Andr'e Gillibert's report and
    patch in PR#18168.
  * gray(numeric(), alpha=1/2) no longer segfaults, fixing PR#18183,
    reported by Till Krenz.
  * Fixed dnbinom(x, size=&lt;very_small&gt;, .., log=TRUE) regression,
    reported by Martin Morgan.
  * as.Date.POSIXlt(x) now keeps names(x), thanks to Davis Vaughan's
    report and patch in PR#18188.
  * model.response() now strips an "AsIs" class typically, thanks to
    Duncan Murdoch's report and other discussants in PR#18190.
  * try() is considerably faster in case of an error and long call,
    as e.g., from some do.call().  Thanks to Alexander Kaever's
    suggestion posted to R-devel.
  * qqline(y = &lt;object&gt;) such as y=I(.), now works, see also
    PR#18190.
  * Non-integer mgp par() settings are now handled correctly in
    axis() and mtext(), thanks to Mikael Jagan and Duncan Murdoch's
    report and suggestion in PR#18194.
  * formatC(x) returns length zero character() now, rather than ""
    when x is of length zero, as documented, thanks to Davis
    Vaughan's post to R-devel.
  * removeSource(fn) now retains (other) attributes(fn).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1647000000">- CHANGES IN R 4.1.3:
  NEW FEATURES:
  * The default version of Bioconductor has been changed to 3.14.
    (This is used by setRepositories and the menus in GUIs.)
  UTILITIES:
  * R CMD check --as-cran has a workaround for a bug in versions of
    file up to at least 5.41 which mis-identify DBF files last
    changed in 2022 as executables.
  C-LEVEL FACILITIES:
  * The legacy S-compatibility macros SINGLE_* in R_ext/Constants.h
    (included by R.h) are deprecated and will be removed in R 4.2.0.
  BUG FIXES:
  * Initialization of self-starting nls() models with initialization
    functions following the pre-R-4.1.0 API (without the ...
    argument) works again for now, with a deprecation warning.
  * Fixed quoting of ~autodetect~ in Java setting defaults to avoid
    inadvertent user lookup due to leading ~, reported in PR#18231 by
    Harold Gutch.
  * substr(., start, stop) &lt;- v now treats _negative_ stop values
    correctly.  Reported with a patch in PR#18228 by Brodie Gaslam.
  * Subscripting an array x without dimnames by a
    length(dim(x))-column character matrix gave "random" non-sense,
    now an error; reported in PR#18244 by Mikael Jagan.
  * ...names() now matches names(list(...)) closely, fixing PR#18247.
  * all.equal(*, scale = s) now works as intended when length(s) &gt; 1,
    partly thanks to Michael Chirico's PR#18272.
  * print(x) for long vectors x now also works for named atomic
    vectors or lists and prints the correct number when reaching the
    getOption("max.print") limit; partly thanks to a report and
    proposal by Hugh Parsonage to the R-devel list.
  * all.equal(&lt;selfStart&gt;, *) no longer signals a deprecation
    warning.
  * reformulate(*, response=r) gives a helpful error message now when
    length(r) &gt; 1, thanks to Bill Dunlap's PR#18281.
  * Modifying globalCallingHandlers inside withCallingHandlers() now
    works or fails correctly, thanks to Henrik Bengtsson's PR#18257.
  * hist(&lt;Date&gt;, breaks = "days") and hist(&lt;POSIXt&gt;, breaks = "secs")
    no longer fail for inputs of length 1.
  * qbeta(.001, .9, .009) and similar cases now converge correctly
    thanks to Ben Bolker's report in PR#17746.
  * window(x, start, end) no longer wrongly signals "'start' cannot
    be after 'end'", fixing PR#17527 and PR#18291.
  * data() now checks that its (rarely used) list argument is a
    character vector - a couple of packages passed other types and
    gave incorrect results.
  * which() now checks its arr.ind argument is TRUE rather coercing
    to logical and taking the first element - which gave incorrect
    results in package code.
  * model.weights() and model.offset() more carefully extract their
    model components, thanks to Ben Bolker and Tim Taylor's R-devel
    post.
  * list.files(recursive = TRUE) now shows all broken symlinks
    (previously, some of them may have been omitted, PR#18296).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1650628800">- CHANGES IN R 4.2.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * The formula method of aggregate() now matches the generic in
    naming its first argument x (resolving PR#18299 by Thomas
    Soeiro).
    This means that calling aggregate() with a formula as a named
    first argument requires name formula in earlier versions of R and
    name x now, so portable code should not name the argument (code
    in many packages did).
  * Calling &amp;&amp; or || with either argument of length greater than one
    now gives a warning (which it is intended will become an error).
  * Calling if() or while() with a condition of length greater than
    one gives an error rather than a warning.  Consequently,
    environment variable _R_CHECK_LENGTH_1_CONDITION_ no longer has
    any effect.
  * Windows users should consult the WINDOWS section below for some
    profound changes including
  * Support for 32-bit builds has been dropped.
  * UTF-8 locales are used where available.
  * The default locations for the R installation and personal
    library folder have been changed.
    Thanks to Tomas Kalibera for months of work on the Windows port
    for this release.
  NEW FEATURES:
  * matrix(x, n, m) now warns in more cases where length(x) differs
    from n * m, as suggested by Abby Spurdle and Wolfgang Huber in
    Feb 2021 on the R-devel mailing list.
    This warning can be turned into an error by setting environment
    variable _R_CHECK_MATRIX_DATA_ to TRUE: R CMD check --as-cran
    does so unless it is already set.
  * Function file_test() in package utils gains tests for symlinks,
    readability and writability.
  * capabilities("libxml") is now false.
    The description of capabilities("http/ftp") now reflects that it
    refers to the default method, no longer the internal one.
  * simplify2array() gains an except argument for controlling the
    exceptions used by sapply().
  * Environment variables R_LIBS_USER and R_LIBS_SITE are both now
    set to the R system default if unset or empty, and can be set to
    NULL to indicate an empty list of user or site library
    directories.
  * The warning for axis()(-like) calls in cases of relatively small
    ranges (typically in log-scale situations) is slightly improved
    _and_ suppressed from explicit calls to .axisPars() as has always
    been the intention.
  * The contrasts setter function `contrasts&lt;-` gains an explicit
    default how.many = NULL rather than just using missing(how.many).
  * grid.pretty() gains a new optional argument n = 5.
  * There is a new function .pretty() with option bounds as a
    technical-utility version of pretty().  It and pretty() gain a
    new argument f.min with a better than back-compatible default.
  * Function grDevices::axisTicks() and related functions such as
    graphics::axis() work better, notably for the log scale; partly
    because of the pretty() improvements, but also because care is
    taken e.g., when ylim is finite but diff(ylim) is infinite.
  * nclass.FD() gains a digits option.
  * The R Mathlib internal C function bd0() (called indirectly from a
    dozen probability density and distribution functions such as
    dpois(), dbinom(), dgamma(), pgamma() _etc_) has been
    complemented by a more sophisticated and (mostly) more accurate C
    function ebd0(), currently called only by internal dpois_raw()
    improving accuracy for R level dpois() and potentially others
    calling it such as dnbinom(), dgamma() or pgamma().  (Thanks to
    Morten Welinder's PR#15628.)
  * write.ftable() gains sep = " " argument as suggested by Thomas
    Soeiro.
  * The names of the locale categories supported by R's
    Sys.getlocale() and Sys.setlocale() are now provided by variable
    .LC.categories in the base namespace.
  * The Date and POSIXt methods for hist() and the histogram method
    for plot() now also use the new default col = "lightgray" in
    consistency with the corresponding change to hist()'s default for
    R 4.0.0.
  * hist.default() gains new fuzz argument, and the histogram plot
    method no longer uses fractional axis ticks when displaying
    counts ("Frequency").
  * mapply() and hence Map() now also obey the "max-or-0-if-any"
    recycling rule, such that, e.g., Map(`+`, 1:3, 1[0]) is valid
    now.
  * as.character(&lt;obj&gt;) for "hexmode" or "octmode" objects now
    fulfils the important basic rule as.character(x)[j] ===
    as.character(x[j]).
  * The set utility functions, notably intersect() have been tweaked
    to be more consistent and symmetric in their two set arguments,
    also preserving a common mode.
  * substr(ch, start,end) &lt;- new now e.g., preserves names(ch); ditto
    for substring(), thanks to a patch from Brodie Gaslam.
  * plot(&lt;lm&gt;) gains a extend.ylim.f argument, in partial response to
    PR#15285; further PR#17784 is fixed thanks to several
    contributors and a patch by Elin Waring.  The Cook's dist
    contours get customizable via cook.col and cook.lty with a
    different default color and their legend is nicer by default and
    customizable via cook.legendChanges.
  * Attempting to subset an object that is not subsettable now
    signals an error of class notSubsettableError. The
    non-subsettable object is contained in the object field of the
    error condition.
  * Subscript-out-of-bounds errors are now signaled as errors of
    class subscriptOutOfBoundsError.
  * Stack-overflow errors are now signaled as errors inheriting from
    class stackOverflowError. See ?stackOverflowError for more
    details.
  * New partly experimental Sys.setLanguage() utility, solving the
    main problem of PR#18055.
  * gettext() and gettextf() get a new option trim = TRUE which when
    set to false allows translations for strings such as "Execution
    halted\n" typical for C code.
  * An experimental implementation of hash tables is now available.
    See ?hashtab for more details.
  * identical() gains a extptr.as.ref argument for requesting that
    external pointer objects be compared as reference objects.
  * reorder() gets an argument decreasing which it passes to sort()
    for level creation; based on the wish and patch by Thomas Soeiro
    in PR#18243.
  * as.vector() gains a data.frame method which returns a simple
    named list, also clearing a long standing 'FIXME' to enable
    as.vector(&lt;data.frame&gt;, mode="list").  This breaks code relying
    on as.vector(&lt;data.frame&gt;) to return the unchanged data frame.
  * legend() is now vectorized for arguments cex, x.intersp, and
    text.width.  The latter can now also be specified as a vector
    (one element for each column of the legend) or as NA for
    computing a proper column wise maximum value of strwidth(legend).
    The argument y.intersp can be specified as a vector with one
    entry for each row of the legend.
    legend() also gains new arguments title.cex and title.font.
    Thanks to Swetlana Herbrandt.
  * Deparsing no longer remaps attribute names dim, dimnames, levels,
    names and tsp to historical S-compatible names (which structure()
    maps back).
  * sample() and sample.int() have additional sanity checks on their
    size and n arguments.
    all.equal.numeric() gains a sanity check on its tolerance
    argument - calling all.equal(a, b, c) for three numeric vectors
    is a surprisingly common error.
    mean(na.rm =), rank(na.last =), barplot(legend.text =),
    boxplot(), contour(drawlabels =), polygon(border =) and
    methods::is(class2 =) have more robust sanity checks on their
    arguments.
    R CMD Rd2pdf (used by R CMD check) has a more robust sanity check
    on the format of \alias{} commands.
  * psigamma(x, deriv) for negative x now also works for deriv = 4
    and 5; their underlying C level dpsifn() is documented in
    'Writing R Extensions'.
  * The HTML help system now uses HTML5 (wish of PR#18149).
  * ks.test() now provides exact p-values also with ties and MC
    p-values in the two-sample (Smirnov) case.  By Torsten Hothorn.
  * ks.test() gains a formula interface, with y ~ 1 for the
    one-sample (Kolmogorov) test and y ~ group for the two-sample
    (Smirnov) test.  Contributed by Torsten Hothorn.
  * The return value from ks.test() now has class c("ks.test",
    "htest") - packages using try() need to take care to use
    inherits() and not == on the class.
  * New functions psmirnov(), qsmirnov() and rsmirnov() in package
    stats implementing the asymptotic and exact distributions of the
    two-sample Smirnov statistic.
  * iconv() now allows sub = "c99" to use C99-style escapes for UTF-8
    inputs which cannot be converted to encoding to.
  * In a forward pipe |&gt; expression it is now possible to use a named
    argument with the placeholder _ in the rhs call to specify where
    the lhs is to be inserted.  The placeholder can only appear once
    on the rhs.
  * The included LAPACK sources have been updated to version 3.10.0,
    except for the four Fortran 77 routines which 3.10.0 has
    re-implemented in Fortran 90 (where the older versions have been
    retained as the R build process does not support Fortran 90).
  * path.expand() and most other uses of tilde expansion now warn if
    a path would be too long if expanded.  (An exception is
    file.exists(), which silently returns false.)
  * trunc(&lt;Date&gt;, *) now supports units = "months" or "years" for
    consistency with the POSIXt method, thanks to Dirk Eddelbuettel's
    proposal in PR#18099.
  * list2DF() now checks that its arguments are of the same length,
    rather than use recycling.
  * The HTML help system has several new features: LaTeX-like math
    can be typeset using either KaTeX or MathJax, usage and example
    code is highlighted using Prism, and for dynamic help the output
    of examples and demos can be shown within the browser if the
    knitr package is installed. These features can be disabled by
    setting the environment variable _R_HELP_ENABLE_ENHANCED_HTML_ to
    a false value.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 15
    and so packages that provide graphics devices should be
    reinstalled.
  * The grid package now allows the user to specify a "vector" of
    pattern fills.  The fill argument to gpar() accepts a list of
    gradients and/or patterns and the functions linearGradient(),
    radialGradient(), and pattern() have a new group argument.
    Points grobs (data symbols) can now also have a pattern fill.
    The grobCoords() function now returns a more informative and
    complex result.
  * The grid package has new functions for drawing isolated groups:
    grid.group(), grid.define(), and grid.use().  These functions add
    compositing operators and affine transformations to R's graphics
    capabilities.
    The grid package also has new functions for stroking and filling
    paths: grid.stroke(), grid.fill(), and grid.fillStroke().
    A new function as.path() allows the user to specify the fill rule
    for a path that is to be used for clipping, stroking, or filling;
    available options are "winding" and "evenodd".  A new function
    as.mask() allows the user to specify the type of a mask;
    available options are "alpha" and "luminance".
    These new features are only supported so far (at most) on the
    Cairo-based graphics devices and on the pdf() device.
  * dev.capabilities() reports on device support for the new
    features.
  * par() now warns about unnamed non-character arguments to prevent
    misuse such as {usr &lt;- par("usr"); par(usr)}.
  INSTALLATION:
  * Facilities for accessing ftp:// sites are no longer tested
    (except _pro tem_ for curlGetHeaders()) as modern browsers have
    removed support.
  * R can now be built with DEFS = -DSTRICT_R_HEADERS .
  PACKAGE INSTALLATION:
  * R CMD INSTALL no longer tangles vignettes. This completes an R
    CMD build change in R 3.0.0 and affects packages built before R
    3.0.2. Such packages should be re-made with R CMD build to have
    the tangled R code of vignettes shipped with the tarball.
  * USE_FC_LEN_T will become the default: this uses the correct
    prototypes for Fortran BLAS/LAPACK routines called from C/C++,
    and requires adjustment of most such calls - see 'Writing R
    Extensions' SS6.6.2.  (This has been supported since R 3.6.2.)
  * Package installation speed for packages installed with
    keep.source has been improved. This resolve the issue reported by
    Ofek Shilon in PR#18236.
  UTILITIES:
  * R CMD check can optionally report files/directories left behind
    in home, /tmp (even though TMPDIR is set) and other directories.
    See the "R Internals" manual for details.
  * R CMD check now reports byte-compilation errors during
    installation.  These are not usually fatal but may result in
    parts of the package not being byte-compiled.
  * _R_CHECK_DEPENDS_ONLY_ can be applied selectively to examples,
    tests and/or vignettes in R CMD check: see the "R Internals"
    manual.
  * _R_CHECK_SRC_MINUS_W_IMPLICIT_ now defaults to true: recent
    versions of Apple clang on macOS have made implicit function
    declarations in C into a compilation error.
  * R CMD check --as-cran makes use of the environment variable
    AUTORECONF.  See the "R Internals" manual SS8 for further details.
  * R CMD check --use-valgrind also uses valgrind when re-building
    vignettes as some non-Sweave vignettes unhelpfully comment out
    all their code when R CMD check runs vignettes.
  * Errors in re-building vignettes (unless there are LaTeX errors)
    are reported by R CMD check as ERROR rather than WARNING when
    running vignettes has been skipped (as it frequently is in CRAN
    checks and by --as-cran).
  * R CMD Rd2pdf gains a --quiet option that is used by R CMD build
    when building the PDF package manual.
  * R CMD Rd2pdf now always runs LaTeX in batch mode, consistent with
    Texinfo &gt;= 6.7. The --batch option is ignored.
  * R CMD build and R CMD check now include the Rd file name and line
    numbers in the error message of an \Sexpr evaluation failure.
  * For packages using the \doi Rd macro (now an install-time \Sexpr)
    but no other dynamic Rd content, R CMD build now produces a
    smaller tarball and is considerably faster - skipping temporary
    package installation.
  C-LEVEL FACILITIES:
  * The non-API header R_ext/R-ftp-http.h is no longer provided, as
    the entry points it covered are now all defunct.
  * A number of non-API declarations and macro definitions have been
    moved from the installed header Rinternals.h to the internal
    header Defn.h. Packages that only use entry points and
    definitions documented to be part of the API as specified in
    'Writing R Extensions' SS6 should not be affected.
  * The macro USE_RINTERNALS no longer has any effect when compiling
    package code.  Packages which also use R_NO_REMAP will need to
    ensure that the remapped names are used for calls to API
    functions that were formerly also made available as macros.
  * The deprecated legacy S-compatibility macros PROBLEM, MESSAGE,
    ERROR, WARN, WARNING, RECOVER, ... are no longer defined in
    R_exts/RS.h (included by R.h).  Replace these by calls to
    Rf_error and Rf_warning (defined in header R_ext/Error.h included
    by R.h).
    Header R_ext/RS.h no longer includes R_ext/Error.h.
  * Header R_ext/Constants.h (included by R.h) when included from C++
    now includes the C++ header cfloat rather than the C header
    float.h (now possible as C++11 is required).
  * The legacy S-compatibility macros DOUBLE_* in R_ext/Constants.h
    (included by R.h) are deprecated.
  * The deprecated S-compatibility macros SINGLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * R_Calloc, R_Free and R_Realloc are preferred to their unprefixed
    forms and error messages now use the prefix. These forms were
    introduced in R 3.4.0 and are available even when
    STRICT_R_HEADERS is defined.
  * rmultinom has been documented in 'Writing R Extensions' SS6 so is
    now part of the R API.
  * Similarly, Rtanpi, called from R level tanpi() is now part of the
    R API.
  * The long-deprecated, undocumented and non-API entry point call_R
    is no longer declared in R_ext/RS.h (included by R.h).
  * The header S.h which has been unsupported since Jan 2016 has been
    removed.  Use R.h instead.
  DEPRECATED AND DEFUNCT:
  * The (non-default and deprecated) method = "internal" for
    download.file() and url() no longer supports http:// nor ftp://
    URIs.  (It is used only for file:// URIs.)
    On Windows, download.file(method = "wininet") no longer supports
    ftp:// URIs.  (It is no longer the default method, which is
    "libcurl" and does.)
    On Windows, the deprecated method = "wininet" now gives a warning
    for http:// and https:// URIs for both download.file() and url().
    (It is no longer the default method.)
  * On Windows, the command-line option --max-mem-size and
    environment variable R_MAX_MEM_SIZE are defunct.  The memory
    allocation limit was important for 32-bit builds, but these are
    no longer supported.
  * default.stringsAsFactors() is now formally deprecated, where that
    was only mentioned on its regular help page, previously.  So it
    now gives a warning if called.
  * unix.time() is defunct now; it had been deprecated since R 3.4.0.
  BUG FIXES:
  * Setting digits = 0 in format(), print.default() (and hence
    typically print()) or options() is again invalid.  Its behaviour
    was platform-dependent, and it is unclear what "zero significant
    digits" should mean (PR#18098).
  * Messages from C code in the cairo section of package grDevices
    are now also offered for translation, thanks to Michael Chirico's
    PR#18123.
  * mean(x) with finite x now is finite also without "long.double"
    capability.
  * R CMD Rd2pdf no longer leaves an empty build directory behind
    when it aborts due to an already existing output file.  (Thanks
    to Sebastian Meyer's PR#18141.)
  * density(x, weights = w, na.rm = TRUE) when anyNA(x) is true, now
    removes weights "in parallel" to x, fixing PR#18151, reported by
    Matthias Gondan.  Additionally, it gets a subdensity option.
  * Conversion of \Sexpr[]{&lt;expR&gt;} to LaTeX or HTML no longer
    produces long blocks of empty lines when &lt;expR&gt; itself contains
    several lines all producing empty output.  Thanks to a report and
    patch by Ivan Krylov posted to R-devel.
  * R CMD build no longer fails if a package vignette uses child
    documents and inst/doc exists.  (Thanks to Sebastian Meyer's
    PR#18156.)
  * When an R documentation ('help' source) file man/foo.Rd in a
    package has \donttest{..} examples with a syntax error, it is now
    signalled as ERROR and with correct line numbers relating to the
  * -Ex.R file, thanks to Duncan Murdoch and Sebastian Meyer's
    reports and patch proposals in PR#17501.
  * Improved determination of the correct translation domain in
    non-base packages, addressing the combination of PR#18092 and
    PR#17998 (#c6) with reports and _augmented_ patch #2904 by
    Suharto Anggono.
    Note that "R-base" is no longer the default domain e.g., for
    top-level calls to gettext(); rather translation needs explicit
    domain = * specification in such cases.
  * identical(attrib.as.set=FALSE) now works correctly with data
    frames with default row names (Thanks to Charlie Gao's PR#18179).
  * txtProgressBar() now enforces a non-zero width for argument char,
    without which no progress can be visible.
  * dimnames(table(d)) is more consistent in the case where d is a
    list with a single component, thanks to Thomas Soeiro's report to
    R-devel.
    Further, table(d1, d2) now gives an error when d1 and d2 are data
    frames as suggested by Thomas in PR#18224.
  * Fix for drawing semi-transparent lines and fills on the native
    Windows graphics device (PR#18219 and PR#16694).  Thanks to Nick
    Ray for helpful diagnosis on Bugzilla.
  * The deparser now wraps sub-expressions such as if(A) ..  with
    parentheses when needed; thanks to Duncan Murdoch's PR#18232 and
    Lionel Henry's patches there.
  * remove.packages() no longer tries to uninstall Priority: base
    packages, thanks to a report and suggestions by Colin Fay in
    PR#18227.
  * win.metafile() now has xpinch and ypinch arguments so that the
    user can override Windows' (potentially wrong) guess at device
    dimensions.
  * x[i] and x[[i]] for non-integer i should now behave in all cases
    as always documented: the index used is equivalent to
    as.integer(i) unless that would overflow where trunc(i) is used
    instead; thanks to Suharto Anggono's report and patch proposals
    in PR#17977.
  * asOneSidedFormula() now associates the resulting formula with the
    global environment rather than the evaluation environment created
    for the call.
  * &lt;bibentry&gt;$name now matches the field name case-insensitively,
    consistent with bibentry() creation and the replacement method.
  * cbind() failed to detect some length mismatches with a mixture of
    time-series and non-time-series inputs.
  * The default LaTeX style file Sweave.sty used by the RweaveLatex
    driver no longer loads the obsolete ae package; thanks to a
    report by Thomas Soeiro in PR#18271.  Furthermore, it now skips
    \usepackage[T1]{fontenc} for engines other than pdfTeX (if
    detected) or if the new [nofontenc] option is used.
  * smooth.spline() now stores its logical cv argument more safely,
    fixing a rare bug when printing, and also stores n.
  * smooth.spline(x,y,*) now computes the cv.crit statistic
    correctly, also when is.unsorted(x), fixing PR#18294.
  * The data.frame method of rbind() now warns when binding
    not-wholly-recycling vectors, by analogy to the default method
    (for matrices).
  * setAs() finds the correct class for name to when multiple
    packages define a class with that name. Thanks to Gabor Csardi
    for the report.
  * Fix for detaching a package when two classes of the same name are
    present in method signatures for the same generic. Thanks to
    Gabor Csardi for the report.
  * match.arg("", c("", "a", "B")) gives a better error message, in
    part from PR#17959, thanks to Elin Waring.
  * R CMD Sweave --clean no longer removes pre-existing files or
    subdirectories (PR#18242).
  * The quartz() device no longer splits polylines into subpaths.
    That has caused narrowly-spaced lines with many points to always
    look solid even when dashed line type was used due to dash phase
    restarts.
  * Deparsing constructs such as quote(1 + `!`(2) + 3) works again as
    before R 3.5.0, thanks to the report and patch in PR#18284 by
    Suharto Anggono.
  * as.list(f) for a factor f now keeps names(f), fixing PR#18309.
  * qbeta(.001, .9, .009) and analogous qf() calls now return a
    correct value instead of NaN or wrongly 1, all with a warning;
    thanks to the report by Ludger Goeminne in PR#18302.
  * plot.lm() failed to produce the plot of residuals vs.  factor
    levels (i.e., which=5 when leverages are constant) for models
    with character predictors (PR#17840).
  * interaction.plot(..., xtick = TRUE) misplaced the x-axis line
    (PR#18305).
  * Not strictly fixing a bug, format()ing and print()ing of
    non-finite Date and POSIXt values NaN and +/-Inf no longer show
    as NA but the respective string, e.g., Inf, for consistency with
    numeric vector's behaviour, fulfilling the wish of PR#18308.
  * R CMD check no longer runs test scripts generated from
    corresponding .Rin files twice and now signals an ERROR if
    processing an .Rin script fails.
  * tools::Rd2txt() used for plain-text help pages now renders \hrefs
    (if tools::Rd2txt_options(showURLs = TRUE)) and \urls with
    percent-encoding and standards-compliant delimiting style (angle
    brackets and no URL: prefix).  \email is now rendered with a
    mailto: prefix.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1655985600">- CHANGES IN R 4.2.1:
  NEW FEATURES:
  * New function utils::findCRANmirror() to find out if a CRAN mirror
    has been selected, otherwise fallback to the main site.  This
    behaves in the same way as tools::CRAN_package_db() and is
    intended for packages wishing to access CRAN for purposes other
    than installing packages.
    The need for this was shown by a day when the main CRAN website
    was offline and a dozen or so packages which had its URL
    hardcoded failed their checks.
  INSTALLATION on a UNIX-ALIKE:
  * The libraries searched for by --with-blas (without a value) now
    include BLIS (after OpenBLAS but before ATLAS).  And on macOS,
    the Accelerate framework (after ATLAS).  (This is patterned after
    the AX_BLAS macro from the Autoconf Archive.)
  * The included LAPACK sources have been updated to 3.10.1.
  UTILITIES:
  * The (full path to) the command tidy to be used for HTML
    validation can be set by environment variable R_TIDYCMD.
  * Setting environment variable _R_CHECK_RD_VALIDATE_RD2HTML_ to a
    false value will override R CMD check --as-cran and turn off HTML
    validation.  This provides a way to circumvent a problematic
    tidy.
    The 2006 version that ships with macOS is always skipped.
  C-LEVEL FACILITIES:
  * The undocumented legacy declarations of Sint, Sfloat, SINT_MAX
    and SINT_MIN in header R.h are deprecated.
  BUG FIXES:
  * fisher.test(d) no longer segfaults for "large" d; fixing PR#18336
    by preventing/detecting an integer overflow reliably.
  * tar(., files=*) now produces correctly the warning about invalid
    uid or gid of files, fixing PR#18344, reported by Martin Morgan.
  * tk_choose.files() with multi = FALSE misbehaved on paths
    containing spaces (PR#18334) (regression introduced in R 4.0.0).
  * sort(x, partial = ind, *) now works correctly notably for the
    non-default na.last = FALSE or TRUE, fixing PR#18335 reported by
    James Edwards.
  * Environment variable _R_CHECK_XREFS_REPOSITORIES_ is only used
    for checking .Rd cross-references in R CMD check (as documented)
    and not for other uses looking for a CRAN mirror.
  * The search for a CRAN mirror when checking packages now uses
    getOption("repos") if that specifies a CRAN mirror, even when it
    does not also specify all three Bioconductor repositories (as was
    previously required).
  * The HTML code generated by tools::Rd2HTML() has been improved to
    pass tidy 5.8.0.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1667217600">- CHANGES IN R 4.2.2:
  NEW FEATURES:
  * tools::Rdiff(useDiff = TRUE) checks for the presence of an
    external diff command and switches to useDiff = FALSE if none is
    found.  This allows R CMD Rdiff to always work.
  * On Windows, environment variable R_LIBCURL_SSL_REVOKE_BEST_EFFORT
    can be used to switch to only 'best-effort' SSL certificate
    revocation checks with the default "libcurl" download method.
    This reduces security, but may be needed for downloads to work
    with MITM proxies (PR#18379).
  * (macOS) The run-time check for libraries from XQuartz for X11 and
    Tcl/Tk no longer uses otool from the Apple Developer Tools
    (PR#18400).
  * The LaTeX style for producing the PDF manuals, Rd.sty, now loads
    the standard amsmath, amsfonts and amssymb packages for greater
    coverage of math commands in the Rd \eqn and \deqn macros.  The
    \mathscr LaTeX command is also provided (via the mathrsfs
    package, if available, or the amsfonts bundle otherwise),
    fulfilling the wish of PR#18398.
  * (Windows) The default format of readClipboard() and
    writeClipboard() has been changed to 13 (CF_UNICODETEXT).
  INSTALLATION on a UNIX-ALIKE:
  * The PDF manuals (if built) can be compacted by the new target
    make compact-pdf (at the top level or in directory doc/manual).
  * There is now configure support for LLVM clang 15 on Linux, which
    defaults to position-independent (PIE) executables whereas
    gfortran does not.
  * Many small changes to ease compilation (and suppress warnings)
    with LLVM clang 15.
  BUG FIXES:
  * Rscript -e would fail if stdin were closed (Reported by Henrik
    Bengtsson.)
  * qt(*, log.p=TRUE) in outer tails no longer produces NaN in its
    final steps, thus fixing PR#18360.
  * tools::Rd2latex() now escapes hashes and ampersands when writing
    URLs, fixing LaTeX errors with such URLs in \tabular.
  * When isGeneric(f, fdef=*) is used with mismatching names, the
    warning is better understandable; reported (with fix) in PR#18370
    by Gabe Becker.
  * poly(x, n) now works again (and is now documented) when x is a
    "Date" or "POSIXct" object, or of another class while fulfilling
    mode(x) == "numeric".  This also enables poly(x, *, raw=TRUE) for
    such variables.  Reported by Michael Chirico to R-devel.
  * write.table(), write.csv() and write.csv2() restore their
    numerical precision (internal equivalent of digits = 15) after an
    interrupt (PR#18384).
  * One can now read also byte FF from a clipboard connection
    (PR#18385).
  * source("") and source(character()) now give more helpful error
    messages.
  * R CMD check --as-cran set _R_CHECK_TIMINGS_ too late to have the
    intended effect.
  * as.POSIXlt(x) now also works with very large dates x, fixing
    PR#18401 reported by Hannes M"uhleisen.
  * Files can now be extracted even from very large zip archives
    (PR#18390, thanks to Martin Jakt).
  * Non-finite objects of class "POSIXlt" are now correctly coerced
    to classes "Date" and "POSIXct"; following up on the extension to
    format() them correctly.
  * Added methods for is.finite(), is.infinite() and is.nan() for
    "POSIXlt" date-time objects.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1678881600">- CHANGES IN R 4.2.3:
  C-LEVEL FACILITIES:
  * The definition of DL_FUNC in R_ext/Rdynload.h has been changed to
    be fully C-compliant.  This means that functions loaded _via_ for
    example R_GetCCallable need to be cast to an appropriate type if
    they have any arguments.
  * .Machine has a new element sizeof.time_t to identify old systems
    with a 32-bit type and hence a limited range of date-times (and
    limited support for dates millions of years from present).
  PACKAGE INSTALLATION:
  * (Windows) The default C++ standard had accidentally been left at
    C++11 when it was changed to C++14 on Unix.
  BUG FIXES:
  * As "POSIXlt" objects may be "partially filled" and their list
    components meant to be recycled, length() now is the length of
    the longest component.
  * as.POSIXlt.Date() could underflow for dates in the far past (more
    than half a million years BCE).
  * as.Date.POSIXlt(x) would return "1970-01-01" instead of NA in R
    4.2.2, e.g., for
    x &lt;- as.POSIXlt(c("2019-01-30","2001-1-1"))
    x$mon &lt;- c(0L, NA); as.Date(x)
  * R CMD check failed to apply enabled _R_CHECK_SUGGESTS_ONLY_ to
    examples and vignettes (regression in R 4.2.0).
  * R CMD check did not re-build vignettes in separate processes by
    default (regression in R 4.2.0).
  * Running examples from HTML documentation now restores previous
    knitr settings and options (PR#18420).
  * Quartz: fonts are now located using Core Graphics API instead of
    deprecated ATS which is no longer supported in the macOS 13 SDK
    (PR#18426).  This also addresses an issue where the currently
    used font in the Quartz device context was not correctly
    retained.
  * (Windows) Math symbols in text drawing functions are again
    rendered correctly (PR#18440).  This fixes a regression in R
    4.2.1 caused by a fix in PR#18382 which uncovered an issue in
    GraphApp due to which the symbol charset was not used with TT
    Symbol font face.
  * (Windows) Installing a package with a src/Makefile.{win,ucrt}
    file includes ~/.R/Makevars.win64 in the search for user
    makevars, as documented in "R Installation and Administration"
    and done for packages with a src/Makevars.{win,ucrt} file.
  * format(&lt;POSIXlt_w/_unbalanced_sec&gt;, "....%OS&lt;n&gt;") with n &gt; 0 no
    longer accidentally uses the unbalanced seconds, thanks to
    Suharto Anggono's report (including patch) in PR#18448.
  * solve.default(a, b) works around issues with some versions of
    LAPACK when a contains NA or NaN values.
  * When UseMethod() cannot dispatch, it no longer segfaults
    producing the error message in case of a long class(), thanks to
    Joris Vankerschaver's report (including patch) in PR#18447.
  * When example(foo, ..) produces graphics on an interactive device
    it needs to open itself, it now leaves devAskNewPage() unchanged
    even when it was FALSE, thus fixing a 14 years old '&lt;FIXME&gt;'.
  * packageDescription() again catches errors from encoding
    conversions. This also fixes broken packageVersion() in C locale
    on systems where iconv does not support transliteration.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1681128000">- add patch to build with libcurl &gt;= 8</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1682078400">- CHANGES IN R 4.3.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Calling &amp;&amp; or || with LHS or (if evaluated) RHS of length greater
    than one is now always an error, with a report of the form
    'length = 4' in coercion to 'logical(1)'
    Environment variable _R_CHECK_LENGTH_1_LOGIC2_ no longer has any
    effect.
  NEW FEATURES:
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.10.1.  (This caused some platform-dependent
    changes to package check output.)  And then to the sources from
    LAPACK version 3.11.0 (with changes only to double complex
    subroutines).
  * The included LAPACK sources have been updated to include the four
    Fortran 90 routines rather than their Fortran 77 predecessors.
    This may give some different signs in SVDs or
    eigendecompositions..  (This completes the transition to LAPACK
    3.10.x begun in R 4.2.0.)
  * The LAPACK sources have been updated to version 3.11.0.  (No new
    subroutines have been added, so this almost entirely bug fixes:
    Those fixes do affect some computations with NaNs, including R's
    NA.)
  * The parser now signals _classed_ errors, notably in case of the
    pipe operator |&gt;.  The error object and message now give line and
    column numbers, mostly as proposed and provided by Duncan Murdoch
    in PR#18328.
  * toeplitz() is now generalized for asymmetric cases, with a
    toeplitz2() variant.
  * xy.coords() and xyz.coords() and consequently, e.g., plot(x,y,
    log = "y") now signal a _classed_ warning about negative values
    of y (where log(.) is NA).  Such a warning can be specifically
    suppressed or caught otherwise.
  * Regular expression functions now check more thoroughly whether
    their inputs are valid strings (in their encoding, e.g. in
    UTF-8).
  * The performance of grep(), sub(), gsub() and strsplit() has been
    improved, particularly with perl = TRUE and fixed = TRUE.  Use of
    useBytes = TRUE for performance reasons should no longer be
    needed and is discouraged: it may lead to incorrect results.
  * apropos() gains an argument dot_internals which is used by the
    completion (help(rcompgen)) engine to also see base internals
    such as .POSIXct().
  * Support in tools::Rdiff() for comparing uncompressed PDF files is
    further reduced - see its help page.
  * qqplot(x, y, ...) gains conf.level and conf.args arguments for
    computing and plotting a confidence band for the treatment
    function transforming the distribution of x into the distribution
    of y (Switzer, 1976, _Biometrika_). Contributed by Torsten
    Hothorn.
  * Performance of package_dependencies() has been improved for cases
    when the number of dependencies is large.
  * Strings newly created by gsub(), sub() and strsplit(), when any
    of the inputs is marked as "bytes", are also marked as "bytes".
    This reduces the risk of creating invalid strings and accidental
    substitution of bytes deemed invalid.
  * Support for readLines(encoding = "bytes") has been added to allow
    processing special text files byte-by-byte, without creating
    invalid strings.
  * iconv(from = "") now takes into account any declared encoding of
    the input elements and uses it in preference to the native
    encoding.  This reduces the risk of accidental creation of
    invalid strings, particularly when different elements of the
    input have different encoding (including "bytes").
  * Package repositories in getOption("repos") are now initialized
    from the repositories file when utils is loaded (if not already
    set, e.g., in .Rprofile).  (From a report and patch proposal by
    Gabriel Becker in PR#18405.)
  * compactPDF() gets a verbose option.
  * type.convert() and hence read.table() get new option tryLogical =
    TRUE with back compatible default.  When set to false, converts
    "F" or "T" columns to character.
  * Added new unit prefixes "R" and "Q" for abbreviating
    (unrealistically large) sizes beyond 10^{27} in standard = "SI",
    thanks to Henrik Bengtsson's PR#18435.
  * as.data.frame()'s default method now also works fine with atomic
    objects inheriting from classes such as "roman", "octmode" and
    "hexmode", such fulfilling the wish of PR#18421, by Benjamin
    Feakins.
  * The as.data.frame.vector() utility now errors for wrong-length
    row.names.  It warned for almost six years, with "Will be an
    error!".
  * sessionInfo() now also contains La_version() and reports codepage
    and timezone when relevant, in both print() and toLatex() methods
    which also get new option tzone for displaying timezone
    information when locale = FALSE.
  * New function R_compiled_by() reports the C and Fortran compilers
    used to build R, if known.
  * predict(&lt;lm&gt;, newdata = *) no longer unnecessarily creates an
    offset of all 0s.
  * solve() for complex inputs now uses argument tol and by default
    checks for 'computational singularity' (as it long has done for
    numeric inputs).
  * predict(&lt;rank-deficient lm&gt;, newdata=*) now obeys a new argument
    rankdeficient, with new default "warnif", warning only if there
    are non-estimable cases in newdata.  Other options include
    rankdeficient = "NA", predicting NA for non-estimable newdata
    cases.  This addresses PR#15072 by Russ Lenth and is based on his
    original proposal and discussions in PR#16158 also by David Firth
    and Elin Waring.  Still somewhat experimental.
  * Rgui console implementation now works better with the NVDA screen
    reader when the full blinking cursor is selected.  The underlying
    improvements in cursor handling may help also other screen
    readers on Windows.
  * The drop-field control in GraphApp can now be left with the TAB
    key and all controls can be navigated in the reverse order using
    the Shift+TAB key, improving accessibility of the Rgui
    configuration editor.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now fully accurate
    (instead of to "only" minimally five digits).
  * demo(error.catching) now also shows off withWarnings() and
    tryCatchWEMs().
  * As an experimental feature the placeholder _ can now also be used
    in the rhs of a forward pipe |&gt; expression as the first argument
    in an extraction call, such as _$coef. More generally, it can be
    used as the head of a chain of extractions, such as _$coef[[2]].
  * Spaces in the environment variable used to choose the R session's
    temporary directory (TMPDIR, TMP and TEMP are tried in turn) are
    now fatal.  (On Windows the 'short path' version of the path is
    tried and used if that does not contain a space.)
  * all.equal.numeric() gets a new optional switch giveErr to return
    the numeric error as attribute.  Relatedly,
    stopifnot(all.equal&lt;some&gt;(a, b, ..)) is as "smart" now, as
    stopifnot(all.equal(....)) has been already, thus allowing
    customized all.equal&lt;Some&gt;() wrappers.
  * R on Windows is now able to work with path names longer than 260
    characters when these are enabled in the system (requires at
    least Windows 10 version 1607).  Packages should be updated to
    work with long paths as well, instead of assuming PATH_MAX to be
    the maximum length.  Custom front-ends and applications embedding
    R need to update their manifests if they wish to allow this
    feature.  See
    &lt;https://blog.r-project.org/2023/03/07/path-length-limit-on-windows&gt;
    for more information.
  * 'Object not found' and 'Missing argument' errors now give a more
    accurate error context. Patch provided by Lionel Henry in
    PR#18241.
  * The @ operator is now an S3 generic. Based on contributions by
    Tomasz Kalinowski in PR#18482.
  * New generic chooseOpsMethod() provides a mechanism for objects to
    resolve cases where two suitable methods are found for an Ops
    Group Generic. This supports experimenting with alternative
    object systems. Based on contributions by Tomasz Kalinowski in
    PR#18484.
  * inherits(x, what) now accepts values other than a simple
    character vector for argument what. A new generic, nameOfClass(),
    is called to resolve the class name from what. This supports
    experimenting with alternative object systems. Based on
    contributions by Tomasz Kalinowski in PR#18485.
  * Detection of BLAS/LAPACK in use (sessionInfo()) with FlexiBLAS
    now reports the current backend.
  * The "data.frame" method for subset() now warns about extraneous
    arguments, typically catching the use of = instead of == in the
    subset expression.
  * Calling a:b when numeric a or b is longer than one may now be
    made into an error by setting environment variable
    _R_CHECK_LENGTH_COLON_ to a true value, along the proposal in
    PR#18419 by Henrik Bengtsson.
  * density(x, weights = *) now warns if automatic bandwidth
    selection happens without using weights; new optional warnWbw may
    suppress the warning.  Prompted by Christoph Dalitz' PR#18490 and
    its discussants.
  * rm(list = *) is faster and more readable thanks to Kevin Ushey's
    PR#18492.
  * The plot.lm() function no longer produces a normal Q-Q plot for
    GLMs. Instead it plots a half-normal Q-Q plot of the absolute
    value of the standardized deviance residuals.
  * The print() method for class "summary.glm" no longer shows
    summary statistics for the deviance residuals by default.  Its
    optional argument show.residuals can be used to show them if
    required.
  * The tapply() function now accepts a data frame as its X argument,
    and allows INDEX to be a formula in that case. by.data.frame()
    similarly allows INDICES to be a formula.
  * The performance of df[j] &lt;- value (including for missing j) and
    write.table(df) has been improved for data frames df with a large
    number of columns.  (Thanks to Gabriel Becker's PR#18500,
    PR#18503 and discussants, prompted by a report from Toby Dylan
    Hocking on the R-devel mailing list.)
  * The matrix multiply operator %*% is now an S3 generic, belonging
    to new group generic matrixOps.  From Tomasz Kalinowski's
    contribution in PR#18483.
  * New function array2DF() to convert arrays to data frames,
    particularly useful for the list arrays created by tapply().
  DATES and TIMES:
  * On platforms where (non-UTC) datetimes before 1902 (or before
    1900 as with system functions on recent macOS) are guessed by
    extrapolating time zones from 1902-2037, there is a warning at
    the first use of extrapolation in a session.  (As all time zones
    post 2037 are extrapolation, we do not warn on those.)
  * (Platforms using --with-internal-tzone, including Windows and by
    default macOS). How years are printed in dates or date-times can
    be controlled by environment variable R_PAD_YEARS_BY_ZERO.  The
    default remains to pad to 4 digits by zeroes, but setting value
    no gives no padding (as used by default by glibc).
  * strftime() tries harder to determine the offset for the "%z"
    format, and succeeds on the mainstream R platforms.
  * strftime() has a limit of 2048 bytes on the string produced -
    attempting to exceed this is an error.  (Previously it silently
    truncated at 255 bytes.)
  * sessionInfo() records (and by default prints) the system time
    zone as part of the locale information.  Also, the source
    (system/internal) of the date-time conversion and printing
    functions.
  * Objects of class "POSIXlt" created in this version of R always
    have 11 components: component zone is always set, and component
    gmtoff is set for times in UTC and usually set on the (almost
    all) platforms which have C-level support, otherwise is NA.
  * There are comprehensive validity checks on the structure of
    objects of class "POSIXlt" when converting (including formatting
    and printing).  (This avoids mis-conversions of hand-crafted
    objects.)
  * There is some support for using the native date-time routines on
    macOS: this is only viable on recent versions (e.g. 12.6 and 13)
    and does get wrong some historical changes (before 1900, during
    WWII).  Use of --with-internal-tzone remains the default.
  * as.POSIXct(&lt;numeric&gt;) and as.POSIXlt(.) (without specifying
    origin) now work.  So does as.Date(&lt;numeric&gt;).
  * as.Date.POSIXct(., tz) now treats several tz values, notably
    "GMT" as equivalent to "UTC", proposed and improved by Michael
    Chirico and Joshua Ulrich in PR#17674.
  * Experimental balancePOSIXlt() utility allows using "ragged" and
    or out-of-range "POSIXlt" objects more correctly, e.g., in
    subsetting and subassignments.  Such objects are now documented.
    More experimentally, a "POSIXlt" object may have an attribute
    "balanced" indicating if it is known to be filled or fully
    balanced.
  * Functions axis.Date() and axis.POSIXct() are rewritten to gain
    better default tick locations and better default formats by using
    prettyDate(). Thanks to Swetlana Herbrandt.
  * The mapping of Windows' names for time zones to IANA's 'Olson'
    names has been updated.  When ICU is available (it is by
    default), it is used to get a mapping for the current region set
    in Windows.  This can be overridden by setting environment
    variable TZ to the desired Olson name - see OlsonNames() for
    those currently available.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 16
    and so packages that provide graphics devices should be
    reinstalled.
  * The grDevices and grid packages have new functions for rendering
    typeset glyphs, primarily: grDevices::glyphInfo() and
    grid::grid.glyph().
    Rendering of typeset glyphs is only supported so far on the
    Cairo-based graphics devices and on the pdf() and quartz()
    devices.
  * The defined behaviour for "clear" and "source" compositing
    operators (via grid::grid.group()) has been changed (to align
    better with simple interpretation of original Porter-Duff
    definitions).
  * Support for gradients, patterns, clipping paths, masks, groups,
    compositing operators, and affine transformations has been added
    to the quartz() device.
  INSTALLATION on a UNIX-ALIKE:
  * A system installation of generic LAPACK 3.10.0 or later will be
    preferred to the version in the R sources.
    configure option --with-lapack=no (equivalently --without-lapack)
    forces compilation of the internal LAPACK sources.
    If --with-lapack is not specified, a system liblapack is looked
    for and used if it reports version 3.10.0 or later and does not
    contain BLAS routines.
    Packages using LAPACK will need to be reinstalled if this changes
    to using an external library.
  * On aarch64 Linux platforms using GCC, configure now defaults to
  - fPIC (instead of -fpic), as desired in PR#18326.
  * configure now checks conversion of datetimes between POSIXlt and
    POSIXct around year 2020.  Failure (which has been seen on
    platforms missing tzdata) is fatal.
  * If configure option --with-valgrind-instrumentation is given
    value 1 or 2, option --with-system-valgrind-headers is now the
    default and ignored (with a warning).  It is highly recommended
    that the system headers are installed alongside valgrind: they
    are part of its packaging on some Linux distributions and
    packaged separately (e.g. in the valgrind-devel RPM) on others.
    configure will give a warning if they are not found.
    The system headers will be required in a future release of R to
    build with valgrind instrumentation.
  * libcurl 8.x is now accepted by configure: despite a change in
    major version number it changes neither API nor ABI.
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools43, an update of the Rtools42 toolchain.  It is
    based on gcc 12 and newer versions of MinGW-W64, binutils and
    libraries.  At this time R-devel can still be built using
    Rtools42 without changes, but when R-devel is installed via the
    installer, it will by default look for Rtools43.
  * Old make targets rsync-extsoft and 32-bit ones that are no longer
    needed have been removed.
  * Default builds (including for packages) no longer select C99.
    Thus the C standard used is the default for the compiler, which
    for the toolchain in Rtools43 is C17.  (This is consistent with
    Unix builds.)
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++17 where
    available (which it is on all currently checked platforms): if
    not C++14 or C++11 is used if available otherwise C++ is not
    supported.
  * USE_FC_LEN_T is the default: this uses the correct
    (compiler-dependent) prototypes for Fortran BLAS/LAPACK routines
    called from C/C++, and requires adjustment of many such calls -
    see 'Writing R Extensions' SS6.6.1.
  * There is initial support for C++23 as several compilers are now
    supporting -std=c++23 or -std=c++2b or similar.  As for C++20,
    there no additional configure checks for C++23 features beyond a
    check that the compiler reports a __cplusplus value greater than
    that in the C++20 standard.  C++ feature tests should be used.
  * There is support for a package to indicate the version of the C
    standard which should be used to compile it, and for the
    installing user to specify this.  In most cases R defaults to the
    C compiler's default standard which is C17 (a `bug-fix' of C11) -
    earlier versions of R or compilers may have defaulted to C99.
    Current options are:
    USE_C17 Use a standard that is at most C17.  The intention is to
    allow legacy packages to still be installed when later C
    standards become the default, including packages using new
    keywords as identifiers or with K&amp;R-style function
    declarations.  This will use C17 if available, falling back
    to C11.
    USE_C90 Use the C90 (aka C89) standard.  (As that standard did
    not require compilers to identify that version, all we can
    verify is that the compiler does not claim to be using a
    later standard.  It may accept C99 features - for example
    clang accepts // to make comments.)
    USE_C99 Use the C99 standard. This should be rarely needed - it
    avoids the few new features of C11/C17 which can be useful if
    a package assumes them if C17 is specified and they are not
    implemented.
    USE_C23 Use C23 (or in future, later).  Compiler/library support
    for C23 is still being implemented, but LLVM clang from
    15.0.0 and the upcoming GCC 13 have quite extensive support.
    These can be specified as part of the SystemRequirements field in
    the package's DESCRIPTION file or _via_ options --use-C17 and so
    on of R CMD INSTALL and R CMD SHLIB.
    For further details see "Writing R Extensions" SS1.2.5.
  * (Windows) A src/Makefile.ucrt or src/Makefile.win file is now
    included after R_HOME/etcR_ARCH/Makeconf and so no longer needs
    to include that file itself.  Installation of a package with such
    a file now uses a site Makevars file in the same way as a package
    with a src/Makevars.win file would.
  * configure is now passed crucial variables such as CC and CFLAGS
    in its environment, as many packages were not setting them (as
    documented in 'Writing R Extensions' SS1.2).
    This has most effect where configure is used to compile parts of
    the package - most often by cmake or libtool which obfuscate the
    actual compile commands used.
    Also used for configure.win and configure.ucrt on Windows.
  FORTRAN FLAGS:
  * The flag -fno-optimize-sibling-calls is no longer forced for
    gfortran 7 and later.  It should no longer be needed now using
    'hidden' character-length arguments when calling BLAS/LAPACK
    routines from C/C++ is the default even for packages.  (Unless
    perhaps packages call Fortran code from C/C++ without using R's
    headers and without allowing for these arguments.)
  C-LEVEL FACILITIES:
  * The deprecated S-compatibility macros DOUBLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * The deprecated legacy typedefs of Sint and Sfloat in header R.h
    are no longer defined, and that header no longer includes header
    limits.h from C nor climits from C++.
  * New macro CAD5R() is provided in Rinternals.h and used in a few
    places in the R sources.
  * ALTREP now supports VECSXP vectors. Contributed by Gabor Csardi
    in PR#17620.
  * The Rcomplex definition (in header R_ext/Complex.h) has been
    extended to prevent possible mis-compilation when interfacing
    with Fortran (PR#18430).  The new definition causes compiler
    warnings with static initializers such as {1, 2}, which can be
    changed to {.r=1, .i=2}.
    Using the new definition from C++ depends on compiler extensions
    supporting C features that have not been incorporated into the
    C++ standards but are available in g++ and clang++: this may
    result in C++ compiler warnings but these have been worked around
    for recent versions of common compilers (GCC, Apple/LLVM clang,
    Intel).
    It is intended to change the inclusion of header R_ext/Complex.h
    by other R headers, so C/C++ code files which make use of
    Rcomplex should include that header explicitly.
  UTILITIES:
  * R CMD check does more checking of package .Rd files, warning
    about invalid email addresses and (some) invalid URIs and noting
    empty \item labels in description lists.
  * R CMD check now also reports problems when reading package news
    in md (file NEWS.md) and (optionally) plain text (file NEWS)
    formats.
  * _R_CHECK_TIMINGS_ defaults to a value from the environment even
    for R CMD check --as-cran; this allows for exceptionally fast or
    slow platforms.
    It now applies to checking PDF and HTML versions of the manuals,
    and 'checking CRAN incoming feasibility'.
  * R CMD check can optionally (but included in --as-cran) check
    whether HTML math rendering _via_ KaTeX works for the package .Rd
    files.
  * Non-interactive debugger invocations can be trapped by setting
    the environment variable _R_CHECK_BROWSER_NONINTERACTIVE_ to a
    true value.  This is enabled by R CMD check --as-cran to detect
    the use of leftover browser() statements in the package.
  * The use of sprintf and vsprintf from C/C++ has been deprecated in
    macOS 13 and is a known security risk.  R CMD check now reports
    (on all platforms) if their use is found in compiled code:
    replace by snprintf or vsnprintf respectively. [*NB:* whether
    such calls get compiled into the package is platform-dependent.]
  * Where recorded at installation, R CMD check reports the C and
    Fortran compilers used to build R.
    It reports the OS in use (if known, as given by osVersion) as
    well as that R was built for.
    It notes if a C++ standard was specified which is older than the
    current default: many packages have used C++11 to mean 'not
    C++98' - as C++11 is the minimum supported since R 4.0.0, that
    specification can probably be removed.
  * R CMD INSTALL reports the compilers (and on macOS, the SDK) used,
    and this is copied to the output of R CMD check.
    Where a C++ standard is specified, it is reported.
  * R CMD check's 'checking compilation flags in Makevars' has been
    relaxed to accept the use of flags such as -std=f2008 in
    PKG_FFLAGS.
  * tools::buildVignettes() has a new argument skip, which is used by
    R CMD check to skip (and note) vignettes with unavailable
    \VignetteDepends (PR#18318).
  * New generic .AtNames() added to enable class-specific completions
    after @. The formerly internal function findMatches() is now
    exported, mainly for use in methods for .DollarNames() and
    .AtNames().
  DEPRECATED AND DEFUNCT:
  * default.stringsAsFactors() is defunct.
  * Calling as.data.frame.&lt;class&gt;() directly (for 12 atomic classes)
    is going to be formally deprecated, currently activated by
    setting the environment variable
    _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ to non-empty, which also
    happens in R CMD check --as-cran.
  BUG FIXES:
  * Hashed environments with sizes less than 5 can now grow.
    (Reported to R-devel by Duncan Garmonsway.)
  * as.character(&lt;Rd&gt;, deparse = TRUE) failed to re-escape curly
    braces in LaTeX-like text.  (Reported by Hadley Wickham in
    PR#18324.)
  * library() now passes its lib.loc argument when requiring Depends
    packages; reported (with fix) in PR#18331 by Mikael Jagan.
  * R CMD Stangle: improved message about 'Output' files.
  * head(x, n) and tail(x, n) now signal an error if n is not
    numeric, instead of incidentally "working" sometimes returning
    all of x.  Reported and discussed by Colin Fay, in PR#18357.
  * The "lm" method for summary() now gives the correct F-statistic
    when the model contains an offset.  Reported in PR#18008.
  * C() and `contrasts&lt;-`() now preserve factor level names when
    given a function object (as opposed a function name which did
    preserve names). Reported in PR#17616.
  * c(a = 1, 2)[[]] no longer matches 2 but rather signals a
    _classed_ error.  Reported and analysed by Davis Vaughan in
    PR#18367, a duplicate of PR#18004, by Jan Meis et al.  For
    consistency, NULL[[]] is also erroneous now.  x[[]] &lt;- v gives an
    error of the same class "MissingSubscriptError".
  * The relist() function of utils now supports NULL elements in the
    skeleton (PR#15854).
  * ordered(levels = *) (missing x) now works analogously to factor(,
    ordered=TRUE); reported (with fix) by Achim Zeileis in PR#18389.
  * User-defined Rd macro definitions can now span multiple lines,
    thanks to a patch from Duncan Murdoch. Previously, the Rd parser
    silently ignored everything after the first line.
  * Plain-text help (tools::Rd2txt()) now preserves an initial blank
    line for text following description list items.
  * tools::Rd2HTML() and tools::Rd2latex() no longer split \arguments
    and \value lists at Rd comments.
  * tools::Rd2latex() now correctly handles optional text outside
    \items of argument lists as well as bracketed text at the
    beginning of sections, e.g., \value{[NULL]}.
  * as.character(&lt;POSIXt&gt;) now behaves more in line with the methods
    for atomic vectors such as numbers, and is no longer influenced
    by options().  Ditto for as.character(&lt;Date&gt;).  The
    as.character() method gets arguments digits and OutDec with
    defaults _not_ depending on options().  Use of as.character(*,
    format = .) now warns.
  * Similarly, the as.character.hexmode() and *.octmode() methods
    also behave as good citizen methods and back compatibility option
    keepStr = TRUE.
  * The as.POSIXlt(&lt;POSIXlt&gt;) and as.POSIXct(&lt;POSIXct&gt;) default
    methods now do obey their tz argument, also in this case.
  * as.POSIXlt(&lt;Date&gt;) now does apply a tz (time zone) argument, as
    does as.POSIXct(); partly suggested by Roland Fuss on the R-devel
    mailing list.
  * as.Date.POSIXlt(x) now also works when the list components are of
    unequal length, aka "partially filled" or "ragged".
  * expand.model.frame() looked up variables in the wrong environment
    when applied to models fitted without data.  Reported in
    PR#18414.
  * time() now (also) uses the ts.eps = getOption("ts.eps") argument
    and thus by default rounds values very close to the start (or
    end) of a year.  Based on a proposal by Andre"i V. Kostyrka on
    R-help.
  * Printing of a factanal() result with just one factor and sort =
    TRUE now works regularly, fixing PR#17863 by Timothy Bates,
    thanks to the 'R Contributors' working group.
  * Printing 0-length objects of class "factor", "roman", "hexmode",
    "octmode", "person", "bibentry", or "citation" now prints
    something better, one of which fixes PR#18422, reported by
    Benjamin Feakins.
  * Sys.timezone() queries timedatectl only if systemd is loaded;
    addressing a report by Jan Gorecki in PR#17421.
  * The formula method of cor.test() had scoping problems when
    environment(formula) was not the calling environment; reported
    with a patch proposal by Mao Kobayashi in PR#18439.
  * attach() of an environment with active bindings now preserves the
    active bindings.  Reported by Kevin Ushey in PR#18425.
  * BLAS detection now works also with system-provided libraries not
    available as regular files.  This fixes detection of the
    Accelerate framework on macOS since Big Sur.  Reported by David
    Novgorodsky.
  * download.file() gives a helpful error message in case of an
    invalid download.file.method option, thanks to Colin Fay's report
    in PR#18455.
  * Sporadic crashes of Rterm when using completion have been fixed.
  * Rprof() is now more reliable.  A livelock in thread
    initialization with too short sampling interval has been fixed on
    macOS.  A deadlock in using the C runtime has been fixed on
    Windows.  A potential deadlock has been prevented on Unix.
  * Cursor placement in Rgui now works even after a fixed-width font
    is selected.
  * Mandatory options (options()) are now set on startup so that
    saving and restoring them always works (PR#18372).
  * Package installation, R CMD INSTALL or install.packages(*), now
    parses each of the &lt;pkg&gt;/R/*.R files individually instead of
    first concatenating and then parse()ing the large resulting file.
    This allows parser or syntax errors to be diagnosed with correct
    file names and line numbers, thanks to Simon Dedman's report and
    Bill Dunlap's patch in PR#17859.
    This _does_ require syntactically self contained R source files
    now, fixing another inadvertent bug.
  * predict.lm(&lt;model with offset&gt;) now finds the offset in the
    correct environment, thanks to Andr'e Gillibert's report and patch
    in PR#18456.
  * getInitial(&lt;formula&gt;) now finds the selfStart model in the
    correct environment.  (Reported by Ivan Krylov in PR#18368.)
  * Fix for possible segfault when using recently-added graphics
    features, such as gradients, clipping paths, masks, and groups
    with pdf(file=NULL).
  * class(m) &lt;- class(m) no longer changes a matrix m by adding a
    class _attribute_.
  * packageDate(pkg) now only warns once if there is no pkg.
  * When ts() creates a multivariate time series, "mts", it also
    inherits from "array" now, and is.mts() is documented _and_
    stricter.
  * Rd2txt() now preserves line breaks of \verb Rd content and from
    duplicated \cr.  The former also fixes the rendering of verbatim
    output from Rd \Sexpr in plain-text help.
  * uniroot(f, interval) should no longer wrongly converge _outside_
    the interval in some cases where abs(f(x)) == Inf for an x at the
    interval boundary, thanks to posts by Ben Bolker and Serguei
    Sokol on R-devel.
  * Vectorized alpha handling in palette functions such as in gray(),
    rainbow(), or hcl.colors() works correctly now, thanks to Achim
    Zeileis' report and patch in PR#18476.
  * Formatting and print()ing of bibentry objects has dropped the
    deprecated citation.bibtex.max argument, such that the bibtex
    argument's default for print.bibentry() depends directly on the
    citation.bibtex.max option, whereas in format.bibentry() the
    option no longer applies.
  * Attempting to use a character string naming a foreign function
    entry point in a foreign function call in a package will now
    signal an error if the packages has called R_forceSymbols to
    specify that symbols must be used.
  * An error in table() could permanently set options(warn=2)
    promoting all subsequent warnings to errors.
  * The sigma() function gave misleading results for binary GLMs.  A
    new method for objects of class "glm" returns the square root of
    the estimate of the dispersion parameter using the same
    calculation as summary.glm().
  * bs() and ns() in the (typical) case of automatic knot
    construction, when some of the supposedly inner knots coincide
    with boundary knots, now moves them inside (with a warning),
    building on PR#18442 by Ben Bolker.
  * R CMD on Windows now skips the site profile with --no-site-file
    and --vanilla even when R_PROFILE is set (PR#18512, from Kevin
    Ushey).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1686916800">- CHANGES IN R 4.3.1:
  C-LEVEL FACILITIES:
  * The C-level API version of R's integrate(), Rdqags() in Applic.h,
    now returns the correct number of integrand evaluations neval,
    fixing PR#18515 reported and diagnosed by Stephen Wade.
  * The C prototypes for LAPACK calls dspgv and dtptrs in
    R_exts/Lapack.h had one too many and one too few character length
    arguments - but this has not caused any known issues. To get the
    corrected prototypes, include
    [#]include &lt;Rconfig.h&gt; // for PR18534fixed
    [#]ifdef PR18534fixed
    [#] define usePR18534fix 1
    [#]endif
    [#]include &lt;R_exts/Lapack.h&gt;
    in your C/C++ code (PR#18534).
  INSTALLATION:
  * Many of the checks of esoteric Internet operations and those
    using unreliable external sites have been moved to a new target
    that is not run by default and primarily intended for the core
    developers.  To run them use
    cd tests; make test-Internet-dev
  BUG FIXES:
  * .S3methods(), typically called from methods(), again marks
    methods from package base as visible.
    Also, the visibility of non-base methods is again determined by
    the method's presence in search().
  * tools::Rdiff() is now more robust against invalid strings, fixing
    installation tests on Windows without Rtools installed
    (PR#18530).
  * Fix (new) bug in hcl.colors(2, *), by Achim Zeileis (PR#18523).
  * head(., &lt;illegal&gt;) and tail(..) now produce more useful "Error in
    ...." error messages, fixing PR#18362.
  * Package code syntax on Windows is checked in UTF-8 when UTF-8 is
    the native encoding.
  * na.contiguous(x) now also returns the first run, when it is at
    the beginning and there is a later one of the same length;
    reported to R-devel, including a fix, by Georgi Boshnakov.
    Further, by default, it modifies only an existing attr(*,"tsp")
    but otherwise no longer sets one.
  * chol(&lt;not pos.def&gt;, pivot = &lt;T|F&gt;) now gives a correct error or
    warning message (depending on pivot), thanks to Mikael Jagan's
    (PR#18541).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1699012800">- CHANGES IN R 4.3.2:
  NEW FEATURES:
  * The default initialization of the "repos" option from the
    repositories file at startup can be skipped by setting
    environment variable R_REPOSITORIES to NULL such that
    getOption("repos") is empty if not set elsewhere.
  * qr.X() is now an implicit S4 generic in methods.
  * iconv(to = "ASCII//TRANSLIT") is emulated using substitution on
    platforms which do not support it (notably Alpine Linux).  This
    should give a human-readable conversion in ASCII on all platforms
    (rather than NA_character_).
  * trans3d() gains options continuous and verbose addressing the
    problem of possible "wrap around" when projecting too long
    curves, as reported by Achim Zeileis in PR#18537.
  * tools::showNonASCII() has been rewritten to work better on macOS
    14 (which has a changed implementation of iconv()).
  * tiff(type = "quartz") (the default on macOS) now warns if
    compression is specified: it continues to be ignored.
  INSTALLATION on a UNIX-ALIKE:
  * There is some support for building with Intel's LLVM-based
    compilers on x86_64 Linux, such as (C) icx, (C++) ipcx and
    (Fortran) ifx from oneAPI 2023.x.y.
  * There is support for using LLVM's flang-new as the Fortran
    compiler from LLVM 16.0.x (preferably 17.0.0 or later).
  UTILITIES:
  * R CMD check reports the use of the Fortran 90 random number
    generator RANDOM_NUMBER() and the subroutines to initialize it.
    'Writing R Extensions' has example code to use R's RNGs from
    Fortran.
  BUG FIXES:
  * substr(x, n, L) &lt;- cc now works (more) correctly for multibyte
    UTF-8 strings x when L &gt; nchar(x), thanks to a report and patch
    by 'Architect 95'.
  * contrib.url(character()) now returns 0-length character() as
    documented, which also avoids spurious warnings from
    available.packages() et al. in the edge case of an empty vector
    of repository URLs.
  * readChar(., 4e8) no longer fails, thanks to Kodi Arfer's report
    (PR#18557).
  * lapply(&lt;list&gt;, as.data.frame) no longer warns falsely for some
    base vector components.
  * Communication between parent and child processes in the multicore
    part of parallel could fail on platforms that do not support an
    arbitrarily large payload in system functions read()/write() on
    pipes (seen on macOS where a restriction to INT_MAX bytes is
    documented, without doing a partial read unlike Linux). The
    payload is now split into 1Gb chunks to avoid that problem.
    (PR#18571)
  * qqplot(x,y, conf.level=.) gives better confidence bounds when
    length(x) != length(y), thanks to Alexander Ploner's report and
    patch proposal (PR#18557).
  * norm(&lt;0-length&gt;, "2") now gives zero instead of an error, as all
    the other norm types, thanks to Mikael Jagan's PR#18542.
  * Build-stage Rd macros \packageAuthor and \packageMaintainer now
    process Authors@R, fixing NA results when the package DESCRIPTION
    omits Author and Maintainer fields.
  * Formatting and printing complex numbers could give things like
    0.1683-0i because of rounding error: -0i is now replaced by +0i.
  * postscript() refused to accept a title comment containing the
    letter "W" (PR#18599).
  * isoreg(c(1,Inf)) signals an error instead of segfaulting, fixing
    PR#18603.
  * tiff(type = "Xlib") was only outputting the last page of
    multi-page plots.
  * tools::latexToUtf8() again knows about \~{n} and other letters
    with tilde, fixing a regression in R 4.3.0, and about \^{i} as an
    alternative to \^{\i} (similarly with other accents).
    Furthermore, LaTeX codes for accented I letters are now correctly
    converted, also fixing related mistakes in
    tools::encoded_text_to_latex().
  * tar(*, tar = "internal") no longer creates out-of-spec tar files
    in the very rare case of user or group names longer than 32
    bytes, fixing PR#17871 with thanks to Ivan Krylov.
  * When using the "internal" timezone datetime code, adding a
    fraction of a second no longer adds one second, fixing PR#16856
    from a patch by Ivan Krylov.
  * tools::checkRd() no longer produces spurious notes about
    "unnecessary braces" from multi-line Rd results of \Sexpr macros.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1709208000">- CHANGES IN R 4.3.3:
  NEW FEATURES:
  * iconv() now fixes up variant encoding names such as "utf8"
    case-insensitively.
  DEPRECATED AND DEFUNCT:
  * The legacy encoding = "MacRoman" is deprecated in pdf() and
    postscript(): support was incomplete in earlier versions of R.
  BUG FIXES:
  * Arguments are now properly forwarded to methods on S4 generics
    with ... in the middle of their formal arguments. This was broken
    for the case when a method introduced an argument but did not
    include ... in its own formals. Thanks to Herv'e Pag`es for the
    report PR#18538.
  * Some invalid file arguments to pictex(), postscript() and xfig()
    opened a file called NA rather than throw an error.  These
    included postscript(NULL) (which some people expected to work
    like pdf(NULL)).
  * Passing filename = NA to svg(), cairo_pdf(), cairo_ps() or the
    Cairo-based bitmap devices opened a file called NA: it now throws
    an error.
  * quartz(file = NA) opened a file called NA, including when used as
    a Quartz-based bitmap device.  It now gives an error.
  * rank(&lt;long vector&gt;) now works, fixing PR#18617, thanks to Ilia
    Kats.
  * seq.int() did not adequately check its length.out argument.
  * match(&lt;POSIXct&gt;, .) is correct again for differing time zones,
    ditto for "POSIXlt", fixing PR#18618 reported by Bastian Klein.
  * drop.terms(*, dropx = &lt;0-length&gt;) now works, fixing PR#18563 as
    proposed by Mikael Jagan.
  * drop.terms(*) keeps + offset(.) terms when it should, PR#18565,
    and drop.terms() no longer makes up a response, PR#18566, fixing
    both bugs thanks to Mikael Jagan.
  * getS3method("t", "test") no longer finds the t.test() function,
    fixing PR#18627.
  * pdf() and postscript() support for the documented Adobe encodings
    "Greek" and "Cyrilllic" was missing (although the corresponding
    Windows' codepages could be used).
  * Computations of glyph metric information for pdf() and
    postscript() did not take into account that transliteration could
    replace one character by two or more (only seen on macOS 14) and
    typically warned that the information was not known.
  * rank(x) no longer overflows during integer addition, when
    computing rank average for largish but not-yet long vector x,
    fixing PR#18630, thanks to Ilia Kats.
  * list.files() on Windows now returns also files with names longer
    that 260 bytes (the Windows limit is 260 characters).
    Previously, some file names particularly with 'East Asian'
    characters were omitted.
  * cov2cor(&lt;0 x 0&gt;) now works, fixing PR#18423 thanks to Mikael
    Jagan and Elin Waring.
  * cov2cor(&lt;negative diagonal&gt;) and similar now give one warning
    instead of two, with better wording, fixing PR#18424 thanks to
    Mikael Jagan.
  * tools:: startDynamicHelp() now ensures port is in proper range,
    fixing PR#18645.
  * pbeta(x, a,b) is correct now for x=0 or 1 in the boundary cases
    where a or b or both are 0, fixing PR#18672 thanks to Michael
    Fay.
  * pmatch(x, table) for large table, also called for data frame row
    selection, dfrm[nm, ], is now interruptible, fixing PR#18656.
  * predict(&lt;rank-deficient lm&gt;, newdata=*) fix computing of nbasis,
    see Russ Lenth's comment 29 in PR#16158.
  * Added a work-around for a bug in macOS 14.3.1 and higher which
    prevents R plots in the Quartz Cocoa device from updating on
    screen.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1713960000">- CHANGES IN R 4.4.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Startup banners, R --version, sessionInfo() and R CMD check no
    longer report (64-bit) as part of the platform as this is almost
    universal - the increasingly rare 32-bit platforms will still
    report (32-bit).
    On Windows, ditto for window titles.
  * is.atomic(NULL) now returns FALSE, as NULL is not an atomic
    vector.  Strict back-compatibility would replace is.atomic(foo)
    by (is.null(foo) || is.atomic(foo)) but should happen only
    sparingly.
  NEW FEATURES:
  * The confint() methods for "glm" and "nls" objects have been
    copied to the stats package.  Previously, they were stubs which
    called versions in package MASS. The MASS namespace is no longer
    loaded if you invoke (say) confint(glmfit).  Further, the "glm"
    method for profile() and the plot() and pairs() methods for class
    "profile" have been copied from MASS to stats.  (profile.nls()
    and plot.profile.nls() were already in stats.)
  * The confint() and profile methods for "glm" objects have gained a
    possibility to do profiling based on the Rao Score statistic in
    addition to the default Likelihood Ratio. This is controlled by a
    new test = argument.
  * The pairs() method for "profile" objects has been extended with a
    which = argument to allow plotting only a subset of the
    parameters.
  * The "glm" method for anova() computes test statistics and
    p-values by default, using a chi-squared test or an F test
    depending on whether the dispersion is fixed or free.  Test
    statistics can be suppressed by giving argument test a false
    logical value.
  * In setRepositories() the repositories can be set using their
    names via name = instead of index ind =.
  * methods() and .S3methods() gain a all.names option for the (rare)
    case where functions starting with a . should be included.
  * Serializations can now be interrupted (e.g., by Ctrl-C on a
    Unix-alike) if they take too long, e.g., from save.image(),
    thanks to suggestions by Ivan Krylov and others on R-devel.
  * New startup option --max-connections to set the maximum number of
    simultaneous connections for the session.  Defaults to 128 as
    before: allowed values up to 4096 (but resource limits may in
    practice restrict to smaller values).
  * R on Windows (since Windows 10 2004) now uses the new Segment
    Heap allocator. This may improve performance of some
    memory-intensive applications.
  * When R packages are built, typically by R CMD build &lt;pkg&gt;, the
    new --user=&lt;build_user&gt; option overrides the (internally
    determined) user name, currently Sys.info()["user"] or LOGNAME.
    This is a (modified) fulfillment of Will Landau's suggestion in
    PR#17530.
  * tools::testInstalledBasic() gets new optional arguments outDir
    and testSrcdir, e.g., allowing to use it in a &lt;builddir&gt; !=
    &lt;srcdir&gt; setup, and in standard "binary" Windows installation
  * if* a source tests/ folder is present.
  * range(&lt;DT_with_Inf&gt;, finite = TRUE) now work for objects of class
    "Date", "POSIXct", and "POSIXlt" with infinite entries,
    analogously to range.default(), as proposed by Davis Vaughan on
    R-devel.  Other range()-methods can make use of new function
    .rangeNum().
  * New .internalGenerics object complementing .S3PrimitiveGenerics,
    for documentation and low-level book-keeping.
  * grid() now invisibly returns the x- and y- coordinates at which
    the grid-lines were drawn.
  * norm(., type) now also works for complex matrices.
  * kappa(., exact = TRUE, norm = *) now works for all norms and also
    for complex matrices.  In symmetric / triangular cases, the new
    argument uplo = "U" | "L" allows the upper or lower triangular
    part to be specified.
  * memDecompress(type = "unknown") recognizes compression in the
    default 'zlib' format as used by memCompress(type = "gzip").
  * memCompress() and memDecompress() will use the libdeflate library
    (&lt;https://github.com/ebiggers/libdeflate&gt;) if installed.  This
    uses the same type of compression for type = "gzip" but is 1.5-2x
    faster than the system libz library on some common platforms: the
    speed-up may depend on the library version.
  * diff() for objects of class "Date", "POSIXct", and "POSIXlt"
    accepts a units argument passed via ....
  * Dynamic help now does a much better job of rendering package
    DESCRIPTION metadata.
  * Rprof() gains an event argument and support for elapsed (real)
    time profiling on Unix (PR#18076).
  * filled.contour() gains a key.border argument.
  * tools::update_pkg_po() gets arguments pot_make and mo_make for
    _not_ re-making the corresponding files, and additionally a
    verbose argument.
  * Hexadecimal string colour specifications are now accepted in
    short form, so, for example, we can use "#123", which is
    equivalent to "#112233".
    Thanks to MikeFC for the original idea and Ella Kaye, Malcolm
    Barrett, George Stagg, and Hanne Oberman for the patch.
  * Plain-text help shows \var markup by angle brackets.
  * The new experimental primitive function declare() is intended to
    eventually allow information about R code to be communicated to
    the interpreter, compiler, and code analysis tools. The syntax
    for declarations is still being developed.
  * Functions psmirnov(), qsmirnov() and rsmirnov() in package stats
    have had argument two.sided renamed to alternative, to take into
    account that the permutation distributions of the one-sided
    statistics can be different in the case of ties.  Consequence of
    PR#18582.
  * sort() is now an implicit S4 generic in methods.
  * Formatting and printing, format(z), print(z), of complex vectors
    z no longer zap relatively small real or imaginary parts to zero,
    fixing PR#16752.  This is an API change, as it was documented
    previously to round real and imaginary parts together on purpose,
    producing nicer looking output.  As mentioned, e.g. in the PR,
    this change is compatible with many other "R-like" programming
    environments.
    We have simplified the internal code and now basically format the
    real and imaginary parts independently of each other.
  * New experimental functions Tailcall() and Exec() to support
    writing stack-space-efficient recursive functions.
  * Where characters are attempted to be plotted by pdf(),
    postscript() and xfig() which are not in the selected 8-bit
    character set (most often Latin-1) and the R session is using a
    UTF-8 locale, the warning messages will show the UTF-8 character
    rather than its bytes and one dot will be substituted per
    character rather than per byte.  (Platforms whose iconv() does
    transliteration silently plot the transliteration.)
    In a UTF-8 locale some transliterations are now done with a
    warning (e.g., dashes and Unicode minus to hyphen, ligatures are
    expanded, permille (‰) is replaced by o/oo), although the OS may
    have got there first.  These are warnings as they will continue
    to be replaced by dots in earlier versions of R.
  * The matrix multiplication functions crossprod() and tcrossprod()
    are now also primitive and S3 generic, as %*% had become in R
    4.3.0.
  * source() and example() have a new optional argument catch.aborts
    which allows continued evaluation of the R code after an error.
  * The non-Quartz tiff() devices allow additional types of
    compression if supported by the platform's libtiff library.
  * The list of base and recommended package names is now provided by
    tools::standard_package_names().
  * cairo_pdf() and cairo_ps() default to onefile = TRUE to closer
    match pdf() and postscript().
  * New option catch.script.errors provides a documented way to catch
    errors and then continue in non-interactive use.
  * L %||% R newly in base is an expressive idiom for the phrases
    if(!is.null(L)) L else R or if(is.null(L)) R else L.
  * The return value from warnings() now always inherits from
    "warnings" as documented, now also in the case of no warnings
    where it previously returned NULL.
  * as.complex("1i") now returns 0 + 1i instead of NA with a warning.
  * z &lt;- c(NA, 1i) now keeps the imaginary part Im(z[1]) == 0, no
    longer coercing to NA_complex_.  Similarly, cumsum(z) correctly
    sums real and imaginary parts separately, i.e., without
    "crosstalk" in case of NAs.
  * On Alpine Linux iconv() now maps "latin2", "latin-2", "latin9"
    and "latin-9" to encoding names the OS knows about
    (case-insensitively).
  * iconv(sub = "Unicode") now always zero-pads to four (hex) digits,
    rather than to 4 or 8.  (This seems to have become the convention
    once Unicode restricted the number of Unicode points to 2^21 - 1
    and so will never need more than 6 digits.)
  * NCOL(NULL) now returns 0 instead of 1, for consistency with
    cbind().
  * The information for the Euro glyph missing from the Adobe .afm
    files for the Courier, Helvetica and Times families has been
    copied from their URW equivalents - this will improve vertical
    centring in the pdf() and postscript() devices.
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.12.0.  The changes are almost entirely cosmetic.
  * The included LAPACK sources have been updated to version 3.12.0
    and some further double-complex routines added.
  * There are new font families for the 2014--5 URW 2.0 fonts (see
    ?pdf) which are included in recent versions of Ghostscript.
    These have font widths for most Greek glyphs and a few others
    which were missing from the original versions (whose font
    families remain available for reproducibility, although
    Ghostscript-based viewers will render using the 2.0 versions).
  * Improve the large-n efficiency of as.matrix(&lt;dist&gt;), thanks an R
    contributors effort, notably by Tim Taylor and Heather Turner,
    see PR#18660.
  * The default and numeric methods of all.equal() get a check.class
    option.
  * zapsmall() gets new optional arguments, function mFUN and min.d,
    for extra flexibility; fulfills a wish in PR#18199.  Also, it is
    now an implicit S4 generic in package methods.
  * The Rd filter for aspell() gains an ignore argument.
  * New generic function sort_by(), primarily useful for the
    data.frame method which can be used to sort rows of a data frame
    by one or more columns.
  * The icence headers for the RPC code in src/extra/xdr have been
    updated to use the GPL-compatible licence published by Oracle
    America in 2010.
  * New function pkg2HTML() in tools to create single-page HTML
    reference manuals for R packages.
  * The byte code evaluator now uses less C stack space for recursive
    calls to byte-compiled functions. It also makes more of an effort
    to avoid allocations for scalar return values.
  * New completion option backtick (disabled by default) allows
    non-syntactic completions to be wrapped in backquotes. This is
    currently only useful for Jupyter notebooks via the IRkernel
    package, and may cause problems for other backends.
  INSTALLATION:
  * The parser has been updated to work with bison 3.8.2, which is
    now used for the pre-generated parsers in gram.c, file.c, and
    gramRd.c. A few parser error messages have changed, which may
    affect code that relies on exact messages.
  INSTALLATION on a UNIX-ALIKE:
  * System valgrind headers are now required to use configure option
  - -with-valgrind-instrumentation with value 1 or 2.
  * configure will warn if it encounters a 32-bit build, as that is
    nowadays almost untested.
  * Environment variable R_SYSTEM_ABI is no longer used and so no
    longer recorded in etc/Renviron (it was not on Windows and was
    only ever used when preparing package tools).
  * If the libdeflate library and headers are available, libdeflate
    rather than libz is used to (de)compress R objects in lazy-load
    databases.  Typically tasks spend up to 5% of their time on such
    operations, although creating lazy-data databases is one of the
    exceptions.
    This can be suppressed if the library is available by the
    configure option --without-libdeflate-compression.
  * configure option --enable-lto=check has not worked reliably since
    2019 and has been removed.
  * The minimum autoconf requirement for a maintainer build has been
    increased to autoconf 2.71.
    It is intended to increase this to 2.72 for R 4.5.0: the
    distributed configure file was generated using 2.72.
  * The minimum version requirement for an external LAPACK has been
    reduced to 3.9.0.
  * No default C++ compiler is set if no C++17 compiler is detected:
    there is no longer an automatic fallback to C++14 or C++11.
    Compilers from the last five years should have sufficient
    support: for others macros CXX and CXXSTD can be set in file
    config.site to provide a fallback if needed.
    The Objective-C++ compiler now by default uses the standard
    selected by R for C++ (currently C++17) rather than the default
    standard for the C++ compiler (which on macOS is still C++98).
  INSTALLATION on macOS:
  * A new configure option --with-newAccelerate makes use of Apple's
    'new' BLAS / LAPACK interfaces in their Accelerate framework.
    Those interfaces are only available in macOS 13.3 or later, and
    building requires SDK 13.3 or later (from the Command Line Tools
    or Xcode 14.3 or later).
    By default the option uses new Accelerate for BLAS calls: to also
    use it for LAPACK use option --with-newAccelerate=lapack.  The
    later interfaces provide LAPACK 3.9.1 rather than 3.2.1: 3.9.1 is
    from 2021-04 and does not include the improved algorithms
    introduced in LAPACK 3.10.0 (including for BLAS calls).
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools44, an update of the Rtools43 toolchain.  It is
    based on GCC 13 and newer versions of MinGW-W64, binutils and
    libraries (targeting 64-bit Intel CPUs).  R-devel can no longer
    be built using Rtools43 without changes.
  * Rtools44 has experimental support for 64-bit ARM (aarch64) CPUs
    _via_ the LLVM 17 toolchain using lld, clang/flang-new and
    libc++.
  UTILITIES:
  * R CMD check notes when S4-style exports are used without
    declaring a strong dependence on package methods.
  * tools::checkRd() (used by R CMD check) detects more problems with
    \Sexpr-based dynamic content, including bad nesting of \Sexprs
    and invalid arguments.
  * tools::checkRd() now reports Rd titles and section names ending
    in a period; this is ignored by R CMD check unless environment
    variable _R_CHECK_RD_CHECKRD_MINLEVEL_ is set to -5 or smaller.
  * R CMD check now notes Rd files without an \alias, as long
    documented in 'Writing R Extensions' §1.3.1.  The check for a
    missing \description has been moved from tools::checkRd() to
    tools::checkRdContents().
  * R CMD check now visits inst/NEWS.Rd and OS-specific man
    subdirectories when checking Rd files.
  * tools::checkDocFiles() and tools::checkRdContents() now also
    check internal Rd files by default, but "specially" (ignoring
    missing documentation of arguments).
  * R CMD Rdiff gets option --useEx.
  * R CMD check now warns on non-portable uses of Fortran KIND such
    as INTEGER(KIND=4) and REAL(KIND=8).
    To see the failing lines set environment variable
    _R_CHECK_FORTRAN_KIND_DETAILS_ to a true value.
  * When checking Rd files, R CMD check now notes some of the "lost
    braces" that tools::checkRd() finds.  Typical problems are Rd
    macros missing the initial backslash (e.g., code{...}), in-text
    set notation (e.g., {1, 2}, where the braces need escaping), and
    \itemize lists with \describe-style entries of the form
    \item{label}{description}.
  * R CMD INSTALL (and hence check) will compile C++ code with
  - DR_NO_REMAP if environment variable _R_CXX_USE_NO_REMAP_ is set
    to a true value.  It is planned that this will in future become
    the default for compiling C++.
  * The new built-in Rd macro \dontdiff{} can be used to mark example
    code whose output should be ignored when comparing check output
    to reference output (tests/Examples/&lt;pkg&gt;-Ex.Rout.save).  The
    \dontdiff tag, like \donttest, is _not_ shown on the rendered
    help page, so provides a clean alternative to ##
    IGNORE_RDIFF_(BEGIN|END) comments.
  * R CMD build when there is no NAMESPACE, now uses the recommended
    exportPattern("^[^.]"), instead of exporting everything.
  * R CMD check now warns about non-ASCII characters in the NAMESPACE
    file (in addition to R files). Such packages are not portable and
    may fail to install on some platforms.
  C-LEVEL FACILITIES:
  * Headers R_ext/Applic.h and R-ext/Linpack.h used to include
    R_ext/BLAS.h although this was undocumented and unneeded by their
    documented entry points.  They no longer do so.
  * New function R_missing(), factored out from do_missing(), used to
    fix PR#18579.
  * SEXP type S4SXP has been renamed to OBJSXP to support
    experimenting with alternative object systems.  The S4SXP value
    can still be used in C code but is now deprecated.  Based on
    contributions from the R Consortium's Object-Oriented Programming
    Working Group.
  * New function pow1p(x,y) for accurate (1+x)^y.
  * mkCharLenCE was incorrectly documented to take a size_t length
    but was implemented with int (and character strings in R are
    limited to 2^31 - 1 bytes).
  DEPRECATED AND DEFUNCT:
  * data() no longer handles zipped data from long-defunct (since R
    2.13.0) --use-zip-data installations.
  * The legacy graphics devices pictex() and xfig() are now
    deprecated.  They do not support recent graphics enhancements and
    their font handling is rudimentary. The intention is to retain
    them for historical interest as long as they remain somewhat
    functional.
  * Support for encoding = "MacRoman" has been removed from the pdf()
    and postscript() devices - this was a legacy encoding supporting
    classic macOS up to 2001 and no longer has universal libiconv
    support.
  * is.R() is deprecated as no other S dialect is known to be in use
    (and this could only identify historical dialects, not future
    ones).
    Further information on calls can be obtained by setting the
    environment variable _R_DEPRECATED_IS_R_ to error which turns the
    deprecation warning into an error and so by default gives a
    traceback.  (This is done by R CMD check --as-cran.)
  * UseMethod() no longer forwards local variables assigned in the
    generic function into method call environments before evaluating
    the method body. This makes method calls behave more like
    standard function calls and makes method code easier to analyze
    correctly.
  * The twelve as.data.frame.&lt;class&gt;() methods which were deprecated
    only via _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ and in R CMD
    check --as-cran are formally deprecated now in favour of calling
    as.data.frame() or as.data.frame.vector().  The deprecation
    "check" now works also when as.data.frame() is S4 generic thanks
    to Ivan Krylov.
  * The default method for the directional comparison operators &lt;, &gt;,
    &lt;=, and &gt;= now signals an error when one of the operands is a
    language object, i.e. a symbol or a call.
  * For terms.formula(), deprecate abb and neg.out arguments
    _formally_ in addition to just documenting it.
  BUG FIXES:
  * The methods package is more robust to not being attached to the
    search path.  More work needs to be done.
  * pairwise.t.test() misbehaved when subgroups had 0 DF for
    variance, even with pool.sd = TRUE.  (PR#18594 by Jack Berry).
  * Probability distribution functions [dpq]&lt;distrib&gt;(x, *), but also
    bessel[IKJY](x, .) now consistently preserve attributes(x) when
    length(x) == 0, e.g., for a 2 x 0 matrix, thanks to Karolis
    Koncevičius' report PR#18509.
  * Group "Summary" computations such as sum(1:3, 4, na.rm = 5, NA,
    7, na.rm = LL) now give an error instead of either 17 or NN for
    LL true or false, as proposed by Ivan Krylov on the R-devel
    mailing list.  (This also means it is now an error to specify
    na.rm more than once.)
  * as.complex(x) now returns complex(real = x, imaginary = 0) for
    _all_ numerical and logical x, notably also for NA or
    NA_integer_.
  * Directories are now omitted by file.copy(, recursive = FALSE) and
    in file.append() (PR#17337).
  * gsub() and sub() are now more robust to integer overflow when
    reporting errors caused by too large input strings (PR#18346).
  * Top-level handlers are now more robust to attempts to remove a
    handler whilst handlers are running (PR#18508).
  * The handling of Alt+F4 in dialogs created on Windows using
    GraphApp has been fixed (PR#13870).
  * density() more consistently computes grid values for the
    FFT-based convolution, following Robert Schlicht's analysis and
    proposal in PR#18337, correcting density values typically by a
    factor of about 0.999.  Argument old.coords = TRUE provides back
    compatibility.
  * palette.colors() gains a name argument that defaults to FALSE
    controlling whether the vector of colours that is returned has
    names (where possible).  PR#18529.
  * tools::xgettext() no longer extracts the (non-translatable) class
    names from warningCondition and errorCondition calls.
  * S3method(&lt;gen&gt;, &lt;class&gt;, &lt;func&gt;) in the NAMESPACE file now works
    (again) when &lt;func&gt; is visible from the namespace, e.g.,
    imported, or in base.
  * getParseData(f) now also works for a function defined in the
    first of several &lt;pkg&gt;/R/*.R source files, thanks to Kirill
    Müller's report and Duncan Murdoch's patch in PR#16756.
  * Rd \Sexpr macros with nested #ifdef conditionals were not
    processed.
  * A non-blocking connection with non-default encoding (such as a
    socket) now correctly returns from readLines() after new data has
    arrived also when its EOF had been reached previously.  Thanks to
    Peter Meilstrup's report on R-devel and Ivan Krylov's report and
    patch proposal in PR#18555.
  * tools::checkRdContents() failed to detect empty argument
    descriptions when they spanned multiple lines, including those
    generated by prompt().  These cases are now noted by R CMD check.
  * Plain-text help no longer outputs spurious colons in the
    arguments list (for multi-line \item labels in the Rd source).
  * kappa() and rcond() work correctly in more cases; kappa(., norm =
    "2") now warns that it computes the 1-norm with (default) exact =
    FALSE; prompted by Mikael Jagan's quite comprehensive PR#18543.
  * Rd skeletons generated by prompt() or promptData() now use a
    dummy title (so R CMD build works).  tools::checkRdContents() has
    been updated to detect such template leftovers, including from
    promptPackage().
  * When S4 method dispatch fails because no method was found, the
    error message now includes the signature argument names; thanks
    to Michael Chirico's proposal on the R-devel list.
  * withAutoprint({ .. }) now preserves srcrefs previously lost,
    thanks to Andrew Simmons' report plus fix in PR#18572.
  * transform.data.frame() no longer adjusts names; in particular,
    untransformed variables are kept as-is, including those with
    syntactically invalid names (PR#17890).
  * The keep.source option for Rd \Sexpr blocks is no longer ignored.
  * The formula methods for t.test() and wilcox.test() now catch when
    paired is passed, addressing PR#14359; use Pair(x1, x2) ~ 1 for a
    paired test.
  * The level reported in the browser prompt was often too large. It
    now shows the number of browser contexts on the stack.
  * For cbind() and rbind(), the optional deparse.level argument is
    now properly passed to methods, thanks to Mikael Jagan's PR#18579
    and comments there.
  * Some error and warning messages for large ('long vector')
    matrix(v, nr, nc) and dim(m) &lt;- d are now correct about sizes,
    using long long formatting, fixing PR#18612 (and more) reported
    by Mikael Jagan.
  * readChar(useBytes = TRUE) now terminates strings even when the
    underlying connection uses extra spaces in the input buffer.
    This fixes problems with extra garbage seen with gzip
    connections, PR#18605.
  * Named capture in PCRE regular expressions now works also with
    more than 127 named groups (PR#18588).
  * Datetime functions are now robust against long jumps when dealing
    with internal time zone changes.  This avoids confusing warnings
    about an invalid time zone, previously triggered by turning
    warnings into errors or handling them via tryCatch (PR#17966,
    PR#17780).
  * Datetime functions now restore even an empty TZ environment
    variable after internal time zone changes (PR#17724).  This makes
    results of datetime functions with this (typically unintentional)
    setting more predictable.
  * drop.terms(*) now drops response as by default, keep.response =
    FALSE, fixing PR#18564 thanks to Mikael Jagan.
  * dummy.coef(.) now also works for lm()-models with character
    categorical predictor variables rather than factor ones, fixing
    PR#18635 reported by Jinsong Zhao.
  * formals(f) &lt;- formals(f) now also works for a function w/o
    arguments and atomic _constant_ body(f).
  * Correct as.function(&lt;invalid list&gt;, .)'s error message.
  * removeSource() is yet more thorough in finding and removing
    "srcref" and the other source references from parsed R language
    chunks, fixing PR#18638 thanks to Andrew Simmons.
  * dgeom() is more accurate now, notably when its result is very
    small, fixing PR#18642 thanks to the proposal of Morten Welinder,
    also improving other instances where C level binom_raw(x, n, ..)
    has x == 0 or x== n.
  * warning() with options(warn = 1) has improved output for
    multi-line messages.
  * axis.Date() and axis.POSIXct() now respect the par("lab") setting
    for the number of pretty() intervals.
  * Comparisons for language objects (which are based on deparsing)
    are now more careful about using accurate deparsed results
    (PR#18676).
  * Plain-text help (Rd2txt) now correctly preserves blank lines
    following single-line \dontrun code.
  * &lt;POSIXlt&gt;[*] no longer sets wrong "balanced" attribute, fixing
    PR#18681 thanks to Mikael Jagan.
  * str(&lt;classed-call&gt;) now deparses the call as expected, fixing
    PR#18684, reported by Dave Slager.
  * In Rd examples, code following the closing brace of a \dontrun,
    \dontshow or \donttest tag on the same line is no longer skipped
    when R CMD check runs the examples.
  * as.data.frame(matrix(*, ncol=0)) now gets valid names() and
    colnames(); reported by Davis Vaughan on the R-devel list.
  * Internal Mathlib function stirlerr(n) is now almost fully
    (52-bit) accurate for all n &gt;= ~5.9 and more accurate also in the
    range 1 -- 5.9.  This entails small ("after 12th decimal")
    changes in density functions, e.g., dgamma() in _some_ regions of
    their support.  The fix was partly prompted by Morten Welinder's
    PR#18640.
  * Numbers like 9876543.2 are now considered non-integer by Mathlib
    internal R_nonint(), amending original fix of PR#15734.
  * Rd comment lines no longer cause broken paragraphs in the
    rendered PDF and plain-text help. In code blocks, pure comment
    lines (starting with %) no longer produce an empty line.
  * xtabs(Freq ~ .) now consistently defaults to na.action = na.pass,
    using na.rm = FALSE (added as an argument) when summing over Freq
    (PR#17770).
  * tools::testInstalledPackage() is no longer silent about failures
    from running examples or tests and its return code no longer
    ignores failures from checking vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1718366400">- CHANGES IN R 4.4.1:
  C-LEVEL FACILITIES:
  * Functions R_atof and R_strtod declared in header R_ext/Utils.h
    are now documented in 'Writing R Extensions' and so formally part
    of the API.
  * The non-API entry points Rf_setSVector, Rf_StringFalse,
    Rf_StringTrue and Rf_isBlankString have been added to those
    reported by R CMD check.
  * The new function Rf_allocLang is now available. This provides an
    alternative to the idiom of calling Rf_allocList followed by
    SET_TYPEOF.
  UTILITIES:
  * R CMD check now reports as warnings what gfortran calls 'Fortran
    2018 deleted features', all of which have long been marked as
    'obsolescent' and some of which were deleted in Fortran 2008 or
    earlier.  Fortran compilers are no longer required to support
    these.
  BUG FIXES:
  * as.numeric(), scan(), type.convert() and other places which use
    the internal C function R_strtod now require a _non-empty_ digit
    sequence in a decimal or binary exponent.  This aligns with the
    C/POSIX standard for strtod and with ?NumericConstants.
  * as.data.frame(m, make.names=NA) now works correctly for a matrix
    m with NA's in row names.
  * The error message from &lt;POSIXlt&gt;[["hour"]] and similar now
    mentions *[[, "hour"]], as wished for in PR#17409 and proposed by
    Michael Chirico.
  * qbinom() and potentially qpois(), qnbinom(), no longer sometimes
    fail accurate inversion (of pbinom(), etc), thanks to Christopher
    Chang's report and patch in PR#18711.
  * The internal help server on Windows can again serve requests sent
    in quick succession, fixing a regression in R 4.4.0.
  * debugcall(&lt;S3Generic&gt;()) now also works when a corresponding
    S4-generic version is in the methods cache (PR#18143).
  * Package tools' toTitleCase(ch0) now returns character(0) when ch0
    is of zero length; fixing PR#18724, reported by David Hugh Jones.
  * R CMD check is no longer broken (without a check result and no
    explanation in 00check.log) for a package which declares an
    invalid VignetteBuilder in DESCRIPTION but has no vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1730376000">- CHANGES IN R 4.4.2:
  C-LEVEL FACILITIES:
  * The S-compatibility macros F77_COM and F77_COMDECL defined in
    header R_ext/RS.h are deprecated and will be removed shortly.  We
    could find no record of their use.
  BUG FIXES:
  * Mathlib function lgammacor(x) no longer warns about underflow to
    zero for large x.
  * Text widths and heights were incorrectly reported by the Quartz
    device if the drawing context didn't exist yet (typically when
    drawing off-screen to a window that is yet to appear, see
    PR#18591).
  * The Quartz device could segfault in cases where paths with spaces
    are used in the new glyph drawing API.  Thanks to Tomek
    Gieorgijewski (PR#18758).
  * On macOS in R CRAN builds, it is again possible to read
    little-endian UTF-16 text with a BOM from a connection using
    encoding="UTF-16".  Users building R from source should avoid
    using the system libiconv in macOS 14.1 and later.
  * methods' internal .requirePackage() now re-enables primitive
    method dispatch when needed; thanks to Ivan Krylov for
    demystifying CRAN package check failures on the R-devel mailing
    list.</changelog>
</package>
<package pkgid="bf9d5d2d7b9ff8d2cf81f3b824b8543d6f818d8f8337bf7d03872191c5eab3a6da96f83a5716cf0bfc026280180094b091257806481bf3b3c225a2490a2ae7fb" name="R-nnet" arch="x86_64">
  <version epoch="0" ver="7.3.19" rel="51.0.2.2.sr20241103"/>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1620302400">- To get in sync with d:l:R:autoCRAN the Matrix package's split
  in -devel was reversed.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339200">- improved spec file according to comments of dimstar in
  https://build.opensuse.org/request/show/892685</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339201">- CHANGES IN R 4.1.0:
  FUTURE DIRECTIONS:
  * It is planned that the 4.1.x series will be the last to support
    32-bit Windows, with production of binary packages for that
    series continuing until early 2023.
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Data set esoph in package datasets now provides the correct
    numbers of controls; previously it had the numbers of cases added
    to these.  (Reported by Alexander Fowler in PR#17964.)
  NEW FEATURES:
  * www.omegahat.net is no longer one of the repositories known by
    default to setRepositories().  (Nowadays it only provides source
    packages and is often unavailable.)
  * Function package_dependencies() (in package tools) can now use
    different dependency types for direct and recursive dependencies.
  * The checking of the size of tarball in R CMD check --as-cran
    &lt;pkg&gt; may be tweaked via the new environment variable
    _R_CHECK_CRAN_INCOMING_TARBALL_THRESHOLD_, as suggested in
    PR#17777 by Jan Gorecki.
  * Using c() to combine a factor with other factors now gives a
    factor, an ordered factor when combining ordered factors with
    identical levels.
  * apply() gains a simplify argument to allow disabling of
    simplification of results.
  * The format() method for class "ftable" gets a new option justify.
    (Suggested by Thomas Soeiro.)
  * New ...names() utility.  (Proposed by Neal Fultz in PR#17705.)
  * type.convert() now warns when its as.is argument is not
    specified, as the help file always said it _should_.  In that
    case, the default is changed to TRUE in line with its change in
    read.table() (related to stringsAsFactor) in R 4.0.0.
  * When printing list arrays, classed objects are now shown _via_
    their format() value if this is a short enough character string,
    or by giving the first elements of their class vector and their
    length.
  * capabilities() gets new entry "Rprof" which is TRUE when R has
    been configured with the equivalent of --enable-R-profiling (as
    it is by default).  (Related to Michael Orlitzky's report
    PR#17836.)
  * str(xS4) now also shows extraneous attributes of an S4 object
    xS4.
  * Rudimentary support for vi-style tags in rtags() and R CMD rtags
    has been added.  (Based on a patch from Neal Fultz in PR#17214.)
  * checkRdContents() is now exported from tools; it and also
    checkDocFiles() have a new option chkInternal allowing to check
    Rd files marked with keyword "internal" as well.  The latter can
    be activated for R CMD check via environment variable
    _R_CHECK_RD_INTERNAL_TOO_.
  * New functions numToBits() and numToInts() extend the raw
    conversion utilities to (double precision) numeric.
  * Functions URLencode() and URLdecode() in package utils now work
    on vectors of URIs.  (Based on patch from Bob Rudis submitted
    with PR#17873.)
  * path.expand() can expand ~user on most Unix-alikes even when
    readline is not in use.  It tries harder to expand ~, for example
    should environment variable HOME be unset.
  * For HTML help (both dynamic and static), Rd file links to help
    pages in external packages are now treated as references to
    topics rather than file names, and fall back to a file link only
    if the topic is not found in the target package. The earlier rule
    which prioritized file names over topics can be restored by
    setting the environment variable _R_HELP_LINKS_TO_TOPICS_ to a
    false value.
  * c() now removes NULL arguments before dispatching to methods,
    thus simplifying the implementation of c() methods, _but_ for
    back compatibility keeps NULL when it is the first argument.
    (From a report and patch proposal by Lionel Henry in PR#17900.)
  * Vectorize()'s result function's environment no longer keeps
    unneeded objects.
  * Function ...elt() now propagates visibility consistently with
    ..n.  (Thanks to Lionel Henry's PR#17905.)
  * capture.output() no longer uses non-standard evaluation to
    evaluate its arguments.  This makes evaluation of functions like
    parent.frame() more consistent.  (Thanks to Lionel Henry's
    PR#17907.)
  * packBits(bits, type="double") now works as inverse of
    numToBits().  (Thanks to Bill Dunlap's proposal in PR#17914.)
  * curlGetHeaders() has two new arguments, timeout to specify the
    timeout for that call (overriding getOption("timeout")) and TLS
    to specify the minimum TLS protocol version to be used for
    https:// URIs (_inter alia_ providing a means to check for sites
    using deprecated TLS versions 1.0 and 1.1).
  * For nls(), an optional constant scaleOffset may be added to the
    denominator of the relative offset convergence test for cases
    where the fit of a model is expected to be exact, thanks to a
    proposal by John Nash.  nls(*, trace=TRUE) now also shows the
    convergence criterion.
  * Numeric differentiation _via_ numericDeriv() gets new optional
    arguments eps and central, the latter for taking central divided
    differences.  The latter can be activated for nls() via
    nls.control(nDcentral = TRUE).
  * nls() now passes the trace and control arguments to getInitial(),
    notably for all self-starting models, so these can also be fit in
    zero-noise situations via a scaleOffset.  For this reason, the
    initial function of a selfStart model must now have ... in its
    argument list.
  * bquote(splice = TRUE) can now splice expression vectors with
    attributes: this makes it possible to splice the result of
    parse(keep.source = TRUE).  (Report and patch provided by Lionel
    Henry in PR#17869.)
  * textConnection() gets an optional name argument.
  * get(), exists(), and get0() now signal an error if the first
    argument has length greater than 1.  Previously additional
    elements were silently ignored.  (Suggested by Antoine Fabri on
    R-devel.)
  * R now provides a shorthand notation for creating functions, e.g.
    \(x) x + 1 is parsed as function(x) x + 1.
  * R now provides a simple native forward pipe syntax |&gt;.  The
    simple form of the forward pipe inserts the left-hand side as the
    first argument in the right-hand side call.  The pipe
    implementation as a syntax transformation was motivated by
    suggestions from Jim Hester and Lionel Henry.
  * all.equal(f, g) for functions now by default also compares their
    environment(.)s, notably via new all.equal method for class
    function.  Comparison of nls() fits, e.g., may now need
    all.equal(m1, m2, check.environment = FALSE).
  * .libPaths() gets a new option include.site, allowing to _not_
    include the site library.  (Thanks to Dario Strbenac's suggestion
    and Gabe Becker's PR#18016.)
  * Lithuanian translations are now available.  (Thanks to Rimantas
    Zakauskas.)
  * names() now works for DOTSXP objects.  On the other hand, in
    R-lang, the R language manual, we now warn against relying on the
    structure or even existence of such dot-dot-dot objects.
  * all.equal() no longer gives an error on DOTSXP objects.
  * capabilities("cairo") now applies only to the file-based devices
    as it is now possible (if very unusual) to build R with Cairo
    support for those but not for X11().
  * There is optional support for tracing the progress of
    loadNamespace() - see its help.
  * (Not Windows.)  l10n_info() reports an additional element, the
    name of the encoding as reported by the OS (which may differ from
    the encoding part (if any) of the result from
    Sys.getlocale("LC_CTYPE").
  * New function gregexec() which generalizes regexec() to find _all_
    disjoint matches and well as all substrings corresponding to
    parenthesized subexpressions of the given regular expression.
    (Contributed by Brodie Gaslam.)
  * New function charClass() in package utils to query the
    wide-character classification functions in use (such as
    iswprint).
  * The names of quantile()'s result no longer depend on the global
    getOption("digits"), but quantile() gets a new optional argument
    digits = 7 instead.
  * grep(), sub(), regexp and variants work considerably faster for
    long factors with few levels.  (Thanks to Michael Chirico's
    PR#18063.)
  * Provide grouping of x11() graphics windows within a window
    manager such as Gnome or Unity; thanks to a patch by Ivan Krylov
    posted to R-devel.
  * The split() method for class data.frame now allows the f argument
    to be specified as a formula.
  * sprintf now warns on arguments unused by the format string.
  * New palettes "Rocket" and "Mako" for hcl.colors() (approximating
    palettes of the same name from the 'viridisLite' package).
    Contributed by Achim Zeileis.
  * The base environment and its namespace are now locked (so one can
    no longer add bindings to these or remove from these).
  * Rterm handling of multi-byte characters has been improved,
    allowing use of such characters when supported by the current
    locale.
  * Rterm now accepts ALT+ +xxxxxxxx sequences to enter Unicode
    characters as hex digits.
  * Environment variable LC_ALL on Windows now takes precedence over
    LC_CTYPE and variables for other supported categories, matching
    the POSIX behaviour.
  * duplicated() and anyDuplicated() are now optimized for integer
    and real vectors that are known to be sorted via the ALTREP
    framework. Contributed by Gabriel Becker via PR#17993.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 14
    and so packages that provide graphics devices should be
    reinstalled.
  * Graphics devices should now specify deviceVersion to indicate
    what version of the graphics engine they support.
  * Graphics devices can now specify deviceClip.  If TRUE, the
    graphics engine will never perform any clipping of output itself.
    The clipping that the graphics engine does perform (for both
    canClip = TRUE and canClip = FALSE) has been improved to avoid
    producing unnecessary artifacts in clipped output.
  * The grid package now allows gpar(fill) to be a linearGradient(),
    a radialGradient(), or a pattern().  The viewport(clip) can now
    also be a grob, which defines a clipping path, and there is a new
    viewport(mask) that can also be a grob, which defines a mask.
    These new features are only supported so far on the Cairo-based
    graphics devices and on the pdf() device.
  * (Not Windows.)  A warning is given when a Cairo-based type is
    specified for a png(), jpeg(), tiff() or bmp() device but Cairo
    is unsupported (so type = "Xlib" is tried instead).
  * grSoftVersion() now reports the versions of FreeType and
    FontConfig if they are used directly (not _via_ Pango), as is
    most commonly done on macOS.
  C-LEVEL FACILITIES:
  * The _standalone_ libRmath math library and R's C API now provide
    log1pexp() again as documented, and gain log1mexp().
  INSTALLATION on a UNIX-ALIKE:
  * configure checks for a program pkgconf if program pkg-config is
    not found.  These are now only looked for on the path (like
    almost all other programs) so if needed specify a full path to
    the command in PKG_CONFIG, for example in file config.site.
  * C99 function iswblank is required - it was last seen missing ca
    2003 so the workaround has been removed.
  * There are new configure options --with-internal-iswxxxxx,
  - -with-internal-towlower and --with-internal-wcwidth which allows
    the system functions for wide-character classification,
    case-switching and width (wcwidth and wcswidth) to be replaced by
    internal ones.  The first has long been used on macOS, AIX (and
    Windows) but this enables it to be unselected there and selected
    for other platforms (it is the new default on Solaris).  The
    second is new in this version of R and is selected by default on
    macOS and Solaris.  The third has long been the default and
    remains so as it contains customizations for East Asian
    languages.
    System versions of these functions are often minimally
    implemented (sometimes only for ASCII characters) and may not
    cover the full range of Unicode points: for example Solaris (and
    Windows) only cover the Basic Multilingual Plane.
  * Cairo installations without X11 are more likely to be detected by
    configure, when the file-based Cairo graphics devices will be
    available but not X11(type = "cairo").
  * There is a new configure option --with-static-cairo which is the
    default on macOS.  This should be used when only static cairo
    (and where relevant, Pango) libraries are available.
  * Cairo-based graphics devices on platforms without Pango but with
    FreeType/FontConfig will make use of the latter for font
    selection.
  LINK-TIME OPTIMIZATION on a UNIX-ALIKE:
  * Configuring with flag --enable-lto=R now also uses LTO when
    installing the recommended packages.
  * R CMD INSTALL and R CMD SHLIB have a new flag --use-LTO to use
    LTO when compiling code, for use with R configured with
  - -enable-lto=R.  For R configured with --enable-lto, they have
    the new flag --no-use-LTO.
    Packages can opt in or out of LTO compilation _via_ a UseLTO
    field in the DESCRIPTION file.  (As usual this can be overridden
    by the command-line flags.)
  BUILDING R on Windows:
  * for GCC &gt;= 8, FC_LEN_T is defined in config.h and hence character
    lengths are passed from C to Fortran in _inter alia_ BLAS and
    LAPACK calls.
  * There is a new text file src/gnuwin32/README.compilation, which
    outlines how C/Fortran code compilation is organized and
    documents new features:
  * R can be built with Link-Time Optimization with a suitable
    compiler - doing so with GCC 9.2 showed several
    inconsistencies which have been corrected.
  * There is support for cross-compiling the C and Fortran code
    in R and standard packages on suitable (Linux) platforms.
    This is mainly intended to allow developers to test later
    versions of compilers - for example using GCC 9.2 or 10.x has
    detected issues that GCC 8.3 in Rtools40 does not.
  * There is experimental support for cross-building R packages
    with C, C++ and/or Fortran code.
  * The R installer can now be optionally built to support a single
    architecture (only 64-bit or only 32-bit).
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++14 where
    available (which it is on all currently checked platforms): if
    not (as before) C++11 is used if available otherwise C++ is not
    supported.
    Packages which specify C++11 will still be installed using C++11.
    C++14 compilers may give deprecation warnings, most often for
    std::random_shuffle (deprecated in C++14 and removed in C++17).
    Either specify C++11 (see 'Writing R Extensions') or modernize
    the code and if needed specify C++14.  The latter has been
    supported since R 3.4.0 so the package's DESCRIPTION would need
    to include something like
    Depends: R (&gt;= 3.4)
  PACKAGE INSTALLATION on Windows:
  * R CMD INSTALL and R CMD SHLIB make use of their flag --use-LTO
    when the LTO_OPT make macro is set in file etc/${R_ARCH}/Makeconf
    or in a personal/site Makevars file.  (For details see 'Writing R
    Extensions' SS4.5.)
    This provides a valuable check on code consistency.  It does work
    with GCC 8.3 as in Rtools40, but that does not detect everything
    the CRAN checks with current GCC do.
  PACKAGE INSTALLATION on macOS:
  * The default personal library directory on builds with
  - -enable-aqua (including CRAN builds) now differs by CPU type,
    one of
    ~/Library/R/x86_64/x.y/library
    ~/Library/R/arm64/x.y/library
    This uses the CPU type R (and hence the packages) were built for,
    so when a x86_64 build of R is run under Rosetta emulation on an
    arm64 Mac, the first is used.
  UTILITIES:
  * R CMD check can now scan package functions for bogus return
    statements, which were possibly intended as return() calls (wish
    of PR#17180, patch by Sebastian Meyer). This check can be
    activated via the new environment variable
    _R_CHECK_BOGUS_RETURN_, true for --as-cran.
  * R CMD build omits tarballs and binaries of previous builds from
    the top-level package directory.  (PR#17828, patch by Sebastian
    Meyer.)
  * R CMD check now runs sanity checks on the use of LazyData, for
    example that a data directory is present and that
    LazyDataCompression is not specified without LazyData and has a
    documented value.  For packages with large LazyData databases
    without specifying LazyDataCompression, there is a reference to
    the code given in 'Writing R Extensions' SS1.1.6 to test the
    choice of compression (as in all the CRAN packages tested a
    non-default method was preferred).
  * R CMD build removes LazyData and LazyDataCompression fields from
    the DESCRIPTION file of packages without a data directory.
  ENCODING-RELATED CHANGES:
  * The parser now treats \Unnnnnnnn escapes larger than the upper
    limit for Unicode points (\U10FFFF) as an error as they cannot be
    represented by valid UTF-8.
    Where such escapes are used for outputting non-printable
    (including unassigned) characters, 6 hex digits are used (rather
    than 8 with leading zeros).  For clarity, braces are used, for
    example \U{0effff}.
  * The parser now looks for non-ASCII spaces on Solaris (as
    previously on most other OSes).
  * There are warnings (including from the parser) on the use of
    unpaired surrogate Unicode points such as \uD834.  (These cannot
    be converted to valid UTF-8.)
  * Functions nchar(), tolower(), toupper() and chartr() and those
    using regular expressions have more support for inputs with a
    marked Latin-1 encoding.
  * The character-classification functions used (by default) to
    replace the system iswxxxxx functions on Windows, macOS and AIX
    have been updated to Unicode 13.0.0.
    The character-width tables have been updated to include new
    assignments in Unicode 13.0.0.
  * The code for evaluating default (extended) regular expressions
    now uses the same character-classification functions as the rest
    of R (previously they differed on Windows, macOS and AIX).
  * There is a build-time option to replace the system's
    wide-character wctrans C function by tables shipped with R: use
    configure option --with-internal-towlower or (on Windows)
  - DUSE_RI18N_CASE in CFLAGS when building R.  This may be needed
    to allow tolower() and toupper() to work with Unicode characters
    beyond the Basic Multilingual Plane where not supported by system
    functions (e.g. on Solaris where it is the new default).
  * R is more careful when truncating UTF-8 and other multi-byte
    strings that are too long to be printed, passed to the system or
    libraries or placed into an internal buffer.  Truncation will no
    longer produce incomplete multibyte characters.
  DEPRECATED AND DEFUNCT:
  * Function plclust() from the package stats and
    package.dependencies(), pkgDepends(), getDepList(),
    installFoundDepends(), and vignetteDepends() from package tools
    are defunct.
  * Defunct functions checkNEWS() and readNEWS() from package tools
    and CRAN.packages() from utils have been removed.
  * R CMD config CXXCPP is defunct (it was deprecated in R 3.6.2).
  * parallel::detectCores() drops support for Irix (retired in 2013).
  * The LINPACK argument to chol.default(), chol2inv(),
    solve.default() and svd() has been defunct since R 3.1.0.  It was
    silently ignored up to R 4.0.3 but now gives an error.
  * Subsetting/indexing, such as ddd[*] or ddd$x on a DOTSXP
    (dot-dot-dot) object ddd has been disabled; it worked by accident
    only and was undocumented.
  BUG FIXES:
  * Many more C-level allocations (mainly by malloc and strdup) are
    checked for success with suitable alternative actions.
  * Bug fix for replayPlot(); this was turning off graphics engine
    display list recording if a recorded plot was replayed in the
    same session.  The impact of the bug became visible if resize the
    device after replay OR if attempted another savePlot() after
    replay (empty display list means empty screen on resize or empty
    saved plot).
  * R CMD check etc now warn when a package exports non-existing S4
    classes or methods, also in case of no "methods" presence.
    (Reported by Alex Bertram; reproducible example and patch by
    Sebastian Meyer in PR#16662.)
  * boxplot() now also accepts calls for labels such as ylab, the
    same as plot().  (Reported by Marius Hofert.)
  * The help page for xtabs() now correctly states that addNA is
    setting na.action = na.pass among others.  (Reported as PR#17770
    by Thomas Soeiro.)
  * The R CMD check &lt;pkg&gt; gives a longer and more comprehensible
    message when DESCRIPTION misses dependencies, e.g., in Imports:.
    (Thanks to the contributors of PR#17179.)
  * update.default() now calls the generic update() on the formula to
    work correctly for models with extended formulas.  (As reported
    and suggested by Neal Fultz in PR#17865.)
  * The horizontal position of leaves in a dendrogram is now correct
    also with center = FALSE.  (PR#14938, patch from Sebastian
    Meyer.)
  * all.equal.POSIXt() no longer warns about and subsequently ignores
    inconsistent "tzone" attributes, but describes the difference in
    its return value (PR#17277).  This check can be disabled _via_
    the new argument check.tzone = FALSE as suggested by Sebastian
    Meyer.
  * as.POSIXct() now populates the "tzone" attribute from its tz
    argument when x is a logical vector consisting entirely of NA
    values.
  * x[[2^31]] &lt;- v now works.  (Thanks to the report and patch by
    Suharto Anggono in PR#17330.)
  * In log-scale graphics, axis() ticks and label positions are now
    computed more carefully and symmetrically in their range,
    typically providing _more_ ticks, fulfilling wishes in PR#17936.
    The change really corresponds to an improved axisTicks() (package
    grDevices), potentially influencing grid and lattice, for
    example.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now correct to at
    least five digits where it was catastrophically wrong,
    previously.
  * sum(df) and similar "Summary"- and "Math"-group member functions
    now work for data frames df with logical columns, notably also of
    zero rows.  (Reported to R-devel by Martin "b706".)
  * unsplit() had trouble with tibbles due to unsound use of rep(NA,
    len)-indexing, which should use NA_integer_ (Reported to R-devel
    by Mario Annau.)
  * pnorm(x, log.p = TRUE) underflows to -Inf slightly later.
  * show(&lt;hidden S4 generic&gt;) prints better and without quotes for
    non-hidden S4 generics.
  * read.table() and relatives treated an "NA" column name as missing
    when check.names = FALSE PR#18007.
  * Parsing strings containing UTF-16 surrogate pairs such as
    "\uD834\uDD1E" works better on some (uncommon) platforms.
    sprintf("%X", utf8ToInt("\uD834\uDD1E")) should now give "1D11E"
    on all platforms.
  * identical(x,y) is no longer true for differing DOTSXP objects,
    fixing PR#18032.
  * str() now works correctly for DOTSXP and related exotics, even
    when these are doomed.
    Additionally, it no longer fails for lists with a class and
    "irregular" method definitions such that e.g. lapply(*) will
    necessarily fail, as currently for different igraph objects.
  * Too long lines in environment files (e.g. Renviron) no longer
    crash R. This limit has been increased to 100,000 bytes.
    (PR#18001.)
  * There is a further workaround for FreeType giving incorrect
    italic font faces with cairo-based graphics devices on macOS.
  * add_datalist(*, force = TRUE) (from package tools) now actually
    updates an existing data/datalist file for new content.  (Thanks
    to a report and patch by Sebastian Meyer in PR#18048.)
  * cut.Date() and cut.POSIXt() could produce an empty last interval
    for breaks = "months" or breaks = "years".  (Reported as PR#18053
    by Christopher Carbone.)
  * Detection of the encoding of 'regular' macOS locales such as
    en_US (which is UTF-8) had been broken by a macOS change:
    fortunately these are now rarely used with en_US.UTF-8 being
    preferred.
  * sub() and gsub(pattern, repl, x, *) now keep attributes of x such
    as names() also when pattern is NA (PR#18079).
  * Time differences ("difftime" objects) get a replacement and a
    rep() method to keep "units" consistent.  (Thanks to a report and
    patch by Nicolas Bennett in PR#18066.)
  * The \RdOpts macro, setting defaults for \Sexpr options in an Rd
    file, had been ineffective since R 2.12.0: it now works again.
    (Thanks to a report and patch by Sebastian Meyer in PR#18073.)
  * mclapply and pvec no longer accidentally terminate parallel
    processes started before by mcparallel or related calls in
    package parallel (PR#18078).
  * grep and other functions for evaluating (extended) regular
    expressions handle in Unicode also strings not explicitly flagged
    UTF-8, but flagged native when running in UTF-8 locale.
  * Fixed a crash in fifo implementation on Windows (PR#18031).
  * Binary mode in fifo on Windows is now properly detected from
    argument open (PR#15600, PR#18031).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1622808000">- The line %{__install} -m 755 -d %{_infodir}
  no longer works in TW or Factory.
  But without that line it works everywhere. So this instruction
  was commented out of the spec file.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1628596800">- CHANGES IN R 4.1.1:
  NEW FEATURES:
  * require(pkg, quietly = TRUE) is quieter and in particular does
    not warn if the package is not found.
  DEPRECATED AND DEFUNCT:
  * Use of ftp:// URIs should be regarded as deprecated, with
    on-going support confined to method = "libcurl" and not routinely
    tested.  (Nowadays no major browser supports them.)
  * The non-default method = "internal" is deprecated for http:// and
    ftp:// URIs for both download.file and url.
  * On Windows, method = "wininet" is deprecated for http://,
    https:// and ftp:// URIs for both download.file and url.  (A
    warning is only given for ftp://.)
    For ftp:// URIs the default method is now "libcurl" if available
    (which it is on CRAN builds).
    method = "wininet" remains the default for http:// and https://
    URIs but if libcurl is available, using method = "libcurl" is
    preferred.
  INSTALLATION:
  * make check now works also without a LaTeX installation.  (Thanks
    to Sebastian Meyer's PR#18103.)
  BUG FIXES:
  * make check-devel works again in an R build configured with
  - -without-recommended-packages.
  * qnbinom(p, size, mu) for large size/mu is correct now in a range
    of cases (PR#18095); similarly for the (size, prob)
    parametrization of the negative binomial.  Also qpois() and
    qbinom() are better and or faster for extreme cases.  The
    underlying C code has been modularized and is common to all four
    cases of discrete distributions.
  * gap.axis is now part of the axis() arguments which are passed
    from bxp(), and hence boxplot().  (Thanks to Martin Smith's
    report and suggestions in PR#18109.)
  * .First and .Last can again be set from the site profile.
  * seq.int(from, to, *) and seq.default(..) now work better in large
    range cases where from-to is infinite where the two boundaries
    are finite.
  * all.equal(x,y) now returns TRUE correctly also when several
    entries of abs(x) and abs(y) are close to .Machine$double.xmax,
    the largest finite numeric.
  * model.frame() now clears the object bit when removing the class
    attribute of a value via na.action (PR#18100).
  * charClass() now works with multi-character strings on Windows
    (PR#18104, fixed by Bill Dunlap).
  * encodeString() on Solaris now works again in Latin-1 encoding on
    characters represented differently in UTF-8.  Support for
    surrogate pairs on Solaris has been improved.
  * file.show() on Windows now works with non-ASCII path names
    representable in the current native encoding (PR#18132).
  * Embedded R on Windows can now find R home directory via the
    registry even when installed only for the current user
    (PR#18135).
  * pretty(x) with finite x now returns finite values also in the
    case where the extreme x values are close in size to the maximal
    representable number .Machine$double.xmax.
    Also, it's been tweaked for very small ranges and when a boundary
    is close (or equal) to zero; e.g., pretty(c(0,1e-317)) no longer
    has negative numbers, currently still warning about a very small
    range, and pretty(2^-(1024 - 2^-1/(c(24,10)))) is more accurate.
  * The error message for not finding vignette files when weaving has
    correct file sizes now. (Thanks to Sebastian Meyer's PR#18154.)
  * dnbinom(20, &lt;large&gt;, 1) now correctly gives 0, and similar cases
    are more accurate with underflow precaution.  (Reported by Francisco Vera Alcivar in PR#18072.)</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635163200">- repaired https://bugzilla.suse.com/show_bug.cgi?id=1191380
  (rpmacros now go to rpmmacrodir)
- minor clean-ups in spec file</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635768000">- CHANGES IN R 4.1.2:
  C-LEVEL FACILITIES:
  * The workaround in headers R.h and Rmath.h (using namespace std;)
    for the Oracle Developer Studio compiler is no longer needed now
    C++11 is required so has been removed.  A couple more usages of
    log() (which should have been std::log()) with an int argument
    are reported on Solaris.
  * The undocumented limit of 4095 bytes on messages from the
    S-compatibility macros PROBLEM and MESSAGE is now documented and
    longer messages will be silently truncated rather than
    potentially causing segfaults.
  * If the R_NO_SEGV_HANDLER environment variable is non-empty, the
    signal handler for SEGV/ILL/BUS signals (which offers recovery
    user interface) is not set. This allows more reliable debugging
    of crashes that involve the console.
  DEPRECATED AND DEFUNCT:
  * The legacy S-compatibility macros PROBLEM, MESSAGE, ERROR, WARN,
    WARNING, RECOVER, ... are deprecated and will be hidden in R
    4.2.0. R's native interface of Rf_error and Rf_warning has long
    been preferred.
  BUG FIXES:
  * .mapply(F, dots, .) no longer segfaults when dots is not a list
    and uses match.fun(F) as always documented; reported by Andrew
    Simmons in PR#18164.
  * hist(&lt;Date&gt;, ...) and hist(&lt;POSIXt&gt;, ...)  no longer pass
    arguments for rect() (such as col and density) to axis().
    (Thanks to Sebastian Meyer's PR#18171.)
  * \Sexpr{ch} now preserves Encoding(ch). (Thanks to report and
    patch by Jeroen Ooms in PR#18152.)
  * Setting the RNG to "Marsaglia-Multicarry" e.g., by RNGkind(), now
    warns in more places, thanks to Andr'e Gillibert's report and
    patch in PR#18168.
  * gray(numeric(), alpha=1/2) no longer segfaults, fixing PR#18183,
    reported by Till Krenz.
  * Fixed dnbinom(x, size=&lt;very_small&gt;, .., log=TRUE) regression,
    reported by Martin Morgan.
  * as.Date.POSIXlt(x) now keeps names(x), thanks to Davis Vaughan's
    report and patch in PR#18188.
  * model.response() now strips an "AsIs" class typically, thanks to
    Duncan Murdoch's report and other discussants in PR#18190.
  * try() is considerably faster in case of an error and long call,
    as e.g., from some do.call().  Thanks to Alexander Kaever's
    suggestion posted to R-devel.
  * qqline(y = &lt;object&gt;) such as y=I(.), now works, see also
    PR#18190.
  * Non-integer mgp par() settings are now handled correctly in
    axis() and mtext(), thanks to Mikael Jagan and Duncan Murdoch's
    report and suggestion in PR#18194.
  * formatC(x) returns length zero character() now, rather than ""
    when x is of length zero, as documented, thanks to Davis
    Vaughan's post to R-devel.
  * removeSource(fn) now retains (other) attributes(fn).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1647000000">- CHANGES IN R 4.1.3:
  NEW FEATURES:
  * The default version of Bioconductor has been changed to 3.14.
    (This is used by setRepositories and the menus in GUIs.)
  UTILITIES:
  * R CMD check --as-cran has a workaround for a bug in versions of
    file up to at least 5.41 which mis-identify DBF files last
    changed in 2022 as executables.
  C-LEVEL FACILITIES:
  * The legacy S-compatibility macros SINGLE_* in R_ext/Constants.h
    (included by R.h) are deprecated and will be removed in R 4.2.0.
  BUG FIXES:
  * Initialization of self-starting nls() models with initialization
    functions following the pre-R-4.1.0 API (without the ...
    argument) works again for now, with a deprecation warning.
  * Fixed quoting of ~autodetect~ in Java setting defaults to avoid
    inadvertent user lookup due to leading ~, reported in PR#18231 by
    Harold Gutch.
  * substr(., start, stop) &lt;- v now treats _negative_ stop values
    correctly.  Reported with a patch in PR#18228 by Brodie Gaslam.
  * Subscripting an array x without dimnames by a
    length(dim(x))-column character matrix gave "random" non-sense,
    now an error; reported in PR#18244 by Mikael Jagan.
  * ...names() now matches names(list(...)) closely, fixing PR#18247.
  * all.equal(*, scale = s) now works as intended when length(s) &gt; 1,
    partly thanks to Michael Chirico's PR#18272.
  * print(x) for long vectors x now also works for named atomic
    vectors or lists and prints the correct number when reaching the
    getOption("max.print") limit; partly thanks to a report and
    proposal by Hugh Parsonage to the R-devel list.
  * all.equal(&lt;selfStart&gt;, *) no longer signals a deprecation
    warning.
  * reformulate(*, response=r) gives a helpful error message now when
    length(r) &gt; 1, thanks to Bill Dunlap's PR#18281.
  * Modifying globalCallingHandlers inside withCallingHandlers() now
    works or fails correctly, thanks to Henrik Bengtsson's PR#18257.
  * hist(&lt;Date&gt;, breaks = "days") and hist(&lt;POSIXt&gt;, breaks = "secs")
    no longer fail for inputs of length 1.
  * qbeta(.001, .9, .009) and similar cases now converge correctly
    thanks to Ben Bolker's report in PR#17746.
  * window(x, start, end) no longer wrongly signals "'start' cannot
    be after 'end'", fixing PR#17527 and PR#18291.
  * data() now checks that its (rarely used) list argument is a
    character vector - a couple of packages passed other types and
    gave incorrect results.
  * which() now checks its arr.ind argument is TRUE rather coercing
    to logical and taking the first element - which gave incorrect
    results in package code.
  * model.weights() and model.offset() more carefully extract their
    model components, thanks to Ben Bolker and Tim Taylor's R-devel
    post.
  * list.files(recursive = TRUE) now shows all broken symlinks
    (previously, some of them may have been omitted, PR#18296).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1650628800">- CHANGES IN R 4.2.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * The formula method of aggregate() now matches the generic in
    naming its first argument x (resolving PR#18299 by Thomas
    Soeiro).
    This means that calling aggregate() with a formula as a named
    first argument requires name formula in earlier versions of R and
    name x now, so portable code should not name the argument (code
    in many packages did).
  * Calling &amp;&amp; or || with either argument of length greater than one
    now gives a warning (which it is intended will become an error).
  * Calling if() or while() with a condition of length greater than
    one gives an error rather than a warning.  Consequently,
    environment variable _R_CHECK_LENGTH_1_CONDITION_ no longer has
    any effect.
  * Windows users should consult the WINDOWS section below for some
    profound changes including
  * Support for 32-bit builds has been dropped.
  * UTF-8 locales are used where available.
  * The default locations for the R installation and personal
    library folder have been changed.
    Thanks to Tomas Kalibera for months of work on the Windows port
    for this release.
  NEW FEATURES:
  * matrix(x, n, m) now warns in more cases where length(x) differs
    from n * m, as suggested by Abby Spurdle and Wolfgang Huber in
    Feb 2021 on the R-devel mailing list.
    This warning can be turned into an error by setting environment
    variable _R_CHECK_MATRIX_DATA_ to TRUE: R CMD check --as-cran
    does so unless it is already set.
  * Function file_test() in package utils gains tests for symlinks,
    readability and writability.
  * capabilities("libxml") is now false.
    The description of capabilities("http/ftp") now reflects that it
    refers to the default method, no longer the internal one.
  * simplify2array() gains an except argument for controlling the
    exceptions used by sapply().
  * Environment variables R_LIBS_USER and R_LIBS_SITE are both now
    set to the R system default if unset or empty, and can be set to
    NULL to indicate an empty list of user or site library
    directories.
  * The warning for axis()(-like) calls in cases of relatively small
    ranges (typically in log-scale situations) is slightly improved
    _and_ suppressed from explicit calls to .axisPars() as has always
    been the intention.
  * The contrasts setter function `contrasts&lt;-` gains an explicit
    default how.many = NULL rather than just using missing(how.many).
  * grid.pretty() gains a new optional argument n = 5.
  * There is a new function .pretty() with option bounds as a
    technical-utility version of pretty().  It and pretty() gain a
    new argument f.min with a better than back-compatible default.
  * Function grDevices::axisTicks() and related functions such as
    graphics::axis() work better, notably for the log scale; partly
    because of the pretty() improvements, but also because care is
    taken e.g., when ylim is finite but diff(ylim) is infinite.
  * nclass.FD() gains a digits option.
  * The R Mathlib internal C function bd0() (called indirectly from a
    dozen probability density and distribution functions such as
    dpois(), dbinom(), dgamma(), pgamma() _etc_) has been
    complemented by a more sophisticated and (mostly) more accurate C
    function ebd0(), currently called only by internal dpois_raw()
    improving accuracy for R level dpois() and potentially others
    calling it such as dnbinom(), dgamma() or pgamma().  (Thanks to
    Morten Welinder's PR#15628.)
  * write.ftable() gains sep = " " argument as suggested by Thomas
    Soeiro.
  * The names of the locale categories supported by R's
    Sys.getlocale() and Sys.setlocale() are now provided by variable
    .LC.categories in the base namespace.
  * The Date and POSIXt methods for hist() and the histogram method
    for plot() now also use the new default col = "lightgray" in
    consistency with the corresponding change to hist()'s default for
    R 4.0.0.
  * hist.default() gains new fuzz argument, and the histogram plot
    method no longer uses fractional axis ticks when displaying
    counts ("Frequency").
  * mapply() and hence Map() now also obey the "max-or-0-if-any"
    recycling rule, such that, e.g., Map(`+`, 1:3, 1[0]) is valid
    now.
  * as.character(&lt;obj&gt;) for "hexmode" or "octmode" objects now
    fulfils the important basic rule as.character(x)[j] ===
    as.character(x[j]).
  * The set utility functions, notably intersect() have been tweaked
    to be more consistent and symmetric in their two set arguments,
    also preserving a common mode.
  * substr(ch, start,end) &lt;- new now e.g., preserves names(ch); ditto
    for substring(), thanks to a patch from Brodie Gaslam.
  * plot(&lt;lm&gt;) gains a extend.ylim.f argument, in partial response to
    PR#15285; further PR#17784 is fixed thanks to several
    contributors and a patch by Elin Waring.  The Cook's dist
    contours get customizable via cook.col and cook.lty with a
    different default color and their legend is nicer by default and
    customizable via cook.legendChanges.
  * Attempting to subset an object that is not subsettable now
    signals an error of class notSubsettableError. The
    non-subsettable object is contained in the object field of the
    error condition.
  * Subscript-out-of-bounds errors are now signaled as errors of
    class subscriptOutOfBoundsError.
  * Stack-overflow errors are now signaled as errors inheriting from
    class stackOverflowError. See ?stackOverflowError for more
    details.
  * New partly experimental Sys.setLanguage() utility, solving the
    main problem of PR#18055.
  * gettext() and gettextf() get a new option trim = TRUE which when
    set to false allows translations for strings such as "Execution
    halted\n" typical for C code.
  * An experimental implementation of hash tables is now available.
    See ?hashtab for more details.
  * identical() gains a extptr.as.ref argument for requesting that
    external pointer objects be compared as reference objects.
  * reorder() gets an argument decreasing which it passes to sort()
    for level creation; based on the wish and patch by Thomas Soeiro
    in PR#18243.
  * as.vector() gains a data.frame method which returns a simple
    named list, also clearing a long standing 'FIXME' to enable
    as.vector(&lt;data.frame&gt;, mode="list").  This breaks code relying
    on as.vector(&lt;data.frame&gt;) to return the unchanged data frame.
  * legend() is now vectorized for arguments cex, x.intersp, and
    text.width.  The latter can now also be specified as a vector
    (one element for each column of the legend) or as NA for
    computing a proper column wise maximum value of strwidth(legend).
    The argument y.intersp can be specified as a vector with one
    entry for each row of the legend.
    legend() also gains new arguments title.cex and title.font.
    Thanks to Swetlana Herbrandt.
  * Deparsing no longer remaps attribute names dim, dimnames, levels,
    names and tsp to historical S-compatible names (which structure()
    maps back).
  * sample() and sample.int() have additional sanity checks on their
    size and n arguments.
    all.equal.numeric() gains a sanity check on its tolerance
    argument - calling all.equal(a, b, c) for three numeric vectors
    is a surprisingly common error.
    mean(na.rm =), rank(na.last =), barplot(legend.text =),
    boxplot(), contour(drawlabels =), polygon(border =) and
    methods::is(class2 =) have more robust sanity checks on their
    arguments.
    R CMD Rd2pdf (used by R CMD check) has a more robust sanity check
    on the format of \alias{} commands.
  * psigamma(x, deriv) for negative x now also works for deriv = 4
    and 5; their underlying C level dpsifn() is documented in
    'Writing R Extensions'.
  * The HTML help system now uses HTML5 (wish of PR#18149).
  * ks.test() now provides exact p-values also with ties and MC
    p-values in the two-sample (Smirnov) case.  By Torsten Hothorn.
  * ks.test() gains a formula interface, with y ~ 1 for the
    one-sample (Kolmogorov) test and y ~ group for the two-sample
    (Smirnov) test.  Contributed by Torsten Hothorn.
  * The return value from ks.test() now has class c("ks.test",
    "htest") - packages using try() need to take care to use
    inherits() and not == on the class.
  * New functions psmirnov(), qsmirnov() and rsmirnov() in package
    stats implementing the asymptotic and exact distributions of the
    two-sample Smirnov statistic.
  * iconv() now allows sub = "c99" to use C99-style escapes for UTF-8
    inputs which cannot be converted to encoding to.
  * In a forward pipe |&gt; expression it is now possible to use a named
    argument with the placeholder _ in the rhs call to specify where
    the lhs is to be inserted.  The placeholder can only appear once
    on the rhs.
  * The included LAPACK sources have been updated to version 3.10.0,
    except for the four Fortran 77 routines which 3.10.0 has
    re-implemented in Fortran 90 (where the older versions have been
    retained as the R build process does not support Fortran 90).
  * path.expand() and most other uses of tilde expansion now warn if
    a path would be too long if expanded.  (An exception is
    file.exists(), which silently returns false.)
  * trunc(&lt;Date&gt;, *) now supports units = "months" or "years" for
    consistency with the POSIXt method, thanks to Dirk Eddelbuettel's
    proposal in PR#18099.
  * list2DF() now checks that its arguments are of the same length,
    rather than use recycling.
  * The HTML help system has several new features: LaTeX-like math
    can be typeset using either KaTeX or MathJax, usage and example
    code is highlighted using Prism, and for dynamic help the output
    of examples and demos can be shown within the browser if the
    knitr package is installed. These features can be disabled by
    setting the environment variable _R_HELP_ENABLE_ENHANCED_HTML_ to
    a false value.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 15
    and so packages that provide graphics devices should be
    reinstalled.
  * The grid package now allows the user to specify a "vector" of
    pattern fills.  The fill argument to gpar() accepts a list of
    gradients and/or patterns and the functions linearGradient(),
    radialGradient(), and pattern() have a new group argument.
    Points grobs (data symbols) can now also have a pattern fill.
    The grobCoords() function now returns a more informative and
    complex result.
  * The grid package has new functions for drawing isolated groups:
    grid.group(), grid.define(), and grid.use().  These functions add
    compositing operators and affine transformations to R's graphics
    capabilities.
    The grid package also has new functions for stroking and filling
    paths: grid.stroke(), grid.fill(), and grid.fillStroke().
    A new function as.path() allows the user to specify the fill rule
    for a path that is to be used for clipping, stroking, or filling;
    available options are "winding" and "evenodd".  A new function
    as.mask() allows the user to specify the type of a mask;
    available options are "alpha" and "luminance".
    These new features are only supported so far (at most) on the
    Cairo-based graphics devices and on the pdf() device.
  * dev.capabilities() reports on device support for the new
    features.
  * par() now warns about unnamed non-character arguments to prevent
    misuse such as {usr &lt;- par("usr"); par(usr)}.
  INSTALLATION:
  * Facilities for accessing ftp:// sites are no longer tested
    (except _pro tem_ for curlGetHeaders()) as modern browsers have
    removed support.
  * R can now be built with DEFS = -DSTRICT_R_HEADERS .
  PACKAGE INSTALLATION:
  * R CMD INSTALL no longer tangles vignettes. This completes an R
    CMD build change in R 3.0.0 and affects packages built before R
    3.0.2. Such packages should be re-made with R CMD build to have
    the tangled R code of vignettes shipped with the tarball.
  * USE_FC_LEN_T will become the default: this uses the correct
    prototypes for Fortran BLAS/LAPACK routines called from C/C++,
    and requires adjustment of most such calls - see 'Writing R
    Extensions' SS6.6.2.  (This has been supported since R 3.6.2.)
  * Package installation speed for packages installed with
    keep.source has been improved. This resolve the issue reported by
    Ofek Shilon in PR#18236.
  UTILITIES:
  * R CMD check can optionally report files/directories left behind
    in home, /tmp (even though TMPDIR is set) and other directories.
    See the "R Internals" manual for details.
  * R CMD check now reports byte-compilation errors during
    installation.  These are not usually fatal but may result in
    parts of the package not being byte-compiled.
  * _R_CHECK_DEPENDS_ONLY_ can be applied selectively to examples,
    tests and/or vignettes in R CMD check: see the "R Internals"
    manual.
  * _R_CHECK_SRC_MINUS_W_IMPLICIT_ now defaults to true: recent
    versions of Apple clang on macOS have made implicit function
    declarations in C into a compilation error.
  * R CMD check --as-cran makes use of the environment variable
    AUTORECONF.  See the "R Internals" manual SS8 for further details.
  * R CMD check --use-valgrind also uses valgrind when re-building
    vignettes as some non-Sweave vignettes unhelpfully comment out
    all their code when R CMD check runs vignettes.
  * Errors in re-building vignettes (unless there are LaTeX errors)
    are reported by R CMD check as ERROR rather than WARNING when
    running vignettes has been skipped (as it frequently is in CRAN
    checks and by --as-cran).
  * R CMD Rd2pdf gains a --quiet option that is used by R CMD build
    when building the PDF package manual.
  * R CMD Rd2pdf now always runs LaTeX in batch mode, consistent with
    Texinfo &gt;= 6.7. The --batch option is ignored.
  * R CMD build and R CMD check now include the Rd file name and line
    numbers in the error message of an \Sexpr evaluation failure.
  * For packages using the \doi Rd macro (now an install-time \Sexpr)
    but no other dynamic Rd content, R CMD build now produces a
    smaller tarball and is considerably faster - skipping temporary
    package installation.
  C-LEVEL FACILITIES:
  * The non-API header R_ext/R-ftp-http.h is no longer provided, as
    the entry points it covered are now all defunct.
  * A number of non-API declarations and macro definitions have been
    moved from the installed header Rinternals.h to the internal
    header Defn.h. Packages that only use entry points and
    definitions documented to be part of the API as specified in
    'Writing R Extensions' SS6 should not be affected.
  * The macro USE_RINTERNALS no longer has any effect when compiling
    package code.  Packages which also use R_NO_REMAP will need to
    ensure that the remapped names are used for calls to API
    functions that were formerly also made available as macros.
  * The deprecated legacy S-compatibility macros PROBLEM, MESSAGE,
    ERROR, WARN, WARNING, RECOVER, ... are no longer defined in
    R_exts/RS.h (included by R.h).  Replace these by calls to
    Rf_error and Rf_warning (defined in header R_ext/Error.h included
    by R.h).
    Header R_ext/RS.h no longer includes R_ext/Error.h.
  * Header R_ext/Constants.h (included by R.h) when included from C++
    now includes the C++ header cfloat rather than the C header
    float.h (now possible as C++11 is required).
  * The legacy S-compatibility macros DOUBLE_* in R_ext/Constants.h
    (included by R.h) are deprecated.
  * The deprecated S-compatibility macros SINGLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * R_Calloc, R_Free and R_Realloc are preferred to their unprefixed
    forms and error messages now use the prefix. These forms were
    introduced in R 3.4.0 and are available even when
    STRICT_R_HEADERS is defined.
  * rmultinom has been documented in 'Writing R Extensions' SS6 so is
    now part of the R API.
  * Similarly, Rtanpi, called from R level tanpi() is now part of the
    R API.
  * The long-deprecated, undocumented and non-API entry point call_R
    is no longer declared in R_ext/RS.h (included by R.h).
  * The header S.h which has been unsupported since Jan 2016 has been
    removed.  Use R.h instead.
  DEPRECATED AND DEFUNCT:
  * The (non-default and deprecated) method = "internal" for
    download.file() and url() no longer supports http:// nor ftp://
    URIs.  (It is used only for file:// URIs.)
    On Windows, download.file(method = "wininet") no longer supports
    ftp:// URIs.  (It is no longer the default method, which is
    "libcurl" and does.)
    On Windows, the deprecated method = "wininet" now gives a warning
    for http:// and https:// URIs for both download.file() and url().
    (It is no longer the default method.)
  * On Windows, the command-line option --max-mem-size and
    environment variable R_MAX_MEM_SIZE are defunct.  The memory
    allocation limit was important for 32-bit builds, but these are
    no longer supported.
  * default.stringsAsFactors() is now formally deprecated, where that
    was only mentioned on its regular help page, previously.  So it
    now gives a warning if called.
  * unix.time() is defunct now; it had been deprecated since R 3.4.0.
  BUG FIXES:
  * Setting digits = 0 in format(), print.default() (and hence
    typically print()) or options() is again invalid.  Its behaviour
    was platform-dependent, and it is unclear what "zero significant
    digits" should mean (PR#18098).
  * Messages from C code in the cairo section of package grDevices
    are now also offered for translation, thanks to Michael Chirico's
    PR#18123.
  * mean(x) with finite x now is finite also without "long.double"
    capability.
  * R CMD Rd2pdf no longer leaves an empty build directory behind
    when it aborts due to an already existing output file.  (Thanks
    to Sebastian Meyer's PR#18141.)
  * density(x, weights = w, na.rm = TRUE) when anyNA(x) is true, now
    removes weights "in parallel" to x, fixing PR#18151, reported by
    Matthias Gondan.  Additionally, it gets a subdensity option.
  * Conversion of \Sexpr[]{&lt;expR&gt;} to LaTeX or HTML no longer
    produces long blocks of empty lines when &lt;expR&gt; itself contains
    several lines all producing empty output.  Thanks to a report and
    patch by Ivan Krylov posted to R-devel.
  * R CMD build no longer fails if a package vignette uses child
    documents and inst/doc exists.  (Thanks to Sebastian Meyer's
    PR#18156.)
  * When an R documentation ('help' source) file man/foo.Rd in a
    package has \donttest{..} examples with a syntax error, it is now
    signalled as ERROR and with correct line numbers relating to the
  * -Ex.R file, thanks to Duncan Murdoch and Sebastian Meyer's
    reports and patch proposals in PR#17501.
  * Improved determination of the correct translation domain in
    non-base packages, addressing the combination of PR#18092 and
    PR#17998 (#c6) with reports and _augmented_ patch #2904 by
    Suharto Anggono.
    Note that "R-base" is no longer the default domain e.g., for
    top-level calls to gettext(); rather translation needs explicit
    domain = * specification in such cases.
  * identical(attrib.as.set=FALSE) now works correctly with data
    frames with default row names (Thanks to Charlie Gao's PR#18179).
  * txtProgressBar() now enforces a non-zero width for argument char,
    without which no progress can be visible.
  * dimnames(table(d)) is more consistent in the case where d is a
    list with a single component, thanks to Thomas Soeiro's report to
    R-devel.
    Further, table(d1, d2) now gives an error when d1 and d2 are data
    frames as suggested by Thomas in PR#18224.
  * Fix for drawing semi-transparent lines and fills on the native
    Windows graphics device (PR#18219 and PR#16694).  Thanks to Nick
    Ray for helpful diagnosis on Bugzilla.
  * The deparser now wraps sub-expressions such as if(A) ..  with
    parentheses when needed; thanks to Duncan Murdoch's PR#18232 and
    Lionel Henry's patches there.
  * remove.packages() no longer tries to uninstall Priority: base
    packages, thanks to a report and suggestions by Colin Fay in
    PR#18227.
  * win.metafile() now has xpinch and ypinch arguments so that the
    user can override Windows' (potentially wrong) guess at device
    dimensions.
  * x[i] and x[[i]] for non-integer i should now behave in all cases
    as always documented: the index used is equivalent to
    as.integer(i) unless that would overflow where trunc(i) is used
    instead; thanks to Suharto Anggono's report and patch proposals
    in PR#17977.
  * asOneSidedFormula() now associates the resulting formula with the
    global environment rather than the evaluation environment created
    for the call.
  * &lt;bibentry&gt;$name now matches the field name case-insensitively,
    consistent with bibentry() creation and the replacement method.
  * cbind() failed to detect some length mismatches with a mixture of
    time-series and non-time-series inputs.
  * The default LaTeX style file Sweave.sty used by the RweaveLatex
    driver no longer loads the obsolete ae package; thanks to a
    report by Thomas Soeiro in PR#18271.  Furthermore, it now skips
    \usepackage[T1]{fontenc} for engines other than pdfTeX (if
    detected) or if the new [nofontenc] option is used.
  * smooth.spline() now stores its logical cv argument more safely,
    fixing a rare bug when printing, and also stores n.
  * smooth.spline(x,y,*) now computes the cv.crit statistic
    correctly, also when is.unsorted(x), fixing PR#18294.
  * The data.frame method of rbind() now warns when binding
    not-wholly-recycling vectors, by analogy to the default method
    (for matrices).
  * setAs() finds the correct class for name to when multiple
    packages define a class with that name. Thanks to Gabor Csardi
    for the report.
  * Fix for detaching a package when two classes of the same name are
    present in method signatures for the same generic. Thanks to
    Gabor Csardi for the report.
  * match.arg("", c("", "a", "B")) gives a better error message, in
    part from PR#17959, thanks to Elin Waring.
  * R CMD Sweave --clean no longer removes pre-existing files or
    subdirectories (PR#18242).
  * The quartz() device no longer splits polylines into subpaths.
    That has caused narrowly-spaced lines with many points to always
    look solid even when dashed line type was used due to dash phase
    restarts.
  * Deparsing constructs such as quote(1 + `!`(2) + 3) works again as
    before R 3.5.0, thanks to the report and patch in PR#18284 by
    Suharto Anggono.
  * as.list(f) for a factor f now keeps names(f), fixing PR#18309.
  * qbeta(.001, .9, .009) and analogous qf() calls now return a
    correct value instead of NaN or wrongly 1, all with a warning;
    thanks to the report by Ludger Goeminne in PR#18302.
  * plot.lm() failed to produce the plot of residuals vs.  factor
    levels (i.e., which=5 when leverages are constant) for models
    with character predictors (PR#17840).
  * interaction.plot(..., xtick = TRUE) misplaced the x-axis line
    (PR#18305).
  * Not strictly fixing a bug, format()ing and print()ing of
    non-finite Date and POSIXt values NaN and +/-Inf no longer show
    as NA but the respective string, e.g., Inf, for consistency with
    numeric vector's behaviour, fulfilling the wish of PR#18308.
  * R CMD check no longer runs test scripts generated from
    corresponding .Rin files twice and now signals an ERROR if
    processing an .Rin script fails.
  * tools::Rd2txt() used for plain-text help pages now renders \hrefs
    (if tools::Rd2txt_options(showURLs = TRUE)) and \urls with
    percent-encoding and standards-compliant delimiting style (angle
    brackets and no URL: prefix).  \email is now rendered with a
    mailto: prefix.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1655985600">- CHANGES IN R 4.2.1:
  NEW FEATURES:
  * New function utils::findCRANmirror() to find out if a CRAN mirror
    has been selected, otherwise fallback to the main site.  This
    behaves in the same way as tools::CRAN_package_db() and is
    intended for packages wishing to access CRAN for purposes other
    than installing packages.
    The need for this was shown by a day when the main CRAN website
    was offline and a dozen or so packages which had its URL
    hardcoded failed their checks.
  INSTALLATION on a UNIX-ALIKE:
  * The libraries searched for by --with-blas (without a value) now
    include BLIS (after OpenBLAS but before ATLAS).  And on macOS,
    the Accelerate framework (after ATLAS).  (This is patterned after
    the AX_BLAS macro from the Autoconf Archive.)
  * The included LAPACK sources have been updated to 3.10.1.
  UTILITIES:
  * The (full path to) the command tidy to be used for HTML
    validation can be set by environment variable R_TIDYCMD.
  * Setting environment variable _R_CHECK_RD_VALIDATE_RD2HTML_ to a
    false value will override R CMD check --as-cran and turn off HTML
    validation.  This provides a way to circumvent a problematic
    tidy.
    The 2006 version that ships with macOS is always skipped.
  C-LEVEL FACILITIES:
  * The undocumented legacy declarations of Sint, Sfloat, SINT_MAX
    and SINT_MIN in header R.h are deprecated.
  BUG FIXES:
  * fisher.test(d) no longer segfaults for "large" d; fixing PR#18336
    by preventing/detecting an integer overflow reliably.
  * tar(., files=*) now produces correctly the warning about invalid
    uid or gid of files, fixing PR#18344, reported by Martin Morgan.
  * tk_choose.files() with multi = FALSE misbehaved on paths
    containing spaces (PR#18334) (regression introduced in R 4.0.0).
  * sort(x, partial = ind, *) now works correctly notably for the
    non-default na.last = FALSE or TRUE, fixing PR#18335 reported by
    James Edwards.
  * Environment variable _R_CHECK_XREFS_REPOSITORIES_ is only used
    for checking .Rd cross-references in R CMD check (as documented)
    and not for other uses looking for a CRAN mirror.
  * The search for a CRAN mirror when checking packages now uses
    getOption("repos") if that specifies a CRAN mirror, even when it
    does not also specify all three Bioconductor repositories (as was
    previously required).
  * The HTML code generated by tools::Rd2HTML() has been improved to
    pass tidy 5.8.0.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1667217600">- CHANGES IN R 4.2.2:
  NEW FEATURES:
  * tools::Rdiff(useDiff = TRUE) checks for the presence of an
    external diff command and switches to useDiff = FALSE if none is
    found.  This allows R CMD Rdiff to always work.
  * On Windows, environment variable R_LIBCURL_SSL_REVOKE_BEST_EFFORT
    can be used to switch to only 'best-effort' SSL certificate
    revocation checks with the default "libcurl" download method.
    This reduces security, but may be needed for downloads to work
    with MITM proxies (PR#18379).
  * (macOS) The run-time check for libraries from XQuartz for X11 and
    Tcl/Tk no longer uses otool from the Apple Developer Tools
    (PR#18400).
  * The LaTeX style for producing the PDF manuals, Rd.sty, now loads
    the standard amsmath, amsfonts and amssymb packages for greater
    coverage of math commands in the Rd \eqn and \deqn macros.  The
    \mathscr LaTeX command is also provided (via the mathrsfs
    package, if available, or the amsfonts bundle otherwise),
    fulfilling the wish of PR#18398.
  * (Windows) The default format of readClipboard() and
    writeClipboard() has been changed to 13 (CF_UNICODETEXT).
  INSTALLATION on a UNIX-ALIKE:
  * The PDF manuals (if built) can be compacted by the new target
    make compact-pdf (at the top level or in directory doc/manual).
  * There is now configure support for LLVM clang 15 on Linux, which
    defaults to position-independent (PIE) executables whereas
    gfortran does not.
  * Many small changes to ease compilation (and suppress warnings)
    with LLVM clang 15.
  BUG FIXES:
  * Rscript -e would fail if stdin were closed (Reported by Henrik
    Bengtsson.)
  * qt(*, log.p=TRUE) in outer tails no longer produces NaN in its
    final steps, thus fixing PR#18360.
  * tools::Rd2latex() now escapes hashes and ampersands when writing
    URLs, fixing LaTeX errors with such URLs in \tabular.
  * When isGeneric(f, fdef=*) is used with mismatching names, the
    warning is better understandable; reported (with fix) in PR#18370
    by Gabe Becker.
  * poly(x, n) now works again (and is now documented) when x is a
    "Date" or "POSIXct" object, or of another class while fulfilling
    mode(x) == "numeric".  This also enables poly(x, *, raw=TRUE) for
    such variables.  Reported by Michael Chirico to R-devel.
  * write.table(), write.csv() and write.csv2() restore their
    numerical precision (internal equivalent of digits = 15) after an
    interrupt (PR#18384).
  * One can now read also byte FF from a clipboard connection
    (PR#18385).
  * source("") and source(character()) now give more helpful error
    messages.
  * R CMD check --as-cran set _R_CHECK_TIMINGS_ too late to have the
    intended effect.
  * as.POSIXlt(x) now also works with very large dates x, fixing
    PR#18401 reported by Hannes M"uhleisen.
  * Files can now be extracted even from very large zip archives
    (PR#18390, thanks to Martin Jakt).
  * Non-finite objects of class "POSIXlt" are now correctly coerced
    to classes "Date" and "POSIXct"; following up on the extension to
    format() them correctly.
  * Added methods for is.finite(), is.infinite() and is.nan() for
    "POSIXlt" date-time objects.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1678881600">- CHANGES IN R 4.2.3:
  C-LEVEL FACILITIES:
  * The definition of DL_FUNC in R_ext/Rdynload.h has been changed to
    be fully C-compliant.  This means that functions loaded _via_ for
    example R_GetCCallable need to be cast to an appropriate type if
    they have any arguments.
  * .Machine has a new element sizeof.time_t to identify old systems
    with a 32-bit type and hence a limited range of date-times (and
    limited support for dates millions of years from present).
  PACKAGE INSTALLATION:
  * (Windows) The default C++ standard had accidentally been left at
    C++11 when it was changed to C++14 on Unix.
  BUG FIXES:
  * As "POSIXlt" objects may be "partially filled" and their list
    components meant to be recycled, length() now is the length of
    the longest component.
  * as.POSIXlt.Date() could underflow for dates in the far past (more
    than half a million years BCE).
  * as.Date.POSIXlt(x) would return "1970-01-01" instead of NA in R
    4.2.2, e.g., for
    x &lt;- as.POSIXlt(c("2019-01-30","2001-1-1"))
    x$mon &lt;- c(0L, NA); as.Date(x)
  * R CMD check failed to apply enabled _R_CHECK_SUGGESTS_ONLY_ to
    examples and vignettes (regression in R 4.2.0).
  * R CMD check did not re-build vignettes in separate processes by
    default (regression in R 4.2.0).
  * Running examples from HTML documentation now restores previous
    knitr settings and options (PR#18420).
  * Quartz: fonts are now located using Core Graphics API instead of
    deprecated ATS which is no longer supported in the macOS 13 SDK
    (PR#18426).  This also addresses an issue where the currently
    used font in the Quartz device context was not correctly
    retained.
  * (Windows) Math symbols in text drawing functions are again
    rendered correctly (PR#18440).  This fixes a regression in R
    4.2.1 caused by a fix in PR#18382 which uncovered an issue in
    GraphApp due to which the symbol charset was not used with TT
    Symbol font face.
  * (Windows) Installing a package with a src/Makefile.{win,ucrt}
    file includes ~/.R/Makevars.win64 in the search for user
    makevars, as documented in "R Installation and Administration"
    and done for packages with a src/Makevars.{win,ucrt} file.
  * format(&lt;POSIXlt_w/_unbalanced_sec&gt;, "....%OS&lt;n&gt;") with n &gt; 0 no
    longer accidentally uses the unbalanced seconds, thanks to
    Suharto Anggono's report (including patch) in PR#18448.
  * solve.default(a, b) works around issues with some versions of
    LAPACK when a contains NA or NaN values.
  * When UseMethod() cannot dispatch, it no longer segfaults
    producing the error message in case of a long class(), thanks to
    Joris Vankerschaver's report (including patch) in PR#18447.
  * When example(foo, ..) produces graphics on an interactive device
    it needs to open itself, it now leaves devAskNewPage() unchanged
    even when it was FALSE, thus fixing a 14 years old '&lt;FIXME&gt;'.
  * packageDescription() again catches errors from encoding
    conversions. This also fixes broken packageVersion() in C locale
    on systems where iconv does not support transliteration.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1681128000">- add patch to build with libcurl &gt;= 8</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1682078400">- CHANGES IN R 4.3.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Calling &amp;&amp; or || with LHS or (if evaluated) RHS of length greater
    than one is now always an error, with a report of the form
    'length = 4' in coercion to 'logical(1)'
    Environment variable _R_CHECK_LENGTH_1_LOGIC2_ no longer has any
    effect.
  NEW FEATURES:
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.10.1.  (This caused some platform-dependent
    changes to package check output.)  And then to the sources from
    LAPACK version 3.11.0 (with changes only to double complex
    subroutines).
  * The included LAPACK sources have been updated to include the four
    Fortran 90 routines rather than their Fortran 77 predecessors.
    This may give some different signs in SVDs or
    eigendecompositions..  (This completes the transition to LAPACK
    3.10.x begun in R 4.2.0.)
  * The LAPACK sources have been updated to version 3.11.0.  (No new
    subroutines have been added, so this almost entirely bug fixes:
    Those fixes do affect some computations with NaNs, including R's
    NA.)
  * The parser now signals _classed_ errors, notably in case of the
    pipe operator |&gt;.  The error object and message now give line and
    column numbers, mostly as proposed and provided by Duncan Murdoch
    in PR#18328.
  * toeplitz() is now generalized for asymmetric cases, with a
    toeplitz2() variant.
  * xy.coords() and xyz.coords() and consequently, e.g., plot(x,y,
    log = "y") now signal a _classed_ warning about negative values
    of y (where log(.) is NA).  Such a warning can be specifically
    suppressed or caught otherwise.
  * Regular expression functions now check more thoroughly whether
    their inputs are valid strings (in their encoding, e.g. in
    UTF-8).
  * The performance of grep(), sub(), gsub() and strsplit() has been
    improved, particularly with perl = TRUE and fixed = TRUE.  Use of
    useBytes = TRUE for performance reasons should no longer be
    needed and is discouraged: it may lead to incorrect results.
  * apropos() gains an argument dot_internals which is used by the
    completion (help(rcompgen)) engine to also see base internals
    such as .POSIXct().
  * Support in tools::Rdiff() for comparing uncompressed PDF files is
    further reduced - see its help page.
  * qqplot(x, y, ...) gains conf.level and conf.args arguments for
    computing and plotting a confidence band for the treatment
    function transforming the distribution of x into the distribution
    of y (Switzer, 1976, _Biometrika_). Contributed by Torsten
    Hothorn.
  * Performance of package_dependencies() has been improved for cases
    when the number of dependencies is large.
  * Strings newly created by gsub(), sub() and strsplit(), when any
    of the inputs is marked as "bytes", are also marked as "bytes".
    This reduces the risk of creating invalid strings and accidental
    substitution of bytes deemed invalid.
  * Support for readLines(encoding = "bytes") has been added to allow
    processing special text files byte-by-byte, without creating
    invalid strings.
  * iconv(from = "") now takes into account any declared encoding of
    the input elements and uses it in preference to the native
    encoding.  This reduces the risk of accidental creation of
    invalid strings, particularly when different elements of the
    input have different encoding (including "bytes").
  * Package repositories in getOption("repos") are now initialized
    from the repositories file when utils is loaded (if not already
    set, e.g., in .Rprofile).  (From a report and patch proposal by
    Gabriel Becker in PR#18405.)
  * compactPDF() gets a verbose option.
  * type.convert() and hence read.table() get new option tryLogical =
    TRUE with back compatible default.  When set to false, converts
    "F" or "T" columns to character.
  * Added new unit prefixes "R" and "Q" for abbreviating
    (unrealistically large) sizes beyond 10^{27} in standard = "SI",
    thanks to Henrik Bengtsson's PR#18435.
  * as.data.frame()'s default method now also works fine with atomic
    objects inheriting from classes such as "roman", "octmode" and
    "hexmode", such fulfilling the wish of PR#18421, by Benjamin
    Feakins.
  * The as.data.frame.vector() utility now errors for wrong-length
    row.names.  It warned for almost six years, with "Will be an
    error!".
  * sessionInfo() now also contains La_version() and reports codepage
    and timezone when relevant, in both print() and toLatex() methods
    which also get new option tzone for displaying timezone
    information when locale = FALSE.
  * New function R_compiled_by() reports the C and Fortran compilers
    used to build R, if known.
  * predict(&lt;lm&gt;, newdata = *) no longer unnecessarily creates an
    offset of all 0s.
  * solve() for complex inputs now uses argument tol and by default
    checks for 'computational singularity' (as it long has done for
    numeric inputs).
  * predict(&lt;rank-deficient lm&gt;, newdata=*) now obeys a new argument
    rankdeficient, with new default "warnif", warning only if there
    are non-estimable cases in newdata.  Other options include
    rankdeficient = "NA", predicting NA for non-estimable newdata
    cases.  This addresses PR#15072 by Russ Lenth and is based on his
    original proposal and discussions in PR#16158 also by David Firth
    and Elin Waring.  Still somewhat experimental.
  * Rgui console implementation now works better with the NVDA screen
    reader when the full blinking cursor is selected.  The underlying
    improvements in cursor handling may help also other screen
    readers on Windows.
  * The drop-field control in GraphApp can now be left with the TAB
    key and all controls can be navigated in the reverse order using
    the Shift+TAB key, improving accessibility of the Rgui
    configuration editor.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now fully accurate
    (instead of to "only" minimally five digits).
  * demo(error.catching) now also shows off withWarnings() and
    tryCatchWEMs().
  * As an experimental feature the placeholder _ can now also be used
    in the rhs of a forward pipe |&gt; expression as the first argument
    in an extraction call, such as _$coef. More generally, it can be
    used as the head of a chain of extractions, such as _$coef[[2]].
  * Spaces in the environment variable used to choose the R session's
    temporary directory (TMPDIR, TMP and TEMP are tried in turn) are
    now fatal.  (On Windows the 'short path' version of the path is
    tried and used if that does not contain a space.)
  * all.equal.numeric() gets a new optional switch giveErr to return
    the numeric error as attribute.  Relatedly,
    stopifnot(all.equal&lt;some&gt;(a, b, ..)) is as "smart" now, as
    stopifnot(all.equal(....)) has been already, thus allowing
    customized all.equal&lt;Some&gt;() wrappers.
  * R on Windows is now able to work with path names longer than 260
    characters when these are enabled in the system (requires at
    least Windows 10 version 1607).  Packages should be updated to
    work with long paths as well, instead of assuming PATH_MAX to be
    the maximum length.  Custom front-ends and applications embedding
    R need to update their manifests if they wish to allow this
    feature.  See
    &lt;https://blog.r-project.org/2023/03/07/path-length-limit-on-windows&gt;
    for more information.
  * 'Object not found' and 'Missing argument' errors now give a more
    accurate error context. Patch provided by Lionel Henry in
    PR#18241.
  * The @ operator is now an S3 generic. Based on contributions by
    Tomasz Kalinowski in PR#18482.
  * New generic chooseOpsMethod() provides a mechanism for objects to
    resolve cases where two suitable methods are found for an Ops
    Group Generic. This supports experimenting with alternative
    object systems. Based on contributions by Tomasz Kalinowski in
    PR#18484.
  * inherits(x, what) now accepts values other than a simple
    character vector for argument what. A new generic, nameOfClass(),
    is called to resolve the class name from what. This supports
    experimenting with alternative object systems. Based on
    contributions by Tomasz Kalinowski in PR#18485.
  * Detection of BLAS/LAPACK in use (sessionInfo()) with FlexiBLAS
    now reports the current backend.
  * The "data.frame" method for subset() now warns about extraneous
    arguments, typically catching the use of = instead of == in the
    subset expression.
  * Calling a:b when numeric a or b is longer than one may now be
    made into an error by setting environment variable
    _R_CHECK_LENGTH_COLON_ to a true value, along the proposal in
    PR#18419 by Henrik Bengtsson.
  * density(x, weights = *) now warns if automatic bandwidth
    selection happens without using weights; new optional warnWbw may
    suppress the warning.  Prompted by Christoph Dalitz' PR#18490 and
    its discussants.
  * rm(list = *) is faster and more readable thanks to Kevin Ushey's
    PR#18492.
  * The plot.lm() function no longer produces a normal Q-Q plot for
    GLMs. Instead it plots a half-normal Q-Q plot of the absolute
    value of the standardized deviance residuals.
  * The print() method for class "summary.glm" no longer shows
    summary statistics for the deviance residuals by default.  Its
    optional argument show.residuals can be used to show them if
    required.
  * The tapply() function now accepts a data frame as its X argument,
    and allows INDEX to be a formula in that case. by.data.frame()
    similarly allows INDICES to be a formula.
  * The performance of df[j] &lt;- value (including for missing j) and
    write.table(df) has been improved for data frames df with a large
    number of columns.  (Thanks to Gabriel Becker's PR#18500,
    PR#18503 and discussants, prompted by a report from Toby Dylan
    Hocking on the R-devel mailing list.)
  * The matrix multiply operator %*% is now an S3 generic, belonging
    to new group generic matrixOps.  From Tomasz Kalinowski's
    contribution in PR#18483.
  * New function array2DF() to convert arrays to data frames,
    particularly useful for the list arrays created by tapply().
  DATES and TIMES:
  * On platforms where (non-UTC) datetimes before 1902 (or before
    1900 as with system functions on recent macOS) are guessed by
    extrapolating time zones from 1902-2037, there is a warning at
    the first use of extrapolation in a session.  (As all time zones
    post 2037 are extrapolation, we do not warn on those.)
  * (Platforms using --with-internal-tzone, including Windows and by
    default macOS). How years are printed in dates or date-times can
    be controlled by environment variable R_PAD_YEARS_BY_ZERO.  The
    default remains to pad to 4 digits by zeroes, but setting value
    no gives no padding (as used by default by glibc).
  * strftime() tries harder to determine the offset for the "%z"
    format, and succeeds on the mainstream R platforms.
  * strftime() has a limit of 2048 bytes on the string produced -
    attempting to exceed this is an error.  (Previously it silently
    truncated at 255 bytes.)
  * sessionInfo() records (and by default prints) the system time
    zone as part of the locale information.  Also, the source
    (system/internal) of the date-time conversion and printing
    functions.
  * Objects of class "POSIXlt" created in this version of R always
    have 11 components: component zone is always set, and component
    gmtoff is set for times in UTC and usually set on the (almost
    all) platforms which have C-level support, otherwise is NA.
  * There are comprehensive validity checks on the structure of
    objects of class "POSIXlt" when converting (including formatting
    and printing).  (This avoids mis-conversions of hand-crafted
    objects.)
  * There is some support for using the native date-time routines on
    macOS: this is only viable on recent versions (e.g. 12.6 and 13)
    and does get wrong some historical changes (before 1900, during
    WWII).  Use of --with-internal-tzone remains the default.
  * as.POSIXct(&lt;numeric&gt;) and as.POSIXlt(.) (without specifying
    origin) now work.  So does as.Date(&lt;numeric&gt;).
  * as.Date.POSIXct(., tz) now treats several tz values, notably
    "GMT" as equivalent to "UTC", proposed and improved by Michael
    Chirico and Joshua Ulrich in PR#17674.
  * Experimental balancePOSIXlt() utility allows using "ragged" and
    or out-of-range "POSIXlt" objects more correctly, e.g., in
    subsetting and subassignments.  Such objects are now documented.
    More experimentally, a "POSIXlt" object may have an attribute
    "balanced" indicating if it is known to be filled or fully
    balanced.
  * Functions axis.Date() and axis.POSIXct() are rewritten to gain
    better default tick locations and better default formats by using
    prettyDate(). Thanks to Swetlana Herbrandt.
  * The mapping of Windows' names for time zones to IANA's 'Olson'
    names has been updated.  When ICU is available (it is by
    default), it is used to get a mapping for the current region set
    in Windows.  This can be overridden by setting environment
    variable TZ to the desired Olson name - see OlsonNames() for
    those currently available.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 16
    and so packages that provide graphics devices should be
    reinstalled.
  * The grDevices and grid packages have new functions for rendering
    typeset glyphs, primarily: grDevices::glyphInfo() and
    grid::grid.glyph().
    Rendering of typeset glyphs is only supported so far on the
    Cairo-based graphics devices and on the pdf() and quartz()
    devices.
  * The defined behaviour for "clear" and "source" compositing
    operators (via grid::grid.group()) has been changed (to align
    better with simple interpretation of original Porter-Duff
    definitions).
  * Support for gradients, patterns, clipping paths, masks, groups,
    compositing operators, and affine transformations has been added
    to the quartz() device.
  INSTALLATION on a UNIX-ALIKE:
  * A system installation of generic LAPACK 3.10.0 or later will be
    preferred to the version in the R sources.
    configure option --with-lapack=no (equivalently --without-lapack)
    forces compilation of the internal LAPACK sources.
    If --with-lapack is not specified, a system liblapack is looked
    for and used if it reports version 3.10.0 or later and does not
    contain BLAS routines.
    Packages using LAPACK will need to be reinstalled if this changes
    to using an external library.
  * On aarch64 Linux platforms using GCC, configure now defaults to
  - fPIC (instead of -fpic), as desired in PR#18326.
  * configure now checks conversion of datetimes between POSIXlt and
    POSIXct around year 2020.  Failure (which has been seen on
    platforms missing tzdata) is fatal.
  * If configure option --with-valgrind-instrumentation is given
    value 1 or 2, option --with-system-valgrind-headers is now the
    default and ignored (with a warning).  It is highly recommended
    that the system headers are installed alongside valgrind: they
    are part of its packaging on some Linux distributions and
    packaged separately (e.g. in the valgrind-devel RPM) on others.
    configure will give a warning if they are not found.
    The system headers will be required in a future release of R to
    build with valgrind instrumentation.
  * libcurl 8.x is now accepted by configure: despite a change in
    major version number it changes neither API nor ABI.
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools43, an update of the Rtools42 toolchain.  It is
    based on gcc 12 and newer versions of MinGW-W64, binutils and
    libraries.  At this time R-devel can still be built using
    Rtools42 without changes, but when R-devel is installed via the
    installer, it will by default look for Rtools43.
  * Old make targets rsync-extsoft and 32-bit ones that are no longer
    needed have been removed.
  * Default builds (including for packages) no longer select C99.
    Thus the C standard used is the default for the compiler, which
    for the toolchain in Rtools43 is C17.  (This is consistent with
    Unix builds.)
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++17 where
    available (which it is on all currently checked platforms): if
    not C++14 or C++11 is used if available otherwise C++ is not
    supported.
  * USE_FC_LEN_T is the default: this uses the correct
    (compiler-dependent) prototypes for Fortran BLAS/LAPACK routines
    called from C/C++, and requires adjustment of many such calls -
    see 'Writing R Extensions' SS6.6.1.
  * There is initial support for C++23 as several compilers are now
    supporting -std=c++23 or -std=c++2b or similar.  As for C++20,
    there no additional configure checks for C++23 features beyond a
    check that the compiler reports a __cplusplus value greater than
    that in the C++20 standard.  C++ feature tests should be used.
  * There is support for a package to indicate the version of the C
    standard which should be used to compile it, and for the
    installing user to specify this.  In most cases R defaults to the
    C compiler's default standard which is C17 (a `bug-fix' of C11) -
    earlier versions of R or compilers may have defaulted to C99.
    Current options are:
    USE_C17 Use a standard that is at most C17.  The intention is to
    allow legacy packages to still be installed when later C
    standards become the default, including packages using new
    keywords as identifiers or with K&amp;R-style function
    declarations.  This will use C17 if available, falling back
    to C11.
    USE_C90 Use the C90 (aka C89) standard.  (As that standard did
    not require compilers to identify that version, all we can
    verify is that the compiler does not claim to be using a
    later standard.  It may accept C99 features - for example
    clang accepts // to make comments.)
    USE_C99 Use the C99 standard. This should be rarely needed - it
    avoids the few new features of C11/C17 which can be useful if
    a package assumes them if C17 is specified and they are not
    implemented.
    USE_C23 Use C23 (or in future, later).  Compiler/library support
    for C23 is still being implemented, but LLVM clang from
    15.0.0 and the upcoming GCC 13 have quite extensive support.
    These can be specified as part of the SystemRequirements field in
    the package's DESCRIPTION file or _via_ options --use-C17 and so
    on of R CMD INSTALL and R CMD SHLIB.
    For further details see "Writing R Extensions" SS1.2.5.
  * (Windows) A src/Makefile.ucrt or src/Makefile.win file is now
    included after R_HOME/etcR_ARCH/Makeconf and so no longer needs
    to include that file itself.  Installation of a package with such
    a file now uses a site Makevars file in the same way as a package
    with a src/Makevars.win file would.
  * configure is now passed crucial variables such as CC and CFLAGS
    in its environment, as many packages were not setting them (as
    documented in 'Writing R Extensions' SS1.2).
    This has most effect where configure is used to compile parts of
    the package - most often by cmake or libtool which obfuscate the
    actual compile commands used.
    Also used for configure.win and configure.ucrt on Windows.
  FORTRAN FLAGS:
  * The flag -fno-optimize-sibling-calls is no longer forced for
    gfortran 7 and later.  It should no longer be needed now using
    'hidden' character-length arguments when calling BLAS/LAPACK
    routines from C/C++ is the default even for packages.  (Unless
    perhaps packages call Fortran code from C/C++ without using R's
    headers and without allowing for these arguments.)
  C-LEVEL FACILITIES:
  * The deprecated S-compatibility macros DOUBLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * The deprecated legacy typedefs of Sint and Sfloat in header R.h
    are no longer defined, and that header no longer includes header
    limits.h from C nor climits from C++.
  * New macro CAD5R() is provided in Rinternals.h and used in a few
    places in the R sources.
  * ALTREP now supports VECSXP vectors. Contributed by Gabor Csardi
    in PR#17620.
  * The Rcomplex definition (in header R_ext/Complex.h) has been
    extended to prevent possible mis-compilation when interfacing
    with Fortran (PR#18430).  The new definition causes compiler
    warnings with static initializers such as {1, 2}, which can be
    changed to {.r=1, .i=2}.
    Using the new definition from C++ depends on compiler extensions
    supporting C features that have not been incorporated into the
    C++ standards but are available in g++ and clang++: this may
    result in C++ compiler warnings but these have been worked around
    for recent versions of common compilers (GCC, Apple/LLVM clang,
    Intel).
    It is intended to change the inclusion of header R_ext/Complex.h
    by other R headers, so C/C++ code files which make use of
    Rcomplex should include that header explicitly.
  UTILITIES:
  * R CMD check does more checking of package .Rd files, warning
    about invalid email addresses and (some) invalid URIs and noting
    empty \item labels in description lists.
  * R CMD check now also reports problems when reading package news
    in md (file NEWS.md) and (optionally) plain text (file NEWS)
    formats.
  * _R_CHECK_TIMINGS_ defaults to a value from the environment even
    for R CMD check --as-cran; this allows for exceptionally fast or
    slow platforms.
    It now applies to checking PDF and HTML versions of the manuals,
    and 'checking CRAN incoming feasibility'.
  * R CMD check can optionally (but included in --as-cran) check
    whether HTML math rendering _via_ KaTeX works for the package .Rd
    files.
  * Non-interactive debugger invocations can be trapped by setting
    the environment variable _R_CHECK_BROWSER_NONINTERACTIVE_ to a
    true value.  This is enabled by R CMD check --as-cran to detect
    the use of leftover browser() statements in the package.
  * The use of sprintf and vsprintf from C/C++ has been deprecated in
    macOS 13 and is a known security risk.  R CMD check now reports
    (on all platforms) if their use is found in compiled code:
    replace by snprintf or vsnprintf respectively. [*NB:* whether
    such calls get compiled into the package is platform-dependent.]
  * Where recorded at installation, R CMD check reports the C and
    Fortran compilers used to build R.
    It reports the OS in use (if known, as given by osVersion) as
    well as that R was built for.
    It notes if a C++ standard was specified which is older than the
    current default: many packages have used C++11 to mean 'not
    C++98' - as C++11 is the minimum supported since R 4.0.0, that
    specification can probably be removed.
  * R CMD INSTALL reports the compilers (and on macOS, the SDK) used,
    and this is copied to the output of R CMD check.
    Where a C++ standard is specified, it is reported.
  * R CMD check's 'checking compilation flags in Makevars' has been
    relaxed to accept the use of flags such as -std=f2008 in
    PKG_FFLAGS.
  * tools::buildVignettes() has a new argument skip, which is used by
    R CMD check to skip (and note) vignettes with unavailable
    \VignetteDepends (PR#18318).
  * New generic .AtNames() added to enable class-specific completions
    after @. The formerly internal function findMatches() is now
    exported, mainly for use in methods for .DollarNames() and
    .AtNames().
  DEPRECATED AND DEFUNCT:
  * default.stringsAsFactors() is defunct.
  * Calling as.data.frame.&lt;class&gt;() directly (for 12 atomic classes)
    is going to be formally deprecated, currently activated by
    setting the environment variable
    _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ to non-empty, which also
    happens in R CMD check --as-cran.
  BUG FIXES:
  * Hashed environments with sizes less than 5 can now grow.
    (Reported to R-devel by Duncan Garmonsway.)
  * as.character(&lt;Rd&gt;, deparse = TRUE) failed to re-escape curly
    braces in LaTeX-like text.  (Reported by Hadley Wickham in
    PR#18324.)
  * library() now passes its lib.loc argument when requiring Depends
    packages; reported (with fix) in PR#18331 by Mikael Jagan.
  * R CMD Stangle: improved message about 'Output' files.
  * head(x, n) and tail(x, n) now signal an error if n is not
    numeric, instead of incidentally "working" sometimes returning
    all of x.  Reported and discussed by Colin Fay, in PR#18357.
  * The "lm" method for summary() now gives the correct F-statistic
    when the model contains an offset.  Reported in PR#18008.
  * C() and `contrasts&lt;-`() now preserve factor level names when
    given a function object (as opposed a function name which did
    preserve names). Reported in PR#17616.
  * c(a = 1, 2)[[]] no longer matches 2 but rather signals a
    _classed_ error.  Reported and analysed by Davis Vaughan in
    PR#18367, a duplicate of PR#18004, by Jan Meis et al.  For
    consistency, NULL[[]] is also erroneous now.  x[[]] &lt;- v gives an
    error of the same class "MissingSubscriptError".
  * The relist() function of utils now supports NULL elements in the
    skeleton (PR#15854).
  * ordered(levels = *) (missing x) now works analogously to factor(,
    ordered=TRUE); reported (with fix) by Achim Zeileis in PR#18389.
  * User-defined Rd macro definitions can now span multiple lines,
    thanks to a patch from Duncan Murdoch. Previously, the Rd parser
    silently ignored everything after the first line.
  * Plain-text help (tools::Rd2txt()) now preserves an initial blank
    line for text following description list items.
  * tools::Rd2HTML() and tools::Rd2latex() no longer split \arguments
    and \value lists at Rd comments.
  * tools::Rd2latex() now correctly handles optional text outside
    \items of argument lists as well as bracketed text at the
    beginning of sections, e.g., \value{[NULL]}.
  * as.character(&lt;POSIXt&gt;) now behaves more in line with the methods
    for atomic vectors such as numbers, and is no longer influenced
    by options().  Ditto for as.character(&lt;Date&gt;).  The
    as.character() method gets arguments digits and OutDec with
    defaults _not_ depending on options().  Use of as.character(*,
    format = .) now warns.
  * Similarly, the as.character.hexmode() and *.octmode() methods
    also behave as good citizen methods and back compatibility option
    keepStr = TRUE.
  * The as.POSIXlt(&lt;POSIXlt&gt;) and as.POSIXct(&lt;POSIXct&gt;) default
    methods now do obey their tz argument, also in this case.
  * as.POSIXlt(&lt;Date&gt;) now does apply a tz (time zone) argument, as
    does as.POSIXct(); partly suggested by Roland Fuss on the R-devel
    mailing list.
  * as.Date.POSIXlt(x) now also works when the list components are of
    unequal length, aka "partially filled" or "ragged".
  * expand.model.frame() looked up variables in the wrong environment
    when applied to models fitted without data.  Reported in
    PR#18414.
  * time() now (also) uses the ts.eps = getOption("ts.eps") argument
    and thus by default rounds values very close to the start (or
    end) of a year.  Based on a proposal by Andre"i V. Kostyrka on
    R-help.
  * Printing of a factanal() result with just one factor and sort =
    TRUE now works regularly, fixing PR#17863 by Timothy Bates,
    thanks to the 'R Contributors' working group.
  * Printing 0-length objects of class "factor", "roman", "hexmode",
    "octmode", "person", "bibentry", or "citation" now prints
    something better, one of which fixes PR#18422, reported by
    Benjamin Feakins.
  * Sys.timezone() queries timedatectl only if systemd is loaded;
    addressing a report by Jan Gorecki in PR#17421.
  * The formula method of cor.test() had scoping problems when
    environment(formula) was not the calling environment; reported
    with a patch proposal by Mao Kobayashi in PR#18439.
  * attach() of an environment with active bindings now preserves the
    active bindings.  Reported by Kevin Ushey in PR#18425.
  * BLAS detection now works also with system-provided libraries not
    available as regular files.  This fixes detection of the
    Accelerate framework on macOS since Big Sur.  Reported by David
    Novgorodsky.
  * download.file() gives a helpful error message in case of an
    invalid download.file.method option, thanks to Colin Fay's report
    in PR#18455.
  * Sporadic crashes of Rterm when using completion have been fixed.
  * Rprof() is now more reliable.  A livelock in thread
    initialization with too short sampling interval has been fixed on
    macOS.  A deadlock in using the C runtime has been fixed on
    Windows.  A potential deadlock has been prevented on Unix.
  * Cursor placement in Rgui now works even after a fixed-width font
    is selected.
  * Mandatory options (options()) are now set on startup so that
    saving and restoring them always works (PR#18372).
  * Package installation, R CMD INSTALL or install.packages(*), now
    parses each of the &lt;pkg&gt;/R/*.R files individually instead of
    first concatenating and then parse()ing the large resulting file.
    This allows parser or syntax errors to be diagnosed with correct
    file names and line numbers, thanks to Simon Dedman's report and
    Bill Dunlap's patch in PR#17859.
    This _does_ require syntactically self contained R source files
    now, fixing another inadvertent bug.
  * predict.lm(&lt;model with offset&gt;) now finds the offset in the
    correct environment, thanks to Andr'e Gillibert's report and patch
    in PR#18456.
  * getInitial(&lt;formula&gt;) now finds the selfStart model in the
    correct environment.  (Reported by Ivan Krylov in PR#18368.)
  * Fix for possible segfault when using recently-added graphics
    features, such as gradients, clipping paths, masks, and groups
    with pdf(file=NULL).
  * class(m) &lt;- class(m) no longer changes a matrix m by adding a
    class _attribute_.
  * packageDate(pkg) now only warns once if there is no pkg.
  * When ts() creates a multivariate time series, "mts", it also
    inherits from "array" now, and is.mts() is documented _and_
    stricter.
  * Rd2txt() now preserves line breaks of \verb Rd content and from
    duplicated \cr.  The former also fixes the rendering of verbatim
    output from Rd \Sexpr in plain-text help.
  * uniroot(f, interval) should no longer wrongly converge _outside_
    the interval in some cases where abs(f(x)) == Inf for an x at the
    interval boundary, thanks to posts by Ben Bolker and Serguei
    Sokol on R-devel.
  * Vectorized alpha handling in palette functions such as in gray(),
    rainbow(), or hcl.colors() works correctly now, thanks to Achim
    Zeileis' report and patch in PR#18476.
  * Formatting and print()ing of bibentry objects has dropped the
    deprecated citation.bibtex.max argument, such that the bibtex
    argument's default for print.bibentry() depends directly on the
    citation.bibtex.max option, whereas in format.bibentry() the
    option no longer applies.
  * Attempting to use a character string naming a foreign function
    entry point in a foreign function call in a package will now
    signal an error if the packages has called R_forceSymbols to
    specify that symbols must be used.
  * An error in table() could permanently set options(warn=2)
    promoting all subsequent warnings to errors.
  * The sigma() function gave misleading results for binary GLMs.  A
    new method for objects of class "glm" returns the square root of
    the estimate of the dispersion parameter using the same
    calculation as summary.glm().
  * bs() and ns() in the (typical) case of automatic knot
    construction, when some of the supposedly inner knots coincide
    with boundary knots, now moves them inside (with a warning),
    building on PR#18442 by Ben Bolker.
  * R CMD on Windows now skips the site profile with --no-site-file
    and --vanilla even when R_PROFILE is set (PR#18512, from Kevin
    Ushey).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1686916800">- CHANGES IN R 4.3.1:
  C-LEVEL FACILITIES:
  * The C-level API version of R's integrate(), Rdqags() in Applic.h,
    now returns the correct number of integrand evaluations neval,
    fixing PR#18515 reported and diagnosed by Stephen Wade.
  * The C prototypes for LAPACK calls dspgv and dtptrs in
    R_exts/Lapack.h had one too many and one too few character length
    arguments - but this has not caused any known issues. To get the
    corrected prototypes, include
    [#]include &lt;Rconfig.h&gt; // for PR18534fixed
    [#]ifdef PR18534fixed
    [#] define usePR18534fix 1
    [#]endif
    [#]include &lt;R_exts/Lapack.h&gt;
    in your C/C++ code (PR#18534).
  INSTALLATION:
  * Many of the checks of esoteric Internet operations and those
    using unreliable external sites have been moved to a new target
    that is not run by default and primarily intended for the core
    developers.  To run them use
    cd tests; make test-Internet-dev
  BUG FIXES:
  * .S3methods(), typically called from methods(), again marks
    methods from package base as visible.
    Also, the visibility of non-base methods is again determined by
    the method's presence in search().
  * tools::Rdiff() is now more robust against invalid strings, fixing
    installation tests on Windows without Rtools installed
    (PR#18530).
  * Fix (new) bug in hcl.colors(2, *), by Achim Zeileis (PR#18523).
  * head(., &lt;illegal&gt;) and tail(..) now produce more useful "Error in
    ...." error messages, fixing PR#18362.
  * Package code syntax on Windows is checked in UTF-8 when UTF-8 is
    the native encoding.
  * na.contiguous(x) now also returns the first run, when it is at
    the beginning and there is a later one of the same length;
    reported to R-devel, including a fix, by Georgi Boshnakov.
    Further, by default, it modifies only an existing attr(*,"tsp")
    but otherwise no longer sets one.
  * chol(&lt;not pos.def&gt;, pivot = &lt;T|F&gt;) now gives a correct error or
    warning message (depending on pivot), thanks to Mikael Jagan's
    (PR#18541).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1699012800">- CHANGES IN R 4.3.2:
  NEW FEATURES:
  * The default initialization of the "repos" option from the
    repositories file at startup can be skipped by setting
    environment variable R_REPOSITORIES to NULL such that
    getOption("repos") is empty if not set elsewhere.
  * qr.X() is now an implicit S4 generic in methods.
  * iconv(to = "ASCII//TRANSLIT") is emulated using substitution on
    platforms which do not support it (notably Alpine Linux).  This
    should give a human-readable conversion in ASCII on all platforms
    (rather than NA_character_).
  * trans3d() gains options continuous and verbose addressing the
    problem of possible "wrap around" when projecting too long
    curves, as reported by Achim Zeileis in PR#18537.
  * tools::showNonASCII() has been rewritten to work better on macOS
    14 (which has a changed implementation of iconv()).
  * tiff(type = "quartz") (the default on macOS) now warns if
    compression is specified: it continues to be ignored.
  INSTALLATION on a UNIX-ALIKE:
  * There is some support for building with Intel's LLVM-based
    compilers on x86_64 Linux, such as (C) icx, (C++) ipcx and
    (Fortran) ifx from oneAPI 2023.x.y.
  * There is support for using LLVM's flang-new as the Fortran
    compiler from LLVM 16.0.x (preferably 17.0.0 or later).
  UTILITIES:
  * R CMD check reports the use of the Fortran 90 random number
    generator RANDOM_NUMBER() and the subroutines to initialize it.
    'Writing R Extensions' has example code to use R's RNGs from
    Fortran.
  BUG FIXES:
  * substr(x, n, L) &lt;- cc now works (more) correctly for multibyte
    UTF-8 strings x when L &gt; nchar(x), thanks to a report and patch
    by 'Architect 95'.
  * contrib.url(character()) now returns 0-length character() as
    documented, which also avoids spurious warnings from
    available.packages() et al. in the edge case of an empty vector
    of repository URLs.
  * readChar(., 4e8) no longer fails, thanks to Kodi Arfer's report
    (PR#18557).
  * lapply(&lt;list&gt;, as.data.frame) no longer warns falsely for some
    base vector components.
  * Communication between parent and child processes in the multicore
    part of parallel could fail on platforms that do not support an
    arbitrarily large payload in system functions read()/write() on
    pipes (seen on macOS where a restriction to INT_MAX bytes is
    documented, without doing a partial read unlike Linux). The
    payload is now split into 1Gb chunks to avoid that problem.
    (PR#18571)
  * qqplot(x,y, conf.level=.) gives better confidence bounds when
    length(x) != length(y), thanks to Alexander Ploner's report and
    patch proposal (PR#18557).
  * norm(&lt;0-length&gt;, "2") now gives zero instead of an error, as all
    the other norm types, thanks to Mikael Jagan's PR#18542.
  * Build-stage Rd macros \packageAuthor and \packageMaintainer now
    process Authors@R, fixing NA results when the package DESCRIPTION
    omits Author and Maintainer fields.
  * Formatting and printing complex numbers could give things like
    0.1683-0i because of rounding error: -0i is now replaced by +0i.
  * postscript() refused to accept a title comment containing the
    letter "W" (PR#18599).
  * isoreg(c(1,Inf)) signals an error instead of segfaulting, fixing
    PR#18603.
  * tiff(type = "Xlib") was only outputting the last page of
    multi-page plots.
  * tools::latexToUtf8() again knows about \~{n} and other letters
    with tilde, fixing a regression in R 4.3.0, and about \^{i} as an
    alternative to \^{\i} (similarly with other accents).
    Furthermore, LaTeX codes for accented I letters are now correctly
    converted, also fixing related mistakes in
    tools::encoded_text_to_latex().
  * tar(*, tar = "internal") no longer creates out-of-spec tar files
    in the very rare case of user or group names longer than 32
    bytes, fixing PR#17871 with thanks to Ivan Krylov.
  * When using the "internal" timezone datetime code, adding a
    fraction of a second no longer adds one second, fixing PR#16856
    from a patch by Ivan Krylov.
  * tools::checkRd() no longer produces spurious notes about
    "unnecessary braces" from multi-line Rd results of \Sexpr macros.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1709208000">- CHANGES IN R 4.3.3:
  NEW FEATURES:
  * iconv() now fixes up variant encoding names such as "utf8"
    case-insensitively.
  DEPRECATED AND DEFUNCT:
  * The legacy encoding = "MacRoman" is deprecated in pdf() and
    postscript(): support was incomplete in earlier versions of R.
  BUG FIXES:
  * Arguments are now properly forwarded to methods on S4 generics
    with ... in the middle of their formal arguments. This was broken
    for the case when a method introduced an argument but did not
    include ... in its own formals. Thanks to Herv'e Pag`es for the
    report PR#18538.
  * Some invalid file arguments to pictex(), postscript() and xfig()
    opened a file called NA rather than throw an error.  These
    included postscript(NULL) (which some people expected to work
    like pdf(NULL)).
  * Passing filename = NA to svg(), cairo_pdf(), cairo_ps() or the
    Cairo-based bitmap devices opened a file called NA: it now throws
    an error.
  * quartz(file = NA) opened a file called NA, including when used as
    a Quartz-based bitmap device.  It now gives an error.
  * rank(&lt;long vector&gt;) now works, fixing PR#18617, thanks to Ilia
    Kats.
  * seq.int() did not adequately check its length.out argument.
  * match(&lt;POSIXct&gt;, .) is correct again for differing time zones,
    ditto for "POSIXlt", fixing PR#18618 reported by Bastian Klein.
  * drop.terms(*, dropx = &lt;0-length&gt;) now works, fixing PR#18563 as
    proposed by Mikael Jagan.
  * drop.terms(*) keeps + offset(.) terms when it should, PR#18565,
    and drop.terms() no longer makes up a response, PR#18566, fixing
    both bugs thanks to Mikael Jagan.
  * getS3method("t", "test") no longer finds the t.test() function,
    fixing PR#18627.
  * pdf() and postscript() support for the documented Adobe encodings
    "Greek" and "Cyrilllic" was missing (although the corresponding
    Windows' codepages could be used).
  * Computations of glyph metric information for pdf() and
    postscript() did not take into account that transliteration could
    replace one character by two or more (only seen on macOS 14) and
    typically warned that the information was not known.
  * rank(x) no longer overflows during integer addition, when
    computing rank average for largish but not-yet long vector x,
    fixing PR#18630, thanks to Ilia Kats.
  * list.files() on Windows now returns also files with names longer
    that 260 bytes (the Windows limit is 260 characters).
    Previously, some file names particularly with 'East Asian'
    characters were omitted.
  * cov2cor(&lt;0 x 0&gt;) now works, fixing PR#18423 thanks to Mikael
    Jagan and Elin Waring.
  * cov2cor(&lt;negative diagonal&gt;) and similar now give one warning
    instead of two, with better wording, fixing PR#18424 thanks to
    Mikael Jagan.
  * tools:: startDynamicHelp() now ensures port is in proper range,
    fixing PR#18645.
  * pbeta(x, a,b) is correct now for x=0 or 1 in the boundary cases
    where a or b or both are 0, fixing PR#18672 thanks to Michael
    Fay.
  * pmatch(x, table) for large table, also called for data frame row
    selection, dfrm[nm, ], is now interruptible, fixing PR#18656.
  * predict(&lt;rank-deficient lm&gt;, newdata=*) fix computing of nbasis,
    see Russ Lenth's comment 29 in PR#16158.
  * Added a work-around for a bug in macOS 14.3.1 and higher which
    prevents R plots in the Quartz Cocoa device from updating on
    screen.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1713960000">- CHANGES IN R 4.4.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Startup banners, R --version, sessionInfo() and R CMD check no
    longer report (64-bit) as part of the platform as this is almost
    universal - the increasingly rare 32-bit platforms will still
    report (32-bit).
    On Windows, ditto for window titles.
  * is.atomic(NULL) now returns FALSE, as NULL is not an atomic
    vector.  Strict back-compatibility would replace is.atomic(foo)
    by (is.null(foo) || is.atomic(foo)) but should happen only
    sparingly.
  NEW FEATURES:
  * The confint() methods for "glm" and "nls" objects have been
    copied to the stats package.  Previously, they were stubs which
    called versions in package MASS. The MASS namespace is no longer
    loaded if you invoke (say) confint(glmfit).  Further, the "glm"
    method for profile() and the plot() and pairs() methods for class
    "profile" have been copied from MASS to stats.  (profile.nls()
    and plot.profile.nls() were already in stats.)
  * The confint() and profile methods for "glm" objects have gained a
    possibility to do profiling based on the Rao Score statistic in
    addition to the default Likelihood Ratio. This is controlled by a
    new test = argument.
  * The pairs() method for "profile" objects has been extended with a
    which = argument to allow plotting only a subset of the
    parameters.
  * The "glm" method for anova() computes test statistics and
    p-values by default, using a chi-squared test or an F test
    depending on whether the dispersion is fixed or free.  Test
    statistics can be suppressed by giving argument test a false
    logical value.
  * In setRepositories() the repositories can be set using their
    names via name = instead of index ind =.
  * methods() and .S3methods() gain a all.names option for the (rare)
    case where functions starting with a . should be included.
  * Serializations can now be interrupted (e.g., by Ctrl-C on a
    Unix-alike) if they take too long, e.g., from save.image(),
    thanks to suggestions by Ivan Krylov and others on R-devel.
  * New startup option --max-connections to set the maximum number of
    simultaneous connections for the session.  Defaults to 128 as
    before: allowed values up to 4096 (but resource limits may in
    practice restrict to smaller values).
  * R on Windows (since Windows 10 2004) now uses the new Segment
    Heap allocator. This may improve performance of some
    memory-intensive applications.
  * When R packages are built, typically by R CMD build &lt;pkg&gt;, the
    new --user=&lt;build_user&gt; option overrides the (internally
    determined) user name, currently Sys.info()["user"] or LOGNAME.
    This is a (modified) fulfillment of Will Landau's suggestion in
    PR#17530.
  * tools::testInstalledBasic() gets new optional arguments outDir
    and testSrcdir, e.g., allowing to use it in a &lt;builddir&gt; !=
    &lt;srcdir&gt; setup, and in standard "binary" Windows installation
  * if* a source tests/ folder is present.
  * range(&lt;DT_with_Inf&gt;, finite = TRUE) now work for objects of class
    "Date", "POSIXct", and "POSIXlt" with infinite entries,
    analogously to range.default(), as proposed by Davis Vaughan on
    R-devel.  Other range()-methods can make use of new function
    .rangeNum().
  * New .internalGenerics object complementing .S3PrimitiveGenerics,
    for documentation and low-level book-keeping.
  * grid() now invisibly returns the x- and y- coordinates at which
    the grid-lines were drawn.
  * norm(., type) now also works for complex matrices.
  * kappa(., exact = TRUE, norm = *) now works for all norms and also
    for complex matrices.  In symmetric / triangular cases, the new
    argument uplo = "U" | "L" allows the upper or lower triangular
    part to be specified.
  * memDecompress(type = "unknown") recognizes compression in the
    default 'zlib' format as used by memCompress(type = "gzip").
  * memCompress() and memDecompress() will use the libdeflate library
    (&lt;https://github.com/ebiggers/libdeflate&gt;) if installed.  This
    uses the same type of compression for type = "gzip" but is 1.5-2x
    faster than the system libz library on some common platforms: the
    speed-up may depend on the library version.
  * diff() for objects of class "Date", "POSIXct", and "POSIXlt"
    accepts a units argument passed via ....
  * Dynamic help now does a much better job of rendering package
    DESCRIPTION metadata.
  * Rprof() gains an event argument and support for elapsed (real)
    time profiling on Unix (PR#18076).
  * filled.contour() gains a key.border argument.
  * tools::update_pkg_po() gets arguments pot_make and mo_make for
    _not_ re-making the corresponding files, and additionally a
    verbose argument.
  * Hexadecimal string colour specifications are now accepted in
    short form, so, for example, we can use "#123", which is
    equivalent to "#112233".
    Thanks to MikeFC for the original idea and Ella Kaye, Malcolm
    Barrett, George Stagg, and Hanne Oberman for the patch.
  * Plain-text help shows \var markup by angle brackets.
  * The new experimental primitive function declare() is intended to
    eventually allow information about R code to be communicated to
    the interpreter, compiler, and code analysis tools. The syntax
    for declarations is still being developed.
  * Functions psmirnov(), qsmirnov() and rsmirnov() in package stats
    have had argument two.sided renamed to alternative, to take into
    account that the permutation distributions of the one-sided
    statistics can be different in the case of ties.  Consequence of
    PR#18582.
  * sort() is now an implicit S4 generic in methods.
  * Formatting and printing, format(z), print(z), of complex vectors
    z no longer zap relatively small real or imaginary parts to zero,
    fixing PR#16752.  This is an API change, as it was documented
    previously to round real and imaginary parts together on purpose,
    producing nicer looking output.  As mentioned, e.g. in the PR,
    this change is compatible with many other "R-like" programming
    environments.
    We have simplified the internal code and now basically format the
    real and imaginary parts independently of each other.
  * New experimental functions Tailcall() and Exec() to support
    writing stack-space-efficient recursive functions.
  * Where characters are attempted to be plotted by pdf(),
    postscript() and xfig() which are not in the selected 8-bit
    character set (most often Latin-1) and the R session is using a
    UTF-8 locale, the warning messages will show the UTF-8 character
    rather than its bytes and one dot will be substituted per
    character rather than per byte.  (Platforms whose iconv() does
    transliteration silently plot the transliteration.)
    In a UTF-8 locale some transliterations are now done with a
    warning (e.g., dashes and Unicode minus to hyphen, ligatures are
    expanded, permille (‰) is replaced by o/oo), although the OS may
    have got there first.  These are warnings as they will continue
    to be replaced by dots in earlier versions of R.
  * The matrix multiplication functions crossprod() and tcrossprod()
    are now also primitive and S3 generic, as %*% had become in R
    4.3.0.
  * source() and example() have a new optional argument catch.aborts
    which allows continued evaluation of the R code after an error.
  * The non-Quartz tiff() devices allow additional types of
    compression if supported by the platform's libtiff library.
  * The list of base and recommended package names is now provided by
    tools::standard_package_names().
  * cairo_pdf() and cairo_ps() default to onefile = TRUE to closer
    match pdf() and postscript().
  * New option catch.script.errors provides a documented way to catch
    errors and then continue in non-interactive use.
  * L %||% R newly in base is an expressive idiom for the phrases
    if(!is.null(L)) L else R or if(is.null(L)) R else L.
  * The return value from warnings() now always inherits from
    "warnings" as documented, now also in the case of no warnings
    where it previously returned NULL.
  * as.complex("1i") now returns 0 + 1i instead of NA with a warning.
  * z &lt;- c(NA, 1i) now keeps the imaginary part Im(z[1]) == 0, no
    longer coercing to NA_complex_.  Similarly, cumsum(z) correctly
    sums real and imaginary parts separately, i.e., without
    "crosstalk" in case of NAs.
  * On Alpine Linux iconv() now maps "latin2", "latin-2", "latin9"
    and "latin-9" to encoding names the OS knows about
    (case-insensitively).
  * iconv(sub = "Unicode") now always zero-pads to four (hex) digits,
    rather than to 4 or 8.  (This seems to have become the convention
    once Unicode restricted the number of Unicode points to 2^21 - 1
    and so will never need more than 6 digits.)
  * NCOL(NULL) now returns 0 instead of 1, for consistency with
    cbind().
  * The information for the Euro glyph missing from the Adobe .afm
    files for the Courier, Helvetica and Times families has been
    copied from their URW equivalents - this will improve vertical
    centring in the pdf() and postscript() devices.
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.12.0.  The changes are almost entirely cosmetic.
  * The included LAPACK sources have been updated to version 3.12.0
    and some further double-complex routines added.
  * There are new font families for the 2014--5 URW 2.0 fonts (see
    ?pdf) which are included in recent versions of Ghostscript.
    These have font widths for most Greek glyphs and a few others
    which were missing from the original versions (whose font
    families remain available for reproducibility, although
    Ghostscript-based viewers will render using the 2.0 versions).
  * Improve the large-n efficiency of as.matrix(&lt;dist&gt;), thanks an R
    contributors effort, notably by Tim Taylor and Heather Turner,
    see PR#18660.
  * The default and numeric methods of all.equal() get a check.class
    option.
  * zapsmall() gets new optional arguments, function mFUN and min.d,
    for extra flexibility; fulfills a wish in PR#18199.  Also, it is
    now an implicit S4 generic in package methods.
  * The Rd filter for aspell() gains an ignore argument.
  * New generic function sort_by(), primarily useful for the
    data.frame method which can be used to sort rows of a data frame
    by one or more columns.
  * The icence headers for the RPC code in src/extra/xdr have been
    updated to use the GPL-compatible licence published by Oracle
    America in 2010.
  * New function pkg2HTML() in tools to create single-page HTML
    reference manuals for R packages.
  * The byte code evaluator now uses less C stack space for recursive
    calls to byte-compiled functions. It also makes more of an effort
    to avoid allocations for scalar return values.
  * New completion option backtick (disabled by default) allows
    non-syntactic completions to be wrapped in backquotes. This is
    currently only useful for Jupyter notebooks via the IRkernel
    package, and may cause problems for other backends.
  INSTALLATION:
  * The parser has been updated to work with bison 3.8.2, which is
    now used for the pre-generated parsers in gram.c, file.c, and
    gramRd.c. A few parser error messages have changed, which may
    affect code that relies on exact messages.
  INSTALLATION on a UNIX-ALIKE:
  * System valgrind headers are now required to use configure option
  - -with-valgrind-instrumentation with value 1 or 2.
  * configure will warn if it encounters a 32-bit build, as that is
    nowadays almost untested.
  * Environment variable R_SYSTEM_ABI is no longer used and so no
    longer recorded in etc/Renviron (it was not on Windows and was
    only ever used when preparing package tools).
  * If the libdeflate library and headers are available, libdeflate
    rather than libz is used to (de)compress R objects in lazy-load
    databases.  Typically tasks spend up to 5% of their time on such
    operations, although creating lazy-data databases is one of the
    exceptions.
    This can be suppressed if the library is available by the
    configure option --without-libdeflate-compression.
  * configure option --enable-lto=check has not worked reliably since
    2019 and has been removed.
  * The minimum autoconf requirement for a maintainer build has been
    increased to autoconf 2.71.
    It is intended to increase this to 2.72 for R 4.5.0: the
    distributed configure file was generated using 2.72.
  * The minimum version requirement for an external LAPACK has been
    reduced to 3.9.0.
  * No default C++ compiler is set if no C++17 compiler is detected:
    there is no longer an automatic fallback to C++14 or C++11.
    Compilers from the last five years should have sufficient
    support: for others macros CXX and CXXSTD can be set in file
    config.site to provide a fallback if needed.
    The Objective-C++ compiler now by default uses the standard
    selected by R for C++ (currently C++17) rather than the default
    standard for the C++ compiler (which on macOS is still C++98).
  INSTALLATION on macOS:
  * A new configure option --with-newAccelerate makes use of Apple's
    'new' BLAS / LAPACK interfaces in their Accelerate framework.
    Those interfaces are only available in macOS 13.3 or later, and
    building requires SDK 13.3 or later (from the Command Line Tools
    or Xcode 14.3 or later).
    By default the option uses new Accelerate for BLAS calls: to also
    use it for LAPACK use option --with-newAccelerate=lapack.  The
    later interfaces provide LAPACK 3.9.1 rather than 3.2.1: 3.9.1 is
    from 2021-04 and does not include the improved algorithms
    introduced in LAPACK 3.10.0 (including for BLAS calls).
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools44, an update of the Rtools43 toolchain.  It is
    based on GCC 13 and newer versions of MinGW-W64, binutils and
    libraries (targeting 64-bit Intel CPUs).  R-devel can no longer
    be built using Rtools43 without changes.
  * Rtools44 has experimental support for 64-bit ARM (aarch64) CPUs
    _via_ the LLVM 17 toolchain using lld, clang/flang-new and
    libc++.
  UTILITIES:
  * R CMD check notes when S4-style exports are used without
    declaring a strong dependence on package methods.
  * tools::checkRd() (used by R CMD check) detects more problems with
    \Sexpr-based dynamic content, including bad nesting of \Sexprs
    and invalid arguments.
  * tools::checkRd() now reports Rd titles and section names ending
    in a period; this is ignored by R CMD check unless environment
    variable _R_CHECK_RD_CHECKRD_MINLEVEL_ is set to -5 or smaller.
  * R CMD check now notes Rd files without an \alias, as long
    documented in 'Writing R Extensions' §1.3.1.  The check for a
    missing \description has been moved from tools::checkRd() to
    tools::checkRdContents().
  * R CMD check now visits inst/NEWS.Rd and OS-specific man
    subdirectories when checking Rd files.
  * tools::checkDocFiles() and tools::checkRdContents() now also
    check internal Rd files by default, but "specially" (ignoring
    missing documentation of arguments).
  * R CMD Rdiff gets option --useEx.
  * R CMD check now warns on non-portable uses of Fortran KIND such
    as INTEGER(KIND=4) and REAL(KIND=8).
    To see the failing lines set environment variable
    _R_CHECK_FORTRAN_KIND_DETAILS_ to a true value.
  * When checking Rd files, R CMD check now notes some of the "lost
    braces" that tools::checkRd() finds.  Typical problems are Rd
    macros missing the initial backslash (e.g., code{...}), in-text
    set notation (e.g., {1, 2}, where the braces need escaping), and
    \itemize lists with \describe-style entries of the form
    \item{label}{description}.
  * R CMD INSTALL (and hence check) will compile C++ code with
  - DR_NO_REMAP if environment variable _R_CXX_USE_NO_REMAP_ is set
    to a true value.  It is planned that this will in future become
    the default for compiling C++.
  * The new built-in Rd macro \dontdiff{} can be used to mark example
    code whose output should be ignored when comparing check output
    to reference output (tests/Examples/&lt;pkg&gt;-Ex.Rout.save).  The
    \dontdiff tag, like \donttest, is _not_ shown on the rendered
    help page, so provides a clean alternative to ##
    IGNORE_RDIFF_(BEGIN|END) comments.
  * R CMD build when there is no NAMESPACE, now uses the recommended
    exportPattern("^[^.]"), instead of exporting everything.
  * R CMD check now warns about non-ASCII characters in the NAMESPACE
    file (in addition to R files). Such packages are not portable and
    may fail to install on some platforms.
  C-LEVEL FACILITIES:
  * Headers R_ext/Applic.h and R-ext/Linpack.h used to include
    R_ext/BLAS.h although this was undocumented and unneeded by their
    documented entry points.  They no longer do so.
  * New function R_missing(), factored out from do_missing(), used to
    fix PR#18579.
  * SEXP type S4SXP has been renamed to OBJSXP to support
    experimenting with alternative object systems.  The S4SXP value
    can still be used in C code but is now deprecated.  Based on
    contributions from the R Consortium's Object-Oriented Programming
    Working Group.
  * New function pow1p(x,y) for accurate (1+x)^y.
  * mkCharLenCE was incorrectly documented to take a size_t length
    but was implemented with int (and character strings in R are
    limited to 2^31 - 1 bytes).
  DEPRECATED AND DEFUNCT:
  * data() no longer handles zipped data from long-defunct (since R
    2.13.0) --use-zip-data installations.
  * The legacy graphics devices pictex() and xfig() are now
    deprecated.  They do not support recent graphics enhancements and
    their font handling is rudimentary. The intention is to retain
    them for historical interest as long as they remain somewhat
    functional.
  * Support for encoding = "MacRoman" has been removed from the pdf()
    and postscript() devices - this was a legacy encoding supporting
    classic macOS up to 2001 and no longer has universal libiconv
    support.
  * is.R() is deprecated as no other S dialect is known to be in use
    (and this could only identify historical dialects, not future
    ones).
    Further information on calls can be obtained by setting the
    environment variable _R_DEPRECATED_IS_R_ to error which turns the
    deprecation warning into an error and so by default gives a
    traceback.  (This is done by R CMD check --as-cran.)
  * UseMethod() no longer forwards local variables assigned in the
    generic function into method call environments before evaluating
    the method body. This makes method calls behave more like
    standard function calls and makes method code easier to analyze
    correctly.
  * The twelve as.data.frame.&lt;class&gt;() methods which were deprecated
    only via _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ and in R CMD
    check --as-cran are formally deprecated now in favour of calling
    as.data.frame() or as.data.frame.vector().  The deprecation
    "check" now works also when as.data.frame() is S4 generic thanks
    to Ivan Krylov.
  * The default method for the directional comparison operators &lt;, &gt;,
    &lt;=, and &gt;= now signals an error when one of the operands is a
    language object, i.e. a symbol or a call.
  * For terms.formula(), deprecate abb and neg.out arguments
    _formally_ in addition to just documenting it.
  BUG FIXES:
  * The methods package is more robust to not being attached to the
    search path.  More work needs to be done.
  * pairwise.t.test() misbehaved when subgroups had 0 DF for
    variance, even with pool.sd = TRUE.  (PR#18594 by Jack Berry).
  * Probability distribution functions [dpq]&lt;distrib&gt;(x, *), but also
    bessel[IKJY](x, .) now consistently preserve attributes(x) when
    length(x) == 0, e.g., for a 2 x 0 matrix, thanks to Karolis
    Koncevičius' report PR#18509.
  * Group "Summary" computations such as sum(1:3, 4, na.rm = 5, NA,
    7, na.rm = LL) now give an error instead of either 17 or NN for
    LL true or false, as proposed by Ivan Krylov on the R-devel
    mailing list.  (This also means it is now an error to specify
    na.rm more than once.)
  * as.complex(x) now returns complex(real = x, imaginary = 0) for
    _all_ numerical and logical x, notably also for NA or
    NA_integer_.
  * Directories are now omitted by file.copy(, recursive = FALSE) and
    in file.append() (PR#17337).
  * gsub() and sub() are now more robust to integer overflow when
    reporting errors caused by too large input strings (PR#18346).
  * Top-level handlers are now more robust to attempts to remove a
    handler whilst handlers are running (PR#18508).
  * The handling of Alt+F4 in dialogs created on Windows using
    GraphApp has been fixed (PR#13870).
  * density() more consistently computes grid values for the
    FFT-based convolution, following Robert Schlicht's analysis and
    proposal in PR#18337, correcting density values typically by a
    factor of about 0.999.  Argument old.coords = TRUE provides back
    compatibility.
  * palette.colors() gains a name argument that defaults to FALSE
    controlling whether the vector of colours that is returned has
    names (where possible).  PR#18529.
  * tools::xgettext() no longer extracts the (non-translatable) class
    names from warningCondition and errorCondition calls.
  * S3method(&lt;gen&gt;, &lt;class&gt;, &lt;func&gt;) in the NAMESPACE file now works
    (again) when &lt;func&gt; is visible from the namespace, e.g.,
    imported, or in base.
  * getParseData(f) now also works for a function defined in the
    first of several &lt;pkg&gt;/R/*.R source files, thanks to Kirill
    Müller's report and Duncan Murdoch's patch in PR#16756.
  * Rd \Sexpr macros with nested #ifdef conditionals were not
    processed.
  * A non-blocking connection with non-default encoding (such as a
    socket) now correctly returns from readLines() after new data has
    arrived also when its EOF had been reached previously.  Thanks to
    Peter Meilstrup's report on R-devel and Ivan Krylov's report and
    patch proposal in PR#18555.
  * tools::checkRdContents() failed to detect empty argument
    descriptions when they spanned multiple lines, including those
    generated by prompt().  These cases are now noted by R CMD check.
  * Plain-text help no longer outputs spurious colons in the
    arguments list (for multi-line \item labels in the Rd source).
  * kappa() and rcond() work correctly in more cases; kappa(., norm =
    "2") now warns that it computes the 1-norm with (default) exact =
    FALSE; prompted by Mikael Jagan's quite comprehensive PR#18543.
  * Rd skeletons generated by prompt() or promptData() now use a
    dummy title (so R CMD build works).  tools::checkRdContents() has
    been updated to detect such template leftovers, including from
    promptPackage().
  * When S4 method dispatch fails because no method was found, the
    error message now includes the signature argument names; thanks
    to Michael Chirico's proposal on the R-devel list.
  * withAutoprint({ .. }) now preserves srcrefs previously lost,
    thanks to Andrew Simmons' report plus fix in PR#18572.
  * transform.data.frame() no longer adjusts names; in particular,
    untransformed variables are kept as-is, including those with
    syntactically invalid names (PR#17890).
  * The keep.source option for Rd \Sexpr blocks is no longer ignored.
  * The formula methods for t.test() and wilcox.test() now catch when
    paired is passed, addressing PR#14359; use Pair(x1, x2) ~ 1 for a
    paired test.
  * The level reported in the browser prompt was often too large. It
    now shows the number of browser contexts on the stack.
  * For cbind() and rbind(), the optional deparse.level argument is
    now properly passed to methods, thanks to Mikael Jagan's PR#18579
    and comments there.
  * Some error and warning messages for large ('long vector')
    matrix(v, nr, nc) and dim(m) &lt;- d are now correct about sizes,
    using long long formatting, fixing PR#18612 (and more) reported
    by Mikael Jagan.
  * readChar(useBytes = TRUE) now terminates strings even when the
    underlying connection uses extra spaces in the input buffer.
    This fixes problems with extra garbage seen with gzip
    connections, PR#18605.
  * Named capture in PCRE regular expressions now works also with
    more than 127 named groups (PR#18588).
  * Datetime functions are now robust against long jumps when dealing
    with internal time zone changes.  This avoids confusing warnings
    about an invalid time zone, previously triggered by turning
    warnings into errors or handling them via tryCatch (PR#17966,
    PR#17780).
  * Datetime functions now restore even an empty TZ environment
    variable after internal time zone changes (PR#17724).  This makes
    results of datetime functions with this (typically unintentional)
    setting more predictable.
  * drop.terms(*) now drops response as by default, keep.response =
    FALSE, fixing PR#18564 thanks to Mikael Jagan.
  * dummy.coef(.) now also works for lm()-models with character
    categorical predictor variables rather than factor ones, fixing
    PR#18635 reported by Jinsong Zhao.
  * formals(f) &lt;- formals(f) now also works for a function w/o
    arguments and atomic _constant_ body(f).
  * Correct as.function(&lt;invalid list&gt;, .)'s error message.
  * removeSource() is yet more thorough in finding and removing
    "srcref" and the other source references from parsed R language
    chunks, fixing PR#18638 thanks to Andrew Simmons.
  * dgeom() is more accurate now, notably when its result is very
    small, fixing PR#18642 thanks to the proposal of Morten Welinder,
    also improving other instances where C level binom_raw(x, n, ..)
    has x == 0 or x== n.
  * warning() with options(warn = 1) has improved output for
    multi-line messages.
  * axis.Date() and axis.POSIXct() now respect the par("lab") setting
    for the number of pretty() intervals.
  * Comparisons for language objects (which are based on deparsing)
    are now more careful about using accurate deparsed results
    (PR#18676).
  * Plain-text help (Rd2txt) now correctly preserves blank lines
    following single-line \dontrun code.
  * &lt;POSIXlt&gt;[*] no longer sets wrong "balanced" attribute, fixing
    PR#18681 thanks to Mikael Jagan.
  * str(&lt;classed-call&gt;) now deparses the call as expected, fixing
    PR#18684, reported by Dave Slager.
  * In Rd examples, code following the closing brace of a \dontrun,
    \dontshow or \donttest tag on the same line is no longer skipped
    when R CMD check runs the examples.
  * as.data.frame(matrix(*, ncol=0)) now gets valid names() and
    colnames(); reported by Davis Vaughan on the R-devel list.
  * Internal Mathlib function stirlerr(n) is now almost fully
    (52-bit) accurate for all n &gt;= ~5.9 and more accurate also in the
    range 1 -- 5.9.  This entails small ("after 12th decimal")
    changes in density functions, e.g., dgamma() in _some_ regions of
    their support.  The fix was partly prompted by Morten Welinder's
    PR#18640.
  * Numbers like 9876543.2 are now considered non-integer by Mathlib
    internal R_nonint(), amending original fix of PR#15734.
  * Rd comment lines no longer cause broken paragraphs in the
    rendered PDF and plain-text help. In code blocks, pure comment
    lines (starting with %) no longer produce an empty line.
  * xtabs(Freq ~ .) now consistently defaults to na.action = na.pass,
    using na.rm = FALSE (added as an argument) when summing over Freq
    (PR#17770).
  * tools::testInstalledPackage() is no longer silent about failures
    from running examples or tests and its return code no longer
    ignores failures from checking vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1718366400">- CHANGES IN R 4.4.1:
  C-LEVEL FACILITIES:
  * Functions R_atof and R_strtod declared in header R_ext/Utils.h
    are now documented in 'Writing R Extensions' and so formally part
    of the API.
  * The non-API entry points Rf_setSVector, Rf_StringFalse,
    Rf_StringTrue and Rf_isBlankString have been added to those
    reported by R CMD check.
  * The new function Rf_allocLang is now available. This provides an
    alternative to the idiom of calling Rf_allocList followed by
    SET_TYPEOF.
  UTILITIES:
  * R CMD check now reports as warnings what gfortran calls 'Fortran
    2018 deleted features', all of which have long been marked as
    'obsolescent' and some of which were deleted in Fortran 2008 or
    earlier.  Fortran compilers are no longer required to support
    these.
  BUG FIXES:
  * as.numeric(), scan(), type.convert() and other places which use
    the internal C function R_strtod now require a _non-empty_ digit
    sequence in a decimal or binary exponent.  This aligns with the
    C/POSIX standard for strtod and with ?NumericConstants.
  * as.data.frame(m, make.names=NA) now works correctly for a matrix
    m with NA's in row names.
  * The error message from &lt;POSIXlt&gt;[["hour"]] and similar now
    mentions *[[, "hour"]], as wished for in PR#17409 and proposed by
    Michael Chirico.
  * qbinom() and potentially qpois(), qnbinom(), no longer sometimes
    fail accurate inversion (of pbinom(), etc), thanks to Christopher
    Chang's report and patch in PR#18711.
  * The internal help server on Windows can again serve requests sent
    in quick succession, fixing a regression in R 4.4.0.
  * debugcall(&lt;S3Generic&gt;()) now also works when a corresponding
    S4-generic version is in the methods cache (PR#18143).
  * Package tools' toTitleCase(ch0) now returns character(0) when ch0
    is of zero length; fixing PR#18724, reported by David Hugh Jones.
  * R CMD check is no longer broken (without a check result and no
    explanation in 00check.log) for a package which declares an
    invalid VignetteBuilder in DESCRIPTION but has no vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1730376000">- CHANGES IN R 4.4.2:
  C-LEVEL FACILITIES:
  * The S-compatibility macros F77_COM and F77_COMDECL defined in
    header R_ext/RS.h are deprecated and will be removed shortly.  We
    could find no record of their use.
  BUG FIXES:
  * Mathlib function lgammacor(x) no longer warns about underflow to
    zero for large x.
  * Text widths and heights were incorrectly reported by the Quartz
    device if the drawing context didn't exist yet (typically when
    drawing off-screen to a window that is yet to appear, see
    PR#18591).
  * The Quartz device could segfault in cases where paths with spaces
    are used in the new glyph drawing API.  Thanks to Tomek
    Gieorgijewski (PR#18758).
  * On macOS in R CRAN builds, it is again possible to read
    little-endian UTF-16 text with a BOM from a connection using
    encoding="UTF-16".  Users building R from source should avoid
    using the system libiconv in macOS 14.1 and later.
  * methods' internal .requirePackage() now re-enables primitive
    method dispatch when needed; thanks to Ivan Krylov for
    demystifying CRAN package check failures on the R-devel mailing
    list.</changelog>
</package>
<package pkgid="7c0b2ff0046e0611577b1335533e3993665762cb64aab6b680b0b8a2be9ecad1e16f02abe0a11330df59f810d6d9c6cf8836d51e719064a0bfc97eb7c75b02ee" name="R-nnet-debuginfo" arch="i586">
  <version epoch="0" ver="7.3.19" rel="51.0.2.2.sr20241103"/>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1620302400">- To get in sync with d:l:R:autoCRAN the Matrix package's split
  in -devel was reversed.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339200">- improved spec file according to comments of dimstar in
  https://build.opensuse.org/request/show/892685</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339201">- CHANGES IN R 4.1.0:
  FUTURE DIRECTIONS:
  * It is planned that the 4.1.x series will be the last to support
    32-bit Windows, with production of binary packages for that
    series continuing until early 2023.
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Data set esoph in package datasets now provides the correct
    numbers of controls; previously it had the numbers of cases added
    to these.  (Reported by Alexander Fowler in PR#17964.)
  NEW FEATURES:
  * www.omegahat.net is no longer one of the repositories known by
    default to setRepositories().  (Nowadays it only provides source
    packages and is often unavailable.)
  * Function package_dependencies() (in package tools) can now use
    different dependency types for direct and recursive dependencies.
  * The checking of the size of tarball in R CMD check --as-cran
    &lt;pkg&gt; may be tweaked via the new environment variable
    _R_CHECK_CRAN_INCOMING_TARBALL_THRESHOLD_, as suggested in
    PR#17777 by Jan Gorecki.
  * Using c() to combine a factor with other factors now gives a
    factor, an ordered factor when combining ordered factors with
    identical levels.
  * apply() gains a simplify argument to allow disabling of
    simplification of results.
  * The format() method for class "ftable" gets a new option justify.
    (Suggested by Thomas Soeiro.)
  * New ...names() utility.  (Proposed by Neal Fultz in PR#17705.)
  * type.convert() now warns when its as.is argument is not
    specified, as the help file always said it _should_.  In that
    case, the default is changed to TRUE in line with its change in
    read.table() (related to stringsAsFactor) in R 4.0.0.
  * When printing list arrays, classed objects are now shown _via_
    their format() value if this is a short enough character string,
    or by giving the first elements of their class vector and their
    length.
  * capabilities() gets new entry "Rprof" which is TRUE when R has
    been configured with the equivalent of --enable-R-profiling (as
    it is by default).  (Related to Michael Orlitzky's report
    PR#17836.)
  * str(xS4) now also shows extraneous attributes of an S4 object
    xS4.
  * Rudimentary support for vi-style tags in rtags() and R CMD rtags
    has been added.  (Based on a patch from Neal Fultz in PR#17214.)
  * checkRdContents() is now exported from tools; it and also
    checkDocFiles() have a new option chkInternal allowing to check
    Rd files marked with keyword "internal" as well.  The latter can
    be activated for R CMD check via environment variable
    _R_CHECK_RD_INTERNAL_TOO_.
  * New functions numToBits() and numToInts() extend the raw
    conversion utilities to (double precision) numeric.
  * Functions URLencode() and URLdecode() in package utils now work
    on vectors of URIs.  (Based on patch from Bob Rudis submitted
    with PR#17873.)
  * path.expand() can expand ~user on most Unix-alikes even when
    readline is not in use.  It tries harder to expand ~, for example
    should environment variable HOME be unset.
  * For HTML help (both dynamic and static), Rd file links to help
    pages in external packages are now treated as references to
    topics rather than file names, and fall back to a file link only
    if the topic is not found in the target package. The earlier rule
    which prioritized file names over topics can be restored by
    setting the environment variable _R_HELP_LINKS_TO_TOPICS_ to a
    false value.
  * c() now removes NULL arguments before dispatching to methods,
    thus simplifying the implementation of c() methods, _but_ for
    back compatibility keeps NULL when it is the first argument.
    (From a report and patch proposal by Lionel Henry in PR#17900.)
  * Vectorize()'s result function's environment no longer keeps
    unneeded objects.
  * Function ...elt() now propagates visibility consistently with
    ..n.  (Thanks to Lionel Henry's PR#17905.)
  * capture.output() no longer uses non-standard evaluation to
    evaluate its arguments.  This makes evaluation of functions like
    parent.frame() more consistent.  (Thanks to Lionel Henry's
    PR#17907.)
  * packBits(bits, type="double") now works as inverse of
    numToBits().  (Thanks to Bill Dunlap's proposal in PR#17914.)
  * curlGetHeaders() has two new arguments, timeout to specify the
    timeout for that call (overriding getOption("timeout")) and TLS
    to specify the minimum TLS protocol version to be used for
    https:// URIs (_inter alia_ providing a means to check for sites
    using deprecated TLS versions 1.0 and 1.1).
  * For nls(), an optional constant scaleOffset may be added to the
    denominator of the relative offset convergence test for cases
    where the fit of a model is expected to be exact, thanks to a
    proposal by John Nash.  nls(*, trace=TRUE) now also shows the
    convergence criterion.
  * Numeric differentiation _via_ numericDeriv() gets new optional
    arguments eps and central, the latter for taking central divided
    differences.  The latter can be activated for nls() via
    nls.control(nDcentral = TRUE).
  * nls() now passes the trace and control arguments to getInitial(),
    notably for all self-starting models, so these can also be fit in
    zero-noise situations via a scaleOffset.  For this reason, the
    initial function of a selfStart model must now have ... in its
    argument list.
  * bquote(splice = TRUE) can now splice expression vectors with
    attributes: this makes it possible to splice the result of
    parse(keep.source = TRUE).  (Report and patch provided by Lionel
    Henry in PR#17869.)
  * textConnection() gets an optional name argument.
  * get(), exists(), and get0() now signal an error if the first
    argument has length greater than 1.  Previously additional
    elements were silently ignored.  (Suggested by Antoine Fabri on
    R-devel.)
  * R now provides a shorthand notation for creating functions, e.g.
    \(x) x + 1 is parsed as function(x) x + 1.
  * R now provides a simple native forward pipe syntax |&gt;.  The
    simple form of the forward pipe inserts the left-hand side as the
    first argument in the right-hand side call.  The pipe
    implementation as a syntax transformation was motivated by
    suggestions from Jim Hester and Lionel Henry.
  * all.equal(f, g) for functions now by default also compares their
    environment(.)s, notably via new all.equal method for class
    function.  Comparison of nls() fits, e.g., may now need
    all.equal(m1, m2, check.environment = FALSE).
  * .libPaths() gets a new option include.site, allowing to _not_
    include the site library.  (Thanks to Dario Strbenac's suggestion
    and Gabe Becker's PR#18016.)
  * Lithuanian translations are now available.  (Thanks to Rimantas
    Zakauskas.)
  * names() now works for DOTSXP objects.  On the other hand, in
    R-lang, the R language manual, we now warn against relying on the
    structure or even existence of such dot-dot-dot objects.
  * all.equal() no longer gives an error on DOTSXP objects.
  * capabilities("cairo") now applies only to the file-based devices
    as it is now possible (if very unusual) to build R with Cairo
    support for those but not for X11().
  * There is optional support for tracing the progress of
    loadNamespace() - see its help.
  * (Not Windows.)  l10n_info() reports an additional element, the
    name of the encoding as reported by the OS (which may differ from
    the encoding part (if any) of the result from
    Sys.getlocale("LC_CTYPE").
  * New function gregexec() which generalizes regexec() to find _all_
    disjoint matches and well as all substrings corresponding to
    parenthesized subexpressions of the given regular expression.
    (Contributed by Brodie Gaslam.)
  * New function charClass() in package utils to query the
    wide-character classification functions in use (such as
    iswprint).
  * The names of quantile()'s result no longer depend on the global
    getOption("digits"), but quantile() gets a new optional argument
    digits = 7 instead.
  * grep(), sub(), regexp and variants work considerably faster for
    long factors with few levels.  (Thanks to Michael Chirico's
    PR#18063.)
  * Provide grouping of x11() graphics windows within a window
    manager such as Gnome or Unity; thanks to a patch by Ivan Krylov
    posted to R-devel.
  * The split() method for class data.frame now allows the f argument
    to be specified as a formula.
  * sprintf now warns on arguments unused by the format string.
  * New palettes "Rocket" and "Mako" for hcl.colors() (approximating
    palettes of the same name from the 'viridisLite' package).
    Contributed by Achim Zeileis.
  * The base environment and its namespace are now locked (so one can
    no longer add bindings to these or remove from these).
  * Rterm handling of multi-byte characters has been improved,
    allowing use of such characters when supported by the current
    locale.
  * Rterm now accepts ALT+ +xxxxxxxx sequences to enter Unicode
    characters as hex digits.
  * Environment variable LC_ALL on Windows now takes precedence over
    LC_CTYPE and variables for other supported categories, matching
    the POSIX behaviour.
  * duplicated() and anyDuplicated() are now optimized for integer
    and real vectors that are known to be sorted via the ALTREP
    framework. Contributed by Gabriel Becker via PR#17993.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 14
    and so packages that provide graphics devices should be
    reinstalled.
  * Graphics devices should now specify deviceVersion to indicate
    what version of the graphics engine they support.
  * Graphics devices can now specify deviceClip.  If TRUE, the
    graphics engine will never perform any clipping of output itself.
    The clipping that the graphics engine does perform (for both
    canClip = TRUE and canClip = FALSE) has been improved to avoid
    producing unnecessary artifacts in clipped output.
  * The grid package now allows gpar(fill) to be a linearGradient(),
    a radialGradient(), or a pattern().  The viewport(clip) can now
    also be a grob, which defines a clipping path, and there is a new
    viewport(mask) that can also be a grob, which defines a mask.
    These new features are only supported so far on the Cairo-based
    graphics devices and on the pdf() device.
  * (Not Windows.)  A warning is given when a Cairo-based type is
    specified for a png(), jpeg(), tiff() or bmp() device but Cairo
    is unsupported (so type = "Xlib" is tried instead).
  * grSoftVersion() now reports the versions of FreeType and
    FontConfig if they are used directly (not _via_ Pango), as is
    most commonly done on macOS.
  C-LEVEL FACILITIES:
  * The _standalone_ libRmath math library and R's C API now provide
    log1pexp() again as documented, and gain log1mexp().
  INSTALLATION on a UNIX-ALIKE:
  * configure checks for a program pkgconf if program pkg-config is
    not found.  These are now only looked for on the path (like
    almost all other programs) so if needed specify a full path to
    the command in PKG_CONFIG, for example in file config.site.
  * C99 function iswblank is required - it was last seen missing ca
    2003 so the workaround has been removed.
  * There are new configure options --with-internal-iswxxxxx,
  - -with-internal-towlower and --with-internal-wcwidth which allows
    the system functions for wide-character classification,
    case-switching and width (wcwidth and wcswidth) to be replaced by
    internal ones.  The first has long been used on macOS, AIX (and
    Windows) but this enables it to be unselected there and selected
    for other platforms (it is the new default on Solaris).  The
    second is new in this version of R and is selected by default on
    macOS and Solaris.  The third has long been the default and
    remains so as it contains customizations for East Asian
    languages.
    System versions of these functions are often minimally
    implemented (sometimes only for ASCII characters) and may not
    cover the full range of Unicode points: for example Solaris (and
    Windows) only cover the Basic Multilingual Plane.
  * Cairo installations without X11 are more likely to be detected by
    configure, when the file-based Cairo graphics devices will be
    available but not X11(type = "cairo").
  * There is a new configure option --with-static-cairo which is the
    default on macOS.  This should be used when only static cairo
    (and where relevant, Pango) libraries are available.
  * Cairo-based graphics devices on platforms without Pango but with
    FreeType/FontConfig will make use of the latter for font
    selection.
  LINK-TIME OPTIMIZATION on a UNIX-ALIKE:
  * Configuring with flag --enable-lto=R now also uses LTO when
    installing the recommended packages.
  * R CMD INSTALL and R CMD SHLIB have a new flag --use-LTO to use
    LTO when compiling code, for use with R configured with
  - -enable-lto=R.  For R configured with --enable-lto, they have
    the new flag --no-use-LTO.
    Packages can opt in or out of LTO compilation _via_ a UseLTO
    field in the DESCRIPTION file.  (As usual this can be overridden
    by the command-line flags.)
  BUILDING R on Windows:
  * for GCC &gt;= 8, FC_LEN_T is defined in config.h and hence character
    lengths are passed from C to Fortran in _inter alia_ BLAS and
    LAPACK calls.
  * There is a new text file src/gnuwin32/README.compilation, which
    outlines how C/Fortran code compilation is organized and
    documents new features:
  * R can be built with Link-Time Optimization with a suitable
    compiler - doing so with GCC 9.2 showed several
    inconsistencies which have been corrected.
  * There is support for cross-compiling the C and Fortran code
    in R and standard packages on suitable (Linux) platforms.
    This is mainly intended to allow developers to test later
    versions of compilers - for example using GCC 9.2 or 10.x has
    detected issues that GCC 8.3 in Rtools40 does not.
  * There is experimental support for cross-building R packages
    with C, C++ and/or Fortran code.
  * The R installer can now be optionally built to support a single
    architecture (only 64-bit or only 32-bit).
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++14 where
    available (which it is on all currently checked platforms): if
    not (as before) C++11 is used if available otherwise C++ is not
    supported.
    Packages which specify C++11 will still be installed using C++11.
    C++14 compilers may give deprecation warnings, most often for
    std::random_shuffle (deprecated in C++14 and removed in C++17).
    Either specify C++11 (see 'Writing R Extensions') or modernize
    the code and if needed specify C++14.  The latter has been
    supported since R 3.4.0 so the package's DESCRIPTION would need
    to include something like
    Depends: R (&gt;= 3.4)
  PACKAGE INSTALLATION on Windows:
  * R CMD INSTALL and R CMD SHLIB make use of their flag --use-LTO
    when the LTO_OPT make macro is set in file etc/${R_ARCH}/Makeconf
    or in a personal/site Makevars file.  (For details see 'Writing R
    Extensions' SS4.5.)
    This provides a valuable check on code consistency.  It does work
    with GCC 8.3 as in Rtools40, but that does not detect everything
    the CRAN checks with current GCC do.
  PACKAGE INSTALLATION on macOS:
  * The default personal library directory on builds with
  - -enable-aqua (including CRAN builds) now differs by CPU type,
    one of
    ~/Library/R/x86_64/x.y/library
    ~/Library/R/arm64/x.y/library
    This uses the CPU type R (and hence the packages) were built for,
    so when a x86_64 build of R is run under Rosetta emulation on an
    arm64 Mac, the first is used.
  UTILITIES:
  * R CMD check can now scan package functions for bogus return
    statements, which were possibly intended as return() calls (wish
    of PR#17180, patch by Sebastian Meyer). This check can be
    activated via the new environment variable
    _R_CHECK_BOGUS_RETURN_, true for --as-cran.
  * R CMD build omits tarballs and binaries of previous builds from
    the top-level package directory.  (PR#17828, patch by Sebastian
    Meyer.)
  * R CMD check now runs sanity checks on the use of LazyData, for
    example that a data directory is present and that
    LazyDataCompression is not specified without LazyData and has a
    documented value.  For packages with large LazyData databases
    without specifying LazyDataCompression, there is a reference to
    the code given in 'Writing R Extensions' SS1.1.6 to test the
    choice of compression (as in all the CRAN packages tested a
    non-default method was preferred).
  * R CMD build removes LazyData and LazyDataCompression fields from
    the DESCRIPTION file of packages without a data directory.
  ENCODING-RELATED CHANGES:
  * The parser now treats \Unnnnnnnn escapes larger than the upper
    limit for Unicode points (\U10FFFF) as an error as they cannot be
    represented by valid UTF-8.
    Where such escapes are used for outputting non-printable
    (including unassigned) characters, 6 hex digits are used (rather
    than 8 with leading zeros).  For clarity, braces are used, for
    example \U{0effff}.
  * The parser now looks for non-ASCII spaces on Solaris (as
    previously on most other OSes).
  * There are warnings (including from the parser) on the use of
    unpaired surrogate Unicode points such as \uD834.  (These cannot
    be converted to valid UTF-8.)
  * Functions nchar(), tolower(), toupper() and chartr() and those
    using regular expressions have more support for inputs with a
    marked Latin-1 encoding.
  * The character-classification functions used (by default) to
    replace the system iswxxxxx functions on Windows, macOS and AIX
    have been updated to Unicode 13.0.0.
    The character-width tables have been updated to include new
    assignments in Unicode 13.0.0.
  * The code for evaluating default (extended) regular expressions
    now uses the same character-classification functions as the rest
    of R (previously they differed on Windows, macOS and AIX).
  * There is a build-time option to replace the system's
    wide-character wctrans C function by tables shipped with R: use
    configure option --with-internal-towlower or (on Windows)
  - DUSE_RI18N_CASE in CFLAGS when building R.  This may be needed
    to allow tolower() and toupper() to work with Unicode characters
    beyond the Basic Multilingual Plane where not supported by system
    functions (e.g. on Solaris where it is the new default).
  * R is more careful when truncating UTF-8 and other multi-byte
    strings that are too long to be printed, passed to the system or
    libraries or placed into an internal buffer.  Truncation will no
    longer produce incomplete multibyte characters.
  DEPRECATED AND DEFUNCT:
  * Function plclust() from the package stats and
    package.dependencies(), pkgDepends(), getDepList(),
    installFoundDepends(), and vignetteDepends() from package tools
    are defunct.
  * Defunct functions checkNEWS() and readNEWS() from package tools
    and CRAN.packages() from utils have been removed.
  * R CMD config CXXCPP is defunct (it was deprecated in R 3.6.2).
  * parallel::detectCores() drops support for Irix (retired in 2013).
  * The LINPACK argument to chol.default(), chol2inv(),
    solve.default() and svd() has been defunct since R 3.1.0.  It was
    silently ignored up to R 4.0.3 but now gives an error.
  * Subsetting/indexing, such as ddd[*] or ddd$x on a DOTSXP
    (dot-dot-dot) object ddd has been disabled; it worked by accident
    only and was undocumented.
  BUG FIXES:
  * Many more C-level allocations (mainly by malloc and strdup) are
    checked for success with suitable alternative actions.
  * Bug fix for replayPlot(); this was turning off graphics engine
    display list recording if a recorded plot was replayed in the
    same session.  The impact of the bug became visible if resize the
    device after replay OR if attempted another savePlot() after
    replay (empty display list means empty screen on resize or empty
    saved plot).
  * R CMD check etc now warn when a package exports non-existing S4
    classes or methods, also in case of no "methods" presence.
    (Reported by Alex Bertram; reproducible example and patch by
    Sebastian Meyer in PR#16662.)
  * boxplot() now also accepts calls for labels such as ylab, the
    same as plot().  (Reported by Marius Hofert.)
  * The help page for xtabs() now correctly states that addNA is
    setting na.action = na.pass among others.  (Reported as PR#17770
    by Thomas Soeiro.)
  * The R CMD check &lt;pkg&gt; gives a longer and more comprehensible
    message when DESCRIPTION misses dependencies, e.g., in Imports:.
    (Thanks to the contributors of PR#17179.)
  * update.default() now calls the generic update() on the formula to
    work correctly for models with extended formulas.  (As reported
    and suggested by Neal Fultz in PR#17865.)
  * The horizontal position of leaves in a dendrogram is now correct
    also with center = FALSE.  (PR#14938, patch from Sebastian
    Meyer.)
  * all.equal.POSIXt() no longer warns about and subsequently ignores
    inconsistent "tzone" attributes, but describes the difference in
    its return value (PR#17277).  This check can be disabled _via_
    the new argument check.tzone = FALSE as suggested by Sebastian
    Meyer.
  * as.POSIXct() now populates the "tzone" attribute from its tz
    argument when x is a logical vector consisting entirely of NA
    values.
  * x[[2^31]] &lt;- v now works.  (Thanks to the report and patch by
    Suharto Anggono in PR#17330.)
  * In log-scale graphics, axis() ticks and label positions are now
    computed more carefully and symmetrically in their range,
    typically providing _more_ ticks, fulfilling wishes in PR#17936.
    The change really corresponds to an improved axisTicks() (package
    grDevices), potentially influencing grid and lattice, for
    example.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now correct to at
    least five digits where it was catastrophically wrong,
    previously.
  * sum(df) and similar "Summary"- and "Math"-group member functions
    now work for data frames df with logical columns, notably also of
    zero rows.  (Reported to R-devel by Martin "b706".)
  * unsplit() had trouble with tibbles due to unsound use of rep(NA,
    len)-indexing, which should use NA_integer_ (Reported to R-devel
    by Mario Annau.)
  * pnorm(x, log.p = TRUE) underflows to -Inf slightly later.
  * show(&lt;hidden S4 generic&gt;) prints better and without quotes for
    non-hidden S4 generics.
  * read.table() and relatives treated an "NA" column name as missing
    when check.names = FALSE PR#18007.
  * Parsing strings containing UTF-16 surrogate pairs such as
    "\uD834\uDD1E" works better on some (uncommon) platforms.
    sprintf("%X", utf8ToInt("\uD834\uDD1E")) should now give "1D11E"
    on all platforms.
  * identical(x,y) is no longer true for differing DOTSXP objects,
    fixing PR#18032.
  * str() now works correctly for DOTSXP and related exotics, even
    when these are doomed.
    Additionally, it no longer fails for lists with a class and
    "irregular" method definitions such that e.g. lapply(*) will
    necessarily fail, as currently for different igraph objects.
  * Too long lines in environment files (e.g. Renviron) no longer
    crash R. This limit has been increased to 100,000 bytes.
    (PR#18001.)
  * There is a further workaround for FreeType giving incorrect
    italic font faces with cairo-based graphics devices on macOS.
  * add_datalist(*, force = TRUE) (from package tools) now actually
    updates an existing data/datalist file for new content.  (Thanks
    to a report and patch by Sebastian Meyer in PR#18048.)
  * cut.Date() and cut.POSIXt() could produce an empty last interval
    for breaks = "months" or breaks = "years".  (Reported as PR#18053
    by Christopher Carbone.)
  * Detection of the encoding of 'regular' macOS locales such as
    en_US (which is UTF-8) had been broken by a macOS change:
    fortunately these are now rarely used with en_US.UTF-8 being
    preferred.
  * sub() and gsub(pattern, repl, x, *) now keep attributes of x such
    as names() also when pattern is NA (PR#18079).
  * Time differences ("difftime" objects) get a replacement and a
    rep() method to keep "units" consistent.  (Thanks to a report and
    patch by Nicolas Bennett in PR#18066.)
  * The \RdOpts macro, setting defaults for \Sexpr options in an Rd
    file, had been ineffective since R 2.12.0: it now works again.
    (Thanks to a report and patch by Sebastian Meyer in PR#18073.)
  * mclapply and pvec no longer accidentally terminate parallel
    processes started before by mcparallel or related calls in
    package parallel (PR#18078).
  * grep and other functions for evaluating (extended) regular
    expressions handle in Unicode also strings not explicitly flagged
    UTF-8, but flagged native when running in UTF-8 locale.
  * Fixed a crash in fifo implementation on Windows (PR#18031).
  * Binary mode in fifo on Windows is now properly detected from
    argument open (PR#15600, PR#18031).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1622808000">- The line %{__install} -m 755 -d %{_infodir}
  no longer works in TW or Factory.
  But without that line it works everywhere. So this instruction
  was commented out of the spec file.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1628596800">- CHANGES IN R 4.1.1:
  NEW FEATURES:
  * require(pkg, quietly = TRUE) is quieter and in particular does
    not warn if the package is not found.
  DEPRECATED AND DEFUNCT:
  * Use of ftp:// URIs should be regarded as deprecated, with
    on-going support confined to method = "libcurl" and not routinely
    tested.  (Nowadays no major browser supports them.)
  * The non-default method = "internal" is deprecated for http:// and
    ftp:// URIs for both download.file and url.
  * On Windows, method = "wininet" is deprecated for http://,
    https:// and ftp:// URIs for both download.file and url.  (A
    warning is only given for ftp://.)
    For ftp:// URIs the default method is now "libcurl" if available
    (which it is on CRAN builds).
    method = "wininet" remains the default for http:// and https://
    URIs but if libcurl is available, using method = "libcurl" is
    preferred.
  INSTALLATION:
  * make check now works also without a LaTeX installation.  (Thanks
    to Sebastian Meyer's PR#18103.)
  BUG FIXES:
  * make check-devel works again in an R build configured with
  - -without-recommended-packages.
  * qnbinom(p, size, mu) for large size/mu is correct now in a range
    of cases (PR#18095); similarly for the (size, prob)
    parametrization of the negative binomial.  Also qpois() and
    qbinom() are better and or faster for extreme cases.  The
    underlying C code has been modularized and is common to all four
    cases of discrete distributions.
  * gap.axis is now part of the axis() arguments which are passed
    from bxp(), and hence boxplot().  (Thanks to Martin Smith's
    report and suggestions in PR#18109.)
  * .First and .Last can again be set from the site profile.
  * seq.int(from, to, *) and seq.default(..) now work better in large
    range cases where from-to is infinite where the two boundaries
    are finite.
  * all.equal(x,y) now returns TRUE correctly also when several
    entries of abs(x) and abs(y) are close to .Machine$double.xmax,
    the largest finite numeric.
  * model.frame() now clears the object bit when removing the class
    attribute of a value via na.action (PR#18100).
  * charClass() now works with multi-character strings on Windows
    (PR#18104, fixed by Bill Dunlap).
  * encodeString() on Solaris now works again in Latin-1 encoding on
    characters represented differently in UTF-8.  Support for
    surrogate pairs on Solaris has been improved.
  * file.show() on Windows now works with non-ASCII path names
    representable in the current native encoding (PR#18132).
  * Embedded R on Windows can now find R home directory via the
    registry even when installed only for the current user
    (PR#18135).
  * pretty(x) with finite x now returns finite values also in the
    case where the extreme x values are close in size to the maximal
    representable number .Machine$double.xmax.
    Also, it's been tweaked for very small ranges and when a boundary
    is close (or equal) to zero; e.g., pretty(c(0,1e-317)) no longer
    has negative numbers, currently still warning about a very small
    range, and pretty(2^-(1024 - 2^-1/(c(24,10)))) is more accurate.
  * The error message for not finding vignette files when weaving has
    correct file sizes now. (Thanks to Sebastian Meyer's PR#18154.)
  * dnbinom(20, &lt;large&gt;, 1) now correctly gives 0, and similar cases
    are more accurate with underflow precaution.  (Reported by Francisco Vera Alcivar in PR#18072.)</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635163200">- repaired https://bugzilla.suse.com/show_bug.cgi?id=1191380
  (rpmacros now go to rpmmacrodir)
- minor clean-ups in spec file</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635768000">- CHANGES IN R 4.1.2:
  C-LEVEL FACILITIES:
  * The workaround in headers R.h and Rmath.h (using namespace std;)
    for the Oracle Developer Studio compiler is no longer needed now
    C++11 is required so has been removed.  A couple more usages of
    log() (which should have been std::log()) with an int argument
    are reported on Solaris.
  * The undocumented limit of 4095 bytes on messages from the
    S-compatibility macros PROBLEM and MESSAGE is now documented and
    longer messages will be silently truncated rather than
    potentially causing segfaults.
  * If the R_NO_SEGV_HANDLER environment variable is non-empty, the
    signal handler for SEGV/ILL/BUS signals (which offers recovery
    user interface) is not set. This allows more reliable debugging
    of crashes that involve the console.
  DEPRECATED AND DEFUNCT:
  * The legacy S-compatibility macros PROBLEM, MESSAGE, ERROR, WARN,
    WARNING, RECOVER, ... are deprecated and will be hidden in R
    4.2.0. R's native interface of Rf_error and Rf_warning has long
    been preferred.
  BUG FIXES:
  * .mapply(F, dots, .) no longer segfaults when dots is not a list
    and uses match.fun(F) as always documented; reported by Andrew
    Simmons in PR#18164.
  * hist(&lt;Date&gt;, ...) and hist(&lt;POSIXt&gt;, ...)  no longer pass
    arguments for rect() (such as col and density) to axis().
    (Thanks to Sebastian Meyer's PR#18171.)
  * \Sexpr{ch} now preserves Encoding(ch). (Thanks to report and
    patch by Jeroen Ooms in PR#18152.)
  * Setting the RNG to "Marsaglia-Multicarry" e.g., by RNGkind(), now
    warns in more places, thanks to Andr'e Gillibert's report and
    patch in PR#18168.
  * gray(numeric(), alpha=1/2) no longer segfaults, fixing PR#18183,
    reported by Till Krenz.
  * Fixed dnbinom(x, size=&lt;very_small&gt;, .., log=TRUE) regression,
    reported by Martin Morgan.
  * as.Date.POSIXlt(x) now keeps names(x), thanks to Davis Vaughan's
    report and patch in PR#18188.
  * model.response() now strips an "AsIs" class typically, thanks to
    Duncan Murdoch's report and other discussants in PR#18190.
  * try() is considerably faster in case of an error and long call,
    as e.g., from some do.call().  Thanks to Alexander Kaever's
    suggestion posted to R-devel.
  * qqline(y = &lt;object&gt;) such as y=I(.), now works, see also
    PR#18190.
  * Non-integer mgp par() settings are now handled correctly in
    axis() and mtext(), thanks to Mikael Jagan and Duncan Murdoch's
    report and suggestion in PR#18194.
  * formatC(x) returns length zero character() now, rather than ""
    when x is of length zero, as documented, thanks to Davis
    Vaughan's post to R-devel.
  * removeSource(fn) now retains (other) attributes(fn).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1647000000">- CHANGES IN R 4.1.3:
  NEW FEATURES:
  * The default version of Bioconductor has been changed to 3.14.
    (This is used by setRepositories and the menus in GUIs.)
  UTILITIES:
  * R CMD check --as-cran has a workaround for a bug in versions of
    file up to at least 5.41 which mis-identify DBF files last
    changed in 2022 as executables.
  C-LEVEL FACILITIES:
  * The legacy S-compatibility macros SINGLE_* in R_ext/Constants.h
    (included by R.h) are deprecated and will be removed in R 4.2.0.
  BUG FIXES:
  * Initialization of self-starting nls() models with initialization
    functions following the pre-R-4.1.0 API (without the ...
    argument) works again for now, with a deprecation warning.
  * Fixed quoting of ~autodetect~ in Java setting defaults to avoid
    inadvertent user lookup due to leading ~, reported in PR#18231 by
    Harold Gutch.
  * substr(., start, stop) &lt;- v now treats _negative_ stop values
    correctly.  Reported with a patch in PR#18228 by Brodie Gaslam.
  * Subscripting an array x without dimnames by a
    length(dim(x))-column character matrix gave "random" non-sense,
    now an error; reported in PR#18244 by Mikael Jagan.
  * ...names() now matches names(list(...)) closely, fixing PR#18247.
  * all.equal(*, scale = s) now works as intended when length(s) &gt; 1,
    partly thanks to Michael Chirico's PR#18272.
  * print(x) for long vectors x now also works for named atomic
    vectors or lists and prints the correct number when reaching the
    getOption("max.print") limit; partly thanks to a report and
    proposal by Hugh Parsonage to the R-devel list.
  * all.equal(&lt;selfStart&gt;, *) no longer signals a deprecation
    warning.
  * reformulate(*, response=r) gives a helpful error message now when
    length(r) &gt; 1, thanks to Bill Dunlap's PR#18281.
  * Modifying globalCallingHandlers inside withCallingHandlers() now
    works or fails correctly, thanks to Henrik Bengtsson's PR#18257.
  * hist(&lt;Date&gt;, breaks = "days") and hist(&lt;POSIXt&gt;, breaks = "secs")
    no longer fail for inputs of length 1.
  * qbeta(.001, .9, .009) and similar cases now converge correctly
    thanks to Ben Bolker's report in PR#17746.
  * window(x, start, end) no longer wrongly signals "'start' cannot
    be after 'end'", fixing PR#17527 and PR#18291.
  * data() now checks that its (rarely used) list argument is a
    character vector - a couple of packages passed other types and
    gave incorrect results.
  * which() now checks its arr.ind argument is TRUE rather coercing
    to logical and taking the first element - which gave incorrect
    results in package code.
  * model.weights() and model.offset() more carefully extract their
    model components, thanks to Ben Bolker and Tim Taylor's R-devel
    post.
  * list.files(recursive = TRUE) now shows all broken symlinks
    (previously, some of them may have been omitted, PR#18296).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1650628800">- CHANGES IN R 4.2.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * The formula method of aggregate() now matches the generic in
    naming its first argument x (resolving PR#18299 by Thomas
    Soeiro).
    This means that calling aggregate() with a formula as a named
    first argument requires name formula in earlier versions of R and
    name x now, so portable code should not name the argument (code
    in many packages did).
  * Calling &amp;&amp; or || with either argument of length greater than one
    now gives a warning (which it is intended will become an error).
  * Calling if() or while() with a condition of length greater than
    one gives an error rather than a warning.  Consequently,
    environment variable _R_CHECK_LENGTH_1_CONDITION_ no longer has
    any effect.
  * Windows users should consult the WINDOWS section below for some
    profound changes including
  * Support for 32-bit builds has been dropped.
  * UTF-8 locales are used where available.
  * The default locations for the R installation and personal
    library folder have been changed.
    Thanks to Tomas Kalibera for months of work on the Windows port
    for this release.
  NEW FEATURES:
  * matrix(x, n, m) now warns in more cases where length(x) differs
    from n * m, as suggested by Abby Spurdle and Wolfgang Huber in
    Feb 2021 on the R-devel mailing list.
    This warning can be turned into an error by setting environment
    variable _R_CHECK_MATRIX_DATA_ to TRUE: R CMD check --as-cran
    does so unless it is already set.
  * Function file_test() in package utils gains tests for symlinks,
    readability and writability.
  * capabilities("libxml") is now false.
    The description of capabilities("http/ftp") now reflects that it
    refers to the default method, no longer the internal one.
  * simplify2array() gains an except argument for controlling the
    exceptions used by sapply().
  * Environment variables R_LIBS_USER and R_LIBS_SITE are both now
    set to the R system default if unset or empty, and can be set to
    NULL to indicate an empty list of user or site library
    directories.
  * The warning for axis()(-like) calls in cases of relatively small
    ranges (typically in log-scale situations) is slightly improved
    _and_ suppressed from explicit calls to .axisPars() as has always
    been the intention.
  * The contrasts setter function `contrasts&lt;-` gains an explicit
    default how.many = NULL rather than just using missing(how.many).
  * grid.pretty() gains a new optional argument n = 5.
  * There is a new function .pretty() with option bounds as a
    technical-utility version of pretty().  It and pretty() gain a
    new argument f.min with a better than back-compatible default.
  * Function grDevices::axisTicks() and related functions such as
    graphics::axis() work better, notably for the log scale; partly
    because of the pretty() improvements, but also because care is
    taken e.g., when ylim is finite but diff(ylim) is infinite.
  * nclass.FD() gains a digits option.
  * The R Mathlib internal C function bd0() (called indirectly from a
    dozen probability density and distribution functions such as
    dpois(), dbinom(), dgamma(), pgamma() _etc_) has been
    complemented by a more sophisticated and (mostly) more accurate C
    function ebd0(), currently called only by internal dpois_raw()
    improving accuracy for R level dpois() and potentially others
    calling it such as dnbinom(), dgamma() or pgamma().  (Thanks to
    Morten Welinder's PR#15628.)
  * write.ftable() gains sep = " " argument as suggested by Thomas
    Soeiro.
  * The names of the locale categories supported by R's
    Sys.getlocale() and Sys.setlocale() are now provided by variable
    .LC.categories in the base namespace.
  * The Date and POSIXt methods for hist() and the histogram method
    for plot() now also use the new default col = "lightgray" in
    consistency with the corresponding change to hist()'s default for
    R 4.0.0.
  * hist.default() gains new fuzz argument, and the histogram plot
    method no longer uses fractional axis ticks when displaying
    counts ("Frequency").
  * mapply() and hence Map() now also obey the "max-or-0-if-any"
    recycling rule, such that, e.g., Map(`+`, 1:3, 1[0]) is valid
    now.
  * as.character(&lt;obj&gt;) for "hexmode" or "octmode" objects now
    fulfils the important basic rule as.character(x)[j] ===
    as.character(x[j]).
  * The set utility functions, notably intersect() have been tweaked
    to be more consistent and symmetric in their two set arguments,
    also preserving a common mode.
  * substr(ch, start,end) &lt;- new now e.g., preserves names(ch); ditto
    for substring(), thanks to a patch from Brodie Gaslam.
  * plot(&lt;lm&gt;) gains a extend.ylim.f argument, in partial response to
    PR#15285; further PR#17784 is fixed thanks to several
    contributors and a patch by Elin Waring.  The Cook's dist
    contours get customizable via cook.col and cook.lty with a
    different default color and their legend is nicer by default and
    customizable via cook.legendChanges.
  * Attempting to subset an object that is not subsettable now
    signals an error of class notSubsettableError. The
    non-subsettable object is contained in the object field of the
    error condition.
  * Subscript-out-of-bounds errors are now signaled as errors of
    class subscriptOutOfBoundsError.
  * Stack-overflow errors are now signaled as errors inheriting from
    class stackOverflowError. See ?stackOverflowError for more
    details.
  * New partly experimental Sys.setLanguage() utility, solving the
    main problem of PR#18055.
  * gettext() and gettextf() get a new option trim = TRUE which when
    set to false allows translations for strings such as "Execution
    halted\n" typical for C code.
  * An experimental implementation of hash tables is now available.
    See ?hashtab for more details.
  * identical() gains a extptr.as.ref argument for requesting that
    external pointer objects be compared as reference objects.
  * reorder() gets an argument decreasing which it passes to sort()
    for level creation; based on the wish and patch by Thomas Soeiro
    in PR#18243.
  * as.vector() gains a data.frame method which returns a simple
    named list, also clearing a long standing 'FIXME' to enable
    as.vector(&lt;data.frame&gt;, mode="list").  This breaks code relying
    on as.vector(&lt;data.frame&gt;) to return the unchanged data frame.
  * legend() is now vectorized for arguments cex, x.intersp, and
    text.width.  The latter can now also be specified as a vector
    (one element for each column of the legend) or as NA for
    computing a proper column wise maximum value of strwidth(legend).
    The argument y.intersp can be specified as a vector with one
    entry for each row of the legend.
    legend() also gains new arguments title.cex and title.font.
    Thanks to Swetlana Herbrandt.
  * Deparsing no longer remaps attribute names dim, dimnames, levels,
    names and tsp to historical S-compatible names (which structure()
    maps back).
  * sample() and sample.int() have additional sanity checks on their
    size and n arguments.
    all.equal.numeric() gains a sanity check on its tolerance
    argument - calling all.equal(a, b, c) for three numeric vectors
    is a surprisingly common error.
    mean(na.rm =), rank(na.last =), barplot(legend.text =),
    boxplot(), contour(drawlabels =), polygon(border =) and
    methods::is(class2 =) have more robust sanity checks on their
    arguments.
    R CMD Rd2pdf (used by R CMD check) has a more robust sanity check
    on the format of \alias{} commands.
  * psigamma(x, deriv) for negative x now also works for deriv = 4
    and 5; their underlying C level dpsifn() is documented in
    'Writing R Extensions'.
  * The HTML help system now uses HTML5 (wish of PR#18149).
  * ks.test() now provides exact p-values also with ties and MC
    p-values in the two-sample (Smirnov) case.  By Torsten Hothorn.
  * ks.test() gains a formula interface, with y ~ 1 for the
    one-sample (Kolmogorov) test and y ~ group for the two-sample
    (Smirnov) test.  Contributed by Torsten Hothorn.
  * The return value from ks.test() now has class c("ks.test",
    "htest") - packages using try() need to take care to use
    inherits() and not == on the class.
  * New functions psmirnov(), qsmirnov() and rsmirnov() in package
    stats implementing the asymptotic and exact distributions of the
    two-sample Smirnov statistic.
  * iconv() now allows sub = "c99" to use C99-style escapes for UTF-8
    inputs which cannot be converted to encoding to.
  * In a forward pipe |&gt; expression it is now possible to use a named
    argument with the placeholder _ in the rhs call to specify where
    the lhs is to be inserted.  The placeholder can only appear once
    on the rhs.
  * The included LAPACK sources have been updated to version 3.10.0,
    except for the four Fortran 77 routines which 3.10.0 has
    re-implemented in Fortran 90 (where the older versions have been
    retained as the R build process does not support Fortran 90).
  * path.expand() and most other uses of tilde expansion now warn if
    a path would be too long if expanded.  (An exception is
    file.exists(), which silently returns false.)
  * trunc(&lt;Date&gt;, *) now supports units = "months" or "years" for
    consistency with the POSIXt method, thanks to Dirk Eddelbuettel's
    proposal in PR#18099.
  * list2DF() now checks that its arguments are of the same length,
    rather than use recycling.
  * The HTML help system has several new features: LaTeX-like math
    can be typeset using either KaTeX or MathJax, usage and example
    code is highlighted using Prism, and for dynamic help the output
    of examples and demos can be shown within the browser if the
    knitr package is installed. These features can be disabled by
    setting the environment variable _R_HELP_ENABLE_ENHANCED_HTML_ to
    a false value.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 15
    and so packages that provide graphics devices should be
    reinstalled.
  * The grid package now allows the user to specify a "vector" of
    pattern fills.  The fill argument to gpar() accepts a list of
    gradients and/or patterns and the functions linearGradient(),
    radialGradient(), and pattern() have a new group argument.
    Points grobs (data symbols) can now also have a pattern fill.
    The grobCoords() function now returns a more informative and
    complex result.
  * The grid package has new functions for drawing isolated groups:
    grid.group(), grid.define(), and grid.use().  These functions add
    compositing operators and affine transformations to R's graphics
    capabilities.
    The grid package also has new functions for stroking and filling
    paths: grid.stroke(), grid.fill(), and grid.fillStroke().
    A new function as.path() allows the user to specify the fill rule
    for a path that is to be used for clipping, stroking, or filling;
    available options are "winding" and "evenodd".  A new function
    as.mask() allows the user to specify the type of a mask;
    available options are "alpha" and "luminance".
    These new features are only supported so far (at most) on the
    Cairo-based graphics devices and on the pdf() device.
  * dev.capabilities() reports on device support for the new
    features.
  * par() now warns about unnamed non-character arguments to prevent
    misuse such as {usr &lt;- par("usr"); par(usr)}.
  INSTALLATION:
  * Facilities for accessing ftp:// sites are no longer tested
    (except _pro tem_ for curlGetHeaders()) as modern browsers have
    removed support.
  * R can now be built with DEFS = -DSTRICT_R_HEADERS .
  PACKAGE INSTALLATION:
  * R CMD INSTALL no longer tangles vignettes. This completes an R
    CMD build change in R 3.0.0 and affects packages built before R
    3.0.2. Such packages should be re-made with R CMD build to have
    the tangled R code of vignettes shipped with the tarball.
  * USE_FC_LEN_T will become the default: this uses the correct
    prototypes for Fortran BLAS/LAPACK routines called from C/C++,
    and requires adjustment of most such calls - see 'Writing R
    Extensions' SS6.6.2.  (This has been supported since R 3.6.2.)
  * Package installation speed for packages installed with
    keep.source has been improved. This resolve the issue reported by
    Ofek Shilon in PR#18236.
  UTILITIES:
  * R CMD check can optionally report files/directories left behind
    in home, /tmp (even though TMPDIR is set) and other directories.
    See the "R Internals" manual for details.
  * R CMD check now reports byte-compilation errors during
    installation.  These are not usually fatal but may result in
    parts of the package not being byte-compiled.
  * _R_CHECK_DEPENDS_ONLY_ can be applied selectively to examples,
    tests and/or vignettes in R CMD check: see the "R Internals"
    manual.
  * _R_CHECK_SRC_MINUS_W_IMPLICIT_ now defaults to true: recent
    versions of Apple clang on macOS have made implicit function
    declarations in C into a compilation error.
  * R CMD check --as-cran makes use of the environment variable
    AUTORECONF.  See the "R Internals" manual SS8 for further details.
  * R CMD check --use-valgrind also uses valgrind when re-building
    vignettes as some non-Sweave vignettes unhelpfully comment out
    all their code when R CMD check runs vignettes.
  * Errors in re-building vignettes (unless there are LaTeX errors)
    are reported by R CMD check as ERROR rather than WARNING when
    running vignettes has been skipped (as it frequently is in CRAN
    checks and by --as-cran).
  * R CMD Rd2pdf gains a --quiet option that is used by R CMD build
    when building the PDF package manual.
  * R CMD Rd2pdf now always runs LaTeX in batch mode, consistent with
    Texinfo &gt;= 6.7. The --batch option is ignored.
  * R CMD build and R CMD check now include the Rd file name and line
    numbers in the error message of an \Sexpr evaluation failure.
  * For packages using the \doi Rd macro (now an install-time \Sexpr)
    but no other dynamic Rd content, R CMD build now produces a
    smaller tarball and is considerably faster - skipping temporary
    package installation.
  C-LEVEL FACILITIES:
  * The non-API header R_ext/R-ftp-http.h is no longer provided, as
    the entry points it covered are now all defunct.
  * A number of non-API declarations and macro definitions have been
    moved from the installed header Rinternals.h to the internal
    header Defn.h. Packages that only use entry points and
    definitions documented to be part of the API as specified in
    'Writing R Extensions' SS6 should not be affected.
  * The macro USE_RINTERNALS no longer has any effect when compiling
    package code.  Packages which also use R_NO_REMAP will need to
    ensure that the remapped names are used for calls to API
    functions that were formerly also made available as macros.
  * The deprecated legacy S-compatibility macros PROBLEM, MESSAGE,
    ERROR, WARN, WARNING, RECOVER, ... are no longer defined in
    R_exts/RS.h (included by R.h).  Replace these by calls to
    Rf_error and Rf_warning (defined in header R_ext/Error.h included
    by R.h).
    Header R_ext/RS.h no longer includes R_ext/Error.h.
  * Header R_ext/Constants.h (included by R.h) when included from C++
    now includes the C++ header cfloat rather than the C header
    float.h (now possible as C++11 is required).
  * The legacy S-compatibility macros DOUBLE_* in R_ext/Constants.h
    (included by R.h) are deprecated.
  * The deprecated S-compatibility macros SINGLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * R_Calloc, R_Free and R_Realloc are preferred to their unprefixed
    forms and error messages now use the prefix. These forms were
    introduced in R 3.4.0 and are available even when
    STRICT_R_HEADERS is defined.
  * rmultinom has been documented in 'Writing R Extensions' SS6 so is
    now part of the R API.
  * Similarly, Rtanpi, called from R level tanpi() is now part of the
    R API.
  * The long-deprecated, undocumented and non-API entry point call_R
    is no longer declared in R_ext/RS.h (included by R.h).
  * The header S.h which has been unsupported since Jan 2016 has been
    removed.  Use R.h instead.
  DEPRECATED AND DEFUNCT:
  * The (non-default and deprecated) method = "internal" for
    download.file() and url() no longer supports http:// nor ftp://
    URIs.  (It is used only for file:// URIs.)
    On Windows, download.file(method = "wininet") no longer supports
    ftp:// URIs.  (It is no longer the default method, which is
    "libcurl" and does.)
    On Windows, the deprecated method = "wininet" now gives a warning
    for http:// and https:// URIs for both download.file() and url().
    (It is no longer the default method.)
  * On Windows, the command-line option --max-mem-size and
    environment variable R_MAX_MEM_SIZE are defunct.  The memory
    allocation limit was important for 32-bit builds, but these are
    no longer supported.
  * default.stringsAsFactors() is now formally deprecated, where that
    was only mentioned on its regular help page, previously.  So it
    now gives a warning if called.
  * unix.time() is defunct now; it had been deprecated since R 3.4.0.
  BUG FIXES:
  * Setting digits = 0 in format(), print.default() (and hence
    typically print()) or options() is again invalid.  Its behaviour
    was platform-dependent, and it is unclear what "zero significant
    digits" should mean (PR#18098).
  * Messages from C code in the cairo section of package grDevices
    are now also offered for translation, thanks to Michael Chirico's
    PR#18123.
  * mean(x) with finite x now is finite also without "long.double"
    capability.
  * R CMD Rd2pdf no longer leaves an empty build directory behind
    when it aborts due to an already existing output file.  (Thanks
    to Sebastian Meyer's PR#18141.)
  * density(x, weights = w, na.rm = TRUE) when anyNA(x) is true, now
    removes weights "in parallel" to x, fixing PR#18151, reported by
    Matthias Gondan.  Additionally, it gets a subdensity option.
  * Conversion of \Sexpr[]{&lt;expR&gt;} to LaTeX or HTML no longer
    produces long blocks of empty lines when &lt;expR&gt; itself contains
    several lines all producing empty output.  Thanks to a report and
    patch by Ivan Krylov posted to R-devel.
  * R CMD build no longer fails if a package vignette uses child
    documents and inst/doc exists.  (Thanks to Sebastian Meyer's
    PR#18156.)
  * When an R documentation ('help' source) file man/foo.Rd in a
    package has \donttest{..} examples with a syntax error, it is now
    signalled as ERROR and with correct line numbers relating to the
  * -Ex.R file, thanks to Duncan Murdoch and Sebastian Meyer's
    reports and patch proposals in PR#17501.
  * Improved determination of the correct translation domain in
    non-base packages, addressing the combination of PR#18092 and
    PR#17998 (#c6) with reports and _augmented_ patch #2904 by
    Suharto Anggono.
    Note that "R-base" is no longer the default domain e.g., for
    top-level calls to gettext(); rather translation needs explicit
    domain = * specification in such cases.
  * identical(attrib.as.set=FALSE) now works correctly with data
    frames with default row names (Thanks to Charlie Gao's PR#18179).
  * txtProgressBar() now enforces a non-zero width for argument char,
    without which no progress can be visible.
  * dimnames(table(d)) is more consistent in the case where d is a
    list with a single component, thanks to Thomas Soeiro's report to
    R-devel.
    Further, table(d1, d2) now gives an error when d1 and d2 are data
    frames as suggested by Thomas in PR#18224.
  * Fix for drawing semi-transparent lines and fills on the native
    Windows graphics device (PR#18219 and PR#16694).  Thanks to Nick
    Ray for helpful diagnosis on Bugzilla.
  * The deparser now wraps sub-expressions such as if(A) ..  with
    parentheses when needed; thanks to Duncan Murdoch's PR#18232 and
    Lionel Henry's patches there.
  * remove.packages() no longer tries to uninstall Priority: base
    packages, thanks to a report and suggestions by Colin Fay in
    PR#18227.
  * win.metafile() now has xpinch and ypinch arguments so that the
    user can override Windows' (potentially wrong) guess at device
    dimensions.
  * x[i] and x[[i]] for non-integer i should now behave in all cases
    as always documented: the index used is equivalent to
    as.integer(i) unless that would overflow where trunc(i) is used
    instead; thanks to Suharto Anggono's report and patch proposals
    in PR#17977.
  * asOneSidedFormula() now associates the resulting formula with the
    global environment rather than the evaluation environment created
    for the call.
  * &lt;bibentry&gt;$name now matches the field name case-insensitively,
    consistent with bibentry() creation and the replacement method.
  * cbind() failed to detect some length mismatches with a mixture of
    time-series and non-time-series inputs.
  * The default LaTeX style file Sweave.sty used by the RweaveLatex
    driver no longer loads the obsolete ae package; thanks to a
    report by Thomas Soeiro in PR#18271.  Furthermore, it now skips
    \usepackage[T1]{fontenc} for engines other than pdfTeX (if
    detected) or if the new [nofontenc] option is used.
  * smooth.spline() now stores its logical cv argument more safely,
    fixing a rare bug when printing, and also stores n.
  * smooth.spline(x,y,*) now computes the cv.crit statistic
    correctly, also when is.unsorted(x), fixing PR#18294.
  * The data.frame method of rbind() now warns when binding
    not-wholly-recycling vectors, by analogy to the default method
    (for matrices).
  * setAs() finds the correct class for name to when multiple
    packages define a class with that name. Thanks to Gabor Csardi
    for the report.
  * Fix for detaching a package when two classes of the same name are
    present in method signatures for the same generic. Thanks to
    Gabor Csardi for the report.
  * match.arg("", c("", "a", "B")) gives a better error message, in
    part from PR#17959, thanks to Elin Waring.
  * R CMD Sweave --clean no longer removes pre-existing files or
    subdirectories (PR#18242).
  * The quartz() device no longer splits polylines into subpaths.
    That has caused narrowly-spaced lines with many points to always
    look solid even when dashed line type was used due to dash phase
    restarts.
  * Deparsing constructs such as quote(1 + `!`(2) + 3) works again as
    before R 3.5.0, thanks to the report and patch in PR#18284 by
    Suharto Anggono.
  * as.list(f) for a factor f now keeps names(f), fixing PR#18309.
  * qbeta(.001, .9, .009) and analogous qf() calls now return a
    correct value instead of NaN or wrongly 1, all with a warning;
    thanks to the report by Ludger Goeminne in PR#18302.
  * plot.lm() failed to produce the plot of residuals vs.  factor
    levels (i.e., which=5 when leverages are constant) for models
    with character predictors (PR#17840).
  * interaction.plot(..., xtick = TRUE) misplaced the x-axis line
    (PR#18305).
  * Not strictly fixing a bug, format()ing and print()ing of
    non-finite Date and POSIXt values NaN and +/-Inf no longer show
    as NA but the respective string, e.g., Inf, for consistency with
    numeric vector's behaviour, fulfilling the wish of PR#18308.
  * R CMD check no longer runs test scripts generated from
    corresponding .Rin files twice and now signals an ERROR if
    processing an .Rin script fails.
  * tools::Rd2txt() used for plain-text help pages now renders \hrefs
    (if tools::Rd2txt_options(showURLs = TRUE)) and \urls with
    percent-encoding and standards-compliant delimiting style (angle
    brackets and no URL: prefix).  \email is now rendered with a
    mailto: prefix.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1655985600">- CHANGES IN R 4.2.1:
  NEW FEATURES:
  * New function utils::findCRANmirror() to find out if a CRAN mirror
    has been selected, otherwise fallback to the main site.  This
    behaves in the same way as tools::CRAN_package_db() and is
    intended for packages wishing to access CRAN for purposes other
    than installing packages.
    The need for this was shown by a day when the main CRAN website
    was offline and a dozen or so packages which had its URL
    hardcoded failed their checks.
  INSTALLATION on a UNIX-ALIKE:
  * The libraries searched for by --with-blas (without a value) now
    include BLIS (after OpenBLAS but before ATLAS).  And on macOS,
    the Accelerate framework (after ATLAS).  (This is patterned after
    the AX_BLAS macro from the Autoconf Archive.)
  * The included LAPACK sources have been updated to 3.10.1.
  UTILITIES:
  * The (full path to) the command tidy to be used for HTML
    validation can be set by environment variable R_TIDYCMD.
  * Setting environment variable _R_CHECK_RD_VALIDATE_RD2HTML_ to a
    false value will override R CMD check --as-cran and turn off HTML
    validation.  This provides a way to circumvent a problematic
    tidy.
    The 2006 version that ships with macOS is always skipped.
  C-LEVEL FACILITIES:
  * The undocumented legacy declarations of Sint, Sfloat, SINT_MAX
    and SINT_MIN in header R.h are deprecated.
  BUG FIXES:
  * fisher.test(d) no longer segfaults for "large" d; fixing PR#18336
    by preventing/detecting an integer overflow reliably.
  * tar(., files=*) now produces correctly the warning about invalid
    uid or gid of files, fixing PR#18344, reported by Martin Morgan.
  * tk_choose.files() with multi = FALSE misbehaved on paths
    containing spaces (PR#18334) (regression introduced in R 4.0.0).
  * sort(x, partial = ind, *) now works correctly notably for the
    non-default na.last = FALSE or TRUE, fixing PR#18335 reported by
    James Edwards.
  * Environment variable _R_CHECK_XREFS_REPOSITORIES_ is only used
    for checking .Rd cross-references in R CMD check (as documented)
    and not for other uses looking for a CRAN mirror.
  * The search for a CRAN mirror when checking packages now uses
    getOption("repos") if that specifies a CRAN mirror, even when it
    does not also specify all three Bioconductor repositories (as was
    previously required).
  * The HTML code generated by tools::Rd2HTML() has been improved to
    pass tidy 5.8.0.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1667217600">- CHANGES IN R 4.2.2:
  NEW FEATURES:
  * tools::Rdiff(useDiff = TRUE) checks for the presence of an
    external diff command and switches to useDiff = FALSE if none is
    found.  This allows R CMD Rdiff to always work.
  * On Windows, environment variable R_LIBCURL_SSL_REVOKE_BEST_EFFORT
    can be used to switch to only 'best-effort' SSL certificate
    revocation checks with the default "libcurl" download method.
    This reduces security, but may be needed for downloads to work
    with MITM proxies (PR#18379).
  * (macOS) The run-time check for libraries from XQuartz for X11 and
    Tcl/Tk no longer uses otool from the Apple Developer Tools
    (PR#18400).
  * The LaTeX style for producing the PDF manuals, Rd.sty, now loads
    the standard amsmath, amsfonts and amssymb packages for greater
    coverage of math commands in the Rd \eqn and \deqn macros.  The
    \mathscr LaTeX command is also provided (via the mathrsfs
    package, if available, or the amsfonts bundle otherwise),
    fulfilling the wish of PR#18398.
  * (Windows) The default format of readClipboard() and
    writeClipboard() has been changed to 13 (CF_UNICODETEXT).
  INSTALLATION on a UNIX-ALIKE:
  * The PDF manuals (if built) can be compacted by the new target
    make compact-pdf (at the top level or in directory doc/manual).
  * There is now configure support for LLVM clang 15 on Linux, which
    defaults to position-independent (PIE) executables whereas
    gfortran does not.
  * Many small changes to ease compilation (and suppress warnings)
    with LLVM clang 15.
  BUG FIXES:
  * Rscript -e would fail if stdin were closed (Reported by Henrik
    Bengtsson.)
  * qt(*, log.p=TRUE) in outer tails no longer produces NaN in its
    final steps, thus fixing PR#18360.
  * tools::Rd2latex() now escapes hashes and ampersands when writing
    URLs, fixing LaTeX errors with such URLs in \tabular.
  * When isGeneric(f, fdef=*) is used with mismatching names, the
    warning is better understandable; reported (with fix) in PR#18370
    by Gabe Becker.
  * poly(x, n) now works again (and is now documented) when x is a
    "Date" or "POSIXct" object, or of another class while fulfilling
    mode(x) == "numeric".  This also enables poly(x, *, raw=TRUE) for
    such variables.  Reported by Michael Chirico to R-devel.
  * write.table(), write.csv() and write.csv2() restore their
    numerical precision (internal equivalent of digits = 15) after an
    interrupt (PR#18384).
  * One can now read also byte FF from a clipboard connection
    (PR#18385).
  * source("") and source(character()) now give more helpful error
    messages.
  * R CMD check --as-cran set _R_CHECK_TIMINGS_ too late to have the
    intended effect.
  * as.POSIXlt(x) now also works with very large dates x, fixing
    PR#18401 reported by Hannes M"uhleisen.
  * Files can now be extracted even from very large zip archives
    (PR#18390, thanks to Martin Jakt).
  * Non-finite objects of class "POSIXlt" are now correctly coerced
    to classes "Date" and "POSIXct"; following up on the extension to
    format() them correctly.
  * Added methods for is.finite(), is.infinite() and is.nan() for
    "POSIXlt" date-time objects.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1678881600">- CHANGES IN R 4.2.3:
  C-LEVEL FACILITIES:
  * The definition of DL_FUNC in R_ext/Rdynload.h has been changed to
    be fully C-compliant.  This means that functions loaded _via_ for
    example R_GetCCallable need to be cast to an appropriate type if
    they have any arguments.
  * .Machine has a new element sizeof.time_t to identify old systems
    with a 32-bit type and hence a limited range of date-times (and
    limited support for dates millions of years from present).
  PACKAGE INSTALLATION:
  * (Windows) The default C++ standard had accidentally been left at
    C++11 when it was changed to C++14 on Unix.
  BUG FIXES:
  * As "POSIXlt" objects may be "partially filled" and their list
    components meant to be recycled, length() now is the length of
    the longest component.
  * as.POSIXlt.Date() could underflow for dates in the far past (more
    than half a million years BCE).
  * as.Date.POSIXlt(x) would return "1970-01-01" instead of NA in R
    4.2.2, e.g., for
    x &lt;- as.POSIXlt(c("2019-01-30","2001-1-1"))
    x$mon &lt;- c(0L, NA); as.Date(x)
  * R CMD check failed to apply enabled _R_CHECK_SUGGESTS_ONLY_ to
    examples and vignettes (regression in R 4.2.0).
  * R CMD check did not re-build vignettes in separate processes by
    default (regression in R 4.2.0).
  * Running examples from HTML documentation now restores previous
    knitr settings and options (PR#18420).
  * Quartz: fonts are now located using Core Graphics API instead of
    deprecated ATS which is no longer supported in the macOS 13 SDK
    (PR#18426).  This also addresses an issue where the currently
    used font in the Quartz device context was not correctly
    retained.
  * (Windows) Math symbols in text drawing functions are again
    rendered correctly (PR#18440).  This fixes a regression in R
    4.2.1 caused by a fix in PR#18382 which uncovered an issue in
    GraphApp due to which the symbol charset was not used with TT
    Symbol font face.
  * (Windows) Installing a package with a src/Makefile.{win,ucrt}
    file includes ~/.R/Makevars.win64 in the search for user
    makevars, as documented in "R Installation and Administration"
    and done for packages with a src/Makevars.{win,ucrt} file.
  * format(&lt;POSIXlt_w/_unbalanced_sec&gt;, "....%OS&lt;n&gt;") with n &gt; 0 no
    longer accidentally uses the unbalanced seconds, thanks to
    Suharto Anggono's report (including patch) in PR#18448.
  * solve.default(a, b) works around issues with some versions of
    LAPACK when a contains NA or NaN values.
  * When UseMethod() cannot dispatch, it no longer segfaults
    producing the error message in case of a long class(), thanks to
    Joris Vankerschaver's report (including patch) in PR#18447.
  * When example(foo, ..) produces graphics on an interactive device
    it needs to open itself, it now leaves devAskNewPage() unchanged
    even when it was FALSE, thus fixing a 14 years old '&lt;FIXME&gt;'.
  * packageDescription() again catches errors from encoding
    conversions. This also fixes broken packageVersion() in C locale
    on systems where iconv does not support transliteration.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1681128000">- add patch to build with libcurl &gt;= 8</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1682078400">- CHANGES IN R 4.3.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Calling &amp;&amp; or || with LHS or (if evaluated) RHS of length greater
    than one is now always an error, with a report of the form
    'length = 4' in coercion to 'logical(1)'
    Environment variable _R_CHECK_LENGTH_1_LOGIC2_ no longer has any
    effect.
  NEW FEATURES:
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.10.1.  (This caused some platform-dependent
    changes to package check output.)  And then to the sources from
    LAPACK version 3.11.0 (with changes only to double complex
    subroutines).
  * The included LAPACK sources have been updated to include the four
    Fortran 90 routines rather than their Fortran 77 predecessors.
    This may give some different signs in SVDs or
    eigendecompositions..  (This completes the transition to LAPACK
    3.10.x begun in R 4.2.0.)
  * The LAPACK sources have been updated to version 3.11.0.  (No new
    subroutines have been added, so this almost entirely bug fixes:
    Those fixes do affect some computations with NaNs, including R's
    NA.)
  * The parser now signals _classed_ errors, notably in case of the
    pipe operator |&gt;.  The error object and message now give line and
    column numbers, mostly as proposed and provided by Duncan Murdoch
    in PR#18328.
  * toeplitz() is now generalized for asymmetric cases, with a
    toeplitz2() variant.
  * xy.coords() and xyz.coords() and consequently, e.g., plot(x,y,
    log = "y") now signal a _classed_ warning about negative values
    of y (where log(.) is NA).  Such a warning can be specifically
    suppressed or caught otherwise.
  * Regular expression functions now check more thoroughly whether
    their inputs are valid strings (in their encoding, e.g. in
    UTF-8).
  * The performance of grep(), sub(), gsub() and strsplit() has been
    improved, particularly with perl = TRUE and fixed = TRUE.  Use of
    useBytes = TRUE for performance reasons should no longer be
    needed and is discouraged: it may lead to incorrect results.
  * apropos() gains an argument dot_internals which is used by the
    completion (help(rcompgen)) engine to also see base internals
    such as .POSIXct().
  * Support in tools::Rdiff() for comparing uncompressed PDF files is
    further reduced - see its help page.
  * qqplot(x, y, ...) gains conf.level and conf.args arguments for
    computing and plotting a confidence band for the treatment
    function transforming the distribution of x into the distribution
    of y (Switzer, 1976, _Biometrika_). Contributed by Torsten
    Hothorn.
  * Performance of package_dependencies() has been improved for cases
    when the number of dependencies is large.
  * Strings newly created by gsub(), sub() and strsplit(), when any
    of the inputs is marked as "bytes", are also marked as "bytes".
    This reduces the risk of creating invalid strings and accidental
    substitution of bytes deemed invalid.
  * Support for readLines(encoding = "bytes") has been added to allow
    processing special text files byte-by-byte, without creating
    invalid strings.
  * iconv(from = "") now takes into account any declared encoding of
    the input elements and uses it in preference to the native
    encoding.  This reduces the risk of accidental creation of
    invalid strings, particularly when different elements of the
    input have different encoding (including "bytes").
  * Package repositories in getOption("repos") are now initialized
    from the repositories file when utils is loaded (if not already
    set, e.g., in .Rprofile).  (From a report and patch proposal by
    Gabriel Becker in PR#18405.)
  * compactPDF() gets a verbose option.
  * type.convert() and hence read.table() get new option tryLogical =
    TRUE with back compatible default.  When set to false, converts
    "F" or "T" columns to character.
  * Added new unit prefixes "R" and "Q" for abbreviating
    (unrealistically large) sizes beyond 10^{27} in standard = "SI",
    thanks to Henrik Bengtsson's PR#18435.
  * as.data.frame()'s default method now also works fine with atomic
    objects inheriting from classes such as "roman", "octmode" and
    "hexmode", such fulfilling the wish of PR#18421, by Benjamin
    Feakins.
  * The as.data.frame.vector() utility now errors for wrong-length
    row.names.  It warned for almost six years, with "Will be an
    error!".
  * sessionInfo() now also contains La_version() and reports codepage
    and timezone when relevant, in both print() and toLatex() methods
    which also get new option tzone for displaying timezone
    information when locale = FALSE.
  * New function R_compiled_by() reports the C and Fortran compilers
    used to build R, if known.
  * predict(&lt;lm&gt;, newdata = *) no longer unnecessarily creates an
    offset of all 0s.
  * solve() for complex inputs now uses argument tol and by default
    checks for 'computational singularity' (as it long has done for
    numeric inputs).
  * predict(&lt;rank-deficient lm&gt;, newdata=*) now obeys a new argument
    rankdeficient, with new default "warnif", warning only if there
    are non-estimable cases in newdata.  Other options include
    rankdeficient = "NA", predicting NA for non-estimable newdata
    cases.  This addresses PR#15072 by Russ Lenth and is based on his
    original proposal and discussions in PR#16158 also by David Firth
    and Elin Waring.  Still somewhat experimental.
  * Rgui console implementation now works better with the NVDA screen
    reader when the full blinking cursor is selected.  The underlying
    improvements in cursor handling may help also other screen
    readers on Windows.
  * The drop-field control in GraphApp can now be left with the TAB
    key and all controls can be navigated in the reverse order using
    the Shift+TAB key, improving accessibility of the Rgui
    configuration editor.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now fully accurate
    (instead of to "only" minimally five digits).
  * demo(error.catching) now also shows off withWarnings() and
    tryCatchWEMs().
  * As an experimental feature the placeholder _ can now also be used
    in the rhs of a forward pipe |&gt; expression as the first argument
    in an extraction call, such as _$coef. More generally, it can be
    used as the head of a chain of extractions, such as _$coef[[2]].
  * Spaces in the environment variable used to choose the R session's
    temporary directory (TMPDIR, TMP and TEMP are tried in turn) are
    now fatal.  (On Windows the 'short path' version of the path is
    tried and used if that does not contain a space.)
  * all.equal.numeric() gets a new optional switch giveErr to return
    the numeric error as attribute.  Relatedly,
    stopifnot(all.equal&lt;some&gt;(a, b, ..)) is as "smart" now, as
    stopifnot(all.equal(....)) has been already, thus allowing
    customized all.equal&lt;Some&gt;() wrappers.
  * R on Windows is now able to work with path names longer than 260
    characters when these are enabled in the system (requires at
    least Windows 10 version 1607).  Packages should be updated to
    work with long paths as well, instead of assuming PATH_MAX to be
    the maximum length.  Custom front-ends and applications embedding
    R need to update their manifests if they wish to allow this
    feature.  See
    &lt;https://blog.r-project.org/2023/03/07/path-length-limit-on-windows&gt;
    for more information.
  * 'Object not found' and 'Missing argument' errors now give a more
    accurate error context. Patch provided by Lionel Henry in
    PR#18241.
  * The @ operator is now an S3 generic. Based on contributions by
    Tomasz Kalinowski in PR#18482.
  * New generic chooseOpsMethod() provides a mechanism for objects to
    resolve cases where two suitable methods are found for an Ops
    Group Generic. This supports experimenting with alternative
    object systems. Based on contributions by Tomasz Kalinowski in
    PR#18484.
  * inherits(x, what) now accepts values other than a simple
    character vector for argument what. A new generic, nameOfClass(),
    is called to resolve the class name from what. This supports
    experimenting with alternative object systems. Based on
    contributions by Tomasz Kalinowski in PR#18485.
  * Detection of BLAS/LAPACK in use (sessionInfo()) with FlexiBLAS
    now reports the current backend.
  * The "data.frame" method for subset() now warns about extraneous
    arguments, typically catching the use of = instead of == in the
    subset expression.
  * Calling a:b when numeric a or b is longer than one may now be
    made into an error by setting environment variable
    _R_CHECK_LENGTH_COLON_ to a true value, along the proposal in
    PR#18419 by Henrik Bengtsson.
  * density(x, weights = *) now warns if automatic bandwidth
    selection happens without using weights; new optional warnWbw may
    suppress the warning.  Prompted by Christoph Dalitz' PR#18490 and
    its discussants.
  * rm(list = *) is faster and more readable thanks to Kevin Ushey's
    PR#18492.
  * The plot.lm() function no longer produces a normal Q-Q plot for
    GLMs. Instead it plots a half-normal Q-Q plot of the absolute
    value of the standardized deviance residuals.
  * The print() method for class "summary.glm" no longer shows
    summary statistics for the deviance residuals by default.  Its
    optional argument show.residuals can be used to show them if
    required.
  * The tapply() function now accepts a data frame as its X argument,
    and allows INDEX to be a formula in that case. by.data.frame()
    similarly allows INDICES to be a formula.
  * The performance of df[j] &lt;- value (including for missing j) and
    write.table(df) has been improved for data frames df with a large
    number of columns.  (Thanks to Gabriel Becker's PR#18500,
    PR#18503 and discussants, prompted by a report from Toby Dylan
    Hocking on the R-devel mailing list.)
  * The matrix multiply operator %*% is now an S3 generic, belonging
    to new group generic matrixOps.  From Tomasz Kalinowski's
    contribution in PR#18483.
  * New function array2DF() to convert arrays to data frames,
    particularly useful for the list arrays created by tapply().
  DATES and TIMES:
  * On platforms where (non-UTC) datetimes before 1902 (or before
    1900 as with system functions on recent macOS) are guessed by
    extrapolating time zones from 1902-2037, there is a warning at
    the first use of extrapolation in a session.  (As all time zones
    post 2037 are extrapolation, we do not warn on those.)
  * (Platforms using --with-internal-tzone, including Windows and by
    default macOS). How years are printed in dates or date-times can
    be controlled by environment variable R_PAD_YEARS_BY_ZERO.  The
    default remains to pad to 4 digits by zeroes, but setting value
    no gives no padding (as used by default by glibc).
  * strftime() tries harder to determine the offset for the "%z"
    format, and succeeds on the mainstream R platforms.
  * strftime() has a limit of 2048 bytes on the string produced -
    attempting to exceed this is an error.  (Previously it silently
    truncated at 255 bytes.)
  * sessionInfo() records (and by default prints) the system time
    zone as part of the locale information.  Also, the source
    (system/internal) of the date-time conversion and printing
    functions.
  * Objects of class "POSIXlt" created in this version of R always
    have 11 components: component zone is always set, and component
    gmtoff is set for times in UTC and usually set on the (almost
    all) platforms which have C-level support, otherwise is NA.
  * There are comprehensive validity checks on the structure of
    objects of class "POSIXlt" when converting (including formatting
    and printing).  (This avoids mis-conversions of hand-crafted
    objects.)
  * There is some support for using the native date-time routines on
    macOS: this is only viable on recent versions (e.g. 12.6 and 13)
    and does get wrong some historical changes (before 1900, during
    WWII).  Use of --with-internal-tzone remains the default.
  * as.POSIXct(&lt;numeric&gt;) and as.POSIXlt(.) (without specifying
    origin) now work.  So does as.Date(&lt;numeric&gt;).
  * as.Date.POSIXct(., tz) now treats several tz values, notably
    "GMT" as equivalent to "UTC", proposed and improved by Michael
    Chirico and Joshua Ulrich in PR#17674.
  * Experimental balancePOSIXlt() utility allows using "ragged" and
    or out-of-range "POSIXlt" objects more correctly, e.g., in
    subsetting and subassignments.  Such objects are now documented.
    More experimentally, a "POSIXlt" object may have an attribute
    "balanced" indicating if it is known to be filled or fully
    balanced.
  * Functions axis.Date() and axis.POSIXct() are rewritten to gain
    better default tick locations and better default formats by using
    prettyDate(). Thanks to Swetlana Herbrandt.
  * The mapping of Windows' names for time zones to IANA's 'Olson'
    names has been updated.  When ICU is available (it is by
    default), it is used to get a mapping for the current region set
    in Windows.  This can be overridden by setting environment
    variable TZ to the desired Olson name - see OlsonNames() for
    those currently available.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 16
    and so packages that provide graphics devices should be
    reinstalled.
  * The grDevices and grid packages have new functions for rendering
    typeset glyphs, primarily: grDevices::glyphInfo() and
    grid::grid.glyph().
    Rendering of typeset glyphs is only supported so far on the
    Cairo-based graphics devices and on the pdf() and quartz()
    devices.
  * The defined behaviour for "clear" and "source" compositing
    operators (via grid::grid.group()) has been changed (to align
    better with simple interpretation of original Porter-Duff
    definitions).
  * Support for gradients, patterns, clipping paths, masks, groups,
    compositing operators, and affine transformations has been added
    to the quartz() device.
  INSTALLATION on a UNIX-ALIKE:
  * A system installation of generic LAPACK 3.10.0 or later will be
    preferred to the version in the R sources.
    configure option --with-lapack=no (equivalently --without-lapack)
    forces compilation of the internal LAPACK sources.
    If --with-lapack is not specified, a system liblapack is looked
    for and used if it reports version 3.10.0 or later and does not
    contain BLAS routines.
    Packages using LAPACK will need to be reinstalled if this changes
    to using an external library.
  * On aarch64 Linux platforms using GCC, configure now defaults to
  - fPIC (instead of -fpic), as desired in PR#18326.
  * configure now checks conversion of datetimes between POSIXlt and
    POSIXct around year 2020.  Failure (which has been seen on
    platforms missing tzdata) is fatal.
  * If configure option --with-valgrind-instrumentation is given
    value 1 or 2, option --with-system-valgrind-headers is now the
    default and ignored (with a warning).  It is highly recommended
    that the system headers are installed alongside valgrind: they
    are part of its packaging on some Linux distributions and
    packaged separately (e.g. in the valgrind-devel RPM) on others.
    configure will give a warning if they are not found.
    The system headers will be required in a future release of R to
    build with valgrind instrumentation.
  * libcurl 8.x is now accepted by configure: despite a change in
    major version number it changes neither API nor ABI.
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools43, an update of the Rtools42 toolchain.  It is
    based on gcc 12 and newer versions of MinGW-W64, binutils and
    libraries.  At this time R-devel can still be built using
    Rtools42 without changes, but when R-devel is installed via the
    installer, it will by default look for Rtools43.
  * Old make targets rsync-extsoft and 32-bit ones that are no longer
    needed have been removed.
  * Default builds (including for packages) no longer select C99.
    Thus the C standard used is the default for the compiler, which
    for the toolchain in Rtools43 is C17.  (This is consistent with
    Unix builds.)
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++17 where
    available (which it is on all currently checked platforms): if
    not C++14 or C++11 is used if available otherwise C++ is not
    supported.
  * USE_FC_LEN_T is the default: this uses the correct
    (compiler-dependent) prototypes for Fortran BLAS/LAPACK routines
    called from C/C++, and requires adjustment of many such calls -
    see 'Writing R Extensions' SS6.6.1.
  * There is initial support for C++23 as several compilers are now
    supporting -std=c++23 or -std=c++2b or similar.  As for C++20,
    there no additional configure checks for C++23 features beyond a
    check that the compiler reports a __cplusplus value greater than
    that in the C++20 standard.  C++ feature tests should be used.
  * There is support for a package to indicate the version of the C
    standard which should be used to compile it, and for the
    installing user to specify this.  In most cases R defaults to the
    C compiler's default standard which is C17 (a `bug-fix' of C11) -
    earlier versions of R or compilers may have defaulted to C99.
    Current options are:
    USE_C17 Use a standard that is at most C17.  The intention is to
    allow legacy packages to still be installed when later C
    standards become the default, including packages using new
    keywords as identifiers or with K&amp;R-style function
    declarations.  This will use C17 if available, falling back
    to C11.
    USE_C90 Use the C90 (aka C89) standard.  (As that standard did
    not require compilers to identify that version, all we can
    verify is that the compiler does not claim to be using a
    later standard.  It may accept C99 features - for example
    clang accepts // to make comments.)
    USE_C99 Use the C99 standard. This should be rarely needed - it
    avoids the few new features of C11/C17 which can be useful if
    a package assumes them if C17 is specified and they are not
    implemented.
    USE_C23 Use C23 (or in future, later).  Compiler/library support
    for C23 is still being implemented, but LLVM clang from
    15.0.0 and the upcoming GCC 13 have quite extensive support.
    These can be specified as part of the SystemRequirements field in
    the package's DESCRIPTION file or _via_ options --use-C17 and so
    on of R CMD INSTALL and R CMD SHLIB.
    For further details see "Writing R Extensions" SS1.2.5.
  * (Windows) A src/Makefile.ucrt or src/Makefile.win file is now
    included after R_HOME/etcR_ARCH/Makeconf and so no longer needs
    to include that file itself.  Installation of a package with such
    a file now uses a site Makevars file in the same way as a package
    with a src/Makevars.win file would.
  * configure is now passed crucial variables such as CC and CFLAGS
    in its environment, as many packages were not setting them (as
    documented in 'Writing R Extensions' SS1.2).
    This has most effect where configure is used to compile parts of
    the package - most often by cmake or libtool which obfuscate the
    actual compile commands used.
    Also used for configure.win and configure.ucrt on Windows.
  FORTRAN FLAGS:
  * The flag -fno-optimize-sibling-calls is no longer forced for
    gfortran 7 and later.  It should no longer be needed now using
    'hidden' character-length arguments when calling BLAS/LAPACK
    routines from C/C++ is the default even for packages.  (Unless
    perhaps packages call Fortran code from C/C++ without using R's
    headers and without allowing for these arguments.)
  C-LEVEL FACILITIES:
  * The deprecated S-compatibility macros DOUBLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * The deprecated legacy typedefs of Sint and Sfloat in header R.h
    are no longer defined, and that header no longer includes header
    limits.h from C nor climits from C++.
  * New macro CAD5R() is provided in Rinternals.h and used in a few
    places in the R sources.
  * ALTREP now supports VECSXP vectors. Contributed by Gabor Csardi
    in PR#17620.
  * The Rcomplex definition (in header R_ext/Complex.h) has been
    extended to prevent possible mis-compilation when interfacing
    with Fortran (PR#18430).  The new definition causes compiler
    warnings with static initializers such as {1, 2}, which can be
    changed to {.r=1, .i=2}.
    Using the new definition from C++ depends on compiler extensions
    supporting C features that have not been incorporated into the
    C++ standards but are available in g++ and clang++: this may
    result in C++ compiler warnings but these have been worked around
    for recent versions of common compilers (GCC, Apple/LLVM clang,
    Intel).
    It is intended to change the inclusion of header R_ext/Complex.h
    by other R headers, so C/C++ code files which make use of
    Rcomplex should include that header explicitly.
  UTILITIES:
  * R CMD check does more checking of package .Rd files, warning
    about invalid email addresses and (some) invalid URIs and noting
    empty \item labels in description lists.
  * R CMD check now also reports problems when reading package news
    in md (file NEWS.md) and (optionally) plain text (file NEWS)
    formats.
  * _R_CHECK_TIMINGS_ defaults to a value from the environment even
    for R CMD check --as-cran; this allows for exceptionally fast or
    slow platforms.
    It now applies to checking PDF and HTML versions of the manuals,
    and 'checking CRAN incoming feasibility'.
  * R CMD check can optionally (but included in --as-cran) check
    whether HTML math rendering _via_ KaTeX works for the package .Rd
    files.
  * Non-interactive debugger invocations can be trapped by setting
    the environment variable _R_CHECK_BROWSER_NONINTERACTIVE_ to a
    true value.  This is enabled by R CMD check --as-cran to detect
    the use of leftover browser() statements in the package.
  * The use of sprintf and vsprintf from C/C++ has been deprecated in
    macOS 13 and is a known security risk.  R CMD check now reports
    (on all platforms) if their use is found in compiled code:
    replace by snprintf or vsnprintf respectively. [*NB:* whether
    such calls get compiled into the package is platform-dependent.]
  * Where recorded at installation, R CMD check reports the C and
    Fortran compilers used to build R.
    It reports the OS in use (if known, as given by osVersion) as
    well as that R was built for.
    It notes if a C++ standard was specified which is older than the
    current default: many packages have used C++11 to mean 'not
    C++98' - as C++11 is the minimum supported since R 4.0.0, that
    specification can probably be removed.
  * R CMD INSTALL reports the compilers (and on macOS, the SDK) used,
    and this is copied to the output of R CMD check.
    Where a C++ standard is specified, it is reported.
  * R CMD check's 'checking compilation flags in Makevars' has been
    relaxed to accept the use of flags such as -std=f2008 in
    PKG_FFLAGS.
  * tools::buildVignettes() has a new argument skip, which is used by
    R CMD check to skip (and note) vignettes with unavailable
    \VignetteDepends (PR#18318).
  * New generic .AtNames() added to enable class-specific completions
    after @. The formerly internal function findMatches() is now
    exported, mainly for use in methods for .DollarNames() and
    .AtNames().
  DEPRECATED AND DEFUNCT:
  * default.stringsAsFactors() is defunct.
  * Calling as.data.frame.&lt;class&gt;() directly (for 12 atomic classes)
    is going to be formally deprecated, currently activated by
    setting the environment variable
    _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ to non-empty, which also
    happens in R CMD check --as-cran.
  BUG FIXES:
  * Hashed environments with sizes less than 5 can now grow.
    (Reported to R-devel by Duncan Garmonsway.)
  * as.character(&lt;Rd&gt;, deparse = TRUE) failed to re-escape curly
    braces in LaTeX-like text.  (Reported by Hadley Wickham in
    PR#18324.)
  * library() now passes its lib.loc argument when requiring Depends
    packages; reported (with fix) in PR#18331 by Mikael Jagan.
  * R CMD Stangle: improved message about 'Output' files.
  * head(x, n) and tail(x, n) now signal an error if n is not
    numeric, instead of incidentally "working" sometimes returning
    all of x.  Reported and discussed by Colin Fay, in PR#18357.
  * The "lm" method for summary() now gives the correct F-statistic
    when the model contains an offset.  Reported in PR#18008.
  * C() and `contrasts&lt;-`() now preserve factor level names when
    given a function object (as opposed a function name which did
    preserve names). Reported in PR#17616.
  * c(a = 1, 2)[[]] no longer matches 2 but rather signals a
    _classed_ error.  Reported and analysed by Davis Vaughan in
    PR#18367, a duplicate of PR#18004, by Jan Meis et al.  For
    consistency, NULL[[]] is also erroneous now.  x[[]] &lt;- v gives an
    error of the same class "MissingSubscriptError".
  * The relist() function of utils now supports NULL elements in the
    skeleton (PR#15854).
  * ordered(levels = *) (missing x) now works analogously to factor(,
    ordered=TRUE); reported (with fix) by Achim Zeileis in PR#18389.
  * User-defined Rd macro definitions can now span multiple lines,
    thanks to a patch from Duncan Murdoch. Previously, the Rd parser
    silently ignored everything after the first line.
  * Plain-text help (tools::Rd2txt()) now preserves an initial blank
    line for text following description list items.
  * tools::Rd2HTML() and tools::Rd2latex() no longer split \arguments
    and \value lists at Rd comments.
  * tools::Rd2latex() now correctly handles optional text outside
    \items of argument lists as well as bracketed text at the
    beginning of sections, e.g., \value{[NULL]}.
  * as.character(&lt;POSIXt&gt;) now behaves more in line with the methods
    for atomic vectors such as numbers, and is no longer influenced
    by options().  Ditto for as.character(&lt;Date&gt;).  The
    as.character() method gets arguments digits and OutDec with
    defaults _not_ depending on options().  Use of as.character(*,
    format = .) now warns.
  * Similarly, the as.character.hexmode() and *.octmode() methods
    also behave as good citizen methods and back compatibility option
    keepStr = TRUE.
  * The as.POSIXlt(&lt;POSIXlt&gt;) and as.POSIXct(&lt;POSIXct&gt;) default
    methods now do obey their tz argument, also in this case.
  * as.POSIXlt(&lt;Date&gt;) now does apply a tz (time zone) argument, as
    does as.POSIXct(); partly suggested by Roland Fuss on the R-devel
    mailing list.
  * as.Date.POSIXlt(x) now also works when the list components are of
    unequal length, aka "partially filled" or "ragged".
  * expand.model.frame() looked up variables in the wrong environment
    when applied to models fitted without data.  Reported in
    PR#18414.
  * time() now (also) uses the ts.eps = getOption("ts.eps") argument
    and thus by default rounds values very close to the start (or
    end) of a year.  Based on a proposal by Andre"i V. Kostyrka on
    R-help.
  * Printing of a factanal() result with just one factor and sort =
    TRUE now works regularly, fixing PR#17863 by Timothy Bates,
    thanks to the 'R Contributors' working group.
  * Printing 0-length objects of class "factor", "roman", "hexmode",
    "octmode", "person", "bibentry", or "citation" now prints
    something better, one of which fixes PR#18422, reported by
    Benjamin Feakins.
  * Sys.timezone() queries timedatectl only if systemd is loaded;
    addressing a report by Jan Gorecki in PR#17421.
  * The formula method of cor.test() had scoping problems when
    environment(formula) was not the calling environment; reported
    with a patch proposal by Mao Kobayashi in PR#18439.
  * attach() of an environment with active bindings now preserves the
    active bindings.  Reported by Kevin Ushey in PR#18425.
  * BLAS detection now works also with system-provided libraries not
    available as regular files.  This fixes detection of the
    Accelerate framework on macOS since Big Sur.  Reported by David
    Novgorodsky.
  * download.file() gives a helpful error message in case of an
    invalid download.file.method option, thanks to Colin Fay's report
    in PR#18455.
  * Sporadic crashes of Rterm when using completion have been fixed.
  * Rprof() is now more reliable.  A livelock in thread
    initialization with too short sampling interval has been fixed on
    macOS.  A deadlock in using the C runtime has been fixed on
    Windows.  A potential deadlock has been prevented on Unix.
  * Cursor placement in Rgui now works even after a fixed-width font
    is selected.
  * Mandatory options (options()) are now set on startup so that
    saving and restoring them always works (PR#18372).
  * Package installation, R CMD INSTALL or install.packages(*), now
    parses each of the &lt;pkg&gt;/R/*.R files individually instead of
    first concatenating and then parse()ing the large resulting file.
    This allows parser or syntax errors to be diagnosed with correct
    file names and line numbers, thanks to Simon Dedman's report and
    Bill Dunlap's patch in PR#17859.
    This _does_ require syntactically self contained R source files
    now, fixing another inadvertent bug.
  * predict.lm(&lt;model with offset&gt;) now finds the offset in the
    correct environment, thanks to Andr'e Gillibert's report and patch
    in PR#18456.
  * getInitial(&lt;formula&gt;) now finds the selfStart model in the
    correct environment.  (Reported by Ivan Krylov in PR#18368.)
  * Fix for possible segfault when using recently-added graphics
    features, such as gradients, clipping paths, masks, and groups
    with pdf(file=NULL).
  * class(m) &lt;- class(m) no longer changes a matrix m by adding a
    class _attribute_.
  * packageDate(pkg) now only warns once if there is no pkg.
  * When ts() creates a multivariate time series, "mts", it also
    inherits from "array" now, and is.mts() is documented _and_
    stricter.
  * Rd2txt() now preserves line breaks of \verb Rd content and from
    duplicated \cr.  The former also fixes the rendering of verbatim
    output from Rd \Sexpr in plain-text help.
  * uniroot(f, interval) should no longer wrongly converge _outside_
    the interval in some cases where abs(f(x)) == Inf for an x at the
    interval boundary, thanks to posts by Ben Bolker and Serguei
    Sokol on R-devel.
  * Vectorized alpha handling in palette functions such as in gray(),
    rainbow(), or hcl.colors() works correctly now, thanks to Achim
    Zeileis' report and patch in PR#18476.
  * Formatting and print()ing of bibentry objects has dropped the
    deprecated citation.bibtex.max argument, such that the bibtex
    argument's default for print.bibentry() depends directly on the
    citation.bibtex.max option, whereas in format.bibentry() the
    option no longer applies.
  * Attempting to use a character string naming a foreign function
    entry point in a foreign function call in a package will now
    signal an error if the packages has called R_forceSymbols to
    specify that symbols must be used.
  * An error in table() could permanently set options(warn=2)
    promoting all subsequent warnings to errors.
  * The sigma() function gave misleading results for binary GLMs.  A
    new method for objects of class "glm" returns the square root of
    the estimate of the dispersion parameter using the same
    calculation as summary.glm().
  * bs() and ns() in the (typical) case of automatic knot
    construction, when some of the supposedly inner knots coincide
    with boundary knots, now moves them inside (with a warning),
    building on PR#18442 by Ben Bolker.
  * R CMD on Windows now skips the site profile with --no-site-file
    and --vanilla even when R_PROFILE is set (PR#18512, from Kevin
    Ushey).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1686916800">- CHANGES IN R 4.3.1:
  C-LEVEL FACILITIES:
  * The C-level API version of R's integrate(), Rdqags() in Applic.h,
    now returns the correct number of integrand evaluations neval,
    fixing PR#18515 reported and diagnosed by Stephen Wade.
  * The C prototypes for LAPACK calls dspgv and dtptrs in
    R_exts/Lapack.h had one too many and one too few character length
    arguments - but this has not caused any known issues. To get the
    corrected prototypes, include
    [#]include &lt;Rconfig.h&gt; // for PR18534fixed
    [#]ifdef PR18534fixed
    [#] define usePR18534fix 1
    [#]endif
    [#]include &lt;R_exts/Lapack.h&gt;
    in your C/C++ code (PR#18534).
  INSTALLATION:
  * Many of the checks of esoteric Internet operations and those
    using unreliable external sites have been moved to a new target
    that is not run by default and primarily intended for the core
    developers.  To run them use
    cd tests; make test-Internet-dev
  BUG FIXES:
  * .S3methods(), typically called from methods(), again marks
    methods from package base as visible.
    Also, the visibility of non-base methods is again determined by
    the method's presence in search().
  * tools::Rdiff() is now more robust against invalid strings, fixing
    installation tests on Windows without Rtools installed
    (PR#18530).
  * Fix (new) bug in hcl.colors(2, *), by Achim Zeileis (PR#18523).
  * head(., &lt;illegal&gt;) and tail(..) now produce more useful "Error in
    ...." error messages, fixing PR#18362.
  * Package code syntax on Windows is checked in UTF-8 when UTF-8 is
    the native encoding.
  * na.contiguous(x) now also returns the first run, when it is at
    the beginning and there is a later one of the same length;
    reported to R-devel, including a fix, by Georgi Boshnakov.
    Further, by default, it modifies only an existing attr(*,"tsp")
    but otherwise no longer sets one.
  * chol(&lt;not pos.def&gt;, pivot = &lt;T|F&gt;) now gives a correct error or
    warning message (depending on pivot), thanks to Mikael Jagan's
    (PR#18541).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1699012800">- CHANGES IN R 4.3.2:
  NEW FEATURES:
  * The default initialization of the "repos" option from the
    repositories file at startup can be skipped by setting
    environment variable R_REPOSITORIES to NULL such that
    getOption("repos") is empty if not set elsewhere.
  * qr.X() is now an implicit S4 generic in methods.
  * iconv(to = "ASCII//TRANSLIT") is emulated using substitution on
    platforms which do not support it (notably Alpine Linux).  This
    should give a human-readable conversion in ASCII on all platforms
    (rather than NA_character_).
  * trans3d() gains options continuous and verbose addressing the
    problem of possible "wrap around" when projecting too long
    curves, as reported by Achim Zeileis in PR#18537.
  * tools::showNonASCII() has been rewritten to work better on macOS
    14 (which has a changed implementation of iconv()).
  * tiff(type = "quartz") (the default on macOS) now warns if
    compression is specified: it continues to be ignored.
  INSTALLATION on a UNIX-ALIKE:
  * There is some support for building with Intel's LLVM-based
    compilers on x86_64 Linux, such as (C) icx, (C++) ipcx and
    (Fortran) ifx from oneAPI 2023.x.y.
  * There is support for using LLVM's flang-new as the Fortran
    compiler from LLVM 16.0.x (preferably 17.0.0 or later).
  UTILITIES:
  * R CMD check reports the use of the Fortran 90 random number
    generator RANDOM_NUMBER() and the subroutines to initialize it.
    'Writing R Extensions' has example code to use R's RNGs from
    Fortran.
  BUG FIXES:
  * substr(x, n, L) &lt;- cc now works (more) correctly for multibyte
    UTF-8 strings x when L &gt; nchar(x), thanks to a report and patch
    by 'Architect 95'.
  * contrib.url(character()) now returns 0-length character() as
    documented, which also avoids spurious warnings from
    available.packages() et al. in the edge case of an empty vector
    of repository URLs.
  * readChar(., 4e8) no longer fails, thanks to Kodi Arfer's report
    (PR#18557).
  * lapply(&lt;list&gt;, as.data.frame) no longer warns falsely for some
    base vector components.
  * Communication between parent and child processes in the multicore
    part of parallel could fail on platforms that do not support an
    arbitrarily large payload in system functions read()/write() on
    pipes (seen on macOS where a restriction to INT_MAX bytes is
    documented, without doing a partial read unlike Linux). The
    payload is now split into 1Gb chunks to avoid that problem.
    (PR#18571)
  * qqplot(x,y, conf.level=.) gives better confidence bounds when
    length(x) != length(y), thanks to Alexander Ploner's report and
    patch proposal (PR#18557).
  * norm(&lt;0-length&gt;, "2") now gives zero instead of an error, as all
    the other norm types, thanks to Mikael Jagan's PR#18542.
  * Build-stage Rd macros \packageAuthor and \packageMaintainer now
    process Authors@R, fixing NA results when the package DESCRIPTION
    omits Author and Maintainer fields.
  * Formatting and printing complex numbers could give things like
    0.1683-0i because of rounding error: -0i is now replaced by +0i.
  * postscript() refused to accept a title comment containing the
    letter "W" (PR#18599).
  * isoreg(c(1,Inf)) signals an error instead of segfaulting, fixing
    PR#18603.
  * tiff(type = "Xlib") was only outputting the last page of
    multi-page plots.
  * tools::latexToUtf8() again knows about \~{n} and other letters
    with tilde, fixing a regression in R 4.3.0, and about \^{i} as an
    alternative to \^{\i} (similarly with other accents).
    Furthermore, LaTeX codes for accented I letters are now correctly
    converted, also fixing related mistakes in
    tools::encoded_text_to_latex().
  * tar(*, tar = "internal") no longer creates out-of-spec tar files
    in the very rare case of user or group names longer than 32
    bytes, fixing PR#17871 with thanks to Ivan Krylov.
  * When using the "internal" timezone datetime code, adding a
    fraction of a second no longer adds one second, fixing PR#16856
    from a patch by Ivan Krylov.
  * tools::checkRd() no longer produces spurious notes about
    "unnecessary braces" from multi-line Rd results of \Sexpr macros.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1709208000">- CHANGES IN R 4.3.3:
  NEW FEATURES:
  * iconv() now fixes up variant encoding names such as "utf8"
    case-insensitively.
  DEPRECATED AND DEFUNCT:
  * The legacy encoding = "MacRoman" is deprecated in pdf() and
    postscript(): support was incomplete in earlier versions of R.
  BUG FIXES:
  * Arguments are now properly forwarded to methods on S4 generics
    with ... in the middle of their formal arguments. This was broken
    for the case when a method introduced an argument but did not
    include ... in its own formals. Thanks to Herv'e Pag`es for the
    report PR#18538.
  * Some invalid file arguments to pictex(), postscript() and xfig()
    opened a file called NA rather than throw an error.  These
    included postscript(NULL) (which some people expected to work
    like pdf(NULL)).
  * Passing filename = NA to svg(), cairo_pdf(), cairo_ps() or the
    Cairo-based bitmap devices opened a file called NA: it now throws
    an error.
  * quartz(file = NA) opened a file called NA, including when used as
    a Quartz-based bitmap device.  It now gives an error.
  * rank(&lt;long vector&gt;) now works, fixing PR#18617, thanks to Ilia
    Kats.
  * seq.int() did not adequately check its length.out argument.
  * match(&lt;POSIXct&gt;, .) is correct again for differing time zones,
    ditto for "POSIXlt", fixing PR#18618 reported by Bastian Klein.
  * drop.terms(*, dropx = &lt;0-length&gt;) now works, fixing PR#18563 as
    proposed by Mikael Jagan.
  * drop.terms(*) keeps + offset(.) terms when it should, PR#18565,
    and drop.terms() no longer makes up a response, PR#18566, fixing
    both bugs thanks to Mikael Jagan.
  * getS3method("t", "test") no longer finds the t.test() function,
    fixing PR#18627.
  * pdf() and postscript() support for the documented Adobe encodings
    "Greek" and "Cyrilllic" was missing (although the corresponding
    Windows' codepages could be used).
  * Computations of glyph metric information for pdf() and
    postscript() did not take into account that transliteration could
    replace one character by two or more (only seen on macOS 14) and
    typically warned that the information was not known.
  * rank(x) no longer overflows during integer addition, when
    computing rank average for largish but not-yet long vector x,
    fixing PR#18630, thanks to Ilia Kats.
  * list.files() on Windows now returns also files with names longer
    that 260 bytes (the Windows limit is 260 characters).
    Previously, some file names particularly with 'East Asian'
    characters were omitted.
  * cov2cor(&lt;0 x 0&gt;) now works, fixing PR#18423 thanks to Mikael
    Jagan and Elin Waring.
  * cov2cor(&lt;negative diagonal&gt;) and similar now give one warning
    instead of two, with better wording, fixing PR#18424 thanks to
    Mikael Jagan.
  * tools:: startDynamicHelp() now ensures port is in proper range,
    fixing PR#18645.
  * pbeta(x, a,b) is correct now for x=0 or 1 in the boundary cases
    where a or b or both are 0, fixing PR#18672 thanks to Michael
    Fay.
  * pmatch(x, table) for large table, also called for data frame row
    selection, dfrm[nm, ], is now interruptible, fixing PR#18656.
  * predict(&lt;rank-deficient lm&gt;, newdata=*) fix computing of nbasis,
    see Russ Lenth's comment 29 in PR#16158.
  * Added a work-around for a bug in macOS 14.3.1 and higher which
    prevents R plots in the Quartz Cocoa device from updating on
    screen.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1713960000">- CHANGES IN R 4.4.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Startup banners, R --version, sessionInfo() and R CMD check no
    longer report (64-bit) as part of the platform as this is almost
    universal - the increasingly rare 32-bit platforms will still
    report (32-bit).
    On Windows, ditto for window titles.
  * is.atomic(NULL) now returns FALSE, as NULL is not an atomic
    vector.  Strict back-compatibility would replace is.atomic(foo)
    by (is.null(foo) || is.atomic(foo)) but should happen only
    sparingly.
  NEW FEATURES:
  * The confint() methods for "glm" and "nls" objects have been
    copied to the stats package.  Previously, they were stubs which
    called versions in package MASS. The MASS namespace is no longer
    loaded if you invoke (say) confint(glmfit).  Further, the "glm"
    method for profile() and the plot() and pairs() methods for class
    "profile" have been copied from MASS to stats.  (profile.nls()
    and plot.profile.nls() were already in stats.)
  * The confint() and profile methods for "glm" objects have gained a
    possibility to do profiling based on the Rao Score statistic in
    addition to the default Likelihood Ratio. This is controlled by a
    new test = argument.
  * The pairs() method for "profile" objects has been extended with a
    which = argument to allow plotting only a subset of the
    parameters.
  * The "glm" method for anova() computes test statistics and
    p-values by default, using a chi-squared test or an F test
    depending on whether the dispersion is fixed or free.  Test
    statistics can be suppressed by giving argument test a false
    logical value.
  * In setRepositories() the repositories can be set using their
    names via name = instead of index ind =.
  * methods() and .S3methods() gain a all.names option for the (rare)
    case where functions starting with a . should be included.
  * Serializations can now be interrupted (e.g., by Ctrl-C on a
    Unix-alike) if they take too long, e.g., from save.image(),
    thanks to suggestions by Ivan Krylov and others on R-devel.
  * New startup option --max-connections to set the maximum number of
    simultaneous connections for the session.  Defaults to 128 as
    before: allowed values up to 4096 (but resource limits may in
    practice restrict to smaller values).
  * R on Windows (since Windows 10 2004) now uses the new Segment
    Heap allocator. This may improve performance of some
    memory-intensive applications.
  * When R packages are built, typically by R CMD build &lt;pkg&gt;, the
    new --user=&lt;build_user&gt; option overrides the (internally
    determined) user name, currently Sys.info()["user"] or LOGNAME.
    This is a (modified) fulfillment of Will Landau's suggestion in
    PR#17530.
  * tools::testInstalledBasic() gets new optional arguments outDir
    and testSrcdir, e.g., allowing to use it in a &lt;builddir&gt; !=
    &lt;srcdir&gt; setup, and in standard "binary" Windows installation
  * if* a source tests/ folder is present.
  * range(&lt;DT_with_Inf&gt;, finite = TRUE) now work for objects of class
    "Date", "POSIXct", and "POSIXlt" with infinite entries,
    analogously to range.default(), as proposed by Davis Vaughan on
    R-devel.  Other range()-methods can make use of new function
    .rangeNum().
  * New .internalGenerics object complementing .S3PrimitiveGenerics,
    for documentation and low-level book-keeping.
  * grid() now invisibly returns the x- and y- coordinates at which
    the grid-lines were drawn.
  * norm(., type) now also works for complex matrices.
  * kappa(., exact = TRUE, norm = *) now works for all norms and also
    for complex matrices.  In symmetric / triangular cases, the new
    argument uplo = "U" | "L" allows the upper or lower triangular
    part to be specified.
  * memDecompress(type = "unknown") recognizes compression in the
    default 'zlib' format as used by memCompress(type = "gzip").
  * memCompress() and memDecompress() will use the libdeflate library
    (&lt;https://github.com/ebiggers/libdeflate&gt;) if installed.  This
    uses the same type of compression for type = "gzip" but is 1.5-2x
    faster than the system libz library on some common platforms: the
    speed-up may depend on the library version.
  * diff() for objects of class "Date", "POSIXct", and "POSIXlt"
    accepts a units argument passed via ....
  * Dynamic help now does a much better job of rendering package
    DESCRIPTION metadata.
  * Rprof() gains an event argument and support for elapsed (real)
    time profiling on Unix (PR#18076).
  * filled.contour() gains a key.border argument.
  * tools::update_pkg_po() gets arguments pot_make and mo_make for
    _not_ re-making the corresponding files, and additionally a
    verbose argument.
  * Hexadecimal string colour specifications are now accepted in
    short form, so, for example, we can use "#123", which is
    equivalent to "#112233".
    Thanks to MikeFC for the original idea and Ella Kaye, Malcolm
    Barrett, George Stagg, and Hanne Oberman for the patch.
  * Plain-text help shows \var markup by angle brackets.
  * The new experimental primitive function declare() is intended to
    eventually allow information about R code to be communicated to
    the interpreter, compiler, and code analysis tools. The syntax
    for declarations is still being developed.
  * Functions psmirnov(), qsmirnov() and rsmirnov() in package stats
    have had argument two.sided renamed to alternative, to take into
    account that the permutation distributions of the one-sided
    statistics can be different in the case of ties.  Consequence of
    PR#18582.
  * sort() is now an implicit S4 generic in methods.
  * Formatting and printing, format(z), print(z), of complex vectors
    z no longer zap relatively small real or imaginary parts to zero,
    fixing PR#16752.  This is an API change, as it was documented
    previously to round real and imaginary parts together on purpose,
    producing nicer looking output.  As mentioned, e.g. in the PR,
    this change is compatible with many other "R-like" programming
    environments.
    We have simplified the internal code and now basically format the
    real and imaginary parts independently of each other.
  * New experimental functions Tailcall() and Exec() to support
    writing stack-space-efficient recursive functions.
  * Where characters are attempted to be plotted by pdf(),
    postscript() and xfig() which are not in the selected 8-bit
    character set (most often Latin-1) and the R session is using a
    UTF-8 locale, the warning messages will show the UTF-8 character
    rather than its bytes and one dot will be substituted per
    character rather than per byte.  (Platforms whose iconv() does
    transliteration silently plot the transliteration.)
    In a UTF-8 locale some transliterations are now done with a
    warning (e.g., dashes and Unicode minus to hyphen, ligatures are
    expanded, permille (‰) is replaced by o/oo), although the OS may
    have got there first.  These are warnings as they will continue
    to be replaced by dots in earlier versions of R.
  * The matrix multiplication functions crossprod() and tcrossprod()
    are now also primitive and S3 generic, as %*% had become in R
    4.3.0.
  * source() and example() have a new optional argument catch.aborts
    which allows continued evaluation of the R code after an error.
  * The non-Quartz tiff() devices allow additional types of
    compression if supported by the platform's libtiff library.
  * The list of base and recommended package names is now provided by
    tools::standard_package_names().
  * cairo_pdf() and cairo_ps() default to onefile = TRUE to closer
    match pdf() and postscript().
  * New option catch.script.errors provides a documented way to catch
    errors and then continue in non-interactive use.
  * L %||% R newly in base is an expressive idiom for the phrases
    if(!is.null(L)) L else R or if(is.null(L)) R else L.
  * The return value from warnings() now always inherits from
    "warnings" as documented, now also in the case of no warnings
    where it previously returned NULL.
  * as.complex("1i") now returns 0 + 1i instead of NA with a warning.
  * z &lt;- c(NA, 1i) now keeps the imaginary part Im(z[1]) == 0, no
    longer coercing to NA_complex_.  Similarly, cumsum(z) correctly
    sums real and imaginary parts separately, i.e., without
    "crosstalk" in case of NAs.
  * On Alpine Linux iconv() now maps "latin2", "latin-2", "latin9"
    and "latin-9" to encoding names the OS knows about
    (case-insensitively).
  * iconv(sub = "Unicode") now always zero-pads to four (hex) digits,
    rather than to 4 or 8.  (This seems to have become the convention
    once Unicode restricted the number of Unicode points to 2^21 - 1
    and so will never need more than 6 digits.)
  * NCOL(NULL) now returns 0 instead of 1, for consistency with
    cbind().
  * The information for the Euro glyph missing from the Adobe .afm
    files for the Courier, Helvetica and Times families has been
    copied from their URW equivalents - this will improve vertical
    centring in the pdf() and postscript() devices.
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.12.0.  The changes are almost entirely cosmetic.
  * The included LAPACK sources have been updated to version 3.12.0
    and some further double-complex routines added.
  * There are new font families for the 2014--5 URW 2.0 fonts (see
    ?pdf) which are included in recent versions of Ghostscript.
    These have font widths for most Greek glyphs and a few others
    which were missing from the original versions (whose font
    families remain available for reproducibility, although
    Ghostscript-based viewers will render using the 2.0 versions).
  * Improve the large-n efficiency of as.matrix(&lt;dist&gt;), thanks an R
    contributors effort, notably by Tim Taylor and Heather Turner,
    see PR#18660.
  * The default and numeric methods of all.equal() get a check.class
    option.
  * zapsmall() gets new optional arguments, function mFUN and min.d,
    for extra flexibility; fulfills a wish in PR#18199.  Also, it is
    now an implicit S4 generic in package methods.
  * The Rd filter for aspell() gains an ignore argument.
  * New generic function sort_by(), primarily useful for the
    data.frame method which can be used to sort rows of a data frame
    by one or more columns.
  * The icence headers for the RPC code in src/extra/xdr have been
    updated to use the GPL-compatible licence published by Oracle
    America in 2010.
  * New function pkg2HTML() in tools to create single-page HTML
    reference manuals for R packages.
  * The byte code evaluator now uses less C stack space for recursive
    calls to byte-compiled functions. It also makes more of an effort
    to avoid allocations for scalar return values.
  * New completion option backtick (disabled by default) allows
    non-syntactic completions to be wrapped in backquotes. This is
    currently only useful for Jupyter notebooks via the IRkernel
    package, and may cause problems for other backends.
  INSTALLATION:
  * The parser has been updated to work with bison 3.8.2, which is
    now used for the pre-generated parsers in gram.c, file.c, and
    gramRd.c. A few parser error messages have changed, which may
    affect code that relies on exact messages.
  INSTALLATION on a UNIX-ALIKE:
  * System valgrind headers are now required to use configure option
  - -with-valgrind-instrumentation with value 1 or 2.
  * configure will warn if it encounters a 32-bit build, as that is
    nowadays almost untested.
  * Environment variable R_SYSTEM_ABI is no longer used and so no
    longer recorded in etc/Renviron (it was not on Windows and was
    only ever used when preparing package tools).
  * If the libdeflate library and headers are available, libdeflate
    rather than libz is used to (de)compress R objects in lazy-load
    databases.  Typically tasks spend up to 5% of their time on such
    operations, although creating lazy-data databases is one of the
    exceptions.
    This can be suppressed if the library is available by the
    configure option --without-libdeflate-compression.
  * configure option --enable-lto=check has not worked reliably since
    2019 and has been removed.
  * The minimum autoconf requirement for a maintainer build has been
    increased to autoconf 2.71.
    It is intended to increase this to 2.72 for R 4.5.0: the
    distributed configure file was generated using 2.72.
  * The minimum version requirement for an external LAPACK has been
    reduced to 3.9.0.
  * No default C++ compiler is set if no C++17 compiler is detected:
    there is no longer an automatic fallback to C++14 or C++11.
    Compilers from the last five years should have sufficient
    support: for others macros CXX and CXXSTD can be set in file
    config.site to provide a fallback if needed.
    The Objective-C++ compiler now by default uses the standard
    selected by R for C++ (currently C++17) rather than the default
    standard for the C++ compiler (which on macOS is still C++98).
  INSTALLATION on macOS:
  * A new configure option --with-newAccelerate makes use of Apple's
    'new' BLAS / LAPACK interfaces in their Accelerate framework.
    Those interfaces are only available in macOS 13.3 or later, and
    building requires SDK 13.3 or later (from the Command Line Tools
    or Xcode 14.3 or later).
    By default the option uses new Accelerate for BLAS calls: to also
    use it for LAPACK use option --with-newAccelerate=lapack.  The
    later interfaces provide LAPACK 3.9.1 rather than 3.2.1: 3.9.1 is
    from 2021-04 and does not include the improved algorithms
    introduced in LAPACK 3.10.0 (including for BLAS calls).
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools44, an update of the Rtools43 toolchain.  It is
    based on GCC 13 and newer versions of MinGW-W64, binutils and
    libraries (targeting 64-bit Intel CPUs).  R-devel can no longer
    be built using Rtools43 without changes.
  * Rtools44 has experimental support for 64-bit ARM (aarch64) CPUs
    _via_ the LLVM 17 toolchain using lld, clang/flang-new and
    libc++.
  UTILITIES:
  * R CMD check notes when S4-style exports are used without
    declaring a strong dependence on package methods.
  * tools::checkRd() (used by R CMD check) detects more problems with
    \Sexpr-based dynamic content, including bad nesting of \Sexprs
    and invalid arguments.
  * tools::checkRd() now reports Rd titles and section names ending
    in a period; this is ignored by R CMD check unless environment
    variable _R_CHECK_RD_CHECKRD_MINLEVEL_ is set to -5 or smaller.
  * R CMD check now notes Rd files without an \alias, as long
    documented in 'Writing R Extensions' §1.3.1.  The check for a
    missing \description has been moved from tools::checkRd() to
    tools::checkRdContents().
  * R CMD check now visits inst/NEWS.Rd and OS-specific man
    subdirectories when checking Rd files.
  * tools::checkDocFiles() and tools::checkRdContents() now also
    check internal Rd files by default, but "specially" (ignoring
    missing documentation of arguments).
  * R CMD Rdiff gets option --useEx.
  * R CMD check now warns on non-portable uses of Fortran KIND such
    as INTEGER(KIND=4) and REAL(KIND=8).
    To see the failing lines set environment variable
    _R_CHECK_FORTRAN_KIND_DETAILS_ to a true value.
  * When checking Rd files, R CMD check now notes some of the "lost
    braces" that tools::checkRd() finds.  Typical problems are Rd
    macros missing the initial backslash (e.g., code{...}), in-text
    set notation (e.g., {1, 2}, where the braces need escaping), and
    \itemize lists with \describe-style entries of the form
    \item{label}{description}.
  * R CMD INSTALL (and hence check) will compile C++ code with
  - DR_NO_REMAP if environment variable _R_CXX_USE_NO_REMAP_ is set
    to a true value.  It is planned that this will in future become
    the default for compiling C++.
  * The new built-in Rd macro \dontdiff{} can be used to mark example
    code whose output should be ignored when comparing check output
    to reference output (tests/Examples/&lt;pkg&gt;-Ex.Rout.save).  The
    \dontdiff tag, like \donttest, is _not_ shown on the rendered
    help page, so provides a clean alternative to ##
    IGNORE_RDIFF_(BEGIN|END) comments.
  * R CMD build when there is no NAMESPACE, now uses the recommended
    exportPattern("^[^.]"), instead of exporting everything.
  * R CMD check now warns about non-ASCII characters in the NAMESPACE
    file (in addition to R files). Such packages are not portable and
    may fail to install on some platforms.
  C-LEVEL FACILITIES:
  * Headers R_ext/Applic.h and R-ext/Linpack.h used to include
    R_ext/BLAS.h although this was undocumented and unneeded by their
    documented entry points.  They no longer do so.
  * New function R_missing(), factored out from do_missing(), used to
    fix PR#18579.
  * SEXP type S4SXP has been renamed to OBJSXP to support
    experimenting with alternative object systems.  The S4SXP value
    can still be used in C code but is now deprecated.  Based on
    contributions from the R Consortium's Object-Oriented Programming
    Working Group.
  * New function pow1p(x,y) for accurate (1+x)^y.
  * mkCharLenCE was incorrectly documented to take a size_t length
    but was implemented with int (and character strings in R are
    limited to 2^31 - 1 bytes).
  DEPRECATED AND DEFUNCT:
  * data() no longer handles zipped data from long-defunct (since R
    2.13.0) --use-zip-data installations.
  * The legacy graphics devices pictex() and xfig() are now
    deprecated.  They do not support recent graphics enhancements and
    their font handling is rudimentary. The intention is to retain
    them for historical interest as long as they remain somewhat
    functional.
  * Support for encoding = "MacRoman" has been removed from the pdf()
    and postscript() devices - this was a legacy encoding supporting
    classic macOS up to 2001 and no longer has universal libiconv
    support.
  * is.R() is deprecated as no other S dialect is known to be in use
    (and this could only identify historical dialects, not future
    ones).
    Further information on calls can be obtained by setting the
    environment variable _R_DEPRECATED_IS_R_ to error which turns the
    deprecation warning into an error and so by default gives a
    traceback.  (This is done by R CMD check --as-cran.)
  * UseMethod() no longer forwards local variables assigned in the
    generic function into method call environments before evaluating
    the method body. This makes method calls behave more like
    standard function calls and makes method code easier to analyze
    correctly.
  * The twelve as.data.frame.&lt;class&gt;() methods which were deprecated
    only via _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ and in R CMD
    check --as-cran are formally deprecated now in favour of calling
    as.data.frame() or as.data.frame.vector().  The deprecation
    "check" now works also when as.data.frame() is S4 generic thanks
    to Ivan Krylov.
  * The default method for the directional comparison operators &lt;, &gt;,
    &lt;=, and &gt;= now signals an error when one of the operands is a
    language object, i.e. a symbol or a call.
  * For terms.formula(), deprecate abb and neg.out arguments
    _formally_ in addition to just documenting it.
  BUG FIXES:
  * The methods package is more robust to not being attached to the
    search path.  More work needs to be done.
  * pairwise.t.test() misbehaved when subgroups had 0 DF for
    variance, even with pool.sd = TRUE.  (PR#18594 by Jack Berry).
  * Probability distribution functions [dpq]&lt;distrib&gt;(x, *), but also
    bessel[IKJY](x, .) now consistently preserve attributes(x) when
    length(x) == 0, e.g., for a 2 x 0 matrix, thanks to Karolis
    Koncevičius' report PR#18509.
  * Group "Summary" computations such as sum(1:3, 4, na.rm = 5, NA,
    7, na.rm = LL) now give an error instead of either 17 or NN for
    LL true or false, as proposed by Ivan Krylov on the R-devel
    mailing list.  (This also means it is now an error to specify
    na.rm more than once.)
  * as.complex(x) now returns complex(real = x, imaginary = 0) for
    _all_ numerical and logical x, notably also for NA or
    NA_integer_.
  * Directories are now omitted by file.copy(, recursive = FALSE) and
    in file.append() (PR#17337).
  * gsub() and sub() are now more robust to integer overflow when
    reporting errors caused by too large input strings (PR#18346).
  * Top-level handlers are now more robust to attempts to remove a
    handler whilst handlers are running (PR#18508).
  * The handling of Alt+F4 in dialogs created on Windows using
    GraphApp has been fixed (PR#13870).
  * density() more consistently computes grid values for the
    FFT-based convolution, following Robert Schlicht's analysis and
    proposal in PR#18337, correcting density values typically by a
    factor of about 0.999.  Argument old.coords = TRUE provides back
    compatibility.
  * palette.colors() gains a name argument that defaults to FALSE
    controlling whether the vector of colours that is returned has
    names (where possible).  PR#18529.
  * tools::xgettext() no longer extracts the (non-translatable) class
    names from warningCondition and errorCondition calls.
  * S3method(&lt;gen&gt;, &lt;class&gt;, &lt;func&gt;) in the NAMESPACE file now works
    (again) when &lt;func&gt; is visible from the namespace, e.g.,
    imported, or in base.
  * getParseData(f) now also works for a function defined in the
    first of several &lt;pkg&gt;/R/*.R source files, thanks to Kirill
    Müller's report and Duncan Murdoch's patch in PR#16756.
  * Rd \Sexpr macros with nested #ifdef conditionals were not
    processed.
  * A non-blocking connection with non-default encoding (such as a
    socket) now correctly returns from readLines() after new data has
    arrived also when its EOF had been reached previously.  Thanks to
    Peter Meilstrup's report on R-devel and Ivan Krylov's report and
    patch proposal in PR#18555.
  * tools::checkRdContents() failed to detect empty argument
    descriptions when they spanned multiple lines, including those
    generated by prompt().  These cases are now noted by R CMD check.
  * Plain-text help no longer outputs spurious colons in the
    arguments list (for multi-line \item labels in the Rd source).
  * kappa() and rcond() work correctly in more cases; kappa(., norm =
    "2") now warns that it computes the 1-norm with (default) exact =
    FALSE; prompted by Mikael Jagan's quite comprehensive PR#18543.
  * Rd skeletons generated by prompt() or promptData() now use a
    dummy title (so R CMD build works).  tools::checkRdContents() has
    been updated to detect such template leftovers, including from
    promptPackage().
  * When S4 method dispatch fails because no method was found, the
    error message now includes the signature argument names; thanks
    to Michael Chirico's proposal on the R-devel list.
  * withAutoprint({ .. }) now preserves srcrefs previously lost,
    thanks to Andrew Simmons' report plus fix in PR#18572.
  * transform.data.frame() no longer adjusts names; in particular,
    untransformed variables are kept as-is, including those with
    syntactically invalid names (PR#17890).
  * The keep.source option for Rd \Sexpr blocks is no longer ignored.
  * The formula methods for t.test() and wilcox.test() now catch when
    paired is passed, addressing PR#14359; use Pair(x1, x2) ~ 1 for a
    paired test.
  * The level reported in the browser prompt was often too large. It
    now shows the number of browser contexts on the stack.
  * For cbind() and rbind(), the optional deparse.level argument is
    now properly passed to methods, thanks to Mikael Jagan's PR#18579
    and comments there.
  * Some error and warning messages for large ('long vector')
    matrix(v, nr, nc) and dim(m) &lt;- d are now correct about sizes,
    using long long formatting, fixing PR#18612 (and more) reported
    by Mikael Jagan.
  * readChar(useBytes = TRUE) now terminates strings even when the
    underlying connection uses extra spaces in the input buffer.
    This fixes problems with extra garbage seen with gzip
    connections, PR#18605.
  * Named capture in PCRE regular expressions now works also with
    more than 127 named groups (PR#18588).
  * Datetime functions are now robust against long jumps when dealing
    with internal time zone changes.  This avoids confusing warnings
    about an invalid time zone, previously triggered by turning
    warnings into errors or handling them via tryCatch (PR#17966,
    PR#17780).
  * Datetime functions now restore even an empty TZ environment
    variable after internal time zone changes (PR#17724).  This makes
    results of datetime functions with this (typically unintentional)
    setting more predictable.
  * drop.terms(*) now drops response as by default, keep.response =
    FALSE, fixing PR#18564 thanks to Mikael Jagan.
  * dummy.coef(.) now also works for lm()-models with character
    categorical predictor variables rather than factor ones, fixing
    PR#18635 reported by Jinsong Zhao.
  * formals(f) &lt;- formals(f) now also works for a function w/o
    arguments and atomic _constant_ body(f).
  * Correct as.function(&lt;invalid list&gt;, .)'s error message.
  * removeSource() is yet more thorough in finding and removing
    "srcref" and the other source references from parsed R language
    chunks, fixing PR#18638 thanks to Andrew Simmons.
  * dgeom() is more accurate now, notably when its result is very
    small, fixing PR#18642 thanks to the proposal of Morten Welinder,
    also improving other instances where C level binom_raw(x, n, ..)
    has x == 0 or x== n.
  * warning() with options(warn = 1) has improved output for
    multi-line messages.
  * axis.Date() and axis.POSIXct() now respect the par("lab") setting
    for the number of pretty() intervals.
  * Comparisons for language objects (which are based on deparsing)
    are now more careful about using accurate deparsed results
    (PR#18676).
  * Plain-text help (Rd2txt) now correctly preserves blank lines
    following single-line \dontrun code.
  * &lt;POSIXlt&gt;[*] no longer sets wrong "balanced" attribute, fixing
    PR#18681 thanks to Mikael Jagan.
  * str(&lt;classed-call&gt;) now deparses the call as expected, fixing
    PR#18684, reported by Dave Slager.
  * In Rd examples, code following the closing brace of a \dontrun,
    \dontshow or \donttest tag on the same line is no longer skipped
    when R CMD check runs the examples.
  * as.data.frame(matrix(*, ncol=0)) now gets valid names() and
    colnames(); reported by Davis Vaughan on the R-devel list.
  * Internal Mathlib function stirlerr(n) is now almost fully
    (52-bit) accurate for all n &gt;= ~5.9 and more accurate also in the
    range 1 -- 5.9.  This entails small ("after 12th decimal")
    changes in density functions, e.g., dgamma() in _some_ regions of
    their support.  The fix was partly prompted by Morten Welinder's
    PR#18640.
  * Numbers like 9876543.2 are now considered non-integer by Mathlib
    internal R_nonint(), amending original fix of PR#15734.
  * Rd comment lines no longer cause broken paragraphs in the
    rendered PDF and plain-text help. In code blocks, pure comment
    lines (starting with %) no longer produce an empty line.
  * xtabs(Freq ~ .) now consistently defaults to na.action = na.pass,
    using na.rm = FALSE (added as an argument) when summing over Freq
    (PR#17770).
  * tools::testInstalledPackage() is no longer silent about failures
    from running examples or tests and its return code no longer
    ignores failures from checking vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1718366400">- CHANGES IN R 4.4.1:
  C-LEVEL FACILITIES:
  * Functions R_atof and R_strtod declared in header R_ext/Utils.h
    are now documented in 'Writing R Extensions' and so formally part
    of the API.
  * The non-API entry points Rf_setSVector, Rf_StringFalse,
    Rf_StringTrue and Rf_isBlankString have been added to those
    reported by R CMD check.
  * The new function Rf_allocLang is now available. This provides an
    alternative to the idiom of calling Rf_allocList followed by
    SET_TYPEOF.
  UTILITIES:
  * R CMD check now reports as warnings what gfortran calls 'Fortran
    2018 deleted features', all of which have long been marked as
    'obsolescent' and some of which were deleted in Fortran 2008 or
    earlier.  Fortran compilers are no longer required to support
    these.
  BUG FIXES:
  * as.numeric(), scan(), type.convert() and other places which use
    the internal C function R_strtod now require a _non-empty_ digit
    sequence in a decimal or binary exponent.  This aligns with the
    C/POSIX standard for strtod and with ?NumericConstants.
  * as.data.frame(m, make.names=NA) now works correctly for a matrix
    m with NA's in row names.
  * The error message from &lt;POSIXlt&gt;[["hour"]] and similar now
    mentions *[[, "hour"]], as wished for in PR#17409 and proposed by
    Michael Chirico.
  * qbinom() and potentially qpois(), qnbinom(), no longer sometimes
    fail accurate inversion (of pbinom(), etc), thanks to Christopher
    Chang's report and patch in PR#18711.
  * The internal help server on Windows can again serve requests sent
    in quick succession, fixing a regression in R 4.4.0.
  * debugcall(&lt;S3Generic&gt;()) now also works when a corresponding
    S4-generic version is in the methods cache (PR#18143).
  * Package tools' toTitleCase(ch0) now returns character(0) when ch0
    is of zero length; fixing PR#18724, reported by David Hugh Jones.
  * R CMD check is no longer broken (without a check result and no
    explanation in 00check.log) for a package which declares an
    invalid VignetteBuilder in DESCRIPTION but has no vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1730376000">- CHANGES IN R 4.4.2:
  C-LEVEL FACILITIES:
  * The S-compatibility macros F77_COM and F77_COMDECL defined in
    header R_ext/RS.h are deprecated and will be removed shortly.  We
    could find no record of their use.
  BUG FIXES:
  * Mathlib function lgammacor(x) no longer warns about underflow to
    zero for large x.
  * Text widths and heights were incorrectly reported by the Quartz
    device if the drawing context didn't exist yet (typically when
    drawing off-screen to a window that is yet to appear, see
    PR#18591).
  * The Quartz device could segfault in cases where paths with spaces
    are used in the new glyph drawing API.  Thanks to Tomek
    Gieorgijewski (PR#18758).
  * On macOS in R CRAN builds, it is again possible to read
    little-endian UTF-16 text with a BOM from a connection using
    encoding="UTF-16".  Users building R from source should avoid
    using the system libiconv in macOS 14.1 and later.
  * methods' internal .requirePackage() now re-enables primitive
    method dispatch when needed; thanks to Ivan Krylov for
    demystifying CRAN package check failures on the R-devel mailing
    list.</changelog>
</package>
<package pkgid="70807780cbdb7a188f57211ca5b66a8f7fa6790a2d2e6bd1682866c0569e314296cc9b35c0e926249d819a0f187c6a2deca415e629d132d78819a72ba0b791bc" name="R-nnet-debuginfo" arch="x86_64">
  <version epoch="0" ver="7.3.19" rel="51.0.2.2.sr20241103"/>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1620302400">- To get in sync with d:l:R:autoCRAN the Matrix package's split
  in -devel was reversed.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339200">- improved spec file according to comments of dimstar in
  https://build.opensuse.org/request/show/892685</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339201">- CHANGES IN R 4.1.0:
  FUTURE DIRECTIONS:
  * It is planned that the 4.1.x series will be the last to support
    32-bit Windows, with production of binary packages for that
    series continuing until early 2023.
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Data set esoph in package datasets now provides the correct
    numbers of controls; previously it had the numbers of cases added
    to these.  (Reported by Alexander Fowler in PR#17964.)
  NEW FEATURES:
  * www.omegahat.net is no longer one of the repositories known by
    default to setRepositories().  (Nowadays it only provides source
    packages and is often unavailable.)
  * Function package_dependencies() (in package tools) can now use
    different dependency types for direct and recursive dependencies.
  * The checking of the size of tarball in R CMD check --as-cran
    &lt;pkg&gt; may be tweaked via the new environment variable
    _R_CHECK_CRAN_INCOMING_TARBALL_THRESHOLD_, as suggested in
    PR#17777 by Jan Gorecki.
  * Using c() to combine a factor with other factors now gives a
    factor, an ordered factor when combining ordered factors with
    identical levels.
  * apply() gains a simplify argument to allow disabling of
    simplification of results.
  * The format() method for class "ftable" gets a new option justify.
    (Suggested by Thomas Soeiro.)
  * New ...names() utility.  (Proposed by Neal Fultz in PR#17705.)
  * type.convert() now warns when its as.is argument is not
    specified, as the help file always said it _should_.  In that
    case, the default is changed to TRUE in line with its change in
    read.table() (related to stringsAsFactor) in R 4.0.0.
  * When printing list arrays, classed objects are now shown _via_
    their format() value if this is a short enough character string,
    or by giving the first elements of their class vector and their
    length.
  * capabilities() gets new entry "Rprof" which is TRUE when R has
    been configured with the equivalent of --enable-R-profiling (as
    it is by default).  (Related to Michael Orlitzky's report
    PR#17836.)
  * str(xS4) now also shows extraneous attributes of an S4 object
    xS4.
  * Rudimentary support for vi-style tags in rtags() and R CMD rtags
    has been added.  (Based on a patch from Neal Fultz in PR#17214.)
  * checkRdContents() is now exported from tools; it and also
    checkDocFiles() have a new option chkInternal allowing to check
    Rd files marked with keyword "internal" as well.  The latter can
    be activated for R CMD check via environment variable
    _R_CHECK_RD_INTERNAL_TOO_.
  * New functions numToBits() and numToInts() extend the raw
    conversion utilities to (double precision) numeric.
  * Functions URLencode() and URLdecode() in package utils now work
    on vectors of URIs.  (Based on patch from Bob Rudis submitted
    with PR#17873.)
  * path.expand() can expand ~user on most Unix-alikes even when
    readline is not in use.  It tries harder to expand ~, for example
    should environment variable HOME be unset.
  * For HTML help (both dynamic and static), Rd file links to help
    pages in external packages are now treated as references to
    topics rather than file names, and fall back to a file link only
    if the topic is not found in the target package. The earlier rule
    which prioritized file names over topics can be restored by
    setting the environment variable _R_HELP_LINKS_TO_TOPICS_ to a
    false value.
  * c() now removes NULL arguments before dispatching to methods,
    thus simplifying the implementation of c() methods, _but_ for
    back compatibility keeps NULL when it is the first argument.
    (From a report and patch proposal by Lionel Henry in PR#17900.)
  * Vectorize()'s result function's environment no longer keeps
    unneeded objects.
  * Function ...elt() now propagates visibility consistently with
    ..n.  (Thanks to Lionel Henry's PR#17905.)
  * capture.output() no longer uses non-standard evaluation to
    evaluate its arguments.  This makes evaluation of functions like
    parent.frame() more consistent.  (Thanks to Lionel Henry's
    PR#17907.)
  * packBits(bits, type="double") now works as inverse of
    numToBits().  (Thanks to Bill Dunlap's proposal in PR#17914.)
  * curlGetHeaders() has two new arguments, timeout to specify the
    timeout for that call (overriding getOption("timeout")) and TLS
    to specify the minimum TLS protocol version to be used for
    https:// URIs (_inter alia_ providing a means to check for sites
    using deprecated TLS versions 1.0 and 1.1).
  * For nls(), an optional constant scaleOffset may be added to the
    denominator of the relative offset convergence test for cases
    where the fit of a model is expected to be exact, thanks to a
    proposal by John Nash.  nls(*, trace=TRUE) now also shows the
    convergence criterion.
  * Numeric differentiation _via_ numericDeriv() gets new optional
    arguments eps and central, the latter for taking central divided
    differences.  The latter can be activated for nls() via
    nls.control(nDcentral = TRUE).
  * nls() now passes the trace and control arguments to getInitial(),
    notably for all self-starting models, so these can also be fit in
    zero-noise situations via a scaleOffset.  For this reason, the
    initial function of a selfStart model must now have ... in its
    argument list.
  * bquote(splice = TRUE) can now splice expression vectors with
    attributes: this makes it possible to splice the result of
    parse(keep.source = TRUE).  (Report and patch provided by Lionel
    Henry in PR#17869.)
  * textConnection() gets an optional name argument.
  * get(), exists(), and get0() now signal an error if the first
    argument has length greater than 1.  Previously additional
    elements were silently ignored.  (Suggested by Antoine Fabri on
    R-devel.)
  * R now provides a shorthand notation for creating functions, e.g.
    \(x) x + 1 is parsed as function(x) x + 1.
  * R now provides a simple native forward pipe syntax |&gt;.  The
    simple form of the forward pipe inserts the left-hand side as the
    first argument in the right-hand side call.  The pipe
    implementation as a syntax transformation was motivated by
    suggestions from Jim Hester and Lionel Henry.
  * all.equal(f, g) for functions now by default also compares their
    environment(.)s, notably via new all.equal method for class
    function.  Comparison of nls() fits, e.g., may now need
    all.equal(m1, m2, check.environment = FALSE).
  * .libPaths() gets a new option include.site, allowing to _not_
    include the site library.  (Thanks to Dario Strbenac's suggestion
    and Gabe Becker's PR#18016.)
  * Lithuanian translations are now available.  (Thanks to Rimantas
    Zakauskas.)
  * names() now works for DOTSXP objects.  On the other hand, in
    R-lang, the R language manual, we now warn against relying on the
    structure or even existence of such dot-dot-dot objects.
  * all.equal() no longer gives an error on DOTSXP objects.
  * capabilities("cairo") now applies only to the file-based devices
    as it is now possible (if very unusual) to build R with Cairo
    support for those but not for X11().
  * There is optional support for tracing the progress of
    loadNamespace() - see its help.
  * (Not Windows.)  l10n_info() reports an additional element, the
    name of the encoding as reported by the OS (which may differ from
    the encoding part (if any) of the result from
    Sys.getlocale("LC_CTYPE").
  * New function gregexec() which generalizes regexec() to find _all_
    disjoint matches and well as all substrings corresponding to
    parenthesized subexpressions of the given regular expression.
    (Contributed by Brodie Gaslam.)
  * New function charClass() in package utils to query the
    wide-character classification functions in use (such as
    iswprint).
  * The names of quantile()'s result no longer depend on the global
    getOption("digits"), but quantile() gets a new optional argument
    digits = 7 instead.
  * grep(), sub(), regexp and variants work considerably faster for
    long factors with few levels.  (Thanks to Michael Chirico's
    PR#18063.)
  * Provide grouping of x11() graphics windows within a window
    manager such as Gnome or Unity; thanks to a patch by Ivan Krylov
    posted to R-devel.
  * The split() method for class data.frame now allows the f argument
    to be specified as a formula.
  * sprintf now warns on arguments unused by the format string.
  * New palettes "Rocket" and "Mako" for hcl.colors() (approximating
    palettes of the same name from the 'viridisLite' package).
    Contributed by Achim Zeileis.
  * The base environment and its namespace are now locked (so one can
    no longer add bindings to these or remove from these).
  * Rterm handling of multi-byte characters has been improved,
    allowing use of such characters when supported by the current
    locale.
  * Rterm now accepts ALT+ +xxxxxxxx sequences to enter Unicode
    characters as hex digits.
  * Environment variable LC_ALL on Windows now takes precedence over
    LC_CTYPE and variables for other supported categories, matching
    the POSIX behaviour.
  * duplicated() and anyDuplicated() are now optimized for integer
    and real vectors that are known to be sorted via the ALTREP
    framework. Contributed by Gabriel Becker via PR#17993.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 14
    and so packages that provide graphics devices should be
    reinstalled.
  * Graphics devices should now specify deviceVersion to indicate
    what version of the graphics engine they support.
  * Graphics devices can now specify deviceClip.  If TRUE, the
    graphics engine will never perform any clipping of output itself.
    The clipping that the graphics engine does perform (for both
    canClip = TRUE and canClip = FALSE) has been improved to avoid
    producing unnecessary artifacts in clipped output.
  * The grid package now allows gpar(fill) to be a linearGradient(),
    a radialGradient(), or a pattern().  The viewport(clip) can now
    also be a grob, which defines a clipping path, and there is a new
    viewport(mask) that can also be a grob, which defines a mask.
    These new features are only supported so far on the Cairo-based
    graphics devices and on the pdf() device.
  * (Not Windows.)  A warning is given when a Cairo-based type is
    specified for a png(), jpeg(), tiff() or bmp() device but Cairo
    is unsupported (so type = "Xlib" is tried instead).
  * grSoftVersion() now reports the versions of FreeType and
    FontConfig if they are used directly (not _via_ Pango), as is
    most commonly done on macOS.
  C-LEVEL FACILITIES:
  * The _standalone_ libRmath math library and R's C API now provide
    log1pexp() again as documented, and gain log1mexp().
  INSTALLATION on a UNIX-ALIKE:
  * configure checks for a program pkgconf if program pkg-config is
    not found.  These are now only looked for on the path (like
    almost all other programs) so if needed specify a full path to
    the command in PKG_CONFIG, for example in file config.site.
  * C99 function iswblank is required - it was last seen missing ca
    2003 so the workaround has been removed.
  * There are new configure options --with-internal-iswxxxxx,
  - -with-internal-towlower and --with-internal-wcwidth which allows
    the system functions for wide-character classification,
    case-switching and width (wcwidth and wcswidth) to be replaced by
    internal ones.  The first has long been used on macOS, AIX (and
    Windows) but this enables it to be unselected there and selected
    for other platforms (it is the new default on Solaris).  The
    second is new in this version of R and is selected by default on
    macOS and Solaris.  The third has long been the default and
    remains so as it contains customizations for East Asian
    languages.
    System versions of these functions are often minimally
    implemented (sometimes only for ASCII characters) and may not
    cover the full range of Unicode points: for example Solaris (and
    Windows) only cover the Basic Multilingual Plane.
  * Cairo installations without X11 are more likely to be detected by
    configure, when the file-based Cairo graphics devices will be
    available but not X11(type = "cairo").
  * There is a new configure option --with-static-cairo which is the
    default on macOS.  This should be used when only static cairo
    (and where relevant, Pango) libraries are available.
  * Cairo-based graphics devices on platforms without Pango but with
    FreeType/FontConfig will make use of the latter for font
    selection.
  LINK-TIME OPTIMIZATION on a UNIX-ALIKE:
  * Configuring with flag --enable-lto=R now also uses LTO when
    installing the recommended packages.
  * R CMD INSTALL and R CMD SHLIB have a new flag --use-LTO to use
    LTO when compiling code, for use with R configured with
  - -enable-lto=R.  For R configured with --enable-lto, they have
    the new flag --no-use-LTO.
    Packages can opt in or out of LTO compilation _via_ a UseLTO
    field in the DESCRIPTION file.  (As usual this can be overridden
    by the command-line flags.)
  BUILDING R on Windows:
  * for GCC &gt;= 8, FC_LEN_T is defined in config.h and hence character
    lengths are passed from C to Fortran in _inter alia_ BLAS and
    LAPACK calls.
  * There is a new text file src/gnuwin32/README.compilation, which
    outlines how C/Fortran code compilation is organized and
    documents new features:
  * R can be built with Link-Time Optimization with a suitable
    compiler - doing so with GCC 9.2 showed several
    inconsistencies which have been corrected.
  * There is support for cross-compiling the C and Fortran code
    in R and standard packages on suitable (Linux) platforms.
    This is mainly intended to allow developers to test later
    versions of compilers - for example using GCC 9.2 or 10.x has
    detected issues that GCC 8.3 in Rtools40 does not.
  * There is experimental support for cross-building R packages
    with C, C++ and/or Fortran code.
  * The R installer can now be optionally built to support a single
    architecture (only 64-bit or only 32-bit).
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++14 where
    available (which it is on all currently checked platforms): if
    not (as before) C++11 is used if available otherwise C++ is not
    supported.
    Packages which specify C++11 will still be installed using C++11.
    C++14 compilers may give deprecation warnings, most often for
    std::random_shuffle (deprecated in C++14 and removed in C++17).
    Either specify C++11 (see 'Writing R Extensions') or modernize
    the code and if needed specify C++14.  The latter has been
    supported since R 3.4.0 so the package's DESCRIPTION would need
    to include something like
    Depends: R (&gt;= 3.4)
  PACKAGE INSTALLATION on Windows:
  * R CMD INSTALL and R CMD SHLIB make use of their flag --use-LTO
    when the LTO_OPT make macro is set in file etc/${R_ARCH}/Makeconf
    or in a personal/site Makevars file.  (For details see 'Writing R
    Extensions' SS4.5.)
    This provides a valuable check on code consistency.  It does work
    with GCC 8.3 as in Rtools40, but that does not detect everything
    the CRAN checks with current GCC do.
  PACKAGE INSTALLATION on macOS:
  * The default personal library directory on builds with
  - -enable-aqua (including CRAN builds) now differs by CPU type,
    one of
    ~/Library/R/x86_64/x.y/library
    ~/Library/R/arm64/x.y/library
    This uses the CPU type R (and hence the packages) were built for,
    so when a x86_64 build of R is run under Rosetta emulation on an
    arm64 Mac, the first is used.
  UTILITIES:
  * R CMD check can now scan package functions for bogus return
    statements, which were possibly intended as return() calls (wish
    of PR#17180, patch by Sebastian Meyer). This check can be
    activated via the new environment variable
    _R_CHECK_BOGUS_RETURN_, true for --as-cran.
  * R CMD build omits tarballs and binaries of previous builds from
    the top-level package directory.  (PR#17828, patch by Sebastian
    Meyer.)
  * R CMD check now runs sanity checks on the use of LazyData, for
    example that a data directory is present and that
    LazyDataCompression is not specified without LazyData and has a
    documented value.  For packages with large LazyData databases
    without specifying LazyDataCompression, there is a reference to
    the code given in 'Writing R Extensions' SS1.1.6 to test the
    choice of compression (as in all the CRAN packages tested a
    non-default method was preferred).
  * R CMD build removes LazyData and LazyDataCompression fields from
    the DESCRIPTION file of packages without a data directory.
  ENCODING-RELATED CHANGES:
  * The parser now treats \Unnnnnnnn escapes larger than the upper
    limit for Unicode points (\U10FFFF) as an error as they cannot be
    represented by valid UTF-8.
    Where such escapes are used for outputting non-printable
    (including unassigned) characters, 6 hex digits are used (rather
    than 8 with leading zeros).  For clarity, braces are used, for
    example \U{0effff}.
  * The parser now looks for non-ASCII spaces on Solaris (as
    previously on most other OSes).
  * There are warnings (including from the parser) on the use of
    unpaired surrogate Unicode points such as \uD834.  (These cannot
    be converted to valid UTF-8.)
  * Functions nchar(), tolower(), toupper() and chartr() and those
    using regular expressions have more support for inputs with a
    marked Latin-1 encoding.
  * The character-classification functions used (by default) to
    replace the system iswxxxxx functions on Windows, macOS and AIX
    have been updated to Unicode 13.0.0.
    The character-width tables have been updated to include new
    assignments in Unicode 13.0.0.
  * The code for evaluating default (extended) regular expressions
    now uses the same character-classification functions as the rest
    of R (previously they differed on Windows, macOS and AIX).
  * There is a build-time option to replace the system's
    wide-character wctrans C function by tables shipped with R: use
    configure option --with-internal-towlower or (on Windows)
  - DUSE_RI18N_CASE in CFLAGS when building R.  This may be needed
    to allow tolower() and toupper() to work with Unicode characters
    beyond the Basic Multilingual Plane where not supported by system
    functions (e.g. on Solaris where it is the new default).
  * R is more careful when truncating UTF-8 and other multi-byte
    strings that are too long to be printed, passed to the system or
    libraries or placed into an internal buffer.  Truncation will no
    longer produce incomplete multibyte characters.
  DEPRECATED AND DEFUNCT:
  * Function plclust() from the package stats and
    package.dependencies(), pkgDepends(), getDepList(),
    installFoundDepends(), and vignetteDepends() from package tools
    are defunct.
  * Defunct functions checkNEWS() and readNEWS() from package tools
    and CRAN.packages() from utils have been removed.
  * R CMD config CXXCPP is defunct (it was deprecated in R 3.6.2).
  * parallel::detectCores() drops support for Irix (retired in 2013).
  * The LINPACK argument to chol.default(), chol2inv(),
    solve.default() and svd() has been defunct since R 3.1.0.  It was
    silently ignored up to R 4.0.3 but now gives an error.
  * Subsetting/indexing, such as ddd[*] or ddd$x on a DOTSXP
    (dot-dot-dot) object ddd has been disabled; it worked by accident
    only and was undocumented.
  BUG FIXES:
  * Many more C-level allocations (mainly by malloc and strdup) are
    checked for success with suitable alternative actions.
  * Bug fix for replayPlot(); this was turning off graphics engine
    display list recording if a recorded plot was replayed in the
    same session.  The impact of the bug became visible if resize the
    device after replay OR if attempted another savePlot() after
    replay (empty display list means empty screen on resize or empty
    saved plot).
  * R CMD check etc now warn when a package exports non-existing S4
    classes or methods, also in case of no "methods" presence.
    (Reported by Alex Bertram; reproducible example and patch by
    Sebastian Meyer in PR#16662.)
  * boxplot() now also accepts calls for labels such as ylab, the
    same as plot().  (Reported by Marius Hofert.)
  * The help page for xtabs() now correctly states that addNA is
    setting na.action = na.pass among others.  (Reported as PR#17770
    by Thomas Soeiro.)
  * The R CMD check &lt;pkg&gt; gives a longer and more comprehensible
    message when DESCRIPTION misses dependencies, e.g., in Imports:.
    (Thanks to the contributors of PR#17179.)
  * update.default() now calls the generic update() on the formula to
    work correctly for models with extended formulas.  (As reported
    and suggested by Neal Fultz in PR#17865.)
  * The horizontal position of leaves in a dendrogram is now correct
    also with center = FALSE.  (PR#14938, patch from Sebastian
    Meyer.)
  * all.equal.POSIXt() no longer warns about and subsequently ignores
    inconsistent "tzone" attributes, but describes the difference in
    its return value (PR#17277).  This check can be disabled _via_
    the new argument check.tzone = FALSE as suggested by Sebastian
    Meyer.
  * as.POSIXct() now populates the "tzone" attribute from its tz
    argument when x is a logical vector consisting entirely of NA
    values.
  * x[[2^31]] &lt;- v now works.  (Thanks to the report and patch by
    Suharto Anggono in PR#17330.)
  * In log-scale graphics, axis() ticks and label positions are now
    computed more carefully and symmetrically in their range,
    typically providing _more_ ticks, fulfilling wishes in PR#17936.
    The change really corresponds to an improved axisTicks() (package
    grDevices), potentially influencing grid and lattice, for
    example.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now correct to at
    least five digits where it was catastrophically wrong,
    previously.
  * sum(df) and similar "Summary"- and "Math"-group member functions
    now work for data frames df with logical columns, notably also of
    zero rows.  (Reported to R-devel by Martin "b706".)
  * unsplit() had trouble with tibbles due to unsound use of rep(NA,
    len)-indexing, which should use NA_integer_ (Reported to R-devel
    by Mario Annau.)
  * pnorm(x, log.p = TRUE) underflows to -Inf slightly later.
  * show(&lt;hidden S4 generic&gt;) prints better and without quotes for
    non-hidden S4 generics.
  * read.table() and relatives treated an "NA" column name as missing
    when check.names = FALSE PR#18007.
  * Parsing strings containing UTF-16 surrogate pairs such as
    "\uD834\uDD1E" works better on some (uncommon) platforms.
    sprintf("%X", utf8ToInt("\uD834\uDD1E")) should now give "1D11E"
    on all platforms.
  * identical(x,y) is no longer true for differing DOTSXP objects,
    fixing PR#18032.
  * str() now works correctly for DOTSXP and related exotics, even
    when these are doomed.
    Additionally, it no longer fails for lists with a class and
    "irregular" method definitions such that e.g. lapply(*) will
    necessarily fail, as currently for different igraph objects.
  * Too long lines in environment files (e.g. Renviron) no longer
    crash R. This limit has been increased to 100,000 bytes.
    (PR#18001.)
  * There is a further workaround for FreeType giving incorrect
    italic font faces with cairo-based graphics devices on macOS.
  * add_datalist(*, force = TRUE) (from package tools) now actually
    updates an existing data/datalist file for new content.  (Thanks
    to a report and patch by Sebastian Meyer in PR#18048.)
  * cut.Date() and cut.POSIXt() could produce an empty last interval
    for breaks = "months" or breaks = "years".  (Reported as PR#18053
    by Christopher Carbone.)
  * Detection of the encoding of 'regular' macOS locales such as
    en_US (which is UTF-8) had been broken by a macOS change:
    fortunately these are now rarely used with en_US.UTF-8 being
    preferred.
  * sub() and gsub(pattern, repl, x, *) now keep attributes of x such
    as names() also when pattern is NA (PR#18079).
  * Time differences ("difftime" objects) get a replacement and a
    rep() method to keep "units" consistent.  (Thanks to a report and
    patch by Nicolas Bennett in PR#18066.)
  * The \RdOpts macro, setting defaults for \Sexpr options in an Rd
    file, had been ineffective since R 2.12.0: it now works again.
    (Thanks to a report and patch by Sebastian Meyer in PR#18073.)
  * mclapply and pvec no longer accidentally terminate parallel
    processes started before by mcparallel or related calls in
    package parallel (PR#18078).
  * grep and other functions for evaluating (extended) regular
    expressions handle in Unicode also strings not explicitly flagged
    UTF-8, but flagged native when running in UTF-8 locale.
  * Fixed a crash in fifo implementation on Windows (PR#18031).
  * Binary mode in fifo on Windows is now properly detected from
    argument open (PR#15600, PR#18031).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1622808000">- The line %{__install} -m 755 -d %{_infodir}
  no longer works in TW or Factory.
  But without that line it works everywhere. So this instruction
  was commented out of the spec file.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1628596800">- CHANGES IN R 4.1.1:
  NEW FEATURES:
  * require(pkg, quietly = TRUE) is quieter and in particular does
    not warn if the package is not found.
  DEPRECATED AND DEFUNCT:
  * Use of ftp:// URIs should be regarded as deprecated, with
    on-going support confined to method = "libcurl" and not routinely
    tested.  (Nowadays no major browser supports them.)
  * The non-default method = "internal" is deprecated for http:// and
    ftp:// URIs for both download.file and url.
  * On Windows, method = "wininet" is deprecated for http://,
    https:// and ftp:// URIs for both download.file and url.  (A
    warning is only given for ftp://.)
    For ftp:// URIs the default method is now "libcurl" if available
    (which it is on CRAN builds).
    method = "wininet" remains the default for http:// and https://
    URIs but if libcurl is available, using method = "libcurl" is
    preferred.
  INSTALLATION:
  * make check now works also without a LaTeX installation.  (Thanks
    to Sebastian Meyer's PR#18103.)
  BUG FIXES:
  * make check-devel works again in an R build configured with
  - -without-recommended-packages.
  * qnbinom(p, size, mu) for large size/mu is correct now in a range
    of cases (PR#18095); similarly for the (size, prob)
    parametrization of the negative binomial.  Also qpois() and
    qbinom() are better and or faster for extreme cases.  The
    underlying C code has been modularized and is common to all four
    cases of discrete distributions.
  * gap.axis is now part of the axis() arguments which are passed
    from bxp(), and hence boxplot().  (Thanks to Martin Smith's
    report and suggestions in PR#18109.)
  * .First and .Last can again be set from the site profile.
  * seq.int(from, to, *) and seq.default(..) now work better in large
    range cases where from-to is infinite where the two boundaries
    are finite.
  * all.equal(x,y) now returns TRUE correctly also when several
    entries of abs(x) and abs(y) are close to .Machine$double.xmax,
    the largest finite numeric.
  * model.frame() now clears the object bit when removing the class
    attribute of a value via na.action (PR#18100).
  * charClass() now works with multi-character strings on Windows
    (PR#18104, fixed by Bill Dunlap).
  * encodeString() on Solaris now works again in Latin-1 encoding on
    characters represented differently in UTF-8.  Support for
    surrogate pairs on Solaris has been improved.
  * file.show() on Windows now works with non-ASCII path names
    representable in the current native encoding (PR#18132).
  * Embedded R on Windows can now find R home directory via the
    registry even when installed only for the current user
    (PR#18135).
  * pretty(x) with finite x now returns finite values also in the
    case where the extreme x values are close in size to the maximal
    representable number .Machine$double.xmax.
    Also, it's been tweaked for very small ranges and when a boundary
    is close (or equal) to zero; e.g., pretty(c(0,1e-317)) no longer
    has negative numbers, currently still warning about a very small
    range, and pretty(2^-(1024 - 2^-1/(c(24,10)))) is more accurate.
  * The error message for not finding vignette files when weaving has
    correct file sizes now. (Thanks to Sebastian Meyer's PR#18154.)
  * dnbinom(20, &lt;large&gt;, 1) now correctly gives 0, and similar cases
    are more accurate with underflow precaution.  (Reported by Francisco Vera Alcivar in PR#18072.)</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635163200">- repaired https://bugzilla.suse.com/show_bug.cgi?id=1191380
  (rpmacros now go to rpmmacrodir)
- minor clean-ups in spec file</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635768000">- CHANGES IN R 4.1.2:
  C-LEVEL FACILITIES:
  * The workaround in headers R.h and Rmath.h (using namespace std;)
    for the Oracle Developer Studio compiler is no longer needed now
    C++11 is required so has been removed.  A couple more usages of
    log() (which should have been std::log()) with an int argument
    are reported on Solaris.
  * The undocumented limit of 4095 bytes on messages from the
    S-compatibility macros PROBLEM and MESSAGE is now documented and
    longer messages will be silently truncated rather than
    potentially causing segfaults.
  * If the R_NO_SEGV_HANDLER environment variable is non-empty, the
    signal handler for SEGV/ILL/BUS signals (which offers recovery
    user interface) is not set. This allows more reliable debugging
    of crashes that involve the console.
  DEPRECATED AND DEFUNCT:
  * The legacy S-compatibility macros PROBLEM, MESSAGE, ERROR, WARN,
    WARNING, RECOVER, ... are deprecated and will be hidden in R
    4.2.0. R's native interface of Rf_error and Rf_warning has long
    been preferred.
  BUG FIXES:
  * .mapply(F, dots, .) no longer segfaults when dots is not a list
    and uses match.fun(F) as always documented; reported by Andrew
    Simmons in PR#18164.
  * hist(&lt;Date&gt;, ...) and hist(&lt;POSIXt&gt;, ...)  no longer pass
    arguments for rect() (such as col and density) to axis().
    (Thanks to Sebastian Meyer's PR#18171.)
  * \Sexpr{ch} now preserves Encoding(ch). (Thanks to report and
    patch by Jeroen Ooms in PR#18152.)
  * Setting the RNG to "Marsaglia-Multicarry" e.g., by RNGkind(), now
    warns in more places, thanks to Andr'e Gillibert's report and
    patch in PR#18168.
  * gray(numeric(), alpha=1/2) no longer segfaults, fixing PR#18183,
    reported by Till Krenz.
  * Fixed dnbinom(x, size=&lt;very_small&gt;, .., log=TRUE) regression,
    reported by Martin Morgan.
  * as.Date.POSIXlt(x) now keeps names(x), thanks to Davis Vaughan's
    report and patch in PR#18188.
  * model.response() now strips an "AsIs" class typically, thanks to
    Duncan Murdoch's report and other discussants in PR#18190.
  * try() is considerably faster in case of an error and long call,
    as e.g., from some do.call().  Thanks to Alexander Kaever's
    suggestion posted to R-devel.
  * qqline(y = &lt;object&gt;) such as y=I(.), now works, see also
    PR#18190.
  * Non-integer mgp par() settings are now handled correctly in
    axis() and mtext(), thanks to Mikael Jagan and Duncan Murdoch's
    report and suggestion in PR#18194.
  * formatC(x) returns length zero character() now, rather than ""
    when x is of length zero, as documented, thanks to Davis
    Vaughan's post to R-devel.
  * removeSource(fn) now retains (other) attributes(fn).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1647000000">- CHANGES IN R 4.1.3:
  NEW FEATURES:
  * The default version of Bioconductor has been changed to 3.14.
    (This is used by setRepositories and the menus in GUIs.)
  UTILITIES:
  * R CMD check --as-cran has a workaround for a bug in versions of
    file up to at least 5.41 which mis-identify DBF files last
    changed in 2022 as executables.
  C-LEVEL FACILITIES:
  * The legacy S-compatibility macros SINGLE_* in R_ext/Constants.h
    (included by R.h) are deprecated and will be removed in R 4.2.0.
  BUG FIXES:
  * Initialization of self-starting nls() models with initialization
    functions following the pre-R-4.1.0 API (without the ...
    argument) works again for now, with a deprecation warning.
  * Fixed quoting of ~autodetect~ in Java setting defaults to avoid
    inadvertent user lookup due to leading ~, reported in PR#18231 by
    Harold Gutch.
  * substr(., start, stop) &lt;- v now treats _negative_ stop values
    correctly.  Reported with a patch in PR#18228 by Brodie Gaslam.
  * Subscripting an array x without dimnames by a
    length(dim(x))-column character matrix gave "random" non-sense,
    now an error; reported in PR#18244 by Mikael Jagan.
  * ...names() now matches names(list(...)) closely, fixing PR#18247.
  * all.equal(*, scale = s) now works as intended when length(s) &gt; 1,
    partly thanks to Michael Chirico's PR#18272.
  * print(x) for long vectors x now also works for named atomic
    vectors or lists and prints the correct number when reaching the
    getOption("max.print") limit; partly thanks to a report and
    proposal by Hugh Parsonage to the R-devel list.
  * all.equal(&lt;selfStart&gt;, *) no longer signals a deprecation
    warning.
  * reformulate(*, response=r) gives a helpful error message now when
    length(r) &gt; 1, thanks to Bill Dunlap's PR#18281.
  * Modifying globalCallingHandlers inside withCallingHandlers() now
    works or fails correctly, thanks to Henrik Bengtsson's PR#18257.
  * hist(&lt;Date&gt;, breaks = "days") and hist(&lt;POSIXt&gt;, breaks = "secs")
    no longer fail for inputs of length 1.
  * qbeta(.001, .9, .009) and similar cases now converge correctly
    thanks to Ben Bolker's report in PR#17746.
  * window(x, start, end) no longer wrongly signals "'start' cannot
    be after 'end'", fixing PR#17527 and PR#18291.
  * data() now checks that its (rarely used) list argument is a
    character vector - a couple of packages passed other types and
    gave incorrect results.
  * which() now checks its arr.ind argument is TRUE rather coercing
    to logical and taking the first element - which gave incorrect
    results in package code.
  * model.weights() and model.offset() more carefully extract their
    model components, thanks to Ben Bolker and Tim Taylor's R-devel
    post.
  * list.files(recursive = TRUE) now shows all broken symlinks
    (previously, some of them may have been omitted, PR#18296).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1650628800">- CHANGES IN R 4.2.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * The formula method of aggregate() now matches the generic in
    naming its first argument x (resolving PR#18299 by Thomas
    Soeiro).
    This means that calling aggregate() with a formula as a named
    first argument requires name formula in earlier versions of R and
    name x now, so portable code should not name the argument (code
    in many packages did).
  * Calling &amp;&amp; or || with either argument of length greater than one
    now gives a warning (which it is intended will become an error).
  * Calling if() or while() with a condition of length greater than
    one gives an error rather than a warning.  Consequently,
    environment variable _R_CHECK_LENGTH_1_CONDITION_ no longer has
    any effect.
  * Windows users should consult the WINDOWS section below for some
    profound changes including
  * Support for 32-bit builds has been dropped.
  * UTF-8 locales are used where available.
  * The default locations for the R installation and personal
    library folder have been changed.
    Thanks to Tomas Kalibera for months of work on the Windows port
    for this release.
  NEW FEATURES:
  * matrix(x, n, m) now warns in more cases where length(x) differs
    from n * m, as suggested by Abby Spurdle and Wolfgang Huber in
    Feb 2021 on the R-devel mailing list.
    This warning can be turned into an error by setting environment
    variable _R_CHECK_MATRIX_DATA_ to TRUE: R CMD check --as-cran
    does so unless it is already set.
  * Function file_test() in package utils gains tests for symlinks,
    readability and writability.
  * capabilities("libxml") is now false.
    The description of capabilities("http/ftp") now reflects that it
    refers to the default method, no longer the internal one.
  * simplify2array() gains an except argument for controlling the
    exceptions used by sapply().
  * Environment variables R_LIBS_USER and R_LIBS_SITE are both now
    set to the R system default if unset or empty, and can be set to
    NULL to indicate an empty list of user or site library
    directories.
  * The warning for axis()(-like) calls in cases of relatively small
    ranges (typically in log-scale situations) is slightly improved
    _and_ suppressed from explicit calls to .axisPars() as has always
    been the intention.
  * The contrasts setter function `contrasts&lt;-` gains an explicit
    default how.many = NULL rather than just using missing(how.many).
  * grid.pretty() gains a new optional argument n = 5.
  * There is a new function .pretty() with option bounds as a
    technical-utility version of pretty().  It and pretty() gain a
    new argument f.min with a better than back-compatible default.
  * Function grDevices::axisTicks() and related functions such as
    graphics::axis() work better, notably for the log scale; partly
    because of the pretty() improvements, but also because care is
    taken e.g., when ylim is finite but diff(ylim) is infinite.
  * nclass.FD() gains a digits option.
  * The R Mathlib internal C function bd0() (called indirectly from a
    dozen probability density and distribution functions such as
    dpois(), dbinom(), dgamma(), pgamma() _etc_) has been
    complemented by a more sophisticated and (mostly) more accurate C
    function ebd0(), currently called only by internal dpois_raw()
    improving accuracy for R level dpois() and potentially others
    calling it such as dnbinom(), dgamma() or pgamma().  (Thanks to
    Morten Welinder's PR#15628.)
  * write.ftable() gains sep = " " argument as suggested by Thomas
    Soeiro.
  * The names of the locale categories supported by R's
    Sys.getlocale() and Sys.setlocale() are now provided by variable
    .LC.categories in the base namespace.
  * The Date and POSIXt methods for hist() and the histogram method
    for plot() now also use the new default col = "lightgray" in
    consistency with the corresponding change to hist()'s default for
    R 4.0.0.
  * hist.default() gains new fuzz argument, and the histogram plot
    method no longer uses fractional axis ticks when displaying
    counts ("Frequency").
  * mapply() and hence Map() now also obey the "max-or-0-if-any"
    recycling rule, such that, e.g., Map(`+`, 1:3, 1[0]) is valid
    now.
  * as.character(&lt;obj&gt;) for "hexmode" or "octmode" objects now
    fulfils the important basic rule as.character(x)[j] ===
    as.character(x[j]).
  * The set utility functions, notably intersect() have been tweaked
    to be more consistent and symmetric in their two set arguments,
    also preserving a common mode.
  * substr(ch, start,end) &lt;- new now e.g., preserves names(ch); ditto
    for substring(), thanks to a patch from Brodie Gaslam.
  * plot(&lt;lm&gt;) gains a extend.ylim.f argument, in partial response to
    PR#15285; further PR#17784 is fixed thanks to several
    contributors and a patch by Elin Waring.  The Cook's dist
    contours get customizable via cook.col and cook.lty with a
    different default color and their legend is nicer by default and
    customizable via cook.legendChanges.
  * Attempting to subset an object that is not subsettable now
    signals an error of class notSubsettableError. The
    non-subsettable object is contained in the object field of the
    error condition.
  * Subscript-out-of-bounds errors are now signaled as errors of
    class subscriptOutOfBoundsError.
  * Stack-overflow errors are now signaled as errors inheriting from
    class stackOverflowError. See ?stackOverflowError for more
    details.
  * New partly experimental Sys.setLanguage() utility, solving the
    main problem of PR#18055.
  * gettext() and gettextf() get a new option trim = TRUE which when
    set to false allows translations for strings such as "Execution
    halted\n" typical for C code.
  * An experimental implementation of hash tables is now available.
    See ?hashtab for more details.
  * identical() gains a extptr.as.ref argument for requesting that
    external pointer objects be compared as reference objects.
  * reorder() gets an argument decreasing which it passes to sort()
    for level creation; based on the wish and patch by Thomas Soeiro
    in PR#18243.
  * as.vector() gains a data.frame method which returns a simple
    named list, also clearing a long standing 'FIXME' to enable
    as.vector(&lt;data.frame&gt;, mode="list").  This breaks code relying
    on as.vector(&lt;data.frame&gt;) to return the unchanged data frame.
  * legend() is now vectorized for arguments cex, x.intersp, and
    text.width.  The latter can now also be specified as a vector
    (one element for each column of the legend) or as NA for
    computing a proper column wise maximum value of strwidth(legend).
    The argument y.intersp can be specified as a vector with one
    entry for each row of the legend.
    legend() also gains new arguments title.cex and title.font.
    Thanks to Swetlana Herbrandt.
  * Deparsing no longer remaps attribute names dim, dimnames, levels,
    names and tsp to historical S-compatible names (which structure()
    maps back).
  * sample() and sample.int() have additional sanity checks on their
    size and n arguments.
    all.equal.numeric() gains a sanity check on its tolerance
    argument - calling all.equal(a, b, c) for three numeric vectors
    is a surprisingly common error.
    mean(na.rm =), rank(na.last =), barplot(legend.text =),
    boxplot(), contour(drawlabels =), polygon(border =) and
    methods::is(class2 =) have more robust sanity checks on their
    arguments.
    R CMD Rd2pdf (used by R CMD check) has a more robust sanity check
    on the format of \alias{} commands.
  * psigamma(x, deriv) for negative x now also works for deriv = 4
    and 5; their underlying C level dpsifn() is documented in
    'Writing R Extensions'.
  * The HTML help system now uses HTML5 (wish of PR#18149).
  * ks.test() now provides exact p-values also with ties and MC
    p-values in the two-sample (Smirnov) case.  By Torsten Hothorn.
  * ks.test() gains a formula interface, with y ~ 1 for the
    one-sample (Kolmogorov) test and y ~ group for the two-sample
    (Smirnov) test.  Contributed by Torsten Hothorn.
  * The return value from ks.test() now has class c("ks.test",
    "htest") - packages using try() need to take care to use
    inherits() and not == on the class.
  * New functions psmirnov(), qsmirnov() and rsmirnov() in package
    stats implementing the asymptotic and exact distributions of the
    two-sample Smirnov statistic.
  * iconv() now allows sub = "c99" to use C99-style escapes for UTF-8
    inputs which cannot be converted to encoding to.
  * In a forward pipe |&gt; expression it is now possible to use a named
    argument with the placeholder _ in the rhs call to specify where
    the lhs is to be inserted.  The placeholder can only appear once
    on the rhs.
  * The included LAPACK sources have been updated to version 3.10.0,
    except for the four Fortran 77 routines which 3.10.0 has
    re-implemented in Fortran 90 (where the older versions have been
    retained as the R build process does not support Fortran 90).
  * path.expand() and most other uses of tilde expansion now warn if
    a path would be too long if expanded.  (An exception is
    file.exists(), which silently returns false.)
  * trunc(&lt;Date&gt;, *) now supports units = "months" or "years" for
    consistency with the POSIXt method, thanks to Dirk Eddelbuettel's
    proposal in PR#18099.
  * list2DF() now checks that its arguments are of the same length,
    rather than use recycling.
  * The HTML help system has several new features: LaTeX-like math
    can be typeset using either KaTeX or MathJax, usage and example
    code is highlighted using Prism, and for dynamic help the output
    of examples and demos can be shown within the browser if the
    knitr package is installed. These features can be disabled by
    setting the environment variable _R_HELP_ENABLE_ENHANCED_HTML_ to
    a false value.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 15
    and so packages that provide graphics devices should be
    reinstalled.
  * The grid package now allows the user to specify a "vector" of
    pattern fills.  The fill argument to gpar() accepts a list of
    gradients and/or patterns and the functions linearGradient(),
    radialGradient(), and pattern() have a new group argument.
    Points grobs (data symbols) can now also have a pattern fill.
    The grobCoords() function now returns a more informative and
    complex result.
  * The grid package has new functions for drawing isolated groups:
    grid.group(), grid.define(), and grid.use().  These functions add
    compositing operators and affine transformations to R's graphics
    capabilities.
    The grid package also has new functions for stroking and filling
    paths: grid.stroke(), grid.fill(), and grid.fillStroke().
    A new function as.path() allows the user to specify the fill rule
    for a path that is to be used for clipping, stroking, or filling;
    available options are "winding" and "evenodd".  A new function
    as.mask() allows the user to specify the type of a mask;
    available options are "alpha" and "luminance".
    These new features are only supported so far (at most) on the
    Cairo-based graphics devices and on the pdf() device.
  * dev.capabilities() reports on device support for the new
    features.
  * par() now warns about unnamed non-character arguments to prevent
    misuse such as {usr &lt;- par("usr"); par(usr)}.
  INSTALLATION:
  * Facilities for accessing ftp:// sites are no longer tested
    (except _pro tem_ for curlGetHeaders()) as modern browsers have
    removed support.
  * R can now be built with DEFS = -DSTRICT_R_HEADERS .
  PACKAGE INSTALLATION:
  * R CMD INSTALL no longer tangles vignettes. This completes an R
    CMD build change in R 3.0.0 and affects packages built before R
    3.0.2. Such packages should be re-made with R CMD build to have
    the tangled R code of vignettes shipped with the tarball.
  * USE_FC_LEN_T will become the default: this uses the correct
    prototypes for Fortran BLAS/LAPACK routines called from C/C++,
    and requires adjustment of most such calls - see 'Writing R
    Extensions' SS6.6.2.  (This has been supported since R 3.6.2.)
  * Package installation speed for packages installed with
    keep.source has been improved. This resolve the issue reported by
    Ofek Shilon in PR#18236.
  UTILITIES:
  * R CMD check can optionally report files/directories left behind
    in home, /tmp (even though TMPDIR is set) and other directories.
    See the "R Internals" manual for details.
  * R CMD check now reports byte-compilation errors during
    installation.  These are not usually fatal but may result in
    parts of the package not being byte-compiled.
  * _R_CHECK_DEPENDS_ONLY_ can be applied selectively to examples,
    tests and/or vignettes in R CMD check: see the "R Internals"
    manual.
  * _R_CHECK_SRC_MINUS_W_IMPLICIT_ now defaults to true: recent
    versions of Apple clang on macOS have made implicit function
    declarations in C into a compilation error.
  * R CMD check --as-cran makes use of the environment variable
    AUTORECONF.  See the "R Internals" manual SS8 for further details.
  * R CMD check --use-valgrind also uses valgrind when re-building
    vignettes as some non-Sweave vignettes unhelpfully comment out
    all their code when R CMD check runs vignettes.
  * Errors in re-building vignettes (unless there are LaTeX errors)
    are reported by R CMD check as ERROR rather than WARNING when
    running vignettes has been skipped (as it frequently is in CRAN
    checks and by --as-cran).
  * R CMD Rd2pdf gains a --quiet option that is used by R CMD build
    when building the PDF package manual.
  * R CMD Rd2pdf now always runs LaTeX in batch mode, consistent with
    Texinfo &gt;= 6.7. The --batch option is ignored.
  * R CMD build and R CMD check now include the Rd file name and line
    numbers in the error message of an \Sexpr evaluation failure.
  * For packages using the \doi Rd macro (now an install-time \Sexpr)
    but no other dynamic Rd content, R CMD build now produces a
    smaller tarball and is considerably faster - skipping temporary
    package installation.
  C-LEVEL FACILITIES:
  * The non-API header R_ext/R-ftp-http.h is no longer provided, as
    the entry points it covered are now all defunct.
  * A number of non-API declarations and macro definitions have been
    moved from the installed header Rinternals.h to the internal
    header Defn.h. Packages that only use entry points and
    definitions documented to be part of the API as specified in
    'Writing R Extensions' SS6 should not be affected.
  * The macro USE_RINTERNALS no longer has any effect when compiling
    package code.  Packages which also use R_NO_REMAP will need to
    ensure that the remapped names are used for calls to API
    functions that were formerly also made available as macros.
  * The deprecated legacy S-compatibility macros PROBLEM, MESSAGE,
    ERROR, WARN, WARNING, RECOVER, ... are no longer defined in
    R_exts/RS.h (included by R.h).  Replace these by calls to
    Rf_error and Rf_warning (defined in header R_ext/Error.h included
    by R.h).
    Header R_ext/RS.h no longer includes R_ext/Error.h.
  * Header R_ext/Constants.h (included by R.h) when included from C++
    now includes the C++ header cfloat rather than the C header
    float.h (now possible as C++11 is required).
  * The legacy S-compatibility macros DOUBLE_* in R_ext/Constants.h
    (included by R.h) are deprecated.
  * The deprecated S-compatibility macros SINGLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * R_Calloc, R_Free and R_Realloc are preferred to their unprefixed
    forms and error messages now use the prefix. These forms were
    introduced in R 3.4.0 and are available even when
    STRICT_R_HEADERS is defined.
  * rmultinom has been documented in 'Writing R Extensions' SS6 so is
    now part of the R API.
  * Similarly, Rtanpi, called from R level tanpi() is now part of the
    R API.
  * The long-deprecated, undocumented and non-API entry point call_R
    is no longer declared in R_ext/RS.h (included by R.h).
  * The header S.h which has been unsupported since Jan 2016 has been
    removed.  Use R.h instead.
  DEPRECATED AND DEFUNCT:
  * The (non-default and deprecated) method = "internal" for
    download.file() and url() no longer supports http:// nor ftp://
    URIs.  (It is used only for file:// URIs.)
    On Windows, download.file(method = "wininet") no longer supports
    ftp:// URIs.  (It is no longer the default method, which is
    "libcurl" and does.)
    On Windows, the deprecated method = "wininet" now gives a warning
    for http:// and https:// URIs for both download.file() and url().
    (It is no longer the default method.)
  * On Windows, the command-line option --max-mem-size and
    environment variable R_MAX_MEM_SIZE are defunct.  The memory
    allocation limit was important for 32-bit builds, but these are
    no longer supported.
  * default.stringsAsFactors() is now formally deprecated, where that
    was only mentioned on its regular help page, previously.  So it
    now gives a warning if called.
  * unix.time() is defunct now; it had been deprecated since R 3.4.0.
  BUG FIXES:
  * Setting digits = 0 in format(), print.default() (and hence
    typically print()) or options() is again invalid.  Its behaviour
    was platform-dependent, and it is unclear what "zero significant
    digits" should mean (PR#18098).
  * Messages from C code in the cairo section of package grDevices
    are now also offered for translation, thanks to Michael Chirico's
    PR#18123.
  * mean(x) with finite x now is finite also without "long.double"
    capability.
  * R CMD Rd2pdf no longer leaves an empty build directory behind
    when it aborts due to an already existing output file.  (Thanks
    to Sebastian Meyer's PR#18141.)
  * density(x, weights = w, na.rm = TRUE) when anyNA(x) is true, now
    removes weights "in parallel" to x, fixing PR#18151, reported by
    Matthias Gondan.  Additionally, it gets a subdensity option.
  * Conversion of \Sexpr[]{&lt;expR&gt;} to LaTeX or HTML no longer
    produces long blocks of empty lines when &lt;expR&gt; itself contains
    several lines all producing empty output.  Thanks to a report and
    patch by Ivan Krylov posted to R-devel.
  * R CMD build no longer fails if a package vignette uses child
    documents and inst/doc exists.  (Thanks to Sebastian Meyer's
    PR#18156.)
  * When an R documentation ('help' source) file man/foo.Rd in a
    package has \donttest{..} examples with a syntax error, it is now
    signalled as ERROR and with correct line numbers relating to the
  * -Ex.R file, thanks to Duncan Murdoch and Sebastian Meyer's
    reports and patch proposals in PR#17501.
  * Improved determination of the correct translation domain in
    non-base packages, addressing the combination of PR#18092 and
    PR#17998 (#c6) with reports and _augmented_ patch #2904 by
    Suharto Anggono.
    Note that "R-base" is no longer the default domain e.g., for
    top-level calls to gettext(); rather translation needs explicit
    domain = * specification in such cases.
  * identical(attrib.as.set=FALSE) now works correctly with data
    frames with default row names (Thanks to Charlie Gao's PR#18179).
  * txtProgressBar() now enforces a non-zero width for argument char,
    without which no progress can be visible.
  * dimnames(table(d)) is more consistent in the case where d is a
    list with a single component, thanks to Thomas Soeiro's report to
    R-devel.
    Further, table(d1, d2) now gives an error when d1 and d2 are data
    frames as suggested by Thomas in PR#18224.
  * Fix for drawing semi-transparent lines and fills on the native
    Windows graphics device (PR#18219 and PR#16694).  Thanks to Nick
    Ray for helpful diagnosis on Bugzilla.
  * The deparser now wraps sub-expressions such as if(A) ..  with
    parentheses when needed; thanks to Duncan Murdoch's PR#18232 and
    Lionel Henry's patches there.
  * remove.packages() no longer tries to uninstall Priority: base
    packages, thanks to a report and suggestions by Colin Fay in
    PR#18227.
  * win.metafile() now has xpinch and ypinch arguments so that the
    user can override Windows' (potentially wrong) guess at device
    dimensions.
  * x[i] and x[[i]] for non-integer i should now behave in all cases
    as always documented: the index used is equivalent to
    as.integer(i) unless that would overflow where trunc(i) is used
    instead; thanks to Suharto Anggono's report and patch proposals
    in PR#17977.
  * asOneSidedFormula() now associates the resulting formula with the
    global environment rather than the evaluation environment created
    for the call.
  * &lt;bibentry&gt;$name now matches the field name case-insensitively,
    consistent with bibentry() creation and the replacement method.
  * cbind() failed to detect some length mismatches with a mixture of
    time-series and non-time-series inputs.
  * The default LaTeX style file Sweave.sty used by the RweaveLatex
    driver no longer loads the obsolete ae package; thanks to a
    report by Thomas Soeiro in PR#18271.  Furthermore, it now skips
    \usepackage[T1]{fontenc} for engines other than pdfTeX (if
    detected) or if the new [nofontenc] option is used.
  * smooth.spline() now stores its logical cv argument more safely,
    fixing a rare bug when printing, and also stores n.
  * smooth.spline(x,y,*) now computes the cv.crit statistic
    correctly, also when is.unsorted(x), fixing PR#18294.
  * The data.frame method of rbind() now warns when binding
    not-wholly-recycling vectors, by analogy to the default method
    (for matrices).
  * setAs() finds the correct class for name to when multiple
    packages define a class with that name. Thanks to Gabor Csardi
    for the report.
  * Fix for detaching a package when two classes of the same name are
    present in method signatures for the same generic. Thanks to
    Gabor Csardi for the report.
  * match.arg("", c("", "a", "B")) gives a better error message, in
    part from PR#17959, thanks to Elin Waring.
  * R CMD Sweave --clean no longer removes pre-existing files or
    subdirectories (PR#18242).
  * The quartz() device no longer splits polylines into subpaths.
    That has caused narrowly-spaced lines with many points to always
    look solid even when dashed line type was used due to dash phase
    restarts.
  * Deparsing constructs such as quote(1 + `!`(2) + 3) works again as
    before R 3.5.0, thanks to the report and patch in PR#18284 by
    Suharto Anggono.
  * as.list(f) for a factor f now keeps names(f), fixing PR#18309.
  * qbeta(.001, .9, .009) and analogous qf() calls now return a
    correct value instead of NaN or wrongly 1, all with a warning;
    thanks to the report by Ludger Goeminne in PR#18302.
  * plot.lm() failed to produce the plot of residuals vs.  factor
    levels (i.e., which=5 when leverages are constant) for models
    with character predictors (PR#17840).
  * interaction.plot(..., xtick = TRUE) misplaced the x-axis line
    (PR#18305).
  * Not strictly fixing a bug, format()ing and print()ing of
    non-finite Date and POSIXt values NaN and +/-Inf no longer show
    as NA but the respective string, e.g., Inf, for consistency with
    numeric vector's behaviour, fulfilling the wish of PR#18308.
  * R CMD check no longer runs test scripts generated from
    corresponding .Rin files twice and now signals an ERROR if
    processing an .Rin script fails.
  * tools::Rd2txt() used for plain-text help pages now renders \hrefs
    (if tools::Rd2txt_options(showURLs = TRUE)) and \urls with
    percent-encoding and standards-compliant delimiting style (angle
    brackets and no URL: prefix).  \email is now rendered with a
    mailto: prefix.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1655985600">- CHANGES IN R 4.2.1:
  NEW FEATURES:
  * New function utils::findCRANmirror() to find out if a CRAN mirror
    has been selected, otherwise fallback to the main site.  This
    behaves in the same way as tools::CRAN_package_db() and is
    intended for packages wishing to access CRAN for purposes other
    than installing packages.
    The need for this was shown by a day when the main CRAN website
    was offline and a dozen or so packages which had its URL
    hardcoded failed their checks.
  INSTALLATION on a UNIX-ALIKE:
  * The libraries searched for by --with-blas (without a value) now
    include BLIS (after OpenBLAS but before ATLAS).  And on macOS,
    the Accelerate framework (after ATLAS).  (This is patterned after
    the AX_BLAS macro from the Autoconf Archive.)
  * The included LAPACK sources have been updated to 3.10.1.
  UTILITIES:
  * The (full path to) the command tidy to be used for HTML
    validation can be set by environment variable R_TIDYCMD.
  * Setting environment variable _R_CHECK_RD_VALIDATE_RD2HTML_ to a
    false value will override R CMD check --as-cran and turn off HTML
    validation.  This provides a way to circumvent a problematic
    tidy.
    The 2006 version that ships with macOS is always skipped.
  C-LEVEL FACILITIES:
  * The undocumented legacy declarations of Sint, Sfloat, SINT_MAX
    and SINT_MIN in header R.h are deprecated.
  BUG FIXES:
  * fisher.test(d) no longer segfaults for "large" d; fixing PR#18336
    by preventing/detecting an integer overflow reliably.
  * tar(., files=*) now produces correctly the warning about invalid
    uid or gid of files, fixing PR#18344, reported by Martin Morgan.
  * tk_choose.files() with multi = FALSE misbehaved on paths
    containing spaces (PR#18334) (regression introduced in R 4.0.0).
  * sort(x, partial = ind, *) now works correctly notably for the
    non-default na.last = FALSE or TRUE, fixing PR#18335 reported by
    James Edwards.
  * Environment variable _R_CHECK_XREFS_REPOSITORIES_ is only used
    for checking .Rd cross-references in R CMD check (as documented)
    and not for other uses looking for a CRAN mirror.
  * The search for a CRAN mirror when checking packages now uses
    getOption("repos") if that specifies a CRAN mirror, even when it
    does not also specify all three Bioconductor repositories (as was
    previously required).
  * The HTML code generated by tools::Rd2HTML() has been improved to
    pass tidy 5.8.0.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1667217600">- CHANGES IN R 4.2.2:
  NEW FEATURES:
  * tools::Rdiff(useDiff = TRUE) checks for the presence of an
    external diff command and switches to useDiff = FALSE if none is
    found.  This allows R CMD Rdiff to always work.
  * On Windows, environment variable R_LIBCURL_SSL_REVOKE_BEST_EFFORT
    can be used to switch to only 'best-effort' SSL certificate
    revocation checks with the default "libcurl" download method.
    This reduces security, but may be needed for downloads to work
    with MITM proxies (PR#18379).
  * (macOS) The run-time check for libraries from XQuartz for X11 and
    Tcl/Tk no longer uses otool from the Apple Developer Tools
    (PR#18400).
  * The LaTeX style for producing the PDF manuals, Rd.sty, now loads
    the standard amsmath, amsfonts and amssymb packages for greater
    coverage of math commands in the Rd \eqn and \deqn macros.  The
    \mathscr LaTeX command is also provided (via the mathrsfs
    package, if available, or the amsfonts bundle otherwise),
    fulfilling the wish of PR#18398.
  * (Windows) The default format of readClipboard() and
    writeClipboard() has been changed to 13 (CF_UNICODETEXT).
  INSTALLATION on a UNIX-ALIKE:
  * The PDF manuals (if built) can be compacted by the new target
    make compact-pdf (at the top level or in directory doc/manual).
  * There is now configure support for LLVM clang 15 on Linux, which
    defaults to position-independent (PIE) executables whereas
    gfortran does not.
  * Many small changes to ease compilation (and suppress warnings)
    with LLVM clang 15.
  BUG FIXES:
  * Rscript -e would fail if stdin were closed (Reported by Henrik
    Bengtsson.)
  * qt(*, log.p=TRUE) in outer tails no longer produces NaN in its
    final steps, thus fixing PR#18360.
  * tools::Rd2latex() now escapes hashes and ampersands when writing
    URLs, fixing LaTeX errors with such URLs in \tabular.
  * When isGeneric(f, fdef=*) is used with mismatching names, the
    warning is better understandable; reported (with fix) in PR#18370
    by Gabe Becker.
  * poly(x, n) now works again (and is now documented) when x is a
    "Date" or "POSIXct" object, or of another class while fulfilling
    mode(x) == "numeric".  This also enables poly(x, *, raw=TRUE) for
    such variables.  Reported by Michael Chirico to R-devel.
  * write.table(), write.csv() and write.csv2() restore their
    numerical precision (internal equivalent of digits = 15) after an
    interrupt (PR#18384).
  * One can now read also byte FF from a clipboard connection
    (PR#18385).
  * source("") and source(character()) now give more helpful error
    messages.
  * R CMD check --as-cran set _R_CHECK_TIMINGS_ too late to have the
    intended effect.
  * as.POSIXlt(x) now also works with very large dates x, fixing
    PR#18401 reported by Hannes M"uhleisen.
  * Files can now be extracted even from very large zip archives
    (PR#18390, thanks to Martin Jakt).
  * Non-finite objects of class "POSIXlt" are now correctly coerced
    to classes "Date" and "POSIXct"; following up on the extension to
    format() them correctly.
  * Added methods for is.finite(), is.infinite() and is.nan() for
    "POSIXlt" date-time objects.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1678881600">- CHANGES IN R 4.2.3:
  C-LEVEL FACILITIES:
  * The definition of DL_FUNC in R_ext/Rdynload.h has been changed to
    be fully C-compliant.  This means that functions loaded _via_ for
    example R_GetCCallable need to be cast to an appropriate type if
    they have any arguments.
  * .Machine has a new element sizeof.time_t to identify old systems
    with a 32-bit type and hence a limited range of date-times (and
    limited support for dates millions of years from present).
  PACKAGE INSTALLATION:
  * (Windows) The default C++ standard had accidentally been left at
    C++11 when it was changed to C++14 on Unix.
  BUG FIXES:
  * As "POSIXlt" objects may be "partially filled" and their list
    components meant to be recycled, length() now is the length of
    the longest component.
  * as.POSIXlt.Date() could underflow for dates in the far past (more
    than half a million years BCE).
  * as.Date.POSIXlt(x) would return "1970-01-01" instead of NA in R
    4.2.2, e.g., for
    x &lt;- as.POSIXlt(c("2019-01-30","2001-1-1"))
    x$mon &lt;- c(0L, NA); as.Date(x)
  * R CMD check failed to apply enabled _R_CHECK_SUGGESTS_ONLY_ to
    examples and vignettes (regression in R 4.2.0).
  * R CMD check did not re-build vignettes in separate processes by
    default (regression in R 4.2.0).
  * Running examples from HTML documentation now restores previous
    knitr settings and options (PR#18420).
  * Quartz: fonts are now located using Core Graphics API instead of
    deprecated ATS which is no longer supported in the macOS 13 SDK
    (PR#18426).  This also addresses an issue where the currently
    used font in the Quartz device context was not correctly
    retained.
  * (Windows) Math symbols in text drawing functions are again
    rendered correctly (PR#18440).  This fixes a regression in R
    4.2.1 caused by a fix in PR#18382 which uncovered an issue in
    GraphApp due to which the symbol charset was not used with TT
    Symbol font face.
  * (Windows) Installing a package with a src/Makefile.{win,ucrt}
    file includes ~/.R/Makevars.win64 in the search for user
    makevars, as documented in "R Installation and Administration"
    and done for packages with a src/Makevars.{win,ucrt} file.
  * format(&lt;POSIXlt_w/_unbalanced_sec&gt;, "....%OS&lt;n&gt;") with n &gt; 0 no
    longer accidentally uses the unbalanced seconds, thanks to
    Suharto Anggono's report (including patch) in PR#18448.
  * solve.default(a, b) works around issues with some versions of
    LAPACK when a contains NA or NaN values.
  * When UseMethod() cannot dispatch, it no longer segfaults
    producing the error message in case of a long class(), thanks to
    Joris Vankerschaver's report (including patch) in PR#18447.
  * When example(foo, ..) produces graphics on an interactive device
    it needs to open itself, it now leaves devAskNewPage() unchanged
    even when it was FALSE, thus fixing a 14 years old '&lt;FIXME&gt;'.
  * packageDescription() again catches errors from encoding
    conversions. This also fixes broken packageVersion() in C locale
    on systems where iconv does not support transliteration.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1681128000">- add patch to build with libcurl &gt;= 8</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1682078400">- CHANGES IN R 4.3.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Calling &amp;&amp; or || with LHS or (if evaluated) RHS of length greater
    than one is now always an error, with a report of the form
    'length = 4' in coercion to 'logical(1)'
    Environment variable _R_CHECK_LENGTH_1_LOGIC2_ no longer has any
    effect.
  NEW FEATURES:
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.10.1.  (This caused some platform-dependent
    changes to package check output.)  And then to the sources from
    LAPACK version 3.11.0 (with changes only to double complex
    subroutines).
  * The included LAPACK sources have been updated to include the four
    Fortran 90 routines rather than their Fortran 77 predecessors.
    This may give some different signs in SVDs or
    eigendecompositions..  (This completes the transition to LAPACK
    3.10.x begun in R 4.2.0.)
  * The LAPACK sources have been updated to version 3.11.0.  (No new
    subroutines have been added, so this almost entirely bug fixes:
    Those fixes do affect some computations with NaNs, including R's
    NA.)
  * The parser now signals _classed_ errors, notably in case of the
    pipe operator |&gt;.  The error object and message now give line and
    column numbers, mostly as proposed and provided by Duncan Murdoch
    in PR#18328.
  * toeplitz() is now generalized for asymmetric cases, with a
    toeplitz2() variant.
  * xy.coords() and xyz.coords() and consequently, e.g., plot(x,y,
    log = "y") now signal a _classed_ warning about negative values
    of y (where log(.) is NA).  Such a warning can be specifically
    suppressed or caught otherwise.
  * Regular expression functions now check more thoroughly whether
    their inputs are valid strings (in their encoding, e.g. in
    UTF-8).
  * The performance of grep(), sub(), gsub() and strsplit() has been
    improved, particularly with perl = TRUE and fixed = TRUE.  Use of
    useBytes = TRUE for performance reasons should no longer be
    needed and is discouraged: it may lead to incorrect results.
  * apropos() gains an argument dot_internals which is used by the
    completion (help(rcompgen)) engine to also see base internals
    such as .POSIXct().
  * Support in tools::Rdiff() for comparing uncompressed PDF files is
    further reduced - see its help page.
  * qqplot(x, y, ...) gains conf.level and conf.args arguments for
    computing and plotting a confidence band for the treatment
    function transforming the distribution of x into the distribution
    of y (Switzer, 1976, _Biometrika_). Contributed by Torsten
    Hothorn.
  * Performance of package_dependencies() has been improved for cases
    when the number of dependencies is large.
  * Strings newly created by gsub(), sub() and strsplit(), when any
    of the inputs is marked as "bytes", are also marked as "bytes".
    This reduces the risk of creating invalid strings and accidental
    substitution of bytes deemed invalid.
  * Support for readLines(encoding = "bytes") has been added to allow
    processing special text files byte-by-byte, without creating
    invalid strings.
  * iconv(from = "") now takes into account any declared encoding of
    the input elements and uses it in preference to the native
    encoding.  This reduces the risk of accidental creation of
    invalid strings, particularly when different elements of the
    input have different encoding (including "bytes").
  * Package repositories in getOption("repos") are now initialized
    from the repositories file when utils is loaded (if not already
    set, e.g., in .Rprofile).  (From a report and patch proposal by
    Gabriel Becker in PR#18405.)
  * compactPDF() gets a verbose option.
  * type.convert() and hence read.table() get new option tryLogical =
    TRUE with back compatible default.  When set to false, converts
    "F" or "T" columns to character.
  * Added new unit prefixes "R" and "Q" for abbreviating
    (unrealistically large) sizes beyond 10^{27} in standard = "SI",
    thanks to Henrik Bengtsson's PR#18435.
  * as.data.frame()'s default method now also works fine with atomic
    objects inheriting from classes such as "roman", "octmode" and
    "hexmode", such fulfilling the wish of PR#18421, by Benjamin
    Feakins.
  * The as.data.frame.vector() utility now errors for wrong-length
    row.names.  It warned for almost six years, with "Will be an
    error!".
  * sessionInfo() now also contains La_version() and reports codepage
    and timezone when relevant, in both print() and toLatex() methods
    which also get new option tzone for displaying timezone
    information when locale = FALSE.
  * New function R_compiled_by() reports the C and Fortran compilers
    used to build R, if known.
  * predict(&lt;lm&gt;, newdata = *) no longer unnecessarily creates an
    offset of all 0s.
  * solve() for complex inputs now uses argument tol and by default
    checks for 'computational singularity' (as it long has done for
    numeric inputs).
  * predict(&lt;rank-deficient lm&gt;, newdata=*) now obeys a new argument
    rankdeficient, with new default "warnif", warning only if there
    are non-estimable cases in newdata.  Other options include
    rankdeficient = "NA", predicting NA for non-estimable newdata
    cases.  This addresses PR#15072 by Russ Lenth and is based on his
    original proposal and discussions in PR#16158 also by David Firth
    and Elin Waring.  Still somewhat experimental.
  * Rgui console implementation now works better with the NVDA screen
    reader when the full blinking cursor is selected.  The underlying
    improvements in cursor handling may help also other screen
    readers on Windows.
  * The drop-field control in GraphApp can now be left with the TAB
    key and all controls can be navigated in the reverse order using
    the Shift+TAB key, improving accessibility of the Rgui
    configuration editor.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now fully accurate
    (instead of to "only" minimally five digits).
  * demo(error.catching) now also shows off withWarnings() and
    tryCatchWEMs().
  * As an experimental feature the placeholder _ can now also be used
    in the rhs of a forward pipe |&gt; expression as the first argument
    in an extraction call, such as _$coef. More generally, it can be
    used as the head of a chain of extractions, such as _$coef[[2]].
  * Spaces in the environment variable used to choose the R session's
    temporary directory (TMPDIR, TMP and TEMP are tried in turn) are
    now fatal.  (On Windows the 'short path' version of the path is
    tried and used if that does not contain a space.)
  * all.equal.numeric() gets a new optional switch giveErr to return
    the numeric error as attribute.  Relatedly,
    stopifnot(all.equal&lt;some&gt;(a, b, ..)) is as "smart" now, as
    stopifnot(all.equal(....)) has been already, thus allowing
    customized all.equal&lt;Some&gt;() wrappers.
  * R on Windows is now able to work with path names longer than 260
    characters when these are enabled in the system (requires at
    least Windows 10 version 1607).  Packages should be updated to
    work with long paths as well, instead of assuming PATH_MAX to be
    the maximum length.  Custom front-ends and applications embedding
    R need to update their manifests if they wish to allow this
    feature.  See
    &lt;https://blog.r-project.org/2023/03/07/path-length-limit-on-windows&gt;
    for more information.
  * 'Object not found' and 'Missing argument' errors now give a more
    accurate error context. Patch provided by Lionel Henry in
    PR#18241.
  * The @ operator is now an S3 generic. Based on contributions by
    Tomasz Kalinowski in PR#18482.
  * New generic chooseOpsMethod() provides a mechanism for objects to
    resolve cases where two suitable methods are found for an Ops
    Group Generic. This supports experimenting with alternative
    object systems. Based on contributions by Tomasz Kalinowski in
    PR#18484.
  * inherits(x, what) now accepts values other than a simple
    character vector for argument what. A new generic, nameOfClass(),
    is called to resolve the class name from what. This supports
    experimenting with alternative object systems. Based on
    contributions by Tomasz Kalinowski in PR#18485.
  * Detection of BLAS/LAPACK in use (sessionInfo()) with FlexiBLAS
    now reports the current backend.
  * The "data.frame" method for subset() now warns about extraneous
    arguments, typically catching the use of = instead of == in the
    subset expression.
  * Calling a:b when numeric a or b is longer than one may now be
    made into an error by setting environment variable
    _R_CHECK_LENGTH_COLON_ to a true value, along the proposal in
    PR#18419 by Henrik Bengtsson.
  * density(x, weights = *) now warns if automatic bandwidth
    selection happens without using weights; new optional warnWbw may
    suppress the warning.  Prompted by Christoph Dalitz' PR#18490 and
    its discussants.
  * rm(list = *) is faster and more readable thanks to Kevin Ushey's
    PR#18492.
  * The plot.lm() function no longer produces a normal Q-Q plot for
    GLMs. Instead it plots a half-normal Q-Q plot of the absolute
    value of the standardized deviance residuals.
  * The print() method for class "summary.glm" no longer shows
    summary statistics for the deviance residuals by default.  Its
    optional argument show.residuals can be used to show them if
    required.
  * The tapply() function now accepts a data frame as its X argument,
    and allows INDEX to be a formula in that case. by.data.frame()
    similarly allows INDICES to be a formula.
  * The performance of df[j] &lt;- value (including for missing j) and
    write.table(df) has been improved for data frames df with a large
    number of columns.  (Thanks to Gabriel Becker's PR#18500,
    PR#18503 and discussants, prompted by a report from Toby Dylan
    Hocking on the R-devel mailing list.)
  * The matrix multiply operator %*% is now an S3 generic, belonging
    to new group generic matrixOps.  From Tomasz Kalinowski's
    contribution in PR#18483.
  * New function array2DF() to convert arrays to data frames,
    particularly useful for the list arrays created by tapply().
  DATES and TIMES:
  * On platforms where (non-UTC) datetimes before 1902 (or before
    1900 as with system functions on recent macOS) are guessed by
    extrapolating time zones from 1902-2037, there is a warning at
    the first use of extrapolation in a session.  (As all time zones
    post 2037 are extrapolation, we do not warn on those.)
  * (Platforms using --with-internal-tzone, including Windows and by
    default macOS). How years are printed in dates or date-times can
    be controlled by environment variable R_PAD_YEARS_BY_ZERO.  The
    default remains to pad to 4 digits by zeroes, but setting value
    no gives no padding (as used by default by glibc).
  * strftime() tries harder to determine the offset for the "%z"
    format, and succeeds on the mainstream R platforms.
  * strftime() has a limit of 2048 bytes on the string produced -
    attempting to exceed this is an error.  (Previously it silently
    truncated at 255 bytes.)
  * sessionInfo() records (and by default prints) the system time
    zone as part of the locale information.  Also, the source
    (system/internal) of the date-time conversion and printing
    functions.
  * Objects of class "POSIXlt" created in this version of R always
    have 11 components: component zone is always set, and component
    gmtoff is set for times in UTC and usually set on the (almost
    all) platforms which have C-level support, otherwise is NA.
  * There are comprehensive validity checks on the structure of
    objects of class "POSIXlt" when converting (including formatting
    and printing).  (This avoids mis-conversions of hand-crafted
    objects.)
  * There is some support for using the native date-time routines on
    macOS: this is only viable on recent versions (e.g. 12.6 and 13)
    and does get wrong some historical changes (before 1900, during
    WWII).  Use of --with-internal-tzone remains the default.
  * as.POSIXct(&lt;numeric&gt;) and as.POSIXlt(.) (without specifying
    origin) now work.  So does as.Date(&lt;numeric&gt;).
  * as.Date.POSIXct(., tz) now treats several tz values, notably
    "GMT" as equivalent to "UTC", proposed and improved by Michael
    Chirico and Joshua Ulrich in PR#17674.
  * Experimental balancePOSIXlt() utility allows using "ragged" and
    or out-of-range "POSIXlt" objects more correctly, e.g., in
    subsetting and subassignments.  Such objects are now documented.
    More experimentally, a "POSIXlt" object may have an attribute
    "balanced" indicating if it is known to be filled or fully
    balanced.
  * Functions axis.Date() and axis.POSIXct() are rewritten to gain
    better default tick locations and better default formats by using
    prettyDate(). Thanks to Swetlana Herbrandt.
  * The mapping of Windows' names for time zones to IANA's 'Olson'
    names has been updated.  When ICU is available (it is by
    default), it is used to get a mapping for the current region set
    in Windows.  This can be overridden by setting environment
    variable TZ to the desired Olson name - see OlsonNames() for
    those currently available.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 16
    and so packages that provide graphics devices should be
    reinstalled.
  * The grDevices and grid packages have new functions for rendering
    typeset glyphs, primarily: grDevices::glyphInfo() and
    grid::grid.glyph().
    Rendering of typeset glyphs is only supported so far on the
    Cairo-based graphics devices and on the pdf() and quartz()
    devices.
  * The defined behaviour for "clear" and "source" compositing
    operators (via grid::grid.group()) has been changed (to align
    better with simple interpretation of original Porter-Duff
    definitions).
  * Support for gradients, patterns, clipping paths, masks, groups,
    compositing operators, and affine transformations has been added
    to the quartz() device.
  INSTALLATION on a UNIX-ALIKE:
  * A system installation of generic LAPACK 3.10.0 or later will be
    preferred to the version in the R sources.
    configure option --with-lapack=no (equivalently --without-lapack)
    forces compilation of the internal LAPACK sources.
    If --with-lapack is not specified, a system liblapack is looked
    for and used if it reports version 3.10.0 or later and does not
    contain BLAS routines.
    Packages using LAPACK will need to be reinstalled if this changes
    to using an external library.
  * On aarch64 Linux platforms using GCC, configure now defaults to
  - fPIC (instead of -fpic), as desired in PR#18326.
  * configure now checks conversion of datetimes between POSIXlt and
    POSIXct around year 2020.  Failure (which has been seen on
    platforms missing tzdata) is fatal.
  * If configure option --with-valgrind-instrumentation is given
    value 1 or 2, option --with-system-valgrind-headers is now the
    default and ignored (with a warning).  It is highly recommended
    that the system headers are installed alongside valgrind: they
    are part of its packaging on some Linux distributions and
    packaged separately (e.g. in the valgrind-devel RPM) on others.
    configure will give a warning if they are not found.
    The system headers will be required in a future release of R to
    build with valgrind instrumentation.
  * libcurl 8.x is now accepted by configure: despite a change in
    major version number it changes neither API nor ABI.
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools43, an update of the Rtools42 toolchain.  It is
    based on gcc 12 and newer versions of MinGW-W64, binutils and
    libraries.  At this time R-devel can still be built using
    Rtools42 without changes, but when R-devel is installed via the
    installer, it will by default look for Rtools43.
  * Old make targets rsync-extsoft and 32-bit ones that are no longer
    needed have been removed.
  * Default builds (including for packages) no longer select C99.
    Thus the C standard used is the default for the compiler, which
    for the toolchain in Rtools43 is C17.  (This is consistent with
    Unix builds.)
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++17 where
    available (which it is on all currently checked platforms): if
    not C++14 or C++11 is used if available otherwise C++ is not
    supported.
  * USE_FC_LEN_T is the default: this uses the correct
    (compiler-dependent) prototypes for Fortran BLAS/LAPACK routines
    called from C/C++, and requires adjustment of many such calls -
    see 'Writing R Extensions' SS6.6.1.
  * There is initial support for C++23 as several compilers are now
    supporting -std=c++23 or -std=c++2b or similar.  As for C++20,
    there no additional configure checks for C++23 features beyond a
    check that the compiler reports a __cplusplus value greater than
    that in the C++20 standard.  C++ feature tests should be used.
  * There is support for a package to indicate the version of the C
    standard which should be used to compile it, and for the
    installing user to specify this.  In most cases R defaults to the
    C compiler's default standard which is C17 (a `bug-fix' of C11) -
    earlier versions of R or compilers may have defaulted to C99.
    Current options are:
    USE_C17 Use a standard that is at most C17.  The intention is to
    allow legacy packages to still be installed when later C
    standards become the default, including packages using new
    keywords as identifiers or with K&amp;R-style function
    declarations.  This will use C17 if available, falling back
    to C11.
    USE_C90 Use the C90 (aka C89) standard.  (As that standard did
    not require compilers to identify that version, all we can
    verify is that the compiler does not claim to be using a
    later standard.  It may accept C99 features - for example
    clang accepts // to make comments.)
    USE_C99 Use the C99 standard. This should be rarely needed - it
    avoids the few new features of C11/C17 which can be useful if
    a package assumes them if C17 is specified and they are not
    implemented.
    USE_C23 Use C23 (or in future, later).  Compiler/library support
    for C23 is still being implemented, but LLVM clang from
    15.0.0 and the upcoming GCC 13 have quite extensive support.
    These can be specified as part of the SystemRequirements field in
    the package's DESCRIPTION file or _via_ options --use-C17 and so
    on of R CMD INSTALL and R CMD SHLIB.
    For further details see "Writing R Extensions" SS1.2.5.
  * (Windows) A src/Makefile.ucrt or src/Makefile.win file is now
    included after R_HOME/etcR_ARCH/Makeconf and so no longer needs
    to include that file itself.  Installation of a package with such
    a file now uses a site Makevars file in the same way as a package
    with a src/Makevars.win file would.
  * configure is now passed crucial variables such as CC and CFLAGS
    in its environment, as many packages were not setting them (as
    documented in 'Writing R Extensions' SS1.2).
    This has most effect where configure is used to compile parts of
    the package - most often by cmake or libtool which obfuscate the
    actual compile commands used.
    Also used for configure.win and configure.ucrt on Windows.
  FORTRAN FLAGS:
  * The flag -fno-optimize-sibling-calls is no longer forced for
    gfortran 7 and later.  It should no longer be needed now using
    'hidden' character-length arguments when calling BLAS/LAPACK
    routines from C/C++ is the default even for packages.  (Unless
    perhaps packages call Fortran code from C/C++ without using R's
    headers and without allowing for these arguments.)
  C-LEVEL FACILITIES:
  * The deprecated S-compatibility macros DOUBLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * The deprecated legacy typedefs of Sint and Sfloat in header R.h
    are no longer defined, and that header no longer includes header
    limits.h from C nor climits from C++.
  * New macro CAD5R() is provided in Rinternals.h and used in a few
    places in the R sources.
  * ALTREP now supports VECSXP vectors. Contributed by Gabor Csardi
    in PR#17620.
  * The Rcomplex definition (in header R_ext/Complex.h) has been
    extended to prevent possible mis-compilation when interfacing
    with Fortran (PR#18430).  The new definition causes compiler
    warnings with static initializers such as {1, 2}, which can be
    changed to {.r=1, .i=2}.
    Using the new definition from C++ depends on compiler extensions
    supporting C features that have not been incorporated into the
    C++ standards but are available in g++ and clang++: this may
    result in C++ compiler warnings but these have been worked around
    for recent versions of common compilers (GCC, Apple/LLVM clang,
    Intel).
    It is intended to change the inclusion of header R_ext/Complex.h
    by other R headers, so C/C++ code files which make use of
    Rcomplex should include that header explicitly.
  UTILITIES:
  * R CMD check does more checking of package .Rd files, warning
    about invalid email addresses and (some) invalid URIs and noting
    empty \item labels in description lists.
  * R CMD check now also reports problems when reading package news
    in md (file NEWS.md) and (optionally) plain text (file NEWS)
    formats.
  * _R_CHECK_TIMINGS_ defaults to a value from the environment even
    for R CMD check --as-cran; this allows for exceptionally fast or
    slow platforms.
    It now applies to checking PDF and HTML versions of the manuals,
    and 'checking CRAN incoming feasibility'.
  * R CMD check can optionally (but included in --as-cran) check
    whether HTML math rendering _via_ KaTeX works for the package .Rd
    files.
  * Non-interactive debugger invocations can be trapped by setting
    the environment variable _R_CHECK_BROWSER_NONINTERACTIVE_ to a
    true value.  This is enabled by R CMD check --as-cran to detect
    the use of leftover browser() statements in the package.
  * The use of sprintf and vsprintf from C/C++ has been deprecated in
    macOS 13 and is a known security risk.  R CMD check now reports
    (on all platforms) if their use is found in compiled code:
    replace by snprintf or vsnprintf respectively. [*NB:* whether
    such calls get compiled into the package is platform-dependent.]
  * Where recorded at installation, R CMD check reports the C and
    Fortran compilers used to build R.
    It reports the OS in use (if known, as given by osVersion) as
    well as that R was built for.
    It notes if a C++ standard was specified which is older than the
    current default: many packages have used C++11 to mean 'not
    C++98' - as C++11 is the minimum supported since R 4.0.0, that
    specification can probably be removed.
  * R CMD INSTALL reports the compilers (and on macOS, the SDK) used,
    and this is copied to the output of R CMD check.
    Where a C++ standard is specified, it is reported.
  * R CMD check's 'checking compilation flags in Makevars' has been
    relaxed to accept the use of flags such as -std=f2008 in
    PKG_FFLAGS.
  * tools::buildVignettes() has a new argument skip, which is used by
    R CMD check to skip (and note) vignettes with unavailable
    \VignetteDepends (PR#18318).
  * New generic .AtNames() added to enable class-specific completions
    after @. The formerly internal function findMatches() is now
    exported, mainly for use in methods for .DollarNames() and
    .AtNames().
  DEPRECATED AND DEFUNCT:
  * default.stringsAsFactors() is defunct.
  * Calling as.data.frame.&lt;class&gt;() directly (for 12 atomic classes)
    is going to be formally deprecated, currently activated by
    setting the environment variable
    _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ to non-empty, which also
    happens in R CMD check --as-cran.
  BUG FIXES:
  * Hashed environments with sizes less than 5 can now grow.
    (Reported to R-devel by Duncan Garmonsway.)
  * as.character(&lt;Rd&gt;, deparse = TRUE) failed to re-escape curly
    braces in LaTeX-like text.  (Reported by Hadley Wickham in
    PR#18324.)
  * library() now passes its lib.loc argument when requiring Depends
    packages; reported (with fix) in PR#18331 by Mikael Jagan.
  * R CMD Stangle: improved message about 'Output' files.
  * head(x, n) and tail(x, n) now signal an error if n is not
    numeric, instead of incidentally "working" sometimes returning
    all of x.  Reported and discussed by Colin Fay, in PR#18357.
  * The "lm" method for summary() now gives the correct F-statistic
    when the model contains an offset.  Reported in PR#18008.
  * C() and `contrasts&lt;-`() now preserve factor level names when
    given a function object (as opposed a function name which did
    preserve names). Reported in PR#17616.
  * c(a = 1, 2)[[]] no longer matches 2 but rather signals a
    _classed_ error.  Reported and analysed by Davis Vaughan in
    PR#18367, a duplicate of PR#18004, by Jan Meis et al.  For
    consistency, NULL[[]] is also erroneous now.  x[[]] &lt;- v gives an
    error of the same class "MissingSubscriptError".
  * The relist() function of utils now supports NULL elements in the
    skeleton (PR#15854).
  * ordered(levels = *) (missing x) now works analogously to factor(,
    ordered=TRUE); reported (with fix) by Achim Zeileis in PR#18389.
  * User-defined Rd macro definitions can now span multiple lines,
    thanks to a patch from Duncan Murdoch. Previously, the Rd parser
    silently ignored everything after the first line.
  * Plain-text help (tools::Rd2txt()) now preserves an initial blank
    line for text following description list items.
  * tools::Rd2HTML() and tools::Rd2latex() no longer split \arguments
    and \value lists at Rd comments.
  * tools::Rd2latex() now correctly handles optional text outside
    \items of argument lists as well as bracketed text at the
    beginning of sections, e.g., \value{[NULL]}.
  * as.character(&lt;POSIXt&gt;) now behaves more in line with the methods
    for atomic vectors such as numbers, and is no longer influenced
    by options().  Ditto for as.character(&lt;Date&gt;).  The
    as.character() method gets arguments digits and OutDec with
    defaults _not_ depending on options().  Use of as.character(*,
    format = .) now warns.
  * Similarly, the as.character.hexmode() and *.octmode() methods
    also behave as good citizen methods and back compatibility option
    keepStr = TRUE.
  * The as.POSIXlt(&lt;POSIXlt&gt;) and as.POSIXct(&lt;POSIXct&gt;) default
    methods now do obey their tz argument, also in this case.
  * as.POSIXlt(&lt;Date&gt;) now does apply a tz (time zone) argument, as
    does as.POSIXct(); partly suggested by Roland Fuss on the R-devel
    mailing list.
  * as.Date.POSIXlt(x) now also works when the list components are of
    unequal length, aka "partially filled" or "ragged".
  * expand.model.frame() looked up variables in the wrong environment
    when applied to models fitted without data.  Reported in
    PR#18414.
  * time() now (also) uses the ts.eps = getOption("ts.eps") argument
    and thus by default rounds values very close to the start (or
    end) of a year.  Based on a proposal by Andre"i V. Kostyrka on
    R-help.
  * Printing of a factanal() result with just one factor and sort =
    TRUE now works regularly, fixing PR#17863 by Timothy Bates,
    thanks to the 'R Contributors' working group.
  * Printing 0-length objects of class "factor", "roman", "hexmode",
    "octmode", "person", "bibentry", or "citation" now prints
    something better, one of which fixes PR#18422, reported by
    Benjamin Feakins.
  * Sys.timezone() queries timedatectl only if systemd is loaded;
    addressing a report by Jan Gorecki in PR#17421.
  * The formula method of cor.test() had scoping problems when
    environment(formula) was not the calling environment; reported
    with a patch proposal by Mao Kobayashi in PR#18439.
  * attach() of an environment with active bindings now preserves the
    active bindings.  Reported by Kevin Ushey in PR#18425.
  * BLAS detection now works also with system-provided libraries not
    available as regular files.  This fixes detection of the
    Accelerate framework on macOS since Big Sur.  Reported by David
    Novgorodsky.
  * download.file() gives a helpful error message in case of an
    invalid download.file.method option, thanks to Colin Fay's report
    in PR#18455.
  * Sporadic crashes of Rterm when using completion have been fixed.
  * Rprof() is now more reliable.  A livelock in thread
    initialization with too short sampling interval has been fixed on
    macOS.  A deadlock in using the C runtime has been fixed on
    Windows.  A potential deadlock has been prevented on Unix.
  * Cursor placement in Rgui now works even after a fixed-width font
    is selected.
  * Mandatory options (options()) are now set on startup so that
    saving and restoring them always works (PR#18372).
  * Package installation, R CMD INSTALL or install.packages(*), now
    parses each of the &lt;pkg&gt;/R/*.R files individually instead of
    first concatenating and then parse()ing the large resulting file.
    This allows parser or syntax errors to be diagnosed with correct
    file names and line numbers, thanks to Simon Dedman's report and
    Bill Dunlap's patch in PR#17859.
    This _does_ require syntactically self contained R source files
    now, fixing another inadvertent bug.
  * predict.lm(&lt;model with offset&gt;) now finds the offset in the
    correct environment, thanks to Andr'e Gillibert's report and patch
    in PR#18456.
  * getInitial(&lt;formula&gt;) now finds the selfStart model in the
    correct environment.  (Reported by Ivan Krylov in PR#18368.)
  * Fix for possible segfault when using recently-added graphics
    features, such as gradients, clipping paths, masks, and groups
    with pdf(file=NULL).
  * class(m) &lt;- class(m) no longer changes a matrix m by adding a
    class _attribute_.
  * packageDate(pkg) now only warns once if there is no pkg.
  * When ts() creates a multivariate time series, "mts", it also
    inherits from "array" now, and is.mts() is documented _and_
    stricter.
  * Rd2txt() now preserves line breaks of \verb Rd content and from
    duplicated \cr.  The former also fixes the rendering of verbatim
    output from Rd \Sexpr in plain-text help.
  * uniroot(f, interval) should no longer wrongly converge _outside_
    the interval in some cases where abs(f(x)) == Inf for an x at the
    interval boundary, thanks to posts by Ben Bolker and Serguei
    Sokol on R-devel.
  * Vectorized alpha handling in palette functions such as in gray(),
    rainbow(), or hcl.colors() works correctly now, thanks to Achim
    Zeileis' report and patch in PR#18476.
  * Formatting and print()ing of bibentry objects has dropped the
    deprecated citation.bibtex.max argument, such that the bibtex
    argument's default for print.bibentry() depends directly on the
    citation.bibtex.max option, whereas in format.bibentry() the
    option no longer applies.
  * Attempting to use a character string naming a foreign function
    entry point in a foreign function call in a package will now
    signal an error if the packages has called R_forceSymbols to
    specify that symbols must be used.
  * An error in table() could permanently set options(warn=2)
    promoting all subsequent warnings to errors.
  * The sigma() function gave misleading results for binary GLMs.  A
    new method for objects of class "glm" returns the square root of
    the estimate of the dispersion parameter using the same
    calculation as summary.glm().
  * bs() and ns() in the (typical) case of automatic knot
    construction, when some of the supposedly inner knots coincide
    with boundary knots, now moves them inside (with a warning),
    building on PR#18442 by Ben Bolker.
  * R CMD on Windows now skips the site profile with --no-site-file
    and --vanilla even when R_PROFILE is set (PR#18512, from Kevin
    Ushey).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1686916800">- CHANGES IN R 4.3.1:
  C-LEVEL FACILITIES:
  * The C-level API version of R's integrate(), Rdqags() in Applic.h,
    now returns the correct number of integrand evaluations neval,
    fixing PR#18515 reported and diagnosed by Stephen Wade.
  * The C prototypes for LAPACK calls dspgv and dtptrs in
    R_exts/Lapack.h had one too many and one too few character length
    arguments - but this has not caused any known issues. To get the
    corrected prototypes, include
    [#]include &lt;Rconfig.h&gt; // for PR18534fixed
    [#]ifdef PR18534fixed
    [#] define usePR18534fix 1
    [#]endif
    [#]include &lt;R_exts/Lapack.h&gt;
    in your C/C++ code (PR#18534).
  INSTALLATION:
  * Many of the checks of esoteric Internet operations and those
    using unreliable external sites have been moved to a new target
    that is not run by default and primarily intended for the core
    developers.  To run them use
    cd tests; make test-Internet-dev
  BUG FIXES:
  * .S3methods(), typically called from methods(), again marks
    methods from package base as visible.
    Also, the visibility of non-base methods is again determined by
    the method's presence in search().
  * tools::Rdiff() is now more robust against invalid strings, fixing
    installation tests on Windows without Rtools installed
    (PR#18530).
  * Fix (new) bug in hcl.colors(2, *), by Achim Zeileis (PR#18523).
  * head(., &lt;illegal&gt;) and tail(..) now produce more useful "Error in
    ...." error messages, fixing PR#18362.
  * Package code syntax on Windows is checked in UTF-8 when UTF-8 is
    the native encoding.
  * na.contiguous(x) now also returns the first run, when it is at
    the beginning and there is a later one of the same length;
    reported to R-devel, including a fix, by Georgi Boshnakov.
    Further, by default, it modifies only an existing attr(*,"tsp")
    but otherwise no longer sets one.
  * chol(&lt;not pos.def&gt;, pivot = &lt;T|F&gt;) now gives a correct error or
    warning message (depending on pivot), thanks to Mikael Jagan's
    (PR#18541).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1699012800">- CHANGES IN R 4.3.2:
  NEW FEATURES:
  * The default initialization of the "repos" option from the
    repositories file at startup can be skipped by setting
    environment variable R_REPOSITORIES to NULL such that
    getOption("repos") is empty if not set elsewhere.
  * qr.X() is now an implicit S4 generic in methods.
  * iconv(to = "ASCII//TRANSLIT") is emulated using substitution on
    platforms which do not support it (notably Alpine Linux).  This
    should give a human-readable conversion in ASCII on all platforms
    (rather than NA_character_).
  * trans3d() gains options continuous and verbose addressing the
    problem of possible "wrap around" when projecting too long
    curves, as reported by Achim Zeileis in PR#18537.
  * tools::showNonASCII() has been rewritten to work better on macOS
    14 (which has a changed implementation of iconv()).
  * tiff(type = "quartz") (the default on macOS) now warns if
    compression is specified: it continues to be ignored.
  INSTALLATION on a UNIX-ALIKE:
  * There is some support for building with Intel's LLVM-based
    compilers on x86_64 Linux, such as (C) icx, (C++) ipcx and
    (Fortran) ifx from oneAPI 2023.x.y.
  * There is support for using LLVM's flang-new as the Fortran
    compiler from LLVM 16.0.x (preferably 17.0.0 or later).
  UTILITIES:
  * R CMD check reports the use of the Fortran 90 random number
    generator RANDOM_NUMBER() and the subroutines to initialize it.
    'Writing R Extensions' has example code to use R's RNGs from
    Fortran.
  BUG FIXES:
  * substr(x, n, L) &lt;- cc now works (more) correctly for multibyte
    UTF-8 strings x when L &gt; nchar(x), thanks to a report and patch
    by 'Architect 95'.
  * contrib.url(character()) now returns 0-length character() as
    documented, which also avoids spurious warnings from
    available.packages() et al. in the edge case of an empty vector
    of repository URLs.
  * readChar(., 4e8) no longer fails, thanks to Kodi Arfer's report
    (PR#18557).
  * lapply(&lt;list&gt;, as.data.frame) no longer warns falsely for some
    base vector components.
  * Communication between parent and child processes in the multicore
    part of parallel could fail on platforms that do not support an
    arbitrarily large payload in system functions read()/write() on
    pipes (seen on macOS where a restriction to INT_MAX bytes is
    documented, without doing a partial read unlike Linux). The
    payload is now split into 1Gb chunks to avoid that problem.
    (PR#18571)
  * qqplot(x,y, conf.level=.) gives better confidence bounds when
    length(x) != length(y), thanks to Alexander Ploner's report and
    patch proposal (PR#18557).
  * norm(&lt;0-length&gt;, "2") now gives zero instead of an error, as all
    the other norm types, thanks to Mikael Jagan's PR#18542.
  * Build-stage Rd macros \packageAuthor and \packageMaintainer now
    process Authors@R, fixing NA results when the package DESCRIPTION
    omits Author and Maintainer fields.
  * Formatting and printing complex numbers could give things like
    0.1683-0i because of rounding error: -0i is now replaced by +0i.
  * postscript() refused to accept a title comment containing the
    letter "W" (PR#18599).
  * isoreg(c(1,Inf)) signals an error instead of segfaulting, fixing
    PR#18603.
  * tiff(type = "Xlib") was only outputting the last page of
    multi-page plots.
  * tools::latexToUtf8() again knows about \~{n} and other letters
    with tilde, fixing a regression in R 4.3.0, and about \^{i} as an
    alternative to \^{\i} (similarly with other accents).
    Furthermore, LaTeX codes for accented I letters are now correctly
    converted, also fixing related mistakes in
    tools::encoded_text_to_latex().
  * tar(*, tar = "internal") no longer creates out-of-spec tar files
    in the very rare case of user or group names longer than 32
    bytes, fixing PR#17871 with thanks to Ivan Krylov.
  * When using the "internal" timezone datetime code, adding a
    fraction of a second no longer adds one second, fixing PR#16856
    from a patch by Ivan Krylov.
  * tools::checkRd() no longer produces spurious notes about
    "unnecessary braces" from multi-line Rd results of \Sexpr macros.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1709208000">- CHANGES IN R 4.3.3:
  NEW FEATURES:
  * iconv() now fixes up variant encoding names such as "utf8"
    case-insensitively.
  DEPRECATED AND DEFUNCT:
  * The legacy encoding = "MacRoman" is deprecated in pdf() and
    postscript(): support was incomplete in earlier versions of R.
  BUG FIXES:
  * Arguments are now properly forwarded to methods on S4 generics
    with ... in the middle of their formal arguments. This was broken
    for the case when a method introduced an argument but did not
    include ... in its own formals. Thanks to Herv'e Pag`es for the
    report PR#18538.
  * Some invalid file arguments to pictex(), postscript() and xfig()
    opened a file called NA rather than throw an error.  These
    included postscript(NULL) (which some people expected to work
    like pdf(NULL)).
  * Passing filename = NA to svg(), cairo_pdf(), cairo_ps() or the
    Cairo-based bitmap devices opened a file called NA: it now throws
    an error.
  * quartz(file = NA) opened a file called NA, including when used as
    a Quartz-based bitmap device.  It now gives an error.
  * rank(&lt;long vector&gt;) now works, fixing PR#18617, thanks to Ilia
    Kats.
  * seq.int() did not adequately check its length.out argument.
  * match(&lt;POSIXct&gt;, .) is correct again for differing time zones,
    ditto for "POSIXlt", fixing PR#18618 reported by Bastian Klein.
  * drop.terms(*, dropx = &lt;0-length&gt;) now works, fixing PR#18563 as
    proposed by Mikael Jagan.
  * drop.terms(*) keeps + offset(.) terms when it should, PR#18565,
    and drop.terms() no longer makes up a response, PR#18566, fixing
    both bugs thanks to Mikael Jagan.
  * getS3method("t", "test") no longer finds the t.test() function,
    fixing PR#18627.
  * pdf() and postscript() support for the documented Adobe encodings
    "Greek" and "Cyrilllic" was missing (although the corresponding
    Windows' codepages could be used).
  * Computations of glyph metric information for pdf() and
    postscript() did not take into account that transliteration could
    replace one character by two or more (only seen on macOS 14) and
    typically warned that the information was not known.
  * rank(x) no longer overflows during integer addition, when
    computing rank average for largish but not-yet long vector x,
    fixing PR#18630, thanks to Ilia Kats.
  * list.files() on Windows now returns also files with names longer
    that 260 bytes (the Windows limit is 260 characters).
    Previously, some file names particularly with 'East Asian'
    characters were omitted.
  * cov2cor(&lt;0 x 0&gt;) now works, fixing PR#18423 thanks to Mikael
    Jagan and Elin Waring.
  * cov2cor(&lt;negative diagonal&gt;) and similar now give one warning
    instead of two, with better wording, fixing PR#18424 thanks to
    Mikael Jagan.
  * tools:: startDynamicHelp() now ensures port is in proper range,
    fixing PR#18645.
  * pbeta(x, a,b) is correct now for x=0 or 1 in the boundary cases
    where a or b or both are 0, fixing PR#18672 thanks to Michael
    Fay.
  * pmatch(x, table) for large table, also called for data frame row
    selection, dfrm[nm, ], is now interruptible, fixing PR#18656.
  * predict(&lt;rank-deficient lm&gt;, newdata=*) fix computing of nbasis,
    see Russ Lenth's comment 29 in PR#16158.
  * Added a work-around for a bug in macOS 14.3.1 and higher which
    prevents R plots in the Quartz Cocoa device from updating on
    screen.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1713960000">- CHANGES IN R 4.4.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Startup banners, R --version, sessionInfo() and R CMD check no
    longer report (64-bit) as part of the platform as this is almost
    universal - the increasingly rare 32-bit platforms will still
    report (32-bit).
    On Windows, ditto for window titles.
  * is.atomic(NULL) now returns FALSE, as NULL is not an atomic
    vector.  Strict back-compatibility would replace is.atomic(foo)
    by (is.null(foo) || is.atomic(foo)) but should happen only
    sparingly.
  NEW FEATURES:
  * The confint() methods for "glm" and "nls" objects have been
    copied to the stats package.  Previously, they were stubs which
    called versions in package MASS. The MASS namespace is no longer
    loaded if you invoke (say) confint(glmfit).  Further, the "glm"
    method for profile() and the plot() and pairs() methods for class
    "profile" have been copied from MASS to stats.  (profile.nls()
    and plot.profile.nls() were already in stats.)
  * The confint() and profile methods for "glm" objects have gained a
    possibility to do profiling based on the Rao Score statistic in
    addition to the default Likelihood Ratio. This is controlled by a
    new test = argument.
  * The pairs() method for "profile" objects has been extended with a
    which = argument to allow plotting only a subset of the
    parameters.
  * The "glm" method for anova() computes test statistics and
    p-values by default, using a chi-squared test or an F test
    depending on whether the dispersion is fixed or free.  Test
    statistics can be suppressed by giving argument test a false
    logical value.
  * In setRepositories() the repositories can be set using their
    names via name = instead of index ind =.
  * methods() and .S3methods() gain a all.names option for the (rare)
    case where functions starting with a . should be included.
  * Serializations can now be interrupted (e.g., by Ctrl-C on a
    Unix-alike) if they take too long, e.g., from save.image(),
    thanks to suggestions by Ivan Krylov and others on R-devel.
  * New startup option --max-connections to set the maximum number of
    simultaneous connections for the session.  Defaults to 128 as
    before: allowed values up to 4096 (but resource limits may in
    practice restrict to smaller values).
  * R on Windows (since Windows 10 2004) now uses the new Segment
    Heap allocator. This may improve performance of some
    memory-intensive applications.
  * When R packages are built, typically by R CMD build &lt;pkg&gt;, the
    new --user=&lt;build_user&gt; option overrides the (internally
    determined) user name, currently Sys.info()["user"] or LOGNAME.
    This is a (modified) fulfillment of Will Landau's suggestion in
    PR#17530.
  * tools::testInstalledBasic() gets new optional arguments outDir
    and testSrcdir, e.g., allowing to use it in a &lt;builddir&gt; !=
    &lt;srcdir&gt; setup, and in standard "binary" Windows installation
  * if* a source tests/ folder is present.
  * range(&lt;DT_with_Inf&gt;, finite = TRUE) now work for objects of class
    "Date", "POSIXct", and "POSIXlt" with infinite entries,
    analogously to range.default(), as proposed by Davis Vaughan on
    R-devel.  Other range()-methods can make use of new function
    .rangeNum().
  * New .internalGenerics object complementing .S3PrimitiveGenerics,
    for documentation and low-level book-keeping.
  * grid() now invisibly returns the x- and y- coordinates at which
    the grid-lines were drawn.
  * norm(., type) now also works for complex matrices.
  * kappa(., exact = TRUE, norm = *) now works for all norms and also
    for complex matrices.  In symmetric / triangular cases, the new
    argument uplo = "U" | "L" allows the upper or lower triangular
    part to be specified.
  * memDecompress(type = "unknown") recognizes compression in the
    default 'zlib' format as used by memCompress(type = "gzip").
  * memCompress() and memDecompress() will use the libdeflate library
    (&lt;https://github.com/ebiggers/libdeflate&gt;) if installed.  This
    uses the same type of compression for type = "gzip" but is 1.5-2x
    faster than the system libz library on some common platforms: the
    speed-up may depend on the library version.
  * diff() for objects of class "Date", "POSIXct", and "POSIXlt"
    accepts a units argument passed via ....
  * Dynamic help now does a much better job of rendering package
    DESCRIPTION metadata.
  * Rprof() gains an event argument and support for elapsed (real)
    time profiling on Unix (PR#18076).
  * filled.contour() gains a key.border argument.
  * tools::update_pkg_po() gets arguments pot_make and mo_make for
    _not_ re-making the corresponding files, and additionally a
    verbose argument.
  * Hexadecimal string colour specifications are now accepted in
    short form, so, for example, we can use "#123", which is
    equivalent to "#112233".
    Thanks to MikeFC for the original idea and Ella Kaye, Malcolm
    Barrett, George Stagg, and Hanne Oberman for the patch.
  * Plain-text help shows \var markup by angle brackets.
  * The new experimental primitive function declare() is intended to
    eventually allow information about R code to be communicated to
    the interpreter, compiler, and code analysis tools. The syntax
    for declarations is still being developed.
  * Functions psmirnov(), qsmirnov() and rsmirnov() in package stats
    have had argument two.sided renamed to alternative, to take into
    account that the permutation distributions of the one-sided
    statistics can be different in the case of ties.  Consequence of
    PR#18582.
  * sort() is now an implicit S4 generic in methods.
  * Formatting and printing, format(z), print(z), of complex vectors
    z no longer zap relatively small real or imaginary parts to zero,
    fixing PR#16752.  This is an API change, as it was documented
    previously to round real and imaginary parts together on purpose,
    producing nicer looking output.  As mentioned, e.g. in the PR,
    this change is compatible with many other "R-like" programming
    environments.
    We have simplified the internal code and now basically format the
    real and imaginary parts independently of each other.
  * New experimental functions Tailcall() and Exec() to support
    writing stack-space-efficient recursive functions.
  * Where characters are attempted to be plotted by pdf(),
    postscript() and xfig() which are not in the selected 8-bit
    character set (most often Latin-1) and the R session is using a
    UTF-8 locale, the warning messages will show the UTF-8 character
    rather than its bytes and one dot will be substituted per
    character rather than per byte.  (Platforms whose iconv() does
    transliteration silently plot the transliteration.)
    In a UTF-8 locale some transliterations are now done with a
    warning (e.g., dashes and Unicode minus to hyphen, ligatures are
    expanded, permille (‰) is replaced by o/oo), although the OS may
    have got there first.  These are warnings as they will continue
    to be replaced by dots in earlier versions of R.
  * The matrix multiplication functions crossprod() and tcrossprod()
    are now also primitive and S3 generic, as %*% had become in R
    4.3.0.
  * source() and example() have a new optional argument catch.aborts
    which allows continued evaluation of the R code after an error.
  * The non-Quartz tiff() devices allow additional types of
    compression if supported by the platform's libtiff library.
  * The list of base and recommended package names is now provided by
    tools::standard_package_names().
  * cairo_pdf() and cairo_ps() default to onefile = TRUE to closer
    match pdf() and postscript().
  * New option catch.script.errors provides a documented way to catch
    errors and then continue in non-interactive use.
  * L %||% R newly in base is an expressive idiom for the phrases
    if(!is.null(L)) L else R or if(is.null(L)) R else L.
  * The return value from warnings() now always inherits from
    "warnings" as documented, now also in the case of no warnings
    where it previously returned NULL.
  * as.complex("1i") now returns 0 + 1i instead of NA with a warning.
  * z &lt;- c(NA, 1i) now keeps the imaginary part Im(z[1]) == 0, no
    longer coercing to NA_complex_.  Similarly, cumsum(z) correctly
    sums real and imaginary parts separately, i.e., without
    "crosstalk" in case of NAs.
  * On Alpine Linux iconv() now maps "latin2", "latin-2", "latin9"
    and "latin-9" to encoding names the OS knows about
    (case-insensitively).
  * iconv(sub = "Unicode") now always zero-pads to four (hex) digits,
    rather than to 4 or 8.  (This seems to have become the convention
    once Unicode restricted the number of Unicode points to 2^21 - 1
    and so will never need more than 6 digits.)
  * NCOL(NULL) now returns 0 instead of 1, for consistency with
    cbind().
  * The information for the Euro glyph missing from the Adobe .afm
    files for the Courier, Helvetica and Times families has been
    copied from their URW equivalents - this will improve vertical
    centring in the pdf() and postscript() devices.
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.12.0.  The changes are almost entirely cosmetic.
  * The included LAPACK sources have been updated to version 3.12.0
    and some further double-complex routines added.
  * There are new font families for the 2014--5 URW 2.0 fonts (see
    ?pdf) which are included in recent versions of Ghostscript.
    These have font widths for most Greek glyphs and a few others
    which were missing from the original versions (whose font
    families remain available for reproducibility, although
    Ghostscript-based viewers will render using the 2.0 versions).
  * Improve the large-n efficiency of as.matrix(&lt;dist&gt;), thanks an R
    contributors effort, notably by Tim Taylor and Heather Turner,
    see PR#18660.
  * The default and numeric methods of all.equal() get a check.class
    option.
  * zapsmall() gets new optional arguments, function mFUN and min.d,
    for extra flexibility; fulfills a wish in PR#18199.  Also, it is
    now an implicit S4 generic in package methods.
  * The Rd filter for aspell() gains an ignore argument.
  * New generic function sort_by(), primarily useful for the
    data.frame method which can be used to sort rows of a data frame
    by one or more columns.
  * The icence headers for the RPC code in src/extra/xdr have been
    updated to use the GPL-compatible licence published by Oracle
    America in 2010.
  * New function pkg2HTML() in tools to create single-page HTML
    reference manuals for R packages.
  * The byte code evaluator now uses less C stack space for recursive
    calls to byte-compiled functions. It also makes more of an effort
    to avoid allocations for scalar return values.
  * New completion option backtick (disabled by default) allows
    non-syntactic completions to be wrapped in backquotes. This is
    currently only useful for Jupyter notebooks via the IRkernel
    package, and may cause problems for other backends.
  INSTALLATION:
  * The parser has been updated to work with bison 3.8.2, which is
    now used for the pre-generated parsers in gram.c, file.c, and
    gramRd.c. A few parser error messages have changed, which may
    affect code that relies on exact messages.
  INSTALLATION on a UNIX-ALIKE:
  * System valgrind headers are now required to use configure option
  - -with-valgrind-instrumentation with value 1 or 2.
  * configure will warn if it encounters a 32-bit build, as that is
    nowadays almost untested.
  * Environment variable R_SYSTEM_ABI is no longer used and so no
    longer recorded in etc/Renviron (it was not on Windows and was
    only ever used when preparing package tools).
  * If the libdeflate library and headers are available, libdeflate
    rather than libz is used to (de)compress R objects in lazy-load
    databases.  Typically tasks spend up to 5% of their time on such
    operations, although creating lazy-data databases is one of the
    exceptions.
    This can be suppressed if the library is available by the
    configure option --without-libdeflate-compression.
  * configure option --enable-lto=check has not worked reliably since
    2019 and has been removed.
  * The minimum autoconf requirement for a maintainer build has been
    increased to autoconf 2.71.
    It is intended to increase this to 2.72 for R 4.5.0: the
    distributed configure file was generated using 2.72.
  * The minimum version requirement for an external LAPACK has been
    reduced to 3.9.0.
  * No default C++ compiler is set if no C++17 compiler is detected:
    there is no longer an automatic fallback to C++14 or C++11.
    Compilers from the last five years should have sufficient
    support: for others macros CXX and CXXSTD can be set in file
    config.site to provide a fallback if needed.
    The Objective-C++ compiler now by default uses the standard
    selected by R for C++ (currently C++17) rather than the default
    standard for the C++ compiler (which on macOS is still C++98).
  INSTALLATION on macOS:
  * A new configure option --with-newAccelerate makes use of Apple's
    'new' BLAS / LAPACK interfaces in their Accelerate framework.
    Those interfaces are only available in macOS 13.3 or later, and
    building requires SDK 13.3 or later (from the Command Line Tools
    or Xcode 14.3 or later).
    By default the option uses new Accelerate for BLAS calls: to also
    use it for LAPACK use option --with-newAccelerate=lapack.  The
    later interfaces provide LAPACK 3.9.1 rather than 3.2.1: 3.9.1 is
    from 2021-04 and does not include the improved algorithms
    introduced in LAPACK 3.10.0 (including for BLAS calls).
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools44, an update of the Rtools43 toolchain.  It is
    based on GCC 13 and newer versions of MinGW-W64, binutils and
    libraries (targeting 64-bit Intel CPUs).  R-devel can no longer
    be built using Rtools43 without changes.
  * Rtools44 has experimental support for 64-bit ARM (aarch64) CPUs
    _via_ the LLVM 17 toolchain using lld, clang/flang-new and
    libc++.
  UTILITIES:
  * R CMD check notes when S4-style exports are used without
    declaring a strong dependence on package methods.
  * tools::checkRd() (used by R CMD check) detects more problems with
    \Sexpr-based dynamic content, including bad nesting of \Sexprs
    and invalid arguments.
  * tools::checkRd() now reports Rd titles and section names ending
    in a period; this is ignored by R CMD check unless environment
    variable _R_CHECK_RD_CHECKRD_MINLEVEL_ is set to -5 or smaller.
  * R CMD check now notes Rd files without an \alias, as long
    documented in 'Writing R Extensions' §1.3.1.  The check for a
    missing \description has been moved from tools::checkRd() to
    tools::checkRdContents().
  * R CMD check now visits inst/NEWS.Rd and OS-specific man
    subdirectories when checking Rd files.
  * tools::checkDocFiles() and tools::checkRdContents() now also
    check internal Rd files by default, but "specially" (ignoring
    missing documentation of arguments).
  * R CMD Rdiff gets option --useEx.
  * R CMD check now warns on non-portable uses of Fortran KIND such
    as INTEGER(KIND=4) and REAL(KIND=8).
    To see the failing lines set environment variable
    _R_CHECK_FORTRAN_KIND_DETAILS_ to a true value.
  * When checking Rd files, R CMD check now notes some of the "lost
    braces" that tools::checkRd() finds.  Typical problems are Rd
    macros missing the initial backslash (e.g., code{...}), in-text
    set notation (e.g., {1, 2}, where the braces need escaping), and
    \itemize lists with \describe-style entries of the form
    \item{label}{description}.
  * R CMD INSTALL (and hence check) will compile C++ code with
  - DR_NO_REMAP if environment variable _R_CXX_USE_NO_REMAP_ is set
    to a true value.  It is planned that this will in future become
    the default for compiling C++.
  * The new built-in Rd macro \dontdiff{} can be used to mark example
    code whose output should be ignored when comparing check output
    to reference output (tests/Examples/&lt;pkg&gt;-Ex.Rout.save).  The
    \dontdiff tag, like \donttest, is _not_ shown on the rendered
    help page, so provides a clean alternative to ##
    IGNORE_RDIFF_(BEGIN|END) comments.
  * R CMD build when there is no NAMESPACE, now uses the recommended
    exportPattern("^[^.]"), instead of exporting everything.
  * R CMD check now warns about non-ASCII characters in the NAMESPACE
    file (in addition to R files). Such packages are not portable and
    may fail to install on some platforms.
  C-LEVEL FACILITIES:
  * Headers R_ext/Applic.h and R-ext/Linpack.h used to include
    R_ext/BLAS.h although this was undocumented and unneeded by their
    documented entry points.  They no longer do so.
  * New function R_missing(), factored out from do_missing(), used to
    fix PR#18579.
  * SEXP type S4SXP has been renamed to OBJSXP to support
    experimenting with alternative object systems.  The S4SXP value
    can still be used in C code but is now deprecated.  Based on
    contributions from the R Consortium's Object-Oriented Programming
    Working Group.
  * New function pow1p(x,y) for accurate (1+x)^y.
  * mkCharLenCE was incorrectly documented to take a size_t length
    but was implemented with int (and character strings in R are
    limited to 2^31 - 1 bytes).
  DEPRECATED AND DEFUNCT:
  * data() no longer handles zipped data from long-defunct (since R
    2.13.0) --use-zip-data installations.
  * The legacy graphics devices pictex() and xfig() are now
    deprecated.  They do not support recent graphics enhancements and
    their font handling is rudimentary. The intention is to retain
    them for historical interest as long as they remain somewhat
    functional.
  * Support for encoding = "MacRoman" has been removed from the pdf()
    and postscript() devices - this was a legacy encoding supporting
    classic macOS up to 2001 and no longer has universal libiconv
    support.
  * is.R() is deprecated as no other S dialect is known to be in use
    (and this could only identify historical dialects, not future
    ones).
    Further information on calls can be obtained by setting the
    environment variable _R_DEPRECATED_IS_R_ to error which turns the
    deprecation warning into an error and so by default gives a
    traceback.  (This is done by R CMD check --as-cran.)
  * UseMethod() no longer forwards local variables assigned in the
    generic function into method call environments before evaluating
    the method body. This makes method calls behave more like
    standard function calls and makes method code easier to analyze
    correctly.
  * The twelve as.data.frame.&lt;class&gt;() methods which were deprecated
    only via _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ and in R CMD
    check --as-cran are formally deprecated now in favour of calling
    as.data.frame() or as.data.frame.vector().  The deprecation
    "check" now works also when as.data.frame() is S4 generic thanks
    to Ivan Krylov.
  * The default method for the directional comparison operators &lt;, &gt;,
    &lt;=, and &gt;= now signals an error when one of the operands is a
    language object, i.e. a symbol or a call.
  * For terms.formula(), deprecate abb and neg.out arguments
    _formally_ in addition to just documenting it.
  BUG FIXES:
  * The methods package is more robust to not being attached to the
    search path.  More work needs to be done.
  * pairwise.t.test() misbehaved when subgroups had 0 DF for
    variance, even with pool.sd = TRUE.  (PR#18594 by Jack Berry).
  * Probability distribution functions [dpq]&lt;distrib&gt;(x, *), but also
    bessel[IKJY](x, .) now consistently preserve attributes(x) when
    length(x) == 0, e.g., for a 2 x 0 matrix, thanks to Karolis
    Koncevičius' report PR#18509.
  * Group "Summary" computations such as sum(1:3, 4, na.rm = 5, NA,
    7, na.rm = LL) now give an error instead of either 17 or NN for
    LL true or false, as proposed by Ivan Krylov on the R-devel
    mailing list.  (This also means it is now an error to specify
    na.rm more than once.)
  * as.complex(x) now returns complex(real = x, imaginary = 0) for
    _all_ numerical and logical x, notably also for NA or
    NA_integer_.
  * Directories are now omitted by file.copy(, recursive = FALSE) and
    in file.append() (PR#17337).
  * gsub() and sub() are now more robust to integer overflow when
    reporting errors caused by too large input strings (PR#18346).
  * Top-level handlers are now more robust to attempts to remove a
    handler whilst handlers are running (PR#18508).
  * The handling of Alt+F4 in dialogs created on Windows using
    GraphApp has been fixed (PR#13870).
  * density() more consistently computes grid values for the
    FFT-based convolution, following Robert Schlicht's analysis and
    proposal in PR#18337, correcting density values typically by a
    factor of about 0.999.  Argument old.coords = TRUE provides back
    compatibility.
  * palette.colors() gains a name argument that defaults to FALSE
    controlling whether the vector of colours that is returned has
    names (where possible).  PR#18529.
  * tools::xgettext() no longer extracts the (non-translatable) class
    names from warningCondition and errorCondition calls.
  * S3method(&lt;gen&gt;, &lt;class&gt;, &lt;func&gt;) in the NAMESPACE file now works
    (again) when &lt;func&gt; is visible from the namespace, e.g.,
    imported, or in base.
  * getParseData(f) now also works for a function defined in the
    first of several &lt;pkg&gt;/R/*.R source files, thanks to Kirill
    Müller's report and Duncan Murdoch's patch in PR#16756.
  * Rd \Sexpr macros with nested #ifdef conditionals were not
    processed.
  * A non-blocking connection with non-default encoding (such as a
    socket) now correctly returns from readLines() after new data has
    arrived also when its EOF had been reached previously.  Thanks to
    Peter Meilstrup's report on R-devel and Ivan Krylov's report and
    patch proposal in PR#18555.
  * tools::checkRdContents() failed to detect empty argument
    descriptions when they spanned multiple lines, including those
    generated by prompt().  These cases are now noted by R CMD check.
  * Plain-text help no longer outputs spurious colons in the
    arguments list (for multi-line \item labels in the Rd source).
  * kappa() and rcond() work correctly in more cases; kappa(., norm =
    "2") now warns that it computes the 1-norm with (default) exact =
    FALSE; prompted by Mikael Jagan's quite comprehensive PR#18543.
  * Rd skeletons generated by prompt() or promptData() now use a
    dummy title (so R CMD build works).  tools::checkRdContents() has
    been updated to detect such template leftovers, including from
    promptPackage().
  * When S4 method dispatch fails because no method was found, the
    error message now includes the signature argument names; thanks
    to Michael Chirico's proposal on the R-devel list.
  * withAutoprint({ .. }) now preserves srcrefs previously lost,
    thanks to Andrew Simmons' report plus fix in PR#18572.
  * transform.data.frame() no longer adjusts names; in particular,
    untransformed variables are kept as-is, including those with
    syntactically invalid names (PR#17890).
  * The keep.source option for Rd \Sexpr blocks is no longer ignored.
  * The formula methods for t.test() and wilcox.test() now catch when
    paired is passed, addressing PR#14359; use Pair(x1, x2) ~ 1 for a
    paired test.
  * The level reported in the browser prompt was often too large. It
    now shows the number of browser contexts on the stack.
  * For cbind() and rbind(), the optional deparse.level argument is
    now properly passed to methods, thanks to Mikael Jagan's PR#18579
    and comments there.
  * Some error and warning messages for large ('long vector')
    matrix(v, nr, nc) and dim(m) &lt;- d are now correct about sizes,
    using long long formatting, fixing PR#18612 (and more) reported
    by Mikael Jagan.
  * readChar(useBytes = TRUE) now terminates strings even when the
    underlying connection uses extra spaces in the input buffer.
    This fixes problems with extra garbage seen with gzip
    connections, PR#18605.
  * Named capture in PCRE regular expressions now works also with
    more than 127 named groups (PR#18588).
  * Datetime functions are now robust against long jumps when dealing
    with internal time zone changes.  This avoids confusing warnings
    about an invalid time zone, previously triggered by turning
    warnings into errors or handling them via tryCatch (PR#17966,
    PR#17780).
  * Datetime functions now restore even an empty TZ environment
    variable after internal time zone changes (PR#17724).  This makes
    results of datetime functions with this (typically unintentional)
    setting more predictable.
  * drop.terms(*) now drops response as by default, keep.response =
    FALSE, fixing PR#18564 thanks to Mikael Jagan.
  * dummy.coef(.) now also works for lm()-models with character
    categorical predictor variables rather than factor ones, fixing
    PR#18635 reported by Jinsong Zhao.
  * formals(f) &lt;- formals(f) now also works for a function w/o
    arguments and atomic _constant_ body(f).
  * Correct as.function(&lt;invalid list&gt;, .)'s error message.
  * removeSource() is yet more thorough in finding and removing
    "srcref" and the other source references from parsed R language
    chunks, fixing PR#18638 thanks to Andrew Simmons.
  * dgeom() is more accurate now, notably when its result is very
    small, fixing PR#18642 thanks to the proposal of Morten Welinder,
    also improving other instances where C level binom_raw(x, n, ..)
    has x == 0 or x== n.
  * warning() with options(warn = 1) has improved output for
    multi-line messages.
  * axis.Date() and axis.POSIXct() now respect the par("lab") setting
    for the number of pretty() intervals.
  * Comparisons for language objects (which are based on deparsing)
    are now more careful about using accurate deparsed results
    (PR#18676).
  * Plain-text help (Rd2txt) now correctly preserves blank lines
    following single-line \dontrun code.
  * &lt;POSIXlt&gt;[*] no longer sets wrong "balanced" attribute, fixing
    PR#18681 thanks to Mikael Jagan.
  * str(&lt;classed-call&gt;) now deparses the call as expected, fixing
    PR#18684, reported by Dave Slager.
  * In Rd examples, code following the closing brace of a \dontrun,
    \dontshow or \donttest tag on the same line is no longer skipped
    when R CMD check runs the examples.
  * as.data.frame(matrix(*, ncol=0)) now gets valid names() and
    colnames(); reported by Davis Vaughan on the R-devel list.
  * Internal Mathlib function stirlerr(n) is now almost fully
    (52-bit) accurate for all n &gt;= ~5.9 and more accurate also in the
    range 1 -- 5.9.  This entails small ("after 12th decimal")
    changes in density functions, e.g., dgamma() in _some_ regions of
    their support.  The fix was partly prompted by Morten Welinder's
    PR#18640.
  * Numbers like 9876543.2 are now considered non-integer by Mathlib
    internal R_nonint(), amending original fix of PR#15734.
  * Rd comment lines no longer cause broken paragraphs in the
    rendered PDF and plain-text help. In code blocks, pure comment
    lines (starting with %) no longer produce an empty line.
  * xtabs(Freq ~ .) now consistently defaults to na.action = na.pass,
    using na.rm = FALSE (added as an argument) when summing over Freq
    (PR#17770).
  * tools::testInstalledPackage() is no longer silent about failures
    from running examples or tests and its return code no longer
    ignores failures from checking vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1718366400">- CHANGES IN R 4.4.1:
  C-LEVEL FACILITIES:
  * Functions R_atof and R_strtod declared in header R_ext/Utils.h
    are now documented in 'Writing R Extensions' and so formally part
    of the API.
  * The non-API entry points Rf_setSVector, Rf_StringFalse,
    Rf_StringTrue and Rf_isBlankString have been added to those
    reported by R CMD check.
  * The new function Rf_allocLang is now available. This provides an
    alternative to the idiom of calling Rf_allocList followed by
    SET_TYPEOF.
  UTILITIES:
  * R CMD check now reports as warnings what gfortran calls 'Fortran
    2018 deleted features', all of which have long been marked as
    'obsolescent' and some of which were deleted in Fortran 2008 or
    earlier.  Fortran compilers are no longer required to support
    these.
  BUG FIXES:
  * as.numeric(), scan(), type.convert() and other places which use
    the internal C function R_strtod now require a _non-empty_ digit
    sequence in a decimal or binary exponent.  This aligns with the
    C/POSIX standard for strtod and with ?NumericConstants.
  * as.data.frame(m, make.names=NA) now works correctly for a matrix
    m with NA's in row names.
  * The error message from &lt;POSIXlt&gt;[["hour"]] and similar now
    mentions *[[, "hour"]], as wished for in PR#17409 and proposed by
    Michael Chirico.
  * qbinom() and potentially qpois(), qnbinom(), no longer sometimes
    fail accurate inversion (of pbinom(), etc), thanks to Christopher
    Chang's report and patch in PR#18711.
  * The internal help server on Windows can again serve requests sent
    in quick succession, fixing a regression in R 4.4.0.
  * debugcall(&lt;S3Generic&gt;()) now also works when a corresponding
    S4-generic version is in the methods cache (PR#18143).
  * Package tools' toTitleCase(ch0) now returns character(0) when ch0
    is of zero length; fixing PR#18724, reported by David Hugh Jones.
  * R CMD check is no longer broken (without a check result and no
    explanation in 00check.log) for a package which declares an
    invalid VignetteBuilder in DESCRIPTION but has no vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1730376000">- CHANGES IN R 4.4.2:
  C-LEVEL FACILITIES:
  * The S-compatibility macros F77_COM and F77_COMDECL defined in
    header R_ext/RS.h are deprecated and will be removed shortly.  We
    could find no record of their use.
  BUG FIXES:
  * Mathlib function lgammacor(x) no longer warns about underflow to
    zero for large x.
  * Text widths and heights were incorrectly reported by the Quartz
    device if the drawing context didn't exist yet (typically when
    drawing off-screen to a window that is yet to appear, see
    PR#18591).
  * The Quartz device could segfault in cases where paths with spaces
    are used in the new glyph drawing API.  Thanks to Tomek
    Gieorgijewski (PR#18758).
  * On macOS in R CRAN builds, it is again possible to read
    little-endian UTF-16 text with a BOM from a connection using
    encoding="UTF-16".  Users building R from source should avoid
    using the system libiconv in macOS 14.1 and later.
  * methods' internal .requirePackage() now re-enables primitive
    method dispatch when needed; thanks to Ivan Krylov for
    demystifying CRAN package check failures on the R-devel mailing
    list.</changelog>
</package>
<package pkgid="421a32756f9ddc33ff4ddb5491ecdc1a2d74b2f17ce7c0d496bc8d9a39aa0d6a67909ae98b6a8a7fe07d6828c34f67037148074a262cb8617d7098ed6953575b" name="R-parallel" arch="i586">
  <version epoch="0" ver="4.4.2" rel="51.0.2.2.sr20241103"/>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1620302400">- To get in sync with d:l:R:autoCRAN the Matrix package's split
  in -devel was reversed.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339200">- improved spec file according to comments of dimstar in
  https://build.opensuse.org/request/show/892685</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339201">- CHANGES IN R 4.1.0:
  FUTURE DIRECTIONS:
  * It is planned that the 4.1.x series will be the last to support
    32-bit Windows, with production of binary packages for that
    series continuing until early 2023.
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Data set esoph in package datasets now provides the correct
    numbers of controls; previously it had the numbers of cases added
    to these.  (Reported by Alexander Fowler in PR#17964.)
  NEW FEATURES:
  * www.omegahat.net is no longer one of the repositories known by
    default to setRepositories().  (Nowadays it only provides source
    packages and is often unavailable.)
  * Function package_dependencies() (in package tools) can now use
    different dependency types for direct and recursive dependencies.
  * The checking of the size of tarball in R CMD check --as-cran
    &lt;pkg&gt; may be tweaked via the new environment variable
    _R_CHECK_CRAN_INCOMING_TARBALL_THRESHOLD_, as suggested in
    PR#17777 by Jan Gorecki.
  * Using c() to combine a factor with other factors now gives a
    factor, an ordered factor when combining ordered factors with
    identical levels.
  * apply() gains a simplify argument to allow disabling of
    simplification of results.
  * The format() method for class "ftable" gets a new option justify.
    (Suggested by Thomas Soeiro.)
  * New ...names() utility.  (Proposed by Neal Fultz in PR#17705.)
  * type.convert() now warns when its as.is argument is not
    specified, as the help file always said it _should_.  In that
    case, the default is changed to TRUE in line with its change in
    read.table() (related to stringsAsFactor) in R 4.0.0.
  * When printing list arrays, classed objects are now shown _via_
    their format() value if this is a short enough character string,
    or by giving the first elements of their class vector and their
    length.
  * capabilities() gets new entry "Rprof" which is TRUE when R has
    been configured with the equivalent of --enable-R-profiling (as
    it is by default).  (Related to Michael Orlitzky's report
    PR#17836.)
  * str(xS4) now also shows extraneous attributes of an S4 object
    xS4.
  * Rudimentary support for vi-style tags in rtags() and R CMD rtags
    has been added.  (Based on a patch from Neal Fultz in PR#17214.)
  * checkRdContents() is now exported from tools; it and also
    checkDocFiles() have a new option chkInternal allowing to check
    Rd files marked with keyword "internal" as well.  The latter can
    be activated for R CMD check via environment variable
    _R_CHECK_RD_INTERNAL_TOO_.
  * New functions numToBits() and numToInts() extend the raw
    conversion utilities to (double precision) numeric.
  * Functions URLencode() and URLdecode() in package utils now work
    on vectors of URIs.  (Based on patch from Bob Rudis submitted
    with PR#17873.)
  * path.expand() can expand ~user on most Unix-alikes even when
    readline is not in use.  It tries harder to expand ~, for example
    should environment variable HOME be unset.
  * For HTML help (both dynamic and static), Rd file links to help
    pages in external packages are now treated as references to
    topics rather than file names, and fall back to a file link only
    if the topic is not found in the target package. The earlier rule
    which prioritized file names over topics can be restored by
    setting the environment variable _R_HELP_LINKS_TO_TOPICS_ to a
    false value.
  * c() now removes NULL arguments before dispatching to methods,
    thus simplifying the implementation of c() methods, _but_ for
    back compatibility keeps NULL when it is the first argument.
    (From a report and patch proposal by Lionel Henry in PR#17900.)
  * Vectorize()'s result function's environment no longer keeps
    unneeded objects.
  * Function ...elt() now propagates visibility consistently with
    ..n.  (Thanks to Lionel Henry's PR#17905.)
  * capture.output() no longer uses non-standard evaluation to
    evaluate its arguments.  This makes evaluation of functions like
    parent.frame() more consistent.  (Thanks to Lionel Henry's
    PR#17907.)
  * packBits(bits, type="double") now works as inverse of
    numToBits().  (Thanks to Bill Dunlap's proposal in PR#17914.)
  * curlGetHeaders() has two new arguments, timeout to specify the
    timeout for that call (overriding getOption("timeout")) and TLS
    to specify the minimum TLS protocol version to be used for
    https:// URIs (_inter alia_ providing a means to check for sites
    using deprecated TLS versions 1.0 and 1.1).
  * For nls(), an optional constant scaleOffset may be added to the
    denominator of the relative offset convergence test for cases
    where the fit of a model is expected to be exact, thanks to a
    proposal by John Nash.  nls(*, trace=TRUE) now also shows the
    convergence criterion.
  * Numeric differentiation _via_ numericDeriv() gets new optional
    arguments eps and central, the latter for taking central divided
    differences.  The latter can be activated for nls() via
    nls.control(nDcentral = TRUE).
  * nls() now passes the trace and control arguments to getInitial(),
    notably for all self-starting models, so these can also be fit in
    zero-noise situations via a scaleOffset.  For this reason, the
    initial function of a selfStart model must now have ... in its
    argument list.
  * bquote(splice = TRUE) can now splice expression vectors with
    attributes: this makes it possible to splice the result of
    parse(keep.source = TRUE).  (Report and patch provided by Lionel
    Henry in PR#17869.)
  * textConnection() gets an optional name argument.
  * get(), exists(), and get0() now signal an error if the first
    argument has length greater than 1.  Previously additional
    elements were silently ignored.  (Suggested by Antoine Fabri on
    R-devel.)
  * R now provides a shorthand notation for creating functions, e.g.
    \(x) x + 1 is parsed as function(x) x + 1.
  * R now provides a simple native forward pipe syntax |&gt;.  The
    simple form of the forward pipe inserts the left-hand side as the
    first argument in the right-hand side call.  The pipe
    implementation as a syntax transformation was motivated by
    suggestions from Jim Hester and Lionel Henry.
  * all.equal(f, g) for functions now by default also compares their
    environment(.)s, notably via new all.equal method for class
    function.  Comparison of nls() fits, e.g., may now need
    all.equal(m1, m2, check.environment = FALSE).
  * .libPaths() gets a new option include.site, allowing to _not_
    include the site library.  (Thanks to Dario Strbenac's suggestion
    and Gabe Becker's PR#18016.)
  * Lithuanian translations are now available.  (Thanks to Rimantas
    Zakauskas.)
  * names() now works for DOTSXP objects.  On the other hand, in
    R-lang, the R language manual, we now warn against relying on the
    structure or even existence of such dot-dot-dot objects.
  * all.equal() no longer gives an error on DOTSXP objects.
  * capabilities("cairo") now applies only to the file-based devices
    as it is now possible (if very unusual) to build R with Cairo
    support for those but not for X11().
  * There is optional support for tracing the progress of
    loadNamespace() - see its help.
  * (Not Windows.)  l10n_info() reports an additional element, the
    name of the encoding as reported by the OS (which may differ from
    the encoding part (if any) of the result from
    Sys.getlocale("LC_CTYPE").
  * New function gregexec() which generalizes regexec() to find _all_
    disjoint matches and well as all substrings corresponding to
    parenthesized subexpressions of the given regular expression.
    (Contributed by Brodie Gaslam.)
  * New function charClass() in package utils to query the
    wide-character classification functions in use (such as
    iswprint).
  * The names of quantile()'s result no longer depend on the global
    getOption("digits"), but quantile() gets a new optional argument
    digits = 7 instead.
  * grep(), sub(), regexp and variants work considerably faster for
    long factors with few levels.  (Thanks to Michael Chirico's
    PR#18063.)
  * Provide grouping of x11() graphics windows within a window
    manager such as Gnome or Unity; thanks to a patch by Ivan Krylov
    posted to R-devel.
  * The split() method for class data.frame now allows the f argument
    to be specified as a formula.
  * sprintf now warns on arguments unused by the format string.
  * New palettes "Rocket" and "Mako" for hcl.colors() (approximating
    palettes of the same name from the 'viridisLite' package).
    Contributed by Achim Zeileis.
  * The base environment and its namespace are now locked (so one can
    no longer add bindings to these or remove from these).
  * Rterm handling of multi-byte characters has been improved,
    allowing use of such characters when supported by the current
    locale.
  * Rterm now accepts ALT+ +xxxxxxxx sequences to enter Unicode
    characters as hex digits.
  * Environment variable LC_ALL on Windows now takes precedence over
    LC_CTYPE and variables for other supported categories, matching
    the POSIX behaviour.
  * duplicated() and anyDuplicated() are now optimized for integer
    and real vectors that are known to be sorted via the ALTREP
    framework. Contributed by Gabriel Becker via PR#17993.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 14
    and so packages that provide graphics devices should be
    reinstalled.
  * Graphics devices should now specify deviceVersion to indicate
    what version of the graphics engine they support.
  * Graphics devices can now specify deviceClip.  If TRUE, the
    graphics engine will never perform any clipping of output itself.
    The clipping that the graphics engine does perform (for both
    canClip = TRUE and canClip = FALSE) has been improved to avoid
    producing unnecessary artifacts in clipped output.
  * The grid package now allows gpar(fill) to be a linearGradient(),
    a radialGradient(), or a pattern().  The viewport(clip) can now
    also be a grob, which defines a clipping path, and there is a new
    viewport(mask) that can also be a grob, which defines a mask.
    These new features are only supported so far on the Cairo-based
    graphics devices and on the pdf() device.
  * (Not Windows.)  A warning is given when a Cairo-based type is
    specified for a png(), jpeg(), tiff() or bmp() device but Cairo
    is unsupported (so type = "Xlib" is tried instead).
  * grSoftVersion() now reports the versions of FreeType and
    FontConfig if they are used directly (not _via_ Pango), as is
    most commonly done on macOS.
  C-LEVEL FACILITIES:
  * The _standalone_ libRmath math library and R's C API now provide
    log1pexp() again as documented, and gain log1mexp().
  INSTALLATION on a UNIX-ALIKE:
  * configure checks for a program pkgconf if program pkg-config is
    not found.  These are now only looked for on the path (like
    almost all other programs) so if needed specify a full path to
    the command in PKG_CONFIG, for example in file config.site.
  * C99 function iswblank is required - it was last seen missing ca
    2003 so the workaround has been removed.
  * There are new configure options --with-internal-iswxxxxx,
  - -with-internal-towlower and --with-internal-wcwidth which allows
    the system functions for wide-character classification,
    case-switching and width (wcwidth and wcswidth) to be replaced by
    internal ones.  The first has long been used on macOS, AIX (and
    Windows) but this enables it to be unselected there and selected
    for other platforms (it is the new default on Solaris).  The
    second is new in this version of R and is selected by default on
    macOS and Solaris.  The third has long been the default and
    remains so as it contains customizations for East Asian
    languages.
    System versions of these functions are often minimally
    implemented (sometimes only for ASCII characters) and may not
    cover the full range of Unicode points: for example Solaris (and
    Windows) only cover the Basic Multilingual Plane.
  * Cairo installations without X11 are more likely to be detected by
    configure, when the file-based Cairo graphics devices will be
    available but not X11(type = "cairo").
  * There is a new configure option --with-static-cairo which is the
    default on macOS.  This should be used when only static cairo
    (and where relevant, Pango) libraries are available.
  * Cairo-based graphics devices on platforms without Pango but with
    FreeType/FontConfig will make use of the latter for font
    selection.
  LINK-TIME OPTIMIZATION on a UNIX-ALIKE:
  * Configuring with flag --enable-lto=R now also uses LTO when
    installing the recommended packages.
  * R CMD INSTALL and R CMD SHLIB have a new flag --use-LTO to use
    LTO when compiling code, for use with R configured with
  - -enable-lto=R.  For R configured with --enable-lto, they have
    the new flag --no-use-LTO.
    Packages can opt in or out of LTO compilation _via_ a UseLTO
    field in the DESCRIPTION file.  (As usual this can be overridden
    by the command-line flags.)
  BUILDING R on Windows:
  * for GCC &gt;= 8, FC_LEN_T is defined in config.h and hence character
    lengths are passed from C to Fortran in _inter alia_ BLAS and
    LAPACK calls.
  * There is a new text file src/gnuwin32/README.compilation, which
    outlines how C/Fortran code compilation is organized and
    documents new features:
  * R can be built with Link-Time Optimization with a suitable
    compiler - doing so with GCC 9.2 showed several
    inconsistencies which have been corrected.
  * There is support for cross-compiling the C and Fortran code
    in R and standard packages on suitable (Linux) platforms.
    This is mainly intended to allow developers to test later
    versions of compilers - for example using GCC 9.2 or 10.x has
    detected issues that GCC 8.3 in Rtools40 does not.
  * There is experimental support for cross-building R packages
    with C, C++ and/or Fortran code.
  * The R installer can now be optionally built to support a single
    architecture (only 64-bit or only 32-bit).
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++14 where
    available (which it is on all currently checked platforms): if
    not (as before) C++11 is used if available otherwise C++ is not
    supported.
    Packages which specify C++11 will still be installed using C++11.
    C++14 compilers may give deprecation warnings, most often for
    std::random_shuffle (deprecated in C++14 and removed in C++17).
    Either specify C++11 (see 'Writing R Extensions') or modernize
    the code and if needed specify C++14.  The latter has been
    supported since R 3.4.0 so the package's DESCRIPTION would need
    to include something like
    Depends: R (&gt;= 3.4)
  PACKAGE INSTALLATION on Windows:
  * R CMD INSTALL and R CMD SHLIB make use of their flag --use-LTO
    when the LTO_OPT make macro is set in file etc/${R_ARCH}/Makeconf
    or in a personal/site Makevars file.  (For details see 'Writing R
    Extensions' SS4.5.)
    This provides a valuable check on code consistency.  It does work
    with GCC 8.3 as in Rtools40, but that does not detect everything
    the CRAN checks with current GCC do.
  PACKAGE INSTALLATION on macOS:
  * The default personal library directory on builds with
  - -enable-aqua (including CRAN builds) now differs by CPU type,
    one of
    ~/Library/R/x86_64/x.y/library
    ~/Library/R/arm64/x.y/library
    This uses the CPU type R (and hence the packages) were built for,
    so when a x86_64 build of R is run under Rosetta emulation on an
    arm64 Mac, the first is used.
  UTILITIES:
  * R CMD check can now scan package functions for bogus return
    statements, which were possibly intended as return() calls (wish
    of PR#17180, patch by Sebastian Meyer). This check can be
    activated via the new environment variable
    _R_CHECK_BOGUS_RETURN_, true for --as-cran.
  * R CMD build omits tarballs and binaries of previous builds from
    the top-level package directory.  (PR#17828, patch by Sebastian
    Meyer.)
  * R CMD check now runs sanity checks on the use of LazyData, for
    example that a data directory is present and that
    LazyDataCompression is not specified without LazyData and has a
    documented value.  For packages with large LazyData databases
    without specifying LazyDataCompression, there is a reference to
    the code given in 'Writing R Extensions' SS1.1.6 to test the
    choice of compression (as in all the CRAN packages tested a
    non-default method was preferred).
  * R CMD build removes LazyData and LazyDataCompression fields from
    the DESCRIPTION file of packages without a data directory.
  ENCODING-RELATED CHANGES:
  * The parser now treats \Unnnnnnnn escapes larger than the upper
    limit for Unicode points (\U10FFFF) as an error as they cannot be
    represented by valid UTF-8.
    Where such escapes are used for outputting non-printable
    (including unassigned) characters, 6 hex digits are used (rather
    than 8 with leading zeros).  For clarity, braces are used, for
    example \U{0effff}.
  * The parser now looks for non-ASCII spaces on Solaris (as
    previously on most other OSes).
  * There are warnings (including from the parser) on the use of
    unpaired surrogate Unicode points such as \uD834.  (These cannot
    be converted to valid UTF-8.)
  * Functions nchar(), tolower(), toupper() and chartr() and those
    using regular expressions have more support for inputs with a
    marked Latin-1 encoding.
  * The character-classification functions used (by default) to
    replace the system iswxxxxx functions on Windows, macOS and AIX
    have been updated to Unicode 13.0.0.
    The character-width tables have been updated to include new
    assignments in Unicode 13.0.0.
  * The code for evaluating default (extended) regular expressions
    now uses the same character-classification functions as the rest
    of R (previously they differed on Windows, macOS and AIX).
  * There is a build-time option to replace the system's
    wide-character wctrans C function by tables shipped with R: use
    configure option --with-internal-towlower or (on Windows)
  - DUSE_RI18N_CASE in CFLAGS when building R.  This may be needed
    to allow tolower() and toupper() to work with Unicode characters
    beyond the Basic Multilingual Plane where not supported by system
    functions (e.g. on Solaris where it is the new default).
  * R is more careful when truncating UTF-8 and other multi-byte
    strings that are too long to be printed, passed to the system or
    libraries or placed into an internal buffer.  Truncation will no
    longer produce incomplete multibyte characters.
  DEPRECATED AND DEFUNCT:
  * Function plclust() from the package stats and
    package.dependencies(), pkgDepends(), getDepList(),
    installFoundDepends(), and vignetteDepends() from package tools
    are defunct.
  * Defunct functions checkNEWS() and readNEWS() from package tools
    and CRAN.packages() from utils have been removed.
  * R CMD config CXXCPP is defunct (it was deprecated in R 3.6.2).
  * parallel::detectCores() drops support for Irix (retired in 2013).
  * The LINPACK argument to chol.default(), chol2inv(),
    solve.default() and svd() has been defunct since R 3.1.0.  It was
    silently ignored up to R 4.0.3 but now gives an error.
  * Subsetting/indexing, such as ddd[*] or ddd$x on a DOTSXP
    (dot-dot-dot) object ddd has been disabled; it worked by accident
    only and was undocumented.
  BUG FIXES:
  * Many more C-level allocations (mainly by malloc and strdup) are
    checked for success with suitable alternative actions.
  * Bug fix for replayPlot(); this was turning off graphics engine
    display list recording if a recorded plot was replayed in the
    same session.  The impact of the bug became visible if resize the
    device after replay OR if attempted another savePlot() after
    replay (empty display list means empty screen on resize or empty
    saved plot).
  * R CMD check etc now warn when a package exports non-existing S4
    classes or methods, also in case of no "methods" presence.
    (Reported by Alex Bertram; reproducible example and patch by
    Sebastian Meyer in PR#16662.)
  * boxplot() now also accepts calls for labels such as ylab, the
    same as plot().  (Reported by Marius Hofert.)
  * The help page for xtabs() now correctly states that addNA is
    setting na.action = na.pass among others.  (Reported as PR#17770
    by Thomas Soeiro.)
  * The R CMD check &lt;pkg&gt; gives a longer and more comprehensible
    message when DESCRIPTION misses dependencies, e.g., in Imports:.
    (Thanks to the contributors of PR#17179.)
  * update.default() now calls the generic update() on the formula to
    work correctly for models with extended formulas.  (As reported
    and suggested by Neal Fultz in PR#17865.)
  * The horizontal position of leaves in a dendrogram is now correct
    also with center = FALSE.  (PR#14938, patch from Sebastian
    Meyer.)
  * all.equal.POSIXt() no longer warns about and subsequently ignores
    inconsistent "tzone" attributes, but describes the difference in
    its return value (PR#17277).  This check can be disabled _via_
    the new argument check.tzone = FALSE as suggested by Sebastian
    Meyer.
  * as.POSIXct() now populates the "tzone" attribute from its tz
    argument when x is a logical vector consisting entirely of NA
    values.
  * x[[2^31]] &lt;- v now works.  (Thanks to the report and patch by
    Suharto Anggono in PR#17330.)
  * In log-scale graphics, axis() ticks and label positions are now
    computed more carefully and symmetrically in their range,
    typically providing _more_ ticks, fulfilling wishes in PR#17936.
    The change really corresponds to an improved axisTicks() (package
    grDevices), potentially influencing grid and lattice, for
    example.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now correct to at
    least five digits where it was catastrophically wrong,
    previously.
  * sum(df) and similar "Summary"- and "Math"-group member functions
    now work for data frames df with logical columns, notably also of
    zero rows.  (Reported to R-devel by Martin "b706".)
  * unsplit() had trouble with tibbles due to unsound use of rep(NA,
    len)-indexing, which should use NA_integer_ (Reported to R-devel
    by Mario Annau.)
  * pnorm(x, log.p = TRUE) underflows to -Inf slightly later.
  * show(&lt;hidden S4 generic&gt;) prints better and without quotes for
    non-hidden S4 generics.
  * read.table() and relatives treated an "NA" column name as missing
    when check.names = FALSE PR#18007.
  * Parsing strings containing UTF-16 surrogate pairs such as
    "\uD834\uDD1E" works better on some (uncommon) platforms.
    sprintf("%X", utf8ToInt("\uD834\uDD1E")) should now give "1D11E"
    on all platforms.
  * identical(x,y) is no longer true for differing DOTSXP objects,
    fixing PR#18032.
  * str() now works correctly for DOTSXP and related exotics, even
    when these are doomed.
    Additionally, it no longer fails for lists with a class and
    "irregular" method definitions such that e.g. lapply(*) will
    necessarily fail, as currently for different igraph objects.
  * Too long lines in environment files (e.g. Renviron) no longer
    crash R. This limit has been increased to 100,000 bytes.
    (PR#18001.)
  * There is a further workaround for FreeType giving incorrect
    italic font faces with cairo-based graphics devices on macOS.
  * add_datalist(*, force = TRUE) (from package tools) now actually
    updates an existing data/datalist file for new content.  (Thanks
    to a report and patch by Sebastian Meyer in PR#18048.)
  * cut.Date() and cut.POSIXt() could produce an empty last interval
    for breaks = "months" or breaks = "years".  (Reported as PR#18053
    by Christopher Carbone.)
  * Detection of the encoding of 'regular' macOS locales such as
    en_US (which is UTF-8) had been broken by a macOS change:
    fortunately these are now rarely used with en_US.UTF-8 being
    preferred.
  * sub() and gsub(pattern, repl, x, *) now keep attributes of x such
    as names() also when pattern is NA (PR#18079).
  * Time differences ("difftime" objects) get a replacement and a
    rep() method to keep "units" consistent.  (Thanks to a report and
    patch by Nicolas Bennett in PR#18066.)
  * The \RdOpts macro, setting defaults for \Sexpr options in an Rd
    file, had been ineffective since R 2.12.0: it now works again.
    (Thanks to a report and patch by Sebastian Meyer in PR#18073.)
  * mclapply and pvec no longer accidentally terminate parallel
    processes started before by mcparallel or related calls in
    package parallel (PR#18078).
  * grep and other functions for evaluating (extended) regular
    expressions handle in Unicode also strings not explicitly flagged
    UTF-8, but flagged native when running in UTF-8 locale.
  * Fixed a crash in fifo implementation on Windows (PR#18031).
  * Binary mode in fifo on Windows is now properly detected from
    argument open (PR#15600, PR#18031).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1622808000">- The line %{__install} -m 755 -d %{_infodir}
  no longer works in TW or Factory.
  But without that line it works everywhere. So this instruction
  was commented out of the spec file.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1628596800">- CHANGES IN R 4.1.1:
  NEW FEATURES:
  * require(pkg, quietly = TRUE) is quieter and in particular does
    not warn if the package is not found.
  DEPRECATED AND DEFUNCT:
  * Use of ftp:// URIs should be regarded as deprecated, with
    on-going support confined to method = "libcurl" and not routinely
    tested.  (Nowadays no major browser supports them.)
  * The non-default method = "internal" is deprecated for http:// and
    ftp:// URIs for both download.file and url.
  * On Windows, method = "wininet" is deprecated for http://,
    https:// and ftp:// URIs for both download.file and url.  (A
    warning is only given for ftp://.)
    For ftp:// URIs the default method is now "libcurl" if available
    (which it is on CRAN builds).
    method = "wininet" remains the default for http:// and https://
    URIs but if libcurl is available, using method = "libcurl" is
    preferred.
  INSTALLATION:
  * make check now works also without a LaTeX installation.  (Thanks
    to Sebastian Meyer's PR#18103.)
  BUG FIXES:
  * make check-devel works again in an R build configured with
  - -without-recommended-packages.
  * qnbinom(p, size, mu) for large size/mu is correct now in a range
    of cases (PR#18095); similarly for the (size, prob)
    parametrization of the negative binomial.  Also qpois() and
    qbinom() are better and or faster for extreme cases.  The
    underlying C code has been modularized and is common to all four
    cases of discrete distributions.
  * gap.axis is now part of the axis() arguments which are passed
    from bxp(), and hence boxplot().  (Thanks to Martin Smith's
    report and suggestions in PR#18109.)
  * .First and .Last can again be set from the site profile.
  * seq.int(from, to, *) and seq.default(..) now work better in large
    range cases where from-to is infinite where the two boundaries
    are finite.
  * all.equal(x,y) now returns TRUE correctly also when several
    entries of abs(x) and abs(y) are close to .Machine$double.xmax,
    the largest finite numeric.
  * model.frame() now clears the object bit when removing the class
    attribute of a value via na.action (PR#18100).
  * charClass() now works with multi-character strings on Windows
    (PR#18104, fixed by Bill Dunlap).
  * encodeString() on Solaris now works again in Latin-1 encoding on
    characters represented differently in UTF-8.  Support for
    surrogate pairs on Solaris has been improved.
  * file.show() on Windows now works with non-ASCII path names
    representable in the current native encoding (PR#18132).
  * Embedded R on Windows can now find R home directory via the
    registry even when installed only for the current user
    (PR#18135).
  * pretty(x) with finite x now returns finite values also in the
    case where the extreme x values are close in size to the maximal
    representable number .Machine$double.xmax.
    Also, it's been tweaked for very small ranges and when a boundary
    is close (or equal) to zero; e.g., pretty(c(0,1e-317)) no longer
    has negative numbers, currently still warning about a very small
    range, and pretty(2^-(1024 - 2^-1/(c(24,10)))) is more accurate.
  * The error message for not finding vignette files when weaving has
    correct file sizes now. (Thanks to Sebastian Meyer's PR#18154.)
  * dnbinom(20, &lt;large&gt;, 1) now correctly gives 0, and similar cases
    are more accurate with underflow precaution.  (Reported by Francisco Vera Alcivar in PR#18072.)</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635163200">- repaired https://bugzilla.suse.com/show_bug.cgi?id=1191380
  (rpmacros now go to rpmmacrodir)
- minor clean-ups in spec file</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635768000">- CHANGES IN R 4.1.2:
  C-LEVEL FACILITIES:
  * The workaround in headers R.h and Rmath.h (using namespace std;)
    for the Oracle Developer Studio compiler is no longer needed now
    C++11 is required so has been removed.  A couple more usages of
    log() (which should have been std::log()) with an int argument
    are reported on Solaris.
  * The undocumented limit of 4095 bytes on messages from the
    S-compatibility macros PROBLEM and MESSAGE is now documented and
    longer messages will be silently truncated rather than
    potentially causing segfaults.
  * If the R_NO_SEGV_HANDLER environment variable is non-empty, the
    signal handler for SEGV/ILL/BUS signals (which offers recovery
    user interface) is not set. This allows more reliable debugging
    of crashes that involve the console.
  DEPRECATED AND DEFUNCT:
  * The legacy S-compatibility macros PROBLEM, MESSAGE, ERROR, WARN,
    WARNING, RECOVER, ... are deprecated and will be hidden in R
    4.2.0. R's native interface of Rf_error and Rf_warning has long
    been preferred.
  BUG FIXES:
  * .mapply(F, dots, .) no longer segfaults when dots is not a list
    and uses match.fun(F) as always documented; reported by Andrew
    Simmons in PR#18164.
  * hist(&lt;Date&gt;, ...) and hist(&lt;POSIXt&gt;, ...)  no longer pass
    arguments for rect() (such as col and density) to axis().
    (Thanks to Sebastian Meyer's PR#18171.)
  * \Sexpr{ch} now preserves Encoding(ch). (Thanks to report and
    patch by Jeroen Ooms in PR#18152.)
  * Setting the RNG to "Marsaglia-Multicarry" e.g., by RNGkind(), now
    warns in more places, thanks to Andr'e Gillibert's report and
    patch in PR#18168.
  * gray(numeric(), alpha=1/2) no longer segfaults, fixing PR#18183,
    reported by Till Krenz.
  * Fixed dnbinom(x, size=&lt;very_small&gt;, .., log=TRUE) regression,
    reported by Martin Morgan.
  * as.Date.POSIXlt(x) now keeps names(x), thanks to Davis Vaughan's
    report and patch in PR#18188.
  * model.response() now strips an "AsIs" class typically, thanks to
    Duncan Murdoch's report and other discussants in PR#18190.
  * try() is considerably faster in case of an error and long call,
    as e.g., from some do.call().  Thanks to Alexander Kaever's
    suggestion posted to R-devel.
  * qqline(y = &lt;object&gt;) such as y=I(.), now works, see also
    PR#18190.
  * Non-integer mgp par() settings are now handled correctly in
    axis() and mtext(), thanks to Mikael Jagan and Duncan Murdoch's
    report and suggestion in PR#18194.
  * formatC(x) returns length zero character() now, rather than ""
    when x is of length zero, as documented, thanks to Davis
    Vaughan's post to R-devel.
  * removeSource(fn) now retains (other) attributes(fn).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1647000000">- CHANGES IN R 4.1.3:
  NEW FEATURES:
  * The default version of Bioconductor has been changed to 3.14.
    (This is used by setRepositories and the menus in GUIs.)
  UTILITIES:
  * R CMD check --as-cran has a workaround for a bug in versions of
    file up to at least 5.41 which mis-identify DBF files last
    changed in 2022 as executables.
  C-LEVEL FACILITIES:
  * The legacy S-compatibility macros SINGLE_* in R_ext/Constants.h
    (included by R.h) are deprecated and will be removed in R 4.2.0.
  BUG FIXES:
  * Initialization of self-starting nls() models with initialization
    functions following the pre-R-4.1.0 API (without the ...
    argument) works again for now, with a deprecation warning.
  * Fixed quoting of ~autodetect~ in Java setting defaults to avoid
    inadvertent user lookup due to leading ~, reported in PR#18231 by
    Harold Gutch.
  * substr(., start, stop) &lt;- v now treats _negative_ stop values
    correctly.  Reported with a patch in PR#18228 by Brodie Gaslam.
  * Subscripting an array x without dimnames by a
    length(dim(x))-column character matrix gave "random" non-sense,
    now an error; reported in PR#18244 by Mikael Jagan.
  * ...names() now matches names(list(...)) closely, fixing PR#18247.
  * all.equal(*, scale = s) now works as intended when length(s) &gt; 1,
    partly thanks to Michael Chirico's PR#18272.
  * print(x) for long vectors x now also works for named atomic
    vectors or lists and prints the correct number when reaching the
    getOption("max.print") limit; partly thanks to a report and
    proposal by Hugh Parsonage to the R-devel list.
  * all.equal(&lt;selfStart&gt;, *) no longer signals a deprecation
    warning.
  * reformulate(*, response=r) gives a helpful error message now when
    length(r) &gt; 1, thanks to Bill Dunlap's PR#18281.
  * Modifying globalCallingHandlers inside withCallingHandlers() now
    works or fails correctly, thanks to Henrik Bengtsson's PR#18257.
  * hist(&lt;Date&gt;, breaks = "days") and hist(&lt;POSIXt&gt;, breaks = "secs")
    no longer fail for inputs of length 1.
  * qbeta(.001, .9, .009) and similar cases now converge correctly
    thanks to Ben Bolker's report in PR#17746.
  * window(x, start, end) no longer wrongly signals "'start' cannot
    be after 'end'", fixing PR#17527 and PR#18291.
  * data() now checks that its (rarely used) list argument is a
    character vector - a couple of packages passed other types and
    gave incorrect results.
  * which() now checks its arr.ind argument is TRUE rather coercing
    to logical and taking the first element - which gave incorrect
    results in package code.
  * model.weights() and model.offset() more carefully extract their
    model components, thanks to Ben Bolker and Tim Taylor's R-devel
    post.
  * list.files(recursive = TRUE) now shows all broken symlinks
    (previously, some of them may have been omitted, PR#18296).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1650628800">- CHANGES IN R 4.2.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * The formula method of aggregate() now matches the generic in
    naming its first argument x (resolving PR#18299 by Thomas
    Soeiro).
    This means that calling aggregate() with a formula as a named
    first argument requires name formula in earlier versions of R and
    name x now, so portable code should not name the argument (code
    in many packages did).
  * Calling &amp;&amp; or || with either argument of length greater than one
    now gives a warning (which it is intended will become an error).
  * Calling if() or while() with a condition of length greater than
    one gives an error rather than a warning.  Consequently,
    environment variable _R_CHECK_LENGTH_1_CONDITION_ no longer has
    any effect.
  * Windows users should consult the WINDOWS section below for some
    profound changes including
  * Support for 32-bit builds has been dropped.
  * UTF-8 locales are used where available.
  * The default locations for the R installation and personal
    library folder have been changed.
    Thanks to Tomas Kalibera for months of work on the Windows port
    for this release.
  NEW FEATURES:
  * matrix(x, n, m) now warns in more cases where length(x) differs
    from n * m, as suggested by Abby Spurdle and Wolfgang Huber in
    Feb 2021 on the R-devel mailing list.
    This warning can be turned into an error by setting environment
    variable _R_CHECK_MATRIX_DATA_ to TRUE: R CMD check --as-cran
    does so unless it is already set.
  * Function file_test() in package utils gains tests for symlinks,
    readability and writability.
  * capabilities("libxml") is now false.
    The description of capabilities("http/ftp") now reflects that it
    refers to the default method, no longer the internal one.
  * simplify2array() gains an except argument for controlling the
    exceptions used by sapply().
  * Environment variables R_LIBS_USER and R_LIBS_SITE are both now
    set to the R system default if unset or empty, and can be set to
    NULL to indicate an empty list of user or site library
    directories.
  * The warning for axis()(-like) calls in cases of relatively small
    ranges (typically in log-scale situations) is slightly improved
    _and_ suppressed from explicit calls to .axisPars() as has always
    been the intention.
  * The contrasts setter function `contrasts&lt;-` gains an explicit
    default how.many = NULL rather than just using missing(how.many).
  * grid.pretty() gains a new optional argument n = 5.
  * There is a new function .pretty() with option bounds as a
    technical-utility version of pretty().  It and pretty() gain a
    new argument f.min with a better than back-compatible default.
  * Function grDevices::axisTicks() and related functions such as
    graphics::axis() work better, notably for the log scale; partly
    because of the pretty() improvements, but also because care is
    taken e.g., when ylim is finite but diff(ylim) is infinite.
  * nclass.FD() gains a digits option.
  * The R Mathlib internal C function bd0() (called indirectly from a
    dozen probability density and distribution functions such as
    dpois(), dbinom(), dgamma(), pgamma() _etc_) has been
    complemented by a more sophisticated and (mostly) more accurate C
    function ebd0(), currently called only by internal dpois_raw()
    improving accuracy for R level dpois() and potentially others
    calling it such as dnbinom(), dgamma() or pgamma().  (Thanks to
    Morten Welinder's PR#15628.)
  * write.ftable() gains sep = " " argument as suggested by Thomas
    Soeiro.
  * The names of the locale categories supported by R's
    Sys.getlocale() and Sys.setlocale() are now provided by variable
    .LC.categories in the base namespace.
  * The Date and POSIXt methods for hist() and the histogram method
    for plot() now also use the new default col = "lightgray" in
    consistency with the corresponding change to hist()'s default for
    R 4.0.0.
  * hist.default() gains new fuzz argument, and the histogram plot
    method no longer uses fractional axis ticks when displaying
    counts ("Frequency").
  * mapply() and hence Map() now also obey the "max-or-0-if-any"
    recycling rule, such that, e.g., Map(`+`, 1:3, 1[0]) is valid
    now.
  * as.character(&lt;obj&gt;) for "hexmode" or "octmode" objects now
    fulfils the important basic rule as.character(x)[j] ===
    as.character(x[j]).
  * The set utility functions, notably intersect() have been tweaked
    to be more consistent and symmetric in their two set arguments,
    also preserving a common mode.
  * substr(ch, start,end) &lt;- new now e.g., preserves names(ch); ditto
    for substring(), thanks to a patch from Brodie Gaslam.
  * plot(&lt;lm&gt;) gains a extend.ylim.f argument, in partial response to
    PR#15285; further PR#17784 is fixed thanks to several
    contributors and a patch by Elin Waring.  The Cook's dist
    contours get customizable via cook.col and cook.lty with a
    different default color and their legend is nicer by default and
    customizable via cook.legendChanges.
  * Attempting to subset an object that is not subsettable now
    signals an error of class notSubsettableError. The
    non-subsettable object is contained in the object field of the
    error condition.
  * Subscript-out-of-bounds errors are now signaled as errors of
    class subscriptOutOfBoundsError.
  * Stack-overflow errors are now signaled as errors inheriting from
    class stackOverflowError. See ?stackOverflowError for more
    details.
  * New partly experimental Sys.setLanguage() utility, solving the
    main problem of PR#18055.
  * gettext() and gettextf() get a new option trim = TRUE which when
    set to false allows translations for strings such as "Execution
    halted\n" typical for C code.
  * An experimental implementation of hash tables is now available.
    See ?hashtab for more details.
  * identical() gains a extptr.as.ref argument for requesting that
    external pointer objects be compared as reference objects.
  * reorder() gets an argument decreasing which it passes to sort()
    for level creation; based on the wish and patch by Thomas Soeiro
    in PR#18243.
  * as.vector() gains a data.frame method which returns a simple
    named list, also clearing a long standing 'FIXME' to enable
    as.vector(&lt;data.frame&gt;, mode="list").  This breaks code relying
    on as.vector(&lt;data.frame&gt;) to return the unchanged data frame.
  * legend() is now vectorized for arguments cex, x.intersp, and
    text.width.  The latter can now also be specified as a vector
    (one element for each column of the legend) or as NA for
    computing a proper column wise maximum value of strwidth(legend).
    The argument y.intersp can be specified as a vector with one
    entry for each row of the legend.
    legend() also gains new arguments title.cex and title.font.
    Thanks to Swetlana Herbrandt.
  * Deparsing no longer remaps attribute names dim, dimnames, levels,
    names and tsp to historical S-compatible names (which structure()
    maps back).
  * sample() and sample.int() have additional sanity checks on their
    size and n arguments.
    all.equal.numeric() gains a sanity check on its tolerance
    argument - calling all.equal(a, b, c) for three numeric vectors
    is a surprisingly common error.
    mean(na.rm =), rank(na.last =), barplot(legend.text =),
    boxplot(), contour(drawlabels =), polygon(border =) and
    methods::is(class2 =) have more robust sanity checks on their
    arguments.
    R CMD Rd2pdf (used by R CMD check) has a more robust sanity check
    on the format of \alias{} commands.
  * psigamma(x, deriv) for negative x now also works for deriv = 4
    and 5; their underlying C level dpsifn() is documented in
    'Writing R Extensions'.
  * The HTML help system now uses HTML5 (wish of PR#18149).
  * ks.test() now provides exact p-values also with ties and MC
    p-values in the two-sample (Smirnov) case.  By Torsten Hothorn.
  * ks.test() gains a formula interface, with y ~ 1 for the
    one-sample (Kolmogorov) test and y ~ group for the two-sample
    (Smirnov) test.  Contributed by Torsten Hothorn.
  * The return value from ks.test() now has class c("ks.test",
    "htest") - packages using try() need to take care to use
    inherits() and not == on the class.
  * New functions psmirnov(), qsmirnov() and rsmirnov() in package
    stats implementing the asymptotic and exact distributions of the
    two-sample Smirnov statistic.
  * iconv() now allows sub = "c99" to use C99-style escapes for UTF-8
    inputs which cannot be converted to encoding to.
  * In a forward pipe |&gt; expression it is now possible to use a named
    argument with the placeholder _ in the rhs call to specify where
    the lhs is to be inserted.  The placeholder can only appear once
    on the rhs.
  * The included LAPACK sources have been updated to version 3.10.0,
    except for the four Fortran 77 routines which 3.10.0 has
    re-implemented in Fortran 90 (where the older versions have been
    retained as the R build process does not support Fortran 90).
  * path.expand() and most other uses of tilde expansion now warn if
    a path would be too long if expanded.  (An exception is
    file.exists(), which silently returns false.)
  * trunc(&lt;Date&gt;, *) now supports units = "months" or "years" for
    consistency with the POSIXt method, thanks to Dirk Eddelbuettel's
    proposal in PR#18099.
  * list2DF() now checks that its arguments are of the same length,
    rather than use recycling.
  * The HTML help system has several new features: LaTeX-like math
    can be typeset using either KaTeX or MathJax, usage and example
    code is highlighted using Prism, and for dynamic help the output
    of examples and demos can be shown within the browser if the
    knitr package is installed. These features can be disabled by
    setting the environment variable _R_HELP_ENABLE_ENHANCED_HTML_ to
    a false value.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 15
    and so packages that provide graphics devices should be
    reinstalled.
  * The grid package now allows the user to specify a "vector" of
    pattern fills.  The fill argument to gpar() accepts a list of
    gradients and/or patterns and the functions linearGradient(),
    radialGradient(), and pattern() have a new group argument.
    Points grobs (data symbols) can now also have a pattern fill.
    The grobCoords() function now returns a more informative and
    complex result.
  * The grid package has new functions for drawing isolated groups:
    grid.group(), grid.define(), and grid.use().  These functions add
    compositing operators and affine transformations to R's graphics
    capabilities.
    The grid package also has new functions for stroking and filling
    paths: grid.stroke(), grid.fill(), and grid.fillStroke().
    A new function as.path() allows the user to specify the fill rule
    for a path that is to be used for clipping, stroking, or filling;
    available options are "winding" and "evenodd".  A new function
    as.mask() allows the user to specify the type of a mask;
    available options are "alpha" and "luminance".
    These new features are only supported so far (at most) on the
    Cairo-based graphics devices and on the pdf() device.
  * dev.capabilities() reports on device support for the new
    features.
  * par() now warns about unnamed non-character arguments to prevent
    misuse such as {usr &lt;- par("usr"); par(usr)}.
  INSTALLATION:
  * Facilities for accessing ftp:// sites are no longer tested
    (except _pro tem_ for curlGetHeaders()) as modern browsers have
    removed support.
  * R can now be built with DEFS = -DSTRICT_R_HEADERS .
  PACKAGE INSTALLATION:
  * R CMD INSTALL no longer tangles vignettes. This completes an R
    CMD build change in R 3.0.0 and affects packages built before R
    3.0.2. Such packages should be re-made with R CMD build to have
    the tangled R code of vignettes shipped with the tarball.
  * USE_FC_LEN_T will become the default: this uses the correct
    prototypes for Fortran BLAS/LAPACK routines called from C/C++,
    and requires adjustment of most such calls - see 'Writing R
    Extensions' SS6.6.2.  (This has been supported since R 3.6.2.)
  * Package installation speed for packages installed with
    keep.source has been improved. This resolve the issue reported by
    Ofek Shilon in PR#18236.
  UTILITIES:
  * R CMD check can optionally report files/directories left behind
    in home, /tmp (even though TMPDIR is set) and other directories.
    See the "R Internals" manual for details.
  * R CMD check now reports byte-compilation errors during
    installation.  These are not usually fatal but may result in
    parts of the package not being byte-compiled.
  * _R_CHECK_DEPENDS_ONLY_ can be applied selectively to examples,
    tests and/or vignettes in R CMD check: see the "R Internals"
    manual.
  * _R_CHECK_SRC_MINUS_W_IMPLICIT_ now defaults to true: recent
    versions of Apple clang on macOS have made implicit function
    declarations in C into a compilation error.
  * R CMD check --as-cran makes use of the environment variable
    AUTORECONF.  See the "R Internals" manual SS8 for further details.
  * R CMD check --use-valgrind also uses valgrind when re-building
    vignettes as some non-Sweave vignettes unhelpfully comment out
    all their code when R CMD check runs vignettes.
  * Errors in re-building vignettes (unless there are LaTeX errors)
    are reported by R CMD check as ERROR rather than WARNING when
    running vignettes has been skipped (as it frequently is in CRAN
    checks and by --as-cran).
  * R CMD Rd2pdf gains a --quiet option that is used by R CMD build
    when building the PDF package manual.
  * R CMD Rd2pdf now always runs LaTeX in batch mode, consistent with
    Texinfo &gt;= 6.7. The --batch option is ignored.
  * R CMD build and R CMD check now include the Rd file name and line
    numbers in the error message of an \Sexpr evaluation failure.
  * For packages using the \doi Rd macro (now an install-time \Sexpr)
    but no other dynamic Rd content, R CMD build now produces a
    smaller tarball and is considerably faster - skipping temporary
    package installation.
  C-LEVEL FACILITIES:
  * The non-API header R_ext/R-ftp-http.h is no longer provided, as
    the entry points it covered are now all defunct.
  * A number of non-API declarations and macro definitions have been
    moved from the installed header Rinternals.h to the internal
    header Defn.h. Packages that only use entry points and
    definitions documented to be part of the API as specified in
    'Writing R Extensions' SS6 should not be affected.
  * The macro USE_RINTERNALS no longer has any effect when compiling
    package code.  Packages which also use R_NO_REMAP will need to
    ensure that the remapped names are used for calls to API
    functions that were formerly also made available as macros.
  * The deprecated legacy S-compatibility macros PROBLEM, MESSAGE,
    ERROR, WARN, WARNING, RECOVER, ... are no longer defined in
    R_exts/RS.h (included by R.h).  Replace these by calls to
    Rf_error and Rf_warning (defined in header R_ext/Error.h included
    by R.h).
    Header R_ext/RS.h no longer includes R_ext/Error.h.
  * Header R_ext/Constants.h (included by R.h) when included from C++
    now includes the C++ header cfloat rather than the C header
    float.h (now possible as C++11 is required).
  * The legacy S-compatibility macros DOUBLE_* in R_ext/Constants.h
    (included by R.h) are deprecated.
  * The deprecated S-compatibility macros SINGLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * R_Calloc, R_Free and R_Realloc are preferred to their unprefixed
    forms and error messages now use the prefix. These forms were
    introduced in R 3.4.0 and are available even when
    STRICT_R_HEADERS is defined.
  * rmultinom has been documented in 'Writing R Extensions' SS6 so is
    now part of the R API.
  * Similarly, Rtanpi, called from R level tanpi() is now part of the
    R API.
  * The long-deprecated, undocumented and non-API entry point call_R
    is no longer declared in R_ext/RS.h (included by R.h).
  * The header S.h which has been unsupported since Jan 2016 has been
    removed.  Use R.h instead.
  DEPRECATED AND DEFUNCT:
  * The (non-default and deprecated) method = "internal" for
    download.file() and url() no longer supports http:// nor ftp://
    URIs.  (It is used only for file:// URIs.)
    On Windows, download.file(method = "wininet") no longer supports
    ftp:// URIs.  (It is no longer the default method, which is
    "libcurl" and does.)
    On Windows, the deprecated method = "wininet" now gives a warning
    for http:// and https:// URIs for both download.file() and url().
    (It is no longer the default method.)
  * On Windows, the command-line option --max-mem-size and
    environment variable R_MAX_MEM_SIZE are defunct.  The memory
    allocation limit was important for 32-bit builds, but these are
    no longer supported.
  * default.stringsAsFactors() is now formally deprecated, where that
    was only mentioned on its regular help page, previously.  So it
    now gives a warning if called.
  * unix.time() is defunct now; it had been deprecated since R 3.4.0.
  BUG FIXES:
  * Setting digits = 0 in format(), print.default() (and hence
    typically print()) or options() is again invalid.  Its behaviour
    was platform-dependent, and it is unclear what "zero significant
    digits" should mean (PR#18098).
  * Messages from C code in the cairo section of package grDevices
    are now also offered for translation, thanks to Michael Chirico's
    PR#18123.
  * mean(x) with finite x now is finite also without "long.double"
    capability.
  * R CMD Rd2pdf no longer leaves an empty build directory behind
    when it aborts due to an already existing output file.  (Thanks
    to Sebastian Meyer's PR#18141.)
  * density(x, weights = w, na.rm = TRUE) when anyNA(x) is true, now
    removes weights "in parallel" to x, fixing PR#18151, reported by
    Matthias Gondan.  Additionally, it gets a subdensity option.
  * Conversion of \Sexpr[]{&lt;expR&gt;} to LaTeX or HTML no longer
    produces long blocks of empty lines when &lt;expR&gt; itself contains
    several lines all producing empty output.  Thanks to a report and
    patch by Ivan Krylov posted to R-devel.
  * R CMD build no longer fails if a package vignette uses child
    documents and inst/doc exists.  (Thanks to Sebastian Meyer's
    PR#18156.)
  * When an R documentation ('help' source) file man/foo.Rd in a
    package has \donttest{..} examples with a syntax error, it is now
    signalled as ERROR and with correct line numbers relating to the
  * -Ex.R file, thanks to Duncan Murdoch and Sebastian Meyer's
    reports and patch proposals in PR#17501.
  * Improved determination of the correct translation domain in
    non-base packages, addressing the combination of PR#18092 and
    PR#17998 (#c6) with reports and _augmented_ patch #2904 by
    Suharto Anggono.
    Note that "R-base" is no longer the default domain e.g., for
    top-level calls to gettext(); rather translation needs explicit
    domain = * specification in such cases.
  * identical(attrib.as.set=FALSE) now works correctly with data
    frames with default row names (Thanks to Charlie Gao's PR#18179).
  * txtProgressBar() now enforces a non-zero width for argument char,
    without which no progress can be visible.
  * dimnames(table(d)) is more consistent in the case where d is a
    list with a single component, thanks to Thomas Soeiro's report to
    R-devel.
    Further, table(d1, d2) now gives an error when d1 and d2 are data
    frames as suggested by Thomas in PR#18224.
  * Fix for drawing semi-transparent lines and fills on the native
    Windows graphics device (PR#18219 and PR#16694).  Thanks to Nick
    Ray for helpful diagnosis on Bugzilla.
  * The deparser now wraps sub-expressions such as if(A) ..  with
    parentheses when needed; thanks to Duncan Murdoch's PR#18232 and
    Lionel Henry's patches there.
  * remove.packages() no longer tries to uninstall Priority: base
    packages, thanks to a report and suggestions by Colin Fay in
    PR#18227.
  * win.metafile() now has xpinch and ypinch arguments so that the
    user can override Windows' (potentially wrong) guess at device
    dimensions.
  * x[i] and x[[i]] for non-integer i should now behave in all cases
    as always documented: the index used is equivalent to
    as.integer(i) unless that would overflow where trunc(i) is used
    instead; thanks to Suharto Anggono's report and patch proposals
    in PR#17977.
  * asOneSidedFormula() now associates the resulting formula with the
    global environment rather than the evaluation environment created
    for the call.
  * &lt;bibentry&gt;$name now matches the field name case-insensitively,
    consistent with bibentry() creation and the replacement method.
  * cbind() failed to detect some length mismatches with a mixture of
    time-series and non-time-series inputs.
  * The default LaTeX style file Sweave.sty used by the RweaveLatex
    driver no longer loads the obsolete ae package; thanks to a
    report by Thomas Soeiro in PR#18271.  Furthermore, it now skips
    \usepackage[T1]{fontenc} for engines other than pdfTeX (if
    detected) or if the new [nofontenc] option is used.
  * smooth.spline() now stores its logical cv argument more safely,
    fixing a rare bug when printing, and also stores n.
  * smooth.spline(x,y,*) now computes the cv.crit statistic
    correctly, also when is.unsorted(x), fixing PR#18294.
  * The data.frame method of rbind() now warns when binding
    not-wholly-recycling vectors, by analogy to the default method
    (for matrices).
  * setAs() finds the correct class for name to when multiple
    packages define a class with that name. Thanks to Gabor Csardi
    for the report.
  * Fix for detaching a package when two classes of the same name are
    present in method signatures for the same generic. Thanks to
    Gabor Csardi for the report.
  * match.arg("", c("", "a", "B")) gives a better error message, in
    part from PR#17959, thanks to Elin Waring.
  * R CMD Sweave --clean no longer removes pre-existing files or
    subdirectories (PR#18242).
  * The quartz() device no longer splits polylines into subpaths.
    That has caused narrowly-spaced lines with many points to always
    look solid even when dashed line type was used due to dash phase
    restarts.
  * Deparsing constructs such as quote(1 + `!`(2) + 3) works again as
    before R 3.5.0, thanks to the report and patch in PR#18284 by
    Suharto Anggono.
  * as.list(f) for a factor f now keeps names(f), fixing PR#18309.
  * qbeta(.001, .9, .009) and analogous qf() calls now return a
    correct value instead of NaN or wrongly 1, all with a warning;
    thanks to the report by Ludger Goeminne in PR#18302.
  * plot.lm() failed to produce the plot of residuals vs.  factor
    levels (i.e., which=5 when leverages are constant) for models
    with character predictors (PR#17840).
  * interaction.plot(..., xtick = TRUE) misplaced the x-axis line
    (PR#18305).
  * Not strictly fixing a bug, format()ing and print()ing of
    non-finite Date and POSIXt values NaN and +/-Inf no longer show
    as NA but the respective string, e.g., Inf, for consistency with
    numeric vector's behaviour, fulfilling the wish of PR#18308.
  * R CMD check no longer runs test scripts generated from
    corresponding .Rin files twice and now signals an ERROR if
    processing an .Rin script fails.
  * tools::Rd2txt() used for plain-text help pages now renders \hrefs
    (if tools::Rd2txt_options(showURLs = TRUE)) and \urls with
    percent-encoding and standards-compliant delimiting style (angle
    brackets and no URL: prefix).  \email is now rendered with a
    mailto: prefix.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1655985600">- CHANGES IN R 4.2.1:
  NEW FEATURES:
  * New function utils::findCRANmirror() to find out if a CRAN mirror
    has been selected, otherwise fallback to the main site.  This
    behaves in the same way as tools::CRAN_package_db() and is
    intended for packages wishing to access CRAN for purposes other
    than installing packages.
    The need for this was shown by a day when the main CRAN website
    was offline and a dozen or so packages which had its URL
    hardcoded failed their checks.
  INSTALLATION on a UNIX-ALIKE:
  * The libraries searched for by --with-blas (without a value) now
    include BLIS (after OpenBLAS but before ATLAS).  And on macOS,
    the Accelerate framework (after ATLAS).  (This is patterned after
    the AX_BLAS macro from the Autoconf Archive.)
  * The included LAPACK sources have been updated to 3.10.1.
  UTILITIES:
  * The (full path to) the command tidy to be used for HTML
    validation can be set by environment variable R_TIDYCMD.
  * Setting environment variable _R_CHECK_RD_VALIDATE_RD2HTML_ to a
    false value will override R CMD check --as-cran and turn off HTML
    validation.  This provides a way to circumvent a problematic
    tidy.
    The 2006 version that ships with macOS is always skipped.
  C-LEVEL FACILITIES:
  * The undocumented legacy declarations of Sint, Sfloat, SINT_MAX
    and SINT_MIN in header R.h are deprecated.
  BUG FIXES:
  * fisher.test(d) no longer segfaults for "large" d; fixing PR#18336
    by preventing/detecting an integer overflow reliably.
  * tar(., files=*) now produces correctly the warning about invalid
    uid or gid of files, fixing PR#18344, reported by Martin Morgan.
  * tk_choose.files() with multi = FALSE misbehaved on paths
    containing spaces (PR#18334) (regression introduced in R 4.0.0).
  * sort(x, partial = ind, *) now works correctly notably for the
    non-default na.last = FALSE or TRUE, fixing PR#18335 reported by
    James Edwards.
  * Environment variable _R_CHECK_XREFS_REPOSITORIES_ is only used
    for checking .Rd cross-references in R CMD check (as documented)
    and not for other uses looking for a CRAN mirror.
  * The search for a CRAN mirror when checking packages now uses
    getOption("repos") if that specifies a CRAN mirror, even when it
    does not also specify all three Bioconductor repositories (as was
    previously required).
  * The HTML code generated by tools::Rd2HTML() has been improved to
    pass tidy 5.8.0.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1667217600">- CHANGES IN R 4.2.2:
  NEW FEATURES:
  * tools::Rdiff(useDiff = TRUE) checks for the presence of an
    external diff command and switches to useDiff = FALSE if none is
    found.  This allows R CMD Rdiff to always work.
  * On Windows, environment variable R_LIBCURL_SSL_REVOKE_BEST_EFFORT
    can be used to switch to only 'best-effort' SSL certificate
    revocation checks with the default "libcurl" download method.
    This reduces security, but may be needed for downloads to work
    with MITM proxies (PR#18379).
  * (macOS) The run-time check for libraries from XQuartz for X11 and
    Tcl/Tk no longer uses otool from the Apple Developer Tools
    (PR#18400).
  * The LaTeX style for producing the PDF manuals, Rd.sty, now loads
    the standard amsmath, amsfonts and amssymb packages for greater
    coverage of math commands in the Rd \eqn and \deqn macros.  The
    \mathscr LaTeX command is also provided (via the mathrsfs
    package, if available, or the amsfonts bundle otherwise),
    fulfilling the wish of PR#18398.
  * (Windows) The default format of readClipboard() and
    writeClipboard() has been changed to 13 (CF_UNICODETEXT).
  INSTALLATION on a UNIX-ALIKE:
  * The PDF manuals (if built) can be compacted by the new target
    make compact-pdf (at the top level or in directory doc/manual).
  * There is now configure support for LLVM clang 15 on Linux, which
    defaults to position-independent (PIE) executables whereas
    gfortran does not.
  * Many small changes to ease compilation (and suppress warnings)
    with LLVM clang 15.
  BUG FIXES:
  * Rscript -e would fail if stdin were closed (Reported by Henrik
    Bengtsson.)
  * qt(*, log.p=TRUE) in outer tails no longer produces NaN in its
    final steps, thus fixing PR#18360.
  * tools::Rd2latex() now escapes hashes and ampersands when writing
    URLs, fixing LaTeX errors with such URLs in \tabular.
  * When isGeneric(f, fdef=*) is used with mismatching names, the
    warning is better understandable; reported (with fix) in PR#18370
    by Gabe Becker.
  * poly(x, n) now works again (and is now documented) when x is a
    "Date" or "POSIXct" object, or of another class while fulfilling
    mode(x) == "numeric".  This also enables poly(x, *, raw=TRUE) for
    such variables.  Reported by Michael Chirico to R-devel.
  * write.table(), write.csv() and write.csv2() restore their
    numerical precision (internal equivalent of digits = 15) after an
    interrupt (PR#18384).
  * One can now read also byte FF from a clipboard connection
    (PR#18385).
  * source("") and source(character()) now give more helpful error
    messages.
  * R CMD check --as-cran set _R_CHECK_TIMINGS_ too late to have the
    intended effect.
  * as.POSIXlt(x) now also works with very large dates x, fixing
    PR#18401 reported by Hannes M"uhleisen.
  * Files can now be extracted even from very large zip archives
    (PR#18390, thanks to Martin Jakt).
  * Non-finite objects of class "POSIXlt" are now correctly coerced
    to classes "Date" and "POSIXct"; following up on the extension to
    format() them correctly.
  * Added methods for is.finite(), is.infinite() and is.nan() for
    "POSIXlt" date-time objects.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1678881600">- CHANGES IN R 4.2.3:
  C-LEVEL FACILITIES:
  * The definition of DL_FUNC in R_ext/Rdynload.h has been changed to
    be fully C-compliant.  This means that functions loaded _via_ for
    example R_GetCCallable need to be cast to an appropriate type if
    they have any arguments.
  * .Machine has a new element sizeof.time_t to identify old systems
    with a 32-bit type and hence a limited range of date-times (and
    limited support for dates millions of years from present).
  PACKAGE INSTALLATION:
  * (Windows) The default C++ standard had accidentally been left at
    C++11 when it was changed to C++14 on Unix.
  BUG FIXES:
  * As "POSIXlt" objects may be "partially filled" and their list
    components meant to be recycled, length() now is the length of
    the longest component.
  * as.POSIXlt.Date() could underflow for dates in the far past (more
    than half a million years BCE).
  * as.Date.POSIXlt(x) would return "1970-01-01" instead of NA in R
    4.2.2, e.g., for
    x &lt;- as.POSIXlt(c("2019-01-30","2001-1-1"))
    x$mon &lt;- c(0L, NA); as.Date(x)
  * R CMD check failed to apply enabled _R_CHECK_SUGGESTS_ONLY_ to
    examples and vignettes (regression in R 4.2.0).
  * R CMD check did not re-build vignettes in separate processes by
    default (regression in R 4.2.0).
  * Running examples from HTML documentation now restores previous
    knitr settings and options (PR#18420).
  * Quartz: fonts are now located using Core Graphics API instead of
    deprecated ATS which is no longer supported in the macOS 13 SDK
    (PR#18426).  This also addresses an issue where the currently
    used font in the Quartz device context was not correctly
    retained.
  * (Windows) Math symbols in text drawing functions are again
    rendered correctly (PR#18440).  This fixes a regression in R
    4.2.1 caused by a fix in PR#18382 which uncovered an issue in
    GraphApp due to which the symbol charset was not used with TT
    Symbol font face.
  * (Windows) Installing a package with a src/Makefile.{win,ucrt}
    file includes ~/.R/Makevars.win64 in the search for user
    makevars, as documented in "R Installation and Administration"
    and done for packages with a src/Makevars.{win,ucrt} file.
  * format(&lt;POSIXlt_w/_unbalanced_sec&gt;, "....%OS&lt;n&gt;") with n &gt; 0 no
    longer accidentally uses the unbalanced seconds, thanks to
    Suharto Anggono's report (including patch) in PR#18448.
  * solve.default(a, b) works around issues with some versions of
    LAPACK when a contains NA or NaN values.
  * When UseMethod() cannot dispatch, it no longer segfaults
    producing the error message in case of a long class(), thanks to
    Joris Vankerschaver's report (including patch) in PR#18447.
  * When example(foo, ..) produces graphics on an interactive device
    it needs to open itself, it now leaves devAskNewPage() unchanged
    even when it was FALSE, thus fixing a 14 years old '&lt;FIXME&gt;'.
  * packageDescription() again catches errors from encoding
    conversions. This also fixes broken packageVersion() in C locale
    on systems where iconv does not support transliteration.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1681128000">- add patch to build with libcurl &gt;= 8</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1682078400">- CHANGES IN R 4.3.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Calling &amp;&amp; or || with LHS or (if evaluated) RHS of length greater
    than one is now always an error, with a report of the form
    'length = 4' in coercion to 'logical(1)'
    Environment variable _R_CHECK_LENGTH_1_LOGIC2_ no longer has any
    effect.
  NEW FEATURES:
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.10.1.  (This caused some platform-dependent
    changes to package check output.)  And then to the sources from
    LAPACK version 3.11.0 (with changes only to double complex
    subroutines).
  * The included LAPACK sources have been updated to include the four
    Fortran 90 routines rather than their Fortran 77 predecessors.
    This may give some different signs in SVDs or
    eigendecompositions..  (This completes the transition to LAPACK
    3.10.x begun in R 4.2.0.)
  * The LAPACK sources have been updated to version 3.11.0.  (No new
    subroutines have been added, so this almost entirely bug fixes:
    Those fixes do affect some computations with NaNs, including R's
    NA.)
  * The parser now signals _classed_ errors, notably in case of the
    pipe operator |&gt;.  The error object and message now give line and
    column numbers, mostly as proposed and provided by Duncan Murdoch
    in PR#18328.
  * toeplitz() is now generalized for asymmetric cases, with a
    toeplitz2() variant.
  * xy.coords() and xyz.coords() and consequently, e.g., plot(x,y,
    log = "y") now signal a _classed_ warning about negative values
    of y (where log(.) is NA).  Such a warning can be specifically
    suppressed or caught otherwise.
  * Regular expression functions now check more thoroughly whether
    their inputs are valid strings (in their encoding, e.g. in
    UTF-8).
  * The performance of grep(), sub(), gsub() and strsplit() has been
    improved, particularly with perl = TRUE and fixed = TRUE.  Use of
    useBytes = TRUE for performance reasons should no longer be
    needed and is discouraged: it may lead to incorrect results.
  * apropos() gains an argument dot_internals which is used by the
    completion (help(rcompgen)) engine to also see base internals
    such as .POSIXct().
  * Support in tools::Rdiff() for comparing uncompressed PDF files is
    further reduced - see its help page.
  * qqplot(x, y, ...) gains conf.level and conf.args arguments for
    computing and plotting a confidence band for the treatment
    function transforming the distribution of x into the distribution
    of y (Switzer, 1976, _Biometrika_). Contributed by Torsten
    Hothorn.
  * Performance of package_dependencies() has been improved for cases
    when the number of dependencies is large.
  * Strings newly created by gsub(), sub() and strsplit(), when any
    of the inputs is marked as "bytes", are also marked as "bytes".
    This reduces the risk of creating invalid strings and accidental
    substitution of bytes deemed invalid.
  * Support for readLines(encoding = "bytes") has been added to allow
    processing special text files byte-by-byte, without creating
    invalid strings.
  * iconv(from = "") now takes into account any declared encoding of
    the input elements and uses it in preference to the native
    encoding.  This reduces the risk of accidental creation of
    invalid strings, particularly when different elements of the
    input have different encoding (including "bytes").
  * Package repositories in getOption("repos") are now initialized
    from the repositories file when utils is loaded (if not already
    set, e.g., in .Rprofile).  (From a report and patch proposal by
    Gabriel Becker in PR#18405.)
  * compactPDF() gets a verbose option.
  * type.convert() and hence read.table() get new option tryLogical =
    TRUE with back compatible default.  When set to false, converts
    "F" or "T" columns to character.
  * Added new unit prefixes "R" and "Q" for abbreviating
    (unrealistically large) sizes beyond 10^{27} in standard = "SI",
    thanks to Henrik Bengtsson's PR#18435.
  * as.data.frame()'s default method now also works fine with atomic
    objects inheriting from classes such as "roman", "octmode" and
    "hexmode", such fulfilling the wish of PR#18421, by Benjamin
    Feakins.
  * The as.data.frame.vector() utility now errors for wrong-length
    row.names.  It warned for almost six years, with "Will be an
    error!".
  * sessionInfo() now also contains La_version() and reports codepage
    and timezone when relevant, in both print() and toLatex() methods
    which also get new option tzone for displaying timezone
    information when locale = FALSE.
  * New function R_compiled_by() reports the C and Fortran compilers
    used to build R, if known.
  * predict(&lt;lm&gt;, newdata = *) no longer unnecessarily creates an
    offset of all 0s.
  * solve() for complex inputs now uses argument tol and by default
    checks for 'computational singularity' (as it long has done for
    numeric inputs).
  * predict(&lt;rank-deficient lm&gt;, newdata=*) now obeys a new argument
    rankdeficient, with new default "warnif", warning only if there
    are non-estimable cases in newdata.  Other options include
    rankdeficient = "NA", predicting NA for non-estimable newdata
    cases.  This addresses PR#15072 by Russ Lenth and is based on his
    original proposal and discussions in PR#16158 also by David Firth
    and Elin Waring.  Still somewhat experimental.
  * Rgui console implementation now works better with the NVDA screen
    reader when the full blinking cursor is selected.  The underlying
    improvements in cursor handling may help also other screen
    readers on Windows.
  * The drop-field control in GraphApp can now be left with the TAB
    key and all controls can be navigated in the reverse order using
    the Shift+TAB key, improving accessibility of the Rgui
    configuration editor.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now fully accurate
    (instead of to "only" minimally five digits).
  * demo(error.catching) now also shows off withWarnings() and
    tryCatchWEMs().
  * As an experimental feature the placeholder _ can now also be used
    in the rhs of a forward pipe |&gt; expression as the first argument
    in an extraction call, such as _$coef. More generally, it can be
    used as the head of a chain of extractions, such as _$coef[[2]].
  * Spaces in the environment variable used to choose the R session's
    temporary directory (TMPDIR, TMP and TEMP are tried in turn) are
    now fatal.  (On Windows the 'short path' version of the path is
    tried and used if that does not contain a space.)
  * all.equal.numeric() gets a new optional switch giveErr to return
    the numeric error as attribute.  Relatedly,
    stopifnot(all.equal&lt;some&gt;(a, b, ..)) is as "smart" now, as
    stopifnot(all.equal(....)) has been already, thus allowing
    customized all.equal&lt;Some&gt;() wrappers.
  * R on Windows is now able to work with path names longer than 260
    characters when these are enabled in the system (requires at
    least Windows 10 version 1607).  Packages should be updated to
    work with long paths as well, instead of assuming PATH_MAX to be
    the maximum length.  Custom front-ends and applications embedding
    R need to update their manifests if they wish to allow this
    feature.  See
    &lt;https://blog.r-project.org/2023/03/07/path-length-limit-on-windows&gt;
    for more information.
  * 'Object not found' and 'Missing argument' errors now give a more
    accurate error context. Patch provided by Lionel Henry in
    PR#18241.
  * The @ operator is now an S3 generic. Based on contributions by
    Tomasz Kalinowski in PR#18482.
  * New generic chooseOpsMethod() provides a mechanism for objects to
    resolve cases where two suitable methods are found for an Ops
    Group Generic. This supports experimenting with alternative
    object systems. Based on contributions by Tomasz Kalinowski in
    PR#18484.
  * inherits(x, what) now accepts values other than a simple
    character vector for argument what. A new generic, nameOfClass(),
    is called to resolve the class name from what. This supports
    experimenting with alternative object systems. Based on
    contributions by Tomasz Kalinowski in PR#18485.
  * Detection of BLAS/LAPACK in use (sessionInfo()) with FlexiBLAS
    now reports the current backend.
  * The "data.frame" method for subset() now warns about extraneous
    arguments, typically catching the use of = instead of == in the
    subset expression.
  * Calling a:b when numeric a or b is longer than one may now be
    made into an error by setting environment variable
    _R_CHECK_LENGTH_COLON_ to a true value, along the proposal in
    PR#18419 by Henrik Bengtsson.
  * density(x, weights = *) now warns if automatic bandwidth
    selection happens without using weights; new optional warnWbw may
    suppress the warning.  Prompted by Christoph Dalitz' PR#18490 and
    its discussants.
  * rm(list = *) is faster and more readable thanks to Kevin Ushey's
    PR#18492.
  * The plot.lm() function no longer produces a normal Q-Q plot for
    GLMs. Instead it plots a half-normal Q-Q plot of the absolute
    value of the standardized deviance residuals.
  * The print() method for class "summary.glm" no longer shows
    summary statistics for the deviance residuals by default.  Its
    optional argument show.residuals can be used to show them if
    required.
  * The tapply() function now accepts a data frame as its X argument,
    and allows INDEX to be a formula in that case. by.data.frame()
    similarly allows INDICES to be a formula.
  * The performance of df[j] &lt;- value (including for missing j) and
    write.table(df) has been improved for data frames df with a large
    number of columns.  (Thanks to Gabriel Becker's PR#18500,
    PR#18503 and discussants, prompted by a report from Toby Dylan
    Hocking on the R-devel mailing list.)
  * The matrix multiply operator %*% is now an S3 generic, belonging
    to new group generic matrixOps.  From Tomasz Kalinowski's
    contribution in PR#18483.
  * New function array2DF() to convert arrays to data frames,
    particularly useful for the list arrays created by tapply().
  DATES and TIMES:
  * On platforms where (non-UTC) datetimes before 1902 (or before
    1900 as with system functions on recent macOS) are guessed by
    extrapolating time zones from 1902-2037, there is a warning at
    the first use of extrapolation in a session.  (As all time zones
    post 2037 are extrapolation, we do not warn on those.)
  * (Platforms using --with-internal-tzone, including Windows and by
    default macOS). How years are printed in dates or date-times can
    be controlled by environment variable R_PAD_YEARS_BY_ZERO.  The
    default remains to pad to 4 digits by zeroes, but setting value
    no gives no padding (as used by default by glibc).
  * strftime() tries harder to determine the offset for the "%z"
    format, and succeeds on the mainstream R platforms.
  * strftime() has a limit of 2048 bytes on the string produced -
    attempting to exceed this is an error.  (Previously it silently
    truncated at 255 bytes.)
  * sessionInfo() records (and by default prints) the system time
    zone as part of the locale information.  Also, the source
    (system/internal) of the date-time conversion and printing
    functions.
  * Objects of class "POSIXlt" created in this version of R always
    have 11 components: component zone is always set, and component
    gmtoff is set for times in UTC and usually set on the (almost
    all) platforms which have C-level support, otherwise is NA.
  * There are comprehensive validity checks on the structure of
    objects of class "POSIXlt" when converting (including formatting
    and printing).  (This avoids mis-conversions of hand-crafted
    objects.)
  * There is some support for using the native date-time routines on
    macOS: this is only viable on recent versions (e.g. 12.6 and 13)
    and does get wrong some historical changes (before 1900, during
    WWII).  Use of --with-internal-tzone remains the default.
  * as.POSIXct(&lt;numeric&gt;) and as.POSIXlt(.) (without specifying
    origin) now work.  So does as.Date(&lt;numeric&gt;).
  * as.Date.POSIXct(., tz) now treats several tz values, notably
    "GMT" as equivalent to "UTC", proposed and improved by Michael
    Chirico and Joshua Ulrich in PR#17674.
  * Experimental balancePOSIXlt() utility allows using "ragged" and
    or out-of-range "POSIXlt" objects more correctly, e.g., in
    subsetting and subassignments.  Such objects are now documented.
    More experimentally, a "POSIXlt" object may have an attribute
    "balanced" indicating if it is known to be filled or fully
    balanced.
  * Functions axis.Date() and axis.POSIXct() are rewritten to gain
    better default tick locations and better default formats by using
    prettyDate(). Thanks to Swetlana Herbrandt.
  * The mapping of Windows' names for time zones to IANA's 'Olson'
    names has been updated.  When ICU is available (it is by
    default), it is used to get a mapping for the current region set
    in Windows.  This can be overridden by setting environment
    variable TZ to the desired Olson name - see OlsonNames() for
    those currently available.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 16
    and so packages that provide graphics devices should be
    reinstalled.
  * The grDevices and grid packages have new functions for rendering
    typeset glyphs, primarily: grDevices::glyphInfo() and
    grid::grid.glyph().
    Rendering of typeset glyphs is only supported so far on the
    Cairo-based graphics devices and on the pdf() and quartz()
    devices.
  * The defined behaviour for "clear" and "source" compositing
    operators (via grid::grid.group()) has been changed (to align
    better with simple interpretation of original Porter-Duff
    definitions).
  * Support for gradients, patterns, clipping paths, masks, groups,
    compositing operators, and affine transformations has been added
    to the quartz() device.
  INSTALLATION on a UNIX-ALIKE:
  * A system installation of generic LAPACK 3.10.0 or later will be
    preferred to the version in the R sources.
    configure option --with-lapack=no (equivalently --without-lapack)
    forces compilation of the internal LAPACK sources.
    If --with-lapack is not specified, a system liblapack is looked
    for and used if it reports version 3.10.0 or later and does not
    contain BLAS routines.
    Packages using LAPACK will need to be reinstalled if this changes
    to using an external library.
  * On aarch64 Linux platforms using GCC, configure now defaults to
  - fPIC (instead of -fpic), as desired in PR#18326.
  * configure now checks conversion of datetimes between POSIXlt and
    POSIXct around year 2020.  Failure (which has been seen on
    platforms missing tzdata) is fatal.
  * If configure option --with-valgrind-instrumentation is given
    value 1 or 2, option --with-system-valgrind-headers is now the
    default and ignored (with a warning).  It is highly recommended
    that the system headers are installed alongside valgrind: they
    are part of its packaging on some Linux distributions and
    packaged separately (e.g. in the valgrind-devel RPM) on others.
    configure will give a warning if they are not found.
    The system headers will be required in a future release of R to
    build with valgrind instrumentation.
  * libcurl 8.x is now accepted by configure: despite a change in
    major version number it changes neither API nor ABI.
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools43, an update of the Rtools42 toolchain.  It is
    based on gcc 12 and newer versions of MinGW-W64, binutils and
    libraries.  At this time R-devel can still be built using
    Rtools42 without changes, but when R-devel is installed via the
    installer, it will by default look for Rtools43.
  * Old make targets rsync-extsoft and 32-bit ones that are no longer
    needed have been removed.
  * Default builds (including for packages) no longer select C99.
    Thus the C standard used is the default for the compiler, which
    for the toolchain in Rtools43 is C17.  (This is consistent with
    Unix builds.)
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++17 where
    available (which it is on all currently checked platforms): if
    not C++14 or C++11 is used if available otherwise C++ is not
    supported.
  * USE_FC_LEN_T is the default: this uses the correct
    (compiler-dependent) prototypes for Fortran BLAS/LAPACK routines
    called from C/C++, and requires adjustment of many such calls -
    see 'Writing R Extensions' SS6.6.1.
  * There is initial support for C++23 as several compilers are now
    supporting -std=c++23 or -std=c++2b or similar.  As for C++20,
    there no additional configure checks for C++23 features beyond a
    check that the compiler reports a __cplusplus value greater than
    that in the C++20 standard.  C++ feature tests should be used.
  * There is support for a package to indicate the version of the C
    standard which should be used to compile it, and for the
    installing user to specify this.  In most cases R defaults to the
    C compiler's default standard which is C17 (a `bug-fix' of C11) -
    earlier versions of R or compilers may have defaulted to C99.
    Current options are:
    USE_C17 Use a standard that is at most C17.  The intention is to
    allow legacy packages to still be installed when later C
    standards become the default, including packages using new
    keywords as identifiers or with K&amp;R-style function
    declarations.  This will use C17 if available, falling back
    to C11.
    USE_C90 Use the C90 (aka C89) standard.  (As that standard did
    not require compilers to identify that version, all we can
    verify is that the compiler does not claim to be using a
    later standard.  It may accept C99 features - for example
    clang accepts // to make comments.)
    USE_C99 Use the C99 standard. This should be rarely needed - it
    avoids the few new features of C11/C17 which can be useful if
    a package assumes them if C17 is specified and they are not
    implemented.
    USE_C23 Use C23 (or in future, later).  Compiler/library support
    for C23 is still being implemented, but LLVM clang from
    15.0.0 and the upcoming GCC 13 have quite extensive support.
    These can be specified as part of the SystemRequirements field in
    the package's DESCRIPTION file or _via_ options --use-C17 and so
    on of R CMD INSTALL and R CMD SHLIB.
    For further details see "Writing R Extensions" SS1.2.5.
  * (Windows) A src/Makefile.ucrt or src/Makefile.win file is now
    included after R_HOME/etcR_ARCH/Makeconf and so no longer needs
    to include that file itself.  Installation of a package with such
    a file now uses a site Makevars file in the same way as a package
    with a src/Makevars.win file would.
  * configure is now passed crucial variables such as CC and CFLAGS
    in its environment, as many packages were not setting them (as
    documented in 'Writing R Extensions' SS1.2).
    This has most effect where configure is used to compile parts of
    the package - most often by cmake or libtool which obfuscate the
    actual compile commands used.
    Also used for configure.win and configure.ucrt on Windows.
  FORTRAN FLAGS:
  * The flag -fno-optimize-sibling-calls is no longer forced for
    gfortran 7 and later.  It should no longer be needed now using
    'hidden' character-length arguments when calling BLAS/LAPACK
    routines from C/C++ is the default even for packages.  (Unless
    perhaps packages call Fortran code from C/C++ without using R's
    headers and without allowing for these arguments.)
  C-LEVEL FACILITIES:
  * The deprecated S-compatibility macros DOUBLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * The deprecated legacy typedefs of Sint and Sfloat in header R.h
    are no longer defined, and that header no longer includes header
    limits.h from C nor climits from C++.
  * New macro CAD5R() is provided in Rinternals.h and used in a few
    places in the R sources.
  * ALTREP now supports VECSXP vectors. Contributed by Gabor Csardi
    in PR#17620.
  * The Rcomplex definition (in header R_ext/Complex.h) has been
    extended to prevent possible mis-compilation when interfacing
    with Fortran (PR#18430).  The new definition causes compiler
    warnings with static initializers such as {1, 2}, which can be
    changed to {.r=1, .i=2}.
    Using the new definition from C++ depends on compiler extensions
    supporting C features that have not been incorporated into the
    C++ standards but are available in g++ and clang++: this may
    result in C++ compiler warnings but these have been worked around
    for recent versions of common compilers (GCC, Apple/LLVM clang,
    Intel).
    It is intended to change the inclusion of header R_ext/Complex.h
    by other R headers, so C/C++ code files which make use of
    Rcomplex should include that header explicitly.
  UTILITIES:
  * R CMD check does more checking of package .Rd files, warning
    about invalid email addresses and (some) invalid URIs and noting
    empty \item labels in description lists.
  * R CMD check now also reports problems when reading package news
    in md (file NEWS.md) and (optionally) plain text (file NEWS)
    formats.
  * _R_CHECK_TIMINGS_ defaults to a value from the environment even
    for R CMD check --as-cran; this allows for exceptionally fast or
    slow platforms.
    It now applies to checking PDF and HTML versions of the manuals,
    and 'checking CRAN incoming feasibility'.
  * R CMD check can optionally (but included in --as-cran) check
    whether HTML math rendering _via_ KaTeX works for the package .Rd
    files.
  * Non-interactive debugger invocations can be trapped by setting
    the environment variable _R_CHECK_BROWSER_NONINTERACTIVE_ to a
    true value.  This is enabled by R CMD check --as-cran to detect
    the use of leftover browser() statements in the package.
  * The use of sprintf and vsprintf from C/C++ has been deprecated in
    macOS 13 and is a known security risk.  R CMD check now reports
    (on all platforms) if their use is found in compiled code:
    replace by snprintf or vsnprintf respectively. [*NB:* whether
    such calls get compiled into the package is platform-dependent.]
  * Where recorded at installation, R CMD check reports the C and
    Fortran compilers used to build R.
    It reports the OS in use (if known, as given by osVersion) as
    well as that R was built for.
    It notes if a C++ standard was specified which is older than the
    current default: many packages have used C++11 to mean 'not
    C++98' - as C++11 is the minimum supported since R 4.0.0, that
    specification can probably be removed.
  * R CMD INSTALL reports the compilers (and on macOS, the SDK) used,
    and this is copied to the output of R CMD check.
    Where a C++ standard is specified, it is reported.
  * R CMD check's 'checking compilation flags in Makevars' has been
    relaxed to accept the use of flags such as -std=f2008 in
    PKG_FFLAGS.
  * tools::buildVignettes() has a new argument skip, which is used by
    R CMD check to skip (and note) vignettes with unavailable
    \VignetteDepends (PR#18318).
  * New generic .AtNames() added to enable class-specific completions
    after @. The formerly internal function findMatches() is now
    exported, mainly for use in methods for .DollarNames() and
    .AtNames().
  DEPRECATED AND DEFUNCT:
  * default.stringsAsFactors() is defunct.
  * Calling as.data.frame.&lt;class&gt;() directly (for 12 atomic classes)
    is going to be formally deprecated, currently activated by
    setting the environment variable
    _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ to non-empty, which also
    happens in R CMD check --as-cran.
  BUG FIXES:
  * Hashed environments with sizes less than 5 can now grow.
    (Reported to R-devel by Duncan Garmonsway.)
  * as.character(&lt;Rd&gt;, deparse = TRUE) failed to re-escape curly
    braces in LaTeX-like text.  (Reported by Hadley Wickham in
    PR#18324.)
  * library() now passes its lib.loc argument when requiring Depends
    packages; reported (with fix) in PR#18331 by Mikael Jagan.
  * R CMD Stangle: improved message about 'Output' files.
  * head(x, n) and tail(x, n) now signal an error if n is not
    numeric, instead of incidentally "working" sometimes returning
    all of x.  Reported and discussed by Colin Fay, in PR#18357.
  * The "lm" method for summary() now gives the correct F-statistic
    when the model contains an offset.  Reported in PR#18008.
  * C() and `contrasts&lt;-`() now preserve factor level names when
    given a function object (as opposed a function name which did
    preserve names). Reported in PR#17616.
  * c(a = 1, 2)[[]] no longer matches 2 but rather signals a
    _classed_ error.  Reported and analysed by Davis Vaughan in
    PR#18367, a duplicate of PR#18004, by Jan Meis et al.  For
    consistency, NULL[[]] is also erroneous now.  x[[]] &lt;- v gives an
    error of the same class "MissingSubscriptError".
  * The relist() function of utils now supports NULL elements in the
    skeleton (PR#15854).
  * ordered(levels = *) (missing x) now works analogously to factor(,
    ordered=TRUE); reported (with fix) by Achim Zeileis in PR#18389.
  * User-defined Rd macro definitions can now span multiple lines,
    thanks to a patch from Duncan Murdoch. Previously, the Rd parser
    silently ignored everything after the first line.
  * Plain-text help (tools::Rd2txt()) now preserves an initial blank
    line for text following description list items.
  * tools::Rd2HTML() and tools::Rd2latex() no longer split \arguments
    and \value lists at Rd comments.
  * tools::Rd2latex() now correctly handles optional text outside
    \items of argument lists as well as bracketed text at the
    beginning of sections, e.g., \value{[NULL]}.
  * as.character(&lt;POSIXt&gt;) now behaves more in line with the methods
    for atomic vectors such as numbers, and is no longer influenced
    by options().  Ditto for as.character(&lt;Date&gt;).  The
    as.character() method gets arguments digits and OutDec with
    defaults _not_ depending on options().  Use of as.character(*,
    format = .) now warns.
  * Similarly, the as.character.hexmode() and *.octmode() methods
    also behave as good citizen methods and back compatibility option
    keepStr = TRUE.
  * The as.POSIXlt(&lt;POSIXlt&gt;) and as.POSIXct(&lt;POSIXct&gt;) default
    methods now do obey their tz argument, also in this case.
  * as.POSIXlt(&lt;Date&gt;) now does apply a tz (time zone) argument, as
    does as.POSIXct(); partly suggested by Roland Fuss on the R-devel
    mailing list.
  * as.Date.POSIXlt(x) now also works when the list components are of
    unequal length, aka "partially filled" or "ragged".
  * expand.model.frame() looked up variables in the wrong environment
    when applied to models fitted without data.  Reported in
    PR#18414.
  * time() now (also) uses the ts.eps = getOption("ts.eps") argument
    and thus by default rounds values very close to the start (or
    end) of a year.  Based on a proposal by Andre"i V. Kostyrka on
    R-help.
  * Printing of a factanal() result with just one factor and sort =
    TRUE now works regularly, fixing PR#17863 by Timothy Bates,
    thanks to the 'R Contributors' working group.
  * Printing 0-length objects of class "factor", "roman", "hexmode",
    "octmode", "person", "bibentry", or "citation" now prints
    something better, one of which fixes PR#18422, reported by
    Benjamin Feakins.
  * Sys.timezone() queries timedatectl only if systemd is loaded;
    addressing a report by Jan Gorecki in PR#17421.
  * The formula method of cor.test() had scoping problems when
    environment(formula) was not the calling environment; reported
    with a patch proposal by Mao Kobayashi in PR#18439.
  * attach() of an environment with active bindings now preserves the
    active bindings.  Reported by Kevin Ushey in PR#18425.
  * BLAS detection now works also with system-provided libraries not
    available as regular files.  This fixes detection of the
    Accelerate framework on macOS since Big Sur.  Reported by David
    Novgorodsky.
  * download.file() gives a helpful error message in case of an
    invalid download.file.method option, thanks to Colin Fay's report
    in PR#18455.
  * Sporadic crashes of Rterm when using completion have been fixed.
  * Rprof() is now more reliable.  A livelock in thread
    initialization with too short sampling interval has been fixed on
    macOS.  A deadlock in using the C runtime has been fixed on
    Windows.  A potential deadlock has been prevented on Unix.
  * Cursor placement in Rgui now works even after a fixed-width font
    is selected.
  * Mandatory options (options()) are now set on startup so that
    saving and restoring them always works (PR#18372).
  * Package installation, R CMD INSTALL or install.packages(*), now
    parses each of the &lt;pkg&gt;/R/*.R files individually instead of
    first concatenating and then parse()ing the large resulting file.
    This allows parser or syntax errors to be diagnosed with correct
    file names and line numbers, thanks to Simon Dedman's report and
    Bill Dunlap's patch in PR#17859.
    This _does_ require syntactically self contained R source files
    now, fixing another inadvertent bug.
  * predict.lm(&lt;model with offset&gt;) now finds the offset in the
    correct environment, thanks to Andr'e Gillibert's report and patch
    in PR#18456.
  * getInitial(&lt;formula&gt;) now finds the selfStart model in the
    correct environment.  (Reported by Ivan Krylov in PR#18368.)
  * Fix for possible segfault when using recently-added graphics
    features, such as gradients, clipping paths, masks, and groups
    with pdf(file=NULL).
  * class(m) &lt;- class(m) no longer changes a matrix m by adding a
    class _attribute_.
  * packageDate(pkg) now only warns once if there is no pkg.
  * When ts() creates a multivariate time series, "mts", it also
    inherits from "array" now, and is.mts() is documented _and_
    stricter.
  * Rd2txt() now preserves line breaks of \verb Rd content and from
    duplicated \cr.  The former also fixes the rendering of verbatim
    output from Rd \Sexpr in plain-text help.
  * uniroot(f, interval) should no longer wrongly converge _outside_
    the interval in some cases where abs(f(x)) == Inf for an x at the
    interval boundary, thanks to posts by Ben Bolker and Serguei
    Sokol on R-devel.
  * Vectorized alpha handling in palette functions such as in gray(),
    rainbow(), or hcl.colors() works correctly now, thanks to Achim
    Zeileis' report and patch in PR#18476.
  * Formatting and print()ing of bibentry objects has dropped the
    deprecated citation.bibtex.max argument, such that the bibtex
    argument's default for print.bibentry() depends directly on the
    citation.bibtex.max option, whereas in format.bibentry() the
    option no longer applies.
  * Attempting to use a character string naming a foreign function
    entry point in a foreign function call in a package will now
    signal an error if the packages has called R_forceSymbols to
    specify that symbols must be used.
  * An error in table() could permanently set options(warn=2)
    promoting all subsequent warnings to errors.
  * The sigma() function gave misleading results for binary GLMs.  A
    new method for objects of class "glm" returns the square root of
    the estimate of the dispersion parameter using the same
    calculation as summary.glm().
  * bs() and ns() in the (typical) case of automatic knot
    construction, when some of the supposedly inner knots coincide
    with boundary knots, now moves them inside (with a warning),
    building on PR#18442 by Ben Bolker.
  * R CMD on Windows now skips the site profile with --no-site-file
    and --vanilla even when R_PROFILE is set (PR#18512, from Kevin
    Ushey).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1686916800">- CHANGES IN R 4.3.1:
  C-LEVEL FACILITIES:
  * The C-level API version of R's integrate(), Rdqags() in Applic.h,
    now returns the correct number of integrand evaluations neval,
    fixing PR#18515 reported and diagnosed by Stephen Wade.
  * The C prototypes for LAPACK calls dspgv and dtptrs in
    R_exts/Lapack.h had one too many and one too few character length
    arguments - but this has not caused any known issues. To get the
    corrected prototypes, include
    [#]include &lt;Rconfig.h&gt; // for PR18534fixed
    [#]ifdef PR18534fixed
    [#] define usePR18534fix 1
    [#]endif
    [#]include &lt;R_exts/Lapack.h&gt;
    in your C/C++ code (PR#18534).
  INSTALLATION:
  * Many of the checks of esoteric Internet operations and those
    using unreliable external sites have been moved to a new target
    that is not run by default and primarily intended for the core
    developers.  To run them use
    cd tests; make test-Internet-dev
  BUG FIXES:
  * .S3methods(), typically called from methods(), again marks
    methods from package base as visible.
    Also, the visibility of non-base methods is again determined by
    the method's presence in search().
  * tools::Rdiff() is now more robust against invalid strings, fixing
    installation tests on Windows without Rtools installed
    (PR#18530).
  * Fix (new) bug in hcl.colors(2, *), by Achim Zeileis (PR#18523).
  * head(., &lt;illegal&gt;) and tail(..) now produce more useful "Error in
    ...." error messages, fixing PR#18362.
  * Package code syntax on Windows is checked in UTF-8 when UTF-8 is
    the native encoding.
  * na.contiguous(x) now also returns the first run, when it is at
    the beginning and there is a later one of the same length;
    reported to R-devel, including a fix, by Georgi Boshnakov.
    Further, by default, it modifies only an existing attr(*,"tsp")
    but otherwise no longer sets one.
  * chol(&lt;not pos.def&gt;, pivot = &lt;T|F&gt;) now gives a correct error or
    warning message (depending on pivot), thanks to Mikael Jagan's
    (PR#18541).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1699012800">- CHANGES IN R 4.3.2:
  NEW FEATURES:
  * The default initialization of the "repos" option from the
    repositories file at startup can be skipped by setting
    environment variable R_REPOSITORIES to NULL such that
    getOption("repos") is empty if not set elsewhere.
  * qr.X() is now an implicit S4 generic in methods.
  * iconv(to = "ASCII//TRANSLIT") is emulated using substitution on
    platforms which do not support it (notably Alpine Linux).  This
    should give a human-readable conversion in ASCII on all platforms
    (rather than NA_character_).
  * trans3d() gains options continuous and verbose addressing the
    problem of possible "wrap around" when projecting too long
    curves, as reported by Achim Zeileis in PR#18537.
  * tools::showNonASCII() has been rewritten to work better on macOS
    14 (which has a changed implementation of iconv()).
  * tiff(type = "quartz") (the default on macOS) now warns if
    compression is specified: it continues to be ignored.
  INSTALLATION on a UNIX-ALIKE:
  * There is some support for building with Intel's LLVM-based
    compilers on x86_64 Linux, such as (C) icx, (C++) ipcx and
    (Fortran) ifx from oneAPI 2023.x.y.
  * There is support for using LLVM's flang-new as the Fortran
    compiler from LLVM 16.0.x (preferably 17.0.0 or later).
  UTILITIES:
  * R CMD check reports the use of the Fortran 90 random number
    generator RANDOM_NUMBER() and the subroutines to initialize it.
    'Writing R Extensions' has example code to use R's RNGs from
    Fortran.
  BUG FIXES:
  * substr(x, n, L) &lt;- cc now works (more) correctly for multibyte
    UTF-8 strings x when L &gt; nchar(x), thanks to a report and patch
    by 'Architect 95'.
  * contrib.url(character()) now returns 0-length character() as
    documented, which also avoids spurious warnings from
    available.packages() et al. in the edge case of an empty vector
    of repository URLs.
  * readChar(., 4e8) no longer fails, thanks to Kodi Arfer's report
    (PR#18557).
  * lapply(&lt;list&gt;, as.data.frame) no longer warns falsely for some
    base vector components.
  * Communication between parent and child processes in the multicore
    part of parallel could fail on platforms that do not support an
    arbitrarily large payload in system functions read()/write() on
    pipes (seen on macOS where a restriction to INT_MAX bytes is
    documented, without doing a partial read unlike Linux). The
    payload is now split into 1Gb chunks to avoid that problem.
    (PR#18571)
  * qqplot(x,y, conf.level=.) gives better confidence bounds when
    length(x) != length(y), thanks to Alexander Ploner's report and
    patch proposal (PR#18557).
  * norm(&lt;0-length&gt;, "2") now gives zero instead of an error, as all
    the other norm types, thanks to Mikael Jagan's PR#18542.
  * Build-stage Rd macros \packageAuthor and \packageMaintainer now
    process Authors@R, fixing NA results when the package DESCRIPTION
    omits Author and Maintainer fields.
  * Formatting and printing complex numbers could give things like
    0.1683-0i because of rounding error: -0i is now replaced by +0i.
  * postscript() refused to accept a title comment containing the
    letter "W" (PR#18599).
  * isoreg(c(1,Inf)) signals an error instead of segfaulting, fixing
    PR#18603.
  * tiff(type = "Xlib") was only outputting the last page of
    multi-page plots.
  * tools::latexToUtf8() again knows about \~{n} and other letters
    with tilde, fixing a regression in R 4.3.0, and about \^{i} as an
    alternative to \^{\i} (similarly with other accents).
    Furthermore, LaTeX codes for accented I letters are now correctly
    converted, also fixing related mistakes in
    tools::encoded_text_to_latex().
  * tar(*, tar = "internal") no longer creates out-of-spec tar files
    in the very rare case of user or group names longer than 32
    bytes, fixing PR#17871 with thanks to Ivan Krylov.
  * When using the "internal" timezone datetime code, adding a
    fraction of a second no longer adds one second, fixing PR#16856
    from a patch by Ivan Krylov.
  * tools::checkRd() no longer produces spurious notes about
    "unnecessary braces" from multi-line Rd results of \Sexpr macros.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1709208000">- CHANGES IN R 4.3.3:
  NEW FEATURES:
  * iconv() now fixes up variant encoding names such as "utf8"
    case-insensitively.
  DEPRECATED AND DEFUNCT:
  * The legacy encoding = "MacRoman" is deprecated in pdf() and
    postscript(): support was incomplete in earlier versions of R.
  BUG FIXES:
  * Arguments are now properly forwarded to methods on S4 generics
    with ... in the middle of their formal arguments. This was broken
    for the case when a method introduced an argument but did not
    include ... in its own formals. Thanks to Herv'e Pag`es for the
    report PR#18538.
  * Some invalid file arguments to pictex(), postscript() and xfig()
    opened a file called NA rather than throw an error.  These
    included postscript(NULL) (which some people expected to work
    like pdf(NULL)).
  * Passing filename = NA to svg(), cairo_pdf(), cairo_ps() or the
    Cairo-based bitmap devices opened a file called NA: it now throws
    an error.
  * quartz(file = NA) opened a file called NA, including when used as
    a Quartz-based bitmap device.  It now gives an error.
  * rank(&lt;long vector&gt;) now works, fixing PR#18617, thanks to Ilia
    Kats.
  * seq.int() did not adequately check its length.out argument.
  * match(&lt;POSIXct&gt;, .) is correct again for differing time zones,
    ditto for "POSIXlt", fixing PR#18618 reported by Bastian Klein.
  * drop.terms(*, dropx = &lt;0-length&gt;) now works, fixing PR#18563 as
    proposed by Mikael Jagan.
  * drop.terms(*) keeps + offset(.) terms when it should, PR#18565,
    and drop.terms() no longer makes up a response, PR#18566, fixing
    both bugs thanks to Mikael Jagan.
  * getS3method("t", "test") no longer finds the t.test() function,
    fixing PR#18627.
  * pdf() and postscript() support for the documented Adobe encodings
    "Greek" and "Cyrilllic" was missing (although the corresponding
    Windows' codepages could be used).
  * Computations of glyph metric information for pdf() and
    postscript() did not take into account that transliteration could
    replace one character by two or more (only seen on macOS 14) and
    typically warned that the information was not known.
  * rank(x) no longer overflows during integer addition, when
    computing rank average for largish but not-yet long vector x,
    fixing PR#18630, thanks to Ilia Kats.
  * list.files() on Windows now returns also files with names longer
    that 260 bytes (the Windows limit is 260 characters).
    Previously, some file names particularly with 'East Asian'
    characters were omitted.
  * cov2cor(&lt;0 x 0&gt;) now works, fixing PR#18423 thanks to Mikael
    Jagan and Elin Waring.
  * cov2cor(&lt;negative diagonal&gt;) and similar now give one warning
    instead of two, with better wording, fixing PR#18424 thanks to
    Mikael Jagan.
  * tools:: startDynamicHelp() now ensures port is in proper range,
    fixing PR#18645.
  * pbeta(x, a,b) is correct now for x=0 or 1 in the boundary cases
    where a or b or both are 0, fixing PR#18672 thanks to Michael
    Fay.
  * pmatch(x, table) for large table, also called for data frame row
    selection, dfrm[nm, ], is now interruptible, fixing PR#18656.
  * predict(&lt;rank-deficient lm&gt;, newdata=*) fix computing of nbasis,
    see Russ Lenth's comment 29 in PR#16158.
  * Added a work-around for a bug in macOS 14.3.1 and higher which
    prevents R plots in the Quartz Cocoa device from updating on
    screen.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1713960000">- CHANGES IN R 4.4.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Startup banners, R --version, sessionInfo() and R CMD check no
    longer report (64-bit) as part of the platform as this is almost
    universal - the increasingly rare 32-bit platforms will still
    report (32-bit).
    On Windows, ditto for window titles.
  * is.atomic(NULL) now returns FALSE, as NULL is not an atomic
    vector.  Strict back-compatibility would replace is.atomic(foo)
    by (is.null(foo) || is.atomic(foo)) but should happen only
    sparingly.
  NEW FEATURES:
  * The confint() methods for "glm" and "nls" objects have been
    copied to the stats package.  Previously, they were stubs which
    called versions in package MASS. The MASS namespace is no longer
    loaded if you invoke (say) confint(glmfit).  Further, the "glm"
    method for profile() and the plot() and pairs() methods for class
    "profile" have been copied from MASS to stats.  (profile.nls()
    and plot.profile.nls() were already in stats.)
  * The confint() and profile methods for "glm" objects have gained a
    possibility to do profiling based on the Rao Score statistic in
    addition to the default Likelihood Ratio. This is controlled by a
    new test = argument.
  * The pairs() method for "profile" objects has been extended with a
    which = argument to allow plotting only a subset of the
    parameters.
  * The "glm" method for anova() computes test statistics and
    p-values by default, using a chi-squared test or an F test
    depending on whether the dispersion is fixed or free.  Test
    statistics can be suppressed by giving argument test a false
    logical value.
  * In setRepositories() the repositories can be set using their
    names via name = instead of index ind =.
  * methods() and .S3methods() gain a all.names option for the (rare)
    case where functions starting with a . should be included.
  * Serializations can now be interrupted (e.g., by Ctrl-C on a
    Unix-alike) if they take too long, e.g., from save.image(),
    thanks to suggestions by Ivan Krylov and others on R-devel.
  * New startup option --max-connections to set the maximum number of
    simultaneous connections for the session.  Defaults to 128 as
    before: allowed values up to 4096 (but resource limits may in
    practice restrict to smaller values).
  * R on Windows (since Windows 10 2004) now uses the new Segment
    Heap allocator. This may improve performance of some
    memory-intensive applications.
  * When R packages are built, typically by R CMD build &lt;pkg&gt;, the
    new --user=&lt;build_user&gt; option overrides the (internally
    determined) user name, currently Sys.info()["user"] or LOGNAME.
    This is a (modified) fulfillment of Will Landau's suggestion in
    PR#17530.
  * tools::testInstalledBasic() gets new optional arguments outDir
    and testSrcdir, e.g., allowing to use it in a &lt;builddir&gt; !=
    &lt;srcdir&gt; setup, and in standard "binary" Windows installation
  * if* a source tests/ folder is present.
  * range(&lt;DT_with_Inf&gt;, finite = TRUE) now work for objects of class
    "Date", "POSIXct", and "POSIXlt" with infinite entries,
    analogously to range.default(), as proposed by Davis Vaughan on
    R-devel.  Other range()-methods can make use of new function
    .rangeNum().
  * New .internalGenerics object complementing .S3PrimitiveGenerics,
    for documentation and low-level book-keeping.
  * grid() now invisibly returns the x- and y- coordinates at which
    the grid-lines were drawn.
  * norm(., type) now also works for complex matrices.
  * kappa(., exact = TRUE, norm = *) now works for all norms and also
    for complex matrices.  In symmetric / triangular cases, the new
    argument uplo = "U" | "L" allows the upper or lower triangular
    part to be specified.
  * memDecompress(type = "unknown") recognizes compression in the
    default 'zlib' format as used by memCompress(type = "gzip").
  * memCompress() and memDecompress() will use the libdeflate library
    (&lt;https://github.com/ebiggers/libdeflate&gt;) if installed.  This
    uses the same type of compression for type = "gzip" but is 1.5-2x
    faster than the system libz library on some common platforms: the
    speed-up may depend on the library version.
  * diff() for objects of class "Date", "POSIXct", and "POSIXlt"
    accepts a units argument passed via ....
  * Dynamic help now does a much better job of rendering package
    DESCRIPTION metadata.
  * Rprof() gains an event argument and support for elapsed (real)
    time profiling on Unix (PR#18076).
  * filled.contour() gains a key.border argument.
  * tools::update_pkg_po() gets arguments pot_make and mo_make for
    _not_ re-making the corresponding files, and additionally a
    verbose argument.
  * Hexadecimal string colour specifications are now accepted in
    short form, so, for example, we can use "#123", which is
    equivalent to "#112233".
    Thanks to MikeFC for the original idea and Ella Kaye, Malcolm
    Barrett, George Stagg, and Hanne Oberman for the patch.
  * Plain-text help shows \var markup by angle brackets.
  * The new experimental primitive function declare() is intended to
    eventually allow information about R code to be communicated to
    the interpreter, compiler, and code analysis tools. The syntax
    for declarations is still being developed.
  * Functions psmirnov(), qsmirnov() and rsmirnov() in package stats
    have had argument two.sided renamed to alternative, to take into
    account that the permutation distributions of the one-sided
    statistics can be different in the case of ties.  Consequence of
    PR#18582.
  * sort() is now an implicit S4 generic in methods.
  * Formatting and printing, format(z), print(z), of complex vectors
    z no longer zap relatively small real or imaginary parts to zero,
    fixing PR#16752.  This is an API change, as it was documented
    previously to round real and imaginary parts together on purpose,
    producing nicer looking output.  As mentioned, e.g. in the PR,
    this change is compatible with many other "R-like" programming
    environments.
    We have simplified the internal code and now basically format the
    real and imaginary parts independently of each other.
  * New experimental functions Tailcall() and Exec() to support
    writing stack-space-efficient recursive functions.
  * Where characters are attempted to be plotted by pdf(),
    postscript() and xfig() which are not in the selected 8-bit
    character set (most often Latin-1) and the R session is using a
    UTF-8 locale, the warning messages will show the UTF-8 character
    rather than its bytes and one dot will be substituted per
    character rather than per byte.  (Platforms whose iconv() does
    transliteration silently plot the transliteration.)
    In a UTF-8 locale some transliterations are now done with a
    warning (e.g., dashes and Unicode minus to hyphen, ligatures are
    expanded, permille (‰) is replaced by o/oo), although the OS may
    have got there first.  These are warnings as they will continue
    to be replaced by dots in earlier versions of R.
  * The matrix multiplication functions crossprod() and tcrossprod()
    are now also primitive and S3 generic, as %*% had become in R
    4.3.0.
  * source() and example() have a new optional argument catch.aborts
    which allows continued evaluation of the R code after an error.
  * The non-Quartz tiff() devices allow additional types of
    compression if supported by the platform's libtiff library.
  * The list of base and recommended package names is now provided by
    tools::standard_package_names().
  * cairo_pdf() and cairo_ps() default to onefile = TRUE to closer
    match pdf() and postscript().
  * New option catch.script.errors provides a documented way to catch
    errors and then continue in non-interactive use.
  * L %||% R newly in base is an expressive idiom for the phrases
    if(!is.null(L)) L else R or if(is.null(L)) R else L.
  * The return value from warnings() now always inherits from
    "warnings" as documented, now also in the case of no warnings
    where it previously returned NULL.
  * as.complex("1i") now returns 0 + 1i instead of NA with a warning.
  * z &lt;- c(NA, 1i) now keeps the imaginary part Im(z[1]) == 0, no
    longer coercing to NA_complex_.  Similarly, cumsum(z) correctly
    sums real and imaginary parts separately, i.e., without
    "crosstalk" in case of NAs.
  * On Alpine Linux iconv() now maps "latin2", "latin-2", "latin9"
    and "latin-9" to encoding names the OS knows about
    (case-insensitively).
  * iconv(sub = "Unicode") now always zero-pads to four (hex) digits,
    rather than to 4 or 8.  (This seems to have become the convention
    once Unicode restricted the number of Unicode points to 2^21 - 1
    and so will never need more than 6 digits.)
  * NCOL(NULL) now returns 0 instead of 1, for consistency with
    cbind().
  * The information for the Euro glyph missing from the Adobe .afm
    files for the Courier, Helvetica and Times families has been
    copied from their URW equivalents - this will improve vertical
    centring in the pdf() and postscript() devices.
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.12.0.  The changes are almost entirely cosmetic.
  * The included LAPACK sources have been updated to version 3.12.0
    and some further double-complex routines added.
  * There are new font families for the 2014--5 URW 2.0 fonts (see
    ?pdf) which are included in recent versions of Ghostscript.
    These have font widths for most Greek glyphs and a few others
    which were missing from the original versions (whose font
    families remain available for reproducibility, although
    Ghostscript-based viewers will render using the 2.0 versions).
  * Improve the large-n efficiency of as.matrix(&lt;dist&gt;), thanks an R
    contributors effort, notably by Tim Taylor and Heather Turner,
    see PR#18660.
  * The default and numeric methods of all.equal() get a check.class
    option.
  * zapsmall() gets new optional arguments, function mFUN and min.d,
    for extra flexibility; fulfills a wish in PR#18199.  Also, it is
    now an implicit S4 generic in package methods.
  * The Rd filter for aspell() gains an ignore argument.
  * New generic function sort_by(), primarily useful for the
    data.frame method which can be used to sort rows of a data frame
    by one or more columns.
  * The icence headers for the RPC code in src/extra/xdr have been
    updated to use the GPL-compatible licence published by Oracle
    America in 2010.
  * New function pkg2HTML() in tools to create single-page HTML
    reference manuals for R packages.
  * The byte code evaluator now uses less C stack space for recursive
    calls to byte-compiled functions. It also makes more of an effort
    to avoid allocations for scalar return values.
  * New completion option backtick (disabled by default) allows
    non-syntactic completions to be wrapped in backquotes. This is
    currently only useful for Jupyter notebooks via the IRkernel
    package, and may cause problems for other backends.
  INSTALLATION:
  * The parser has been updated to work with bison 3.8.2, which is
    now used for the pre-generated parsers in gram.c, file.c, and
    gramRd.c. A few parser error messages have changed, which may
    affect code that relies on exact messages.
  INSTALLATION on a UNIX-ALIKE:
  * System valgrind headers are now required to use configure option
  - -with-valgrind-instrumentation with value 1 or 2.
  * configure will warn if it encounters a 32-bit build, as that is
    nowadays almost untested.
  * Environment variable R_SYSTEM_ABI is no longer used and so no
    longer recorded in etc/Renviron (it was not on Windows and was
    only ever used when preparing package tools).
  * If the libdeflate library and headers are available, libdeflate
    rather than libz is used to (de)compress R objects in lazy-load
    databases.  Typically tasks spend up to 5% of their time on such
    operations, although creating lazy-data databases is one of the
    exceptions.
    This can be suppressed if the library is available by the
    configure option --without-libdeflate-compression.
  * configure option --enable-lto=check has not worked reliably since
    2019 and has been removed.
  * The minimum autoconf requirement for a maintainer build has been
    increased to autoconf 2.71.
    It is intended to increase this to 2.72 for R 4.5.0: the
    distributed configure file was generated using 2.72.
  * The minimum version requirement for an external LAPACK has been
    reduced to 3.9.0.
  * No default C++ compiler is set if no C++17 compiler is detected:
    there is no longer an automatic fallback to C++14 or C++11.
    Compilers from the last five years should have sufficient
    support: for others macros CXX and CXXSTD can be set in file
    config.site to provide a fallback if needed.
    The Objective-C++ compiler now by default uses the standard
    selected by R for C++ (currently C++17) rather than the default
    standard for the C++ compiler (which on macOS is still C++98).
  INSTALLATION on macOS:
  * A new configure option --with-newAccelerate makes use of Apple's
    'new' BLAS / LAPACK interfaces in their Accelerate framework.
    Those interfaces are only available in macOS 13.3 or later, and
    building requires SDK 13.3 or later (from the Command Line Tools
    or Xcode 14.3 or later).
    By default the option uses new Accelerate for BLAS calls: to also
    use it for LAPACK use option --with-newAccelerate=lapack.  The
    later interfaces provide LAPACK 3.9.1 rather than 3.2.1: 3.9.1 is
    from 2021-04 and does not include the improved algorithms
    introduced in LAPACK 3.10.0 (including for BLAS calls).
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools44, an update of the Rtools43 toolchain.  It is
    based on GCC 13 and newer versions of MinGW-W64, binutils and
    libraries (targeting 64-bit Intel CPUs).  R-devel can no longer
    be built using Rtools43 without changes.
  * Rtools44 has experimental support for 64-bit ARM (aarch64) CPUs
    _via_ the LLVM 17 toolchain using lld, clang/flang-new and
    libc++.
  UTILITIES:
  * R CMD check notes when S4-style exports are used without
    declaring a strong dependence on package methods.
  * tools::checkRd() (used by R CMD check) detects more problems with
    \Sexpr-based dynamic content, including bad nesting of \Sexprs
    and invalid arguments.
  * tools::checkRd() now reports Rd titles and section names ending
    in a period; this is ignored by R CMD check unless environment
    variable _R_CHECK_RD_CHECKRD_MINLEVEL_ is set to -5 or smaller.
  * R CMD check now notes Rd files without an \alias, as long
    documented in 'Writing R Extensions' §1.3.1.  The check for a
    missing \description has been moved from tools::checkRd() to
    tools::checkRdContents().
  * R CMD check now visits inst/NEWS.Rd and OS-specific man
    subdirectories when checking Rd files.
  * tools::checkDocFiles() and tools::checkRdContents() now also
    check internal Rd files by default, but "specially" (ignoring
    missing documentation of arguments).
  * R CMD Rdiff gets option --useEx.
  * R CMD check now warns on non-portable uses of Fortran KIND such
    as INTEGER(KIND=4) and REAL(KIND=8).
    To see the failing lines set environment variable
    _R_CHECK_FORTRAN_KIND_DETAILS_ to a true value.
  * When checking Rd files, R CMD check now notes some of the "lost
    braces" that tools::checkRd() finds.  Typical problems are Rd
    macros missing the initial backslash (e.g., code{...}), in-text
    set notation (e.g., {1, 2}, where the braces need escaping), and
    \itemize lists with \describe-style entries of the form
    \item{label}{description}.
  * R CMD INSTALL (and hence check) will compile C++ code with
  - DR_NO_REMAP if environment variable _R_CXX_USE_NO_REMAP_ is set
    to a true value.  It is planned that this will in future become
    the default for compiling C++.
  * The new built-in Rd macro \dontdiff{} can be used to mark example
    code whose output should be ignored when comparing check output
    to reference output (tests/Examples/&lt;pkg&gt;-Ex.Rout.save).  The
    \dontdiff tag, like \donttest, is _not_ shown on the rendered
    help page, so provides a clean alternative to ##
    IGNORE_RDIFF_(BEGIN|END) comments.
  * R CMD build when there is no NAMESPACE, now uses the recommended
    exportPattern("^[^.]"), instead of exporting everything.
  * R CMD check now warns about non-ASCII characters in the NAMESPACE
    file (in addition to R files). Such packages are not portable and
    may fail to install on some platforms.
  C-LEVEL FACILITIES:
  * Headers R_ext/Applic.h and R-ext/Linpack.h used to include
    R_ext/BLAS.h although this was undocumented and unneeded by their
    documented entry points.  They no longer do so.
  * New function R_missing(), factored out from do_missing(), used to
    fix PR#18579.
  * SEXP type S4SXP has been renamed to OBJSXP to support
    experimenting with alternative object systems.  The S4SXP value
    can still be used in C code but is now deprecated.  Based on
    contributions from the R Consortium's Object-Oriented Programming
    Working Group.
  * New function pow1p(x,y) for accurate (1+x)^y.
  * mkCharLenCE was incorrectly documented to take a size_t length
    but was implemented with int (and character strings in R are
    limited to 2^31 - 1 bytes).
  DEPRECATED AND DEFUNCT:
  * data() no longer handles zipped data from long-defunct (since R
    2.13.0) --use-zip-data installations.
  * The legacy graphics devices pictex() and xfig() are now
    deprecated.  They do not support recent graphics enhancements and
    their font handling is rudimentary. The intention is to retain
    them for historical interest as long as they remain somewhat
    functional.
  * Support for encoding = "MacRoman" has been removed from the pdf()
    and postscript() devices - this was a legacy encoding supporting
    classic macOS up to 2001 and no longer has universal libiconv
    support.
  * is.R() is deprecated as no other S dialect is known to be in use
    (and this could only identify historical dialects, not future
    ones).
    Further information on calls can be obtained by setting the
    environment variable _R_DEPRECATED_IS_R_ to error which turns the
    deprecation warning into an error and so by default gives a
    traceback.  (This is done by R CMD check --as-cran.)
  * UseMethod() no longer forwards local variables assigned in the
    generic function into method call environments before evaluating
    the method body. This makes method calls behave more like
    standard function calls and makes method code easier to analyze
    correctly.
  * The twelve as.data.frame.&lt;class&gt;() methods which were deprecated
    only via _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ and in R CMD
    check --as-cran are formally deprecated now in favour of calling
    as.data.frame() or as.data.frame.vector().  The deprecation
    "check" now works also when as.data.frame() is S4 generic thanks
    to Ivan Krylov.
  * The default method for the directional comparison operators &lt;, &gt;,
    &lt;=, and &gt;= now signals an error when one of the operands is a
    language object, i.e. a symbol or a call.
  * For terms.formula(), deprecate abb and neg.out arguments
    _formally_ in addition to just documenting it.
  BUG FIXES:
  * The methods package is more robust to not being attached to the
    search path.  More work needs to be done.
  * pairwise.t.test() misbehaved when subgroups had 0 DF for
    variance, even with pool.sd = TRUE.  (PR#18594 by Jack Berry).
  * Probability distribution functions [dpq]&lt;distrib&gt;(x, *), but also
    bessel[IKJY](x, .) now consistently preserve attributes(x) when
    length(x) == 0, e.g., for a 2 x 0 matrix, thanks to Karolis
    Koncevičius' report PR#18509.
  * Group "Summary" computations such as sum(1:3, 4, na.rm = 5, NA,
    7, na.rm = LL) now give an error instead of either 17 or NN for
    LL true or false, as proposed by Ivan Krylov on the R-devel
    mailing list.  (This also means it is now an error to specify
    na.rm more than once.)
  * as.complex(x) now returns complex(real = x, imaginary = 0) for
    _all_ numerical and logical x, notably also for NA or
    NA_integer_.
  * Directories are now omitted by file.copy(, recursive = FALSE) and
    in file.append() (PR#17337).
  * gsub() and sub() are now more robust to integer overflow when
    reporting errors caused by too large input strings (PR#18346).
  * Top-level handlers are now more robust to attempts to remove a
    handler whilst handlers are running (PR#18508).
  * The handling of Alt+F4 in dialogs created on Windows using
    GraphApp has been fixed (PR#13870).
  * density() more consistently computes grid values for the
    FFT-based convolution, following Robert Schlicht's analysis and
    proposal in PR#18337, correcting density values typically by a
    factor of about 0.999.  Argument old.coords = TRUE provides back
    compatibility.
  * palette.colors() gains a name argument that defaults to FALSE
    controlling whether the vector of colours that is returned has
    names (where possible).  PR#18529.
  * tools::xgettext() no longer extracts the (non-translatable) class
    names from warningCondition and errorCondition calls.
  * S3method(&lt;gen&gt;, &lt;class&gt;, &lt;func&gt;) in the NAMESPACE file now works
    (again) when &lt;func&gt; is visible from the namespace, e.g.,
    imported, or in base.
  * getParseData(f) now also works for a function defined in the
    first of several &lt;pkg&gt;/R/*.R source files, thanks to Kirill
    Müller's report and Duncan Murdoch's patch in PR#16756.
  * Rd \Sexpr macros with nested #ifdef conditionals were not
    processed.
  * A non-blocking connection with non-default encoding (such as a
    socket) now correctly returns from readLines() after new data has
    arrived also when its EOF had been reached previously.  Thanks to
    Peter Meilstrup's report on R-devel and Ivan Krylov's report and
    patch proposal in PR#18555.
  * tools::checkRdContents() failed to detect empty argument
    descriptions when they spanned multiple lines, including those
    generated by prompt().  These cases are now noted by R CMD check.
  * Plain-text help no longer outputs spurious colons in the
    arguments list (for multi-line \item labels in the Rd source).
  * kappa() and rcond() work correctly in more cases; kappa(., norm =
    "2") now warns that it computes the 1-norm with (default) exact =
    FALSE; prompted by Mikael Jagan's quite comprehensive PR#18543.
  * Rd skeletons generated by prompt() or promptData() now use a
    dummy title (so R CMD build works).  tools::checkRdContents() has
    been updated to detect such template leftovers, including from
    promptPackage().
  * When S4 method dispatch fails because no method was found, the
    error message now includes the signature argument names; thanks
    to Michael Chirico's proposal on the R-devel list.
  * withAutoprint({ .. }) now preserves srcrefs previously lost,
    thanks to Andrew Simmons' report plus fix in PR#18572.
  * transform.data.frame() no longer adjusts names; in particular,
    untransformed variables are kept as-is, including those with
    syntactically invalid names (PR#17890).
  * The keep.source option for Rd \Sexpr blocks is no longer ignored.
  * The formula methods for t.test() and wilcox.test() now catch when
    paired is passed, addressing PR#14359; use Pair(x1, x2) ~ 1 for a
    paired test.
  * The level reported in the browser prompt was often too large. It
    now shows the number of browser contexts on the stack.
  * For cbind() and rbind(), the optional deparse.level argument is
    now properly passed to methods, thanks to Mikael Jagan's PR#18579
    and comments there.
  * Some error and warning messages for large ('long vector')
    matrix(v, nr, nc) and dim(m) &lt;- d are now correct about sizes,
    using long long formatting, fixing PR#18612 (and more) reported
    by Mikael Jagan.
  * readChar(useBytes = TRUE) now terminates strings even when the
    underlying connection uses extra spaces in the input buffer.
    This fixes problems with extra garbage seen with gzip
    connections, PR#18605.
  * Named capture in PCRE regular expressions now works also with
    more than 127 named groups (PR#18588).
  * Datetime functions are now robust against long jumps when dealing
    with internal time zone changes.  This avoids confusing warnings
    about an invalid time zone, previously triggered by turning
    warnings into errors or handling them via tryCatch (PR#17966,
    PR#17780).
  * Datetime functions now restore even an empty TZ environment
    variable after internal time zone changes (PR#17724).  This makes
    results of datetime functions with this (typically unintentional)
    setting more predictable.
  * drop.terms(*) now drops response as by default, keep.response =
    FALSE, fixing PR#18564 thanks to Mikael Jagan.
  * dummy.coef(.) now also works for lm()-models with character
    categorical predictor variables rather than factor ones, fixing
    PR#18635 reported by Jinsong Zhao.
  * formals(f) &lt;- formals(f) now also works for a function w/o
    arguments and atomic _constant_ body(f).
  * Correct as.function(&lt;invalid list&gt;, .)'s error message.
  * removeSource() is yet more thorough in finding and removing
    "srcref" and the other source references from parsed R language
    chunks, fixing PR#18638 thanks to Andrew Simmons.
  * dgeom() is more accurate now, notably when its result is very
    small, fixing PR#18642 thanks to the proposal of Morten Welinder,
    also improving other instances where C level binom_raw(x, n, ..)
    has x == 0 or x== n.
  * warning() with options(warn = 1) has improved output for
    multi-line messages.
  * axis.Date() and axis.POSIXct() now respect the par("lab") setting
    for the number of pretty() intervals.
  * Comparisons for language objects (which are based on deparsing)
    are now more careful about using accurate deparsed results
    (PR#18676).
  * Plain-text help (Rd2txt) now correctly preserves blank lines
    following single-line \dontrun code.
  * &lt;POSIXlt&gt;[*] no longer sets wrong "balanced" attribute, fixing
    PR#18681 thanks to Mikael Jagan.
  * str(&lt;classed-call&gt;) now deparses the call as expected, fixing
    PR#18684, reported by Dave Slager.
  * In Rd examples, code following the closing brace of a \dontrun,
    \dontshow or \donttest tag on the same line is no longer skipped
    when R CMD check runs the examples.
  * as.data.frame(matrix(*, ncol=0)) now gets valid names() and
    colnames(); reported by Davis Vaughan on the R-devel list.
  * Internal Mathlib function stirlerr(n) is now almost fully
    (52-bit) accurate for all n &gt;= ~5.9 and more accurate also in the
    range 1 -- 5.9.  This entails small ("after 12th decimal")
    changes in density functions, e.g., dgamma() in _some_ regions of
    their support.  The fix was partly prompted by Morten Welinder's
    PR#18640.
  * Numbers like 9876543.2 are now considered non-integer by Mathlib
    internal R_nonint(), amending original fix of PR#15734.
  * Rd comment lines no longer cause broken paragraphs in the
    rendered PDF and plain-text help. In code blocks, pure comment
    lines (starting with %) no longer produce an empty line.
  * xtabs(Freq ~ .) now consistently defaults to na.action = na.pass,
    using na.rm = FALSE (added as an argument) when summing over Freq
    (PR#17770).
  * tools::testInstalledPackage() is no longer silent about failures
    from running examples or tests and its return code no longer
    ignores failures from checking vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1718366400">- CHANGES IN R 4.4.1:
  C-LEVEL FACILITIES:
  * Functions R_atof and R_strtod declared in header R_ext/Utils.h
    are now documented in 'Writing R Extensions' and so formally part
    of the API.
  * The non-API entry points Rf_setSVector, Rf_StringFalse,
    Rf_StringTrue and Rf_isBlankString have been added to those
    reported by R CMD check.
  * The new function Rf_allocLang is now available. This provides an
    alternative to the idiom of calling Rf_allocList followed by
    SET_TYPEOF.
  UTILITIES:
  * R CMD check now reports as warnings what gfortran calls 'Fortran
    2018 deleted features', all of which have long been marked as
    'obsolescent' and some of which were deleted in Fortran 2008 or
    earlier.  Fortran compilers are no longer required to support
    these.
  BUG FIXES:
  * as.numeric(), scan(), type.convert() and other places which use
    the internal C function R_strtod now require a _non-empty_ digit
    sequence in a decimal or binary exponent.  This aligns with the
    C/POSIX standard for strtod and with ?NumericConstants.
  * as.data.frame(m, make.names=NA) now works correctly for a matrix
    m with NA's in row names.
  * The error message from &lt;POSIXlt&gt;[["hour"]] and similar now
    mentions *[[, "hour"]], as wished for in PR#17409 and proposed by
    Michael Chirico.
  * qbinom() and potentially qpois(), qnbinom(), no longer sometimes
    fail accurate inversion (of pbinom(), etc), thanks to Christopher
    Chang's report and patch in PR#18711.
  * The internal help server on Windows can again serve requests sent
    in quick succession, fixing a regression in R 4.4.0.
  * debugcall(&lt;S3Generic&gt;()) now also works when a corresponding
    S4-generic version is in the methods cache (PR#18143).
  * Package tools' toTitleCase(ch0) now returns character(0) when ch0
    is of zero length; fixing PR#18724, reported by David Hugh Jones.
  * R CMD check is no longer broken (without a check result and no
    explanation in 00check.log) for a package which declares an
    invalid VignetteBuilder in DESCRIPTION but has no vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1730376000">- CHANGES IN R 4.4.2:
  C-LEVEL FACILITIES:
  * The S-compatibility macros F77_COM and F77_COMDECL defined in
    header R_ext/RS.h are deprecated and will be removed shortly.  We
    could find no record of their use.
  BUG FIXES:
  * Mathlib function lgammacor(x) no longer warns about underflow to
    zero for large x.
  * Text widths and heights were incorrectly reported by the Quartz
    device if the drawing context didn't exist yet (typically when
    drawing off-screen to a window that is yet to appear, see
    PR#18591).
  * The Quartz device could segfault in cases where paths with spaces
    are used in the new glyph drawing API.  Thanks to Tomek
    Gieorgijewski (PR#18758).
  * On macOS in R CRAN builds, it is again possible to read
    little-endian UTF-16 text with a BOM from a connection using
    encoding="UTF-16".  Users building R from source should avoid
    using the system libiconv in macOS 14.1 and later.
  * methods' internal .requirePackage() now re-enables primitive
    method dispatch when needed; thanks to Ivan Krylov for
    demystifying CRAN package check failures on the R-devel mailing
    list.</changelog>
</package>
<package pkgid="bde9cba52c967e856a12a86e3b09a3b02241a94e50ceccd8b0d3331517624d8efd6c135766ca3e965f7fd0496e8e2af4135676654eac3c80f30e37acb62344a8" name="R-parallel" arch="x86_64">
  <version epoch="0" ver="4.4.2" rel="51.0.2.2.sr20241103"/>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1620302400">- To get in sync with d:l:R:autoCRAN the Matrix package's split
  in -devel was reversed.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339200">- improved spec file according to comments of dimstar in
  https://build.opensuse.org/request/show/892685</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339201">- CHANGES IN R 4.1.0:
  FUTURE DIRECTIONS:
  * It is planned that the 4.1.x series will be the last to support
    32-bit Windows, with production of binary packages for that
    series continuing until early 2023.
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Data set esoph in package datasets now provides the correct
    numbers of controls; previously it had the numbers of cases added
    to these.  (Reported by Alexander Fowler in PR#17964.)
  NEW FEATURES:
  * www.omegahat.net is no longer one of the repositories known by
    default to setRepositories().  (Nowadays it only provides source
    packages and is often unavailable.)
  * Function package_dependencies() (in package tools) can now use
    different dependency types for direct and recursive dependencies.
  * The checking of the size of tarball in R CMD check --as-cran
    &lt;pkg&gt; may be tweaked via the new environment variable
    _R_CHECK_CRAN_INCOMING_TARBALL_THRESHOLD_, as suggested in
    PR#17777 by Jan Gorecki.
  * Using c() to combine a factor with other factors now gives a
    factor, an ordered factor when combining ordered factors with
    identical levels.
  * apply() gains a simplify argument to allow disabling of
    simplification of results.
  * The format() method for class "ftable" gets a new option justify.
    (Suggested by Thomas Soeiro.)
  * New ...names() utility.  (Proposed by Neal Fultz in PR#17705.)
  * type.convert() now warns when its as.is argument is not
    specified, as the help file always said it _should_.  In that
    case, the default is changed to TRUE in line with its change in
    read.table() (related to stringsAsFactor) in R 4.0.0.
  * When printing list arrays, classed objects are now shown _via_
    their format() value if this is a short enough character string,
    or by giving the first elements of their class vector and their
    length.
  * capabilities() gets new entry "Rprof" which is TRUE when R has
    been configured with the equivalent of --enable-R-profiling (as
    it is by default).  (Related to Michael Orlitzky's report
    PR#17836.)
  * str(xS4) now also shows extraneous attributes of an S4 object
    xS4.
  * Rudimentary support for vi-style tags in rtags() and R CMD rtags
    has been added.  (Based on a patch from Neal Fultz in PR#17214.)
  * checkRdContents() is now exported from tools; it and also
    checkDocFiles() have a new option chkInternal allowing to check
    Rd files marked with keyword "internal" as well.  The latter can
    be activated for R CMD check via environment variable
    _R_CHECK_RD_INTERNAL_TOO_.
  * New functions numToBits() and numToInts() extend the raw
    conversion utilities to (double precision) numeric.
  * Functions URLencode() and URLdecode() in package utils now work
    on vectors of URIs.  (Based on patch from Bob Rudis submitted
    with PR#17873.)
  * path.expand() can expand ~user on most Unix-alikes even when
    readline is not in use.  It tries harder to expand ~, for example
    should environment variable HOME be unset.
  * For HTML help (both dynamic and static), Rd file links to help
    pages in external packages are now treated as references to
    topics rather than file names, and fall back to a file link only
    if the topic is not found in the target package. The earlier rule
    which prioritized file names over topics can be restored by
    setting the environment variable _R_HELP_LINKS_TO_TOPICS_ to a
    false value.
  * c() now removes NULL arguments before dispatching to methods,
    thus simplifying the implementation of c() methods, _but_ for
    back compatibility keeps NULL when it is the first argument.
    (From a report and patch proposal by Lionel Henry in PR#17900.)
  * Vectorize()'s result function's environment no longer keeps
    unneeded objects.
  * Function ...elt() now propagates visibility consistently with
    ..n.  (Thanks to Lionel Henry's PR#17905.)
  * capture.output() no longer uses non-standard evaluation to
    evaluate its arguments.  This makes evaluation of functions like
    parent.frame() more consistent.  (Thanks to Lionel Henry's
    PR#17907.)
  * packBits(bits, type="double") now works as inverse of
    numToBits().  (Thanks to Bill Dunlap's proposal in PR#17914.)
  * curlGetHeaders() has two new arguments, timeout to specify the
    timeout for that call (overriding getOption("timeout")) and TLS
    to specify the minimum TLS protocol version to be used for
    https:// URIs (_inter alia_ providing a means to check for sites
    using deprecated TLS versions 1.0 and 1.1).
  * For nls(), an optional constant scaleOffset may be added to the
    denominator of the relative offset convergence test for cases
    where the fit of a model is expected to be exact, thanks to a
    proposal by John Nash.  nls(*, trace=TRUE) now also shows the
    convergence criterion.
  * Numeric differentiation _via_ numericDeriv() gets new optional
    arguments eps and central, the latter for taking central divided
    differences.  The latter can be activated for nls() via
    nls.control(nDcentral = TRUE).
  * nls() now passes the trace and control arguments to getInitial(),
    notably for all self-starting models, so these can also be fit in
    zero-noise situations via a scaleOffset.  For this reason, the
    initial function of a selfStart model must now have ... in its
    argument list.
  * bquote(splice = TRUE) can now splice expression vectors with
    attributes: this makes it possible to splice the result of
    parse(keep.source = TRUE).  (Report and patch provided by Lionel
    Henry in PR#17869.)
  * textConnection() gets an optional name argument.
  * get(), exists(), and get0() now signal an error if the first
    argument has length greater than 1.  Previously additional
    elements were silently ignored.  (Suggested by Antoine Fabri on
    R-devel.)
  * R now provides a shorthand notation for creating functions, e.g.
    \(x) x + 1 is parsed as function(x) x + 1.
  * R now provides a simple native forward pipe syntax |&gt;.  The
    simple form of the forward pipe inserts the left-hand side as the
    first argument in the right-hand side call.  The pipe
    implementation as a syntax transformation was motivated by
    suggestions from Jim Hester and Lionel Henry.
  * all.equal(f, g) for functions now by default also compares their
    environment(.)s, notably via new all.equal method for class
    function.  Comparison of nls() fits, e.g., may now need
    all.equal(m1, m2, check.environment = FALSE).
  * .libPaths() gets a new option include.site, allowing to _not_
    include the site library.  (Thanks to Dario Strbenac's suggestion
    and Gabe Becker's PR#18016.)
  * Lithuanian translations are now available.  (Thanks to Rimantas
    Zakauskas.)
  * names() now works for DOTSXP objects.  On the other hand, in
    R-lang, the R language manual, we now warn against relying on the
    structure or even existence of such dot-dot-dot objects.
  * all.equal() no longer gives an error on DOTSXP objects.
  * capabilities("cairo") now applies only to the file-based devices
    as it is now possible (if very unusual) to build R with Cairo
    support for those but not for X11().
  * There is optional support for tracing the progress of
    loadNamespace() - see its help.
  * (Not Windows.)  l10n_info() reports an additional element, the
    name of the encoding as reported by the OS (which may differ from
    the encoding part (if any) of the result from
    Sys.getlocale("LC_CTYPE").
  * New function gregexec() which generalizes regexec() to find _all_
    disjoint matches and well as all substrings corresponding to
    parenthesized subexpressions of the given regular expression.
    (Contributed by Brodie Gaslam.)
  * New function charClass() in package utils to query the
    wide-character classification functions in use (such as
    iswprint).
  * The names of quantile()'s result no longer depend on the global
    getOption("digits"), but quantile() gets a new optional argument
    digits = 7 instead.
  * grep(), sub(), regexp and variants work considerably faster for
    long factors with few levels.  (Thanks to Michael Chirico's
    PR#18063.)
  * Provide grouping of x11() graphics windows within a window
    manager such as Gnome or Unity; thanks to a patch by Ivan Krylov
    posted to R-devel.
  * The split() method for class data.frame now allows the f argument
    to be specified as a formula.
  * sprintf now warns on arguments unused by the format string.
  * New palettes "Rocket" and "Mako" for hcl.colors() (approximating
    palettes of the same name from the 'viridisLite' package).
    Contributed by Achim Zeileis.
  * The base environment and its namespace are now locked (so one can
    no longer add bindings to these or remove from these).
  * Rterm handling of multi-byte characters has been improved,
    allowing use of such characters when supported by the current
    locale.
  * Rterm now accepts ALT+ +xxxxxxxx sequences to enter Unicode
    characters as hex digits.
  * Environment variable LC_ALL on Windows now takes precedence over
    LC_CTYPE and variables for other supported categories, matching
    the POSIX behaviour.
  * duplicated() and anyDuplicated() are now optimized for integer
    and real vectors that are known to be sorted via the ALTREP
    framework. Contributed by Gabriel Becker via PR#17993.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 14
    and so packages that provide graphics devices should be
    reinstalled.
  * Graphics devices should now specify deviceVersion to indicate
    what version of the graphics engine they support.
  * Graphics devices can now specify deviceClip.  If TRUE, the
    graphics engine will never perform any clipping of output itself.
    The clipping that the graphics engine does perform (for both
    canClip = TRUE and canClip = FALSE) has been improved to avoid
    producing unnecessary artifacts in clipped output.
  * The grid package now allows gpar(fill) to be a linearGradient(),
    a radialGradient(), or a pattern().  The viewport(clip) can now
    also be a grob, which defines a clipping path, and there is a new
    viewport(mask) that can also be a grob, which defines a mask.
    These new features are only supported so far on the Cairo-based
    graphics devices and on the pdf() device.
  * (Not Windows.)  A warning is given when a Cairo-based type is
    specified for a png(), jpeg(), tiff() or bmp() device but Cairo
    is unsupported (so type = "Xlib" is tried instead).
  * grSoftVersion() now reports the versions of FreeType and
    FontConfig if they are used directly (not _via_ Pango), as is
    most commonly done on macOS.
  C-LEVEL FACILITIES:
  * The _standalone_ libRmath math library and R's C API now provide
    log1pexp() again as documented, and gain log1mexp().
  INSTALLATION on a UNIX-ALIKE:
  * configure checks for a program pkgconf if program pkg-config is
    not found.  These are now only looked for on the path (like
    almost all other programs) so if needed specify a full path to
    the command in PKG_CONFIG, for example in file config.site.
  * C99 function iswblank is required - it was last seen missing ca
    2003 so the workaround has been removed.
  * There are new configure options --with-internal-iswxxxxx,
  - -with-internal-towlower and --with-internal-wcwidth which allows
    the system functions for wide-character classification,
    case-switching and width (wcwidth and wcswidth) to be replaced by
    internal ones.  The first has long been used on macOS, AIX (and
    Windows) but this enables it to be unselected there and selected
    for other platforms (it is the new default on Solaris).  The
    second is new in this version of R and is selected by default on
    macOS and Solaris.  The third has long been the default and
    remains so as it contains customizations for East Asian
    languages.
    System versions of these functions are often minimally
    implemented (sometimes only for ASCII characters) and may not
    cover the full range of Unicode points: for example Solaris (and
    Windows) only cover the Basic Multilingual Plane.
  * Cairo installations without X11 are more likely to be detected by
    configure, when the file-based Cairo graphics devices will be
    available but not X11(type = "cairo").
  * There is a new configure option --with-static-cairo which is the
    default on macOS.  This should be used when only static cairo
    (and where relevant, Pango) libraries are available.
  * Cairo-based graphics devices on platforms without Pango but with
    FreeType/FontConfig will make use of the latter for font
    selection.
  LINK-TIME OPTIMIZATION on a UNIX-ALIKE:
  * Configuring with flag --enable-lto=R now also uses LTO when
    installing the recommended packages.
  * R CMD INSTALL and R CMD SHLIB have a new flag --use-LTO to use
    LTO when compiling code, for use with R configured with
  - -enable-lto=R.  For R configured with --enable-lto, they have
    the new flag --no-use-LTO.
    Packages can opt in or out of LTO compilation _via_ a UseLTO
    field in the DESCRIPTION file.  (As usual this can be overridden
    by the command-line flags.)
  BUILDING R on Windows:
  * for GCC &gt;= 8, FC_LEN_T is defined in config.h and hence character
    lengths are passed from C to Fortran in _inter alia_ BLAS and
    LAPACK calls.
  * There is a new text file src/gnuwin32/README.compilation, which
    outlines how C/Fortran code compilation is organized and
    documents new features:
  * R can be built with Link-Time Optimization with a suitable
    compiler - doing so with GCC 9.2 showed several
    inconsistencies which have been corrected.
  * There is support for cross-compiling the C and Fortran code
    in R and standard packages on suitable (Linux) platforms.
    This is mainly intended to allow developers to test later
    versions of compilers - for example using GCC 9.2 or 10.x has
    detected issues that GCC 8.3 in Rtools40 does not.
  * There is experimental support for cross-building R packages
    with C, C++ and/or Fortran code.
  * The R installer can now be optionally built to support a single
    architecture (only 64-bit or only 32-bit).
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++14 where
    available (which it is on all currently checked platforms): if
    not (as before) C++11 is used if available otherwise C++ is not
    supported.
    Packages which specify C++11 will still be installed using C++11.
    C++14 compilers may give deprecation warnings, most often for
    std::random_shuffle (deprecated in C++14 and removed in C++17).
    Either specify C++11 (see 'Writing R Extensions') or modernize
    the code and if needed specify C++14.  The latter has been
    supported since R 3.4.0 so the package's DESCRIPTION would need
    to include something like
    Depends: R (&gt;= 3.4)
  PACKAGE INSTALLATION on Windows:
  * R CMD INSTALL and R CMD SHLIB make use of their flag --use-LTO
    when the LTO_OPT make macro is set in file etc/${R_ARCH}/Makeconf
    or in a personal/site Makevars file.  (For details see 'Writing R
    Extensions' SS4.5.)
    This provides a valuable check on code consistency.  It does work
    with GCC 8.3 as in Rtools40, but that does not detect everything
    the CRAN checks with current GCC do.
  PACKAGE INSTALLATION on macOS:
  * The default personal library directory on builds with
  - -enable-aqua (including CRAN builds) now differs by CPU type,
    one of
    ~/Library/R/x86_64/x.y/library
    ~/Library/R/arm64/x.y/library
    This uses the CPU type R (and hence the packages) were built for,
    so when a x86_64 build of R is run under Rosetta emulation on an
    arm64 Mac, the first is used.
  UTILITIES:
  * R CMD check can now scan package functions for bogus return
    statements, which were possibly intended as return() calls (wish
    of PR#17180, patch by Sebastian Meyer). This check can be
    activated via the new environment variable
    _R_CHECK_BOGUS_RETURN_, true for --as-cran.
  * R CMD build omits tarballs and binaries of previous builds from
    the top-level package directory.  (PR#17828, patch by Sebastian
    Meyer.)
  * R CMD check now runs sanity checks on the use of LazyData, for
    example that a data directory is present and that
    LazyDataCompression is not specified without LazyData and has a
    documented value.  For packages with large LazyData databases
    without specifying LazyDataCompression, there is a reference to
    the code given in 'Writing R Extensions' SS1.1.6 to test the
    choice of compression (as in all the CRAN packages tested a
    non-default method was preferred).
  * R CMD build removes LazyData and LazyDataCompression fields from
    the DESCRIPTION file of packages without a data directory.
  ENCODING-RELATED CHANGES:
  * The parser now treats \Unnnnnnnn escapes larger than the upper
    limit for Unicode points (\U10FFFF) as an error as they cannot be
    represented by valid UTF-8.
    Where such escapes are used for outputting non-printable
    (including unassigned) characters, 6 hex digits are used (rather
    than 8 with leading zeros).  For clarity, braces are used, for
    example \U{0effff}.
  * The parser now looks for non-ASCII spaces on Solaris (as
    previously on most other OSes).
  * There are warnings (including from the parser) on the use of
    unpaired surrogate Unicode points such as \uD834.  (These cannot
    be converted to valid UTF-8.)
  * Functions nchar(), tolower(), toupper() and chartr() and those
    using regular expressions have more support for inputs with a
    marked Latin-1 encoding.
  * The character-classification functions used (by default) to
    replace the system iswxxxxx functions on Windows, macOS and AIX
    have been updated to Unicode 13.0.0.
    The character-width tables have been updated to include new
    assignments in Unicode 13.0.0.
  * The code for evaluating default (extended) regular expressions
    now uses the same character-classification functions as the rest
    of R (previously they differed on Windows, macOS and AIX).
  * There is a build-time option to replace the system's
    wide-character wctrans C function by tables shipped with R: use
    configure option --with-internal-towlower or (on Windows)
  - DUSE_RI18N_CASE in CFLAGS when building R.  This may be needed
    to allow tolower() and toupper() to work with Unicode characters
    beyond the Basic Multilingual Plane where not supported by system
    functions (e.g. on Solaris where it is the new default).
  * R is more careful when truncating UTF-8 and other multi-byte
    strings that are too long to be printed, passed to the system or
    libraries or placed into an internal buffer.  Truncation will no
    longer produce incomplete multibyte characters.
  DEPRECATED AND DEFUNCT:
  * Function plclust() from the package stats and
    package.dependencies(), pkgDepends(), getDepList(),
    installFoundDepends(), and vignetteDepends() from package tools
    are defunct.
  * Defunct functions checkNEWS() and readNEWS() from package tools
    and CRAN.packages() from utils have been removed.
  * R CMD config CXXCPP is defunct (it was deprecated in R 3.6.2).
  * parallel::detectCores() drops support for Irix (retired in 2013).
  * The LINPACK argument to chol.default(), chol2inv(),
    solve.default() and svd() has been defunct since R 3.1.0.  It was
    silently ignored up to R 4.0.3 but now gives an error.
  * Subsetting/indexing, such as ddd[*] or ddd$x on a DOTSXP
    (dot-dot-dot) object ddd has been disabled; it worked by accident
    only and was undocumented.
  BUG FIXES:
  * Many more C-level allocations (mainly by malloc and strdup) are
    checked for success with suitable alternative actions.
  * Bug fix for replayPlot(); this was turning off graphics engine
    display list recording if a recorded plot was replayed in the
    same session.  The impact of the bug became visible if resize the
    device after replay OR if attempted another savePlot() after
    replay (empty display list means empty screen on resize or empty
    saved plot).
  * R CMD check etc now warn when a package exports non-existing S4
    classes or methods, also in case of no "methods" presence.
    (Reported by Alex Bertram; reproducible example and patch by
    Sebastian Meyer in PR#16662.)
  * boxplot() now also accepts calls for labels such as ylab, the
    same as plot().  (Reported by Marius Hofert.)
  * The help page for xtabs() now correctly states that addNA is
    setting na.action = na.pass among others.  (Reported as PR#17770
    by Thomas Soeiro.)
  * The R CMD check &lt;pkg&gt; gives a longer and more comprehensible
    message when DESCRIPTION misses dependencies, e.g., in Imports:.
    (Thanks to the contributors of PR#17179.)
  * update.default() now calls the generic update() on the formula to
    work correctly for models with extended formulas.  (As reported
    and suggested by Neal Fultz in PR#17865.)
  * The horizontal position of leaves in a dendrogram is now correct
    also with center = FALSE.  (PR#14938, patch from Sebastian
    Meyer.)
  * all.equal.POSIXt() no longer warns about and subsequently ignores
    inconsistent "tzone" attributes, but describes the difference in
    its return value (PR#17277).  This check can be disabled _via_
    the new argument check.tzone = FALSE as suggested by Sebastian
    Meyer.
  * as.POSIXct() now populates the "tzone" attribute from its tz
    argument when x is a logical vector consisting entirely of NA
    values.
  * x[[2^31]] &lt;- v now works.  (Thanks to the report and patch by
    Suharto Anggono in PR#17330.)
  * In log-scale graphics, axis() ticks and label positions are now
    computed more carefully and symmetrically in their range,
    typically providing _more_ ticks, fulfilling wishes in PR#17936.
    The change really corresponds to an improved axisTicks() (package
    grDevices), potentially influencing grid and lattice, for
    example.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now correct to at
    least five digits where it was catastrophically wrong,
    previously.
  * sum(df) and similar "Summary"- and "Math"-group member functions
    now work for data frames df with logical columns, notably also of
    zero rows.  (Reported to R-devel by Martin "b706".)
  * unsplit() had trouble with tibbles due to unsound use of rep(NA,
    len)-indexing, which should use NA_integer_ (Reported to R-devel
    by Mario Annau.)
  * pnorm(x, log.p = TRUE) underflows to -Inf slightly later.
  * show(&lt;hidden S4 generic&gt;) prints better and without quotes for
    non-hidden S4 generics.
  * read.table() and relatives treated an "NA" column name as missing
    when check.names = FALSE PR#18007.
  * Parsing strings containing UTF-16 surrogate pairs such as
    "\uD834\uDD1E" works better on some (uncommon) platforms.
    sprintf("%X", utf8ToInt("\uD834\uDD1E")) should now give "1D11E"
    on all platforms.
  * identical(x,y) is no longer true for differing DOTSXP objects,
    fixing PR#18032.
  * str() now works correctly for DOTSXP and related exotics, even
    when these are doomed.
    Additionally, it no longer fails for lists with a class and
    "irregular" method definitions such that e.g. lapply(*) will
    necessarily fail, as currently for different igraph objects.
  * Too long lines in environment files (e.g. Renviron) no longer
    crash R. This limit has been increased to 100,000 bytes.
    (PR#18001.)
  * There is a further workaround for FreeType giving incorrect
    italic font faces with cairo-based graphics devices on macOS.
  * add_datalist(*, force = TRUE) (from package tools) now actually
    updates an existing data/datalist file for new content.  (Thanks
    to a report and patch by Sebastian Meyer in PR#18048.)
  * cut.Date() and cut.POSIXt() could produce an empty last interval
    for breaks = "months" or breaks = "years".  (Reported as PR#18053
    by Christopher Carbone.)
  * Detection of the encoding of 'regular' macOS locales such as
    en_US (which is UTF-8) had been broken by a macOS change:
    fortunately these are now rarely used with en_US.UTF-8 being
    preferred.
  * sub() and gsub(pattern, repl, x, *) now keep attributes of x such
    as names() also when pattern is NA (PR#18079).
  * Time differences ("difftime" objects) get a replacement and a
    rep() method to keep "units" consistent.  (Thanks to a report and
    patch by Nicolas Bennett in PR#18066.)
  * The \RdOpts macro, setting defaults for \Sexpr options in an Rd
    file, had been ineffective since R 2.12.0: it now works again.
    (Thanks to a report and patch by Sebastian Meyer in PR#18073.)
  * mclapply and pvec no longer accidentally terminate parallel
    processes started before by mcparallel or related calls in
    package parallel (PR#18078).
  * grep and other functions for evaluating (extended) regular
    expressions handle in Unicode also strings not explicitly flagged
    UTF-8, but flagged native when running in UTF-8 locale.
  * Fixed a crash in fifo implementation on Windows (PR#18031).
  * Binary mode in fifo on Windows is now properly detected from
    argument open (PR#15600, PR#18031).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1622808000">- The line %{__install} -m 755 -d %{_infodir}
  no longer works in TW or Factory.
  But without that line it works everywhere. So this instruction
  was commented out of the spec file.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1628596800">- CHANGES IN R 4.1.1:
  NEW FEATURES:
  * require(pkg, quietly = TRUE) is quieter and in particular does
    not warn if the package is not found.
  DEPRECATED AND DEFUNCT:
  * Use of ftp:// URIs should be regarded as deprecated, with
    on-going support confined to method = "libcurl" and not routinely
    tested.  (Nowadays no major browser supports them.)
  * The non-default method = "internal" is deprecated for http:// and
    ftp:// URIs for both download.file and url.
  * On Windows, method = "wininet" is deprecated for http://,
    https:// and ftp:// URIs for both download.file and url.  (A
    warning is only given for ftp://.)
    For ftp:// URIs the default method is now "libcurl" if available
    (which it is on CRAN builds).
    method = "wininet" remains the default for http:// and https://
    URIs but if libcurl is available, using method = "libcurl" is
    preferred.
  INSTALLATION:
  * make check now works also without a LaTeX installation.  (Thanks
    to Sebastian Meyer's PR#18103.)
  BUG FIXES:
  * make check-devel works again in an R build configured with
  - -without-recommended-packages.
  * qnbinom(p, size, mu) for large size/mu is correct now in a range
    of cases (PR#18095); similarly for the (size, prob)
    parametrization of the negative binomial.  Also qpois() and
    qbinom() are better and or faster for extreme cases.  The
    underlying C code has been modularized and is common to all four
    cases of discrete distributions.
  * gap.axis is now part of the axis() arguments which are passed
    from bxp(), and hence boxplot().  (Thanks to Martin Smith's
    report and suggestions in PR#18109.)
  * .First and .Last can again be set from the site profile.
  * seq.int(from, to, *) and seq.default(..) now work better in large
    range cases where from-to is infinite where the two boundaries
    are finite.
  * all.equal(x,y) now returns TRUE correctly also when several
    entries of abs(x) and abs(y) are close to .Machine$double.xmax,
    the largest finite numeric.
  * model.frame() now clears the object bit when removing the class
    attribute of a value via na.action (PR#18100).
  * charClass() now works with multi-character strings on Windows
    (PR#18104, fixed by Bill Dunlap).
  * encodeString() on Solaris now works again in Latin-1 encoding on
    characters represented differently in UTF-8.  Support for
    surrogate pairs on Solaris has been improved.
  * file.show() on Windows now works with non-ASCII path names
    representable in the current native encoding (PR#18132).
  * Embedded R on Windows can now find R home directory via the
    registry even when installed only for the current user
    (PR#18135).
  * pretty(x) with finite x now returns finite values also in the
    case where the extreme x values are close in size to the maximal
    representable number .Machine$double.xmax.
    Also, it's been tweaked for very small ranges and when a boundary
    is close (or equal) to zero; e.g., pretty(c(0,1e-317)) no longer
    has negative numbers, currently still warning about a very small
    range, and pretty(2^-(1024 - 2^-1/(c(24,10)))) is more accurate.
  * The error message for not finding vignette files when weaving has
    correct file sizes now. (Thanks to Sebastian Meyer's PR#18154.)
  * dnbinom(20, &lt;large&gt;, 1) now correctly gives 0, and similar cases
    are more accurate with underflow precaution.  (Reported by Francisco Vera Alcivar in PR#18072.)</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635163200">- repaired https://bugzilla.suse.com/show_bug.cgi?id=1191380
  (rpmacros now go to rpmmacrodir)
- minor clean-ups in spec file</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635768000">- CHANGES IN R 4.1.2:
  C-LEVEL FACILITIES:
  * The workaround in headers R.h and Rmath.h (using namespace std;)
    for the Oracle Developer Studio compiler is no longer needed now
    C++11 is required so has been removed.  A couple more usages of
    log() (which should have been std::log()) with an int argument
    are reported on Solaris.
  * The undocumented limit of 4095 bytes on messages from the
    S-compatibility macros PROBLEM and MESSAGE is now documented and
    longer messages will be silently truncated rather than
    potentially causing segfaults.
  * If the R_NO_SEGV_HANDLER environment variable is non-empty, the
    signal handler for SEGV/ILL/BUS signals (which offers recovery
    user interface) is not set. This allows more reliable debugging
    of crashes that involve the console.
  DEPRECATED AND DEFUNCT:
  * The legacy S-compatibility macros PROBLEM, MESSAGE, ERROR, WARN,
    WARNING, RECOVER, ... are deprecated and will be hidden in R
    4.2.0. R's native interface of Rf_error and Rf_warning has long
    been preferred.
  BUG FIXES:
  * .mapply(F, dots, .) no longer segfaults when dots is not a list
    and uses match.fun(F) as always documented; reported by Andrew
    Simmons in PR#18164.
  * hist(&lt;Date&gt;, ...) and hist(&lt;POSIXt&gt;, ...)  no longer pass
    arguments for rect() (such as col and density) to axis().
    (Thanks to Sebastian Meyer's PR#18171.)
  * \Sexpr{ch} now preserves Encoding(ch). (Thanks to report and
    patch by Jeroen Ooms in PR#18152.)
  * Setting the RNG to "Marsaglia-Multicarry" e.g., by RNGkind(), now
    warns in more places, thanks to Andr'e Gillibert's report and
    patch in PR#18168.
  * gray(numeric(), alpha=1/2) no longer segfaults, fixing PR#18183,
    reported by Till Krenz.
  * Fixed dnbinom(x, size=&lt;very_small&gt;, .., log=TRUE) regression,
    reported by Martin Morgan.
  * as.Date.POSIXlt(x) now keeps names(x), thanks to Davis Vaughan's
    report and patch in PR#18188.
  * model.response() now strips an "AsIs" class typically, thanks to
    Duncan Murdoch's report and other discussants in PR#18190.
  * try() is considerably faster in case of an error and long call,
    as e.g., from some do.call().  Thanks to Alexander Kaever's
    suggestion posted to R-devel.
  * qqline(y = &lt;object&gt;) such as y=I(.), now works, see also
    PR#18190.
  * Non-integer mgp par() settings are now handled correctly in
    axis() and mtext(), thanks to Mikael Jagan and Duncan Murdoch's
    report and suggestion in PR#18194.
  * formatC(x) returns length zero character() now, rather than ""
    when x is of length zero, as documented, thanks to Davis
    Vaughan's post to R-devel.
  * removeSource(fn) now retains (other) attributes(fn).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1647000000">- CHANGES IN R 4.1.3:
  NEW FEATURES:
  * The default version of Bioconductor has been changed to 3.14.
    (This is used by setRepositories and the menus in GUIs.)
  UTILITIES:
  * R CMD check --as-cran has a workaround for a bug in versions of
    file up to at least 5.41 which mis-identify DBF files last
    changed in 2022 as executables.
  C-LEVEL FACILITIES:
  * The legacy S-compatibility macros SINGLE_* in R_ext/Constants.h
    (included by R.h) are deprecated and will be removed in R 4.2.0.
  BUG FIXES:
  * Initialization of self-starting nls() models with initialization
    functions following the pre-R-4.1.0 API (without the ...
    argument) works again for now, with a deprecation warning.
  * Fixed quoting of ~autodetect~ in Java setting defaults to avoid
    inadvertent user lookup due to leading ~, reported in PR#18231 by
    Harold Gutch.
  * substr(., start, stop) &lt;- v now treats _negative_ stop values
    correctly.  Reported with a patch in PR#18228 by Brodie Gaslam.
  * Subscripting an array x without dimnames by a
    length(dim(x))-column character matrix gave "random" non-sense,
    now an error; reported in PR#18244 by Mikael Jagan.
  * ...names() now matches names(list(...)) closely, fixing PR#18247.
  * all.equal(*, scale = s) now works as intended when length(s) &gt; 1,
    partly thanks to Michael Chirico's PR#18272.
  * print(x) for long vectors x now also works for named atomic
    vectors or lists and prints the correct number when reaching the
    getOption("max.print") limit; partly thanks to a report and
    proposal by Hugh Parsonage to the R-devel list.
  * all.equal(&lt;selfStart&gt;, *) no longer signals a deprecation
    warning.
  * reformulate(*, response=r) gives a helpful error message now when
    length(r) &gt; 1, thanks to Bill Dunlap's PR#18281.
  * Modifying globalCallingHandlers inside withCallingHandlers() now
    works or fails correctly, thanks to Henrik Bengtsson's PR#18257.
  * hist(&lt;Date&gt;, breaks = "days") and hist(&lt;POSIXt&gt;, breaks = "secs")
    no longer fail for inputs of length 1.
  * qbeta(.001, .9, .009) and similar cases now converge correctly
    thanks to Ben Bolker's report in PR#17746.
  * window(x, start, end) no longer wrongly signals "'start' cannot
    be after 'end'", fixing PR#17527 and PR#18291.
  * data() now checks that its (rarely used) list argument is a
    character vector - a couple of packages passed other types and
    gave incorrect results.
  * which() now checks its arr.ind argument is TRUE rather coercing
    to logical and taking the first element - which gave incorrect
    results in package code.
  * model.weights() and model.offset() more carefully extract their
    model components, thanks to Ben Bolker and Tim Taylor's R-devel
    post.
  * list.files(recursive = TRUE) now shows all broken symlinks
    (previously, some of them may have been omitted, PR#18296).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1650628800">- CHANGES IN R 4.2.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * The formula method of aggregate() now matches the generic in
    naming its first argument x (resolving PR#18299 by Thomas
    Soeiro).
    This means that calling aggregate() with a formula as a named
    first argument requires name formula in earlier versions of R and
    name x now, so portable code should not name the argument (code
    in many packages did).
  * Calling &amp;&amp; or || with either argument of length greater than one
    now gives a warning (which it is intended will become an error).
  * Calling if() or while() with a condition of length greater than
    one gives an error rather than a warning.  Consequently,
    environment variable _R_CHECK_LENGTH_1_CONDITION_ no longer has
    any effect.
  * Windows users should consult the WINDOWS section below for some
    profound changes including
  * Support for 32-bit builds has been dropped.
  * UTF-8 locales are used where available.
  * The default locations for the R installation and personal
    library folder have been changed.
    Thanks to Tomas Kalibera for months of work on the Windows port
    for this release.
  NEW FEATURES:
  * matrix(x, n, m) now warns in more cases where length(x) differs
    from n * m, as suggested by Abby Spurdle and Wolfgang Huber in
    Feb 2021 on the R-devel mailing list.
    This warning can be turned into an error by setting environment
    variable _R_CHECK_MATRIX_DATA_ to TRUE: R CMD check --as-cran
    does so unless it is already set.
  * Function file_test() in package utils gains tests for symlinks,
    readability and writability.
  * capabilities("libxml") is now false.
    The description of capabilities("http/ftp") now reflects that it
    refers to the default method, no longer the internal one.
  * simplify2array() gains an except argument for controlling the
    exceptions used by sapply().
  * Environment variables R_LIBS_USER and R_LIBS_SITE are both now
    set to the R system default if unset or empty, and can be set to
    NULL to indicate an empty list of user or site library
    directories.
  * The warning for axis()(-like) calls in cases of relatively small
    ranges (typically in log-scale situations) is slightly improved
    _and_ suppressed from explicit calls to .axisPars() as has always
    been the intention.
  * The contrasts setter function `contrasts&lt;-` gains an explicit
    default how.many = NULL rather than just using missing(how.many).
  * grid.pretty() gains a new optional argument n = 5.
  * There is a new function .pretty() with option bounds as a
    technical-utility version of pretty().  It and pretty() gain a
    new argument f.min with a better than back-compatible default.
  * Function grDevices::axisTicks() and related functions such as
    graphics::axis() work better, notably for the log scale; partly
    because of the pretty() improvements, but also because care is
    taken e.g., when ylim is finite but diff(ylim) is infinite.
  * nclass.FD() gains a digits option.
  * The R Mathlib internal C function bd0() (called indirectly from a
    dozen probability density and distribution functions such as
    dpois(), dbinom(), dgamma(), pgamma() _etc_) has been
    complemented by a more sophisticated and (mostly) more accurate C
    function ebd0(), currently called only by internal dpois_raw()
    improving accuracy for R level dpois() and potentially others
    calling it such as dnbinom(), dgamma() or pgamma().  (Thanks to
    Morten Welinder's PR#15628.)
  * write.ftable() gains sep = " " argument as suggested by Thomas
    Soeiro.
  * The names of the locale categories supported by R's
    Sys.getlocale() and Sys.setlocale() are now provided by variable
    .LC.categories in the base namespace.
  * The Date and POSIXt methods for hist() and the histogram method
    for plot() now also use the new default col = "lightgray" in
    consistency with the corresponding change to hist()'s default for
    R 4.0.0.
  * hist.default() gains new fuzz argument, and the histogram plot
    method no longer uses fractional axis ticks when displaying
    counts ("Frequency").
  * mapply() and hence Map() now also obey the "max-or-0-if-any"
    recycling rule, such that, e.g., Map(`+`, 1:3, 1[0]) is valid
    now.
  * as.character(&lt;obj&gt;) for "hexmode" or "octmode" objects now
    fulfils the important basic rule as.character(x)[j] ===
    as.character(x[j]).
  * The set utility functions, notably intersect() have been tweaked
    to be more consistent and symmetric in their two set arguments,
    also preserving a common mode.
  * substr(ch, start,end) &lt;- new now e.g., preserves names(ch); ditto
    for substring(), thanks to a patch from Brodie Gaslam.
  * plot(&lt;lm&gt;) gains a extend.ylim.f argument, in partial response to
    PR#15285; further PR#17784 is fixed thanks to several
    contributors and a patch by Elin Waring.  The Cook's dist
    contours get customizable via cook.col and cook.lty with a
    different default color and their legend is nicer by default and
    customizable via cook.legendChanges.
  * Attempting to subset an object that is not subsettable now
    signals an error of class notSubsettableError. The
    non-subsettable object is contained in the object field of the
    error condition.
  * Subscript-out-of-bounds errors are now signaled as errors of
    class subscriptOutOfBoundsError.
  * Stack-overflow errors are now signaled as errors inheriting from
    class stackOverflowError. See ?stackOverflowError for more
    details.
  * New partly experimental Sys.setLanguage() utility, solving the
    main problem of PR#18055.
  * gettext() and gettextf() get a new option trim = TRUE which when
    set to false allows translations for strings such as "Execution
    halted\n" typical for C code.
  * An experimental implementation of hash tables is now available.
    See ?hashtab for more details.
  * identical() gains a extptr.as.ref argument for requesting that
    external pointer objects be compared as reference objects.
  * reorder() gets an argument decreasing which it passes to sort()
    for level creation; based on the wish and patch by Thomas Soeiro
    in PR#18243.
  * as.vector() gains a data.frame method which returns a simple
    named list, also clearing a long standing 'FIXME' to enable
    as.vector(&lt;data.frame&gt;, mode="list").  This breaks code relying
    on as.vector(&lt;data.frame&gt;) to return the unchanged data frame.
  * legend() is now vectorized for arguments cex, x.intersp, and
    text.width.  The latter can now also be specified as a vector
    (one element for each column of the legend) or as NA for
    computing a proper column wise maximum value of strwidth(legend).
    The argument y.intersp can be specified as a vector with one
    entry for each row of the legend.
    legend() also gains new arguments title.cex and title.font.
    Thanks to Swetlana Herbrandt.
  * Deparsing no longer remaps attribute names dim, dimnames, levels,
    names and tsp to historical S-compatible names (which structure()
    maps back).
  * sample() and sample.int() have additional sanity checks on their
    size and n arguments.
    all.equal.numeric() gains a sanity check on its tolerance
    argument - calling all.equal(a, b, c) for three numeric vectors
    is a surprisingly common error.
    mean(na.rm =), rank(na.last =), barplot(legend.text =),
    boxplot(), contour(drawlabels =), polygon(border =) and
    methods::is(class2 =) have more robust sanity checks on their
    arguments.
    R CMD Rd2pdf (used by R CMD check) has a more robust sanity check
    on the format of \alias{} commands.
  * psigamma(x, deriv) for negative x now also works for deriv = 4
    and 5; their underlying C level dpsifn() is documented in
    'Writing R Extensions'.
  * The HTML help system now uses HTML5 (wish of PR#18149).
  * ks.test() now provides exact p-values also with ties and MC
    p-values in the two-sample (Smirnov) case.  By Torsten Hothorn.
  * ks.test() gains a formula interface, with y ~ 1 for the
    one-sample (Kolmogorov) test and y ~ group for the two-sample
    (Smirnov) test.  Contributed by Torsten Hothorn.
  * The return value from ks.test() now has class c("ks.test",
    "htest") - packages using try() need to take care to use
    inherits() and not == on the class.
  * New functions psmirnov(), qsmirnov() and rsmirnov() in package
    stats implementing the asymptotic and exact distributions of the
    two-sample Smirnov statistic.
  * iconv() now allows sub = "c99" to use C99-style escapes for UTF-8
    inputs which cannot be converted to encoding to.
  * In a forward pipe |&gt; expression it is now possible to use a named
    argument with the placeholder _ in the rhs call to specify where
    the lhs is to be inserted.  The placeholder can only appear once
    on the rhs.
  * The included LAPACK sources have been updated to version 3.10.0,
    except for the four Fortran 77 routines which 3.10.0 has
    re-implemented in Fortran 90 (where the older versions have been
    retained as the R build process does not support Fortran 90).
  * path.expand() and most other uses of tilde expansion now warn if
    a path would be too long if expanded.  (An exception is
    file.exists(), which silently returns false.)
  * trunc(&lt;Date&gt;, *) now supports units = "months" or "years" for
    consistency with the POSIXt method, thanks to Dirk Eddelbuettel's
    proposal in PR#18099.
  * list2DF() now checks that its arguments are of the same length,
    rather than use recycling.
  * The HTML help system has several new features: LaTeX-like math
    can be typeset using either KaTeX or MathJax, usage and example
    code is highlighted using Prism, and for dynamic help the output
    of examples and demos can be shown within the browser if the
    knitr package is installed. These features can be disabled by
    setting the environment variable _R_HELP_ENABLE_ENHANCED_HTML_ to
    a false value.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 15
    and so packages that provide graphics devices should be
    reinstalled.
  * The grid package now allows the user to specify a "vector" of
    pattern fills.  The fill argument to gpar() accepts a list of
    gradients and/or patterns and the functions linearGradient(),
    radialGradient(), and pattern() have a new group argument.
    Points grobs (data symbols) can now also have a pattern fill.
    The grobCoords() function now returns a more informative and
    complex result.
  * The grid package has new functions for drawing isolated groups:
    grid.group(), grid.define(), and grid.use().  These functions add
    compositing operators and affine transformations to R's graphics
    capabilities.
    The grid package also has new functions for stroking and filling
    paths: grid.stroke(), grid.fill(), and grid.fillStroke().
    A new function as.path() allows the user to specify the fill rule
    for a path that is to be used for clipping, stroking, or filling;
    available options are "winding" and "evenodd".  A new function
    as.mask() allows the user to specify the type of a mask;
    available options are "alpha" and "luminance".
    These new features are only supported so far (at most) on the
    Cairo-based graphics devices and on the pdf() device.
  * dev.capabilities() reports on device support for the new
    features.
  * par() now warns about unnamed non-character arguments to prevent
    misuse such as {usr &lt;- par("usr"); par(usr)}.
  INSTALLATION:
  * Facilities for accessing ftp:// sites are no longer tested
    (except _pro tem_ for curlGetHeaders()) as modern browsers have
    removed support.
  * R can now be built with DEFS = -DSTRICT_R_HEADERS .
  PACKAGE INSTALLATION:
  * R CMD INSTALL no longer tangles vignettes. This completes an R
    CMD build change in R 3.0.0 and affects packages built before R
    3.0.2. Such packages should be re-made with R CMD build to have
    the tangled R code of vignettes shipped with the tarball.
  * USE_FC_LEN_T will become the default: this uses the correct
    prototypes for Fortran BLAS/LAPACK routines called from C/C++,
    and requires adjustment of most such calls - see 'Writing R
    Extensions' SS6.6.2.  (This has been supported since R 3.6.2.)
  * Package installation speed for packages installed with
    keep.source has been improved. This resolve the issue reported by
    Ofek Shilon in PR#18236.
  UTILITIES:
  * R CMD check can optionally report files/directories left behind
    in home, /tmp (even though TMPDIR is set) and other directories.
    See the "R Internals" manual for details.
  * R CMD check now reports byte-compilation errors during
    installation.  These are not usually fatal but may result in
    parts of the package not being byte-compiled.
  * _R_CHECK_DEPENDS_ONLY_ can be applied selectively to examples,
    tests and/or vignettes in R CMD check: see the "R Internals"
    manual.
  * _R_CHECK_SRC_MINUS_W_IMPLICIT_ now defaults to true: recent
    versions of Apple clang on macOS have made implicit function
    declarations in C into a compilation error.
  * R CMD check --as-cran makes use of the environment variable
    AUTORECONF.  See the "R Internals" manual SS8 for further details.
  * R CMD check --use-valgrind also uses valgrind when re-building
    vignettes as some non-Sweave vignettes unhelpfully comment out
    all their code when R CMD check runs vignettes.
  * Errors in re-building vignettes (unless there are LaTeX errors)
    are reported by R CMD check as ERROR rather than WARNING when
    running vignettes has been skipped (as it frequently is in CRAN
    checks and by --as-cran).
  * R CMD Rd2pdf gains a --quiet option that is used by R CMD build
    when building the PDF package manual.
  * R CMD Rd2pdf now always runs LaTeX in batch mode, consistent with
    Texinfo &gt;= 6.7. The --batch option is ignored.
  * R CMD build and R CMD check now include the Rd file name and line
    numbers in the error message of an \Sexpr evaluation failure.
  * For packages using the \doi Rd macro (now an install-time \Sexpr)
    but no other dynamic Rd content, R CMD build now produces a
    smaller tarball and is considerably faster - skipping temporary
    package installation.
  C-LEVEL FACILITIES:
  * The non-API header R_ext/R-ftp-http.h is no longer provided, as
    the entry points it covered are now all defunct.
  * A number of non-API declarations and macro definitions have been
    moved from the installed header Rinternals.h to the internal
    header Defn.h. Packages that only use entry points and
    definitions documented to be part of the API as specified in
    'Writing R Extensions' SS6 should not be affected.
  * The macro USE_RINTERNALS no longer has any effect when compiling
    package code.  Packages which also use R_NO_REMAP will need to
    ensure that the remapped names are used for calls to API
    functions that were formerly also made available as macros.
  * The deprecated legacy S-compatibility macros PROBLEM, MESSAGE,
    ERROR, WARN, WARNING, RECOVER, ... are no longer defined in
    R_exts/RS.h (included by R.h).  Replace these by calls to
    Rf_error and Rf_warning (defined in header R_ext/Error.h included
    by R.h).
    Header R_ext/RS.h no longer includes R_ext/Error.h.
  * Header R_ext/Constants.h (included by R.h) when included from C++
    now includes the C++ header cfloat rather than the C header
    float.h (now possible as C++11 is required).
  * The legacy S-compatibility macros DOUBLE_* in R_ext/Constants.h
    (included by R.h) are deprecated.
  * The deprecated S-compatibility macros SINGLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * R_Calloc, R_Free and R_Realloc are preferred to their unprefixed
    forms and error messages now use the prefix. These forms were
    introduced in R 3.4.0 and are available even when
    STRICT_R_HEADERS is defined.
  * rmultinom has been documented in 'Writing R Extensions' SS6 so is
    now part of the R API.
  * Similarly, Rtanpi, called from R level tanpi() is now part of the
    R API.
  * The long-deprecated, undocumented and non-API entry point call_R
    is no longer declared in R_ext/RS.h (included by R.h).
  * The header S.h which has been unsupported since Jan 2016 has been
    removed.  Use R.h instead.
  DEPRECATED AND DEFUNCT:
  * The (non-default and deprecated) method = "internal" for
    download.file() and url() no longer supports http:// nor ftp://
    URIs.  (It is used only for file:// URIs.)
    On Windows, download.file(method = "wininet") no longer supports
    ftp:// URIs.  (It is no longer the default method, which is
    "libcurl" and does.)
    On Windows, the deprecated method = "wininet" now gives a warning
    for http:// and https:// URIs for both download.file() and url().
    (It is no longer the default method.)
  * On Windows, the command-line option --max-mem-size and
    environment variable R_MAX_MEM_SIZE are defunct.  The memory
    allocation limit was important for 32-bit builds, but these are
    no longer supported.
  * default.stringsAsFactors() is now formally deprecated, where that
    was only mentioned on its regular help page, previously.  So it
    now gives a warning if called.
  * unix.time() is defunct now; it had been deprecated since R 3.4.0.
  BUG FIXES:
  * Setting digits = 0 in format(), print.default() (and hence
    typically print()) or options() is again invalid.  Its behaviour
    was platform-dependent, and it is unclear what "zero significant
    digits" should mean (PR#18098).
  * Messages from C code in the cairo section of package grDevices
    are now also offered for translation, thanks to Michael Chirico's
    PR#18123.
  * mean(x) with finite x now is finite also without "long.double"
    capability.
  * R CMD Rd2pdf no longer leaves an empty build directory behind
    when it aborts due to an already existing output file.  (Thanks
    to Sebastian Meyer's PR#18141.)
  * density(x, weights = w, na.rm = TRUE) when anyNA(x) is true, now
    removes weights "in parallel" to x, fixing PR#18151, reported by
    Matthias Gondan.  Additionally, it gets a subdensity option.
  * Conversion of \Sexpr[]{&lt;expR&gt;} to LaTeX or HTML no longer
    produces long blocks of empty lines when &lt;expR&gt; itself contains
    several lines all producing empty output.  Thanks to a report and
    patch by Ivan Krylov posted to R-devel.
  * R CMD build no longer fails if a package vignette uses child
    documents and inst/doc exists.  (Thanks to Sebastian Meyer's
    PR#18156.)
  * When an R documentation ('help' source) file man/foo.Rd in a
    package has \donttest{..} examples with a syntax error, it is now
    signalled as ERROR and with correct line numbers relating to the
  * -Ex.R file, thanks to Duncan Murdoch and Sebastian Meyer's
    reports and patch proposals in PR#17501.
  * Improved determination of the correct translation domain in
    non-base packages, addressing the combination of PR#18092 and
    PR#17998 (#c6) with reports and _augmented_ patch #2904 by
    Suharto Anggono.
    Note that "R-base" is no longer the default domain e.g., for
    top-level calls to gettext(); rather translation needs explicit
    domain = * specification in such cases.
  * identical(attrib.as.set=FALSE) now works correctly with data
    frames with default row names (Thanks to Charlie Gao's PR#18179).
  * txtProgressBar() now enforces a non-zero width for argument char,
    without which no progress can be visible.
  * dimnames(table(d)) is more consistent in the case where d is a
    list with a single component, thanks to Thomas Soeiro's report to
    R-devel.
    Further, table(d1, d2) now gives an error when d1 and d2 are data
    frames as suggested by Thomas in PR#18224.
  * Fix for drawing semi-transparent lines and fills on the native
    Windows graphics device (PR#18219 and PR#16694).  Thanks to Nick
    Ray for helpful diagnosis on Bugzilla.
  * The deparser now wraps sub-expressions such as if(A) ..  with
    parentheses when needed; thanks to Duncan Murdoch's PR#18232 and
    Lionel Henry's patches there.
  * remove.packages() no longer tries to uninstall Priority: base
    packages, thanks to a report and suggestions by Colin Fay in
    PR#18227.
  * win.metafile() now has xpinch and ypinch arguments so that the
    user can override Windows' (potentially wrong) guess at device
    dimensions.
  * x[i] and x[[i]] for non-integer i should now behave in all cases
    as always documented: the index used is equivalent to
    as.integer(i) unless that would overflow where trunc(i) is used
    instead; thanks to Suharto Anggono's report and patch proposals
    in PR#17977.
  * asOneSidedFormula() now associates the resulting formula with the
    global environment rather than the evaluation environment created
    for the call.
  * &lt;bibentry&gt;$name now matches the field name case-insensitively,
    consistent with bibentry() creation and the replacement method.
  * cbind() failed to detect some length mismatches with a mixture of
    time-series and non-time-series inputs.
  * The default LaTeX style file Sweave.sty used by the RweaveLatex
    driver no longer loads the obsolete ae package; thanks to a
    report by Thomas Soeiro in PR#18271.  Furthermore, it now skips
    \usepackage[T1]{fontenc} for engines other than pdfTeX (if
    detected) or if the new [nofontenc] option is used.
  * smooth.spline() now stores its logical cv argument more safely,
    fixing a rare bug when printing, and also stores n.
  * smooth.spline(x,y,*) now computes the cv.crit statistic
    correctly, also when is.unsorted(x), fixing PR#18294.
  * The data.frame method of rbind() now warns when binding
    not-wholly-recycling vectors, by analogy to the default method
    (for matrices).
  * setAs() finds the correct class for name to when multiple
    packages define a class with that name. Thanks to Gabor Csardi
    for the report.
  * Fix for detaching a package when two classes of the same name are
    present in method signatures for the same generic. Thanks to
    Gabor Csardi for the report.
  * match.arg("", c("", "a", "B")) gives a better error message, in
    part from PR#17959, thanks to Elin Waring.
  * R CMD Sweave --clean no longer removes pre-existing files or
    subdirectories (PR#18242).
  * The quartz() device no longer splits polylines into subpaths.
    That has caused narrowly-spaced lines with many points to always
    look solid even when dashed line type was used due to dash phase
    restarts.
  * Deparsing constructs such as quote(1 + `!`(2) + 3) works again as
    before R 3.5.0, thanks to the report and patch in PR#18284 by
    Suharto Anggono.
  * as.list(f) for a factor f now keeps names(f), fixing PR#18309.
  * qbeta(.001, .9, .009) and analogous qf() calls now return a
    correct value instead of NaN or wrongly 1, all with a warning;
    thanks to the report by Ludger Goeminne in PR#18302.
  * plot.lm() failed to produce the plot of residuals vs.  factor
    levels (i.e., which=5 when leverages are constant) for models
    with character predictors (PR#17840).
  * interaction.plot(..., xtick = TRUE) misplaced the x-axis line
    (PR#18305).
  * Not strictly fixing a bug, format()ing and print()ing of
    non-finite Date and POSIXt values NaN and +/-Inf no longer show
    as NA but the respective string, e.g., Inf, for consistency with
    numeric vector's behaviour, fulfilling the wish of PR#18308.
  * R CMD check no longer runs test scripts generated from
    corresponding .Rin files twice and now signals an ERROR if
    processing an .Rin script fails.
  * tools::Rd2txt() used for plain-text help pages now renders \hrefs
    (if tools::Rd2txt_options(showURLs = TRUE)) and \urls with
    percent-encoding and standards-compliant delimiting style (angle
    brackets and no URL: prefix).  \email is now rendered with a
    mailto: prefix.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1655985600">- CHANGES IN R 4.2.1:
  NEW FEATURES:
  * New function utils::findCRANmirror() to find out if a CRAN mirror
    has been selected, otherwise fallback to the main site.  This
    behaves in the same way as tools::CRAN_package_db() and is
    intended for packages wishing to access CRAN for purposes other
    than installing packages.
    The need for this was shown by a day when the main CRAN website
    was offline and a dozen or so packages which had its URL
    hardcoded failed their checks.
  INSTALLATION on a UNIX-ALIKE:
  * The libraries searched for by --with-blas (without a value) now
    include BLIS (after OpenBLAS but before ATLAS).  And on macOS,
    the Accelerate framework (after ATLAS).  (This is patterned after
    the AX_BLAS macro from the Autoconf Archive.)
  * The included LAPACK sources have been updated to 3.10.1.
  UTILITIES:
  * The (full path to) the command tidy to be used for HTML
    validation can be set by environment variable R_TIDYCMD.
  * Setting environment variable _R_CHECK_RD_VALIDATE_RD2HTML_ to a
    false value will override R CMD check --as-cran and turn off HTML
    validation.  This provides a way to circumvent a problematic
    tidy.
    The 2006 version that ships with macOS is always skipped.
  C-LEVEL FACILITIES:
  * The undocumented legacy declarations of Sint, Sfloat, SINT_MAX
    and SINT_MIN in header R.h are deprecated.
  BUG FIXES:
  * fisher.test(d) no longer segfaults for "large" d; fixing PR#18336
    by preventing/detecting an integer overflow reliably.
  * tar(., files=*) now produces correctly the warning about invalid
    uid or gid of files, fixing PR#18344, reported by Martin Morgan.
  * tk_choose.files() with multi = FALSE misbehaved on paths
    containing spaces (PR#18334) (regression introduced in R 4.0.0).
  * sort(x, partial = ind, *) now works correctly notably for the
    non-default na.last = FALSE or TRUE, fixing PR#18335 reported by
    James Edwards.
  * Environment variable _R_CHECK_XREFS_REPOSITORIES_ is only used
    for checking .Rd cross-references in R CMD check (as documented)
    and not for other uses looking for a CRAN mirror.
  * The search for a CRAN mirror when checking packages now uses
    getOption("repos") if that specifies a CRAN mirror, even when it
    does not also specify all three Bioconductor repositories (as was
    previously required).
  * The HTML code generated by tools::Rd2HTML() has been improved to
    pass tidy 5.8.0.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1667217600">- CHANGES IN R 4.2.2:
  NEW FEATURES:
  * tools::Rdiff(useDiff = TRUE) checks for the presence of an
    external diff command and switches to useDiff = FALSE if none is
    found.  This allows R CMD Rdiff to always work.
  * On Windows, environment variable R_LIBCURL_SSL_REVOKE_BEST_EFFORT
    can be used to switch to only 'best-effort' SSL certificate
    revocation checks with the default "libcurl" download method.
    This reduces security, but may be needed for downloads to work
    with MITM proxies (PR#18379).
  * (macOS) The run-time check for libraries from XQuartz for X11 and
    Tcl/Tk no longer uses otool from the Apple Developer Tools
    (PR#18400).
  * The LaTeX style for producing the PDF manuals, Rd.sty, now loads
    the standard amsmath, amsfonts and amssymb packages for greater
    coverage of math commands in the Rd \eqn and \deqn macros.  The
    \mathscr LaTeX command is also provided (via the mathrsfs
    package, if available, or the amsfonts bundle otherwise),
    fulfilling the wish of PR#18398.
  * (Windows) The default format of readClipboard() and
    writeClipboard() has been changed to 13 (CF_UNICODETEXT).
  INSTALLATION on a UNIX-ALIKE:
  * The PDF manuals (if built) can be compacted by the new target
    make compact-pdf (at the top level or in directory doc/manual).
  * There is now configure support for LLVM clang 15 on Linux, which
    defaults to position-independent (PIE) executables whereas
    gfortran does not.
  * Many small changes to ease compilation (and suppress warnings)
    with LLVM clang 15.
  BUG FIXES:
  * Rscript -e would fail if stdin were closed (Reported by Henrik
    Bengtsson.)
  * qt(*, log.p=TRUE) in outer tails no longer produces NaN in its
    final steps, thus fixing PR#18360.
  * tools::Rd2latex() now escapes hashes and ampersands when writing
    URLs, fixing LaTeX errors with such URLs in \tabular.
  * When isGeneric(f, fdef=*) is used with mismatching names, the
    warning is better understandable; reported (with fix) in PR#18370
    by Gabe Becker.
  * poly(x, n) now works again (and is now documented) when x is a
    "Date" or "POSIXct" object, or of another class while fulfilling
    mode(x) == "numeric".  This also enables poly(x, *, raw=TRUE) for
    such variables.  Reported by Michael Chirico to R-devel.
  * write.table(), write.csv() and write.csv2() restore their
    numerical precision (internal equivalent of digits = 15) after an
    interrupt (PR#18384).
  * One can now read also byte FF from a clipboard connection
    (PR#18385).
  * source("") and source(character()) now give more helpful error
    messages.
  * R CMD check --as-cran set _R_CHECK_TIMINGS_ too late to have the
    intended effect.
  * as.POSIXlt(x) now also works with very large dates x, fixing
    PR#18401 reported by Hannes M"uhleisen.
  * Files can now be extracted even from very large zip archives
    (PR#18390, thanks to Martin Jakt).
  * Non-finite objects of class "POSIXlt" are now correctly coerced
    to classes "Date" and "POSIXct"; following up on the extension to
    format() them correctly.
  * Added methods for is.finite(), is.infinite() and is.nan() for
    "POSIXlt" date-time objects.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1678881600">- CHANGES IN R 4.2.3:
  C-LEVEL FACILITIES:
  * The definition of DL_FUNC in R_ext/Rdynload.h has been changed to
    be fully C-compliant.  This means that functions loaded _via_ for
    example R_GetCCallable need to be cast to an appropriate type if
    they have any arguments.
  * .Machine has a new element sizeof.time_t to identify old systems
    with a 32-bit type and hence a limited range of date-times (and
    limited support for dates millions of years from present).
  PACKAGE INSTALLATION:
  * (Windows) The default C++ standard had accidentally been left at
    C++11 when it was changed to C++14 on Unix.
  BUG FIXES:
  * As "POSIXlt" objects may be "partially filled" and their list
    components meant to be recycled, length() now is the length of
    the longest component.
  * as.POSIXlt.Date() could underflow for dates in the far past (more
    than half a million years BCE).
  * as.Date.POSIXlt(x) would return "1970-01-01" instead of NA in R
    4.2.2, e.g., for
    x &lt;- as.POSIXlt(c("2019-01-30","2001-1-1"))
    x$mon &lt;- c(0L, NA); as.Date(x)
  * R CMD check failed to apply enabled _R_CHECK_SUGGESTS_ONLY_ to
    examples and vignettes (regression in R 4.2.0).
  * R CMD check did not re-build vignettes in separate processes by
    default (regression in R 4.2.0).
  * Running examples from HTML documentation now restores previous
    knitr settings and options (PR#18420).
  * Quartz: fonts are now located using Core Graphics API instead of
    deprecated ATS which is no longer supported in the macOS 13 SDK
    (PR#18426).  This also addresses an issue where the currently
    used font in the Quartz device context was not correctly
    retained.
  * (Windows) Math symbols in text drawing functions are again
    rendered correctly (PR#18440).  This fixes a regression in R
    4.2.1 caused by a fix in PR#18382 which uncovered an issue in
    GraphApp due to which the symbol charset was not used with TT
    Symbol font face.
  * (Windows) Installing a package with a src/Makefile.{win,ucrt}
    file includes ~/.R/Makevars.win64 in the search for user
    makevars, as documented in "R Installation and Administration"
    and done for packages with a src/Makevars.{win,ucrt} file.
  * format(&lt;POSIXlt_w/_unbalanced_sec&gt;, "....%OS&lt;n&gt;") with n &gt; 0 no
    longer accidentally uses the unbalanced seconds, thanks to
    Suharto Anggono's report (including patch) in PR#18448.
  * solve.default(a, b) works around issues with some versions of
    LAPACK when a contains NA or NaN values.
  * When UseMethod() cannot dispatch, it no longer segfaults
    producing the error message in case of a long class(), thanks to
    Joris Vankerschaver's report (including patch) in PR#18447.
  * When example(foo, ..) produces graphics on an interactive device
    it needs to open itself, it now leaves devAskNewPage() unchanged
    even when it was FALSE, thus fixing a 14 years old '&lt;FIXME&gt;'.
  * packageDescription() again catches errors from encoding
    conversions. This also fixes broken packageVersion() in C locale
    on systems where iconv does not support transliteration.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1681128000">- add patch to build with libcurl &gt;= 8</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1682078400">- CHANGES IN R 4.3.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Calling &amp;&amp; or || with LHS or (if evaluated) RHS of length greater
    than one is now always an error, with a report of the form
    'length = 4' in coercion to 'logical(1)'
    Environment variable _R_CHECK_LENGTH_1_LOGIC2_ no longer has any
    effect.
  NEW FEATURES:
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.10.1.  (This caused some platform-dependent
    changes to package check output.)  And then to the sources from
    LAPACK version 3.11.0 (with changes only to double complex
    subroutines).
  * The included LAPACK sources have been updated to include the four
    Fortran 90 routines rather than their Fortran 77 predecessors.
    This may give some different signs in SVDs or
    eigendecompositions..  (This completes the transition to LAPACK
    3.10.x begun in R 4.2.0.)
  * The LAPACK sources have been updated to version 3.11.0.  (No new
    subroutines have been added, so this almost entirely bug fixes:
    Those fixes do affect some computations with NaNs, including R's
    NA.)
  * The parser now signals _classed_ errors, notably in case of the
    pipe operator |&gt;.  The error object and message now give line and
    column numbers, mostly as proposed and provided by Duncan Murdoch
    in PR#18328.
  * toeplitz() is now generalized for asymmetric cases, with a
    toeplitz2() variant.
  * xy.coords() and xyz.coords() and consequently, e.g., plot(x,y,
    log = "y") now signal a _classed_ warning about negative values
    of y (where log(.) is NA).  Such a warning can be specifically
    suppressed or caught otherwise.
  * Regular expression functions now check more thoroughly whether
    their inputs are valid strings (in their encoding, e.g. in
    UTF-8).
  * The performance of grep(), sub(), gsub() and strsplit() has been
    improved, particularly with perl = TRUE and fixed = TRUE.  Use of
    useBytes = TRUE for performance reasons should no longer be
    needed and is discouraged: it may lead to incorrect results.
  * apropos() gains an argument dot_internals which is used by the
    completion (help(rcompgen)) engine to also see base internals
    such as .POSIXct().
  * Support in tools::Rdiff() for comparing uncompressed PDF files is
    further reduced - see its help page.
  * qqplot(x, y, ...) gains conf.level and conf.args arguments for
    computing and plotting a confidence band for the treatment
    function transforming the distribution of x into the distribution
    of y (Switzer, 1976, _Biometrika_). Contributed by Torsten
    Hothorn.
  * Performance of package_dependencies() has been improved for cases
    when the number of dependencies is large.
  * Strings newly created by gsub(), sub() and strsplit(), when any
    of the inputs is marked as "bytes", are also marked as "bytes".
    This reduces the risk of creating invalid strings and accidental
    substitution of bytes deemed invalid.
  * Support for readLines(encoding = "bytes") has been added to allow
    processing special text files byte-by-byte, without creating
    invalid strings.
  * iconv(from = "") now takes into account any declared encoding of
    the input elements and uses it in preference to the native
    encoding.  This reduces the risk of accidental creation of
    invalid strings, particularly when different elements of the
    input have different encoding (including "bytes").
  * Package repositories in getOption("repos") are now initialized
    from the repositories file when utils is loaded (if not already
    set, e.g., in .Rprofile).  (From a report and patch proposal by
    Gabriel Becker in PR#18405.)
  * compactPDF() gets a verbose option.
  * type.convert() and hence read.table() get new option tryLogical =
    TRUE with back compatible default.  When set to false, converts
    "F" or "T" columns to character.
  * Added new unit prefixes "R" and "Q" for abbreviating
    (unrealistically large) sizes beyond 10^{27} in standard = "SI",
    thanks to Henrik Bengtsson's PR#18435.
  * as.data.frame()'s default method now also works fine with atomic
    objects inheriting from classes such as "roman", "octmode" and
    "hexmode", such fulfilling the wish of PR#18421, by Benjamin
    Feakins.
  * The as.data.frame.vector() utility now errors for wrong-length
    row.names.  It warned for almost six years, with "Will be an
    error!".
  * sessionInfo() now also contains La_version() and reports codepage
    and timezone when relevant, in both print() and toLatex() methods
    which also get new option tzone for displaying timezone
    information when locale = FALSE.
  * New function R_compiled_by() reports the C and Fortran compilers
    used to build R, if known.
  * predict(&lt;lm&gt;, newdata = *) no longer unnecessarily creates an
    offset of all 0s.
  * solve() for complex inputs now uses argument tol and by default
    checks for 'computational singularity' (as it long has done for
    numeric inputs).
  * predict(&lt;rank-deficient lm&gt;, newdata=*) now obeys a new argument
    rankdeficient, with new default "warnif", warning only if there
    are non-estimable cases in newdata.  Other options include
    rankdeficient = "NA", predicting NA for non-estimable newdata
    cases.  This addresses PR#15072 by Russ Lenth and is based on his
    original proposal and discussions in PR#16158 also by David Firth
    and Elin Waring.  Still somewhat experimental.
  * Rgui console implementation now works better with the NVDA screen
    reader when the full blinking cursor is selected.  The underlying
    improvements in cursor handling may help also other screen
    readers on Windows.
  * The drop-field control in GraphApp can now be left with the TAB
    key and all controls can be navigated in the reverse order using
    the Shift+TAB key, improving accessibility of the Rgui
    configuration editor.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now fully accurate
    (instead of to "only" minimally five digits).
  * demo(error.catching) now also shows off withWarnings() and
    tryCatchWEMs().
  * As an experimental feature the placeholder _ can now also be used
    in the rhs of a forward pipe |&gt; expression as the first argument
    in an extraction call, such as _$coef. More generally, it can be
    used as the head of a chain of extractions, such as _$coef[[2]].
  * Spaces in the environment variable used to choose the R session's
    temporary directory (TMPDIR, TMP and TEMP are tried in turn) are
    now fatal.  (On Windows the 'short path' version of the path is
    tried and used if that does not contain a space.)
  * all.equal.numeric() gets a new optional switch giveErr to return
    the numeric error as attribute.  Relatedly,
    stopifnot(all.equal&lt;some&gt;(a, b, ..)) is as "smart" now, as
    stopifnot(all.equal(....)) has been already, thus allowing
    customized all.equal&lt;Some&gt;() wrappers.
  * R on Windows is now able to work with path names longer than 260
    characters when these are enabled in the system (requires at
    least Windows 10 version 1607).  Packages should be updated to
    work with long paths as well, instead of assuming PATH_MAX to be
    the maximum length.  Custom front-ends and applications embedding
    R need to update their manifests if they wish to allow this
    feature.  See
    &lt;https://blog.r-project.org/2023/03/07/path-length-limit-on-windows&gt;
    for more information.
  * 'Object not found' and 'Missing argument' errors now give a more
    accurate error context. Patch provided by Lionel Henry in
    PR#18241.
  * The @ operator is now an S3 generic. Based on contributions by
    Tomasz Kalinowski in PR#18482.
  * New generic chooseOpsMethod() provides a mechanism for objects to
    resolve cases where two suitable methods are found for an Ops
    Group Generic. This supports experimenting with alternative
    object systems. Based on contributions by Tomasz Kalinowski in
    PR#18484.
  * inherits(x, what) now accepts values other than a simple
    character vector for argument what. A new generic, nameOfClass(),
    is called to resolve the class name from what. This supports
    experimenting with alternative object systems. Based on
    contributions by Tomasz Kalinowski in PR#18485.
  * Detection of BLAS/LAPACK in use (sessionInfo()) with FlexiBLAS
    now reports the current backend.
  * The "data.frame" method for subset() now warns about extraneous
    arguments, typically catching the use of = instead of == in the
    subset expression.
  * Calling a:b when numeric a or b is longer than one may now be
    made into an error by setting environment variable
    _R_CHECK_LENGTH_COLON_ to a true value, along the proposal in
    PR#18419 by Henrik Bengtsson.
  * density(x, weights = *) now warns if automatic bandwidth
    selection happens without using weights; new optional warnWbw may
    suppress the warning.  Prompted by Christoph Dalitz' PR#18490 and
    its discussants.
  * rm(list = *) is faster and more readable thanks to Kevin Ushey's
    PR#18492.
  * The plot.lm() function no longer produces a normal Q-Q plot for
    GLMs. Instead it plots a half-normal Q-Q plot of the absolute
    value of the standardized deviance residuals.
  * The print() method for class "summary.glm" no longer shows
    summary statistics for the deviance residuals by default.  Its
    optional argument show.residuals can be used to show them if
    required.
  * The tapply() function now accepts a data frame as its X argument,
    and allows INDEX to be a formula in that case. by.data.frame()
    similarly allows INDICES to be a formula.
  * The performance of df[j] &lt;- value (including for missing j) and
    write.table(df) has been improved for data frames df with a large
    number of columns.  (Thanks to Gabriel Becker's PR#18500,
    PR#18503 and discussants, prompted by a report from Toby Dylan
    Hocking on the R-devel mailing list.)
  * The matrix multiply operator %*% is now an S3 generic, belonging
    to new group generic matrixOps.  From Tomasz Kalinowski's
    contribution in PR#18483.
  * New function array2DF() to convert arrays to data frames,
    particularly useful for the list arrays created by tapply().
  DATES and TIMES:
  * On platforms where (non-UTC) datetimes before 1902 (or before
    1900 as with system functions on recent macOS) are guessed by
    extrapolating time zones from 1902-2037, there is a warning at
    the first use of extrapolation in a session.  (As all time zones
    post 2037 are extrapolation, we do not warn on those.)
  * (Platforms using --with-internal-tzone, including Windows and by
    default macOS). How years are printed in dates or date-times can
    be controlled by environment variable R_PAD_YEARS_BY_ZERO.  The
    default remains to pad to 4 digits by zeroes, but setting value
    no gives no padding (as used by default by glibc).
  * strftime() tries harder to determine the offset for the "%z"
    format, and succeeds on the mainstream R platforms.
  * strftime() has a limit of 2048 bytes on the string produced -
    attempting to exceed this is an error.  (Previously it silently
    truncated at 255 bytes.)
  * sessionInfo() records (and by default prints) the system time
    zone as part of the locale information.  Also, the source
    (system/internal) of the date-time conversion and printing
    functions.
  * Objects of class "POSIXlt" created in this version of R always
    have 11 components: component zone is always set, and component
    gmtoff is set for times in UTC and usually set on the (almost
    all) platforms which have C-level support, otherwise is NA.
  * There are comprehensive validity checks on the structure of
    objects of class "POSIXlt" when converting (including formatting
    and printing).  (This avoids mis-conversions of hand-crafted
    objects.)
  * There is some support for using the native date-time routines on
    macOS: this is only viable on recent versions (e.g. 12.6 and 13)
    and does get wrong some historical changes (before 1900, during
    WWII).  Use of --with-internal-tzone remains the default.
  * as.POSIXct(&lt;numeric&gt;) and as.POSIXlt(.) (without specifying
    origin) now work.  So does as.Date(&lt;numeric&gt;).
  * as.Date.POSIXct(., tz) now treats several tz values, notably
    "GMT" as equivalent to "UTC", proposed and improved by Michael
    Chirico and Joshua Ulrich in PR#17674.
  * Experimental balancePOSIXlt() utility allows using "ragged" and
    or out-of-range "POSIXlt" objects more correctly, e.g., in
    subsetting and subassignments.  Such objects are now documented.
    More experimentally, a "POSIXlt" object may have an attribute
    "balanced" indicating if it is known to be filled or fully
    balanced.
  * Functions axis.Date() and axis.POSIXct() are rewritten to gain
    better default tick locations and better default formats by using
    prettyDate(). Thanks to Swetlana Herbrandt.
  * The mapping of Windows' names for time zones to IANA's 'Olson'
    names has been updated.  When ICU is available (it is by
    default), it is used to get a mapping for the current region set
    in Windows.  This can be overridden by setting environment
    variable TZ to the desired Olson name - see OlsonNames() for
    those currently available.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 16
    and so packages that provide graphics devices should be
    reinstalled.
  * The grDevices and grid packages have new functions for rendering
    typeset glyphs, primarily: grDevices::glyphInfo() and
    grid::grid.glyph().
    Rendering of typeset glyphs is only supported so far on the
    Cairo-based graphics devices and on the pdf() and quartz()
    devices.
  * The defined behaviour for "clear" and "source" compositing
    operators (via grid::grid.group()) has been changed (to align
    better with simple interpretation of original Porter-Duff
    definitions).
  * Support for gradients, patterns, clipping paths, masks, groups,
    compositing operators, and affine transformations has been added
    to the quartz() device.
  INSTALLATION on a UNIX-ALIKE:
  * A system installation of generic LAPACK 3.10.0 or later will be
    preferred to the version in the R sources.
    configure option --with-lapack=no (equivalently --without-lapack)
    forces compilation of the internal LAPACK sources.
    If --with-lapack is not specified, a system liblapack is looked
    for and used if it reports version 3.10.0 or later and does not
    contain BLAS routines.
    Packages using LAPACK will need to be reinstalled if this changes
    to using an external library.
  * On aarch64 Linux platforms using GCC, configure now defaults to
  - fPIC (instead of -fpic), as desired in PR#18326.
  * configure now checks conversion of datetimes between POSIXlt and
    POSIXct around year 2020.  Failure (which has been seen on
    platforms missing tzdata) is fatal.
  * If configure option --with-valgrind-instrumentation is given
    value 1 or 2, option --with-system-valgrind-headers is now the
    default and ignored (with a warning).  It is highly recommended
    that the system headers are installed alongside valgrind: they
    are part of its packaging on some Linux distributions and
    packaged separately (e.g. in the valgrind-devel RPM) on others.
    configure will give a warning if they are not found.
    The system headers will be required in a future release of R to
    build with valgrind instrumentation.
  * libcurl 8.x is now accepted by configure: despite a change in
    major version number it changes neither API nor ABI.
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools43, an update of the Rtools42 toolchain.  It is
    based on gcc 12 and newer versions of MinGW-W64, binutils and
    libraries.  At this time R-devel can still be built using
    Rtools42 without changes, but when R-devel is installed via the
    installer, it will by default look for Rtools43.
  * Old make targets rsync-extsoft and 32-bit ones that are no longer
    needed have been removed.
  * Default builds (including for packages) no longer select C99.
    Thus the C standard used is the default for the compiler, which
    for the toolchain in Rtools43 is C17.  (This is consistent with
    Unix builds.)
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++17 where
    available (which it is on all currently checked platforms): if
    not C++14 or C++11 is used if available otherwise C++ is not
    supported.
  * USE_FC_LEN_T is the default: this uses the correct
    (compiler-dependent) prototypes for Fortran BLAS/LAPACK routines
    called from C/C++, and requires adjustment of many such calls -
    see 'Writing R Extensions' SS6.6.1.
  * There is initial support for C++23 as several compilers are now
    supporting -std=c++23 or -std=c++2b or similar.  As for C++20,
    there no additional configure checks for C++23 features beyond a
    check that the compiler reports a __cplusplus value greater than
    that in the C++20 standard.  C++ feature tests should be used.
  * There is support for a package to indicate the version of the C
    standard which should be used to compile it, and for the
    installing user to specify this.  In most cases R defaults to the
    C compiler's default standard which is C17 (a `bug-fix' of C11) -
    earlier versions of R or compilers may have defaulted to C99.
    Current options are:
    USE_C17 Use a standard that is at most C17.  The intention is to
    allow legacy packages to still be installed when later C
    standards become the default, including packages using new
    keywords as identifiers or with K&amp;R-style function
    declarations.  This will use C17 if available, falling back
    to C11.
    USE_C90 Use the C90 (aka C89) standard.  (As that standard did
    not require compilers to identify that version, all we can
    verify is that the compiler does not claim to be using a
    later standard.  It may accept C99 features - for example
    clang accepts // to make comments.)
    USE_C99 Use the C99 standard. This should be rarely needed - it
    avoids the few new features of C11/C17 which can be useful if
    a package assumes them if C17 is specified and they are not
    implemented.
    USE_C23 Use C23 (or in future, later).  Compiler/library support
    for C23 is still being implemented, but LLVM clang from
    15.0.0 and the upcoming GCC 13 have quite extensive support.
    These can be specified as part of the SystemRequirements field in
    the package's DESCRIPTION file or _via_ options --use-C17 and so
    on of R CMD INSTALL and R CMD SHLIB.
    For further details see "Writing R Extensions" SS1.2.5.
  * (Windows) A src/Makefile.ucrt or src/Makefile.win file is now
    included after R_HOME/etcR_ARCH/Makeconf and so no longer needs
    to include that file itself.  Installation of a package with such
    a file now uses a site Makevars file in the same way as a package
    with a src/Makevars.win file would.
  * configure is now passed crucial variables such as CC and CFLAGS
    in its environment, as many packages were not setting them (as
    documented in 'Writing R Extensions' SS1.2).
    This has most effect where configure is used to compile parts of
    the package - most often by cmake or libtool which obfuscate the
    actual compile commands used.
    Also used for configure.win and configure.ucrt on Windows.
  FORTRAN FLAGS:
  * The flag -fno-optimize-sibling-calls is no longer forced for
    gfortran 7 and later.  It should no longer be needed now using
    'hidden' character-length arguments when calling BLAS/LAPACK
    routines from C/C++ is the default even for packages.  (Unless
    perhaps packages call Fortran code from C/C++ without using R's
    headers and without allowing for these arguments.)
  C-LEVEL FACILITIES:
  * The deprecated S-compatibility macros DOUBLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * The deprecated legacy typedefs of Sint and Sfloat in header R.h
    are no longer defined, and that header no longer includes header
    limits.h from C nor climits from C++.
  * New macro CAD5R() is provided in Rinternals.h and used in a few
    places in the R sources.
  * ALTREP now supports VECSXP vectors. Contributed by Gabor Csardi
    in PR#17620.
  * The Rcomplex definition (in header R_ext/Complex.h) has been
    extended to prevent possible mis-compilation when interfacing
    with Fortran (PR#18430).  The new definition causes compiler
    warnings with static initializers such as {1, 2}, which can be
    changed to {.r=1, .i=2}.
    Using the new definition from C++ depends on compiler extensions
    supporting C features that have not been incorporated into the
    C++ standards but are available in g++ and clang++: this may
    result in C++ compiler warnings but these have been worked around
    for recent versions of common compilers (GCC, Apple/LLVM clang,
    Intel).
    It is intended to change the inclusion of header R_ext/Complex.h
    by other R headers, so C/C++ code files which make use of
    Rcomplex should include that header explicitly.
  UTILITIES:
  * R CMD check does more checking of package .Rd files, warning
    about invalid email addresses and (some) invalid URIs and noting
    empty \item labels in description lists.
  * R CMD check now also reports problems when reading package news
    in md (file NEWS.md) and (optionally) plain text (file NEWS)
    formats.
  * _R_CHECK_TIMINGS_ defaults to a value from the environment even
    for R CMD check --as-cran; this allows for exceptionally fast or
    slow platforms.
    It now applies to checking PDF and HTML versions of the manuals,
    and 'checking CRAN incoming feasibility'.
  * R CMD check can optionally (but included in --as-cran) check
    whether HTML math rendering _via_ KaTeX works for the package .Rd
    files.
  * Non-interactive debugger invocations can be trapped by setting
    the environment variable _R_CHECK_BROWSER_NONINTERACTIVE_ to a
    true value.  This is enabled by R CMD check --as-cran to detect
    the use of leftover browser() statements in the package.
  * The use of sprintf and vsprintf from C/C++ has been deprecated in
    macOS 13 and is a known security risk.  R CMD check now reports
    (on all platforms) if their use is found in compiled code:
    replace by snprintf or vsnprintf respectively. [*NB:* whether
    such calls get compiled into the package is platform-dependent.]
  * Where recorded at installation, R CMD check reports the C and
    Fortran compilers used to build R.
    It reports the OS in use (if known, as given by osVersion) as
    well as that R was built for.
    It notes if a C++ standard was specified which is older than the
    current default: many packages have used C++11 to mean 'not
    C++98' - as C++11 is the minimum supported since R 4.0.0, that
    specification can probably be removed.
  * R CMD INSTALL reports the compilers (and on macOS, the SDK) used,
    and this is copied to the output of R CMD check.
    Where a C++ standard is specified, it is reported.
  * R CMD check's 'checking compilation flags in Makevars' has been
    relaxed to accept the use of flags such as -std=f2008 in
    PKG_FFLAGS.
  * tools::buildVignettes() has a new argument skip, which is used by
    R CMD check to skip (and note) vignettes with unavailable
    \VignetteDepends (PR#18318).
  * New generic .AtNames() added to enable class-specific completions
    after @. The formerly internal function findMatches() is now
    exported, mainly for use in methods for .DollarNames() and
    .AtNames().
  DEPRECATED AND DEFUNCT:
  * default.stringsAsFactors() is defunct.
  * Calling as.data.frame.&lt;class&gt;() directly (for 12 atomic classes)
    is going to be formally deprecated, currently activated by
    setting the environment variable
    _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ to non-empty, which also
    happens in R CMD check --as-cran.
  BUG FIXES:
  * Hashed environments with sizes less than 5 can now grow.
    (Reported to R-devel by Duncan Garmonsway.)
  * as.character(&lt;Rd&gt;, deparse = TRUE) failed to re-escape curly
    braces in LaTeX-like text.  (Reported by Hadley Wickham in
    PR#18324.)
  * library() now passes its lib.loc argument when requiring Depends
    packages; reported (with fix) in PR#18331 by Mikael Jagan.
  * R CMD Stangle: improved message about 'Output' files.
  * head(x, n) and tail(x, n) now signal an error if n is not
    numeric, instead of incidentally "working" sometimes returning
    all of x.  Reported and discussed by Colin Fay, in PR#18357.
  * The "lm" method for summary() now gives the correct F-statistic
    when the model contains an offset.  Reported in PR#18008.
  * C() and `contrasts&lt;-`() now preserve factor level names when
    given a function object (as opposed a function name which did
    preserve names). Reported in PR#17616.
  * c(a = 1, 2)[[]] no longer matches 2 but rather signals a
    _classed_ error.  Reported and analysed by Davis Vaughan in
    PR#18367, a duplicate of PR#18004, by Jan Meis et al.  For
    consistency, NULL[[]] is also erroneous now.  x[[]] &lt;- v gives an
    error of the same class "MissingSubscriptError".
  * The relist() function of utils now supports NULL elements in the
    skeleton (PR#15854).
  * ordered(levels = *) (missing x) now works analogously to factor(,
    ordered=TRUE); reported (with fix) by Achim Zeileis in PR#18389.
  * User-defined Rd macro definitions can now span multiple lines,
    thanks to a patch from Duncan Murdoch. Previously, the Rd parser
    silently ignored everything after the first line.
  * Plain-text help (tools::Rd2txt()) now preserves an initial blank
    line for text following description list items.
  * tools::Rd2HTML() and tools::Rd2latex() no longer split \arguments
    and \value lists at Rd comments.
  * tools::Rd2latex() now correctly handles optional text outside
    \items of argument lists as well as bracketed text at the
    beginning of sections, e.g., \value{[NULL]}.
  * as.character(&lt;POSIXt&gt;) now behaves more in line with the methods
    for atomic vectors such as numbers, and is no longer influenced
    by options().  Ditto for as.character(&lt;Date&gt;).  The
    as.character() method gets arguments digits and OutDec with
    defaults _not_ depending on options().  Use of as.character(*,
    format = .) now warns.
  * Similarly, the as.character.hexmode() and *.octmode() methods
    also behave as good citizen methods and back compatibility option
    keepStr = TRUE.
  * The as.POSIXlt(&lt;POSIXlt&gt;) and as.POSIXct(&lt;POSIXct&gt;) default
    methods now do obey their tz argument, also in this case.
  * as.POSIXlt(&lt;Date&gt;) now does apply a tz (time zone) argument, as
    does as.POSIXct(); partly suggested by Roland Fuss on the R-devel
    mailing list.
  * as.Date.POSIXlt(x) now also works when the list components are of
    unequal length, aka "partially filled" or "ragged".
  * expand.model.frame() looked up variables in the wrong environment
    when applied to models fitted without data.  Reported in
    PR#18414.
  * time() now (also) uses the ts.eps = getOption("ts.eps") argument
    and thus by default rounds values very close to the start (or
    end) of a year.  Based on a proposal by Andre"i V. Kostyrka on
    R-help.
  * Printing of a factanal() result with just one factor and sort =
    TRUE now works regularly, fixing PR#17863 by Timothy Bates,
    thanks to the 'R Contributors' working group.
  * Printing 0-length objects of class "factor", "roman", "hexmode",
    "octmode", "person", "bibentry", or "citation" now prints
    something better, one of which fixes PR#18422, reported by
    Benjamin Feakins.
  * Sys.timezone() queries timedatectl only if systemd is loaded;
    addressing a report by Jan Gorecki in PR#17421.
  * The formula method of cor.test() had scoping problems when
    environment(formula) was not the calling environment; reported
    with a patch proposal by Mao Kobayashi in PR#18439.
  * attach() of an environment with active bindings now preserves the
    active bindings.  Reported by Kevin Ushey in PR#18425.
  * BLAS detection now works also with system-provided libraries not
    available as regular files.  This fixes detection of the
    Accelerate framework on macOS since Big Sur.  Reported by David
    Novgorodsky.
  * download.file() gives a helpful error message in case of an
    invalid download.file.method option, thanks to Colin Fay's report
    in PR#18455.
  * Sporadic crashes of Rterm when using completion have been fixed.
  * Rprof() is now more reliable.  A livelock in thread
    initialization with too short sampling interval has been fixed on
    macOS.  A deadlock in using the C runtime has been fixed on
    Windows.  A potential deadlock has been prevented on Unix.
  * Cursor placement in Rgui now works even after a fixed-width font
    is selected.
  * Mandatory options (options()) are now set on startup so that
    saving and restoring them always works (PR#18372).
  * Package installation, R CMD INSTALL or install.packages(*), now
    parses each of the &lt;pkg&gt;/R/*.R files individually instead of
    first concatenating and then parse()ing the large resulting file.
    This allows parser or syntax errors to be diagnosed with correct
    file names and line numbers, thanks to Simon Dedman's report and
    Bill Dunlap's patch in PR#17859.
    This _does_ require syntactically self contained R source files
    now, fixing another inadvertent bug.
  * predict.lm(&lt;model with offset&gt;) now finds the offset in the
    correct environment, thanks to Andr'e Gillibert's report and patch
    in PR#18456.
  * getInitial(&lt;formula&gt;) now finds the selfStart model in the
    correct environment.  (Reported by Ivan Krylov in PR#18368.)
  * Fix for possible segfault when using recently-added graphics
    features, such as gradients, clipping paths, masks, and groups
    with pdf(file=NULL).
  * class(m) &lt;- class(m) no longer changes a matrix m by adding a
    class _attribute_.
  * packageDate(pkg) now only warns once if there is no pkg.
  * When ts() creates a multivariate time series, "mts", it also
    inherits from "array" now, and is.mts() is documented _and_
    stricter.
  * Rd2txt() now preserves line breaks of \verb Rd content and from
    duplicated \cr.  The former also fixes the rendering of verbatim
    output from Rd \Sexpr in plain-text help.
  * uniroot(f, interval) should no longer wrongly converge _outside_
    the interval in some cases where abs(f(x)) == Inf for an x at the
    interval boundary, thanks to posts by Ben Bolker and Serguei
    Sokol on R-devel.
  * Vectorized alpha handling in palette functions such as in gray(),
    rainbow(), or hcl.colors() works correctly now, thanks to Achim
    Zeileis' report and patch in PR#18476.
  * Formatting and print()ing of bibentry objects has dropped the
    deprecated citation.bibtex.max argument, such that the bibtex
    argument's default for print.bibentry() depends directly on the
    citation.bibtex.max option, whereas in format.bibentry() the
    option no longer applies.
  * Attempting to use a character string naming a foreign function
    entry point in a foreign function call in a package will now
    signal an error if the packages has called R_forceSymbols to
    specify that symbols must be used.
  * An error in table() could permanently set options(warn=2)
    promoting all subsequent warnings to errors.
  * The sigma() function gave misleading results for binary GLMs.  A
    new method for objects of class "glm" returns the square root of
    the estimate of the dispersion parameter using the same
    calculation as summary.glm().
  * bs() and ns() in the (typical) case of automatic knot
    construction, when some of the supposedly inner knots coincide
    with boundary knots, now moves them inside (with a warning),
    building on PR#18442 by Ben Bolker.
  * R CMD on Windows now skips the site profile with --no-site-file
    and --vanilla even when R_PROFILE is set (PR#18512, from Kevin
    Ushey).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1686916800">- CHANGES IN R 4.3.1:
  C-LEVEL FACILITIES:
  * The C-level API version of R's integrate(), Rdqags() in Applic.h,
    now returns the correct number of integrand evaluations neval,
    fixing PR#18515 reported and diagnosed by Stephen Wade.
  * The C prototypes for LAPACK calls dspgv and dtptrs in
    R_exts/Lapack.h had one too many and one too few character length
    arguments - but this has not caused any known issues. To get the
    corrected prototypes, include
    [#]include &lt;Rconfig.h&gt; // for PR18534fixed
    [#]ifdef PR18534fixed
    [#] define usePR18534fix 1
    [#]endif
    [#]include &lt;R_exts/Lapack.h&gt;
    in your C/C++ code (PR#18534).
  INSTALLATION:
  * Many of the checks of esoteric Internet operations and those
    using unreliable external sites have been moved to a new target
    that is not run by default and primarily intended for the core
    developers.  To run them use
    cd tests; make test-Internet-dev
  BUG FIXES:
  * .S3methods(), typically called from methods(), again marks
    methods from package base as visible.
    Also, the visibility of non-base methods is again determined by
    the method's presence in search().
  * tools::Rdiff() is now more robust against invalid strings, fixing
    installation tests on Windows without Rtools installed
    (PR#18530).
  * Fix (new) bug in hcl.colors(2, *), by Achim Zeileis (PR#18523).
  * head(., &lt;illegal&gt;) and tail(..) now produce more useful "Error in
    ...." error messages, fixing PR#18362.
  * Package code syntax on Windows is checked in UTF-8 when UTF-8 is
    the native encoding.
  * na.contiguous(x) now also returns the first run, when it is at
    the beginning and there is a later one of the same length;
    reported to R-devel, including a fix, by Georgi Boshnakov.
    Further, by default, it modifies only an existing attr(*,"tsp")
    but otherwise no longer sets one.
  * chol(&lt;not pos.def&gt;, pivot = &lt;T|F&gt;) now gives a correct error or
    warning message (depending on pivot), thanks to Mikael Jagan's
    (PR#18541).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1699012800">- CHANGES IN R 4.3.2:
  NEW FEATURES:
  * The default initialization of the "repos" option from the
    repositories file at startup can be skipped by setting
    environment variable R_REPOSITORIES to NULL such that
    getOption("repos") is empty if not set elsewhere.
  * qr.X() is now an implicit S4 generic in methods.
  * iconv(to = "ASCII//TRANSLIT") is emulated using substitution on
    platforms which do not support it (notably Alpine Linux).  This
    should give a human-readable conversion in ASCII on all platforms
    (rather than NA_character_).
  * trans3d() gains options continuous and verbose addressing the
    problem of possible "wrap around" when projecting too long
    curves, as reported by Achim Zeileis in PR#18537.
  * tools::showNonASCII() has been rewritten to work better on macOS
    14 (which has a changed implementation of iconv()).
  * tiff(type = "quartz") (the default on macOS) now warns if
    compression is specified: it continues to be ignored.
  INSTALLATION on a UNIX-ALIKE:
  * There is some support for building with Intel's LLVM-based
    compilers on x86_64 Linux, such as (C) icx, (C++) ipcx and
    (Fortran) ifx from oneAPI 2023.x.y.
  * There is support for using LLVM's flang-new as the Fortran
    compiler from LLVM 16.0.x (preferably 17.0.0 or later).
  UTILITIES:
  * R CMD check reports the use of the Fortran 90 random number
    generator RANDOM_NUMBER() and the subroutines to initialize it.
    'Writing R Extensions' has example code to use R's RNGs from
    Fortran.
  BUG FIXES:
  * substr(x, n, L) &lt;- cc now works (more) correctly for multibyte
    UTF-8 strings x when L &gt; nchar(x), thanks to a report and patch
    by 'Architect 95'.
  * contrib.url(character()) now returns 0-length character() as
    documented, which also avoids spurious warnings from
    available.packages() et al. in the edge case of an empty vector
    of repository URLs.
  * readChar(., 4e8) no longer fails, thanks to Kodi Arfer's report
    (PR#18557).
  * lapply(&lt;list&gt;, as.data.frame) no longer warns falsely for some
    base vector components.
  * Communication between parent and child processes in the multicore
    part of parallel could fail on platforms that do not support an
    arbitrarily large payload in system functions read()/write() on
    pipes (seen on macOS where a restriction to INT_MAX bytes is
    documented, without doing a partial read unlike Linux). The
    payload is now split into 1Gb chunks to avoid that problem.
    (PR#18571)
  * qqplot(x,y, conf.level=.) gives better confidence bounds when
    length(x) != length(y), thanks to Alexander Ploner's report and
    patch proposal (PR#18557).
  * norm(&lt;0-length&gt;, "2") now gives zero instead of an error, as all
    the other norm types, thanks to Mikael Jagan's PR#18542.
  * Build-stage Rd macros \packageAuthor and \packageMaintainer now
    process Authors@R, fixing NA results when the package DESCRIPTION
    omits Author and Maintainer fields.
  * Formatting and printing complex numbers could give things like
    0.1683-0i because of rounding error: -0i is now replaced by +0i.
  * postscript() refused to accept a title comment containing the
    letter "W" (PR#18599).
  * isoreg(c(1,Inf)) signals an error instead of segfaulting, fixing
    PR#18603.
  * tiff(type = "Xlib") was only outputting the last page of
    multi-page plots.
  * tools::latexToUtf8() again knows about \~{n} and other letters
    with tilde, fixing a regression in R 4.3.0, and about \^{i} as an
    alternative to \^{\i} (similarly with other accents).
    Furthermore, LaTeX codes for accented I letters are now correctly
    converted, also fixing related mistakes in
    tools::encoded_text_to_latex().
  * tar(*, tar = "internal") no longer creates out-of-spec tar files
    in the very rare case of user or group names longer than 32
    bytes, fixing PR#17871 with thanks to Ivan Krylov.
  * When using the "internal" timezone datetime code, adding a
    fraction of a second no longer adds one second, fixing PR#16856
    from a patch by Ivan Krylov.
  * tools::checkRd() no longer produces spurious notes about
    "unnecessary braces" from multi-line Rd results of \Sexpr macros.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1709208000">- CHANGES IN R 4.3.3:
  NEW FEATURES:
  * iconv() now fixes up variant encoding names such as "utf8"
    case-insensitively.
  DEPRECATED AND DEFUNCT:
  * The legacy encoding = "MacRoman" is deprecated in pdf() and
    postscript(): support was incomplete in earlier versions of R.
  BUG FIXES:
  * Arguments are now properly forwarded to methods on S4 generics
    with ... in the middle of their formal arguments. This was broken
    for the case when a method introduced an argument but did not
    include ... in its own formals. Thanks to Herv'e Pag`es for the
    report PR#18538.
  * Some invalid file arguments to pictex(), postscript() and xfig()
    opened a file called NA rather than throw an error.  These
    included postscript(NULL) (which some people expected to work
    like pdf(NULL)).
  * Passing filename = NA to svg(), cairo_pdf(), cairo_ps() or the
    Cairo-based bitmap devices opened a file called NA: it now throws
    an error.
  * quartz(file = NA) opened a file called NA, including when used as
    a Quartz-based bitmap device.  It now gives an error.
  * rank(&lt;long vector&gt;) now works, fixing PR#18617, thanks to Ilia
    Kats.
  * seq.int() did not adequately check its length.out argument.
  * match(&lt;POSIXct&gt;, .) is correct again for differing time zones,
    ditto for "POSIXlt", fixing PR#18618 reported by Bastian Klein.
  * drop.terms(*, dropx = &lt;0-length&gt;) now works, fixing PR#18563 as
    proposed by Mikael Jagan.
  * drop.terms(*) keeps + offset(.) terms when it should, PR#18565,
    and drop.terms() no longer makes up a response, PR#18566, fixing
    both bugs thanks to Mikael Jagan.
  * getS3method("t", "test") no longer finds the t.test() function,
    fixing PR#18627.
  * pdf() and postscript() support for the documented Adobe encodings
    "Greek" and "Cyrilllic" was missing (although the corresponding
    Windows' codepages could be used).
  * Computations of glyph metric information for pdf() and
    postscript() did not take into account that transliteration could
    replace one character by two or more (only seen on macOS 14) and
    typically warned that the information was not known.
  * rank(x) no longer overflows during integer addition, when
    computing rank average for largish but not-yet long vector x,
    fixing PR#18630, thanks to Ilia Kats.
  * list.files() on Windows now returns also files with names longer
    that 260 bytes (the Windows limit is 260 characters).
    Previously, some file names particularly with 'East Asian'
    characters were omitted.
  * cov2cor(&lt;0 x 0&gt;) now works, fixing PR#18423 thanks to Mikael
    Jagan and Elin Waring.
  * cov2cor(&lt;negative diagonal&gt;) and similar now give one warning
    instead of two, with better wording, fixing PR#18424 thanks to
    Mikael Jagan.
  * tools:: startDynamicHelp() now ensures port is in proper range,
    fixing PR#18645.
  * pbeta(x, a,b) is correct now for x=0 or 1 in the boundary cases
    where a or b or both are 0, fixing PR#18672 thanks to Michael
    Fay.
  * pmatch(x, table) for large table, also called for data frame row
    selection, dfrm[nm, ], is now interruptible, fixing PR#18656.
  * predict(&lt;rank-deficient lm&gt;, newdata=*) fix computing of nbasis,
    see Russ Lenth's comment 29 in PR#16158.
  * Added a work-around for a bug in macOS 14.3.1 and higher which
    prevents R plots in the Quartz Cocoa device from updating on
    screen.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1713960000">- CHANGES IN R 4.4.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Startup banners, R --version, sessionInfo() and R CMD check no
    longer report (64-bit) as part of the platform as this is almost
    universal - the increasingly rare 32-bit platforms will still
    report (32-bit).
    On Windows, ditto for window titles.
  * is.atomic(NULL) now returns FALSE, as NULL is not an atomic
    vector.  Strict back-compatibility would replace is.atomic(foo)
    by (is.null(foo) || is.atomic(foo)) but should happen only
    sparingly.
  NEW FEATURES:
  * The confint() methods for "glm" and "nls" objects have been
    copied to the stats package.  Previously, they were stubs which
    called versions in package MASS. The MASS namespace is no longer
    loaded if you invoke (say) confint(glmfit).  Further, the "glm"
    method for profile() and the plot() and pairs() methods for class
    "profile" have been copied from MASS to stats.  (profile.nls()
    and plot.profile.nls() were already in stats.)
  * The confint() and profile methods for "glm" objects have gained a
    possibility to do profiling based on the Rao Score statistic in
    addition to the default Likelihood Ratio. This is controlled by a
    new test = argument.
  * The pairs() method for "profile" objects has been extended with a
    which = argument to allow plotting only a subset of the
    parameters.
  * The "glm" method for anova() computes test statistics and
    p-values by default, using a chi-squared test or an F test
    depending on whether the dispersion is fixed or free.  Test
    statistics can be suppressed by giving argument test a false
    logical value.
  * In setRepositories() the repositories can be set using their
    names via name = instead of index ind =.
  * methods() and .S3methods() gain a all.names option for the (rare)
    case where functions starting with a . should be included.
  * Serializations can now be interrupted (e.g., by Ctrl-C on a
    Unix-alike) if they take too long, e.g., from save.image(),
    thanks to suggestions by Ivan Krylov and others on R-devel.
  * New startup option --max-connections to set the maximum number of
    simultaneous connections for the session.  Defaults to 128 as
    before: allowed values up to 4096 (but resource limits may in
    practice restrict to smaller values).
  * R on Windows (since Windows 10 2004) now uses the new Segment
    Heap allocator. This may improve performance of some
    memory-intensive applications.
  * When R packages are built, typically by R CMD build &lt;pkg&gt;, the
    new --user=&lt;build_user&gt; option overrides the (internally
    determined) user name, currently Sys.info()["user"] or LOGNAME.
    This is a (modified) fulfillment of Will Landau's suggestion in
    PR#17530.
  * tools::testInstalledBasic() gets new optional arguments outDir
    and testSrcdir, e.g., allowing to use it in a &lt;builddir&gt; !=
    &lt;srcdir&gt; setup, and in standard "binary" Windows installation
  * if* a source tests/ folder is present.
  * range(&lt;DT_with_Inf&gt;, finite = TRUE) now work for objects of class
    "Date", "POSIXct", and "POSIXlt" with infinite entries,
    analogously to range.default(), as proposed by Davis Vaughan on
    R-devel.  Other range()-methods can make use of new function
    .rangeNum().
  * New .internalGenerics object complementing .S3PrimitiveGenerics,
    for documentation and low-level book-keeping.
  * grid() now invisibly returns the x- and y- coordinates at which
    the grid-lines were drawn.
  * norm(., type) now also works for complex matrices.
  * kappa(., exact = TRUE, norm = *) now works for all norms and also
    for complex matrices.  In symmetric / triangular cases, the new
    argument uplo = "U" | "L" allows the upper or lower triangular
    part to be specified.
  * memDecompress(type = "unknown") recognizes compression in the
    default 'zlib' format as used by memCompress(type = "gzip").
  * memCompress() and memDecompress() will use the libdeflate library
    (&lt;https://github.com/ebiggers/libdeflate&gt;) if installed.  This
    uses the same type of compression for type = "gzip" but is 1.5-2x
    faster than the system libz library on some common platforms: the
    speed-up may depend on the library version.
  * diff() for objects of class "Date", "POSIXct", and "POSIXlt"
    accepts a units argument passed via ....
  * Dynamic help now does a much better job of rendering package
    DESCRIPTION metadata.
  * Rprof() gains an event argument and support for elapsed (real)
    time profiling on Unix (PR#18076).
  * filled.contour() gains a key.border argument.
  * tools::update_pkg_po() gets arguments pot_make and mo_make for
    _not_ re-making the corresponding files, and additionally a
    verbose argument.
  * Hexadecimal string colour specifications are now accepted in
    short form, so, for example, we can use "#123", which is
    equivalent to "#112233".
    Thanks to MikeFC for the original idea and Ella Kaye, Malcolm
    Barrett, George Stagg, and Hanne Oberman for the patch.
  * Plain-text help shows \var markup by angle brackets.
  * The new experimental primitive function declare() is intended to
    eventually allow information about R code to be communicated to
    the interpreter, compiler, and code analysis tools. The syntax
    for declarations is still being developed.
  * Functions psmirnov(), qsmirnov() and rsmirnov() in package stats
    have had argument two.sided renamed to alternative, to take into
    account that the permutation distributions of the one-sided
    statistics can be different in the case of ties.  Consequence of
    PR#18582.
  * sort() is now an implicit S4 generic in methods.
  * Formatting and printing, format(z), print(z), of complex vectors
    z no longer zap relatively small real or imaginary parts to zero,
    fixing PR#16752.  This is an API change, as it was documented
    previously to round real and imaginary parts together on purpose,
    producing nicer looking output.  As mentioned, e.g. in the PR,
    this change is compatible with many other "R-like" programming
    environments.
    We have simplified the internal code and now basically format the
    real and imaginary parts independently of each other.
  * New experimental functions Tailcall() and Exec() to support
    writing stack-space-efficient recursive functions.
  * Where characters are attempted to be plotted by pdf(),
    postscript() and xfig() which are not in the selected 8-bit
    character set (most often Latin-1) and the R session is using a
    UTF-8 locale, the warning messages will show the UTF-8 character
    rather than its bytes and one dot will be substituted per
    character rather than per byte.  (Platforms whose iconv() does
    transliteration silently plot the transliteration.)
    In a UTF-8 locale some transliterations are now done with a
    warning (e.g., dashes and Unicode minus to hyphen, ligatures are
    expanded, permille (‰) is replaced by o/oo), although the OS may
    have got there first.  These are warnings as they will continue
    to be replaced by dots in earlier versions of R.
  * The matrix multiplication functions crossprod() and tcrossprod()
    are now also primitive and S3 generic, as %*% had become in R
    4.3.0.
  * source() and example() have a new optional argument catch.aborts
    which allows continued evaluation of the R code after an error.
  * The non-Quartz tiff() devices allow additional types of
    compression if supported by the platform's libtiff library.
  * The list of base and recommended package names is now provided by
    tools::standard_package_names().
  * cairo_pdf() and cairo_ps() default to onefile = TRUE to closer
    match pdf() and postscript().
  * New option catch.script.errors provides a documented way to catch
    errors and then continue in non-interactive use.
  * L %||% R newly in base is an expressive idiom for the phrases
    if(!is.null(L)) L else R or if(is.null(L)) R else L.
  * The return value from warnings() now always inherits from
    "warnings" as documented, now also in the case of no warnings
    where it previously returned NULL.
  * as.complex("1i") now returns 0 + 1i instead of NA with a warning.
  * z &lt;- c(NA, 1i) now keeps the imaginary part Im(z[1]) == 0, no
    longer coercing to NA_complex_.  Similarly, cumsum(z) correctly
    sums real and imaginary parts separately, i.e., without
    "crosstalk" in case of NAs.
  * On Alpine Linux iconv() now maps "latin2", "latin-2", "latin9"
    and "latin-9" to encoding names the OS knows about
    (case-insensitively).
  * iconv(sub = "Unicode") now always zero-pads to four (hex) digits,
    rather than to 4 or 8.  (This seems to have become the convention
    once Unicode restricted the number of Unicode points to 2^21 - 1
    and so will never need more than 6 digits.)
  * NCOL(NULL) now returns 0 instead of 1, for consistency with
    cbind().
  * The information for the Euro glyph missing from the Adobe .afm
    files for the Courier, Helvetica and Times families has been
    copied from their URW equivalents - this will improve vertical
    centring in the pdf() and postscript() devices.
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.12.0.  The changes are almost entirely cosmetic.
  * The included LAPACK sources have been updated to version 3.12.0
    and some further double-complex routines added.
  * There are new font families for the 2014--5 URW 2.0 fonts (see
    ?pdf) which are included in recent versions of Ghostscript.
    These have font widths for most Greek glyphs and a few others
    which were missing from the original versions (whose font
    families remain available for reproducibility, although
    Ghostscript-based viewers will render using the 2.0 versions).
  * Improve the large-n efficiency of as.matrix(&lt;dist&gt;), thanks an R
    contributors effort, notably by Tim Taylor and Heather Turner,
    see PR#18660.
  * The default and numeric methods of all.equal() get a check.class
    option.
  * zapsmall() gets new optional arguments, function mFUN and min.d,
    for extra flexibility; fulfills a wish in PR#18199.  Also, it is
    now an implicit S4 generic in package methods.
  * The Rd filter for aspell() gains an ignore argument.
  * New generic function sort_by(), primarily useful for the
    data.frame method which can be used to sort rows of a data frame
    by one or more columns.
  * The icence headers for the RPC code in src/extra/xdr have been
    updated to use the GPL-compatible licence published by Oracle
    America in 2010.
  * New function pkg2HTML() in tools to create single-page HTML
    reference manuals for R packages.
  * The byte code evaluator now uses less C stack space for recursive
    calls to byte-compiled functions. It also makes more of an effort
    to avoid allocations for scalar return values.
  * New completion option backtick (disabled by default) allows
    non-syntactic completions to be wrapped in backquotes. This is
    currently only useful for Jupyter notebooks via the IRkernel
    package, and may cause problems for other backends.
  INSTALLATION:
  * The parser has been updated to work with bison 3.8.2, which is
    now used for the pre-generated parsers in gram.c, file.c, and
    gramRd.c. A few parser error messages have changed, which may
    affect code that relies on exact messages.
  INSTALLATION on a UNIX-ALIKE:
  * System valgrind headers are now required to use configure option
  - -with-valgrind-instrumentation with value 1 or 2.
  * configure will warn if it encounters a 32-bit build, as that is
    nowadays almost untested.
  * Environment variable R_SYSTEM_ABI is no longer used and so no
    longer recorded in etc/Renviron (it was not on Windows and was
    only ever used when preparing package tools).
  * If the libdeflate library and headers are available, libdeflate
    rather than libz is used to (de)compress R objects in lazy-load
    databases.  Typically tasks spend up to 5% of their time on such
    operations, although creating lazy-data databases is one of the
    exceptions.
    This can be suppressed if the library is available by the
    configure option --without-libdeflate-compression.
  * configure option --enable-lto=check has not worked reliably since
    2019 and has been removed.
  * The minimum autoconf requirement for a maintainer build has been
    increased to autoconf 2.71.
    It is intended to increase this to 2.72 for R 4.5.0: the
    distributed configure file was generated using 2.72.
  * The minimum version requirement for an external LAPACK has been
    reduced to 3.9.0.
  * No default C++ compiler is set if no C++17 compiler is detected:
    there is no longer an automatic fallback to C++14 or C++11.
    Compilers from the last five years should have sufficient
    support: for others macros CXX and CXXSTD can be set in file
    config.site to provide a fallback if needed.
    The Objective-C++ compiler now by default uses the standard
    selected by R for C++ (currently C++17) rather than the default
    standard for the C++ compiler (which on macOS is still C++98).
  INSTALLATION on macOS:
  * A new configure option --with-newAccelerate makes use of Apple's
    'new' BLAS / LAPACK interfaces in their Accelerate framework.
    Those interfaces are only available in macOS 13.3 or later, and
    building requires SDK 13.3 or later (from the Command Line Tools
    or Xcode 14.3 or later).
    By default the option uses new Accelerate for BLAS calls: to also
    use it for LAPACK use option --with-newAccelerate=lapack.  The
    later interfaces provide LAPACK 3.9.1 rather than 3.2.1: 3.9.1 is
    from 2021-04 and does not include the improved algorithms
    introduced in LAPACK 3.10.0 (including for BLAS calls).
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools44, an update of the Rtools43 toolchain.  It is
    based on GCC 13 and newer versions of MinGW-W64, binutils and
    libraries (targeting 64-bit Intel CPUs).  R-devel can no longer
    be built using Rtools43 without changes.
  * Rtools44 has experimental support for 64-bit ARM (aarch64) CPUs
    _via_ the LLVM 17 toolchain using lld, clang/flang-new and
    libc++.
  UTILITIES:
  * R CMD check notes when S4-style exports are used without
    declaring a strong dependence on package methods.
  * tools::checkRd() (used by R CMD check) detects more problems with
    \Sexpr-based dynamic content, including bad nesting of \Sexprs
    and invalid arguments.
  * tools::checkRd() now reports Rd titles and section names ending
    in a period; this is ignored by R CMD check unless environment
    variable _R_CHECK_RD_CHECKRD_MINLEVEL_ is set to -5 or smaller.
  * R CMD check now notes Rd files without an \alias, as long
    documented in 'Writing R Extensions' §1.3.1.  The check for a
    missing \description has been moved from tools::checkRd() to
    tools::checkRdContents().
  * R CMD check now visits inst/NEWS.Rd and OS-specific man
    subdirectories when checking Rd files.
  * tools::checkDocFiles() and tools::checkRdContents() now also
    check internal Rd files by default, but "specially" (ignoring
    missing documentation of arguments).
  * R CMD Rdiff gets option --useEx.
  * R CMD check now warns on non-portable uses of Fortran KIND such
    as INTEGER(KIND=4) and REAL(KIND=8).
    To see the failing lines set environment variable
    _R_CHECK_FORTRAN_KIND_DETAILS_ to a true value.
  * When checking Rd files, R CMD check now notes some of the "lost
    braces" that tools::checkRd() finds.  Typical problems are Rd
    macros missing the initial backslash (e.g., code{...}), in-text
    set notation (e.g., {1, 2}, where the braces need escaping), and
    \itemize lists with \describe-style entries of the form
    \item{label}{description}.
  * R CMD INSTALL (and hence check) will compile C++ code with
  - DR_NO_REMAP if environment variable _R_CXX_USE_NO_REMAP_ is set
    to a true value.  It is planned that this will in future become
    the default for compiling C++.
  * The new built-in Rd macro \dontdiff{} can be used to mark example
    code whose output should be ignored when comparing check output
    to reference output (tests/Examples/&lt;pkg&gt;-Ex.Rout.save).  The
    \dontdiff tag, like \donttest, is _not_ shown on the rendered
    help page, so provides a clean alternative to ##
    IGNORE_RDIFF_(BEGIN|END) comments.
  * R CMD build when there is no NAMESPACE, now uses the recommended
    exportPattern("^[^.]"), instead of exporting everything.
  * R CMD check now warns about non-ASCII characters in the NAMESPACE
    file (in addition to R files). Such packages are not portable and
    may fail to install on some platforms.
  C-LEVEL FACILITIES:
  * Headers R_ext/Applic.h and R-ext/Linpack.h used to include
    R_ext/BLAS.h although this was undocumented and unneeded by their
    documented entry points.  They no longer do so.
  * New function R_missing(), factored out from do_missing(), used to
    fix PR#18579.
  * SEXP type S4SXP has been renamed to OBJSXP to support
    experimenting with alternative object systems.  The S4SXP value
    can still be used in C code but is now deprecated.  Based on
    contributions from the R Consortium's Object-Oriented Programming
    Working Group.
  * New function pow1p(x,y) for accurate (1+x)^y.
  * mkCharLenCE was incorrectly documented to take a size_t length
    but was implemented with int (and character strings in R are
    limited to 2^31 - 1 bytes).
  DEPRECATED AND DEFUNCT:
  * data() no longer handles zipped data from long-defunct (since R
    2.13.0) --use-zip-data installations.
  * The legacy graphics devices pictex() and xfig() are now
    deprecated.  They do not support recent graphics enhancements and
    their font handling is rudimentary. The intention is to retain
    them for historical interest as long as they remain somewhat
    functional.
  * Support for encoding = "MacRoman" has been removed from the pdf()
    and postscript() devices - this was a legacy encoding supporting
    classic macOS up to 2001 and no longer has universal libiconv
    support.
  * is.R() is deprecated as no other S dialect is known to be in use
    (and this could only identify historical dialects, not future
    ones).
    Further information on calls can be obtained by setting the
    environment variable _R_DEPRECATED_IS_R_ to error which turns the
    deprecation warning into an error and so by default gives a
    traceback.  (This is done by R CMD check --as-cran.)
  * UseMethod() no longer forwards local variables assigned in the
    generic function into method call environments before evaluating
    the method body. This makes method calls behave more like
    standard function calls and makes method code easier to analyze
    correctly.
  * The twelve as.data.frame.&lt;class&gt;() methods which were deprecated
    only via _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ and in R CMD
    check --as-cran are formally deprecated now in favour of calling
    as.data.frame() or as.data.frame.vector().  The deprecation
    "check" now works also when as.data.frame() is S4 generic thanks
    to Ivan Krylov.
  * The default method for the directional comparison operators &lt;, &gt;,
    &lt;=, and &gt;= now signals an error when one of the operands is a
    language object, i.e. a symbol or a call.
  * For terms.formula(), deprecate abb and neg.out arguments
    _formally_ in addition to just documenting it.
  BUG FIXES:
  * The methods package is more robust to not being attached to the
    search path.  More work needs to be done.
  * pairwise.t.test() misbehaved when subgroups had 0 DF for
    variance, even with pool.sd = TRUE.  (PR#18594 by Jack Berry).
  * Probability distribution functions [dpq]&lt;distrib&gt;(x, *), but also
    bessel[IKJY](x, .) now consistently preserve attributes(x) when
    length(x) == 0, e.g., for a 2 x 0 matrix, thanks to Karolis
    Koncevičius' report PR#18509.
  * Group "Summary" computations such as sum(1:3, 4, na.rm = 5, NA,
    7, na.rm = LL) now give an error instead of either 17 or NN for
    LL true or false, as proposed by Ivan Krylov on the R-devel
    mailing list.  (This also means it is now an error to specify
    na.rm more than once.)
  * as.complex(x) now returns complex(real = x, imaginary = 0) for
    _all_ numerical and logical x, notably also for NA or
    NA_integer_.
  * Directories are now omitted by file.copy(, recursive = FALSE) and
    in file.append() (PR#17337).
  * gsub() and sub() are now more robust to integer overflow when
    reporting errors caused by too large input strings (PR#18346).
  * Top-level handlers are now more robust to attempts to remove a
    handler whilst handlers are running (PR#18508).
  * The handling of Alt+F4 in dialogs created on Windows using
    GraphApp has been fixed (PR#13870).
  * density() more consistently computes grid values for the
    FFT-based convolution, following Robert Schlicht's analysis and
    proposal in PR#18337, correcting density values typically by a
    factor of about 0.999.  Argument old.coords = TRUE provides back
    compatibility.
  * palette.colors() gains a name argument that defaults to FALSE
    controlling whether the vector of colours that is returned has
    names (where possible).  PR#18529.
  * tools::xgettext() no longer extracts the (non-translatable) class
    names from warningCondition and errorCondition calls.
  * S3method(&lt;gen&gt;, &lt;class&gt;, &lt;func&gt;) in the NAMESPACE file now works
    (again) when &lt;func&gt; is visible from the namespace, e.g.,
    imported, or in base.
  * getParseData(f) now also works for a function defined in the
    first of several &lt;pkg&gt;/R/*.R source files, thanks to Kirill
    Müller's report and Duncan Murdoch's patch in PR#16756.
  * Rd \Sexpr macros with nested #ifdef conditionals were not
    processed.
  * A non-blocking connection with non-default encoding (such as a
    socket) now correctly returns from readLines() after new data has
    arrived also when its EOF had been reached previously.  Thanks to
    Peter Meilstrup's report on R-devel and Ivan Krylov's report and
    patch proposal in PR#18555.
  * tools::checkRdContents() failed to detect empty argument
    descriptions when they spanned multiple lines, including those
    generated by prompt().  These cases are now noted by R CMD check.
  * Plain-text help no longer outputs spurious colons in the
    arguments list (for multi-line \item labels in the Rd source).
  * kappa() and rcond() work correctly in more cases; kappa(., norm =
    "2") now warns that it computes the 1-norm with (default) exact =
    FALSE; prompted by Mikael Jagan's quite comprehensive PR#18543.
  * Rd skeletons generated by prompt() or promptData() now use a
    dummy title (so R CMD build works).  tools::checkRdContents() has
    been updated to detect such template leftovers, including from
    promptPackage().
  * When S4 method dispatch fails because no method was found, the
    error message now includes the signature argument names; thanks
    to Michael Chirico's proposal on the R-devel list.
  * withAutoprint({ .. }) now preserves srcrefs previously lost,
    thanks to Andrew Simmons' report plus fix in PR#18572.
  * transform.data.frame() no longer adjusts names; in particular,
    untransformed variables are kept as-is, including those with
    syntactically invalid names (PR#17890).
  * The keep.source option for Rd \Sexpr blocks is no longer ignored.
  * The formula methods for t.test() and wilcox.test() now catch when
    paired is passed, addressing PR#14359; use Pair(x1, x2) ~ 1 for a
    paired test.
  * The level reported in the browser prompt was often too large. It
    now shows the number of browser contexts on the stack.
  * For cbind() and rbind(), the optional deparse.level argument is
    now properly passed to methods, thanks to Mikael Jagan's PR#18579
    and comments there.
  * Some error and warning messages for large ('long vector')
    matrix(v, nr, nc) and dim(m) &lt;- d are now correct about sizes,
    using long long formatting, fixing PR#18612 (and more) reported
    by Mikael Jagan.
  * readChar(useBytes = TRUE) now terminates strings even when the
    underlying connection uses extra spaces in the input buffer.
    This fixes problems with extra garbage seen with gzip
    connections, PR#18605.
  * Named capture in PCRE regular expressions now works also with
    more than 127 named groups (PR#18588).
  * Datetime functions are now robust against long jumps when dealing
    with internal time zone changes.  This avoids confusing warnings
    about an invalid time zone, previously triggered by turning
    warnings into errors or handling them via tryCatch (PR#17966,
    PR#17780).
  * Datetime functions now restore even an empty TZ environment
    variable after internal time zone changes (PR#17724).  This makes
    results of datetime functions with this (typically unintentional)
    setting more predictable.
  * drop.terms(*) now drops response as by default, keep.response =
    FALSE, fixing PR#18564 thanks to Mikael Jagan.
  * dummy.coef(.) now also works for lm()-models with character
    categorical predictor variables rather than factor ones, fixing
    PR#18635 reported by Jinsong Zhao.
  * formals(f) &lt;- formals(f) now also works for a function w/o
    arguments and atomic _constant_ body(f).
  * Correct as.function(&lt;invalid list&gt;, .)'s error message.
  * removeSource() is yet more thorough in finding and removing
    "srcref" and the other source references from parsed R language
    chunks, fixing PR#18638 thanks to Andrew Simmons.
  * dgeom() is more accurate now, notably when its result is very
    small, fixing PR#18642 thanks to the proposal of Morten Welinder,
    also improving other instances where C level binom_raw(x, n, ..)
    has x == 0 or x== n.
  * warning() with options(warn = 1) has improved output for
    multi-line messages.
  * axis.Date() and axis.POSIXct() now respect the par("lab") setting
    for the number of pretty() intervals.
  * Comparisons for language objects (which are based on deparsing)
    are now more careful about using accurate deparsed results
    (PR#18676).
  * Plain-text help (Rd2txt) now correctly preserves blank lines
    following single-line \dontrun code.
  * &lt;POSIXlt&gt;[*] no longer sets wrong "balanced" attribute, fixing
    PR#18681 thanks to Mikael Jagan.
  * str(&lt;classed-call&gt;) now deparses the call as expected, fixing
    PR#18684, reported by Dave Slager.
  * In Rd examples, code following the closing brace of a \dontrun,
    \dontshow or \donttest tag on the same line is no longer skipped
    when R CMD check runs the examples.
  * as.data.frame(matrix(*, ncol=0)) now gets valid names() and
    colnames(); reported by Davis Vaughan on the R-devel list.
  * Internal Mathlib function stirlerr(n) is now almost fully
    (52-bit) accurate for all n &gt;= ~5.9 and more accurate also in the
    range 1 -- 5.9.  This entails small ("after 12th decimal")
    changes in density functions, e.g., dgamma() in _some_ regions of
    their support.  The fix was partly prompted by Morten Welinder's
    PR#18640.
  * Numbers like 9876543.2 are now considered non-integer by Mathlib
    internal R_nonint(), amending original fix of PR#15734.
  * Rd comment lines no longer cause broken paragraphs in the
    rendered PDF and plain-text help. In code blocks, pure comment
    lines (starting with %) no longer produce an empty line.
  * xtabs(Freq ~ .) now consistently defaults to na.action = na.pass,
    using na.rm = FALSE (added as an argument) when summing over Freq
    (PR#17770).
  * tools::testInstalledPackage() is no longer silent about failures
    from running examples or tests and its return code no longer
    ignores failures from checking vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1718366400">- CHANGES IN R 4.4.1:
  C-LEVEL FACILITIES:
  * Functions R_atof and R_strtod declared in header R_ext/Utils.h
    are now documented in 'Writing R Extensions' and so formally part
    of the API.
  * The non-API entry points Rf_setSVector, Rf_StringFalse,
    Rf_StringTrue and Rf_isBlankString have been added to those
    reported by R CMD check.
  * The new function Rf_allocLang is now available. This provides an
    alternative to the idiom of calling Rf_allocList followed by
    SET_TYPEOF.
  UTILITIES:
  * R CMD check now reports as warnings what gfortran calls 'Fortran
    2018 deleted features', all of which have long been marked as
    'obsolescent' and some of which were deleted in Fortran 2008 or
    earlier.  Fortran compilers are no longer required to support
    these.
  BUG FIXES:
  * as.numeric(), scan(), type.convert() and other places which use
    the internal C function R_strtod now require a _non-empty_ digit
    sequence in a decimal or binary exponent.  This aligns with the
    C/POSIX standard for strtod and with ?NumericConstants.
  * as.data.frame(m, make.names=NA) now works correctly for a matrix
    m with NA's in row names.
  * The error message from &lt;POSIXlt&gt;[["hour"]] and similar now
    mentions *[[, "hour"]], as wished for in PR#17409 and proposed by
    Michael Chirico.
  * qbinom() and potentially qpois(), qnbinom(), no longer sometimes
    fail accurate inversion (of pbinom(), etc), thanks to Christopher
    Chang's report and patch in PR#18711.
  * The internal help server on Windows can again serve requests sent
    in quick succession, fixing a regression in R 4.4.0.
  * debugcall(&lt;S3Generic&gt;()) now also works when a corresponding
    S4-generic version is in the methods cache (PR#18143).
  * Package tools' toTitleCase(ch0) now returns character(0) when ch0
    is of zero length; fixing PR#18724, reported by David Hugh Jones.
  * R CMD check is no longer broken (without a check result and no
    explanation in 00check.log) for a package which declares an
    invalid VignetteBuilder in DESCRIPTION but has no vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1730376000">- CHANGES IN R 4.4.2:
  C-LEVEL FACILITIES:
  * The S-compatibility macros F77_COM and F77_COMDECL defined in
    header R_ext/RS.h are deprecated and will be removed shortly.  We
    could find no record of their use.
  BUG FIXES:
  * Mathlib function lgammacor(x) no longer warns about underflow to
    zero for large x.
  * Text widths and heights were incorrectly reported by the Quartz
    device if the drawing context didn't exist yet (typically when
    drawing off-screen to a window that is yet to appear, see
    PR#18591).
  * The Quartz device could segfault in cases where paths with spaces
    are used in the new glyph drawing API.  Thanks to Tomek
    Gieorgijewski (PR#18758).
  * On macOS in R CRAN builds, it is again possible to read
    little-endian UTF-16 text with a BOM from a connection using
    encoding="UTF-16".  Users building R from source should avoid
    using the system libiconv in macOS 14.1 and later.
  * methods' internal .requirePackage() now re-enables primitive
    method dispatch when needed; thanks to Ivan Krylov for
    demystifying CRAN package check failures on the R-devel mailing
    list.</changelog>
</package>
<package pkgid="31cd250329f95a7ba10b562ef0e3e828f1ab9937fc6a2c789bf4d67bcf9bac42623fd913baec3c70782963d96b31f63f18adffc5faa62a7726e828953e389c7a" name="R-parallel-debuginfo" arch="i586">
  <version epoch="0" ver="4.4.2" rel="51.0.2.2.sr20241103"/>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1620302400">- To get in sync with d:l:R:autoCRAN the Matrix package's split
  in -devel was reversed.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339200">- improved spec file according to comments of dimstar in
  https://build.opensuse.org/request/show/892685</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339201">- CHANGES IN R 4.1.0:
  FUTURE DIRECTIONS:
  * It is planned that the 4.1.x series will be the last to support
    32-bit Windows, with production of binary packages for that
    series continuing until early 2023.
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Data set esoph in package datasets now provides the correct
    numbers of controls; previously it had the numbers of cases added
    to these.  (Reported by Alexander Fowler in PR#17964.)
  NEW FEATURES:
  * www.omegahat.net is no longer one of the repositories known by
    default to setRepositories().  (Nowadays it only provides source
    packages and is often unavailable.)
  * Function package_dependencies() (in package tools) can now use
    different dependency types for direct and recursive dependencies.
  * The checking of the size of tarball in R CMD check --as-cran
    &lt;pkg&gt; may be tweaked via the new environment variable
    _R_CHECK_CRAN_INCOMING_TARBALL_THRESHOLD_, as suggested in
    PR#17777 by Jan Gorecki.
  * Using c() to combine a factor with other factors now gives a
    factor, an ordered factor when combining ordered factors with
    identical levels.
  * apply() gains a simplify argument to allow disabling of
    simplification of results.
  * The format() method for class "ftable" gets a new option justify.
    (Suggested by Thomas Soeiro.)
  * New ...names() utility.  (Proposed by Neal Fultz in PR#17705.)
  * type.convert() now warns when its as.is argument is not
    specified, as the help file always said it _should_.  In that
    case, the default is changed to TRUE in line with its change in
    read.table() (related to stringsAsFactor) in R 4.0.0.
  * When printing list arrays, classed objects are now shown _via_
    their format() value if this is a short enough character string,
    or by giving the first elements of their class vector and their
    length.
  * capabilities() gets new entry "Rprof" which is TRUE when R has
    been configured with the equivalent of --enable-R-profiling (as
    it is by default).  (Related to Michael Orlitzky's report
    PR#17836.)
  * str(xS4) now also shows extraneous attributes of an S4 object
    xS4.
  * Rudimentary support for vi-style tags in rtags() and R CMD rtags
    has been added.  (Based on a patch from Neal Fultz in PR#17214.)
  * checkRdContents() is now exported from tools; it and also
    checkDocFiles() have a new option chkInternal allowing to check
    Rd files marked with keyword "internal" as well.  The latter can
    be activated for R CMD check via environment variable
    _R_CHECK_RD_INTERNAL_TOO_.
  * New functions numToBits() and numToInts() extend the raw
    conversion utilities to (double precision) numeric.
  * Functions URLencode() and URLdecode() in package utils now work
    on vectors of URIs.  (Based on patch from Bob Rudis submitted
    with PR#17873.)
  * path.expand() can expand ~user on most Unix-alikes even when
    readline is not in use.  It tries harder to expand ~, for example
    should environment variable HOME be unset.
  * For HTML help (both dynamic and static), Rd file links to help
    pages in external packages are now treated as references to
    topics rather than file names, and fall back to a file link only
    if the topic is not found in the target package. The earlier rule
    which prioritized file names over topics can be restored by
    setting the environment variable _R_HELP_LINKS_TO_TOPICS_ to a
    false value.
  * c() now removes NULL arguments before dispatching to methods,
    thus simplifying the implementation of c() methods, _but_ for
    back compatibility keeps NULL when it is the first argument.
    (From a report and patch proposal by Lionel Henry in PR#17900.)
  * Vectorize()'s result function's environment no longer keeps
    unneeded objects.
  * Function ...elt() now propagates visibility consistently with
    ..n.  (Thanks to Lionel Henry's PR#17905.)
  * capture.output() no longer uses non-standard evaluation to
    evaluate its arguments.  This makes evaluation of functions like
    parent.frame() more consistent.  (Thanks to Lionel Henry's
    PR#17907.)
  * packBits(bits, type="double") now works as inverse of
    numToBits().  (Thanks to Bill Dunlap's proposal in PR#17914.)
  * curlGetHeaders() has two new arguments, timeout to specify the
    timeout for that call (overriding getOption("timeout")) and TLS
    to specify the minimum TLS protocol version to be used for
    https:// URIs (_inter alia_ providing a means to check for sites
    using deprecated TLS versions 1.0 and 1.1).
  * For nls(), an optional constant scaleOffset may be added to the
    denominator of the relative offset convergence test for cases
    where the fit of a model is expected to be exact, thanks to a
    proposal by John Nash.  nls(*, trace=TRUE) now also shows the
    convergence criterion.
  * Numeric differentiation _via_ numericDeriv() gets new optional
    arguments eps and central, the latter for taking central divided
    differences.  The latter can be activated for nls() via
    nls.control(nDcentral = TRUE).
  * nls() now passes the trace and control arguments to getInitial(),
    notably for all self-starting models, so these can also be fit in
    zero-noise situations via a scaleOffset.  For this reason, the
    initial function of a selfStart model must now have ... in its
    argument list.
  * bquote(splice = TRUE) can now splice expression vectors with
    attributes: this makes it possible to splice the result of
    parse(keep.source = TRUE).  (Report and patch provided by Lionel
    Henry in PR#17869.)
  * textConnection() gets an optional name argument.
  * get(), exists(), and get0() now signal an error if the first
    argument has length greater than 1.  Previously additional
    elements were silently ignored.  (Suggested by Antoine Fabri on
    R-devel.)
  * R now provides a shorthand notation for creating functions, e.g.
    \(x) x + 1 is parsed as function(x) x + 1.
  * R now provides a simple native forward pipe syntax |&gt;.  The
    simple form of the forward pipe inserts the left-hand side as the
    first argument in the right-hand side call.  The pipe
    implementation as a syntax transformation was motivated by
    suggestions from Jim Hester and Lionel Henry.
  * all.equal(f, g) for functions now by default also compares their
    environment(.)s, notably via new all.equal method for class
    function.  Comparison of nls() fits, e.g., may now need
    all.equal(m1, m2, check.environment = FALSE).
  * .libPaths() gets a new option include.site, allowing to _not_
    include the site library.  (Thanks to Dario Strbenac's suggestion
    and Gabe Becker's PR#18016.)
  * Lithuanian translations are now available.  (Thanks to Rimantas
    Zakauskas.)
  * names() now works for DOTSXP objects.  On the other hand, in
    R-lang, the R language manual, we now warn against relying on the
    structure or even existence of such dot-dot-dot objects.
  * all.equal() no longer gives an error on DOTSXP objects.
  * capabilities("cairo") now applies only to the file-based devices
    as it is now possible (if very unusual) to build R with Cairo
    support for those but not for X11().
  * There is optional support for tracing the progress of
    loadNamespace() - see its help.
  * (Not Windows.)  l10n_info() reports an additional element, the
    name of the encoding as reported by the OS (which may differ from
    the encoding part (if any) of the result from
    Sys.getlocale("LC_CTYPE").
  * New function gregexec() which generalizes regexec() to find _all_
    disjoint matches and well as all substrings corresponding to
    parenthesized subexpressions of the given regular expression.
    (Contributed by Brodie Gaslam.)
  * New function charClass() in package utils to query the
    wide-character classification functions in use (such as
    iswprint).
  * The names of quantile()'s result no longer depend on the global
    getOption("digits"), but quantile() gets a new optional argument
    digits = 7 instead.
  * grep(), sub(), regexp and variants work considerably faster for
    long factors with few levels.  (Thanks to Michael Chirico's
    PR#18063.)
  * Provide grouping of x11() graphics windows within a window
    manager such as Gnome or Unity; thanks to a patch by Ivan Krylov
    posted to R-devel.
  * The split() method for class data.frame now allows the f argument
    to be specified as a formula.
  * sprintf now warns on arguments unused by the format string.
  * New palettes "Rocket" and "Mako" for hcl.colors() (approximating
    palettes of the same name from the 'viridisLite' package).
    Contributed by Achim Zeileis.
  * The base environment and its namespace are now locked (so one can
    no longer add bindings to these or remove from these).
  * Rterm handling of multi-byte characters has been improved,
    allowing use of such characters when supported by the current
    locale.
  * Rterm now accepts ALT+ +xxxxxxxx sequences to enter Unicode
    characters as hex digits.
  * Environment variable LC_ALL on Windows now takes precedence over
    LC_CTYPE and variables for other supported categories, matching
    the POSIX behaviour.
  * duplicated() and anyDuplicated() are now optimized for integer
    and real vectors that are known to be sorted via the ALTREP
    framework. Contributed by Gabriel Becker via PR#17993.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 14
    and so packages that provide graphics devices should be
    reinstalled.
  * Graphics devices should now specify deviceVersion to indicate
    what version of the graphics engine they support.
  * Graphics devices can now specify deviceClip.  If TRUE, the
    graphics engine will never perform any clipping of output itself.
    The clipping that the graphics engine does perform (for both
    canClip = TRUE and canClip = FALSE) has been improved to avoid
    producing unnecessary artifacts in clipped output.
  * The grid package now allows gpar(fill) to be a linearGradient(),
    a radialGradient(), or a pattern().  The viewport(clip) can now
    also be a grob, which defines a clipping path, and there is a new
    viewport(mask) that can also be a grob, which defines a mask.
    These new features are only supported so far on the Cairo-based
    graphics devices and on the pdf() device.
  * (Not Windows.)  A warning is given when a Cairo-based type is
    specified for a png(), jpeg(), tiff() or bmp() device but Cairo
    is unsupported (so type = "Xlib" is tried instead).
  * grSoftVersion() now reports the versions of FreeType and
    FontConfig if they are used directly (not _via_ Pango), as is
    most commonly done on macOS.
  C-LEVEL FACILITIES:
  * The _standalone_ libRmath math library and R's C API now provide
    log1pexp() again as documented, and gain log1mexp().
  INSTALLATION on a UNIX-ALIKE:
  * configure checks for a program pkgconf if program pkg-config is
    not found.  These are now only looked for on the path (like
    almost all other programs) so if needed specify a full path to
    the command in PKG_CONFIG, for example in file config.site.
  * C99 function iswblank is required - it was last seen missing ca
    2003 so the workaround has been removed.
  * There are new configure options --with-internal-iswxxxxx,
  - -with-internal-towlower and --with-internal-wcwidth which allows
    the system functions for wide-character classification,
    case-switching and width (wcwidth and wcswidth) to be replaced by
    internal ones.  The first has long been used on macOS, AIX (and
    Windows) but this enables it to be unselected there and selected
    for other platforms (it is the new default on Solaris).  The
    second is new in this version of R and is selected by default on
    macOS and Solaris.  The third has long been the default and
    remains so as it contains customizations for East Asian
    languages.
    System versions of these functions are often minimally
    implemented (sometimes only for ASCII characters) and may not
    cover the full range of Unicode points: for example Solaris (and
    Windows) only cover the Basic Multilingual Plane.
  * Cairo installations without X11 are more likely to be detected by
    configure, when the file-based Cairo graphics devices will be
    available but not X11(type = "cairo").
  * There is a new configure option --with-static-cairo which is the
    default on macOS.  This should be used when only static cairo
    (and where relevant, Pango) libraries are available.
  * Cairo-based graphics devices on platforms without Pango but with
    FreeType/FontConfig will make use of the latter for font
    selection.
  LINK-TIME OPTIMIZATION on a UNIX-ALIKE:
  * Configuring with flag --enable-lto=R now also uses LTO when
    installing the recommended packages.
  * R CMD INSTALL and R CMD SHLIB have a new flag --use-LTO to use
    LTO when compiling code, for use with R configured with
  - -enable-lto=R.  For R configured with --enable-lto, they have
    the new flag --no-use-LTO.
    Packages can opt in or out of LTO compilation _via_ a UseLTO
    field in the DESCRIPTION file.  (As usual this can be overridden
    by the command-line flags.)
  BUILDING R on Windows:
  * for GCC &gt;= 8, FC_LEN_T is defined in config.h and hence character
    lengths are passed from C to Fortran in _inter alia_ BLAS and
    LAPACK calls.
  * There is a new text file src/gnuwin32/README.compilation, which
    outlines how C/Fortran code compilation is organized and
    documents new features:
  * R can be built with Link-Time Optimization with a suitable
    compiler - doing so with GCC 9.2 showed several
    inconsistencies which have been corrected.
  * There is support for cross-compiling the C and Fortran code
    in R and standard packages on suitable (Linux) platforms.
    This is mainly intended to allow developers to test later
    versions of compilers - for example using GCC 9.2 or 10.x has
    detected issues that GCC 8.3 in Rtools40 does not.
  * There is experimental support for cross-building R packages
    with C, C++ and/or Fortran code.
  * The R installer can now be optionally built to support a single
    architecture (only 64-bit or only 32-bit).
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++14 where
    available (which it is on all currently checked platforms): if
    not (as before) C++11 is used if available otherwise C++ is not
    supported.
    Packages which specify C++11 will still be installed using C++11.
    C++14 compilers may give deprecation warnings, most often for
    std::random_shuffle (deprecated in C++14 and removed in C++17).
    Either specify C++11 (see 'Writing R Extensions') or modernize
    the code and if needed specify C++14.  The latter has been
    supported since R 3.4.0 so the package's DESCRIPTION would need
    to include something like
    Depends: R (&gt;= 3.4)
  PACKAGE INSTALLATION on Windows:
  * R CMD INSTALL and R CMD SHLIB make use of their flag --use-LTO
    when the LTO_OPT make macro is set in file etc/${R_ARCH}/Makeconf
    or in a personal/site Makevars file.  (For details see 'Writing R
    Extensions' SS4.5.)
    This provides a valuable check on code consistency.  It does work
    with GCC 8.3 as in Rtools40, but that does not detect everything
    the CRAN checks with current GCC do.
  PACKAGE INSTALLATION on macOS:
  * The default personal library directory on builds with
  - -enable-aqua (including CRAN builds) now differs by CPU type,
    one of
    ~/Library/R/x86_64/x.y/library
    ~/Library/R/arm64/x.y/library
    This uses the CPU type R (and hence the packages) were built for,
    so when a x86_64 build of R is run under Rosetta emulation on an
    arm64 Mac, the first is used.
  UTILITIES:
  * R CMD check can now scan package functions for bogus return
    statements, which were possibly intended as return() calls (wish
    of PR#17180, patch by Sebastian Meyer). This check can be
    activated via the new environment variable
    _R_CHECK_BOGUS_RETURN_, true for --as-cran.
  * R CMD build omits tarballs and binaries of previous builds from
    the top-level package directory.  (PR#17828, patch by Sebastian
    Meyer.)
  * R CMD check now runs sanity checks on the use of LazyData, for
    example that a data directory is present and that
    LazyDataCompression is not specified without LazyData and has a
    documented value.  For packages with large LazyData databases
    without specifying LazyDataCompression, there is a reference to
    the code given in 'Writing R Extensions' SS1.1.6 to test the
    choice of compression (as in all the CRAN packages tested a
    non-default method was preferred).
  * R CMD build removes LazyData and LazyDataCompression fields from
    the DESCRIPTION file of packages without a data directory.
  ENCODING-RELATED CHANGES:
  * The parser now treats \Unnnnnnnn escapes larger than the upper
    limit for Unicode points (\U10FFFF) as an error as they cannot be
    represented by valid UTF-8.
    Where such escapes are used for outputting non-printable
    (including unassigned) characters, 6 hex digits are used (rather
    than 8 with leading zeros).  For clarity, braces are used, for
    example \U{0effff}.
  * The parser now looks for non-ASCII spaces on Solaris (as
    previously on most other OSes).
  * There are warnings (including from the parser) on the use of
    unpaired surrogate Unicode points such as \uD834.  (These cannot
    be converted to valid UTF-8.)
  * Functions nchar(), tolower(), toupper() and chartr() and those
    using regular expressions have more support for inputs with a
    marked Latin-1 encoding.
  * The character-classification functions used (by default) to
    replace the system iswxxxxx functions on Windows, macOS and AIX
    have been updated to Unicode 13.0.0.
    The character-width tables have been updated to include new
    assignments in Unicode 13.0.0.
  * The code for evaluating default (extended) regular expressions
    now uses the same character-classification functions as the rest
    of R (previously they differed on Windows, macOS and AIX).
  * There is a build-time option to replace the system's
    wide-character wctrans C function by tables shipped with R: use
    configure option --with-internal-towlower or (on Windows)
  - DUSE_RI18N_CASE in CFLAGS when building R.  This may be needed
    to allow tolower() and toupper() to work with Unicode characters
    beyond the Basic Multilingual Plane where not supported by system
    functions (e.g. on Solaris where it is the new default).
  * R is more careful when truncating UTF-8 and other multi-byte
    strings that are too long to be printed, passed to the system or
    libraries or placed into an internal buffer.  Truncation will no
    longer produce incomplete multibyte characters.
  DEPRECATED AND DEFUNCT:
  * Function plclust() from the package stats and
    package.dependencies(), pkgDepends(), getDepList(),
    installFoundDepends(), and vignetteDepends() from package tools
    are defunct.
  * Defunct functions checkNEWS() and readNEWS() from package tools
    and CRAN.packages() from utils have been removed.
  * R CMD config CXXCPP is defunct (it was deprecated in R 3.6.2).
  * parallel::detectCores() drops support for Irix (retired in 2013).
  * The LINPACK argument to chol.default(), chol2inv(),
    solve.default() and svd() has been defunct since R 3.1.0.  It was
    silently ignored up to R 4.0.3 but now gives an error.
  * Subsetting/indexing, such as ddd[*] or ddd$x on a DOTSXP
    (dot-dot-dot) object ddd has been disabled; it worked by accident
    only and was undocumented.
  BUG FIXES:
  * Many more C-level allocations (mainly by malloc and strdup) are
    checked for success with suitable alternative actions.
  * Bug fix for replayPlot(); this was turning off graphics engine
    display list recording if a recorded plot was replayed in the
    same session.  The impact of the bug became visible if resize the
    device after replay OR if attempted another savePlot() after
    replay (empty display list means empty screen on resize or empty
    saved plot).
  * R CMD check etc now warn when a package exports non-existing S4
    classes or methods, also in case of no "methods" presence.
    (Reported by Alex Bertram; reproducible example and patch by
    Sebastian Meyer in PR#16662.)
  * boxplot() now also accepts calls for labels such as ylab, the
    same as plot().  (Reported by Marius Hofert.)
  * The help page for xtabs() now correctly states that addNA is
    setting na.action = na.pass among others.  (Reported as PR#17770
    by Thomas Soeiro.)
  * The R CMD check &lt;pkg&gt; gives a longer and more comprehensible
    message when DESCRIPTION misses dependencies, e.g., in Imports:.
    (Thanks to the contributors of PR#17179.)
  * update.default() now calls the generic update() on the formula to
    work correctly for models with extended formulas.  (As reported
    and suggested by Neal Fultz in PR#17865.)
  * The horizontal position of leaves in a dendrogram is now correct
    also with center = FALSE.  (PR#14938, patch from Sebastian
    Meyer.)
  * all.equal.POSIXt() no longer warns about and subsequently ignores
    inconsistent "tzone" attributes, but describes the difference in
    its return value (PR#17277).  This check can be disabled _via_
    the new argument check.tzone = FALSE as suggested by Sebastian
    Meyer.
  * as.POSIXct() now populates the "tzone" attribute from its tz
    argument when x is a logical vector consisting entirely of NA
    values.
  * x[[2^31]] &lt;- v now works.  (Thanks to the report and patch by
    Suharto Anggono in PR#17330.)
  * In log-scale graphics, axis() ticks and label positions are now
    computed more carefully and symmetrically in their range,
    typically providing _more_ ticks, fulfilling wishes in PR#17936.
    The change really corresponds to an improved axisTicks() (package
    grDevices), potentially influencing grid and lattice, for
    example.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now correct to at
    least five digits where it was catastrophically wrong,
    previously.
  * sum(df) and similar "Summary"- and "Math"-group member functions
    now work for data frames df with logical columns, notably also of
    zero rows.  (Reported to R-devel by Martin "b706".)
  * unsplit() had trouble with tibbles due to unsound use of rep(NA,
    len)-indexing, which should use NA_integer_ (Reported to R-devel
    by Mario Annau.)
  * pnorm(x, log.p = TRUE) underflows to -Inf slightly later.
  * show(&lt;hidden S4 generic&gt;) prints better and without quotes for
    non-hidden S4 generics.
  * read.table() and relatives treated an "NA" column name as missing
    when check.names = FALSE PR#18007.
  * Parsing strings containing UTF-16 surrogate pairs such as
    "\uD834\uDD1E" works better on some (uncommon) platforms.
    sprintf("%X", utf8ToInt("\uD834\uDD1E")) should now give "1D11E"
    on all platforms.
  * identical(x,y) is no longer true for differing DOTSXP objects,
    fixing PR#18032.
  * str() now works correctly for DOTSXP and related exotics, even
    when these are doomed.
    Additionally, it no longer fails for lists with a class and
    "irregular" method definitions such that e.g. lapply(*) will
    necessarily fail, as currently for different igraph objects.
  * Too long lines in environment files (e.g. Renviron) no longer
    crash R. This limit has been increased to 100,000 bytes.
    (PR#18001.)
  * There is a further workaround for FreeType giving incorrect
    italic font faces with cairo-based graphics devices on macOS.
  * add_datalist(*, force = TRUE) (from package tools) now actually
    updates an existing data/datalist file for new content.  (Thanks
    to a report and patch by Sebastian Meyer in PR#18048.)
  * cut.Date() and cut.POSIXt() could produce an empty last interval
    for breaks = "months" or breaks = "years".  (Reported as PR#18053
    by Christopher Carbone.)
  * Detection of the encoding of 'regular' macOS locales such as
    en_US (which is UTF-8) had been broken by a macOS change:
    fortunately these are now rarely used with en_US.UTF-8 being
    preferred.
  * sub() and gsub(pattern, repl, x, *) now keep attributes of x such
    as names() also when pattern is NA (PR#18079).
  * Time differences ("difftime" objects) get a replacement and a
    rep() method to keep "units" consistent.  (Thanks to a report and
    patch by Nicolas Bennett in PR#18066.)
  * The \RdOpts macro, setting defaults for \Sexpr options in an Rd
    file, had been ineffective since R 2.12.0: it now works again.
    (Thanks to a report and patch by Sebastian Meyer in PR#18073.)
  * mclapply and pvec no longer accidentally terminate parallel
    processes started before by mcparallel or related calls in
    package parallel (PR#18078).
  * grep and other functions for evaluating (extended) regular
    expressions handle in Unicode also strings not explicitly flagged
    UTF-8, but flagged native when running in UTF-8 locale.
  * Fixed a crash in fifo implementation on Windows (PR#18031).
  * Binary mode in fifo on Windows is now properly detected from
    argument open (PR#15600, PR#18031).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1622808000">- The line %{__install} -m 755 -d %{_infodir}
  no longer works in TW or Factory.
  But without that line it works everywhere. So this instruction
  was commented out of the spec file.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1628596800">- CHANGES IN R 4.1.1:
  NEW FEATURES:
  * require(pkg, quietly = TRUE) is quieter and in particular does
    not warn if the package is not found.
  DEPRECATED AND DEFUNCT:
  * Use of ftp:// URIs should be regarded as deprecated, with
    on-going support confined to method = "libcurl" and not routinely
    tested.  (Nowadays no major browser supports them.)
  * The non-default method = "internal" is deprecated for http:// and
    ftp:// URIs for both download.file and url.
  * On Windows, method = "wininet" is deprecated for http://,
    https:// and ftp:// URIs for both download.file and url.  (A
    warning is only given for ftp://.)
    For ftp:// URIs the default method is now "libcurl" if available
    (which it is on CRAN builds).
    method = "wininet" remains the default for http:// and https://
    URIs but if libcurl is available, using method = "libcurl" is
    preferred.
  INSTALLATION:
  * make check now works also without a LaTeX installation.  (Thanks
    to Sebastian Meyer's PR#18103.)
  BUG FIXES:
  * make check-devel works again in an R build configured with
  - -without-recommended-packages.
  * qnbinom(p, size, mu) for large size/mu is correct now in a range
    of cases (PR#18095); similarly for the (size, prob)
    parametrization of the negative binomial.  Also qpois() and
    qbinom() are better and or faster for extreme cases.  The
    underlying C code has been modularized and is common to all four
    cases of discrete distributions.
  * gap.axis is now part of the axis() arguments which are passed
    from bxp(), and hence boxplot().  (Thanks to Martin Smith's
    report and suggestions in PR#18109.)
  * .First and .Last can again be set from the site profile.
  * seq.int(from, to, *) and seq.default(..) now work better in large
    range cases where from-to is infinite where the two boundaries
    are finite.
  * all.equal(x,y) now returns TRUE correctly also when several
    entries of abs(x) and abs(y) are close to .Machine$double.xmax,
    the largest finite numeric.
  * model.frame() now clears the object bit when removing the class
    attribute of a value via na.action (PR#18100).
  * charClass() now works with multi-character strings on Windows
    (PR#18104, fixed by Bill Dunlap).
  * encodeString() on Solaris now works again in Latin-1 encoding on
    characters represented differently in UTF-8.  Support for
    surrogate pairs on Solaris has been improved.
  * file.show() on Windows now works with non-ASCII path names
    representable in the current native encoding (PR#18132).
  * Embedded R on Windows can now find R home directory via the
    registry even when installed only for the current user
    (PR#18135).
  * pretty(x) with finite x now returns finite values also in the
    case where the extreme x values are close in size to the maximal
    representable number .Machine$double.xmax.
    Also, it's been tweaked for very small ranges and when a boundary
    is close (or equal) to zero; e.g., pretty(c(0,1e-317)) no longer
    has negative numbers, currently still warning about a very small
    range, and pretty(2^-(1024 - 2^-1/(c(24,10)))) is more accurate.
  * The error message for not finding vignette files when weaving has
    correct file sizes now. (Thanks to Sebastian Meyer's PR#18154.)
  * dnbinom(20, &lt;large&gt;, 1) now correctly gives 0, and similar cases
    are more accurate with underflow precaution.  (Reported by Francisco Vera Alcivar in PR#18072.)</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635163200">- repaired https://bugzilla.suse.com/show_bug.cgi?id=1191380
  (rpmacros now go to rpmmacrodir)
- minor clean-ups in spec file</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635768000">- CHANGES IN R 4.1.2:
  C-LEVEL FACILITIES:
  * The workaround in headers R.h and Rmath.h (using namespace std;)
    for the Oracle Developer Studio compiler is no longer needed now
    C++11 is required so has been removed.  A couple more usages of
    log() (which should have been std::log()) with an int argument
    are reported on Solaris.
  * The undocumented limit of 4095 bytes on messages from the
    S-compatibility macros PROBLEM and MESSAGE is now documented and
    longer messages will be silently truncated rather than
    potentially causing segfaults.
  * If the R_NO_SEGV_HANDLER environment variable is non-empty, the
    signal handler for SEGV/ILL/BUS signals (which offers recovery
    user interface) is not set. This allows more reliable debugging
    of crashes that involve the console.
  DEPRECATED AND DEFUNCT:
  * The legacy S-compatibility macros PROBLEM, MESSAGE, ERROR, WARN,
    WARNING, RECOVER, ... are deprecated and will be hidden in R
    4.2.0. R's native interface of Rf_error and Rf_warning has long
    been preferred.
  BUG FIXES:
  * .mapply(F, dots, .) no longer segfaults when dots is not a list
    and uses match.fun(F) as always documented; reported by Andrew
    Simmons in PR#18164.
  * hist(&lt;Date&gt;, ...) and hist(&lt;POSIXt&gt;, ...)  no longer pass
    arguments for rect() (such as col and density) to axis().
    (Thanks to Sebastian Meyer's PR#18171.)
  * \Sexpr{ch} now preserves Encoding(ch). (Thanks to report and
    patch by Jeroen Ooms in PR#18152.)
  * Setting the RNG to "Marsaglia-Multicarry" e.g., by RNGkind(), now
    warns in more places, thanks to Andr'e Gillibert's report and
    patch in PR#18168.
  * gray(numeric(), alpha=1/2) no longer segfaults, fixing PR#18183,
    reported by Till Krenz.
  * Fixed dnbinom(x, size=&lt;very_small&gt;, .., log=TRUE) regression,
    reported by Martin Morgan.
  * as.Date.POSIXlt(x) now keeps names(x), thanks to Davis Vaughan's
    report and patch in PR#18188.
  * model.response() now strips an "AsIs" class typically, thanks to
    Duncan Murdoch's report and other discussants in PR#18190.
  * try() is considerably faster in case of an error and long call,
    as e.g., from some do.call().  Thanks to Alexander Kaever's
    suggestion posted to R-devel.
  * qqline(y = &lt;object&gt;) such as y=I(.), now works, see also
    PR#18190.
  * Non-integer mgp par() settings are now handled correctly in
    axis() and mtext(), thanks to Mikael Jagan and Duncan Murdoch's
    report and suggestion in PR#18194.
  * formatC(x) returns length zero character() now, rather than ""
    when x is of length zero, as documented, thanks to Davis
    Vaughan's post to R-devel.
  * removeSource(fn) now retains (other) attributes(fn).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1647000000">- CHANGES IN R 4.1.3:
  NEW FEATURES:
  * The default version of Bioconductor has been changed to 3.14.
    (This is used by setRepositories and the menus in GUIs.)
  UTILITIES:
  * R CMD check --as-cran has a workaround for a bug in versions of
    file up to at least 5.41 which mis-identify DBF files last
    changed in 2022 as executables.
  C-LEVEL FACILITIES:
  * The legacy S-compatibility macros SINGLE_* in R_ext/Constants.h
    (included by R.h) are deprecated and will be removed in R 4.2.0.
  BUG FIXES:
  * Initialization of self-starting nls() models with initialization
    functions following the pre-R-4.1.0 API (without the ...
    argument) works again for now, with a deprecation warning.
  * Fixed quoting of ~autodetect~ in Java setting defaults to avoid
    inadvertent user lookup due to leading ~, reported in PR#18231 by
    Harold Gutch.
  * substr(., start, stop) &lt;- v now treats _negative_ stop values
    correctly.  Reported with a patch in PR#18228 by Brodie Gaslam.
  * Subscripting an array x without dimnames by a
    length(dim(x))-column character matrix gave "random" non-sense,
    now an error; reported in PR#18244 by Mikael Jagan.
  * ...names() now matches names(list(...)) closely, fixing PR#18247.
  * all.equal(*, scale = s) now works as intended when length(s) &gt; 1,
    partly thanks to Michael Chirico's PR#18272.
  * print(x) for long vectors x now also works for named atomic
    vectors or lists and prints the correct number when reaching the
    getOption("max.print") limit; partly thanks to a report and
    proposal by Hugh Parsonage to the R-devel list.
  * all.equal(&lt;selfStart&gt;, *) no longer signals a deprecation
    warning.
  * reformulate(*, response=r) gives a helpful error message now when
    length(r) &gt; 1, thanks to Bill Dunlap's PR#18281.
  * Modifying globalCallingHandlers inside withCallingHandlers() now
    works or fails correctly, thanks to Henrik Bengtsson's PR#18257.
  * hist(&lt;Date&gt;, breaks = "days") and hist(&lt;POSIXt&gt;, breaks = "secs")
    no longer fail for inputs of length 1.
  * qbeta(.001, .9, .009) and similar cases now converge correctly
    thanks to Ben Bolker's report in PR#17746.
  * window(x, start, end) no longer wrongly signals "'start' cannot
    be after 'end'", fixing PR#17527 and PR#18291.
  * data() now checks that its (rarely used) list argument is a
    character vector - a couple of packages passed other types and
    gave incorrect results.
  * which() now checks its arr.ind argument is TRUE rather coercing
    to logical and taking the first element - which gave incorrect
    results in package code.
  * model.weights() and model.offset() more carefully extract their
    model components, thanks to Ben Bolker and Tim Taylor's R-devel
    post.
  * list.files(recursive = TRUE) now shows all broken symlinks
    (previously, some of them may have been omitted, PR#18296).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1650628800">- CHANGES IN R 4.2.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * The formula method of aggregate() now matches the generic in
    naming its first argument x (resolving PR#18299 by Thomas
    Soeiro).
    This means that calling aggregate() with a formula as a named
    first argument requires name formula in earlier versions of R and
    name x now, so portable code should not name the argument (code
    in many packages did).
  * Calling &amp;&amp; or || with either argument of length greater than one
    now gives a warning (which it is intended will become an error).
  * Calling if() or while() with a condition of length greater than
    one gives an error rather than a warning.  Consequently,
    environment variable _R_CHECK_LENGTH_1_CONDITION_ no longer has
    any effect.
  * Windows users should consult the WINDOWS section below for some
    profound changes including
  * Support for 32-bit builds has been dropped.
  * UTF-8 locales are used where available.
  * The default locations for the R installation and personal
    library folder have been changed.
    Thanks to Tomas Kalibera for months of work on the Windows port
    for this release.
  NEW FEATURES:
  * matrix(x, n, m) now warns in more cases where length(x) differs
    from n * m, as suggested by Abby Spurdle and Wolfgang Huber in
    Feb 2021 on the R-devel mailing list.
    This warning can be turned into an error by setting environment
    variable _R_CHECK_MATRIX_DATA_ to TRUE: R CMD check --as-cran
    does so unless it is already set.
  * Function file_test() in package utils gains tests for symlinks,
    readability and writability.
  * capabilities("libxml") is now false.
    The description of capabilities("http/ftp") now reflects that it
    refers to the default method, no longer the internal one.
  * simplify2array() gains an except argument for controlling the
    exceptions used by sapply().
  * Environment variables R_LIBS_USER and R_LIBS_SITE are both now
    set to the R system default if unset or empty, and can be set to
    NULL to indicate an empty list of user or site library
    directories.
  * The warning for axis()(-like) calls in cases of relatively small
    ranges (typically in log-scale situations) is slightly improved
    _and_ suppressed from explicit calls to .axisPars() as has always
    been the intention.
  * The contrasts setter function `contrasts&lt;-` gains an explicit
    default how.many = NULL rather than just using missing(how.many).
  * grid.pretty() gains a new optional argument n = 5.
  * There is a new function .pretty() with option bounds as a
    technical-utility version of pretty().  It and pretty() gain a
    new argument f.min with a better than back-compatible default.
  * Function grDevices::axisTicks() and related functions such as
    graphics::axis() work better, notably for the log scale; partly
    because of the pretty() improvements, but also because care is
    taken e.g., when ylim is finite but diff(ylim) is infinite.
  * nclass.FD() gains a digits option.
  * The R Mathlib internal C function bd0() (called indirectly from a
    dozen probability density and distribution functions such as
    dpois(), dbinom(), dgamma(), pgamma() _etc_) has been
    complemented by a more sophisticated and (mostly) more accurate C
    function ebd0(), currently called only by internal dpois_raw()
    improving accuracy for R level dpois() and potentially others
    calling it such as dnbinom(), dgamma() or pgamma().  (Thanks to
    Morten Welinder's PR#15628.)
  * write.ftable() gains sep = " " argument as suggested by Thomas
    Soeiro.
  * The names of the locale categories supported by R's
    Sys.getlocale() and Sys.setlocale() are now provided by variable
    .LC.categories in the base namespace.
  * The Date and POSIXt methods for hist() and the histogram method
    for plot() now also use the new default col = "lightgray" in
    consistency with the corresponding change to hist()'s default for
    R 4.0.0.
  * hist.default() gains new fuzz argument, and the histogram plot
    method no longer uses fractional axis ticks when displaying
    counts ("Frequency").
  * mapply() and hence Map() now also obey the "max-or-0-if-any"
    recycling rule, such that, e.g., Map(`+`, 1:3, 1[0]) is valid
    now.
  * as.character(&lt;obj&gt;) for "hexmode" or "octmode" objects now
    fulfils the important basic rule as.character(x)[j] ===
    as.character(x[j]).
  * The set utility functions, notably intersect() have been tweaked
    to be more consistent and symmetric in their two set arguments,
    also preserving a common mode.
  * substr(ch, start,end) &lt;- new now e.g., preserves names(ch); ditto
    for substring(), thanks to a patch from Brodie Gaslam.
  * plot(&lt;lm&gt;) gains a extend.ylim.f argument, in partial response to
    PR#15285; further PR#17784 is fixed thanks to several
    contributors and a patch by Elin Waring.  The Cook's dist
    contours get customizable via cook.col and cook.lty with a
    different default color and their legend is nicer by default and
    customizable via cook.legendChanges.
  * Attempting to subset an object that is not subsettable now
    signals an error of class notSubsettableError. The
    non-subsettable object is contained in the object field of the
    error condition.
  * Subscript-out-of-bounds errors are now signaled as errors of
    class subscriptOutOfBoundsError.
  * Stack-overflow errors are now signaled as errors inheriting from
    class stackOverflowError. See ?stackOverflowError for more
    details.
  * New partly experimental Sys.setLanguage() utility, solving the
    main problem of PR#18055.
  * gettext() and gettextf() get a new option trim = TRUE which when
    set to false allows translations for strings such as "Execution
    halted\n" typical for C code.
  * An experimental implementation of hash tables is now available.
    See ?hashtab for more details.
  * identical() gains a extptr.as.ref argument for requesting that
    external pointer objects be compared as reference objects.
  * reorder() gets an argument decreasing which it passes to sort()
    for level creation; based on the wish and patch by Thomas Soeiro
    in PR#18243.
  * as.vector() gains a data.frame method which returns a simple
    named list, also clearing a long standing 'FIXME' to enable
    as.vector(&lt;data.frame&gt;, mode="list").  This breaks code relying
    on as.vector(&lt;data.frame&gt;) to return the unchanged data frame.
  * legend() is now vectorized for arguments cex, x.intersp, and
    text.width.  The latter can now also be specified as a vector
    (one element for each column of the legend) or as NA for
    computing a proper column wise maximum value of strwidth(legend).
    The argument y.intersp can be specified as a vector with one
    entry for each row of the legend.
    legend() also gains new arguments title.cex and title.font.
    Thanks to Swetlana Herbrandt.
  * Deparsing no longer remaps attribute names dim, dimnames, levels,
    names and tsp to historical S-compatible names (which structure()
    maps back).
  * sample() and sample.int() have additional sanity checks on their
    size and n arguments.
    all.equal.numeric() gains a sanity check on its tolerance
    argument - calling all.equal(a, b, c) for three numeric vectors
    is a surprisingly common error.
    mean(na.rm =), rank(na.last =), barplot(legend.text =),
    boxplot(), contour(drawlabels =), polygon(border =) and
    methods::is(class2 =) have more robust sanity checks on their
    arguments.
    R CMD Rd2pdf (used by R CMD check) has a more robust sanity check
    on the format of \alias{} commands.
  * psigamma(x, deriv) for negative x now also works for deriv = 4
    and 5; their underlying C level dpsifn() is documented in
    'Writing R Extensions'.
  * The HTML help system now uses HTML5 (wish of PR#18149).
  * ks.test() now provides exact p-values also with ties and MC
    p-values in the two-sample (Smirnov) case.  By Torsten Hothorn.
  * ks.test() gains a formula interface, with y ~ 1 for the
    one-sample (Kolmogorov) test and y ~ group for the two-sample
    (Smirnov) test.  Contributed by Torsten Hothorn.
  * The return value from ks.test() now has class c("ks.test",
    "htest") - packages using try() need to take care to use
    inherits() and not == on the class.
  * New functions psmirnov(), qsmirnov() and rsmirnov() in package
    stats implementing the asymptotic and exact distributions of the
    two-sample Smirnov statistic.
  * iconv() now allows sub = "c99" to use C99-style escapes for UTF-8
    inputs which cannot be converted to encoding to.
  * In a forward pipe |&gt; expression it is now possible to use a named
    argument with the placeholder _ in the rhs call to specify where
    the lhs is to be inserted.  The placeholder can only appear once
    on the rhs.
  * The included LAPACK sources have been updated to version 3.10.0,
    except for the four Fortran 77 routines which 3.10.0 has
    re-implemented in Fortran 90 (where the older versions have been
    retained as the R build process does not support Fortran 90).
  * path.expand() and most other uses of tilde expansion now warn if
    a path would be too long if expanded.  (An exception is
    file.exists(), which silently returns false.)
  * trunc(&lt;Date&gt;, *) now supports units = "months" or "years" for
    consistency with the POSIXt method, thanks to Dirk Eddelbuettel's
    proposal in PR#18099.
  * list2DF() now checks that its arguments are of the same length,
    rather than use recycling.
  * The HTML help system has several new features: LaTeX-like math
    can be typeset using either KaTeX or MathJax, usage and example
    code is highlighted using Prism, and for dynamic help the output
    of examples and demos can be shown within the browser if the
    knitr package is installed. These features can be disabled by
    setting the environment variable _R_HELP_ENABLE_ENHANCED_HTML_ to
    a false value.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 15
    and so packages that provide graphics devices should be
    reinstalled.
  * The grid package now allows the user to specify a "vector" of
    pattern fills.  The fill argument to gpar() accepts a list of
    gradients and/or patterns and the functions linearGradient(),
    radialGradient(), and pattern() have a new group argument.
    Points grobs (data symbols) can now also have a pattern fill.
    The grobCoords() function now returns a more informative and
    complex result.
  * The grid package has new functions for drawing isolated groups:
    grid.group(), grid.define(), and grid.use().  These functions add
    compositing operators and affine transformations to R's graphics
    capabilities.
    The grid package also has new functions for stroking and filling
    paths: grid.stroke(), grid.fill(), and grid.fillStroke().
    A new function as.path() allows the user to specify the fill rule
    for a path that is to be used for clipping, stroking, or filling;
    available options are "winding" and "evenodd".  A new function
    as.mask() allows the user to specify the type of a mask;
    available options are "alpha" and "luminance".
    These new features are only supported so far (at most) on the
    Cairo-based graphics devices and on the pdf() device.
  * dev.capabilities() reports on device support for the new
    features.
  * par() now warns about unnamed non-character arguments to prevent
    misuse such as {usr &lt;- par("usr"); par(usr)}.
  INSTALLATION:
  * Facilities for accessing ftp:// sites are no longer tested
    (except _pro tem_ for curlGetHeaders()) as modern browsers have
    removed support.
  * R can now be built with DEFS = -DSTRICT_R_HEADERS .
  PACKAGE INSTALLATION:
  * R CMD INSTALL no longer tangles vignettes. This completes an R
    CMD build change in R 3.0.0 and affects packages built before R
    3.0.2. Such packages should be re-made with R CMD build to have
    the tangled R code of vignettes shipped with the tarball.
  * USE_FC_LEN_T will become the default: this uses the correct
    prototypes for Fortran BLAS/LAPACK routines called from C/C++,
    and requires adjustment of most such calls - see 'Writing R
    Extensions' SS6.6.2.  (This has been supported since R 3.6.2.)
  * Package installation speed for packages installed with
    keep.source has been improved. This resolve the issue reported by
    Ofek Shilon in PR#18236.
  UTILITIES:
  * R CMD check can optionally report files/directories left behind
    in home, /tmp (even though TMPDIR is set) and other directories.
    See the "R Internals" manual for details.
  * R CMD check now reports byte-compilation errors during
    installation.  These are not usually fatal but may result in
    parts of the package not being byte-compiled.
  * _R_CHECK_DEPENDS_ONLY_ can be applied selectively to examples,
    tests and/or vignettes in R CMD check: see the "R Internals"
    manual.
  * _R_CHECK_SRC_MINUS_W_IMPLICIT_ now defaults to true: recent
    versions of Apple clang on macOS have made implicit function
    declarations in C into a compilation error.
  * R CMD check --as-cran makes use of the environment variable
    AUTORECONF.  See the "R Internals" manual SS8 for further details.
  * R CMD check --use-valgrind also uses valgrind when re-building
    vignettes as some non-Sweave vignettes unhelpfully comment out
    all their code when R CMD check runs vignettes.
  * Errors in re-building vignettes (unless there are LaTeX errors)
    are reported by R CMD check as ERROR rather than WARNING when
    running vignettes has been skipped (as it frequently is in CRAN
    checks and by --as-cran).
  * R CMD Rd2pdf gains a --quiet option that is used by R CMD build
    when building the PDF package manual.
  * R CMD Rd2pdf now always runs LaTeX in batch mode, consistent with
    Texinfo &gt;= 6.7. The --batch option is ignored.
  * R CMD build and R CMD check now include the Rd file name and line
    numbers in the error message of an \Sexpr evaluation failure.
  * For packages using the \doi Rd macro (now an install-time \Sexpr)
    but no other dynamic Rd content, R CMD build now produces a
    smaller tarball and is considerably faster - skipping temporary
    package installation.
  C-LEVEL FACILITIES:
  * The non-API header R_ext/R-ftp-http.h is no longer provided, as
    the entry points it covered are now all defunct.
  * A number of non-API declarations and macro definitions have been
    moved from the installed header Rinternals.h to the internal
    header Defn.h. Packages that only use entry points and
    definitions documented to be part of the API as specified in
    'Writing R Extensions' SS6 should not be affected.
  * The macro USE_RINTERNALS no longer has any effect when compiling
    package code.  Packages which also use R_NO_REMAP will need to
    ensure that the remapped names are used for calls to API
    functions that were formerly also made available as macros.
  * The deprecated legacy S-compatibility macros PROBLEM, MESSAGE,
    ERROR, WARN, WARNING, RECOVER, ... are no longer defined in
    R_exts/RS.h (included by R.h).  Replace these by calls to
    Rf_error and Rf_warning (defined in header R_ext/Error.h included
    by R.h).
    Header R_ext/RS.h no longer includes R_ext/Error.h.
  * Header R_ext/Constants.h (included by R.h) when included from C++
    now includes the C++ header cfloat rather than the C header
    float.h (now possible as C++11 is required).
  * The legacy S-compatibility macros DOUBLE_* in R_ext/Constants.h
    (included by R.h) are deprecated.
  * The deprecated S-compatibility macros SINGLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * R_Calloc, R_Free and R_Realloc are preferred to their unprefixed
    forms and error messages now use the prefix. These forms were
    introduced in R 3.4.0 and are available even when
    STRICT_R_HEADERS is defined.
  * rmultinom has been documented in 'Writing R Extensions' SS6 so is
    now part of the R API.
  * Similarly, Rtanpi, called from R level tanpi() is now part of the
    R API.
  * The long-deprecated, undocumented and non-API entry point call_R
    is no longer declared in R_ext/RS.h (included by R.h).
  * The header S.h which has been unsupported since Jan 2016 has been
    removed.  Use R.h instead.
  DEPRECATED AND DEFUNCT:
  * The (non-default and deprecated) method = "internal" for
    download.file() and url() no longer supports http:// nor ftp://
    URIs.  (It is used only for file:// URIs.)
    On Windows, download.file(method = "wininet") no longer supports
    ftp:// URIs.  (It is no longer the default method, which is
    "libcurl" and does.)
    On Windows, the deprecated method = "wininet" now gives a warning
    for http:// and https:// URIs for both download.file() and url().
    (It is no longer the default method.)
  * On Windows, the command-line option --max-mem-size and
    environment variable R_MAX_MEM_SIZE are defunct.  The memory
    allocation limit was important for 32-bit builds, but these are
    no longer supported.
  * default.stringsAsFactors() is now formally deprecated, where that
    was only mentioned on its regular help page, previously.  So it
    now gives a warning if called.
  * unix.time() is defunct now; it had been deprecated since R 3.4.0.
  BUG FIXES:
  * Setting digits = 0 in format(), print.default() (and hence
    typically print()) or options() is again invalid.  Its behaviour
    was platform-dependent, and it is unclear what "zero significant
    digits" should mean (PR#18098).
  * Messages from C code in the cairo section of package grDevices
    are now also offered for translation, thanks to Michael Chirico's
    PR#18123.
  * mean(x) with finite x now is finite also without "long.double"
    capability.
  * R CMD Rd2pdf no longer leaves an empty build directory behind
    when it aborts due to an already existing output file.  (Thanks
    to Sebastian Meyer's PR#18141.)
  * density(x, weights = w, na.rm = TRUE) when anyNA(x) is true, now
    removes weights "in parallel" to x, fixing PR#18151, reported by
    Matthias Gondan.  Additionally, it gets a subdensity option.
  * Conversion of \Sexpr[]{&lt;expR&gt;} to LaTeX or HTML no longer
    produces long blocks of empty lines when &lt;expR&gt; itself contains
    several lines all producing empty output.  Thanks to a report and
    patch by Ivan Krylov posted to R-devel.
  * R CMD build no longer fails if a package vignette uses child
    documents and inst/doc exists.  (Thanks to Sebastian Meyer's
    PR#18156.)
  * When an R documentation ('help' source) file man/foo.Rd in a
    package has \donttest{..} examples with a syntax error, it is now
    signalled as ERROR and with correct line numbers relating to the
  * -Ex.R file, thanks to Duncan Murdoch and Sebastian Meyer's
    reports and patch proposals in PR#17501.
  * Improved determination of the correct translation domain in
    non-base packages, addressing the combination of PR#18092 and
    PR#17998 (#c6) with reports and _augmented_ patch #2904 by
    Suharto Anggono.
    Note that "R-base" is no longer the default domain e.g., for
    top-level calls to gettext(); rather translation needs explicit
    domain = * specification in such cases.
  * identical(attrib.as.set=FALSE) now works correctly with data
    frames with default row names (Thanks to Charlie Gao's PR#18179).
  * txtProgressBar() now enforces a non-zero width for argument char,
    without which no progress can be visible.
  * dimnames(table(d)) is more consistent in the case where d is a
    list with a single component, thanks to Thomas Soeiro's report to
    R-devel.
    Further, table(d1, d2) now gives an error when d1 and d2 are data
    frames as suggested by Thomas in PR#18224.
  * Fix for drawing semi-transparent lines and fills on the native
    Windows graphics device (PR#18219 and PR#16694).  Thanks to Nick
    Ray for helpful diagnosis on Bugzilla.
  * The deparser now wraps sub-expressions such as if(A) ..  with
    parentheses when needed; thanks to Duncan Murdoch's PR#18232 and
    Lionel Henry's patches there.
  * remove.packages() no longer tries to uninstall Priority: base
    packages, thanks to a report and suggestions by Colin Fay in
    PR#18227.
  * win.metafile() now has xpinch and ypinch arguments so that the
    user can override Windows' (potentially wrong) guess at device
    dimensions.
  * x[i] and x[[i]] for non-integer i should now behave in all cases
    as always documented: the index used is equivalent to
    as.integer(i) unless that would overflow where trunc(i) is used
    instead; thanks to Suharto Anggono's report and patch proposals
    in PR#17977.
  * asOneSidedFormula() now associates the resulting formula with the
    global environment rather than the evaluation environment created
    for the call.
  * &lt;bibentry&gt;$name now matches the field name case-insensitively,
    consistent with bibentry() creation and the replacement method.
  * cbind() failed to detect some length mismatches with a mixture of
    time-series and non-time-series inputs.
  * The default LaTeX style file Sweave.sty used by the RweaveLatex
    driver no longer loads the obsolete ae package; thanks to a
    report by Thomas Soeiro in PR#18271.  Furthermore, it now skips
    \usepackage[T1]{fontenc} for engines other than pdfTeX (if
    detected) or if the new [nofontenc] option is used.
  * smooth.spline() now stores its logical cv argument more safely,
    fixing a rare bug when printing, and also stores n.
  * smooth.spline(x,y,*) now computes the cv.crit statistic
    correctly, also when is.unsorted(x), fixing PR#18294.
  * The data.frame method of rbind() now warns when binding
    not-wholly-recycling vectors, by analogy to the default method
    (for matrices).
  * setAs() finds the correct class for name to when multiple
    packages define a class with that name. Thanks to Gabor Csardi
    for the report.
  * Fix for detaching a package when two classes of the same name are
    present in method signatures for the same generic. Thanks to
    Gabor Csardi for the report.
  * match.arg("", c("", "a", "B")) gives a better error message, in
    part from PR#17959, thanks to Elin Waring.
  * R CMD Sweave --clean no longer removes pre-existing files or
    subdirectories (PR#18242).
  * The quartz() device no longer splits polylines into subpaths.
    That has caused narrowly-spaced lines with many points to always
    look solid even when dashed line type was used due to dash phase
    restarts.
  * Deparsing constructs such as quote(1 + `!`(2) + 3) works again as
    before R 3.5.0, thanks to the report and patch in PR#18284 by
    Suharto Anggono.
  * as.list(f) for a factor f now keeps names(f), fixing PR#18309.
  * qbeta(.001, .9, .009) and analogous qf() calls now return a
    correct value instead of NaN or wrongly 1, all with a warning;
    thanks to the report by Ludger Goeminne in PR#18302.
  * plot.lm() failed to produce the plot of residuals vs.  factor
    levels (i.e., which=5 when leverages are constant) for models
    with character predictors (PR#17840).
  * interaction.plot(..., xtick = TRUE) misplaced the x-axis line
    (PR#18305).
  * Not strictly fixing a bug, format()ing and print()ing of
    non-finite Date and POSIXt values NaN and +/-Inf no longer show
    as NA but the respective string, e.g., Inf, for consistency with
    numeric vector's behaviour, fulfilling the wish of PR#18308.
  * R CMD check no longer runs test scripts generated from
    corresponding .Rin files twice and now signals an ERROR if
    processing an .Rin script fails.
  * tools::Rd2txt() used for plain-text help pages now renders \hrefs
    (if tools::Rd2txt_options(showURLs = TRUE)) and \urls with
    percent-encoding and standards-compliant delimiting style (angle
    brackets and no URL: prefix).  \email is now rendered with a
    mailto: prefix.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1655985600">- CHANGES IN R 4.2.1:
  NEW FEATURES:
  * New function utils::findCRANmirror() to find out if a CRAN mirror
    has been selected, otherwise fallback to the main site.  This
    behaves in the same way as tools::CRAN_package_db() and is
    intended for packages wishing to access CRAN for purposes other
    than installing packages.
    The need for this was shown by a day when the main CRAN website
    was offline and a dozen or so packages which had its URL
    hardcoded failed their checks.
  INSTALLATION on a UNIX-ALIKE:
  * The libraries searched for by --with-blas (without a value) now
    include BLIS (after OpenBLAS but before ATLAS).  And on macOS,
    the Accelerate framework (after ATLAS).  (This is patterned after
    the AX_BLAS macro from the Autoconf Archive.)
  * The included LAPACK sources have been updated to 3.10.1.
  UTILITIES:
  * The (full path to) the command tidy to be used for HTML
    validation can be set by environment variable R_TIDYCMD.
  * Setting environment variable _R_CHECK_RD_VALIDATE_RD2HTML_ to a
    false value will override R CMD check --as-cran and turn off HTML
    validation.  This provides a way to circumvent a problematic
    tidy.
    The 2006 version that ships with macOS is always skipped.
  C-LEVEL FACILITIES:
  * The undocumented legacy declarations of Sint, Sfloat, SINT_MAX
    and SINT_MIN in header R.h are deprecated.
  BUG FIXES:
  * fisher.test(d) no longer segfaults for "large" d; fixing PR#18336
    by preventing/detecting an integer overflow reliably.
  * tar(., files=*) now produces correctly the warning about invalid
    uid or gid of files, fixing PR#18344, reported by Martin Morgan.
  * tk_choose.files() with multi = FALSE misbehaved on paths
    containing spaces (PR#18334) (regression introduced in R 4.0.0).
  * sort(x, partial = ind, *) now works correctly notably for the
    non-default na.last = FALSE or TRUE, fixing PR#18335 reported by
    James Edwards.
  * Environment variable _R_CHECK_XREFS_REPOSITORIES_ is only used
    for checking .Rd cross-references in R CMD check (as documented)
    and not for other uses looking for a CRAN mirror.
  * The search for a CRAN mirror when checking packages now uses
    getOption("repos") if that specifies a CRAN mirror, even when it
    does not also specify all three Bioconductor repositories (as was
    previously required).
  * The HTML code generated by tools::Rd2HTML() has been improved to
    pass tidy 5.8.0.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1667217600">- CHANGES IN R 4.2.2:
  NEW FEATURES:
  * tools::Rdiff(useDiff = TRUE) checks for the presence of an
    external diff command and switches to useDiff = FALSE if none is
    found.  This allows R CMD Rdiff to always work.
  * On Windows, environment variable R_LIBCURL_SSL_REVOKE_BEST_EFFORT
    can be used to switch to only 'best-effort' SSL certificate
    revocation checks with the default "libcurl" download method.
    This reduces security, but may be needed for downloads to work
    with MITM proxies (PR#18379).
  * (macOS) The run-time check for libraries from XQuartz for X11 and
    Tcl/Tk no longer uses otool from the Apple Developer Tools
    (PR#18400).
  * The LaTeX style for producing the PDF manuals, Rd.sty, now loads
    the standard amsmath, amsfonts and amssymb packages for greater
    coverage of math commands in the Rd \eqn and \deqn macros.  The
    \mathscr LaTeX command is also provided (via the mathrsfs
    package, if available, or the amsfonts bundle otherwise),
    fulfilling the wish of PR#18398.
  * (Windows) The default format of readClipboard() and
    writeClipboard() has been changed to 13 (CF_UNICODETEXT).
  INSTALLATION on a UNIX-ALIKE:
  * The PDF manuals (if built) can be compacted by the new target
    make compact-pdf (at the top level or in directory doc/manual).
  * There is now configure support for LLVM clang 15 on Linux, which
    defaults to position-independent (PIE) executables whereas
    gfortran does not.
  * Many small changes to ease compilation (and suppress warnings)
    with LLVM clang 15.
  BUG FIXES:
  * Rscript -e would fail if stdin were closed (Reported by Henrik
    Bengtsson.)
  * qt(*, log.p=TRUE) in outer tails no longer produces NaN in its
    final steps, thus fixing PR#18360.
  * tools::Rd2latex() now escapes hashes and ampersands when writing
    URLs, fixing LaTeX errors with such URLs in \tabular.
  * When isGeneric(f, fdef=*) is used with mismatching names, the
    warning is better understandable; reported (with fix) in PR#18370
    by Gabe Becker.
  * poly(x, n) now works again (and is now documented) when x is a
    "Date" or "POSIXct" object, or of another class while fulfilling
    mode(x) == "numeric".  This also enables poly(x, *, raw=TRUE) for
    such variables.  Reported by Michael Chirico to R-devel.
  * write.table(), write.csv() and write.csv2() restore their
    numerical precision (internal equivalent of digits = 15) after an
    interrupt (PR#18384).
  * One can now read also byte FF from a clipboard connection
    (PR#18385).
  * source("") and source(character()) now give more helpful error
    messages.
  * R CMD check --as-cran set _R_CHECK_TIMINGS_ too late to have the
    intended effect.
  * as.POSIXlt(x) now also works with very large dates x, fixing
    PR#18401 reported by Hannes M"uhleisen.
  * Files can now be extracted even from very large zip archives
    (PR#18390, thanks to Martin Jakt).
  * Non-finite objects of class "POSIXlt" are now correctly coerced
    to classes "Date" and "POSIXct"; following up on the extension to
    format() them correctly.
  * Added methods for is.finite(), is.infinite() and is.nan() for
    "POSIXlt" date-time objects.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1678881600">- CHANGES IN R 4.2.3:
  C-LEVEL FACILITIES:
  * The definition of DL_FUNC in R_ext/Rdynload.h has been changed to
    be fully C-compliant.  This means that functions loaded _via_ for
    example R_GetCCallable need to be cast to an appropriate type if
    they have any arguments.
  * .Machine has a new element sizeof.time_t to identify old systems
    with a 32-bit type and hence a limited range of date-times (and
    limited support for dates millions of years from present).
  PACKAGE INSTALLATION:
  * (Windows) The default C++ standard had accidentally been left at
    C++11 when it was changed to C++14 on Unix.
  BUG FIXES:
  * As "POSIXlt" objects may be "partially filled" and their list
    components meant to be recycled, length() now is the length of
    the longest component.
  * as.POSIXlt.Date() could underflow for dates in the far past (more
    than half a million years BCE).
  * as.Date.POSIXlt(x) would return "1970-01-01" instead of NA in R
    4.2.2, e.g., for
    x &lt;- as.POSIXlt(c("2019-01-30","2001-1-1"))
    x$mon &lt;- c(0L, NA); as.Date(x)
  * R CMD check failed to apply enabled _R_CHECK_SUGGESTS_ONLY_ to
    examples and vignettes (regression in R 4.2.0).
  * R CMD check did not re-build vignettes in separate processes by
    default (regression in R 4.2.0).
  * Running examples from HTML documentation now restores previous
    knitr settings and options (PR#18420).
  * Quartz: fonts are now located using Core Graphics API instead of
    deprecated ATS which is no longer supported in the macOS 13 SDK
    (PR#18426).  This also addresses an issue where the currently
    used font in the Quartz device context was not correctly
    retained.
  * (Windows) Math symbols in text drawing functions are again
    rendered correctly (PR#18440).  This fixes a regression in R
    4.2.1 caused by a fix in PR#18382 which uncovered an issue in
    GraphApp due to which the symbol charset was not used with TT
    Symbol font face.
  * (Windows) Installing a package with a src/Makefile.{win,ucrt}
    file includes ~/.R/Makevars.win64 in the search for user
    makevars, as documented in "R Installation and Administration"
    and done for packages with a src/Makevars.{win,ucrt} file.
  * format(&lt;POSIXlt_w/_unbalanced_sec&gt;, "....%OS&lt;n&gt;") with n &gt; 0 no
    longer accidentally uses the unbalanced seconds, thanks to
    Suharto Anggono's report (including patch) in PR#18448.
  * solve.default(a, b) works around issues with some versions of
    LAPACK when a contains NA or NaN values.
  * When UseMethod() cannot dispatch, it no longer segfaults
    producing the error message in case of a long class(), thanks to
    Joris Vankerschaver's report (including patch) in PR#18447.
  * When example(foo, ..) produces graphics on an interactive device
    it needs to open itself, it now leaves devAskNewPage() unchanged
    even when it was FALSE, thus fixing a 14 years old '&lt;FIXME&gt;'.
  * packageDescription() again catches errors from encoding
    conversions. This also fixes broken packageVersion() in C locale
    on systems where iconv does not support transliteration.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1681128000">- add patch to build with libcurl &gt;= 8</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1682078400">- CHANGES IN R 4.3.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Calling &amp;&amp; or || with LHS or (if evaluated) RHS of length greater
    than one is now always an error, with a report of the form
    'length = 4' in coercion to 'logical(1)'
    Environment variable _R_CHECK_LENGTH_1_LOGIC2_ no longer has any
    effect.
  NEW FEATURES:
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.10.1.  (This caused some platform-dependent
    changes to package check output.)  And then to the sources from
    LAPACK version 3.11.0 (with changes only to double complex
    subroutines).
  * The included LAPACK sources have been updated to include the four
    Fortran 90 routines rather than their Fortran 77 predecessors.
    This may give some different signs in SVDs or
    eigendecompositions..  (This completes the transition to LAPACK
    3.10.x begun in R 4.2.0.)
  * The LAPACK sources have been updated to version 3.11.0.  (No new
    subroutines have been added, so this almost entirely bug fixes:
    Those fixes do affect some computations with NaNs, including R's
    NA.)
  * The parser now signals _classed_ errors, notably in case of the
    pipe operator |&gt;.  The error object and message now give line and
    column numbers, mostly as proposed and provided by Duncan Murdoch
    in PR#18328.
  * toeplitz() is now generalized for asymmetric cases, with a
    toeplitz2() variant.
  * xy.coords() and xyz.coords() and consequently, e.g., plot(x,y,
    log = "y") now signal a _classed_ warning about negative values
    of y (where log(.) is NA).  Such a warning can be specifically
    suppressed or caught otherwise.
  * Regular expression functions now check more thoroughly whether
    their inputs are valid strings (in their encoding, e.g. in
    UTF-8).
  * The performance of grep(), sub(), gsub() and strsplit() has been
    improved, particularly with perl = TRUE and fixed = TRUE.  Use of
    useBytes = TRUE for performance reasons should no longer be
    needed and is discouraged: it may lead to incorrect results.
  * apropos() gains an argument dot_internals which is used by the
    completion (help(rcompgen)) engine to also see base internals
    such as .POSIXct().
  * Support in tools::Rdiff() for comparing uncompressed PDF files is
    further reduced - see its help page.
  * qqplot(x, y, ...) gains conf.level and conf.args arguments for
    computing and plotting a confidence band for the treatment
    function transforming the distribution of x into the distribution
    of y (Switzer, 1976, _Biometrika_). Contributed by Torsten
    Hothorn.
  * Performance of package_dependencies() has been improved for cases
    when the number of dependencies is large.
  * Strings newly created by gsub(), sub() and strsplit(), when any
    of the inputs is marked as "bytes", are also marked as "bytes".
    This reduces the risk of creating invalid strings and accidental
    substitution of bytes deemed invalid.
  * Support for readLines(encoding = "bytes") has been added to allow
    processing special text files byte-by-byte, without creating
    invalid strings.
  * iconv(from = "") now takes into account any declared encoding of
    the input elements and uses it in preference to the native
    encoding.  This reduces the risk of accidental creation of
    invalid strings, particularly when different elements of the
    input have different encoding (including "bytes").
  * Package repositories in getOption("repos") are now initialized
    from the repositories file when utils is loaded (if not already
    set, e.g., in .Rprofile).  (From a report and patch proposal by
    Gabriel Becker in PR#18405.)
  * compactPDF() gets a verbose option.
  * type.convert() and hence read.table() get new option tryLogical =
    TRUE with back compatible default.  When set to false, converts
    "F" or "T" columns to character.
  * Added new unit prefixes "R" and "Q" for abbreviating
    (unrealistically large) sizes beyond 10^{27} in standard = "SI",
    thanks to Henrik Bengtsson's PR#18435.
  * as.data.frame()'s default method now also works fine with atomic
    objects inheriting from classes such as "roman", "octmode" and
    "hexmode", such fulfilling the wish of PR#18421, by Benjamin
    Feakins.
  * The as.data.frame.vector() utility now errors for wrong-length
    row.names.  It warned for almost six years, with "Will be an
    error!".
  * sessionInfo() now also contains La_version() and reports codepage
    and timezone when relevant, in both print() and toLatex() methods
    which also get new option tzone for displaying timezone
    information when locale = FALSE.
  * New function R_compiled_by() reports the C and Fortran compilers
    used to build R, if known.
  * predict(&lt;lm&gt;, newdata = *) no longer unnecessarily creates an
    offset of all 0s.
  * solve() for complex inputs now uses argument tol and by default
    checks for 'computational singularity' (as it long has done for
    numeric inputs).
  * predict(&lt;rank-deficient lm&gt;, newdata=*) now obeys a new argument
    rankdeficient, with new default "warnif", warning only if there
    are non-estimable cases in newdata.  Other options include
    rankdeficient = "NA", predicting NA for non-estimable newdata
    cases.  This addresses PR#15072 by Russ Lenth and is based on his
    original proposal and discussions in PR#16158 also by David Firth
    and Elin Waring.  Still somewhat experimental.
  * Rgui console implementation now works better with the NVDA screen
    reader when the full blinking cursor is selected.  The underlying
    improvements in cursor handling may help also other screen
    readers on Windows.
  * The drop-field control in GraphApp can now be left with the TAB
    key and all controls can be navigated in the reverse order using
    the Shift+TAB key, improving accessibility of the Rgui
    configuration editor.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now fully accurate
    (instead of to "only" minimally five digits).
  * demo(error.catching) now also shows off withWarnings() and
    tryCatchWEMs().
  * As an experimental feature the placeholder _ can now also be used
    in the rhs of a forward pipe |&gt; expression as the first argument
    in an extraction call, such as _$coef. More generally, it can be
    used as the head of a chain of extractions, such as _$coef[[2]].
  * Spaces in the environment variable used to choose the R session's
    temporary directory (TMPDIR, TMP and TEMP are tried in turn) are
    now fatal.  (On Windows the 'short path' version of the path is
    tried and used if that does not contain a space.)
  * all.equal.numeric() gets a new optional switch giveErr to return
    the numeric error as attribute.  Relatedly,
    stopifnot(all.equal&lt;some&gt;(a, b, ..)) is as "smart" now, as
    stopifnot(all.equal(....)) has been already, thus allowing
    customized all.equal&lt;Some&gt;() wrappers.
  * R on Windows is now able to work with path names longer than 260
    characters when these are enabled in the system (requires at
    least Windows 10 version 1607).  Packages should be updated to
    work with long paths as well, instead of assuming PATH_MAX to be
    the maximum length.  Custom front-ends and applications embedding
    R need to update their manifests if they wish to allow this
    feature.  See
    &lt;https://blog.r-project.org/2023/03/07/path-length-limit-on-windows&gt;
    for more information.
  * 'Object not found' and 'Missing argument' errors now give a more
    accurate error context. Patch provided by Lionel Henry in
    PR#18241.
  * The @ operator is now an S3 generic. Based on contributions by
    Tomasz Kalinowski in PR#18482.
  * New generic chooseOpsMethod() provides a mechanism for objects to
    resolve cases where two suitable methods are found for an Ops
    Group Generic. This supports experimenting with alternative
    object systems. Based on contributions by Tomasz Kalinowski in
    PR#18484.
  * inherits(x, what) now accepts values other than a simple
    character vector for argument what. A new generic, nameOfClass(),
    is called to resolve the class name from what. This supports
    experimenting with alternative object systems. Based on
    contributions by Tomasz Kalinowski in PR#18485.
  * Detection of BLAS/LAPACK in use (sessionInfo()) with FlexiBLAS
    now reports the current backend.
  * The "data.frame" method for subset() now warns about extraneous
    arguments, typically catching the use of = instead of == in the
    subset expression.
  * Calling a:b when numeric a or b is longer than one may now be
    made into an error by setting environment variable
    _R_CHECK_LENGTH_COLON_ to a true value, along the proposal in
    PR#18419 by Henrik Bengtsson.
  * density(x, weights = *) now warns if automatic bandwidth
    selection happens without using weights; new optional warnWbw may
    suppress the warning.  Prompted by Christoph Dalitz' PR#18490 and
    its discussants.
  * rm(list = *) is faster and more readable thanks to Kevin Ushey's
    PR#18492.
  * The plot.lm() function no longer produces a normal Q-Q plot for
    GLMs. Instead it plots a half-normal Q-Q plot of the absolute
    value of the standardized deviance residuals.
  * The print() method for class "summary.glm" no longer shows
    summary statistics for the deviance residuals by default.  Its
    optional argument show.residuals can be used to show them if
    required.
  * The tapply() function now accepts a data frame as its X argument,
    and allows INDEX to be a formula in that case. by.data.frame()
    similarly allows INDICES to be a formula.
  * The performance of df[j] &lt;- value (including for missing j) and
    write.table(df) has been improved for data frames df with a large
    number of columns.  (Thanks to Gabriel Becker's PR#18500,
    PR#18503 and discussants, prompted by a report from Toby Dylan
    Hocking on the R-devel mailing list.)
  * The matrix multiply operator %*% is now an S3 generic, belonging
    to new group generic matrixOps.  From Tomasz Kalinowski's
    contribution in PR#18483.
  * New function array2DF() to convert arrays to data frames,
    particularly useful for the list arrays created by tapply().
  DATES and TIMES:
  * On platforms where (non-UTC) datetimes before 1902 (or before
    1900 as with system functions on recent macOS) are guessed by
    extrapolating time zones from 1902-2037, there is a warning at
    the first use of extrapolation in a session.  (As all time zones
    post 2037 are extrapolation, we do not warn on those.)
  * (Platforms using --with-internal-tzone, including Windows and by
    default macOS). How years are printed in dates or date-times can
    be controlled by environment variable R_PAD_YEARS_BY_ZERO.  The
    default remains to pad to 4 digits by zeroes, but setting value
    no gives no padding (as used by default by glibc).
  * strftime() tries harder to determine the offset for the "%z"
    format, and succeeds on the mainstream R platforms.
  * strftime() has a limit of 2048 bytes on the string produced -
    attempting to exceed this is an error.  (Previously it silently
    truncated at 255 bytes.)
  * sessionInfo() records (and by default prints) the system time
    zone as part of the locale information.  Also, the source
    (system/internal) of the date-time conversion and printing
    functions.
  * Objects of class "POSIXlt" created in this version of R always
    have 11 components: component zone is always set, and component
    gmtoff is set for times in UTC and usually set on the (almost
    all) platforms which have C-level support, otherwise is NA.
  * There are comprehensive validity checks on the structure of
    objects of class "POSIXlt" when converting (including formatting
    and printing).  (This avoids mis-conversions of hand-crafted
    objects.)
  * There is some support for using the native date-time routines on
    macOS: this is only viable on recent versions (e.g. 12.6 and 13)
    and does get wrong some historical changes (before 1900, during
    WWII).  Use of --with-internal-tzone remains the default.
  * as.POSIXct(&lt;numeric&gt;) and as.POSIXlt(.) (without specifying
    origin) now work.  So does as.Date(&lt;numeric&gt;).
  * as.Date.POSIXct(., tz) now treats several tz values, notably
    "GMT" as equivalent to "UTC", proposed and improved by Michael
    Chirico and Joshua Ulrich in PR#17674.
  * Experimental balancePOSIXlt() utility allows using "ragged" and
    or out-of-range "POSIXlt" objects more correctly, e.g., in
    subsetting and subassignments.  Such objects are now documented.
    More experimentally, a "POSIXlt" object may have an attribute
    "balanced" indicating if it is known to be filled or fully
    balanced.
  * Functions axis.Date() and axis.POSIXct() are rewritten to gain
    better default tick locations and better default formats by using
    prettyDate(). Thanks to Swetlana Herbrandt.
  * The mapping of Windows' names for time zones to IANA's 'Olson'
    names has been updated.  When ICU is available (it is by
    default), it is used to get a mapping for the current region set
    in Windows.  This can be overridden by setting environment
    variable TZ to the desired Olson name - see OlsonNames() for
    those currently available.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 16
    and so packages that provide graphics devices should be
    reinstalled.
  * The grDevices and grid packages have new functions for rendering
    typeset glyphs, primarily: grDevices::glyphInfo() and
    grid::grid.glyph().
    Rendering of typeset glyphs is only supported so far on the
    Cairo-based graphics devices and on the pdf() and quartz()
    devices.
  * The defined behaviour for "clear" and "source" compositing
    operators (via grid::grid.group()) has been changed (to align
    better with simple interpretation of original Porter-Duff
    definitions).
  * Support for gradients, patterns, clipping paths, masks, groups,
    compositing operators, and affine transformations has been added
    to the quartz() device.
  INSTALLATION on a UNIX-ALIKE:
  * A system installation of generic LAPACK 3.10.0 or later will be
    preferred to the version in the R sources.
    configure option --with-lapack=no (equivalently --without-lapack)
    forces compilation of the internal LAPACK sources.
    If --with-lapack is not specified, a system liblapack is looked
    for and used if it reports version 3.10.0 or later and does not
    contain BLAS routines.
    Packages using LAPACK will need to be reinstalled if this changes
    to using an external library.
  * On aarch64 Linux platforms using GCC, configure now defaults to
  - fPIC (instead of -fpic), as desired in PR#18326.
  * configure now checks conversion of datetimes between POSIXlt and
    POSIXct around year 2020.  Failure (which has been seen on
    platforms missing tzdata) is fatal.
  * If configure option --with-valgrind-instrumentation is given
    value 1 or 2, option --with-system-valgrind-headers is now the
    default and ignored (with a warning).  It is highly recommended
    that the system headers are installed alongside valgrind: they
    are part of its packaging on some Linux distributions and
    packaged separately (e.g. in the valgrind-devel RPM) on others.
    configure will give a warning if they are not found.
    The system headers will be required in a future release of R to
    build with valgrind instrumentation.
  * libcurl 8.x is now accepted by configure: despite a change in
    major version number it changes neither API nor ABI.
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools43, an update of the Rtools42 toolchain.  It is
    based on gcc 12 and newer versions of MinGW-W64, binutils and
    libraries.  At this time R-devel can still be built using
    Rtools42 without changes, but when R-devel is installed via the
    installer, it will by default look for Rtools43.
  * Old make targets rsync-extsoft and 32-bit ones that are no longer
    needed have been removed.
  * Default builds (including for packages) no longer select C99.
    Thus the C standard used is the default for the compiler, which
    for the toolchain in Rtools43 is C17.  (This is consistent with
    Unix builds.)
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++17 where
    available (which it is on all currently checked platforms): if
    not C++14 or C++11 is used if available otherwise C++ is not
    supported.
  * USE_FC_LEN_T is the default: this uses the correct
    (compiler-dependent) prototypes for Fortran BLAS/LAPACK routines
    called from C/C++, and requires adjustment of many such calls -
    see 'Writing R Extensions' SS6.6.1.
  * There is initial support for C++23 as several compilers are now
    supporting -std=c++23 or -std=c++2b or similar.  As for C++20,
    there no additional configure checks for C++23 features beyond a
    check that the compiler reports a __cplusplus value greater than
    that in the C++20 standard.  C++ feature tests should be used.
  * There is support for a package to indicate the version of the C
    standard which should be used to compile it, and for the
    installing user to specify this.  In most cases R defaults to the
    C compiler's default standard which is C17 (a `bug-fix' of C11) -
    earlier versions of R or compilers may have defaulted to C99.
    Current options are:
    USE_C17 Use a standard that is at most C17.  The intention is to
    allow legacy packages to still be installed when later C
    standards become the default, including packages using new
    keywords as identifiers or with K&amp;R-style function
    declarations.  This will use C17 if available, falling back
    to C11.
    USE_C90 Use the C90 (aka C89) standard.  (As that standard did
    not require compilers to identify that version, all we can
    verify is that the compiler does not claim to be using a
    later standard.  It may accept C99 features - for example
    clang accepts // to make comments.)
    USE_C99 Use the C99 standard. This should be rarely needed - it
    avoids the few new features of C11/C17 which can be useful if
    a package assumes them if C17 is specified and they are not
    implemented.
    USE_C23 Use C23 (or in future, later).  Compiler/library support
    for C23 is still being implemented, but LLVM clang from
    15.0.0 and the upcoming GCC 13 have quite extensive support.
    These can be specified as part of the SystemRequirements field in
    the package's DESCRIPTION file or _via_ options --use-C17 and so
    on of R CMD INSTALL and R CMD SHLIB.
    For further details see "Writing R Extensions" SS1.2.5.
  * (Windows) A src/Makefile.ucrt or src/Makefile.win file is now
    included after R_HOME/etcR_ARCH/Makeconf and so no longer needs
    to include that file itself.  Installation of a package with such
    a file now uses a site Makevars file in the same way as a package
    with a src/Makevars.win file would.
  * configure is now passed crucial variables such as CC and CFLAGS
    in its environment, as many packages were not setting them (as
    documented in 'Writing R Extensions' SS1.2).
    This has most effect where configure is used to compile parts of
    the package - most often by cmake or libtool which obfuscate the
    actual compile commands used.
    Also used for configure.win and configure.ucrt on Windows.
  FORTRAN FLAGS:
  * The flag -fno-optimize-sibling-calls is no longer forced for
    gfortran 7 and later.  It should no longer be needed now using
    'hidden' character-length arguments when calling BLAS/LAPACK
    routines from C/C++ is the default even for packages.  (Unless
    perhaps packages call Fortran code from C/C++ without using R's
    headers and without allowing for these arguments.)
  C-LEVEL FACILITIES:
  * The deprecated S-compatibility macros DOUBLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * The deprecated legacy typedefs of Sint and Sfloat in header R.h
    are no longer defined, and that header no longer includes header
    limits.h from C nor climits from C++.
  * New macro CAD5R() is provided in Rinternals.h and used in a few
    places in the R sources.
  * ALTREP now supports VECSXP vectors. Contributed by Gabor Csardi
    in PR#17620.
  * The Rcomplex definition (in header R_ext/Complex.h) has been
    extended to prevent possible mis-compilation when interfacing
    with Fortran (PR#18430).  The new definition causes compiler
    warnings with static initializers such as {1, 2}, which can be
    changed to {.r=1, .i=2}.
    Using the new definition from C++ depends on compiler extensions
    supporting C features that have not been incorporated into the
    C++ standards but are available in g++ and clang++: this may
    result in C++ compiler warnings but these have been worked around
    for recent versions of common compilers (GCC, Apple/LLVM clang,
    Intel).
    It is intended to change the inclusion of header R_ext/Complex.h
    by other R headers, so C/C++ code files which make use of
    Rcomplex should include that header explicitly.
  UTILITIES:
  * R CMD check does more checking of package .Rd files, warning
    about invalid email addresses and (some) invalid URIs and noting
    empty \item labels in description lists.
  * R CMD check now also reports problems when reading package news
    in md (file NEWS.md) and (optionally) plain text (file NEWS)
    formats.
  * _R_CHECK_TIMINGS_ defaults to a value from the environment even
    for R CMD check --as-cran; this allows for exceptionally fast or
    slow platforms.
    It now applies to checking PDF and HTML versions of the manuals,
    and 'checking CRAN incoming feasibility'.
  * R CMD check can optionally (but included in --as-cran) check
    whether HTML math rendering _via_ KaTeX works for the package .Rd
    files.
  * Non-interactive debugger invocations can be trapped by setting
    the environment variable _R_CHECK_BROWSER_NONINTERACTIVE_ to a
    true value.  This is enabled by R CMD check --as-cran to detect
    the use of leftover browser() statements in the package.
  * The use of sprintf and vsprintf from C/C++ has been deprecated in
    macOS 13 and is a known security risk.  R CMD check now reports
    (on all platforms) if their use is found in compiled code:
    replace by snprintf or vsnprintf respectively. [*NB:* whether
    such calls get compiled into the package is platform-dependent.]
  * Where recorded at installation, R CMD check reports the C and
    Fortran compilers used to build R.
    It reports the OS in use (if known, as given by osVersion) as
    well as that R was built for.
    It notes if a C++ standard was specified which is older than the
    current default: many packages have used C++11 to mean 'not
    C++98' - as C++11 is the minimum supported since R 4.0.0, that
    specification can probably be removed.
  * R CMD INSTALL reports the compilers (and on macOS, the SDK) used,
    and this is copied to the output of R CMD check.
    Where a C++ standard is specified, it is reported.
  * R CMD check's 'checking compilation flags in Makevars' has been
    relaxed to accept the use of flags such as -std=f2008 in
    PKG_FFLAGS.
  * tools::buildVignettes() has a new argument skip, which is used by
    R CMD check to skip (and note) vignettes with unavailable
    \VignetteDepends (PR#18318).
  * New generic .AtNames() added to enable class-specific completions
    after @. The formerly internal function findMatches() is now
    exported, mainly for use in methods for .DollarNames() and
    .AtNames().
  DEPRECATED AND DEFUNCT:
  * default.stringsAsFactors() is defunct.
  * Calling as.data.frame.&lt;class&gt;() directly (for 12 atomic classes)
    is going to be formally deprecated, currently activated by
    setting the environment variable
    _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ to non-empty, which also
    happens in R CMD check --as-cran.
  BUG FIXES:
  * Hashed environments with sizes less than 5 can now grow.
    (Reported to R-devel by Duncan Garmonsway.)
  * as.character(&lt;Rd&gt;, deparse = TRUE) failed to re-escape curly
    braces in LaTeX-like text.  (Reported by Hadley Wickham in
    PR#18324.)
  * library() now passes its lib.loc argument when requiring Depends
    packages; reported (with fix) in PR#18331 by Mikael Jagan.
  * R CMD Stangle: improved message about 'Output' files.
  * head(x, n) and tail(x, n) now signal an error if n is not
    numeric, instead of incidentally "working" sometimes returning
    all of x.  Reported and discussed by Colin Fay, in PR#18357.
  * The "lm" method for summary() now gives the correct F-statistic
    when the model contains an offset.  Reported in PR#18008.
  * C() and `contrasts&lt;-`() now preserve factor level names when
    given a function object (as opposed a function name which did
    preserve names). Reported in PR#17616.
  * c(a = 1, 2)[[]] no longer matches 2 but rather signals a
    _classed_ error.  Reported and analysed by Davis Vaughan in
    PR#18367, a duplicate of PR#18004, by Jan Meis et al.  For
    consistency, NULL[[]] is also erroneous now.  x[[]] &lt;- v gives an
    error of the same class "MissingSubscriptError".
  * The relist() function of utils now supports NULL elements in the
    skeleton (PR#15854).
  * ordered(levels = *) (missing x) now works analogously to factor(,
    ordered=TRUE); reported (with fix) by Achim Zeileis in PR#18389.
  * User-defined Rd macro definitions can now span multiple lines,
    thanks to a patch from Duncan Murdoch. Previously, the Rd parser
    silently ignored everything after the first line.
  * Plain-text help (tools::Rd2txt()) now preserves an initial blank
    line for text following description list items.
  * tools::Rd2HTML() and tools::Rd2latex() no longer split \arguments
    and \value lists at Rd comments.
  * tools::Rd2latex() now correctly handles optional text outside
    \items of argument lists as well as bracketed text at the
    beginning of sections, e.g., \value{[NULL]}.
  * as.character(&lt;POSIXt&gt;) now behaves more in line with the methods
    for atomic vectors such as numbers, and is no longer influenced
    by options().  Ditto for as.character(&lt;Date&gt;).  The
    as.character() method gets arguments digits and OutDec with
    defaults _not_ depending on options().  Use of as.character(*,
    format = .) now warns.
  * Similarly, the as.character.hexmode() and *.octmode() methods
    also behave as good citizen methods and back compatibility option
    keepStr = TRUE.
  * The as.POSIXlt(&lt;POSIXlt&gt;) and as.POSIXct(&lt;POSIXct&gt;) default
    methods now do obey their tz argument, also in this case.
  * as.POSIXlt(&lt;Date&gt;) now does apply a tz (time zone) argument, as
    does as.POSIXct(); partly suggested by Roland Fuss on the R-devel
    mailing list.
  * as.Date.POSIXlt(x) now also works when the list components are of
    unequal length, aka "partially filled" or "ragged".
  * expand.model.frame() looked up variables in the wrong environment
    when applied to models fitted without data.  Reported in
    PR#18414.
  * time() now (also) uses the ts.eps = getOption("ts.eps") argument
    and thus by default rounds values very close to the start (or
    end) of a year.  Based on a proposal by Andre"i V. Kostyrka on
    R-help.
  * Printing of a factanal() result with just one factor and sort =
    TRUE now works regularly, fixing PR#17863 by Timothy Bates,
    thanks to the 'R Contributors' working group.
  * Printing 0-length objects of class "factor", "roman", "hexmode",
    "octmode", "person", "bibentry", or "citation" now prints
    something better, one of which fixes PR#18422, reported by
    Benjamin Feakins.
  * Sys.timezone() queries timedatectl only if systemd is loaded;
    addressing a report by Jan Gorecki in PR#17421.
  * The formula method of cor.test() had scoping problems when
    environment(formula) was not the calling environment; reported
    with a patch proposal by Mao Kobayashi in PR#18439.
  * attach() of an environment with active bindings now preserves the
    active bindings.  Reported by Kevin Ushey in PR#18425.
  * BLAS detection now works also with system-provided libraries not
    available as regular files.  This fixes detection of the
    Accelerate framework on macOS since Big Sur.  Reported by David
    Novgorodsky.
  * download.file() gives a helpful error message in case of an
    invalid download.file.method option, thanks to Colin Fay's report
    in PR#18455.
  * Sporadic crashes of Rterm when using completion have been fixed.
  * Rprof() is now more reliable.  A livelock in thread
    initialization with too short sampling interval has been fixed on
    macOS.  A deadlock in using the C runtime has been fixed on
    Windows.  A potential deadlock has been prevented on Unix.
  * Cursor placement in Rgui now works even after a fixed-width font
    is selected.
  * Mandatory options (options()) are now set on startup so that
    saving and restoring them always works (PR#18372).
  * Package installation, R CMD INSTALL or install.packages(*), now
    parses each of the &lt;pkg&gt;/R/*.R files individually instead of
    first concatenating and then parse()ing the large resulting file.
    This allows parser or syntax errors to be diagnosed with correct
    file names and line numbers, thanks to Simon Dedman's report and
    Bill Dunlap's patch in PR#17859.
    This _does_ require syntactically self contained R source files
    now, fixing another inadvertent bug.
  * predict.lm(&lt;model with offset&gt;) now finds the offset in the
    correct environment, thanks to Andr'e Gillibert's report and patch
    in PR#18456.
  * getInitial(&lt;formula&gt;) now finds the selfStart model in the
    correct environment.  (Reported by Ivan Krylov in PR#18368.)
  * Fix for possible segfault when using recently-added graphics
    features, such as gradients, clipping paths, masks, and groups
    with pdf(file=NULL).
  * class(m) &lt;- class(m) no longer changes a matrix m by adding a
    class _attribute_.
  * packageDate(pkg) now only warns once if there is no pkg.
  * When ts() creates a multivariate time series, "mts", it also
    inherits from "array" now, and is.mts() is documented _and_
    stricter.
  * Rd2txt() now preserves line breaks of \verb Rd content and from
    duplicated \cr.  The former also fixes the rendering of verbatim
    output from Rd \Sexpr in plain-text help.
  * uniroot(f, interval) should no longer wrongly converge _outside_
    the interval in some cases where abs(f(x)) == Inf for an x at the
    interval boundary, thanks to posts by Ben Bolker and Serguei
    Sokol on R-devel.
  * Vectorized alpha handling in palette functions such as in gray(),
    rainbow(), or hcl.colors() works correctly now, thanks to Achim
    Zeileis' report and patch in PR#18476.
  * Formatting and print()ing of bibentry objects has dropped the
    deprecated citation.bibtex.max argument, such that the bibtex
    argument's default for print.bibentry() depends directly on the
    citation.bibtex.max option, whereas in format.bibentry() the
    option no longer applies.
  * Attempting to use a character string naming a foreign function
    entry point in a foreign function call in a package will now
    signal an error if the packages has called R_forceSymbols to
    specify that symbols must be used.
  * An error in table() could permanently set options(warn=2)
    promoting all subsequent warnings to errors.
  * The sigma() function gave misleading results for binary GLMs.  A
    new method for objects of class "glm" returns the square root of
    the estimate of the dispersion parameter using the same
    calculation as summary.glm().
  * bs() and ns() in the (typical) case of automatic knot
    construction, when some of the supposedly inner knots coincide
    with boundary knots, now moves them inside (with a warning),
    building on PR#18442 by Ben Bolker.
  * R CMD on Windows now skips the site profile with --no-site-file
    and --vanilla even when R_PROFILE is set (PR#18512, from Kevin
    Ushey).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1686916800">- CHANGES IN R 4.3.1:
  C-LEVEL FACILITIES:
  * The C-level API version of R's integrate(), Rdqags() in Applic.h,
    now returns the correct number of integrand evaluations neval,
    fixing PR#18515 reported and diagnosed by Stephen Wade.
  * The C prototypes for LAPACK calls dspgv and dtptrs in
    R_exts/Lapack.h had one too many and one too few character length
    arguments - but this has not caused any known issues. To get the
    corrected prototypes, include
    [#]include &lt;Rconfig.h&gt; // for PR18534fixed
    [#]ifdef PR18534fixed
    [#] define usePR18534fix 1
    [#]endif
    [#]include &lt;R_exts/Lapack.h&gt;
    in your C/C++ code (PR#18534).
  INSTALLATION:
  * Many of the checks of esoteric Internet operations and those
    using unreliable external sites have been moved to a new target
    that is not run by default and primarily intended for the core
    developers.  To run them use
    cd tests; make test-Internet-dev
  BUG FIXES:
  * .S3methods(), typically called from methods(), again marks
    methods from package base as visible.
    Also, the visibility of non-base methods is again determined by
    the method's presence in search().
  * tools::Rdiff() is now more robust against invalid strings, fixing
    installation tests on Windows without Rtools installed
    (PR#18530).
  * Fix (new) bug in hcl.colors(2, *), by Achim Zeileis (PR#18523).
  * head(., &lt;illegal&gt;) and tail(..) now produce more useful "Error in
    ...." error messages, fixing PR#18362.
  * Package code syntax on Windows is checked in UTF-8 when UTF-8 is
    the native encoding.
  * na.contiguous(x) now also returns the first run, when it is at
    the beginning and there is a later one of the same length;
    reported to R-devel, including a fix, by Georgi Boshnakov.
    Further, by default, it modifies only an existing attr(*,"tsp")
    but otherwise no longer sets one.
  * chol(&lt;not pos.def&gt;, pivot = &lt;T|F&gt;) now gives a correct error or
    warning message (depending on pivot), thanks to Mikael Jagan's
    (PR#18541).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1699012800">- CHANGES IN R 4.3.2:
  NEW FEATURES:
  * The default initialization of the "repos" option from the
    repositories file at startup can be skipped by setting
    environment variable R_REPOSITORIES to NULL such that
    getOption("repos") is empty if not set elsewhere.
  * qr.X() is now an implicit S4 generic in methods.
  * iconv(to = "ASCII//TRANSLIT") is emulated using substitution on
    platforms which do not support it (notably Alpine Linux).  This
    should give a human-readable conversion in ASCII on all platforms
    (rather than NA_character_).
  * trans3d() gains options continuous and verbose addressing the
    problem of possible "wrap around" when projecting too long
    curves, as reported by Achim Zeileis in PR#18537.
  * tools::showNonASCII() has been rewritten to work better on macOS
    14 (which has a changed implementation of iconv()).
  * tiff(type = "quartz") (the default on macOS) now warns if
    compression is specified: it continues to be ignored.
  INSTALLATION on a UNIX-ALIKE:
  * There is some support for building with Intel's LLVM-based
    compilers on x86_64 Linux, such as (C) icx, (C++) ipcx and
    (Fortran) ifx from oneAPI 2023.x.y.
  * There is support for using LLVM's flang-new as the Fortran
    compiler from LLVM 16.0.x (preferably 17.0.0 or later).
  UTILITIES:
  * R CMD check reports the use of the Fortran 90 random number
    generator RANDOM_NUMBER() and the subroutines to initialize it.
    'Writing R Extensions' has example code to use R's RNGs from
    Fortran.
  BUG FIXES:
  * substr(x, n, L) &lt;- cc now works (more) correctly for multibyte
    UTF-8 strings x when L &gt; nchar(x), thanks to a report and patch
    by 'Architect 95'.
  * contrib.url(character()) now returns 0-length character() as
    documented, which also avoids spurious warnings from
    available.packages() et al. in the edge case of an empty vector
    of repository URLs.
  * readChar(., 4e8) no longer fails, thanks to Kodi Arfer's report
    (PR#18557).
  * lapply(&lt;list&gt;, as.data.frame) no longer warns falsely for some
    base vector components.
  * Communication between parent and child processes in the multicore
    part of parallel could fail on platforms that do not support an
    arbitrarily large payload in system functions read()/write() on
    pipes (seen on macOS where a restriction to INT_MAX bytes is
    documented, without doing a partial read unlike Linux). The
    payload is now split into 1Gb chunks to avoid that problem.
    (PR#18571)
  * qqplot(x,y, conf.level=.) gives better confidence bounds when
    length(x) != length(y), thanks to Alexander Ploner's report and
    patch proposal (PR#18557).
  * norm(&lt;0-length&gt;, "2") now gives zero instead of an error, as all
    the other norm types, thanks to Mikael Jagan's PR#18542.
  * Build-stage Rd macros \packageAuthor and \packageMaintainer now
    process Authors@R, fixing NA results when the package DESCRIPTION
    omits Author and Maintainer fields.
  * Formatting and printing complex numbers could give things like
    0.1683-0i because of rounding error: -0i is now replaced by +0i.
  * postscript() refused to accept a title comment containing the
    letter "W" (PR#18599).
  * isoreg(c(1,Inf)) signals an error instead of segfaulting, fixing
    PR#18603.
  * tiff(type = "Xlib") was only outputting the last page of
    multi-page plots.
  * tools::latexToUtf8() again knows about \~{n} and other letters
    with tilde, fixing a regression in R 4.3.0, and about \^{i} as an
    alternative to \^{\i} (similarly with other accents).
    Furthermore, LaTeX codes for accented I letters are now correctly
    converted, also fixing related mistakes in
    tools::encoded_text_to_latex().
  * tar(*, tar = "internal") no longer creates out-of-spec tar files
    in the very rare case of user or group names longer than 32
    bytes, fixing PR#17871 with thanks to Ivan Krylov.
  * When using the "internal" timezone datetime code, adding a
    fraction of a second no longer adds one second, fixing PR#16856
    from a patch by Ivan Krylov.
  * tools::checkRd() no longer produces spurious notes about
    "unnecessary braces" from multi-line Rd results of \Sexpr macros.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1709208000">- CHANGES IN R 4.3.3:
  NEW FEATURES:
  * iconv() now fixes up variant encoding names such as "utf8"
    case-insensitively.
  DEPRECATED AND DEFUNCT:
  * The legacy encoding = "MacRoman" is deprecated in pdf() and
    postscript(): support was incomplete in earlier versions of R.
  BUG FIXES:
  * Arguments are now properly forwarded to methods on S4 generics
    with ... in the middle of their formal arguments. This was broken
    for the case when a method introduced an argument but did not
    include ... in its own formals. Thanks to Herv'e Pag`es for the
    report PR#18538.
  * Some invalid file arguments to pictex(), postscript() and xfig()
    opened a file called NA rather than throw an error.  These
    included postscript(NULL) (which some people expected to work
    like pdf(NULL)).
  * Passing filename = NA to svg(), cairo_pdf(), cairo_ps() or the
    Cairo-based bitmap devices opened a file called NA: it now throws
    an error.
  * quartz(file = NA) opened a file called NA, including when used as
    a Quartz-based bitmap device.  It now gives an error.
  * rank(&lt;long vector&gt;) now works, fixing PR#18617, thanks to Ilia
    Kats.
  * seq.int() did not adequately check its length.out argument.
  * match(&lt;POSIXct&gt;, .) is correct again for differing time zones,
    ditto for "POSIXlt", fixing PR#18618 reported by Bastian Klein.
  * drop.terms(*, dropx = &lt;0-length&gt;) now works, fixing PR#18563 as
    proposed by Mikael Jagan.
  * drop.terms(*) keeps + offset(.) terms when it should, PR#18565,
    and drop.terms() no longer makes up a response, PR#18566, fixing
    both bugs thanks to Mikael Jagan.
  * getS3method("t", "test") no longer finds the t.test() function,
    fixing PR#18627.
  * pdf() and postscript() support for the documented Adobe encodings
    "Greek" and "Cyrilllic" was missing (although the corresponding
    Windows' codepages could be used).
  * Computations of glyph metric information for pdf() and
    postscript() did not take into account that transliteration could
    replace one character by two or more (only seen on macOS 14) and
    typically warned that the information was not known.
  * rank(x) no longer overflows during integer addition, when
    computing rank average for largish but not-yet long vector x,
    fixing PR#18630, thanks to Ilia Kats.
  * list.files() on Windows now returns also files with names longer
    that 260 bytes (the Windows limit is 260 characters).
    Previously, some file names particularly with 'East Asian'
    characters were omitted.
  * cov2cor(&lt;0 x 0&gt;) now works, fixing PR#18423 thanks to Mikael
    Jagan and Elin Waring.
  * cov2cor(&lt;negative diagonal&gt;) and similar now give one warning
    instead of two, with better wording, fixing PR#18424 thanks to
    Mikael Jagan.
  * tools:: startDynamicHelp() now ensures port is in proper range,
    fixing PR#18645.
  * pbeta(x, a,b) is correct now for x=0 or 1 in the boundary cases
    where a or b or both are 0, fixing PR#18672 thanks to Michael
    Fay.
  * pmatch(x, table) for large table, also called for data frame row
    selection, dfrm[nm, ], is now interruptible, fixing PR#18656.
  * predict(&lt;rank-deficient lm&gt;, newdata=*) fix computing of nbasis,
    see Russ Lenth's comment 29 in PR#16158.
  * Added a work-around for a bug in macOS 14.3.1 and higher which
    prevents R plots in the Quartz Cocoa device from updating on
    screen.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1713960000">- CHANGES IN R 4.4.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Startup banners, R --version, sessionInfo() and R CMD check no
    longer report (64-bit) as part of the platform as this is almost
    universal - the increasingly rare 32-bit platforms will still
    report (32-bit).
    On Windows, ditto for window titles.
  * is.atomic(NULL) now returns FALSE, as NULL is not an atomic
    vector.  Strict back-compatibility would replace is.atomic(foo)
    by (is.null(foo) || is.atomic(foo)) but should happen only
    sparingly.
  NEW FEATURES:
  * The confint() methods for "glm" and "nls" objects have been
    copied to the stats package.  Previously, they were stubs which
    called versions in package MASS. The MASS namespace is no longer
    loaded if you invoke (say) confint(glmfit).  Further, the "glm"
    method for profile() and the plot() and pairs() methods for class
    "profile" have been copied from MASS to stats.  (profile.nls()
    and plot.profile.nls() were already in stats.)
  * The confint() and profile methods for "glm" objects have gained a
    possibility to do profiling based on the Rao Score statistic in
    addition to the default Likelihood Ratio. This is controlled by a
    new test = argument.
  * The pairs() method for "profile" objects has been extended with a
    which = argument to allow plotting only a subset of the
    parameters.
  * The "glm" method for anova() computes test statistics and
    p-values by default, using a chi-squared test or an F test
    depending on whether the dispersion is fixed or free.  Test
    statistics can be suppressed by giving argument test a false
    logical value.
  * In setRepositories() the repositories can be set using their
    names via name = instead of index ind =.
  * methods() and .S3methods() gain a all.names option for the (rare)
    case where functions starting with a . should be included.
  * Serializations can now be interrupted (e.g., by Ctrl-C on a
    Unix-alike) if they take too long, e.g., from save.image(),
    thanks to suggestions by Ivan Krylov and others on R-devel.
  * New startup option --max-connections to set the maximum number of
    simultaneous connections for the session.  Defaults to 128 as
    before: allowed values up to 4096 (but resource limits may in
    practice restrict to smaller values).
  * R on Windows (since Windows 10 2004) now uses the new Segment
    Heap allocator. This may improve performance of some
    memory-intensive applications.
  * When R packages are built, typically by R CMD build &lt;pkg&gt;, the
    new --user=&lt;build_user&gt; option overrides the (internally
    determined) user name, currently Sys.info()["user"] or LOGNAME.
    This is a (modified) fulfillment of Will Landau's suggestion in
    PR#17530.
  * tools::testInstalledBasic() gets new optional arguments outDir
    and testSrcdir, e.g., allowing to use it in a &lt;builddir&gt; !=
    &lt;srcdir&gt; setup, and in standard "binary" Windows installation
  * if* a source tests/ folder is present.
  * range(&lt;DT_with_Inf&gt;, finite = TRUE) now work for objects of class
    "Date", "POSIXct", and "POSIXlt" with infinite entries,
    analogously to range.default(), as proposed by Davis Vaughan on
    R-devel.  Other range()-methods can make use of new function
    .rangeNum().
  * New .internalGenerics object complementing .S3PrimitiveGenerics,
    for documentation and low-level book-keeping.
  * grid() now invisibly returns the x- and y- coordinates at which
    the grid-lines were drawn.
  * norm(., type) now also works for complex matrices.
  * kappa(., exact = TRUE, norm = *) now works for all norms and also
    for complex matrices.  In symmetric / triangular cases, the new
    argument uplo = "U" | "L" allows the upper or lower triangular
    part to be specified.
  * memDecompress(type = "unknown") recognizes compression in the
    default 'zlib' format as used by memCompress(type = "gzip").
  * memCompress() and memDecompress() will use the libdeflate library
    (&lt;https://github.com/ebiggers/libdeflate&gt;) if installed.  This
    uses the same type of compression for type = "gzip" but is 1.5-2x
    faster than the system libz library on some common platforms: the
    speed-up may depend on the library version.
  * diff() for objects of class "Date", "POSIXct", and "POSIXlt"
    accepts a units argument passed via ....
  * Dynamic help now does a much better job of rendering package
    DESCRIPTION metadata.
  * Rprof() gains an event argument and support for elapsed (real)
    time profiling on Unix (PR#18076).
  * filled.contour() gains a key.border argument.
  * tools::update_pkg_po() gets arguments pot_make and mo_make for
    _not_ re-making the corresponding files, and additionally a
    verbose argument.
  * Hexadecimal string colour specifications are now accepted in
    short form, so, for example, we can use "#123", which is
    equivalent to "#112233".
    Thanks to MikeFC for the original idea and Ella Kaye, Malcolm
    Barrett, George Stagg, and Hanne Oberman for the patch.
  * Plain-text help shows \var markup by angle brackets.
  * The new experimental primitive function declare() is intended to
    eventually allow information about R code to be communicated to
    the interpreter, compiler, and code analysis tools. The syntax
    for declarations is still being developed.
  * Functions psmirnov(), qsmirnov() and rsmirnov() in package stats
    have had argument two.sided renamed to alternative, to take into
    account that the permutation distributions of the one-sided
    statistics can be different in the case of ties.  Consequence of
    PR#18582.
  * sort() is now an implicit S4 generic in methods.
  * Formatting and printing, format(z), print(z), of complex vectors
    z no longer zap relatively small real or imaginary parts to zero,
    fixing PR#16752.  This is an API change, as it was documented
    previously to round real and imaginary parts together on purpose,
    producing nicer looking output.  As mentioned, e.g. in the PR,
    this change is compatible with many other "R-like" programming
    environments.
    We have simplified the internal code and now basically format the
    real and imaginary parts independently of each other.
  * New experimental functions Tailcall() and Exec() to support
    writing stack-space-efficient recursive functions.
  * Where characters are attempted to be plotted by pdf(),
    postscript() and xfig() which are not in the selected 8-bit
    character set (most often Latin-1) and the R session is using a
    UTF-8 locale, the warning messages will show the UTF-8 character
    rather than its bytes and one dot will be substituted per
    character rather than per byte.  (Platforms whose iconv() does
    transliteration silently plot the transliteration.)
    In a UTF-8 locale some transliterations are now done with a
    warning (e.g., dashes and Unicode minus to hyphen, ligatures are
    expanded, permille (‰) is replaced by o/oo), although the OS may
    have got there first.  These are warnings as they will continue
    to be replaced by dots in earlier versions of R.
  * The matrix multiplication functions crossprod() and tcrossprod()
    are now also primitive and S3 generic, as %*% had become in R
    4.3.0.
  * source() and example() have a new optional argument catch.aborts
    which allows continued evaluation of the R code after an error.
  * The non-Quartz tiff() devices allow additional types of
    compression if supported by the platform's libtiff library.
  * The list of base and recommended package names is now provided by
    tools::standard_package_names().
  * cairo_pdf() and cairo_ps() default to onefile = TRUE to closer
    match pdf() and postscript().
  * New option catch.script.errors provides a documented way to catch
    errors and then continue in non-interactive use.
  * L %||% R newly in base is an expressive idiom for the phrases
    if(!is.null(L)) L else R or if(is.null(L)) R else L.
  * The return value from warnings() now always inherits from
    "warnings" as documented, now also in the case of no warnings
    where it previously returned NULL.
  * as.complex("1i") now returns 0 + 1i instead of NA with a warning.
  * z &lt;- c(NA, 1i) now keeps the imaginary part Im(z[1]) == 0, no
    longer coercing to NA_complex_.  Similarly, cumsum(z) correctly
    sums real and imaginary parts separately, i.e., without
    "crosstalk" in case of NAs.
  * On Alpine Linux iconv() now maps "latin2", "latin-2", "latin9"
    and "latin-9" to encoding names the OS knows about
    (case-insensitively).
  * iconv(sub = "Unicode") now always zero-pads to four (hex) digits,
    rather than to 4 or 8.  (This seems to have become the convention
    once Unicode restricted the number of Unicode points to 2^21 - 1
    and so will never need more than 6 digits.)
  * NCOL(NULL) now returns 0 instead of 1, for consistency with
    cbind().
  * The information for the Euro glyph missing from the Adobe .afm
    files for the Courier, Helvetica and Times families has been
    copied from their URW equivalents - this will improve vertical
    centring in the pdf() and postscript() devices.
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.12.0.  The changes are almost entirely cosmetic.
  * The included LAPACK sources have been updated to version 3.12.0
    and some further double-complex routines added.
  * There are new font families for the 2014--5 URW 2.0 fonts (see
    ?pdf) which are included in recent versions of Ghostscript.
    These have font widths for most Greek glyphs and a few others
    which were missing from the original versions (whose font
    families remain available for reproducibility, although
    Ghostscript-based viewers will render using the 2.0 versions).
  * Improve the large-n efficiency of as.matrix(&lt;dist&gt;), thanks an R
    contributors effort, notably by Tim Taylor and Heather Turner,
    see PR#18660.
  * The default and numeric methods of all.equal() get a check.class
    option.
  * zapsmall() gets new optional arguments, function mFUN and min.d,
    for extra flexibility; fulfills a wish in PR#18199.  Also, it is
    now an implicit S4 generic in package methods.
  * The Rd filter for aspell() gains an ignore argument.
  * New generic function sort_by(), primarily useful for the
    data.frame method which can be used to sort rows of a data frame
    by one or more columns.
  * The icence headers for the RPC code in src/extra/xdr have been
    updated to use the GPL-compatible licence published by Oracle
    America in 2010.
  * New function pkg2HTML() in tools to create single-page HTML
    reference manuals for R packages.
  * The byte code evaluator now uses less C stack space for recursive
    calls to byte-compiled functions. It also makes more of an effort
    to avoid allocations for scalar return values.
  * New completion option backtick (disabled by default) allows
    non-syntactic completions to be wrapped in backquotes. This is
    currently only useful for Jupyter notebooks via the IRkernel
    package, and may cause problems for other backends.
  INSTALLATION:
  * The parser has been updated to work with bison 3.8.2, which is
    now used for the pre-generated parsers in gram.c, file.c, and
    gramRd.c. A few parser error messages have changed, which may
    affect code that relies on exact messages.
  INSTALLATION on a UNIX-ALIKE:
  * System valgrind headers are now required to use configure option
  - -with-valgrind-instrumentation with value 1 or 2.
  * configure will warn if it encounters a 32-bit build, as that is
    nowadays almost untested.
  * Environment variable R_SYSTEM_ABI is no longer used and so no
    longer recorded in etc/Renviron (it was not on Windows and was
    only ever used when preparing package tools).
  * If the libdeflate library and headers are available, libdeflate
    rather than libz is used to (de)compress R objects in lazy-load
    databases.  Typically tasks spend up to 5% of their time on such
    operations, although creating lazy-data databases is one of the
    exceptions.
    This can be suppressed if the library is available by the
    configure option --without-libdeflate-compression.
  * configure option --enable-lto=check has not worked reliably since
    2019 and has been removed.
  * The minimum autoconf requirement for a maintainer build has been
    increased to autoconf 2.71.
    It is intended to increase this to 2.72 for R 4.5.0: the
    distributed configure file was generated using 2.72.
  * The minimum version requirement for an external LAPACK has been
    reduced to 3.9.0.
  * No default C++ compiler is set if no C++17 compiler is detected:
    there is no longer an automatic fallback to C++14 or C++11.
    Compilers from the last five years should have sufficient
    support: for others macros CXX and CXXSTD can be set in file
    config.site to provide a fallback if needed.
    The Objective-C++ compiler now by default uses the standard
    selected by R for C++ (currently C++17) rather than the default
    standard for the C++ compiler (which on macOS is still C++98).
  INSTALLATION on macOS:
  * A new configure option --with-newAccelerate makes use of Apple's
    'new' BLAS / LAPACK interfaces in their Accelerate framework.
    Those interfaces are only available in macOS 13.3 or later, and
    building requires SDK 13.3 or later (from the Command Line Tools
    or Xcode 14.3 or later).
    By default the option uses new Accelerate for BLAS calls: to also
    use it for LAPACK use option --with-newAccelerate=lapack.  The
    later interfaces provide LAPACK 3.9.1 rather than 3.2.1: 3.9.1 is
    from 2021-04 and does not include the improved algorithms
    introduced in LAPACK 3.10.0 (including for BLAS calls).
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools44, an update of the Rtools43 toolchain.  It is
    based on GCC 13 and newer versions of MinGW-W64, binutils and
    libraries (targeting 64-bit Intel CPUs).  R-devel can no longer
    be built using Rtools43 without changes.
  * Rtools44 has experimental support for 64-bit ARM (aarch64) CPUs
    _via_ the LLVM 17 toolchain using lld, clang/flang-new and
    libc++.
  UTILITIES:
  * R CMD check notes when S4-style exports are used without
    declaring a strong dependence on package methods.
  * tools::checkRd() (used by R CMD check) detects more problems with
    \Sexpr-based dynamic content, including bad nesting of \Sexprs
    and invalid arguments.
  * tools::checkRd() now reports Rd titles and section names ending
    in a period; this is ignored by R CMD check unless environment
    variable _R_CHECK_RD_CHECKRD_MINLEVEL_ is set to -5 or smaller.
  * R CMD check now notes Rd files without an \alias, as long
    documented in 'Writing R Extensions' §1.3.1.  The check for a
    missing \description has been moved from tools::checkRd() to
    tools::checkRdContents().
  * R CMD check now visits inst/NEWS.Rd and OS-specific man
    subdirectories when checking Rd files.
  * tools::checkDocFiles() and tools::checkRdContents() now also
    check internal Rd files by default, but "specially" (ignoring
    missing documentation of arguments).
  * R CMD Rdiff gets option --useEx.
  * R CMD check now warns on non-portable uses of Fortran KIND such
    as INTEGER(KIND=4) and REAL(KIND=8).
    To see the failing lines set environment variable
    _R_CHECK_FORTRAN_KIND_DETAILS_ to a true value.
  * When checking Rd files, R CMD check now notes some of the "lost
    braces" that tools::checkRd() finds.  Typical problems are Rd
    macros missing the initial backslash (e.g., code{...}), in-text
    set notation (e.g., {1, 2}, where the braces need escaping), and
    \itemize lists with \describe-style entries of the form
    \item{label}{description}.
  * R CMD INSTALL (and hence check) will compile C++ code with
  - DR_NO_REMAP if environment variable _R_CXX_USE_NO_REMAP_ is set
    to a true value.  It is planned that this will in future become
    the default for compiling C++.
  * The new built-in Rd macro \dontdiff{} can be used to mark example
    code whose output should be ignored when comparing check output
    to reference output (tests/Examples/&lt;pkg&gt;-Ex.Rout.save).  The
    \dontdiff tag, like \donttest, is _not_ shown on the rendered
    help page, so provides a clean alternative to ##
    IGNORE_RDIFF_(BEGIN|END) comments.
  * R CMD build when there is no NAMESPACE, now uses the recommended
    exportPattern("^[^.]"), instead of exporting everything.
  * R CMD check now warns about non-ASCII characters in the NAMESPACE
    file (in addition to R files). Such packages are not portable and
    may fail to install on some platforms.
  C-LEVEL FACILITIES:
  * Headers R_ext/Applic.h and R-ext/Linpack.h used to include
    R_ext/BLAS.h although this was undocumented and unneeded by their
    documented entry points.  They no longer do so.
  * New function R_missing(), factored out from do_missing(), used to
    fix PR#18579.
  * SEXP type S4SXP has been renamed to OBJSXP to support
    experimenting with alternative object systems.  The S4SXP value
    can still be used in C code but is now deprecated.  Based on
    contributions from the R Consortium's Object-Oriented Programming
    Working Group.
  * New function pow1p(x,y) for accurate (1+x)^y.
  * mkCharLenCE was incorrectly documented to take a size_t length
    but was implemented with int (and character strings in R are
    limited to 2^31 - 1 bytes).
  DEPRECATED AND DEFUNCT:
  * data() no longer handles zipped data from long-defunct (since R
    2.13.0) --use-zip-data installations.
  * The legacy graphics devices pictex() and xfig() are now
    deprecated.  They do not support recent graphics enhancements and
    their font handling is rudimentary. The intention is to retain
    them for historical interest as long as they remain somewhat
    functional.
  * Support for encoding = "MacRoman" has been removed from the pdf()
    and postscript() devices - this was a legacy encoding supporting
    classic macOS up to 2001 and no longer has universal libiconv
    support.
  * is.R() is deprecated as no other S dialect is known to be in use
    (and this could only identify historical dialects, not future
    ones).
    Further information on calls can be obtained by setting the
    environment variable _R_DEPRECATED_IS_R_ to error which turns the
    deprecation warning into an error and so by default gives a
    traceback.  (This is done by R CMD check --as-cran.)
  * UseMethod() no longer forwards local variables assigned in the
    generic function into method call environments before evaluating
    the method body. This makes method calls behave more like
    standard function calls and makes method code easier to analyze
    correctly.
  * The twelve as.data.frame.&lt;class&gt;() methods which were deprecated
    only via _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ and in R CMD
    check --as-cran are formally deprecated now in favour of calling
    as.data.frame() or as.data.frame.vector().  The deprecation
    "check" now works also when as.data.frame() is S4 generic thanks
    to Ivan Krylov.
  * The default method for the directional comparison operators &lt;, &gt;,
    &lt;=, and &gt;= now signals an error when one of the operands is a
    language object, i.e. a symbol or a call.
  * For terms.formula(), deprecate abb and neg.out arguments
    _formally_ in addition to just documenting it.
  BUG FIXES:
  * The methods package is more robust to not being attached to the
    search path.  More work needs to be done.
  * pairwise.t.test() misbehaved when subgroups had 0 DF for
    variance, even with pool.sd = TRUE.  (PR#18594 by Jack Berry).
  * Probability distribution functions [dpq]&lt;distrib&gt;(x, *), but also
    bessel[IKJY](x, .) now consistently preserve attributes(x) when
    length(x) == 0, e.g., for a 2 x 0 matrix, thanks to Karolis
    Koncevičius' report PR#18509.
  * Group "Summary" computations such as sum(1:3, 4, na.rm = 5, NA,
    7, na.rm = LL) now give an error instead of either 17 or NN for
    LL true or false, as proposed by Ivan Krylov on the R-devel
    mailing list.  (This also means it is now an error to specify
    na.rm more than once.)
  * as.complex(x) now returns complex(real = x, imaginary = 0) for
    _all_ numerical and logical x, notably also for NA or
    NA_integer_.
  * Directories are now omitted by file.copy(, recursive = FALSE) and
    in file.append() (PR#17337).
  * gsub() and sub() are now more robust to integer overflow when
    reporting errors caused by too large input strings (PR#18346).
  * Top-level handlers are now more robust to attempts to remove a
    handler whilst handlers are running (PR#18508).
  * The handling of Alt+F4 in dialogs created on Windows using
    GraphApp has been fixed (PR#13870).
  * density() more consistently computes grid values for the
    FFT-based convolution, following Robert Schlicht's analysis and
    proposal in PR#18337, correcting density values typically by a
    factor of about 0.999.  Argument old.coords = TRUE provides back
    compatibility.
  * palette.colors() gains a name argument that defaults to FALSE
    controlling whether the vector of colours that is returned has
    names (where possible).  PR#18529.
  * tools::xgettext() no longer extracts the (non-translatable) class
    names from warningCondition and errorCondition calls.
  * S3method(&lt;gen&gt;, &lt;class&gt;, &lt;func&gt;) in the NAMESPACE file now works
    (again) when &lt;func&gt; is visible from the namespace, e.g.,
    imported, or in base.
  * getParseData(f) now also works for a function defined in the
    first of several &lt;pkg&gt;/R/*.R source files, thanks to Kirill
    Müller's report and Duncan Murdoch's patch in PR#16756.
  * Rd \Sexpr macros with nested #ifdef conditionals were not
    processed.
  * A non-blocking connection with non-default encoding (such as a
    socket) now correctly returns from readLines() after new data has
    arrived also when its EOF had been reached previously.  Thanks to
    Peter Meilstrup's report on R-devel and Ivan Krylov's report and
    patch proposal in PR#18555.
  * tools::checkRdContents() failed to detect empty argument
    descriptions when they spanned multiple lines, including those
    generated by prompt().  These cases are now noted by R CMD check.
  * Plain-text help no longer outputs spurious colons in the
    arguments list (for multi-line \item labels in the Rd source).
  * kappa() and rcond() work correctly in more cases; kappa(., norm =
    "2") now warns that it computes the 1-norm with (default) exact =
    FALSE; prompted by Mikael Jagan's quite comprehensive PR#18543.
  * Rd skeletons generated by prompt() or promptData() now use a
    dummy title (so R CMD build works).  tools::checkRdContents() has
    been updated to detect such template leftovers, including from
    promptPackage().
  * When S4 method dispatch fails because no method was found, the
    error message now includes the signature argument names; thanks
    to Michael Chirico's proposal on the R-devel list.
  * withAutoprint({ .. }) now preserves srcrefs previously lost,
    thanks to Andrew Simmons' report plus fix in PR#18572.
  * transform.data.frame() no longer adjusts names; in particular,
    untransformed variables are kept as-is, including those with
    syntactically invalid names (PR#17890).
  * The keep.source option for Rd \Sexpr blocks is no longer ignored.
  * The formula methods for t.test() and wilcox.test() now catch when
    paired is passed, addressing PR#14359; use Pair(x1, x2) ~ 1 for a
    paired test.
  * The level reported in the browser prompt was often too large. It
    now shows the number of browser contexts on the stack.
  * For cbind() and rbind(), the optional deparse.level argument is
    now properly passed to methods, thanks to Mikael Jagan's PR#18579
    and comments there.
  * Some error and warning messages for large ('long vector')
    matrix(v, nr, nc) and dim(m) &lt;- d are now correct about sizes,
    using long long formatting, fixing PR#18612 (and more) reported
    by Mikael Jagan.
  * readChar(useBytes = TRUE) now terminates strings even when the
    underlying connection uses extra spaces in the input buffer.
    This fixes problems with extra garbage seen with gzip
    connections, PR#18605.
  * Named capture in PCRE regular expressions now works also with
    more than 127 named groups (PR#18588).
  * Datetime functions are now robust against long jumps when dealing
    with internal time zone changes.  This avoids confusing warnings
    about an invalid time zone, previously triggered by turning
    warnings into errors or handling them via tryCatch (PR#17966,
    PR#17780).
  * Datetime functions now restore even an empty TZ environment
    variable after internal time zone changes (PR#17724).  This makes
    results of datetime functions with this (typically unintentional)
    setting more predictable.
  * drop.terms(*) now drops response as by default, keep.response =
    FALSE, fixing PR#18564 thanks to Mikael Jagan.
  * dummy.coef(.) now also works for lm()-models with character
    categorical predictor variables rather than factor ones, fixing
    PR#18635 reported by Jinsong Zhao.
  * formals(f) &lt;- formals(f) now also works for a function w/o
    arguments and atomic _constant_ body(f).
  * Correct as.function(&lt;invalid list&gt;, .)'s error message.
  * removeSource() is yet more thorough in finding and removing
    "srcref" and the other source references from parsed R language
    chunks, fixing PR#18638 thanks to Andrew Simmons.
  * dgeom() is more accurate now, notably when its result is very
    small, fixing PR#18642 thanks to the proposal of Morten Welinder,
    also improving other instances where C level binom_raw(x, n, ..)
    has x == 0 or x== n.
  * warning() with options(warn = 1) has improved output for
    multi-line messages.
  * axis.Date() and axis.POSIXct() now respect the par("lab") setting
    for the number of pretty() intervals.
  * Comparisons for language objects (which are based on deparsing)
    are now more careful about using accurate deparsed results
    (PR#18676).
  * Plain-text help (Rd2txt) now correctly preserves blank lines
    following single-line \dontrun code.
  * &lt;POSIXlt&gt;[*] no longer sets wrong "balanced" attribute, fixing
    PR#18681 thanks to Mikael Jagan.
  * str(&lt;classed-call&gt;) now deparses the call as expected, fixing
    PR#18684, reported by Dave Slager.
  * In Rd examples, code following the closing brace of a \dontrun,
    \dontshow or \donttest tag on the same line is no longer skipped
    when R CMD check runs the examples.
  * as.data.frame(matrix(*, ncol=0)) now gets valid names() and
    colnames(); reported by Davis Vaughan on the R-devel list.
  * Internal Mathlib function stirlerr(n) is now almost fully
    (52-bit) accurate for all n &gt;= ~5.9 and more accurate also in the
    range 1 -- 5.9.  This entails small ("after 12th decimal")
    changes in density functions, e.g., dgamma() in _some_ regions of
    their support.  The fix was partly prompted by Morten Welinder's
    PR#18640.
  * Numbers like 9876543.2 are now considered non-integer by Mathlib
    internal R_nonint(), amending original fix of PR#15734.
  * Rd comment lines no longer cause broken paragraphs in the
    rendered PDF and plain-text help. In code blocks, pure comment
    lines (starting with %) no longer produce an empty line.
  * xtabs(Freq ~ .) now consistently defaults to na.action = na.pass,
    using na.rm = FALSE (added as an argument) when summing over Freq
    (PR#17770).
  * tools::testInstalledPackage() is no longer silent about failures
    from running examples or tests and its return code no longer
    ignores failures from checking vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1718366400">- CHANGES IN R 4.4.1:
  C-LEVEL FACILITIES:
  * Functions R_atof and R_strtod declared in header R_ext/Utils.h
    are now documented in 'Writing R Extensions' and so formally part
    of the API.
  * The non-API entry points Rf_setSVector, Rf_StringFalse,
    Rf_StringTrue and Rf_isBlankString have been added to those
    reported by R CMD check.
  * The new function Rf_allocLang is now available. This provides an
    alternative to the idiom of calling Rf_allocList followed by
    SET_TYPEOF.
  UTILITIES:
  * R CMD check now reports as warnings what gfortran calls 'Fortran
    2018 deleted features', all of which have long been marked as
    'obsolescent' and some of which were deleted in Fortran 2008 or
    earlier.  Fortran compilers are no longer required to support
    these.
  BUG FIXES:
  * as.numeric(), scan(), type.convert() and other places which use
    the internal C function R_strtod now require a _non-empty_ digit
    sequence in a decimal or binary exponent.  This aligns with the
    C/POSIX standard for strtod and with ?NumericConstants.
  * as.data.frame(m, make.names=NA) now works correctly for a matrix
    m with NA's in row names.
  * The error message from &lt;POSIXlt&gt;[["hour"]] and similar now
    mentions *[[, "hour"]], as wished for in PR#17409 and proposed by
    Michael Chirico.
  * qbinom() and potentially qpois(), qnbinom(), no longer sometimes
    fail accurate inversion (of pbinom(), etc), thanks to Christopher
    Chang's report and patch in PR#18711.
  * The internal help server on Windows can again serve requests sent
    in quick succession, fixing a regression in R 4.4.0.
  * debugcall(&lt;S3Generic&gt;()) now also works when a corresponding
    S4-generic version is in the methods cache (PR#18143).
  * Package tools' toTitleCase(ch0) now returns character(0) when ch0
    is of zero length; fixing PR#18724, reported by David Hugh Jones.
  * R CMD check is no longer broken (without a check result and no
    explanation in 00check.log) for a package which declares an
    invalid VignetteBuilder in DESCRIPTION but has no vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1730376000">- CHANGES IN R 4.4.2:
  C-LEVEL FACILITIES:
  * The S-compatibility macros F77_COM and F77_COMDECL defined in
    header R_ext/RS.h are deprecated and will be removed shortly.  We
    could find no record of their use.
  BUG FIXES:
  * Mathlib function lgammacor(x) no longer warns about underflow to
    zero for large x.
  * Text widths and heights were incorrectly reported by the Quartz
    device if the drawing context didn't exist yet (typically when
    drawing off-screen to a window that is yet to appear, see
    PR#18591).
  * The Quartz device could segfault in cases where paths with spaces
    are used in the new glyph drawing API.  Thanks to Tomek
    Gieorgijewski (PR#18758).
  * On macOS in R CRAN builds, it is again possible to read
    little-endian UTF-16 text with a BOM from a connection using
    encoding="UTF-16".  Users building R from source should avoid
    using the system libiconv in macOS 14.1 and later.
  * methods' internal .requirePackage() now re-enables primitive
    method dispatch when needed; thanks to Ivan Krylov for
    demystifying CRAN package check failures on the R-devel mailing
    list.</changelog>
</package>
<package pkgid="f5ffc8decafba415ca5630df887ac2fa312d38a383d28d9d08ddae0c6b59301cd76567e8da2d82c1d5ed8da13a269678a430efc606a035b7d90b34cd702b0dbb" name="R-parallel-debuginfo" arch="x86_64">
  <version epoch="0" ver="4.4.2" rel="51.0.2.2.sr20241103"/>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1620302400">- To get in sync with d:l:R:autoCRAN the Matrix package's split
  in -devel was reversed.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339200">- improved spec file according to comments of dimstar in
  https://build.opensuse.org/request/show/892685</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339201">- CHANGES IN R 4.1.0:
  FUTURE DIRECTIONS:
  * It is planned that the 4.1.x series will be the last to support
    32-bit Windows, with production of binary packages for that
    series continuing until early 2023.
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Data set esoph in package datasets now provides the correct
    numbers of controls; previously it had the numbers of cases added
    to these.  (Reported by Alexander Fowler in PR#17964.)
  NEW FEATURES:
  * www.omegahat.net is no longer one of the repositories known by
    default to setRepositories().  (Nowadays it only provides source
    packages and is often unavailable.)
  * Function package_dependencies() (in package tools) can now use
    different dependency types for direct and recursive dependencies.
  * The checking of the size of tarball in R CMD check --as-cran
    &lt;pkg&gt; may be tweaked via the new environment variable
    _R_CHECK_CRAN_INCOMING_TARBALL_THRESHOLD_, as suggested in
    PR#17777 by Jan Gorecki.
  * Using c() to combine a factor with other factors now gives a
    factor, an ordered factor when combining ordered factors with
    identical levels.
  * apply() gains a simplify argument to allow disabling of
    simplification of results.
  * The format() method for class "ftable" gets a new option justify.
    (Suggested by Thomas Soeiro.)
  * New ...names() utility.  (Proposed by Neal Fultz in PR#17705.)
  * type.convert() now warns when its as.is argument is not
    specified, as the help file always said it _should_.  In that
    case, the default is changed to TRUE in line with its change in
    read.table() (related to stringsAsFactor) in R 4.0.0.
  * When printing list arrays, classed objects are now shown _via_
    their format() value if this is a short enough character string,
    or by giving the first elements of their class vector and their
    length.
  * capabilities() gets new entry "Rprof" which is TRUE when R has
    been configured with the equivalent of --enable-R-profiling (as
    it is by default).  (Related to Michael Orlitzky's report
    PR#17836.)
  * str(xS4) now also shows extraneous attributes of an S4 object
    xS4.
  * Rudimentary support for vi-style tags in rtags() and R CMD rtags
    has been added.  (Based on a patch from Neal Fultz in PR#17214.)
  * checkRdContents() is now exported from tools; it and also
    checkDocFiles() have a new option chkInternal allowing to check
    Rd files marked with keyword "internal" as well.  The latter can
    be activated for R CMD check via environment variable
    _R_CHECK_RD_INTERNAL_TOO_.
  * New functions numToBits() and numToInts() extend the raw
    conversion utilities to (double precision) numeric.
  * Functions URLencode() and URLdecode() in package utils now work
    on vectors of URIs.  (Based on patch from Bob Rudis submitted
    with PR#17873.)
  * path.expand() can expand ~user on most Unix-alikes even when
    readline is not in use.  It tries harder to expand ~, for example
    should environment variable HOME be unset.
  * For HTML help (both dynamic and static), Rd file links to help
    pages in external packages are now treated as references to
    topics rather than file names, and fall back to a file link only
    if the topic is not found in the target package. The earlier rule
    which prioritized file names over topics can be restored by
    setting the environment variable _R_HELP_LINKS_TO_TOPICS_ to a
    false value.
  * c() now removes NULL arguments before dispatching to methods,
    thus simplifying the implementation of c() methods, _but_ for
    back compatibility keeps NULL when it is the first argument.
    (From a report and patch proposal by Lionel Henry in PR#17900.)
  * Vectorize()'s result function's environment no longer keeps
    unneeded objects.
  * Function ...elt() now propagates visibility consistently with
    ..n.  (Thanks to Lionel Henry's PR#17905.)
  * capture.output() no longer uses non-standard evaluation to
    evaluate its arguments.  This makes evaluation of functions like
    parent.frame() more consistent.  (Thanks to Lionel Henry's
    PR#17907.)
  * packBits(bits, type="double") now works as inverse of
    numToBits().  (Thanks to Bill Dunlap's proposal in PR#17914.)
  * curlGetHeaders() has two new arguments, timeout to specify the
    timeout for that call (overriding getOption("timeout")) and TLS
    to specify the minimum TLS protocol version to be used for
    https:// URIs (_inter alia_ providing a means to check for sites
    using deprecated TLS versions 1.0 and 1.1).
  * For nls(), an optional constant scaleOffset may be added to the
    denominator of the relative offset convergence test for cases
    where the fit of a model is expected to be exact, thanks to a
    proposal by John Nash.  nls(*, trace=TRUE) now also shows the
    convergence criterion.
  * Numeric differentiation _via_ numericDeriv() gets new optional
    arguments eps and central, the latter for taking central divided
    differences.  The latter can be activated for nls() via
    nls.control(nDcentral = TRUE).
  * nls() now passes the trace and control arguments to getInitial(),
    notably for all self-starting models, so these can also be fit in
    zero-noise situations via a scaleOffset.  For this reason, the
    initial function of a selfStart model must now have ... in its
    argument list.
  * bquote(splice = TRUE) can now splice expression vectors with
    attributes: this makes it possible to splice the result of
    parse(keep.source = TRUE).  (Report and patch provided by Lionel
    Henry in PR#17869.)
  * textConnection() gets an optional name argument.
  * get(), exists(), and get0() now signal an error if the first
    argument has length greater than 1.  Previously additional
    elements were silently ignored.  (Suggested by Antoine Fabri on
    R-devel.)
  * R now provides a shorthand notation for creating functions, e.g.
    \(x) x + 1 is parsed as function(x) x + 1.
  * R now provides a simple native forward pipe syntax |&gt;.  The
    simple form of the forward pipe inserts the left-hand side as the
    first argument in the right-hand side call.  The pipe
    implementation as a syntax transformation was motivated by
    suggestions from Jim Hester and Lionel Henry.
  * all.equal(f, g) for functions now by default also compares their
    environment(.)s, notably via new all.equal method for class
    function.  Comparison of nls() fits, e.g., may now need
    all.equal(m1, m2, check.environment = FALSE).
  * .libPaths() gets a new option include.site, allowing to _not_
    include the site library.  (Thanks to Dario Strbenac's suggestion
    and Gabe Becker's PR#18016.)
  * Lithuanian translations are now available.  (Thanks to Rimantas
    Zakauskas.)
  * names() now works for DOTSXP objects.  On the other hand, in
    R-lang, the R language manual, we now warn against relying on the
    structure or even existence of such dot-dot-dot objects.
  * all.equal() no longer gives an error on DOTSXP objects.
  * capabilities("cairo") now applies only to the file-based devices
    as it is now possible (if very unusual) to build R with Cairo
    support for those but not for X11().
  * There is optional support for tracing the progress of
    loadNamespace() - see its help.
  * (Not Windows.)  l10n_info() reports an additional element, the
    name of the encoding as reported by the OS (which may differ from
    the encoding part (if any) of the result from
    Sys.getlocale("LC_CTYPE").
  * New function gregexec() which generalizes regexec() to find _all_
    disjoint matches and well as all substrings corresponding to
    parenthesized subexpressions of the given regular expression.
    (Contributed by Brodie Gaslam.)
  * New function charClass() in package utils to query the
    wide-character classification functions in use (such as
    iswprint).
  * The names of quantile()'s result no longer depend on the global
    getOption("digits"), but quantile() gets a new optional argument
    digits = 7 instead.
  * grep(), sub(), regexp and variants work considerably faster for
    long factors with few levels.  (Thanks to Michael Chirico's
    PR#18063.)
  * Provide grouping of x11() graphics windows within a window
    manager such as Gnome or Unity; thanks to a patch by Ivan Krylov
    posted to R-devel.
  * The split() method for class data.frame now allows the f argument
    to be specified as a formula.
  * sprintf now warns on arguments unused by the format string.
  * New palettes "Rocket" and "Mako" for hcl.colors() (approximating
    palettes of the same name from the 'viridisLite' package).
    Contributed by Achim Zeileis.
  * The base environment and its namespace are now locked (so one can
    no longer add bindings to these or remove from these).
  * Rterm handling of multi-byte characters has been improved,
    allowing use of such characters when supported by the current
    locale.
  * Rterm now accepts ALT+ +xxxxxxxx sequences to enter Unicode
    characters as hex digits.
  * Environment variable LC_ALL on Windows now takes precedence over
    LC_CTYPE and variables for other supported categories, matching
    the POSIX behaviour.
  * duplicated() and anyDuplicated() are now optimized for integer
    and real vectors that are known to be sorted via the ALTREP
    framework. Contributed by Gabriel Becker via PR#17993.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 14
    and so packages that provide graphics devices should be
    reinstalled.
  * Graphics devices should now specify deviceVersion to indicate
    what version of the graphics engine they support.
  * Graphics devices can now specify deviceClip.  If TRUE, the
    graphics engine will never perform any clipping of output itself.
    The clipping that the graphics engine does perform (for both
    canClip = TRUE and canClip = FALSE) has been improved to avoid
    producing unnecessary artifacts in clipped output.
  * The grid package now allows gpar(fill) to be a linearGradient(),
    a radialGradient(), or a pattern().  The viewport(clip) can now
    also be a grob, which defines a clipping path, and there is a new
    viewport(mask) that can also be a grob, which defines a mask.
    These new features are only supported so far on the Cairo-based
    graphics devices and on the pdf() device.
  * (Not Windows.)  A warning is given when a Cairo-based type is
    specified for a png(), jpeg(), tiff() or bmp() device but Cairo
    is unsupported (so type = "Xlib" is tried instead).
  * grSoftVersion() now reports the versions of FreeType and
    FontConfig if they are used directly (not _via_ Pango), as is
    most commonly done on macOS.
  C-LEVEL FACILITIES:
  * The _standalone_ libRmath math library and R's C API now provide
    log1pexp() again as documented, and gain log1mexp().
  INSTALLATION on a UNIX-ALIKE:
  * configure checks for a program pkgconf if program pkg-config is
    not found.  These are now only looked for on the path (like
    almost all other programs) so if needed specify a full path to
    the command in PKG_CONFIG, for example in file config.site.
  * C99 function iswblank is required - it was last seen missing ca
    2003 so the workaround has been removed.
  * There are new configure options --with-internal-iswxxxxx,
  - -with-internal-towlower and --with-internal-wcwidth which allows
    the system functions for wide-character classification,
    case-switching and width (wcwidth and wcswidth) to be replaced by
    internal ones.  The first has long been used on macOS, AIX (and
    Windows) but this enables it to be unselected there and selected
    for other platforms (it is the new default on Solaris).  The
    second is new in this version of R and is selected by default on
    macOS and Solaris.  The third has long been the default and
    remains so as it contains customizations for East Asian
    languages.
    System versions of these functions are often minimally
    implemented (sometimes only for ASCII characters) and may not
    cover the full range of Unicode points: for example Solaris (and
    Windows) only cover the Basic Multilingual Plane.
  * Cairo installations without X11 are more likely to be detected by
    configure, when the file-based Cairo graphics devices will be
    available but not X11(type = "cairo").
  * There is a new configure option --with-static-cairo which is the
    default on macOS.  This should be used when only static cairo
    (and where relevant, Pango) libraries are available.
  * Cairo-based graphics devices on platforms without Pango but with
    FreeType/FontConfig will make use of the latter for font
    selection.
  LINK-TIME OPTIMIZATION on a UNIX-ALIKE:
  * Configuring with flag --enable-lto=R now also uses LTO when
    installing the recommended packages.
  * R CMD INSTALL and R CMD SHLIB have a new flag --use-LTO to use
    LTO when compiling code, for use with R configured with
  - -enable-lto=R.  For R configured with --enable-lto, they have
    the new flag --no-use-LTO.
    Packages can opt in or out of LTO compilation _via_ a UseLTO
    field in the DESCRIPTION file.  (As usual this can be overridden
    by the command-line flags.)
  BUILDING R on Windows:
  * for GCC &gt;= 8, FC_LEN_T is defined in config.h and hence character
    lengths are passed from C to Fortran in _inter alia_ BLAS and
    LAPACK calls.
  * There is a new text file src/gnuwin32/README.compilation, which
    outlines how C/Fortran code compilation is organized and
    documents new features:
  * R can be built with Link-Time Optimization with a suitable
    compiler - doing so with GCC 9.2 showed several
    inconsistencies which have been corrected.
  * There is support for cross-compiling the C and Fortran code
    in R and standard packages on suitable (Linux) platforms.
    This is mainly intended to allow developers to test later
    versions of compilers - for example using GCC 9.2 or 10.x has
    detected issues that GCC 8.3 in Rtools40 does not.
  * There is experimental support for cross-building R packages
    with C, C++ and/or Fortran code.
  * The R installer can now be optionally built to support a single
    architecture (only 64-bit or only 32-bit).
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++14 where
    available (which it is on all currently checked platforms): if
    not (as before) C++11 is used if available otherwise C++ is not
    supported.
    Packages which specify C++11 will still be installed using C++11.
    C++14 compilers may give deprecation warnings, most often for
    std::random_shuffle (deprecated in C++14 and removed in C++17).
    Either specify C++11 (see 'Writing R Extensions') or modernize
    the code and if needed specify C++14.  The latter has been
    supported since R 3.4.0 so the package's DESCRIPTION would need
    to include something like
    Depends: R (&gt;= 3.4)
  PACKAGE INSTALLATION on Windows:
  * R CMD INSTALL and R CMD SHLIB make use of their flag --use-LTO
    when the LTO_OPT make macro is set in file etc/${R_ARCH}/Makeconf
    or in a personal/site Makevars file.  (For details see 'Writing R
    Extensions' SS4.5.)
    This provides a valuable check on code consistency.  It does work
    with GCC 8.3 as in Rtools40, but that does not detect everything
    the CRAN checks with current GCC do.
  PACKAGE INSTALLATION on macOS:
  * The default personal library directory on builds with
  - -enable-aqua (including CRAN builds) now differs by CPU type,
    one of
    ~/Library/R/x86_64/x.y/library
    ~/Library/R/arm64/x.y/library
    This uses the CPU type R (and hence the packages) were built for,
    so when a x86_64 build of R is run under Rosetta emulation on an
    arm64 Mac, the first is used.
  UTILITIES:
  * R CMD check can now scan package functions for bogus return
    statements, which were possibly intended as return() calls (wish
    of PR#17180, patch by Sebastian Meyer). This check can be
    activated via the new environment variable
    _R_CHECK_BOGUS_RETURN_, true for --as-cran.
  * R CMD build omits tarballs and binaries of previous builds from
    the top-level package directory.  (PR#17828, patch by Sebastian
    Meyer.)
  * R CMD check now runs sanity checks on the use of LazyData, for
    example that a data directory is present and that
    LazyDataCompression is not specified without LazyData and has a
    documented value.  For packages with large LazyData databases
    without specifying LazyDataCompression, there is a reference to
    the code given in 'Writing R Extensions' SS1.1.6 to test the
    choice of compression (as in all the CRAN packages tested a
    non-default method was preferred).
  * R CMD build removes LazyData and LazyDataCompression fields from
    the DESCRIPTION file of packages without a data directory.
  ENCODING-RELATED CHANGES:
  * The parser now treats \Unnnnnnnn escapes larger than the upper
    limit for Unicode points (\U10FFFF) as an error as they cannot be
    represented by valid UTF-8.
    Where such escapes are used for outputting non-printable
    (including unassigned) characters, 6 hex digits are used (rather
    than 8 with leading zeros).  For clarity, braces are used, for
    example \U{0effff}.
  * The parser now looks for non-ASCII spaces on Solaris (as
    previously on most other OSes).
  * There are warnings (including from the parser) on the use of
    unpaired surrogate Unicode points such as \uD834.  (These cannot
    be converted to valid UTF-8.)
  * Functions nchar(), tolower(), toupper() and chartr() and those
    using regular expressions have more support for inputs with a
    marked Latin-1 encoding.
  * The character-classification functions used (by default) to
    replace the system iswxxxxx functions on Windows, macOS and AIX
    have been updated to Unicode 13.0.0.
    The character-width tables have been updated to include new
    assignments in Unicode 13.0.0.
  * The code for evaluating default (extended) regular expressions
    now uses the same character-classification functions as the rest
    of R (previously they differed on Windows, macOS and AIX).
  * There is a build-time option to replace the system's
    wide-character wctrans C function by tables shipped with R: use
    configure option --with-internal-towlower or (on Windows)
  - DUSE_RI18N_CASE in CFLAGS when building R.  This may be needed
    to allow tolower() and toupper() to work with Unicode characters
    beyond the Basic Multilingual Plane where not supported by system
    functions (e.g. on Solaris where it is the new default).
  * R is more careful when truncating UTF-8 and other multi-byte
    strings that are too long to be printed, passed to the system or
    libraries or placed into an internal buffer.  Truncation will no
    longer produce incomplete multibyte characters.
  DEPRECATED AND DEFUNCT:
  * Function plclust() from the package stats and
    package.dependencies(), pkgDepends(), getDepList(),
    installFoundDepends(), and vignetteDepends() from package tools
    are defunct.
  * Defunct functions checkNEWS() and readNEWS() from package tools
    and CRAN.packages() from utils have been removed.
  * R CMD config CXXCPP is defunct (it was deprecated in R 3.6.2).
  * parallel::detectCores() drops support for Irix (retired in 2013).
  * The LINPACK argument to chol.default(), chol2inv(),
    solve.default() and svd() has been defunct since R 3.1.0.  It was
    silently ignored up to R 4.0.3 but now gives an error.
  * Subsetting/indexing, such as ddd[*] or ddd$x on a DOTSXP
    (dot-dot-dot) object ddd has been disabled; it worked by accident
    only and was undocumented.
  BUG FIXES:
  * Many more C-level allocations (mainly by malloc and strdup) are
    checked for success with suitable alternative actions.
  * Bug fix for replayPlot(); this was turning off graphics engine
    display list recording if a recorded plot was replayed in the
    same session.  The impact of the bug became visible if resize the
    device after replay OR if attempted another savePlot() after
    replay (empty display list means empty screen on resize or empty
    saved plot).
  * R CMD check etc now warn when a package exports non-existing S4
    classes or methods, also in case of no "methods" presence.
    (Reported by Alex Bertram; reproducible example and patch by
    Sebastian Meyer in PR#16662.)
  * boxplot() now also accepts calls for labels such as ylab, the
    same as plot().  (Reported by Marius Hofert.)
  * The help page for xtabs() now correctly states that addNA is
    setting na.action = na.pass among others.  (Reported as PR#17770
    by Thomas Soeiro.)
  * The R CMD check &lt;pkg&gt; gives a longer and more comprehensible
    message when DESCRIPTION misses dependencies, e.g., in Imports:.
    (Thanks to the contributors of PR#17179.)
  * update.default() now calls the generic update() on the formula to
    work correctly for models with extended formulas.  (As reported
    and suggested by Neal Fultz in PR#17865.)
  * The horizontal position of leaves in a dendrogram is now correct
    also with center = FALSE.  (PR#14938, patch from Sebastian
    Meyer.)
  * all.equal.POSIXt() no longer warns about and subsequently ignores
    inconsistent "tzone" attributes, but describes the difference in
    its return value (PR#17277).  This check can be disabled _via_
    the new argument check.tzone = FALSE as suggested by Sebastian
    Meyer.
  * as.POSIXct() now populates the "tzone" attribute from its tz
    argument when x is a logical vector consisting entirely of NA
    values.
  * x[[2^31]] &lt;- v now works.  (Thanks to the report and patch by
    Suharto Anggono in PR#17330.)
  * In log-scale graphics, axis() ticks and label positions are now
    computed more carefully and symmetrically in their range,
    typically providing _more_ ticks, fulfilling wishes in PR#17936.
    The change really corresponds to an improved axisTicks() (package
    grDevices), potentially influencing grid and lattice, for
    example.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now correct to at
    least five digits where it was catastrophically wrong,
    previously.
  * sum(df) and similar "Summary"- and "Math"-group member functions
    now work for data frames df with logical columns, notably also of
    zero rows.  (Reported to R-devel by Martin "b706".)
  * unsplit() had trouble with tibbles due to unsound use of rep(NA,
    len)-indexing, which should use NA_integer_ (Reported to R-devel
    by Mario Annau.)
  * pnorm(x, log.p = TRUE) underflows to -Inf slightly later.
  * show(&lt;hidden S4 generic&gt;) prints better and without quotes for
    non-hidden S4 generics.
  * read.table() and relatives treated an "NA" column name as missing
    when check.names = FALSE PR#18007.
  * Parsing strings containing UTF-16 surrogate pairs such as
    "\uD834\uDD1E" works better on some (uncommon) platforms.
    sprintf("%X", utf8ToInt("\uD834\uDD1E")) should now give "1D11E"
    on all platforms.
  * identical(x,y) is no longer true for differing DOTSXP objects,
    fixing PR#18032.
  * str() now works correctly for DOTSXP and related exotics, even
    when these are doomed.
    Additionally, it no longer fails for lists with a class and
    "irregular" method definitions such that e.g. lapply(*) will
    necessarily fail, as currently for different igraph objects.
  * Too long lines in environment files (e.g. Renviron) no longer
    crash R. This limit has been increased to 100,000 bytes.
    (PR#18001.)
  * There is a further workaround for FreeType giving incorrect
    italic font faces with cairo-based graphics devices on macOS.
  * add_datalist(*, force = TRUE) (from package tools) now actually
    updates an existing data/datalist file for new content.  (Thanks
    to a report and patch by Sebastian Meyer in PR#18048.)
  * cut.Date() and cut.POSIXt() could produce an empty last interval
    for breaks = "months" or breaks = "years".  (Reported as PR#18053
    by Christopher Carbone.)
  * Detection of the encoding of 'regular' macOS locales such as
    en_US (which is UTF-8) had been broken by a macOS change:
    fortunately these are now rarely used with en_US.UTF-8 being
    preferred.
  * sub() and gsub(pattern, repl, x, *) now keep attributes of x such
    as names() also when pattern is NA (PR#18079).
  * Time differences ("difftime" objects) get a replacement and a
    rep() method to keep "units" consistent.  (Thanks to a report and
    patch by Nicolas Bennett in PR#18066.)
  * The \RdOpts macro, setting defaults for \Sexpr options in an Rd
    file, had been ineffective since R 2.12.0: it now works again.
    (Thanks to a report and patch by Sebastian Meyer in PR#18073.)
  * mclapply and pvec no longer accidentally terminate parallel
    processes started before by mcparallel or related calls in
    package parallel (PR#18078).
  * grep and other functions for evaluating (extended) regular
    expressions handle in Unicode also strings not explicitly flagged
    UTF-8, but flagged native when running in UTF-8 locale.
  * Fixed a crash in fifo implementation on Windows (PR#18031).
  * Binary mode in fifo on Windows is now properly detected from
    argument open (PR#15600, PR#18031).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1622808000">- The line %{__install} -m 755 -d %{_infodir}
  no longer works in TW or Factory.
  But without that line it works everywhere. So this instruction
  was commented out of the spec file.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1628596800">- CHANGES IN R 4.1.1:
  NEW FEATURES:
  * require(pkg, quietly = TRUE) is quieter and in particular does
    not warn if the package is not found.
  DEPRECATED AND DEFUNCT:
  * Use of ftp:// URIs should be regarded as deprecated, with
    on-going support confined to method = "libcurl" and not routinely
    tested.  (Nowadays no major browser supports them.)
  * The non-default method = "internal" is deprecated for http:// and
    ftp:// URIs for both download.file and url.
  * On Windows, method = "wininet" is deprecated for http://,
    https:// and ftp:// URIs for both download.file and url.  (A
    warning is only given for ftp://.)
    For ftp:// URIs the default method is now "libcurl" if available
    (which it is on CRAN builds).
    method = "wininet" remains the default for http:// and https://
    URIs but if libcurl is available, using method = "libcurl" is
    preferred.
  INSTALLATION:
  * make check now works also without a LaTeX installation.  (Thanks
    to Sebastian Meyer's PR#18103.)
  BUG FIXES:
  * make check-devel works again in an R build configured with
  - -without-recommended-packages.
  * qnbinom(p, size, mu) for large size/mu is correct now in a range
    of cases (PR#18095); similarly for the (size, prob)
    parametrization of the negative binomial.  Also qpois() and
    qbinom() are better and or faster for extreme cases.  The
    underlying C code has been modularized and is common to all four
    cases of discrete distributions.
  * gap.axis is now part of the axis() arguments which are passed
    from bxp(), and hence boxplot().  (Thanks to Martin Smith's
    report and suggestions in PR#18109.)
  * .First and .Last can again be set from the site profile.
  * seq.int(from, to, *) and seq.default(..) now work better in large
    range cases where from-to is infinite where the two boundaries
    are finite.
  * all.equal(x,y) now returns TRUE correctly also when several
    entries of abs(x) and abs(y) are close to .Machine$double.xmax,
    the largest finite numeric.
  * model.frame() now clears the object bit when removing the class
    attribute of a value via na.action (PR#18100).
  * charClass() now works with multi-character strings on Windows
    (PR#18104, fixed by Bill Dunlap).
  * encodeString() on Solaris now works again in Latin-1 encoding on
    characters represented differently in UTF-8.  Support for
    surrogate pairs on Solaris has been improved.
  * file.show() on Windows now works with non-ASCII path names
    representable in the current native encoding (PR#18132).
  * Embedded R on Windows can now find R home directory via the
    registry even when installed only for the current user
    (PR#18135).
  * pretty(x) with finite x now returns finite values also in the
    case where the extreme x values are close in size to the maximal
    representable number .Machine$double.xmax.
    Also, it's been tweaked for very small ranges and when a boundary
    is close (or equal) to zero; e.g., pretty(c(0,1e-317)) no longer
    has negative numbers, currently still warning about a very small
    range, and pretty(2^-(1024 - 2^-1/(c(24,10)))) is more accurate.
  * The error message for not finding vignette files when weaving has
    correct file sizes now. (Thanks to Sebastian Meyer's PR#18154.)
  * dnbinom(20, &lt;large&gt;, 1) now correctly gives 0, and similar cases
    are more accurate with underflow precaution.  (Reported by Francisco Vera Alcivar in PR#18072.)</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635163200">- repaired https://bugzilla.suse.com/show_bug.cgi?id=1191380
  (rpmacros now go to rpmmacrodir)
- minor clean-ups in spec file</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635768000">- CHANGES IN R 4.1.2:
  C-LEVEL FACILITIES:
  * The workaround in headers R.h and Rmath.h (using namespace std;)
    for the Oracle Developer Studio compiler is no longer needed now
    C++11 is required so has been removed.  A couple more usages of
    log() (which should have been std::log()) with an int argument
    are reported on Solaris.
  * The undocumented limit of 4095 bytes on messages from the
    S-compatibility macros PROBLEM and MESSAGE is now documented and
    longer messages will be silently truncated rather than
    potentially causing segfaults.
  * If the R_NO_SEGV_HANDLER environment variable is non-empty, the
    signal handler for SEGV/ILL/BUS signals (which offers recovery
    user interface) is not set. This allows more reliable debugging
    of crashes that involve the console.
  DEPRECATED AND DEFUNCT:
  * The legacy S-compatibility macros PROBLEM, MESSAGE, ERROR, WARN,
    WARNING, RECOVER, ... are deprecated and will be hidden in R
    4.2.0. R's native interface of Rf_error and Rf_warning has long
    been preferred.
  BUG FIXES:
  * .mapply(F, dots, .) no longer segfaults when dots is not a list
    and uses match.fun(F) as always documented; reported by Andrew
    Simmons in PR#18164.
  * hist(&lt;Date&gt;, ...) and hist(&lt;POSIXt&gt;, ...)  no longer pass
    arguments for rect() (such as col and density) to axis().
    (Thanks to Sebastian Meyer's PR#18171.)
  * \Sexpr{ch} now preserves Encoding(ch). (Thanks to report and
    patch by Jeroen Ooms in PR#18152.)
  * Setting the RNG to "Marsaglia-Multicarry" e.g., by RNGkind(), now
    warns in more places, thanks to Andr'e Gillibert's report and
    patch in PR#18168.
  * gray(numeric(), alpha=1/2) no longer segfaults, fixing PR#18183,
    reported by Till Krenz.
  * Fixed dnbinom(x, size=&lt;very_small&gt;, .., log=TRUE) regression,
    reported by Martin Morgan.
  * as.Date.POSIXlt(x) now keeps names(x), thanks to Davis Vaughan's
    report and patch in PR#18188.
  * model.response() now strips an "AsIs" class typically, thanks to
    Duncan Murdoch's report and other discussants in PR#18190.
  * try() is considerably faster in case of an error and long call,
    as e.g., from some do.call().  Thanks to Alexander Kaever's
    suggestion posted to R-devel.
  * qqline(y = &lt;object&gt;) such as y=I(.), now works, see also
    PR#18190.
  * Non-integer mgp par() settings are now handled correctly in
    axis() and mtext(), thanks to Mikael Jagan and Duncan Murdoch's
    report and suggestion in PR#18194.
  * formatC(x) returns length zero character() now, rather than ""
    when x is of length zero, as documented, thanks to Davis
    Vaughan's post to R-devel.
  * removeSource(fn) now retains (other) attributes(fn).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1647000000">- CHANGES IN R 4.1.3:
  NEW FEATURES:
  * The default version of Bioconductor has been changed to 3.14.
    (This is used by setRepositories and the menus in GUIs.)
  UTILITIES:
  * R CMD check --as-cran has a workaround for a bug in versions of
    file up to at least 5.41 which mis-identify DBF files last
    changed in 2022 as executables.
  C-LEVEL FACILITIES:
  * The legacy S-compatibility macros SINGLE_* in R_ext/Constants.h
    (included by R.h) are deprecated and will be removed in R 4.2.0.
  BUG FIXES:
  * Initialization of self-starting nls() models with initialization
    functions following the pre-R-4.1.0 API (without the ...
    argument) works again for now, with a deprecation warning.
  * Fixed quoting of ~autodetect~ in Java setting defaults to avoid
    inadvertent user lookup due to leading ~, reported in PR#18231 by
    Harold Gutch.
  * substr(., start, stop) &lt;- v now treats _negative_ stop values
    correctly.  Reported with a patch in PR#18228 by Brodie Gaslam.
  * Subscripting an array x without dimnames by a
    length(dim(x))-column character matrix gave "random" non-sense,
    now an error; reported in PR#18244 by Mikael Jagan.
  * ...names() now matches names(list(...)) closely, fixing PR#18247.
  * all.equal(*, scale = s) now works as intended when length(s) &gt; 1,
    partly thanks to Michael Chirico's PR#18272.
  * print(x) for long vectors x now also works for named atomic
    vectors or lists and prints the correct number when reaching the
    getOption("max.print") limit; partly thanks to a report and
    proposal by Hugh Parsonage to the R-devel list.
  * all.equal(&lt;selfStart&gt;, *) no longer signals a deprecation
    warning.
  * reformulate(*, response=r) gives a helpful error message now when
    length(r) &gt; 1, thanks to Bill Dunlap's PR#18281.
  * Modifying globalCallingHandlers inside withCallingHandlers() now
    works or fails correctly, thanks to Henrik Bengtsson's PR#18257.
  * hist(&lt;Date&gt;, breaks = "days") and hist(&lt;POSIXt&gt;, breaks = "secs")
    no longer fail for inputs of length 1.
  * qbeta(.001, .9, .009) and similar cases now converge correctly
    thanks to Ben Bolker's report in PR#17746.
  * window(x, start, end) no longer wrongly signals "'start' cannot
    be after 'end'", fixing PR#17527 and PR#18291.
  * data() now checks that its (rarely used) list argument is a
    character vector - a couple of packages passed other types and
    gave incorrect results.
  * which() now checks its arr.ind argument is TRUE rather coercing
    to logical and taking the first element - which gave incorrect
    results in package code.
  * model.weights() and model.offset() more carefully extract their
    model components, thanks to Ben Bolker and Tim Taylor's R-devel
    post.
  * list.files(recursive = TRUE) now shows all broken symlinks
    (previously, some of them may have been omitted, PR#18296).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1650628800">- CHANGES IN R 4.2.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * The formula method of aggregate() now matches the generic in
    naming its first argument x (resolving PR#18299 by Thomas
    Soeiro).
    This means that calling aggregate() with a formula as a named
    first argument requires name formula in earlier versions of R and
    name x now, so portable code should not name the argument (code
    in many packages did).
  * Calling &amp;&amp; or || with either argument of length greater than one
    now gives a warning (which it is intended will become an error).
  * Calling if() or while() with a condition of length greater than
    one gives an error rather than a warning.  Consequently,
    environment variable _R_CHECK_LENGTH_1_CONDITION_ no longer has
    any effect.
  * Windows users should consult the WINDOWS section below for some
    profound changes including
  * Support for 32-bit builds has been dropped.
  * UTF-8 locales are used where available.
  * The default locations for the R installation and personal
    library folder have been changed.
    Thanks to Tomas Kalibera for months of work on the Windows port
    for this release.
  NEW FEATURES:
  * matrix(x, n, m) now warns in more cases where length(x) differs
    from n * m, as suggested by Abby Spurdle and Wolfgang Huber in
    Feb 2021 on the R-devel mailing list.
    This warning can be turned into an error by setting environment
    variable _R_CHECK_MATRIX_DATA_ to TRUE: R CMD check --as-cran
    does so unless it is already set.
  * Function file_test() in package utils gains tests for symlinks,
    readability and writability.
  * capabilities("libxml") is now false.
    The description of capabilities("http/ftp") now reflects that it
    refers to the default method, no longer the internal one.
  * simplify2array() gains an except argument for controlling the
    exceptions used by sapply().
  * Environment variables R_LIBS_USER and R_LIBS_SITE are both now
    set to the R system default if unset or empty, and can be set to
    NULL to indicate an empty list of user or site library
    directories.
  * The warning for axis()(-like) calls in cases of relatively small
    ranges (typically in log-scale situations) is slightly improved
    _and_ suppressed from explicit calls to .axisPars() as has always
    been the intention.
  * The contrasts setter function `contrasts&lt;-` gains an explicit
    default how.many = NULL rather than just using missing(how.many).
  * grid.pretty() gains a new optional argument n = 5.
  * There is a new function .pretty() with option bounds as a
    technical-utility version of pretty().  It and pretty() gain a
    new argument f.min with a better than back-compatible default.
  * Function grDevices::axisTicks() and related functions such as
    graphics::axis() work better, notably for the log scale; partly
    because of the pretty() improvements, but also because care is
    taken e.g., when ylim is finite but diff(ylim) is infinite.
  * nclass.FD() gains a digits option.
  * The R Mathlib internal C function bd0() (called indirectly from a
    dozen probability density and distribution functions such as
    dpois(), dbinom(), dgamma(), pgamma() _etc_) has been
    complemented by a more sophisticated and (mostly) more accurate C
    function ebd0(), currently called only by internal dpois_raw()
    improving accuracy for R level dpois() and potentially others
    calling it such as dnbinom(), dgamma() or pgamma().  (Thanks to
    Morten Welinder's PR#15628.)
  * write.ftable() gains sep = " " argument as suggested by Thomas
    Soeiro.
  * The names of the locale categories supported by R's
    Sys.getlocale() and Sys.setlocale() are now provided by variable
    .LC.categories in the base namespace.
  * The Date and POSIXt methods for hist() and the histogram method
    for plot() now also use the new default col = "lightgray" in
    consistency with the corresponding change to hist()'s default for
    R 4.0.0.
  * hist.default() gains new fuzz argument, and the histogram plot
    method no longer uses fractional axis ticks when displaying
    counts ("Frequency").
  * mapply() and hence Map() now also obey the "max-or-0-if-any"
    recycling rule, such that, e.g., Map(`+`, 1:3, 1[0]) is valid
    now.
  * as.character(&lt;obj&gt;) for "hexmode" or "octmode" objects now
    fulfils the important basic rule as.character(x)[j] ===
    as.character(x[j]).
  * The set utility functions, notably intersect() have been tweaked
    to be more consistent and symmetric in their two set arguments,
    also preserving a common mode.
  * substr(ch, start,end) &lt;- new now e.g., preserves names(ch); ditto
    for substring(), thanks to a patch from Brodie Gaslam.
  * plot(&lt;lm&gt;) gains a extend.ylim.f argument, in partial response to
    PR#15285; further PR#17784 is fixed thanks to several
    contributors and a patch by Elin Waring.  The Cook's dist
    contours get customizable via cook.col and cook.lty with a
    different default color and their legend is nicer by default and
    customizable via cook.legendChanges.
  * Attempting to subset an object that is not subsettable now
    signals an error of class notSubsettableError. The
    non-subsettable object is contained in the object field of the
    error condition.
  * Subscript-out-of-bounds errors are now signaled as errors of
    class subscriptOutOfBoundsError.
  * Stack-overflow errors are now signaled as errors inheriting from
    class stackOverflowError. See ?stackOverflowError for more
    details.
  * New partly experimental Sys.setLanguage() utility, solving the
    main problem of PR#18055.
  * gettext() and gettextf() get a new option trim = TRUE which when
    set to false allows translations for strings such as "Execution
    halted\n" typical for C code.
  * An experimental implementation of hash tables is now available.
    See ?hashtab for more details.
  * identical() gains a extptr.as.ref argument for requesting that
    external pointer objects be compared as reference objects.
  * reorder() gets an argument decreasing which it passes to sort()
    for level creation; based on the wish and patch by Thomas Soeiro
    in PR#18243.
  * as.vector() gains a data.frame method which returns a simple
    named list, also clearing a long standing 'FIXME' to enable
    as.vector(&lt;data.frame&gt;, mode="list").  This breaks code relying
    on as.vector(&lt;data.frame&gt;) to return the unchanged data frame.
  * legend() is now vectorized for arguments cex, x.intersp, and
    text.width.  The latter can now also be specified as a vector
    (one element for each column of the legend) or as NA for
    computing a proper column wise maximum value of strwidth(legend).
    The argument y.intersp can be specified as a vector with one
    entry for each row of the legend.
    legend() also gains new arguments title.cex and title.font.
    Thanks to Swetlana Herbrandt.
  * Deparsing no longer remaps attribute names dim, dimnames, levels,
    names and tsp to historical S-compatible names (which structure()
    maps back).
  * sample() and sample.int() have additional sanity checks on their
    size and n arguments.
    all.equal.numeric() gains a sanity check on its tolerance
    argument - calling all.equal(a, b, c) for three numeric vectors
    is a surprisingly common error.
    mean(na.rm =), rank(na.last =), barplot(legend.text =),
    boxplot(), contour(drawlabels =), polygon(border =) and
    methods::is(class2 =) have more robust sanity checks on their
    arguments.
    R CMD Rd2pdf (used by R CMD check) has a more robust sanity check
    on the format of \alias{} commands.
  * psigamma(x, deriv) for negative x now also works for deriv = 4
    and 5; their underlying C level dpsifn() is documented in
    'Writing R Extensions'.
  * The HTML help system now uses HTML5 (wish of PR#18149).
  * ks.test() now provides exact p-values also with ties and MC
    p-values in the two-sample (Smirnov) case.  By Torsten Hothorn.
  * ks.test() gains a formula interface, with y ~ 1 for the
    one-sample (Kolmogorov) test and y ~ group for the two-sample
    (Smirnov) test.  Contributed by Torsten Hothorn.
  * The return value from ks.test() now has class c("ks.test",
    "htest") - packages using try() need to take care to use
    inherits() and not == on the class.
  * New functions psmirnov(), qsmirnov() and rsmirnov() in package
    stats implementing the asymptotic and exact distributions of the
    two-sample Smirnov statistic.
  * iconv() now allows sub = "c99" to use C99-style escapes for UTF-8
    inputs which cannot be converted to encoding to.
  * In a forward pipe |&gt; expression it is now possible to use a named
    argument with the placeholder _ in the rhs call to specify where
    the lhs is to be inserted.  The placeholder can only appear once
    on the rhs.
  * The included LAPACK sources have been updated to version 3.10.0,
    except for the four Fortran 77 routines which 3.10.0 has
    re-implemented in Fortran 90 (where the older versions have been
    retained as the R build process does not support Fortran 90).
  * path.expand() and most other uses of tilde expansion now warn if
    a path would be too long if expanded.  (An exception is
    file.exists(), which silently returns false.)
  * trunc(&lt;Date&gt;, *) now supports units = "months" or "years" for
    consistency with the POSIXt method, thanks to Dirk Eddelbuettel's
    proposal in PR#18099.
  * list2DF() now checks that its arguments are of the same length,
    rather than use recycling.
  * The HTML help system has several new features: LaTeX-like math
    can be typeset using either KaTeX or MathJax, usage and example
    code is highlighted using Prism, and for dynamic help the output
    of examples and demos can be shown within the browser if the
    knitr package is installed. These features can be disabled by
    setting the environment variable _R_HELP_ENABLE_ENHANCED_HTML_ to
    a false value.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 15
    and so packages that provide graphics devices should be
    reinstalled.
  * The grid package now allows the user to specify a "vector" of
    pattern fills.  The fill argument to gpar() accepts a list of
    gradients and/or patterns and the functions linearGradient(),
    radialGradient(), and pattern() have a new group argument.
    Points grobs (data symbols) can now also have a pattern fill.
    The grobCoords() function now returns a more informative and
    complex result.
  * The grid package has new functions for drawing isolated groups:
    grid.group(), grid.define(), and grid.use().  These functions add
    compositing operators and affine transformations to R's graphics
    capabilities.
    The grid package also has new functions for stroking and filling
    paths: grid.stroke(), grid.fill(), and grid.fillStroke().
    A new function as.path() allows the user to specify the fill rule
    for a path that is to be used for clipping, stroking, or filling;
    available options are "winding" and "evenodd".  A new function
    as.mask() allows the user to specify the type of a mask;
    available options are "alpha" and "luminance".
    These new features are only supported so far (at most) on the
    Cairo-based graphics devices and on the pdf() device.
  * dev.capabilities() reports on device support for the new
    features.
  * par() now warns about unnamed non-character arguments to prevent
    misuse such as {usr &lt;- par("usr"); par(usr)}.
  INSTALLATION:
  * Facilities for accessing ftp:// sites are no longer tested
    (except _pro tem_ for curlGetHeaders()) as modern browsers have
    removed support.
  * R can now be built with DEFS = -DSTRICT_R_HEADERS .
  PACKAGE INSTALLATION:
  * R CMD INSTALL no longer tangles vignettes. This completes an R
    CMD build change in R 3.0.0 and affects packages built before R
    3.0.2. Such packages should be re-made with R CMD build to have
    the tangled R code of vignettes shipped with the tarball.
  * USE_FC_LEN_T will become the default: this uses the correct
    prototypes for Fortran BLAS/LAPACK routines called from C/C++,
    and requires adjustment of most such calls - see 'Writing R
    Extensions' SS6.6.2.  (This has been supported since R 3.6.2.)
  * Package installation speed for packages installed with
    keep.source has been improved. This resolve the issue reported by
    Ofek Shilon in PR#18236.
  UTILITIES:
  * R CMD check can optionally report files/directories left behind
    in home, /tmp (even though TMPDIR is set) and other directories.
    See the "R Internals" manual for details.
  * R CMD check now reports byte-compilation errors during
    installation.  These are not usually fatal but may result in
    parts of the package not being byte-compiled.
  * _R_CHECK_DEPENDS_ONLY_ can be applied selectively to examples,
    tests and/or vignettes in R CMD check: see the "R Internals"
    manual.
  * _R_CHECK_SRC_MINUS_W_IMPLICIT_ now defaults to true: recent
    versions of Apple clang on macOS have made implicit function
    declarations in C into a compilation error.
  * R CMD check --as-cran makes use of the environment variable
    AUTORECONF.  See the "R Internals" manual SS8 for further details.
  * R CMD check --use-valgrind also uses valgrind when re-building
    vignettes as some non-Sweave vignettes unhelpfully comment out
    all their code when R CMD check runs vignettes.
  * Errors in re-building vignettes (unless there are LaTeX errors)
    are reported by R CMD check as ERROR rather than WARNING when
    running vignettes has been skipped (as it frequently is in CRAN
    checks and by --as-cran).
  * R CMD Rd2pdf gains a --quiet option that is used by R CMD build
    when building the PDF package manual.
  * R CMD Rd2pdf now always runs LaTeX in batch mode, consistent with
    Texinfo &gt;= 6.7. The --batch option is ignored.
  * R CMD build and R CMD check now include the Rd file name and line
    numbers in the error message of an \Sexpr evaluation failure.
  * For packages using the \doi Rd macro (now an install-time \Sexpr)
    but no other dynamic Rd content, R CMD build now produces a
    smaller tarball and is considerably faster - skipping temporary
    package installation.
  C-LEVEL FACILITIES:
  * The non-API header R_ext/R-ftp-http.h is no longer provided, as
    the entry points it covered are now all defunct.
  * A number of non-API declarations and macro definitions have been
    moved from the installed header Rinternals.h to the internal
    header Defn.h. Packages that only use entry points and
    definitions documented to be part of the API as specified in
    'Writing R Extensions' SS6 should not be affected.
  * The macro USE_RINTERNALS no longer has any effect when compiling
    package code.  Packages which also use R_NO_REMAP will need to
    ensure that the remapped names are used for calls to API
    functions that were formerly also made available as macros.
  * The deprecated legacy S-compatibility macros PROBLEM, MESSAGE,
    ERROR, WARN, WARNING, RECOVER, ... are no longer defined in
    R_exts/RS.h (included by R.h).  Replace these by calls to
    Rf_error and Rf_warning (defined in header R_ext/Error.h included
    by R.h).
    Header R_ext/RS.h no longer includes R_ext/Error.h.
  * Header R_ext/Constants.h (included by R.h) when included from C++
    now includes the C++ header cfloat rather than the C header
    float.h (now possible as C++11 is required).
  * The legacy S-compatibility macros DOUBLE_* in R_ext/Constants.h
    (included by R.h) are deprecated.
  * The deprecated S-compatibility macros SINGLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * R_Calloc, R_Free and R_Realloc are preferred to their unprefixed
    forms and error messages now use the prefix. These forms were
    introduced in R 3.4.0 and are available even when
    STRICT_R_HEADERS is defined.
  * rmultinom has been documented in 'Writing R Extensions' SS6 so is
    now part of the R API.
  * Similarly, Rtanpi, called from R level tanpi() is now part of the
    R API.
  * The long-deprecated, undocumented and non-API entry point call_R
    is no longer declared in R_ext/RS.h (included by R.h).
  * The header S.h which has been unsupported since Jan 2016 has been
    removed.  Use R.h instead.
  DEPRECATED AND DEFUNCT:
  * The (non-default and deprecated) method = "internal" for
    download.file() and url() no longer supports http:// nor ftp://
    URIs.  (It is used only for file:// URIs.)
    On Windows, download.file(method = "wininet") no longer supports
    ftp:// URIs.  (It is no longer the default method, which is
    "libcurl" and does.)
    On Windows, the deprecated method = "wininet" now gives a warning
    for http:// and https:// URIs for both download.file() and url().
    (It is no longer the default method.)
  * On Windows, the command-line option --max-mem-size and
    environment variable R_MAX_MEM_SIZE are defunct.  The memory
    allocation limit was important for 32-bit builds, but these are
    no longer supported.
  * default.stringsAsFactors() is now formally deprecated, where that
    was only mentioned on its regular help page, previously.  So it
    now gives a warning if called.
  * unix.time() is defunct now; it had been deprecated since R 3.4.0.
  BUG FIXES:
  * Setting digits = 0 in format(), print.default() (and hence
    typically print()) or options() is again invalid.  Its behaviour
    was platform-dependent, and it is unclear what "zero significant
    digits" should mean (PR#18098).
  * Messages from C code in the cairo section of package grDevices
    are now also offered for translation, thanks to Michael Chirico's
    PR#18123.
  * mean(x) with finite x now is finite also without "long.double"
    capability.
  * R CMD Rd2pdf no longer leaves an empty build directory behind
    when it aborts due to an already existing output file.  (Thanks
    to Sebastian Meyer's PR#18141.)
  * density(x, weights = w, na.rm = TRUE) when anyNA(x) is true, now
    removes weights "in parallel" to x, fixing PR#18151, reported by
    Matthias Gondan.  Additionally, it gets a subdensity option.
  * Conversion of \Sexpr[]{&lt;expR&gt;} to LaTeX or HTML no longer
    produces long blocks of empty lines when &lt;expR&gt; itself contains
    several lines all producing empty output.  Thanks to a report and
    patch by Ivan Krylov posted to R-devel.
  * R CMD build no longer fails if a package vignette uses child
    documents and inst/doc exists.  (Thanks to Sebastian Meyer's
    PR#18156.)
  * When an R documentation ('help' source) file man/foo.Rd in a
    package has \donttest{..} examples with a syntax error, it is now
    signalled as ERROR and with correct line numbers relating to the
  * -Ex.R file, thanks to Duncan Murdoch and Sebastian Meyer's
    reports and patch proposals in PR#17501.
  * Improved determination of the correct translation domain in
    non-base packages, addressing the combination of PR#18092 and
    PR#17998 (#c6) with reports and _augmented_ patch #2904 by
    Suharto Anggono.
    Note that "R-base" is no longer the default domain e.g., for
    top-level calls to gettext(); rather translation needs explicit
    domain = * specification in such cases.
  * identical(attrib.as.set=FALSE) now works correctly with data
    frames with default row names (Thanks to Charlie Gao's PR#18179).
  * txtProgressBar() now enforces a non-zero width for argument char,
    without which no progress can be visible.
  * dimnames(table(d)) is more consistent in the case where d is a
    list with a single component, thanks to Thomas Soeiro's report to
    R-devel.
    Further, table(d1, d2) now gives an error when d1 and d2 are data
    frames as suggested by Thomas in PR#18224.
  * Fix for drawing semi-transparent lines and fills on the native
    Windows graphics device (PR#18219 and PR#16694).  Thanks to Nick
    Ray for helpful diagnosis on Bugzilla.
  * The deparser now wraps sub-expressions such as if(A) ..  with
    parentheses when needed; thanks to Duncan Murdoch's PR#18232 and
    Lionel Henry's patches there.
  * remove.packages() no longer tries to uninstall Priority: base
    packages, thanks to a report and suggestions by Colin Fay in
    PR#18227.
  * win.metafile() now has xpinch and ypinch arguments so that the
    user can override Windows' (potentially wrong) guess at device
    dimensions.
  * x[i] and x[[i]] for non-integer i should now behave in all cases
    as always documented: the index used is equivalent to
    as.integer(i) unless that would overflow where trunc(i) is used
    instead; thanks to Suharto Anggono's report and patch proposals
    in PR#17977.
  * asOneSidedFormula() now associates the resulting formula with the
    global environment rather than the evaluation environment created
    for the call.
  * &lt;bibentry&gt;$name now matches the field name case-insensitively,
    consistent with bibentry() creation and the replacement method.
  * cbind() failed to detect some length mismatches with a mixture of
    time-series and non-time-series inputs.
  * The default LaTeX style file Sweave.sty used by the RweaveLatex
    driver no longer loads the obsolete ae package; thanks to a
    report by Thomas Soeiro in PR#18271.  Furthermore, it now skips
    \usepackage[T1]{fontenc} for engines other than pdfTeX (if
    detected) or if the new [nofontenc] option is used.
  * smooth.spline() now stores its logical cv argument more safely,
    fixing a rare bug when printing, and also stores n.
  * smooth.spline(x,y,*) now computes the cv.crit statistic
    correctly, also when is.unsorted(x), fixing PR#18294.
  * The data.frame method of rbind() now warns when binding
    not-wholly-recycling vectors, by analogy to the default method
    (for matrices).
  * setAs() finds the correct class for name to when multiple
    packages define a class with that name. Thanks to Gabor Csardi
    for the report.
  * Fix for detaching a package when two classes of the same name are
    present in method signatures for the same generic. Thanks to
    Gabor Csardi for the report.
  * match.arg("", c("", "a", "B")) gives a better error message, in
    part from PR#17959, thanks to Elin Waring.
  * R CMD Sweave --clean no longer removes pre-existing files or
    subdirectories (PR#18242).
  * The quartz() device no longer splits polylines into subpaths.
    That has caused narrowly-spaced lines with many points to always
    look solid even when dashed line type was used due to dash phase
    restarts.
  * Deparsing constructs such as quote(1 + `!`(2) + 3) works again as
    before R 3.5.0, thanks to the report and patch in PR#18284 by
    Suharto Anggono.
  * as.list(f) for a factor f now keeps names(f), fixing PR#18309.
  * qbeta(.001, .9, .009) and analogous qf() calls now return a
    correct value instead of NaN or wrongly 1, all with a warning;
    thanks to the report by Ludger Goeminne in PR#18302.
  * plot.lm() failed to produce the plot of residuals vs.  factor
    levels (i.e., which=5 when leverages are constant) for models
    with character predictors (PR#17840).
  * interaction.plot(..., xtick = TRUE) misplaced the x-axis line
    (PR#18305).
  * Not strictly fixing a bug, format()ing and print()ing of
    non-finite Date and POSIXt values NaN and +/-Inf no longer show
    as NA but the respective string, e.g., Inf, for consistency with
    numeric vector's behaviour, fulfilling the wish of PR#18308.
  * R CMD check no longer runs test scripts generated from
    corresponding .Rin files twice and now signals an ERROR if
    processing an .Rin script fails.
  * tools::Rd2txt() used for plain-text help pages now renders \hrefs
    (if tools::Rd2txt_options(showURLs = TRUE)) and \urls with
    percent-encoding and standards-compliant delimiting style (angle
    brackets and no URL: prefix).  \email is now rendered with a
    mailto: prefix.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1655985600">- CHANGES IN R 4.2.1:
  NEW FEATURES:
  * New function utils::findCRANmirror() to find out if a CRAN mirror
    has been selected, otherwise fallback to the main site.  This
    behaves in the same way as tools::CRAN_package_db() and is
    intended for packages wishing to access CRAN for purposes other
    than installing packages.
    The need for this was shown by a day when the main CRAN website
    was offline and a dozen or so packages which had its URL
    hardcoded failed their checks.
  INSTALLATION on a UNIX-ALIKE:
  * The libraries searched for by --with-blas (without a value) now
    include BLIS (after OpenBLAS but before ATLAS).  And on macOS,
    the Accelerate framework (after ATLAS).  (This is patterned after
    the AX_BLAS macro from the Autoconf Archive.)
  * The included LAPACK sources have been updated to 3.10.1.
  UTILITIES:
  * The (full path to) the command tidy to be used for HTML
    validation can be set by environment variable R_TIDYCMD.
  * Setting environment variable _R_CHECK_RD_VALIDATE_RD2HTML_ to a
    false value will override R CMD check --as-cran and turn off HTML
    validation.  This provides a way to circumvent a problematic
    tidy.
    The 2006 version that ships with macOS is always skipped.
  C-LEVEL FACILITIES:
  * The undocumented legacy declarations of Sint, Sfloat, SINT_MAX
    and SINT_MIN in header R.h are deprecated.
  BUG FIXES:
  * fisher.test(d) no longer segfaults for "large" d; fixing PR#18336
    by preventing/detecting an integer overflow reliably.
  * tar(., files=*) now produces correctly the warning about invalid
    uid or gid of files, fixing PR#18344, reported by Martin Morgan.
  * tk_choose.files() with multi = FALSE misbehaved on paths
    containing spaces (PR#18334) (regression introduced in R 4.0.0).
  * sort(x, partial = ind, *) now works correctly notably for the
    non-default na.last = FALSE or TRUE, fixing PR#18335 reported by
    James Edwards.
  * Environment variable _R_CHECK_XREFS_REPOSITORIES_ is only used
    for checking .Rd cross-references in R CMD check (as documented)
    and not for other uses looking for a CRAN mirror.
  * The search for a CRAN mirror when checking packages now uses
    getOption("repos") if that specifies a CRAN mirror, even when it
    does not also specify all three Bioconductor repositories (as was
    previously required).
  * The HTML code generated by tools::Rd2HTML() has been improved to
    pass tidy 5.8.0.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1667217600">- CHANGES IN R 4.2.2:
  NEW FEATURES:
  * tools::Rdiff(useDiff = TRUE) checks for the presence of an
    external diff command and switches to useDiff = FALSE if none is
    found.  This allows R CMD Rdiff to always work.
  * On Windows, environment variable R_LIBCURL_SSL_REVOKE_BEST_EFFORT
    can be used to switch to only 'best-effort' SSL certificate
    revocation checks with the default "libcurl" download method.
    This reduces security, but may be needed for downloads to work
    with MITM proxies (PR#18379).
  * (macOS) The run-time check for libraries from XQuartz for X11 and
    Tcl/Tk no longer uses otool from the Apple Developer Tools
    (PR#18400).
  * The LaTeX style for producing the PDF manuals, Rd.sty, now loads
    the standard amsmath, amsfonts and amssymb packages for greater
    coverage of math commands in the Rd \eqn and \deqn macros.  The
    \mathscr LaTeX command is also provided (via the mathrsfs
    package, if available, or the amsfonts bundle otherwise),
    fulfilling the wish of PR#18398.
  * (Windows) The default format of readClipboard() and
    writeClipboard() has been changed to 13 (CF_UNICODETEXT).
  INSTALLATION on a UNIX-ALIKE:
  * The PDF manuals (if built) can be compacted by the new target
    make compact-pdf (at the top level or in directory doc/manual).
  * There is now configure support for LLVM clang 15 on Linux, which
    defaults to position-independent (PIE) executables whereas
    gfortran does not.
  * Many small changes to ease compilation (and suppress warnings)
    with LLVM clang 15.
  BUG FIXES:
  * Rscript -e would fail if stdin were closed (Reported by Henrik
    Bengtsson.)
  * qt(*, log.p=TRUE) in outer tails no longer produces NaN in its
    final steps, thus fixing PR#18360.
  * tools::Rd2latex() now escapes hashes and ampersands when writing
    URLs, fixing LaTeX errors with such URLs in \tabular.
  * When isGeneric(f, fdef=*) is used with mismatching names, the
    warning is better understandable; reported (with fix) in PR#18370
    by Gabe Becker.
  * poly(x, n) now works again (and is now documented) when x is a
    "Date" or "POSIXct" object, or of another class while fulfilling
    mode(x) == "numeric".  This also enables poly(x, *, raw=TRUE) for
    such variables.  Reported by Michael Chirico to R-devel.
  * write.table(), write.csv() and write.csv2() restore their
    numerical precision (internal equivalent of digits = 15) after an
    interrupt (PR#18384).
  * One can now read also byte FF from a clipboard connection
    (PR#18385).
  * source("") and source(character()) now give more helpful error
    messages.
  * R CMD check --as-cran set _R_CHECK_TIMINGS_ too late to have the
    intended effect.
  * as.POSIXlt(x) now also works with very large dates x, fixing
    PR#18401 reported by Hannes M"uhleisen.
  * Files can now be extracted even from very large zip archives
    (PR#18390, thanks to Martin Jakt).
  * Non-finite objects of class "POSIXlt" are now correctly coerced
    to classes "Date" and "POSIXct"; following up on the extension to
    format() them correctly.
  * Added methods for is.finite(), is.infinite() and is.nan() for
    "POSIXlt" date-time objects.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1678881600">- CHANGES IN R 4.2.3:
  C-LEVEL FACILITIES:
  * The definition of DL_FUNC in R_ext/Rdynload.h has been changed to
    be fully C-compliant.  This means that functions loaded _via_ for
    example R_GetCCallable need to be cast to an appropriate type if
    they have any arguments.
  * .Machine has a new element sizeof.time_t to identify old systems
    with a 32-bit type and hence a limited range of date-times (and
    limited support for dates millions of years from present).
  PACKAGE INSTALLATION:
  * (Windows) The default C++ standard had accidentally been left at
    C++11 when it was changed to C++14 on Unix.
  BUG FIXES:
  * As "POSIXlt" objects may be "partially filled" and their list
    components meant to be recycled, length() now is the length of
    the longest component.
  * as.POSIXlt.Date() could underflow for dates in the far past (more
    than half a million years BCE).
  * as.Date.POSIXlt(x) would return "1970-01-01" instead of NA in R
    4.2.2, e.g., for
    x &lt;- as.POSIXlt(c("2019-01-30","2001-1-1"))
    x$mon &lt;- c(0L, NA); as.Date(x)
  * R CMD check failed to apply enabled _R_CHECK_SUGGESTS_ONLY_ to
    examples and vignettes (regression in R 4.2.0).
  * R CMD check did not re-build vignettes in separate processes by
    default (regression in R 4.2.0).
  * Running examples from HTML documentation now restores previous
    knitr settings and options (PR#18420).
  * Quartz: fonts are now located using Core Graphics API instead of
    deprecated ATS which is no longer supported in the macOS 13 SDK
    (PR#18426).  This also addresses an issue where the currently
    used font in the Quartz device context was not correctly
    retained.
  * (Windows) Math symbols in text drawing functions are again
    rendered correctly (PR#18440).  This fixes a regression in R
    4.2.1 caused by a fix in PR#18382 which uncovered an issue in
    GraphApp due to which the symbol charset was not used with TT
    Symbol font face.
  * (Windows) Installing a package with a src/Makefile.{win,ucrt}
    file includes ~/.R/Makevars.win64 in the search for user
    makevars, as documented in "R Installation and Administration"
    and done for packages with a src/Makevars.{win,ucrt} file.
  * format(&lt;POSIXlt_w/_unbalanced_sec&gt;, "....%OS&lt;n&gt;") with n &gt; 0 no
    longer accidentally uses the unbalanced seconds, thanks to
    Suharto Anggono's report (including patch) in PR#18448.
  * solve.default(a, b) works around issues with some versions of
    LAPACK when a contains NA or NaN values.
  * When UseMethod() cannot dispatch, it no longer segfaults
    producing the error message in case of a long class(), thanks to
    Joris Vankerschaver's report (including patch) in PR#18447.
  * When example(foo, ..) produces graphics on an interactive device
    it needs to open itself, it now leaves devAskNewPage() unchanged
    even when it was FALSE, thus fixing a 14 years old '&lt;FIXME&gt;'.
  * packageDescription() again catches errors from encoding
    conversions. This also fixes broken packageVersion() in C locale
    on systems where iconv does not support transliteration.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1681128000">- add patch to build with libcurl &gt;= 8</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1682078400">- CHANGES IN R 4.3.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Calling &amp;&amp; or || with LHS or (if evaluated) RHS of length greater
    than one is now always an error, with a report of the form
    'length = 4' in coercion to 'logical(1)'
    Environment variable _R_CHECK_LENGTH_1_LOGIC2_ no longer has any
    effect.
  NEW FEATURES:
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.10.1.  (This caused some platform-dependent
    changes to package check output.)  And then to the sources from
    LAPACK version 3.11.0 (with changes only to double complex
    subroutines).
  * The included LAPACK sources have been updated to include the four
    Fortran 90 routines rather than their Fortran 77 predecessors.
    This may give some different signs in SVDs or
    eigendecompositions..  (This completes the transition to LAPACK
    3.10.x begun in R 4.2.0.)
  * The LAPACK sources have been updated to version 3.11.0.  (No new
    subroutines have been added, so this almost entirely bug fixes:
    Those fixes do affect some computations with NaNs, including R's
    NA.)
  * The parser now signals _classed_ errors, notably in case of the
    pipe operator |&gt;.  The error object and message now give line and
    column numbers, mostly as proposed and provided by Duncan Murdoch
    in PR#18328.
  * toeplitz() is now generalized for asymmetric cases, with a
    toeplitz2() variant.
  * xy.coords() and xyz.coords() and consequently, e.g., plot(x,y,
    log = "y") now signal a _classed_ warning about negative values
    of y (where log(.) is NA).  Such a warning can be specifically
    suppressed or caught otherwise.
  * Regular expression functions now check more thoroughly whether
    their inputs are valid strings (in their encoding, e.g. in
    UTF-8).
  * The performance of grep(), sub(), gsub() and strsplit() has been
    improved, particularly with perl = TRUE and fixed = TRUE.  Use of
    useBytes = TRUE for performance reasons should no longer be
    needed and is discouraged: it may lead to incorrect results.
  * apropos() gains an argument dot_internals which is used by the
    completion (help(rcompgen)) engine to also see base internals
    such as .POSIXct().
  * Support in tools::Rdiff() for comparing uncompressed PDF files is
    further reduced - see its help page.
  * qqplot(x, y, ...) gains conf.level and conf.args arguments for
    computing and plotting a confidence band for the treatment
    function transforming the distribution of x into the distribution
    of y (Switzer, 1976, _Biometrika_). Contributed by Torsten
    Hothorn.
  * Performance of package_dependencies() has been improved for cases
    when the number of dependencies is large.
  * Strings newly created by gsub(), sub() and strsplit(), when any
    of the inputs is marked as "bytes", are also marked as "bytes".
    This reduces the risk of creating invalid strings and accidental
    substitution of bytes deemed invalid.
  * Support for readLines(encoding = "bytes") has been added to allow
    processing special text files byte-by-byte, without creating
    invalid strings.
  * iconv(from = "") now takes into account any declared encoding of
    the input elements and uses it in preference to the native
    encoding.  This reduces the risk of accidental creation of
    invalid strings, particularly when different elements of the
    input have different encoding (including "bytes").
  * Package repositories in getOption("repos") are now initialized
    from the repositories file when utils is loaded (if not already
    set, e.g., in .Rprofile).  (From a report and patch proposal by
    Gabriel Becker in PR#18405.)
  * compactPDF() gets a verbose option.
  * type.convert() and hence read.table() get new option tryLogical =
    TRUE with back compatible default.  When set to false, converts
    "F" or "T" columns to character.
  * Added new unit prefixes "R" and "Q" for abbreviating
    (unrealistically large) sizes beyond 10^{27} in standard = "SI",
    thanks to Henrik Bengtsson's PR#18435.
  * as.data.frame()'s default method now also works fine with atomic
    objects inheriting from classes such as "roman", "octmode" and
    "hexmode", such fulfilling the wish of PR#18421, by Benjamin
    Feakins.
  * The as.data.frame.vector() utility now errors for wrong-length
    row.names.  It warned for almost six years, with "Will be an
    error!".
  * sessionInfo() now also contains La_version() and reports codepage
    and timezone when relevant, in both print() and toLatex() methods
    which also get new option tzone for displaying timezone
    information when locale = FALSE.
  * New function R_compiled_by() reports the C and Fortran compilers
    used to build R, if known.
  * predict(&lt;lm&gt;, newdata = *) no longer unnecessarily creates an
    offset of all 0s.
  * solve() for complex inputs now uses argument tol and by default
    checks for 'computational singularity' (as it long has done for
    numeric inputs).
  * predict(&lt;rank-deficient lm&gt;, newdata=*) now obeys a new argument
    rankdeficient, with new default "warnif", warning only if there
    are non-estimable cases in newdata.  Other options include
    rankdeficient = "NA", predicting NA for non-estimable newdata
    cases.  This addresses PR#15072 by Russ Lenth and is based on his
    original proposal and discussions in PR#16158 also by David Firth
    and Elin Waring.  Still somewhat experimental.
  * Rgui console implementation now works better with the NVDA screen
    reader when the full blinking cursor is selected.  The underlying
    improvements in cursor handling may help also other screen
    readers on Windows.
  * The drop-field control in GraphApp can now be left with the TAB
    key and all controls can be navigated in the reverse order using
    the Shift+TAB key, improving accessibility of the Rgui
    configuration editor.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now fully accurate
    (instead of to "only" minimally five digits).
  * demo(error.catching) now also shows off withWarnings() and
    tryCatchWEMs().
  * As an experimental feature the placeholder _ can now also be used
    in the rhs of a forward pipe |&gt; expression as the first argument
    in an extraction call, such as _$coef. More generally, it can be
    used as the head of a chain of extractions, such as _$coef[[2]].
  * Spaces in the environment variable used to choose the R session's
    temporary directory (TMPDIR, TMP and TEMP are tried in turn) are
    now fatal.  (On Windows the 'short path' version of the path is
    tried and used if that does not contain a space.)
  * all.equal.numeric() gets a new optional switch giveErr to return
    the numeric error as attribute.  Relatedly,
    stopifnot(all.equal&lt;some&gt;(a, b, ..)) is as "smart" now, as
    stopifnot(all.equal(....)) has been already, thus allowing
    customized all.equal&lt;Some&gt;() wrappers.
  * R on Windows is now able to work with path names longer than 260
    characters when these are enabled in the system (requires at
    least Windows 10 version 1607).  Packages should be updated to
    work with long paths as well, instead of assuming PATH_MAX to be
    the maximum length.  Custom front-ends and applications embedding
    R need to update their manifests if they wish to allow this
    feature.  See
    &lt;https://blog.r-project.org/2023/03/07/path-length-limit-on-windows&gt;
    for more information.
  * 'Object not found' and 'Missing argument' errors now give a more
    accurate error context. Patch provided by Lionel Henry in
    PR#18241.
  * The @ operator is now an S3 generic. Based on contributions by
    Tomasz Kalinowski in PR#18482.
  * New generic chooseOpsMethod() provides a mechanism for objects to
    resolve cases where two suitable methods are found for an Ops
    Group Generic. This supports experimenting with alternative
    object systems. Based on contributions by Tomasz Kalinowski in
    PR#18484.
  * inherits(x, what) now accepts values other than a simple
    character vector for argument what. A new generic, nameOfClass(),
    is called to resolve the class name from what. This supports
    experimenting with alternative object systems. Based on
    contributions by Tomasz Kalinowski in PR#18485.
  * Detection of BLAS/LAPACK in use (sessionInfo()) with FlexiBLAS
    now reports the current backend.
  * The "data.frame" method for subset() now warns about extraneous
    arguments, typically catching the use of = instead of == in the
    subset expression.
  * Calling a:b when numeric a or b is longer than one may now be
    made into an error by setting environment variable
    _R_CHECK_LENGTH_COLON_ to a true value, along the proposal in
    PR#18419 by Henrik Bengtsson.
  * density(x, weights = *) now warns if automatic bandwidth
    selection happens without using weights; new optional warnWbw may
    suppress the warning.  Prompted by Christoph Dalitz' PR#18490 and
    its discussants.
  * rm(list = *) is faster and more readable thanks to Kevin Ushey's
    PR#18492.
  * The plot.lm() function no longer produces a normal Q-Q plot for
    GLMs. Instead it plots a half-normal Q-Q plot of the absolute
    value of the standardized deviance residuals.
  * The print() method for class "summary.glm" no longer shows
    summary statistics for the deviance residuals by default.  Its
    optional argument show.residuals can be used to show them if
    required.
  * The tapply() function now accepts a data frame as its X argument,
    and allows INDEX to be a formula in that case. by.data.frame()
    similarly allows INDICES to be a formula.
  * The performance of df[j] &lt;- value (including for missing j) and
    write.table(df) has been improved for data frames df with a large
    number of columns.  (Thanks to Gabriel Becker's PR#18500,
    PR#18503 and discussants, prompted by a report from Toby Dylan
    Hocking on the R-devel mailing list.)
  * The matrix multiply operator %*% is now an S3 generic, belonging
    to new group generic matrixOps.  From Tomasz Kalinowski's
    contribution in PR#18483.
  * New function array2DF() to convert arrays to data frames,
    particularly useful for the list arrays created by tapply().
  DATES and TIMES:
  * On platforms where (non-UTC) datetimes before 1902 (or before
    1900 as with system functions on recent macOS) are guessed by
    extrapolating time zones from 1902-2037, there is a warning at
    the first use of extrapolation in a session.  (As all time zones
    post 2037 are extrapolation, we do not warn on those.)
  * (Platforms using --with-internal-tzone, including Windows and by
    default macOS). How years are printed in dates or date-times can
    be controlled by environment variable R_PAD_YEARS_BY_ZERO.  The
    default remains to pad to 4 digits by zeroes, but setting value
    no gives no padding (as used by default by glibc).
  * strftime() tries harder to determine the offset for the "%z"
    format, and succeeds on the mainstream R platforms.
  * strftime() has a limit of 2048 bytes on the string produced -
    attempting to exceed this is an error.  (Previously it silently
    truncated at 255 bytes.)
  * sessionInfo() records (and by default prints) the system time
    zone as part of the locale information.  Also, the source
    (system/internal) of the date-time conversion and printing
    functions.
  * Objects of class "POSIXlt" created in this version of R always
    have 11 components: component zone is always set, and component
    gmtoff is set for times in UTC and usually set on the (almost
    all) platforms which have C-level support, otherwise is NA.
  * There are comprehensive validity checks on the structure of
    objects of class "POSIXlt" when converting (including formatting
    and printing).  (This avoids mis-conversions of hand-crafted
    objects.)
  * There is some support for using the native date-time routines on
    macOS: this is only viable on recent versions (e.g. 12.6 and 13)
    and does get wrong some historical changes (before 1900, during
    WWII).  Use of --with-internal-tzone remains the default.
  * as.POSIXct(&lt;numeric&gt;) and as.POSIXlt(.) (without specifying
    origin) now work.  So does as.Date(&lt;numeric&gt;).
  * as.Date.POSIXct(., tz) now treats several tz values, notably
    "GMT" as equivalent to "UTC", proposed and improved by Michael
    Chirico and Joshua Ulrich in PR#17674.
  * Experimental balancePOSIXlt() utility allows using "ragged" and
    or out-of-range "POSIXlt" objects more correctly, e.g., in
    subsetting and subassignments.  Such objects are now documented.
    More experimentally, a "POSIXlt" object may have an attribute
    "balanced" indicating if it is known to be filled or fully
    balanced.
  * Functions axis.Date() and axis.POSIXct() are rewritten to gain
    better default tick locations and better default formats by using
    prettyDate(). Thanks to Swetlana Herbrandt.
  * The mapping of Windows' names for time zones to IANA's 'Olson'
    names has been updated.  When ICU is available (it is by
    default), it is used to get a mapping for the current region set
    in Windows.  This can be overridden by setting environment
    variable TZ to the desired Olson name - see OlsonNames() for
    those currently available.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 16
    and so packages that provide graphics devices should be
    reinstalled.
  * The grDevices and grid packages have new functions for rendering
    typeset glyphs, primarily: grDevices::glyphInfo() and
    grid::grid.glyph().
    Rendering of typeset glyphs is only supported so far on the
    Cairo-based graphics devices and on the pdf() and quartz()
    devices.
  * The defined behaviour for "clear" and "source" compositing
    operators (via grid::grid.group()) has been changed (to align
    better with simple interpretation of original Porter-Duff
    definitions).
  * Support for gradients, patterns, clipping paths, masks, groups,
    compositing operators, and affine transformations has been added
    to the quartz() device.
  INSTALLATION on a UNIX-ALIKE:
  * A system installation of generic LAPACK 3.10.0 or later will be
    preferred to the version in the R sources.
    configure option --with-lapack=no (equivalently --without-lapack)
    forces compilation of the internal LAPACK sources.
    If --with-lapack is not specified, a system liblapack is looked
    for and used if it reports version 3.10.0 or later and does not
    contain BLAS routines.
    Packages using LAPACK will need to be reinstalled if this changes
    to using an external library.
  * On aarch64 Linux platforms using GCC, configure now defaults to
  - fPIC (instead of -fpic), as desired in PR#18326.
  * configure now checks conversion of datetimes between POSIXlt and
    POSIXct around year 2020.  Failure (which has been seen on
    platforms missing tzdata) is fatal.
  * If configure option --with-valgrind-instrumentation is given
    value 1 or 2, option --with-system-valgrind-headers is now the
    default and ignored (with a warning).  It is highly recommended
    that the system headers are installed alongside valgrind: they
    are part of its packaging on some Linux distributions and
    packaged separately (e.g. in the valgrind-devel RPM) on others.
    configure will give a warning if they are not found.
    The system headers will be required in a future release of R to
    build with valgrind instrumentation.
  * libcurl 8.x is now accepted by configure: despite a change in
    major version number it changes neither API nor ABI.
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools43, an update of the Rtools42 toolchain.  It is
    based on gcc 12 and newer versions of MinGW-W64, binutils and
    libraries.  At this time R-devel can still be built using
    Rtools42 without changes, but when R-devel is installed via the
    installer, it will by default look for Rtools43.
  * Old make targets rsync-extsoft and 32-bit ones that are no longer
    needed have been removed.
  * Default builds (including for packages) no longer select C99.
    Thus the C standard used is the default for the compiler, which
    for the toolchain in Rtools43 is C17.  (This is consistent with
    Unix builds.)
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++17 where
    available (which it is on all currently checked platforms): if
    not C++14 or C++11 is used if available otherwise C++ is not
    supported.
  * USE_FC_LEN_T is the default: this uses the correct
    (compiler-dependent) prototypes for Fortran BLAS/LAPACK routines
    called from C/C++, and requires adjustment of many such calls -
    see 'Writing R Extensions' SS6.6.1.
  * There is initial support for C++23 as several compilers are now
    supporting -std=c++23 or -std=c++2b or similar.  As for C++20,
    there no additional configure checks for C++23 features beyond a
    check that the compiler reports a __cplusplus value greater than
    that in the C++20 standard.  C++ feature tests should be used.
  * There is support for a package to indicate the version of the C
    standard which should be used to compile it, and for the
    installing user to specify this.  In most cases R defaults to the
    C compiler's default standard which is C17 (a `bug-fix' of C11) -
    earlier versions of R or compilers may have defaulted to C99.
    Current options are:
    USE_C17 Use a standard that is at most C17.  The intention is to
    allow legacy packages to still be installed when later C
    standards become the default, including packages using new
    keywords as identifiers or with K&amp;R-style function
    declarations.  This will use C17 if available, falling back
    to C11.
    USE_C90 Use the C90 (aka C89) standard.  (As that standard did
    not require compilers to identify that version, all we can
    verify is that the compiler does not claim to be using a
    later standard.  It may accept C99 features - for example
    clang accepts // to make comments.)
    USE_C99 Use the C99 standard. This should be rarely needed - it
    avoids the few new features of C11/C17 which can be useful if
    a package assumes them if C17 is specified and they are not
    implemented.
    USE_C23 Use C23 (or in future, later).  Compiler/library support
    for C23 is still being implemented, but LLVM clang from
    15.0.0 and the upcoming GCC 13 have quite extensive support.
    These can be specified as part of the SystemRequirements field in
    the package's DESCRIPTION file or _via_ options --use-C17 and so
    on of R CMD INSTALL and R CMD SHLIB.
    For further details see "Writing R Extensions" SS1.2.5.
  * (Windows) A src/Makefile.ucrt or src/Makefile.win file is now
    included after R_HOME/etcR_ARCH/Makeconf and so no longer needs
    to include that file itself.  Installation of a package with such
    a file now uses a site Makevars file in the same way as a package
    with a src/Makevars.win file would.
  * configure is now passed crucial variables such as CC and CFLAGS
    in its environment, as many packages were not setting them (as
    documented in 'Writing R Extensions' SS1.2).
    This has most effect where configure is used to compile parts of
    the package - most often by cmake or libtool which obfuscate the
    actual compile commands used.
    Also used for configure.win and configure.ucrt on Windows.
  FORTRAN FLAGS:
  * The flag -fno-optimize-sibling-calls is no longer forced for
    gfortran 7 and later.  It should no longer be needed now using
    'hidden' character-length arguments when calling BLAS/LAPACK
    routines from C/C++ is the default even for packages.  (Unless
    perhaps packages call Fortran code from C/C++ without using R's
    headers and without allowing for these arguments.)
  C-LEVEL FACILITIES:
  * The deprecated S-compatibility macros DOUBLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * The deprecated legacy typedefs of Sint and Sfloat in header R.h
    are no longer defined, and that header no longer includes header
    limits.h from C nor climits from C++.
  * New macro CAD5R() is provided in Rinternals.h and used in a few
    places in the R sources.
  * ALTREP now supports VECSXP vectors. Contributed by Gabor Csardi
    in PR#17620.
  * The Rcomplex definition (in header R_ext/Complex.h) has been
    extended to prevent possible mis-compilation when interfacing
    with Fortran (PR#18430).  The new definition causes compiler
    warnings with static initializers such as {1, 2}, which can be
    changed to {.r=1, .i=2}.
    Using the new definition from C++ depends on compiler extensions
    supporting C features that have not been incorporated into the
    C++ standards but are available in g++ and clang++: this may
    result in C++ compiler warnings but these have been worked around
    for recent versions of common compilers (GCC, Apple/LLVM clang,
    Intel).
    It is intended to change the inclusion of header R_ext/Complex.h
    by other R headers, so C/C++ code files which make use of
    Rcomplex should include that header explicitly.
  UTILITIES:
  * R CMD check does more checking of package .Rd files, warning
    about invalid email addresses and (some) invalid URIs and noting
    empty \item labels in description lists.
  * R CMD check now also reports problems when reading package news
    in md (file NEWS.md) and (optionally) plain text (file NEWS)
    formats.
  * _R_CHECK_TIMINGS_ defaults to a value from the environment even
    for R CMD check --as-cran; this allows for exceptionally fast or
    slow platforms.
    It now applies to checking PDF and HTML versions of the manuals,
    and 'checking CRAN incoming feasibility'.
  * R CMD check can optionally (but included in --as-cran) check
    whether HTML math rendering _via_ KaTeX works for the package .Rd
    files.
  * Non-interactive debugger invocations can be trapped by setting
    the environment variable _R_CHECK_BROWSER_NONINTERACTIVE_ to a
    true value.  This is enabled by R CMD check --as-cran to detect
    the use of leftover browser() statements in the package.
  * The use of sprintf and vsprintf from C/C++ has been deprecated in
    macOS 13 and is a known security risk.  R CMD check now reports
    (on all platforms) if their use is found in compiled code:
    replace by snprintf or vsnprintf respectively. [*NB:* whether
    such calls get compiled into the package is platform-dependent.]
  * Where recorded at installation, R CMD check reports the C and
    Fortran compilers used to build R.
    It reports the OS in use (if known, as given by osVersion) as
    well as that R was built for.
    It notes if a C++ standard was specified which is older than the
    current default: many packages have used C++11 to mean 'not
    C++98' - as C++11 is the minimum supported since R 4.0.0, that
    specification can probably be removed.
  * R CMD INSTALL reports the compilers (and on macOS, the SDK) used,
    and this is copied to the output of R CMD check.
    Where a C++ standard is specified, it is reported.
  * R CMD check's 'checking compilation flags in Makevars' has been
    relaxed to accept the use of flags such as -std=f2008 in
    PKG_FFLAGS.
  * tools::buildVignettes() has a new argument skip, which is used by
    R CMD check to skip (and note) vignettes with unavailable
    \VignetteDepends (PR#18318).
  * New generic .AtNames() added to enable class-specific completions
    after @. The formerly internal function findMatches() is now
    exported, mainly for use in methods for .DollarNames() and
    .AtNames().
  DEPRECATED AND DEFUNCT:
  * default.stringsAsFactors() is defunct.
  * Calling as.data.frame.&lt;class&gt;() directly (for 12 atomic classes)
    is going to be formally deprecated, currently activated by
    setting the environment variable
    _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ to non-empty, which also
    happens in R CMD check --as-cran.
  BUG FIXES:
  * Hashed environments with sizes less than 5 can now grow.
    (Reported to R-devel by Duncan Garmonsway.)
  * as.character(&lt;Rd&gt;, deparse = TRUE) failed to re-escape curly
    braces in LaTeX-like text.  (Reported by Hadley Wickham in
    PR#18324.)
  * library() now passes its lib.loc argument when requiring Depends
    packages; reported (with fix) in PR#18331 by Mikael Jagan.
  * R CMD Stangle: improved message about 'Output' files.
  * head(x, n) and tail(x, n) now signal an error if n is not
    numeric, instead of incidentally "working" sometimes returning
    all of x.  Reported and discussed by Colin Fay, in PR#18357.
  * The "lm" method for summary() now gives the correct F-statistic
    when the model contains an offset.  Reported in PR#18008.
  * C() and `contrasts&lt;-`() now preserve factor level names when
    given a function object (as opposed a function name which did
    preserve names). Reported in PR#17616.
  * c(a = 1, 2)[[]] no longer matches 2 but rather signals a
    _classed_ error.  Reported and analysed by Davis Vaughan in
    PR#18367, a duplicate of PR#18004, by Jan Meis et al.  For
    consistency, NULL[[]] is also erroneous now.  x[[]] &lt;- v gives an
    error of the same class "MissingSubscriptError".
  * The relist() function of utils now supports NULL elements in the
    skeleton (PR#15854).
  * ordered(levels = *) (missing x) now works analogously to factor(,
    ordered=TRUE); reported (with fix) by Achim Zeileis in PR#18389.
  * User-defined Rd macro definitions can now span multiple lines,
    thanks to a patch from Duncan Murdoch. Previously, the Rd parser
    silently ignored everything after the first line.
  * Plain-text help (tools::Rd2txt()) now preserves an initial blank
    line for text following description list items.
  * tools::Rd2HTML() and tools::Rd2latex() no longer split \arguments
    and \value lists at Rd comments.
  * tools::Rd2latex() now correctly handles optional text outside
    \items of argument lists as well as bracketed text at the
    beginning of sections, e.g., \value{[NULL]}.
  * as.character(&lt;POSIXt&gt;) now behaves more in line with the methods
    for atomic vectors such as numbers, and is no longer influenced
    by options().  Ditto for as.character(&lt;Date&gt;).  The
    as.character() method gets arguments digits and OutDec with
    defaults _not_ depending on options().  Use of as.character(*,
    format = .) now warns.
  * Similarly, the as.character.hexmode() and *.octmode() methods
    also behave as good citizen methods and back compatibility option
    keepStr = TRUE.
  * The as.POSIXlt(&lt;POSIXlt&gt;) and as.POSIXct(&lt;POSIXct&gt;) default
    methods now do obey their tz argument, also in this case.
  * as.POSIXlt(&lt;Date&gt;) now does apply a tz (time zone) argument, as
    does as.POSIXct(); partly suggested by Roland Fuss on the R-devel
    mailing list.
  * as.Date.POSIXlt(x) now also works when the list components are of
    unequal length, aka "partially filled" or "ragged".
  * expand.model.frame() looked up variables in the wrong environment
    when applied to models fitted without data.  Reported in
    PR#18414.
  * time() now (also) uses the ts.eps = getOption("ts.eps") argument
    and thus by default rounds values very close to the start (or
    end) of a year.  Based on a proposal by Andre"i V. Kostyrka on
    R-help.
  * Printing of a factanal() result with just one factor and sort =
    TRUE now works regularly, fixing PR#17863 by Timothy Bates,
    thanks to the 'R Contributors' working group.
  * Printing 0-length objects of class "factor", "roman", "hexmode",
    "octmode", "person", "bibentry", or "citation" now prints
    something better, one of which fixes PR#18422, reported by
    Benjamin Feakins.
  * Sys.timezone() queries timedatectl only if systemd is loaded;
    addressing a report by Jan Gorecki in PR#17421.
  * The formula method of cor.test() had scoping problems when
    environment(formula) was not the calling environment; reported
    with a patch proposal by Mao Kobayashi in PR#18439.
  * attach() of an environment with active bindings now preserves the
    active bindings.  Reported by Kevin Ushey in PR#18425.
  * BLAS detection now works also with system-provided libraries not
    available as regular files.  This fixes detection of the
    Accelerate framework on macOS since Big Sur.  Reported by David
    Novgorodsky.
  * download.file() gives a helpful error message in case of an
    invalid download.file.method option, thanks to Colin Fay's report
    in PR#18455.
  * Sporadic crashes of Rterm when using completion have been fixed.
  * Rprof() is now more reliable.  A livelock in thread
    initialization with too short sampling interval has been fixed on
    macOS.  A deadlock in using the C runtime has been fixed on
    Windows.  A potential deadlock has been prevented on Unix.
  * Cursor placement in Rgui now works even after a fixed-width font
    is selected.
  * Mandatory options (options()) are now set on startup so that
    saving and restoring them always works (PR#18372).
  * Package installation, R CMD INSTALL or install.packages(*), now
    parses each of the &lt;pkg&gt;/R/*.R files individually instead of
    first concatenating and then parse()ing the large resulting file.
    This allows parser or syntax errors to be diagnosed with correct
    file names and line numbers, thanks to Simon Dedman's report and
    Bill Dunlap's patch in PR#17859.
    This _does_ require syntactically self contained R source files
    now, fixing another inadvertent bug.
  * predict.lm(&lt;model with offset&gt;) now finds the offset in the
    correct environment, thanks to Andr'e Gillibert's report and patch
    in PR#18456.
  * getInitial(&lt;formula&gt;) now finds the selfStart model in the
    correct environment.  (Reported by Ivan Krylov in PR#18368.)
  * Fix for possible segfault when using recently-added graphics
    features, such as gradients, clipping paths, masks, and groups
    with pdf(file=NULL).
  * class(m) &lt;- class(m) no longer changes a matrix m by adding a
    class _attribute_.
  * packageDate(pkg) now only warns once if there is no pkg.
  * When ts() creates a multivariate time series, "mts", it also
    inherits from "array" now, and is.mts() is documented _and_
    stricter.
  * Rd2txt() now preserves line breaks of \verb Rd content and from
    duplicated \cr.  The former also fixes the rendering of verbatim
    output from Rd \Sexpr in plain-text help.
  * uniroot(f, interval) should no longer wrongly converge _outside_
    the interval in some cases where abs(f(x)) == Inf for an x at the
    interval boundary, thanks to posts by Ben Bolker and Serguei
    Sokol on R-devel.
  * Vectorized alpha handling in palette functions such as in gray(),
    rainbow(), or hcl.colors() works correctly now, thanks to Achim
    Zeileis' report and patch in PR#18476.
  * Formatting and print()ing of bibentry objects has dropped the
    deprecated citation.bibtex.max argument, such that the bibtex
    argument's default for print.bibentry() depends directly on the
    citation.bibtex.max option, whereas in format.bibentry() the
    option no longer applies.
  * Attempting to use a character string naming a foreign function
    entry point in a foreign function call in a package will now
    signal an error if the packages has called R_forceSymbols to
    specify that symbols must be used.
  * An error in table() could permanently set options(warn=2)
    promoting all subsequent warnings to errors.
  * The sigma() function gave misleading results for binary GLMs.  A
    new method for objects of class "glm" returns the square root of
    the estimate of the dispersion parameter using the same
    calculation as summary.glm().
  * bs() and ns() in the (typical) case of automatic knot
    construction, when some of the supposedly inner knots coincide
    with boundary knots, now moves them inside (with a warning),
    building on PR#18442 by Ben Bolker.
  * R CMD on Windows now skips the site profile with --no-site-file
    and --vanilla even when R_PROFILE is set (PR#18512, from Kevin
    Ushey).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1686916800">- CHANGES IN R 4.3.1:
  C-LEVEL FACILITIES:
  * The C-level API version of R's integrate(), Rdqags() in Applic.h,
    now returns the correct number of integrand evaluations neval,
    fixing PR#18515 reported and diagnosed by Stephen Wade.
  * The C prototypes for LAPACK calls dspgv and dtptrs in
    R_exts/Lapack.h had one too many and one too few character length
    arguments - but this has not caused any known issues. To get the
    corrected prototypes, include
    [#]include &lt;Rconfig.h&gt; // for PR18534fixed
    [#]ifdef PR18534fixed
    [#] define usePR18534fix 1
    [#]endif
    [#]include &lt;R_exts/Lapack.h&gt;
    in your C/C++ code (PR#18534).
  INSTALLATION:
  * Many of the checks of esoteric Internet operations and those
    using unreliable external sites have been moved to a new target
    that is not run by default and primarily intended for the core
    developers.  To run them use
    cd tests; make test-Internet-dev
  BUG FIXES:
  * .S3methods(), typically called from methods(), again marks
    methods from package base as visible.
    Also, the visibility of non-base methods is again determined by
    the method's presence in search().
  * tools::Rdiff() is now more robust against invalid strings, fixing
    installation tests on Windows without Rtools installed
    (PR#18530).
  * Fix (new) bug in hcl.colors(2, *), by Achim Zeileis (PR#18523).
  * head(., &lt;illegal&gt;) and tail(..) now produce more useful "Error in
    ...." error messages, fixing PR#18362.
  * Package code syntax on Windows is checked in UTF-8 when UTF-8 is
    the native encoding.
  * na.contiguous(x) now also returns the first run, when it is at
    the beginning and there is a later one of the same length;
    reported to R-devel, including a fix, by Georgi Boshnakov.
    Further, by default, it modifies only an existing attr(*,"tsp")
    but otherwise no longer sets one.
  * chol(&lt;not pos.def&gt;, pivot = &lt;T|F&gt;) now gives a correct error or
    warning message (depending on pivot), thanks to Mikael Jagan's
    (PR#18541).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1699012800">- CHANGES IN R 4.3.2:
  NEW FEATURES:
  * The default initialization of the "repos" option from the
    repositories file at startup can be skipped by setting
    environment variable R_REPOSITORIES to NULL such that
    getOption("repos") is empty if not set elsewhere.
  * qr.X() is now an implicit S4 generic in methods.
  * iconv(to = "ASCII//TRANSLIT") is emulated using substitution on
    platforms which do not support it (notably Alpine Linux).  This
    should give a human-readable conversion in ASCII on all platforms
    (rather than NA_character_).
  * trans3d() gains options continuous and verbose addressing the
    problem of possible "wrap around" when projecting too long
    curves, as reported by Achim Zeileis in PR#18537.
  * tools::showNonASCII() has been rewritten to work better on macOS
    14 (which has a changed implementation of iconv()).
  * tiff(type = "quartz") (the default on macOS) now warns if
    compression is specified: it continues to be ignored.
  INSTALLATION on a UNIX-ALIKE:
  * There is some support for building with Intel's LLVM-based
    compilers on x86_64 Linux, such as (C) icx, (C++) ipcx and
    (Fortran) ifx from oneAPI 2023.x.y.
  * There is support for using LLVM's flang-new as the Fortran
    compiler from LLVM 16.0.x (preferably 17.0.0 or later).
  UTILITIES:
  * R CMD check reports the use of the Fortran 90 random number
    generator RANDOM_NUMBER() and the subroutines to initialize it.
    'Writing R Extensions' has example code to use R's RNGs from
    Fortran.
  BUG FIXES:
  * substr(x, n, L) &lt;- cc now works (more) correctly for multibyte
    UTF-8 strings x when L &gt; nchar(x), thanks to a report and patch
    by 'Architect 95'.
  * contrib.url(character()) now returns 0-length character() as
    documented, which also avoids spurious warnings from
    available.packages() et al. in the edge case of an empty vector
    of repository URLs.
  * readChar(., 4e8) no longer fails, thanks to Kodi Arfer's report
    (PR#18557).
  * lapply(&lt;list&gt;, as.data.frame) no longer warns falsely for some
    base vector components.
  * Communication between parent and child processes in the multicore
    part of parallel could fail on platforms that do not support an
    arbitrarily large payload in system functions read()/write() on
    pipes (seen on macOS where a restriction to INT_MAX bytes is
    documented, without doing a partial read unlike Linux). The
    payload is now split into 1Gb chunks to avoid that problem.
    (PR#18571)
  * qqplot(x,y, conf.level=.) gives better confidence bounds when
    length(x) != length(y), thanks to Alexander Ploner's report and
    patch proposal (PR#18557).
  * norm(&lt;0-length&gt;, "2") now gives zero instead of an error, as all
    the other norm types, thanks to Mikael Jagan's PR#18542.
  * Build-stage Rd macros \packageAuthor and \packageMaintainer now
    process Authors@R, fixing NA results when the package DESCRIPTION
    omits Author and Maintainer fields.
  * Formatting and printing complex numbers could give things like
    0.1683-0i because of rounding error: -0i is now replaced by +0i.
  * postscript() refused to accept a title comment containing the
    letter "W" (PR#18599).
  * isoreg(c(1,Inf)) signals an error instead of segfaulting, fixing
    PR#18603.
  * tiff(type = "Xlib") was only outputting the last page of
    multi-page plots.
  * tools::latexToUtf8() again knows about \~{n} and other letters
    with tilde, fixing a regression in R 4.3.0, and about \^{i} as an
    alternative to \^{\i} (similarly with other accents).
    Furthermore, LaTeX codes for accented I letters are now correctly
    converted, also fixing related mistakes in
    tools::encoded_text_to_latex().
  * tar(*, tar = "internal") no longer creates out-of-spec tar files
    in the very rare case of user or group names longer than 32
    bytes, fixing PR#17871 with thanks to Ivan Krylov.
  * When using the "internal" timezone datetime code, adding a
    fraction of a second no longer adds one second, fixing PR#16856
    from a patch by Ivan Krylov.
  * tools::checkRd() no longer produces spurious notes about
    "unnecessary braces" from multi-line Rd results of \Sexpr macros.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1709208000">- CHANGES IN R 4.3.3:
  NEW FEATURES:
  * iconv() now fixes up variant encoding names such as "utf8"
    case-insensitively.
  DEPRECATED AND DEFUNCT:
  * The legacy encoding = "MacRoman" is deprecated in pdf() and
    postscript(): support was incomplete in earlier versions of R.
  BUG FIXES:
  * Arguments are now properly forwarded to methods on S4 generics
    with ... in the middle of their formal arguments. This was broken
    for the case when a method introduced an argument but did not
    include ... in its own formals. Thanks to Herv'e Pag`es for the
    report PR#18538.
  * Some invalid file arguments to pictex(), postscript() and xfig()
    opened a file called NA rather than throw an error.  These
    included postscript(NULL) (which some people expected to work
    like pdf(NULL)).
  * Passing filename = NA to svg(), cairo_pdf(), cairo_ps() or the
    Cairo-based bitmap devices opened a file called NA: it now throws
    an error.
  * quartz(file = NA) opened a file called NA, including when used as
    a Quartz-based bitmap device.  It now gives an error.
  * rank(&lt;long vector&gt;) now works, fixing PR#18617, thanks to Ilia
    Kats.
  * seq.int() did not adequately check its length.out argument.
  * match(&lt;POSIXct&gt;, .) is correct again for differing time zones,
    ditto for "POSIXlt", fixing PR#18618 reported by Bastian Klein.
  * drop.terms(*, dropx = &lt;0-length&gt;) now works, fixing PR#18563 as
    proposed by Mikael Jagan.
  * drop.terms(*) keeps + offset(.) terms when it should, PR#18565,
    and drop.terms() no longer makes up a response, PR#18566, fixing
    both bugs thanks to Mikael Jagan.
  * getS3method("t", "test") no longer finds the t.test() function,
    fixing PR#18627.
  * pdf() and postscript() support for the documented Adobe encodings
    "Greek" and "Cyrilllic" was missing (although the corresponding
    Windows' codepages could be used).
  * Computations of glyph metric information for pdf() and
    postscript() did not take into account that transliteration could
    replace one character by two or more (only seen on macOS 14) and
    typically warned that the information was not known.
  * rank(x) no longer overflows during integer addition, when
    computing rank average for largish but not-yet long vector x,
    fixing PR#18630, thanks to Ilia Kats.
  * list.files() on Windows now returns also files with names longer
    that 260 bytes (the Windows limit is 260 characters).
    Previously, some file names particularly with 'East Asian'
    characters were omitted.
  * cov2cor(&lt;0 x 0&gt;) now works, fixing PR#18423 thanks to Mikael
    Jagan and Elin Waring.
  * cov2cor(&lt;negative diagonal&gt;) and similar now give one warning
    instead of two, with better wording, fixing PR#18424 thanks to
    Mikael Jagan.
  * tools:: startDynamicHelp() now ensures port is in proper range,
    fixing PR#18645.
  * pbeta(x, a,b) is correct now for x=0 or 1 in the boundary cases
    where a or b or both are 0, fixing PR#18672 thanks to Michael
    Fay.
  * pmatch(x, table) for large table, also called for data frame row
    selection, dfrm[nm, ], is now interruptible, fixing PR#18656.
  * predict(&lt;rank-deficient lm&gt;, newdata=*) fix computing of nbasis,
    see Russ Lenth's comment 29 in PR#16158.
  * Added a work-around for a bug in macOS 14.3.1 and higher which
    prevents R plots in the Quartz Cocoa device from updating on
    screen.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1713960000">- CHANGES IN R 4.4.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Startup banners, R --version, sessionInfo() and R CMD check no
    longer report (64-bit) as part of the platform as this is almost
    universal - the increasingly rare 32-bit platforms will still
    report (32-bit).
    On Windows, ditto for window titles.
  * is.atomic(NULL) now returns FALSE, as NULL is not an atomic
    vector.  Strict back-compatibility would replace is.atomic(foo)
    by (is.null(foo) || is.atomic(foo)) but should happen only
    sparingly.
  NEW FEATURES:
  * The confint() methods for "glm" and "nls" objects have been
    copied to the stats package.  Previously, they were stubs which
    called versions in package MASS. The MASS namespace is no longer
    loaded if you invoke (say) confint(glmfit).  Further, the "glm"
    method for profile() and the plot() and pairs() methods for class
    "profile" have been copied from MASS to stats.  (profile.nls()
    and plot.profile.nls() were already in stats.)
  * The confint() and profile methods for "glm" objects have gained a
    possibility to do profiling based on the Rao Score statistic in
    addition to the default Likelihood Ratio. This is controlled by a
    new test = argument.
  * The pairs() method for "profile" objects has been extended with a
    which = argument to allow plotting only a subset of the
    parameters.
  * The "glm" method for anova() computes test statistics and
    p-values by default, using a chi-squared test or an F test
    depending on whether the dispersion is fixed or free.  Test
    statistics can be suppressed by giving argument test a false
    logical value.
  * In setRepositories() the repositories can be set using their
    names via name = instead of index ind =.
  * methods() and .S3methods() gain a all.names option for the (rare)
    case where functions starting with a . should be included.
  * Serializations can now be interrupted (e.g., by Ctrl-C on a
    Unix-alike) if they take too long, e.g., from save.image(),
    thanks to suggestions by Ivan Krylov and others on R-devel.
  * New startup option --max-connections to set the maximum number of
    simultaneous connections for the session.  Defaults to 128 as
    before: allowed values up to 4096 (but resource limits may in
    practice restrict to smaller values).
  * R on Windows (since Windows 10 2004) now uses the new Segment
    Heap allocator. This may improve performance of some
    memory-intensive applications.
  * When R packages are built, typically by R CMD build &lt;pkg&gt;, the
    new --user=&lt;build_user&gt; option overrides the (internally
    determined) user name, currently Sys.info()["user"] or LOGNAME.
    This is a (modified) fulfillment of Will Landau's suggestion in
    PR#17530.
  * tools::testInstalledBasic() gets new optional arguments outDir
    and testSrcdir, e.g., allowing to use it in a &lt;builddir&gt; !=
    &lt;srcdir&gt; setup, and in standard "binary" Windows installation
  * if* a source tests/ folder is present.
  * range(&lt;DT_with_Inf&gt;, finite = TRUE) now work for objects of class
    "Date", "POSIXct", and "POSIXlt" with infinite entries,
    analogously to range.default(), as proposed by Davis Vaughan on
    R-devel.  Other range()-methods can make use of new function
    .rangeNum().
  * New .internalGenerics object complementing .S3PrimitiveGenerics,
    for documentation and low-level book-keeping.
  * grid() now invisibly returns the x- and y- coordinates at which
    the grid-lines were drawn.
  * norm(., type) now also works for complex matrices.
  * kappa(., exact = TRUE, norm = *) now works for all norms and also
    for complex matrices.  In symmetric / triangular cases, the new
    argument uplo = "U" | "L" allows the upper or lower triangular
    part to be specified.
  * memDecompress(type = "unknown") recognizes compression in the
    default 'zlib' format as used by memCompress(type = "gzip").
  * memCompress() and memDecompress() will use the libdeflate library
    (&lt;https://github.com/ebiggers/libdeflate&gt;) if installed.  This
    uses the same type of compression for type = "gzip" but is 1.5-2x
    faster than the system libz library on some common platforms: the
    speed-up may depend on the library version.
  * diff() for objects of class "Date", "POSIXct", and "POSIXlt"
    accepts a units argument passed via ....
  * Dynamic help now does a much better job of rendering package
    DESCRIPTION metadata.
  * Rprof() gains an event argument and support for elapsed (real)
    time profiling on Unix (PR#18076).
  * filled.contour() gains a key.border argument.
  * tools::update_pkg_po() gets arguments pot_make and mo_make for
    _not_ re-making the corresponding files, and additionally a
    verbose argument.
  * Hexadecimal string colour specifications are now accepted in
    short form, so, for example, we can use "#123", which is
    equivalent to "#112233".
    Thanks to MikeFC for the original idea and Ella Kaye, Malcolm
    Barrett, George Stagg, and Hanne Oberman for the patch.
  * Plain-text help shows \var markup by angle brackets.
  * The new experimental primitive function declare() is intended to
    eventually allow information about R code to be communicated to
    the interpreter, compiler, and code analysis tools. The syntax
    for declarations is still being developed.
  * Functions psmirnov(), qsmirnov() and rsmirnov() in package stats
    have had argument two.sided renamed to alternative, to take into
    account that the permutation distributions of the one-sided
    statistics can be different in the case of ties.  Consequence of
    PR#18582.
  * sort() is now an implicit S4 generic in methods.
  * Formatting and printing, format(z), print(z), of complex vectors
    z no longer zap relatively small real or imaginary parts to zero,
    fixing PR#16752.  This is an API change, as it was documented
    previously to round real and imaginary parts together on purpose,
    producing nicer looking output.  As mentioned, e.g. in the PR,
    this change is compatible with many other "R-like" programming
    environments.
    We have simplified the internal code and now basically format the
    real and imaginary parts independently of each other.
  * New experimental functions Tailcall() and Exec() to support
    writing stack-space-efficient recursive functions.
  * Where characters are attempted to be plotted by pdf(),
    postscript() and xfig() which are not in the selected 8-bit
    character set (most often Latin-1) and the R session is using a
    UTF-8 locale, the warning messages will show the UTF-8 character
    rather than its bytes and one dot will be substituted per
    character rather than per byte.  (Platforms whose iconv() does
    transliteration silently plot the transliteration.)
    In a UTF-8 locale some transliterations are now done with a
    warning (e.g., dashes and Unicode minus to hyphen, ligatures are
    expanded, permille (‰) is replaced by o/oo), although the OS may
    have got there first.  These are warnings as they will continue
    to be replaced by dots in earlier versions of R.
  * The matrix multiplication functions crossprod() and tcrossprod()
    are now also primitive and S3 generic, as %*% had become in R
    4.3.0.
  * source() and example() have a new optional argument catch.aborts
    which allows continued evaluation of the R code after an error.
  * The non-Quartz tiff() devices allow additional types of
    compression if supported by the platform's libtiff library.
  * The list of base and recommended package names is now provided by
    tools::standard_package_names().
  * cairo_pdf() and cairo_ps() default to onefile = TRUE to closer
    match pdf() and postscript().
  * New option catch.script.errors provides a documented way to catch
    errors and then continue in non-interactive use.
  * L %||% R newly in base is an expressive idiom for the phrases
    if(!is.null(L)) L else R or if(is.null(L)) R else L.
  * The return value from warnings() now always inherits from
    "warnings" as documented, now also in the case of no warnings
    where it previously returned NULL.
  * as.complex("1i") now returns 0 + 1i instead of NA with a warning.
  * z &lt;- c(NA, 1i) now keeps the imaginary part Im(z[1]) == 0, no
    longer coercing to NA_complex_.  Similarly, cumsum(z) correctly
    sums real and imaginary parts separately, i.e., without
    "crosstalk" in case of NAs.
  * On Alpine Linux iconv() now maps "latin2", "latin-2", "latin9"
    and "latin-9" to encoding names the OS knows about
    (case-insensitively).
  * iconv(sub = "Unicode") now always zero-pads to four (hex) digits,
    rather than to 4 or 8.  (This seems to have become the convention
    once Unicode restricted the number of Unicode points to 2^21 - 1
    and so will never need more than 6 digits.)
  * NCOL(NULL) now returns 0 instead of 1, for consistency with
    cbind().
  * The information for the Euro glyph missing from the Adobe .afm
    files for the Courier, Helvetica and Times families has been
    copied from their URW equivalents - this will improve vertical
    centring in the pdf() and postscript() devices.
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.12.0.  The changes are almost entirely cosmetic.
  * The included LAPACK sources have been updated to version 3.12.0
    and some further double-complex routines added.
  * There are new font families for the 2014--5 URW 2.0 fonts (see
    ?pdf) which are included in recent versions of Ghostscript.
    These have font widths for most Greek glyphs and a few others
    which were missing from the original versions (whose font
    families remain available for reproducibility, although
    Ghostscript-based viewers will render using the 2.0 versions).
  * Improve the large-n efficiency of as.matrix(&lt;dist&gt;), thanks an R
    contributors effort, notably by Tim Taylor and Heather Turner,
    see PR#18660.
  * The default and numeric methods of all.equal() get a check.class
    option.
  * zapsmall() gets new optional arguments, function mFUN and min.d,
    for extra flexibility; fulfills a wish in PR#18199.  Also, it is
    now an implicit S4 generic in package methods.
  * The Rd filter for aspell() gains an ignore argument.
  * New generic function sort_by(), primarily useful for the
    data.frame method which can be used to sort rows of a data frame
    by one or more columns.
  * The icence headers for the RPC code in src/extra/xdr have been
    updated to use the GPL-compatible licence published by Oracle
    America in 2010.
  * New function pkg2HTML() in tools to create single-page HTML
    reference manuals for R packages.
  * The byte code evaluator now uses less C stack space for recursive
    calls to byte-compiled functions. It also makes more of an effort
    to avoid allocations for scalar return values.
  * New completion option backtick (disabled by default) allows
    non-syntactic completions to be wrapped in backquotes. This is
    currently only useful for Jupyter notebooks via the IRkernel
    package, and may cause problems for other backends.
  INSTALLATION:
  * The parser has been updated to work with bison 3.8.2, which is
    now used for the pre-generated parsers in gram.c, file.c, and
    gramRd.c. A few parser error messages have changed, which may
    affect code that relies on exact messages.
  INSTALLATION on a UNIX-ALIKE:
  * System valgrind headers are now required to use configure option
  - -with-valgrind-instrumentation with value 1 or 2.
  * configure will warn if it encounters a 32-bit build, as that is
    nowadays almost untested.
  * Environment variable R_SYSTEM_ABI is no longer used and so no
    longer recorded in etc/Renviron (it was not on Windows and was
    only ever used when preparing package tools).
  * If the libdeflate library and headers are available, libdeflate
    rather than libz is used to (de)compress R objects in lazy-load
    databases.  Typically tasks spend up to 5% of their time on such
    operations, although creating lazy-data databases is one of the
    exceptions.
    This can be suppressed if the library is available by the
    configure option --without-libdeflate-compression.
  * configure option --enable-lto=check has not worked reliably since
    2019 and has been removed.
  * The minimum autoconf requirement for a maintainer build has been
    increased to autoconf 2.71.
    It is intended to increase this to 2.72 for R 4.5.0: the
    distributed configure file was generated using 2.72.
  * The minimum version requirement for an external LAPACK has been
    reduced to 3.9.0.
  * No default C++ compiler is set if no C++17 compiler is detected:
    there is no longer an automatic fallback to C++14 or C++11.
    Compilers from the last five years should have sufficient
    support: for others macros CXX and CXXSTD can be set in file
    config.site to provide a fallback if needed.
    The Objective-C++ compiler now by default uses the standard
    selected by R for C++ (currently C++17) rather than the default
    standard for the C++ compiler (which on macOS is still C++98).
  INSTALLATION on macOS:
  * A new configure option --with-newAccelerate makes use of Apple's
    'new' BLAS / LAPACK interfaces in their Accelerate framework.
    Those interfaces are only available in macOS 13.3 or later, and
    building requires SDK 13.3 or later (from the Command Line Tools
    or Xcode 14.3 or later).
    By default the option uses new Accelerate for BLAS calls: to also
    use it for LAPACK use option --with-newAccelerate=lapack.  The
    later interfaces provide LAPACK 3.9.1 rather than 3.2.1: 3.9.1 is
    from 2021-04 and does not include the improved algorithms
    introduced in LAPACK 3.10.0 (including for BLAS calls).
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools44, an update of the Rtools43 toolchain.  It is
    based on GCC 13 and newer versions of MinGW-W64, binutils and
    libraries (targeting 64-bit Intel CPUs).  R-devel can no longer
    be built using Rtools43 without changes.
  * Rtools44 has experimental support for 64-bit ARM (aarch64) CPUs
    _via_ the LLVM 17 toolchain using lld, clang/flang-new and
    libc++.
  UTILITIES:
  * R CMD check notes when S4-style exports are used without
    declaring a strong dependence on package methods.
  * tools::checkRd() (used by R CMD check) detects more problems with
    \Sexpr-based dynamic content, including bad nesting of \Sexprs
    and invalid arguments.
  * tools::checkRd() now reports Rd titles and section names ending
    in a period; this is ignored by R CMD check unless environment
    variable _R_CHECK_RD_CHECKRD_MINLEVEL_ is set to -5 or smaller.
  * R CMD check now notes Rd files without an \alias, as long
    documented in 'Writing R Extensions' §1.3.1.  The check for a
    missing \description has been moved from tools::checkRd() to
    tools::checkRdContents().
  * R CMD check now visits inst/NEWS.Rd and OS-specific man
    subdirectories when checking Rd files.
  * tools::checkDocFiles() and tools::checkRdContents() now also
    check internal Rd files by default, but "specially" (ignoring
    missing documentation of arguments).
  * R CMD Rdiff gets option --useEx.
  * R CMD check now warns on non-portable uses of Fortran KIND such
    as INTEGER(KIND=4) and REAL(KIND=8).
    To see the failing lines set environment variable
    _R_CHECK_FORTRAN_KIND_DETAILS_ to a true value.
  * When checking Rd files, R CMD check now notes some of the "lost
    braces" that tools::checkRd() finds.  Typical problems are Rd
    macros missing the initial backslash (e.g., code{...}), in-text
    set notation (e.g., {1, 2}, where the braces need escaping), and
    \itemize lists with \describe-style entries of the form
    \item{label}{description}.
  * R CMD INSTALL (and hence check) will compile C++ code with
  - DR_NO_REMAP if environment variable _R_CXX_USE_NO_REMAP_ is set
    to a true value.  It is planned that this will in future become
    the default for compiling C++.
  * The new built-in Rd macro \dontdiff{} can be used to mark example
    code whose output should be ignored when comparing check output
    to reference output (tests/Examples/&lt;pkg&gt;-Ex.Rout.save).  The
    \dontdiff tag, like \donttest, is _not_ shown on the rendered
    help page, so provides a clean alternative to ##
    IGNORE_RDIFF_(BEGIN|END) comments.
  * R CMD build when there is no NAMESPACE, now uses the recommended
    exportPattern("^[^.]"), instead of exporting everything.
  * R CMD check now warns about non-ASCII characters in the NAMESPACE
    file (in addition to R files). Such packages are not portable and
    may fail to install on some platforms.
  C-LEVEL FACILITIES:
  * Headers R_ext/Applic.h and R-ext/Linpack.h used to include
    R_ext/BLAS.h although this was undocumented and unneeded by their
    documented entry points.  They no longer do so.
  * New function R_missing(), factored out from do_missing(), used to
    fix PR#18579.
  * SEXP type S4SXP has been renamed to OBJSXP to support
    experimenting with alternative object systems.  The S4SXP value
    can still be used in C code but is now deprecated.  Based on
    contributions from the R Consortium's Object-Oriented Programming
    Working Group.
  * New function pow1p(x,y) for accurate (1+x)^y.
  * mkCharLenCE was incorrectly documented to take a size_t length
    but was implemented with int (and character strings in R are
    limited to 2^31 - 1 bytes).
  DEPRECATED AND DEFUNCT:
  * data() no longer handles zipped data from long-defunct (since R
    2.13.0) --use-zip-data installations.
  * The legacy graphics devices pictex() and xfig() are now
    deprecated.  They do not support recent graphics enhancements and
    their font handling is rudimentary. The intention is to retain
    them for historical interest as long as they remain somewhat
    functional.
  * Support for encoding = "MacRoman" has been removed from the pdf()
    and postscript() devices - this was a legacy encoding supporting
    classic macOS up to 2001 and no longer has universal libiconv
    support.
  * is.R() is deprecated as no other S dialect is known to be in use
    (and this could only identify historical dialects, not future
    ones).
    Further information on calls can be obtained by setting the
    environment variable _R_DEPRECATED_IS_R_ to error which turns the
    deprecation warning into an error and so by default gives a
    traceback.  (This is done by R CMD check --as-cran.)
  * UseMethod() no longer forwards local variables assigned in the
    generic function into method call environments before evaluating
    the method body. This makes method calls behave more like
    standard function calls and makes method code easier to analyze
    correctly.
  * The twelve as.data.frame.&lt;class&gt;() methods which were deprecated
    only via _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ and in R CMD
    check --as-cran are formally deprecated now in favour of calling
    as.data.frame() or as.data.frame.vector().  The deprecation
    "check" now works also when as.data.frame() is S4 generic thanks
    to Ivan Krylov.
  * The default method for the directional comparison operators &lt;, &gt;,
    &lt;=, and &gt;= now signals an error when one of the operands is a
    language object, i.e. a symbol or a call.
  * For terms.formula(), deprecate abb and neg.out arguments
    _formally_ in addition to just documenting it.
  BUG FIXES:
  * The methods package is more robust to not being attached to the
    search path.  More work needs to be done.
  * pairwise.t.test() misbehaved when subgroups had 0 DF for
    variance, even with pool.sd = TRUE.  (PR#18594 by Jack Berry).
  * Probability distribution functions [dpq]&lt;distrib&gt;(x, *), but also
    bessel[IKJY](x, .) now consistently preserve attributes(x) when
    length(x) == 0, e.g., for a 2 x 0 matrix, thanks to Karolis
    Koncevičius' report PR#18509.
  * Group "Summary" computations such as sum(1:3, 4, na.rm = 5, NA,
    7, na.rm = LL) now give an error instead of either 17 or NN for
    LL true or false, as proposed by Ivan Krylov on the R-devel
    mailing list.  (This also means it is now an error to specify
    na.rm more than once.)
  * as.complex(x) now returns complex(real = x, imaginary = 0) for
    _all_ numerical and logical x, notably also for NA or
    NA_integer_.
  * Directories are now omitted by file.copy(, recursive = FALSE) and
    in file.append() (PR#17337).
  * gsub() and sub() are now more robust to integer overflow when
    reporting errors caused by too large input strings (PR#18346).
  * Top-level handlers are now more robust to attempts to remove a
    handler whilst handlers are running (PR#18508).
  * The handling of Alt+F4 in dialogs created on Windows using
    GraphApp has been fixed (PR#13870).
  * density() more consistently computes grid values for the
    FFT-based convolution, following Robert Schlicht's analysis and
    proposal in PR#18337, correcting density values typically by a
    factor of about 0.999.  Argument old.coords = TRUE provides back
    compatibility.
  * palette.colors() gains a name argument that defaults to FALSE
    controlling whether the vector of colours that is returned has
    names (where possible).  PR#18529.
  * tools::xgettext() no longer extracts the (non-translatable) class
    names from warningCondition and errorCondition calls.
  * S3method(&lt;gen&gt;, &lt;class&gt;, &lt;func&gt;) in the NAMESPACE file now works
    (again) when &lt;func&gt; is visible from the namespace, e.g.,
    imported, or in base.
  * getParseData(f) now also works for a function defined in the
    first of several &lt;pkg&gt;/R/*.R source files, thanks to Kirill
    Müller's report and Duncan Murdoch's patch in PR#16756.
  * Rd \Sexpr macros with nested #ifdef conditionals were not
    processed.
  * A non-blocking connection with non-default encoding (such as a
    socket) now correctly returns from readLines() after new data has
    arrived also when its EOF had been reached previously.  Thanks to
    Peter Meilstrup's report on R-devel and Ivan Krylov's report and
    patch proposal in PR#18555.
  * tools::checkRdContents() failed to detect empty argument
    descriptions when they spanned multiple lines, including those
    generated by prompt().  These cases are now noted by R CMD check.
  * Plain-text help no longer outputs spurious colons in the
    arguments list (for multi-line \item labels in the Rd source).
  * kappa() and rcond() work correctly in more cases; kappa(., norm =
    "2") now warns that it computes the 1-norm with (default) exact =
    FALSE; prompted by Mikael Jagan's quite comprehensive PR#18543.
  * Rd skeletons generated by prompt() or promptData() now use a
    dummy title (so R CMD build works).  tools::checkRdContents() has
    been updated to detect such template leftovers, including from
    promptPackage().
  * When S4 method dispatch fails because no method was found, the
    error message now includes the signature argument names; thanks
    to Michael Chirico's proposal on the R-devel list.
  * withAutoprint({ .. }) now preserves srcrefs previously lost,
    thanks to Andrew Simmons' report plus fix in PR#18572.
  * transform.data.frame() no longer adjusts names; in particular,
    untransformed variables are kept as-is, including those with
    syntactically invalid names (PR#17890).
  * The keep.source option for Rd \Sexpr blocks is no longer ignored.
  * The formula methods for t.test() and wilcox.test() now catch when
    paired is passed, addressing PR#14359; use Pair(x1, x2) ~ 1 for a
    paired test.
  * The level reported in the browser prompt was often too large. It
    now shows the number of browser contexts on the stack.
  * For cbind() and rbind(), the optional deparse.level argument is
    now properly passed to methods, thanks to Mikael Jagan's PR#18579
    and comments there.
  * Some error and warning messages for large ('long vector')
    matrix(v, nr, nc) and dim(m) &lt;- d are now correct about sizes,
    using long long formatting, fixing PR#18612 (and more) reported
    by Mikael Jagan.
  * readChar(useBytes = TRUE) now terminates strings even when the
    underlying connection uses extra spaces in the input buffer.
    This fixes problems with extra garbage seen with gzip
    connections, PR#18605.
  * Named capture in PCRE regular expressions now works also with
    more than 127 named groups (PR#18588).
  * Datetime functions are now robust against long jumps when dealing
    with internal time zone changes.  This avoids confusing warnings
    about an invalid time zone, previously triggered by turning
    warnings into errors or handling them via tryCatch (PR#17966,
    PR#17780).
  * Datetime functions now restore even an empty TZ environment
    variable after internal time zone changes (PR#17724).  This makes
    results of datetime functions with this (typically unintentional)
    setting more predictable.
  * drop.terms(*) now drops response as by default, keep.response =
    FALSE, fixing PR#18564 thanks to Mikael Jagan.
  * dummy.coef(.) now also works for lm()-models with character
    categorical predictor variables rather than factor ones, fixing
    PR#18635 reported by Jinsong Zhao.
  * formals(f) &lt;- formals(f) now also works for a function w/o
    arguments and atomic _constant_ body(f).
  * Correct as.function(&lt;invalid list&gt;, .)'s error message.
  * removeSource() is yet more thorough in finding and removing
    "srcref" and the other source references from parsed R language
    chunks, fixing PR#18638 thanks to Andrew Simmons.
  * dgeom() is more accurate now, notably when its result is very
    small, fixing PR#18642 thanks to the proposal of Morten Welinder,
    also improving other instances where C level binom_raw(x, n, ..)
    has x == 0 or x== n.
  * warning() with options(warn = 1) has improved output for
    multi-line messages.
  * axis.Date() and axis.POSIXct() now respect the par("lab") setting
    for the number of pretty() intervals.
  * Comparisons for language objects (which are based on deparsing)
    are now more careful about using accurate deparsed results
    (PR#18676).
  * Plain-text help (Rd2txt) now correctly preserves blank lines
    following single-line \dontrun code.
  * &lt;POSIXlt&gt;[*] no longer sets wrong "balanced" attribute, fixing
    PR#18681 thanks to Mikael Jagan.
  * str(&lt;classed-call&gt;) now deparses the call as expected, fixing
    PR#18684, reported by Dave Slager.
  * In Rd examples, code following the closing brace of a \dontrun,
    \dontshow or \donttest tag on the same line is no longer skipped
    when R CMD check runs the examples.
  * as.data.frame(matrix(*, ncol=0)) now gets valid names() and
    colnames(); reported by Davis Vaughan on the R-devel list.
  * Internal Mathlib function stirlerr(n) is now almost fully
    (52-bit) accurate for all n &gt;= ~5.9 and more accurate also in the
    range 1 -- 5.9.  This entails small ("after 12th decimal")
    changes in density functions, e.g., dgamma() in _some_ regions of
    their support.  The fix was partly prompted by Morten Welinder's
    PR#18640.
  * Numbers like 9876543.2 are now considered non-integer by Mathlib
    internal R_nonint(), amending original fix of PR#15734.
  * Rd comment lines no longer cause broken paragraphs in the
    rendered PDF and plain-text help. In code blocks, pure comment
    lines (starting with %) no longer produce an empty line.
  * xtabs(Freq ~ .) now consistently defaults to na.action = na.pass,
    using na.rm = FALSE (added as an argument) when summing over Freq
    (PR#17770).
  * tools::testInstalledPackage() is no longer silent about failures
    from running examples or tests and its return code no longer
    ignores failures from checking vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1718366400">- CHANGES IN R 4.4.1:
  C-LEVEL FACILITIES:
  * Functions R_atof and R_strtod declared in header R_ext/Utils.h
    are now documented in 'Writing R Extensions' and so formally part
    of the API.
  * The non-API entry points Rf_setSVector, Rf_StringFalse,
    Rf_StringTrue and Rf_isBlankString have been added to those
    reported by R CMD check.
  * The new function Rf_allocLang is now available. This provides an
    alternative to the idiom of calling Rf_allocList followed by
    SET_TYPEOF.
  UTILITIES:
  * R CMD check now reports as warnings what gfortran calls 'Fortran
    2018 deleted features', all of which have long been marked as
    'obsolescent' and some of which were deleted in Fortran 2008 or
    earlier.  Fortran compilers are no longer required to support
    these.
  BUG FIXES:
  * as.numeric(), scan(), type.convert() and other places which use
    the internal C function R_strtod now require a _non-empty_ digit
    sequence in a decimal or binary exponent.  This aligns with the
    C/POSIX standard for strtod and with ?NumericConstants.
  * as.data.frame(m, make.names=NA) now works correctly for a matrix
    m with NA's in row names.
  * The error message from &lt;POSIXlt&gt;[["hour"]] and similar now
    mentions *[[, "hour"]], as wished for in PR#17409 and proposed by
    Michael Chirico.
  * qbinom() and potentially qpois(), qnbinom(), no longer sometimes
    fail accurate inversion (of pbinom(), etc), thanks to Christopher
    Chang's report and patch in PR#18711.
  * The internal help server on Windows can again serve requests sent
    in quick succession, fixing a regression in R 4.4.0.
  * debugcall(&lt;S3Generic&gt;()) now also works when a corresponding
    S4-generic version is in the methods cache (PR#18143).
  * Package tools' toTitleCase(ch0) now returns character(0) when ch0
    is of zero length; fixing PR#18724, reported by David Hugh Jones.
  * R CMD check is no longer broken (without a check result and no
    explanation in 00check.log) for a package which declares an
    invalid VignetteBuilder in DESCRIPTION but has no vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1730376000">- CHANGES IN R 4.4.2:
  C-LEVEL FACILITIES:
  * The S-compatibility macros F77_COM and F77_COMDECL defined in
    header R_ext/RS.h are deprecated and will be removed shortly.  We
    could find no record of their use.
  BUG FIXES:
  * Mathlib function lgammacor(x) no longer warns about underflow to
    zero for large x.
  * Text widths and heights were incorrectly reported by the Quartz
    device if the drawing context didn't exist yet (typically when
    drawing off-screen to a window that is yet to appear, see
    PR#18591).
  * The Quartz device could segfault in cases where paths with spaces
    are used in the new glyph drawing API.  Thanks to Tomek
    Gieorgijewski (PR#18758).
  * On macOS in R CRAN builds, it is again possible to read
    little-endian UTF-16 text with a BOM from a connection using
    encoding="UTF-16".  Users building R from source should avoid
    using the system libiconv in macOS 14.1 and later.
  * methods' internal .requirePackage() now re-enables primitive
    method dispatch when needed; thanks to Ivan Krylov for
    demystifying CRAN package check failures on the R-devel mailing
    list.</changelog>
</package>
<package pkgid="e555061c30a272655bd0ce7a5748155d49ba8492b77ba1c9db4f1f319aa1080764e6754bfc4f87b3930a0f3f1e554f0ebddd58c0f2b632d3da402d0b17bf5ff6" name="R-recommended-packages" arch="i586">
  <version epoch="0" ver="4.4.2" rel="51.0.2.2.sr20241103"/>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1620302400">- To get in sync with d:l:R:autoCRAN the Matrix package's split
  in -devel was reversed.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339200">- improved spec file according to comments of dimstar in
  https://build.opensuse.org/request/show/892685</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339201">- CHANGES IN R 4.1.0:
  FUTURE DIRECTIONS:
  * It is planned that the 4.1.x series will be the last to support
    32-bit Windows, with production of binary packages for that
    series continuing until early 2023.
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Data set esoph in package datasets now provides the correct
    numbers of controls; previously it had the numbers of cases added
    to these.  (Reported by Alexander Fowler in PR#17964.)
  NEW FEATURES:
  * www.omegahat.net is no longer one of the repositories known by
    default to setRepositories().  (Nowadays it only provides source
    packages and is often unavailable.)
  * Function package_dependencies() (in package tools) can now use
    different dependency types for direct and recursive dependencies.
  * The checking of the size of tarball in R CMD check --as-cran
    &lt;pkg&gt; may be tweaked via the new environment variable
    _R_CHECK_CRAN_INCOMING_TARBALL_THRESHOLD_, as suggested in
    PR#17777 by Jan Gorecki.
  * Using c() to combine a factor with other factors now gives a
    factor, an ordered factor when combining ordered factors with
    identical levels.
  * apply() gains a simplify argument to allow disabling of
    simplification of results.
  * The format() method for class "ftable" gets a new option justify.
    (Suggested by Thomas Soeiro.)
  * New ...names() utility.  (Proposed by Neal Fultz in PR#17705.)
  * type.convert() now warns when its as.is argument is not
    specified, as the help file always said it _should_.  In that
    case, the default is changed to TRUE in line with its change in
    read.table() (related to stringsAsFactor) in R 4.0.0.
  * When printing list arrays, classed objects are now shown _via_
    their format() value if this is a short enough character string,
    or by giving the first elements of their class vector and their
    length.
  * capabilities() gets new entry "Rprof" which is TRUE when R has
    been configured with the equivalent of --enable-R-profiling (as
    it is by default).  (Related to Michael Orlitzky's report
    PR#17836.)
  * str(xS4) now also shows extraneous attributes of an S4 object
    xS4.
  * Rudimentary support for vi-style tags in rtags() and R CMD rtags
    has been added.  (Based on a patch from Neal Fultz in PR#17214.)
  * checkRdContents() is now exported from tools; it and also
    checkDocFiles() have a new option chkInternal allowing to check
    Rd files marked with keyword "internal" as well.  The latter can
    be activated for R CMD check via environment variable
    _R_CHECK_RD_INTERNAL_TOO_.
  * New functions numToBits() and numToInts() extend the raw
    conversion utilities to (double precision) numeric.
  * Functions URLencode() and URLdecode() in package utils now work
    on vectors of URIs.  (Based on patch from Bob Rudis submitted
    with PR#17873.)
  * path.expand() can expand ~user on most Unix-alikes even when
    readline is not in use.  It tries harder to expand ~, for example
    should environment variable HOME be unset.
  * For HTML help (both dynamic and static), Rd file links to help
    pages in external packages are now treated as references to
    topics rather than file names, and fall back to a file link only
    if the topic is not found in the target package. The earlier rule
    which prioritized file names over topics can be restored by
    setting the environment variable _R_HELP_LINKS_TO_TOPICS_ to a
    false value.
  * c() now removes NULL arguments before dispatching to methods,
    thus simplifying the implementation of c() methods, _but_ for
    back compatibility keeps NULL when it is the first argument.
    (From a report and patch proposal by Lionel Henry in PR#17900.)
  * Vectorize()'s result function's environment no longer keeps
    unneeded objects.
  * Function ...elt() now propagates visibility consistently with
    ..n.  (Thanks to Lionel Henry's PR#17905.)
  * capture.output() no longer uses non-standard evaluation to
    evaluate its arguments.  This makes evaluation of functions like
    parent.frame() more consistent.  (Thanks to Lionel Henry's
    PR#17907.)
  * packBits(bits, type="double") now works as inverse of
    numToBits().  (Thanks to Bill Dunlap's proposal in PR#17914.)
  * curlGetHeaders() has two new arguments, timeout to specify the
    timeout for that call (overriding getOption("timeout")) and TLS
    to specify the minimum TLS protocol version to be used for
    https:// URIs (_inter alia_ providing a means to check for sites
    using deprecated TLS versions 1.0 and 1.1).
  * For nls(), an optional constant scaleOffset may be added to the
    denominator of the relative offset convergence test for cases
    where the fit of a model is expected to be exact, thanks to a
    proposal by John Nash.  nls(*, trace=TRUE) now also shows the
    convergence criterion.
  * Numeric differentiation _via_ numericDeriv() gets new optional
    arguments eps and central, the latter for taking central divided
    differences.  The latter can be activated for nls() via
    nls.control(nDcentral = TRUE).
  * nls() now passes the trace and control arguments to getInitial(),
    notably for all self-starting models, so these can also be fit in
    zero-noise situations via a scaleOffset.  For this reason, the
    initial function of a selfStart model must now have ... in its
    argument list.
  * bquote(splice = TRUE) can now splice expression vectors with
    attributes: this makes it possible to splice the result of
    parse(keep.source = TRUE).  (Report and patch provided by Lionel
    Henry in PR#17869.)
  * textConnection() gets an optional name argument.
  * get(), exists(), and get0() now signal an error if the first
    argument has length greater than 1.  Previously additional
    elements were silently ignored.  (Suggested by Antoine Fabri on
    R-devel.)
  * R now provides a shorthand notation for creating functions, e.g.
    \(x) x + 1 is parsed as function(x) x + 1.
  * R now provides a simple native forward pipe syntax |&gt;.  The
    simple form of the forward pipe inserts the left-hand side as the
    first argument in the right-hand side call.  The pipe
    implementation as a syntax transformation was motivated by
    suggestions from Jim Hester and Lionel Henry.
  * all.equal(f, g) for functions now by default also compares their
    environment(.)s, notably via new all.equal method for class
    function.  Comparison of nls() fits, e.g., may now need
    all.equal(m1, m2, check.environment = FALSE).
  * .libPaths() gets a new option include.site, allowing to _not_
    include the site library.  (Thanks to Dario Strbenac's suggestion
    and Gabe Becker's PR#18016.)
  * Lithuanian translations are now available.  (Thanks to Rimantas
    Zakauskas.)
  * names() now works for DOTSXP objects.  On the other hand, in
    R-lang, the R language manual, we now warn against relying on the
    structure or even existence of such dot-dot-dot objects.
  * all.equal() no longer gives an error on DOTSXP objects.
  * capabilities("cairo") now applies only to the file-based devices
    as it is now possible (if very unusual) to build R with Cairo
    support for those but not for X11().
  * There is optional support for tracing the progress of
    loadNamespace() - see its help.
  * (Not Windows.)  l10n_info() reports an additional element, the
    name of the encoding as reported by the OS (which may differ from
    the encoding part (if any) of the result from
    Sys.getlocale("LC_CTYPE").
  * New function gregexec() which generalizes regexec() to find _all_
    disjoint matches and well as all substrings corresponding to
    parenthesized subexpressions of the given regular expression.
    (Contributed by Brodie Gaslam.)
  * New function charClass() in package utils to query the
    wide-character classification functions in use (such as
    iswprint).
  * The names of quantile()'s result no longer depend on the global
    getOption("digits"), but quantile() gets a new optional argument
    digits = 7 instead.
  * grep(), sub(), regexp and variants work considerably faster for
    long factors with few levels.  (Thanks to Michael Chirico's
    PR#18063.)
  * Provide grouping of x11() graphics windows within a window
    manager such as Gnome or Unity; thanks to a patch by Ivan Krylov
    posted to R-devel.
  * The split() method for class data.frame now allows the f argument
    to be specified as a formula.
  * sprintf now warns on arguments unused by the format string.
  * New palettes "Rocket" and "Mako" for hcl.colors() (approximating
    palettes of the same name from the 'viridisLite' package).
    Contributed by Achim Zeileis.
  * The base environment and its namespace are now locked (so one can
    no longer add bindings to these or remove from these).
  * Rterm handling of multi-byte characters has been improved,
    allowing use of such characters when supported by the current
    locale.
  * Rterm now accepts ALT+ +xxxxxxxx sequences to enter Unicode
    characters as hex digits.
  * Environment variable LC_ALL on Windows now takes precedence over
    LC_CTYPE and variables for other supported categories, matching
    the POSIX behaviour.
  * duplicated() and anyDuplicated() are now optimized for integer
    and real vectors that are known to be sorted via the ALTREP
    framework. Contributed by Gabriel Becker via PR#17993.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 14
    and so packages that provide graphics devices should be
    reinstalled.
  * Graphics devices should now specify deviceVersion to indicate
    what version of the graphics engine they support.
  * Graphics devices can now specify deviceClip.  If TRUE, the
    graphics engine will never perform any clipping of output itself.
    The clipping that the graphics engine does perform (for both
    canClip = TRUE and canClip = FALSE) has been improved to avoid
    producing unnecessary artifacts in clipped output.
  * The grid package now allows gpar(fill) to be a linearGradient(),
    a radialGradient(), or a pattern().  The viewport(clip) can now
    also be a grob, which defines a clipping path, and there is a new
    viewport(mask) that can also be a grob, which defines a mask.
    These new features are only supported so far on the Cairo-based
    graphics devices and on the pdf() device.
  * (Not Windows.)  A warning is given when a Cairo-based type is
    specified for a png(), jpeg(), tiff() or bmp() device but Cairo
    is unsupported (so type = "Xlib" is tried instead).
  * grSoftVersion() now reports the versions of FreeType and
    FontConfig if they are used directly (not _via_ Pango), as is
    most commonly done on macOS.
  C-LEVEL FACILITIES:
  * The _standalone_ libRmath math library and R's C API now provide
    log1pexp() again as documented, and gain log1mexp().
  INSTALLATION on a UNIX-ALIKE:
  * configure checks for a program pkgconf if program pkg-config is
    not found.  These are now only looked for on the path (like
    almost all other programs) so if needed specify a full path to
    the command in PKG_CONFIG, for example in file config.site.
  * C99 function iswblank is required - it was last seen missing ca
    2003 so the workaround has been removed.
  * There are new configure options --with-internal-iswxxxxx,
  - -with-internal-towlower and --with-internal-wcwidth which allows
    the system functions for wide-character classification,
    case-switching and width (wcwidth and wcswidth) to be replaced by
    internal ones.  The first has long been used on macOS, AIX (and
    Windows) but this enables it to be unselected there and selected
    for other platforms (it is the new default on Solaris).  The
    second is new in this version of R and is selected by default on
    macOS and Solaris.  The third has long been the default and
    remains so as it contains customizations for East Asian
    languages.
    System versions of these functions are often minimally
    implemented (sometimes only for ASCII characters) and may not
    cover the full range of Unicode points: for example Solaris (and
    Windows) only cover the Basic Multilingual Plane.
  * Cairo installations without X11 are more likely to be detected by
    configure, when the file-based Cairo graphics devices will be
    available but not X11(type = "cairo").
  * There is a new configure option --with-static-cairo which is the
    default on macOS.  This should be used when only static cairo
    (and where relevant, Pango) libraries are available.
  * Cairo-based graphics devices on platforms without Pango but with
    FreeType/FontConfig will make use of the latter for font
    selection.
  LINK-TIME OPTIMIZATION on a UNIX-ALIKE:
  * Configuring with flag --enable-lto=R now also uses LTO when
    installing the recommended packages.
  * R CMD INSTALL and R CMD SHLIB have a new flag --use-LTO to use
    LTO when compiling code, for use with R configured with
  - -enable-lto=R.  For R configured with --enable-lto, they have
    the new flag --no-use-LTO.
    Packages can opt in or out of LTO compilation _via_ a UseLTO
    field in the DESCRIPTION file.  (As usual this can be overridden
    by the command-line flags.)
  BUILDING R on Windows:
  * for GCC &gt;= 8, FC_LEN_T is defined in config.h and hence character
    lengths are passed from C to Fortran in _inter alia_ BLAS and
    LAPACK calls.
  * There is a new text file src/gnuwin32/README.compilation, which
    outlines how C/Fortran code compilation is organized and
    documents new features:
  * R can be built with Link-Time Optimization with a suitable
    compiler - doing so with GCC 9.2 showed several
    inconsistencies which have been corrected.
  * There is support for cross-compiling the C and Fortran code
    in R and standard packages on suitable (Linux) platforms.
    This is mainly intended to allow developers to test later
    versions of compilers - for example using GCC 9.2 or 10.x has
    detected issues that GCC 8.3 in Rtools40 does not.
  * There is experimental support for cross-building R packages
    with C, C++ and/or Fortran code.
  * The R installer can now be optionally built to support a single
    architecture (only 64-bit or only 32-bit).
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++14 where
    available (which it is on all currently checked platforms): if
    not (as before) C++11 is used if available otherwise C++ is not
    supported.
    Packages which specify C++11 will still be installed using C++11.
    C++14 compilers may give deprecation warnings, most often for
    std::random_shuffle (deprecated in C++14 and removed in C++17).
    Either specify C++11 (see 'Writing R Extensions') or modernize
    the code and if needed specify C++14.  The latter has been
    supported since R 3.4.0 so the package's DESCRIPTION would need
    to include something like
    Depends: R (&gt;= 3.4)
  PACKAGE INSTALLATION on Windows:
  * R CMD INSTALL and R CMD SHLIB make use of their flag --use-LTO
    when the LTO_OPT make macro is set in file etc/${R_ARCH}/Makeconf
    or in a personal/site Makevars file.  (For details see 'Writing R
    Extensions' SS4.5.)
    This provides a valuable check on code consistency.  It does work
    with GCC 8.3 as in Rtools40, but that does not detect everything
    the CRAN checks with current GCC do.
  PACKAGE INSTALLATION on macOS:
  * The default personal library directory on builds with
  - -enable-aqua (including CRAN builds) now differs by CPU type,
    one of
    ~/Library/R/x86_64/x.y/library
    ~/Library/R/arm64/x.y/library
    This uses the CPU type R (and hence the packages) were built for,
    so when a x86_64 build of R is run under Rosetta emulation on an
    arm64 Mac, the first is used.
  UTILITIES:
  * R CMD check can now scan package functions for bogus return
    statements, which were possibly intended as return() calls (wish
    of PR#17180, patch by Sebastian Meyer). This check can be
    activated via the new environment variable
    _R_CHECK_BOGUS_RETURN_, true for --as-cran.
  * R CMD build omits tarballs and binaries of previous builds from
    the top-level package directory.  (PR#17828, patch by Sebastian
    Meyer.)
  * R CMD check now runs sanity checks on the use of LazyData, for
    example that a data directory is present and that
    LazyDataCompression is not specified without LazyData and has a
    documented value.  For packages with large LazyData databases
    without specifying LazyDataCompression, there is a reference to
    the code given in 'Writing R Extensions' SS1.1.6 to test the
    choice of compression (as in all the CRAN packages tested a
    non-default method was preferred).
  * R CMD build removes LazyData and LazyDataCompression fields from
    the DESCRIPTION file of packages without a data directory.
  ENCODING-RELATED CHANGES:
  * The parser now treats \Unnnnnnnn escapes larger than the upper
    limit for Unicode points (\U10FFFF) as an error as they cannot be
    represented by valid UTF-8.
    Where such escapes are used for outputting non-printable
    (including unassigned) characters, 6 hex digits are used (rather
    than 8 with leading zeros).  For clarity, braces are used, for
    example \U{0effff}.
  * The parser now looks for non-ASCII spaces on Solaris (as
    previously on most other OSes).
  * There are warnings (including from the parser) on the use of
    unpaired surrogate Unicode points such as \uD834.  (These cannot
    be converted to valid UTF-8.)
  * Functions nchar(), tolower(), toupper() and chartr() and those
    using regular expressions have more support for inputs with a
    marked Latin-1 encoding.
  * The character-classification functions used (by default) to
    replace the system iswxxxxx functions on Windows, macOS and AIX
    have been updated to Unicode 13.0.0.
    The character-width tables have been updated to include new
    assignments in Unicode 13.0.0.
  * The code for evaluating default (extended) regular expressions
    now uses the same character-classification functions as the rest
    of R (previously they differed on Windows, macOS and AIX).
  * There is a build-time option to replace the system's
    wide-character wctrans C function by tables shipped with R: use
    configure option --with-internal-towlower or (on Windows)
  - DUSE_RI18N_CASE in CFLAGS when building R.  This may be needed
    to allow tolower() and toupper() to work with Unicode characters
    beyond the Basic Multilingual Plane where not supported by system
    functions (e.g. on Solaris where it is the new default).
  * R is more careful when truncating UTF-8 and other multi-byte
    strings that are too long to be printed, passed to the system or
    libraries or placed into an internal buffer.  Truncation will no
    longer produce incomplete multibyte characters.
  DEPRECATED AND DEFUNCT:
  * Function plclust() from the package stats and
    package.dependencies(), pkgDepends(), getDepList(),
    installFoundDepends(), and vignetteDepends() from package tools
    are defunct.
  * Defunct functions checkNEWS() and readNEWS() from package tools
    and CRAN.packages() from utils have been removed.
  * R CMD config CXXCPP is defunct (it was deprecated in R 3.6.2).
  * parallel::detectCores() drops support for Irix (retired in 2013).
  * The LINPACK argument to chol.default(), chol2inv(),
    solve.default() and svd() has been defunct since R 3.1.0.  It was
    silently ignored up to R 4.0.3 but now gives an error.
  * Subsetting/indexing, such as ddd[*] or ddd$x on a DOTSXP
    (dot-dot-dot) object ddd has been disabled; it worked by accident
    only and was undocumented.
  BUG FIXES:
  * Many more C-level allocations (mainly by malloc and strdup) are
    checked for success with suitable alternative actions.
  * Bug fix for replayPlot(); this was turning off graphics engine
    display list recording if a recorded plot was replayed in the
    same session.  The impact of the bug became visible if resize the
    device after replay OR if attempted another savePlot() after
    replay (empty display list means empty screen on resize or empty
    saved plot).
  * R CMD check etc now warn when a package exports non-existing S4
    classes or methods, also in case of no "methods" presence.
    (Reported by Alex Bertram; reproducible example and patch by
    Sebastian Meyer in PR#16662.)
  * boxplot() now also accepts calls for labels such as ylab, the
    same as plot().  (Reported by Marius Hofert.)
  * The help page for xtabs() now correctly states that addNA is
    setting na.action = na.pass among others.  (Reported as PR#17770
    by Thomas Soeiro.)
  * The R CMD check &lt;pkg&gt; gives a longer and more comprehensible
    message when DESCRIPTION misses dependencies, e.g., in Imports:.
    (Thanks to the contributors of PR#17179.)
  * update.default() now calls the generic update() on the formula to
    work correctly for models with extended formulas.  (As reported
    and suggested by Neal Fultz in PR#17865.)
  * The horizontal position of leaves in a dendrogram is now correct
    also with center = FALSE.  (PR#14938, patch from Sebastian
    Meyer.)
  * all.equal.POSIXt() no longer warns about and subsequently ignores
    inconsistent "tzone" attributes, but describes the difference in
    its return value (PR#17277).  This check can be disabled _via_
    the new argument check.tzone = FALSE as suggested by Sebastian
    Meyer.
  * as.POSIXct() now populates the "tzone" attribute from its tz
    argument when x is a logical vector consisting entirely of NA
    values.
  * x[[2^31]] &lt;- v now works.  (Thanks to the report and patch by
    Suharto Anggono in PR#17330.)
  * In log-scale graphics, axis() ticks and label positions are now
    computed more carefully and symmetrically in their range,
    typically providing _more_ ticks, fulfilling wishes in PR#17936.
    The change really corresponds to an improved axisTicks() (package
    grDevices), potentially influencing grid and lattice, for
    example.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now correct to at
    least five digits where it was catastrophically wrong,
    previously.
  * sum(df) and similar "Summary"- and "Math"-group member functions
    now work for data frames df with logical columns, notably also of
    zero rows.  (Reported to R-devel by Martin "b706".)
  * unsplit() had trouble with tibbles due to unsound use of rep(NA,
    len)-indexing, which should use NA_integer_ (Reported to R-devel
    by Mario Annau.)
  * pnorm(x, log.p = TRUE) underflows to -Inf slightly later.
  * show(&lt;hidden S4 generic&gt;) prints better and without quotes for
    non-hidden S4 generics.
  * read.table() and relatives treated an "NA" column name as missing
    when check.names = FALSE PR#18007.
  * Parsing strings containing UTF-16 surrogate pairs such as
    "\uD834\uDD1E" works better on some (uncommon) platforms.
    sprintf("%X", utf8ToInt("\uD834\uDD1E")) should now give "1D11E"
    on all platforms.
  * identical(x,y) is no longer true for differing DOTSXP objects,
    fixing PR#18032.
  * str() now works correctly for DOTSXP and related exotics, even
    when these are doomed.
    Additionally, it no longer fails for lists with a class and
    "irregular" method definitions such that e.g. lapply(*) will
    necessarily fail, as currently for different igraph objects.
  * Too long lines in environment files (e.g. Renviron) no longer
    crash R. This limit has been increased to 100,000 bytes.
    (PR#18001.)
  * There is a further workaround for FreeType giving incorrect
    italic font faces with cairo-based graphics devices on macOS.
  * add_datalist(*, force = TRUE) (from package tools) now actually
    updates an existing data/datalist file for new content.  (Thanks
    to a report and patch by Sebastian Meyer in PR#18048.)
  * cut.Date() and cut.POSIXt() could produce an empty last interval
    for breaks = "months" or breaks = "years".  (Reported as PR#18053
    by Christopher Carbone.)
  * Detection of the encoding of 'regular' macOS locales such as
    en_US (which is UTF-8) had been broken by a macOS change:
    fortunately these are now rarely used with en_US.UTF-8 being
    preferred.
  * sub() and gsub(pattern, repl, x, *) now keep attributes of x such
    as names() also when pattern is NA (PR#18079).
  * Time differences ("difftime" objects) get a replacement and a
    rep() method to keep "units" consistent.  (Thanks to a report and
    patch by Nicolas Bennett in PR#18066.)
  * The \RdOpts macro, setting defaults for \Sexpr options in an Rd
    file, had been ineffective since R 2.12.0: it now works again.
    (Thanks to a report and patch by Sebastian Meyer in PR#18073.)
  * mclapply and pvec no longer accidentally terminate parallel
    processes started before by mcparallel or related calls in
    package parallel (PR#18078).
  * grep and other functions for evaluating (extended) regular
    expressions handle in Unicode also strings not explicitly flagged
    UTF-8, but flagged native when running in UTF-8 locale.
  * Fixed a crash in fifo implementation on Windows (PR#18031).
  * Binary mode in fifo on Windows is now properly detected from
    argument open (PR#15600, PR#18031).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1622808000">- The line %{__install} -m 755 -d %{_infodir}
  no longer works in TW or Factory.
  But without that line it works everywhere. So this instruction
  was commented out of the spec file.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1628596800">- CHANGES IN R 4.1.1:
  NEW FEATURES:
  * require(pkg, quietly = TRUE) is quieter and in particular does
    not warn if the package is not found.
  DEPRECATED AND DEFUNCT:
  * Use of ftp:// URIs should be regarded as deprecated, with
    on-going support confined to method = "libcurl" and not routinely
    tested.  (Nowadays no major browser supports them.)
  * The non-default method = "internal" is deprecated for http:// and
    ftp:// URIs for both download.file and url.
  * On Windows, method = "wininet" is deprecated for http://,
    https:// and ftp:// URIs for both download.file and url.  (A
    warning is only given for ftp://.)
    For ftp:// URIs the default method is now "libcurl" if available
    (which it is on CRAN builds).
    method = "wininet" remains the default for http:// and https://
    URIs but if libcurl is available, using method = "libcurl" is
    preferred.
  INSTALLATION:
  * make check now works also without a LaTeX installation.  (Thanks
    to Sebastian Meyer's PR#18103.)
  BUG FIXES:
  * make check-devel works again in an R build configured with
  - -without-recommended-packages.
  * qnbinom(p, size, mu) for large size/mu is correct now in a range
    of cases (PR#18095); similarly for the (size, prob)
    parametrization of the negative binomial.  Also qpois() and
    qbinom() are better and or faster for extreme cases.  The
    underlying C code has been modularized and is common to all four
    cases of discrete distributions.
  * gap.axis is now part of the axis() arguments which are passed
    from bxp(), and hence boxplot().  (Thanks to Martin Smith's
    report and suggestions in PR#18109.)
  * .First and .Last can again be set from the site profile.
  * seq.int(from, to, *) and seq.default(..) now work better in large
    range cases where from-to is infinite where the two boundaries
    are finite.
  * all.equal(x,y) now returns TRUE correctly also when several
    entries of abs(x) and abs(y) are close to .Machine$double.xmax,
    the largest finite numeric.
  * model.frame() now clears the object bit when removing the class
    attribute of a value via na.action (PR#18100).
  * charClass() now works with multi-character strings on Windows
    (PR#18104, fixed by Bill Dunlap).
  * encodeString() on Solaris now works again in Latin-1 encoding on
    characters represented differently in UTF-8.  Support for
    surrogate pairs on Solaris has been improved.
  * file.show() on Windows now works with non-ASCII path names
    representable in the current native encoding (PR#18132).
  * Embedded R on Windows can now find R home directory via the
    registry even when installed only for the current user
    (PR#18135).
  * pretty(x) with finite x now returns finite values also in the
    case where the extreme x values are close in size to the maximal
    representable number .Machine$double.xmax.
    Also, it's been tweaked for very small ranges and when a boundary
    is close (or equal) to zero; e.g., pretty(c(0,1e-317)) no longer
    has negative numbers, currently still warning about a very small
    range, and pretty(2^-(1024 - 2^-1/(c(24,10)))) is more accurate.
  * The error message for not finding vignette files when weaving has
    correct file sizes now. (Thanks to Sebastian Meyer's PR#18154.)
  * dnbinom(20, &lt;large&gt;, 1) now correctly gives 0, and similar cases
    are more accurate with underflow precaution.  (Reported by Francisco Vera Alcivar in PR#18072.)</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635163200">- repaired https://bugzilla.suse.com/show_bug.cgi?id=1191380
  (rpmacros now go to rpmmacrodir)
- minor clean-ups in spec file</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635768000">- CHANGES IN R 4.1.2:
  C-LEVEL FACILITIES:
  * The workaround in headers R.h and Rmath.h (using namespace std;)
    for the Oracle Developer Studio compiler is no longer needed now
    C++11 is required so has been removed.  A couple more usages of
    log() (which should have been std::log()) with an int argument
    are reported on Solaris.
  * The undocumented limit of 4095 bytes on messages from the
    S-compatibility macros PROBLEM and MESSAGE is now documented and
    longer messages will be silently truncated rather than
    potentially causing segfaults.
  * If the R_NO_SEGV_HANDLER environment variable is non-empty, the
    signal handler for SEGV/ILL/BUS signals (which offers recovery
    user interface) is not set. This allows more reliable debugging
    of crashes that involve the console.
  DEPRECATED AND DEFUNCT:
  * The legacy S-compatibility macros PROBLEM, MESSAGE, ERROR, WARN,
    WARNING, RECOVER, ... are deprecated and will be hidden in R
    4.2.0. R's native interface of Rf_error and Rf_warning has long
    been preferred.
  BUG FIXES:
  * .mapply(F, dots, .) no longer segfaults when dots is not a list
    and uses match.fun(F) as always documented; reported by Andrew
    Simmons in PR#18164.
  * hist(&lt;Date&gt;, ...) and hist(&lt;POSIXt&gt;, ...)  no longer pass
    arguments for rect() (such as col and density) to axis().
    (Thanks to Sebastian Meyer's PR#18171.)
  * \Sexpr{ch} now preserves Encoding(ch). (Thanks to report and
    patch by Jeroen Ooms in PR#18152.)
  * Setting the RNG to "Marsaglia-Multicarry" e.g., by RNGkind(), now
    warns in more places, thanks to Andr'e Gillibert's report and
    patch in PR#18168.
  * gray(numeric(), alpha=1/2) no longer segfaults, fixing PR#18183,
    reported by Till Krenz.
  * Fixed dnbinom(x, size=&lt;very_small&gt;, .., log=TRUE) regression,
    reported by Martin Morgan.
  * as.Date.POSIXlt(x) now keeps names(x), thanks to Davis Vaughan's
    report and patch in PR#18188.
  * model.response() now strips an "AsIs" class typically, thanks to
    Duncan Murdoch's report and other discussants in PR#18190.
  * try() is considerably faster in case of an error and long call,
    as e.g., from some do.call().  Thanks to Alexander Kaever's
    suggestion posted to R-devel.
  * qqline(y = &lt;object&gt;) such as y=I(.), now works, see also
    PR#18190.
  * Non-integer mgp par() settings are now handled correctly in
    axis() and mtext(), thanks to Mikael Jagan and Duncan Murdoch's
    report and suggestion in PR#18194.
  * formatC(x) returns length zero character() now, rather than ""
    when x is of length zero, as documented, thanks to Davis
    Vaughan's post to R-devel.
  * removeSource(fn) now retains (other) attributes(fn).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1647000000">- CHANGES IN R 4.1.3:
  NEW FEATURES:
  * The default version of Bioconductor has been changed to 3.14.
    (This is used by setRepositories and the menus in GUIs.)
  UTILITIES:
  * R CMD check --as-cran has a workaround for a bug in versions of
    file up to at least 5.41 which mis-identify DBF files last
    changed in 2022 as executables.
  C-LEVEL FACILITIES:
  * The legacy S-compatibility macros SINGLE_* in R_ext/Constants.h
    (included by R.h) are deprecated and will be removed in R 4.2.0.
  BUG FIXES:
  * Initialization of self-starting nls() models with initialization
    functions following the pre-R-4.1.0 API (without the ...
    argument) works again for now, with a deprecation warning.
  * Fixed quoting of ~autodetect~ in Java setting defaults to avoid
    inadvertent user lookup due to leading ~, reported in PR#18231 by
    Harold Gutch.
  * substr(., start, stop) &lt;- v now treats _negative_ stop values
    correctly.  Reported with a patch in PR#18228 by Brodie Gaslam.
  * Subscripting an array x without dimnames by a
    length(dim(x))-column character matrix gave "random" non-sense,
    now an error; reported in PR#18244 by Mikael Jagan.
  * ...names() now matches names(list(...)) closely, fixing PR#18247.
  * all.equal(*, scale = s) now works as intended when length(s) &gt; 1,
    partly thanks to Michael Chirico's PR#18272.
  * print(x) for long vectors x now also works for named atomic
    vectors or lists and prints the correct number when reaching the
    getOption("max.print") limit; partly thanks to a report and
    proposal by Hugh Parsonage to the R-devel list.
  * all.equal(&lt;selfStart&gt;, *) no longer signals a deprecation
    warning.
  * reformulate(*, response=r) gives a helpful error message now when
    length(r) &gt; 1, thanks to Bill Dunlap's PR#18281.
  * Modifying globalCallingHandlers inside withCallingHandlers() now
    works or fails correctly, thanks to Henrik Bengtsson's PR#18257.
  * hist(&lt;Date&gt;, breaks = "days") and hist(&lt;POSIXt&gt;, breaks = "secs")
    no longer fail for inputs of length 1.
  * qbeta(.001, .9, .009) and similar cases now converge correctly
    thanks to Ben Bolker's report in PR#17746.
  * window(x, start, end) no longer wrongly signals "'start' cannot
    be after 'end'", fixing PR#17527 and PR#18291.
  * data() now checks that its (rarely used) list argument is a
    character vector - a couple of packages passed other types and
    gave incorrect results.
  * which() now checks its arr.ind argument is TRUE rather coercing
    to logical and taking the first element - which gave incorrect
    results in package code.
  * model.weights() and model.offset() more carefully extract their
    model components, thanks to Ben Bolker and Tim Taylor's R-devel
    post.
  * list.files(recursive = TRUE) now shows all broken symlinks
    (previously, some of them may have been omitted, PR#18296).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1650628800">- CHANGES IN R 4.2.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * The formula method of aggregate() now matches the generic in
    naming its first argument x (resolving PR#18299 by Thomas
    Soeiro).
    This means that calling aggregate() with a formula as a named
    first argument requires name formula in earlier versions of R and
    name x now, so portable code should not name the argument (code
    in many packages did).
  * Calling &amp;&amp; or || with either argument of length greater than one
    now gives a warning (which it is intended will become an error).
  * Calling if() or while() with a condition of length greater than
    one gives an error rather than a warning.  Consequently,
    environment variable _R_CHECK_LENGTH_1_CONDITION_ no longer has
    any effect.
  * Windows users should consult the WINDOWS section below for some
    profound changes including
  * Support for 32-bit builds has been dropped.
  * UTF-8 locales are used where available.
  * The default locations for the R installation and personal
    library folder have been changed.
    Thanks to Tomas Kalibera for months of work on the Windows port
    for this release.
  NEW FEATURES:
  * matrix(x, n, m) now warns in more cases where length(x) differs
    from n * m, as suggested by Abby Spurdle and Wolfgang Huber in
    Feb 2021 on the R-devel mailing list.
    This warning can be turned into an error by setting environment
    variable _R_CHECK_MATRIX_DATA_ to TRUE: R CMD check --as-cran
    does so unless it is already set.
  * Function file_test() in package utils gains tests for symlinks,
    readability and writability.
  * capabilities("libxml") is now false.
    The description of capabilities("http/ftp") now reflects that it
    refers to the default method, no longer the internal one.
  * simplify2array() gains an except argument for controlling the
    exceptions used by sapply().
  * Environment variables R_LIBS_USER and R_LIBS_SITE are both now
    set to the R system default if unset or empty, and can be set to
    NULL to indicate an empty list of user or site library
    directories.
  * The warning for axis()(-like) calls in cases of relatively small
    ranges (typically in log-scale situations) is slightly improved
    _and_ suppressed from explicit calls to .axisPars() as has always
    been the intention.
  * The contrasts setter function `contrasts&lt;-` gains an explicit
    default how.many = NULL rather than just using missing(how.many).
  * grid.pretty() gains a new optional argument n = 5.
  * There is a new function .pretty() with option bounds as a
    technical-utility version of pretty().  It and pretty() gain a
    new argument f.min with a better than back-compatible default.
  * Function grDevices::axisTicks() and related functions such as
    graphics::axis() work better, notably for the log scale; partly
    because of the pretty() improvements, but also because care is
    taken e.g., when ylim is finite but diff(ylim) is infinite.
  * nclass.FD() gains a digits option.
  * The R Mathlib internal C function bd0() (called indirectly from a
    dozen probability density and distribution functions such as
    dpois(), dbinom(), dgamma(), pgamma() _etc_) has been
    complemented by a more sophisticated and (mostly) more accurate C
    function ebd0(), currently called only by internal dpois_raw()
    improving accuracy for R level dpois() and potentially others
    calling it such as dnbinom(), dgamma() or pgamma().  (Thanks to
    Morten Welinder's PR#15628.)
  * write.ftable() gains sep = " " argument as suggested by Thomas
    Soeiro.
  * The names of the locale categories supported by R's
    Sys.getlocale() and Sys.setlocale() are now provided by variable
    .LC.categories in the base namespace.
  * The Date and POSIXt methods for hist() and the histogram method
    for plot() now also use the new default col = "lightgray" in
    consistency with the corresponding change to hist()'s default for
    R 4.0.0.
  * hist.default() gains new fuzz argument, and the histogram plot
    method no longer uses fractional axis ticks when displaying
    counts ("Frequency").
  * mapply() and hence Map() now also obey the "max-or-0-if-any"
    recycling rule, such that, e.g., Map(`+`, 1:3, 1[0]) is valid
    now.
  * as.character(&lt;obj&gt;) for "hexmode" or "octmode" objects now
    fulfils the important basic rule as.character(x)[j] ===
    as.character(x[j]).
  * The set utility functions, notably intersect() have been tweaked
    to be more consistent and symmetric in their two set arguments,
    also preserving a common mode.
  * substr(ch, start,end) &lt;- new now e.g., preserves names(ch); ditto
    for substring(), thanks to a patch from Brodie Gaslam.
  * plot(&lt;lm&gt;) gains a extend.ylim.f argument, in partial response to
    PR#15285; further PR#17784 is fixed thanks to several
    contributors and a patch by Elin Waring.  The Cook's dist
    contours get customizable via cook.col and cook.lty with a
    different default color and their legend is nicer by default and
    customizable via cook.legendChanges.
  * Attempting to subset an object that is not subsettable now
    signals an error of class notSubsettableError. The
    non-subsettable object is contained in the object field of the
    error condition.
  * Subscript-out-of-bounds errors are now signaled as errors of
    class subscriptOutOfBoundsError.
  * Stack-overflow errors are now signaled as errors inheriting from
    class stackOverflowError. See ?stackOverflowError for more
    details.
  * New partly experimental Sys.setLanguage() utility, solving the
    main problem of PR#18055.
  * gettext() and gettextf() get a new option trim = TRUE which when
    set to false allows translations for strings such as "Execution
    halted\n" typical for C code.
  * An experimental implementation of hash tables is now available.
    See ?hashtab for more details.
  * identical() gains a extptr.as.ref argument for requesting that
    external pointer objects be compared as reference objects.
  * reorder() gets an argument decreasing which it passes to sort()
    for level creation; based on the wish and patch by Thomas Soeiro
    in PR#18243.
  * as.vector() gains a data.frame method which returns a simple
    named list, also clearing a long standing 'FIXME' to enable
    as.vector(&lt;data.frame&gt;, mode="list").  This breaks code relying
    on as.vector(&lt;data.frame&gt;) to return the unchanged data frame.
  * legend() is now vectorized for arguments cex, x.intersp, and
    text.width.  The latter can now also be specified as a vector
    (one element for each column of the legend) or as NA for
    computing a proper column wise maximum value of strwidth(legend).
    The argument y.intersp can be specified as a vector with one
    entry for each row of the legend.
    legend() also gains new arguments title.cex and title.font.
    Thanks to Swetlana Herbrandt.
  * Deparsing no longer remaps attribute names dim, dimnames, levels,
    names and tsp to historical S-compatible names (which structure()
    maps back).
  * sample() and sample.int() have additional sanity checks on their
    size and n arguments.
    all.equal.numeric() gains a sanity check on its tolerance
    argument - calling all.equal(a, b, c) for three numeric vectors
    is a surprisingly common error.
    mean(na.rm =), rank(na.last =), barplot(legend.text =),
    boxplot(), contour(drawlabels =), polygon(border =) and
    methods::is(class2 =) have more robust sanity checks on their
    arguments.
    R CMD Rd2pdf (used by R CMD check) has a more robust sanity check
    on the format of \alias{} commands.
  * psigamma(x, deriv) for negative x now also works for deriv = 4
    and 5; their underlying C level dpsifn() is documented in
    'Writing R Extensions'.
  * The HTML help system now uses HTML5 (wish of PR#18149).
  * ks.test() now provides exact p-values also with ties and MC
    p-values in the two-sample (Smirnov) case.  By Torsten Hothorn.
  * ks.test() gains a formula interface, with y ~ 1 for the
    one-sample (Kolmogorov) test and y ~ group for the two-sample
    (Smirnov) test.  Contributed by Torsten Hothorn.
  * The return value from ks.test() now has class c("ks.test",
    "htest") - packages using try() need to take care to use
    inherits() and not == on the class.
  * New functions psmirnov(), qsmirnov() and rsmirnov() in package
    stats implementing the asymptotic and exact distributions of the
    two-sample Smirnov statistic.
  * iconv() now allows sub = "c99" to use C99-style escapes for UTF-8
    inputs which cannot be converted to encoding to.
  * In a forward pipe |&gt; expression it is now possible to use a named
    argument with the placeholder _ in the rhs call to specify where
    the lhs is to be inserted.  The placeholder can only appear once
    on the rhs.
  * The included LAPACK sources have been updated to version 3.10.0,
    except for the four Fortran 77 routines which 3.10.0 has
    re-implemented in Fortran 90 (where the older versions have been
    retained as the R build process does not support Fortran 90).
  * path.expand() and most other uses of tilde expansion now warn if
    a path would be too long if expanded.  (An exception is
    file.exists(), which silently returns false.)
  * trunc(&lt;Date&gt;, *) now supports units = "months" or "years" for
    consistency with the POSIXt method, thanks to Dirk Eddelbuettel's
    proposal in PR#18099.
  * list2DF() now checks that its arguments are of the same length,
    rather than use recycling.
  * The HTML help system has several new features: LaTeX-like math
    can be typeset using either KaTeX or MathJax, usage and example
    code is highlighted using Prism, and for dynamic help the output
    of examples and demos can be shown within the browser if the
    knitr package is installed. These features can be disabled by
    setting the environment variable _R_HELP_ENABLE_ENHANCED_HTML_ to
    a false value.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 15
    and so packages that provide graphics devices should be
    reinstalled.
  * The grid package now allows the user to specify a "vector" of
    pattern fills.  The fill argument to gpar() accepts a list of
    gradients and/or patterns and the functions linearGradient(),
    radialGradient(), and pattern() have a new group argument.
    Points grobs (data symbols) can now also have a pattern fill.
    The grobCoords() function now returns a more informative and
    complex result.
  * The grid package has new functions for drawing isolated groups:
    grid.group(), grid.define(), and grid.use().  These functions add
    compositing operators and affine transformations to R's graphics
    capabilities.
    The grid package also has new functions for stroking and filling
    paths: grid.stroke(), grid.fill(), and grid.fillStroke().
    A new function as.path() allows the user to specify the fill rule
    for a path that is to be used for clipping, stroking, or filling;
    available options are "winding" and "evenodd".  A new function
    as.mask() allows the user to specify the type of a mask;
    available options are "alpha" and "luminance".
    These new features are only supported so far (at most) on the
    Cairo-based graphics devices and on the pdf() device.
  * dev.capabilities() reports on device support for the new
    features.
  * par() now warns about unnamed non-character arguments to prevent
    misuse such as {usr &lt;- par("usr"); par(usr)}.
  INSTALLATION:
  * Facilities for accessing ftp:// sites are no longer tested
    (except _pro tem_ for curlGetHeaders()) as modern browsers have
    removed support.
  * R can now be built with DEFS = -DSTRICT_R_HEADERS .
  PACKAGE INSTALLATION:
  * R CMD INSTALL no longer tangles vignettes. This completes an R
    CMD build change in R 3.0.0 and affects packages built before R
    3.0.2. Such packages should be re-made with R CMD build to have
    the tangled R code of vignettes shipped with the tarball.
  * USE_FC_LEN_T will become the default: this uses the correct
    prototypes for Fortran BLAS/LAPACK routines called from C/C++,
    and requires adjustment of most such calls - see 'Writing R
    Extensions' SS6.6.2.  (This has been supported since R 3.6.2.)
  * Package installation speed for packages installed with
    keep.source has been improved. This resolve the issue reported by
    Ofek Shilon in PR#18236.
  UTILITIES:
  * R CMD check can optionally report files/directories left behind
    in home, /tmp (even though TMPDIR is set) and other directories.
    See the "R Internals" manual for details.
  * R CMD check now reports byte-compilation errors during
    installation.  These are not usually fatal but may result in
    parts of the package not being byte-compiled.
  * _R_CHECK_DEPENDS_ONLY_ can be applied selectively to examples,
    tests and/or vignettes in R CMD check: see the "R Internals"
    manual.
  * _R_CHECK_SRC_MINUS_W_IMPLICIT_ now defaults to true: recent
    versions of Apple clang on macOS have made implicit function
    declarations in C into a compilation error.
  * R CMD check --as-cran makes use of the environment variable
    AUTORECONF.  See the "R Internals" manual SS8 for further details.
  * R CMD check --use-valgrind also uses valgrind when re-building
    vignettes as some non-Sweave vignettes unhelpfully comment out
    all their code when R CMD check runs vignettes.
  * Errors in re-building vignettes (unless there are LaTeX errors)
    are reported by R CMD check as ERROR rather than WARNING when
    running vignettes has been skipped (as it frequently is in CRAN
    checks and by --as-cran).
  * R CMD Rd2pdf gains a --quiet option that is used by R CMD build
    when building the PDF package manual.
  * R CMD Rd2pdf now always runs LaTeX in batch mode, consistent with
    Texinfo &gt;= 6.7. The --batch option is ignored.
  * R CMD build and R CMD check now include the Rd file name and line
    numbers in the error message of an \Sexpr evaluation failure.
  * For packages using the \doi Rd macro (now an install-time \Sexpr)
    but no other dynamic Rd content, R CMD build now produces a
    smaller tarball and is considerably faster - skipping temporary
    package installation.
  C-LEVEL FACILITIES:
  * The non-API header R_ext/R-ftp-http.h is no longer provided, as
    the entry points it covered are now all defunct.
  * A number of non-API declarations and macro definitions have been
    moved from the installed header Rinternals.h to the internal
    header Defn.h. Packages that only use entry points and
    definitions documented to be part of the API as specified in
    'Writing R Extensions' SS6 should not be affected.
  * The macro USE_RINTERNALS no longer has any effect when compiling
    package code.  Packages which also use R_NO_REMAP will need to
    ensure that the remapped names are used for calls to API
    functions that were formerly also made available as macros.
  * The deprecated legacy S-compatibility macros PROBLEM, MESSAGE,
    ERROR, WARN, WARNING, RECOVER, ... are no longer defined in
    R_exts/RS.h (included by R.h).  Replace these by calls to
    Rf_error and Rf_warning (defined in header R_ext/Error.h included
    by R.h).
    Header R_ext/RS.h no longer includes R_ext/Error.h.
  * Header R_ext/Constants.h (included by R.h) when included from C++
    now includes the C++ header cfloat rather than the C header
    float.h (now possible as C++11 is required).
  * The legacy S-compatibility macros DOUBLE_* in R_ext/Constants.h
    (included by R.h) are deprecated.
  * The deprecated S-compatibility macros SINGLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * R_Calloc, R_Free and R_Realloc are preferred to their unprefixed
    forms and error messages now use the prefix. These forms were
    introduced in R 3.4.0 and are available even when
    STRICT_R_HEADERS is defined.
  * rmultinom has been documented in 'Writing R Extensions' SS6 so is
    now part of the R API.
  * Similarly, Rtanpi, called from R level tanpi() is now part of the
    R API.
  * The long-deprecated, undocumented and non-API entry point call_R
    is no longer declared in R_ext/RS.h (included by R.h).
  * The header S.h which has been unsupported since Jan 2016 has been
    removed.  Use R.h instead.
  DEPRECATED AND DEFUNCT:
  * The (non-default and deprecated) method = "internal" for
    download.file() and url() no longer supports http:// nor ftp://
    URIs.  (It is used only for file:// URIs.)
    On Windows, download.file(method = "wininet") no longer supports
    ftp:// URIs.  (It is no longer the default method, which is
    "libcurl" and does.)
    On Windows, the deprecated method = "wininet" now gives a warning
    for http:// and https:// URIs for both download.file() and url().
    (It is no longer the default method.)
  * On Windows, the command-line option --max-mem-size and
    environment variable R_MAX_MEM_SIZE are defunct.  The memory
    allocation limit was important for 32-bit builds, but these are
    no longer supported.
  * default.stringsAsFactors() is now formally deprecated, where that
    was only mentioned on its regular help page, previously.  So it
    now gives a warning if called.
  * unix.time() is defunct now; it had been deprecated since R 3.4.0.
  BUG FIXES:
  * Setting digits = 0 in format(), print.default() (and hence
    typically print()) or options() is again invalid.  Its behaviour
    was platform-dependent, and it is unclear what "zero significant
    digits" should mean (PR#18098).
  * Messages from C code in the cairo section of package grDevices
    are now also offered for translation, thanks to Michael Chirico's
    PR#18123.
  * mean(x) with finite x now is finite also without "long.double"
    capability.
  * R CMD Rd2pdf no longer leaves an empty build directory behind
    when it aborts due to an already existing output file.  (Thanks
    to Sebastian Meyer's PR#18141.)
  * density(x, weights = w, na.rm = TRUE) when anyNA(x) is true, now
    removes weights "in parallel" to x, fixing PR#18151, reported by
    Matthias Gondan.  Additionally, it gets a subdensity option.
  * Conversion of \Sexpr[]{&lt;expR&gt;} to LaTeX or HTML no longer
    produces long blocks of empty lines when &lt;expR&gt; itself contains
    several lines all producing empty output.  Thanks to a report and
    patch by Ivan Krylov posted to R-devel.
  * R CMD build no longer fails if a package vignette uses child
    documents and inst/doc exists.  (Thanks to Sebastian Meyer's
    PR#18156.)
  * When an R documentation ('help' source) file man/foo.Rd in a
    package has \donttest{..} examples with a syntax error, it is now
    signalled as ERROR and with correct line numbers relating to the
  * -Ex.R file, thanks to Duncan Murdoch and Sebastian Meyer's
    reports and patch proposals in PR#17501.
  * Improved determination of the correct translation domain in
    non-base packages, addressing the combination of PR#18092 and
    PR#17998 (#c6) with reports and _augmented_ patch #2904 by
    Suharto Anggono.
    Note that "R-base" is no longer the default domain e.g., for
    top-level calls to gettext(); rather translation needs explicit
    domain = * specification in such cases.
  * identical(attrib.as.set=FALSE) now works correctly with data
    frames with default row names (Thanks to Charlie Gao's PR#18179).
  * txtProgressBar() now enforces a non-zero width for argument char,
    without which no progress can be visible.
  * dimnames(table(d)) is more consistent in the case where d is a
    list with a single component, thanks to Thomas Soeiro's report to
    R-devel.
    Further, table(d1, d2) now gives an error when d1 and d2 are data
    frames as suggested by Thomas in PR#18224.
  * Fix for drawing semi-transparent lines and fills on the native
    Windows graphics device (PR#18219 and PR#16694).  Thanks to Nick
    Ray for helpful diagnosis on Bugzilla.
  * The deparser now wraps sub-expressions such as if(A) ..  with
    parentheses when needed; thanks to Duncan Murdoch's PR#18232 and
    Lionel Henry's patches there.
  * remove.packages() no longer tries to uninstall Priority: base
    packages, thanks to a report and suggestions by Colin Fay in
    PR#18227.
  * win.metafile() now has xpinch and ypinch arguments so that the
    user can override Windows' (potentially wrong) guess at device
    dimensions.
  * x[i] and x[[i]] for non-integer i should now behave in all cases
    as always documented: the index used is equivalent to
    as.integer(i) unless that would overflow where trunc(i) is used
    instead; thanks to Suharto Anggono's report and patch proposals
    in PR#17977.
  * asOneSidedFormula() now associates the resulting formula with the
    global environment rather than the evaluation environment created
    for the call.
  * &lt;bibentry&gt;$name now matches the field name case-insensitively,
    consistent with bibentry() creation and the replacement method.
  * cbind() failed to detect some length mismatches with a mixture of
    time-series and non-time-series inputs.
  * The default LaTeX style file Sweave.sty used by the RweaveLatex
    driver no longer loads the obsolete ae package; thanks to a
    report by Thomas Soeiro in PR#18271.  Furthermore, it now skips
    \usepackage[T1]{fontenc} for engines other than pdfTeX (if
    detected) or if the new [nofontenc] option is used.
  * smooth.spline() now stores its logical cv argument more safely,
    fixing a rare bug when printing, and also stores n.
  * smooth.spline(x,y,*) now computes the cv.crit statistic
    correctly, also when is.unsorted(x), fixing PR#18294.
  * The data.frame method of rbind() now warns when binding
    not-wholly-recycling vectors, by analogy to the default method
    (for matrices).
  * setAs() finds the correct class for name to when multiple
    packages define a class with that name. Thanks to Gabor Csardi
    for the report.
  * Fix for detaching a package when two classes of the same name are
    present in method signatures for the same generic. Thanks to
    Gabor Csardi for the report.
  * match.arg("", c("", "a", "B")) gives a better error message, in
    part from PR#17959, thanks to Elin Waring.
  * R CMD Sweave --clean no longer removes pre-existing files or
    subdirectories (PR#18242).
  * The quartz() device no longer splits polylines into subpaths.
    That has caused narrowly-spaced lines with many points to always
    look solid even when dashed line type was used due to dash phase
    restarts.
  * Deparsing constructs such as quote(1 + `!`(2) + 3) works again as
    before R 3.5.0, thanks to the report and patch in PR#18284 by
    Suharto Anggono.
  * as.list(f) for a factor f now keeps names(f), fixing PR#18309.
  * qbeta(.001, .9, .009) and analogous qf() calls now return a
    correct value instead of NaN or wrongly 1, all with a warning;
    thanks to the report by Ludger Goeminne in PR#18302.
  * plot.lm() failed to produce the plot of residuals vs.  factor
    levels (i.e., which=5 when leverages are constant) for models
    with character predictors (PR#17840).
  * interaction.plot(..., xtick = TRUE) misplaced the x-axis line
    (PR#18305).
  * Not strictly fixing a bug, format()ing and print()ing of
    non-finite Date and POSIXt values NaN and +/-Inf no longer show
    as NA but the respective string, e.g., Inf, for consistency with
    numeric vector's behaviour, fulfilling the wish of PR#18308.
  * R CMD check no longer runs test scripts generated from
    corresponding .Rin files twice and now signals an ERROR if
    processing an .Rin script fails.
  * tools::Rd2txt() used for plain-text help pages now renders \hrefs
    (if tools::Rd2txt_options(showURLs = TRUE)) and \urls with
    percent-encoding and standards-compliant delimiting style (angle
    brackets and no URL: prefix).  \email is now rendered with a
    mailto: prefix.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1655985600">- CHANGES IN R 4.2.1:
  NEW FEATURES:
  * New function utils::findCRANmirror() to find out if a CRAN mirror
    has been selected, otherwise fallback to the main site.  This
    behaves in the same way as tools::CRAN_package_db() and is
    intended for packages wishing to access CRAN for purposes other
    than installing packages.
    The need for this was shown by a day when the main CRAN website
    was offline and a dozen or so packages which had its URL
    hardcoded failed their checks.
  INSTALLATION on a UNIX-ALIKE:
  * The libraries searched for by --with-blas (without a value) now
    include BLIS (after OpenBLAS but before ATLAS).  And on macOS,
    the Accelerate framework (after ATLAS).  (This is patterned after
    the AX_BLAS macro from the Autoconf Archive.)
  * The included LAPACK sources have been updated to 3.10.1.
  UTILITIES:
  * The (full path to) the command tidy to be used for HTML
    validation can be set by environment variable R_TIDYCMD.
  * Setting environment variable _R_CHECK_RD_VALIDATE_RD2HTML_ to a
    false value will override R CMD check --as-cran and turn off HTML
    validation.  This provides a way to circumvent a problematic
    tidy.
    The 2006 version that ships with macOS is always skipped.
  C-LEVEL FACILITIES:
  * The undocumented legacy declarations of Sint, Sfloat, SINT_MAX
    and SINT_MIN in header R.h are deprecated.
  BUG FIXES:
  * fisher.test(d) no longer segfaults for "large" d; fixing PR#18336
    by preventing/detecting an integer overflow reliably.
  * tar(., files=*) now produces correctly the warning about invalid
    uid or gid of files, fixing PR#18344, reported by Martin Morgan.
  * tk_choose.files() with multi = FALSE misbehaved on paths
    containing spaces (PR#18334) (regression introduced in R 4.0.0).
  * sort(x, partial = ind, *) now works correctly notably for the
    non-default na.last = FALSE or TRUE, fixing PR#18335 reported by
    James Edwards.
  * Environment variable _R_CHECK_XREFS_REPOSITORIES_ is only used
    for checking .Rd cross-references in R CMD check (as documented)
    and not for other uses looking for a CRAN mirror.
  * The search for a CRAN mirror when checking packages now uses
    getOption("repos") if that specifies a CRAN mirror, even when it
    does not also specify all three Bioconductor repositories (as was
    previously required).
  * The HTML code generated by tools::Rd2HTML() has been improved to
    pass tidy 5.8.0.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1667217600">- CHANGES IN R 4.2.2:
  NEW FEATURES:
  * tools::Rdiff(useDiff = TRUE) checks for the presence of an
    external diff command and switches to useDiff = FALSE if none is
    found.  This allows R CMD Rdiff to always work.
  * On Windows, environment variable R_LIBCURL_SSL_REVOKE_BEST_EFFORT
    can be used to switch to only 'best-effort' SSL certificate
    revocation checks with the default "libcurl" download method.
    This reduces security, but may be needed for downloads to work
    with MITM proxies (PR#18379).
  * (macOS) The run-time check for libraries from XQuartz for X11 and
    Tcl/Tk no longer uses otool from the Apple Developer Tools
    (PR#18400).
  * The LaTeX style for producing the PDF manuals, Rd.sty, now loads
    the standard amsmath, amsfonts and amssymb packages for greater
    coverage of math commands in the Rd \eqn and \deqn macros.  The
    \mathscr LaTeX command is also provided (via the mathrsfs
    package, if available, or the amsfonts bundle otherwise),
    fulfilling the wish of PR#18398.
  * (Windows) The default format of readClipboard() and
    writeClipboard() has been changed to 13 (CF_UNICODETEXT).
  INSTALLATION on a UNIX-ALIKE:
  * The PDF manuals (if built) can be compacted by the new target
    make compact-pdf (at the top level or in directory doc/manual).
  * There is now configure support for LLVM clang 15 on Linux, which
    defaults to position-independent (PIE) executables whereas
    gfortran does not.
  * Many small changes to ease compilation (and suppress warnings)
    with LLVM clang 15.
  BUG FIXES:
  * Rscript -e would fail if stdin were closed (Reported by Henrik
    Bengtsson.)
  * qt(*, log.p=TRUE) in outer tails no longer produces NaN in its
    final steps, thus fixing PR#18360.
  * tools::Rd2latex() now escapes hashes and ampersands when writing
    URLs, fixing LaTeX errors with such URLs in \tabular.
  * When isGeneric(f, fdef=*) is used with mismatching names, the
    warning is better understandable; reported (with fix) in PR#18370
    by Gabe Becker.
  * poly(x, n) now works again (and is now documented) when x is a
    "Date" or "POSIXct" object, or of another class while fulfilling
    mode(x) == "numeric".  This also enables poly(x, *, raw=TRUE) for
    such variables.  Reported by Michael Chirico to R-devel.
  * write.table(), write.csv() and write.csv2() restore their
    numerical precision (internal equivalent of digits = 15) after an
    interrupt (PR#18384).
  * One can now read also byte FF from a clipboard connection
    (PR#18385).
  * source("") and source(character()) now give more helpful error
    messages.
  * R CMD check --as-cran set _R_CHECK_TIMINGS_ too late to have the
    intended effect.
  * as.POSIXlt(x) now also works with very large dates x, fixing
    PR#18401 reported by Hannes M"uhleisen.
  * Files can now be extracted even from very large zip archives
    (PR#18390, thanks to Martin Jakt).
  * Non-finite objects of class "POSIXlt" are now correctly coerced
    to classes "Date" and "POSIXct"; following up on the extension to
    format() them correctly.
  * Added methods for is.finite(), is.infinite() and is.nan() for
    "POSIXlt" date-time objects.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1678881600">- CHANGES IN R 4.2.3:
  C-LEVEL FACILITIES:
  * The definition of DL_FUNC in R_ext/Rdynload.h has been changed to
    be fully C-compliant.  This means that functions loaded _via_ for
    example R_GetCCallable need to be cast to an appropriate type if
    they have any arguments.
  * .Machine has a new element sizeof.time_t to identify old systems
    with a 32-bit type and hence a limited range of date-times (and
    limited support for dates millions of years from present).
  PACKAGE INSTALLATION:
  * (Windows) The default C++ standard had accidentally been left at
    C++11 when it was changed to C++14 on Unix.
  BUG FIXES:
  * As "POSIXlt" objects may be "partially filled" and their list
    components meant to be recycled, length() now is the length of
    the longest component.
  * as.POSIXlt.Date() could underflow for dates in the far past (more
    than half a million years BCE).
  * as.Date.POSIXlt(x) would return "1970-01-01" instead of NA in R
    4.2.2, e.g., for
    x &lt;- as.POSIXlt(c("2019-01-30","2001-1-1"))
    x$mon &lt;- c(0L, NA); as.Date(x)
  * R CMD check failed to apply enabled _R_CHECK_SUGGESTS_ONLY_ to
    examples and vignettes (regression in R 4.2.0).
  * R CMD check did not re-build vignettes in separate processes by
    default (regression in R 4.2.0).
  * Running examples from HTML documentation now restores previous
    knitr settings and options (PR#18420).
  * Quartz: fonts are now located using Core Graphics API instead of
    deprecated ATS which is no longer supported in the macOS 13 SDK
    (PR#18426).  This also addresses an issue where the currently
    used font in the Quartz device context was not correctly
    retained.
  * (Windows) Math symbols in text drawing functions are again
    rendered correctly (PR#18440).  This fixes a regression in R
    4.2.1 caused by a fix in PR#18382 which uncovered an issue in
    GraphApp due to which the symbol charset was not used with TT
    Symbol font face.
  * (Windows) Installing a package with a src/Makefile.{win,ucrt}
    file includes ~/.R/Makevars.win64 in the search for user
    makevars, as documented in "R Installation and Administration"
    and done for packages with a src/Makevars.{win,ucrt} file.
  * format(&lt;POSIXlt_w/_unbalanced_sec&gt;, "....%OS&lt;n&gt;") with n &gt; 0 no
    longer accidentally uses the unbalanced seconds, thanks to
    Suharto Anggono's report (including patch) in PR#18448.
  * solve.default(a, b) works around issues with some versions of
    LAPACK when a contains NA or NaN values.
  * When UseMethod() cannot dispatch, it no longer segfaults
    producing the error message in case of a long class(), thanks to
    Joris Vankerschaver's report (including patch) in PR#18447.
  * When example(foo, ..) produces graphics on an interactive device
    it needs to open itself, it now leaves devAskNewPage() unchanged
    even when it was FALSE, thus fixing a 14 years old '&lt;FIXME&gt;'.
  * packageDescription() again catches errors from encoding
    conversions. This also fixes broken packageVersion() in C locale
    on systems where iconv does not support transliteration.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1681128000">- add patch to build with libcurl &gt;= 8</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1682078400">- CHANGES IN R 4.3.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Calling &amp;&amp; or || with LHS or (if evaluated) RHS of length greater
    than one is now always an error, with a report of the form
    'length = 4' in coercion to 'logical(1)'
    Environment variable _R_CHECK_LENGTH_1_LOGIC2_ no longer has any
    effect.
  NEW FEATURES:
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.10.1.  (This caused some platform-dependent
    changes to package check output.)  And then to the sources from
    LAPACK version 3.11.0 (with changes only to double complex
    subroutines).
  * The included LAPACK sources have been updated to include the four
    Fortran 90 routines rather than their Fortran 77 predecessors.
    This may give some different signs in SVDs or
    eigendecompositions..  (This completes the transition to LAPACK
    3.10.x begun in R 4.2.0.)
  * The LAPACK sources have been updated to version 3.11.0.  (No new
    subroutines have been added, so this almost entirely bug fixes:
    Those fixes do affect some computations with NaNs, including R's
    NA.)
  * The parser now signals _classed_ errors, notably in case of the
    pipe operator |&gt;.  The error object and message now give line and
    column numbers, mostly as proposed and provided by Duncan Murdoch
    in PR#18328.
  * toeplitz() is now generalized for asymmetric cases, with a
    toeplitz2() variant.
  * xy.coords() and xyz.coords() and consequently, e.g., plot(x,y,
    log = "y") now signal a _classed_ warning about negative values
    of y (where log(.) is NA).  Such a warning can be specifically
    suppressed or caught otherwise.
  * Regular expression functions now check more thoroughly whether
    their inputs are valid strings (in their encoding, e.g. in
    UTF-8).
  * The performance of grep(), sub(), gsub() and strsplit() has been
    improved, particularly with perl = TRUE and fixed = TRUE.  Use of
    useBytes = TRUE for performance reasons should no longer be
    needed and is discouraged: it may lead to incorrect results.
  * apropos() gains an argument dot_internals which is used by the
    completion (help(rcompgen)) engine to also see base internals
    such as .POSIXct().
  * Support in tools::Rdiff() for comparing uncompressed PDF files is
    further reduced - see its help page.
  * qqplot(x, y, ...) gains conf.level and conf.args arguments for
    computing and plotting a confidence band for the treatment
    function transforming the distribution of x into the distribution
    of y (Switzer, 1976, _Biometrika_). Contributed by Torsten
    Hothorn.
  * Performance of package_dependencies() has been improved for cases
    when the number of dependencies is large.
  * Strings newly created by gsub(), sub() and strsplit(), when any
    of the inputs is marked as "bytes", are also marked as "bytes".
    This reduces the risk of creating invalid strings and accidental
    substitution of bytes deemed invalid.
  * Support for readLines(encoding = "bytes") has been added to allow
    processing special text files byte-by-byte, without creating
    invalid strings.
  * iconv(from = "") now takes into account any declared encoding of
    the input elements and uses it in preference to the native
    encoding.  This reduces the risk of accidental creation of
    invalid strings, particularly when different elements of the
    input have different encoding (including "bytes").
  * Package repositories in getOption("repos") are now initialized
    from the repositories file when utils is loaded (if not already
    set, e.g., in .Rprofile).  (From a report and patch proposal by
    Gabriel Becker in PR#18405.)
  * compactPDF() gets a verbose option.
  * type.convert() and hence read.table() get new option tryLogical =
    TRUE with back compatible default.  When set to false, converts
    "F" or "T" columns to character.
  * Added new unit prefixes "R" and "Q" for abbreviating
    (unrealistically large) sizes beyond 10^{27} in standard = "SI",
    thanks to Henrik Bengtsson's PR#18435.
  * as.data.frame()'s default method now also works fine with atomic
    objects inheriting from classes such as "roman", "octmode" and
    "hexmode", such fulfilling the wish of PR#18421, by Benjamin
    Feakins.
  * The as.data.frame.vector() utility now errors for wrong-length
    row.names.  It warned for almost six years, with "Will be an
    error!".
  * sessionInfo() now also contains La_version() and reports codepage
    and timezone when relevant, in both print() and toLatex() methods
    which also get new option tzone for displaying timezone
    information when locale = FALSE.
  * New function R_compiled_by() reports the C and Fortran compilers
    used to build R, if known.
  * predict(&lt;lm&gt;, newdata = *) no longer unnecessarily creates an
    offset of all 0s.
  * solve() for complex inputs now uses argument tol and by default
    checks for 'computational singularity' (as it long has done for
    numeric inputs).
  * predict(&lt;rank-deficient lm&gt;, newdata=*) now obeys a new argument
    rankdeficient, with new default "warnif", warning only if there
    are non-estimable cases in newdata.  Other options include
    rankdeficient = "NA", predicting NA for non-estimable newdata
    cases.  This addresses PR#15072 by Russ Lenth and is based on his
    original proposal and discussions in PR#16158 also by David Firth
    and Elin Waring.  Still somewhat experimental.
  * Rgui console implementation now works better with the NVDA screen
    reader when the full blinking cursor is selected.  The underlying
    improvements in cursor handling may help also other screen
    readers on Windows.
  * The drop-field control in GraphApp can now be left with the TAB
    key and all controls can be navigated in the reverse order using
    the Shift+TAB key, improving accessibility of the Rgui
    configuration editor.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now fully accurate
    (instead of to "only" minimally five digits).
  * demo(error.catching) now also shows off withWarnings() and
    tryCatchWEMs().
  * As an experimental feature the placeholder _ can now also be used
    in the rhs of a forward pipe |&gt; expression as the first argument
    in an extraction call, such as _$coef. More generally, it can be
    used as the head of a chain of extractions, such as _$coef[[2]].
  * Spaces in the environment variable used to choose the R session's
    temporary directory (TMPDIR, TMP and TEMP are tried in turn) are
    now fatal.  (On Windows the 'short path' version of the path is
    tried and used if that does not contain a space.)
  * all.equal.numeric() gets a new optional switch giveErr to return
    the numeric error as attribute.  Relatedly,
    stopifnot(all.equal&lt;some&gt;(a, b, ..)) is as "smart" now, as
    stopifnot(all.equal(....)) has been already, thus allowing
    customized all.equal&lt;Some&gt;() wrappers.
  * R on Windows is now able to work with path names longer than 260
    characters when these are enabled in the system (requires at
    least Windows 10 version 1607).  Packages should be updated to
    work with long paths as well, instead of assuming PATH_MAX to be
    the maximum length.  Custom front-ends and applications embedding
    R need to update their manifests if they wish to allow this
    feature.  See
    &lt;https://blog.r-project.org/2023/03/07/path-length-limit-on-windows&gt;
    for more information.
  * 'Object not found' and 'Missing argument' errors now give a more
    accurate error context. Patch provided by Lionel Henry in
    PR#18241.
  * The @ operator is now an S3 generic. Based on contributions by
    Tomasz Kalinowski in PR#18482.
  * New generic chooseOpsMethod() provides a mechanism for objects to
    resolve cases where two suitable methods are found for an Ops
    Group Generic. This supports experimenting with alternative
    object systems. Based on contributions by Tomasz Kalinowski in
    PR#18484.
  * inherits(x, what) now accepts values other than a simple
    character vector for argument what. A new generic, nameOfClass(),
    is called to resolve the class name from what. This supports
    experimenting with alternative object systems. Based on
    contributions by Tomasz Kalinowski in PR#18485.
  * Detection of BLAS/LAPACK in use (sessionInfo()) with FlexiBLAS
    now reports the current backend.
  * The "data.frame" method for subset() now warns about extraneous
    arguments, typically catching the use of = instead of == in the
    subset expression.
  * Calling a:b when numeric a or b is longer than one may now be
    made into an error by setting environment variable
    _R_CHECK_LENGTH_COLON_ to a true value, along the proposal in
    PR#18419 by Henrik Bengtsson.
  * density(x, weights = *) now warns if automatic bandwidth
    selection happens without using weights; new optional warnWbw may
    suppress the warning.  Prompted by Christoph Dalitz' PR#18490 and
    its discussants.
  * rm(list = *) is faster and more readable thanks to Kevin Ushey's
    PR#18492.
  * The plot.lm() function no longer produces a normal Q-Q plot for
    GLMs. Instead it plots a half-normal Q-Q plot of the absolute
    value of the standardized deviance residuals.
  * The print() method for class "summary.glm" no longer shows
    summary statistics for the deviance residuals by default.  Its
    optional argument show.residuals can be used to show them if
    required.
  * The tapply() function now accepts a data frame as its X argument,
    and allows INDEX to be a formula in that case. by.data.frame()
    similarly allows INDICES to be a formula.
  * The performance of df[j] &lt;- value (including for missing j) and
    write.table(df) has been improved for data frames df with a large
    number of columns.  (Thanks to Gabriel Becker's PR#18500,
    PR#18503 and discussants, prompted by a report from Toby Dylan
    Hocking on the R-devel mailing list.)
  * The matrix multiply operator %*% is now an S3 generic, belonging
    to new group generic matrixOps.  From Tomasz Kalinowski's
    contribution in PR#18483.
  * New function array2DF() to convert arrays to data frames,
    particularly useful for the list arrays created by tapply().
  DATES and TIMES:
  * On platforms where (non-UTC) datetimes before 1902 (or before
    1900 as with system functions on recent macOS) are guessed by
    extrapolating time zones from 1902-2037, there is a warning at
    the first use of extrapolation in a session.  (As all time zones
    post 2037 are extrapolation, we do not warn on those.)
  * (Platforms using --with-internal-tzone, including Windows and by
    default macOS). How years are printed in dates or date-times can
    be controlled by environment variable R_PAD_YEARS_BY_ZERO.  The
    default remains to pad to 4 digits by zeroes, but setting value
    no gives no padding (as used by default by glibc).
  * strftime() tries harder to determine the offset for the "%z"
    format, and succeeds on the mainstream R platforms.
  * strftime() has a limit of 2048 bytes on the string produced -
    attempting to exceed this is an error.  (Previously it silently
    truncated at 255 bytes.)
  * sessionInfo() records (and by default prints) the system time
    zone as part of the locale information.  Also, the source
    (system/internal) of the date-time conversion and printing
    functions.
  * Objects of class "POSIXlt" created in this version of R always
    have 11 components: component zone is always set, and component
    gmtoff is set for times in UTC and usually set on the (almost
    all) platforms which have C-level support, otherwise is NA.
  * There are comprehensive validity checks on the structure of
    objects of class "POSIXlt" when converting (including formatting
    and printing).  (This avoids mis-conversions of hand-crafted
    objects.)
  * There is some support for using the native date-time routines on
    macOS: this is only viable on recent versions (e.g. 12.6 and 13)
    and does get wrong some historical changes (before 1900, during
    WWII).  Use of --with-internal-tzone remains the default.
  * as.POSIXct(&lt;numeric&gt;) and as.POSIXlt(.) (without specifying
    origin) now work.  So does as.Date(&lt;numeric&gt;).
  * as.Date.POSIXct(., tz) now treats several tz values, notably
    "GMT" as equivalent to "UTC", proposed and improved by Michael
    Chirico and Joshua Ulrich in PR#17674.
  * Experimental balancePOSIXlt() utility allows using "ragged" and
    or out-of-range "POSIXlt" objects more correctly, e.g., in
    subsetting and subassignments.  Such objects are now documented.
    More experimentally, a "POSIXlt" object may have an attribute
    "balanced" indicating if it is known to be filled or fully
    balanced.
  * Functions axis.Date() and axis.POSIXct() are rewritten to gain
    better default tick locations and better default formats by using
    prettyDate(). Thanks to Swetlana Herbrandt.
  * The mapping of Windows' names for time zones to IANA's 'Olson'
    names has been updated.  When ICU is available (it is by
    default), it is used to get a mapping for the current region set
    in Windows.  This can be overridden by setting environment
    variable TZ to the desired Olson name - see OlsonNames() for
    those currently available.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 16
    and so packages that provide graphics devices should be
    reinstalled.
  * The grDevices and grid packages have new functions for rendering
    typeset glyphs, primarily: grDevices::glyphInfo() and
    grid::grid.glyph().
    Rendering of typeset glyphs is only supported so far on the
    Cairo-based graphics devices and on the pdf() and quartz()
    devices.
  * The defined behaviour for "clear" and "source" compositing
    operators (via grid::grid.group()) has been changed (to align
    better with simple interpretation of original Porter-Duff
    definitions).
  * Support for gradients, patterns, clipping paths, masks, groups,
    compositing operators, and affine transformations has been added
    to the quartz() device.
  INSTALLATION on a UNIX-ALIKE:
  * A system installation of generic LAPACK 3.10.0 or later will be
    preferred to the version in the R sources.
    configure option --with-lapack=no (equivalently --without-lapack)
    forces compilation of the internal LAPACK sources.
    If --with-lapack is not specified, a system liblapack is looked
    for and used if it reports version 3.10.0 or later and does not
    contain BLAS routines.
    Packages using LAPACK will need to be reinstalled if this changes
    to using an external library.
  * On aarch64 Linux platforms using GCC, configure now defaults to
  - fPIC (instead of -fpic), as desired in PR#18326.
  * configure now checks conversion of datetimes between POSIXlt and
    POSIXct around year 2020.  Failure (which has been seen on
    platforms missing tzdata) is fatal.
  * If configure option --with-valgrind-instrumentation is given
    value 1 or 2, option --with-system-valgrind-headers is now the
    default and ignored (with a warning).  It is highly recommended
    that the system headers are installed alongside valgrind: they
    are part of its packaging on some Linux distributions and
    packaged separately (e.g. in the valgrind-devel RPM) on others.
    configure will give a warning if they are not found.
    The system headers will be required in a future release of R to
    build with valgrind instrumentation.
  * libcurl 8.x is now accepted by configure: despite a change in
    major version number it changes neither API nor ABI.
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools43, an update of the Rtools42 toolchain.  It is
    based on gcc 12 and newer versions of MinGW-W64, binutils and
    libraries.  At this time R-devel can still be built using
    Rtools42 without changes, but when R-devel is installed via the
    installer, it will by default look for Rtools43.
  * Old make targets rsync-extsoft and 32-bit ones that are no longer
    needed have been removed.
  * Default builds (including for packages) no longer select C99.
    Thus the C standard used is the default for the compiler, which
    for the toolchain in Rtools43 is C17.  (This is consistent with
    Unix builds.)
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++17 where
    available (which it is on all currently checked platforms): if
    not C++14 or C++11 is used if available otherwise C++ is not
    supported.
  * USE_FC_LEN_T is the default: this uses the correct
    (compiler-dependent) prototypes for Fortran BLAS/LAPACK routines
    called from C/C++, and requires adjustment of many such calls -
    see 'Writing R Extensions' SS6.6.1.
  * There is initial support for C++23 as several compilers are now
    supporting -std=c++23 or -std=c++2b or similar.  As for C++20,
    there no additional configure checks for C++23 features beyond a
    check that the compiler reports a __cplusplus value greater than
    that in the C++20 standard.  C++ feature tests should be used.
  * There is support for a package to indicate the version of the C
    standard which should be used to compile it, and for the
    installing user to specify this.  In most cases R defaults to the
    C compiler's default standard which is C17 (a `bug-fix' of C11) -
    earlier versions of R or compilers may have defaulted to C99.
    Current options are:
    USE_C17 Use a standard that is at most C17.  The intention is to
    allow legacy packages to still be installed when later C
    standards become the default, including packages using new
    keywords as identifiers or with K&amp;R-style function
    declarations.  This will use C17 if available, falling back
    to C11.
    USE_C90 Use the C90 (aka C89) standard.  (As that standard did
    not require compilers to identify that version, all we can
    verify is that the compiler does not claim to be using a
    later standard.  It may accept C99 features - for example
    clang accepts // to make comments.)
    USE_C99 Use the C99 standard. This should be rarely needed - it
    avoids the few new features of C11/C17 which can be useful if
    a package assumes them if C17 is specified and they are not
    implemented.
    USE_C23 Use C23 (or in future, later).  Compiler/library support
    for C23 is still being implemented, but LLVM clang from
    15.0.0 and the upcoming GCC 13 have quite extensive support.
    These can be specified as part of the SystemRequirements field in
    the package's DESCRIPTION file or _via_ options --use-C17 and so
    on of R CMD INSTALL and R CMD SHLIB.
    For further details see "Writing R Extensions" SS1.2.5.
  * (Windows) A src/Makefile.ucrt or src/Makefile.win file is now
    included after R_HOME/etcR_ARCH/Makeconf and so no longer needs
    to include that file itself.  Installation of a package with such
    a file now uses a site Makevars file in the same way as a package
    with a src/Makevars.win file would.
  * configure is now passed crucial variables such as CC and CFLAGS
    in its environment, as many packages were not setting them (as
    documented in 'Writing R Extensions' SS1.2).
    This has most effect where configure is used to compile parts of
    the package - most often by cmake or libtool which obfuscate the
    actual compile commands used.
    Also used for configure.win and configure.ucrt on Windows.
  FORTRAN FLAGS:
  * The flag -fno-optimize-sibling-calls is no longer forced for
    gfortran 7 and later.  It should no longer be needed now using
    'hidden' character-length arguments when calling BLAS/LAPACK
    routines from C/C++ is the default even for packages.  (Unless
    perhaps packages call Fortran code from C/C++ without using R's
    headers and without allowing for these arguments.)
  C-LEVEL FACILITIES:
  * The deprecated S-compatibility macros DOUBLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * The deprecated legacy typedefs of Sint and Sfloat in header R.h
    are no longer defined, and that header no longer includes header
    limits.h from C nor climits from C++.
  * New macro CAD5R() is provided in Rinternals.h and used in a few
    places in the R sources.
  * ALTREP now supports VECSXP vectors. Contributed by Gabor Csardi
    in PR#17620.
  * The Rcomplex definition (in header R_ext/Complex.h) has been
    extended to prevent possible mis-compilation when interfacing
    with Fortran (PR#18430).  The new definition causes compiler
    warnings with static initializers such as {1, 2}, which can be
    changed to {.r=1, .i=2}.
    Using the new definition from C++ depends on compiler extensions
    supporting C features that have not been incorporated into the
    C++ standards but are available in g++ and clang++: this may
    result in C++ compiler warnings but these have been worked around
    for recent versions of common compilers (GCC, Apple/LLVM clang,
    Intel).
    It is intended to change the inclusion of header R_ext/Complex.h
    by other R headers, so C/C++ code files which make use of
    Rcomplex should include that header explicitly.
  UTILITIES:
  * R CMD check does more checking of package .Rd files, warning
    about invalid email addresses and (some) invalid URIs and noting
    empty \item labels in description lists.
  * R CMD check now also reports problems when reading package news
    in md (file NEWS.md) and (optionally) plain text (file NEWS)
    formats.
  * _R_CHECK_TIMINGS_ defaults to a value from the environment even
    for R CMD check --as-cran; this allows for exceptionally fast or
    slow platforms.
    It now applies to checking PDF and HTML versions of the manuals,
    and 'checking CRAN incoming feasibility'.
  * R CMD check can optionally (but included in --as-cran) check
    whether HTML math rendering _via_ KaTeX works for the package .Rd
    files.
  * Non-interactive debugger invocations can be trapped by setting
    the environment variable _R_CHECK_BROWSER_NONINTERACTIVE_ to a
    true value.  This is enabled by R CMD check --as-cran to detect
    the use of leftover browser() statements in the package.
  * The use of sprintf and vsprintf from C/C++ has been deprecated in
    macOS 13 and is a known security risk.  R CMD check now reports
    (on all platforms) if their use is found in compiled code:
    replace by snprintf or vsnprintf respectively. [*NB:* whether
    such calls get compiled into the package is platform-dependent.]
  * Where recorded at installation, R CMD check reports the C and
    Fortran compilers used to build R.
    It reports the OS in use (if known, as given by osVersion) as
    well as that R was built for.
    It notes if a C++ standard was specified which is older than the
    current default: many packages have used C++11 to mean 'not
    C++98' - as C++11 is the minimum supported since R 4.0.0, that
    specification can probably be removed.
  * R CMD INSTALL reports the compilers (and on macOS, the SDK) used,
    and this is copied to the output of R CMD check.
    Where a C++ standard is specified, it is reported.
  * R CMD check's 'checking compilation flags in Makevars' has been
    relaxed to accept the use of flags such as -std=f2008 in
    PKG_FFLAGS.
  * tools::buildVignettes() has a new argument skip, which is used by
    R CMD check to skip (and note) vignettes with unavailable
    \VignetteDepends (PR#18318).
  * New generic .AtNames() added to enable class-specific completions
    after @. The formerly internal function findMatches() is now
    exported, mainly for use in methods for .DollarNames() and
    .AtNames().
  DEPRECATED AND DEFUNCT:
  * default.stringsAsFactors() is defunct.
  * Calling as.data.frame.&lt;class&gt;() directly (for 12 atomic classes)
    is going to be formally deprecated, currently activated by
    setting the environment variable
    _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ to non-empty, which also
    happens in R CMD check --as-cran.
  BUG FIXES:
  * Hashed environments with sizes less than 5 can now grow.
    (Reported to R-devel by Duncan Garmonsway.)
  * as.character(&lt;Rd&gt;, deparse = TRUE) failed to re-escape curly
    braces in LaTeX-like text.  (Reported by Hadley Wickham in
    PR#18324.)
  * library() now passes its lib.loc argument when requiring Depends
    packages; reported (with fix) in PR#18331 by Mikael Jagan.
  * R CMD Stangle: improved message about 'Output' files.
  * head(x, n) and tail(x, n) now signal an error if n is not
    numeric, instead of incidentally "working" sometimes returning
    all of x.  Reported and discussed by Colin Fay, in PR#18357.
  * The "lm" method for summary() now gives the correct F-statistic
    when the model contains an offset.  Reported in PR#18008.
  * C() and `contrasts&lt;-`() now preserve factor level names when
    given a function object (as opposed a function name which did
    preserve names). Reported in PR#17616.
  * c(a = 1, 2)[[]] no longer matches 2 but rather signals a
    _classed_ error.  Reported and analysed by Davis Vaughan in
    PR#18367, a duplicate of PR#18004, by Jan Meis et al.  For
    consistency, NULL[[]] is also erroneous now.  x[[]] &lt;- v gives an
    error of the same class "MissingSubscriptError".
  * The relist() function of utils now supports NULL elements in the
    skeleton (PR#15854).
  * ordered(levels = *) (missing x) now works analogously to factor(,
    ordered=TRUE); reported (with fix) by Achim Zeileis in PR#18389.
  * User-defined Rd macro definitions can now span multiple lines,
    thanks to a patch from Duncan Murdoch. Previously, the Rd parser
    silently ignored everything after the first line.
  * Plain-text help (tools::Rd2txt()) now preserves an initial blank
    line for text following description list items.
  * tools::Rd2HTML() and tools::Rd2latex() no longer split \arguments
    and \value lists at Rd comments.
  * tools::Rd2latex() now correctly handles optional text outside
    \items of argument lists as well as bracketed text at the
    beginning of sections, e.g., \value{[NULL]}.
  * as.character(&lt;POSIXt&gt;) now behaves more in line with the methods
    for atomic vectors such as numbers, and is no longer influenced
    by options().  Ditto for as.character(&lt;Date&gt;).  The
    as.character() method gets arguments digits and OutDec with
    defaults _not_ depending on options().  Use of as.character(*,
    format = .) now warns.
  * Similarly, the as.character.hexmode() and *.octmode() methods
    also behave as good citizen methods and back compatibility option
    keepStr = TRUE.
  * The as.POSIXlt(&lt;POSIXlt&gt;) and as.POSIXct(&lt;POSIXct&gt;) default
    methods now do obey their tz argument, also in this case.
  * as.POSIXlt(&lt;Date&gt;) now does apply a tz (time zone) argument, as
    does as.POSIXct(); partly suggested by Roland Fuss on the R-devel
    mailing list.
  * as.Date.POSIXlt(x) now also works when the list components are of
    unequal length, aka "partially filled" or "ragged".
  * expand.model.frame() looked up variables in the wrong environment
    when applied to models fitted without data.  Reported in
    PR#18414.
  * time() now (also) uses the ts.eps = getOption("ts.eps") argument
    and thus by default rounds values very close to the start (or
    end) of a year.  Based on a proposal by Andre"i V. Kostyrka on
    R-help.
  * Printing of a factanal() result with just one factor and sort =
    TRUE now works regularly, fixing PR#17863 by Timothy Bates,
    thanks to the 'R Contributors' working group.
  * Printing 0-length objects of class "factor", "roman", "hexmode",
    "octmode", "person", "bibentry", or "citation" now prints
    something better, one of which fixes PR#18422, reported by
    Benjamin Feakins.
  * Sys.timezone() queries timedatectl only if systemd is loaded;
    addressing a report by Jan Gorecki in PR#17421.
  * The formula method of cor.test() had scoping problems when
    environment(formula) was not the calling environment; reported
    with a patch proposal by Mao Kobayashi in PR#18439.
  * attach() of an environment with active bindings now preserves the
    active bindings.  Reported by Kevin Ushey in PR#18425.
  * BLAS detection now works also with system-provided libraries not
    available as regular files.  This fixes detection of the
    Accelerate framework on macOS since Big Sur.  Reported by David
    Novgorodsky.
  * download.file() gives a helpful error message in case of an
    invalid download.file.method option, thanks to Colin Fay's report
    in PR#18455.
  * Sporadic crashes of Rterm when using completion have been fixed.
  * Rprof() is now more reliable.  A livelock in thread
    initialization with too short sampling interval has been fixed on
    macOS.  A deadlock in using the C runtime has been fixed on
    Windows.  A potential deadlock has been prevented on Unix.
  * Cursor placement in Rgui now works even after a fixed-width font
    is selected.
  * Mandatory options (options()) are now set on startup so that
    saving and restoring them always works (PR#18372).
  * Package installation, R CMD INSTALL or install.packages(*), now
    parses each of the &lt;pkg&gt;/R/*.R files individually instead of
    first concatenating and then parse()ing the large resulting file.
    This allows parser or syntax errors to be diagnosed with correct
    file names and line numbers, thanks to Simon Dedman's report and
    Bill Dunlap's patch in PR#17859.
    This _does_ require syntactically self contained R source files
    now, fixing another inadvertent bug.
  * predict.lm(&lt;model with offset&gt;) now finds the offset in the
    correct environment, thanks to Andr'e Gillibert's report and patch
    in PR#18456.
  * getInitial(&lt;formula&gt;) now finds the selfStart model in the
    correct environment.  (Reported by Ivan Krylov in PR#18368.)
  * Fix for possible segfault when using recently-added graphics
    features, such as gradients, clipping paths, masks, and groups
    with pdf(file=NULL).
  * class(m) &lt;- class(m) no longer changes a matrix m by adding a
    class _attribute_.
  * packageDate(pkg) now only warns once if there is no pkg.
  * When ts() creates a multivariate time series, "mts", it also
    inherits from "array" now, and is.mts() is documented _and_
    stricter.
  * Rd2txt() now preserves line breaks of \verb Rd content and from
    duplicated \cr.  The former also fixes the rendering of verbatim
    output from Rd \Sexpr in plain-text help.
  * uniroot(f, interval) should no longer wrongly converge _outside_
    the interval in some cases where abs(f(x)) == Inf for an x at the
    interval boundary, thanks to posts by Ben Bolker and Serguei
    Sokol on R-devel.
  * Vectorized alpha handling in palette functions such as in gray(),
    rainbow(), or hcl.colors() works correctly now, thanks to Achim
    Zeileis' report and patch in PR#18476.
  * Formatting and print()ing of bibentry objects has dropped the
    deprecated citation.bibtex.max argument, such that the bibtex
    argument's default for print.bibentry() depends directly on the
    citation.bibtex.max option, whereas in format.bibentry() the
    option no longer applies.
  * Attempting to use a character string naming a foreign function
    entry point in a foreign function call in a package will now
    signal an error if the packages has called R_forceSymbols to
    specify that symbols must be used.
  * An error in table() could permanently set options(warn=2)
    promoting all subsequent warnings to errors.
  * The sigma() function gave misleading results for binary GLMs.  A
    new method for objects of class "glm" returns the square root of
    the estimate of the dispersion parameter using the same
    calculation as summary.glm().
  * bs() and ns() in the (typical) case of automatic knot
    construction, when some of the supposedly inner knots coincide
    with boundary knots, now moves them inside (with a warning),
    building on PR#18442 by Ben Bolker.
  * R CMD on Windows now skips the site profile with --no-site-file
    and --vanilla even when R_PROFILE is set (PR#18512, from Kevin
    Ushey).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1686916800">- CHANGES IN R 4.3.1:
  C-LEVEL FACILITIES:
  * The C-level API version of R's integrate(), Rdqags() in Applic.h,
    now returns the correct number of integrand evaluations neval,
    fixing PR#18515 reported and diagnosed by Stephen Wade.
  * The C prototypes for LAPACK calls dspgv and dtptrs in
    R_exts/Lapack.h had one too many and one too few character length
    arguments - but this has not caused any known issues. To get the
    corrected prototypes, include
    [#]include &lt;Rconfig.h&gt; // for PR18534fixed
    [#]ifdef PR18534fixed
    [#] define usePR18534fix 1
    [#]endif
    [#]include &lt;R_exts/Lapack.h&gt;
    in your C/C++ code (PR#18534).
  INSTALLATION:
  * Many of the checks of esoteric Internet operations and those
    using unreliable external sites have been moved to a new target
    that is not run by default and primarily intended for the core
    developers.  To run them use
    cd tests; make test-Internet-dev
  BUG FIXES:
  * .S3methods(), typically called from methods(), again marks
    methods from package base as visible.
    Also, the visibility of non-base methods is again determined by
    the method's presence in search().
  * tools::Rdiff() is now more robust against invalid strings, fixing
    installation tests on Windows without Rtools installed
    (PR#18530).
  * Fix (new) bug in hcl.colors(2, *), by Achim Zeileis (PR#18523).
  * head(., &lt;illegal&gt;) and tail(..) now produce more useful "Error in
    ...." error messages, fixing PR#18362.
  * Package code syntax on Windows is checked in UTF-8 when UTF-8 is
    the native encoding.
  * na.contiguous(x) now also returns the first run, when it is at
    the beginning and there is a later one of the same length;
    reported to R-devel, including a fix, by Georgi Boshnakov.
    Further, by default, it modifies only an existing attr(*,"tsp")
    but otherwise no longer sets one.
  * chol(&lt;not pos.def&gt;, pivot = &lt;T|F&gt;) now gives a correct error or
    warning message (depending on pivot), thanks to Mikael Jagan's
    (PR#18541).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1699012800">- CHANGES IN R 4.3.2:
  NEW FEATURES:
  * The default initialization of the "repos" option from the
    repositories file at startup can be skipped by setting
    environment variable R_REPOSITORIES to NULL such that
    getOption("repos") is empty if not set elsewhere.
  * qr.X() is now an implicit S4 generic in methods.
  * iconv(to = "ASCII//TRANSLIT") is emulated using substitution on
    platforms which do not support it (notably Alpine Linux).  This
    should give a human-readable conversion in ASCII on all platforms
    (rather than NA_character_).
  * trans3d() gains options continuous and verbose addressing the
    problem of possible "wrap around" when projecting too long
    curves, as reported by Achim Zeileis in PR#18537.
  * tools::showNonASCII() has been rewritten to work better on macOS
    14 (which has a changed implementation of iconv()).
  * tiff(type = "quartz") (the default on macOS) now warns if
    compression is specified: it continues to be ignored.
  INSTALLATION on a UNIX-ALIKE:
  * There is some support for building with Intel's LLVM-based
    compilers on x86_64 Linux, such as (C) icx, (C++) ipcx and
    (Fortran) ifx from oneAPI 2023.x.y.
  * There is support for using LLVM's flang-new as the Fortran
    compiler from LLVM 16.0.x (preferably 17.0.0 or later).
  UTILITIES:
  * R CMD check reports the use of the Fortran 90 random number
    generator RANDOM_NUMBER() and the subroutines to initialize it.
    'Writing R Extensions' has example code to use R's RNGs from
    Fortran.
  BUG FIXES:
  * substr(x, n, L) &lt;- cc now works (more) correctly for multibyte
    UTF-8 strings x when L &gt; nchar(x), thanks to a report and patch
    by 'Architect 95'.
  * contrib.url(character()) now returns 0-length character() as
    documented, which also avoids spurious warnings from
    available.packages() et al. in the edge case of an empty vector
    of repository URLs.
  * readChar(., 4e8) no longer fails, thanks to Kodi Arfer's report
    (PR#18557).
  * lapply(&lt;list&gt;, as.data.frame) no longer warns falsely for some
    base vector components.
  * Communication between parent and child processes in the multicore
    part of parallel could fail on platforms that do not support an
    arbitrarily large payload in system functions read()/write() on
    pipes (seen on macOS where a restriction to INT_MAX bytes is
    documented, without doing a partial read unlike Linux). The
    payload is now split into 1Gb chunks to avoid that problem.
    (PR#18571)
  * qqplot(x,y, conf.level=.) gives better confidence bounds when
    length(x) != length(y), thanks to Alexander Ploner's report and
    patch proposal (PR#18557).
  * norm(&lt;0-length&gt;, "2") now gives zero instead of an error, as all
    the other norm types, thanks to Mikael Jagan's PR#18542.
  * Build-stage Rd macros \packageAuthor and \packageMaintainer now
    process Authors@R, fixing NA results when the package DESCRIPTION
    omits Author and Maintainer fields.
  * Formatting and printing complex numbers could give things like
    0.1683-0i because of rounding error: -0i is now replaced by +0i.
  * postscript() refused to accept a title comment containing the
    letter "W" (PR#18599).
  * isoreg(c(1,Inf)) signals an error instead of segfaulting, fixing
    PR#18603.
  * tiff(type = "Xlib") was only outputting the last page of
    multi-page plots.
  * tools::latexToUtf8() again knows about \~{n} and other letters
    with tilde, fixing a regression in R 4.3.0, and about \^{i} as an
    alternative to \^{\i} (similarly with other accents).
    Furthermore, LaTeX codes for accented I letters are now correctly
    converted, also fixing related mistakes in
    tools::encoded_text_to_latex().
  * tar(*, tar = "internal") no longer creates out-of-spec tar files
    in the very rare case of user or group names longer than 32
    bytes, fixing PR#17871 with thanks to Ivan Krylov.
  * When using the "internal" timezone datetime code, adding a
    fraction of a second no longer adds one second, fixing PR#16856
    from a patch by Ivan Krylov.
  * tools::checkRd() no longer produces spurious notes about
    "unnecessary braces" from multi-line Rd results of \Sexpr macros.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1709208000">- CHANGES IN R 4.3.3:
  NEW FEATURES:
  * iconv() now fixes up variant encoding names such as "utf8"
    case-insensitively.
  DEPRECATED AND DEFUNCT:
  * The legacy encoding = "MacRoman" is deprecated in pdf() and
    postscript(): support was incomplete in earlier versions of R.
  BUG FIXES:
  * Arguments are now properly forwarded to methods on S4 generics
    with ... in the middle of their formal arguments. This was broken
    for the case when a method introduced an argument but did not
    include ... in its own formals. Thanks to Herv'e Pag`es for the
    report PR#18538.
  * Some invalid file arguments to pictex(), postscript() and xfig()
    opened a file called NA rather than throw an error.  These
    included postscript(NULL) (which some people expected to work
    like pdf(NULL)).
  * Passing filename = NA to svg(), cairo_pdf(), cairo_ps() or the
    Cairo-based bitmap devices opened a file called NA: it now throws
    an error.
  * quartz(file = NA) opened a file called NA, including when used as
    a Quartz-based bitmap device.  It now gives an error.
  * rank(&lt;long vector&gt;) now works, fixing PR#18617, thanks to Ilia
    Kats.
  * seq.int() did not adequately check its length.out argument.
  * match(&lt;POSIXct&gt;, .) is correct again for differing time zones,
    ditto for "POSIXlt", fixing PR#18618 reported by Bastian Klein.
  * drop.terms(*, dropx = &lt;0-length&gt;) now works, fixing PR#18563 as
    proposed by Mikael Jagan.
  * drop.terms(*) keeps + offset(.) terms when it should, PR#18565,
    and drop.terms() no longer makes up a response, PR#18566, fixing
    both bugs thanks to Mikael Jagan.
  * getS3method("t", "test") no longer finds the t.test() function,
    fixing PR#18627.
  * pdf() and postscript() support for the documented Adobe encodings
    "Greek" and "Cyrilllic" was missing (although the corresponding
    Windows' codepages could be used).
  * Computations of glyph metric information for pdf() and
    postscript() did not take into account that transliteration could
    replace one character by two or more (only seen on macOS 14) and
    typically warned that the information was not known.
  * rank(x) no longer overflows during integer addition, when
    computing rank average for largish but not-yet long vector x,
    fixing PR#18630, thanks to Ilia Kats.
  * list.files() on Windows now returns also files with names longer
    that 260 bytes (the Windows limit is 260 characters).
    Previously, some file names particularly with 'East Asian'
    characters were omitted.
  * cov2cor(&lt;0 x 0&gt;) now works, fixing PR#18423 thanks to Mikael
    Jagan and Elin Waring.
  * cov2cor(&lt;negative diagonal&gt;) and similar now give one warning
    instead of two, with better wording, fixing PR#18424 thanks to
    Mikael Jagan.
  * tools:: startDynamicHelp() now ensures port is in proper range,
    fixing PR#18645.
  * pbeta(x, a,b) is correct now for x=0 or 1 in the boundary cases
    where a or b or both are 0, fixing PR#18672 thanks to Michael
    Fay.
  * pmatch(x, table) for large table, also called for data frame row
    selection, dfrm[nm, ], is now interruptible, fixing PR#18656.
  * predict(&lt;rank-deficient lm&gt;, newdata=*) fix computing of nbasis,
    see Russ Lenth's comment 29 in PR#16158.
  * Added a work-around for a bug in macOS 14.3.1 and higher which
    prevents R plots in the Quartz Cocoa device from updating on
    screen.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1713960000">- CHANGES IN R 4.4.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Startup banners, R --version, sessionInfo() and R CMD check no
    longer report (64-bit) as part of the platform as this is almost
    universal - the increasingly rare 32-bit platforms will still
    report (32-bit).
    On Windows, ditto for window titles.
  * is.atomic(NULL) now returns FALSE, as NULL is not an atomic
    vector.  Strict back-compatibility would replace is.atomic(foo)
    by (is.null(foo) || is.atomic(foo)) but should happen only
    sparingly.
  NEW FEATURES:
  * The confint() methods for "glm" and "nls" objects have been
    copied to the stats package.  Previously, they were stubs which
    called versions in package MASS. The MASS namespace is no longer
    loaded if you invoke (say) confint(glmfit).  Further, the "glm"
    method for profile() and the plot() and pairs() methods for class
    "profile" have been copied from MASS to stats.  (profile.nls()
    and plot.profile.nls() were already in stats.)
  * The confint() and profile methods for "glm" objects have gained a
    possibility to do profiling based on the Rao Score statistic in
    addition to the default Likelihood Ratio. This is controlled by a
    new test = argument.
  * The pairs() method for "profile" objects has been extended with a
    which = argument to allow plotting only a subset of the
    parameters.
  * The "glm" method for anova() computes test statistics and
    p-values by default, using a chi-squared test or an F test
    depending on whether the dispersion is fixed or free.  Test
    statistics can be suppressed by giving argument test a false
    logical value.
  * In setRepositories() the repositories can be set using their
    names via name = instead of index ind =.
  * methods() and .S3methods() gain a all.names option for the (rare)
    case where functions starting with a . should be included.
  * Serializations can now be interrupted (e.g., by Ctrl-C on a
    Unix-alike) if they take too long, e.g., from save.image(),
    thanks to suggestions by Ivan Krylov and others on R-devel.
  * New startup option --max-connections to set the maximum number of
    simultaneous connections for the session.  Defaults to 128 as
    before: allowed values up to 4096 (but resource limits may in
    practice restrict to smaller values).
  * R on Windows (since Windows 10 2004) now uses the new Segment
    Heap allocator. This may improve performance of some
    memory-intensive applications.
  * When R packages are built, typically by R CMD build &lt;pkg&gt;, the
    new --user=&lt;build_user&gt; option overrides the (internally
    determined) user name, currently Sys.info()["user"] or LOGNAME.
    This is a (modified) fulfillment of Will Landau's suggestion in
    PR#17530.
  * tools::testInstalledBasic() gets new optional arguments outDir
    and testSrcdir, e.g., allowing to use it in a &lt;builddir&gt; !=
    &lt;srcdir&gt; setup, and in standard "binary" Windows installation
  * if* a source tests/ folder is present.
  * range(&lt;DT_with_Inf&gt;, finite = TRUE) now work for objects of class
    "Date", "POSIXct", and "POSIXlt" with infinite entries,
    analogously to range.default(), as proposed by Davis Vaughan on
    R-devel.  Other range()-methods can make use of new function
    .rangeNum().
  * New .internalGenerics object complementing .S3PrimitiveGenerics,
    for documentation and low-level book-keeping.
  * grid() now invisibly returns the x- and y- coordinates at which
    the grid-lines were drawn.
  * norm(., type) now also works for complex matrices.
  * kappa(., exact = TRUE, norm = *) now works for all norms and also
    for complex matrices.  In symmetric / triangular cases, the new
    argument uplo = "U" | "L" allows the upper or lower triangular
    part to be specified.
  * memDecompress(type = "unknown") recognizes compression in the
    default 'zlib' format as used by memCompress(type = "gzip").
  * memCompress() and memDecompress() will use the libdeflate library
    (&lt;https://github.com/ebiggers/libdeflate&gt;) if installed.  This
    uses the same type of compression for type = "gzip" but is 1.5-2x
    faster than the system libz library on some common platforms: the
    speed-up may depend on the library version.
  * diff() for objects of class "Date", "POSIXct", and "POSIXlt"
    accepts a units argument passed via ....
  * Dynamic help now does a much better job of rendering package
    DESCRIPTION metadata.
  * Rprof() gains an event argument and support for elapsed (real)
    time profiling on Unix (PR#18076).
  * filled.contour() gains a key.border argument.
  * tools::update_pkg_po() gets arguments pot_make and mo_make for
    _not_ re-making the corresponding files, and additionally a
    verbose argument.
  * Hexadecimal string colour specifications are now accepted in
    short form, so, for example, we can use "#123", which is
    equivalent to "#112233".
    Thanks to MikeFC for the original idea and Ella Kaye, Malcolm
    Barrett, George Stagg, and Hanne Oberman for the patch.
  * Plain-text help shows \var markup by angle brackets.
  * The new experimental primitive function declare() is intended to
    eventually allow information about R code to be communicated to
    the interpreter, compiler, and code analysis tools. The syntax
    for declarations is still being developed.
  * Functions psmirnov(), qsmirnov() and rsmirnov() in package stats
    have had argument two.sided renamed to alternative, to take into
    account that the permutation distributions of the one-sided
    statistics can be different in the case of ties.  Consequence of
    PR#18582.
  * sort() is now an implicit S4 generic in methods.
  * Formatting and printing, format(z), print(z), of complex vectors
    z no longer zap relatively small real or imaginary parts to zero,
    fixing PR#16752.  This is an API change, as it was documented
    previously to round real and imaginary parts together on purpose,
    producing nicer looking output.  As mentioned, e.g. in the PR,
    this change is compatible with many other "R-like" programming
    environments.
    We have simplified the internal code and now basically format the
    real and imaginary parts independently of each other.
  * New experimental functions Tailcall() and Exec() to support
    writing stack-space-efficient recursive functions.
  * Where characters are attempted to be plotted by pdf(),
    postscript() and xfig() which are not in the selected 8-bit
    character set (most often Latin-1) and the R session is using a
    UTF-8 locale, the warning messages will show the UTF-8 character
    rather than its bytes and one dot will be substituted per
    character rather than per byte.  (Platforms whose iconv() does
    transliteration silently plot the transliteration.)
    In a UTF-8 locale some transliterations are now done with a
    warning (e.g., dashes and Unicode minus to hyphen, ligatures are
    expanded, permille (‰) is replaced by o/oo), although the OS may
    have got there first.  These are warnings as they will continue
    to be replaced by dots in earlier versions of R.
  * The matrix multiplication functions crossprod() and tcrossprod()
    are now also primitive and S3 generic, as %*% had become in R
    4.3.0.
  * source() and example() have a new optional argument catch.aborts
    which allows continued evaluation of the R code after an error.
  * The non-Quartz tiff() devices allow additional types of
    compression if supported by the platform's libtiff library.
  * The list of base and recommended package names is now provided by
    tools::standard_package_names().
  * cairo_pdf() and cairo_ps() default to onefile = TRUE to closer
    match pdf() and postscript().
  * New option catch.script.errors provides a documented way to catch
    errors and then continue in non-interactive use.
  * L %||% R newly in base is an expressive idiom for the phrases
    if(!is.null(L)) L else R or if(is.null(L)) R else L.
  * The return value from warnings() now always inherits from
    "warnings" as documented, now also in the case of no warnings
    where it previously returned NULL.
  * as.complex("1i") now returns 0 + 1i instead of NA with a warning.
  * z &lt;- c(NA, 1i) now keeps the imaginary part Im(z[1]) == 0, no
    longer coercing to NA_complex_.  Similarly, cumsum(z) correctly
    sums real and imaginary parts separately, i.e., without
    "crosstalk" in case of NAs.
  * On Alpine Linux iconv() now maps "latin2", "latin-2", "latin9"
    and "latin-9" to encoding names the OS knows about
    (case-insensitively).
  * iconv(sub = "Unicode") now always zero-pads to four (hex) digits,
    rather than to 4 or 8.  (This seems to have become the convention
    once Unicode restricted the number of Unicode points to 2^21 - 1
    and so will never need more than 6 digits.)
  * NCOL(NULL) now returns 0 instead of 1, for consistency with
    cbind().
  * The information for the Euro glyph missing from the Adobe .afm
    files for the Courier, Helvetica and Times families has been
    copied from their URW equivalents - this will improve vertical
    centring in the pdf() and postscript() devices.
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.12.0.  The changes are almost entirely cosmetic.
  * The included LAPACK sources have been updated to version 3.12.0
    and some further double-complex routines added.
  * There are new font families for the 2014--5 URW 2.0 fonts (see
    ?pdf) which are included in recent versions of Ghostscript.
    These have font widths for most Greek glyphs and a few others
    which were missing from the original versions (whose font
    families remain available for reproducibility, although
    Ghostscript-based viewers will render using the 2.0 versions).
  * Improve the large-n efficiency of as.matrix(&lt;dist&gt;), thanks an R
    contributors effort, notably by Tim Taylor and Heather Turner,
    see PR#18660.
  * The default and numeric methods of all.equal() get a check.class
    option.
  * zapsmall() gets new optional arguments, function mFUN and min.d,
    for extra flexibility; fulfills a wish in PR#18199.  Also, it is
    now an implicit S4 generic in package methods.
  * The Rd filter for aspell() gains an ignore argument.
  * New generic function sort_by(), primarily useful for the
    data.frame method which can be used to sort rows of a data frame
    by one or more columns.
  * The icence headers for the RPC code in src/extra/xdr have been
    updated to use the GPL-compatible licence published by Oracle
    America in 2010.
  * New function pkg2HTML() in tools to create single-page HTML
    reference manuals for R packages.
  * The byte code evaluator now uses less C stack space for recursive
    calls to byte-compiled functions. It also makes more of an effort
    to avoid allocations for scalar return values.
  * New completion option backtick (disabled by default) allows
    non-syntactic completions to be wrapped in backquotes. This is
    currently only useful for Jupyter notebooks via the IRkernel
    package, and may cause problems for other backends.
  INSTALLATION:
  * The parser has been updated to work with bison 3.8.2, which is
    now used for the pre-generated parsers in gram.c, file.c, and
    gramRd.c. A few parser error messages have changed, which may
    affect code that relies on exact messages.
  INSTALLATION on a UNIX-ALIKE:
  * System valgrind headers are now required to use configure option
  - -with-valgrind-instrumentation with value 1 or 2.
  * configure will warn if it encounters a 32-bit build, as that is
    nowadays almost untested.
  * Environment variable R_SYSTEM_ABI is no longer used and so no
    longer recorded in etc/Renviron (it was not on Windows and was
    only ever used when preparing package tools).
  * If the libdeflate library and headers are available, libdeflate
    rather than libz is used to (de)compress R objects in lazy-load
    databases.  Typically tasks spend up to 5% of their time on such
    operations, although creating lazy-data databases is one of the
    exceptions.
    This can be suppressed if the library is available by the
    configure option --without-libdeflate-compression.
  * configure option --enable-lto=check has not worked reliably since
    2019 and has been removed.
  * The minimum autoconf requirement for a maintainer build has been
    increased to autoconf 2.71.
    It is intended to increase this to 2.72 for R 4.5.0: the
    distributed configure file was generated using 2.72.
  * The minimum version requirement for an external LAPACK has been
    reduced to 3.9.0.
  * No default C++ compiler is set if no C++17 compiler is detected:
    there is no longer an automatic fallback to C++14 or C++11.
    Compilers from the last five years should have sufficient
    support: for others macros CXX and CXXSTD can be set in file
    config.site to provide a fallback if needed.
    The Objective-C++ compiler now by default uses the standard
    selected by R for C++ (currently C++17) rather than the default
    standard for the C++ compiler (which on macOS is still C++98).
  INSTALLATION on macOS:
  * A new configure option --with-newAccelerate makes use of Apple's
    'new' BLAS / LAPACK interfaces in their Accelerate framework.
    Those interfaces are only available in macOS 13.3 or later, and
    building requires SDK 13.3 or later (from the Command Line Tools
    or Xcode 14.3 or later).
    By default the option uses new Accelerate for BLAS calls: to also
    use it for LAPACK use option --with-newAccelerate=lapack.  The
    later interfaces provide LAPACK 3.9.1 rather than 3.2.1: 3.9.1 is
    from 2021-04 and does not include the improved algorithms
    introduced in LAPACK 3.10.0 (including for BLAS calls).
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools44, an update of the Rtools43 toolchain.  It is
    based on GCC 13 and newer versions of MinGW-W64, binutils and
    libraries (targeting 64-bit Intel CPUs).  R-devel can no longer
    be built using Rtools43 without changes.
  * Rtools44 has experimental support for 64-bit ARM (aarch64) CPUs
    _via_ the LLVM 17 toolchain using lld, clang/flang-new and
    libc++.
  UTILITIES:
  * R CMD check notes when S4-style exports are used without
    declaring a strong dependence on package methods.
  * tools::checkRd() (used by R CMD check) detects more problems with
    \Sexpr-based dynamic content, including bad nesting of \Sexprs
    and invalid arguments.
  * tools::checkRd() now reports Rd titles and section names ending
    in a period; this is ignored by R CMD check unless environment
    variable _R_CHECK_RD_CHECKRD_MINLEVEL_ is set to -5 or smaller.
  * R CMD check now notes Rd files without an \alias, as long
    documented in 'Writing R Extensions' §1.3.1.  The check for a
    missing \description has been moved from tools::checkRd() to
    tools::checkRdContents().
  * R CMD check now visits inst/NEWS.Rd and OS-specific man
    subdirectories when checking Rd files.
  * tools::checkDocFiles() and tools::checkRdContents() now also
    check internal Rd files by default, but "specially" (ignoring
    missing documentation of arguments).
  * R CMD Rdiff gets option --useEx.
  * R CMD check now warns on non-portable uses of Fortran KIND such
    as INTEGER(KIND=4) and REAL(KIND=8).
    To see the failing lines set environment variable
    _R_CHECK_FORTRAN_KIND_DETAILS_ to a true value.
  * When checking Rd files, R CMD check now notes some of the "lost
    braces" that tools::checkRd() finds.  Typical problems are Rd
    macros missing the initial backslash (e.g., code{...}), in-text
    set notation (e.g., {1, 2}, where the braces need escaping), and
    \itemize lists with \describe-style entries of the form
    \item{label}{description}.
  * R CMD INSTALL (and hence check) will compile C++ code with
  - DR_NO_REMAP if environment variable _R_CXX_USE_NO_REMAP_ is set
    to a true value.  It is planned that this will in future become
    the default for compiling C++.
  * The new built-in Rd macro \dontdiff{} can be used to mark example
    code whose output should be ignored when comparing check output
    to reference output (tests/Examples/&lt;pkg&gt;-Ex.Rout.save).  The
    \dontdiff tag, like \donttest, is _not_ shown on the rendered
    help page, so provides a clean alternative to ##
    IGNORE_RDIFF_(BEGIN|END) comments.
  * R CMD build when there is no NAMESPACE, now uses the recommended
    exportPattern("^[^.]"), instead of exporting everything.
  * R CMD check now warns about non-ASCII characters in the NAMESPACE
    file (in addition to R files). Such packages are not portable and
    may fail to install on some platforms.
  C-LEVEL FACILITIES:
  * Headers R_ext/Applic.h and R-ext/Linpack.h used to include
    R_ext/BLAS.h although this was undocumented and unneeded by their
    documented entry points.  They no longer do so.
  * New function R_missing(), factored out from do_missing(), used to
    fix PR#18579.
  * SEXP type S4SXP has been renamed to OBJSXP to support
    experimenting with alternative object systems.  The S4SXP value
    can still be used in C code but is now deprecated.  Based on
    contributions from the R Consortium's Object-Oriented Programming
    Working Group.
  * New function pow1p(x,y) for accurate (1+x)^y.
  * mkCharLenCE was incorrectly documented to take a size_t length
    but was implemented with int (and character strings in R are
    limited to 2^31 - 1 bytes).
  DEPRECATED AND DEFUNCT:
  * data() no longer handles zipped data from long-defunct (since R
    2.13.0) --use-zip-data installations.
  * The legacy graphics devices pictex() and xfig() are now
    deprecated.  They do not support recent graphics enhancements and
    their font handling is rudimentary. The intention is to retain
    them for historical interest as long as they remain somewhat
    functional.
  * Support for encoding = "MacRoman" has been removed from the pdf()
    and postscript() devices - this was a legacy encoding supporting
    classic macOS up to 2001 and no longer has universal libiconv
    support.
  * is.R() is deprecated as no other S dialect is known to be in use
    (and this could only identify historical dialects, not future
    ones).
    Further information on calls can be obtained by setting the
    environment variable _R_DEPRECATED_IS_R_ to error which turns the
    deprecation warning into an error and so by default gives a
    traceback.  (This is done by R CMD check --as-cran.)
  * UseMethod() no longer forwards local variables assigned in the
    generic function into method call environments before evaluating
    the method body. This makes method calls behave more like
    standard function calls and makes method code easier to analyze
    correctly.
  * The twelve as.data.frame.&lt;class&gt;() methods which were deprecated
    only via _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ and in R CMD
    check --as-cran are formally deprecated now in favour of calling
    as.data.frame() or as.data.frame.vector().  The deprecation
    "check" now works also when as.data.frame() is S4 generic thanks
    to Ivan Krylov.
  * The default method for the directional comparison operators &lt;, &gt;,
    &lt;=, and &gt;= now signals an error when one of the operands is a
    language object, i.e. a symbol or a call.
  * For terms.formula(), deprecate abb and neg.out arguments
    _formally_ in addition to just documenting it.
  BUG FIXES:
  * The methods package is more robust to not being attached to the
    search path.  More work needs to be done.
  * pairwise.t.test() misbehaved when subgroups had 0 DF for
    variance, even with pool.sd = TRUE.  (PR#18594 by Jack Berry).
  * Probability distribution functions [dpq]&lt;distrib&gt;(x, *), but also
    bessel[IKJY](x, .) now consistently preserve attributes(x) when
    length(x) == 0, e.g., for a 2 x 0 matrix, thanks to Karolis
    Koncevičius' report PR#18509.
  * Group "Summary" computations such as sum(1:3, 4, na.rm = 5, NA,
    7, na.rm = LL) now give an error instead of either 17 or NN for
    LL true or false, as proposed by Ivan Krylov on the R-devel
    mailing list.  (This also means it is now an error to specify
    na.rm more than once.)
  * as.complex(x) now returns complex(real = x, imaginary = 0) for
    _all_ numerical and logical x, notably also for NA or
    NA_integer_.
  * Directories are now omitted by file.copy(, recursive = FALSE) and
    in file.append() (PR#17337).
  * gsub() and sub() are now more robust to integer overflow when
    reporting errors caused by too large input strings (PR#18346).
  * Top-level handlers are now more robust to attempts to remove a
    handler whilst handlers are running (PR#18508).
  * The handling of Alt+F4 in dialogs created on Windows using
    GraphApp has been fixed (PR#13870).
  * density() more consistently computes grid values for the
    FFT-based convolution, following Robert Schlicht's analysis and
    proposal in PR#18337, correcting density values typically by a
    factor of about 0.999.  Argument old.coords = TRUE provides back
    compatibility.
  * palette.colors() gains a name argument that defaults to FALSE
    controlling whether the vector of colours that is returned has
    names (where possible).  PR#18529.
  * tools::xgettext() no longer extracts the (non-translatable) class
    names from warningCondition and errorCondition calls.
  * S3method(&lt;gen&gt;, &lt;class&gt;, &lt;func&gt;) in the NAMESPACE file now works
    (again) when &lt;func&gt; is visible from the namespace, e.g.,
    imported, or in base.
  * getParseData(f) now also works for a function defined in the
    first of several &lt;pkg&gt;/R/*.R source files, thanks to Kirill
    Müller's report and Duncan Murdoch's patch in PR#16756.
  * Rd \Sexpr macros with nested #ifdef conditionals were not
    processed.
  * A non-blocking connection with non-default encoding (such as a
    socket) now correctly returns from readLines() after new data has
    arrived also when its EOF had been reached previously.  Thanks to
    Peter Meilstrup's report on R-devel and Ivan Krylov's report and
    patch proposal in PR#18555.
  * tools::checkRdContents() failed to detect empty argument
    descriptions when they spanned multiple lines, including those
    generated by prompt().  These cases are now noted by R CMD check.
  * Plain-text help no longer outputs spurious colons in the
    arguments list (for multi-line \item labels in the Rd source).
  * kappa() and rcond() work correctly in more cases; kappa(., norm =
    "2") now warns that it computes the 1-norm with (default) exact =
    FALSE; prompted by Mikael Jagan's quite comprehensive PR#18543.
  * Rd skeletons generated by prompt() or promptData() now use a
    dummy title (so R CMD build works).  tools::checkRdContents() has
    been updated to detect such template leftovers, including from
    promptPackage().
  * When S4 method dispatch fails because no method was found, the
    error message now includes the signature argument names; thanks
    to Michael Chirico's proposal on the R-devel list.
  * withAutoprint({ .. }) now preserves srcrefs previously lost,
    thanks to Andrew Simmons' report plus fix in PR#18572.
  * transform.data.frame() no longer adjusts names; in particular,
    untransformed variables are kept as-is, including those with
    syntactically invalid names (PR#17890).
  * The keep.source option for Rd \Sexpr blocks is no longer ignored.
  * The formula methods for t.test() and wilcox.test() now catch when
    paired is passed, addressing PR#14359; use Pair(x1, x2) ~ 1 for a
    paired test.
  * The level reported in the browser prompt was often too large. It
    now shows the number of browser contexts on the stack.
  * For cbind() and rbind(), the optional deparse.level argument is
    now properly passed to methods, thanks to Mikael Jagan's PR#18579
    and comments there.
  * Some error and warning messages for large ('long vector')
    matrix(v, nr, nc) and dim(m) &lt;- d are now correct about sizes,
    using long long formatting, fixing PR#18612 (and more) reported
    by Mikael Jagan.
  * readChar(useBytes = TRUE) now terminates strings even when the
    underlying connection uses extra spaces in the input buffer.
    This fixes problems with extra garbage seen with gzip
    connections, PR#18605.
  * Named capture in PCRE regular expressions now works also with
    more than 127 named groups (PR#18588).
  * Datetime functions are now robust against long jumps when dealing
    with internal time zone changes.  This avoids confusing warnings
    about an invalid time zone, previously triggered by turning
    warnings into errors or handling them via tryCatch (PR#17966,
    PR#17780).
  * Datetime functions now restore even an empty TZ environment
    variable after internal time zone changes (PR#17724).  This makes
    results of datetime functions with this (typically unintentional)
    setting more predictable.
  * drop.terms(*) now drops response as by default, keep.response =
    FALSE, fixing PR#18564 thanks to Mikael Jagan.
  * dummy.coef(.) now also works for lm()-models with character
    categorical predictor variables rather than factor ones, fixing
    PR#18635 reported by Jinsong Zhao.
  * formals(f) &lt;- formals(f) now also works for a function w/o
    arguments and atomic _constant_ body(f).
  * Correct as.function(&lt;invalid list&gt;, .)'s error message.
  * removeSource() is yet more thorough in finding and removing
    "srcref" and the other source references from parsed R language
    chunks, fixing PR#18638 thanks to Andrew Simmons.
  * dgeom() is more accurate now, notably when its result is very
    small, fixing PR#18642 thanks to the proposal of Morten Welinder,
    also improving other instances where C level binom_raw(x, n, ..)
    has x == 0 or x== n.
  * warning() with options(warn = 1) has improved output for
    multi-line messages.
  * axis.Date() and axis.POSIXct() now respect the par("lab") setting
    for the number of pretty() intervals.
  * Comparisons for language objects (which are based on deparsing)
    are now more careful about using accurate deparsed results
    (PR#18676).
  * Plain-text help (Rd2txt) now correctly preserves blank lines
    following single-line \dontrun code.
  * &lt;POSIXlt&gt;[*] no longer sets wrong "balanced" attribute, fixing
    PR#18681 thanks to Mikael Jagan.
  * str(&lt;classed-call&gt;) now deparses the call as expected, fixing
    PR#18684, reported by Dave Slager.
  * In Rd examples, code following the closing brace of a \dontrun,
    \dontshow or \donttest tag on the same line is no longer skipped
    when R CMD check runs the examples.
  * as.data.frame(matrix(*, ncol=0)) now gets valid names() and
    colnames(); reported by Davis Vaughan on the R-devel list.
  * Internal Mathlib function stirlerr(n) is now almost fully
    (52-bit) accurate for all n &gt;= ~5.9 and more accurate also in the
    range 1 -- 5.9.  This entails small ("after 12th decimal")
    changes in density functions, e.g., dgamma() in _some_ regions of
    their support.  The fix was partly prompted by Morten Welinder's
    PR#18640.
  * Numbers like 9876543.2 are now considered non-integer by Mathlib
    internal R_nonint(), amending original fix of PR#15734.
  * Rd comment lines no longer cause broken paragraphs in the
    rendered PDF and plain-text help. In code blocks, pure comment
    lines (starting with %) no longer produce an empty line.
  * xtabs(Freq ~ .) now consistently defaults to na.action = na.pass,
    using na.rm = FALSE (added as an argument) when summing over Freq
    (PR#17770).
  * tools::testInstalledPackage() is no longer silent about failures
    from running examples or tests and its return code no longer
    ignores failures from checking vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1718366400">- CHANGES IN R 4.4.1:
  C-LEVEL FACILITIES:
  * Functions R_atof and R_strtod declared in header R_ext/Utils.h
    are now documented in 'Writing R Extensions' and so formally part
    of the API.
  * The non-API entry points Rf_setSVector, Rf_StringFalse,
    Rf_StringTrue and Rf_isBlankString have been added to those
    reported by R CMD check.
  * The new function Rf_allocLang is now available. This provides an
    alternative to the idiom of calling Rf_allocList followed by
    SET_TYPEOF.
  UTILITIES:
  * R CMD check now reports as warnings what gfortran calls 'Fortran
    2018 deleted features', all of which have long been marked as
    'obsolescent' and some of which were deleted in Fortran 2008 or
    earlier.  Fortran compilers are no longer required to support
    these.
  BUG FIXES:
  * as.numeric(), scan(), type.convert() and other places which use
    the internal C function R_strtod now require a _non-empty_ digit
    sequence in a decimal or binary exponent.  This aligns with the
    C/POSIX standard for strtod and with ?NumericConstants.
  * as.data.frame(m, make.names=NA) now works correctly for a matrix
    m with NA's in row names.
  * The error message from &lt;POSIXlt&gt;[["hour"]] and similar now
    mentions *[[, "hour"]], as wished for in PR#17409 and proposed by
    Michael Chirico.
  * qbinom() and potentially qpois(), qnbinom(), no longer sometimes
    fail accurate inversion (of pbinom(), etc), thanks to Christopher
    Chang's report and patch in PR#18711.
  * The internal help server on Windows can again serve requests sent
    in quick succession, fixing a regression in R 4.4.0.
  * debugcall(&lt;S3Generic&gt;()) now also works when a corresponding
    S4-generic version is in the methods cache (PR#18143).
  * Package tools' toTitleCase(ch0) now returns character(0) when ch0
    is of zero length; fixing PR#18724, reported by David Hugh Jones.
  * R CMD check is no longer broken (without a check result and no
    explanation in 00check.log) for a package which declares an
    invalid VignetteBuilder in DESCRIPTION but has no vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1730376000">- CHANGES IN R 4.4.2:
  C-LEVEL FACILITIES:
  * The S-compatibility macros F77_COM and F77_COMDECL defined in
    header R_ext/RS.h are deprecated and will be removed shortly.  We
    could find no record of their use.
  BUG FIXES:
  * Mathlib function lgammacor(x) no longer warns about underflow to
    zero for large x.
  * Text widths and heights were incorrectly reported by the Quartz
    device if the drawing context didn't exist yet (typically when
    drawing off-screen to a window that is yet to appear, see
    PR#18591).
  * The Quartz device could segfault in cases where paths with spaces
    are used in the new glyph drawing API.  Thanks to Tomek
    Gieorgijewski (PR#18758).
  * On macOS in R CRAN builds, it is again possible to read
    little-endian UTF-16 text with a BOM from a connection using
    encoding="UTF-16".  Users building R from source should avoid
    using the system libiconv in macOS 14.1 and later.
  * methods' internal .requirePackage() now re-enables primitive
    method dispatch when needed; thanks to Ivan Krylov for
    demystifying CRAN package check failures on the R-devel mailing
    list.</changelog>
</package>
<package pkgid="f392b26905a4f50d4fa3c876f345ddf31aefa5706f2704911343318140d1e4de81433fafb8c67d3620cb1e96bcc18a694fbc8243d2b4ab286f720785daaf5b51" name="R-recommended-packages" arch="x86_64">
  <version epoch="0" ver="4.4.2" rel="51.0.2.2.sr20241103"/>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1620302400">- To get in sync with d:l:R:autoCRAN the Matrix package's split
  in -devel was reversed.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339200">- improved spec file according to comments of dimstar in
  https://build.opensuse.org/request/show/892685</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339201">- CHANGES IN R 4.1.0:
  FUTURE DIRECTIONS:
  * It is planned that the 4.1.x series will be the last to support
    32-bit Windows, with production of binary packages for that
    series continuing until early 2023.
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Data set esoph in package datasets now provides the correct
    numbers of controls; previously it had the numbers of cases added
    to these.  (Reported by Alexander Fowler in PR#17964.)
  NEW FEATURES:
  * www.omegahat.net is no longer one of the repositories known by
    default to setRepositories().  (Nowadays it only provides source
    packages and is often unavailable.)
  * Function package_dependencies() (in package tools) can now use
    different dependency types for direct and recursive dependencies.
  * The checking of the size of tarball in R CMD check --as-cran
    &lt;pkg&gt; may be tweaked via the new environment variable
    _R_CHECK_CRAN_INCOMING_TARBALL_THRESHOLD_, as suggested in
    PR#17777 by Jan Gorecki.
  * Using c() to combine a factor with other factors now gives a
    factor, an ordered factor when combining ordered factors with
    identical levels.
  * apply() gains a simplify argument to allow disabling of
    simplification of results.
  * The format() method for class "ftable" gets a new option justify.
    (Suggested by Thomas Soeiro.)
  * New ...names() utility.  (Proposed by Neal Fultz in PR#17705.)
  * type.convert() now warns when its as.is argument is not
    specified, as the help file always said it _should_.  In that
    case, the default is changed to TRUE in line with its change in
    read.table() (related to stringsAsFactor) in R 4.0.0.
  * When printing list arrays, classed objects are now shown _via_
    their format() value if this is a short enough character string,
    or by giving the first elements of their class vector and their
    length.
  * capabilities() gets new entry "Rprof" which is TRUE when R has
    been configured with the equivalent of --enable-R-profiling (as
    it is by default).  (Related to Michael Orlitzky's report
    PR#17836.)
  * str(xS4) now also shows extraneous attributes of an S4 object
    xS4.
  * Rudimentary support for vi-style tags in rtags() and R CMD rtags
    has been added.  (Based on a patch from Neal Fultz in PR#17214.)
  * checkRdContents() is now exported from tools; it and also
    checkDocFiles() have a new option chkInternal allowing to check
    Rd files marked with keyword "internal" as well.  The latter can
    be activated for R CMD check via environment variable
    _R_CHECK_RD_INTERNAL_TOO_.
  * New functions numToBits() and numToInts() extend the raw
    conversion utilities to (double precision) numeric.
  * Functions URLencode() and URLdecode() in package utils now work
    on vectors of URIs.  (Based on patch from Bob Rudis submitted
    with PR#17873.)
  * path.expand() can expand ~user on most Unix-alikes even when
    readline is not in use.  It tries harder to expand ~, for example
    should environment variable HOME be unset.
  * For HTML help (both dynamic and static), Rd file links to help
    pages in external packages are now treated as references to
    topics rather than file names, and fall back to a file link only
    if the topic is not found in the target package. The earlier rule
    which prioritized file names over topics can be restored by
    setting the environment variable _R_HELP_LINKS_TO_TOPICS_ to a
    false value.
  * c() now removes NULL arguments before dispatching to methods,
    thus simplifying the implementation of c() methods, _but_ for
    back compatibility keeps NULL when it is the first argument.
    (From a report and patch proposal by Lionel Henry in PR#17900.)
  * Vectorize()'s result function's environment no longer keeps
    unneeded objects.
  * Function ...elt() now propagates visibility consistently with
    ..n.  (Thanks to Lionel Henry's PR#17905.)
  * capture.output() no longer uses non-standard evaluation to
    evaluate its arguments.  This makes evaluation of functions like
    parent.frame() more consistent.  (Thanks to Lionel Henry's
    PR#17907.)
  * packBits(bits, type="double") now works as inverse of
    numToBits().  (Thanks to Bill Dunlap's proposal in PR#17914.)
  * curlGetHeaders() has two new arguments, timeout to specify the
    timeout for that call (overriding getOption("timeout")) and TLS
    to specify the minimum TLS protocol version to be used for
    https:// URIs (_inter alia_ providing a means to check for sites
    using deprecated TLS versions 1.0 and 1.1).
  * For nls(), an optional constant scaleOffset may be added to the
    denominator of the relative offset convergence test for cases
    where the fit of a model is expected to be exact, thanks to a
    proposal by John Nash.  nls(*, trace=TRUE) now also shows the
    convergence criterion.
  * Numeric differentiation _via_ numericDeriv() gets new optional
    arguments eps and central, the latter for taking central divided
    differences.  The latter can be activated for nls() via
    nls.control(nDcentral = TRUE).
  * nls() now passes the trace and control arguments to getInitial(),
    notably for all self-starting models, so these can also be fit in
    zero-noise situations via a scaleOffset.  For this reason, the
    initial function of a selfStart model must now have ... in its
    argument list.
  * bquote(splice = TRUE) can now splice expression vectors with
    attributes: this makes it possible to splice the result of
    parse(keep.source = TRUE).  (Report and patch provided by Lionel
    Henry in PR#17869.)
  * textConnection() gets an optional name argument.
  * get(), exists(), and get0() now signal an error if the first
    argument has length greater than 1.  Previously additional
    elements were silently ignored.  (Suggested by Antoine Fabri on
    R-devel.)
  * R now provides a shorthand notation for creating functions, e.g.
    \(x) x + 1 is parsed as function(x) x + 1.
  * R now provides a simple native forward pipe syntax |&gt;.  The
    simple form of the forward pipe inserts the left-hand side as the
    first argument in the right-hand side call.  The pipe
    implementation as a syntax transformation was motivated by
    suggestions from Jim Hester and Lionel Henry.
  * all.equal(f, g) for functions now by default also compares their
    environment(.)s, notably via new all.equal method for class
    function.  Comparison of nls() fits, e.g., may now need
    all.equal(m1, m2, check.environment = FALSE).
  * .libPaths() gets a new option include.site, allowing to _not_
    include the site library.  (Thanks to Dario Strbenac's suggestion
    and Gabe Becker's PR#18016.)
  * Lithuanian translations are now available.  (Thanks to Rimantas
    Zakauskas.)
  * names() now works for DOTSXP objects.  On the other hand, in
    R-lang, the R language manual, we now warn against relying on the
    structure or even existence of such dot-dot-dot objects.
  * all.equal() no longer gives an error on DOTSXP objects.
  * capabilities("cairo") now applies only to the file-based devices
    as it is now possible (if very unusual) to build R with Cairo
    support for those but not for X11().
  * There is optional support for tracing the progress of
    loadNamespace() - see its help.
  * (Not Windows.)  l10n_info() reports an additional element, the
    name of the encoding as reported by the OS (which may differ from
    the encoding part (if any) of the result from
    Sys.getlocale("LC_CTYPE").
  * New function gregexec() which generalizes regexec() to find _all_
    disjoint matches and well as all substrings corresponding to
    parenthesized subexpressions of the given regular expression.
    (Contributed by Brodie Gaslam.)
  * New function charClass() in package utils to query the
    wide-character classification functions in use (such as
    iswprint).
  * The names of quantile()'s result no longer depend on the global
    getOption("digits"), but quantile() gets a new optional argument
    digits = 7 instead.
  * grep(), sub(), regexp and variants work considerably faster for
    long factors with few levels.  (Thanks to Michael Chirico's
    PR#18063.)
  * Provide grouping of x11() graphics windows within a window
    manager such as Gnome or Unity; thanks to a patch by Ivan Krylov
    posted to R-devel.
  * The split() method for class data.frame now allows the f argument
    to be specified as a formula.
  * sprintf now warns on arguments unused by the format string.
  * New palettes "Rocket" and "Mako" for hcl.colors() (approximating
    palettes of the same name from the 'viridisLite' package).
    Contributed by Achim Zeileis.
  * The base environment and its namespace are now locked (so one can
    no longer add bindings to these or remove from these).
  * Rterm handling of multi-byte characters has been improved,
    allowing use of such characters when supported by the current
    locale.
  * Rterm now accepts ALT+ +xxxxxxxx sequences to enter Unicode
    characters as hex digits.
  * Environment variable LC_ALL on Windows now takes precedence over
    LC_CTYPE and variables for other supported categories, matching
    the POSIX behaviour.
  * duplicated() and anyDuplicated() are now optimized for integer
    and real vectors that are known to be sorted via the ALTREP
    framework. Contributed by Gabriel Becker via PR#17993.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 14
    and so packages that provide graphics devices should be
    reinstalled.
  * Graphics devices should now specify deviceVersion to indicate
    what version of the graphics engine they support.
  * Graphics devices can now specify deviceClip.  If TRUE, the
    graphics engine will never perform any clipping of output itself.
    The clipping that the graphics engine does perform (for both
    canClip = TRUE and canClip = FALSE) has been improved to avoid
    producing unnecessary artifacts in clipped output.
  * The grid package now allows gpar(fill) to be a linearGradient(),
    a radialGradient(), or a pattern().  The viewport(clip) can now
    also be a grob, which defines a clipping path, and there is a new
    viewport(mask) that can also be a grob, which defines a mask.
    These new features are only supported so far on the Cairo-based
    graphics devices and on the pdf() device.
  * (Not Windows.)  A warning is given when a Cairo-based type is
    specified for a png(), jpeg(), tiff() or bmp() device but Cairo
    is unsupported (so type = "Xlib" is tried instead).
  * grSoftVersion() now reports the versions of FreeType and
    FontConfig if they are used directly (not _via_ Pango), as is
    most commonly done on macOS.
  C-LEVEL FACILITIES:
  * The _standalone_ libRmath math library and R's C API now provide
    log1pexp() again as documented, and gain log1mexp().
  INSTALLATION on a UNIX-ALIKE:
  * configure checks for a program pkgconf if program pkg-config is
    not found.  These are now only looked for on the path (like
    almost all other programs) so if needed specify a full path to
    the command in PKG_CONFIG, for example in file config.site.
  * C99 function iswblank is required - it was last seen missing ca
    2003 so the workaround has been removed.
  * There are new configure options --with-internal-iswxxxxx,
  - -with-internal-towlower and --with-internal-wcwidth which allows
    the system functions for wide-character classification,
    case-switching and width (wcwidth and wcswidth) to be replaced by
    internal ones.  The first has long been used on macOS, AIX (and
    Windows) but this enables it to be unselected there and selected
    for other platforms (it is the new default on Solaris).  The
    second is new in this version of R and is selected by default on
    macOS and Solaris.  The third has long been the default and
    remains so as it contains customizations for East Asian
    languages.
    System versions of these functions are often minimally
    implemented (sometimes only for ASCII characters) and may not
    cover the full range of Unicode points: for example Solaris (and
    Windows) only cover the Basic Multilingual Plane.
  * Cairo installations without X11 are more likely to be detected by
    configure, when the file-based Cairo graphics devices will be
    available but not X11(type = "cairo").
  * There is a new configure option --with-static-cairo which is the
    default on macOS.  This should be used when only static cairo
    (and where relevant, Pango) libraries are available.
  * Cairo-based graphics devices on platforms without Pango but with
    FreeType/FontConfig will make use of the latter for font
    selection.
  LINK-TIME OPTIMIZATION on a UNIX-ALIKE:
  * Configuring with flag --enable-lto=R now also uses LTO when
    installing the recommended packages.
  * R CMD INSTALL and R CMD SHLIB have a new flag --use-LTO to use
    LTO when compiling code, for use with R configured with
  - -enable-lto=R.  For R configured with --enable-lto, they have
    the new flag --no-use-LTO.
    Packages can opt in or out of LTO compilation _via_ a UseLTO
    field in the DESCRIPTION file.  (As usual this can be overridden
    by the command-line flags.)
  BUILDING R on Windows:
  * for GCC &gt;= 8, FC_LEN_T is defined in config.h and hence character
    lengths are passed from C to Fortran in _inter alia_ BLAS and
    LAPACK calls.
  * There is a new text file src/gnuwin32/README.compilation, which
    outlines how C/Fortran code compilation is organized and
    documents new features:
  * R can be built with Link-Time Optimization with a suitable
    compiler - doing so with GCC 9.2 showed several
    inconsistencies which have been corrected.
  * There is support for cross-compiling the C and Fortran code
    in R and standard packages on suitable (Linux) platforms.
    This is mainly intended to allow developers to test later
    versions of compilers - for example using GCC 9.2 or 10.x has
    detected issues that GCC 8.3 in Rtools40 does not.
  * There is experimental support for cross-building R packages
    with C, C++ and/or Fortran code.
  * The R installer can now be optionally built to support a single
    architecture (only 64-bit or only 32-bit).
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++14 where
    available (which it is on all currently checked platforms): if
    not (as before) C++11 is used if available otherwise C++ is not
    supported.
    Packages which specify C++11 will still be installed using C++11.
    C++14 compilers may give deprecation warnings, most often for
    std::random_shuffle (deprecated in C++14 and removed in C++17).
    Either specify C++11 (see 'Writing R Extensions') or modernize
    the code and if needed specify C++14.  The latter has been
    supported since R 3.4.0 so the package's DESCRIPTION would need
    to include something like
    Depends: R (&gt;= 3.4)
  PACKAGE INSTALLATION on Windows:
  * R CMD INSTALL and R CMD SHLIB make use of their flag --use-LTO
    when the LTO_OPT make macro is set in file etc/${R_ARCH}/Makeconf
    or in a personal/site Makevars file.  (For details see 'Writing R
    Extensions' SS4.5.)
    This provides a valuable check on code consistency.  It does work
    with GCC 8.3 as in Rtools40, but that does not detect everything
    the CRAN checks with current GCC do.
  PACKAGE INSTALLATION on macOS:
  * The default personal library directory on builds with
  - -enable-aqua (including CRAN builds) now differs by CPU type,
    one of
    ~/Library/R/x86_64/x.y/library
    ~/Library/R/arm64/x.y/library
    This uses the CPU type R (and hence the packages) were built for,
    so when a x86_64 build of R is run under Rosetta emulation on an
    arm64 Mac, the first is used.
  UTILITIES:
  * R CMD check can now scan package functions for bogus return
    statements, which were possibly intended as return() calls (wish
    of PR#17180, patch by Sebastian Meyer). This check can be
    activated via the new environment variable
    _R_CHECK_BOGUS_RETURN_, true for --as-cran.
  * R CMD build omits tarballs and binaries of previous builds from
    the top-level package directory.  (PR#17828, patch by Sebastian
    Meyer.)
  * R CMD check now runs sanity checks on the use of LazyData, for
    example that a data directory is present and that
    LazyDataCompression is not specified without LazyData and has a
    documented value.  For packages with large LazyData databases
    without specifying LazyDataCompression, there is a reference to
    the code given in 'Writing R Extensions' SS1.1.6 to test the
    choice of compression (as in all the CRAN packages tested a
    non-default method was preferred).
  * R CMD build removes LazyData and LazyDataCompression fields from
    the DESCRIPTION file of packages without a data directory.
  ENCODING-RELATED CHANGES:
  * The parser now treats \Unnnnnnnn escapes larger than the upper
    limit for Unicode points (\U10FFFF) as an error as they cannot be
    represented by valid UTF-8.
    Where such escapes are used for outputting non-printable
    (including unassigned) characters, 6 hex digits are used (rather
    than 8 with leading zeros).  For clarity, braces are used, for
    example \U{0effff}.
  * The parser now looks for non-ASCII spaces on Solaris (as
    previously on most other OSes).
  * There are warnings (including from the parser) on the use of
    unpaired surrogate Unicode points such as \uD834.  (These cannot
    be converted to valid UTF-8.)
  * Functions nchar(), tolower(), toupper() and chartr() and those
    using regular expressions have more support for inputs with a
    marked Latin-1 encoding.
  * The character-classification functions used (by default) to
    replace the system iswxxxxx functions on Windows, macOS and AIX
    have been updated to Unicode 13.0.0.
    The character-width tables have been updated to include new
    assignments in Unicode 13.0.0.
  * The code for evaluating default (extended) regular expressions
    now uses the same character-classification functions as the rest
    of R (previously they differed on Windows, macOS and AIX).
  * There is a build-time option to replace the system's
    wide-character wctrans C function by tables shipped with R: use
    configure option --with-internal-towlower or (on Windows)
  - DUSE_RI18N_CASE in CFLAGS when building R.  This may be needed
    to allow tolower() and toupper() to work with Unicode characters
    beyond the Basic Multilingual Plane where not supported by system
    functions (e.g. on Solaris where it is the new default).
  * R is more careful when truncating UTF-8 and other multi-byte
    strings that are too long to be printed, passed to the system or
    libraries or placed into an internal buffer.  Truncation will no
    longer produce incomplete multibyte characters.
  DEPRECATED AND DEFUNCT:
  * Function plclust() from the package stats and
    package.dependencies(), pkgDepends(), getDepList(),
    installFoundDepends(), and vignetteDepends() from package tools
    are defunct.
  * Defunct functions checkNEWS() and readNEWS() from package tools
    and CRAN.packages() from utils have been removed.
  * R CMD config CXXCPP is defunct (it was deprecated in R 3.6.2).
  * parallel::detectCores() drops support for Irix (retired in 2013).
  * The LINPACK argument to chol.default(), chol2inv(),
    solve.default() and svd() has been defunct since R 3.1.0.  It was
    silently ignored up to R 4.0.3 but now gives an error.
  * Subsetting/indexing, such as ddd[*] or ddd$x on a DOTSXP
    (dot-dot-dot) object ddd has been disabled; it worked by accident
    only and was undocumented.
  BUG FIXES:
  * Many more C-level allocations (mainly by malloc and strdup) are
    checked for success with suitable alternative actions.
  * Bug fix for replayPlot(); this was turning off graphics engine
    display list recording if a recorded plot was replayed in the
    same session.  The impact of the bug became visible if resize the
    device after replay OR if attempted another savePlot() after
    replay (empty display list means empty screen on resize or empty
    saved plot).
  * R CMD check etc now warn when a package exports non-existing S4
    classes or methods, also in case of no "methods" presence.
    (Reported by Alex Bertram; reproducible example and patch by
    Sebastian Meyer in PR#16662.)
  * boxplot() now also accepts calls for labels such as ylab, the
    same as plot().  (Reported by Marius Hofert.)
  * The help page for xtabs() now correctly states that addNA is
    setting na.action = na.pass among others.  (Reported as PR#17770
    by Thomas Soeiro.)
  * The R CMD check &lt;pkg&gt; gives a longer and more comprehensible
    message when DESCRIPTION misses dependencies, e.g., in Imports:.
    (Thanks to the contributors of PR#17179.)
  * update.default() now calls the generic update() on the formula to
    work correctly for models with extended formulas.  (As reported
    and suggested by Neal Fultz in PR#17865.)
  * The horizontal position of leaves in a dendrogram is now correct
    also with center = FALSE.  (PR#14938, patch from Sebastian
    Meyer.)
  * all.equal.POSIXt() no longer warns about and subsequently ignores
    inconsistent "tzone" attributes, but describes the difference in
    its return value (PR#17277).  This check can be disabled _via_
    the new argument check.tzone = FALSE as suggested by Sebastian
    Meyer.
  * as.POSIXct() now populates the "tzone" attribute from its tz
    argument when x is a logical vector consisting entirely of NA
    values.
  * x[[2^31]] &lt;- v now works.  (Thanks to the report and patch by
    Suharto Anggono in PR#17330.)
  * In log-scale graphics, axis() ticks and label positions are now
    computed more carefully and symmetrically in their range,
    typically providing _more_ ticks, fulfilling wishes in PR#17936.
    The change really corresponds to an improved axisTicks() (package
    grDevices), potentially influencing grid and lattice, for
    example.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now correct to at
    least five digits where it was catastrophically wrong,
    previously.
  * sum(df) and similar "Summary"- and "Math"-group member functions
    now work for data frames df with logical columns, notably also of
    zero rows.  (Reported to R-devel by Martin "b706".)
  * unsplit() had trouble with tibbles due to unsound use of rep(NA,
    len)-indexing, which should use NA_integer_ (Reported to R-devel
    by Mario Annau.)
  * pnorm(x, log.p = TRUE) underflows to -Inf slightly later.
  * show(&lt;hidden S4 generic&gt;) prints better and without quotes for
    non-hidden S4 generics.
  * read.table() and relatives treated an "NA" column name as missing
    when check.names = FALSE PR#18007.
  * Parsing strings containing UTF-16 surrogate pairs such as
    "\uD834\uDD1E" works better on some (uncommon) platforms.
    sprintf("%X", utf8ToInt("\uD834\uDD1E")) should now give "1D11E"
    on all platforms.
  * identical(x,y) is no longer true for differing DOTSXP objects,
    fixing PR#18032.
  * str() now works correctly for DOTSXP and related exotics, even
    when these are doomed.
    Additionally, it no longer fails for lists with a class and
    "irregular" method definitions such that e.g. lapply(*) will
    necessarily fail, as currently for different igraph objects.
  * Too long lines in environment files (e.g. Renviron) no longer
    crash R. This limit has been increased to 100,000 bytes.
    (PR#18001.)
  * There is a further workaround for FreeType giving incorrect
    italic font faces with cairo-based graphics devices on macOS.
  * add_datalist(*, force = TRUE) (from package tools) now actually
    updates an existing data/datalist file for new content.  (Thanks
    to a report and patch by Sebastian Meyer in PR#18048.)
  * cut.Date() and cut.POSIXt() could produce an empty last interval
    for breaks = "months" or breaks = "years".  (Reported as PR#18053
    by Christopher Carbone.)
  * Detection of the encoding of 'regular' macOS locales such as
    en_US (which is UTF-8) had been broken by a macOS change:
    fortunately these are now rarely used with en_US.UTF-8 being
    preferred.
  * sub() and gsub(pattern, repl, x, *) now keep attributes of x such
    as names() also when pattern is NA (PR#18079).
  * Time differences ("difftime" objects) get a replacement and a
    rep() method to keep "units" consistent.  (Thanks to a report and
    patch by Nicolas Bennett in PR#18066.)
  * The \RdOpts macro, setting defaults for \Sexpr options in an Rd
    file, had been ineffective since R 2.12.0: it now works again.
    (Thanks to a report and patch by Sebastian Meyer in PR#18073.)
  * mclapply and pvec no longer accidentally terminate parallel
    processes started before by mcparallel or related calls in
    package parallel (PR#18078).
  * grep and other functions for evaluating (extended) regular
    expressions handle in Unicode also strings not explicitly flagged
    UTF-8, but flagged native when running in UTF-8 locale.
  * Fixed a crash in fifo implementation on Windows (PR#18031).
  * Binary mode in fifo on Windows is now properly detected from
    argument open (PR#15600, PR#18031).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1622808000">- The line %{__install} -m 755 -d %{_infodir}
  no longer works in TW or Factory.
  But without that line it works everywhere. So this instruction
  was commented out of the spec file.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1628596800">- CHANGES IN R 4.1.1:
  NEW FEATURES:
  * require(pkg, quietly = TRUE) is quieter and in particular does
    not warn if the package is not found.
  DEPRECATED AND DEFUNCT:
  * Use of ftp:// URIs should be regarded as deprecated, with
    on-going support confined to method = "libcurl" and not routinely
    tested.  (Nowadays no major browser supports them.)
  * The non-default method = "internal" is deprecated for http:// and
    ftp:// URIs for both download.file and url.
  * On Windows, method = "wininet" is deprecated for http://,
    https:// and ftp:// URIs for both download.file and url.  (A
    warning is only given for ftp://.)
    For ftp:// URIs the default method is now "libcurl" if available
    (which it is on CRAN builds).
    method = "wininet" remains the default for http:// and https://
    URIs but if libcurl is available, using method = "libcurl" is
    preferred.
  INSTALLATION:
  * make check now works also without a LaTeX installation.  (Thanks
    to Sebastian Meyer's PR#18103.)
  BUG FIXES:
  * make check-devel works again in an R build configured with
  - -without-recommended-packages.
  * qnbinom(p, size, mu) for large size/mu is correct now in a range
    of cases (PR#18095); similarly for the (size, prob)
    parametrization of the negative binomial.  Also qpois() and
    qbinom() are better and or faster for extreme cases.  The
    underlying C code has been modularized and is common to all four
    cases of discrete distributions.
  * gap.axis is now part of the axis() arguments which are passed
    from bxp(), and hence boxplot().  (Thanks to Martin Smith's
    report and suggestions in PR#18109.)
  * .First and .Last can again be set from the site profile.
  * seq.int(from, to, *) and seq.default(..) now work better in large
    range cases where from-to is infinite where the two boundaries
    are finite.
  * all.equal(x,y) now returns TRUE correctly also when several
    entries of abs(x) and abs(y) are close to .Machine$double.xmax,
    the largest finite numeric.
  * model.frame() now clears the object bit when removing the class
    attribute of a value via na.action (PR#18100).
  * charClass() now works with multi-character strings on Windows
    (PR#18104, fixed by Bill Dunlap).
  * encodeString() on Solaris now works again in Latin-1 encoding on
    characters represented differently in UTF-8.  Support for
    surrogate pairs on Solaris has been improved.
  * file.show() on Windows now works with non-ASCII path names
    representable in the current native encoding (PR#18132).
  * Embedded R on Windows can now find R home directory via the
    registry even when installed only for the current user
    (PR#18135).
  * pretty(x) with finite x now returns finite values also in the
    case where the extreme x values are close in size to the maximal
    representable number .Machine$double.xmax.
    Also, it's been tweaked for very small ranges and when a boundary
    is close (or equal) to zero; e.g., pretty(c(0,1e-317)) no longer
    has negative numbers, currently still warning about a very small
    range, and pretty(2^-(1024 - 2^-1/(c(24,10)))) is more accurate.
  * The error message for not finding vignette files when weaving has
    correct file sizes now. (Thanks to Sebastian Meyer's PR#18154.)
  * dnbinom(20, &lt;large&gt;, 1) now correctly gives 0, and similar cases
    are more accurate with underflow precaution.  (Reported by Francisco Vera Alcivar in PR#18072.)</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635163200">- repaired https://bugzilla.suse.com/show_bug.cgi?id=1191380
  (rpmacros now go to rpmmacrodir)
- minor clean-ups in spec file</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635768000">- CHANGES IN R 4.1.2:
  C-LEVEL FACILITIES:
  * The workaround in headers R.h and Rmath.h (using namespace std;)
    for the Oracle Developer Studio compiler is no longer needed now
    C++11 is required so has been removed.  A couple more usages of
    log() (which should have been std::log()) with an int argument
    are reported on Solaris.
  * The undocumented limit of 4095 bytes on messages from the
    S-compatibility macros PROBLEM and MESSAGE is now documented and
    longer messages will be silently truncated rather than
    potentially causing segfaults.
  * If the R_NO_SEGV_HANDLER environment variable is non-empty, the
    signal handler for SEGV/ILL/BUS signals (which offers recovery
    user interface) is not set. This allows more reliable debugging
    of crashes that involve the console.
  DEPRECATED AND DEFUNCT:
  * The legacy S-compatibility macros PROBLEM, MESSAGE, ERROR, WARN,
    WARNING, RECOVER, ... are deprecated and will be hidden in R
    4.2.0. R's native interface of Rf_error and Rf_warning has long
    been preferred.
  BUG FIXES:
  * .mapply(F, dots, .) no longer segfaults when dots is not a list
    and uses match.fun(F) as always documented; reported by Andrew
    Simmons in PR#18164.
  * hist(&lt;Date&gt;, ...) and hist(&lt;POSIXt&gt;, ...)  no longer pass
    arguments for rect() (such as col and density) to axis().
    (Thanks to Sebastian Meyer's PR#18171.)
  * \Sexpr{ch} now preserves Encoding(ch). (Thanks to report and
    patch by Jeroen Ooms in PR#18152.)
  * Setting the RNG to "Marsaglia-Multicarry" e.g., by RNGkind(), now
    warns in more places, thanks to Andr'e Gillibert's report and
    patch in PR#18168.
  * gray(numeric(), alpha=1/2) no longer segfaults, fixing PR#18183,
    reported by Till Krenz.
  * Fixed dnbinom(x, size=&lt;very_small&gt;, .., log=TRUE) regression,
    reported by Martin Morgan.
  * as.Date.POSIXlt(x) now keeps names(x), thanks to Davis Vaughan's
    report and patch in PR#18188.
  * model.response() now strips an "AsIs" class typically, thanks to
    Duncan Murdoch's report and other discussants in PR#18190.
  * try() is considerably faster in case of an error and long call,
    as e.g., from some do.call().  Thanks to Alexander Kaever's
    suggestion posted to R-devel.
  * qqline(y = &lt;object&gt;) such as y=I(.), now works, see also
    PR#18190.
  * Non-integer mgp par() settings are now handled correctly in
    axis() and mtext(), thanks to Mikael Jagan and Duncan Murdoch's
    report and suggestion in PR#18194.
  * formatC(x) returns length zero character() now, rather than ""
    when x is of length zero, as documented, thanks to Davis
    Vaughan's post to R-devel.
  * removeSource(fn) now retains (other) attributes(fn).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1647000000">- CHANGES IN R 4.1.3:
  NEW FEATURES:
  * The default version of Bioconductor has been changed to 3.14.
    (This is used by setRepositories and the menus in GUIs.)
  UTILITIES:
  * R CMD check --as-cran has a workaround for a bug in versions of
    file up to at least 5.41 which mis-identify DBF files last
    changed in 2022 as executables.
  C-LEVEL FACILITIES:
  * The legacy S-compatibility macros SINGLE_* in R_ext/Constants.h
    (included by R.h) are deprecated and will be removed in R 4.2.0.
  BUG FIXES:
  * Initialization of self-starting nls() models with initialization
    functions following the pre-R-4.1.0 API (without the ...
    argument) works again for now, with a deprecation warning.
  * Fixed quoting of ~autodetect~ in Java setting defaults to avoid
    inadvertent user lookup due to leading ~, reported in PR#18231 by
    Harold Gutch.
  * substr(., start, stop) &lt;- v now treats _negative_ stop values
    correctly.  Reported with a patch in PR#18228 by Brodie Gaslam.
  * Subscripting an array x without dimnames by a
    length(dim(x))-column character matrix gave "random" non-sense,
    now an error; reported in PR#18244 by Mikael Jagan.
  * ...names() now matches names(list(...)) closely, fixing PR#18247.
  * all.equal(*, scale = s) now works as intended when length(s) &gt; 1,
    partly thanks to Michael Chirico's PR#18272.
  * print(x) for long vectors x now also works for named atomic
    vectors or lists and prints the correct number when reaching the
    getOption("max.print") limit; partly thanks to a report and
    proposal by Hugh Parsonage to the R-devel list.
  * all.equal(&lt;selfStart&gt;, *) no longer signals a deprecation
    warning.
  * reformulate(*, response=r) gives a helpful error message now when
    length(r) &gt; 1, thanks to Bill Dunlap's PR#18281.
  * Modifying globalCallingHandlers inside withCallingHandlers() now
    works or fails correctly, thanks to Henrik Bengtsson's PR#18257.
  * hist(&lt;Date&gt;, breaks = "days") and hist(&lt;POSIXt&gt;, breaks = "secs")
    no longer fail for inputs of length 1.
  * qbeta(.001, .9, .009) and similar cases now converge correctly
    thanks to Ben Bolker's report in PR#17746.
  * window(x, start, end) no longer wrongly signals "'start' cannot
    be after 'end'", fixing PR#17527 and PR#18291.
  * data() now checks that its (rarely used) list argument is a
    character vector - a couple of packages passed other types and
    gave incorrect results.
  * which() now checks its arr.ind argument is TRUE rather coercing
    to logical and taking the first element - which gave incorrect
    results in package code.
  * model.weights() and model.offset() more carefully extract their
    model components, thanks to Ben Bolker and Tim Taylor's R-devel
    post.
  * list.files(recursive = TRUE) now shows all broken symlinks
    (previously, some of them may have been omitted, PR#18296).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1650628800">- CHANGES IN R 4.2.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * The formula method of aggregate() now matches the generic in
    naming its first argument x (resolving PR#18299 by Thomas
    Soeiro).
    This means that calling aggregate() with a formula as a named
    first argument requires name formula in earlier versions of R and
    name x now, so portable code should not name the argument (code
    in many packages did).
  * Calling &amp;&amp; or || with either argument of length greater than one
    now gives a warning (which it is intended will become an error).
  * Calling if() or while() with a condition of length greater than
    one gives an error rather than a warning.  Consequently,
    environment variable _R_CHECK_LENGTH_1_CONDITION_ no longer has
    any effect.
  * Windows users should consult the WINDOWS section below for some
    profound changes including
  * Support for 32-bit builds has been dropped.
  * UTF-8 locales are used where available.
  * The default locations for the R installation and personal
    library folder have been changed.
    Thanks to Tomas Kalibera for months of work on the Windows port
    for this release.
  NEW FEATURES:
  * matrix(x, n, m) now warns in more cases where length(x) differs
    from n * m, as suggested by Abby Spurdle and Wolfgang Huber in
    Feb 2021 on the R-devel mailing list.
    This warning can be turned into an error by setting environment
    variable _R_CHECK_MATRIX_DATA_ to TRUE: R CMD check --as-cran
    does so unless it is already set.
  * Function file_test() in package utils gains tests for symlinks,
    readability and writability.
  * capabilities("libxml") is now false.
    The description of capabilities("http/ftp") now reflects that it
    refers to the default method, no longer the internal one.
  * simplify2array() gains an except argument for controlling the
    exceptions used by sapply().
  * Environment variables R_LIBS_USER and R_LIBS_SITE are both now
    set to the R system default if unset or empty, and can be set to
    NULL to indicate an empty list of user or site library
    directories.
  * The warning for axis()(-like) calls in cases of relatively small
    ranges (typically in log-scale situations) is slightly improved
    _and_ suppressed from explicit calls to .axisPars() as has always
    been the intention.
  * The contrasts setter function `contrasts&lt;-` gains an explicit
    default how.many = NULL rather than just using missing(how.many).
  * grid.pretty() gains a new optional argument n = 5.
  * There is a new function .pretty() with option bounds as a
    technical-utility version of pretty().  It and pretty() gain a
    new argument f.min with a better than back-compatible default.
  * Function grDevices::axisTicks() and related functions such as
    graphics::axis() work better, notably for the log scale; partly
    because of the pretty() improvements, but also because care is
    taken e.g., when ylim is finite but diff(ylim) is infinite.
  * nclass.FD() gains a digits option.
  * The R Mathlib internal C function bd0() (called indirectly from a
    dozen probability density and distribution functions such as
    dpois(), dbinom(), dgamma(), pgamma() _etc_) has been
    complemented by a more sophisticated and (mostly) more accurate C
    function ebd0(), currently called only by internal dpois_raw()
    improving accuracy for R level dpois() and potentially others
    calling it such as dnbinom(), dgamma() or pgamma().  (Thanks to
    Morten Welinder's PR#15628.)
  * write.ftable() gains sep = " " argument as suggested by Thomas
    Soeiro.
  * The names of the locale categories supported by R's
    Sys.getlocale() and Sys.setlocale() are now provided by variable
    .LC.categories in the base namespace.
  * The Date and POSIXt methods for hist() and the histogram method
    for plot() now also use the new default col = "lightgray" in
    consistency with the corresponding change to hist()'s default for
    R 4.0.0.
  * hist.default() gains new fuzz argument, and the histogram plot
    method no longer uses fractional axis ticks when displaying
    counts ("Frequency").
  * mapply() and hence Map() now also obey the "max-or-0-if-any"
    recycling rule, such that, e.g., Map(`+`, 1:3, 1[0]) is valid
    now.
  * as.character(&lt;obj&gt;) for "hexmode" or "octmode" objects now
    fulfils the important basic rule as.character(x)[j] ===
    as.character(x[j]).
  * The set utility functions, notably intersect() have been tweaked
    to be more consistent and symmetric in their two set arguments,
    also preserving a common mode.
  * substr(ch, start,end) &lt;- new now e.g., preserves names(ch); ditto
    for substring(), thanks to a patch from Brodie Gaslam.
  * plot(&lt;lm&gt;) gains a extend.ylim.f argument, in partial response to
    PR#15285; further PR#17784 is fixed thanks to several
    contributors and a patch by Elin Waring.  The Cook's dist
    contours get customizable via cook.col and cook.lty with a
    different default color and their legend is nicer by default and
    customizable via cook.legendChanges.
  * Attempting to subset an object that is not subsettable now
    signals an error of class notSubsettableError. The
    non-subsettable object is contained in the object field of the
    error condition.
  * Subscript-out-of-bounds errors are now signaled as errors of
    class subscriptOutOfBoundsError.
  * Stack-overflow errors are now signaled as errors inheriting from
    class stackOverflowError. See ?stackOverflowError for more
    details.
  * New partly experimental Sys.setLanguage() utility, solving the
    main problem of PR#18055.
  * gettext() and gettextf() get a new option trim = TRUE which when
    set to false allows translations for strings such as "Execution
    halted\n" typical for C code.
  * An experimental implementation of hash tables is now available.
    See ?hashtab for more details.
  * identical() gains a extptr.as.ref argument for requesting that
    external pointer objects be compared as reference objects.
  * reorder() gets an argument decreasing which it passes to sort()
    for level creation; based on the wish and patch by Thomas Soeiro
    in PR#18243.
  * as.vector() gains a data.frame method which returns a simple
    named list, also clearing a long standing 'FIXME' to enable
    as.vector(&lt;data.frame&gt;, mode="list").  This breaks code relying
    on as.vector(&lt;data.frame&gt;) to return the unchanged data frame.
  * legend() is now vectorized for arguments cex, x.intersp, and
    text.width.  The latter can now also be specified as a vector
    (one element for each column of the legend) or as NA for
    computing a proper column wise maximum value of strwidth(legend).
    The argument y.intersp can be specified as a vector with one
    entry for each row of the legend.
    legend() also gains new arguments title.cex and title.font.
    Thanks to Swetlana Herbrandt.
  * Deparsing no longer remaps attribute names dim, dimnames, levels,
    names and tsp to historical S-compatible names (which structure()
    maps back).
  * sample() and sample.int() have additional sanity checks on their
    size and n arguments.
    all.equal.numeric() gains a sanity check on its tolerance
    argument - calling all.equal(a, b, c) for three numeric vectors
    is a surprisingly common error.
    mean(na.rm =), rank(na.last =), barplot(legend.text =),
    boxplot(), contour(drawlabels =), polygon(border =) and
    methods::is(class2 =) have more robust sanity checks on their
    arguments.
    R CMD Rd2pdf (used by R CMD check) has a more robust sanity check
    on the format of \alias{} commands.
  * psigamma(x, deriv) for negative x now also works for deriv = 4
    and 5; their underlying C level dpsifn() is documented in
    'Writing R Extensions'.
  * The HTML help system now uses HTML5 (wish of PR#18149).
  * ks.test() now provides exact p-values also with ties and MC
    p-values in the two-sample (Smirnov) case.  By Torsten Hothorn.
  * ks.test() gains a formula interface, with y ~ 1 for the
    one-sample (Kolmogorov) test and y ~ group for the two-sample
    (Smirnov) test.  Contributed by Torsten Hothorn.
  * The return value from ks.test() now has class c("ks.test",
    "htest") - packages using try() need to take care to use
    inherits() and not == on the class.
  * New functions psmirnov(), qsmirnov() and rsmirnov() in package
    stats implementing the asymptotic and exact distributions of the
    two-sample Smirnov statistic.
  * iconv() now allows sub = "c99" to use C99-style escapes for UTF-8
    inputs which cannot be converted to encoding to.
  * In a forward pipe |&gt; expression it is now possible to use a named
    argument with the placeholder _ in the rhs call to specify where
    the lhs is to be inserted.  The placeholder can only appear once
    on the rhs.
  * The included LAPACK sources have been updated to version 3.10.0,
    except for the four Fortran 77 routines which 3.10.0 has
    re-implemented in Fortran 90 (where the older versions have been
    retained as the R build process does not support Fortran 90).
  * path.expand() and most other uses of tilde expansion now warn if
    a path would be too long if expanded.  (An exception is
    file.exists(), which silently returns false.)
  * trunc(&lt;Date&gt;, *) now supports units = "months" or "years" for
    consistency with the POSIXt method, thanks to Dirk Eddelbuettel's
    proposal in PR#18099.
  * list2DF() now checks that its arguments are of the same length,
    rather than use recycling.
  * The HTML help system has several new features: LaTeX-like math
    can be typeset using either KaTeX or MathJax, usage and example
    code is highlighted using Prism, and for dynamic help the output
    of examples and demos can be shown within the browser if the
    knitr package is installed. These features can be disabled by
    setting the environment variable _R_HELP_ENABLE_ENHANCED_HTML_ to
    a false value.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 15
    and so packages that provide graphics devices should be
    reinstalled.
  * The grid package now allows the user to specify a "vector" of
    pattern fills.  The fill argument to gpar() accepts a list of
    gradients and/or patterns and the functions linearGradient(),
    radialGradient(), and pattern() have a new group argument.
    Points grobs (data symbols) can now also have a pattern fill.
    The grobCoords() function now returns a more informative and
    complex result.
  * The grid package has new functions for drawing isolated groups:
    grid.group(), grid.define(), and grid.use().  These functions add
    compositing operators and affine transformations to R's graphics
    capabilities.
    The grid package also has new functions for stroking and filling
    paths: grid.stroke(), grid.fill(), and grid.fillStroke().
    A new function as.path() allows the user to specify the fill rule
    for a path that is to be used for clipping, stroking, or filling;
    available options are "winding" and "evenodd".  A new function
    as.mask() allows the user to specify the type of a mask;
    available options are "alpha" and "luminance".
    These new features are only supported so far (at most) on the
    Cairo-based graphics devices and on the pdf() device.
  * dev.capabilities() reports on device support for the new
    features.
  * par() now warns about unnamed non-character arguments to prevent
    misuse such as {usr &lt;- par("usr"); par(usr)}.
  INSTALLATION:
  * Facilities for accessing ftp:// sites are no longer tested
    (except _pro tem_ for curlGetHeaders()) as modern browsers have
    removed support.
  * R can now be built with DEFS = -DSTRICT_R_HEADERS .
  PACKAGE INSTALLATION:
  * R CMD INSTALL no longer tangles vignettes. This completes an R
    CMD build change in R 3.0.0 and affects packages built before R
    3.0.2. Such packages should be re-made with R CMD build to have
    the tangled R code of vignettes shipped with the tarball.
  * USE_FC_LEN_T will become the default: this uses the correct
    prototypes for Fortran BLAS/LAPACK routines called from C/C++,
    and requires adjustment of most such calls - see 'Writing R
    Extensions' SS6.6.2.  (This has been supported since R 3.6.2.)
  * Package installation speed for packages installed with
    keep.source has been improved. This resolve the issue reported by
    Ofek Shilon in PR#18236.
  UTILITIES:
  * R CMD check can optionally report files/directories left behind
    in home, /tmp (even though TMPDIR is set) and other directories.
    See the "R Internals" manual for details.
  * R CMD check now reports byte-compilation errors during
    installation.  These are not usually fatal but may result in
    parts of the package not being byte-compiled.
  * _R_CHECK_DEPENDS_ONLY_ can be applied selectively to examples,
    tests and/or vignettes in R CMD check: see the "R Internals"
    manual.
  * _R_CHECK_SRC_MINUS_W_IMPLICIT_ now defaults to true: recent
    versions of Apple clang on macOS have made implicit function
    declarations in C into a compilation error.
  * R CMD check --as-cran makes use of the environment variable
    AUTORECONF.  See the "R Internals" manual SS8 for further details.
  * R CMD check --use-valgrind also uses valgrind when re-building
    vignettes as some non-Sweave vignettes unhelpfully comment out
    all their code when R CMD check runs vignettes.
  * Errors in re-building vignettes (unless there are LaTeX errors)
    are reported by R CMD check as ERROR rather than WARNING when
    running vignettes has been skipped (as it frequently is in CRAN
    checks and by --as-cran).
  * R CMD Rd2pdf gains a --quiet option that is used by R CMD build
    when building the PDF package manual.
  * R CMD Rd2pdf now always runs LaTeX in batch mode, consistent with
    Texinfo &gt;= 6.7. The --batch option is ignored.
  * R CMD build and R CMD check now include the Rd file name and line
    numbers in the error message of an \Sexpr evaluation failure.
  * For packages using the \doi Rd macro (now an install-time \Sexpr)
    but no other dynamic Rd content, R CMD build now produces a
    smaller tarball and is considerably faster - skipping temporary
    package installation.
  C-LEVEL FACILITIES:
  * The non-API header R_ext/R-ftp-http.h is no longer provided, as
    the entry points it covered are now all defunct.
  * A number of non-API declarations and macro definitions have been
    moved from the installed header Rinternals.h to the internal
    header Defn.h. Packages that only use entry points and
    definitions documented to be part of the API as specified in
    'Writing R Extensions' SS6 should not be affected.
  * The macro USE_RINTERNALS no longer has any effect when compiling
    package code.  Packages which also use R_NO_REMAP will need to
    ensure that the remapped names are used for calls to API
    functions that were formerly also made available as macros.
  * The deprecated legacy S-compatibility macros PROBLEM, MESSAGE,
    ERROR, WARN, WARNING, RECOVER, ... are no longer defined in
    R_exts/RS.h (included by R.h).  Replace these by calls to
    Rf_error and Rf_warning (defined in header R_ext/Error.h included
    by R.h).
    Header R_ext/RS.h no longer includes R_ext/Error.h.
  * Header R_ext/Constants.h (included by R.h) when included from C++
    now includes the C++ header cfloat rather than the C header
    float.h (now possible as C++11 is required).
  * The legacy S-compatibility macros DOUBLE_* in R_ext/Constants.h
    (included by R.h) are deprecated.
  * The deprecated S-compatibility macros SINGLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * R_Calloc, R_Free and R_Realloc are preferred to their unprefixed
    forms and error messages now use the prefix. These forms were
    introduced in R 3.4.0 and are available even when
    STRICT_R_HEADERS is defined.
  * rmultinom has been documented in 'Writing R Extensions' SS6 so is
    now part of the R API.
  * Similarly, Rtanpi, called from R level tanpi() is now part of the
    R API.
  * The long-deprecated, undocumented and non-API entry point call_R
    is no longer declared in R_ext/RS.h (included by R.h).
  * The header S.h which has been unsupported since Jan 2016 has been
    removed.  Use R.h instead.
  DEPRECATED AND DEFUNCT:
  * The (non-default and deprecated) method = "internal" for
    download.file() and url() no longer supports http:// nor ftp://
    URIs.  (It is used only for file:// URIs.)
    On Windows, download.file(method = "wininet") no longer supports
    ftp:// URIs.  (It is no longer the default method, which is
    "libcurl" and does.)
    On Windows, the deprecated method = "wininet" now gives a warning
    for http:// and https:// URIs for both download.file() and url().
    (It is no longer the default method.)
  * On Windows, the command-line option --max-mem-size and
    environment variable R_MAX_MEM_SIZE are defunct.  The memory
    allocation limit was important for 32-bit builds, but these are
    no longer supported.
  * default.stringsAsFactors() is now formally deprecated, where that
    was only mentioned on its regular help page, previously.  So it
    now gives a warning if called.
  * unix.time() is defunct now; it had been deprecated since R 3.4.0.
  BUG FIXES:
  * Setting digits = 0 in format(), print.default() (and hence
    typically print()) or options() is again invalid.  Its behaviour
    was platform-dependent, and it is unclear what "zero significant
    digits" should mean (PR#18098).
  * Messages from C code in the cairo section of package grDevices
    are now also offered for translation, thanks to Michael Chirico's
    PR#18123.
  * mean(x) with finite x now is finite also without "long.double"
    capability.
  * R CMD Rd2pdf no longer leaves an empty build directory behind
    when it aborts due to an already existing output file.  (Thanks
    to Sebastian Meyer's PR#18141.)
  * density(x, weights = w, na.rm = TRUE) when anyNA(x) is true, now
    removes weights "in parallel" to x, fixing PR#18151, reported by
    Matthias Gondan.  Additionally, it gets a subdensity option.
  * Conversion of \Sexpr[]{&lt;expR&gt;} to LaTeX or HTML no longer
    produces long blocks of empty lines when &lt;expR&gt; itself contains
    several lines all producing empty output.  Thanks to a report and
    patch by Ivan Krylov posted to R-devel.
  * R CMD build no longer fails if a package vignette uses child
    documents and inst/doc exists.  (Thanks to Sebastian Meyer's
    PR#18156.)
  * When an R documentation ('help' source) file man/foo.Rd in a
    package has \donttest{..} examples with a syntax error, it is now
    signalled as ERROR and with correct line numbers relating to the
  * -Ex.R file, thanks to Duncan Murdoch and Sebastian Meyer's
    reports and patch proposals in PR#17501.
  * Improved determination of the correct translation domain in
    non-base packages, addressing the combination of PR#18092 and
    PR#17998 (#c6) with reports and _augmented_ patch #2904 by
    Suharto Anggono.
    Note that "R-base" is no longer the default domain e.g., for
    top-level calls to gettext(); rather translation needs explicit
    domain = * specification in such cases.
  * identical(attrib.as.set=FALSE) now works correctly with data
    frames with default row names (Thanks to Charlie Gao's PR#18179).
  * txtProgressBar() now enforces a non-zero width for argument char,
    without which no progress can be visible.
  * dimnames(table(d)) is more consistent in the case where d is a
    list with a single component, thanks to Thomas Soeiro's report to
    R-devel.
    Further, table(d1, d2) now gives an error when d1 and d2 are data
    frames as suggested by Thomas in PR#18224.
  * Fix for drawing semi-transparent lines and fills on the native
    Windows graphics device (PR#18219 and PR#16694).  Thanks to Nick
    Ray for helpful diagnosis on Bugzilla.
  * The deparser now wraps sub-expressions such as if(A) ..  with
    parentheses when needed; thanks to Duncan Murdoch's PR#18232 and
    Lionel Henry's patches there.
  * remove.packages() no longer tries to uninstall Priority: base
    packages, thanks to a report and suggestions by Colin Fay in
    PR#18227.
  * win.metafile() now has xpinch and ypinch arguments so that the
    user can override Windows' (potentially wrong) guess at device
    dimensions.
  * x[i] and x[[i]] for non-integer i should now behave in all cases
    as always documented: the index used is equivalent to
    as.integer(i) unless that would overflow where trunc(i) is used
    instead; thanks to Suharto Anggono's report and patch proposals
    in PR#17977.
  * asOneSidedFormula() now associates the resulting formula with the
    global environment rather than the evaluation environment created
    for the call.
  * &lt;bibentry&gt;$name now matches the field name case-insensitively,
    consistent with bibentry() creation and the replacement method.
  * cbind() failed to detect some length mismatches with a mixture of
    time-series and non-time-series inputs.
  * The default LaTeX style file Sweave.sty used by the RweaveLatex
    driver no longer loads the obsolete ae package; thanks to a
    report by Thomas Soeiro in PR#18271.  Furthermore, it now skips
    \usepackage[T1]{fontenc} for engines other than pdfTeX (if
    detected) or if the new [nofontenc] option is used.
  * smooth.spline() now stores its logical cv argument more safely,
    fixing a rare bug when printing, and also stores n.
  * smooth.spline(x,y,*) now computes the cv.crit statistic
    correctly, also when is.unsorted(x), fixing PR#18294.
  * The data.frame method of rbind() now warns when binding
    not-wholly-recycling vectors, by analogy to the default method
    (for matrices).
  * setAs() finds the correct class for name to when multiple
    packages define a class with that name. Thanks to Gabor Csardi
    for the report.
  * Fix for detaching a package when two classes of the same name are
    present in method signatures for the same generic. Thanks to
    Gabor Csardi for the report.
  * match.arg("", c("", "a", "B")) gives a better error message, in
    part from PR#17959, thanks to Elin Waring.
  * R CMD Sweave --clean no longer removes pre-existing files or
    subdirectories (PR#18242).
  * The quartz() device no longer splits polylines into subpaths.
    That has caused narrowly-spaced lines with many points to always
    look solid even when dashed line type was used due to dash phase
    restarts.
  * Deparsing constructs such as quote(1 + `!`(2) + 3) works again as
    before R 3.5.0, thanks to the report and patch in PR#18284 by
    Suharto Anggono.
  * as.list(f) for a factor f now keeps names(f), fixing PR#18309.
  * qbeta(.001, .9, .009) and analogous qf() calls now return a
    correct value instead of NaN or wrongly 1, all with a warning;
    thanks to the report by Ludger Goeminne in PR#18302.
  * plot.lm() failed to produce the plot of residuals vs.  factor
    levels (i.e., which=5 when leverages are constant) for models
    with character predictors (PR#17840).
  * interaction.plot(..., xtick = TRUE) misplaced the x-axis line
    (PR#18305).
  * Not strictly fixing a bug, format()ing and print()ing of
    non-finite Date and POSIXt values NaN and +/-Inf no longer show
    as NA but the respective string, e.g., Inf, for consistency with
    numeric vector's behaviour, fulfilling the wish of PR#18308.
  * R CMD check no longer runs test scripts generated from
    corresponding .Rin files twice and now signals an ERROR if
    processing an .Rin script fails.
  * tools::Rd2txt() used for plain-text help pages now renders \hrefs
    (if tools::Rd2txt_options(showURLs = TRUE)) and \urls with
    percent-encoding and standards-compliant delimiting style (angle
    brackets and no URL: prefix).  \email is now rendered with a
    mailto: prefix.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1655985600">- CHANGES IN R 4.2.1:
  NEW FEATURES:
  * New function utils::findCRANmirror() to find out if a CRAN mirror
    has been selected, otherwise fallback to the main site.  This
    behaves in the same way as tools::CRAN_package_db() and is
    intended for packages wishing to access CRAN for purposes other
    than installing packages.
    The need for this was shown by a day when the main CRAN website
    was offline and a dozen or so packages which had its URL
    hardcoded failed their checks.
  INSTALLATION on a UNIX-ALIKE:
  * The libraries searched for by --with-blas (without a value) now
    include BLIS (after OpenBLAS but before ATLAS).  And on macOS,
    the Accelerate framework (after ATLAS).  (This is patterned after
    the AX_BLAS macro from the Autoconf Archive.)
  * The included LAPACK sources have been updated to 3.10.1.
  UTILITIES:
  * The (full path to) the command tidy to be used for HTML
    validation can be set by environment variable R_TIDYCMD.
  * Setting environment variable _R_CHECK_RD_VALIDATE_RD2HTML_ to a
    false value will override R CMD check --as-cran and turn off HTML
    validation.  This provides a way to circumvent a problematic
    tidy.
    The 2006 version that ships with macOS is always skipped.
  C-LEVEL FACILITIES:
  * The undocumented legacy declarations of Sint, Sfloat, SINT_MAX
    and SINT_MIN in header R.h are deprecated.
  BUG FIXES:
  * fisher.test(d) no longer segfaults for "large" d; fixing PR#18336
    by preventing/detecting an integer overflow reliably.
  * tar(., files=*) now produces correctly the warning about invalid
    uid or gid of files, fixing PR#18344, reported by Martin Morgan.
  * tk_choose.files() with multi = FALSE misbehaved on paths
    containing spaces (PR#18334) (regression introduced in R 4.0.0).
  * sort(x, partial = ind, *) now works correctly notably for the
    non-default na.last = FALSE or TRUE, fixing PR#18335 reported by
    James Edwards.
  * Environment variable _R_CHECK_XREFS_REPOSITORIES_ is only used
    for checking .Rd cross-references in R CMD check (as documented)
    and not for other uses looking for a CRAN mirror.
  * The search for a CRAN mirror when checking packages now uses
    getOption("repos") if that specifies a CRAN mirror, even when it
    does not also specify all three Bioconductor repositories (as was
    previously required).
  * The HTML code generated by tools::Rd2HTML() has been improved to
    pass tidy 5.8.0.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1667217600">- CHANGES IN R 4.2.2:
  NEW FEATURES:
  * tools::Rdiff(useDiff = TRUE) checks for the presence of an
    external diff command and switches to useDiff = FALSE if none is
    found.  This allows R CMD Rdiff to always work.
  * On Windows, environment variable R_LIBCURL_SSL_REVOKE_BEST_EFFORT
    can be used to switch to only 'best-effort' SSL certificate
    revocation checks with the default "libcurl" download method.
    This reduces security, but may be needed for downloads to work
    with MITM proxies (PR#18379).
  * (macOS) The run-time check for libraries from XQuartz for X11 and
    Tcl/Tk no longer uses otool from the Apple Developer Tools
    (PR#18400).
  * The LaTeX style for producing the PDF manuals, Rd.sty, now loads
    the standard amsmath, amsfonts and amssymb packages for greater
    coverage of math commands in the Rd \eqn and \deqn macros.  The
    \mathscr LaTeX command is also provided (via the mathrsfs
    package, if available, or the amsfonts bundle otherwise),
    fulfilling the wish of PR#18398.
  * (Windows) The default format of readClipboard() and
    writeClipboard() has been changed to 13 (CF_UNICODETEXT).
  INSTALLATION on a UNIX-ALIKE:
  * The PDF manuals (if built) can be compacted by the new target
    make compact-pdf (at the top level or in directory doc/manual).
  * There is now configure support for LLVM clang 15 on Linux, which
    defaults to position-independent (PIE) executables whereas
    gfortran does not.
  * Many small changes to ease compilation (and suppress warnings)
    with LLVM clang 15.
  BUG FIXES:
  * Rscript -e would fail if stdin were closed (Reported by Henrik
    Bengtsson.)
  * qt(*, log.p=TRUE) in outer tails no longer produces NaN in its
    final steps, thus fixing PR#18360.
  * tools::Rd2latex() now escapes hashes and ampersands when writing
    URLs, fixing LaTeX errors with such URLs in \tabular.
  * When isGeneric(f, fdef=*) is used with mismatching names, the
    warning is better understandable; reported (with fix) in PR#18370
    by Gabe Becker.
  * poly(x, n) now works again (and is now documented) when x is a
    "Date" or "POSIXct" object, or of another class while fulfilling
    mode(x) == "numeric".  This also enables poly(x, *, raw=TRUE) for
    such variables.  Reported by Michael Chirico to R-devel.
  * write.table(), write.csv() and write.csv2() restore their
    numerical precision (internal equivalent of digits = 15) after an
    interrupt (PR#18384).
  * One can now read also byte FF from a clipboard connection
    (PR#18385).
  * source("") and source(character()) now give more helpful error
    messages.
  * R CMD check --as-cran set _R_CHECK_TIMINGS_ too late to have the
    intended effect.
  * as.POSIXlt(x) now also works with very large dates x, fixing
    PR#18401 reported by Hannes M"uhleisen.
  * Files can now be extracted even from very large zip archives
    (PR#18390, thanks to Martin Jakt).
  * Non-finite objects of class "POSIXlt" are now correctly coerced
    to classes "Date" and "POSIXct"; following up on the extension to
    format() them correctly.
  * Added methods for is.finite(), is.infinite() and is.nan() for
    "POSIXlt" date-time objects.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1678881600">- CHANGES IN R 4.2.3:
  C-LEVEL FACILITIES:
  * The definition of DL_FUNC in R_ext/Rdynload.h has been changed to
    be fully C-compliant.  This means that functions loaded _via_ for
    example R_GetCCallable need to be cast to an appropriate type if
    they have any arguments.
  * .Machine has a new element sizeof.time_t to identify old systems
    with a 32-bit type and hence a limited range of date-times (and
    limited support for dates millions of years from present).
  PACKAGE INSTALLATION:
  * (Windows) The default C++ standard had accidentally been left at
    C++11 when it was changed to C++14 on Unix.
  BUG FIXES:
  * As "POSIXlt" objects may be "partially filled" and their list
    components meant to be recycled, length() now is the length of
    the longest component.
  * as.POSIXlt.Date() could underflow for dates in the far past (more
    than half a million years BCE).
  * as.Date.POSIXlt(x) would return "1970-01-01" instead of NA in R
    4.2.2, e.g., for
    x &lt;- as.POSIXlt(c("2019-01-30","2001-1-1"))
    x$mon &lt;- c(0L, NA); as.Date(x)
  * R CMD check failed to apply enabled _R_CHECK_SUGGESTS_ONLY_ to
    examples and vignettes (regression in R 4.2.0).
  * R CMD check did not re-build vignettes in separate processes by
    default (regression in R 4.2.0).
  * Running examples from HTML documentation now restores previous
    knitr settings and options (PR#18420).
  * Quartz: fonts are now located using Core Graphics API instead of
    deprecated ATS which is no longer supported in the macOS 13 SDK
    (PR#18426).  This also addresses an issue where the currently
    used font in the Quartz device context was not correctly
    retained.
  * (Windows) Math symbols in text drawing functions are again
    rendered correctly (PR#18440).  This fixes a regression in R
    4.2.1 caused by a fix in PR#18382 which uncovered an issue in
    GraphApp due to which the symbol charset was not used with TT
    Symbol font face.
  * (Windows) Installing a package with a src/Makefile.{win,ucrt}
    file includes ~/.R/Makevars.win64 in the search for user
    makevars, as documented in "R Installation and Administration"
    and done for packages with a src/Makevars.{win,ucrt} file.
  * format(&lt;POSIXlt_w/_unbalanced_sec&gt;, "....%OS&lt;n&gt;") with n &gt; 0 no
    longer accidentally uses the unbalanced seconds, thanks to
    Suharto Anggono's report (including patch) in PR#18448.
  * solve.default(a, b) works around issues with some versions of
    LAPACK when a contains NA or NaN values.
  * When UseMethod() cannot dispatch, it no longer segfaults
    producing the error message in case of a long class(), thanks to
    Joris Vankerschaver's report (including patch) in PR#18447.
  * When example(foo, ..) produces graphics on an interactive device
    it needs to open itself, it now leaves devAskNewPage() unchanged
    even when it was FALSE, thus fixing a 14 years old '&lt;FIXME&gt;'.
  * packageDescription() again catches errors from encoding
    conversions. This also fixes broken packageVersion() in C locale
    on systems where iconv does not support transliteration.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1681128000">- add patch to build with libcurl &gt;= 8</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1682078400">- CHANGES IN R 4.3.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Calling &amp;&amp; or || with LHS or (if evaluated) RHS of length greater
    than one is now always an error, with a report of the form
    'length = 4' in coercion to 'logical(1)'
    Environment variable _R_CHECK_LENGTH_1_LOGIC2_ no longer has any
    effect.
  NEW FEATURES:
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.10.1.  (This caused some platform-dependent
    changes to package check output.)  And then to the sources from
    LAPACK version 3.11.0 (with changes only to double complex
    subroutines).
  * The included LAPACK sources have been updated to include the four
    Fortran 90 routines rather than their Fortran 77 predecessors.
    This may give some different signs in SVDs or
    eigendecompositions..  (This completes the transition to LAPACK
    3.10.x begun in R 4.2.0.)
  * The LAPACK sources have been updated to version 3.11.0.  (No new
    subroutines have been added, so this almost entirely bug fixes:
    Those fixes do affect some computations with NaNs, including R's
    NA.)
  * The parser now signals _classed_ errors, notably in case of the
    pipe operator |&gt;.  The error object and message now give line and
    column numbers, mostly as proposed and provided by Duncan Murdoch
    in PR#18328.
  * toeplitz() is now generalized for asymmetric cases, with a
    toeplitz2() variant.
  * xy.coords() and xyz.coords() and consequently, e.g., plot(x,y,
    log = "y") now signal a _classed_ warning about negative values
    of y (where log(.) is NA).  Such a warning can be specifically
    suppressed or caught otherwise.
  * Regular expression functions now check more thoroughly whether
    their inputs are valid strings (in their encoding, e.g. in
    UTF-8).
  * The performance of grep(), sub(), gsub() and strsplit() has been
    improved, particularly with perl = TRUE and fixed = TRUE.  Use of
    useBytes = TRUE for performance reasons should no longer be
    needed and is discouraged: it may lead to incorrect results.
  * apropos() gains an argument dot_internals which is used by the
    completion (help(rcompgen)) engine to also see base internals
    such as .POSIXct().
  * Support in tools::Rdiff() for comparing uncompressed PDF files is
    further reduced - see its help page.
  * qqplot(x, y, ...) gains conf.level and conf.args arguments for
    computing and plotting a confidence band for the treatment
    function transforming the distribution of x into the distribution
    of y (Switzer, 1976, _Biometrika_). Contributed by Torsten
    Hothorn.
  * Performance of package_dependencies() has been improved for cases
    when the number of dependencies is large.
  * Strings newly created by gsub(), sub() and strsplit(), when any
    of the inputs is marked as "bytes", are also marked as "bytes".
    This reduces the risk of creating invalid strings and accidental
    substitution of bytes deemed invalid.
  * Support for readLines(encoding = "bytes") has been added to allow
    processing special text files byte-by-byte, without creating
    invalid strings.
  * iconv(from = "") now takes into account any declared encoding of
    the input elements and uses it in preference to the native
    encoding.  This reduces the risk of accidental creation of
    invalid strings, particularly when different elements of the
    input have different encoding (including "bytes").
  * Package repositories in getOption("repos") are now initialized
    from the repositories file when utils is loaded (if not already
    set, e.g., in .Rprofile).  (From a report and patch proposal by
    Gabriel Becker in PR#18405.)
  * compactPDF() gets a verbose option.
  * type.convert() and hence read.table() get new option tryLogical =
    TRUE with back compatible default.  When set to false, converts
    "F" or "T" columns to character.
  * Added new unit prefixes "R" and "Q" for abbreviating
    (unrealistically large) sizes beyond 10^{27} in standard = "SI",
    thanks to Henrik Bengtsson's PR#18435.
  * as.data.frame()'s default method now also works fine with atomic
    objects inheriting from classes such as "roman", "octmode" and
    "hexmode", such fulfilling the wish of PR#18421, by Benjamin
    Feakins.
  * The as.data.frame.vector() utility now errors for wrong-length
    row.names.  It warned for almost six years, with "Will be an
    error!".
  * sessionInfo() now also contains La_version() and reports codepage
    and timezone when relevant, in both print() and toLatex() methods
    which also get new option tzone for displaying timezone
    information when locale = FALSE.
  * New function R_compiled_by() reports the C and Fortran compilers
    used to build R, if known.
  * predict(&lt;lm&gt;, newdata = *) no longer unnecessarily creates an
    offset of all 0s.
  * solve() for complex inputs now uses argument tol and by default
    checks for 'computational singularity' (as it long has done for
    numeric inputs).
  * predict(&lt;rank-deficient lm&gt;, newdata=*) now obeys a new argument
    rankdeficient, with new default "warnif", warning only if there
    are non-estimable cases in newdata.  Other options include
    rankdeficient = "NA", predicting NA for non-estimable newdata
    cases.  This addresses PR#15072 by Russ Lenth and is based on his
    original proposal and discussions in PR#16158 also by David Firth
    and Elin Waring.  Still somewhat experimental.
  * Rgui console implementation now works better with the NVDA screen
    reader when the full blinking cursor is selected.  The underlying
    improvements in cursor handling may help also other screen
    readers on Windows.
  * The drop-field control in GraphApp can now be left with the TAB
    key and all controls can be navigated in the reverse order using
    the Shift+TAB key, improving accessibility of the Rgui
    configuration editor.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now fully accurate
    (instead of to "only" minimally five digits).
  * demo(error.catching) now also shows off withWarnings() and
    tryCatchWEMs().
  * As an experimental feature the placeholder _ can now also be used
    in the rhs of a forward pipe |&gt; expression as the first argument
    in an extraction call, such as _$coef. More generally, it can be
    used as the head of a chain of extractions, such as _$coef[[2]].
  * Spaces in the environment variable used to choose the R session's
    temporary directory (TMPDIR, TMP and TEMP are tried in turn) are
    now fatal.  (On Windows the 'short path' version of the path is
    tried and used if that does not contain a space.)
  * all.equal.numeric() gets a new optional switch giveErr to return
    the numeric error as attribute.  Relatedly,
    stopifnot(all.equal&lt;some&gt;(a, b, ..)) is as "smart" now, as
    stopifnot(all.equal(....)) has been already, thus allowing
    customized all.equal&lt;Some&gt;() wrappers.
  * R on Windows is now able to work with path names longer than 260
    characters when these are enabled in the system (requires at
    least Windows 10 version 1607).  Packages should be updated to
    work with long paths as well, instead of assuming PATH_MAX to be
    the maximum length.  Custom front-ends and applications embedding
    R need to update their manifests if they wish to allow this
    feature.  See
    &lt;https://blog.r-project.org/2023/03/07/path-length-limit-on-windows&gt;
    for more information.
  * 'Object not found' and 'Missing argument' errors now give a more
    accurate error context. Patch provided by Lionel Henry in
    PR#18241.
  * The @ operator is now an S3 generic. Based on contributions by
    Tomasz Kalinowski in PR#18482.
  * New generic chooseOpsMethod() provides a mechanism for objects to
    resolve cases where two suitable methods are found for an Ops
    Group Generic. This supports experimenting with alternative
    object systems. Based on contributions by Tomasz Kalinowski in
    PR#18484.
  * inherits(x, what) now accepts values other than a simple
    character vector for argument what. A new generic, nameOfClass(),
    is called to resolve the class name from what. This supports
    experimenting with alternative object systems. Based on
    contributions by Tomasz Kalinowski in PR#18485.
  * Detection of BLAS/LAPACK in use (sessionInfo()) with FlexiBLAS
    now reports the current backend.
  * The "data.frame" method for subset() now warns about extraneous
    arguments, typically catching the use of = instead of == in the
    subset expression.
  * Calling a:b when numeric a or b is longer than one may now be
    made into an error by setting environment variable
    _R_CHECK_LENGTH_COLON_ to a true value, along the proposal in
    PR#18419 by Henrik Bengtsson.
  * density(x, weights = *) now warns if automatic bandwidth
    selection happens without using weights; new optional warnWbw may
    suppress the warning.  Prompted by Christoph Dalitz' PR#18490 and
    its discussants.
  * rm(list = *) is faster and more readable thanks to Kevin Ushey's
    PR#18492.
  * The plot.lm() function no longer produces a normal Q-Q plot for
    GLMs. Instead it plots a half-normal Q-Q plot of the absolute
    value of the standardized deviance residuals.
  * The print() method for class "summary.glm" no longer shows
    summary statistics for the deviance residuals by default.  Its
    optional argument show.residuals can be used to show them if
    required.
  * The tapply() function now accepts a data frame as its X argument,
    and allows INDEX to be a formula in that case. by.data.frame()
    similarly allows INDICES to be a formula.
  * The performance of df[j] &lt;- value (including for missing j) and
    write.table(df) has been improved for data frames df with a large
    number of columns.  (Thanks to Gabriel Becker's PR#18500,
    PR#18503 and discussants, prompted by a report from Toby Dylan
    Hocking on the R-devel mailing list.)
  * The matrix multiply operator %*% is now an S3 generic, belonging
    to new group generic matrixOps.  From Tomasz Kalinowski's
    contribution in PR#18483.
  * New function array2DF() to convert arrays to data frames,
    particularly useful for the list arrays created by tapply().
  DATES and TIMES:
  * On platforms where (non-UTC) datetimes before 1902 (or before
    1900 as with system functions on recent macOS) are guessed by
    extrapolating time zones from 1902-2037, there is a warning at
    the first use of extrapolation in a session.  (As all time zones
    post 2037 are extrapolation, we do not warn on those.)
  * (Platforms using --with-internal-tzone, including Windows and by
    default macOS). How years are printed in dates or date-times can
    be controlled by environment variable R_PAD_YEARS_BY_ZERO.  The
    default remains to pad to 4 digits by zeroes, but setting value
    no gives no padding (as used by default by glibc).
  * strftime() tries harder to determine the offset for the "%z"
    format, and succeeds on the mainstream R platforms.
  * strftime() has a limit of 2048 bytes on the string produced -
    attempting to exceed this is an error.  (Previously it silently
    truncated at 255 bytes.)
  * sessionInfo() records (and by default prints) the system time
    zone as part of the locale information.  Also, the source
    (system/internal) of the date-time conversion and printing
    functions.
  * Objects of class "POSIXlt" created in this version of R always
    have 11 components: component zone is always set, and component
    gmtoff is set for times in UTC and usually set on the (almost
    all) platforms which have C-level support, otherwise is NA.
  * There are comprehensive validity checks on the structure of
    objects of class "POSIXlt" when converting (including formatting
    and printing).  (This avoids mis-conversions of hand-crafted
    objects.)
  * There is some support for using the native date-time routines on
    macOS: this is only viable on recent versions (e.g. 12.6 and 13)
    and does get wrong some historical changes (before 1900, during
    WWII).  Use of --with-internal-tzone remains the default.
  * as.POSIXct(&lt;numeric&gt;) and as.POSIXlt(.) (without specifying
    origin) now work.  So does as.Date(&lt;numeric&gt;).
  * as.Date.POSIXct(., tz) now treats several tz values, notably
    "GMT" as equivalent to "UTC", proposed and improved by Michael
    Chirico and Joshua Ulrich in PR#17674.
  * Experimental balancePOSIXlt() utility allows using "ragged" and
    or out-of-range "POSIXlt" objects more correctly, e.g., in
    subsetting and subassignments.  Such objects are now documented.
    More experimentally, a "POSIXlt" object may have an attribute
    "balanced" indicating if it is known to be filled or fully
    balanced.
  * Functions axis.Date() and axis.POSIXct() are rewritten to gain
    better default tick locations and better default formats by using
    prettyDate(). Thanks to Swetlana Herbrandt.
  * The mapping of Windows' names for time zones to IANA's 'Olson'
    names has been updated.  When ICU is available (it is by
    default), it is used to get a mapping for the current region set
    in Windows.  This can be overridden by setting environment
    variable TZ to the desired Olson name - see OlsonNames() for
    those currently available.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 16
    and so packages that provide graphics devices should be
    reinstalled.
  * The grDevices and grid packages have new functions for rendering
    typeset glyphs, primarily: grDevices::glyphInfo() and
    grid::grid.glyph().
    Rendering of typeset glyphs is only supported so far on the
    Cairo-based graphics devices and on the pdf() and quartz()
    devices.
  * The defined behaviour for "clear" and "source" compositing
    operators (via grid::grid.group()) has been changed (to align
    better with simple interpretation of original Porter-Duff
    definitions).
  * Support for gradients, patterns, clipping paths, masks, groups,
    compositing operators, and affine transformations has been added
    to the quartz() device.
  INSTALLATION on a UNIX-ALIKE:
  * A system installation of generic LAPACK 3.10.0 or later will be
    preferred to the version in the R sources.
    configure option --with-lapack=no (equivalently --without-lapack)
    forces compilation of the internal LAPACK sources.
    If --with-lapack is not specified, a system liblapack is looked
    for and used if it reports version 3.10.0 or later and does not
    contain BLAS routines.
    Packages using LAPACK will need to be reinstalled if this changes
    to using an external library.
  * On aarch64 Linux platforms using GCC, configure now defaults to
  - fPIC (instead of -fpic), as desired in PR#18326.
  * configure now checks conversion of datetimes between POSIXlt and
    POSIXct around year 2020.  Failure (which has been seen on
    platforms missing tzdata) is fatal.
  * If configure option --with-valgrind-instrumentation is given
    value 1 or 2, option --with-system-valgrind-headers is now the
    default and ignored (with a warning).  It is highly recommended
    that the system headers are installed alongside valgrind: they
    are part of its packaging on some Linux distributions and
    packaged separately (e.g. in the valgrind-devel RPM) on others.
    configure will give a warning if they are not found.
    The system headers will be required in a future release of R to
    build with valgrind instrumentation.
  * libcurl 8.x is now accepted by configure: despite a change in
    major version number it changes neither API nor ABI.
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools43, an update of the Rtools42 toolchain.  It is
    based on gcc 12 and newer versions of MinGW-W64, binutils and
    libraries.  At this time R-devel can still be built using
    Rtools42 without changes, but when R-devel is installed via the
    installer, it will by default look for Rtools43.
  * Old make targets rsync-extsoft and 32-bit ones that are no longer
    needed have been removed.
  * Default builds (including for packages) no longer select C99.
    Thus the C standard used is the default for the compiler, which
    for the toolchain in Rtools43 is C17.  (This is consistent with
    Unix builds.)
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++17 where
    available (which it is on all currently checked platforms): if
    not C++14 or C++11 is used if available otherwise C++ is not
    supported.
  * USE_FC_LEN_T is the default: this uses the correct
    (compiler-dependent) prototypes for Fortran BLAS/LAPACK routines
    called from C/C++, and requires adjustment of many such calls -
    see 'Writing R Extensions' SS6.6.1.
  * There is initial support for C++23 as several compilers are now
    supporting -std=c++23 or -std=c++2b or similar.  As for C++20,
    there no additional configure checks for C++23 features beyond a
    check that the compiler reports a __cplusplus value greater than
    that in the C++20 standard.  C++ feature tests should be used.
  * There is support for a package to indicate the version of the C
    standard which should be used to compile it, and for the
    installing user to specify this.  In most cases R defaults to the
    C compiler's default standard which is C17 (a `bug-fix' of C11) -
    earlier versions of R or compilers may have defaulted to C99.
    Current options are:
    USE_C17 Use a standard that is at most C17.  The intention is to
    allow legacy packages to still be installed when later C
    standards become the default, including packages using new
    keywords as identifiers or with K&amp;R-style function
    declarations.  This will use C17 if available, falling back
    to C11.
    USE_C90 Use the C90 (aka C89) standard.  (As that standard did
    not require compilers to identify that version, all we can
    verify is that the compiler does not claim to be using a
    later standard.  It may accept C99 features - for example
    clang accepts // to make comments.)
    USE_C99 Use the C99 standard. This should be rarely needed - it
    avoids the few new features of C11/C17 which can be useful if
    a package assumes them if C17 is specified and they are not
    implemented.
    USE_C23 Use C23 (or in future, later).  Compiler/library support
    for C23 is still being implemented, but LLVM clang from
    15.0.0 and the upcoming GCC 13 have quite extensive support.
    These can be specified as part of the SystemRequirements field in
    the package's DESCRIPTION file or _via_ options --use-C17 and so
    on of R CMD INSTALL and R CMD SHLIB.
    For further details see "Writing R Extensions" SS1.2.5.
  * (Windows) A src/Makefile.ucrt or src/Makefile.win file is now
    included after R_HOME/etcR_ARCH/Makeconf and so no longer needs
    to include that file itself.  Installation of a package with such
    a file now uses a site Makevars file in the same way as a package
    with a src/Makevars.win file would.
  * configure is now passed crucial variables such as CC and CFLAGS
    in its environment, as many packages were not setting them (as
    documented in 'Writing R Extensions' SS1.2).
    This has most effect where configure is used to compile parts of
    the package - most often by cmake or libtool which obfuscate the
    actual compile commands used.
    Also used for configure.win and configure.ucrt on Windows.
  FORTRAN FLAGS:
  * The flag -fno-optimize-sibling-calls is no longer forced for
    gfortran 7 and later.  It should no longer be needed now using
    'hidden' character-length arguments when calling BLAS/LAPACK
    routines from C/C++ is the default even for packages.  (Unless
    perhaps packages call Fortran code from C/C++ without using R's
    headers and without allowing for these arguments.)
  C-LEVEL FACILITIES:
  * The deprecated S-compatibility macros DOUBLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * The deprecated legacy typedefs of Sint and Sfloat in header R.h
    are no longer defined, and that header no longer includes header
    limits.h from C nor climits from C++.
  * New macro CAD5R() is provided in Rinternals.h and used in a few
    places in the R sources.
  * ALTREP now supports VECSXP vectors. Contributed by Gabor Csardi
    in PR#17620.
  * The Rcomplex definition (in header R_ext/Complex.h) has been
    extended to prevent possible mis-compilation when interfacing
    with Fortran (PR#18430).  The new definition causes compiler
    warnings with static initializers such as {1, 2}, which can be
    changed to {.r=1, .i=2}.
    Using the new definition from C++ depends on compiler extensions
    supporting C features that have not been incorporated into the
    C++ standards but are available in g++ and clang++: this may
    result in C++ compiler warnings but these have been worked around
    for recent versions of common compilers (GCC, Apple/LLVM clang,
    Intel).
    It is intended to change the inclusion of header R_ext/Complex.h
    by other R headers, so C/C++ code files which make use of
    Rcomplex should include that header explicitly.
  UTILITIES:
  * R CMD check does more checking of package .Rd files, warning
    about invalid email addresses and (some) invalid URIs and noting
    empty \item labels in description lists.
  * R CMD check now also reports problems when reading package news
    in md (file NEWS.md) and (optionally) plain text (file NEWS)
    formats.
  * _R_CHECK_TIMINGS_ defaults to a value from the environment even
    for R CMD check --as-cran; this allows for exceptionally fast or
    slow platforms.
    It now applies to checking PDF and HTML versions of the manuals,
    and 'checking CRAN incoming feasibility'.
  * R CMD check can optionally (but included in --as-cran) check
    whether HTML math rendering _via_ KaTeX works for the package .Rd
    files.
  * Non-interactive debugger invocations can be trapped by setting
    the environment variable _R_CHECK_BROWSER_NONINTERACTIVE_ to a
    true value.  This is enabled by R CMD check --as-cran to detect
    the use of leftover browser() statements in the package.
  * The use of sprintf and vsprintf from C/C++ has been deprecated in
    macOS 13 and is a known security risk.  R CMD check now reports
    (on all platforms) if their use is found in compiled code:
    replace by snprintf or vsnprintf respectively. [*NB:* whether
    such calls get compiled into the package is platform-dependent.]
  * Where recorded at installation, R CMD check reports the C and
    Fortran compilers used to build R.
    It reports the OS in use (if known, as given by osVersion) as
    well as that R was built for.
    It notes if a C++ standard was specified which is older than the
    current default: many packages have used C++11 to mean 'not
    C++98' - as C++11 is the minimum supported since R 4.0.0, that
    specification can probably be removed.
  * R CMD INSTALL reports the compilers (and on macOS, the SDK) used,
    and this is copied to the output of R CMD check.
    Where a C++ standard is specified, it is reported.
  * R CMD check's 'checking compilation flags in Makevars' has been
    relaxed to accept the use of flags such as -std=f2008 in
    PKG_FFLAGS.
  * tools::buildVignettes() has a new argument skip, which is used by
    R CMD check to skip (and note) vignettes with unavailable
    \VignetteDepends (PR#18318).
  * New generic .AtNames() added to enable class-specific completions
    after @. The formerly internal function findMatches() is now
    exported, mainly for use in methods for .DollarNames() and
    .AtNames().
  DEPRECATED AND DEFUNCT:
  * default.stringsAsFactors() is defunct.
  * Calling as.data.frame.&lt;class&gt;() directly (for 12 atomic classes)
    is going to be formally deprecated, currently activated by
    setting the environment variable
    _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ to non-empty, which also
    happens in R CMD check --as-cran.
  BUG FIXES:
  * Hashed environments with sizes less than 5 can now grow.
    (Reported to R-devel by Duncan Garmonsway.)
  * as.character(&lt;Rd&gt;, deparse = TRUE) failed to re-escape curly
    braces in LaTeX-like text.  (Reported by Hadley Wickham in
    PR#18324.)
  * library() now passes its lib.loc argument when requiring Depends
    packages; reported (with fix) in PR#18331 by Mikael Jagan.
  * R CMD Stangle: improved message about 'Output' files.
  * head(x, n) and tail(x, n) now signal an error if n is not
    numeric, instead of incidentally "working" sometimes returning
    all of x.  Reported and discussed by Colin Fay, in PR#18357.
  * The "lm" method for summary() now gives the correct F-statistic
    when the model contains an offset.  Reported in PR#18008.
  * C() and `contrasts&lt;-`() now preserve factor level names when
    given a function object (as opposed a function name which did
    preserve names). Reported in PR#17616.
  * c(a = 1, 2)[[]] no longer matches 2 but rather signals a
    _classed_ error.  Reported and analysed by Davis Vaughan in
    PR#18367, a duplicate of PR#18004, by Jan Meis et al.  For
    consistency, NULL[[]] is also erroneous now.  x[[]] &lt;- v gives an
    error of the same class "MissingSubscriptError".
  * The relist() function of utils now supports NULL elements in the
    skeleton (PR#15854).
  * ordered(levels = *) (missing x) now works analogously to factor(,
    ordered=TRUE); reported (with fix) by Achim Zeileis in PR#18389.
  * User-defined Rd macro definitions can now span multiple lines,
    thanks to a patch from Duncan Murdoch. Previously, the Rd parser
    silently ignored everything after the first line.
  * Plain-text help (tools::Rd2txt()) now preserves an initial blank
    line for text following description list items.
  * tools::Rd2HTML() and tools::Rd2latex() no longer split \arguments
    and \value lists at Rd comments.
  * tools::Rd2latex() now correctly handles optional text outside
    \items of argument lists as well as bracketed text at the
    beginning of sections, e.g., \value{[NULL]}.
  * as.character(&lt;POSIXt&gt;) now behaves more in line with the methods
    for atomic vectors such as numbers, and is no longer influenced
    by options().  Ditto for as.character(&lt;Date&gt;).  The
    as.character() method gets arguments digits and OutDec with
    defaults _not_ depending on options().  Use of as.character(*,
    format = .) now warns.
  * Similarly, the as.character.hexmode() and *.octmode() methods
    also behave as good citizen methods and back compatibility option
    keepStr = TRUE.
  * The as.POSIXlt(&lt;POSIXlt&gt;) and as.POSIXct(&lt;POSIXct&gt;) default
    methods now do obey their tz argument, also in this case.
  * as.POSIXlt(&lt;Date&gt;) now does apply a tz (time zone) argument, as
    does as.POSIXct(); partly suggested by Roland Fuss on the R-devel
    mailing list.
  * as.Date.POSIXlt(x) now also works when the list components are of
    unequal length, aka "partially filled" or "ragged".
  * expand.model.frame() looked up variables in the wrong environment
    when applied to models fitted without data.  Reported in
    PR#18414.
  * time() now (also) uses the ts.eps = getOption("ts.eps") argument
    and thus by default rounds values very close to the start (or
    end) of a year.  Based on a proposal by Andre"i V. Kostyrka on
    R-help.
  * Printing of a factanal() result with just one factor and sort =
    TRUE now works regularly, fixing PR#17863 by Timothy Bates,
    thanks to the 'R Contributors' working group.
  * Printing 0-length objects of class "factor", "roman", "hexmode",
    "octmode", "person", "bibentry", or "citation" now prints
    something better, one of which fixes PR#18422, reported by
    Benjamin Feakins.
  * Sys.timezone() queries timedatectl only if systemd is loaded;
    addressing a report by Jan Gorecki in PR#17421.
  * The formula method of cor.test() had scoping problems when
    environment(formula) was not the calling environment; reported
    with a patch proposal by Mao Kobayashi in PR#18439.
  * attach() of an environment with active bindings now preserves the
    active bindings.  Reported by Kevin Ushey in PR#18425.
  * BLAS detection now works also with system-provided libraries not
    available as regular files.  This fixes detection of the
    Accelerate framework on macOS since Big Sur.  Reported by David
    Novgorodsky.
  * download.file() gives a helpful error message in case of an
    invalid download.file.method option, thanks to Colin Fay's report
    in PR#18455.
  * Sporadic crashes of Rterm when using completion have been fixed.
  * Rprof() is now more reliable.  A livelock in thread
    initialization with too short sampling interval has been fixed on
    macOS.  A deadlock in using the C runtime has been fixed on
    Windows.  A potential deadlock has been prevented on Unix.
  * Cursor placement in Rgui now works even after a fixed-width font
    is selected.
  * Mandatory options (options()) are now set on startup so that
    saving and restoring them always works (PR#18372).
  * Package installation, R CMD INSTALL or install.packages(*), now
    parses each of the &lt;pkg&gt;/R/*.R files individually instead of
    first concatenating and then parse()ing the large resulting file.
    This allows parser or syntax errors to be diagnosed with correct
    file names and line numbers, thanks to Simon Dedman's report and
    Bill Dunlap's patch in PR#17859.
    This _does_ require syntactically self contained R source files
    now, fixing another inadvertent bug.
  * predict.lm(&lt;model with offset&gt;) now finds the offset in the
    correct environment, thanks to Andr'e Gillibert's report and patch
    in PR#18456.
  * getInitial(&lt;formula&gt;) now finds the selfStart model in the
    correct environment.  (Reported by Ivan Krylov in PR#18368.)
  * Fix for possible segfault when using recently-added graphics
    features, such as gradients, clipping paths, masks, and groups
    with pdf(file=NULL).
  * class(m) &lt;- class(m) no longer changes a matrix m by adding a
    class _attribute_.
  * packageDate(pkg) now only warns once if there is no pkg.
  * When ts() creates a multivariate time series, "mts", it also
    inherits from "array" now, and is.mts() is documented _and_
    stricter.
  * Rd2txt() now preserves line breaks of \verb Rd content and from
    duplicated \cr.  The former also fixes the rendering of verbatim
    output from Rd \Sexpr in plain-text help.
  * uniroot(f, interval) should no longer wrongly converge _outside_
    the interval in some cases where abs(f(x)) == Inf for an x at the
    interval boundary, thanks to posts by Ben Bolker and Serguei
    Sokol on R-devel.
  * Vectorized alpha handling in palette functions such as in gray(),
    rainbow(), or hcl.colors() works correctly now, thanks to Achim
    Zeileis' report and patch in PR#18476.
  * Formatting and print()ing of bibentry objects has dropped the
    deprecated citation.bibtex.max argument, such that the bibtex
    argument's default for print.bibentry() depends directly on the
    citation.bibtex.max option, whereas in format.bibentry() the
    option no longer applies.
  * Attempting to use a character string naming a foreign function
    entry point in a foreign function call in a package will now
    signal an error if the packages has called R_forceSymbols to
    specify that symbols must be used.
  * An error in table() could permanently set options(warn=2)
    promoting all subsequent warnings to errors.
  * The sigma() function gave misleading results for binary GLMs.  A
    new method for objects of class "glm" returns the square root of
    the estimate of the dispersion parameter using the same
    calculation as summary.glm().
  * bs() and ns() in the (typical) case of automatic knot
    construction, when some of the supposedly inner knots coincide
    with boundary knots, now moves them inside (with a warning),
    building on PR#18442 by Ben Bolker.
  * R CMD on Windows now skips the site profile with --no-site-file
    and --vanilla even when R_PROFILE is set (PR#18512, from Kevin
    Ushey).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1686916800">- CHANGES IN R 4.3.1:
  C-LEVEL FACILITIES:
  * The C-level API version of R's integrate(), Rdqags() in Applic.h,
    now returns the correct number of integrand evaluations neval,
    fixing PR#18515 reported and diagnosed by Stephen Wade.
  * The C prototypes for LAPACK calls dspgv and dtptrs in
    R_exts/Lapack.h had one too many and one too few character length
    arguments - but this has not caused any known issues. To get the
    corrected prototypes, include
    [#]include &lt;Rconfig.h&gt; // for PR18534fixed
    [#]ifdef PR18534fixed
    [#] define usePR18534fix 1
    [#]endif
    [#]include &lt;R_exts/Lapack.h&gt;
    in your C/C++ code (PR#18534).
  INSTALLATION:
  * Many of the checks of esoteric Internet operations and those
    using unreliable external sites have been moved to a new target
    that is not run by default and primarily intended for the core
    developers.  To run them use
    cd tests; make test-Internet-dev
  BUG FIXES:
  * .S3methods(), typically called from methods(), again marks
    methods from package base as visible.
    Also, the visibility of non-base methods is again determined by
    the method's presence in search().
  * tools::Rdiff() is now more robust against invalid strings, fixing
    installation tests on Windows without Rtools installed
    (PR#18530).
  * Fix (new) bug in hcl.colors(2, *), by Achim Zeileis (PR#18523).
  * head(., &lt;illegal&gt;) and tail(..) now produce more useful "Error in
    ...." error messages, fixing PR#18362.
  * Package code syntax on Windows is checked in UTF-8 when UTF-8 is
    the native encoding.
  * na.contiguous(x) now also returns the first run, when it is at
    the beginning and there is a later one of the same length;
    reported to R-devel, including a fix, by Georgi Boshnakov.
    Further, by default, it modifies only an existing attr(*,"tsp")
    but otherwise no longer sets one.
  * chol(&lt;not pos.def&gt;, pivot = &lt;T|F&gt;) now gives a correct error or
    warning message (depending on pivot), thanks to Mikael Jagan's
    (PR#18541).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1699012800">- CHANGES IN R 4.3.2:
  NEW FEATURES:
  * The default initialization of the "repos" option from the
    repositories file at startup can be skipped by setting
    environment variable R_REPOSITORIES to NULL such that
    getOption("repos") is empty if not set elsewhere.
  * qr.X() is now an implicit S4 generic in methods.
  * iconv(to = "ASCII//TRANSLIT") is emulated using substitution on
    platforms which do not support it (notably Alpine Linux).  This
    should give a human-readable conversion in ASCII on all platforms
    (rather than NA_character_).
  * trans3d() gains options continuous and verbose addressing the
    problem of possible "wrap around" when projecting too long
    curves, as reported by Achim Zeileis in PR#18537.
  * tools::showNonASCII() has been rewritten to work better on macOS
    14 (which has a changed implementation of iconv()).
  * tiff(type = "quartz") (the default on macOS) now warns if
    compression is specified: it continues to be ignored.
  INSTALLATION on a UNIX-ALIKE:
  * There is some support for building with Intel's LLVM-based
    compilers on x86_64 Linux, such as (C) icx, (C++) ipcx and
    (Fortran) ifx from oneAPI 2023.x.y.
  * There is support for using LLVM's flang-new as the Fortran
    compiler from LLVM 16.0.x (preferably 17.0.0 or later).
  UTILITIES:
  * R CMD check reports the use of the Fortran 90 random number
    generator RANDOM_NUMBER() and the subroutines to initialize it.
    'Writing R Extensions' has example code to use R's RNGs from
    Fortran.
  BUG FIXES:
  * substr(x, n, L) &lt;- cc now works (more) correctly for multibyte
    UTF-8 strings x when L &gt; nchar(x), thanks to a report and patch
    by 'Architect 95'.
  * contrib.url(character()) now returns 0-length character() as
    documented, which also avoids spurious warnings from
    available.packages() et al. in the edge case of an empty vector
    of repository URLs.
  * readChar(., 4e8) no longer fails, thanks to Kodi Arfer's report
    (PR#18557).
  * lapply(&lt;list&gt;, as.data.frame) no longer warns falsely for some
    base vector components.
  * Communication between parent and child processes in the multicore
    part of parallel could fail on platforms that do not support an
    arbitrarily large payload in system functions read()/write() on
    pipes (seen on macOS where a restriction to INT_MAX bytes is
    documented, without doing a partial read unlike Linux). The
    payload is now split into 1Gb chunks to avoid that problem.
    (PR#18571)
  * qqplot(x,y, conf.level=.) gives better confidence bounds when
    length(x) != length(y), thanks to Alexander Ploner's report and
    patch proposal (PR#18557).
  * norm(&lt;0-length&gt;, "2") now gives zero instead of an error, as all
    the other norm types, thanks to Mikael Jagan's PR#18542.
  * Build-stage Rd macros \packageAuthor and \packageMaintainer now
    process Authors@R, fixing NA results when the package DESCRIPTION
    omits Author and Maintainer fields.
  * Formatting and printing complex numbers could give things like
    0.1683-0i because of rounding error: -0i is now replaced by +0i.
  * postscript() refused to accept a title comment containing the
    letter "W" (PR#18599).
  * isoreg(c(1,Inf)) signals an error instead of segfaulting, fixing
    PR#18603.
  * tiff(type = "Xlib") was only outputting the last page of
    multi-page plots.
  * tools::latexToUtf8() again knows about \~{n} and other letters
    with tilde, fixing a regression in R 4.3.0, and about \^{i} as an
    alternative to \^{\i} (similarly with other accents).
    Furthermore, LaTeX codes for accented I letters are now correctly
    converted, also fixing related mistakes in
    tools::encoded_text_to_latex().
  * tar(*, tar = "internal") no longer creates out-of-spec tar files
    in the very rare case of user or group names longer than 32
    bytes, fixing PR#17871 with thanks to Ivan Krylov.
  * When using the "internal" timezone datetime code, adding a
    fraction of a second no longer adds one second, fixing PR#16856
    from a patch by Ivan Krylov.
  * tools::checkRd() no longer produces spurious notes about
    "unnecessary braces" from multi-line Rd results of \Sexpr macros.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1709208000">- CHANGES IN R 4.3.3:
  NEW FEATURES:
  * iconv() now fixes up variant encoding names such as "utf8"
    case-insensitively.
  DEPRECATED AND DEFUNCT:
  * The legacy encoding = "MacRoman" is deprecated in pdf() and
    postscript(): support was incomplete in earlier versions of R.
  BUG FIXES:
  * Arguments are now properly forwarded to methods on S4 generics
    with ... in the middle of their formal arguments. This was broken
    for the case when a method introduced an argument but did not
    include ... in its own formals. Thanks to Herv'e Pag`es for the
    report PR#18538.
  * Some invalid file arguments to pictex(), postscript() and xfig()
    opened a file called NA rather than throw an error.  These
    included postscript(NULL) (which some people expected to work
    like pdf(NULL)).
  * Passing filename = NA to svg(), cairo_pdf(), cairo_ps() or the
    Cairo-based bitmap devices opened a file called NA: it now throws
    an error.
  * quartz(file = NA) opened a file called NA, including when used as
    a Quartz-based bitmap device.  It now gives an error.
  * rank(&lt;long vector&gt;) now works, fixing PR#18617, thanks to Ilia
    Kats.
  * seq.int() did not adequately check its length.out argument.
  * match(&lt;POSIXct&gt;, .) is correct again for differing time zones,
    ditto for "POSIXlt", fixing PR#18618 reported by Bastian Klein.
  * drop.terms(*, dropx = &lt;0-length&gt;) now works, fixing PR#18563 as
    proposed by Mikael Jagan.
  * drop.terms(*) keeps + offset(.) terms when it should, PR#18565,
    and drop.terms() no longer makes up a response, PR#18566, fixing
    both bugs thanks to Mikael Jagan.
  * getS3method("t", "test") no longer finds the t.test() function,
    fixing PR#18627.
  * pdf() and postscript() support for the documented Adobe encodings
    "Greek" and "Cyrilllic" was missing (although the corresponding
    Windows' codepages could be used).
  * Computations of glyph metric information for pdf() and
    postscript() did not take into account that transliteration could
    replace one character by two or more (only seen on macOS 14) and
    typically warned that the information was not known.
  * rank(x) no longer overflows during integer addition, when
    computing rank average for largish but not-yet long vector x,
    fixing PR#18630, thanks to Ilia Kats.
  * list.files() on Windows now returns also files with names longer
    that 260 bytes (the Windows limit is 260 characters).
    Previously, some file names particularly with 'East Asian'
    characters were omitted.
  * cov2cor(&lt;0 x 0&gt;) now works, fixing PR#18423 thanks to Mikael
    Jagan and Elin Waring.
  * cov2cor(&lt;negative diagonal&gt;) and similar now give one warning
    instead of two, with better wording, fixing PR#18424 thanks to
    Mikael Jagan.
  * tools:: startDynamicHelp() now ensures port is in proper range,
    fixing PR#18645.
  * pbeta(x, a,b) is correct now for x=0 or 1 in the boundary cases
    where a or b or both are 0, fixing PR#18672 thanks to Michael
    Fay.
  * pmatch(x, table) for large table, also called for data frame row
    selection, dfrm[nm, ], is now interruptible, fixing PR#18656.
  * predict(&lt;rank-deficient lm&gt;, newdata=*) fix computing of nbasis,
    see Russ Lenth's comment 29 in PR#16158.
  * Added a work-around for a bug in macOS 14.3.1 and higher which
    prevents R plots in the Quartz Cocoa device from updating on
    screen.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1713960000">- CHANGES IN R 4.4.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Startup banners, R --version, sessionInfo() and R CMD check no
    longer report (64-bit) as part of the platform as this is almost
    universal - the increasingly rare 32-bit platforms will still
    report (32-bit).
    On Windows, ditto for window titles.
  * is.atomic(NULL) now returns FALSE, as NULL is not an atomic
    vector.  Strict back-compatibility would replace is.atomic(foo)
    by (is.null(foo) || is.atomic(foo)) but should happen only
    sparingly.
  NEW FEATURES:
  * The confint() methods for "glm" and "nls" objects have been
    copied to the stats package.  Previously, they were stubs which
    called versions in package MASS. The MASS namespace is no longer
    loaded if you invoke (say) confint(glmfit).  Further, the "glm"
    method for profile() and the plot() and pairs() methods for class
    "profile" have been copied from MASS to stats.  (profile.nls()
    and plot.profile.nls() were already in stats.)
  * The confint() and profile methods for "glm" objects have gained a
    possibility to do profiling based on the Rao Score statistic in
    addition to the default Likelihood Ratio. This is controlled by a
    new test = argument.
  * The pairs() method for "profile" objects has been extended with a
    which = argument to allow plotting only a subset of the
    parameters.
  * The "glm" method for anova() computes test statistics and
    p-values by default, using a chi-squared test or an F test
    depending on whether the dispersion is fixed or free.  Test
    statistics can be suppressed by giving argument test a false
    logical value.
  * In setRepositories() the repositories can be set using their
    names via name = instead of index ind =.
  * methods() and .S3methods() gain a all.names option for the (rare)
    case where functions starting with a . should be included.
  * Serializations can now be interrupted (e.g., by Ctrl-C on a
    Unix-alike) if they take too long, e.g., from save.image(),
    thanks to suggestions by Ivan Krylov and others on R-devel.
  * New startup option --max-connections to set the maximum number of
    simultaneous connections for the session.  Defaults to 128 as
    before: allowed values up to 4096 (but resource limits may in
    practice restrict to smaller values).
  * R on Windows (since Windows 10 2004) now uses the new Segment
    Heap allocator. This may improve performance of some
    memory-intensive applications.
  * When R packages are built, typically by R CMD build &lt;pkg&gt;, the
    new --user=&lt;build_user&gt; option overrides the (internally
    determined) user name, currently Sys.info()["user"] or LOGNAME.
    This is a (modified) fulfillment of Will Landau's suggestion in
    PR#17530.
  * tools::testInstalledBasic() gets new optional arguments outDir
    and testSrcdir, e.g., allowing to use it in a &lt;builddir&gt; !=
    &lt;srcdir&gt; setup, and in standard "binary" Windows installation
  * if* a source tests/ folder is present.
  * range(&lt;DT_with_Inf&gt;, finite = TRUE) now work for objects of class
    "Date", "POSIXct", and "POSIXlt" with infinite entries,
    analogously to range.default(), as proposed by Davis Vaughan on
    R-devel.  Other range()-methods can make use of new function
    .rangeNum().
  * New .internalGenerics object complementing .S3PrimitiveGenerics,
    for documentation and low-level book-keeping.
  * grid() now invisibly returns the x- and y- coordinates at which
    the grid-lines were drawn.
  * norm(., type) now also works for complex matrices.
  * kappa(., exact = TRUE, norm = *) now works for all norms and also
    for complex matrices.  In symmetric / triangular cases, the new
    argument uplo = "U" | "L" allows the upper or lower triangular
    part to be specified.
  * memDecompress(type = "unknown") recognizes compression in the
    default 'zlib' format as used by memCompress(type = "gzip").
  * memCompress() and memDecompress() will use the libdeflate library
    (&lt;https://github.com/ebiggers/libdeflate&gt;) if installed.  This
    uses the same type of compression for type = "gzip" but is 1.5-2x
    faster than the system libz library on some common platforms: the
    speed-up may depend on the library version.
  * diff() for objects of class "Date", "POSIXct", and "POSIXlt"
    accepts a units argument passed via ....
  * Dynamic help now does a much better job of rendering package
    DESCRIPTION metadata.
  * Rprof() gains an event argument and support for elapsed (real)
    time profiling on Unix (PR#18076).
  * filled.contour() gains a key.border argument.
  * tools::update_pkg_po() gets arguments pot_make and mo_make for
    _not_ re-making the corresponding files, and additionally a
    verbose argument.
  * Hexadecimal string colour specifications are now accepted in
    short form, so, for example, we can use "#123", which is
    equivalent to "#112233".
    Thanks to MikeFC for the original idea and Ella Kaye, Malcolm
    Barrett, George Stagg, and Hanne Oberman for the patch.
  * Plain-text help shows \var markup by angle brackets.
  * The new experimental primitive function declare() is intended to
    eventually allow information about R code to be communicated to
    the interpreter, compiler, and code analysis tools. The syntax
    for declarations is still being developed.
  * Functions psmirnov(), qsmirnov() and rsmirnov() in package stats
    have had argument two.sided renamed to alternative, to take into
    account that the permutation distributions of the one-sided
    statistics can be different in the case of ties.  Consequence of
    PR#18582.
  * sort() is now an implicit S4 generic in methods.
  * Formatting and printing, format(z), print(z), of complex vectors
    z no longer zap relatively small real or imaginary parts to zero,
    fixing PR#16752.  This is an API change, as it was documented
    previously to round real and imaginary parts together on purpose,
    producing nicer looking output.  As mentioned, e.g. in the PR,
    this change is compatible with many other "R-like" programming
    environments.
    We have simplified the internal code and now basically format the
    real and imaginary parts independently of each other.
  * New experimental functions Tailcall() and Exec() to support
    writing stack-space-efficient recursive functions.
  * Where characters are attempted to be plotted by pdf(),
    postscript() and xfig() which are not in the selected 8-bit
    character set (most often Latin-1) and the R session is using a
    UTF-8 locale, the warning messages will show the UTF-8 character
    rather than its bytes and one dot will be substituted per
    character rather than per byte.  (Platforms whose iconv() does
    transliteration silently plot the transliteration.)
    In a UTF-8 locale some transliterations are now done with a
    warning (e.g., dashes and Unicode minus to hyphen, ligatures are
    expanded, permille (‰) is replaced by o/oo), although the OS may
    have got there first.  These are warnings as they will continue
    to be replaced by dots in earlier versions of R.
  * The matrix multiplication functions crossprod() and tcrossprod()
    are now also primitive and S3 generic, as %*% had become in R
    4.3.0.
  * source() and example() have a new optional argument catch.aborts
    which allows continued evaluation of the R code after an error.
  * The non-Quartz tiff() devices allow additional types of
    compression if supported by the platform's libtiff library.
  * The list of base and recommended package names is now provided by
    tools::standard_package_names().
  * cairo_pdf() and cairo_ps() default to onefile = TRUE to closer
    match pdf() and postscript().
  * New option catch.script.errors provides a documented way to catch
    errors and then continue in non-interactive use.
  * L %||% R newly in base is an expressive idiom for the phrases
    if(!is.null(L)) L else R or if(is.null(L)) R else L.
  * The return value from warnings() now always inherits from
    "warnings" as documented, now also in the case of no warnings
    where it previously returned NULL.
  * as.complex("1i") now returns 0 + 1i instead of NA with a warning.
  * z &lt;- c(NA, 1i) now keeps the imaginary part Im(z[1]) == 0, no
    longer coercing to NA_complex_.  Similarly, cumsum(z) correctly
    sums real and imaginary parts separately, i.e., without
    "crosstalk" in case of NAs.
  * On Alpine Linux iconv() now maps "latin2", "latin-2", "latin9"
    and "latin-9" to encoding names the OS knows about
    (case-insensitively).
  * iconv(sub = "Unicode") now always zero-pads to four (hex) digits,
    rather than to 4 or 8.  (This seems to have become the convention
    once Unicode restricted the number of Unicode points to 2^21 - 1
    and so will never need more than 6 digits.)
  * NCOL(NULL) now returns 0 instead of 1, for consistency with
    cbind().
  * The information for the Euro glyph missing from the Adobe .afm
    files for the Courier, Helvetica and Times families has been
    copied from their URW equivalents - this will improve vertical
    centring in the pdf() and postscript() devices.
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.12.0.  The changes are almost entirely cosmetic.
  * The included LAPACK sources have been updated to version 3.12.0
    and some further double-complex routines added.
  * There are new font families for the 2014--5 URW 2.0 fonts (see
    ?pdf) which are included in recent versions of Ghostscript.
    These have font widths for most Greek glyphs and a few others
    which were missing from the original versions (whose font
    families remain available for reproducibility, although
    Ghostscript-based viewers will render using the 2.0 versions).
  * Improve the large-n efficiency of as.matrix(&lt;dist&gt;), thanks an R
    contributors effort, notably by Tim Taylor and Heather Turner,
    see PR#18660.
  * The default and numeric methods of all.equal() get a check.class
    option.
  * zapsmall() gets new optional arguments, function mFUN and min.d,
    for extra flexibility; fulfills a wish in PR#18199.  Also, it is
    now an implicit S4 generic in package methods.
  * The Rd filter for aspell() gains an ignore argument.
  * New generic function sort_by(), primarily useful for the
    data.frame method which can be used to sort rows of a data frame
    by one or more columns.
  * The icence headers for the RPC code in src/extra/xdr have been
    updated to use the GPL-compatible licence published by Oracle
    America in 2010.
  * New function pkg2HTML() in tools to create single-page HTML
    reference manuals for R packages.
  * The byte code evaluator now uses less C stack space for recursive
    calls to byte-compiled functions. It also makes more of an effort
    to avoid allocations for scalar return values.
  * New completion option backtick (disabled by default) allows
    non-syntactic completions to be wrapped in backquotes. This is
    currently only useful for Jupyter notebooks via the IRkernel
    package, and may cause problems for other backends.
  INSTALLATION:
  * The parser has been updated to work with bison 3.8.2, which is
    now used for the pre-generated parsers in gram.c, file.c, and
    gramRd.c. A few parser error messages have changed, which may
    affect code that relies on exact messages.
  INSTALLATION on a UNIX-ALIKE:
  * System valgrind headers are now required to use configure option
  - -with-valgrind-instrumentation with value 1 or 2.
  * configure will warn if it encounters a 32-bit build, as that is
    nowadays almost untested.
  * Environment variable R_SYSTEM_ABI is no longer used and so no
    longer recorded in etc/Renviron (it was not on Windows and was
    only ever used when preparing package tools).
  * If the libdeflate library and headers are available, libdeflate
    rather than libz is used to (de)compress R objects in lazy-load
    databases.  Typically tasks spend up to 5% of their time on such
    operations, although creating lazy-data databases is one of the
    exceptions.
    This can be suppressed if the library is available by the
    configure option --without-libdeflate-compression.
  * configure option --enable-lto=check has not worked reliably since
    2019 and has been removed.
  * The minimum autoconf requirement for a maintainer build has been
    increased to autoconf 2.71.
    It is intended to increase this to 2.72 for R 4.5.0: the
    distributed configure file was generated using 2.72.
  * The minimum version requirement for an external LAPACK has been
    reduced to 3.9.0.
  * No default C++ compiler is set if no C++17 compiler is detected:
    there is no longer an automatic fallback to C++14 or C++11.
    Compilers from the last five years should have sufficient
    support: for others macros CXX and CXXSTD can be set in file
    config.site to provide a fallback if needed.
    The Objective-C++ compiler now by default uses the standard
    selected by R for C++ (currently C++17) rather than the default
    standard for the C++ compiler (which on macOS is still C++98).
  INSTALLATION on macOS:
  * A new configure option --with-newAccelerate makes use of Apple's
    'new' BLAS / LAPACK interfaces in their Accelerate framework.
    Those interfaces are only available in macOS 13.3 or later, and
    building requires SDK 13.3 or later (from the Command Line Tools
    or Xcode 14.3 or later).
    By default the option uses new Accelerate for BLAS calls: to also
    use it for LAPACK use option --with-newAccelerate=lapack.  The
    later interfaces provide LAPACK 3.9.1 rather than 3.2.1: 3.9.1 is
    from 2021-04 and does not include the improved algorithms
    introduced in LAPACK 3.10.0 (including for BLAS calls).
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools44, an update of the Rtools43 toolchain.  It is
    based on GCC 13 and newer versions of MinGW-W64, binutils and
    libraries (targeting 64-bit Intel CPUs).  R-devel can no longer
    be built using Rtools43 without changes.
  * Rtools44 has experimental support for 64-bit ARM (aarch64) CPUs
    _via_ the LLVM 17 toolchain using lld, clang/flang-new and
    libc++.
  UTILITIES:
  * R CMD check notes when S4-style exports are used without
    declaring a strong dependence on package methods.
  * tools::checkRd() (used by R CMD check) detects more problems with
    \Sexpr-based dynamic content, including bad nesting of \Sexprs
    and invalid arguments.
  * tools::checkRd() now reports Rd titles and section names ending
    in a period; this is ignored by R CMD check unless environment
    variable _R_CHECK_RD_CHECKRD_MINLEVEL_ is set to -5 or smaller.
  * R CMD check now notes Rd files without an \alias, as long
    documented in 'Writing R Extensions' §1.3.1.  The check for a
    missing \description has been moved from tools::checkRd() to
    tools::checkRdContents().
  * R CMD check now visits inst/NEWS.Rd and OS-specific man
    subdirectories when checking Rd files.
  * tools::checkDocFiles() and tools::checkRdContents() now also
    check internal Rd files by default, but "specially" (ignoring
    missing documentation of arguments).
  * R CMD Rdiff gets option --useEx.
  * R CMD check now warns on non-portable uses of Fortran KIND such
    as INTEGER(KIND=4) and REAL(KIND=8).
    To see the failing lines set environment variable
    _R_CHECK_FORTRAN_KIND_DETAILS_ to a true value.
  * When checking Rd files, R CMD check now notes some of the "lost
    braces" that tools::checkRd() finds.  Typical problems are Rd
    macros missing the initial backslash (e.g., code{...}), in-text
    set notation (e.g., {1, 2}, where the braces need escaping), and
    \itemize lists with \describe-style entries of the form
    \item{label}{description}.
  * R CMD INSTALL (and hence check) will compile C++ code with
  - DR_NO_REMAP if environment variable _R_CXX_USE_NO_REMAP_ is set
    to a true value.  It is planned that this will in future become
    the default for compiling C++.
  * The new built-in Rd macro \dontdiff{} can be used to mark example
    code whose output should be ignored when comparing check output
    to reference output (tests/Examples/&lt;pkg&gt;-Ex.Rout.save).  The
    \dontdiff tag, like \donttest, is _not_ shown on the rendered
    help page, so provides a clean alternative to ##
    IGNORE_RDIFF_(BEGIN|END) comments.
  * R CMD build when there is no NAMESPACE, now uses the recommended
    exportPattern("^[^.]"), instead of exporting everything.
  * R CMD check now warns about non-ASCII characters in the NAMESPACE
    file (in addition to R files). Such packages are not portable and
    may fail to install on some platforms.
  C-LEVEL FACILITIES:
  * Headers R_ext/Applic.h and R-ext/Linpack.h used to include
    R_ext/BLAS.h although this was undocumented and unneeded by their
    documented entry points.  They no longer do so.
  * New function R_missing(), factored out from do_missing(), used to
    fix PR#18579.
  * SEXP type S4SXP has been renamed to OBJSXP to support
    experimenting with alternative object systems.  The S4SXP value
    can still be used in C code but is now deprecated.  Based on
    contributions from the R Consortium's Object-Oriented Programming
    Working Group.
  * New function pow1p(x,y) for accurate (1+x)^y.
  * mkCharLenCE was incorrectly documented to take a size_t length
    but was implemented with int (and character strings in R are
    limited to 2^31 - 1 bytes).
  DEPRECATED AND DEFUNCT:
  * data() no longer handles zipped data from long-defunct (since R
    2.13.0) --use-zip-data installations.
  * The legacy graphics devices pictex() and xfig() are now
    deprecated.  They do not support recent graphics enhancements and
    their font handling is rudimentary. The intention is to retain
    them for historical interest as long as they remain somewhat
    functional.
  * Support for encoding = "MacRoman" has been removed from the pdf()
    and postscript() devices - this was a legacy encoding supporting
    classic macOS up to 2001 and no longer has universal libiconv
    support.
  * is.R() is deprecated as no other S dialect is known to be in use
    (and this could only identify historical dialects, not future
    ones).
    Further information on calls can be obtained by setting the
    environment variable _R_DEPRECATED_IS_R_ to error which turns the
    deprecation warning into an error and so by default gives a
    traceback.  (This is done by R CMD check --as-cran.)
  * UseMethod() no longer forwards local variables assigned in the
    generic function into method call environments before evaluating
    the method body. This makes method calls behave more like
    standard function calls and makes method code easier to analyze
    correctly.
  * The twelve as.data.frame.&lt;class&gt;() methods which were deprecated
    only via _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ and in R CMD
    check --as-cran are formally deprecated now in favour of calling
    as.data.frame() or as.data.frame.vector().  The deprecation
    "check" now works also when as.data.frame() is S4 generic thanks
    to Ivan Krylov.
  * The default method for the directional comparison operators &lt;, &gt;,
    &lt;=, and &gt;= now signals an error when one of the operands is a
    language object, i.e. a symbol or a call.
  * For terms.formula(), deprecate abb and neg.out arguments
    _formally_ in addition to just documenting it.
  BUG FIXES:
  * The methods package is more robust to not being attached to the
    search path.  More work needs to be done.
  * pairwise.t.test() misbehaved when subgroups had 0 DF for
    variance, even with pool.sd = TRUE.  (PR#18594 by Jack Berry).
  * Probability distribution functions [dpq]&lt;distrib&gt;(x, *), but also
    bessel[IKJY](x, .) now consistently preserve attributes(x) when
    length(x) == 0, e.g., for a 2 x 0 matrix, thanks to Karolis
    Koncevičius' report PR#18509.
  * Group "Summary" computations such as sum(1:3, 4, na.rm = 5, NA,
    7, na.rm = LL) now give an error instead of either 17 or NN for
    LL true or false, as proposed by Ivan Krylov on the R-devel
    mailing list.  (This also means it is now an error to specify
    na.rm more than once.)
  * as.complex(x) now returns complex(real = x, imaginary = 0) for
    _all_ numerical and logical x, notably also for NA or
    NA_integer_.
  * Directories are now omitted by file.copy(, recursive = FALSE) and
    in file.append() (PR#17337).
  * gsub() and sub() are now more robust to integer overflow when
    reporting errors caused by too large input strings (PR#18346).
  * Top-level handlers are now more robust to attempts to remove a
    handler whilst handlers are running (PR#18508).
  * The handling of Alt+F4 in dialogs created on Windows using
    GraphApp has been fixed (PR#13870).
  * density() more consistently computes grid values for the
    FFT-based convolution, following Robert Schlicht's analysis and
    proposal in PR#18337, correcting density values typically by a
    factor of about 0.999.  Argument old.coords = TRUE provides back
    compatibility.
  * palette.colors() gains a name argument that defaults to FALSE
    controlling whether the vector of colours that is returned has
    names (where possible).  PR#18529.
  * tools::xgettext() no longer extracts the (non-translatable) class
    names from warningCondition and errorCondition calls.
  * S3method(&lt;gen&gt;, &lt;class&gt;, &lt;func&gt;) in the NAMESPACE file now works
    (again) when &lt;func&gt; is visible from the namespace, e.g.,
    imported, or in base.
  * getParseData(f) now also works for a function defined in the
    first of several &lt;pkg&gt;/R/*.R source files, thanks to Kirill
    Müller's report and Duncan Murdoch's patch in PR#16756.
  * Rd \Sexpr macros with nested #ifdef conditionals were not
    processed.
  * A non-blocking connection with non-default encoding (such as a
    socket) now correctly returns from readLines() after new data has
    arrived also when its EOF had been reached previously.  Thanks to
    Peter Meilstrup's report on R-devel and Ivan Krylov's report and
    patch proposal in PR#18555.
  * tools::checkRdContents() failed to detect empty argument
    descriptions when they spanned multiple lines, including those
    generated by prompt().  These cases are now noted by R CMD check.
  * Plain-text help no longer outputs spurious colons in the
    arguments list (for multi-line \item labels in the Rd source).
  * kappa() and rcond() work correctly in more cases; kappa(., norm =
    "2") now warns that it computes the 1-norm with (default) exact =
    FALSE; prompted by Mikael Jagan's quite comprehensive PR#18543.
  * Rd skeletons generated by prompt() or promptData() now use a
    dummy title (so R CMD build works).  tools::checkRdContents() has
    been updated to detect such template leftovers, including from
    promptPackage().
  * When S4 method dispatch fails because no method was found, the
    error message now includes the signature argument names; thanks
    to Michael Chirico's proposal on the R-devel list.
  * withAutoprint({ .. }) now preserves srcrefs previously lost,
    thanks to Andrew Simmons' report plus fix in PR#18572.
  * transform.data.frame() no longer adjusts names; in particular,
    untransformed variables are kept as-is, including those with
    syntactically invalid names (PR#17890).
  * The keep.source option for Rd \Sexpr blocks is no longer ignored.
  * The formula methods for t.test() and wilcox.test() now catch when
    paired is passed, addressing PR#14359; use Pair(x1, x2) ~ 1 for a
    paired test.
  * The level reported in the browser prompt was often too large. It
    now shows the number of browser contexts on the stack.
  * For cbind() and rbind(), the optional deparse.level argument is
    now properly passed to methods, thanks to Mikael Jagan's PR#18579
    and comments there.
  * Some error and warning messages for large ('long vector')
    matrix(v, nr, nc) and dim(m) &lt;- d are now correct about sizes,
    using long long formatting, fixing PR#18612 (and more) reported
    by Mikael Jagan.
  * readChar(useBytes = TRUE) now terminates strings even when the
    underlying connection uses extra spaces in the input buffer.
    This fixes problems with extra garbage seen with gzip
    connections, PR#18605.
  * Named capture in PCRE regular expressions now works also with
    more than 127 named groups (PR#18588).
  * Datetime functions are now robust against long jumps when dealing
    with internal time zone changes.  This avoids confusing warnings
    about an invalid time zone, previously triggered by turning
    warnings into errors or handling them via tryCatch (PR#17966,
    PR#17780).
  * Datetime functions now restore even an empty TZ environment
    variable after internal time zone changes (PR#17724).  This makes
    results of datetime functions with this (typically unintentional)
    setting more predictable.
  * drop.terms(*) now drops response as by default, keep.response =
    FALSE, fixing PR#18564 thanks to Mikael Jagan.
  * dummy.coef(.) now also works for lm()-models with character
    categorical predictor variables rather than factor ones, fixing
    PR#18635 reported by Jinsong Zhao.
  * formals(f) &lt;- formals(f) now also works for a function w/o
    arguments and atomic _constant_ body(f).
  * Correct as.function(&lt;invalid list&gt;, .)'s error message.
  * removeSource() is yet more thorough in finding and removing
    "srcref" and the other source references from parsed R language
    chunks, fixing PR#18638 thanks to Andrew Simmons.
  * dgeom() is more accurate now, notably when its result is very
    small, fixing PR#18642 thanks to the proposal of Morten Welinder,
    also improving other instances where C level binom_raw(x, n, ..)
    has x == 0 or x== n.
  * warning() with options(warn = 1) has improved output for
    multi-line messages.
  * axis.Date() and axis.POSIXct() now respect the par("lab") setting
    for the number of pretty() intervals.
  * Comparisons for language objects (which are based on deparsing)
    are now more careful about using accurate deparsed results
    (PR#18676).
  * Plain-text help (Rd2txt) now correctly preserves blank lines
    following single-line \dontrun code.
  * &lt;POSIXlt&gt;[*] no longer sets wrong "balanced" attribute, fixing
    PR#18681 thanks to Mikael Jagan.
  * str(&lt;classed-call&gt;) now deparses the call as expected, fixing
    PR#18684, reported by Dave Slager.
  * In Rd examples, code following the closing brace of a \dontrun,
    \dontshow or \donttest tag on the same line is no longer skipped
    when R CMD check runs the examples.
  * as.data.frame(matrix(*, ncol=0)) now gets valid names() and
    colnames(); reported by Davis Vaughan on the R-devel list.
  * Internal Mathlib function stirlerr(n) is now almost fully
    (52-bit) accurate for all n &gt;= ~5.9 and more accurate also in the
    range 1 -- 5.9.  This entails small ("after 12th decimal")
    changes in density functions, e.g., dgamma() in _some_ regions of
    their support.  The fix was partly prompted by Morten Welinder's
    PR#18640.
  * Numbers like 9876543.2 are now considered non-integer by Mathlib
    internal R_nonint(), amending original fix of PR#15734.
  * Rd comment lines no longer cause broken paragraphs in the
    rendered PDF and plain-text help. In code blocks, pure comment
    lines (starting with %) no longer produce an empty line.
  * xtabs(Freq ~ .) now consistently defaults to na.action = na.pass,
    using na.rm = FALSE (added as an argument) when summing over Freq
    (PR#17770).
  * tools::testInstalledPackage() is no longer silent about failures
    from running examples or tests and its return code no longer
    ignores failures from checking vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1718366400">- CHANGES IN R 4.4.1:
  C-LEVEL FACILITIES:
  * Functions R_atof and R_strtod declared in header R_ext/Utils.h
    are now documented in 'Writing R Extensions' and so formally part
    of the API.
  * The non-API entry points Rf_setSVector, Rf_StringFalse,
    Rf_StringTrue and Rf_isBlankString have been added to those
    reported by R CMD check.
  * The new function Rf_allocLang is now available. This provides an
    alternative to the idiom of calling Rf_allocList followed by
    SET_TYPEOF.
  UTILITIES:
  * R CMD check now reports as warnings what gfortran calls 'Fortran
    2018 deleted features', all of which have long been marked as
    'obsolescent' and some of which were deleted in Fortran 2008 or
    earlier.  Fortran compilers are no longer required to support
    these.
  BUG FIXES:
  * as.numeric(), scan(), type.convert() and other places which use
    the internal C function R_strtod now require a _non-empty_ digit
    sequence in a decimal or binary exponent.  This aligns with the
    C/POSIX standard for strtod and with ?NumericConstants.
  * as.data.frame(m, make.names=NA) now works correctly for a matrix
    m with NA's in row names.
  * The error message from &lt;POSIXlt&gt;[["hour"]] and similar now
    mentions *[[, "hour"]], as wished for in PR#17409 and proposed by
    Michael Chirico.
  * qbinom() and potentially qpois(), qnbinom(), no longer sometimes
    fail accurate inversion (of pbinom(), etc), thanks to Christopher
    Chang's report and patch in PR#18711.
  * The internal help server on Windows can again serve requests sent
    in quick succession, fixing a regression in R 4.4.0.
  * debugcall(&lt;S3Generic&gt;()) now also works when a corresponding
    S4-generic version is in the methods cache (PR#18143).
  * Package tools' toTitleCase(ch0) now returns character(0) when ch0
    is of zero length; fixing PR#18724, reported by David Hugh Jones.
  * R CMD check is no longer broken (without a check result and no
    explanation in 00check.log) for a package which declares an
    invalid VignetteBuilder in DESCRIPTION but has no vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1730376000">- CHANGES IN R 4.4.2:
  C-LEVEL FACILITIES:
  * The S-compatibility macros F77_COM and F77_COMDECL defined in
    header R_ext/RS.h are deprecated and will be removed shortly.  We
    could find no record of their use.
  BUG FIXES:
  * Mathlib function lgammacor(x) no longer warns about underflow to
    zero for large x.
  * Text widths and heights were incorrectly reported by the Quartz
    device if the drawing context didn't exist yet (typically when
    drawing off-screen to a window that is yet to appear, see
    PR#18591).
  * The Quartz device could segfault in cases where paths with spaces
    are used in the new glyph drawing API.  Thanks to Tomek
    Gieorgijewski (PR#18758).
  * On macOS in R CRAN builds, it is again possible to read
    little-endian UTF-16 text with a BOM from a connection using
    encoding="UTF-16".  Users building R from source should avoid
    using the system libiconv in macOS 14.1 and later.
  * methods' internal .requirePackage() now re-enables primitive
    method dispatch when needed; thanks to Ivan Krylov for
    demystifying CRAN package check failures on the R-devel mailing
    list.</changelog>
</package>
<package pkgid="3e2b3b86b07f3b58f24e2485a807d8c0f47eeedc96a92acbe3e7841b60eabe0179ecc0de00fa0349e01f9132e00921dac2c181033b425352306cd422598d436e" name="R-rpart" arch="i586">
  <version epoch="0" ver="4.1.23" rel="51.0.2.2.sr20241103"/>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1620302400">- To get in sync with d:l:R:autoCRAN the Matrix package's split
  in -devel was reversed.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339200">- improved spec file according to comments of dimstar in
  https://build.opensuse.org/request/show/892685</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339201">- CHANGES IN R 4.1.0:
  FUTURE DIRECTIONS:
  * It is planned that the 4.1.x series will be the last to support
    32-bit Windows, with production of binary packages for that
    series continuing until early 2023.
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Data set esoph in package datasets now provides the correct
    numbers of controls; previously it had the numbers of cases added
    to these.  (Reported by Alexander Fowler in PR#17964.)
  NEW FEATURES:
  * www.omegahat.net is no longer one of the repositories known by
    default to setRepositories().  (Nowadays it only provides source
    packages and is often unavailable.)
  * Function package_dependencies() (in package tools) can now use
    different dependency types for direct and recursive dependencies.
  * The checking of the size of tarball in R CMD check --as-cran
    &lt;pkg&gt; may be tweaked via the new environment variable
    _R_CHECK_CRAN_INCOMING_TARBALL_THRESHOLD_, as suggested in
    PR#17777 by Jan Gorecki.
  * Using c() to combine a factor with other factors now gives a
    factor, an ordered factor when combining ordered factors with
    identical levels.
  * apply() gains a simplify argument to allow disabling of
    simplification of results.
  * The format() method for class "ftable" gets a new option justify.
    (Suggested by Thomas Soeiro.)
  * New ...names() utility.  (Proposed by Neal Fultz in PR#17705.)
  * type.convert() now warns when its as.is argument is not
    specified, as the help file always said it _should_.  In that
    case, the default is changed to TRUE in line with its change in
    read.table() (related to stringsAsFactor) in R 4.0.0.
  * When printing list arrays, classed objects are now shown _via_
    their format() value if this is a short enough character string,
    or by giving the first elements of their class vector and their
    length.
  * capabilities() gets new entry "Rprof" which is TRUE when R has
    been configured with the equivalent of --enable-R-profiling (as
    it is by default).  (Related to Michael Orlitzky's report
    PR#17836.)
  * str(xS4) now also shows extraneous attributes of an S4 object
    xS4.
  * Rudimentary support for vi-style tags in rtags() and R CMD rtags
    has been added.  (Based on a patch from Neal Fultz in PR#17214.)
  * checkRdContents() is now exported from tools; it and also
    checkDocFiles() have a new option chkInternal allowing to check
    Rd files marked with keyword "internal" as well.  The latter can
    be activated for R CMD check via environment variable
    _R_CHECK_RD_INTERNAL_TOO_.
  * New functions numToBits() and numToInts() extend the raw
    conversion utilities to (double precision) numeric.
  * Functions URLencode() and URLdecode() in package utils now work
    on vectors of URIs.  (Based on patch from Bob Rudis submitted
    with PR#17873.)
  * path.expand() can expand ~user on most Unix-alikes even when
    readline is not in use.  It tries harder to expand ~, for example
    should environment variable HOME be unset.
  * For HTML help (both dynamic and static), Rd file links to help
    pages in external packages are now treated as references to
    topics rather than file names, and fall back to a file link only
    if the topic is not found in the target package. The earlier rule
    which prioritized file names over topics can be restored by
    setting the environment variable _R_HELP_LINKS_TO_TOPICS_ to a
    false value.
  * c() now removes NULL arguments before dispatching to methods,
    thus simplifying the implementation of c() methods, _but_ for
    back compatibility keeps NULL when it is the first argument.
    (From a report and patch proposal by Lionel Henry in PR#17900.)
  * Vectorize()'s result function's environment no longer keeps
    unneeded objects.
  * Function ...elt() now propagates visibility consistently with
    ..n.  (Thanks to Lionel Henry's PR#17905.)
  * capture.output() no longer uses non-standard evaluation to
    evaluate its arguments.  This makes evaluation of functions like
    parent.frame() more consistent.  (Thanks to Lionel Henry's
    PR#17907.)
  * packBits(bits, type="double") now works as inverse of
    numToBits().  (Thanks to Bill Dunlap's proposal in PR#17914.)
  * curlGetHeaders() has two new arguments, timeout to specify the
    timeout for that call (overriding getOption("timeout")) and TLS
    to specify the minimum TLS protocol version to be used for
    https:// URIs (_inter alia_ providing a means to check for sites
    using deprecated TLS versions 1.0 and 1.1).
  * For nls(), an optional constant scaleOffset may be added to the
    denominator of the relative offset convergence test for cases
    where the fit of a model is expected to be exact, thanks to a
    proposal by John Nash.  nls(*, trace=TRUE) now also shows the
    convergence criterion.
  * Numeric differentiation _via_ numericDeriv() gets new optional
    arguments eps and central, the latter for taking central divided
    differences.  The latter can be activated for nls() via
    nls.control(nDcentral = TRUE).
  * nls() now passes the trace and control arguments to getInitial(),
    notably for all self-starting models, so these can also be fit in
    zero-noise situations via a scaleOffset.  For this reason, the
    initial function of a selfStart model must now have ... in its
    argument list.
  * bquote(splice = TRUE) can now splice expression vectors with
    attributes: this makes it possible to splice the result of
    parse(keep.source = TRUE).  (Report and patch provided by Lionel
    Henry in PR#17869.)
  * textConnection() gets an optional name argument.
  * get(), exists(), and get0() now signal an error if the first
    argument has length greater than 1.  Previously additional
    elements were silently ignored.  (Suggested by Antoine Fabri on
    R-devel.)
  * R now provides a shorthand notation for creating functions, e.g.
    \(x) x + 1 is parsed as function(x) x + 1.
  * R now provides a simple native forward pipe syntax |&gt;.  The
    simple form of the forward pipe inserts the left-hand side as the
    first argument in the right-hand side call.  The pipe
    implementation as a syntax transformation was motivated by
    suggestions from Jim Hester and Lionel Henry.
  * all.equal(f, g) for functions now by default also compares their
    environment(.)s, notably via new all.equal method for class
    function.  Comparison of nls() fits, e.g., may now need
    all.equal(m1, m2, check.environment = FALSE).
  * .libPaths() gets a new option include.site, allowing to _not_
    include the site library.  (Thanks to Dario Strbenac's suggestion
    and Gabe Becker's PR#18016.)
  * Lithuanian translations are now available.  (Thanks to Rimantas
    Zakauskas.)
  * names() now works for DOTSXP objects.  On the other hand, in
    R-lang, the R language manual, we now warn against relying on the
    structure or even existence of such dot-dot-dot objects.
  * all.equal() no longer gives an error on DOTSXP objects.
  * capabilities("cairo") now applies only to the file-based devices
    as it is now possible (if very unusual) to build R with Cairo
    support for those but not for X11().
  * There is optional support for tracing the progress of
    loadNamespace() - see its help.
  * (Not Windows.)  l10n_info() reports an additional element, the
    name of the encoding as reported by the OS (which may differ from
    the encoding part (if any) of the result from
    Sys.getlocale("LC_CTYPE").
  * New function gregexec() which generalizes regexec() to find _all_
    disjoint matches and well as all substrings corresponding to
    parenthesized subexpressions of the given regular expression.
    (Contributed by Brodie Gaslam.)
  * New function charClass() in package utils to query the
    wide-character classification functions in use (such as
    iswprint).
  * The names of quantile()'s result no longer depend on the global
    getOption("digits"), but quantile() gets a new optional argument
    digits = 7 instead.
  * grep(), sub(), regexp and variants work considerably faster for
    long factors with few levels.  (Thanks to Michael Chirico's
    PR#18063.)
  * Provide grouping of x11() graphics windows within a window
    manager such as Gnome or Unity; thanks to a patch by Ivan Krylov
    posted to R-devel.
  * The split() method for class data.frame now allows the f argument
    to be specified as a formula.
  * sprintf now warns on arguments unused by the format string.
  * New palettes "Rocket" and "Mako" for hcl.colors() (approximating
    palettes of the same name from the 'viridisLite' package).
    Contributed by Achim Zeileis.
  * The base environment and its namespace are now locked (so one can
    no longer add bindings to these or remove from these).
  * Rterm handling of multi-byte characters has been improved,
    allowing use of such characters when supported by the current
    locale.
  * Rterm now accepts ALT+ +xxxxxxxx sequences to enter Unicode
    characters as hex digits.
  * Environment variable LC_ALL on Windows now takes precedence over
    LC_CTYPE and variables for other supported categories, matching
    the POSIX behaviour.
  * duplicated() and anyDuplicated() are now optimized for integer
    and real vectors that are known to be sorted via the ALTREP
    framework. Contributed by Gabriel Becker via PR#17993.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 14
    and so packages that provide graphics devices should be
    reinstalled.
  * Graphics devices should now specify deviceVersion to indicate
    what version of the graphics engine they support.
  * Graphics devices can now specify deviceClip.  If TRUE, the
    graphics engine will never perform any clipping of output itself.
    The clipping that the graphics engine does perform (for both
    canClip = TRUE and canClip = FALSE) has been improved to avoid
    producing unnecessary artifacts in clipped output.
  * The grid package now allows gpar(fill) to be a linearGradient(),
    a radialGradient(), or a pattern().  The viewport(clip) can now
    also be a grob, which defines a clipping path, and there is a new
    viewport(mask) that can also be a grob, which defines a mask.
    These new features are only supported so far on the Cairo-based
    graphics devices and on the pdf() device.
  * (Not Windows.)  A warning is given when a Cairo-based type is
    specified for a png(), jpeg(), tiff() or bmp() device but Cairo
    is unsupported (so type = "Xlib" is tried instead).
  * grSoftVersion() now reports the versions of FreeType and
    FontConfig if they are used directly (not _via_ Pango), as is
    most commonly done on macOS.
  C-LEVEL FACILITIES:
  * The _standalone_ libRmath math library and R's C API now provide
    log1pexp() again as documented, and gain log1mexp().
  INSTALLATION on a UNIX-ALIKE:
  * configure checks for a program pkgconf if program pkg-config is
    not found.  These are now only looked for on the path (like
    almost all other programs) so if needed specify a full path to
    the command in PKG_CONFIG, for example in file config.site.
  * C99 function iswblank is required - it was last seen missing ca
    2003 so the workaround has been removed.
  * There are new configure options --with-internal-iswxxxxx,
  - -with-internal-towlower and --with-internal-wcwidth which allows
    the system functions for wide-character classification,
    case-switching and width (wcwidth and wcswidth) to be replaced by
    internal ones.  The first has long been used on macOS, AIX (and
    Windows) but this enables it to be unselected there and selected
    for other platforms (it is the new default on Solaris).  The
    second is new in this version of R and is selected by default on
    macOS and Solaris.  The third has long been the default and
    remains so as it contains customizations for East Asian
    languages.
    System versions of these functions are often minimally
    implemented (sometimes only for ASCII characters) and may not
    cover the full range of Unicode points: for example Solaris (and
    Windows) only cover the Basic Multilingual Plane.
  * Cairo installations without X11 are more likely to be detected by
    configure, when the file-based Cairo graphics devices will be
    available but not X11(type = "cairo").
  * There is a new configure option --with-static-cairo which is the
    default on macOS.  This should be used when only static cairo
    (and where relevant, Pango) libraries are available.
  * Cairo-based graphics devices on platforms without Pango but with
    FreeType/FontConfig will make use of the latter for font
    selection.
  LINK-TIME OPTIMIZATION on a UNIX-ALIKE:
  * Configuring with flag --enable-lto=R now also uses LTO when
    installing the recommended packages.
  * R CMD INSTALL and R CMD SHLIB have a new flag --use-LTO to use
    LTO when compiling code, for use with R configured with
  - -enable-lto=R.  For R configured with --enable-lto, they have
    the new flag --no-use-LTO.
    Packages can opt in or out of LTO compilation _via_ a UseLTO
    field in the DESCRIPTION file.  (As usual this can be overridden
    by the command-line flags.)
  BUILDING R on Windows:
  * for GCC &gt;= 8, FC_LEN_T is defined in config.h and hence character
    lengths are passed from C to Fortran in _inter alia_ BLAS and
    LAPACK calls.
  * There is a new text file src/gnuwin32/README.compilation, which
    outlines how C/Fortran code compilation is organized and
    documents new features:
  * R can be built with Link-Time Optimization with a suitable
    compiler - doing so with GCC 9.2 showed several
    inconsistencies which have been corrected.
  * There is support for cross-compiling the C and Fortran code
    in R and standard packages on suitable (Linux) platforms.
    This is mainly intended to allow developers to test later
    versions of compilers - for example using GCC 9.2 or 10.x has
    detected issues that GCC 8.3 in Rtools40 does not.
  * There is experimental support for cross-building R packages
    with C, C++ and/or Fortran code.
  * The R installer can now be optionally built to support a single
    architecture (only 64-bit or only 32-bit).
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++14 where
    available (which it is on all currently checked platforms): if
    not (as before) C++11 is used if available otherwise C++ is not
    supported.
    Packages which specify C++11 will still be installed using C++11.
    C++14 compilers may give deprecation warnings, most often for
    std::random_shuffle (deprecated in C++14 and removed in C++17).
    Either specify C++11 (see 'Writing R Extensions') or modernize
    the code and if needed specify C++14.  The latter has been
    supported since R 3.4.0 so the package's DESCRIPTION would need
    to include something like
    Depends: R (&gt;= 3.4)
  PACKAGE INSTALLATION on Windows:
  * R CMD INSTALL and R CMD SHLIB make use of their flag --use-LTO
    when the LTO_OPT make macro is set in file etc/${R_ARCH}/Makeconf
    or in a personal/site Makevars file.  (For details see 'Writing R
    Extensions' SS4.5.)
    This provides a valuable check on code consistency.  It does work
    with GCC 8.3 as in Rtools40, but that does not detect everything
    the CRAN checks with current GCC do.
  PACKAGE INSTALLATION on macOS:
  * The default personal library directory on builds with
  - -enable-aqua (including CRAN builds) now differs by CPU type,
    one of
    ~/Library/R/x86_64/x.y/library
    ~/Library/R/arm64/x.y/library
    This uses the CPU type R (and hence the packages) were built for,
    so when a x86_64 build of R is run under Rosetta emulation on an
    arm64 Mac, the first is used.
  UTILITIES:
  * R CMD check can now scan package functions for bogus return
    statements, which were possibly intended as return() calls (wish
    of PR#17180, patch by Sebastian Meyer). This check can be
    activated via the new environment variable
    _R_CHECK_BOGUS_RETURN_, true for --as-cran.
  * R CMD build omits tarballs and binaries of previous builds from
    the top-level package directory.  (PR#17828, patch by Sebastian
    Meyer.)
  * R CMD check now runs sanity checks on the use of LazyData, for
    example that a data directory is present and that
    LazyDataCompression is not specified without LazyData and has a
    documented value.  For packages with large LazyData databases
    without specifying LazyDataCompression, there is a reference to
    the code given in 'Writing R Extensions' SS1.1.6 to test the
    choice of compression (as in all the CRAN packages tested a
    non-default method was preferred).
  * R CMD build removes LazyData and LazyDataCompression fields from
    the DESCRIPTION file of packages without a data directory.
  ENCODING-RELATED CHANGES:
  * The parser now treats \Unnnnnnnn escapes larger than the upper
    limit for Unicode points (\U10FFFF) as an error as they cannot be
    represented by valid UTF-8.
    Where such escapes are used for outputting non-printable
    (including unassigned) characters, 6 hex digits are used (rather
    than 8 with leading zeros).  For clarity, braces are used, for
    example \U{0effff}.
  * The parser now looks for non-ASCII spaces on Solaris (as
    previously on most other OSes).
  * There are warnings (including from the parser) on the use of
    unpaired surrogate Unicode points such as \uD834.  (These cannot
    be converted to valid UTF-8.)
  * Functions nchar(), tolower(), toupper() and chartr() and those
    using regular expressions have more support for inputs with a
    marked Latin-1 encoding.
  * The character-classification functions used (by default) to
    replace the system iswxxxxx functions on Windows, macOS and AIX
    have been updated to Unicode 13.0.0.
    The character-width tables have been updated to include new
    assignments in Unicode 13.0.0.
  * The code for evaluating default (extended) regular expressions
    now uses the same character-classification functions as the rest
    of R (previously they differed on Windows, macOS and AIX).
  * There is a build-time option to replace the system's
    wide-character wctrans C function by tables shipped with R: use
    configure option --with-internal-towlower or (on Windows)
  - DUSE_RI18N_CASE in CFLAGS when building R.  This may be needed
    to allow tolower() and toupper() to work with Unicode characters
    beyond the Basic Multilingual Plane where not supported by system
    functions (e.g. on Solaris where it is the new default).
  * R is more careful when truncating UTF-8 and other multi-byte
    strings that are too long to be printed, passed to the system or
    libraries or placed into an internal buffer.  Truncation will no
    longer produce incomplete multibyte characters.
  DEPRECATED AND DEFUNCT:
  * Function plclust() from the package stats and
    package.dependencies(), pkgDepends(), getDepList(),
    installFoundDepends(), and vignetteDepends() from package tools
    are defunct.
  * Defunct functions checkNEWS() and readNEWS() from package tools
    and CRAN.packages() from utils have been removed.
  * R CMD config CXXCPP is defunct (it was deprecated in R 3.6.2).
  * parallel::detectCores() drops support for Irix (retired in 2013).
  * The LINPACK argument to chol.default(), chol2inv(),
    solve.default() and svd() has been defunct since R 3.1.0.  It was
    silently ignored up to R 4.0.3 but now gives an error.
  * Subsetting/indexing, such as ddd[*] or ddd$x on a DOTSXP
    (dot-dot-dot) object ddd has been disabled; it worked by accident
    only and was undocumented.
  BUG FIXES:
  * Many more C-level allocations (mainly by malloc and strdup) are
    checked for success with suitable alternative actions.
  * Bug fix for replayPlot(); this was turning off graphics engine
    display list recording if a recorded plot was replayed in the
    same session.  The impact of the bug became visible if resize the
    device after replay OR if attempted another savePlot() after
    replay (empty display list means empty screen on resize or empty
    saved plot).
  * R CMD check etc now warn when a package exports non-existing S4
    classes or methods, also in case of no "methods" presence.
    (Reported by Alex Bertram; reproducible example and patch by
    Sebastian Meyer in PR#16662.)
  * boxplot() now also accepts calls for labels such as ylab, the
    same as plot().  (Reported by Marius Hofert.)
  * The help page for xtabs() now correctly states that addNA is
    setting na.action = na.pass among others.  (Reported as PR#17770
    by Thomas Soeiro.)
  * The R CMD check &lt;pkg&gt; gives a longer and more comprehensible
    message when DESCRIPTION misses dependencies, e.g., in Imports:.
    (Thanks to the contributors of PR#17179.)
  * update.default() now calls the generic update() on the formula to
    work correctly for models with extended formulas.  (As reported
    and suggested by Neal Fultz in PR#17865.)
  * The horizontal position of leaves in a dendrogram is now correct
    also with center = FALSE.  (PR#14938, patch from Sebastian
    Meyer.)
  * all.equal.POSIXt() no longer warns about and subsequently ignores
    inconsistent "tzone" attributes, but describes the difference in
    its return value (PR#17277).  This check can be disabled _via_
    the new argument check.tzone = FALSE as suggested by Sebastian
    Meyer.
  * as.POSIXct() now populates the "tzone" attribute from its tz
    argument when x is a logical vector consisting entirely of NA
    values.
  * x[[2^31]] &lt;- v now works.  (Thanks to the report and patch by
    Suharto Anggono in PR#17330.)
  * In log-scale graphics, axis() ticks and label positions are now
    computed more carefully and symmetrically in their range,
    typically providing _more_ ticks, fulfilling wishes in PR#17936.
    The change really corresponds to an improved axisTicks() (package
    grDevices), potentially influencing grid and lattice, for
    example.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now correct to at
    least five digits where it was catastrophically wrong,
    previously.
  * sum(df) and similar "Summary"- and "Math"-group member functions
    now work for data frames df with logical columns, notably also of
    zero rows.  (Reported to R-devel by Martin "b706".)
  * unsplit() had trouble with tibbles due to unsound use of rep(NA,
    len)-indexing, which should use NA_integer_ (Reported to R-devel
    by Mario Annau.)
  * pnorm(x, log.p = TRUE) underflows to -Inf slightly later.
  * show(&lt;hidden S4 generic&gt;) prints better and without quotes for
    non-hidden S4 generics.
  * read.table() and relatives treated an "NA" column name as missing
    when check.names = FALSE PR#18007.
  * Parsing strings containing UTF-16 surrogate pairs such as
    "\uD834\uDD1E" works better on some (uncommon) platforms.
    sprintf("%X", utf8ToInt("\uD834\uDD1E")) should now give "1D11E"
    on all platforms.
  * identical(x,y) is no longer true for differing DOTSXP objects,
    fixing PR#18032.
  * str() now works correctly for DOTSXP and related exotics, even
    when these are doomed.
    Additionally, it no longer fails for lists with a class and
    "irregular" method definitions such that e.g. lapply(*) will
    necessarily fail, as currently for different igraph objects.
  * Too long lines in environment files (e.g. Renviron) no longer
    crash R. This limit has been increased to 100,000 bytes.
    (PR#18001.)
  * There is a further workaround for FreeType giving incorrect
    italic font faces with cairo-based graphics devices on macOS.
  * add_datalist(*, force = TRUE) (from package tools) now actually
    updates an existing data/datalist file for new content.  (Thanks
    to a report and patch by Sebastian Meyer in PR#18048.)
  * cut.Date() and cut.POSIXt() could produce an empty last interval
    for breaks = "months" or breaks = "years".  (Reported as PR#18053
    by Christopher Carbone.)
  * Detection of the encoding of 'regular' macOS locales such as
    en_US (which is UTF-8) had been broken by a macOS change:
    fortunately these are now rarely used with en_US.UTF-8 being
    preferred.
  * sub() and gsub(pattern, repl, x, *) now keep attributes of x such
    as names() also when pattern is NA (PR#18079).
  * Time differences ("difftime" objects) get a replacement and a
    rep() method to keep "units" consistent.  (Thanks to a report and
    patch by Nicolas Bennett in PR#18066.)
  * The \RdOpts macro, setting defaults for \Sexpr options in an Rd
    file, had been ineffective since R 2.12.0: it now works again.
    (Thanks to a report and patch by Sebastian Meyer in PR#18073.)
  * mclapply and pvec no longer accidentally terminate parallel
    processes started before by mcparallel or related calls in
    package parallel (PR#18078).
  * grep and other functions for evaluating (extended) regular
    expressions handle in Unicode also strings not explicitly flagged
    UTF-8, but flagged native when running in UTF-8 locale.
  * Fixed a crash in fifo implementation on Windows (PR#18031).
  * Binary mode in fifo on Windows is now properly detected from
    argument open (PR#15600, PR#18031).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1622808000">- The line %{__install} -m 755 -d %{_infodir}
  no longer works in TW or Factory.
  But without that line it works everywhere. So this instruction
  was commented out of the spec file.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1628596800">- CHANGES IN R 4.1.1:
  NEW FEATURES:
  * require(pkg, quietly = TRUE) is quieter and in particular does
    not warn if the package is not found.
  DEPRECATED AND DEFUNCT:
  * Use of ftp:// URIs should be regarded as deprecated, with
    on-going support confined to method = "libcurl" and not routinely
    tested.  (Nowadays no major browser supports them.)
  * The non-default method = "internal" is deprecated for http:// and
    ftp:// URIs for both download.file and url.
  * On Windows, method = "wininet" is deprecated for http://,
    https:// and ftp:// URIs for both download.file and url.  (A
    warning is only given for ftp://.)
    For ftp:// URIs the default method is now "libcurl" if available
    (which it is on CRAN builds).
    method = "wininet" remains the default for http:// and https://
    URIs but if libcurl is available, using method = "libcurl" is
    preferred.
  INSTALLATION:
  * make check now works also without a LaTeX installation.  (Thanks
    to Sebastian Meyer's PR#18103.)
  BUG FIXES:
  * make check-devel works again in an R build configured with
  - -without-recommended-packages.
  * qnbinom(p, size, mu) for large size/mu is correct now in a range
    of cases (PR#18095); similarly for the (size, prob)
    parametrization of the negative binomial.  Also qpois() and
    qbinom() are better and or faster for extreme cases.  The
    underlying C code has been modularized and is common to all four
    cases of discrete distributions.
  * gap.axis is now part of the axis() arguments which are passed
    from bxp(), and hence boxplot().  (Thanks to Martin Smith's
    report and suggestions in PR#18109.)
  * .First and .Last can again be set from the site profile.
  * seq.int(from, to, *) and seq.default(..) now work better in large
    range cases where from-to is infinite where the two boundaries
    are finite.
  * all.equal(x,y) now returns TRUE correctly also when several
    entries of abs(x) and abs(y) are close to .Machine$double.xmax,
    the largest finite numeric.
  * model.frame() now clears the object bit when removing the class
    attribute of a value via na.action (PR#18100).
  * charClass() now works with multi-character strings on Windows
    (PR#18104, fixed by Bill Dunlap).
  * encodeString() on Solaris now works again in Latin-1 encoding on
    characters represented differently in UTF-8.  Support for
    surrogate pairs on Solaris has been improved.
  * file.show() on Windows now works with non-ASCII path names
    representable in the current native encoding (PR#18132).
  * Embedded R on Windows can now find R home directory via the
    registry even when installed only for the current user
    (PR#18135).
  * pretty(x) with finite x now returns finite values also in the
    case where the extreme x values are close in size to the maximal
    representable number .Machine$double.xmax.
    Also, it's been tweaked for very small ranges and when a boundary
    is close (or equal) to zero; e.g., pretty(c(0,1e-317)) no longer
    has negative numbers, currently still warning about a very small
    range, and pretty(2^-(1024 - 2^-1/(c(24,10)))) is more accurate.
  * The error message for not finding vignette files when weaving has
    correct file sizes now. (Thanks to Sebastian Meyer's PR#18154.)
  * dnbinom(20, &lt;large&gt;, 1) now correctly gives 0, and similar cases
    are more accurate with underflow precaution.  (Reported by Francisco Vera Alcivar in PR#18072.)</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635163200">- repaired https://bugzilla.suse.com/show_bug.cgi?id=1191380
  (rpmacros now go to rpmmacrodir)
- minor clean-ups in spec file</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635768000">- CHANGES IN R 4.1.2:
  C-LEVEL FACILITIES:
  * The workaround in headers R.h and Rmath.h (using namespace std;)
    for the Oracle Developer Studio compiler is no longer needed now
    C++11 is required so has been removed.  A couple more usages of
    log() (which should have been std::log()) with an int argument
    are reported on Solaris.
  * The undocumented limit of 4095 bytes on messages from the
    S-compatibility macros PROBLEM and MESSAGE is now documented and
    longer messages will be silently truncated rather than
    potentially causing segfaults.
  * If the R_NO_SEGV_HANDLER environment variable is non-empty, the
    signal handler for SEGV/ILL/BUS signals (which offers recovery
    user interface) is not set. This allows more reliable debugging
    of crashes that involve the console.
  DEPRECATED AND DEFUNCT:
  * The legacy S-compatibility macros PROBLEM, MESSAGE, ERROR, WARN,
    WARNING, RECOVER, ... are deprecated and will be hidden in R
    4.2.0. R's native interface of Rf_error and Rf_warning has long
    been preferred.
  BUG FIXES:
  * .mapply(F, dots, .) no longer segfaults when dots is not a list
    and uses match.fun(F) as always documented; reported by Andrew
    Simmons in PR#18164.
  * hist(&lt;Date&gt;, ...) and hist(&lt;POSIXt&gt;, ...)  no longer pass
    arguments for rect() (such as col and density) to axis().
    (Thanks to Sebastian Meyer's PR#18171.)
  * \Sexpr{ch} now preserves Encoding(ch). (Thanks to report and
    patch by Jeroen Ooms in PR#18152.)
  * Setting the RNG to "Marsaglia-Multicarry" e.g., by RNGkind(), now
    warns in more places, thanks to Andr'e Gillibert's report and
    patch in PR#18168.
  * gray(numeric(), alpha=1/2) no longer segfaults, fixing PR#18183,
    reported by Till Krenz.
  * Fixed dnbinom(x, size=&lt;very_small&gt;, .., log=TRUE) regression,
    reported by Martin Morgan.
  * as.Date.POSIXlt(x) now keeps names(x), thanks to Davis Vaughan's
    report and patch in PR#18188.
  * model.response() now strips an "AsIs" class typically, thanks to
    Duncan Murdoch's report and other discussants in PR#18190.
  * try() is considerably faster in case of an error and long call,
    as e.g., from some do.call().  Thanks to Alexander Kaever's
    suggestion posted to R-devel.
  * qqline(y = &lt;object&gt;) such as y=I(.), now works, see also
    PR#18190.
  * Non-integer mgp par() settings are now handled correctly in
    axis() and mtext(), thanks to Mikael Jagan and Duncan Murdoch's
    report and suggestion in PR#18194.
  * formatC(x) returns length zero character() now, rather than ""
    when x is of length zero, as documented, thanks to Davis
    Vaughan's post to R-devel.
  * removeSource(fn) now retains (other) attributes(fn).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1647000000">- CHANGES IN R 4.1.3:
  NEW FEATURES:
  * The default version of Bioconductor has been changed to 3.14.
    (This is used by setRepositories and the menus in GUIs.)
  UTILITIES:
  * R CMD check --as-cran has a workaround for a bug in versions of
    file up to at least 5.41 which mis-identify DBF files last
    changed in 2022 as executables.
  C-LEVEL FACILITIES:
  * The legacy S-compatibility macros SINGLE_* in R_ext/Constants.h
    (included by R.h) are deprecated and will be removed in R 4.2.0.
  BUG FIXES:
  * Initialization of self-starting nls() models with initialization
    functions following the pre-R-4.1.0 API (without the ...
    argument) works again for now, with a deprecation warning.
  * Fixed quoting of ~autodetect~ in Java setting defaults to avoid
    inadvertent user lookup due to leading ~, reported in PR#18231 by
    Harold Gutch.
  * substr(., start, stop) &lt;- v now treats _negative_ stop values
    correctly.  Reported with a patch in PR#18228 by Brodie Gaslam.
  * Subscripting an array x without dimnames by a
    length(dim(x))-column character matrix gave "random" non-sense,
    now an error; reported in PR#18244 by Mikael Jagan.
  * ...names() now matches names(list(...)) closely, fixing PR#18247.
  * all.equal(*, scale = s) now works as intended when length(s) &gt; 1,
    partly thanks to Michael Chirico's PR#18272.
  * print(x) for long vectors x now also works for named atomic
    vectors or lists and prints the correct number when reaching the
    getOption("max.print") limit; partly thanks to a report and
    proposal by Hugh Parsonage to the R-devel list.
  * all.equal(&lt;selfStart&gt;, *) no longer signals a deprecation
    warning.
  * reformulate(*, response=r) gives a helpful error message now when
    length(r) &gt; 1, thanks to Bill Dunlap's PR#18281.
  * Modifying globalCallingHandlers inside withCallingHandlers() now
    works or fails correctly, thanks to Henrik Bengtsson's PR#18257.
  * hist(&lt;Date&gt;, breaks = "days") and hist(&lt;POSIXt&gt;, breaks = "secs")
    no longer fail for inputs of length 1.
  * qbeta(.001, .9, .009) and similar cases now converge correctly
    thanks to Ben Bolker's report in PR#17746.
  * window(x, start, end) no longer wrongly signals "'start' cannot
    be after 'end'", fixing PR#17527 and PR#18291.
  * data() now checks that its (rarely used) list argument is a
    character vector - a couple of packages passed other types and
    gave incorrect results.
  * which() now checks its arr.ind argument is TRUE rather coercing
    to logical and taking the first element - which gave incorrect
    results in package code.
  * model.weights() and model.offset() more carefully extract their
    model components, thanks to Ben Bolker and Tim Taylor's R-devel
    post.
  * list.files(recursive = TRUE) now shows all broken symlinks
    (previously, some of them may have been omitted, PR#18296).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1650628800">- CHANGES IN R 4.2.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * The formula method of aggregate() now matches the generic in
    naming its first argument x (resolving PR#18299 by Thomas
    Soeiro).
    This means that calling aggregate() with a formula as a named
    first argument requires name formula in earlier versions of R and
    name x now, so portable code should not name the argument (code
    in many packages did).
  * Calling &amp;&amp; or || with either argument of length greater than one
    now gives a warning (which it is intended will become an error).
  * Calling if() or while() with a condition of length greater than
    one gives an error rather than a warning.  Consequently,
    environment variable _R_CHECK_LENGTH_1_CONDITION_ no longer has
    any effect.
  * Windows users should consult the WINDOWS section below for some
    profound changes including
  * Support for 32-bit builds has been dropped.
  * UTF-8 locales are used where available.
  * The default locations for the R installation and personal
    library folder have been changed.
    Thanks to Tomas Kalibera for months of work on the Windows port
    for this release.
  NEW FEATURES:
  * matrix(x, n, m) now warns in more cases where length(x) differs
    from n * m, as suggested by Abby Spurdle and Wolfgang Huber in
    Feb 2021 on the R-devel mailing list.
    This warning can be turned into an error by setting environment
    variable _R_CHECK_MATRIX_DATA_ to TRUE: R CMD check --as-cran
    does so unless it is already set.
  * Function file_test() in package utils gains tests for symlinks,
    readability and writability.
  * capabilities("libxml") is now false.
    The description of capabilities("http/ftp") now reflects that it
    refers to the default method, no longer the internal one.
  * simplify2array() gains an except argument for controlling the
    exceptions used by sapply().
  * Environment variables R_LIBS_USER and R_LIBS_SITE are both now
    set to the R system default if unset or empty, and can be set to
    NULL to indicate an empty list of user or site library
    directories.
  * The warning for axis()(-like) calls in cases of relatively small
    ranges (typically in log-scale situations) is slightly improved
    _and_ suppressed from explicit calls to .axisPars() as has always
    been the intention.
  * The contrasts setter function `contrasts&lt;-` gains an explicit
    default how.many = NULL rather than just using missing(how.many).
  * grid.pretty() gains a new optional argument n = 5.
  * There is a new function .pretty() with option bounds as a
    technical-utility version of pretty().  It and pretty() gain a
    new argument f.min with a better than back-compatible default.
  * Function grDevices::axisTicks() and related functions such as
    graphics::axis() work better, notably for the log scale; partly
    because of the pretty() improvements, but also because care is
    taken e.g., when ylim is finite but diff(ylim) is infinite.
  * nclass.FD() gains a digits option.
  * The R Mathlib internal C function bd0() (called indirectly from a
    dozen probability density and distribution functions such as
    dpois(), dbinom(), dgamma(), pgamma() _etc_) has been
    complemented by a more sophisticated and (mostly) more accurate C
    function ebd0(), currently called only by internal dpois_raw()
    improving accuracy for R level dpois() and potentially others
    calling it such as dnbinom(), dgamma() or pgamma().  (Thanks to
    Morten Welinder's PR#15628.)
  * write.ftable() gains sep = " " argument as suggested by Thomas
    Soeiro.
  * The names of the locale categories supported by R's
    Sys.getlocale() and Sys.setlocale() are now provided by variable
    .LC.categories in the base namespace.
  * The Date and POSIXt methods for hist() and the histogram method
    for plot() now also use the new default col = "lightgray" in
    consistency with the corresponding change to hist()'s default for
    R 4.0.0.
  * hist.default() gains new fuzz argument, and the histogram plot
    method no longer uses fractional axis ticks when displaying
    counts ("Frequency").
  * mapply() and hence Map() now also obey the "max-or-0-if-any"
    recycling rule, such that, e.g., Map(`+`, 1:3, 1[0]) is valid
    now.
  * as.character(&lt;obj&gt;) for "hexmode" or "octmode" objects now
    fulfils the important basic rule as.character(x)[j] ===
    as.character(x[j]).
  * The set utility functions, notably intersect() have been tweaked
    to be more consistent and symmetric in their two set arguments,
    also preserving a common mode.
  * substr(ch, start,end) &lt;- new now e.g., preserves names(ch); ditto
    for substring(), thanks to a patch from Brodie Gaslam.
  * plot(&lt;lm&gt;) gains a extend.ylim.f argument, in partial response to
    PR#15285; further PR#17784 is fixed thanks to several
    contributors and a patch by Elin Waring.  The Cook's dist
    contours get customizable via cook.col and cook.lty with a
    different default color and their legend is nicer by default and
    customizable via cook.legendChanges.
  * Attempting to subset an object that is not subsettable now
    signals an error of class notSubsettableError. The
    non-subsettable object is contained in the object field of the
    error condition.
  * Subscript-out-of-bounds errors are now signaled as errors of
    class subscriptOutOfBoundsError.
  * Stack-overflow errors are now signaled as errors inheriting from
    class stackOverflowError. See ?stackOverflowError for more
    details.
  * New partly experimental Sys.setLanguage() utility, solving the
    main problem of PR#18055.
  * gettext() and gettextf() get a new option trim = TRUE which when
    set to false allows translations for strings such as "Execution
    halted\n" typical for C code.
  * An experimental implementation of hash tables is now available.
    See ?hashtab for more details.
  * identical() gains a extptr.as.ref argument for requesting that
    external pointer objects be compared as reference objects.
  * reorder() gets an argument decreasing which it passes to sort()
    for level creation; based on the wish and patch by Thomas Soeiro
    in PR#18243.
  * as.vector() gains a data.frame method which returns a simple
    named list, also clearing a long standing 'FIXME' to enable
    as.vector(&lt;data.frame&gt;, mode="list").  This breaks code relying
    on as.vector(&lt;data.frame&gt;) to return the unchanged data frame.
  * legend() is now vectorized for arguments cex, x.intersp, and
    text.width.  The latter can now also be specified as a vector
    (one element for each column of the legend) or as NA for
    computing a proper column wise maximum value of strwidth(legend).
    The argument y.intersp can be specified as a vector with one
    entry for each row of the legend.
    legend() also gains new arguments title.cex and title.font.
    Thanks to Swetlana Herbrandt.
  * Deparsing no longer remaps attribute names dim, dimnames, levels,
    names and tsp to historical S-compatible names (which structure()
    maps back).
  * sample() and sample.int() have additional sanity checks on their
    size and n arguments.
    all.equal.numeric() gains a sanity check on its tolerance
    argument - calling all.equal(a, b, c) for three numeric vectors
    is a surprisingly common error.
    mean(na.rm =), rank(na.last =), barplot(legend.text =),
    boxplot(), contour(drawlabels =), polygon(border =) and
    methods::is(class2 =) have more robust sanity checks on their
    arguments.
    R CMD Rd2pdf (used by R CMD check) has a more robust sanity check
    on the format of \alias{} commands.
  * psigamma(x, deriv) for negative x now also works for deriv = 4
    and 5; their underlying C level dpsifn() is documented in
    'Writing R Extensions'.
  * The HTML help system now uses HTML5 (wish of PR#18149).
  * ks.test() now provides exact p-values also with ties and MC
    p-values in the two-sample (Smirnov) case.  By Torsten Hothorn.
  * ks.test() gains a formula interface, with y ~ 1 for the
    one-sample (Kolmogorov) test and y ~ group for the two-sample
    (Smirnov) test.  Contributed by Torsten Hothorn.
  * The return value from ks.test() now has class c("ks.test",
    "htest") - packages using try() need to take care to use
    inherits() and not == on the class.
  * New functions psmirnov(), qsmirnov() and rsmirnov() in package
    stats implementing the asymptotic and exact distributions of the
    two-sample Smirnov statistic.
  * iconv() now allows sub = "c99" to use C99-style escapes for UTF-8
    inputs which cannot be converted to encoding to.
  * In a forward pipe |&gt; expression it is now possible to use a named
    argument with the placeholder _ in the rhs call to specify where
    the lhs is to be inserted.  The placeholder can only appear once
    on the rhs.
  * The included LAPACK sources have been updated to version 3.10.0,
    except for the four Fortran 77 routines which 3.10.0 has
    re-implemented in Fortran 90 (where the older versions have been
    retained as the R build process does not support Fortran 90).
  * path.expand() and most other uses of tilde expansion now warn if
    a path would be too long if expanded.  (An exception is
    file.exists(), which silently returns false.)
  * trunc(&lt;Date&gt;, *) now supports units = "months" or "years" for
    consistency with the POSIXt method, thanks to Dirk Eddelbuettel's
    proposal in PR#18099.
  * list2DF() now checks that its arguments are of the same length,
    rather than use recycling.
  * The HTML help system has several new features: LaTeX-like math
    can be typeset using either KaTeX or MathJax, usage and example
    code is highlighted using Prism, and for dynamic help the output
    of examples and demos can be shown within the browser if the
    knitr package is installed. These features can be disabled by
    setting the environment variable _R_HELP_ENABLE_ENHANCED_HTML_ to
    a false value.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 15
    and so packages that provide graphics devices should be
    reinstalled.
  * The grid package now allows the user to specify a "vector" of
    pattern fills.  The fill argument to gpar() accepts a list of
    gradients and/or patterns and the functions linearGradient(),
    radialGradient(), and pattern() have a new group argument.
    Points grobs (data symbols) can now also have a pattern fill.
    The grobCoords() function now returns a more informative and
    complex result.
  * The grid package has new functions for drawing isolated groups:
    grid.group(), grid.define(), and grid.use().  These functions add
    compositing operators and affine transformations to R's graphics
    capabilities.
    The grid package also has new functions for stroking and filling
    paths: grid.stroke(), grid.fill(), and grid.fillStroke().
    A new function as.path() allows the user to specify the fill rule
    for a path that is to be used for clipping, stroking, or filling;
    available options are "winding" and "evenodd".  A new function
    as.mask() allows the user to specify the type of a mask;
    available options are "alpha" and "luminance".
    These new features are only supported so far (at most) on the
    Cairo-based graphics devices and on the pdf() device.
  * dev.capabilities() reports on device support for the new
    features.
  * par() now warns about unnamed non-character arguments to prevent
    misuse such as {usr &lt;- par("usr"); par(usr)}.
  INSTALLATION:
  * Facilities for accessing ftp:// sites are no longer tested
    (except _pro tem_ for curlGetHeaders()) as modern browsers have
    removed support.
  * R can now be built with DEFS = -DSTRICT_R_HEADERS .
  PACKAGE INSTALLATION:
  * R CMD INSTALL no longer tangles vignettes. This completes an R
    CMD build change in R 3.0.0 and affects packages built before R
    3.0.2. Such packages should be re-made with R CMD build to have
    the tangled R code of vignettes shipped with the tarball.
  * USE_FC_LEN_T will become the default: this uses the correct
    prototypes for Fortran BLAS/LAPACK routines called from C/C++,
    and requires adjustment of most such calls - see 'Writing R
    Extensions' SS6.6.2.  (This has been supported since R 3.6.2.)
  * Package installation speed for packages installed with
    keep.source has been improved. This resolve the issue reported by
    Ofek Shilon in PR#18236.
  UTILITIES:
  * R CMD check can optionally report files/directories left behind
    in home, /tmp (even though TMPDIR is set) and other directories.
    See the "R Internals" manual for details.
  * R CMD check now reports byte-compilation errors during
    installation.  These are not usually fatal but may result in
    parts of the package not being byte-compiled.
  * _R_CHECK_DEPENDS_ONLY_ can be applied selectively to examples,
    tests and/or vignettes in R CMD check: see the "R Internals"
    manual.
  * _R_CHECK_SRC_MINUS_W_IMPLICIT_ now defaults to true: recent
    versions of Apple clang on macOS have made implicit function
    declarations in C into a compilation error.
  * R CMD check --as-cran makes use of the environment variable
    AUTORECONF.  See the "R Internals" manual SS8 for further details.
  * R CMD check --use-valgrind also uses valgrind when re-building
    vignettes as some non-Sweave vignettes unhelpfully comment out
    all their code when R CMD check runs vignettes.
  * Errors in re-building vignettes (unless there are LaTeX errors)
    are reported by R CMD check as ERROR rather than WARNING when
    running vignettes has been skipped (as it frequently is in CRAN
    checks and by --as-cran).
  * R CMD Rd2pdf gains a --quiet option that is used by R CMD build
    when building the PDF package manual.
  * R CMD Rd2pdf now always runs LaTeX in batch mode, consistent with
    Texinfo &gt;= 6.7. The --batch option is ignored.
  * R CMD build and R CMD check now include the Rd file name and line
    numbers in the error message of an \Sexpr evaluation failure.
  * For packages using the \doi Rd macro (now an install-time \Sexpr)
    but no other dynamic Rd content, R CMD build now produces a
    smaller tarball and is considerably faster - skipping temporary
    package installation.
  C-LEVEL FACILITIES:
  * The non-API header R_ext/R-ftp-http.h is no longer provided, as
    the entry points it covered are now all defunct.
  * A number of non-API declarations and macro definitions have been
    moved from the installed header Rinternals.h to the internal
    header Defn.h. Packages that only use entry points and
    definitions documented to be part of the API as specified in
    'Writing R Extensions' SS6 should not be affected.
  * The macro USE_RINTERNALS no longer has any effect when compiling
    package code.  Packages which also use R_NO_REMAP will need to
    ensure that the remapped names are used for calls to API
    functions that were formerly also made available as macros.
  * The deprecated legacy S-compatibility macros PROBLEM, MESSAGE,
    ERROR, WARN, WARNING, RECOVER, ... are no longer defined in
    R_exts/RS.h (included by R.h).  Replace these by calls to
    Rf_error and Rf_warning (defined in header R_ext/Error.h included
    by R.h).
    Header R_ext/RS.h no longer includes R_ext/Error.h.
  * Header R_ext/Constants.h (included by R.h) when included from C++
    now includes the C++ header cfloat rather than the C header
    float.h (now possible as C++11 is required).
  * The legacy S-compatibility macros DOUBLE_* in R_ext/Constants.h
    (included by R.h) are deprecated.
  * The deprecated S-compatibility macros SINGLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * R_Calloc, R_Free and R_Realloc are preferred to their unprefixed
    forms and error messages now use the prefix. These forms were
    introduced in R 3.4.0 and are available even when
    STRICT_R_HEADERS is defined.
  * rmultinom has been documented in 'Writing R Extensions' SS6 so is
    now part of the R API.
  * Similarly, Rtanpi, called from R level tanpi() is now part of the
    R API.
  * The long-deprecated, undocumented and non-API entry point call_R
    is no longer declared in R_ext/RS.h (included by R.h).
  * The header S.h which has been unsupported since Jan 2016 has been
    removed.  Use R.h instead.
  DEPRECATED AND DEFUNCT:
  * The (non-default and deprecated) method = "internal" for
    download.file() and url() no longer supports http:// nor ftp://
    URIs.  (It is used only for file:// URIs.)
    On Windows, download.file(method = "wininet") no longer supports
    ftp:// URIs.  (It is no longer the default method, which is
    "libcurl" and does.)
    On Windows, the deprecated method = "wininet" now gives a warning
    for http:// and https:// URIs for both download.file() and url().
    (It is no longer the default method.)
  * On Windows, the command-line option --max-mem-size and
    environment variable R_MAX_MEM_SIZE are defunct.  The memory
    allocation limit was important for 32-bit builds, but these are
    no longer supported.
  * default.stringsAsFactors() is now formally deprecated, where that
    was only mentioned on its regular help page, previously.  So it
    now gives a warning if called.
  * unix.time() is defunct now; it had been deprecated since R 3.4.0.
  BUG FIXES:
  * Setting digits = 0 in format(), print.default() (and hence
    typically print()) or options() is again invalid.  Its behaviour
    was platform-dependent, and it is unclear what "zero significant
    digits" should mean (PR#18098).
  * Messages from C code in the cairo section of package grDevices
    are now also offered for translation, thanks to Michael Chirico's
    PR#18123.
  * mean(x) with finite x now is finite also without "long.double"
    capability.
  * R CMD Rd2pdf no longer leaves an empty build directory behind
    when it aborts due to an already existing output file.  (Thanks
    to Sebastian Meyer's PR#18141.)
  * density(x, weights = w, na.rm = TRUE) when anyNA(x) is true, now
    removes weights "in parallel" to x, fixing PR#18151, reported by
    Matthias Gondan.  Additionally, it gets a subdensity option.
  * Conversion of \Sexpr[]{&lt;expR&gt;} to LaTeX or HTML no longer
    produces long blocks of empty lines when &lt;expR&gt; itself contains
    several lines all producing empty output.  Thanks to a report and
    patch by Ivan Krylov posted to R-devel.
  * R CMD build no longer fails if a package vignette uses child
    documents and inst/doc exists.  (Thanks to Sebastian Meyer's
    PR#18156.)
  * When an R documentation ('help' source) file man/foo.Rd in a
    package has \donttest{..} examples with a syntax error, it is now
    signalled as ERROR and with correct line numbers relating to the
  * -Ex.R file, thanks to Duncan Murdoch and Sebastian Meyer's
    reports and patch proposals in PR#17501.
  * Improved determination of the correct translation domain in
    non-base packages, addressing the combination of PR#18092 and
    PR#17998 (#c6) with reports and _augmented_ patch #2904 by
    Suharto Anggono.
    Note that "R-base" is no longer the default domain e.g., for
    top-level calls to gettext(); rather translation needs explicit
    domain = * specification in such cases.
  * identical(attrib.as.set=FALSE) now works correctly with data
    frames with default row names (Thanks to Charlie Gao's PR#18179).
  * txtProgressBar() now enforces a non-zero width for argument char,
    without which no progress can be visible.
  * dimnames(table(d)) is more consistent in the case where d is a
    list with a single component, thanks to Thomas Soeiro's report to
    R-devel.
    Further, table(d1, d2) now gives an error when d1 and d2 are data
    frames as suggested by Thomas in PR#18224.
  * Fix for drawing semi-transparent lines and fills on the native
    Windows graphics device (PR#18219 and PR#16694).  Thanks to Nick
    Ray for helpful diagnosis on Bugzilla.
  * The deparser now wraps sub-expressions such as if(A) ..  with
    parentheses when needed; thanks to Duncan Murdoch's PR#18232 and
    Lionel Henry's patches there.
  * remove.packages() no longer tries to uninstall Priority: base
    packages, thanks to a report and suggestions by Colin Fay in
    PR#18227.
  * win.metafile() now has xpinch and ypinch arguments so that the
    user can override Windows' (potentially wrong) guess at device
    dimensions.
  * x[i] and x[[i]] for non-integer i should now behave in all cases
    as always documented: the index used is equivalent to
    as.integer(i) unless that would overflow where trunc(i) is used
    instead; thanks to Suharto Anggono's report and patch proposals
    in PR#17977.
  * asOneSidedFormula() now associates the resulting formula with the
    global environment rather than the evaluation environment created
    for the call.
  * &lt;bibentry&gt;$name now matches the field name case-insensitively,
    consistent with bibentry() creation and the replacement method.
  * cbind() failed to detect some length mismatches with a mixture of
    time-series and non-time-series inputs.
  * The default LaTeX style file Sweave.sty used by the RweaveLatex
    driver no longer loads the obsolete ae package; thanks to a
    report by Thomas Soeiro in PR#18271.  Furthermore, it now skips
    \usepackage[T1]{fontenc} for engines other than pdfTeX (if
    detected) or if the new [nofontenc] option is used.
  * smooth.spline() now stores its logical cv argument more safely,
    fixing a rare bug when printing, and also stores n.
  * smooth.spline(x,y,*) now computes the cv.crit statistic
    correctly, also when is.unsorted(x), fixing PR#18294.
  * The data.frame method of rbind() now warns when binding
    not-wholly-recycling vectors, by analogy to the default method
    (for matrices).
  * setAs() finds the correct class for name to when multiple
    packages define a class with that name. Thanks to Gabor Csardi
    for the report.
  * Fix for detaching a package when two classes of the same name are
    present in method signatures for the same generic. Thanks to
    Gabor Csardi for the report.
  * match.arg("", c("", "a", "B")) gives a better error message, in
    part from PR#17959, thanks to Elin Waring.
  * R CMD Sweave --clean no longer removes pre-existing files or
    subdirectories (PR#18242).
  * The quartz() device no longer splits polylines into subpaths.
    That has caused narrowly-spaced lines with many points to always
    look solid even when dashed line type was used due to dash phase
    restarts.
  * Deparsing constructs such as quote(1 + `!`(2) + 3) works again as
    before R 3.5.0, thanks to the report and patch in PR#18284 by
    Suharto Anggono.
  * as.list(f) for a factor f now keeps names(f), fixing PR#18309.
  * qbeta(.001, .9, .009) and analogous qf() calls now return a
    correct value instead of NaN or wrongly 1, all with a warning;
    thanks to the report by Ludger Goeminne in PR#18302.
  * plot.lm() failed to produce the plot of residuals vs.  factor
    levels (i.e., which=5 when leverages are constant) for models
    with character predictors (PR#17840).
  * interaction.plot(..., xtick = TRUE) misplaced the x-axis line
    (PR#18305).
  * Not strictly fixing a bug, format()ing and print()ing of
    non-finite Date and POSIXt values NaN and +/-Inf no longer show
    as NA but the respective string, e.g., Inf, for consistency with
    numeric vector's behaviour, fulfilling the wish of PR#18308.
  * R CMD check no longer runs test scripts generated from
    corresponding .Rin files twice and now signals an ERROR if
    processing an .Rin script fails.
  * tools::Rd2txt() used for plain-text help pages now renders \hrefs
    (if tools::Rd2txt_options(showURLs = TRUE)) and \urls with
    percent-encoding and standards-compliant delimiting style (angle
    brackets and no URL: prefix).  \email is now rendered with a
    mailto: prefix.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1655985600">- CHANGES IN R 4.2.1:
  NEW FEATURES:
  * New function utils::findCRANmirror() to find out if a CRAN mirror
    has been selected, otherwise fallback to the main site.  This
    behaves in the same way as tools::CRAN_package_db() and is
    intended for packages wishing to access CRAN for purposes other
    than installing packages.
    The need for this was shown by a day when the main CRAN website
    was offline and a dozen or so packages which had its URL
    hardcoded failed their checks.
  INSTALLATION on a UNIX-ALIKE:
  * The libraries searched for by --with-blas (without a value) now
    include BLIS (after OpenBLAS but before ATLAS).  And on macOS,
    the Accelerate framework (after ATLAS).  (This is patterned after
    the AX_BLAS macro from the Autoconf Archive.)
  * The included LAPACK sources have been updated to 3.10.1.
  UTILITIES:
  * The (full path to) the command tidy to be used for HTML
    validation can be set by environment variable R_TIDYCMD.
  * Setting environment variable _R_CHECK_RD_VALIDATE_RD2HTML_ to a
    false value will override R CMD check --as-cran and turn off HTML
    validation.  This provides a way to circumvent a problematic
    tidy.
    The 2006 version that ships with macOS is always skipped.
  C-LEVEL FACILITIES:
  * The undocumented legacy declarations of Sint, Sfloat, SINT_MAX
    and SINT_MIN in header R.h are deprecated.
  BUG FIXES:
  * fisher.test(d) no longer segfaults for "large" d; fixing PR#18336
    by preventing/detecting an integer overflow reliably.
  * tar(., files=*) now produces correctly the warning about invalid
    uid or gid of files, fixing PR#18344, reported by Martin Morgan.
  * tk_choose.files() with multi = FALSE misbehaved on paths
    containing spaces (PR#18334) (regression introduced in R 4.0.0).
  * sort(x, partial = ind, *) now works correctly notably for the
    non-default na.last = FALSE or TRUE, fixing PR#18335 reported by
    James Edwards.
  * Environment variable _R_CHECK_XREFS_REPOSITORIES_ is only used
    for checking .Rd cross-references in R CMD check (as documented)
    and not for other uses looking for a CRAN mirror.
  * The search for a CRAN mirror when checking packages now uses
    getOption("repos") if that specifies a CRAN mirror, even when it
    does not also specify all three Bioconductor repositories (as was
    previously required).
  * The HTML code generated by tools::Rd2HTML() has been improved to
    pass tidy 5.8.0.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1667217600">- CHANGES IN R 4.2.2:
  NEW FEATURES:
  * tools::Rdiff(useDiff = TRUE) checks for the presence of an
    external diff command and switches to useDiff = FALSE if none is
    found.  This allows R CMD Rdiff to always work.
  * On Windows, environment variable R_LIBCURL_SSL_REVOKE_BEST_EFFORT
    can be used to switch to only 'best-effort' SSL certificate
    revocation checks with the default "libcurl" download method.
    This reduces security, but may be needed for downloads to work
    with MITM proxies (PR#18379).
  * (macOS) The run-time check for libraries from XQuartz for X11 and
    Tcl/Tk no longer uses otool from the Apple Developer Tools
    (PR#18400).
  * The LaTeX style for producing the PDF manuals, Rd.sty, now loads
    the standard amsmath, amsfonts and amssymb packages for greater
    coverage of math commands in the Rd \eqn and \deqn macros.  The
    \mathscr LaTeX command is also provided (via the mathrsfs
    package, if available, or the amsfonts bundle otherwise),
    fulfilling the wish of PR#18398.
  * (Windows) The default format of readClipboard() and
    writeClipboard() has been changed to 13 (CF_UNICODETEXT).
  INSTALLATION on a UNIX-ALIKE:
  * The PDF manuals (if built) can be compacted by the new target
    make compact-pdf (at the top level or in directory doc/manual).
  * There is now configure support for LLVM clang 15 on Linux, which
    defaults to position-independent (PIE) executables whereas
    gfortran does not.
  * Many small changes to ease compilation (and suppress warnings)
    with LLVM clang 15.
  BUG FIXES:
  * Rscript -e would fail if stdin were closed (Reported by Henrik
    Bengtsson.)
  * qt(*, log.p=TRUE) in outer tails no longer produces NaN in its
    final steps, thus fixing PR#18360.
  * tools::Rd2latex() now escapes hashes and ampersands when writing
    URLs, fixing LaTeX errors with such URLs in \tabular.
  * When isGeneric(f, fdef=*) is used with mismatching names, the
    warning is better understandable; reported (with fix) in PR#18370
    by Gabe Becker.
  * poly(x, n) now works again (and is now documented) when x is a
    "Date" or "POSIXct" object, or of another class while fulfilling
    mode(x) == "numeric".  This also enables poly(x, *, raw=TRUE) for
    such variables.  Reported by Michael Chirico to R-devel.
  * write.table(), write.csv() and write.csv2() restore their
    numerical precision (internal equivalent of digits = 15) after an
    interrupt (PR#18384).
  * One can now read also byte FF from a clipboard connection
    (PR#18385).
  * source("") and source(character()) now give more helpful error
    messages.
  * R CMD check --as-cran set _R_CHECK_TIMINGS_ too late to have the
    intended effect.
  * as.POSIXlt(x) now also works with very large dates x, fixing
    PR#18401 reported by Hannes M"uhleisen.
  * Files can now be extracted even from very large zip archives
    (PR#18390, thanks to Martin Jakt).
  * Non-finite objects of class "POSIXlt" are now correctly coerced
    to classes "Date" and "POSIXct"; following up on the extension to
    format() them correctly.
  * Added methods for is.finite(), is.infinite() and is.nan() for
    "POSIXlt" date-time objects.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1678881600">- CHANGES IN R 4.2.3:
  C-LEVEL FACILITIES:
  * The definition of DL_FUNC in R_ext/Rdynload.h has been changed to
    be fully C-compliant.  This means that functions loaded _via_ for
    example R_GetCCallable need to be cast to an appropriate type if
    they have any arguments.
  * .Machine has a new element sizeof.time_t to identify old systems
    with a 32-bit type and hence a limited range of date-times (and
    limited support for dates millions of years from present).
  PACKAGE INSTALLATION:
  * (Windows) The default C++ standard had accidentally been left at
    C++11 when it was changed to C++14 on Unix.
  BUG FIXES:
  * As "POSIXlt" objects may be "partially filled" and their list
    components meant to be recycled, length() now is the length of
    the longest component.
  * as.POSIXlt.Date() could underflow for dates in the far past (more
    than half a million years BCE).
  * as.Date.POSIXlt(x) would return "1970-01-01" instead of NA in R
    4.2.2, e.g., for
    x &lt;- as.POSIXlt(c("2019-01-30","2001-1-1"))
    x$mon &lt;- c(0L, NA); as.Date(x)
  * R CMD check failed to apply enabled _R_CHECK_SUGGESTS_ONLY_ to
    examples and vignettes (regression in R 4.2.0).
  * R CMD check did not re-build vignettes in separate processes by
    default (regression in R 4.2.0).
  * Running examples from HTML documentation now restores previous
    knitr settings and options (PR#18420).
  * Quartz: fonts are now located using Core Graphics API instead of
    deprecated ATS which is no longer supported in the macOS 13 SDK
    (PR#18426).  This also addresses an issue where the currently
    used font in the Quartz device context was not correctly
    retained.
  * (Windows) Math symbols in text drawing functions are again
    rendered correctly (PR#18440).  This fixes a regression in R
    4.2.1 caused by a fix in PR#18382 which uncovered an issue in
    GraphApp due to which the symbol charset was not used with TT
    Symbol font face.
  * (Windows) Installing a package with a src/Makefile.{win,ucrt}
    file includes ~/.R/Makevars.win64 in the search for user
    makevars, as documented in "R Installation and Administration"
    and done for packages with a src/Makevars.{win,ucrt} file.
  * format(&lt;POSIXlt_w/_unbalanced_sec&gt;, "....%OS&lt;n&gt;") with n &gt; 0 no
    longer accidentally uses the unbalanced seconds, thanks to
    Suharto Anggono's report (including patch) in PR#18448.
  * solve.default(a, b) works around issues with some versions of
    LAPACK when a contains NA or NaN values.
  * When UseMethod() cannot dispatch, it no longer segfaults
    producing the error message in case of a long class(), thanks to
    Joris Vankerschaver's report (including patch) in PR#18447.
  * When example(foo, ..) produces graphics on an interactive device
    it needs to open itself, it now leaves devAskNewPage() unchanged
    even when it was FALSE, thus fixing a 14 years old '&lt;FIXME&gt;'.
  * packageDescription() again catches errors from encoding
    conversions. This also fixes broken packageVersion() in C locale
    on systems where iconv does not support transliteration.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1681128000">- add patch to build with libcurl &gt;= 8</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1682078400">- CHANGES IN R 4.3.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Calling &amp;&amp; or || with LHS or (if evaluated) RHS of length greater
    than one is now always an error, with a report of the form
    'length = 4' in coercion to 'logical(1)'
    Environment variable _R_CHECK_LENGTH_1_LOGIC2_ no longer has any
    effect.
  NEW FEATURES:
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.10.1.  (This caused some platform-dependent
    changes to package check output.)  And then to the sources from
    LAPACK version 3.11.0 (with changes only to double complex
    subroutines).
  * The included LAPACK sources have been updated to include the four
    Fortran 90 routines rather than their Fortran 77 predecessors.
    This may give some different signs in SVDs or
    eigendecompositions..  (This completes the transition to LAPACK
    3.10.x begun in R 4.2.0.)
  * The LAPACK sources have been updated to version 3.11.0.  (No new
    subroutines have been added, so this almost entirely bug fixes:
    Those fixes do affect some computations with NaNs, including R's
    NA.)
  * The parser now signals _classed_ errors, notably in case of the
    pipe operator |&gt;.  The error object and message now give line and
    column numbers, mostly as proposed and provided by Duncan Murdoch
    in PR#18328.
  * toeplitz() is now generalized for asymmetric cases, with a
    toeplitz2() variant.
  * xy.coords() and xyz.coords() and consequently, e.g., plot(x,y,
    log = "y") now signal a _classed_ warning about negative values
    of y (where log(.) is NA).  Such a warning can be specifically
    suppressed or caught otherwise.
  * Regular expression functions now check more thoroughly whether
    their inputs are valid strings (in their encoding, e.g. in
    UTF-8).
  * The performance of grep(), sub(), gsub() and strsplit() has been
    improved, particularly with perl = TRUE and fixed = TRUE.  Use of
    useBytes = TRUE for performance reasons should no longer be
    needed and is discouraged: it may lead to incorrect results.
  * apropos() gains an argument dot_internals which is used by the
    completion (help(rcompgen)) engine to also see base internals
    such as .POSIXct().
  * Support in tools::Rdiff() for comparing uncompressed PDF files is
    further reduced - see its help page.
  * qqplot(x, y, ...) gains conf.level and conf.args arguments for
    computing and plotting a confidence band for the treatment
    function transforming the distribution of x into the distribution
    of y (Switzer, 1976, _Biometrika_). Contributed by Torsten
    Hothorn.
  * Performance of package_dependencies() has been improved for cases
    when the number of dependencies is large.
  * Strings newly created by gsub(), sub() and strsplit(), when any
    of the inputs is marked as "bytes", are also marked as "bytes".
    This reduces the risk of creating invalid strings and accidental
    substitution of bytes deemed invalid.
  * Support for readLines(encoding = "bytes") has been added to allow
    processing special text files byte-by-byte, without creating
    invalid strings.
  * iconv(from = "") now takes into account any declared encoding of
    the input elements and uses it in preference to the native
    encoding.  This reduces the risk of accidental creation of
    invalid strings, particularly when different elements of the
    input have different encoding (including "bytes").
  * Package repositories in getOption("repos") are now initialized
    from the repositories file when utils is loaded (if not already
    set, e.g., in .Rprofile).  (From a report and patch proposal by
    Gabriel Becker in PR#18405.)
  * compactPDF() gets a verbose option.
  * type.convert() and hence read.table() get new option tryLogical =
    TRUE with back compatible default.  When set to false, converts
    "F" or "T" columns to character.
  * Added new unit prefixes "R" and "Q" for abbreviating
    (unrealistically large) sizes beyond 10^{27} in standard = "SI",
    thanks to Henrik Bengtsson's PR#18435.
  * as.data.frame()'s default method now also works fine with atomic
    objects inheriting from classes such as "roman", "octmode" and
    "hexmode", such fulfilling the wish of PR#18421, by Benjamin
    Feakins.
  * The as.data.frame.vector() utility now errors for wrong-length
    row.names.  It warned for almost six years, with "Will be an
    error!".
  * sessionInfo() now also contains La_version() and reports codepage
    and timezone when relevant, in both print() and toLatex() methods
    which also get new option tzone for displaying timezone
    information when locale = FALSE.
  * New function R_compiled_by() reports the C and Fortran compilers
    used to build R, if known.
  * predict(&lt;lm&gt;, newdata = *) no longer unnecessarily creates an
    offset of all 0s.
  * solve() for complex inputs now uses argument tol and by default
    checks for 'computational singularity' (as it long has done for
    numeric inputs).
  * predict(&lt;rank-deficient lm&gt;, newdata=*) now obeys a new argument
    rankdeficient, with new default "warnif", warning only if there
    are non-estimable cases in newdata.  Other options include
    rankdeficient = "NA", predicting NA for non-estimable newdata
    cases.  This addresses PR#15072 by Russ Lenth and is based on his
    original proposal and discussions in PR#16158 also by David Firth
    and Elin Waring.  Still somewhat experimental.
  * Rgui console implementation now works better with the NVDA screen
    reader when the full blinking cursor is selected.  The underlying
    improvements in cursor handling may help also other screen
    readers on Windows.
  * The drop-field control in GraphApp can now be left with the TAB
    key and all controls can be navigated in the reverse order using
    the Shift+TAB key, improving accessibility of the Rgui
    configuration editor.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now fully accurate
    (instead of to "only" minimally five digits).
  * demo(error.catching) now also shows off withWarnings() and
    tryCatchWEMs().
  * As an experimental feature the placeholder _ can now also be used
    in the rhs of a forward pipe |&gt; expression as the first argument
    in an extraction call, such as _$coef. More generally, it can be
    used as the head of a chain of extractions, such as _$coef[[2]].
  * Spaces in the environment variable used to choose the R session's
    temporary directory (TMPDIR, TMP and TEMP are tried in turn) are
    now fatal.  (On Windows the 'short path' version of the path is
    tried and used if that does not contain a space.)
  * all.equal.numeric() gets a new optional switch giveErr to return
    the numeric error as attribute.  Relatedly,
    stopifnot(all.equal&lt;some&gt;(a, b, ..)) is as "smart" now, as
    stopifnot(all.equal(....)) has been already, thus allowing
    customized all.equal&lt;Some&gt;() wrappers.
  * R on Windows is now able to work with path names longer than 260
    characters when these are enabled in the system (requires at
    least Windows 10 version 1607).  Packages should be updated to
    work with long paths as well, instead of assuming PATH_MAX to be
    the maximum length.  Custom front-ends and applications embedding
    R need to update their manifests if they wish to allow this
    feature.  See
    &lt;https://blog.r-project.org/2023/03/07/path-length-limit-on-windows&gt;
    for more information.
  * 'Object not found' and 'Missing argument' errors now give a more
    accurate error context. Patch provided by Lionel Henry in
    PR#18241.
  * The @ operator is now an S3 generic. Based on contributions by
    Tomasz Kalinowski in PR#18482.
  * New generic chooseOpsMethod() provides a mechanism for objects to
    resolve cases where two suitable methods are found for an Ops
    Group Generic. This supports experimenting with alternative
    object systems. Based on contributions by Tomasz Kalinowski in
    PR#18484.
  * inherits(x, what) now accepts values other than a simple
    character vector for argument what. A new generic, nameOfClass(),
    is called to resolve the class name from what. This supports
    experimenting with alternative object systems. Based on
    contributions by Tomasz Kalinowski in PR#18485.
  * Detection of BLAS/LAPACK in use (sessionInfo()) with FlexiBLAS
    now reports the current backend.
  * The "data.frame" method for subset() now warns about extraneous
    arguments, typically catching the use of = instead of == in the
    subset expression.
  * Calling a:b when numeric a or b is longer than one may now be
    made into an error by setting environment variable
    _R_CHECK_LENGTH_COLON_ to a true value, along the proposal in
    PR#18419 by Henrik Bengtsson.
  * density(x, weights = *) now warns if automatic bandwidth
    selection happens without using weights; new optional warnWbw may
    suppress the warning.  Prompted by Christoph Dalitz' PR#18490 and
    its discussants.
  * rm(list = *) is faster and more readable thanks to Kevin Ushey's
    PR#18492.
  * The plot.lm() function no longer produces a normal Q-Q plot for
    GLMs. Instead it plots a half-normal Q-Q plot of the absolute
    value of the standardized deviance residuals.
  * The print() method for class "summary.glm" no longer shows
    summary statistics for the deviance residuals by default.  Its
    optional argument show.residuals can be used to show them if
    required.
  * The tapply() function now accepts a data frame as its X argument,
    and allows INDEX to be a formula in that case. by.data.frame()
    similarly allows INDICES to be a formula.
  * The performance of df[j] &lt;- value (including for missing j) and
    write.table(df) has been improved for data frames df with a large
    number of columns.  (Thanks to Gabriel Becker's PR#18500,
    PR#18503 and discussants, prompted by a report from Toby Dylan
    Hocking on the R-devel mailing list.)
  * The matrix multiply operator %*% is now an S3 generic, belonging
    to new group generic matrixOps.  From Tomasz Kalinowski's
    contribution in PR#18483.
  * New function array2DF() to convert arrays to data frames,
    particularly useful for the list arrays created by tapply().
  DATES and TIMES:
  * On platforms where (non-UTC) datetimes before 1902 (or before
    1900 as with system functions on recent macOS) are guessed by
    extrapolating time zones from 1902-2037, there is a warning at
    the first use of extrapolation in a session.  (As all time zones
    post 2037 are extrapolation, we do not warn on those.)
  * (Platforms using --with-internal-tzone, including Windows and by
    default macOS). How years are printed in dates or date-times can
    be controlled by environment variable R_PAD_YEARS_BY_ZERO.  The
    default remains to pad to 4 digits by zeroes, but setting value
    no gives no padding (as used by default by glibc).
  * strftime() tries harder to determine the offset for the "%z"
    format, and succeeds on the mainstream R platforms.
  * strftime() has a limit of 2048 bytes on the string produced -
    attempting to exceed this is an error.  (Previously it silently
    truncated at 255 bytes.)
  * sessionInfo() records (and by default prints) the system time
    zone as part of the locale information.  Also, the source
    (system/internal) of the date-time conversion and printing
    functions.
  * Objects of class "POSIXlt" created in this version of R always
    have 11 components: component zone is always set, and component
    gmtoff is set for times in UTC and usually set on the (almost
    all) platforms which have C-level support, otherwise is NA.
  * There are comprehensive validity checks on the structure of
    objects of class "POSIXlt" when converting (including formatting
    and printing).  (This avoids mis-conversions of hand-crafted
    objects.)
  * There is some support for using the native date-time routines on
    macOS: this is only viable on recent versions (e.g. 12.6 and 13)
    and does get wrong some historical changes (before 1900, during
    WWII).  Use of --with-internal-tzone remains the default.
  * as.POSIXct(&lt;numeric&gt;) and as.POSIXlt(.) (without specifying
    origin) now work.  So does as.Date(&lt;numeric&gt;).
  * as.Date.POSIXct(., tz) now treats several tz values, notably
    "GMT" as equivalent to "UTC", proposed and improved by Michael
    Chirico and Joshua Ulrich in PR#17674.
  * Experimental balancePOSIXlt() utility allows using "ragged" and
    or out-of-range "POSIXlt" objects more correctly, e.g., in
    subsetting and subassignments.  Such objects are now documented.
    More experimentally, a "POSIXlt" object may have an attribute
    "balanced" indicating if it is known to be filled or fully
    balanced.
  * Functions axis.Date() and axis.POSIXct() are rewritten to gain
    better default tick locations and better default formats by using
    prettyDate(). Thanks to Swetlana Herbrandt.
  * The mapping of Windows' names for time zones to IANA's 'Olson'
    names has been updated.  When ICU is available (it is by
    default), it is used to get a mapping for the current region set
    in Windows.  This can be overridden by setting environment
    variable TZ to the desired Olson name - see OlsonNames() for
    those currently available.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 16
    and so packages that provide graphics devices should be
    reinstalled.
  * The grDevices and grid packages have new functions for rendering
    typeset glyphs, primarily: grDevices::glyphInfo() and
    grid::grid.glyph().
    Rendering of typeset glyphs is only supported so far on the
    Cairo-based graphics devices and on the pdf() and quartz()
    devices.
  * The defined behaviour for "clear" and "source" compositing
    operators (via grid::grid.group()) has been changed (to align
    better with simple interpretation of original Porter-Duff
    definitions).
  * Support for gradients, patterns, clipping paths, masks, groups,
    compositing operators, and affine transformations has been added
    to the quartz() device.
  INSTALLATION on a UNIX-ALIKE:
  * A system installation of generic LAPACK 3.10.0 or later will be
    preferred to the version in the R sources.
    configure option --with-lapack=no (equivalently --without-lapack)
    forces compilation of the internal LAPACK sources.
    If --with-lapack is not specified, a system liblapack is looked
    for and used if it reports version 3.10.0 or later and does not
    contain BLAS routines.
    Packages using LAPACK will need to be reinstalled if this changes
    to using an external library.
  * On aarch64 Linux platforms using GCC, configure now defaults to
  - fPIC (instead of -fpic), as desired in PR#18326.
  * configure now checks conversion of datetimes between POSIXlt and
    POSIXct around year 2020.  Failure (which has been seen on
    platforms missing tzdata) is fatal.
  * If configure option --with-valgrind-instrumentation is given
    value 1 or 2, option --with-system-valgrind-headers is now the
    default and ignored (with a warning).  It is highly recommended
    that the system headers are installed alongside valgrind: they
    are part of its packaging on some Linux distributions and
    packaged separately (e.g. in the valgrind-devel RPM) on others.
    configure will give a warning if they are not found.
    The system headers will be required in a future release of R to
    build with valgrind instrumentation.
  * libcurl 8.x is now accepted by configure: despite a change in
    major version number it changes neither API nor ABI.
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools43, an update of the Rtools42 toolchain.  It is
    based on gcc 12 and newer versions of MinGW-W64, binutils and
    libraries.  At this time R-devel can still be built using
    Rtools42 without changes, but when R-devel is installed via the
    installer, it will by default look for Rtools43.
  * Old make targets rsync-extsoft and 32-bit ones that are no longer
    needed have been removed.
  * Default builds (including for packages) no longer select C99.
    Thus the C standard used is the default for the compiler, which
    for the toolchain in Rtools43 is C17.  (This is consistent with
    Unix builds.)
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++17 where
    available (which it is on all currently checked platforms): if
    not C++14 or C++11 is used if available otherwise C++ is not
    supported.
  * USE_FC_LEN_T is the default: this uses the correct
    (compiler-dependent) prototypes for Fortran BLAS/LAPACK routines
    called from C/C++, and requires adjustment of many such calls -
    see 'Writing R Extensions' SS6.6.1.
  * There is initial support for C++23 as several compilers are now
    supporting -std=c++23 or -std=c++2b or similar.  As for C++20,
    there no additional configure checks for C++23 features beyond a
    check that the compiler reports a __cplusplus value greater than
    that in the C++20 standard.  C++ feature tests should be used.
  * There is support for a package to indicate the version of the C
    standard which should be used to compile it, and for the
    installing user to specify this.  In most cases R defaults to the
    C compiler's default standard which is C17 (a `bug-fix' of C11) -
    earlier versions of R or compilers may have defaulted to C99.
    Current options are:
    USE_C17 Use a standard that is at most C17.  The intention is to
    allow legacy packages to still be installed when later C
    standards become the default, including packages using new
    keywords as identifiers or with K&amp;R-style function
    declarations.  This will use C17 if available, falling back
    to C11.
    USE_C90 Use the C90 (aka C89) standard.  (As that standard did
    not require compilers to identify that version, all we can
    verify is that the compiler does not claim to be using a
    later standard.  It may accept C99 features - for example
    clang accepts // to make comments.)
    USE_C99 Use the C99 standard. This should be rarely needed - it
    avoids the few new features of C11/C17 which can be useful if
    a package assumes them if C17 is specified and they are not
    implemented.
    USE_C23 Use C23 (or in future, later).  Compiler/library support
    for C23 is still being implemented, but LLVM clang from
    15.0.0 and the upcoming GCC 13 have quite extensive support.
    These can be specified as part of the SystemRequirements field in
    the package's DESCRIPTION file or _via_ options --use-C17 and so
    on of R CMD INSTALL and R CMD SHLIB.
    For further details see "Writing R Extensions" SS1.2.5.
  * (Windows) A src/Makefile.ucrt or src/Makefile.win file is now
    included after R_HOME/etcR_ARCH/Makeconf and so no longer needs
    to include that file itself.  Installation of a package with such
    a file now uses a site Makevars file in the same way as a package
    with a src/Makevars.win file would.
  * configure is now passed crucial variables such as CC and CFLAGS
    in its environment, as many packages were not setting them (as
    documented in 'Writing R Extensions' SS1.2).
    This has most effect where configure is used to compile parts of
    the package - most often by cmake or libtool which obfuscate the
    actual compile commands used.
    Also used for configure.win and configure.ucrt on Windows.
  FORTRAN FLAGS:
  * The flag -fno-optimize-sibling-calls is no longer forced for
    gfortran 7 and later.  It should no longer be needed now using
    'hidden' character-length arguments when calling BLAS/LAPACK
    routines from C/C++ is the default even for packages.  (Unless
    perhaps packages call Fortran code from C/C++ without using R's
    headers and without allowing for these arguments.)
  C-LEVEL FACILITIES:
  * The deprecated S-compatibility macros DOUBLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * The deprecated legacy typedefs of Sint and Sfloat in header R.h
    are no longer defined, and that header no longer includes header
    limits.h from C nor climits from C++.
  * New macro CAD5R() is provided in Rinternals.h and used in a few
    places in the R sources.
  * ALTREP now supports VECSXP vectors. Contributed by Gabor Csardi
    in PR#17620.
  * The Rcomplex definition (in header R_ext/Complex.h) has been
    extended to prevent possible mis-compilation when interfacing
    with Fortran (PR#18430).  The new definition causes compiler
    warnings with static initializers such as {1, 2}, which can be
    changed to {.r=1, .i=2}.
    Using the new definition from C++ depends on compiler extensions
    supporting C features that have not been incorporated into the
    C++ standards but are available in g++ and clang++: this may
    result in C++ compiler warnings but these have been worked around
    for recent versions of common compilers (GCC, Apple/LLVM clang,
    Intel).
    It is intended to change the inclusion of header R_ext/Complex.h
    by other R headers, so C/C++ code files which make use of
    Rcomplex should include that header explicitly.
  UTILITIES:
  * R CMD check does more checking of package .Rd files, warning
    about invalid email addresses and (some) invalid URIs and noting
    empty \item labels in description lists.
  * R CMD check now also reports problems when reading package news
    in md (file NEWS.md) and (optionally) plain text (file NEWS)
    formats.
  * _R_CHECK_TIMINGS_ defaults to a value from the environment even
    for R CMD check --as-cran; this allows for exceptionally fast or
    slow platforms.
    It now applies to checking PDF and HTML versions of the manuals,
    and 'checking CRAN incoming feasibility'.
  * R CMD check can optionally (but included in --as-cran) check
    whether HTML math rendering _via_ KaTeX works for the package .Rd
    files.
  * Non-interactive debugger invocations can be trapped by setting
    the environment variable _R_CHECK_BROWSER_NONINTERACTIVE_ to a
    true value.  This is enabled by R CMD check --as-cran to detect
    the use of leftover browser() statements in the package.
  * The use of sprintf and vsprintf from C/C++ has been deprecated in
    macOS 13 and is a known security risk.  R CMD check now reports
    (on all platforms) if their use is found in compiled code:
    replace by snprintf or vsnprintf respectively. [*NB:* whether
    such calls get compiled into the package is platform-dependent.]
  * Where recorded at installation, R CMD check reports the C and
    Fortran compilers used to build R.
    It reports the OS in use (if known, as given by osVersion) as
    well as that R was built for.
    It notes if a C++ standard was specified which is older than the
    current default: many packages have used C++11 to mean 'not
    C++98' - as C++11 is the minimum supported since R 4.0.0, that
    specification can probably be removed.
  * R CMD INSTALL reports the compilers (and on macOS, the SDK) used,
    and this is copied to the output of R CMD check.
    Where a C++ standard is specified, it is reported.
  * R CMD check's 'checking compilation flags in Makevars' has been
    relaxed to accept the use of flags such as -std=f2008 in
    PKG_FFLAGS.
  * tools::buildVignettes() has a new argument skip, which is used by
    R CMD check to skip (and note) vignettes with unavailable
    \VignetteDepends (PR#18318).
  * New generic .AtNames() added to enable class-specific completions
    after @. The formerly internal function findMatches() is now
    exported, mainly for use in methods for .DollarNames() and
    .AtNames().
  DEPRECATED AND DEFUNCT:
  * default.stringsAsFactors() is defunct.
  * Calling as.data.frame.&lt;class&gt;() directly (for 12 atomic classes)
    is going to be formally deprecated, currently activated by
    setting the environment variable
    _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ to non-empty, which also
    happens in R CMD check --as-cran.
  BUG FIXES:
  * Hashed environments with sizes less than 5 can now grow.
    (Reported to R-devel by Duncan Garmonsway.)
  * as.character(&lt;Rd&gt;, deparse = TRUE) failed to re-escape curly
    braces in LaTeX-like text.  (Reported by Hadley Wickham in
    PR#18324.)
  * library() now passes its lib.loc argument when requiring Depends
    packages; reported (with fix) in PR#18331 by Mikael Jagan.
  * R CMD Stangle: improved message about 'Output' files.
  * head(x, n) and tail(x, n) now signal an error if n is not
    numeric, instead of incidentally "working" sometimes returning
    all of x.  Reported and discussed by Colin Fay, in PR#18357.
  * The "lm" method for summary() now gives the correct F-statistic
    when the model contains an offset.  Reported in PR#18008.
  * C() and `contrasts&lt;-`() now preserve factor level names when
    given a function object (as opposed a function name which did
    preserve names). Reported in PR#17616.
  * c(a = 1, 2)[[]] no longer matches 2 but rather signals a
    _classed_ error.  Reported and analysed by Davis Vaughan in
    PR#18367, a duplicate of PR#18004, by Jan Meis et al.  For
    consistency, NULL[[]] is also erroneous now.  x[[]] &lt;- v gives an
    error of the same class "MissingSubscriptError".
  * The relist() function of utils now supports NULL elements in the
    skeleton (PR#15854).
  * ordered(levels = *) (missing x) now works analogously to factor(,
    ordered=TRUE); reported (with fix) by Achim Zeileis in PR#18389.
  * User-defined Rd macro definitions can now span multiple lines,
    thanks to a patch from Duncan Murdoch. Previously, the Rd parser
    silently ignored everything after the first line.
  * Plain-text help (tools::Rd2txt()) now preserves an initial blank
    line for text following description list items.
  * tools::Rd2HTML() and tools::Rd2latex() no longer split \arguments
    and \value lists at Rd comments.
  * tools::Rd2latex() now correctly handles optional text outside
    \items of argument lists as well as bracketed text at the
    beginning of sections, e.g., \value{[NULL]}.
  * as.character(&lt;POSIXt&gt;) now behaves more in line with the methods
    for atomic vectors such as numbers, and is no longer influenced
    by options().  Ditto for as.character(&lt;Date&gt;).  The
    as.character() method gets arguments digits and OutDec with
    defaults _not_ depending on options().  Use of as.character(*,
    format = .) now warns.
  * Similarly, the as.character.hexmode() and *.octmode() methods
    also behave as good citizen methods and back compatibility option
    keepStr = TRUE.
  * The as.POSIXlt(&lt;POSIXlt&gt;) and as.POSIXct(&lt;POSIXct&gt;) default
    methods now do obey their tz argument, also in this case.
  * as.POSIXlt(&lt;Date&gt;) now does apply a tz (time zone) argument, as
    does as.POSIXct(); partly suggested by Roland Fuss on the R-devel
    mailing list.
  * as.Date.POSIXlt(x) now also works when the list components are of
    unequal length, aka "partially filled" or "ragged".
  * expand.model.frame() looked up variables in the wrong environment
    when applied to models fitted without data.  Reported in
    PR#18414.
  * time() now (also) uses the ts.eps = getOption("ts.eps") argument
    and thus by default rounds values very close to the start (or
    end) of a year.  Based on a proposal by Andre"i V. Kostyrka on
    R-help.
  * Printing of a factanal() result with just one factor and sort =
    TRUE now works regularly, fixing PR#17863 by Timothy Bates,
    thanks to the 'R Contributors' working group.
  * Printing 0-length objects of class "factor", "roman", "hexmode",
    "octmode", "person", "bibentry", or "citation" now prints
    something better, one of which fixes PR#18422, reported by
    Benjamin Feakins.
  * Sys.timezone() queries timedatectl only if systemd is loaded;
    addressing a report by Jan Gorecki in PR#17421.
  * The formula method of cor.test() had scoping problems when
    environment(formula) was not the calling environment; reported
    with a patch proposal by Mao Kobayashi in PR#18439.
  * attach() of an environment with active bindings now preserves the
    active bindings.  Reported by Kevin Ushey in PR#18425.
  * BLAS detection now works also with system-provided libraries not
    available as regular files.  This fixes detection of the
    Accelerate framework on macOS since Big Sur.  Reported by David
    Novgorodsky.
  * download.file() gives a helpful error message in case of an
    invalid download.file.method option, thanks to Colin Fay's report
    in PR#18455.
  * Sporadic crashes of Rterm when using completion have been fixed.
  * Rprof() is now more reliable.  A livelock in thread
    initialization with too short sampling interval has been fixed on
    macOS.  A deadlock in using the C runtime has been fixed on
    Windows.  A potential deadlock has been prevented on Unix.
  * Cursor placement in Rgui now works even after a fixed-width font
    is selected.
  * Mandatory options (options()) are now set on startup so that
    saving and restoring them always works (PR#18372).
  * Package installation, R CMD INSTALL or install.packages(*), now
    parses each of the &lt;pkg&gt;/R/*.R files individually instead of
    first concatenating and then parse()ing the large resulting file.
    This allows parser or syntax errors to be diagnosed with correct
    file names and line numbers, thanks to Simon Dedman's report and
    Bill Dunlap's patch in PR#17859.
    This _does_ require syntactically self contained R source files
    now, fixing another inadvertent bug.
  * predict.lm(&lt;model with offset&gt;) now finds the offset in the
    correct environment, thanks to Andr'e Gillibert's report and patch
    in PR#18456.
  * getInitial(&lt;formula&gt;) now finds the selfStart model in the
    correct environment.  (Reported by Ivan Krylov in PR#18368.)
  * Fix for possible segfault when using recently-added graphics
    features, such as gradients, clipping paths, masks, and groups
    with pdf(file=NULL).
  * class(m) &lt;- class(m) no longer changes a matrix m by adding a
    class _attribute_.
  * packageDate(pkg) now only warns once if there is no pkg.
  * When ts() creates a multivariate time series, "mts", it also
    inherits from "array" now, and is.mts() is documented _and_
    stricter.
  * Rd2txt() now preserves line breaks of \verb Rd content and from
    duplicated \cr.  The former also fixes the rendering of verbatim
    output from Rd \Sexpr in plain-text help.
  * uniroot(f, interval) should no longer wrongly converge _outside_
    the interval in some cases where abs(f(x)) == Inf for an x at the
    interval boundary, thanks to posts by Ben Bolker and Serguei
    Sokol on R-devel.
  * Vectorized alpha handling in palette functions such as in gray(),
    rainbow(), or hcl.colors() works correctly now, thanks to Achim
    Zeileis' report and patch in PR#18476.
  * Formatting and print()ing of bibentry objects has dropped the
    deprecated citation.bibtex.max argument, such that the bibtex
    argument's default for print.bibentry() depends directly on the
    citation.bibtex.max option, whereas in format.bibentry() the
    option no longer applies.
  * Attempting to use a character string naming a foreign function
    entry point in a foreign function call in a package will now
    signal an error if the packages has called R_forceSymbols to
    specify that symbols must be used.
  * An error in table() could permanently set options(warn=2)
    promoting all subsequent warnings to errors.
  * The sigma() function gave misleading results for binary GLMs.  A
    new method for objects of class "glm" returns the square root of
    the estimate of the dispersion parameter using the same
    calculation as summary.glm().
  * bs() and ns() in the (typical) case of automatic knot
    construction, when some of the supposedly inner knots coincide
    with boundary knots, now moves them inside (with a warning),
    building on PR#18442 by Ben Bolker.
  * R CMD on Windows now skips the site profile with --no-site-file
    and --vanilla even when R_PROFILE is set (PR#18512, from Kevin
    Ushey).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1686916800">- CHANGES IN R 4.3.1:
  C-LEVEL FACILITIES:
  * The C-level API version of R's integrate(), Rdqags() in Applic.h,
    now returns the correct number of integrand evaluations neval,
    fixing PR#18515 reported and diagnosed by Stephen Wade.
  * The C prototypes for LAPACK calls dspgv and dtptrs in
    R_exts/Lapack.h had one too many and one too few character length
    arguments - but this has not caused any known issues. To get the
    corrected prototypes, include
    [#]include &lt;Rconfig.h&gt; // for PR18534fixed
    [#]ifdef PR18534fixed
    [#] define usePR18534fix 1
    [#]endif
    [#]include &lt;R_exts/Lapack.h&gt;
    in your C/C++ code (PR#18534).
  INSTALLATION:
  * Many of the checks of esoteric Internet operations and those
    using unreliable external sites have been moved to a new target
    that is not run by default and primarily intended for the core
    developers.  To run them use
    cd tests; make test-Internet-dev
  BUG FIXES:
  * .S3methods(), typically called from methods(), again marks
    methods from package base as visible.
    Also, the visibility of non-base methods is again determined by
    the method's presence in search().
  * tools::Rdiff() is now more robust against invalid strings, fixing
    installation tests on Windows without Rtools installed
    (PR#18530).
  * Fix (new) bug in hcl.colors(2, *), by Achim Zeileis (PR#18523).
  * head(., &lt;illegal&gt;) and tail(..) now produce more useful "Error in
    ...." error messages, fixing PR#18362.
  * Package code syntax on Windows is checked in UTF-8 when UTF-8 is
    the native encoding.
  * na.contiguous(x) now also returns the first run, when it is at
    the beginning and there is a later one of the same length;
    reported to R-devel, including a fix, by Georgi Boshnakov.
    Further, by default, it modifies only an existing attr(*,"tsp")
    but otherwise no longer sets one.
  * chol(&lt;not pos.def&gt;, pivot = &lt;T|F&gt;) now gives a correct error or
    warning message (depending on pivot), thanks to Mikael Jagan's
    (PR#18541).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1699012800">- CHANGES IN R 4.3.2:
  NEW FEATURES:
  * The default initialization of the "repos" option from the
    repositories file at startup can be skipped by setting
    environment variable R_REPOSITORIES to NULL such that
    getOption("repos") is empty if not set elsewhere.
  * qr.X() is now an implicit S4 generic in methods.
  * iconv(to = "ASCII//TRANSLIT") is emulated using substitution on
    platforms which do not support it (notably Alpine Linux).  This
    should give a human-readable conversion in ASCII on all platforms
    (rather than NA_character_).
  * trans3d() gains options continuous and verbose addressing the
    problem of possible "wrap around" when projecting too long
    curves, as reported by Achim Zeileis in PR#18537.
  * tools::showNonASCII() has been rewritten to work better on macOS
    14 (which has a changed implementation of iconv()).
  * tiff(type = "quartz") (the default on macOS) now warns if
    compression is specified: it continues to be ignored.
  INSTALLATION on a UNIX-ALIKE:
  * There is some support for building with Intel's LLVM-based
    compilers on x86_64 Linux, such as (C) icx, (C++) ipcx and
    (Fortran) ifx from oneAPI 2023.x.y.
  * There is support for using LLVM's flang-new as the Fortran
    compiler from LLVM 16.0.x (preferably 17.0.0 or later).
  UTILITIES:
  * R CMD check reports the use of the Fortran 90 random number
    generator RANDOM_NUMBER() and the subroutines to initialize it.
    'Writing R Extensions' has example code to use R's RNGs from
    Fortran.
  BUG FIXES:
  * substr(x, n, L) &lt;- cc now works (more) correctly for multibyte
    UTF-8 strings x when L &gt; nchar(x), thanks to a report and patch
    by 'Architect 95'.
  * contrib.url(character()) now returns 0-length character() as
    documented, which also avoids spurious warnings from
    available.packages() et al. in the edge case of an empty vector
    of repository URLs.
  * readChar(., 4e8) no longer fails, thanks to Kodi Arfer's report
    (PR#18557).
  * lapply(&lt;list&gt;, as.data.frame) no longer warns falsely for some
    base vector components.
  * Communication between parent and child processes in the multicore
    part of parallel could fail on platforms that do not support an
    arbitrarily large payload in system functions read()/write() on
    pipes (seen on macOS where a restriction to INT_MAX bytes is
    documented, without doing a partial read unlike Linux). The
    payload is now split into 1Gb chunks to avoid that problem.
    (PR#18571)
  * qqplot(x,y, conf.level=.) gives better confidence bounds when
    length(x) != length(y), thanks to Alexander Ploner's report and
    patch proposal (PR#18557).
  * norm(&lt;0-length&gt;, "2") now gives zero instead of an error, as all
    the other norm types, thanks to Mikael Jagan's PR#18542.
  * Build-stage Rd macros \packageAuthor and \packageMaintainer now
    process Authors@R, fixing NA results when the package DESCRIPTION
    omits Author and Maintainer fields.
  * Formatting and printing complex numbers could give things like
    0.1683-0i because of rounding error: -0i is now replaced by +0i.
  * postscript() refused to accept a title comment containing the
    letter "W" (PR#18599).
  * isoreg(c(1,Inf)) signals an error instead of segfaulting, fixing
    PR#18603.
  * tiff(type = "Xlib") was only outputting the last page of
    multi-page plots.
  * tools::latexToUtf8() again knows about \~{n} and other letters
    with tilde, fixing a regression in R 4.3.0, and about \^{i} as an
    alternative to \^{\i} (similarly with other accents).
    Furthermore, LaTeX codes for accented I letters are now correctly
    converted, also fixing related mistakes in
    tools::encoded_text_to_latex().
  * tar(*, tar = "internal") no longer creates out-of-spec tar files
    in the very rare case of user or group names longer than 32
    bytes, fixing PR#17871 with thanks to Ivan Krylov.
  * When using the "internal" timezone datetime code, adding a
    fraction of a second no longer adds one second, fixing PR#16856
    from a patch by Ivan Krylov.
  * tools::checkRd() no longer produces spurious notes about
    "unnecessary braces" from multi-line Rd results of \Sexpr macros.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1709208000">- CHANGES IN R 4.3.3:
  NEW FEATURES:
  * iconv() now fixes up variant encoding names such as "utf8"
    case-insensitively.
  DEPRECATED AND DEFUNCT:
  * The legacy encoding = "MacRoman" is deprecated in pdf() and
    postscript(): support was incomplete in earlier versions of R.
  BUG FIXES:
  * Arguments are now properly forwarded to methods on S4 generics
    with ... in the middle of their formal arguments. This was broken
    for the case when a method introduced an argument but did not
    include ... in its own formals. Thanks to Herv'e Pag`es for the
    report PR#18538.
  * Some invalid file arguments to pictex(), postscript() and xfig()
    opened a file called NA rather than throw an error.  These
    included postscript(NULL) (which some people expected to work
    like pdf(NULL)).
  * Passing filename = NA to svg(), cairo_pdf(), cairo_ps() or the
    Cairo-based bitmap devices opened a file called NA: it now throws
    an error.
  * quartz(file = NA) opened a file called NA, including when used as
    a Quartz-based bitmap device.  It now gives an error.
  * rank(&lt;long vector&gt;) now works, fixing PR#18617, thanks to Ilia
    Kats.
  * seq.int() did not adequately check its length.out argument.
  * match(&lt;POSIXct&gt;, .) is correct again for differing time zones,
    ditto for "POSIXlt", fixing PR#18618 reported by Bastian Klein.
  * drop.terms(*, dropx = &lt;0-length&gt;) now works, fixing PR#18563 as
    proposed by Mikael Jagan.
  * drop.terms(*) keeps + offset(.) terms when it should, PR#18565,
    and drop.terms() no longer makes up a response, PR#18566, fixing
    both bugs thanks to Mikael Jagan.
  * getS3method("t", "test") no longer finds the t.test() function,
    fixing PR#18627.
  * pdf() and postscript() support for the documented Adobe encodings
    "Greek" and "Cyrilllic" was missing (although the corresponding
    Windows' codepages could be used).
  * Computations of glyph metric information for pdf() and
    postscript() did not take into account that transliteration could
    replace one character by two or more (only seen on macOS 14) and
    typically warned that the information was not known.
  * rank(x) no longer overflows during integer addition, when
    computing rank average for largish but not-yet long vector x,
    fixing PR#18630, thanks to Ilia Kats.
  * list.files() on Windows now returns also files with names longer
    that 260 bytes (the Windows limit is 260 characters).
    Previously, some file names particularly with 'East Asian'
    characters were omitted.
  * cov2cor(&lt;0 x 0&gt;) now works, fixing PR#18423 thanks to Mikael
    Jagan and Elin Waring.
  * cov2cor(&lt;negative diagonal&gt;) and similar now give one warning
    instead of two, with better wording, fixing PR#18424 thanks to
    Mikael Jagan.
  * tools:: startDynamicHelp() now ensures port is in proper range,
    fixing PR#18645.
  * pbeta(x, a,b) is correct now for x=0 or 1 in the boundary cases
    where a or b or both are 0, fixing PR#18672 thanks to Michael
    Fay.
  * pmatch(x, table) for large table, also called for data frame row
    selection, dfrm[nm, ], is now interruptible, fixing PR#18656.
  * predict(&lt;rank-deficient lm&gt;, newdata=*) fix computing of nbasis,
    see Russ Lenth's comment 29 in PR#16158.
  * Added a work-around for a bug in macOS 14.3.1 and higher which
    prevents R plots in the Quartz Cocoa device from updating on
    screen.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1713960000">- CHANGES IN R 4.4.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Startup banners, R --version, sessionInfo() and R CMD check no
    longer report (64-bit) as part of the platform as this is almost
    universal - the increasingly rare 32-bit platforms will still
    report (32-bit).
    On Windows, ditto for window titles.
  * is.atomic(NULL) now returns FALSE, as NULL is not an atomic
    vector.  Strict back-compatibility would replace is.atomic(foo)
    by (is.null(foo) || is.atomic(foo)) but should happen only
    sparingly.
  NEW FEATURES:
  * The confint() methods for "glm" and "nls" objects have been
    copied to the stats package.  Previously, they were stubs which
    called versions in package MASS. The MASS namespace is no longer
    loaded if you invoke (say) confint(glmfit).  Further, the "glm"
    method for profile() and the plot() and pairs() methods for class
    "profile" have been copied from MASS to stats.  (profile.nls()
    and plot.profile.nls() were already in stats.)
  * The confint() and profile methods for "glm" objects have gained a
    possibility to do profiling based on the Rao Score statistic in
    addition to the default Likelihood Ratio. This is controlled by a
    new test = argument.
  * The pairs() method for "profile" objects has been extended with a
    which = argument to allow plotting only a subset of the
    parameters.
  * The "glm" method for anova() computes test statistics and
    p-values by default, using a chi-squared test or an F test
    depending on whether the dispersion is fixed or free.  Test
    statistics can be suppressed by giving argument test a false
    logical value.
  * In setRepositories() the repositories can be set using their
    names via name = instead of index ind =.
  * methods() and .S3methods() gain a all.names option for the (rare)
    case where functions starting with a . should be included.
  * Serializations can now be interrupted (e.g., by Ctrl-C on a
    Unix-alike) if they take too long, e.g., from save.image(),
    thanks to suggestions by Ivan Krylov and others on R-devel.
  * New startup option --max-connections to set the maximum number of
    simultaneous connections for the session.  Defaults to 128 as
    before: allowed values up to 4096 (but resource limits may in
    practice restrict to smaller values).
  * R on Windows (since Windows 10 2004) now uses the new Segment
    Heap allocator. This may improve performance of some
    memory-intensive applications.
  * When R packages are built, typically by R CMD build &lt;pkg&gt;, the
    new --user=&lt;build_user&gt; option overrides the (internally
    determined) user name, currently Sys.info()["user"] or LOGNAME.
    This is a (modified) fulfillment of Will Landau's suggestion in
    PR#17530.
  * tools::testInstalledBasic() gets new optional arguments outDir
    and testSrcdir, e.g., allowing to use it in a &lt;builddir&gt; !=
    &lt;srcdir&gt; setup, and in standard "binary" Windows installation
  * if* a source tests/ folder is present.
  * range(&lt;DT_with_Inf&gt;, finite = TRUE) now work for objects of class
    "Date", "POSIXct", and "POSIXlt" with infinite entries,
    analogously to range.default(), as proposed by Davis Vaughan on
    R-devel.  Other range()-methods can make use of new function
    .rangeNum().
  * New .internalGenerics object complementing .S3PrimitiveGenerics,
    for documentation and low-level book-keeping.
  * grid() now invisibly returns the x- and y- coordinates at which
    the grid-lines were drawn.
  * norm(., type) now also works for complex matrices.
  * kappa(., exact = TRUE, norm = *) now works for all norms and also
    for complex matrices.  In symmetric / triangular cases, the new
    argument uplo = "U" | "L" allows the upper or lower triangular
    part to be specified.
  * memDecompress(type = "unknown") recognizes compression in the
    default 'zlib' format as used by memCompress(type = "gzip").
  * memCompress() and memDecompress() will use the libdeflate library
    (&lt;https://github.com/ebiggers/libdeflate&gt;) if installed.  This
    uses the same type of compression for type = "gzip" but is 1.5-2x
    faster than the system libz library on some common platforms: the
    speed-up may depend on the library version.
  * diff() for objects of class "Date", "POSIXct", and "POSIXlt"
    accepts a units argument passed via ....
  * Dynamic help now does a much better job of rendering package
    DESCRIPTION metadata.
  * Rprof() gains an event argument and support for elapsed (real)
    time profiling on Unix (PR#18076).
  * filled.contour() gains a key.border argument.
  * tools::update_pkg_po() gets arguments pot_make and mo_make for
    _not_ re-making the corresponding files, and additionally a
    verbose argument.
  * Hexadecimal string colour specifications are now accepted in
    short form, so, for example, we can use "#123", which is
    equivalent to "#112233".
    Thanks to MikeFC for the original idea and Ella Kaye, Malcolm
    Barrett, George Stagg, and Hanne Oberman for the patch.
  * Plain-text help shows \var markup by angle brackets.
  * The new experimental primitive function declare() is intended to
    eventually allow information about R code to be communicated to
    the interpreter, compiler, and code analysis tools. The syntax
    for declarations is still being developed.
  * Functions psmirnov(), qsmirnov() and rsmirnov() in package stats
    have had argument two.sided renamed to alternative, to take into
    account that the permutation distributions of the one-sided
    statistics can be different in the case of ties.  Consequence of
    PR#18582.
  * sort() is now an implicit S4 generic in methods.
  * Formatting and printing, format(z), print(z), of complex vectors
    z no longer zap relatively small real or imaginary parts to zero,
    fixing PR#16752.  This is an API change, as it was documented
    previously to round real and imaginary parts together on purpose,
    producing nicer looking output.  As mentioned, e.g. in the PR,
    this change is compatible with many other "R-like" programming
    environments.
    We have simplified the internal code and now basically format the
    real and imaginary parts independently of each other.
  * New experimental functions Tailcall() and Exec() to support
    writing stack-space-efficient recursive functions.
  * Where characters are attempted to be plotted by pdf(),
    postscript() and xfig() which are not in the selected 8-bit
    character set (most often Latin-1) and the R session is using a
    UTF-8 locale, the warning messages will show the UTF-8 character
    rather than its bytes and one dot will be substituted per
    character rather than per byte.  (Platforms whose iconv() does
    transliteration silently plot the transliteration.)
    In a UTF-8 locale some transliterations are now done with a
    warning (e.g., dashes and Unicode minus to hyphen, ligatures are
    expanded, permille (‰) is replaced by o/oo), although the OS may
    have got there first.  These are warnings as they will continue
    to be replaced by dots in earlier versions of R.
  * The matrix multiplication functions crossprod() and tcrossprod()
    are now also primitive and S3 generic, as %*% had become in R
    4.3.0.
  * source() and example() have a new optional argument catch.aborts
    which allows continued evaluation of the R code after an error.
  * The non-Quartz tiff() devices allow additional types of
    compression if supported by the platform's libtiff library.
  * The list of base and recommended package names is now provided by
    tools::standard_package_names().
  * cairo_pdf() and cairo_ps() default to onefile = TRUE to closer
    match pdf() and postscript().
  * New option catch.script.errors provides a documented way to catch
    errors and then continue in non-interactive use.
  * L %||% R newly in base is an expressive idiom for the phrases
    if(!is.null(L)) L else R or if(is.null(L)) R else L.
  * The return value from warnings() now always inherits from
    "warnings" as documented, now also in the case of no warnings
    where it previously returned NULL.
  * as.complex("1i") now returns 0 + 1i instead of NA with a warning.
  * z &lt;- c(NA, 1i) now keeps the imaginary part Im(z[1]) == 0, no
    longer coercing to NA_complex_.  Similarly, cumsum(z) correctly
    sums real and imaginary parts separately, i.e., without
    "crosstalk" in case of NAs.
  * On Alpine Linux iconv() now maps "latin2", "latin-2", "latin9"
    and "latin-9" to encoding names the OS knows about
    (case-insensitively).
  * iconv(sub = "Unicode") now always zero-pads to four (hex) digits,
    rather than to 4 or 8.  (This seems to have become the convention
    once Unicode restricted the number of Unicode points to 2^21 - 1
    and so will never need more than 6 digits.)
  * NCOL(NULL) now returns 0 instead of 1, for consistency with
    cbind().
  * The information for the Euro glyph missing from the Adobe .afm
    files for the Courier, Helvetica and Times families has been
    copied from their URW equivalents - this will improve vertical
    centring in the pdf() and postscript() devices.
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.12.0.  The changes are almost entirely cosmetic.
  * The included LAPACK sources have been updated to version 3.12.0
    and some further double-complex routines added.
  * There are new font families for the 2014--5 URW 2.0 fonts (see
    ?pdf) which are included in recent versions of Ghostscript.
    These have font widths for most Greek glyphs and a few others
    which were missing from the original versions (whose font
    families remain available for reproducibility, although
    Ghostscript-based viewers will render using the 2.0 versions).
  * Improve the large-n efficiency of as.matrix(&lt;dist&gt;), thanks an R
    contributors effort, notably by Tim Taylor and Heather Turner,
    see PR#18660.
  * The default and numeric methods of all.equal() get a check.class
    option.
  * zapsmall() gets new optional arguments, function mFUN and min.d,
    for extra flexibility; fulfills a wish in PR#18199.  Also, it is
    now an implicit S4 generic in package methods.
  * The Rd filter for aspell() gains an ignore argument.
  * New generic function sort_by(), primarily useful for the
    data.frame method which can be used to sort rows of a data frame
    by one or more columns.
  * The icence headers for the RPC code in src/extra/xdr have been
    updated to use the GPL-compatible licence published by Oracle
    America in 2010.
  * New function pkg2HTML() in tools to create single-page HTML
    reference manuals for R packages.
  * The byte code evaluator now uses less C stack space for recursive
    calls to byte-compiled functions. It also makes more of an effort
    to avoid allocations for scalar return values.
  * New completion option backtick (disabled by default) allows
    non-syntactic completions to be wrapped in backquotes. This is
    currently only useful for Jupyter notebooks via the IRkernel
    package, and may cause problems for other backends.
  INSTALLATION:
  * The parser has been updated to work with bison 3.8.2, which is
    now used for the pre-generated parsers in gram.c, file.c, and
    gramRd.c. A few parser error messages have changed, which may
    affect code that relies on exact messages.
  INSTALLATION on a UNIX-ALIKE:
  * System valgrind headers are now required to use configure option
  - -with-valgrind-instrumentation with value 1 or 2.
  * configure will warn if it encounters a 32-bit build, as that is
    nowadays almost untested.
  * Environment variable R_SYSTEM_ABI is no longer used and so no
    longer recorded in etc/Renviron (it was not on Windows and was
    only ever used when preparing package tools).
  * If the libdeflate library and headers are available, libdeflate
    rather than libz is used to (de)compress R objects in lazy-load
    databases.  Typically tasks spend up to 5% of their time on such
    operations, although creating lazy-data databases is one of the
    exceptions.
    This can be suppressed if the library is available by the
    configure option --without-libdeflate-compression.
  * configure option --enable-lto=check has not worked reliably since
    2019 and has been removed.
  * The minimum autoconf requirement for a maintainer build has been
    increased to autoconf 2.71.
    It is intended to increase this to 2.72 for R 4.5.0: the
    distributed configure file was generated using 2.72.
  * The minimum version requirement for an external LAPACK has been
    reduced to 3.9.0.
  * No default C++ compiler is set if no C++17 compiler is detected:
    there is no longer an automatic fallback to C++14 or C++11.
    Compilers from the last five years should have sufficient
    support: for others macros CXX and CXXSTD can be set in file
    config.site to provide a fallback if needed.
    The Objective-C++ compiler now by default uses the standard
    selected by R for C++ (currently C++17) rather than the default
    standard for the C++ compiler (which on macOS is still C++98).
  INSTALLATION on macOS:
  * A new configure option --with-newAccelerate makes use of Apple's
    'new' BLAS / LAPACK interfaces in their Accelerate framework.
    Those interfaces are only available in macOS 13.3 or later, and
    building requires SDK 13.3 or later (from the Command Line Tools
    or Xcode 14.3 or later).
    By default the option uses new Accelerate for BLAS calls: to also
    use it for LAPACK use option --with-newAccelerate=lapack.  The
    later interfaces provide LAPACK 3.9.1 rather than 3.2.1: 3.9.1 is
    from 2021-04 and does not include the improved algorithms
    introduced in LAPACK 3.10.0 (including for BLAS calls).
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools44, an update of the Rtools43 toolchain.  It is
    based on GCC 13 and newer versions of MinGW-W64, binutils and
    libraries (targeting 64-bit Intel CPUs).  R-devel can no longer
    be built using Rtools43 without changes.
  * Rtools44 has experimental support for 64-bit ARM (aarch64) CPUs
    _via_ the LLVM 17 toolchain using lld, clang/flang-new and
    libc++.
  UTILITIES:
  * R CMD check notes when S4-style exports are used without
    declaring a strong dependence on package methods.
  * tools::checkRd() (used by R CMD check) detects more problems with
    \Sexpr-based dynamic content, including bad nesting of \Sexprs
    and invalid arguments.
  * tools::checkRd() now reports Rd titles and section names ending
    in a period; this is ignored by R CMD check unless environment
    variable _R_CHECK_RD_CHECKRD_MINLEVEL_ is set to -5 or smaller.
  * R CMD check now notes Rd files without an \alias, as long
    documented in 'Writing R Extensions' §1.3.1.  The check for a
    missing \description has been moved from tools::checkRd() to
    tools::checkRdContents().
  * R CMD check now visits inst/NEWS.Rd and OS-specific man
    subdirectories when checking Rd files.
  * tools::checkDocFiles() and tools::checkRdContents() now also
    check internal Rd files by default, but "specially" (ignoring
    missing documentation of arguments).
  * R CMD Rdiff gets option --useEx.
  * R CMD check now warns on non-portable uses of Fortran KIND such
    as INTEGER(KIND=4) and REAL(KIND=8).
    To see the failing lines set environment variable
    _R_CHECK_FORTRAN_KIND_DETAILS_ to a true value.
  * When checking Rd files, R CMD check now notes some of the "lost
    braces" that tools::checkRd() finds.  Typical problems are Rd
    macros missing the initial backslash (e.g., code{...}), in-text
    set notation (e.g., {1, 2}, where the braces need escaping), and
    \itemize lists with \describe-style entries of the form
    \item{label}{description}.
  * R CMD INSTALL (and hence check) will compile C++ code with
  - DR_NO_REMAP if environment variable _R_CXX_USE_NO_REMAP_ is set
    to a true value.  It is planned that this will in future become
    the default for compiling C++.
  * The new built-in Rd macro \dontdiff{} can be used to mark example
    code whose output should be ignored when comparing check output
    to reference output (tests/Examples/&lt;pkg&gt;-Ex.Rout.save).  The
    \dontdiff tag, like \donttest, is _not_ shown on the rendered
    help page, so provides a clean alternative to ##
    IGNORE_RDIFF_(BEGIN|END) comments.
  * R CMD build when there is no NAMESPACE, now uses the recommended
    exportPattern("^[^.]"), instead of exporting everything.
  * R CMD check now warns about non-ASCII characters in the NAMESPACE
    file (in addition to R files). Such packages are not portable and
    may fail to install on some platforms.
  C-LEVEL FACILITIES:
  * Headers R_ext/Applic.h and R-ext/Linpack.h used to include
    R_ext/BLAS.h although this was undocumented and unneeded by their
    documented entry points.  They no longer do so.
  * New function R_missing(), factored out from do_missing(), used to
    fix PR#18579.
  * SEXP type S4SXP has been renamed to OBJSXP to support
    experimenting with alternative object systems.  The S4SXP value
    can still be used in C code but is now deprecated.  Based on
    contributions from the R Consortium's Object-Oriented Programming
    Working Group.
  * New function pow1p(x,y) for accurate (1+x)^y.
  * mkCharLenCE was incorrectly documented to take a size_t length
    but was implemented with int (and character strings in R are
    limited to 2^31 - 1 bytes).
  DEPRECATED AND DEFUNCT:
  * data() no longer handles zipped data from long-defunct (since R
    2.13.0) --use-zip-data installations.
  * The legacy graphics devices pictex() and xfig() are now
    deprecated.  They do not support recent graphics enhancements and
    their font handling is rudimentary. The intention is to retain
    them for historical interest as long as they remain somewhat
    functional.
  * Support for encoding = "MacRoman" has been removed from the pdf()
    and postscript() devices - this was a legacy encoding supporting
    classic macOS up to 2001 and no longer has universal libiconv
    support.
  * is.R() is deprecated as no other S dialect is known to be in use
    (and this could only identify historical dialects, not future
    ones).
    Further information on calls can be obtained by setting the
    environment variable _R_DEPRECATED_IS_R_ to error which turns the
    deprecation warning into an error and so by default gives a
    traceback.  (This is done by R CMD check --as-cran.)
  * UseMethod() no longer forwards local variables assigned in the
    generic function into method call environments before evaluating
    the method body. This makes method calls behave more like
    standard function calls and makes method code easier to analyze
    correctly.
  * The twelve as.data.frame.&lt;class&gt;() methods which were deprecated
    only via _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ and in R CMD
    check --as-cran are formally deprecated now in favour of calling
    as.data.frame() or as.data.frame.vector().  The deprecation
    "check" now works also when as.data.frame() is S4 generic thanks
    to Ivan Krylov.
  * The default method for the directional comparison operators &lt;, &gt;,
    &lt;=, and &gt;= now signals an error when one of the operands is a
    language object, i.e. a symbol or a call.
  * For terms.formula(), deprecate abb and neg.out arguments
    _formally_ in addition to just documenting it.
  BUG FIXES:
  * The methods package is more robust to not being attached to the
    search path.  More work needs to be done.
  * pairwise.t.test() misbehaved when subgroups had 0 DF for
    variance, even with pool.sd = TRUE.  (PR#18594 by Jack Berry).
  * Probability distribution functions [dpq]&lt;distrib&gt;(x, *), but also
    bessel[IKJY](x, .) now consistently preserve attributes(x) when
    length(x) == 0, e.g., for a 2 x 0 matrix, thanks to Karolis
    Koncevičius' report PR#18509.
  * Group "Summary" computations such as sum(1:3, 4, na.rm = 5, NA,
    7, na.rm = LL) now give an error instead of either 17 or NN for
    LL true or false, as proposed by Ivan Krylov on the R-devel
    mailing list.  (This also means it is now an error to specify
    na.rm more than once.)
  * as.complex(x) now returns complex(real = x, imaginary = 0) for
    _all_ numerical and logical x, notably also for NA or
    NA_integer_.
  * Directories are now omitted by file.copy(, recursive = FALSE) and
    in file.append() (PR#17337).
  * gsub() and sub() are now more robust to integer overflow when
    reporting errors caused by too large input strings (PR#18346).
  * Top-level handlers are now more robust to attempts to remove a
    handler whilst handlers are running (PR#18508).
  * The handling of Alt+F4 in dialogs created on Windows using
    GraphApp has been fixed (PR#13870).
  * density() more consistently computes grid values for the
    FFT-based convolution, following Robert Schlicht's analysis and
    proposal in PR#18337, correcting density values typically by a
    factor of about 0.999.  Argument old.coords = TRUE provides back
    compatibility.
  * palette.colors() gains a name argument that defaults to FALSE
    controlling whether the vector of colours that is returned has
    names (where possible).  PR#18529.
  * tools::xgettext() no longer extracts the (non-translatable) class
    names from warningCondition and errorCondition calls.
  * S3method(&lt;gen&gt;, &lt;class&gt;, &lt;func&gt;) in the NAMESPACE file now works
    (again) when &lt;func&gt; is visible from the namespace, e.g.,
    imported, or in base.
  * getParseData(f) now also works for a function defined in the
    first of several &lt;pkg&gt;/R/*.R source files, thanks to Kirill
    Müller's report and Duncan Murdoch's patch in PR#16756.
  * Rd \Sexpr macros with nested #ifdef conditionals were not
    processed.
  * A non-blocking connection with non-default encoding (such as a
    socket) now correctly returns from readLines() after new data has
    arrived also when its EOF had been reached previously.  Thanks to
    Peter Meilstrup's report on R-devel and Ivan Krylov's report and
    patch proposal in PR#18555.
  * tools::checkRdContents() failed to detect empty argument
    descriptions when they spanned multiple lines, including those
    generated by prompt().  These cases are now noted by R CMD check.
  * Plain-text help no longer outputs spurious colons in the
    arguments list (for multi-line \item labels in the Rd source).
  * kappa() and rcond() work correctly in more cases; kappa(., norm =
    "2") now warns that it computes the 1-norm with (default) exact =
    FALSE; prompted by Mikael Jagan's quite comprehensive PR#18543.
  * Rd skeletons generated by prompt() or promptData() now use a
    dummy title (so R CMD build works).  tools::checkRdContents() has
    been updated to detect such template leftovers, including from
    promptPackage().
  * When S4 method dispatch fails because no method was found, the
    error message now includes the signature argument names; thanks
    to Michael Chirico's proposal on the R-devel list.
  * withAutoprint({ .. }) now preserves srcrefs previously lost,
    thanks to Andrew Simmons' report plus fix in PR#18572.
  * transform.data.frame() no longer adjusts names; in particular,
    untransformed variables are kept as-is, including those with
    syntactically invalid names (PR#17890).
  * The keep.source option for Rd \Sexpr blocks is no longer ignored.
  * The formula methods for t.test() and wilcox.test() now catch when
    paired is passed, addressing PR#14359; use Pair(x1, x2) ~ 1 for a
    paired test.
  * The level reported in the browser prompt was often too large. It
    now shows the number of browser contexts on the stack.
  * For cbind() and rbind(), the optional deparse.level argument is
    now properly passed to methods, thanks to Mikael Jagan's PR#18579
    and comments there.
  * Some error and warning messages for large ('long vector')
    matrix(v, nr, nc) and dim(m) &lt;- d are now correct about sizes,
    using long long formatting, fixing PR#18612 (and more) reported
    by Mikael Jagan.
  * readChar(useBytes = TRUE) now terminates strings even when the
    underlying connection uses extra spaces in the input buffer.
    This fixes problems with extra garbage seen with gzip
    connections, PR#18605.
  * Named capture in PCRE regular expressions now works also with
    more than 127 named groups (PR#18588).
  * Datetime functions are now robust against long jumps when dealing
    with internal time zone changes.  This avoids confusing warnings
    about an invalid time zone, previously triggered by turning
    warnings into errors or handling them via tryCatch (PR#17966,
    PR#17780).
  * Datetime functions now restore even an empty TZ environment
    variable after internal time zone changes (PR#17724).  This makes
    results of datetime functions with this (typically unintentional)
    setting more predictable.
  * drop.terms(*) now drops response as by default, keep.response =
    FALSE, fixing PR#18564 thanks to Mikael Jagan.
  * dummy.coef(.) now also works for lm()-models with character
    categorical predictor variables rather than factor ones, fixing
    PR#18635 reported by Jinsong Zhao.
  * formals(f) &lt;- formals(f) now also works for a function w/o
    arguments and atomic _constant_ body(f).
  * Correct as.function(&lt;invalid list&gt;, .)'s error message.
  * removeSource() is yet more thorough in finding and removing
    "srcref" and the other source references from parsed R language
    chunks, fixing PR#18638 thanks to Andrew Simmons.
  * dgeom() is more accurate now, notably when its result is very
    small, fixing PR#18642 thanks to the proposal of Morten Welinder,
    also improving other instances where C level binom_raw(x, n, ..)
    has x == 0 or x== n.
  * warning() with options(warn = 1) has improved output for
    multi-line messages.
  * axis.Date() and axis.POSIXct() now respect the par("lab") setting
    for the number of pretty() intervals.
  * Comparisons for language objects (which are based on deparsing)
    are now more careful about using accurate deparsed results
    (PR#18676).
  * Plain-text help (Rd2txt) now correctly preserves blank lines
    following single-line \dontrun code.
  * &lt;POSIXlt&gt;[*] no longer sets wrong "balanced" attribute, fixing
    PR#18681 thanks to Mikael Jagan.
  * str(&lt;classed-call&gt;) now deparses the call as expected, fixing
    PR#18684, reported by Dave Slager.
  * In Rd examples, code following the closing brace of a \dontrun,
    \dontshow or \donttest tag on the same line is no longer skipped
    when R CMD check runs the examples.
  * as.data.frame(matrix(*, ncol=0)) now gets valid names() and
    colnames(); reported by Davis Vaughan on the R-devel list.
  * Internal Mathlib function stirlerr(n) is now almost fully
    (52-bit) accurate for all n &gt;= ~5.9 and more accurate also in the
    range 1 -- 5.9.  This entails small ("after 12th decimal")
    changes in density functions, e.g., dgamma() in _some_ regions of
    their support.  The fix was partly prompted by Morten Welinder's
    PR#18640.
  * Numbers like 9876543.2 are now considered non-integer by Mathlib
    internal R_nonint(), amending original fix of PR#15734.
  * Rd comment lines no longer cause broken paragraphs in the
    rendered PDF and plain-text help. In code blocks, pure comment
    lines (starting with %) no longer produce an empty line.
  * xtabs(Freq ~ .) now consistently defaults to na.action = na.pass,
    using na.rm = FALSE (added as an argument) when summing over Freq
    (PR#17770).
  * tools::testInstalledPackage() is no longer silent about failures
    from running examples or tests and its return code no longer
    ignores failures from checking vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1718366400">- CHANGES IN R 4.4.1:
  C-LEVEL FACILITIES:
  * Functions R_atof and R_strtod declared in header R_ext/Utils.h
    are now documented in 'Writing R Extensions' and so formally part
    of the API.
  * The non-API entry points Rf_setSVector, Rf_StringFalse,
    Rf_StringTrue and Rf_isBlankString have been added to those
    reported by R CMD check.
  * The new function Rf_allocLang is now available. This provides an
    alternative to the idiom of calling Rf_allocList followed by
    SET_TYPEOF.
  UTILITIES:
  * R CMD check now reports as warnings what gfortran calls 'Fortran
    2018 deleted features', all of which have long been marked as
    'obsolescent' and some of which were deleted in Fortran 2008 or
    earlier.  Fortran compilers are no longer required to support
    these.
  BUG FIXES:
  * as.numeric(), scan(), type.convert() and other places which use
    the internal C function R_strtod now require a _non-empty_ digit
    sequence in a decimal or binary exponent.  This aligns with the
    C/POSIX standard for strtod and with ?NumericConstants.
  * as.data.frame(m, make.names=NA) now works correctly for a matrix
    m with NA's in row names.
  * The error message from &lt;POSIXlt&gt;[["hour"]] and similar now
    mentions *[[, "hour"]], as wished for in PR#17409 and proposed by
    Michael Chirico.
  * qbinom() and potentially qpois(), qnbinom(), no longer sometimes
    fail accurate inversion (of pbinom(), etc), thanks to Christopher
    Chang's report and patch in PR#18711.
  * The internal help server on Windows can again serve requests sent
    in quick succession, fixing a regression in R 4.4.0.
  * debugcall(&lt;S3Generic&gt;()) now also works when a corresponding
    S4-generic version is in the methods cache (PR#18143).
  * Package tools' toTitleCase(ch0) now returns character(0) when ch0
    is of zero length; fixing PR#18724, reported by David Hugh Jones.
  * R CMD check is no longer broken (without a check result and no
    explanation in 00check.log) for a package which declares an
    invalid VignetteBuilder in DESCRIPTION but has no vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1730376000">- CHANGES IN R 4.4.2:
  C-LEVEL FACILITIES:
  * The S-compatibility macros F77_COM and F77_COMDECL defined in
    header R_ext/RS.h are deprecated and will be removed shortly.  We
    could find no record of their use.
  BUG FIXES:
  * Mathlib function lgammacor(x) no longer warns about underflow to
    zero for large x.
  * Text widths and heights were incorrectly reported by the Quartz
    device if the drawing context didn't exist yet (typically when
    drawing off-screen to a window that is yet to appear, see
    PR#18591).
  * The Quartz device could segfault in cases where paths with spaces
    are used in the new glyph drawing API.  Thanks to Tomek
    Gieorgijewski (PR#18758).
  * On macOS in R CRAN builds, it is again possible to read
    little-endian UTF-16 text with a BOM from a connection using
    encoding="UTF-16".  Users building R from source should avoid
    using the system libiconv in macOS 14.1 and later.
  * methods' internal .requirePackage() now re-enables primitive
    method dispatch when needed; thanks to Ivan Krylov for
    demystifying CRAN package check failures on the R-devel mailing
    list.</changelog>
</package>
<package pkgid="6af7e3da783ff307186659d6200593c307432ac993e89f9a1aeec585a2691a63854f903e2b4dce7fce55a64c0b5a0ae0d6dd294ed4b671a9099da7559f2b1fb3" name="R-rpart" arch="x86_64">
  <version epoch="0" ver="4.1.23" rel="51.0.2.2.sr20241103"/>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1620302400">- To get in sync with d:l:R:autoCRAN the Matrix package's split
  in -devel was reversed.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339200">- improved spec file according to comments of dimstar in
  https://build.opensuse.org/request/show/892685</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339201">- CHANGES IN R 4.1.0:
  FUTURE DIRECTIONS:
  * It is planned that the 4.1.x series will be the last to support
    32-bit Windows, with production of binary packages for that
    series continuing until early 2023.
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Data set esoph in package datasets now provides the correct
    numbers of controls; previously it had the numbers of cases added
    to these.  (Reported by Alexander Fowler in PR#17964.)
  NEW FEATURES:
  * www.omegahat.net is no longer one of the repositories known by
    default to setRepositories().  (Nowadays it only provides source
    packages and is often unavailable.)
  * Function package_dependencies() (in package tools) can now use
    different dependency types for direct and recursive dependencies.
  * The checking of the size of tarball in R CMD check --as-cran
    &lt;pkg&gt; may be tweaked via the new environment variable
    _R_CHECK_CRAN_INCOMING_TARBALL_THRESHOLD_, as suggested in
    PR#17777 by Jan Gorecki.
  * Using c() to combine a factor with other factors now gives a
    factor, an ordered factor when combining ordered factors with
    identical levels.
  * apply() gains a simplify argument to allow disabling of
    simplification of results.
  * The format() method for class "ftable" gets a new option justify.
    (Suggested by Thomas Soeiro.)
  * New ...names() utility.  (Proposed by Neal Fultz in PR#17705.)
  * type.convert() now warns when its as.is argument is not
    specified, as the help file always said it _should_.  In that
    case, the default is changed to TRUE in line with its change in
    read.table() (related to stringsAsFactor) in R 4.0.0.
  * When printing list arrays, classed objects are now shown _via_
    their format() value if this is a short enough character string,
    or by giving the first elements of their class vector and their
    length.
  * capabilities() gets new entry "Rprof" which is TRUE when R has
    been configured with the equivalent of --enable-R-profiling (as
    it is by default).  (Related to Michael Orlitzky's report
    PR#17836.)
  * str(xS4) now also shows extraneous attributes of an S4 object
    xS4.
  * Rudimentary support for vi-style tags in rtags() and R CMD rtags
    has been added.  (Based on a patch from Neal Fultz in PR#17214.)
  * checkRdContents() is now exported from tools; it and also
    checkDocFiles() have a new option chkInternal allowing to check
    Rd files marked with keyword "internal" as well.  The latter can
    be activated for R CMD check via environment variable
    _R_CHECK_RD_INTERNAL_TOO_.
  * New functions numToBits() and numToInts() extend the raw
    conversion utilities to (double precision) numeric.
  * Functions URLencode() and URLdecode() in package utils now work
    on vectors of URIs.  (Based on patch from Bob Rudis submitted
    with PR#17873.)
  * path.expand() can expand ~user on most Unix-alikes even when
    readline is not in use.  It tries harder to expand ~, for example
    should environment variable HOME be unset.
  * For HTML help (both dynamic and static), Rd file links to help
    pages in external packages are now treated as references to
    topics rather than file names, and fall back to a file link only
    if the topic is not found in the target package. The earlier rule
    which prioritized file names over topics can be restored by
    setting the environment variable _R_HELP_LINKS_TO_TOPICS_ to a
    false value.
  * c() now removes NULL arguments before dispatching to methods,
    thus simplifying the implementation of c() methods, _but_ for
    back compatibility keeps NULL when it is the first argument.
    (From a report and patch proposal by Lionel Henry in PR#17900.)
  * Vectorize()'s result function's environment no longer keeps
    unneeded objects.
  * Function ...elt() now propagates visibility consistently with
    ..n.  (Thanks to Lionel Henry's PR#17905.)
  * capture.output() no longer uses non-standard evaluation to
    evaluate its arguments.  This makes evaluation of functions like
    parent.frame() more consistent.  (Thanks to Lionel Henry's
    PR#17907.)
  * packBits(bits, type="double") now works as inverse of
    numToBits().  (Thanks to Bill Dunlap's proposal in PR#17914.)
  * curlGetHeaders() has two new arguments, timeout to specify the
    timeout for that call (overriding getOption("timeout")) and TLS
    to specify the minimum TLS protocol version to be used for
    https:// URIs (_inter alia_ providing a means to check for sites
    using deprecated TLS versions 1.0 and 1.1).
  * For nls(), an optional constant scaleOffset may be added to the
    denominator of the relative offset convergence test for cases
    where the fit of a model is expected to be exact, thanks to a
    proposal by John Nash.  nls(*, trace=TRUE) now also shows the
    convergence criterion.
  * Numeric differentiation _via_ numericDeriv() gets new optional
    arguments eps and central, the latter for taking central divided
    differences.  The latter can be activated for nls() via
    nls.control(nDcentral = TRUE).
  * nls() now passes the trace and control arguments to getInitial(),
    notably for all self-starting models, so these can also be fit in
    zero-noise situations via a scaleOffset.  For this reason, the
    initial function of a selfStart model must now have ... in its
    argument list.
  * bquote(splice = TRUE) can now splice expression vectors with
    attributes: this makes it possible to splice the result of
    parse(keep.source = TRUE).  (Report and patch provided by Lionel
    Henry in PR#17869.)
  * textConnection() gets an optional name argument.
  * get(), exists(), and get0() now signal an error if the first
    argument has length greater than 1.  Previously additional
    elements were silently ignored.  (Suggested by Antoine Fabri on
    R-devel.)
  * R now provides a shorthand notation for creating functions, e.g.
    \(x) x + 1 is parsed as function(x) x + 1.
  * R now provides a simple native forward pipe syntax |&gt;.  The
    simple form of the forward pipe inserts the left-hand side as the
    first argument in the right-hand side call.  The pipe
    implementation as a syntax transformation was motivated by
    suggestions from Jim Hester and Lionel Henry.
  * all.equal(f, g) for functions now by default also compares their
    environment(.)s, notably via new all.equal method for class
    function.  Comparison of nls() fits, e.g., may now need
    all.equal(m1, m2, check.environment = FALSE).
  * .libPaths() gets a new option include.site, allowing to _not_
    include the site library.  (Thanks to Dario Strbenac's suggestion
    and Gabe Becker's PR#18016.)
  * Lithuanian translations are now available.  (Thanks to Rimantas
    Zakauskas.)
  * names() now works for DOTSXP objects.  On the other hand, in
    R-lang, the R language manual, we now warn against relying on the
    structure or even existence of such dot-dot-dot objects.
  * all.equal() no longer gives an error on DOTSXP objects.
  * capabilities("cairo") now applies only to the file-based devices
    as it is now possible (if very unusual) to build R with Cairo
    support for those but not for X11().
  * There is optional support for tracing the progress of
    loadNamespace() - see its help.
  * (Not Windows.)  l10n_info() reports an additional element, the
    name of the encoding as reported by the OS (which may differ from
    the encoding part (if any) of the result from
    Sys.getlocale("LC_CTYPE").
  * New function gregexec() which generalizes regexec() to find _all_
    disjoint matches and well as all substrings corresponding to
    parenthesized subexpressions of the given regular expression.
    (Contributed by Brodie Gaslam.)
  * New function charClass() in package utils to query the
    wide-character classification functions in use (such as
    iswprint).
  * The names of quantile()'s result no longer depend on the global
    getOption("digits"), but quantile() gets a new optional argument
    digits = 7 instead.
  * grep(), sub(), regexp and variants work considerably faster for
    long factors with few levels.  (Thanks to Michael Chirico's
    PR#18063.)
  * Provide grouping of x11() graphics windows within a window
    manager such as Gnome or Unity; thanks to a patch by Ivan Krylov
    posted to R-devel.
  * The split() method for class data.frame now allows the f argument
    to be specified as a formula.
  * sprintf now warns on arguments unused by the format string.
  * New palettes "Rocket" and "Mako" for hcl.colors() (approximating
    palettes of the same name from the 'viridisLite' package).
    Contributed by Achim Zeileis.
  * The base environment and its namespace are now locked (so one can
    no longer add bindings to these or remove from these).
  * Rterm handling of multi-byte characters has been improved,
    allowing use of such characters when supported by the current
    locale.
  * Rterm now accepts ALT+ +xxxxxxxx sequences to enter Unicode
    characters as hex digits.
  * Environment variable LC_ALL on Windows now takes precedence over
    LC_CTYPE and variables for other supported categories, matching
    the POSIX behaviour.
  * duplicated() and anyDuplicated() are now optimized for integer
    and real vectors that are known to be sorted via the ALTREP
    framework. Contributed by Gabriel Becker via PR#17993.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 14
    and so packages that provide graphics devices should be
    reinstalled.
  * Graphics devices should now specify deviceVersion to indicate
    what version of the graphics engine they support.
  * Graphics devices can now specify deviceClip.  If TRUE, the
    graphics engine will never perform any clipping of output itself.
    The clipping that the graphics engine does perform (for both
    canClip = TRUE and canClip = FALSE) has been improved to avoid
    producing unnecessary artifacts in clipped output.
  * The grid package now allows gpar(fill) to be a linearGradient(),
    a radialGradient(), or a pattern().  The viewport(clip) can now
    also be a grob, which defines a clipping path, and there is a new
    viewport(mask) that can also be a grob, which defines a mask.
    These new features are only supported so far on the Cairo-based
    graphics devices and on the pdf() device.
  * (Not Windows.)  A warning is given when a Cairo-based type is
    specified for a png(), jpeg(), tiff() or bmp() device but Cairo
    is unsupported (so type = "Xlib" is tried instead).
  * grSoftVersion() now reports the versions of FreeType and
    FontConfig if they are used directly (not _via_ Pango), as is
    most commonly done on macOS.
  C-LEVEL FACILITIES:
  * The _standalone_ libRmath math library and R's C API now provide
    log1pexp() again as documented, and gain log1mexp().
  INSTALLATION on a UNIX-ALIKE:
  * configure checks for a program pkgconf if program pkg-config is
    not found.  These are now only looked for on the path (like
    almost all other programs) so if needed specify a full path to
    the command in PKG_CONFIG, for example in file config.site.
  * C99 function iswblank is required - it was last seen missing ca
    2003 so the workaround has been removed.
  * There are new configure options --with-internal-iswxxxxx,
  - -with-internal-towlower and --with-internal-wcwidth which allows
    the system functions for wide-character classification,
    case-switching and width (wcwidth and wcswidth) to be replaced by
    internal ones.  The first has long been used on macOS, AIX (and
    Windows) but this enables it to be unselected there and selected
    for other platforms (it is the new default on Solaris).  The
    second is new in this version of R and is selected by default on
    macOS and Solaris.  The third has long been the default and
    remains so as it contains customizations for East Asian
    languages.
    System versions of these functions are often minimally
    implemented (sometimes only for ASCII characters) and may not
    cover the full range of Unicode points: for example Solaris (and
    Windows) only cover the Basic Multilingual Plane.
  * Cairo installations without X11 are more likely to be detected by
    configure, when the file-based Cairo graphics devices will be
    available but not X11(type = "cairo").
  * There is a new configure option --with-static-cairo which is the
    default on macOS.  This should be used when only static cairo
    (and where relevant, Pango) libraries are available.
  * Cairo-based graphics devices on platforms without Pango but with
    FreeType/FontConfig will make use of the latter for font
    selection.
  LINK-TIME OPTIMIZATION on a UNIX-ALIKE:
  * Configuring with flag --enable-lto=R now also uses LTO when
    installing the recommended packages.
  * R CMD INSTALL and R CMD SHLIB have a new flag --use-LTO to use
    LTO when compiling code, for use with R configured with
  - -enable-lto=R.  For R configured with --enable-lto, they have
    the new flag --no-use-LTO.
    Packages can opt in or out of LTO compilation _via_ a UseLTO
    field in the DESCRIPTION file.  (As usual this can be overridden
    by the command-line flags.)
  BUILDING R on Windows:
  * for GCC &gt;= 8, FC_LEN_T is defined in config.h and hence character
    lengths are passed from C to Fortran in _inter alia_ BLAS and
    LAPACK calls.
  * There is a new text file src/gnuwin32/README.compilation, which
    outlines how C/Fortran code compilation is organized and
    documents new features:
  * R can be built with Link-Time Optimization with a suitable
    compiler - doing so with GCC 9.2 showed several
    inconsistencies which have been corrected.
  * There is support for cross-compiling the C and Fortran code
    in R and standard packages on suitable (Linux) platforms.
    This is mainly intended to allow developers to test later
    versions of compilers - for example using GCC 9.2 or 10.x has
    detected issues that GCC 8.3 in Rtools40 does not.
  * There is experimental support for cross-building R packages
    with C, C++ and/or Fortran code.
  * The R installer can now be optionally built to support a single
    architecture (only 64-bit or only 32-bit).
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++14 where
    available (which it is on all currently checked platforms): if
    not (as before) C++11 is used if available otherwise C++ is not
    supported.
    Packages which specify C++11 will still be installed using C++11.
    C++14 compilers may give deprecation warnings, most often for
    std::random_shuffle (deprecated in C++14 and removed in C++17).
    Either specify C++11 (see 'Writing R Extensions') or modernize
    the code and if needed specify C++14.  The latter has been
    supported since R 3.4.0 so the package's DESCRIPTION would need
    to include something like
    Depends: R (&gt;= 3.4)
  PACKAGE INSTALLATION on Windows:
  * R CMD INSTALL and R CMD SHLIB make use of their flag --use-LTO
    when the LTO_OPT make macro is set in file etc/${R_ARCH}/Makeconf
    or in a personal/site Makevars file.  (For details see 'Writing R
    Extensions' SS4.5.)
    This provides a valuable check on code consistency.  It does work
    with GCC 8.3 as in Rtools40, but that does not detect everything
    the CRAN checks with current GCC do.
  PACKAGE INSTALLATION on macOS:
  * The default personal library directory on builds with
  - -enable-aqua (including CRAN builds) now differs by CPU type,
    one of
    ~/Library/R/x86_64/x.y/library
    ~/Library/R/arm64/x.y/library
    This uses the CPU type R (and hence the packages) were built for,
    so when a x86_64 build of R is run under Rosetta emulation on an
    arm64 Mac, the first is used.
  UTILITIES:
  * R CMD check can now scan package functions for bogus return
    statements, which were possibly intended as return() calls (wish
    of PR#17180, patch by Sebastian Meyer). This check can be
    activated via the new environment variable
    _R_CHECK_BOGUS_RETURN_, true for --as-cran.
  * R CMD build omits tarballs and binaries of previous builds from
    the top-level package directory.  (PR#17828, patch by Sebastian
    Meyer.)
  * R CMD check now runs sanity checks on the use of LazyData, for
    example that a data directory is present and that
    LazyDataCompression is not specified without LazyData and has a
    documented value.  For packages with large LazyData databases
    without specifying LazyDataCompression, there is a reference to
    the code given in 'Writing R Extensions' SS1.1.6 to test the
    choice of compression (as in all the CRAN packages tested a
    non-default method was preferred).
  * R CMD build removes LazyData and LazyDataCompression fields from
    the DESCRIPTION file of packages without a data directory.
  ENCODING-RELATED CHANGES:
  * The parser now treats \Unnnnnnnn escapes larger than the upper
    limit for Unicode points (\U10FFFF) as an error as they cannot be
    represented by valid UTF-8.
    Where such escapes are used for outputting non-printable
    (including unassigned) characters, 6 hex digits are used (rather
    than 8 with leading zeros).  For clarity, braces are used, for
    example \U{0effff}.
  * The parser now looks for non-ASCII spaces on Solaris (as
    previously on most other OSes).
  * There are warnings (including from the parser) on the use of
    unpaired surrogate Unicode points such as \uD834.  (These cannot
    be converted to valid UTF-8.)
  * Functions nchar(), tolower(), toupper() and chartr() and those
    using regular expressions have more support for inputs with a
    marked Latin-1 encoding.
  * The character-classification functions used (by default) to
    replace the system iswxxxxx functions on Windows, macOS and AIX
    have been updated to Unicode 13.0.0.
    The character-width tables have been updated to include new
    assignments in Unicode 13.0.0.
  * The code for evaluating default (extended) regular expressions
    now uses the same character-classification functions as the rest
    of R (previously they differed on Windows, macOS and AIX).
  * There is a build-time option to replace the system's
    wide-character wctrans C function by tables shipped with R: use
    configure option --with-internal-towlower or (on Windows)
  - DUSE_RI18N_CASE in CFLAGS when building R.  This may be needed
    to allow tolower() and toupper() to work with Unicode characters
    beyond the Basic Multilingual Plane where not supported by system
    functions (e.g. on Solaris where it is the new default).
  * R is more careful when truncating UTF-8 and other multi-byte
    strings that are too long to be printed, passed to the system or
    libraries or placed into an internal buffer.  Truncation will no
    longer produce incomplete multibyte characters.
  DEPRECATED AND DEFUNCT:
  * Function plclust() from the package stats and
    package.dependencies(), pkgDepends(), getDepList(),
    installFoundDepends(), and vignetteDepends() from package tools
    are defunct.
  * Defunct functions checkNEWS() and readNEWS() from package tools
    and CRAN.packages() from utils have been removed.
  * R CMD config CXXCPP is defunct (it was deprecated in R 3.6.2).
  * parallel::detectCores() drops support for Irix (retired in 2013).
  * The LINPACK argument to chol.default(), chol2inv(),
    solve.default() and svd() has been defunct since R 3.1.0.  It was
    silently ignored up to R 4.0.3 but now gives an error.
  * Subsetting/indexing, such as ddd[*] or ddd$x on a DOTSXP
    (dot-dot-dot) object ddd has been disabled; it worked by accident
    only and was undocumented.
  BUG FIXES:
  * Many more C-level allocations (mainly by malloc and strdup) are
    checked for success with suitable alternative actions.
  * Bug fix for replayPlot(); this was turning off graphics engine
    display list recording if a recorded plot was replayed in the
    same session.  The impact of the bug became visible if resize the
    device after replay OR if attempted another savePlot() after
    replay (empty display list means empty screen on resize or empty
    saved plot).
  * R CMD check etc now warn when a package exports non-existing S4
    classes or methods, also in case of no "methods" presence.
    (Reported by Alex Bertram; reproducible example and patch by
    Sebastian Meyer in PR#16662.)
  * boxplot() now also accepts calls for labels such as ylab, the
    same as plot().  (Reported by Marius Hofert.)
  * The help page for xtabs() now correctly states that addNA is
    setting na.action = na.pass among others.  (Reported as PR#17770
    by Thomas Soeiro.)
  * The R CMD check &lt;pkg&gt; gives a longer and more comprehensible
    message when DESCRIPTION misses dependencies, e.g., in Imports:.
    (Thanks to the contributors of PR#17179.)
  * update.default() now calls the generic update() on the formula to
    work correctly for models with extended formulas.  (As reported
    and suggested by Neal Fultz in PR#17865.)
  * The horizontal position of leaves in a dendrogram is now correct
    also with center = FALSE.  (PR#14938, patch from Sebastian
    Meyer.)
  * all.equal.POSIXt() no longer warns about and subsequently ignores
    inconsistent "tzone" attributes, but describes the difference in
    its return value (PR#17277).  This check can be disabled _via_
    the new argument check.tzone = FALSE as suggested by Sebastian
    Meyer.
  * as.POSIXct() now populates the "tzone" attribute from its tz
    argument when x is a logical vector consisting entirely of NA
    values.
  * x[[2^31]] &lt;- v now works.  (Thanks to the report and patch by
    Suharto Anggono in PR#17330.)
  * In log-scale graphics, axis() ticks and label positions are now
    computed more carefully and symmetrically in their range,
    typically providing _more_ ticks, fulfilling wishes in PR#17936.
    The change really corresponds to an improved axisTicks() (package
    grDevices), potentially influencing grid and lattice, for
    example.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now correct to at
    least five digits where it was catastrophically wrong,
    previously.
  * sum(df) and similar "Summary"- and "Math"-group member functions
    now work for data frames df with logical columns, notably also of
    zero rows.  (Reported to R-devel by Martin "b706".)
  * unsplit() had trouble with tibbles due to unsound use of rep(NA,
    len)-indexing, which should use NA_integer_ (Reported to R-devel
    by Mario Annau.)
  * pnorm(x, log.p = TRUE) underflows to -Inf slightly later.
  * show(&lt;hidden S4 generic&gt;) prints better and without quotes for
    non-hidden S4 generics.
  * read.table() and relatives treated an "NA" column name as missing
    when check.names = FALSE PR#18007.
  * Parsing strings containing UTF-16 surrogate pairs such as
    "\uD834\uDD1E" works better on some (uncommon) platforms.
    sprintf("%X", utf8ToInt("\uD834\uDD1E")) should now give "1D11E"
    on all platforms.
  * identical(x,y) is no longer true for differing DOTSXP objects,
    fixing PR#18032.
  * str() now works correctly for DOTSXP and related exotics, even
    when these are doomed.
    Additionally, it no longer fails for lists with a class and
    "irregular" method definitions such that e.g. lapply(*) will
    necessarily fail, as currently for different igraph objects.
  * Too long lines in environment files (e.g. Renviron) no longer
    crash R. This limit has been increased to 100,000 bytes.
    (PR#18001.)
  * There is a further workaround for FreeType giving incorrect
    italic font faces with cairo-based graphics devices on macOS.
  * add_datalist(*, force = TRUE) (from package tools) now actually
    updates an existing data/datalist file for new content.  (Thanks
    to a report and patch by Sebastian Meyer in PR#18048.)
  * cut.Date() and cut.POSIXt() could produce an empty last interval
    for breaks = "months" or breaks = "years".  (Reported as PR#18053
    by Christopher Carbone.)
  * Detection of the encoding of 'regular' macOS locales such as
    en_US (which is UTF-8) had been broken by a macOS change:
    fortunately these are now rarely used with en_US.UTF-8 being
    preferred.
  * sub() and gsub(pattern, repl, x, *) now keep attributes of x such
    as names() also when pattern is NA (PR#18079).
  * Time differences ("difftime" objects) get a replacement and a
    rep() method to keep "units" consistent.  (Thanks to a report and
    patch by Nicolas Bennett in PR#18066.)
  * The \RdOpts macro, setting defaults for \Sexpr options in an Rd
    file, had been ineffective since R 2.12.0: it now works again.
    (Thanks to a report and patch by Sebastian Meyer in PR#18073.)
  * mclapply and pvec no longer accidentally terminate parallel
    processes started before by mcparallel or related calls in
    package parallel (PR#18078).
  * grep and other functions for evaluating (extended) regular
    expressions handle in Unicode also strings not explicitly flagged
    UTF-8, but flagged native when running in UTF-8 locale.
  * Fixed a crash in fifo implementation on Windows (PR#18031).
  * Binary mode in fifo on Windows is now properly detected from
    argument open (PR#15600, PR#18031).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1622808000">- The line %{__install} -m 755 -d %{_infodir}
  no longer works in TW or Factory.
  But without that line it works everywhere. So this instruction
  was commented out of the spec file.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1628596800">- CHANGES IN R 4.1.1:
  NEW FEATURES:
  * require(pkg, quietly = TRUE) is quieter and in particular does
    not warn if the package is not found.
  DEPRECATED AND DEFUNCT:
  * Use of ftp:// URIs should be regarded as deprecated, with
    on-going support confined to method = "libcurl" and not routinely
    tested.  (Nowadays no major browser supports them.)
  * The non-default method = "internal" is deprecated for http:// and
    ftp:// URIs for both download.file and url.
  * On Windows, method = "wininet" is deprecated for http://,
    https:// and ftp:// URIs for both download.file and url.  (A
    warning is only given for ftp://.)
    For ftp:// URIs the default method is now "libcurl" if available
    (which it is on CRAN builds).
    method = "wininet" remains the default for http:// and https://
    URIs but if libcurl is available, using method = "libcurl" is
    preferred.
  INSTALLATION:
  * make check now works also without a LaTeX installation.  (Thanks
    to Sebastian Meyer's PR#18103.)
  BUG FIXES:
  * make check-devel works again in an R build configured with
  - -without-recommended-packages.
  * qnbinom(p, size, mu) for large size/mu is correct now in a range
    of cases (PR#18095); similarly for the (size, prob)
    parametrization of the negative binomial.  Also qpois() and
    qbinom() are better and or faster for extreme cases.  The
    underlying C code has been modularized and is common to all four
    cases of discrete distributions.
  * gap.axis is now part of the axis() arguments which are passed
    from bxp(), and hence boxplot().  (Thanks to Martin Smith's
    report and suggestions in PR#18109.)
  * .First and .Last can again be set from the site profile.
  * seq.int(from, to, *) and seq.default(..) now work better in large
    range cases where from-to is infinite where the two boundaries
    are finite.
  * all.equal(x,y) now returns TRUE correctly also when several
    entries of abs(x) and abs(y) are close to .Machine$double.xmax,
    the largest finite numeric.
  * model.frame() now clears the object bit when removing the class
    attribute of a value via na.action (PR#18100).
  * charClass() now works with multi-character strings on Windows
    (PR#18104, fixed by Bill Dunlap).
  * encodeString() on Solaris now works again in Latin-1 encoding on
    characters represented differently in UTF-8.  Support for
    surrogate pairs on Solaris has been improved.
  * file.show() on Windows now works with non-ASCII path names
    representable in the current native encoding (PR#18132).
  * Embedded R on Windows can now find R home directory via the
    registry even when installed only for the current user
    (PR#18135).
  * pretty(x) with finite x now returns finite values also in the
    case where the extreme x values are close in size to the maximal
    representable number .Machine$double.xmax.
    Also, it's been tweaked for very small ranges and when a boundary
    is close (or equal) to zero; e.g., pretty(c(0,1e-317)) no longer
    has negative numbers, currently still warning about a very small
    range, and pretty(2^-(1024 - 2^-1/(c(24,10)))) is more accurate.
  * The error message for not finding vignette files when weaving has
    correct file sizes now. (Thanks to Sebastian Meyer's PR#18154.)
  * dnbinom(20, &lt;large&gt;, 1) now correctly gives 0, and similar cases
    are more accurate with underflow precaution.  (Reported by Francisco Vera Alcivar in PR#18072.)</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635163200">- repaired https://bugzilla.suse.com/show_bug.cgi?id=1191380
  (rpmacros now go to rpmmacrodir)
- minor clean-ups in spec file</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635768000">- CHANGES IN R 4.1.2:
  C-LEVEL FACILITIES:
  * The workaround in headers R.h and Rmath.h (using namespace std;)
    for the Oracle Developer Studio compiler is no longer needed now
    C++11 is required so has been removed.  A couple more usages of
    log() (which should have been std::log()) with an int argument
    are reported on Solaris.
  * The undocumented limit of 4095 bytes on messages from the
    S-compatibility macros PROBLEM and MESSAGE is now documented and
    longer messages will be silently truncated rather than
    potentially causing segfaults.
  * If the R_NO_SEGV_HANDLER environment variable is non-empty, the
    signal handler for SEGV/ILL/BUS signals (which offers recovery
    user interface) is not set. This allows more reliable debugging
    of crashes that involve the console.
  DEPRECATED AND DEFUNCT:
  * The legacy S-compatibility macros PROBLEM, MESSAGE, ERROR, WARN,
    WARNING, RECOVER, ... are deprecated and will be hidden in R
    4.2.0. R's native interface of Rf_error and Rf_warning has long
    been preferred.
  BUG FIXES:
  * .mapply(F, dots, .) no longer segfaults when dots is not a list
    and uses match.fun(F) as always documented; reported by Andrew
    Simmons in PR#18164.
  * hist(&lt;Date&gt;, ...) and hist(&lt;POSIXt&gt;, ...)  no longer pass
    arguments for rect() (such as col and density) to axis().
    (Thanks to Sebastian Meyer's PR#18171.)
  * \Sexpr{ch} now preserves Encoding(ch). (Thanks to report and
    patch by Jeroen Ooms in PR#18152.)
  * Setting the RNG to "Marsaglia-Multicarry" e.g., by RNGkind(), now
    warns in more places, thanks to Andr'e Gillibert's report and
    patch in PR#18168.
  * gray(numeric(), alpha=1/2) no longer segfaults, fixing PR#18183,
    reported by Till Krenz.
  * Fixed dnbinom(x, size=&lt;very_small&gt;, .., log=TRUE) regression,
    reported by Martin Morgan.
  * as.Date.POSIXlt(x) now keeps names(x), thanks to Davis Vaughan's
    report and patch in PR#18188.
  * model.response() now strips an "AsIs" class typically, thanks to
    Duncan Murdoch's report and other discussants in PR#18190.
  * try() is considerably faster in case of an error and long call,
    as e.g., from some do.call().  Thanks to Alexander Kaever's
    suggestion posted to R-devel.
  * qqline(y = &lt;object&gt;) such as y=I(.), now works, see also
    PR#18190.
  * Non-integer mgp par() settings are now handled correctly in
    axis() and mtext(), thanks to Mikael Jagan and Duncan Murdoch's
    report and suggestion in PR#18194.
  * formatC(x) returns length zero character() now, rather than ""
    when x is of length zero, as documented, thanks to Davis
    Vaughan's post to R-devel.
  * removeSource(fn) now retains (other) attributes(fn).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1647000000">- CHANGES IN R 4.1.3:
  NEW FEATURES:
  * The default version of Bioconductor has been changed to 3.14.
    (This is used by setRepositories and the menus in GUIs.)
  UTILITIES:
  * R CMD check --as-cran has a workaround for a bug in versions of
    file up to at least 5.41 which mis-identify DBF files last
    changed in 2022 as executables.
  C-LEVEL FACILITIES:
  * The legacy S-compatibility macros SINGLE_* in R_ext/Constants.h
    (included by R.h) are deprecated and will be removed in R 4.2.0.
  BUG FIXES:
  * Initialization of self-starting nls() models with initialization
    functions following the pre-R-4.1.0 API (without the ...
    argument) works again for now, with a deprecation warning.
  * Fixed quoting of ~autodetect~ in Java setting defaults to avoid
    inadvertent user lookup due to leading ~, reported in PR#18231 by
    Harold Gutch.
  * substr(., start, stop) &lt;- v now treats _negative_ stop values
    correctly.  Reported with a patch in PR#18228 by Brodie Gaslam.
  * Subscripting an array x without dimnames by a
    length(dim(x))-column character matrix gave "random" non-sense,
    now an error; reported in PR#18244 by Mikael Jagan.
  * ...names() now matches names(list(...)) closely, fixing PR#18247.
  * all.equal(*, scale = s) now works as intended when length(s) &gt; 1,
    partly thanks to Michael Chirico's PR#18272.
  * print(x) for long vectors x now also works for named atomic
    vectors or lists and prints the correct number when reaching the
    getOption("max.print") limit; partly thanks to a report and
    proposal by Hugh Parsonage to the R-devel list.
  * all.equal(&lt;selfStart&gt;, *) no longer signals a deprecation
    warning.
  * reformulate(*, response=r) gives a helpful error message now when
    length(r) &gt; 1, thanks to Bill Dunlap's PR#18281.
  * Modifying globalCallingHandlers inside withCallingHandlers() now
    works or fails correctly, thanks to Henrik Bengtsson's PR#18257.
  * hist(&lt;Date&gt;, breaks = "days") and hist(&lt;POSIXt&gt;, breaks = "secs")
    no longer fail for inputs of length 1.
  * qbeta(.001, .9, .009) and similar cases now converge correctly
    thanks to Ben Bolker's report in PR#17746.
  * window(x, start, end) no longer wrongly signals "'start' cannot
    be after 'end'", fixing PR#17527 and PR#18291.
  * data() now checks that its (rarely used) list argument is a
    character vector - a couple of packages passed other types and
    gave incorrect results.
  * which() now checks its arr.ind argument is TRUE rather coercing
    to logical and taking the first element - which gave incorrect
    results in package code.
  * model.weights() and model.offset() more carefully extract their
    model components, thanks to Ben Bolker and Tim Taylor's R-devel
    post.
  * list.files(recursive = TRUE) now shows all broken symlinks
    (previously, some of them may have been omitted, PR#18296).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1650628800">- CHANGES IN R 4.2.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * The formula method of aggregate() now matches the generic in
    naming its first argument x (resolving PR#18299 by Thomas
    Soeiro).
    This means that calling aggregate() with a formula as a named
    first argument requires name formula in earlier versions of R and
    name x now, so portable code should not name the argument (code
    in many packages did).
  * Calling &amp;&amp; or || with either argument of length greater than one
    now gives a warning (which it is intended will become an error).
  * Calling if() or while() with a condition of length greater than
    one gives an error rather than a warning.  Consequently,
    environment variable _R_CHECK_LENGTH_1_CONDITION_ no longer has
    any effect.
  * Windows users should consult the WINDOWS section below for some
    profound changes including
  * Support for 32-bit builds has been dropped.
  * UTF-8 locales are used where available.
  * The default locations for the R installation and personal
    library folder have been changed.
    Thanks to Tomas Kalibera for months of work on the Windows port
    for this release.
  NEW FEATURES:
  * matrix(x, n, m) now warns in more cases where length(x) differs
    from n * m, as suggested by Abby Spurdle and Wolfgang Huber in
    Feb 2021 on the R-devel mailing list.
    This warning can be turned into an error by setting environment
    variable _R_CHECK_MATRIX_DATA_ to TRUE: R CMD check --as-cran
    does so unless it is already set.
  * Function file_test() in package utils gains tests for symlinks,
    readability and writability.
  * capabilities("libxml") is now false.
    The description of capabilities("http/ftp") now reflects that it
    refers to the default method, no longer the internal one.
  * simplify2array() gains an except argument for controlling the
    exceptions used by sapply().
  * Environment variables R_LIBS_USER and R_LIBS_SITE are both now
    set to the R system default if unset or empty, and can be set to
    NULL to indicate an empty list of user or site library
    directories.
  * The warning for axis()(-like) calls in cases of relatively small
    ranges (typically in log-scale situations) is slightly improved
    _and_ suppressed from explicit calls to .axisPars() as has always
    been the intention.
  * The contrasts setter function `contrasts&lt;-` gains an explicit
    default how.many = NULL rather than just using missing(how.many).
  * grid.pretty() gains a new optional argument n = 5.
  * There is a new function .pretty() with option bounds as a
    technical-utility version of pretty().  It and pretty() gain a
    new argument f.min with a better than back-compatible default.
  * Function grDevices::axisTicks() and related functions such as
    graphics::axis() work better, notably for the log scale; partly
    because of the pretty() improvements, but also because care is
    taken e.g., when ylim is finite but diff(ylim) is infinite.
  * nclass.FD() gains a digits option.
  * The R Mathlib internal C function bd0() (called indirectly from a
    dozen probability density and distribution functions such as
    dpois(), dbinom(), dgamma(), pgamma() _etc_) has been
    complemented by a more sophisticated and (mostly) more accurate C
    function ebd0(), currently called only by internal dpois_raw()
    improving accuracy for R level dpois() and potentially others
    calling it such as dnbinom(), dgamma() or pgamma().  (Thanks to
    Morten Welinder's PR#15628.)
  * write.ftable() gains sep = " " argument as suggested by Thomas
    Soeiro.
  * The names of the locale categories supported by R's
    Sys.getlocale() and Sys.setlocale() are now provided by variable
    .LC.categories in the base namespace.
  * The Date and POSIXt methods for hist() and the histogram method
    for plot() now also use the new default col = "lightgray" in
    consistency with the corresponding change to hist()'s default for
    R 4.0.0.
  * hist.default() gains new fuzz argument, and the histogram plot
    method no longer uses fractional axis ticks when displaying
    counts ("Frequency").
  * mapply() and hence Map() now also obey the "max-or-0-if-any"
    recycling rule, such that, e.g., Map(`+`, 1:3, 1[0]) is valid
    now.
  * as.character(&lt;obj&gt;) for "hexmode" or "octmode" objects now
    fulfils the important basic rule as.character(x)[j] ===
    as.character(x[j]).
  * The set utility functions, notably intersect() have been tweaked
    to be more consistent and symmetric in their two set arguments,
    also preserving a common mode.
  * substr(ch, start,end) &lt;- new now e.g., preserves names(ch); ditto
    for substring(), thanks to a patch from Brodie Gaslam.
  * plot(&lt;lm&gt;) gains a extend.ylim.f argument, in partial response to
    PR#15285; further PR#17784 is fixed thanks to several
    contributors and a patch by Elin Waring.  The Cook's dist
    contours get customizable via cook.col and cook.lty with a
    different default color and their legend is nicer by default and
    customizable via cook.legendChanges.
  * Attempting to subset an object that is not subsettable now
    signals an error of class notSubsettableError. The
    non-subsettable object is contained in the object field of the
    error condition.
  * Subscript-out-of-bounds errors are now signaled as errors of
    class subscriptOutOfBoundsError.
  * Stack-overflow errors are now signaled as errors inheriting from
    class stackOverflowError. See ?stackOverflowError for more
    details.
  * New partly experimental Sys.setLanguage() utility, solving the
    main problem of PR#18055.
  * gettext() and gettextf() get a new option trim = TRUE which when
    set to false allows translations for strings such as "Execution
    halted\n" typical for C code.
  * An experimental implementation of hash tables is now available.
    See ?hashtab for more details.
  * identical() gains a extptr.as.ref argument for requesting that
    external pointer objects be compared as reference objects.
  * reorder() gets an argument decreasing which it passes to sort()
    for level creation; based on the wish and patch by Thomas Soeiro
    in PR#18243.
  * as.vector() gains a data.frame method which returns a simple
    named list, also clearing a long standing 'FIXME' to enable
    as.vector(&lt;data.frame&gt;, mode="list").  This breaks code relying
    on as.vector(&lt;data.frame&gt;) to return the unchanged data frame.
  * legend() is now vectorized for arguments cex, x.intersp, and
    text.width.  The latter can now also be specified as a vector
    (one element for each column of the legend) or as NA for
    computing a proper column wise maximum value of strwidth(legend).
    The argument y.intersp can be specified as a vector with one
    entry for each row of the legend.
    legend() also gains new arguments title.cex and title.font.
    Thanks to Swetlana Herbrandt.
  * Deparsing no longer remaps attribute names dim, dimnames, levels,
    names and tsp to historical S-compatible names (which structure()
    maps back).
  * sample() and sample.int() have additional sanity checks on their
    size and n arguments.
    all.equal.numeric() gains a sanity check on its tolerance
    argument - calling all.equal(a, b, c) for three numeric vectors
    is a surprisingly common error.
    mean(na.rm =), rank(na.last =), barplot(legend.text =),
    boxplot(), contour(drawlabels =), polygon(border =) and
    methods::is(class2 =) have more robust sanity checks on their
    arguments.
    R CMD Rd2pdf (used by R CMD check) has a more robust sanity check
    on the format of \alias{} commands.
  * psigamma(x, deriv) for negative x now also works for deriv = 4
    and 5; their underlying C level dpsifn() is documented in
    'Writing R Extensions'.
  * The HTML help system now uses HTML5 (wish of PR#18149).
  * ks.test() now provides exact p-values also with ties and MC
    p-values in the two-sample (Smirnov) case.  By Torsten Hothorn.
  * ks.test() gains a formula interface, with y ~ 1 for the
    one-sample (Kolmogorov) test and y ~ group for the two-sample
    (Smirnov) test.  Contributed by Torsten Hothorn.
  * The return value from ks.test() now has class c("ks.test",
    "htest") - packages using try() need to take care to use
    inherits() and not == on the class.
  * New functions psmirnov(), qsmirnov() and rsmirnov() in package
    stats implementing the asymptotic and exact distributions of the
    two-sample Smirnov statistic.
  * iconv() now allows sub = "c99" to use C99-style escapes for UTF-8
    inputs which cannot be converted to encoding to.
  * In a forward pipe |&gt; expression it is now possible to use a named
    argument with the placeholder _ in the rhs call to specify where
    the lhs is to be inserted.  The placeholder can only appear once
    on the rhs.
  * The included LAPACK sources have been updated to version 3.10.0,
    except for the four Fortran 77 routines which 3.10.0 has
    re-implemented in Fortran 90 (where the older versions have been
    retained as the R build process does not support Fortran 90).
  * path.expand() and most other uses of tilde expansion now warn if
    a path would be too long if expanded.  (An exception is
    file.exists(), which silently returns false.)
  * trunc(&lt;Date&gt;, *) now supports units = "months" or "years" for
    consistency with the POSIXt method, thanks to Dirk Eddelbuettel's
    proposal in PR#18099.
  * list2DF() now checks that its arguments are of the same length,
    rather than use recycling.
  * The HTML help system has several new features: LaTeX-like math
    can be typeset using either KaTeX or MathJax, usage and example
    code is highlighted using Prism, and for dynamic help the output
    of examples and demos can be shown within the browser if the
    knitr package is installed. These features can be disabled by
    setting the environment variable _R_HELP_ENABLE_ENHANCED_HTML_ to
    a false value.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 15
    and so packages that provide graphics devices should be
    reinstalled.
  * The grid package now allows the user to specify a "vector" of
    pattern fills.  The fill argument to gpar() accepts a list of
    gradients and/or patterns and the functions linearGradient(),
    radialGradient(), and pattern() have a new group argument.
    Points grobs (data symbols) can now also have a pattern fill.
    The grobCoords() function now returns a more informative and
    complex result.
  * The grid package has new functions for drawing isolated groups:
    grid.group(), grid.define(), and grid.use().  These functions add
    compositing operators and affine transformations to R's graphics
    capabilities.
    The grid package also has new functions for stroking and filling
    paths: grid.stroke(), grid.fill(), and grid.fillStroke().
    A new function as.path() allows the user to specify the fill rule
    for a path that is to be used for clipping, stroking, or filling;
    available options are "winding" and "evenodd".  A new function
    as.mask() allows the user to specify the type of a mask;
    available options are "alpha" and "luminance".
    These new features are only supported so far (at most) on the
    Cairo-based graphics devices and on the pdf() device.
  * dev.capabilities() reports on device support for the new
    features.
  * par() now warns about unnamed non-character arguments to prevent
    misuse such as {usr &lt;- par("usr"); par(usr)}.
  INSTALLATION:
  * Facilities for accessing ftp:// sites are no longer tested
    (except _pro tem_ for curlGetHeaders()) as modern browsers have
    removed support.
  * R can now be built with DEFS = -DSTRICT_R_HEADERS .
  PACKAGE INSTALLATION:
  * R CMD INSTALL no longer tangles vignettes. This completes an R
    CMD build change in R 3.0.0 and affects packages built before R
    3.0.2. Such packages should be re-made with R CMD build to have
    the tangled R code of vignettes shipped with the tarball.
  * USE_FC_LEN_T will become the default: this uses the correct
    prototypes for Fortran BLAS/LAPACK routines called from C/C++,
    and requires adjustment of most such calls - see 'Writing R
    Extensions' SS6.6.2.  (This has been supported since R 3.6.2.)
  * Package installation speed for packages installed with
    keep.source has been improved. This resolve the issue reported by
    Ofek Shilon in PR#18236.
  UTILITIES:
  * R CMD check can optionally report files/directories left behind
    in home, /tmp (even though TMPDIR is set) and other directories.
    See the "R Internals" manual for details.
  * R CMD check now reports byte-compilation errors during
    installation.  These are not usually fatal but may result in
    parts of the package not being byte-compiled.
  * _R_CHECK_DEPENDS_ONLY_ can be applied selectively to examples,
    tests and/or vignettes in R CMD check: see the "R Internals"
    manual.
  * _R_CHECK_SRC_MINUS_W_IMPLICIT_ now defaults to true: recent
    versions of Apple clang on macOS have made implicit function
    declarations in C into a compilation error.
  * R CMD check --as-cran makes use of the environment variable
    AUTORECONF.  See the "R Internals" manual SS8 for further details.
  * R CMD check --use-valgrind also uses valgrind when re-building
    vignettes as some non-Sweave vignettes unhelpfully comment out
    all their code when R CMD check runs vignettes.
  * Errors in re-building vignettes (unless there are LaTeX errors)
    are reported by R CMD check as ERROR rather than WARNING when
    running vignettes has been skipped (as it frequently is in CRAN
    checks and by --as-cran).
  * R CMD Rd2pdf gains a --quiet option that is used by R CMD build
    when building the PDF package manual.
  * R CMD Rd2pdf now always runs LaTeX in batch mode, consistent with
    Texinfo &gt;= 6.7. The --batch option is ignored.
  * R CMD build and R CMD check now include the Rd file name and line
    numbers in the error message of an \Sexpr evaluation failure.
  * For packages using the \doi Rd macro (now an install-time \Sexpr)
    but no other dynamic Rd content, R CMD build now produces a
    smaller tarball and is considerably faster - skipping temporary
    package installation.
  C-LEVEL FACILITIES:
  * The non-API header R_ext/R-ftp-http.h is no longer provided, as
    the entry points it covered are now all defunct.
  * A number of non-API declarations and macro definitions have been
    moved from the installed header Rinternals.h to the internal
    header Defn.h. Packages that only use entry points and
    definitions documented to be part of the API as specified in
    'Writing R Extensions' SS6 should not be affected.
  * The macro USE_RINTERNALS no longer has any effect when compiling
    package code.  Packages which also use R_NO_REMAP will need to
    ensure that the remapped names are used for calls to API
    functions that were formerly also made available as macros.
  * The deprecated legacy S-compatibility macros PROBLEM, MESSAGE,
    ERROR, WARN, WARNING, RECOVER, ... are no longer defined in
    R_exts/RS.h (included by R.h).  Replace these by calls to
    Rf_error and Rf_warning (defined in header R_ext/Error.h included
    by R.h).
    Header R_ext/RS.h no longer includes R_ext/Error.h.
  * Header R_ext/Constants.h (included by R.h) when included from C++
    now includes the C++ header cfloat rather than the C header
    float.h (now possible as C++11 is required).
  * The legacy S-compatibility macros DOUBLE_* in R_ext/Constants.h
    (included by R.h) are deprecated.
  * The deprecated S-compatibility macros SINGLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * R_Calloc, R_Free and R_Realloc are preferred to their unprefixed
    forms and error messages now use the prefix. These forms were
    introduced in R 3.4.0 and are available even when
    STRICT_R_HEADERS is defined.
  * rmultinom has been documented in 'Writing R Extensions' SS6 so is
    now part of the R API.
  * Similarly, Rtanpi, called from R level tanpi() is now part of the
    R API.
  * The long-deprecated, undocumented and non-API entry point call_R
    is no longer declared in R_ext/RS.h (included by R.h).
  * The header S.h which has been unsupported since Jan 2016 has been
    removed.  Use R.h instead.
  DEPRECATED AND DEFUNCT:
  * The (non-default and deprecated) method = "internal" for
    download.file() and url() no longer supports http:// nor ftp://
    URIs.  (It is used only for file:// URIs.)
    On Windows, download.file(method = "wininet") no longer supports
    ftp:// URIs.  (It is no longer the default method, which is
    "libcurl" and does.)
    On Windows, the deprecated method = "wininet" now gives a warning
    for http:// and https:// URIs for both download.file() and url().
    (It is no longer the default method.)
  * On Windows, the command-line option --max-mem-size and
    environment variable R_MAX_MEM_SIZE are defunct.  The memory
    allocation limit was important for 32-bit builds, but these are
    no longer supported.
  * default.stringsAsFactors() is now formally deprecated, where that
    was only mentioned on its regular help page, previously.  So it
    now gives a warning if called.
  * unix.time() is defunct now; it had been deprecated since R 3.4.0.
  BUG FIXES:
  * Setting digits = 0 in format(), print.default() (and hence
    typically print()) or options() is again invalid.  Its behaviour
    was platform-dependent, and it is unclear what "zero significant
    digits" should mean (PR#18098).
  * Messages from C code in the cairo section of package grDevices
    are now also offered for translation, thanks to Michael Chirico's
    PR#18123.
  * mean(x) with finite x now is finite also without "long.double"
    capability.
  * R CMD Rd2pdf no longer leaves an empty build directory behind
    when it aborts due to an already existing output file.  (Thanks
    to Sebastian Meyer's PR#18141.)
  * density(x, weights = w, na.rm = TRUE) when anyNA(x) is true, now
    removes weights "in parallel" to x, fixing PR#18151, reported by
    Matthias Gondan.  Additionally, it gets a subdensity option.
  * Conversion of \Sexpr[]{&lt;expR&gt;} to LaTeX or HTML no longer
    produces long blocks of empty lines when &lt;expR&gt; itself contains
    several lines all producing empty output.  Thanks to a report and
    patch by Ivan Krylov posted to R-devel.
  * R CMD build no longer fails if a package vignette uses child
    documents and inst/doc exists.  (Thanks to Sebastian Meyer's
    PR#18156.)
  * When an R documentation ('help' source) file man/foo.Rd in a
    package has \donttest{..} examples with a syntax error, it is now
    signalled as ERROR and with correct line numbers relating to the
  * -Ex.R file, thanks to Duncan Murdoch and Sebastian Meyer's
    reports and patch proposals in PR#17501.
  * Improved determination of the correct translation domain in
    non-base packages, addressing the combination of PR#18092 and
    PR#17998 (#c6) with reports and _augmented_ patch #2904 by
    Suharto Anggono.
    Note that "R-base" is no longer the default domain e.g., for
    top-level calls to gettext(); rather translation needs explicit
    domain = * specification in such cases.
  * identical(attrib.as.set=FALSE) now works correctly with data
    frames with default row names (Thanks to Charlie Gao's PR#18179).
  * txtProgressBar() now enforces a non-zero width for argument char,
    without which no progress can be visible.
  * dimnames(table(d)) is more consistent in the case where d is a
    list with a single component, thanks to Thomas Soeiro's report to
    R-devel.
    Further, table(d1, d2) now gives an error when d1 and d2 are data
    frames as suggested by Thomas in PR#18224.
  * Fix for drawing semi-transparent lines and fills on the native
    Windows graphics device (PR#18219 and PR#16694).  Thanks to Nick
    Ray for helpful diagnosis on Bugzilla.
  * The deparser now wraps sub-expressions such as if(A) ..  with
    parentheses when needed; thanks to Duncan Murdoch's PR#18232 and
    Lionel Henry's patches there.
  * remove.packages() no longer tries to uninstall Priority: base
    packages, thanks to a report and suggestions by Colin Fay in
    PR#18227.
  * win.metafile() now has xpinch and ypinch arguments so that the
    user can override Windows' (potentially wrong) guess at device
    dimensions.
  * x[i] and x[[i]] for non-integer i should now behave in all cases
    as always documented: the index used is equivalent to
    as.integer(i) unless that would overflow where trunc(i) is used
    instead; thanks to Suharto Anggono's report and patch proposals
    in PR#17977.
  * asOneSidedFormula() now associates the resulting formula with the
    global environment rather than the evaluation environment created
    for the call.
  * &lt;bibentry&gt;$name now matches the field name case-insensitively,
    consistent with bibentry() creation and the replacement method.
  * cbind() failed to detect some length mismatches with a mixture of
    time-series and non-time-series inputs.
  * The default LaTeX style file Sweave.sty used by the RweaveLatex
    driver no longer loads the obsolete ae package; thanks to a
    report by Thomas Soeiro in PR#18271.  Furthermore, it now skips
    \usepackage[T1]{fontenc} for engines other than pdfTeX (if
    detected) or if the new [nofontenc] option is used.
  * smooth.spline() now stores its logical cv argument more safely,
    fixing a rare bug when printing, and also stores n.
  * smooth.spline(x,y,*) now computes the cv.crit statistic
    correctly, also when is.unsorted(x), fixing PR#18294.
  * The data.frame method of rbind() now warns when binding
    not-wholly-recycling vectors, by analogy to the default method
    (for matrices).
  * setAs() finds the correct class for name to when multiple
    packages define a class with that name. Thanks to Gabor Csardi
    for the report.
  * Fix for detaching a package when two classes of the same name are
    present in method signatures for the same generic. Thanks to
    Gabor Csardi for the report.
  * match.arg("", c("", "a", "B")) gives a better error message, in
    part from PR#17959, thanks to Elin Waring.
  * R CMD Sweave --clean no longer removes pre-existing files or
    subdirectories (PR#18242).
  * The quartz() device no longer splits polylines into subpaths.
    That has caused narrowly-spaced lines with many points to always
    look solid even when dashed line type was used due to dash phase
    restarts.
  * Deparsing constructs such as quote(1 + `!`(2) + 3) works again as
    before R 3.5.0, thanks to the report and patch in PR#18284 by
    Suharto Anggono.
  * as.list(f) for a factor f now keeps names(f), fixing PR#18309.
  * qbeta(.001, .9, .009) and analogous qf() calls now return a
    correct value instead of NaN or wrongly 1, all with a warning;
    thanks to the report by Ludger Goeminne in PR#18302.
  * plot.lm() failed to produce the plot of residuals vs.  factor
    levels (i.e., which=5 when leverages are constant) for models
    with character predictors (PR#17840).
  * interaction.plot(..., xtick = TRUE) misplaced the x-axis line
    (PR#18305).
  * Not strictly fixing a bug, format()ing and print()ing of
    non-finite Date and POSIXt values NaN and +/-Inf no longer show
    as NA but the respective string, e.g., Inf, for consistency with
    numeric vector's behaviour, fulfilling the wish of PR#18308.
  * R CMD check no longer runs test scripts generated from
    corresponding .Rin files twice and now signals an ERROR if
    processing an .Rin script fails.
  * tools::Rd2txt() used for plain-text help pages now renders \hrefs
    (if tools::Rd2txt_options(showURLs = TRUE)) and \urls with
    percent-encoding and standards-compliant delimiting style (angle
    brackets and no URL: prefix).  \email is now rendered with a
    mailto: prefix.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1655985600">- CHANGES IN R 4.2.1:
  NEW FEATURES:
  * New function utils::findCRANmirror() to find out if a CRAN mirror
    has been selected, otherwise fallback to the main site.  This
    behaves in the same way as tools::CRAN_package_db() and is
    intended for packages wishing to access CRAN for purposes other
    than installing packages.
    The need for this was shown by a day when the main CRAN website
    was offline and a dozen or so packages which had its URL
    hardcoded failed their checks.
  INSTALLATION on a UNIX-ALIKE:
  * The libraries searched for by --with-blas (without a value) now
    include BLIS (after OpenBLAS but before ATLAS).  And on macOS,
    the Accelerate framework (after ATLAS).  (This is patterned after
    the AX_BLAS macro from the Autoconf Archive.)
  * The included LAPACK sources have been updated to 3.10.1.
  UTILITIES:
  * The (full path to) the command tidy to be used for HTML
    validation can be set by environment variable R_TIDYCMD.
  * Setting environment variable _R_CHECK_RD_VALIDATE_RD2HTML_ to a
    false value will override R CMD check --as-cran and turn off HTML
    validation.  This provides a way to circumvent a problematic
    tidy.
    The 2006 version that ships with macOS is always skipped.
  C-LEVEL FACILITIES:
  * The undocumented legacy declarations of Sint, Sfloat, SINT_MAX
    and SINT_MIN in header R.h are deprecated.
  BUG FIXES:
  * fisher.test(d) no longer segfaults for "large" d; fixing PR#18336
    by preventing/detecting an integer overflow reliably.
  * tar(., files=*) now produces correctly the warning about invalid
    uid or gid of files, fixing PR#18344, reported by Martin Morgan.
  * tk_choose.files() with multi = FALSE misbehaved on paths
    containing spaces (PR#18334) (regression introduced in R 4.0.0).
  * sort(x, partial = ind, *) now works correctly notably for the
    non-default na.last = FALSE or TRUE, fixing PR#18335 reported by
    James Edwards.
  * Environment variable _R_CHECK_XREFS_REPOSITORIES_ is only used
    for checking .Rd cross-references in R CMD check (as documented)
    and not for other uses looking for a CRAN mirror.
  * The search for a CRAN mirror when checking packages now uses
    getOption("repos") if that specifies a CRAN mirror, even when it
    does not also specify all three Bioconductor repositories (as was
    previously required).
  * The HTML code generated by tools::Rd2HTML() has been improved to
    pass tidy 5.8.0.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1667217600">- CHANGES IN R 4.2.2:
  NEW FEATURES:
  * tools::Rdiff(useDiff = TRUE) checks for the presence of an
    external diff command and switches to useDiff = FALSE if none is
    found.  This allows R CMD Rdiff to always work.
  * On Windows, environment variable R_LIBCURL_SSL_REVOKE_BEST_EFFORT
    can be used to switch to only 'best-effort' SSL certificate
    revocation checks with the default "libcurl" download method.
    This reduces security, but may be needed for downloads to work
    with MITM proxies (PR#18379).
  * (macOS) The run-time check for libraries from XQuartz for X11 and
    Tcl/Tk no longer uses otool from the Apple Developer Tools
    (PR#18400).
  * The LaTeX style for producing the PDF manuals, Rd.sty, now loads
    the standard amsmath, amsfonts and amssymb packages for greater
    coverage of math commands in the Rd \eqn and \deqn macros.  The
    \mathscr LaTeX command is also provided (via the mathrsfs
    package, if available, or the amsfonts bundle otherwise),
    fulfilling the wish of PR#18398.
  * (Windows) The default format of readClipboard() and
    writeClipboard() has been changed to 13 (CF_UNICODETEXT).
  INSTALLATION on a UNIX-ALIKE:
  * The PDF manuals (if built) can be compacted by the new target
    make compact-pdf (at the top level or in directory doc/manual).
  * There is now configure support for LLVM clang 15 on Linux, which
    defaults to position-independent (PIE) executables whereas
    gfortran does not.
  * Many small changes to ease compilation (and suppress warnings)
    with LLVM clang 15.
  BUG FIXES:
  * Rscript -e would fail if stdin were closed (Reported by Henrik
    Bengtsson.)
  * qt(*, log.p=TRUE) in outer tails no longer produces NaN in its
    final steps, thus fixing PR#18360.
  * tools::Rd2latex() now escapes hashes and ampersands when writing
    URLs, fixing LaTeX errors with such URLs in \tabular.
  * When isGeneric(f, fdef=*) is used with mismatching names, the
    warning is better understandable; reported (with fix) in PR#18370
    by Gabe Becker.
  * poly(x, n) now works again (and is now documented) when x is a
    "Date" or "POSIXct" object, or of another class while fulfilling
    mode(x) == "numeric".  This also enables poly(x, *, raw=TRUE) for
    such variables.  Reported by Michael Chirico to R-devel.
  * write.table(), write.csv() and write.csv2() restore their
    numerical precision (internal equivalent of digits = 15) after an
    interrupt (PR#18384).
  * One can now read also byte FF from a clipboard connection
    (PR#18385).
  * source("") and source(character()) now give more helpful error
    messages.
  * R CMD check --as-cran set _R_CHECK_TIMINGS_ too late to have the
    intended effect.
  * as.POSIXlt(x) now also works with very large dates x, fixing
    PR#18401 reported by Hannes M"uhleisen.
  * Files can now be extracted even from very large zip archives
    (PR#18390, thanks to Martin Jakt).
  * Non-finite objects of class "POSIXlt" are now correctly coerced
    to classes "Date" and "POSIXct"; following up on the extension to
    format() them correctly.
  * Added methods for is.finite(), is.infinite() and is.nan() for
    "POSIXlt" date-time objects.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1678881600">- CHANGES IN R 4.2.3:
  C-LEVEL FACILITIES:
  * The definition of DL_FUNC in R_ext/Rdynload.h has been changed to
    be fully C-compliant.  This means that functions loaded _via_ for
    example R_GetCCallable need to be cast to an appropriate type if
    they have any arguments.
  * .Machine has a new element sizeof.time_t to identify old systems
    with a 32-bit type and hence a limited range of date-times (and
    limited support for dates millions of years from present).
  PACKAGE INSTALLATION:
  * (Windows) The default C++ standard had accidentally been left at
    C++11 when it was changed to C++14 on Unix.
  BUG FIXES:
  * As "POSIXlt" objects may be "partially filled" and their list
    components meant to be recycled, length() now is the length of
    the longest component.
  * as.POSIXlt.Date() could underflow for dates in the far past (more
    than half a million years BCE).
  * as.Date.POSIXlt(x) would return "1970-01-01" instead of NA in R
    4.2.2, e.g., for
    x &lt;- as.POSIXlt(c("2019-01-30","2001-1-1"))
    x$mon &lt;- c(0L, NA); as.Date(x)
  * R CMD check failed to apply enabled _R_CHECK_SUGGESTS_ONLY_ to
    examples and vignettes (regression in R 4.2.0).
  * R CMD check did not re-build vignettes in separate processes by
    default (regression in R 4.2.0).
  * Running examples from HTML documentation now restores previous
    knitr settings and options (PR#18420).
  * Quartz: fonts are now located using Core Graphics API instead of
    deprecated ATS which is no longer supported in the macOS 13 SDK
    (PR#18426).  This also addresses an issue where the currently
    used font in the Quartz device context was not correctly
    retained.
  * (Windows) Math symbols in text drawing functions are again
    rendered correctly (PR#18440).  This fixes a regression in R
    4.2.1 caused by a fix in PR#18382 which uncovered an issue in
    GraphApp due to which the symbol charset was not used with TT
    Symbol font face.
  * (Windows) Installing a package with a src/Makefile.{win,ucrt}
    file includes ~/.R/Makevars.win64 in the search for user
    makevars, as documented in "R Installation and Administration"
    and done for packages with a src/Makevars.{win,ucrt} file.
  * format(&lt;POSIXlt_w/_unbalanced_sec&gt;, "....%OS&lt;n&gt;") with n &gt; 0 no
    longer accidentally uses the unbalanced seconds, thanks to
    Suharto Anggono's report (including patch) in PR#18448.
  * solve.default(a, b) works around issues with some versions of
    LAPACK when a contains NA or NaN values.
  * When UseMethod() cannot dispatch, it no longer segfaults
    producing the error message in case of a long class(), thanks to
    Joris Vankerschaver's report (including patch) in PR#18447.
  * When example(foo, ..) produces graphics on an interactive device
    it needs to open itself, it now leaves devAskNewPage() unchanged
    even when it was FALSE, thus fixing a 14 years old '&lt;FIXME&gt;'.
  * packageDescription() again catches errors from encoding
    conversions. This also fixes broken packageVersion() in C locale
    on systems where iconv does not support transliteration.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1681128000">- add patch to build with libcurl &gt;= 8</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1682078400">- CHANGES IN R 4.3.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Calling &amp;&amp; or || with LHS or (if evaluated) RHS of length greater
    than one is now always an error, with a report of the form
    'length = 4' in coercion to 'logical(1)'
    Environment variable _R_CHECK_LENGTH_1_LOGIC2_ no longer has any
    effect.
  NEW FEATURES:
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.10.1.  (This caused some platform-dependent
    changes to package check output.)  And then to the sources from
    LAPACK version 3.11.0 (with changes only to double complex
    subroutines).
  * The included LAPACK sources have been updated to include the four
    Fortran 90 routines rather than their Fortran 77 predecessors.
    This may give some different signs in SVDs or
    eigendecompositions..  (This completes the transition to LAPACK
    3.10.x begun in R 4.2.0.)
  * The LAPACK sources have been updated to version 3.11.0.  (No new
    subroutines have been added, so this almost entirely bug fixes:
    Those fixes do affect some computations with NaNs, including R's
    NA.)
  * The parser now signals _classed_ errors, notably in case of the
    pipe operator |&gt;.  The error object and message now give line and
    column numbers, mostly as proposed and provided by Duncan Murdoch
    in PR#18328.
  * toeplitz() is now generalized for asymmetric cases, with a
    toeplitz2() variant.
  * xy.coords() and xyz.coords() and consequently, e.g., plot(x,y,
    log = "y") now signal a _classed_ warning about negative values
    of y (where log(.) is NA).  Such a warning can be specifically
    suppressed or caught otherwise.
  * Regular expression functions now check more thoroughly whether
    their inputs are valid strings (in their encoding, e.g. in
    UTF-8).
  * The performance of grep(), sub(), gsub() and strsplit() has been
    improved, particularly with perl = TRUE and fixed = TRUE.  Use of
    useBytes = TRUE for performance reasons should no longer be
    needed and is discouraged: it may lead to incorrect results.
  * apropos() gains an argument dot_internals which is used by the
    completion (help(rcompgen)) engine to also see base internals
    such as .POSIXct().
  * Support in tools::Rdiff() for comparing uncompressed PDF files is
    further reduced - see its help page.
  * qqplot(x, y, ...) gains conf.level and conf.args arguments for
    computing and plotting a confidence band for the treatment
    function transforming the distribution of x into the distribution
    of y (Switzer, 1976, _Biometrika_). Contributed by Torsten
    Hothorn.
  * Performance of package_dependencies() has been improved for cases
    when the number of dependencies is large.
  * Strings newly created by gsub(), sub() and strsplit(), when any
    of the inputs is marked as "bytes", are also marked as "bytes".
    This reduces the risk of creating invalid strings and accidental
    substitution of bytes deemed invalid.
  * Support for readLines(encoding = "bytes") has been added to allow
    processing special text files byte-by-byte, without creating
    invalid strings.
  * iconv(from = "") now takes into account any declared encoding of
    the input elements and uses it in preference to the native
    encoding.  This reduces the risk of accidental creation of
    invalid strings, particularly when different elements of the
    input have different encoding (including "bytes").
  * Package repositories in getOption("repos") are now initialized
    from the repositories file when utils is loaded (if not already
    set, e.g., in .Rprofile).  (From a report and patch proposal by
    Gabriel Becker in PR#18405.)
  * compactPDF() gets a verbose option.
  * type.convert() and hence read.table() get new option tryLogical =
    TRUE with back compatible default.  When set to false, converts
    "F" or "T" columns to character.
  * Added new unit prefixes "R" and "Q" for abbreviating
    (unrealistically large) sizes beyond 10^{27} in standard = "SI",
    thanks to Henrik Bengtsson's PR#18435.
  * as.data.frame()'s default method now also works fine with atomic
    objects inheriting from classes such as "roman", "octmode" and
    "hexmode", such fulfilling the wish of PR#18421, by Benjamin
    Feakins.
  * The as.data.frame.vector() utility now errors for wrong-length
    row.names.  It warned for almost six years, with "Will be an
    error!".
  * sessionInfo() now also contains La_version() and reports codepage
    and timezone when relevant, in both print() and toLatex() methods
    which also get new option tzone for displaying timezone
    information when locale = FALSE.
  * New function R_compiled_by() reports the C and Fortran compilers
    used to build R, if known.
  * predict(&lt;lm&gt;, newdata = *) no longer unnecessarily creates an
    offset of all 0s.
  * solve() for complex inputs now uses argument tol and by default
    checks for 'computational singularity' (as it long has done for
    numeric inputs).
  * predict(&lt;rank-deficient lm&gt;, newdata=*) now obeys a new argument
    rankdeficient, with new default "warnif", warning only if there
    are non-estimable cases in newdata.  Other options include
    rankdeficient = "NA", predicting NA for non-estimable newdata
    cases.  This addresses PR#15072 by Russ Lenth and is based on his
    original proposal and discussions in PR#16158 also by David Firth
    and Elin Waring.  Still somewhat experimental.
  * Rgui console implementation now works better with the NVDA screen
    reader when the full blinking cursor is selected.  The underlying
    improvements in cursor handling may help also other screen
    readers on Windows.
  * The drop-field control in GraphApp can now be left with the TAB
    key and all controls can be navigated in the reverse order using
    the Shift+TAB key, improving accessibility of the Rgui
    configuration editor.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now fully accurate
    (instead of to "only" minimally five digits).
  * demo(error.catching) now also shows off withWarnings() and
    tryCatchWEMs().
  * As an experimental feature the placeholder _ can now also be used
    in the rhs of a forward pipe |&gt; expression as the first argument
    in an extraction call, such as _$coef. More generally, it can be
    used as the head of a chain of extractions, such as _$coef[[2]].
  * Spaces in the environment variable used to choose the R session's
    temporary directory (TMPDIR, TMP and TEMP are tried in turn) are
    now fatal.  (On Windows the 'short path' version of the path is
    tried and used if that does not contain a space.)
  * all.equal.numeric() gets a new optional switch giveErr to return
    the numeric error as attribute.  Relatedly,
    stopifnot(all.equal&lt;some&gt;(a, b, ..)) is as "smart" now, as
    stopifnot(all.equal(....)) has been already, thus allowing
    customized all.equal&lt;Some&gt;() wrappers.
  * R on Windows is now able to work with path names longer than 260
    characters when these are enabled in the system (requires at
    least Windows 10 version 1607).  Packages should be updated to
    work with long paths as well, instead of assuming PATH_MAX to be
    the maximum length.  Custom front-ends and applications embedding
    R need to update their manifests if they wish to allow this
    feature.  See
    &lt;https://blog.r-project.org/2023/03/07/path-length-limit-on-windows&gt;
    for more information.
  * 'Object not found' and 'Missing argument' errors now give a more
    accurate error context. Patch provided by Lionel Henry in
    PR#18241.
  * The @ operator is now an S3 generic. Based on contributions by
    Tomasz Kalinowski in PR#18482.
  * New generic chooseOpsMethod() provides a mechanism for objects to
    resolve cases where two suitable methods are found for an Ops
    Group Generic. This supports experimenting with alternative
    object systems. Based on contributions by Tomasz Kalinowski in
    PR#18484.
  * inherits(x, what) now accepts values other than a simple
    character vector for argument what. A new generic, nameOfClass(),
    is called to resolve the class name from what. This supports
    experimenting with alternative object systems. Based on
    contributions by Tomasz Kalinowski in PR#18485.
  * Detection of BLAS/LAPACK in use (sessionInfo()) with FlexiBLAS
    now reports the current backend.
  * The "data.frame" method for subset() now warns about extraneous
    arguments, typically catching the use of = instead of == in the
    subset expression.
  * Calling a:b when numeric a or b is longer than one may now be
    made into an error by setting environment variable
    _R_CHECK_LENGTH_COLON_ to a true value, along the proposal in
    PR#18419 by Henrik Bengtsson.
  * density(x, weights = *) now warns if automatic bandwidth
    selection happens without using weights; new optional warnWbw may
    suppress the warning.  Prompted by Christoph Dalitz' PR#18490 and
    its discussants.
  * rm(list = *) is faster and more readable thanks to Kevin Ushey's
    PR#18492.
  * The plot.lm() function no longer produces a normal Q-Q plot for
    GLMs. Instead it plots a half-normal Q-Q plot of the absolute
    value of the standardized deviance residuals.
  * The print() method for class "summary.glm" no longer shows
    summary statistics for the deviance residuals by default.  Its
    optional argument show.residuals can be used to show them if
    required.
  * The tapply() function now accepts a data frame as its X argument,
    and allows INDEX to be a formula in that case. by.data.frame()
    similarly allows INDICES to be a formula.
  * The performance of df[j] &lt;- value (including for missing j) and
    write.table(df) has been improved for data frames df with a large
    number of columns.  (Thanks to Gabriel Becker's PR#18500,
    PR#18503 and discussants, prompted by a report from Toby Dylan
    Hocking on the R-devel mailing list.)
  * The matrix multiply operator %*% is now an S3 generic, belonging
    to new group generic matrixOps.  From Tomasz Kalinowski's
    contribution in PR#18483.
  * New function array2DF() to convert arrays to data frames,
    particularly useful for the list arrays created by tapply().
  DATES and TIMES:
  * On platforms where (non-UTC) datetimes before 1902 (or before
    1900 as with system functions on recent macOS) are guessed by
    extrapolating time zones from 1902-2037, there is a warning at
    the first use of extrapolation in a session.  (As all time zones
    post 2037 are extrapolation, we do not warn on those.)
  * (Platforms using --with-internal-tzone, including Windows and by
    default macOS). How years are printed in dates or date-times can
    be controlled by environment variable R_PAD_YEARS_BY_ZERO.  The
    default remains to pad to 4 digits by zeroes, but setting value
    no gives no padding (as used by default by glibc).
  * strftime() tries harder to determine the offset for the "%z"
    format, and succeeds on the mainstream R platforms.
  * strftime() has a limit of 2048 bytes on the string produced -
    attempting to exceed this is an error.  (Previously it silently
    truncated at 255 bytes.)
  * sessionInfo() records (and by default prints) the system time
    zone as part of the locale information.  Also, the source
    (system/internal) of the date-time conversion and printing
    functions.
  * Objects of class "POSIXlt" created in this version of R always
    have 11 components: component zone is always set, and component
    gmtoff is set for times in UTC and usually set on the (almost
    all) platforms which have C-level support, otherwise is NA.
  * There are comprehensive validity checks on the structure of
    objects of class "POSIXlt" when converting (including formatting
    and printing).  (This avoids mis-conversions of hand-crafted
    objects.)
  * There is some support for using the native date-time routines on
    macOS: this is only viable on recent versions (e.g. 12.6 and 13)
    and does get wrong some historical changes (before 1900, during
    WWII).  Use of --with-internal-tzone remains the default.
  * as.POSIXct(&lt;numeric&gt;) and as.POSIXlt(.) (without specifying
    origin) now work.  So does as.Date(&lt;numeric&gt;).
  * as.Date.POSIXct(., tz) now treats several tz values, notably
    "GMT" as equivalent to "UTC", proposed and improved by Michael
    Chirico and Joshua Ulrich in PR#17674.
  * Experimental balancePOSIXlt() utility allows using "ragged" and
    or out-of-range "POSIXlt" objects more correctly, e.g., in
    subsetting and subassignments.  Such objects are now documented.
    More experimentally, a "POSIXlt" object may have an attribute
    "balanced" indicating if it is known to be filled or fully
    balanced.
  * Functions axis.Date() and axis.POSIXct() are rewritten to gain
    better default tick locations and better default formats by using
    prettyDate(). Thanks to Swetlana Herbrandt.
  * The mapping of Windows' names for time zones to IANA's 'Olson'
    names has been updated.  When ICU is available (it is by
    default), it is used to get a mapping for the current region set
    in Windows.  This can be overridden by setting environment
    variable TZ to the desired Olson name - see OlsonNames() for
    those currently available.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 16
    and so packages that provide graphics devices should be
    reinstalled.
  * The grDevices and grid packages have new functions for rendering
    typeset glyphs, primarily: grDevices::glyphInfo() and
    grid::grid.glyph().
    Rendering of typeset glyphs is only supported so far on the
    Cairo-based graphics devices and on the pdf() and quartz()
    devices.
  * The defined behaviour for "clear" and "source" compositing
    operators (via grid::grid.group()) has been changed (to align
    better with simple interpretation of original Porter-Duff
    definitions).
  * Support for gradients, patterns, clipping paths, masks, groups,
    compositing operators, and affine transformations has been added
    to the quartz() device.
  INSTALLATION on a UNIX-ALIKE:
  * A system installation of generic LAPACK 3.10.0 or later will be
    preferred to the version in the R sources.
    configure option --with-lapack=no (equivalently --without-lapack)
    forces compilation of the internal LAPACK sources.
    If --with-lapack is not specified, a system liblapack is looked
    for and used if it reports version 3.10.0 or later and does not
    contain BLAS routines.
    Packages using LAPACK will need to be reinstalled if this changes
    to using an external library.
  * On aarch64 Linux platforms using GCC, configure now defaults to
  - fPIC (instead of -fpic), as desired in PR#18326.
  * configure now checks conversion of datetimes between POSIXlt and
    POSIXct around year 2020.  Failure (which has been seen on
    platforms missing tzdata) is fatal.
  * If configure option --with-valgrind-instrumentation is given
    value 1 or 2, option --with-system-valgrind-headers is now the
    default and ignored (with a warning).  It is highly recommended
    that the system headers are installed alongside valgrind: they
    are part of its packaging on some Linux distributions and
    packaged separately (e.g. in the valgrind-devel RPM) on others.
    configure will give a warning if they are not found.
    The system headers will be required in a future release of R to
    build with valgrind instrumentation.
  * libcurl 8.x is now accepted by configure: despite a change in
    major version number it changes neither API nor ABI.
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools43, an update of the Rtools42 toolchain.  It is
    based on gcc 12 and newer versions of MinGW-W64, binutils and
    libraries.  At this time R-devel can still be built using
    Rtools42 without changes, but when R-devel is installed via the
    installer, it will by default look for Rtools43.
  * Old make targets rsync-extsoft and 32-bit ones that are no longer
    needed have been removed.
  * Default builds (including for packages) no longer select C99.
    Thus the C standard used is the default for the compiler, which
    for the toolchain in Rtools43 is C17.  (This is consistent with
    Unix builds.)
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++17 where
    available (which it is on all currently checked platforms): if
    not C++14 or C++11 is used if available otherwise C++ is not
    supported.
  * USE_FC_LEN_T is the default: this uses the correct
    (compiler-dependent) prototypes for Fortran BLAS/LAPACK routines
    called from C/C++, and requires adjustment of many such calls -
    see 'Writing R Extensions' SS6.6.1.
  * There is initial support for C++23 as several compilers are now
    supporting -std=c++23 or -std=c++2b or similar.  As for C++20,
    there no additional configure checks for C++23 features beyond a
    check that the compiler reports a __cplusplus value greater than
    that in the C++20 standard.  C++ feature tests should be used.
  * There is support for a package to indicate the version of the C
    standard which should be used to compile it, and for the
    installing user to specify this.  In most cases R defaults to the
    C compiler's default standard which is C17 (a `bug-fix' of C11) -
    earlier versions of R or compilers may have defaulted to C99.
    Current options are:
    USE_C17 Use a standard that is at most C17.  The intention is to
    allow legacy packages to still be installed when later C
    standards become the default, including packages using new
    keywords as identifiers or with K&amp;R-style function
    declarations.  This will use C17 if available, falling back
    to C11.
    USE_C90 Use the C90 (aka C89) standard.  (As that standard did
    not require compilers to identify that version, all we can
    verify is that the compiler does not claim to be using a
    later standard.  It may accept C99 features - for example
    clang accepts // to make comments.)
    USE_C99 Use the C99 standard. This should be rarely needed - it
    avoids the few new features of C11/C17 which can be useful if
    a package assumes them if C17 is specified and they are not
    implemented.
    USE_C23 Use C23 (or in future, later).  Compiler/library support
    for C23 is still being implemented, but LLVM clang from
    15.0.0 and the upcoming GCC 13 have quite extensive support.
    These can be specified as part of the SystemRequirements field in
    the package's DESCRIPTION file or _via_ options --use-C17 and so
    on of R CMD INSTALL and R CMD SHLIB.
    For further details see "Writing R Extensions" SS1.2.5.
  * (Windows) A src/Makefile.ucrt or src/Makefile.win file is now
    included after R_HOME/etcR_ARCH/Makeconf and so no longer needs
    to include that file itself.  Installation of a package with such
    a file now uses a site Makevars file in the same way as a package
    with a src/Makevars.win file would.
  * configure is now passed crucial variables such as CC and CFLAGS
    in its environment, as many packages were not setting them (as
    documented in 'Writing R Extensions' SS1.2).
    This has most effect where configure is used to compile parts of
    the package - most often by cmake or libtool which obfuscate the
    actual compile commands used.
    Also used for configure.win and configure.ucrt on Windows.
  FORTRAN FLAGS:
  * The flag -fno-optimize-sibling-calls is no longer forced for
    gfortran 7 and later.  It should no longer be needed now using
    'hidden' character-length arguments when calling BLAS/LAPACK
    routines from C/C++ is the default even for packages.  (Unless
    perhaps packages call Fortran code from C/C++ without using R's
    headers and without allowing for these arguments.)
  C-LEVEL FACILITIES:
  * The deprecated S-compatibility macros DOUBLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * The deprecated legacy typedefs of Sint and Sfloat in header R.h
    are no longer defined, and that header no longer includes header
    limits.h from C nor climits from C++.
  * New macro CAD5R() is provided in Rinternals.h and used in a few
    places in the R sources.
  * ALTREP now supports VECSXP vectors. Contributed by Gabor Csardi
    in PR#17620.
  * The Rcomplex definition (in header R_ext/Complex.h) has been
    extended to prevent possible mis-compilation when interfacing
    with Fortran (PR#18430).  The new definition causes compiler
    warnings with static initializers such as {1, 2}, which can be
    changed to {.r=1, .i=2}.
    Using the new definition from C++ depends on compiler extensions
    supporting C features that have not been incorporated into the
    C++ standards but are available in g++ and clang++: this may
    result in C++ compiler warnings but these have been worked around
    for recent versions of common compilers (GCC, Apple/LLVM clang,
    Intel).
    It is intended to change the inclusion of header R_ext/Complex.h
    by other R headers, so C/C++ code files which make use of
    Rcomplex should include that header explicitly.
  UTILITIES:
  * R CMD check does more checking of package .Rd files, warning
    about invalid email addresses and (some) invalid URIs and noting
    empty \item labels in description lists.
  * R CMD check now also reports problems when reading package news
    in md (file NEWS.md) and (optionally) plain text (file NEWS)
    formats.
  * _R_CHECK_TIMINGS_ defaults to a value from the environment even
    for R CMD check --as-cran; this allows for exceptionally fast or
    slow platforms.
    It now applies to checking PDF and HTML versions of the manuals,
    and 'checking CRAN incoming feasibility'.
  * R CMD check can optionally (but included in --as-cran) check
    whether HTML math rendering _via_ KaTeX works for the package .Rd
    files.
  * Non-interactive debugger invocations can be trapped by setting
    the environment variable _R_CHECK_BROWSER_NONINTERACTIVE_ to a
    true value.  This is enabled by R CMD check --as-cran to detect
    the use of leftover browser() statements in the package.
  * The use of sprintf and vsprintf from C/C++ has been deprecated in
    macOS 13 and is a known security risk.  R CMD check now reports
    (on all platforms) if their use is found in compiled code:
    replace by snprintf or vsnprintf respectively. [*NB:* whether
    such calls get compiled into the package is platform-dependent.]
  * Where recorded at installation, R CMD check reports the C and
    Fortran compilers used to build R.
    It reports the OS in use (if known, as given by osVersion) as
    well as that R was built for.
    It notes if a C++ standard was specified which is older than the
    current default: many packages have used C++11 to mean 'not
    C++98' - as C++11 is the minimum supported since R 4.0.0, that
    specification can probably be removed.
  * R CMD INSTALL reports the compilers (and on macOS, the SDK) used,
    and this is copied to the output of R CMD check.
    Where a C++ standard is specified, it is reported.
  * R CMD check's 'checking compilation flags in Makevars' has been
    relaxed to accept the use of flags such as -std=f2008 in
    PKG_FFLAGS.
  * tools::buildVignettes() has a new argument skip, which is used by
    R CMD check to skip (and note) vignettes with unavailable
    \VignetteDepends (PR#18318).
  * New generic .AtNames() added to enable class-specific completions
    after @. The formerly internal function findMatches() is now
    exported, mainly for use in methods for .DollarNames() and
    .AtNames().
  DEPRECATED AND DEFUNCT:
  * default.stringsAsFactors() is defunct.
  * Calling as.data.frame.&lt;class&gt;() directly (for 12 atomic classes)
    is going to be formally deprecated, currently activated by
    setting the environment variable
    _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ to non-empty, which also
    happens in R CMD check --as-cran.
  BUG FIXES:
  * Hashed environments with sizes less than 5 can now grow.
    (Reported to R-devel by Duncan Garmonsway.)
  * as.character(&lt;Rd&gt;, deparse = TRUE) failed to re-escape curly
    braces in LaTeX-like text.  (Reported by Hadley Wickham in
    PR#18324.)
  * library() now passes its lib.loc argument when requiring Depends
    packages; reported (with fix) in PR#18331 by Mikael Jagan.
  * R CMD Stangle: improved message about 'Output' files.
  * head(x, n) and tail(x, n) now signal an error if n is not
    numeric, instead of incidentally "working" sometimes returning
    all of x.  Reported and discussed by Colin Fay, in PR#18357.
  * The "lm" method for summary() now gives the correct F-statistic
    when the model contains an offset.  Reported in PR#18008.
  * C() and `contrasts&lt;-`() now preserve factor level names when
    given a function object (as opposed a function name which did
    preserve names). Reported in PR#17616.
  * c(a = 1, 2)[[]] no longer matches 2 but rather signals a
    _classed_ error.  Reported and analysed by Davis Vaughan in
    PR#18367, a duplicate of PR#18004, by Jan Meis et al.  For
    consistency, NULL[[]] is also erroneous now.  x[[]] &lt;- v gives an
    error of the same class "MissingSubscriptError".
  * The relist() function of utils now supports NULL elements in the
    skeleton (PR#15854).
  * ordered(levels = *) (missing x) now works analogously to factor(,
    ordered=TRUE); reported (with fix) by Achim Zeileis in PR#18389.
  * User-defined Rd macro definitions can now span multiple lines,
    thanks to a patch from Duncan Murdoch. Previously, the Rd parser
    silently ignored everything after the first line.
  * Plain-text help (tools::Rd2txt()) now preserves an initial blank
    line for text following description list items.
  * tools::Rd2HTML() and tools::Rd2latex() no longer split \arguments
    and \value lists at Rd comments.
  * tools::Rd2latex() now correctly handles optional text outside
    \items of argument lists as well as bracketed text at the
    beginning of sections, e.g., \value{[NULL]}.
  * as.character(&lt;POSIXt&gt;) now behaves more in line with the methods
    for atomic vectors such as numbers, and is no longer influenced
    by options().  Ditto for as.character(&lt;Date&gt;).  The
    as.character() method gets arguments digits and OutDec with
    defaults _not_ depending on options().  Use of as.character(*,
    format = .) now warns.
  * Similarly, the as.character.hexmode() and *.octmode() methods
    also behave as good citizen methods and back compatibility option
    keepStr = TRUE.
  * The as.POSIXlt(&lt;POSIXlt&gt;) and as.POSIXct(&lt;POSIXct&gt;) default
    methods now do obey their tz argument, also in this case.
  * as.POSIXlt(&lt;Date&gt;) now does apply a tz (time zone) argument, as
    does as.POSIXct(); partly suggested by Roland Fuss on the R-devel
    mailing list.
  * as.Date.POSIXlt(x) now also works when the list components are of
    unequal length, aka "partially filled" or "ragged".
  * expand.model.frame() looked up variables in the wrong environment
    when applied to models fitted without data.  Reported in
    PR#18414.
  * time() now (also) uses the ts.eps = getOption("ts.eps") argument
    and thus by default rounds values very close to the start (or
    end) of a year.  Based on a proposal by Andre"i V. Kostyrka on
    R-help.
  * Printing of a factanal() result with just one factor and sort =
    TRUE now works regularly, fixing PR#17863 by Timothy Bates,
    thanks to the 'R Contributors' working group.
  * Printing 0-length objects of class "factor", "roman", "hexmode",
    "octmode", "person", "bibentry", or "citation" now prints
    something better, one of which fixes PR#18422, reported by
    Benjamin Feakins.
  * Sys.timezone() queries timedatectl only if systemd is loaded;
    addressing a report by Jan Gorecki in PR#17421.
  * The formula method of cor.test() had scoping problems when
    environment(formula) was not the calling environment; reported
    with a patch proposal by Mao Kobayashi in PR#18439.
  * attach() of an environment with active bindings now preserves the
    active bindings.  Reported by Kevin Ushey in PR#18425.
  * BLAS detection now works also with system-provided libraries not
    available as regular files.  This fixes detection of the
    Accelerate framework on macOS since Big Sur.  Reported by David
    Novgorodsky.
  * download.file() gives a helpful error message in case of an
    invalid download.file.method option, thanks to Colin Fay's report
    in PR#18455.
  * Sporadic crashes of Rterm when using completion have been fixed.
  * Rprof() is now more reliable.  A livelock in thread
    initialization with too short sampling interval has been fixed on
    macOS.  A deadlock in using the C runtime has been fixed on
    Windows.  A potential deadlock has been prevented on Unix.
  * Cursor placement in Rgui now works even after a fixed-width font
    is selected.
  * Mandatory options (options()) are now set on startup so that
    saving and restoring them always works (PR#18372).
  * Package installation, R CMD INSTALL or install.packages(*), now
    parses each of the &lt;pkg&gt;/R/*.R files individually instead of
    first concatenating and then parse()ing the large resulting file.
    This allows parser or syntax errors to be diagnosed with correct
    file names and line numbers, thanks to Simon Dedman's report and
    Bill Dunlap's patch in PR#17859.
    This _does_ require syntactically self contained R source files
    now, fixing another inadvertent bug.
  * predict.lm(&lt;model with offset&gt;) now finds the offset in the
    correct environment, thanks to Andr'e Gillibert's report and patch
    in PR#18456.
  * getInitial(&lt;formula&gt;) now finds the selfStart model in the
    correct environment.  (Reported by Ivan Krylov in PR#18368.)
  * Fix for possible segfault when using recently-added graphics
    features, such as gradients, clipping paths, masks, and groups
    with pdf(file=NULL).
  * class(m) &lt;- class(m) no longer changes a matrix m by adding a
    class _attribute_.
  * packageDate(pkg) now only warns once if there is no pkg.
  * When ts() creates a multivariate time series, "mts", it also
    inherits from "array" now, and is.mts() is documented _and_
    stricter.
  * Rd2txt() now preserves line breaks of \verb Rd content and from
    duplicated \cr.  The former also fixes the rendering of verbatim
    output from Rd \Sexpr in plain-text help.
  * uniroot(f, interval) should no longer wrongly converge _outside_
    the interval in some cases where abs(f(x)) == Inf for an x at the
    interval boundary, thanks to posts by Ben Bolker and Serguei
    Sokol on R-devel.
  * Vectorized alpha handling in palette functions such as in gray(),
    rainbow(), or hcl.colors() works correctly now, thanks to Achim
    Zeileis' report and patch in PR#18476.
  * Formatting and print()ing of bibentry objects has dropped the
    deprecated citation.bibtex.max argument, such that the bibtex
    argument's default for print.bibentry() depends directly on the
    citation.bibtex.max option, whereas in format.bibentry() the
    option no longer applies.
  * Attempting to use a character string naming a foreign function
    entry point in a foreign function call in a package will now
    signal an error if the packages has called R_forceSymbols to
    specify that symbols must be used.
  * An error in table() could permanently set options(warn=2)
    promoting all subsequent warnings to errors.
  * The sigma() function gave misleading results for binary GLMs.  A
    new method for objects of class "glm" returns the square root of
    the estimate of the dispersion parameter using the same
    calculation as summary.glm().
  * bs() and ns() in the (typical) case of automatic knot
    construction, when some of the supposedly inner knots coincide
    with boundary knots, now moves them inside (with a warning),
    building on PR#18442 by Ben Bolker.
  * R CMD on Windows now skips the site profile with --no-site-file
    and --vanilla even when R_PROFILE is set (PR#18512, from Kevin
    Ushey).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1686916800">- CHANGES IN R 4.3.1:
  C-LEVEL FACILITIES:
  * The C-level API version of R's integrate(), Rdqags() in Applic.h,
    now returns the correct number of integrand evaluations neval,
    fixing PR#18515 reported and diagnosed by Stephen Wade.
  * The C prototypes for LAPACK calls dspgv and dtptrs in
    R_exts/Lapack.h had one too many and one too few character length
    arguments - but this has not caused any known issues. To get the
    corrected prototypes, include
    [#]include &lt;Rconfig.h&gt; // for PR18534fixed
    [#]ifdef PR18534fixed
    [#] define usePR18534fix 1
    [#]endif
    [#]include &lt;R_exts/Lapack.h&gt;
    in your C/C++ code (PR#18534).
  INSTALLATION:
  * Many of the checks of esoteric Internet operations and those
    using unreliable external sites have been moved to a new target
    that is not run by default and primarily intended for the core
    developers.  To run them use
    cd tests; make test-Internet-dev
  BUG FIXES:
  * .S3methods(), typically called from methods(), again marks
    methods from package base as visible.
    Also, the visibility of non-base methods is again determined by
    the method's presence in search().
  * tools::Rdiff() is now more robust against invalid strings, fixing
    installation tests on Windows without Rtools installed
    (PR#18530).
  * Fix (new) bug in hcl.colors(2, *), by Achim Zeileis (PR#18523).
  * head(., &lt;illegal&gt;) and tail(..) now produce more useful "Error in
    ...." error messages, fixing PR#18362.
  * Package code syntax on Windows is checked in UTF-8 when UTF-8 is
    the native encoding.
  * na.contiguous(x) now also returns the first run, when it is at
    the beginning and there is a later one of the same length;
    reported to R-devel, including a fix, by Georgi Boshnakov.
    Further, by default, it modifies only an existing attr(*,"tsp")
    but otherwise no longer sets one.
  * chol(&lt;not pos.def&gt;, pivot = &lt;T|F&gt;) now gives a correct error or
    warning message (depending on pivot), thanks to Mikael Jagan's
    (PR#18541).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1699012800">- CHANGES IN R 4.3.2:
  NEW FEATURES:
  * The default initialization of the "repos" option from the
    repositories file at startup can be skipped by setting
    environment variable R_REPOSITORIES to NULL such that
    getOption("repos") is empty if not set elsewhere.
  * qr.X() is now an implicit S4 generic in methods.
  * iconv(to = "ASCII//TRANSLIT") is emulated using substitution on
    platforms which do not support it (notably Alpine Linux).  This
    should give a human-readable conversion in ASCII on all platforms
    (rather than NA_character_).
  * trans3d() gains options continuous and verbose addressing the
    problem of possible "wrap around" when projecting too long
    curves, as reported by Achim Zeileis in PR#18537.
  * tools::showNonASCII() has been rewritten to work better on macOS
    14 (which has a changed implementation of iconv()).
  * tiff(type = "quartz") (the default on macOS) now warns if
    compression is specified: it continues to be ignored.
  INSTALLATION on a UNIX-ALIKE:
  * There is some support for building with Intel's LLVM-based
    compilers on x86_64 Linux, such as (C) icx, (C++) ipcx and
    (Fortran) ifx from oneAPI 2023.x.y.
  * There is support for using LLVM's flang-new as the Fortran
    compiler from LLVM 16.0.x (preferably 17.0.0 or later).
  UTILITIES:
  * R CMD check reports the use of the Fortran 90 random number
    generator RANDOM_NUMBER() and the subroutines to initialize it.
    'Writing R Extensions' has example code to use R's RNGs from
    Fortran.
  BUG FIXES:
  * substr(x, n, L) &lt;- cc now works (more) correctly for multibyte
    UTF-8 strings x when L &gt; nchar(x), thanks to a report and patch
    by 'Architect 95'.
  * contrib.url(character()) now returns 0-length character() as
    documented, which also avoids spurious warnings from
    available.packages() et al. in the edge case of an empty vector
    of repository URLs.
  * readChar(., 4e8) no longer fails, thanks to Kodi Arfer's report
    (PR#18557).
  * lapply(&lt;list&gt;, as.data.frame) no longer warns falsely for some
    base vector components.
  * Communication between parent and child processes in the multicore
    part of parallel could fail on platforms that do not support an
    arbitrarily large payload in system functions read()/write() on
    pipes (seen on macOS where a restriction to INT_MAX bytes is
    documented, without doing a partial read unlike Linux). The
    payload is now split into 1Gb chunks to avoid that problem.
    (PR#18571)
  * qqplot(x,y, conf.level=.) gives better confidence bounds when
    length(x) != length(y), thanks to Alexander Ploner's report and
    patch proposal (PR#18557).
  * norm(&lt;0-length&gt;, "2") now gives zero instead of an error, as all
    the other norm types, thanks to Mikael Jagan's PR#18542.
  * Build-stage Rd macros \packageAuthor and \packageMaintainer now
    process Authors@R, fixing NA results when the package DESCRIPTION
    omits Author and Maintainer fields.
  * Formatting and printing complex numbers could give things like
    0.1683-0i because of rounding error: -0i is now replaced by +0i.
  * postscript() refused to accept a title comment containing the
    letter "W" (PR#18599).
  * isoreg(c(1,Inf)) signals an error instead of segfaulting, fixing
    PR#18603.
  * tiff(type = "Xlib") was only outputting the last page of
    multi-page plots.
  * tools::latexToUtf8() again knows about \~{n} and other letters
    with tilde, fixing a regression in R 4.3.0, and about \^{i} as an
    alternative to \^{\i} (similarly with other accents).
    Furthermore, LaTeX codes for accented I letters are now correctly
    converted, also fixing related mistakes in
    tools::encoded_text_to_latex().
  * tar(*, tar = "internal") no longer creates out-of-spec tar files
    in the very rare case of user or group names longer than 32
    bytes, fixing PR#17871 with thanks to Ivan Krylov.
  * When using the "internal" timezone datetime code, adding a
    fraction of a second no longer adds one second, fixing PR#16856
    from a patch by Ivan Krylov.
  * tools::checkRd() no longer produces spurious notes about
    "unnecessary braces" from multi-line Rd results of \Sexpr macros.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1709208000">- CHANGES IN R 4.3.3:
  NEW FEATURES:
  * iconv() now fixes up variant encoding names such as "utf8"
    case-insensitively.
  DEPRECATED AND DEFUNCT:
  * The legacy encoding = "MacRoman" is deprecated in pdf() and
    postscript(): support was incomplete in earlier versions of R.
  BUG FIXES:
  * Arguments are now properly forwarded to methods on S4 generics
    with ... in the middle of their formal arguments. This was broken
    for the case when a method introduced an argument but did not
    include ... in its own formals. Thanks to Herv'e Pag`es for the
    report PR#18538.
  * Some invalid file arguments to pictex(), postscript() and xfig()
    opened a file called NA rather than throw an error.  These
    included postscript(NULL) (which some people expected to work
    like pdf(NULL)).
  * Passing filename = NA to svg(), cairo_pdf(), cairo_ps() or the
    Cairo-based bitmap devices opened a file called NA: it now throws
    an error.
  * quartz(file = NA) opened a file called NA, including when used as
    a Quartz-based bitmap device.  It now gives an error.
  * rank(&lt;long vector&gt;) now works, fixing PR#18617, thanks to Ilia
    Kats.
  * seq.int() did not adequately check its length.out argument.
  * match(&lt;POSIXct&gt;, .) is correct again for differing time zones,
    ditto for "POSIXlt", fixing PR#18618 reported by Bastian Klein.
  * drop.terms(*, dropx = &lt;0-length&gt;) now works, fixing PR#18563 as
    proposed by Mikael Jagan.
  * drop.terms(*) keeps + offset(.) terms when it should, PR#18565,
    and drop.terms() no longer makes up a response, PR#18566, fixing
    both bugs thanks to Mikael Jagan.
  * getS3method("t", "test") no longer finds the t.test() function,
    fixing PR#18627.
  * pdf() and postscript() support for the documented Adobe encodings
    "Greek" and "Cyrilllic" was missing (although the corresponding
    Windows' codepages could be used).
  * Computations of glyph metric information for pdf() and
    postscript() did not take into account that transliteration could
    replace one character by two or more (only seen on macOS 14) and
    typically warned that the information was not known.
  * rank(x) no longer overflows during integer addition, when
    computing rank average for largish but not-yet long vector x,
    fixing PR#18630, thanks to Ilia Kats.
  * list.files() on Windows now returns also files with names longer
    that 260 bytes (the Windows limit is 260 characters).
    Previously, some file names particularly with 'East Asian'
    characters were omitted.
  * cov2cor(&lt;0 x 0&gt;) now works, fixing PR#18423 thanks to Mikael
    Jagan and Elin Waring.
  * cov2cor(&lt;negative diagonal&gt;) and similar now give one warning
    instead of two, with better wording, fixing PR#18424 thanks to
    Mikael Jagan.
  * tools:: startDynamicHelp() now ensures port is in proper range,
    fixing PR#18645.
  * pbeta(x, a,b) is correct now for x=0 or 1 in the boundary cases
    where a or b or both are 0, fixing PR#18672 thanks to Michael
    Fay.
  * pmatch(x, table) for large table, also called for data frame row
    selection, dfrm[nm, ], is now interruptible, fixing PR#18656.
  * predict(&lt;rank-deficient lm&gt;, newdata=*) fix computing of nbasis,
    see Russ Lenth's comment 29 in PR#16158.
  * Added a work-around for a bug in macOS 14.3.1 and higher which
    prevents R plots in the Quartz Cocoa device from updating on
    screen.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1713960000">- CHANGES IN R 4.4.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Startup banners, R --version, sessionInfo() and R CMD check no
    longer report (64-bit) as part of the platform as this is almost
    universal - the increasingly rare 32-bit platforms will still
    report (32-bit).
    On Windows, ditto for window titles.
  * is.atomic(NULL) now returns FALSE, as NULL is not an atomic
    vector.  Strict back-compatibility would replace is.atomic(foo)
    by (is.null(foo) || is.atomic(foo)) but should happen only
    sparingly.
  NEW FEATURES:
  * The confint() methods for "glm" and "nls" objects have been
    copied to the stats package.  Previously, they were stubs which
    called versions in package MASS. The MASS namespace is no longer
    loaded if you invoke (say) confint(glmfit).  Further, the "glm"
    method for profile() and the plot() and pairs() methods for class
    "profile" have been copied from MASS to stats.  (profile.nls()
    and plot.profile.nls() were already in stats.)
  * The confint() and profile methods for "glm" objects have gained a
    possibility to do profiling based on the Rao Score statistic in
    addition to the default Likelihood Ratio. This is controlled by a
    new test = argument.
  * The pairs() method for "profile" objects has been extended with a
    which = argument to allow plotting only a subset of the
    parameters.
  * The "glm" method for anova() computes test statistics and
    p-values by default, using a chi-squared test or an F test
    depending on whether the dispersion is fixed or free.  Test
    statistics can be suppressed by giving argument test a false
    logical value.
  * In setRepositories() the repositories can be set using their
    names via name = instead of index ind =.
  * methods() and .S3methods() gain a all.names option for the (rare)
    case where functions starting with a . should be included.
  * Serializations can now be interrupted (e.g., by Ctrl-C on a
    Unix-alike) if they take too long, e.g., from save.image(),
    thanks to suggestions by Ivan Krylov and others on R-devel.
  * New startup option --max-connections to set the maximum number of
    simultaneous connections for the session.  Defaults to 128 as
    before: allowed values up to 4096 (but resource limits may in
    practice restrict to smaller values).
  * R on Windows (since Windows 10 2004) now uses the new Segment
    Heap allocator. This may improve performance of some
    memory-intensive applications.
  * When R packages are built, typically by R CMD build &lt;pkg&gt;, the
    new --user=&lt;build_user&gt; option overrides the (internally
    determined) user name, currently Sys.info()["user"] or LOGNAME.
    This is a (modified) fulfillment of Will Landau's suggestion in
    PR#17530.
  * tools::testInstalledBasic() gets new optional arguments outDir
    and testSrcdir, e.g., allowing to use it in a &lt;builddir&gt; !=
    &lt;srcdir&gt; setup, and in standard "binary" Windows installation
  * if* a source tests/ folder is present.
  * range(&lt;DT_with_Inf&gt;, finite = TRUE) now work for objects of class
    "Date", "POSIXct", and "POSIXlt" with infinite entries,
    analogously to range.default(), as proposed by Davis Vaughan on
    R-devel.  Other range()-methods can make use of new function
    .rangeNum().
  * New .internalGenerics object complementing .S3PrimitiveGenerics,
    for documentation and low-level book-keeping.
  * grid() now invisibly returns the x- and y- coordinates at which
    the grid-lines were drawn.
  * norm(., type) now also works for complex matrices.
  * kappa(., exact = TRUE, norm = *) now works for all norms and also
    for complex matrices.  In symmetric / triangular cases, the new
    argument uplo = "U" | "L" allows the upper or lower triangular
    part to be specified.
  * memDecompress(type = "unknown") recognizes compression in the
    default 'zlib' format as used by memCompress(type = "gzip").
  * memCompress() and memDecompress() will use the libdeflate library
    (&lt;https://github.com/ebiggers/libdeflate&gt;) if installed.  This
    uses the same type of compression for type = "gzip" but is 1.5-2x
    faster than the system libz library on some common platforms: the
    speed-up may depend on the library version.
  * diff() for objects of class "Date", "POSIXct", and "POSIXlt"
    accepts a units argument passed via ....
  * Dynamic help now does a much better job of rendering package
    DESCRIPTION metadata.
  * Rprof() gains an event argument and support for elapsed (real)
    time profiling on Unix (PR#18076).
  * filled.contour() gains a key.border argument.
  * tools::update_pkg_po() gets arguments pot_make and mo_make for
    _not_ re-making the corresponding files, and additionally a
    verbose argument.
  * Hexadecimal string colour specifications are now accepted in
    short form, so, for example, we can use "#123", which is
    equivalent to "#112233".
    Thanks to MikeFC for the original idea and Ella Kaye, Malcolm
    Barrett, George Stagg, and Hanne Oberman for the patch.
  * Plain-text help shows \var markup by angle brackets.
  * The new experimental primitive function declare() is intended to
    eventually allow information about R code to be communicated to
    the interpreter, compiler, and code analysis tools. The syntax
    for declarations is still being developed.
  * Functions psmirnov(), qsmirnov() and rsmirnov() in package stats
    have had argument two.sided renamed to alternative, to take into
    account that the permutation distributions of the one-sided
    statistics can be different in the case of ties.  Consequence of
    PR#18582.
  * sort() is now an implicit S4 generic in methods.
  * Formatting and printing, format(z), print(z), of complex vectors
    z no longer zap relatively small real or imaginary parts to zero,
    fixing PR#16752.  This is an API change, as it was documented
    previously to round real and imaginary parts together on purpose,
    producing nicer looking output.  As mentioned, e.g. in the PR,
    this change is compatible with many other "R-like" programming
    environments.
    We have simplified the internal code and now basically format the
    real and imaginary parts independently of each other.
  * New experimental functions Tailcall() and Exec() to support
    writing stack-space-efficient recursive functions.
  * Where characters are attempted to be plotted by pdf(),
    postscript() and xfig() which are not in the selected 8-bit
    character set (most often Latin-1) and the R session is using a
    UTF-8 locale, the warning messages will show the UTF-8 character
    rather than its bytes and one dot will be substituted per
    character rather than per byte.  (Platforms whose iconv() does
    transliteration silently plot the transliteration.)
    In a UTF-8 locale some transliterations are now done with a
    warning (e.g., dashes and Unicode minus to hyphen, ligatures are
    expanded, permille (‰) is replaced by o/oo), although the OS may
    have got there first.  These are warnings as they will continue
    to be replaced by dots in earlier versions of R.
  * The matrix multiplication functions crossprod() and tcrossprod()
    are now also primitive and S3 generic, as %*% had become in R
    4.3.0.
  * source() and example() have a new optional argument catch.aborts
    which allows continued evaluation of the R code after an error.
  * The non-Quartz tiff() devices allow additional types of
    compression if supported by the platform's libtiff library.
  * The list of base and recommended package names is now provided by
    tools::standard_package_names().
  * cairo_pdf() and cairo_ps() default to onefile = TRUE to closer
    match pdf() and postscript().
  * New option catch.script.errors provides a documented way to catch
    errors and then continue in non-interactive use.
  * L %||% R newly in base is an expressive idiom for the phrases
    if(!is.null(L)) L else R or if(is.null(L)) R else L.
  * The return value from warnings() now always inherits from
    "warnings" as documented, now also in the case of no warnings
    where it previously returned NULL.
  * as.complex("1i") now returns 0 + 1i instead of NA with a warning.
  * z &lt;- c(NA, 1i) now keeps the imaginary part Im(z[1]) == 0, no
    longer coercing to NA_complex_.  Similarly, cumsum(z) correctly
    sums real and imaginary parts separately, i.e., without
    "crosstalk" in case of NAs.
  * On Alpine Linux iconv() now maps "latin2", "latin-2", "latin9"
    and "latin-9" to encoding names the OS knows about
    (case-insensitively).
  * iconv(sub = "Unicode") now always zero-pads to four (hex) digits,
    rather than to 4 or 8.  (This seems to have become the convention
    once Unicode restricted the number of Unicode points to 2^21 - 1
    and so will never need more than 6 digits.)
  * NCOL(NULL) now returns 0 instead of 1, for consistency with
    cbind().
  * The information for the Euro glyph missing from the Adobe .afm
    files for the Courier, Helvetica and Times families has been
    copied from their URW equivalents - this will improve vertical
    centring in the pdf() and postscript() devices.
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.12.0.  The changes are almost entirely cosmetic.
  * The included LAPACK sources have been updated to version 3.12.0
    and some further double-complex routines added.
  * There are new font families for the 2014--5 URW 2.0 fonts (see
    ?pdf) which are included in recent versions of Ghostscript.
    These have font widths for most Greek glyphs and a few others
    which were missing from the original versions (whose font
    families remain available for reproducibility, although
    Ghostscript-based viewers will render using the 2.0 versions).
  * Improve the large-n efficiency of as.matrix(&lt;dist&gt;), thanks an R
    contributors effort, notably by Tim Taylor and Heather Turner,
    see PR#18660.
  * The default and numeric methods of all.equal() get a check.class
    option.
  * zapsmall() gets new optional arguments, function mFUN and min.d,
    for extra flexibility; fulfills a wish in PR#18199.  Also, it is
    now an implicit S4 generic in package methods.
  * The Rd filter for aspell() gains an ignore argument.
  * New generic function sort_by(), primarily useful for the
    data.frame method which can be used to sort rows of a data frame
    by one or more columns.
  * The icence headers for the RPC code in src/extra/xdr have been
    updated to use the GPL-compatible licence published by Oracle
    America in 2010.
  * New function pkg2HTML() in tools to create single-page HTML
    reference manuals for R packages.
  * The byte code evaluator now uses less C stack space for recursive
    calls to byte-compiled functions. It also makes more of an effort
    to avoid allocations for scalar return values.
  * New completion option backtick (disabled by default) allows
    non-syntactic completions to be wrapped in backquotes. This is
    currently only useful for Jupyter notebooks via the IRkernel
    package, and may cause problems for other backends.
  INSTALLATION:
  * The parser has been updated to work with bison 3.8.2, which is
    now used for the pre-generated parsers in gram.c, file.c, and
    gramRd.c. A few parser error messages have changed, which may
    affect code that relies on exact messages.
  INSTALLATION on a UNIX-ALIKE:
  * System valgrind headers are now required to use configure option
  - -with-valgrind-instrumentation with value 1 or 2.
  * configure will warn if it encounters a 32-bit build, as that is
    nowadays almost untested.
  * Environment variable R_SYSTEM_ABI is no longer used and so no
    longer recorded in etc/Renviron (it was not on Windows and was
    only ever used when preparing package tools).
  * If the libdeflate library and headers are available, libdeflate
    rather than libz is used to (de)compress R objects in lazy-load
    databases.  Typically tasks spend up to 5% of their time on such
    operations, although creating lazy-data databases is one of the
    exceptions.
    This can be suppressed if the library is available by the
    configure option --without-libdeflate-compression.
  * configure option --enable-lto=check has not worked reliably since
    2019 and has been removed.
  * The minimum autoconf requirement for a maintainer build has been
    increased to autoconf 2.71.
    It is intended to increase this to 2.72 for R 4.5.0: the
    distributed configure file was generated using 2.72.
  * The minimum version requirement for an external LAPACK has been
    reduced to 3.9.0.
  * No default C++ compiler is set if no C++17 compiler is detected:
    there is no longer an automatic fallback to C++14 or C++11.
    Compilers from the last five years should have sufficient
    support: for others macros CXX and CXXSTD can be set in file
    config.site to provide a fallback if needed.
    The Objective-C++ compiler now by default uses the standard
    selected by R for C++ (currently C++17) rather than the default
    standard for the C++ compiler (which on macOS is still C++98).
  INSTALLATION on macOS:
  * A new configure option --with-newAccelerate makes use of Apple's
    'new' BLAS / LAPACK interfaces in their Accelerate framework.
    Those interfaces are only available in macOS 13.3 or later, and
    building requires SDK 13.3 or later (from the Command Line Tools
    or Xcode 14.3 or later).
    By default the option uses new Accelerate for BLAS calls: to also
    use it for LAPACK use option --with-newAccelerate=lapack.  The
    later interfaces provide LAPACK 3.9.1 rather than 3.2.1: 3.9.1 is
    from 2021-04 and does not include the improved algorithms
    introduced in LAPACK 3.10.0 (including for BLAS calls).
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools44, an update of the Rtools43 toolchain.  It is
    based on GCC 13 and newer versions of MinGW-W64, binutils and
    libraries (targeting 64-bit Intel CPUs).  R-devel can no longer
    be built using Rtools43 without changes.
  * Rtools44 has experimental support for 64-bit ARM (aarch64) CPUs
    _via_ the LLVM 17 toolchain using lld, clang/flang-new and
    libc++.
  UTILITIES:
  * R CMD check notes when S4-style exports are used without
    declaring a strong dependence on package methods.
  * tools::checkRd() (used by R CMD check) detects more problems with
    \Sexpr-based dynamic content, including bad nesting of \Sexprs
    and invalid arguments.
  * tools::checkRd() now reports Rd titles and section names ending
    in a period; this is ignored by R CMD check unless environment
    variable _R_CHECK_RD_CHECKRD_MINLEVEL_ is set to -5 or smaller.
  * R CMD check now notes Rd files without an \alias, as long
    documented in 'Writing R Extensions' §1.3.1.  The check for a
    missing \description has been moved from tools::checkRd() to
    tools::checkRdContents().
  * R CMD check now visits inst/NEWS.Rd and OS-specific man
    subdirectories when checking Rd files.
  * tools::checkDocFiles() and tools::checkRdContents() now also
    check internal Rd files by default, but "specially" (ignoring
    missing documentation of arguments).
  * R CMD Rdiff gets option --useEx.
  * R CMD check now warns on non-portable uses of Fortran KIND such
    as INTEGER(KIND=4) and REAL(KIND=8).
    To see the failing lines set environment variable
    _R_CHECK_FORTRAN_KIND_DETAILS_ to a true value.
  * When checking Rd files, R CMD check now notes some of the "lost
    braces" that tools::checkRd() finds.  Typical problems are Rd
    macros missing the initial backslash (e.g., code{...}), in-text
    set notation (e.g., {1, 2}, where the braces need escaping), and
    \itemize lists with \describe-style entries of the form
    \item{label}{description}.
  * R CMD INSTALL (and hence check) will compile C++ code with
  - DR_NO_REMAP if environment variable _R_CXX_USE_NO_REMAP_ is set
    to a true value.  It is planned that this will in future become
    the default for compiling C++.
  * The new built-in Rd macro \dontdiff{} can be used to mark example
    code whose output should be ignored when comparing check output
    to reference output (tests/Examples/&lt;pkg&gt;-Ex.Rout.save).  The
    \dontdiff tag, like \donttest, is _not_ shown on the rendered
    help page, so provides a clean alternative to ##
    IGNORE_RDIFF_(BEGIN|END) comments.
  * R CMD build when there is no NAMESPACE, now uses the recommended
    exportPattern("^[^.]"), instead of exporting everything.
  * R CMD check now warns about non-ASCII characters in the NAMESPACE
    file (in addition to R files). Such packages are not portable and
    may fail to install on some platforms.
  C-LEVEL FACILITIES:
  * Headers R_ext/Applic.h and R-ext/Linpack.h used to include
    R_ext/BLAS.h although this was undocumented and unneeded by their
    documented entry points.  They no longer do so.
  * New function R_missing(), factored out from do_missing(), used to
    fix PR#18579.
  * SEXP type S4SXP has been renamed to OBJSXP to support
    experimenting with alternative object systems.  The S4SXP value
    can still be used in C code but is now deprecated.  Based on
    contributions from the R Consortium's Object-Oriented Programming
    Working Group.
  * New function pow1p(x,y) for accurate (1+x)^y.
  * mkCharLenCE was incorrectly documented to take a size_t length
    but was implemented with int (and character strings in R are
    limited to 2^31 - 1 bytes).
  DEPRECATED AND DEFUNCT:
  * data() no longer handles zipped data from long-defunct (since R
    2.13.0) --use-zip-data installations.
  * The legacy graphics devices pictex() and xfig() are now
    deprecated.  They do not support recent graphics enhancements and
    their font handling is rudimentary. The intention is to retain
    them for historical interest as long as they remain somewhat
    functional.
  * Support for encoding = "MacRoman" has been removed from the pdf()
    and postscript() devices - this was a legacy encoding supporting
    classic macOS up to 2001 and no longer has universal libiconv
    support.
  * is.R() is deprecated as no other S dialect is known to be in use
    (and this could only identify historical dialects, not future
    ones).
    Further information on calls can be obtained by setting the
    environment variable _R_DEPRECATED_IS_R_ to error which turns the
    deprecation warning into an error and so by default gives a
    traceback.  (This is done by R CMD check --as-cran.)
  * UseMethod() no longer forwards local variables assigned in the
    generic function into method call environments before evaluating
    the method body. This makes method calls behave more like
    standard function calls and makes method code easier to analyze
    correctly.
  * The twelve as.data.frame.&lt;class&gt;() methods which were deprecated
    only via _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ and in R CMD
    check --as-cran are formally deprecated now in favour of calling
    as.data.frame() or as.data.frame.vector().  The deprecation
    "check" now works also when as.data.frame() is S4 generic thanks
    to Ivan Krylov.
  * The default method for the directional comparison operators &lt;, &gt;,
    &lt;=, and &gt;= now signals an error when one of the operands is a
    language object, i.e. a symbol or a call.
  * For terms.formula(), deprecate abb and neg.out arguments
    _formally_ in addition to just documenting it.
  BUG FIXES:
  * The methods package is more robust to not being attached to the
    search path.  More work needs to be done.
  * pairwise.t.test() misbehaved when subgroups had 0 DF for
    variance, even with pool.sd = TRUE.  (PR#18594 by Jack Berry).
  * Probability distribution functions [dpq]&lt;distrib&gt;(x, *), but also
    bessel[IKJY](x, .) now consistently preserve attributes(x) when
    length(x) == 0, e.g., for a 2 x 0 matrix, thanks to Karolis
    Koncevičius' report PR#18509.
  * Group "Summary" computations such as sum(1:3, 4, na.rm = 5, NA,
    7, na.rm = LL) now give an error instead of either 17 or NN for
    LL true or false, as proposed by Ivan Krylov on the R-devel
    mailing list.  (This also means it is now an error to specify
    na.rm more than once.)
  * as.complex(x) now returns complex(real = x, imaginary = 0) for
    _all_ numerical and logical x, notably also for NA or
    NA_integer_.
  * Directories are now omitted by file.copy(, recursive = FALSE) and
    in file.append() (PR#17337).
  * gsub() and sub() are now more robust to integer overflow when
    reporting errors caused by too large input strings (PR#18346).
  * Top-level handlers are now more robust to attempts to remove a
    handler whilst handlers are running (PR#18508).
  * The handling of Alt+F4 in dialogs created on Windows using
    GraphApp has been fixed (PR#13870).
  * density() more consistently computes grid values for the
    FFT-based convolution, following Robert Schlicht's analysis and
    proposal in PR#18337, correcting density values typically by a
    factor of about 0.999.  Argument old.coords = TRUE provides back
    compatibility.
  * palette.colors() gains a name argument that defaults to FALSE
    controlling whether the vector of colours that is returned has
    names (where possible).  PR#18529.
  * tools::xgettext() no longer extracts the (non-translatable) class
    names from warningCondition and errorCondition calls.
  * S3method(&lt;gen&gt;, &lt;class&gt;, &lt;func&gt;) in the NAMESPACE file now works
    (again) when &lt;func&gt; is visible from the namespace, e.g.,
    imported, or in base.
  * getParseData(f) now also works for a function defined in the
    first of several &lt;pkg&gt;/R/*.R source files, thanks to Kirill
    Müller's report and Duncan Murdoch's patch in PR#16756.
  * Rd \Sexpr macros with nested #ifdef conditionals were not
    processed.
  * A non-blocking connection with non-default encoding (such as a
    socket) now correctly returns from readLines() after new data has
    arrived also when its EOF had been reached previously.  Thanks to
    Peter Meilstrup's report on R-devel and Ivan Krylov's report and
    patch proposal in PR#18555.
  * tools::checkRdContents() failed to detect empty argument
    descriptions when they spanned multiple lines, including those
    generated by prompt().  These cases are now noted by R CMD check.
  * Plain-text help no longer outputs spurious colons in the
    arguments list (for multi-line \item labels in the Rd source).
  * kappa() and rcond() work correctly in more cases; kappa(., norm =
    "2") now warns that it computes the 1-norm with (default) exact =
    FALSE; prompted by Mikael Jagan's quite comprehensive PR#18543.
  * Rd skeletons generated by prompt() or promptData() now use a
    dummy title (so R CMD build works).  tools::checkRdContents() has
    been updated to detect such template leftovers, including from
    promptPackage().
  * When S4 method dispatch fails because no method was found, the
    error message now includes the signature argument names; thanks
    to Michael Chirico's proposal on the R-devel list.
  * withAutoprint({ .. }) now preserves srcrefs previously lost,
    thanks to Andrew Simmons' report plus fix in PR#18572.
  * transform.data.frame() no longer adjusts names; in particular,
    untransformed variables are kept as-is, including those with
    syntactically invalid names (PR#17890).
  * The keep.source option for Rd \Sexpr blocks is no longer ignored.
  * The formula methods for t.test() and wilcox.test() now catch when
    paired is passed, addressing PR#14359; use Pair(x1, x2) ~ 1 for a
    paired test.
  * The level reported in the browser prompt was often too large. It
    now shows the number of browser contexts on the stack.
  * For cbind() and rbind(), the optional deparse.level argument is
    now properly passed to methods, thanks to Mikael Jagan's PR#18579
    and comments there.
  * Some error and warning messages for large ('long vector')
    matrix(v, nr, nc) and dim(m) &lt;- d are now correct about sizes,
    using long long formatting, fixing PR#18612 (and more) reported
    by Mikael Jagan.
  * readChar(useBytes = TRUE) now terminates strings even when the
    underlying connection uses extra spaces in the input buffer.
    This fixes problems with extra garbage seen with gzip
    connections, PR#18605.
  * Named capture in PCRE regular expressions now works also with
    more than 127 named groups (PR#18588).
  * Datetime functions are now robust against long jumps when dealing
    with internal time zone changes.  This avoids confusing warnings
    about an invalid time zone, previously triggered by turning
    warnings into errors or handling them via tryCatch (PR#17966,
    PR#17780).
  * Datetime functions now restore even an empty TZ environment
    variable after internal time zone changes (PR#17724).  This makes
    results of datetime functions with this (typically unintentional)
    setting more predictable.
  * drop.terms(*) now drops response as by default, keep.response =
    FALSE, fixing PR#18564 thanks to Mikael Jagan.
  * dummy.coef(.) now also works for lm()-models with character
    categorical predictor variables rather than factor ones, fixing
    PR#18635 reported by Jinsong Zhao.
  * formals(f) &lt;- formals(f) now also works for a function w/o
    arguments and atomic _constant_ body(f).
  * Correct as.function(&lt;invalid list&gt;, .)'s error message.
  * removeSource() is yet more thorough in finding and removing
    "srcref" and the other source references from parsed R language
    chunks, fixing PR#18638 thanks to Andrew Simmons.
  * dgeom() is more accurate now, notably when its result is very
    small, fixing PR#18642 thanks to the proposal of Morten Welinder,
    also improving other instances where C level binom_raw(x, n, ..)
    has x == 0 or x== n.
  * warning() with options(warn = 1) has improved output for
    multi-line messages.
  * axis.Date() and axis.POSIXct() now respect the par("lab") setting
    for the number of pretty() intervals.
  * Comparisons for language objects (which are based on deparsing)
    are now more careful about using accurate deparsed results
    (PR#18676).
  * Plain-text help (Rd2txt) now correctly preserves blank lines
    following single-line \dontrun code.
  * &lt;POSIXlt&gt;[*] no longer sets wrong "balanced" attribute, fixing
    PR#18681 thanks to Mikael Jagan.
  * str(&lt;classed-call&gt;) now deparses the call as expected, fixing
    PR#18684, reported by Dave Slager.
  * In Rd examples, code following the closing brace of a \dontrun,
    \dontshow or \donttest tag on the same line is no longer skipped
    when R CMD check runs the examples.
  * as.data.frame(matrix(*, ncol=0)) now gets valid names() and
    colnames(); reported by Davis Vaughan on the R-devel list.
  * Internal Mathlib function stirlerr(n) is now almost fully
    (52-bit) accurate for all n &gt;= ~5.9 and more accurate also in the
    range 1 -- 5.9.  This entails small ("after 12th decimal")
    changes in density functions, e.g., dgamma() in _some_ regions of
    their support.  The fix was partly prompted by Morten Welinder's
    PR#18640.
  * Numbers like 9876543.2 are now considered non-integer by Mathlib
    internal R_nonint(), amending original fix of PR#15734.
  * Rd comment lines no longer cause broken paragraphs in the
    rendered PDF and plain-text help. In code blocks, pure comment
    lines (starting with %) no longer produce an empty line.
  * xtabs(Freq ~ .) now consistently defaults to na.action = na.pass,
    using na.rm = FALSE (added as an argument) when summing over Freq
    (PR#17770).
  * tools::testInstalledPackage() is no longer silent about failures
    from running examples or tests and its return code no longer
    ignores failures from checking vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1718366400">- CHANGES IN R 4.4.1:
  C-LEVEL FACILITIES:
  * Functions R_atof and R_strtod declared in header R_ext/Utils.h
    are now documented in 'Writing R Extensions' and so formally part
    of the API.
  * The non-API entry points Rf_setSVector, Rf_StringFalse,
    Rf_StringTrue and Rf_isBlankString have been added to those
    reported by R CMD check.
  * The new function Rf_allocLang is now available. This provides an
    alternative to the idiom of calling Rf_allocList followed by
    SET_TYPEOF.
  UTILITIES:
  * R CMD check now reports as warnings what gfortran calls 'Fortran
    2018 deleted features', all of which have long been marked as
    'obsolescent' and some of which were deleted in Fortran 2008 or
    earlier.  Fortran compilers are no longer required to support
    these.
  BUG FIXES:
  * as.numeric(), scan(), type.convert() and other places which use
    the internal C function R_strtod now require a _non-empty_ digit
    sequence in a decimal or binary exponent.  This aligns with the
    C/POSIX standard for strtod and with ?NumericConstants.
  * as.data.frame(m, make.names=NA) now works correctly for a matrix
    m with NA's in row names.
  * The error message from &lt;POSIXlt&gt;[["hour"]] and similar now
    mentions *[[, "hour"]], as wished for in PR#17409 and proposed by
    Michael Chirico.
  * qbinom() and potentially qpois(), qnbinom(), no longer sometimes
    fail accurate inversion (of pbinom(), etc), thanks to Christopher
    Chang's report and patch in PR#18711.
  * The internal help server on Windows can again serve requests sent
    in quick succession, fixing a regression in R 4.4.0.
  * debugcall(&lt;S3Generic&gt;()) now also works when a corresponding
    S4-generic version is in the methods cache (PR#18143).
  * Package tools' toTitleCase(ch0) now returns character(0) when ch0
    is of zero length; fixing PR#18724, reported by David Hugh Jones.
  * R CMD check is no longer broken (without a check result and no
    explanation in 00check.log) for a package which declares an
    invalid VignetteBuilder in DESCRIPTION but has no vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1730376000">- CHANGES IN R 4.4.2:
  C-LEVEL FACILITIES:
  * The S-compatibility macros F77_COM and F77_COMDECL defined in
    header R_ext/RS.h are deprecated and will be removed shortly.  We
    could find no record of their use.
  BUG FIXES:
  * Mathlib function lgammacor(x) no longer warns about underflow to
    zero for large x.
  * Text widths and heights were incorrectly reported by the Quartz
    device if the drawing context didn't exist yet (typically when
    drawing off-screen to a window that is yet to appear, see
    PR#18591).
  * The Quartz device could segfault in cases where paths with spaces
    are used in the new glyph drawing API.  Thanks to Tomek
    Gieorgijewski (PR#18758).
  * On macOS in R CRAN builds, it is again possible to read
    little-endian UTF-16 text with a BOM from a connection using
    encoding="UTF-16".  Users building R from source should avoid
    using the system libiconv in macOS 14.1 and later.
  * methods' internal .requirePackage() now re-enables primitive
    method dispatch when needed; thanks to Ivan Krylov for
    demystifying CRAN package check failures on the R-devel mailing
    list.</changelog>
</package>
<package pkgid="c4d1276c3ad5e64f7c10741c4746049c89eb890a4139043f1e91297841a55b459941bb5d8d2d03d7b0ef57ca406f83035164f09d0524f954632862ce100452e7" name="R-rpart-debuginfo" arch="i586">
  <version epoch="0" ver="4.1.23" rel="51.0.2.2.sr20241103"/>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1620302400">- To get in sync with d:l:R:autoCRAN the Matrix package's split
  in -devel was reversed.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339200">- improved spec file according to comments of dimstar in
  https://build.opensuse.org/request/show/892685</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339201">- CHANGES IN R 4.1.0:
  FUTURE DIRECTIONS:
  * It is planned that the 4.1.x series will be the last to support
    32-bit Windows, with production of binary packages for that
    series continuing until early 2023.
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Data set esoph in package datasets now provides the correct
    numbers of controls; previously it had the numbers of cases added
    to these.  (Reported by Alexander Fowler in PR#17964.)
  NEW FEATURES:
  * www.omegahat.net is no longer one of the repositories known by
    default to setRepositories().  (Nowadays it only provides source
    packages and is often unavailable.)
  * Function package_dependencies() (in package tools) can now use
    different dependency types for direct and recursive dependencies.
  * The checking of the size of tarball in R CMD check --as-cran
    &lt;pkg&gt; may be tweaked via the new environment variable
    _R_CHECK_CRAN_INCOMING_TARBALL_THRESHOLD_, as suggested in
    PR#17777 by Jan Gorecki.
  * Using c() to combine a factor with other factors now gives a
    factor, an ordered factor when combining ordered factors with
    identical levels.
  * apply() gains a simplify argument to allow disabling of
    simplification of results.
  * The format() method for class "ftable" gets a new option justify.
    (Suggested by Thomas Soeiro.)
  * New ...names() utility.  (Proposed by Neal Fultz in PR#17705.)
  * type.convert() now warns when its as.is argument is not
    specified, as the help file always said it _should_.  In that
    case, the default is changed to TRUE in line with its change in
    read.table() (related to stringsAsFactor) in R 4.0.0.
  * When printing list arrays, classed objects are now shown _via_
    their format() value if this is a short enough character string,
    or by giving the first elements of their class vector and their
    length.
  * capabilities() gets new entry "Rprof" which is TRUE when R has
    been configured with the equivalent of --enable-R-profiling (as
    it is by default).  (Related to Michael Orlitzky's report
    PR#17836.)
  * str(xS4) now also shows extraneous attributes of an S4 object
    xS4.
  * Rudimentary support for vi-style tags in rtags() and R CMD rtags
    has been added.  (Based on a patch from Neal Fultz in PR#17214.)
  * checkRdContents() is now exported from tools; it and also
    checkDocFiles() have a new option chkInternal allowing to check
    Rd files marked with keyword "internal" as well.  The latter can
    be activated for R CMD check via environment variable
    _R_CHECK_RD_INTERNAL_TOO_.
  * New functions numToBits() and numToInts() extend the raw
    conversion utilities to (double precision) numeric.
  * Functions URLencode() and URLdecode() in package utils now work
    on vectors of URIs.  (Based on patch from Bob Rudis submitted
    with PR#17873.)
  * path.expand() can expand ~user on most Unix-alikes even when
    readline is not in use.  It tries harder to expand ~, for example
    should environment variable HOME be unset.
  * For HTML help (both dynamic and static), Rd file links to help
    pages in external packages are now treated as references to
    topics rather than file names, and fall back to a file link only
    if the topic is not found in the target package. The earlier rule
    which prioritized file names over topics can be restored by
    setting the environment variable _R_HELP_LINKS_TO_TOPICS_ to a
    false value.
  * c() now removes NULL arguments before dispatching to methods,
    thus simplifying the implementation of c() methods, _but_ for
    back compatibility keeps NULL when it is the first argument.
    (From a report and patch proposal by Lionel Henry in PR#17900.)
  * Vectorize()'s result function's environment no longer keeps
    unneeded objects.
  * Function ...elt() now propagates visibility consistently with
    ..n.  (Thanks to Lionel Henry's PR#17905.)
  * capture.output() no longer uses non-standard evaluation to
    evaluate its arguments.  This makes evaluation of functions like
    parent.frame() more consistent.  (Thanks to Lionel Henry's
    PR#17907.)
  * packBits(bits, type="double") now works as inverse of
    numToBits().  (Thanks to Bill Dunlap's proposal in PR#17914.)
  * curlGetHeaders() has two new arguments, timeout to specify the
    timeout for that call (overriding getOption("timeout")) and TLS
    to specify the minimum TLS protocol version to be used for
    https:// URIs (_inter alia_ providing a means to check for sites
    using deprecated TLS versions 1.0 and 1.1).
  * For nls(), an optional constant scaleOffset may be added to the
    denominator of the relative offset convergence test for cases
    where the fit of a model is expected to be exact, thanks to a
    proposal by John Nash.  nls(*, trace=TRUE) now also shows the
    convergence criterion.
  * Numeric differentiation _via_ numericDeriv() gets new optional
    arguments eps and central, the latter for taking central divided
    differences.  The latter can be activated for nls() via
    nls.control(nDcentral = TRUE).
  * nls() now passes the trace and control arguments to getInitial(),
    notably for all self-starting models, so these can also be fit in
    zero-noise situations via a scaleOffset.  For this reason, the
    initial function of a selfStart model must now have ... in its
    argument list.
  * bquote(splice = TRUE) can now splice expression vectors with
    attributes: this makes it possible to splice the result of
    parse(keep.source = TRUE).  (Report and patch provided by Lionel
    Henry in PR#17869.)
  * textConnection() gets an optional name argument.
  * get(), exists(), and get0() now signal an error if the first
    argument has length greater than 1.  Previously additional
    elements were silently ignored.  (Suggested by Antoine Fabri on
    R-devel.)
  * R now provides a shorthand notation for creating functions, e.g.
    \(x) x + 1 is parsed as function(x) x + 1.
  * R now provides a simple native forward pipe syntax |&gt;.  The
    simple form of the forward pipe inserts the left-hand side as the
    first argument in the right-hand side call.  The pipe
    implementation as a syntax transformation was motivated by
    suggestions from Jim Hester and Lionel Henry.
  * all.equal(f, g) for functions now by default also compares their
    environment(.)s, notably via new all.equal method for class
    function.  Comparison of nls() fits, e.g., may now need
    all.equal(m1, m2, check.environment = FALSE).
  * .libPaths() gets a new option include.site, allowing to _not_
    include the site library.  (Thanks to Dario Strbenac's suggestion
    and Gabe Becker's PR#18016.)
  * Lithuanian translations are now available.  (Thanks to Rimantas
    Zakauskas.)
  * names() now works for DOTSXP objects.  On the other hand, in
    R-lang, the R language manual, we now warn against relying on the
    structure or even existence of such dot-dot-dot objects.
  * all.equal() no longer gives an error on DOTSXP objects.
  * capabilities("cairo") now applies only to the file-based devices
    as it is now possible (if very unusual) to build R with Cairo
    support for those but not for X11().
  * There is optional support for tracing the progress of
    loadNamespace() - see its help.
  * (Not Windows.)  l10n_info() reports an additional element, the
    name of the encoding as reported by the OS (which may differ from
    the encoding part (if any) of the result from
    Sys.getlocale("LC_CTYPE").
  * New function gregexec() which generalizes regexec() to find _all_
    disjoint matches and well as all substrings corresponding to
    parenthesized subexpressions of the given regular expression.
    (Contributed by Brodie Gaslam.)
  * New function charClass() in package utils to query the
    wide-character classification functions in use (such as
    iswprint).
  * The names of quantile()'s result no longer depend on the global
    getOption("digits"), but quantile() gets a new optional argument
    digits = 7 instead.
  * grep(), sub(), regexp and variants work considerably faster for
    long factors with few levels.  (Thanks to Michael Chirico's
    PR#18063.)
  * Provide grouping of x11() graphics windows within a window
    manager such as Gnome or Unity; thanks to a patch by Ivan Krylov
    posted to R-devel.
  * The split() method for class data.frame now allows the f argument
    to be specified as a formula.
  * sprintf now warns on arguments unused by the format string.
  * New palettes "Rocket" and "Mako" for hcl.colors() (approximating
    palettes of the same name from the 'viridisLite' package).
    Contributed by Achim Zeileis.
  * The base environment and its namespace are now locked (so one can
    no longer add bindings to these or remove from these).
  * Rterm handling of multi-byte characters has been improved,
    allowing use of such characters when supported by the current
    locale.
  * Rterm now accepts ALT+ +xxxxxxxx sequences to enter Unicode
    characters as hex digits.
  * Environment variable LC_ALL on Windows now takes precedence over
    LC_CTYPE and variables for other supported categories, matching
    the POSIX behaviour.
  * duplicated() and anyDuplicated() are now optimized for integer
    and real vectors that are known to be sorted via the ALTREP
    framework. Contributed by Gabriel Becker via PR#17993.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 14
    and so packages that provide graphics devices should be
    reinstalled.
  * Graphics devices should now specify deviceVersion to indicate
    what version of the graphics engine they support.
  * Graphics devices can now specify deviceClip.  If TRUE, the
    graphics engine will never perform any clipping of output itself.
    The clipping that the graphics engine does perform (for both
    canClip = TRUE and canClip = FALSE) has been improved to avoid
    producing unnecessary artifacts in clipped output.
  * The grid package now allows gpar(fill) to be a linearGradient(),
    a radialGradient(), or a pattern().  The viewport(clip) can now
    also be a grob, which defines a clipping path, and there is a new
    viewport(mask) that can also be a grob, which defines a mask.
    These new features are only supported so far on the Cairo-based
    graphics devices and on the pdf() device.
  * (Not Windows.)  A warning is given when a Cairo-based type is
    specified for a png(), jpeg(), tiff() or bmp() device but Cairo
    is unsupported (so type = "Xlib" is tried instead).
  * grSoftVersion() now reports the versions of FreeType and
    FontConfig if they are used directly (not _via_ Pango), as is
    most commonly done on macOS.
  C-LEVEL FACILITIES:
  * The _standalone_ libRmath math library and R's C API now provide
    log1pexp() again as documented, and gain log1mexp().
  INSTALLATION on a UNIX-ALIKE:
  * configure checks for a program pkgconf if program pkg-config is
    not found.  These are now only looked for on the path (like
    almost all other programs) so if needed specify a full path to
    the command in PKG_CONFIG, for example in file config.site.
  * C99 function iswblank is required - it was last seen missing ca
    2003 so the workaround has been removed.
  * There are new configure options --with-internal-iswxxxxx,
  - -with-internal-towlower and --with-internal-wcwidth which allows
    the system functions for wide-character classification,
    case-switching and width (wcwidth and wcswidth) to be replaced by
    internal ones.  The first has long been used on macOS, AIX (and
    Windows) but this enables it to be unselected there and selected
    for other platforms (it is the new default on Solaris).  The
    second is new in this version of R and is selected by default on
    macOS and Solaris.  The third has long been the default and
    remains so as it contains customizations for East Asian
    languages.
    System versions of these functions are often minimally
    implemented (sometimes only for ASCII characters) and may not
    cover the full range of Unicode points: for example Solaris (and
    Windows) only cover the Basic Multilingual Plane.
  * Cairo installations without X11 are more likely to be detected by
    configure, when the file-based Cairo graphics devices will be
    available but not X11(type = "cairo").
  * There is a new configure option --with-static-cairo which is the
    default on macOS.  This should be used when only static cairo
    (and where relevant, Pango) libraries are available.
  * Cairo-based graphics devices on platforms without Pango but with
    FreeType/FontConfig will make use of the latter for font
    selection.
  LINK-TIME OPTIMIZATION on a UNIX-ALIKE:
  * Configuring with flag --enable-lto=R now also uses LTO when
    installing the recommended packages.
  * R CMD INSTALL and R CMD SHLIB have a new flag --use-LTO to use
    LTO when compiling code, for use with R configured with
  - -enable-lto=R.  For R configured with --enable-lto, they have
    the new flag --no-use-LTO.
    Packages can opt in or out of LTO compilation _via_ a UseLTO
    field in the DESCRIPTION file.  (As usual this can be overridden
    by the command-line flags.)
  BUILDING R on Windows:
  * for GCC &gt;= 8, FC_LEN_T is defined in config.h and hence character
    lengths are passed from C to Fortran in _inter alia_ BLAS and
    LAPACK calls.
  * There is a new text file src/gnuwin32/README.compilation, which
    outlines how C/Fortran code compilation is organized and
    documents new features:
  * R can be built with Link-Time Optimization with a suitable
    compiler - doing so with GCC 9.2 showed several
    inconsistencies which have been corrected.
  * There is support for cross-compiling the C and Fortran code
    in R and standard packages on suitable (Linux) platforms.
    This is mainly intended to allow developers to test later
    versions of compilers - for example using GCC 9.2 or 10.x has
    detected issues that GCC 8.3 in Rtools40 does not.
  * There is experimental support for cross-building R packages
    with C, C++ and/or Fortran code.
  * The R installer can now be optionally built to support a single
    architecture (only 64-bit or only 32-bit).
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++14 where
    available (which it is on all currently checked platforms): if
    not (as before) C++11 is used if available otherwise C++ is not
    supported.
    Packages which specify C++11 will still be installed using C++11.
    C++14 compilers may give deprecation warnings, most often for
    std::random_shuffle (deprecated in C++14 and removed in C++17).
    Either specify C++11 (see 'Writing R Extensions') or modernize
    the code and if needed specify C++14.  The latter has been
    supported since R 3.4.0 so the package's DESCRIPTION would need
    to include something like
    Depends: R (&gt;= 3.4)
  PACKAGE INSTALLATION on Windows:
  * R CMD INSTALL and R CMD SHLIB make use of their flag --use-LTO
    when the LTO_OPT make macro is set in file etc/${R_ARCH}/Makeconf
    or in a personal/site Makevars file.  (For details see 'Writing R
    Extensions' SS4.5.)
    This provides a valuable check on code consistency.  It does work
    with GCC 8.3 as in Rtools40, but that does not detect everything
    the CRAN checks with current GCC do.
  PACKAGE INSTALLATION on macOS:
  * The default personal library directory on builds with
  - -enable-aqua (including CRAN builds) now differs by CPU type,
    one of
    ~/Library/R/x86_64/x.y/library
    ~/Library/R/arm64/x.y/library
    This uses the CPU type R (and hence the packages) were built for,
    so when a x86_64 build of R is run under Rosetta emulation on an
    arm64 Mac, the first is used.
  UTILITIES:
  * R CMD check can now scan package functions for bogus return
    statements, which were possibly intended as return() calls (wish
    of PR#17180, patch by Sebastian Meyer). This check can be
    activated via the new environment variable
    _R_CHECK_BOGUS_RETURN_, true for --as-cran.
  * R CMD build omits tarballs and binaries of previous builds from
    the top-level package directory.  (PR#17828, patch by Sebastian
    Meyer.)
  * R CMD check now runs sanity checks on the use of LazyData, for
    example that a data directory is present and that
    LazyDataCompression is not specified without LazyData and has a
    documented value.  For packages with large LazyData databases
    without specifying LazyDataCompression, there is a reference to
    the code given in 'Writing R Extensions' SS1.1.6 to test the
    choice of compression (as in all the CRAN packages tested a
    non-default method was preferred).
  * R CMD build removes LazyData and LazyDataCompression fields from
    the DESCRIPTION file of packages without a data directory.
  ENCODING-RELATED CHANGES:
  * The parser now treats \Unnnnnnnn escapes larger than the upper
    limit for Unicode points (\U10FFFF) as an error as they cannot be
    represented by valid UTF-8.
    Where such escapes are used for outputting non-printable
    (including unassigned) characters, 6 hex digits are used (rather
    than 8 with leading zeros).  For clarity, braces are used, for
    example \U{0effff}.
  * The parser now looks for non-ASCII spaces on Solaris (as
    previously on most other OSes).
  * There are warnings (including from the parser) on the use of
    unpaired surrogate Unicode points such as \uD834.  (These cannot
    be converted to valid UTF-8.)
  * Functions nchar(), tolower(), toupper() and chartr() and those
    using regular expressions have more support for inputs with a
    marked Latin-1 encoding.
  * The character-classification functions used (by default) to
    replace the system iswxxxxx functions on Windows, macOS and AIX
    have been updated to Unicode 13.0.0.
    The character-width tables have been updated to include new
    assignments in Unicode 13.0.0.
  * The code for evaluating default (extended) regular expressions
    now uses the same character-classification functions as the rest
    of R (previously they differed on Windows, macOS and AIX).
  * There is a build-time option to replace the system's
    wide-character wctrans C function by tables shipped with R: use
    configure option --with-internal-towlower or (on Windows)
  - DUSE_RI18N_CASE in CFLAGS when building R.  This may be needed
    to allow tolower() and toupper() to work with Unicode characters
    beyond the Basic Multilingual Plane where not supported by system
    functions (e.g. on Solaris where it is the new default).
  * R is more careful when truncating UTF-8 and other multi-byte
    strings that are too long to be printed, passed to the system or
    libraries or placed into an internal buffer.  Truncation will no
    longer produce incomplete multibyte characters.
  DEPRECATED AND DEFUNCT:
  * Function plclust() from the package stats and
    package.dependencies(), pkgDepends(), getDepList(),
    installFoundDepends(), and vignetteDepends() from package tools
    are defunct.
  * Defunct functions checkNEWS() and readNEWS() from package tools
    and CRAN.packages() from utils have been removed.
  * R CMD config CXXCPP is defunct (it was deprecated in R 3.6.2).
  * parallel::detectCores() drops support for Irix (retired in 2013).
  * The LINPACK argument to chol.default(), chol2inv(),
    solve.default() and svd() has been defunct since R 3.1.0.  It was
    silently ignored up to R 4.0.3 but now gives an error.
  * Subsetting/indexing, such as ddd[*] or ddd$x on a DOTSXP
    (dot-dot-dot) object ddd has been disabled; it worked by accident
    only and was undocumented.
  BUG FIXES:
  * Many more C-level allocations (mainly by malloc and strdup) are
    checked for success with suitable alternative actions.
  * Bug fix for replayPlot(); this was turning off graphics engine
    display list recording if a recorded plot was replayed in the
    same session.  The impact of the bug became visible if resize the
    device after replay OR if attempted another savePlot() after
    replay (empty display list means empty screen on resize or empty
    saved plot).
  * R CMD check etc now warn when a package exports non-existing S4
    classes or methods, also in case of no "methods" presence.
    (Reported by Alex Bertram; reproducible example and patch by
    Sebastian Meyer in PR#16662.)
  * boxplot() now also accepts calls for labels such as ylab, the
    same as plot().  (Reported by Marius Hofert.)
  * The help page for xtabs() now correctly states that addNA is
    setting na.action = na.pass among others.  (Reported as PR#17770
    by Thomas Soeiro.)
  * The R CMD check &lt;pkg&gt; gives a longer and more comprehensible
    message when DESCRIPTION misses dependencies, e.g., in Imports:.
    (Thanks to the contributors of PR#17179.)
  * update.default() now calls the generic update() on the formula to
    work correctly for models with extended formulas.  (As reported
    and suggested by Neal Fultz in PR#17865.)
  * The horizontal position of leaves in a dendrogram is now correct
    also with center = FALSE.  (PR#14938, patch from Sebastian
    Meyer.)
  * all.equal.POSIXt() no longer warns about and subsequently ignores
    inconsistent "tzone" attributes, but describes the difference in
    its return value (PR#17277).  This check can be disabled _via_
    the new argument check.tzone = FALSE as suggested by Sebastian
    Meyer.
  * as.POSIXct() now populates the "tzone" attribute from its tz
    argument when x is a logical vector consisting entirely of NA
    values.
  * x[[2^31]] &lt;- v now works.  (Thanks to the report and patch by
    Suharto Anggono in PR#17330.)
  * In log-scale graphics, axis() ticks and label positions are now
    computed more carefully and symmetrically in their range,
    typically providing _more_ ticks, fulfilling wishes in PR#17936.
    The change really corresponds to an improved axisTicks() (package
    grDevices), potentially influencing grid and lattice, for
    example.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now correct to at
    least five digits where it was catastrophically wrong,
    previously.
  * sum(df) and similar "Summary"- and "Math"-group member functions
    now work for data frames df with logical columns, notably also of
    zero rows.  (Reported to R-devel by Martin "b706".)
  * unsplit() had trouble with tibbles due to unsound use of rep(NA,
    len)-indexing, which should use NA_integer_ (Reported to R-devel
    by Mario Annau.)
  * pnorm(x, log.p = TRUE) underflows to -Inf slightly later.
  * show(&lt;hidden S4 generic&gt;) prints better and without quotes for
    non-hidden S4 generics.
  * read.table() and relatives treated an "NA" column name as missing
    when check.names = FALSE PR#18007.
  * Parsing strings containing UTF-16 surrogate pairs such as
    "\uD834\uDD1E" works better on some (uncommon) platforms.
    sprintf("%X", utf8ToInt("\uD834\uDD1E")) should now give "1D11E"
    on all platforms.
  * identical(x,y) is no longer true for differing DOTSXP objects,
    fixing PR#18032.
  * str() now works correctly for DOTSXP and related exotics, even
    when these are doomed.
    Additionally, it no longer fails for lists with a class and
    "irregular" method definitions such that e.g. lapply(*) will
    necessarily fail, as currently for different igraph objects.
  * Too long lines in environment files (e.g. Renviron) no longer
    crash R. This limit has been increased to 100,000 bytes.
    (PR#18001.)
  * There is a further workaround for FreeType giving incorrect
    italic font faces with cairo-based graphics devices on macOS.
  * add_datalist(*, force = TRUE) (from package tools) now actually
    updates an existing data/datalist file for new content.  (Thanks
    to a report and patch by Sebastian Meyer in PR#18048.)
  * cut.Date() and cut.POSIXt() could produce an empty last interval
    for breaks = "months" or breaks = "years".  (Reported as PR#18053
    by Christopher Carbone.)
  * Detection of the encoding of 'regular' macOS locales such as
    en_US (which is UTF-8) had been broken by a macOS change:
    fortunately these are now rarely used with en_US.UTF-8 being
    preferred.
  * sub() and gsub(pattern, repl, x, *) now keep attributes of x such
    as names() also when pattern is NA (PR#18079).
  * Time differences ("difftime" objects) get a replacement and a
    rep() method to keep "units" consistent.  (Thanks to a report and
    patch by Nicolas Bennett in PR#18066.)
  * The \RdOpts macro, setting defaults for \Sexpr options in an Rd
    file, had been ineffective since R 2.12.0: it now works again.
    (Thanks to a report and patch by Sebastian Meyer in PR#18073.)
  * mclapply and pvec no longer accidentally terminate parallel
    processes started before by mcparallel or related calls in
    package parallel (PR#18078).
  * grep and other functions for evaluating (extended) regular
    expressions handle in Unicode also strings not explicitly flagged
    UTF-8, but flagged native when running in UTF-8 locale.
  * Fixed a crash in fifo implementation on Windows (PR#18031).
  * Binary mode in fifo on Windows is now properly detected from
    argument open (PR#15600, PR#18031).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1622808000">- The line %{__install} -m 755 -d %{_infodir}
  no longer works in TW or Factory.
  But without that line it works everywhere. So this instruction
  was commented out of the spec file.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1628596800">- CHANGES IN R 4.1.1:
  NEW FEATURES:
  * require(pkg, quietly = TRUE) is quieter and in particular does
    not warn if the package is not found.
  DEPRECATED AND DEFUNCT:
  * Use of ftp:// URIs should be regarded as deprecated, with
    on-going support confined to method = "libcurl" and not routinely
    tested.  (Nowadays no major browser supports them.)
  * The non-default method = "internal" is deprecated for http:// and
    ftp:// URIs for both download.file and url.
  * On Windows, method = "wininet" is deprecated for http://,
    https:// and ftp:// URIs for both download.file and url.  (A
    warning is only given for ftp://.)
    For ftp:// URIs the default method is now "libcurl" if available
    (which it is on CRAN builds).
    method = "wininet" remains the default for http:// and https://
    URIs but if libcurl is available, using method = "libcurl" is
    preferred.
  INSTALLATION:
  * make check now works also without a LaTeX installation.  (Thanks
    to Sebastian Meyer's PR#18103.)
  BUG FIXES:
  * make check-devel works again in an R build configured with
  - -without-recommended-packages.
  * qnbinom(p, size, mu) for large size/mu is correct now in a range
    of cases (PR#18095); similarly for the (size, prob)
    parametrization of the negative binomial.  Also qpois() and
    qbinom() are better and or faster for extreme cases.  The
    underlying C code has been modularized and is common to all four
    cases of discrete distributions.
  * gap.axis is now part of the axis() arguments which are passed
    from bxp(), and hence boxplot().  (Thanks to Martin Smith's
    report and suggestions in PR#18109.)
  * .First and .Last can again be set from the site profile.
  * seq.int(from, to, *) and seq.default(..) now work better in large
    range cases where from-to is infinite where the two boundaries
    are finite.
  * all.equal(x,y) now returns TRUE correctly also when several
    entries of abs(x) and abs(y) are close to .Machine$double.xmax,
    the largest finite numeric.
  * model.frame() now clears the object bit when removing the class
    attribute of a value via na.action (PR#18100).
  * charClass() now works with multi-character strings on Windows
    (PR#18104, fixed by Bill Dunlap).
  * encodeString() on Solaris now works again in Latin-1 encoding on
    characters represented differently in UTF-8.  Support for
    surrogate pairs on Solaris has been improved.
  * file.show() on Windows now works with non-ASCII path names
    representable in the current native encoding (PR#18132).
  * Embedded R on Windows can now find R home directory via the
    registry even when installed only for the current user
    (PR#18135).
  * pretty(x) with finite x now returns finite values also in the
    case where the extreme x values are close in size to the maximal
    representable number .Machine$double.xmax.
    Also, it's been tweaked for very small ranges and when a boundary
    is close (or equal) to zero; e.g., pretty(c(0,1e-317)) no longer
    has negative numbers, currently still warning about a very small
    range, and pretty(2^-(1024 - 2^-1/(c(24,10)))) is more accurate.
  * The error message for not finding vignette files when weaving has
    correct file sizes now. (Thanks to Sebastian Meyer's PR#18154.)
  * dnbinom(20, &lt;large&gt;, 1) now correctly gives 0, and similar cases
    are more accurate with underflow precaution.  (Reported by Francisco Vera Alcivar in PR#18072.)</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635163200">- repaired https://bugzilla.suse.com/show_bug.cgi?id=1191380
  (rpmacros now go to rpmmacrodir)
- minor clean-ups in spec file</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635768000">- CHANGES IN R 4.1.2:
  C-LEVEL FACILITIES:
  * The workaround in headers R.h and Rmath.h (using namespace std;)
    for the Oracle Developer Studio compiler is no longer needed now
    C++11 is required so has been removed.  A couple more usages of
    log() (which should have been std::log()) with an int argument
    are reported on Solaris.
  * The undocumented limit of 4095 bytes on messages from the
    S-compatibility macros PROBLEM and MESSAGE is now documented and
    longer messages will be silently truncated rather than
    potentially causing segfaults.
  * If the R_NO_SEGV_HANDLER environment variable is non-empty, the
    signal handler for SEGV/ILL/BUS signals (which offers recovery
    user interface) is not set. This allows more reliable debugging
    of crashes that involve the console.
  DEPRECATED AND DEFUNCT:
  * The legacy S-compatibility macros PROBLEM, MESSAGE, ERROR, WARN,
    WARNING, RECOVER, ... are deprecated and will be hidden in R
    4.2.0. R's native interface of Rf_error and Rf_warning has long
    been preferred.
  BUG FIXES:
  * .mapply(F, dots, .) no longer segfaults when dots is not a list
    and uses match.fun(F) as always documented; reported by Andrew
    Simmons in PR#18164.
  * hist(&lt;Date&gt;, ...) and hist(&lt;POSIXt&gt;, ...)  no longer pass
    arguments for rect() (such as col and density) to axis().
    (Thanks to Sebastian Meyer's PR#18171.)
  * \Sexpr{ch} now preserves Encoding(ch). (Thanks to report and
    patch by Jeroen Ooms in PR#18152.)
  * Setting the RNG to "Marsaglia-Multicarry" e.g., by RNGkind(), now
    warns in more places, thanks to Andr'e Gillibert's report and
    patch in PR#18168.
  * gray(numeric(), alpha=1/2) no longer segfaults, fixing PR#18183,
    reported by Till Krenz.
  * Fixed dnbinom(x, size=&lt;very_small&gt;, .., log=TRUE) regression,
    reported by Martin Morgan.
  * as.Date.POSIXlt(x) now keeps names(x), thanks to Davis Vaughan's
    report and patch in PR#18188.
  * model.response() now strips an "AsIs" class typically, thanks to
    Duncan Murdoch's report and other discussants in PR#18190.
  * try() is considerably faster in case of an error and long call,
    as e.g., from some do.call().  Thanks to Alexander Kaever's
    suggestion posted to R-devel.
  * qqline(y = &lt;object&gt;) such as y=I(.), now works, see also
    PR#18190.
  * Non-integer mgp par() settings are now handled correctly in
    axis() and mtext(), thanks to Mikael Jagan and Duncan Murdoch's
    report and suggestion in PR#18194.
  * formatC(x) returns length zero character() now, rather than ""
    when x is of length zero, as documented, thanks to Davis
    Vaughan's post to R-devel.
  * removeSource(fn) now retains (other) attributes(fn).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1647000000">- CHANGES IN R 4.1.3:
  NEW FEATURES:
  * The default version of Bioconductor has been changed to 3.14.
    (This is used by setRepositories and the menus in GUIs.)
  UTILITIES:
  * R CMD check --as-cran has a workaround for a bug in versions of
    file up to at least 5.41 which mis-identify DBF files last
    changed in 2022 as executables.
  C-LEVEL FACILITIES:
  * The legacy S-compatibility macros SINGLE_* in R_ext/Constants.h
    (included by R.h) are deprecated and will be removed in R 4.2.0.
  BUG FIXES:
  * Initialization of self-starting nls() models with initialization
    functions following the pre-R-4.1.0 API (without the ...
    argument) works again for now, with a deprecation warning.
  * Fixed quoting of ~autodetect~ in Java setting defaults to avoid
    inadvertent user lookup due to leading ~, reported in PR#18231 by
    Harold Gutch.
  * substr(., start, stop) &lt;- v now treats _negative_ stop values
    correctly.  Reported with a patch in PR#18228 by Brodie Gaslam.
  * Subscripting an array x without dimnames by a
    length(dim(x))-column character matrix gave "random" non-sense,
    now an error; reported in PR#18244 by Mikael Jagan.
  * ...names() now matches names(list(...)) closely, fixing PR#18247.
  * all.equal(*, scale = s) now works as intended when length(s) &gt; 1,
    partly thanks to Michael Chirico's PR#18272.
  * print(x) for long vectors x now also works for named atomic
    vectors or lists and prints the correct number when reaching the
    getOption("max.print") limit; partly thanks to a report and
    proposal by Hugh Parsonage to the R-devel list.
  * all.equal(&lt;selfStart&gt;, *) no longer signals a deprecation
    warning.
  * reformulate(*, response=r) gives a helpful error message now when
    length(r) &gt; 1, thanks to Bill Dunlap's PR#18281.
  * Modifying globalCallingHandlers inside withCallingHandlers() now
    works or fails correctly, thanks to Henrik Bengtsson's PR#18257.
  * hist(&lt;Date&gt;, breaks = "days") and hist(&lt;POSIXt&gt;, breaks = "secs")
    no longer fail for inputs of length 1.
  * qbeta(.001, .9, .009) and similar cases now converge correctly
    thanks to Ben Bolker's report in PR#17746.
  * window(x, start, end) no longer wrongly signals "'start' cannot
    be after 'end'", fixing PR#17527 and PR#18291.
  * data() now checks that its (rarely used) list argument is a
    character vector - a couple of packages passed other types and
    gave incorrect results.
  * which() now checks its arr.ind argument is TRUE rather coercing
    to logical and taking the first element - which gave incorrect
    results in package code.
  * model.weights() and model.offset() more carefully extract their
    model components, thanks to Ben Bolker and Tim Taylor's R-devel
    post.
  * list.files(recursive = TRUE) now shows all broken symlinks
    (previously, some of them may have been omitted, PR#18296).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1650628800">- CHANGES IN R 4.2.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * The formula method of aggregate() now matches the generic in
    naming its first argument x (resolving PR#18299 by Thomas
    Soeiro).
    This means that calling aggregate() with a formula as a named
    first argument requires name formula in earlier versions of R and
    name x now, so portable code should not name the argument (code
    in many packages did).
  * Calling &amp;&amp; or || with either argument of length greater than one
    now gives a warning (which it is intended will become an error).
  * Calling if() or while() with a condition of length greater than
    one gives an error rather than a warning.  Consequently,
    environment variable _R_CHECK_LENGTH_1_CONDITION_ no longer has
    any effect.
  * Windows users should consult the WINDOWS section below for some
    profound changes including
  * Support for 32-bit builds has been dropped.
  * UTF-8 locales are used where available.
  * The default locations for the R installation and personal
    library folder have been changed.
    Thanks to Tomas Kalibera for months of work on the Windows port
    for this release.
  NEW FEATURES:
  * matrix(x, n, m) now warns in more cases where length(x) differs
    from n * m, as suggested by Abby Spurdle and Wolfgang Huber in
    Feb 2021 on the R-devel mailing list.
    This warning can be turned into an error by setting environment
    variable _R_CHECK_MATRIX_DATA_ to TRUE: R CMD check --as-cran
    does so unless it is already set.
  * Function file_test() in package utils gains tests for symlinks,
    readability and writability.
  * capabilities("libxml") is now false.
    The description of capabilities("http/ftp") now reflects that it
    refers to the default method, no longer the internal one.
  * simplify2array() gains an except argument for controlling the
    exceptions used by sapply().
  * Environment variables R_LIBS_USER and R_LIBS_SITE are both now
    set to the R system default if unset or empty, and can be set to
    NULL to indicate an empty list of user or site library
    directories.
  * The warning for axis()(-like) calls in cases of relatively small
    ranges (typically in log-scale situations) is slightly improved
    _and_ suppressed from explicit calls to .axisPars() as has always
    been the intention.
  * The contrasts setter function `contrasts&lt;-` gains an explicit
    default how.many = NULL rather than just using missing(how.many).
  * grid.pretty() gains a new optional argument n = 5.
  * There is a new function .pretty() with option bounds as a
    technical-utility version of pretty().  It and pretty() gain a
    new argument f.min with a better than back-compatible default.
  * Function grDevices::axisTicks() and related functions such as
    graphics::axis() work better, notably for the log scale; partly
    because of the pretty() improvements, but also because care is
    taken e.g., when ylim is finite but diff(ylim) is infinite.
  * nclass.FD() gains a digits option.
  * The R Mathlib internal C function bd0() (called indirectly from a
    dozen probability density and distribution functions such as
    dpois(), dbinom(), dgamma(), pgamma() _etc_) has been
    complemented by a more sophisticated and (mostly) more accurate C
    function ebd0(), currently called only by internal dpois_raw()
    improving accuracy for R level dpois() and potentially others
    calling it such as dnbinom(), dgamma() or pgamma().  (Thanks to
    Morten Welinder's PR#15628.)
  * write.ftable() gains sep = " " argument as suggested by Thomas
    Soeiro.
  * The names of the locale categories supported by R's
    Sys.getlocale() and Sys.setlocale() are now provided by variable
    .LC.categories in the base namespace.
  * The Date and POSIXt methods for hist() and the histogram method
    for plot() now also use the new default col = "lightgray" in
    consistency with the corresponding change to hist()'s default for
    R 4.0.0.
  * hist.default() gains new fuzz argument, and the histogram plot
    method no longer uses fractional axis ticks when displaying
    counts ("Frequency").
  * mapply() and hence Map() now also obey the "max-or-0-if-any"
    recycling rule, such that, e.g., Map(`+`, 1:3, 1[0]) is valid
    now.
  * as.character(&lt;obj&gt;) for "hexmode" or "octmode" objects now
    fulfils the important basic rule as.character(x)[j] ===
    as.character(x[j]).
  * The set utility functions, notably intersect() have been tweaked
    to be more consistent and symmetric in their two set arguments,
    also preserving a common mode.
  * substr(ch, start,end) &lt;- new now e.g., preserves names(ch); ditto
    for substring(), thanks to a patch from Brodie Gaslam.
  * plot(&lt;lm&gt;) gains a extend.ylim.f argument, in partial response to
    PR#15285; further PR#17784 is fixed thanks to several
    contributors and a patch by Elin Waring.  The Cook's dist
    contours get customizable via cook.col and cook.lty with a
    different default color and their legend is nicer by default and
    customizable via cook.legendChanges.
  * Attempting to subset an object that is not subsettable now
    signals an error of class notSubsettableError. The
    non-subsettable object is contained in the object field of the
    error condition.
  * Subscript-out-of-bounds errors are now signaled as errors of
    class subscriptOutOfBoundsError.
  * Stack-overflow errors are now signaled as errors inheriting from
    class stackOverflowError. See ?stackOverflowError for more
    details.
  * New partly experimental Sys.setLanguage() utility, solving the
    main problem of PR#18055.
  * gettext() and gettextf() get a new option trim = TRUE which when
    set to false allows translations for strings such as "Execution
    halted\n" typical for C code.
  * An experimental implementation of hash tables is now available.
    See ?hashtab for more details.
  * identical() gains a extptr.as.ref argument for requesting that
    external pointer objects be compared as reference objects.
  * reorder() gets an argument decreasing which it passes to sort()
    for level creation; based on the wish and patch by Thomas Soeiro
    in PR#18243.
  * as.vector() gains a data.frame method which returns a simple
    named list, also clearing a long standing 'FIXME' to enable
    as.vector(&lt;data.frame&gt;, mode="list").  This breaks code relying
    on as.vector(&lt;data.frame&gt;) to return the unchanged data frame.
  * legend() is now vectorized for arguments cex, x.intersp, and
    text.width.  The latter can now also be specified as a vector
    (one element for each column of the legend) or as NA for
    computing a proper column wise maximum value of strwidth(legend).
    The argument y.intersp can be specified as a vector with one
    entry for each row of the legend.
    legend() also gains new arguments title.cex and title.font.
    Thanks to Swetlana Herbrandt.
  * Deparsing no longer remaps attribute names dim, dimnames, levels,
    names and tsp to historical S-compatible names (which structure()
    maps back).
  * sample() and sample.int() have additional sanity checks on their
    size and n arguments.
    all.equal.numeric() gains a sanity check on its tolerance
    argument - calling all.equal(a, b, c) for three numeric vectors
    is a surprisingly common error.
    mean(na.rm =), rank(na.last =), barplot(legend.text =),
    boxplot(), contour(drawlabels =), polygon(border =) and
    methods::is(class2 =) have more robust sanity checks on their
    arguments.
    R CMD Rd2pdf (used by R CMD check) has a more robust sanity check
    on the format of \alias{} commands.
  * psigamma(x, deriv) for negative x now also works for deriv = 4
    and 5; their underlying C level dpsifn() is documented in
    'Writing R Extensions'.
  * The HTML help system now uses HTML5 (wish of PR#18149).
  * ks.test() now provides exact p-values also with ties and MC
    p-values in the two-sample (Smirnov) case.  By Torsten Hothorn.
  * ks.test() gains a formula interface, with y ~ 1 for the
    one-sample (Kolmogorov) test and y ~ group for the two-sample
    (Smirnov) test.  Contributed by Torsten Hothorn.
  * The return value from ks.test() now has class c("ks.test",
    "htest") - packages using try() need to take care to use
    inherits() and not == on the class.
  * New functions psmirnov(), qsmirnov() and rsmirnov() in package
    stats implementing the asymptotic and exact distributions of the
    two-sample Smirnov statistic.
  * iconv() now allows sub = "c99" to use C99-style escapes for UTF-8
    inputs which cannot be converted to encoding to.
  * In a forward pipe |&gt; expression it is now possible to use a named
    argument with the placeholder _ in the rhs call to specify where
    the lhs is to be inserted.  The placeholder can only appear once
    on the rhs.
  * The included LAPACK sources have been updated to version 3.10.0,
    except for the four Fortran 77 routines which 3.10.0 has
    re-implemented in Fortran 90 (where the older versions have been
    retained as the R build process does not support Fortran 90).
  * path.expand() and most other uses of tilde expansion now warn if
    a path would be too long if expanded.  (An exception is
    file.exists(), which silently returns false.)
  * trunc(&lt;Date&gt;, *) now supports units = "months" or "years" for
    consistency with the POSIXt method, thanks to Dirk Eddelbuettel's
    proposal in PR#18099.
  * list2DF() now checks that its arguments are of the same length,
    rather than use recycling.
  * The HTML help system has several new features: LaTeX-like math
    can be typeset using either KaTeX or MathJax, usage and example
    code is highlighted using Prism, and for dynamic help the output
    of examples and demos can be shown within the browser if the
    knitr package is installed. These features can be disabled by
    setting the environment variable _R_HELP_ENABLE_ENHANCED_HTML_ to
    a false value.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 15
    and so packages that provide graphics devices should be
    reinstalled.
  * The grid package now allows the user to specify a "vector" of
    pattern fills.  The fill argument to gpar() accepts a list of
    gradients and/or patterns and the functions linearGradient(),
    radialGradient(), and pattern() have a new group argument.
    Points grobs (data symbols) can now also have a pattern fill.
    The grobCoords() function now returns a more informative and
    complex result.
  * The grid package has new functions for drawing isolated groups:
    grid.group(), grid.define(), and grid.use().  These functions add
    compositing operators and affine transformations to R's graphics
    capabilities.
    The grid package also has new functions for stroking and filling
    paths: grid.stroke(), grid.fill(), and grid.fillStroke().
    A new function as.path() allows the user to specify the fill rule
    for a path that is to be used for clipping, stroking, or filling;
    available options are "winding" and "evenodd".  A new function
    as.mask() allows the user to specify the type of a mask;
    available options are "alpha" and "luminance".
    These new features are only supported so far (at most) on the
    Cairo-based graphics devices and on the pdf() device.
  * dev.capabilities() reports on device support for the new
    features.
  * par() now warns about unnamed non-character arguments to prevent
    misuse such as {usr &lt;- par("usr"); par(usr)}.
  INSTALLATION:
  * Facilities for accessing ftp:// sites are no longer tested
    (except _pro tem_ for curlGetHeaders()) as modern browsers have
    removed support.
  * R can now be built with DEFS = -DSTRICT_R_HEADERS .
  PACKAGE INSTALLATION:
  * R CMD INSTALL no longer tangles vignettes. This completes an R
    CMD build change in R 3.0.0 and affects packages built before R
    3.0.2. Such packages should be re-made with R CMD build to have
    the tangled R code of vignettes shipped with the tarball.
  * USE_FC_LEN_T will become the default: this uses the correct
    prototypes for Fortran BLAS/LAPACK routines called from C/C++,
    and requires adjustment of most such calls - see 'Writing R
    Extensions' SS6.6.2.  (This has been supported since R 3.6.2.)
  * Package installation speed for packages installed with
    keep.source has been improved. This resolve the issue reported by
    Ofek Shilon in PR#18236.
  UTILITIES:
  * R CMD check can optionally report files/directories left behind
    in home, /tmp (even though TMPDIR is set) and other directories.
    See the "R Internals" manual for details.
  * R CMD check now reports byte-compilation errors during
    installation.  These are not usually fatal but may result in
    parts of the package not being byte-compiled.
  * _R_CHECK_DEPENDS_ONLY_ can be applied selectively to examples,
    tests and/or vignettes in R CMD check: see the "R Internals"
    manual.
  * _R_CHECK_SRC_MINUS_W_IMPLICIT_ now defaults to true: recent
    versions of Apple clang on macOS have made implicit function
    declarations in C into a compilation error.
  * R CMD check --as-cran makes use of the environment variable
    AUTORECONF.  See the "R Internals" manual SS8 for further details.
  * R CMD check --use-valgrind also uses valgrind when re-building
    vignettes as some non-Sweave vignettes unhelpfully comment out
    all their code when R CMD check runs vignettes.
  * Errors in re-building vignettes (unless there are LaTeX errors)
    are reported by R CMD check as ERROR rather than WARNING when
    running vignettes has been skipped (as it frequently is in CRAN
    checks and by --as-cran).
  * R CMD Rd2pdf gains a --quiet option that is used by R CMD build
    when building the PDF package manual.
  * R CMD Rd2pdf now always runs LaTeX in batch mode, consistent with
    Texinfo &gt;= 6.7. The --batch option is ignored.
  * R CMD build and R CMD check now include the Rd file name and line
    numbers in the error message of an \Sexpr evaluation failure.
  * For packages using the \doi Rd macro (now an install-time \Sexpr)
    but no other dynamic Rd content, R CMD build now produces a
    smaller tarball and is considerably faster - skipping temporary
    package installation.
  C-LEVEL FACILITIES:
  * The non-API header R_ext/R-ftp-http.h is no longer provided, as
    the entry points it covered are now all defunct.
  * A number of non-API declarations and macro definitions have been
    moved from the installed header Rinternals.h to the internal
    header Defn.h. Packages that only use entry points and
    definitions documented to be part of the API as specified in
    'Writing R Extensions' SS6 should not be affected.
  * The macro USE_RINTERNALS no longer has any effect when compiling
    package code.  Packages which also use R_NO_REMAP will need to
    ensure that the remapped names are used for calls to API
    functions that were formerly also made available as macros.
  * The deprecated legacy S-compatibility macros PROBLEM, MESSAGE,
    ERROR, WARN, WARNING, RECOVER, ... are no longer defined in
    R_exts/RS.h (included by R.h).  Replace these by calls to
    Rf_error and Rf_warning (defined in header R_ext/Error.h included
    by R.h).
    Header R_ext/RS.h no longer includes R_ext/Error.h.
  * Header R_ext/Constants.h (included by R.h) when included from C++
    now includes the C++ header cfloat rather than the C header
    float.h (now possible as C++11 is required).
  * The legacy S-compatibility macros DOUBLE_* in R_ext/Constants.h
    (included by R.h) are deprecated.
  * The deprecated S-compatibility macros SINGLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * R_Calloc, R_Free and R_Realloc are preferred to their unprefixed
    forms and error messages now use the prefix. These forms were
    introduced in R 3.4.0 and are available even when
    STRICT_R_HEADERS is defined.
  * rmultinom has been documented in 'Writing R Extensions' SS6 so is
    now part of the R API.
  * Similarly, Rtanpi, called from R level tanpi() is now part of the
    R API.
  * The long-deprecated, undocumented and non-API entry point call_R
    is no longer declared in R_ext/RS.h (included by R.h).
  * The header S.h which has been unsupported since Jan 2016 has been
    removed.  Use R.h instead.
  DEPRECATED AND DEFUNCT:
  * The (non-default and deprecated) method = "internal" for
    download.file() and url() no longer supports http:// nor ftp://
    URIs.  (It is used only for file:// URIs.)
    On Windows, download.file(method = "wininet") no longer supports
    ftp:// URIs.  (It is no longer the default method, which is
    "libcurl" and does.)
    On Windows, the deprecated method = "wininet" now gives a warning
    for http:// and https:// URIs for both download.file() and url().
    (It is no longer the default method.)
  * On Windows, the command-line option --max-mem-size and
    environment variable R_MAX_MEM_SIZE are defunct.  The memory
    allocation limit was important for 32-bit builds, but these are
    no longer supported.
  * default.stringsAsFactors() is now formally deprecated, where that
    was only mentioned on its regular help page, previously.  So it
    now gives a warning if called.
  * unix.time() is defunct now; it had been deprecated since R 3.4.0.
  BUG FIXES:
  * Setting digits = 0 in format(), print.default() (and hence
    typically print()) or options() is again invalid.  Its behaviour
    was platform-dependent, and it is unclear what "zero significant
    digits" should mean (PR#18098).
  * Messages from C code in the cairo section of package grDevices
    are now also offered for translation, thanks to Michael Chirico's
    PR#18123.
  * mean(x) with finite x now is finite also without "long.double"
    capability.
  * R CMD Rd2pdf no longer leaves an empty build directory behind
    when it aborts due to an already existing output file.  (Thanks
    to Sebastian Meyer's PR#18141.)
  * density(x, weights = w, na.rm = TRUE) when anyNA(x) is true, now
    removes weights "in parallel" to x, fixing PR#18151, reported by
    Matthias Gondan.  Additionally, it gets a subdensity option.
  * Conversion of \Sexpr[]{&lt;expR&gt;} to LaTeX or HTML no longer
    produces long blocks of empty lines when &lt;expR&gt; itself contains
    several lines all producing empty output.  Thanks to a report and
    patch by Ivan Krylov posted to R-devel.
  * R CMD build no longer fails if a package vignette uses child
    documents and inst/doc exists.  (Thanks to Sebastian Meyer's
    PR#18156.)
  * When an R documentation ('help' source) file man/foo.Rd in a
    package has \donttest{..} examples with a syntax error, it is now
    signalled as ERROR and with correct line numbers relating to the
  * -Ex.R file, thanks to Duncan Murdoch and Sebastian Meyer's
    reports and patch proposals in PR#17501.
  * Improved determination of the correct translation domain in
    non-base packages, addressing the combination of PR#18092 and
    PR#17998 (#c6) with reports and _augmented_ patch #2904 by
    Suharto Anggono.
    Note that "R-base" is no longer the default domain e.g., for
    top-level calls to gettext(); rather translation needs explicit
    domain = * specification in such cases.
  * identical(attrib.as.set=FALSE) now works correctly with data
    frames with default row names (Thanks to Charlie Gao's PR#18179).
  * txtProgressBar() now enforces a non-zero width for argument char,
    without which no progress can be visible.
  * dimnames(table(d)) is more consistent in the case where d is a
    list with a single component, thanks to Thomas Soeiro's report to
    R-devel.
    Further, table(d1, d2) now gives an error when d1 and d2 are data
    frames as suggested by Thomas in PR#18224.
  * Fix for drawing semi-transparent lines and fills on the native
    Windows graphics device (PR#18219 and PR#16694).  Thanks to Nick
    Ray for helpful diagnosis on Bugzilla.
  * The deparser now wraps sub-expressions such as if(A) ..  with
    parentheses when needed; thanks to Duncan Murdoch's PR#18232 and
    Lionel Henry's patches there.
  * remove.packages() no longer tries to uninstall Priority: base
    packages, thanks to a report and suggestions by Colin Fay in
    PR#18227.
  * win.metafile() now has xpinch and ypinch arguments so that the
    user can override Windows' (potentially wrong) guess at device
    dimensions.
  * x[i] and x[[i]] for non-integer i should now behave in all cases
    as always documented: the index used is equivalent to
    as.integer(i) unless that would overflow where trunc(i) is used
    instead; thanks to Suharto Anggono's report and patch proposals
    in PR#17977.
  * asOneSidedFormula() now associates the resulting formula with the
    global environment rather than the evaluation environment created
    for the call.
  * &lt;bibentry&gt;$name now matches the field name case-insensitively,
    consistent with bibentry() creation and the replacement method.
  * cbind() failed to detect some length mismatches with a mixture of
    time-series and non-time-series inputs.
  * The default LaTeX style file Sweave.sty used by the RweaveLatex
    driver no longer loads the obsolete ae package; thanks to a
    report by Thomas Soeiro in PR#18271.  Furthermore, it now skips
    \usepackage[T1]{fontenc} for engines other than pdfTeX (if
    detected) or if the new [nofontenc] option is used.
  * smooth.spline() now stores its logical cv argument more safely,
    fixing a rare bug when printing, and also stores n.
  * smooth.spline(x,y,*) now computes the cv.crit statistic
    correctly, also when is.unsorted(x), fixing PR#18294.
  * The data.frame method of rbind() now warns when binding
    not-wholly-recycling vectors, by analogy to the default method
    (for matrices).
  * setAs() finds the correct class for name to when multiple
    packages define a class with that name. Thanks to Gabor Csardi
    for the report.
  * Fix for detaching a package when two classes of the same name are
    present in method signatures for the same generic. Thanks to
    Gabor Csardi for the report.
  * match.arg("", c("", "a", "B")) gives a better error message, in
    part from PR#17959, thanks to Elin Waring.
  * R CMD Sweave --clean no longer removes pre-existing files or
    subdirectories (PR#18242).
  * The quartz() device no longer splits polylines into subpaths.
    That has caused narrowly-spaced lines with many points to always
    look solid even when dashed line type was used due to dash phase
    restarts.
  * Deparsing constructs such as quote(1 + `!`(2) + 3) works again as
    before R 3.5.0, thanks to the report and patch in PR#18284 by
    Suharto Anggono.
  * as.list(f) for a factor f now keeps names(f), fixing PR#18309.
  * qbeta(.001, .9, .009) and analogous qf() calls now return a
    correct value instead of NaN or wrongly 1, all with a warning;
    thanks to the report by Ludger Goeminne in PR#18302.
  * plot.lm() failed to produce the plot of residuals vs.  factor
    levels (i.e., which=5 when leverages are constant) for models
    with character predictors (PR#17840).
  * interaction.plot(..., xtick = TRUE) misplaced the x-axis line
    (PR#18305).
  * Not strictly fixing a bug, format()ing and print()ing of
    non-finite Date and POSIXt values NaN and +/-Inf no longer show
    as NA but the respective string, e.g., Inf, for consistency with
    numeric vector's behaviour, fulfilling the wish of PR#18308.
  * R CMD check no longer runs test scripts generated from
    corresponding .Rin files twice and now signals an ERROR if
    processing an .Rin script fails.
  * tools::Rd2txt() used for plain-text help pages now renders \hrefs
    (if tools::Rd2txt_options(showURLs = TRUE)) and \urls with
    percent-encoding and standards-compliant delimiting style (angle
    brackets and no URL: prefix).  \email is now rendered with a
    mailto: prefix.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1655985600">- CHANGES IN R 4.2.1:
  NEW FEATURES:
  * New function utils::findCRANmirror() to find out if a CRAN mirror
    has been selected, otherwise fallback to the main site.  This
    behaves in the same way as tools::CRAN_package_db() and is
    intended for packages wishing to access CRAN for purposes other
    than installing packages.
    The need for this was shown by a day when the main CRAN website
    was offline and a dozen or so packages which had its URL
    hardcoded failed their checks.
  INSTALLATION on a UNIX-ALIKE:
  * The libraries searched for by --with-blas (without a value) now
    include BLIS (after OpenBLAS but before ATLAS).  And on macOS,
    the Accelerate framework (after ATLAS).  (This is patterned after
    the AX_BLAS macro from the Autoconf Archive.)
  * The included LAPACK sources have been updated to 3.10.1.
  UTILITIES:
  * The (full path to) the command tidy to be used for HTML
    validation can be set by environment variable R_TIDYCMD.
  * Setting environment variable _R_CHECK_RD_VALIDATE_RD2HTML_ to a
    false value will override R CMD check --as-cran and turn off HTML
    validation.  This provides a way to circumvent a problematic
    tidy.
    The 2006 version that ships with macOS is always skipped.
  C-LEVEL FACILITIES:
  * The undocumented legacy declarations of Sint, Sfloat, SINT_MAX
    and SINT_MIN in header R.h are deprecated.
  BUG FIXES:
  * fisher.test(d) no longer segfaults for "large" d; fixing PR#18336
    by preventing/detecting an integer overflow reliably.
  * tar(., files=*) now produces correctly the warning about invalid
    uid or gid of files, fixing PR#18344, reported by Martin Morgan.
  * tk_choose.files() with multi = FALSE misbehaved on paths
    containing spaces (PR#18334) (regression introduced in R 4.0.0).
  * sort(x, partial = ind, *) now works correctly notably for the
    non-default na.last = FALSE or TRUE, fixing PR#18335 reported by
    James Edwards.
  * Environment variable _R_CHECK_XREFS_REPOSITORIES_ is only used
    for checking .Rd cross-references in R CMD check (as documented)
    and not for other uses looking for a CRAN mirror.
  * The search for a CRAN mirror when checking packages now uses
    getOption("repos") if that specifies a CRAN mirror, even when it
    does not also specify all three Bioconductor repositories (as was
    previously required).
  * The HTML code generated by tools::Rd2HTML() has been improved to
    pass tidy 5.8.0.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1667217600">- CHANGES IN R 4.2.2:
  NEW FEATURES:
  * tools::Rdiff(useDiff = TRUE) checks for the presence of an
    external diff command and switches to useDiff = FALSE if none is
    found.  This allows R CMD Rdiff to always work.
  * On Windows, environment variable R_LIBCURL_SSL_REVOKE_BEST_EFFORT
    can be used to switch to only 'best-effort' SSL certificate
    revocation checks with the default "libcurl" download method.
    This reduces security, but may be needed for downloads to work
    with MITM proxies (PR#18379).
  * (macOS) The run-time check for libraries from XQuartz for X11 and
    Tcl/Tk no longer uses otool from the Apple Developer Tools
    (PR#18400).
  * The LaTeX style for producing the PDF manuals, Rd.sty, now loads
    the standard amsmath, amsfonts and amssymb packages for greater
    coverage of math commands in the Rd \eqn and \deqn macros.  The
    \mathscr LaTeX command is also provided (via the mathrsfs
    package, if available, or the amsfonts bundle otherwise),
    fulfilling the wish of PR#18398.
  * (Windows) The default format of readClipboard() and
    writeClipboard() has been changed to 13 (CF_UNICODETEXT).
  INSTALLATION on a UNIX-ALIKE:
  * The PDF manuals (if built) can be compacted by the new target
    make compact-pdf (at the top level or in directory doc/manual).
  * There is now configure support for LLVM clang 15 on Linux, which
    defaults to position-independent (PIE) executables whereas
    gfortran does not.
  * Many small changes to ease compilation (and suppress warnings)
    with LLVM clang 15.
  BUG FIXES:
  * Rscript -e would fail if stdin were closed (Reported by Henrik
    Bengtsson.)
  * qt(*, log.p=TRUE) in outer tails no longer produces NaN in its
    final steps, thus fixing PR#18360.
  * tools::Rd2latex() now escapes hashes and ampersands when writing
    URLs, fixing LaTeX errors with such URLs in \tabular.
  * When isGeneric(f, fdef=*) is used with mismatching names, the
    warning is better understandable; reported (with fix) in PR#18370
    by Gabe Becker.
  * poly(x, n) now works again (and is now documented) when x is a
    "Date" or "POSIXct" object, or of another class while fulfilling
    mode(x) == "numeric".  This also enables poly(x, *, raw=TRUE) for
    such variables.  Reported by Michael Chirico to R-devel.
  * write.table(), write.csv() and write.csv2() restore their
    numerical precision (internal equivalent of digits = 15) after an
    interrupt (PR#18384).
  * One can now read also byte FF from a clipboard connection
    (PR#18385).
  * source("") and source(character()) now give more helpful error
    messages.
  * R CMD check --as-cran set _R_CHECK_TIMINGS_ too late to have the
    intended effect.
  * as.POSIXlt(x) now also works with very large dates x, fixing
    PR#18401 reported by Hannes M"uhleisen.
  * Files can now be extracted even from very large zip archives
    (PR#18390, thanks to Martin Jakt).
  * Non-finite objects of class "POSIXlt" are now correctly coerced
    to classes "Date" and "POSIXct"; following up on the extension to
    format() them correctly.
  * Added methods for is.finite(), is.infinite() and is.nan() for
    "POSIXlt" date-time objects.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1678881600">- CHANGES IN R 4.2.3:
  C-LEVEL FACILITIES:
  * The definition of DL_FUNC in R_ext/Rdynload.h has been changed to
    be fully C-compliant.  This means that functions loaded _via_ for
    example R_GetCCallable need to be cast to an appropriate type if
    they have any arguments.
  * .Machine has a new element sizeof.time_t to identify old systems
    with a 32-bit type and hence a limited range of date-times (and
    limited support for dates millions of years from present).
  PACKAGE INSTALLATION:
  * (Windows) The default C++ standard had accidentally been left at
    C++11 when it was changed to C++14 on Unix.
  BUG FIXES:
  * As "POSIXlt" objects may be "partially filled" and their list
    components meant to be recycled, length() now is the length of
    the longest component.
  * as.POSIXlt.Date() could underflow for dates in the far past (more
    than half a million years BCE).
  * as.Date.POSIXlt(x) would return "1970-01-01" instead of NA in R
    4.2.2, e.g., for
    x &lt;- as.POSIXlt(c("2019-01-30","2001-1-1"))
    x$mon &lt;- c(0L, NA); as.Date(x)
  * R CMD check failed to apply enabled _R_CHECK_SUGGESTS_ONLY_ to
    examples and vignettes (regression in R 4.2.0).
  * R CMD check did not re-build vignettes in separate processes by
    default (regression in R 4.2.0).
  * Running examples from HTML documentation now restores previous
    knitr settings and options (PR#18420).
  * Quartz: fonts are now located using Core Graphics API instead of
    deprecated ATS which is no longer supported in the macOS 13 SDK
    (PR#18426).  This also addresses an issue where the currently
    used font in the Quartz device context was not correctly
    retained.
  * (Windows) Math symbols in text drawing functions are again
    rendered correctly (PR#18440).  This fixes a regression in R
    4.2.1 caused by a fix in PR#18382 which uncovered an issue in
    GraphApp due to which the symbol charset was not used with TT
    Symbol font face.
  * (Windows) Installing a package with a src/Makefile.{win,ucrt}
    file includes ~/.R/Makevars.win64 in the search for user
    makevars, as documented in "R Installation and Administration"
    and done for packages with a src/Makevars.{win,ucrt} file.
  * format(&lt;POSIXlt_w/_unbalanced_sec&gt;, "....%OS&lt;n&gt;") with n &gt; 0 no
    longer accidentally uses the unbalanced seconds, thanks to
    Suharto Anggono's report (including patch) in PR#18448.
  * solve.default(a, b) works around issues with some versions of
    LAPACK when a contains NA or NaN values.
  * When UseMethod() cannot dispatch, it no longer segfaults
    producing the error message in case of a long class(), thanks to
    Joris Vankerschaver's report (including patch) in PR#18447.
  * When example(foo, ..) produces graphics on an interactive device
    it needs to open itself, it now leaves devAskNewPage() unchanged
    even when it was FALSE, thus fixing a 14 years old '&lt;FIXME&gt;'.
  * packageDescription() again catches errors from encoding
    conversions. This also fixes broken packageVersion() in C locale
    on systems where iconv does not support transliteration.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1681128000">- add patch to build with libcurl &gt;= 8</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1682078400">- CHANGES IN R 4.3.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Calling &amp;&amp; or || with LHS or (if evaluated) RHS of length greater
    than one is now always an error, with a report of the form
    'length = 4' in coercion to 'logical(1)'
    Environment variable _R_CHECK_LENGTH_1_LOGIC2_ no longer has any
    effect.
  NEW FEATURES:
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.10.1.  (This caused some platform-dependent
    changes to package check output.)  And then to the sources from
    LAPACK version 3.11.0 (with changes only to double complex
    subroutines).
  * The included LAPACK sources have been updated to include the four
    Fortran 90 routines rather than their Fortran 77 predecessors.
    This may give some different signs in SVDs or
    eigendecompositions..  (This completes the transition to LAPACK
    3.10.x begun in R 4.2.0.)
  * The LAPACK sources have been updated to version 3.11.0.  (No new
    subroutines have been added, so this almost entirely bug fixes:
    Those fixes do affect some computations with NaNs, including R's
    NA.)
  * The parser now signals _classed_ errors, notably in case of the
    pipe operator |&gt;.  The error object and message now give line and
    column numbers, mostly as proposed and provided by Duncan Murdoch
    in PR#18328.
  * toeplitz() is now generalized for asymmetric cases, with a
    toeplitz2() variant.
  * xy.coords() and xyz.coords() and consequently, e.g., plot(x,y,
    log = "y") now signal a _classed_ warning about negative values
    of y (where log(.) is NA).  Such a warning can be specifically
    suppressed or caught otherwise.
  * Regular expression functions now check more thoroughly whether
    their inputs are valid strings (in their encoding, e.g. in
    UTF-8).
  * The performance of grep(), sub(), gsub() and strsplit() has been
    improved, particularly with perl = TRUE and fixed = TRUE.  Use of
    useBytes = TRUE for performance reasons should no longer be
    needed and is discouraged: it may lead to incorrect results.
  * apropos() gains an argument dot_internals which is used by the
    completion (help(rcompgen)) engine to also see base internals
    such as .POSIXct().
  * Support in tools::Rdiff() for comparing uncompressed PDF files is
    further reduced - see its help page.
  * qqplot(x, y, ...) gains conf.level and conf.args arguments for
    computing and plotting a confidence band for the treatment
    function transforming the distribution of x into the distribution
    of y (Switzer, 1976, _Biometrika_). Contributed by Torsten
    Hothorn.
  * Performance of package_dependencies() has been improved for cases
    when the number of dependencies is large.
  * Strings newly created by gsub(), sub() and strsplit(), when any
    of the inputs is marked as "bytes", are also marked as "bytes".
    This reduces the risk of creating invalid strings and accidental
    substitution of bytes deemed invalid.
  * Support for readLines(encoding = "bytes") has been added to allow
    processing special text files byte-by-byte, without creating
    invalid strings.
  * iconv(from = "") now takes into account any declared encoding of
    the input elements and uses it in preference to the native
    encoding.  This reduces the risk of accidental creation of
    invalid strings, particularly when different elements of the
    input have different encoding (including "bytes").
  * Package repositories in getOption("repos") are now initialized
    from the repositories file when utils is loaded (if not already
    set, e.g., in .Rprofile).  (From a report and patch proposal by
    Gabriel Becker in PR#18405.)
  * compactPDF() gets a verbose option.
  * type.convert() and hence read.table() get new option tryLogical =
    TRUE with back compatible default.  When set to false, converts
    "F" or "T" columns to character.
  * Added new unit prefixes "R" and "Q" for abbreviating
    (unrealistically large) sizes beyond 10^{27} in standard = "SI",
    thanks to Henrik Bengtsson's PR#18435.
  * as.data.frame()'s default method now also works fine with atomic
    objects inheriting from classes such as "roman", "octmode" and
    "hexmode", such fulfilling the wish of PR#18421, by Benjamin
    Feakins.
  * The as.data.frame.vector() utility now errors for wrong-length
    row.names.  It warned for almost six years, with "Will be an
    error!".
  * sessionInfo() now also contains La_version() and reports codepage
    and timezone when relevant, in both print() and toLatex() methods
    which also get new option tzone for displaying timezone
    information when locale = FALSE.
  * New function R_compiled_by() reports the C and Fortran compilers
    used to build R, if known.
  * predict(&lt;lm&gt;, newdata = *) no longer unnecessarily creates an
    offset of all 0s.
  * solve() for complex inputs now uses argument tol and by default
    checks for 'computational singularity' (as it long has done for
    numeric inputs).
  * predict(&lt;rank-deficient lm&gt;, newdata=*) now obeys a new argument
    rankdeficient, with new default "warnif", warning only if there
    are non-estimable cases in newdata.  Other options include
    rankdeficient = "NA", predicting NA for non-estimable newdata
    cases.  This addresses PR#15072 by Russ Lenth and is based on his
    original proposal and discussions in PR#16158 also by David Firth
    and Elin Waring.  Still somewhat experimental.
  * Rgui console implementation now works better with the NVDA screen
    reader when the full blinking cursor is selected.  The underlying
    improvements in cursor handling may help also other screen
    readers on Windows.
  * The drop-field control in GraphApp can now be left with the TAB
    key and all controls can be navigated in the reverse order using
    the Shift+TAB key, improving accessibility of the Rgui
    configuration editor.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now fully accurate
    (instead of to "only" minimally five digits).
  * demo(error.catching) now also shows off withWarnings() and
    tryCatchWEMs().
  * As an experimental feature the placeholder _ can now also be used
    in the rhs of a forward pipe |&gt; expression as the first argument
    in an extraction call, such as _$coef. More generally, it can be
    used as the head of a chain of extractions, such as _$coef[[2]].
  * Spaces in the environment variable used to choose the R session's
    temporary directory (TMPDIR, TMP and TEMP are tried in turn) are
    now fatal.  (On Windows the 'short path' version of the path is
    tried and used if that does not contain a space.)
  * all.equal.numeric() gets a new optional switch giveErr to return
    the numeric error as attribute.  Relatedly,
    stopifnot(all.equal&lt;some&gt;(a, b, ..)) is as "smart" now, as
    stopifnot(all.equal(....)) has been already, thus allowing
    customized all.equal&lt;Some&gt;() wrappers.
  * R on Windows is now able to work with path names longer than 260
    characters when these are enabled in the system (requires at
    least Windows 10 version 1607).  Packages should be updated to
    work with long paths as well, instead of assuming PATH_MAX to be
    the maximum length.  Custom front-ends and applications embedding
    R need to update their manifests if they wish to allow this
    feature.  See
    &lt;https://blog.r-project.org/2023/03/07/path-length-limit-on-windows&gt;
    for more information.
  * 'Object not found' and 'Missing argument' errors now give a more
    accurate error context. Patch provided by Lionel Henry in
    PR#18241.
  * The @ operator is now an S3 generic. Based on contributions by
    Tomasz Kalinowski in PR#18482.
  * New generic chooseOpsMethod() provides a mechanism for objects to
    resolve cases where two suitable methods are found for an Ops
    Group Generic. This supports experimenting with alternative
    object systems. Based on contributions by Tomasz Kalinowski in
    PR#18484.
  * inherits(x, what) now accepts values other than a simple
    character vector for argument what. A new generic, nameOfClass(),
    is called to resolve the class name from what. This supports
    experimenting with alternative object systems. Based on
    contributions by Tomasz Kalinowski in PR#18485.
  * Detection of BLAS/LAPACK in use (sessionInfo()) with FlexiBLAS
    now reports the current backend.
  * The "data.frame" method for subset() now warns about extraneous
    arguments, typically catching the use of = instead of == in the
    subset expression.
  * Calling a:b when numeric a or b is longer than one may now be
    made into an error by setting environment variable
    _R_CHECK_LENGTH_COLON_ to a true value, along the proposal in
    PR#18419 by Henrik Bengtsson.
  * density(x, weights = *) now warns if automatic bandwidth
    selection happens without using weights; new optional warnWbw may
    suppress the warning.  Prompted by Christoph Dalitz' PR#18490 and
    its discussants.
  * rm(list = *) is faster and more readable thanks to Kevin Ushey's
    PR#18492.
  * The plot.lm() function no longer produces a normal Q-Q plot for
    GLMs. Instead it plots a half-normal Q-Q plot of the absolute
    value of the standardized deviance residuals.
  * The print() method for class "summary.glm" no longer shows
    summary statistics for the deviance residuals by default.  Its
    optional argument show.residuals can be used to show them if
    required.
  * The tapply() function now accepts a data frame as its X argument,
    and allows INDEX to be a formula in that case. by.data.frame()
    similarly allows INDICES to be a formula.
  * The performance of df[j] &lt;- value (including for missing j) and
    write.table(df) has been improved for data frames df with a large
    number of columns.  (Thanks to Gabriel Becker's PR#18500,
    PR#18503 and discussants, prompted by a report from Toby Dylan
    Hocking on the R-devel mailing list.)
  * The matrix multiply operator %*% is now an S3 generic, belonging
    to new group generic matrixOps.  From Tomasz Kalinowski's
    contribution in PR#18483.
  * New function array2DF() to convert arrays to data frames,
    particularly useful for the list arrays created by tapply().
  DATES and TIMES:
  * On platforms where (non-UTC) datetimes before 1902 (or before
    1900 as with system functions on recent macOS) are guessed by
    extrapolating time zones from 1902-2037, there is a warning at
    the first use of extrapolation in a session.  (As all time zones
    post 2037 are extrapolation, we do not warn on those.)
  * (Platforms using --with-internal-tzone, including Windows and by
    default macOS). How years are printed in dates or date-times can
    be controlled by environment variable R_PAD_YEARS_BY_ZERO.  The
    default remains to pad to 4 digits by zeroes, but setting value
    no gives no padding (as used by default by glibc).
  * strftime() tries harder to determine the offset for the "%z"
    format, and succeeds on the mainstream R platforms.
  * strftime() has a limit of 2048 bytes on the string produced -
    attempting to exceed this is an error.  (Previously it silently
    truncated at 255 bytes.)
  * sessionInfo() records (and by default prints) the system time
    zone as part of the locale information.  Also, the source
    (system/internal) of the date-time conversion and printing
    functions.
  * Objects of class "POSIXlt" created in this version of R always
    have 11 components: component zone is always set, and component
    gmtoff is set for times in UTC and usually set on the (almost
    all) platforms which have C-level support, otherwise is NA.
  * There are comprehensive validity checks on the structure of
    objects of class "POSIXlt" when converting (including formatting
    and printing).  (This avoids mis-conversions of hand-crafted
    objects.)
  * There is some support for using the native date-time routines on
    macOS: this is only viable on recent versions (e.g. 12.6 and 13)
    and does get wrong some historical changes (before 1900, during
    WWII).  Use of --with-internal-tzone remains the default.
  * as.POSIXct(&lt;numeric&gt;) and as.POSIXlt(.) (without specifying
    origin) now work.  So does as.Date(&lt;numeric&gt;).
  * as.Date.POSIXct(., tz) now treats several tz values, notably
    "GMT" as equivalent to "UTC", proposed and improved by Michael
    Chirico and Joshua Ulrich in PR#17674.
  * Experimental balancePOSIXlt() utility allows using "ragged" and
    or out-of-range "POSIXlt" objects more correctly, e.g., in
    subsetting and subassignments.  Such objects are now documented.
    More experimentally, a "POSIXlt" object may have an attribute
    "balanced" indicating if it is known to be filled or fully
    balanced.
  * Functions axis.Date() and axis.POSIXct() are rewritten to gain
    better default tick locations and better default formats by using
    prettyDate(). Thanks to Swetlana Herbrandt.
  * The mapping of Windows' names for time zones to IANA's 'Olson'
    names has been updated.  When ICU is available (it is by
    default), it is used to get a mapping for the current region set
    in Windows.  This can be overridden by setting environment
    variable TZ to the desired Olson name - see OlsonNames() for
    those currently available.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 16
    and so packages that provide graphics devices should be
    reinstalled.
  * The grDevices and grid packages have new functions for rendering
    typeset glyphs, primarily: grDevices::glyphInfo() and
    grid::grid.glyph().
    Rendering of typeset glyphs is only supported so far on the
    Cairo-based graphics devices and on the pdf() and quartz()
    devices.
  * The defined behaviour for "clear" and "source" compositing
    operators (via grid::grid.group()) has been changed (to align
    better with simple interpretation of original Porter-Duff
    definitions).
  * Support for gradients, patterns, clipping paths, masks, groups,
    compositing operators, and affine transformations has been added
    to the quartz() device.
  INSTALLATION on a UNIX-ALIKE:
  * A system installation of generic LAPACK 3.10.0 or later will be
    preferred to the version in the R sources.
    configure option --with-lapack=no (equivalently --without-lapack)
    forces compilation of the internal LAPACK sources.
    If --with-lapack is not specified, a system liblapack is looked
    for and used if it reports version 3.10.0 or later and does not
    contain BLAS routines.
    Packages using LAPACK will need to be reinstalled if this changes
    to using an external library.
  * On aarch64 Linux platforms using GCC, configure now defaults to
  - fPIC (instead of -fpic), as desired in PR#18326.
  * configure now checks conversion of datetimes between POSIXlt and
    POSIXct around year 2020.  Failure (which has been seen on
    platforms missing tzdata) is fatal.
  * If configure option --with-valgrind-instrumentation is given
    value 1 or 2, option --with-system-valgrind-headers is now the
    default and ignored (with a warning).  It is highly recommended
    that the system headers are installed alongside valgrind: they
    are part of its packaging on some Linux distributions and
    packaged separately (e.g. in the valgrind-devel RPM) on others.
    configure will give a warning if they are not found.
    The system headers will be required in a future release of R to
    build with valgrind instrumentation.
  * libcurl 8.x is now accepted by configure: despite a change in
    major version number it changes neither API nor ABI.
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools43, an update of the Rtools42 toolchain.  It is
    based on gcc 12 and newer versions of MinGW-W64, binutils and
    libraries.  At this time R-devel can still be built using
    Rtools42 without changes, but when R-devel is installed via the
    installer, it will by default look for Rtools43.
  * Old make targets rsync-extsoft and 32-bit ones that are no longer
    needed have been removed.
  * Default builds (including for packages) no longer select C99.
    Thus the C standard used is the default for the compiler, which
    for the toolchain in Rtools43 is C17.  (This is consistent with
    Unix builds.)
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++17 where
    available (which it is on all currently checked platforms): if
    not C++14 or C++11 is used if available otherwise C++ is not
    supported.
  * USE_FC_LEN_T is the default: this uses the correct
    (compiler-dependent) prototypes for Fortran BLAS/LAPACK routines
    called from C/C++, and requires adjustment of many such calls -
    see 'Writing R Extensions' SS6.6.1.
  * There is initial support for C++23 as several compilers are now
    supporting -std=c++23 or -std=c++2b or similar.  As for C++20,
    there no additional configure checks for C++23 features beyond a
    check that the compiler reports a __cplusplus value greater than
    that in the C++20 standard.  C++ feature tests should be used.
  * There is support for a package to indicate the version of the C
    standard which should be used to compile it, and for the
    installing user to specify this.  In most cases R defaults to the
    C compiler's default standard which is C17 (a `bug-fix' of C11) -
    earlier versions of R or compilers may have defaulted to C99.
    Current options are:
    USE_C17 Use a standard that is at most C17.  The intention is to
    allow legacy packages to still be installed when later C
    standards become the default, including packages using new
    keywords as identifiers or with K&amp;R-style function
    declarations.  This will use C17 if available, falling back
    to C11.
    USE_C90 Use the C90 (aka C89) standard.  (As that standard did
    not require compilers to identify that version, all we can
    verify is that the compiler does not claim to be using a
    later standard.  It may accept C99 features - for example
    clang accepts // to make comments.)
    USE_C99 Use the C99 standard. This should be rarely needed - it
    avoids the few new features of C11/C17 which can be useful if
    a package assumes them if C17 is specified and they are not
    implemented.
    USE_C23 Use C23 (or in future, later).  Compiler/library support
    for C23 is still being implemented, but LLVM clang from
    15.0.0 and the upcoming GCC 13 have quite extensive support.
    These can be specified as part of the SystemRequirements field in
    the package's DESCRIPTION file or _via_ options --use-C17 and so
    on of R CMD INSTALL and R CMD SHLIB.
    For further details see "Writing R Extensions" SS1.2.5.
  * (Windows) A src/Makefile.ucrt or src/Makefile.win file is now
    included after R_HOME/etcR_ARCH/Makeconf and so no longer needs
    to include that file itself.  Installation of a package with such
    a file now uses a site Makevars file in the same way as a package
    with a src/Makevars.win file would.
  * configure is now passed crucial variables such as CC and CFLAGS
    in its environment, as many packages were not setting them (as
    documented in 'Writing R Extensions' SS1.2).
    This has most effect where configure is used to compile parts of
    the package - most often by cmake or libtool which obfuscate the
    actual compile commands used.
    Also used for configure.win and configure.ucrt on Windows.
  FORTRAN FLAGS:
  * The flag -fno-optimize-sibling-calls is no longer forced for
    gfortran 7 and later.  It should no longer be needed now using
    'hidden' character-length arguments when calling BLAS/LAPACK
    routines from C/C++ is the default even for packages.  (Unless
    perhaps packages call Fortran code from C/C++ without using R's
    headers and without allowing for these arguments.)
  C-LEVEL FACILITIES:
  * The deprecated S-compatibility macros DOUBLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * The deprecated legacy typedefs of Sint and Sfloat in header R.h
    are no longer defined, and that header no longer includes header
    limits.h from C nor climits from C++.
  * New macro CAD5R() is provided in Rinternals.h and used in a few
    places in the R sources.
  * ALTREP now supports VECSXP vectors. Contributed by Gabor Csardi
    in PR#17620.
  * The Rcomplex definition (in header R_ext/Complex.h) has been
    extended to prevent possible mis-compilation when interfacing
    with Fortran (PR#18430).  The new definition causes compiler
    warnings with static initializers such as {1, 2}, which can be
    changed to {.r=1, .i=2}.
    Using the new definition from C++ depends on compiler extensions
    supporting C features that have not been incorporated into the
    C++ standards but are available in g++ and clang++: this may
    result in C++ compiler warnings but these have been worked around
    for recent versions of common compilers (GCC, Apple/LLVM clang,
    Intel).
    It is intended to change the inclusion of header R_ext/Complex.h
    by other R headers, so C/C++ code files which make use of
    Rcomplex should include that header explicitly.
  UTILITIES:
  * R CMD check does more checking of package .Rd files, warning
    about invalid email addresses and (some) invalid URIs and noting
    empty \item labels in description lists.
  * R CMD check now also reports problems when reading package news
    in md (file NEWS.md) and (optionally) plain text (file NEWS)
    formats.
  * _R_CHECK_TIMINGS_ defaults to a value from the environment even
    for R CMD check --as-cran; this allows for exceptionally fast or
    slow platforms.
    It now applies to checking PDF and HTML versions of the manuals,
    and 'checking CRAN incoming feasibility'.
  * R CMD check can optionally (but included in --as-cran) check
    whether HTML math rendering _via_ KaTeX works for the package .Rd
    files.
  * Non-interactive debugger invocations can be trapped by setting
    the environment variable _R_CHECK_BROWSER_NONINTERACTIVE_ to a
    true value.  This is enabled by R CMD check --as-cran to detect
    the use of leftover browser() statements in the package.
  * The use of sprintf and vsprintf from C/C++ has been deprecated in
    macOS 13 and is a known security risk.  R CMD check now reports
    (on all platforms) if their use is found in compiled code:
    replace by snprintf or vsnprintf respectively. [*NB:* whether
    such calls get compiled into the package is platform-dependent.]
  * Where recorded at installation, R CMD check reports the C and
    Fortran compilers used to build R.
    It reports the OS in use (if known, as given by osVersion) as
    well as that R was built for.
    It notes if a C++ standard was specified which is older than the
    current default: many packages have used C++11 to mean 'not
    C++98' - as C++11 is the minimum supported since R 4.0.0, that
    specification can probably be removed.
  * R CMD INSTALL reports the compilers (and on macOS, the SDK) used,
    and this is copied to the output of R CMD check.
    Where a C++ standard is specified, it is reported.
  * R CMD check's 'checking compilation flags in Makevars' has been
    relaxed to accept the use of flags such as -std=f2008 in
    PKG_FFLAGS.
  * tools::buildVignettes() has a new argument skip, which is used by
    R CMD check to skip (and note) vignettes with unavailable
    \VignetteDepends (PR#18318).
  * New generic .AtNames() added to enable class-specific completions
    after @. The formerly internal function findMatches() is now
    exported, mainly for use in methods for .DollarNames() and
    .AtNames().
  DEPRECATED AND DEFUNCT:
  * default.stringsAsFactors() is defunct.
  * Calling as.data.frame.&lt;class&gt;() directly (for 12 atomic classes)
    is going to be formally deprecated, currently activated by
    setting the environment variable
    _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ to non-empty, which also
    happens in R CMD check --as-cran.
  BUG FIXES:
  * Hashed environments with sizes less than 5 can now grow.
    (Reported to R-devel by Duncan Garmonsway.)
  * as.character(&lt;Rd&gt;, deparse = TRUE) failed to re-escape curly
    braces in LaTeX-like text.  (Reported by Hadley Wickham in
    PR#18324.)
  * library() now passes its lib.loc argument when requiring Depends
    packages; reported (with fix) in PR#18331 by Mikael Jagan.
  * R CMD Stangle: improved message about 'Output' files.
  * head(x, n) and tail(x, n) now signal an error if n is not
    numeric, instead of incidentally "working" sometimes returning
    all of x.  Reported and discussed by Colin Fay, in PR#18357.
  * The "lm" method for summary() now gives the correct F-statistic
    when the model contains an offset.  Reported in PR#18008.
  * C() and `contrasts&lt;-`() now preserve factor level names when
    given a function object (as opposed a function name which did
    preserve names). Reported in PR#17616.
  * c(a = 1, 2)[[]] no longer matches 2 but rather signals a
    _classed_ error.  Reported and analysed by Davis Vaughan in
    PR#18367, a duplicate of PR#18004, by Jan Meis et al.  For
    consistency, NULL[[]] is also erroneous now.  x[[]] &lt;- v gives an
    error of the same class "MissingSubscriptError".
  * The relist() function of utils now supports NULL elements in the
    skeleton (PR#15854).
  * ordered(levels = *) (missing x) now works analogously to factor(,
    ordered=TRUE); reported (with fix) by Achim Zeileis in PR#18389.
  * User-defined Rd macro definitions can now span multiple lines,
    thanks to a patch from Duncan Murdoch. Previously, the Rd parser
    silently ignored everything after the first line.
  * Plain-text help (tools::Rd2txt()) now preserves an initial blank
    line for text following description list items.
  * tools::Rd2HTML() and tools::Rd2latex() no longer split \arguments
    and \value lists at Rd comments.
  * tools::Rd2latex() now correctly handles optional text outside
    \items of argument lists as well as bracketed text at the
    beginning of sections, e.g., \value{[NULL]}.
  * as.character(&lt;POSIXt&gt;) now behaves more in line with the methods
    for atomic vectors such as numbers, and is no longer influenced
    by options().  Ditto for as.character(&lt;Date&gt;).  The
    as.character() method gets arguments digits and OutDec with
    defaults _not_ depending on options().  Use of as.character(*,
    format = .) now warns.
  * Similarly, the as.character.hexmode() and *.octmode() methods
    also behave as good citizen methods and back compatibility option
    keepStr = TRUE.
  * The as.POSIXlt(&lt;POSIXlt&gt;) and as.POSIXct(&lt;POSIXct&gt;) default
    methods now do obey their tz argument, also in this case.
  * as.POSIXlt(&lt;Date&gt;) now does apply a tz (time zone) argument, as
    does as.POSIXct(); partly suggested by Roland Fuss on the R-devel
    mailing list.
  * as.Date.POSIXlt(x) now also works when the list components are of
    unequal length, aka "partially filled" or "ragged".
  * expand.model.frame() looked up variables in the wrong environment
    when applied to models fitted without data.  Reported in
    PR#18414.
  * time() now (also) uses the ts.eps = getOption("ts.eps") argument
    and thus by default rounds values very close to the start (or
    end) of a year.  Based on a proposal by Andre"i V. Kostyrka on
    R-help.
  * Printing of a factanal() result with just one factor and sort =
    TRUE now works regularly, fixing PR#17863 by Timothy Bates,
    thanks to the 'R Contributors' working group.
  * Printing 0-length objects of class "factor", "roman", "hexmode",
    "octmode", "person", "bibentry", or "citation" now prints
    something better, one of which fixes PR#18422, reported by
    Benjamin Feakins.
  * Sys.timezone() queries timedatectl only if systemd is loaded;
    addressing a report by Jan Gorecki in PR#17421.
  * The formula method of cor.test() had scoping problems when
    environment(formula) was not the calling environment; reported
    with a patch proposal by Mao Kobayashi in PR#18439.
  * attach() of an environment with active bindings now preserves the
    active bindings.  Reported by Kevin Ushey in PR#18425.
  * BLAS detection now works also with system-provided libraries not
    available as regular files.  This fixes detection of the
    Accelerate framework on macOS since Big Sur.  Reported by David
    Novgorodsky.
  * download.file() gives a helpful error message in case of an
    invalid download.file.method option, thanks to Colin Fay's report
    in PR#18455.
  * Sporadic crashes of Rterm when using completion have been fixed.
  * Rprof() is now more reliable.  A livelock in thread
    initialization with too short sampling interval has been fixed on
    macOS.  A deadlock in using the C runtime has been fixed on
    Windows.  A potential deadlock has been prevented on Unix.
  * Cursor placement in Rgui now works even after a fixed-width font
    is selected.
  * Mandatory options (options()) are now set on startup so that
    saving and restoring them always works (PR#18372).
  * Package installation, R CMD INSTALL or install.packages(*), now
    parses each of the &lt;pkg&gt;/R/*.R files individually instead of
    first concatenating and then parse()ing the large resulting file.
    This allows parser or syntax errors to be diagnosed with correct
    file names and line numbers, thanks to Simon Dedman's report and
    Bill Dunlap's patch in PR#17859.
    This _does_ require syntactically self contained R source files
    now, fixing another inadvertent bug.
  * predict.lm(&lt;model with offset&gt;) now finds the offset in the
    correct environment, thanks to Andr'e Gillibert's report and patch
    in PR#18456.
  * getInitial(&lt;formula&gt;) now finds the selfStart model in the
    correct environment.  (Reported by Ivan Krylov in PR#18368.)
  * Fix for possible segfault when using recently-added graphics
    features, such as gradients, clipping paths, masks, and groups
    with pdf(file=NULL).
  * class(m) &lt;- class(m) no longer changes a matrix m by adding a
    class _attribute_.
  * packageDate(pkg) now only warns once if there is no pkg.
  * When ts() creates a multivariate time series, "mts", it also
    inherits from "array" now, and is.mts() is documented _and_
    stricter.
  * Rd2txt() now preserves line breaks of \verb Rd content and from
    duplicated \cr.  The former also fixes the rendering of verbatim
    output from Rd \Sexpr in plain-text help.
  * uniroot(f, interval) should no longer wrongly converge _outside_
    the interval in some cases where abs(f(x)) == Inf for an x at the
    interval boundary, thanks to posts by Ben Bolker and Serguei
    Sokol on R-devel.
  * Vectorized alpha handling in palette functions such as in gray(),
    rainbow(), or hcl.colors() works correctly now, thanks to Achim
    Zeileis' report and patch in PR#18476.
  * Formatting and print()ing of bibentry objects has dropped the
    deprecated citation.bibtex.max argument, such that the bibtex
    argument's default for print.bibentry() depends directly on the
    citation.bibtex.max option, whereas in format.bibentry() the
    option no longer applies.
  * Attempting to use a character string naming a foreign function
    entry point in a foreign function call in a package will now
    signal an error if the packages has called R_forceSymbols to
    specify that symbols must be used.
  * An error in table() could permanently set options(warn=2)
    promoting all subsequent warnings to errors.
  * The sigma() function gave misleading results for binary GLMs.  A
    new method for objects of class "glm" returns the square root of
    the estimate of the dispersion parameter using the same
    calculation as summary.glm().
  * bs() and ns() in the (typical) case of automatic knot
    construction, when some of the supposedly inner knots coincide
    with boundary knots, now moves them inside (with a warning),
    building on PR#18442 by Ben Bolker.
  * R CMD on Windows now skips the site profile with --no-site-file
    and --vanilla even when R_PROFILE is set (PR#18512, from Kevin
    Ushey).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1686916800">- CHANGES IN R 4.3.1:
  C-LEVEL FACILITIES:
  * The C-level API version of R's integrate(), Rdqags() in Applic.h,
    now returns the correct number of integrand evaluations neval,
    fixing PR#18515 reported and diagnosed by Stephen Wade.
  * The C prototypes for LAPACK calls dspgv and dtptrs in
    R_exts/Lapack.h had one too many and one too few character length
    arguments - but this has not caused any known issues. To get the
    corrected prototypes, include
    [#]include &lt;Rconfig.h&gt; // for PR18534fixed
    [#]ifdef PR18534fixed
    [#] define usePR18534fix 1
    [#]endif
    [#]include &lt;R_exts/Lapack.h&gt;
    in your C/C++ code (PR#18534).
  INSTALLATION:
  * Many of the checks of esoteric Internet operations and those
    using unreliable external sites have been moved to a new target
    that is not run by default and primarily intended for the core
    developers.  To run them use
    cd tests; make test-Internet-dev
  BUG FIXES:
  * .S3methods(), typically called from methods(), again marks
    methods from package base as visible.
    Also, the visibility of non-base methods is again determined by
    the method's presence in search().
  * tools::Rdiff() is now more robust against invalid strings, fixing
    installation tests on Windows without Rtools installed
    (PR#18530).
  * Fix (new) bug in hcl.colors(2, *), by Achim Zeileis (PR#18523).
  * head(., &lt;illegal&gt;) and tail(..) now produce more useful "Error in
    ...." error messages, fixing PR#18362.
  * Package code syntax on Windows is checked in UTF-8 when UTF-8 is
    the native encoding.
  * na.contiguous(x) now also returns the first run, when it is at
    the beginning and there is a later one of the same length;
    reported to R-devel, including a fix, by Georgi Boshnakov.
    Further, by default, it modifies only an existing attr(*,"tsp")
    but otherwise no longer sets one.
  * chol(&lt;not pos.def&gt;, pivot = &lt;T|F&gt;) now gives a correct error or
    warning message (depending on pivot), thanks to Mikael Jagan's
    (PR#18541).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1699012800">- CHANGES IN R 4.3.2:
  NEW FEATURES:
  * The default initialization of the "repos" option from the
    repositories file at startup can be skipped by setting
    environment variable R_REPOSITORIES to NULL such that
    getOption("repos") is empty if not set elsewhere.
  * qr.X() is now an implicit S4 generic in methods.
  * iconv(to = "ASCII//TRANSLIT") is emulated using substitution on
    platforms which do not support it (notably Alpine Linux).  This
    should give a human-readable conversion in ASCII on all platforms
    (rather than NA_character_).
  * trans3d() gains options continuous and verbose addressing the
    problem of possible "wrap around" when projecting too long
    curves, as reported by Achim Zeileis in PR#18537.
  * tools::showNonASCII() has been rewritten to work better on macOS
    14 (which has a changed implementation of iconv()).
  * tiff(type = "quartz") (the default on macOS) now warns if
    compression is specified: it continues to be ignored.
  INSTALLATION on a UNIX-ALIKE:
  * There is some support for building with Intel's LLVM-based
    compilers on x86_64 Linux, such as (C) icx, (C++) ipcx and
    (Fortran) ifx from oneAPI 2023.x.y.
  * There is support for using LLVM's flang-new as the Fortran
    compiler from LLVM 16.0.x (preferably 17.0.0 or later).
  UTILITIES:
  * R CMD check reports the use of the Fortran 90 random number
    generator RANDOM_NUMBER() and the subroutines to initialize it.
    'Writing R Extensions' has example code to use R's RNGs from
    Fortran.
  BUG FIXES:
  * substr(x, n, L) &lt;- cc now works (more) correctly for multibyte
    UTF-8 strings x when L &gt; nchar(x), thanks to a report and patch
    by 'Architect 95'.
  * contrib.url(character()) now returns 0-length character() as
    documented, which also avoids spurious warnings from
    available.packages() et al. in the edge case of an empty vector
    of repository URLs.
  * readChar(., 4e8) no longer fails, thanks to Kodi Arfer's report
    (PR#18557).
  * lapply(&lt;list&gt;, as.data.frame) no longer warns falsely for some
    base vector components.
  * Communication between parent and child processes in the multicore
    part of parallel could fail on platforms that do not support an
    arbitrarily large payload in system functions read()/write() on
    pipes (seen on macOS where a restriction to INT_MAX bytes is
    documented, without doing a partial read unlike Linux). The
    payload is now split into 1Gb chunks to avoid that problem.
    (PR#18571)
  * qqplot(x,y, conf.level=.) gives better confidence bounds when
    length(x) != length(y), thanks to Alexander Ploner's report and
    patch proposal (PR#18557).
  * norm(&lt;0-length&gt;, "2") now gives zero instead of an error, as all
    the other norm types, thanks to Mikael Jagan's PR#18542.
  * Build-stage Rd macros \packageAuthor and \packageMaintainer now
    process Authors@R, fixing NA results when the package DESCRIPTION
    omits Author and Maintainer fields.
  * Formatting and printing complex numbers could give things like
    0.1683-0i because of rounding error: -0i is now replaced by +0i.
  * postscript() refused to accept a title comment containing the
    letter "W" (PR#18599).
  * isoreg(c(1,Inf)) signals an error instead of segfaulting, fixing
    PR#18603.
  * tiff(type = "Xlib") was only outputting the last page of
    multi-page plots.
  * tools::latexToUtf8() again knows about \~{n} and other letters
    with tilde, fixing a regression in R 4.3.0, and about \^{i} as an
    alternative to \^{\i} (similarly with other accents).
    Furthermore, LaTeX codes for accented I letters are now correctly
    converted, also fixing related mistakes in
    tools::encoded_text_to_latex().
  * tar(*, tar = "internal") no longer creates out-of-spec tar files
    in the very rare case of user or group names longer than 32
    bytes, fixing PR#17871 with thanks to Ivan Krylov.
  * When using the "internal" timezone datetime code, adding a
    fraction of a second no longer adds one second, fixing PR#16856
    from a patch by Ivan Krylov.
  * tools::checkRd() no longer produces spurious notes about
    "unnecessary braces" from multi-line Rd results of \Sexpr macros.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1709208000">- CHANGES IN R 4.3.3:
  NEW FEATURES:
  * iconv() now fixes up variant encoding names such as "utf8"
    case-insensitively.
  DEPRECATED AND DEFUNCT:
  * The legacy encoding = "MacRoman" is deprecated in pdf() and
    postscript(): support was incomplete in earlier versions of R.
  BUG FIXES:
  * Arguments are now properly forwarded to methods on S4 generics
    with ... in the middle of their formal arguments. This was broken
    for the case when a method introduced an argument but did not
    include ... in its own formals. Thanks to Herv'e Pag`es for the
    report PR#18538.
  * Some invalid file arguments to pictex(), postscript() and xfig()
    opened a file called NA rather than throw an error.  These
    included postscript(NULL) (which some people expected to work
    like pdf(NULL)).
  * Passing filename = NA to svg(), cairo_pdf(), cairo_ps() or the
    Cairo-based bitmap devices opened a file called NA: it now throws
    an error.
  * quartz(file = NA) opened a file called NA, including when used as
    a Quartz-based bitmap device.  It now gives an error.
  * rank(&lt;long vector&gt;) now works, fixing PR#18617, thanks to Ilia
    Kats.
  * seq.int() did not adequately check its length.out argument.
  * match(&lt;POSIXct&gt;, .) is correct again for differing time zones,
    ditto for "POSIXlt", fixing PR#18618 reported by Bastian Klein.
  * drop.terms(*, dropx = &lt;0-length&gt;) now works, fixing PR#18563 as
    proposed by Mikael Jagan.
  * drop.terms(*) keeps + offset(.) terms when it should, PR#18565,
    and drop.terms() no longer makes up a response, PR#18566, fixing
    both bugs thanks to Mikael Jagan.
  * getS3method("t", "test") no longer finds the t.test() function,
    fixing PR#18627.
  * pdf() and postscript() support for the documented Adobe encodings
    "Greek" and "Cyrilllic" was missing (although the corresponding
    Windows' codepages could be used).
  * Computations of glyph metric information for pdf() and
    postscript() did not take into account that transliteration could
    replace one character by two or more (only seen on macOS 14) and
    typically warned that the information was not known.
  * rank(x) no longer overflows during integer addition, when
    computing rank average for largish but not-yet long vector x,
    fixing PR#18630, thanks to Ilia Kats.
  * list.files() on Windows now returns also files with names longer
    that 260 bytes (the Windows limit is 260 characters).
    Previously, some file names particularly with 'East Asian'
    characters were omitted.
  * cov2cor(&lt;0 x 0&gt;) now works, fixing PR#18423 thanks to Mikael
    Jagan and Elin Waring.
  * cov2cor(&lt;negative diagonal&gt;) and similar now give one warning
    instead of two, with better wording, fixing PR#18424 thanks to
    Mikael Jagan.
  * tools:: startDynamicHelp() now ensures port is in proper range,
    fixing PR#18645.
  * pbeta(x, a,b) is correct now for x=0 or 1 in the boundary cases
    where a or b or both are 0, fixing PR#18672 thanks to Michael
    Fay.
  * pmatch(x, table) for large table, also called for data frame row
    selection, dfrm[nm, ], is now interruptible, fixing PR#18656.
  * predict(&lt;rank-deficient lm&gt;, newdata=*) fix computing of nbasis,
    see Russ Lenth's comment 29 in PR#16158.
  * Added a work-around for a bug in macOS 14.3.1 and higher which
    prevents R plots in the Quartz Cocoa device from updating on
    screen.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1713960000">- CHANGES IN R 4.4.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Startup banners, R --version, sessionInfo() and R CMD check no
    longer report (64-bit) as part of the platform as this is almost
    universal - the increasingly rare 32-bit platforms will still
    report (32-bit).
    On Windows, ditto for window titles.
  * is.atomic(NULL) now returns FALSE, as NULL is not an atomic
    vector.  Strict back-compatibility would replace is.atomic(foo)
    by (is.null(foo) || is.atomic(foo)) but should happen only
    sparingly.
  NEW FEATURES:
  * The confint() methods for "glm" and "nls" objects have been
    copied to the stats package.  Previously, they were stubs which
    called versions in package MASS. The MASS namespace is no longer
    loaded if you invoke (say) confint(glmfit).  Further, the "glm"
    method for profile() and the plot() and pairs() methods for class
    "profile" have been copied from MASS to stats.  (profile.nls()
    and plot.profile.nls() were already in stats.)
  * The confint() and profile methods for "glm" objects have gained a
    possibility to do profiling based on the Rao Score statistic in
    addition to the default Likelihood Ratio. This is controlled by a
    new test = argument.
  * The pairs() method for "profile" objects has been extended with a
    which = argument to allow plotting only a subset of the
    parameters.
  * The "glm" method for anova() computes test statistics and
    p-values by default, using a chi-squared test or an F test
    depending on whether the dispersion is fixed or free.  Test
    statistics can be suppressed by giving argument test a false
    logical value.
  * In setRepositories() the repositories can be set using their
    names via name = instead of index ind =.
  * methods() and .S3methods() gain a all.names option for the (rare)
    case where functions starting with a . should be included.
  * Serializations can now be interrupted (e.g., by Ctrl-C on a
    Unix-alike) if they take too long, e.g., from save.image(),
    thanks to suggestions by Ivan Krylov and others on R-devel.
  * New startup option --max-connections to set the maximum number of
    simultaneous connections for the session.  Defaults to 128 as
    before: allowed values up to 4096 (but resource limits may in
    practice restrict to smaller values).
  * R on Windows (since Windows 10 2004) now uses the new Segment
    Heap allocator. This may improve performance of some
    memory-intensive applications.
  * When R packages are built, typically by R CMD build &lt;pkg&gt;, the
    new --user=&lt;build_user&gt; option overrides the (internally
    determined) user name, currently Sys.info()["user"] or LOGNAME.
    This is a (modified) fulfillment of Will Landau's suggestion in
    PR#17530.
  * tools::testInstalledBasic() gets new optional arguments outDir
    and testSrcdir, e.g., allowing to use it in a &lt;builddir&gt; !=
    &lt;srcdir&gt; setup, and in standard "binary" Windows installation
  * if* a source tests/ folder is present.
  * range(&lt;DT_with_Inf&gt;, finite = TRUE) now work for objects of class
    "Date", "POSIXct", and "POSIXlt" with infinite entries,
    analogously to range.default(), as proposed by Davis Vaughan on
    R-devel.  Other range()-methods can make use of new function
    .rangeNum().
  * New .internalGenerics object complementing .S3PrimitiveGenerics,
    for documentation and low-level book-keeping.
  * grid() now invisibly returns the x- and y- coordinates at which
    the grid-lines were drawn.
  * norm(., type) now also works for complex matrices.
  * kappa(., exact = TRUE, norm = *) now works for all norms and also
    for complex matrices.  In symmetric / triangular cases, the new
    argument uplo = "U" | "L" allows the upper or lower triangular
    part to be specified.
  * memDecompress(type = "unknown") recognizes compression in the
    default 'zlib' format as used by memCompress(type = "gzip").
  * memCompress() and memDecompress() will use the libdeflate library
    (&lt;https://github.com/ebiggers/libdeflate&gt;) if installed.  This
    uses the same type of compression for type = "gzip" but is 1.5-2x
    faster than the system libz library on some common platforms: the
    speed-up may depend on the library version.
  * diff() for objects of class "Date", "POSIXct", and "POSIXlt"
    accepts a units argument passed via ....
  * Dynamic help now does a much better job of rendering package
    DESCRIPTION metadata.
  * Rprof() gains an event argument and support for elapsed (real)
    time profiling on Unix (PR#18076).
  * filled.contour() gains a key.border argument.
  * tools::update_pkg_po() gets arguments pot_make and mo_make for
    _not_ re-making the corresponding files, and additionally a
    verbose argument.
  * Hexadecimal string colour specifications are now accepted in
    short form, so, for example, we can use "#123", which is
    equivalent to "#112233".
    Thanks to MikeFC for the original idea and Ella Kaye, Malcolm
    Barrett, George Stagg, and Hanne Oberman for the patch.
  * Plain-text help shows \var markup by angle brackets.
  * The new experimental primitive function declare() is intended to
    eventually allow information about R code to be communicated to
    the interpreter, compiler, and code analysis tools. The syntax
    for declarations is still being developed.
  * Functions psmirnov(), qsmirnov() and rsmirnov() in package stats
    have had argument two.sided renamed to alternative, to take into
    account that the permutation distributions of the one-sided
    statistics can be different in the case of ties.  Consequence of
    PR#18582.
  * sort() is now an implicit S4 generic in methods.
  * Formatting and printing, format(z), print(z), of complex vectors
    z no longer zap relatively small real or imaginary parts to zero,
    fixing PR#16752.  This is an API change, as it was documented
    previously to round real and imaginary parts together on purpose,
    producing nicer looking output.  As mentioned, e.g. in the PR,
    this change is compatible with many other "R-like" programming
    environments.
    We have simplified the internal code and now basically format the
    real and imaginary parts independently of each other.
  * New experimental functions Tailcall() and Exec() to support
    writing stack-space-efficient recursive functions.
  * Where characters are attempted to be plotted by pdf(),
    postscript() and xfig() which are not in the selected 8-bit
    character set (most often Latin-1) and the R session is using a
    UTF-8 locale, the warning messages will show the UTF-8 character
    rather than its bytes and one dot will be substituted per
    character rather than per byte.  (Platforms whose iconv() does
    transliteration silently plot the transliteration.)
    In a UTF-8 locale some transliterations are now done with a
    warning (e.g., dashes and Unicode minus to hyphen, ligatures are
    expanded, permille (‰) is replaced by o/oo), although the OS may
    have got there first.  These are warnings as they will continue
    to be replaced by dots in earlier versions of R.
  * The matrix multiplication functions crossprod() and tcrossprod()
    are now also primitive and S3 generic, as %*% had become in R
    4.3.0.
  * source() and example() have a new optional argument catch.aborts
    which allows continued evaluation of the R code after an error.
  * The non-Quartz tiff() devices allow additional types of
    compression if supported by the platform's libtiff library.
  * The list of base and recommended package names is now provided by
    tools::standard_package_names().
  * cairo_pdf() and cairo_ps() default to onefile = TRUE to closer
    match pdf() and postscript().
  * New option catch.script.errors provides a documented way to catch
    errors and then continue in non-interactive use.
  * L %||% R newly in base is an expressive idiom for the phrases
    if(!is.null(L)) L else R or if(is.null(L)) R else L.
  * The return value from warnings() now always inherits from
    "warnings" as documented, now also in the case of no warnings
    where it previously returned NULL.
  * as.complex("1i") now returns 0 + 1i instead of NA with a warning.
  * z &lt;- c(NA, 1i) now keeps the imaginary part Im(z[1]) == 0, no
    longer coercing to NA_complex_.  Similarly, cumsum(z) correctly
    sums real and imaginary parts separately, i.e., without
    "crosstalk" in case of NAs.
  * On Alpine Linux iconv() now maps "latin2", "latin-2", "latin9"
    and "latin-9" to encoding names the OS knows about
    (case-insensitively).
  * iconv(sub = "Unicode") now always zero-pads to four (hex) digits,
    rather than to 4 or 8.  (This seems to have become the convention
    once Unicode restricted the number of Unicode points to 2^21 - 1
    and so will never need more than 6 digits.)
  * NCOL(NULL) now returns 0 instead of 1, for consistency with
    cbind().
  * The information for the Euro glyph missing from the Adobe .afm
    files for the Courier, Helvetica and Times families has been
    copied from their URW equivalents - this will improve vertical
    centring in the pdf() and postscript() devices.
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.12.0.  The changes are almost entirely cosmetic.
  * The included LAPACK sources have been updated to version 3.12.0
    and some further double-complex routines added.
  * There are new font families for the 2014--5 URW 2.0 fonts (see
    ?pdf) which are included in recent versions of Ghostscript.
    These have font widths for most Greek glyphs and a few others
    which were missing from the original versions (whose font
    families remain available for reproducibility, although
    Ghostscript-based viewers will render using the 2.0 versions).
  * Improve the large-n efficiency of as.matrix(&lt;dist&gt;), thanks an R
    contributors effort, notably by Tim Taylor and Heather Turner,
    see PR#18660.
  * The default and numeric methods of all.equal() get a check.class
    option.
  * zapsmall() gets new optional arguments, function mFUN and min.d,
    for extra flexibility; fulfills a wish in PR#18199.  Also, it is
    now an implicit S4 generic in package methods.
  * The Rd filter for aspell() gains an ignore argument.
  * New generic function sort_by(), primarily useful for the
    data.frame method which can be used to sort rows of a data frame
    by one or more columns.
  * The icence headers for the RPC code in src/extra/xdr have been
    updated to use the GPL-compatible licence published by Oracle
    America in 2010.
  * New function pkg2HTML() in tools to create single-page HTML
    reference manuals for R packages.
  * The byte code evaluator now uses less C stack space for recursive
    calls to byte-compiled functions. It also makes more of an effort
    to avoid allocations for scalar return values.
  * New completion option backtick (disabled by default) allows
    non-syntactic completions to be wrapped in backquotes. This is
    currently only useful for Jupyter notebooks via the IRkernel
    package, and may cause problems for other backends.
  INSTALLATION:
  * The parser has been updated to work with bison 3.8.2, which is
    now used for the pre-generated parsers in gram.c, file.c, and
    gramRd.c. A few parser error messages have changed, which may
    affect code that relies on exact messages.
  INSTALLATION on a UNIX-ALIKE:
  * System valgrind headers are now required to use configure option
  - -with-valgrind-instrumentation with value 1 or 2.
  * configure will warn if it encounters a 32-bit build, as that is
    nowadays almost untested.
  * Environment variable R_SYSTEM_ABI is no longer used and so no
    longer recorded in etc/Renviron (it was not on Windows and was
    only ever used when preparing package tools).
  * If the libdeflate library and headers are available, libdeflate
    rather than libz is used to (de)compress R objects in lazy-load
    databases.  Typically tasks spend up to 5% of their time on such
    operations, although creating lazy-data databases is one of the
    exceptions.
    This can be suppressed if the library is available by the
    configure option --without-libdeflate-compression.
  * configure option --enable-lto=check has not worked reliably since
    2019 and has been removed.
  * The minimum autoconf requirement for a maintainer build has been
    increased to autoconf 2.71.
    It is intended to increase this to 2.72 for R 4.5.0: the
    distributed configure file was generated using 2.72.
  * The minimum version requirement for an external LAPACK has been
    reduced to 3.9.0.
  * No default C++ compiler is set if no C++17 compiler is detected:
    there is no longer an automatic fallback to C++14 or C++11.
    Compilers from the last five years should have sufficient
    support: for others macros CXX and CXXSTD can be set in file
    config.site to provide a fallback if needed.
    The Objective-C++ compiler now by default uses the standard
    selected by R for C++ (currently C++17) rather than the default
    standard for the C++ compiler (which on macOS is still C++98).
  INSTALLATION on macOS:
  * A new configure option --with-newAccelerate makes use of Apple's
    'new' BLAS / LAPACK interfaces in their Accelerate framework.
    Those interfaces are only available in macOS 13.3 or later, and
    building requires SDK 13.3 or later (from the Command Line Tools
    or Xcode 14.3 or later).
    By default the option uses new Accelerate for BLAS calls: to also
    use it for LAPACK use option --with-newAccelerate=lapack.  The
    later interfaces provide LAPACK 3.9.1 rather than 3.2.1: 3.9.1 is
    from 2021-04 and does not include the improved algorithms
    introduced in LAPACK 3.10.0 (including for BLAS calls).
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools44, an update of the Rtools43 toolchain.  It is
    based on GCC 13 and newer versions of MinGW-W64, binutils and
    libraries (targeting 64-bit Intel CPUs).  R-devel can no longer
    be built using Rtools43 without changes.
  * Rtools44 has experimental support for 64-bit ARM (aarch64) CPUs
    _via_ the LLVM 17 toolchain using lld, clang/flang-new and
    libc++.
  UTILITIES:
  * R CMD check notes when S4-style exports are used without
    declaring a strong dependence on package methods.
  * tools::checkRd() (used by R CMD check) detects more problems with
    \Sexpr-based dynamic content, including bad nesting of \Sexprs
    and invalid arguments.
  * tools::checkRd() now reports Rd titles and section names ending
    in a period; this is ignored by R CMD check unless environment
    variable _R_CHECK_RD_CHECKRD_MINLEVEL_ is set to -5 or smaller.
  * R CMD check now notes Rd files without an \alias, as long
    documented in 'Writing R Extensions' §1.3.1.  The check for a
    missing \description has been moved from tools::checkRd() to
    tools::checkRdContents().
  * R CMD check now visits inst/NEWS.Rd and OS-specific man
    subdirectories when checking Rd files.
  * tools::checkDocFiles() and tools::checkRdContents() now also
    check internal Rd files by default, but "specially" (ignoring
    missing documentation of arguments).
  * R CMD Rdiff gets option --useEx.
  * R CMD check now warns on non-portable uses of Fortran KIND such
    as INTEGER(KIND=4) and REAL(KIND=8).
    To see the failing lines set environment variable
    _R_CHECK_FORTRAN_KIND_DETAILS_ to a true value.
  * When checking Rd files, R CMD check now notes some of the "lost
    braces" that tools::checkRd() finds.  Typical problems are Rd
    macros missing the initial backslash (e.g., code{...}), in-text
    set notation (e.g., {1, 2}, where the braces need escaping), and
    \itemize lists with \describe-style entries of the form
    \item{label}{description}.
  * R CMD INSTALL (and hence check) will compile C++ code with
  - DR_NO_REMAP if environment variable _R_CXX_USE_NO_REMAP_ is set
    to a true value.  It is planned that this will in future become
    the default for compiling C++.
  * The new built-in Rd macro \dontdiff{} can be used to mark example
    code whose output should be ignored when comparing check output
    to reference output (tests/Examples/&lt;pkg&gt;-Ex.Rout.save).  The
    \dontdiff tag, like \donttest, is _not_ shown on the rendered
    help page, so provides a clean alternative to ##
    IGNORE_RDIFF_(BEGIN|END) comments.
  * R CMD build when there is no NAMESPACE, now uses the recommended
    exportPattern("^[^.]"), instead of exporting everything.
  * R CMD check now warns about non-ASCII characters in the NAMESPACE
    file (in addition to R files). Such packages are not portable and
    may fail to install on some platforms.
  C-LEVEL FACILITIES:
  * Headers R_ext/Applic.h and R-ext/Linpack.h used to include
    R_ext/BLAS.h although this was undocumented and unneeded by their
    documented entry points.  They no longer do so.
  * New function R_missing(), factored out from do_missing(), used to
    fix PR#18579.
  * SEXP type S4SXP has been renamed to OBJSXP to support
    experimenting with alternative object systems.  The S4SXP value
    can still be used in C code but is now deprecated.  Based on
    contributions from the R Consortium's Object-Oriented Programming
    Working Group.
  * New function pow1p(x,y) for accurate (1+x)^y.
  * mkCharLenCE was incorrectly documented to take a size_t length
    but was implemented with int (and character strings in R are
    limited to 2^31 - 1 bytes).
  DEPRECATED AND DEFUNCT:
  * data() no longer handles zipped data from long-defunct (since R
    2.13.0) --use-zip-data installations.
  * The legacy graphics devices pictex() and xfig() are now
    deprecated.  They do not support recent graphics enhancements and
    their font handling is rudimentary. The intention is to retain
    them for historical interest as long as they remain somewhat
    functional.
  * Support for encoding = "MacRoman" has been removed from the pdf()
    and postscript() devices - this was a legacy encoding supporting
    classic macOS up to 2001 and no longer has universal libiconv
    support.
  * is.R() is deprecated as no other S dialect is known to be in use
    (and this could only identify historical dialects, not future
    ones).
    Further information on calls can be obtained by setting the
    environment variable _R_DEPRECATED_IS_R_ to error which turns the
    deprecation warning into an error and so by default gives a
    traceback.  (This is done by R CMD check --as-cran.)
  * UseMethod() no longer forwards local variables assigned in the
    generic function into method call environments before evaluating
    the method body. This makes method calls behave more like
    standard function calls and makes method code easier to analyze
    correctly.
  * The twelve as.data.frame.&lt;class&gt;() methods which were deprecated
    only via _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ and in R CMD
    check --as-cran are formally deprecated now in favour of calling
    as.data.frame() or as.data.frame.vector().  The deprecation
    "check" now works also when as.data.frame() is S4 generic thanks
    to Ivan Krylov.
  * The default method for the directional comparison operators &lt;, &gt;,
    &lt;=, and &gt;= now signals an error when one of the operands is a
    language object, i.e. a symbol or a call.
  * For terms.formula(), deprecate abb and neg.out arguments
    _formally_ in addition to just documenting it.
  BUG FIXES:
  * The methods package is more robust to not being attached to the
    search path.  More work needs to be done.
  * pairwise.t.test() misbehaved when subgroups had 0 DF for
    variance, even with pool.sd = TRUE.  (PR#18594 by Jack Berry).
  * Probability distribution functions [dpq]&lt;distrib&gt;(x, *), but also
    bessel[IKJY](x, .) now consistently preserve attributes(x) when
    length(x) == 0, e.g., for a 2 x 0 matrix, thanks to Karolis
    Koncevičius' report PR#18509.
  * Group "Summary" computations such as sum(1:3, 4, na.rm = 5, NA,
    7, na.rm = LL) now give an error instead of either 17 or NN for
    LL true or false, as proposed by Ivan Krylov on the R-devel
    mailing list.  (This also means it is now an error to specify
    na.rm more than once.)
  * as.complex(x) now returns complex(real = x, imaginary = 0) for
    _all_ numerical and logical x, notably also for NA or
    NA_integer_.
  * Directories are now omitted by file.copy(, recursive = FALSE) and
    in file.append() (PR#17337).
  * gsub() and sub() are now more robust to integer overflow when
    reporting errors caused by too large input strings (PR#18346).
  * Top-level handlers are now more robust to attempts to remove a
    handler whilst handlers are running (PR#18508).
  * The handling of Alt+F4 in dialogs created on Windows using
    GraphApp has been fixed (PR#13870).
  * density() more consistently computes grid values for the
    FFT-based convolution, following Robert Schlicht's analysis and
    proposal in PR#18337, correcting density values typically by a
    factor of about 0.999.  Argument old.coords = TRUE provides back
    compatibility.
  * palette.colors() gains a name argument that defaults to FALSE
    controlling whether the vector of colours that is returned has
    names (where possible).  PR#18529.
  * tools::xgettext() no longer extracts the (non-translatable) class
    names from warningCondition and errorCondition calls.
  * S3method(&lt;gen&gt;, &lt;class&gt;, &lt;func&gt;) in the NAMESPACE file now works
    (again) when &lt;func&gt; is visible from the namespace, e.g.,
    imported, or in base.
  * getParseData(f) now also works for a function defined in the
    first of several &lt;pkg&gt;/R/*.R source files, thanks to Kirill
    Müller's report and Duncan Murdoch's patch in PR#16756.
  * Rd \Sexpr macros with nested #ifdef conditionals were not
    processed.
  * A non-blocking connection with non-default encoding (such as a
    socket) now correctly returns from readLines() after new data has
    arrived also when its EOF had been reached previously.  Thanks to
    Peter Meilstrup's report on R-devel and Ivan Krylov's report and
    patch proposal in PR#18555.
  * tools::checkRdContents() failed to detect empty argument
    descriptions when they spanned multiple lines, including those
    generated by prompt().  These cases are now noted by R CMD check.
  * Plain-text help no longer outputs spurious colons in the
    arguments list (for multi-line \item labels in the Rd source).
  * kappa() and rcond() work correctly in more cases; kappa(., norm =
    "2") now warns that it computes the 1-norm with (default) exact =
    FALSE; prompted by Mikael Jagan's quite comprehensive PR#18543.
  * Rd skeletons generated by prompt() or promptData() now use a
    dummy title (so R CMD build works).  tools::checkRdContents() has
    been updated to detect such template leftovers, including from
    promptPackage().
  * When S4 method dispatch fails because no method was found, the
    error message now includes the signature argument names; thanks
    to Michael Chirico's proposal on the R-devel list.
  * withAutoprint({ .. }) now preserves srcrefs previously lost,
    thanks to Andrew Simmons' report plus fix in PR#18572.
  * transform.data.frame() no longer adjusts names; in particular,
    untransformed variables are kept as-is, including those with
    syntactically invalid names (PR#17890).
  * The keep.source option for Rd \Sexpr blocks is no longer ignored.
  * The formula methods for t.test() and wilcox.test() now catch when
    paired is passed, addressing PR#14359; use Pair(x1, x2) ~ 1 for a
    paired test.
  * The level reported in the browser prompt was often too large. It
    now shows the number of browser contexts on the stack.
  * For cbind() and rbind(), the optional deparse.level argument is
    now properly passed to methods, thanks to Mikael Jagan's PR#18579
    and comments there.
  * Some error and warning messages for large ('long vector')
    matrix(v, nr, nc) and dim(m) &lt;- d are now correct about sizes,
    using long long formatting, fixing PR#18612 (and more) reported
    by Mikael Jagan.
  * readChar(useBytes = TRUE) now terminates strings even when the
    underlying connection uses extra spaces in the input buffer.
    This fixes problems with extra garbage seen with gzip
    connections, PR#18605.
  * Named capture in PCRE regular expressions now works also with
    more than 127 named groups (PR#18588).
  * Datetime functions are now robust against long jumps when dealing
    with internal time zone changes.  This avoids confusing warnings
    about an invalid time zone, previously triggered by turning
    warnings into errors or handling them via tryCatch (PR#17966,
    PR#17780).
  * Datetime functions now restore even an empty TZ environment
    variable after internal time zone changes (PR#17724).  This makes
    results of datetime functions with this (typically unintentional)
    setting more predictable.
  * drop.terms(*) now drops response as by default, keep.response =
    FALSE, fixing PR#18564 thanks to Mikael Jagan.
  * dummy.coef(.) now also works for lm()-models with character
    categorical predictor variables rather than factor ones, fixing
    PR#18635 reported by Jinsong Zhao.
  * formals(f) &lt;- formals(f) now also works for a function w/o
    arguments and atomic _constant_ body(f).
  * Correct as.function(&lt;invalid list&gt;, .)'s error message.
  * removeSource() is yet more thorough in finding and removing
    "srcref" and the other source references from parsed R language
    chunks, fixing PR#18638 thanks to Andrew Simmons.
  * dgeom() is more accurate now, notably when its result is very
    small, fixing PR#18642 thanks to the proposal of Morten Welinder,
    also improving other instances where C level binom_raw(x, n, ..)
    has x == 0 or x== n.
  * warning() with options(warn = 1) has improved output for
    multi-line messages.
  * axis.Date() and axis.POSIXct() now respect the par("lab") setting
    for the number of pretty() intervals.
  * Comparisons for language objects (which are based on deparsing)
    are now more careful about using accurate deparsed results
    (PR#18676).
  * Plain-text help (Rd2txt) now correctly preserves blank lines
    following single-line \dontrun code.
  * &lt;POSIXlt&gt;[*] no longer sets wrong "balanced" attribute, fixing
    PR#18681 thanks to Mikael Jagan.
  * str(&lt;classed-call&gt;) now deparses the call as expected, fixing
    PR#18684, reported by Dave Slager.
  * In Rd examples, code following the closing brace of a \dontrun,
    \dontshow or \donttest tag on the same line is no longer skipped
    when R CMD check runs the examples.
  * as.data.frame(matrix(*, ncol=0)) now gets valid names() and
    colnames(); reported by Davis Vaughan on the R-devel list.
  * Internal Mathlib function stirlerr(n) is now almost fully
    (52-bit) accurate for all n &gt;= ~5.9 and more accurate also in the
    range 1 -- 5.9.  This entails small ("after 12th decimal")
    changes in density functions, e.g., dgamma() in _some_ regions of
    their support.  The fix was partly prompted by Morten Welinder's
    PR#18640.
  * Numbers like 9876543.2 are now considered non-integer by Mathlib
    internal R_nonint(), amending original fix of PR#15734.
  * Rd comment lines no longer cause broken paragraphs in the
    rendered PDF and plain-text help. In code blocks, pure comment
    lines (starting with %) no longer produce an empty line.
  * xtabs(Freq ~ .) now consistently defaults to na.action = na.pass,
    using na.rm = FALSE (added as an argument) when summing over Freq
    (PR#17770).
  * tools::testInstalledPackage() is no longer silent about failures
    from running examples or tests and its return code no longer
    ignores failures from checking vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1718366400">- CHANGES IN R 4.4.1:
  C-LEVEL FACILITIES:
  * Functions R_atof and R_strtod declared in header R_ext/Utils.h
    are now documented in 'Writing R Extensions' and so formally part
    of the API.
  * The non-API entry points Rf_setSVector, Rf_StringFalse,
    Rf_StringTrue and Rf_isBlankString have been added to those
    reported by R CMD check.
  * The new function Rf_allocLang is now available. This provides an
    alternative to the idiom of calling Rf_allocList followed by
    SET_TYPEOF.
  UTILITIES:
  * R CMD check now reports as warnings what gfortran calls 'Fortran
    2018 deleted features', all of which have long been marked as
    'obsolescent' and some of which were deleted in Fortran 2008 or
    earlier.  Fortran compilers are no longer required to support
    these.
  BUG FIXES:
  * as.numeric(), scan(), type.convert() and other places which use
    the internal C function R_strtod now require a _non-empty_ digit
    sequence in a decimal or binary exponent.  This aligns with the
    C/POSIX standard for strtod and with ?NumericConstants.
  * as.data.frame(m, make.names=NA) now works correctly for a matrix
    m with NA's in row names.
  * The error message from &lt;POSIXlt&gt;[["hour"]] and similar now
    mentions *[[, "hour"]], as wished for in PR#17409 and proposed by
    Michael Chirico.
  * qbinom() and potentially qpois(), qnbinom(), no longer sometimes
    fail accurate inversion (of pbinom(), etc), thanks to Christopher
    Chang's report and patch in PR#18711.
  * The internal help server on Windows can again serve requests sent
    in quick succession, fixing a regression in R 4.4.0.
  * debugcall(&lt;S3Generic&gt;()) now also works when a corresponding
    S4-generic version is in the methods cache (PR#18143).
  * Package tools' toTitleCase(ch0) now returns character(0) when ch0
    is of zero length; fixing PR#18724, reported by David Hugh Jones.
  * R CMD check is no longer broken (without a check result and no
    explanation in 00check.log) for a package which declares an
    invalid VignetteBuilder in DESCRIPTION but has no vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1730376000">- CHANGES IN R 4.4.2:
  C-LEVEL FACILITIES:
  * The S-compatibility macros F77_COM and F77_COMDECL defined in
    header R_ext/RS.h are deprecated and will be removed shortly.  We
    could find no record of their use.
  BUG FIXES:
  * Mathlib function lgammacor(x) no longer warns about underflow to
    zero for large x.
  * Text widths and heights were incorrectly reported by the Quartz
    device if the drawing context didn't exist yet (typically when
    drawing off-screen to a window that is yet to appear, see
    PR#18591).
  * The Quartz device could segfault in cases where paths with spaces
    are used in the new glyph drawing API.  Thanks to Tomek
    Gieorgijewski (PR#18758).
  * On macOS in R CRAN builds, it is again possible to read
    little-endian UTF-16 text with a BOM from a connection using
    encoding="UTF-16".  Users building R from source should avoid
    using the system libiconv in macOS 14.1 and later.
  * methods' internal .requirePackage() now re-enables primitive
    method dispatch when needed; thanks to Ivan Krylov for
    demystifying CRAN package check failures on the R-devel mailing
    list.</changelog>
</package>
<package pkgid="142981355a053733401c392d76324d8f0f3336723b9771db63726bf1bc1f2fda0f289c336f0743a3516eeb5bf1f2716a7fd92205e1edebb2db17056033c5c852" name="R-rpart-debuginfo" arch="x86_64">
  <version epoch="0" ver="4.1.23" rel="51.0.2.2.sr20241103"/>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1620302400">- To get in sync with d:l:R:autoCRAN the Matrix package's split
  in -devel was reversed.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339200">- improved spec file according to comments of dimstar in
  https://build.opensuse.org/request/show/892685</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339201">- CHANGES IN R 4.1.0:
  FUTURE DIRECTIONS:
  * It is planned that the 4.1.x series will be the last to support
    32-bit Windows, with production of binary packages for that
    series continuing until early 2023.
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Data set esoph in package datasets now provides the correct
    numbers of controls; previously it had the numbers of cases added
    to these.  (Reported by Alexander Fowler in PR#17964.)
  NEW FEATURES:
  * www.omegahat.net is no longer one of the repositories known by
    default to setRepositories().  (Nowadays it only provides source
    packages and is often unavailable.)
  * Function package_dependencies() (in package tools) can now use
    different dependency types for direct and recursive dependencies.
  * The checking of the size of tarball in R CMD check --as-cran
    &lt;pkg&gt; may be tweaked via the new environment variable
    _R_CHECK_CRAN_INCOMING_TARBALL_THRESHOLD_, as suggested in
    PR#17777 by Jan Gorecki.
  * Using c() to combine a factor with other factors now gives a
    factor, an ordered factor when combining ordered factors with
    identical levels.
  * apply() gains a simplify argument to allow disabling of
    simplification of results.
  * The format() method for class "ftable" gets a new option justify.
    (Suggested by Thomas Soeiro.)
  * New ...names() utility.  (Proposed by Neal Fultz in PR#17705.)
  * type.convert() now warns when its as.is argument is not
    specified, as the help file always said it _should_.  In that
    case, the default is changed to TRUE in line with its change in
    read.table() (related to stringsAsFactor) in R 4.0.0.
  * When printing list arrays, classed objects are now shown _via_
    their format() value if this is a short enough character string,
    or by giving the first elements of their class vector and their
    length.
  * capabilities() gets new entry "Rprof" which is TRUE when R has
    been configured with the equivalent of --enable-R-profiling (as
    it is by default).  (Related to Michael Orlitzky's report
    PR#17836.)
  * str(xS4) now also shows extraneous attributes of an S4 object
    xS4.
  * Rudimentary support for vi-style tags in rtags() and R CMD rtags
    has been added.  (Based on a patch from Neal Fultz in PR#17214.)
  * checkRdContents() is now exported from tools; it and also
    checkDocFiles() have a new option chkInternal allowing to check
    Rd files marked with keyword "internal" as well.  The latter can
    be activated for R CMD check via environment variable
    _R_CHECK_RD_INTERNAL_TOO_.
  * New functions numToBits() and numToInts() extend the raw
    conversion utilities to (double precision) numeric.
  * Functions URLencode() and URLdecode() in package utils now work
    on vectors of URIs.  (Based on patch from Bob Rudis submitted
    with PR#17873.)
  * path.expand() can expand ~user on most Unix-alikes even when
    readline is not in use.  It tries harder to expand ~, for example
    should environment variable HOME be unset.
  * For HTML help (both dynamic and static), Rd file links to help
    pages in external packages are now treated as references to
    topics rather than file names, and fall back to a file link only
    if the topic is not found in the target package. The earlier rule
    which prioritized file names over topics can be restored by
    setting the environment variable _R_HELP_LINKS_TO_TOPICS_ to a
    false value.
  * c() now removes NULL arguments before dispatching to methods,
    thus simplifying the implementation of c() methods, _but_ for
    back compatibility keeps NULL when it is the first argument.
    (From a report and patch proposal by Lionel Henry in PR#17900.)
  * Vectorize()'s result function's environment no longer keeps
    unneeded objects.
  * Function ...elt() now propagates visibility consistently with
    ..n.  (Thanks to Lionel Henry's PR#17905.)
  * capture.output() no longer uses non-standard evaluation to
    evaluate its arguments.  This makes evaluation of functions like
    parent.frame() more consistent.  (Thanks to Lionel Henry's
    PR#17907.)
  * packBits(bits, type="double") now works as inverse of
    numToBits().  (Thanks to Bill Dunlap's proposal in PR#17914.)
  * curlGetHeaders() has two new arguments, timeout to specify the
    timeout for that call (overriding getOption("timeout")) and TLS
    to specify the minimum TLS protocol version to be used for
    https:// URIs (_inter alia_ providing a means to check for sites
    using deprecated TLS versions 1.0 and 1.1).
  * For nls(), an optional constant scaleOffset may be added to the
    denominator of the relative offset convergence test for cases
    where the fit of a model is expected to be exact, thanks to a
    proposal by John Nash.  nls(*, trace=TRUE) now also shows the
    convergence criterion.
  * Numeric differentiation _via_ numericDeriv() gets new optional
    arguments eps and central, the latter for taking central divided
    differences.  The latter can be activated for nls() via
    nls.control(nDcentral = TRUE).
  * nls() now passes the trace and control arguments to getInitial(),
    notably for all self-starting models, so these can also be fit in
    zero-noise situations via a scaleOffset.  For this reason, the
    initial function of a selfStart model must now have ... in its
    argument list.
  * bquote(splice = TRUE) can now splice expression vectors with
    attributes: this makes it possible to splice the result of
    parse(keep.source = TRUE).  (Report and patch provided by Lionel
    Henry in PR#17869.)
  * textConnection() gets an optional name argument.
  * get(), exists(), and get0() now signal an error if the first
    argument has length greater than 1.  Previously additional
    elements were silently ignored.  (Suggested by Antoine Fabri on
    R-devel.)
  * R now provides a shorthand notation for creating functions, e.g.
    \(x) x + 1 is parsed as function(x) x + 1.
  * R now provides a simple native forward pipe syntax |&gt;.  The
    simple form of the forward pipe inserts the left-hand side as the
    first argument in the right-hand side call.  The pipe
    implementation as a syntax transformation was motivated by
    suggestions from Jim Hester and Lionel Henry.
  * all.equal(f, g) for functions now by default also compares their
    environment(.)s, notably via new all.equal method for class
    function.  Comparison of nls() fits, e.g., may now need
    all.equal(m1, m2, check.environment = FALSE).
  * .libPaths() gets a new option include.site, allowing to _not_
    include the site library.  (Thanks to Dario Strbenac's suggestion
    and Gabe Becker's PR#18016.)
  * Lithuanian translations are now available.  (Thanks to Rimantas
    Zakauskas.)
  * names() now works for DOTSXP objects.  On the other hand, in
    R-lang, the R language manual, we now warn against relying on the
    structure or even existence of such dot-dot-dot objects.
  * all.equal() no longer gives an error on DOTSXP objects.
  * capabilities("cairo") now applies only to the file-based devices
    as it is now possible (if very unusual) to build R with Cairo
    support for those but not for X11().
  * There is optional support for tracing the progress of
    loadNamespace() - see its help.
  * (Not Windows.)  l10n_info() reports an additional element, the
    name of the encoding as reported by the OS (which may differ from
    the encoding part (if any) of the result from
    Sys.getlocale("LC_CTYPE").
  * New function gregexec() which generalizes regexec() to find _all_
    disjoint matches and well as all substrings corresponding to
    parenthesized subexpressions of the given regular expression.
    (Contributed by Brodie Gaslam.)
  * New function charClass() in package utils to query the
    wide-character classification functions in use (such as
    iswprint).
  * The names of quantile()'s result no longer depend on the global
    getOption("digits"), but quantile() gets a new optional argument
    digits = 7 instead.
  * grep(), sub(), regexp and variants work considerably faster for
    long factors with few levels.  (Thanks to Michael Chirico's
    PR#18063.)
  * Provide grouping of x11() graphics windows within a window
    manager such as Gnome or Unity; thanks to a patch by Ivan Krylov
    posted to R-devel.
  * The split() method for class data.frame now allows the f argument
    to be specified as a formula.
  * sprintf now warns on arguments unused by the format string.
  * New palettes "Rocket" and "Mako" for hcl.colors() (approximating
    palettes of the same name from the 'viridisLite' package).
    Contributed by Achim Zeileis.
  * The base environment and its namespace are now locked (so one can
    no longer add bindings to these or remove from these).
  * Rterm handling of multi-byte characters has been improved,
    allowing use of such characters when supported by the current
    locale.
  * Rterm now accepts ALT+ +xxxxxxxx sequences to enter Unicode
    characters as hex digits.
  * Environment variable LC_ALL on Windows now takes precedence over
    LC_CTYPE and variables for other supported categories, matching
    the POSIX behaviour.
  * duplicated() and anyDuplicated() are now optimized for integer
    and real vectors that are known to be sorted via the ALTREP
    framework. Contributed by Gabriel Becker via PR#17993.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 14
    and so packages that provide graphics devices should be
    reinstalled.
  * Graphics devices should now specify deviceVersion to indicate
    what version of the graphics engine they support.
  * Graphics devices can now specify deviceClip.  If TRUE, the
    graphics engine will never perform any clipping of output itself.
    The clipping that the graphics engine does perform (for both
    canClip = TRUE and canClip = FALSE) has been improved to avoid
    producing unnecessary artifacts in clipped output.
  * The grid package now allows gpar(fill) to be a linearGradient(),
    a radialGradient(), or a pattern().  The viewport(clip) can now
    also be a grob, which defines a clipping path, and there is a new
    viewport(mask) that can also be a grob, which defines a mask.
    These new features are only supported so far on the Cairo-based
    graphics devices and on the pdf() device.
  * (Not Windows.)  A warning is given when a Cairo-based type is
    specified for a png(), jpeg(), tiff() or bmp() device but Cairo
    is unsupported (so type = "Xlib" is tried instead).
  * grSoftVersion() now reports the versions of FreeType and
    FontConfig if they are used directly (not _via_ Pango), as is
    most commonly done on macOS.
  C-LEVEL FACILITIES:
  * The _standalone_ libRmath math library and R's C API now provide
    log1pexp() again as documented, and gain log1mexp().
  INSTALLATION on a UNIX-ALIKE:
  * configure checks for a program pkgconf if program pkg-config is
    not found.  These are now only looked for on the path (like
    almost all other programs) so if needed specify a full path to
    the command in PKG_CONFIG, for example in file config.site.
  * C99 function iswblank is required - it was last seen missing ca
    2003 so the workaround has been removed.
  * There are new configure options --with-internal-iswxxxxx,
  - -with-internal-towlower and --with-internal-wcwidth which allows
    the system functions for wide-character classification,
    case-switching and width (wcwidth and wcswidth) to be replaced by
    internal ones.  The first has long been used on macOS, AIX (and
    Windows) but this enables it to be unselected there and selected
    for other platforms (it is the new default on Solaris).  The
    second is new in this version of R and is selected by default on
    macOS and Solaris.  The third has long been the default and
    remains so as it contains customizations for East Asian
    languages.
    System versions of these functions are often minimally
    implemented (sometimes only for ASCII characters) and may not
    cover the full range of Unicode points: for example Solaris (and
    Windows) only cover the Basic Multilingual Plane.
  * Cairo installations without X11 are more likely to be detected by
    configure, when the file-based Cairo graphics devices will be
    available but not X11(type = "cairo").
  * There is a new configure option --with-static-cairo which is the
    default on macOS.  This should be used when only static cairo
    (and where relevant, Pango) libraries are available.
  * Cairo-based graphics devices on platforms without Pango but with
    FreeType/FontConfig will make use of the latter for font
    selection.
  LINK-TIME OPTIMIZATION on a UNIX-ALIKE:
  * Configuring with flag --enable-lto=R now also uses LTO when
    installing the recommended packages.
  * R CMD INSTALL and R CMD SHLIB have a new flag --use-LTO to use
    LTO when compiling code, for use with R configured with
  - -enable-lto=R.  For R configured with --enable-lto, they have
    the new flag --no-use-LTO.
    Packages can opt in or out of LTO compilation _via_ a UseLTO
    field in the DESCRIPTION file.  (As usual this can be overridden
    by the command-line flags.)
  BUILDING R on Windows:
  * for GCC &gt;= 8, FC_LEN_T is defined in config.h and hence character
    lengths are passed from C to Fortran in _inter alia_ BLAS and
    LAPACK calls.
  * There is a new text file src/gnuwin32/README.compilation, which
    outlines how C/Fortran code compilation is organized and
    documents new features:
  * R can be built with Link-Time Optimization with a suitable
    compiler - doing so with GCC 9.2 showed several
    inconsistencies which have been corrected.
  * There is support for cross-compiling the C and Fortran code
    in R and standard packages on suitable (Linux) platforms.
    This is mainly intended to allow developers to test later
    versions of compilers - for example using GCC 9.2 or 10.x has
    detected issues that GCC 8.3 in Rtools40 does not.
  * There is experimental support for cross-building R packages
    with C, C++ and/or Fortran code.
  * The R installer can now be optionally built to support a single
    architecture (only 64-bit or only 32-bit).
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++14 where
    available (which it is on all currently checked platforms): if
    not (as before) C++11 is used if available otherwise C++ is not
    supported.
    Packages which specify C++11 will still be installed using C++11.
    C++14 compilers may give deprecation warnings, most often for
    std::random_shuffle (deprecated in C++14 and removed in C++17).
    Either specify C++11 (see 'Writing R Extensions') or modernize
    the code and if needed specify C++14.  The latter has been
    supported since R 3.4.0 so the package's DESCRIPTION would need
    to include something like
    Depends: R (&gt;= 3.4)
  PACKAGE INSTALLATION on Windows:
  * R CMD INSTALL and R CMD SHLIB make use of their flag --use-LTO
    when the LTO_OPT make macro is set in file etc/${R_ARCH}/Makeconf
    or in a personal/site Makevars file.  (For details see 'Writing R
    Extensions' SS4.5.)
    This provides a valuable check on code consistency.  It does work
    with GCC 8.3 as in Rtools40, but that does not detect everything
    the CRAN checks with current GCC do.
  PACKAGE INSTALLATION on macOS:
  * The default personal library directory on builds with
  - -enable-aqua (including CRAN builds) now differs by CPU type,
    one of
    ~/Library/R/x86_64/x.y/library
    ~/Library/R/arm64/x.y/library
    This uses the CPU type R (and hence the packages) were built for,
    so when a x86_64 build of R is run under Rosetta emulation on an
    arm64 Mac, the first is used.
  UTILITIES:
  * R CMD check can now scan package functions for bogus return
    statements, which were possibly intended as return() calls (wish
    of PR#17180, patch by Sebastian Meyer). This check can be
    activated via the new environment variable
    _R_CHECK_BOGUS_RETURN_, true for --as-cran.
  * R CMD build omits tarballs and binaries of previous builds from
    the top-level package directory.  (PR#17828, patch by Sebastian
    Meyer.)
  * R CMD check now runs sanity checks on the use of LazyData, for
    example that a data directory is present and that
    LazyDataCompression is not specified without LazyData and has a
    documented value.  For packages with large LazyData databases
    without specifying LazyDataCompression, there is a reference to
    the code given in 'Writing R Extensions' SS1.1.6 to test the
    choice of compression (as in all the CRAN packages tested a
    non-default method was preferred).
  * R CMD build removes LazyData and LazyDataCompression fields from
    the DESCRIPTION file of packages without a data directory.
  ENCODING-RELATED CHANGES:
  * The parser now treats \Unnnnnnnn escapes larger than the upper
    limit for Unicode points (\U10FFFF) as an error as they cannot be
    represented by valid UTF-8.
    Where such escapes are used for outputting non-printable
    (including unassigned) characters, 6 hex digits are used (rather
    than 8 with leading zeros).  For clarity, braces are used, for
    example \U{0effff}.
  * The parser now looks for non-ASCII spaces on Solaris (as
    previously on most other OSes).
  * There are warnings (including from the parser) on the use of
    unpaired surrogate Unicode points such as \uD834.  (These cannot
    be converted to valid UTF-8.)
  * Functions nchar(), tolower(), toupper() and chartr() and those
    using regular expressions have more support for inputs with a
    marked Latin-1 encoding.
  * The character-classification functions used (by default) to
    replace the system iswxxxxx functions on Windows, macOS and AIX
    have been updated to Unicode 13.0.0.
    The character-width tables have been updated to include new
    assignments in Unicode 13.0.0.
  * The code for evaluating default (extended) regular expressions
    now uses the same character-classification functions as the rest
    of R (previously they differed on Windows, macOS and AIX).
  * There is a build-time option to replace the system's
    wide-character wctrans C function by tables shipped with R: use
    configure option --with-internal-towlower or (on Windows)
  - DUSE_RI18N_CASE in CFLAGS when building R.  This may be needed
    to allow tolower() and toupper() to work with Unicode characters
    beyond the Basic Multilingual Plane where not supported by system
    functions (e.g. on Solaris where it is the new default).
  * R is more careful when truncating UTF-8 and other multi-byte
    strings that are too long to be printed, passed to the system or
    libraries or placed into an internal buffer.  Truncation will no
    longer produce incomplete multibyte characters.
  DEPRECATED AND DEFUNCT:
  * Function plclust() from the package stats and
    package.dependencies(), pkgDepends(), getDepList(),
    installFoundDepends(), and vignetteDepends() from package tools
    are defunct.
  * Defunct functions checkNEWS() and readNEWS() from package tools
    and CRAN.packages() from utils have been removed.
  * R CMD config CXXCPP is defunct (it was deprecated in R 3.6.2).
  * parallel::detectCores() drops support for Irix (retired in 2013).
  * The LINPACK argument to chol.default(), chol2inv(),
    solve.default() and svd() has been defunct since R 3.1.0.  It was
    silently ignored up to R 4.0.3 but now gives an error.
  * Subsetting/indexing, such as ddd[*] or ddd$x on a DOTSXP
    (dot-dot-dot) object ddd has been disabled; it worked by accident
    only and was undocumented.
  BUG FIXES:
  * Many more C-level allocations (mainly by malloc and strdup) are
    checked for success with suitable alternative actions.
  * Bug fix for replayPlot(); this was turning off graphics engine
    display list recording if a recorded plot was replayed in the
    same session.  The impact of the bug became visible if resize the
    device after replay OR if attempted another savePlot() after
    replay (empty display list means empty screen on resize or empty
    saved plot).
  * R CMD check etc now warn when a package exports non-existing S4
    classes or methods, also in case of no "methods" presence.
    (Reported by Alex Bertram; reproducible example and patch by
    Sebastian Meyer in PR#16662.)
  * boxplot() now also accepts calls for labels such as ylab, the
    same as plot().  (Reported by Marius Hofert.)
  * The help page for xtabs() now correctly states that addNA is
    setting na.action = na.pass among others.  (Reported as PR#17770
    by Thomas Soeiro.)
  * The R CMD check &lt;pkg&gt; gives a longer and more comprehensible
    message when DESCRIPTION misses dependencies, e.g., in Imports:.
    (Thanks to the contributors of PR#17179.)
  * update.default() now calls the generic update() on the formula to
    work correctly for models with extended formulas.  (As reported
    and suggested by Neal Fultz in PR#17865.)
  * The horizontal position of leaves in a dendrogram is now correct
    also with center = FALSE.  (PR#14938, patch from Sebastian
    Meyer.)
  * all.equal.POSIXt() no longer warns about and subsequently ignores
    inconsistent "tzone" attributes, but describes the difference in
    its return value (PR#17277).  This check can be disabled _via_
    the new argument check.tzone = FALSE as suggested by Sebastian
    Meyer.
  * as.POSIXct() now populates the "tzone" attribute from its tz
    argument when x is a logical vector consisting entirely of NA
    values.
  * x[[2^31]] &lt;- v now works.  (Thanks to the report and patch by
    Suharto Anggono in PR#17330.)
  * In log-scale graphics, axis() ticks and label positions are now
    computed more carefully and symmetrically in their range,
    typically providing _more_ ticks, fulfilling wishes in PR#17936.
    The change really corresponds to an improved axisTicks() (package
    grDevices), potentially influencing grid and lattice, for
    example.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now correct to at
    least five digits where it was catastrophically wrong,
    previously.
  * sum(df) and similar "Summary"- and "Math"-group member functions
    now work for data frames df with logical columns, notably also of
    zero rows.  (Reported to R-devel by Martin "b706".)
  * unsplit() had trouble with tibbles due to unsound use of rep(NA,
    len)-indexing, which should use NA_integer_ (Reported to R-devel
    by Mario Annau.)
  * pnorm(x, log.p = TRUE) underflows to -Inf slightly later.
  * show(&lt;hidden S4 generic&gt;) prints better and without quotes for
    non-hidden S4 generics.
  * read.table() and relatives treated an "NA" column name as missing
    when check.names = FALSE PR#18007.
  * Parsing strings containing UTF-16 surrogate pairs such as
    "\uD834\uDD1E" works better on some (uncommon) platforms.
    sprintf("%X", utf8ToInt("\uD834\uDD1E")) should now give "1D11E"
    on all platforms.
  * identical(x,y) is no longer true for differing DOTSXP objects,
    fixing PR#18032.
  * str() now works correctly for DOTSXP and related exotics, even
    when these are doomed.
    Additionally, it no longer fails for lists with a class and
    "irregular" method definitions such that e.g. lapply(*) will
    necessarily fail, as currently for different igraph objects.
  * Too long lines in environment files (e.g. Renviron) no longer
    crash R. This limit has been increased to 100,000 bytes.
    (PR#18001.)
  * There is a further workaround for FreeType giving incorrect
    italic font faces with cairo-based graphics devices on macOS.
  * add_datalist(*, force = TRUE) (from package tools) now actually
    updates an existing data/datalist file for new content.  (Thanks
    to a report and patch by Sebastian Meyer in PR#18048.)
  * cut.Date() and cut.POSIXt() could produce an empty last interval
    for breaks = "months" or breaks = "years".  (Reported as PR#18053
    by Christopher Carbone.)
  * Detection of the encoding of 'regular' macOS locales such as
    en_US (which is UTF-8) had been broken by a macOS change:
    fortunately these are now rarely used with en_US.UTF-8 being
    preferred.
  * sub() and gsub(pattern, repl, x, *) now keep attributes of x such
    as names() also when pattern is NA (PR#18079).
  * Time differences ("difftime" objects) get a replacement and a
    rep() method to keep "units" consistent.  (Thanks to a report and
    patch by Nicolas Bennett in PR#18066.)
  * The \RdOpts macro, setting defaults for \Sexpr options in an Rd
    file, had been ineffective since R 2.12.0: it now works again.
    (Thanks to a report and patch by Sebastian Meyer in PR#18073.)
  * mclapply and pvec no longer accidentally terminate parallel
    processes started before by mcparallel or related calls in
    package parallel (PR#18078).
  * grep and other functions for evaluating (extended) regular
    expressions handle in Unicode also strings not explicitly flagged
    UTF-8, but flagged native when running in UTF-8 locale.
  * Fixed a crash in fifo implementation on Windows (PR#18031).
  * Binary mode in fifo on Windows is now properly detected from
    argument open (PR#15600, PR#18031).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1622808000">- The line %{__install} -m 755 -d %{_infodir}
  no longer works in TW or Factory.
  But without that line it works everywhere. So this instruction
  was commented out of the spec file.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1628596800">- CHANGES IN R 4.1.1:
  NEW FEATURES:
  * require(pkg, quietly = TRUE) is quieter and in particular does
    not warn if the package is not found.
  DEPRECATED AND DEFUNCT:
  * Use of ftp:// URIs should be regarded as deprecated, with
    on-going support confined to method = "libcurl" and not routinely
    tested.  (Nowadays no major browser supports them.)
  * The non-default method = "internal" is deprecated for http:// and
    ftp:// URIs for both download.file and url.
  * On Windows, method = "wininet" is deprecated for http://,
    https:// and ftp:// URIs for both download.file and url.  (A
    warning is only given for ftp://.)
    For ftp:// URIs the default method is now "libcurl" if available
    (which it is on CRAN builds).
    method = "wininet" remains the default for http:// and https://
    URIs but if libcurl is available, using method = "libcurl" is
    preferred.
  INSTALLATION:
  * make check now works also without a LaTeX installation.  (Thanks
    to Sebastian Meyer's PR#18103.)
  BUG FIXES:
  * make check-devel works again in an R build configured with
  - -without-recommended-packages.
  * qnbinom(p, size, mu) for large size/mu is correct now in a range
    of cases (PR#18095); similarly for the (size, prob)
    parametrization of the negative binomial.  Also qpois() and
    qbinom() are better and or faster for extreme cases.  The
    underlying C code has been modularized and is common to all four
    cases of discrete distributions.
  * gap.axis is now part of the axis() arguments which are passed
    from bxp(), and hence boxplot().  (Thanks to Martin Smith's
    report and suggestions in PR#18109.)
  * .First and .Last can again be set from the site profile.
  * seq.int(from, to, *) and seq.default(..) now work better in large
    range cases where from-to is infinite where the two boundaries
    are finite.
  * all.equal(x,y) now returns TRUE correctly also when several
    entries of abs(x) and abs(y) are close to .Machine$double.xmax,
    the largest finite numeric.
  * model.frame() now clears the object bit when removing the class
    attribute of a value via na.action (PR#18100).
  * charClass() now works with multi-character strings on Windows
    (PR#18104, fixed by Bill Dunlap).
  * encodeString() on Solaris now works again in Latin-1 encoding on
    characters represented differently in UTF-8.  Support for
    surrogate pairs on Solaris has been improved.
  * file.show() on Windows now works with non-ASCII path names
    representable in the current native encoding (PR#18132).
  * Embedded R on Windows can now find R home directory via the
    registry even when installed only for the current user
    (PR#18135).
  * pretty(x) with finite x now returns finite values also in the
    case where the extreme x values are close in size to the maximal
    representable number .Machine$double.xmax.
    Also, it's been tweaked for very small ranges and when a boundary
    is close (or equal) to zero; e.g., pretty(c(0,1e-317)) no longer
    has negative numbers, currently still warning about a very small
    range, and pretty(2^-(1024 - 2^-1/(c(24,10)))) is more accurate.
  * The error message for not finding vignette files when weaving has
    correct file sizes now. (Thanks to Sebastian Meyer's PR#18154.)
  * dnbinom(20, &lt;large&gt;, 1) now correctly gives 0, and similar cases
    are more accurate with underflow precaution.  (Reported by Francisco Vera Alcivar in PR#18072.)</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635163200">- repaired https://bugzilla.suse.com/show_bug.cgi?id=1191380
  (rpmacros now go to rpmmacrodir)
- minor clean-ups in spec file</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635768000">- CHANGES IN R 4.1.2:
  C-LEVEL FACILITIES:
  * The workaround in headers R.h and Rmath.h (using namespace std;)
    for the Oracle Developer Studio compiler is no longer needed now
    C++11 is required so has been removed.  A couple more usages of
    log() (which should have been std::log()) with an int argument
    are reported on Solaris.
  * The undocumented limit of 4095 bytes on messages from the
    S-compatibility macros PROBLEM and MESSAGE is now documented and
    longer messages will be silently truncated rather than
    potentially causing segfaults.
  * If the R_NO_SEGV_HANDLER environment variable is non-empty, the
    signal handler for SEGV/ILL/BUS signals (which offers recovery
    user interface) is not set. This allows more reliable debugging
    of crashes that involve the console.
  DEPRECATED AND DEFUNCT:
  * The legacy S-compatibility macros PROBLEM, MESSAGE, ERROR, WARN,
    WARNING, RECOVER, ... are deprecated and will be hidden in R
    4.2.0. R's native interface of Rf_error and Rf_warning has long
    been preferred.
  BUG FIXES:
  * .mapply(F, dots, .) no longer segfaults when dots is not a list
    and uses match.fun(F) as always documented; reported by Andrew
    Simmons in PR#18164.
  * hist(&lt;Date&gt;, ...) and hist(&lt;POSIXt&gt;, ...)  no longer pass
    arguments for rect() (such as col and density) to axis().
    (Thanks to Sebastian Meyer's PR#18171.)
  * \Sexpr{ch} now preserves Encoding(ch). (Thanks to report and
    patch by Jeroen Ooms in PR#18152.)
  * Setting the RNG to "Marsaglia-Multicarry" e.g., by RNGkind(), now
    warns in more places, thanks to Andr'e Gillibert's report and
    patch in PR#18168.
  * gray(numeric(), alpha=1/2) no longer segfaults, fixing PR#18183,
    reported by Till Krenz.
  * Fixed dnbinom(x, size=&lt;very_small&gt;, .., log=TRUE) regression,
    reported by Martin Morgan.
  * as.Date.POSIXlt(x) now keeps names(x), thanks to Davis Vaughan's
    report and patch in PR#18188.
  * model.response() now strips an "AsIs" class typically, thanks to
    Duncan Murdoch's report and other discussants in PR#18190.
  * try() is considerably faster in case of an error and long call,
    as e.g., from some do.call().  Thanks to Alexander Kaever's
    suggestion posted to R-devel.
  * qqline(y = &lt;object&gt;) such as y=I(.), now works, see also
    PR#18190.
  * Non-integer mgp par() settings are now handled correctly in
    axis() and mtext(), thanks to Mikael Jagan and Duncan Murdoch's
    report and suggestion in PR#18194.
  * formatC(x) returns length zero character() now, rather than ""
    when x is of length zero, as documented, thanks to Davis
    Vaughan's post to R-devel.
  * removeSource(fn) now retains (other) attributes(fn).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1647000000">- CHANGES IN R 4.1.3:
  NEW FEATURES:
  * The default version of Bioconductor has been changed to 3.14.
    (This is used by setRepositories and the menus in GUIs.)
  UTILITIES:
  * R CMD check --as-cran has a workaround for a bug in versions of
    file up to at least 5.41 which mis-identify DBF files last
    changed in 2022 as executables.
  C-LEVEL FACILITIES:
  * The legacy S-compatibility macros SINGLE_* in R_ext/Constants.h
    (included by R.h) are deprecated and will be removed in R 4.2.0.
  BUG FIXES:
  * Initialization of self-starting nls() models with initialization
    functions following the pre-R-4.1.0 API (without the ...
    argument) works again for now, with a deprecation warning.
  * Fixed quoting of ~autodetect~ in Java setting defaults to avoid
    inadvertent user lookup due to leading ~, reported in PR#18231 by
    Harold Gutch.
  * substr(., start, stop) &lt;- v now treats _negative_ stop values
    correctly.  Reported with a patch in PR#18228 by Brodie Gaslam.
  * Subscripting an array x without dimnames by a
    length(dim(x))-column character matrix gave "random" non-sense,
    now an error; reported in PR#18244 by Mikael Jagan.
  * ...names() now matches names(list(...)) closely, fixing PR#18247.
  * all.equal(*, scale = s) now works as intended when length(s) &gt; 1,
    partly thanks to Michael Chirico's PR#18272.
  * print(x) for long vectors x now also works for named atomic
    vectors or lists and prints the correct number when reaching the
    getOption("max.print") limit; partly thanks to a report and
    proposal by Hugh Parsonage to the R-devel list.
  * all.equal(&lt;selfStart&gt;, *) no longer signals a deprecation
    warning.
  * reformulate(*, response=r) gives a helpful error message now when
    length(r) &gt; 1, thanks to Bill Dunlap's PR#18281.
  * Modifying globalCallingHandlers inside withCallingHandlers() now
    works or fails correctly, thanks to Henrik Bengtsson's PR#18257.
  * hist(&lt;Date&gt;, breaks = "days") and hist(&lt;POSIXt&gt;, breaks = "secs")
    no longer fail for inputs of length 1.
  * qbeta(.001, .9, .009) and similar cases now converge correctly
    thanks to Ben Bolker's report in PR#17746.
  * window(x, start, end) no longer wrongly signals "'start' cannot
    be after 'end'", fixing PR#17527 and PR#18291.
  * data() now checks that its (rarely used) list argument is a
    character vector - a couple of packages passed other types and
    gave incorrect results.
  * which() now checks its arr.ind argument is TRUE rather coercing
    to logical and taking the first element - which gave incorrect
    results in package code.
  * model.weights() and model.offset() more carefully extract their
    model components, thanks to Ben Bolker and Tim Taylor's R-devel
    post.
  * list.files(recursive = TRUE) now shows all broken symlinks
    (previously, some of them may have been omitted, PR#18296).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1650628800">- CHANGES IN R 4.2.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * The formula method of aggregate() now matches the generic in
    naming its first argument x (resolving PR#18299 by Thomas
    Soeiro).
    This means that calling aggregate() with a formula as a named
    first argument requires name formula in earlier versions of R and
    name x now, so portable code should not name the argument (code
    in many packages did).
  * Calling &amp;&amp; or || with either argument of length greater than one
    now gives a warning (which it is intended will become an error).
  * Calling if() or while() with a condition of length greater than
    one gives an error rather than a warning.  Consequently,
    environment variable _R_CHECK_LENGTH_1_CONDITION_ no longer has
    any effect.
  * Windows users should consult the WINDOWS section below for some
    profound changes including
  * Support for 32-bit builds has been dropped.
  * UTF-8 locales are used where available.
  * The default locations for the R installation and personal
    library folder have been changed.
    Thanks to Tomas Kalibera for months of work on the Windows port
    for this release.
  NEW FEATURES:
  * matrix(x, n, m) now warns in more cases where length(x) differs
    from n * m, as suggested by Abby Spurdle and Wolfgang Huber in
    Feb 2021 on the R-devel mailing list.
    This warning can be turned into an error by setting environment
    variable _R_CHECK_MATRIX_DATA_ to TRUE: R CMD check --as-cran
    does so unless it is already set.
  * Function file_test() in package utils gains tests for symlinks,
    readability and writability.
  * capabilities("libxml") is now false.
    The description of capabilities("http/ftp") now reflects that it
    refers to the default method, no longer the internal one.
  * simplify2array() gains an except argument for controlling the
    exceptions used by sapply().
  * Environment variables R_LIBS_USER and R_LIBS_SITE are both now
    set to the R system default if unset or empty, and can be set to
    NULL to indicate an empty list of user or site library
    directories.
  * The warning for axis()(-like) calls in cases of relatively small
    ranges (typically in log-scale situations) is slightly improved
    _and_ suppressed from explicit calls to .axisPars() as has always
    been the intention.
  * The contrasts setter function `contrasts&lt;-` gains an explicit
    default how.many = NULL rather than just using missing(how.many).
  * grid.pretty() gains a new optional argument n = 5.
  * There is a new function .pretty() with option bounds as a
    technical-utility version of pretty().  It and pretty() gain a
    new argument f.min with a better than back-compatible default.
  * Function grDevices::axisTicks() and related functions such as
    graphics::axis() work better, notably for the log scale; partly
    because of the pretty() improvements, but also because care is
    taken e.g., when ylim is finite but diff(ylim) is infinite.
  * nclass.FD() gains a digits option.
  * The R Mathlib internal C function bd0() (called indirectly from a
    dozen probability density and distribution functions such as
    dpois(), dbinom(), dgamma(), pgamma() _etc_) has been
    complemented by a more sophisticated and (mostly) more accurate C
    function ebd0(), currently called only by internal dpois_raw()
    improving accuracy for R level dpois() and potentially others
    calling it such as dnbinom(), dgamma() or pgamma().  (Thanks to
    Morten Welinder's PR#15628.)
  * write.ftable() gains sep = " " argument as suggested by Thomas
    Soeiro.
  * The names of the locale categories supported by R's
    Sys.getlocale() and Sys.setlocale() are now provided by variable
    .LC.categories in the base namespace.
  * The Date and POSIXt methods for hist() and the histogram method
    for plot() now also use the new default col = "lightgray" in
    consistency with the corresponding change to hist()'s default for
    R 4.0.0.
  * hist.default() gains new fuzz argument, and the histogram plot
    method no longer uses fractional axis ticks when displaying
    counts ("Frequency").
  * mapply() and hence Map() now also obey the "max-or-0-if-any"
    recycling rule, such that, e.g., Map(`+`, 1:3, 1[0]) is valid
    now.
  * as.character(&lt;obj&gt;) for "hexmode" or "octmode" objects now
    fulfils the important basic rule as.character(x)[j] ===
    as.character(x[j]).
  * The set utility functions, notably intersect() have been tweaked
    to be more consistent and symmetric in their two set arguments,
    also preserving a common mode.
  * substr(ch, start,end) &lt;- new now e.g., preserves names(ch); ditto
    for substring(), thanks to a patch from Brodie Gaslam.
  * plot(&lt;lm&gt;) gains a extend.ylim.f argument, in partial response to
    PR#15285; further PR#17784 is fixed thanks to several
    contributors and a patch by Elin Waring.  The Cook's dist
    contours get customizable via cook.col and cook.lty with a
    different default color and their legend is nicer by default and
    customizable via cook.legendChanges.
  * Attempting to subset an object that is not subsettable now
    signals an error of class notSubsettableError. The
    non-subsettable object is contained in the object field of the
    error condition.
  * Subscript-out-of-bounds errors are now signaled as errors of
    class subscriptOutOfBoundsError.
  * Stack-overflow errors are now signaled as errors inheriting from
    class stackOverflowError. See ?stackOverflowError for more
    details.
  * New partly experimental Sys.setLanguage() utility, solving the
    main problem of PR#18055.
  * gettext() and gettextf() get a new option trim = TRUE which when
    set to false allows translations for strings such as "Execution
    halted\n" typical for C code.
  * An experimental implementation of hash tables is now available.
    See ?hashtab for more details.
  * identical() gains a extptr.as.ref argument for requesting that
    external pointer objects be compared as reference objects.
  * reorder() gets an argument decreasing which it passes to sort()
    for level creation; based on the wish and patch by Thomas Soeiro
    in PR#18243.
  * as.vector() gains a data.frame method which returns a simple
    named list, also clearing a long standing 'FIXME' to enable
    as.vector(&lt;data.frame&gt;, mode="list").  This breaks code relying
    on as.vector(&lt;data.frame&gt;) to return the unchanged data frame.
  * legend() is now vectorized for arguments cex, x.intersp, and
    text.width.  The latter can now also be specified as a vector
    (one element for each column of the legend) or as NA for
    computing a proper column wise maximum value of strwidth(legend).
    The argument y.intersp can be specified as a vector with one
    entry for each row of the legend.
    legend() also gains new arguments title.cex and title.font.
    Thanks to Swetlana Herbrandt.
  * Deparsing no longer remaps attribute names dim, dimnames, levels,
    names and tsp to historical S-compatible names (which structure()
    maps back).
  * sample() and sample.int() have additional sanity checks on their
    size and n arguments.
    all.equal.numeric() gains a sanity check on its tolerance
    argument - calling all.equal(a, b, c) for three numeric vectors
    is a surprisingly common error.
    mean(na.rm =), rank(na.last =), barplot(legend.text =),
    boxplot(), contour(drawlabels =), polygon(border =) and
    methods::is(class2 =) have more robust sanity checks on their
    arguments.
    R CMD Rd2pdf (used by R CMD check) has a more robust sanity check
    on the format of \alias{} commands.
  * psigamma(x, deriv) for negative x now also works for deriv = 4
    and 5; their underlying C level dpsifn() is documented in
    'Writing R Extensions'.
  * The HTML help system now uses HTML5 (wish of PR#18149).
  * ks.test() now provides exact p-values also with ties and MC
    p-values in the two-sample (Smirnov) case.  By Torsten Hothorn.
  * ks.test() gains a formula interface, with y ~ 1 for the
    one-sample (Kolmogorov) test and y ~ group for the two-sample
    (Smirnov) test.  Contributed by Torsten Hothorn.
  * The return value from ks.test() now has class c("ks.test",
    "htest") - packages using try() need to take care to use
    inherits() and not == on the class.
  * New functions psmirnov(), qsmirnov() and rsmirnov() in package
    stats implementing the asymptotic and exact distributions of the
    two-sample Smirnov statistic.
  * iconv() now allows sub = "c99" to use C99-style escapes for UTF-8
    inputs which cannot be converted to encoding to.
  * In a forward pipe |&gt; expression it is now possible to use a named
    argument with the placeholder _ in the rhs call to specify where
    the lhs is to be inserted.  The placeholder can only appear once
    on the rhs.
  * The included LAPACK sources have been updated to version 3.10.0,
    except for the four Fortran 77 routines which 3.10.0 has
    re-implemented in Fortran 90 (where the older versions have been
    retained as the R build process does not support Fortran 90).
  * path.expand() and most other uses of tilde expansion now warn if
    a path would be too long if expanded.  (An exception is
    file.exists(), which silently returns false.)
  * trunc(&lt;Date&gt;, *) now supports units = "months" or "years" for
    consistency with the POSIXt method, thanks to Dirk Eddelbuettel's
    proposal in PR#18099.
  * list2DF() now checks that its arguments are of the same length,
    rather than use recycling.
  * The HTML help system has several new features: LaTeX-like math
    can be typeset using either KaTeX or MathJax, usage and example
    code is highlighted using Prism, and for dynamic help the output
    of examples and demos can be shown within the browser if the
    knitr package is installed. These features can be disabled by
    setting the environment variable _R_HELP_ENABLE_ENHANCED_HTML_ to
    a false value.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 15
    and so packages that provide graphics devices should be
    reinstalled.
  * The grid package now allows the user to specify a "vector" of
    pattern fills.  The fill argument to gpar() accepts a list of
    gradients and/or patterns and the functions linearGradient(),
    radialGradient(), and pattern() have a new group argument.
    Points grobs (data symbols) can now also have a pattern fill.
    The grobCoords() function now returns a more informative and
    complex result.
  * The grid package has new functions for drawing isolated groups:
    grid.group(), grid.define(), and grid.use().  These functions add
    compositing operators and affine transformations to R's graphics
    capabilities.
    The grid package also has new functions for stroking and filling
    paths: grid.stroke(), grid.fill(), and grid.fillStroke().
    A new function as.path() allows the user to specify the fill rule
    for a path that is to be used for clipping, stroking, or filling;
    available options are "winding" and "evenodd".  A new function
    as.mask() allows the user to specify the type of a mask;
    available options are "alpha" and "luminance".
    These new features are only supported so far (at most) on the
    Cairo-based graphics devices and on the pdf() device.
  * dev.capabilities() reports on device support for the new
    features.
  * par() now warns about unnamed non-character arguments to prevent
    misuse such as {usr &lt;- par("usr"); par(usr)}.
  INSTALLATION:
  * Facilities for accessing ftp:// sites are no longer tested
    (except _pro tem_ for curlGetHeaders()) as modern browsers have
    removed support.
  * R can now be built with DEFS = -DSTRICT_R_HEADERS .
  PACKAGE INSTALLATION:
  * R CMD INSTALL no longer tangles vignettes. This completes an R
    CMD build change in R 3.0.0 and affects packages built before R
    3.0.2. Such packages should be re-made with R CMD build to have
    the tangled R code of vignettes shipped with the tarball.
  * USE_FC_LEN_T will become the default: this uses the correct
    prototypes for Fortran BLAS/LAPACK routines called from C/C++,
    and requires adjustment of most such calls - see 'Writing R
    Extensions' SS6.6.2.  (This has been supported since R 3.6.2.)
  * Package installation speed for packages installed with
    keep.source has been improved. This resolve the issue reported by
    Ofek Shilon in PR#18236.
  UTILITIES:
  * R CMD check can optionally report files/directories left behind
    in home, /tmp (even though TMPDIR is set) and other directories.
    See the "R Internals" manual for details.
  * R CMD check now reports byte-compilation errors during
    installation.  These are not usually fatal but may result in
    parts of the package not being byte-compiled.
  * _R_CHECK_DEPENDS_ONLY_ can be applied selectively to examples,
    tests and/or vignettes in R CMD check: see the "R Internals"
    manual.
  * _R_CHECK_SRC_MINUS_W_IMPLICIT_ now defaults to true: recent
    versions of Apple clang on macOS have made implicit function
    declarations in C into a compilation error.
  * R CMD check --as-cran makes use of the environment variable
    AUTORECONF.  See the "R Internals" manual SS8 for further details.
  * R CMD check --use-valgrind also uses valgrind when re-building
    vignettes as some non-Sweave vignettes unhelpfully comment out
    all their code when R CMD check runs vignettes.
  * Errors in re-building vignettes (unless there are LaTeX errors)
    are reported by R CMD check as ERROR rather than WARNING when
    running vignettes has been skipped (as it frequently is in CRAN
    checks and by --as-cran).
  * R CMD Rd2pdf gains a --quiet option that is used by R CMD build
    when building the PDF package manual.
  * R CMD Rd2pdf now always runs LaTeX in batch mode, consistent with
    Texinfo &gt;= 6.7. The --batch option is ignored.
  * R CMD build and R CMD check now include the Rd file name and line
    numbers in the error message of an \Sexpr evaluation failure.
  * For packages using the \doi Rd macro (now an install-time \Sexpr)
    but no other dynamic Rd content, R CMD build now produces a
    smaller tarball and is considerably faster - skipping temporary
    package installation.
  C-LEVEL FACILITIES:
  * The non-API header R_ext/R-ftp-http.h is no longer provided, as
    the entry points it covered are now all defunct.
  * A number of non-API declarations and macro definitions have been
    moved from the installed header Rinternals.h to the internal
    header Defn.h. Packages that only use entry points and
    definitions documented to be part of the API as specified in
    'Writing R Extensions' SS6 should not be affected.
  * The macro USE_RINTERNALS no longer has any effect when compiling
    package code.  Packages which also use R_NO_REMAP will need to
    ensure that the remapped names are used for calls to API
    functions that were formerly also made available as macros.
  * The deprecated legacy S-compatibility macros PROBLEM, MESSAGE,
    ERROR, WARN, WARNING, RECOVER, ... are no longer defined in
    R_exts/RS.h (included by R.h).  Replace these by calls to
    Rf_error and Rf_warning (defined in header R_ext/Error.h included
    by R.h).
    Header R_ext/RS.h no longer includes R_ext/Error.h.
  * Header R_ext/Constants.h (included by R.h) when included from C++
    now includes the C++ header cfloat rather than the C header
    float.h (now possible as C++11 is required).
  * The legacy S-compatibility macros DOUBLE_* in R_ext/Constants.h
    (included by R.h) are deprecated.
  * The deprecated S-compatibility macros SINGLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * R_Calloc, R_Free and R_Realloc are preferred to their unprefixed
    forms and error messages now use the prefix. These forms were
    introduced in R 3.4.0 and are available even when
    STRICT_R_HEADERS is defined.
  * rmultinom has been documented in 'Writing R Extensions' SS6 so is
    now part of the R API.
  * Similarly, Rtanpi, called from R level tanpi() is now part of the
    R API.
  * The long-deprecated, undocumented and non-API entry point call_R
    is no longer declared in R_ext/RS.h (included by R.h).
  * The header S.h which has been unsupported since Jan 2016 has been
    removed.  Use R.h instead.
  DEPRECATED AND DEFUNCT:
  * The (non-default and deprecated) method = "internal" for
    download.file() and url() no longer supports http:// nor ftp://
    URIs.  (It is used only for file:// URIs.)
    On Windows, download.file(method = "wininet") no longer supports
    ftp:// URIs.  (It is no longer the default method, which is
    "libcurl" and does.)
    On Windows, the deprecated method = "wininet" now gives a warning
    for http:// and https:// URIs for both download.file() and url().
    (It is no longer the default method.)
  * On Windows, the command-line option --max-mem-size and
    environment variable R_MAX_MEM_SIZE are defunct.  The memory
    allocation limit was important for 32-bit builds, but these are
    no longer supported.
  * default.stringsAsFactors() is now formally deprecated, where that
    was only mentioned on its regular help page, previously.  So it
    now gives a warning if called.
  * unix.time() is defunct now; it had been deprecated since R 3.4.0.
  BUG FIXES:
  * Setting digits = 0 in format(), print.default() (and hence
    typically print()) or options() is again invalid.  Its behaviour
    was platform-dependent, and it is unclear what "zero significant
    digits" should mean (PR#18098).
  * Messages from C code in the cairo section of package grDevices
    are now also offered for translation, thanks to Michael Chirico's
    PR#18123.
  * mean(x) with finite x now is finite also without "long.double"
    capability.
  * R CMD Rd2pdf no longer leaves an empty build directory behind
    when it aborts due to an already existing output file.  (Thanks
    to Sebastian Meyer's PR#18141.)
  * density(x, weights = w, na.rm = TRUE) when anyNA(x) is true, now
    removes weights "in parallel" to x, fixing PR#18151, reported by
    Matthias Gondan.  Additionally, it gets a subdensity option.
  * Conversion of \Sexpr[]{&lt;expR&gt;} to LaTeX or HTML no longer
    produces long blocks of empty lines when &lt;expR&gt; itself contains
    several lines all producing empty output.  Thanks to a report and
    patch by Ivan Krylov posted to R-devel.
  * R CMD build no longer fails if a package vignette uses child
    documents and inst/doc exists.  (Thanks to Sebastian Meyer's
    PR#18156.)
  * When an R documentation ('help' source) file man/foo.Rd in a
    package has \donttest{..} examples with a syntax error, it is now
    signalled as ERROR and with correct line numbers relating to the
  * -Ex.R file, thanks to Duncan Murdoch and Sebastian Meyer's
    reports and patch proposals in PR#17501.
  * Improved determination of the correct translation domain in
    non-base packages, addressing the combination of PR#18092 and
    PR#17998 (#c6) with reports and _augmented_ patch #2904 by
    Suharto Anggono.
    Note that "R-base" is no longer the default domain e.g., for
    top-level calls to gettext(); rather translation needs explicit
    domain = * specification in such cases.
  * identical(attrib.as.set=FALSE) now works correctly with data
    frames with default row names (Thanks to Charlie Gao's PR#18179).
  * txtProgressBar() now enforces a non-zero width for argument char,
    without which no progress can be visible.
  * dimnames(table(d)) is more consistent in the case where d is a
    list with a single component, thanks to Thomas Soeiro's report to
    R-devel.
    Further, table(d1, d2) now gives an error when d1 and d2 are data
    frames as suggested by Thomas in PR#18224.
  * Fix for drawing semi-transparent lines and fills on the native
    Windows graphics device (PR#18219 and PR#16694).  Thanks to Nick
    Ray for helpful diagnosis on Bugzilla.
  * The deparser now wraps sub-expressions such as if(A) ..  with
    parentheses when needed; thanks to Duncan Murdoch's PR#18232 and
    Lionel Henry's patches there.
  * remove.packages() no longer tries to uninstall Priority: base
    packages, thanks to a report and suggestions by Colin Fay in
    PR#18227.
  * win.metafile() now has xpinch and ypinch arguments so that the
    user can override Windows' (potentially wrong) guess at device
    dimensions.
  * x[i] and x[[i]] for non-integer i should now behave in all cases
    as always documented: the index used is equivalent to
    as.integer(i) unless that would overflow where trunc(i) is used
    instead; thanks to Suharto Anggono's report and patch proposals
    in PR#17977.
  * asOneSidedFormula() now associates the resulting formula with the
    global environment rather than the evaluation environment created
    for the call.
  * &lt;bibentry&gt;$name now matches the field name case-insensitively,
    consistent with bibentry() creation and the replacement method.
  * cbind() failed to detect some length mismatches with a mixture of
    time-series and non-time-series inputs.
  * The default LaTeX style file Sweave.sty used by the RweaveLatex
    driver no longer loads the obsolete ae package; thanks to a
    report by Thomas Soeiro in PR#18271.  Furthermore, it now skips
    \usepackage[T1]{fontenc} for engines other than pdfTeX (if
    detected) or if the new [nofontenc] option is used.
  * smooth.spline() now stores its logical cv argument more safely,
    fixing a rare bug when printing, and also stores n.
  * smooth.spline(x,y,*) now computes the cv.crit statistic
    correctly, also when is.unsorted(x), fixing PR#18294.
  * The data.frame method of rbind() now warns when binding
    not-wholly-recycling vectors, by analogy to the default method
    (for matrices).
  * setAs() finds the correct class for name to when multiple
    packages define a class with that name. Thanks to Gabor Csardi
    for the report.
  * Fix for detaching a package when two classes of the same name are
    present in method signatures for the same generic. Thanks to
    Gabor Csardi for the report.
  * match.arg("", c("", "a", "B")) gives a better error message, in
    part from PR#17959, thanks to Elin Waring.
  * R CMD Sweave --clean no longer removes pre-existing files or
    subdirectories (PR#18242).
  * The quartz() device no longer splits polylines into subpaths.
    That has caused narrowly-spaced lines with many points to always
    look solid even when dashed line type was used due to dash phase
    restarts.
  * Deparsing constructs such as quote(1 + `!`(2) + 3) works again as
    before R 3.5.0, thanks to the report and patch in PR#18284 by
    Suharto Anggono.
  * as.list(f) for a factor f now keeps names(f), fixing PR#18309.
  * qbeta(.001, .9, .009) and analogous qf() calls now return a
    correct value instead of NaN or wrongly 1, all with a warning;
    thanks to the report by Ludger Goeminne in PR#18302.
  * plot.lm() failed to produce the plot of residuals vs.  factor
    levels (i.e., which=5 when leverages are constant) for models
    with character predictors (PR#17840).
  * interaction.plot(..., xtick = TRUE) misplaced the x-axis line
    (PR#18305).
  * Not strictly fixing a bug, format()ing and print()ing of
    non-finite Date and POSIXt values NaN and +/-Inf no longer show
    as NA but the respective string, e.g., Inf, for consistency with
    numeric vector's behaviour, fulfilling the wish of PR#18308.
  * R CMD check no longer runs test scripts generated from
    corresponding .Rin files twice and now signals an ERROR if
    processing an .Rin script fails.
  * tools::Rd2txt() used for plain-text help pages now renders \hrefs
    (if tools::Rd2txt_options(showURLs = TRUE)) and \urls with
    percent-encoding and standards-compliant delimiting style (angle
    brackets and no URL: prefix).  \email is now rendered with a
    mailto: prefix.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1655985600">- CHANGES IN R 4.2.1:
  NEW FEATURES:
  * New function utils::findCRANmirror() to find out if a CRAN mirror
    has been selected, otherwise fallback to the main site.  This
    behaves in the same way as tools::CRAN_package_db() and is
    intended for packages wishing to access CRAN for purposes other
    than installing packages.
    The need for this was shown by a day when the main CRAN website
    was offline and a dozen or so packages which had its URL
    hardcoded failed their checks.
  INSTALLATION on a UNIX-ALIKE:
  * The libraries searched for by --with-blas (without a value) now
    include BLIS (after OpenBLAS but before ATLAS).  And on macOS,
    the Accelerate framework (after ATLAS).  (This is patterned after
    the AX_BLAS macro from the Autoconf Archive.)
  * The included LAPACK sources have been updated to 3.10.1.
  UTILITIES:
  * The (full path to) the command tidy to be used for HTML
    validation can be set by environment variable R_TIDYCMD.
  * Setting environment variable _R_CHECK_RD_VALIDATE_RD2HTML_ to a
    false value will override R CMD check --as-cran and turn off HTML
    validation.  This provides a way to circumvent a problematic
    tidy.
    The 2006 version that ships with macOS is always skipped.
  C-LEVEL FACILITIES:
  * The undocumented legacy declarations of Sint, Sfloat, SINT_MAX
    and SINT_MIN in header R.h are deprecated.
  BUG FIXES:
  * fisher.test(d) no longer segfaults for "large" d; fixing PR#18336
    by preventing/detecting an integer overflow reliably.
  * tar(., files=*) now produces correctly the warning about invalid
    uid or gid of files, fixing PR#18344, reported by Martin Morgan.
  * tk_choose.files() with multi = FALSE misbehaved on paths
    containing spaces (PR#18334) (regression introduced in R 4.0.0).
  * sort(x, partial = ind, *) now works correctly notably for the
    non-default na.last = FALSE or TRUE, fixing PR#18335 reported by
    James Edwards.
  * Environment variable _R_CHECK_XREFS_REPOSITORIES_ is only used
    for checking .Rd cross-references in R CMD check (as documented)
    and not for other uses looking for a CRAN mirror.
  * The search for a CRAN mirror when checking packages now uses
    getOption("repos") if that specifies a CRAN mirror, even when it
    does not also specify all three Bioconductor repositories (as was
    previously required).
  * The HTML code generated by tools::Rd2HTML() has been improved to
    pass tidy 5.8.0.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1667217600">- CHANGES IN R 4.2.2:
  NEW FEATURES:
  * tools::Rdiff(useDiff = TRUE) checks for the presence of an
    external diff command and switches to useDiff = FALSE if none is
    found.  This allows R CMD Rdiff to always work.
  * On Windows, environment variable R_LIBCURL_SSL_REVOKE_BEST_EFFORT
    can be used to switch to only 'best-effort' SSL certificate
    revocation checks with the default "libcurl" download method.
    This reduces security, but may be needed for downloads to work
    with MITM proxies (PR#18379).
  * (macOS) The run-time check for libraries from XQuartz for X11 and
    Tcl/Tk no longer uses otool from the Apple Developer Tools
    (PR#18400).
  * The LaTeX style for producing the PDF manuals, Rd.sty, now loads
    the standard amsmath, amsfonts and amssymb packages for greater
    coverage of math commands in the Rd \eqn and \deqn macros.  The
    \mathscr LaTeX command is also provided (via the mathrsfs
    package, if available, or the amsfonts bundle otherwise),
    fulfilling the wish of PR#18398.
  * (Windows) The default format of readClipboard() and
    writeClipboard() has been changed to 13 (CF_UNICODETEXT).
  INSTALLATION on a UNIX-ALIKE:
  * The PDF manuals (if built) can be compacted by the new target
    make compact-pdf (at the top level or in directory doc/manual).
  * There is now configure support for LLVM clang 15 on Linux, which
    defaults to position-independent (PIE) executables whereas
    gfortran does not.
  * Many small changes to ease compilation (and suppress warnings)
    with LLVM clang 15.
  BUG FIXES:
  * Rscript -e would fail if stdin were closed (Reported by Henrik
    Bengtsson.)
  * qt(*, log.p=TRUE) in outer tails no longer produces NaN in its
    final steps, thus fixing PR#18360.
  * tools::Rd2latex() now escapes hashes and ampersands when writing
    URLs, fixing LaTeX errors with such URLs in \tabular.
  * When isGeneric(f, fdef=*) is used with mismatching names, the
    warning is better understandable; reported (with fix) in PR#18370
    by Gabe Becker.
  * poly(x, n) now works again (and is now documented) when x is a
    "Date" or "POSIXct" object, or of another class while fulfilling
    mode(x) == "numeric".  This also enables poly(x, *, raw=TRUE) for
    such variables.  Reported by Michael Chirico to R-devel.
  * write.table(), write.csv() and write.csv2() restore their
    numerical precision (internal equivalent of digits = 15) after an
    interrupt (PR#18384).
  * One can now read also byte FF from a clipboard connection
    (PR#18385).
  * source("") and source(character()) now give more helpful error
    messages.
  * R CMD check --as-cran set _R_CHECK_TIMINGS_ too late to have the
    intended effect.
  * as.POSIXlt(x) now also works with very large dates x, fixing
    PR#18401 reported by Hannes M"uhleisen.
  * Files can now be extracted even from very large zip archives
    (PR#18390, thanks to Martin Jakt).
  * Non-finite objects of class "POSIXlt" are now correctly coerced
    to classes "Date" and "POSIXct"; following up on the extension to
    format() them correctly.
  * Added methods for is.finite(), is.infinite() and is.nan() for
    "POSIXlt" date-time objects.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1678881600">- CHANGES IN R 4.2.3:
  C-LEVEL FACILITIES:
  * The definition of DL_FUNC in R_ext/Rdynload.h has been changed to
    be fully C-compliant.  This means that functions loaded _via_ for
    example R_GetCCallable need to be cast to an appropriate type if
    they have any arguments.
  * .Machine has a new element sizeof.time_t to identify old systems
    with a 32-bit type and hence a limited range of date-times (and
    limited support for dates millions of years from present).
  PACKAGE INSTALLATION:
  * (Windows) The default C++ standard had accidentally been left at
    C++11 when it was changed to C++14 on Unix.
  BUG FIXES:
  * As "POSIXlt" objects may be "partially filled" and their list
    components meant to be recycled, length() now is the length of
    the longest component.
  * as.POSIXlt.Date() could underflow for dates in the far past (more
    than half a million years BCE).
  * as.Date.POSIXlt(x) would return "1970-01-01" instead of NA in R
    4.2.2, e.g., for
    x &lt;- as.POSIXlt(c("2019-01-30","2001-1-1"))
    x$mon &lt;- c(0L, NA); as.Date(x)
  * R CMD check failed to apply enabled _R_CHECK_SUGGESTS_ONLY_ to
    examples and vignettes (regression in R 4.2.0).
  * R CMD check did not re-build vignettes in separate processes by
    default (regression in R 4.2.0).
  * Running examples from HTML documentation now restores previous
    knitr settings and options (PR#18420).
  * Quartz: fonts are now located using Core Graphics API instead of
    deprecated ATS which is no longer supported in the macOS 13 SDK
    (PR#18426).  This also addresses an issue where the currently
    used font in the Quartz device context was not correctly
    retained.
  * (Windows) Math symbols in text drawing functions are again
    rendered correctly (PR#18440).  This fixes a regression in R
    4.2.1 caused by a fix in PR#18382 which uncovered an issue in
    GraphApp due to which the symbol charset was not used with TT
    Symbol font face.
  * (Windows) Installing a package with a src/Makefile.{win,ucrt}
    file includes ~/.R/Makevars.win64 in the search for user
    makevars, as documented in "R Installation and Administration"
    and done for packages with a src/Makevars.{win,ucrt} file.
  * format(&lt;POSIXlt_w/_unbalanced_sec&gt;, "....%OS&lt;n&gt;") with n &gt; 0 no
    longer accidentally uses the unbalanced seconds, thanks to
    Suharto Anggono's report (including patch) in PR#18448.
  * solve.default(a, b) works around issues with some versions of
    LAPACK when a contains NA or NaN values.
  * When UseMethod() cannot dispatch, it no longer segfaults
    producing the error message in case of a long class(), thanks to
    Joris Vankerschaver's report (including patch) in PR#18447.
  * When example(foo, ..) produces graphics on an interactive device
    it needs to open itself, it now leaves devAskNewPage() unchanged
    even when it was FALSE, thus fixing a 14 years old '&lt;FIXME&gt;'.
  * packageDescription() again catches errors from encoding
    conversions. This also fixes broken packageVersion() in C locale
    on systems where iconv does not support transliteration.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1681128000">- add patch to build with libcurl &gt;= 8</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1682078400">- CHANGES IN R 4.3.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Calling &amp;&amp; or || with LHS or (if evaluated) RHS of length greater
    than one is now always an error, with a report of the form
    'length = 4' in coercion to 'logical(1)'
    Environment variable _R_CHECK_LENGTH_1_LOGIC2_ no longer has any
    effect.
  NEW FEATURES:
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.10.1.  (This caused some platform-dependent
    changes to package check output.)  And then to the sources from
    LAPACK version 3.11.0 (with changes only to double complex
    subroutines).
  * The included LAPACK sources have been updated to include the four
    Fortran 90 routines rather than their Fortran 77 predecessors.
    This may give some different signs in SVDs or
    eigendecompositions..  (This completes the transition to LAPACK
    3.10.x begun in R 4.2.0.)
  * The LAPACK sources have been updated to version 3.11.0.  (No new
    subroutines have been added, so this almost entirely bug fixes:
    Those fixes do affect some computations with NaNs, including R's
    NA.)
  * The parser now signals _classed_ errors, notably in case of the
    pipe operator |&gt;.  The error object and message now give line and
    column numbers, mostly as proposed and provided by Duncan Murdoch
    in PR#18328.
  * toeplitz() is now generalized for asymmetric cases, with a
    toeplitz2() variant.
  * xy.coords() and xyz.coords() and consequently, e.g., plot(x,y,
    log = "y") now signal a _classed_ warning about negative values
    of y (where log(.) is NA).  Such a warning can be specifically
    suppressed or caught otherwise.
  * Regular expression functions now check more thoroughly whether
    their inputs are valid strings (in their encoding, e.g. in
    UTF-8).
  * The performance of grep(), sub(), gsub() and strsplit() has been
    improved, particularly with perl = TRUE and fixed = TRUE.  Use of
    useBytes = TRUE for performance reasons should no longer be
    needed and is discouraged: it may lead to incorrect results.
  * apropos() gains an argument dot_internals which is used by the
    completion (help(rcompgen)) engine to also see base internals
    such as .POSIXct().
  * Support in tools::Rdiff() for comparing uncompressed PDF files is
    further reduced - see its help page.
  * qqplot(x, y, ...) gains conf.level and conf.args arguments for
    computing and plotting a confidence band for the treatment
    function transforming the distribution of x into the distribution
    of y (Switzer, 1976, _Biometrika_). Contributed by Torsten
    Hothorn.
  * Performance of package_dependencies() has been improved for cases
    when the number of dependencies is large.
  * Strings newly created by gsub(), sub() and strsplit(), when any
    of the inputs is marked as "bytes", are also marked as "bytes".
    This reduces the risk of creating invalid strings and accidental
    substitution of bytes deemed invalid.
  * Support for readLines(encoding = "bytes") has been added to allow
    processing special text files byte-by-byte, without creating
    invalid strings.
  * iconv(from = "") now takes into account any declared encoding of
    the input elements and uses it in preference to the native
    encoding.  This reduces the risk of accidental creation of
    invalid strings, particularly when different elements of the
    input have different encoding (including "bytes").
  * Package repositories in getOption("repos") are now initialized
    from the repositories file when utils is loaded (if not already
    set, e.g., in .Rprofile).  (From a report and patch proposal by
    Gabriel Becker in PR#18405.)
  * compactPDF() gets a verbose option.
  * type.convert() and hence read.table() get new option tryLogical =
    TRUE with back compatible default.  When set to false, converts
    "F" or "T" columns to character.
  * Added new unit prefixes "R" and "Q" for abbreviating
    (unrealistically large) sizes beyond 10^{27} in standard = "SI",
    thanks to Henrik Bengtsson's PR#18435.
  * as.data.frame()'s default method now also works fine with atomic
    objects inheriting from classes such as "roman", "octmode" and
    "hexmode", such fulfilling the wish of PR#18421, by Benjamin
    Feakins.
  * The as.data.frame.vector() utility now errors for wrong-length
    row.names.  It warned for almost six years, with "Will be an
    error!".
  * sessionInfo() now also contains La_version() and reports codepage
    and timezone when relevant, in both print() and toLatex() methods
    which also get new option tzone for displaying timezone
    information when locale = FALSE.
  * New function R_compiled_by() reports the C and Fortran compilers
    used to build R, if known.
  * predict(&lt;lm&gt;, newdata = *) no longer unnecessarily creates an
    offset of all 0s.
  * solve() for complex inputs now uses argument tol and by default
    checks for 'computational singularity' (as it long has done for
    numeric inputs).
  * predict(&lt;rank-deficient lm&gt;, newdata=*) now obeys a new argument
    rankdeficient, with new default "warnif", warning only if there
    are non-estimable cases in newdata.  Other options include
    rankdeficient = "NA", predicting NA for non-estimable newdata
    cases.  This addresses PR#15072 by Russ Lenth and is based on his
    original proposal and discussions in PR#16158 also by David Firth
    and Elin Waring.  Still somewhat experimental.
  * Rgui console implementation now works better with the NVDA screen
    reader when the full blinking cursor is selected.  The underlying
    improvements in cursor handling may help also other screen
    readers on Windows.
  * The drop-field control in GraphApp can now be left with the TAB
    key and all controls can be navigated in the reverse order using
    the Shift+TAB key, improving accessibility of the Rgui
    configuration editor.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now fully accurate
    (instead of to "only" minimally five digits).
  * demo(error.catching) now also shows off withWarnings() and
    tryCatchWEMs().
  * As an experimental feature the placeholder _ can now also be used
    in the rhs of a forward pipe |&gt; expression as the first argument
    in an extraction call, such as _$coef. More generally, it can be
    used as the head of a chain of extractions, such as _$coef[[2]].
  * Spaces in the environment variable used to choose the R session's
    temporary directory (TMPDIR, TMP and TEMP are tried in turn) are
    now fatal.  (On Windows the 'short path' version of the path is
    tried and used if that does not contain a space.)
  * all.equal.numeric() gets a new optional switch giveErr to return
    the numeric error as attribute.  Relatedly,
    stopifnot(all.equal&lt;some&gt;(a, b, ..)) is as "smart" now, as
    stopifnot(all.equal(....)) has been already, thus allowing
    customized all.equal&lt;Some&gt;() wrappers.
  * R on Windows is now able to work with path names longer than 260
    characters when these are enabled in the system (requires at
    least Windows 10 version 1607).  Packages should be updated to
    work with long paths as well, instead of assuming PATH_MAX to be
    the maximum length.  Custom front-ends and applications embedding
    R need to update their manifests if they wish to allow this
    feature.  See
    &lt;https://blog.r-project.org/2023/03/07/path-length-limit-on-windows&gt;
    for more information.
  * 'Object not found' and 'Missing argument' errors now give a more
    accurate error context. Patch provided by Lionel Henry in
    PR#18241.
  * The @ operator is now an S3 generic. Based on contributions by
    Tomasz Kalinowski in PR#18482.
  * New generic chooseOpsMethod() provides a mechanism for objects to
    resolve cases where two suitable methods are found for an Ops
    Group Generic. This supports experimenting with alternative
    object systems. Based on contributions by Tomasz Kalinowski in
    PR#18484.
  * inherits(x, what) now accepts values other than a simple
    character vector for argument what. A new generic, nameOfClass(),
    is called to resolve the class name from what. This supports
    experimenting with alternative object systems. Based on
    contributions by Tomasz Kalinowski in PR#18485.
  * Detection of BLAS/LAPACK in use (sessionInfo()) with FlexiBLAS
    now reports the current backend.
  * The "data.frame" method for subset() now warns about extraneous
    arguments, typically catching the use of = instead of == in the
    subset expression.
  * Calling a:b when numeric a or b is longer than one may now be
    made into an error by setting environment variable
    _R_CHECK_LENGTH_COLON_ to a true value, along the proposal in
    PR#18419 by Henrik Bengtsson.
  * density(x, weights = *) now warns if automatic bandwidth
    selection happens without using weights; new optional warnWbw may
    suppress the warning.  Prompted by Christoph Dalitz' PR#18490 and
    its discussants.
  * rm(list = *) is faster and more readable thanks to Kevin Ushey's
    PR#18492.
  * The plot.lm() function no longer produces a normal Q-Q plot for
    GLMs. Instead it plots a half-normal Q-Q plot of the absolute
    value of the standardized deviance residuals.
  * The print() method for class "summary.glm" no longer shows
    summary statistics for the deviance residuals by default.  Its
    optional argument show.residuals can be used to show them if
    required.
  * The tapply() function now accepts a data frame as its X argument,
    and allows INDEX to be a formula in that case. by.data.frame()
    similarly allows INDICES to be a formula.
  * The performance of df[j] &lt;- value (including for missing j) and
    write.table(df) has been improved for data frames df with a large
    number of columns.  (Thanks to Gabriel Becker's PR#18500,
    PR#18503 and discussants, prompted by a report from Toby Dylan
    Hocking on the R-devel mailing list.)
  * The matrix multiply operator %*% is now an S3 generic, belonging
    to new group generic matrixOps.  From Tomasz Kalinowski's
    contribution in PR#18483.
  * New function array2DF() to convert arrays to data frames,
    particularly useful for the list arrays created by tapply().
  DATES and TIMES:
  * On platforms where (non-UTC) datetimes before 1902 (or before
    1900 as with system functions on recent macOS) are guessed by
    extrapolating time zones from 1902-2037, there is a warning at
    the first use of extrapolation in a session.  (As all time zones
    post 2037 are extrapolation, we do not warn on those.)
  * (Platforms using --with-internal-tzone, including Windows and by
    default macOS). How years are printed in dates or date-times can
    be controlled by environment variable R_PAD_YEARS_BY_ZERO.  The
    default remains to pad to 4 digits by zeroes, but setting value
    no gives no padding (as used by default by glibc).
  * strftime() tries harder to determine the offset for the "%z"
    format, and succeeds on the mainstream R platforms.
  * strftime() has a limit of 2048 bytes on the string produced -
    attempting to exceed this is an error.  (Previously it silently
    truncated at 255 bytes.)
  * sessionInfo() records (and by default prints) the system time
    zone as part of the locale information.  Also, the source
    (system/internal) of the date-time conversion and printing
    functions.
  * Objects of class "POSIXlt" created in this version of R always
    have 11 components: component zone is always set, and component
    gmtoff is set for times in UTC and usually set on the (almost
    all) platforms which have C-level support, otherwise is NA.
  * There are comprehensive validity checks on the structure of
    objects of class "POSIXlt" when converting (including formatting
    and printing).  (This avoids mis-conversions of hand-crafted
    objects.)
  * There is some support for using the native date-time routines on
    macOS: this is only viable on recent versions (e.g. 12.6 and 13)
    and does get wrong some historical changes (before 1900, during
    WWII).  Use of --with-internal-tzone remains the default.
  * as.POSIXct(&lt;numeric&gt;) and as.POSIXlt(.) (without specifying
    origin) now work.  So does as.Date(&lt;numeric&gt;).
  * as.Date.POSIXct(., tz) now treats several tz values, notably
    "GMT" as equivalent to "UTC", proposed and improved by Michael
    Chirico and Joshua Ulrich in PR#17674.
  * Experimental balancePOSIXlt() utility allows using "ragged" and
    or out-of-range "POSIXlt" objects more correctly, e.g., in
    subsetting and subassignments.  Such objects are now documented.
    More experimentally, a "POSIXlt" object may have an attribute
    "balanced" indicating if it is known to be filled or fully
    balanced.
  * Functions axis.Date() and axis.POSIXct() are rewritten to gain
    better default tick locations and better default formats by using
    prettyDate(). Thanks to Swetlana Herbrandt.
  * The mapping of Windows' names for time zones to IANA's 'Olson'
    names has been updated.  When ICU is available (it is by
    default), it is used to get a mapping for the current region set
    in Windows.  This can be overridden by setting environment
    variable TZ to the desired Olson name - see OlsonNames() for
    those currently available.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 16
    and so packages that provide graphics devices should be
    reinstalled.
  * The grDevices and grid packages have new functions for rendering
    typeset glyphs, primarily: grDevices::glyphInfo() and
    grid::grid.glyph().
    Rendering of typeset glyphs is only supported so far on the
    Cairo-based graphics devices and on the pdf() and quartz()
    devices.
  * The defined behaviour for "clear" and "source" compositing
    operators (via grid::grid.group()) has been changed (to align
    better with simple interpretation of original Porter-Duff
    definitions).
  * Support for gradients, patterns, clipping paths, masks, groups,
    compositing operators, and affine transformations has been added
    to the quartz() device.
  INSTALLATION on a UNIX-ALIKE:
  * A system installation of generic LAPACK 3.10.0 or later will be
    preferred to the version in the R sources.
    configure option --with-lapack=no (equivalently --without-lapack)
    forces compilation of the internal LAPACK sources.
    If --with-lapack is not specified, a system liblapack is looked
    for and used if it reports version 3.10.0 or later and does not
    contain BLAS routines.
    Packages using LAPACK will need to be reinstalled if this changes
    to using an external library.
  * On aarch64 Linux platforms using GCC, configure now defaults to
  - fPIC (instead of -fpic), as desired in PR#18326.
  * configure now checks conversion of datetimes between POSIXlt and
    POSIXct around year 2020.  Failure (which has been seen on
    platforms missing tzdata) is fatal.
  * If configure option --with-valgrind-instrumentation is given
    value 1 or 2, option --with-system-valgrind-headers is now the
    default and ignored (with a warning).  It is highly recommended
    that the system headers are installed alongside valgrind: they
    are part of its packaging on some Linux distributions and
    packaged separately (e.g. in the valgrind-devel RPM) on others.
    configure will give a warning if they are not found.
    The system headers will be required in a future release of R to
    build with valgrind instrumentation.
  * libcurl 8.x is now accepted by configure: despite a change in
    major version number it changes neither API nor ABI.
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools43, an update of the Rtools42 toolchain.  It is
    based on gcc 12 and newer versions of MinGW-W64, binutils and
    libraries.  At this time R-devel can still be built using
    Rtools42 without changes, but when R-devel is installed via the
    installer, it will by default look for Rtools43.
  * Old make targets rsync-extsoft and 32-bit ones that are no longer
    needed have been removed.
  * Default builds (including for packages) no longer select C99.
    Thus the C standard used is the default for the compiler, which
    for the toolchain in Rtools43 is C17.  (This is consistent with
    Unix builds.)
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++17 where
    available (which it is on all currently checked platforms): if
    not C++14 or C++11 is used if available otherwise C++ is not
    supported.
  * USE_FC_LEN_T is the default: this uses the correct
    (compiler-dependent) prototypes for Fortran BLAS/LAPACK routines
    called from C/C++, and requires adjustment of many such calls -
    see 'Writing R Extensions' SS6.6.1.
  * There is initial support for C++23 as several compilers are now
    supporting -std=c++23 or -std=c++2b or similar.  As for C++20,
    there no additional configure checks for C++23 features beyond a
    check that the compiler reports a __cplusplus value greater than
    that in the C++20 standard.  C++ feature tests should be used.
  * There is support for a package to indicate the version of the C
    standard which should be used to compile it, and for the
    installing user to specify this.  In most cases R defaults to the
    C compiler's default standard which is C17 (a `bug-fix' of C11) -
    earlier versions of R or compilers may have defaulted to C99.
    Current options are:
    USE_C17 Use a standard that is at most C17.  The intention is to
    allow legacy packages to still be installed when later C
    standards become the default, including packages using new
    keywords as identifiers or with K&amp;R-style function
    declarations.  This will use C17 if available, falling back
    to C11.
    USE_C90 Use the C90 (aka C89) standard.  (As that standard did
    not require compilers to identify that version, all we can
    verify is that the compiler does not claim to be using a
    later standard.  It may accept C99 features - for example
    clang accepts // to make comments.)
    USE_C99 Use the C99 standard. This should be rarely needed - it
    avoids the few new features of C11/C17 which can be useful if
    a package assumes them if C17 is specified and they are not
    implemented.
    USE_C23 Use C23 (or in future, later).  Compiler/library support
    for C23 is still being implemented, but LLVM clang from
    15.0.0 and the upcoming GCC 13 have quite extensive support.
    These can be specified as part of the SystemRequirements field in
    the package's DESCRIPTION file or _via_ options --use-C17 and so
    on of R CMD INSTALL and R CMD SHLIB.
    For further details see "Writing R Extensions" SS1.2.5.
  * (Windows) A src/Makefile.ucrt or src/Makefile.win file is now
    included after R_HOME/etcR_ARCH/Makeconf and so no longer needs
    to include that file itself.  Installation of a package with such
    a file now uses a site Makevars file in the same way as a package
    with a src/Makevars.win file would.
  * configure is now passed crucial variables such as CC and CFLAGS
    in its environment, as many packages were not setting them (as
    documented in 'Writing R Extensions' SS1.2).
    This has most effect where configure is used to compile parts of
    the package - most often by cmake or libtool which obfuscate the
    actual compile commands used.
    Also used for configure.win and configure.ucrt on Windows.
  FORTRAN FLAGS:
  * The flag -fno-optimize-sibling-calls is no longer forced for
    gfortran 7 and later.  It should no longer be needed now using
    'hidden' character-length arguments when calling BLAS/LAPACK
    routines from C/C++ is the default even for packages.  (Unless
    perhaps packages call Fortran code from C/C++ without using R's
    headers and without allowing for these arguments.)
  C-LEVEL FACILITIES:
  * The deprecated S-compatibility macros DOUBLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * The deprecated legacy typedefs of Sint and Sfloat in header R.h
    are no longer defined, and that header no longer includes header
    limits.h from C nor climits from C++.
  * New macro CAD5R() is provided in Rinternals.h and used in a few
    places in the R sources.
  * ALTREP now supports VECSXP vectors. Contributed by Gabor Csardi
    in PR#17620.
  * The Rcomplex definition (in header R_ext/Complex.h) has been
    extended to prevent possible mis-compilation when interfacing
    with Fortran (PR#18430).  The new definition causes compiler
    warnings with static initializers such as {1, 2}, which can be
    changed to {.r=1, .i=2}.
    Using the new definition from C++ depends on compiler extensions
    supporting C features that have not been incorporated into the
    C++ standards but are available in g++ and clang++: this may
    result in C++ compiler warnings but these have been worked around
    for recent versions of common compilers (GCC, Apple/LLVM clang,
    Intel).
    It is intended to change the inclusion of header R_ext/Complex.h
    by other R headers, so C/C++ code files which make use of
    Rcomplex should include that header explicitly.
  UTILITIES:
  * R CMD check does more checking of package .Rd files, warning
    about invalid email addresses and (some) invalid URIs and noting
    empty \item labels in description lists.
  * R CMD check now also reports problems when reading package news
    in md (file NEWS.md) and (optionally) plain text (file NEWS)
    formats.
  * _R_CHECK_TIMINGS_ defaults to a value from the environment even
    for R CMD check --as-cran; this allows for exceptionally fast or
    slow platforms.
    It now applies to checking PDF and HTML versions of the manuals,
    and 'checking CRAN incoming feasibility'.
  * R CMD check can optionally (but included in --as-cran) check
    whether HTML math rendering _via_ KaTeX works for the package .Rd
    files.
  * Non-interactive debugger invocations can be trapped by setting
    the environment variable _R_CHECK_BROWSER_NONINTERACTIVE_ to a
    true value.  This is enabled by R CMD check --as-cran to detect
    the use of leftover browser() statements in the package.
  * The use of sprintf and vsprintf from C/C++ has been deprecated in
    macOS 13 and is a known security risk.  R CMD check now reports
    (on all platforms) if their use is found in compiled code:
    replace by snprintf or vsnprintf respectively. [*NB:* whether
    such calls get compiled into the package is platform-dependent.]
  * Where recorded at installation, R CMD check reports the C and
    Fortran compilers used to build R.
    It reports the OS in use (if known, as given by osVersion) as
    well as that R was built for.
    It notes if a C++ standard was specified which is older than the
    current default: many packages have used C++11 to mean 'not
    C++98' - as C++11 is the minimum supported since R 4.0.0, that
    specification can probably be removed.
  * R CMD INSTALL reports the compilers (and on macOS, the SDK) used,
    and this is copied to the output of R CMD check.
    Where a C++ standard is specified, it is reported.
  * R CMD check's 'checking compilation flags in Makevars' has been
    relaxed to accept the use of flags such as -std=f2008 in
    PKG_FFLAGS.
  * tools::buildVignettes() has a new argument skip, which is used by
    R CMD check to skip (and note) vignettes with unavailable
    \VignetteDepends (PR#18318).
  * New generic .AtNames() added to enable class-specific completions
    after @. The formerly internal function findMatches() is now
    exported, mainly for use in methods for .DollarNames() and
    .AtNames().
  DEPRECATED AND DEFUNCT:
  * default.stringsAsFactors() is defunct.
  * Calling as.data.frame.&lt;class&gt;() directly (for 12 atomic classes)
    is going to be formally deprecated, currently activated by
    setting the environment variable
    _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ to non-empty, which also
    happens in R CMD check --as-cran.
  BUG FIXES:
  * Hashed environments with sizes less than 5 can now grow.
    (Reported to R-devel by Duncan Garmonsway.)
  * as.character(&lt;Rd&gt;, deparse = TRUE) failed to re-escape curly
    braces in LaTeX-like text.  (Reported by Hadley Wickham in
    PR#18324.)
  * library() now passes its lib.loc argument when requiring Depends
    packages; reported (with fix) in PR#18331 by Mikael Jagan.
  * R CMD Stangle: improved message about 'Output' files.
  * head(x, n) and tail(x, n) now signal an error if n is not
    numeric, instead of incidentally "working" sometimes returning
    all of x.  Reported and discussed by Colin Fay, in PR#18357.
  * The "lm" method for summary() now gives the correct F-statistic
    when the model contains an offset.  Reported in PR#18008.
  * C() and `contrasts&lt;-`() now preserve factor level names when
    given a function object (as opposed a function name which did
    preserve names). Reported in PR#17616.
  * c(a = 1, 2)[[]] no longer matches 2 but rather signals a
    _classed_ error.  Reported and analysed by Davis Vaughan in
    PR#18367, a duplicate of PR#18004, by Jan Meis et al.  For
    consistency, NULL[[]] is also erroneous now.  x[[]] &lt;- v gives an
    error of the same class "MissingSubscriptError".
  * The relist() function of utils now supports NULL elements in the
    skeleton (PR#15854).
  * ordered(levels = *) (missing x) now works analogously to factor(,
    ordered=TRUE); reported (with fix) by Achim Zeileis in PR#18389.
  * User-defined Rd macro definitions can now span multiple lines,
    thanks to a patch from Duncan Murdoch. Previously, the Rd parser
    silently ignored everything after the first line.
  * Plain-text help (tools::Rd2txt()) now preserves an initial blank
    line for text following description list items.
  * tools::Rd2HTML() and tools::Rd2latex() no longer split \arguments
    and \value lists at Rd comments.
  * tools::Rd2latex() now correctly handles optional text outside
    \items of argument lists as well as bracketed text at the
    beginning of sections, e.g., \value{[NULL]}.
  * as.character(&lt;POSIXt&gt;) now behaves more in line with the methods
    for atomic vectors such as numbers, and is no longer influenced
    by options().  Ditto for as.character(&lt;Date&gt;).  The
    as.character() method gets arguments digits and OutDec with
    defaults _not_ depending on options().  Use of as.character(*,
    format = .) now warns.
  * Similarly, the as.character.hexmode() and *.octmode() methods
    also behave as good citizen methods and back compatibility option
    keepStr = TRUE.
  * The as.POSIXlt(&lt;POSIXlt&gt;) and as.POSIXct(&lt;POSIXct&gt;) default
    methods now do obey their tz argument, also in this case.
  * as.POSIXlt(&lt;Date&gt;) now does apply a tz (time zone) argument, as
    does as.POSIXct(); partly suggested by Roland Fuss on the R-devel
    mailing list.
  * as.Date.POSIXlt(x) now also works when the list components are of
    unequal length, aka "partially filled" or "ragged".
  * expand.model.frame() looked up variables in the wrong environment
    when applied to models fitted without data.  Reported in
    PR#18414.
  * time() now (also) uses the ts.eps = getOption("ts.eps") argument
    and thus by default rounds values very close to the start (or
    end) of a year.  Based on a proposal by Andre"i V. Kostyrka on
    R-help.
  * Printing of a factanal() result with just one factor and sort =
    TRUE now works regularly, fixing PR#17863 by Timothy Bates,
    thanks to the 'R Contributors' working group.
  * Printing 0-length objects of class "factor", "roman", "hexmode",
    "octmode", "person", "bibentry", or "citation" now prints
    something better, one of which fixes PR#18422, reported by
    Benjamin Feakins.
  * Sys.timezone() queries timedatectl only if systemd is loaded;
    addressing a report by Jan Gorecki in PR#17421.
  * The formula method of cor.test() had scoping problems when
    environment(formula) was not the calling environment; reported
    with a patch proposal by Mao Kobayashi in PR#18439.
  * attach() of an environment with active bindings now preserves the
    active bindings.  Reported by Kevin Ushey in PR#18425.
  * BLAS detection now works also with system-provided libraries not
    available as regular files.  This fixes detection of the
    Accelerate framework on macOS since Big Sur.  Reported by David
    Novgorodsky.
  * download.file() gives a helpful error message in case of an
    invalid download.file.method option, thanks to Colin Fay's report
    in PR#18455.
  * Sporadic crashes of Rterm when using completion have been fixed.
  * Rprof() is now more reliable.  A livelock in thread
    initialization with too short sampling interval has been fixed on
    macOS.  A deadlock in using the C runtime has been fixed on
    Windows.  A potential deadlock has been prevented on Unix.
  * Cursor placement in Rgui now works even after a fixed-width font
    is selected.
  * Mandatory options (options()) are now set on startup so that
    saving and restoring them always works (PR#18372).
  * Package installation, R CMD INSTALL or install.packages(*), now
    parses each of the &lt;pkg&gt;/R/*.R files individually instead of
    first concatenating and then parse()ing the large resulting file.
    This allows parser or syntax errors to be diagnosed with correct
    file names and line numbers, thanks to Simon Dedman's report and
    Bill Dunlap's patch in PR#17859.
    This _does_ require syntactically self contained R source files
    now, fixing another inadvertent bug.
  * predict.lm(&lt;model with offset&gt;) now finds the offset in the
    correct environment, thanks to Andr'e Gillibert's report and patch
    in PR#18456.
  * getInitial(&lt;formula&gt;) now finds the selfStart model in the
    correct environment.  (Reported by Ivan Krylov in PR#18368.)
  * Fix for possible segfault when using recently-added graphics
    features, such as gradients, clipping paths, masks, and groups
    with pdf(file=NULL).
  * class(m) &lt;- class(m) no longer changes a matrix m by adding a
    class _attribute_.
  * packageDate(pkg) now only warns once if there is no pkg.
  * When ts() creates a multivariate time series, "mts", it also
    inherits from "array" now, and is.mts() is documented _and_
    stricter.
  * Rd2txt() now preserves line breaks of \verb Rd content and from
    duplicated \cr.  The former also fixes the rendering of verbatim
    output from Rd \Sexpr in plain-text help.
  * uniroot(f, interval) should no longer wrongly converge _outside_
    the interval in some cases where abs(f(x)) == Inf for an x at the
    interval boundary, thanks to posts by Ben Bolker and Serguei
    Sokol on R-devel.
  * Vectorized alpha handling in palette functions such as in gray(),
    rainbow(), or hcl.colors() works correctly now, thanks to Achim
    Zeileis' report and patch in PR#18476.
  * Formatting and print()ing of bibentry objects has dropped the
    deprecated citation.bibtex.max argument, such that the bibtex
    argument's default for print.bibentry() depends directly on the
    citation.bibtex.max option, whereas in format.bibentry() the
    option no longer applies.
  * Attempting to use a character string naming a foreign function
    entry point in a foreign function call in a package will now
    signal an error if the packages has called R_forceSymbols to
    specify that symbols must be used.
  * An error in table() could permanently set options(warn=2)
    promoting all subsequent warnings to errors.
  * The sigma() function gave misleading results for binary GLMs.  A
    new method for objects of class "glm" returns the square root of
    the estimate of the dispersion parameter using the same
    calculation as summary.glm().
  * bs() and ns() in the (typical) case of automatic knot
    construction, when some of the supposedly inner knots coincide
    with boundary knots, now moves them inside (with a warning),
    building on PR#18442 by Ben Bolker.
  * R CMD on Windows now skips the site profile with --no-site-file
    and --vanilla even when R_PROFILE is set (PR#18512, from Kevin
    Ushey).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1686916800">- CHANGES IN R 4.3.1:
  C-LEVEL FACILITIES:
  * The C-level API version of R's integrate(), Rdqags() in Applic.h,
    now returns the correct number of integrand evaluations neval,
    fixing PR#18515 reported and diagnosed by Stephen Wade.
  * The C prototypes for LAPACK calls dspgv and dtptrs in
    R_exts/Lapack.h had one too many and one too few character length
    arguments - but this has not caused any known issues. To get the
    corrected prototypes, include
    [#]include &lt;Rconfig.h&gt; // for PR18534fixed
    [#]ifdef PR18534fixed
    [#] define usePR18534fix 1
    [#]endif
    [#]include &lt;R_exts/Lapack.h&gt;
    in your C/C++ code (PR#18534).
  INSTALLATION:
  * Many of the checks of esoteric Internet operations and those
    using unreliable external sites have been moved to a new target
    that is not run by default and primarily intended for the core
    developers.  To run them use
    cd tests; make test-Internet-dev
  BUG FIXES:
  * .S3methods(), typically called from methods(), again marks
    methods from package base as visible.
    Also, the visibility of non-base methods is again determined by
    the method's presence in search().
  * tools::Rdiff() is now more robust against invalid strings, fixing
    installation tests on Windows without Rtools installed
    (PR#18530).
  * Fix (new) bug in hcl.colors(2, *), by Achim Zeileis (PR#18523).
  * head(., &lt;illegal&gt;) and tail(..) now produce more useful "Error in
    ...." error messages, fixing PR#18362.
  * Package code syntax on Windows is checked in UTF-8 when UTF-8 is
    the native encoding.
  * na.contiguous(x) now also returns the first run, when it is at
    the beginning and there is a later one of the same length;
    reported to R-devel, including a fix, by Georgi Boshnakov.
    Further, by default, it modifies only an existing attr(*,"tsp")
    but otherwise no longer sets one.
  * chol(&lt;not pos.def&gt;, pivot = &lt;T|F&gt;) now gives a correct error or
    warning message (depending on pivot), thanks to Mikael Jagan's
    (PR#18541).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1699012800">- CHANGES IN R 4.3.2:
  NEW FEATURES:
  * The default initialization of the "repos" option from the
    repositories file at startup can be skipped by setting
    environment variable R_REPOSITORIES to NULL such that
    getOption("repos") is empty if not set elsewhere.
  * qr.X() is now an implicit S4 generic in methods.
  * iconv(to = "ASCII//TRANSLIT") is emulated using substitution on
    platforms which do not support it (notably Alpine Linux).  This
    should give a human-readable conversion in ASCII on all platforms
    (rather than NA_character_).
  * trans3d() gains options continuous and verbose addressing the
    problem of possible "wrap around" when projecting too long
    curves, as reported by Achim Zeileis in PR#18537.
  * tools::showNonASCII() has been rewritten to work better on macOS
    14 (which has a changed implementation of iconv()).
  * tiff(type = "quartz") (the default on macOS) now warns if
    compression is specified: it continues to be ignored.
  INSTALLATION on a UNIX-ALIKE:
  * There is some support for building with Intel's LLVM-based
    compilers on x86_64 Linux, such as (C) icx, (C++) ipcx and
    (Fortran) ifx from oneAPI 2023.x.y.
  * There is support for using LLVM's flang-new as the Fortran
    compiler from LLVM 16.0.x (preferably 17.0.0 or later).
  UTILITIES:
  * R CMD check reports the use of the Fortran 90 random number
    generator RANDOM_NUMBER() and the subroutines to initialize it.
    'Writing R Extensions' has example code to use R's RNGs from
    Fortran.
  BUG FIXES:
  * substr(x, n, L) &lt;- cc now works (more) correctly for multibyte
    UTF-8 strings x when L &gt; nchar(x), thanks to a report and patch
    by 'Architect 95'.
  * contrib.url(character()) now returns 0-length character() as
    documented, which also avoids spurious warnings from
    available.packages() et al. in the edge case of an empty vector
    of repository URLs.
  * readChar(., 4e8) no longer fails, thanks to Kodi Arfer's report
    (PR#18557).
  * lapply(&lt;list&gt;, as.data.frame) no longer warns falsely for some
    base vector components.
  * Communication between parent and child processes in the multicore
    part of parallel could fail on platforms that do not support an
    arbitrarily large payload in system functions read()/write() on
    pipes (seen on macOS where a restriction to INT_MAX bytes is
    documented, without doing a partial read unlike Linux). The
    payload is now split into 1Gb chunks to avoid that problem.
    (PR#18571)
  * qqplot(x,y, conf.level=.) gives better confidence bounds when
    length(x) != length(y), thanks to Alexander Ploner's report and
    patch proposal (PR#18557).
  * norm(&lt;0-length&gt;, "2") now gives zero instead of an error, as all
    the other norm types, thanks to Mikael Jagan's PR#18542.
  * Build-stage Rd macros \packageAuthor and \packageMaintainer now
    process Authors@R, fixing NA results when the package DESCRIPTION
    omits Author and Maintainer fields.
  * Formatting and printing complex numbers could give things like
    0.1683-0i because of rounding error: -0i is now replaced by +0i.
  * postscript() refused to accept a title comment containing the
    letter "W" (PR#18599).
  * isoreg(c(1,Inf)) signals an error instead of segfaulting, fixing
    PR#18603.
  * tiff(type = "Xlib") was only outputting the last page of
    multi-page plots.
  * tools::latexToUtf8() again knows about \~{n} and other letters
    with tilde, fixing a regression in R 4.3.0, and about \^{i} as an
    alternative to \^{\i} (similarly with other accents).
    Furthermore, LaTeX codes for accented I letters are now correctly
    converted, also fixing related mistakes in
    tools::encoded_text_to_latex().
  * tar(*, tar = "internal") no longer creates out-of-spec tar files
    in the very rare case of user or group names longer than 32
    bytes, fixing PR#17871 with thanks to Ivan Krylov.
  * When using the "internal" timezone datetime code, adding a
    fraction of a second no longer adds one second, fixing PR#16856
    from a patch by Ivan Krylov.
  * tools::checkRd() no longer produces spurious notes about
    "unnecessary braces" from multi-line Rd results of \Sexpr macros.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1709208000">- CHANGES IN R 4.3.3:
  NEW FEATURES:
  * iconv() now fixes up variant encoding names such as "utf8"
    case-insensitively.
  DEPRECATED AND DEFUNCT:
  * The legacy encoding = "MacRoman" is deprecated in pdf() and
    postscript(): support was incomplete in earlier versions of R.
  BUG FIXES:
  * Arguments are now properly forwarded to methods on S4 generics
    with ... in the middle of their formal arguments. This was broken
    for the case when a method introduced an argument but did not
    include ... in its own formals. Thanks to Herv'e Pag`es for the
    report PR#18538.
  * Some invalid file arguments to pictex(), postscript() and xfig()
    opened a file called NA rather than throw an error.  These
    included postscript(NULL) (which some people expected to work
    like pdf(NULL)).
  * Passing filename = NA to svg(), cairo_pdf(), cairo_ps() or the
    Cairo-based bitmap devices opened a file called NA: it now throws
    an error.
  * quartz(file = NA) opened a file called NA, including when used as
    a Quartz-based bitmap device.  It now gives an error.
  * rank(&lt;long vector&gt;) now works, fixing PR#18617, thanks to Ilia
    Kats.
  * seq.int() did not adequately check its length.out argument.
  * match(&lt;POSIXct&gt;, .) is correct again for differing time zones,
    ditto for "POSIXlt", fixing PR#18618 reported by Bastian Klein.
  * drop.terms(*, dropx = &lt;0-length&gt;) now works, fixing PR#18563 as
    proposed by Mikael Jagan.
  * drop.terms(*) keeps + offset(.) terms when it should, PR#18565,
    and drop.terms() no longer makes up a response, PR#18566, fixing
    both bugs thanks to Mikael Jagan.
  * getS3method("t", "test") no longer finds the t.test() function,
    fixing PR#18627.
  * pdf() and postscript() support for the documented Adobe encodings
    "Greek" and "Cyrilllic" was missing (although the corresponding
    Windows' codepages could be used).
  * Computations of glyph metric information for pdf() and
    postscript() did not take into account that transliteration could
    replace one character by two or more (only seen on macOS 14) and
    typically warned that the information was not known.
  * rank(x) no longer overflows during integer addition, when
    computing rank average for largish but not-yet long vector x,
    fixing PR#18630, thanks to Ilia Kats.
  * list.files() on Windows now returns also files with names longer
    that 260 bytes (the Windows limit is 260 characters).
    Previously, some file names particularly with 'East Asian'
    characters were omitted.
  * cov2cor(&lt;0 x 0&gt;) now works, fixing PR#18423 thanks to Mikael
    Jagan and Elin Waring.
  * cov2cor(&lt;negative diagonal&gt;) and similar now give one warning
    instead of two, with better wording, fixing PR#18424 thanks to
    Mikael Jagan.
  * tools:: startDynamicHelp() now ensures port is in proper range,
    fixing PR#18645.
  * pbeta(x, a,b) is correct now for x=0 or 1 in the boundary cases
    where a or b or both are 0, fixing PR#18672 thanks to Michael
    Fay.
  * pmatch(x, table) for large table, also called for data frame row
    selection, dfrm[nm, ], is now interruptible, fixing PR#18656.
  * predict(&lt;rank-deficient lm&gt;, newdata=*) fix computing of nbasis,
    see Russ Lenth's comment 29 in PR#16158.
  * Added a work-around for a bug in macOS 14.3.1 and higher which
    prevents R plots in the Quartz Cocoa device from updating on
    screen.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1713960000">- CHANGES IN R 4.4.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Startup banners, R --version, sessionInfo() and R CMD check no
    longer report (64-bit) as part of the platform as this is almost
    universal - the increasingly rare 32-bit platforms will still
    report (32-bit).
    On Windows, ditto for window titles.
  * is.atomic(NULL) now returns FALSE, as NULL is not an atomic
    vector.  Strict back-compatibility would replace is.atomic(foo)
    by (is.null(foo) || is.atomic(foo)) but should happen only
    sparingly.
  NEW FEATURES:
  * The confint() methods for "glm" and "nls" objects have been
    copied to the stats package.  Previously, they were stubs which
    called versions in package MASS. The MASS namespace is no longer
    loaded if you invoke (say) confint(glmfit).  Further, the "glm"
    method for profile() and the plot() and pairs() methods for class
    "profile" have been copied from MASS to stats.  (profile.nls()
    and plot.profile.nls() were already in stats.)
  * The confint() and profile methods for "glm" objects have gained a
    possibility to do profiling based on the Rao Score statistic in
    addition to the default Likelihood Ratio. This is controlled by a
    new test = argument.
  * The pairs() method for "profile" objects has been extended with a
    which = argument to allow plotting only a subset of the
    parameters.
  * The "glm" method for anova() computes test statistics and
    p-values by default, using a chi-squared test or an F test
    depending on whether the dispersion is fixed or free.  Test
    statistics can be suppressed by giving argument test a false
    logical value.
  * In setRepositories() the repositories can be set using their
    names via name = instead of index ind =.
  * methods() and .S3methods() gain a all.names option for the (rare)
    case where functions starting with a . should be included.
  * Serializations can now be interrupted (e.g., by Ctrl-C on a
    Unix-alike) if they take too long, e.g., from save.image(),
    thanks to suggestions by Ivan Krylov and others on R-devel.
  * New startup option --max-connections to set the maximum number of
    simultaneous connections for the session.  Defaults to 128 as
    before: allowed values up to 4096 (but resource limits may in
    practice restrict to smaller values).
  * R on Windows (since Windows 10 2004) now uses the new Segment
    Heap allocator. This may improve performance of some
    memory-intensive applications.
  * When R packages are built, typically by R CMD build &lt;pkg&gt;, the
    new --user=&lt;build_user&gt; option overrides the (internally
    determined) user name, currently Sys.info()["user"] or LOGNAME.
    This is a (modified) fulfillment of Will Landau's suggestion in
    PR#17530.
  * tools::testInstalledBasic() gets new optional arguments outDir
    and testSrcdir, e.g., allowing to use it in a &lt;builddir&gt; !=
    &lt;srcdir&gt; setup, and in standard "binary" Windows installation
  * if* a source tests/ folder is present.
  * range(&lt;DT_with_Inf&gt;, finite = TRUE) now work for objects of class
    "Date", "POSIXct", and "POSIXlt" with infinite entries,
    analogously to range.default(), as proposed by Davis Vaughan on
    R-devel.  Other range()-methods can make use of new function
    .rangeNum().
  * New .internalGenerics object complementing .S3PrimitiveGenerics,
    for documentation and low-level book-keeping.
  * grid() now invisibly returns the x- and y- coordinates at which
    the grid-lines were drawn.
  * norm(., type) now also works for complex matrices.
  * kappa(., exact = TRUE, norm = *) now works for all norms and also
    for complex matrices.  In symmetric / triangular cases, the new
    argument uplo = "U" | "L" allows the upper or lower triangular
    part to be specified.
  * memDecompress(type = "unknown") recognizes compression in the
    default 'zlib' format as used by memCompress(type = "gzip").
  * memCompress() and memDecompress() will use the libdeflate library
    (&lt;https://github.com/ebiggers/libdeflate&gt;) if installed.  This
    uses the same type of compression for type = "gzip" but is 1.5-2x
    faster than the system libz library on some common platforms: the
    speed-up may depend on the library version.
  * diff() for objects of class "Date", "POSIXct", and "POSIXlt"
    accepts a units argument passed via ....
  * Dynamic help now does a much better job of rendering package
    DESCRIPTION metadata.
  * Rprof() gains an event argument and support for elapsed (real)
    time profiling on Unix (PR#18076).
  * filled.contour() gains a key.border argument.
  * tools::update_pkg_po() gets arguments pot_make and mo_make for
    _not_ re-making the corresponding files, and additionally a
    verbose argument.
  * Hexadecimal string colour specifications are now accepted in
    short form, so, for example, we can use "#123", which is
    equivalent to "#112233".
    Thanks to MikeFC for the original idea and Ella Kaye, Malcolm
    Barrett, George Stagg, and Hanne Oberman for the patch.
  * Plain-text help shows \var markup by angle brackets.
  * The new experimental primitive function declare() is intended to
    eventually allow information about R code to be communicated to
    the interpreter, compiler, and code analysis tools. The syntax
    for declarations is still being developed.
  * Functions psmirnov(), qsmirnov() and rsmirnov() in package stats
    have had argument two.sided renamed to alternative, to take into
    account that the permutation distributions of the one-sided
    statistics can be different in the case of ties.  Consequence of
    PR#18582.
  * sort() is now an implicit S4 generic in methods.
  * Formatting and printing, format(z), print(z), of complex vectors
    z no longer zap relatively small real or imaginary parts to zero,
    fixing PR#16752.  This is an API change, as it was documented
    previously to round real and imaginary parts together on purpose,
    producing nicer looking output.  As mentioned, e.g. in the PR,
    this change is compatible with many other "R-like" programming
    environments.
    We have simplified the internal code and now basically format the
    real and imaginary parts independently of each other.
  * New experimental functions Tailcall() and Exec() to support
    writing stack-space-efficient recursive functions.
  * Where characters are attempted to be plotted by pdf(),
    postscript() and xfig() which are not in the selected 8-bit
    character set (most often Latin-1) and the R session is using a
    UTF-8 locale, the warning messages will show the UTF-8 character
    rather than its bytes and one dot will be substituted per
    character rather than per byte.  (Platforms whose iconv() does
    transliteration silently plot the transliteration.)
    In a UTF-8 locale some transliterations are now done with a
    warning (e.g., dashes and Unicode minus to hyphen, ligatures are
    expanded, permille (‰) is replaced by o/oo), although the OS may
    have got there first.  These are warnings as they will continue
    to be replaced by dots in earlier versions of R.
  * The matrix multiplication functions crossprod() and tcrossprod()
    are now also primitive and S3 generic, as %*% had become in R
    4.3.0.
  * source() and example() have a new optional argument catch.aborts
    which allows continued evaluation of the R code after an error.
  * The non-Quartz tiff() devices allow additional types of
    compression if supported by the platform's libtiff library.
  * The list of base and recommended package names is now provided by
    tools::standard_package_names().
  * cairo_pdf() and cairo_ps() default to onefile = TRUE to closer
    match pdf() and postscript().
  * New option catch.script.errors provides a documented way to catch
    errors and then continue in non-interactive use.
  * L %||% R newly in base is an expressive idiom for the phrases
    if(!is.null(L)) L else R or if(is.null(L)) R else L.
  * The return value from warnings() now always inherits from
    "warnings" as documented, now also in the case of no warnings
    where it previously returned NULL.
  * as.complex("1i") now returns 0 + 1i instead of NA with a warning.
  * z &lt;- c(NA, 1i) now keeps the imaginary part Im(z[1]) == 0, no
    longer coercing to NA_complex_.  Similarly, cumsum(z) correctly
    sums real and imaginary parts separately, i.e., without
    "crosstalk" in case of NAs.
  * On Alpine Linux iconv() now maps "latin2", "latin-2", "latin9"
    and "latin-9" to encoding names the OS knows about
    (case-insensitively).
  * iconv(sub = "Unicode") now always zero-pads to four (hex) digits,
    rather than to 4 or 8.  (This seems to have become the convention
    once Unicode restricted the number of Unicode points to 2^21 - 1
    and so will never need more than 6 digits.)
  * NCOL(NULL) now returns 0 instead of 1, for consistency with
    cbind().
  * The information for the Euro glyph missing from the Adobe .afm
    files for the Courier, Helvetica and Times families has been
    copied from their URW equivalents - this will improve vertical
    centring in the pdf() and postscript() devices.
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.12.0.  The changes are almost entirely cosmetic.
  * The included LAPACK sources have been updated to version 3.12.0
    and some further double-complex routines added.
  * There are new font families for the 2014--5 URW 2.0 fonts (see
    ?pdf) which are included in recent versions of Ghostscript.
    These have font widths for most Greek glyphs and a few others
    which were missing from the original versions (whose font
    families remain available for reproducibility, although
    Ghostscript-based viewers will render using the 2.0 versions).
  * Improve the large-n efficiency of as.matrix(&lt;dist&gt;), thanks an R
    contributors effort, notably by Tim Taylor and Heather Turner,
    see PR#18660.
  * The default and numeric methods of all.equal() get a check.class
    option.
  * zapsmall() gets new optional arguments, function mFUN and min.d,
    for extra flexibility; fulfills a wish in PR#18199.  Also, it is
    now an implicit S4 generic in package methods.
  * The Rd filter for aspell() gains an ignore argument.
  * New generic function sort_by(), primarily useful for the
    data.frame method which can be used to sort rows of a data frame
    by one or more columns.
  * The icence headers for the RPC code in src/extra/xdr have been
    updated to use the GPL-compatible licence published by Oracle
    America in 2010.
  * New function pkg2HTML() in tools to create single-page HTML
    reference manuals for R packages.
  * The byte code evaluator now uses less C stack space for recursive
    calls to byte-compiled functions. It also makes more of an effort
    to avoid allocations for scalar return values.
  * New completion option backtick (disabled by default) allows
    non-syntactic completions to be wrapped in backquotes. This is
    currently only useful for Jupyter notebooks via the IRkernel
    package, and may cause problems for other backends.
  INSTALLATION:
  * The parser has been updated to work with bison 3.8.2, which is
    now used for the pre-generated parsers in gram.c, file.c, and
    gramRd.c. A few parser error messages have changed, which may
    affect code that relies on exact messages.
  INSTALLATION on a UNIX-ALIKE:
  * System valgrind headers are now required to use configure option
  - -with-valgrind-instrumentation with value 1 or 2.
  * configure will warn if it encounters a 32-bit build, as that is
    nowadays almost untested.
  * Environment variable R_SYSTEM_ABI is no longer used and so no
    longer recorded in etc/Renviron (it was not on Windows and was
    only ever used when preparing package tools).
  * If the libdeflate library and headers are available, libdeflate
    rather than libz is used to (de)compress R objects in lazy-load
    databases.  Typically tasks spend up to 5% of their time on such
    operations, although creating lazy-data databases is one of the
    exceptions.
    This can be suppressed if the library is available by the
    configure option --without-libdeflate-compression.
  * configure option --enable-lto=check has not worked reliably since
    2019 and has been removed.
  * The minimum autoconf requirement for a maintainer build has been
    increased to autoconf 2.71.
    It is intended to increase this to 2.72 for R 4.5.0: the
    distributed configure file was generated using 2.72.
  * The minimum version requirement for an external LAPACK has been
    reduced to 3.9.0.
  * No default C++ compiler is set if no C++17 compiler is detected:
    there is no longer an automatic fallback to C++14 or C++11.
    Compilers from the last five years should have sufficient
    support: for others macros CXX and CXXSTD can be set in file
    config.site to provide a fallback if needed.
    The Objective-C++ compiler now by default uses the standard
    selected by R for C++ (currently C++17) rather than the default
    standard for the C++ compiler (which on macOS is still C++98).
  INSTALLATION on macOS:
  * A new configure option --with-newAccelerate makes use of Apple's
    'new' BLAS / LAPACK interfaces in their Accelerate framework.
    Those interfaces are only available in macOS 13.3 or later, and
    building requires SDK 13.3 or later (from the Command Line Tools
    or Xcode 14.3 or later).
    By default the option uses new Accelerate for BLAS calls: to also
    use it for LAPACK use option --with-newAccelerate=lapack.  The
    later interfaces provide LAPACK 3.9.1 rather than 3.2.1: 3.9.1 is
    from 2021-04 and does not include the improved algorithms
    introduced in LAPACK 3.10.0 (including for BLAS calls).
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools44, an update of the Rtools43 toolchain.  It is
    based on GCC 13 and newer versions of MinGW-W64, binutils and
    libraries (targeting 64-bit Intel CPUs).  R-devel can no longer
    be built using Rtools43 without changes.
  * Rtools44 has experimental support for 64-bit ARM (aarch64) CPUs
    _via_ the LLVM 17 toolchain using lld, clang/flang-new and
    libc++.
  UTILITIES:
  * R CMD check notes when S4-style exports are used without
    declaring a strong dependence on package methods.
  * tools::checkRd() (used by R CMD check) detects more problems with
    \Sexpr-based dynamic content, including bad nesting of \Sexprs
    and invalid arguments.
  * tools::checkRd() now reports Rd titles and section names ending
    in a period; this is ignored by R CMD check unless environment
    variable _R_CHECK_RD_CHECKRD_MINLEVEL_ is set to -5 or smaller.
  * R CMD check now notes Rd files without an \alias, as long
    documented in 'Writing R Extensions' §1.3.1.  The check for a
    missing \description has been moved from tools::checkRd() to
    tools::checkRdContents().
  * R CMD check now visits inst/NEWS.Rd and OS-specific man
    subdirectories when checking Rd files.
  * tools::checkDocFiles() and tools::checkRdContents() now also
    check internal Rd files by default, but "specially" (ignoring
    missing documentation of arguments).
  * R CMD Rdiff gets option --useEx.
  * R CMD check now warns on non-portable uses of Fortran KIND such
    as INTEGER(KIND=4) and REAL(KIND=8).
    To see the failing lines set environment variable
    _R_CHECK_FORTRAN_KIND_DETAILS_ to a true value.
  * When checking Rd files, R CMD check now notes some of the "lost
    braces" that tools::checkRd() finds.  Typical problems are Rd
    macros missing the initial backslash (e.g., code{...}), in-text
    set notation (e.g., {1, 2}, where the braces need escaping), and
    \itemize lists with \describe-style entries of the form
    \item{label}{description}.
  * R CMD INSTALL (and hence check) will compile C++ code with
  - DR_NO_REMAP if environment variable _R_CXX_USE_NO_REMAP_ is set
    to a true value.  It is planned that this will in future become
    the default for compiling C++.
  * The new built-in Rd macro \dontdiff{} can be used to mark example
    code whose output should be ignored when comparing check output
    to reference output (tests/Examples/&lt;pkg&gt;-Ex.Rout.save).  The
    \dontdiff tag, like \donttest, is _not_ shown on the rendered
    help page, so provides a clean alternative to ##
    IGNORE_RDIFF_(BEGIN|END) comments.
  * R CMD build when there is no NAMESPACE, now uses the recommended
    exportPattern("^[^.]"), instead of exporting everything.
  * R CMD check now warns about non-ASCII characters in the NAMESPACE
    file (in addition to R files). Such packages are not portable and
    may fail to install on some platforms.
  C-LEVEL FACILITIES:
  * Headers R_ext/Applic.h and R-ext/Linpack.h used to include
    R_ext/BLAS.h although this was undocumented and unneeded by their
    documented entry points.  They no longer do so.
  * New function R_missing(), factored out from do_missing(), used to
    fix PR#18579.
  * SEXP type S4SXP has been renamed to OBJSXP to support
    experimenting with alternative object systems.  The S4SXP value
    can still be used in C code but is now deprecated.  Based on
    contributions from the R Consortium's Object-Oriented Programming
    Working Group.
  * New function pow1p(x,y) for accurate (1+x)^y.
  * mkCharLenCE was incorrectly documented to take a size_t length
    but was implemented with int (and character strings in R are
    limited to 2^31 - 1 bytes).
  DEPRECATED AND DEFUNCT:
  * data() no longer handles zipped data from long-defunct (since R
    2.13.0) --use-zip-data installations.
  * The legacy graphics devices pictex() and xfig() are now
    deprecated.  They do not support recent graphics enhancements and
    their font handling is rudimentary. The intention is to retain
    them for historical interest as long as they remain somewhat
    functional.
  * Support for encoding = "MacRoman" has been removed from the pdf()
    and postscript() devices - this was a legacy encoding supporting
    classic macOS up to 2001 and no longer has universal libiconv
    support.
  * is.R() is deprecated as no other S dialect is known to be in use
    (and this could only identify historical dialects, not future
    ones).
    Further information on calls can be obtained by setting the
    environment variable _R_DEPRECATED_IS_R_ to error which turns the
    deprecation warning into an error and so by default gives a
    traceback.  (This is done by R CMD check --as-cran.)
  * UseMethod() no longer forwards local variables assigned in the
    generic function into method call environments before evaluating
    the method body. This makes method calls behave more like
    standard function calls and makes method code easier to analyze
    correctly.
  * The twelve as.data.frame.&lt;class&gt;() methods which were deprecated
    only via _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ and in R CMD
    check --as-cran are formally deprecated now in favour of calling
    as.data.frame() or as.data.frame.vector().  The deprecation
    "check" now works also when as.data.frame() is S4 generic thanks
    to Ivan Krylov.
  * The default method for the directional comparison operators &lt;, &gt;,
    &lt;=, and &gt;= now signals an error when one of the operands is a
    language object, i.e. a symbol or a call.
  * For terms.formula(), deprecate abb and neg.out arguments
    _formally_ in addition to just documenting it.
  BUG FIXES:
  * The methods package is more robust to not being attached to the
    search path.  More work needs to be done.
  * pairwise.t.test() misbehaved when subgroups had 0 DF for
    variance, even with pool.sd = TRUE.  (PR#18594 by Jack Berry).
  * Probability distribution functions [dpq]&lt;distrib&gt;(x, *), but also
    bessel[IKJY](x, .) now consistently preserve attributes(x) when
    length(x) == 0, e.g., for a 2 x 0 matrix, thanks to Karolis
    Koncevičius' report PR#18509.
  * Group "Summary" computations such as sum(1:3, 4, na.rm = 5, NA,
    7, na.rm = LL) now give an error instead of either 17 or NN for
    LL true or false, as proposed by Ivan Krylov on the R-devel
    mailing list.  (This also means it is now an error to specify
    na.rm more than once.)
  * as.complex(x) now returns complex(real = x, imaginary = 0) for
    _all_ numerical and logical x, notably also for NA or
    NA_integer_.
  * Directories are now omitted by file.copy(, recursive = FALSE) and
    in file.append() (PR#17337).
  * gsub() and sub() are now more robust to integer overflow when
    reporting errors caused by too large input strings (PR#18346).
  * Top-level handlers are now more robust to attempts to remove a
    handler whilst handlers are running (PR#18508).
  * The handling of Alt+F4 in dialogs created on Windows using
    GraphApp has been fixed (PR#13870).
  * density() more consistently computes grid values for the
    FFT-based convolution, following Robert Schlicht's analysis and
    proposal in PR#18337, correcting density values typically by a
    factor of about 0.999.  Argument old.coords = TRUE provides back
    compatibility.
  * palette.colors() gains a name argument that defaults to FALSE
    controlling whether the vector of colours that is returned has
    names (where possible).  PR#18529.
  * tools::xgettext() no longer extracts the (non-translatable) class
    names from warningCondition and errorCondition calls.
  * S3method(&lt;gen&gt;, &lt;class&gt;, &lt;func&gt;) in the NAMESPACE file now works
    (again) when &lt;func&gt; is visible from the namespace, e.g.,
    imported, or in base.
  * getParseData(f) now also works for a function defined in the
    first of several &lt;pkg&gt;/R/*.R source files, thanks to Kirill
    Müller's report and Duncan Murdoch's patch in PR#16756.
  * Rd \Sexpr macros with nested #ifdef conditionals were not
    processed.
  * A non-blocking connection with non-default encoding (such as a
    socket) now correctly returns from readLines() after new data has
    arrived also when its EOF had been reached previously.  Thanks to
    Peter Meilstrup's report on R-devel and Ivan Krylov's report and
    patch proposal in PR#18555.
  * tools::checkRdContents() failed to detect empty argument
    descriptions when they spanned multiple lines, including those
    generated by prompt().  These cases are now noted by R CMD check.
  * Plain-text help no longer outputs spurious colons in the
    arguments list (for multi-line \item labels in the Rd source).
  * kappa() and rcond() work correctly in more cases; kappa(., norm =
    "2") now warns that it computes the 1-norm with (default) exact =
    FALSE; prompted by Mikael Jagan's quite comprehensive PR#18543.
  * Rd skeletons generated by prompt() or promptData() now use a
    dummy title (so R CMD build works).  tools::checkRdContents() has
    been updated to detect such template leftovers, including from
    promptPackage().
  * When S4 method dispatch fails because no method was found, the
    error message now includes the signature argument names; thanks
    to Michael Chirico's proposal on the R-devel list.
  * withAutoprint({ .. }) now preserves srcrefs previously lost,
    thanks to Andrew Simmons' report plus fix in PR#18572.
  * transform.data.frame() no longer adjusts names; in particular,
    untransformed variables are kept as-is, including those with
    syntactically invalid names (PR#17890).
  * The keep.source option for Rd \Sexpr blocks is no longer ignored.
  * The formula methods for t.test() and wilcox.test() now catch when
    paired is passed, addressing PR#14359; use Pair(x1, x2) ~ 1 for a
    paired test.
  * The level reported in the browser prompt was often too large. It
    now shows the number of browser contexts on the stack.
  * For cbind() and rbind(), the optional deparse.level argument is
    now properly passed to methods, thanks to Mikael Jagan's PR#18579
    and comments there.
  * Some error and warning messages for large ('long vector')
    matrix(v, nr, nc) and dim(m) &lt;- d are now correct about sizes,
    using long long formatting, fixing PR#18612 (and more) reported
    by Mikael Jagan.
  * readChar(useBytes = TRUE) now terminates strings even when the
    underlying connection uses extra spaces in the input buffer.
    This fixes problems with extra garbage seen with gzip
    connections, PR#18605.
  * Named capture in PCRE regular expressions now works also with
    more than 127 named groups (PR#18588).
  * Datetime functions are now robust against long jumps when dealing
    with internal time zone changes.  This avoids confusing warnings
    about an invalid time zone, previously triggered by turning
    warnings into errors or handling them via tryCatch (PR#17966,
    PR#17780).
  * Datetime functions now restore even an empty TZ environment
    variable after internal time zone changes (PR#17724).  This makes
    results of datetime functions with this (typically unintentional)
    setting more predictable.
  * drop.terms(*) now drops response as by default, keep.response =
    FALSE, fixing PR#18564 thanks to Mikael Jagan.
  * dummy.coef(.) now also works for lm()-models with character
    categorical predictor variables rather than factor ones, fixing
    PR#18635 reported by Jinsong Zhao.
  * formals(f) &lt;- formals(f) now also works for a function w/o
    arguments and atomic _constant_ body(f).
  * Correct as.function(&lt;invalid list&gt;, .)'s error message.
  * removeSource() is yet more thorough in finding and removing
    "srcref" and the other source references from parsed R language
    chunks, fixing PR#18638 thanks to Andrew Simmons.
  * dgeom() is more accurate now, notably when its result is very
    small, fixing PR#18642 thanks to the proposal of Morten Welinder,
    also improving other instances where C level binom_raw(x, n, ..)
    has x == 0 or x== n.
  * warning() with options(warn = 1) has improved output for
    multi-line messages.
  * axis.Date() and axis.POSIXct() now respect the par("lab") setting
    for the number of pretty() intervals.
  * Comparisons for language objects (which are based on deparsing)
    are now more careful about using accurate deparsed results
    (PR#18676).
  * Plain-text help (Rd2txt) now correctly preserves blank lines
    following single-line \dontrun code.
  * &lt;POSIXlt&gt;[*] no longer sets wrong "balanced" attribute, fixing
    PR#18681 thanks to Mikael Jagan.
  * str(&lt;classed-call&gt;) now deparses the call as expected, fixing
    PR#18684, reported by Dave Slager.
  * In Rd examples, code following the closing brace of a \dontrun,
    \dontshow or \donttest tag on the same line is no longer skipped
    when R CMD check runs the examples.
  * as.data.frame(matrix(*, ncol=0)) now gets valid names() and
    colnames(); reported by Davis Vaughan on the R-devel list.
  * Internal Mathlib function stirlerr(n) is now almost fully
    (52-bit) accurate for all n &gt;= ~5.9 and more accurate also in the
    range 1 -- 5.9.  This entails small ("after 12th decimal")
    changes in density functions, e.g., dgamma() in _some_ regions of
    their support.  The fix was partly prompted by Morten Welinder's
    PR#18640.
  * Numbers like 9876543.2 are now considered non-integer by Mathlib
    internal R_nonint(), amending original fix of PR#15734.
  * Rd comment lines no longer cause broken paragraphs in the
    rendered PDF and plain-text help. In code blocks, pure comment
    lines (starting with %) no longer produce an empty line.
  * xtabs(Freq ~ .) now consistently defaults to na.action = na.pass,
    using na.rm = FALSE (added as an argument) when summing over Freq
    (PR#17770).
  * tools::testInstalledPackage() is no longer silent about failures
    from running examples or tests and its return code no longer
    ignores failures from checking vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1718366400">- CHANGES IN R 4.4.1:
  C-LEVEL FACILITIES:
  * Functions R_atof and R_strtod declared in header R_ext/Utils.h
    are now documented in 'Writing R Extensions' and so formally part
    of the API.
  * The non-API entry points Rf_setSVector, Rf_StringFalse,
    Rf_StringTrue and Rf_isBlankString have been added to those
    reported by R CMD check.
  * The new function Rf_allocLang is now available. This provides an
    alternative to the idiom of calling Rf_allocList followed by
    SET_TYPEOF.
  UTILITIES:
  * R CMD check now reports as warnings what gfortran calls 'Fortran
    2018 deleted features', all of which have long been marked as
    'obsolescent' and some of which were deleted in Fortran 2008 or
    earlier.  Fortran compilers are no longer required to support
    these.
  BUG FIXES:
  * as.numeric(), scan(), type.convert() and other places which use
    the internal C function R_strtod now require a _non-empty_ digit
    sequence in a decimal or binary exponent.  This aligns with the
    C/POSIX standard for strtod and with ?NumericConstants.
  * as.data.frame(m, make.names=NA) now works correctly for a matrix
    m with NA's in row names.
  * The error message from &lt;POSIXlt&gt;[["hour"]] and similar now
    mentions *[[, "hour"]], as wished for in PR#17409 and proposed by
    Michael Chirico.
  * qbinom() and potentially qpois(), qnbinom(), no longer sometimes
    fail accurate inversion (of pbinom(), etc), thanks to Christopher
    Chang's report and patch in PR#18711.
  * The internal help server on Windows can again serve requests sent
    in quick succession, fixing a regression in R 4.4.0.
  * debugcall(&lt;S3Generic&gt;()) now also works when a corresponding
    S4-generic version is in the methods cache (PR#18143).
  * Package tools' toTitleCase(ch0) now returns character(0) when ch0
    is of zero length; fixing PR#18724, reported by David Hugh Jones.
  * R CMD check is no longer broken (without a check result and no
    explanation in 00check.log) for a package which declares an
    invalid VignetteBuilder in DESCRIPTION but has no vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1730376000">- CHANGES IN R 4.4.2:
  C-LEVEL FACILITIES:
  * The S-compatibility macros F77_COM and F77_COMDECL defined in
    header R_ext/RS.h are deprecated and will be removed shortly.  We
    could find no record of their use.
  BUG FIXES:
  * Mathlib function lgammacor(x) no longer warns about underflow to
    zero for large x.
  * Text widths and heights were incorrectly reported by the Quartz
    device if the drawing context didn't exist yet (typically when
    drawing off-screen to a window that is yet to appear, see
    PR#18591).
  * The Quartz device could segfault in cases where paths with spaces
    are used in the new glyph drawing API.  Thanks to Tomek
    Gieorgijewski (PR#18758).
  * On macOS in R CRAN builds, it is again possible to read
    little-endian UTF-16 text with a BOM from a connection using
    encoding="UTF-16".  Users building R from source should avoid
    using the system libiconv in macOS 14.1 and later.
  * methods' internal .requirePackage() now re-enables primitive
    method dispatch when needed; thanks to Ivan Krylov for
    demystifying CRAN package check failures on the R-devel mailing
    list.</changelog>
</package>
<package pkgid="a4f17c448ecc8f9052f3a14f9e1b4fc4ba9f8444915e756acdb0c5353cc355eb197cdce3b787523303577deb35ad88dae73adc3d2feba70106f551a171114d80" name="R-spatial" arch="i586">
  <version epoch="0" ver="7.3.17" rel="51.0.2.2.sr20241103"/>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1620302400">- To get in sync with d:l:R:autoCRAN the Matrix package's split
  in -devel was reversed.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339200">- improved spec file according to comments of dimstar in
  https://build.opensuse.org/request/show/892685</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339201">- CHANGES IN R 4.1.0:
  FUTURE DIRECTIONS:
  * It is planned that the 4.1.x series will be the last to support
    32-bit Windows, with production of binary packages for that
    series continuing until early 2023.
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Data set esoph in package datasets now provides the correct
    numbers of controls; previously it had the numbers of cases added
    to these.  (Reported by Alexander Fowler in PR#17964.)
  NEW FEATURES:
  * www.omegahat.net is no longer one of the repositories known by
    default to setRepositories().  (Nowadays it only provides source
    packages and is often unavailable.)
  * Function package_dependencies() (in package tools) can now use
    different dependency types for direct and recursive dependencies.
  * The checking of the size of tarball in R CMD check --as-cran
    &lt;pkg&gt; may be tweaked via the new environment variable
    _R_CHECK_CRAN_INCOMING_TARBALL_THRESHOLD_, as suggested in
    PR#17777 by Jan Gorecki.
  * Using c() to combine a factor with other factors now gives a
    factor, an ordered factor when combining ordered factors with
    identical levels.
  * apply() gains a simplify argument to allow disabling of
    simplification of results.
  * The format() method for class "ftable" gets a new option justify.
    (Suggested by Thomas Soeiro.)
  * New ...names() utility.  (Proposed by Neal Fultz in PR#17705.)
  * type.convert() now warns when its as.is argument is not
    specified, as the help file always said it _should_.  In that
    case, the default is changed to TRUE in line with its change in
    read.table() (related to stringsAsFactor) in R 4.0.0.
  * When printing list arrays, classed objects are now shown _via_
    their format() value if this is a short enough character string,
    or by giving the first elements of their class vector and their
    length.
  * capabilities() gets new entry "Rprof" which is TRUE when R has
    been configured with the equivalent of --enable-R-profiling (as
    it is by default).  (Related to Michael Orlitzky's report
    PR#17836.)
  * str(xS4) now also shows extraneous attributes of an S4 object
    xS4.
  * Rudimentary support for vi-style tags in rtags() and R CMD rtags
    has been added.  (Based on a patch from Neal Fultz in PR#17214.)
  * checkRdContents() is now exported from tools; it and also
    checkDocFiles() have a new option chkInternal allowing to check
    Rd files marked with keyword "internal" as well.  The latter can
    be activated for R CMD check via environment variable
    _R_CHECK_RD_INTERNAL_TOO_.
  * New functions numToBits() and numToInts() extend the raw
    conversion utilities to (double precision) numeric.
  * Functions URLencode() and URLdecode() in package utils now work
    on vectors of URIs.  (Based on patch from Bob Rudis submitted
    with PR#17873.)
  * path.expand() can expand ~user on most Unix-alikes even when
    readline is not in use.  It tries harder to expand ~, for example
    should environment variable HOME be unset.
  * For HTML help (both dynamic and static), Rd file links to help
    pages in external packages are now treated as references to
    topics rather than file names, and fall back to a file link only
    if the topic is not found in the target package. The earlier rule
    which prioritized file names over topics can be restored by
    setting the environment variable _R_HELP_LINKS_TO_TOPICS_ to a
    false value.
  * c() now removes NULL arguments before dispatching to methods,
    thus simplifying the implementation of c() methods, _but_ for
    back compatibility keeps NULL when it is the first argument.
    (From a report and patch proposal by Lionel Henry in PR#17900.)
  * Vectorize()'s result function's environment no longer keeps
    unneeded objects.
  * Function ...elt() now propagates visibility consistently with
    ..n.  (Thanks to Lionel Henry's PR#17905.)
  * capture.output() no longer uses non-standard evaluation to
    evaluate its arguments.  This makes evaluation of functions like
    parent.frame() more consistent.  (Thanks to Lionel Henry's
    PR#17907.)
  * packBits(bits, type="double") now works as inverse of
    numToBits().  (Thanks to Bill Dunlap's proposal in PR#17914.)
  * curlGetHeaders() has two new arguments, timeout to specify the
    timeout for that call (overriding getOption("timeout")) and TLS
    to specify the minimum TLS protocol version to be used for
    https:// URIs (_inter alia_ providing a means to check for sites
    using deprecated TLS versions 1.0 and 1.1).
  * For nls(), an optional constant scaleOffset may be added to the
    denominator of the relative offset convergence test for cases
    where the fit of a model is expected to be exact, thanks to a
    proposal by John Nash.  nls(*, trace=TRUE) now also shows the
    convergence criterion.
  * Numeric differentiation _via_ numericDeriv() gets new optional
    arguments eps and central, the latter for taking central divided
    differences.  The latter can be activated for nls() via
    nls.control(nDcentral = TRUE).
  * nls() now passes the trace and control arguments to getInitial(),
    notably for all self-starting models, so these can also be fit in
    zero-noise situations via a scaleOffset.  For this reason, the
    initial function of a selfStart model must now have ... in its
    argument list.
  * bquote(splice = TRUE) can now splice expression vectors with
    attributes: this makes it possible to splice the result of
    parse(keep.source = TRUE).  (Report and patch provided by Lionel
    Henry in PR#17869.)
  * textConnection() gets an optional name argument.
  * get(), exists(), and get0() now signal an error if the first
    argument has length greater than 1.  Previously additional
    elements were silently ignored.  (Suggested by Antoine Fabri on
    R-devel.)
  * R now provides a shorthand notation for creating functions, e.g.
    \(x) x + 1 is parsed as function(x) x + 1.
  * R now provides a simple native forward pipe syntax |&gt;.  The
    simple form of the forward pipe inserts the left-hand side as the
    first argument in the right-hand side call.  The pipe
    implementation as a syntax transformation was motivated by
    suggestions from Jim Hester and Lionel Henry.
  * all.equal(f, g) for functions now by default also compares their
    environment(.)s, notably via new all.equal method for class
    function.  Comparison of nls() fits, e.g., may now need
    all.equal(m1, m2, check.environment = FALSE).
  * .libPaths() gets a new option include.site, allowing to _not_
    include the site library.  (Thanks to Dario Strbenac's suggestion
    and Gabe Becker's PR#18016.)
  * Lithuanian translations are now available.  (Thanks to Rimantas
    Zakauskas.)
  * names() now works for DOTSXP objects.  On the other hand, in
    R-lang, the R language manual, we now warn against relying on the
    structure or even existence of such dot-dot-dot objects.
  * all.equal() no longer gives an error on DOTSXP objects.
  * capabilities("cairo") now applies only to the file-based devices
    as it is now possible (if very unusual) to build R with Cairo
    support for those but not for X11().
  * There is optional support for tracing the progress of
    loadNamespace() - see its help.
  * (Not Windows.)  l10n_info() reports an additional element, the
    name of the encoding as reported by the OS (which may differ from
    the encoding part (if any) of the result from
    Sys.getlocale("LC_CTYPE").
  * New function gregexec() which generalizes regexec() to find _all_
    disjoint matches and well as all substrings corresponding to
    parenthesized subexpressions of the given regular expression.
    (Contributed by Brodie Gaslam.)
  * New function charClass() in package utils to query the
    wide-character classification functions in use (such as
    iswprint).
  * The names of quantile()'s result no longer depend on the global
    getOption("digits"), but quantile() gets a new optional argument
    digits = 7 instead.
  * grep(), sub(), regexp and variants work considerably faster for
    long factors with few levels.  (Thanks to Michael Chirico's
    PR#18063.)
  * Provide grouping of x11() graphics windows within a window
    manager such as Gnome or Unity; thanks to a patch by Ivan Krylov
    posted to R-devel.
  * The split() method for class data.frame now allows the f argument
    to be specified as a formula.
  * sprintf now warns on arguments unused by the format string.
  * New palettes "Rocket" and "Mako" for hcl.colors() (approximating
    palettes of the same name from the 'viridisLite' package).
    Contributed by Achim Zeileis.
  * The base environment and its namespace are now locked (so one can
    no longer add bindings to these or remove from these).
  * Rterm handling of multi-byte characters has been improved,
    allowing use of such characters when supported by the current
    locale.
  * Rterm now accepts ALT+ +xxxxxxxx sequences to enter Unicode
    characters as hex digits.
  * Environment variable LC_ALL on Windows now takes precedence over
    LC_CTYPE and variables for other supported categories, matching
    the POSIX behaviour.
  * duplicated() and anyDuplicated() are now optimized for integer
    and real vectors that are known to be sorted via the ALTREP
    framework. Contributed by Gabriel Becker via PR#17993.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 14
    and so packages that provide graphics devices should be
    reinstalled.
  * Graphics devices should now specify deviceVersion to indicate
    what version of the graphics engine they support.
  * Graphics devices can now specify deviceClip.  If TRUE, the
    graphics engine will never perform any clipping of output itself.
    The clipping that the graphics engine does perform (for both
    canClip = TRUE and canClip = FALSE) has been improved to avoid
    producing unnecessary artifacts in clipped output.
  * The grid package now allows gpar(fill) to be a linearGradient(),
    a radialGradient(), or a pattern().  The viewport(clip) can now
    also be a grob, which defines a clipping path, and there is a new
    viewport(mask) that can also be a grob, which defines a mask.
    These new features are only supported so far on the Cairo-based
    graphics devices and on the pdf() device.
  * (Not Windows.)  A warning is given when a Cairo-based type is
    specified for a png(), jpeg(), tiff() or bmp() device but Cairo
    is unsupported (so type = "Xlib" is tried instead).
  * grSoftVersion() now reports the versions of FreeType and
    FontConfig if they are used directly (not _via_ Pango), as is
    most commonly done on macOS.
  C-LEVEL FACILITIES:
  * The _standalone_ libRmath math library and R's C API now provide
    log1pexp() again as documented, and gain log1mexp().
  INSTALLATION on a UNIX-ALIKE:
  * configure checks for a program pkgconf if program pkg-config is
    not found.  These are now only looked for on the path (like
    almost all other programs) so if needed specify a full path to
    the command in PKG_CONFIG, for example in file config.site.
  * C99 function iswblank is required - it was last seen missing ca
    2003 so the workaround has been removed.
  * There are new configure options --with-internal-iswxxxxx,
  - -with-internal-towlower and --with-internal-wcwidth which allows
    the system functions for wide-character classification,
    case-switching and width (wcwidth and wcswidth) to be replaced by
    internal ones.  The first has long been used on macOS, AIX (and
    Windows) but this enables it to be unselected there and selected
    for other platforms (it is the new default on Solaris).  The
    second is new in this version of R and is selected by default on
    macOS and Solaris.  The third has long been the default and
    remains so as it contains customizations for East Asian
    languages.
    System versions of these functions are often minimally
    implemented (sometimes only for ASCII characters) and may not
    cover the full range of Unicode points: for example Solaris (and
    Windows) only cover the Basic Multilingual Plane.
  * Cairo installations without X11 are more likely to be detected by
    configure, when the file-based Cairo graphics devices will be
    available but not X11(type = "cairo").
  * There is a new configure option --with-static-cairo which is the
    default on macOS.  This should be used when only static cairo
    (and where relevant, Pango) libraries are available.
  * Cairo-based graphics devices on platforms without Pango but with
    FreeType/FontConfig will make use of the latter for font
    selection.
  LINK-TIME OPTIMIZATION on a UNIX-ALIKE:
  * Configuring with flag --enable-lto=R now also uses LTO when
    installing the recommended packages.
  * R CMD INSTALL and R CMD SHLIB have a new flag --use-LTO to use
    LTO when compiling code, for use with R configured with
  - -enable-lto=R.  For R configured with --enable-lto, they have
    the new flag --no-use-LTO.
    Packages can opt in or out of LTO compilation _via_ a UseLTO
    field in the DESCRIPTION file.  (As usual this can be overridden
    by the command-line flags.)
  BUILDING R on Windows:
  * for GCC &gt;= 8, FC_LEN_T is defined in config.h and hence character
    lengths are passed from C to Fortran in _inter alia_ BLAS and
    LAPACK calls.
  * There is a new text file src/gnuwin32/README.compilation, which
    outlines how C/Fortran code compilation is organized and
    documents new features:
  * R can be built with Link-Time Optimization with a suitable
    compiler - doing so with GCC 9.2 showed several
    inconsistencies which have been corrected.
  * There is support for cross-compiling the C and Fortran code
    in R and standard packages on suitable (Linux) platforms.
    This is mainly intended to allow developers to test later
    versions of compilers - for example using GCC 9.2 or 10.x has
    detected issues that GCC 8.3 in Rtools40 does not.
  * There is experimental support for cross-building R packages
    with C, C++ and/or Fortran code.
  * The R installer can now be optionally built to support a single
    architecture (only 64-bit or only 32-bit).
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++14 where
    available (which it is on all currently checked platforms): if
    not (as before) C++11 is used if available otherwise C++ is not
    supported.
    Packages which specify C++11 will still be installed using C++11.
    C++14 compilers may give deprecation warnings, most often for
    std::random_shuffle (deprecated in C++14 and removed in C++17).
    Either specify C++11 (see 'Writing R Extensions') or modernize
    the code and if needed specify C++14.  The latter has been
    supported since R 3.4.0 so the package's DESCRIPTION would need
    to include something like
    Depends: R (&gt;= 3.4)
  PACKAGE INSTALLATION on Windows:
  * R CMD INSTALL and R CMD SHLIB make use of their flag --use-LTO
    when the LTO_OPT make macro is set in file etc/${R_ARCH}/Makeconf
    or in a personal/site Makevars file.  (For details see 'Writing R
    Extensions' SS4.5.)
    This provides a valuable check on code consistency.  It does work
    with GCC 8.3 as in Rtools40, but that does not detect everything
    the CRAN checks with current GCC do.
  PACKAGE INSTALLATION on macOS:
  * The default personal library directory on builds with
  - -enable-aqua (including CRAN builds) now differs by CPU type,
    one of
    ~/Library/R/x86_64/x.y/library
    ~/Library/R/arm64/x.y/library
    This uses the CPU type R (and hence the packages) were built for,
    so when a x86_64 build of R is run under Rosetta emulation on an
    arm64 Mac, the first is used.
  UTILITIES:
  * R CMD check can now scan package functions for bogus return
    statements, which were possibly intended as return() calls (wish
    of PR#17180, patch by Sebastian Meyer). This check can be
    activated via the new environment variable
    _R_CHECK_BOGUS_RETURN_, true for --as-cran.
  * R CMD build omits tarballs and binaries of previous builds from
    the top-level package directory.  (PR#17828, patch by Sebastian
    Meyer.)
  * R CMD check now runs sanity checks on the use of LazyData, for
    example that a data directory is present and that
    LazyDataCompression is not specified without LazyData and has a
    documented value.  For packages with large LazyData databases
    without specifying LazyDataCompression, there is a reference to
    the code given in 'Writing R Extensions' SS1.1.6 to test the
    choice of compression (as in all the CRAN packages tested a
    non-default method was preferred).
  * R CMD build removes LazyData and LazyDataCompression fields from
    the DESCRIPTION file of packages without a data directory.
  ENCODING-RELATED CHANGES:
  * The parser now treats \Unnnnnnnn escapes larger than the upper
    limit for Unicode points (\U10FFFF) as an error as they cannot be
    represented by valid UTF-8.
    Where such escapes are used for outputting non-printable
    (including unassigned) characters, 6 hex digits are used (rather
    than 8 with leading zeros).  For clarity, braces are used, for
    example \U{0effff}.
  * The parser now looks for non-ASCII spaces on Solaris (as
    previously on most other OSes).
  * There are warnings (including from the parser) on the use of
    unpaired surrogate Unicode points such as \uD834.  (These cannot
    be converted to valid UTF-8.)
  * Functions nchar(), tolower(), toupper() and chartr() and those
    using regular expressions have more support for inputs with a
    marked Latin-1 encoding.
  * The character-classification functions used (by default) to
    replace the system iswxxxxx functions on Windows, macOS and AIX
    have been updated to Unicode 13.0.0.
    The character-width tables have been updated to include new
    assignments in Unicode 13.0.0.
  * The code for evaluating default (extended) regular expressions
    now uses the same character-classification functions as the rest
    of R (previously they differed on Windows, macOS and AIX).
  * There is a build-time option to replace the system's
    wide-character wctrans C function by tables shipped with R: use
    configure option --with-internal-towlower or (on Windows)
  - DUSE_RI18N_CASE in CFLAGS when building R.  This may be needed
    to allow tolower() and toupper() to work with Unicode characters
    beyond the Basic Multilingual Plane where not supported by system
    functions (e.g. on Solaris where it is the new default).
  * R is more careful when truncating UTF-8 and other multi-byte
    strings that are too long to be printed, passed to the system or
    libraries or placed into an internal buffer.  Truncation will no
    longer produce incomplete multibyte characters.
  DEPRECATED AND DEFUNCT:
  * Function plclust() from the package stats and
    package.dependencies(), pkgDepends(), getDepList(),
    installFoundDepends(), and vignetteDepends() from package tools
    are defunct.
  * Defunct functions checkNEWS() and readNEWS() from package tools
    and CRAN.packages() from utils have been removed.
  * R CMD config CXXCPP is defunct (it was deprecated in R 3.6.2).
  * parallel::detectCores() drops support for Irix (retired in 2013).
  * The LINPACK argument to chol.default(), chol2inv(),
    solve.default() and svd() has been defunct since R 3.1.0.  It was
    silently ignored up to R 4.0.3 but now gives an error.
  * Subsetting/indexing, such as ddd[*] or ddd$x on a DOTSXP
    (dot-dot-dot) object ddd has been disabled; it worked by accident
    only and was undocumented.
  BUG FIXES:
  * Many more C-level allocations (mainly by malloc and strdup) are
    checked for success with suitable alternative actions.
  * Bug fix for replayPlot(); this was turning off graphics engine
    display list recording if a recorded plot was replayed in the
    same session.  The impact of the bug became visible if resize the
    device after replay OR if attempted another savePlot() after
    replay (empty display list means empty screen on resize or empty
    saved plot).
  * R CMD check etc now warn when a package exports non-existing S4
    classes or methods, also in case of no "methods" presence.
    (Reported by Alex Bertram; reproducible example and patch by
    Sebastian Meyer in PR#16662.)
  * boxplot() now also accepts calls for labels such as ylab, the
    same as plot().  (Reported by Marius Hofert.)
  * The help page for xtabs() now correctly states that addNA is
    setting na.action = na.pass among others.  (Reported as PR#17770
    by Thomas Soeiro.)
  * The R CMD check &lt;pkg&gt; gives a longer and more comprehensible
    message when DESCRIPTION misses dependencies, e.g., in Imports:.
    (Thanks to the contributors of PR#17179.)
  * update.default() now calls the generic update() on the formula to
    work correctly for models with extended formulas.  (As reported
    and suggested by Neal Fultz in PR#17865.)
  * The horizontal position of leaves in a dendrogram is now correct
    also with center = FALSE.  (PR#14938, patch from Sebastian
    Meyer.)
  * all.equal.POSIXt() no longer warns about and subsequently ignores
    inconsistent "tzone" attributes, but describes the difference in
    its return value (PR#17277).  This check can be disabled _via_
    the new argument check.tzone = FALSE as suggested by Sebastian
    Meyer.
  * as.POSIXct() now populates the "tzone" attribute from its tz
    argument when x is a logical vector consisting entirely of NA
    values.
  * x[[2^31]] &lt;- v now works.  (Thanks to the report and patch by
    Suharto Anggono in PR#17330.)
  * In log-scale graphics, axis() ticks and label positions are now
    computed more carefully and symmetrically in their range,
    typically providing _more_ ticks, fulfilling wishes in PR#17936.
    The change really corresponds to an improved axisTicks() (package
    grDevices), potentially influencing grid and lattice, for
    example.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now correct to at
    least five digits where it was catastrophically wrong,
    previously.
  * sum(df) and similar "Summary"- and "Math"-group member functions
    now work for data frames df with logical columns, notably also of
    zero rows.  (Reported to R-devel by Martin "b706".)
  * unsplit() had trouble with tibbles due to unsound use of rep(NA,
    len)-indexing, which should use NA_integer_ (Reported to R-devel
    by Mario Annau.)
  * pnorm(x, log.p = TRUE) underflows to -Inf slightly later.
  * show(&lt;hidden S4 generic&gt;) prints better and without quotes for
    non-hidden S4 generics.
  * read.table() and relatives treated an "NA" column name as missing
    when check.names = FALSE PR#18007.
  * Parsing strings containing UTF-16 surrogate pairs such as
    "\uD834\uDD1E" works better on some (uncommon) platforms.
    sprintf("%X", utf8ToInt("\uD834\uDD1E")) should now give "1D11E"
    on all platforms.
  * identical(x,y) is no longer true for differing DOTSXP objects,
    fixing PR#18032.
  * str() now works correctly for DOTSXP and related exotics, even
    when these are doomed.
    Additionally, it no longer fails for lists with a class and
    "irregular" method definitions such that e.g. lapply(*) will
    necessarily fail, as currently for different igraph objects.
  * Too long lines in environment files (e.g. Renviron) no longer
    crash R. This limit has been increased to 100,000 bytes.
    (PR#18001.)
  * There is a further workaround for FreeType giving incorrect
    italic font faces with cairo-based graphics devices on macOS.
  * add_datalist(*, force = TRUE) (from package tools) now actually
    updates an existing data/datalist file for new content.  (Thanks
    to a report and patch by Sebastian Meyer in PR#18048.)
  * cut.Date() and cut.POSIXt() could produce an empty last interval
    for breaks = "months" or breaks = "years".  (Reported as PR#18053
    by Christopher Carbone.)
  * Detection of the encoding of 'regular' macOS locales such as
    en_US (which is UTF-8) had been broken by a macOS change:
    fortunately these are now rarely used with en_US.UTF-8 being
    preferred.
  * sub() and gsub(pattern, repl, x, *) now keep attributes of x such
    as names() also when pattern is NA (PR#18079).
  * Time differences ("difftime" objects) get a replacement and a
    rep() method to keep "units" consistent.  (Thanks to a report and
    patch by Nicolas Bennett in PR#18066.)
  * The \RdOpts macro, setting defaults for \Sexpr options in an Rd
    file, had been ineffective since R 2.12.0: it now works again.
    (Thanks to a report and patch by Sebastian Meyer in PR#18073.)
  * mclapply and pvec no longer accidentally terminate parallel
    processes started before by mcparallel or related calls in
    package parallel (PR#18078).
  * grep and other functions for evaluating (extended) regular
    expressions handle in Unicode also strings not explicitly flagged
    UTF-8, but flagged native when running in UTF-8 locale.
  * Fixed a crash in fifo implementation on Windows (PR#18031).
  * Binary mode in fifo on Windows is now properly detected from
    argument open (PR#15600, PR#18031).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1622808000">- The line %{__install} -m 755 -d %{_infodir}
  no longer works in TW or Factory.
  But without that line it works everywhere. So this instruction
  was commented out of the spec file.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1628596800">- CHANGES IN R 4.1.1:
  NEW FEATURES:
  * require(pkg, quietly = TRUE) is quieter and in particular does
    not warn if the package is not found.
  DEPRECATED AND DEFUNCT:
  * Use of ftp:// URIs should be regarded as deprecated, with
    on-going support confined to method = "libcurl" and not routinely
    tested.  (Nowadays no major browser supports them.)
  * The non-default method = "internal" is deprecated for http:// and
    ftp:// URIs for both download.file and url.
  * On Windows, method = "wininet" is deprecated for http://,
    https:// and ftp:// URIs for both download.file and url.  (A
    warning is only given for ftp://.)
    For ftp:// URIs the default method is now "libcurl" if available
    (which it is on CRAN builds).
    method = "wininet" remains the default for http:// and https://
    URIs but if libcurl is available, using method = "libcurl" is
    preferred.
  INSTALLATION:
  * make check now works also without a LaTeX installation.  (Thanks
    to Sebastian Meyer's PR#18103.)
  BUG FIXES:
  * make check-devel works again in an R build configured with
  - -without-recommended-packages.
  * qnbinom(p, size, mu) for large size/mu is correct now in a range
    of cases (PR#18095); similarly for the (size, prob)
    parametrization of the negative binomial.  Also qpois() and
    qbinom() are better and or faster for extreme cases.  The
    underlying C code has been modularized and is common to all four
    cases of discrete distributions.
  * gap.axis is now part of the axis() arguments which are passed
    from bxp(), and hence boxplot().  (Thanks to Martin Smith's
    report and suggestions in PR#18109.)
  * .First and .Last can again be set from the site profile.
  * seq.int(from, to, *) and seq.default(..) now work better in large
    range cases where from-to is infinite where the two boundaries
    are finite.
  * all.equal(x,y) now returns TRUE correctly also when several
    entries of abs(x) and abs(y) are close to .Machine$double.xmax,
    the largest finite numeric.
  * model.frame() now clears the object bit when removing the class
    attribute of a value via na.action (PR#18100).
  * charClass() now works with multi-character strings on Windows
    (PR#18104, fixed by Bill Dunlap).
  * encodeString() on Solaris now works again in Latin-1 encoding on
    characters represented differently in UTF-8.  Support for
    surrogate pairs on Solaris has been improved.
  * file.show() on Windows now works with non-ASCII path names
    representable in the current native encoding (PR#18132).
  * Embedded R on Windows can now find R home directory via the
    registry even when installed only for the current user
    (PR#18135).
  * pretty(x) with finite x now returns finite values also in the
    case where the extreme x values are close in size to the maximal
    representable number .Machine$double.xmax.
    Also, it's been tweaked for very small ranges and when a boundary
    is close (or equal) to zero; e.g., pretty(c(0,1e-317)) no longer
    has negative numbers, currently still warning about a very small
    range, and pretty(2^-(1024 - 2^-1/(c(24,10)))) is more accurate.
  * The error message for not finding vignette files when weaving has
    correct file sizes now. (Thanks to Sebastian Meyer's PR#18154.)
  * dnbinom(20, &lt;large&gt;, 1) now correctly gives 0, and similar cases
    are more accurate with underflow precaution.  (Reported by Francisco Vera Alcivar in PR#18072.)</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635163200">- repaired https://bugzilla.suse.com/show_bug.cgi?id=1191380
  (rpmacros now go to rpmmacrodir)
- minor clean-ups in spec file</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635768000">- CHANGES IN R 4.1.2:
  C-LEVEL FACILITIES:
  * The workaround in headers R.h and Rmath.h (using namespace std;)
    for the Oracle Developer Studio compiler is no longer needed now
    C++11 is required so has been removed.  A couple more usages of
    log() (which should have been std::log()) with an int argument
    are reported on Solaris.
  * The undocumented limit of 4095 bytes on messages from the
    S-compatibility macros PROBLEM and MESSAGE is now documented and
    longer messages will be silently truncated rather than
    potentially causing segfaults.
  * If the R_NO_SEGV_HANDLER environment variable is non-empty, the
    signal handler for SEGV/ILL/BUS signals (which offers recovery
    user interface) is not set. This allows more reliable debugging
    of crashes that involve the console.
  DEPRECATED AND DEFUNCT:
  * The legacy S-compatibility macros PROBLEM, MESSAGE, ERROR, WARN,
    WARNING, RECOVER, ... are deprecated and will be hidden in R
    4.2.0. R's native interface of Rf_error and Rf_warning has long
    been preferred.
  BUG FIXES:
  * .mapply(F, dots, .) no longer segfaults when dots is not a list
    and uses match.fun(F) as always documented; reported by Andrew
    Simmons in PR#18164.
  * hist(&lt;Date&gt;, ...) and hist(&lt;POSIXt&gt;, ...)  no longer pass
    arguments for rect() (such as col and density) to axis().
    (Thanks to Sebastian Meyer's PR#18171.)
  * \Sexpr{ch} now preserves Encoding(ch). (Thanks to report and
    patch by Jeroen Ooms in PR#18152.)
  * Setting the RNG to "Marsaglia-Multicarry" e.g., by RNGkind(), now
    warns in more places, thanks to Andr'e Gillibert's report and
    patch in PR#18168.
  * gray(numeric(), alpha=1/2) no longer segfaults, fixing PR#18183,
    reported by Till Krenz.
  * Fixed dnbinom(x, size=&lt;very_small&gt;, .., log=TRUE) regression,
    reported by Martin Morgan.
  * as.Date.POSIXlt(x) now keeps names(x), thanks to Davis Vaughan's
    report and patch in PR#18188.
  * model.response() now strips an "AsIs" class typically, thanks to
    Duncan Murdoch's report and other discussants in PR#18190.
  * try() is considerably faster in case of an error and long call,
    as e.g., from some do.call().  Thanks to Alexander Kaever's
    suggestion posted to R-devel.
  * qqline(y = &lt;object&gt;) such as y=I(.), now works, see also
    PR#18190.
  * Non-integer mgp par() settings are now handled correctly in
    axis() and mtext(), thanks to Mikael Jagan and Duncan Murdoch's
    report and suggestion in PR#18194.
  * formatC(x) returns length zero character() now, rather than ""
    when x is of length zero, as documented, thanks to Davis
    Vaughan's post to R-devel.
  * removeSource(fn) now retains (other) attributes(fn).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1647000000">- CHANGES IN R 4.1.3:
  NEW FEATURES:
  * The default version of Bioconductor has been changed to 3.14.
    (This is used by setRepositories and the menus in GUIs.)
  UTILITIES:
  * R CMD check --as-cran has a workaround for a bug in versions of
    file up to at least 5.41 which mis-identify DBF files last
    changed in 2022 as executables.
  C-LEVEL FACILITIES:
  * The legacy S-compatibility macros SINGLE_* in R_ext/Constants.h
    (included by R.h) are deprecated and will be removed in R 4.2.0.
  BUG FIXES:
  * Initialization of self-starting nls() models with initialization
    functions following the pre-R-4.1.0 API (without the ...
    argument) works again for now, with a deprecation warning.
  * Fixed quoting of ~autodetect~ in Java setting defaults to avoid
    inadvertent user lookup due to leading ~, reported in PR#18231 by
    Harold Gutch.
  * substr(., start, stop) &lt;- v now treats _negative_ stop values
    correctly.  Reported with a patch in PR#18228 by Brodie Gaslam.
  * Subscripting an array x without dimnames by a
    length(dim(x))-column character matrix gave "random" non-sense,
    now an error; reported in PR#18244 by Mikael Jagan.
  * ...names() now matches names(list(...)) closely, fixing PR#18247.
  * all.equal(*, scale = s) now works as intended when length(s) &gt; 1,
    partly thanks to Michael Chirico's PR#18272.
  * print(x) for long vectors x now also works for named atomic
    vectors or lists and prints the correct number when reaching the
    getOption("max.print") limit; partly thanks to a report and
    proposal by Hugh Parsonage to the R-devel list.
  * all.equal(&lt;selfStart&gt;, *) no longer signals a deprecation
    warning.
  * reformulate(*, response=r) gives a helpful error message now when
    length(r) &gt; 1, thanks to Bill Dunlap's PR#18281.
  * Modifying globalCallingHandlers inside withCallingHandlers() now
    works or fails correctly, thanks to Henrik Bengtsson's PR#18257.
  * hist(&lt;Date&gt;, breaks = "days") and hist(&lt;POSIXt&gt;, breaks = "secs")
    no longer fail for inputs of length 1.
  * qbeta(.001, .9, .009) and similar cases now converge correctly
    thanks to Ben Bolker's report in PR#17746.
  * window(x, start, end) no longer wrongly signals "'start' cannot
    be after 'end'", fixing PR#17527 and PR#18291.
  * data() now checks that its (rarely used) list argument is a
    character vector - a couple of packages passed other types and
    gave incorrect results.
  * which() now checks its arr.ind argument is TRUE rather coercing
    to logical and taking the first element - which gave incorrect
    results in package code.
  * model.weights() and model.offset() more carefully extract their
    model components, thanks to Ben Bolker and Tim Taylor's R-devel
    post.
  * list.files(recursive = TRUE) now shows all broken symlinks
    (previously, some of them may have been omitted, PR#18296).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1650628800">- CHANGES IN R 4.2.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * The formula method of aggregate() now matches the generic in
    naming its first argument x (resolving PR#18299 by Thomas
    Soeiro).
    This means that calling aggregate() with a formula as a named
    first argument requires name formula in earlier versions of R and
    name x now, so portable code should not name the argument (code
    in many packages did).
  * Calling &amp;&amp; or || with either argument of length greater than one
    now gives a warning (which it is intended will become an error).
  * Calling if() or while() with a condition of length greater than
    one gives an error rather than a warning.  Consequently,
    environment variable _R_CHECK_LENGTH_1_CONDITION_ no longer has
    any effect.
  * Windows users should consult the WINDOWS section below for some
    profound changes including
  * Support for 32-bit builds has been dropped.
  * UTF-8 locales are used where available.
  * The default locations for the R installation and personal
    library folder have been changed.
    Thanks to Tomas Kalibera for months of work on the Windows port
    for this release.
  NEW FEATURES:
  * matrix(x, n, m) now warns in more cases where length(x) differs
    from n * m, as suggested by Abby Spurdle and Wolfgang Huber in
    Feb 2021 on the R-devel mailing list.
    This warning can be turned into an error by setting environment
    variable _R_CHECK_MATRIX_DATA_ to TRUE: R CMD check --as-cran
    does so unless it is already set.
  * Function file_test() in package utils gains tests for symlinks,
    readability and writability.
  * capabilities("libxml") is now false.
    The description of capabilities("http/ftp") now reflects that it
    refers to the default method, no longer the internal one.
  * simplify2array() gains an except argument for controlling the
    exceptions used by sapply().
  * Environment variables R_LIBS_USER and R_LIBS_SITE are both now
    set to the R system default if unset or empty, and can be set to
    NULL to indicate an empty list of user or site library
    directories.
  * The warning for axis()(-like) calls in cases of relatively small
    ranges (typically in log-scale situations) is slightly improved
    _and_ suppressed from explicit calls to .axisPars() as has always
    been the intention.
  * The contrasts setter function `contrasts&lt;-` gains an explicit
    default how.many = NULL rather than just using missing(how.many).
  * grid.pretty() gains a new optional argument n = 5.
  * There is a new function .pretty() with option bounds as a
    technical-utility version of pretty().  It and pretty() gain a
    new argument f.min with a better than back-compatible default.
  * Function grDevices::axisTicks() and related functions such as
    graphics::axis() work better, notably for the log scale; partly
    because of the pretty() improvements, but also because care is
    taken e.g., when ylim is finite but diff(ylim) is infinite.
  * nclass.FD() gains a digits option.
  * The R Mathlib internal C function bd0() (called indirectly from a
    dozen probability density and distribution functions such as
    dpois(), dbinom(), dgamma(), pgamma() _etc_) has been
    complemented by a more sophisticated and (mostly) more accurate C
    function ebd0(), currently called only by internal dpois_raw()
    improving accuracy for R level dpois() and potentially others
    calling it such as dnbinom(), dgamma() or pgamma().  (Thanks to
    Morten Welinder's PR#15628.)
  * write.ftable() gains sep = " " argument as suggested by Thomas
    Soeiro.
  * The names of the locale categories supported by R's
    Sys.getlocale() and Sys.setlocale() are now provided by variable
    .LC.categories in the base namespace.
  * The Date and POSIXt methods for hist() and the histogram method
    for plot() now also use the new default col = "lightgray" in
    consistency with the corresponding change to hist()'s default for
    R 4.0.0.
  * hist.default() gains new fuzz argument, and the histogram plot
    method no longer uses fractional axis ticks when displaying
    counts ("Frequency").
  * mapply() and hence Map() now also obey the "max-or-0-if-any"
    recycling rule, such that, e.g., Map(`+`, 1:3, 1[0]) is valid
    now.
  * as.character(&lt;obj&gt;) for "hexmode" or "octmode" objects now
    fulfils the important basic rule as.character(x)[j] ===
    as.character(x[j]).
  * The set utility functions, notably intersect() have been tweaked
    to be more consistent and symmetric in their two set arguments,
    also preserving a common mode.
  * substr(ch, start,end) &lt;- new now e.g., preserves names(ch); ditto
    for substring(), thanks to a patch from Brodie Gaslam.
  * plot(&lt;lm&gt;) gains a extend.ylim.f argument, in partial response to
    PR#15285; further PR#17784 is fixed thanks to several
    contributors and a patch by Elin Waring.  The Cook's dist
    contours get customizable via cook.col and cook.lty with a
    different default color and their legend is nicer by default and
    customizable via cook.legendChanges.
  * Attempting to subset an object that is not subsettable now
    signals an error of class notSubsettableError. The
    non-subsettable object is contained in the object field of the
    error condition.
  * Subscript-out-of-bounds errors are now signaled as errors of
    class subscriptOutOfBoundsError.
  * Stack-overflow errors are now signaled as errors inheriting from
    class stackOverflowError. See ?stackOverflowError for more
    details.
  * New partly experimental Sys.setLanguage() utility, solving the
    main problem of PR#18055.
  * gettext() and gettextf() get a new option trim = TRUE which when
    set to false allows translations for strings such as "Execution
    halted\n" typical for C code.
  * An experimental implementation of hash tables is now available.
    See ?hashtab for more details.
  * identical() gains a extptr.as.ref argument for requesting that
    external pointer objects be compared as reference objects.
  * reorder() gets an argument decreasing which it passes to sort()
    for level creation; based on the wish and patch by Thomas Soeiro
    in PR#18243.
  * as.vector() gains a data.frame method which returns a simple
    named list, also clearing a long standing 'FIXME' to enable
    as.vector(&lt;data.frame&gt;, mode="list").  This breaks code relying
    on as.vector(&lt;data.frame&gt;) to return the unchanged data frame.
  * legend() is now vectorized for arguments cex, x.intersp, and
    text.width.  The latter can now also be specified as a vector
    (one element for each column of the legend) or as NA for
    computing a proper column wise maximum value of strwidth(legend).
    The argument y.intersp can be specified as a vector with one
    entry for each row of the legend.
    legend() also gains new arguments title.cex and title.font.
    Thanks to Swetlana Herbrandt.
  * Deparsing no longer remaps attribute names dim, dimnames, levels,
    names and tsp to historical S-compatible names (which structure()
    maps back).
  * sample() and sample.int() have additional sanity checks on their
    size and n arguments.
    all.equal.numeric() gains a sanity check on its tolerance
    argument - calling all.equal(a, b, c) for three numeric vectors
    is a surprisingly common error.
    mean(na.rm =), rank(na.last =), barplot(legend.text =),
    boxplot(), contour(drawlabels =), polygon(border =) and
    methods::is(class2 =) have more robust sanity checks on their
    arguments.
    R CMD Rd2pdf (used by R CMD check) has a more robust sanity check
    on the format of \alias{} commands.
  * psigamma(x, deriv) for negative x now also works for deriv = 4
    and 5; their underlying C level dpsifn() is documented in
    'Writing R Extensions'.
  * The HTML help system now uses HTML5 (wish of PR#18149).
  * ks.test() now provides exact p-values also with ties and MC
    p-values in the two-sample (Smirnov) case.  By Torsten Hothorn.
  * ks.test() gains a formula interface, with y ~ 1 for the
    one-sample (Kolmogorov) test and y ~ group for the two-sample
    (Smirnov) test.  Contributed by Torsten Hothorn.
  * The return value from ks.test() now has class c("ks.test",
    "htest") - packages using try() need to take care to use
    inherits() and not == on the class.
  * New functions psmirnov(), qsmirnov() and rsmirnov() in package
    stats implementing the asymptotic and exact distributions of the
    two-sample Smirnov statistic.
  * iconv() now allows sub = "c99" to use C99-style escapes for UTF-8
    inputs which cannot be converted to encoding to.
  * In a forward pipe |&gt; expression it is now possible to use a named
    argument with the placeholder _ in the rhs call to specify where
    the lhs is to be inserted.  The placeholder can only appear once
    on the rhs.
  * The included LAPACK sources have been updated to version 3.10.0,
    except for the four Fortran 77 routines which 3.10.0 has
    re-implemented in Fortran 90 (where the older versions have been
    retained as the R build process does not support Fortran 90).
  * path.expand() and most other uses of tilde expansion now warn if
    a path would be too long if expanded.  (An exception is
    file.exists(), which silently returns false.)
  * trunc(&lt;Date&gt;, *) now supports units = "months" or "years" for
    consistency with the POSIXt method, thanks to Dirk Eddelbuettel's
    proposal in PR#18099.
  * list2DF() now checks that its arguments are of the same length,
    rather than use recycling.
  * The HTML help system has several new features: LaTeX-like math
    can be typeset using either KaTeX or MathJax, usage and example
    code is highlighted using Prism, and for dynamic help the output
    of examples and demos can be shown within the browser if the
    knitr package is installed. These features can be disabled by
    setting the environment variable _R_HELP_ENABLE_ENHANCED_HTML_ to
    a false value.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 15
    and so packages that provide graphics devices should be
    reinstalled.
  * The grid package now allows the user to specify a "vector" of
    pattern fills.  The fill argument to gpar() accepts a list of
    gradients and/or patterns and the functions linearGradient(),
    radialGradient(), and pattern() have a new group argument.
    Points grobs (data symbols) can now also have a pattern fill.
    The grobCoords() function now returns a more informative and
    complex result.
  * The grid package has new functions for drawing isolated groups:
    grid.group(), grid.define(), and grid.use().  These functions add
    compositing operators and affine transformations to R's graphics
    capabilities.
    The grid package also has new functions for stroking and filling
    paths: grid.stroke(), grid.fill(), and grid.fillStroke().
    A new function as.path() allows the user to specify the fill rule
    for a path that is to be used for clipping, stroking, or filling;
    available options are "winding" and "evenodd".  A new function
    as.mask() allows the user to specify the type of a mask;
    available options are "alpha" and "luminance".
    These new features are only supported so far (at most) on the
    Cairo-based graphics devices and on the pdf() device.
  * dev.capabilities() reports on device support for the new
    features.
  * par() now warns about unnamed non-character arguments to prevent
    misuse such as {usr &lt;- par("usr"); par(usr)}.
  INSTALLATION:
  * Facilities for accessing ftp:// sites are no longer tested
    (except _pro tem_ for curlGetHeaders()) as modern browsers have
    removed support.
  * R can now be built with DEFS = -DSTRICT_R_HEADERS .
  PACKAGE INSTALLATION:
  * R CMD INSTALL no longer tangles vignettes. This completes an R
    CMD build change in R 3.0.0 and affects packages built before R
    3.0.2. Such packages should be re-made with R CMD build to have
    the tangled R code of vignettes shipped with the tarball.
  * USE_FC_LEN_T will become the default: this uses the correct
    prototypes for Fortran BLAS/LAPACK routines called from C/C++,
    and requires adjustment of most such calls - see 'Writing R
    Extensions' SS6.6.2.  (This has been supported since R 3.6.2.)
  * Package installation speed for packages installed with
    keep.source has been improved. This resolve the issue reported by
    Ofek Shilon in PR#18236.
  UTILITIES:
  * R CMD check can optionally report files/directories left behind
    in home, /tmp (even though TMPDIR is set) and other directories.
    See the "R Internals" manual for details.
  * R CMD check now reports byte-compilation errors during
    installation.  These are not usually fatal but may result in
    parts of the package not being byte-compiled.
  * _R_CHECK_DEPENDS_ONLY_ can be applied selectively to examples,
    tests and/or vignettes in R CMD check: see the "R Internals"
    manual.
  * _R_CHECK_SRC_MINUS_W_IMPLICIT_ now defaults to true: recent
    versions of Apple clang on macOS have made implicit function
    declarations in C into a compilation error.
  * R CMD check --as-cran makes use of the environment variable
    AUTORECONF.  See the "R Internals" manual SS8 for further details.
  * R CMD check --use-valgrind also uses valgrind when re-building
    vignettes as some non-Sweave vignettes unhelpfully comment out
    all their code when R CMD check runs vignettes.
  * Errors in re-building vignettes (unless there are LaTeX errors)
    are reported by R CMD check as ERROR rather than WARNING when
    running vignettes has been skipped (as it frequently is in CRAN
    checks and by --as-cran).
  * R CMD Rd2pdf gains a --quiet option that is used by R CMD build
    when building the PDF package manual.
  * R CMD Rd2pdf now always runs LaTeX in batch mode, consistent with
    Texinfo &gt;= 6.7. The --batch option is ignored.
  * R CMD build and R CMD check now include the Rd file name and line
    numbers in the error message of an \Sexpr evaluation failure.
  * For packages using the \doi Rd macro (now an install-time \Sexpr)
    but no other dynamic Rd content, R CMD build now produces a
    smaller tarball and is considerably faster - skipping temporary
    package installation.
  C-LEVEL FACILITIES:
  * The non-API header R_ext/R-ftp-http.h is no longer provided, as
    the entry points it covered are now all defunct.
  * A number of non-API declarations and macro definitions have been
    moved from the installed header Rinternals.h to the internal
    header Defn.h. Packages that only use entry points and
    definitions documented to be part of the API as specified in
    'Writing R Extensions' SS6 should not be affected.
  * The macro USE_RINTERNALS no longer has any effect when compiling
    package code.  Packages which also use R_NO_REMAP will need to
    ensure that the remapped names are used for calls to API
    functions that were formerly also made available as macros.
  * The deprecated legacy S-compatibility macros PROBLEM, MESSAGE,
    ERROR, WARN, WARNING, RECOVER, ... are no longer defined in
    R_exts/RS.h (included by R.h).  Replace these by calls to
    Rf_error and Rf_warning (defined in header R_ext/Error.h included
    by R.h).
    Header R_ext/RS.h no longer includes R_ext/Error.h.
  * Header R_ext/Constants.h (included by R.h) when included from C++
    now includes the C++ header cfloat rather than the C header
    float.h (now possible as C++11 is required).
  * The legacy S-compatibility macros DOUBLE_* in R_ext/Constants.h
    (included by R.h) are deprecated.
  * The deprecated S-compatibility macros SINGLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * R_Calloc, R_Free and R_Realloc are preferred to their unprefixed
    forms and error messages now use the prefix. These forms were
    introduced in R 3.4.0 and are available even when
    STRICT_R_HEADERS is defined.
  * rmultinom has been documented in 'Writing R Extensions' SS6 so is
    now part of the R API.
  * Similarly, Rtanpi, called from R level tanpi() is now part of the
    R API.
  * The long-deprecated, undocumented and non-API entry point call_R
    is no longer declared in R_ext/RS.h (included by R.h).
  * The header S.h which has been unsupported since Jan 2016 has been
    removed.  Use R.h instead.
  DEPRECATED AND DEFUNCT:
  * The (non-default and deprecated) method = "internal" for
    download.file() and url() no longer supports http:// nor ftp://
    URIs.  (It is used only for file:// URIs.)
    On Windows, download.file(method = "wininet") no longer supports
    ftp:// URIs.  (It is no longer the default method, which is
    "libcurl" and does.)
    On Windows, the deprecated method = "wininet" now gives a warning
    for http:// and https:// URIs for both download.file() and url().
    (It is no longer the default method.)
  * On Windows, the command-line option --max-mem-size and
    environment variable R_MAX_MEM_SIZE are defunct.  The memory
    allocation limit was important for 32-bit builds, but these are
    no longer supported.
  * default.stringsAsFactors() is now formally deprecated, where that
    was only mentioned on its regular help page, previously.  So it
    now gives a warning if called.
  * unix.time() is defunct now; it had been deprecated since R 3.4.0.
  BUG FIXES:
  * Setting digits = 0 in format(), print.default() (and hence
    typically print()) or options() is again invalid.  Its behaviour
    was platform-dependent, and it is unclear what "zero significant
    digits" should mean (PR#18098).
  * Messages from C code in the cairo section of package grDevices
    are now also offered for translation, thanks to Michael Chirico's
    PR#18123.
  * mean(x) with finite x now is finite also without "long.double"
    capability.
  * R CMD Rd2pdf no longer leaves an empty build directory behind
    when it aborts due to an already existing output file.  (Thanks
    to Sebastian Meyer's PR#18141.)
  * density(x, weights = w, na.rm = TRUE) when anyNA(x) is true, now
    removes weights "in parallel" to x, fixing PR#18151, reported by
    Matthias Gondan.  Additionally, it gets a subdensity option.
  * Conversion of \Sexpr[]{&lt;expR&gt;} to LaTeX or HTML no longer
    produces long blocks of empty lines when &lt;expR&gt; itself contains
    several lines all producing empty output.  Thanks to a report and
    patch by Ivan Krylov posted to R-devel.
  * R CMD build no longer fails if a package vignette uses child
    documents and inst/doc exists.  (Thanks to Sebastian Meyer's
    PR#18156.)
  * When an R documentation ('help' source) file man/foo.Rd in a
    package has \donttest{..} examples with a syntax error, it is now
    signalled as ERROR and with correct line numbers relating to the
  * -Ex.R file, thanks to Duncan Murdoch and Sebastian Meyer's
    reports and patch proposals in PR#17501.
  * Improved determination of the correct translation domain in
    non-base packages, addressing the combination of PR#18092 and
    PR#17998 (#c6) with reports and _augmented_ patch #2904 by
    Suharto Anggono.
    Note that "R-base" is no longer the default domain e.g., for
    top-level calls to gettext(); rather translation needs explicit
    domain = * specification in such cases.
  * identical(attrib.as.set=FALSE) now works correctly with data
    frames with default row names (Thanks to Charlie Gao's PR#18179).
  * txtProgressBar() now enforces a non-zero width for argument char,
    without which no progress can be visible.
  * dimnames(table(d)) is more consistent in the case where d is a
    list with a single component, thanks to Thomas Soeiro's report to
    R-devel.
    Further, table(d1, d2) now gives an error when d1 and d2 are data
    frames as suggested by Thomas in PR#18224.
  * Fix for drawing semi-transparent lines and fills on the native
    Windows graphics device (PR#18219 and PR#16694).  Thanks to Nick
    Ray for helpful diagnosis on Bugzilla.
  * The deparser now wraps sub-expressions such as if(A) ..  with
    parentheses when needed; thanks to Duncan Murdoch's PR#18232 and
    Lionel Henry's patches there.
  * remove.packages() no longer tries to uninstall Priority: base
    packages, thanks to a report and suggestions by Colin Fay in
    PR#18227.
  * win.metafile() now has xpinch and ypinch arguments so that the
    user can override Windows' (potentially wrong) guess at device
    dimensions.
  * x[i] and x[[i]] for non-integer i should now behave in all cases
    as always documented: the index used is equivalent to
    as.integer(i) unless that would overflow where trunc(i) is used
    instead; thanks to Suharto Anggono's report and patch proposals
    in PR#17977.
  * asOneSidedFormula() now associates the resulting formula with the
    global environment rather than the evaluation environment created
    for the call.
  * &lt;bibentry&gt;$name now matches the field name case-insensitively,
    consistent with bibentry() creation and the replacement method.
  * cbind() failed to detect some length mismatches with a mixture of
    time-series and non-time-series inputs.
  * The default LaTeX style file Sweave.sty used by the RweaveLatex
    driver no longer loads the obsolete ae package; thanks to a
    report by Thomas Soeiro in PR#18271.  Furthermore, it now skips
    \usepackage[T1]{fontenc} for engines other than pdfTeX (if
    detected) or if the new [nofontenc] option is used.
  * smooth.spline() now stores its logical cv argument more safely,
    fixing a rare bug when printing, and also stores n.
  * smooth.spline(x,y,*) now computes the cv.crit statistic
    correctly, also when is.unsorted(x), fixing PR#18294.
  * The data.frame method of rbind() now warns when binding
    not-wholly-recycling vectors, by analogy to the default method
    (for matrices).
  * setAs() finds the correct class for name to when multiple
    packages define a class with that name. Thanks to Gabor Csardi
    for the report.
  * Fix for detaching a package when two classes of the same name are
    present in method signatures for the same generic. Thanks to
    Gabor Csardi for the report.
  * match.arg("", c("", "a", "B")) gives a better error message, in
    part from PR#17959, thanks to Elin Waring.
  * R CMD Sweave --clean no longer removes pre-existing files or
    subdirectories (PR#18242).
  * The quartz() device no longer splits polylines into subpaths.
    That has caused narrowly-spaced lines with many points to always
    look solid even when dashed line type was used due to dash phase
    restarts.
  * Deparsing constructs such as quote(1 + `!`(2) + 3) works again as
    before R 3.5.0, thanks to the report and patch in PR#18284 by
    Suharto Anggono.
  * as.list(f) for a factor f now keeps names(f), fixing PR#18309.
  * qbeta(.001, .9, .009) and analogous qf() calls now return a
    correct value instead of NaN or wrongly 1, all with a warning;
    thanks to the report by Ludger Goeminne in PR#18302.
  * plot.lm() failed to produce the plot of residuals vs.  factor
    levels (i.e., which=5 when leverages are constant) for models
    with character predictors (PR#17840).
  * interaction.plot(..., xtick = TRUE) misplaced the x-axis line
    (PR#18305).
  * Not strictly fixing a bug, format()ing and print()ing of
    non-finite Date and POSIXt values NaN and +/-Inf no longer show
    as NA but the respective string, e.g., Inf, for consistency with
    numeric vector's behaviour, fulfilling the wish of PR#18308.
  * R CMD check no longer runs test scripts generated from
    corresponding .Rin files twice and now signals an ERROR if
    processing an .Rin script fails.
  * tools::Rd2txt() used for plain-text help pages now renders \hrefs
    (if tools::Rd2txt_options(showURLs = TRUE)) and \urls with
    percent-encoding and standards-compliant delimiting style (angle
    brackets and no URL: prefix).  \email is now rendered with a
    mailto: prefix.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1655985600">- CHANGES IN R 4.2.1:
  NEW FEATURES:
  * New function utils::findCRANmirror() to find out if a CRAN mirror
    has been selected, otherwise fallback to the main site.  This
    behaves in the same way as tools::CRAN_package_db() and is
    intended for packages wishing to access CRAN for purposes other
    than installing packages.
    The need for this was shown by a day when the main CRAN website
    was offline and a dozen or so packages which had its URL
    hardcoded failed their checks.
  INSTALLATION on a UNIX-ALIKE:
  * The libraries searched for by --with-blas (without a value) now
    include BLIS (after OpenBLAS but before ATLAS).  And on macOS,
    the Accelerate framework (after ATLAS).  (This is patterned after
    the AX_BLAS macro from the Autoconf Archive.)
  * The included LAPACK sources have been updated to 3.10.1.
  UTILITIES:
  * The (full path to) the command tidy to be used for HTML
    validation can be set by environment variable R_TIDYCMD.
  * Setting environment variable _R_CHECK_RD_VALIDATE_RD2HTML_ to a
    false value will override R CMD check --as-cran and turn off HTML
    validation.  This provides a way to circumvent a problematic
    tidy.
    The 2006 version that ships with macOS is always skipped.
  C-LEVEL FACILITIES:
  * The undocumented legacy declarations of Sint, Sfloat, SINT_MAX
    and SINT_MIN in header R.h are deprecated.
  BUG FIXES:
  * fisher.test(d) no longer segfaults for "large" d; fixing PR#18336
    by preventing/detecting an integer overflow reliably.
  * tar(., files=*) now produces correctly the warning about invalid
    uid or gid of files, fixing PR#18344, reported by Martin Morgan.
  * tk_choose.files() with multi = FALSE misbehaved on paths
    containing spaces (PR#18334) (regression introduced in R 4.0.0).
  * sort(x, partial = ind, *) now works correctly notably for the
    non-default na.last = FALSE or TRUE, fixing PR#18335 reported by
    James Edwards.
  * Environment variable _R_CHECK_XREFS_REPOSITORIES_ is only used
    for checking .Rd cross-references in R CMD check (as documented)
    and not for other uses looking for a CRAN mirror.
  * The search for a CRAN mirror when checking packages now uses
    getOption("repos") if that specifies a CRAN mirror, even when it
    does not also specify all three Bioconductor repositories (as was
    previously required).
  * The HTML code generated by tools::Rd2HTML() has been improved to
    pass tidy 5.8.0.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1667217600">- CHANGES IN R 4.2.2:
  NEW FEATURES:
  * tools::Rdiff(useDiff = TRUE) checks for the presence of an
    external diff command and switches to useDiff = FALSE if none is
    found.  This allows R CMD Rdiff to always work.
  * On Windows, environment variable R_LIBCURL_SSL_REVOKE_BEST_EFFORT
    can be used to switch to only 'best-effort' SSL certificate
    revocation checks with the default "libcurl" download method.
    This reduces security, but may be needed for downloads to work
    with MITM proxies (PR#18379).
  * (macOS) The run-time check for libraries from XQuartz for X11 and
    Tcl/Tk no longer uses otool from the Apple Developer Tools
    (PR#18400).
  * The LaTeX style for producing the PDF manuals, Rd.sty, now loads
    the standard amsmath, amsfonts and amssymb packages for greater
    coverage of math commands in the Rd \eqn and \deqn macros.  The
    \mathscr LaTeX command is also provided (via the mathrsfs
    package, if available, or the amsfonts bundle otherwise),
    fulfilling the wish of PR#18398.
  * (Windows) The default format of readClipboard() and
    writeClipboard() has been changed to 13 (CF_UNICODETEXT).
  INSTALLATION on a UNIX-ALIKE:
  * The PDF manuals (if built) can be compacted by the new target
    make compact-pdf (at the top level or in directory doc/manual).
  * There is now configure support for LLVM clang 15 on Linux, which
    defaults to position-independent (PIE) executables whereas
    gfortran does not.
  * Many small changes to ease compilation (and suppress warnings)
    with LLVM clang 15.
  BUG FIXES:
  * Rscript -e would fail if stdin were closed (Reported by Henrik
    Bengtsson.)
  * qt(*, log.p=TRUE) in outer tails no longer produces NaN in its
    final steps, thus fixing PR#18360.
  * tools::Rd2latex() now escapes hashes and ampersands when writing
    URLs, fixing LaTeX errors with such URLs in \tabular.
  * When isGeneric(f, fdef=*) is used with mismatching names, the
    warning is better understandable; reported (with fix) in PR#18370
    by Gabe Becker.
  * poly(x, n) now works again (and is now documented) when x is a
    "Date" or "POSIXct" object, or of another class while fulfilling
    mode(x) == "numeric".  This also enables poly(x, *, raw=TRUE) for
    such variables.  Reported by Michael Chirico to R-devel.
  * write.table(), write.csv() and write.csv2() restore their
    numerical precision (internal equivalent of digits = 15) after an
    interrupt (PR#18384).
  * One can now read also byte FF from a clipboard connection
    (PR#18385).
  * source("") and source(character()) now give more helpful error
    messages.
  * R CMD check --as-cran set _R_CHECK_TIMINGS_ too late to have the
    intended effect.
  * as.POSIXlt(x) now also works with very large dates x, fixing
    PR#18401 reported by Hannes M"uhleisen.
  * Files can now be extracted even from very large zip archives
    (PR#18390, thanks to Martin Jakt).
  * Non-finite objects of class "POSIXlt" are now correctly coerced
    to classes "Date" and "POSIXct"; following up on the extension to
    format() them correctly.
  * Added methods for is.finite(), is.infinite() and is.nan() for
    "POSIXlt" date-time objects.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1678881600">- CHANGES IN R 4.2.3:
  C-LEVEL FACILITIES:
  * The definition of DL_FUNC in R_ext/Rdynload.h has been changed to
    be fully C-compliant.  This means that functions loaded _via_ for
    example R_GetCCallable need to be cast to an appropriate type if
    they have any arguments.
  * .Machine has a new element sizeof.time_t to identify old systems
    with a 32-bit type and hence a limited range of date-times (and
    limited support for dates millions of years from present).
  PACKAGE INSTALLATION:
  * (Windows) The default C++ standard had accidentally been left at
    C++11 when it was changed to C++14 on Unix.
  BUG FIXES:
  * As "POSIXlt" objects may be "partially filled" and their list
    components meant to be recycled, length() now is the length of
    the longest component.
  * as.POSIXlt.Date() could underflow for dates in the far past (more
    than half a million years BCE).
  * as.Date.POSIXlt(x) would return "1970-01-01" instead of NA in R
    4.2.2, e.g., for
    x &lt;- as.POSIXlt(c("2019-01-30","2001-1-1"))
    x$mon &lt;- c(0L, NA); as.Date(x)
  * R CMD check failed to apply enabled _R_CHECK_SUGGESTS_ONLY_ to
    examples and vignettes (regression in R 4.2.0).
  * R CMD check did not re-build vignettes in separate processes by
    default (regression in R 4.2.0).
  * Running examples from HTML documentation now restores previous
    knitr settings and options (PR#18420).
  * Quartz: fonts are now located using Core Graphics API instead of
    deprecated ATS which is no longer supported in the macOS 13 SDK
    (PR#18426).  This also addresses an issue where the currently
    used font in the Quartz device context was not correctly
    retained.
  * (Windows) Math symbols in text drawing functions are again
    rendered correctly (PR#18440).  This fixes a regression in R
    4.2.1 caused by a fix in PR#18382 which uncovered an issue in
    GraphApp due to which the symbol charset was not used with TT
    Symbol font face.
  * (Windows) Installing a package with a src/Makefile.{win,ucrt}
    file includes ~/.R/Makevars.win64 in the search for user
    makevars, as documented in "R Installation and Administration"
    and done for packages with a src/Makevars.{win,ucrt} file.
  * format(&lt;POSIXlt_w/_unbalanced_sec&gt;, "....%OS&lt;n&gt;") with n &gt; 0 no
    longer accidentally uses the unbalanced seconds, thanks to
    Suharto Anggono's report (including patch) in PR#18448.
  * solve.default(a, b) works around issues with some versions of
    LAPACK when a contains NA or NaN values.
  * When UseMethod() cannot dispatch, it no longer segfaults
    producing the error message in case of a long class(), thanks to
    Joris Vankerschaver's report (including patch) in PR#18447.
  * When example(foo, ..) produces graphics on an interactive device
    it needs to open itself, it now leaves devAskNewPage() unchanged
    even when it was FALSE, thus fixing a 14 years old '&lt;FIXME&gt;'.
  * packageDescription() again catches errors from encoding
    conversions. This also fixes broken packageVersion() in C locale
    on systems where iconv does not support transliteration.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1681128000">- add patch to build with libcurl &gt;= 8</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1682078400">- CHANGES IN R 4.3.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Calling &amp;&amp; or || with LHS or (if evaluated) RHS of length greater
    than one is now always an error, with a report of the form
    'length = 4' in coercion to 'logical(1)'
    Environment variable _R_CHECK_LENGTH_1_LOGIC2_ no longer has any
    effect.
  NEW FEATURES:
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.10.1.  (This caused some platform-dependent
    changes to package check output.)  And then to the sources from
    LAPACK version 3.11.0 (with changes only to double complex
    subroutines).
  * The included LAPACK sources have been updated to include the four
    Fortran 90 routines rather than their Fortran 77 predecessors.
    This may give some different signs in SVDs or
    eigendecompositions..  (This completes the transition to LAPACK
    3.10.x begun in R 4.2.0.)
  * The LAPACK sources have been updated to version 3.11.0.  (No new
    subroutines have been added, so this almost entirely bug fixes:
    Those fixes do affect some computations with NaNs, including R's
    NA.)
  * The parser now signals _classed_ errors, notably in case of the
    pipe operator |&gt;.  The error object and message now give line and
    column numbers, mostly as proposed and provided by Duncan Murdoch
    in PR#18328.
  * toeplitz() is now generalized for asymmetric cases, with a
    toeplitz2() variant.
  * xy.coords() and xyz.coords() and consequently, e.g., plot(x,y,
    log = "y") now signal a _classed_ warning about negative values
    of y (where log(.) is NA).  Such a warning can be specifically
    suppressed or caught otherwise.
  * Regular expression functions now check more thoroughly whether
    their inputs are valid strings (in their encoding, e.g. in
    UTF-8).
  * The performance of grep(), sub(), gsub() and strsplit() has been
    improved, particularly with perl = TRUE and fixed = TRUE.  Use of
    useBytes = TRUE for performance reasons should no longer be
    needed and is discouraged: it may lead to incorrect results.
  * apropos() gains an argument dot_internals which is used by the
    completion (help(rcompgen)) engine to also see base internals
    such as .POSIXct().
  * Support in tools::Rdiff() for comparing uncompressed PDF files is
    further reduced - see its help page.
  * qqplot(x, y, ...) gains conf.level and conf.args arguments for
    computing and plotting a confidence band for the treatment
    function transforming the distribution of x into the distribution
    of y (Switzer, 1976, _Biometrika_). Contributed by Torsten
    Hothorn.
  * Performance of package_dependencies() has been improved for cases
    when the number of dependencies is large.
  * Strings newly created by gsub(), sub() and strsplit(), when any
    of the inputs is marked as "bytes", are also marked as "bytes".
    This reduces the risk of creating invalid strings and accidental
    substitution of bytes deemed invalid.
  * Support for readLines(encoding = "bytes") has been added to allow
    processing special text files byte-by-byte, without creating
    invalid strings.
  * iconv(from = "") now takes into account any declared encoding of
    the input elements and uses it in preference to the native
    encoding.  This reduces the risk of accidental creation of
    invalid strings, particularly when different elements of the
    input have different encoding (including "bytes").
  * Package repositories in getOption("repos") are now initialized
    from the repositories file when utils is loaded (if not already
    set, e.g., in .Rprofile).  (From a report and patch proposal by
    Gabriel Becker in PR#18405.)
  * compactPDF() gets a verbose option.
  * type.convert() and hence read.table() get new option tryLogical =
    TRUE with back compatible default.  When set to false, converts
    "F" or "T" columns to character.
  * Added new unit prefixes "R" and "Q" for abbreviating
    (unrealistically large) sizes beyond 10^{27} in standard = "SI",
    thanks to Henrik Bengtsson's PR#18435.
  * as.data.frame()'s default method now also works fine with atomic
    objects inheriting from classes such as "roman", "octmode" and
    "hexmode", such fulfilling the wish of PR#18421, by Benjamin
    Feakins.
  * The as.data.frame.vector() utility now errors for wrong-length
    row.names.  It warned for almost six years, with "Will be an
    error!".
  * sessionInfo() now also contains La_version() and reports codepage
    and timezone when relevant, in both print() and toLatex() methods
    which also get new option tzone for displaying timezone
    information when locale = FALSE.
  * New function R_compiled_by() reports the C and Fortran compilers
    used to build R, if known.
  * predict(&lt;lm&gt;, newdata = *) no longer unnecessarily creates an
    offset of all 0s.
  * solve() for complex inputs now uses argument tol and by default
    checks for 'computational singularity' (as it long has done for
    numeric inputs).
  * predict(&lt;rank-deficient lm&gt;, newdata=*) now obeys a new argument
    rankdeficient, with new default "warnif", warning only if there
    are non-estimable cases in newdata.  Other options include
    rankdeficient = "NA", predicting NA for non-estimable newdata
    cases.  This addresses PR#15072 by Russ Lenth and is based on his
    original proposal and discussions in PR#16158 also by David Firth
    and Elin Waring.  Still somewhat experimental.
  * Rgui console implementation now works better with the NVDA screen
    reader when the full blinking cursor is selected.  The underlying
    improvements in cursor handling may help also other screen
    readers on Windows.
  * The drop-field control in GraphApp can now be left with the TAB
    key and all controls can be navigated in the reverse order using
    the Shift+TAB key, improving accessibility of the Rgui
    configuration editor.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now fully accurate
    (instead of to "only" minimally five digits).
  * demo(error.catching) now also shows off withWarnings() and
    tryCatchWEMs().
  * As an experimental feature the placeholder _ can now also be used
    in the rhs of a forward pipe |&gt; expression as the first argument
    in an extraction call, such as _$coef. More generally, it can be
    used as the head of a chain of extractions, such as _$coef[[2]].
  * Spaces in the environment variable used to choose the R session's
    temporary directory (TMPDIR, TMP and TEMP are tried in turn) are
    now fatal.  (On Windows the 'short path' version of the path is
    tried and used if that does not contain a space.)
  * all.equal.numeric() gets a new optional switch giveErr to return
    the numeric error as attribute.  Relatedly,
    stopifnot(all.equal&lt;some&gt;(a, b, ..)) is as "smart" now, as
    stopifnot(all.equal(....)) has been already, thus allowing
    customized all.equal&lt;Some&gt;() wrappers.
  * R on Windows is now able to work with path names longer than 260
    characters when these are enabled in the system (requires at
    least Windows 10 version 1607).  Packages should be updated to
    work with long paths as well, instead of assuming PATH_MAX to be
    the maximum length.  Custom front-ends and applications embedding
    R need to update their manifests if they wish to allow this
    feature.  See
    &lt;https://blog.r-project.org/2023/03/07/path-length-limit-on-windows&gt;
    for more information.
  * 'Object not found' and 'Missing argument' errors now give a more
    accurate error context. Patch provided by Lionel Henry in
    PR#18241.
  * The @ operator is now an S3 generic. Based on contributions by
    Tomasz Kalinowski in PR#18482.
  * New generic chooseOpsMethod() provides a mechanism for objects to
    resolve cases where two suitable methods are found for an Ops
    Group Generic. This supports experimenting with alternative
    object systems. Based on contributions by Tomasz Kalinowski in
    PR#18484.
  * inherits(x, what) now accepts values other than a simple
    character vector for argument what. A new generic, nameOfClass(),
    is called to resolve the class name from what. This supports
    experimenting with alternative object systems. Based on
    contributions by Tomasz Kalinowski in PR#18485.
  * Detection of BLAS/LAPACK in use (sessionInfo()) with FlexiBLAS
    now reports the current backend.
  * The "data.frame" method for subset() now warns about extraneous
    arguments, typically catching the use of = instead of == in the
    subset expression.
  * Calling a:b when numeric a or b is longer than one may now be
    made into an error by setting environment variable
    _R_CHECK_LENGTH_COLON_ to a true value, along the proposal in
    PR#18419 by Henrik Bengtsson.
  * density(x, weights = *) now warns if automatic bandwidth
    selection happens without using weights; new optional warnWbw may
    suppress the warning.  Prompted by Christoph Dalitz' PR#18490 and
    its discussants.
  * rm(list = *) is faster and more readable thanks to Kevin Ushey's
    PR#18492.
  * The plot.lm() function no longer produces a normal Q-Q plot for
    GLMs. Instead it plots a half-normal Q-Q plot of the absolute
    value of the standardized deviance residuals.
  * The print() method for class "summary.glm" no longer shows
    summary statistics for the deviance residuals by default.  Its
    optional argument show.residuals can be used to show them if
    required.
  * The tapply() function now accepts a data frame as its X argument,
    and allows INDEX to be a formula in that case. by.data.frame()
    similarly allows INDICES to be a formula.
  * The performance of df[j] &lt;- value (including for missing j) and
    write.table(df) has been improved for data frames df with a large
    number of columns.  (Thanks to Gabriel Becker's PR#18500,
    PR#18503 and discussants, prompted by a report from Toby Dylan
    Hocking on the R-devel mailing list.)
  * The matrix multiply operator %*% is now an S3 generic, belonging
    to new group generic matrixOps.  From Tomasz Kalinowski's
    contribution in PR#18483.
  * New function array2DF() to convert arrays to data frames,
    particularly useful for the list arrays created by tapply().
  DATES and TIMES:
  * On platforms where (non-UTC) datetimes before 1902 (or before
    1900 as with system functions on recent macOS) are guessed by
    extrapolating time zones from 1902-2037, there is a warning at
    the first use of extrapolation in a session.  (As all time zones
    post 2037 are extrapolation, we do not warn on those.)
  * (Platforms using --with-internal-tzone, including Windows and by
    default macOS). How years are printed in dates or date-times can
    be controlled by environment variable R_PAD_YEARS_BY_ZERO.  The
    default remains to pad to 4 digits by zeroes, but setting value
    no gives no padding (as used by default by glibc).
  * strftime() tries harder to determine the offset for the "%z"
    format, and succeeds on the mainstream R platforms.
  * strftime() has a limit of 2048 bytes on the string produced -
    attempting to exceed this is an error.  (Previously it silently
    truncated at 255 bytes.)
  * sessionInfo() records (and by default prints) the system time
    zone as part of the locale information.  Also, the source
    (system/internal) of the date-time conversion and printing
    functions.
  * Objects of class "POSIXlt" created in this version of R always
    have 11 components: component zone is always set, and component
    gmtoff is set for times in UTC and usually set on the (almost
    all) platforms which have C-level support, otherwise is NA.
  * There are comprehensive validity checks on the structure of
    objects of class "POSIXlt" when converting (including formatting
    and printing).  (This avoids mis-conversions of hand-crafted
    objects.)
  * There is some support for using the native date-time routines on
    macOS: this is only viable on recent versions (e.g. 12.6 and 13)
    and does get wrong some historical changes (before 1900, during
    WWII).  Use of --with-internal-tzone remains the default.
  * as.POSIXct(&lt;numeric&gt;) and as.POSIXlt(.) (without specifying
    origin) now work.  So does as.Date(&lt;numeric&gt;).
  * as.Date.POSIXct(., tz) now treats several tz values, notably
    "GMT" as equivalent to "UTC", proposed and improved by Michael
    Chirico and Joshua Ulrich in PR#17674.
  * Experimental balancePOSIXlt() utility allows using "ragged" and
    or out-of-range "POSIXlt" objects more correctly, e.g., in
    subsetting and subassignments.  Such objects are now documented.
    More experimentally, a "POSIXlt" object may have an attribute
    "balanced" indicating if it is known to be filled or fully
    balanced.
  * Functions axis.Date() and axis.POSIXct() are rewritten to gain
    better default tick locations and better default formats by using
    prettyDate(). Thanks to Swetlana Herbrandt.
  * The mapping of Windows' names for time zones to IANA's 'Olson'
    names has been updated.  When ICU is available (it is by
    default), it is used to get a mapping for the current region set
    in Windows.  This can be overridden by setting environment
    variable TZ to the desired Olson name - see OlsonNames() for
    those currently available.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 16
    and so packages that provide graphics devices should be
    reinstalled.
  * The grDevices and grid packages have new functions for rendering
    typeset glyphs, primarily: grDevices::glyphInfo() and
    grid::grid.glyph().
    Rendering of typeset glyphs is only supported so far on the
    Cairo-based graphics devices and on the pdf() and quartz()
    devices.
  * The defined behaviour for "clear" and "source" compositing
    operators (via grid::grid.group()) has been changed (to align
    better with simple interpretation of original Porter-Duff
    definitions).
  * Support for gradients, patterns, clipping paths, masks, groups,
    compositing operators, and affine transformations has been added
    to the quartz() device.
  INSTALLATION on a UNIX-ALIKE:
  * A system installation of generic LAPACK 3.10.0 or later will be
    preferred to the version in the R sources.
    configure option --with-lapack=no (equivalently --without-lapack)
    forces compilation of the internal LAPACK sources.
    If --with-lapack is not specified, a system liblapack is looked
    for and used if it reports version 3.10.0 or later and does not
    contain BLAS routines.
    Packages using LAPACK will need to be reinstalled if this changes
    to using an external library.
  * On aarch64 Linux platforms using GCC, configure now defaults to
  - fPIC (instead of -fpic), as desired in PR#18326.
  * configure now checks conversion of datetimes between POSIXlt and
    POSIXct around year 2020.  Failure (which has been seen on
    platforms missing tzdata) is fatal.
  * If configure option --with-valgrind-instrumentation is given
    value 1 or 2, option --with-system-valgrind-headers is now the
    default and ignored (with a warning).  It is highly recommended
    that the system headers are installed alongside valgrind: they
    are part of its packaging on some Linux distributions and
    packaged separately (e.g. in the valgrind-devel RPM) on others.
    configure will give a warning if they are not found.
    The system headers will be required in a future release of R to
    build with valgrind instrumentation.
  * libcurl 8.x is now accepted by configure: despite a change in
    major version number it changes neither API nor ABI.
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools43, an update of the Rtools42 toolchain.  It is
    based on gcc 12 and newer versions of MinGW-W64, binutils and
    libraries.  At this time R-devel can still be built using
    Rtools42 without changes, but when R-devel is installed via the
    installer, it will by default look for Rtools43.
  * Old make targets rsync-extsoft and 32-bit ones that are no longer
    needed have been removed.
  * Default builds (including for packages) no longer select C99.
    Thus the C standard used is the default for the compiler, which
    for the toolchain in Rtools43 is C17.  (This is consistent with
    Unix builds.)
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++17 where
    available (which it is on all currently checked platforms): if
    not C++14 or C++11 is used if available otherwise C++ is not
    supported.
  * USE_FC_LEN_T is the default: this uses the correct
    (compiler-dependent) prototypes for Fortran BLAS/LAPACK routines
    called from C/C++, and requires adjustment of many such calls -
    see 'Writing R Extensions' SS6.6.1.
  * There is initial support for C++23 as several compilers are now
    supporting -std=c++23 or -std=c++2b or similar.  As for C++20,
    there no additional configure checks for C++23 features beyond a
    check that the compiler reports a __cplusplus value greater than
    that in the C++20 standard.  C++ feature tests should be used.
  * There is support for a package to indicate the version of the C
    standard which should be used to compile it, and for the
    installing user to specify this.  In most cases R defaults to the
    C compiler's default standard which is C17 (a `bug-fix' of C11) -
    earlier versions of R or compilers may have defaulted to C99.
    Current options are:
    USE_C17 Use a standard that is at most C17.  The intention is to
    allow legacy packages to still be installed when later C
    standards become the default, including packages using new
    keywords as identifiers or with K&amp;R-style function
    declarations.  This will use C17 if available, falling back
    to C11.
    USE_C90 Use the C90 (aka C89) standard.  (As that standard did
    not require compilers to identify that version, all we can
    verify is that the compiler does not claim to be using a
    later standard.  It may accept C99 features - for example
    clang accepts // to make comments.)
    USE_C99 Use the C99 standard. This should be rarely needed - it
    avoids the few new features of C11/C17 which can be useful if
    a package assumes them if C17 is specified and they are not
    implemented.
    USE_C23 Use C23 (or in future, later).  Compiler/library support
    for C23 is still being implemented, but LLVM clang from
    15.0.0 and the upcoming GCC 13 have quite extensive support.
    These can be specified as part of the SystemRequirements field in
    the package's DESCRIPTION file or _via_ options --use-C17 and so
    on of R CMD INSTALL and R CMD SHLIB.
    For further details see "Writing R Extensions" SS1.2.5.
  * (Windows) A src/Makefile.ucrt or src/Makefile.win file is now
    included after R_HOME/etcR_ARCH/Makeconf and so no longer needs
    to include that file itself.  Installation of a package with such
    a file now uses a site Makevars file in the same way as a package
    with a src/Makevars.win file would.
  * configure is now passed crucial variables such as CC and CFLAGS
    in its environment, as many packages were not setting them (as
    documented in 'Writing R Extensions' SS1.2).
    This has most effect where configure is used to compile parts of
    the package - most often by cmake or libtool which obfuscate the
    actual compile commands used.
    Also used for configure.win and configure.ucrt on Windows.
  FORTRAN FLAGS:
  * The flag -fno-optimize-sibling-calls is no longer forced for
    gfortran 7 and later.  It should no longer be needed now using
    'hidden' character-length arguments when calling BLAS/LAPACK
    routines from C/C++ is the default even for packages.  (Unless
    perhaps packages call Fortran code from C/C++ without using R's
    headers and without allowing for these arguments.)
  C-LEVEL FACILITIES:
  * The deprecated S-compatibility macros DOUBLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * The deprecated legacy typedefs of Sint and Sfloat in header R.h
    are no longer defined, and that header no longer includes header
    limits.h from C nor climits from C++.
  * New macro CAD5R() is provided in Rinternals.h and used in a few
    places in the R sources.
  * ALTREP now supports VECSXP vectors. Contributed by Gabor Csardi
    in PR#17620.
  * The Rcomplex definition (in header R_ext/Complex.h) has been
    extended to prevent possible mis-compilation when interfacing
    with Fortran (PR#18430).  The new definition causes compiler
    warnings with static initializers such as {1, 2}, which can be
    changed to {.r=1, .i=2}.
    Using the new definition from C++ depends on compiler extensions
    supporting C features that have not been incorporated into the
    C++ standards but are available in g++ and clang++: this may
    result in C++ compiler warnings but these have been worked around
    for recent versions of common compilers (GCC, Apple/LLVM clang,
    Intel).
    It is intended to change the inclusion of header R_ext/Complex.h
    by other R headers, so C/C++ code files which make use of
    Rcomplex should include that header explicitly.
  UTILITIES:
  * R CMD check does more checking of package .Rd files, warning
    about invalid email addresses and (some) invalid URIs and noting
    empty \item labels in description lists.
  * R CMD check now also reports problems when reading package news
    in md (file NEWS.md) and (optionally) plain text (file NEWS)
    formats.
  * _R_CHECK_TIMINGS_ defaults to a value from the environment even
    for R CMD check --as-cran; this allows for exceptionally fast or
    slow platforms.
    It now applies to checking PDF and HTML versions of the manuals,
    and 'checking CRAN incoming feasibility'.
  * R CMD check can optionally (but included in --as-cran) check
    whether HTML math rendering _via_ KaTeX works for the package .Rd
    files.
  * Non-interactive debugger invocations can be trapped by setting
    the environment variable _R_CHECK_BROWSER_NONINTERACTIVE_ to a
    true value.  This is enabled by R CMD check --as-cran to detect
    the use of leftover browser() statements in the package.
  * The use of sprintf and vsprintf from C/C++ has been deprecated in
    macOS 13 and is a known security risk.  R CMD check now reports
    (on all platforms) if their use is found in compiled code:
    replace by snprintf or vsnprintf respectively. [*NB:* whether
    such calls get compiled into the package is platform-dependent.]
  * Where recorded at installation, R CMD check reports the C and
    Fortran compilers used to build R.
    It reports the OS in use (if known, as given by osVersion) as
    well as that R was built for.
    It notes if a C++ standard was specified which is older than the
    current default: many packages have used C++11 to mean 'not
    C++98' - as C++11 is the minimum supported since R 4.0.0, that
    specification can probably be removed.
  * R CMD INSTALL reports the compilers (and on macOS, the SDK) used,
    and this is copied to the output of R CMD check.
    Where a C++ standard is specified, it is reported.
  * R CMD check's 'checking compilation flags in Makevars' has been
    relaxed to accept the use of flags such as -std=f2008 in
    PKG_FFLAGS.
  * tools::buildVignettes() has a new argument skip, which is used by
    R CMD check to skip (and note) vignettes with unavailable
    \VignetteDepends (PR#18318).
  * New generic .AtNames() added to enable class-specific completions
    after @. The formerly internal function findMatches() is now
    exported, mainly for use in methods for .DollarNames() and
    .AtNames().
  DEPRECATED AND DEFUNCT:
  * default.stringsAsFactors() is defunct.
  * Calling as.data.frame.&lt;class&gt;() directly (for 12 atomic classes)
    is going to be formally deprecated, currently activated by
    setting the environment variable
    _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ to non-empty, which also
    happens in R CMD check --as-cran.
  BUG FIXES:
  * Hashed environments with sizes less than 5 can now grow.
    (Reported to R-devel by Duncan Garmonsway.)
  * as.character(&lt;Rd&gt;, deparse = TRUE) failed to re-escape curly
    braces in LaTeX-like text.  (Reported by Hadley Wickham in
    PR#18324.)
  * library() now passes its lib.loc argument when requiring Depends
    packages; reported (with fix) in PR#18331 by Mikael Jagan.
  * R CMD Stangle: improved message about 'Output' files.
  * head(x, n) and tail(x, n) now signal an error if n is not
    numeric, instead of incidentally "working" sometimes returning
    all of x.  Reported and discussed by Colin Fay, in PR#18357.
  * The "lm" method for summary() now gives the correct F-statistic
    when the model contains an offset.  Reported in PR#18008.
  * C() and `contrasts&lt;-`() now preserve factor level names when
    given a function object (as opposed a function name which did
    preserve names). Reported in PR#17616.
  * c(a = 1, 2)[[]] no longer matches 2 but rather signals a
    _classed_ error.  Reported and analysed by Davis Vaughan in
    PR#18367, a duplicate of PR#18004, by Jan Meis et al.  For
    consistency, NULL[[]] is also erroneous now.  x[[]] &lt;- v gives an
    error of the same class "MissingSubscriptError".
  * The relist() function of utils now supports NULL elements in the
    skeleton (PR#15854).
  * ordered(levels = *) (missing x) now works analogously to factor(,
    ordered=TRUE); reported (with fix) by Achim Zeileis in PR#18389.
  * User-defined Rd macro definitions can now span multiple lines,
    thanks to a patch from Duncan Murdoch. Previously, the Rd parser
    silently ignored everything after the first line.
  * Plain-text help (tools::Rd2txt()) now preserves an initial blank
    line for text following description list items.
  * tools::Rd2HTML() and tools::Rd2latex() no longer split \arguments
    and \value lists at Rd comments.
  * tools::Rd2latex() now correctly handles optional text outside
    \items of argument lists as well as bracketed text at the
    beginning of sections, e.g., \value{[NULL]}.
  * as.character(&lt;POSIXt&gt;) now behaves more in line with the methods
    for atomic vectors such as numbers, and is no longer influenced
    by options().  Ditto for as.character(&lt;Date&gt;).  The
    as.character() method gets arguments digits and OutDec with
    defaults _not_ depending on options().  Use of as.character(*,
    format = .) now warns.
  * Similarly, the as.character.hexmode() and *.octmode() methods
    also behave as good citizen methods and back compatibility option
    keepStr = TRUE.
  * The as.POSIXlt(&lt;POSIXlt&gt;) and as.POSIXct(&lt;POSIXct&gt;) default
    methods now do obey their tz argument, also in this case.
  * as.POSIXlt(&lt;Date&gt;) now does apply a tz (time zone) argument, as
    does as.POSIXct(); partly suggested by Roland Fuss on the R-devel
    mailing list.
  * as.Date.POSIXlt(x) now also works when the list components are of
    unequal length, aka "partially filled" or "ragged".
  * expand.model.frame() looked up variables in the wrong environment
    when applied to models fitted without data.  Reported in
    PR#18414.
  * time() now (also) uses the ts.eps = getOption("ts.eps") argument
    and thus by default rounds values very close to the start (or
    end) of a year.  Based on a proposal by Andre"i V. Kostyrka on
    R-help.
  * Printing of a factanal() result with just one factor and sort =
    TRUE now works regularly, fixing PR#17863 by Timothy Bates,
    thanks to the 'R Contributors' working group.
  * Printing 0-length objects of class "factor", "roman", "hexmode",
    "octmode", "person", "bibentry", or "citation" now prints
    something better, one of which fixes PR#18422, reported by
    Benjamin Feakins.
  * Sys.timezone() queries timedatectl only if systemd is loaded;
    addressing a report by Jan Gorecki in PR#17421.
  * The formula method of cor.test() had scoping problems when
    environment(formula) was not the calling environment; reported
    with a patch proposal by Mao Kobayashi in PR#18439.
  * attach() of an environment with active bindings now preserves the
    active bindings.  Reported by Kevin Ushey in PR#18425.
  * BLAS detection now works also with system-provided libraries not
    available as regular files.  This fixes detection of the
    Accelerate framework on macOS since Big Sur.  Reported by David
    Novgorodsky.
  * download.file() gives a helpful error message in case of an
    invalid download.file.method option, thanks to Colin Fay's report
    in PR#18455.
  * Sporadic crashes of Rterm when using completion have been fixed.
  * Rprof() is now more reliable.  A livelock in thread
    initialization with too short sampling interval has been fixed on
    macOS.  A deadlock in using the C runtime has been fixed on
    Windows.  A potential deadlock has been prevented on Unix.
  * Cursor placement in Rgui now works even after a fixed-width font
    is selected.
  * Mandatory options (options()) are now set on startup so that
    saving and restoring them always works (PR#18372).
  * Package installation, R CMD INSTALL or install.packages(*), now
    parses each of the &lt;pkg&gt;/R/*.R files individually instead of
    first concatenating and then parse()ing the large resulting file.
    This allows parser or syntax errors to be diagnosed with correct
    file names and line numbers, thanks to Simon Dedman's report and
    Bill Dunlap's patch in PR#17859.
    This _does_ require syntactically self contained R source files
    now, fixing another inadvertent bug.
  * predict.lm(&lt;model with offset&gt;) now finds the offset in the
    correct environment, thanks to Andr'e Gillibert's report and patch
    in PR#18456.
  * getInitial(&lt;formula&gt;) now finds the selfStart model in the
    correct environment.  (Reported by Ivan Krylov in PR#18368.)
  * Fix for possible segfault when using recently-added graphics
    features, such as gradients, clipping paths, masks, and groups
    with pdf(file=NULL).
  * class(m) &lt;- class(m) no longer changes a matrix m by adding a
    class _attribute_.
  * packageDate(pkg) now only warns once if there is no pkg.
  * When ts() creates a multivariate time series, "mts", it also
    inherits from "array" now, and is.mts() is documented _and_
    stricter.
  * Rd2txt() now preserves line breaks of \verb Rd content and from
    duplicated \cr.  The former also fixes the rendering of verbatim
    output from Rd \Sexpr in plain-text help.
  * uniroot(f, interval) should no longer wrongly converge _outside_
    the interval in some cases where abs(f(x)) == Inf for an x at the
    interval boundary, thanks to posts by Ben Bolker and Serguei
    Sokol on R-devel.
  * Vectorized alpha handling in palette functions such as in gray(),
    rainbow(), or hcl.colors() works correctly now, thanks to Achim
    Zeileis' report and patch in PR#18476.
  * Formatting and print()ing of bibentry objects has dropped the
    deprecated citation.bibtex.max argument, such that the bibtex
    argument's default for print.bibentry() depends directly on the
    citation.bibtex.max option, whereas in format.bibentry() the
    option no longer applies.
  * Attempting to use a character string naming a foreign function
    entry point in a foreign function call in a package will now
    signal an error if the packages has called R_forceSymbols to
    specify that symbols must be used.
  * An error in table() could permanently set options(warn=2)
    promoting all subsequent warnings to errors.
  * The sigma() function gave misleading results for binary GLMs.  A
    new method for objects of class "glm" returns the square root of
    the estimate of the dispersion parameter using the same
    calculation as summary.glm().
  * bs() and ns() in the (typical) case of automatic knot
    construction, when some of the supposedly inner knots coincide
    with boundary knots, now moves them inside (with a warning),
    building on PR#18442 by Ben Bolker.
  * R CMD on Windows now skips the site profile with --no-site-file
    and --vanilla even when R_PROFILE is set (PR#18512, from Kevin
    Ushey).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1686916800">- CHANGES IN R 4.3.1:
  C-LEVEL FACILITIES:
  * The C-level API version of R's integrate(), Rdqags() in Applic.h,
    now returns the correct number of integrand evaluations neval,
    fixing PR#18515 reported and diagnosed by Stephen Wade.
  * The C prototypes for LAPACK calls dspgv and dtptrs in
    R_exts/Lapack.h had one too many and one too few character length
    arguments - but this has not caused any known issues. To get the
    corrected prototypes, include
    [#]include &lt;Rconfig.h&gt; // for PR18534fixed
    [#]ifdef PR18534fixed
    [#] define usePR18534fix 1
    [#]endif
    [#]include &lt;R_exts/Lapack.h&gt;
    in your C/C++ code (PR#18534).
  INSTALLATION:
  * Many of the checks of esoteric Internet operations and those
    using unreliable external sites have been moved to a new target
    that is not run by default and primarily intended for the core
    developers.  To run them use
    cd tests; make test-Internet-dev
  BUG FIXES:
  * .S3methods(), typically called from methods(), again marks
    methods from package base as visible.
    Also, the visibility of non-base methods is again determined by
    the method's presence in search().
  * tools::Rdiff() is now more robust against invalid strings, fixing
    installation tests on Windows without Rtools installed
    (PR#18530).
  * Fix (new) bug in hcl.colors(2, *), by Achim Zeileis (PR#18523).
  * head(., &lt;illegal&gt;) and tail(..) now produce more useful "Error in
    ...." error messages, fixing PR#18362.
  * Package code syntax on Windows is checked in UTF-8 when UTF-8 is
    the native encoding.
  * na.contiguous(x) now also returns the first run, when it is at
    the beginning and there is a later one of the same length;
    reported to R-devel, including a fix, by Georgi Boshnakov.
    Further, by default, it modifies only an existing attr(*,"tsp")
    but otherwise no longer sets one.
  * chol(&lt;not pos.def&gt;, pivot = &lt;T|F&gt;) now gives a correct error or
    warning message (depending on pivot), thanks to Mikael Jagan's
    (PR#18541).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1699012800">- CHANGES IN R 4.3.2:
  NEW FEATURES:
  * The default initialization of the "repos" option from the
    repositories file at startup can be skipped by setting
    environment variable R_REPOSITORIES to NULL such that
    getOption("repos") is empty if not set elsewhere.
  * qr.X() is now an implicit S4 generic in methods.
  * iconv(to = "ASCII//TRANSLIT") is emulated using substitution on
    platforms which do not support it (notably Alpine Linux).  This
    should give a human-readable conversion in ASCII on all platforms
    (rather than NA_character_).
  * trans3d() gains options continuous and verbose addressing the
    problem of possible "wrap around" when projecting too long
    curves, as reported by Achim Zeileis in PR#18537.
  * tools::showNonASCII() has been rewritten to work better on macOS
    14 (which has a changed implementation of iconv()).
  * tiff(type = "quartz") (the default on macOS) now warns if
    compression is specified: it continues to be ignored.
  INSTALLATION on a UNIX-ALIKE:
  * There is some support for building with Intel's LLVM-based
    compilers on x86_64 Linux, such as (C) icx, (C++) ipcx and
    (Fortran) ifx from oneAPI 2023.x.y.
  * There is support for using LLVM's flang-new as the Fortran
    compiler from LLVM 16.0.x (preferably 17.0.0 or later).
  UTILITIES:
  * R CMD check reports the use of the Fortran 90 random number
    generator RANDOM_NUMBER() and the subroutines to initialize it.
    'Writing R Extensions' has example code to use R's RNGs from
    Fortran.
  BUG FIXES:
  * substr(x, n, L) &lt;- cc now works (more) correctly for multibyte
    UTF-8 strings x when L &gt; nchar(x), thanks to a report and patch
    by 'Architect 95'.
  * contrib.url(character()) now returns 0-length character() as
    documented, which also avoids spurious warnings from
    available.packages() et al. in the edge case of an empty vector
    of repository URLs.
  * readChar(., 4e8) no longer fails, thanks to Kodi Arfer's report
    (PR#18557).
  * lapply(&lt;list&gt;, as.data.frame) no longer warns falsely for some
    base vector components.
  * Communication between parent and child processes in the multicore
    part of parallel could fail on platforms that do not support an
    arbitrarily large payload in system functions read()/write() on
    pipes (seen on macOS where a restriction to INT_MAX bytes is
    documented, without doing a partial read unlike Linux). The
    payload is now split into 1Gb chunks to avoid that problem.
    (PR#18571)
  * qqplot(x,y, conf.level=.) gives better confidence bounds when
    length(x) != length(y), thanks to Alexander Ploner's report and
    patch proposal (PR#18557).
  * norm(&lt;0-length&gt;, "2") now gives zero instead of an error, as all
    the other norm types, thanks to Mikael Jagan's PR#18542.
  * Build-stage Rd macros \packageAuthor and \packageMaintainer now
    process Authors@R, fixing NA results when the package DESCRIPTION
    omits Author and Maintainer fields.
  * Formatting and printing complex numbers could give things like
    0.1683-0i because of rounding error: -0i is now replaced by +0i.
  * postscript() refused to accept a title comment containing the
    letter "W" (PR#18599).
  * isoreg(c(1,Inf)) signals an error instead of segfaulting, fixing
    PR#18603.
  * tiff(type = "Xlib") was only outputting the last page of
    multi-page plots.
  * tools::latexToUtf8() again knows about \~{n} and other letters
    with tilde, fixing a regression in R 4.3.0, and about \^{i} as an
    alternative to \^{\i} (similarly with other accents).
    Furthermore, LaTeX codes for accented I letters are now correctly
    converted, also fixing related mistakes in
    tools::encoded_text_to_latex().
  * tar(*, tar = "internal") no longer creates out-of-spec tar files
    in the very rare case of user or group names longer than 32
    bytes, fixing PR#17871 with thanks to Ivan Krylov.
  * When using the "internal" timezone datetime code, adding a
    fraction of a second no longer adds one second, fixing PR#16856
    from a patch by Ivan Krylov.
  * tools::checkRd() no longer produces spurious notes about
    "unnecessary braces" from multi-line Rd results of \Sexpr macros.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1709208000">- CHANGES IN R 4.3.3:
  NEW FEATURES:
  * iconv() now fixes up variant encoding names such as "utf8"
    case-insensitively.
  DEPRECATED AND DEFUNCT:
  * The legacy encoding = "MacRoman" is deprecated in pdf() and
    postscript(): support was incomplete in earlier versions of R.
  BUG FIXES:
  * Arguments are now properly forwarded to methods on S4 generics
    with ... in the middle of their formal arguments. This was broken
    for the case when a method introduced an argument but did not
    include ... in its own formals. Thanks to Herv'e Pag`es for the
    report PR#18538.
  * Some invalid file arguments to pictex(), postscript() and xfig()
    opened a file called NA rather than throw an error.  These
    included postscript(NULL) (which some people expected to work
    like pdf(NULL)).
  * Passing filename = NA to svg(), cairo_pdf(), cairo_ps() or the
    Cairo-based bitmap devices opened a file called NA: it now throws
    an error.
  * quartz(file = NA) opened a file called NA, including when used as
    a Quartz-based bitmap device.  It now gives an error.
  * rank(&lt;long vector&gt;) now works, fixing PR#18617, thanks to Ilia
    Kats.
  * seq.int() did not adequately check its length.out argument.
  * match(&lt;POSIXct&gt;, .) is correct again for differing time zones,
    ditto for "POSIXlt", fixing PR#18618 reported by Bastian Klein.
  * drop.terms(*, dropx = &lt;0-length&gt;) now works, fixing PR#18563 as
    proposed by Mikael Jagan.
  * drop.terms(*) keeps + offset(.) terms when it should, PR#18565,
    and drop.terms() no longer makes up a response, PR#18566, fixing
    both bugs thanks to Mikael Jagan.
  * getS3method("t", "test") no longer finds the t.test() function,
    fixing PR#18627.
  * pdf() and postscript() support for the documented Adobe encodings
    "Greek" and "Cyrilllic" was missing (although the corresponding
    Windows' codepages could be used).
  * Computations of glyph metric information for pdf() and
    postscript() did not take into account that transliteration could
    replace one character by two or more (only seen on macOS 14) and
    typically warned that the information was not known.
  * rank(x) no longer overflows during integer addition, when
    computing rank average for largish but not-yet long vector x,
    fixing PR#18630, thanks to Ilia Kats.
  * list.files() on Windows now returns also files with names longer
    that 260 bytes (the Windows limit is 260 characters).
    Previously, some file names particularly with 'East Asian'
    characters were omitted.
  * cov2cor(&lt;0 x 0&gt;) now works, fixing PR#18423 thanks to Mikael
    Jagan and Elin Waring.
  * cov2cor(&lt;negative diagonal&gt;) and similar now give one warning
    instead of two, with better wording, fixing PR#18424 thanks to
    Mikael Jagan.
  * tools:: startDynamicHelp() now ensures port is in proper range,
    fixing PR#18645.
  * pbeta(x, a,b) is correct now for x=0 or 1 in the boundary cases
    where a or b or both are 0, fixing PR#18672 thanks to Michael
    Fay.
  * pmatch(x, table) for large table, also called for data frame row
    selection, dfrm[nm, ], is now interruptible, fixing PR#18656.
  * predict(&lt;rank-deficient lm&gt;, newdata=*) fix computing of nbasis,
    see Russ Lenth's comment 29 in PR#16158.
  * Added a work-around for a bug in macOS 14.3.1 and higher which
    prevents R plots in the Quartz Cocoa device from updating on
    screen.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1713960000">- CHANGES IN R 4.4.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Startup banners, R --version, sessionInfo() and R CMD check no
    longer report (64-bit) as part of the platform as this is almost
    universal - the increasingly rare 32-bit platforms will still
    report (32-bit).
    On Windows, ditto for window titles.
  * is.atomic(NULL) now returns FALSE, as NULL is not an atomic
    vector.  Strict back-compatibility would replace is.atomic(foo)
    by (is.null(foo) || is.atomic(foo)) but should happen only
    sparingly.
  NEW FEATURES:
  * The confint() methods for "glm" and "nls" objects have been
    copied to the stats package.  Previously, they were stubs which
    called versions in package MASS. The MASS namespace is no longer
    loaded if you invoke (say) confint(glmfit).  Further, the "glm"
    method for profile() and the plot() and pairs() methods for class
    "profile" have been copied from MASS to stats.  (profile.nls()
    and plot.profile.nls() were already in stats.)
  * The confint() and profile methods for "glm" objects have gained a
    possibility to do profiling based on the Rao Score statistic in
    addition to the default Likelihood Ratio. This is controlled by a
    new test = argument.
  * The pairs() method for "profile" objects has been extended with a
    which = argument to allow plotting only a subset of the
    parameters.
  * The "glm" method for anova() computes test statistics and
    p-values by default, using a chi-squared test or an F test
    depending on whether the dispersion is fixed or free.  Test
    statistics can be suppressed by giving argument test a false
    logical value.
  * In setRepositories() the repositories can be set using their
    names via name = instead of index ind =.
  * methods() and .S3methods() gain a all.names option for the (rare)
    case where functions starting with a . should be included.
  * Serializations can now be interrupted (e.g., by Ctrl-C on a
    Unix-alike) if they take too long, e.g., from save.image(),
    thanks to suggestions by Ivan Krylov and others on R-devel.
  * New startup option --max-connections to set the maximum number of
    simultaneous connections for the session.  Defaults to 128 as
    before: allowed values up to 4096 (but resource limits may in
    practice restrict to smaller values).
  * R on Windows (since Windows 10 2004) now uses the new Segment
    Heap allocator. This may improve performance of some
    memory-intensive applications.
  * When R packages are built, typically by R CMD build &lt;pkg&gt;, the
    new --user=&lt;build_user&gt; option overrides the (internally
    determined) user name, currently Sys.info()["user"] or LOGNAME.
    This is a (modified) fulfillment of Will Landau's suggestion in
    PR#17530.
  * tools::testInstalledBasic() gets new optional arguments outDir
    and testSrcdir, e.g., allowing to use it in a &lt;builddir&gt; !=
    &lt;srcdir&gt; setup, and in standard "binary" Windows installation
  * if* a source tests/ folder is present.
  * range(&lt;DT_with_Inf&gt;, finite = TRUE) now work for objects of class
    "Date", "POSIXct", and "POSIXlt" with infinite entries,
    analogously to range.default(), as proposed by Davis Vaughan on
    R-devel.  Other range()-methods can make use of new function
    .rangeNum().
  * New .internalGenerics object complementing .S3PrimitiveGenerics,
    for documentation and low-level book-keeping.
  * grid() now invisibly returns the x- and y- coordinates at which
    the grid-lines were drawn.
  * norm(., type) now also works for complex matrices.
  * kappa(., exact = TRUE, norm = *) now works for all norms and also
    for complex matrices.  In symmetric / triangular cases, the new
    argument uplo = "U" | "L" allows the upper or lower triangular
    part to be specified.
  * memDecompress(type = "unknown") recognizes compression in the
    default 'zlib' format as used by memCompress(type = "gzip").
  * memCompress() and memDecompress() will use the libdeflate library
    (&lt;https://github.com/ebiggers/libdeflate&gt;) if installed.  This
    uses the same type of compression for type = "gzip" but is 1.5-2x
    faster than the system libz library on some common platforms: the
    speed-up may depend on the library version.
  * diff() for objects of class "Date", "POSIXct", and "POSIXlt"
    accepts a units argument passed via ....
  * Dynamic help now does a much better job of rendering package
    DESCRIPTION metadata.
  * Rprof() gains an event argument and support for elapsed (real)
    time profiling on Unix (PR#18076).
  * filled.contour() gains a key.border argument.
  * tools::update_pkg_po() gets arguments pot_make and mo_make for
    _not_ re-making the corresponding files, and additionally a
    verbose argument.
  * Hexadecimal string colour specifications are now accepted in
    short form, so, for example, we can use "#123", which is
    equivalent to "#112233".
    Thanks to MikeFC for the original idea and Ella Kaye, Malcolm
    Barrett, George Stagg, and Hanne Oberman for the patch.
  * Plain-text help shows \var markup by angle brackets.
  * The new experimental primitive function declare() is intended to
    eventually allow information about R code to be communicated to
    the interpreter, compiler, and code analysis tools. The syntax
    for declarations is still being developed.
  * Functions psmirnov(), qsmirnov() and rsmirnov() in package stats
    have had argument two.sided renamed to alternative, to take into
    account that the permutation distributions of the one-sided
    statistics can be different in the case of ties.  Consequence of
    PR#18582.
  * sort() is now an implicit S4 generic in methods.
  * Formatting and printing, format(z), print(z), of complex vectors
    z no longer zap relatively small real or imaginary parts to zero,
    fixing PR#16752.  This is an API change, as it was documented
    previously to round real and imaginary parts together on purpose,
    producing nicer looking output.  As mentioned, e.g. in the PR,
    this change is compatible with many other "R-like" programming
    environments.
    We have simplified the internal code and now basically format the
    real and imaginary parts independently of each other.
  * New experimental functions Tailcall() and Exec() to support
    writing stack-space-efficient recursive functions.
  * Where characters are attempted to be plotted by pdf(),
    postscript() and xfig() which are not in the selected 8-bit
    character set (most often Latin-1) and the R session is using a
    UTF-8 locale, the warning messages will show the UTF-8 character
    rather than its bytes and one dot will be substituted per
    character rather than per byte.  (Platforms whose iconv() does
    transliteration silently plot the transliteration.)
    In a UTF-8 locale some transliterations are now done with a
    warning (e.g., dashes and Unicode minus to hyphen, ligatures are
    expanded, permille (‰) is replaced by o/oo), although the OS may
    have got there first.  These are warnings as they will continue
    to be replaced by dots in earlier versions of R.
  * The matrix multiplication functions crossprod() and tcrossprod()
    are now also primitive and S3 generic, as %*% had become in R
    4.3.0.
  * source() and example() have a new optional argument catch.aborts
    which allows continued evaluation of the R code after an error.
  * The non-Quartz tiff() devices allow additional types of
    compression if supported by the platform's libtiff library.
  * The list of base and recommended package names is now provided by
    tools::standard_package_names().
  * cairo_pdf() and cairo_ps() default to onefile = TRUE to closer
    match pdf() and postscript().
  * New option catch.script.errors provides a documented way to catch
    errors and then continue in non-interactive use.
  * L %||% R newly in base is an expressive idiom for the phrases
    if(!is.null(L)) L else R or if(is.null(L)) R else L.
  * The return value from warnings() now always inherits from
    "warnings" as documented, now also in the case of no warnings
    where it previously returned NULL.
  * as.complex("1i") now returns 0 + 1i instead of NA with a warning.
  * z &lt;- c(NA, 1i) now keeps the imaginary part Im(z[1]) == 0, no
    longer coercing to NA_complex_.  Similarly, cumsum(z) correctly
    sums real and imaginary parts separately, i.e., without
    "crosstalk" in case of NAs.
  * On Alpine Linux iconv() now maps "latin2", "latin-2", "latin9"
    and "latin-9" to encoding names the OS knows about
    (case-insensitively).
  * iconv(sub = "Unicode") now always zero-pads to four (hex) digits,
    rather than to 4 or 8.  (This seems to have become the convention
    once Unicode restricted the number of Unicode points to 2^21 - 1
    and so will never need more than 6 digits.)
  * NCOL(NULL) now returns 0 instead of 1, for consistency with
    cbind().
  * The information for the Euro glyph missing from the Adobe .afm
    files for the Courier, Helvetica and Times families has been
    copied from their URW equivalents - this will improve vertical
    centring in the pdf() and postscript() devices.
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.12.0.  The changes are almost entirely cosmetic.
  * The included LAPACK sources have been updated to version 3.12.0
    and some further double-complex routines added.
  * There are new font families for the 2014--5 URW 2.0 fonts (see
    ?pdf) which are included in recent versions of Ghostscript.
    These have font widths for most Greek glyphs and a few others
    which were missing from the original versions (whose font
    families remain available for reproducibility, although
    Ghostscript-based viewers will render using the 2.0 versions).
  * Improve the large-n efficiency of as.matrix(&lt;dist&gt;), thanks an R
    contributors effort, notably by Tim Taylor and Heather Turner,
    see PR#18660.
  * The default and numeric methods of all.equal() get a check.class
    option.
  * zapsmall() gets new optional arguments, function mFUN and min.d,
    for extra flexibility; fulfills a wish in PR#18199.  Also, it is
    now an implicit S4 generic in package methods.
  * The Rd filter for aspell() gains an ignore argument.
  * New generic function sort_by(), primarily useful for the
    data.frame method which can be used to sort rows of a data frame
    by one or more columns.
  * The icence headers for the RPC code in src/extra/xdr have been
    updated to use the GPL-compatible licence published by Oracle
    America in 2010.
  * New function pkg2HTML() in tools to create single-page HTML
    reference manuals for R packages.
  * The byte code evaluator now uses less C stack space for recursive
    calls to byte-compiled functions. It also makes more of an effort
    to avoid allocations for scalar return values.
  * New completion option backtick (disabled by default) allows
    non-syntactic completions to be wrapped in backquotes. This is
    currently only useful for Jupyter notebooks via the IRkernel
    package, and may cause problems for other backends.
  INSTALLATION:
  * The parser has been updated to work with bison 3.8.2, which is
    now used for the pre-generated parsers in gram.c, file.c, and
    gramRd.c. A few parser error messages have changed, which may
    affect code that relies on exact messages.
  INSTALLATION on a UNIX-ALIKE:
  * System valgrind headers are now required to use configure option
  - -with-valgrind-instrumentation with value 1 or 2.
  * configure will warn if it encounters a 32-bit build, as that is
    nowadays almost untested.
  * Environment variable R_SYSTEM_ABI is no longer used and so no
    longer recorded in etc/Renviron (it was not on Windows and was
    only ever used when preparing package tools).
  * If the libdeflate library and headers are available, libdeflate
    rather than libz is used to (de)compress R objects in lazy-load
    databases.  Typically tasks spend up to 5% of their time on such
    operations, although creating lazy-data databases is one of the
    exceptions.
    This can be suppressed if the library is available by the
    configure option --without-libdeflate-compression.
  * configure option --enable-lto=check has not worked reliably since
    2019 and has been removed.
  * The minimum autoconf requirement for a maintainer build has been
    increased to autoconf 2.71.
    It is intended to increase this to 2.72 for R 4.5.0: the
    distributed configure file was generated using 2.72.
  * The minimum version requirement for an external LAPACK has been
    reduced to 3.9.0.
  * No default C++ compiler is set if no C++17 compiler is detected:
    there is no longer an automatic fallback to C++14 or C++11.
    Compilers from the last five years should have sufficient
    support: for others macros CXX and CXXSTD can be set in file
    config.site to provide a fallback if needed.
    The Objective-C++ compiler now by default uses the standard
    selected by R for C++ (currently C++17) rather than the default
    standard for the C++ compiler (which on macOS is still C++98).
  INSTALLATION on macOS:
  * A new configure option --with-newAccelerate makes use of Apple's
    'new' BLAS / LAPACK interfaces in their Accelerate framework.
    Those interfaces are only available in macOS 13.3 or later, and
    building requires SDK 13.3 or later (from the Command Line Tools
    or Xcode 14.3 or later).
    By default the option uses new Accelerate for BLAS calls: to also
    use it for LAPACK use option --with-newAccelerate=lapack.  The
    later interfaces provide LAPACK 3.9.1 rather than 3.2.1: 3.9.1 is
    from 2021-04 and does not include the improved algorithms
    introduced in LAPACK 3.10.0 (including for BLAS calls).
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools44, an update of the Rtools43 toolchain.  It is
    based on GCC 13 and newer versions of MinGW-W64, binutils and
    libraries (targeting 64-bit Intel CPUs).  R-devel can no longer
    be built using Rtools43 without changes.
  * Rtools44 has experimental support for 64-bit ARM (aarch64) CPUs
    _via_ the LLVM 17 toolchain using lld, clang/flang-new and
    libc++.
  UTILITIES:
  * R CMD check notes when S4-style exports are used without
    declaring a strong dependence on package methods.
  * tools::checkRd() (used by R CMD check) detects more problems with
    \Sexpr-based dynamic content, including bad nesting of \Sexprs
    and invalid arguments.
  * tools::checkRd() now reports Rd titles and section names ending
    in a period; this is ignored by R CMD check unless environment
    variable _R_CHECK_RD_CHECKRD_MINLEVEL_ is set to -5 or smaller.
  * R CMD check now notes Rd files without an \alias, as long
    documented in 'Writing R Extensions' §1.3.1.  The check for a
    missing \description has been moved from tools::checkRd() to
    tools::checkRdContents().
  * R CMD check now visits inst/NEWS.Rd and OS-specific man
    subdirectories when checking Rd files.
  * tools::checkDocFiles() and tools::checkRdContents() now also
    check internal Rd files by default, but "specially" (ignoring
    missing documentation of arguments).
  * R CMD Rdiff gets option --useEx.
  * R CMD check now warns on non-portable uses of Fortran KIND such
    as INTEGER(KIND=4) and REAL(KIND=8).
    To see the failing lines set environment variable
    _R_CHECK_FORTRAN_KIND_DETAILS_ to a true value.
  * When checking Rd files, R CMD check now notes some of the "lost
    braces" that tools::checkRd() finds.  Typical problems are Rd
    macros missing the initial backslash (e.g., code{...}), in-text
    set notation (e.g., {1, 2}, where the braces need escaping), and
    \itemize lists with \describe-style entries of the form
    \item{label}{description}.
  * R CMD INSTALL (and hence check) will compile C++ code with
  - DR_NO_REMAP if environment variable _R_CXX_USE_NO_REMAP_ is set
    to a true value.  It is planned that this will in future become
    the default for compiling C++.
  * The new built-in Rd macro \dontdiff{} can be used to mark example
    code whose output should be ignored when comparing check output
    to reference output (tests/Examples/&lt;pkg&gt;-Ex.Rout.save).  The
    \dontdiff tag, like \donttest, is _not_ shown on the rendered
    help page, so provides a clean alternative to ##
    IGNORE_RDIFF_(BEGIN|END) comments.
  * R CMD build when there is no NAMESPACE, now uses the recommended
    exportPattern("^[^.]"), instead of exporting everything.
  * R CMD check now warns about non-ASCII characters in the NAMESPACE
    file (in addition to R files). Such packages are not portable and
    may fail to install on some platforms.
  C-LEVEL FACILITIES:
  * Headers R_ext/Applic.h and R-ext/Linpack.h used to include
    R_ext/BLAS.h although this was undocumented and unneeded by their
    documented entry points.  They no longer do so.
  * New function R_missing(), factored out from do_missing(), used to
    fix PR#18579.
  * SEXP type S4SXP has been renamed to OBJSXP to support
    experimenting with alternative object systems.  The S4SXP value
    can still be used in C code but is now deprecated.  Based on
    contributions from the R Consortium's Object-Oriented Programming
    Working Group.
  * New function pow1p(x,y) for accurate (1+x)^y.
  * mkCharLenCE was incorrectly documented to take a size_t length
    but was implemented with int (and character strings in R are
    limited to 2^31 - 1 bytes).
  DEPRECATED AND DEFUNCT:
  * data() no longer handles zipped data from long-defunct (since R
    2.13.0) --use-zip-data installations.
  * The legacy graphics devices pictex() and xfig() are now
    deprecated.  They do not support recent graphics enhancements and
    their font handling is rudimentary. The intention is to retain
    them for historical interest as long as they remain somewhat
    functional.
  * Support for encoding = "MacRoman" has been removed from the pdf()
    and postscript() devices - this was a legacy encoding supporting
    classic macOS up to 2001 and no longer has universal libiconv
    support.
  * is.R() is deprecated as no other S dialect is known to be in use
    (and this could only identify historical dialects, not future
    ones).
    Further information on calls can be obtained by setting the
    environment variable _R_DEPRECATED_IS_R_ to error which turns the
    deprecation warning into an error and so by default gives a
    traceback.  (This is done by R CMD check --as-cran.)
  * UseMethod() no longer forwards local variables assigned in the
    generic function into method call environments before evaluating
    the method body. This makes method calls behave more like
    standard function calls and makes method code easier to analyze
    correctly.
  * The twelve as.data.frame.&lt;class&gt;() methods which were deprecated
    only via _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ and in R CMD
    check --as-cran are formally deprecated now in favour of calling
    as.data.frame() or as.data.frame.vector().  The deprecation
    "check" now works also when as.data.frame() is S4 generic thanks
    to Ivan Krylov.
  * The default method for the directional comparison operators &lt;, &gt;,
    &lt;=, and &gt;= now signals an error when one of the operands is a
    language object, i.e. a symbol or a call.
  * For terms.formula(), deprecate abb and neg.out arguments
    _formally_ in addition to just documenting it.
  BUG FIXES:
  * The methods package is more robust to not being attached to the
    search path.  More work needs to be done.
  * pairwise.t.test() misbehaved when subgroups had 0 DF for
    variance, even with pool.sd = TRUE.  (PR#18594 by Jack Berry).
  * Probability distribution functions [dpq]&lt;distrib&gt;(x, *), but also
    bessel[IKJY](x, .) now consistently preserve attributes(x) when
    length(x) == 0, e.g., for a 2 x 0 matrix, thanks to Karolis
    Koncevičius' report PR#18509.
  * Group "Summary" computations such as sum(1:3, 4, na.rm = 5, NA,
    7, na.rm = LL) now give an error instead of either 17 or NN for
    LL true or false, as proposed by Ivan Krylov on the R-devel
    mailing list.  (This also means it is now an error to specify
    na.rm more than once.)
  * as.complex(x) now returns complex(real = x, imaginary = 0) for
    _all_ numerical and logical x, notably also for NA or
    NA_integer_.
  * Directories are now omitted by file.copy(, recursive = FALSE) and
    in file.append() (PR#17337).
  * gsub() and sub() are now more robust to integer overflow when
    reporting errors caused by too large input strings (PR#18346).
  * Top-level handlers are now more robust to attempts to remove a
    handler whilst handlers are running (PR#18508).
  * The handling of Alt+F4 in dialogs created on Windows using
    GraphApp has been fixed (PR#13870).
  * density() more consistently computes grid values for the
    FFT-based convolution, following Robert Schlicht's analysis and
    proposal in PR#18337, correcting density values typically by a
    factor of about 0.999.  Argument old.coords = TRUE provides back
    compatibility.
  * palette.colors() gains a name argument that defaults to FALSE
    controlling whether the vector of colours that is returned has
    names (where possible).  PR#18529.
  * tools::xgettext() no longer extracts the (non-translatable) class
    names from warningCondition and errorCondition calls.
  * S3method(&lt;gen&gt;, &lt;class&gt;, &lt;func&gt;) in the NAMESPACE file now works
    (again) when &lt;func&gt; is visible from the namespace, e.g.,
    imported, or in base.
  * getParseData(f) now also works for a function defined in the
    first of several &lt;pkg&gt;/R/*.R source files, thanks to Kirill
    Müller's report and Duncan Murdoch's patch in PR#16756.
  * Rd \Sexpr macros with nested #ifdef conditionals were not
    processed.
  * A non-blocking connection with non-default encoding (such as a
    socket) now correctly returns from readLines() after new data has
    arrived also when its EOF had been reached previously.  Thanks to
    Peter Meilstrup's report on R-devel and Ivan Krylov's report and
    patch proposal in PR#18555.
  * tools::checkRdContents() failed to detect empty argument
    descriptions when they spanned multiple lines, including those
    generated by prompt().  These cases are now noted by R CMD check.
  * Plain-text help no longer outputs spurious colons in the
    arguments list (for multi-line \item labels in the Rd source).
  * kappa() and rcond() work correctly in more cases; kappa(., norm =
    "2") now warns that it computes the 1-norm with (default) exact =
    FALSE; prompted by Mikael Jagan's quite comprehensive PR#18543.
  * Rd skeletons generated by prompt() or promptData() now use a
    dummy title (so R CMD build works).  tools::checkRdContents() has
    been updated to detect such template leftovers, including from
    promptPackage().
  * When S4 method dispatch fails because no method was found, the
    error message now includes the signature argument names; thanks
    to Michael Chirico's proposal on the R-devel list.
  * withAutoprint({ .. }) now preserves srcrefs previously lost,
    thanks to Andrew Simmons' report plus fix in PR#18572.
  * transform.data.frame() no longer adjusts names; in particular,
    untransformed variables are kept as-is, including those with
    syntactically invalid names (PR#17890).
  * The keep.source option for Rd \Sexpr blocks is no longer ignored.
  * The formula methods for t.test() and wilcox.test() now catch when
    paired is passed, addressing PR#14359; use Pair(x1, x2) ~ 1 for a
    paired test.
  * The level reported in the browser prompt was often too large. It
    now shows the number of browser contexts on the stack.
  * For cbind() and rbind(), the optional deparse.level argument is
    now properly passed to methods, thanks to Mikael Jagan's PR#18579
    and comments there.
  * Some error and warning messages for large ('long vector')
    matrix(v, nr, nc) and dim(m) &lt;- d are now correct about sizes,
    using long long formatting, fixing PR#18612 (and more) reported
    by Mikael Jagan.
  * readChar(useBytes = TRUE) now terminates strings even when the
    underlying connection uses extra spaces in the input buffer.
    This fixes problems with extra garbage seen with gzip
    connections, PR#18605.
  * Named capture in PCRE regular expressions now works also with
    more than 127 named groups (PR#18588).
  * Datetime functions are now robust against long jumps when dealing
    with internal time zone changes.  This avoids confusing warnings
    about an invalid time zone, previously triggered by turning
    warnings into errors or handling them via tryCatch (PR#17966,
    PR#17780).
  * Datetime functions now restore even an empty TZ environment
    variable after internal time zone changes (PR#17724).  This makes
    results of datetime functions with this (typically unintentional)
    setting more predictable.
  * drop.terms(*) now drops response as by default, keep.response =
    FALSE, fixing PR#18564 thanks to Mikael Jagan.
  * dummy.coef(.) now also works for lm()-models with character
    categorical predictor variables rather than factor ones, fixing
    PR#18635 reported by Jinsong Zhao.
  * formals(f) &lt;- formals(f) now also works for a function w/o
    arguments and atomic _constant_ body(f).
  * Correct as.function(&lt;invalid list&gt;, .)'s error message.
  * removeSource() is yet more thorough in finding and removing
    "srcref" and the other source references from parsed R language
    chunks, fixing PR#18638 thanks to Andrew Simmons.
  * dgeom() is more accurate now, notably when its result is very
    small, fixing PR#18642 thanks to the proposal of Morten Welinder,
    also improving other instances where C level binom_raw(x, n, ..)
    has x == 0 or x== n.
  * warning() with options(warn = 1) has improved output for
    multi-line messages.
  * axis.Date() and axis.POSIXct() now respect the par("lab") setting
    for the number of pretty() intervals.
  * Comparisons for language objects (which are based on deparsing)
    are now more careful about using accurate deparsed results
    (PR#18676).
  * Plain-text help (Rd2txt) now correctly preserves blank lines
    following single-line \dontrun code.
  * &lt;POSIXlt&gt;[*] no longer sets wrong "balanced" attribute, fixing
    PR#18681 thanks to Mikael Jagan.
  * str(&lt;classed-call&gt;) now deparses the call as expected, fixing
    PR#18684, reported by Dave Slager.
  * In Rd examples, code following the closing brace of a \dontrun,
    \dontshow or \donttest tag on the same line is no longer skipped
    when R CMD check runs the examples.
  * as.data.frame(matrix(*, ncol=0)) now gets valid names() and
    colnames(); reported by Davis Vaughan on the R-devel list.
  * Internal Mathlib function stirlerr(n) is now almost fully
    (52-bit) accurate for all n &gt;= ~5.9 and more accurate also in the
    range 1 -- 5.9.  This entails small ("after 12th decimal")
    changes in density functions, e.g., dgamma() in _some_ regions of
    their support.  The fix was partly prompted by Morten Welinder's
    PR#18640.
  * Numbers like 9876543.2 are now considered non-integer by Mathlib
    internal R_nonint(), amending original fix of PR#15734.
  * Rd comment lines no longer cause broken paragraphs in the
    rendered PDF and plain-text help. In code blocks, pure comment
    lines (starting with %) no longer produce an empty line.
  * xtabs(Freq ~ .) now consistently defaults to na.action = na.pass,
    using na.rm = FALSE (added as an argument) when summing over Freq
    (PR#17770).
  * tools::testInstalledPackage() is no longer silent about failures
    from running examples or tests and its return code no longer
    ignores failures from checking vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1718366400">- CHANGES IN R 4.4.1:
  C-LEVEL FACILITIES:
  * Functions R_atof and R_strtod declared in header R_ext/Utils.h
    are now documented in 'Writing R Extensions' and so formally part
    of the API.
  * The non-API entry points Rf_setSVector, Rf_StringFalse,
    Rf_StringTrue and Rf_isBlankString have been added to those
    reported by R CMD check.
  * The new function Rf_allocLang is now available. This provides an
    alternative to the idiom of calling Rf_allocList followed by
    SET_TYPEOF.
  UTILITIES:
  * R CMD check now reports as warnings what gfortran calls 'Fortran
    2018 deleted features', all of which have long been marked as
    'obsolescent' and some of which were deleted in Fortran 2008 or
    earlier.  Fortran compilers are no longer required to support
    these.
  BUG FIXES:
  * as.numeric(), scan(), type.convert() and other places which use
    the internal C function R_strtod now require a _non-empty_ digit
    sequence in a decimal or binary exponent.  This aligns with the
    C/POSIX standard for strtod and with ?NumericConstants.
  * as.data.frame(m, make.names=NA) now works correctly for a matrix
    m with NA's in row names.
  * The error message from &lt;POSIXlt&gt;[["hour"]] and similar now
    mentions *[[, "hour"]], as wished for in PR#17409 and proposed by
    Michael Chirico.
  * qbinom() and potentially qpois(), qnbinom(), no longer sometimes
    fail accurate inversion (of pbinom(), etc), thanks to Christopher
    Chang's report and patch in PR#18711.
  * The internal help server on Windows can again serve requests sent
    in quick succession, fixing a regression in R 4.4.0.
  * debugcall(&lt;S3Generic&gt;()) now also works when a corresponding
    S4-generic version is in the methods cache (PR#18143).
  * Package tools' toTitleCase(ch0) now returns character(0) when ch0
    is of zero length; fixing PR#18724, reported by David Hugh Jones.
  * R CMD check is no longer broken (without a check result and no
    explanation in 00check.log) for a package which declares an
    invalid VignetteBuilder in DESCRIPTION but has no vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1730376000">- CHANGES IN R 4.4.2:
  C-LEVEL FACILITIES:
  * The S-compatibility macros F77_COM and F77_COMDECL defined in
    header R_ext/RS.h are deprecated and will be removed shortly.  We
    could find no record of their use.
  BUG FIXES:
  * Mathlib function lgammacor(x) no longer warns about underflow to
    zero for large x.
  * Text widths and heights were incorrectly reported by the Quartz
    device if the drawing context didn't exist yet (typically when
    drawing off-screen to a window that is yet to appear, see
    PR#18591).
  * The Quartz device could segfault in cases where paths with spaces
    are used in the new glyph drawing API.  Thanks to Tomek
    Gieorgijewski (PR#18758).
  * On macOS in R CRAN builds, it is again possible to read
    little-endian UTF-16 text with a BOM from a connection using
    encoding="UTF-16".  Users building R from source should avoid
    using the system libiconv in macOS 14.1 and later.
  * methods' internal .requirePackage() now re-enables primitive
    method dispatch when needed; thanks to Ivan Krylov for
    demystifying CRAN package check failures on the R-devel mailing
    list.</changelog>
</package>
<package pkgid="24ef9689eabc53eac372aa19511daffd1e6c71b625aceb508a77ff7c39bd66fa590e7ff0dfb6cfdc1a66fd2f6001b60f545f58ce364e242b063d99d8c399891e" name="R-spatial" arch="x86_64">
  <version epoch="0" ver="7.3.17" rel="51.0.2.2.sr20241103"/>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1620302400">- To get in sync with d:l:R:autoCRAN the Matrix package's split
  in -devel was reversed.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339200">- improved spec file according to comments of dimstar in
  https://build.opensuse.org/request/show/892685</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339201">- CHANGES IN R 4.1.0:
  FUTURE DIRECTIONS:
  * It is planned that the 4.1.x series will be the last to support
    32-bit Windows, with production of binary packages for that
    series continuing until early 2023.
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Data set esoph in package datasets now provides the correct
    numbers of controls; previously it had the numbers of cases added
    to these.  (Reported by Alexander Fowler in PR#17964.)
  NEW FEATURES:
  * www.omegahat.net is no longer one of the repositories known by
    default to setRepositories().  (Nowadays it only provides source
    packages and is often unavailable.)
  * Function package_dependencies() (in package tools) can now use
    different dependency types for direct and recursive dependencies.
  * The checking of the size of tarball in R CMD check --as-cran
    &lt;pkg&gt; may be tweaked via the new environment variable
    _R_CHECK_CRAN_INCOMING_TARBALL_THRESHOLD_, as suggested in
    PR#17777 by Jan Gorecki.
  * Using c() to combine a factor with other factors now gives a
    factor, an ordered factor when combining ordered factors with
    identical levels.
  * apply() gains a simplify argument to allow disabling of
    simplification of results.
  * The format() method for class "ftable" gets a new option justify.
    (Suggested by Thomas Soeiro.)
  * New ...names() utility.  (Proposed by Neal Fultz in PR#17705.)
  * type.convert() now warns when its as.is argument is not
    specified, as the help file always said it _should_.  In that
    case, the default is changed to TRUE in line with its change in
    read.table() (related to stringsAsFactor) in R 4.0.0.
  * When printing list arrays, classed objects are now shown _via_
    their format() value if this is a short enough character string,
    or by giving the first elements of their class vector and their
    length.
  * capabilities() gets new entry "Rprof" which is TRUE when R has
    been configured with the equivalent of --enable-R-profiling (as
    it is by default).  (Related to Michael Orlitzky's report
    PR#17836.)
  * str(xS4) now also shows extraneous attributes of an S4 object
    xS4.
  * Rudimentary support for vi-style tags in rtags() and R CMD rtags
    has been added.  (Based on a patch from Neal Fultz in PR#17214.)
  * checkRdContents() is now exported from tools; it and also
    checkDocFiles() have a new option chkInternal allowing to check
    Rd files marked with keyword "internal" as well.  The latter can
    be activated for R CMD check via environment variable
    _R_CHECK_RD_INTERNAL_TOO_.
  * New functions numToBits() and numToInts() extend the raw
    conversion utilities to (double precision) numeric.
  * Functions URLencode() and URLdecode() in package utils now work
    on vectors of URIs.  (Based on patch from Bob Rudis submitted
    with PR#17873.)
  * path.expand() can expand ~user on most Unix-alikes even when
    readline is not in use.  It tries harder to expand ~, for example
    should environment variable HOME be unset.
  * For HTML help (both dynamic and static), Rd file links to help
    pages in external packages are now treated as references to
    topics rather than file names, and fall back to a file link only
    if the topic is not found in the target package. The earlier rule
    which prioritized file names over topics can be restored by
    setting the environment variable _R_HELP_LINKS_TO_TOPICS_ to a
    false value.
  * c() now removes NULL arguments before dispatching to methods,
    thus simplifying the implementation of c() methods, _but_ for
    back compatibility keeps NULL when it is the first argument.
    (From a report and patch proposal by Lionel Henry in PR#17900.)
  * Vectorize()'s result function's environment no longer keeps
    unneeded objects.
  * Function ...elt() now propagates visibility consistently with
    ..n.  (Thanks to Lionel Henry's PR#17905.)
  * capture.output() no longer uses non-standard evaluation to
    evaluate its arguments.  This makes evaluation of functions like
    parent.frame() more consistent.  (Thanks to Lionel Henry's
    PR#17907.)
  * packBits(bits, type="double") now works as inverse of
    numToBits().  (Thanks to Bill Dunlap's proposal in PR#17914.)
  * curlGetHeaders() has two new arguments, timeout to specify the
    timeout for that call (overriding getOption("timeout")) and TLS
    to specify the minimum TLS protocol version to be used for
    https:// URIs (_inter alia_ providing a means to check for sites
    using deprecated TLS versions 1.0 and 1.1).
  * For nls(), an optional constant scaleOffset may be added to the
    denominator of the relative offset convergence test for cases
    where the fit of a model is expected to be exact, thanks to a
    proposal by John Nash.  nls(*, trace=TRUE) now also shows the
    convergence criterion.
  * Numeric differentiation _via_ numericDeriv() gets new optional
    arguments eps and central, the latter for taking central divided
    differences.  The latter can be activated for nls() via
    nls.control(nDcentral = TRUE).
  * nls() now passes the trace and control arguments to getInitial(),
    notably for all self-starting models, so these can also be fit in
    zero-noise situations via a scaleOffset.  For this reason, the
    initial function of a selfStart model must now have ... in its
    argument list.
  * bquote(splice = TRUE) can now splice expression vectors with
    attributes: this makes it possible to splice the result of
    parse(keep.source = TRUE).  (Report and patch provided by Lionel
    Henry in PR#17869.)
  * textConnection() gets an optional name argument.
  * get(), exists(), and get0() now signal an error if the first
    argument has length greater than 1.  Previously additional
    elements were silently ignored.  (Suggested by Antoine Fabri on
    R-devel.)
  * R now provides a shorthand notation for creating functions, e.g.
    \(x) x + 1 is parsed as function(x) x + 1.
  * R now provides a simple native forward pipe syntax |&gt;.  The
    simple form of the forward pipe inserts the left-hand side as the
    first argument in the right-hand side call.  The pipe
    implementation as a syntax transformation was motivated by
    suggestions from Jim Hester and Lionel Henry.
  * all.equal(f, g) for functions now by default also compares their
    environment(.)s, notably via new all.equal method for class
    function.  Comparison of nls() fits, e.g., may now need
    all.equal(m1, m2, check.environment = FALSE).
  * .libPaths() gets a new option include.site, allowing to _not_
    include the site library.  (Thanks to Dario Strbenac's suggestion
    and Gabe Becker's PR#18016.)
  * Lithuanian translations are now available.  (Thanks to Rimantas
    Zakauskas.)
  * names() now works for DOTSXP objects.  On the other hand, in
    R-lang, the R language manual, we now warn against relying on the
    structure or even existence of such dot-dot-dot objects.
  * all.equal() no longer gives an error on DOTSXP objects.
  * capabilities("cairo") now applies only to the file-based devices
    as it is now possible (if very unusual) to build R with Cairo
    support for those but not for X11().
  * There is optional support for tracing the progress of
    loadNamespace() - see its help.
  * (Not Windows.)  l10n_info() reports an additional element, the
    name of the encoding as reported by the OS (which may differ from
    the encoding part (if any) of the result from
    Sys.getlocale("LC_CTYPE").
  * New function gregexec() which generalizes regexec() to find _all_
    disjoint matches and well as all substrings corresponding to
    parenthesized subexpressions of the given regular expression.
    (Contributed by Brodie Gaslam.)
  * New function charClass() in package utils to query the
    wide-character classification functions in use (such as
    iswprint).
  * The names of quantile()'s result no longer depend on the global
    getOption("digits"), but quantile() gets a new optional argument
    digits = 7 instead.
  * grep(), sub(), regexp and variants work considerably faster for
    long factors with few levels.  (Thanks to Michael Chirico's
    PR#18063.)
  * Provide grouping of x11() graphics windows within a window
    manager such as Gnome or Unity; thanks to a patch by Ivan Krylov
    posted to R-devel.
  * The split() method for class data.frame now allows the f argument
    to be specified as a formula.
  * sprintf now warns on arguments unused by the format string.
  * New palettes "Rocket" and "Mako" for hcl.colors() (approximating
    palettes of the same name from the 'viridisLite' package).
    Contributed by Achim Zeileis.
  * The base environment and its namespace are now locked (so one can
    no longer add bindings to these or remove from these).
  * Rterm handling of multi-byte characters has been improved,
    allowing use of such characters when supported by the current
    locale.
  * Rterm now accepts ALT+ +xxxxxxxx sequences to enter Unicode
    characters as hex digits.
  * Environment variable LC_ALL on Windows now takes precedence over
    LC_CTYPE and variables for other supported categories, matching
    the POSIX behaviour.
  * duplicated() and anyDuplicated() are now optimized for integer
    and real vectors that are known to be sorted via the ALTREP
    framework. Contributed by Gabriel Becker via PR#17993.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 14
    and so packages that provide graphics devices should be
    reinstalled.
  * Graphics devices should now specify deviceVersion to indicate
    what version of the graphics engine they support.
  * Graphics devices can now specify deviceClip.  If TRUE, the
    graphics engine will never perform any clipping of output itself.
    The clipping that the graphics engine does perform (for both
    canClip = TRUE and canClip = FALSE) has been improved to avoid
    producing unnecessary artifacts in clipped output.
  * The grid package now allows gpar(fill) to be a linearGradient(),
    a radialGradient(), or a pattern().  The viewport(clip) can now
    also be a grob, which defines a clipping path, and there is a new
    viewport(mask) that can also be a grob, which defines a mask.
    These new features are only supported so far on the Cairo-based
    graphics devices and on the pdf() device.
  * (Not Windows.)  A warning is given when a Cairo-based type is
    specified for a png(), jpeg(), tiff() or bmp() device but Cairo
    is unsupported (so type = "Xlib" is tried instead).
  * grSoftVersion() now reports the versions of FreeType and
    FontConfig if they are used directly (not _via_ Pango), as is
    most commonly done on macOS.
  C-LEVEL FACILITIES:
  * The _standalone_ libRmath math library and R's C API now provide
    log1pexp() again as documented, and gain log1mexp().
  INSTALLATION on a UNIX-ALIKE:
  * configure checks for a program pkgconf if program pkg-config is
    not found.  These are now only looked for on the path (like
    almost all other programs) so if needed specify a full path to
    the command in PKG_CONFIG, for example in file config.site.
  * C99 function iswblank is required - it was last seen missing ca
    2003 so the workaround has been removed.
  * There are new configure options --with-internal-iswxxxxx,
  - -with-internal-towlower and --with-internal-wcwidth which allows
    the system functions for wide-character classification,
    case-switching and width (wcwidth and wcswidth) to be replaced by
    internal ones.  The first has long been used on macOS, AIX (and
    Windows) but this enables it to be unselected there and selected
    for other platforms (it is the new default on Solaris).  The
    second is new in this version of R and is selected by default on
    macOS and Solaris.  The third has long been the default and
    remains so as it contains customizations for East Asian
    languages.
    System versions of these functions are often minimally
    implemented (sometimes only for ASCII characters) and may not
    cover the full range of Unicode points: for example Solaris (and
    Windows) only cover the Basic Multilingual Plane.
  * Cairo installations without X11 are more likely to be detected by
    configure, when the file-based Cairo graphics devices will be
    available but not X11(type = "cairo").
  * There is a new configure option --with-static-cairo which is the
    default on macOS.  This should be used when only static cairo
    (and where relevant, Pango) libraries are available.
  * Cairo-based graphics devices on platforms without Pango but with
    FreeType/FontConfig will make use of the latter for font
    selection.
  LINK-TIME OPTIMIZATION on a UNIX-ALIKE:
  * Configuring with flag --enable-lto=R now also uses LTO when
    installing the recommended packages.
  * R CMD INSTALL and R CMD SHLIB have a new flag --use-LTO to use
    LTO when compiling code, for use with R configured with
  - -enable-lto=R.  For R configured with --enable-lto, they have
    the new flag --no-use-LTO.
    Packages can opt in or out of LTO compilation _via_ a UseLTO
    field in the DESCRIPTION file.  (As usual this can be overridden
    by the command-line flags.)
  BUILDING R on Windows:
  * for GCC &gt;= 8, FC_LEN_T is defined in config.h and hence character
    lengths are passed from C to Fortran in _inter alia_ BLAS and
    LAPACK calls.
  * There is a new text file src/gnuwin32/README.compilation, which
    outlines how C/Fortran code compilation is organized and
    documents new features:
  * R can be built with Link-Time Optimization with a suitable
    compiler - doing so with GCC 9.2 showed several
    inconsistencies which have been corrected.
  * There is support for cross-compiling the C and Fortran code
    in R and standard packages on suitable (Linux) platforms.
    This is mainly intended to allow developers to test later
    versions of compilers - for example using GCC 9.2 or 10.x has
    detected issues that GCC 8.3 in Rtools40 does not.
  * There is experimental support for cross-building R packages
    with C, C++ and/or Fortran code.
  * The R installer can now be optionally built to support a single
    architecture (only 64-bit or only 32-bit).
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++14 where
    available (which it is on all currently checked platforms): if
    not (as before) C++11 is used if available otherwise C++ is not
    supported.
    Packages which specify C++11 will still be installed using C++11.
    C++14 compilers may give deprecation warnings, most often for
    std::random_shuffle (deprecated in C++14 and removed in C++17).
    Either specify C++11 (see 'Writing R Extensions') or modernize
    the code and if needed specify C++14.  The latter has been
    supported since R 3.4.0 so the package's DESCRIPTION would need
    to include something like
    Depends: R (&gt;= 3.4)
  PACKAGE INSTALLATION on Windows:
  * R CMD INSTALL and R CMD SHLIB make use of their flag --use-LTO
    when the LTO_OPT make macro is set in file etc/${R_ARCH}/Makeconf
    or in a personal/site Makevars file.  (For details see 'Writing R
    Extensions' SS4.5.)
    This provides a valuable check on code consistency.  It does work
    with GCC 8.3 as in Rtools40, but that does not detect everything
    the CRAN checks with current GCC do.
  PACKAGE INSTALLATION on macOS:
  * The default personal library directory on builds with
  - -enable-aqua (including CRAN builds) now differs by CPU type,
    one of
    ~/Library/R/x86_64/x.y/library
    ~/Library/R/arm64/x.y/library
    This uses the CPU type R (and hence the packages) were built for,
    so when a x86_64 build of R is run under Rosetta emulation on an
    arm64 Mac, the first is used.
  UTILITIES:
  * R CMD check can now scan package functions for bogus return
    statements, which were possibly intended as return() calls (wish
    of PR#17180, patch by Sebastian Meyer). This check can be
    activated via the new environment variable
    _R_CHECK_BOGUS_RETURN_, true for --as-cran.
  * R CMD build omits tarballs and binaries of previous builds from
    the top-level package directory.  (PR#17828, patch by Sebastian
    Meyer.)
  * R CMD check now runs sanity checks on the use of LazyData, for
    example that a data directory is present and that
    LazyDataCompression is not specified without LazyData and has a
    documented value.  For packages with large LazyData databases
    without specifying LazyDataCompression, there is a reference to
    the code given in 'Writing R Extensions' SS1.1.6 to test the
    choice of compression (as in all the CRAN packages tested a
    non-default method was preferred).
  * R CMD build removes LazyData and LazyDataCompression fields from
    the DESCRIPTION file of packages without a data directory.
  ENCODING-RELATED CHANGES:
  * The parser now treats \Unnnnnnnn escapes larger than the upper
    limit for Unicode points (\U10FFFF) as an error as they cannot be
    represented by valid UTF-8.
    Where such escapes are used for outputting non-printable
    (including unassigned) characters, 6 hex digits are used (rather
    than 8 with leading zeros).  For clarity, braces are used, for
    example \U{0effff}.
  * The parser now looks for non-ASCII spaces on Solaris (as
    previously on most other OSes).
  * There are warnings (including from the parser) on the use of
    unpaired surrogate Unicode points such as \uD834.  (These cannot
    be converted to valid UTF-8.)
  * Functions nchar(), tolower(), toupper() and chartr() and those
    using regular expressions have more support for inputs with a
    marked Latin-1 encoding.
  * The character-classification functions used (by default) to
    replace the system iswxxxxx functions on Windows, macOS and AIX
    have been updated to Unicode 13.0.0.
    The character-width tables have been updated to include new
    assignments in Unicode 13.0.0.
  * The code for evaluating default (extended) regular expressions
    now uses the same character-classification functions as the rest
    of R (previously they differed on Windows, macOS and AIX).
  * There is a build-time option to replace the system's
    wide-character wctrans C function by tables shipped with R: use
    configure option --with-internal-towlower or (on Windows)
  - DUSE_RI18N_CASE in CFLAGS when building R.  This may be needed
    to allow tolower() and toupper() to work with Unicode characters
    beyond the Basic Multilingual Plane where not supported by system
    functions (e.g. on Solaris where it is the new default).
  * R is more careful when truncating UTF-8 and other multi-byte
    strings that are too long to be printed, passed to the system or
    libraries or placed into an internal buffer.  Truncation will no
    longer produce incomplete multibyte characters.
  DEPRECATED AND DEFUNCT:
  * Function plclust() from the package stats and
    package.dependencies(), pkgDepends(), getDepList(),
    installFoundDepends(), and vignetteDepends() from package tools
    are defunct.
  * Defunct functions checkNEWS() and readNEWS() from package tools
    and CRAN.packages() from utils have been removed.
  * R CMD config CXXCPP is defunct (it was deprecated in R 3.6.2).
  * parallel::detectCores() drops support for Irix (retired in 2013).
  * The LINPACK argument to chol.default(), chol2inv(),
    solve.default() and svd() has been defunct since R 3.1.0.  It was
    silently ignored up to R 4.0.3 but now gives an error.
  * Subsetting/indexing, such as ddd[*] or ddd$x on a DOTSXP
    (dot-dot-dot) object ddd has been disabled; it worked by accident
    only and was undocumented.
  BUG FIXES:
  * Many more C-level allocations (mainly by malloc and strdup) are
    checked for success with suitable alternative actions.
  * Bug fix for replayPlot(); this was turning off graphics engine
    display list recording if a recorded plot was replayed in the
    same session.  The impact of the bug became visible if resize the
    device after replay OR if attempted another savePlot() after
    replay (empty display list means empty screen on resize or empty
    saved plot).
  * R CMD check etc now warn when a package exports non-existing S4
    classes or methods, also in case of no "methods" presence.
    (Reported by Alex Bertram; reproducible example and patch by
    Sebastian Meyer in PR#16662.)
  * boxplot() now also accepts calls for labels such as ylab, the
    same as plot().  (Reported by Marius Hofert.)
  * The help page for xtabs() now correctly states that addNA is
    setting na.action = na.pass among others.  (Reported as PR#17770
    by Thomas Soeiro.)
  * The R CMD check &lt;pkg&gt; gives a longer and more comprehensible
    message when DESCRIPTION misses dependencies, e.g., in Imports:.
    (Thanks to the contributors of PR#17179.)
  * update.default() now calls the generic update() on the formula to
    work correctly for models with extended formulas.  (As reported
    and suggested by Neal Fultz in PR#17865.)
  * The horizontal position of leaves in a dendrogram is now correct
    also with center = FALSE.  (PR#14938, patch from Sebastian
    Meyer.)
  * all.equal.POSIXt() no longer warns about and subsequently ignores
    inconsistent "tzone" attributes, but describes the difference in
    its return value (PR#17277).  This check can be disabled _via_
    the new argument check.tzone = FALSE as suggested by Sebastian
    Meyer.
  * as.POSIXct() now populates the "tzone" attribute from its tz
    argument when x is a logical vector consisting entirely of NA
    values.
  * x[[2^31]] &lt;- v now works.  (Thanks to the report and patch by
    Suharto Anggono in PR#17330.)
  * In log-scale graphics, axis() ticks and label positions are now
    computed more carefully and symmetrically in their range,
    typically providing _more_ ticks, fulfilling wishes in PR#17936.
    The change really corresponds to an improved axisTicks() (package
    grDevices), potentially influencing grid and lattice, for
    example.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now correct to at
    least five digits where it was catastrophically wrong,
    previously.
  * sum(df) and similar "Summary"- and "Math"-group member functions
    now work for data frames df with logical columns, notably also of
    zero rows.  (Reported to R-devel by Martin "b706".)
  * unsplit() had trouble with tibbles due to unsound use of rep(NA,
    len)-indexing, which should use NA_integer_ (Reported to R-devel
    by Mario Annau.)
  * pnorm(x, log.p = TRUE) underflows to -Inf slightly later.
  * show(&lt;hidden S4 generic&gt;) prints better and without quotes for
    non-hidden S4 generics.
  * read.table() and relatives treated an "NA" column name as missing
    when check.names = FALSE PR#18007.
  * Parsing strings containing UTF-16 surrogate pairs such as
    "\uD834\uDD1E" works better on some (uncommon) platforms.
    sprintf("%X", utf8ToInt("\uD834\uDD1E")) should now give "1D11E"
    on all platforms.
  * identical(x,y) is no longer true for differing DOTSXP objects,
    fixing PR#18032.
  * str() now works correctly for DOTSXP and related exotics, even
    when these are doomed.
    Additionally, it no longer fails for lists with a class and
    "irregular" method definitions such that e.g. lapply(*) will
    necessarily fail, as currently for different igraph objects.
  * Too long lines in environment files (e.g. Renviron) no longer
    crash R. This limit has been increased to 100,000 bytes.
    (PR#18001.)
  * There is a further workaround for FreeType giving incorrect
    italic font faces with cairo-based graphics devices on macOS.
  * add_datalist(*, force = TRUE) (from package tools) now actually
    updates an existing data/datalist file for new content.  (Thanks
    to a report and patch by Sebastian Meyer in PR#18048.)
  * cut.Date() and cut.POSIXt() could produce an empty last interval
    for breaks = "months" or breaks = "years".  (Reported as PR#18053
    by Christopher Carbone.)
  * Detection of the encoding of 'regular' macOS locales such as
    en_US (which is UTF-8) had been broken by a macOS change:
    fortunately these are now rarely used with en_US.UTF-8 being
    preferred.
  * sub() and gsub(pattern, repl, x, *) now keep attributes of x such
    as names() also when pattern is NA (PR#18079).
  * Time differences ("difftime" objects) get a replacement and a
    rep() method to keep "units" consistent.  (Thanks to a report and
    patch by Nicolas Bennett in PR#18066.)
  * The \RdOpts macro, setting defaults for \Sexpr options in an Rd
    file, had been ineffective since R 2.12.0: it now works again.
    (Thanks to a report and patch by Sebastian Meyer in PR#18073.)
  * mclapply and pvec no longer accidentally terminate parallel
    processes started before by mcparallel or related calls in
    package parallel (PR#18078).
  * grep and other functions for evaluating (extended) regular
    expressions handle in Unicode also strings not explicitly flagged
    UTF-8, but flagged native when running in UTF-8 locale.
  * Fixed a crash in fifo implementation on Windows (PR#18031).
  * Binary mode in fifo on Windows is now properly detected from
    argument open (PR#15600, PR#18031).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1622808000">- The line %{__install} -m 755 -d %{_infodir}
  no longer works in TW or Factory.
  But without that line it works everywhere. So this instruction
  was commented out of the spec file.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1628596800">- CHANGES IN R 4.1.1:
  NEW FEATURES:
  * require(pkg, quietly = TRUE) is quieter and in particular does
    not warn if the package is not found.
  DEPRECATED AND DEFUNCT:
  * Use of ftp:// URIs should be regarded as deprecated, with
    on-going support confined to method = "libcurl" and not routinely
    tested.  (Nowadays no major browser supports them.)
  * The non-default method = "internal" is deprecated for http:// and
    ftp:// URIs for both download.file and url.
  * On Windows, method = "wininet" is deprecated for http://,
    https:// and ftp:// URIs for both download.file and url.  (A
    warning is only given for ftp://.)
    For ftp:// URIs the default method is now "libcurl" if available
    (which it is on CRAN builds).
    method = "wininet" remains the default for http:// and https://
    URIs but if libcurl is available, using method = "libcurl" is
    preferred.
  INSTALLATION:
  * make check now works also without a LaTeX installation.  (Thanks
    to Sebastian Meyer's PR#18103.)
  BUG FIXES:
  * make check-devel works again in an R build configured with
  - -without-recommended-packages.
  * qnbinom(p, size, mu) for large size/mu is correct now in a range
    of cases (PR#18095); similarly for the (size, prob)
    parametrization of the negative binomial.  Also qpois() and
    qbinom() are better and or faster for extreme cases.  The
    underlying C code has been modularized and is common to all four
    cases of discrete distributions.
  * gap.axis is now part of the axis() arguments which are passed
    from bxp(), and hence boxplot().  (Thanks to Martin Smith's
    report and suggestions in PR#18109.)
  * .First and .Last can again be set from the site profile.
  * seq.int(from, to, *) and seq.default(..) now work better in large
    range cases where from-to is infinite where the two boundaries
    are finite.
  * all.equal(x,y) now returns TRUE correctly also when several
    entries of abs(x) and abs(y) are close to .Machine$double.xmax,
    the largest finite numeric.
  * model.frame() now clears the object bit when removing the class
    attribute of a value via na.action (PR#18100).
  * charClass() now works with multi-character strings on Windows
    (PR#18104, fixed by Bill Dunlap).
  * encodeString() on Solaris now works again in Latin-1 encoding on
    characters represented differently in UTF-8.  Support for
    surrogate pairs on Solaris has been improved.
  * file.show() on Windows now works with non-ASCII path names
    representable in the current native encoding (PR#18132).
  * Embedded R on Windows can now find R home directory via the
    registry even when installed only for the current user
    (PR#18135).
  * pretty(x) with finite x now returns finite values also in the
    case where the extreme x values are close in size to the maximal
    representable number .Machine$double.xmax.
    Also, it's been tweaked for very small ranges and when a boundary
    is close (or equal) to zero; e.g., pretty(c(0,1e-317)) no longer
    has negative numbers, currently still warning about a very small
    range, and pretty(2^-(1024 - 2^-1/(c(24,10)))) is more accurate.
  * The error message for not finding vignette files when weaving has
    correct file sizes now. (Thanks to Sebastian Meyer's PR#18154.)
  * dnbinom(20, &lt;large&gt;, 1) now correctly gives 0, and similar cases
    are more accurate with underflow precaution.  (Reported by Francisco Vera Alcivar in PR#18072.)</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635163200">- repaired https://bugzilla.suse.com/show_bug.cgi?id=1191380
  (rpmacros now go to rpmmacrodir)
- minor clean-ups in spec file</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635768000">- CHANGES IN R 4.1.2:
  C-LEVEL FACILITIES:
  * The workaround in headers R.h and Rmath.h (using namespace std;)
    for the Oracle Developer Studio compiler is no longer needed now
    C++11 is required so has been removed.  A couple more usages of
    log() (which should have been std::log()) with an int argument
    are reported on Solaris.
  * The undocumented limit of 4095 bytes on messages from the
    S-compatibility macros PROBLEM and MESSAGE is now documented and
    longer messages will be silently truncated rather than
    potentially causing segfaults.
  * If the R_NO_SEGV_HANDLER environment variable is non-empty, the
    signal handler for SEGV/ILL/BUS signals (which offers recovery
    user interface) is not set. This allows more reliable debugging
    of crashes that involve the console.
  DEPRECATED AND DEFUNCT:
  * The legacy S-compatibility macros PROBLEM, MESSAGE, ERROR, WARN,
    WARNING, RECOVER, ... are deprecated and will be hidden in R
    4.2.0. R's native interface of Rf_error and Rf_warning has long
    been preferred.
  BUG FIXES:
  * .mapply(F, dots, .) no longer segfaults when dots is not a list
    and uses match.fun(F) as always documented; reported by Andrew
    Simmons in PR#18164.
  * hist(&lt;Date&gt;, ...) and hist(&lt;POSIXt&gt;, ...)  no longer pass
    arguments for rect() (such as col and density) to axis().
    (Thanks to Sebastian Meyer's PR#18171.)
  * \Sexpr{ch} now preserves Encoding(ch). (Thanks to report and
    patch by Jeroen Ooms in PR#18152.)
  * Setting the RNG to "Marsaglia-Multicarry" e.g., by RNGkind(), now
    warns in more places, thanks to Andr'e Gillibert's report and
    patch in PR#18168.
  * gray(numeric(), alpha=1/2) no longer segfaults, fixing PR#18183,
    reported by Till Krenz.
  * Fixed dnbinom(x, size=&lt;very_small&gt;, .., log=TRUE) regression,
    reported by Martin Morgan.
  * as.Date.POSIXlt(x) now keeps names(x), thanks to Davis Vaughan's
    report and patch in PR#18188.
  * model.response() now strips an "AsIs" class typically, thanks to
    Duncan Murdoch's report and other discussants in PR#18190.
  * try() is considerably faster in case of an error and long call,
    as e.g., from some do.call().  Thanks to Alexander Kaever's
    suggestion posted to R-devel.
  * qqline(y = &lt;object&gt;) such as y=I(.), now works, see also
    PR#18190.
  * Non-integer mgp par() settings are now handled correctly in
    axis() and mtext(), thanks to Mikael Jagan and Duncan Murdoch's
    report and suggestion in PR#18194.
  * formatC(x) returns length zero character() now, rather than ""
    when x is of length zero, as documented, thanks to Davis
    Vaughan's post to R-devel.
  * removeSource(fn) now retains (other) attributes(fn).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1647000000">- CHANGES IN R 4.1.3:
  NEW FEATURES:
  * The default version of Bioconductor has been changed to 3.14.
    (This is used by setRepositories and the menus in GUIs.)
  UTILITIES:
  * R CMD check --as-cran has a workaround for a bug in versions of
    file up to at least 5.41 which mis-identify DBF files last
    changed in 2022 as executables.
  C-LEVEL FACILITIES:
  * The legacy S-compatibility macros SINGLE_* in R_ext/Constants.h
    (included by R.h) are deprecated and will be removed in R 4.2.0.
  BUG FIXES:
  * Initialization of self-starting nls() models with initialization
    functions following the pre-R-4.1.0 API (without the ...
    argument) works again for now, with a deprecation warning.
  * Fixed quoting of ~autodetect~ in Java setting defaults to avoid
    inadvertent user lookup due to leading ~, reported in PR#18231 by
    Harold Gutch.
  * substr(., start, stop) &lt;- v now treats _negative_ stop values
    correctly.  Reported with a patch in PR#18228 by Brodie Gaslam.
  * Subscripting an array x without dimnames by a
    length(dim(x))-column character matrix gave "random" non-sense,
    now an error; reported in PR#18244 by Mikael Jagan.
  * ...names() now matches names(list(...)) closely, fixing PR#18247.
  * all.equal(*, scale = s) now works as intended when length(s) &gt; 1,
    partly thanks to Michael Chirico's PR#18272.
  * print(x) for long vectors x now also works for named atomic
    vectors or lists and prints the correct number when reaching the
    getOption("max.print") limit; partly thanks to a report and
    proposal by Hugh Parsonage to the R-devel list.
  * all.equal(&lt;selfStart&gt;, *) no longer signals a deprecation
    warning.
  * reformulate(*, response=r) gives a helpful error message now when
    length(r) &gt; 1, thanks to Bill Dunlap's PR#18281.
  * Modifying globalCallingHandlers inside withCallingHandlers() now
    works or fails correctly, thanks to Henrik Bengtsson's PR#18257.
  * hist(&lt;Date&gt;, breaks = "days") and hist(&lt;POSIXt&gt;, breaks = "secs")
    no longer fail for inputs of length 1.
  * qbeta(.001, .9, .009) and similar cases now converge correctly
    thanks to Ben Bolker's report in PR#17746.
  * window(x, start, end) no longer wrongly signals "'start' cannot
    be after 'end'", fixing PR#17527 and PR#18291.
  * data() now checks that its (rarely used) list argument is a
    character vector - a couple of packages passed other types and
    gave incorrect results.
  * which() now checks its arr.ind argument is TRUE rather coercing
    to logical and taking the first element - which gave incorrect
    results in package code.
  * model.weights() and model.offset() more carefully extract their
    model components, thanks to Ben Bolker and Tim Taylor's R-devel
    post.
  * list.files(recursive = TRUE) now shows all broken symlinks
    (previously, some of them may have been omitted, PR#18296).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1650628800">- CHANGES IN R 4.2.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * The formula method of aggregate() now matches the generic in
    naming its first argument x (resolving PR#18299 by Thomas
    Soeiro).
    This means that calling aggregate() with a formula as a named
    first argument requires name formula in earlier versions of R and
    name x now, so portable code should not name the argument (code
    in many packages did).
  * Calling &amp;&amp; or || with either argument of length greater than one
    now gives a warning (which it is intended will become an error).
  * Calling if() or while() with a condition of length greater than
    one gives an error rather than a warning.  Consequently,
    environment variable _R_CHECK_LENGTH_1_CONDITION_ no longer has
    any effect.
  * Windows users should consult the WINDOWS section below for some
    profound changes including
  * Support for 32-bit builds has been dropped.
  * UTF-8 locales are used where available.
  * The default locations for the R installation and personal
    library folder have been changed.
    Thanks to Tomas Kalibera for months of work on the Windows port
    for this release.
  NEW FEATURES:
  * matrix(x, n, m) now warns in more cases where length(x) differs
    from n * m, as suggested by Abby Spurdle and Wolfgang Huber in
    Feb 2021 on the R-devel mailing list.
    This warning can be turned into an error by setting environment
    variable _R_CHECK_MATRIX_DATA_ to TRUE: R CMD check --as-cran
    does so unless it is already set.
  * Function file_test() in package utils gains tests for symlinks,
    readability and writability.
  * capabilities("libxml") is now false.
    The description of capabilities("http/ftp") now reflects that it
    refers to the default method, no longer the internal one.
  * simplify2array() gains an except argument for controlling the
    exceptions used by sapply().
  * Environment variables R_LIBS_USER and R_LIBS_SITE are both now
    set to the R system default if unset or empty, and can be set to
    NULL to indicate an empty list of user or site library
    directories.
  * The warning for axis()(-like) calls in cases of relatively small
    ranges (typically in log-scale situations) is slightly improved
    _and_ suppressed from explicit calls to .axisPars() as has always
    been the intention.
  * The contrasts setter function `contrasts&lt;-` gains an explicit
    default how.many = NULL rather than just using missing(how.many).
  * grid.pretty() gains a new optional argument n = 5.
  * There is a new function .pretty() with option bounds as a
    technical-utility version of pretty().  It and pretty() gain a
    new argument f.min with a better than back-compatible default.
  * Function grDevices::axisTicks() and related functions such as
    graphics::axis() work better, notably for the log scale; partly
    because of the pretty() improvements, but also because care is
    taken e.g., when ylim is finite but diff(ylim) is infinite.
  * nclass.FD() gains a digits option.
  * The R Mathlib internal C function bd0() (called indirectly from a
    dozen probability density and distribution functions such as
    dpois(), dbinom(), dgamma(), pgamma() _etc_) has been
    complemented by a more sophisticated and (mostly) more accurate C
    function ebd0(), currently called only by internal dpois_raw()
    improving accuracy for R level dpois() and potentially others
    calling it such as dnbinom(), dgamma() or pgamma().  (Thanks to
    Morten Welinder's PR#15628.)
  * write.ftable() gains sep = " " argument as suggested by Thomas
    Soeiro.
  * The names of the locale categories supported by R's
    Sys.getlocale() and Sys.setlocale() are now provided by variable
    .LC.categories in the base namespace.
  * The Date and POSIXt methods for hist() and the histogram method
    for plot() now also use the new default col = "lightgray" in
    consistency with the corresponding change to hist()'s default for
    R 4.0.0.
  * hist.default() gains new fuzz argument, and the histogram plot
    method no longer uses fractional axis ticks when displaying
    counts ("Frequency").
  * mapply() and hence Map() now also obey the "max-or-0-if-any"
    recycling rule, such that, e.g., Map(`+`, 1:3, 1[0]) is valid
    now.
  * as.character(&lt;obj&gt;) for "hexmode" or "octmode" objects now
    fulfils the important basic rule as.character(x)[j] ===
    as.character(x[j]).
  * The set utility functions, notably intersect() have been tweaked
    to be more consistent and symmetric in their two set arguments,
    also preserving a common mode.
  * substr(ch, start,end) &lt;- new now e.g., preserves names(ch); ditto
    for substring(), thanks to a patch from Brodie Gaslam.
  * plot(&lt;lm&gt;) gains a extend.ylim.f argument, in partial response to
    PR#15285; further PR#17784 is fixed thanks to several
    contributors and a patch by Elin Waring.  The Cook's dist
    contours get customizable via cook.col and cook.lty with a
    different default color and their legend is nicer by default and
    customizable via cook.legendChanges.
  * Attempting to subset an object that is not subsettable now
    signals an error of class notSubsettableError. The
    non-subsettable object is contained in the object field of the
    error condition.
  * Subscript-out-of-bounds errors are now signaled as errors of
    class subscriptOutOfBoundsError.
  * Stack-overflow errors are now signaled as errors inheriting from
    class stackOverflowError. See ?stackOverflowError for more
    details.
  * New partly experimental Sys.setLanguage() utility, solving the
    main problem of PR#18055.
  * gettext() and gettextf() get a new option trim = TRUE which when
    set to false allows translations for strings such as "Execution
    halted\n" typical for C code.
  * An experimental implementation of hash tables is now available.
    See ?hashtab for more details.
  * identical() gains a extptr.as.ref argument for requesting that
    external pointer objects be compared as reference objects.
  * reorder() gets an argument decreasing which it passes to sort()
    for level creation; based on the wish and patch by Thomas Soeiro
    in PR#18243.
  * as.vector() gains a data.frame method which returns a simple
    named list, also clearing a long standing 'FIXME' to enable
    as.vector(&lt;data.frame&gt;, mode="list").  This breaks code relying
    on as.vector(&lt;data.frame&gt;) to return the unchanged data frame.
  * legend() is now vectorized for arguments cex, x.intersp, and
    text.width.  The latter can now also be specified as a vector
    (one element for each column of the legend) or as NA for
    computing a proper column wise maximum value of strwidth(legend).
    The argument y.intersp can be specified as a vector with one
    entry for each row of the legend.
    legend() also gains new arguments title.cex and title.font.
    Thanks to Swetlana Herbrandt.
  * Deparsing no longer remaps attribute names dim, dimnames, levels,
    names and tsp to historical S-compatible names (which structure()
    maps back).
  * sample() and sample.int() have additional sanity checks on their
    size and n arguments.
    all.equal.numeric() gains a sanity check on its tolerance
    argument - calling all.equal(a, b, c) for three numeric vectors
    is a surprisingly common error.
    mean(na.rm =), rank(na.last =), barplot(legend.text =),
    boxplot(), contour(drawlabels =), polygon(border =) and
    methods::is(class2 =) have more robust sanity checks on their
    arguments.
    R CMD Rd2pdf (used by R CMD check) has a more robust sanity check
    on the format of \alias{} commands.
  * psigamma(x, deriv) for negative x now also works for deriv = 4
    and 5; their underlying C level dpsifn() is documented in
    'Writing R Extensions'.
  * The HTML help system now uses HTML5 (wish of PR#18149).
  * ks.test() now provides exact p-values also with ties and MC
    p-values in the two-sample (Smirnov) case.  By Torsten Hothorn.
  * ks.test() gains a formula interface, with y ~ 1 for the
    one-sample (Kolmogorov) test and y ~ group for the two-sample
    (Smirnov) test.  Contributed by Torsten Hothorn.
  * The return value from ks.test() now has class c("ks.test",
    "htest") - packages using try() need to take care to use
    inherits() and not == on the class.
  * New functions psmirnov(), qsmirnov() and rsmirnov() in package
    stats implementing the asymptotic and exact distributions of the
    two-sample Smirnov statistic.
  * iconv() now allows sub = "c99" to use C99-style escapes for UTF-8
    inputs which cannot be converted to encoding to.
  * In a forward pipe |&gt; expression it is now possible to use a named
    argument with the placeholder _ in the rhs call to specify where
    the lhs is to be inserted.  The placeholder can only appear once
    on the rhs.
  * The included LAPACK sources have been updated to version 3.10.0,
    except for the four Fortran 77 routines which 3.10.0 has
    re-implemented in Fortran 90 (where the older versions have been
    retained as the R build process does not support Fortran 90).
  * path.expand() and most other uses of tilde expansion now warn if
    a path would be too long if expanded.  (An exception is
    file.exists(), which silently returns false.)
  * trunc(&lt;Date&gt;, *) now supports units = "months" or "years" for
    consistency with the POSIXt method, thanks to Dirk Eddelbuettel's
    proposal in PR#18099.
  * list2DF() now checks that its arguments are of the same length,
    rather than use recycling.
  * The HTML help system has several new features: LaTeX-like math
    can be typeset using either KaTeX or MathJax, usage and example
    code is highlighted using Prism, and for dynamic help the output
    of examples and demos can be shown within the browser if the
    knitr package is installed. These features can be disabled by
    setting the environment variable _R_HELP_ENABLE_ENHANCED_HTML_ to
    a false value.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 15
    and so packages that provide graphics devices should be
    reinstalled.
  * The grid package now allows the user to specify a "vector" of
    pattern fills.  The fill argument to gpar() accepts a list of
    gradients and/or patterns and the functions linearGradient(),
    radialGradient(), and pattern() have a new group argument.
    Points grobs (data symbols) can now also have a pattern fill.
    The grobCoords() function now returns a more informative and
    complex result.
  * The grid package has new functions for drawing isolated groups:
    grid.group(), grid.define(), and grid.use().  These functions add
    compositing operators and affine transformations to R's graphics
    capabilities.
    The grid package also has new functions for stroking and filling
    paths: grid.stroke(), grid.fill(), and grid.fillStroke().
    A new function as.path() allows the user to specify the fill rule
    for a path that is to be used for clipping, stroking, or filling;
    available options are "winding" and "evenodd".  A new function
    as.mask() allows the user to specify the type of a mask;
    available options are "alpha" and "luminance".
    These new features are only supported so far (at most) on the
    Cairo-based graphics devices and on the pdf() device.
  * dev.capabilities() reports on device support for the new
    features.
  * par() now warns about unnamed non-character arguments to prevent
    misuse such as {usr &lt;- par("usr"); par(usr)}.
  INSTALLATION:
  * Facilities for accessing ftp:// sites are no longer tested
    (except _pro tem_ for curlGetHeaders()) as modern browsers have
    removed support.
  * R can now be built with DEFS = -DSTRICT_R_HEADERS .
  PACKAGE INSTALLATION:
  * R CMD INSTALL no longer tangles vignettes. This completes an R
    CMD build change in R 3.0.0 and affects packages built before R
    3.0.2. Such packages should be re-made with R CMD build to have
    the tangled R code of vignettes shipped with the tarball.
  * USE_FC_LEN_T will become the default: this uses the correct
    prototypes for Fortran BLAS/LAPACK routines called from C/C++,
    and requires adjustment of most such calls - see 'Writing R
    Extensions' SS6.6.2.  (This has been supported since R 3.6.2.)
  * Package installation speed for packages installed with
    keep.source has been improved. This resolve the issue reported by
    Ofek Shilon in PR#18236.
  UTILITIES:
  * R CMD check can optionally report files/directories left behind
    in home, /tmp (even though TMPDIR is set) and other directories.
    See the "R Internals" manual for details.
  * R CMD check now reports byte-compilation errors during
    installation.  These are not usually fatal but may result in
    parts of the package not being byte-compiled.
  * _R_CHECK_DEPENDS_ONLY_ can be applied selectively to examples,
    tests and/or vignettes in R CMD check: see the "R Internals"
    manual.
  * _R_CHECK_SRC_MINUS_W_IMPLICIT_ now defaults to true: recent
    versions of Apple clang on macOS have made implicit function
    declarations in C into a compilation error.
  * R CMD check --as-cran makes use of the environment variable
    AUTORECONF.  See the "R Internals" manual SS8 for further details.
  * R CMD check --use-valgrind also uses valgrind when re-building
    vignettes as some non-Sweave vignettes unhelpfully comment out
    all their code when R CMD check runs vignettes.
  * Errors in re-building vignettes (unless there are LaTeX errors)
    are reported by R CMD check as ERROR rather than WARNING when
    running vignettes has been skipped (as it frequently is in CRAN
    checks and by --as-cran).
  * R CMD Rd2pdf gains a --quiet option that is used by R CMD build
    when building the PDF package manual.
  * R CMD Rd2pdf now always runs LaTeX in batch mode, consistent with
    Texinfo &gt;= 6.7. The --batch option is ignored.
  * R CMD build and R CMD check now include the Rd file name and line
    numbers in the error message of an \Sexpr evaluation failure.
  * For packages using the \doi Rd macro (now an install-time \Sexpr)
    but no other dynamic Rd content, R CMD build now produces a
    smaller tarball and is considerably faster - skipping temporary
    package installation.
  C-LEVEL FACILITIES:
  * The non-API header R_ext/R-ftp-http.h is no longer provided, as
    the entry points it covered are now all defunct.
  * A number of non-API declarations and macro definitions have been
    moved from the installed header Rinternals.h to the internal
    header Defn.h. Packages that only use entry points and
    definitions documented to be part of the API as specified in
    'Writing R Extensions' SS6 should not be affected.
  * The macro USE_RINTERNALS no longer has any effect when compiling
    package code.  Packages which also use R_NO_REMAP will need to
    ensure that the remapped names are used for calls to API
    functions that were formerly also made available as macros.
  * The deprecated legacy S-compatibility macros PROBLEM, MESSAGE,
    ERROR, WARN, WARNING, RECOVER, ... are no longer defined in
    R_exts/RS.h (included by R.h).  Replace these by calls to
    Rf_error and Rf_warning (defined in header R_ext/Error.h included
    by R.h).
    Header R_ext/RS.h no longer includes R_ext/Error.h.
  * Header R_ext/Constants.h (included by R.h) when included from C++
    now includes the C++ header cfloat rather than the C header
    float.h (now possible as C++11 is required).
  * The legacy S-compatibility macros DOUBLE_* in R_ext/Constants.h
    (included by R.h) are deprecated.
  * The deprecated S-compatibility macros SINGLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * R_Calloc, R_Free and R_Realloc are preferred to their unprefixed
    forms and error messages now use the prefix. These forms were
    introduced in R 3.4.0 and are available even when
    STRICT_R_HEADERS is defined.
  * rmultinom has been documented in 'Writing R Extensions' SS6 so is
    now part of the R API.
  * Similarly, Rtanpi, called from R level tanpi() is now part of the
    R API.
  * The long-deprecated, undocumented and non-API entry point call_R
    is no longer declared in R_ext/RS.h (included by R.h).
  * The header S.h which has been unsupported since Jan 2016 has been
    removed.  Use R.h instead.
  DEPRECATED AND DEFUNCT:
  * The (non-default and deprecated) method = "internal" for
    download.file() and url() no longer supports http:// nor ftp://
    URIs.  (It is used only for file:// URIs.)
    On Windows, download.file(method = "wininet") no longer supports
    ftp:// URIs.  (It is no longer the default method, which is
    "libcurl" and does.)
    On Windows, the deprecated method = "wininet" now gives a warning
    for http:// and https:// URIs for both download.file() and url().
    (It is no longer the default method.)
  * On Windows, the command-line option --max-mem-size and
    environment variable R_MAX_MEM_SIZE are defunct.  The memory
    allocation limit was important for 32-bit builds, but these are
    no longer supported.
  * default.stringsAsFactors() is now formally deprecated, where that
    was only mentioned on its regular help page, previously.  So it
    now gives a warning if called.
  * unix.time() is defunct now; it had been deprecated since R 3.4.0.
  BUG FIXES:
  * Setting digits = 0 in format(), print.default() (and hence
    typically print()) or options() is again invalid.  Its behaviour
    was platform-dependent, and it is unclear what "zero significant
    digits" should mean (PR#18098).
  * Messages from C code in the cairo section of package grDevices
    are now also offered for translation, thanks to Michael Chirico's
    PR#18123.
  * mean(x) with finite x now is finite also without "long.double"
    capability.
  * R CMD Rd2pdf no longer leaves an empty build directory behind
    when it aborts due to an already existing output file.  (Thanks
    to Sebastian Meyer's PR#18141.)
  * density(x, weights = w, na.rm = TRUE) when anyNA(x) is true, now
    removes weights "in parallel" to x, fixing PR#18151, reported by
    Matthias Gondan.  Additionally, it gets a subdensity option.
  * Conversion of \Sexpr[]{&lt;expR&gt;} to LaTeX or HTML no longer
    produces long blocks of empty lines when &lt;expR&gt; itself contains
    several lines all producing empty output.  Thanks to a report and
    patch by Ivan Krylov posted to R-devel.
  * R CMD build no longer fails if a package vignette uses child
    documents and inst/doc exists.  (Thanks to Sebastian Meyer's
    PR#18156.)
  * When an R documentation ('help' source) file man/foo.Rd in a
    package has \donttest{..} examples with a syntax error, it is now
    signalled as ERROR and with correct line numbers relating to the
  * -Ex.R file, thanks to Duncan Murdoch and Sebastian Meyer's
    reports and patch proposals in PR#17501.
  * Improved determination of the correct translation domain in
    non-base packages, addressing the combination of PR#18092 and
    PR#17998 (#c6) with reports and _augmented_ patch #2904 by
    Suharto Anggono.
    Note that "R-base" is no longer the default domain e.g., for
    top-level calls to gettext(); rather translation needs explicit
    domain = * specification in such cases.
  * identical(attrib.as.set=FALSE) now works correctly with data
    frames with default row names (Thanks to Charlie Gao's PR#18179).
  * txtProgressBar() now enforces a non-zero width for argument char,
    without which no progress can be visible.
  * dimnames(table(d)) is more consistent in the case where d is a
    list with a single component, thanks to Thomas Soeiro's report to
    R-devel.
    Further, table(d1, d2) now gives an error when d1 and d2 are data
    frames as suggested by Thomas in PR#18224.
  * Fix for drawing semi-transparent lines and fills on the native
    Windows graphics device (PR#18219 and PR#16694).  Thanks to Nick
    Ray for helpful diagnosis on Bugzilla.
  * The deparser now wraps sub-expressions such as if(A) ..  with
    parentheses when needed; thanks to Duncan Murdoch's PR#18232 and
    Lionel Henry's patches there.
  * remove.packages() no longer tries to uninstall Priority: base
    packages, thanks to a report and suggestions by Colin Fay in
    PR#18227.
  * win.metafile() now has xpinch and ypinch arguments so that the
    user can override Windows' (potentially wrong) guess at device
    dimensions.
  * x[i] and x[[i]] for non-integer i should now behave in all cases
    as always documented: the index used is equivalent to
    as.integer(i) unless that would overflow where trunc(i) is used
    instead; thanks to Suharto Anggono's report and patch proposals
    in PR#17977.
  * asOneSidedFormula() now associates the resulting formula with the
    global environment rather than the evaluation environment created
    for the call.
  * &lt;bibentry&gt;$name now matches the field name case-insensitively,
    consistent with bibentry() creation and the replacement method.
  * cbind() failed to detect some length mismatches with a mixture of
    time-series and non-time-series inputs.
  * The default LaTeX style file Sweave.sty used by the RweaveLatex
    driver no longer loads the obsolete ae package; thanks to a
    report by Thomas Soeiro in PR#18271.  Furthermore, it now skips
    \usepackage[T1]{fontenc} for engines other than pdfTeX (if
    detected) or if the new [nofontenc] option is used.
  * smooth.spline() now stores its logical cv argument more safely,
    fixing a rare bug when printing, and also stores n.
  * smooth.spline(x,y,*) now computes the cv.crit statistic
    correctly, also when is.unsorted(x), fixing PR#18294.
  * The data.frame method of rbind() now warns when binding
    not-wholly-recycling vectors, by analogy to the default method
    (for matrices).
  * setAs() finds the correct class for name to when multiple
    packages define a class with that name. Thanks to Gabor Csardi
    for the report.
  * Fix for detaching a package when two classes of the same name are
    present in method signatures for the same generic. Thanks to
    Gabor Csardi for the report.
  * match.arg("", c("", "a", "B")) gives a better error message, in
    part from PR#17959, thanks to Elin Waring.
  * R CMD Sweave --clean no longer removes pre-existing files or
    subdirectories (PR#18242).
  * The quartz() device no longer splits polylines into subpaths.
    That has caused narrowly-spaced lines with many points to always
    look solid even when dashed line type was used due to dash phase
    restarts.
  * Deparsing constructs such as quote(1 + `!`(2) + 3) works again as
    before R 3.5.0, thanks to the report and patch in PR#18284 by
    Suharto Anggono.
  * as.list(f) for a factor f now keeps names(f), fixing PR#18309.
  * qbeta(.001, .9, .009) and analogous qf() calls now return a
    correct value instead of NaN or wrongly 1, all with a warning;
    thanks to the report by Ludger Goeminne in PR#18302.
  * plot.lm() failed to produce the plot of residuals vs.  factor
    levels (i.e., which=5 when leverages are constant) for models
    with character predictors (PR#17840).
  * interaction.plot(..., xtick = TRUE) misplaced the x-axis line
    (PR#18305).
  * Not strictly fixing a bug, format()ing and print()ing of
    non-finite Date and POSIXt values NaN and +/-Inf no longer show
    as NA but the respective string, e.g., Inf, for consistency with
    numeric vector's behaviour, fulfilling the wish of PR#18308.
  * R CMD check no longer runs test scripts generated from
    corresponding .Rin files twice and now signals an ERROR if
    processing an .Rin script fails.
  * tools::Rd2txt() used for plain-text help pages now renders \hrefs
    (if tools::Rd2txt_options(showURLs = TRUE)) and \urls with
    percent-encoding and standards-compliant delimiting style (angle
    brackets and no URL: prefix).  \email is now rendered with a
    mailto: prefix.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1655985600">- CHANGES IN R 4.2.1:
  NEW FEATURES:
  * New function utils::findCRANmirror() to find out if a CRAN mirror
    has been selected, otherwise fallback to the main site.  This
    behaves in the same way as tools::CRAN_package_db() and is
    intended for packages wishing to access CRAN for purposes other
    than installing packages.
    The need for this was shown by a day when the main CRAN website
    was offline and a dozen or so packages which had its URL
    hardcoded failed their checks.
  INSTALLATION on a UNIX-ALIKE:
  * The libraries searched for by --with-blas (without a value) now
    include BLIS (after OpenBLAS but before ATLAS).  And on macOS,
    the Accelerate framework (after ATLAS).  (This is patterned after
    the AX_BLAS macro from the Autoconf Archive.)
  * The included LAPACK sources have been updated to 3.10.1.
  UTILITIES:
  * The (full path to) the command tidy to be used for HTML
    validation can be set by environment variable R_TIDYCMD.
  * Setting environment variable _R_CHECK_RD_VALIDATE_RD2HTML_ to a
    false value will override R CMD check --as-cran and turn off HTML
    validation.  This provides a way to circumvent a problematic
    tidy.
    The 2006 version that ships with macOS is always skipped.
  C-LEVEL FACILITIES:
  * The undocumented legacy declarations of Sint, Sfloat, SINT_MAX
    and SINT_MIN in header R.h are deprecated.
  BUG FIXES:
  * fisher.test(d) no longer segfaults for "large" d; fixing PR#18336
    by preventing/detecting an integer overflow reliably.
  * tar(., files=*) now produces correctly the warning about invalid
    uid or gid of files, fixing PR#18344, reported by Martin Morgan.
  * tk_choose.files() with multi = FALSE misbehaved on paths
    containing spaces (PR#18334) (regression introduced in R 4.0.0).
  * sort(x, partial = ind, *) now works correctly notably for the
    non-default na.last = FALSE or TRUE, fixing PR#18335 reported by
    James Edwards.
  * Environment variable _R_CHECK_XREFS_REPOSITORIES_ is only used
    for checking .Rd cross-references in R CMD check (as documented)
    and not for other uses looking for a CRAN mirror.
  * The search for a CRAN mirror when checking packages now uses
    getOption("repos") if that specifies a CRAN mirror, even when it
    does not also specify all three Bioconductor repositories (as was
    previously required).
  * The HTML code generated by tools::Rd2HTML() has been improved to
    pass tidy 5.8.0.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1667217600">- CHANGES IN R 4.2.2:
  NEW FEATURES:
  * tools::Rdiff(useDiff = TRUE) checks for the presence of an
    external diff command and switches to useDiff = FALSE if none is
    found.  This allows R CMD Rdiff to always work.
  * On Windows, environment variable R_LIBCURL_SSL_REVOKE_BEST_EFFORT
    can be used to switch to only 'best-effort' SSL certificate
    revocation checks with the default "libcurl" download method.
    This reduces security, but may be needed for downloads to work
    with MITM proxies (PR#18379).
  * (macOS) The run-time check for libraries from XQuartz for X11 and
    Tcl/Tk no longer uses otool from the Apple Developer Tools
    (PR#18400).
  * The LaTeX style for producing the PDF manuals, Rd.sty, now loads
    the standard amsmath, amsfonts and amssymb packages for greater
    coverage of math commands in the Rd \eqn and \deqn macros.  The
    \mathscr LaTeX command is also provided (via the mathrsfs
    package, if available, or the amsfonts bundle otherwise),
    fulfilling the wish of PR#18398.
  * (Windows) The default format of readClipboard() and
    writeClipboard() has been changed to 13 (CF_UNICODETEXT).
  INSTALLATION on a UNIX-ALIKE:
  * The PDF manuals (if built) can be compacted by the new target
    make compact-pdf (at the top level or in directory doc/manual).
  * There is now configure support for LLVM clang 15 on Linux, which
    defaults to position-independent (PIE) executables whereas
    gfortran does not.
  * Many small changes to ease compilation (and suppress warnings)
    with LLVM clang 15.
  BUG FIXES:
  * Rscript -e would fail if stdin were closed (Reported by Henrik
    Bengtsson.)
  * qt(*, log.p=TRUE) in outer tails no longer produces NaN in its
    final steps, thus fixing PR#18360.
  * tools::Rd2latex() now escapes hashes and ampersands when writing
    URLs, fixing LaTeX errors with such URLs in \tabular.
  * When isGeneric(f, fdef=*) is used with mismatching names, the
    warning is better understandable; reported (with fix) in PR#18370
    by Gabe Becker.
  * poly(x, n) now works again (and is now documented) when x is a
    "Date" or "POSIXct" object, or of another class while fulfilling
    mode(x) == "numeric".  This also enables poly(x, *, raw=TRUE) for
    such variables.  Reported by Michael Chirico to R-devel.
  * write.table(), write.csv() and write.csv2() restore their
    numerical precision (internal equivalent of digits = 15) after an
    interrupt (PR#18384).
  * One can now read also byte FF from a clipboard connection
    (PR#18385).
  * source("") and source(character()) now give more helpful error
    messages.
  * R CMD check --as-cran set _R_CHECK_TIMINGS_ too late to have the
    intended effect.
  * as.POSIXlt(x) now also works with very large dates x, fixing
    PR#18401 reported by Hannes M"uhleisen.
  * Files can now be extracted even from very large zip archives
    (PR#18390, thanks to Martin Jakt).
  * Non-finite objects of class "POSIXlt" are now correctly coerced
    to classes "Date" and "POSIXct"; following up on the extension to
    format() them correctly.
  * Added methods for is.finite(), is.infinite() and is.nan() for
    "POSIXlt" date-time objects.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1678881600">- CHANGES IN R 4.2.3:
  C-LEVEL FACILITIES:
  * The definition of DL_FUNC in R_ext/Rdynload.h has been changed to
    be fully C-compliant.  This means that functions loaded _via_ for
    example R_GetCCallable need to be cast to an appropriate type if
    they have any arguments.
  * .Machine has a new element sizeof.time_t to identify old systems
    with a 32-bit type and hence a limited range of date-times (and
    limited support for dates millions of years from present).
  PACKAGE INSTALLATION:
  * (Windows) The default C++ standard had accidentally been left at
    C++11 when it was changed to C++14 on Unix.
  BUG FIXES:
  * As "POSIXlt" objects may be "partially filled" and their list
    components meant to be recycled, length() now is the length of
    the longest component.
  * as.POSIXlt.Date() could underflow for dates in the far past (more
    than half a million years BCE).
  * as.Date.POSIXlt(x) would return "1970-01-01" instead of NA in R
    4.2.2, e.g., for
    x &lt;- as.POSIXlt(c("2019-01-30","2001-1-1"))
    x$mon &lt;- c(0L, NA); as.Date(x)
  * R CMD check failed to apply enabled _R_CHECK_SUGGESTS_ONLY_ to
    examples and vignettes (regression in R 4.2.0).
  * R CMD check did not re-build vignettes in separate processes by
    default (regression in R 4.2.0).
  * Running examples from HTML documentation now restores previous
    knitr settings and options (PR#18420).
  * Quartz: fonts are now located using Core Graphics API instead of
    deprecated ATS which is no longer supported in the macOS 13 SDK
    (PR#18426).  This also addresses an issue where the currently
    used font in the Quartz device context was not correctly
    retained.
  * (Windows) Math symbols in text drawing functions are again
    rendered correctly (PR#18440).  This fixes a regression in R
    4.2.1 caused by a fix in PR#18382 which uncovered an issue in
    GraphApp due to which the symbol charset was not used with TT
    Symbol font face.
  * (Windows) Installing a package with a src/Makefile.{win,ucrt}
    file includes ~/.R/Makevars.win64 in the search for user
    makevars, as documented in "R Installation and Administration"
    and done for packages with a src/Makevars.{win,ucrt} file.
  * format(&lt;POSIXlt_w/_unbalanced_sec&gt;, "....%OS&lt;n&gt;") with n &gt; 0 no
    longer accidentally uses the unbalanced seconds, thanks to
    Suharto Anggono's report (including patch) in PR#18448.
  * solve.default(a, b) works around issues with some versions of
    LAPACK when a contains NA or NaN values.
  * When UseMethod() cannot dispatch, it no longer segfaults
    producing the error message in case of a long class(), thanks to
    Joris Vankerschaver's report (including patch) in PR#18447.
  * When example(foo, ..) produces graphics on an interactive device
    it needs to open itself, it now leaves devAskNewPage() unchanged
    even when it was FALSE, thus fixing a 14 years old '&lt;FIXME&gt;'.
  * packageDescription() again catches errors from encoding
    conversions. This also fixes broken packageVersion() in C locale
    on systems where iconv does not support transliteration.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1681128000">- add patch to build with libcurl &gt;= 8</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1682078400">- CHANGES IN R 4.3.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Calling &amp;&amp; or || with LHS or (if evaluated) RHS of length greater
    than one is now always an error, with a report of the form
    'length = 4' in coercion to 'logical(1)'
    Environment variable _R_CHECK_LENGTH_1_LOGIC2_ no longer has any
    effect.
  NEW FEATURES:
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.10.1.  (This caused some platform-dependent
    changes to package check output.)  And then to the sources from
    LAPACK version 3.11.0 (with changes only to double complex
    subroutines).
  * The included LAPACK sources have been updated to include the four
    Fortran 90 routines rather than their Fortran 77 predecessors.
    This may give some different signs in SVDs or
    eigendecompositions..  (This completes the transition to LAPACK
    3.10.x begun in R 4.2.0.)
  * The LAPACK sources have been updated to version 3.11.0.  (No new
    subroutines have been added, so this almost entirely bug fixes:
    Those fixes do affect some computations with NaNs, including R's
    NA.)
  * The parser now signals _classed_ errors, notably in case of the
    pipe operator |&gt;.  The error object and message now give line and
    column numbers, mostly as proposed and provided by Duncan Murdoch
    in PR#18328.
  * toeplitz() is now generalized for asymmetric cases, with a
    toeplitz2() variant.
  * xy.coords() and xyz.coords() and consequently, e.g., plot(x,y,
    log = "y") now signal a _classed_ warning about negative values
    of y (where log(.) is NA).  Such a warning can be specifically
    suppressed or caught otherwise.
  * Regular expression functions now check more thoroughly whether
    their inputs are valid strings (in their encoding, e.g. in
    UTF-8).
  * The performance of grep(), sub(), gsub() and strsplit() has been
    improved, particularly with perl = TRUE and fixed = TRUE.  Use of
    useBytes = TRUE for performance reasons should no longer be
    needed and is discouraged: it may lead to incorrect results.
  * apropos() gains an argument dot_internals which is used by the
    completion (help(rcompgen)) engine to also see base internals
    such as .POSIXct().
  * Support in tools::Rdiff() for comparing uncompressed PDF files is
    further reduced - see its help page.
  * qqplot(x, y, ...) gains conf.level and conf.args arguments for
    computing and plotting a confidence band for the treatment
    function transforming the distribution of x into the distribution
    of y (Switzer, 1976, _Biometrika_). Contributed by Torsten
    Hothorn.
  * Performance of package_dependencies() has been improved for cases
    when the number of dependencies is large.
  * Strings newly created by gsub(), sub() and strsplit(), when any
    of the inputs is marked as "bytes", are also marked as "bytes".
    This reduces the risk of creating invalid strings and accidental
    substitution of bytes deemed invalid.
  * Support for readLines(encoding = "bytes") has been added to allow
    processing special text files byte-by-byte, without creating
    invalid strings.
  * iconv(from = "") now takes into account any declared encoding of
    the input elements and uses it in preference to the native
    encoding.  This reduces the risk of accidental creation of
    invalid strings, particularly when different elements of the
    input have different encoding (including "bytes").
  * Package repositories in getOption("repos") are now initialized
    from the repositories file when utils is loaded (if not already
    set, e.g., in .Rprofile).  (From a report and patch proposal by
    Gabriel Becker in PR#18405.)
  * compactPDF() gets a verbose option.
  * type.convert() and hence read.table() get new option tryLogical =
    TRUE with back compatible default.  When set to false, converts
    "F" or "T" columns to character.
  * Added new unit prefixes "R" and "Q" for abbreviating
    (unrealistically large) sizes beyond 10^{27} in standard = "SI",
    thanks to Henrik Bengtsson's PR#18435.
  * as.data.frame()'s default method now also works fine with atomic
    objects inheriting from classes such as "roman", "octmode" and
    "hexmode", such fulfilling the wish of PR#18421, by Benjamin
    Feakins.
  * The as.data.frame.vector() utility now errors for wrong-length
    row.names.  It warned for almost six years, with "Will be an
    error!".
  * sessionInfo() now also contains La_version() and reports codepage
    and timezone when relevant, in both print() and toLatex() methods
    which also get new option tzone for displaying timezone
    information when locale = FALSE.
  * New function R_compiled_by() reports the C and Fortran compilers
    used to build R, if known.
  * predict(&lt;lm&gt;, newdata = *) no longer unnecessarily creates an
    offset of all 0s.
  * solve() for complex inputs now uses argument tol and by default
    checks for 'computational singularity' (as it long has done for
    numeric inputs).
  * predict(&lt;rank-deficient lm&gt;, newdata=*) now obeys a new argument
    rankdeficient, with new default "warnif", warning only if there
    are non-estimable cases in newdata.  Other options include
    rankdeficient = "NA", predicting NA for non-estimable newdata
    cases.  This addresses PR#15072 by Russ Lenth and is based on his
    original proposal and discussions in PR#16158 also by David Firth
    and Elin Waring.  Still somewhat experimental.
  * Rgui console implementation now works better with the NVDA screen
    reader when the full blinking cursor is selected.  The underlying
    improvements in cursor handling may help also other screen
    readers on Windows.
  * The drop-field control in GraphApp can now be left with the TAB
    key and all controls can be navigated in the reverse order using
    the Shift+TAB key, improving accessibility of the Rgui
    configuration editor.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now fully accurate
    (instead of to "only" minimally five digits).
  * demo(error.catching) now also shows off withWarnings() and
    tryCatchWEMs().
  * As an experimental feature the placeholder _ can now also be used
    in the rhs of a forward pipe |&gt; expression as the first argument
    in an extraction call, such as _$coef. More generally, it can be
    used as the head of a chain of extractions, such as _$coef[[2]].
  * Spaces in the environment variable used to choose the R session's
    temporary directory (TMPDIR, TMP and TEMP are tried in turn) are
    now fatal.  (On Windows the 'short path' version of the path is
    tried and used if that does not contain a space.)
  * all.equal.numeric() gets a new optional switch giveErr to return
    the numeric error as attribute.  Relatedly,
    stopifnot(all.equal&lt;some&gt;(a, b, ..)) is as "smart" now, as
    stopifnot(all.equal(....)) has been already, thus allowing
    customized all.equal&lt;Some&gt;() wrappers.
  * R on Windows is now able to work with path names longer than 260
    characters when these are enabled in the system (requires at
    least Windows 10 version 1607).  Packages should be updated to
    work with long paths as well, instead of assuming PATH_MAX to be
    the maximum length.  Custom front-ends and applications embedding
    R need to update their manifests if they wish to allow this
    feature.  See
    &lt;https://blog.r-project.org/2023/03/07/path-length-limit-on-windows&gt;
    for more information.
  * 'Object not found' and 'Missing argument' errors now give a more
    accurate error context. Patch provided by Lionel Henry in
    PR#18241.
  * The @ operator is now an S3 generic. Based on contributions by
    Tomasz Kalinowski in PR#18482.
  * New generic chooseOpsMethod() provides a mechanism for objects to
    resolve cases where two suitable methods are found for an Ops
    Group Generic. This supports experimenting with alternative
    object systems. Based on contributions by Tomasz Kalinowski in
    PR#18484.
  * inherits(x, what) now accepts values other than a simple
    character vector for argument what. A new generic, nameOfClass(),
    is called to resolve the class name from what. This supports
    experimenting with alternative object systems. Based on
    contributions by Tomasz Kalinowski in PR#18485.
  * Detection of BLAS/LAPACK in use (sessionInfo()) with FlexiBLAS
    now reports the current backend.
  * The "data.frame" method for subset() now warns about extraneous
    arguments, typically catching the use of = instead of == in the
    subset expression.
  * Calling a:b when numeric a or b is longer than one may now be
    made into an error by setting environment variable
    _R_CHECK_LENGTH_COLON_ to a true value, along the proposal in
    PR#18419 by Henrik Bengtsson.
  * density(x, weights = *) now warns if automatic bandwidth
    selection happens without using weights; new optional warnWbw may
    suppress the warning.  Prompted by Christoph Dalitz' PR#18490 and
    its discussants.
  * rm(list = *) is faster and more readable thanks to Kevin Ushey's
    PR#18492.
  * The plot.lm() function no longer produces a normal Q-Q plot for
    GLMs. Instead it plots a half-normal Q-Q plot of the absolute
    value of the standardized deviance residuals.
  * The print() method for class "summary.glm" no longer shows
    summary statistics for the deviance residuals by default.  Its
    optional argument show.residuals can be used to show them if
    required.
  * The tapply() function now accepts a data frame as its X argument,
    and allows INDEX to be a formula in that case. by.data.frame()
    similarly allows INDICES to be a formula.
  * The performance of df[j] &lt;- value (including for missing j) and
    write.table(df) has been improved for data frames df with a large
    number of columns.  (Thanks to Gabriel Becker's PR#18500,
    PR#18503 and discussants, prompted by a report from Toby Dylan
    Hocking on the R-devel mailing list.)
  * The matrix multiply operator %*% is now an S3 generic, belonging
    to new group generic matrixOps.  From Tomasz Kalinowski's
    contribution in PR#18483.
  * New function array2DF() to convert arrays to data frames,
    particularly useful for the list arrays created by tapply().
  DATES and TIMES:
  * On platforms where (non-UTC) datetimes before 1902 (or before
    1900 as with system functions on recent macOS) are guessed by
    extrapolating time zones from 1902-2037, there is a warning at
    the first use of extrapolation in a session.  (As all time zones
    post 2037 are extrapolation, we do not warn on those.)
  * (Platforms using --with-internal-tzone, including Windows and by
    default macOS). How years are printed in dates or date-times can
    be controlled by environment variable R_PAD_YEARS_BY_ZERO.  The
    default remains to pad to 4 digits by zeroes, but setting value
    no gives no padding (as used by default by glibc).
  * strftime() tries harder to determine the offset for the "%z"
    format, and succeeds on the mainstream R platforms.
  * strftime() has a limit of 2048 bytes on the string produced -
    attempting to exceed this is an error.  (Previously it silently
    truncated at 255 bytes.)
  * sessionInfo() records (and by default prints) the system time
    zone as part of the locale information.  Also, the source
    (system/internal) of the date-time conversion and printing
    functions.
  * Objects of class "POSIXlt" created in this version of R always
    have 11 components: component zone is always set, and component
    gmtoff is set for times in UTC and usually set on the (almost
    all) platforms which have C-level support, otherwise is NA.
  * There are comprehensive validity checks on the structure of
    objects of class "POSIXlt" when converting (including formatting
    and printing).  (This avoids mis-conversions of hand-crafted
    objects.)
  * There is some support for using the native date-time routines on
    macOS: this is only viable on recent versions (e.g. 12.6 and 13)
    and does get wrong some historical changes (before 1900, during
    WWII).  Use of --with-internal-tzone remains the default.
  * as.POSIXct(&lt;numeric&gt;) and as.POSIXlt(.) (without specifying
    origin) now work.  So does as.Date(&lt;numeric&gt;).
  * as.Date.POSIXct(., tz) now treats several tz values, notably
    "GMT" as equivalent to "UTC", proposed and improved by Michael
    Chirico and Joshua Ulrich in PR#17674.
  * Experimental balancePOSIXlt() utility allows using "ragged" and
    or out-of-range "POSIXlt" objects more correctly, e.g., in
    subsetting and subassignments.  Such objects are now documented.
    More experimentally, a "POSIXlt" object may have an attribute
    "balanced" indicating if it is known to be filled or fully
    balanced.
  * Functions axis.Date() and axis.POSIXct() are rewritten to gain
    better default tick locations and better default formats by using
    prettyDate(). Thanks to Swetlana Herbrandt.
  * The mapping of Windows' names for time zones to IANA's 'Olson'
    names has been updated.  When ICU is available (it is by
    default), it is used to get a mapping for the current region set
    in Windows.  This can be overridden by setting environment
    variable TZ to the desired Olson name - see OlsonNames() for
    those currently available.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 16
    and so packages that provide graphics devices should be
    reinstalled.
  * The grDevices and grid packages have new functions for rendering
    typeset glyphs, primarily: grDevices::glyphInfo() and
    grid::grid.glyph().
    Rendering of typeset glyphs is only supported so far on the
    Cairo-based graphics devices and on the pdf() and quartz()
    devices.
  * The defined behaviour for "clear" and "source" compositing
    operators (via grid::grid.group()) has been changed (to align
    better with simple interpretation of original Porter-Duff
    definitions).
  * Support for gradients, patterns, clipping paths, masks, groups,
    compositing operators, and affine transformations has been added
    to the quartz() device.
  INSTALLATION on a UNIX-ALIKE:
  * A system installation of generic LAPACK 3.10.0 or later will be
    preferred to the version in the R sources.
    configure option --with-lapack=no (equivalently --without-lapack)
    forces compilation of the internal LAPACK sources.
    If --with-lapack is not specified, a system liblapack is looked
    for and used if it reports version 3.10.0 or later and does not
    contain BLAS routines.
    Packages using LAPACK will need to be reinstalled if this changes
    to using an external library.
  * On aarch64 Linux platforms using GCC, configure now defaults to
  - fPIC (instead of -fpic), as desired in PR#18326.
  * configure now checks conversion of datetimes between POSIXlt and
    POSIXct around year 2020.  Failure (which has been seen on
    platforms missing tzdata) is fatal.
  * If configure option --with-valgrind-instrumentation is given
    value 1 or 2, option --with-system-valgrind-headers is now the
    default and ignored (with a warning).  It is highly recommended
    that the system headers are installed alongside valgrind: they
    are part of its packaging on some Linux distributions and
    packaged separately (e.g. in the valgrind-devel RPM) on others.
    configure will give a warning if they are not found.
    The system headers will be required in a future release of R to
    build with valgrind instrumentation.
  * libcurl 8.x is now accepted by configure: despite a change in
    major version number it changes neither API nor ABI.
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools43, an update of the Rtools42 toolchain.  It is
    based on gcc 12 and newer versions of MinGW-W64, binutils and
    libraries.  At this time R-devel can still be built using
    Rtools42 without changes, but when R-devel is installed via the
    installer, it will by default look for Rtools43.
  * Old make targets rsync-extsoft and 32-bit ones that are no longer
    needed have been removed.
  * Default builds (including for packages) no longer select C99.
    Thus the C standard used is the default for the compiler, which
    for the toolchain in Rtools43 is C17.  (This is consistent with
    Unix builds.)
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++17 where
    available (which it is on all currently checked platforms): if
    not C++14 or C++11 is used if available otherwise C++ is not
    supported.
  * USE_FC_LEN_T is the default: this uses the correct
    (compiler-dependent) prototypes for Fortran BLAS/LAPACK routines
    called from C/C++, and requires adjustment of many such calls -
    see 'Writing R Extensions' SS6.6.1.
  * There is initial support for C++23 as several compilers are now
    supporting -std=c++23 or -std=c++2b or similar.  As for C++20,
    there no additional configure checks for C++23 features beyond a
    check that the compiler reports a __cplusplus value greater than
    that in the C++20 standard.  C++ feature tests should be used.
  * There is support for a package to indicate the version of the C
    standard which should be used to compile it, and for the
    installing user to specify this.  In most cases R defaults to the
    C compiler's default standard which is C17 (a `bug-fix' of C11) -
    earlier versions of R or compilers may have defaulted to C99.
    Current options are:
    USE_C17 Use a standard that is at most C17.  The intention is to
    allow legacy packages to still be installed when later C
    standards become the default, including packages using new
    keywords as identifiers or with K&amp;R-style function
    declarations.  This will use C17 if available, falling back
    to C11.
    USE_C90 Use the C90 (aka C89) standard.  (As that standard did
    not require compilers to identify that version, all we can
    verify is that the compiler does not claim to be using a
    later standard.  It may accept C99 features - for example
    clang accepts // to make comments.)
    USE_C99 Use the C99 standard. This should be rarely needed - it
    avoids the few new features of C11/C17 which can be useful if
    a package assumes them if C17 is specified and they are not
    implemented.
    USE_C23 Use C23 (or in future, later).  Compiler/library support
    for C23 is still being implemented, but LLVM clang from
    15.0.0 and the upcoming GCC 13 have quite extensive support.
    These can be specified as part of the SystemRequirements field in
    the package's DESCRIPTION file or _via_ options --use-C17 and so
    on of R CMD INSTALL and R CMD SHLIB.
    For further details see "Writing R Extensions" SS1.2.5.
  * (Windows) A src/Makefile.ucrt or src/Makefile.win file is now
    included after R_HOME/etcR_ARCH/Makeconf and so no longer needs
    to include that file itself.  Installation of a package with such
    a file now uses a site Makevars file in the same way as a package
    with a src/Makevars.win file would.
  * configure is now passed crucial variables such as CC and CFLAGS
    in its environment, as many packages were not setting them (as
    documented in 'Writing R Extensions' SS1.2).
    This has most effect where configure is used to compile parts of
    the package - most often by cmake or libtool which obfuscate the
    actual compile commands used.
    Also used for configure.win and configure.ucrt on Windows.
  FORTRAN FLAGS:
  * The flag -fno-optimize-sibling-calls is no longer forced for
    gfortran 7 and later.  It should no longer be needed now using
    'hidden' character-length arguments when calling BLAS/LAPACK
    routines from C/C++ is the default even for packages.  (Unless
    perhaps packages call Fortran code from C/C++ without using R's
    headers and without allowing for these arguments.)
  C-LEVEL FACILITIES:
  * The deprecated S-compatibility macros DOUBLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * The deprecated legacy typedefs of Sint and Sfloat in header R.h
    are no longer defined, and that header no longer includes header
    limits.h from C nor climits from C++.
  * New macro CAD5R() is provided in Rinternals.h and used in a few
    places in the R sources.
  * ALTREP now supports VECSXP vectors. Contributed by Gabor Csardi
    in PR#17620.
  * The Rcomplex definition (in header R_ext/Complex.h) has been
    extended to prevent possible mis-compilation when interfacing
    with Fortran (PR#18430).  The new definition causes compiler
    warnings with static initializers such as {1, 2}, which can be
    changed to {.r=1, .i=2}.
    Using the new definition from C++ depends on compiler extensions
    supporting C features that have not been incorporated into the
    C++ standards but are available in g++ and clang++: this may
    result in C++ compiler warnings but these have been worked around
    for recent versions of common compilers (GCC, Apple/LLVM clang,
    Intel).
    It is intended to change the inclusion of header R_ext/Complex.h
    by other R headers, so C/C++ code files which make use of
    Rcomplex should include that header explicitly.
  UTILITIES:
  * R CMD check does more checking of package .Rd files, warning
    about invalid email addresses and (some) invalid URIs and noting
    empty \item labels in description lists.
  * R CMD check now also reports problems when reading package news
    in md (file NEWS.md) and (optionally) plain text (file NEWS)
    formats.
  * _R_CHECK_TIMINGS_ defaults to a value from the environment even
    for R CMD check --as-cran; this allows for exceptionally fast or
    slow platforms.
    It now applies to checking PDF and HTML versions of the manuals,
    and 'checking CRAN incoming feasibility'.
  * R CMD check can optionally (but included in --as-cran) check
    whether HTML math rendering _via_ KaTeX works for the package .Rd
    files.
  * Non-interactive debugger invocations can be trapped by setting
    the environment variable _R_CHECK_BROWSER_NONINTERACTIVE_ to a
    true value.  This is enabled by R CMD check --as-cran to detect
    the use of leftover browser() statements in the package.
  * The use of sprintf and vsprintf from C/C++ has been deprecated in
    macOS 13 and is a known security risk.  R CMD check now reports
    (on all platforms) if their use is found in compiled code:
    replace by snprintf or vsnprintf respectively. [*NB:* whether
    such calls get compiled into the package is platform-dependent.]
  * Where recorded at installation, R CMD check reports the C and
    Fortran compilers used to build R.
    It reports the OS in use (if known, as given by osVersion) as
    well as that R was built for.
    It notes if a C++ standard was specified which is older than the
    current default: many packages have used C++11 to mean 'not
    C++98' - as C++11 is the minimum supported since R 4.0.0, that
    specification can probably be removed.
  * R CMD INSTALL reports the compilers (and on macOS, the SDK) used,
    and this is copied to the output of R CMD check.
    Where a C++ standard is specified, it is reported.
  * R CMD check's 'checking compilation flags in Makevars' has been
    relaxed to accept the use of flags such as -std=f2008 in
    PKG_FFLAGS.
  * tools::buildVignettes() has a new argument skip, which is used by
    R CMD check to skip (and note) vignettes with unavailable
    \VignetteDepends (PR#18318).
  * New generic .AtNames() added to enable class-specific completions
    after @. The formerly internal function findMatches() is now
    exported, mainly for use in methods for .DollarNames() and
    .AtNames().
  DEPRECATED AND DEFUNCT:
  * default.stringsAsFactors() is defunct.
  * Calling as.data.frame.&lt;class&gt;() directly (for 12 atomic classes)
    is going to be formally deprecated, currently activated by
    setting the environment variable
    _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ to non-empty, which also
    happens in R CMD check --as-cran.
  BUG FIXES:
  * Hashed environments with sizes less than 5 can now grow.
    (Reported to R-devel by Duncan Garmonsway.)
  * as.character(&lt;Rd&gt;, deparse = TRUE) failed to re-escape curly
    braces in LaTeX-like text.  (Reported by Hadley Wickham in
    PR#18324.)
  * library() now passes its lib.loc argument when requiring Depends
    packages; reported (with fix) in PR#18331 by Mikael Jagan.
  * R CMD Stangle: improved message about 'Output' files.
  * head(x, n) and tail(x, n) now signal an error if n is not
    numeric, instead of incidentally "working" sometimes returning
    all of x.  Reported and discussed by Colin Fay, in PR#18357.
  * The "lm" method for summary() now gives the correct F-statistic
    when the model contains an offset.  Reported in PR#18008.
  * C() and `contrasts&lt;-`() now preserve factor level names when
    given a function object (as opposed a function name which did
    preserve names). Reported in PR#17616.
  * c(a = 1, 2)[[]] no longer matches 2 but rather signals a
    _classed_ error.  Reported and analysed by Davis Vaughan in
    PR#18367, a duplicate of PR#18004, by Jan Meis et al.  For
    consistency, NULL[[]] is also erroneous now.  x[[]] &lt;- v gives an
    error of the same class "MissingSubscriptError".
  * The relist() function of utils now supports NULL elements in the
    skeleton (PR#15854).
  * ordered(levels = *) (missing x) now works analogously to factor(,
    ordered=TRUE); reported (with fix) by Achim Zeileis in PR#18389.
  * User-defined Rd macro definitions can now span multiple lines,
    thanks to a patch from Duncan Murdoch. Previously, the Rd parser
    silently ignored everything after the first line.
  * Plain-text help (tools::Rd2txt()) now preserves an initial blank
    line for text following description list items.
  * tools::Rd2HTML() and tools::Rd2latex() no longer split \arguments
    and \value lists at Rd comments.
  * tools::Rd2latex() now correctly handles optional text outside
    \items of argument lists as well as bracketed text at the
    beginning of sections, e.g., \value{[NULL]}.
  * as.character(&lt;POSIXt&gt;) now behaves more in line with the methods
    for atomic vectors such as numbers, and is no longer influenced
    by options().  Ditto for as.character(&lt;Date&gt;).  The
    as.character() method gets arguments digits and OutDec with
    defaults _not_ depending on options().  Use of as.character(*,
    format = .) now warns.
  * Similarly, the as.character.hexmode() and *.octmode() methods
    also behave as good citizen methods and back compatibility option
    keepStr = TRUE.
  * The as.POSIXlt(&lt;POSIXlt&gt;) and as.POSIXct(&lt;POSIXct&gt;) default
    methods now do obey their tz argument, also in this case.
  * as.POSIXlt(&lt;Date&gt;) now does apply a tz (time zone) argument, as
    does as.POSIXct(); partly suggested by Roland Fuss on the R-devel
    mailing list.
  * as.Date.POSIXlt(x) now also works when the list components are of
    unequal length, aka "partially filled" or "ragged".
  * expand.model.frame() looked up variables in the wrong environment
    when applied to models fitted without data.  Reported in
    PR#18414.
  * time() now (also) uses the ts.eps = getOption("ts.eps") argument
    and thus by default rounds values very close to the start (or
    end) of a year.  Based on a proposal by Andre"i V. Kostyrka on
    R-help.
  * Printing of a factanal() result with just one factor and sort =
    TRUE now works regularly, fixing PR#17863 by Timothy Bates,
    thanks to the 'R Contributors' working group.
  * Printing 0-length objects of class "factor", "roman", "hexmode",
    "octmode", "person", "bibentry", or "citation" now prints
    something better, one of which fixes PR#18422, reported by
    Benjamin Feakins.
  * Sys.timezone() queries timedatectl only if systemd is loaded;
    addressing a report by Jan Gorecki in PR#17421.
  * The formula method of cor.test() had scoping problems when
    environment(formula) was not the calling environment; reported
    with a patch proposal by Mao Kobayashi in PR#18439.
  * attach() of an environment with active bindings now preserves the
    active bindings.  Reported by Kevin Ushey in PR#18425.
  * BLAS detection now works also with system-provided libraries not
    available as regular files.  This fixes detection of the
    Accelerate framework on macOS since Big Sur.  Reported by David
    Novgorodsky.
  * download.file() gives a helpful error message in case of an
    invalid download.file.method option, thanks to Colin Fay's report
    in PR#18455.
  * Sporadic crashes of Rterm when using completion have been fixed.
  * Rprof() is now more reliable.  A livelock in thread
    initialization with too short sampling interval has been fixed on
    macOS.  A deadlock in using the C runtime has been fixed on
    Windows.  A potential deadlock has been prevented on Unix.
  * Cursor placement in Rgui now works even after a fixed-width font
    is selected.
  * Mandatory options (options()) are now set on startup so that
    saving and restoring them always works (PR#18372).
  * Package installation, R CMD INSTALL or install.packages(*), now
    parses each of the &lt;pkg&gt;/R/*.R files individually instead of
    first concatenating and then parse()ing the large resulting file.
    This allows parser or syntax errors to be diagnosed with correct
    file names and line numbers, thanks to Simon Dedman's report and
    Bill Dunlap's patch in PR#17859.
    This _does_ require syntactically self contained R source files
    now, fixing another inadvertent bug.
  * predict.lm(&lt;model with offset&gt;) now finds the offset in the
    correct environment, thanks to Andr'e Gillibert's report and patch
    in PR#18456.
  * getInitial(&lt;formula&gt;) now finds the selfStart model in the
    correct environment.  (Reported by Ivan Krylov in PR#18368.)
  * Fix for possible segfault when using recently-added graphics
    features, such as gradients, clipping paths, masks, and groups
    with pdf(file=NULL).
  * class(m) &lt;- class(m) no longer changes a matrix m by adding a
    class _attribute_.
  * packageDate(pkg) now only warns once if there is no pkg.
  * When ts() creates a multivariate time series, "mts", it also
    inherits from "array" now, and is.mts() is documented _and_
    stricter.
  * Rd2txt() now preserves line breaks of \verb Rd content and from
    duplicated \cr.  The former also fixes the rendering of verbatim
    output from Rd \Sexpr in plain-text help.
  * uniroot(f, interval) should no longer wrongly converge _outside_
    the interval in some cases where abs(f(x)) == Inf for an x at the
    interval boundary, thanks to posts by Ben Bolker and Serguei
    Sokol on R-devel.
  * Vectorized alpha handling in palette functions such as in gray(),
    rainbow(), or hcl.colors() works correctly now, thanks to Achim
    Zeileis' report and patch in PR#18476.
  * Formatting and print()ing of bibentry objects has dropped the
    deprecated citation.bibtex.max argument, such that the bibtex
    argument's default for print.bibentry() depends directly on the
    citation.bibtex.max option, whereas in format.bibentry() the
    option no longer applies.
  * Attempting to use a character string naming a foreign function
    entry point in a foreign function call in a package will now
    signal an error if the packages has called R_forceSymbols to
    specify that symbols must be used.
  * An error in table() could permanently set options(warn=2)
    promoting all subsequent warnings to errors.
  * The sigma() function gave misleading results for binary GLMs.  A
    new method for objects of class "glm" returns the square root of
    the estimate of the dispersion parameter using the same
    calculation as summary.glm().
  * bs() and ns() in the (typical) case of automatic knot
    construction, when some of the supposedly inner knots coincide
    with boundary knots, now moves them inside (with a warning),
    building on PR#18442 by Ben Bolker.
  * R CMD on Windows now skips the site profile with --no-site-file
    and --vanilla even when R_PROFILE is set (PR#18512, from Kevin
    Ushey).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1686916800">- CHANGES IN R 4.3.1:
  C-LEVEL FACILITIES:
  * The C-level API version of R's integrate(), Rdqags() in Applic.h,
    now returns the correct number of integrand evaluations neval,
    fixing PR#18515 reported and diagnosed by Stephen Wade.
  * The C prototypes for LAPACK calls dspgv and dtptrs in
    R_exts/Lapack.h had one too many and one too few character length
    arguments - but this has not caused any known issues. To get the
    corrected prototypes, include
    [#]include &lt;Rconfig.h&gt; // for PR18534fixed
    [#]ifdef PR18534fixed
    [#] define usePR18534fix 1
    [#]endif
    [#]include &lt;R_exts/Lapack.h&gt;
    in your C/C++ code (PR#18534).
  INSTALLATION:
  * Many of the checks of esoteric Internet operations and those
    using unreliable external sites have been moved to a new target
    that is not run by default and primarily intended for the core
    developers.  To run them use
    cd tests; make test-Internet-dev
  BUG FIXES:
  * .S3methods(), typically called from methods(), again marks
    methods from package base as visible.
    Also, the visibility of non-base methods is again determined by
    the method's presence in search().
  * tools::Rdiff() is now more robust against invalid strings, fixing
    installation tests on Windows without Rtools installed
    (PR#18530).
  * Fix (new) bug in hcl.colors(2, *), by Achim Zeileis (PR#18523).
  * head(., &lt;illegal&gt;) and tail(..) now produce more useful "Error in
    ...." error messages, fixing PR#18362.
  * Package code syntax on Windows is checked in UTF-8 when UTF-8 is
    the native encoding.
  * na.contiguous(x) now also returns the first run, when it is at
    the beginning and there is a later one of the same length;
    reported to R-devel, including a fix, by Georgi Boshnakov.
    Further, by default, it modifies only an existing attr(*,"tsp")
    but otherwise no longer sets one.
  * chol(&lt;not pos.def&gt;, pivot = &lt;T|F&gt;) now gives a correct error or
    warning message (depending on pivot), thanks to Mikael Jagan's
    (PR#18541).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1699012800">- CHANGES IN R 4.3.2:
  NEW FEATURES:
  * The default initialization of the "repos" option from the
    repositories file at startup can be skipped by setting
    environment variable R_REPOSITORIES to NULL such that
    getOption("repos") is empty if not set elsewhere.
  * qr.X() is now an implicit S4 generic in methods.
  * iconv(to = "ASCII//TRANSLIT") is emulated using substitution on
    platforms which do not support it (notably Alpine Linux).  This
    should give a human-readable conversion in ASCII on all platforms
    (rather than NA_character_).
  * trans3d() gains options continuous and verbose addressing the
    problem of possible "wrap around" when projecting too long
    curves, as reported by Achim Zeileis in PR#18537.
  * tools::showNonASCII() has been rewritten to work better on macOS
    14 (which has a changed implementation of iconv()).
  * tiff(type = "quartz") (the default on macOS) now warns if
    compression is specified: it continues to be ignored.
  INSTALLATION on a UNIX-ALIKE:
  * There is some support for building with Intel's LLVM-based
    compilers on x86_64 Linux, such as (C) icx, (C++) ipcx and
    (Fortran) ifx from oneAPI 2023.x.y.
  * There is support for using LLVM's flang-new as the Fortran
    compiler from LLVM 16.0.x (preferably 17.0.0 or later).
  UTILITIES:
  * R CMD check reports the use of the Fortran 90 random number
    generator RANDOM_NUMBER() and the subroutines to initialize it.
    'Writing R Extensions' has example code to use R's RNGs from
    Fortran.
  BUG FIXES:
  * substr(x, n, L) &lt;- cc now works (more) correctly for multibyte
    UTF-8 strings x when L &gt; nchar(x), thanks to a report and patch
    by 'Architect 95'.
  * contrib.url(character()) now returns 0-length character() as
    documented, which also avoids spurious warnings from
    available.packages() et al. in the edge case of an empty vector
    of repository URLs.
  * readChar(., 4e8) no longer fails, thanks to Kodi Arfer's report
    (PR#18557).
  * lapply(&lt;list&gt;, as.data.frame) no longer warns falsely for some
    base vector components.
  * Communication between parent and child processes in the multicore
    part of parallel could fail on platforms that do not support an
    arbitrarily large payload in system functions read()/write() on
    pipes (seen on macOS where a restriction to INT_MAX bytes is
    documented, without doing a partial read unlike Linux). The
    payload is now split into 1Gb chunks to avoid that problem.
    (PR#18571)
  * qqplot(x,y, conf.level=.) gives better confidence bounds when
    length(x) != length(y), thanks to Alexander Ploner's report and
    patch proposal (PR#18557).
  * norm(&lt;0-length&gt;, "2") now gives zero instead of an error, as all
    the other norm types, thanks to Mikael Jagan's PR#18542.
  * Build-stage Rd macros \packageAuthor and \packageMaintainer now
    process Authors@R, fixing NA results when the package DESCRIPTION
    omits Author and Maintainer fields.
  * Formatting and printing complex numbers could give things like
    0.1683-0i because of rounding error: -0i is now replaced by +0i.
  * postscript() refused to accept a title comment containing the
    letter "W" (PR#18599).
  * isoreg(c(1,Inf)) signals an error instead of segfaulting, fixing
    PR#18603.
  * tiff(type = "Xlib") was only outputting the last page of
    multi-page plots.
  * tools::latexToUtf8() again knows about \~{n} and other letters
    with tilde, fixing a regression in R 4.3.0, and about \^{i} as an
    alternative to \^{\i} (similarly with other accents).
    Furthermore, LaTeX codes for accented I letters are now correctly
    converted, also fixing related mistakes in
    tools::encoded_text_to_latex().
  * tar(*, tar = "internal") no longer creates out-of-spec tar files
    in the very rare case of user or group names longer than 32
    bytes, fixing PR#17871 with thanks to Ivan Krylov.
  * When using the "internal" timezone datetime code, adding a
    fraction of a second no longer adds one second, fixing PR#16856
    from a patch by Ivan Krylov.
  * tools::checkRd() no longer produces spurious notes about
    "unnecessary braces" from multi-line Rd results of \Sexpr macros.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1709208000">- CHANGES IN R 4.3.3:
  NEW FEATURES:
  * iconv() now fixes up variant encoding names such as "utf8"
    case-insensitively.
  DEPRECATED AND DEFUNCT:
  * The legacy encoding = "MacRoman" is deprecated in pdf() and
    postscript(): support was incomplete in earlier versions of R.
  BUG FIXES:
  * Arguments are now properly forwarded to methods on S4 generics
    with ... in the middle of their formal arguments. This was broken
    for the case when a method introduced an argument but did not
    include ... in its own formals. Thanks to Herv'e Pag`es for the
    report PR#18538.
  * Some invalid file arguments to pictex(), postscript() and xfig()
    opened a file called NA rather than throw an error.  These
    included postscript(NULL) (which some people expected to work
    like pdf(NULL)).
  * Passing filename = NA to svg(), cairo_pdf(), cairo_ps() or the
    Cairo-based bitmap devices opened a file called NA: it now throws
    an error.
  * quartz(file = NA) opened a file called NA, including when used as
    a Quartz-based bitmap device.  It now gives an error.
  * rank(&lt;long vector&gt;) now works, fixing PR#18617, thanks to Ilia
    Kats.
  * seq.int() did not adequately check its length.out argument.
  * match(&lt;POSIXct&gt;, .) is correct again for differing time zones,
    ditto for "POSIXlt", fixing PR#18618 reported by Bastian Klein.
  * drop.terms(*, dropx = &lt;0-length&gt;) now works, fixing PR#18563 as
    proposed by Mikael Jagan.
  * drop.terms(*) keeps + offset(.) terms when it should, PR#18565,
    and drop.terms() no longer makes up a response, PR#18566, fixing
    both bugs thanks to Mikael Jagan.
  * getS3method("t", "test") no longer finds the t.test() function,
    fixing PR#18627.
  * pdf() and postscript() support for the documented Adobe encodings
    "Greek" and "Cyrilllic" was missing (although the corresponding
    Windows' codepages could be used).
  * Computations of glyph metric information for pdf() and
    postscript() did not take into account that transliteration could
    replace one character by two or more (only seen on macOS 14) and
    typically warned that the information was not known.
  * rank(x) no longer overflows during integer addition, when
    computing rank average for largish but not-yet long vector x,
    fixing PR#18630, thanks to Ilia Kats.
  * list.files() on Windows now returns also files with names longer
    that 260 bytes (the Windows limit is 260 characters).
    Previously, some file names particularly with 'East Asian'
    characters were omitted.
  * cov2cor(&lt;0 x 0&gt;) now works, fixing PR#18423 thanks to Mikael
    Jagan and Elin Waring.
  * cov2cor(&lt;negative diagonal&gt;) and similar now give one warning
    instead of two, with better wording, fixing PR#18424 thanks to
    Mikael Jagan.
  * tools:: startDynamicHelp() now ensures port is in proper range,
    fixing PR#18645.
  * pbeta(x, a,b) is correct now for x=0 or 1 in the boundary cases
    where a or b or both are 0, fixing PR#18672 thanks to Michael
    Fay.
  * pmatch(x, table) for large table, also called for data frame row
    selection, dfrm[nm, ], is now interruptible, fixing PR#18656.
  * predict(&lt;rank-deficient lm&gt;, newdata=*) fix computing of nbasis,
    see Russ Lenth's comment 29 in PR#16158.
  * Added a work-around for a bug in macOS 14.3.1 and higher which
    prevents R plots in the Quartz Cocoa device from updating on
    screen.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1713960000">- CHANGES IN R 4.4.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Startup banners, R --version, sessionInfo() and R CMD check no
    longer report (64-bit) as part of the platform as this is almost
    universal - the increasingly rare 32-bit platforms will still
    report (32-bit).
    On Windows, ditto for window titles.
  * is.atomic(NULL) now returns FALSE, as NULL is not an atomic
    vector.  Strict back-compatibility would replace is.atomic(foo)
    by (is.null(foo) || is.atomic(foo)) but should happen only
    sparingly.
  NEW FEATURES:
  * The confint() methods for "glm" and "nls" objects have been
    copied to the stats package.  Previously, they were stubs which
    called versions in package MASS. The MASS namespace is no longer
    loaded if you invoke (say) confint(glmfit).  Further, the "glm"
    method for profile() and the plot() and pairs() methods for class
    "profile" have been copied from MASS to stats.  (profile.nls()
    and plot.profile.nls() were already in stats.)
  * The confint() and profile methods for "glm" objects have gained a
    possibility to do profiling based on the Rao Score statistic in
    addition to the default Likelihood Ratio. This is controlled by a
    new test = argument.
  * The pairs() method for "profile" objects has been extended with a
    which = argument to allow plotting only a subset of the
    parameters.
  * The "glm" method for anova() computes test statistics and
    p-values by default, using a chi-squared test or an F test
    depending on whether the dispersion is fixed or free.  Test
    statistics can be suppressed by giving argument test a false
    logical value.
  * In setRepositories() the repositories can be set using their
    names via name = instead of index ind =.
  * methods() and .S3methods() gain a all.names option for the (rare)
    case where functions starting with a . should be included.
  * Serializations can now be interrupted (e.g., by Ctrl-C on a
    Unix-alike) if they take too long, e.g., from save.image(),
    thanks to suggestions by Ivan Krylov and others on R-devel.
  * New startup option --max-connections to set the maximum number of
    simultaneous connections for the session.  Defaults to 128 as
    before: allowed values up to 4096 (but resource limits may in
    practice restrict to smaller values).
  * R on Windows (since Windows 10 2004) now uses the new Segment
    Heap allocator. This may improve performance of some
    memory-intensive applications.
  * When R packages are built, typically by R CMD build &lt;pkg&gt;, the
    new --user=&lt;build_user&gt; option overrides the (internally
    determined) user name, currently Sys.info()["user"] or LOGNAME.
    This is a (modified) fulfillment of Will Landau's suggestion in
    PR#17530.
  * tools::testInstalledBasic() gets new optional arguments outDir
    and testSrcdir, e.g., allowing to use it in a &lt;builddir&gt; !=
    &lt;srcdir&gt; setup, and in standard "binary" Windows installation
  * if* a source tests/ folder is present.
  * range(&lt;DT_with_Inf&gt;, finite = TRUE) now work for objects of class
    "Date", "POSIXct", and "POSIXlt" with infinite entries,
    analogously to range.default(), as proposed by Davis Vaughan on
    R-devel.  Other range()-methods can make use of new function
    .rangeNum().
  * New .internalGenerics object complementing .S3PrimitiveGenerics,
    for documentation and low-level book-keeping.
  * grid() now invisibly returns the x- and y- coordinates at which
    the grid-lines were drawn.
  * norm(., type) now also works for complex matrices.
  * kappa(., exact = TRUE, norm = *) now works for all norms and also
    for complex matrices.  In symmetric / triangular cases, the new
    argument uplo = "U" | "L" allows the upper or lower triangular
    part to be specified.
  * memDecompress(type = "unknown") recognizes compression in the
    default 'zlib' format as used by memCompress(type = "gzip").
  * memCompress() and memDecompress() will use the libdeflate library
    (&lt;https://github.com/ebiggers/libdeflate&gt;) if installed.  This
    uses the same type of compression for type = "gzip" but is 1.5-2x
    faster than the system libz library on some common platforms: the
    speed-up may depend on the library version.
  * diff() for objects of class "Date", "POSIXct", and "POSIXlt"
    accepts a units argument passed via ....
  * Dynamic help now does a much better job of rendering package
    DESCRIPTION metadata.
  * Rprof() gains an event argument and support for elapsed (real)
    time profiling on Unix (PR#18076).
  * filled.contour() gains a key.border argument.
  * tools::update_pkg_po() gets arguments pot_make and mo_make for
    _not_ re-making the corresponding files, and additionally a
    verbose argument.
  * Hexadecimal string colour specifications are now accepted in
    short form, so, for example, we can use "#123", which is
    equivalent to "#112233".
    Thanks to MikeFC for the original idea and Ella Kaye, Malcolm
    Barrett, George Stagg, and Hanne Oberman for the patch.
  * Plain-text help shows \var markup by angle brackets.
  * The new experimental primitive function declare() is intended to
    eventually allow information about R code to be communicated to
    the interpreter, compiler, and code analysis tools. The syntax
    for declarations is still being developed.
  * Functions psmirnov(), qsmirnov() and rsmirnov() in package stats
    have had argument two.sided renamed to alternative, to take into
    account that the permutation distributions of the one-sided
    statistics can be different in the case of ties.  Consequence of
    PR#18582.
  * sort() is now an implicit S4 generic in methods.
  * Formatting and printing, format(z), print(z), of complex vectors
    z no longer zap relatively small real or imaginary parts to zero,
    fixing PR#16752.  This is an API change, as it was documented
    previously to round real and imaginary parts together on purpose,
    producing nicer looking output.  As mentioned, e.g. in the PR,
    this change is compatible with many other "R-like" programming
    environments.
    We have simplified the internal code and now basically format the
    real and imaginary parts independently of each other.
  * New experimental functions Tailcall() and Exec() to support
    writing stack-space-efficient recursive functions.
  * Where characters are attempted to be plotted by pdf(),
    postscript() and xfig() which are not in the selected 8-bit
    character set (most often Latin-1) and the R session is using a
    UTF-8 locale, the warning messages will show the UTF-8 character
    rather than its bytes and one dot will be substituted per
    character rather than per byte.  (Platforms whose iconv() does
    transliteration silently plot the transliteration.)
    In a UTF-8 locale some transliterations are now done with a
    warning (e.g., dashes and Unicode minus to hyphen, ligatures are
    expanded, permille (‰) is replaced by o/oo), although the OS may
    have got there first.  These are warnings as they will continue
    to be replaced by dots in earlier versions of R.
  * The matrix multiplication functions crossprod() and tcrossprod()
    are now also primitive and S3 generic, as %*% had become in R
    4.3.0.
  * source() and example() have a new optional argument catch.aborts
    which allows continued evaluation of the R code after an error.
  * The non-Quartz tiff() devices allow additional types of
    compression if supported by the platform's libtiff library.
  * The list of base and recommended package names is now provided by
    tools::standard_package_names().
  * cairo_pdf() and cairo_ps() default to onefile = TRUE to closer
    match pdf() and postscript().
  * New option catch.script.errors provides a documented way to catch
    errors and then continue in non-interactive use.
  * L %||% R newly in base is an expressive idiom for the phrases
    if(!is.null(L)) L else R or if(is.null(L)) R else L.
  * The return value from warnings() now always inherits from
    "warnings" as documented, now also in the case of no warnings
    where it previously returned NULL.
  * as.complex("1i") now returns 0 + 1i instead of NA with a warning.
  * z &lt;- c(NA, 1i) now keeps the imaginary part Im(z[1]) == 0, no
    longer coercing to NA_complex_.  Similarly, cumsum(z) correctly
    sums real and imaginary parts separately, i.e., without
    "crosstalk" in case of NAs.
  * On Alpine Linux iconv() now maps "latin2", "latin-2", "latin9"
    and "latin-9" to encoding names the OS knows about
    (case-insensitively).
  * iconv(sub = "Unicode") now always zero-pads to four (hex) digits,
    rather than to 4 or 8.  (This seems to have become the convention
    once Unicode restricted the number of Unicode points to 2^21 - 1
    and so will never need more than 6 digits.)
  * NCOL(NULL) now returns 0 instead of 1, for consistency with
    cbind().
  * The information for the Euro glyph missing from the Adobe .afm
    files for the Courier, Helvetica and Times families has been
    copied from their URW equivalents - this will improve vertical
    centring in the pdf() and postscript() devices.
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.12.0.  The changes are almost entirely cosmetic.
  * The included LAPACK sources have been updated to version 3.12.0
    and some further double-complex routines added.
  * There are new font families for the 2014--5 URW 2.0 fonts (see
    ?pdf) which are included in recent versions of Ghostscript.
    These have font widths for most Greek glyphs and a few others
    which were missing from the original versions (whose font
    families remain available for reproducibility, although
    Ghostscript-based viewers will render using the 2.0 versions).
  * Improve the large-n efficiency of as.matrix(&lt;dist&gt;), thanks an R
    contributors effort, notably by Tim Taylor and Heather Turner,
    see PR#18660.
  * The default and numeric methods of all.equal() get a check.class
    option.
  * zapsmall() gets new optional arguments, function mFUN and min.d,
    for extra flexibility; fulfills a wish in PR#18199.  Also, it is
    now an implicit S4 generic in package methods.
  * The Rd filter for aspell() gains an ignore argument.
  * New generic function sort_by(), primarily useful for the
    data.frame method which can be used to sort rows of a data frame
    by one or more columns.
  * The icence headers for the RPC code in src/extra/xdr have been
    updated to use the GPL-compatible licence published by Oracle
    America in 2010.
  * New function pkg2HTML() in tools to create single-page HTML
    reference manuals for R packages.
  * The byte code evaluator now uses less C stack space for recursive
    calls to byte-compiled functions. It also makes more of an effort
    to avoid allocations for scalar return values.
  * New completion option backtick (disabled by default) allows
    non-syntactic completions to be wrapped in backquotes. This is
    currently only useful for Jupyter notebooks via the IRkernel
    package, and may cause problems for other backends.
  INSTALLATION:
  * The parser has been updated to work with bison 3.8.2, which is
    now used for the pre-generated parsers in gram.c, file.c, and
    gramRd.c. A few parser error messages have changed, which may
    affect code that relies on exact messages.
  INSTALLATION on a UNIX-ALIKE:
  * System valgrind headers are now required to use configure option
  - -with-valgrind-instrumentation with value 1 or 2.
  * configure will warn if it encounters a 32-bit build, as that is
    nowadays almost untested.
  * Environment variable R_SYSTEM_ABI is no longer used and so no
    longer recorded in etc/Renviron (it was not on Windows and was
    only ever used when preparing package tools).
  * If the libdeflate library and headers are available, libdeflate
    rather than libz is used to (de)compress R objects in lazy-load
    databases.  Typically tasks spend up to 5% of their time on such
    operations, although creating lazy-data databases is one of the
    exceptions.
    This can be suppressed if the library is available by the
    configure option --without-libdeflate-compression.
  * configure option --enable-lto=check has not worked reliably since
    2019 and has been removed.
  * The minimum autoconf requirement for a maintainer build has been
    increased to autoconf 2.71.
    It is intended to increase this to 2.72 for R 4.5.0: the
    distributed configure file was generated using 2.72.
  * The minimum version requirement for an external LAPACK has been
    reduced to 3.9.0.
  * No default C++ compiler is set if no C++17 compiler is detected:
    there is no longer an automatic fallback to C++14 or C++11.
    Compilers from the last five years should have sufficient
    support: for others macros CXX and CXXSTD can be set in file
    config.site to provide a fallback if needed.
    The Objective-C++ compiler now by default uses the standard
    selected by R for C++ (currently C++17) rather than the default
    standard for the C++ compiler (which on macOS is still C++98).
  INSTALLATION on macOS:
  * A new configure option --with-newAccelerate makes use of Apple's
    'new' BLAS / LAPACK interfaces in their Accelerate framework.
    Those interfaces are only available in macOS 13.3 or later, and
    building requires SDK 13.3 or later (from the Command Line Tools
    or Xcode 14.3 or later).
    By default the option uses new Accelerate for BLAS calls: to also
    use it for LAPACK use option --with-newAccelerate=lapack.  The
    later interfaces provide LAPACK 3.9.1 rather than 3.2.1: 3.9.1 is
    from 2021-04 and does not include the improved algorithms
    introduced in LAPACK 3.10.0 (including for BLAS calls).
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools44, an update of the Rtools43 toolchain.  It is
    based on GCC 13 and newer versions of MinGW-W64, binutils and
    libraries (targeting 64-bit Intel CPUs).  R-devel can no longer
    be built using Rtools43 without changes.
  * Rtools44 has experimental support for 64-bit ARM (aarch64) CPUs
    _via_ the LLVM 17 toolchain using lld, clang/flang-new and
    libc++.
  UTILITIES:
  * R CMD check notes when S4-style exports are used without
    declaring a strong dependence on package methods.
  * tools::checkRd() (used by R CMD check) detects more problems with
    \Sexpr-based dynamic content, including bad nesting of \Sexprs
    and invalid arguments.
  * tools::checkRd() now reports Rd titles and section names ending
    in a period; this is ignored by R CMD check unless environment
    variable _R_CHECK_RD_CHECKRD_MINLEVEL_ is set to -5 or smaller.
  * R CMD check now notes Rd files without an \alias, as long
    documented in 'Writing R Extensions' §1.3.1.  The check for a
    missing \description has been moved from tools::checkRd() to
    tools::checkRdContents().
  * R CMD check now visits inst/NEWS.Rd and OS-specific man
    subdirectories when checking Rd files.
  * tools::checkDocFiles() and tools::checkRdContents() now also
    check internal Rd files by default, but "specially" (ignoring
    missing documentation of arguments).
  * R CMD Rdiff gets option --useEx.
  * R CMD check now warns on non-portable uses of Fortran KIND such
    as INTEGER(KIND=4) and REAL(KIND=8).
    To see the failing lines set environment variable
    _R_CHECK_FORTRAN_KIND_DETAILS_ to a true value.
  * When checking Rd files, R CMD check now notes some of the "lost
    braces" that tools::checkRd() finds.  Typical problems are Rd
    macros missing the initial backslash (e.g., code{...}), in-text
    set notation (e.g., {1, 2}, where the braces need escaping), and
    \itemize lists with \describe-style entries of the form
    \item{label}{description}.
  * R CMD INSTALL (and hence check) will compile C++ code with
  - DR_NO_REMAP if environment variable _R_CXX_USE_NO_REMAP_ is set
    to a true value.  It is planned that this will in future become
    the default for compiling C++.
  * The new built-in Rd macro \dontdiff{} can be used to mark example
    code whose output should be ignored when comparing check output
    to reference output (tests/Examples/&lt;pkg&gt;-Ex.Rout.save).  The
    \dontdiff tag, like \donttest, is _not_ shown on the rendered
    help page, so provides a clean alternative to ##
    IGNORE_RDIFF_(BEGIN|END) comments.
  * R CMD build when there is no NAMESPACE, now uses the recommended
    exportPattern("^[^.]"), instead of exporting everything.
  * R CMD check now warns about non-ASCII characters in the NAMESPACE
    file (in addition to R files). Such packages are not portable and
    may fail to install on some platforms.
  C-LEVEL FACILITIES:
  * Headers R_ext/Applic.h and R-ext/Linpack.h used to include
    R_ext/BLAS.h although this was undocumented and unneeded by their
    documented entry points.  They no longer do so.
  * New function R_missing(), factored out from do_missing(), used to
    fix PR#18579.
  * SEXP type S4SXP has been renamed to OBJSXP to support
    experimenting with alternative object systems.  The S4SXP value
    can still be used in C code but is now deprecated.  Based on
    contributions from the R Consortium's Object-Oriented Programming
    Working Group.
  * New function pow1p(x,y) for accurate (1+x)^y.
  * mkCharLenCE was incorrectly documented to take a size_t length
    but was implemented with int (and character strings in R are
    limited to 2^31 - 1 bytes).
  DEPRECATED AND DEFUNCT:
  * data() no longer handles zipped data from long-defunct (since R
    2.13.0) --use-zip-data installations.
  * The legacy graphics devices pictex() and xfig() are now
    deprecated.  They do not support recent graphics enhancements and
    their font handling is rudimentary. The intention is to retain
    them for historical interest as long as they remain somewhat
    functional.
  * Support for encoding = "MacRoman" has been removed from the pdf()
    and postscript() devices - this was a legacy encoding supporting
    classic macOS up to 2001 and no longer has universal libiconv
    support.
  * is.R() is deprecated as no other S dialect is known to be in use
    (and this could only identify historical dialects, not future
    ones).
    Further information on calls can be obtained by setting the
    environment variable _R_DEPRECATED_IS_R_ to error which turns the
    deprecation warning into an error and so by default gives a
    traceback.  (This is done by R CMD check --as-cran.)
  * UseMethod() no longer forwards local variables assigned in the
    generic function into method call environments before evaluating
    the method body. This makes method calls behave more like
    standard function calls and makes method code easier to analyze
    correctly.
  * The twelve as.data.frame.&lt;class&gt;() methods which were deprecated
    only via _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ and in R CMD
    check --as-cran are formally deprecated now in favour of calling
    as.data.frame() or as.data.frame.vector().  The deprecation
    "check" now works also when as.data.frame() is S4 generic thanks
    to Ivan Krylov.
  * The default method for the directional comparison operators &lt;, &gt;,
    &lt;=, and &gt;= now signals an error when one of the operands is a
    language object, i.e. a symbol or a call.
  * For terms.formula(), deprecate abb and neg.out arguments
    _formally_ in addition to just documenting it.
  BUG FIXES:
  * The methods package is more robust to not being attached to the
    search path.  More work needs to be done.
  * pairwise.t.test() misbehaved when subgroups had 0 DF for
    variance, even with pool.sd = TRUE.  (PR#18594 by Jack Berry).
  * Probability distribution functions [dpq]&lt;distrib&gt;(x, *), but also
    bessel[IKJY](x, .) now consistently preserve attributes(x) when
    length(x) == 0, e.g., for a 2 x 0 matrix, thanks to Karolis
    Koncevičius' report PR#18509.
  * Group "Summary" computations such as sum(1:3, 4, na.rm = 5, NA,
    7, na.rm = LL) now give an error instead of either 17 or NN for
    LL true or false, as proposed by Ivan Krylov on the R-devel
    mailing list.  (This also means it is now an error to specify
    na.rm more than once.)
  * as.complex(x) now returns complex(real = x, imaginary = 0) for
    _all_ numerical and logical x, notably also for NA or
    NA_integer_.
  * Directories are now omitted by file.copy(, recursive = FALSE) and
    in file.append() (PR#17337).
  * gsub() and sub() are now more robust to integer overflow when
    reporting errors caused by too large input strings (PR#18346).
  * Top-level handlers are now more robust to attempts to remove a
    handler whilst handlers are running (PR#18508).
  * The handling of Alt+F4 in dialogs created on Windows using
    GraphApp has been fixed (PR#13870).
  * density() more consistently computes grid values for the
    FFT-based convolution, following Robert Schlicht's analysis and
    proposal in PR#18337, correcting density values typically by a
    factor of about 0.999.  Argument old.coords = TRUE provides back
    compatibility.
  * palette.colors() gains a name argument that defaults to FALSE
    controlling whether the vector of colours that is returned has
    names (where possible).  PR#18529.
  * tools::xgettext() no longer extracts the (non-translatable) class
    names from warningCondition and errorCondition calls.
  * S3method(&lt;gen&gt;, &lt;class&gt;, &lt;func&gt;) in the NAMESPACE file now works
    (again) when &lt;func&gt; is visible from the namespace, e.g.,
    imported, or in base.
  * getParseData(f) now also works for a function defined in the
    first of several &lt;pkg&gt;/R/*.R source files, thanks to Kirill
    Müller's report and Duncan Murdoch's patch in PR#16756.
  * Rd \Sexpr macros with nested #ifdef conditionals were not
    processed.
  * A non-blocking connection with non-default encoding (such as a
    socket) now correctly returns from readLines() after new data has
    arrived also when its EOF had been reached previously.  Thanks to
    Peter Meilstrup's report on R-devel and Ivan Krylov's report and
    patch proposal in PR#18555.
  * tools::checkRdContents() failed to detect empty argument
    descriptions when they spanned multiple lines, including those
    generated by prompt().  These cases are now noted by R CMD check.
  * Plain-text help no longer outputs spurious colons in the
    arguments list (for multi-line \item labels in the Rd source).
  * kappa() and rcond() work correctly in more cases; kappa(., norm =
    "2") now warns that it computes the 1-norm with (default) exact =
    FALSE; prompted by Mikael Jagan's quite comprehensive PR#18543.
  * Rd skeletons generated by prompt() or promptData() now use a
    dummy title (so R CMD build works).  tools::checkRdContents() has
    been updated to detect such template leftovers, including from
    promptPackage().
  * When S4 method dispatch fails because no method was found, the
    error message now includes the signature argument names; thanks
    to Michael Chirico's proposal on the R-devel list.
  * withAutoprint({ .. }) now preserves srcrefs previously lost,
    thanks to Andrew Simmons' report plus fix in PR#18572.
  * transform.data.frame() no longer adjusts names; in particular,
    untransformed variables are kept as-is, including those with
    syntactically invalid names (PR#17890).
  * The keep.source option for Rd \Sexpr blocks is no longer ignored.
  * The formula methods for t.test() and wilcox.test() now catch when
    paired is passed, addressing PR#14359; use Pair(x1, x2) ~ 1 for a
    paired test.
  * The level reported in the browser prompt was often too large. It
    now shows the number of browser contexts on the stack.
  * For cbind() and rbind(), the optional deparse.level argument is
    now properly passed to methods, thanks to Mikael Jagan's PR#18579
    and comments there.
  * Some error and warning messages for large ('long vector')
    matrix(v, nr, nc) and dim(m) &lt;- d are now correct about sizes,
    using long long formatting, fixing PR#18612 (and more) reported
    by Mikael Jagan.
  * readChar(useBytes = TRUE) now terminates strings even when the
    underlying connection uses extra spaces in the input buffer.
    This fixes problems with extra garbage seen with gzip
    connections, PR#18605.
  * Named capture in PCRE regular expressions now works also with
    more than 127 named groups (PR#18588).
  * Datetime functions are now robust against long jumps when dealing
    with internal time zone changes.  This avoids confusing warnings
    about an invalid time zone, previously triggered by turning
    warnings into errors or handling them via tryCatch (PR#17966,
    PR#17780).
  * Datetime functions now restore even an empty TZ environment
    variable after internal time zone changes (PR#17724).  This makes
    results of datetime functions with this (typically unintentional)
    setting more predictable.
  * drop.terms(*) now drops response as by default, keep.response =
    FALSE, fixing PR#18564 thanks to Mikael Jagan.
  * dummy.coef(.) now also works for lm()-models with character
    categorical predictor variables rather than factor ones, fixing
    PR#18635 reported by Jinsong Zhao.
  * formals(f) &lt;- formals(f) now also works for a function w/o
    arguments and atomic _constant_ body(f).
  * Correct as.function(&lt;invalid list&gt;, .)'s error message.
  * removeSource() is yet more thorough in finding and removing
    "srcref" and the other source references from parsed R language
    chunks, fixing PR#18638 thanks to Andrew Simmons.
  * dgeom() is more accurate now, notably when its result is very
    small, fixing PR#18642 thanks to the proposal of Morten Welinder,
    also improving other instances where C level binom_raw(x, n, ..)
    has x == 0 or x== n.
  * warning() with options(warn = 1) has improved output for
    multi-line messages.
  * axis.Date() and axis.POSIXct() now respect the par("lab") setting
    for the number of pretty() intervals.
  * Comparisons for language objects (which are based on deparsing)
    are now more careful about using accurate deparsed results
    (PR#18676).
  * Plain-text help (Rd2txt) now correctly preserves blank lines
    following single-line \dontrun code.
  * &lt;POSIXlt&gt;[*] no longer sets wrong "balanced" attribute, fixing
    PR#18681 thanks to Mikael Jagan.
  * str(&lt;classed-call&gt;) now deparses the call as expected, fixing
    PR#18684, reported by Dave Slager.
  * In Rd examples, code following the closing brace of a \dontrun,
    \dontshow or \donttest tag on the same line is no longer skipped
    when R CMD check runs the examples.
  * as.data.frame(matrix(*, ncol=0)) now gets valid names() and
    colnames(); reported by Davis Vaughan on the R-devel list.
  * Internal Mathlib function stirlerr(n) is now almost fully
    (52-bit) accurate for all n &gt;= ~5.9 and more accurate also in the
    range 1 -- 5.9.  This entails small ("after 12th decimal")
    changes in density functions, e.g., dgamma() in _some_ regions of
    their support.  The fix was partly prompted by Morten Welinder's
    PR#18640.
  * Numbers like 9876543.2 are now considered non-integer by Mathlib
    internal R_nonint(), amending original fix of PR#15734.
  * Rd comment lines no longer cause broken paragraphs in the
    rendered PDF and plain-text help. In code blocks, pure comment
    lines (starting with %) no longer produce an empty line.
  * xtabs(Freq ~ .) now consistently defaults to na.action = na.pass,
    using na.rm = FALSE (added as an argument) when summing over Freq
    (PR#17770).
  * tools::testInstalledPackage() is no longer silent about failures
    from running examples or tests and its return code no longer
    ignores failures from checking vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1718366400">- CHANGES IN R 4.4.1:
  C-LEVEL FACILITIES:
  * Functions R_atof and R_strtod declared in header R_ext/Utils.h
    are now documented in 'Writing R Extensions' and so formally part
    of the API.
  * The non-API entry points Rf_setSVector, Rf_StringFalse,
    Rf_StringTrue and Rf_isBlankString have been added to those
    reported by R CMD check.
  * The new function Rf_allocLang is now available. This provides an
    alternative to the idiom of calling Rf_allocList followed by
    SET_TYPEOF.
  UTILITIES:
  * R CMD check now reports as warnings what gfortran calls 'Fortran
    2018 deleted features', all of which have long been marked as
    'obsolescent' and some of which were deleted in Fortran 2008 or
    earlier.  Fortran compilers are no longer required to support
    these.
  BUG FIXES:
  * as.numeric(), scan(), type.convert() and other places which use
    the internal C function R_strtod now require a _non-empty_ digit
    sequence in a decimal or binary exponent.  This aligns with the
    C/POSIX standard for strtod and with ?NumericConstants.
  * as.data.frame(m, make.names=NA) now works correctly for a matrix
    m with NA's in row names.
  * The error message from &lt;POSIXlt&gt;[["hour"]] and similar now
    mentions *[[, "hour"]], as wished for in PR#17409 and proposed by
    Michael Chirico.
  * qbinom() and potentially qpois(), qnbinom(), no longer sometimes
    fail accurate inversion (of pbinom(), etc), thanks to Christopher
    Chang's report and patch in PR#18711.
  * The internal help server on Windows can again serve requests sent
    in quick succession, fixing a regression in R 4.4.0.
  * debugcall(&lt;S3Generic&gt;()) now also works when a corresponding
    S4-generic version is in the methods cache (PR#18143).
  * Package tools' toTitleCase(ch0) now returns character(0) when ch0
    is of zero length; fixing PR#18724, reported by David Hugh Jones.
  * R CMD check is no longer broken (without a check result and no
    explanation in 00check.log) for a package which declares an
    invalid VignetteBuilder in DESCRIPTION but has no vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1730376000">- CHANGES IN R 4.4.2:
  C-LEVEL FACILITIES:
  * The S-compatibility macros F77_COM and F77_COMDECL defined in
    header R_ext/RS.h are deprecated and will be removed shortly.  We
    could find no record of their use.
  BUG FIXES:
  * Mathlib function lgammacor(x) no longer warns about underflow to
    zero for large x.
  * Text widths and heights were incorrectly reported by the Quartz
    device if the drawing context didn't exist yet (typically when
    drawing off-screen to a window that is yet to appear, see
    PR#18591).
  * The Quartz device could segfault in cases where paths with spaces
    are used in the new glyph drawing API.  Thanks to Tomek
    Gieorgijewski (PR#18758).
  * On macOS in R CRAN builds, it is again possible to read
    little-endian UTF-16 text with a BOM from a connection using
    encoding="UTF-16".  Users building R from source should avoid
    using the system libiconv in macOS 14.1 and later.
  * methods' internal .requirePackage() now re-enables primitive
    method dispatch when needed; thanks to Ivan Krylov for
    demystifying CRAN package check failures on the R-devel mailing
    list.</changelog>
</package>
<package pkgid="0f64d9afd5d9c696c25a1b495bea1a9ad7a30c3050ef58f5d4dac75d771598ea950256eb2659b6680bbfe9fb4c5c64a424279cee8fa7349bc8b00f32c2e50f06" name="R-spatial-debuginfo" arch="i586">
  <version epoch="0" ver="7.3.17" rel="51.0.2.2.sr20241103"/>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1620302400">- To get in sync with d:l:R:autoCRAN the Matrix package's split
  in -devel was reversed.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339200">- improved spec file according to comments of dimstar in
  https://build.opensuse.org/request/show/892685</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339201">- CHANGES IN R 4.1.0:
  FUTURE DIRECTIONS:
  * It is planned that the 4.1.x series will be the last to support
    32-bit Windows, with production of binary packages for that
    series continuing until early 2023.
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Data set esoph in package datasets now provides the correct
    numbers of controls; previously it had the numbers of cases added
    to these.  (Reported by Alexander Fowler in PR#17964.)
  NEW FEATURES:
  * www.omegahat.net is no longer one of the repositories known by
    default to setRepositories().  (Nowadays it only provides source
    packages and is often unavailable.)
  * Function package_dependencies() (in package tools) can now use
    different dependency types for direct and recursive dependencies.
  * The checking of the size of tarball in R CMD check --as-cran
    &lt;pkg&gt; may be tweaked via the new environment variable
    _R_CHECK_CRAN_INCOMING_TARBALL_THRESHOLD_, as suggested in
    PR#17777 by Jan Gorecki.
  * Using c() to combine a factor with other factors now gives a
    factor, an ordered factor when combining ordered factors with
    identical levels.
  * apply() gains a simplify argument to allow disabling of
    simplification of results.
  * The format() method for class "ftable" gets a new option justify.
    (Suggested by Thomas Soeiro.)
  * New ...names() utility.  (Proposed by Neal Fultz in PR#17705.)
  * type.convert() now warns when its as.is argument is not
    specified, as the help file always said it _should_.  In that
    case, the default is changed to TRUE in line with its change in
    read.table() (related to stringsAsFactor) in R 4.0.0.
  * When printing list arrays, classed objects are now shown _via_
    their format() value if this is a short enough character string,
    or by giving the first elements of their class vector and their
    length.
  * capabilities() gets new entry "Rprof" which is TRUE when R has
    been configured with the equivalent of --enable-R-profiling (as
    it is by default).  (Related to Michael Orlitzky's report
    PR#17836.)
  * str(xS4) now also shows extraneous attributes of an S4 object
    xS4.
  * Rudimentary support for vi-style tags in rtags() and R CMD rtags
    has been added.  (Based on a patch from Neal Fultz in PR#17214.)
  * checkRdContents() is now exported from tools; it and also
    checkDocFiles() have a new option chkInternal allowing to check
    Rd files marked with keyword "internal" as well.  The latter can
    be activated for R CMD check via environment variable
    _R_CHECK_RD_INTERNAL_TOO_.
  * New functions numToBits() and numToInts() extend the raw
    conversion utilities to (double precision) numeric.
  * Functions URLencode() and URLdecode() in package utils now work
    on vectors of URIs.  (Based on patch from Bob Rudis submitted
    with PR#17873.)
  * path.expand() can expand ~user on most Unix-alikes even when
    readline is not in use.  It tries harder to expand ~, for example
    should environment variable HOME be unset.
  * For HTML help (both dynamic and static), Rd file links to help
    pages in external packages are now treated as references to
    topics rather than file names, and fall back to a file link only
    if the topic is not found in the target package. The earlier rule
    which prioritized file names over topics can be restored by
    setting the environment variable _R_HELP_LINKS_TO_TOPICS_ to a
    false value.
  * c() now removes NULL arguments before dispatching to methods,
    thus simplifying the implementation of c() methods, _but_ for
    back compatibility keeps NULL when it is the first argument.
    (From a report and patch proposal by Lionel Henry in PR#17900.)
  * Vectorize()'s result function's environment no longer keeps
    unneeded objects.
  * Function ...elt() now propagates visibility consistently with
    ..n.  (Thanks to Lionel Henry's PR#17905.)
  * capture.output() no longer uses non-standard evaluation to
    evaluate its arguments.  This makes evaluation of functions like
    parent.frame() more consistent.  (Thanks to Lionel Henry's
    PR#17907.)
  * packBits(bits, type="double") now works as inverse of
    numToBits().  (Thanks to Bill Dunlap's proposal in PR#17914.)
  * curlGetHeaders() has two new arguments, timeout to specify the
    timeout for that call (overriding getOption("timeout")) and TLS
    to specify the minimum TLS protocol version to be used for
    https:// URIs (_inter alia_ providing a means to check for sites
    using deprecated TLS versions 1.0 and 1.1).
  * For nls(), an optional constant scaleOffset may be added to the
    denominator of the relative offset convergence test for cases
    where the fit of a model is expected to be exact, thanks to a
    proposal by John Nash.  nls(*, trace=TRUE) now also shows the
    convergence criterion.
  * Numeric differentiation _via_ numericDeriv() gets new optional
    arguments eps and central, the latter for taking central divided
    differences.  The latter can be activated for nls() via
    nls.control(nDcentral = TRUE).
  * nls() now passes the trace and control arguments to getInitial(),
    notably for all self-starting models, so these can also be fit in
    zero-noise situations via a scaleOffset.  For this reason, the
    initial function of a selfStart model must now have ... in its
    argument list.
  * bquote(splice = TRUE) can now splice expression vectors with
    attributes: this makes it possible to splice the result of
    parse(keep.source = TRUE).  (Report and patch provided by Lionel
    Henry in PR#17869.)
  * textConnection() gets an optional name argument.
  * get(), exists(), and get0() now signal an error if the first
    argument has length greater than 1.  Previously additional
    elements were silently ignored.  (Suggested by Antoine Fabri on
    R-devel.)
  * R now provides a shorthand notation for creating functions, e.g.
    \(x) x + 1 is parsed as function(x) x + 1.
  * R now provides a simple native forward pipe syntax |&gt;.  The
    simple form of the forward pipe inserts the left-hand side as the
    first argument in the right-hand side call.  The pipe
    implementation as a syntax transformation was motivated by
    suggestions from Jim Hester and Lionel Henry.
  * all.equal(f, g) for functions now by default also compares their
    environment(.)s, notably via new all.equal method for class
    function.  Comparison of nls() fits, e.g., may now need
    all.equal(m1, m2, check.environment = FALSE).
  * .libPaths() gets a new option include.site, allowing to _not_
    include the site library.  (Thanks to Dario Strbenac's suggestion
    and Gabe Becker's PR#18016.)
  * Lithuanian translations are now available.  (Thanks to Rimantas
    Zakauskas.)
  * names() now works for DOTSXP objects.  On the other hand, in
    R-lang, the R language manual, we now warn against relying on the
    structure or even existence of such dot-dot-dot objects.
  * all.equal() no longer gives an error on DOTSXP objects.
  * capabilities("cairo") now applies only to the file-based devices
    as it is now possible (if very unusual) to build R with Cairo
    support for those but not for X11().
  * There is optional support for tracing the progress of
    loadNamespace() - see its help.
  * (Not Windows.)  l10n_info() reports an additional element, the
    name of the encoding as reported by the OS (which may differ from
    the encoding part (if any) of the result from
    Sys.getlocale("LC_CTYPE").
  * New function gregexec() which generalizes regexec() to find _all_
    disjoint matches and well as all substrings corresponding to
    parenthesized subexpressions of the given regular expression.
    (Contributed by Brodie Gaslam.)
  * New function charClass() in package utils to query the
    wide-character classification functions in use (such as
    iswprint).
  * The names of quantile()'s result no longer depend on the global
    getOption("digits"), but quantile() gets a new optional argument
    digits = 7 instead.
  * grep(), sub(), regexp and variants work considerably faster for
    long factors with few levels.  (Thanks to Michael Chirico's
    PR#18063.)
  * Provide grouping of x11() graphics windows within a window
    manager such as Gnome or Unity; thanks to a patch by Ivan Krylov
    posted to R-devel.
  * The split() method for class data.frame now allows the f argument
    to be specified as a formula.
  * sprintf now warns on arguments unused by the format string.
  * New palettes "Rocket" and "Mako" for hcl.colors() (approximating
    palettes of the same name from the 'viridisLite' package).
    Contributed by Achim Zeileis.
  * The base environment and its namespace are now locked (so one can
    no longer add bindings to these or remove from these).
  * Rterm handling of multi-byte characters has been improved,
    allowing use of such characters when supported by the current
    locale.
  * Rterm now accepts ALT+ +xxxxxxxx sequences to enter Unicode
    characters as hex digits.
  * Environment variable LC_ALL on Windows now takes precedence over
    LC_CTYPE and variables for other supported categories, matching
    the POSIX behaviour.
  * duplicated() and anyDuplicated() are now optimized for integer
    and real vectors that are known to be sorted via the ALTREP
    framework. Contributed by Gabriel Becker via PR#17993.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 14
    and so packages that provide graphics devices should be
    reinstalled.
  * Graphics devices should now specify deviceVersion to indicate
    what version of the graphics engine they support.
  * Graphics devices can now specify deviceClip.  If TRUE, the
    graphics engine will never perform any clipping of output itself.
    The clipping that the graphics engine does perform (for both
    canClip = TRUE and canClip = FALSE) has been improved to avoid
    producing unnecessary artifacts in clipped output.
  * The grid package now allows gpar(fill) to be a linearGradient(),
    a radialGradient(), or a pattern().  The viewport(clip) can now
    also be a grob, which defines a clipping path, and there is a new
    viewport(mask) that can also be a grob, which defines a mask.
    These new features are only supported so far on the Cairo-based
    graphics devices and on the pdf() device.
  * (Not Windows.)  A warning is given when a Cairo-based type is
    specified for a png(), jpeg(), tiff() or bmp() device but Cairo
    is unsupported (so type = "Xlib" is tried instead).
  * grSoftVersion() now reports the versions of FreeType and
    FontConfig if they are used directly (not _via_ Pango), as is
    most commonly done on macOS.
  C-LEVEL FACILITIES:
  * The _standalone_ libRmath math library and R's C API now provide
    log1pexp() again as documented, and gain log1mexp().
  INSTALLATION on a UNIX-ALIKE:
  * configure checks for a program pkgconf if program pkg-config is
    not found.  These are now only looked for on the path (like
    almost all other programs) so if needed specify a full path to
    the command in PKG_CONFIG, for example in file config.site.
  * C99 function iswblank is required - it was last seen missing ca
    2003 so the workaround has been removed.
  * There are new configure options --with-internal-iswxxxxx,
  - -with-internal-towlower and --with-internal-wcwidth which allows
    the system functions for wide-character classification,
    case-switching and width (wcwidth and wcswidth) to be replaced by
    internal ones.  The first has long been used on macOS, AIX (and
    Windows) but this enables it to be unselected there and selected
    for other platforms (it is the new default on Solaris).  The
    second is new in this version of R and is selected by default on
    macOS and Solaris.  The third has long been the default and
    remains so as it contains customizations for East Asian
    languages.
    System versions of these functions are often minimally
    implemented (sometimes only for ASCII characters) and may not
    cover the full range of Unicode points: for example Solaris (and
    Windows) only cover the Basic Multilingual Plane.
  * Cairo installations without X11 are more likely to be detected by
    configure, when the file-based Cairo graphics devices will be
    available but not X11(type = "cairo").
  * There is a new configure option --with-static-cairo which is the
    default on macOS.  This should be used when only static cairo
    (and where relevant, Pango) libraries are available.
  * Cairo-based graphics devices on platforms without Pango but with
    FreeType/FontConfig will make use of the latter for font
    selection.
  LINK-TIME OPTIMIZATION on a UNIX-ALIKE:
  * Configuring with flag --enable-lto=R now also uses LTO when
    installing the recommended packages.
  * R CMD INSTALL and R CMD SHLIB have a new flag --use-LTO to use
    LTO when compiling code, for use with R configured with
  - -enable-lto=R.  For R configured with --enable-lto, they have
    the new flag --no-use-LTO.
    Packages can opt in or out of LTO compilation _via_ a UseLTO
    field in the DESCRIPTION file.  (As usual this can be overridden
    by the command-line flags.)
  BUILDING R on Windows:
  * for GCC &gt;= 8, FC_LEN_T is defined in config.h and hence character
    lengths are passed from C to Fortran in _inter alia_ BLAS and
    LAPACK calls.
  * There is a new text file src/gnuwin32/README.compilation, which
    outlines how C/Fortran code compilation is organized and
    documents new features:
  * R can be built with Link-Time Optimization with a suitable
    compiler - doing so with GCC 9.2 showed several
    inconsistencies which have been corrected.
  * There is support for cross-compiling the C and Fortran code
    in R and standard packages on suitable (Linux) platforms.
    This is mainly intended to allow developers to test later
    versions of compilers - for example using GCC 9.2 or 10.x has
    detected issues that GCC 8.3 in Rtools40 does not.
  * There is experimental support for cross-building R packages
    with C, C++ and/or Fortran code.
  * The R installer can now be optionally built to support a single
    architecture (only 64-bit or only 32-bit).
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++14 where
    available (which it is on all currently checked platforms): if
    not (as before) C++11 is used if available otherwise C++ is not
    supported.
    Packages which specify C++11 will still be installed using C++11.
    C++14 compilers may give deprecation warnings, most often for
    std::random_shuffle (deprecated in C++14 and removed in C++17).
    Either specify C++11 (see 'Writing R Extensions') or modernize
    the code and if needed specify C++14.  The latter has been
    supported since R 3.4.0 so the package's DESCRIPTION would need
    to include something like
    Depends: R (&gt;= 3.4)
  PACKAGE INSTALLATION on Windows:
  * R CMD INSTALL and R CMD SHLIB make use of their flag --use-LTO
    when the LTO_OPT make macro is set in file etc/${R_ARCH}/Makeconf
    or in a personal/site Makevars file.  (For details see 'Writing R
    Extensions' SS4.5.)
    This provides a valuable check on code consistency.  It does work
    with GCC 8.3 as in Rtools40, but that does not detect everything
    the CRAN checks with current GCC do.
  PACKAGE INSTALLATION on macOS:
  * The default personal library directory on builds with
  - -enable-aqua (including CRAN builds) now differs by CPU type,
    one of
    ~/Library/R/x86_64/x.y/library
    ~/Library/R/arm64/x.y/library
    This uses the CPU type R (and hence the packages) were built for,
    so when a x86_64 build of R is run under Rosetta emulation on an
    arm64 Mac, the first is used.
  UTILITIES:
  * R CMD check can now scan package functions for bogus return
    statements, which were possibly intended as return() calls (wish
    of PR#17180, patch by Sebastian Meyer). This check can be
    activated via the new environment variable
    _R_CHECK_BOGUS_RETURN_, true for --as-cran.
  * R CMD build omits tarballs and binaries of previous builds from
    the top-level package directory.  (PR#17828, patch by Sebastian
    Meyer.)
  * R CMD check now runs sanity checks on the use of LazyData, for
    example that a data directory is present and that
    LazyDataCompression is not specified without LazyData and has a
    documented value.  For packages with large LazyData databases
    without specifying LazyDataCompression, there is a reference to
    the code given in 'Writing R Extensions' SS1.1.6 to test the
    choice of compression (as in all the CRAN packages tested a
    non-default method was preferred).
  * R CMD build removes LazyData and LazyDataCompression fields from
    the DESCRIPTION file of packages without a data directory.
  ENCODING-RELATED CHANGES:
  * The parser now treats \Unnnnnnnn escapes larger than the upper
    limit for Unicode points (\U10FFFF) as an error as they cannot be
    represented by valid UTF-8.
    Where such escapes are used for outputting non-printable
    (including unassigned) characters, 6 hex digits are used (rather
    than 8 with leading zeros).  For clarity, braces are used, for
    example \U{0effff}.
  * The parser now looks for non-ASCII spaces on Solaris (as
    previously on most other OSes).
  * There are warnings (including from the parser) on the use of
    unpaired surrogate Unicode points such as \uD834.  (These cannot
    be converted to valid UTF-8.)
  * Functions nchar(), tolower(), toupper() and chartr() and those
    using regular expressions have more support for inputs with a
    marked Latin-1 encoding.
  * The character-classification functions used (by default) to
    replace the system iswxxxxx functions on Windows, macOS and AIX
    have been updated to Unicode 13.0.0.
    The character-width tables have been updated to include new
    assignments in Unicode 13.0.0.
  * The code for evaluating default (extended) regular expressions
    now uses the same character-classification functions as the rest
    of R (previously they differed on Windows, macOS and AIX).
  * There is a build-time option to replace the system's
    wide-character wctrans C function by tables shipped with R: use
    configure option --with-internal-towlower or (on Windows)
  - DUSE_RI18N_CASE in CFLAGS when building R.  This may be needed
    to allow tolower() and toupper() to work with Unicode characters
    beyond the Basic Multilingual Plane where not supported by system
    functions (e.g. on Solaris where it is the new default).
  * R is more careful when truncating UTF-8 and other multi-byte
    strings that are too long to be printed, passed to the system or
    libraries or placed into an internal buffer.  Truncation will no
    longer produce incomplete multibyte characters.
  DEPRECATED AND DEFUNCT:
  * Function plclust() from the package stats and
    package.dependencies(), pkgDepends(), getDepList(),
    installFoundDepends(), and vignetteDepends() from package tools
    are defunct.
  * Defunct functions checkNEWS() and readNEWS() from package tools
    and CRAN.packages() from utils have been removed.
  * R CMD config CXXCPP is defunct (it was deprecated in R 3.6.2).
  * parallel::detectCores() drops support for Irix (retired in 2013).
  * The LINPACK argument to chol.default(), chol2inv(),
    solve.default() and svd() has been defunct since R 3.1.0.  It was
    silently ignored up to R 4.0.3 but now gives an error.
  * Subsetting/indexing, such as ddd[*] or ddd$x on a DOTSXP
    (dot-dot-dot) object ddd has been disabled; it worked by accident
    only and was undocumented.
  BUG FIXES:
  * Many more C-level allocations (mainly by malloc and strdup) are
    checked for success with suitable alternative actions.
  * Bug fix for replayPlot(); this was turning off graphics engine
    display list recording if a recorded plot was replayed in the
    same session.  The impact of the bug became visible if resize the
    device after replay OR if attempted another savePlot() after
    replay (empty display list means empty screen on resize or empty
    saved plot).
  * R CMD check etc now warn when a package exports non-existing S4
    classes or methods, also in case of no "methods" presence.
    (Reported by Alex Bertram; reproducible example and patch by
    Sebastian Meyer in PR#16662.)
  * boxplot() now also accepts calls for labels such as ylab, the
    same as plot().  (Reported by Marius Hofert.)
  * The help page for xtabs() now correctly states that addNA is
    setting na.action = na.pass among others.  (Reported as PR#17770
    by Thomas Soeiro.)
  * The R CMD check &lt;pkg&gt; gives a longer and more comprehensible
    message when DESCRIPTION misses dependencies, e.g., in Imports:.
    (Thanks to the contributors of PR#17179.)
  * update.default() now calls the generic update() on the formula to
    work correctly for models with extended formulas.  (As reported
    and suggested by Neal Fultz in PR#17865.)
  * The horizontal position of leaves in a dendrogram is now correct
    also with center = FALSE.  (PR#14938, patch from Sebastian
    Meyer.)
  * all.equal.POSIXt() no longer warns about and subsequently ignores
    inconsistent "tzone" attributes, but describes the difference in
    its return value (PR#17277).  This check can be disabled _via_
    the new argument check.tzone = FALSE as suggested by Sebastian
    Meyer.
  * as.POSIXct() now populates the "tzone" attribute from its tz
    argument when x is a logical vector consisting entirely of NA
    values.
  * x[[2^31]] &lt;- v now works.  (Thanks to the report and patch by
    Suharto Anggono in PR#17330.)
  * In log-scale graphics, axis() ticks and label positions are now
    computed more carefully and symmetrically in their range,
    typically providing _more_ ticks, fulfilling wishes in PR#17936.
    The change really corresponds to an improved axisTicks() (package
    grDevices), potentially influencing grid and lattice, for
    example.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now correct to at
    least five digits where it was catastrophically wrong,
    previously.
  * sum(df) and similar "Summary"- and "Math"-group member functions
    now work for data frames df with logical columns, notably also of
    zero rows.  (Reported to R-devel by Martin "b706".)
  * unsplit() had trouble with tibbles due to unsound use of rep(NA,
    len)-indexing, which should use NA_integer_ (Reported to R-devel
    by Mario Annau.)
  * pnorm(x, log.p = TRUE) underflows to -Inf slightly later.
  * show(&lt;hidden S4 generic&gt;) prints better and without quotes for
    non-hidden S4 generics.
  * read.table() and relatives treated an "NA" column name as missing
    when check.names = FALSE PR#18007.
  * Parsing strings containing UTF-16 surrogate pairs such as
    "\uD834\uDD1E" works better on some (uncommon) platforms.
    sprintf("%X", utf8ToInt("\uD834\uDD1E")) should now give "1D11E"
    on all platforms.
  * identical(x,y) is no longer true for differing DOTSXP objects,
    fixing PR#18032.
  * str() now works correctly for DOTSXP and related exotics, even
    when these are doomed.
    Additionally, it no longer fails for lists with a class and
    "irregular" method definitions such that e.g. lapply(*) will
    necessarily fail, as currently for different igraph objects.
  * Too long lines in environment files (e.g. Renviron) no longer
    crash R. This limit has been increased to 100,000 bytes.
    (PR#18001.)
  * There is a further workaround for FreeType giving incorrect
    italic font faces with cairo-based graphics devices on macOS.
  * add_datalist(*, force = TRUE) (from package tools) now actually
    updates an existing data/datalist file for new content.  (Thanks
    to a report and patch by Sebastian Meyer in PR#18048.)
  * cut.Date() and cut.POSIXt() could produce an empty last interval
    for breaks = "months" or breaks = "years".  (Reported as PR#18053
    by Christopher Carbone.)
  * Detection of the encoding of 'regular' macOS locales such as
    en_US (which is UTF-8) had been broken by a macOS change:
    fortunately these are now rarely used with en_US.UTF-8 being
    preferred.
  * sub() and gsub(pattern, repl, x, *) now keep attributes of x such
    as names() also when pattern is NA (PR#18079).
  * Time differences ("difftime" objects) get a replacement and a
    rep() method to keep "units" consistent.  (Thanks to a report and
    patch by Nicolas Bennett in PR#18066.)
  * The \RdOpts macro, setting defaults for \Sexpr options in an Rd
    file, had been ineffective since R 2.12.0: it now works again.
    (Thanks to a report and patch by Sebastian Meyer in PR#18073.)
  * mclapply and pvec no longer accidentally terminate parallel
    processes started before by mcparallel or related calls in
    package parallel (PR#18078).
  * grep and other functions for evaluating (extended) regular
    expressions handle in Unicode also strings not explicitly flagged
    UTF-8, but flagged native when running in UTF-8 locale.
  * Fixed a crash in fifo implementation on Windows (PR#18031).
  * Binary mode in fifo on Windows is now properly detected from
    argument open (PR#15600, PR#18031).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1622808000">- The line %{__install} -m 755 -d %{_infodir}
  no longer works in TW or Factory.
  But without that line it works everywhere. So this instruction
  was commented out of the spec file.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1628596800">- CHANGES IN R 4.1.1:
  NEW FEATURES:
  * require(pkg, quietly = TRUE) is quieter and in particular does
    not warn if the package is not found.
  DEPRECATED AND DEFUNCT:
  * Use of ftp:// URIs should be regarded as deprecated, with
    on-going support confined to method = "libcurl" and not routinely
    tested.  (Nowadays no major browser supports them.)
  * The non-default method = "internal" is deprecated for http:// and
    ftp:// URIs for both download.file and url.
  * On Windows, method = "wininet" is deprecated for http://,
    https:// and ftp:// URIs for both download.file and url.  (A
    warning is only given for ftp://.)
    For ftp:// URIs the default method is now "libcurl" if available
    (which it is on CRAN builds).
    method = "wininet" remains the default for http:// and https://
    URIs but if libcurl is available, using method = "libcurl" is
    preferred.
  INSTALLATION:
  * make check now works also without a LaTeX installation.  (Thanks
    to Sebastian Meyer's PR#18103.)
  BUG FIXES:
  * make check-devel works again in an R build configured with
  - -without-recommended-packages.
  * qnbinom(p, size, mu) for large size/mu is correct now in a range
    of cases (PR#18095); similarly for the (size, prob)
    parametrization of the negative binomial.  Also qpois() and
    qbinom() are better and or faster for extreme cases.  The
    underlying C code has been modularized and is common to all four
    cases of discrete distributions.
  * gap.axis is now part of the axis() arguments which are passed
    from bxp(), and hence boxplot().  (Thanks to Martin Smith's
    report and suggestions in PR#18109.)
  * .First and .Last can again be set from the site profile.
  * seq.int(from, to, *) and seq.default(..) now work better in large
    range cases where from-to is infinite where the two boundaries
    are finite.
  * all.equal(x,y) now returns TRUE correctly also when several
    entries of abs(x) and abs(y) are close to .Machine$double.xmax,
    the largest finite numeric.
  * model.frame() now clears the object bit when removing the class
    attribute of a value via na.action (PR#18100).
  * charClass() now works with multi-character strings on Windows
    (PR#18104, fixed by Bill Dunlap).
  * encodeString() on Solaris now works again in Latin-1 encoding on
    characters represented differently in UTF-8.  Support for
    surrogate pairs on Solaris has been improved.
  * file.show() on Windows now works with non-ASCII path names
    representable in the current native encoding (PR#18132).
  * Embedded R on Windows can now find R home directory via the
    registry even when installed only for the current user
    (PR#18135).
  * pretty(x) with finite x now returns finite values also in the
    case where the extreme x values are close in size to the maximal
    representable number .Machine$double.xmax.
    Also, it's been tweaked for very small ranges and when a boundary
    is close (or equal) to zero; e.g., pretty(c(0,1e-317)) no longer
    has negative numbers, currently still warning about a very small
    range, and pretty(2^-(1024 - 2^-1/(c(24,10)))) is more accurate.
  * The error message for not finding vignette files when weaving has
    correct file sizes now. (Thanks to Sebastian Meyer's PR#18154.)
  * dnbinom(20, &lt;large&gt;, 1) now correctly gives 0, and similar cases
    are more accurate with underflow precaution.  (Reported by Francisco Vera Alcivar in PR#18072.)</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635163200">- repaired https://bugzilla.suse.com/show_bug.cgi?id=1191380
  (rpmacros now go to rpmmacrodir)
- minor clean-ups in spec file</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635768000">- CHANGES IN R 4.1.2:
  C-LEVEL FACILITIES:
  * The workaround in headers R.h and Rmath.h (using namespace std;)
    for the Oracle Developer Studio compiler is no longer needed now
    C++11 is required so has been removed.  A couple more usages of
    log() (which should have been std::log()) with an int argument
    are reported on Solaris.
  * The undocumented limit of 4095 bytes on messages from the
    S-compatibility macros PROBLEM and MESSAGE is now documented and
    longer messages will be silently truncated rather than
    potentially causing segfaults.
  * If the R_NO_SEGV_HANDLER environment variable is non-empty, the
    signal handler for SEGV/ILL/BUS signals (which offers recovery
    user interface) is not set. This allows more reliable debugging
    of crashes that involve the console.
  DEPRECATED AND DEFUNCT:
  * The legacy S-compatibility macros PROBLEM, MESSAGE, ERROR, WARN,
    WARNING, RECOVER, ... are deprecated and will be hidden in R
    4.2.0. R's native interface of Rf_error and Rf_warning has long
    been preferred.
  BUG FIXES:
  * .mapply(F, dots, .) no longer segfaults when dots is not a list
    and uses match.fun(F) as always documented; reported by Andrew
    Simmons in PR#18164.
  * hist(&lt;Date&gt;, ...) and hist(&lt;POSIXt&gt;, ...)  no longer pass
    arguments for rect() (such as col and density) to axis().
    (Thanks to Sebastian Meyer's PR#18171.)
  * \Sexpr{ch} now preserves Encoding(ch). (Thanks to report and
    patch by Jeroen Ooms in PR#18152.)
  * Setting the RNG to "Marsaglia-Multicarry" e.g., by RNGkind(), now
    warns in more places, thanks to Andr'e Gillibert's report and
    patch in PR#18168.
  * gray(numeric(), alpha=1/2) no longer segfaults, fixing PR#18183,
    reported by Till Krenz.
  * Fixed dnbinom(x, size=&lt;very_small&gt;, .., log=TRUE) regression,
    reported by Martin Morgan.
  * as.Date.POSIXlt(x) now keeps names(x), thanks to Davis Vaughan's
    report and patch in PR#18188.
  * model.response() now strips an "AsIs" class typically, thanks to
    Duncan Murdoch's report and other discussants in PR#18190.
  * try() is considerably faster in case of an error and long call,
    as e.g., from some do.call().  Thanks to Alexander Kaever's
    suggestion posted to R-devel.
  * qqline(y = &lt;object&gt;) such as y=I(.), now works, see also
    PR#18190.
  * Non-integer mgp par() settings are now handled correctly in
    axis() and mtext(), thanks to Mikael Jagan and Duncan Murdoch's
    report and suggestion in PR#18194.
  * formatC(x) returns length zero character() now, rather than ""
    when x is of length zero, as documented, thanks to Davis
    Vaughan's post to R-devel.
  * removeSource(fn) now retains (other) attributes(fn).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1647000000">- CHANGES IN R 4.1.3:
  NEW FEATURES:
  * The default version of Bioconductor has been changed to 3.14.
    (This is used by setRepositories and the menus in GUIs.)
  UTILITIES:
  * R CMD check --as-cran has a workaround for a bug in versions of
    file up to at least 5.41 which mis-identify DBF files last
    changed in 2022 as executables.
  C-LEVEL FACILITIES:
  * The legacy S-compatibility macros SINGLE_* in R_ext/Constants.h
    (included by R.h) are deprecated and will be removed in R 4.2.0.
  BUG FIXES:
  * Initialization of self-starting nls() models with initialization
    functions following the pre-R-4.1.0 API (without the ...
    argument) works again for now, with a deprecation warning.
  * Fixed quoting of ~autodetect~ in Java setting defaults to avoid
    inadvertent user lookup due to leading ~, reported in PR#18231 by
    Harold Gutch.
  * substr(., start, stop) &lt;- v now treats _negative_ stop values
    correctly.  Reported with a patch in PR#18228 by Brodie Gaslam.
  * Subscripting an array x without dimnames by a
    length(dim(x))-column character matrix gave "random" non-sense,
    now an error; reported in PR#18244 by Mikael Jagan.
  * ...names() now matches names(list(...)) closely, fixing PR#18247.
  * all.equal(*, scale = s) now works as intended when length(s) &gt; 1,
    partly thanks to Michael Chirico's PR#18272.
  * print(x) for long vectors x now also works for named atomic
    vectors or lists and prints the correct number when reaching the
    getOption("max.print") limit; partly thanks to a report and
    proposal by Hugh Parsonage to the R-devel list.
  * all.equal(&lt;selfStart&gt;, *) no longer signals a deprecation
    warning.
  * reformulate(*, response=r) gives a helpful error message now when
    length(r) &gt; 1, thanks to Bill Dunlap's PR#18281.
  * Modifying globalCallingHandlers inside withCallingHandlers() now
    works or fails correctly, thanks to Henrik Bengtsson's PR#18257.
  * hist(&lt;Date&gt;, breaks = "days") and hist(&lt;POSIXt&gt;, breaks = "secs")
    no longer fail for inputs of length 1.
  * qbeta(.001, .9, .009) and similar cases now converge correctly
    thanks to Ben Bolker's report in PR#17746.
  * window(x, start, end) no longer wrongly signals "'start' cannot
    be after 'end'", fixing PR#17527 and PR#18291.
  * data() now checks that its (rarely used) list argument is a
    character vector - a couple of packages passed other types and
    gave incorrect results.
  * which() now checks its arr.ind argument is TRUE rather coercing
    to logical and taking the first element - which gave incorrect
    results in package code.
  * model.weights() and model.offset() more carefully extract their
    model components, thanks to Ben Bolker and Tim Taylor's R-devel
    post.
  * list.files(recursive = TRUE) now shows all broken symlinks
    (previously, some of them may have been omitted, PR#18296).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1650628800">- CHANGES IN R 4.2.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * The formula method of aggregate() now matches the generic in
    naming its first argument x (resolving PR#18299 by Thomas
    Soeiro).
    This means that calling aggregate() with a formula as a named
    first argument requires name formula in earlier versions of R and
    name x now, so portable code should not name the argument (code
    in many packages did).
  * Calling &amp;&amp; or || with either argument of length greater than one
    now gives a warning (which it is intended will become an error).
  * Calling if() or while() with a condition of length greater than
    one gives an error rather than a warning.  Consequently,
    environment variable _R_CHECK_LENGTH_1_CONDITION_ no longer has
    any effect.
  * Windows users should consult the WINDOWS section below for some
    profound changes including
  * Support for 32-bit builds has been dropped.
  * UTF-8 locales are used where available.
  * The default locations for the R installation and personal
    library folder have been changed.
    Thanks to Tomas Kalibera for months of work on the Windows port
    for this release.
  NEW FEATURES:
  * matrix(x, n, m) now warns in more cases where length(x) differs
    from n * m, as suggested by Abby Spurdle and Wolfgang Huber in
    Feb 2021 on the R-devel mailing list.
    This warning can be turned into an error by setting environment
    variable _R_CHECK_MATRIX_DATA_ to TRUE: R CMD check --as-cran
    does so unless it is already set.
  * Function file_test() in package utils gains tests for symlinks,
    readability and writability.
  * capabilities("libxml") is now false.
    The description of capabilities("http/ftp") now reflects that it
    refers to the default method, no longer the internal one.
  * simplify2array() gains an except argument for controlling the
    exceptions used by sapply().
  * Environment variables R_LIBS_USER and R_LIBS_SITE are both now
    set to the R system default if unset or empty, and can be set to
    NULL to indicate an empty list of user or site library
    directories.
  * The warning for axis()(-like) calls in cases of relatively small
    ranges (typically in log-scale situations) is slightly improved
    _and_ suppressed from explicit calls to .axisPars() as has always
    been the intention.
  * The contrasts setter function `contrasts&lt;-` gains an explicit
    default how.many = NULL rather than just using missing(how.many).
  * grid.pretty() gains a new optional argument n = 5.
  * There is a new function .pretty() with option bounds as a
    technical-utility version of pretty().  It and pretty() gain a
    new argument f.min with a better than back-compatible default.
  * Function grDevices::axisTicks() and related functions such as
    graphics::axis() work better, notably for the log scale; partly
    because of the pretty() improvements, but also because care is
    taken e.g., when ylim is finite but diff(ylim) is infinite.
  * nclass.FD() gains a digits option.
  * The R Mathlib internal C function bd0() (called indirectly from a
    dozen probability density and distribution functions such as
    dpois(), dbinom(), dgamma(), pgamma() _etc_) has been
    complemented by a more sophisticated and (mostly) more accurate C
    function ebd0(), currently called only by internal dpois_raw()
    improving accuracy for R level dpois() and potentially others
    calling it such as dnbinom(), dgamma() or pgamma().  (Thanks to
    Morten Welinder's PR#15628.)
  * write.ftable() gains sep = " " argument as suggested by Thomas
    Soeiro.
  * The names of the locale categories supported by R's
    Sys.getlocale() and Sys.setlocale() are now provided by variable
    .LC.categories in the base namespace.
  * The Date and POSIXt methods for hist() and the histogram method
    for plot() now also use the new default col = "lightgray" in
    consistency with the corresponding change to hist()'s default for
    R 4.0.0.
  * hist.default() gains new fuzz argument, and the histogram plot
    method no longer uses fractional axis ticks when displaying
    counts ("Frequency").
  * mapply() and hence Map() now also obey the "max-or-0-if-any"
    recycling rule, such that, e.g., Map(`+`, 1:3, 1[0]) is valid
    now.
  * as.character(&lt;obj&gt;) for "hexmode" or "octmode" objects now
    fulfils the important basic rule as.character(x)[j] ===
    as.character(x[j]).
  * The set utility functions, notably intersect() have been tweaked
    to be more consistent and symmetric in their two set arguments,
    also preserving a common mode.
  * substr(ch, start,end) &lt;- new now e.g., preserves names(ch); ditto
    for substring(), thanks to a patch from Brodie Gaslam.
  * plot(&lt;lm&gt;) gains a extend.ylim.f argument, in partial response to
    PR#15285; further PR#17784 is fixed thanks to several
    contributors and a patch by Elin Waring.  The Cook's dist
    contours get customizable via cook.col and cook.lty with a
    different default color and their legend is nicer by default and
    customizable via cook.legendChanges.
  * Attempting to subset an object that is not subsettable now
    signals an error of class notSubsettableError. The
    non-subsettable object is contained in the object field of the
    error condition.
  * Subscript-out-of-bounds errors are now signaled as errors of
    class subscriptOutOfBoundsError.
  * Stack-overflow errors are now signaled as errors inheriting from
    class stackOverflowError. See ?stackOverflowError for more
    details.
  * New partly experimental Sys.setLanguage() utility, solving the
    main problem of PR#18055.
  * gettext() and gettextf() get a new option trim = TRUE which when
    set to false allows translations for strings such as "Execution
    halted\n" typical for C code.
  * An experimental implementation of hash tables is now available.
    See ?hashtab for more details.
  * identical() gains a extptr.as.ref argument for requesting that
    external pointer objects be compared as reference objects.
  * reorder() gets an argument decreasing which it passes to sort()
    for level creation; based on the wish and patch by Thomas Soeiro
    in PR#18243.
  * as.vector() gains a data.frame method which returns a simple
    named list, also clearing a long standing 'FIXME' to enable
    as.vector(&lt;data.frame&gt;, mode="list").  This breaks code relying
    on as.vector(&lt;data.frame&gt;) to return the unchanged data frame.
  * legend() is now vectorized for arguments cex, x.intersp, and
    text.width.  The latter can now also be specified as a vector
    (one element for each column of the legend) or as NA for
    computing a proper column wise maximum value of strwidth(legend).
    The argument y.intersp can be specified as a vector with one
    entry for each row of the legend.
    legend() also gains new arguments title.cex and title.font.
    Thanks to Swetlana Herbrandt.
  * Deparsing no longer remaps attribute names dim, dimnames, levels,
    names and tsp to historical S-compatible names (which structure()
    maps back).
  * sample() and sample.int() have additional sanity checks on their
    size and n arguments.
    all.equal.numeric() gains a sanity check on its tolerance
    argument - calling all.equal(a, b, c) for three numeric vectors
    is a surprisingly common error.
    mean(na.rm =), rank(na.last =), barplot(legend.text =),
    boxplot(), contour(drawlabels =), polygon(border =) and
    methods::is(class2 =) have more robust sanity checks on their
    arguments.
    R CMD Rd2pdf (used by R CMD check) has a more robust sanity check
    on the format of \alias{} commands.
  * psigamma(x, deriv) for negative x now also works for deriv = 4
    and 5; their underlying C level dpsifn() is documented in
    'Writing R Extensions'.
  * The HTML help system now uses HTML5 (wish of PR#18149).
  * ks.test() now provides exact p-values also with ties and MC
    p-values in the two-sample (Smirnov) case.  By Torsten Hothorn.
  * ks.test() gains a formula interface, with y ~ 1 for the
    one-sample (Kolmogorov) test and y ~ group for the two-sample
    (Smirnov) test.  Contributed by Torsten Hothorn.
  * The return value from ks.test() now has class c("ks.test",
    "htest") - packages using try() need to take care to use
    inherits() and not == on the class.
  * New functions psmirnov(), qsmirnov() and rsmirnov() in package
    stats implementing the asymptotic and exact distributions of the
    two-sample Smirnov statistic.
  * iconv() now allows sub = "c99" to use C99-style escapes for UTF-8
    inputs which cannot be converted to encoding to.
  * In a forward pipe |&gt; expression it is now possible to use a named
    argument with the placeholder _ in the rhs call to specify where
    the lhs is to be inserted.  The placeholder can only appear once
    on the rhs.
  * The included LAPACK sources have been updated to version 3.10.0,
    except for the four Fortran 77 routines which 3.10.0 has
    re-implemented in Fortran 90 (where the older versions have been
    retained as the R build process does not support Fortran 90).
  * path.expand() and most other uses of tilde expansion now warn if
    a path would be too long if expanded.  (An exception is
    file.exists(), which silently returns false.)
  * trunc(&lt;Date&gt;, *) now supports units = "months" or "years" for
    consistency with the POSIXt method, thanks to Dirk Eddelbuettel's
    proposal in PR#18099.
  * list2DF() now checks that its arguments are of the same length,
    rather than use recycling.
  * The HTML help system has several new features: LaTeX-like math
    can be typeset using either KaTeX or MathJax, usage and example
    code is highlighted using Prism, and for dynamic help the output
    of examples and demos can be shown within the browser if the
    knitr package is installed. These features can be disabled by
    setting the environment variable _R_HELP_ENABLE_ENHANCED_HTML_ to
    a false value.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 15
    and so packages that provide graphics devices should be
    reinstalled.
  * The grid package now allows the user to specify a "vector" of
    pattern fills.  The fill argument to gpar() accepts a list of
    gradients and/or patterns and the functions linearGradient(),
    radialGradient(), and pattern() have a new group argument.
    Points grobs (data symbols) can now also have a pattern fill.
    The grobCoords() function now returns a more informative and
    complex result.
  * The grid package has new functions for drawing isolated groups:
    grid.group(), grid.define(), and grid.use().  These functions add
    compositing operators and affine transformations to R's graphics
    capabilities.
    The grid package also has new functions for stroking and filling
    paths: grid.stroke(), grid.fill(), and grid.fillStroke().
    A new function as.path() allows the user to specify the fill rule
    for a path that is to be used for clipping, stroking, or filling;
    available options are "winding" and "evenodd".  A new function
    as.mask() allows the user to specify the type of a mask;
    available options are "alpha" and "luminance".
    These new features are only supported so far (at most) on the
    Cairo-based graphics devices and on the pdf() device.
  * dev.capabilities() reports on device support for the new
    features.
  * par() now warns about unnamed non-character arguments to prevent
    misuse such as {usr &lt;- par("usr"); par(usr)}.
  INSTALLATION:
  * Facilities for accessing ftp:// sites are no longer tested
    (except _pro tem_ for curlGetHeaders()) as modern browsers have
    removed support.
  * R can now be built with DEFS = -DSTRICT_R_HEADERS .
  PACKAGE INSTALLATION:
  * R CMD INSTALL no longer tangles vignettes. This completes an R
    CMD build change in R 3.0.0 and affects packages built before R
    3.0.2. Such packages should be re-made with R CMD build to have
    the tangled R code of vignettes shipped with the tarball.
  * USE_FC_LEN_T will become the default: this uses the correct
    prototypes for Fortran BLAS/LAPACK routines called from C/C++,
    and requires adjustment of most such calls - see 'Writing R
    Extensions' SS6.6.2.  (This has been supported since R 3.6.2.)
  * Package installation speed for packages installed with
    keep.source has been improved. This resolve the issue reported by
    Ofek Shilon in PR#18236.
  UTILITIES:
  * R CMD check can optionally report files/directories left behind
    in home, /tmp (even though TMPDIR is set) and other directories.
    See the "R Internals" manual for details.
  * R CMD check now reports byte-compilation errors during
    installation.  These are not usually fatal but may result in
    parts of the package not being byte-compiled.
  * _R_CHECK_DEPENDS_ONLY_ can be applied selectively to examples,
    tests and/or vignettes in R CMD check: see the "R Internals"
    manual.
  * _R_CHECK_SRC_MINUS_W_IMPLICIT_ now defaults to true: recent
    versions of Apple clang on macOS have made implicit function
    declarations in C into a compilation error.
  * R CMD check --as-cran makes use of the environment variable
    AUTORECONF.  See the "R Internals" manual SS8 for further details.
  * R CMD check --use-valgrind also uses valgrind when re-building
    vignettes as some non-Sweave vignettes unhelpfully comment out
    all their code when R CMD check runs vignettes.
  * Errors in re-building vignettes (unless there are LaTeX errors)
    are reported by R CMD check as ERROR rather than WARNING when
    running vignettes has been skipped (as it frequently is in CRAN
    checks and by --as-cran).
  * R CMD Rd2pdf gains a --quiet option that is used by R CMD build
    when building the PDF package manual.
  * R CMD Rd2pdf now always runs LaTeX in batch mode, consistent with
    Texinfo &gt;= 6.7. The --batch option is ignored.
  * R CMD build and R CMD check now include the Rd file name and line
    numbers in the error message of an \Sexpr evaluation failure.
  * For packages using the \doi Rd macro (now an install-time \Sexpr)
    but no other dynamic Rd content, R CMD build now produces a
    smaller tarball and is considerably faster - skipping temporary
    package installation.
  C-LEVEL FACILITIES:
  * The non-API header R_ext/R-ftp-http.h is no longer provided, as
    the entry points it covered are now all defunct.
  * A number of non-API declarations and macro definitions have been
    moved from the installed header Rinternals.h to the internal
    header Defn.h. Packages that only use entry points and
    definitions documented to be part of the API as specified in
    'Writing R Extensions' SS6 should not be affected.
  * The macro USE_RINTERNALS no longer has any effect when compiling
    package code.  Packages which also use R_NO_REMAP will need to
    ensure that the remapped names are used for calls to API
    functions that were formerly also made available as macros.
  * The deprecated legacy S-compatibility macros PROBLEM, MESSAGE,
    ERROR, WARN, WARNING, RECOVER, ... are no longer defined in
    R_exts/RS.h (included by R.h).  Replace these by calls to
    Rf_error and Rf_warning (defined in header R_ext/Error.h included
    by R.h).
    Header R_ext/RS.h no longer includes R_ext/Error.h.
  * Header R_ext/Constants.h (included by R.h) when included from C++
    now includes the C++ header cfloat rather than the C header
    float.h (now possible as C++11 is required).
  * The legacy S-compatibility macros DOUBLE_* in R_ext/Constants.h
    (included by R.h) are deprecated.
  * The deprecated S-compatibility macros SINGLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * R_Calloc, R_Free and R_Realloc are preferred to their unprefixed
    forms and error messages now use the prefix. These forms were
    introduced in R 3.4.0 and are available even when
    STRICT_R_HEADERS is defined.
  * rmultinom has been documented in 'Writing R Extensions' SS6 so is
    now part of the R API.
  * Similarly, Rtanpi, called from R level tanpi() is now part of the
    R API.
  * The long-deprecated, undocumented and non-API entry point call_R
    is no longer declared in R_ext/RS.h (included by R.h).
  * The header S.h which has been unsupported since Jan 2016 has been
    removed.  Use R.h instead.
  DEPRECATED AND DEFUNCT:
  * The (non-default and deprecated) method = "internal" for
    download.file() and url() no longer supports http:// nor ftp://
    URIs.  (It is used only for file:// URIs.)
    On Windows, download.file(method = "wininet") no longer supports
    ftp:// URIs.  (It is no longer the default method, which is
    "libcurl" and does.)
    On Windows, the deprecated method = "wininet" now gives a warning
    for http:// and https:// URIs for both download.file() and url().
    (It is no longer the default method.)
  * On Windows, the command-line option --max-mem-size and
    environment variable R_MAX_MEM_SIZE are defunct.  The memory
    allocation limit was important for 32-bit builds, but these are
    no longer supported.
  * default.stringsAsFactors() is now formally deprecated, where that
    was only mentioned on its regular help page, previously.  So it
    now gives a warning if called.
  * unix.time() is defunct now; it had been deprecated since R 3.4.0.
  BUG FIXES:
  * Setting digits = 0 in format(), print.default() (and hence
    typically print()) or options() is again invalid.  Its behaviour
    was platform-dependent, and it is unclear what "zero significant
    digits" should mean (PR#18098).
  * Messages from C code in the cairo section of package grDevices
    are now also offered for translation, thanks to Michael Chirico's
    PR#18123.
  * mean(x) with finite x now is finite also without "long.double"
    capability.
  * R CMD Rd2pdf no longer leaves an empty build directory behind
    when it aborts due to an already existing output file.  (Thanks
    to Sebastian Meyer's PR#18141.)
  * density(x, weights = w, na.rm = TRUE) when anyNA(x) is true, now
    removes weights "in parallel" to x, fixing PR#18151, reported by
    Matthias Gondan.  Additionally, it gets a subdensity option.
  * Conversion of \Sexpr[]{&lt;expR&gt;} to LaTeX or HTML no longer
    produces long blocks of empty lines when &lt;expR&gt; itself contains
    several lines all producing empty output.  Thanks to a report and
    patch by Ivan Krylov posted to R-devel.
  * R CMD build no longer fails if a package vignette uses child
    documents and inst/doc exists.  (Thanks to Sebastian Meyer's
    PR#18156.)
  * When an R documentation ('help' source) file man/foo.Rd in a
    package has \donttest{..} examples with a syntax error, it is now
    signalled as ERROR and with correct line numbers relating to the
  * -Ex.R file, thanks to Duncan Murdoch and Sebastian Meyer's
    reports and patch proposals in PR#17501.
  * Improved determination of the correct translation domain in
    non-base packages, addressing the combination of PR#18092 and
    PR#17998 (#c6) with reports and _augmented_ patch #2904 by
    Suharto Anggono.
    Note that "R-base" is no longer the default domain e.g., for
    top-level calls to gettext(); rather translation needs explicit
    domain = * specification in such cases.
  * identical(attrib.as.set=FALSE) now works correctly with data
    frames with default row names (Thanks to Charlie Gao's PR#18179).
  * txtProgressBar() now enforces a non-zero width for argument char,
    without which no progress can be visible.
  * dimnames(table(d)) is more consistent in the case where d is a
    list with a single component, thanks to Thomas Soeiro's report to
    R-devel.
    Further, table(d1, d2) now gives an error when d1 and d2 are data
    frames as suggested by Thomas in PR#18224.
  * Fix for drawing semi-transparent lines and fills on the native
    Windows graphics device (PR#18219 and PR#16694).  Thanks to Nick
    Ray for helpful diagnosis on Bugzilla.
  * The deparser now wraps sub-expressions such as if(A) ..  with
    parentheses when needed; thanks to Duncan Murdoch's PR#18232 and
    Lionel Henry's patches there.
  * remove.packages() no longer tries to uninstall Priority: base
    packages, thanks to a report and suggestions by Colin Fay in
    PR#18227.
  * win.metafile() now has xpinch and ypinch arguments so that the
    user can override Windows' (potentially wrong) guess at device
    dimensions.
  * x[i] and x[[i]] for non-integer i should now behave in all cases
    as always documented: the index used is equivalent to
    as.integer(i) unless that would overflow where trunc(i) is used
    instead; thanks to Suharto Anggono's report and patch proposals
    in PR#17977.
  * asOneSidedFormula() now associates the resulting formula with the
    global environment rather than the evaluation environment created
    for the call.
  * &lt;bibentry&gt;$name now matches the field name case-insensitively,
    consistent with bibentry() creation and the replacement method.
  * cbind() failed to detect some length mismatches with a mixture of
    time-series and non-time-series inputs.
  * The default LaTeX style file Sweave.sty used by the RweaveLatex
    driver no longer loads the obsolete ae package; thanks to a
    report by Thomas Soeiro in PR#18271.  Furthermore, it now skips
    \usepackage[T1]{fontenc} for engines other than pdfTeX (if
    detected) or if the new [nofontenc] option is used.
  * smooth.spline() now stores its logical cv argument more safely,
    fixing a rare bug when printing, and also stores n.
  * smooth.spline(x,y,*) now computes the cv.crit statistic
    correctly, also when is.unsorted(x), fixing PR#18294.
  * The data.frame method of rbind() now warns when binding
    not-wholly-recycling vectors, by analogy to the default method
    (for matrices).
  * setAs() finds the correct class for name to when multiple
    packages define a class with that name. Thanks to Gabor Csardi
    for the report.
  * Fix for detaching a package when two classes of the same name are
    present in method signatures for the same generic. Thanks to
    Gabor Csardi for the report.
  * match.arg("", c("", "a", "B")) gives a better error message, in
    part from PR#17959, thanks to Elin Waring.
  * R CMD Sweave --clean no longer removes pre-existing files or
    subdirectories (PR#18242).
  * The quartz() device no longer splits polylines into subpaths.
    That has caused narrowly-spaced lines with many points to always
    look solid even when dashed line type was used due to dash phase
    restarts.
  * Deparsing constructs such as quote(1 + `!`(2) + 3) works again as
    before R 3.5.0, thanks to the report and patch in PR#18284 by
    Suharto Anggono.
  * as.list(f) for a factor f now keeps names(f), fixing PR#18309.
  * qbeta(.001, .9, .009) and analogous qf() calls now return a
    correct value instead of NaN or wrongly 1, all with a warning;
    thanks to the report by Ludger Goeminne in PR#18302.
  * plot.lm() failed to produce the plot of residuals vs.  factor
    levels (i.e., which=5 when leverages are constant) for models
    with character predictors (PR#17840).
  * interaction.plot(..., xtick = TRUE) misplaced the x-axis line
    (PR#18305).
  * Not strictly fixing a bug, format()ing and print()ing of
    non-finite Date and POSIXt values NaN and +/-Inf no longer show
    as NA but the respective string, e.g., Inf, for consistency with
    numeric vector's behaviour, fulfilling the wish of PR#18308.
  * R CMD check no longer runs test scripts generated from
    corresponding .Rin files twice and now signals an ERROR if
    processing an .Rin script fails.
  * tools::Rd2txt() used for plain-text help pages now renders \hrefs
    (if tools::Rd2txt_options(showURLs = TRUE)) and \urls with
    percent-encoding and standards-compliant delimiting style (angle
    brackets and no URL: prefix).  \email is now rendered with a
    mailto: prefix.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1655985600">- CHANGES IN R 4.2.1:
  NEW FEATURES:
  * New function utils::findCRANmirror() to find out if a CRAN mirror
    has been selected, otherwise fallback to the main site.  This
    behaves in the same way as tools::CRAN_package_db() and is
    intended for packages wishing to access CRAN for purposes other
    than installing packages.
    The need for this was shown by a day when the main CRAN website
    was offline and a dozen or so packages which had its URL
    hardcoded failed their checks.
  INSTALLATION on a UNIX-ALIKE:
  * The libraries searched for by --with-blas (without a value) now
    include BLIS (after OpenBLAS but before ATLAS).  And on macOS,
    the Accelerate framework (after ATLAS).  (This is patterned after
    the AX_BLAS macro from the Autoconf Archive.)
  * The included LAPACK sources have been updated to 3.10.1.
  UTILITIES:
  * The (full path to) the command tidy to be used for HTML
    validation can be set by environment variable R_TIDYCMD.
  * Setting environment variable _R_CHECK_RD_VALIDATE_RD2HTML_ to a
    false value will override R CMD check --as-cran and turn off HTML
    validation.  This provides a way to circumvent a problematic
    tidy.
    The 2006 version that ships with macOS is always skipped.
  C-LEVEL FACILITIES:
  * The undocumented legacy declarations of Sint, Sfloat, SINT_MAX
    and SINT_MIN in header R.h are deprecated.
  BUG FIXES:
  * fisher.test(d) no longer segfaults for "large" d; fixing PR#18336
    by preventing/detecting an integer overflow reliably.
  * tar(., files=*) now produces correctly the warning about invalid
    uid or gid of files, fixing PR#18344, reported by Martin Morgan.
  * tk_choose.files() with multi = FALSE misbehaved on paths
    containing spaces (PR#18334) (regression introduced in R 4.0.0).
  * sort(x, partial = ind, *) now works correctly notably for the
    non-default na.last = FALSE or TRUE, fixing PR#18335 reported by
    James Edwards.
  * Environment variable _R_CHECK_XREFS_REPOSITORIES_ is only used
    for checking .Rd cross-references in R CMD check (as documented)
    and not for other uses looking for a CRAN mirror.
  * The search for a CRAN mirror when checking packages now uses
    getOption("repos") if that specifies a CRAN mirror, even when it
    does not also specify all three Bioconductor repositories (as was
    previously required).
  * The HTML code generated by tools::Rd2HTML() has been improved to
    pass tidy 5.8.0.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1667217600">- CHANGES IN R 4.2.2:
  NEW FEATURES:
  * tools::Rdiff(useDiff = TRUE) checks for the presence of an
    external diff command and switches to useDiff = FALSE if none is
    found.  This allows R CMD Rdiff to always work.
  * On Windows, environment variable R_LIBCURL_SSL_REVOKE_BEST_EFFORT
    can be used to switch to only 'best-effort' SSL certificate
    revocation checks with the default "libcurl" download method.
    This reduces security, but may be needed for downloads to work
    with MITM proxies (PR#18379).
  * (macOS) The run-time check for libraries from XQuartz for X11 and
    Tcl/Tk no longer uses otool from the Apple Developer Tools
    (PR#18400).
  * The LaTeX style for producing the PDF manuals, Rd.sty, now loads
    the standard amsmath, amsfonts and amssymb packages for greater
    coverage of math commands in the Rd \eqn and \deqn macros.  The
    \mathscr LaTeX command is also provided (via the mathrsfs
    package, if available, or the amsfonts bundle otherwise),
    fulfilling the wish of PR#18398.
  * (Windows) The default format of readClipboard() and
    writeClipboard() has been changed to 13 (CF_UNICODETEXT).
  INSTALLATION on a UNIX-ALIKE:
  * The PDF manuals (if built) can be compacted by the new target
    make compact-pdf (at the top level or in directory doc/manual).
  * There is now configure support for LLVM clang 15 on Linux, which
    defaults to position-independent (PIE) executables whereas
    gfortran does not.
  * Many small changes to ease compilation (and suppress warnings)
    with LLVM clang 15.
  BUG FIXES:
  * Rscript -e would fail if stdin were closed (Reported by Henrik
    Bengtsson.)
  * qt(*, log.p=TRUE) in outer tails no longer produces NaN in its
    final steps, thus fixing PR#18360.
  * tools::Rd2latex() now escapes hashes and ampersands when writing
    URLs, fixing LaTeX errors with such URLs in \tabular.
  * When isGeneric(f, fdef=*) is used with mismatching names, the
    warning is better understandable; reported (with fix) in PR#18370
    by Gabe Becker.
  * poly(x, n) now works again (and is now documented) when x is a
    "Date" or "POSIXct" object, or of another class while fulfilling
    mode(x) == "numeric".  This also enables poly(x, *, raw=TRUE) for
    such variables.  Reported by Michael Chirico to R-devel.
  * write.table(), write.csv() and write.csv2() restore their
    numerical precision (internal equivalent of digits = 15) after an
    interrupt (PR#18384).
  * One can now read also byte FF from a clipboard connection
    (PR#18385).
  * source("") and source(character()) now give more helpful error
    messages.
  * R CMD check --as-cran set _R_CHECK_TIMINGS_ too late to have the
    intended effect.
  * as.POSIXlt(x) now also works with very large dates x, fixing
    PR#18401 reported by Hannes M"uhleisen.
  * Files can now be extracted even from very large zip archives
    (PR#18390, thanks to Martin Jakt).
  * Non-finite objects of class "POSIXlt" are now correctly coerced
    to classes "Date" and "POSIXct"; following up on the extension to
    format() them correctly.
  * Added methods for is.finite(), is.infinite() and is.nan() for
    "POSIXlt" date-time objects.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1678881600">- CHANGES IN R 4.2.3:
  C-LEVEL FACILITIES:
  * The definition of DL_FUNC in R_ext/Rdynload.h has been changed to
    be fully C-compliant.  This means that functions loaded _via_ for
    example R_GetCCallable need to be cast to an appropriate type if
    they have any arguments.
  * .Machine has a new element sizeof.time_t to identify old systems
    with a 32-bit type and hence a limited range of date-times (and
    limited support for dates millions of years from present).
  PACKAGE INSTALLATION:
  * (Windows) The default C++ standard had accidentally been left at
    C++11 when it was changed to C++14 on Unix.
  BUG FIXES:
  * As "POSIXlt" objects may be "partially filled" and their list
    components meant to be recycled, length() now is the length of
    the longest component.
  * as.POSIXlt.Date() could underflow for dates in the far past (more
    than half a million years BCE).
  * as.Date.POSIXlt(x) would return "1970-01-01" instead of NA in R
    4.2.2, e.g., for
    x &lt;- as.POSIXlt(c("2019-01-30","2001-1-1"))
    x$mon &lt;- c(0L, NA); as.Date(x)
  * R CMD check failed to apply enabled _R_CHECK_SUGGESTS_ONLY_ to
    examples and vignettes (regression in R 4.2.0).
  * R CMD check did not re-build vignettes in separate processes by
    default (regression in R 4.2.0).
  * Running examples from HTML documentation now restores previous
    knitr settings and options (PR#18420).
  * Quartz: fonts are now located using Core Graphics API instead of
    deprecated ATS which is no longer supported in the macOS 13 SDK
    (PR#18426).  This also addresses an issue where the currently
    used font in the Quartz device context was not correctly
    retained.
  * (Windows) Math symbols in text drawing functions are again
    rendered correctly (PR#18440).  This fixes a regression in R
    4.2.1 caused by a fix in PR#18382 which uncovered an issue in
    GraphApp due to which the symbol charset was not used with TT
    Symbol font face.
  * (Windows) Installing a package with a src/Makefile.{win,ucrt}
    file includes ~/.R/Makevars.win64 in the search for user
    makevars, as documented in "R Installation and Administration"
    and done for packages with a src/Makevars.{win,ucrt} file.
  * format(&lt;POSIXlt_w/_unbalanced_sec&gt;, "....%OS&lt;n&gt;") with n &gt; 0 no
    longer accidentally uses the unbalanced seconds, thanks to
    Suharto Anggono's report (including patch) in PR#18448.
  * solve.default(a, b) works around issues with some versions of
    LAPACK when a contains NA or NaN values.
  * When UseMethod() cannot dispatch, it no longer segfaults
    producing the error message in case of a long class(), thanks to
    Joris Vankerschaver's report (including patch) in PR#18447.
  * When example(foo, ..) produces graphics on an interactive device
    it needs to open itself, it now leaves devAskNewPage() unchanged
    even when it was FALSE, thus fixing a 14 years old '&lt;FIXME&gt;'.
  * packageDescription() again catches errors from encoding
    conversions. This also fixes broken packageVersion() in C locale
    on systems where iconv does not support transliteration.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1681128000">- add patch to build with libcurl &gt;= 8</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1682078400">- CHANGES IN R 4.3.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Calling &amp;&amp; or || with LHS or (if evaluated) RHS of length greater
    than one is now always an error, with a report of the form
    'length = 4' in coercion to 'logical(1)'
    Environment variable _R_CHECK_LENGTH_1_LOGIC2_ no longer has any
    effect.
  NEW FEATURES:
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.10.1.  (This caused some platform-dependent
    changes to package check output.)  And then to the sources from
    LAPACK version 3.11.0 (with changes only to double complex
    subroutines).
  * The included LAPACK sources have been updated to include the four
    Fortran 90 routines rather than their Fortran 77 predecessors.
    This may give some different signs in SVDs or
    eigendecompositions..  (This completes the transition to LAPACK
    3.10.x begun in R 4.2.0.)
  * The LAPACK sources have been updated to version 3.11.0.  (No new
    subroutines have been added, so this almost entirely bug fixes:
    Those fixes do affect some computations with NaNs, including R's
    NA.)
  * The parser now signals _classed_ errors, notably in case of the
    pipe operator |&gt;.  The error object and message now give line and
    column numbers, mostly as proposed and provided by Duncan Murdoch
    in PR#18328.
  * toeplitz() is now generalized for asymmetric cases, with a
    toeplitz2() variant.
  * xy.coords() and xyz.coords() and consequently, e.g., plot(x,y,
    log = "y") now signal a _classed_ warning about negative values
    of y (where log(.) is NA).  Such a warning can be specifically
    suppressed or caught otherwise.
  * Regular expression functions now check more thoroughly whether
    their inputs are valid strings (in their encoding, e.g. in
    UTF-8).
  * The performance of grep(), sub(), gsub() and strsplit() has been
    improved, particularly with perl = TRUE and fixed = TRUE.  Use of
    useBytes = TRUE for performance reasons should no longer be
    needed and is discouraged: it may lead to incorrect results.
  * apropos() gains an argument dot_internals which is used by the
    completion (help(rcompgen)) engine to also see base internals
    such as .POSIXct().
  * Support in tools::Rdiff() for comparing uncompressed PDF files is
    further reduced - see its help page.
  * qqplot(x, y, ...) gains conf.level and conf.args arguments for
    computing and plotting a confidence band for the treatment
    function transforming the distribution of x into the distribution
    of y (Switzer, 1976, _Biometrika_). Contributed by Torsten
    Hothorn.
  * Performance of package_dependencies() has been improved for cases
    when the number of dependencies is large.
  * Strings newly created by gsub(), sub() and strsplit(), when any
    of the inputs is marked as "bytes", are also marked as "bytes".
    This reduces the risk of creating invalid strings and accidental
    substitution of bytes deemed invalid.
  * Support for readLines(encoding = "bytes") has been added to allow
    processing special text files byte-by-byte, without creating
    invalid strings.
  * iconv(from = "") now takes into account any declared encoding of
    the input elements and uses it in preference to the native
    encoding.  This reduces the risk of accidental creation of
    invalid strings, particularly when different elements of the
    input have different encoding (including "bytes").
  * Package repositories in getOption("repos") are now initialized
    from the repositories file when utils is loaded (if not already
    set, e.g., in .Rprofile).  (From a report and patch proposal by
    Gabriel Becker in PR#18405.)
  * compactPDF() gets a verbose option.
  * type.convert() and hence read.table() get new option tryLogical =
    TRUE with back compatible default.  When set to false, converts
    "F" or "T" columns to character.
  * Added new unit prefixes "R" and "Q" for abbreviating
    (unrealistically large) sizes beyond 10^{27} in standard = "SI",
    thanks to Henrik Bengtsson's PR#18435.
  * as.data.frame()'s default method now also works fine with atomic
    objects inheriting from classes such as "roman", "octmode" and
    "hexmode", such fulfilling the wish of PR#18421, by Benjamin
    Feakins.
  * The as.data.frame.vector() utility now errors for wrong-length
    row.names.  It warned for almost six years, with "Will be an
    error!".
  * sessionInfo() now also contains La_version() and reports codepage
    and timezone when relevant, in both print() and toLatex() methods
    which also get new option tzone for displaying timezone
    information when locale = FALSE.
  * New function R_compiled_by() reports the C and Fortran compilers
    used to build R, if known.
  * predict(&lt;lm&gt;, newdata = *) no longer unnecessarily creates an
    offset of all 0s.
  * solve() for complex inputs now uses argument tol and by default
    checks for 'computational singularity' (as it long has done for
    numeric inputs).
  * predict(&lt;rank-deficient lm&gt;, newdata=*) now obeys a new argument
    rankdeficient, with new default "warnif", warning only if there
    are non-estimable cases in newdata.  Other options include
    rankdeficient = "NA", predicting NA for non-estimable newdata
    cases.  This addresses PR#15072 by Russ Lenth and is based on his
    original proposal and discussions in PR#16158 also by David Firth
    and Elin Waring.  Still somewhat experimental.
  * Rgui console implementation now works better with the NVDA screen
    reader when the full blinking cursor is selected.  The underlying
    improvements in cursor handling may help also other screen
    readers on Windows.
  * The drop-field control in GraphApp can now be left with the TAB
    key and all controls can be navigated in the reverse order using
    the Shift+TAB key, improving accessibility of the Rgui
    configuration editor.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now fully accurate
    (instead of to "only" minimally five digits).
  * demo(error.catching) now also shows off withWarnings() and
    tryCatchWEMs().
  * As an experimental feature the placeholder _ can now also be used
    in the rhs of a forward pipe |&gt; expression as the first argument
    in an extraction call, such as _$coef. More generally, it can be
    used as the head of a chain of extractions, such as _$coef[[2]].
  * Spaces in the environment variable used to choose the R session's
    temporary directory (TMPDIR, TMP and TEMP are tried in turn) are
    now fatal.  (On Windows the 'short path' version of the path is
    tried and used if that does not contain a space.)
  * all.equal.numeric() gets a new optional switch giveErr to return
    the numeric error as attribute.  Relatedly,
    stopifnot(all.equal&lt;some&gt;(a, b, ..)) is as "smart" now, as
    stopifnot(all.equal(....)) has been already, thus allowing
    customized all.equal&lt;Some&gt;() wrappers.
  * R on Windows is now able to work with path names longer than 260
    characters when these are enabled in the system (requires at
    least Windows 10 version 1607).  Packages should be updated to
    work with long paths as well, instead of assuming PATH_MAX to be
    the maximum length.  Custom front-ends and applications embedding
    R need to update their manifests if they wish to allow this
    feature.  See
    &lt;https://blog.r-project.org/2023/03/07/path-length-limit-on-windows&gt;
    for more information.
  * 'Object not found' and 'Missing argument' errors now give a more
    accurate error context. Patch provided by Lionel Henry in
    PR#18241.
  * The @ operator is now an S3 generic. Based on contributions by
    Tomasz Kalinowski in PR#18482.
  * New generic chooseOpsMethod() provides a mechanism for objects to
    resolve cases where two suitable methods are found for an Ops
    Group Generic. This supports experimenting with alternative
    object systems. Based on contributions by Tomasz Kalinowski in
    PR#18484.
  * inherits(x, what) now accepts values other than a simple
    character vector for argument what. A new generic, nameOfClass(),
    is called to resolve the class name from what. This supports
    experimenting with alternative object systems. Based on
    contributions by Tomasz Kalinowski in PR#18485.
  * Detection of BLAS/LAPACK in use (sessionInfo()) with FlexiBLAS
    now reports the current backend.
  * The "data.frame" method for subset() now warns about extraneous
    arguments, typically catching the use of = instead of == in the
    subset expression.
  * Calling a:b when numeric a or b is longer than one may now be
    made into an error by setting environment variable
    _R_CHECK_LENGTH_COLON_ to a true value, along the proposal in
    PR#18419 by Henrik Bengtsson.
  * density(x, weights = *) now warns if automatic bandwidth
    selection happens without using weights; new optional warnWbw may
    suppress the warning.  Prompted by Christoph Dalitz' PR#18490 and
    its discussants.
  * rm(list = *) is faster and more readable thanks to Kevin Ushey's
    PR#18492.
  * The plot.lm() function no longer produces a normal Q-Q plot for
    GLMs. Instead it plots a half-normal Q-Q plot of the absolute
    value of the standardized deviance residuals.
  * The print() method for class "summary.glm" no longer shows
    summary statistics for the deviance residuals by default.  Its
    optional argument show.residuals can be used to show them if
    required.
  * The tapply() function now accepts a data frame as its X argument,
    and allows INDEX to be a formula in that case. by.data.frame()
    similarly allows INDICES to be a formula.
  * The performance of df[j] &lt;- value (including for missing j) and
    write.table(df) has been improved for data frames df with a large
    number of columns.  (Thanks to Gabriel Becker's PR#18500,
    PR#18503 and discussants, prompted by a report from Toby Dylan
    Hocking on the R-devel mailing list.)
  * The matrix multiply operator %*% is now an S3 generic, belonging
    to new group generic matrixOps.  From Tomasz Kalinowski's
    contribution in PR#18483.
  * New function array2DF() to convert arrays to data frames,
    particularly useful for the list arrays created by tapply().
  DATES and TIMES:
  * On platforms where (non-UTC) datetimes before 1902 (or before
    1900 as with system functions on recent macOS) are guessed by
    extrapolating time zones from 1902-2037, there is a warning at
    the first use of extrapolation in a session.  (As all time zones
    post 2037 are extrapolation, we do not warn on those.)
  * (Platforms using --with-internal-tzone, including Windows and by
    default macOS). How years are printed in dates or date-times can
    be controlled by environment variable R_PAD_YEARS_BY_ZERO.  The
    default remains to pad to 4 digits by zeroes, but setting value
    no gives no padding (as used by default by glibc).
  * strftime() tries harder to determine the offset for the "%z"
    format, and succeeds on the mainstream R platforms.
  * strftime() has a limit of 2048 bytes on the string produced -
    attempting to exceed this is an error.  (Previously it silently
    truncated at 255 bytes.)
  * sessionInfo() records (and by default prints) the system time
    zone as part of the locale information.  Also, the source
    (system/internal) of the date-time conversion and printing
    functions.
  * Objects of class "POSIXlt" created in this version of R always
    have 11 components: component zone is always set, and component
    gmtoff is set for times in UTC and usually set on the (almost
    all) platforms which have C-level support, otherwise is NA.
  * There are comprehensive validity checks on the structure of
    objects of class "POSIXlt" when converting (including formatting
    and printing).  (This avoids mis-conversions of hand-crafted
    objects.)
  * There is some support for using the native date-time routines on
    macOS: this is only viable on recent versions (e.g. 12.6 and 13)
    and does get wrong some historical changes (before 1900, during
    WWII).  Use of --with-internal-tzone remains the default.
  * as.POSIXct(&lt;numeric&gt;) and as.POSIXlt(.) (without specifying
    origin) now work.  So does as.Date(&lt;numeric&gt;).
  * as.Date.POSIXct(., tz) now treats several tz values, notably
    "GMT" as equivalent to "UTC", proposed and improved by Michael
    Chirico and Joshua Ulrich in PR#17674.
  * Experimental balancePOSIXlt() utility allows using "ragged" and
    or out-of-range "POSIXlt" objects more correctly, e.g., in
    subsetting and subassignments.  Such objects are now documented.
    More experimentally, a "POSIXlt" object may have an attribute
    "balanced" indicating if it is known to be filled or fully
    balanced.
  * Functions axis.Date() and axis.POSIXct() are rewritten to gain
    better default tick locations and better default formats by using
    prettyDate(). Thanks to Swetlana Herbrandt.
  * The mapping of Windows' names for time zones to IANA's 'Olson'
    names has been updated.  When ICU is available (it is by
    default), it is used to get a mapping for the current region set
    in Windows.  This can be overridden by setting environment
    variable TZ to the desired Olson name - see OlsonNames() for
    those currently available.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 16
    and so packages that provide graphics devices should be
    reinstalled.
  * The grDevices and grid packages have new functions for rendering
    typeset glyphs, primarily: grDevices::glyphInfo() and
    grid::grid.glyph().
    Rendering of typeset glyphs is only supported so far on the
    Cairo-based graphics devices and on the pdf() and quartz()
    devices.
  * The defined behaviour for "clear" and "source" compositing
    operators (via grid::grid.group()) has been changed (to align
    better with simple interpretation of original Porter-Duff
    definitions).
  * Support for gradients, patterns, clipping paths, masks, groups,
    compositing operators, and affine transformations has been added
    to the quartz() device.
  INSTALLATION on a UNIX-ALIKE:
  * A system installation of generic LAPACK 3.10.0 or later will be
    preferred to the version in the R sources.
    configure option --with-lapack=no (equivalently --without-lapack)
    forces compilation of the internal LAPACK sources.
    If --with-lapack is not specified, a system liblapack is looked
    for and used if it reports version 3.10.0 or later and does not
    contain BLAS routines.
    Packages using LAPACK will need to be reinstalled if this changes
    to using an external library.
  * On aarch64 Linux platforms using GCC, configure now defaults to
  - fPIC (instead of -fpic), as desired in PR#18326.
  * configure now checks conversion of datetimes between POSIXlt and
    POSIXct around year 2020.  Failure (which has been seen on
    platforms missing tzdata) is fatal.
  * If configure option --with-valgrind-instrumentation is given
    value 1 or 2, option --with-system-valgrind-headers is now the
    default and ignored (with a warning).  It is highly recommended
    that the system headers are installed alongside valgrind: they
    are part of its packaging on some Linux distributions and
    packaged separately (e.g. in the valgrind-devel RPM) on others.
    configure will give a warning if they are not found.
    The system headers will be required in a future release of R to
    build with valgrind instrumentation.
  * libcurl 8.x is now accepted by configure: despite a change in
    major version number it changes neither API nor ABI.
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools43, an update of the Rtools42 toolchain.  It is
    based on gcc 12 and newer versions of MinGW-W64, binutils and
    libraries.  At this time R-devel can still be built using
    Rtools42 without changes, but when R-devel is installed via the
    installer, it will by default look for Rtools43.
  * Old make targets rsync-extsoft and 32-bit ones that are no longer
    needed have been removed.
  * Default builds (including for packages) no longer select C99.
    Thus the C standard used is the default for the compiler, which
    for the toolchain in Rtools43 is C17.  (This is consistent with
    Unix builds.)
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++17 where
    available (which it is on all currently checked platforms): if
    not C++14 or C++11 is used if available otherwise C++ is not
    supported.
  * USE_FC_LEN_T is the default: this uses the correct
    (compiler-dependent) prototypes for Fortran BLAS/LAPACK routines
    called from C/C++, and requires adjustment of many such calls -
    see 'Writing R Extensions' SS6.6.1.
  * There is initial support for C++23 as several compilers are now
    supporting -std=c++23 or -std=c++2b or similar.  As for C++20,
    there no additional configure checks for C++23 features beyond a
    check that the compiler reports a __cplusplus value greater than
    that in the C++20 standard.  C++ feature tests should be used.
  * There is support for a package to indicate the version of the C
    standard which should be used to compile it, and for the
    installing user to specify this.  In most cases R defaults to the
    C compiler's default standard which is C17 (a `bug-fix' of C11) -
    earlier versions of R or compilers may have defaulted to C99.
    Current options are:
    USE_C17 Use a standard that is at most C17.  The intention is to
    allow legacy packages to still be installed when later C
    standards become the default, including packages using new
    keywords as identifiers or with K&amp;R-style function
    declarations.  This will use C17 if available, falling back
    to C11.
    USE_C90 Use the C90 (aka C89) standard.  (As that standard did
    not require compilers to identify that version, all we can
    verify is that the compiler does not claim to be using a
    later standard.  It may accept C99 features - for example
    clang accepts // to make comments.)
    USE_C99 Use the C99 standard. This should be rarely needed - it
    avoids the few new features of C11/C17 which can be useful if
    a package assumes them if C17 is specified and they are not
    implemented.
    USE_C23 Use C23 (or in future, later).  Compiler/library support
    for C23 is still being implemented, but LLVM clang from
    15.0.0 and the upcoming GCC 13 have quite extensive support.
    These can be specified as part of the SystemRequirements field in
    the package's DESCRIPTION file or _via_ options --use-C17 and so
    on of R CMD INSTALL and R CMD SHLIB.
    For further details see "Writing R Extensions" SS1.2.5.
  * (Windows) A src/Makefile.ucrt or src/Makefile.win file is now
    included after R_HOME/etcR_ARCH/Makeconf and so no longer needs
    to include that file itself.  Installation of a package with such
    a file now uses a site Makevars file in the same way as a package
    with a src/Makevars.win file would.
  * configure is now passed crucial variables such as CC and CFLAGS
    in its environment, as many packages were not setting them (as
    documented in 'Writing R Extensions' SS1.2).
    This has most effect where configure is used to compile parts of
    the package - most often by cmake or libtool which obfuscate the
    actual compile commands used.
    Also used for configure.win and configure.ucrt on Windows.
  FORTRAN FLAGS:
  * The flag -fno-optimize-sibling-calls is no longer forced for
    gfortran 7 and later.  It should no longer be needed now using
    'hidden' character-length arguments when calling BLAS/LAPACK
    routines from C/C++ is the default even for packages.  (Unless
    perhaps packages call Fortran code from C/C++ without using R's
    headers and without allowing for these arguments.)
  C-LEVEL FACILITIES:
  * The deprecated S-compatibility macros DOUBLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * The deprecated legacy typedefs of Sint and Sfloat in header R.h
    are no longer defined, and that header no longer includes header
    limits.h from C nor climits from C++.
  * New macro CAD5R() is provided in Rinternals.h and used in a few
    places in the R sources.
  * ALTREP now supports VECSXP vectors. Contributed by Gabor Csardi
    in PR#17620.
  * The Rcomplex definition (in header R_ext/Complex.h) has been
    extended to prevent possible mis-compilation when interfacing
    with Fortran (PR#18430).  The new definition causes compiler
    warnings with static initializers such as {1, 2}, which can be
    changed to {.r=1, .i=2}.
    Using the new definition from C++ depends on compiler extensions
    supporting C features that have not been incorporated into the
    C++ standards but are available in g++ and clang++: this may
    result in C++ compiler warnings but these have been worked around
    for recent versions of common compilers (GCC, Apple/LLVM clang,
    Intel).
    It is intended to change the inclusion of header R_ext/Complex.h
    by other R headers, so C/C++ code files which make use of
    Rcomplex should include that header explicitly.
  UTILITIES:
  * R CMD check does more checking of package .Rd files, warning
    about invalid email addresses and (some) invalid URIs and noting
    empty \item labels in description lists.
  * R CMD check now also reports problems when reading package news
    in md (file NEWS.md) and (optionally) plain text (file NEWS)
    formats.
  * _R_CHECK_TIMINGS_ defaults to a value from the environment even
    for R CMD check --as-cran; this allows for exceptionally fast or
    slow platforms.
    It now applies to checking PDF and HTML versions of the manuals,
    and 'checking CRAN incoming feasibility'.
  * R CMD check can optionally (but included in --as-cran) check
    whether HTML math rendering _via_ KaTeX works for the package .Rd
    files.
  * Non-interactive debugger invocations can be trapped by setting
    the environment variable _R_CHECK_BROWSER_NONINTERACTIVE_ to a
    true value.  This is enabled by R CMD check --as-cran to detect
    the use of leftover browser() statements in the package.
  * The use of sprintf and vsprintf from C/C++ has been deprecated in
    macOS 13 and is a known security risk.  R CMD check now reports
    (on all platforms) if their use is found in compiled code:
    replace by snprintf or vsnprintf respectively. [*NB:* whether
    such calls get compiled into the package is platform-dependent.]
  * Where recorded at installation, R CMD check reports the C and
    Fortran compilers used to build R.
    It reports the OS in use (if known, as given by osVersion) as
    well as that R was built for.
    It notes if a C++ standard was specified which is older than the
    current default: many packages have used C++11 to mean 'not
    C++98' - as C++11 is the minimum supported since R 4.0.0, that
    specification can probably be removed.
  * R CMD INSTALL reports the compilers (and on macOS, the SDK) used,
    and this is copied to the output of R CMD check.
    Where a C++ standard is specified, it is reported.
  * R CMD check's 'checking compilation flags in Makevars' has been
    relaxed to accept the use of flags such as -std=f2008 in
    PKG_FFLAGS.
  * tools::buildVignettes() has a new argument skip, which is used by
    R CMD check to skip (and note) vignettes with unavailable
    \VignetteDepends (PR#18318).
  * New generic .AtNames() added to enable class-specific completions
    after @. The formerly internal function findMatches() is now
    exported, mainly for use in methods for .DollarNames() and
    .AtNames().
  DEPRECATED AND DEFUNCT:
  * default.stringsAsFactors() is defunct.
  * Calling as.data.frame.&lt;class&gt;() directly (for 12 atomic classes)
    is going to be formally deprecated, currently activated by
    setting the environment variable
    _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ to non-empty, which also
    happens in R CMD check --as-cran.
  BUG FIXES:
  * Hashed environments with sizes less than 5 can now grow.
    (Reported to R-devel by Duncan Garmonsway.)
  * as.character(&lt;Rd&gt;, deparse = TRUE) failed to re-escape curly
    braces in LaTeX-like text.  (Reported by Hadley Wickham in
    PR#18324.)
  * library() now passes its lib.loc argument when requiring Depends
    packages; reported (with fix) in PR#18331 by Mikael Jagan.
  * R CMD Stangle: improved message about 'Output' files.
  * head(x, n) and tail(x, n) now signal an error if n is not
    numeric, instead of incidentally "working" sometimes returning
    all of x.  Reported and discussed by Colin Fay, in PR#18357.
  * The "lm" method for summary() now gives the correct F-statistic
    when the model contains an offset.  Reported in PR#18008.
  * C() and `contrasts&lt;-`() now preserve factor level names when
    given a function object (as opposed a function name which did
    preserve names). Reported in PR#17616.
  * c(a = 1, 2)[[]] no longer matches 2 but rather signals a
    _classed_ error.  Reported and analysed by Davis Vaughan in
    PR#18367, a duplicate of PR#18004, by Jan Meis et al.  For
    consistency, NULL[[]] is also erroneous now.  x[[]] &lt;- v gives an
    error of the same class "MissingSubscriptError".
  * The relist() function of utils now supports NULL elements in the
    skeleton (PR#15854).
  * ordered(levels = *) (missing x) now works analogously to factor(,
    ordered=TRUE); reported (with fix) by Achim Zeileis in PR#18389.
  * User-defined Rd macro definitions can now span multiple lines,
    thanks to a patch from Duncan Murdoch. Previously, the Rd parser
    silently ignored everything after the first line.
  * Plain-text help (tools::Rd2txt()) now preserves an initial blank
    line for text following description list items.
  * tools::Rd2HTML() and tools::Rd2latex() no longer split \arguments
    and \value lists at Rd comments.
  * tools::Rd2latex() now correctly handles optional text outside
    \items of argument lists as well as bracketed text at the
    beginning of sections, e.g., \value{[NULL]}.
  * as.character(&lt;POSIXt&gt;) now behaves more in line with the methods
    for atomic vectors such as numbers, and is no longer influenced
    by options().  Ditto for as.character(&lt;Date&gt;).  The
    as.character() method gets arguments digits and OutDec with
    defaults _not_ depending on options().  Use of as.character(*,
    format = .) now warns.
  * Similarly, the as.character.hexmode() and *.octmode() methods
    also behave as good citizen methods and back compatibility option
    keepStr = TRUE.
  * The as.POSIXlt(&lt;POSIXlt&gt;) and as.POSIXct(&lt;POSIXct&gt;) default
    methods now do obey their tz argument, also in this case.
  * as.POSIXlt(&lt;Date&gt;) now does apply a tz (time zone) argument, as
    does as.POSIXct(); partly suggested by Roland Fuss on the R-devel
    mailing list.
  * as.Date.POSIXlt(x) now also works when the list components are of
    unequal length, aka "partially filled" or "ragged".
  * expand.model.frame() looked up variables in the wrong environment
    when applied to models fitted without data.  Reported in
    PR#18414.
  * time() now (also) uses the ts.eps = getOption("ts.eps") argument
    and thus by default rounds values very close to the start (or
    end) of a year.  Based on a proposal by Andre"i V. Kostyrka on
    R-help.
  * Printing of a factanal() result with just one factor and sort =
    TRUE now works regularly, fixing PR#17863 by Timothy Bates,
    thanks to the 'R Contributors' working group.
  * Printing 0-length objects of class "factor", "roman", "hexmode",
    "octmode", "person", "bibentry", or "citation" now prints
    something better, one of which fixes PR#18422, reported by
    Benjamin Feakins.
  * Sys.timezone() queries timedatectl only if systemd is loaded;
    addressing a report by Jan Gorecki in PR#17421.
  * The formula method of cor.test() had scoping problems when
    environment(formula) was not the calling environment; reported
    with a patch proposal by Mao Kobayashi in PR#18439.
  * attach() of an environment with active bindings now preserves the
    active bindings.  Reported by Kevin Ushey in PR#18425.
  * BLAS detection now works also with system-provided libraries not
    available as regular files.  This fixes detection of the
    Accelerate framework on macOS since Big Sur.  Reported by David
    Novgorodsky.
  * download.file() gives a helpful error message in case of an
    invalid download.file.method option, thanks to Colin Fay's report
    in PR#18455.
  * Sporadic crashes of Rterm when using completion have been fixed.
  * Rprof() is now more reliable.  A livelock in thread
    initialization with too short sampling interval has been fixed on
    macOS.  A deadlock in using the C runtime has been fixed on
    Windows.  A potential deadlock has been prevented on Unix.
  * Cursor placement in Rgui now works even after a fixed-width font
    is selected.
  * Mandatory options (options()) are now set on startup so that
    saving and restoring them always works (PR#18372).
  * Package installation, R CMD INSTALL or install.packages(*), now
    parses each of the &lt;pkg&gt;/R/*.R files individually instead of
    first concatenating and then parse()ing the large resulting file.
    This allows parser or syntax errors to be diagnosed with correct
    file names and line numbers, thanks to Simon Dedman's report and
    Bill Dunlap's patch in PR#17859.
    This _does_ require syntactically self contained R source files
    now, fixing another inadvertent bug.
  * predict.lm(&lt;model with offset&gt;) now finds the offset in the
    correct environment, thanks to Andr'e Gillibert's report and patch
    in PR#18456.
  * getInitial(&lt;formula&gt;) now finds the selfStart model in the
    correct environment.  (Reported by Ivan Krylov in PR#18368.)
  * Fix for possible segfault when using recently-added graphics
    features, such as gradients, clipping paths, masks, and groups
    with pdf(file=NULL).
  * class(m) &lt;- class(m) no longer changes a matrix m by adding a
    class _attribute_.
  * packageDate(pkg) now only warns once if there is no pkg.
  * When ts() creates a multivariate time series, "mts", it also
    inherits from "array" now, and is.mts() is documented _and_
    stricter.
  * Rd2txt() now preserves line breaks of \verb Rd content and from
    duplicated \cr.  The former also fixes the rendering of verbatim
    output from Rd \Sexpr in plain-text help.
  * uniroot(f, interval) should no longer wrongly converge _outside_
    the interval in some cases where abs(f(x)) == Inf for an x at the
    interval boundary, thanks to posts by Ben Bolker and Serguei
    Sokol on R-devel.
  * Vectorized alpha handling in palette functions such as in gray(),
    rainbow(), or hcl.colors() works correctly now, thanks to Achim
    Zeileis' report and patch in PR#18476.
  * Formatting and print()ing of bibentry objects has dropped the
    deprecated citation.bibtex.max argument, such that the bibtex
    argument's default for print.bibentry() depends directly on the
    citation.bibtex.max option, whereas in format.bibentry() the
    option no longer applies.
  * Attempting to use a character string naming a foreign function
    entry point in a foreign function call in a package will now
    signal an error if the packages has called R_forceSymbols to
    specify that symbols must be used.
  * An error in table() could permanently set options(warn=2)
    promoting all subsequent warnings to errors.
  * The sigma() function gave misleading results for binary GLMs.  A
    new method for objects of class "glm" returns the square root of
    the estimate of the dispersion parameter using the same
    calculation as summary.glm().
  * bs() and ns() in the (typical) case of automatic knot
    construction, when some of the supposedly inner knots coincide
    with boundary knots, now moves them inside (with a warning),
    building on PR#18442 by Ben Bolker.
  * R CMD on Windows now skips the site profile with --no-site-file
    and --vanilla even when R_PROFILE is set (PR#18512, from Kevin
    Ushey).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1686916800">- CHANGES IN R 4.3.1:
  C-LEVEL FACILITIES:
  * The C-level API version of R's integrate(), Rdqags() in Applic.h,
    now returns the correct number of integrand evaluations neval,
    fixing PR#18515 reported and diagnosed by Stephen Wade.
  * The C prototypes for LAPACK calls dspgv and dtptrs in
    R_exts/Lapack.h had one too many and one too few character length
    arguments - but this has not caused any known issues. To get the
    corrected prototypes, include
    [#]include &lt;Rconfig.h&gt; // for PR18534fixed
    [#]ifdef PR18534fixed
    [#] define usePR18534fix 1
    [#]endif
    [#]include &lt;R_exts/Lapack.h&gt;
    in your C/C++ code (PR#18534).
  INSTALLATION:
  * Many of the checks of esoteric Internet operations and those
    using unreliable external sites have been moved to a new target
    that is not run by default and primarily intended for the core
    developers.  To run them use
    cd tests; make test-Internet-dev
  BUG FIXES:
  * .S3methods(), typically called from methods(), again marks
    methods from package base as visible.
    Also, the visibility of non-base methods is again determined by
    the method's presence in search().
  * tools::Rdiff() is now more robust against invalid strings, fixing
    installation tests on Windows without Rtools installed
    (PR#18530).
  * Fix (new) bug in hcl.colors(2, *), by Achim Zeileis (PR#18523).
  * head(., &lt;illegal&gt;) and tail(..) now produce more useful "Error in
    ...." error messages, fixing PR#18362.
  * Package code syntax on Windows is checked in UTF-8 when UTF-8 is
    the native encoding.
  * na.contiguous(x) now also returns the first run, when it is at
    the beginning and there is a later one of the same length;
    reported to R-devel, including a fix, by Georgi Boshnakov.
    Further, by default, it modifies only an existing attr(*,"tsp")
    but otherwise no longer sets one.
  * chol(&lt;not pos.def&gt;, pivot = &lt;T|F&gt;) now gives a correct error or
    warning message (depending on pivot), thanks to Mikael Jagan's
    (PR#18541).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1699012800">- CHANGES IN R 4.3.2:
  NEW FEATURES:
  * The default initialization of the "repos" option from the
    repositories file at startup can be skipped by setting
    environment variable R_REPOSITORIES to NULL such that
    getOption("repos") is empty if not set elsewhere.
  * qr.X() is now an implicit S4 generic in methods.
  * iconv(to = "ASCII//TRANSLIT") is emulated using substitution on
    platforms which do not support it (notably Alpine Linux).  This
    should give a human-readable conversion in ASCII on all platforms
    (rather than NA_character_).
  * trans3d() gains options continuous and verbose addressing the
    problem of possible "wrap around" when projecting too long
    curves, as reported by Achim Zeileis in PR#18537.
  * tools::showNonASCII() has been rewritten to work better on macOS
    14 (which has a changed implementation of iconv()).
  * tiff(type = "quartz") (the default on macOS) now warns if
    compression is specified: it continues to be ignored.
  INSTALLATION on a UNIX-ALIKE:
  * There is some support for building with Intel's LLVM-based
    compilers on x86_64 Linux, such as (C) icx, (C++) ipcx and
    (Fortran) ifx from oneAPI 2023.x.y.
  * There is support for using LLVM's flang-new as the Fortran
    compiler from LLVM 16.0.x (preferably 17.0.0 or later).
  UTILITIES:
  * R CMD check reports the use of the Fortran 90 random number
    generator RANDOM_NUMBER() and the subroutines to initialize it.
    'Writing R Extensions' has example code to use R's RNGs from
    Fortran.
  BUG FIXES:
  * substr(x, n, L) &lt;- cc now works (more) correctly for multibyte
    UTF-8 strings x when L &gt; nchar(x), thanks to a report and patch
    by 'Architect 95'.
  * contrib.url(character()) now returns 0-length character() as
    documented, which also avoids spurious warnings from
    available.packages() et al. in the edge case of an empty vector
    of repository URLs.
  * readChar(., 4e8) no longer fails, thanks to Kodi Arfer's report
    (PR#18557).
  * lapply(&lt;list&gt;, as.data.frame) no longer warns falsely for some
    base vector components.
  * Communication between parent and child processes in the multicore
    part of parallel could fail on platforms that do not support an
    arbitrarily large payload in system functions read()/write() on
    pipes (seen on macOS where a restriction to INT_MAX bytes is
    documented, without doing a partial read unlike Linux). The
    payload is now split into 1Gb chunks to avoid that problem.
    (PR#18571)
  * qqplot(x,y, conf.level=.) gives better confidence bounds when
    length(x) != length(y), thanks to Alexander Ploner's report and
    patch proposal (PR#18557).
  * norm(&lt;0-length&gt;, "2") now gives zero instead of an error, as all
    the other norm types, thanks to Mikael Jagan's PR#18542.
  * Build-stage Rd macros \packageAuthor and \packageMaintainer now
    process Authors@R, fixing NA results when the package DESCRIPTION
    omits Author and Maintainer fields.
  * Formatting and printing complex numbers could give things like
    0.1683-0i because of rounding error: -0i is now replaced by +0i.
  * postscript() refused to accept a title comment containing the
    letter "W" (PR#18599).
  * isoreg(c(1,Inf)) signals an error instead of segfaulting, fixing
    PR#18603.
  * tiff(type = "Xlib") was only outputting the last page of
    multi-page plots.
  * tools::latexToUtf8() again knows about \~{n} and other letters
    with tilde, fixing a regression in R 4.3.0, and about \^{i} as an
    alternative to \^{\i} (similarly with other accents).
    Furthermore, LaTeX codes for accented I letters are now correctly
    converted, also fixing related mistakes in
    tools::encoded_text_to_latex().
  * tar(*, tar = "internal") no longer creates out-of-spec tar files
    in the very rare case of user or group names longer than 32
    bytes, fixing PR#17871 with thanks to Ivan Krylov.
  * When using the "internal" timezone datetime code, adding a
    fraction of a second no longer adds one second, fixing PR#16856
    from a patch by Ivan Krylov.
  * tools::checkRd() no longer produces spurious notes about
    "unnecessary braces" from multi-line Rd results of \Sexpr macros.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1709208000">- CHANGES IN R 4.3.3:
  NEW FEATURES:
  * iconv() now fixes up variant encoding names such as "utf8"
    case-insensitively.
  DEPRECATED AND DEFUNCT:
  * The legacy encoding = "MacRoman" is deprecated in pdf() and
    postscript(): support was incomplete in earlier versions of R.
  BUG FIXES:
  * Arguments are now properly forwarded to methods on S4 generics
    with ... in the middle of their formal arguments. This was broken
    for the case when a method introduced an argument but did not
    include ... in its own formals. Thanks to Herv'e Pag`es for the
    report PR#18538.
  * Some invalid file arguments to pictex(), postscript() and xfig()
    opened a file called NA rather than throw an error.  These
    included postscript(NULL) (which some people expected to work
    like pdf(NULL)).
  * Passing filename = NA to svg(), cairo_pdf(), cairo_ps() or the
    Cairo-based bitmap devices opened a file called NA: it now throws
    an error.
  * quartz(file = NA) opened a file called NA, including when used as
    a Quartz-based bitmap device.  It now gives an error.
  * rank(&lt;long vector&gt;) now works, fixing PR#18617, thanks to Ilia
    Kats.
  * seq.int() did not adequately check its length.out argument.
  * match(&lt;POSIXct&gt;, .) is correct again for differing time zones,
    ditto for "POSIXlt", fixing PR#18618 reported by Bastian Klein.
  * drop.terms(*, dropx = &lt;0-length&gt;) now works, fixing PR#18563 as
    proposed by Mikael Jagan.
  * drop.terms(*) keeps + offset(.) terms when it should, PR#18565,
    and drop.terms() no longer makes up a response, PR#18566, fixing
    both bugs thanks to Mikael Jagan.
  * getS3method("t", "test") no longer finds the t.test() function,
    fixing PR#18627.
  * pdf() and postscript() support for the documented Adobe encodings
    "Greek" and "Cyrilllic" was missing (although the corresponding
    Windows' codepages could be used).
  * Computations of glyph metric information for pdf() and
    postscript() did not take into account that transliteration could
    replace one character by two or more (only seen on macOS 14) and
    typically warned that the information was not known.
  * rank(x) no longer overflows during integer addition, when
    computing rank average for largish but not-yet long vector x,
    fixing PR#18630, thanks to Ilia Kats.
  * list.files() on Windows now returns also files with names longer
    that 260 bytes (the Windows limit is 260 characters).
    Previously, some file names particularly with 'East Asian'
    characters were omitted.
  * cov2cor(&lt;0 x 0&gt;) now works, fixing PR#18423 thanks to Mikael
    Jagan and Elin Waring.
  * cov2cor(&lt;negative diagonal&gt;) and similar now give one warning
    instead of two, with better wording, fixing PR#18424 thanks to
    Mikael Jagan.
  * tools:: startDynamicHelp() now ensures port is in proper range,
    fixing PR#18645.
  * pbeta(x, a,b) is correct now for x=0 or 1 in the boundary cases
    where a or b or both are 0, fixing PR#18672 thanks to Michael
    Fay.
  * pmatch(x, table) for large table, also called for data frame row
    selection, dfrm[nm, ], is now interruptible, fixing PR#18656.
  * predict(&lt;rank-deficient lm&gt;, newdata=*) fix computing of nbasis,
    see Russ Lenth's comment 29 in PR#16158.
  * Added a work-around for a bug in macOS 14.3.1 and higher which
    prevents R plots in the Quartz Cocoa device from updating on
    screen.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1713960000">- CHANGES IN R 4.4.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Startup banners, R --version, sessionInfo() and R CMD check no
    longer report (64-bit) as part of the platform as this is almost
    universal - the increasingly rare 32-bit platforms will still
    report (32-bit).
    On Windows, ditto for window titles.
  * is.atomic(NULL) now returns FALSE, as NULL is not an atomic
    vector.  Strict back-compatibility would replace is.atomic(foo)
    by (is.null(foo) || is.atomic(foo)) but should happen only
    sparingly.
  NEW FEATURES:
  * The confint() methods for "glm" and "nls" objects have been
    copied to the stats package.  Previously, they were stubs which
    called versions in package MASS. The MASS namespace is no longer
    loaded if you invoke (say) confint(glmfit).  Further, the "glm"
    method for profile() and the plot() and pairs() methods for class
    "profile" have been copied from MASS to stats.  (profile.nls()
    and plot.profile.nls() were already in stats.)
  * The confint() and profile methods for "glm" objects have gained a
    possibility to do profiling based on the Rao Score statistic in
    addition to the default Likelihood Ratio. This is controlled by a
    new test = argument.
  * The pairs() method for "profile" objects has been extended with a
    which = argument to allow plotting only a subset of the
    parameters.
  * The "glm" method for anova() computes test statistics and
    p-values by default, using a chi-squared test or an F test
    depending on whether the dispersion is fixed or free.  Test
    statistics can be suppressed by giving argument test a false
    logical value.
  * In setRepositories() the repositories can be set using their
    names via name = instead of index ind =.
  * methods() and .S3methods() gain a all.names option for the (rare)
    case where functions starting with a . should be included.
  * Serializations can now be interrupted (e.g., by Ctrl-C on a
    Unix-alike) if they take too long, e.g., from save.image(),
    thanks to suggestions by Ivan Krylov and others on R-devel.
  * New startup option --max-connections to set the maximum number of
    simultaneous connections for the session.  Defaults to 128 as
    before: allowed values up to 4096 (but resource limits may in
    practice restrict to smaller values).
  * R on Windows (since Windows 10 2004) now uses the new Segment
    Heap allocator. This may improve performance of some
    memory-intensive applications.
  * When R packages are built, typically by R CMD build &lt;pkg&gt;, the
    new --user=&lt;build_user&gt; option overrides the (internally
    determined) user name, currently Sys.info()["user"] or LOGNAME.
    This is a (modified) fulfillment of Will Landau's suggestion in
    PR#17530.
  * tools::testInstalledBasic() gets new optional arguments outDir
    and testSrcdir, e.g., allowing to use it in a &lt;builddir&gt; !=
    &lt;srcdir&gt; setup, and in standard "binary" Windows installation
  * if* a source tests/ folder is present.
  * range(&lt;DT_with_Inf&gt;, finite = TRUE) now work for objects of class
    "Date", "POSIXct", and "POSIXlt" with infinite entries,
    analogously to range.default(), as proposed by Davis Vaughan on
    R-devel.  Other range()-methods can make use of new function
    .rangeNum().
  * New .internalGenerics object complementing .S3PrimitiveGenerics,
    for documentation and low-level book-keeping.
  * grid() now invisibly returns the x- and y- coordinates at which
    the grid-lines were drawn.
  * norm(., type) now also works for complex matrices.
  * kappa(., exact = TRUE, norm = *) now works for all norms and also
    for complex matrices.  In symmetric / triangular cases, the new
    argument uplo = "U" | "L" allows the upper or lower triangular
    part to be specified.
  * memDecompress(type = "unknown") recognizes compression in the
    default 'zlib' format as used by memCompress(type = "gzip").
  * memCompress() and memDecompress() will use the libdeflate library
    (&lt;https://github.com/ebiggers/libdeflate&gt;) if installed.  This
    uses the same type of compression for type = "gzip" but is 1.5-2x
    faster than the system libz library on some common platforms: the
    speed-up may depend on the library version.
  * diff() for objects of class "Date", "POSIXct", and "POSIXlt"
    accepts a units argument passed via ....
  * Dynamic help now does a much better job of rendering package
    DESCRIPTION metadata.
  * Rprof() gains an event argument and support for elapsed (real)
    time profiling on Unix (PR#18076).
  * filled.contour() gains a key.border argument.
  * tools::update_pkg_po() gets arguments pot_make and mo_make for
    _not_ re-making the corresponding files, and additionally a
    verbose argument.
  * Hexadecimal string colour specifications are now accepted in
    short form, so, for example, we can use "#123", which is
    equivalent to "#112233".
    Thanks to MikeFC for the original idea and Ella Kaye, Malcolm
    Barrett, George Stagg, and Hanne Oberman for the patch.
  * Plain-text help shows \var markup by angle brackets.
  * The new experimental primitive function declare() is intended to
    eventually allow information about R code to be communicated to
    the interpreter, compiler, and code analysis tools. The syntax
    for declarations is still being developed.
  * Functions psmirnov(), qsmirnov() and rsmirnov() in package stats
    have had argument two.sided renamed to alternative, to take into
    account that the permutation distributions of the one-sided
    statistics can be different in the case of ties.  Consequence of
    PR#18582.
  * sort() is now an implicit S4 generic in methods.
  * Formatting and printing, format(z), print(z), of complex vectors
    z no longer zap relatively small real or imaginary parts to zero,
    fixing PR#16752.  This is an API change, as it was documented
    previously to round real and imaginary parts together on purpose,
    producing nicer looking output.  As mentioned, e.g. in the PR,
    this change is compatible with many other "R-like" programming
    environments.
    We have simplified the internal code and now basically format the
    real and imaginary parts independently of each other.
  * New experimental functions Tailcall() and Exec() to support
    writing stack-space-efficient recursive functions.
  * Where characters are attempted to be plotted by pdf(),
    postscript() and xfig() which are not in the selected 8-bit
    character set (most often Latin-1) and the R session is using a
    UTF-8 locale, the warning messages will show the UTF-8 character
    rather than its bytes and one dot will be substituted per
    character rather than per byte.  (Platforms whose iconv() does
    transliteration silently plot the transliteration.)
    In a UTF-8 locale some transliterations are now done with a
    warning (e.g., dashes and Unicode minus to hyphen, ligatures are
    expanded, permille (‰) is replaced by o/oo), although the OS may
    have got there first.  These are warnings as they will continue
    to be replaced by dots in earlier versions of R.
  * The matrix multiplication functions crossprod() and tcrossprod()
    are now also primitive and S3 generic, as %*% had become in R
    4.3.0.
  * source() and example() have a new optional argument catch.aborts
    which allows continued evaluation of the R code after an error.
  * The non-Quartz tiff() devices allow additional types of
    compression if supported by the platform's libtiff library.
  * The list of base and recommended package names is now provided by
    tools::standard_package_names().
  * cairo_pdf() and cairo_ps() default to onefile = TRUE to closer
    match pdf() and postscript().
  * New option catch.script.errors provides a documented way to catch
    errors and then continue in non-interactive use.
  * L %||% R newly in base is an expressive idiom for the phrases
    if(!is.null(L)) L else R or if(is.null(L)) R else L.
  * The return value from warnings() now always inherits from
    "warnings" as documented, now also in the case of no warnings
    where it previously returned NULL.
  * as.complex("1i") now returns 0 + 1i instead of NA with a warning.
  * z &lt;- c(NA, 1i) now keeps the imaginary part Im(z[1]) == 0, no
    longer coercing to NA_complex_.  Similarly, cumsum(z) correctly
    sums real and imaginary parts separately, i.e., without
    "crosstalk" in case of NAs.
  * On Alpine Linux iconv() now maps "latin2", "latin-2", "latin9"
    and "latin-9" to encoding names the OS knows about
    (case-insensitively).
  * iconv(sub = "Unicode") now always zero-pads to four (hex) digits,
    rather than to 4 or 8.  (This seems to have become the convention
    once Unicode restricted the number of Unicode points to 2^21 - 1
    and so will never need more than 6 digits.)
  * NCOL(NULL) now returns 0 instead of 1, for consistency with
    cbind().
  * The information for the Euro glyph missing from the Adobe .afm
    files for the Courier, Helvetica and Times families has been
    copied from their URW equivalents - this will improve vertical
    centring in the pdf() and postscript() devices.
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.12.0.  The changes are almost entirely cosmetic.
  * The included LAPACK sources have been updated to version 3.12.0
    and some further double-complex routines added.
  * There are new font families for the 2014--5 URW 2.0 fonts (see
    ?pdf) which are included in recent versions of Ghostscript.
    These have font widths for most Greek glyphs and a few others
    which were missing from the original versions (whose font
    families remain available for reproducibility, although
    Ghostscript-based viewers will render using the 2.0 versions).
  * Improve the large-n efficiency of as.matrix(&lt;dist&gt;), thanks an R
    contributors effort, notably by Tim Taylor and Heather Turner,
    see PR#18660.
  * The default and numeric methods of all.equal() get a check.class
    option.
  * zapsmall() gets new optional arguments, function mFUN and min.d,
    for extra flexibility; fulfills a wish in PR#18199.  Also, it is
    now an implicit S4 generic in package methods.
  * The Rd filter for aspell() gains an ignore argument.
  * New generic function sort_by(), primarily useful for the
    data.frame method which can be used to sort rows of a data frame
    by one or more columns.
  * The icence headers for the RPC code in src/extra/xdr have been
    updated to use the GPL-compatible licence published by Oracle
    America in 2010.
  * New function pkg2HTML() in tools to create single-page HTML
    reference manuals for R packages.
  * The byte code evaluator now uses less C stack space for recursive
    calls to byte-compiled functions. It also makes more of an effort
    to avoid allocations for scalar return values.
  * New completion option backtick (disabled by default) allows
    non-syntactic completions to be wrapped in backquotes. This is
    currently only useful for Jupyter notebooks via the IRkernel
    package, and may cause problems for other backends.
  INSTALLATION:
  * The parser has been updated to work with bison 3.8.2, which is
    now used for the pre-generated parsers in gram.c, file.c, and
    gramRd.c. A few parser error messages have changed, which may
    affect code that relies on exact messages.
  INSTALLATION on a UNIX-ALIKE:
  * System valgrind headers are now required to use configure option
  - -with-valgrind-instrumentation with value 1 or 2.
  * configure will warn if it encounters a 32-bit build, as that is
    nowadays almost untested.
  * Environment variable R_SYSTEM_ABI is no longer used and so no
    longer recorded in etc/Renviron (it was not on Windows and was
    only ever used when preparing package tools).
  * If the libdeflate library and headers are available, libdeflate
    rather than libz is used to (de)compress R objects in lazy-load
    databases.  Typically tasks spend up to 5% of their time on such
    operations, although creating lazy-data databases is one of the
    exceptions.
    This can be suppressed if the library is available by the
    configure option --without-libdeflate-compression.
  * configure option --enable-lto=check has not worked reliably since
    2019 and has been removed.
  * The minimum autoconf requirement for a maintainer build has been
    increased to autoconf 2.71.
    It is intended to increase this to 2.72 for R 4.5.0: the
    distributed configure file was generated using 2.72.
  * The minimum version requirement for an external LAPACK has been
    reduced to 3.9.0.
  * No default C++ compiler is set if no C++17 compiler is detected:
    there is no longer an automatic fallback to C++14 or C++11.
    Compilers from the last five years should have sufficient
    support: for others macros CXX and CXXSTD can be set in file
    config.site to provide a fallback if needed.
    The Objective-C++ compiler now by default uses the standard
    selected by R for C++ (currently C++17) rather than the default
    standard for the C++ compiler (which on macOS is still C++98).
  INSTALLATION on macOS:
  * A new configure option --with-newAccelerate makes use of Apple's
    'new' BLAS / LAPACK interfaces in their Accelerate framework.
    Those interfaces are only available in macOS 13.3 or later, and
    building requires SDK 13.3 or later (from the Command Line Tools
    or Xcode 14.3 or later).
    By default the option uses new Accelerate for BLAS calls: to also
    use it for LAPACK use option --with-newAccelerate=lapack.  The
    later interfaces provide LAPACK 3.9.1 rather than 3.2.1: 3.9.1 is
    from 2021-04 and does not include the improved algorithms
    introduced in LAPACK 3.10.0 (including for BLAS calls).
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools44, an update of the Rtools43 toolchain.  It is
    based on GCC 13 and newer versions of MinGW-W64, binutils and
    libraries (targeting 64-bit Intel CPUs).  R-devel can no longer
    be built using Rtools43 without changes.
  * Rtools44 has experimental support for 64-bit ARM (aarch64) CPUs
    _via_ the LLVM 17 toolchain using lld, clang/flang-new and
    libc++.
  UTILITIES:
  * R CMD check notes when S4-style exports are used without
    declaring a strong dependence on package methods.
  * tools::checkRd() (used by R CMD check) detects more problems with
    \Sexpr-based dynamic content, including bad nesting of \Sexprs
    and invalid arguments.
  * tools::checkRd() now reports Rd titles and section names ending
    in a period; this is ignored by R CMD check unless environment
    variable _R_CHECK_RD_CHECKRD_MINLEVEL_ is set to -5 or smaller.
  * R CMD check now notes Rd files without an \alias, as long
    documented in 'Writing R Extensions' §1.3.1.  The check for a
    missing \description has been moved from tools::checkRd() to
    tools::checkRdContents().
  * R CMD check now visits inst/NEWS.Rd and OS-specific man
    subdirectories when checking Rd files.
  * tools::checkDocFiles() and tools::checkRdContents() now also
    check internal Rd files by default, but "specially" (ignoring
    missing documentation of arguments).
  * R CMD Rdiff gets option --useEx.
  * R CMD check now warns on non-portable uses of Fortran KIND such
    as INTEGER(KIND=4) and REAL(KIND=8).
    To see the failing lines set environment variable
    _R_CHECK_FORTRAN_KIND_DETAILS_ to a true value.
  * When checking Rd files, R CMD check now notes some of the "lost
    braces" that tools::checkRd() finds.  Typical problems are Rd
    macros missing the initial backslash (e.g., code{...}), in-text
    set notation (e.g., {1, 2}, where the braces need escaping), and
    \itemize lists with \describe-style entries of the form
    \item{label}{description}.
  * R CMD INSTALL (and hence check) will compile C++ code with
  - DR_NO_REMAP if environment variable _R_CXX_USE_NO_REMAP_ is set
    to a true value.  It is planned that this will in future become
    the default for compiling C++.
  * The new built-in Rd macro \dontdiff{} can be used to mark example
    code whose output should be ignored when comparing check output
    to reference output (tests/Examples/&lt;pkg&gt;-Ex.Rout.save).  The
    \dontdiff tag, like \donttest, is _not_ shown on the rendered
    help page, so provides a clean alternative to ##
    IGNORE_RDIFF_(BEGIN|END) comments.
  * R CMD build when there is no NAMESPACE, now uses the recommended
    exportPattern("^[^.]"), instead of exporting everything.
  * R CMD check now warns about non-ASCII characters in the NAMESPACE
    file (in addition to R files). Such packages are not portable and
    may fail to install on some platforms.
  C-LEVEL FACILITIES:
  * Headers R_ext/Applic.h and R-ext/Linpack.h used to include
    R_ext/BLAS.h although this was undocumented and unneeded by their
    documented entry points.  They no longer do so.
  * New function R_missing(), factored out from do_missing(), used to
    fix PR#18579.
  * SEXP type S4SXP has been renamed to OBJSXP to support
    experimenting with alternative object systems.  The S4SXP value
    can still be used in C code but is now deprecated.  Based on
    contributions from the R Consortium's Object-Oriented Programming
    Working Group.
  * New function pow1p(x,y) for accurate (1+x)^y.
  * mkCharLenCE was incorrectly documented to take a size_t length
    but was implemented with int (and character strings in R are
    limited to 2^31 - 1 bytes).
  DEPRECATED AND DEFUNCT:
  * data() no longer handles zipped data from long-defunct (since R
    2.13.0) --use-zip-data installations.
  * The legacy graphics devices pictex() and xfig() are now
    deprecated.  They do not support recent graphics enhancements and
    their font handling is rudimentary. The intention is to retain
    them for historical interest as long as they remain somewhat
    functional.
  * Support for encoding = "MacRoman" has been removed from the pdf()
    and postscript() devices - this was a legacy encoding supporting
    classic macOS up to 2001 and no longer has universal libiconv
    support.
  * is.R() is deprecated as no other S dialect is known to be in use
    (and this could only identify historical dialects, not future
    ones).
    Further information on calls can be obtained by setting the
    environment variable _R_DEPRECATED_IS_R_ to error which turns the
    deprecation warning into an error and so by default gives a
    traceback.  (This is done by R CMD check --as-cran.)
  * UseMethod() no longer forwards local variables assigned in the
    generic function into method call environments before evaluating
    the method body. This makes method calls behave more like
    standard function calls and makes method code easier to analyze
    correctly.
  * The twelve as.data.frame.&lt;class&gt;() methods which were deprecated
    only via _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ and in R CMD
    check --as-cran are formally deprecated now in favour of calling
    as.data.frame() or as.data.frame.vector().  The deprecation
    "check" now works also when as.data.frame() is S4 generic thanks
    to Ivan Krylov.
  * The default method for the directional comparison operators &lt;, &gt;,
    &lt;=, and &gt;= now signals an error when one of the operands is a
    language object, i.e. a symbol or a call.
  * For terms.formula(), deprecate abb and neg.out arguments
    _formally_ in addition to just documenting it.
  BUG FIXES:
  * The methods package is more robust to not being attached to the
    search path.  More work needs to be done.
  * pairwise.t.test() misbehaved when subgroups had 0 DF for
    variance, even with pool.sd = TRUE.  (PR#18594 by Jack Berry).
  * Probability distribution functions [dpq]&lt;distrib&gt;(x, *), but also
    bessel[IKJY](x, .) now consistently preserve attributes(x) when
    length(x) == 0, e.g., for a 2 x 0 matrix, thanks to Karolis
    Koncevičius' report PR#18509.
  * Group "Summary" computations such as sum(1:3, 4, na.rm = 5, NA,
    7, na.rm = LL) now give an error instead of either 17 or NN for
    LL true or false, as proposed by Ivan Krylov on the R-devel
    mailing list.  (This also means it is now an error to specify
    na.rm more than once.)
  * as.complex(x) now returns complex(real = x, imaginary = 0) for
    _all_ numerical and logical x, notably also for NA or
    NA_integer_.
  * Directories are now omitted by file.copy(, recursive = FALSE) and
    in file.append() (PR#17337).
  * gsub() and sub() are now more robust to integer overflow when
    reporting errors caused by too large input strings (PR#18346).
  * Top-level handlers are now more robust to attempts to remove a
    handler whilst handlers are running (PR#18508).
  * The handling of Alt+F4 in dialogs created on Windows using
    GraphApp has been fixed (PR#13870).
  * density() more consistently computes grid values for the
    FFT-based convolution, following Robert Schlicht's analysis and
    proposal in PR#18337, correcting density values typically by a
    factor of about 0.999.  Argument old.coords = TRUE provides back
    compatibility.
  * palette.colors() gains a name argument that defaults to FALSE
    controlling whether the vector of colours that is returned has
    names (where possible).  PR#18529.
  * tools::xgettext() no longer extracts the (non-translatable) class
    names from warningCondition and errorCondition calls.
  * S3method(&lt;gen&gt;, &lt;class&gt;, &lt;func&gt;) in the NAMESPACE file now works
    (again) when &lt;func&gt; is visible from the namespace, e.g.,
    imported, or in base.
  * getParseData(f) now also works for a function defined in the
    first of several &lt;pkg&gt;/R/*.R source files, thanks to Kirill
    Müller's report and Duncan Murdoch's patch in PR#16756.
  * Rd \Sexpr macros with nested #ifdef conditionals were not
    processed.
  * A non-blocking connection with non-default encoding (such as a
    socket) now correctly returns from readLines() after new data has
    arrived also when its EOF had been reached previously.  Thanks to
    Peter Meilstrup's report on R-devel and Ivan Krylov's report and
    patch proposal in PR#18555.
  * tools::checkRdContents() failed to detect empty argument
    descriptions when they spanned multiple lines, including those
    generated by prompt().  These cases are now noted by R CMD check.
  * Plain-text help no longer outputs spurious colons in the
    arguments list (for multi-line \item labels in the Rd source).
  * kappa() and rcond() work correctly in more cases; kappa(., norm =
    "2") now warns that it computes the 1-norm with (default) exact =
    FALSE; prompted by Mikael Jagan's quite comprehensive PR#18543.
  * Rd skeletons generated by prompt() or promptData() now use a
    dummy title (so R CMD build works).  tools::checkRdContents() has
    been updated to detect such template leftovers, including from
    promptPackage().
  * When S4 method dispatch fails because no method was found, the
    error message now includes the signature argument names; thanks
    to Michael Chirico's proposal on the R-devel list.
  * withAutoprint({ .. }) now preserves srcrefs previously lost,
    thanks to Andrew Simmons' report plus fix in PR#18572.
  * transform.data.frame() no longer adjusts names; in particular,
    untransformed variables are kept as-is, including those with
    syntactically invalid names (PR#17890).
  * The keep.source option for Rd \Sexpr blocks is no longer ignored.
  * The formula methods for t.test() and wilcox.test() now catch when
    paired is passed, addressing PR#14359; use Pair(x1, x2) ~ 1 for a
    paired test.
  * The level reported in the browser prompt was often too large. It
    now shows the number of browser contexts on the stack.
  * For cbind() and rbind(), the optional deparse.level argument is
    now properly passed to methods, thanks to Mikael Jagan's PR#18579
    and comments there.
  * Some error and warning messages for large ('long vector')
    matrix(v, nr, nc) and dim(m) &lt;- d are now correct about sizes,
    using long long formatting, fixing PR#18612 (and more) reported
    by Mikael Jagan.
  * readChar(useBytes = TRUE) now terminates strings even when the
    underlying connection uses extra spaces in the input buffer.
    This fixes problems with extra garbage seen with gzip
    connections, PR#18605.
  * Named capture in PCRE regular expressions now works also with
    more than 127 named groups (PR#18588).
  * Datetime functions are now robust against long jumps when dealing
    with internal time zone changes.  This avoids confusing warnings
    about an invalid time zone, previously triggered by turning
    warnings into errors or handling them via tryCatch (PR#17966,
    PR#17780).
  * Datetime functions now restore even an empty TZ environment
    variable after internal time zone changes (PR#17724).  This makes
    results of datetime functions with this (typically unintentional)
    setting more predictable.
  * drop.terms(*) now drops response as by default, keep.response =
    FALSE, fixing PR#18564 thanks to Mikael Jagan.
  * dummy.coef(.) now also works for lm()-models with character
    categorical predictor variables rather than factor ones, fixing
    PR#18635 reported by Jinsong Zhao.
  * formals(f) &lt;- formals(f) now also works for a function w/o
    arguments and atomic _constant_ body(f).
  * Correct as.function(&lt;invalid list&gt;, .)'s error message.
  * removeSource() is yet more thorough in finding and removing
    "srcref" and the other source references from parsed R language
    chunks, fixing PR#18638 thanks to Andrew Simmons.
  * dgeom() is more accurate now, notably when its result is very
    small, fixing PR#18642 thanks to the proposal of Morten Welinder,
    also improving other instances where C level binom_raw(x, n, ..)
    has x == 0 or x== n.
  * warning() with options(warn = 1) has improved output for
    multi-line messages.
  * axis.Date() and axis.POSIXct() now respect the par("lab") setting
    for the number of pretty() intervals.
  * Comparisons for language objects (which are based on deparsing)
    are now more careful about using accurate deparsed results
    (PR#18676).
  * Plain-text help (Rd2txt) now correctly preserves blank lines
    following single-line \dontrun code.
  * &lt;POSIXlt&gt;[*] no longer sets wrong "balanced" attribute, fixing
    PR#18681 thanks to Mikael Jagan.
  * str(&lt;classed-call&gt;) now deparses the call as expected, fixing
    PR#18684, reported by Dave Slager.
  * In Rd examples, code following the closing brace of a \dontrun,
    \dontshow or \donttest tag on the same line is no longer skipped
    when R CMD check runs the examples.
  * as.data.frame(matrix(*, ncol=0)) now gets valid names() and
    colnames(); reported by Davis Vaughan on the R-devel list.
  * Internal Mathlib function stirlerr(n) is now almost fully
    (52-bit) accurate for all n &gt;= ~5.9 and more accurate also in the
    range 1 -- 5.9.  This entails small ("after 12th decimal")
    changes in density functions, e.g., dgamma() in _some_ regions of
    their support.  The fix was partly prompted by Morten Welinder's
    PR#18640.
  * Numbers like 9876543.2 are now considered non-integer by Mathlib
    internal R_nonint(), amending original fix of PR#15734.
  * Rd comment lines no longer cause broken paragraphs in the
    rendered PDF and plain-text help. In code blocks, pure comment
    lines (starting with %) no longer produce an empty line.
  * xtabs(Freq ~ .) now consistently defaults to na.action = na.pass,
    using na.rm = FALSE (added as an argument) when summing over Freq
    (PR#17770).
  * tools::testInstalledPackage() is no longer silent about failures
    from running examples or tests and its return code no longer
    ignores failures from checking vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1718366400">- CHANGES IN R 4.4.1:
  C-LEVEL FACILITIES:
  * Functions R_atof and R_strtod declared in header R_ext/Utils.h
    are now documented in 'Writing R Extensions' and so formally part
    of the API.
  * The non-API entry points Rf_setSVector, Rf_StringFalse,
    Rf_StringTrue and Rf_isBlankString have been added to those
    reported by R CMD check.
  * The new function Rf_allocLang is now available. This provides an
    alternative to the idiom of calling Rf_allocList followed by
    SET_TYPEOF.
  UTILITIES:
  * R CMD check now reports as warnings what gfortran calls 'Fortran
    2018 deleted features', all of which have long been marked as
    'obsolescent' and some of which were deleted in Fortran 2008 or
    earlier.  Fortran compilers are no longer required to support
    these.
  BUG FIXES:
  * as.numeric(), scan(), type.convert() and other places which use
    the internal C function R_strtod now require a _non-empty_ digit
    sequence in a decimal or binary exponent.  This aligns with the
    C/POSIX standard for strtod and with ?NumericConstants.
  * as.data.frame(m, make.names=NA) now works correctly for a matrix
    m with NA's in row names.
  * The error message from &lt;POSIXlt&gt;[["hour"]] and similar now
    mentions *[[, "hour"]], as wished for in PR#17409 and proposed by
    Michael Chirico.
  * qbinom() and potentially qpois(), qnbinom(), no longer sometimes
    fail accurate inversion (of pbinom(), etc), thanks to Christopher
    Chang's report and patch in PR#18711.
  * The internal help server on Windows can again serve requests sent
    in quick succession, fixing a regression in R 4.4.0.
  * debugcall(&lt;S3Generic&gt;()) now also works when a corresponding
    S4-generic version is in the methods cache (PR#18143).
  * Package tools' toTitleCase(ch0) now returns character(0) when ch0
    is of zero length; fixing PR#18724, reported by David Hugh Jones.
  * R CMD check is no longer broken (without a check result and no
    explanation in 00check.log) for a package which declares an
    invalid VignetteBuilder in DESCRIPTION but has no vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1730376000">- CHANGES IN R 4.4.2:
  C-LEVEL FACILITIES:
  * The S-compatibility macros F77_COM and F77_COMDECL defined in
    header R_ext/RS.h are deprecated and will be removed shortly.  We
    could find no record of their use.
  BUG FIXES:
  * Mathlib function lgammacor(x) no longer warns about underflow to
    zero for large x.
  * Text widths and heights were incorrectly reported by the Quartz
    device if the drawing context didn't exist yet (typically when
    drawing off-screen to a window that is yet to appear, see
    PR#18591).
  * The Quartz device could segfault in cases where paths with spaces
    are used in the new glyph drawing API.  Thanks to Tomek
    Gieorgijewski (PR#18758).
  * On macOS in R CRAN builds, it is again possible to read
    little-endian UTF-16 text with a BOM from a connection using
    encoding="UTF-16".  Users building R from source should avoid
    using the system libiconv in macOS 14.1 and later.
  * methods' internal .requirePackage() now re-enables primitive
    method dispatch when needed; thanks to Ivan Krylov for
    demystifying CRAN package check failures on the R-devel mailing
    list.</changelog>
</package>
<package pkgid="779fb8e75b159330ecb1a99ec32d4fa3401b6462ef9b9d187d602c64b66d4381914f9488c5aea4d9aa65445fd2317ee2e9f1373fc7037368e566f606f7628dde" name="R-spatial-debuginfo" arch="x86_64">
  <version epoch="0" ver="7.3.17" rel="51.0.2.2.sr20241103"/>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1620302400">- To get in sync with d:l:R:autoCRAN the Matrix package's split
  in -devel was reversed.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339200">- improved spec file according to comments of dimstar in
  https://build.opensuse.org/request/show/892685</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339201">- CHANGES IN R 4.1.0:
  FUTURE DIRECTIONS:
  * It is planned that the 4.1.x series will be the last to support
    32-bit Windows, with production of binary packages for that
    series continuing until early 2023.
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Data set esoph in package datasets now provides the correct
    numbers of controls; previously it had the numbers of cases added
    to these.  (Reported by Alexander Fowler in PR#17964.)
  NEW FEATURES:
  * www.omegahat.net is no longer one of the repositories known by
    default to setRepositories().  (Nowadays it only provides source
    packages and is often unavailable.)
  * Function package_dependencies() (in package tools) can now use
    different dependency types for direct and recursive dependencies.
  * The checking of the size of tarball in R CMD check --as-cran
    &lt;pkg&gt; may be tweaked via the new environment variable
    _R_CHECK_CRAN_INCOMING_TARBALL_THRESHOLD_, as suggested in
    PR#17777 by Jan Gorecki.
  * Using c() to combine a factor with other factors now gives a
    factor, an ordered factor when combining ordered factors with
    identical levels.
  * apply() gains a simplify argument to allow disabling of
    simplification of results.
  * The format() method for class "ftable" gets a new option justify.
    (Suggested by Thomas Soeiro.)
  * New ...names() utility.  (Proposed by Neal Fultz in PR#17705.)
  * type.convert() now warns when its as.is argument is not
    specified, as the help file always said it _should_.  In that
    case, the default is changed to TRUE in line with its change in
    read.table() (related to stringsAsFactor) in R 4.0.0.
  * When printing list arrays, classed objects are now shown _via_
    their format() value if this is a short enough character string,
    or by giving the first elements of their class vector and their
    length.
  * capabilities() gets new entry "Rprof" which is TRUE when R has
    been configured with the equivalent of --enable-R-profiling (as
    it is by default).  (Related to Michael Orlitzky's report
    PR#17836.)
  * str(xS4) now also shows extraneous attributes of an S4 object
    xS4.
  * Rudimentary support for vi-style tags in rtags() and R CMD rtags
    has been added.  (Based on a patch from Neal Fultz in PR#17214.)
  * checkRdContents() is now exported from tools; it and also
    checkDocFiles() have a new option chkInternal allowing to check
    Rd files marked with keyword "internal" as well.  The latter can
    be activated for R CMD check via environment variable
    _R_CHECK_RD_INTERNAL_TOO_.
  * New functions numToBits() and numToInts() extend the raw
    conversion utilities to (double precision) numeric.
  * Functions URLencode() and URLdecode() in package utils now work
    on vectors of URIs.  (Based on patch from Bob Rudis submitted
    with PR#17873.)
  * path.expand() can expand ~user on most Unix-alikes even when
    readline is not in use.  It tries harder to expand ~, for example
    should environment variable HOME be unset.
  * For HTML help (both dynamic and static), Rd file links to help
    pages in external packages are now treated as references to
    topics rather than file names, and fall back to a file link only
    if the topic is not found in the target package. The earlier rule
    which prioritized file names over topics can be restored by
    setting the environment variable _R_HELP_LINKS_TO_TOPICS_ to a
    false value.
  * c() now removes NULL arguments before dispatching to methods,
    thus simplifying the implementation of c() methods, _but_ for
    back compatibility keeps NULL when it is the first argument.
    (From a report and patch proposal by Lionel Henry in PR#17900.)
  * Vectorize()'s result function's environment no longer keeps
    unneeded objects.
  * Function ...elt() now propagates visibility consistently with
    ..n.  (Thanks to Lionel Henry's PR#17905.)
  * capture.output() no longer uses non-standard evaluation to
    evaluate its arguments.  This makes evaluation of functions like
    parent.frame() more consistent.  (Thanks to Lionel Henry's
    PR#17907.)
  * packBits(bits, type="double") now works as inverse of
    numToBits().  (Thanks to Bill Dunlap's proposal in PR#17914.)
  * curlGetHeaders() has two new arguments, timeout to specify the
    timeout for that call (overriding getOption("timeout")) and TLS
    to specify the minimum TLS protocol version to be used for
    https:// URIs (_inter alia_ providing a means to check for sites
    using deprecated TLS versions 1.0 and 1.1).
  * For nls(), an optional constant scaleOffset may be added to the
    denominator of the relative offset convergence test for cases
    where the fit of a model is expected to be exact, thanks to a
    proposal by John Nash.  nls(*, trace=TRUE) now also shows the
    convergence criterion.
  * Numeric differentiation _via_ numericDeriv() gets new optional
    arguments eps and central, the latter for taking central divided
    differences.  The latter can be activated for nls() via
    nls.control(nDcentral = TRUE).
  * nls() now passes the trace and control arguments to getInitial(),
    notably for all self-starting models, so these can also be fit in
    zero-noise situations via a scaleOffset.  For this reason, the
    initial function of a selfStart model must now have ... in its
    argument list.
  * bquote(splice = TRUE) can now splice expression vectors with
    attributes: this makes it possible to splice the result of
    parse(keep.source = TRUE).  (Report and patch provided by Lionel
    Henry in PR#17869.)
  * textConnection() gets an optional name argument.
  * get(), exists(), and get0() now signal an error if the first
    argument has length greater than 1.  Previously additional
    elements were silently ignored.  (Suggested by Antoine Fabri on
    R-devel.)
  * R now provides a shorthand notation for creating functions, e.g.
    \(x) x + 1 is parsed as function(x) x + 1.
  * R now provides a simple native forward pipe syntax |&gt;.  The
    simple form of the forward pipe inserts the left-hand side as the
    first argument in the right-hand side call.  The pipe
    implementation as a syntax transformation was motivated by
    suggestions from Jim Hester and Lionel Henry.
  * all.equal(f, g) for functions now by default also compares their
    environment(.)s, notably via new all.equal method for class
    function.  Comparison of nls() fits, e.g., may now need
    all.equal(m1, m2, check.environment = FALSE).
  * .libPaths() gets a new option include.site, allowing to _not_
    include the site library.  (Thanks to Dario Strbenac's suggestion
    and Gabe Becker's PR#18016.)
  * Lithuanian translations are now available.  (Thanks to Rimantas
    Zakauskas.)
  * names() now works for DOTSXP objects.  On the other hand, in
    R-lang, the R language manual, we now warn against relying on the
    structure or even existence of such dot-dot-dot objects.
  * all.equal() no longer gives an error on DOTSXP objects.
  * capabilities("cairo") now applies only to the file-based devices
    as it is now possible (if very unusual) to build R with Cairo
    support for those but not for X11().
  * There is optional support for tracing the progress of
    loadNamespace() - see its help.
  * (Not Windows.)  l10n_info() reports an additional element, the
    name of the encoding as reported by the OS (which may differ from
    the encoding part (if any) of the result from
    Sys.getlocale("LC_CTYPE").
  * New function gregexec() which generalizes regexec() to find _all_
    disjoint matches and well as all substrings corresponding to
    parenthesized subexpressions of the given regular expression.
    (Contributed by Brodie Gaslam.)
  * New function charClass() in package utils to query the
    wide-character classification functions in use (such as
    iswprint).
  * The names of quantile()'s result no longer depend on the global
    getOption("digits"), but quantile() gets a new optional argument
    digits = 7 instead.
  * grep(), sub(), regexp and variants work considerably faster for
    long factors with few levels.  (Thanks to Michael Chirico's
    PR#18063.)
  * Provide grouping of x11() graphics windows within a window
    manager such as Gnome or Unity; thanks to a patch by Ivan Krylov
    posted to R-devel.
  * The split() method for class data.frame now allows the f argument
    to be specified as a formula.
  * sprintf now warns on arguments unused by the format string.
  * New palettes "Rocket" and "Mako" for hcl.colors() (approximating
    palettes of the same name from the 'viridisLite' package).
    Contributed by Achim Zeileis.
  * The base environment and its namespace are now locked (so one can
    no longer add bindings to these or remove from these).
  * Rterm handling of multi-byte characters has been improved,
    allowing use of such characters when supported by the current
    locale.
  * Rterm now accepts ALT+ +xxxxxxxx sequences to enter Unicode
    characters as hex digits.
  * Environment variable LC_ALL on Windows now takes precedence over
    LC_CTYPE and variables for other supported categories, matching
    the POSIX behaviour.
  * duplicated() and anyDuplicated() are now optimized for integer
    and real vectors that are known to be sorted via the ALTREP
    framework. Contributed by Gabriel Becker via PR#17993.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 14
    and so packages that provide graphics devices should be
    reinstalled.
  * Graphics devices should now specify deviceVersion to indicate
    what version of the graphics engine they support.
  * Graphics devices can now specify deviceClip.  If TRUE, the
    graphics engine will never perform any clipping of output itself.
    The clipping that the graphics engine does perform (for both
    canClip = TRUE and canClip = FALSE) has been improved to avoid
    producing unnecessary artifacts in clipped output.
  * The grid package now allows gpar(fill) to be a linearGradient(),
    a radialGradient(), or a pattern().  The viewport(clip) can now
    also be a grob, which defines a clipping path, and there is a new
    viewport(mask) that can also be a grob, which defines a mask.
    These new features are only supported so far on the Cairo-based
    graphics devices and on the pdf() device.
  * (Not Windows.)  A warning is given when a Cairo-based type is
    specified for a png(), jpeg(), tiff() or bmp() device but Cairo
    is unsupported (so type = "Xlib" is tried instead).
  * grSoftVersion() now reports the versions of FreeType and
    FontConfig if they are used directly (not _via_ Pango), as is
    most commonly done on macOS.
  C-LEVEL FACILITIES:
  * The _standalone_ libRmath math library and R's C API now provide
    log1pexp() again as documented, and gain log1mexp().
  INSTALLATION on a UNIX-ALIKE:
  * configure checks for a program pkgconf if program pkg-config is
    not found.  These are now only looked for on the path (like
    almost all other programs) so if needed specify a full path to
    the command in PKG_CONFIG, for example in file config.site.
  * C99 function iswblank is required - it was last seen missing ca
    2003 so the workaround has been removed.
  * There are new configure options --with-internal-iswxxxxx,
  - -with-internal-towlower and --with-internal-wcwidth which allows
    the system functions for wide-character classification,
    case-switching and width (wcwidth and wcswidth) to be replaced by
    internal ones.  The first has long been used on macOS, AIX (and
    Windows) but this enables it to be unselected there and selected
    for other platforms (it is the new default on Solaris).  The
    second is new in this version of R and is selected by default on
    macOS and Solaris.  The third has long been the default and
    remains so as it contains customizations for East Asian
    languages.
    System versions of these functions are often minimally
    implemented (sometimes only for ASCII characters) and may not
    cover the full range of Unicode points: for example Solaris (and
    Windows) only cover the Basic Multilingual Plane.
  * Cairo installations without X11 are more likely to be detected by
    configure, when the file-based Cairo graphics devices will be
    available but not X11(type = "cairo").
  * There is a new configure option --with-static-cairo which is the
    default on macOS.  This should be used when only static cairo
    (and where relevant, Pango) libraries are available.
  * Cairo-based graphics devices on platforms without Pango but with
    FreeType/FontConfig will make use of the latter for font
    selection.
  LINK-TIME OPTIMIZATION on a UNIX-ALIKE:
  * Configuring with flag --enable-lto=R now also uses LTO when
    installing the recommended packages.
  * R CMD INSTALL and R CMD SHLIB have a new flag --use-LTO to use
    LTO when compiling code, for use with R configured with
  - -enable-lto=R.  For R configured with --enable-lto, they have
    the new flag --no-use-LTO.
    Packages can opt in or out of LTO compilation _via_ a UseLTO
    field in the DESCRIPTION file.  (As usual this can be overridden
    by the command-line flags.)
  BUILDING R on Windows:
  * for GCC &gt;= 8, FC_LEN_T is defined in config.h and hence character
    lengths are passed from C to Fortran in _inter alia_ BLAS and
    LAPACK calls.
  * There is a new text file src/gnuwin32/README.compilation, which
    outlines how C/Fortran code compilation is organized and
    documents new features:
  * R can be built with Link-Time Optimization with a suitable
    compiler - doing so with GCC 9.2 showed several
    inconsistencies which have been corrected.
  * There is support for cross-compiling the C and Fortran code
    in R and standard packages on suitable (Linux) platforms.
    This is mainly intended to allow developers to test later
    versions of compilers - for example using GCC 9.2 or 10.x has
    detected issues that GCC 8.3 in Rtools40 does not.
  * There is experimental support for cross-building R packages
    with C, C++ and/or Fortran code.
  * The R installer can now be optionally built to support a single
    architecture (only 64-bit or only 32-bit).
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++14 where
    available (which it is on all currently checked platforms): if
    not (as before) C++11 is used if available otherwise C++ is not
    supported.
    Packages which specify C++11 will still be installed using C++11.
    C++14 compilers may give deprecation warnings, most often for
    std::random_shuffle (deprecated in C++14 and removed in C++17).
    Either specify C++11 (see 'Writing R Extensions') or modernize
    the code and if needed specify C++14.  The latter has been
    supported since R 3.4.0 so the package's DESCRIPTION would need
    to include something like
    Depends: R (&gt;= 3.4)
  PACKAGE INSTALLATION on Windows:
  * R CMD INSTALL and R CMD SHLIB make use of their flag --use-LTO
    when the LTO_OPT make macro is set in file etc/${R_ARCH}/Makeconf
    or in a personal/site Makevars file.  (For details see 'Writing R
    Extensions' SS4.5.)
    This provides a valuable check on code consistency.  It does work
    with GCC 8.3 as in Rtools40, but that does not detect everything
    the CRAN checks with current GCC do.
  PACKAGE INSTALLATION on macOS:
  * The default personal library directory on builds with
  - -enable-aqua (including CRAN builds) now differs by CPU type,
    one of
    ~/Library/R/x86_64/x.y/library
    ~/Library/R/arm64/x.y/library
    This uses the CPU type R (and hence the packages) were built for,
    so when a x86_64 build of R is run under Rosetta emulation on an
    arm64 Mac, the first is used.
  UTILITIES:
  * R CMD check can now scan package functions for bogus return
    statements, which were possibly intended as return() calls (wish
    of PR#17180, patch by Sebastian Meyer). This check can be
    activated via the new environment variable
    _R_CHECK_BOGUS_RETURN_, true for --as-cran.
  * R CMD build omits tarballs and binaries of previous builds from
    the top-level package directory.  (PR#17828, patch by Sebastian
    Meyer.)
  * R CMD check now runs sanity checks on the use of LazyData, for
    example that a data directory is present and that
    LazyDataCompression is not specified without LazyData and has a
    documented value.  For packages with large LazyData databases
    without specifying LazyDataCompression, there is a reference to
    the code given in 'Writing R Extensions' SS1.1.6 to test the
    choice of compression (as in all the CRAN packages tested a
    non-default method was preferred).
  * R CMD build removes LazyData and LazyDataCompression fields from
    the DESCRIPTION file of packages without a data directory.
  ENCODING-RELATED CHANGES:
  * The parser now treats \Unnnnnnnn escapes larger than the upper
    limit for Unicode points (\U10FFFF) as an error as they cannot be
    represented by valid UTF-8.
    Where such escapes are used for outputting non-printable
    (including unassigned) characters, 6 hex digits are used (rather
    than 8 with leading zeros).  For clarity, braces are used, for
    example \U{0effff}.
  * The parser now looks for non-ASCII spaces on Solaris (as
    previously on most other OSes).
  * There are warnings (including from the parser) on the use of
    unpaired surrogate Unicode points such as \uD834.  (These cannot
    be converted to valid UTF-8.)
  * Functions nchar(), tolower(), toupper() and chartr() and those
    using regular expressions have more support for inputs with a
    marked Latin-1 encoding.
  * The character-classification functions used (by default) to
    replace the system iswxxxxx functions on Windows, macOS and AIX
    have been updated to Unicode 13.0.0.
    The character-width tables have been updated to include new
    assignments in Unicode 13.0.0.
  * The code for evaluating default (extended) regular expressions
    now uses the same character-classification functions as the rest
    of R (previously they differed on Windows, macOS and AIX).
  * There is a build-time option to replace the system's
    wide-character wctrans C function by tables shipped with R: use
    configure option --with-internal-towlower or (on Windows)
  - DUSE_RI18N_CASE in CFLAGS when building R.  This may be needed
    to allow tolower() and toupper() to work with Unicode characters
    beyond the Basic Multilingual Plane where not supported by system
    functions (e.g. on Solaris where it is the new default).
  * R is more careful when truncating UTF-8 and other multi-byte
    strings that are too long to be printed, passed to the system or
    libraries or placed into an internal buffer.  Truncation will no
    longer produce incomplete multibyte characters.
  DEPRECATED AND DEFUNCT:
  * Function plclust() from the package stats and
    package.dependencies(), pkgDepends(), getDepList(),
    installFoundDepends(), and vignetteDepends() from package tools
    are defunct.
  * Defunct functions checkNEWS() and readNEWS() from package tools
    and CRAN.packages() from utils have been removed.
  * R CMD config CXXCPP is defunct (it was deprecated in R 3.6.2).
  * parallel::detectCores() drops support for Irix (retired in 2013).
  * The LINPACK argument to chol.default(), chol2inv(),
    solve.default() and svd() has been defunct since R 3.1.0.  It was
    silently ignored up to R 4.0.3 but now gives an error.
  * Subsetting/indexing, such as ddd[*] or ddd$x on a DOTSXP
    (dot-dot-dot) object ddd has been disabled; it worked by accident
    only and was undocumented.
  BUG FIXES:
  * Many more C-level allocations (mainly by malloc and strdup) are
    checked for success with suitable alternative actions.
  * Bug fix for replayPlot(); this was turning off graphics engine
    display list recording if a recorded plot was replayed in the
    same session.  The impact of the bug became visible if resize the
    device after replay OR if attempted another savePlot() after
    replay (empty display list means empty screen on resize or empty
    saved plot).
  * R CMD check etc now warn when a package exports non-existing S4
    classes or methods, also in case of no "methods" presence.
    (Reported by Alex Bertram; reproducible example and patch by
    Sebastian Meyer in PR#16662.)
  * boxplot() now also accepts calls for labels such as ylab, the
    same as plot().  (Reported by Marius Hofert.)
  * The help page for xtabs() now correctly states that addNA is
    setting na.action = na.pass among others.  (Reported as PR#17770
    by Thomas Soeiro.)
  * The R CMD check &lt;pkg&gt; gives a longer and more comprehensible
    message when DESCRIPTION misses dependencies, e.g., in Imports:.
    (Thanks to the contributors of PR#17179.)
  * update.default() now calls the generic update() on the formula to
    work correctly for models with extended formulas.  (As reported
    and suggested by Neal Fultz in PR#17865.)
  * The horizontal position of leaves in a dendrogram is now correct
    also with center = FALSE.  (PR#14938, patch from Sebastian
    Meyer.)
  * all.equal.POSIXt() no longer warns about and subsequently ignores
    inconsistent "tzone" attributes, but describes the difference in
    its return value (PR#17277).  This check can be disabled _via_
    the new argument check.tzone = FALSE as suggested by Sebastian
    Meyer.
  * as.POSIXct() now populates the "tzone" attribute from its tz
    argument when x is a logical vector consisting entirely of NA
    values.
  * x[[2^31]] &lt;- v now works.  (Thanks to the report and patch by
    Suharto Anggono in PR#17330.)
  * In log-scale graphics, axis() ticks and label positions are now
    computed more carefully and symmetrically in their range,
    typically providing _more_ ticks, fulfilling wishes in PR#17936.
    The change really corresponds to an improved axisTicks() (package
    grDevices), potentially influencing grid and lattice, for
    example.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now correct to at
    least five digits where it was catastrophically wrong,
    previously.
  * sum(df) and similar "Summary"- and "Math"-group member functions
    now work for data frames df with logical columns, notably also of
    zero rows.  (Reported to R-devel by Martin "b706".)
  * unsplit() had trouble with tibbles due to unsound use of rep(NA,
    len)-indexing, which should use NA_integer_ (Reported to R-devel
    by Mario Annau.)
  * pnorm(x, log.p = TRUE) underflows to -Inf slightly later.
  * show(&lt;hidden S4 generic&gt;) prints better and without quotes for
    non-hidden S4 generics.
  * read.table() and relatives treated an "NA" column name as missing
    when check.names = FALSE PR#18007.
  * Parsing strings containing UTF-16 surrogate pairs such as
    "\uD834\uDD1E" works better on some (uncommon) platforms.
    sprintf("%X", utf8ToInt("\uD834\uDD1E")) should now give "1D11E"
    on all platforms.
  * identical(x,y) is no longer true for differing DOTSXP objects,
    fixing PR#18032.
  * str() now works correctly for DOTSXP and related exotics, even
    when these are doomed.
    Additionally, it no longer fails for lists with a class and
    "irregular" method definitions such that e.g. lapply(*) will
    necessarily fail, as currently for different igraph objects.
  * Too long lines in environment files (e.g. Renviron) no longer
    crash R. This limit has been increased to 100,000 bytes.
    (PR#18001.)
  * There is a further workaround for FreeType giving incorrect
    italic font faces with cairo-based graphics devices on macOS.
  * add_datalist(*, force = TRUE) (from package tools) now actually
    updates an existing data/datalist file for new content.  (Thanks
    to a report and patch by Sebastian Meyer in PR#18048.)
  * cut.Date() and cut.POSIXt() could produce an empty last interval
    for breaks = "months" or breaks = "years".  (Reported as PR#18053
    by Christopher Carbone.)
  * Detection of the encoding of 'regular' macOS locales such as
    en_US (which is UTF-8) had been broken by a macOS change:
    fortunately these are now rarely used with en_US.UTF-8 being
    preferred.
  * sub() and gsub(pattern, repl, x, *) now keep attributes of x such
    as names() also when pattern is NA (PR#18079).
  * Time differences ("difftime" objects) get a replacement and a
    rep() method to keep "units" consistent.  (Thanks to a report and
    patch by Nicolas Bennett in PR#18066.)
  * The \RdOpts macro, setting defaults for \Sexpr options in an Rd
    file, had been ineffective since R 2.12.0: it now works again.
    (Thanks to a report and patch by Sebastian Meyer in PR#18073.)
  * mclapply and pvec no longer accidentally terminate parallel
    processes started before by mcparallel or related calls in
    package parallel (PR#18078).
  * grep and other functions for evaluating (extended) regular
    expressions handle in Unicode also strings not explicitly flagged
    UTF-8, but flagged native when running in UTF-8 locale.
  * Fixed a crash in fifo implementation on Windows (PR#18031).
  * Binary mode in fifo on Windows is now properly detected from
    argument open (PR#15600, PR#18031).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1622808000">- The line %{__install} -m 755 -d %{_infodir}
  no longer works in TW or Factory.
  But without that line it works everywhere. So this instruction
  was commented out of the spec file.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1628596800">- CHANGES IN R 4.1.1:
  NEW FEATURES:
  * require(pkg, quietly = TRUE) is quieter and in particular does
    not warn if the package is not found.
  DEPRECATED AND DEFUNCT:
  * Use of ftp:// URIs should be regarded as deprecated, with
    on-going support confined to method = "libcurl" and not routinely
    tested.  (Nowadays no major browser supports them.)
  * The non-default method = "internal" is deprecated for http:// and
    ftp:// URIs for both download.file and url.
  * On Windows, method = "wininet" is deprecated for http://,
    https:// and ftp:// URIs for both download.file and url.  (A
    warning is only given for ftp://.)
    For ftp:// URIs the default method is now "libcurl" if available
    (which it is on CRAN builds).
    method = "wininet" remains the default for http:// and https://
    URIs but if libcurl is available, using method = "libcurl" is
    preferred.
  INSTALLATION:
  * make check now works also without a LaTeX installation.  (Thanks
    to Sebastian Meyer's PR#18103.)
  BUG FIXES:
  * make check-devel works again in an R build configured with
  - -without-recommended-packages.
  * qnbinom(p, size, mu) for large size/mu is correct now in a range
    of cases (PR#18095); similarly for the (size, prob)
    parametrization of the negative binomial.  Also qpois() and
    qbinom() are better and or faster for extreme cases.  The
    underlying C code has been modularized and is common to all four
    cases of discrete distributions.
  * gap.axis is now part of the axis() arguments which are passed
    from bxp(), and hence boxplot().  (Thanks to Martin Smith's
    report and suggestions in PR#18109.)
  * .First and .Last can again be set from the site profile.
  * seq.int(from, to, *) and seq.default(..) now work better in large
    range cases where from-to is infinite where the two boundaries
    are finite.
  * all.equal(x,y) now returns TRUE correctly also when several
    entries of abs(x) and abs(y) are close to .Machine$double.xmax,
    the largest finite numeric.
  * model.frame() now clears the object bit when removing the class
    attribute of a value via na.action (PR#18100).
  * charClass() now works with multi-character strings on Windows
    (PR#18104, fixed by Bill Dunlap).
  * encodeString() on Solaris now works again in Latin-1 encoding on
    characters represented differently in UTF-8.  Support for
    surrogate pairs on Solaris has been improved.
  * file.show() on Windows now works with non-ASCII path names
    representable in the current native encoding (PR#18132).
  * Embedded R on Windows can now find R home directory via the
    registry even when installed only for the current user
    (PR#18135).
  * pretty(x) with finite x now returns finite values also in the
    case where the extreme x values are close in size to the maximal
    representable number .Machine$double.xmax.
    Also, it's been tweaked for very small ranges and when a boundary
    is close (or equal) to zero; e.g., pretty(c(0,1e-317)) no longer
    has negative numbers, currently still warning about a very small
    range, and pretty(2^-(1024 - 2^-1/(c(24,10)))) is more accurate.
  * The error message for not finding vignette files when weaving has
    correct file sizes now. (Thanks to Sebastian Meyer's PR#18154.)
  * dnbinom(20, &lt;large&gt;, 1) now correctly gives 0, and similar cases
    are more accurate with underflow precaution.  (Reported by Francisco Vera Alcivar in PR#18072.)</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635163200">- repaired https://bugzilla.suse.com/show_bug.cgi?id=1191380
  (rpmacros now go to rpmmacrodir)
- minor clean-ups in spec file</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635768000">- CHANGES IN R 4.1.2:
  C-LEVEL FACILITIES:
  * The workaround in headers R.h and Rmath.h (using namespace std;)
    for the Oracle Developer Studio compiler is no longer needed now
    C++11 is required so has been removed.  A couple more usages of
    log() (which should have been std::log()) with an int argument
    are reported on Solaris.
  * The undocumented limit of 4095 bytes on messages from the
    S-compatibility macros PROBLEM and MESSAGE is now documented and
    longer messages will be silently truncated rather than
    potentially causing segfaults.
  * If the R_NO_SEGV_HANDLER environment variable is non-empty, the
    signal handler for SEGV/ILL/BUS signals (which offers recovery
    user interface) is not set. This allows more reliable debugging
    of crashes that involve the console.
  DEPRECATED AND DEFUNCT:
  * The legacy S-compatibility macros PROBLEM, MESSAGE, ERROR, WARN,
    WARNING, RECOVER, ... are deprecated and will be hidden in R
    4.2.0. R's native interface of Rf_error and Rf_warning has long
    been preferred.
  BUG FIXES:
  * .mapply(F, dots, .) no longer segfaults when dots is not a list
    and uses match.fun(F) as always documented; reported by Andrew
    Simmons in PR#18164.
  * hist(&lt;Date&gt;, ...) and hist(&lt;POSIXt&gt;, ...)  no longer pass
    arguments for rect() (such as col and density) to axis().
    (Thanks to Sebastian Meyer's PR#18171.)
  * \Sexpr{ch} now preserves Encoding(ch). (Thanks to report and
    patch by Jeroen Ooms in PR#18152.)
  * Setting the RNG to "Marsaglia-Multicarry" e.g., by RNGkind(), now
    warns in more places, thanks to Andr'e Gillibert's report and
    patch in PR#18168.
  * gray(numeric(), alpha=1/2) no longer segfaults, fixing PR#18183,
    reported by Till Krenz.
  * Fixed dnbinom(x, size=&lt;very_small&gt;, .., log=TRUE) regression,
    reported by Martin Morgan.
  * as.Date.POSIXlt(x) now keeps names(x), thanks to Davis Vaughan's
    report and patch in PR#18188.
  * model.response() now strips an "AsIs" class typically, thanks to
    Duncan Murdoch's report and other discussants in PR#18190.
  * try() is considerably faster in case of an error and long call,
    as e.g., from some do.call().  Thanks to Alexander Kaever's
    suggestion posted to R-devel.
  * qqline(y = &lt;object&gt;) such as y=I(.), now works, see also
    PR#18190.
  * Non-integer mgp par() settings are now handled correctly in
    axis() and mtext(), thanks to Mikael Jagan and Duncan Murdoch's
    report and suggestion in PR#18194.
  * formatC(x) returns length zero character() now, rather than ""
    when x is of length zero, as documented, thanks to Davis
    Vaughan's post to R-devel.
  * removeSource(fn) now retains (other) attributes(fn).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1647000000">- CHANGES IN R 4.1.3:
  NEW FEATURES:
  * The default version of Bioconductor has been changed to 3.14.
    (This is used by setRepositories and the menus in GUIs.)
  UTILITIES:
  * R CMD check --as-cran has a workaround for a bug in versions of
    file up to at least 5.41 which mis-identify DBF files last
    changed in 2022 as executables.
  C-LEVEL FACILITIES:
  * The legacy S-compatibility macros SINGLE_* in R_ext/Constants.h
    (included by R.h) are deprecated and will be removed in R 4.2.0.
  BUG FIXES:
  * Initialization of self-starting nls() models with initialization
    functions following the pre-R-4.1.0 API (without the ...
    argument) works again for now, with a deprecation warning.
  * Fixed quoting of ~autodetect~ in Java setting defaults to avoid
    inadvertent user lookup due to leading ~, reported in PR#18231 by
    Harold Gutch.
  * substr(., start, stop) &lt;- v now treats _negative_ stop values
    correctly.  Reported with a patch in PR#18228 by Brodie Gaslam.
  * Subscripting an array x without dimnames by a
    length(dim(x))-column character matrix gave "random" non-sense,
    now an error; reported in PR#18244 by Mikael Jagan.
  * ...names() now matches names(list(...)) closely, fixing PR#18247.
  * all.equal(*, scale = s) now works as intended when length(s) &gt; 1,
    partly thanks to Michael Chirico's PR#18272.
  * print(x) for long vectors x now also works for named atomic
    vectors or lists and prints the correct number when reaching the
    getOption("max.print") limit; partly thanks to a report and
    proposal by Hugh Parsonage to the R-devel list.
  * all.equal(&lt;selfStart&gt;, *) no longer signals a deprecation
    warning.
  * reformulate(*, response=r) gives a helpful error message now when
    length(r) &gt; 1, thanks to Bill Dunlap's PR#18281.
  * Modifying globalCallingHandlers inside withCallingHandlers() now
    works or fails correctly, thanks to Henrik Bengtsson's PR#18257.
  * hist(&lt;Date&gt;, breaks = "days") and hist(&lt;POSIXt&gt;, breaks = "secs")
    no longer fail for inputs of length 1.
  * qbeta(.001, .9, .009) and similar cases now converge correctly
    thanks to Ben Bolker's report in PR#17746.
  * window(x, start, end) no longer wrongly signals "'start' cannot
    be after 'end'", fixing PR#17527 and PR#18291.
  * data() now checks that its (rarely used) list argument is a
    character vector - a couple of packages passed other types and
    gave incorrect results.
  * which() now checks its arr.ind argument is TRUE rather coercing
    to logical and taking the first element - which gave incorrect
    results in package code.
  * model.weights() and model.offset() more carefully extract their
    model components, thanks to Ben Bolker and Tim Taylor's R-devel
    post.
  * list.files(recursive = TRUE) now shows all broken symlinks
    (previously, some of them may have been omitted, PR#18296).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1650628800">- CHANGES IN R 4.2.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * The formula method of aggregate() now matches the generic in
    naming its first argument x (resolving PR#18299 by Thomas
    Soeiro).
    This means that calling aggregate() with a formula as a named
    first argument requires name formula in earlier versions of R and
    name x now, so portable code should not name the argument (code
    in many packages did).
  * Calling &amp;&amp; or || with either argument of length greater than one
    now gives a warning (which it is intended will become an error).
  * Calling if() or while() with a condition of length greater than
    one gives an error rather than a warning.  Consequently,
    environment variable _R_CHECK_LENGTH_1_CONDITION_ no longer has
    any effect.
  * Windows users should consult the WINDOWS section below for some
    profound changes including
  * Support for 32-bit builds has been dropped.
  * UTF-8 locales are used where available.
  * The default locations for the R installation and personal
    library folder have been changed.
    Thanks to Tomas Kalibera for months of work on the Windows port
    for this release.
  NEW FEATURES:
  * matrix(x, n, m) now warns in more cases where length(x) differs
    from n * m, as suggested by Abby Spurdle and Wolfgang Huber in
    Feb 2021 on the R-devel mailing list.
    This warning can be turned into an error by setting environment
    variable _R_CHECK_MATRIX_DATA_ to TRUE: R CMD check --as-cran
    does so unless it is already set.
  * Function file_test() in package utils gains tests for symlinks,
    readability and writability.
  * capabilities("libxml") is now false.
    The description of capabilities("http/ftp") now reflects that it
    refers to the default method, no longer the internal one.
  * simplify2array() gains an except argument for controlling the
    exceptions used by sapply().
  * Environment variables R_LIBS_USER and R_LIBS_SITE are both now
    set to the R system default if unset or empty, and can be set to
    NULL to indicate an empty list of user or site library
    directories.
  * The warning for axis()(-like) calls in cases of relatively small
    ranges (typically in log-scale situations) is slightly improved
    _and_ suppressed from explicit calls to .axisPars() as has always
    been the intention.
  * The contrasts setter function `contrasts&lt;-` gains an explicit
    default how.many = NULL rather than just using missing(how.many).
  * grid.pretty() gains a new optional argument n = 5.
  * There is a new function .pretty() with option bounds as a
    technical-utility version of pretty().  It and pretty() gain a
    new argument f.min with a better than back-compatible default.
  * Function grDevices::axisTicks() and related functions such as
    graphics::axis() work better, notably for the log scale; partly
    because of the pretty() improvements, but also because care is
    taken e.g., when ylim is finite but diff(ylim) is infinite.
  * nclass.FD() gains a digits option.
  * The R Mathlib internal C function bd0() (called indirectly from a
    dozen probability density and distribution functions such as
    dpois(), dbinom(), dgamma(), pgamma() _etc_) has been
    complemented by a more sophisticated and (mostly) more accurate C
    function ebd0(), currently called only by internal dpois_raw()
    improving accuracy for R level dpois() and potentially others
    calling it such as dnbinom(), dgamma() or pgamma().  (Thanks to
    Morten Welinder's PR#15628.)
  * write.ftable() gains sep = " " argument as suggested by Thomas
    Soeiro.
  * The names of the locale categories supported by R's
    Sys.getlocale() and Sys.setlocale() are now provided by variable
    .LC.categories in the base namespace.
  * The Date and POSIXt methods for hist() and the histogram method
    for plot() now also use the new default col = "lightgray" in
    consistency with the corresponding change to hist()'s default for
    R 4.0.0.
  * hist.default() gains new fuzz argument, and the histogram plot
    method no longer uses fractional axis ticks when displaying
    counts ("Frequency").
  * mapply() and hence Map() now also obey the "max-or-0-if-any"
    recycling rule, such that, e.g., Map(`+`, 1:3, 1[0]) is valid
    now.
  * as.character(&lt;obj&gt;) for "hexmode" or "octmode" objects now
    fulfils the important basic rule as.character(x)[j] ===
    as.character(x[j]).
  * The set utility functions, notably intersect() have been tweaked
    to be more consistent and symmetric in their two set arguments,
    also preserving a common mode.
  * substr(ch, start,end) &lt;- new now e.g., preserves names(ch); ditto
    for substring(), thanks to a patch from Brodie Gaslam.
  * plot(&lt;lm&gt;) gains a extend.ylim.f argument, in partial response to
    PR#15285; further PR#17784 is fixed thanks to several
    contributors and a patch by Elin Waring.  The Cook's dist
    contours get customizable via cook.col and cook.lty with a
    different default color and their legend is nicer by default and
    customizable via cook.legendChanges.
  * Attempting to subset an object that is not subsettable now
    signals an error of class notSubsettableError. The
    non-subsettable object is contained in the object field of the
    error condition.
  * Subscript-out-of-bounds errors are now signaled as errors of
    class subscriptOutOfBoundsError.
  * Stack-overflow errors are now signaled as errors inheriting from
    class stackOverflowError. See ?stackOverflowError for more
    details.
  * New partly experimental Sys.setLanguage() utility, solving the
    main problem of PR#18055.
  * gettext() and gettextf() get a new option trim = TRUE which when
    set to false allows translations for strings such as "Execution
    halted\n" typical for C code.
  * An experimental implementation of hash tables is now available.
    See ?hashtab for more details.
  * identical() gains a extptr.as.ref argument for requesting that
    external pointer objects be compared as reference objects.
  * reorder() gets an argument decreasing which it passes to sort()
    for level creation; based on the wish and patch by Thomas Soeiro
    in PR#18243.
  * as.vector() gains a data.frame method which returns a simple
    named list, also clearing a long standing 'FIXME' to enable
    as.vector(&lt;data.frame&gt;, mode="list").  This breaks code relying
    on as.vector(&lt;data.frame&gt;) to return the unchanged data frame.
  * legend() is now vectorized for arguments cex, x.intersp, and
    text.width.  The latter can now also be specified as a vector
    (one element for each column of the legend) or as NA for
    computing a proper column wise maximum value of strwidth(legend).
    The argument y.intersp can be specified as a vector with one
    entry for each row of the legend.
    legend() also gains new arguments title.cex and title.font.
    Thanks to Swetlana Herbrandt.
  * Deparsing no longer remaps attribute names dim, dimnames, levels,
    names and tsp to historical S-compatible names (which structure()
    maps back).
  * sample() and sample.int() have additional sanity checks on their
    size and n arguments.
    all.equal.numeric() gains a sanity check on its tolerance
    argument - calling all.equal(a, b, c) for three numeric vectors
    is a surprisingly common error.
    mean(na.rm =), rank(na.last =), barplot(legend.text =),
    boxplot(), contour(drawlabels =), polygon(border =) and
    methods::is(class2 =) have more robust sanity checks on their
    arguments.
    R CMD Rd2pdf (used by R CMD check) has a more robust sanity check
    on the format of \alias{} commands.
  * psigamma(x, deriv) for negative x now also works for deriv = 4
    and 5; their underlying C level dpsifn() is documented in
    'Writing R Extensions'.
  * The HTML help system now uses HTML5 (wish of PR#18149).
  * ks.test() now provides exact p-values also with ties and MC
    p-values in the two-sample (Smirnov) case.  By Torsten Hothorn.
  * ks.test() gains a formula interface, with y ~ 1 for the
    one-sample (Kolmogorov) test and y ~ group for the two-sample
    (Smirnov) test.  Contributed by Torsten Hothorn.
  * The return value from ks.test() now has class c("ks.test",
    "htest") - packages using try() need to take care to use
    inherits() and not == on the class.
  * New functions psmirnov(), qsmirnov() and rsmirnov() in package
    stats implementing the asymptotic and exact distributions of the
    two-sample Smirnov statistic.
  * iconv() now allows sub = "c99" to use C99-style escapes for UTF-8
    inputs which cannot be converted to encoding to.
  * In a forward pipe |&gt; expression it is now possible to use a named
    argument with the placeholder _ in the rhs call to specify where
    the lhs is to be inserted.  The placeholder can only appear once
    on the rhs.
  * The included LAPACK sources have been updated to version 3.10.0,
    except for the four Fortran 77 routines which 3.10.0 has
    re-implemented in Fortran 90 (where the older versions have been
    retained as the R build process does not support Fortran 90).
  * path.expand() and most other uses of tilde expansion now warn if
    a path would be too long if expanded.  (An exception is
    file.exists(), which silently returns false.)
  * trunc(&lt;Date&gt;, *) now supports units = "months" or "years" for
    consistency with the POSIXt method, thanks to Dirk Eddelbuettel's
    proposal in PR#18099.
  * list2DF() now checks that its arguments are of the same length,
    rather than use recycling.
  * The HTML help system has several new features: LaTeX-like math
    can be typeset using either KaTeX or MathJax, usage and example
    code is highlighted using Prism, and for dynamic help the output
    of examples and demos can be shown within the browser if the
    knitr package is installed. These features can be disabled by
    setting the environment variable _R_HELP_ENABLE_ENHANCED_HTML_ to
    a false value.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 15
    and so packages that provide graphics devices should be
    reinstalled.
  * The grid package now allows the user to specify a "vector" of
    pattern fills.  The fill argument to gpar() accepts a list of
    gradients and/or patterns and the functions linearGradient(),
    radialGradient(), and pattern() have a new group argument.
    Points grobs (data symbols) can now also have a pattern fill.
    The grobCoords() function now returns a more informative and
    complex result.
  * The grid package has new functions for drawing isolated groups:
    grid.group(), grid.define(), and grid.use().  These functions add
    compositing operators and affine transformations to R's graphics
    capabilities.
    The grid package also has new functions for stroking and filling
    paths: grid.stroke(), grid.fill(), and grid.fillStroke().
    A new function as.path() allows the user to specify the fill rule
    for a path that is to be used for clipping, stroking, or filling;
    available options are "winding" and "evenodd".  A new function
    as.mask() allows the user to specify the type of a mask;
    available options are "alpha" and "luminance".
    These new features are only supported so far (at most) on the
    Cairo-based graphics devices and on the pdf() device.
  * dev.capabilities() reports on device support for the new
    features.
  * par() now warns about unnamed non-character arguments to prevent
    misuse such as {usr &lt;- par("usr"); par(usr)}.
  INSTALLATION:
  * Facilities for accessing ftp:// sites are no longer tested
    (except _pro tem_ for curlGetHeaders()) as modern browsers have
    removed support.
  * R can now be built with DEFS = -DSTRICT_R_HEADERS .
  PACKAGE INSTALLATION:
  * R CMD INSTALL no longer tangles vignettes. This completes an R
    CMD build change in R 3.0.0 and affects packages built before R
    3.0.2. Such packages should be re-made with R CMD build to have
    the tangled R code of vignettes shipped with the tarball.
  * USE_FC_LEN_T will become the default: this uses the correct
    prototypes for Fortran BLAS/LAPACK routines called from C/C++,
    and requires adjustment of most such calls - see 'Writing R
    Extensions' SS6.6.2.  (This has been supported since R 3.6.2.)
  * Package installation speed for packages installed with
    keep.source has been improved. This resolve the issue reported by
    Ofek Shilon in PR#18236.
  UTILITIES:
  * R CMD check can optionally report files/directories left behind
    in home, /tmp (even though TMPDIR is set) and other directories.
    See the "R Internals" manual for details.
  * R CMD check now reports byte-compilation errors during
    installation.  These are not usually fatal but may result in
    parts of the package not being byte-compiled.
  * _R_CHECK_DEPENDS_ONLY_ can be applied selectively to examples,
    tests and/or vignettes in R CMD check: see the "R Internals"
    manual.
  * _R_CHECK_SRC_MINUS_W_IMPLICIT_ now defaults to true: recent
    versions of Apple clang on macOS have made implicit function
    declarations in C into a compilation error.
  * R CMD check --as-cran makes use of the environment variable
    AUTORECONF.  See the "R Internals" manual SS8 for further details.
  * R CMD check --use-valgrind also uses valgrind when re-building
    vignettes as some non-Sweave vignettes unhelpfully comment out
    all their code when R CMD check runs vignettes.
  * Errors in re-building vignettes (unless there are LaTeX errors)
    are reported by R CMD check as ERROR rather than WARNING when
    running vignettes has been skipped (as it frequently is in CRAN
    checks and by --as-cran).
  * R CMD Rd2pdf gains a --quiet option that is used by R CMD build
    when building the PDF package manual.
  * R CMD Rd2pdf now always runs LaTeX in batch mode, consistent with
    Texinfo &gt;= 6.7. The --batch option is ignored.
  * R CMD build and R CMD check now include the Rd file name and line
    numbers in the error message of an \Sexpr evaluation failure.
  * For packages using the \doi Rd macro (now an install-time \Sexpr)
    but no other dynamic Rd content, R CMD build now produces a
    smaller tarball and is considerably faster - skipping temporary
    package installation.
  C-LEVEL FACILITIES:
  * The non-API header R_ext/R-ftp-http.h is no longer provided, as
    the entry points it covered are now all defunct.
  * A number of non-API declarations and macro definitions have been
    moved from the installed header Rinternals.h to the internal
    header Defn.h. Packages that only use entry points and
    definitions documented to be part of the API as specified in
    'Writing R Extensions' SS6 should not be affected.
  * The macro USE_RINTERNALS no longer has any effect when compiling
    package code.  Packages which also use R_NO_REMAP will need to
    ensure that the remapped names are used for calls to API
    functions that were formerly also made available as macros.
  * The deprecated legacy S-compatibility macros PROBLEM, MESSAGE,
    ERROR, WARN, WARNING, RECOVER, ... are no longer defined in
    R_exts/RS.h (included by R.h).  Replace these by calls to
    Rf_error and Rf_warning (defined in header R_ext/Error.h included
    by R.h).
    Header R_ext/RS.h no longer includes R_ext/Error.h.
  * Header R_ext/Constants.h (included by R.h) when included from C++
    now includes the C++ header cfloat rather than the C header
    float.h (now possible as C++11 is required).
  * The legacy S-compatibility macros DOUBLE_* in R_ext/Constants.h
    (included by R.h) are deprecated.
  * The deprecated S-compatibility macros SINGLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * R_Calloc, R_Free and R_Realloc are preferred to their unprefixed
    forms and error messages now use the prefix. These forms were
    introduced in R 3.4.0 and are available even when
    STRICT_R_HEADERS is defined.
  * rmultinom has been documented in 'Writing R Extensions' SS6 so is
    now part of the R API.
  * Similarly, Rtanpi, called from R level tanpi() is now part of the
    R API.
  * The long-deprecated, undocumented and non-API entry point call_R
    is no longer declared in R_ext/RS.h (included by R.h).
  * The header S.h which has been unsupported since Jan 2016 has been
    removed.  Use R.h instead.
  DEPRECATED AND DEFUNCT:
  * The (non-default and deprecated) method = "internal" for
    download.file() and url() no longer supports http:// nor ftp://
    URIs.  (It is used only for file:// URIs.)
    On Windows, download.file(method = "wininet") no longer supports
    ftp:// URIs.  (It is no longer the default method, which is
    "libcurl" and does.)
    On Windows, the deprecated method = "wininet" now gives a warning
    for http:// and https:// URIs for both download.file() and url().
    (It is no longer the default method.)
  * On Windows, the command-line option --max-mem-size and
    environment variable R_MAX_MEM_SIZE are defunct.  The memory
    allocation limit was important for 32-bit builds, but these are
    no longer supported.
  * default.stringsAsFactors() is now formally deprecated, where that
    was only mentioned on its regular help page, previously.  So it
    now gives a warning if called.
  * unix.time() is defunct now; it had been deprecated since R 3.4.0.
  BUG FIXES:
  * Setting digits = 0 in format(), print.default() (and hence
    typically print()) or options() is again invalid.  Its behaviour
    was platform-dependent, and it is unclear what "zero significant
    digits" should mean (PR#18098).
  * Messages from C code in the cairo section of package grDevices
    are now also offered for translation, thanks to Michael Chirico's
    PR#18123.
  * mean(x) with finite x now is finite also without "long.double"
    capability.
  * R CMD Rd2pdf no longer leaves an empty build directory behind
    when it aborts due to an already existing output file.  (Thanks
    to Sebastian Meyer's PR#18141.)
  * density(x, weights = w, na.rm = TRUE) when anyNA(x) is true, now
    removes weights "in parallel" to x, fixing PR#18151, reported by
    Matthias Gondan.  Additionally, it gets a subdensity option.
  * Conversion of \Sexpr[]{&lt;expR&gt;} to LaTeX or HTML no longer
    produces long blocks of empty lines when &lt;expR&gt; itself contains
    several lines all producing empty output.  Thanks to a report and
    patch by Ivan Krylov posted to R-devel.
  * R CMD build no longer fails if a package vignette uses child
    documents and inst/doc exists.  (Thanks to Sebastian Meyer's
    PR#18156.)
  * When an R documentation ('help' source) file man/foo.Rd in a
    package has \donttest{..} examples with a syntax error, it is now
    signalled as ERROR and with correct line numbers relating to the
  * -Ex.R file, thanks to Duncan Murdoch and Sebastian Meyer's
    reports and patch proposals in PR#17501.
  * Improved determination of the correct translation domain in
    non-base packages, addressing the combination of PR#18092 and
    PR#17998 (#c6) with reports and _augmented_ patch #2904 by
    Suharto Anggono.
    Note that "R-base" is no longer the default domain e.g., for
    top-level calls to gettext(); rather translation needs explicit
    domain = * specification in such cases.
  * identical(attrib.as.set=FALSE) now works correctly with data
    frames with default row names (Thanks to Charlie Gao's PR#18179).
  * txtProgressBar() now enforces a non-zero width for argument char,
    without which no progress can be visible.
  * dimnames(table(d)) is more consistent in the case where d is a
    list with a single component, thanks to Thomas Soeiro's report to
    R-devel.
    Further, table(d1, d2) now gives an error when d1 and d2 are data
    frames as suggested by Thomas in PR#18224.
  * Fix for drawing semi-transparent lines and fills on the native
    Windows graphics device (PR#18219 and PR#16694).  Thanks to Nick
    Ray for helpful diagnosis on Bugzilla.
  * The deparser now wraps sub-expressions such as if(A) ..  with
    parentheses when needed; thanks to Duncan Murdoch's PR#18232 and
    Lionel Henry's patches there.
  * remove.packages() no longer tries to uninstall Priority: base
    packages, thanks to a report and suggestions by Colin Fay in
    PR#18227.
  * win.metafile() now has xpinch and ypinch arguments so that the
    user can override Windows' (potentially wrong) guess at device
    dimensions.
  * x[i] and x[[i]] for non-integer i should now behave in all cases
    as always documented: the index used is equivalent to
    as.integer(i) unless that would overflow where trunc(i) is used
    instead; thanks to Suharto Anggono's report and patch proposals
    in PR#17977.
  * asOneSidedFormula() now associates the resulting formula with the
    global environment rather than the evaluation environment created
    for the call.
  * &lt;bibentry&gt;$name now matches the field name case-insensitively,
    consistent with bibentry() creation and the replacement method.
  * cbind() failed to detect some length mismatches with a mixture of
    time-series and non-time-series inputs.
  * The default LaTeX style file Sweave.sty used by the RweaveLatex
    driver no longer loads the obsolete ae package; thanks to a
    report by Thomas Soeiro in PR#18271.  Furthermore, it now skips
    \usepackage[T1]{fontenc} for engines other than pdfTeX (if
    detected) or if the new [nofontenc] option is used.
  * smooth.spline() now stores its logical cv argument more safely,
    fixing a rare bug when printing, and also stores n.
  * smooth.spline(x,y,*) now computes the cv.crit statistic
    correctly, also when is.unsorted(x), fixing PR#18294.
  * The data.frame method of rbind() now warns when binding
    not-wholly-recycling vectors, by analogy to the default method
    (for matrices).
  * setAs() finds the correct class for name to when multiple
    packages define a class with that name. Thanks to Gabor Csardi
    for the report.
  * Fix for detaching a package when two classes of the same name are
    present in method signatures for the same generic. Thanks to
    Gabor Csardi for the report.
  * match.arg("", c("", "a", "B")) gives a better error message, in
    part from PR#17959, thanks to Elin Waring.
  * R CMD Sweave --clean no longer removes pre-existing files or
    subdirectories (PR#18242).
  * The quartz() device no longer splits polylines into subpaths.
    That has caused narrowly-spaced lines with many points to always
    look solid even when dashed line type was used due to dash phase
    restarts.
  * Deparsing constructs such as quote(1 + `!`(2) + 3) works again as
    before R 3.5.0, thanks to the report and patch in PR#18284 by
    Suharto Anggono.
  * as.list(f) for a factor f now keeps names(f), fixing PR#18309.
  * qbeta(.001, .9, .009) and analogous qf() calls now return a
    correct value instead of NaN or wrongly 1, all with a warning;
    thanks to the report by Ludger Goeminne in PR#18302.
  * plot.lm() failed to produce the plot of residuals vs.  factor
    levels (i.e., which=5 when leverages are constant) for models
    with character predictors (PR#17840).
  * interaction.plot(..., xtick = TRUE) misplaced the x-axis line
    (PR#18305).
  * Not strictly fixing a bug, format()ing and print()ing of
    non-finite Date and POSIXt values NaN and +/-Inf no longer show
    as NA but the respective string, e.g., Inf, for consistency with
    numeric vector's behaviour, fulfilling the wish of PR#18308.
  * R CMD check no longer runs test scripts generated from
    corresponding .Rin files twice and now signals an ERROR if
    processing an .Rin script fails.
  * tools::Rd2txt() used for plain-text help pages now renders \hrefs
    (if tools::Rd2txt_options(showURLs = TRUE)) and \urls with
    percent-encoding and standards-compliant delimiting style (angle
    brackets and no URL: prefix).  \email is now rendered with a
    mailto: prefix.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1655985600">- CHANGES IN R 4.2.1:
  NEW FEATURES:
  * New function utils::findCRANmirror() to find out if a CRAN mirror
    has been selected, otherwise fallback to the main site.  This
    behaves in the same way as tools::CRAN_package_db() and is
    intended for packages wishing to access CRAN for purposes other
    than installing packages.
    The need for this was shown by a day when the main CRAN website
    was offline and a dozen or so packages which had its URL
    hardcoded failed their checks.
  INSTALLATION on a UNIX-ALIKE:
  * The libraries searched for by --with-blas (without a value) now
    include BLIS (after OpenBLAS but before ATLAS).  And on macOS,
    the Accelerate framework (after ATLAS).  (This is patterned after
    the AX_BLAS macro from the Autoconf Archive.)
  * The included LAPACK sources have been updated to 3.10.1.
  UTILITIES:
  * The (full path to) the command tidy to be used for HTML
    validation can be set by environment variable R_TIDYCMD.
  * Setting environment variable _R_CHECK_RD_VALIDATE_RD2HTML_ to a
    false value will override R CMD check --as-cran and turn off HTML
    validation.  This provides a way to circumvent a problematic
    tidy.
    The 2006 version that ships with macOS is always skipped.
  C-LEVEL FACILITIES:
  * The undocumented legacy declarations of Sint, Sfloat, SINT_MAX
    and SINT_MIN in header R.h are deprecated.
  BUG FIXES:
  * fisher.test(d) no longer segfaults for "large" d; fixing PR#18336
    by preventing/detecting an integer overflow reliably.
  * tar(., files=*) now produces correctly the warning about invalid
    uid or gid of files, fixing PR#18344, reported by Martin Morgan.
  * tk_choose.files() with multi = FALSE misbehaved on paths
    containing spaces (PR#18334) (regression introduced in R 4.0.0).
  * sort(x, partial = ind, *) now works correctly notably for the
    non-default na.last = FALSE or TRUE, fixing PR#18335 reported by
    James Edwards.
  * Environment variable _R_CHECK_XREFS_REPOSITORIES_ is only used
    for checking .Rd cross-references in R CMD check (as documented)
    and not for other uses looking for a CRAN mirror.
  * The search for a CRAN mirror when checking packages now uses
    getOption("repos") if that specifies a CRAN mirror, even when it
    does not also specify all three Bioconductor repositories (as was
    previously required).
  * The HTML code generated by tools::Rd2HTML() has been improved to
    pass tidy 5.8.0.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1667217600">- CHANGES IN R 4.2.2:
  NEW FEATURES:
  * tools::Rdiff(useDiff = TRUE) checks for the presence of an
    external diff command and switches to useDiff = FALSE if none is
    found.  This allows R CMD Rdiff to always work.
  * On Windows, environment variable R_LIBCURL_SSL_REVOKE_BEST_EFFORT
    can be used to switch to only 'best-effort' SSL certificate
    revocation checks with the default "libcurl" download method.
    This reduces security, but may be needed for downloads to work
    with MITM proxies (PR#18379).
  * (macOS) The run-time check for libraries from XQuartz for X11 and
    Tcl/Tk no longer uses otool from the Apple Developer Tools
    (PR#18400).
  * The LaTeX style for producing the PDF manuals, Rd.sty, now loads
    the standard amsmath, amsfonts and amssymb packages for greater
    coverage of math commands in the Rd \eqn and \deqn macros.  The
    \mathscr LaTeX command is also provided (via the mathrsfs
    package, if available, or the amsfonts bundle otherwise),
    fulfilling the wish of PR#18398.
  * (Windows) The default format of readClipboard() and
    writeClipboard() has been changed to 13 (CF_UNICODETEXT).
  INSTALLATION on a UNIX-ALIKE:
  * The PDF manuals (if built) can be compacted by the new target
    make compact-pdf (at the top level or in directory doc/manual).
  * There is now configure support for LLVM clang 15 on Linux, which
    defaults to position-independent (PIE) executables whereas
    gfortran does not.
  * Many small changes to ease compilation (and suppress warnings)
    with LLVM clang 15.
  BUG FIXES:
  * Rscript -e would fail if stdin were closed (Reported by Henrik
    Bengtsson.)
  * qt(*, log.p=TRUE) in outer tails no longer produces NaN in its
    final steps, thus fixing PR#18360.
  * tools::Rd2latex() now escapes hashes and ampersands when writing
    URLs, fixing LaTeX errors with such URLs in \tabular.
  * When isGeneric(f, fdef=*) is used with mismatching names, the
    warning is better understandable; reported (with fix) in PR#18370
    by Gabe Becker.
  * poly(x, n) now works again (and is now documented) when x is a
    "Date" or "POSIXct" object, or of another class while fulfilling
    mode(x) == "numeric".  This also enables poly(x, *, raw=TRUE) for
    such variables.  Reported by Michael Chirico to R-devel.
  * write.table(), write.csv() and write.csv2() restore their
    numerical precision (internal equivalent of digits = 15) after an
    interrupt (PR#18384).
  * One can now read also byte FF from a clipboard connection
    (PR#18385).
  * source("") and source(character()) now give more helpful error
    messages.
  * R CMD check --as-cran set _R_CHECK_TIMINGS_ too late to have the
    intended effect.
  * as.POSIXlt(x) now also works with very large dates x, fixing
    PR#18401 reported by Hannes M"uhleisen.
  * Files can now be extracted even from very large zip archives
    (PR#18390, thanks to Martin Jakt).
  * Non-finite objects of class "POSIXlt" are now correctly coerced
    to classes "Date" and "POSIXct"; following up on the extension to
    format() them correctly.
  * Added methods for is.finite(), is.infinite() and is.nan() for
    "POSIXlt" date-time objects.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1678881600">- CHANGES IN R 4.2.3:
  C-LEVEL FACILITIES:
  * The definition of DL_FUNC in R_ext/Rdynload.h has been changed to
    be fully C-compliant.  This means that functions loaded _via_ for
    example R_GetCCallable need to be cast to an appropriate type if
    they have any arguments.
  * .Machine has a new element sizeof.time_t to identify old systems
    with a 32-bit type and hence a limited range of date-times (and
    limited support for dates millions of years from present).
  PACKAGE INSTALLATION:
  * (Windows) The default C++ standard had accidentally been left at
    C++11 when it was changed to C++14 on Unix.
  BUG FIXES:
  * As "POSIXlt" objects may be "partially filled" and their list
    components meant to be recycled, length() now is the length of
    the longest component.
  * as.POSIXlt.Date() could underflow for dates in the far past (more
    than half a million years BCE).
  * as.Date.POSIXlt(x) would return "1970-01-01" instead of NA in R
    4.2.2, e.g., for
    x &lt;- as.POSIXlt(c("2019-01-30","2001-1-1"))
    x$mon &lt;- c(0L, NA); as.Date(x)
  * R CMD check failed to apply enabled _R_CHECK_SUGGESTS_ONLY_ to
    examples and vignettes (regression in R 4.2.0).
  * R CMD check did not re-build vignettes in separate processes by
    default (regression in R 4.2.0).
  * Running examples from HTML documentation now restores previous
    knitr settings and options (PR#18420).
  * Quartz: fonts are now located using Core Graphics API instead of
    deprecated ATS which is no longer supported in the macOS 13 SDK
    (PR#18426).  This also addresses an issue where the currently
    used font in the Quartz device context was not correctly
    retained.
  * (Windows) Math symbols in text drawing functions are again
    rendered correctly (PR#18440).  This fixes a regression in R
    4.2.1 caused by a fix in PR#18382 which uncovered an issue in
    GraphApp due to which the symbol charset was not used with TT
    Symbol font face.
  * (Windows) Installing a package with a src/Makefile.{win,ucrt}
    file includes ~/.R/Makevars.win64 in the search for user
    makevars, as documented in "R Installation and Administration"
    and done for packages with a src/Makevars.{win,ucrt} file.
  * format(&lt;POSIXlt_w/_unbalanced_sec&gt;, "....%OS&lt;n&gt;") with n &gt; 0 no
    longer accidentally uses the unbalanced seconds, thanks to
    Suharto Anggono's report (including patch) in PR#18448.
  * solve.default(a, b) works around issues with some versions of
    LAPACK when a contains NA or NaN values.
  * When UseMethod() cannot dispatch, it no longer segfaults
    producing the error message in case of a long class(), thanks to
    Joris Vankerschaver's report (including patch) in PR#18447.
  * When example(foo, ..) produces graphics on an interactive device
    it needs to open itself, it now leaves devAskNewPage() unchanged
    even when it was FALSE, thus fixing a 14 years old '&lt;FIXME&gt;'.
  * packageDescription() again catches errors from encoding
    conversions. This also fixes broken packageVersion() in C locale
    on systems where iconv does not support transliteration.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1681128000">- add patch to build with libcurl &gt;= 8</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1682078400">- CHANGES IN R 4.3.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Calling &amp;&amp; or || with LHS or (if evaluated) RHS of length greater
    than one is now always an error, with a report of the form
    'length = 4' in coercion to 'logical(1)'
    Environment variable _R_CHECK_LENGTH_1_LOGIC2_ no longer has any
    effect.
  NEW FEATURES:
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.10.1.  (This caused some platform-dependent
    changes to package check output.)  And then to the sources from
    LAPACK version 3.11.0 (with changes only to double complex
    subroutines).
  * The included LAPACK sources have been updated to include the four
    Fortran 90 routines rather than their Fortran 77 predecessors.
    This may give some different signs in SVDs or
    eigendecompositions..  (This completes the transition to LAPACK
    3.10.x begun in R 4.2.0.)
  * The LAPACK sources have been updated to version 3.11.0.  (No new
    subroutines have been added, so this almost entirely bug fixes:
    Those fixes do affect some computations with NaNs, including R's
    NA.)
  * The parser now signals _classed_ errors, notably in case of the
    pipe operator |&gt;.  The error object and message now give line and
    column numbers, mostly as proposed and provided by Duncan Murdoch
    in PR#18328.
  * toeplitz() is now generalized for asymmetric cases, with a
    toeplitz2() variant.
  * xy.coords() and xyz.coords() and consequently, e.g., plot(x,y,
    log = "y") now signal a _classed_ warning about negative values
    of y (where log(.) is NA).  Such a warning can be specifically
    suppressed or caught otherwise.
  * Regular expression functions now check more thoroughly whether
    their inputs are valid strings (in their encoding, e.g. in
    UTF-8).
  * The performance of grep(), sub(), gsub() and strsplit() has been
    improved, particularly with perl = TRUE and fixed = TRUE.  Use of
    useBytes = TRUE for performance reasons should no longer be
    needed and is discouraged: it may lead to incorrect results.
  * apropos() gains an argument dot_internals which is used by the
    completion (help(rcompgen)) engine to also see base internals
    such as .POSIXct().
  * Support in tools::Rdiff() for comparing uncompressed PDF files is
    further reduced - see its help page.
  * qqplot(x, y, ...) gains conf.level and conf.args arguments for
    computing and plotting a confidence band for the treatment
    function transforming the distribution of x into the distribution
    of y (Switzer, 1976, _Biometrika_). Contributed by Torsten
    Hothorn.
  * Performance of package_dependencies() has been improved for cases
    when the number of dependencies is large.
  * Strings newly created by gsub(), sub() and strsplit(), when any
    of the inputs is marked as "bytes", are also marked as "bytes".
    This reduces the risk of creating invalid strings and accidental
    substitution of bytes deemed invalid.
  * Support for readLines(encoding = "bytes") has been added to allow
    processing special text files byte-by-byte, without creating
    invalid strings.
  * iconv(from = "") now takes into account any declared encoding of
    the input elements and uses it in preference to the native
    encoding.  This reduces the risk of accidental creation of
    invalid strings, particularly when different elements of the
    input have different encoding (including "bytes").
  * Package repositories in getOption("repos") are now initialized
    from the repositories file when utils is loaded (if not already
    set, e.g., in .Rprofile).  (From a report and patch proposal by
    Gabriel Becker in PR#18405.)
  * compactPDF() gets a verbose option.
  * type.convert() and hence read.table() get new option tryLogical =
    TRUE with back compatible default.  When set to false, converts
    "F" or "T" columns to character.
  * Added new unit prefixes "R" and "Q" for abbreviating
    (unrealistically large) sizes beyond 10^{27} in standard = "SI",
    thanks to Henrik Bengtsson's PR#18435.
  * as.data.frame()'s default method now also works fine with atomic
    objects inheriting from classes such as "roman", "octmode" and
    "hexmode", such fulfilling the wish of PR#18421, by Benjamin
    Feakins.
  * The as.data.frame.vector() utility now errors for wrong-length
    row.names.  It warned for almost six years, with "Will be an
    error!".
  * sessionInfo() now also contains La_version() and reports codepage
    and timezone when relevant, in both print() and toLatex() methods
    which also get new option tzone for displaying timezone
    information when locale = FALSE.
  * New function R_compiled_by() reports the C and Fortran compilers
    used to build R, if known.
  * predict(&lt;lm&gt;, newdata = *) no longer unnecessarily creates an
    offset of all 0s.
  * solve() for complex inputs now uses argument tol and by default
    checks for 'computational singularity' (as it long has done for
    numeric inputs).
  * predict(&lt;rank-deficient lm&gt;, newdata=*) now obeys a new argument
    rankdeficient, with new default "warnif", warning only if there
    are non-estimable cases in newdata.  Other options include
    rankdeficient = "NA", predicting NA for non-estimable newdata
    cases.  This addresses PR#15072 by Russ Lenth and is based on his
    original proposal and discussions in PR#16158 also by David Firth
    and Elin Waring.  Still somewhat experimental.
  * Rgui console implementation now works better with the NVDA screen
    reader when the full blinking cursor is selected.  The underlying
    improvements in cursor handling may help also other screen
    readers on Windows.
  * The drop-field control in GraphApp can now be left with the TAB
    key and all controls can be navigated in the reverse order using
    the Shift+TAB key, improving accessibility of the Rgui
    configuration editor.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now fully accurate
    (instead of to "only" minimally five digits).
  * demo(error.catching) now also shows off withWarnings() and
    tryCatchWEMs().
  * As an experimental feature the placeholder _ can now also be used
    in the rhs of a forward pipe |&gt; expression as the first argument
    in an extraction call, such as _$coef. More generally, it can be
    used as the head of a chain of extractions, such as _$coef[[2]].
  * Spaces in the environment variable used to choose the R session's
    temporary directory (TMPDIR, TMP and TEMP are tried in turn) are
    now fatal.  (On Windows the 'short path' version of the path is
    tried and used if that does not contain a space.)
  * all.equal.numeric() gets a new optional switch giveErr to return
    the numeric error as attribute.  Relatedly,
    stopifnot(all.equal&lt;some&gt;(a, b, ..)) is as "smart" now, as
    stopifnot(all.equal(....)) has been already, thus allowing
    customized all.equal&lt;Some&gt;() wrappers.
  * R on Windows is now able to work with path names longer than 260
    characters when these are enabled in the system (requires at
    least Windows 10 version 1607).  Packages should be updated to
    work with long paths as well, instead of assuming PATH_MAX to be
    the maximum length.  Custom front-ends and applications embedding
    R need to update their manifests if they wish to allow this
    feature.  See
    &lt;https://blog.r-project.org/2023/03/07/path-length-limit-on-windows&gt;
    for more information.
  * 'Object not found' and 'Missing argument' errors now give a more
    accurate error context. Patch provided by Lionel Henry in
    PR#18241.
  * The @ operator is now an S3 generic. Based on contributions by
    Tomasz Kalinowski in PR#18482.
  * New generic chooseOpsMethod() provides a mechanism for objects to
    resolve cases where two suitable methods are found for an Ops
    Group Generic. This supports experimenting with alternative
    object systems. Based on contributions by Tomasz Kalinowski in
    PR#18484.
  * inherits(x, what) now accepts values other than a simple
    character vector for argument what. A new generic, nameOfClass(),
    is called to resolve the class name from what. This supports
    experimenting with alternative object systems. Based on
    contributions by Tomasz Kalinowski in PR#18485.
  * Detection of BLAS/LAPACK in use (sessionInfo()) with FlexiBLAS
    now reports the current backend.
  * The "data.frame" method for subset() now warns about extraneous
    arguments, typically catching the use of = instead of == in the
    subset expression.
  * Calling a:b when numeric a or b is longer than one may now be
    made into an error by setting environment variable
    _R_CHECK_LENGTH_COLON_ to a true value, along the proposal in
    PR#18419 by Henrik Bengtsson.
  * density(x, weights = *) now warns if automatic bandwidth
    selection happens without using weights; new optional warnWbw may
    suppress the warning.  Prompted by Christoph Dalitz' PR#18490 and
    its discussants.
  * rm(list = *) is faster and more readable thanks to Kevin Ushey's
    PR#18492.
  * The plot.lm() function no longer produces a normal Q-Q plot for
    GLMs. Instead it plots a half-normal Q-Q plot of the absolute
    value of the standardized deviance residuals.
  * The print() method for class "summary.glm" no longer shows
    summary statistics for the deviance residuals by default.  Its
    optional argument show.residuals can be used to show them if
    required.
  * The tapply() function now accepts a data frame as its X argument,
    and allows INDEX to be a formula in that case. by.data.frame()
    similarly allows INDICES to be a formula.
  * The performance of df[j] &lt;- value (including for missing j) and
    write.table(df) has been improved for data frames df with a large
    number of columns.  (Thanks to Gabriel Becker's PR#18500,
    PR#18503 and discussants, prompted by a report from Toby Dylan
    Hocking on the R-devel mailing list.)
  * The matrix multiply operator %*% is now an S3 generic, belonging
    to new group generic matrixOps.  From Tomasz Kalinowski's
    contribution in PR#18483.
  * New function array2DF() to convert arrays to data frames,
    particularly useful for the list arrays created by tapply().
  DATES and TIMES:
  * On platforms where (non-UTC) datetimes before 1902 (or before
    1900 as with system functions on recent macOS) are guessed by
    extrapolating time zones from 1902-2037, there is a warning at
    the first use of extrapolation in a session.  (As all time zones
    post 2037 are extrapolation, we do not warn on those.)
  * (Platforms using --with-internal-tzone, including Windows and by
    default macOS). How years are printed in dates or date-times can
    be controlled by environment variable R_PAD_YEARS_BY_ZERO.  The
    default remains to pad to 4 digits by zeroes, but setting value
    no gives no padding (as used by default by glibc).
  * strftime() tries harder to determine the offset for the "%z"
    format, and succeeds on the mainstream R platforms.
  * strftime() has a limit of 2048 bytes on the string produced -
    attempting to exceed this is an error.  (Previously it silently
    truncated at 255 bytes.)
  * sessionInfo() records (and by default prints) the system time
    zone as part of the locale information.  Also, the source
    (system/internal) of the date-time conversion and printing
    functions.
  * Objects of class "POSIXlt" created in this version of R always
    have 11 components: component zone is always set, and component
    gmtoff is set for times in UTC and usually set on the (almost
    all) platforms which have C-level support, otherwise is NA.
  * There are comprehensive validity checks on the structure of
    objects of class "POSIXlt" when converting (including formatting
    and printing).  (This avoids mis-conversions of hand-crafted
    objects.)
  * There is some support for using the native date-time routines on
    macOS: this is only viable on recent versions (e.g. 12.6 and 13)
    and does get wrong some historical changes (before 1900, during
    WWII).  Use of --with-internal-tzone remains the default.
  * as.POSIXct(&lt;numeric&gt;) and as.POSIXlt(.) (without specifying
    origin) now work.  So does as.Date(&lt;numeric&gt;).
  * as.Date.POSIXct(., tz) now treats several tz values, notably
    "GMT" as equivalent to "UTC", proposed and improved by Michael
    Chirico and Joshua Ulrich in PR#17674.
  * Experimental balancePOSIXlt() utility allows using "ragged" and
    or out-of-range "POSIXlt" objects more correctly, e.g., in
    subsetting and subassignments.  Such objects are now documented.
    More experimentally, a "POSIXlt" object may have an attribute
    "balanced" indicating if it is known to be filled or fully
    balanced.
  * Functions axis.Date() and axis.POSIXct() are rewritten to gain
    better default tick locations and better default formats by using
    prettyDate(). Thanks to Swetlana Herbrandt.
  * The mapping of Windows' names for time zones to IANA's 'Olson'
    names has been updated.  When ICU is available (it is by
    default), it is used to get a mapping for the current region set
    in Windows.  This can be overridden by setting environment
    variable TZ to the desired Olson name - see OlsonNames() for
    those currently available.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 16
    and so packages that provide graphics devices should be
    reinstalled.
  * The grDevices and grid packages have new functions for rendering
    typeset glyphs, primarily: grDevices::glyphInfo() and
    grid::grid.glyph().
    Rendering of typeset glyphs is only supported so far on the
    Cairo-based graphics devices and on the pdf() and quartz()
    devices.
  * The defined behaviour for "clear" and "source" compositing
    operators (via grid::grid.group()) has been changed (to align
    better with simple interpretation of original Porter-Duff
    definitions).
  * Support for gradients, patterns, clipping paths, masks, groups,
    compositing operators, and affine transformations has been added
    to the quartz() device.
  INSTALLATION on a UNIX-ALIKE:
  * A system installation of generic LAPACK 3.10.0 or later will be
    preferred to the version in the R sources.
    configure option --with-lapack=no (equivalently --without-lapack)
    forces compilation of the internal LAPACK sources.
    If --with-lapack is not specified, a system liblapack is looked
    for and used if it reports version 3.10.0 or later and does not
    contain BLAS routines.
    Packages using LAPACK will need to be reinstalled if this changes
    to using an external library.
  * On aarch64 Linux platforms using GCC, configure now defaults to
  - fPIC (instead of -fpic), as desired in PR#18326.
  * configure now checks conversion of datetimes between POSIXlt and
    POSIXct around year 2020.  Failure (which has been seen on
    platforms missing tzdata) is fatal.
  * If configure option --with-valgrind-instrumentation is given
    value 1 or 2, option --with-system-valgrind-headers is now the
    default and ignored (with a warning).  It is highly recommended
    that the system headers are installed alongside valgrind: they
    are part of its packaging on some Linux distributions and
    packaged separately (e.g. in the valgrind-devel RPM) on others.
    configure will give a warning if they are not found.
    The system headers will be required in a future release of R to
    build with valgrind instrumentation.
  * libcurl 8.x is now accepted by configure: despite a change in
    major version number it changes neither API nor ABI.
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools43, an update of the Rtools42 toolchain.  It is
    based on gcc 12 and newer versions of MinGW-W64, binutils and
    libraries.  At this time R-devel can still be built using
    Rtools42 without changes, but when R-devel is installed via the
    installer, it will by default look for Rtools43.
  * Old make targets rsync-extsoft and 32-bit ones that are no longer
    needed have been removed.
  * Default builds (including for packages) no longer select C99.
    Thus the C standard used is the default for the compiler, which
    for the toolchain in Rtools43 is C17.  (This is consistent with
    Unix builds.)
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++17 where
    available (which it is on all currently checked platforms): if
    not C++14 or C++11 is used if available otherwise C++ is not
    supported.
  * USE_FC_LEN_T is the default: this uses the correct
    (compiler-dependent) prototypes for Fortran BLAS/LAPACK routines
    called from C/C++, and requires adjustment of many such calls -
    see 'Writing R Extensions' SS6.6.1.
  * There is initial support for C++23 as several compilers are now
    supporting -std=c++23 or -std=c++2b or similar.  As for C++20,
    there no additional configure checks for C++23 features beyond a
    check that the compiler reports a __cplusplus value greater than
    that in the C++20 standard.  C++ feature tests should be used.
  * There is support for a package to indicate the version of the C
    standard which should be used to compile it, and for the
    installing user to specify this.  In most cases R defaults to the
    C compiler's default standard which is C17 (a `bug-fix' of C11) -
    earlier versions of R or compilers may have defaulted to C99.
    Current options are:
    USE_C17 Use a standard that is at most C17.  The intention is to
    allow legacy packages to still be installed when later C
    standards become the default, including packages using new
    keywords as identifiers or with K&amp;R-style function
    declarations.  This will use C17 if available, falling back
    to C11.
    USE_C90 Use the C90 (aka C89) standard.  (As that standard did
    not require compilers to identify that version, all we can
    verify is that the compiler does not claim to be using a
    later standard.  It may accept C99 features - for example
    clang accepts // to make comments.)
    USE_C99 Use the C99 standard. This should be rarely needed - it
    avoids the few new features of C11/C17 which can be useful if
    a package assumes them if C17 is specified and they are not
    implemented.
    USE_C23 Use C23 (or in future, later).  Compiler/library support
    for C23 is still being implemented, but LLVM clang from
    15.0.0 and the upcoming GCC 13 have quite extensive support.
    These can be specified as part of the SystemRequirements field in
    the package's DESCRIPTION file or _via_ options --use-C17 and so
    on of R CMD INSTALL and R CMD SHLIB.
    For further details see "Writing R Extensions" SS1.2.5.
  * (Windows) A src/Makefile.ucrt or src/Makefile.win file is now
    included after R_HOME/etcR_ARCH/Makeconf and so no longer needs
    to include that file itself.  Installation of a package with such
    a file now uses a site Makevars file in the same way as a package
    with a src/Makevars.win file would.
  * configure is now passed crucial variables such as CC and CFLAGS
    in its environment, as many packages were not setting them (as
    documented in 'Writing R Extensions' SS1.2).
    This has most effect where configure is used to compile parts of
    the package - most often by cmake or libtool which obfuscate the
    actual compile commands used.
    Also used for configure.win and configure.ucrt on Windows.
  FORTRAN FLAGS:
  * The flag -fno-optimize-sibling-calls is no longer forced for
    gfortran 7 and later.  It should no longer be needed now using
    'hidden' character-length arguments when calling BLAS/LAPACK
    routines from C/C++ is the default even for packages.  (Unless
    perhaps packages call Fortran code from C/C++ without using R's
    headers and without allowing for these arguments.)
  C-LEVEL FACILITIES:
  * The deprecated S-compatibility macros DOUBLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * The deprecated legacy typedefs of Sint and Sfloat in header R.h
    are no longer defined, and that header no longer includes header
    limits.h from C nor climits from C++.
  * New macro CAD5R() is provided in Rinternals.h and used in a few
    places in the R sources.
  * ALTREP now supports VECSXP vectors. Contributed by Gabor Csardi
    in PR#17620.
  * The Rcomplex definition (in header R_ext/Complex.h) has been
    extended to prevent possible mis-compilation when interfacing
    with Fortran (PR#18430).  The new definition causes compiler
    warnings with static initializers such as {1, 2}, which can be
    changed to {.r=1, .i=2}.
    Using the new definition from C++ depends on compiler extensions
    supporting C features that have not been incorporated into the
    C++ standards but are available in g++ and clang++: this may
    result in C++ compiler warnings but these have been worked around
    for recent versions of common compilers (GCC, Apple/LLVM clang,
    Intel).
    It is intended to change the inclusion of header R_ext/Complex.h
    by other R headers, so C/C++ code files which make use of
    Rcomplex should include that header explicitly.
  UTILITIES:
  * R CMD check does more checking of package .Rd files, warning
    about invalid email addresses and (some) invalid URIs and noting
    empty \item labels in description lists.
  * R CMD check now also reports problems when reading package news
    in md (file NEWS.md) and (optionally) plain text (file NEWS)
    formats.
  * _R_CHECK_TIMINGS_ defaults to a value from the environment even
    for R CMD check --as-cran; this allows for exceptionally fast or
    slow platforms.
    It now applies to checking PDF and HTML versions of the manuals,
    and 'checking CRAN incoming feasibility'.
  * R CMD check can optionally (but included in --as-cran) check
    whether HTML math rendering _via_ KaTeX works for the package .Rd
    files.
  * Non-interactive debugger invocations can be trapped by setting
    the environment variable _R_CHECK_BROWSER_NONINTERACTIVE_ to a
    true value.  This is enabled by R CMD check --as-cran to detect
    the use of leftover browser() statements in the package.
  * The use of sprintf and vsprintf from C/C++ has been deprecated in
    macOS 13 and is a known security risk.  R CMD check now reports
    (on all platforms) if their use is found in compiled code:
    replace by snprintf or vsnprintf respectively. [*NB:* whether
    such calls get compiled into the package is platform-dependent.]
  * Where recorded at installation, R CMD check reports the C and
    Fortran compilers used to build R.
    It reports the OS in use (if known, as given by osVersion) as
    well as that R was built for.
    It notes if a C++ standard was specified which is older than the
    current default: many packages have used C++11 to mean 'not
    C++98' - as C++11 is the minimum supported since R 4.0.0, that
    specification can probably be removed.
  * R CMD INSTALL reports the compilers (and on macOS, the SDK) used,
    and this is copied to the output of R CMD check.
    Where a C++ standard is specified, it is reported.
  * R CMD check's 'checking compilation flags in Makevars' has been
    relaxed to accept the use of flags such as -std=f2008 in
    PKG_FFLAGS.
  * tools::buildVignettes() has a new argument skip, which is used by
    R CMD check to skip (and note) vignettes with unavailable
    \VignetteDepends (PR#18318).
  * New generic .AtNames() added to enable class-specific completions
    after @. The formerly internal function findMatches() is now
    exported, mainly for use in methods for .DollarNames() and
    .AtNames().
  DEPRECATED AND DEFUNCT:
  * default.stringsAsFactors() is defunct.
  * Calling as.data.frame.&lt;class&gt;() directly (for 12 atomic classes)
    is going to be formally deprecated, currently activated by
    setting the environment variable
    _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ to non-empty, which also
    happens in R CMD check --as-cran.
  BUG FIXES:
  * Hashed environments with sizes less than 5 can now grow.
    (Reported to R-devel by Duncan Garmonsway.)
  * as.character(&lt;Rd&gt;, deparse = TRUE) failed to re-escape curly
    braces in LaTeX-like text.  (Reported by Hadley Wickham in
    PR#18324.)
  * library() now passes its lib.loc argument when requiring Depends
    packages; reported (with fix) in PR#18331 by Mikael Jagan.
  * R CMD Stangle: improved message about 'Output' files.
  * head(x, n) and tail(x, n) now signal an error if n is not
    numeric, instead of incidentally "working" sometimes returning
    all of x.  Reported and discussed by Colin Fay, in PR#18357.
  * The "lm" method for summary() now gives the correct F-statistic
    when the model contains an offset.  Reported in PR#18008.
  * C() and `contrasts&lt;-`() now preserve factor level names when
    given a function object (as opposed a function name which did
    preserve names). Reported in PR#17616.
  * c(a = 1, 2)[[]] no longer matches 2 but rather signals a
    _classed_ error.  Reported and analysed by Davis Vaughan in
    PR#18367, a duplicate of PR#18004, by Jan Meis et al.  For
    consistency, NULL[[]] is also erroneous now.  x[[]] &lt;- v gives an
    error of the same class "MissingSubscriptError".
  * The relist() function of utils now supports NULL elements in the
    skeleton (PR#15854).
  * ordered(levels = *) (missing x) now works analogously to factor(,
    ordered=TRUE); reported (with fix) by Achim Zeileis in PR#18389.
  * User-defined Rd macro definitions can now span multiple lines,
    thanks to a patch from Duncan Murdoch. Previously, the Rd parser
    silently ignored everything after the first line.
  * Plain-text help (tools::Rd2txt()) now preserves an initial blank
    line for text following description list items.
  * tools::Rd2HTML() and tools::Rd2latex() no longer split \arguments
    and \value lists at Rd comments.
  * tools::Rd2latex() now correctly handles optional text outside
    \items of argument lists as well as bracketed text at the
    beginning of sections, e.g., \value{[NULL]}.
  * as.character(&lt;POSIXt&gt;) now behaves more in line with the methods
    for atomic vectors such as numbers, and is no longer influenced
    by options().  Ditto for as.character(&lt;Date&gt;).  The
    as.character() method gets arguments digits and OutDec with
    defaults _not_ depending on options().  Use of as.character(*,
    format = .) now warns.
  * Similarly, the as.character.hexmode() and *.octmode() methods
    also behave as good citizen methods and back compatibility option
    keepStr = TRUE.
  * The as.POSIXlt(&lt;POSIXlt&gt;) and as.POSIXct(&lt;POSIXct&gt;) default
    methods now do obey their tz argument, also in this case.
  * as.POSIXlt(&lt;Date&gt;) now does apply a tz (time zone) argument, as
    does as.POSIXct(); partly suggested by Roland Fuss on the R-devel
    mailing list.
  * as.Date.POSIXlt(x) now also works when the list components are of
    unequal length, aka "partially filled" or "ragged".
  * expand.model.frame() looked up variables in the wrong environment
    when applied to models fitted without data.  Reported in
    PR#18414.
  * time() now (also) uses the ts.eps = getOption("ts.eps") argument
    and thus by default rounds values very close to the start (or
    end) of a year.  Based on a proposal by Andre"i V. Kostyrka on
    R-help.
  * Printing of a factanal() result with just one factor and sort =
    TRUE now works regularly, fixing PR#17863 by Timothy Bates,
    thanks to the 'R Contributors' working group.
  * Printing 0-length objects of class "factor", "roman", "hexmode",
    "octmode", "person", "bibentry", or "citation" now prints
    something better, one of which fixes PR#18422, reported by
    Benjamin Feakins.
  * Sys.timezone() queries timedatectl only if systemd is loaded;
    addressing a report by Jan Gorecki in PR#17421.
  * The formula method of cor.test() had scoping problems when
    environment(formula) was not the calling environment; reported
    with a patch proposal by Mao Kobayashi in PR#18439.
  * attach() of an environment with active bindings now preserves the
    active bindings.  Reported by Kevin Ushey in PR#18425.
  * BLAS detection now works also with system-provided libraries not
    available as regular files.  This fixes detection of the
    Accelerate framework on macOS since Big Sur.  Reported by David
    Novgorodsky.
  * download.file() gives a helpful error message in case of an
    invalid download.file.method option, thanks to Colin Fay's report
    in PR#18455.
  * Sporadic crashes of Rterm when using completion have been fixed.
  * Rprof() is now more reliable.  A livelock in thread
    initialization with too short sampling interval has been fixed on
    macOS.  A deadlock in using the C runtime has been fixed on
    Windows.  A potential deadlock has been prevented on Unix.
  * Cursor placement in Rgui now works even after a fixed-width font
    is selected.
  * Mandatory options (options()) are now set on startup so that
    saving and restoring them always works (PR#18372).
  * Package installation, R CMD INSTALL or install.packages(*), now
    parses each of the &lt;pkg&gt;/R/*.R files individually instead of
    first concatenating and then parse()ing the large resulting file.
    This allows parser or syntax errors to be diagnosed with correct
    file names and line numbers, thanks to Simon Dedman's report and
    Bill Dunlap's patch in PR#17859.
    This _does_ require syntactically self contained R source files
    now, fixing another inadvertent bug.
  * predict.lm(&lt;model with offset&gt;) now finds the offset in the
    correct environment, thanks to Andr'e Gillibert's report and patch
    in PR#18456.
  * getInitial(&lt;formula&gt;) now finds the selfStart model in the
    correct environment.  (Reported by Ivan Krylov in PR#18368.)
  * Fix for possible segfault when using recently-added graphics
    features, such as gradients, clipping paths, masks, and groups
    with pdf(file=NULL).
  * class(m) &lt;- class(m) no longer changes a matrix m by adding a
    class _attribute_.
  * packageDate(pkg) now only warns once if there is no pkg.
  * When ts() creates a multivariate time series, "mts", it also
    inherits from "array" now, and is.mts() is documented _and_
    stricter.
  * Rd2txt() now preserves line breaks of \verb Rd content and from
    duplicated \cr.  The former also fixes the rendering of verbatim
    output from Rd \Sexpr in plain-text help.
  * uniroot(f, interval) should no longer wrongly converge _outside_
    the interval in some cases where abs(f(x)) == Inf for an x at the
    interval boundary, thanks to posts by Ben Bolker and Serguei
    Sokol on R-devel.
  * Vectorized alpha handling in palette functions such as in gray(),
    rainbow(), or hcl.colors() works correctly now, thanks to Achim
    Zeileis' report and patch in PR#18476.
  * Formatting and print()ing of bibentry objects has dropped the
    deprecated citation.bibtex.max argument, such that the bibtex
    argument's default for print.bibentry() depends directly on the
    citation.bibtex.max option, whereas in format.bibentry() the
    option no longer applies.
  * Attempting to use a character string naming a foreign function
    entry point in a foreign function call in a package will now
    signal an error if the packages has called R_forceSymbols to
    specify that symbols must be used.
  * An error in table() could permanently set options(warn=2)
    promoting all subsequent warnings to errors.
  * The sigma() function gave misleading results for binary GLMs.  A
    new method for objects of class "glm" returns the square root of
    the estimate of the dispersion parameter using the same
    calculation as summary.glm().
  * bs() and ns() in the (typical) case of automatic knot
    construction, when some of the supposedly inner knots coincide
    with boundary knots, now moves them inside (with a warning),
    building on PR#18442 by Ben Bolker.
  * R CMD on Windows now skips the site profile with --no-site-file
    and --vanilla even when R_PROFILE is set (PR#18512, from Kevin
    Ushey).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1686916800">- CHANGES IN R 4.3.1:
  C-LEVEL FACILITIES:
  * The C-level API version of R's integrate(), Rdqags() in Applic.h,
    now returns the correct number of integrand evaluations neval,
    fixing PR#18515 reported and diagnosed by Stephen Wade.
  * The C prototypes for LAPACK calls dspgv and dtptrs in
    R_exts/Lapack.h had one too many and one too few character length
    arguments - but this has not caused any known issues. To get the
    corrected prototypes, include
    [#]include &lt;Rconfig.h&gt; // for PR18534fixed
    [#]ifdef PR18534fixed
    [#] define usePR18534fix 1
    [#]endif
    [#]include &lt;R_exts/Lapack.h&gt;
    in your C/C++ code (PR#18534).
  INSTALLATION:
  * Many of the checks of esoteric Internet operations and those
    using unreliable external sites have been moved to a new target
    that is not run by default and primarily intended for the core
    developers.  To run them use
    cd tests; make test-Internet-dev
  BUG FIXES:
  * .S3methods(), typically called from methods(), again marks
    methods from package base as visible.
    Also, the visibility of non-base methods is again determined by
    the method's presence in search().
  * tools::Rdiff() is now more robust against invalid strings, fixing
    installation tests on Windows without Rtools installed
    (PR#18530).
  * Fix (new) bug in hcl.colors(2, *), by Achim Zeileis (PR#18523).
  * head(., &lt;illegal&gt;) and tail(..) now produce more useful "Error in
    ...." error messages, fixing PR#18362.
  * Package code syntax on Windows is checked in UTF-8 when UTF-8 is
    the native encoding.
  * na.contiguous(x) now also returns the first run, when it is at
    the beginning and there is a later one of the same length;
    reported to R-devel, including a fix, by Georgi Boshnakov.
    Further, by default, it modifies only an existing attr(*,"tsp")
    but otherwise no longer sets one.
  * chol(&lt;not pos.def&gt;, pivot = &lt;T|F&gt;) now gives a correct error or
    warning message (depending on pivot), thanks to Mikael Jagan's
    (PR#18541).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1699012800">- CHANGES IN R 4.3.2:
  NEW FEATURES:
  * The default initialization of the "repos" option from the
    repositories file at startup can be skipped by setting
    environment variable R_REPOSITORIES to NULL such that
    getOption("repos") is empty if not set elsewhere.
  * qr.X() is now an implicit S4 generic in methods.
  * iconv(to = "ASCII//TRANSLIT") is emulated using substitution on
    platforms which do not support it (notably Alpine Linux).  This
    should give a human-readable conversion in ASCII on all platforms
    (rather than NA_character_).
  * trans3d() gains options continuous and verbose addressing the
    problem of possible "wrap around" when projecting too long
    curves, as reported by Achim Zeileis in PR#18537.
  * tools::showNonASCII() has been rewritten to work better on macOS
    14 (which has a changed implementation of iconv()).
  * tiff(type = "quartz") (the default on macOS) now warns if
    compression is specified: it continues to be ignored.
  INSTALLATION on a UNIX-ALIKE:
  * There is some support for building with Intel's LLVM-based
    compilers on x86_64 Linux, such as (C) icx, (C++) ipcx and
    (Fortran) ifx from oneAPI 2023.x.y.
  * There is support for using LLVM's flang-new as the Fortran
    compiler from LLVM 16.0.x (preferably 17.0.0 or later).
  UTILITIES:
  * R CMD check reports the use of the Fortran 90 random number
    generator RANDOM_NUMBER() and the subroutines to initialize it.
    'Writing R Extensions' has example code to use R's RNGs from
    Fortran.
  BUG FIXES:
  * substr(x, n, L) &lt;- cc now works (more) correctly for multibyte
    UTF-8 strings x when L &gt; nchar(x), thanks to a report and patch
    by 'Architect 95'.
  * contrib.url(character()) now returns 0-length character() as
    documented, which also avoids spurious warnings from
    available.packages() et al. in the edge case of an empty vector
    of repository URLs.
  * readChar(., 4e8) no longer fails, thanks to Kodi Arfer's report
    (PR#18557).
  * lapply(&lt;list&gt;, as.data.frame) no longer warns falsely for some
    base vector components.
  * Communication between parent and child processes in the multicore
    part of parallel could fail on platforms that do not support an
    arbitrarily large payload in system functions read()/write() on
    pipes (seen on macOS where a restriction to INT_MAX bytes is
    documented, without doing a partial read unlike Linux). The
    payload is now split into 1Gb chunks to avoid that problem.
    (PR#18571)
  * qqplot(x,y, conf.level=.) gives better confidence bounds when
    length(x) != length(y), thanks to Alexander Ploner's report and
    patch proposal (PR#18557).
  * norm(&lt;0-length&gt;, "2") now gives zero instead of an error, as all
    the other norm types, thanks to Mikael Jagan's PR#18542.
  * Build-stage Rd macros \packageAuthor and \packageMaintainer now
    process Authors@R, fixing NA results when the package DESCRIPTION
    omits Author and Maintainer fields.
  * Formatting and printing complex numbers could give things like
    0.1683-0i because of rounding error: -0i is now replaced by +0i.
  * postscript() refused to accept a title comment containing the
    letter "W" (PR#18599).
  * isoreg(c(1,Inf)) signals an error instead of segfaulting, fixing
    PR#18603.
  * tiff(type = "Xlib") was only outputting the last page of
    multi-page plots.
  * tools::latexToUtf8() again knows about \~{n} and other letters
    with tilde, fixing a regression in R 4.3.0, and about \^{i} as an
    alternative to \^{\i} (similarly with other accents).
    Furthermore, LaTeX codes for accented I letters are now correctly
    converted, also fixing related mistakes in
    tools::encoded_text_to_latex().
  * tar(*, tar = "internal") no longer creates out-of-spec tar files
    in the very rare case of user or group names longer than 32
    bytes, fixing PR#17871 with thanks to Ivan Krylov.
  * When using the "internal" timezone datetime code, adding a
    fraction of a second no longer adds one second, fixing PR#16856
    from a patch by Ivan Krylov.
  * tools::checkRd() no longer produces spurious notes about
    "unnecessary braces" from multi-line Rd results of \Sexpr macros.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1709208000">- CHANGES IN R 4.3.3:
  NEW FEATURES:
  * iconv() now fixes up variant encoding names such as "utf8"
    case-insensitively.
  DEPRECATED AND DEFUNCT:
  * The legacy encoding = "MacRoman" is deprecated in pdf() and
    postscript(): support was incomplete in earlier versions of R.
  BUG FIXES:
  * Arguments are now properly forwarded to methods on S4 generics
    with ... in the middle of their formal arguments. This was broken
    for the case when a method introduced an argument but did not
    include ... in its own formals. Thanks to Herv'e Pag`es for the
    report PR#18538.
  * Some invalid file arguments to pictex(), postscript() and xfig()
    opened a file called NA rather than throw an error.  These
    included postscript(NULL) (which some people expected to work
    like pdf(NULL)).
  * Passing filename = NA to svg(), cairo_pdf(), cairo_ps() or the
    Cairo-based bitmap devices opened a file called NA: it now throws
    an error.
  * quartz(file = NA) opened a file called NA, including when used as
    a Quartz-based bitmap device.  It now gives an error.
  * rank(&lt;long vector&gt;) now works, fixing PR#18617, thanks to Ilia
    Kats.
  * seq.int() did not adequately check its length.out argument.
  * match(&lt;POSIXct&gt;, .) is correct again for differing time zones,
    ditto for "POSIXlt", fixing PR#18618 reported by Bastian Klein.
  * drop.terms(*, dropx = &lt;0-length&gt;) now works, fixing PR#18563 as
    proposed by Mikael Jagan.
  * drop.terms(*) keeps + offset(.) terms when it should, PR#18565,
    and drop.terms() no longer makes up a response, PR#18566, fixing
    both bugs thanks to Mikael Jagan.
  * getS3method("t", "test") no longer finds the t.test() function,
    fixing PR#18627.
  * pdf() and postscript() support for the documented Adobe encodings
    "Greek" and "Cyrilllic" was missing (although the corresponding
    Windows' codepages could be used).
  * Computations of glyph metric information for pdf() and
    postscript() did not take into account that transliteration could
    replace one character by two or more (only seen on macOS 14) and
    typically warned that the information was not known.
  * rank(x) no longer overflows during integer addition, when
    computing rank average for largish but not-yet long vector x,
    fixing PR#18630, thanks to Ilia Kats.
  * list.files() on Windows now returns also files with names longer
    that 260 bytes (the Windows limit is 260 characters).
    Previously, some file names particularly with 'East Asian'
    characters were omitted.
  * cov2cor(&lt;0 x 0&gt;) now works, fixing PR#18423 thanks to Mikael
    Jagan and Elin Waring.
  * cov2cor(&lt;negative diagonal&gt;) and similar now give one warning
    instead of two, with better wording, fixing PR#18424 thanks to
    Mikael Jagan.
  * tools:: startDynamicHelp() now ensures port is in proper range,
    fixing PR#18645.
  * pbeta(x, a,b) is correct now for x=0 or 1 in the boundary cases
    where a or b or both are 0, fixing PR#18672 thanks to Michael
    Fay.
  * pmatch(x, table) for large table, also called for data frame row
    selection, dfrm[nm, ], is now interruptible, fixing PR#18656.
  * predict(&lt;rank-deficient lm&gt;, newdata=*) fix computing of nbasis,
    see Russ Lenth's comment 29 in PR#16158.
  * Added a work-around for a bug in macOS 14.3.1 and higher which
    prevents R plots in the Quartz Cocoa device from updating on
    screen.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1713960000">- CHANGES IN R 4.4.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Startup banners, R --version, sessionInfo() and R CMD check no
    longer report (64-bit) as part of the platform as this is almost
    universal - the increasingly rare 32-bit platforms will still
    report (32-bit).
    On Windows, ditto for window titles.
  * is.atomic(NULL) now returns FALSE, as NULL is not an atomic
    vector.  Strict back-compatibility would replace is.atomic(foo)
    by (is.null(foo) || is.atomic(foo)) but should happen only
    sparingly.
  NEW FEATURES:
  * The confint() methods for "glm" and "nls" objects have been
    copied to the stats package.  Previously, they were stubs which
    called versions in package MASS. The MASS namespace is no longer
    loaded if you invoke (say) confint(glmfit).  Further, the "glm"
    method for profile() and the plot() and pairs() methods for class
    "profile" have been copied from MASS to stats.  (profile.nls()
    and plot.profile.nls() were already in stats.)
  * The confint() and profile methods for "glm" objects have gained a
    possibility to do profiling based on the Rao Score statistic in
    addition to the default Likelihood Ratio. This is controlled by a
    new test = argument.
  * The pairs() method for "profile" objects has been extended with a
    which = argument to allow plotting only a subset of the
    parameters.
  * The "glm" method for anova() computes test statistics and
    p-values by default, using a chi-squared test or an F test
    depending on whether the dispersion is fixed or free.  Test
    statistics can be suppressed by giving argument test a false
    logical value.
  * In setRepositories() the repositories can be set using their
    names via name = instead of index ind =.
  * methods() and .S3methods() gain a all.names option for the (rare)
    case where functions starting with a . should be included.
  * Serializations can now be interrupted (e.g., by Ctrl-C on a
    Unix-alike) if they take too long, e.g., from save.image(),
    thanks to suggestions by Ivan Krylov and others on R-devel.
  * New startup option --max-connections to set the maximum number of
    simultaneous connections for the session.  Defaults to 128 as
    before: allowed values up to 4096 (but resource limits may in
    practice restrict to smaller values).
  * R on Windows (since Windows 10 2004) now uses the new Segment
    Heap allocator. This may improve performance of some
    memory-intensive applications.
  * When R packages are built, typically by R CMD build &lt;pkg&gt;, the
    new --user=&lt;build_user&gt; option overrides the (internally
    determined) user name, currently Sys.info()["user"] or LOGNAME.
    This is a (modified) fulfillment of Will Landau's suggestion in
    PR#17530.
  * tools::testInstalledBasic() gets new optional arguments outDir
    and testSrcdir, e.g., allowing to use it in a &lt;builddir&gt; !=
    &lt;srcdir&gt; setup, and in standard "binary" Windows installation
  * if* a source tests/ folder is present.
  * range(&lt;DT_with_Inf&gt;, finite = TRUE) now work for objects of class
    "Date", "POSIXct", and "POSIXlt" with infinite entries,
    analogously to range.default(), as proposed by Davis Vaughan on
    R-devel.  Other range()-methods can make use of new function
    .rangeNum().
  * New .internalGenerics object complementing .S3PrimitiveGenerics,
    for documentation and low-level book-keeping.
  * grid() now invisibly returns the x- and y- coordinates at which
    the grid-lines were drawn.
  * norm(., type) now also works for complex matrices.
  * kappa(., exact = TRUE, norm = *) now works for all norms and also
    for complex matrices.  In symmetric / triangular cases, the new
    argument uplo = "U" | "L" allows the upper or lower triangular
    part to be specified.
  * memDecompress(type = "unknown") recognizes compression in the
    default 'zlib' format as used by memCompress(type = "gzip").
  * memCompress() and memDecompress() will use the libdeflate library
    (&lt;https://github.com/ebiggers/libdeflate&gt;) if installed.  This
    uses the same type of compression for type = "gzip" but is 1.5-2x
    faster than the system libz library on some common platforms: the
    speed-up may depend on the library version.
  * diff() for objects of class "Date", "POSIXct", and "POSIXlt"
    accepts a units argument passed via ....
  * Dynamic help now does a much better job of rendering package
    DESCRIPTION metadata.
  * Rprof() gains an event argument and support for elapsed (real)
    time profiling on Unix (PR#18076).
  * filled.contour() gains a key.border argument.
  * tools::update_pkg_po() gets arguments pot_make and mo_make for
    _not_ re-making the corresponding files, and additionally a
    verbose argument.
  * Hexadecimal string colour specifications are now accepted in
    short form, so, for example, we can use "#123", which is
    equivalent to "#112233".
    Thanks to MikeFC for the original idea and Ella Kaye, Malcolm
    Barrett, George Stagg, and Hanne Oberman for the patch.
  * Plain-text help shows \var markup by angle brackets.
  * The new experimental primitive function declare() is intended to
    eventually allow information about R code to be communicated to
    the interpreter, compiler, and code analysis tools. The syntax
    for declarations is still being developed.
  * Functions psmirnov(), qsmirnov() and rsmirnov() in package stats
    have had argument two.sided renamed to alternative, to take into
    account that the permutation distributions of the one-sided
    statistics can be different in the case of ties.  Consequence of
    PR#18582.
  * sort() is now an implicit S4 generic in methods.
  * Formatting and printing, format(z), print(z), of complex vectors
    z no longer zap relatively small real or imaginary parts to zero,
    fixing PR#16752.  This is an API change, as it was documented
    previously to round real and imaginary parts together on purpose,
    producing nicer looking output.  As mentioned, e.g. in the PR,
    this change is compatible with many other "R-like" programming
    environments.
    We have simplified the internal code and now basically format the
    real and imaginary parts independently of each other.
  * New experimental functions Tailcall() and Exec() to support
    writing stack-space-efficient recursive functions.
  * Where characters are attempted to be plotted by pdf(),
    postscript() and xfig() which are not in the selected 8-bit
    character set (most often Latin-1) and the R session is using a
    UTF-8 locale, the warning messages will show the UTF-8 character
    rather than its bytes and one dot will be substituted per
    character rather than per byte.  (Platforms whose iconv() does
    transliteration silently plot the transliteration.)
    In a UTF-8 locale some transliterations are now done with a
    warning (e.g., dashes and Unicode minus to hyphen, ligatures are
    expanded, permille (‰) is replaced by o/oo), although the OS may
    have got there first.  These are warnings as they will continue
    to be replaced by dots in earlier versions of R.
  * The matrix multiplication functions crossprod() and tcrossprod()
    are now also primitive and S3 generic, as %*% had become in R
    4.3.0.
  * source() and example() have a new optional argument catch.aborts
    which allows continued evaluation of the R code after an error.
  * The non-Quartz tiff() devices allow additional types of
    compression if supported by the platform's libtiff library.
  * The list of base and recommended package names is now provided by
    tools::standard_package_names().
  * cairo_pdf() and cairo_ps() default to onefile = TRUE to closer
    match pdf() and postscript().
  * New option catch.script.errors provides a documented way to catch
    errors and then continue in non-interactive use.
  * L %||% R newly in base is an expressive idiom for the phrases
    if(!is.null(L)) L else R or if(is.null(L)) R else L.
  * The return value from warnings() now always inherits from
    "warnings" as documented, now also in the case of no warnings
    where it previously returned NULL.
  * as.complex("1i") now returns 0 + 1i instead of NA with a warning.
  * z &lt;- c(NA, 1i) now keeps the imaginary part Im(z[1]) == 0, no
    longer coercing to NA_complex_.  Similarly, cumsum(z) correctly
    sums real and imaginary parts separately, i.e., without
    "crosstalk" in case of NAs.
  * On Alpine Linux iconv() now maps "latin2", "latin-2", "latin9"
    and "latin-9" to encoding names the OS knows about
    (case-insensitively).
  * iconv(sub = "Unicode") now always zero-pads to four (hex) digits,
    rather than to 4 or 8.  (This seems to have become the convention
    once Unicode restricted the number of Unicode points to 2^21 - 1
    and so will never need more than 6 digits.)
  * NCOL(NULL) now returns 0 instead of 1, for consistency with
    cbind().
  * The information for the Euro glyph missing from the Adobe .afm
    files for the Courier, Helvetica and Times families has been
    copied from their URW equivalents - this will improve vertical
    centring in the pdf() and postscript() devices.
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.12.0.  The changes are almost entirely cosmetic.
  * The included LAPACK sources have been updated to version 3.12.0
    and some further double-complex routines added.
  * There are new font families for the 2014--5 URW 2.0 fonts (see
    ?pdf) which are included in recent versions of Ghostscript.
    These have font widths for most Greek glyphs and a few others
    which were missing from the original versions (whose font
    families remain available for reproducibility, although
    Ghostscript-based viewers will render using the 2.0 versions).
  * Improve the large-n efficiency of as.matrix(&lt;dist&gt;), thanks an R
    contributors effort, notably by Tim Taylor and Heather Turner,
    see PR#18660.
  * The default and numeric methods of all.equal() get a check.class
    option.
  * zapsmall() gets new optional arguments, function mFUN and min.d,
    for extra flexibility; fulfills a wish in PR#18199.  Also, it is
    now an implicit S4 generic in package methods.
  * The Rd filter for aspell() gains an ignore argument.
  * New generic function sort_by(), primarily useful for the
    data.frame method which can be used to sort rows of a data frame
    by one or more columns.
  * The icence headers for the RPC code in src/extra/xdr have been
    updated to use the GPL-compatible licence published by Oracle
    America in 2010.
  * New function pkg2HTML() in tools to create single-page HTML
    reference manuals for R packages.
  * The byte code evaluator now uses less C stack space for recursive
    calls to byte-compiled functions. It also makes more of an effort
    to avoid allocations for scalar return values.
  * New completion option backtick (disabled by default) allows
    non-syntactic completions to be wrapped in backquotes. This is
    currently only useful for Jupyter notebooks via the IRkernel
    package, and may cause problems for other backends.
  INSTALLATION:
  * The parser has been updated to work with bison 3.8.2, which is
    now used for the pre-generated parsers in gram.c, file.c, and
    gramRd.c. A few parser error messages have changed, which may
    affect code that relies on exact messages.
  INSTALLATION on a UNIX-ALIKE:
  * System valgrind headers are now required to use configure option
  - -with-valgrind-instrumentation with value 1 or 2.
  * configure will warn if it encounters a 32-bit build, as that is
    nowadays almost untested.
  * Environment variable R_SYSTEM_ABI is no longer used and so no
    longer recorded in etc/Renviron (it was not on Windows and was
    only ever used when preparing package tools).
  * If the libdeflate library and headers are available, libdeflate
    rather than libz is used to (de)compress R objects in lazy-load
    databases.  Typically tasks spend up to 5% of their time on such
    operations, although creating lazy-data databases is one of the
    exceptions.
    This can be suppressed if the library is available by the
    configure option --without-libdeflate-compression.
  * configure option --enable-lto=check has not worked reliably since
    2019 and has been removed.
  * The minimum autoconf requirement for a maintainer build has been
    increased to autoconf 2.71.
    It is intended to increase this to 2.72 for R 4.5.0: the
    distributed configure file was generated using 2.72.
  * The minimum version requirement for an external LAPACK has been
    reduced to 3.9.0.
  * No default C++ compiler is set if no C++17 compiler is detected:
    there is no longer an automatic fallback to C++14 or C++11.
    Compilers from the last five years should have sufficient
    support: for others macros CXX and CXXSTD can be set in file
    config.site to provide a fallback if needed.
    The Objective-C++ compiler now by default uses the standard
    selected by R for C++ (currently C++17) rather than the default
    standard for the C++ compiler (which on macOS is still C++98).
  INSTALLATION on macOS:
  * A new configure option --with-newAccelerate makes use of Apple's
    'new' BLAS / LAPACK interfaces in their Accelerate framework.
    Those interfaces are only available in macOS 13.3 or later, and
    building requires SDK 13.3 or later (from the Command Line Tools
    or Xcode 14.3 or later).
    By default the option uses new Accelerate for BLAS calls: to also
    use it for LAPACK use option --with-newAccelerate=lapack.  The
    later interfaces provide LAPACK 3.9.1 rather than 3.2.1: 3.9.1 is
    from 2021-04 and does not include the improved algorithms
    introduced in LAPACK 3.10.0 (including for BLAS calls).
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools44, an update of the Rtools43 toolchain.  It is
    based on GCC 13 and newer versions of MinGW-W64, binutils and
    libraries (targeting 64-bit Intel CPUs).  R-devel can no longer
    be built using Rtools43 without changes.
  * Rtools44 has experimental support for 64-bit ARM (aarch64) CPUs
    _via_ the LLVM 17 toolchain using lld, clang/flang-new and
    libc++.
  UTILITIES:
  * R CMD check notes when S4-style exports are used without
    declaring a strong dependence on package methods.
  * tools::checkRd() (used by R CMD check) detects more problems with
    \Sexpr-based dynamic content, including bad nesting of \Sexprs
    and invalid arguments.
  * tools::checkRd() now reports Rd titles and section names ending
    in a period; this is ignored by R CMD check unless environment
    variable _R_CHECK_RD_CHECKRD_MINLEVEL_ is set to -5 or smaller.
  * R CMD check now notes Rd files without an \alias, as long
    documented in 'Writing R Extensions' §1.3.1.  The check for a
    missing \description has been moved from tools::checkRd() to
    tools::checkRdContents().
  * R CMD check now visits inst/NEWS.Rd and OS-specific man
    subdirectories when checking Rd files.
  * tools::checkDocFiles() and tools::checkRdContents() now also
    check internal Rd files by default, but "specially" (ignoring
    missing documentation of arguments).
  * R CMD Rdiff gets option --useEx.
  * R CMD check now warns on non-portable uses of Fortran KIND such
    as INTEGER(KIND=4) and REAL(KIND=8).
    To see the failing lines set environment variable
    _R_CHECK_FORTRAN_KIND_DETAILS_ to a true value.
  * When checking Rd files, R CMD check now notes some of the "lost
    braces" that tools::checkRd() finds.  Typical problems are Rd
    macros missing the initial backslash (e.g., code{...}), in-text
    set notation (e.g., {1, 2}, where the braces need escaping), and
    \itemize lists with \describe-style entries of the form
    \item{label}{description}.
  * R CMD INSTALL (and hence check) will compile C++ code with
  - DR_NO_REMAP if environment variable _R_CXX_USE_NO_REMAP_ is set
    to a true value.  It is planned that this will in future become
    the default for compiling C++.
  * The new built-in Rd macro \dontdiff{} can be used to mark example
    code whose output should be ignored when comparing check output
    to reference output (tests/Examples/&lt;pkg&gt;-Ex.Rout.save).  The
    \dontdiff tag, like \donttest, is _not_ shown on the rendered
    help page, so provides a clean alternative to ##
    IGNORE_RDIFF_(BEGIN|END) comments.
  * R CMD build when there is no NAMESPACE, now uses the recommended
    exportPattern("^[^.]"), instead of exporting everything.
  * R CMD check now warns about non-ASCII characters in the NAMESPACE
    file (in addition to R files). Such packages are not portable and
    may fail to install on some platforms.
  C-LEVEL FACILITIES:
  * Headers R_ext/Applic.h and R-ext/Linpack.h used to include
    R_ext/BLAS.h although this was undocumented and unneeded by their
    documented entry points.  They no longer do so.
  * New function R_missing(), factored out from do_missing(), used to
    fix PR#18579.
  * SEXP type S4SXP has been renamed to OBJSXP to support
    experimenting with alternative object systems.  The S4SXP value
    can still be used in C code but is now deprecated.  Based on
    contributions from the R Consortium's Object-Oriented Programming
    Working Group.
  * New function pow1p(x,y) for accurate (1+x)^y.
  * mkCharLenCE was incorrectly documented to take a size_t length
    but was implemented with int (and character strings in R are
    limited to 2^31 - 1 bytes).
  DEPRECATED AND DEFUNCT:
  * data() no longer handles zipped data from long-defunct (since R
    2.13.0) --use-zip-data installations.
  * The legacy graphics devices pictex() and xfig() are now
    deprecated.  They do not support recent graphics enhancements and
    their font handling is rudimentary. The intention is to retain
    them for historical interest as long as they remain somewhat
    functional.
  * Support for encoding = "MacRoman" has been removed from the pdf()
    and postscript() devices - this was a legacy encoding supporting
    classic macOS up to 2001 and no longer has universal libiconv
    support.
  * is.R() is deprecated as no other S dialect is known to be in use
    (and this could only identify historical dialects, not future
    ones).
    Further information on calls can be obtained by setting the
    environment variable _R_DEPRECATED_IS_R_ to error which turns the
    deprecation warning into an error and so by default gives a
    traceback.  (This is done by R CMD check --as-cran.)
  * UseMethod() no longer forwards local variables assigned in the
    generic function into method call environments before evaluating
    the method body. This makes method calls behave more like
    standard function calls and makes method code easier to analyze
    correctly.
  * The twelve as.data.frame.&lt;class&gt;() methods which were deprecated
    only via _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ and in R CMD
    check --as-cran are formally deprecated now in favour of calling
    as.data.frame() or as.data.frame.vector().  The deprecation
    "check" now works also when as.data.frame() is S4 generic thanks
    to Ivan Krylov.
  * The default method for the directional comparison operators &lt;, &gt;,
    &lt;=, and &gt;= now signals an error when one of the operands is a
    language object, i.e. a symbol or a call.
  * For terms.formula(), deprecate abb and neg.out arguments
    _formally_ in addition to just documenting it.
  BUG FIXES:
  * The methods package is more robust to not being attached to the
    search path.  More work needs to be done.
  * pairwise.t.test() misbehaved when subgroups had 0 DF for
    variance, even with pool.sd = TRUE.  (PR#18594 by Jack Berry).
  * Probability distribution functions [dpq]&lt;distrib&gt;(x, *), but also
    bessel[IKJY](x, .) now consistently preserve attributes(x) when
    length(x) == 0, e.g., for a 2 x 0 matrix, thanks to Karolis
    Koncevičius' report PR#18509.
  * Group "Summary" computations such as sum(1:3, 4, na.rm = 5, NA,
    7, na.rm = LL) now give an error instead of either 17 or NN for
    LL true or false, as proposed by Ivan Krylov on the R-devel
    mailing list.  (This also means it is now an error to specify
    na.rm more than once.)
  * as.complex(x) now returns complex(real = x, imaginary = 0) for
    _all_ numerical and logical x, notably also for NA or
    NA_integer_.
  * Directories are now omitted by file.copy(, recursive = FALSE) and
    in file.append() (PR#17337).
  * gsub() and sub() are now more robust to integer overflow when
    reporting errors caused by too large input strings (PR#18346).
  * Top-level handlers are now more robust to attempts to remove a
    handler whilst handlers are running (PR#18508).
  * The handling of Alt+F4 in dialogs created on Windows using
    GraphApp has been fixed (PR#13870).
  * density() more consistently computes grid values for the
    FFT-based convolution, following Robert Schlicht's analysis and
    proposal in PR#18337, correcting density values typically by a
    factor of about 0.999.  Argument old.coords = TRUE provides back
    compatibility.
  * palette.colors() gains a name argument that defaults to FALSE
    controlling whether the vector of colours that is returned has
    names (where possible).  PR#18529.
  * tools::xgettext() no longer extracts the (non-translatable) class
    names from warningCondition and errorCondition calls.
  * S3method(&lt;gen&gt;, &lt;class&gt;, &lt;func&gt;) in the NAMESPACE file now works
    (again) when &lt;func&gt; is visible from the namespace, e.g.,
    imported, or in base.
  * getParseData(f) now also works for a function defined in the
    first of several &lt;pkg&gt;/R/*.R source files, thanks to Kirill
    Müller's report and Duncan Murdoch's patch in PR#16756.
  * Rd \Sexpr macros with nested #ifdef conditionals were not
    processed.
  * A non-blocking connection with non-default encoding (such as a
    socket) now correctly returns from readLines() after new data has
    arrived also when its EOF had been reached previously.  Thanks to
    Peter Meilstrup's report on R-devel and Ivan Krylov's report and
    patch proposal in PR#18555.
  * tools::checkRdContents() failed to detect empty argument
    descriptions when they spanned multiple lines, including those
    generated by prompt().  These cases are now noted by R CMD check.
  * Plain-text help no longer outputs spurious colons in the
    arguments list (for multi-line \item labels in the Rd source).
  * kappa() and rcond() work correctly in more cases; kappa(., norm =
    "2") now warns that it computes the 1-norm with (default) exact =
    FALSE; prompted by Mikael Jagan's quite comprehensive PR#18543.
  * Rd skeletons generated by prompt() or promptData() now use a
    dummy title (so R CMD build works).  tools::checkRdContents() has
    been updated to detect such template leftovers, including from
    promptPackage().
  * When S4 method dispatch fails because no method was found, the
    error message now includes the signature argument names; thanks
    to Michael Chirico's proposal on the R-devel list.
  * withAutoprint({ .. }) now preserves srcrefs previously lost,
    thanks to Andrew Simmons' report plus fix in PR#18572.
  * transform.data.frame() no longer adjusts names; in particular,
    untransformed variables are kept as-is, including those with
    syntactically invalid names (PR#17890).
  * The keep.source option for Rd \Sexpr blocks is no longer ignored.
  * The formula methods for t.test() and wilcox.test() now catch when
    paired is passed, addressing PR#14359; use Pair(x1, x2) ~ 1 for a
    paired test.
  * The level reported in the browser prompt was often too large. It
    now shows the number of browser contexts on the stack.
  * For cbind() and rbind(), the optional deparse.level argument is
    now properly passed to methods, thanks to Mikael Jagan's PR#18579
    and comments there.
  * Some error and warning messages for large ('long vector')
    matrix(v, nr, nc) and dim(m) &lt;- d are now correct about sizes,
    using long long formatting, fixing PR#18612 (and more) reported
    by Mikael Jagan.
  * readChar(useBytes = TRUE) now terminates strings even when the
    underlying connection uses extra spaces in the input buffer.
    This fixes problems with extra garbage seen with gzip
    connections, PR#18605.
  * Named capture in PCRE regular expressions now works also with
    more than 127 named groups (PR#18588).
  * Datetime functions are now robust against long jumps when dealing
    with internal time zone changes.  This avoids confusing warnings
    about an invalid time zone, previously triggered by turning
    warnings into errors or handling them via tryCatch (PR#17966,
    PR#17780).
  * Datetime functions now restore even an empty TZ environment
    variable after internal time zone changes (PR#17724).  This makes
    results of datetime functions with this (typically unintentional)
    setting more predictable.
  * drop.terms(*) now drops response as by default, keep.response =
    FALSE, fixing PR#18564 thanks to Mikael Jagan.
  * dummy.coef(.) now also works for lm()-models with character
    categorical predictor variables rather than factor ones, fixing
    PR#18635 reported by Jinsong Zhao.
  * formals(f) &lt;- formals(f) now also works for a function w/o
    arguments and atomic _constant_ body(f).
  * Correct as.function(&lt;invalid list&gt;, .)'s error message.
  * removeSource() is yet more thorough in finding and removing
    "srcref" and the other source references from parsed R language
    chunks, fixing PR#18638 thanks to Andrew Simmons.
  * dgeom() is more accurate now, notably when its result is very
    small, fixing PR#18642 thanks to the proposal of Morten Welinder,
    also improving other instances where C level binom_raw(x, n, ..)
    has x == 0 or x== n.
  * warning() with options(warn = 1) has improved output for
    multi-line messages.
  * axis.Date() and axis.POSIXct() now respect the par("lab") setting
    for the number of pretty() intervals.
  * Comparisons for language objects (which are based on deparsing)
    are now more careful about using accurate deparsed results
    (PR#18676).
  * Plain-text help (Rd2txt) now correctly preserves blank lines
    following single-line \dontrun code.
  * &lt;POSIXlt&gt;[*] no longer sets wrong "balanced" attribute, fixing
    PR#18681 thanks to Mikael Jagan.
  * str(&lt;classed-call&gt;) now deparses the call as expected, fixing
    PR#18684, reported by Dave Slager.
  * In Rd examples, code following the closing brace of a \dontrun,
    \dontshow or \donttest tag on the same line is no longer skipped
    when R CMD check runs the examples.
  * as.data.frame(matrix(*, ncol=0)) now gets valid names() and
    colnames(); reported by Davis Vaughan on the R-devel list.
  * Internal Mathlib function stirlerr(n) is now almost fully
    (52-bit) accurate for all n &gt;= ~5.9 and more accurate also in the
    range 1 -- 5.9.  This entails small ("after 12th decimal")
    changes in density functions, e.g., dgamma() in _some_ regions of
    their support.  The fix was partly prompted by Morten Welinder's
    PR#18640.
  * Numbers like 9876543.2 are now considered non-integer by Mathlib
    internal R_nonint(), amending original fix of PR#15734.
  * Rd comment lines no longer cause broken paragraphs in the
    rendered PDF and plain-text help. In code blocks, pure comment
    lines (starting with %) no longer produce an empty line.
  * xtabs(Freq ~ .) now consistently defaults to na.action = na.pass,
    using na.rm = FALSE (added as an argument) when summing over Freq
    (PR#17770).
  * tools::testInstalledPackage() is no longer silent about failures
    from running examples or tests and its return code no longer
    ignores failures from checking vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1718366400">- CHANGES IN R 4.4.1:
  C-LEVEL FACILITIES:
  * Functions R_atof and R_strtod declared in header R_ext/Utils.h
    are now documented in 'Writing R Extensions' and so formally part
    of the API.
  * The non-API entry points Rf_setSVector, Rf_StringFalse,
    Rf_StringTrue and Rf_isBlankString have been added to those
    reported by R CMD check.
  * The new function Rf_allocLang is now available. This provides an
    alternative to the idiom of calling Rf_allocList followed by
    SET_TYPEOF.
  UTILITIES:
  * R CMD check now reports as warnings what gfortran calls 'Fortran
    2018 deleted features', all of which have long been marked as
    'obsolescent' and some of which were deleted in Fortran 2008 or
    earlier.  Fortran compilers are no longer required to support
    these.
  BUG FIXES:
  * as.numeric(), scan(), type.convert() and other places which use
    the internal C function R_strtod now require a _non-empty_ digit
    sequence in a decimal or binary exponent.  This aligns with the
    C/POSIX standard for strtod and with ?NumericConstants.
  * as.data.frame(m, make.names=NA) now works correctly for a matrix
    m with NA's in row names.
  * The error message from &lt;POSIXlt&gt;[["hour"]] and similar now
    mentions *[[, "hour"]], as wished for in PR#17409 and proposed by
    Michael Chirico.
  * qbinom() and potentially qpois(), qnbinom(), no longer sometimes
    fail accurate inversion (of pbinom(), etc), thanks to Christopher
    Chang's report and patch in PR#18711.
  * The internal help server on Windows can again serve requests sent
    in quick succession, fixing a regression in R 4.4.0.
  * debugcall(&lt;S3Generic&gt;()) now also works when a corresponding
    S4-generic version is in the methods cache (PR#18143).
  * Package tools' toTitleCase(ch0) now returns character(0) when ch0
    is of zero length; fixing PR#18724, reported by David Hugh Jones.
  * R CMD check is no longer broken (without a check result and no
    explanation in 00check.log) for a package which declares an
    invalid VignetteBuilder in DESCRIPTION but has no vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1730376000">- CHANGES IN R 4.4.2:
  C-LEVEL FACILITIES:
  * The S-compatibility macros F77_COM and F77_COMDECL defined in
    header R_ext/RS.h are deprecated and will be removed shortly.  We
    could find no record of their use.
  BUG FIXES:
  * Mathlib function lgammacor(x) no longer warns about underflow to
    zero for large x.
  * Text widths and heights were incorrectly reported by the Quartz
    device if the drawing context didn't exist yet (typically when
    drawing off-screen to a window that is yet to appear, see
    PR#18591).
  * The Quartz device could segfault in cases where paths with spaces
    are used in the new glyph drawing API.  Thanks to Tomek
    Gieorgijewski (PR#18758).
  * On macOS in R CRAN builds, it is again possible to read
    little-endian UTF-16 text with a BOM from a connection using
    encoding="UTF-16".  Users building R from source should avoid
    using the system libiconv in macOS 14.1 and later.
  * methods' internal .requirePackage() now re-enables primitive
    method dispatch when needed; thanks to Ivan Krylov for
    demystifying CRAN package check failures on the R-devel mailing
    list.</changelog>
</package>
<package pkgid="a5ef98e6cf6d4161ae3df64dad0f5aafb67d89bab61f95dff730c38f01390bec2c28f3c44fb9424b4e889db1a3b20c787d283ac4200160dceca00b8247aaabdc" name="R-splines" arch="i586">
  <version epoch="0" ver="4.4.2" rel="51.0.2.2.sr20241103"/>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1620302400">- To get in sync with d:l:R:autoCRAN the Matrix package's split
  in -devel was reversed.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339200">- improved spec file according to comments of dimstar in
  https://build.opensuse.org/request/show/892685</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339201">- CHANGES IN R 4.1.0:
  FUTURE DIRECTIONS:
  * It is planned that the 4.1.x series will be the last to support
    32-bit Windows, with production of binary packages for that
    series continuing until early 2023.
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Data set esoph in package datasets now provides the correct
    numbers of controls; previously it had the numbers of cases added
    to these.  (Reported by Alexander Fowler in PR#17964.)
  NEW FEATURES:
  * www.omegahat.net is no longer one of the repositories known by
    default to setRepositories().  (Nowadays it only provides source
    packages and is often unavailable.)
  * Function package_dependencies() (in package tools) can now use
    different dependency types for direct and recursive dependencies.
  * The checking of the size of tarball in R CMD check --as-cran
    &lt;pkg&gt; may be tweaked via the new environment variable
    _R_CHECK_CRAN_INCOMING_TARBALL_THRESHOLD_, as suggested in
    PR#17777 by Jan Gorecki.
  * Using c() to combine a factor with other factors now gives a
    factor, an ordered factor when combining ordered factors with
    identical levels.
  * apply() gains a simplify argument to allow disabling of
    simplification of results.
  * The format() method for class "ftable" gets a new option justify.
    (Suggested by Thomas Soeiro.)
  * New ...names() utility.  (Proposed by Neal Fultz in PR#17705.)
  * type.convert() now warns when its as.is argument is not
    specified, as the help file always said it _should_.  In that
    case, the default is changed to TRUE in line with its change in
    read.table() (related to stringsAsFactor) in R 4.0.0.
  * When printing list arrays, classed objects are now shown _via_
    their format() value if this is a short enough character string,
    or by giving the first elements of their class vector and their
    length.
  * capabilities() gets new entry "Rprof" which is TRUE when R has
    been configured with the equivalent of --enable-R-profiling (as
    it is by default).  (Related to Michael Orlitzky's report
    PR#17836.)
  * str(xS4) now also shows extraneous attributes of an S4 object
    xS4.
  * Rudimentary support for vi-style tags in rtags() and R CMD rtags
    has been added.  (Based on a patch from Neal Fultz in PR#17214.)
  * checkRdContents() is now exported from tools; it and also
    checkDocFiles() have a new option chkInternal allowing to check
    Rd files marked with keyword "internal" as well.  The latter can
    be activated for R CMD check via environment variable
    _R_CHECK_RD_INTERNAL_TOO_.
  * New functions numToBits() and numToInts() extend the raw
    conversion utilities to (double precision) numeric.
  * Functions URLencode() and URLdecode() in package utils now work
    on vectors of URIs.  (Based on patch from Bob Rudis submitted
    with PR#17873.)
  * path.expand() can expand ~user on most Unix-alikes even when
    readline is not in use.  It tries harder to expand ~, for example
    should environment variable HOME be unset.
  * For HTML help (both dynamic and static), Rd file links to help
    pages in external packages are now treated as references to
    topics rather than file names, and fall back to a file link only
    if the topic is not found in the target package. The earlier rule
    which prioritized file names over topics can be restored by
    setting the environment variable _R_HELP_LINKS_TO_TOPICS_ to a
    false value.
  * c() now removes NULL arguments before dispatching to methods,
    thus simplifying the implementation of c() methods, _but_ for
    back compatibility keeps NULL when it is the first argument.
    (From a report and patch proposal by Lionel Henry in PR#17900.)
  * Vectorize()'s result function's environment no longer keeps
    unneeded objects.
  * Function ...elt() now propagates visibility consistently with
    ..n.  (Thanks to Lionel Henry's PR#17905.)
  * capture.output() no longer uses non-standard evaluation to
    evaluate its arguments.  This makes evaluation of functions like
    parent.frame() more consistent.  (Thanks to Lionel Henry's
    PR#17907.)
  * packBits(bits, type="double") now works as inverse of
    numToBits().  (Thanks to Bill Dunlap's proposal in PR#17914.)
  * curlGetHeaders() has two new arguments, timeout to specify the
    timeout for that call (overriding getOption("timeout")) and TLS
    to specify the minimum TLS protocol version to be used for
    https:// URIs (_inter alia_ providing a means to check for sites
    using deprecated TLS versions 1.0 and 1.1).
  * For nls(), an optional constant scaleOffset may be added to the
    denominator of the relative offset convergence test for cases
    where the fit of a model is expected to be exact, thanks to a
    proposal by John Nash.  nls(*, trace=TRUE) now also shows the
    convergence criterion.
  * Numeric differentiation _via_ numericDeriv() gets new optional
    arguments eps and central, the latter for taking central divided
    differences.  The latter can be activated for nls() via
    nls.control(nDcentral = TRUE).
  * nls() now passes the trace and control arguments to getInitial(),
    notably for all self-starting models, so these can also be fit in
    zero-noise situations via a scaleOffset.  For this reason, the
    initial function of a selfStart model must now have ... in its
    argument list.
  * bquote(splice = TRUE) can now splice expression vectors with
    attributes: this makes it possible to splice the result of
    parse(keep.source = TRUE).  (Report and patch provided by Lionel
    Henry in PR#17869.)
  * textConnection() gets an optional name argument.
  * get(), exists(), and get0() now signal an error if the first
    argument has length greater than 1.  Previously additional
    elements were silently ignored.  (Suggested by Antoine Fabri on
    R-devel.)
  * R now provides a shorthand notation for creating functions, e.g.
    \(x) x + 1 is parsed as function(x) x + 1.
  * R now provides a simple native forward pipe syntax |&gt;.  The
    simple form of the forward pipe inserts the left-hand side as the
    first argument in the right-hand side call.  The pipe
    implementation as a syntax transformation was motivated by
    suggestions from Jim Hester and Lionel Henry.
  * all.equal(f, g) for functions now by default also compares their
    environment(.)s, notably via new all.equal method for class
    function.  Comparison of nls() fits, e.g., may now need
    all.equal(m1, m2, check.environment = FALSE).
  * .libPaths() gets a new option include.site, allowing to _not_
    include the site library.  (Thanks to Dario Strbenac's suggestion
    and Gabe Becker's PR#18016.)
  * Lithuanian translations are now available.  (Thanks to Rimantas
    Zakauskas.)
  * names() now works for DOTSXP objects.  On the other hand, in
    R-lang, the R language manual, we now warn against relying on the
    structure or even existence of such dot-dot-dot objects.
  * all.equal() no longer gives an error on DOTSXP objects.
  * capabilities("cairo") now applies only to the file-based devices
    as it is now possible (if very unusual) to build R with Cairo
    support for those but not for X11().
  * There is optional support for tracing the progress of
    loadNamespace() - see its help.
  * (Not Windows.)  l10n_info() reports an additional element, the
    name of the encoding as reported by the OS (which may differ from
    the encoding part (if any) of the result from
    Sys.getlocale("LC_CTYPE").
  * New function gregexec() which generalizes regexec() to find _all_
    disjoint matches and well as all substrings corresponding to
    parenthesized subexpressions of the given regular expression.
    (Contributed by Brodie Gaslam.)
  * New function charClass() in package utils to query the
    wide-character classification functions in use (such as
    iswprint).
  * The names of quantile()'s result no longer depend on the global
    getOption("digits"), but quantile() gets a new optional argument
    digits = 7 instead.
  * grep(), sub(), regexp and variants work considerably faster for
    long factors with few levels.  (Thanks to Michael Chirico's
    PR#18063.)
  * Provide grouping of x11() graphics windows within a window
    manager such as Gnome or Unity; thanks to a patch by Ivan Krylov
    posted to R-devel.
  * The split() method for class data.frame now allows the f argument
    to be specified as a formula.
  * sprintf now warns on arguments unused by the format string.
  * New palettes "Rocket" and "Mako" for hcl.colors() (approximating
    palettes of the same name from the 'viridisLite' package).
    Contributed by Achim Zeileis.
  * The base environment and its namespace are now locked (so one can
    no longer add bindings to these or remove from these).
  * Rterm handling of multi-byte characters has been improved,
    allowing use of such characters when supported by the current
    locale.
  * Rterm now accepts ALT+ +xxxxxxxx sequences to enter Unicode
    characters as hex digits.
  * Environment variable LC_ALL on Windows now takes precedence over
    LC_CTYPE and variables for other supported categories, matching
    the POSIX behaviour.
  * duplicated() and anyDuplicated() are now optimized for integer
    and real vectors that are known to be sorted via the ALTREP
    framework. Contributed by Gabriel Becker via PR#17993.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 14
    and so packages that provide graphics devices should be
    reinstalled.
  * Graphics devices should now specify deviceVersion to indicate
    what version of the graphics engine they support.
  * Graphics devices can now specify deviceClip.  If TRUE, the
    graphics engine will never perform any clipping of output itself.
    The clipping that the graphics engine does perform (for both
    canClip = TRUE and canClip = FALSE) has been improved to avoid
    producing unnecessary artifacts in clipped output.
  * The grid package now allows gpar(fill) to be a linearGradient(),
    a radialGradient(), or a pattern().  The viewport(clip) can now
    also be a grob, which defines a clipping path, and there is a new
    viewport(mask) that can also be a grob, which defines a mask.
    These new features are only supported so far on the Cairo-based
    graphics devices and on the pdf() device.
  * (Not Windows.)  A warning is given when a Cairo-based type is
    specified for a png(), jpeg(), tiff() or bmp() device but Cairo
    is unsupported (so type = "Xlib" is tried instead).
  * grSoftVersion() now reports the versions of FreeType and
    FontConfig if they are used directly (not _via_ Pango), as is
    most commonly done on macOS.
  C-LEVEL FACILITIES:
  * The _standalone_ libRmath math library and R's C API now provide
    log1pexp() again as documented, and gain log1mexp().
  INSTALLATION on a UNIX-ALIKE:
  * configure checks for a program pkgconf if program pkg-config is
    not found.  These are now only looked for on the path (like
    almost all other programs) so if needed specify a full path to
    the command in PKG_CONFIG, for example in file config.site.
  * C99 function iswblank is required - it was last seen missing ca
    2003 so the workaround has been removed.
  * There are new configure options --with-internal-iswxxxxx,
  - -with-internal-towlower and --with-internal-wcwidth which allows
    the system functions for wide-character classification,
    case-switching and width (wcwidth and wcswidth) to be replaced by
    internal ones.  The first has long been used on macOS, AIX (and
    Windows) but this enables it to be unselected there and selected
    for other platforms (it is the new default on Solaris).  The
    second is new in this version of R and is selected by default on
    macOS and Solaris.  The third has long been the default and
    remains so as it contains customizations for East Asian
    languages.
    System versions of these functions are often minimally
    implemented (sometimes only for ASCII characters) and may not
    cover the full range of Unicode points: for example Solaris (and
    Windows) only cover the Basic Multilingual Plane.
  * Cairo installations without X11 are more likely to be detected by
    configure, when the file-based Cairo graphics devices will be
    available but not X11(type = "cairo").
  * There is a new configure option --with-static-cairo which is the
    default on macOS.  This should be used when only static cairo
    (and where relevant, Pango) libraries are available.
  * Cairo-based graphics devices on platforms without Pango but with
    FreeType/FontConfig will make use of the latter for font
    selection.
  LINK-TIME OPTIMIZATION on a UNIX-ALIKE:
  * Configuring with flag --enable-lto=R now also uses LTO when
    installing the recommended packages.
  * R CMD INSTALL and R CMD SHLIB have a new flag --use-LTO to use
    LTO when compiling code, for use with R configured with
  - -enable-lto=R.  For R configured with --enable-lto, they have
    the new flag --no-use-LTO.
    Packages can opt in or out of LTO compilation _via_ a UseLTO
    field in the DESCRIPTION file.  (As usual this can be overridden
    by the command-line flags.)
  BUILDING R on Windows:
  * for GCC &gt;= 8, FC_LEN_T is defined in config.h and hence character
    lengths are passed from C to Fortran in _inter alia_ BLAS and
    LAPACK calls.
  * There is a new text file src/gnuwin32/README.compilation, which
    outlines how C/Fortran code compilation is organized and
    documents new features:
  * R can be built with Link-Time Optimization with a suitable
    compiler - doing so with GCC 9.2 showed several
    inconsistencies which have been corrected.
  * There is support for cross-compiling the C and Fortran code
    in R and standard packages on suitable (Linux) platforms.
    This is mainly intended to allow developers to test later
    versions of compilers - for example using GCC 9.2 or 10.x has
    detected issues that GCC 8.3 in Rtools40 does not.
  * There is experimental support for cross-building R packages
    with C, C++ and/or Fortran code.
  * The R installer can now be optionally built to support a single
    architecture (only 64-bit or only 32-bit).
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++14 where
    available (which it is on all currently checked platforms): if
    not (as before) C++11 is used if available otherwise C++ is not
    supported.
    Packages which specify C++11 will still be installed using C++11.
    C++14 compilers may give deprecation warnings, most often for
    std::random_shuffle (deprecated in C++14 and removed in C++17).
    Either specify C++11 (see 'Writing R Extensions') or modernize
    the code and if needed specify C++14.  The latter has been
    supported since R 3.4.0 so the package's DESCRIPTION would need
    to include something like
    Depends: R (&gt;= 3.4)
  PACKAGE INSTALLATION on Windows:
  * R CMD INSTALL and R CMD SHLIB make use of their flag --use-LTO
    when the LTO_OPT make macro is set in file etc/${R_ARCH}/Makeconf
    or in a personal/site Makevars file.  (For details see 'Writing R
    Extensions' SS4.5.)
    This provides a valuable check on code consistency.  It does work
    with GCC 8.3 as in Rtools40, but that does not detect everything
    the CRAN checks with current GCC do.
  PACKAGE INSTALLATION on macOS:
  * The default personal library directory on builds with
  - -enable-aqua (including CRAN builds) now differs by CPU type,
    one of
    ~/Library/R/x86_64/x.y/library
    ~/Library/R/arm64/x.y/library
    This uses the CPU type R (and hence the packages) were built for,
    so when a x86_64 build of R is run under Rosetta emulation on an
    arm64 Mac, the first is used.
  UTILITIES:
  * R CMD check can now scan package functions for bogus return
    statements, which were possibly intended as return() calls (wish
    of PR#17180, patch by Sebastian Meyer). This check can be
    activated via the new environment variable
    _R_CHECK_BOGUS_RETURN_, true for --as-cran.
  * R CMD build omits tarballs and binaries of previous builds from
    the top-level package directory.  (PR#17828, patch by Sebastian
    Meyer.)
  * R CMD check now runs sanity checks on the use of LazyData, for
    example that a data directory is present and that
    LazyDataCompression is not specified without LazyData and has a
    documented value.  For packages with large LazyData databases
    without specifying LazyDataCompression, there is a reference to
    the code given in 'Writing R Extensions' SS1.1.6 to test the
    choice of compression (as in all the CRAN packages tested a
    non-default method was preferred).
  * R CMD build removes LazyData and LazyDataCompression fields from
    the DESCRIPTION file of packages without a data directory.
  ENCODING-RELATED CHANGES:
  * The parser now treats \Unnnnnnnn escapes larger than the upper
    limit for Unicode points (\U10FFFF) as an error as they cannot be
    represented by valid UTF-8.
    Where such escapes are used for outputting non-printable
    (including unassigned) characters, 6 hex digits are used (rather
    than 8 with leading zeros).  For clarity, braces are used, for
    example \U{0effff}.
  * The parser now looks for non-ASCII spaces on Solaris (as
    previously on most other OSes).
  * There are warnings (including from the parser) on the use of
    unpaired surrogate Unicode points such as \uD834.  (These cannot
    be converted to valid UTF-8.)
  * Functions nchar(), tolower(), toupper() and chartr() and those
    using regular expressions have more support for inputs with a
    marked Latin-1 encoding.
  * The character-classification functions used (by default) to
    replace the system iswxxxxx functions on Windows, macOS and AIX
    have been updated to Unicode 13.0.0.
    The character-width tables have been updated to include new
    assignments in Unicode 13.0.0.
  * The code for evaluating default (extended) regular expressions
    now uses the same character-classification functions as the rest
    of R (previously they differed on Windows, macOS and AIX).
  * There is a build-time option to replace the system's
    wide-character wctrans C function by tables shipped with R: use
    configure option --with-internal-towlower or (on Windows)
  - DUSE_RI18N_CASE in CFLAGS when building R.  This may be needed
    to allow tolower() and toupper() to work with Unicode characters
    beyond the Basic Multilingual Plane where not supported by system
    functions (e.g. on Solaris where it is the new default).
  * R is more careful when truncating UTF-8 and other multi-byte
    strings that are too long to be printed, passed to the system or
    libraries or placed into an internal buffer.  Truncation will no
    longer produce incomplete multibyte characters.
  DEPRECATED AND DEFUNCT:
  * Function plclust() from the package stats and
    package.dependencies(), pkgDepends(), getDepList(),
    installFoundDepends(), and vignetteDepends() from package tools
    are defunct.
  * Defunct functions checkNEWS() and readNEWS() from package tools
    and CRAN.packages() from utils have been removed.
  * R CMD config CXXCPP is defunct (it was deprecated in R 3.6.2).
  * parallel::detectCores() drops support for Irix (retired in 2013).
  * The LINPACK argument to chol.default(), chol2inv(),
    solve.default() and svd() has been defunct since R 3.1.0.  It was
    silently ignored up to R 4.0.3 but now gives an error.
  * Subsetting/indexing, such as ddd[*] or ddd$x on a DOTSXP
    (dot-dot-dot) object ddd has been disabled; it worked by accident
    only and was undocumented.
  BUG FIXES:
  * Many more C-level allocations (mainly by malloc and strdup) are
    checked for success with suitable alternative actions.
  * Bug fix for replayPlot(); this was turning off graphics engine
    display list recording if a recorded plot was replayed in the
    same session.  The impact of the bug became visible if resize the
    device after replay OR if attempted another savePlot() after
    replay (empty display list means empty screen on resize or empty
    saved plot).
  * R CMD check etc now warn when a package exports non-existing S4
    classes or methods, also in case of no "methods" presence.
    (Reported by Alex Bertram; reproducible example and patch by
    Sebastian Meyer in PR#16662.)
  * boxplot() now also accepts calls for labels such as ylab, the
    same as plot().  (Reported by Marius Hofert.)
  * The help page for xtabs() now correctly states that addNA is
    setting na.action = na.pass among others.  (Reported as PR#17770
    by Thomas Soeiro.)
  * The R CMD check &lt;pkg&gt; gives a longer and more comprehensible
    message when DESCRIPTION misses dependencies, e.g., in Imports:.
    (Thanks to the contributors of PR#17179.)
  * update.default() now calls the generic update() on the formula to
    work correctly for models with extended formulas.  (As reported
    and suggested by Neal Fultz in PR#17865.)
  * The horizontal position of leaves in a dendrogram is now correct
    also with center = FALSE.  (PR#14938, patch from Sebastian
    Meyer.)
  * all.equal.POSIXt() no longer warns about and subsequently ignores
    inconsistent "tzone" attributes, but describes the difference in
    its return value (PR#17277).  This check can be disabled _via_
    the new argument check.tzone = FALSE as suggested by Sebastian
    Meyer.
  * as.POSIXct() now populates the "tzone" attribute from its tz
    argument when x is a logical vector consisting entirely of NA
    values.
  * x[[2^31]] &lt;- v now works.  (Thanks to the report and patch by
    Suharto Anggono in PR#17330.)
  * In log-scale graphics, axis() ticks and label positions are now
    computed more carefully and symmetrically in their range,
    typically providing _more_ ticks, fulfilling wishes in PR#17936.
    The change really corresponds to an improved axisTicks() (package
    grDevices), potentially influencing grid and lattice, for
    example.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now correct to at
    least five digits where it was catastrophically wrong,
    previously.
  * sum(df) and similar "Summary"- and "Math"-group member functions
    now work for data frames df with logical columns, notably also of
    zero rows.  (Reported to R-devel by Martin "b706".)
  * unsplit() had trouble with tibbles due to unsound use of rep(NA,
    len)-indexing, which should use NA_integer_ (Reported to R-devel
    by Mario Annau.)
  * pnorm(x, log.p = TRUE) underflows to -Inf slightly later.
  * show(&lt;hidden S4 generic&gt;) prints better and without quotes for
    non-hidden S4 generics.
  * read.table() and relatives treated an "NA" column name as missing
    when check.names = FALSE PR#18007.
  * Parsing strings containing UTF-16 surrogate pairs such as
    "\uD834\uDD1E" works better on some (uncommon) platforms.
    sprintf("%X", utf8ToInt("\uD834\uDD1E")) should now give "1D11E"
    on all platforms.
  * identical(x,y) is no longer true for differing DOTSXP objects,
    fixing PR#18032.
  * str() now works correctly for DOTSXP and related exotics, even
    when these are doomed.
    Additionally, it no longer fails for lists with a class and
    "irregular" method definitions such that e.g. lapply(*) will
    necessarily fail, as currently for different igraph objects.
  * Too long lines in environment files (e.g. Renviron) no longer
    crash R. This limit has been increased to 100,000 bytes.
    (PR#18001.)
  * There is a further workaround for FreeType giving incorrect
    italic font faces with cairo-based graphics devices on macOS.
  * add_datalist(*, force = TRUE) (from package tools) now actually
    updates an existing data/datalist file for new content.  (Thanks
    to a report and patch by Sebastian Meyer in PR#18048.)
  * cut.Date() and cut.POSIXt() could produce an empty last interval
    for breaks = "months" or breaks = "years".  (Reported as PR#18053
    by Christopher Carbone.)
  * Detection of the encoding of 'regular' macOS locales such as
    en_US (which is UTF-8) had been broken by a macOS change:
    fortunately these are now rarely used with en_US.UTF-8 being
    preferred.
  * sub() and gsub(pattern, repl, x, *) now keep attributes of x such
    as names() also when pattern is NA (PR#18079).
  * Time differences ("difftime" objects) get a replacement and a
    rep() method to keep "units" consistent.  (Thanks to a report and
    patch by Nicolas Bennett in PR#18066.)
  * The \RdOpts macro, setting defaults for \Sexpr options in an Rd
    file, had been ineffective since R 2.12.0: it now works again.
    (Thanks to a report and patch by Sebastian Meyer in PR#18073.)
  * mclapply and pvec no longer accidentally terminate parallel
    processes started before by mcparallel or related calls in
    package parallel (PR#18078).
  * grep and other functions for evaluating (extended) regular
    expressions handle in Unicode also strings not explicitly flagged
    UTF-8, but flagged native when running in UTF-8 locale.
  * Fixed a crash in fifo implementation on Windows (PR#18031).
  * Binary mode in fifo on Windows is now properly detected from
    argument open (PR#15600, PR#18031).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1622808000">- The line %{__install} -m 755 -d %{_infodir}
  no longer works in TW or Factory.
  But without that line it works everywhere. So this instruction
  was commented out of the spec file.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1628596800">- CHANGES IN R 4.1.1:
  NEW FEATURES:
  * require(pkg, quietly = TRUE) is quieter and in particular does
    not warn if the package is not found.
  DEPRECATED AND DEFUNCT:
  * Use of ftp:// URIs should be regarded as deprecated, with
    on-going support confined to method = "libcurl" and not routinely
    tested.  (Nowadays no major browser supports them.)
  * The non-default method = "internal" is deprecated for http:// and
    ftp:// URIs for both download.file and url.
  * On Windows, method = "wininet" is deprecated for http://,
    https:// and ftp:// URIs for both download.file and url.  (A
    warning is only given for ftp://.)
    For ftp:// URIs the default method is now "libcurl" if available
    (which it is on CRAN builds).
    method = "wininet" remains the default for http:// and https://
    URIs but if libcurl is available, using method = "libcurl" is
    preferred.
  INSTALLATION:
  * make check now works also without a LaTeX installation.  (Thanks
    to Sebastian Meyer's PR#18103.)
  BUG FIXES:
  * make check-devel works again in an R build configured with
  - -without-recommended-packages.
  * qnbinom(p, size, mu) for large size/mu is correct now in a range
    of cases (PR#18095); similarly for the (size, prob)
    parametrization of the negative binomial.  Also qpois() and
    qbinom() are better and or faster for extreme cases.  The
    underlying C code has been modularized and is common to all four
    cases of discrete distributions.
  * gap.axis is now part of the axis() arguments which are passed
    from bxp(), and hence boxplot().  (Thanks to Martin Smith's
    report and suggestions in PR#18109.)
  * .First and .Last can again be set from the site profile.
  * seq.int(from, to, *) and seq.default(..) now work better in large
    range cases where from-to is infinite where the two boundaries
    are finite.
  * all.equal(x,y) now returns TRUE correctly also when several
    entries of abs(x) and abs(y) are close to .Machine$double.xmax,
    the largest finite numeric.
  * model.frame() now clears the object bit when removing the class
    attribute of a value via na.action (PR#18100).
  * charClass() now works with multi-character strings on Windows
    (PR#18104, fixed by Bill Dunlap).
  * encodeString() on Solaris now works again in Latin-1 encoding on
    characters represented differently in UTF-8.  Support for
    surrogate pairs on Solaris has been improved.
  * file.show() on Windows now works with non-ASCII path names
    representable in the current native encoding (PR#18132).
  * Embedded R on Windows can now find R home directory via the
    registry even when installed only for the current user
    (PR#18135).
  * pretty(x) with finite x now returns finite values also in the
    case where the extreme x values are close in size to the maximal
    representable number .Machine$double.xmax.
    Also, it's been tweaked for very small ranges and when a boundary
    is close (or equal) to zero; e.g., pretty(c(0,1e-317)) no longer
    has negative numbers, currently still warning about a very small
    range, and pretty(2^-(1024 - 2^-1/(c(24,10)))) is more accurate.
  * The error message for not finding vignette files when weaving has
    correct file sizes now. (Thanks to Sebastian Meyer's PR#18154.)
  * dnbinom(20, &lt;large&gt;, 1) now correctly gives 0, and similar cases
    are more accurate with underflow precaution.  (Reported by Francisco Vera Alcivar in PR#18072.)</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635163200">- repaired https://bugzilla.suse.com/show_bug.cgi?id=1191380
  (rpmacros now go to rpmmacrodir)
- minor clean-ups in spec file</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635768000">- CHANGES IN R 4.1.2:
  C-LEVEL FACILITIES:
  * The workaround in headers R.h and Rmath.h (using namespace std;)
    for the Oracle Developer Studio compiler is no longer needed now
    C++11 is required so has been removed.  A couple more usages of
    log() (which should have been std::log()) with an int argument
    are reported on Solaris.
  * The undocumented limit of 4095 bytes on messages from the
    S-compatibility macros PROBLEM and MESSAGE is now documented and
    longer messages will be silently truncated rather than
    potentially causing segfaults.
  * If the R_NO_SEGV_HANDLER environment variable is non-empty, the
    signal handler for SEGV/ILL/BUS signals (which offers recovery
    user interface) is not set. This allows more reliable debugging
    of crashes that involve the console.
  DEPRECATED AND DEFUNCT:
  * The legacy S-compatibility macros PROBLEM, MESSAGE, ERROR, WARN,
    WARNING, RECOVER, ... are deprecated and will be hidden in R
    4.2.0. R's native interface of Rf_error and Rf_warning has long
    been preferred.
  BUG FIXES:
  * .mapply(F, dots, .) no longer segfaults when dots is not a list
    and uses match.fun(F) as always documented; reported by Andrew
    Simmons in PR#18164.
  * hist(&lt;Date&gt;, ...) and hist(&lt;POSIXt&gt;, ...)  no longer pass
    arguments for rect() (such as col and density) to axis().
    (Thanks to Sebastian Meyer's PR#18171.)
  * \Sexpr{ch} now preserves Encoding(ch). (Thanks to report and
    patch by Jeroen Ooms in PR#18152.)
  * Setting the RNG to "Marsaglia-Multicarry" e.g., by RNGkind(), now
    warns in more places, thanks to Andr'e Gillibert's report and
    patch in PR#18168.
  * gray(numeric(), alpha=1/2) no longer segfaults, fixing PR#18183,
    reported by Till Krenz.
  * Fixed dnbinom(x, size=&lt;very_small&gt;, .., log=TRUE) regression,
    reported by Martin Morgan.
  * as.Date.POSIXlt(x) now keeps names(x), thanks to Davis Vaughan's
    report and patch in PR#18188.
  * model.response() now strips an "AsIs" class typically, thanks to
    Duncan Murdoch's report and other discussants in PR#18190.
  * try() is considerably faster in case of an error and long call,
    as e.g., from some do.call().  Thanks to Alexander Kaever's
    suggestion posted to R-devel.
  * qqline(y = &lt;object&gt;) such as y=I(.), now works, see also
    PR#18190.
  * Non-integer mgp par() settings are now handled correctly in
    axis() and mtext(), thanks to Mikael Jagan and Duncan Murdoch's
    report and suggestion in PR#18194.
  * formatC(x) returns length zero character() now, rather than ""
    when x is of length zero, as documented, thanks to Davis
    Vaughan's post to R-devel.
  * removeSource(fn) now retains (other) attributes(fn).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1647000000">- CHANGES IN R 4.1.3:
  NEW FEATURES:
  * The default version of Bioconductor has been changed to 3.14.
    (This is used by setRepositories and the menus in GUIs.)
  UTILITIES:
  * R CMD check --as-cran has a workaround for a bug in versions of
    file up to at least 5.41 which mis-identify DBF files last
    changed in 2022 as executables.
  C-LEVEL FACILITIES:
  * The legacy S-compatibility macros SINGLE_* in R_ext/Constants.h
    (included by R.h) are deprecated and will be removed in R 4.2.0.
  BUG FIXES:
  * Initialization of self-starting nls() models with initialization
    functions following the pre-R-4.1.0 API (without the ...
    argument) works again for now, with a deprecation warning.
  * Fixed quoting of ~autodetect~ in Java setting defaults to avoid
    inadvertent user lookup due to leading ~, reported in PR#18231 by
    Harold Gutch.
  * substr(., start, stop) &lt;- v now treats _negative_ stop values
    correctly.  Reported with a patch in PR#18228 by Brodie Gaslam.
  * Subscripting an array x without dimnames by a
    length(dim(x))-column character matrix gave "random" non-sense,
    now an error; reported in PR#18244 by Mikael Jagan.
  * ...names() now matches names(list(...)) closely, fixing PR#18247.
  * all.equal(*, scale = s) now works as intended when length(s) &gt; 1,
    partly thanks to Michael Chirico's PR#18272.
  * print(x) for long vectors x now also works for named atomic
    vectors or lists and prints the correct number when reaching the
    getOption("max.print") limit; partly thanks to a report and
    proposal by Hugh Parsonage to the R-devel list.
  * all.equal(&lt;selfStart&gt;, *) no longer signals a deprecation
    warning.
  * reformulate(*, response=r) gives a helpful error message now when
    length(r) &gt; 1, thanks to Bill Dunlap's PR#18281.
  * Modifying globalCallingHandlers inside withCallingHandlers() now
    works or fails correctly, thanks to Henrik Bengtsson's PR#18257.
  * hist(&lt;Date&gt;, breaks = "days") and hist(&lt;POSIXt&gt;, breaks = "secs")
    no longer fail for inputs of length 1.
  * qbeta(.001, .9, .009) and similar cases now converge correctly
    thanks to Ben Bolker's report in PR#17746.
  * window(x, start, end) no longer wrongly signals "'start' cannot
    be after 'end'", fixing PR#17527 and PR#18291.
  * data() now checks that its (rarely used) list argument is a
    character vector - a couple of packages passed other types and
    gave incorrect results.
  * which() now checks its arr.ind argument is TRUE rather coercing
    to logical and taking the first element - which gave incorrect
    results in package code.
  * model.weights() and model.offset() more carefully extract their
    model components, thanks to Ben Bolker and Tim Taylor's R-devel
    post.
  * list.files(recursive = TRUE) now shows all broken symlinks
    (previously, some of them may have been omitted, PR#18296).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1650628800">- CHANGES IN R 4.2.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * The formula method of aggregate() now matches the generic in
    naming its first argument x (resolving PR#18299 by Thomas
    Soeiro).
    This means that calling aggregate() with a formula as a named
    first argument requires name formula in earlier versions of R and
    name x now, so portable code should not name the argument (code
    in many packages did).
  * Calling &amp;&amp; or || with either argument of length greater than one
    now gives a warning (which it is intended will become an error).
  * Calling if() or while() with a condition of length greater than
    one gives an error rather than a warning.  Consequently,
    environment variable _R_CHECK_LENGTH_1_CONDITION_ no longer has
    any effect.
  * Windows users should consult the WINDOWS section below for some
    profound changes including
  * Support for 32-bit builds has been dropped.
  * UTF-8 locales are used where available.
  * The default locations for the R installation and personal
    library folder have been changed.
    Thanks to Tomas Kalibera for months of work on the Windows port
    for this release.
  NEW FEATURES:
  * matrix(x, n, m) now warns in more cases where length(x) differs
    from n * m, as suggested by Abby Spurdle and Wolfgang Huber in
    Feb 2021 on the R-devel mailing list.
    This warning can be turned into an error by setting environment
    variable _R_CHECK_MATRIX_DATA_ to TRUE: R CMD check --as-cran
    does so unless it is already set.
  * Function file_test() in package utils gains tests for symlinks,
    readability and writability.
  * capabilities("libxml") is now false.
    The description of capabilities("http/ftp") now reflects that it
    refers to the default method, no longer the internal one.
  * simplify2array() gains an except argument for controlling the
    exceptions used by sapply().
  * Environment variables R_LIBS_USER and R_LIBS_SITE are both now
    set to the R system default if unset or empty, and can be set to
    NULL to indicate an empty list of user or site library
    directories.
  * The warning for axis()(-like) calls in cases of relatively small
    ranges (typically in log-scale situations) is slightly improved
    _and_ suppressed from explicit calls to .axisPars() as has always
    been the intention.
  * The contrasts setter function `contrasts&lt;-` gains an explicit
    default how.many = NULL rather than just using missing(how.many).
  * grid.pretty() gains a new optional argument n = 5.
  * There is a new function .pretty() with option bounds as a
    technical-utility version of pretty().  It and pretty() gain a
    new argument f.min with a better than back-compatible default.
  * Function grDevices::axisTicks() and related functions such as
    graphics::axis() work better, notably for the log scale; partly
    because of the pretty() improvements, but also because care is
    taken e.g., when ylim is finite but diff(ylim) is infinite.
  * nclass.FD() gains a digits option.
  * The R Mathlib internal C function bd0() (called indirectly from a
    dozen probability density and distribution functions such as
    dpois(), dbinom(), dgamma(), pgamma() _etc_) has been
    complemented by a more sophisticated and (mostly) more accurate C
    function ebd0(), currently called only by internal dpois_raw()
    improving accuracy for R level dpois() and potentially others
    calling it such as dnbinom(), dgamma() or pgamma().  (Thanks to
    Morten Welinder's PR#15628.)
  * write.ftable() gains sep = " " argument as suggested by Thomas
    Soeiro.
  * The names of the locale categories supported by R's
    Sys.getlocale() and Sys.setlocale() are now provided by variable
    .LC.categories in the base namespace.
  * The Date and POSIXt methods for hist() and the histogram method
    for plot() now also use the new default col = "lightgray" in
    consistency with the corresponding change to hist()'s default for
    R 4.0.0.
  * hist.default() gains new fuzz argument, and the histogram plot
    method no longer uses fractional axis ticks when displaying
    counts ("Frequency").
  * mapply() and hence Map() now also obey the "max-or-0-if-any"
    recycling rule, such that, e.g., Map(`+`, 1:3, 1[0]) is valid
    now.
  * as.character(&lt;obj&gt;) for "hexmode" or "octmode" objects now
    fulfils the important basic rule as.character(x)[j] ===
    as.character(x[j]).
  * The set utility functions, notably intersect() have been tweaked
    to be more consistent and symmetric in their two set arguments,
    also preserving a common mode.
  * substr(ch, start,end) &lt;- new now e.g., preserves names(ch); ditto
    for substring(), thanks to a patch from Brodie Gaslam.
  * plot(&lt;lm&gt;) gains a extend.ylim.f argument, in partial response to
    PR#15285; further PR#17784 is fixed thanks to several
    contributors and a patch by Elin Waring.  The Cook's dist
    contours get customizable via cook.col and cook.lty with a
    different default color and their legend is nicer by default and
    customizable via cook.legendChanges.
  * Attempting to subset an object that is not subsettable now
    signals an error of class notSubsettableError. The
    non-subsettable object is contained in the object field of the
    error condition.
  * Subscript-out-of-bounds errors are now signaled as errors of
    class subscriptOutOfBoundsError.
  * Stack-overflow errors are now signaled as errors inheriting from
    class stackOverflowError. See ?stackOverflowError for more
    details.
  * New partly experimental Sys.setLanguage() utility, solving the
    main problem of PR#18055.
  * gettext() and gettextf() get a new option trim = TRUE which when
    set to false allows translations for strings such as "Execution
    halted\n" typical for C code.
  * An experimental implementation of hash tables is now available.
    See ?hashtab for more details.
  * identical() gains a extptr.as.ref argument for requesting that
    external pointer objects be compared as reference objects.
  * reorder() gets an argument decreasing which it passes to sort()
    for level creation; based on the wish and patch by Thomas Soeiro
    in PR#18243.
  * as.vector() gains a data.frame method which returns a simple
    named list, also clearing a long standing 'FIXME' to enable
    as.vector(&lt;data.frame&gt;, mode="list").  This breaks code relying
    on as.vector(&lt;data.frame&gt;) to return the unchanged data frame.
  * legend() is now vectorized for arguments cex, x.intersp, and
    text.width.  The latter can now also be specified as a vector
    (one element for each column of the legend) or as NA for
    computing a proper column wise maximum value of strwidth(legend).
    The argument y.intersp can be specified as a vector with one
    entry for each row of the legend.
    legend() also gains new arguments title.cex and title.font.
    Thanks to Swetlana Herbrandt.
  * Deparsing no longer remaps attribute names dim, dimnames, levels,
    names and tsp to historical S-compatible names (which structure()
    maps back).
  * sample() and sample.int() have additional sanity checks on their
    size and n arguments.
    all.equal.numeric() gains a sanity check on its tolerance
    argument - calling all.equal(a, b, c) for three numeric vectors
    is a surprisingly common error.
    mean(na.rm =), rank(na.last =), barplot(legend.text =),
    boxplot(), contour(drawlabels =), polygon(border =) and
    methods::is(class2 =) have more robust sanity checks on their
    arguments.
    R CMD Rd2pdf (used by R CMD check) has a more robust sanity check
    on the format of \alias{} commands.
  * psigamma(x, deriv) for negative x now also works for deriv = 4
    and 5; their underlying C level dpsifn() is documented in
    'Writing R Extensions'.
  * The HTML help system now uses HTML5 (wish of PR#18149).
  * ks.test() now provides exact p-values also with ties and MC
    p-values in the two-sample (Smirnov) case.  By Torsten Hothorn.
  * ks.test() gains a formula interface, with y ~ 1 for the
    one-sample (Kolmogorov) test and y ~ group for the two-sample
    (Smirnov) test.  Contributed by Torsten Hothorn.
  * The return value from ks.test() now has class c("ks.test",
    "htest") - packages using try() need to take care to use
    inherits() and not == on the class.
  * New functions psmirnov(), qsmirnov() and rsmirnov() in package
    stats implementing the asymptotic and exact distributions of the
    two-sample Smirnov statistic.
  * iconv() now allows sub = "c99" to use C99-style escapes for UTF-8
    inputs which cannot be converted to encoding to.
  * In a forward pipe |&gt; expression it is now possible to use a named
    argument with the placeholder _ in the rhs call to specify where
    the lhs is to be inserted.  The placeholder can only appear once
    on the rhs.
  * The included LAPACK sources have been updated to version 3.10.0,
    except for the four Fortran 77 routines which 3.10.0 has
    re-implemented in Fortran 90 (where the older versions have been
    retained as the R build process does not support Fortran 90).
  * path.expand() and most other uses of tilde expansion now warn if
    a path would be too long if expanded.  (An exception is
    file.exists(), which silently returns false.)
  * trunc(&lt;Date&gt;, *) now supports units = "months" or "years" for
    consistency with the POSIXt method, thanks to Dirk Eddelbuettel's
    proposal in PR#18099.
  * list2DF() now checks that its arguments are of the same length,
    rather than use recycling.
  * The HTML help system has several new features: LaTeX-like math
    can be typeset using either KaTeX or MathJax, usage and example
    code is highlighted using Prism, and for dynamic help the output
    of examples and demos can be shown within the browser if the
    knitr package is installed. These features can be disabled by
    setting the environment variable _R_HELP_ENABLE_ENHANCED_HTML_ to
    a false value.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 15
    and so packages that provide graphics devices should be
    reinstalled.
  * The grid package now allows the user to specify a "vector" of
    pattern fills.  The fill argument to gpar() accepts a list of
    gradients and/or patterns and the functions linearGradient(),
    radialGradient(), and pattern() have a new group argument.
    Points grobs (data symbols) can now also have a pattern fill.
    The grobCoords() function now returns a more informative and
    complex result.
  * The grid package has new functions for drawing isolated groups:
    grid.group(), grid.define(), and grid.use().  These functions add
    compositing operators and affine transformations to R's graphics
    capabilities.
    The grid package also has new functions for stroking and filling
    paths: grid.stroke(), grid.fill(), and grid.fillStroke().
    A new function as.path() allows the user to specify the fill rule
    for a path that is to be used for clipping, stroking, or filling;
    available options are "winding" and "evenodd".  A new function
    as.mask() allows the user to specify the type of a mask;
    available options are "alpha" and "luminance".
    These new features are only supported so far (at most) on the
    Cairo-based graphics devices and on the pdf() device.
  * dev.capabilities() reports on device support for the new
    features.
  * par() now warns about unnamed non-character arguments to prevent
    misuse such as {usr &lt;- par("usr"); par(usr)}.
  INSTALLATION:
  * Facilities for accessing ftp:// sites are no longer tested
    (except _pro tem_ for curlGetHeaders()) as modern browsers have
    removed support.
  * R can now be built with DEFS = -DSTRICT_R_HEADERS .
  PACKAGE INSTALLATION:
  * R CMD INSTALL no longer tangles vignettes. This completes an R
    CMD build change in R 3.0.0 and affects packages built before R
    3.0.2. Such packages should be re-made with R CMD build to have
    the tangled R code of vignettes shipped with the tarball.
  * USE_FC_LEN_T will become the default: this uses the correct
    prototypes for Fortran BLAS/LAPACK routines called from C/C++,
    and requires adjustment of most such calls - see 'Writing R
    Extensions' SS6.6.2.  (This has been supported since R 3.6.2.)
  * Package installation speed for packages installed with
    keep.source has been improved. This resolve the issue reported by
    Ofek Shilon in PR#18236.
  UTILITIES:
  * R CMD check can optionally report files/directories left behind
    in home, /tmp (even though TMPDIR is set) and other directories.
    See the "R Internals" manual for details.
  * R CMD check now reports byte-compilation errors during
    installation.  These are not usually fatal but may result in
    parts of the package not being byte-compiled.
  * _R_CHECK_DEPENDS_ONLY_ can be applied selectively to examples,
    tests and/or vignettes in R CMD check: see the "R Internals"
    manual.
  * _R_CHECK_SRC_MINUS_W_IMPLICIT_ now defaults to true: recent
    versions of Apple clang on macOS have made implicit function
    declarations in C into a compilation error.
  * R CMD check --as-cran makes use of the environment variable
    AUTORECONF.  See the "R Internals" manual SS8 for further details.
  * R CMD check --use-valgrind also uses valgrind when re-building
    vignettes as some non-Sweave vignettes unhelpfully comment out
    all their code when R CMD check runs vignettes.
  * Errors in re-building vignettes (unless there are LaTeX errors)
    are reported by R CMD check as ERROR rather than WARNING when
    running vignettes has been skipped (as it frequently is in CRAN
    checks and by --as-cran).
  * R CMD Rd2pdf gains a --quiet option that is used by R CMD build
    when building the PDF package manual.
  * R CMD Rd2pdf now always runs LaTeX in batch mode, consistent with
    Texinfo &gt;= 6.7. The --batch option is ignored.
  * R CMD build and R CMD check now include the Rd file name and line
    numbers in the error message of an \Sexpr evaluation failure.
  * For packages using the \doi Rd macro (now an install-time \Sexpr)
    but no other dynamic Rd content, R CMD build now produces a
    smaller tarball and is considerably faster - skipping temporary
    package installation.
  C-LEVEL FACILITIES:
  * The non-API header R_ext/R-ftp-http.h is no longer provided, as
    the entry points it covered are now all defunct.
  * A number of non-API declarations and macro definitions have been
    moved from the installed header Rinternals.h to the internal
    header Defn.h. Packages that only use entry points and
    definitions documented to be part of the API as specified in
    'Writing R Extensions' SS6 should not be affected.
  * The macro USE_RINTERNALS no longer has any effect when compiling
    package code.  Packages which also use R_NO_REMAP will need to
    ensure that the remapped names are used for calls to API
    functions that were formerly also made available as macros.
  * The deprecated legacy S-compatibility macros PROBLEM, MESSAGE,
    ERROR, WARN, WARNING, RECOVER, ... are no longer defined in
    R_exts/RS.h (included by R.h).  Replace these by calls to
    Rf_error and Rf_warning (defined in header R_ext/Error.h included
    by R.h).
    Header R_ext/RS.h no longer includes R_ext/Error.h.
  * Header R_ext/Constants.h (included by R.h) when included from C++
    now includes the C++ header cfloat rather than the C header
    float.h (now possible as C++11 is required).
  * The legacy S-compatibility macros DOUBLE_* in R_ext/Constants.h
    (included by R.h) are deprecated.
  * The deprecated S-compatibility macros SINGLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * R_Calloc, R_Free and R_Realloc are preferred to their unprefixed
    forms and error messages now use the prefix. These forms were
    introduced in R 3.4.0 and are available even when
    STRICT_R_HEADERS is defined.
  * rmultinom has been documented in 'Writing R Extensions' SS6 so is
    now part of the R API.
  * Similarly, Rtanpi, called from R level tanpi() is now part of the
    R API.
  * The long-deprecated, undocumented and non-API entry point call_R
    is no longer declared in R_ext/RS.h (included by R.h).
  * The header S.h which has been unsupported since Jan 2016 has been
    removed.  Use R.h instead.
  DEPRECATED AND DEFUNCT:
  * The (non-default and deprecated) method = "internal" for
    download.file() and url() no longer supports http:// nor ftp://
    URIs.  (It is used only for file:// URIs.)
    On Windows, download.file(method = "wininet") no longer supports
    ftp:// URIs.  (It is no longer the default method, which is
    "libcurl" and does.)
    On Windows, the deprecated method = "wininet" now gives a warning
    for http:// and https:// URIs for both download.file() and url().
    (It is no longer the default method.)
  * On Windows, the command-line option --max-mem-size and
    environment variable R_MAX_MEM_SIZE are defunct.  The memory
    allocation limit was important for 32-bit builds, but these are
    no longer supported.
  * default.stringsAsFactors() is now formally deprecated, where that
    was only mentioned on its regular help page, previously.  So it
    now gives a warning if called.
  * unix.time() is defunct now; it had been deprecated since R 3.4.0.
  BUG FIXES:
  * Setting digits = 0 in format(), print.default() (and hence
    typically print()) or options() is again invalid.  Its behaviour
    was platform-dependent, and it is unclear what "zero significant
    digits" should mean (PR#18098).
  * Messages from C code in the cairo section of package grDevices
    are now also offered for translation, thanks to Michael Chirico's
    PR#18123.
  * mean(x) with finite x now is finite also without "long.double"
    capability.
  * R CMD Rd2pdf no longer leaves an empty build directory behind
    when it aborts due to an already existing output file.  (Thanks
    to Sebastian Meyer's PR#18141.)
  * density(x, weights = w, na.rm = TRUE) when anyNA(x) is true, now
    removes weights "in parallel" to x, fixing PR#18151, reported by
    Matthias Gondan.  Additionally, it gets a subdensity option.
  * Conversion of \Sexpr[]{&lt;expR&gt;} to LaTeX or HTML no longer
    produces long blocks of empty lines when &lt;expR&gt; itself contains
    several lines all producing empty output.  Thanks to a report and
    patch by Ivan Krylov posted to R-devel.
  * R CMD build no longer fails if a package vignette uses child
    documents and inst/doc exists.  (Thanks to Sebastian Meyer's
    PR#18156.)
  * When an R documentation ('help' source) file man/foo.Rd in a
    package has \donttest{..} examples with a syntax error, it is now
    signalled as ERROR and with correct line numbers relating to the
  * -Ex.R file, thanks to Duncan Murdoch and Sebastian Meyer's
    reports and patch proposals in PR#17501.
  * Improved determination of the correct translation domain in
    non-base packages, addressing the combination of PR#18092 and
    PR#17998 (#c6) with reports and _augmented_ patch #2904 by
    Suharto Anggono.
    Note that "R-base" is no longer the default domain e.g., for
    top-level calls to gettext(); rather translation needs explicit
    domain = * specification in such cases.
  * identical(attrib.as.set=FALSE) now works correctly with data
    frames with default row names (Thanks to Charlie Gao's PR#18179).
  * txtProgressBar() now enforces a non-zero width for argument char,
    without which no progress can be visible.
  * dimnames(table(d)) is more consistent in the case where d is a
    list with a single component, thanks to Thomas Soeiro's report to
    R-devel.
    Further, table(d1, d2) now gives an error when d1 and d2 are data
    frames as suggested by Thomas in PR#18224.
  * Fix for drawing semi-transparent lines and fills on the native
    Windows graphics device (PR#18219 and PR#16694).  Thanks to Nick
    Ray for helpful diagnosis on Bugzilla.
  * The deparser now wraps sub-expressions such as if(A) ..  with
    parentheses when needed; thanks to Duncan Murdoch's PR#18232 and
    Lionel Henry's patches there.
  * remove.packages() no longer tries to uninstall Priority: base
    packages, thanks to a report and suggestions by Colin Fay in
    PR#18227.
  * win.metafile() now has xpinch and ypinch arguments so that the
    user can override Windows' (potentially wrong) guess at device
    dimensions.
  * x[i] and x[[i]] for non-integer i should now behave in all cases
    as always documented: the index used is equivalent to
    as.integer(i) unless that would overflow where trunc(i) is used
    instead; thanks to Suharto Anggono's report and patch proposals
    in PR#17977.
  * asOneSidedFormula() now associates the resulting formula with the
    global environment rather than the evaluation environment created
    for the call.
  * &lt;bibentry&gt;$name now matches the field name case-insensitively,
    consistent with bibentry() creation and the replacement method.
  * cbind() failed to detect some length mismatches with a mixture of
    time-series and non-time-series inputs.
  * The default LaTeX style file Sweave.sty used by the RweaveLatex
    driver no longer loads the obsolete ae package; thanks to a
    report by Thomas Soeiro in PR#18271.  Furthermore, it now skips
    \usepackage[T1]{fontenc} for engines other than pdfTeX (if
    detected) or if the new [nofontenc] option is used.
  * smooth.spline() now stores its logical cv argument more safely,
    fixing a rare bug when printing, and also stores n.
  * smooth.spline(x,y,*) now computes the cv.crit statistic
    correctly, also when is.unsorted(x), fixing PR#18294.
  * The data.frame method of rbind() now warns when binding
    not-wholly-recycling vectors, by analogy to the default method
    (for matrices).
  * setAs() finds the correct class for name to when multiple
    packages define a class with that name. Thanks to Gabor Csardi
    for the report.
  * Fix for detaching a package when two classes of the same name are
    present in method signatures for the same generic. Thanks to
    Gabor Csardi for the report.
  * match.arg("", c("", "a", "B")) gives a better error message, in
    part from PR#17959, thanks to Elin Waring.
  * R CMD Sweave --clean no longer removes pre-existing files or
    subdirectories (PR#18242).
  * The quartz() device no longer splits polylines into subpaths.
    That has caused narrowly-spaced lines with many points to always
    look solid even when dashed line type was used due to dash phase
    restarts.
  * Deparsing constructs such as quote(1 + `!`(2) + 3) works again as
    before R 3.5.0, thanks to the report and patch in PR#18284 by
    Suharto Anggono.
  * as.list(f) for a factor f now keeps names(f), fixing PR#18309.
  * qbeta(.001, .9, .009) and analogous qf() calls now return a
    correct value instead of NaN or wrongly 1, all with a warning;
    thanks to the report by Ludger Goeminne in PR#18302.
  * plot.lm() failed to produce the plot of residuals vs.  factor
    levels (i.e., which=5 when leverages are constant) for models
    with character predictors (PR#17840).
  * interaction.plot(..., xtick = TRUE) misplaced the x-axis line
    (PR#18305).
  * Not strictly fixing a bug, format()ing and print()ing of
    non-finite Date and POSIXt values NaN and +/-Inf no longer show
    as NA but the respective string, e.g., Inf, for consistency with
    numeric vector's behaviour, fulfilling the wish of PR#18308.
  * R CMD check no longer runs test scripts generated from
    corresponding .Rin files twice and now signals an ERROR if
    processing an .Rin script fails.
  * tools::Rd2txt() used for plain-text help pages now renders \hrefs
    (if tools::Rd2txt_options(showURLs = TRUE)) and \urls with
    percent-encoding and standards-compliant delimiting style (angle
    brackets and no URL: prefix).  \email is now rendered with a
    mailto: prefix.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1655985600">- CHANGES IN R 4.2.1:
  NEW FEATURES:
  * New function utils::findCRANmirror() to find out if a CRAN mirror
    has been selected, otherwise fallback to the main site.  This
    behaves in the same way as tools::CRAN_package_db() and is
    intended for packages wishing to access CRAN for purposes other
    than installing packages.
    The need for this was shown by a day when the main CRAN website
    was offline and a dozen or so packages which had its URL
    hardcoded failed their checks.
  INSTALLATION on a UNIX-ALIKE:
  * The libraries searched for by --with-blas (without a value) now
    include BLIS (after OpenBLAS but before ATLAS).  And on macOS,
    the Accelerate framework (after ATLAS).  (This is patterned after
    the AX_BLAS macro from the Autoconf Archive.)
  * The included LAPACK sources have been updated to 3.10.1.
  UTILITIES:
  * The (full path to) the command tidy to be used for HTML
    validation can be set by environment variable R_TIDYCMD.
  * Setting environment variable _R_CHECK_RD_VALIDATE_RD2HTML_ to a
    false value will override R CMD check --as-cran and turn off HTML
    validation.  This provides a way to circumvent a problematic
    tidy.
    The 2006 version that ships with macOS is always skipped.
  C-LEVEL FACILITIES:
  * The undocumented legacy declarations of Sint, Sfloat, SINT_MAX
    and SINT_MIN in header R.h are deprecated.
  BUG FIXES:
  * fisher.test(d) no longer segfaults for "large" d; fixing PR#18336
    by preventing/detecting an integer overflow reliably.
  * tar(., files=*) now produces correctly the warning about invalid
    uid or gid of files, fixing PR#18344, reported by Martin Morgan.
  * tk_choose.files() with multi = FALSE misbehaved on paths
    containing spaces (PR#18334) (regression introduced in R 4.0.0).
  * sort(x, partial = ind, *) now works correctly notably for the
    non-default na.last = FALSE or TRUE, fixing PR#18335 reported by
    James Edwards.
  * Environment variable _R_CHECK_XREFS_REPOSITORIES_ is only used
    for checking .Rd cross-references in R CMD check (as documented)
    and not for other uses looking for a CRAN mirror.
  * The search for a CRAN mirror when checking packages now uses
    getOption("repos") if that specifies a CRAN mirror, even when it
    does not also specify all three Bioconductor repositories (as was
    previously required).
  * The HTML code generated by tools::Rd2HTML() has been improved to
    pass tidy 5.8.0.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1667217600">- CHANGES IN R 4.2.2:
  NEW FEATURES:
  * tools::Rdiff(useDiff = TRUE) checks for the presence of an
    external diff command and switches to useDiff = FALSE if none is
    found.  This allows R CMD Rdiff to always work.
  * On Windows, environment variable R_LIBCURL_SSL_REVOKE_BEST_EFFORT
    can be used to switch to only 'best-effort' SSL certificate
    revocation checks with the default "libcurl" download method.
    This reduces security, but may be needed for downloads to work
    with MITM proxies (PR#18379).
  * (macOS) The run-time check for libraries from XQuartz for X11 and
    Tcl/Tk no longer uses otool from the Apple Developer Tools
    (PR#18400).
  * The LaTeX style for producing the PDF manuals, Rd.sty, now loads
    the standard amsmath, amsfonts and amssymb packages for greater
    coverage of math commands in the Rd \eqn and \deqn macros.  The
    \mathscr LaTeX command is also provided (via the mathrsfs
    package, if available, or the amsfonts bundle otherwise),
    fulfilling the wish of PR#18398.
  * (Windows) The default format of readClipboard() and
    writeClipboard() has been changed to 13 (CF_UNICODETEXT).
  INSTALLATION on a UNIX-ALIKE:
  * The PDF manuals (if built) can be compacted by the new target
    make compact-pdf (at the top level or in directory doc/manual).
  * There is now configure support for LLVM clang 15 on Linux, which
    defaults to position-independent (PIE) executables whereas
    gfortran does not.
  * Many small changes to ease compilation (and suppress warnings)
    with LLVM clang 15.
  BUG FIXES:
  * Rscript -e would fail if stdin were closed (Reported by Henrik
    Bengtsson.)
  * qt(*, log.p=TRUE) in outer tails no longer produces NaN in its
    final steps, thus fixing PR#18360.
  * tools::Rd2latex() now escapes hashes and ampersands when writing
    URLs, fixing LaTeX errors with such URLs in \tabular.
  * When isGeneric(f, fdef=*) is used with mismatching names, the
    warning is better understandable; reported (with fix) in PR#18370
    by Gabe Becker.
  * poly(x, n) now works again (and is now documented) when x is a
    "Date" or "POSIXct" object, or of another class while fulfilling
    mode(x) == "numeric".  This also enables poly(x, *, raw=TRUE) for
    such variables.  Reported by Michael Chirico to R-devel.
  * write.table(), write.csv() and write.csv2() restore their
    numerical precision (internal equivalent of digits = 15) after an
    interrupt (PR#18384).
  * One can now read also byte FF from a clipboard connection
    (PR#18385).
  * source("") and source(character()) now give more helpful error
    messages.
  * R CMD check --as-cran set _R_CHECK_TIMINGS_ too late to have the
    intended effect.
  * as.POSIXlt(x) now also works with very large dates x, fixing
    PR#18401 reported by Hannes M"uhleisen.
  * Files can now be extracted even from very large zip archives
    (PR#18390, thanks to Martin Jakt).
  * Non-finite objects of class "POSIXlt" are now correctly coerced
    to classes "Date" and "POSIXct"; following up on the extension to
    format() them correctly.
  * Added methods for is.finite(), is.infinite() and is.nan() for
    "POSIXlt" date-time objects.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1678881600">- CHANGES IN R 4.2.3:
  C-LEVEL FACILITIES:
  * The definition of DL_FUNC in R_ext/Rdynload.h has been changed to
    be fully C-compliant.  This means that functions loaded _via_ for
    example R_GetCCallable need to be cast to an appropriate type if
    they have any arguments.
  * .Machine has a new element sizeof.time_t to identify old systems
    with a 32-bit type and hence a limited range of date-times (and
    limited support for dates millions of years from present).
  PACKAGE INSTALLATION:
  * (Windows) The default C++ standard had accidentally been left at
    C++11 when it was changed to C++14 on Unix.
  BUG FIXES:
  * As "POSIXlt" objects may be "partially filled" and their list
    components meant to be recycled, length() now is the length of
    the longest component.
  * as.POSIXlt.Date() could underflow for dates in the far past (more
    than half a million years BCE).
  * as.Date.POSIXlt(x) would return "1970-01-01" instead of NA in R
    4.2.2, e.g., for
    x &lt;- as.POSIXlt(c("2019-01-30","2001-1-1"))
    x$mon &lt;- c(0L, NA); as.Date(x)
  * R CMD check failed to apply enabled _R_CHECK_SUGGESTS_ONLY_ to
    examples and vignettes (regression in R 4.2.0).
  * R CMD check did not re-build vignettes in separate processes by
    default (regression in R 4.2.0).
  * Running examples from HTML documentation now restores previous
    knitr settings and options (PR#18420).
  * Quartz: fonts are now located using Core Graphics API instead of
    deprecated ATS which is no longer supported in the macOS 13 SDK
    (PR#18426).  This also addresses an issue where the currently
    used font in the Quartz device context was not correctly
    retained.
  * (Windows) Math symbols in text drawing functions are again
    rendered correctly (PR#18440).  This fixes a regression in R
    4.2.1 caused by a fix in PR#18382 which uncovered an issue in
    GraphApp due to which the symbol charset was not used with TT
    Symbol font face.
  * (Windows) Installing a package with a src/Makefile.{win,ucrt}
    file includes ~/.R/Makevars.win64 in the search for user
    makevars, as documented in "R Installation and Administration"
    and done for packages with a src/Makevars.{win,ucrt} file.
  * format(&lt;POSIXlt_w/_unbalanced_sec&gt;, "....%OS&lt;n&gt;") with n &gt; 0 no
    longer accidentally uses the unbalanced seconds, thanks to
    Suharto Anggono's report (including patch) in PR#18448.
  * solve.default(a, b) works around issues with some versions of
    LAPACK when a contains NA or NaN values.
  * When UseMethod() cannot dispatch, it no longer segfaults
    producing the error message in case of a long class(), thanks to
    Joris Vankerschaver's report (including patch) in PR#18447.
  * When example(foo, ..) produces graphics on an interactive device
    it needs to open itself, it now leaves devAskNewPage() unchanged
    even when it was FALSE, thus fixing a 14 years old '&lt;FIXME&gt;'.
  * packageDescription() again catches errors from encoding
    conversions. This also fixes broken packageVersion() in C locale
    on systems where iconv does not support transliteration.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1681128000">- add patch to build with libcurl &gt;= 8</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1682078400">- CHANGES IN R 4.3.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Calling &amp;&amp; or || with LHS or (if evaluated) RHS of length greater
    than one is now always an error, with a report of the form
    'length = 4' in coercion to 'logical(1)'
    Environment variable _R_CHECK_LENGTH_1_LOGIC2_ no longer has any
    effect.
  NEW FEATURES:
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.10.1.  (This caused some platform-dependent
    changes to package check output.)  And then to the sources from
    LAPACK version 3.11.0 (with changes only to double complex
    subroutines).
  * The included LAPACK sources have been updated to include the four
    Fortran 90 routines rather than their Fortran 77 predecessors.
    This may give some different signs in SVDs or
    eigendecompositions..  (This completes the transition to LAPACK
    3.10.x begun in R 4.2.0.)
  * The LAPACK sources have been updated to version 3.11.0.  (No new
    subroutines have been added, so this almost entirely bug fixes:
    Those fixes do affect some computations with NaNs, including R's
    NA.)
  * The parser now signals _classed_ errors, notably in case of the
    pipe operator |&gt;.  The error object and message now give line and
    column numbers, mostly as proposed and provided by Duncan Murdoch
    in PR#18328.
  * toeplitz() is now generalized for asymmetric cases, with a
    toeplitz2() variant.
  * xy.coords() and xyz.coords() and consequently, e.g., plot(x,y,
    log = "y") now signal a _classed_ warning about negative values
    of y (where log(.) is NA).  Such a warning can be specifically
    suppressed or caught otherwise.
  * Regular expression functions now check more thoroughly whether
    their inputs are valid strings (in their encoding, e.g. in
    UTF-8).
  * The performance of grep(), sub(), gsub() and strsplit() has been
    improved, particularly with perl = TRUE and fixed = TRUE.  Use of
    useBytes = TRUE for performance reasons should no longer be
    needed and is discouraged: it may lead to incorrect results.
  * apropos() gains an argument dot_internals which is used by the
    completion (help(rcompgen)) engine to also see base internals
    such as .POSIXct().
  * Support in tools::Rdiff() for comparing uncompressed PDF files is
    further reduced - see its help page.
  * qqplot(x, y, ...) gains conf.level and conf.args arguments for
    computing and plotting a confidence band for the treatment
    function transforming the distribution of x into the distribution
    of y (Switzer, 1976, _Biometrika_). Contributed by Torsten
    Hothorn.
  * Performance of package_dependencies() has been improved for cases
    when the number of dependencies is large.
  * Strings newly created by gsub(), sub() and strsplit(), when any
    of the inputs is marked as "bytes", are also marked as "bytes".
    This reduces the risk of creating invalid strings and accidental
    substitution of bytes deemed invalid.
  * Support for readLines(encoding = "bytes") has been added to allow
    processing special text files byte-by-byte, without creating
    invalid strings.
  * iconv(from = "") now takes into account any declared encoding of
    the input elements and uses it in preference to the native
    encoding.  This reduces the risk of accidental creation of
    invalid strings, particularly when different elements of the
    input have different encoding (including "bytes").
  * Package repositories in getOption("repos") are now initialized
    from the repositories file when utils is loaded (if not already
    set, e.g., in .Rprofile).  (From a report and patch proposal by
    Gabriel Becker in PR#18405.)
  * compactPDF() gets a verbose option.
  * type.convert() and hence read.table() get new option tryLogical =
    TRUE with back compatible default.  When set to false, converts
    "F" or "T" columns to character.
  * Added new unit prefixes "R" and "Q" for abbreviating
    (unrealistically large) sizes beyond 10^{27} in standard = "SI",
    thanks to Henrik Bengtsson's PR#18435.
  * as.data.frame()'s default method now also works fine with atomic
    objects inheriting from classes such as "roman", "octmode" and
    "hexmode", such fulfilling the wish of PR#18421, by Benjamin
    Feakins.
  * The as.data.frame.vector() utility now errors for wrong-length
    row.names.  It warned for almost six years, with "Will be an
    error!".
  * sessionInfo() now also contains La_version() and reports codepage
    and timezone when relevant, in both print() and toLatex() methods
    which also get new option tzone for displaying timezone
    information when locale = FALSE.
  * New function R_compiled_by() reports the C and Fortran compilers
    used to build R, if known.
  * predict(&lt;lm&gt;, newdata = *) no longer unnecessarily creates an
    offset of all 0s.
  * solve() for complex inputs now uses argument tol and by default
    checks for 'computational singularity' (as it long has done for
    numeric inputs).
  * predict(&lt;rank-deficient lm&gt;, newdata=*) now obeys a new argument
    rankdeficient, with new default "warnif", warning only if there
    are non-estimable cases in newdata.  Other options include
    rankdeficient = "NA", predicting NA for non-estimable newdata
    cases.  This addresses PR#15072 by Russ Lenth and is based on his
    original proposal and discussions in PR#16158 also by David Firth
    and Elin Waring.  Still somewhat experimental.
  * Rgui console implementation now works better with the NVDA screen
    reader when the full blinking cursor is selected.  The underlying
    improvements in cursor handling may help also other screen
    readers on Windows.
  * The drop-field control in GraphApp can now be left with the TAB
    key and all controls can be navigated in the reverse order using
    the Shift+TAB key, improving accessibility of the Rgui
    configuration editor.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now fully accurate
    (instead of to "only" minimally five digits).
  * demo(error.catching) now also shows off withWarnings() and
    tryCatchWEMs().
  * As an experimental feature the placeholder _ can now also be used
    in the rhs of a forward pipe |&gt; expression as the first argument
    in an extraction call, such as _$coef. More generally, it can be
    used as the head of a chain of extractions, such as _$coef[[2]].
  * Spaces in the environment variable used to choose the R session's
    temporary directory (TMPDIR, TMP and TEMP are tried in turn) are
    now fatal.  (On Windows the 'short path' version of the path is
    tried and used if that does not contain a space.)
  * all.equal.numeric() gets a new optional switch giveErr to return
    the numeric error as attribute.  Relatedly,
    stopifnot(all.equal&lt;some&gt;(a, b, ..)) is as "smart" now, as
    stopifnot(all.equal(....)) has been already, thus allowing
    customized all.equal&lt;Some&gt;() wrappers.
  * R on Windows is now able to work with path names longer than 260
    characters when these are enabled in the system (requires at
    least Windows 10 version 1607).  Packages should be updated to
    work with long paths as well, instead of assuming PATH_MAX to be
    the maximum length.  Custom front-ends and applications embedding
    R need to update their manifests if they wish to allow this
    feature.  See
    &lt;https://blog.r-project.org/2023/03/07/path-length-limit-on-windows&gt;
    for more information.
  * 'Object not found' and 'Missing argument' errors now give a more
    accurate error context. Patch provided by Lionel Henry in
    PR#18241.
  * The @ operator is now an S3 generic. Based on contributions by
    Tomasz Kalinowski in PR#18482.
  * New generic chooseOpsMethod() provides a mechanism for objects to
    resolve cases where two suitable methods are found for an Ops
    Group Generic. This supports experimenting with alternative
    object systems. Based on contributions by Tomasz Kalinowski in
    PR#18484.
  * inherits(x, what) now accepts values other than a simple
    character vector for argument what. A new generic, nameOfClass(),
    is called to resolve the class name from what. This supports
    experimenting with alternative object systems. Based on
    contributions by Tomasz Kalinowski in PR#18485.
  * Detection of BLAS/LAPACK in use (sessionInfo()) with FlexiBLAS
    now reports the current backend.
  * The "data.frame" method for subset() now warns about extraneous
    arguments, typically catching the use of = instead of == in the
    subset expression.
  * Calling a:b when numeric a or b is longer than one may now be
    made into an error by setting environment variable
    _R_CHECK_LENGTH_COLON_ to a true value, along the proposal in
    PR#18419 by Henrik Bengtsson.
  * density(x, weights = *) now warns if automatic bandwidth
    selection happens without using weights; new optional warnWbw may
    suppress the warning.  Prompted by Christoph Dalitz' PR#18490 and
    its discussants.
  * rm(list = *) is faster and more readable thanks to Kevin Ushey's
    PR#18492.
  * The plot.lm() function no longer produces a normal Q-Q plot for
    GLMs. Instead it plots a half-normal Q-Q plot of the absolute
    value of the standardized deviance residuals.
  * The print() method for class "summary.glm" no longer shows
    summary statistics for the deviance residuals by default.  Its
    optional argument show.residuals can be used to show them if
    required.
  * The tapply() function now accepts a data frame as its X argument,
    and allows INDEX to be a formula in that case. by.data.frame()
    similarly allows INDICES to be a formula.
  * The performance of df[j] &lt;- value (including for missing j) and
    write.table(df) has been improved for data frames df with a large
    number of columns.  (Thanks to Gabriel Becker's PR#18500,
    PR#18503 and discussants, prompted by a report from Toby Dylan
    Hocking on the R-devel mailing list.)
  * The matrix multiply operator %*% is now an S3 generic, belonging
    to new group generic matrixOps.  From Tomasz Kalinowski's
    contribution in PR#18483.
  * New function array2DF() to convert arrays to data frames,
    particularly useful for the list arrays created by tapply().
  DATES and TIMES:
  * On platforms where (non-UTC) datetimes before 1902 (or before
    1900 as with system functions on recent macOS) are guessed by
    extrapolating time zones from 1902-2037, there is a warning at
    the first use of extrapolation in a session.  (As all time zones
    post 2037 are extrapolation, we do not warn on those.)
  * (Platforms using --with-internal-tzone, including Windows and by
    default macOS). How years are printed in dates or date-times can
    be controlled by environment variable R_PAD_YEARS_BY_ZERO.  The
    default remains to pad to 4 digits by zeroes, but setting value
    no gives no padding (as used by default by glibc).
  * strftime() tries harder to determine the offset for the "%z"
    format, and succeeds on the mainstream R platforms.
  * strftime() has a limit of 2048 bytes on the string produced -
    attempting to exceed this is an error.  (Previously it silently
    truncated at 255 bytes.)
  * sessionInfo() records (and by default prints) the system time
    zone as part of the locale information.  Also, the source
    (system/internal) of the date-time conversion and printing
    functions.
  * Objects of class "POSIXlt" created in this version of R always
    have 11 components: component zone is always set, and component
    gmtoff is set for times in UTC and usually set on the (almost
    all) platforms which have C-level support, otherwise is NA.
  * There are comprehensive validity checks on the structure of
    objects of class "POSIXlt" when converting (including formatting
    and printing).  (This avoids mis-conversions of hand-crafted
    objects.)
  * There is some support for using the native date-time routines on
    macOS: this is only viable on recent versions (e.g. 12.6 and 13)
    and does get wrong some historical changes (before 1900, during
    WWII).  Use of --with-internal-tzone remains the default.
  * as.POSIXct(&lt;numeric&gt;) and as.POSIXlt(.) (without specifying
    origin) now work.  So does as.Date(&lt;numeric&gt;).
  * as.Date.POSIXct(., tz) now treats several tz values, notably
    "GMT" as equivalent to "UTC", proposed and improved by Michael
    Chirico and Joshua Ulrich in PR#17674.
  * Experimental balancePOSIXlt() utility allows using "ragged" and
    or out-of-range "POSIXlt" objects more correctly, e.g., in
    subsetting and subassignments.  Such objects are now documented.
    More experimentally, a "POSIXlt" object may have an attribute
    "balanced" indicating if it is known to be filled or fully
    balanced.
  * Functions axis.Date() and axis.POSIXct() are rewritten to gain
    better default tick locations and better default formats by using
    prettyDate(). Thanks to Swetlana Herbrandt.
  * The mapping of Windows' names for time zones to IANA's 'Olson'
    names has been updated.  When ICU is available (it is by
    default), it is used to get a mapping for the current region set
    in Windows.  This can be overridden by setting environment
    variable TZ to the desired Olson name - see OlsonNames() for
    those currently available.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 16
    and so packages that provide graphics devices should be
    reinstalled.
  * The grDevices and grid packages have new functions for rendering
    typeset glyphs, primarily: grDevices::glyphInfo() and
    grid::grid.glyph().
    Rendering of typeset glyphs is only supported so far on the
    Cairo-based graphics devices and on the pdf() and quartz()
    devices.
  * The defined behaviour for "clear" and "source" compositing
    operators (via grid::grid.group()) has been changed (to align
    better with simple interpretation of original Porter-Duff
    definitions).
  * Support for gradients, patterns, clipping paths, masks, groups,
    compositing operators, and affine transformations has been added
    to the quartz() device.
  INSTALLATION on a UNIX-ALIKE:
  * A system installation of generic LAPACK 3.10.0 or later will be
    preferred to the version in the R sources.
    configure option --with-lapack=no (equivalently --without-lapack)
    forces compilation of the internal LAPACK sources.
    If --with-lapack is not specified, a system liblapack is looked
    for and used if it reports version 3.10.0 or later and does not
    contain BLAS routines.
    Packages using LAPACK will need to be reinstalled if this changes
    to using an external library.
  * On aarch64 Linux platforms using GCC, configure now defaults to
  - fPIC (instead of -fpic), as desired in PR#18326.
  * configure now checks conversion of datetimes between POSIXlt and
    POSIXct around year 2020.  Failure (which has been seen on
    platforms missing tzdata) is fatal.
  * If configure option --with-valgrind-instrumentation is given
    value 1 or 2, option --with-system-valgrind-headers is now the
    default and ignored (with a warning).  It is highly recommended
    that the system headers are installed alongside valgrind: they
    are part of its packaging on some Linux distributions and
    packaged separately (e.g. in the valgrind-devel RPM) on others.
    configure will give a warning if they are not found.
    The system headers will be required in a future release of R to
    build with valgrind instrumentation.
  * libcurl 8.x is now accepted by configure: despite a change in
    major version number it changes neither API nor ABI.
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools43, an update of the Rtools42 toolchain.  It is
    based on gcc 12 and newer versions of MinGW-W64, binutils and
    libraries.  At this time R-devel can still be built using
    Rtools42 without changes, but when R-devel is installed via the
    installer, it will by default look for Rtools43.
  * Old make targets rsync-extsoft and 32-bit ones that are no longer
    needed have been removed.
  * Default builds (including for packages) no longer select C99.
    Thus the C standard used is the default for the compiler, which
    for the toolchain in Rtools43 is C17.  (This is consistent with
    Unix builds.)
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++17 where
    available (which it is on all currently checked platforms): if
    not C++14 or C++11 is used if available otherwise C++ is not
    supported.
  * USE_FC_LEN_T is the default: this uses the correct
    (compiler-dependent) prototypes for Fortran BLAS/LAPACK routines
    called from C/C++, and requires adjustment of many such calls -
    see 'Writing R Extensions' SS6.6.1.
  * There is initial support for C++23 as several compilers are now
    supporting -std=c++23 or -std=c++2b or similar.  As for C++20,
    there no additional configure checks for C++23 features beyond a
    check that the compiler reports a __cplusplus value greater than
    that in the C++20 standard.  C++ feature tests should be used.
  * There is support for a package to indicate the version of the C
    standard which should be used to compile it, and for the
    installing user to specify this.  In most cases R defaults to the
    C compiler's default standard which is C17 (a `bug-fix' of C11) -
    earlier versions of R or compilers may have defaulted to C99.
    Current options are:
    USE_C17 Use a standard that is at most C17.  The intention is to
    allow legacy packages to still be installed when later C
    standards become the default, including packages using new
    keywords as identifiers or with K&amp;R-style function
    declarations.  This will use C17 if available, falling back
    to C11.
    USE_C90 Use the C90 (aka C89) standard.  (As that standard did
    not require compilers to identify that version, all we can
    verify is that the compiler does not claim to be using a
    later standard.  It may accept C99 features - for example
    clang accepts // to make comments.)
    USE_C99 Use the C99 standard. This should be rarely needed - it
    avoids the few new features of C11/C17 which can be useful if
    a package assumes them if C17 is specified and they are not
    implemented.
    USE_C23 Use C23 (or in future, later).  Compiler/library support
    for C23 is still being implemented, but LLVM clang from
    15.0.0 and the upcoming GCC 13 have quite extensive support.
    These can be specified as part of the SystemRequirements field in
    the package's DESCRIPTION file or _via_ options --use-C17 and so
    on of R CMD INSTALL and R CMD SHLIB.
    For further details see "Writing R Extensions" SS1.2.5.
  * (Windows) A src/Makefile.ucrt or src/Makefile.win file is now
    included after R_HOME/etcR_ARCH/Makeconf and so no longer needs
    to include that file itself.  Installation of a package with such
    a file now uses a site Makevars file in the same way as a package
    with a src/Makevars.win file would.
  * configure is now passed crucial variables such as CC and CFLAGS
    in its environment, as many packages were not setting them (as
    documented in 'Writing R Extensions' SS1.2).
    This has most effect where configure is used to compile parts of
    the package - most often by cmake or libtool which obfuscate the
    actual compile commands used.
    Also used for configure.win and configure.ucrt on Windows.
  FORTRAN FLAGS:
  * The flag -fno-optimize-sibling-calls is no longer forced for
    gfortran 7 and later.  It should no longer be needed now using
    'hidden' character-length arguments when calling BLAS/LAPACK
    routines from C/C++ is the default even for packages.  (Unless
    perhaps packages call Fortran code from C/C++ without using R's
    headers and without allowing for these arguments.)
  C-LEVEL FACILITIES:
  * The deprecated S-compatibility macros DOUBLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * The deprecated legacy typedefs of Sint and Sfloat in header R.h
    are no longer defined, and that header no longer includes header
    limits.h from C nor climits from C++.
  * New macro CAD5R() is provided in Rinternals.h and used in a few
    places in the R sources.
  * ALTREP now supports VECSXP vectors. Contributed by Gabor Csardi
    in PR#17620.
  * The Rcomplex definition (in header R_ext/Complex.h) has been
    extended to prevent possible mis-compilation when interfacing
    with Fortran (PR#18430).  The new definition causes compiler
    warnings with static initializers such as {1, 2}, which can be
    changed to {.r=1, .i=2}.
    Using the new definition from C++ depends on compiler extensions
    supporting C features that have not been incorporated into the
    C++ standards but are available in g++ and clang++: this may
    result in C++ compiler warnings but these have been worked around
    for recent versions of common compilers (GCC, Apple/LLVM clang,
    Intel).
    It is intended to change the inclusion of header R_ext/Complex.h
    by other R headers, so C/C++ code files which make use of
    Rcomplex should include that header explicitly.
  UTILITIES:
  * R CMD check does more checking of package .Rd files, warning
    about invalid email addresses and (some) invalid URIs and noting
    empty \item labels in description lists.
  * R CMD check now also reports problems when reading package news
    in md (file NEWS.md) and (optionally) plain text (file NEWS)
    formats.
  * _R_CHECK_TIMINGS_ defaults to a value from the environment even
    for R CMD check --as-cran; this allows for exceptionally fast or
    slow platforms.
    It now applies to checking PDF and HTML versions of the manuals,
    and 'checking CRAN incoming feasibility'.
  * R CMD check can optionally (but included in --as-cran) check
    whether HTML math rendering _via_ KaTeX works for the package .Rd
    files.
  * Non-interactive debugger invocations can be trapped by setting
    the environment variable _R_CHECK_BROWSER_NONINTERACTIVE_ to a
    true value.  This is enabled by R CMD check --as-cran to detect
    the use of leftover browser() statements in the package.
  * The use of sprintf and vsprintf from C/C++ has been deprecated in
    macOS 13 and is a known security risk.  R CMD check now reports
    (on all platforms) if their use is found in compiled code:
    replace by snprintf or vsnprintf respectively. [*NB:* whether
    such calls get compiled into the package is platform-dependent.]
  * Where recorded at installation, R CMD check reports the C and
    Fortran compilers used to build R.
    It reports the OS in use (if known, as given by osVersion) as
    well as that R was built for.
    It notes if a C++ standard was specified which is older than the
    current default: many packages have used C++11 to mean 'not
    C++98' - as C++11 is the minimum supported since R 4.0.0, that
    specification can probably be removed.
  * R CMD INSTALL reports the compilers (and on macOS, the SDK) used,
    and this is copied to the output of R CMD check.
    Where a C++ standard is specified, it is reported.
  * R CMD check's 'checking compilation flags in Makevars' has been
    relaxed to accept the use of flags such as -std=f2008 in
    PKG_FFLAGS.
  * tools::buildVignettes() has a new argument skip, which is used by
    R CMD check to skip (and note) vignettes with unavailable
    \VignetteDepends (PR#18318).
  * New generic .AtNames() added to enable class-specific completions
    after @. The formerly internal function findMatches() is now
    exported, mainly for use in methods for .DollarNames() and
    .AtNames().
  DEPRECATED AND DEFUNCT:
  * default.stringsAsFactors() is defunct.
  * Calling as.data.frame.&lt;class&gt;() directly (for 12 atomic classes)
    is going to be formally deprecated, currently activated by
    setting the environment variable
    _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ to non-empty, which also
    happens in R CMD check --as-cran.
  BUG FIXES:
  * Hashed environments with sizes less than 5 can now grow.
    (Reported to R-devel by Duncan Garmonsway.)
  * as.character(&lt;Rd&gt;, deparse = TRUE) failed to re-escape curly
    braces in LaTeX-like text.  (Reported by Hadley Wickham in
    PR#18324.)
  * library() now passes its lib.loc argument when requiring Depends
    packages; reported (with fix) in PR#18331 by Mikael Jagan.
  * R CMD Stangle: improved message about 'Output' files.
  * head(x, n) and tail(x, n) now signal an error if n is not
    numeric, instead of incidentally "working" sometimes returning
    all of x.  Reported and discussed by Colin Fay, in PR#18357.
  * The "lm" method for summary() now gives the correct F-statistic
    when the model contains an offset.  Reported in PR#18008.
  * C() and `contrasts&lt;-`() now preserve factor level names when
    given a function object (as opposed a function name which did
    preserve names). Reported in PR#17616.
  * c(a = 1, 2)[[]] no longer matches 2 but rather signals a
    _classed_ error.  Reported and analysed by Davis Vaughan in
    PR#18367, a duplicate of PR#18004, by Jan Meis et al.  For
    consistency, NULL[[]] is also erroneous now.  x[[]] &lt;- v gives an
    error of the same class "MissingSubscriptError".
  * The relist() function of utils now supports NULL elements in the
    skeleton (PR#15854).
  * ordered(levels = *) (missing x) now works analogously to factor(,
    ordered=TRUE); reported (with fix) by Achim Zeileis in PR#18389.
  * User-defined Rd macro definitions can now span multiple lines,
    thanks to a patch from Duncan Murdoch. Previously, the Rd parser
    silently ignored everything after the first line.
  * Plain-text help (tools::Rd2txt()) now preserves an initial blank
    line for text following description list items.
  * tools::Rd2HTML() and tools::Rd2latex() no longer split \arguments
    and \value lists at Rd comments.
  * tools::Rd2latex() now correctly handles optional text outside
    \items of argument lists as well as bracketed text at the
    beginning of sections, e.g., \value{[NULL]}.
  * as.character(&lt;POSIXt&gt;) now behaves more in line with the methods
    for atomic vectors such as numbers, and is no longer influenced
    by options().  Ditto for as.character(&lt;Date&gt;).  The
    as.character() method gets arguments digits and OutDec with
    defaults _not_ depending on options().  Use of as.character(*,
    format = .) now warns.
  * Similarly, the as.character.hexmode() and *.octmode() methods
    also behave as good citizen methods and back compatibility option
    keepStr = TRUE.
  * The as.POSIXlt(&lt;POSIXlt&gt;) and as.POSIXct(&lt;POSIXct&gt;) default
    methods now do obey their tz argument, also in this case.
  * as.POSIXlt(&lt;Date&gt;) now does apply a tz (time zone) argument, as
    does as.POSIXct(); partly suggested by Roland Fuss on the R-devel
    mailing list.
  * as.Date.POSIXlt(x) now also works when the list components are of
    unequal length, aka "partially filled" or "ragged".
  * expand.model.frame() looked up variables in the wrong environment
    when applied to models fitted without data.  Reported in
    PR#18414.
  * time() now (also) uses the ts.eps = getOption("ts.eps") argument
    and thus by default rounds values very close to the start (or
    end) of a year.  Based on a proposal by Andre"i V. Kostyrka on
    R-help.
  * Printing of a factanal() result with just one factor and sort =
    TRUE now works regularly, fixing PR#17863 by Timothy Bates,
    thanks to the 'R Contributors' working group.
  * Printing 0-length objects of class "factor", "roman", "hexmode",
    "octmode", "person", "bibentry", or "citation" now prints
    something better, one of which fixes PR#18422, reported by
    Benjamin Feakins.
  * Sys.timezone() queries timedatectl only if systemd is loaded;
    addressing a report by Jan Gorecki in PR#17421.
  * The formula method of cor.test() had scoping problems when
    environment(formula) was not the calling environment; reported
    with a patch proposal by Mao Kobayashi in PR#18439.
  * attach() of an environment with active bindings now preserves the
    active bindings.  Reported by Kevin Ushey in PR#18425.
  * BLAS detection now works also with system-provided libraries not
    available as regular files.  This fixes detection of the
    Accelerate framework on macOS since Big Sur.  Reported by David
    Novgorodsky.
  * download.file() gives a helpful error message in case of an
    invalid download.file.method option, thanks to Colin Fay's report
    in PR#18455.
  * Sporadic crashes of Rterm when using completion have been fixed.
  * Rprof() is now more reliable.  A livelock in thread
    initialization with too short sampling interval has been fixed on
    macOS.  A deadlock in using the C runtime has been fixed on
    Windows.  A potential deadlock has been prevented on Unix.
  * Cursor placement in Rgui now works even after a fixed-width font
    is selected.
  * Mandatory options (options()) are now set on startup so that
    saving and restoring them always works (PR#18372).
  * Package installation, R CMD INSTALL or install.packages(*), now
    parses each of the &lt;pkg&gt;/R/*.R files individually instead of
    first concatenating and then parse()ing the large resulting file.
    This allows parser or syntax errors to be diagnosed with correct
    file names and line numbers, thanks to Simon Dedman's report and
    Bill Dunlap's patch in PR#17859.
    This _does_ require syntactically self contained R source files
    now, fixing another inadvertent bug.
  * predict.lm(&lt;model with offset&gt;) now finds the offset in the
    correct environment, thanks to Andr'e Gillibert's report and patch
    in PR#18456.
  * getInitial(&lt;formula&gt;) now finds the selfStart model in the
    correct environment.  (Reported by Ivan Krylov in PR#18368.)
  * Fix for possible segfault when using recently-added graphics
    features, such as gradients, clipping paths, masks, and groups
    with pdf(file=NULL).
  * class(m) &lt;- class(m) no longer changes a matrix m by adding a
    class _attribute_.
  * packageDate(pkg) now only warns once if there is no pkg.
  * When ts() creates a multivariate time series, "mts", it also
    inherits from "array" now, and is.mts() is documented _and_
    stricter.
  * Rd2txt() now preserves line breaks of \verb Rd content and from
    duplicated \cr.  The former also fixes the rendering of verbatim
    output from Rd \Sexpr in plain-text help.
  * uniroot(f, interval) should no longer wrongly converge _outside_
    the interval in some cases where abs(f(x)) == Inf for an x at the
    interval boundary, thanks to posts by Ben Bolker and Serguei
    Sokol on R-devel.
  * Vectorized alpha handling in palette functions such as in gray(),
    rainbow(), or hcl.colors() works correctly now, thanks to Achim
    Zeileis' report and patch in PR#18476.
  * Formatting and print()ing of bibentry objects has dropped the
    deprecated citation.bibtex.max argument, such that the bibtex
    argument's default for print.bibentry() depends directly on the
    citation.bibtex.max option, whereas in format.bibentry() the
    option no longer applies.
  * Attempting to use a character string naming a foreign function
    entry point in a foreign function call in a package will now
    signal an error if the packages has called R_forceSymbols to
    specify that symbols must be used.
  * An error in table() could permanently set options(warn=2)
    promoting all subsequent warnings to errors.
  * The sigma() function gave misleading results for binary GLMs.  A
    new method for objects of class "glm" returns the square root of
    the estimate of the dispersion parameter using the same
    calculation as summary.glm().
  * bs() and ns() in the (typical) case of automatic knot
    construction, when some of the supposedly inner knots coincide
    with boundary knots, now moves them inside (with a warning),
    building on PR#18442 by Ben Bolker.
  * R CMD on Windows now skips the site profile with --no-site-file
    and --vanilla even when R_PROFILE is set (PR#18512, from Kevin
    Ushey).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1686916800">- CHANGES IN R 4.3.1:
  C-LEVEL FACILITIES:
  * The C-level API version of R's integrate(), Rdqags() in Applic.h,
    now returns the correct number of integrand evaluations neval,
    fixing PR#18515 reported and diagnosed by Stephen Wade.
  * The C prototypes for LAPACK calls dspgv and dtptrs in
    R_exts/Lapack.h had one too many and one too few character length
    arguments - but this has not caused any known issues. To get the
    corrected prototypes, include
    [#]include &lt;Rconfig.h&gt; // for PR18534fixed
    [#]ifdef PR18534fixed
    [#] define usePR18534fix 1
    [#]endif
    [#]include &lt;R_exts/Lapack.h&gt;
    in your C/C++ code (PR#18534).
  INSTALLATION:
  * Many of the checks of esoteric Internet operations and those
    using unreliable external sites have been moved to a new target
    that is not run by default and primarily intended for the core
    developers.  To run them use
    cd tests; make test-Internet-dev
  BUG FIXES:
  * .S3methods(), typically called from methods(), again marks
    methods from package base as visible.
    Also, the visibility of non-base methods is again determined by
    the method's presence in search().
  * tools::Rdiff() is now more robust against invalid strings, fixing
    installation tests on Windows without Rtools installed
    (PR#18530).
  * Fix (new) bug in hcl.colors(2, *), by Achim Zeileis (PR#18523).
  * head(., &lt;illegal&gt;) and tail(..) now produce more useful "Error in
    ...." error messages, fixing PR#18362.
  * Package code syntax on Windows is checked in UTF-8 when UTF-8 is
    the native encoding.
  * na.contiguous(x) now also returns the first run, when it is at
    the beginning and there is a later one of the same length;
    reported to R-devel, including a fix, by Georgi Boshnakov.
    Further, by default, it modifies only an existing attr(*,"tsp")
    but otherwise no longer sets one.
  * chol(&lt;not pos.def&gt;, pivot = &lt;T|F&gt;) now gives a correct error or
    warning message (depending on pivot), thanks to Mikael Jagan's
    (PR#18541).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1699012800">- CHANGES IN R 4.3.2:
  NEW FEATURES:
  * The default initialization of the "repos" option from the
    repositories file at startup can be skipped by setting
    environment variable R_REPOSITORIES to NULL such that
    getOption("repos") is empty if not set elsewhere.
  * qr.X() is now an implicit S4 generic in methods.
  * iconv(to = "ASCII//TRANSLIT") is emulated using substitution on
    platforms which do not support it (notably Alpine Linux).  This
    should give a human-readable conversion in ASCII on all platforms
    (rather than NA_character_).
  * trans3d() gains options continuous and verbose addressing the
    problem of possible "wrap around" when projecting too long
    curves, as reported by Achim Zeileis in PR#18537.
  * tools::showNonASCII() has been rewritten to work better on macOS
    14 (which has a changed implementation of iconv()).
  * tiff(type = "quartz") (the default on macOS) now warns if
    compression is specified: it continues to be ignored.
  INSTALLATION on a UNIX-ALIKE:
  * There is some support for building with Intel's LLVM-based
    compilers on x86_64 Linux, such as (C) icx, (C++) ipcx and
    (Fortran) ifx from oneAPI 2023.x.y.
  * There is support for using LLVM's flang-new as the Fortran
    compiler from LLVM 16.0.x (preferably 17.0.0 or later).
  UTILITIES:
  * R CMD check reports the use of the Fortran 90 random number
    generator RANDOM_NUMBER() and the subroutines to initialize it.
    'Writing R Extensions' has example code to use R's RNGs from
    Fortran.
  BUG FIXES:
  * substr(x, n, L) &lt;- cc now works (more) correctly for multibyte
    UTF-8 strings x when L &gt; nchar(x), thanks to a report and patch
    by 'Architect 95'.
  * contrib.url(character()) now returns 0-length character() as
    documented, which also avoids spurious warnings from
    available.packages() et al. in the edge case of an empty vector
    of repository URLs.
  * readChar(., 4e8) no longer fails, thanks to Kodi Arfer's report
    (PR#18557).
  * lapply(&lt;list&gt;, as.data.frame) no longer warns falsely for some
    base vector components.
  * Communication between parent and child processes in the multicore
    part of parallel could fail on platforms that do not support an
    arbitrarily large payload in system functions read()/write() on
    pipes (seen on macOS where a restriction to INT_MAX bytes is
    documented, without doing a partial read unlike Linux). The
    payload is now split into 1Gb chunks to avoid that problem.
    (PR#18571)
  * qqplot(x,y, conf.level=.) gives better confidence bounds when
    length(x) != length(y), thanks to Alexander Ploner's report and
    patch proposal (PR#18557).
  * norm(&lt;0-length&gt;, "2") now gives zero instead of an error, as all
    the other norm types, thanks to Mikael Jagan's PR#18542.
  * Build-stage Rd macros \packageAuthor and \packageMaintainer now
    process Authors@R, fixing NA results when the package DESCRIPTION
    omits Author and Maintainer fields.
  * Formatting and printing complex numbers could give things like
    0.1683-0i because of rounding error: -0i is now replaced by +0i.
  * postscript() refused to accept a title comment containing the
    letter "W" (PR#18599).
  * isoreg(c(1,Inf)) signals an error instead of segfaulting, fixing
    PR#18603.
  * tiff(type = "Xlib") was only outputting the last page of
    multi-page plots.
  * tools::latexToUtf8() again knows about \~{n} and other letters
    with tilde, fixing a regression in R 4.3.0, and about \^{i} as an
    alternative to \^{\i} (similarly with other accents).
    Furthermore, LaTeX codes for accented I letters are now correctly
    converted, also fixing related mistakes in
    tools::encoded_text_to_latex().
  * tar(*, tar = "internal") no longer creates out-of-spec tar files
    in the very rare case of user or group names longer than 32
    bytes, fixing PR#17871 with thanks to Ivan Krylov.
  * When using the "internal" timezone datetime code, adding a
    fraction of a second no longer adds one second, fixing PR#16856
    from a patch by Ivan Krylov.
  * tools::checkRd() no longer produces spurious notes about
    "unnecessary braces" from multi-line Rd results of \Sexpr macros.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1709208000">- CHANGES IN R 4.3.3:
  NEW FEATURES:
  * iconv() now fixes up variant encoding names such as "utf8"
    case-insensitively.
  DEPRECATED AND DEFUNCT:
  * The legacy encoding = "MacRoman" is deprecated in pdf() and
    postscript(): support was incomplete in earlier versions of R.
  BUG FIXES:
  * Arguments are now properly forwarded to methods on S4 generics
    with ... in the middle of their formal arguments. This was broken
    for the case when a method introduced an argument but did not
    include ... in its own formals. Thanks to Herv'e Pag`es for the
    report PR#18538.
  * Some invalid file arguments to pictex(), postscript() and xfig()
    opened a file called NA rather than throw an error.  These
    included postscript(NULL) (which some people expected to work
    like pdf(NULL)).
  * Passing filename = NA to svg(), cairo_pdf(), cairo_ps() or the
    Cairo-based bitmap devices opened a file called NA: it now throws
    an error.
  * quartz(file = NA) opened a file called NA, including when used as
    a Quartz-based bitmap device.  It now gives an error.
  * rank(&lt;long vector&gt;) now works, fixing PR#18617, thanks to Ilia
    Kats.
  * seq.int() did not adequately check its length.out argument.
  * match(&lt;POSIXct&gt;, .) is correct again for differing time zones,
    ditto for "POSIXlt", fixing PR#18618 reported by Bastian Klein.
  * drop.terms(*, dropx = &lt;0-length&gt;) now works, fixing PR#18563 as
    proposed by Mikael Jagan.
  * drop.terms(*) keeps + offset(.) terms when it should, PR#18565,
    and drop.terms() no longer makes up a response, PR#18566, fixing
    both bugs thanks to Mikael Jagan.
  * getS3method("t", "test") no longer finds the t.test() function,
    fixing PR#18627.
  * pdf() and postscript() support for the documented Adobe encodings
    "Greek" and "Cyrilllic" was missing (although the corresponding
    Windows' codepages could be used).
  * Computations of glyph metric information for pdf() and
    postscript() did not take into account that transliteration could
    replace one character by two or more (only seen on macOS 14) and
    typically warned that the information was not known.
  * rank(x) no longer overflows during integer addition, when
    computing rank average for largish but not-yet long vector x,
    fixing PR#18630, thanks to Ilia Kats.
  * list.files() on Windows now returns also files with names longer
    that 260 bytes (the Windows limit is 260 characters).
    Previously, some file names particularly with 'East Asian'
    characters were omitted.
  * cov2cor(&lt;0 x 0&gt;) now works, fixing PR#18423 thanks to Mikael
    Jagan and Elin Waring.
  * cov2cor(&lt;negative diagonal&gt;) and similar now give one warning
    instead of two, with better wording, fixing PR#18424 thanks to
    Mikael Jagan.
  * tools:: startDynamicHelp() now ensures port is in proper range,
    fixing PR#18645.
  * pbeta(x, a,b) is correct now for x=0 or 1 in the boundary cases
    where a or b or both are 0, fixing PR#18672 thanks to Michael
    Fay.
  * pmatch(x, table) for large table, also called for data frame row
    selection, dfrm[nm, ], is now interruptible, fixing PR#18656.
  * predict(&lt;rank-deficient lm&gt;, newdata=*) fix computing of nbasis,
    see Russ Lenth's comment 29 in PR#16158.
  * Added a work-around for a bug in macOS 14.3.1 and higher which
    prevents R plots in the Quartz Cocoa device from updating on
    screen.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1713960000">- CHANGES IN R 4.4.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Startup banners, R --version, sessionInfo() and R CMD check no
    longer report (64-bit) as part of the platform as this is almost
    universal - the increasingly rare 32-bit platforms will still
    report (32-bit).
    On Windows, ditto for window titles.
  * is.atomic(NULL) now returns FALSE, as NULL is not an atomic
    vector.  Strict back-compatibility would replace is.atomic(foo)
    by (is.null(foo) || is.atomic(foo)) but should happen only
    sparingly.
  NEW FEATURES:
  * The confint() methods for "glm" and "nls" objects have been
    copied to the stats package.  Previously, they were stubs which
    called versions in package MASS. The MASS namespace is no longer
    loaded if you invoke (say) confint(glmfit).  Further, the "glm"
    method for profile() and the plot() and pairs() methods for class
    "profile" have been copied from MASS to stats.  (profile.nls()
    and plot.profile.nls() were already in stats.)
  * The confint() and profile methods for "glm" objects have gained a
    possibility to do profiling based on the Rao Score statistic in
    addition to the default Likelihood Ratio. This is controlled by a
    new test = argument.
  * The pairs() method for "profile" objects has been extended with a
    which = argument to allow plotting only a subset of the
    parameters.
  * The "glm" method for anova() computes test statistics and
    p-values by default, using a chi-squared test or an F test
    depending on whether the dispersion is fixed or free.  Test
    statistics can be suppressed by giving argument test a false
    logical value.
  * In setRepositories() the repositories can be set using their
    names via name = instead of index ind =.
  * methods() and .S3methods() gain a all.names option for the (rare)
    case where functions starting with a . should be included.
  * Serializations can now be interrupted (e.g., by Ctrl-C on a
    Unix-alike) if they take too long, e.g., from save.image(),
    thanks to suggestions by Ivan Krylov and others on R-devel.
  * New startup option --max-connections to set the maximum number of
    simultaneous connections for the session.  Defaults to 128 as
    before: allowed values up to 4096 (but resource limits may in
    practice restrict to smaller values).
  * R on Windows (since Windows 10 2004) now uses the new Segment
    Heap allocator. This may improve performance of some
    memory-intensive applications.
  * When R packages are built, typically by R CMD build &lt;pkg&gt;, the
    new --user=&lt;build_user&gt; option overrides the (internally
    determined) user name, currently Sys.info()["user"] or LOGNAME.
    This is a (modified) fulfillment of Will Landau's suggestion in
    PR#17530.
  * tools::testInstalledBasic() gets new optional arguments outDir
    and testSrcdir, e.g., allowing to use it in a &lt;builddir&gt; !=
    &lt;srcdir&gt; setup, and in standard "binary" Windows installation
  * if* a source tests/ folder is present.
  * range(&lt;DT_with_Inf&gt;, finite = TRUE) now work for objects of class
    "Date", "POSIXct", and "POSIXlt" with infinite entries,
    analogously to range.default(), as proposed by Davis Vaughan on
    R-devel.  Other range()-methods can make use of new function
    .rangeNum().
  * New .internalGenerics object complementing .S3PrimitiveGenerics,
    for documentation and low-level book-keeping.
  * grid() now invisibly returns the x- and y- coordinates at which
    the grid-lines were drawn.
  * norm(., type) now also works for complex matrices.
  * kappa(., exact = TRUE, norm = *) now works for all norms and also
    for complex matrices.  In symmetric / triangular cases, the new
    argument uplo = "U" | "L" allows the upper or lower triangular
    part to be specified.
  * memDecompress(type = "unknown") recognizes compression in the
    default 'zlib' format as used by memCompress(type = "gzip").
  * memCompress() and memDecompress() will use the libdeflate library
    (&lt;https://github.com/ebiggers/libdeflate&gt;) if installed.  This
    uses the same type of compression for type = "gzip" but is 1.5-2x
    faster than the system libz library on some common platforms: the
    speed-up may depend on the library version.
  * diff() for objects of class "Date", "POSIXct", and "POSIXlt"
    accepts a units argument passed via ....
  * Dynamic help now does a much better job of rendering package
    DESCRIPTION metadata.
  * Rprof() gains an event argument and support for elapsed (real)
    time profiling on Unix (PR#18076).
  * filled.contour() gains a key.border argument.
  * tools::update_pkg_po() gets arguments pot_make and mo_make for
    _not_ re-making the corresponding files, and additionally a
    verbose argument.
  * Hexadecimal string colour specifications are now accepted in
    short form, so, for example, we can use "#123", which is
    equivalent to "#112233".
    Thanks to MikeFC for the original idea and Ella Kaye, Malcolm
    Barrett, George Stagg, and Hanne Oberman for the patch.
  * Plain-text help shows \var markup by angle brackets.
  * The new experimental primitive function declare() is intended to
    eventually allow information about R code to be communicated to
    the interpreter, compiler, and code analysis tools. The syntax
    for declarations is still being developed.
  * Functions psmirnov(), qsmirnov() and rsmirnov() in package stats
    have had argument two.sided renamed to alternative, to take into
    account that the permutation distributions of the one-sided
    statistics can be different in the case of ties.  Consequence of
    PR#18582.
  * sort() is now an implicit S4 generic in methods.
  * Formatting and printing, format(z), print(z), of complex vectors
    z no longer zap relatively small real or imaginary parts to zero,
    fixing PR#16752.  This is an API change, as it was documented
    previously to round real and imaginary parts together on purpose,
    producing nicer looking output.  As mentioned, e.g. in the PR,
    this change is compatible with many other "R-like" programming
    environments.
    We have simplified the internal code and now basically format the
    real and imaginary parts independently of each other.
  * New experimental functions Tailcall() and Exec() to support
    writing stack-space-efficient recursive functions.
  * Where characters are attempted to be plotted by pdf(),
    postscript() and xfig() which are not in the selected 8-bit
    character set (most often Latin-1) and the R session is using a
    UTF-8 locale, the warning messages will show the UTF-8 character
    rather than its bytes and one dot will be substituted per
    character rather than per byte.  (Platforms whose iconv() does
    transliteration silently plot the transliteration.)
    In a UTF-8 locale some transliterations are now done with a
    warning (e.g., dashes and Unicode minus to hyphen, ligatures are
    expanded, permille (‰) is replaced by o/oo), although the OS may
    have got there first.  These are warnings as they will continue
    to be replaced by dots in earlier versions of R.
  * The matrix multiplication functions crossprod() and tcrossprod()
    are now also primitive and S3 generic, as %*% had become in R
    4.3.0.
  * source() and example() have a new optional argument catch.aborts
    which allows continued evaluation of the R code after an error.
  * The non-Quartz tiff() devices allow additional types of
    compression if supported by the platform's libtiff library.
  * The list of base and recommended package names is now provided by
    tools::standard_package_names().
  * cairo_pdf() and cairo_ps() default to onefile = TRUE to closer
    match pdf() and postscript().
  * New option catch.script.errors provides a documented way to catch
    errors and then continue in non-interactive use.
  * L %||% R newly in base is an expressive idiom for the phrases
    if(!is.null(L)) L else R or if(is.null(L)) R else L.
  * The return value from warnings() now always inherits from
    "warnings" as documented, now also in the case of no warnings
    where it previously returned NULL.
  * as.complex("1i") now returns 0 + 1i instead of NA with a warning.
  * z &lt;- c(NA, 1i) now keeps the imaginary part Im(z[1]) == 0, no
    longer coercing to NA_complex_.  Similarly, cumsum(z) correctly
    sums real and imaginary parts separately, i.e., without
    "crosstalk" in case of NAs.
  * On Alpine Linux iconv() now maps "latin2", "latin-2", "latin9"
    and "latin-9" to encoding names the OS knows about
    (case-insensitively).
  * iconv(sub = "Unicode") now always zero-pads to four (hex) digits,
    rather than to 4 or 8.  (This seems to have become the convention
    once Unicode restricted the number of Unicode points to 2^21 - 1
    and so will never need more than 6 digits.)
  * NCOL(NULL) now returns 0 instead of 1, for consistency with
    cbind().
  * The information for the Euro glyph missing from the Adobe .afm
    files for the Courier, Helvetica and Times families has been
    copied from their URW equivalents - this will improve vertical
    centring in the pdf() and postscript() devices.
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.12.0.  The changes are almost entirely cosmetic.
  * The included LAPACK sources have been updated to version 3.12.0
    and some further double-complex routines added.
  * There are new font families for the 2014--5 URW 2.0 fonts (see
    ?pdf) which are included in recent versions of Ghostscript.
    These have font widths for most Greek glyphs and a few others
    which were missing from the original versions (whose font
    families remain available for reproducibility, although
    Ghostscript-based viewers will render using the 2.0 versions).
  * Improve the large-n efficiency of as.matrix(&lt;dist&gt;), thanks an R
    contributors effort, notably by Tim Taylor and Heather Turner,
    see PR#18660.
  * The default and numeric methods of all.equal() get a check.class
    option.
  * zapsmall() gets new optional arguments, function mFUN and min.d,
    for extra flexibility; fulfills a wish in PR#18199.  Also, it is
    now an implicit S4 generic in package methods.
  * The Rd filter for aspell() gains an ignore argument.
  * New generic function sort_by(), primarily useful for the
    data.frame method which can be used to sort rows of a data frame
    by one or more columns.
  * The icence headers for the RPC code in src/extra/xdr have been
    updated to use the GPL-compatible licence published by Oracle
    America in 2010.
  * New function pkg2HTML() in tools to create single-page HTML
    reference manuals for R packages.
  * The byte code evaluator now uses less C stack space for recursive
    calls to byte-compiled functions. It also makes more of an effort
    to avoid allocations for scalar return values.
  * New completion option backtick (disabled by default) allows
    non-syntactic completions to be wrapped in backquotes. This is
    currently only useful for Jupyter notebooks via the IRkernel
    package, and may cause problems for other backends.
  INSTALLATION:
  * The parser has been updated to work with bison 3.8.2, which is
    now used for the pre-generated parsers in gram.c, file.c, and
    gramRd.c. A few parser error messages have changed, which may
    affect code that relies on exact messages.
  INSTALLATION on a UNIX-ALIKE:
  * System valgrind headers are now required to use configure option
  - -with-valgrind-instrumentation with value 1 or 2.
  * configure will warn if it encounters a 32-bit build, as that is
    nowadays almost untested.
  * Environment variable R_SYSTEM_ABI is no longer used and so no
    longer recorded in etc/Renviron (it was not on Windows and was
    only ever used when preparing package tools).
  * If the libdeflate library and headers are available, libdeflate
    rather than libz is used to (de)compress R objects in lazy-load
    databases.  Typically tasks spend up to 5% of their time on such
    operations, although creating lazy-data databases is one of the
    exceptions.
    This can be suppressed if the library is available by the
    configure option --without-libdeflate-compression.
  * configure option --enable-lto=check has not worked reliably since
    2019 and has been removed.
  * The minimum autoconf requirement for a maintainer build has been
    increased to autoconf 2.71.
    It is intended to increase this to 2.72 for R 4.5.0: the
    distributed configure file was generated using 2.72.
  * The minimum version requirement for an external LAPACK has been
    reduced to 3.9.0.
  * No default C++ compiler is set if no C++17 compiler is detected:
    there is no longer an automatic fallback to C++14 or C++11.
    Compilers from the last five years should have sufficient
    support: for others macros CXX and CXXSTD can be set in file
    config.site to provide a fallback if needed.
    The Objective-C++ compiler now by default uses the standard
    selected by R for C++ (currently C++17) rather than the default
    standard for the C++ compiler (which on macOS is still C++98).
  INSTALLATION on macOS:
  * A new configure option --with-newAccelerate makes use of Apple's
    'new' BLAS / LAPACK interfaces in their Accelerate framework.
    Those interfaces are only available in macOS 13.3 or later, and
    building requires SDK 13.3 or later (from the Command Line Tools
    or Xcode 14.3 or later).
    By default the option uses new Accelerate for BLAS calls: to also
    use it for LAPACK use option --with-newAccelerate=lapack.  The
    later interfaces provide LAPACK 3.9.1 rather than 3.2.1: 3.9.1 is
    from 2021-04 and does not include the improved algorithms
    introduced in LAPACK 3.10.0 (including for BLAS calls).
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools44, an update of the Rtools43 toolchain.  It is
    based on GCC 13 and newer versions of MinGW-W64, binutils and
    libraries (targeting 64-bit Intel CPUs).  R-devel can no longer
    be built using Rtools43 without changes.
  * Rtools44 has experimental support for 64-bit ARM (aarch64) CPUs
    _via_ the LLVM 17 toolchain using lld, clang/flang-new and
    libc++.
  UTILITIES:
  * R CMD check notes when S4-style exports are used without
    declaring a strong dependence on package methods.
  * tools::checkRd() (used by R CMD check) detects more problems with
    \Sexpr-based dynamic content, including bad nesting of \Sexprs
    and invalid arguments.
  * tools::checkRd() now reports Rd titles and section names ending
    in a period; this is ignored by R CMD check unless environment
    variable _R_CHECK_RD_CHECKRD_MINLEVEL_ is set to -5 or smaller.
  * R CMD check now notes Rd files without an \alias, as long
    documented in 'Writing R Extensions' §1.3.1.  The check for a
    missing \description has been moved from tools::checkRd() to
    tools::checkRdContents().
  * R CMD check now visits inst/NEWS.Rd and OS-specific man
    subdirectories when checking Rd files.
  * tools::checkDocFiles() and tools::checkRdContents() now also
    check internal Rd files by default, but "specially" (ignoring
    missing documentation of arguments).
  * R CMD Rdiff gets option --useEx.
  * R CMD check now warns on non-portable uses of Fortran KIND such
    as INTEGER(KIND=4) and REAL(KIND=8).
    To see the failing lines set environment variable
    _R_CHECK_FORTRAN_KIND_DETAILS_ to a true value.
  * When checking Rd files, R CMD check now notes some of the "lost
    braces" that tools::checkRd() finds.  Typical problems are Rd
    macros missing the initial backslash (e.g., code{...}), in-text
    set notation (e.g., {1, 2}, where the braces need escaping), and
    \itemize lists with \describe-style entries of the form
    \item{label}{description}.
  * R CMD INSTALL (and hence check) will compile C++ code with
  - DR_NO_REMAP if environment variable _R_CXX_USE_NO_REMAP_ is set
    to a true value.  It is planned that this will in future become
    the default for compiling C++.
  * The new built-in Rd macro \dontdiff{} can be used to mark example
    code whose output should be ignored when comparing check output
    to reference output (tests/Examples/&lt;pkg&gt;-Ex.Rout.save).  The
    \dontdiff tag, like \donttest, is _not_ shown on the rendered
    help page, so provides a clean alternative to ##
    IGNORE_RDIFF_(BEGIN|END) comments.
  * R CMD build when there is no NAMESPACE, now uses the recommended
    exportPattern("^[^.]"), instead of exporting everything.
  * R CMD check now warns about non-ASCII characters in the NAMESPACE
    file (in addition to R files). Such packages are not portable and
    may fail to install on some platforms.
  C-LEVEL FACILITIES:
  * Headers R_ext/Applic.h and R-ext/Linpack.h used to include
    R_ext/BLAS.h although this was undocumented and unneeded by their
    documented entry points.  They no longer do so.
  * New function R_missing(), factored out from do_missing(), used to
    fix PR#18579.
  * SEXP type S4SXP has been renamed to OBJSXP to support
    experimenting with alternative object systems.  The S4SXP value
    can still be used in C code but is now deprecated.  Based on
    contributions from the R Consortium's Object-Oriented Programming
    Working Group.
  * New function pow1p(x,y) for accurate (1+x)^y.
  * mkCharLenCE was incorrectly documented to take a size_t length
    but was implemented with int (and character strings in R are
    limited to 2^31 - 1 bytes).
  DEPRECATED AND DEFUNCT:
  * data() no longer handles zipped data from long-defunct (since R
    2.13.0) --use-zip-data installations.
  * The legacy graphics devices pictex() and xfig() are now
    deprecated.  They do not support recent graphics enhancements and
    their font handling is rudimentary. The intention is to retain
    them for historical interest as long as they remain somewhat
    functional.
  * Support for encoding = "MacRoman" has been removed from the pdf()
    and postscript() devices - this was a legacy encoding supporting
    classic macOS up to 2001 and no longer has universal libiconv
    support.
  * is.R() is deprecated as no other S dialect is known to be in use
    (and this could only identify historical dialects, not future
    ones).
    Further information on calls can be obtained by setting the
    environment variable _R_DEPRECATED_IS_R_ to error which turns the
    deprecation warning into an error and so by default gives a
    traceback.  (This is done by R CMD check --as-cran.)
  * UseMethod() no longer forwards local variables assigned in the
    generic function into method call environments before evaluating
    the method body. This makes method calls behave more like
    standard function calls and makes method code easier to analyze
    correctly.
  * The twelve as.data.frame.&lt;class&gt;() methods which were deprecated
    only via _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ and in R CMD
    check --as-cran are formally deprecated now in favour of calling
    as.data.frame() or as.data.frame.vector().  The deprecation
    "check" now works also when as.data.frame() is S4 generic thanks
    to Ivan Krylov.
  * The default method for the directional comparison operators &lt;, &gt;,
    &lt;=, and &gt;= now signals an error when one of the operands is a
    language object, i.e. a symbol or a call.
  * For terms.formula(), deprecate abb and neg.out arguments
    _formally_ in addition to just documenting it.
  BUG FIXES:
  * The methods package is more robust to not being attached to the
    search path.  More work needs to be done.
  * pairwise.t.test() misbehaved when subgroups had 0 DF for
    variance, even with pool.sd = TRUE.  (PR#18594 by Jack Berry).
  * Probability distribution functions [dpq]&lt;distrib&gt;(x, *), but also
    bessel[IKJY](x, .) now consistently preserve attributes(x) when
    length(x) == 0, e.g., for a 2 x 0 matrix, thanks to Karolis
    Koncevičius' report PR#18509.
  * Group "Summary" computations such as sum(1:3, 4, na.rm = 5, NA,
    7, na.rm = LL) now give an error instead of either 17 or NN for
    LL true or false, as proposed by Ivan Krylov on the R-devel
    mailing list.  (This also means it is now an error to specify
    na.rm more than once.)
  * as.complex(x) now returns complex(real = x, imaginary = 0) for
    _all_ numerical and logical x, notably also for NA or
    NA_integer_.
  * Directories are now omitted by file.copy(, recursive = FALSE) and
    in file.append() (PR#17337).
  * gsub() and sub() are now more robust to integer overflow when
    reporting errors caused by too large input strings (PR#18346).
  * Top-level handlers are now more robust to attempts to remove a
    handler whilst handlers are running (PR#18508).
  * The handling of Alt+F4 in dialogs created on Windows using
    GraphApp has been fixed (PR#13870).
  * density() more consistently computes grid values for the
    FFT-based convolution, following Robert Schlicht's analysis and
    proposal in PR#18337, correcting density values typically by a
    factor of about 0.999.  Argument old.coords = TRUE provides back
    compatibility.
  * palette.colors() gains a name argument that defaults to FALSE
    controlling whether the vector of colours that is returned has
    names (where possible).  PR#18529.
  * tools::xgettext() no longer extracts the (non-translatable) class
    names from warningCondition and errorCondition calls.
  * S3method(&lt;gen&gt;, &lt;class&gt;, &lt;func&gt;) in the NAMESPACE file now works
    (again) when &lt;func&gt; is visible from the namespace, e.g.,
    imported, or in base.
  * getParseData(f) now also works for a function defined in the
    first of several &lt;pkg&gt;/R/*.R source files, thanks to Kirill
    Müller's report and Duncan Murdoch's patch in PR#16756.
  * Rd \Sexpr macros with nested #ifdef conditionals were not
    processed.
  * A non-blocking connection with non-default encoding (such as a
    socket) now correctly returns from readLines() after new data has
    arrived also when its EOF had been reached previously.  Thanks to
    Peter Meilstrup's report on R-devel and Ivan Krylov's report and
    patch proposal in PR#18555.
  * tools::checkRdContents() failed to detect empty argument
    descriptions when they spanned multiple lines, including those
    generated by prompt().  These cases are now noted by R CMD check.
  * Plain-text help no longer outputs spurious colons in the
    arguments list (for multi-line \item labels in the Rd source).
  * kappa() and rcond() work correctly in more cases; kappa(., norm =
    "2") now warns that it computes the 1-norm with (default) exact =
    FALSE; prompted by Mikael Jagan's quite comprehensive PR#18543.
  * Rd skeletons generated by prompt() or promptData() now use a
    dummy title (so R CMD build works).  tools::checkRdContents() has
    been updated to detect such template leftovers, including from
    promptPackage().
  * When S4 method dispatch fails because no method was found, the
    error message now includes the signature argument names; thanks
    to Michael Chirico's proposal on the R-devel list.
  * withAutoprint({ .. }) now preserves srcrefs previously lost,
    thanks to Andrew Simmons' report plus fix in PR#18572.
  * transform.data.frame() no longer adjusts names; in particular,
    untransformed variables are kept as-is, including those with
    syntactically invalid names (PR#17890).
  * The keep.source option for Rd \Sexpr blocks is no longer ignored.
  * The formula methods for t.test() and wilcox.test() now catch when
    paired is passed, addressing PR#14359; use Pair(x1, x2) ~ 1 for a
    paired test.
  * The level reported in the browser prompt was often too large. It
    now shows the number of browser contexts on the stack.
  * For cbind() and rbind(), the optional deparse.level argument is
    now properly passed to methods, thanks to Mikael Jagan's PR#18579
    and comments there.
  * Some error and warning messages for large ('long vector')
    matrix(v, nr, nc) and dim(m) &lt;- d are now correct about sizes,
    using long long formatting, fixing PR#18612 (and more) reported
    by Mikael Jagan.
  * readChar(useBytes = TRUE) now terminates strings even when the
    underlying connection uses extra spaces in the input buffer.
    This fixes problems with extra garbage seen with gzip
    connections, PR#18605.
  * Named capture in PCRE regular expressions now works also with
    more than 127 named groups (PR#18588).
  * Datetime functions are now robust against long jumps when dealing
    with internal time zone changes.  This avoids confusing warnings
    about an invalid time zone, previously triggered by turning
    warnings into errors or handling them via tryCatch (PR#17966,
    PR#17780).
  * Datetime functions now restore even an empty TZ environment
    variable after internal time zone changes (PR#17724).  This makes
    results of datetime functions with this (typically unintentional)
    setting more predictable.
  * drop.terms(*) now drops response as by default, keep.response =
    FALSE, fixing PR#18564 thanks to Mikael Jagan.
  * dummy.coef(.) now also works for lm()-models with character
    categorical predictor variables rather than factor ones, fixing
    PR#18635 reported by Jinsong Zhao.
  * formals(f) &lt;- formals(f) now also works for a function w/o
    arguments and atomic _constant_ body(f).
  * Correct as.function(&lt;invalid list&gt;, .)'s error message.
  * removeSource() is yet more thorough in finding and removing
    "srcref" and the other source references from parsed R language
    chunks, fixing PR#18638 thanks to Andrew Simmons.
  * dgeom() is more accurate now, notably when its result is very
    small, fixing PR#18642 thanks to the proposal of Morten Welinder,
    also improving other instances where C level binom_raw(x, n, ..)
    has x == 0 or x== n.
  * warning() with options(warn = 1) has improved output for
    multi-line messages.
  * axis.Date() and axis.POSIXct() now respect the par("lab") setting
    for the number of pretty() intervals.
  * Comparisons for language objects (which are based on deparsing)
    are now more careful about using accurate deparsed results
    (PR#18676).
  * Plain-text help (Rd2txt) now correctly preserves blank lines
    following single-line \dontrun code.
  * &lt;POSIXlt&gt;[*] no longer sets wrong "balanced" attribute, fixing
    PR#18681 thanks to Mikael Jagan.
  * str(&lt;classed-call&gt;) now deparses the call as expected, fixing
    PR#18684, reported by Dave Slager.
  * In Rd examples, code following the closing brace of a \dontrun,
    \dontshow or \donttest tag on the same line is no longer skipped
    when R CMD check runs the examples.
  * as.data.frame(matrix(*, ncol=0)) now gets valid names() and
    colnames(); reported by Davis Vaughan on the R-devel list.
  * Internal Mathlib function stirlerr(n) is now almost fully
    (52-bit) accurate for all n &gt;= ~5.9 and more accurate also in the
    range 1 -- 5.9.  This entails small ("after 12th decimal")
    changes in density functions, e.g., dgamma() in _some_ regions of
    their support.  The fix was partly prompted by Morten Welinder's
    PR#18640.
  * Numbers like 9876543.2 are now considered non-integer by Mathlib
    internal R_nonint(), amending original fix of PR#15734.
  * Rd comment lines no longer cause broken paragraphs in the
    rendered PDF and plain-text help. In code blocks, pure comment
    lines (starting with %) no longer produce an empty line.
  * xtabs(Freq ~ .) now consistently defaults to na.action = na.pass,
    using na.rm = FALSE (added as an argument) when summing over Freq
    (PR#17770).
  * tools::testInstalledPackage() is no longer silent about failures
    from running examples or tests and its return code no longer
    ignores failures from checking vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1718366400">- CHANGES IN R 4.4.1:
  C-LEVEL FACILITIES:
  * Functions R_atof and R_strtod declared in header R_ext/Utils.h
    are now documented in 'Writing R Extensions' and so formally part
    of the API.
  * The non-API entry points Rf_setSVector, Rf_StringFalse,
    Rf_StringTrue and Rf_isBlankString have been added to those
    reported by R CMD check.
  * The new function Rf_allocLang is now available. This provides an
    alternative to the idiom of calling Rf_allocList followed by
    SET_TYPEOF.
  UTILITIES:
  * R CMD check now reports as warnings what gfortran calls 'Fortran
    2018 deleted features', all of which have long been marked as
    'obsolescent' and some of which were deleted in Fortran 2008 or
    earlier.  Fortran compilers are no longer required to support
    these.
  BUG FIXES:
  * as.numeric(), scan(), type.convert() and other places which use
    the internal C function R_strtod now require a _non-empty_ digit
    sequence in a decimal or binary exponent.  This aligns with the
    C/POSIX standard for strtod and with ?NumericConstants.
  * as.data.frame(m, make.names=NA) now works correctly for a matrix
    m with NA's in row names.
  * The error message from &lt;POSIXlt&gt;[["hour"]] and similar now
    mentions *[[, "hour"]], as wished for in PR#17409 and proposed by
    Michael Chirico.
  * qbinom() and potentially qpois(), qnbinom(), no longer sometimes
    fail accurate inversion (of pbinom(), etc), thanks to Christopher
    Chang's report and patch in PR#18711.
  * The internal help server on Windows can again serve requests sent
    in quick succession, fixing a regression in R 4.4.0.
  * debugcall(&lt;S3Generic&gt;()) now also works when a corresponding
    S4-generic version is in the methods cache (PR#18143).
  * Package tools' toTitleCase(ch0) now returns character(0) when ch0
    is of zero length; fixing PR#18724, reported by David Hugh Jones.
  * R CMD check is no longer broken (without a check result and no
    explanation in 00check.log) for a package which declares an
    invalid VignetteBuilder in DESCRIPTION but has no vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1730376000">- CHANGES IN R 4.4.2:
  C-LEVEL FACILITIES:
  * The S-compatibility macros F77_COM and F77_COMDECL defined in
    header R_ext/RS.h are deprecated and will be removed shortly.  We
    could find no record of their use.
  BUG FIXES:
  * Mathlib function lgammacor(x) no longer warns about underflow to
    zero for large x.
  * Text widths and heights were incorrectly reported by the Quartz
    device if the drawing context didn't exist yet (typically when
    drawing off-screen to a window that is yet to appear, see
    PR#18591).
  * The Quartz device could segfault in cases where paths with spaces
    are used in the new glyph drawing API.  Thanks to Tomek
    Gieorgijewski (PR#18758).
  * On macOS in R CRAN builds, it is again possible to read
    little-endian UTF-16 text with a BOM from a connection using
    encoding="UTF-16".  Users building R from source should avoid
    using the system libiconv in macOS 14.1 and later.
  * methods' internal .requirePackage() now re-enables primitive
    method dispatch when needed; thanks to Ivan Krylov for
    demystifying CRAN package check failures on the R-devel mailing
    list.</changelog>
</package>
<package pkgid="ed292a3c61b2830e2de813dbeed6d65ef1fa0bc5b4ceea2d28795dc2715fd01c35c91d5ba655d9ce3374320cfdea8bd05ad540e3bb0af9f1d2523bdc9499e330" name="R-splines" arch="x86_64">
  <version epoch="0" ver="4.4.2" rel="51.0.2.2.sr20241103"/>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1620302400">- To get in sync with d:l:R:autoCRAN the Matrix package's split
  in -devel was reversed.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339200">- improved spec file according to comments of dimstar in
  https://build.opensuse.org/request/show/892685</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339201">- CHANGES IN R 4.1.0:
  FUTURE DIRECTIONS:
  * It is planned that the 4.1.x series will be the last to support
    32-bit Windows, with production of binary packages for that
    series continuing until early 2023.
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Data set esoph in package datasets now provides the correct
    numbers of controls; previously it had the numbers of cases added
    to these.  (Reported by Alexander Fowler in PR#17964.)
  NEW FEATURES:
  * www.omegahat.net is no longer one of the repositories known by
    default to setRepositories().  (Nowadays it only provides source
    packages and is often unavailable.)
  * Function package_dependencies() (in package tools) can now use
    different dependency types for direct and recursive dependencies.
  * The checking of the size of tarball in R CMD check --as-cran
    &lt;pkg&gt; may be tweaked via the new environment variable
    _R_CHECK_CRAN_INCOMING_TARBALL_THRESHOLD_, as suggested in
    PR#17777 by Jan Gorecki.
  * Using c() to combine a factor with other factors now gives a
    factor, an ordered factor when combining ordered factors with
    identical levels.
  * apply() gains a simplify argument to allow disabling of
    simplification of results.
  * The format() method for class "ftable" gets a new option justify.
    (Suggested by Thomas Soeiro.)
  * New ...names() utility.  (Proposed by Neal Fultz in PR#17705.)
  * type.convert() now warns when its as.is argument is not
    specified, as the help file always said it _should_.  In that
    case, the default is changed to TRUE in line with its change in
    read.table() (related to stringsAsFactor) in R 4.0.0.
  * When printing list arrays, classed objects are now shown _via_
    their format() value if this is a short enough character string,
    or by giving the first elements of their class vector and their
    length.
  * capabilities() gets new entry "Rprof" which is TRUE when R has
    been configured with the equivalent of --enable-R-profiling (as
    it is by default).  (Related to Michael Orlitzky's report
    PR#17836.)
  * str(xS4) now also shows extraneous attributes of an S4 object
    xS4.
  * Rudimentary support for vi-style tags in rtags() and R CMD rtags
    has been added.  (Based on a patch from Neal Fultz in PR#17214.)
  * checkRdContents() is now exported from tools; it and also
    checkDocFiles() have a new option chkInternal allowing to check
    Rd files marked with keyword "internal" as well.  The latter can
    be activated for R CMD check via environment variable
    _R_CHECK_RD_INTERNAL_TOO_.
  * New functions numToBits() and numToInts() extend the raw
    conversion utilities to (double precision) numeric.
  * Functions URLencode() and URLdecode() in package utils now work
    on vectors of URIs.  (Based on patch from Bob Rudis submitted
    with PR#17873.)
  * path.expand() can expand ~user on most Unix-alikes even when
    readline is not in use.  It tries harder to expand ~, for example
    should environment variable HOME be unset.
  * For HTML help (both dynamic and static), Rd file links to help
    pages in external packages are now treated as references to
    topics rather than file names, and fall back to a file link only
    if the topic is not found in the target package. The earlier rule
    which prioritized file names over topics can be restored by
    setting the environment variable _R_HELP_LINKS_TO_TOPICS_ to a
    false value.
  * c() now removes NULL arguments before dispatching to methods,
    thus simplifying the implementation of c() methods, _but_ for
    back compatibility keeps NULL when it is the first argument.
    (From a report and patch proposal by Lionel Henry in PR#17900.)
  * Vectorize()'s result function's environment no longer keeps
    unneeded objects.
  * Function ...elt() now propagates visibility consistently with
    ..n.  (Thanks to Lionel Henry's PR#17905.)
  * capture.output() no longer uses non-standard evaluation to
    evaluate its arguments.  This makes evaluation of functions like
    parent.frame() more consistent.  (Thanks to Lionel Henry's
    PR#17907.)
  * packBits(bits, type="double") now works as inverse of
    numToBits().  (Thanks to Bill Dunlap's proposal in PR#17914.)
  * curlGetHeaders() has two new arguments, timeout to specify the
    timeout for that call (overriding getOption("timeout")) and TLS
    to specify the minimum TLS protocol version to be used for
    https:// URIs (_inter alia_ providing a means to check for sites
    using deprecated TLS versions 1.0 and 1.1).
  * For nls(), an optional constant scaleOffset may be added to the
    denominator of the relative offset convergence test for cases
    where the fit of a model is expected to be exact, thanks to a
    proposal by John Nash.  nls(*, trace=TRUE) now also shows the
    convergence criterion.
  * Numeric differentiation _via_ numericDeriv() gets new optional
    arguments eps and central, the latter for taking central divided
    differences.  The latter can be activated for nls() via
    nls.control(nDcentral = TRUE).
  * nls() now passes the trace and control arguments to getInitial(),
    notably for all self-starting models, so these can also be fit in
    zero-noise situations via a scaleOffset.  For this reason, the
    initial function of a selfStart model must now have ... in its
    argument list.
  * bquote(splice = TRUE) can now splice expression vectors with
    attributes: this makes it possible to splice the result of
    parse(keep.source = TRUE).  (Report and patch provided by Lionel
    Henry in PR#17869.)
  * textConnection() gets an optional name argument.
  * get(), exists(), and get0() now signal an error if the first
    argument has length greater than 1.  Previously additional
    elements were silently ignored.  (Suggested by Antoine Fabri on
    R-devel.)
  * R now provides a shorthand notation for creating functions, e.g.
    \(x) x + 1 is parsed as function(x) x + 1.
  * R now provides a simple native forward pipe syntax |&gt;.  The
    simple form of the forward pipe inserts the left-hand side as the
    first argument in the right-hand side call.  The pipe
    implementation as a syntax transformation was motivated by
    suggestions from Jim Hester and Lionel Henry.
  * all.equal(f, g) for functions now by default also compares their
    environment(.)s, notably via new all.equal method for class
    function.  Comparison of nls() fits, e.g., may now need
    all.equal(m1, m2, check.environment = FALSE).
  * .libPaths() gets a new option include.site, allowing to _not_
    include the site library.  (Thanks to Dario Strbenac's suggestion
    and Gabe Becker's PR#18016.)
  * Lithuanian translations are now available.  (Thanks to Rimantas
    Zakauskas.)
  * names() now works for DOTSXP objects.  On the other hand, in
    R-lang, the R language manual, we now warn against relying on the
    structure or even existence of such dot-dot-dot objects.
  * all.equal() no longer gives an error on DOTSXP objects.
  * capabilities("cairo") now applies only to the file-based devices
    as it is now possible (if very unusual) to build R with Cairo
    support for those but not for X11().
  * There is optional support for tracing the progress of
    loadNamespace() - see its help.
  * (Not Windows.)  l10n_info() reports an additional element, the
    name of the encoding as reported by the OS (which may differ from
    the encoding part (if any) of the result from
    Sys.getlocale("LC_CTYPE").
  * New function gregexec() which generalizes regexec() to find _all_
    disjoint matches and well as all substrings corresponding to
    parenthesized subexpressions of the given regular expression.
    (Contributed by Brodie Gaslam.)
  * New function charClass() in package utils to query the
    wide-character classification functions in use (such as
    iswprint).
  * The names of quantile()'s result no longer depend on the global
    getOption("digits"), but quantile() gets a new optional argument
    digits = 7 instead.
  * grep(), sub(), regexp and variants work considerably faster for
    long factors with few levels.  (Thanks to Michael Chirico's
    PR#18063.)
  * Provide grouping of x11() graphics windows within a window
    manager such as Gnome or Unity; thanks to a patch by Ivan Krylov
    posted to R-devel.
  * The split() method for class data.frame now allows the f argument
    to be specified as a formula.
  * sprintf now warns on arguments unused by the format string.
  * New palettes "Rocket" and "Mako" for hcl.colors() (approximating
    palettes of the same name from the 'viridisLite' package).
    Contributed by Achim Zeileis.
  * The base environment and its namespace are now locked (so one can
    no longer add bindings to these or remove from these).
  * Rterm handling of multi-byte characters has been improved,
    allowing use of such characters when supported by the current
    locale.
  * Rterm now accepts ALT+ +xxxxxxxx sequences to enter Unicode
    characters as hex digits.
  * Environment variable LC_ALL on Windows now takes precedence over
    LC_CTYPE and variables for other supported categories, matching
    the POSIX behaviour.
  * duplicated() and anyDuplicated() are now optimized for integer
    and real vectors that are known to be sorted via the ALTREP
    framework. Contributed by Gabriel Becker via PR#17993.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 14
    and so packages that provide graphics devices should be
    reinstalled.
  * Graphics devices should now specify deviceVersion to indicate
    what version of the graphics engine they support.
  * Graphics devices can now specify deviceClip.  If TRUE, the
    graphics engine will never perform any clipping of output itself.
    The clipping that the graphics engine does perform (for both
    canClip = TRUE and canClip = FALSE) has been improved to avoid
    producing unnecessary artifacts in clipped output.
  * The grid package now allows gpar(fill) to be a linearGradient(),
    a radialGradient(), or a pattern().  The viewport(clip) can now
    also be a grob, which defines a clipping path, and there is a new
    viewport(mask) that can also be a grob, which defines a mask.
    These new features are only supported so far on the Cairo-based
    graphics devices and on the pdf() device.
  * (Not Windows.)  A warning is given when a Cairo-based type is
    specified for a png(), jpeg(), tiff() or bmp() device but Cairo
    is unsupported (so type = "Xlib" is tried instead).
  * grSoftVersion() now reports the versions of FreeType and
    FontConfig if they are used directly (not _via_ Pango), as is
    most commonly done on macOS.
  C-LEVEL FACILITIES:
  * The _standalone_ libRmath math library and R's C API now provide
    log1pexp() again as documented, and gain log1mexp().
  INSTALLATION on a UNIX-ALIKE:
  * configure checks for a program pkgconf if program pkg-config is
    not found.  These are now only looked for on the path (like
    almost all other programs) so if needed specify a full path to
    the command in PKG_CONFIG, for example in file config.site.
  * C99 function iswblank is required - it was last seen missing ca
    2003 so the workaround has been removed.
  * There are new configure options --with-internal-iswxxxxx,
  - -with-internal-towlower and --with-internal-wcwidth which allows
    the system functions for wide-character classification,
    case-switching and width (wcwidth and wcswidth) to be replaced by
    internal ones.  The first has long been used on macOS, AIX (and
    Windows) but this enables it to be unselected there and selected
    for other platforms (it is the new default on Solaris).  The
    second is new in this version of R and is selected by default on
    macOS and Solaris.  The third has long been the default and
    remains so as it contains customizations for East Asian
    languages.
    System versions of these functions are often minimally
    implemented (sometimes only for ASCII characters) and may not
    cover the full range of Unicode points: for example Solaris (and
    Windows) only cover the Basic Multilingual Plane.
  * Cairo installations without X11 are more likely to be detected by
    configure, when the file-based Cairo graphics devices will be
    available but not X11(type = "cairo").
  * There is a new configure option --with-static-cairo which is the
    default on macOS.  This should be used when only static cairo
    (and where relevant, Pango) libraries are available.
  * Cairo-based graphics devices on platforms without Pango but with
    FreeType/FontConfig will make use of the latter for font
    selection.
  LINK-TIME OPTIMIZATION on a UNIX-ALIKE:
  * Configuring with flag --enable-lto=R now also uses LTO when
    installing the recommended packages.
  * R CMD INSTALL and R CMD SHLIB have a new flag --use-LTO to use
    LTO when compiling code, for use with R configured with
  - -enable-lto=R.  For R configured with --enable-lto, they have
    the new flag --no-use-LTO.
    Packages can opt in or out of LTO compilation _via_ a UseLTO
    field in the DESCRIPTION file.  (As usual this can be overridden
    by the command-line flags.)
  BUILDING R on Windows:
  * for GCC &gt;= 8, FC_LEN_T is defined in config.h and hence character
    lengths are passed from C to Fortran in _inter alia_ BLAS and
    LAPACK calls.
  * There is a new text file src/gnuwin32/README.compilation, which
    outlines how C/Fortran code compilation is organized and
    documents new features:
  * R can be built with Link-Time Optimization with a suitable
    compiler - doing so with GCC 9.2 showed several
    inconsistencies which have been corrected.
  * There is support for cross-compiling the C and Fortran code
    in R and standard packages on suitable (Linux) platforms.
    This is mainly intended to allow developers to test later
    versions of compilers - for example using GCC 9.2 or 10.x has
    detected issues that GCC 8.3 in Rtools40 does not.
  * There is experimental support for cross-building R packages
    with C, C++ and/or Fortran code.
  * The R installer can now be optionally built to support a single
    architecture (only 64-bit or only 32-bit).
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++14 where
    available (which it is on all currently checked platforms): if
    not (as before) C++11 is used if available otherwise C++ is not
    supported.
    Packages which specify C++11 will still be installed using C++11.
    C++14 compilers may give deprecation warnings, most often for
    std::random_shuffle (deprecated in C++14 and removed in C++17).
    Either specify C++11 (see 'Writing R Extensions') or modernize
    the code and if needed specify C++14.  The latter has been
    supported since R 3.4.0 so the package's DESCRIPTION would need
    to include something like
    Depends: R (&gt;= 3.4)
  PACKAGE INSTALLATION on Windows:
  * R CMD INSTALL and R CMD SHLIB make use of their flag --use-LTO
    when the LTO_OPT make macro is set in file etc/${R_ARCH}/Makeconf
    or in a personal/site Makevars file.  (For details see 'Writing R
    Extensions' SS4.5.)
    This provides a valuable check on code consistency.  It does work
    with GCC 8.3 as in Rtools40, but that does not detect everything
    the CRAN checks with current GCC do.
  PACKAGE INSTALLATION on macOS:
  * The default personal library directory on builds with
  - -enable-aqua (including CRAN builds) now differs by CPU type,
    one of
    ~/Library/R/x86_64/x.y/library
    ~/Library/R/arm64/x.y/library
    This uses the CPU type R (and hence the packages) were built for,
    so when a x86_64 build of R is run under Rosetta emulation on an
    arm64 Mac, the first is used.
  UTILITIES:
  * R CMD check can now scan package functions for bogus return
    statements, which were possibly intended as return() calls (wish
    of PR#17180, patch by Sebastian Meyer). This check can be
    activated via the new environment variable
    _R_CHECK_BOGUS_RETURN_, true for --as-cran.
  * R CMD build omits tarballs and binaries of previous builds from
    the top-level package directory.  (PR#17828, patch by Sebastian
    Meyer.)
  * R CMD check now runs sanity checks on the use of LazyData, for
    example that a data directory is present and that
    LazyDataCompression is not specified without LazyData and has a
    documented value.  For packages with large LazyData databases
    without specifying LazyDataCompression, there is a reference to
    the code given in 'Writing R Extensions' SS1.1.6 to test the
    choice of compression (as in all the CRAN packages tested a
    non-default method was preferred).
  * R CMD build removes LazyData and LazyDataCompression fields from
    the DESCRIPTION file of packages without a data directory.
  ENCODING-RELATED CHANGES:
  * The parser now treats \Unnnnnnnn escapes larger than the upper
    limit for Unicode points (\U10FFFF) as an error as they cannot be
    represented by valid UTF-8.
    Where such escapes are used for outputting non-printable
    (including unassigned) characters, 6 hex digits are used (rather
    than 8 with leading zeros).  For clarity, braces are used, for
    example \U{0effff}.
  * The parser now looks for non-ASCII spaces on Solaris (as
    previously on most other OSes).
  * There are warnings (including from the parser) on the use of
    unpaired surrogate Unicode points such as \uD834.  (These cannot
    be converted to valid UTF-8.)
  * Functions nchar(), tolower(), toupper() and chartr() and those
    using regular expressions have more support for inputs with a
    marked Latin-1 encoding.
  * The character-classification functions used (by default) to
    replace the system iswxxxxx functions on Windows, macOS and AIX
    have been updated to Unicode 13.0.0.
    The character-width tables have been updated to include new
    assignments in Unicode 13.0.0.
  * The code for evaluating default (extended) regular expressions
    now uses the same character-classification functions as the rest
    of R (previously they differed on Windows, macOS and AIX).
  * There is a build-time option to replace the system's
    wide-character wctrans C function by tables shipped with R: use
    configure option --with-internal-towlower or (on Windows)
  - DUSE_RI18N_CASE in CFLAGS when building R.  This may be needed
    to allow tolower() and toupper() to work with Unicode characters
    beyond the Basic Multilingual Plane where not supported by system
    functions (e.g. on Solaris where it is the new default).
  * R is more careful when truncating UTF-8 and other multi-byte
    strings that are too long to be printed, passed to the system or
    libraries or placed into an internal buffer.  Truncation will no
    longer produce incomplete multibyte characters.
  DEPRECATED AND DEFUNCT:
  * Function plclust() from the package stats and
    package.dependencies(), pkgDepends(), getDepList(),
    installFoundDepends(), and vignetteDepends() from package tools
    are defunct.
  * Defunct functions checkNEWS() and readNEWS() from package tools
    and CRAN.packages() from utils have been removed.
  * R CMD config CXXCPP is defunct (it was deprecated in R 3.6.2).
  * parallel::detectCores() drops support for Irix (retired in 2013).
  * The LINPACK argument to chol.default(), chol2inv(),
    solve.default() and svd() has been defunct since R 3.1.0.  It was
    silently ignored up to R 4.0.3 but now gives an error.
  * Subsetting/indexing, such as ddd[*] or ddd$x on a DOTSXP
    (dot-dot-dot) object ddd has been disabled; it worked by accident
    only and was undocumented.
  BUG FIXES:
  * Many more C-level allocations (mainly by malloc and strdup) are
    checked for success with suitable alternative actions.
  * Bug fix for replayPlot(); this was turning off graphics engine
    display list recording if a recorded plot was replayed in the
    same session.  The impact of the bug became visible if resize the
    device after replay OR if attempted another savePlot() after
    replay (empty display list means empty screen on resize or empty
    saved plot).
  * R CMD check etc now warn when a package exports non-existing S4
    classes or methods, also in case of no "methods" presence.
    (Reported by Alex Bertram; reproducible example and patch by
    Sebastian Meyer in PR#16662.)
  * boxplot() now also accepts calls for labels such as ylab, the
    same as plot().  (Reported by Marius Hofert.)
  * The help page for xtabs() now correctly states that addNA is
    setting na.action = na.pass among others.  (Reported as PR#17770
    by Thomas Soeiro.)
  * The R CMD check &lt;pkg&gt; gives a longer and more comprehensible
    message when DESCRIPTION misses dependencies, e.g., in Imports:.
    (Thanks to the contributors of PR#17179.)
  * update.default() now calls the generic update() on the formula to
    work correctly for models with extended formulas.  (As reported
    and suggested by Neal Fultz in PR#17865.)
  * The horizontal position of leaves in a dendrogram is now correct
    also with center = FALSE.  (PR#14938, patch from Sebastian
    Meyer.)
  * all.equal.POSIXt() no longer warns about and subsequently ignores
    inconsistent "tzone" attributes, but describes the difference in
    its return value (PR#17277).  This check can be disabled _via_
    the new argument check.tzone = FALSE as suggested by Sebastian
    Meyer.
  * as.POSIXct() now populates the "tzone" attribute from its tz
    argument when x is a logical vector consisting entirely of NA
    values.
  * x[[2^31]] &lt;- v now works.  (Thanks to the report and patch by
    Suharto Anggono in PR#17330.)
  * In log-scale graphics, axis() ticks and label positions are now
    computed more carefully and symmetrically in their range,
    typically providing _more_ ticks, fulfilling wishes in PR#17936.
    The change really corresponds to an improved axisTicks() (package
    grDevices), potentially influencing grid and lattice, for
    example.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now correct to at
    least five digits where it was catastrophically wrong,
    previously.
  * sum(df) and similar "Summary"- and "Math"-group member functions
    now work for data frames df with logical columns, notably also of
    zero rows.  (Reported to R-devel by Martin "b706".)
  * unsplit() had trouble with tibbles due to unsound use of rep(NA,
    len)-indexing, which should use NA_integer_ (Reported to R-devel
    by Mario Annau.)
  * pnorm(x, log.p = TRUE) underflows to -Inf slightly later.
  * show(&lt;hidden S4 generic&gt;) prints better and without quotes for
    non-hidden S4 generics.
  * read.table() and relatives treated an "NA" column name as missing
    when check.names = FALSE PR#18007.
  * Parsing strings containing UTF-16 surrogate pairs such as
    "\uD834\uDD1E" works better on some (uncommon) platforms.
    sprintf("%X", utf8ToInt("\uD834\uDD1E")) should now give "1D11E"
    on all platforms.
  * identical(x,y) is no longer true for differing DOTSXP objects,
    fixing PR#18032.
  * str() now works correctly for DOTSXP and related exotics, even
    when these are doomed.
    Additionally, it no longer fails for lists with a class and
    "irregular" method definitions such that e.g. lapply(*) will
    necessarily fail, as currently for different igraph objects.
  * Too long lines in environment files (e.g. Renviron) no longer
    crash R. This limit has been increased to 100,000 bytes.
    (PR#18001.)
  * There is a further workaround for FreeType giving incorrect
    italic font faces with cairo-based graphics devices on macOS.
  * add_datalist(*, force = TRUE) (from package tools) now actually
    updates an existing data/datalist file for new content.  (Thanks
    to a report and patch by Sebastian Meyer in PR#18048.)
  * cut.Date() and cut.POSIXt() could produce an empty last interval
    for breaks = "months" or breaks = "years".  (Reported as PR#18053
    by Christopher Carbone.)
  * Detection of the encoding of 'regular' macOS locales such as
    en_US (which is UTF-8) had been broken by a macOS change:
    fortunately these are now rarely used with en_US.UTF-8 being
    preferred.
  * sub() and gsub(pattern, repl, x, *) now keep attributes of x such
    as names() also when pattern is NA (PR#18079).
  * Time differences ("difftime" objects) get a replacement and a
    rep() method to keep "units" consistent.  (Thanks to a report and
    patch by Nicolas Bennett in PR#18066.)
  * The \RdOpts macro, setting defaults for \Sexpr options in an Rd
    file, had been ineffective since R 2.12.0: it now works again.
    (Thanks to a report and patch by Sebastian Meyer in PR#18073.)
  * mclapply and pvec no longer accidentally terminate parallel
    processes started before by mcparallel or related calls in
    package parallel (PR#18078).
  * grep and other functions for evaluating (extended) regular
    expressions handle in Unicode also strings not explicitly flagged
    UTF-8, but flagged native when running in UTF-8 locale.
  * Fixed a crash in fifo implementation on Windows (PR#18031).
  * Binary mode in fifo on Windows is now properly detected from
    argument open (PR#15600, PR#18031).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1622808000">- The line %{__install} -m 755 -d %{_infodir}
  no longer works in TW or Factory.
  But without that line it works everywhere. So this instruction
  was commented out of the spec file.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1628596800">- CHANGES IN R 4.1.1:
  NEW FEATURES:
  * require(pkg, quietly = TRUE) is quieter and in particular does
    not warn if the package is not found.
  DEPRECATED AND DEFUNCT:
  * Use of ftp:// URIs should be regarded as deprecated, with
    on-going support confined to method = "libcurl" and not routinely
    tested.  (Nowadays no major browser supports them.)
  * The non-default method = "internal" is deprecated for http:// and
    ftp:// URIs for both download.file and url.
  * On Windows, method = "wininet" is deprecated for http://,
    https:// and ftp:// URIs for both download.file and url.  (A
    warning is only given for ftp://.)
    For ftp:// URIs the default method is now "libcurl" if available
    (which it is on CRAN builds).
    method = "wininet" remains the default for http:// and https://
    URIs but if libcurl is available, using method = "libcurl" is
    preferred.
  INSTALLATION:
  * make check now works also without a LaTeX installation.  (Thanks
    to Sebastian Meyer's PR#18103.)
  BUG FIXES:
  * make check-devel works again in an R build configured with
  - -without-recommended-packages.
  * qnbinom(p, size, mu) for large size/mu is correct now in a range
    of cases (PR#18095); similarly for the (size, prob)
    parametrization of the negative binomial.  Also qpois() and
    qbinom() are better and or faster for extreme cases.  The
    underlying C code has been modularized and is common to all four
    cases of discrete distributions.
  * gap.axis is now part of the axis() arguments which are passed
    from bxp(), and hence boxplot().  (Thanks to Martin Smith's
    report and suggestions in PR#18109.)
  * .First and .Last can again be set from the site profile.
  * seq.int(from, to, *) and seq.default(..) now work better in large
    range cases where from-to is infinite where the two boundaries
    are finite.
  * all.equal(x,y) now returns TRUE correctly also when several
    entries of abs(x) and abs(y) are close to .Machine$double.xmax,
    the largest finite numeric.
  * model.frame() now clears the object bit when removing the class
    attribute of a value via na.action (PR#18100).
  * charClass() now works with multi-character strings on Windows
    (PR#18104, fixed by Bill Dunlap).
  * encodeString() on Solaris now works again in Latin-1 encoding on
    characters represented differently in UTF-8.  Support for
    surrogate pairs on Solaris has been improved.
  * file.show() on Windows now works with non-ASCII path names
    representable in the current native encoding (PR#18132).
  * Embedded R on Windows can now find R home directory via the
    registry even when installed only for the current user
    (PR#18135).
  * pretty(x) with finite x now returns finite values also in the
    case where the extreme x values are close in size to the maximal
    representable number .Machine$double.xmax.
    Also, it's been tweaked for very small ranges and when a boundary
    is close (or equal) to zero; e.g., pretty(c(0,1e-317)) no longer
    has negative numbers, currently still warning about a very small
    range, and pretty(2^-(1024 - 2^-1/(c(24,10)))) is more accurate.
  * The error message for not finding vignette files when weaving has
    correct file sizes now. (Thanks to Sebastian Meyer's PR#18154.)
  * dnbinom(20, &lt;large&gt;, 1) now correctly gives 0, and similar cases
    are more accurate with underflow precaution.  (Reported by Francisco Vera Alcivar in PR#18072.)</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635163200">- repaired https://bugzilla.suse.com/show_bug.cgi?id=1191380
  (rpmacros now go to rpmmacrodir)
- minor clean-ups in spec file</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635768000">- CHANGES IN R 4.1.2:
  C-LEVEL FACILITIES:
  * The workaround in headers R.h and Rmath.h (using namespace std;)
    for the Oracle Developer Studio compiler is no longer needed now
    C++11 is required so has been removed.  A couple more usages of
    log() (which should have been std::log()) with an int argument
    are reported on Solaris.
  * The undocumented limit of 4095 bytes on messages from the
    S-compatibility macros PROBLEM and MESSAGE is now documented and
    longer messages will be silently truncated rather than
    potentially causing segfaults.
  * If the R_NO_SEGV_HANDLER environment variable is non-empty, the
    signal handler for SEGV/ILL/BUS signals (which offers recovery
    user interface) is not set. This allows more reliable debugging
    of crashes that involve the console.
  DEPRECATED AND DEFUNCT:
  * The legacy S-compatibility macros PROBLEM, MESSAGE, ERROR, WARN,
    WARNING, RECOVER, ... are deprecated and will be hidden in R
    4.2.0. R's native interface of Rf_error and Rf_warning has long
    been preferred.
  BUG FIXES:
  * .mapply(F, dots, .) no longer segfaults when dots is not a list
    and uses match.fun(F) as always documented; reported by Andrew
    Simmons in PR#18164.
  * hist(&lt;Date&gt;, ...) and hist(&lt;POSIXt&gt;, ...)  no longer pass
    arguments for rect() (such as col and density) to axis().
    (Thanks to Sebastian Meyer's PR#18171.)
  * \Sexpr{ch} now preserves Encoding(ch). (Thanks to report and
    patch by Jeroen Ooms in PR#18152.)
  * Setting the RNG to "Marsaglia-Multicarry" e.g., by RNGkind(), now
    warns in more places, thanks to Andr'e Gillibert's report and
    patch in PR#18168.
  * gray(numeric(), alpha=1/2) no longer segfaults, fixing PR#18183,
    reported by Till Krenz.
  * Fixed dnbinom(x, size=&lt;very_small&gt;, .., log=TRUE) regression,
    reported by Martin Morgan.
  * as.Date.POSIXlt(x) now keeps names(x), thanks to Davis Vaughan's
    report and patch in PR#18188.
  * model.response() now strips an "AsIs" class typically, thanks to
    Duncan Murdoch's report and other discussants in PR#18190.
  * try() is considerably faster in case of an error and long call,
    as e.g., from some do.call().  Thanks to Alexander Kaever's
    suggestion posted to R-devel.
  * qqline(y = &lt;object&gt;) such as y=I(.), now works, see also
    PR#18190.
  * Non-integer mgp par() settings are now handled correctly in
    axis() and mtext(), thanks to Mikael Jagan and Duncan Murdoch's
    report and suggestion in PR#18194.
  * formatC(x) returns length zero character() now, rather than ""
    when x is of length zero, as documented, thanks to Davis
    Vaughan's post to R-devel.
  * removeSource(fn) now retains (other) attributes(fn).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1647000000">- CHANGES IN R 4.1.3:
  NEW FEATURES:
  * The default version of Bioconductor has been changed to 3.14.
    (This is used by setRepositories and the menus in GUIs.)
  UTILITIES:
  * R CMD check --as-cran has a workaround for a bug in versions of
    file up to at least 5.41 which mis-identify DBF files last
    changed in 2022 as executables.
  C-LEVEL FACILITIES:
  * The legacy S-compatibility macros SINGLE_* in R_ext/Constants.h
    (included by R.h) are deprecated and will be removed in R 4.2.0.
  BUG FIXES:
  * Initialization of self-starting nls() models with initialization
    functions following the pre-R-4.1.0 API (without the ...
    argument) works again for now, with a deprecation warning.
  * Fixed quoting of ~autodetect~ in Java setting defaults to avoid
    inadvertent user lookup due to leading ~, reported in PR#18231 by
    Harold Gutch.
  * substr(., start, stop) &lt;- v now treats _negative_ stop values
    correctly.  Reported with a patch in PR#18228 by Brodie Gaslam.
  * Subscripting an array x without dimnames by a
    length(dim(x))-column character matrix gave "random" non-sense,
    now an error; reported in PR#18244 by Mikael Jagan.
  * ...names() now matches names(list(...)) closely, fixing PR#18247.
  * all.equal(*, scale = s) now works as intended when length(s) &gt; 1,
    partly thanks to Michael Chirico's PR#18272.
  * print(x) for long vectors x now also works for named atomic
    vectors or lists and prints the correct number when reaching the
    getOption("max.print") limit; partly thanks to a report and
    proposal by Hugh Parsonage to the R-devel list.
  * all.equal(&lt;selfStart&gt;, *) no longer signals a deprecation
    warning.
  * reformulate(*, response=r) gives a helpful error message now when
    length(r) &gt; 1, thanks to Bill Dunlap's PR#18281.
  * Modifying globalCallingHandlers inside withCallingHandlers() now
    works or fails correctly, thanks to Henrik Bengtsson's PR#18257.
  * hist(&lt;Date&gt;, breaks = "days") and hist(&lt;POSIXt&gt;, breaks = "secs")
    no longer fail for inputs of length 1.
  * qbeta(.001, .9, .009) and similar cases now converge correctly
    thanks to Ben Bolker's report in PR#17746.
  * window(x, start, end) no longer wrongly signals "'start' cannot
    be after 'end'", fixing PR#17527 and PR#18291.
  * data() now checks that its (rarely used) list argument is a
    character vector - a couple of packages passed other types and
    gave incorrect results.
  * which() now checks its arr.ind argument is TRUE rather coercing
    to logical and taking the first element - which gave incorrect
    results in package code.
  * model.weights() and model.offset() more carefully extract their
    model components, thanks to Ben Bolker and Tim Taylor's R-devel
    post.
  * list.files(recursive = TRUE) now shows all broken symlinks
    (previously, some of them may have been omitted, PR#18296).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1650628800">- CHANGES IN R 4.2.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * The formula method of aggregate() now matches the generic in
    naming its first argument x (resolving PR#18299 by Thomas
    Soeiro).
    This means that calling aggregate() with a formula as a named
    first argument requires name formula in earlier versions of R and
    name x now, so portable code should not name the argument (code
    in many packages did).
  * Calling &amp;&amp; or || with either argument of length greater than one
    now gives a warning (which it is intended will become an error).
  * Calling if() or while() with a condition of length greater than
    one gives an error rather than a warning.  Consequently,
    environment variable _R_CHECK_LENGTH_1_CONDITION_ no longer has
    any effect.
  * Windows users should consult the WINDOWS section below for some
    profound changes including
  * Support for 32-bit builds has been dropped.
  * UTF-8 locales are used where available.
  * The default locations for the R installation and personal
    library folder have been changed.
    Thanks to Tomas Kalibera for months of work on the Windows port
    for this release.
  NEW FEATURES:
  * matrix(x, n, m) now warns in more cases where length(x) differs
    from n * m, as suggested by Abby Spurdle and Wolfgang Huber in
    Feb 2021 on the R-devel mailing list.
    This warning can be turned into an error by setting environment
    variable _R_CHECK_MATRIX_DATA_ to TRUE: R CMD check --as-cran
    does so unless it is already set.
  * Function file_test() in package utils gains tests for symlinks,
    readability and writability.
  * capabilities("libxml") is now false.
    The description of capabilities("http/ftp") now reflects that it
    refers to the default method, no longer the internal one.
  * simplify2array() gains an except argument for controlling the
    exceptions used by sapply().
  * Environment variables R_LIBS_USER and R_LIBS_SITE are both now
    set to the R system default if unset or empty, and can be set to
    NULL to indicate an empty list of user or site library
    directories.
  * The warning for axis()(-like) calls in cases of relatively small
    ranges (typically in log-scale situations) is slightly improved
    _and_ suppressed from explicit calls to .axisPars() as has always
    been the intention.
  * The contrasts setter function `contrasts&lt;-` gains an explicit
    default how.many = NULL rather than just using missing(how.many).
  * grid.pretty() gains a new optional argument n = 5.
  * There is a new function .pretty() with option bounds as a
    technical-utility version of pretty().  It and pretty() gain a
    new argument f.min with a better than back-compatible default.
  * Function grDevices::axisTicks() and related functions such as
    graphics::axis() work better, notably for the log scale; partly
    because of the pretty() improvements, but also because care is
    taken e.g., when ylim is finite but diff(ylim) is infinite.
  * nclass.FD() gains a digits option.
  * The R Mathlib internal C function bd0() (called indirectly from a
    dozen probability density and distribution functions such as
    dpois(), dbinom(), dgamma(), pgamma() _etc_) has been
    complemented by a more sophisticated and (mostly) more accurate C
    function ebd0(), currently called only by internal dpois_raw()
    improving accuracy for R level dpois() and potentially others
    calling it such as dnbinom(), dgamma() or pgamma().  (Thanks to
    Morten Welinder's PR#15628.)
  * write.ftable() gains sep = " " argument as suggested by Thomas
    Soeiro.
  * The names of the locale categories supported by R's
    Sys.getlocale() and Sys.setlocale() are now provided by variable
    .LC.categories in the base namespace.
  * The Date and POSIXt methods for hist() and the histogram method
    for plot() now also use the new default col = "lightgray" in
    consistency with the corresponding change to hist()'s default for
    R 4.0.0.
  * hist.default() gains new fuzz argument, and the histogram plot
    method no longer uses fractional axis ticks when displaying
    counts ("Frequency").
  * mapply() and hence Map() now also obey the "max-or-0-if-any"
    recycling rule, such that, e.g., Map(`+`, 1:3, 1[0]) is valid
    now.
  * as.character(&lt;obj&gt;) for "hexmode" or "octmode" objects now
    fulfils the important basic rule as.character(x)[j] ===
    as.character(x[j]).
  * The set utility functions, notably intersect() have been tweaked
    to be more consistent and symmetric in their two set arguments,
    also preserving a common mode.
  * substr(ch, start,end) &lt;- new now e.g., preserves names(ch); ditto
    for substring(), thanks to a patch from Brodie Gaslam.
  * plot(&lt;lm&gt;) gains a extend.ylim.f argument, in partial response to
    PR#15285; further PR#17784 is fixed thanks to several
    contributors and a patch by Elin Waring.  The Cook's dist
    contours get customizable via cook.col and cook.lty with a
    different default color and their legend is nicer by default and
    customizable via cook.legendChanges.
  * Attempting to subset an object that is not subsettable now
    signals an error of class notSubsettableError. The
    non-subsettable object is contained in the object field of the
    error condition.
  * Subscript-out-of-bounds errors are now signaled as errors of
    class subscriptOutOfBoundsError.
  * Stack-overflow errors are now signaled as errors inheriting from
    class stackOverflowError. See ?stackOverflowError for more
    details.
  * New partly experimental Sys.setLanguage() utility, solving the
    main problem of PR#18055.
  * gettext() and gettextf() get a new option trim = TRUE which when
    set to false allows translations for strings such as "Execution
    halted\n" typical for C code.
  * An experimental implementation of hash tables is now available.
    See ?hashtab for more details.
  * identical() gains a extptr.as.ref argument for requesting that
    external pointer objects be compared as reference objects.
  * reorder() gets an argument decreasing which it passes to sort()
    for level creation; based on the wish and patch by Thomas Soeiro
    in PR#18243.
  * as.vector() gains a data.frame method which returns a simple
    named list, also clearing a long standing 'FIXME' to enable
    as.vector(&lt;data.frame&gt;, mode="list").  This breaks code relying
    on as.vector(&lt;data.frame&gt;) to return the unchanged data frame.
  * legend() is now vectorized for arguments cex, x.intersp, and
    text.width.  The latter can now also be specified as a vector
    (one element for each column of the legend) or as NA for
    computing a proper column wise maximum value of strwidth(legend).
    The argument y.intersp can be specified as a vector with one
    entry for each row of the legend.
    legend() also gains new arguments title.cex and title.font.
    Thanks to Swetlana Herbrandt.
  * Deparsing no longer remaps attribute names dim, dimnames, levels,
    names and tsp to historical S-compatible names (which structure()
    maps back).
  * sample() and sample.int() have additional sanity checks on their
    size and n arguments.
    all.equal.numeric() gains a sanity check on its tolerance
    argument - calling all.equal(a, b, c) for three numeric vectors
    is a surprisingly common error.
    mean(na.rm =), rank(na.last =), barplot(legend.text =),
    boxplot(), contour(drawlabels =), polygon(border =) and
    methods::is(class2 =) have more robust sanity checks on their
    arguments.
    R CMD Rd2pdf (used by R CMD check) has a more robust sanity check
    on the format of \alias{} commands.
  * psigamma(x, deriv) for negative x now also works for deriv = 4
    and 5; their underlying C level dpsifn() is documented in
    'Writing R Extensions'.
  * The HTML help system now uses HTML5 (wish of PR#18149).
  * ks.test() now provides exact p-values also with ties and MC
    p-values in the two-sample (Smirnov) case.  By Torsten Hothorn.
  * ks.test() gains a formula interface, with y ~ 1 for the
    one-sample (Kolmogorov) test and y ~ group for the two-sample
    (Smirnov) test.  Contributed by Torsten Hothorn.
  * The return value from ks.test() now has class c("ks.test",
    "htest") - packages using try() need to take care to use
    inherits() and not == on the class.
  * New functions psmirnov(), qsmirnov() and rsmirnov() in package
    stats implementing the asymptotic and exact distributions of the
    two-sample Smirnov statistic.
  * iconv() now allows sub = "c99" to use C99-style escapes for UTF-8
    inputs which cannot be converted to encoding to.
  * In a forward pipe |&gt; expression it is now possible to use a named
    argument with the placeholder _ in the rhs call to specify where
    the lhs is to be inserted.  The placeholder can only appear once
    on the rhs.
  * The included LAPACK sources have been updated to version 3.10.0,
    except for the four Fortran 77 routines which 3.10.0 has
    re-implemented in Fortran 90 (where the older versions have been
    retained as the R build process does not support Fortran 90).
  * path.expand() and most other uses of tilde expansion now warn if
    a path would be too long if expanded.  (An exception is
    file.exists(), which silently returns false.)
  * trunc(&lt;Date&gt;, *) now supports units = "months" or "years" for
    consistency with the POSIXt method, thanks to Dirk Eddelbuettel's
    proposal in PR#18099.
  * list2DF() now checks that its arguments are of the same length,
    rather than use recycling.
  * The HTML help system has several new features: LaTeX-like math
    can be typeset using either KaTeX or MathJax, usage and example
    code is highlighted using Prism, and for dynamic help the output
    of examples and demos can be shown within the browser if the
    knitr package is installed. These features can be disabled by
    setting the environment variable _R_HELP_ENABLE_ENHANCED_HTML_ to
    a false value.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 15
    and so packages that provide graphics devices should be
    reinstalled.
  * The grid package now allows the user to specify a "vector" of
    pattern fills.  The fill argument to gpar() accepts a list of
    gradients and/or patterns and the functions linearGradient(),
    radialGradient(), and pattern() have a new group argument.
    Points grobs (data symbols) can now also have a pattern fill.
    The grobCoords() function now returns a more informative and
    complex result.
  * The grid package has new functions for drawing isolated groups:
    grid.group(), grid.define(), and grid.use().  These functions add
    compositing operators and affine transformations to R's graphics
    capabilities.
    The grid package also has new functions for stroking and filling
    paths: grid.stroke(), grid.fill(), and grid.fillStroke().
    A new function as.path() allows the user to specify the fill rule
    for a path that is to be used for clipping, stroking, or filling;
    available options are "winding" and "evenodd".  A new function
    as.mask() allows the user to specify the type of a mask;
    available options are "alpha" and "luminance".
    These new features are only supported so far (at most) on the
    Cairo-based graphics devices and on the pdf() device.
  * dev.capabilities() reports on device support for the new
    features.
  * par() now warns about unnamed non-character arguments to prevent
    misuse such as {usr &lt;- par("usr"); par(usr)}.
  INSTALLATION:
  * Facilities for accessing ftp:// sites are no longer tested
    (except _pro tem_ for curlGetHeaders()) as modern browsers have
    removed support.
  * R can now be built with DEFS = -DSTRICT_R_HEADERS .
  PACKAGE INSTALLATION:
  * R CMD INSTALL no longer tangles vignettes. This completes an R
    CMD build change in R 3.0.0 and affects packages built before R
    3.0.2. Such packages should be re-made with R CMD build to have
    the tangled R code of vignettes shipped with the tarball.
  * USE_FC_LEN_T will become the default: this uses the correct
    prototypes for Fortran BLAS/LAPACK routines called from C/C++,
    and requires adjustment of most such calls - see 'Writing R
    Extensions' SS6.6.2.  (This has been supported since R 3.6.2.)
  * Package installation speed for packages installed with
    keep.source has been improved. This resolve the issue reported by
    Ofek Shilon in PR#18236.
  UTILITIES:
  * R CMD check can optionally report files/directories left behind
    in home, /tmp (even though TMPDIR is set) and other directories.
    See the "R Internals" manual for details.
  * R CMD check now reports byte-compilation errors during
    installation.  These are not usually fatal but may result in
    parts of the package not being byte-compiled.
  * _R_CHECK_DEPENDS_ONLY_ can be applied selectively to examples,
    tests and/or vignettes in R CMD check: see the "R Internals"
    manual.
  * _R_CHECK_SRC_MINUS_W_IMPLICIT_ now defaults to true: recent
    versions of Apple clang on macOS have made implicit function
    declarations in C into a compilation error.
  * R CMD check --as-cran makes use of the environment variable
    AUTORECONF.  See the "R Internals" manual SS8 for further details.
  * R CMD check --use-valgrind also uses valgrind when re-building
    vignettes as some non-Sweave vignettes unhelpfully comment out
    all their code when R CMD check runs vignettes.
  * Errors in re-building vignettes (unless there are LaTeX errors)
    are reported by R CMD check as ERROR rather than WARNING when
    running vignettes has been skipped (as it frequently is in CRAN
    checks and by --as-cran).
  * R CMD Rd2pdf gains a --quiet option that is used by R CMD build
    when building the PDF package manual.
  * R CMD Rd2pdf now always runs LaTeX in batch mode, consistent with
    Texinfo &gt;= 6.7. The --batch option is ignored.
  * R CMD build and R CMD check now include the Rd file name and line
    numbers in the error message of an \Sexpr evaluation failure.
  * For packages using the \doi Rd macro (now an install-time \Sexpr)
    but no other dynamic Rd content, R CMD build now produces a
    smaller tarball and is considerably faster - skipping temporary
    package installation.
  C-LEVEL FACILITIES:
  * The non-API header R_ext/R-ftp-http.h is no longer provided, as
    the entry points it covered are now all defunct.
  * A number of non-API declarations and macro definitions have been
    moved from the installed header Rinternals.h to the internal
    header Defn.h. Packages that only use entry points and
    definitions documented to be part of the API as specified in
    'Writing R Extensions' SS6 should not be affected.
  * The macro USE_RINTERNALS no longer has any effect when compiling
    package code.  Packages which also use R_NO_REMAP will need to
    ensure that the remapped names are used for calls to API
    functions that were formerly also made available as macros.
  * The deprecated legacy S-compatibility macros PROBLEM, MESSAGE,
    ERROR, WARN, WARNING, RECOVER, ... are no longer defined in
    R_exts/RS.h (included by R.h).  Replace these by calls to
    Rf_error and Rf_warning (defined in header R_ext/Error.h included
    by R.h).
    Header R_ext/RS.h no longer includes R_ext/Error.h.
  * Header R_ext/Constants.h (included by R.h) when included from C++
    now includes the C++ header cfloat rather than the C header
    float.h (now possible as C++11 is required).
  * The legacy S-compatibility macros DOUBLE_* in R_ext/Constants.h
    (included by R.h) are deprecated.
  * The deprecated S-compatibility macros SINGLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * R_Calloc, R_Free and R_Realloc are preferred to their unprefixed
    forms and error messages now use the prefix. These forms were
    introduced in R 3.4.0 and are available even when
    STRICT_R_HEADERS is defined.
  * rmultinom has been documented in 'Writing R Extensions' SS6 so is
    now part of the R API.
  * Similarly, Rtanpi, called from R level tanpi() is now part of the
    R API.
  * The long-deprecated, undocumented and non-API entry point call_R
    is no longer declared in R_ext/RS.h (included by R.h).
  * The header S.h which has been unsupported since Jan 2016 has been
    removed.  Use R.h instead.
  DEPRECATED AND DEFUNCT:
  * The (non-default and deprecated) method = "internal" for
    download.file() and url() no longer supports http:// nor ftp://
    URIs.  (It is used only for file:// URIs.)
    On Windows, download.file(method = "wininet") no longer supports
    ftp:// URIs.  (It is no longer the default method, which is
    "libcurl" and does.)
    On Windows, the deprecated method = "wininet" now gives a warning
    for http:// and https:// URIs for both download.file() and url().
    (It is no longer the default method.)
  * On Windows, the command-line option --max-mem-size and
    environment variable R_MAX_MEM_SIZE are defunct.  The memory
    allocation limit was important for 32-bit builds, but these are
    no longer supported.
  * default.stringsAsFactors() is now formally deprecated, where that
    was only mentioned on its regular help page, previously.  So it
    now gives a warning if called.
  * unix.time() is defunct now; it had been deprecated since R 3.4.0.
  BUG FIXES:
  * Setting digits = 0 in format(), print.default() (and hence
    typically print()) or options() is again invalid.  Its behaviour
    was platform-dependent, and it is unclear what "zero significant
    digits" should mean (PR#18098).
  * Messages from C code in the cairo section of package grDevices
    are now also offered for translation, thanks to Michael Chirico's
    PR#18123.
  * mean(x) with finite x now is finite also without "long.double"
    capability.
  * R CMD Rd2pdf no longer leaves an empty build directory behind
    when it aborts due to an already existing output file.  (Thanks
    to Sebastian Meyer's PR#18141.)
  * density(x, weights = w, na.rm = TRUE) when anyNA(x) is true, now
    removes weights "in parallel" to x, fixing PR#18151, reported by
    Matthias Gondan.  Additionally, it gets a subdensity option.
  * Conversion of \Sexpr[]{&lt;expR&gt;} to LaTeX or HTML no longer
    produces long blocks of empty lines when &lt;expR&gt; itself contains
    several lines all producing empty output.  Thanks to a report and
    patch by Ivan Krylov posted to R-devel.
  * R CMD build no longer fails if a package vignette uses child
    documents and inst/doc exists.  (Thanks to Sebastian Meyer's
    PR#18156.)
  * When an R documentation ('help' source) file man/foo.Rd in a
    package has \donttest{..} examples with a syntax error, it is now
    signalled as ERROR and with correct line numbers relating to the
  * -Ex.R file, thanks to Duncan Murdoch and Sebastian Meyer's
    reports and patch proposals in PR#17501.
  * Improved determination of the correct translation domain in
    non-base packages, addressing the combination of PR#18092 and
    PR#17998 (#c6) with reports and _augmented_ patch #2904 by
    Suharto Anggono.
    Note that "R-base" is no longer the default domain e.g., for
    top-level calls to gettext(); rather translation needs explicit
    domain = * specification in such cases.
  * identical(attrib.as.set=FALSE) now works correctly with data
    frames with default row names (Thanks to Charlie Gao's PR#18179).
  * txtProgressBar() now enforces a non-zero width for argument char,
    without which no progress can be visible.
  * dimnames(table(d)) is more consistent in the case where d is a
    list with a single component, thanks to Thomas Soeiro's report to
    R-devel.
    Further, table(d1, d2) now gives an error when d1 and d2 are data
    frames as suggested by Thomas in PR#18224.
  * Fix for drawing semi-transparent lines and fills on the native
    Windows graphics device (PR#18219 and PR#16694).  Thanks to Nick
    Ray for helpful diagnosis on Bugzilla.
  * The deparser now wraps sub-expressions such as if(A) ..  with
    parentheses when needed; thanks to Duncan Murdoch's PR#18232 and
    Lionel Henry's patches there.
  * remove.packages() no longer tries to uninstall Priority: base
    packages, thanks to a report and suggestions by Colin Fay in
    PR#18227.
  * win.metafile() now has xpinch and ypinch arguments so that the
    user can override Windows' (potentially wrong) guess at device
    dimensions.
  * x[i] and x[[i]] for non-integer i should now behave in all cases
    as always documented: the index used is equivalent to
    as.integer(i) unless that would overflow where trunc(i) is used
    instead; thanks to Suharto Anggono's report and patch proposals
    in PR#17977.
  * asOneSidedFormula() now associates the resulting formula with the
    global environment rather than the evaluation environment created
    for the call.
  * &lt;bibentry&gt;$name now matches the field name case-insensitively,
    consistent with bibentry() creation and the replacement method.
  * cbind() failed to detect some length mismatches with a mixture of
    time-series and non-time-series inputs.
  * The default LaTeX style file Sweave.sty used by the RweaveLatex
    driver no longer loads the obsolete ae package; thanks to a
    report by Thomas Soeiro in PR#18271.  Furthermore, it now skips
    \usepackage[T1]{fontenc} for engines other than pdfTeX (if
    detected) or if the new [nofontenc] option is used.
  * smooth.spline() now stores its logical cv argument more safely,
    fixing a rare bug when printing, and also stores n.
  * smooth.spline(x,y,*) now computes the cv.crit statistic
    correctly, also when is.unsorted(x), fixing PR#18294.
  * The data.frame method of rbind() now warns when binding
    not-wholly-recycling vectors, by analogy to the default method
    (for matrices).
  * setAs() finds the correct class for name to when multiple
    packages define a class with that name. Thanks to Gabor Csardi
    for the report.
  * Fix for detaching a package when two classes of the same name are
    present in method signatures for the same generic. Thanks to
    Gabor Csardi for the report.
  * match.arg("", c("", "a", "B")) gives a better error message, in
    part from PR#17959, thanks to Elin Waring.
  * R CMD Sweave --clean no longer removes pre-existing files or
    subdirectories (PR#18242).
  * The quartz() device no longer splits polylines into subpaths.
    That has caused narrowly-spaced lines with many points to always
    look solid even when dashed line type was used due to dash phase
    restarts.
  * Deparsing constructs such as quote(1 + `!`(2) + 3) works again as
    before R 3.5.0, thanks to the report and patch in PR#18284 by
    Suharto Anggono.
  * as.list(f) for a factor f now keeps names(f), fixing PR#18309.
  * qbeta(.001, .9, .009) and analogous qf() calls now return a
    correct value instead of NaN or wrongly 1, all with a warning;
    thanks to the report by Ludger Goeminne in PR#18302.
  * plot.lm() failed to produce the plot of residuals vs.  factor
    levels (i.e., which=5 when leverages are constant) for models
    with character predictors (PR#17840).
  * interaction.plot(..., xtick = TRUE) misplaced the x-axis line
    (PR#18305).
  * Not strictly fixing a bug, format()ing and print()ing of
    non-finite Date and POSIXt values NaN and +/-Inf no longer show
    as NA but the respective string, e.g., Inf, for consistency with
    numeric vector's behaviour, fulfilling the wish of PR#18308.
  * R CMD check no longer runs test scripts generated from
    corresponding .Rin files twice and now signals an ERROR if
    processing an .Rin script fails.
  * tools::Rd2txt() used for plain-text help pages now renders \hrefs
    (if tools::Rd2txt_options(showURLs = TRUE)) and \urls with
    percent-encoding and standards-compliant delimiting style (angle
    brackets and no URL: prefix).  \email is now rendered with a
    mailto: prefix.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1655985600">- CHANGES IN R 4.2.1:
  NEW FEATURES:
  * New function utils::findCRANmirror() to find out if a CRAN mirror
    has been selected, otherwise fallback to the main site.  This
    behaves in the same way as tools::CRAN_package_db() and is
    intended for packages wishing to access CRAN for purposes other
    than installing packages.
    The need for this was shown by a day when the main CRAN website
    was offline and a dozen or so packages which had its URL
    hardcoded failed their checks.
  INSTALLATION on a UNIX-ALIKE:
  * The libraries searched for by --with-blas (without a value) now
    include BLIS (after OpenBLAS but before ATLAS).  And on macOS,
    the Accelerate framework (after ATLAS).  (This is patterned after
    the AX_BLAS macro from the Autoconf Archive.)
  * The included LAPACK sources have been updated to 3.10.1.
  UTILITIES:
  * The (full path to) the command tidy to be used for HTML
    validation can be set by environment variable R_TIDYCMD.
  * Setting environment variable _R_CHECK_RD_VALIDATE_RD2HTML_ to a
    false value will override R CMD check --as-cran and turn off HTML
    validation.  This provides a way to circumvent a problematic
    tidy.
    The 2006 version that ships with macOS is always skipped.
  C-LEVEL FACILITIES:
  * The undocumented legacy declarations of Sint, Sfloat, SINT_MAX
    and SINT_MIN in header R.h are deprecated.
  BUG FIXES:
  * fisher.test(d) no longer segfaults for "large" d; fixing PR#18336
    by preventing/detecting an integer overflow reliably.
  * tar(., files=*) now produces correctly the warning about invalid
    uid or gid of files, fixing PR#18344, reported by Martin Morgan.
  * tk_choose.files() with multi = FALSE misbehaved on paths
    containing spaces (PR#18334) (regression introduced in R 4.0.0).
  * sort(x, partial = ind, *) now works correctly notably for the
    non-default na.last = FALSE or TRUE, fixing PR#18335 reported by
    James Edwards.
  * Environment variable _R_CHECK_XREFS_REPOSITORIES_ is only used
    for checking .Rd cross-references in R CMD check (as documented)
    and not for other uses looking for a CRAN mirror.
  * The search for a CRAN mirror when checking packages now uses
    getOption("repos") if that specifies a CRAN mirror, even when it
    does not also specify all three Bioconductor repositories (as was
    previously required).
  * The HTML code generated by tools::Rd2HTML() has been improved to
    pass tidy 5.8.0.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1667217600">- CHANGES IN R 4.2.2:
  NEW FEATURES:
  * tools::Rdiff(useDiff = TRUE) checks for the presence of an
    external diff command and switches to useDiff = FALSE if none is
    found.  This allows R CMD Rdiff to always work.
  * On Windows, environment variable R_LIBCURL_SSL_REVOKE_BEST_EFFORT
    can be used to switch to only 'best-effort' SSL certificate
    revocation checks with the default "libcurl" download method.
    This reduces security, but may be needed for downloads to work
    with MITM proxies (PR#18379).
  * (macOS) The run-time check for libraries from XQuartz for X11 and
    Tcl/Tk no longer uses otool from the Apple Developer Tools
    (PR#18400).
  * The LaTeX style for producing the PDF manuals, Rd.sty, now loads
    the standard amsmath, amsfonts and amssymb packages for greater
    coverage of math commands in the Rd \eqn and \deqn macros.  The
    \mathscr LaTeX command is also provided (via the mathrsfs
    package, if available, or the amsfonts bundle otherwise),
    fulfilling the wish of PR#18398.
  * (Windows) The default format of readClipboard() and
    writeClipboard() has been changed to 13 (CF_UNICODETEXT).
  INSTALLATION on a UNIX-ALIKE:
  * The PDF manuals (if built) can be compacted by the new target
    make compact-pdf (at the top level or in directory doc/manual).
  * There is now configure support for LLVM clang 15 on Linux, which
    defaults to position-independent (PIE) executables whereas
    gfortran does not.
  * Many small changes to ease compilation (and suppress warnings)
    with LLVM clang 15.
  BUG FIXES:
  * Rscript -e would fail if stdin were closed (Reported by Henrik
    Bengtsson.)
  * qt(*, log.p=TRUE) in outer tails no longer produces NaN in its
    final steps, thus fixing PR#18360.
  * tools::Rd2latex() now escapes hashes and ampersands when writing
    URLs, fixing LaTeX errors with such URLs in \tabular.
  * When isGeneric(f, fdef=*) is used with mismatching names, the
    warning is better understandable; reported (with fix) in PR#18370
    by Gabe Becker.
  * poly(x, n) now works again (and is now documented) when x is a
    "Date" or "POSIXct" object, or of another class while fulfilling
    mode(x) == "numeric".  This also enables poly(x, *, raw=TRUE) for
    such variables.  Reported by Michael Chirico to R-devel.
  * write.table(), write.csv() and write.csv2() restore their
    numerical precision (internal equivalent of digits = 15) after an
    interrupt (PR#18384).
  * One can now read also byte FF from a clipboard connection
    (PR#18385).
  * source("") and source(character()) now give more helpful error
    messages.
  * R CMD check --as-cran set _R_CHECK_TIMINGS_ too late to have the
    intended effect.
  * as.POSIXlt(x) now also works with very large dates x, fixing
    PR#18401 reported by Hannes M"uhleisen.
  * Files can now be extracted even from very large zip archives
    (PR#18390, thanks to Martin Jakt).
  * Non-finite objects of class "POSIXlt" are now correctly coerced
    to classes "Date" and "POSIXct"; following up on the extension to
    format() them correctly.
  * Added methods for is.finite(), is.infinite() and is.nan() for
    "POSIXlt" date-time objects.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1678881600">- CHANGES IN R 4.2.3:
  C-LEVEL FACILITIES:
  * The definition of DL_FUNC in R_ext/Rdynload.h has been changed to
    be fully C-compliant.  This means that functions loaded _via_ for
    example R_GetCCallable need to be cast to an appropriate type if
    they have any arguments.
  * .Machine has a new element sizeof.time_t to identify old systems
    with a 32-bit type and hence a limited range of date-times (and
    limited support for dates millions of years from present).
  PACKAGE INSTALLATION:
  * (Windows) The default C++ standard had accidentally been left at
    C++11 when it was changed to C++14 on Unix.
  BUG FIXES:
  * As "POSIXlt" objects may be "partially filled" and their list
    components meant to be recycled, length() now is the length of
    the longest component.
  * as.POSIXlt.Date() could underflow for dates in the far past (more
    than half a million years BCE).
  * as.Date.POSIXlt(x) would return "1970-01-01" instead of NA in R
    4.2.2, e.g., for
    x &lt;- as.POSIXlt(c("2019-01-30","2001-1-1"))
    x$mon &lt;- c(0L, NA); as.Date(x)
  * R CMD check failed to apply enabled _R_CHECK_SUGGESTS_ONLY_ to
    examples and vignettes (regression in R 4.2.0).
  * R CMD check did not re-build vignettes in separate processes by
    default (regression in R 4.2.0).
  * Running examples from HTML documentation now restores previous
    knitr settings and options (PR#18420).
  * Quartz: fonts are now located using Core Graphics API instead of
    deprecated ATS which is no longer supported in the macOS 13 SDK
    (PR#18426).  This also addresses an issue where the currently
    used font in the Quartz device context was not correctly
    retained.
  * (Windows) Math symbols in text drawing functions are again
    rendered correctly (PR#18440).  This fixes a regression in R
    4.2.1 caused by a fix in PR#18382 which uncovered an issue in
    GraphApp due to which the symbol charset was not used with TT
    Symbol font face.
  * (Windows) Installing a package with a src/Makefile.{win,ucrt}
    file includes ~/.R/Makevars.win64 in the search for user
    makevars, as documented in "R Installation and Administration"
    and done for packages with a src/Makevars.{win,ucrt} file.
  * format(&lt;POSIXlt_w/_unbalanced_sec&gt;, "....%OS&lt;n&gt;") with n &gt; 0 no
    longer accidentally uses the unbalanced seconds, thanks to
    Suharto Anggono's report (including patch) in PR#18448.
  * solve.default(a, b) works around issues with some versions of
    LAPACK when a contains NA or NaN values.
  * When UseMethod() cannot dispatch, it no longer segfaults
    producing the error message in case of a long class(), thanks to
    Joris Vankerschaver's report (including patch) in PR#18447.
  * When example(foo, ..) produces graphics on an interactive device
    it needs to open itself, it now leaves devAskNewPage() unchanged
    even when it was FALSE, thus fixing a 14 years old '&lt;FIXME&gt;'.
  * packageDescription() again catches errors from encoding
    conversions. This also fixes broken packageVersion() in C locale
    on systems where iconv does not support transliteration.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1681128000">- add patch to build with libcurl &gt;= 8</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1682078400">- CHANGES IN R 4.3.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Calling &amp;&amp; or || with LHS or (if evaluated) RHS of length greater
    than one is now always an error, with a report of the form
    'length = 4' in coercion to 'logical(1)'
    Environment variable _R_CHECK_LENGTH_1_LOGIC2_ no longer has any
    effect.
  NEW FEATURES:
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.10.1.  (This caused some platform-dependent
    changes to package check output.)  And then to the sources from
    LAPACK version 3.11.0 (with changes only to double complex
    subroutines).
  * The included LAPACK sources have been updated to include the four
    Fortran 90 routines rather than their Fortran 77 predecessors.
    This may give some different signs in SVDs or
    eigendecompositions..  (This completes the transition to LAPACK
    3.10.x begun in R 4.2.0.)
  * The LAPACK sources have been updated to version 3.11.0.  (No new
    subroutines have been added, so this almost entirely bug fixes:
    Those fixes do affect some computations with NaNs, including R's
    NA.)
  * The parser now signals _classed_ errors, notably in case of the
    pipe operator |&gt;.  The error object and message now give line and
    column numbers, mostly as proposed and provided by Duncan Murdoch
    in PR#18328.
  * toeplitz() is now generalized for asymmetric cases, with a
    toeplitz2() variant.
  * xy.coords() and xyz.coords() and consequently, e.g., plot(x,y,
    log = "y") now signal a _classed_ warning about negative values
    of y (where log(.) is NA).  Such a warning can be specifically
    suppressed or caught otherwise.
  * Regular expression functions now check more thoroughly whether
    their inputs are valid strings (in their encoding, e.g. in
    UTF-8).
  * The performance of grep(), sub(), gsub() and strsplit() has been
    improved, particularly with perl = TRUE and fixed = TRUE.  Use of
    useBytes = TRUE for performance reasons should no longer be
    needed and is discouraged: it may lead to incorrect results.
  * apropos() gains an argument dot_internals which is used by the
    completion (help(rcompgen)) engine to also see base internals
    such as .POSIXct().
  * Support in tools::Rdiff() for comparing uncompressed PDF files is
    further reduced - see its help page.
  * qqplot(x, y, ...) gains conf.level and conf.args arguments for
    computing and plotting a confidence band for the treatment
    function transforming the distribution of x into the distribution
    of y (Switzer, 1976, _Biometrika_). Contributed by Torsten
    Hothorn.
  * Performance of package_dependencies() has been improved for cases
    when the number of dependencies is large.
  * Strings newly created by gsub(), sub() and strsplit(), when any
    of the inputs is marked as "bytes", are also marked as "bytes".
    This reduces the risk of creating invalid strings and accidental
    substitution of bytes deemed invalid.
  * Support for readLines(encoding = "bytes") has been added to allow
    processing special text files byte-by-byte, without creating
    invalid strings.
  * iconv(from = "") now takes into account any declared encoding of
    the input elements and uses it in preference to the native
    encoding.  This reduces the risk of accidental creation of
    invalid strings, particularly when different elements of the
    input have different encoding (including "bytes").
  * Package repositories in getOption("repos") are now initialized
    from the repositories file when utils is loaded (if not already
    set, e.g., in .Rprofile).  (From a report and patch proposal by
    Gabriel Becker in PR#18405.)
  * compactPDF() gets a verbose option.
  * type.convert() and hence read.table() get new option tryLogical =
    TRUE with back compatible default.  When set to false, converts
    "F" or "T" columns to character.
  * Added new unit prefixes "R" and "Q" for abbreviating
    (unrealistically large) sizes beyond 10^{27} in standard = "SI",
    thanks to Henrik Bengtsson's PR#18435.
  * as.data.frame()'s default method now also works fine with atomic
    objects inheriting from classes such as "roman", "octmode" and
    "hexmode", such fulfilling the wish of PR#18421, by Benjamin
    Feakins.
  * The as.data.frame.vector() utility now errors for wrong-length
    row.names.  It warned for almost six years, with "Will be an
    error!".
  * sessionInfo() now also contains La_version() and reports codepage
    and timezone when relevant, in both print() and toLatex() methods
    which also get new option tzone for displaying timezone
    information when locale = FALSE.
  * New function R_compiled_by() reports the C and Fortran compilers
    used to build R, if known.
  * predict(&lt;lm&gt;, newdata = *) no longer unnecessarily creates an
    offset of all 0s.
  * solve() for complex inputs now uses argument tol and by default
    checks for 'computational singularity' (as it long has done for
    numeric inputs).
  * predict(&lt;rank-deficient lm&gt;, newdata=*) now obeys a new argument
    rankdeficient, with new default "warnif", warning only if there
    are non-estimable cases in newdata.  Other options include
    rankdeficient = "NA", predicting NA for non-estimable newdata
    cases.  This addresses PR#15072 by Russ Lenth and is based on his
    original proposal and discussions in PR#16158 also by David Firth
    and Elin Waring.  Still somewhat experimental.
  * Rgui console implementation now works better with the NVDA screen
    reader when the full blinking cursor is selected.  The underlying
    improvements in cursor handling may help also other screen
    readers on Windows.
  * The drop-field control in GraphApp can now be left with the TAB
    key and all controls can be navigated in the reverse order using
    the Shift+TAB key, improving accessibility of the Rgui
    configuration editor.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now fully accurate
    (instead of to "only" minimally five digits).
  * demo(error.catching) now also shows off withWarnings() and
    tryCatchWEMs().
  * As an experimental feature the placeholder _ can now also be used
    in the rhs of a forward pipe |&gt; expression as the first argument
    in an extraction call, such as _$coef. More generally, it can be
    used as the head of a chain of extractions, such as _$coef[[2]].
  * Spaces in the environment variable used to choose the R session's
    temporary directory (TMPDIR, TMP and TEMP are tried in turn) are
    now fatal.  (On Windows the 'short path' version of the path is
    tried and used if that does not contain a space.)
  * all.equal.numeric() gets a new optional switch giveErr to return
    the numeric error as attribute.  Relatedly,
    stopifnot(all.equal&lt;some&gt;(a, b, ..)) is as "smart" now, as
    stopifnot(all.equal(....)) has been already, thus allowing
    customized all.equal&lt;Some&gt;() wrappers.
  * R on Windows is now able to work with path names longer than 260
    characters when these are enabled in the system (requires at
    least Windows 10 version 1607).  Packages should be updated to
    work with long paths as well, instead of assuming PATH_MAX to be
    the maximum length.  Custom front-ends and applications embedding
    R need to update their manifests if they wish to allow this
    feature.  See
    &lt;https://blog.r-project.org/2023/03/07/path-length-limit-on-windows&gt;
    for more information.
  * 'Object not found' and 'Missing argument' errors now give a more
    accurate error context. Patch provided by Lionel Henry in
    PR#18241.
  * The @ operator is now an S3 generic. Based on contributions by
    Tomasz Kalinowski in PR#18482.
  * New generic chooseOpsMethod() provides a mechanism for objects to
    resolve cases where two suitable methods are found for an Ops
    Group Generic. This supports experimenting with alternative
    object systems. Based on contributions by Tomasz Kalinowski in
    PR#18484.
  * inherits(x, what) now accepts values other than a simple
    character vector for argument what. A new generic, nameOfClass(),
    is called to resolve the class name from what. This supports
    experimenting with alternative object systems. Based on
    contributions by Tomasz Kalinowski in PR#18485.
  * Detection of BLAS/LAPACK in use (sessionInfo()) with FlexiBLAS
    now reports the current backend.
  * The "data.frame" method for subset() now warns about extraneous
    arguments, typically catching the use of = instead of == in the
    subset expression.
  * Calling a:b when numeric a or b is longer than one may now be
    made into an error by setting environment variable
    _R_CHECK_LENGTH_COLON_ to a true value, along the proposal in
    PR#18419 by Henrik Bengtsson.
  * density(x, weights = *) now warns if automatic bandwidth
    selection happens without using weights; new optional warnWbw may
    suppress the warning.  Prompted by Christoph Dalitz' PR#18490 and
    its discussants.
  * rm(list = *) is faster and more readable thanks to Kevin Ushey's
    PR#18492.
  * The plot.lm() function no longer produces a normal Q-Q plot for
    GLMs. Instead it plots a half-normal Q-Q plot of the absolute
    value of the standardized deviance residuals.
  * The print() method for class "summary.glm" no longer shows
    summary statistics for the deviance residuals by default.  Its
    optional argument show.residuals can be used to show them if
    required.
  * The tapply() function now accepts a data frame as its X argument,
    and allows INDEX to be a formula in that case. by.data.frame()
    similarly allows INDICES to be a formula.
  * The performance of df[j] &lt;- value (including for missing j) and
    write.table(df) has been improved for data frames df with a large
    number of columns.  (Thanks to Gabriel Becker's PR#18500,
    PR#18503 and discussants, prompted by a report from Toby Dylan
    Hocking on the R-devel mailing list.)
  * The matrix multiply operator %*% is now an S3 generic, belonging
    to new group generic matrixOps.  From Tomasz Kalinowski's
    contribution in PR#18483.
  * New function array2DF() to convert arrays to data frames,
    particularly useful for the list arrays created by tapply().
  DATES and TIMES:
  * On platforms where (non-UTC) datetimes before 1902 (or before
    1900 as with system functions on recent macOS) are guessed by
    extrapolating time zones from 1902-2037, there is a warning at
    the first use of extrapolation in a session.  (As all time zones
    post 2037 are extrapolation, we do not warn on those.)
  * (Platforms using --with-internal-tzone, including Windows and by
    default macOS). How years are printed in dates or date-times can
    be controlled by environment variable R_PAD_YEARS_BY_ZERO.  The
    default remains to pad to 4 digits by zeroes, but setting value
    no gives no padding (as used by default by glibc).
  * strftime() tries harder to determine the offset for the "%z"
    format, and succeeds on the mainstream R platforms.
  * strftime() has a limit of 2048 bytes on the string produced -
    attempting to exceed this is an error.  (Previously it silently
    truncated at 255 bytes.)
  * sessionInfo() records (and by default prints) the system time
    zone as part of the locale information.  Also, the source
    (system/internal) of the date-time conversion and printing
    functions.
  * Objects of class "POSIXlt" created in this version of R always
    have 11 components: component zone is always set, and component
    gmtoff is set for times in UTC and usually set on the (almost
    all) platforms which have C-level support, otherwise is NA.
  * There are comprehensive validity checks on the structure of
    objects of class "POSIXlt" when converting (including formatting
    and printing).  (This avoids mis-conversions of hand-crafted
    objects.)
  * There is some support for using the native date-time routines on
    macOS: this is only viable on recent versions (e.g. 12.6 and 13)
    and does get wrong some historical changes (before 1900, during
    WWII).  Use of --with-internal-tzone remains the default.
  * as.POSIXct(&lt;numeric&gt;) and as.POSIXlt(.) (without specifying
    origin) now work.  So does as.Date(&lt;numeric&gt;).
  * as.Date.POSIXct(., tz) now treats several tz values, notably
    "GMT" as equivalent to "UTC", proposed and improved by Michael
    Chirico and Joshua Ulrich in PR#17674.
  * Experimental balancePOSIXlt() utility allows using "ragged" and
    or out-of-range "POSIXlt" objects more correctly, e.g., in
    subsetting and subassignments.  Such objects are now documented.
    More experimentally, a "POSIXlt" object may have an attribute
    "balanced" indicating if it is known to be filled or fully
    balanced.
  * Functions axis.Date() and axis.POSIXct() are rewritten to gain
    better default tick locations and better default formats by using
    prettyDate(). Thanks to Swetlana Herbrandt.
  * The mapping of Windows' names for time zones to IANA's 'Olson'
    names has been updated.  When ICU is available (it is by
    default), it is used to get a mapping for the current region set
    in Windows.  This can be overridden by setting environment
    variable TZ to the desired Olson name - see OlsonNames() for
    those currently available.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 16
    and so packages that provide graphics devices should be
    reinstalled.
  * The grDevices and grid packages have new functions for rendering
    typeset glyphs, primarily: grDevices::glyphInfo() and
    grid::grid.glyph().
    Rendering of typeset glyphs is only supported so far on the
    Cairo-based graphics devices and on the pdf() and quartz()
    devices.
  * The defined behaviour for "clear" and "source" compositing
    operators (via grid::grid.group()) has been changed (to align
    better with simple interpretation of original Porter-Duff
    definitions).
  * Support for gradients, patterns, clipping paths, masks, groups,
    compositing operators, and affine transformations has been added
    to the quartz() device.
  INSTALLATION on a UNIX-ALIKE:
  * A system installation of generic LAPACK 3.10.0 or later will be
    preferred to the version in the R sources.
    configure option --with-lapack=no (equivalently --without-lapack)
    forces compilation of the internal LAPACK sources.
    If --with-lapack is not specified, a system liblapack is looked
    for and used if it reports version 3.10.0 or later and does not
    contain BLAS routines.
    Packages using LAPACK will need to be reinstalled if this changes
    to using an external library.
  * On aarch64 Linux platforms using GCC, configure now defaults to
  - fPIC (instead of -fpic), as desired in PR#18326.
  * configure now checks conversion of datetimes between POSIXlt and
    POSIXct around year 2020.  Failure (which has been seen on
    platforms missing tzdata) is fatal.
  * If configure option --with-valgrind-instrumentation is given
    value 1 or 2, option --with-system-valgrind-headers is now the
    default and ignored (with a warning).  It is highly recommended
    that the system headers are installed alongside valgrind: they
    are part of its packaging on some Linux distributions and
    packaged separately (e.g. in the valgrind-devel RPM) on others.
    configure will give a warning if they are not found.
    The system headers will be required in a future release of R to
    build with valgrind instrumentation.
  * libcurl 8.x is now accepted by configure: despite a change in
    major version number it changes neither API nor ABI.
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools43, an update of the Rtools42 toolchain.  It is
    based on gcc 12 and newer versions of MinGW-W64, binutils and
    libraries.  At this time R-devel can still be built using
    Rtools42 without changes, but when R-devel is installed via the
    installer, it will by default look for Rtools43.
  * Old make targets rsync-extsoft and 32-bit ones that are no longer
    needed have been removed.
  * Default builds (including for packages) no longer select C99.
    Thus the C standard used is the default for the compiler, which
    for the toolchain in Rtools43 is C17.  (This is consistent with
    Unix builds.)
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++17 where
    available (which it is on all currently checked platforms): if
    not C++14 or C++11 is used if available otherwise C++ is not
    supported.
  * USE_FC_LEN_T is the default: this uses the correct
    (compiler-dependent) prototypes for Fortran BLAS/LAPACK routines
    called from C/C++, and requires adjustment of many such calls -
    see 'Writing R Extensions' SS6.6.1.
  * There is initial support for C++23 as several compilers are now
    supporting -std=c++23 or -std=c++2b or similar.  As for C++20,
    there no additional configure checks for C++23 features beyond a
    check that the compiler reports a __cplusplus value greater than
    that in the C++20 standard.  C++ feature tests should be used.
  * There is support for a package to indicate the version of the C
    standard which should be used to compile it, and for the
    installing user to specify this.  In most cases R defaults to the
    C compiler's default standard which is C17 (a `bug-fix' of C11) -
    earlier versions of R or compilers may have defaulted to C99.
    Current options are:
    USE_C17 Use a standard that is at most C17.  The intention is to
    allow legacy packages to still be installed when later C
    standards become the default, including packages using new
    keywords as identifiers or with K&amp;R-style function
    declarations.  This will use C17 if available, falling back
    to C11.
    USE_C90 Use the C90 (aka C89) standard.  (As that standard did
    not require compilers to identify that version, all we can
    verify is that the compiler does not claim to be using a
    later standard.  It may accept C99 features - for example
    clang accepts // to make comments.)
    USE_C99 Use the C99 standard. This should be rarely needed - it
    avoids the few new features of C11/C17 which can be useful if
    a package assumes them if C17 is specified and they are not
    implemented.
    USE_C23 Use C23 (or in future, later).  Compiler/library support
    for C23 is still being implemented, but LLVM clang from
    15.0.0 and the upcoming GCC 13 have quite extensive support.
    These can be specified as part of the SystemRequirements field in
    the package's DESCRIPTION file or _via_ options --use-C17 and so
    on of R CMD INSTALL and R CMD SHLIB.
    For further details see "Writing R Extensions" SS1.2.5.
  * (Windows) A src/Makefile.ucrt or src/Makefile.win file is now
    included after R_HOME/etcR_ARCH/Makeconf and so no longer needs
    to include that file itself.  Installation of a package with such
    a file now uses a site Makevars file in the same way as a package
    with a src/Makevars.win file would.
  * configure is now passed crucial variables such as CC and CFLAGS
    in its environment, as many packages were not setting them (as
    documented in 'Writing R Extensions' SS1.2).
    This has most effect where configure is used to compile parts of
    the package - most often by cmake or libtool which obfuscate the
    actual compile commands used.
    Also used for configure.win and configure.ucrt on Windows.
  FORTRAN FLAGS:
  * The flag -fno-optimize-sibling-calls is no longer forced for
    gfortran 7 and later.  It should no longer be needed now using
    'hidden' character-length arguments when calling BLAS/LAPACK
    routines from C/C++ is the default even for packages.  (Unless
    perhaps packages call Fortran code from C/C++ without using R's
    headers and without allowing for these arguments.)
  C-LEVEL FACILITIES:
  * The deprecated S-compatibility macros DOUBLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * The deprecated legacy typedefs of Sint and Sfloat in header R.h
    are no longer defined, and that header no longer includes header
    limits.h from C nor climits from C++.
  * New macro CAD5R() is provided in Rinternals.h and used in a few
    places in the R sources.
  * ALTREP now supports VECSXP vectors. Contributed by Gabor Csardi
    in PR#17620.
  * The Rcomplex definition (in header R_ext/Complex.h) has been
    extended to prevent possible mis-compilation when interfacing
    with Fortran (PR#18430).  The new definition causes compiler
    warnings with static initializers such as {1, 2}, which can be
    changed to {.r=1, .i=2}.
    Using the new definition from C++ depends on compiler extensions
    supporting C features that have not been incorporated into the
    C++ standards but are available in g++ and clang++: this may
    result in C++ compiler warnings but these have been worked around
    for recent versions of common compilers (GCC, Apple/LLVM clang,
    Intel).
    It is intended to change the inclusion of header R_ext/Complex.h
    by other R headers, so C/C++ code files which make use of
    Rcomplex should include that header explicitly.
  UTILITIES:
  * R CMD check does more checking of package .Rd files, warning
    about invalid email addresses and (some) invalid URIs and noting
    empty \item labels in description lists.
  * R CMD check now also reports problems when reading package news
    in md (file NEWS.md) and (optionally) plain text (file NEWS)
    formats.
  * _R_CHECK_TIMINGS_ defaults to a value from the environment even
    for R CMD check --as-cran; this allows for exceptionally fast or
    slow platforms.
    It now applies to checking PDF and HTML versions of the manuals,
    and 'checking CRAN incoming feasibility'.
  * R CMD check can optionally (but included in --as-cran) check
    whether HTML math rendering _via_ KaTeX works for the package .Rd
    files.
  * Non-interactive debugger invocations can be trapped by setting
    the environment variable _R_CHECK_BROWSER_NONINTERACTIVE_ to a
    true value.  This is enabled by R CMD check --as-cran to detect
    the use of leftover browser() statements in the package.
  * The use of sprintf and vsprintf from C/C++ has been deprecated in
    macOS 13 and is a known security risk.  R CMD check now reports
    (on all platforms) if their use is found in compiled code:
    replace by snprintf or vsnprintf respectively. [*NB:* whether
    such calls get compiled into the package is platform-dependent.]
  * Where recorded at installation, R CMD check reports the C and
    Fortran compilers used to build R.
    It reports the OS in use (if known, as given by osVersion) as
    well as that R was built for.
    It notes if a C++ standard was specified which is older than the
    current default: many packages have used C++11 to mean 'not
    C++98' - as C++11 is the minimum supported since R 4.0.0, that
    specification can probably be removed.
  * R CMD INSTALL reports the compilers (and on macOS, the SDK) used,
    and this is copied to the output of R CMD check.
    Where a C++ standard is specified, it is reported.
  * R CMD check's 'checking compilation flags in Makevars' has been
    relaxed to accept the use of flags such as -std=f2008 in
    PKG_FFLAGS.
  * tools::buildVignettes() has a new argument skip, which is used by
    R CMD check to skip (and note) vignettes with unavailable
    \VignetteDepends (PR#18318).
  * New generic .AtNames() added to enable class-specific completions
    after @. The formerly internal function findMatches() is now
    exported, mainly for use in methods for .DollarNames() and
    .AtNames().
  DEPRECATED AND DEFUNCT:
  * default.stringsAsFactors() is defunct.
  * Calling as.data.frame.&lt;class&gt;() directly (for 12 atomic classes)
    is going to be formally deprecated, currently activated by
    setting the environment variable
    _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ to non-empty, which also
    happens in R CMD check --as-cran.
  BUG FIXES:
  * Hashed environments with sizes less than 5 can now grow.
    (Reported to R-devel by Duncan Garmonsway.)
  * as.character(&lt;Rd&gt;, deparse = TRUE) failed to re-escape curly
    braces in LaTeX-like text.  (Reported by Hadley Wickham in
    PR#18324.)
  * library() now passes its lib.loc argument when requiring Depends
    packages; reported (with fix) in PR#18331 by Mikael Jagan.
  * R CMD Stangle: improved message about 'Output' files.
  * head(x, n) and tail(x, n) now signal an error if n is not
    numeric, instead of incidentally "working" sometimes returning
    all of x.  Reported and discussed by Colin Fay, in PR#18357.
  * The "lm" method for summary() now gives the correct F-statistic
    when the model contains an offset.  Reported in PR#18008.
  * C() and `contrasts&lt;-`() now preserve factor level names when
    given a function object (as opposed a function name which did
    preserve names). Reported in PR#17616.
  * c(a = 1, 2)[[]] no longer matches 2 but rather signals a
    _classed_ error.  Reported and analysed by Davis Vaughan in
    PR#18367, a duplicate of PR#18004, by Jan Meis et al.  For
    consistency, NULL[[]] is also erroneous now.  x[[]] &lt;- v gives an
    error of the same class "MissingSubscriptError".
  * The relist() function of utils now supports NULL elements in the
    skeleton (PR#15854).
  * ordered(levels = *) (missing x) now works analogously to factor(,
    ordered=TRUE); reported (with fix) by Achim Zeileis in PR#18389.
  * User-defined Rd macro definitions can now span multiple lines,
    thanks to a patch from Duncan Murdoch. Previously, the Rd parser
    silently ignored everything after the first line.
  * Plain-text help (tools::Rd2txt()) now preserves an initial blank
    line for text following description list items.
  * tools::Rd2HTML() and tools::Rd2latex() no longer split \arguments
    and \value lists at Rd comments.
  * tools::Rd2latex() now correctly handles optional text outside
    \items of argument lists as well as bracketed text at the
    beginning of sections, e.g., \value{[NULL]}.
  * as.character(&lt;POSIXt&gt;) now behaves more in line with the methods
    for atomic vectors such as numbers, and is no longer influenced
    by options().  Ditto for as.character(&lt;Date&gt;).  The
    as.character() method gets arguments digits and OutDec with
    defaults _not_ depending on options().  Use of as.character(*,
    format = .) now warns.
  * Similarly, the as.character.hexmode() and *.octmode() methods
    also behave as good citizen methods and back compatibility option
    keepStr = TRUE.
  * The as.POSIXlt(&lt;POSIXlt&gt;) and as.POSIXct(&lt;POSIXct&gt;) default
    methods now do obey their tz argument, also in this case.
  * as.POSIXlt(&lt;Date&gt;) now does apply a tz (time zone) argument, as
    does as.POSIXct(); partly suggested by Roland Fuss on the R-devel
    mailing list.
  * as.Date.POSIXlt(x) now also works when the list components are of
    unequal length, aka "partially filled" or "ragged".
  * expand.model.frame() looked up variables in the wrong environment
    when applied to models fitted without data.  Reported in
    PR#18414.
  * time() now (also) uses the ts.eps = getOption("ts.eps") argument
    and thus by default rounds values very close to the start (or
    end) of a year.  Based on a proposal by Andre"i V. Kostyrka on
    R-help.
  * Printing of a factanal() result with just one factor and sort =
    TRUE now works regularly, fixing PR#17863 by Timothy Bates,
    thanks to the 'R Contributors' working group.
  * Printing 0-length objects of class "factor", "roman", "hexmode",
    "octmode", "person", "bibentry", or "citation" now prints
    something better, one of which fixes PR#18422, reported by
    Benjamin Feakins.
  * Sys.timezone() queries timedatectl only if systemd is loaded;
    addressing a report by Jan Gorecki in PR#17421.
  * The formula method of cor.test() had scoping problems when
    environment(formula) was not the calling environment; reported
    with a patch proposal by Mao Kobayashi in PR#18439.
  * attach() of an environment with active bindings now preserves the
    active bindings.  Reported by Kevin Ushey in PR#18425.
  * BLAS detection now works also with system-provided libraries not
    available as regular files.  This fixes detection of the
    Accelerate framework on macOS since Big Sur.  Reported by David
    Novgorodsky.
  * download.file() gives a helpful error message in case of an
    invalid download.file.method option, thanks to Colin Fay's report
    in PR#18455.
  * Sporadic crashes of Rterm when using completion have been fixed.
  * Rprof() is now more reliable.  A livelock in thread
    initialization with too short sampling interval has been fixed on
    macOS.  A deadlock in using the C runtime has been fixed on
    Windows.  A potential deadlock has been prevented on Unix.
  * Cursor placement in Rgui now works even after a fixed-width font
    is selected.
  * Mandatory options (options()) are now set on startup so that
    saving and restoring them always works (PR#18372).
  * Package installation, R CMD INSTALL or install.packages(*), now
    parses each of the &lt;pkg&gt;/R/*.R files individually instead of
    first concatenating and then parse()ing the large resulting file.
    This allows parser or syntax errors to be diagnosed with correct
    file names and line numbers, thanks to Simon Dedman's report and
    Bill Dunlap's patch in PR#17859.
    This _does_ require syntactically self contained R source files
    now, fixing another inadvertent bug.
  * predict.lm(&lt;model with offset&gt;) now finds the offset in the
    correct environment, thanks to Andr'e Gillibert's report and patch
    in PR#18456.
  * getInitial(&lt;formula&gt;) now finds the selfStart model in the
    correct environment.  (Reported by Ivan Krylov in PR#18368.)
  * Fix for possible segfault when using recently-added graphics
    features, such as gradients, clipping paths, masks, and groups
    with pdf(file=NULL).
  * class(m) &lt;- class(m) no longer changes a matrix m by adding a
    class _attribute_.
  * packageDate(pkg) now only warns once if there is no pkg.
  * When ts() creates a multivariate time series, "mts", it also
    inherits from "array" now, and is.mts() is documented _and_
    stricter.
  * Rd2txt() now preserves line breaks of \verb Rd content and from
    duplicated \cr.  The former also fixes the rendering of verbatim
    output from Rd \Sexpr in plain-text help.
  * uniroot(f, interval) should no longer wrongly converge _outside_
    the interval in some cases where abs(f(x)) == Inf for an x at the
    interval boundary, thanks to posts by Ben Bolker and Serguei
    Sokol on R-devel.
  * Vectorized alpha handling in palette functions such as in gray(),
    rainbow(), or hcl.colors() works correctly now, thanks to Achim
    Zeileis' report and patch in PR#18476.
  * Formatting and print()ing of bibentry objects has dropped the
    deprecated citation.bibtex.max argument, such that the bibtex
    argument's default for print.bibentry() depends directly on the
    citation.bibtex.max option, whereas in format.bibentry() the
    option no longer applies.
  * Attempting to use a character string naming a foreign function
    entry point in a foreign function call in a package will now
    signal an error if the packages has called R_forceSymbols to
    specify that symbols must be used.
  * An error in table() could permanently set options(warn=2)
    promoting all subsequent warnings to errors.
  * The sigma() function gave misleading results for binary GLMs.  A
    new method for objects of class "glm" returns the square root of
    the estimate of the dispersion parameter using the same
    calculation as summary.glm().
  * bs() and ns() in the (typical) case of automatic knot
    construction, when some of the supposedly inner knots coincide
    with boundary knots, now moves them inside (with a warning),
    building on PR#18442 by Ben Bolker.
  * R CMD on Windows now skips the site profile with --no-site-file
    and --vanilla even when R_PROFILE is set (PR#18512, from Kevin
    Ushey).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1686916800">- CHANGES IN R 4.3.1:
  C-LEVEL FACILITIES:
  * The C-level API version of R's integrate(), Rdqags() in Applic.h,
    now returns the correct number of integrand evaluations neval,
    fixing PR#18515 reported and diagnosed by Stephen Wade.
  * The C prototypes for LAPACK calls dspgv and dtptrs in
    R_exts/Lapack.h had one too many and one too few character length
    arguments - but this has not caused any known issues. To get the
    corrected prototypes, include
    [#]include &lt;Rconfig.h&gt; // for PR18534fixed
    [#]ifdef PR18534fixed
    [#] define usePR18534fix 1
    [#]endif
    [#]include &lt;R_exts/Lapack.h&gt;
    in your C/C++ code (PR#18534).
  INSTALLATION:
  * Many of the checks of esoteric Internet operations and those
    using unreliable external sites have been moved to a new target
    that is not run by default and primarily intended for the core
    developers.  To run them use
    cd tests; make test-Internet-dev
  BUG FIXES:
  * .S3methods(), typically called from methods(), again marks
    methods from package base as visible.
    Also, the visibility of non-base methods is again determined by
    the method's presence in search().
  * tools::Rdiff() is now more robust against invalid strings, fixing
    installation tests on Windows without Rtools installed
    (PR#18530).
  * Fix (new) bug in hcl.colors(2, *), by Achim Zeileis (PR#18523).
  * head(., &lt;illegal&gt;) and tail(..) now produce more useful "Error in
    ...." error messages, fixing PR#18362.
  * Package code syntax on Windows is checked in UTF-8 when UTF-8 is
    the native encoding.
  * na.contiguous(x) now also returns the first run, when it is at
    the beginning and there is a later one of the same length;
    reported to R-devel, including a fix, by Georgi Boshnakov.
    Further, by default, it modifies only an existing attr(*,"tsp")
    but otherwise no longer sets one.
  * chol(&lt;not pos.def&gt;, pivot = &lt;T|F&gt;) now gives a correct error or
    warning message (depending on pivot), thanks to Mikael Jagan's
    (PR#18541).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1699012800">- CHANGES IN R 4.3.2:
  NEW FEATURES:
  * The default initialization of the "repos" option from the
    repositories file at startup can be skipped by setting
    environment variable R_REPOSITORIES to NULL such that
    getOption("repos") is empty if not set elsewhere.
  * qr.X() is now an implicit S4 generic in methods.
  * iconv(to = "ASCII//TRANSLIT") is emulated using substitution on
    platforms which do not support it (notably Alpine Linux).  This
    should give a human-readable conversion in ASCII on all platforms
    (rather than NA_character_).
  * trans3d() gains options continuous and verbose addressing the
    problem of possible "wrap around" when projecting too long
    curves, as reported by Achim Zeileis in PR#18537.
  * tools::showNonASCII() has been rewritten to work better on macOS
    14 (which has a changed implementation of iconv()).
  * tiff(type = "quartz") (the default on macOS) now warns if
    compression is specified: it continues to be ignored.
  INSTALLATION on a UNIX-ALIKE:
  * There is some support for building with Intel's LLVM-based
    compilers on x86_64 Linux, such as (C) icx, (C++) ipcx and
    (Fortran) ifx from oneAPI 2023.x.y.
  * There is support for using LLVM's flang-new as the Fortran
    compiler from LLVM 16.0.x (preferably 17.0.0 or later).
  UTILITIES:
  * R CMD check reports the use of the Fortran 90 random number
    generator RANDOM_NUMBER() and the subroutines to initialize it.
    'Writing R Extensions' has example code to use R's RNGs from
    Fortran.
  BUG FIXES:
  * substr(x, n, L) &lt;- cc now works (more) correctly for multibyte
    UTF-8 strings x when L &gt; nchar(x), thanks to a report and patch
    by 'Architect 95'.
  * contrib.url(character()) now returns 0-length character() as
    documented, which also avoids spurious warnings from
    available.packages() et al. in the edge case of an empty vector
    of repository URLs.
  * readChar(., 4e8) no longer fails, thanks to Kodi Arfer's report
    (PR#18557).
  * lapply(&lt;list&gt;, as.data.frame) no longer warns falsely for some
    base vector components.
  * Communication between parent and child processes in the multicore
    part of parallel could fail on platforms that do not support an
    arbitrarily large payload in system functions read()/write() on
    pipes (seen on macOS where a restriction to INT_MAX bytes is
    documented, without doing a partial read unlike Linux). The
    payload is now split into 1Gb chunks to avoid that problem.
    (PR#18571)
  * qqplot(x,y, conf.level=.) gives better confidence bounds when
    length(x) != length(y), thanks to Alexander Ploner's report and
    patch proposal (PR#18557).
  * norm(&lt;0-length&gt;, "2") now gives zero instead of an error, as all
    the other norm types, thanks to Mikael Jagan's PR#18542.
  * Build-stage Rd macros \packageAuthor and \packageMaintainer now
    process Authors@R, fixing NA results when the package DESCRIPTION
    omits Author and Maintainer fields.
  * Formatting and printing complex numbers could give things like
    0.1683-0i because of rounding error: -0i is now replaced by +0i.
  * postscript() refused to accept a title comment containing the
    letter "W" (PR#18599).
  * isoreg(c(1,Inf)) signals an error instead of segfaulting, fixing
    PR#18603.
  * tiff(type = "Xlib") was only outputting the last page of
    multi-page plots.
  * tools::latexToUtf8() again knows about \~{n} and other letters
    with tilde, fixing a regression in R 4.3.0, and about \^{i} as an
    alternative to \^{\i} (similarly with other accents).
    Furthermore, LaTeX codes for accented I letters are now correctly
    converted, also fixing related mistakes in
    tools::encoded_text_to_latex().
  * tar(*, tar = "internal") no longer creates out-of-spec tar files
    in the very rare case of user or group names longer than 32
    bytes, fixing PR#17871 with thanks to Ivan Krylov.
  * When using the "internal" timezone datetime code, adding a
    fraction of a second no longer adds one second, fixing PR#16856
    from a patch by Ivan Krylov.
  * tools::checkRd() no longer produces spurious notes about
    "unnecessary braces" from multi-line Rd results of \Sexpr macros.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1709208000">- CHANGES IN R 4.3.3:
  NEW FEATURES:
  * iconv() now fixes up variant encoding names such as "utf8"
    case-insensitively.
  DEPRECATED AND DEFUNCT:
  * The legacy encoding = "MacRoman" is deprecated in pdf() and
    postscript(): support was incomplete in earlier versions of R.
  BUG FIXES:
  * Arguments are now properly forwarded to methods on S4 generics
    with ... in the middle of their formal arguments. This was broken
    for the case when a method introduced an argument but did not
    include ... in its own formals. Thanks to Herv'e Pag`es for the
    report PR#18538.
  * Some invalid file arguments to pictex(), postscript() and xfig()
    opened a file called NA rather than throw an error.  These
    included postscript(NULL) (which some people expected to work
    like pdf(NULL)).
  * Passing filename = NA to svg(), cairo_pdf(), cairo_ps() or the
    Cairo-based bitmap devices opened a file called NA: it now throws
    an error.
  * quartz(file = NA) opened a file called NA, including when used as
    a Quartz-based bitmap device.  It now gives an error.
  * rank(&lt;long vector&gt;) now works, fixing PR#18617, thanks to Ilia
    Kats.
  * seq.int() did not adequately check its length.out argument.
  * match(&lt;POSIXct&gt;, .) is correct again for differing time zones,
    ditto for "POSIXlt", fixing PR#18618 reported by Bastian Klein.
  * drop.terms(*, dropx = &lt;0-length&gt;) now works, fixing PR#18563 as
    proposed by Mikael Jagan.
  * drop.terms(*) keeps + offset(.) terms when it should, PR#18565,
    and drop.terms() no longer makes up a response, PR#18566, fixing
    both bugs thanks to Mikael Jagan.
  * getS3method("t", "test") no longer finds the t.test() function,
    fixing PR#18627.
  * pdf() and postscript() support for the documented Adobe encodings
    "Greek" and "Cyrilllic" was missing (although the corresponding
    Windows' codepages could be used).
  * Computations of glyph metric information for pdf() and
    postscript() did not take into account that transliteration could
    replace one character by two or more (only seen on macOS 14) and
    typically warned that the information was not known.
  * rank(x) no longer overflows during integer addition, when
    computing rank average for largish but not-yet long vector x,
    fixing PR#18630, thanks to Ilia Kats.
  * list.files() on Windows now returns also files with names longer
    that 260 bytes (the Windows limit is 260 characters).
    Previously, some file names particularly with 'East Asian'
    characters were omitted.
  * cov2cor(&lt;0 x 0&gt;) now works, fixing PR#18423 thanks to Mikael
    Jagan and Elin Waring.
  * cov2cor(&lt;negative diagonal&gt;) and similar now give one warning
    instead of two, with better wording, fixing PR#18424 thanks to
    Mikael Jagan.
  * tools:: startDynamicHelp() now ensures port is in proper range,
    fixing PR#18645.
  * pbeta(x, a,b) is correct now for x=0 or 1 in the boundary cases
    where a or b or both are 0, fixing PR#18672 thanks to Michael
    Fay.
  * pmatch(x, table) for large table, also called for data frame row
    selection, dfrm[nm, ], is now interruptible, fixing PR#18656.
  * predict(&lt;rank-deficient lm&gt;, newdata=*) fix computing of nbasis,
    see Russ Lenth's comment 29 in PR#16158.
  * Added a work-around for a bug in macOS 14.3.1 and higher which
    prevents R plots in the Quartz Cocoa device from updating on
    screen.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1713960000">- CHANGES IN R 4.4.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Startup banners, R --version, sessionInfo() and R CMD check no
    longer report (64-bit) as part of the platform as this is almost
    universal - the increasingly rare 32-bit platforms will still
    report (32-bit).
    On Windows, ditto for window titles.
  * is.atomic(NULL) now returns FALSE, as NULL is not an atomic
    vector.  Strict back-compatibility would replace is.atomic(foo)
    by (is.null(foo) || is.atomic(foo)) but should happen only
    sparingly.
  NEW FEATURES:
  * The confint() methods for "glm" and "nls" objects have been
    copied to the stats package.  Previously, they were stubs which
    called versions in package MASS. The MASS namespace is no longer
    loaded if you invoke (say) confint(glmfit).  Further, the "glm"
    method for profile() and the plot() and pairs() methods for class
    "profile" have been copied from MASS to stats.  (profile.nls()
    and plot.profile.nls() were already in stats.)
  * The confint() and profile methods for "glm" objects have gained a
    possibility to do profiling based on the Rao Score statistic in
    addition to the default Likelihood Ratio. This is controlled by a
    new test = argument.
  * The pairs() method for "profile" objects has been extended with a
    which = argument to allow plotting only a subset of the
    parameters.
  * The "glm" method for anova() computes test statistics and
    p-values by default, using a chi-squared test or an F test
    depending on whether the dispersion is fixed or free.  Test
    statistics can be suppressed by giving argument test a false
    logical value.
  * In setRepositories() the repositories can be set using their
    names via name = instead of index ind =.
  * methods() and .S3methods() gain a all.names option for the (rare)
    case where functions starting with a . should be included.
  * Serializations can now be interrupted (e.g., by Ctrl-C on a
    Unix-alike) if they take too long, e.g., from save.image(),
    thanks to suggestions by Ivan Krylov and others on R-devel.
  * New startup option --max-connections to set the maximum number of
    simultaneous connections for the session.  Defaults to 128 as
    before: allowed values up to 4096 (but resource limits may in
    practice restrict to smaller values).
  * R on Windows (since Windows 10 2004) now uses the new Segment
    Heap allocator. This may improve performance of some
    memory-intensive applications.
  * When R packages are built, typically by R CMD build &lt;pkg&gt;, the
    new --user=&lt;build_user&gt; option overrides the (internally
    determined) user name, currently Sys.info()["user"] or LOGNAME.
    This is a (modified) fulfillment of Will Landau's suggestion in
    PR#17530.
  * tools::testInstalledBasic() gets new optional arguments outDir
    and testSrcdir, e.g., allowing to use it in a &lt;builddir&gt; !=
    &lt;srcdir&gt; setup, and in standard "binary" Windows installation
  * if* a source tests/ folder is present.
  * range(&lt;DT_with_Inf&gt;, finite = TRUE) now work for objects of class
    "Date", "POSIXct", and "POSIXlt" with infinite entries,
    analogously to range.default(), as proposed by Davis Vaughan on
    R-devel.  Other range()-methods can make use of new function
    .rangeNum().
  * New .internalGenerics object complementing .S3PrimitiveGenerics,
    for documentation and low-level book-keeping.
  * grid() now invisibly returns the x- and y- coordinates at which
    the grid-lines were drawn.
  * norm(., type) now also works for complex matrices.
  * kappa(., exact = TRUE, norm = *) now works for all norms and also
    for complex matrices.  In symmetric / triangular cases, the new
    argument uplo = "U" | "L" allows the upper or lower triangular
    part to be specified.
  * memDecompress(type = "unknown") recognizes compression in the
    default 'zlib' format as used by memCompress(type = "gzip").
  * memCompress() and memDecompress() will use the libdeflate library
    (&lt;https://github.com/ebiggers/libdeflate&gt;) if installed.  This
    uses the same type of compression for type = "gzip" but is 1.5-2x
    faster than the system libz library on some common platforms: the
    speed-up may depend on the library version.
  * diff() for objects of class "Date", "POSIXct", and "POSIXlt"
    accepts a units argument passed via ....
  * Dynamic help now does a much better job of rendering package
    DESCRIPTION metadata.
  * Rprof() gains an event argument and support for elapsed (real)
    time profiling on Unix (PR#18076).
  * filled.contour() gains a key.border argument.
  * tools::update_pkg_po() gets arguments pot_make and mo_make for
    _not_ re-making the corresponding files, and additionally a
    verbose argument.
  * Hexadecimal string colour specifications are now accepted in
    short form, so, for example, we can use "#123", which is
    equivalent to "#112233".
    Thanks to MikeFC for the original idea and Ella Kaye, Malcolm
    Barrett, George Stagg, and Hanne Oberman for the patch.
  * Plain-text help shows \var markup by angle brackets.
  * The new experimental primitive function declare() is intended to
    eventually allow information about R code to be communicated to
    the interpreter, compiler, and code analysis tools. The syntax
    for declarations is still being developed.
  * Functions psmirnov(), qsmirnov() and rsmirnov() in package stats
    have had argument two.sided renamed to alternative, to take into
    account that the permutation distributions of the one-sided
    statistics can be different in the case of ties.  Consequence of
    PR#18582.
  * sort() is now an implicit S4 generic in methods.
  * Formatting and printing, format(z), print(z), of complex vectors
    z no longer zap relatively small real or imaginary parts to zero,
    fixing PR#16752.  This is an API change, as it was documented
    previously to round real and imaginary parts together on purpose,
    producing nicer looking output.  As mentioned, e.g. in the PR,
    this change is compatible with many other "R-like" programming
    environments.
    We have simplified the internal code and now basically format the
    real and imaginary parts independently of each other.
  * New experimental functions Tailcall() and Exec() to support
    writing stack-space-efficient recursive functions.
  * Where characters are attempted to be plotted by pdf(),
    postscript() and xfig() which are not in the selected 8-bit
    character set (most often Latin-1) and the R session is using a
    UTF-8 locale, the warning messages will show the UTF-8 character
    rather than its bytes and one dot will be substituted per
    character rather than per byte.  (Platforms whose iconv() does
    transliteration silently plot the transliteration.)
    In a UTF-8 locale some transliterations are now done with a
    warning (e.g., dashes and Unicode minus to hyphen, ligatures are
    expanded, permille (‰) is replaced by o/oo), although the OS may
    have got there first.  These are warnings as they will continue
    to be replaced by dots in earlier versions of R.
  * The matrix multiplication functions crossprod() and tcrossprod()
    are now also primitive and S3 generic, as %*% had become in R
    4.3.0.
  * source() and example() have a new optional argument catch.aborts
    which allows continued evaluation of the R code after an error.
  * The non-Quartz tiff() devices allow additional types of
    compression if supported by the platform's libtiff library.
  * The list of base and recommended package names is now provided by
    tools::standard_package_names().
  * cairo_pdf() and cairo_ps() default to onefile = TRUE to closer
    match pdf() and postscript().
  * New option catch.script.errors provides a documented way to catch
    errors and then continue in non-interactive use.
  * L %||% R newly in base is an expressive idiom for the phrases
    if(!is.null(L)) L else R or if(is.null(L)) R else L.
  * The return value from warnings() now always inherits from
    "warnings" as documented, now also in the case of no warnings
    where it previously returned NULL.
  * as.complex("1i") now returns 0 + 1i instead of NA with a warning.
  * z &lt;- c(NA, 1i) now keeps the imaginary part Im(z[1]) == 0, no
    longer coercing to NA_complex_.  Similarly, cumsum(z) correctly
    sums real and imaginary parts separately, i.e., without
    "crosstalk" in case of NAs.
  * On Alpine Linux iconv() now maps "latin2", "latin-2", "latin9"
    and "latin-9" to encoding names the OS knows about
    (case-insensitively).
  * iconv(sub = "Unicode") now always zero-pads to four (hex) digits,
    rather than to 4 or 8.  (This seems to have become the convention
    once Unicode restricted the number of Unicode points to 2^21 - 1
    and so will never need more than 6 digits.)
  * NCOL(NULL) now returns 0 instead of 1, for consistency with
    cbind().
  * The information for the Euro glyph missing from the Adobe .afm
    files for the Courier, Helvetica and Times families has been
    copied from their URW equivalents - this will improve vertical
    centring in the pdf() and postscript() devices.
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.12.0.  The changes are almost entirely cosmetic.
  * The included LAPACK sources have been updated to version 3.12.0
    and some further double-complex routines added.
  * There are new font families for the 2014--5 URW 2.0 fonts (see
    ?pdf) which are included in recent versions of Ghostscript.
    These have font widths for most Greek glyphs and a few others
    which were missing from the original versions (whose font
    families remain available for reproducibility, although
    Ghostscript-based viewers will render using the 2.0 versions).
  * Improve the large-n efficiency of as.matrix(&lt;dist&gt;), thanks an R
    contributors effort, notably by Tim Taylor and Heather Turner,
    see PR#18660.
  * The default and numeric methods of all.equal() get a check.class
    option.
  * zapsmall() gets new optional arguments, function mFUN and min.d,
    for extra flexibility; fulfills a wish in PR#18199.  Also, it is
    now an implicit S4 generic in package methods.
  * The Rd filter for aspell() gains an ignore argument.
  * New generic function sort_by(), primarily useful for the
    data.frame method which can be used to sort rows of a data frame
    by one or more columns.
  * The icence headers for the RPC code in src/extra/xdr have been
    updated to use the GPL-compatible licence published by Oracle
    America in 2010.
  * New function pkg2HTML() in tools to create single-page HTML
    reference manuals for R packages.
  * The byte code evaluator now uses less C stack space for recursive
    calls to byte-compiled functions. It also makes more of an effort
    to avoid allocations for scalar return values.
  * New completion option backtick (disabled by default) allows
    non-syntactic completions to be wrapped in backquotes. This is
    currently only useful for Jupyter notebooks via the IRkernel
    package, and may cause problems for other backends.
  INSTALLATION:
  * The parser has been updated to work with bison 3.8.2, which is
    now used for the pre-generated parsers in gram.c, file.c, and
    gramRd.c. A few parser error messages have changed, which may
    affect code that relies on exact messages.
  INSTALLATION on a UNIX-ALIKE:
  * System valgrind headers are now required to use configure option
  - -with-valgrind-instrumentation with value 1 or 2.
  * configure will warn if it encounters a 32-bit build, as that is
    nowadays almost untested.
  * Environment variable R_SYSTEM_ABI is no longer used and so no
    longer recorded in etc/Renviron (it was not on Windows and was
    only ever used when preparing package tools).
  * If the libdeflate library and headers are available, libdeflate
    rather than libz is used to (de)compress R objects in lazy-load
    databases.  Typically tasks spend up to 5% of their time on such
    operations, although creating lazy-data databases is one of the
    exceptions.
    This can be suppressed if the library is available by the
    configure option --without-libdeflate-compression.
  * configure option --enable-lto=check has not worked reliably since
    2019 and has been removed.
  * The minimum autoconf requirement for a maintainer build has been
    increased to autoconf 2.71.
    It is intended to increase this to 2.72 for R 4.5.0: the
    distributed configure file was generated using 2.72.
  * The minimum version requirement for an external LAPACK has been
    reduced to 3.9.0.
  * No default C++ compiler is set if no C++17 compiler is detected:
    there is no longer an automatic fallback to C++14 or C++11.
    Compilers from the last five years should have sufficient
    support: for others macros CXX and CXXSTD can be set in file
    config.site to provide a fallback if needed.
    The Objective-C++ compiler now by default uses the standard
    selected by R for C++ (currently C++17) rather than the default
    standard for the C++ compiler (which on macOS is still C++98).
  INSTALLATION on macOS:
  * A new configure option --with-newAccelerate makes use of Apple's
    'new' BLAS / LAPACK interfaces in their Accelerate framework.
    Those interfaces are only available in macOS 13.3 or later, and
    building requires SDK 13.3 or later (from the Command Line Tools
    or Xcode 14.3 or later).
    By default the option uses new Accelerate for BLAS calls: to also
    use it for LAPACK use option --with-newAccelerate=lapack.  The
    later interfaces provide LAPACK 3.9.1 rather than 3.2.1: 3.9.1 is
    from 2021-04 and does not include the improved algorithms
    introduced in LAPACK 3.10.0 (including for BLAS calls).
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools44, an update of the Rtools43 toolchain.  It is
    based on GCC 13 and newer versions of MinGW-W64, binutils and
    libraries (targeting 64-bit Intel CPUs).  R-devel can no longer
    be built using Rtools43 without changes.
  * Rtools44 has experimental support for 64-bit ARM (aarch64) CPUs
    _via_ the LLVM 17 toolchain using lld, clang/flang-new and
    libc++.
  UTILITIES:
  * R CMD check notes when S4-style exports are used without
    declaring a strong dependence on package methods.
  * tools::checkRd() (used by R CMD check) detects more problems with
    \Sexpr-based dynamic content, including bad nesting of \Sexprs
    and invalid arguments.
  * tools::checkRd() now reports Rd titles and section names ending
    in a period; this is ignored by R CMD check unless environment
    variable _R_CHECK_RD_CHECKRD_MINLEVEL_ is set to -5 or smaller.
  * R CMD check now notes Rd files without an \alias, as long
    documented in 'Writing R Extensions' §1.3.1.  The check for a
    missing \description has been moved from tools::checkRd() to
    tools::checkRdContents().
  * R CMD check now visits inst/NEWS.Rd and OS-specific man
    subdirectories when checking Rd files.
  * tools::checkDocFiles() and tools::checkRdContents() now also
    check internal Rd files by default, but "specially" (ignoring
    missing documentation of arguments).
  * R CMD Rdiff gets option --useEx.
  * R CMD check now warns on non-portable uses of Fortran KIND such
    as INTEGER(KIND=4) and REAL(KIND=8).
    To see the failing lines set environment variable
    _R_CHECK_FORTRAN_KIND_DETAILS_ to a true value.
  * When checking Rd files, R CMD check now notes some of the "lost
    braces" that tools::checkRd() finds.  Typical problems are Rd
    macros missing the initial backslash (e.g., code{...}), in-text
    set notation (e.g., {1, 2}, where the braces need escaping), and
    \itemize lists with \describe-style entries of the form
    \item{label}{description}.
  * R CMD INSTALL (and hence check) will compile C++ code with
  - DR_NO_REMAP if environment variable _R_CXX_USE_NO_REMAP_ is set
    to a true value.  It is planned that this will in future become
    the default for compiling C++.
  * The new built-in Rd macro \dontdiff{} can be used to mark example
    code whose output should be ignored when comparing check output
    to reference output (tests/Examples/&lt;pkg&gt;-Ex.Rout.save).  The
    \dontdiff tag, like \donttest, is _not_ shown on the rendered
    help page, so provides a clean alternative to ##
    IGNORE_RDIFF_(BEGIN|END) comments.
  * R CMD build when there is no NAMESPACE, now uses the recommended
    exportPattern("^[^.]"), instead of exporting everything.
  * R CMD check now warns about non-ASCII characters in the NAMESPACE
    file (in addition to R files). Such packages are not portable and
    may fail to install on some platforms.
  C-LEVEL FACILITIES:
  * Headers R_ext/Applic.h and R-ext/Linpack.h used to include
    R_ext/BLAS.h although this was undocumented and unneeded by their
    documented entry points.  They no longer do so.
  * New function R_missing(), factored out from do_missing(), used to
    fix PR#18579.
  * SEXP type S4SXP has been renamed to OBJSXP to support
    experimenting with alternative object systems.  The S4SXP value
    can still be used in C code but is now deprecated.  Based on
    contributions from the R Consortium's Object-Oriented Programming
    Working Group.
  * New function pow1p(x,y) for accurate (1+x)^y.
  * mkCharLenCE was incorrectly documented to take a size_t length
    but was implemented with int (and character strings in R are
    limited to 2^31 - 1 bytes).
  DEPRECATED AND DEFUNCT:
  * data() no longer handles zipped data from long-defunct (since R
    2.13.0) --use-zip-data installations.
  * The legacy graphics devices pictex() and xfig() are now
    deprecated.  They do not support recent graphics enhancements and
    their font handling is rudimentary. The intention is to retain
    them for historical interest as long as they remain somewhat
    functional.
  * Support for encoding = "MacRoman" has been removed from the pdf()
    and postscript() devices - this was a legacy encoding supporting
    classic macOS up to 2001 and no longer has universal libiconv
    support.
  * is.R() is deprecated as no other S dialect is known to be in use
    (and this could only identify historical dialects, not future
    ones).
    Further information on calls can be obtained by setting the
    environment variable _R_DEPRECATED_IS_R_ to error which turns the
    deprecation warning into an error and so by default gives a
    traceback.  (This is done by R CMD check --as-cran.)
  * UseMethod() no longer forwards local variables assigned in the
    generic function into method call environments before evaluating
    the method body. This makes method calls behave more like
    standard function calls and makes method code easier to analyze
    correctly.
  * The twelve as.data.frame.&lt;class&gt;() methods which were deprecated
    only via _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ and in R CMD
    check --as-cran are formally deprecated now in favour of calling
    as.data.frame() or as.data.frame.vector().  The deprecation
    "check" now works also when as.data.frame() is S4 generic thanks
    to Ivan Krylov.
  * The default method for the directional comparison operators &lt;, &gt;,
    &lt;=, and &gt;= now signals an error when one of the operands is a
    language object, i.e. a symbol or a call.
  * For terms.formula(), deprecate abb and neg.out arguments
    _formally_ in addition to just documenting it.
  BUG FIXES:
  * The methods package is more robust to not being attached to the
    search path.  More work needs to be done.
  * pairwise.t.test() misbehaved when subgroups had 0 DF for
    variance, even with pool.sd = TRUE.  (PR#18594 by Jack Berry).
  * Probability distribution functions [dpq]&lt;distrib&gt;(x, *), but also
    bessel[IKJY](x, .) now consistently preserve attributes(x) when
    length(x) == 0, e.g., for a 2 x 0 matrix, thanks to Karolis
    Koncevičius' report PR#18509.
  * Group "Summary" computations such as sum(1:3, 4, na.rm = 5, NA,
    7, na.rm = LL) now give an error instead of either 17 or NN for
    LL true or false, as proposed by Ivan Krylov on the R-devel
    mailing list.  (This also means it is now an error to specify
    na.rm more than once.)
  * as.complex(x) now returns complex(real = x, imaginary = 0) for
    _all_ numerical and logical x, notably also for NA or
    NA_integer_.
  * Directories are now omitted by file.copy(, recursive = FALSE) and
    in file.append() (PR#17337).
  * gsub() and sub() are now more robust to integer overflow when
    reporting errors caused by too large input strings (PR#18346).
  * Top-level handlers are now more robust to attempts to remove a
    handler whilst handlers are running (PR#18508).
  * The handling of Alt+F4 in dialogs created on Windows using
    GraphApp has been fixed (PR#13870).
  * density() more consistently computes grid values for the
    FFT-based convolution, following Robert Schlicht's analysis and
    proposal in PR#18337, correcting density values typically by a
    factor of about 0.999.  Argument old.coords = TRUE provides back
    compatibility.
  * palette.colors() gains a name argument that defaults to FALSE
    controlling whether the vector of colours that is returned has
    names (where possible).  PR#18529.
  * tools::xgettext() no longer extracts the (non-translatable) class
    names from warningCondition and errorCondition calls.
  * S3method(&lt;gen&gt;, &lt;class&gt;, &lt;func&gt;) in the NAMESPACE file now works
    (again) when &lt;func&gt; is visible from the namespace, e.g.,
    imported, or in base.
  * getParseData(f) now also works for a function defined in the
    first of several &lt;pkg&gt;/R/*.R source files, thanks to Kirill
    Müller's report and Duncan Murdoch's patch in PR#16756.
  * Rd \Sexpr macros with nested #ifdef conditionals were not
    processed.
  * A non-blocking connection with non-default encoding (such as a
    socket) now correctly returns from readLines() after new data has
    arrived also when its EOF had been reached previously.  Thanks to
    Peter Meilstrup's report on R-devel and Ivan Krylov's report and
    patch proposal in PR#18555.
  * tools::checkRdContents() failed to detect empty argument
    descriptions when they spanned multiple lines, including those
    generated by prompt().  These cases are now noted by R CMD check.
  * Plain-text help no longer outputs spurious colons in the
    arguments list (for multi-line \item labels in the Rd source).
  * kappa() and rcond() work correctly in more cases; kappa(., norm =
    "2") now warns that it computes the 1-norm with (default) exact =
    FALSE; prompted by Mikael Jagan's quite comprehensive PR#18543.
  * Rd skeletons generated by prompt() or promptData() now use a
    dummy title (so R CMD build works).  tools::checkRdContents() has
    been updated to detect such template leftovers, including from
    promptPackage().
  * When S4 method dispatch fails because no method was found, the
    error message now includes the signature argument names; thanks
    to Michael Chirico's proposal on the R-devel list.
  * withAutoprint({ .. }) now preserves srcrefs previously lost,
    thanks to Andrew Simmons' report plus fix in PR#18572.
  * transform.data.frame() no longer adjusts names; in particular,
    untransformed variables are kept as-is, including those with
    syntactically invalid names (PR#17890).
  * The keep.source option for Rd \Sexpr blocks is no longer ignored.
  * The formula methods for t.test() and wilcox.test() now catch when
    paired is passed, addressing PR#14359; use Pair(x1, x2) ~ 1 for a
    paired test.
  * The level reported in the browser prompt was often too large. It
    now shows the number of browser contexts on the stack.
  * For cbind() and rbind(), the optional deparse.level argument is
    now properly passed to methods, thanks to Mikael Jagan's PR#18579
    and comments there.
  * Some error and warning messages for large ('long vector')
    matrix(v, nr, nc) and dim(m) &lt;- d are now correct about sizes,
    using long long formatting, fixing PR#18612 (and more) reported
    by Mikael Jagan.
  * readChar(useBytes = TRUE) now terminates strings even when the
    underlying connection uses extra spaces in the input buffer.
    This fixes problems with extra garbage seen with gzip
    connections, PR#18605.
  * Named capture in PCRE regular expressions now works also with
    more than 127 named groups (PR#18588).
  * Datetime functions are now robust against long jumps when dealing
    with internal time zone changes.  This avoids confusing warnings
    about an invalid time zone, previously triggered by turning
    warnings into errors or handling them via tryCatch (PR#17966,
    PR#17780).
  * Datetime functions now restore even an empty TZ environment
    variable after internal time zone changes (PR#17724).  This makes
    results of datetime functions with this (typically unintentional)
    setting more predictable.
  * drop.terms(*) now drops response as by default, keep.response =
    FALSE, fixing PR#18564 thanks to Mikael Jagan.
  * dummy.coef(.) now also works for lm()-models with character
    categorical predictor variables rather than factor ones, fixing
    PR#18635 reported by Jinsong Zhao.
  * formals(f) &lt;- formals(f) now also works for a function w/o
    arguments and atomic _constant_ body(f).
  * Correct as.function(&lt;invalid list&gt;, .)'s error message.
  * removeSource() is yet more thorough in finding and removing
    "srcref" and the other source references from parsed R language
    chunks, fixing PR#18638 thanks to Andrew Simmons.
  * dgeom() is more accurate now, notably when its result is very
    small, fixing PR#18642 thanks to the proposal of Morten Welinder,
    also improving other instances where C level binom_raw(x, n, ..)
    has x == 0 or x== n.
  * warning() with options(warn = 1) has improved output for
    multi-line messages.
  * axis.Date() and axis.POSIXct() now respect the par("lab") setting
    for the number of pretty() intervals.
  * Comparisons for language objects (which are based on deparsing)
    are now more careful about using accurate deparsed results
    (PR#18676).
  * Plain-text help (Rd2txt) now correctly preserves blank lines
    following single-line \dontrun code.
  * &lt;POSIXlt&gt;[*] no longer sets wrong "balanced" attribute, fixing
    PR#18681 thanks to Mikael Jagan.
  * str(&lt;classed-call&gt;) now deparses the call as expected, fixing
    PR#18684, reported by Dave Slager.
  * In Rd examples, code following the closing brace of a \dontrun,
    \dontshow or \donttest tag on the same line is no longer skipped
    when R CMD check runs the examples.
  * as.data.frame(matrix(*, ncol=0)) now gets valid names() and
    colnames(); reported by Davis Vaughan on the R-devel list.
  * Internal Mathlib function stirlerr(n) is now almost fully
    (52-bit) accurate for all n &gt;= ~5.9 and more accurate also in the
    range 1 -- 5.9.  This entails small ("after 12th decimal")
    changes in density functions, e.g., dgamma() in _some_ regions of
    their support.  The fix was partly prompted by Morten Welinder's
    PR#18640.
  * Numbers like 9876543.2 are now considered non-integer by Mathlib
    internal R_nonint(), amending original fix of PR#15734.
  * Rd comment lines no longer cause broken paragraphs in the
    rendered PDF and plain-text help. In code blocks, pure comment
    lines (starting with %) no longer produce an empty line.
  * xtabs(Freq ~ .) now consistently defaults to na.action = na.pass,
    using na.rm = FALSE (added as an argument) when summing over Freq
    (PR#17770).
  * tools::testInstalledPackage() is no longer silent about failures
    from running examples or tests and its return code no longer
    ignores failures from checking vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1718366400">- CHANGES IN R 4.4.1:
  C-LEVEL FACILITIES:
  * Functions R_atof and R_strtod declared in header R_ext/Utils.h
    are now documented in 'Writing R Extensions' and so formally part
    of the API.
  * The non-API entry points Rf_setSVector, Rf_StringFalse,
    Rf_StringTrue and Rf_isBlankString have been added to those
    reported by R CMD check.
  * The new function Rf_allocLang is now available. This provides an
    alternative to the idiom of calling Rf_allocList followed by
    SET_TYPEOF.
  UTILITIES:
  * R CMD check now reports as warnings what gfortran calls 'Fortran
    2018 deleted features', all of which have long been marked as
    'obsolescent' and some of which were deleted in Fortran 2008 or
    earlier.  Fortran compilers are no longer required to support
    these.
  BUG FIXES:
  * as.numeric(), scan(), type.convert() and other places which use
    the internal C function R_strtod now require a _non-empty_ digit
    sequence in a decimal or binary exponent.  This aligns with the
    C/POSIX standard for strtod and with ?NumericConstants.
  * as.data.frame(m, make.names=NA) now works correctly for a matrix
    m with NA's in row names.
  * The error message from &lt;POSIXlt&gt;[["hour"]] and similar now
    mentions *[[, "hour"]], as wished for in PR#17409 and proposed by
    Michael Chirico.
  * qbinom() and potentially qpois(), qnbinom(), no longer sometimes
    fail accurate inversion (of pbinom(), etc), thanks to Christopher
    Chang's report and patch in PR#18711.
  * The internal help server on Windows can again serve requests sent
    in quick succession, fixing a regression in R 4.4.0.
  * debugcall(&lt;S3Generic&gt;()) now also works when a corresponding
    S4-generic version is in the methods cache (PR#18143).
  * Package tools' toTitleCase(ch0) now returns character(0) when ch0
    is of zero length; fixing PR#18724, reported by David Hugh Jones.
  * R CMD check is no longer broken (without a check result and no
    explanation in 00check.log) for a package which declares an
    invalid VignetteBuilder in DESCRIPTION but has no vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1730376000">- CHANGES IN R 4.4.2:
  C-LEVEL FACILITIES:
  * The S-compatibility macros F77_COM and F77_COMDECL defined in
    header R_ext/RS.h are deprecated and will be removed shortly.  We
    could find no record of their use.
  BUG FIXES:
  * Mathlib function lgammacor(x) no longer warns about underflow to
    zero for large x.
  * Text widths and heights were incorrectly reported by the Quartz
    device if the drawing context didn't exist yet (typically when
    drawing off-screen to a window that is yet to appear, see
    PR#18591).
  * The Quartz device could segfault in cases where paths with spaces
    are used in the new glyph drawing API.  Thanks to Tomek
    Gieorgijewski (PR#18758).
  * On macOS in R CRAN builds, it is again possible to read
    little-endian UTF-16 text with a BOM from a connection using
    encoding="UTF-16".  Users building R from source should avoid
    using the system libiconv in macOS 14.1 and later.
  * methods' internal .requirePackage() now re-enables primitive
    method dispatch when needed; thanks to Ivan Krylov for
    demystifying CRAN package check failures on the R-devel mailing
    list.</changelog>
</package>
<package pkgid="bc3497825943abccf594ecbaf09859b3b8efa331304c7fb7de513ebf1f5a47652231ee5a69b27eeca311440e9116b236423be57b0b373e5d3d17a071f24e05ba" name="R-splines-debuginfo" arch="i586">
  <version epoch="0" ver="4.4.2" rel="51.0.2.2.sr20241103"/>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1620302400">- To get in sync with d:l:R:autoCRAN the Matrix package's split
  in -devel was reversed.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339200">- improved spec file according to comments of dimstar in
  https://build.opensuse.org/request/show/892685</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339201">- CHANGES IN R 4.1.0:
  FUTURE DIRECTIONS:
  * It is planned that the 4.1.x series will be the last to support
    32-bit Windows, with production of binary packages for that
    series continuing until early 2023.
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Data set esoph in package datasets now provides the correct
    numbers of controls; previously it had the numbers of cases added
    to these.  (Reported by Alexander Fowler in PR#17964.)
  NEW FEATURES:
  * www.omegahat.net is no longer one of the repositories known by
    default to setRepositories().  (Nowadays it only provides source
    packages and is often unavailable.)
  * Function package_dependencies() (in package tools) can now use
    different dependency types for direct and recursive dependencies.
  * The checking of the size of tarball in R CMD check --as-cran
    &lt;pkg&gt; may be tweaked via the new environment variable
    _R_CHECK_CRAN_INCOMING_TARBALL_THRESHOLD_, as suggested in
    PR#17777 by Jan Gorecki.
  * Using c() to combine a factor with other factors now gives a
    factor, an ordered factor when combining ordered factors with
    identical levels.
  * apply() gains a simplify argument to allow disabling of
    simplification of results.
  * The format() method for class "ftable" gets a new option justify.
    (Suggested by Thomas Soeiro.)
  * New ...names() utility.  (Proposed by Neal Fultz in PR#17705.)
  * type.convert() now warns when its as.is argument is not
    specified, as the help file always said it _should_.  In that
    case, the default is changed to TRUE in line with its change in
    read.table() (related to stringsAsFactor) in R 4.0.0.
  * When printing list arrays, classed objects are now shown _via_
    their format() value if this is a short enough character string,
    or by giving the first elements of their class vector and their
    length.
  * capabilities() gets new entry "Rprof" which is TRUE when R has
    been configured with the equivalent of --enable-R-profiling (as
    it is by default).  (Related to Michael Orlitzky's report
    PR#17836.)
  * str(xS4) now also shows extraneous attributes of an S4 object
    xS4.
  * Rudimentary support for vi-style tags in rtags() and R CMD rtags
    has been added.  (Based on a patch from Neal Fultz in PR#17214.)
  * checkRdContents() is now exported from tools; it and also
    checkDocFiles() have a new option chkInternal allowing to check
    Rd files marked with keyword "internal" as well.  The latter can
    be activated for R CMD check via environment variable
    _R_CHECK_RD_INTERNAL_TOO_.
  * New functions numToBits() and numToInts() extend the raw
    conversion utilities to (double precision) numeric.
  * Functions URLencode() and URLdecode() in package utils now work
    on vectors of URIs.  (Based on patch from Bob Rudis submitted
    with PR#17873.)
  * path.expand() can expand ~user on most Unix-alikes even when
    readline is not in use.  It tries harder to expand ~, for example
    should environment variable HOME be unset.
  * For HTML help (both dynamic and static), Rd file links to help
    pages in external packages are now treated as references to
    topics rather than file names, and fall back to a file link only
    if the topic is not found in the target package. The earlier rule
    which prioritized file names over topics can be restored by
    setting the environment variable _R_HELP_LINKS_TO_TOPICS_ to a
    false value.
  * c() now removes NULL arguments before dispatching to methods,
    thus simplifying the implementation of c() methods, _but_ for
    back compatibility keeps NULL when it is the first argument.
    (From a report and patch proposal by Lionel Henry in PR#17900.)
  * Vectorize()'s result function's environment no longer keeps
    unneeded objects.
  * Function ...elt() now propagates visibility consistently with
    ..n.  (Thanks to Lionel Henry's PR#17905.)
  * capture.output() no longer uses non-standard evaluation to
    evaluate its arguments.  This makes evaluation of functions like
    parent.frame() more consistent.  (Thanks to Lionel Henry's
    PR#17907.)
  * packBits(bits, type="double") now works as inverse of
    numToBits().  (Thanks to Bill Dunlap's proposal in PR#17914.)
  * curlGetHeaders() has two new arguments, timeout to specify the
    timeout for that call (overriding getOption("timeout")) and TLS
    to specify the minimum TLS protocol version to be used for
    https:// URIs (_inter alia_ providing a means to check for sites
    using deprecated TLS versions 1.0 and 1.1).
  * For nls(), an optional constant scaleOffset may be added to the
    denominator of the relative offset convergence test for cases
    where the fit of a model is expected to be exact, thanks to a
    proposal by John Nash.  nls(*, trace=TRUE) now also shows the
    convergence criterion.
  * Numeric differentiation _via_ numericDeriv() gets new optional
    arguments eps and central, the latter for taking central divided
    differences.  The latter can be activated for nls() via
    nls.control(nDcentral = TRUE).
  * nls() now passes the trace and control arguments to getInitial(),
    notably for all self-starting models, so these can also be fit in
    zero-noise situations via a scaleOffset.  For this reason, the
    initial function of a selfStart model must now have ... in its
    argument list.
  * bquote(splice = TRUE) can now splice expression vectors with
    attributes: this makes it possible to splice the result of
    parse(keep.source = TRUE).  (Report and patch provided by Lionel
    Henry in PR#17869.)
  * textConnection() gets an optional name argument.
  * get(), exists(), and get0() now signal an error if the first
    argument has length greater than 1.  Previously additional
    elements were silently ignored.  (Suggested by Antoine Fabri on
    R-devel.)
  * R now provides a shorthand notation for creating functions, e.g.
    \(x) x + 1 is parsed as function(x) x + 1.
  * R now provides a simple native forward pipe syntax |&gt;.  The
    simple form of the forward pipe inserts the left-hand side as the
    first argument in the right-hand side call.  The pipe
    implementation as a syntax transformation was motivated by
    suggestions from Jim Hester and Lionel Henry.
  * all.equal(f, g) for functions now by default also compares their
    environment(.)s, notably via new all.equal method for class
    function.  Comparison of nls() fits, e.g., may now need
    all.equal(m1, m2, check.environment = FALSE).
  * .libPaths() gets a new option include.site, allowing to _not_
    include the site library.  (Thanks to Dario Strbenac's suggestion
    and Gabe Becker's PR#18016.)
  * Lithuanian translations are now available.  (Thanks to Rimantas
    Zakauskas.)
  * names() now works for DOTSXP objects.  On the other hand, in
    R-lang, the R language manual, we now warn against relying on the
    structure or even existence of such dot-dot-dot objects.
  * all.equal() no longer gives an error on DOTSXP objects.
  * capabilities("cairo") now applies only to the file-based devices
    as it is now possible (if very unusual) to build R with Cairo
    support for those but not for X11().
  * There is optional support for tracing the progress of
    loadNamespace() - see its help.
  * (Not Windows.)  l10n_info() reports an additional element, the
    name of the encoding as reported by the OS (which may differ from
    the encoding part (if any) of the result from
    Sys.getlocale("LC_CTYPE").
  * New function gregexec() which generalizes regexec() to find _all_
    disjoint matches and well as all substrings corresponding to
    parenthesized subexpressions of the given regular expression.
    (Contributed by Brodie Gaslam.)
  * New function charClass() in package utils to query the
    wide-character classification functions in use (such as
    iswprint).
  * The names of quantile()'s result no longer depend on the global
    getOption("digits"), but quantile() gets a new optional argument
    digits = 7 instead.
  * grep(), sub(), regexp and variants work considerably faster for
    long factors with few levels.  (Thanks to Michael Chirico's
    PR#18063.)
  * Provide grouping of x11() graphics windows within a window
    manager such as Gnome or Unity; thanks to a patch by Ivan Krylov
    posted to R-devel.
  * The split() method for class data.frame now allows the f argument
    to be specified as a formula.
  * sprintf now warns on arguments unused by the format string.
  * New palettes "Rocket" and "Mako" for hcl.colors() (approximating
    palettes of the same name from the 'viridisLite' package).
    Contributed by Achim Zeileis.
  * The base environment and its namespace are now locked (so one can
    no longer add bindings to these or remove from these).
  * Rterm handling of multi-byte characters has been improved,
    allowing use of such characters when supported by the current
    locale.
  * Rterm now accepts ALT+ +xxxxxxxx sequences to enter Unicode
    characters as hex digits.
  * Environment variable LC_ALL on Windows now takes precedence over
    LC_CTYPE and variables for other supported categories, matching
    the POSIX behaviour.
  * duplicated() and anyDuplicated() are now optimized for integer
    and real vectors that are known to be sorted via the ALTREP
    framework. Contributed by Gabriel Becker via PR#17993.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 14
    and so packages that provide graphics devices should be
    reinstalled.
  * Graphics devices should now specify deviceVersion to indicate
    what version of the graphics engine they support.
  * Graphics devices can now specify deviceClip.  If TRUE, the
    graphics engine will never perform any clipping of output itself.
    The clipping that the graphics engine does perform (for both
    canClip = TRUE and canClip = FALSE) has been improved to avoid
    producing unnecessary artifacts in clipped output.
  * The grid package now allows gpar(fill) to be a linearGradient(),
    a radialGradient(), or a pattern().  The viewport(clip) can now
    also be a grob, which defines a clipping path, and there is a new
    viewport(mask) that can also be a grob, which defines a mask.
    These new features are only supported so far on the Cairo-based
    graphics devices and on the pdf() device.
  * (Not Windows.)  A warning is given when a Cairo-based type is
    specified for a png(), jpeg(), tiff() or bmp() device but Cairo
    is unsupported (so type = "Xlib" is tried instead).
  * grSoftVersion() now reports the versions of FreeType and
    FontConfig if they are used directly (not _via_ Pango), as is
    most commonly done on macOS.
  C-LEVEL FACILITIES:
  * The _standalone_ libRmath math library and R's C API now provide
    log1pexp() again as documented, and gain log1mexp().
  INSTALLATION on a UNIX-ALIKE:
  * configure checks for a program pkgconf if program pkg-config is
    not found.  These are now only looked for on the path (like
    almost all other programs) so if needed specify a full path to
    the command in PKG_CONFIG, for example in file config.site.
  * C99 function iswblank is required - it was last seen missing ca
    2003 so the workaround has been removed.
  * There are new configure options --with-internal-iswxxxxx,
  - -with-internal-towlower and --with-internal-wcwidth which allows
    the system functions for wide-character classification,
    case-switching and width (wcwidth and wcswidth) to be replaced by
    internal ones.  The first has long been used on macOS, AIX (and
    Windows) but this enables it to be unselected there and selected
    for other platforms (it is the new default on Solaris).  The
    second is new in this version of R and is selected by default on
    macOS and Solaris.  The third has long been the default and
    remains so as it contains customizations for East Asian
    languages.
    System versions of these functions are often minimally
    implemented (sometimes only for ASCII characters) and may not
    cover the full range of Unicode points: for example Solaris (and
    Windows) only cover the Basic Multilingual Plane.
  * Cairo installations without X11 are more likely to be detected by
    configure, when the file-based Cairo graphics devices will be
    available but not X11(type = "cairo").
  * There is a new configure option --with-static-cairo which is the
    default on macOS.  This should be used when only static cairo
    (and where relevant, Pango) libraries are available.
  * Cairo-based graphics devices on platforms without Pango but with
    FreeType/FontConfig will make use of the latter for font
    selection.
  LINK-TIME OPTIMIZATION on a UNIX-ALIKE:
  * Configuring with flag --enable-lto=R now also uses LTO when
    installing the recommended packages.
  * R CMD INSTALL and R CMD SHLIB have a new flag --use-LTO to use
    LTO when compiling code, for use with R configured with
  - -enable-lto=R.  For R configured with --enable-lto, they have
    the new flag --no-use-LTO.
    Packages can opt in or out of LTO compilation _via_ a UseLTO
    field in the DESCRIPTION file.  (As usual this can be overridden
    by the command-line flags.)
  BUILDING R on Windows:
  * for GCC &gt;= 8, FC_LEN_T is defined in config.h and hence character
    lengths are passed from C to Fortran in _inter alia_ BLAS and
    LAPACK calls.
  * There is a new text file src/gnuwin32/README.compilation, which
    outlines how C/Fortran code compilation is organized and
    documents new features:
  * R can be built with Link-Time Optimization with a suitable
    compiler - doing so with GCC 9.2 showed several
    inconsistencies which have been corrected.
  * There is support for cross-compiling the C and Fortran code
    in R and standard packages on suitable (Linux) platforms.
    This is mainly intended to allow developers to test later
    versions of compilers - for example using GCC 9.2 or 10.x has
    detected issues that GCC 8.3 in Rtools40 does not.
  * There is experimental support for cross-building R packages
    with C, C++ and/or Fortran code.
  * The R installer can now be optionally built to support a single
    architecture (only 64-bit or only 32-bit).
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++14 where
    available (which it is on all currently checked platforms): if
    not (as before) C++11 is used if available otherwise C++ is not
    supported.
    Packages which specify C++11 will still be installed using C++11.
    C++14 compilers may give deprecation warnings, most often for
    std::random_shuffle (deprecated in C++14 and removed in C++17).
    Either specify C++11 (see 'Writing R Extensions') or modernize
    the code and if needed specify C++14.  The latter has been
    supported since R 3.4.0 so the package's DESCRIPTION would need
    to include something like
    Depends: R (&gt;= 3.4)
  PACKAGE INSTALLATION on Windows:
  * R CMD INSTALL and R CMD SHLIB make use of their flag --use-LTO
    when the LTO_OPT make macro is set in file etc/${R_ARCH}/Makeconf
    or in a personal/site Makevars file.  (For details see 'Writing R
    Extensions' SS4.5.)
    This provides a valuable check on code consistency.  It does work
    with GCC 8.3 as in Rtools40, but that does not detect everything
    the CRAN checks with current GCC do.
  PACKAGE INSTALLATION on macOS:
  * The default personal library directory on builds with
  - -enable-aqua (including CRAN builds) now differs by CPU type,
    one of
    ~/Library/R/x86_64/x.y/library
    ~/Library/R/arm64/x.y/library
    This uses the CPU type R (and hence the packages) were built for,
    so when a x86_64 build of R is run under Rosetta emulation on an
    arm64 Mac, the first is used.
  UTILITIES:
  * R CMD check can now scan package functions for bogus return
    statements, which were possibly intended as return() calls (wish
    of PR#17180, patch by Sebastian Meyer). This check can be
    activated via the new environment variable
    _R_CHECK_BOGUS_RETURN_, true for --as-cran.
  * R CMD build omits tarballs and binaries of previous builds from
    the top-level package directory.  (PR#17828, patch by Sebastian
    Meyer.)
  * R CMD check now runs sanity checks on the use of LazyData, for
    example that a data directory is present and that
    LazyDataCompression is not specified without LazyData and has a
    documented value.  For packages with large LazyData databases
    without specifying LazyDataCompression, there is a reference to
    the code given in 'Writing R Extensions' SS1.1.6 to test the
    choice of compression (as in all the CRAN packages tested a
    non-default method was preferred).
  * R CMD build removes LazyData and LazyDataCompression fields from
    the DESCRIPTION file of packages without a data directory.
  ENCODING-RELATED CHANGES:
  * The parser now treats \Unnnnnnnn escapes larger than the upper
    limit for Unicode points (\U10FFFF) as an error as they cannot be
    represented by valid UTF-8.
    Where such escapes are used for outputting non-printable
    (including unassigned) characters, 6 hex digits are used (rather
    than 8 with leading zeros).  For clarity, braces are used, for
    example \U{0effff}.
  * The parser now looks for non-ASCII spaces on Solaris (as
    previously on most other OSes).
  * There are warnings (including from the parser) on the use of
    unpaired surrogate Unicode points such as \uD834.  (These cannot
    be converted to valid UTF-8.)
  * Functions nchar(), tolower(), toupper() and chartr() and those
    using regular expressions have more support for inputs with a
    marked Latin-1 encoding.
  * The character-classification functions used (by default) to
    replace the system iswxxxxx functions on Windows, macOS and AIX
    have been updated to Unicode 13.0.0.
    The character-width tables have been updated to include new
    assignments in Unicode 13.0.0.
  * The code for evaluating default (extended) regular expressions
    now uses the same character-classification functions as the rest
    of R (previously they differed on Windows, macOS and AIX).
  * There is a build-time option to replace the system's
    wide-character wctrans C function by tables shipped with R: use
    configure option --with-internal-towlower or (on Windows)
  - DUSE_RI18N_CASE in CFLAGS when building R.  This may be needed
    to allow tolower() and toupper() to work with Unicode characters
    beyond the Basic Multilingual Plane where not supported by system
    functions (e.g. on Solaris where it is the new default).
  * R is more careful when truncating UTF-8 and other multi-byte
    strings that are too long to be printed, passed to the system or
    libraries or placed into an internal buffer.  Truncation will no
    longer produce incomplete multibyte characters.
  DEPRECATED AND DEFUNCT:
  * Function plclust() from the package stats and
    package.dependencies(), pkgDepends(), getDepList(),
    installFoundDepends(), and vignetteDepends() from package tools
    are defunct.
  * Defunct functions checkNEWS() and readNEWS() from package tools
    and CRAN.packages() from utils have been removed.
  * R CMD config CXXCPP is defunct (it was deprecated in R 3.6.2).
  * parallel::detectCores() drops support for Irix (retired in 2013).
  * The LINPACK argument to chol.default(), chol2inv(),
    solve.default() and svd() has been defunct since R 3.1.0.  It was
    silently ignored up to R 4.0.3 but now gives an error.
  * Subsetting/indexing, such as ddd[*] or ddd$x on a DOTSXP
    (dot-dot-dot) object ddd has been disabled; it worked by accident
    only and was undocumented.
  BUG FIXES:
  * Many more C-level allocations (mainly by malloc and strdup) are
    checked for success with suitable alternative actions.
  * Bug fix for replayPlot(); this was turning off graphics engine
    display list recording if a recorded plot was replayed in the
    same session.  The impact of the bug became visible if resize the
    device after replay OR if attempted another savePlot() after
    replay (empty display list means empty screen on resize or empty
    saved plot).
  * R CMD check etc now warn when a package exports non-existing S4
    classes or methods, also in case of no "methods" presence.
    (Reported by Alex Bertram; reproducible example and patch by
    Sebastian Meyer in PR#16662.)
  * boxplot() now also accepts calls for labels such as ylab, the
    same as plot().  (Reported by Marius Hofert.)
  * The help page for xtabs() now correctly states that addNA is
    setting na.action = na.pass among others.  (Reported as PR#17770
    by Thomas Soeiro.)
  * The R CMD check &lt;pkg&gt; gives a longer and more comprehensible
    message when DESCRIPTION misses dependencies, e.g., in Imports:.
    (Thanks to the contributors of PR#17179.)
  * update.default() now calls the generic update() on the formula to
    work correctly for models with extended formulas.  (As reported
    and suggested by Neal Fultz in PR#17865.)
  * The horizontal position of leaves in a dendrogram is now correct
    also with center = FALSE.  (PR#14938, patch from Sebastian
    Meyer.)
  * all.equal.POSIXt() no longer warns about and subsequently ignores
    inconsistent "tzone" attributes, but describes the difference in
    its return value (PR#17277).  This check can be disabled _via_
    the new argument check.tzone = FALSE as suggested by Sebastian
    Meyer.
  * as.POSIXct() now populates the "tzone" attribute from its tz
    argument when x is a logical vector consisting entirely of NA
    values.
  * x[[2^31]] &lt;- v now works.  (Thanks to the report and patch by
    Suharto Anggono in PR#17330.)
  * In log-scale graphics, axis() ticks and label positions are now
    computed more carefully and symmetrically in their range,
    typically providing _more_ ticks, fulfilling wishes in PR#17936.
    The change really corresponds to an improved axisTicks() (package
    grDevices), potentially influencing grid and lattice, for
    example.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now correct to at
    least five digits where it was catastrophically wrong,
    previously.
  * sum(df) and similar "Summary"- and "Math"-group member functions
    now work for data frames df with logical columns, notably also of
    zero rows.  (Reported to R-devel by Martin "b706".)
  * unsplit() had trouble with tibbles due to unsound use of rep(NA,
    len)-indexing, which should use NA_integer_ (Reported to R-devel
    by Mario Annau.)
  * pnorm(x, log.p = TRUE) underflows to -Inf slightly later.
  * show(&lt;hidden S4 generic&gt;) prints better and without quotes for
    non-hidden S4 generics.
  * read.table() and relatives treated an "NA" column name as missing
    when check.names = FALSE PR#18007.
  * Parsing strings containing UTF-16 surrogate pairs such as
    "\uD834\uDD1E" works better on some (uncommon) platforms.
    sprintf("%X", utf8ToInt("\uD834\uDD1E")) should now give "1D11E"
    on all platforms.
  * identical(x,y) is no longer true for differing DOTSXP objects,
    fixing PR#18032.
  * str() now works correctly for DOTSXP and related exotics, even
    when these are doomed.
    Additionally, it no longer fails for lists with a class and
    "irregular" method definitions such that e.g. lapply(*) will
    necessarily fail, as currently for different igraph objects.
  * Too long lines in environment files (e.g. Renviron) no longer
    crash R. This limit has been increased to 100,000 bytes.
    (PR#18001.)
  * There is a further workaround for FreeType giving incorrect
    italic font faces with cairo-based graphics devices on macOS.
  * add_datalist(*, force = TRUE) (from package tools) now actually
    updates an existing data/datalist file for new content.  (Thanks
    to a report and patch by Sebastian Meyer in PR#18048.)
  * cut.Date() and cut.POSIXt() could produce an empty last interval
    for breaks = "months" or breaks = "years".  (Reported as PR#18053
    by Christopher Carbone.)
  * Detection of the encoding of 'regular' macOS locales such as
    en_US (which is UTF-8) had been broken by a macOS change:
    fortunately these are now rarely used with en_US.UTF-8 being
    preferred.
  * sub() and gsub(pattern, repl, x, *) now keep attributes of x such
    as names() also when pattern is NA (PR#18079).
  * Time differences ("difftime" objects) get a replacement and a
    rep() method to keep "units" consistent.  (Thanks to a report and
    patch by Nicolas Bennett in PR#18066.)
  * The \RdOpts macro, setting defaults for \Sexpr options in an Rd
    file, had been ineffective since R 2.12.0: it now works again.
    (Thanks to a report and patch by Sebastian Meyer in PR#18073.)
  * mclapply and pvec no longer accidentally terminate parallel
    processes started before by mcparallel or related calls in
    package parallel (PR#18078).
  * grep and other functions for evaluating (extended) regular
    expressions handle in Unicode also strings not explicitly flagged
    UTF-8, but flagged native when running in UTF-8 locale.
  * Fixed a crash in fifo implementation on Windows (PR#18031).
  * Binary mode in fifo on Windows is now properly detected from
    argument open (PR#15600, PR#18031).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1622808000">- The line %{__install} -m 755 -d %{_infodir}
  no longer works in TW or Factory.
  But without that line it works everywhere. So this instruction
  was commented out of the spec file.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1628596800">- CHANGES IN R 4.1.1:
  NEW FEATURES:
  * require(pkg, quietly = TRUE) is quieter and in particular does
    not warn if the package is not found.
  DEPRECATED AND DEFUNCT:
  * Use of ftp:// URIs should be regarded as deprecated, with
    on-going support confined to method = "libcurl" and not routinely
    tested.  (Nowadays no major browser supports them.)
  * The non-default method = "internal" is deprecated for http:// and
    ftp:// URIs for both download.file and url.
  * On Windows, method = "wininet" is deprecated for http://,
    https:// and ftp:// URIs for both download.file and url.  (A
    warning is only given for ftp://.)
    For ftp:// URIs the default method is now "libcurl" if available
    (which it is on CRAN builds).
    method = "wininet" remains the default for http:// and https://
    URIs but if libcurl is available, using method = "libcurl" is
    preferred.
  INSTALLATION:
  * make check now works also without a LaTeX installation.  (Thanks
    to Sebastian Meyer's PR#18103.)
  BUG FIXES:
  * make check-devel works again in an R build configured with
  - -without-recommended-packages.
  * qnbinom(p, size, mu) for large size/mu is correct now in a range
    of cases (PR#18095); similarly for the (size, prob)
    parametrization of the negative binomial.  Also qpois() and
    qbinom() are better and or faster for extreme cases.  The
    underlying C code has been modularized and is common to all four
    cases of discrete distributions.
  * gap.axis is now part of the axis() arguments which are passed
    from bxp(), and hence boxplot().  (Thanks to Martin Smith's
    report and suggestions in PR#18109.)
  * .First and .Last can again be set from the site profile.
  * seq.int(from, to, *) and seq.default(..) now work better in large
    range cases where from-to is infinite where the two boundaries
    are finite.
  * all.equal(x,y) now returns TRUE correctly also when several
    entries of abs(x) and abs(y) are close to .Machine$double.xmax,
    the largest finite numeric.
  * model.frame() now clears the object bit when removing the class
    attribute of a value via na.action (PR#18100).
  * charClass() now works with multi-character strings on Windows
    (PR#18104, fixed by Bill Dunlap).
  * encodeString() on Solaris now works again in Latin-1 encoding on
    characters represented differently in UTF-8.  Support for
    surrogate pairs on Solaris has been improved.
  * file.show() on Windows now works with non-ASCII path names
    representable in the current native encoding (PR#18132).
  * Embedded R on Windows can now find R home directory via the
    registry even when installed only for the current user
    (PR#18135).
  * pretty(x) with finite x now returns finite values also in the
    case where the extreme x values are close in size to the maximal
    representable number .Machine$double.xmax.
    Also, it's been tweaked for very small ranges and when a boundary
    is close (or equal) to zero; e.g., pretty(c(0,1e-317)) no longer
    has negative numbers, currently still warning about a very small
    range, and pretty(2^-(1024 - 2^-1/(c(24,10)))) is more accurate.
  * The error message for not finding vignette files when weaving has
    correct file sizes now. (Thanks to Sebastian Meyer's PR#18154.)
  * dnbinom(20, &lt;large&gt;, 1) now correctly gives 0, and similar cases
    are more accurate with underflow precaution.  (Reported by Francisco Vera Alcivar in PR#18072.)</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635163200">- repaired https://bugzilla.suse.com/show_bug.cgi?id=1191380
  (rpmacros now go to rpmmacrodir)
- minor clean-ups in spec file</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635768000">- CHANGES IN R 4.1.2:
  C-LEVEL FACILITIES:
  * The workaround in headers R.h and Rmath.h (using namespace std;)
    for the Oracle Developer Studio compiler is no longer needed now
    C++11 is required so has been removed.  A couple more usages of
    log() (which should have been std::log()) with an int argument
    are reported on Solaris.
  * The undocumented limit of 4095 bytes on messages from the
    S-compatibility macros PROBLEM and MESSAGE is now documented and
    longer messages will be silently truncated rather than
    potentially causing segfaults.
  * If the R_NO_SEGV_HANDLER environment variable is non-empty, the
    signal handler for SEGV/ILL/BUS signals (which offers recovery
    user interface) is not set. This allows more reliable debugging
    of crashes that involve the console.
  DEPRECATED AND DEFUNCT:
  * The legacy S-compatibility macros PROBLEM, MESSAGE, ERROR, WARN,
    WARNING, RECOVER, ... are deprecated and will be hidden in R
    4.2.0. R's native interface of Rf_error and Rf_warning has long
    been preferred.
  BUG FIXES:
  * .mapply(F, dots, .) no longer segfaults when dots is not a list
    and uses match.fun(F) as always documented; reported by Andrew
    Simmons in PR#18164.
  * hist(&lt;Date&gt;, ...) and hist(&lt;POSIXt&gt;, ...)  no longer pass
    arguments for rect() (such as col and density) to axis().
    (Thanks to Sebastian Meyer's PR#18171.)
  * \Sexpr{ch} now preserves Encoding(ch). (Thanks to report and
    patch by Jeroen Ooms in PR#18152.)
  * Setting the RNG to "Marsaglia-Multicarry" e.g., by RNGkind(), now
    warns in more places, thanks to Andr'e Gillibert's report and
    patch in PR#18168.
  * gray(numeric(), alpha=1/2) no longer segfaults, fixing PR#18183,
    reported by Till Krenz.
  * Fixed dnbinom(x, size=&lt;very_small&gt;, .., log=TRUE) regression,
    reported by Martin Morgan.
  * as.Date.POSIXlt(x) now keeps names(x), thanks to Davis Vaughan's
    report and patch in PR#18188.
  * model.response() now strips an "AsIs" class typically, thanks to
    Duncan Murdoch's report and other discussants in PR#18190.
  * try() is considerably faster in case of an error and long call,
    as e.g., from some do.call().  Thanks to Alexander Kaever's
    suggestion posted to R-devel.
  * qqline(y = &lt;object&gt;) such as y=I(.), now works, see also
    PR#18190.
  * Non-integer mgp par() settings are now handled correctly in
    axis() and mtext(), thanks to Mikael Jagan and Duncan Murdoch's
    report and suggestion in PR#18194.
  * formatC(x) returns length zero character() now, rather than ""
    when x is of length zero, as documented, thanks to Davis
    Vaughan's post to R-devel.
  * removeSource(fn) now retains (other) attributes(fn).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1647000000">- CHANGES IN R 4.1.3:
  NEW FEATURES:
  * The default version of Bioconductor has been changed to 3.14.
    (This is used by setRepositories and the menus in GUIs.)
  UTILITIES:
  * R CMD check --as-cran has a workaround for a bug in versions of
    file up to at least 5.41 which mis-identify DBF files last
    changed in 2022 as executables.
  C-LEVEL FACILITIES:
  * The legacy S-compatibility macros SINGLE_* in R_ext/Constants.h
    (included by R.h) are deprecated and will be removed in R 4.2.0.
  BUG FIXES:
  * Initialization of self-starting nls() models with initialization
    functions following the pre-R-4.1.0 API (without the ...
    argument) works again for now, with a deprecation warning.
  * Fixed quoting of ~autodetect~ in Java setting defaults to avoid
    inadvertent user lookup due to leading ~, reported in PR#18231 by
    Harold Gutch.
  * substr(., start, stop) &lt;- v now treats _negative_ stop values
    correctly.  Reported with a patch in PR#18228 by Brodie Gaslam.
  * Subscripting an array x without dimnames by a
    length(dim(x))-column character matrix gave "random" non-sense,
    now an error; reported in PR#18244 by Mikael Jagan.
  * ...names() now matches names(list(...)) closely, fixing PR#18247.
  * all.equal(*, scale = s) now works as intended when length(s) &gt; 1,
    partly thanks to Michael Chirico's PR#18272.
  * print(x) for long vectors x now also works for named atomic
    vectors or lists and prints the correct number when reaching the
    getOption("max.print") limit; partly thanks to a report and
    proposal by Hugh Parsonage to the R-devel list.
  * all.equal(&lt;selfStart&gt;, *) no longer signals a deprecation
    warning.
  * reformulate(*, response=r) gives a helpful error message now when
    length(r) &gt; 1, thanks to Bill Dunlap's PR#18281.
  * Modifying globalCallingHandlers inside withCallingHandlers() now
    works or fails correctly, thanks to Henrik Bengtsson's PR#18257.
  * hist(&lt;Date&gt;, breaks = "days") and hist(&lt;POSIXt&gt;, breaks = "secs")
    no longer fail for inputs of length 1.
  * qbeta(.001, .9, .009) and similar cases now converge correctly
    thanks to Ben Bolker's report in PR#17746.
  * window(x, start, end) no longer wrongly signals "'start' cannot
    be after 'end'", fixing PR#17527 and PR#18291.
  * data() now checks that its (rarely used) list argument is a
    character vector - a couple of packages passed other types and
    gave incorrect results.
  * which() now checks its arr.ind argument is TRUE rather coercing
    to logical and taking the first element - which gave incorrect
    results in package code.
  * model.weights() and model.offset() more carefully extract their
    model components, thanks to Ben Bolker and Tim Taylor's R-devel
    post.
  * list.files(recursive = TRUE) now shows all broken symlinks
    (previously, some of them may have been omitted, PR#18296).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1650628800">- CHANGES IN R 4.2.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * The formula method of aggregate() now matches the generic in
    naming its first argument x (resolving PR#18299 by Thomas
    Soeiro).
    This means that calling aggregate() with a formula as a named
    first argument requires name formula in earlier versions of R and
    name x now, so portable code should not name the argument (code
    in many packages did).
  * Calling &amp;&amp; or || with either argument of length greater than one
    now gives a warning (which it is intended will become an error).
  * Calling if() or while() with a condition of length greater than
    one gives an error rather than a warning.  Consequently,
    environment variable _R_CHECK_LENGTH_1_CONDITION_ no longer has
    any effect.
  * Windows users should consult the WINDOWS section below for some
    profound changes including
  * Support for 32-bit builds has been dropped.
  * UTF-8 locales are used where available.
  * The default locations for the R installation and personal
    library folder have been changed.
    Thanks to Tomas Kalibera for months of work on the Windows port
    for this release.
  NEW FEATURES:
  * matrix(x, n, m) now warns in more cases where length(x) differs
    from n * m, as suggested by Abby Spurdle and Wolfgang Huber in
    Feb 2021 on the R-devel mailing list.
    This warning can be turned into an error by setting environment
    variable _R_CHECK_MATRIX_DATA_ to TRUE: R CMD check --as-cran
    does so unless it is already set.
  * Function file_test() in package utils gains tests for symlinks,
    readability and writability.
  * capabilities("libxml") is now false.
    The description of capabilities("http/ftp") now reflects that it
    refers to the default method, no longer the internal one.
  * simplify2array() gains an except argument for controlling the
    exceptions used by sapply().
  * Environment variables R_LIBS_USER and R_LIBS_SITE are both now
    set to the R system default if unset or empty, and can be set to
    NULL to indicate an empty list of user or site library
    directories.
  * The warning for axis()(-like) calls in cases of relatively small
    ranges (typically in log-scale situations) is slightly improved
    _and_ suppressed from explicit calls to .axisPars() as has always
    been the intention.
  * The contrasts setter function `contrasts&lt;-` gains an explicit
    default how.many = NULL rather than just using missing(how.many).
  * grid.pretty() gains a new optional argument n = 5.
  * There is a new function .pretty() with option bounds as a
    technical-utility version of pretty().  It and pretty() gain a
    new argument f.min with a better than back-compatible default.
  * Function grDevices::axisTicks() and related functions such as
    graphics::axis() work better, notably for the log scale; partly
    because of the pretty() improvements, but also because care is
    taken e.g., when ylim is finite but diff(ylim) is infinite.
  * nclass.FD() gains a digits option.
  * The R Mathlib internal C function bd0() (called indirectly from a
    dozen probability density and distribution functions such as
    dpois(), dbinom(), dgamma(), pgamma() _etc_) has been
    complemented by a more sophisticated and (mostly) more accurate C
    function ebd0(), currently called only by internal dpois_raw()
    improving accuracy for R level dpois() and potentially others
    calling it such as dnbinom(), dgamma() or pgamma().  (Thanks to
    Morten Welinder's PR#15628.)
  * write.ftable() gains sep = " " argument as suggested by Thomas
    Soeiro.
  * The names of the locale categories supported by R's
    Sys.getlocale() and Sys.setlocale() are now provided by variable
    .LC.categories in the base namespace.
  * The Date and POSIXt methods for hist() and the histogram method
    for plot() now also use the new default col = "lightgray" in
    consistency with the corresponding change to hist()'s default for
    R 4.0.0.
  * hist.default() gains new fuzz argument, and the histogram plot
    method no longer uses fractional axis ticks when displaying
    counts ("Frequency").
  * mapply() and hence Map() now also obey the "max-or-0-if-any"
    recycling rule, such that, e.g., Map(`+`, 1:3, 1[0]) is valid
    now.
  * as.character(&lt;obj&gt;) for "hexmode" or "octmode" objects now
    fulfils the important basic rule as.character(x)[j] ===
    as.character(x[j]).
  * The set utility functions, notably intersect() have been tweaked
    to be more consistent and symmetric in their two set arguments,
    also preserving a common mode.
  * substr(ch, start,end) &lt;- new now e.g., preserves names(ch); ditto
    for substring(), thanks to a patch from Brodie Gaslam.
  * plot(&lt;lm&gt;) gains a extend.ylim.f argument, in partial response to
    PR#15285; further PR#17784 is fixed thanks to several
    contributors and a patch by Elin Waring.  The Cook's dist
    contours get customizable via cook.col and cook.lty with a
    different default color and their legend is nicer by default and
    customizable via cook.legendChanges.
  * Attempting to subset an object that is not subsettable now
    signals an error of class notSubsettableError. The
    non-subsettable object is contained in the object field of the
    error condition.
  * Subscript-out-of-bounds errors are now signaled as errors of
    class subscriptOutOfBoundsError.
  * Stack-overflow errors are now signaled as errors inheriting from
    class stackOverflowError. See ?stackOverflowError for more
    details.
  * New partly experimental Sys.setLanguage() utility, solving the
    main problem of PR#18055.
  * gettext() and gettextf() get a new option trim = TRUE which when
    set to false allows translations for strings such as "Execution
    halted\n" typical for C code.
  * An experimental implementation of hash tables is now available.
    See ?hashtab for more details.
  * identical() gains a extptr.as.ref argument for requesting that
    external pointer objects be compared as reference objects.
  * reorder() gets an argument decreasing which it passes to sort()
    for level creation; based on the wish and patch by Thomas Soeiro
    in PR#18243.
  * as.vector() gains a data.frame method which returns a simple
    named list, also clearing a long standing 'FIXME' to enable
    as.vector(&lt;data.frame&gt;, mode="list").  This breaks code relying
    on as.vector(&lt;data.frame&gt;) to return the unchanged data frame.
  * legend() is now vectorized for arguments cex, x.intersp, and
    text.width.  The latter can now also be specified as a vector
    (one element for each column of the legend) or as NA for
    computing a proper column wise maximum value of strwidth(legend).
    The argument y.intersp can be specified as a vector with one
    entry for each row of the legend.
    legend() also gains new arguments title.cex and title.font.
    Thanks to Swetlana Herbrandt.
  * Deparsing no longer remaps attribute names dim, dimnames, levels,
    names and tsp to historical S-compatible names (which structure()
    maps back).
  * sample() and sample.int() have additional sanity checks on their
    size and n arguments.
    all.equal.numeric() gains a sanity check on its tolerance
    argument - calling all.equal(a, b, c) for three numeric vectors
    is a surprisingly common error.
    mean(na.rm =), rank(na.last =), barplot(legend.text =),
    boxplot(), contour(drawlabels =), polygon(border =) and
    methods::is(class2 =) have more robust sanity checks on their
    arguments.
    R CMD Rd2pdf (used by R CMD check) has a more robust sanity check
    on the format of \alias{} commands.
  * psigamma(x, deriv) for negative x now also works for deriv = 4
    and 5; their underlying C level dpsifn() is documented in
    'Writing R Extensions'.
  * The HTML help system now uses HTML5 (wish of PR#18149).
  * ks.test() now provides exact p-values also with ties and MC
    p-values in the two-sample (Smirnov) case.  By Torsten Hothorn.
  * ks.test() gains a formula interface, with y ~ 1 for the
    one-sample (Kolmogorov) test and y ~ group for the two-sample
    (Smirnov) test.  Contributed by Torsten Hothorn.
  * The return value from ks.test() now has class c("ks.test",
    "htest") - packages using try() need to take care to use
    inherits() and not == on the class.
  * New functions psmirnov(), qsmirnov() and rsmirnov() in package
    stats implementing the asymptotic and exact distributions of the
    two-sample Smirnov statistic.
  * iconv() now allows sub = "c99" to use C99-style escapes for UTF-8
    inputs which cannot be converted to encoding to.
  * In a forward pipe |&gt; expression it is now possible to use a named
    argument with the placeholder _ in the rhs call to specify where
    the lhs is to be inserted.  The placeholder can only appear once
    on the rhs.
  * The included LAPACK sources have been updated to version 3.10.0,
    except for the four Fortran 77 routines which 3.10.0 has
    re-implemented in Fortran 90 (where the older versions have been
    retained as the R build process does not support Fortran 90).
  * path.expand() and most other uses of tilde expansion now warn if
    a path would be too long if expanded.  (An exception is
    file.exists(), which silently returns false.)
  * trunc(&lt;Date&gt;, *) now supports units = "months" or "years" for
    consistency with the POSIXt method, thanks to Dirk Eddelbuettel's
    proposal in PR#18099.
  * list2DF() now checks that its arguments are of the same length,
    rather than use recycling.
  * The HTML help system has several new features: LaTeX-like math
    can be typeset using either KaTeX or MathJax, usage and example
    code is highlighted using Prism, and for dynamic help the output
    of examples and demos can be shown within the browser if the
    knitr package is installed. These features can be disabled by
    setting the environment variable _R_HELP_ENABLE_ENHANCED_HTML_ to
    a false value.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 15
    and so packages that provide graphics devices should be
    reinstalled.
  * The grid package now allows the user to specify a "vector" of
    pattern fills.  The fill argument to gpar() accepts a list of
    gradients and/or patterns and the functions linearGradient(),
    radialGradient(), and pattern() have a new group argument.
    Points grobs (data symbols) can now also have a pattern fill.
    The grobCoords() function now returns a more informative and
    complex result.
  * The grid package has new functions for drawing isolated groups:
    grid.group(), grid.define(), and grid.use().  These functions add
    compositing operators and affine transformations to R's graphics
    capabilities.
    The grid package also has new functions for stroking and filling
    paths: grid.stroke(), grid.fill(), and grid.fillStroke().
    A new function as.path() allows the user to specify the fill rule
    for a path that is to be used for clipping, stroking, or filling;
    available options are "winding" and "evenodd".  A new function
    as.mask() allows the user to specify the type of a mask;
    available options are "alpha" and "luminance".
    These new features are only supported so far (at most) on the
    Cairo-based graphics devices and on the pdf() device.
  * dev.capabilities() reports on device support for the new
    features.
  * par() now warns about unnamed non-character arguments to prevent
    misuse such as {usr &lt;- par("usr"); par(usr)}.
  INSTALLATION:
  * Facilities for accessing ftp:// sites are no longer tested
    (except _pro tem_ for curlGetHeaders()) as modern browsers have
    removed support.
  * R can now be built with DEFS = -DSTRICT_R_HEADERS .
  PACKAGE INSTALLATION:
  * R CMD INSTALL no longer tangles vignettes. This completes an R
    CMD build change in R 3.0.0 and affects packages built before R
    3.0.2. Such packages should be re-made with R CMD build to have
    the tangled R code of vignettes shipped with the tarball.
  * USE_FC_LEN_T will become the default: this uses the correct
    prototypes for Fortran BLAS/LAPACK routines called from C/C++,
    and requires adjustment of most such calls - see 'Writing R
    Extensions' SS6.6.2.  (This has been supported since R 3.6.2.)
  * Package installation speed for packages installed with
    keep.source has been improved. This resolve the issue reported by
    Ofek Shilon in PR#18236.
  UTILITIES:
  * R CMD check can optionally report files/directories left behind
    in home, /tmp (even though TMPDIR is set) and other directories.
    See the "R Internals" manual for details.
  * R CMD check now reports byte-compilation errors during
    installation.  These are not usually fatal but may result in
    parts of the package not being byte-compiled.
  * _R_CHECK_DEPENDS_ONLY_ can be applied selectively to examples,
    tests and/or vignettes in R CMD check: see the "R Internals"
    manual.
  * _R_CHECK_SRC_MINUS_W_IMPLICIT_ now defaults to true: recent
    versions of Apple clang on macOS have made implicit function
    declarations in C into a compilation error.
  * R CMD check --as-cran makes use of the environment variable
    AUTORECONF.  See the "R Internals" manual SS8 for further details.
  * R CMD check --use-valgrind also uses valgrind when re-building
    vignettes as some non-Sweave vignettes unhelpfully comment out
    all their code when R CMD check runs vignettes.
  * Errors in re-building vignettes (unless there are LaTeX errors)
    are reported by R CMD check as ERROR rather than WARNING when
    running vignettes has been skipped (as it frequently is in CRAN
    checks and by --as-cran).
  * R CMD Rd2pdf gains a --quiet option that is used by R CMD build
    when building the PDF package manual.
  * R CMD Rd2pdf now always runs LaTeX in batch mode, consistent with
    Texinfo &gt;= 6.7. The --batch option is ignored.
  * R CMD build and R CMD check now include the Rd file name and line
    numbers in the error message of an \Sexpr evaluation failure.
  * For packages using the \doi Rd macro (now an install-time \Sexpr)
    but no other dynamic Rd content, R CMD build now produces a
    smaller tarball and is considerably faster - skipping temporary
    package installation.
  C-LEVEL FACILITIES:
  * The non-API header R_ext/R-ftp-http.h is no longer provided, as
    the entry points it covered are now all defunct.
  * A number of non-API declarations and macro definitions have been
    moved from the installed header Rinternals.h to the internal
    header Defn.h. Packages that only use entry points and
    definitions documented to be part of the API as specified in
    'Writing R Extensions' SS6 should not be affected.
  * The macro USE_RINTERNALS no longer has any effect when compiling
    package code.  Packages which also use R_NO_REMAP will need to
    ensure that the remapped names are used for calls to API
    functions that were formerly also made available as macros.
  * The deprecated legacy S-compatibility macros PROBLEM, MESSAGE,
    ERROR, WARN, WARNING, RECOVER, ... are no longer defined in
    R_exts/RS.h (included by R.h).  Replace these by calls to
    Rf_error and Rf_warning (defined in header R_ext/Error.h included
    by R.h).
    Header R_ext/RS.h no longer includes R_ext/Error.h.
  * Header R_ext/Constants.h (included by R.h) when included from C++
    now includes the C++ header cfloat rather than the C header
    float.h (now possible as C++11 is required).
  * The legacy S-compatibility macros DOUBLE_* in R_ext/Constants.h
    (included by R.h) are deprecated.
  * The deprecated S-compatibility macros SINGLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * R_Calloc, R_Free and R_Realloc are preferred to their unprefixed
    forms and error messages now use the prefix. These forms were
    introduced in R 3.4.0 and are available even when
    STRICT_R_HEADERS is defined.
  * rmultinom has been documented in 'Writing R Extensions' SS6 so is
    now part of the R API.
  * Similarly, Rtanpi, called from R level tanpi() is now part of the
    R API.
  * The long-deprecated, undocumented and non-API entry point call_R
    is no longer declared in R_ext/RS.h (included by R.h).
  * The header S.h which has been unsupported since Jan 2016 has been
    removed.  Use R.h instead.
  DEPRECATED AND DEFUNCT:
  * The (non-default and deprecated) method = "internal" for
    download.file() and url() no longer supports http:// nor ftp://
    URIs.  (It is used only for file:// URIs.)
    On Windows, download.file(method = "wininet") no longer supports
    ftp:// URIs.  (It is no longer the default method, which is
    "libcurl" and does.)
    On Windows, the deprecated method = "wininet" now gives a warning
    for http:// and https:// URIs for both download.file() and url().
    (It is no longer the default method.)
  * On Windows, the command-line option --max-mem-size and
    environment variable R_MAX_MEM_SIZE are defunct.  The memory
    allocation limit was important for 32-bit builds, but these are
    no longer supported.
  * default.stringsAsFactors() is now formally deprecated, where that
    was only mentioned on its regular help page, previously.  So it
    now gives a warning if called.
  * unix.time() is defunct now; it had been deprecated since R 3.4.0.
  BUG FIXES:
  * Setting digits = 0 in format(), print.default() (and hence
    typically print()) or options() is again invalid.  Its behaviour
    was platform-dependent, and it is unclear what "zero significant
    digits" should mean (PR#18098).
  * Messages from C code in the cairo section of package grDevices
    are now also offered for translation, thanks to Michael Chirico's
    PR#18123.
  * mean(x) with finite x now is finite also without "long.double"
    capability.
  * R CMD Rd2pdf no longer leaves an empty build directory behind
    when it aborts due to an already existing output file.  (Thanks
    to Sebastian Meyer's PR#18141.)
  * density(x, weights = w, na.rm = TRUE) when anyNA(x) is true, now
    removes weights "in parallel" to x, fixing PR#18151, reported by
    Matthias Gondan.  Additionally, it gets a subdensity option.
  * Conversion of \Sexpr[]{&lt;expR&gt;} to LaTeX or HTML no longer
    produces long blocks of empty lines when &lt;expR&gt; itself contains
    several lines all producing empty output.  Thanks to a report and
    patch by Ivan Krylov posted to R-devel.
  * R CMD build no longer fails if a package vignette uses child
    documents and inst/doc exists.  (Thanks to Sebastian Meyer's
    PR#18156.)
  * When an R documentation ('help' source) file man/foo.Rd in a
    package has \donttest{..} examples with a syntax error, it is now
    signalled as ERROR and with correct line numbers relating to the
  * -Ex.R file, thanks to Duncan Murdoch and Sebastian Meyer's
    reports and patch proposals in PR#17501.
  * Improved determination of the correct translation domain in
    non-base packages, addressing the combination of PR#18092 and
    PR#17998 (#c6) with reports and _augmented_ patch #2904 by
    Suharto Anggono.
    Note that "R-base" is no longer the default domain e.g., for
    top-level calls to gettext(); rather translation needs explicit
    domain = * specification in such cases.
  * identical(attrib.as.set=FALSE) now works correctly with data
    frames with default row names (Thanks to Charlie Gao's PR#18179).
  * txtProgressBar() now enforces a non-zero width for argument char,
    without which no progress can be visible.
  * dimnames(table(d)) is more consistent in the case where d is a
    list with a single component, thanks to Thomas Soeiro's report to
    R-devel.
    Further, table(d1, d2) now gives an error when d1 and d2 are data
    frames as suggested by Thomas in PR#18224.
  * Fix for drawing semi-transparent lines and fills on the native
    Windows graphics device (PR#18219 and PR#16694).  Thanks to Nick
    Ray for helpful diagnosis on Bugzilla.
  * The deparser now wraps sub-expressions such as if(A) ..  with
    parentheses when needed; thanks to Duncan Murdoch's PR#18232 and
    Lionel Henry's patches there.
  * remove.packages() no longer tries to uninstall Priority: base
    packages, thanks to a report and suggestions by Colin Fay in
    PR#18227.
  * win.metafile() now has xpinch and ypinch arguments so that the
    user can override Windows' (potentially wrong) guess at device
    dimensions.
  * x[i] and x[[i]] for non-integer i should now behave in all cases
    as always documented: the index used is equivalent to
    as.integer(i) unless that would overflow where trunc(i) is used
    instead; thanks to Suharto Anggono's report and patch proposals
    in PR#17977.
  * asOneSidedFormula() now associates the resulting formula with the
    global environment rather than the evaluation environment created
    for the call.
  * &lt;bibentry&gt;$name now matches the field name case-insensitively,
    consistent with bibentry() creation and the replacement method.
  * cbind() failed to detect some length mismatches with a mixture of
    time-series and non-time-series inputs.
  * The default LaTeX style file Sweave.sty used by the RweaveLatex
    driver no longer loads the obsolete ae package; thanks to a
    report by Thomas Soeiro in PR#18271.  Furthermore, it now skips
    \usepackage[T1]{fontenc} for engines other than pdfTeX (if
    detected) or if the new [nofontenc] option is used.
  * smooth.spline() now stores its logical cv argument more safely,
    fixing a rare bug when printing, and also stores n.
  * smooth.spline(x,y,*) now computes the cv.crit statistic
    correctly, also when is.unsorted(x), fixing PR#18294.
  * The data.frame method of rbind() now warns when binding
    not-wholly-recycling vectors, by analogy to the default method
    (for matrices).
  * setAs() finds the correct class for name to when multiple
    packages define a class with that name. Thanks to Gabor Csardi
    for the report.
  * Fix for detaching a package when two classes of the same name are
    present in method signatures for the same generic. Thanks to
    Gabor Csardi for the report.
  * match.arg("", c("", "a", "B")) gives a better error message, in
    part from PR#17959, thanks to Elin Waring.
  * R CMD Sweave --clean no longer removes pre-existing files or
    subdirectories (PR#18242).
  * The quartz() device no longer splits polylines into subpaths.
    That has caused narrowly-spaced lines with many points to always
    look solid even when dashed line type was used due to dash phase
    restarts.
  * Deparsing constructs such as quote(1 + `!`(2) + 3) works again as
    before R 3.5.0, thanks to the report and patch in PR#18284 by
    Suharto Anggono.
  * as.list(f) for a factor f now keeps names(f), fixing PR#18309.
  * qbeta(.001, .9, .009) and analogous qf() calls now return a
    correct value instead of NaN or wrongly 1, all with a warning;
    thanks to the report by Ludger Goeminne in PR#18302.
  * plot.lm() failed to produce the plot of residuals vs.  factor
    levels (i.e., which=5 when leverages are constant) for models
    with character predictors (PR#17840).
  * interaction.plot(..., xtick = TRUE) misplaced the x-axis line
    (PR#18305).
  * Not strictly fixing a bug, format()ing and print()ing of
    non-finite Date and POSIXt values NaN and +/-Inf no longer show
    as NA but the respective string, e.g., Inf, for consistency with
    numeric vector's behaviour, fulfilling the wish of PR#18308.
  * R CMD check no longer runs test scripts generated from
    corresponding .Rin files twice and now signals an ERROR if
    processing an .Rin script fails.
  * tools::Rd2txt() used for plain-text help pages now renders \hrefs
    (if tools::Rd2txt_options(showURLs = TRUE)) and \urls with
    percent-encoding and standards-compliant delimiting style (angle
    brackets and no URL: prefix).  \email is now rendered with a
    mailto: prefix.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1655985600">- CHANGES IN R 4.2.1:
  NEW FEATURES:
  * New function utils::findCRANmirror() to find out if a CRAN mirror
    has been selected, otherwise fallback to the main site.  This
    behaves in the same way as tools::CRAN_package_db() and is
    intended for packages wishing to access CRAN for purposes other
    than installing packages.
    The need for this was shown by a day when the main CRAN website
    was offline and a dozen or so packages which had its URL
    hardcoded failed their checks.
  INSTALLATION on a UNIX-ALIKE:
  * The libraries searched for by --with-blas (without a value) now
    include BLIS (after OpenBLAS but before ATLAS).  And on macOS,
    the Accelerate framework (after ATLAS).  (This is patterned after
    the AX_BLAS macro from the Autoconf Archive.)
  * The included LAPACK sources have been updated to 3.10.1.
  UTILITIES:
  * The (full path to) the command tidy to be used for HTML
    validation can be set by environment variable R_TIDYCMD.
  * Setting environment variable _R_CHECK_RD_VALIDATE_RD2HTML_ to a
    false value will override R CMD check --as-cran and turn off HTML
    validation.  This provides a way to circumvent a problematic
    tidy.
    The 2006 version that ships with macOS is always skipped.
  C-LEVEL FACILITIES:
  * The undocumented legacy declarations of Sint, Sfloat, SINT_MAX
    and SINT_MIN in header R.h are deprecated.
  BUG FIXES:
  * fisher.test(d) no longer segfaults for "large" d; fixing PR#18336
    by preventing/detecting an integer overflow reliably.
  * tar(., files=*) now produces correctly the warning about invalid
    uid or gid of files, fixing PR#18344, reported by Martin Morgan.
  * tk_choose.files() with multi = FALSE misbehaved on paths
    containing spaces (PR#18334) (regression introduced in R 4.0.0).
  * sort(x, partial = ind, *) now works correctly notably for the
    non-default na.last = FALSE or TRUE, fixing PR#18335 reported by
    James Edwards.
  * Environment variable _R_CHECK_XREFS_REPOSITORIES_ is only used
    for checking .Rd cross-references in R CMD check (as documented)
    and not for other uses looking for a CRAN mirror.
  * The search for a CRAN mirror when checking packages now uses
    getOption("repos") if that specifies a CRAN mirror, even when it
    does not also specify all three Bioconductor repositories (as was
    previously required).
  * The HTML code generated by tools::Rd2HTML() has been improved to
    pass tidy 5.8.0.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1667217600">- CHANGES IN R 4.2.2:
  NEW FEATURES:
  * tools::Rdiff(useDiff = TRUE) checks for the presence of an
    external diff command and switches to useDiff = FALSE if none is
    found.  This allows R CMD Rdiff to always work.
  * On Windows, environment variable R_LIBCURL_SSL_REVOKE_BEST_EFFORT
    can be used to switch to only 'best-effort' SSL certificate
    revocation checks with the default "libcurl" download method.
    This reduces security, but may be needed for downloads to work
    with MITM proxies (PR#18379).
  * (macOS) The run-time check for libraries from XQuartz for X11 and
    Tcl/Tk no longer uses otool from the Apple Developer Tools
    (PR#18400).
  * The LaTeX style for producing the PDF manuals, Rd.sty, now loads
    the standard amsmath, amsfonts and amssymb packages for greater
    coverage of math commands in the Rd \eqn and \deqn macros.  The
    \mathscr LaTeX command is also provided (via the mathrsfs
    package, if available, or the amsfonts bundle otherwise),
    fulfilling the wish of PR#18398.
  * (Windows) The default format of readClipboard() and
    writeClipboard() has been changed to 13 (CF_UNICODETEXT).
  INSTALLATION on a UNIX-ALIKE:
  * The PDF manuals (if built) can be compacted by the new target
    make compact-pdf (at the top level or in directory doc/manual).
  * There is now configure support for LLVM clang 15 on Linux, which
    defaults to position-independent (PIE) executables whereas
    gfortran does not.
  * Many small changes to ease compilation (and suppress warnings)
    with LLVM clang 15.
  BUG FIXES:
  * Rscript -e would fail if stdin were closed (Reported by Henrik
    Bengtsson.)
  * qt(*, log.p=TRUE) in outer tails no longer produces NaN in its
    final steps, thus fixing PR#18360.
  * tools::Rd2latex() now escapes hashes and ampersands when writing
    URLs, fixing LaTeX errors with such URLs in \tabular.
  * When isGeneric(f, fdef=*) is used with mismatching names, the
    warning is better understandable; reported (with fix) in PR#18370
    by Gabe Becker.
  * poly(x, n) now works again (and is now documented) when x is a
    "Date" or "POSIXct" object, or of another class while fulfilling
    mode(x) == "numeric".  This also enables poly(x, *, raw=TRUE) for
    such variables.  Reported by Michael Chirico to R-devel.
  * write.table(), write.csv() and write.csv2() restore their
    numerical precision (internal equivalent of digits = 15) after an
    interrupt (PR#18384).
  * One can now read also byte FF from a clipboard connection
    (PR#18385).
  * source("") and source(character()) now give more helpful error
    messages.
  * R CMD check --as-cran set _R_CHECK_TIMINGS_ too late to have the
    intended effect.
  * as.POSIXlt(x) now also works with very large dates x, fixing
    PR#18401 reported by Hannes M"uhleisen.
  * Files can now be extracted even from very large zip archives
    (PR#18390, thanks to Martin Jakt).
  * Non-finite objects of class "POSIXlt" are now correctly coerced
    to classes "Date" and "POSIXct"; following up on the extension to
    format() them correctly.
  * Added methods for is.finite(), is.infinite() and is.nan() for
    "POSIXlt" date-time objects.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1678881600">- CHANGES IN R 4.2.3:
  C-LEVEL FACILITIES:
  * The definition of DL_FUNC in R_ext/Rdynload.h has been changed to
    be fully C-compliant.  This means that functions loaded _via_ for
    example R_GetCCallable need to be cast to an appropriate type if
    they have any arguments.
  * .Machine has a new element sizeof.time_t to identify old systems
    with a 32-bit type and hence a limited range of date-times (and
    limited support for dates millions of years from present).
  PACKAGE INSTALLATION:
  * (Windows) The default C++ standard had accidentally been left at
    C++11 when it was changed to C++14 on Unix.
  BUG FIXES:
  * As "POSIXlt" objects may be "partially filled" and their list
    components meant to be recycled, length() now is the length of
    the longest component.
  * as.POSIXlt.Date() could underflow for dates in the far past (more
    than half a million years BCE).
  * as.Date.POSIXlt(x) would return "1970-01-01" instead of NA in R
    4.2.2, e.g., for
    x &lt;- as.POSIXlt(c("2019-01-30","2001-1-1"))
    x$mon &lt;- c(0L, NA); as.Date(x)
  * R CMD check failed to apply enabled _R_CHECK_SUGGESTS_ONLY_ to
    examples and vignettes (regression in R 4.2.0).
  * R CMD check did not re-build vignettes in separate processes by
    default (regression in R 4.2.0).
  * Running examples from HTML documentation now restores previous
    knitr settings and options (PR#18420).
  * Quartz: fonts are now located using Core Graphics API instead of
    deprecated ATS which is no longer supported in the macOS 13 SDK
    (PR#18426).  This also addresses an issue where the currently
    used font in the Quartz device context was not correctly
    retained.
  * (Windows) Math symbols in text drawing functions are again
    rendered correctly (PR#18440).  This fixes a regression in R
    4.2.1 caused by a fix in PR#18382 which uncovered an issue in
    GraphApp due to which the symbol charset was not used with TT
    Symbol font face.
  * (Windows) Installing a package with a src/Makefile.{win,ucrt}
    file includes ~/.R/Makevars.win64 in the search for user
    makevars, as documented in "R Installation and Administration"
    and done for packages with a src/Makevars.{win,ucrt} file.
  * format(&lt;POSIXlt_w/_unbalanced_sec&gt;, "....%OS&lt;n&gt;") with n &gt; 0 no
    longer accidentally uses the unbalanced seconds, thanks to
    Suharto Anggono's report (including patch) in PR#18448.
  * solve.default(a, b) works around issues with some versions of
    LAPACK when a contains NA or NaN values.
  * When UseMethod() cannot dispatch, it no longer segfaults
    producing the error message in case of a long class(), thanks to
    Joris Vankerschaver's report (including patch) in PR#18447.
  * When example(foo, ..) produces graphics on an interactive device
    it needs to open itself, it now leaves devAskNewPage() unchanged
    even when it was FALSE, thus fixing a 14 years old '&lt;FIXME&gt;'.
  * packageDescription() again catches errors from encoding
    conversions. This also fixes broken packageVersion() in C locale
    on systems where iconv does not support transliteration.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1681128000">- add patch to build with libcurl &gt;= 8</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1682078400">- CHANGES IN R 4.3.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Calling &amp;&amp; or || with LHS or (if evaluated) RHS of length greater
    than one is now always an error, with a report of the form
    'length = 4' in coercion to 'logical(1)'
    Environment variable _R_CHECK_LENGTH_1_LOGIC2_ no longer has any
    effect.
  NEW FEATURES:
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.10.1.  (This caused some platform-dependent
    changes to package check output.)  And then to the sources from
    LAPACK version 3.11.0 (with changes only to double complex
    subroutines).
  * The included LAPACK sources have been updated to include the four
    Fortran 90 routines rather than their Fortran 77 predecessors.
    This may give some different signs in SVDs or
    eigendecompositions..  (This completes the transition to LAPACK
    3.10.x begun in R 4.2.0.)
  * The LAPACK sources have been updated to version 3.11.0.  (No new
    subroutines have been added, so this almost entirely bug fixes:
    Those fixes do affect some computations with NaNs, including R's
    NA.)
  * The parser now signals _classed_ errors, notably in case of the
    pipe operator |&gt;.  The error object and message now give line and
    column numbers, mostly as proposed and provided by Duncan Murdoch
    in PR#18328.
  * toeplitz() is now generalized for asymmetric cases, with a
    toeplitz2() variant.
  * xy.coords() and xyz.coords() and consequently, e.g., plot(x,y,
    log = "y") now signal a _classed_ warning about negative values
    of y (where log(.) is NA).  Such a warning can be specifically
    suppressed or caught otherwise.
  * Regular expression functions now check more thoroughly whether
    their inputs are valid strings (in their encoding, e.g. in
    UTF-8).
  * The performance of grep(), sub(), gsub() and strsplit() has been
    improved, particularly with perl = TRUE and fixed = TRUE.  Use of
    useBytes = TRUE for performance reasons should no longer be
    needed and is discouraged: it may lead to incorrect results.
  * apropos() gains an argument dot_internals which is used by the
    completion (help(rcompgen)) engine to also see base internals
    such as .POSIXct().
  * Support in tools::Rdiff() for comparing uncompressed PDF files is
    further reduced - see its help page.
  * qqplot(x, y, ...) gains conf.level and conf.args arguments for
    computing and plotting a confidence band for the treatment
    function transforming the distribution of x into the distribution
    of y (Switzer, 1976, _Biometrika_). Contributed by Torsten
    Hothorn.
  * Performance of package_dependencies() has been improved for cases
    when the number of dependencies is large.
  * Strings newly created by gsub(), sub() and strsplit(), when any
    of the inputs is marked as "bytes", are also marked as "bytes".
    This reduces the risk of creating invalid strings and accidental
    substitution of bytes deemed invalid.
  * Support for readLines(encoding = "bytes") has been added to allow
    processing special text files byte-by-byte, without creating
    invalid strings.
  * iconv(from = "") now takes into account any declared encoding of
    the input elements and uses it in preference to the native
    encoding.  This reduces the risk of accidental creation of
    invalid strings, particularly when different elements of the
    input have different encoding (including "bytes").
  * Package repositories in getOption("repos") are now initialized
    from the repositories file when utils is loaded (if not already
    set, e.g., in .Rprofile).  (From a report and patch proposal by
    Gabriel Becker in PR#18405.)
  * compactPDF() gets a verbose option.
  * type.convert() and hence read.table() get new option tryLogical =
    TRUE with back compatible default.  When set to false, converts
    "F" or "T" columns to character.
  * Added new unit prefixes "R" and "Q" for abbreviating
    (unrealistically large) sizes beyond 10^{27} in standard = "SI",
    thanks to Henrik Bengtsson's PR#18435.
  * as.data.frame()'s default method now also works fine with atomic
    objects inheriting from classes such as "roman", "octmode" and
    "hexmode", such fulfilling the wish of PR#18421, by Benjamin
    Feakins.
  * The as.data.frame.vector() utility now errors for wrong-length
    row.names.  It warned for almost six years, with "Will be an
    error!".
  * sessionInfo() now also contains La_version() and reports codepage
    and timezone when relevant, in both print() and toLatex() methods
    which also get new option tzone for displaying timezone
    information when locale = FALSE.
  * New function R_compiled_by() reports the C and Fortran compilers
    used to build R, if known.
  * predict(&lt;lm&gt;, newdata = *) no longer unnecessarily creates an
    offset of all 0s.
  * solve() for complex inputs now uses argument tol and by default
    checks for 'computational singularity' (as it long has done for
    numeric inputs).
  * predict(&lt;rank-deficient lm&gt;, newdata=*) now obeys a new argument
    rankdeficient, with new default "warnif", warning only if there
    are non-estimable cases in newdata.  Other options include
    rankdeficient = "NA", predicting NA for non-estimable newdata
    cases.  This addresses PR#15072 by Russ Lenth and is based on his
    original proposal and discussions in PR#16158 also by David Firth
    and Elin Waring.  Still somewhat experimental.
  * Rgui console implementation now works better with the NVDA screen
    reader when the full blinking cursor is selected.  The underlying
    improvements in cursor handling may help also other screen
    readers on Windows.
  * The drop-field control in GraphApp can now be left with the TAB
    key and all controls can be navigated in the reverse order using
    the Shift+TAB key, improving accessibility of the Rgui
    configuration editor.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now fully accurate
    (instead of to "only" minimally five digits).
  * demo(error.catching) now also shows off withWarnings() and
    tryCatchWEMs().
  * As an experimental feature the placeholder _ can now also be used
    in the rhs of a forward pipe |&gt; expression as the first argument
    in an extraction call, such as _$coef. More generally, it can be
    used as the head of a chain of extractions, such as _$coef[[2]].
  * Spaces in the environment variable used to choose the R session's
    temporary directory (TMPDIR, TMP and TEMP are tried in turn) are
    now fatal.  (On Windows the 'short path' version of the path is
    tried and used if that does not contain a space.)
  * all.equal.numeric() gets a new optional switch giveErr to return
    the numeric error as attribute.  Relatedly,
    stopifnot(all.equal&lt;some&gt;(a, b, ..)) is as "smart" now, as
    stopifnot(all.equal(....)) has been already, thus allowing
    customized all.equal&lt;Some&gt;() wrappers.
  * R on Windows is now able to work with path names longer than 260
    characters when these are enabled in the system (requires at
    least Windows 10 version 1607).  Packages should be updated to
    work with long paths as well, instead of assuming PATH_MAX to be
    the maximum length.  Custom front-ends and applications embedding
    R need to update their manifests if they wish to allow this
    feature.  See
    &lt;https://blog.r-project.org/2023/03/07/path-length-limit-on-windows&gt;
    for more information.
  * 'Object not found' and 'Missing argument' errors now give a more
    accurate error context. Patch provided by Lionel Henry in
    PR#18241.
  * The @ operator is now an S3 generic. Based on contributions by
    Tomasz Kalinowski in PR#18482.
  * New generic chooseOpsMethod() provides a mechanism for objects to
    resolve cases where two suitable methods are found for an Ops
    Group Generic. This supports experimenting with alternative
    object systems. Based on contributions by Tomasz Kalinowski in
    PR#18484.
  * inherits(x, what) now accepts values other than a simple
    character vector for argument what. A new generic, nameOfClass(),
    is called to resolve the class name from what. This supports
    experimenting with alternative object systems. Based on
    contributions by Tomasz Kalinowski in PR#18485.
  * Detection of BLAS/LAPACK in use (sessionInfo()) with FlexiBLAS
    now reports the current backend.
  * The "data.frame" method for subset() now warns about extraneous
    arguments, typically catching the use of = instead of == in the
    subset expression.
  * Calling a:b when numeric a or b is longer than one may now be
    made into an error by setting environment variable
    _R_CHECK_LENGTH_COLON_ to a true value, along the proposal in
    PR#18419 by Henrik Bengtsson.
  * density(x, weights = *) now warns if automatic bandwidth
    selection happens without using weights; new optional warnWbw may
    suppress the warning.  Prompted by Christoph Dalitz' PR#18490 and
    its discussants.
  * rm(list = *) is faster and more readable thanks to Kevin Ushey's
    PR#18492.
  * The plot.lm() function no longer produces a normal Q-Q plot for
    GLMs. Instead it plots a half-normal Q-Q plot of the absolute
    value of the standardized deviance residuals.
  * The print() method for class "summary.glm" no longer shows
    summary statistics for the deviance residuals by default.  Its
    optional argument show.residuals can be used to show them if
    required.
  * The tapply() function now accepts a data frame as its X argument,
    and allows INDEX to be a formula in that case. by.data.frame()
    similarly allows INDICES to be a formula.
  * The performance of df[j] &lt;- value (including for missing j) and
    write.table(df) has been improved for data frames df with a large
    number of columns.  (Thanks to Gabriel Becker's PR#18500,
    PR#18503 and discussants, prompted by a report from Toby Dylan
    Hocking on the R-devel mailing list.)
  * The matrix multiply operator %*% is now an S3 generic, belonging
    to new group generic matrixOps.  From Tomasz Kalinowski's
    contribution in PR#18483.
  * New function array2DF() to convert arrays to data frames,
    particularly useful for the list arrays created by tapply().
  DATES and TIMES:
  * On platforms where (non-UTC) datetimes before 1902 (or before
    1900 as with system functions on recent macOS) are guessed by
    extrapolating time zones from 1902-2037, there is a warning at
    the first use of extrapolation in a session.  (As all time zones
    post 2037 are extrapolation, we do not warn on those.)
  * (Platforms using --with-internal-tzone, including Windows and by
    default macOS). How years are printed in dates or date-times can
    be controlled by environment variable R_PAD_YEARS_BY_ZERO.  The
    default remains to pad to 4 digits by zeroes, but setting value
    no gives no padding (as used by default by glibc).
  * strftime() tries harder to determine the offset for the "%z"
    format, and succeeds on the mainstream R platforms.
  * strftime() has a limit of 2048 bytes on the string produced -
    attempting to exceed this is an error.  (Previously it silently
    truncated at 255 bytes.)
  * sessionInfo() records (and by default prints) the system time
    zone as part of the locale information.  Also, the source
    (system/internal) of the date-time conversion and printing
    functions.
  * Objects of class "POSIXlt" created in this version of R always
    have 11 components: component zone is always set, and component
    gmtoff is set for times in UTC and usually set on the (almost
    all) platforms which have C-level support, otherwise is NA.
  * There are comprehensive validity checks on the structure of
    objects of class "POSIXlt" when converting (including formatting
    and printing).  (This avoids mis-conversions of hand-crafted
    objects.)
  * There is some support for using the native date-time routines on
    macOS: this is only viable on recent versions (e.g. 12.6 and 13)
    and does get wrong some historical changes (before 1900, during
    WWII).  Use of --with-internal-tzone remains the default.
  * as.POSIXct(&lt;numeric&gt;) and as.POSIXlt(.) (without specifying
    origin) now work.  So does as.Date(&lt;numeric&gt;).
  * as.Date.POSIXct(., tz) now treats several tz values, notably
    "GMT" as equivalent to "UTC", proposed and improved by Michael
    Chirico and Joshua Ulrich in PR#17674.
  * Experimental balancePOSIXlt() utility allows using "ragged" and
    or out-of-range "POSIXlt" objects more correctly, e.g., in
    subsetting and subassignments.  Such objects are now documented.
    More experimentally, a "POSIXlt" object may have an attribute
    "balanced" indicating if it is known to be filled or fully
    balanced.
  * Functions axis.Date() and axis.POSIXct() are rewritten to gain
    better default tick locations and better default formats by using
    prettyDate(). Thanks to Swetlana Herbrandt.
  * The mapping of Windows' names for time zones to IANA's 'Olson'
    names has been updated.  When ICU is available (it is by
    default), it is used to get a mapping for the current region set
    in Windows.  This can be overridden by setting environment
    variable TZ to the desired Olson name - see OlsonNames() for
    those currently available.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 16
    and so packages that provide graphics devices should be
    reinstalled.
  * The grDevices and grid packages have new functions for rendering
    typeset glyphs, primarily: grDevices::glyphInfo() and
    grid::grid.glyph().
    Rendering of typeset glyphs is only supported so far on the
    Cairo-based graphics devices and on the pdf() and quartz()
    devices.
  * The defined behaviour for "clear" and "source" compositing
    operators (via grid::grid.group()) has been changed (to align
    better with simple interpretation of original Porter-Duff
    definitions).
  * Support for gradients, patterns, clipping paths, masks, groups,
    compositing operators, and affine transformations has been added
    to the quartz() device.
  INSTALLATION on a UNIX-ALIKE:
  * A system installation of generic LAPACK 3.10.0 or later will be
    preferred to the version in the R sources.
    configure option --with-lapack=no (equivalently --without-lapack)
    forces compilation of the internal LAPACK sources.
    If --with-lapack is not specified, a system liblapack is looked
    for and used if it reports version 3.10.0 or later and does not
    contain BLAS routines.
    Packages using LAPACK will need to be reinstalled if this changes
    to using an external library.
  * On aarch64 Linux platforms using GCC, configure now defaults to
  - fPIC (instead of -fpic), as desired in PR#18326.
  * configure now checks conversion of datetimes between POSIXlt and
    POSIXct around year 2020.  Failure (which has been seen on
    platforms missing tzdata) is fatal.
  * If configure option --with-valgrind-instrumentation is given
    value 1 or 2, option --with-system-valgrind-headers is now the
    default and ignored (with a warning).  It is highly recommended
    that the system headers are installed alongside valgrind: they
    are part of its packaging on some Linux distributions and
    packaged separately (e.g. in the valgrind-devel RPM) on others.
    configure will give a warning if they are not found.
    The system headers will be required in a future release of R to
    build with valgrind instrumentation.
  * libcurl 8.x is now accepted by configure: despite a change in
    major version number it changes neither API nor ABI.
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools43, an update of the Rtools42 toolchain.  It is
    based on gcc 12 and newer versions of MinGW-W64, binutils and
    libraries.  At this time R-devel can still be built using
    Rtools42 without changes, but when R-devel is installed via the
    installer, it will by default look for Rtools43.
  * Old make targets rsync-extsoft and 32-bit ones that are no longer
    needed have been removed.
  * Default builds (including for packages) no longer select C99.
    Thus the C standard used is the default for the compiler, which
    for the toolchain in Rtools43 is C17.  (This is consistent with
    Unix builds.)
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++17 where
    available (which it is on all currently checked platforms): if
    not C++14 or C++11 is used if available otherwise C++ is not
    supported.
  * USE_FC_LEN_T is the default: this uses the correct
    (compiler-dependent) prototypes for Fortran BLAS/LAPACK routines
    called from C/C++, and requires adjustment of many such calls -
    see 'Writing R Extensions' SS6.6.1.
  * There is initial support for C++23 as several compilers are now
    supporting -std=c++23 or -std=c++2b or similar.  As for C++20,
    there no additional configure checks for C++23 features beyond a
    check that the compiler reports a __cplusplus value greater than
    that in the C++20 standard.  C++ feature tests should be used.
  * There is support for a package to indicate the version of the C
    standard which should be used to compile it, and for the
    installing user to specify this.  In most cases R defaults to the
    C compiler's default standard which is C17 (a `bug-fix' of C11) -
    earlier versions of R or compilers may have defaulted to C99.
    Current options are:
    USE_C17 Use a standard that is at most C17.  The intention is to
    allow legacy packages to still be installed when later C
    standards become the default, including packages using new
    keywords as identifiers or with K&amp;R-style function
    declarations.  This will use C17 if available, falling back
    to C11.
    USE_C90 Use the C90 (aka C89) standard.  (As that standard did
    not require compilers to identify that version, all we can
    verify is that the compiler does not claim to be using a
    later standard.  It may accept C99 features - for example
    clang accepts // to make comments.)
    USE_C99 Use the C99 standard. This should be rarely needed - it
    avoids the few new features of C11/C17 which can be useful if
    a package assumes them if C17 is specified and they are not
    implemented.
    USE_C23 Use C23 (or in future, later).  Compiler/library support
    for C23 is still being implemented, but LLVM clang from
    15.0.0 and the upcoming GCC 13 have quite extensive support.
    These can be specified as part of the SystemRequirements field in
    the package's DESCRIPTION file or _via_ options --use-C17 and so
    on of R CMD INSTALL and R CMD SHLIB.
    For further details see "Writing R Extensions" SS1.2.5.
  * (Windows) A src/Makefile.ucrt or src/Makefile.win file is now
    included after R_HOME/etcR_ARCH/Makeconf and so no longer needs
    to include that file itself.  Installation of a package with such
    a file now uses a site Makevars file in the same way as a package
    with a src/Makevars.win file would.
  * configure is now passed crucial variables such as CC and CFLAGS
    in its environment, as many packages were not setting them (as
    documented in 'Writing R Extensions' SS1.2).
    This has most effect where configure is used to compile parts of
    the package - most often by cmake or libtool which obfuscate the
    actual compile commands used.
    Also used for configure.win and configure.ucrt on Windows.
  FORTRAN FLAGS:
  * The flag -fno-optimize-sibling-calls is no longer forced for
    gfortran 7 and later.  It should no longer be needed now using
    'hidden' character-length arguments when calling BLAS/LAPACK
    routines from C/C++ is the default even for packages.  (Unless
    perhaps packages call Fortran code from C/C++ without using R's
    headers and without allowing for these arguments.)
  C-LEVEL FACILITIES:
  * The deprecated S-compatibility macros DOUBLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * The deprecated legacy typedefs of Sint and Sfloat in header R.h
    are no longer defined, and that header no longer includes header
    limits.h from C nor climits from C++.
  * New macro CAD5R() is provided in Rinternals.h and used in a few
    places in the R sources.
  * ALTREP now supports VECSXP vectors. Contributed by Gabor Csardi
    in PR#17620.
  * The Rcomplex definition (in header R_ext/Complex.h) has been
    extended to prevent possible mis-compilation when interfacing
    with Fortran (PR#18430).  The new definition causes compiler
    warnings with static initializers such as {1, 2}, which can be
    changed to {.r=1, .i=2}.
    Using the new definition from C++ depends on compiler extensions
    supporting C features that have not been incorporated into the
    C++ standards but are available in g++ and clang++: this may
    result in C++ compiler warnings but these have been worked around
    for recent versions of common compilers (GCC, Apple/LLVM clang,
    Intel).
    It is intended to change the inclusion of header R_ext/Complex.h
    by other R headers, so C/C++ code files which make use of
    Rcomplex should include that header explicitly.
  UTILITIES:
  * R CMD check does more checking of package .Rd files, warning
    about invalid email addresses and (some) invalid URIs and noting
    empty \item labels in description lists.
  * R CMD check now also reports problems when reading package news
    in md (file NEWS.md) and (optionally) plain text (file NEWS)
    formats.
  * _R_CHECK_TIMINGS_ defaults to a value from the environment even
    for R CMD check --as-cran; this allows for exceptionally fast or
    slow platforms.
    It now applies to checking PDF and HTML versions of the manuals,
    and 'checking CRAN incoming feasibility'.
  * R CMD check can optionally (but included in --as-cran) check
    whether HTML math rendering _via_ KaTeX works for the package .Rd
    files.
  * Non-interactive debugger invocations can be trapped by setting
    the environment variable _R_CHECK_BROWSER_NONINTERACTIVE_ to a
    true value.  This is enabled by R CMD check --as-cran to detect
    the use of leftover browser() statements in the package.
  * The use of sprintf and vsprintf from C/C++ has been deprecated in
    macOS 13 and is a known security risk.  R CMD check now reports
    (on all platforms) if their use is found in compiled code:
    replace by snprintf or vsnprintf respectively. [*NB:* whether
    such calls get compiled into the package is platform-dependent.]
  * Where recorded at installation, R CMD check reports the C and
    Fortran compilers used to build R.
    It reports the OS in use (if known, as given by osVersion) as
    well as that R was built for.
    It notes if a C++ standard was specified which is older than the
    current default: many packages have used C++11 to mean 'not
    C++98' - as C++11 is the minimum supported since R 4.0.0, that
    specification can probably be removed.
  * R CMD INSTALL reports the compilers (and on macOS, the SDK) used,
    and this is copied to the output of R CMD check.
    Where a C++ standard is specified, it is reported.
  * R CMD check's 'checking compilation flags in Makevars' has been
    relaxed to accept the use of flags such as -std=f2008 in
    PKG_FFLAGS.
  * tools::buildVignettes() has a new argument skip, which is used by
    R CMD check to skip (and note) vignettes with unavailable
    \VignetteDepends (PR#18318).
  * New generic .AtNames() added to enable class-specific completions
    after @. The formerly internal function findMatches() is now
    exported, mainly for use in methods for .DollarNames() and
    .AtNames().
  DEPRECATED AND DEFUNCT:
  * default.stringsAsFactors() is defunct.
  * Calling as.data.frame.&lt;class&gt;() directly (for 12 atomic classes)
    is going to be formally deprecated, currently activated by
    setting the environment variable
    _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ to non-empty, which also
    happens in R CMD check --as-cran.
  BUG FIXES:
  * Hashed environments with sizes less than 5 can now grow.
    (Reported to R-devel by Duncan Garmonsway.)
  * as.character(&lt;Rd&gt;, deparse = TRUE) failed to re-escape curly
    braces in LaTeX-like text.  (Reported by Hadley Wickham in
    PR#18324.)
  * library() now passes its lib.loc argument when requiring Depends
    packages; reported (with fix) in PR#18331 by Mikael Jagan.
  * R CMD Stangle: improved message about 'Output' files.
  * head(x, n) and tail(x, n) now signal an error if n is not
    numeric, instead of incidentally "working" sometimes returning
    all of x.  Reported and discussed by Colin Fay, in PR#18357.
  * The "lm" method for summary() now gives the correct F-statistic
    when the model contains an offset.  Reported in PR#18008.
  * C() and `contrasts&lt;-`() now preserve factor level names when
    given a function object (as opposed a function name which did
    preserve names). Reported in PR#17616.
  * c(a = 1, 2)[[]] no longer matches 2 but rather signals a
    _classed_ error.  Reported and analysed by Davis Vaughan in
    PR#18367, a duplicate of PR#18004, by Jan Meis et al.  For
    consistency, NULL[[]] is also erroneous now.  x[[]] &lt;- v gives an
    error of the same class "MissingSubscriptError".
  * The relist() function of utils now supports NULL elements in the
    skeleton (PR#15854).
  * ordered(levels = *) (missing x) now works analogously to factor(,
    ordered=TRUE); reported (with fix) by Achim Zeileis in PR#18389.
  * User-defined Rd macro definitions can now span multiple lines,
    thanks to a patch from Duncan Murdoch. Previously, the Rd parser
    silently ignored everything after the first line.
  * Plain-text help (tools::Rd2txt()) now preserves an initial blank
    line for text following description list items.
  * tools::Rd2HTML() and tools::Rd2latex() no longer split \arguments
    and \value lists at Rd comments.
  * tools::Rd2latex() now correctly handles optional text outside
    \items of argument lists as well as bracketed text at the
    beginning of sections, e.g., \value{[NULL]}.
  * as.character(&lt;POSIXt&gt;) now behaves more in line with the methods
    for atomic vectors such as numbers, and is no longer influenced
    by options().  Ditto for as.character(&lt;Date&gt;).  The
    as.character() method gets arguments digits and OutDec with
    defaults _not_ depending on options().  Use of as.character(*,
    format = .) now warns.
  * Similarly, the as.character.hexmode() and *.octmode() methods
    also behave as good citizen methods and back compatibility option
    keepStr = TRUE.
  * The as.POSIXlt(&lt;POSIXlt&gt;) and as.POSIXct(&lt;POSIXct&gt;) default
    methods now do obey their tz argument, also in this case.
  * as.POSIXlt(&lt;Date&gt;) now does apply a tz (time zone) argument, as
    does as.POSIXct(); partly suggested by Roland Fuss on the R-devel
    mailing list.
  * as.Date.POSIXlt(x) now also works when the list components are of
    unequal length, aka "partially filled" or "ragged".
  * expand.model.frame() looked up variables in the wrong environment
    when applied to models fitted without data.  Reported in
    PR#18414.
  * time() now (also) uses the ts.eps = getOption("ts.eps") argument
    and thus by default rounds values very close to the start (or
    end) of a year.  Based on a proposal by Andre"i V. Kostyrka on
    R-help.
  * Printing of a factanal() result with just one factor and sort =
    TRUE now works regularly, fixing PR#17863 by Timothy Bates,
    thanks to the 'R Contributors' working group.
  * Printing 0-length objects of class "factor", "roman", "hexmode",
    "octmode", "person", "bibentry", or "citation" now prints
    something better, one of which fixes PR#18422, reported by
    Benjamin Feakins.
  * Sys.timezone() queries timedatectl only if systemd is loaded;
    addressing a report by Jan Gorecki in PR#17421.
  * The formula method of cor.test() had scoping problems when
    environment(formula) was not the calling environment; reported
    with a patch proposal by Mao Kobayashi in PR#18439.
  * attach() of an environment with active bindings now preserves the
    active bindings.  Reported by Kevin Ushey in PR#18425.
  * BLAS detection now works also with system-provided libraries not
    available as regular files.  This fixes detection of the
    Accelerate framework on macOS since Big Sur.  Reported by David
    Novgorodsky.
  * download.file() gives a helpful error message in case of an
    invalid download.file.method option, thanks to Colin Fay's report
    in PR#18455.
  * Sporadic crashes of Rterm when using completion have been fixed.
  * Rprof() is now more reliable.  A livelock in thread
    initialization with too short sampling interval has been fixed on
    macOS.  A deadlock in using the C runtime has been fixed on
    Windows.  A potential deadlock has been prevented on Unix.
  * Cursor placement in Rgui now works even after a fixed-width font
    is selected.
  * Mandatory options (options()) are now set on startup so that
    saving and restoring them always works (PR#18372).
  * Package installation, R CMD INSTALL or install.packages(*), now
    parses each of the &lt;pkg&gt;/R/*.R files individually instead of
    first concatenating and then parse()ing the large resulting file.
    This allows parser or syntax errors to be diagnosed with correct
    file names and line numbers, thanks to Simon Dedman's report and
    Bill Dunlap's patch in PR#17859.
    This _does_ require syntactically self contained R source files
    now, fixing another inadvertent bug.
  * predict.lm(&lt;model with offset&gt;) now finds the offset in the
    correct environment, thanks to Andr'e Gillibert's report and patch
    in PR#18456.
  * getInitial(&lt;formula&gt;) now finds the selfStart model in the
    correct environment.  (Reported by Ivan Krylov in PR#18368.)
  * Fix for possible segfault when using recently-added graphics
    features, such as gradients, clipping paths, masks, and groups
    with pdf(file=NULL).
  * class(m) &lt;- class(m) no longer changes a matrix m by adding a
    class _attribute_.
  * packageDate(pkg) now only warns once if there is no pkg.
  * When ts() creates a multivariate time series, "mts", it also
    inherits from "array" now, and is.mts() is documented _and_
    stricter.
  * Rd2txt() now preserves line breaks of \verb Rd content and from
    duplicated \cr.  The former also fixes the rendering of verbatim
    output from Rd \Sexpr in plain-text help.
  * uniroot(f, interval) should no longer wrongly converge _outside_
    the interval in some cases where abs(f(x)) == Inf for an x at the
    interval boundary, thanks to posts by Ben Bolker and Serguei
    Sokol on R-devel.
  * Vectorized alpha handling in palette functions such as in gray(),
    rainbow(), or hcl.colors() works correctly now, thanks to Achim
    Zeileis' report and patch in PR#18476.
  * Formatting and print()ing of bibentry objects has dropped the
    deprecated citation.bibtex.max argument, such that the bibtex
    argument's default for print.bibentry() depends directly on the
    citation.bibtex.max option, whereas in format.bibentry() the
    option no longer applies.
  * Attempting to use a character string naming a foreign function
    entry point in a foreign function call in a package will now
    signal an error if the packages has called R_forceSymbols to
    specify that symbols must be used.
  * An error in table() could permanently set options(warn=2)
    promoting all subsequent warnings to errors.
  * The sigma() function gave misleading results for binary GLMs.  A
    new method for objects of class "glm" returns the square root of
    the estimate of the dispersion parameter using the same
    calculation as summary.glm().
  * bs() and ns() in the (typical) case of automatic knot
    construction, when some of the supposedly inner knots coincide
    with boundary knots, now moves them inside (with a warning),
    building on PR#18442 by Ben Bolker.
  * R CMD on Windows now skips the site profile with --no-site-file
    and --vanilla even when R_PROFILE is set (PR#18512, from Kevin
    Ushey).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1686916800">- CHANGES IN R 4.3.1:
  C-LEVEL FACILITIES:
  * The C-level API version of R's integrate(), Rdqags() in Applic.h,
    now returns the correct number of integrand evaluations neval,
    fixing PR#18515 reported and diagnosed by Stephen Wade.
  * The C prototypes for LAPACK calls dspgv and dtptrs in
    R_exts/Lapack.h had one too many and one too few character length
    arguments - but this has not caused any known issues. To get the
    corrected prototypes, include
    [#]include &lt;Rconfig.h&gt; // for PR18534fixed
    [#]ifdef PR18534fixed
    [#] define usePR18534fix 1
    [#]endif
    [#]include &lt;R_exts/Lapack.h&gt;
    in your C/C++ code (PR#18534).
  INSTALLATION:
  * Many of the checks of esoteric Internet operations and those
    using unreliable external sites have been moved to a new target
    that is not run by default and primarily intended for the core
    developers.  To run them use
    cd tests; make test-Internet-dev
  BUG FIXES:
  * .S3methods(), typically called from methods(), again marks
    methods from package base as visible.
    Also, the visibility of non-base methods is again determined by
    the method's presence in search().
  * tools::Rdiff() is now more robust against invalid strings, fixing
    installation tests on Windows without Rtools installed
    (PR#18530).
  * Fix (new) bug in hcl.colors(2, *), by Achim Zeileis (PR#18523).
  * head(., &lt;illegal&gt;) and tail(..) now produce more useful "Error in
    ...." error messages, fixing PR#18362.
  * Package code syntax on Windows is checked in UTF-8 when UTF-8 is
    the native encoding.
  * na.contiguous(x) now also returns the first run, when it is at
    the beginning and there is a later one of the same length;
    reported to R-devel, including a fix, by Georgi Boshnakov.
    Further, by default, it modifies only an existing attr(*,"tsp")
    but otherwise no longer sets one.
  * chol(&lt;not pos.def&gt;, pivot = &lt;T|F&gt;) now gives a correct error or
    warning message (depending on pivot), thanks to Mikael Jagan's
    (PR#18541).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1699012800">- CHANGES IN R 4.3.2:
  NEW FEATURES:
  * The default initialization of the "repos" option from the
    repositories file at startup can be skipped by setting
    environment variable R_REPOSITORIES to NULL such that
    getOption("repos") is empty if not set elsewhere.
  * qr.X() is now an implicit S4 generic in methods.
  * iconv(to = "ASCII//TRANSLIT") is emulated using substitution on
    platforms which do not support it (notably Alpine Linux).  This
    should give a human-readable conversion in ASCII on all platforms
    (rather than NA_character_).
  * trans3d() gains options continuous and verbose addressing the
    problem of possible "wrap around" when projecting too long
    curves, as reported by Achim Zeileis in PR#18537.
  * tools::showNonASCII() has been rewritten to work better on macOS
    14 (which has a changed implementation of iconv()).
  * tiff(type = "quartz") (the default on macOS) now warns if
    compression is specified: it continues to be ignored.
  INSTALLATION on a UNIX-ALIKE:
  * There is some support for building with Intel's LLVM-based
    compilers on x86_64 Linux, such as (C) icx, (C++) ipcx and
    (Fortran) ifx from oneAPI 2023.x.y.
  * There is support for using LLVM's flang-new as the Fortran
    compiler from LLVM 16.0.x (preferably 17.0.0 or later).
  UTILITIES:
  * R CMD check reports the use of the Fortran 90 random number
    generator RANDOM_NUMBER() and the subroutines to initialize it.
    'Writing R Extensions' has example code to use R's RNGs from
    Fortran.
  BUG FIXES:
  * substr(x, n, L) &lt;- cc now works (more) correctly for multibyte
    UTF-8 strings x when L &gt; nchar(x), thanks to a report and patch
    by 'Architect 95'.
  * contrib.url(character()) now returns 0-length character() as
    documented, which also avoids spurious warnings from
    available.packages() et al. in the edge case of an empty vector
    of repository URLs.
  * readChar(., 4e8) no longer fails, thanks to Kodi Arfer's report
    (PR#18557).
  * lapply(&lt;list&gt;, as.data.frame) no longer warns falsely for some
    base vector components.
  * Communication between parent and child processes in the multicore
    part of parallel could fail on platforms that do not support an
    arbitrarily large payload in system functions read()/write() on
    pipes (seen on macOS where a restriction to INT_MAX bytes is
    documented, without doing a partial read unlike Linux). The
    payload is now split into 1Gb chunks to avoid that problem.
    (PR#18571)
  * qqplot(x,y, conf.level=.) gives better confidence bounds when
    length(x) != length(y), thanks to Alexander Ploner's report and
    patch proposal (PR#18557).
  * norm(&lt;0-length&gt;, "2") now gives zero instead of an error, as all
    the other norm types, thanks to Mikael Jagan's PR#18542.
  * Build-stage Rd macros \packageAuthor and \packageMaintainer now
    process Authors@R, fixing NA results when the package DESCRIPTION
    omits Author and Maintainer fields.
  * Formatting and printing complex numbers could give things like
    0.1683-0i because of rounding error: -0i is now replaced by +0i.
  * postscript() refused to accept a title comment containing the
    letter "W" (PR#18599).
  * isoreg(c(1,Inf)) signals an error instead of segfaulting, fixing
    PR#18603.
  * tiff(type = "Xlib") was only outputting the last page of
    multi-page plots.
  * tools::latexToUtf8() again knows about \~{n} and other letters
    with tilde, fixing a regression in R 4.3.0, and about \^{i} as an
    alternative to \^{\i} (similarly with other accents).
    Furthermore, LaTeX codes for accented I letters are now correctly
    converted, also fixing related mistakes in
    tools::encoded_text_to_latex().
  * tar(*, tar = "internal") no longer creates out-of-spec tar files
    in the very rare case of user or group names longer than 32
    bytes, fixing PR#17871 with thanks to Ivan Krylov.
  * When using the "internal" timezone datetime code, adding a
    fraction of a second no longer adds one second, fixing PR#16856
    from a patch by Ivan Krylov.
  * tools::checkRd() no longer produces spurious notes about
    "unnecessary braces" from multi-line Rd results of \Sexpr macros.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1709208000">- CHANGES IN R 4.3.3:
  NEW FEATURES:
  * iconv() now fixes up variant encoding names such as "utf8"
    case-insensitively.
  DEPRECATED AND DEFUNCT:
  * The legacy encoding = "MacRoman" is deprecated in pdf() and
    postscript(): support was incomplete in earlier versions of R.
  BUG FIXES:
  * Arguments are now properly forwarded to methods on S4 generics
    with ... in the middle of their formal arguments. This was broken
    for the case when a method introduced an argument but did not
    include ... in its own formals. Thanks to Herv'e Pag`es for the
    report PR#18538.
  * Some invalid file arguments to pictex(), postscript() and xfig()
    opened a file called NA rather than throw an error.  These
    included postscript(NULL) (which some people expected to work
    like pdf(NULL)).
  * Passing filename = NA to svg(), cairo_pdf(), cairo_ps() or the
    Cairo-based bitmap devices opened a file called NA: it now throws
    an error.
  * quartz(file = NA) opened a file called NA, including when used as
    a Quartz-based bitmap device.  It now gives an error.
  * rank(&lt;long vector&gt;) now works, fixing PR#18617, thanks to Ilia
    Kats.
  * seq.int() did not adequately check its length.out argument.
  * match(&lt;POSIXct&gt;, .) is correct again for differing time zones,
    ditto for "POSIXlt", fixing PR#18618 reported by Bastian Klein.
  * drop.terms(*, dropx = &lt;0-length&gt;) now works, fixing PR#18563 as
    proposed by Mikael Jagan.
  * drop.terms(*) keeps + offset(.) terms when it should, PR#18565,
    and drop.terms() no longer makes up a response, PR#18566, fixing
    both bugs thanks to Mikael Jagan.
  * getS3method("t", "test") no longer finds the t.test() function,
    fixing PR#18627.
  * pdf() and postscript() support for the documented Adobe encodings
    "Greek" and "Cyrilllic" was missing (although the corresponding
    Windows' codepages could be used).
  * Computations of glyph metric information for pdf() and
    postscript() did not take into account that transliteration could
    replace one character by two or more (only seen on macOS 14) and
    typically warned that the information was not known.
  * rank(x) no longer overflows during integer addition, when
    computing rank average for largish but not-yet long vector x,
    fixing PR#18630, thanks to Ilia Kats.
  * list.files() on Windows now returns also files with names longer
    that 260 bytes (the Windows limit is 260 characters).
    Previously, some file names particularly with 'East Asian'
    characters were omitted.
  * cov2cor(&lt;0 x 0&gt;) now works, fixing PR#18423 thanks to Mikael
    Jagan and Elin Waring.
  * cov2cor(&lt;negative diagonal&gt;) and similar now give one warning
    instead of two, with better wording, fixing PR#18424 thanks to
    Mikael Jagan.
  * tools:: startDynamicHelp() now ensures port is in proper range,
    fixing PR#18645.
  * pbeta(x, a,b) is correct now for x=0 or 1 in the boundary cases
    where a or b or both are 0, fixing PR#18672 thanks to Michael
    Fay.
  * pmatch(x, table) for large table, also called for data frame row
    selection, dfrm[nm, ], is now interruptible, fixing PR#18656.
  * predict(&lt;rank-deficient lm&gt;, newdata=*) fix computing of nbasis,
    see Russ Lenth's comment 29 in PR#16158.
  * Added a work-around for a bug in macOS 14.3.1 and higher which
    prevents R plots in the Quartz Cocoa device from updating on
    screen.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1713960000">- CHANGES IN R 4.4.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Startup banners, R --version, sessionInfo() and R CMD check no
    longer report (64-bit) as part of the platform as this is almost
    universal - the increasingly rare 32-bit platforms will still
    report (32-bit).
    On Windows, ditto for window titles.
  * is.atomic(NULL) now returns FALSE, as NULL is not an atomic
    vector.  Strict back-compatibility would replace is.atomic(foo)
    by (is.null(foo) || is.atomic(foo)) but should happen only
    sparingly.
  NEW FEATURES:
  * The confint() methods for "glm" and "nls" objects have been
    copied to the stats package.  Previously, they were stubs which
    called versions in package MASS. The MASS namespace is no longer
    loaded if you invoke (say) confint(glmfit).  Further, the "glm"
    method for profile() and the plot() and pairs() methods for class
    "profile" have been copied from MASS to stats.  (profile.nls()
    and plot.profile.nls() were already in stats.)
  * The confint() and profile methods for "glm" objects have gained a
    possibility to do profiling based on the Rao Score statistic in
    addition to the default Likelihood Ratio. This is controlled by a
    new test = argument.
  * The pairs() method for "profile" objects has been extended with a
    which = argument to allow plotting only a subset of the
    parameters.
  * The "glm" method for anova() computes test statistics and
    p-values by default, using a chi-squared test or an F test
    depending on whether the dispersion is fixed or free.  Test
    statistics can be suppressed by giving argument test a false
    logical value.
  * In setRepositories() the repositories can be set using their
    names via name = instead of index ind =.
  * methods() and .S3methods() gain a all.names option for the (rare)
    case where functions starting with a . should be included.
  * Serializations can now be interrupted (e.g., by Ctrl-C on a
    Unix-alike) if they take too long, e.g., from save.image(),
    thanks to suggestions by Ivan Krylov and others on R-devel.
  * New startup option --max-connections to set the maximum number of
    simultaneous connections for the session.  Defaults to 128 as
    before: allowed values up to 4096 (but resource limits may in
    practice restrict to smaller values).
  * R on Windows (since Windows 10 2004) now uses the new Segment
    Heap allocator. This may improve performance of some
    memory-intensive applications.
  * When R packages are built, typically by R CMD build &lt;pkg&gt;, the
    new --user=&lt;build_user&gt; option overrides the (internally
    determined) user name, currently Sys.info()["user"] or LOGNAME.
    This is a (modified) fulfillment of Will Landau's suggestion in
    PR#17530.
  * tools::testInstalledBasic() gets new optional arguments outDir
    and testSrcdir, e.g., allowing to use it in a &lt;builddir&gt; !=
    &lt;srcdir&gt; setup, and in standard "binary" Windows installation
  * if* a source tests/ folder is present.
  * range(&lt;DT_with_Inf&gt;, finite = TRUE) now work for objects of class
    "Date", "POSIXct", and "POSIXlt" with infinite entries,
    analogously to range.default(), as proposed by Davis Vaughan on
    R-devel.  Other range()-methods can make use of new function
    .rangeNum().
  * New .internalGenerics object complementing .S3PrimitiveGenerics,
    for documentation and low-level book-keeping.
  * grid() now invisibly returns the x- and y- coordinates at which
    the grid-lines were drawn.
  * norm(., type) now also works for complex matrices.
  * kappa(., exact = TRUE, norm = *) now works for all norms and also
    for complex matrices.  In symmetric / triangular cases, the new
    argument uplo = "U" | "L" allows the upper or lower triangular
    part to be specified.
  * memDecompress(type = "unknown") recognizes compression in the
    default 'zlib' format as used by memCompress(type = "gzip").
  * memCompress() and memDecompress() will use the libdeflate library
    (&lt;https://github.com/ebiggers/libdeflate&gt;) if installed.  This
    uses the same type of compression for type = "gzip" but is 1.5-2x
    faster than the system libz library on some common platforms: the
    speed-up may depend on the library version.
  * diff() for objects of class "Date", "POSIXct", and "POSIXlt"
    accepts a units argument passed via ....
  * Dynamic help now does a much better job of rendering package
    DESCRIPTION metadata.
  * Rprof() gains an event argument and support for elapsed (real)
    time profiling on Unix (PR#18076).
  * filled.contour() gains a key.border argument.
  * tools::update_pkg_po() gets arguments pot_make and mo_make for
    _not_ re-making the corresponding files, and additionally a
    verbose argument.
  * Hexadecimal string colour specifications are now accepted in
    short form, so, for example, we can use "#123", which is
    equivalent to "#112233".
    Thanks to MikeFC for the original idea and Ella Kaye, Malcolm
    Barrett, George Stagg, and Hanne Oberman for the patch.
  * Plain-text help shows \var markup by angle brackets.
  * The new experimental primitive function declare() is intended to
    eventually allow information about R code to be communicated to
    the interpreter, compiler, and code analysis tools. The syntax
    for declarations is still being developed.
  * Functions psmirnov(), qsmirnov() and rsmirnov() in package stats
    have had argument two.sided renamed to alternative, to take into
    account that the permutation distributions of the one-sided
    statistics can be different in the case of ties.  Consequence of
    PR#18582.
  * sort() is now an implicit S4 generic in methods.
  * Formatting and printing, format(z), print(z), of complex vectors
    z no longer zap relatively small real or imaginary parts to zero,
    fixing PR#16752.  This is an API change, as it was documented
    previously to round real and imaginary parts together on purpose,
    producing nicer looking output.  As mentioned, e.g. in the PR,
    this change is compatible with many other "R-like" programming
    environments.
    We have simplified the internal code and now basically format the
    real and imaginary parts independently of each other.
  * New experimental functions Tailcall() and Exec() to support
    writing stack-space-efficient recursive functions.
  * Where characters are attempted to be plotted by pdf(),
    postscript() and xfig() which are not in the selected 8-bit
    character set (most often Latin-1) and the R session is using a
    UTF-8 locale, the warning messages will show the UTF-8 character
    rather than its bytes and one dot will be substituted per
    character rather than per byte.  (Platforms whose iconv() does
    transliteration silently plot the transliteration.)
    In a UTF-8 locale some transliterations are now done with a
    warning (e.g., dashes and Unicode minus to hyphen, ligatures are
    expanded, permille (‰) is replaced by o/oo), although the OS may
    have got there first.  These are warnings as they will continue
    to be replaced by dots in earlier versions of R.
  * The matrix multiplication functions crossprod() and tcrossprod()
    are now also primitive and S3 generic, as %*% had become in R
    4.3.0.
  * source() and example() have a new optional argument catch.aborts
    which allows continued evaluation of the R code after an error.
  * The non-Quartz tiff() devices allow additional types of
    compression if supported by the platform's libtiff library.
  * The list of base and recommended package names is now provided by
    tools::standard_package_names().
  * cairo_pdf() and cairo_ps() default to onefile = TRUE to closer
    match pdf() and postscript().
  * New option catch.script.errors provides a documented way to catch
    errors and then continue in non-interactive use.
  * L %||% R newly in base is an expressive idiom for the phrases
    if(!is.null(L)) L else R or if(is.null(L)) R else L.
  * The return value from warnings() now always inherits from
    "warnings" as documented, now also in the case of no warnings
    where it previously returned NULL.
  * as.complex("1i") now returns 0 + 1i instead of NA with a warning.
  * z &lt;- c(NA, 1i) now keeps the imaginary part Im(z[1]) == 0, no
    longer coercing to NA_complex_.  Similarly, cumsum(z) correctly
    sums real and imaginary parts separately, i.e., without
    "crosstalk" in case of NAs.
  * On Alpine Linux iconv() now maps "latin2", "latin-2", "latin9"
    and "latin-9" to encoding names the OS knows about
    (case-insensitively).
  * iconv(sub = "Unicode") now always zero-pads to four (hex) digits,
    rather than to 4 or 8.  (This seems to have become the convention
    once Unicode restricted the number of Unicode points to 2^21 - 1
    and so will never need more than 6 digits.)
  * NCOL(NULL) now returns 0 instead of 1, for consistency with
    cbind().
  * The information for the Euro glyph missing from the Adobe .afm
    files for the Courier, Helvetica and Times families has been
    copied from their URW equivalents - this will improve vertical
    centring in the pdf() and postscript() devices.
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.12.0.  The changes are almost entirely cosmetic.
  * The included LAPACK sources have been updated to version 3.12.0
    and some further double-complex routines added.
  * There are new font families for the 2014--5 URW 2.0 fonts (see
    ?pdf) which are included in recent versions of Ghostscript.
    These have font widths for most Greek glyphs and a few others
    which were missing from the original versions (whose font
    families remain available for reproducibility, although
    Ghostscript-based viewers will render using the 2.0 versions).
  * Improve the large-n efficiency of as.matrix(&lt;dist&gt;), thanks an R
    contributors effort, notably by Tim Taylor and Heather Turner,
    see PR#18660.
  * The default and numeric methods of all.equal() get a check.class
    option.
  * zapsmall() gets new optional arguments, function mFUN and min.d,
    for extra flexibility; fulfills a wish in PR#18199.  Also, it is
    now an implicit S4 generic in package methods.
  * The Rd filter for aspell() gains an ignore argument.
  * New generic function sort_by(), primarily useful for the
    data.frame method which can be used to sort rows of a data frame
    by one or more columns.
  * The icence headers for the RPC code in src/extra/xdr have been
    updated to use the GPL-compatible licence published by Oracle
    America in 2010.
  * New function pkg2HTML() in tools to create single-page HTML
    reference manuals for R packages.
  * The byte code evaluator now uses less C stack space for recursive
    calls to byte-compiled functions. It also makes more of an effort
    to avoid allocations for scalar return values.
  * New completion option backtick (disabled by default) allows
    non-syntactic completions to be wrapped in backquotes. This is
    currently only useful for Jupyter notebooks via the IRkernel
    package, and may cause problems for other backends.
  INSTALLATION:
  * The parser has been updated to work with bison 3.8.2, which is
    now used for the pre-generated parsers in gram.c, file.c, and
    gramRd.c. A few parser error messages have changed, which may
    affect code that relies on exact messages.
  INSTALLATION on a UNIX-ALIKE:
  * System valgrind headers are now required to use configure option
  - -with-valgrind-instrumentation with value 1 or 2.
  * configure will warn if it encounters a 32-bit build, as that is
    nowadays almost untested.
  * Environment variable R_SYSTEM_ABI is no longer used and so no
    longer recorded in etc/Renviron (it was not on Windows and was
    only ever used when preparing package tools).
  * If the libdeflate library and headers are available, libdeflate
    rather than libz is used to (de)compress R objects in lazy-load
    databases.  Typically tasks spend up to 5% of their time on such
    operations, although creating lazy-data databases is one of the
    exceptions.
    This can be suppressed if the library is available by the
    configure option --without-libdeflate-compression.
  * configure option --enable-lto=check has not worked reliably since
    2019 and has been removed.
  * The minimum autoconf requirement for a maintainer build has been
    increased to autoconf 2.71.
    It is intended to increase this to 2.72 for R 4.5.0: the
    distributed configure file was generated using 2.72.
  * The minimum version requirement for an external LAPACK has been
    reduced to 3.9.0.
  * No default C++ compiler is set if no C++17 compiler is detected:
    there is no longer an automatic fallback to C++14 or C++11.
    Compilers from the last five years should have sufficient
    support: for others macros CXX and CXXSTD can be set in file
    config.site to provide a fallback if needed.
    The Objective-C++ compiler now by default uses the standard
    selected by R for C++ (currently C++17) rather than the default
    standard for the C++ compiler (which on macOS is still C++98).
  INSTALLATION on macOS:
  * A new configure option --with-newAccelerate makes use of Apple's
    'new' BLAS / LAPACK interfaces in their Accelerate framework.
    Those interfaces are only available in macOS 13.3 or later, and
    building requires SDK 13.3 or later (from the Command Line Tools
    or Xcode 14.3 or later).
    By default the option uses new Accelerate for BLAS calls: to also
    use it for LAPACK use option --with-newAccelerate=lapack.  The
    later interfaces provide LAPACK 3.9.1 rather than 3.2.1: 3.9.1 is
    from 2021-04 and does not include the improved algorithms
    introduced in LAPACK 3.10.0 (including for BLAS calls).
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools44, an update of the Rtools43 toolchain.  It is
    based on GCC 13 and newer versions of MinGW-W64, binutils and
    libraries (targeting 64-bit Intel CPUs).  R-devel can no longer
    be built using Rtools43 without changes.
  * Rtools44 has experimental support for 64-bit ARM (aarch64) CPUs
    _via_ the LLVM 17 toolchain using lld, clang/flang-new and
    libc++.
  UTILITIES:
  * R CMD check notes when S4-style exports are used without
    declaring a strong dependence on package methods.
  * tools::checkRd() (used by R CMD check) detects more problems with
    \Sexpr-based dynamic content, including bad nesting of \Sexprs
    and invalid arguments.
  * tools::checkRd() now reports Rd titles and section names ending
    in a period; this is ignored by R CMD check unless environment
    variable _R_CHECK_RD_CHECKRD_MINLEVEL_ is set to -5 or smaller.
  * R CMD check now notes Rd files without an \alias, as long
    documented in 'Writing R Extensions' §1.3.1.  The check for a
    missing \description has been moved from tools::checkRd() to
    tools::checkRdContents().
  * R CMD check now visits inst/NEWS.Rd and OS-specific man
    subdirectories when checking Rd files.
  * tools::checkDocFiles() and tools::checkRdContents() now also
    check internal Rd files by default, but "specially" (ignoring
    missing documentation of arguments).
  * R CMD Rdiff gets option --useEx.
  * R CMD check now warns on non-portable uses of Fortran KIND such
    as INTEGER(KIND=4) and REAL(KIND=8).
    To see the failing lines set environment variable
    _R_CHECK_FORTRAN_KIND_DETAILS_ to a true value.
  * When checking Rd files, R CMD check now notes some of the "lost
    braces" that tools::checkRd() finds.  Typical problems are Rd
    macros missing the initial backslash (e.g., code{...}), in-text
    set notation (e.g., {1, 2}, where the braces need escaping), and
    \itemize lists with \describe-style entries of the form
    \item{label}{description}.
  * R CMD INSTALL (and hence check) will compile C++ code with
  - DR_NO_REMAP if environment variable _R_CXX_USE_NO_REMAP_ is set
    to a true value.  It is planned that this will in future become
    the default for compiling C++.
  * The new built-in Rd macro \dontdiff{} can be used to mark example
    code whose output should be ignored when comparing check output
    to reference output (tests/Examples/&lt;pkg&gt;-Ex.Rout.save).  The
    \dontdiff tag, like \donttest, is _not_ shown on the rendered
    help page, so provides a clean alternative to ##
    IGNORE_RDIFF_(BEGIN|END) comments.
  * R CMD build when there is no NAMESPACE, now uses the recommended
    exportPattern("^[^.]"), instead of exporting everything.
  * R CMD check now warns about non-ASCII characters in the NAMESPACE
    file (in addition to R files). Such packages are not portable and
    may fail to install on some platforms.
  C-LEVEL FACILITIES:
  * Headers R_ext/Applic.h and R-ext/Linpack.h used to include
    R_ext/BLAS.h although this was undocumented and unneeded by their
    documented entry points.  They no longer do so.
  * New function R_missing(), factored out from do_missing(), used to
    fix PR#18579.
  * SEXP type S4SXP has been renamed to OBJSXP to support
    experimenting with alternative object systems.  The S4SXP value
    can still be used in C code but is now deprecated.  Based on
    contributions from the R Consortium's Object-Oriented Programming
    Working Group.
  * New function pow1p(x,y) for accurate (1+x)^y.
  * mkCharLenCE was incorrectly documented to take a size_t length
    but was implemented with int (and character strings in R are
    limited to 2^31 - 1 bytes).
  DEPRECATED AND DEFUNCT:
  * data() no longer handles zipped data from long-defunct (since R
    2.13.0) --use-zip-data installations.
  * The legacy graphics devices pictex() and xfig() are now
    deprecated.  They do not support recent graphics enhancements and
    their font handling is rudimentary. The intention is to retain
    them for historical interest as long as they remain somewhat
    functional.
  * Support for encoding = "MacRoman" has been removed from the pdf()
    and postscript() devices - this was a legacy encoding supporting
    classic macOS up to 2001 and no longer has universal libiconv
    support.
  * is.R() is deprecated as no other S dialect is known to be in use
    (and this could only identify historical dialects, not future
    ones).
    Further information on calls can be obtained by setting the
    environment variable _R_DEPRECATED_IS_R_ to error which turns the
    deprecation warning into an error and so by default gives a
    traceback.  (This is done by R CMD check --as-cran.)
  * UseMethod() no longer forwards local variables assigned in the
    generic function into method call environments before evaluating
    the method body. This makes method calls behave more like
    standard function calls and makes method code easier to analyze
    correctly.
  * The twelve as.data.frame.&lt;class&gt;() methods which were deprecated
    only via _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ and in R CMD
    check --as-cran are formally deprecated now in favour of calling
    as.data.frame() or as.data.frame.vector().  The deprecation
    "check" now works also when as.data.frame() is S4 generic thanks
    to Ivan Krylov.
  * The default method for the directional comparison operators &lt;, &gt;,
    &lt;=, and &gt;= now signals an error when one of the operands is a
    language object, i.e. a symbol or a call.
  * For terms.formula(), deprecate abb and neg.out arguments
    _formally_ in addition to just documenting it.
  BUG FIXES:
  * The methods package is more robust to not being attached to the
    search path.  More work needs to be done.
  * pairwise.t.test() misbehaved when subgroups had 0 DF for
    variance, even with pool.sd = TRUE.  (PR#18594 by Jack Berry).
  * Probability distribution functions [dpq]&lt;distrib&gt;(x, *), but also
    bessel[IKJY](x, .) now consistently preserve attributes(x) when
    length(x) == 0, e.g., for a 2 x 0 matrix, thanks to Karolis
    Koncevičius' report PR#18509.
  * Group "Summary" computations such as sum(1:3, 4, na.rm = 5, NA,
    7, na.rm = LL) now give an error instead of either 17 or NN for
    LL true or false, as proposed by Ivan Krylov on the R-devel
    mailing list.  (This also means it is now an error to specify
    na.rm more than once.)
  * as.complex(x) now returns complex(real = x, imaginary = 0) for
    _all_ numerical and logical x, notably also for NA or
    NA_integer_.
  * Directories are now omitted by file.copy(, recursive = FALSE) and
    in file.append() (PR#17337).
  * gsub() and sub() are now more robust to integer overflow when
    reporting errors caused by too large input strings (PR#18346).
  * Top-level handlers are now more robust to attempts to remove a
    handler whilst handlers are running (PR#18508).
  * The handling of Alt+F4 in dialogs created on Windows using
    GraphApp has been fixed (PR#13870).
  * density() more consistently computes grid values for the
    FFT-based convolution, following Robert Schlicht's analysis and
    proposal in PR#18337, correcting density values typically by a
    factor of about 0.999.  Argument old.coords = TRUE provides back
    compatibility.
  * palette.colors() gains a name argument that defaults to FALSE
    controlling whether the vector of colours that is returned has
    names (where possible).  PR#18529.
  * tools::xgettext() no longer extracts the (non-translatable) class
    names from warningCondition and errorCondition calls.
  * S3method(&lt;gen&gt;, &lt;class&gt;, &lt;func&gt;) in the NAMESPACE file now works
    (again) when &lt;func&gt; is visible from the namespace, e.g.,
    imported, or in base.
  * getParseData(f) now also works for a function defined in the
    first of several &lt;pkg&gt;/R/*.R source files, thanks to Kirill
    Müller's report and Duncan Murdoch's patch in PR#16756.
  * Rd \Sexpr macros with nested #ifdef conditionals were not
    processed.
  * A non-blocking connection with non-default encoding (such as a
    socket) now correctly returns from readLines() after new data has
    arrived also when its EOF had been reached previously.  Thanks to
    Peter Meilstrup's report on R-devel and Ivan Krylov's report and
    patch proposal in PR#18555.
  * tools::checkRdContents() failed to detect empty argument
    descriptions when they spanned multiple lines, including those
    generated by prompt().  These cases are now noted by R CMD check.
  * Plain-text help no longer outputs spurious colons in the
    arguments list (for multi-line \item labels in the Rd source).
  * kappa() and rcond() work correctly in more cases; kappa(., norm =
    "2") now warns that it computes the 1-norm with (default) exact =
    FALSE; prompted by Mikael Jagan's quite comprehensive PR#18543.
  * Rd skeletons generated by prompt() or promptData() now use a
    dummy title (so R CMD build works).  tools::checkRdContents() has
    been updated to detect such template leftovers, including from
    promptPackage().
  * When S4 method dispatch fails because no method was found, the
    error message now includes the signature argument names; thanks
    to Michael Chirico's proposal on the R-devel list.
  * withAutoprint({ .. }) now preserves srcrefs previously lost,
    thanks to Andrew Simmons' report plus fix in PR#18572.
  * transform.data.frame() no longer adjusts names; in particular,
    untransformed variables are kept as-is, including those with
    syntactically invalid names (PR#17890).
  * The keep.source option for Rd \Sexpr blocks is no longer ignored.
  * The formula methods for t.test() and wilcox.test() now catch when
    paired is passed, addressing PR#14359; use Pair(x1, x2) ~ 1 for a
    paired test.
  * The level reported in the browser prompt was often too large. It
    now shows the number of browser contexts on the stack.
  * For cbind() and rbind(), the optional deparse.level argument is
    now properly passed to methods, thanks to Mikael Jagan's PR#18579
    and comments there.
  * Some error and warning messages for large ('long vector')
    matrix(v, nr, nc) and dim(m) &lt;- d are now correct about sizes,
    using long long formatting, fixing PR#18612 (and more) reported
    by Mikael Jagan.
  * readChar(useBytes = TRUE) now terminates strings even when the
    underlying connection uses extra spaces in the input buffer.
    This fixes problems with extra garbage seen with gzip
    connections, PR#18605.
  * Named capture in PCRE regular expressions now works also with
    more than 127 named groups (PR#18588).
  * Datetime functions are now robust against long jumps when dealing
    with internal time zone changes.  This avoids confusing warnings
    about an invalid time zone, previously triggered by turning
    warnings into errors or handling them via tryCatch (PR#17966,
    PR#17780).
  * Datetime functions now restore even an empty TZ environment
    variable after internal time zone changes (PR#17724).  This makes
    results of datetime functions with this (typically unintentional)
    setting more predictable.
  * drop.terms(*) now drops response as by default, keep.response =
    FALSE, fixing PR#18564 thanks to Mikael Jagan.
  * dummy.coef(.) now also works for lm()-models with character
    categorical predictor variables rather than factor ones, fixing
    PR#18635 reported by Jinsong Zhao.
  * formals(f) &lt;- formals(f) now also works for a function w/o
    arguments and atomic _constant_ body(f).
  * Correct as.function(&lt;invalid list&gt;, .)'s error message.
  * removeSource() is yet more thorough in finding and removing
    "srcref" and the other source references from parsed R language
    chunks, fixing PR#18638 thanks to Andrew Simmons.
  * dgeom() is more accurate now, notably when its result is very
    small, fixing PR#18642 thanks to the proposal of Morten Welinder,
    also improving other instances where C level binom_raw(x, n, ..)
    has x == 0 or x== n.
  * warning() with options(warn = 1) has improved output for
    multi-line messages.
  * axis.Date() and axis.POSIXct() now respect the par("lab") setting
    for the number of pretty() intervals.
  * Comparisons for language objects (which are based on deparsing)
    are now more careful about using accurate deparsed results
    (PR#18676).
  * Plain-text help (Rd2txt) now correctly preserves blank lines
    following single-line \dontrun code.
  * &lt;POSIXlt&gt;[*] no longer sets wrong "balanced" attribute, fixing
    PR#18681 thanks to Mikael Jagan.
  * str(&lt;classed-call&gt;) now deparses the call as expected, fixing
    PR#18684, reported by Dave Slager.
  * In Rd examples, code following the closing brace of a \dontrun,
    \dontshow or \donttest tag on the same line is no longer skipped
    when R CMD check runs the examples.
  * as.data.frame(matrix(*, ncol=0)) now gets valid names() and
    colnames(); reported by Davis Vaughan on the R-devel list.
  * Internal Mathlib function stirlerr(n) is now almost fully
    (52-bit) accurate for all n &gt;= ~5.9 and more accurate also in the
    range 1 -- 5.9.  This entails small ("after 12th decimal")
    changes in density functions, e.g., dgamma() in _some_ regions of
    their support.  The fix was partly prompted by Morten Welinder's
    PR#18640.
  * Numbers like 9876543.2 are now considered non-integer by Mathlib
    internal R_nonint(), amending original fix of PR#15734.
  * Rd comment lines no longer cause broken paragraphs in the
    rendered PDF and plain-text help. In code blocks, pure comment
    lines (starting with %) no longer produce an empty line.
  * xtabs(Freq ~ .) now consistently defaults to na.action = na.pass,
    using na.rm = FALSE (added as an argument) when summing over Freq
    (PR#17770).
  * tools::testInstalledPackage() is no longer silent about failures
    from running examples or tests and its return code no longer
    ignores failures from checking vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1718366400">- CHANGES IN R 4.4.1:
  C-LEVEL FACILITIES:
  * Functions R_atof and R_strtod declared in header R_ext/Utils.h
    are now documented in 'Writing R Extensions' and so formally part
    of the API.
  * The non-API entry points Rf_setSVector, Rf_StringFalse,
    Rf_StringTrue and Rf_isBlankString have been added to those
    reported by R CMD check.
  * The new function Rf_allocLang is now available. This provides an
    alternative to the idiom of calling Rf_allocList followed by
    SET_TYPEOF.
  UTILITIES:
  * R CMD check now reports as warnings what gfortran calls 'Fortran
    2018 deleted features', all of which have long been marked as
    'obsolescent' and some of which were deleted in Fortran 2008 or
    earlier.  Fortran compilers are no longer required to support
    these.
  BUG FIXES:
  * as.numeric(), scan(), type.convert() and other places which use
    the internal C function R_strtod now require a _non-empty_ digit
    sequence in a decimal or binary exponent.  This aligns with the
    C/POSIX standard for strtod and with ?NumericConstants.
  * as.data.frame(m, make.names=NA) now works correctly for a matrix
    m with NA's in row names.
  * The error message from &lt;POSIXlt&gt;[["hour"]] and similar now
    mentions *[[, "hour"]], as wished for in PR#17409 and proposed by
    Michael Chirico.
  * qbinom() and potentially qpois(), qnbinom(), no longer sometimes
    fail accurate inversion (of pbinom(), etc), thanks to Christopher
    Chang's report and patch in PR#18711.
  * The internal help server on Windows can again serve requests sent
    in quick succession, fixing a regression in R 4.4.0.
  * debugcall(&lt;S3Generic&gt;()) now also works when a corresponding
    S4-generic version is in the methods cache (PR#18143).
  * Package tools' toTitleCase(ch0) now returns character(0) when ch0
    is of zero length; fixing PR#18724, reported by David Hugh Jones.
  * R CMD check is no longer broken (without a check result and no
    explanation in 00check.log) for a package which declares an
    invalid VignetteBuilder in DESCRIPTION but has no vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1730376000">- CHANGES IN R 4.4.2:
  C-LEVEL FACILITIES:
  * The S-compatibility macros F77_COM and F77_COMDECL defined in
    header R_ext/RS.h are deprecated and will be removed shortly.  We
    could find no record of their use.
  BUG FIXES:
  * Mathlib function lgammacor(x) no longer warns about underflow to
    zero for large x.
  * Text widths and heights were incorrectly reported by the Quartz
    device if the drawing context didn't exist yet (typically when
    drawing off-screen to a window that is yet to appear, see
    PR#18591).
  * The Quartz device could segfault in cases where paths with spaces
    are used in the new glyph drawing API.  Thanks to Tomek
    Gieorgijewski (PR#18758).
  * On macOS in R CRAN builds, it is again possible to read
    little-endian UTF-16 text with a BOM from a connection using
    encoding="UTF-16".  Users building R from source should avoid
    using the system libiconv in macOS 14.1 and later.
  * methods' internal .requirePackage() now re-enables primitive
    method dispatch when needed; thanks to Ivan Krylov for
    demystifying CRAN package check failures on the R-devel mailing
    list.</changelog>
</package>
<package pkgid="145d4c40dcc272560ba52a13d740c5ea93cf5ba6c276e80fba33bfef0d40f10ca1e45105c736abc7b0806baf70178e9b926ffe73b538c39584f3507cf3582fc4" name="R-splines-debuginfo" arch="x86_64">
  <version epoch="0" ver="4.4.2" rel="51.0.2.2.sr20241103"/>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1620302400">- To get in sync with d:l:R:autoCRAN the Matrix package's split
  in -devel was reversed.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339200">- improved spec file according to comments of dimstar in
  https://build.opensuse.org/request/show/892685</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339201">- CHANGES IN R 4.1.0:
  FUTURE DIRECTIONS:
  * It is planned that the 4.1.x series will be the last to support
    32-bit Windows, with production of binary packages for that
    series continuing until early 2023.
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Data set esoph in package datasets now provides the correct
    numbers of controls; previously it had the numbers of cases added
    to these.  (Reported by Alexander Fowler in PR#17964.)
  NEW FEATURES:
  * www.omegahat.net is no longer one of the repositories known by
    default to setRepositories().  (Nowadays it only provides source
    packages and is often unavailable.)
  * Function package_dependencies() (in package tools) can now use
    different dependency types for direct and recursive dependencies.
  * The checking of the size of tarball in R CMD check --as-cran
    &lt;pkg&gt; may be tweaked via the new environment variable
    _R_CHECK_CRAN_INCOMING_TARBALL_THRESHOLD_, as suggested in
    PR#17777 by Jan Gorecki.
  * Using c() to combine a factor with other factors now gives a
    factor, an ordered factor when combining ordered factors with
    identical levels.
  * apply() gains a simplify argument to allow disabling of
    simplification of results.
  * The format() method for class "ftable" gets a new option justify.
    (Suggested by Thomas Soeiro.)
  * New ...names() utility.  (Proposed by Neal Fultz in PR#17705.)
  * type.convert() now warns when its as.is argument is not
    specified, as the help file always said it _should_.  In that
    case, the default is changed to TRUE in line with its change in
    read.table() (related to stringsAsFactor) in R 4.0.0.
  * When printing list arrays, classed objects are now shown _via_
    their format() value if this is a short enough character string,
    or by giving the first elements of their class vector and their
    length.
  * capabilities() gets new entry "Rprof" which is TRUE when R has
    been configured with the equivalent of --enable-R-profiling (as
    it is by default).  (Related to Michael Orlitzky's report
    PR#17836.)
  * str(xS4) now also shows extraneous attributes of an S4 object
    xS4.
  * Rudimentary support for vi-style tags in rtags() and R CMD rtags
    has been added.  (Based on a patch from Neal Fultz in PR#17214.)
  * checkRdContents() is now exported from tools; it and also
    checkDocFiles() have a new option chkInternal allowing to check
    Rd files marked with keyword "internal" as well.  The latter can
    be activated for R CMD check via environment variable
    _R_CHECK_RD_INTERNAL_TOO_.
  * New functions numToBits() and numToInts() extend the raw
    conversion utilities to (double precision) numeric.
  * Functions URLencode() and URLdecode() in package utils now work
    on vectors of URIs.  (Based on patch from Bob Rudis submitted
    with PR#17873.)
  * path.expand() can expand ~user on most Unix-alikes even when
    readline is not in use.  It tries harder to expand ~, for example
    should environment variable HOME be unset.
  * For HTML help (both dynamic and static), Rd file links to help
    pages in external packages are now treated as references to
    topics rather than file names, and fall back to a file link only
    if the topic is not found in the target package. The earlier rule
    which prioritized file names over topics can be restored by
    setting the environment variable _R_HELP_LINKS_TO_TOPICS_ to a
    false value.
  * c() now removes NULL arguments before dispatching to methods,
    thus simplifying the implementation of c() methods, _but_ for
    back compatibility keeps NULL when it is the first argument.
    (From a report and patch proposal by Lionel Henry in PR#17900.)
  * Vectorize()'s result function's environment no longer keeps
    unneeded objects.
  * Function ...elt() now propagates visibility consistently with
    ..n.  (Thanks to Lionel Henry's PR#17905.)
  * capture.output() no longer uses non-standard evaluation to
    evaluate its arguments.  This makes evaluation of functions like
    parent.frame() more consistent.  (Thanks to Lionel Henry's
    PR#17907.)
  * packBits(bits, type="double") now works as inverse of
    numToBits().  (Thanks to Bill Dunlap's proposal in PR#17914.)
  * curlGetHeaders() has two new arguments, timeout to specify the
    timeout for that call (overriding getOption("timeout")) and TLS
    to specify the minimum TLS protocol version to be used for
    https:// URIs (_inter alia_ providing a means to check for sites
    using deprecated TLS versions 1.0 and 1.1).
  * For nls(), an optional constant scaleOffset may be added to the
    denominator of the relative offset convergence test for cases
    where the fit of a model is expected to be exact, thanks to a
    proposal by John Nash.  nls(*, trace=TRUE) now also shows the
    convergence criterion.
  * Numeric differentiation _via_ numericDeriv() gets new optional
    arguments eps and central, the latter for taking central divided
    differences.  The latter can be activated for nls() via
    nls.control(nDcentral = TRUE).
  * nls() now passes the trace and control arguments to getInitial(),
    notably for all self-starting models, so these can also be fit in
    zero-noise situations via a scaleOffset.  For this reason, the
    initial function of a selfStart model must now have ... in its
    argument list.
  * bquote(splice = TRUE) can now splice expression vectors with
    attributes: this makes it possible to splice the result of
    parse(keep.source = TRUE).  (Report and patch provided by Lionel
    Henry in PR#17869.)
  * textConnection() gets an optional name argument.
  * get(), exists(), and get0() now signal an error if the first
    argument has length greater than 1.  Previously additional
    elements were silently ignored.  (Suggested by Antoine Fabri on
    R-devel.)
  * R now provides a shorthand notation for creating functions, e.g.
    \(x) x + 1 is parsed as function(x) x + 1.
  * R now provides a simple native forward pipe syntax |&gt;.  The
    simple form of the forward pipe inserts the left-hand side as the
    first argument in the right-hand side call.  The pipe
    implementation as a syntax transformation was motivated by
    suggestions from Jim Hester and Lionel Henry.
  * all.equal(f, g) for functions now by default also compares their
    environment(.)s, notably via new all.equal method for class
    function.  Comparison of nls() fits, e.g., may now need
    all.equal(m1, m2, check.environment = FALSE).
  * .libPaths() gets a new option include.site, allowing to _not_
    include the site library.  (Thanks to Dario Strbenac's suggestion
    and Gabe Becker's PR#18016.)
  * Lithuanian translations are now available.  (Thanks to Rimantas
    Zakauskas.)
  * names() now works for DOTSXP objects.  On the other hand, in
    R-lang, the R language manual, we now warn against relying on the
    structure or even existence of such dot-dot-dot objects.
  * all.equal() no longer gives an error on DOTSXP objects.
  * capabilities("cairo") now applies only to the file-based devices
    as it is now possible (if very unusual) to build R with Cairo
    support for those but not for X11().
  * There is optional support for tracing the progress of
    loadNamespace() - see its help.
  * (Not Windows.)  l10n_info() reports an additional element, the
    name of the encoding as reported by the OS (which may differ from
    the encoding part (if any) of the result from
    Sys.getlocale("LC_CTYPE").
  * New function gregexec() which generalizes regexec() to find _all_
    disjoint matches and well as all substrings corresponding to
    parenthesized subexpressions of the given regular expression.
    (Contributed by Brodie Gaslam.)
  * New function charClass() in package utils to query the
    wide-character classification functions in use (such as
    iswprint).
  * The names of quantile()'s result no longer depend on the global
    getOption("digits"), but quantile() gets a new optional argument
    digits = 7 instead.
  * grep(), sub(), regexp and variants work considerably faster for
    long factors with few levels.  (Thanks to Michael Chirico's
    PR#18063.)
  * Provide grouping of x11() graphics windows within a window
    manager such as Gnome or Unity; thanks to a patch by Ivan Krylov
    posted to R-devel.
  * The split() method for class data.frame now allows the f argument
    to be specified as a formula.
  * sprintf now warns on arguments unused by the format string.
  * New palettes "Rocket" and "Mako" for hcl.colors() (approximating
    palettes of the same name from the 'viridisLite' package).
    Contributed by Achim Zeileis.
  * The base environment and its namespace are now locked (so one can
    no longer add bindings to these or remove from these).
  * Rterm handling of multi-byte characters has been improved,
    allowing use of such characters when supported by the current
    locale.
  * Rterm now accepts ALT+ +xxxxxxxx sequences to enter Unicode
    characters as hex digits.
  * Environment variable LC_ALL on Windows now takes precedence over
    LC_CTYPE and variables for other supported categories, matching
    the POSIX behaviour.
  * duplicated() and anyDuplicated() are now optimized for integer
    and real vectors that are known to be sorted via the ALTREP
    framework. Contributed by Gabriel Becker via PR#17993.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 14
    and so packages that provide graphics devices should be
    reinstalled.
  * Graphics devices should now specify deviceVersion to indicate
    what version of the graphics engine they support.
  * Graphics devices can now specify deviceClip.  If TRUE, the
    graphics engine will never perform any clipping of output itself.
    The clipping that the graphics engine does perform (for both
    canClip = TRUE and canClip = FALSE) has been improved to avoid
    producing unnecessary artifacts in clipped output.
  * The grid package now allows gpar(fill) to be a linearGradient(),
    a radialGradient(), or a pattern().  The viewport(clip) can now
    also be a grob, which defines a clipping path, and there is a new
    viewport(mask) that can also be a grob, which defines a mask.
    These new features are only supported so far on the Cairo-based
    graphics devices and on the pdf() device.
  * (Not Windows.)  A warning is given when a Cairo-based type is
    specified for a png(), jpeg(), tiff() or bmp() device but Cairo
    is unsupported (so type = "Xlib" is tried instead).
  * grSoftVersion() now reports the versions of FreeType and
    FontConfig if they are used directly (not _via_ Pango), as is
    most commonly done on macOS.
  C-LEVEL FACILITIES:
  * The _standalone_ libRmath math library and R's C API now provide
    log1pexp() again as documented, and gain log1mexp().
  INSTALLATION on a UNIX-ALIKE:
  * configure checks for a program pkgconf if program pkg-config is
    not found.  These are now only looked for on the path (like
    almost all other programs) so if needed specify a full path to
    the command in PKG_CONFIG, for example in file config.site.
  * C99 function iswblank is required - it was last seen missing ca
    2003 so the workaround has been removed.
  * There are new configure options --with-internal-iswxxxxx,
  - -with-internal-towlower and --with-internal-wcwidth which allows
    the system functions for wide-character classification,
    case-switching and width (wcwidth and wcswidth) to be replaced by
    internal ones.  The first has long been used on macOS, AIX (and
    Windows) but this enables it to be unselected there and selected
    for other platforms (it is the new default on Solaris).  The
    second is new in this version of R and is selected by default on
    macOS and Solaris.  The third has long been the default and
    remains so as it contains customizations for East Asian
    languages.
    System versions of these functions are often minimally
    implemented (sometimes only for ASCII characters) and may not
    cover the full range of Unicode points: for example Solaris (and
    Windows) only cover the Basic Multilingual Plane.
  * Cairo installations without X11 are more likely to be detected by
    configure, when the file-based Cairo graphics devices will be
    available but not X11(type = "cairo").
  * There is a new configure option --with-static-cairo which is the
    default on macOS.  This should be used when only static cairo
    (and where relevant, Pango) libraries are available.
  * Cairo-based graphics devices on platforms without Pango but with
    FreeType/FontConfig will make use of the latter for font
    selection.
  LINK-TIME OPTIMIZATION on a UNIX-ALIKE:
  * Configuring with flag --enable-lto=R now also uses LTO when
    installing the recommended packages.
  * R CMD INSTALL and R CMD SHLIB have a new flag --use-LTO to use
    LTO when compiling code, for use with R configured with
  - -enable-lto=R.  For R configured with --enable-lto, they have
    the new flag --no-use-LTO.
    Packages can opt in or out of LTO compilation _via_ a UseLTO
    field in the DESCRIPTION file.  (As usual this can be overridden
    by the command-line flags.)
  BUILDING R on Windows:
  * for GCC &gt;= 8, FC_LEN_T is defined in config.h and hence character
    lengths are passed from C to Fortran in _inter alia_ BLAS and
    LAPACK calls.
  * There is a new text file src/gnuwin32/README.compilation, which
    outlines how C/Fortran code compilation is organized and
    documents new features:
  * R can be built with Link-Time Optimization with a suitable
    compiler - doing so with GCC 9.2 showed several
    inconsistencies which have been corrected.
  * There is support for cross-compiling the C and Fortran code
    in R and standard packages on suitable (Linux) platforms.
    This is mainly intended to allow developers to test later
    versions of compilers - for example using GCC 9.2 or 10.x has
    detected issues that GCC 8.3 in Rtools40 does not.
  * There is experimental support for cross-building R packages
    with C, C++ and/or Fortran code.
  * The R installer can now be optionally built to support a single
    architecture (only 64-bit or only 32-bit).
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++14 where
    available (which it is on all currently checked platforms): if
    not (as before) C++11 is used if available otherwise C++ is not
    supported.
    Packages which specify C++11 will still be installed using C++11.
    C++14 compilers may give deprecation warnings, most often for
    std::random_shuffle (deprecated in C++14 and removed in C++17).
    Either specify C++11 (see 'Writing R Extensions') or modernize
    the code and if needed specify C++14.  The latter has been
    supported since R 3.4.0 so the package's DESCRIPTION would need
    to include something like
    Depends: R (&gt;= 3.4)
  PACKAGE INSTALLATION on Windows:
  * R CMD INSTALL and R CMD SHLIB make use of their flag --use-LTO
    when the LTO_OPT make macro is set in file etc/${R_ARCH}/Makeconf
    or in a personal/site Makevars file.  (For details see 'Writing R
    Extensions' SS4.5.)
    This provides a valuable check on code consistency.  It does work
    with GCC 8.3 as in Rtools40, but that does not detect everything
    the CRAN checks with current GCC do.
  PACKAGE INSTALLATION on macOS:
  * The default personal library directory on builds with
  - -enable-aqua (including CRAN builds) now differs by CPU type,
    one of
    ~/Library/R/x86_64/x.y/library
    ~/Library/R/arm64/x.y/library
    This uses the CPU type R (and hence the packages) were built for,
    so when a x86_64 build of R is run under Rosetta emulation on an
    arm64 Mac, the first is used.
  UTILITIES:
  * R CMD check can now scan package functions for bogus return
    statements, which were possibly intended as return() calls (wish
    of PR#17180, patch by Sebastian Meyer). This check can be
    activated via the new environment variable
    _R_CHECK_BOGUS_RETURN_, true for --as-cran.
  * R CMD build omits tarballs and binaries of previous builds from
    the top-level package directory.  (PR#17828, patch by Sebastian
    Meyer.)
  * R CMD check now runs sanity checks on the use of LazyData, for
    example that a data directory is present and that
    LazyDataCompression is not specified without LazyData and has a
    documented value.  For packages with large LazyData databases
    without specifying LazyDataCompression, there is a reference to
    the code given in 'Writing R Extensions' SS1.1.6 to test the
    choice of compression (as in all the CRAN packages tested a
    non-default method was preferred).
  * R CMD build removes LazyData and LazyDataCompression fields from
    the DESCRIPTION file of packages without a data directory.
  ENCODING-RELATED CHANGES:
  * The parser now treats \Unnnnnnnn escapes larger than the upper
    limit for Unicode points (\U10FFFF) as an error as they cannot be
    represented by valid UTF-8.
    Where such escapes are used for outputting non-printable
    (including unassigned) characters, 6 hex digits are used (rather
    than 8 with leading zeros).  For clarity, braces are used, for
    example \U{0effff}.
  * The parser now looks for non-ASCII spaces on Solaris (as
    previously on most other OSes).
  * There are warnings (including from the parser) on the use of
    unpaired surrogate Unicode points such as \uD834.  (These cannot
    be converted to valid UTF-8.)
  * Functions nchar(), tolower(), toupper() and chartr() and those
    using regular expressions have more support for inputs with a
    marked Latin-1 encoding.
  * The character-classification functions used (by default) to
    replace the system iswxxxxx functions on Windows, macOS and AIX
    have been updated to Unicode 13.0.0.
    The character-width tables have been updated to include new
    assignments in Unicode 13.0.0.
  * The code for evaluating default (extended) regular expressions
    now uses the same character-classification functions as the rest
    of R (previously they differed on Windows, macOS and AIX).
  * There is a build-time option to replace the system's
    wide-character wctrans C function by tables shipped with R: use
    configure option --with-internal-towlower or (on Windows)
  - DUSE_RI18N_CASE in CFLAGS when building R.  This may be needed
    to allow tolower() and toupper() to work with Unicode characters
    beyond the Basic Multilingual Plane where not supported by system
    functions (e.g. on Solaris where it is the new default).
  * R is more careful when truncating UTF-8 and other multi-byte
    strings that are too long to be printed, passed to the system or
    libraries or placed into an internal buffer.  Truncation will no
    longer produce incomplete multibyte characters.
  DEPRECATED AND DEFUNCT:
  * Function plclust() from the package stats and
    package.dependencies(), pkgDepends(), getDepList(),
    installFoundDepends(), and vignetteDepends() from package tools
    are defunct.
  * Defunct functions checkNEWS() and readNEWS() from package tools
    and CRAN.packages() from utils have been removed.
  * R CMD config CXXCPP is defunct (it was deprecated in R 3.6.2).
  * parallel::detectCores() drops support for Irix (retired in 2013).
  * The LINPACK argument to chol.default(), chol2inv(),
    solve.default() and svd() has been defunct since R 3.1.0.  It was
    silently ignored up to R 4.0.3 but now gives an error.
  * Subsetting/indexing, such as ddd[*] or ddd$x on a DOTSXP
    (dot-dot-dot) object ddd has been disabled; it worked by accident
    only and was undocumented.
  BUG FIXES:
  * Many more C-level allocations (mainly by malloc and strdup) are
    checked for success with suitable alternative actions.
  * Bug fix for replayPlot(); this was turning off graphics engine
    display list recording if a recorded plot was replayed in the
    same session.  The impact of the bug became visible if resize the
    device after replay OR if attempted another savePlot() after
    replay (empty display list means empty screen on resize or empty
    saved plot).
  * R CMD check etc now warn when a package exports non-existing S4
    classes or methods, also in case of no "methods" presence.
    (Reported by Alex Bertram; reproducible example and patch by
    Sebastian Meyer in PR#16662.)
  * boxplot() now also accepts calls for labels such as ylab, the
    same as plot().  (Reported by Marius Hofert.)
  * The help page for xtabs() now correctly states that addNA is
    setting na.action = na.pass among others.  (Reported as PR#17770
    by Thomas Soeiro.)
  * The R CMD check &lt;pkg&gt; gives a longer and more comprehensible
    message when DESCRIPTION misses dependencies, e.g., in Imports:.
    (Thanks to the contributors of PR#17179.)
  * update.default() now calls the generic update() on the formula to
    work correctly for models with extended formulas.  (As reported
    and suggested by Neal Fultz in PR#17865.)
  * The horizontal position of leaves in a dendrogram is now correct
    also with center = FALSE.  (PR#14938, patch from Sebastian
    Meyer.)
  * all.equal.POSIXt() no longer warns about and subsequently ignores
    inconsistent "tzone" attributes, but describes the difference in
    its return value (PR#17277).  This check can be disabled _via_
    the new argument check.tzone = FALSE as suggested by Sebastian
    Meyer.
  * as.POSIXct() now populates the "tzone" attribute from its tz
    argument when x is a logical vector consisting entirely of NA
    values.
  * x[[2^31]] &lt;- v now works.  (Thanks to the report and patch by
    Suharto Anggono in PR#17330.)
  * In log-scale graphics, axis() ticks and label positions are now
    computed more carefully and symmetrically in their range,
    typically providing _more_ ticks, fulfilling wishes in PR#17936.
    The change really corresponds to an improved axisTicks() (package
    grDevices), potentially influencing grid and lattice, for
    example.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now correct to at
    least five digits where it was catastrophically wrong,
    previously.
  * sum(df) and similar "Summary"- and "Math"-group member functions
    now work for data frames df with logical columns, notably also of
    zero rows.  (Reported to R-devel by Martin "b706".)
  * unsplit() had trouble with tibbles due to unsound use of rep(NA,
    len)-indexing, which should use NA_integer_ (Reported to R-devel
    by Mario Annau.)
  * pnorm(x, log.p = TRUE) underflows to -Inf slightly later.
  * show(&lt;hidden S4 generic&gt;) prints better and without quotes for
    non-hidden S4 generics.
  * read.table() and relatives treated an "NA" column name as missing
    when check.names = FALSE PR#18007.
  * Parsing strings containing UTF-16 surrogate pairs such as
    "\uD834\uDD1E" works better on some (uncommon) platforms.
    sprintf("%X", utf8ToInt("\uD834\uDD1E")) should now give "1D11E"
    on all platforms.
  * identical(x,y) is no longer true for differing DOTSXP objects,
    fixing PR#18032.
  * str() now works correctly for DOTSXP and related exotics, even
    when these are doomed.
    Additionally, it no longer fails for lists with a class and
    "irregular" method definitions such that e.g. lapply(*) will
    necessarily fail, as currently for different igraph objects.
  * Too long lines in environment files (e.g. Renviron) no longer
    crash R. This limit has been increased to 100,000 bytes.
    (PR#18001.)
  * There is a further workaround for FreeType giving incorrect
    italic font faces with cairo-based graphics devices on macOS.
  * add_datalist(*, force = TRUE) (from package tools) now actually
    updates an existing data/datalist file for new content.  (Thanks
    to a report and patch by Sebastian Meyer in PR#18048.)
  * cut.Date() and cut.POSIXt() could produce an empty last interval
    for breaks = "months" or breaks = "years".  (Reported as PR#18053
    by Christopher Carbone.)
  * Detection of the encoding of 'regular' macOS locales such as
    en_US (which is UTF-8) had been broken by a macOS change:
    fortunately these are now rarely used with en_US.UTF-8 being
    preferred.
  * sub() and gsub(pattern, repl, x, *) now keep attributes of x such
    as names() also when pattern is NA (PR#18079).
  * Time differences ("difftime" objects) get a replacement and a
    rep() method to keep "units" consistent.  (Thanks to a report and
    patch by Nicolas Bennett in PR#18066.)
  * The \RdOpts macro, setting defaults for \Sexpr options in an Rd
    file, had been ineffective since R 2.12.0: it now works again.
    (Thanks to a report and patch by Sebastian Meyer in PR#18073.)
  * mclapply and pvec no longer accidentally terminate parallel
    processes started before by mcparallel or related calls in
    package parallel (PR#18078).
  * grep and other functions for evaluating (extended) regular
    expressions handle in Unicode also strings not explicitly flagged
    UTF-8, but flagged native when running in UTF-8 locale.
  * Fixed a crash in fifo implementation on Windows (PR#18031).
  * Binary mode in fifo on Windows is now properly detected from
    argument open (PR#15600, PR#18031).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1622808000">- The line %{__install} -m 755 -d %{_infodir}
  no longer works in TW or Factory.
  But without that line it works everywhere. So this instruction
  was commented out of the spec file.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1628596800">- CHANGES IN R 4.1.1:
  NEW FEATURES:
  * require(pkg, quietly = TRUE) is quieter and in particular does
    not warn if the package is not found.
  DEPRECATED AND DEFUNCT:
  * Use of ftp:// URIs should be regarded as deprecated, with
    on-going support confined to method = "libcurl" and not routinely
    tested.  (Nowadays no major browser supports them.)
  * The non-default method = "internal" is deprecated for http:// and
    ftp:// URIs for both download.file and url.
  * On Windows, method = "wininet" is deprecated for http://,
    https:// and ftp:// URIs for both download.file and url.  (A
    warning is only given for ftp://.)
    For ftp:// URIs the default method is now "libcurl" if available
    (which it is on CRAN builds).
    method = "wininet" remains the default for http:// and https://
    URIs but if libcurl is available, using method = "libcurl" is
    preferred.
  INSTALLATION:
  * make check now works also without a LaTeX installation.  (Thanks
    to Sebastian Meyer's PR#18103.)
  BUG FIXES:
  * make check-devel works again in an R build configured with
  - -without-recommended-packages.
  * qnbinom(p, size, mu) for large size/mu is correct now in a range
    of cases (PR#18095); similarly for the (size, prob)
    parametrization of the negative binomial.  Also qpois() and
    qbinom() are better and or faster for extreme cases.  The
    underlying C code has been modularized and is common to all four
    cases of discrete distributions.
  * gap.axis is now part of the axis() arguments which are passed
    from bxp(), and hence boxplot().  (Thanks to Martin Smith's
    report and suggestions in PR#18109.)
  * .First and .Last can again be set from the site profile.
  * seq.int(from, to, *) and seq.default(..) now work better in large
    range cases where from-to is infinite where the two boundaries
    are finite.
  * all.equal(x,y) now returns TRUE correctly also when several
    entries of abs(x) and abs(y) are close to .Machine$double.xmax,
    the largest finite numeric.
  * model.frame() now clears the object bit when removing the class
    attribute of a value via na.action (PR#18100).
  * charClass() now works with multi-character strings on Windows
    (PR#18104, fixed by Bill Dunlap).
  * encodeString() on Solaris now works again in Latin-1 encoding on
    characters represented differently in UTF-8.  Support for
    surrogate pairs on Solaris has been improved.
  * file.show() on Windows now works with non-ASCII path names
    representable in the current native encoding (PR#18132).
  * Embedded R on Windows can now find R home directory via the
    registry even when installed only for the current user
    (PR#18135).
  * pretty(x) with finite x now returns finite values also in the
    case where the extreme x values are close in size to the maximal
    representable number .Machine$double.xmax.
    Also, it's been tweaked for very small ranges and when a boundary
    is close (or equal) to zero; e.g., pretty(c(0,1e-317)) no longer
    has negative numbers, currently still warning about a very small
    range, and pretty(2^-(1024 - 2^-1/(c(24,10)))) is more accurate.
  * The error message for not finding vignette files when weaving has
    correct file sizes now. (Thanks to Sebastian Meyer's PR#18154.)
  * dnbinom(20, &lt;large&gt;, 1) now correctly gives 0, and similar cases
    are more accurate with underflow precaution.  (Reported by Francisco Vera Alcivar in PR#18072.)</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635163200">- repaired https://bugzilla.suse.com/show_bug.cgi?id=1191380
  (rpmacros now go to rpmmacrodir)
- minor clean-ups in spec file</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635768000">- CHANGES IN R 4.1.2:
  C-LEVEL FACILITIES:
  * The workaround in headers R.h and Rmath.h (using namespace std;)
    for the Oracle Developer Studio compiler is no longer needed now
    C++11 is required so has been removed.  A couple more usages of
    log() (which should have been std::log()) with an int argument
    are reported on Solaris.
  * The undocumented limit of 4095 bytes on messages from the
    S-compatibility macros PROBLEM and MESSAGE is now documented and
    longer messages will be silently truncated rather than
    potentially causing segfaults.
  * If the R_NO_SEGV_HANDLER environment variable is non-empty, the
    signal handler for SEGV/ILL/BUS signals (which offers recovery
    user interface) is not set. This allows more reliable debugging
    of crashes that involve the console.
  DEPRECATED AND DEFUNCT:
  * The legacy S-compatibility macros PROBLEM, MESSAGE, ERROR, WARN,
    WARNING, RECOVER, ... are deprecated and will be hidden in R
    4.2.0. R's native interface of Rf_error and Rf_warning has long
    been preferred.
  BUG FIXES:
  * .mapply(F, dots, .) no longer segfaults when dots is not a list
    and uses match.fun(F) as always documented; reported by Andrew
    Simmons in PR#18164.
  * hist(&lt;Date&gt;, ...) and hist(&lt;POSIXt&gt;, ...)  no longer pass
    arguments for rect() (such as col and density) to axis().
    (Thanks to Sebastian Meyer's PR#18171.)
  * \Sexpr{ch} now preserves Encoding(ch). (Thanks to report and
    patch by Jeroen Ooms in PR#18152.)
  * Setting the RNG to "Marsaglia-Multicarry" e.g., by RNGkind(), now
    warns in more places, thanks to Andr'e Gillibert's report and
    patch in PR#18168.
  * gray(numeric(), alpha=1/2) no longer segfaults, fixing PR#18183,
    reported by Till Krenz.
  * Fixed dnbinom(x, size=&lt;very_small&gt;, .., log=TRUE) regression,
    reported by Martin Morgan.
  * as.Date.POSIXlt(x) now keeps names(x), thanks to Davis Vaughan's
    report and patch in PR#18188.
  * model.response() now strips an "AsIs" class typically, thanks to
    Duncan Murdoch's report and other discussants in PR#18190.
  * try() is considerably faster in case of an error and long call,
    as e.g., from some do.call().  Thanks to Alexander Kaever's
    suggestion posted to R-devel.
  * qqline(y = &lt;object&gt;) such as y=I(.), now works, see also
    PR#18190.
  * Non-integer mgp par() settings are now handled correctly in
    axis() and mtext(), thanks to Mikael Jagan and Duncan Murdoch's
    report and suggestion in PR#18194.
  * formatC(x) returns length zero character() now, rather than ""
    when x is of length zero, as documented, thanks to Davis
    Vaughan's post to R-devel.
  * removeSource(fn) now retains (other) attributes(fn).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1647000000">- CHANGES IN R 4.1.3:
  NEW FEATURES:
  * The default version of Bioconductor has been changed to 3.14.
    (This is used by setRepositories and the menus in GUIs.)
  UTILITIES:
  * R CMD check --as-cran has a workaround for a bug in versions of
    file up to at least 5.41 which mis-identify DBF files last
    changed in 2022 as executables.
  C-LEVEL FACILITIES:
  * The legacy S-compatibility macros SINGLE_* in R_ext/Constants.h
    (included by R.h) are deprecated and will be removed in R 4.2.0.
  BUG FIXES:
  * Initialization of self-starting nls() models with initialization
    functions following the pre-R-4.1.0 API (without the ...
    argument) works again for now, with a deprecation warning.
  * Fixed quoting of ~autodetect~ in Java setting defaults to avoid
    inadvertent user lookup due to leading ~, reported in PR#18231 by
    Harold Gutch.
  * substr(., start, stop) &lt;- v now treats _negative_ stop values
    correctly.  Reported with a patch in PR#18228 by Brodie Gaslam.
  * Subscripting an array x without dimnames by a
    length(dim(x))-column character matrix gave "random" non-sense,
    now an error; reported in PR#18244 by Mikael Jagan.
  * ...names() now matches names(list(...)) closely, fixing PR#18247.
  * all.equal(*, scale = s) now works as intended when length(s) &gt; 1,
    partly thanks to Michael Chirico's PR#18272.
  * print(x) for long vectors x now also works for named atomic
    vectors or lists and prints the correct number when reaching the
    getOption("max.print") limit; partly thanks to a report and
    proposal by Hugh Parsonage to the R-devel list.
  * all.equal(&lt;selfStart&gt;, *) no longer signals a deprecation
    warning.
  * reformulate(*, response=r) gives a helpful error message now when
    length(r) &gt; 1, thanks to Bill Dunlap's PR#18281.
  * Modifying globalCallingHandlers inside withCallingHandlers() now
    works or fails correctly, thanks to Henrik Bengtsson's PR#18257.
  * hist(&lt;Date&gt;, breaks = "days") and hist(&lt;POSIXt&gt;, breaks = "secs")
    no longer fail for inputs of length 1.
  * qbeta(.001, .9, .009) and similar cases now converge correctly
    thanks to Ben Bolker's report in PR#17746.
  * window(x, start, end) no longer wrongly signals "'start' cannot
    be after 'end'", fixing PR#17527 and PR#18291.
  * data() now checks that its (rarely used) list argument is a
    character vector - a couple of packages passed other types and
    gave incorrect results.
  * which() now checks its arr.ind argument is TRUE rather coercing
    to logical and taking the first element - which gave incorrect
    results in package code.
  * model.weights() and model.offset() more carefully extract their
    model components, thanks to Ben Bolker and Tim Taylor's R-devel
    post.
  * list.files(recursive = TRUE) now shows all broken symlinks
    (previously, some of them may have been omitted, PR#18296).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1650628800">- CHANGES IN R 4.2.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * The formula method of aggregate() now matches the generic in
    naming its first argument x (resolving PR#18299 by Thomas
    Soeiro).
    This means that calling aggregate() with a formula as a named
    first argument requires name formula in earlier versions of R and
    name x now, so portable code should not name the argument (code
    in many packages did).
  * Calling &amp;&amp; or || with either argument of length greater than one
    now gives a warning (which it is intended will become an error).
  * Calling if() or while() with a condition of length greater than
    one gives an error rather than a warning.  Consequently,
    environment variable _R_CHECK_LENGTH_1_CONDITION_ no longer has
    any effect.
  * Windows users should consult the WINDOWS section below for some
    profound changes including
  * Support for 32-bit builds has been dropped.
  * UTF-8 locales are used where available.
  * The default locations for the R installation and personal
    library folder have been changed.
    Thanks to Tomas Kalibera for months of work on the Windows port
    for this release.
  NEW FEATURES:
  * matrix(x, n, m) now warns in more cases where length(x) differs
    from n * m, as suggested by Abby Spurdle and Wolfgang Huber in
    Feb 2021 on the R-devel mailing list.
    This warning can be turned into an error by setting environment
    variable _R_CHECK_MATRIX_DATA_ to TRUE: R CMD check --as-cran
    does so unless it is already set.
  * Function file_test() in package utils gains tests for symlinks,
    readability and writability.
  * capabilities("libxml") is now false.
    The description of capabilities("http/ftp") now reflects that it
    refers to the default method, no longer the internal one.
  * simplify2array() gains an except argument for controlling the
    exceptions used by sapply().
  * Environment variables R_LIBS_USER and R_LIBS_SITE are both now
    set to the R system default if unset or empty, and can be set to
    NULL to indicate an empty list of user or site library
    directories.
  * The warning for axis()(-like) calls in cases of relatively small
    ranges (typically in log-scale situations) is slightly improved
    _and_ suppressed from explicit calls to .axisPars() as has always
    been the intention.
  * The contrasts setter function `contrasts&lt;-` gains an explicit
    default how.many = NULL rather than just using missing(how.many).
  * grid.pretty() gains a new optional argument n = 5.
  * There is a new function .pretty() with option bounds as a
    technical-utility version of pretty().  It and pretty() gain a
    new argument f.min with a better than back-compatible default.
  * Function grDevices::axisTicks() and related functions such as
    graphics::axis() work better, notably for the log scale; partly
    because of the pretty() improvements, but also because care is
    taken e.g., when ylim is finite but diff(ylim) is infinite.
  * nclass.FD() gains a digits option.
  * The R Mathlib internal C function bd0() (called indirectly from a
    dozen probability density and distribution functions such as
    dpois(), dbinom(), dgamma(), pgamma() _etc_) has been
    complemented by a more sophisticated and (mostly) more accurate C
    function ebd0(), currently called only by internal dpois_raw()
    improving accuracy for R level dpois() and potentially others
    calling it such as dnbinom(), dgamma() or pgamma().  (Thanks to
    Morten Welinder's PR#15628.)
  * write.ftable() gains sep = " " argument as suggested by Thomas
    Soeiro.
  * The names of the locale categories supported by R's
    Sys.getlocale() and Sys.setlocale() are now provided by variable
    .LC.categories in the base namespace.
  * The Date and POSIXt methods for hist() and the histogram method
    for plot() now also use the new default col = "lightgray" in
    consistency with the corresponding change to hist()'s default for
    R 4.0.0.
  * hist.default() gains new fuzz argument, and the histogram plot
    method no longer uses fractional axis ticks when displaying
    counts ("Frequency").
  * mapply() and hence Map() now also obey the "max-or-0-if-any"
    recycling rule, such that, e.g., Map(`+`, 1:3, 1[0]) is valid
    now.
  * as.character(&lt;obj&gt;) for "hexmode" or "octmode" objects now
    fulfils the important basic rule as.character(x)[j] ===
    as.character(x[j]).
  * The set utility functions, notably intersect() have been tweaked
    to be more consistent and symmetric in their two set arguments,
    also preserving a common mode.
  * substr(ch, start,end) &lt;- new now e.g., preserves names(ch); ditto
    for substring(), thanks to a patch from Brodie Gaslam.
  * plot(&lt;lm&gt;) gains a extend.ylim.f argument, in partial response to
    PR#15285; further PR#17784 is fixed thanks to several
    contributors and a patch by Elin Waring.  The Cook's dist
    contours get customizable via cook.col and cook.lty with a
    different default color and their legend is nicer by default and
    customizable via cook.legendChanges.
  * Attempting to subset an object that is not subsettable now
    signals an error of class notSubsettableError. The
    non-subsettable object is contained in the object field of the
    error condition.
  * Subscript-out-of-bounds errors are now signaled as errors of
    class subscriptOutOfBoundsError.
  * Stack-overflow errors are now signaled as errors inheriting from
    class stackOverflowError. See ?stackOverflowError for more
    details.
  * New partly experimental Sys.setLanguage() utility, solving the
    main problem of PR#18055.
  * gettext() and gettextf() get a new option trim = TRUE which when
    set to false allows translations for strings such as "Execution
    halted\n" typical for C code.
  * An experimental implementation of hash tables is now available.
    See ?hashtab for more details.
  * identical() gains a extptr.as.ref argument for requesting that
    external pointer objects be compared as reference objects.
  * reorder() gets an argument decreasing which it passes to sort()
    for level creation; based on the wish and patch by Thomas Soeiro
    in PR#18243.
  * as.vector() gains a data.frame method which returns a simple
    named list, also clearing a long standing 'FIXME' to enable
    as.vector(&lt;data.frame&gt;, mode="list").  This breaks code relying
    on as.vector(&lt;data.frame&gt;) to return the unchanged data frame.
  * legend() is now vectorized for arguments cex, x.intersp, and
    text.width.  The latter can now also be specified as a vector
    (one element for each column of the legend) or as NA for
    computing a proper column wise maximum value of strwidth(legend).
    The argument y.intersp can be specified as a vector with one
    entry for each row of the legend.
    legend() also gains new arguments title.cex and title.font.
    Thanks to Swetlana Herbrandt.
  * Deparsing no longer remaps attribute names dim, dimnames, levels,
    names and tsp to historical S-compatible names (which structure()
    maps back).
  * sample() and sample.int() have additional sanity checks on their
    size and n arguments.
    all.equal.numeric() gains a sanity check on its tolerance
    argument - calling all.equal(a, b, c) for three numeric vectors
    is a surprisingly common error.
    mean(na.rm =), rank(na.last =), barplot(legend.text =),
    boxplot(), contour(drawlabels =), polygon(border =) and
    methods::is(class2 =) have more robust sanity checks on their
    arguments.
    R CMD Rd2pdf (used by R CMD check) has a more robust sanity check
    on the format of \alias{} commands.
  * psigamma(x, deriv) for negative x now also works for deriv = 4
    and 5; their underlying C level dpsifn() is documented in
    'Writing R Extensions'.
  * The HTML help system now uses HTML5 (wish of PR#18149).
  * ks.test() now provides exact p-values also with ties and MC
    p-values in the two-sample (Smirnov) case.  By Torsten Hothorn.
  * ks.test() gains a formula interface, with y ~ 1 for the
    one-sample (Kolmogorov) test and y ~ group for the two-sample
    (Smirnov) test.  Contributed by Torsten Hothorn.
  * The return value from ks.test() now has class c("ks.test",
    "htest") - packages using try() need to take care to use
    inherits() and not == on the class.
  * New functions psmirnov(), qsmirnov() and rsmirnov() in package
    stats implementing the asymptotic and exact distributions of the
    two-sample Smirnov statistic.
  * iconv() now allows sub = "c99" to use C99-style escapes for UTF-8
    inputs which cannot be converted to encoding to.
  * In a forward pipe |&gt; expression it is now possible to use a named
    argument with the placeholder _ in the rhs call to specify where
    the lhs is to be inserted.  The placeholder can only appear once
    on the rhs.
  * The included LAPACK sources have been updated to version 3.10.0,
    except for the four Fortran 77 routines which 3.10.0 has
    re-implemented in Fortran 90 (where the older versions have been
    retained as the R build process does not support Fortran 90).
  * path.expand() and most other uses of tilde expansion now warn if
    a path would be too long if expanded.  (An exception is
    file.exists(), which silently returns false.)
  * trunc(&lt;Date&gt;, *) now supports units = "months" or "years" for
    consistency with the POSIXt method, thanks to Dirk Eddelbuettel's
    proposal in PR#18099.
  * list2DF() now checks that its arguments are of the same length,
    rather than use recycling.
  * The HTML help system has several new features: LaTeX-like math
    can be typeset using either KaTeX or MathJax, usage and example
    code is highlighted using Prism, and for dynamic help the output
    of examples and demos can be shown within the browser if the
    knitr package is installed. These features can be disabled by
    setting the environment variable _R_HELP_ENABLE_ENHANCED_HTML_ to
    a false value.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 15
    and so packages that provide graphics devices should be
    reinstalled.
  * The grid package now allows the user to specify a "vector" of
    pattern fills.  The fill argument to gpar() accepts a list of
    gradients and/or patterns and the functions linearGradient(),
    radialGradient(), and pattern() have a new group argument.
    Points grobs (data symbols) can now also have a pattern fill.
    The grobCoords() function now returns a more informative and
    complex result.
  * The grid package has new functions for drawing isolated groups:
    grid.group(), grid.define(), and grid.use().  These functions add
    compositing operators and affine transformations to R's graphics
    capabilities.
    The grid package also has new functions for stroking and filling
    paths: grid.stroke(), grid.fill(), and grid.fillStroke().
    A new function as.path() allows the user to specify the fill rule
    for a path that is to be used for clipping, stroking, or filling;
    available options are "winding" and "evenodd".  A new function
    as.mask() allows the user to specify the type of a mask;
    available options are "alpha" and "luminance".
    These new features are only supported so far (at most) on the
    Cairo-based graphics devices and on the pdf() device.
  * dev.capabilities() reports on device support for the new
    features.
  * par() now warns about unnamed non-character arguments to prevent
    misuse such as {usr &lt;- par("usr"); par(usr)}.
  INSTALLATION:
  * Facilities for accessing ftp:// sites are no longer tested
    (except _pro tem_ for curlGetHeaders()) as modern browsers have
    removed support.
  * R can now be built with DEFS = -DSTRICT_R_HEADERS .
  PACKAGE INSTALLATION:
  * R CMD INSTALL no longer tangles vignettes. This completes an R
    CMD build change in R 3.0.0 and affects packages built before R
    3.0.2. Such packages should be re-made with R CMD build to have
    the tangled R code of vignettes shipped with the tarball.
  * USE_FC_LEN_T will become the default: this uses the correct
    prototypes for Fortran BLAS/LAPACK routines called from C/C++,
    and requires adjustment of most such calls - see 'Writing R
    Extensions' SS6.6.2.  (This has been supported since R 3.6.2.)
  * Package installation speed for packages installed with
    keep.source has been improved. This resolve the issue reported by
    Ofek Shilon in PR#18236.
  UTILITIES:
  * R CMD check can optionally report files/directories left behind
    in home, /tmp (even though TMPDIR is set) and other directories.
    See the "R Internals" manual for details.
  * R CMD check now reports byte-compilation errors during
    installation.  These are not usually fatal but may result in
    parts of the package not being byte-compiled.
  * _R_CHECK_DEPENDS_ONLY_ can be applied selectively to examples,
    tests and/or vignettes in R CMD check: see the "R Internals"
    manual.
  * _R_CHECK_SRC_MINUS_W_IMPLICIT_ now defaults to true: recent
    versions of Apple clang on macOS have made implicit function
    declarations in C into a compilation error.
  * R CMD check --as-cran makes use of the environment variable
    AUTORECONF.  See the "R Internals" manual SS8 for further details.
  * R CMD check --use-valgrind also uses valgrind when re-building
    vignettes as some non-Sweave vignettes unhelpfully comment out
    all their code when R CMD check runs vignettes.
  * Errors in re-building vignettes (unless there are LaTeX errors)
    are reported by R CMD check as ERROR rather than WARNING when
    running vignettes has been skipped (as it frequently is in CRAN
    checks and by --as-cran).
  * R CMD Rd2pdf gains a --quiet option that is used by R CMD build
    when building the PDF package manual.
  * R CMD Rd2pdf now always runs LaTeX in batch mode, consistent with
    Texinfo &gt;= 6.7. The --batch option is ignored.
  * R CMD build and R CMD check now include the Rd file name and line
    numbers in the error message of an \Sexpr evaluation failure.
  * For packages using the \doi Rd macro (now an install-time \Sexpr)
    but no other dynamic Rd content, R CMD build now produces a
    smaller tarball and is considerably faster - skipping temporary
    package installation.
  C-LEVEL FACILITIES:
  * The non-API header R_ext/R-ftp-http.h is no longer provided, as
    the entry points it covered are now all defunct.
  * A number of non-API declarations and macro definitions have been
    moved from the installed header Rinternals.h to the internal
    header Defn.h. Packages that only use entry points and
    definitions documented to be part of the API as specified in
    'Writing R Extensions' SS6 should not be affected.
  * The macro USE_RINTERNALS no longer has any effect when compiling
    package code.  Packages which also use R_NO_REMAP will need to
    ensure that the remapped names are used for calls to API
    functions that were formerly also made available as macros.
  * The deprecated legacy S-compatibility macros PROBLEM, MESSAGE,
    ERROR, WARN, WARNING, RECOVER, ... are no longer defined in
    R_exts/RS.h (included by R.h).  Replace these by calls to
    Rf_error and Rf_warning (defined in header R_ext/Error.h included
    by R.h).
    Header R_ext/RS.h no longer includes R_ext/Error.h.
  * Header R_ext/Constants.h (included by R.h) when included from C++
    now includes the C++ header cfloat rather than the C header
    float.h (now possible as C++11 is required).
  * The legacy S-compatibility macros DOUBLE_* in R_ext/Constants.h
    (included by R.h) are deprecated.
  * The deprecated S-compatibility macros SINGLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * R_Calloc, R_Free and R_Realloc are preferred to their unprefixed
    forms and error messages now use the prefix. These forms were
    introduced in R 3.4.0 and are available even when
    STRICT_R_HEADERS is defined.
  * rmultinom has been documented in 'Writing R Extensions' SS6 so is
    now part of the R API.
  * Similarly, Rtanpi, called from R level tanpi() is now part of the
    R API.
  * The long-deprecated, undocumented and non-API entry point call_R
    is no longer declared in R_ext/RS.h (included by R.h).
  * The header S.h which has been unsupported since Jan 2016 has been
    removed.  Use R.h instead.
  DEPRECATED AND DEFUNCT:
  * The (non-default and deprecated) method = "internal" for
    download.file() and url() no longer supports http:// nor ftp://
    URIs.  (It is used only for file:// URIs.)
    On Windows, download.file(method = "wininet") no longer supports
    ftp:// URIs.  (It is no longer the default method, which is
    "libcurl" and does.)
    On Windows, the deprecated method = "wininet" now gives a warning
    for http:// and https:// URIs for both download.file() and url().
    (It is no longer the default method.)
  * On Windows, the command-line option --max-mem-size and
    environment variable R_MAX_MEM_SIZE are defunct.  The memory
    allocation limit was important for 32-bit builds, but these are
    no longer supported.
  * default.stringsAsFactors() is now formally deprecated, where that
    was only mentioned on its regular help page, previously.  So it
    now gives a warning if called.
  * unix.time() is defunct now; it had been deprecated since R 3.4.0.
  BUG FIXES:
  * Setting digits = 0 in format(), print.default() (and hence
    typically print()) or options() is again invalid.  Its behaviour
    was platform-dependent, and it is unclear what "zero significant
    digits" should mean (PR#18098).
  * Messages from C code in the cairo section of package grDevices
    are now also offered for translation, thanks to Michael Chirico's
    PR#18123.
  * mean(x) with finite x now is finite also without "long.double"
    capability.
  * R CMD Rd2pdf no longer leaves an empty build directory behind
    when it aborts due to an already existing output file.  (Thanks
    to Sebastian Meyer's PR#18141.)
  * density(x, weights = w, na.rm = TRUE) when anyNA(x) is true, now
    removes weights "in parallel" to x, fixing PR#18151, reported by
    Matthias Gondan.  Additionally, it gets a subdensity option.
  * Conversion of \Sexpr[]{&lt;expR&gt;} to LaTeX or HTML no longer
    produces long blocks of empty lines when &lt;expR&gt; itself contains
    several lines all producing empty output.  Thanks to a report and
    patch by Ivan Krylov posted to R-devel.
  * R CMD build no longer fails if a package vignette uses child
    documents and inst/doc exists.  (Thanks to Sebastian Meyer's
    PR#18156.)
  * When an R documentation ('help' source) file man/foo.Rd in a
    package has \donttest{..} examples with a syntax error, it is now
    signalled as ERROR and with correct line numbers relating to the
  * -Ex.R file, thanks to Duncan Murdoch and Sebastian Meyer's
    reports and patch proposals in PR#17501.
  * Improved determination of the correct translation domain in
    non-base packages, addressing the combination of PR#18092 and
    PR#17998 (#c6) with reports and _augmented_ patch #2904 by
    Suharto Anggono.
    Note that "R-base" is no longer the default domain e.g., for
    top-level calls to gettext(); rather translation needs explicit
    domain = * specification in such cases.
  * identical(attrib.as.set=FALSE) now works correctly with data
    frames with default row names (Thanks to Charlie Gao's PR#18179).
  * txtProgressBar() now enforces a non-zero width for argument char,
    without which no progress can be visible.
  * dimnames(table(d)) is more consistent in the case where d is a
    list with a single component, thanks to Thomas Soeiro's report to
    R-devel.
    Further, table(d1, d2) now gives an error when d1 and d2 are data
    frames as suggested by Thomas in PR#18224.
  * Fix for drawing semi-transparent lines and fills on the native
    Windows graphics device (PR#18219 and PR#16694).  Thanks to Nick
    Ray for helpful diagnosis on Bugzilla.
  * The deparser now wraps sub-expressions such as if(A) ..  with
    parentheses when needed; thanks to Duncan Murdoch's PR#18232 and
    Lionel Henry's patches there.
  * remove.packages() no longer tries to uninstall Priority: base
    packages, thanks to a report and suggestions by Colin Fay in
    PR#18227.
  * win.metafile() now has xpinch and ypinch arguments so that the
    user can override Windows' (potentially wrong) guess at device
    dimensions.
  * x[i] and x[[i]] for non-integer i should now behave in all cases
    as always documented: the index used is equivalent to
    as.integer(i) unless that would overflow where trunc(i) is used
    instead; thanks to Suharto Anggono's report and patch proposals
    in PR#17977.
  * asOneSidedFormula() now associates the resulting formula with the
    global environment rather than the evaluation environment created
    for the call.
  * &lt;bibentry&gt;$name now matches the field name case-insensitively,
    consistent with bibentry() creation and the replacement method.
  * cbind() failed to detect some length mismatches with a mixture of
    time-series and non-time-series inputs.
  * The default LaTeX style file Sweave.sty used by the RweaveLatex
    driver no longer loads the obsolete ae package; thanks to a
    report by Thomas Soeiro in PR#18271.  Furthermore, it now skips
    \usepackage[T1]{fontenc} for engines other than pdfTeX (if
    detected) or if the new [nofontenc] option is used.
  * smooth.spline() now stores its logical cv argument more safely,
    fixing a rare bug when printing, and also stores n.
  * smooth.spline(x,y,*) now computes the cv.crit statistic
    correctly, also when is.unsorted(x), fixing PR#18294.
  * The data.frame method of rbind() now warns when binding
    not-wholly-recycling vectors, by analogy to the default method
    (for matrices).
  * setAs() finds the correct class for name to when multiple
    packages define a class with that name. Thanks to Gabor Csardi
    for the report.
  * Fix for detaching a package when two classes of the same name are
    present in method signatures for the same generic. Thanks to
    Gabor Csardi for the report.
  * match.arg("", c("", "a", "B")) gives a better error message, in
    part from PR#17959, thanks to Elin Waring.
  * R CMD Sweave --clean no longer removes pre-existing files or
    subdirectories (PR#18242).
  * The quartz() device no longer splits polylines into subpaths.
    That has caused narrowly-spaced lines with many points to always
    look solid even when dashed line type was used due to dash phase
    restarts.
  * Deparsing constructs such as quote(1 + `!`(2) + 3) works again as
    before R 3.5.0, thanks to the report and patch in PR#18284 by
    Suharto Anggono.
  * as.list(f) for a factor f now keeps names(f), fixing PR#18309.
  * qbeta(.001, .9, .009) and analogous qf() calls now return a
    correct value instead of NaN or wrongly 1, all with a warning;
    thanks to the report by Ludger Goeminne in PR#18302.
  * plot.lm() failed to produce the plot of residuals vs.  factor
    levels (i.e., which=5 when leverages are constant) for models
    with character predictors (PR#17840).
  * interaction.plot(..., xtick = TRUE) misplaced the x-axis line
    (PR#18305).
  * Not strictly fixing a bug, format()ing and print()ing of
    non-finite Date and POSIXt values NaN and +/-Inf no longer show
    as NA but the respective string, e.g., Inf, for consistency with
    numeric vector's behaviour, fulfilling the wish of PR#18308.
  * R CMD check no longer runs test scripts generated from
    corresponding .Rin files twice and now signals an ERROR if
    processing an .Rin script fails.
  * tools::Rd2txt() used for plain-text help pages now renders \hrefs
    (if tools::Rd2txt_options(showURLs = TRUE)) and \urls with
    percent-encoding and standards-compliant delimiting style (angle
    brackets and no URL: prefix).  \email is now rendered with a
    mailto: prefix.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1655985600">- CHANGES IN R 4.2.1:
  NEW FEATURES:
  * New function utils::findCRANmirror() to find out if a CRAN mirror
    has been selected, otherwise fallback to the main site.  This
    behaves in the same way as tools::CRAN_package_db() and is
    intended for packages wishing to access CRAN for purposes other
    than installing packages.
    The need for this was shown by a day when the main CRAN website
    was offline and a dozen or so packages which had its URL
    hardcoded failed their checks.
  INSTALLATION on a UNIX-ALIKE:
  * The libraries searched for by --with-blas (without a value) now
    include BLIS (after OpenBLAS but before ATLAS).  And on macOS,
    the Accelerate framework (after ATLAS).  (This is patterned after
    the AX_BLAS macro from the Autoconf Archive.)
  * The included LAPACK sources have been updated to 3.10.1.
  UTILITIES:
  * The (full path to) the command tidy to be used for HTML
    validation can be set by environment variable R_TIDYCMD.
  * Setting environment variable _R_CHECK_RD_VALIDATE_RD2HTML_ to a
    false value will override R CMD check --as-cran and turn off HTML
    validation.  This provides a way to circumvent a problematic
    tidy.
    The 2006 version that ships with macOS is always skipped.
  C-LEVEL FACILITIES:
  * The undocumented legacy declarations of Sint, Sfloat, SINT_MAX
    and SINT_MIN in header R.h are deprecated.
  BUG FIXES:
  * fisher.test(d) no longer segfaults for "large" d; fixing PR#18336
    by preventing/detecting an integer overflow reliably.
  * tar(., files=*) now produces correctly the warning about invalid
    uid or gid of files, fixing PR#18344, reported by Martin Morgan.
  * tk_choose.files() with multi = FALSE misbehaved on paths
    containing spaces (PR#18334) (regression introduced in R 4.0.0).
  * sort(x, partial = ind, *) now works correctly notably for the
    non-default na.last = FALSE or TRUE, fixing PR#18335 reported by
    James Edwards.
  * Environment variable _R_CHECK_XREFS_REPOSITORIES_ is only used
    for checking .Rd cross-references in R CMD check (as documented)
    and not for other uses looking for a CRAN mirror.
  * The search for a CRAN mirror when checking packages now uses
    getOption("repos") if that specifies a CRAN mirror, even when it
    does not also specify all three Bioconductor repositories (as was
    previously required).
  * The HTML code generated by tools::Rd2HTML() has been improved to
    pass tidy 5.8.0.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1667217600">- CHANGES IN R 4.2.2:
  NEW FEATURES:
  * tools::Rdiff(useDiff = TRUE) checks for the presence of an
    external diff command and switches to useDiff = FALSE if none is
    found.  This allows R CMD Rdiff to always work.
  * On Windows, environment variable R_LIBCURL_SSL_REVOKE_BEST_EFFORT
    can be used to switch to only 'best-effort' SSL certificate
    revocation checks with the default "libcurl" download method.
    This reduces security, but may be needed for downloads to work
    with MITM proxies (PR#18379).
  * (macOS) The run-time check for libraries from XQuartz for X11 and
    Tcl/Tk no longer uses otool from the Apple Developer Tools
    (PR#18400).
  * The LaTeX style for producing the PDF manuals, Rd.sty, now loads
    the standard amsmath, amsfonts and amssymb packages for greater
    coverage of math commands in the Rd \eqn and \deqn macros.  The
    \mathscr LaTeX command is also provided (via the mathrsfs
    package, if available, or the amsfonts bundle otherwise),
    fulfilling the wish of PR#18398.
  * (Windows) The default format of readClipboard() and
    writeClipboard() has been changed to 13 (CF_UNICODETEXT).
  INSTALLATION on a UNIX-ALIKE:
  * The PDF manuals (if built) can be compacted by the new target
    make compact-pdf (at the top level or in directory doc/manual).
  * There is now configure support for LLVM clang 15 on Linux, which
    defaults to position-independent (PIE) executables whereas
    gfortran does not.
  * Many small changes to ease compilation (and suppress warnings)
    with LLVM clang 15.
  BUG FIXES:
  * Rscript -e would fail if stdin were closed (Reported by Henrik
    Bengtsson.)
  * qt(*, log.p=TRUE) in outer tails no longer produces NaN in its
    final steps, thus fixing PR#18360.
  * tools::Rd2latex() now escapes hashes and ampersands when writing
    URLs, fixing LaTeX errors with such URLs in \tabular.
  * When isGeneric(f, fdef=*) is used with mismatching names, the
    warning is better understandable; reported (with fix) in PR#18370
    by Gabe Becker.
  * poly(x, n) now works again (and is now documented) when x is a
    "Date" or "POSIXct" object, or of another class while fulfilling
    mode(x) == "numeric".  This also enables poly(x, *, raw=TRUE) for
    such variables.  Reported by Michael Chirico to R-devel.
  * write.table(), write.csv() and write.csv2() restore their
    numerical precision (internal equivalent of digits = 15) after an
    interrupt (PR#18384).
  * One can now read also byte FF from a clipboard connection
    (PR#18385).
  * source("") and source(character()) now give more helpful error
    messages.
  * R CMD check --as-cran set _R_CHECK_TIMINGS_ too late to have the
    intended effect.
  * as.POSIXlt(x) now also works with very large dates x, fixing
    PR#18401 reported by Hannes M"uhleisen.
  * Files can now be extracted even from very large zip archives
    (PR#18390, thanks to Martin Jakt).
  * Non-finite objects of class "POSIXlt" are now correctly coerced
    to classes "Date" and "POSIXct"; following up on the extension to
    format() them correctly.
  * Added methods for is.finite(), is.infinite() and is.nan() for
    "POSIXlt" date-time objects.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1678881600">- CHANGES IN R 4.2.3:
  C-LEVEL FACILITIES:
  * The definition of DL_FUNC in R_ext/Rdynload.h has been changed to
    be fully C-compliant.  This means that functions loaded _via_ for
    example R_GetCCallable need to be cast to an appropriate type if
    they have any arguments.
  * .Machine has a new element sizeof.time_t to identify old systems
    with a 32-bit type and hence a limited range of date-times (and
    limited support for dates millions of years from present).
  PACKAGE INSTALLATION:
  * (Windows) The default C++ standard had accidentally been left at
    C++11 when it was changed to C++14 on Unix.
  BUG FIXES:
  * As "POSIXlt" objects may be "partially filled" and their list
    components meant to be recycled, length() now is the length of
    the longest component.
  * as.POSIXlt.Date() could underflow for dates in the far past (more
    than half a million years BCE).
  * as.Date.POSIXlt(x) would return "1970-01-01" instead of NA in R
    4.2.2, e.g., for
    x &lt;- as.POSIXlt(c("2019-01-30","2001-1-1"))
    x$mon &lt;- c(0L, NA); as.Date(x)
  * R CMD check failed to apply enabled _R_CHECK_SUGGESTS_ONLY_ to
    examples and vignettes (regression in R 4.2.0).
  * R CMD check did not re-build vignettes in separate processes by
    default (regression in R 4.2.0).
  * Running examples from HTML documentation now restores previous
    knitr settings and options (PR#18420).
  * Quartz: fonts are now located using Core Graphics API instead of
    deprecated ATS which is no longer supported in the macOS 13 SDK
    (PR#18426).  This also addresses an issue where the currently
    used font in the Quartz device context was not correctly
    retained.
  * (Windows) Math symbols in text drawing functions are again
    rendered correctly (PR#18440).  This fixes a regression in R
    4.2.1 caused by a fix in PR#18382 which uncovered an issue in
    GraphApp due to which the symbol charset was not used with TT
    Symbol font face.
  * (Windows) Installing a package with a src/Makefile.{win,ucrt}
    file includes ~/.R/Makevars.win64 in the search for user
    makevars, as documented in "R Installation and Administration"
    and done for packages with a src/Makevars.{win,ucrt} file.
  * format(&lt;POSIXlt_w/_unbalanced_sec&gt;, "....%OS&lt;n&gt;") with n &gt; 0 no
    longer accidentally uses the unbalanced seconds, thanks to
    Suharto Anggono's report (including patch) in PR#18448.
  * solve.default(a, b) works around issues with some versions of
    LAPACK when a contains NA or NaN values.
  * When UseMethod() cannot dispatch, it no longer segfaults
    producing the error message in case of a long class(), thanks to
    Joris Vankerschaver's report (including patch) in PR#18447.
  * When example(foo, ..) produces graphics on an interactive device
    it needs to open itself, it now leaves devAskNewPage() unchanged
    even when it was FALSE, thus fixing a 14 years old '&lt;FIXME&gt;'.
  * packageDescription() again catches errors from encoding
    conversions. This also fixes broken packageVersion() in C locale
    on systems where iconv does not support transliteration.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1681128000">- add patch to build with libcurl &gt;= 8</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1682078400">- CHANGES IN R 4.3.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Calling &amp;&amp; or || with LHS or (if evaluated) RHS of length greater
    than one is now always an error, with a report of the form
    'length = 4' in coercion to 'logical(1)'
    Environment variable _R_CHECK_LENGTH_1_LOGIC2_ no longer has any
    effect.
  NEW FEATURES:
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.10.1.  (This caused some platform-dependent
    changes to package check output.)  And then to the sources from
    LAPACK version 3.11.0 (with changes only to double complex
    subroutines).
  * The included LAPACK sources have been updated to include the four
    Fortran 90 routines rather than their Fortran 77 predecessors.
    This may give some different signs in SVDs or
    eigendecompositions..  (This completes the transition to LAPACK
    3.10.x begun in R 4.2.0.)
  * The LAPACK sources have been updated to version 3.11.0.  (No new
    subroutines have been added, so this almost entirely bug fixes:
    Those fixes do affect some computations with NaNs, including R's
    NA.)
  * The parser now signals _classed_ errors, notably in case of the
    pipe operator |&gt;.  The error object and message now give line and
    column numbers, mostly as proposed and provided by Duncan Murdoch
    in PR#18328.
  * toeplitz() is now generalized for asymmetric cases, with a
    toeplitz2() variant.
  * xy.coords() and xyz.coords() and consequently, e.g., plot(x,y,
    log = "y") now signal a _classed_ warning about negative values
    of y (where log(.) is NA).  Such a warning can be specifically
    suppressed or caught otherwise.
  * Regular expression functions now check more thoroughly whether
    their inputs are valid strings (in their encoding, e.g. in
    UTF-8).
  * The performance of grep(), sub(), gsub() and strsplit() has been
    improved, particularly with perl = TRUE and fixed = TRUE.  Use of
    useBytes = TRUE for performance reasons should no longer be
    needed and is discouraged: it may lead to incorrect results.
  * apropos() gains an argument dot_internals which is used by the
    completion (help(rcompgen)) engine to also see base internals
    such as .POSIXct().
  * Support in tools::Rdiff() for comparing uncompressed PDF files is
    further reduced - see its help page.
  * qqplot(x, y, ...) gains conf.level and conf.args arguments for
    computing and plotting a confidence band for the treatment
    function transforming the distribution of x into the distribution
    of y (Switzer, 1976, _Biometrika_). Contributed by Torsten
    Hothorn.
  * Performance of package_dependencies() has been improved for cases
    when the number of dependencies is large.
  * Strings newly created by gsub(), sub() and strsplit(), when any
    of the inputs is marked as "bytes", are also marked as "bytes".
    This reduces the risk of creating invalid strings and accidental
    substitution of bytes deemed invalid.
  * Support for readLines(encoding = "bytes") has been added to allow
    processing special text files byte-by-byte, without creating
    invalid strings.
  * iconv(from = "") now takes into account any declared encoding of
    the input elements and uses it in preference to the native
    encoding.  This reduces the risk of accidental creation of
    invalid strings, particularly when different elements of the
    input have different encoding (including "bytes").
  * Package repositories in getOption("repos") are now initialized
    from the repositories file when utils is loaded (if not already
    set, e.g., in .Rprofile).  (From a report and patch proposal by
    Gabriel Becker in PR#18405.)
  * compactPDF() gets a verbose option.
  * type.convert() and hence read.table() get new option tryLogical =
    TRUE with back compatible default.  When set to false, converts
    "F" or "T" columns to character.
  * Added new unit prefixes "R" and "Q" for abbreviating
    (unrealistically large) sizes beyond 10^{27} in standard = "SI",
    thanks to Henrik Bengtsson's PR#18435.
  * as.data.frame()'s default method now also works fine with atomic
    objects inheriting from classes such as "roman", "octmode" and
    "hexmode", such fulfilling the wish of PR#18421, by Benjamin
    Feakins.
  * The as.data.frame.vector() utility now errors for wrong-length
    row.names.  It warned for almost six years, with "Will be an
    error!".
  * sessionInfo() now also contains La_version() and reports codepage
    and timezone when relevant, in both print() and toLatex() methods
    which also get new option tzone for displaying timezone
    information when locale = FALSE.
  * New function R_compiled_by() reports the C and Fortran compilers
    used to build R, if known.
  * predict(&lt;lm&gt;, newdata = *) no longer unnecessarily creates an
    offset of all 0s.
  * solve() for complex inputs now uses argument tol and by default
    checks for 'computational singularity' (as it long has done for
    numeric inputs).
  * predict(&lt;rank-deficient lm&gt;, newdata=*) now obeys a new argument
    rankdeficient, with new default "warnif", warning only if there
    are non-estimable cases in newdata.  Other options include
    rankdeficient = "NA", predicting NA for non-estimable newdata
    cases.  This addresses PR#15072 by Russ Lenth and is based on his
    original proposal and discussions in PR#16158 also by David Firth
    and Elin Waring.  Still somewhat experimental.
  * Rgui console implementation now works better with the NVDA screen
    reader when the full blinking cursor is selected.  The underlying
    improvements in cursor handling may help also other screen
    readers on Windows.
  * The drop-field control in GraphApp can now be left with the TAB
    key and all controls can be navigated in the reverse order using
    the Shift+TAB key, improving accessibility of the Rgui
    configuration editor.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now fully accurate
    (instead of to "only" minimally five digits).
  * demo(error.catching) now also shows off withWarnings() and
    tryCatchWEMs().
  * As an experimental feature the placeholder _ can now also be used
    in the rhs of a forward pipe |&gt; expression as the first argument
    in an extraction call, such as _$coef. More generally, it can be
    used as the head of a chain of extractions, such as _$coef[[2]].
  * Spaces in the environment variable used to choose the R session's
    temporary directory (TMPDIR, TMP and TEMP are tried in turn) are
    now fatal.  (On Windows the 'short path' version of the path is
    tried and used if that does not contain a space.)
  * all.equal.numeric() gets a new optional switch giveErr to return
    the numeric error as attribute.  Relatedly,
    stopifnot(all.equal&lt;some&gt;(a, b, ..)) is as "smart" now, as
    stopifnot(all.equal(....)) has been already, thus allowing
    customized all.equal&lt;Some&gt;() wrappers.
  * R on Windows is now able to work with path names longer than 260
    characters when these are enabled in the system (requires at
    least Windows 10 version 1607).  Packages should be updated to
    work with long paths as well, instead of assuming PATH_MAX to be
    the maximum length.  Custom front-ends and applications embedding
    R need to update their manifests if they wish to allow this
    feature.  See
    &lt;https://blog.r-project.org/2023/03/07/path-length-limit-on-windows&gt;
    for more information.
  * 'Object not found' and 'Missing argument' errors now give a more
    accurate error context. Patch provided by Lionel Henry in
    PR#18241.
  * The @ operator is now an S3 generic. Based on contributions by
    Tomasz Kalinowski in PR#18482.
  * New generic chooseOpsMethod() provides a mechanism for objects to
    resolve cases where two suitable methods are found for an Ops
    Group Generic. This supports experimenting with alternative
    object systems. Based on contributions by Tomasz Kalinowski in
    PR#18484.
  * inherits(x, what) now accepts values other than a simple
    character vector for argument what. A new generic, nameOfClass(),
    is called to resolve the class name from what. This supports
    experimenting with alternative object systems. Based on
    contributions by Tomasz Kalinowski in PR#18485.
  * Detection of BLAS/LAPACK in use (sessionInfo()) with FlexiBLAS
    now reports the current backend.
  * The "data.frame" method for subset() now warns about extraneous
    arguments, typically catching the use of = instead of == in the
    subset expression.
  * Calling a:b when numeric a or b is longer than one may now be
    made into an error by setting environment variable
    _R_CHECK_LENGTH_COLON_ to a true value, along the proposal in
    PR#18419 by Henrik Bengtsson.
  * density(x, weights = *) now warns if automatic bandwidth
    selection happens without using weights; new optional warnWbw may
    suppress the warning.  Prompted by Christoph Dalitz' PR#18490 and
    its discussants.
  * rm(list = *) is faster and more readable thanks to Kevin Ushey's
    PR#18492.
  * The plot.lm() function no longer produces a normal Q-Q plot for
    GLMs. Instead it plots a half-normal Q-Q plot of the absolute
    value of the standardized deviance residuals.
  * The print() method for class "summary.glm" no longer shows
    summary statistics for the deviance residuals by default.  Its
    optional argument show.residuals can be used to show them if
    required.
  * The tapply() function now accepts a data frame as its X argument,
    and allows INDEX to be a formula in that case. by.data.frame()
    similarly allows INDICES to be a formula.
  * The performance of df[j] &lt;- value (including for missing j) and
    write.table(df) has been improved for data frames df with a large
    number of columns.  (Thanks to Gabriel Becker's PR#18500,
    PR#18503 and discussants, prompted by a report from Toby Dylan
    Hocking on the R-devel mailing list.)
  * The matrix multiply operator %*% is now an S3 generic, belonging
    to new group generic matrixOps.  From Tomasz Kalinowski's
    contribution in PR#18483.
  * New function array2DF() to convert arrays to data frames,
    particularly useful for the list arrays created by tapply().
  DATES and TIMES:
  * On platforms where (non-UTC) datetimes before 1902 (or before
    1900 as with system functions on recent macOS) are guessed by
    extrapolating time zones from 1902-2037, there is a warning at
    the first use of extrapolation in a session.  (As all time zones
    post 2037 are extrapolation, we do not warn on those.)
  * (Platforms using --with-internal-tzone, including Windows and by
    default macOS). How years are printed in dates or date-times can
    be controlled by environment variable R_PAD_YEARS_BY_ZERO.  The
    default remains to pad to 4 digits by zeroes, but setting value
    no gives no padding (as used by default by glibc).
  * strftime() tries harder to determine the offset for the "%z"
    format, and succeeds on the mainstream R platforms.
  * strftime() has a limit of 2048 bytes on the string produced -
    attempting to exceed this is an error.  (Previously it silently
    truncated at 255 bytes.)
  * sessionInfo() records (and by default prints) the system time
    zone as part of the locale information.  Also, the source
    (system/internal) of the date-time conversion and printing
    functions.
  * Objects of class "POSIXlt" created in this version of R always
    have 11 components: component zone is always set, and component
    gmtoff is set for times in UTC and usually set on the (almost
    all) platforms which have C-level support, otherwise is NA.
  * There are comprehensive validity checks on the structure of
    objects of class "POSIXlt" when converting (including formatting
    and printing).  (This avoids mis-conversions of hand-crafted
    objects.)
  * There is some support for using the native date-time routines on
    macOS: this is only viable on recent versions (e.g. 12.6 and 13)
    and does get wrong some historical changes (before 1900, during
    WWII).  Use of --with-internal-tzone remains the default.
  * as.POSIXct(&lt;numeric&gt;) and as.POSIXlt(.) (without specifying
    origin) now work.  So does as.Date(&lt;numeric&gt;).
  * as.Date.POSIXct(., tz) now treats several tz values, notably
    "GMT" as equivalent to "UTC", proposed and improved by Michael
    Chirico and Joshua Ulrich in PR#17674.
  * Experimental balancePOSIXlt() utility allows using "ragged" and
    or out-of-range "POSIXlt" objects more correctly, e.g., in
    subsetting and subassignments.  Such objects are now documented.
    More experimentally, a "POSIXlt" object may have an attribute
    "balanced" indicating if it is known to be filled or fully
    balanced.
  * Functions axis.Date() and axis.POSIXct() are rewritten to gain
    better default tick locations and better default formats by using
    prettyDate(). Thanks to Swetlana Herbrandt.
  * The mapping of Windows' names for time zones to IANA's 'Olson'
    names has been updated.  When ICU is available (it is by
    default), it is used to get a mapping for the current region set
    in Windows.  This can be overridden by setting environment
    variable TZ to the desired Olson name - see OlsonNames() for
    those currently available.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 16
    and so packages that provide graphics devices should be
    reinstalled.
  * The grDevices and grid packages have new functions for rendering
    typeset glyphs, primarily: grDevices::glyphInfo() and
    grid::grid.glyph().
    Rendering of typeset glyphs is only supported so far on the
    Cairo-based graphics devices and on the pdf() and quartz()
    devices.
  * The defined behaviour for "clear" and "source" compositing
    operators (via grid::grid.group()) has been changed (to align
    better with simple interpretation of original Porter-Duff
    definitions).
  * Support for gradients, patterns, clipping paths, masks, groups,
    compositing operators, and affine transformations has been added
    to the quartz() device.
  INSTALLATION on a UNIX-ALIKE:
  * A system installation of generic LAPACK 3.10.0 or later will be
    preferred to the version in the R sources.
    configure option --with-lapack=no (equivalently --without-lapack)
    forces compilation of the internal LAPACK sources.
    If --with-lapack is not specified, a system liblapack is looked
    for and used if it reports version 3.10.0 or later and does not
    contain BLAS routines.
    Packages using LAPACK will need to be reinstalled if this changes
    to using an external library.
  * On aarch64 Linux platforms using GCC, configure now defaults to
  - fPIC (instead of -fpic), as desired in PR#18326.
  * configure now checks conversion of datetimes between POSIXlt and
    POSIXct around year 2020.  Failure (which has been seen on
    platforms missing tzdata) is fatal.
  * If configure option --with-valgrind-instrumentation is given
    value 1 or 2, option --with-system-valgrind-headers is now the
    default and ignored (with a warning).  It is highly recommended
    that the system headers are installed alongside valgrind: they
    are part of its packaging on some Linux distributions and
    packaged separately (e.g. in the valgrind-devel RPM) on others.
    configure will give a warning if they are not found.
    The system headers will be required in a future release of R to
    build with valgrind instrumentation.
  * libcurl 8.x is now accepted by configure: despite a change in
    major version number it changes neither API nor ABI.
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools43, an update of the Rtools42 toolchain.  It is
    based on gcc 12 and newer versions of MinGW-W64, binutils and
    libraries.  At this time R-devel can still be built using
    Rtools42 without changes, but when R-devel is installed via the
    installer, it will by default look for Rtools43.
  * Old make targets rsync-extsoft and 32-bit ones that are no longer
    needed have been removed.
  * Default builds (including for packages) no longer select C99.
    Thus the C standard used is the default for the compiler, which
    for the toolchain in Rtools43 is C17.  (This is consistent with
    Unix builds.)
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++17 where
    available (which it is on all currently checked platforms): if
    not C++14 or C++11 is used if available otherwise C++ is not
    supported.
  * USE_FC_LEN_T is the default: this uses the correct
    (compiler-dependent) prototypes for Fortran BLAS/LAPACK routines
    called from C/C++, and requires adjustment of many such calls -
    see 'Writing R Extensions' SS6.6.1.
  * There is initial support for C++23 as several compilers are now
    supporting -std=c++23 or -std=c++2b or similar.  As for C++20,
    there no additional configure checks for C++23 features beyond a
    check that the compiler reports a __cplusplus value greater than
    that in the C++20 standard.  C++ feature tests should be used.
  * There is support for a package to indicate the version of the C
    standard which should be used to compile it, and for the
    installing user to specify this.  In most cases R defaults to the
    C compiler's default standard which is C17 (a `bug-fix' of C11) -
    earlier versions of R or compilers may have defaulted to C99.
    Current options are:
    USE_C17 Use a standard that is at most C17.  The intention is to
    allow legacy packages to still be installed when later C
    standards become the default, including packages using new
    keywords as identifiers or with K&amp;R-style function
    declarations.  This will use C17 if available, falling back
    to C11.
    USE_C90 Use the C90 (aka C89) standard.  (As that standard did
    not require compilers to identify that version, all we can
    verify is that the compiler does not claim to be using a
    later standard.  It may accept C99 features - for example
    clang accepts // to make comments.)
    USE_C99 Use the C99 standard. This should be rarely needed - it
    avoids the few new features of C11/C17 which can be useful if
    a package assumes them if C17 is specified and they are not
    implemented.
    USE_C23 Use C23 (or in future, later).  Compiler/library support
    for C23 is still being implemented, but LLVM clang from
    15.0.0 and the upcoming GCC 13 have quite extensive support.
    These can be specified as part of the SystemRequirements field in
    the package's DESCRIPTION file or _via_ options --use-C17 and so
    on of R CMD INSTALL and R CMD SHLIB.
    For further details see "Writing R Extensions" SS1.2.5.
  * (Windows) A src/Makefile.ucrt or src/Makefile.win file is now
    included after R_HOME/etcR_ARCH/Makeconf and so no longer needs
    to include that file itself.  Installation of a package with such
    a file now uses a site Makevars file in the same way as a package
    with a src/Makevars.win file would.
  * configure is now passed crucial variables such as CC and CFLAGS
    in its environment, as many packages were not setting them (as
    documented in 'Writing R Extensions' SS1.2).
    This has most effect where configure is used to compile parts of
    the package - most often by cmake or libtool which obfuscate the
    actual compile commands used.
    Also used for configure.win and configure.ucrt on Windows.
  FORTRAN FLAGS:
  * The flag -fno-optimize-sibling-calls is no longer forced for
    gfortran 7 and later.  It should no longer be needed now using
    'hidden' character-length arguments when calling BLAS/LAPACK
    routines from C/C++ is the default even for packages.  (Unless
    perhaps packages call Fortran code from C/C++ without using R's
    headers and without allowing for these arguments.)
  C-LEVEL FACILITIES:
  * The deprecated S-compatibility macros DOUBLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * The deprecated legacy typedefs of Sint and Sfloat in header R.h
    are no longer defined, and that header no longer includes header
    limits.h from C nor climits from C++.
  * New macro CAD5R() is provided in Rinternals.h and used in a few
    places in the R sources.
  * ALTREP now supports VECSXP vectors. Contributed by Gabor Csardi
    in PR#17620.
  * The Rcomplex definition (in header R_ext/Complex.h) has been
    extended to prevent possible mis-compilation when interfacing
    with Fortran (PR#18430).  The new definition causes compiler
    warnings with static initializers such as {1, 2}, which can be
    changed to {.r=1, .i=2}.
    Using the new definition from C++ depends on compiler extensions
    supporting C features that have not been incorporated into the
    C++ standards but are available in g++ and clang++: this may
    result in C++ compiler warnings but these have been worked around
    for recent versions of common compilers (GCC, Apple/LLVM clang,
    Intel).
    It is intended to change the inclusion of header R_ext/Complex.h
    by other R headers, so C/C++ code files which make use of
    Rcomplex should include that header explicitly.
  UTILITIES:
  * R CMD check does more checking of package .Rd files, warning
    about invalid email addresses and (some) invalid URIs and noting
    empty \item labels in description lists.
  * R CMD check now also reports problems when reading package news
    in md (file NEWS.md) and (optionally) plain text (file NEWS)
    formats.
  * _R_CHECK_TIMINGS_ defaults to a value from the environment even
    for R CMD check --as-cran; this allows for exceptionally fast or
    slow platforms.
    It now applies to checking PDF and HTML versions of the manuals,
    and 'checking CRAN incoming feasibility'.
  * R CMD check can optionally (but included in --as-cran) check
    whether HTML math rendering _via_ KaTeX works for the package .Rd
    files.
  * Non-interactive debugger invocations can be trapped by setting
    the environment variable _R_CHECK_BROWSER_NONINTERACTIVE_ to a
    true value.  This is enabled by R CMD check --as-cran to detect
    the use of leftover browser() statements in the package.
  * The use of sprintf and vsprintf from C/C++ has been deprecated in
    macOS 13 and is a known security risk.  R CMD check now reports
    (on all platforms) if their use is found in compiled code:
    replace by snprintf or vsnprintf respectively. [*NB:* whether
    such calls get compiled into the package is platform-dependent.]
  * Where recorded at installation, R CMD check reports the C and
    Fortran compilers used to build R.
    It reports the OS in use (if known, as given by osVersion) as
    well as that R was built for.
    It notes if a C++ standard was specified which is older than the
    current default: many packages have used C++11 to mean 'not
    C++98' - as C++11 is the minimum supported since R 4.0.0, that
    specification can probably be removed.
  * R CMD INSTALL reports the compilers (and on macOS, the SDK) used,
    and this is copied to the output of R CMD check.
    Where a C++ standard is specified, it is reported.
  * R CMD check's 'checking compilation flags in Makevars' has been
    relaxed to accept the use of flags such as -std=f2008 in
    PKG_FFLAGS.
  * tools::buildVignettes() has a new argument skip, which is used by
    R CMD check to skip (and note) vignettes with unavailable
    \VignetteDepends (PR#18318).
  * New generic .AtNames() added to enable class-specific completions
    after @. The formerly internal function findMatches() is now
    exported, mainly for use in methods for .DollarNames() and
    .AtNames().
  DEPRECATED AND DEFUNCT:
  * default.stringsAsFactors() is defunct.
  * Calling as.data.frame.&lt;class&gt;() directly (for 12 atomic classes)
    is going to be formally deprecated, currently activated by
    setting the environment variable
    _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ to non-empty, which also
    happens in R CMD check --as-cran.
  BUG FIXES:
  * Hashed environments with sizes less than 5 can now grow.
    (Reported to R-devel by Duncan Garmonsway.)
  * as.character(&lt;Rd&gt;, deparse = TRUE) failed to re-escape curly
    braces in LaTeX-like text.  (Reported by Hadley Wickham in
    PR#18324.)
  * library() now passes its lib.loc argument when requiring Depends
    packages; reported (with fix) in PR#18331 by Mikael Jagan.
  * R CMD Stangle: improved message about 'Output' files.
  * head(x, n) and tail(x, n) now signal an error if n is not
    numeric, instead of incidentally "working" sometimes returning
    all of x.  Reported and discussed by Colin Fay, in PR#18357.
  * The "lm" method for summary() now gives the correct F-statistic
    when the model contains an offset.  Reported in PR#18008.
  * C() and `contrasts&lt;-`() now preserve factor level names when
    given a function object (as opposed a function name which did
    preserve names). Reported in PR#17616.
  * c(a = 1, 2)[[]] no longer matches 2 but rather signals a
    _classed_ error.  Reported and analysed by Davis Vaughan in
    PR#18367, a duplicate of PR#18004, by Jan Meis et al.  For
    consistency, NULL[[]] is also erroneous now.  x[[]] &lt;- v gives an
    error of the same class "MissingSubscriptError".
  * The relist() function of utils now supports NULL elements in the
    skeleton (PR#15854).
  * ordered(levels = *) (missing x) now works analogously to factor(,
    ordered=TRUE); reported (with fix) by Achim Zeileis in PR#18389.
  * User-defined Rd macro definitions can now span multiple lines,
    thanks to a patch from Duncan Murdoch. Previously, the Rd parser
    silently ignored everything after the first line.
  * Plain-text help (tools::Rd2txt()) now preserves an initial blank
    line for text following description list items.
  * tools::Rd2HTML() and tools::Rd2latex() no longer split \arguments
    and \value lists at Rd comments.
  * tools::Rd2latex() now correctly handles optional text outside
    \items of argument lists as well as bracketed text at the
    beginning of sections, e.g., \value{[NULL]}.
  * as.character(&lt;POSIXt&gt;) now behaves more in line with the methods
    for atomic vectors such as numbers, and is no longer influenced
    by options().  Ditto for as.character(&lt;Date&gt;).  The
    as.character() method gets arguments digits and OutDec with
    defaults _not_ depending on options().  Use of as.character(*,
    format = .) now warns.
  * Similarly, the as.character.hexmode() and *.octmode() methods
    also behave as good citizen methods and back compatibility option
    keepStr = TRUE.
  * The as.POSIXlt(&lt;POSIXlt&gt;) and as.POSIXct(&lt;POSIXct&gt;) default
    methods now do obey their tz argument, also in this case.
  * as.POSIXlt(&lt;Date&gt;) now does apply a tz (time zone) argument, as
    does as.POSIXct(); partly suggested by Roland Fuss on the R-devel
    mailing list.
  * as.Date.POSIXlt(x) now also works when the list components are of
    unequal length, aka "partially filled" or "ragged".
  * expand.model.frame() looked up variables in the wrong environment
    when applied to models fitted without data.  Reported in
    PR#18414.
  * time() now (also) uses the ts.eps = getOption("ts.eps") argument
    and thus by default rounds values very close to the start (or
    end) of a year.  Based on a proposal by Andre"i V. Kostyrka on
    R-help.
  * Printing of a factanal() result with just one factor and sort =
    TRUE now works regularly, fixing PR#17863 by Timothy Bates,
    thanks to the 'R Contributors' working group.
  * Printing 0-length objects of class "factor", "roman", "hexmode",
    "octmode", "person", "bibentry", or "citation" now prints
    something better, one of which fixes PR#18422, reported by
    Benjamin Feakins.
  * Sys.timezone() queries timedatectl only if systemd is loaded;
    addressing a report by Jan Gorecki in PR#17421.
  * The formula method of cor.test() had scoping problems when
    environment(formula) was not the calling environment; reported
    with a patch proposal by Mao Kobayashi in PR#18439.
  * attach() of an environment with active bindings now preserves the
    active bindings.  Reported by Kevin Ushey in PR#18425.
  * BLAS detection now works also with system-provided libraries not
    available as regular files.  This fixes detection of the
    Accelerate framework on macOS since Big Sur.  Reported by David
    Novgorodsky.
  * download.file() gives a helpful error message in case of an
    invalid download.file.method option, thanks to Colin Fay's report
    in PR#18455.
  * Sporadic crashes of Rterm when using completion have been fixed.
  * Rprof() is now more reliable.  A livelock in thread
    initialization with too short sampling interval has been fixed on
    macOS.  A deadlock in using the C runtime has been fixed on
    Windows.  A potential deadlock has been prevented on Unix.
  * Cursor placement in Rgui now works even after a fixed-width font
    is selected.
  * Mandatory options (options()) are now set on startup so that
    saving and restoring them always works (PR#18372).
  * Package installation, R CMD INSTALL or install.packages(*), now
    parses each of the &lt;pkg&gt;/R/*.R files individually instead of
    first concatenating and then parse()ing the large resulting file.
    This allows parser or syntax errors to be diagnosed with correct
    file names and line numbers, thanks to Simon Dedman's report and
    Bill Dunlap's patch in PR#17859.
    This _does_ require syntactically self contained R source files
    now, fixing another inadvertent bug.
  * predict.lm(&lt;model with offset&gt;) now finds the offset in the
    correct environment, thanks to Andr'e Gillibert's report and patch
    in PR#18456.
  * getInitial(&lt;formula&gt;) now finds the selfStart model in the
    correct environment.  (Reported by Ivan Krylov in PR#18368.)
  * Fix for possible segfault when using recently-added graphics
    features, such as gradients, clipping paths, masks, and groups
    with pdf(file=NULL).
  * class(m) &lt;- class(m) no longer changes a matrix m by adding a
    class _attribute_.
  * packageDate(pkg) now only warns once if there is no pkg.
  * When ts() creates a multivariate time series, "mts", it also
    inherits from "array" now, and is.mts() is documented _and_
    stricter.
  * Rd2txt() now preserves line breaks of \verb Rd content and from
    duplicated \cr.  The former also fixes the rendering of verbatim
    output from Rd \Sexpr in plain-text help.
  * uniroot(f, interval) should no longer wrongly converge _outside_
    the interval in some cases where abs(f(x)) == Inf for an x at the
    interval boundary, thanks to posts by Ben Bolker and Serguei
    Sokol on R-devel.
  * Vectorized alpha handling in palette functions such as in gray(),
    rainbow(), or hcl.colors() works correctly now, thanks to Achim
    Zeileis' report and patch in PR#18476.
  * Formatting and print()ing of bibentry objects has dropped the
    deprecated citation.bibtex.max argument, such that the bibtex
    argument's default for print.bibentry() depends directly on the
    citation.bibtex.max option, whereas in format.bibentry() the
    option no longer applies.
  * Attempting to use a character string naming a foreign function
    entry point in a foreign function call in a package will now
    signal an error if the packages has called R_forceSymbols to
    specify that symbols must be used.
  * An error in table() could permanently set options(warn=2)
    promoting all subsequent warnings to errors.
  * The sigma() function gave misleading results for binary GLMs.  A
    new method for objects of class "glm" returns the square root of
    the estimate of the dispersion parameter using the same
    calculation as summary.glm().
  * bs() and ns() in the (typical) case of automatic knot
    construction, when some of the supposedly inner knots coincide
    with boundary knots, now moves them inside (with a warning),
    building on PR#18442 by Ben Bolker.
  * R CMD on Windows now skips the site profile with --no-site-file
    and --vanilla even when R_PROFILE is set (PR#18512, from Kevin
    Ushey).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1686916800">- CHANGES IN R 4.3.1:
  C-LEVEL FACILITIES:
  * The C-level API version of R's integrate(), Rdqags() in Applic.h,
    now returns the correct number of integrand evaluations neval,
    fixing PR#18515 reported and diagnosed by Stephen Wade.
  * The C prototypes for LAPACK calls dspgv and dtptrs in
    R_exts/Lapack.h had one too many and one too few character length
    arguments - but this has not caused any known issues. To get the
    corrected prototypes, include
    [#]include &lt;Rconfig.h&gt; // for PR18534fixed
    [#]ifdef PR18534fixed
    [#] define usePR18534fix 1
    [#]endif
    [#]include &lt;R_exts/Lapack.h&gt;
    in your C/C++ code (PR#18534).
  INSTALLATION:
  * Many of the checks of esoteric Internet operations and those
    using unreliable external sites have been moved to a new target
    that is not run by default and primarily intended for the core
    developers.  To run them use
    cd tests; make test-Internet-dev
  BUG FIXES:
  * .S3methods(), typically called from methods(), again marks
    methods from package base as visible.
    Also, the visibility of non-base methods is again determined by
    the method's presence in search().
  * tools::Rdiff() is now more robust against invalid strings, fixing
    installation tests on Windows without Rtools installed
    (PR#18530).
  * Fix (new) bug in hcl.colors(2, *), by Achim Zeileis (PR#18523).
  * head(., &lt;illegal&gt;) and tail(..) now produce more useful "Error in
    ...." error messages, fixing PR#18362.
  * Package code syntax on Windows is checked in UTF-8 when UTF-8 is
    the native encoding.
  * na.contiguous(x) now also returns the first run, when it is at
    the beginning and there is a later one of the same length;
    reported to R-devel, including a fix, by Georgi Boshnakov.
    Further, by default, it modifies only an existing attr(*,"tsp")
    but otherwise no longer sets one.
  * chol(&lt;not pos.def&gt;, pivot = &lt;T|F&gt;) now gives a correct error or
    warning message (depending on pivot), thanks to Mikael Jagan's
    (PR#18541).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1699012800">- CHANGES IN R 4.3.2:
  NEW FEATURES:
  * The default initialization of the "repos" option from the
    repositories file at startup can be skipped by setting
    environment variable R_REPOSITORIES to NULL such that
    getOption("repos") is empty if not set elsewhere.
  * qr.X() is now an implicit S4 generic in methods.
  * iconv(to = "ASCII//TRANSLIT") is emulated using substitution on
    platforms which do not support it (notably Alpine Linux).  This
    should give a human-readable conversion in ASCII on all platforms
    (rather than NA_character_).
  * trans3d() gains options continuous and verbose addressing the
    problem of possible "wrap around" when projecting too long
    curves, as reported by Achim Zeileis in PR#18537.
  * tools::showNonASCII() has been rewritten to work better on macOS
    14 (which has a changed implementation of iconv()).
  * tiff(type = "quartz") (the default on macOS) now warns if
    compression is specified: it continues to be ignored.
  INSTALLATION on a UNIX-ALIKE:
  * There is some support for building with Intel's LLVM-based
    compilers on x86_64 Linux, such as (C) icx, (C++) ipcx and
    (Fortran) ifx from oneAPI 2023.x.y.
  * There is support for using LLVM's flang-new as the Fortran
    compiler from LLVM 16.0.x (preferably 17.0.0 or later).
  UTILITIES:
  * R CMD check reports the use of the Fortran 90 random number
    generator RANDOM_NUMBER() and the subroutines to initialize it.
    'Writing R Extensions' has example code to use R's RNGs from
    Fortran.
  BUG FIXES:
  * substr(x, n, L) &lt;- cc now works (more) correctly for multibyte
    UTF-8 strings x when L &gt; nchar(x), thanks to a report and patch
    by 'Architect 95'.
  * contrib.url(character()) now returns 0-length character() as
    documented, which also avoids spurious warnings from
    available.packages() et al. in the edge case of an empty vector
    of repository URLs.
  * readChar(., 4e8) no longer fails, thanks to Kodi Arfer's report
    (PR#18557).
  * lapply(&lt;list&gt;, as.data.frame) no longer warns falsely for some
    base vector components.
  * Communication between parent and child processes in the multicore
    part of parallel could fail on platforms that do not support an
    arbitrarily large payload in system functions read()/write() on
    pipes (seen on macOS where a restriction to INT_MAX bytes is
    documented, without doing a partial read unlike Linux). The
    payload is now split into 1Gb chunks to avoid that problem.
    (PR#18571)
  * qqplot(x,y, conf.level=.) gives better confidence bounds when
    length(x) != length(y), thanks to Alexander Ploner's report and
    patch proposal (PR#18557).
  * norm(&lt;0-length&gt;, "2") now gives zero instead of an error, as all
    the other norm types, thanks to Mikael Jagan's PR#18542.
  * Build-stage Rd macros \packageAuthor and \packageMaintainer now
    process Authors@R, fixing NA results when the package DESCRIPTION
    omits Author and Maintainer fields.
  * Formatting and printing complex numbers could give things like
    0.1683-0i because of rounding error: -0i is now replaced by +0i.
  * postscript() refused to accept a title comment containing the
    letter "W" (PR#18599).
  * isoreg(c(1,Inf)) signals an error instead of segfaulting, fixing
    PR#18603.
  * tiff(type = "Xlib") was only outputting the last page of
    multi-page plots.
  * tools::latexToUtf8() again knows about \~{n} and other letters
    with tilde, fixing a regression in R 4.3.0, and about \^{i} as an
    alternative to \^{\i} (similarly with other accents).
    Furthermore, LaTeX codes for accented I letters are now correctly
    converted, also fixing related mistakes in
    tools::encoded_text_to_latex().
  * tar(*, tar = "internal") no longer creates out-of-spec tar files
    in the very rare case of user or group names longer than 32
    bytes, fixing PR#17871 with thanks to Ivan Krylov.
  * When using the "internal" timezone datetime code, adding a
    fraction of a second no longer adds one second, fixing PR#16856
    from a patch by Ivan Krylov.
  * tools::checkRd() no longer produces spurious notes about
    "unnecessary braces" from multi-line Rd results of \Sexpr macros.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1709208000">- CHANGES IN R 4.3.3:
  NEW FEATURES:
  * iconv() now fixes up variant encoding names such as "utf8"
    case-insensitively.
  DEPRECATED AND DEFUNCT:
  * The legacy encoding = "MacRoman" is deprecated in pdf() and
    postscript(): support was incomplete in earlier versions of R.
  BUG FIXES:
  * Arguments are now properly forwarded to methods on S4 generics
    with ... in the middle of their formal arguments. This was broken
    for the case when a method introduced an argument but did not
    include ... in its own formals. Thanks to Herv'e Pag`es for the
    report PR#18538.
  * Some invalid file arguments to pictex(), postscript() and xfig()
    opened a file called NA rather than throw an error.  These
    included postscript(NULL) (which some people expected to work
    like pdf(NULL)).
  * Passing filename = NA to svg(), cairo_pdf(), cairo_ps() or the
    Cairo-based bitmap devices opened a file called NA: it now throws
    an error.
  * quartz(file = NA) opened a file called NA, including when used as
    a Quartz-based bitmap device.  It now gives an error.
  * rank(&lt;long vector&gt;) now works, fixing PR#18617, thanks to Ilia
    Kats.
  * seq.int() did not adequately check its length.out argument.
  * match(&lt;POSIXct&gt;, .) is correct again for differing time zones,
    ditto for "POSIXlt", fixing PR#18618 reported by Bastian Klein.
  * drop.terms(*, dropx = &lt;0-length&gt;) now works, fixing PR#18563 as
    proposed by Mikael Jagan.
  * drop.terms(*) keeps + offset(.) terms when it should, PR#18565,
    and drop.terms() no longer makes up a response, PR#18566, fixing
    both bugs thanks to Mikael Jagan.
  * getS3method("t", "test") no longer finds the t.test() function,
    fixing PR#18627.
  * pdf() and postscript() support for the documented Adobe encodings
    "Greek" and "Cyrilllic" was missing (although the corresponding
    Windows' codepages could be used).
  * Computations of glyph metric information for pdf() and
    postscript() did not take into account that transliteration could
    replace one character by two or more (only seen on macOS 14) and
    typically warned that the information was not known.
  * rank(x) no longer overflows during integer addition, when
    computing rank average for largish but not-yet long vector x,
    fixing PR#18630, thanks to Ilia Kats.
  * list.files() on Windows now returns also files with names longer
    that 260 bytes (the Windows limit is 260 characters).
    Previously, some file names particularly with 'East Asian'
    characters were omitted.
  * cov2cor(&lt;0 x 0&gt;) now works, fixing PR#18423 thanks to Mikael
    Jagan and Elin Waring.
  * cov2cor(&lt;negative diagonal&gt;) and similar now give one warning
    instead of two, with better wording, fixing PR#18424 thanks to
    Mikael Jagan.
  * tools:: startDynamicHelp() now ensures port is in proper range,
    fixing PR#18645.
  * pbeta(x, a,b) is correct now for x=0 or 1 in the boundary cases
    where a or b or both are 0, fixing PR#18672 thanks to Michael
    Fay.
  * pmatch(x, table) for large table, also called for data frame row
    selection, dfrm[nm, ], is now interruptible, fixing PR#18656.
  * predict(&lt;rank-deficient lm&gt;, newdata=*) fix computing of nbasis,
    see Russ Lenth's comment 29 in PR#16158.
  * Added a work-around for a bug in macOS 14.3.1 and higher which
    prevents R plots in the Quartz Cocoa device from updating on
    screen.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1713960000">- CHANGES IN R 4.4.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Startup banners, R --version, sessionInfo() and R CMD check no
    longer report (64-bit) as part of the platform as this is almost
    universal - the increasingly rare 32-bit platforms will still
    report (32-bit).
    On Windows, ditto for window titles.
  * is.atomic(NULL) now returns FALSE, as NULL is not an atomic
    vector.  Strict back-compatibility would replace is.atomic(foo)
    by (is.null(foo) || is.atomic(foo)) but should happen only
    sparingly.
  NEW FEATURES:
  * The confint() methods for "glm" and "nls" objects have been
    copied to the stats package.  Previously, they were stubs which
    called versions in package MASS. The MASS namespace is no longer
    loaded if you invoke (say) confint(glmfit).  Further, the "glm"
    method for profile() and the plot() and pairs() methods for class
    "profile" have been copied from MASS to stats.  (profile.nls()
    and plot.profile.nls() were already in stats.)
  * The confint() and profile methods for "glm" objects have gained a
    possibility to do profiling based on the Rao Score statistic in
    addition to the default Likelihood Ratio. This is controlled by a
    new test = argument.
  * The pairs() method for "profile" objects has been extended with a
    which = argument to allow plotting only a subset of the
    parameters.
  * The "glm" method for anova() computes test statistics and
    p-values by default, using a chi-squared test or an F test
    depending on whether the dispersion is fixed or free.  Test
    statistics can be suppressed by giving argument test a false
    logical value.
  * In setRepositories() the repositories can be set using their
    names via name = instead of index ind =.
  * methods() and .S3methods() gain a all.names option for the (rare)
    case where functions starting with a . should be included.
  * Serializations can now be interrupted (e.g., by Ctrl-C on a
    Unix-alike) if they take too long, e.g., from save.image(),
    thanks to suggestions by Ivan Krylov and others on R-devel.
  * New startup option --max-connections to set the maximum number of
    simultaneous connections for the session.  Defaults to 128 as
    before: allowed values up to 4096 (but resource limits may in
    practice restrict to smaller values).
  * R on Windows (since Windows 10 2004) now uses the new Segment
    Heap allocator. This may improve performance of some
    memory-intensive applications.
  * When R packages are built, typically by R CMD build &lt;pkg&gt;, the
    new --user=&lt;build_user&gt; option overrides the (internally
    determined) user name, currently Sys.info()["user"] or LOGNAME.
    This is a (modified) fulfillment of Will Landau's suggestion in
    PR#17530.
  * tools::testInstalledBasic() gets new optional arguments outDir
    and testSrcdir, e.g., allowing to use it in a &lt;builddir&gt; !=
    &lt;srcdir&gt; setup, and in standard "binary" Windows installation
  * if* a source tests/ folder is present.
  * range(&lt;DT_with_Inf&gt;, finite = TRUE) now work for objects of class
    "Date", "POSIXct", and "POSIXlt" with infinite entries,
    analogously to range.default(), as proposed by Davis Vaughan on
    R-devel.  Other range()-methods can make use of new function
    .rangeNum().
  * New .internalGenerics object complementing .S3PrimitiveGenerics,
    for documentation and low-level book-keeping.
  * grid() now invisibly returns the x- and y- coordinates at which
    the grid-lines were drawn.
  * norm(., type) now also works for complex matrices.
  * kappa(., exact = TRUE, norm = *) now works for all norms and also
    for complex matrices.  In symmetric / triangular cases, the new
    argument uplo = "U" | "L" allows the upper or lower triangular
    part to be specified.
  * memDecompress(type = "unknown") recognizes compression in the
    default 'zlib' format as used by memCompress(type = "gzip").
  * memCompress() and memDecompress() will use the libdeflate library
    (&lt;https://github.com/ebiggers/libdeflate&gt;) if installed.  This
    uses the same type of compression for type = "gzip" but is 1.5-2x
    faster than the system libz library on some common platforms: the
    speed-up may depend on the library version.
  * diff() for objects of class "Date", "POSIXct", and "POSIXlt"
    accepts a units argument passed via ....
  * Dynamic help now does a much better job of rendering package
    DESCRIPTION metadata.
  * Rprof() gains an event argument and support for elapsed (real)
    time profiling on Unix (PR#18076).
  * filled.contour() gains a key.border argument.
  * tools::update_pkg_po() gets arguments pot_make and mo_make for
    _not_ re-making the corresponding files, and additionally a
    verbose argument.
  * Hexadecimal string colour specifications are now accepted in
    short form, so, for example, we can use "#123", which is
    equivalent to "#112233".
    Thanks to MikeFC for the original idea and Ella Kaye, Malcolm
    Barrett, George Stagg, and Hanne Oberman for the patch.
  * Plain-text help shows \var markup by angle brackets.
  * The new experimental primitive function declare() is intended to
    eventually allow information about R code to be communicated to
    the interpreter, compiler, and code analysis tools. The syntax
    for declarations is still being developed.
  * Functions psmirnov(), qsmirnov() and rsmirnov() in package stats
    have had argument two.sided renamed to alternative, to take into
    account that the permutation distributions of the one-sided
    statistics can be different in the case of ties.  Consequence of
    PR#18582.
  * sort() is now an implicit S4 generic in methods.
  * Formatting and printing, format(z), print(z), of complex vectors
    z no longer zap relatively small real or imaginary parts to zero,
    fixing PR#16752.  This is an API change, as it was documented
    previously to round real and imaginary parts together on purpose,
    producing nicer looking output.  As mentioned, e.g. in the PR,
    this change is compatible with many other "R-like" programming
    environments.
    We have simplified the internal code and now basically format the
    real and imaginary parts independently of each other.
  * New experimental functions Tailcall() and Exec() to support
    writing stack-space-efficient recursive functions.
  * Where characters are attempted to be plotted by pdf(),
    postscript() and xfig() which are not in the selected 8-bit
    character set (most often Latin-1) and the R session is using a
    UTF-8 locale, the warning messages will show the UTF-8 character
    rather than its bytes and one dot will be substituted per
    character rather than per byte.  (Platforms whose iconv() does
    transliteration silently plot the transliteration.)
    In a UTF-8 locale some transliterations are now done with a
    warning (e.g., dashes and Unicode minus to hyphen, ligatures are
    expanded, permille (‰) is replaced by o/oo), although the OS may
    have got there first.  These are warnings as they will continue
    to be replaced by dots in earlier versions of R.
  * The matrix multiplication functions crossprod() and tcrossprod()
    are now also primitive and S3 generic, as %*% had become in R
    4.3.0.
  * source() and example() have a new optional argument catch.aborts
    which allows continued evaluation of the R code after an error.
  * The non-Quartz tiff() devices allow additional types of
    compression if supported by the platform's libtiff library.
  * The list of base and recommended package names is now provided by
    tools::standard_package_names().
  * cairo_pdf() and cairo_ps() default to onefile = TRUE to closer
    match pdf() and postscript().
  * New option catch.script.errors provides a documented way to catch
    errors and then continue in non-interactive use.
  * L %||% R newly in base is an expressive idiom for the phrases
    if(!is.null(L)) L else R or if(is.null(L)) R else L.
  * The return value from warnings() now always inherits from
    "warnings" as documented, now also in the case of no warnings
    where it previously returned NULL.
  * as.complex("1i") now returns 0 + 1i instead of NA with a warning.
  * z &lt;- c(NA, 1i) now keeps the imaginary part Im(z[1]) == 0, no
    longer coercing to NA_complex_.  Similarly, cumsum(z) correctly
    sums real and imaginary parts separately, i.e., without
    "crosstalk" in case of NAs.
  * On Alpine Linux iconv() now maps "latin2", "latin-2", "latin9"
    and "latin-9" to encoding names the OS knows about
    (case-insensitively).
  * iconv(sub = "Unicode") now always zero-pads to four (hex) digits,
    rather than to 4 or 8.  (This seems to have become the convention
    once Unicode restricted the number of Unicode points to 2^21 - 1
    and so will never need more than 6 digits.)
  * NCOL(NULL) now returns 0 instead of 1, for consistency with
    cbind().
  * The information for the Euro glyph missing from the Adobe .afm
    files for the Courier, Helvetica and Times families has been
    copied from their URW equivalents - this will improve vertical
    centring in the pdf() and postscript() devices.
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.12.0.  The changes are almost entirely cosmetic.
  * The included LAPACK sources have been updated to version 3.12.0
    and some further double-complex routines added.
  * There are new font families for the 2014--5 URW 2.0 fonts (see
    ?pdf) which are included in recent versions of Ghostscript.
    These have font widths for most Greek glyphs and a few others
    which were missing from the original versions (whose font
    families remain available for reproducibility, although
    Ghostscript-based viewers will render using the 2.0 versions).
  * Improve the large-n efficiency of as.matrix(&lt;dist&gt;), thanks an R
    contributors effort, notably by Tim Taylor and Heather Turner,
    see PR#18660.
  * The default and numeric methods of all.equal() get a check.class
    option.
  * zapsmall() gets new optional arguments, function mFUN and min.d,
    for extra flexibility; fulfills a wish in PR#18199.  Also, it is
    now an implicit S4 generic in package methods.
  * The Rd filter for aspell() gains an ignore argument.
  * New generic function sort_by(), primarily useful for the
    data.frame method which can be used to sort rows of a data frame
    by one or more columns.
  * The icence headers for the RPC code in src/extra/xdr have been
    updated to use the GPL-compatible licence published by Oracle
    America in 2010.
  * New function pkg2HTML() in tools to create single-page HTML
    reference manuals for R packages.
  * The byte code evaluator now uses less C stack space for recursive
    calls to byte-compiled functions. It also makes more of an effort
    to avoid allocations for scalar return values.
  * New completion option backtick (disabled by default) allows
    non-syntactic completions to be wrapped in backquotes. This is
    currently only useful for Jupyter notebooks via the IRkernel
    package, and may cause problems for other backends.
  INSTALLATION:
  * The parser has been updated to work with bison 3.8.2, which is
    now used for the pre-generated parsers in gram.c, file.c, and
    gramRd.c. A few parser error messages have changed, which may
    affect code that relies on exact messages.
  INSTALLATION on a UNIX-ALIKE:
  * System valgrind headers are now required to use configure option
  - -with-valgrind-instrumentation with value 1 or 2.
  * configure will warn if it encounters a 32-bit build, as that is
    nowadays almost untested.
  * Environment variable R_SYSTEM_ABI is no longer used and so no
    longer recorded in etc/Renviron (it was not on Windows and was
    only ever used when preparing package tools).
  * If the libdeflate library and headers are available, libdeflate
    rather than libz is used to (de)compress R objects in lazy-load
    databases.  Typically tasks spend up to 5% of their time on such
    operations, although creating lazy-data databases is one of the
    exceptions.
    This can be suppressed if the library is available by the
    configure option --without-libdeflate-compression.
  * configure option --enable-lto=check has not worked reliably since
    2019 and has been removed.
  * The minimum autoconf requirement for a maintainer build has been
    increased to autoconf 2.71.
    It is intended to increase this to 2.72 for R 4.5.0: the
    distributed configure file was generated using 2.72.
  * The minimum version requirement for an external LAPACK has been
    reduced to 3.9.0.
  * No default C++ compiler is set if no C++17 compiler is detected:
    there is no longer an automatic fallback to C++14 or C++11.
    Compilers from the last five years should have sufficient
    support: for others macros CXX and CXXSTD can be set in file
    config.site to provide a fallback if needed.
    The Objective-C++ compiler now by default uses the standard
    selected by R for C++ (currently C++17) rather than the default
    standard for the C++ compiler (which on macOS is still C++98).
  INSTALLATION on macOS:
  * A new configure option --with-newAccelerate makes use of Apple's
    'new' BLAS / LAPACK interfaces in their Accelerate framework.
    Those interfaces are only available in macOS 13.3 or later, and
    building requires SDK 13.3 or later (from the Command Line Tools
    or Xcode 14.3 or later).
    By default the option uses new Accelerate for BLAS calls: to also
    use it for LAPACK use option --with-newAccelerate=lapack.  The
    later interfaces provide LAPACK 3.9.1 rather than 3.2.1: 3.9.1 is
    from 2021-04 and does not include the improved algorithms
    introduced in LAPACK 3.10.0 (including for BLAS calls).
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools44, an update of the Rtools43 toolchain.  It is
    based on GCC 13 and newer versions of MinGW-W64, binutils and
    libraries (targeting 64-bit Intel CPUs).  R-devel can no longer
    be built using Rtools43 without changes.
  * Rtools44 has experimental support for 64-bit ARM (aarch64) CPUs
    _via_ the LLVM 17 toolchain using lld, clang/flang-new and
    libc++.
  UTILITIES:
  * R CMD check notes when S4-style exports are used without
    declaring a strong dependence on package methods.
  * tools::checkRd() (used by R CMD check) detects more problems with
    \Sexpr-based dynamic content, including bad nesting of \Sexprs
    and invalid arguments.
  * tools::checkRd() now reports Rd titles and section names ending
    in a period; this is ignored by R CMD check unless environment
    variable _R_CHECK_RD_CHECKRD_MINLEVEL_ is set to -5 or smaller.
  * R CMD check now notes Rd files without an \alias, as long
    documented in 'Writing R Extensions' §1.3.1.  The check for a
    missing \description has been moved from tools::checkRd() to
    tools::checkRdContents().
  * R CMD check now visits inst/NEWS.Rd and OS-specific man
    subdirectories when checking Rd files.
  * tools::checkDocFiles() and tools::checkRdContents() now also
    check internal Rd files by default, but "specially" (ignoring
    missing documentation of arguments).
  * R CMD Rdiff gets option --useEx.
  * R CMD check now warns on non-portable uses of Fortran KIND such
    as INTEGER(KIND=4) and REAL(KIND=8).
    To see the failing lines set environment variable
    _R_CHECK_FORTRAN_KIND_DETAILS_ to a true value.
  * When checking Rd files, R CMD check now notes some of the "lost
    braces" that tools::checkRd() finds.  Typical problems are Rd
    macros missing the initial backslash (e.g., code{...}), in-text
    set notation (e.g., {1, 2}, where the braces need escaping), and
    \itemize lists with \describe-style entries of the form
    \item{label}{description}.
  * R CMD INSTALL (and hence check) will compile C++ code with
  - DR_NO_REMAP if environment variable _R_CXX_USE_NO_REMAP_ is set
    to a true value.  It is planned that this will in future become
    the default for compiling C++.
  * The new built-in Rd macro \dontdiff{} can be used to mark example
    code whose output should be ignored when comparing check output
    to reference output (tests/Examples/&lt;pkg&gt;-Ex.Rout.save).  The
    \dontdiff tag, like \donttest, is _not_ shown on the rendered
    help page, so provides a clean alternative to ##
    IGNORE_RDIFF_(BEGIN|END) comments.
  * R CMD build when there is no NAMESPACE, now uses the recommended
    exportPattern("^[^.]"), instead of exporting everything.
  * R CMD check now warns about non-ASCII characters in the NAMESPACE
    file (in addition to R files). Such packages are not portable and
    may fail to install on some platforms.
  C-LEVEL FACILITIES:
  * Headers R_ext/Applic.h and R-ext/Linpack.h used to include
    R_ext/BLAS.h although this was undocumented and unneeded by their
    documented entry points.  They no longer do so.
  * New function R_missing(), factored out from do_missing(), used to
    fix PR#18579.
  * SEXP type S4SXP has been renamed to OBJSXP to support
    experimenting with alternative object systems.  The S4SXP value
    can still be used in C code but is now deprecated.  Based on
    contributions from the R Consortium's Object-Oriented Programming
    Working Group.
  * New function pow1p(x,y) for accurate (1+x)^y.
  * mkCharLenCE was incorrectly documented to take a size_t length
    but was implemented with int (and character strings in R are
    limited to 2^31 - 1 bytes).
  DEPRECATED AND DEFUNCT:
  * data() no longer handles zipped data from long-defunct (since R
    2.13.0) --use-zip-data installations.
  * The legacy graphics devices pictex() and xfig() are now
    deprecated.  They do not support recent graphics enhancements and
    their font handling is rudimentary. The intention is to retain
    them for historical interest as long as they remain somewhat
    functional.
  * Support for encoding = "MacRoman" has been removed from the pdf()
    and postscript() devices - this was a legacy encoding supporting
    classic macOS up to 2001 and no longer has universal libiconv
    support.
  * is.R() is deprecated as no other S dialect is known to be in use
    (and this could only identify historical dialects, not future
    ones).
    Further information on calls can be obtained by setting the
    environment variable _R_DEPRECATED_IS_R_ to error which turns the
    deprecation warning into an error and so by default gives a
    traceback.  (This is done by R CMD check --as-cran.)
  * UseMethod() no longer forwards local variables assigned in the
    generic function into method call environments before evaluating
    the method body. This makes method calls behave more like
    standard function calls and makes method code easier to analyze
    correctly.
  * The twelve as.data.frame.&lt;class&gt;() methods which were deprecated
    only via _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ and in R CMD
    check --as-cran are formally deprecated now in favour of calling
    as.data.frame() or as.data.frame.vector().  The deprecation
    "check" now works also when as.data.frame() is S4 generic thanks
    to Ivan Krylov.
  * The default method for the directional comparison operators &lt;, &gt;,
    &lt;=, and &gt;= now signals an error when one of the operands is a
    language object, i.e. a symbol or a call.
  * For terms.formula(), deprecate abb and neg.out arguments
    _formally_ in addition to just documenting it.
  BUG FIXES:
  * The methods package is more robust to not being attached to the
    search path.  More work needs to be done.
  * pairwise.t.test() misbehaved when subgroups had 0 DF for
    variance, even with pool.sd = TRUE.  (PR#18594 by Jack Berry).
  * Probability distribution functions [dpq]&lt;distrib&gt;(x, *), but also
    bessel[IKJY](x, .) now consistently preserve attributes(x) when
    length(x) == 0, e.g., for a 2 x 0 matrix, thanks to Karolis
    Koncevičius' report PR#18509.
  * Group "Summary" computations such as sum(1:3, 4, na.rm = 5, NA,
    7, na.rm = LL) now give an error instead of either 17 or NN for
    LL true or false, as proposed by Ivan Krylov on the R-devel
    mailing list.  (This also means it is now an error to specify
    na.rm more than once.)
  * as.complex(x) now returns complex(real = x, imaginary = 0) for
    _all_ numerical and logical x, notably also for NA or
    NA_integer_.
  * Directories are now omitted by file.copy(, recursive = FALSE) and
    in file.append() (PR#17337).
  * gsub() and sub() are now more robust to integer overflow when
    reporting errors caused by too large input strings (PR#18346).
  * Top-level handlers are now more robust to attempts to remove a
    handler whilst handlers are running (PR#18508).
  * The handling of Alt+F4 in dialogs created on Windows using
    GraphApp has been fixed (PR#13870).
  * density() more consistently computes grid values for the
    FFT-based convolution, following Robert Schlicht's analysis and
    proposal in PR#18337, correcting density values typically by a
    factor of about 0.999.  Argument old.coords = TRUE provides back
    compatibility.
  * palette.colors() gains a name argument that defaults to FALSE
    controlling whether the vector of colours that is returned has
    names (where possible).  PR#18529.
  * tools::xgettext() no longer extracts the (non-translatable) class
    names from warningCondition and errorCondition calls.
  * S3method(&lt;gen&gt;, &lt;class&gt;, &lt;func&gt;) in the NAMESPACE file now works
    (again) when &lt;func&gt; is visible from the namespace, e.g.,
    imported, or in base.
  * getParseData(f) now also works for a function defined in the
    first of several &lt;pkg&gt;/R/*.R source files, thanks to Kirill
    Müller's report and Duncan Murdoch's patch in PR#16756.
  * Rd \Sexpr macros with nested #ifdef conditionals were not
    processed.
  * A non-blocking connection with non-default encoding (such as a
    socket) now correctly returns from readLines() after new data has
    arrived also when its EOF had been reached previously.  Thanks to
    Peter Meilstrup's report on R-devel and Ivan Krylov's report and
    patch proposal in PR#18555.
  * tools::checkRdContents() failed to detect empty argument
    descriptions when they spanned multiple lines, including those
    generated by prompt().  These cases are now noted by R CMD check.
  * Plain-text help no longer outputs spurious colons in the
    arguments list (for multi-line \item labels in the Rd source).
  * kappa() and rcond() work correctly in more cases; kappa(., norm =
    "2") now warns that it computes the 1-norm with (default) exact =
    FALSE; prompted by Mikael Jagan's quite comprehensive PR#18543.
  * Rd skeletons generated by prompt() or promptData() now use a
    dummy title (so R CMD build works).  tools::checkRdContents() has
    been updated to detect such template leftovers, including from
    promptPackage().
  * When S4 method dispatch fails because no method was found, the
    error message now includes the signature argument names; thanks
    to Michael Chirico's proposal on the R-devel list.
  * withAutoprint({ .. }) now preserves srcrefs previously lost,
    thanks to Andrew Simmons' report plus fix in PR#18572.
  * transform.data.frame() no longer adjusts names; in particular,
    untransformed variables are kept as-is, including those with
    syntactically invalid names (PR#17890).
  * The keep.source option for Rd \Sexpr blocks is no longer ignored.
  * The formula methods for t.test() and wilcox.test() now catch when
    paired is passed, addressing PR#14359; use Pair(x1, x2) ~ 1 for a
    paired test.
  * The level reported in the browser prompt was often too large. It
    now shows the number of browser contexts on the stack.
  * For cbind() and rbind(), the optional deparse.level argument is
    now properly passed to methods, thanks to Mikael Jagan's PR#18579
    and comments there.
  * Some error and warning messages for large ('long vector')
    matrix(v, nr, nc) and dim(m) &lt;- d are now correct about sizes,
    using long long formatting, fixing PR#18612 (and more) reported
    by Mikael Jagan.
  * readChar(useBytes = TRUE) now terminates strings even when the
    underlying connection uses extra spaces in the input buffer.
    This fixes problems with extra garbage seen with gzip
    connections, PR#18605.
  * Named capture in PCRE regular expressions now works also with
    more than 127 named groups (PR#18588).
  * Datetime functions are now robust against long jumps when dealing
    with internal time zone changes.  This avoids confusing warnings
    about an invalid time zone, previously triggered by turning
    warnings into errors or handling them via tryCatch (PR#17966,
    PR#17780).
  * Datetime functions now restore even an empty TZ environment
    variable after internal time zone changes (PR#17724).  This makes
    results of datetime functions with this (typically unintentional)
    setting more predictable.
  * drop.terms(*) now drops response as by default, keep.response =
    FALSE, fixing PR#18564 thanks to Mikael Jagan.
  * dummy.coef(.) now also works for lm()-models with character
    categorical predictor variables rather than factor ones, fixing
    PR#18635 reported by Jinsong Zhao.
  * formals(f) &lt;- formals(f) now also works for a function w/o
    arguments and atomic _constant_ body(f).
  * Correct as.function(&lt;invalid list&gt;, .)'s error message.
  * removeSource() is yet more thorough in finding and removing
    "srcref" and the other source references from parsed R language
    chunks, fixing PR#18638 thanks to Andrew Simmons.
  * dgeom() is more accurate now, notably when its result is very
    small, fixing PR#18642 thanks to the proposal of Morten Welinder,
    also improving other instances where C level binom_raw(x, n, ..)
    has x == 0 or x== n.
  * warning() with options(warn = 1) has improved output for
    multi-line messages.
  * axis.Date() and axis.POSIXct() now respect the par("lab") setting
    for the number of pretty() intervals.
  * Comparisons for language objects (which are based on deparsing)
    are now more careful about using accurate deparsed results
    (PR#18676).
  * Plain-text help (Rd2txt) now correctly preserves blank lines
    following single-line \dontrun code.
  * &lt;POSIXlt&gt;[*] no longer sets wrong "balanced" attribute, fixing
    PR#18681 thanks to Mikael Jagan.
  * str(&lt;classed-call&gt;) now deparses the call as expected, fixing
    PR#18684, reported by Dave Slager.
  * In Rd examples, code following the closing brace of a \dontrun,
    \dontshow or \donttest tag on the same line is no longer skipped
    when R CMD check runs the examples.
  * as.data.frame(matrix(*, ncol=0)) now gets valid names() and
    colnames(); reported by Davis Vaughan on the R-devel list.
  * Internal Mathlib function stirlerr(n) is now almost fully
    (52-bit) accurate for all n &gt;= ~5.9 and more accurate also in the
    range 1 -- 5.9.  This entails small ("after 12th decimal")
    changes in density functions, e.g., dgamma() in _some_ regions of
    their support.  The fix was partly prompted by Morten Welinder's
    PR#18640.
  * Numbers like 9876543.2 are now considered non-integer by Mathlib
    internal R_nonint(), amending original fix of PR#15734.
  * Rd comment lines no longer cause broken paragraphs in the
    rendered PDF and plain-text help. In code blocks, pure comment
    lines (starting with %) no longer produce an empty line.
  * xtabs(Freq ~ .) now consistently defaults to na.action = na.pass,
    using na.rm = FALSE (added as an argument) when summing over Freq
    (PR#17770).
  * tools::testInstalledPackage() is no longer silent about failures
    from running examples or tests and its return code no longer
    ignores failures from checking vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1718366400">- CHANGES IN R 4.4.1:
  C-LEVEL FACILITIES:
  * Functions R_atof and R_strtod declared in header R_ext/Utils.h
    are now documented in 'Writing R Extensions' and so formally part
    of the API.
  * The non-API entry points Rf_setSVector, Rf_StringFalse,
    Rf_StringTrue and Rf_isBlankString have been added to those
    reported by R CMD check.
  * The new function Rf_allocLang is now available. This provides an
    alternative to the idiom of calling Rf_allocList followed by
    SET_TYPEOF.
  UTILITIES:
  * R CMD check now reports as warnings what gfortran calls 'Fortran
    2018 deleted features', all of which have long been marked as
    'obsolescent' and some of which were deleted in Fortran 2008 or
    earlier.  Fortran compilers are no longer required to support
    these.
  BUG FIXES:
  * as.numeric(), scan(), type.convert() and other places which use
    the internal C function R_strtod now require a _non-empty_ digit
    sequence in a decimal or binary exponent.  This aligns with the
    C/POSIX standard for strtod and with ?NumericConstants.
  * as.data.frame(m, make.names=NA) now works correctly for a matrix
    m with NA's in row names.
  * The error message from &lt;POSIXlt&gt;[["hour"]] and similar now
    mentions *[[, "hour"]], as wished for in PR#17409 and proposed by
    Michael Chirico.
  * qbinom() and potentially qpois(), qnbinom(), no longer sometimes
    fail accurate inversion (of pbinom(), etc), thanks to Christopher
    Chang's report and patch in PR#18711.
  * The internal help server on Windows can again serve requests sent
    in quick succession, fixing a regression in R 4.4.0.
  * debugcall(&lt;S3Generic&gt;()) now also works when a corresponding
    S4-generic version is in the methods cache (PR#18143).
  * Package tools' toTitleCase(ch0) now returns character(0) when ch0
    is of zero length; fixing PR#18724, reported by David Hugh Jones.
  * R CMD check is no longer broken (without a check result and no
    explanation in 00check.log) for a package which declares an
    invalid VignetteBuilder in DESCRIPTION but has no vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1730376000">- CHANGES IN R 4.4.2:
  C-LEVEL FACILITIES:
  * The S-compatibility macros F77_COM and F77_COMDECL defined in
    header R_ext/RS.h are deprecated and will be removed shortly.  We
    could find no record of their use.
  BUG FIXES:
  * Mathlib function lgammacor(x) no longer warns about underflow to
    zero for large x.
  * Text widths and heights were incorrectly reported by the Quartz
    device if the drawing context didn't exist yet (typically when
    drawing off-screen to a window that is yet to appear, see
    PR#18591).
  * The Quartz device could segfault in cases where paths with spaces
    are used in the new glyph drawing API.  Thanks to Tomek
    Gieorgijewski (PR#18758).
  * On macOS in R CRAN builds, it is again possible to read
    little-endian UTF-16 text with a BOM from a connection using
    encoding="UTF-16".  Users building R from source should avoid
    using the system libiconv in macOS 14.1 and later.
  * methods' internal .requirePackage() now re-enables primitive
    method dispatch when needed; thanks to Ivan Krylov for
    demystifying CRAN package check failures on the R-devel mailing
    list.</changelog>
</package>
<package pkgid="b0f238300d1b26c7efd637601f6abd970f06099aa1c63d46ffbaf386e62c3c717ab152e52ecf12eeadc212dad0e76b9ae98a4bb36050ef2d2e30914adca9b802" name="R-stats" arch="i586">
  <version epoch="0" ver="4.4.2" rel="51.0.2.2.sr20241103"/>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1620302400">- To get in sync with d:l:R:autoCRAN the Matrix package's split
  in -devel was reversed.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339200">- improved spec file according to comments of dimstar in
  https://build.opensuse.org/request/show/892685</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339201">- CHANGES IN R 4.1.0:
  FUTURE DIRECTIONS:
  * It is planned that the 4.1.x series will be the last to support
    32-bit Windows, with production of binary packages for that
    series continuing until early 2023.
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Data set esoph in package datasets now provides the correct
    numbers of controls; previously it had the numbers of cases added
    to these.  (Reported by Alexander Fowler in PR#17964.)
  NEW FEATURES:
  * www.omegahat.net is no longer one of the repositories known by
    default to setRepositories().  (Nowadays it only provides source
    packages and is often unavailable.)
  * Function package_dependencies() (in package tools) can now use
    different dependency types for direct and recursive dependencies.
  * The checking of the size of tarball in R CMD check --as-cran
    &lt;pkg&gt; may be tweaked via the new environment variable
    _R_CHECK_CRAN_INCOMING_TARBALL_THRESHOLD_, as suggested in
    PR#17777 by Jan Gorecki.
  * Using c() to combine a factor with other factors now gives a
    factor, an ordered factor when combining ordered factors with
    identical levels.
  * apply() gains a simplify argument to allow disabling of
    simplification of results.
  * The format() method for class "ftable" gets a new option justify.
    (Suggested by Thomas Soeiro.)
  * New ...names() utility.  (Proposed by Neal Fultz in PR#17705.)
  * type.convert() now warns when its as.is argument is not
    specified, as the help file always said it _should_.  In that
    case, the default is changed to TRUE in line with its change in
    read.table() (related to stringsAsFactor) in R 4.0.0.
  * When printing list arrays, classed objects are now shown _via_
    their format() value if this is a short enough character string,
    or by giving the first elements of their class vector and their
    length.
  * capabilities() gets new entry "Rprof" which is TRUE when R has
    been configured with the equivalent of --enable-R-profiling (as
    it is by default).  (Related to Michael Orlitzky's report
    PR#17836.)
  * str(xS4) now also shows extraneous attributes of an S4 object
    xS4.
  * Rudimentary support for vi-style tags in rtags() and R CMD rtags
    has been added.  (Based on a patch from Neal Fultz in PR#17214.)
  * checkRdContents() is now exported from tools; it and also
    checkDocFiles() have a new option chkInternal allowing to check
    Rd files marked with keyword "internal" as well.  The latter can
    be activated for R CMD check via environment variable
    _R_CHECK_RD_INTERNAL_TOO_.
  * New functions numToBits() and numToInts() extend the raw
    conversion utilities to (double precision) numeric.
  * Functions URLencode() and URLdecode() in package utils now work
    on vectors of URIs.  (Based on patch from Bob Rudis submitted
    with PR#17873.)
  * path.expand() can expand ~user on most Unix-alikes even when
    readline is not in use.  It tries harder to expand ~, for example
    should environment variable HOME be unset.
  * For HTML help (both dynamic and static), Rd file links to help
    pages in external packages are now treated as references to
    topics rather than file names, and fall back to a file link only
    if the topic is not found in the target package. The earlier rule
    which prioritized file names over topics can be restored by
    setting the environment variable _R_HELP_LINKS_TO_TOPICS_ to a
    false value.
  * c() now removes NULL arguments before dispatching to methods,
    thus simplifying the implementation of c() methods, _but_ for
    back compatibility keeps NULL when it is the first argument.
    (From a report and patch proposal by Lionel Henry in PR#17900.)
  * Vectorize()'s result function's environment no longer keeps
    unneeded objects.
  * Function ...elt() now propagates visibility consistently with
    ..n.  (Thanks to Lionel Henry's PR#17905.)
  * capture.output() no longer uses non-standard evaluation to
    evaluate its arguments.  This makes evaluation of functions like
    parent.frame() more consistent.  (Thanks to Lionel Henry's
    PR#17907.)
  * packBits(bits, type="double") now works as inverse of
    numToBits().  (Thanks to Bill Dunlap's proposal in PR#17914.)
  * curlGetHeaders() has two new arguments, timeout to specify the
    timeout for that call (overriding getOption("timeout")) and TLS
    to specify the minimum TLS protocol version to be used for
    https:// URIs (_inter alia_ providing a means to check for sites
    using deprecated TLS versions 1.0 and 1.1).
  * For nls(), an optional constant scaleOffset may be added to the
    denominator of the relative offset convergence test for cases
    where the fit of a model is expected to be exact, thanks to a
    proposal by John Nash.  nls(*, trace=TRUE) now also shows the
    convergence criterion.
  * Numeric differentiation _via_ numericDeriv() gets new optional
    arguments eps and central, the latter for taking central divided
    differences.  The latter can be activated for nls() via
    nls.control(nDcentral = TRUE).
  * nls() now passes the trace and control arguments to getInitial(),
    notably for all self-starting models, so these can also be fit in
    zero-noise situations via a scaleOffset.  For this reason, the
    initial function of a selfStart model must now have ... in its
    argument list.
  * bquote(splice = TRUE) can now splice expression vectors with
    attributes: this makes it possible to splice the result of
    parse(keep.source = TRUE).  (Report and patch provided by Lionel
    Henry in PR#17869.)
  * textConnection() gets an optional name argument.
  * get(), exists(), and get0() now signal an error if the first
    argument has length greater than 1.  Previously additional
    elements were silently ignored.  (Suggested by Antoine Fabri on
    R-devel.)
  * R now provides a shorthand notation for creating functions, e.g.
    \(x) x + 1 is parsed as function(x) x + 1.
  * R now provides a simple native forward pipe syntax |&gt;.  The
    simple form of the forward pipe inserts the left-hand side as the
    first argument in the right-hand side call.  The pipe
    implementation as a syntax transformation was motivated by
    suggestions from Jim Hester and Lionel Henry.
  * all.equal(f, g) for functions now by default also compares their
    environment(.)s, notably via new all.equal method for class
    function.  Comparison of nls() fits, e.g., may now need
    all.equal(m1, m2, check.environment = FALSE).
  * .libPaths() gets a new option include.site, allowing to _not_
    include the site library.  (Thanks to Dario Strbenac's suggestion
    and Gabe Becker's PR#18016.)
  * Lithuanian translations are now available.  (Thanks to Rimantas
    Zakauskas.)
  * names() now works for DOTSXP objects.  On the other hand, in
    R-lang, the R language manual, we now warn against relying on the
    structure or even existence of such dot-dot-dot objects.
  * all.equal() no longer gives an error on DOTSXP objects.
  * capabilities("cairo") now applies only to the file-based devices
    as it is now possible (if very unusual) to build R with Cairo
    support for those but not for X11().
  * There is optional support for tracing the progress of
    loadNamespace() - see its help.
  * (Not Windows.)  l10n_info() reports an additional element, the
    name of the encoding as reported by the OS (which may differ from
    the encoding part (if any) of the result from
    Sys.getlocale("LC_CTYPE").
  * New function gregexec() which generalizes regexec() to find _all_
    disjoint matches and well as all substrings corresponding to
    parenthesized subexpressions of the given regular expression.
    (Contributed by Brodie Gaslam.)
  * New function charClass() in package utils to query the
    wide-character classification functions in use (such as
    iswprint).
  * The names of quantile()'s result no longer depend on the global
    getOption("digits"), but quantile() gets a new optional argument
    digits = 7 instead.
  * grep(), sub(), regexp and variants work considerably faster for
    long factors with few levels.  (Thanks to Michael Chirico's
    PR#18063.)
  * Provide grouping of x11() graphics windows within a window
    manager such as Gnome or Unity; thanks to a patch by Ivan Krylov
    posted to R-devel.
  * The split() method for class data.frame now allows the f argument
    to be specified as a formula.
  * sprintf now warns on arguments unused by the format string.
  * New palettes "Rocket" and "Mako" for hcl.colors() (approximating
    palettes of the same name from the 'viridisLite' package).
    Contributed by Achim Zeileis.
  * The base environment and its namespace are now locked (so one can
    no longer add bindings to these or remove from these).
  * Rterm handling of multi-byte characters has been improved,
    allowing use of such characters when supported by the current
    locale.
  * Rterm now accepts ALT+ +xxxxxxxx sequences to enter Unicode
    characters as hex digits.
  * Environment variable LC_ALL on Windows now takes precedence over
    LC_CTYPE and variables for other supported categories, matching
    the POSIX behaviour.
  * duplicated() and anyDuplicated() are now optimized for integer
    and real vectors that are known to be sorted via the ALTREP
    framework. Contributed by Gabriel Becker via PR#17993.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 14
    and so packages that provide graphics devices should be
    reinstalled.
  * Graphics devices should now specify deviceVersion to indicate
    what version of the graphics engine they support.
  * Graphics devices can now specify deviceClip.  If TRUE, the
    graphics engine will never perform any clipping of output itself.
    The clipping that the graphics engine does perform (for both
    canClip = TRUE and canClip = FALSE) has been improved to avoid
    producing unnecessary artifacts in clipped output.
  * The grid package now allows gpar(fill) to be a linearGradient(),
    a radialGradient(), or a pattern().  The viewport(clip) can now
    also be a grob, which defines a clipping path, and there is a new
    viewport(mask) that can also be a grob, which defines a mask.
    These new features are only supported so far on the Cairo-based
    graphics devices and on the pdf() device.
  * (Not Windows.)  A warning is given when a Cairo-based type is
    specified for a png(), jpeg(), tiff() or bmp() device but Cairo
    is unsupported (so type = "Xlib" is tried instead).
  * grSoftVersion() now reports the versions of FreeType and
    FontConfig if they are used directly (not _via_ Pango), as is
    most commonly done on macOS.
  C-LEVEL FACILITIES:
  * The _standalone_ libRmath math library and R's C API now provide
    log1pexp() again as documented, and gain log1mexp().
  INSTALLATION on a UNIX-ALIKE:
  * configure checks for a program pkgconf if program pkg-config is
    not found.  These are now only looked for on the path (like
    almost all other programs) so if needed specify a full path to
    the command in PKG_CONFIG, for example in file config.site.
  * C99 function iswblank is required - it was last seen missing ca
    2003 so the workaround has been removed.
  * There are new configure options --with-internal-iswxxxxx,
  - -with-internal-towlower and --with-internal-wcwidth which allows
    the system functions for wide-character classification,
    case-switching and width (wcwidth and wcswidth) to be replaced by
    internal ones.  The first has long been used on macOS, AIX (and
    Windows) but this enables it to be unselected there and selected
    for other platforms (it is the new default on Solaris).  The
    second is new in this version of R and is selected by default on
    macOS and Solaris.  The third has long been the default and
    remains so as it contains customizations for East Asian
    languages.
    System versions of these functions are often minimally
    implemented (sometimes only for ASCII characters) and may not
    cover the full range of Unicode points: for example Solaris (and
    Windows) only cover the Basic Multilingual Plane.
  * Cairo installations without X11 are more likely to be detected by
    configure, when the file-based Cairo graphics devices will be
    available but not X11(type = "cairo").
  * There is a new configure option --with-static-cairo which is the
    default on macOS.  This should be used when only static cairo
    (and where relevant, Pango) libraries are available.
  * Cairo-based graphics devices on platforms without Pango but with
    FreeType/FontConfig will make use of the latter for font
    selection.
  LINK-TIME OPTIMIZATION on a UNIX-ALIKE:
  * Configuring with flag --enable-lto=R now also uses LTO when
    installing the recommended packages.
  * R CMD INSTALL and R CMD SHLIB have a new flag --use-LTO to use
    LTO when compiling code, for use with R configured with
  - -enable-lto=R.  For R configured with --enable-lto, they have
    the new flag --no-use-LTO.
    Packages can opt in or out of LTO compilation _via_ a UseLTO
    field in the DESCRIPTION file.  (As usual this can be overridden
    by the command-line flags.)
  BUILDING R on Windows:
  * for GCC &gt;= 8, FC_LEN_T is defined in config.h and hence character
    lengths are passed from C to Fortran in _inter alia_ BLAS and
    LAPACK calls.
  * There is a new text file src/gnuwin32/README.compilation, which
    outlines how C/Fortran code compilation is organized and
    documents new features:
  * R can be built with Link-Time Optimization with a suitable
    compiler - doing so with GCC 9.2 showed several
    inconsistencies which have been corrected.
  * There is support for cross-compiling the C and Fortran code
    in R and standard packages on suitable (Linux) platforms.
    This is mainly intended to allow developers to test later
    versions of compilers - for example using GCC 9.2 or 10.x has
    detected issues that GCC 8.3 in Rtools40 does not.
  * There is experimental support for cross-building R packages
    with C, C++ and/or Fortran code.
  * The R installer can now be optionally built to support a single
    architecture (only 64-bit or only 32-bit).
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++14 where
    available (which it is on all currently checked platforms): if
    not (as before) C++11 is used if available otherwise C++ is not
    supported.
    Packages which specify C++11 will still be installed using C++11.
    C++14 compilers may give deprecation warnings, most often for
    std::random_shuffle (deprecated in C++14 and removed in C++17).
    Either specify C++11 (see 'Writing R Extensions') or modernize
    the code and if needed specify C++14.  The latter has been
    supported since R 3.4.0 so the package's DESCRIPTION would need
    to include something like
    Depends: R (&gt;= 3.4)
  PACKAGE INSTALLATION on Windows:
  * R CMD INSTALL and R CMD SHLIB make use of their flag --use-LTO
    when the LTO_OPT make macro is set in file etc/${R_ARCH}/Makeconf
    or in a personal/site Makevars file.  (For details see 'Writing R
    Extensions' SS4.5.)
    This provides a valuable check on code consistency.  It does work
    with GCC 8.3 as in Rtools40, but that does not detect everything
    the CRAN checks with current GCC do.
  PACKAGE INSTALLATION on macOS:
  * The default personal library directory on builds with
  - -enable-aqua (including CRAN builds) now differs by CPU type,
    one of
    ~/Library/R/x86_64/x.y/library
    ~/Library/R/arm64/x.y/library
    This uses the CPU type R (and hence the packages) were built for,
    so when a x86_64 build of R is run under Rosetta emulation on an
    arm64 Mac, the first is used.
  UTILITIES:
  * R CMD check can now scan package functions for bogus return
    statements, which were possibly intended as return() calls (wish
    of PR#17180, patch by Sebastian Meyer). This check can be
    activated via the new environment variable
    _R_CHECK_BOGUS_RETURN_, true for --as-cran.
  * R CMD build omits tarballs and binaries of previous builds from
    the top-level package directory.  (PR#17828, patch by Sebastian
    Meyer.)
  * R CMD check now runs sanity checks on the use of LazyData, for
    example that a data directory is present and that
    LazyDataCompression is not specified without LazyData and has a
    documented value.  For packages with large LazyData databases
    without specifying LazyDataCompression, there is a reference to
    the code given in 'Writing R Extensions' SS1.1.6 to test the
    choice of compression (as in all the CRAN packages tested a
    non-default method was preferred).
  * R CMD build removes LazyData and LazyDataCompression fields from
    the DESCRIPTION file of packages without a data directory.
  ENCODING-RELATED CHANGES:
  * The parser now treats \Unnnnnnnn escapes larger than the upper
    limit for Unicode points (\U10FFFF) as an error as they cannot be
    represented by valid UTF-8.
    Where such escapes are used for outputting non-printable
    (including unassigned) characters, 6 hex digits are used (rather
    than 8 with leading zeros).  For clarity, braces are used, for
    example \U{0effff}.
  * The parser now looks for non-ASCII spaces on Solaris (as
    previously on most other OSes).
  * There are warnings (including from the parser) on the use of
    unpaired surrogate Unicode points such as \uD834.  (These cannot
    be converted to valid UTF-8.)
  * Functions nchar(), tolower(), toupper() and chartr() and those
    using regular expressions have more support for inputs with a
    marked Latin-1 encoding.
  * The character-classification functions used (by default) to
    replace the system iswxxxxx functions on Windows, macOS and AIX
    have been updated to Unicode 13.0.0.
    The character-width tables have been updated to include new
    assignments in Unicode 13.0.0.
  * The code for evaluating default (extended) regular expressions
    now uses the same character-classification functions as the rest
    of R (previously they differed on Windows, macOS and AIX).
  * There is a build-time option to replace the system's
    wide-character wctrans C function by tables shipped with R: use
    configure option --with-internal-towlower or (on Windows)
  - DUSE_RI18N_CASE in CFLAGS when building R.  This may be needed
    to allow tolower() and toupper() to work with Unicode characters
    beyond the Basic Multilingual Plane where not supported by system
    functions (e.g. on Solaris where it is the new default).
  * R is more careful when truncating UTF-8 and other multi-byte
    strings that are too long to be printed, passed to the system or
    libraries or placed into an internal buffer.  Truncation will no
    longer produce incomplete multibyte characters.
  DEPRECATED AND DEFUNCT:
  * Function plclust() from the package stats and
    package.dependencies(), pkgDepends(), getDepList(),
    installFoundDepends(), and vignetteDepends() from package tools
    are defunct.
  * Defunct functions checkNEWS() and readNEWS() from package tools
    and CRAN.packages() from utils have been removed.
  * R CMD config CXXCPP is defunct (it was deprecated in R 3.6.2).
  * parallel::detectCores() drops support for Irix (retired in 2013).
  * The LINPACK argument to chol.default(), chol2inv(),
    solve.default() and svd() has been defunct since R 3.1.0.  It was
    silently ignored up to R 4.0.3 but now gives an error.
  * Subsetting/indexing, such as ddd[*] or ddd$x on a DOTSXP
    (dot-dot-dot) object ddd has been disabled; it worked by accident
    only and was undocumented.
  BUG FIXES:
  * Many more C-level allocations (mainly by malloc and strdup) are
    checked for success with suitable alternative actions.
  * Bug fix for replayPlot(); this was turning off graphics engine
    display list recording if a recorded plot was replayed in the
    same session.  The impact of the bug became visible if resize the
    device after replay OR if attempted another savePlot() after
    replay (empty display list means empty screen on resize or empty
    saved plot).
  * R CMD check etc now warn when a package exports non-existing S4
    classes or methods, also in case of no "methods" presence.
    (Reported by Alex Bertram; reproducible example and patch by
    Sebastian Meyer in PR#16662.)
  * boxplot() now also accepts calls for labels such as ylab, the
    same as plot().  (Reported by Marius Hofert.)
  * The help page for xtabs() now correctly states that addNA is
    setting na.action = na.pass among others.  (Reported as PR#17770
    by Thomas Soeiro.)
  * The R CMD check &lt;pkg&gt; gives a longer and more comprehensible
    message when DESCRIPTION misses dependencies, e.g., in Imports:.
    (Thanks to the contributors of PR#17179.)
  * update.default() now calls the generic update() on the formula to
    work correctly for models with extended formulas.  (As reported
    and suggested by Neal Fultz in PR#17865.)
  * The horizontal position of leaves in a dendrogram is now correct
    also with center = FALSE.  (PR#14938, patch from Sebastian
    Meyer.)
  * all.equal.POSIXt() no longer warns about and subsequently ignores
    inconsistent "tzone" attributes, but describes the difference in
    its return value (PR#17277).  This check can be disabled _via_
    the new argument check.tzone = FALSE as suggested by Sebastian
    Meyer.
  * as.POSIXct() now populates the "tzone" attribute from its tz
    argument when x is a logical vector consisting entirely of NA
    values.
  * x[[2^31]] &lt;- v now works.  (Thanks to the report and patch by
    Suharto Anggono in PR#17330.)
  * In log-scale graphics, axis() ticks and label positions are now
    computed more carefully and symmetrically in their range,
    typically providing _more_ ticks, fulfilling wishes in PR#17936.
    The change really corresponds to an improved axisTicks() (package
    grDevices), potentially influencing grid and lattice, for
    example.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now correct to at
    least five digits where it was catastrophically wrong,
    previously.
  * sum(df) and similar "Summary"- and "Math"-group member functions
    now work for data frames df with logical columns, notably also of
    zero rows.  (Reported to R-devel by Martin "b706".)
  * unsplit() had trouble with tibbles due to unsound use of rep(NA,
    len)-indexing, which should use NA_integer_ (Reported to R-devel
    by Mario Annau.)
  * pnorm(x, log.p = TRUE) underflows to -Inf slightly later.
  * show(&lt;hidden S4 generic&gt;) prints better and without quotes for
    non-hidden S4 generics.
  * read.table() and relatives treated an "NA" column name as missing
    when check.names = FALSE PR#18007.
  * Parsing strings containing UTF-16 surrogate pairs such as
    "\uD834\uDD1E" works better on some (uncommon) platforms.
    sprintf("%X", utf8ToInt("\uD834\uDD1E")) should now give "1D11E"
    on all platforms.
  * identical(x,y) is no longer true for differing DOTSXP objects,
    fixing PR#18032.
  * str() now works correctly for DOTSXP and related exotics, even
    when these are doomed.
    Additionally, it no longer fails for lists with a class and
    "irregular" method definitions such that e.g. lapply(*) will
    necessarily fail, as currently for different igraph objects.
  * Too long lines in environment files (e.g. Renviron) no longer
    crash R. This limit has been increased to 100,000 bytes.
    (PR#18001.)
  * There is a further workaround for FreeType giving incorrect
    italic font faces with cairo-based graphics devices on macOS.
  * add_datalist(*, force = TRUE) (from package tools) now actually
    updates an existing data/datalist file for new content.  (Thanks
    to a report and patch by Sebastian Meyer in PR#18048.)
  * cut.Date() and cut.POSIXt() could produce an empty last interval
    for breaks = "months" or breaks = "years".  (Reported as PR#18053
    by Christopher Carbone.)
  * Detection of the encoding of 'regular' macOS locales such as
    en_US (which is UTF-8) had been broken by a macOS change:
    fortunately these are now rarely used with en_US.UTF-8 being
    preferred.
  * sub() and gsub(pattern, repl, x, *) now keep attributes of x such
    as names() also when pattern is NA (PR#18079).
  * Time differences ("difftime" objects) get a replacement and a
    rep() method to keep "units" consistent.  (Thanks to a report and
    patch by Nicolas Bennett in PR#18066.)
  * The \RdOpts macro, setting defaults for \Sexpr options in an Rd
    file, had been ineffective since R 2.12.0: it now works again.
    (Thanks to a report and patch by Sebastian Meyer in PR#18073.)
  * mclapply and pvec no longer accidentally terminate parallel
    processes started before by mcparallel or related calls in
    package parallel (PR#18078).
  * grep and other functions for evaluating (extended) regular
    expressions handle in Unicode also strings not explicitly flagged
    UTF-8, but flagged native when running in UTF-8 locale.
  * Fixed a crash in fifo implementation on Windows (PR#18031).
  * Binary mode in fifo on Windows is now properly detected from
    argument open (PR#15600, PR#18031).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1622808000">- The line %{__install} -m 755 -d %{_infodir}
  no longer works in TW or Factory.
  But without that line it works everywhere. So this instruction
  was commented out of the spec file.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1628596800">- CHANGES IN R 4.1.1:
  NEW FEATURES:
  * require(pkg, quietly = TRUE) is quieter and in particular does
    not warn if the package is not found.
  DEPRECATED AND DEFUNCT:
  * Use of ftp:// URIs should be regarded as deprecated, with
    on-going support confined to method = "libcurl" and not routinely
    tested.  (Nowadays no major browser supports them.)
  * The non-default method = "internal" is deprecated for http:// and
    ftp:// URIs for both download.file and url.
  * On Windows, method = "wininet" is deprecated for http://,
    https:// and ftp:// URIs for both download.file and url.  (A
    warning is only given for ftp://.)
    For ftp:// URIs the default method is now "libcurl" if available
    (which it is on CRAN builds).
    method = "wininet" remains the default for http:// and https://
    URIs but if libcurl is available, using method = "libcurl" is
    preferred.
  INSTALLATION:
  * make check now works also without a LaTeX installation.  (Thanks
    to Sebastian Meyer's PR#18103.)
  BUG FIXES:
  * make check-devel works again in an R build configured with
  - -without-recommended-packages.
  * qnbinom(p, size, mu) for large size/mu is correct now in a range
    of cases (PR#18095); similarly for the (size, prob)
    parametrization of the negative binomial.  Also qpois() and
    qbinom() are better and or faster for extreme cases.  The
    underlying C code has been modularized and is common to all four
    cases of discrete distributions.
  * gap.axis is now part of the axis() arguments which are passed
    from bxp(), and hence boxplot().  (Thanks to Martin Smith's
    report and suggestions in PR#18109.)
  * .First and .Last can again be set from the site profile.
  * seq.int(from, to, *) and seq.default(..) now work better in large
    range cases where from-to is infinite where the two boundaries
    are finite.
  * all.equal(x,y) now returns TRUE correctly also when several
    entries of abs(x) and abs(y) are close to .Machine$double.xmax,
    the largest finite numeric.
  * model.frame() now clears the object bit when removing the class
    attribute of a value via na.action (PR#18100).
  * charClass() now works with multi-character strings on Windows
    (PR#18104, fixed by Bill Dunlap).
  * encodeString() on Solaris now works again in Latin-1 encoding on
    characters represented differently in UTF-8.  Support for
    surrogate pairs on Solaris has been improved.
  * file.show() on Windows now works with non-ASCII path names
    representable in the current native encoding (PR#18132).
  * Embedded R on Windows can now find R home directory via the
    registry even when installed only for the current user
    (PR#18135).
  * pretty(x) with finite x now returns finite values also in the
    case where the extreme x values are close in size to the maximal
    representable number .Machine$double.xmax.
    Also, it's been tweaked for very small ranges and when a boundary
    is close (or equal) to zero; e.g., pretty(c(0,1e-317)) no longer
    has negative numbers, currently still warning about a very small
    range, and pretty(2^-(1024 - 2^-1/(c(24,10)))) is more accurate.
  * The error message for not finding vignette files when weaving has
    correct file sizes now. (Thanks to Sebastian Meyer's PR#18154.)
  * dnbinom(20, &lt;large&gt;, 1) now correctly gives 0, and similar cases
    are more accurate with underflow precaution.  (Reported by Francisco Vera Alcivar in PR#18072.)</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635163200">- repaired https://bugzilla.suse.com/show_bug.cgi?id=1191380
  (rpmacros now go to rpmmacrodir)
- minor clean-ups in spec file</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635768000">- CHANGES IN R 4.1.2:
  C-LEVEL FACILITIES:
  * The workaround in headers R.h and Rmath.h (using namespace std;)
    for the Oracle Developer Studio compiler is no longer needed now
    C++11 is required so has been removed.  A couple more usages of
    log() (which should have been std::log()) with an int argument
    are reported on Solaris.
  * The undocumented limit of 4095 bytes on messages from the
    S-compatibility macros PROBLEM and MESSAGE is now documented and
    longer messages will be silently truncated rather than
    potentially causing segfaults.
  * If the R_NO_SEGV_HANDLER environment variable is non-empty, the
    signal handler for SEGV/ILL/BUS signals (which offers recovery
    user interface) is not set. This allows more reliable debugging
    of crashes that involve the console.
  DEPRECATED AND DEFUNCT:
  * The legacy S-compatibility macros PROBLEM, MESSAGE, ERROR, WARN,
    WARNING, RECOVER, ... are deprecated and will be hidden in R
    4.2.0. R's native interface of Rf_error and Rf_warning has long
    been preferred.
  BUG FIXES:
  * .mapply(F, dots, .) no longer segfaults when dots is not a list
    and uses match.fun(F) as always documented; reported by Andrew
    Simmons in PR#18164.
  * hist(&lt;Date&gt;, ...) and hist(&lt;POSIXt&gt;, ...)  no longer pass
    arguments for rect() (such as col and density) to axis().
    (Thanks to Sebastian Meyer's PR#18171.)
  * \Sexpr{ch} now preserves Encoding(ch). (Thanks to report and
    patch by Jeroen Ooms in PR#18152.)
  * Setting the RNG to "Marsaglia-Multicarry" e.g., by RNGkind(), now
    warns in more places, thanks to Andr'e Gillibert's report and
    patch in PR#18168.
  * gray(numeric(), alpha=1/2) no longer segfaults, fixing PR#18183,
    reported by Till Krenz.
  * Fixed dnbinom(x, size=&lt;very_small&gt;, .., log=TRUE) regression,
    reported by Martin Morgan.
  * as.Date.POSIXlt(x) now keeps names(x), thanks to Davis Vaughan's
    report and patch in PR#18188.
  * model.response() now strips an "AsIs" class typically, thanks to
    Duncan Murdoch's report and other discussants in PR#18190.
  * try() is considerably faster in case of an error and long call,
    as e.g., from some do.call().  Thanks to Alexander Kaever's
    suggestion posted to R-devel.
  * qqline(y = &lt;object&gt;) such as y=I(.), now works, see also
    PR#18190.
  * Non-integer mgp par() settings are now handled correctly in
    axis() and mtext(), thanks to Mikael Jagan and Duncan Murdoch's
    report and suggestion in PR#18194.
  * formatC(x) returns length zero character() now, rather than ""
    when x is of length zero, as documented, thanks to Davis
    Vaughan's post to R-devel.
  * removeSource(fn) now retains (other) attributes(fn).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1647000000">- CHANGES IN R 4.1.3:
  NEW FEATURES:
  * The default version of Bioconductor has been changed to 3.14.
    (This is used by setRepositories and the menus in GUIs.)
  UTILITIES:
  * R CMD check --as-cran has a workaround for a bug in versions of
    file up to at least 5.41 which mis-identify DBF files last
    changed in 2022 as executables.
  C-LEVEL FACILITIES:
  * The legacy S-compatibility macros SINGLE_* in R_ext/Constants.h
    (included by R.h) are deprecated and will be removed in R 4.2.0.
  BUG FIXES:
  * Initialization of self-starting nls() models with initialization
    functions following the pre-R-4.1.0 API (without the ...
    argument) works again for now, with a deprecation warning.
  * Fixed quoting of ~autodetect~ in Java setting defaults to avoid
    inadvertent user lookup due to leading ~, reported in PR#18231 by
    Harold Gutch.
  * substr(., start, stop) &lt;- v now treats _negative_ stop values
    correctly.  Reported with a patch in PR#18228 by Brodie Gaslam.
  * Subscripting an array x without dimnames by a
    length(dim(x))-column character matrix gave "random" non-sense,
    now an error; reported in PR#18244 by Mikael Jagan.
  * ...names() now matches names(list(...)) closely, fixing PR#18247.
  * all.equal(*, scale = s) now works as intended when length(s) &gt; 1,
    partly thanks to Michael Chirico's PR#18272.
  * print(x) for long vectors x now also works for named atomic
    vectors or lists and prints the correct number when reaching the
    getOption("max.print") limit; partly thanks to a report and
    proposal by Hugh Parsonage to the R-devel list.
  * all.equal(&lt;selfStart&gt;, *) no longer signals a deprecation
    warning.
  * reformulate(*, response=r) gives a helpful error message now when
    length(r) &gt; 1, thanks to Bill Dunlap's PR#18281.
  * Modifying globalCallingHandlers inside withCallingHandlers() now
    works or fails correctly, thanks to Henrik Bengtsson's PR#18257.
  * hist(&lt;Date&gt;, breaks = "days") and hist(&lt;POSIXt&gt;, breaks = "secs")
    no longer fail for inputs of length 1.
  * qbeta(.001, .9, .009) and similar cases now converge correctly
    thanks to Ben Bolker's report in PR#17746.
  * window(x, start, end) no longer wrongly signals "'start' cannot
    be after 'end'", fixing PR#17527 and PR#18291.
  * data() now checks that its (rarely used) list argument is a
    character vector - a couple of packages passed other types and
    gave incorrect results.
  * which() now checks its arr.ind argument is TRUE rather coercing
    to logical and taking the first element - which gave incorrect
    results in package code.
  * model.weights() and model.offset() more carefully extract their
    model components, thanks to Ben Bolker and Tim Taylor's R-devel
    post.
  * list.files(recursive = TRUE) now shows all broken symlinks
    (previously, some of them may have been omitted, PR#18296).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1650628800">- CHANGES IN R 4.2.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * The formula method of aggregate() now matches the generic in
    naming its first argument x (resolving PR#18299 by Thomas
    Soeiro).
    This means that calling aggregate() with a formula as a named
    first argument requires name formula in earlier versions of R and
    name x now, so portable code should not name the argument (code
    in many packages did).
  * Calling &amp;&amp; or || with either argument of length greater than one
    now gives a warning (which it is intended will become an error).
  * Calling if() or while() with a condition of length greater than
    one gives an error rather than a warning.  Consequently,
    environment variable _R_CHECK_LENGTH_1_CONDITION_ no longer has
    any effect.
  * Windows users should consult the WINDOWS section below for some
    profound changes including
  * Support for 32-bit builds has been dropped.
  * UTF-8 locales are used where available.
  * The default locations for the R installation and personal
    library folder have been changed.
    Thanks to Tomas Kalibera for months of work on the Windows port
    for this release.
  NEW FEATURES:
  * matrix(x, n, m) now warns in more cases where length(x) differs
    from n * m, as suggested by Abby Spurdle and Wolfgang Huber in
    Feb 2021 on the R-devel mailing list.
    This warning can be turned into an error by setting environment
    variable _R_CHECK_MATRIX_DATA_ to TRUE: R CMD check --as-cran
    does so unless it is already set.
  * Function file_test() in package utils gains tests for symlinks,
    readability and writability.
  * capabilities("libxml") is now false.
    The description of capabilities("http/ftp") now reflects that it
    refers to the default method, no longer the internal one.
  * simplify2array() gains an except argument for controlling the
    exceptions used by sapply().
  * Environment variables R_LIBS_USER and R_LIBS_SITE are both now
    set to the R system default if unset or empty, and can be set to
    NULL to indicate an empty list of user or site library
    directories.
  * The warning for axis()(-like) calls in cases of relatively small
    ranges (typically in log-scale situations) is slightly improved
    _and_ suppressed from explicit calls to .axisPars() as has always
    been the intention.
  * The contrasts setter function `contrasts&lt;-` gains an explicit
    default how.many = NULL rather than just using missing(how.many).
  * grid.pretty() gains a new optional argument n = 5.
  * There is a new function .pretty() with option bounds as a
    technical-utility version of pretty().  It and pretty() gain a
    new argument f.min with a better than back-compatible default.
  * Function grDevices::axisTicks() and related functions such as
    graphics::axis() work better, notably for the log scale; partly
    because of the pretty() improvements, but also because care is
    taken e.g., when ylim is finite but diff(ylim) is infinite.
  * nclass.FD() gains a digits option.
  * The R Mathlib internal C function bd0() (called indirectly from a
    dozen probability density and distribution functions such as
    dpois(), dbinom(), dgamma(), pgamma() _etc_) has been
    complemented by a more sophisticated and (mostly) more accurate C
    function ebd0(), currently called only by internal dpois_raw()
    improving accuracy for R level dpois() and potentially others
    calling it such as dnbinom(), dgamma() or pgamma().  (Thanks to
    Morten Welinder's PR#15628.)
  * write.ftable() gains sep = " " argument as suggested by Thomas
    Soeiro.
  * The names of the locale categories supported by R's
    Sys.getlocale() and Sys.setlocale() are now provided by variable
    .LC.categories in the base namespace.
  * The Date and POSIXt methods for hist() and the histogram method
    for plot() now also use the new default col = "lightgray" in
    consistency with the corresponding change to hist()'s default for
    R 4.0.0.
  * hist.default() gains new fuzz argument, and the histogram plot
    method no longer uses fractional axis ticks when displaying
    counts ("Frequency").
  * mapply() and hence Map() now also obey the "max-or-0-if-any"
    recycling rule, such that, e.g., Map(`+`, 1:3, 1[0]) is valid
    now.
  * as.character(&lt;obj&gt;) for "hexmode" or "octmode" objects now
    fulfils the important basic rule as.character(x)[j] ===
    as.character(x[j]).
  * The set utility functions, notably intersect() have been tweaked
    to be more consistent and symmetric in their two set arguments,
    also preserving a common mode.
  * substr(ch, start,end) &lt;- new now e.g., preserves names(ch); ditto
    for substring(), thanks to a patch from Brodie Gaslam.
  * plot(&lt;lm&gt;) gains a extend.ylim.f argument, in partial response to
    PR#15285; further PR#17784 is fixed thanks to several
    contributors and a patch by Elin Waring.  The Cook's dist
    contours get customizable via cook.col and cook.lty with a
    different default color and their legend is nicer by default and
    customizable via cook.legendChanges.
  * Attempting to subset an object that is not subsettable now
    signals an error of class notSubsettableError. The
    non-subsettable object is contained in the object field of the
    error condition.
  * Subscript-out-of-bounds errors are now signaled as errors of
    class subscriptOutOfBoundsError.
  * Stack-overflow errors are now signaled as errors inheriting from
    class stackOverflowError. See ?stackOverflowError for more
    details.
  * New partly experimental Sys.setLanguage() utility, solving the
    main problem of PR#18055.
  * gettext() and gettextf() get a new option trim = TRUE which when
    set to false allows translations for strings such as "Execution
    halted\n" typical for C code.
  * An experimental implementation of hash tables is now available.
    See ?hashtab for more details.
  * identical() gains a extptr.as.ref argument for requesting that
    external pointer objects be compared as reference objects.
  * reorder() gets an argument decreasing which it passes to sort()
    for level creation; based on the wish and patch by Thomas Soeiro
    in PR#18243.
  * as.vector() gains a data.frame method which returns a simple
    named list, also clearing a long standing 'FIXME' to enable
    as.vector(&lt;data.frame&gt;, mode="list").  This breaks code relying
    on as.vector(&lt;data.frame&gt;) to return the unchanged data frame.
  * legend() is now vectorized for arguments cex, x.intersp, and
    text.width.  The latter can now also be specified as a vector
    (one element for each column of the legend) or as NA for
    computing a proper column wise maximum value of strwidth(legend).
    The argument y.intersp can be specified as a vector with one
    entry for each row of the legend.
    legend() also gains new arguments title.cex and title.font.
    Thanks to Swetlana Herbrandt.
  * Deparsing no longer remaps attribute names dim, dimnames, levels,
    names and tsp to historical S-compatible names (which structure()
    maps back).
  * sample() and sample.int() have additional sanity checks on their
    size and n arguments.
    all.equal.numeric() gains a sanity check on its tolerance
    argument - calling all.equal(a, b, c) for three numeric vectors
    is a surprisingly common error.
    mean(na.rm =), rank(na.last =), barplot(legend.text =),
    boxplot(), contour(drawlabels =), polygon(border =) and
    methods::is(class2 =) have more robust sanity checks on their
    arguments.
    R CMD Rd2pdf (used by R CMD check) has a more robust sanity check
    on the format of \alias{} commands.
  * psigamma(x, deriv) for negative x now also works for deriv = 4
    and 5; their underlying C level dpsifn() is documented in
    'Writing R Extensions'.
  * The HTML help system now uses HTML5 (wish of PR#18149).
  * ks.test() now provides exact p-values also with ties and MC
    p-values in the two-sample (Smirnov) case.  By Torsten Hothorn.
  * ks.test() gains a formula interface, with y ~ 1 for the
    one-sample (Kolmogorov) test and y ~ group for the two-sample
    (Smirnov) test.  Contributed by Torsten Hothorn.
  * The return value from ks.test() now has class c("ks.test",
    "htest") - packages using try() need to take care to use
    inherits() and not == on the class.
  * New functions psmirnov(), qsmirnov() and rsmirnov() in package
    stats implementing the asymptotic and exact distributions of the
    two-sample Smirnov statistic.
  * iconv() now allows sub = "c99" to use C99-style escapes for UTF-8
    inputs which cannot be converted to encoding to.
  * In a forward pipe |&gt; expression it is now possible to use a named
    argument with the placeholder _ in the rhs call to specify where
    the lhs is to be inserted.  The placeholder can only appear once
    on the rhs.
  * The included LAPACK sources have been updated to version 3.10.0,
    except for the four Fortran 77 routines which 3.10.0 has
    re-implemented in Fortran 90 (where the older versions have been
    retained as the R build process does not support Fortran 90).
  * path.expand() and most other uses of tilde expansion now warn if
    a path would be too long if expanded.  (An exception is
    file.exists(), which silently returns false.)
  * trunc(&lt;Date&gt;, *) now supports units = "months" or "years" for
    consistency with the POSIXt method, thanks to Dirk Eddelbuettel's
    proposal in PR#18099.
  * list2DF() now checks that its arguments are of the same length,
    rather than use recycling.
  * The HTML help system has several new features: LaTeX-like math
    can be typeset using either KaTeX or MathJax, usage and example
    code is highlighted using Prism, and for dynamic help the output
    of examples and demos can be shown within the browser if the
    knitr package is installed. These features can be disabled by
    setting the environment variable _R_HELP_ENABLE_ENHANCED_HTML_ to
    a false value.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 15
    and so packages that provide graphics devices should be
    reinstalled.
  * The grid package now allows the user to specify a "vector" of
    pattern fills.  The fill argument to gpar() accepts a list of
    gradients and/or patterns and the functions linearGradient(),
    radialGradient(), and pattern() have a new group argument.
    Points grobs (data symbols) can now also have a pattern fill.
    The grobCoords() function now returns a more informative and
    complex result.
  * The grid package has new functions for drawing isolated groups:
    grid.group(), grid.define(), and grid.use().  These functions add
    compositing operators and affine transformations to R's graphics
    capabilities.
    The grid package also has new functions for stroking and filling
    paths: grid.stroke(), grid.fill(), and grid.fillStroke().
    A new function as.path() allows the user to specify the fill rule
    for a path that is to be used for clipping, stroking, or filling;
    available options are "winding" and "evenodd".  A new function
    as.mask() allows the user to specify the type of a mask;
    available options are "alpha" and "luminance".
    These new features are only supported so far (at most) on the
    Cairo-based graphics devices and on the pdf() device.
  * dev.capabilities() reports on device support for the new
    features.
  * par() now warns about unnamed non-character arguments to prevent
    misuse such as {usr &lt;- par("usr"); par(usr)}.
  INSTALLATION:
  * Facilities for accessing ftp:// sites are no longer tested
    (except _pro tem_ for curlGetHeaders()) as modern browsers have
    removed support.
  * R can now be built with DEFS = -DSTRICT_R_HEADERS .
  PACKAGE INSTALLATION:
  * R CMD INSTALL no longer tangles vignettes. This completes an R
    CMD build change in R 3.0.0 and affects packages built before R
    3.0.2. Such packages should be re-made with R CMD build to have
    the tangled R code of vignettes shipped with the tarball.
  * USE_FC_LEN_T will become the default: this uses the correct
    prototypes for Fortran BLAS/LAPACK routines called from C/C++,
    and requires adjustment of most such calls - see 'Writing R
    Extensions' SS6.6.2.  (This has been supported since R 3.6.2.)
  * Package installation speed for packages installed with
    keep.source has been improved. This resolve the issue reported by
    Ofek Shilon in PR#18236.
  UTILITIES:
  * R CMD check can optionally report files/directories left behind
    in home, /tmp (even though TMPDIR is set) and other directories.
    See the "R Internals" manual for details.
  * R CMD check now reports byte-compilation errors during
    installation.  These are not usually fatal but may result in
    parts of the package not being byte-compiled.
  * _R_CHECK_DEPENDS_ONLY_ can be applied selectively to examples,
    tests and/or vignettes in R CMD check: see the "R Internals"
    manual.
  * _R_CHECK_SRC_MINUS_W_IMPLICIT_ now defaults to true: recent
    versions of Apple clang on macOS have made implicit function
    declarations in C into a compilation error.
  * R CMD check --as-cran makes use of the environment variable
    AUTORECONF.  See the "R Internals" manual SS8 for further details.
  * R CMD check --use-valgrind also uses valgrind when re-building
    vignettes as some non-Sweave vignettes unhelpfully comment out
    all their code when R CMD check runs vignettes.
  * Errors in re-building vignettes (unless there are LaTeX errors)
    are reported by R CMD check as ERROR rather than WARNING when
    running vignettes has been skipped (as it frequently is in CRAN
    checks and by --as-cran).
  * R CMD Rd2pdf gains a --quiet option that is used by R CMD build
    when building the PDF package manual.
  * R CMD Rd2pdf now always runs LaTeX in batch mode, consistent with
    Texinfo &gt;= 6.7. The --batch option is ignored.
  * R CMD build and R CMD check now include the Rd file name and line
    numbers in the error message of an \Sexpr evaluation failure.
  * For packages using the \doi Rd macro (now an install-time \Sexpr)
    but no other dynamic Rd content, R CMD build now produces a
    smaller tarball and is considerably faster - skipping temporary
    package installation.
  C-LEVEL FACILITIES:
  * The non-API header R_ext/R-ftp-http.h is no longer provided, as
    the entry points it covered are now all defunct.
  * A number of non-API declarations and macro definitions have been
    moved from the installed header Rinternals.h to the internal
    header Defn.h. Packages that only use entry points and
    definitions documented to be part of the API as specified in
    'Writing R Extensions' SS6 should not be affected.
  * The macro USE_RINTERNALS no longer has any effect when compiling
    package code.  Packages which also use R_NO_REMAP will need to
    ensure that the remapped names are used for calls to API
    functions that were formerly also made available as macros.
  * The deprecated legacy S-compatibility macros PROBLEM, MESSAGE,
    ERROR, WARN, WARNING, RECOVER, ... are no longer defined in
    R_exts/RS.h (included by R.h).  Replace these by calls to
    Rf_error and Rf_warning (defined in header R_ext/Error.h included
    by R.h).
    Header R_ext/RS.h no longer includes R_ext/Error.h.
  * Header R_ext/Constants.h (included by R.h) when included from C++
    now includes the C++ header cfloat rather than the C header
    float.h (now possible as C++11 is required).
  * The legacy S-compatibility macros DOUBLE_* in R_ext/Constants.h
    (included by R.h) are deprecated.
  * The deprecated S-compatibility macros SINGLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * R_Calloc, R_Free and R_Realloc are preferred to their unprefixed
    forms and error messages now use the prefix. These forms were
    introduced in R 3.4.0 and are available even when
    STRICT_R_HEADERS is defined.
  * rmultinom has been documented in 'Writing R Extensions' SS6 so is
    now part of the R API.
  * Similarly, Rtanpi, called from R level tanpi() is now part of the
    R API.
  * The long-deprecated, undocumented and non-API entry point call_R
    is no longer declared in R_ext/RS.h (included by R.h).
  * The header S.h which has been unsupported since Jan 2016 has been
    removed.  Use R.h instead.
  DEPRECATED AND DEFUNCT:
  * The (non-default and deprecated) method = "internal" for
    download.file() and url() no longer supports http:// nor ftp://
    URIs.  (It is used only for file:// URIs.)
    On Windows, download.file(method = "wininet") no longer supports
    ftp:// URIs.  (It is no longer the default method, which is
    "libcurl" and does.)
    On Windows, the deprecated method = "wininet" now gives a warning
    for http:// and https:// URIs for both download.file() and url().
    (It is no longer the default method.)
  * On Windows, the command-line option --max-mem-size and
    environment variable R_MAX_MEM_SIZE are defunct.  The memory
    allocation limit was important for 32-bit builds, but these are
    no longer supported.
  * default.stringsAsFactors() is now formally deprecated, where that
    was only mentioned on its regular help page, previously.  So it
    now gives a warning if called.
  * unix.time() is defunct now; it had been deprecated since R 3.4.0.
  BUG FIXES:
  * Setting digits = 0 in format(), print.default() (and hence
    typically print()) or options() is again invalid.  Its behaviour
    was platform-dependent, and it is unclear what "zero significant
    digits" should mean (PR#18098).
  * Messages from C code in the cairo section of package grDevices
    are now also offered for translation, thanks to Michael Chirico's
    PR#18123.
  * mean(x) with finite x now is finite also without "long.double"
    capability.
  * R CMD Rd2pdf no longer leaves an empty build directory behind
    when it aborts due to an already existing output file.  (Thanks
    to Sebastian Meyer's PR#18141.)
  * density(x, weights = w, na.rm = TRUE) when anyNA(x) is true, now
    removes weights "in parallel" to x, fixing PR#18151, reported by
    Matthias Gondan.  Additionally, it gets a subdensity option.
  * Conversion of \Sexpr[]{&lt;expR&gt;} to LaTeX or HTML no longer
    produces long blocks of empty lines when &lt;expR&gt; itself contains
    several lines all producing empty output.  Thanks to a report and
    patch by Ivan Krylov posted to R-devel.
  * R CMD build no longer fails if a package vignette uses child
    documents and inst/doc exists.  (Thanks to Sebastian Meyer's
    PR#18156.)
  * When an R documentation ('help' source) file man/foo.Rd in a
    package has \donttest{..} examples with a syntax error, it is now
    signalled as ERROR and with correct line numbers relating to the
  * -Ex.R file, thanks to Duncan Murdoch and Sebastian Meyer's
    reports and patch proposals in PR#17501.
  * Improved determination of the correct translation domain in
    non-base packages, addressing the combination of PR#18092 and
    PR#17998 (#c6) with reports and _augmented_ patch #2904 by
    Suharto Anggono.
    Note that "R-base" is no longer the default domain e.g., for
    top-level calls to gettext(); rather translation needs explicit
    domain = * specification in such cases.
  * identical(attrib.as.set=FALSE) now works correctly with data
    frames with default row names (Thanks to Charlie Gao's PR#18179).
  * txtProgressBar() now enforces a non-zero width for argument char,
    without which no progress can be visible.
  * dimnames(table(d)) is more consistent in the case where d is a
    list with a single component, thanks to Thomas Soeiro's report to
    R-devel.
    Further, table(d1, d2) now gives an error when d1 and d2 are data
    frames as suggested by Thomas in PR#18224.
  * Fix for drawing semi-transparent lines and fills on the native
    Windows graphics device (PR#18219 and PR#16694).  Thanks to Nick
    Ray for helpful diagnosis on Bugzilla.
  * The deparser now wraps sub-expressions such as if(A) ..  with
    parentheses when needed; thanks to Duncan Murdoch's PR#18232 and
    Lionel Henry's patches there.
  * remove.packages() no longer tries to uninstall Priority: base
    packages, thanks to a report and suggestions by Colin Fay in
    PR#18227.
  * win.metafile() now has xpinch and ypinch arguments so that the
    user can override Windows' (potentially wrong) guess at device
    dimensions.
  * x[i] and x[[i]] for non-integer i should now behave in all cases
    as always documented: the index used is equivalent to
    as.integer(i) unless that would overflow where trunc(i) is used
    instead; thanks to Suharto Anggono's report and patch proposals
    in PR#17977.
  * asOneSidedFormula() now associates the resulting formula with the
    global environment rather than the evaluation environment created
    for the call.
  * &lt;bibentry&gt;$name now matches the field name case-insensitively,
    consistent with bibentry() creation and the replacement method.
  * cbind() failed to detect some length mismatches with a mixture of
    time-series and non-time-series inputs.
  * The default LaTeX style file Sweave.sty used by the RweaveLatex
    driver no longer loads the obsolete ae package; thanks to a
    report by Thomas Soeiro in PR#18271.  Furthermore, it now skips
    \usepackage[T1]{fontenc} for engines other than pdfTeX (if
    detected) or if the new [nofontenc] option is used.
  * smooth.spline() now stores its logical cv argument more safely,
    fixing a rare bug when printing, and also stores n.
  * smooth.spline(x,y,*) now computes the cv.crit statistic
    correctly, also when is.unsorted(x), fixing PR#18294.
  * The data.frame method of rbind() now warns when binding
    not-wholly-recycling vectors, by analogy to the default method
    (for matrices).
  * setAs() finds the correct class for name to when multiple
    packages define a class with that name. Thanks to Gabor Csardi
    for the report.
  * Fix for detaching a package when two classes of the same name are
    present in method signatures for the same generic. Thanks to
    Gabor Csardi for the report.
  * match.arg("", c("", "a", "B")) gives a better error message, in
    part from PR#17959, thanks to Elin Waring.
  * R CMD Sweave --clean no longer removes pre-existing files or
    subdirectories (PR#18242).
  * The quartz() device no longer splits polylines into subpaths.
    That has caused narrowly-spaced lines with many points to always
    look solid even when dashed line type was used due to dash phase
    restarts.
  * Deparsing constructs such as quote(1 + `!`(2) + 3) works again as
    before R 3.5.0, thanks to the report and patch in PR#18284 by
    Suharto Anggono.
  * as.list(f) for a factor f now keeps names(f), fixing PR#18309.
  * qbeta(.001, .9, .009) and analogous qf() calls now return a
    correct value instead of NaN or wrongly 1, all with a warning;
    thanks to the report by Ludger Goeminne in PR#18302.
  * plot.lm() failed to produce the plot of residuals vs.  factor
    levels (i.e., which=5 when leverages are constant) for models
    with character predictors (PR#17840).
  * interaction.plot(..., xtick = TRUE) misplaced the x-axis line
    (PR#18305).
  * Not strictly fixing a bug, format()ing and print()ing of
    non-finite Date and POSIXt values NaN and +/-Inf no longer show
    as NA but the respective string, e.g., Inf, for consistency with
    numeric vector's behaviour, fulfilling the wish of PR#18308.
  * R CMD check no longer runs test scripts generated from
    corresponding .Rin files twice and now signals an ERROR if
    processing an .Rin script fails.
  * tools::Rd2txt() used for plain-text help pages now renders \hrefs
    (if tools::Rd2txt_options(showURLs = TRUE)) and \urls with
    percent-encoding and standards-compliant delimiting style (angle
    brackets and no URL: prefix).  \email is now rendered with a
    mailto: prefix.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1655985600">- CHANGES IN R 4.2.1:
  NEW FEATURES:
  * New function utils::findCRANmirror() to find out if a CRAN mirror
    has been selected, otherwise fallback to the main site.  This
    behaves in the same way as tools::CRAN_package_db() and is
    intended for packages wishing to access CRAN for purposes other
    than installing packages.
    The need for this was shown by a day when the main CRAN website
    was offline and a dozen or so packages which had its URL
    hardcoded failed their checks.
  INSTALLATION on a UNIX-ALIKE:
  * The libraries searched for by --with-blas (without a value) now
    include BLIS (after OpenBLAS but before ATLAS).  And on macOS,
    the Accelerate framework (after ATLAS).  (This is patterned after
    the AX_BLAS macro from the Autoconf Archive.)
  * The included LAPACK sources have been updated to 3.10.1.
  UTILITIES:
  * The (full path to) the command tidy to be used for HTML
    validation can be set by environment variable R_TIDYCMD.
  * Setting environment variable _R_CHECK_RD_VALIDATE_RD2HTML_ to a
    false value will override R CMD check --as-cran and turn off HTML
    validation.  This provides a way to circumvent a problematic
    tidy.
    The 2006 version that ships with macOS is always skipped.
  C-LEVEL FACILITIES:
  * The undocumented legacy declarations of Sint, Sfloat, SINT_MAX
    and SINT_MIN in header R.h are deprecated.
  BUG FIXES:
  * fisher.test(d) no longer segfaults for "large" d; fixing PR#18336
    by preventing/detecting an integer overflow reliably.
  * tar(., files=*) now produces correctly the warning about invalid
    uid or gid of files, fixing PR#18344, reported by Martin Morgan.
  * tk_choose.files() with multi = FALSE misbehaved on paths
    containing spaces (PR#18334) (regression introduced in R 4.0.0).
  * sort(x, partial = ind, *) now works correctly notably for the
    non-default na.last = FALSE or TRUE, fixing PR#18335 reported by
    James Edwards.
  * Environment variable _R_CHECK_XREFS_REPOSITORIES_ is only used
    for checking .Rd cross-references in R CMD check (as documented)
    and not for other uses looking for a CRAN mirror.
  * The search for a CRAN mirror when checking packages now uses
    getOption("repos") if that specifies a CRAN mirror, even when it
    does not also specify all three Bioconductor repositories (as was
    previously required).
  * The HTML code generated by tools::Rd2HTML() has been improved to
    pass tidy 5.8.0.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1667217600">- CHANGES IN R 4.2.2:
  NEW FEATURES:
  * tools::Rdiff(useDiff = TRUE) checks for the presence of an
    external diff command and switches to useDiff = FALSE if none is
    found.  This allows R CMD Rdiff to always work.
  * On Windows, environment variable R_LIBCURL_SSL_REVOKE_BEST_EFFORT
    can be used to switch to only 'best-effort' SSL certificate
    revocation checks with the default "libcurl" download method.
    This reduces security, but may be needed for downloads to work
    with MITM proxies (PR#18379).
  * (macOS) The run-time check for libraries from XQuartz for X11 and
    Tcl/Tk no longer uses otool from the Apple Developer Tools
    (PR#18400).
  * The LaTeX style for producing the PDF manuals, Rd.sty, now loads
    the standard amsmath, amsfonts and amssymb packages for greater
    coverage of math commands in the Rd \eqn and \deqn macros.  The
    \mathscr LaTeX command is also provided (via the mathrsfs
    package, if available, or the amsfonts bundle otherwise),
    fulfilling the wish of PR#18398.
  * (Windows) The default format of readClipboard() and
    writeClipboard() has been changed to 13 (CF_UNICODETEXT).
  INSTALLATION on a UNIX-ALIKE:
  * The PDF manuals (if built) can be compacted by the new target
    make compact-pdf (at the top level or in directory doc/manual).
  * There is now configure support for LLVM clang 15 on Linux, which
    defaults to position-independent (PIE) executables whereas
    gfortran does not.
  * Many small changes to ease compilation (and suppress warnings)
    with LLVM clang 15.
  BUG FIXES:
  * Rscript -e would fail if stdin were closed (Reported by Henrik
    Bengtsson.)
  * qt(*, log.p=TRUE) in outer tails no longer produces NaN in its
    final steps, thus fixing PR#18360.
  * tools::Rd2latex() now escapes hashes and ampersands when writing
    URLs, fixing LaTeX errors with such URLs in \tabular.
  * When isGeneric(f, fdef=*) is used with mismatching names, the
    warning is better understandable; reported (with fix) in PR#18370
    by Gabe Becker.
  * poly(x, n) now works again (and is now documented) when x is a
    "Date" or "POSIXct" object, or of another class while fulfilling
    mode(x) == "numeric".  This also enables poly(x, *, raw=TRUE) for
    such variables.  Reported by Michael Chirico to R-devel.
  * write.table(), write.csv() and write.csv2() restore their
    numerical precision (internal equivalent of digits = 15) after an
    interrupt (PR#18384).
  * One can now read also byte FF from a clipboard connection
    (PR#18385).
  * source("") and source(character()) now give more helpful error
    messages.
  * R CMD check --as-cran set _R_CHECK_TIMINGS_ too late to have the
    intended effect.
  * as.POSIXlt(x) now also works with very large dates x, fixing
    PR#18401 reported by Hannes M"uhleisen.
  * Files can now be extracted even from very large zip archives
    (PR#18390, thanks to Martin Jakt).
  * Non-finite objects of class "POSIXlt" are now correctly coerced
    to classes "Date" and "POSIXct"; following up on the extension to
    format() them correctly.
  * Added methods for is.finite(), is.infinite() and is.nan() for
    "POSIXlt" date-time objects.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1678881600">- CHANGES IN R 4.2.3:
  C-LEVEL FACILITIES:
  * The definition of DL_FUNC in R_ext/Rdynload.h has been changed to
    be fully C-compliant.  This means that functions loaded _via_ for
    example R_GetCCallable need to be cast to an appropriate type if
    they have any arguments.
  * .Machine has a new element sizeof.time_t to identify old systems
    with a 32-bit type and hence a limited range of date-times (and
    limited support for dates millions of years from present).
  PACKAGE INSTALLATION:
  * (Windows) The default C++ standard had accidentally been left at
    C++11 when it was changed to C++14 on Unix.
  BUG FIXES:
  * As "POSIXlt" objects may be "partially filled" and their list
    components meant to be recycled, length() now is the length of
    the longest component.
  * as.POSIXlt.Date() could underflow for dates in the far past (more
    than half a million years BCE).
  * as.Date.POSIXlt(x) would return "1970-01-01" instead of NA in R
    4.2.2, e.g., for
    x &lt;- as.POSIXlt(c("2019-01-30","2001-1-1"))
    x$mon &lt;- c(0L, NA); as.Date(x)
  * R CMD check failed to apply enabled _R_CHECK_SUGGESTS_ONLY_ to
    examples and vignettes (regression in R 4.2.0).
  * R CMD check did not re-build vignettes in separate processes by
    default (regression in R 4.2.0).
  * Running examples from HTML documentation now restores previous
    knitr settings and options (PR#18420).
  * Quartz: fonts are now located using Core Graphics API instead of
    deprecated ATS which is no longer supported in the macOS 13 SDK
    (PR#18426).  This also addresses an issue where the currently
    used font in the Quartz device context was not correctly
    retained.
  * (Windows) Math symbols in text drawing functions are again
    rendered correctly (PR#18440).  This fixes a regression in R
    4.2.1 caused by a fix in PR#18382 which uncovered an issue in
    GraphApp due to which the symbol charset was not used with TT
    Symbol font face.
  * (Windows) Installing a package with a src/Makefile.{win,ucrt}
    file includes ~/.R/Makevars.win64 in the search for user
    makevars, as documented in "R Installation and Administration"
    and done for packages with a src/Makevars.{win,ucrt} file.
  * format(&lt;POSIXlt_w/_unbalanced_sec&gt;, "....%OS&lt;n&gt;") with n &gt; 0 no
    longer accidentally uses the unbalanced seconds, thanks to
    Suharto Anggono's report (including patch) in PR#18448.
  * solve.default(a, b) works around issues with some versions of
    LAPACK when a contains NA or NaN values.
  * When UseMethod() cannot dispatch, it no longer segfaults
    producing the error message in case of a long class(), thanks to
    Joris Vankerschaver's report (including patch) in PR#18447.
  * When example(foo, ..) produces graphics on an interactive device
    it needs to open itself, it now leaves devAskNewPage() unchanged
    even when it was FALSE, thus fixing a 14 years old '&lt;FIXME&gt;'.
  * packageDescription() again catches errors from encoding
    conversions. This also fixes broken packageVersion() in C locale
    on systems where iconv does not support transliteration.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1681128000">- add patch to build with libcurl &gt;= 8</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1682078400">- CHANGES IN R 4.3.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Calling &amp;&amp; or || with LHS or (if evaluated) RHS of length greater
    than one is now always an error, with a report of the form
    'length = 4' in coercion to 'logical(1)'
    Environment variable _R_CHECK_LENGTH_1_LOGIC2_ no longer has any
    effect.
  NEW FEATURES:
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.10.1.  (This caused some platform-dependent
    changes to package check output.)  And then to the sources from
    LAPACK version 3.11.0 (with changes only to double complex
    subroutines).
  * The included LAPACK sources have been updated to include the four
    Fortran 90 routines rather than their Fortran 77 predecessors.
    This may give some different signs in SVDs or
    eigendecompositions..  (This completes the transition to LAPACK
    3.10.x begun in R 4.2.0.)
  * The LAPACK sources have been updated to version 3.11.0.  (No new
    subroutines have been added, so this almost entirely bug fixes:
    Those fixes do affect some computations with NaNs, including R's
    NA.)
  * The parser now signals _classed_ errors, notably in case of the
    pipe operator |&gt;.  The error object and message now give line and
    column numbers, mostly as proposed and provided by Duncan Murdoch
    in PR#18328.
  * toeplitz() is now generalized for asymmetric cases, with a
    toeplitz2() variant.
  * xy.coords() and xyz.coords() and consequently, e.g., plot(x,y,
    log = "y") now signal a _classed_ warning about negative values
    of y (where log(.) is NA).  Such a warning can be specifically
    suppressed or caught otherwise.
  * Regular expression functions now check more thoroughly whether
    their inputs are valid strings (in their encoding, e.g. in
    UTF-8).
  * The performance of grep(), sub(), gsub() and strsplit() has been
    improved, particularly with perl = TRUE and fixed = TRUE.  Use of
    useBytes = TRUE for performance reasons should no longer be
    needed and is discouraged: it may lead to incorrect results.
  * apropos() gains an argument dot_internals which is used by the
    completion (help(rcompgen)) engine to also see base internals
    such as .POSIXct().
  * Support in tools::Rdiff() for comparing uncompressed PDF files is
    further reduced - see its help page.
  * qqplot(x, y, ...) gains conf.level and conf.args arguments for
    computing and plotting a confidence band for the treatment
    function transforming the distribution of x into the distribution
    of y (Switzer, 1976, _Biometrika_). Contributed by Torsten
    Hothorn.
  * Performance of package_dependencies() has been improved for cases
    when the number of dependencies is large.
  * Strings newly created by gsub(), sub() and strsplit(), when any
    of the inputs is marked as "bytes", are also marked as "bytes".
    This reduces the risk of creating invalid strings and accidental
    substitution of bytes deemed invalid.
  * Support for readLines(encoding = "bytes") has been added to allow
    processing special text files byte-by-byte, without creating
    invalid strings.
  * iconv(from = "") now takes into account any declared encoding of
    the input elements and uses it in preference to the native
    encoding.  This reduces the risk of accidental creation of
    invalid strings, particularly when different elements of the
    input have different encoding (including "bytes").
  * Package repositories in getOption("repos") are now initialized
    from the repositories file when utils is loaded (if not already
    set, e.g., in .Rprofile).  (From a report and patch proposal by
    Gabriel Becker in PR#18405.)
  * compactPDF() gets a verbose option.
  * type.convert() and hence read.table() get new option tryLogical =
    TRUE with back compatible default.  When set to false, converts
    "F" or "T" columns to character.
  * Added new unit prefixes "R" and "Q" for abbreviating
    (unrealistically large) sizes beyond 10^{27} in standard = "SI",
    thanks to Henrik Bengtsson's PR#18435.
  * as.data.frame()'s default method now also works fine with atomic
    objects inheriting from classes such as "roman", "octmode" and
    "hexmode", such fulfilling the wish of PR#18421, by Benjamin
    Feakins.
  * The as.data.frame.vector() utility now errors for wrong-length
    row.names.  It warned for almost six years, with "Will be an
    error!".
  * sessionInfo() now also contains La_version() and reports codepage
    and timezone when relevant, in both print() and toLatex() methods
    which also get new option tzone for displaying timezone
    information when locale = FALSE.
  * New function R_compiled_by() reports the C and Fortran compilers
    used to build R, if known.
  * predict(&lt;lm&gt;, newdata = *) no longer unnecessarily creates an
    offset of all 0s.
  * solve() for complex inputs now uses argument tol and by default
    checks for 'computational singularity' (as it long has done for
    numeric inputs).
  * predict(&lt;rank-deficient lm&gt;, newdata=*) now obeys a new argument
    rankdeficient, with new default "warnif", warning only if there
    are non-estimable cases in newdata.  Other options include
    rankdeficient = "NA", predicting NA for non-estimable newdata
    cases.  This addresses PR#15072 by Russ Lenth and is based on his
    original proposal and discussions in PR#16158 also by David Firth
    and Elin Waring.  Still somewhat experimental.
  * Rgui console implementation now works better with the NVDA screen
    reader when the full blinking cursor is selected.  The underlying
    improvements in cursor handling may help also other screen
    readers on Windows.
  * The drop-field control in GraphApp can now be left with the TAB
    key and all controls can be navigated in the reverse order using
    the Shift+TAB key, improving accessibility of the Rgui
    configuration editor.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now fully accurate
    (instead of to "only" minimally five digits).
  * demo(error.catching) now also shows off withWarnings() and
    tryCatchWEMs().
  * As an experimental feature the placeholder _ can now also be used
    in the rhs of a forward pipe |&gt; expression as the first argument
    in an extraction call, such as _$coef. More generally, it can be
    used as the head of a chain of extractions, such as _$coef[[2]].
  * Spaces in the environment variable used to choose the R session's
    temporary directory (TMPDIR, TMP and TEMP are tried in turn) are
    now fatal.  (On Windows the 'short path' version of the path is
    tried and used if that does not contain a space.)
  * all.equal.numeric() gets a new optional switch giveErr to return
    the numeric error as attribute.  Relatedly,
    stopifnot(all.equal&lt;some&gt;(a, b, ..)) is as "smart" now, as
    stopifnot(all.equal(....)) has been already, thus allowing
    customized all.equal&lt;Some&gt;() wrappers.
  * R on Windows is now able to work with path names longer than 260
    characters when these are enabled in the system (requires at
    least Windows 10 version 1607).  Packages should be updated to
    work with long paths as well, instead of assuming PATH_MAX to be
    the maximum length.  Custom front-ends and applications embedding
    R need to update their manifests if they wish to allow this
    feature.  See
    &lt;https://blog.r-project.org/2023/03/07/path-length-limit-on-windows&gt;
    for more information.
  * 'Object not found' and 'Missing argument' errors now give a more
    accurate error context. Patch provided by Lionel Henry in
    PR#18241.
  * The @ operator is now an S3 generic. Based on contributions by
    Tomasz Kalinowski in PR#18482.
  * New generic chooseOpsMethod() provides a mechanism for objects to
    resolve cases where two suitable methods are found for an Ops
    Group Generic. This supports experimenting with alternative
    object systems. Based on contributions by Tomasz Kalinowski in
    PR#18484.
  * inherits(x, what) now accepts values other than a simple
    character vector for argument what. A new generic, nameOfClass(),
    is called to resolve the class name from what. This supports
    experimenting with alternative object systems. Based on
    contributions by Tomasz Kalinowski in PR#18485.
  * Detection of BLAS/LAPACK in use (sessionInfo()) with FlexiBLAS
    now reports the current backend.
  * The "data.frame" method for subset() now warns about extraneous
    arguments, typically catching the use of = instead of == in the
    subset expression.
  * Calling a:b when numeric a or b is longer than one may now be
    made into an error by setting environment variable
    _R_CHECK_LENGTH_COLON_ to a true value, along the proposal in
    PR#18419 by Henrik Bengtsson.
  * density(x, weights = *) now warns if automatic bandwidth
    selection happens without using weights; new optional warnWbw may
    suppress the warning.  Prompted by Christoph Dalitz' PR#18490 and
    its discussants.
  * rm(list = *) is faster and more readable thanks to Kevin Ushey's
    PR#18492.
  * The plot.lm() function no longer produces a normal Q-Q plot for
    GLMs. Instead it plots a half-normal Q-Q plot of the absolute
    value of the standardized deviance residuals.
  * The print() method for class "summary.glm" no longer shows
    summary statistics for the deviance residuals by default.  Its
    optional argument show.residuals can be used to show them if
    required.
  * The tapply() function now accepts a data frame as its X argument,
    and allows INDEX to be a formula in that case. by.data.frame()
    similarly allows INDICES to be a formula.
  * The performance of df[j] &lt;- value (including for missing j) and
    write.table(df) has been improved for data frames df with a large
    number of columns.  (Thanks to Gabriel Becker's PR#18500,
    PR#18503 and discussants, prompted by a report from Toby Dylan
    Hocking on the R-devel mailing list.)
  * The matrix multiply operator %*% is now an S3 generic, belonging
    to new group generic matrixOps.  From Tomasz Kalinowski's
    contribution in PR#18483.
  * New function array2DF() to convert arrays to data frames,
    particularly useful for the list arrays created by tapply().
  DATES and TIMES:
  * On platforms where (non-UTC) datetimes before 1902 (or before
    1900 as with system functions on recent macOS) are guessed by
    extrapolating time zones from 1902-2037, there is a warning at
    the first use of extrapolation in a session.  (As all time zones
    post 2037 are extrapolation, we do not warn on those.)
  * (Platforms using --with-internal-tzone, including Windows and by
    default macOS). How years are printed in dates or date-times can
    be controlled by environment variable R_PAD_YEARS_BY_ZERO.  The
    default remains to pad to 4 digits by zeroes, but setting value
    no gives no padding (as used by default by glibc).
  * strftime() tries harder to determine the offset for the "%z"
    format, and succeeds on the mainstream R platforms.
  * strftime() has a limit of 2048 bytes on the string produced -
    attempting to exceed this is an error.  (Previously it silently
    truncated at 255 bytes.)
  * sessionInfo() records (and by default prints) the system time
    zone as part of the locale information.  Also, the source
    (system/internal) of the date-time conversion and printing
    functions.
  * Objects of class "POSIXlt" created in this version of R always
    have 11 components: component zone is always set, and component
    gmtoff is set for times in UTC and usually set on the (almost
    all) platforms which have C-level support, otherwise is NA.
  * There are comprehensive validity checks on the structure of
    objects of class "POSIXlt" when converting (including formatting
    and printing).  (This avoids mis-conversions of hand-crafted
    objects.)
  * There is some support for using the native date-time routines on
    macOS: this is only viable on recent versions (e.g. 12.6 and 13)
    and does get wrong some historical changes (before 1900, during
    WWII).  Use of --with-internal-tzone remains the default.
  * as.POSIXct(&lt;numeric&gt;) and as.POSIXlt(.) (without specifying
    origin) now work.  So does as.Date(&lt;numeric&gt;).
  * as.Date.POSIXct(., tz) now treats several tz values, notably
    "GMT" as equivalent to "UTC", proposed and improved by Michael
    Chirico and Joshua Ulrich in PR#17674.
  * Experimental balancePOSIXlt() utility allows using "ragged" and
    or out-of-range "POSIXlt" objects more correctly, e.g., in
    subsetting and subassignments.  Such objects are now documented.
    More experimentally, a "POSIXlt" object may have an attribute
    "balanced" indicating if it is known to be filled or fully
    balanced.
  * Functions axis.Date() and axis.POSIXct() are rewritten to gain
    better default tick locations and better default formats by using
    prettyDate(). Thanks to Swetlana Herbrandt.
  * The mapping of Windows' names for time zones to IANA's 'Olson'
    names has been updated.  When ICU is available (it is by
    default), it is used to get a mapping for the current region set
    in Windows.  This can be overridden by setting environment
    variable TZ to the desired Olson name - see OlsonNames() for
    those currently available.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 16
    and so packages that provide graphics devices should be
    reinstalled.
  * The grDevices and grid packages have new functions for rendering
    typeset glyphs, primarily: grDevices::glyphInfo() and
    grid::grid.glyph().
    Rendering of typeset glyphs is only supported so far on the
    Cairo-based graphics devices and on the pdf() and quartz()
    devices.
  * The defined behaviour for "clear" and "source" compositing
    operators (via grid::grid.group()) has been changed (to align
    better with simple interpretation of original Porter-Duff
    definitions).
  * Support for gradients, patterns, clipping paths, masks, groups,
    compositing operators, and affine transformations has been added
    to the quartz() device.
  INSTALLATION on a UNIX-ALIKE:
  * A system installation of generic LAPACK 3.10.0 or later will be
    preferred to the version in the R sources.
    configure option --with-lapack=no (equivalently --without-lapack)
    forces compilation of the internal LAPACK sources.
    If --with-lapack is not specified, a system liblapack is looked
    for and used if it reports version 3.10.0 or later and does not
    contain BLAS routines.
    Packages using LAPACK will need to be reinstalled if this changes
    to using an external library.
  * On aarch64 Linux platforms using GCC, configure now defaults to
  - fPIC (instead of -fpic), as desired in PR#18326.
  * configure now checks conversion of datetimes between POSIXlt and
    POSIXct around year 2020.  Failure (which has been seen on
    platforms missing tzdata) is fatal.
  * If configure option --with-valgrind-instrumentation is given
    value 1 or 2, option --with-system-valgrind-headers is now the
    default and ignored (with a warning).  It is highly recommended
    that the system headers are installed alongside valgrind: they
    are part of its packaging on some Linux distributions and
    packaged separately (e.g. in the valgrind-devel RPM) on others.
    configure will give a warning if they are not found.
    The system headers will be required in a future release of R to
    build with valgrind instrumentation.
  * libcurl 8.x is now accepted by configure: despite a change in
    major version number it changes neither API nor ABI.
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools43, an update of the Rtools42 toolchain.  It is
    based on gcc 12 and newer versions of MinGW-W64, binutils and
    libraries.  At this time R-devel can still be built using
    Rtools42 without changes, but when R-devel is installed via the
    installer, it will by default look for Rtools43.
  * Old make targets rsync-extsoft and 32-bit ones that are no longer
    needed have been removed.
  * Default builds (including for packages) no longer select C99.
    Thus the C standard used is the default for the compiler, which
    for the toolchain in Rtools43 is C17.  (This is consistent with
    Unix builds.)
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++17 where
    available (which it is on all currently checked platforms): if
    not C++14 or C++11 is used if available otherwise C++ is not
    supported.
  * USE_FC_LEN_T is the default: this uses the correct
    (compiler-dependent) prototypes for Fortran BLAS/LAPACK routines
    called from C/C++, and requires adjustment of many such calls -
    see 'Writing R Extensions' SS6.6.1.
  * There is initial support for C++23 as several compilers are now
    supporting -std=c++23 or -std=c++2b or similar.  As for C++20,
    there no additional configure checks for C++23 features beyond a
    check that the compiler reports a __cplusplus value greater than
    that in the C++20 standard.  C++ feature tests should be used.
  * There is support for a package to indicate the version of the C
    standard which should be used to compile it, and for the
    installing user to specify this.  In most cases R defaults to the
    C compiler's default standard which is C17 (a `bug-fix' of C11) -
    earlier versions of R or compilers may have defaulted to C99.
    Current options are:
    USE_C17 Use a standard that is at most C17.  The intention is to
    allow legacy packages to still be installed when later C
    standards become the default, including packages using new
    keywords as identifiers or with K&amp;R-style function
    declarations.  This will use C17 if available, falling back
    to C11.
    USE_C90 Use the C90 (aka C89) standard.  (As that standard did
    not require compilers to identify that version, all we can
    verify is that the compiler does not claim to be using a
    later standard.  It may accept C99 features - for example
    clang accepts // to make comments.)
    USE_C99 Use the C99 standard. This should be rarely needed - it
    avoids the few new features of C11/C17 which can be useful if
    a package assumes them if C17 is specified and they are not
    implemented.
    USE_C23 Use C23 (or in future, later).  Compiler/library support
    for C23 is still being implemented, but LLVM clang from
    15.0.0 and the upcoming GCC 13 have quite extensive support.
    These can be specified as part of the SystemRequirements field in
    the package's DESCRIPTION file or _via_ options --use-C17 and so
    on of R CMD INSTALL and R CMD SHLIB.
    For further details see "Writing R Extensions" SS1.2.5.
  * (Windows) A src/Makefile.ucrt or src/Makefile.win file is now
    included after R_HOME/etcR_ARCH/Makeconf and so no longer needs
    to include that file itself.  Installation of a package with such
    a file now uses a site Makevars file in the same way as a package
    with a src/Makevars.win file would.
  * configure is now passed crucial variables such as CC and CFLAGS
    in its environment, as many packages were not setting them (as
    documented in 'Writing R Extensions' SS1.2).
    This has most effect where configure is used to compile parts of
    the package - most often by cmake or libtool which obfuscate the
    actual compile commands used.
    Also used for configure.win and configure.ucrt on Windows.
  FORTRAN FLAGS:
  * The flag -fno-optimize-sibling-calls is no longer forced for
    gfortran 7 and later.  It should no longer be needed now using
    'hidden' character-length arguments when calling BLAS/LAPACK
    routines from C/C++ is the default even for packages.  (Unless
    perhaps packages call Fortran code from C/C++ without using R's
    headers and without allowing for these arguments.)
  C-LEVEL FACILITIES:
  * The deprecated S-compatibility macros DOUBLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * The deprecated legacy typedefs of Sint and Sfloat in header R.h
    are no longer defined, and that header no longer includes header
    limits.h from C nor climits from C++.
  * New macro CAD5R() is provided in Rinternals.h and used in a few
    places in the R sources.
  * ALTREP now supports VECSXP vectors. Contributed by Gabor Csardi
    in PR#17620.
  * The Rcomplex definition (in header R_ext/Complex.h) has been
    extended to prevent possible mis-compilation when interfacing
    with Fortran (PR#18430).  The new definition causes compiler
    warnings with static initializers such as {1, 2}, which can be
    changed to {.r=1, .i=2}.
    Using the new definition from C++ depends on compiler extensions
    supporting C features that have not been incorporated into the
    C++ standards but are available in g++ and clang++: this may
    result in C++ compiler warnings but these have been worked around
    for recent versions of common compilers (GCC, Apple/LLVM clang,
    Intel).
    It is intended to change the inclusion of header R_ext/Complex.h
    by other R headers, so C/C++ code files which make use of
    Rcomplex should include that header explicitly.
  UTILITIES:
  * R CMD check does more checking of package .Rd files, warning
    about invalid email addresses and (some) invalid URIs and noting
    empty \item labels in description lists.
  * R CMD check now also reports problems when reading package news
    in md (file NEWS.md) and (optionally) plain text (file NEWS)
    formats.
  * _R_CHECK_TIMINGS_ defaults to a value from the environment even
    for R CMD check --as-cran; this allows for exceptionally fast or
    slow platforms.
    It now applies to checking PDF and HTML versions of the manuals,
    and 'checking CRAN incoming feasibility'.
  * R CMD check can optionally (but included in --as-cran) check
    whether HTML math rendering _via_ KaTeX works for the package .Rd
    files.
  * Non-interactive debugger invocations can be trapped by setting
    the environment variable _R_CHECK_BROWSER_NONINTERACTIVE_ to a
    true value.  This is enabled by R CMD check --as-cran to detect
    the use of leftover browser() statements in the package.
  * The use of sprintf and vsprintf from C/C++ has been deprecated in
    macOS 13 and is a known security risk.  R CMD check now reports
    (on all platforms) if their use is found in compiled code:
    replace by snprintf or vsnprintf respectively. [*NB:* whether
    such calls get compiled into the package is platform-dependent.]
  * Where recorded at installation, R CMD check reports the C and
    Fortran compilers used to build R.
    It reports the OS in use (if known, as given by osVersion) as
    well as that R was built for.
    It notes if a C++ standard was specified which is older than the
    current default: many packages have used C++11 to mean 'not
    C++98' - as C++11 is the minimum supported since R 4.0.0, that
    specification can probably be removed.
  * R CMD INSTALL reports the compilers (and on macOS, the SDK) used,
    and this is copied to the output of R CMD check.
    Where a C++ standard is specified, it is reported.
  * R CMD check's 'checking compilation flags in Makevars' has been
    relaxed to accept the use of flags such as -std=f2008 in
    PKG_FFLAGS.
  * tools::buildVignettes() has a new argument skip, which is used by
    R CMD check to skip (and note) vignettes with unavailable
    \VignetteDepends (PR#18318).
  * New generic .AtNames() added to enable class-specific completions
    after @. The formerly internal function findMatches() is now
    exported, mainly for use in methods for .DollarNames() and
    .AtNames().
  DEPRECATED AND DEFUNCT:
  * default.stringsAsFactors() is defunct.
  * Calling as.data.frame.&lt;class&gt;() directly (for 12 atomic classes)
    is going to be formally deprecated, currently activated by
    setting the environment variable
    _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ to non-empty, which also
    happens in R CMD check --as-cran.
  BUG FIXES:
  * Hashed environments with sizes less than 5 can now grow.
    (Reported to R-devel by Duncan Garmonsway.)
  * as.character(&lt;Rd&gt;, deparse = TRUE) failed to re-escape curly
    braces in LaTeX-like text.  (Reported by Hadley Wickham in
    PR#18324.)
  * library() now passes its lib.loc argument when requiring Depends
    packages; reported (with fix) in PR#18331 by Mikael Jagan.
  * R CMD Stangle: improved message about 'Output' files.
  * head(x, n) and tail(x, n) now signal an error if n is not
    numeric, instead of incidentally "working" sometimes returning
    all of x.  Reported and discussed by Colin Fay, in PR#18357.
  * The "lm" method for summary() now gives the correct F-statistic
    when the model contains an offset.  Reported in PR#18008.
  * C() and `contrasts&lt;-`() now preserve factor level names when
    given a function object (as opposed a function name which did
    preserve names). Reported in PR#17616.
  * c(a = 1, 2)[[]] no longer matches 2 but rather signals a
    _classed_ error.  Reported and analysed by Davis Vaughan in
    PR#18367, a duplicate of PR#18004, by Jan Meis et al.  For
    consistency, NULL[[]] is also erroneous now.  x[[]] &lt;- v gives an
    error of the same class "MissingSubscriptError".
  * The relist() function of utils now supports NULL elements in the
    skeleton (PR#15854).
  * ordered(levels = *) (missing x) now works analogously to factor(,
    ordered=TRUE); reported (with fix) by Achim Zeileis in PR#18389.
  * User-defined Rd macro definitions can now span multiple lines,
    thanks to a patch from Duncan Murdoch. Previously, the Rd parser
    silently ignored everything after the first line.
  * Plain-text help (tools::Rd2txt()) now preserves an initial blank
    line for text following description list items.
  * tools::Rd2HTML() and tools::Rd2latex() no longer split \arguments
    and \value lists at Rd comments.
  * tools::Rd2latex() now correctly handles optional text outside
    \items of argument lists as well as bracketed text at the
    beginning of sections, e.g., \value{[NULL]}.
  * as.character(&lt;POSIXt&gt;) now behaves more in line with the methods
    for atomic vectors such as numbers, and is no longer influenced
    by options().  Ditto for as.character(&lt;Date&gt;).  The
    as.character() method gets arguments digits and OutDec with
    defaults _not_ depending on options().  Use of as.character(*,
    format = .) now warns.
  * Similarly, the as.character.hexmode() and *.octmode() methods
    also behave as good citizen methods and back compatibility option
    keepStr = TRUE.
  * The as.POSIXlt(&lt;POSIXlt&gt;) and as.POSIXct(&lt;POSIXct&gt;) default
    methods now do obey their tz argument, also in this case.
  * as.POSIXlt(&lt;Date&gt;) now does apply a tz (time zone) argument, as
    does as.POSIXct(); partly suggested by Roland Fuss on the R-devel
    mailing list.
  * as.Date.POSIXlt(x) now also works when the list components are of
    unequal length, aka "partially filled" or "ragged".
  * expand.model.frame() looked up variables in the wrong environment
    when applied to models fitted without data.  Reported in
    PR#18414.
  * time() now (also) uses the ts.eps = getOption("ts.eps") argument
    and thus by default rounds values very close to the start (or
    end) of a year.  Based on a proposal by Andre"i V. Kostyrka on
    R-help.
  * Printing of a factanal() result with just one factor and sort =
    TRUE now works regularly, fixing PR#17863 by Timothy Bates,
    thanks to the 'R Contributors' working group.
  * Printing 0-length objects of class "factor", "roman", "hexmode",
    "octmode", "person", "bibentry", or "citation" now prints
    something better, one of which fixes PR#18422, reported by
    Benjamin Feakins.
  * Sys.timezone() queries timedatectl only if systemd is loaded;
    addressing a report by Jan Gorecki in PR#17421.
  * The formula method of cor.test() had scoping problems when
    environment(formula) was not the calling environment; reported
    with a patch proposal by Mao Kobayashi in PR#18439.
  * attach() of an environment with active bindings now preserves the
    active bindings.  Reported by Kevin Ushey in PR#18425.
  * BLAS detection now works also with system-provided libraries not
    available as regular files.  This fixes detection of the
    Accelerate framework on macOS since Big Sur.  Reported by David
    Novgorodsky.
  * download.file() gives a helpful error message in case of an
    invalid download.file.method option, thanks to Colin Fay's report
    in PR#18455.
  * Sporadic crashes of Rterm when using completion have been fixed.
  * Rprof() is now more reliable.  A livelock in thread
    initialization with too short sampling interval has been fixed on
    macOS.  A deadlock in using the C runtime has been fixed on
    Windows.  A potential deadlock has been prevented on Unix.
  * Cursor placement in Rgui now works even after a fixed-width font
    is selected.
  * Mandatory options (options()) are now set on startup so that
    saving and restoring them always works (PR#18372).
  * Package installation, R CMD INSTALL or install.packages(*), now
    parses each of the &lt;pkg&gt;/R/*.R files individually instead of
    first concatenating and then parse()ing the large resulting file.
    This allows parser or syntax errors to be diagnosed with correct
    file names and line numbers, thanks to Simon Dedman's report and
    Bill Dunlap's patch in PR#17859.
    This _does_ require syntactically self contained R source files
    now, fixing another inadvertent bug.
  * predict.lm(&lt;model with offset&gt;) now finds the offset in the
    correct environment, thanks to Andr'e Gillibert's report and patch
    in PR#18456.
  * getInitial(&lt;formula&gt;) now finds the selfStart model in the
    correct environment.  (Reported by Ivan Krylov in PR#18368.)
  * Fix for possible segfault when using recently-added graphics
    features, such as gradients, clipping paths, masks, and groups
    with pdf(file=NULL).
  * class(m) &lt;- class(m) no longer changes a matrix m by adding a
    class _attribute_.
  * packageDate(pkg) now only warns once if there is no pkg.
  * When ts() creates a multivariate time series, "mts", it also
    inherits from "array" now, and is.mts() is documented _and_
    stricter.
  * Rd2txt() now preserves line breaks of \verb Rd content and from
    duplicated \cr.  The former also fixes the rendering of verbatim
    output from Rd \Sexpr in plain-text help.
  * uniroot(f, interval) should no longer wrongly converge _outside_
    the interval in some cases where abs(f(x)) == Inf for an x at the
    interval boundary, thanks to posts by Ben Bolker and Serguei
    Sokol on R-devel.
  * Vectorized alpha handling in palette functions such as in gray(),
    rainbow(), or hcl.colors() works correctly now, thanks to Achim
    Zeileis' report and patch in PR#18476.
  * Formatting and print()ing of bibentry objects has dropped the
    deprecated citation.bibtex.max argument, such that the bibtex
    argument's default for print.bibentry() depends directly on the
    citation.bibtex.max option, whereas in format.bibentry() the
    option no longer applies.
  * Attempting to use a character string naming a foreign function
    entry point in a foreign function call in a package will now
    signal an error if the packages has called R_forceSymbols to
    specify that symbols must be used.
  * An error in table() could permanently set options(warn=2)
    promoting all subsequent warnings to errors.
  * The sigma() function gave misleading results for binary GLMs.  A
    new method for objects of class "glm" returns the square root of
    the estimate of the dispersion parameter using the same
    calculation as summary.glm().
  * bs() and ns() in the (typical) case of automatic knot
    construction, when some of the supposedly inner knots coincide
    with boundary knots, now moves them inside (with a warning),
    building on PR#18442 by Ben Bolker.
  * R CMD on Windows now skips the site profile with --no-site-file
    and --vanilla even when R_PROFILE is set (PR#18512, from Kevin
    Ushey).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1686916800">- CHANGES IN R 4.3.1:
  C-LEVEL FACILITIES:
  * The C-level API version of R's integrate(), Rdqags() in Applic.h,
    now returns the correct number of integrand evaluations neval,
    fixing PR#18515 reported and diagnosed by Stephen Wade.
  * The C prototypes for LAPACK calls dspgv and dtptrs in
    R_exts/Lapack.h had one too many and one too few character length
    arguments - but this has not caused any known issues. To get the
    corrected prototypes, include
    [#]include &lt;Rconfig.h&gt; // for PR18534fixed
    [#]ifdef PR18534fixed
    [#] define usePR18534fix 1
    [#]endif
    [#]include &lt;R_exts/Lapack.h&gt;
    in your C/C++ code (PR#18534).
  INSTALLATION:
  * Many of the checks of esoteric Internet operations and those
    using unreliable external sites have been moved to a new target
    that is not run by default and primarily intended for the core
    developers.  To run them use
    cd tests; make test-Internet-dev
  BUG FIXES:
  * .S3methods(), typically called from methods(), again marks
    methods from package base as visible.
    Also, the visibility of non-base methods is again determined by
    the method's presence in search().
  * tools::Rdiff() is now more robust against invalid strings, fixing
    installation tests on Windows without Rtools installed
    (PR#18530).
  * Fix (new) bug in hcl.colors(2, *), by Achim Zeileis (PR#18523).
  * head(., &lt;illegal&gt;) and tail(..) now produce more useful "Error in
    ...." error messages, fixing PR#18362.
  * Package code syntax on Windows is checked in UTF-8 when UTF-8 is
    the native encoding.
  * na.contiguous(x) now also returns the first run, when it is at
    the beginning and there is a later one of the same length;
    reported to R-devel, including a fix, by Georgi Boshnakov.
    Further, by default, it modifies only an existing attr(*,"tsp")
    but otherwise no longer sets one.
  * chol(&lt;not pos.def&gt;, pivot = &lt;T|F&gt;) now gives a correct error or
    warning message (depending on pivot), thanks to Mikael Jagan's
    (PR#18541).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1699012800">- CHANGES IN R 4.3.2:
  NEW FEATURES:
  * The default initialization of the "repos" option from the
    repositories file at startup can be skipped by setting
    environment variable R_REPOSITORIES to NULL such that
    getOption("repos") is empty if not set elsewhere.
  * qr.X() is now an implicit S4 generic in methods.
  * iconv(to = "ASCII//TRANSLIT") is emulated using substitution on
    platforms which do not support it (notably Alpine Linux).  This
    should give a human-readable conversion in ASCII on all platforms
    (rather than NA_character_).
  * trans3d() gains options continuous and verbose addressing the
    problem of possible "wrap around" when projecting too long
    curves, as reported by Achim Zeileis in PR#18537.
  * tools::showNonASCII() has been rewritten to work better on macOS
    14 (which has a changed implementation of iconv()).
  * tiff(type = "quartz") (the default on macOS) now warns if
    compression is specified: it continues to be ignored.
  INSTALLATION on a UNIX-ALIKE:
  * There is some support for building with Intel's LLVM-based
    compilers on x86_64 Linux, such as (C) icx, (C++) ipcx and
    (Fortran) ifx from oneAPI 2023.x.y.
  * There is support for using LLVM's flang-new as the Fortran
    compiler from LLVM 16.0.x (preferably 17.0.0 or later).
  UTILITIES:
  * R CMD check reports the use of the Fortran 90 random number
    generator RANDOM_NUMBER() and the subroutines to initialize it.
    'Writing R Extensions' has example code to use R's RNGs from
    Fortran.
  BUG FIXES:
  * substr(x, n, L) &lt;- cc now works (more) correctly for multibyte
    UTF-8 strings x when L &gt; nchar(x), thanks to a report and patch
    by 'Architect 95'.
  * contrib.url(character()) now returns 0-length character() as
    documented, which also avoids spurious warnings from
    available.packages() et al. in the edge case of an empty vector
    of repository URLs.
  * readChar(., 4e8) no longer fails, thanks to Kodi Arfer's report
    (PR#18557).
  * lapply(&lt;list&gt;, as.data.frame) no longer warns falsely for some
    base vector components.
  * Communication between parent and child processes in the multicore
    part of parallel could fail on platforms that do not support an
    arbitrarily large payload in system functions read()/write() on
    pipes (seen on macOS where a restriction to INT_MAX bytes is
    documented, without doing a partial read unlike Linux). The
    payload is now split into 1Gb chunks to avoid that problem.
    (PR#18571)
  * qqplot(x,y, conf.level=.) gives better confidence bounds when
    length(x) != length(y), thanks to Alexander Ploner's report and
    patch proposal (PR#18557).
  * norm(&lt;0-length&gt;, "2") now gives zero instead of an error, as all
    the other norm types, thanks to Mikael Jagan's PR#18542.
  * Build-stage Rd macros \packageAuthor and \packageMaintainer now
    process Authors@R, fixing NA results when the package DESCRIPTION
    omits Author and Maintainer fields.
  * Formatting and printing complex numbers could give things like
    0.1683-0i because of rounding error: -0i is now replaced by +0i.
  * postscript() refused to accept a title comment containing the
    letter "W" (PR#18599).
  * isoreg(c(1,Inf)) signals an error instead of segfaulting, fixing
    PR#18603.
  * tiff(type = "Xlib") was only outputting the last page of
    multi-page plots.
  * tools::latexToUtf8() again knows about \~{n} and other letters
    with tilde, fixing a regression in R 4.3.0, and about \^{i} as an
    alternative to \^{\i} (similarly with other accents).
    Furthermore, LaTeX codes for accented I letters are now correctly
    converted, also fixing related mistakes in
    tools::encoded_text_to_latex().
  * tar(*, tar = "internal") no longer creates out-of-spec tar files
    in the very rare case of user or group names longer than 32
    bytes, fixing PR#17871 with thanks to Ivan Krylov.
  * When using the "internal" timezone datetime code, adding a
    fraction of a second no longer adds one second, fixing PR#16856
    from a patch by Ivan Krylov.
  * tools::checkRd() no longer produces spurious notes about
    "unnecessary braces" from multi-line Rd results of \Sexpr macros.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1709208000">- CHANGES IN R 4.3.3:
  NEW FEATURES:
  * iconv() now fixes up variant encoding names such as "utf8"
    case-insensitively.
  DEPRECATED AND DEFUNCT:
  * The legacy encoding = "MacRoman" is deprecated in pdf() and
    postscript(): support was incomplete in earlier versions of R.
  BUG FIXES:
  * Arguments are now properly forwarded to methods on S4 generics
    with ... in the middle of their formal arguments. This was broken
    for the case when a method introduced an argument but did not
    include ... in its own formals. Thanks to Herv'e Pag`es for the
    report PR#18538.
  * Some invalid file arguments to pictex(), postscript() and xfig()
    opened a file called NA rather than throw an error.  These
    included postscript(NULL) (which some people expected to work
    like pdf(NULL)).
  * Passing filename = NA to svg(), cairo_pdf(), cairo_ps() or the
    Cairo-based bitmap devices opened a file called NA: it now throws
    an error.
  * quartz(file = NA) opened a file called NA, including when used as
    a Quartz-based bitmap device.  It now gives an error.
  * rank(&lt;long vector&gt;) now works, fixing PR#18617, thanks to Ilia
    Kats.
  * seq.int() did not adequately check its length.out argument.
  * match(&lt;POSIXct&gt;, .) is correct again for differing time zones,
    ditto for "POSIXlt", fixing PR#18618 reported by Bastian Klein.
  * drop.terms(*, dropx = &lt;0-length&gt;) now works, fixing PR#18563 as
    proposed by Mikael Jagan.
  * drop.terms(*) keeps + offset(.) terms when it should, PR#18565,
    and drop.terms() no longer makes up a response, PR#18566, fixing
    both bugs thanks to Mikael Jagan.
  * getS3method("t", "test") no longer finds the t.test() function,
    fixing PR#18627.
  * pdf() and postscript() support for the documented Adobe encodings
    "Greek" and "Cyrilllic" was missing (although the corresponding
    Windows' codepages could be used).
  * Computations of glyph metric information for pdf() and
    postscript() did not take into account that transliteration could
    replace one character by two or more (only seen on macOS 14) and
    typically warned that the information was not known.
  * rank(x) no longer overflows during integer addition, when
    computing rank average for largish but not-yet long vector x,
    fixing PR#18630, thanks to Ilia Kats.
  * list.files() on Windows now returns also files with names longer
    that 260 bytes (the Windows limit is 260 characters).
    Previously, some file names particularly with 'East Asian'
    characters were omitted.
  * cov2cor(&lt;0 x 0&gt;) now works, fixing PR#18423 thanks to Mikael
    Jagan and Elin Waring.
  * cov2cor(&lt;negative diagonal&gt;) and similar now give one warning
    instead of two, with better wording, fixing PR#18424 thanks to
    Mikael Jagan.
  * tools:: startDynamicHelp() now ensures port is in proper range,
    fixing PR#18645.
  * pbeta(x, a,b) is correct now for x=0 or 1 in the boundary cases
    where a or b or both are 0, fixing PR#18672 thanks to Michael
    Fay.
  * pmatch(x, table) for large table, also called for data frame row
    selection, dfrm[nm, ], is now interruptible, fixing PR#18656.
  * predict(&lt;rank-deficient lm&gt;, newdata=*) fix computing of nbasis,
    see Russ Lenth's comment 29 in PR#16158.
  * Added a work-around for a bug in macOS 14.3.1 and higher which
    prevents R plots in the Quartz Cocoa device from updating on
    screen.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1713960000">- CHANGES IN R 4.4.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Startup banners, R --version, sessionInfo() and R CMD check no
    longer report (64-bit) as part of the platform as this is almost
    universal - the increasingly rare 32-bit platforms will still
    report (32-bit).
    On Windows, ditto for window titles.
  * is.atomic(NULL) now returns FALSE, as NULL is not an atomic
    vector.  Strict back-compatibility would replace is.atomic(foo)
    by (is.null(foo) || is.atomic(foo)) but should happen only
    sparingly.
  NEW FEATURES:
  * The confint() methods for "glm" and "nls" objects have been
    copied to the stats package.  Previously, they were stubs which
    called versions in package MASS. The MASS namespace is no longer
    loaded if you invoke (say) confint(glmfit).  Further, the "glm"
    method for profile() and the plot() and pairs() methods for class
    "profile" have been copied from MASS to stats.  (profile.nls()
    and plot.profile.nls() were already in stats.)
  * The confint() and profile methods for "glm" objects have gained a
    possibility to do profiling based on the Rao Score statistic in
    addition to the default Likelihood Ratio. This is controlled by a
    new test = argument.
  * The pairs() method for "profile" objects has been extended with a
    which = argument to allow plotting only a subset of the
    parameters.
  * The "glm" method for anova() computes test statistics and
    p-values by default, using a chi-squared test or an F test
    depending on whether the dispersion is fixed or free.  Test
    statistics can be suppressed by giving argument test a false
    logical value.
  * In setRepositories() the repositories can be set using their
    names via name = instead of index ind =.
  * methods() and .S3methods() gain a all.names option for the (rare)
    case where functions starting with a . should be included.
  * Serializations can now be interrupted (e.g., by Ctrl-C on a
    Unix-alike) if they take too long, e.g., from save.image(),
    thanks to suggestions by Ivan Krylov and others on R-devel.
  * New startup option --max-connections to set the maximum number of
    simultaneous connections for the session.  Defaults to 128 as
    before: allowed values up to 4096 (but resource limits may in
    practice restrict to smaller values).
  * R on Windows (since Windows 10 2004) now uses the new Segment
    Heap allocator. This may improve performance of some
    memory-intensive applications.
  * When R packages are built, typically by R CMD build &lt;pkg&gt;, the
    new --user=&lt;build_user&gt; option overrides the (internally
    determined) user name, currently Sys.info()["user"] or LOGNAME.
    This is a (modified) fulfillment of Will Landau's suggestion in
    PR#17530.
  * tools::testInstalledBasic() gets new optional arguments outDir
    and testSrcdir, e.g., allowing to use it in a &lt;builddir&gt; !=
    &lt;srcdir&gt; setup, and in standard "binary" Windows installation
  * if* a source tests/ folder is present.
  * range(&lt;DT_with_Inf&gt;, finite = TRUE) now work for objects of class
    "Date", "POSIXct", and "POSIXlt" with infinite entries,
    analogously to range.default(), as proposed by Davis Vaughan on
    R-devel.  Other range()-methods can make use of new function
    .rangeNum().
  * New .internalGenerics object complementing .S3PrimitiveGenerics,
    for documentation and low-level book-keeping.
  * grid() now invisibly returns the x- and y- coordinates at which
    the grid-lines were drawn.
  * norm(., type) now also works for complex matrices.
  * kappa(., exact = TRUE, norm = *) now works for all norms and also
    for complex matrices.  In symmetric / triangular cases, the new
    argument uplo = "U" | "L" allows the upper or lower triangular
    part to be specified.
  * memDecompress(type = "unknown") recognizes compression in the
    default 'zlib' format as used by memCompress(type = "gzip").
  * memCompress() and memDecompress() will use the libdeflate library
    (&lt;https://github.com/ebiggers/libdeflate&gt;) if installed.  This
    uses the same type of compression for type = "gzip" but is 1.5-2x
    faster than the system libz library on some common platforms: the
    speed-up may depend on the library version.
  * diff() for objects of class "Date", "POSIXct", and "POSIXlt"
    accepts a units argument passed via ....
  * Dynamic help now does a much better job of rendering package
    DESCRIPTION metadata.
  * Rprof() gains an event argument and support for elapsed (real)
    time profiling on Unix (PR#18076).
  * filled.contour() gains a key.border argument.
  * tools::update_pkg_po() gets arguments pot_make and mo_make for
    _not_ re-making the corresponding files, and additionally a
    verbose argument.
  * Hexadecimal string colour specifications are now accepted in
    short form, so, for example, we can use "#123", which is
    equivalent to "#112233".
    Thanks to MikeFC for the original idea and Ella Kaye, Malcolm
    Barrett, George Stagg, and Hanne Oberman for the patch.
  * Plain-text help shows \var markup by angle brackets.
  * The new experimental primitive function declare() is intended to
    eventually allow information about R code to be communicated to
    the interpreter, compiler, and code analysis tools. The syntax
    for declarations is still being developed.
  * Functions psmirnov(), qsmirnov() and rsmirnov() in package stats
    have had argument two.sided renamed to alternative, to take into
    account that the permutation distributions of the one-sided
    statistics can be different in the case of ties.  Consequence of
    PR#18582.
  * sort() is now an implicit S4 generic in methods.
  * Formatting and printing, format(z), print(z), of complex vectors
    z no longer zap relatively small real or imaginary parts to zero,
    fixing PR#16752.  This is an API change, as it was documented
    previously to round real and imaginary parts together on purpose,
    producing nicer looking output.  As mentioned, e.g. in the PR,
    this change is compatible with many other "R-like" programming
    environments.
    We have simplified the internal code and now basically format the
    real and imaginary parts independently of each other.
  * New experimental functions Tailcall() and Exec() to support
    writing stack-space-efficient recursive functions.
  * Where characters are attempted to be plotted by pdf(),
    postscript() and xfig() which are not in the selected 8-bit
    character set (most often Latin-1) and the R session is using a
    UTF-8 locale, the warning messages will show the UTF-8 character
    rather than its bytes and one dot will be substituted per
    character rather than per byte.  (Platforms whose iconv() does
    transliteration silently plot the transliteration.)
    In a UTF-8 locale some transliterations are now done with a
    warning (e.g., dashes and Unicode minus to hyphen, ligatures are
    expanded, permille (‰) is replaced by o/oo), although the OS may
    have got there first.  These are warnings as they will continue
    to be replaced by dots in earlier versions of R.
  * The matrix multiplication functions crossprod() and tcrossprod()
    are now also primitive and S3 generic, as %*% had become in R
    4.3.0.
  * source() and example() have a new optional argument catch.aborts
    which allows continued evaluation of the R code after an error.
  * The non-Quartz tiff() devices allow additional types of
    compression if supported by the platform's libtiff library.
  * The list of base and recommended package names is now provided by
    tools::standard_package_names().
  * cairo_pdf() and cairo_ps() default to onefile = TRUE to closer
    match pdf() and postscript().
  * New option catch.script.errors provides a documented way to catch
    errors and then continue in non-interactive use.
  * L %||% R newly in base is an expressive idiom for the phrases
    if(!is.null(L)) L else R or if(is.null(L)) R else L.
  * The return value from warnings() now always inherits from
    "warnings" as documented, now also in the case of no warnings
    where it previously returned NULL.
  * as.complex("1i") now returns 0 + 1i instead of NA with a warning.
  * z &lt;- c(NA, 1i) now keeps the imaginary part Im(z[1]) == 0, no
    longer coercing to NA_complex_.  Similarly, cumsum(z) correctly
    sums real and imaginary parts separately, i.e., without
    "crosstalk" in case of NAs.
  * On Alpine Linux iconv() now maps "latin2", "latin-2", "latin9"
    and "latin-9" to encoding names the OS knows about
    (case-insensitively).
  * iconv(sub = "Unicode") now always zero-pads to four (hex) digits,
    rather than to 4 or 8.  (This seems to have become the convention
    once Unicode restricted the number of Unicode points to 2^21 - 1
    and so will never need more than 6 digits.)
  * NCOL(NULL) now returns 0 instead of 1, for consistency with
    cbind().
  * The information for the Euro glyph missing from the Adobe .afm
    files for the Courier, Helvetica and Times families has been
    copied from their URW equivalents - this will improve vertical
    centring in the pdf() and postscript() devices.
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.12.0.  The changes are almost entirely cosmetic.
  * The included LAPACK sources have been updated to version 3.12.0
    and some further double-complex routines added.
  * There are new font families for the 2014--5 URW 2.0 fonts (see
    ?pdf) which are included in recent versions of Ghostscript.
    These have font widths for most Greek glyphs and a few others
    which were missing from the original versions (whose font
    families remain available for reproducibility, although
    Ghostscript-based viewers will render using the 2.0 versions).
  * Improve the large-n efficiency of as.matrix(&lt;dist&gt;), thanks an R
    contributors effort, notably by Tim Taylor and Heather Turner,
    see PR#18660.
  * The default and numeric methods of all.equal() get a check.class
    option.
  * zapsmall() gets new optional arguments, function mFUN and min.d,
    for extra flexibility; fulfills a wish in PR#18199.  Also, it is
    now an implicit S4 generic in package methods.
  * The Rd filter for aspell() gains an ignore argument.
  * New generic function sort_by(), primarily useful for the
    data.frame method which can be used to sort rows of a data frame
    by one or more columns.
  * The icence headers for the RPC code in src/extra/xdr have been
    updated to use the GPL-compatible licence published by Oracle
    America in 2010.
  * New function pkg2HTML() in tools to create single-page HTML
    reference manuals for R packages.
  * The byte code evaluator now uses less C stack space for recursive
    calls to byte-compiled functions. It also makes more of an effort
    to avoid allocations for scalar return values.
  * New completion option backtick (disabled by default) allows
    non-syntactic completions to be wrapped in backquotes. This is
    currently only useful for Jupyter notebooks via the IRkernel
    package, and may cause problems for other backends.
  INSTALLATION:
  * The parser has been updated to work with bison 3.8.2, which is
    now used for the pre-generated parsers in gram.c, file.c, and
    gramRd.c. A few parser error messages have changed, which may
    affect code that relies on exact messages.
  INSTALLATION on a UNIX-ALIKE:
  * System valgrind headers are now required to use configure option
  - -with-valgrind-instrumentation with value 1 or 2.
  * configure will warn if it encounters a 32-bit build, as that is
    nowadays almost untested.
  * Environment variable R_SYSTEM_ABI is no longer used and so no
    longer recorded in etc/Renviron (it was not on Windows and was
    only ever used when preparing package tools).
  * If the libdeflate library and headers are available, libdeflate
    rather than libz is used to (de)compress R objects in lazy-load
    databases.  Typically tasks spend up to 5% of their time on such
    operations, although creating lazy-data databases is one of the
    exceptions.
    This can be suppressed if the library is available by the
    configure option --without-libdeflate-compression.
  * configure option --enable-lto=check has not worked reliably since
    2019 and has been removed.
  * The minimum autoconf requirement for a maintainer build has been
    increased to autoconf 2.71.
    It is intended to increase this to 2.72 for R 4.5.0: the
    distributed configure file was generated using 2.72.
  * The minimum version requirement for an external LAPACK has been
    reduced to 3.9.0.
  * No default C++ compiler is set if no C++17 compiler is detected:
    there is no longer an automatic fallback to C++14 or C++11.
    Compilers from the last five years should have sufficient
    support: for others macros CXX and CXXSTD can be set in file
    config.site to provide a fallback if needed.
    The Objective-C++ compiler now by default uses the standard
    selected by R for C++ (currently C++17) rather than the default
    standard for the C++ compiler (which on macOS is still C++98).
  INSTALLATION on macOS:
  * A new configure option --with-newAccelerate makes use of Apple's
    'new' BLAS / LAPACK interfaces in their Accelerate framework.
    Those interfaces are only available in macOS 13.3 or later, and
    building requires SDK 13.3 or later (from the Command Line Tools
    or Xcode 14.3 or later).
    By default the option uses new Accelerate for BLAS calls: to also
    use it for LAPACK use option --with-newAccelerate=lapack.  The
    later interfaces provide LAPACK 3.9.1 rather than 3.2.1: 3.9.1 is
    from 2021-04 and does not include the improved algorithms
    introduced in LAPACK 3.10.0 (including for BLAS calls).
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools44, an update of the Rtools43 toolchain.  It is
    based on GCC 13 and newer versions of MinGW-W64, binutils and
    libraries (targeting 64-bit Intel CPUs).  R-devel can no longer
    be built using Rtools43 without changes.
  * Rtools44 has experimental support for 64-bit ARM (aarch64) CPUs
    _via_ the LLVM 17 toolchain using lld, clang/flang-new and
    libc++.
  UTILITIES:
  * R CMD check notes when S4-style exports are used without
    declaring a strong dependence on package methods.
  * tools::checkRd() (used by R CMD check) detects more problems with
    \Sexpr-based dynamic content, including bad nesting of \Sexprs
    and invalid arguments.
  * tools::checkRd() now reports Rd titles and section names ending
    in a period; this is ignored by R CMD check unless environment
    variable _R_CHECK_RD_CHECKRD_MINLEVEL_ is set to -5 or smaller.
  * R CMD check now notes Rd files without an \alias, as long
    documented in 'Writing R Extensions' §1.3.1.  The check for a
    missing \description has been moved from tools::checkRd() to
    tools::checkRdContents().
  * R CMD check now visits inst/NEWS.Rd and OS-specific man
    subdirectories when checking Rd files.
  * tools::checkDocFiles() and tools::checkRdContents() now also
    check internal Rd files by default, but "specially" (ignoring
    missing documentation of arguments).
  * R CMD Rdiff gets option --useEx.
  * R CMD check now warns on non-portable uses of Fortran KIND such
    as INTEGER(KIND=4) and REAL(KIND=8).
    To see the failing lines set environment variable
    _R_CHECK_FORTRAN_KIND_DETAILS_ to a true value.
  * When checking Rd files, R CMD check now notes some of the "lost
    braces" that tools::checkRd() finds.  Typical problems are Rd
    macros missing the initial backslash (e.g., code{...}), in-text
    set notation (e.g., {1, 2}, where the braces need escaping), and
    \itemize lists with \describe-style entries of the form
    \item{label}{description}.
  * R CMD INSTALL (and hence check) will compile C++ code with
  - DR_NO_REMAP if environment variable _R_CXX_USE_NO_REMAP_ is set
    to a true value.  It is planned that this will in future become
    the default for compiling C++.
  * The new built-in Rd macro \dontdiff{} can be used to mark example
    code whose output should be ignored when comparing check output
    to reference output (tests/Examples/&lt;pkg&gt;-Ex.Rout.save).  The
    \dontdiff tag, like \donttest, is _not_ shown on the rendered
    help page, so provides a clean alternative to ##
    IGNORE_RDIFF_(BEGIN|END) comments.
  * R CMD build when there is no NAMESPACE, now uses the recommended
    exportPattern("^[^.]"), instead of exporting everything.
  * R CMD check now warns about non-ASCII characters in the NAMESPACE
    file (in addition to R files). Such packages are not portable and
    may fail to install on some platforms.
  C-LEVEL FACILITIES:
  * Headers R_ext/Applic.h and R-ext/Linpack.h used to include
    R_ext/BLAS.h although this was undocumented and unneeded by their
    documented entry points.  They no longer do so.
  * New function R_missing(), factored out from do_missing(), used to
    fix PR#18579.
  * SEXP type S4SXP has been renamed to OBJSXP to support
    experimenting with alternative object systems.  The S4SXP value
    can still be used in C code but is now deprecated.  Based on
    contributions from the R Consortium's Object-Oriented Programming
    Working Group.
  * New function pow1p(x,y) for accurate (1+x)^y.
  * mkCharLenCE was incorrectly documented to take a size_t length
    but was implemented with int (and character strings in R are
    limited to 2^31 - 1 bytes).
  DEPRECATED AND DEFUNCT:
  * data() no longer handles zipped data from long-defunct (since R
    2.13.0) --use-zip-data installations.
  * The legacy graphics devices pictex() and xfig() are now
    deprecated.  They do not support recent graphics enhancements and
    their font handling is rudimentary. The intention is to retain
    them for historical interest as long as they remain somewhat
    functional.
  * Support for encoding = "MacRoman" has been removed from the pdf()
    and postscript() devices - this was a legacy encoding supporting
    classic macOS up to 2001 and no longer has universal libiconv
    support.
  * is.R() is deprecated as no other S dialect is known to be in use
    (and this could only identify historical dialects, not future
    ones).
    Further information on calls can be obtained by setting the
    environment variable _R_DEPRECATED_IS_R_ to error which turns the
    deprecation warning into an error and so by default gives a
    traceback.  (This is done by R CMD check --as-cran.)
  * UseMethod() no longer forwards local variables assigned in the
    generic function into method call environments before evaluating
    the method body. This makes method calls behave more like
    standard function calls and makes method code easier to analyze
    correctly.
  * The twelve as.data.frame.&lt;class&gt;() methods which were deprecated
    only via _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ and in R CMD
    check --as-cran are formally deprecated now in favour of calling
    as.data.frame() or as.data.frame.vector().  The deprecation
    "check" now works also when as.data.frame() is S4 generic thanks
    to Ivan Krylov.
  * The default method for the directional comparison operators &lt;, &gt;,
    &lt;=, and &gt;= now signals an error when one of the operands is a
    language object, i.e. a symbol or a call.
  * For terms.formula(), deprecate abb and neg.out arguments
    _formally_ in addition to just documenting it.
  BUG FIXES:
  * The methods package is more robust to not being attached to the
    search path.  More work needs to be done.
  * pairwise.t.test() misbehaved when subgroups had 0 DF for
    variance, even with pool.sd = TRUE.  (PR#18594 by Jack Berry).
  * Probability distribution functions [dpq]&lt;distrib&gt;(x, *), but also
    bessel[IKJY](x, .) now consistently preserve attributes(x) when
    length(x) == 0, e.g., for a 2 x 0 matrix, thanks to Karolis
    Koncevičius' report PR#18509.
  * Group "Summary" computations such as sum(1:3, 4, na.rm = 5, NA,
    7, na.rm = LL) now give an error instead of either 17 or NN for
    LL true or false, as proposed by Ivan Krylov on the R-devel
    mailing list.  (This also means it is now an error to specify
    na.rm more than once.)
  * as.complex(x) now returns complex(real = x, imaginary = 0) for
    _all_ numerical and logical x, notably also for NA or
    NA_integer_.
  * Directories are now omitted by file.copy(, recursive = FALSE) and
    in file.append() (PR#17337).
  * gsub() and sub() are now more robust to integer overflow when
    reporting errors caused by too large input strings (PR#18346).
  * Top-level handlers are now more robust to attempts to remove a
    handler whilst handlers are running (PR#18508).
  * The handling of Alt+F4 in dialogs created on Windows using
    GraphApp has been fixed (PR#13870).
  * density() more consistently computes grid values for the
    FFT-based convolution, following Robert Schlicht's analysis and
    proposal in PR#18337, correcting density values typically by a
    factor of about 0.999.  Argument old.coords = TRUE provides back
    compatibility.
  * palette.colors() gains a name argument that defaults to FALSE
    controlling whether the vector of colours that is returned has
    names (where possible).  PR#18529.
  * tools::xgettext() no longer extracts the (non-translatable) class
    names from warningCondition and errorCondition calls.
  * S3method(&lt;gen&gt;, &lt;class&gt;, &lt;func&gt;) in the NAMESPACE file now works
    (again) when &lt;func&gt; is visible from the namespace, e.g.,
    imported, or in base.
  * getParseData(f) now also works for a function defined in the
    first of several &lt;pkg&gt;/R/*.R source files, thanks to Kirill
    Müller's report and Duncan Murdoch's patch in PR#16756.
  * Rd \Sexpr macros with nested #ifdef conditionals were not
    processed.
  * A non-blocking connection with non-default encoding (such as a
    socket) now correctly returns from readLines() after new data has
    arrived also when its EOF had been reached previously.  Thanks to
    Peter Meilstrup's report on R-devel and Ivan Krylov's report and
    patch proposal in PR#18555.
  * tools::checkRdContents() failed to detect empty argument
    descriptions when they spanned multiple lines, including those
    generated by prompt().  These cases are now noted by R CMD check.
  * Plain-text help no longer outputs spurious colons in the
    arguments list (for multi-line \item labels in the Rd source).
  * kappa() and rcond() work correctly in more cases; kappa(., norm =
    "2") now warns that it computes the 1-norm with (default) exact =
    FALSE; prompted by Mikael Jagan's quite comprehensive PR#18543.
  * Rd skeletons generated by prompt() or promptData() now use a
    dummy title (so R CMD build works).  tools::checkRdContents() has
    been updated to detect such template leftovers, including from
    promptPackage().
  * When S4 method dispatch fails because no method was found, the
    error message now includes the signature argument names; thanks
    to Michael Chirico's proposal on the R-devel list.
  * withAutoprint({ .. }) now preserves srcrefs previously lost,
    thanks to Andrew Simmons' report plus fix in PR#18572.
  * transform.data.frame() no longer adjusts names; in particular,
    untransformed variables are kept as-is, including those with
    syntactically invalid names (PR#17890).
  * The keep.source option for Rd \Sexpr blocks is no longer ignored.
  * The formula methods for t.test() and wilcox.test() now catch when
    paired is passed, addressing PR#14359; use Pair(x1, x2) ~ 1 for a
    paired test.
  * The level reported in the browser prompt was often too large. It
    now shows the number of browser contexts on the stack.
  * For cbind() and rbind(), the optional deparse.level argument is
    now properly passed to methods, thanks to Mikael Jagan's PR#18579
    and comments there.
  * Some error and warning messages for large ('long vector')
    matrix(v, nr, nc) and dim(m) &lt;- d are now correct about sizes,
    using long long formatting, fixing PR#18612 (and more) reported
    by Mikael Jagan.
  * readChar(useBytes = TRUE) now terminates strings even when the
    underlying connection uses extra spaces in the input buffer.
    This fixes problems with extra garbage seen with gzip
    connections, PR#18605.
  * Named capture in PCRE regular expressions now works also with
    more than 127 named groups (PR#18588).
  * Datetime functions are now robust against long jumps when dealing
    with internal time zone changes.  This avoids confusing warnings
    about an invalid time zone, previously triggered by turning
    warnings into errors or handling them via tryCatch (PR#17966,
    PR#17780).
  * Datetime functions now restore even an empty TZ environment
    variable after internal time zone changes (PR#17724).  This makes
    results of datetime functions with this (typically unintentional)
    setting more predictable.
  * drop.terms(*) now drops response as by default, keep.response =
    FALSE, fixing PR#18564 thanks to Mikael Jagan.
  * dummy.coef(.) now also works for lm()-models with character
    categorical predictor variables rather than factor ones, fixing
    PR#18635 reported by Jinsong Zhao.
  * formals(f) &lt;- formals(f) now also works for a function w/o
    arguments and atomic _constant_ body(f).
  * Correct as.function(&lt;invalid list&gt;, .)'s error message.
  * removeSource() is yet more thorough in finding and removing
    "srcref" and the other source references from parsed R language
    chunks, fixing PR#18638 thanks to Andrew Simmons.
  * dgeom() is more accurate now, notably when its result is very
    small, fixing PR#18642 thanks to the proposal of Morten Welinder,
    also improving other instances where C level binom_raw(x, n, ..)
    has x == 0 or x== n.
  * warning() with options(warn = 1) has improved output for
    multi-line messages.
  * axis.Date() and axis.POSIXct() now respect the par("lab") setting
    for the number of pretty() intervals.
  * Comparisons for language objects (which are based on deparsing)
    are now more careful about using accurate deparsed results
    (PR#18676).
  * Plain-text help (Rd2txt) now correctly preserves blank lines
    following single-line \dontrun code.
  * &lt;POSIXlt&gt;[*] no longer sets wrong "balanced" attribute, fixing
    PR#18681 thanks to Mikael Jagan.
  * str(&lt;classed-call&gt;) now deparses the call as expected, fixing
    PR#18684, reported by Dave Slager.
  * In Rd examples, code following the closing brace of a \dontrun,
    \dontshow or \donttest tag on the same line is no longer skipped
    when R CMD check runs the examples.
  * as.data.frame(matrix(*, ncol=0)) now gets valid names() and
    colnames(); reported by Davis Vaughan on the R-devel list.
  * Internal Mathlib function stirlerr(n) is now almost fully
    (52-bit) accurate for all n &gt;= ~5.9 and more accurate also in the
    range 1 -- 5.9.  This entails small ("after 12th decimal")
    changes in density functions, e.g., dgamma() in _some_ regions of
    their support.  The fix was partly prompted by Morten Welinder's
    PR#18640.
  * Numbers like 9876543.2 are now considered non-integer by Mathlib
    internal R_nonint(), amending original fix of PR#15734.
  * Rd comment lines no longer cause broken paragraphs in the
    rendered PDF and plain-text help. In code blocks, pure comment
    lines (starting with %) no longer produce an empty line.
  * xtabs(Freq ~ .) now consistently defaults to na.action = na.pass,
    using na.rm = FALSE (added as an argument) when summing over Freq
    (PR#17770).
  * tools::testInstalledPackage() is no longer silent about failures
    from running examples or tests and its return code no longer
    ignores failures from checking vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1718366400">- CHANGES IN R 4.4.1:
  C-LEVEL FACILITIES:
  * Functions R_atof and R_strtod declared in header R_ext/Utils.h
    are now documented in 'Writing R Extensions' and so formally part
    of the API.
  * The non-API entry points Rf_setSVector, Rf_StringFalse,
    Rf_StringTrue and Rf_isBlankString have been added to those
    reported by R CMD check.
  * The new function Rf_allocLang is now available. This provides an
    alternative to the idiom of calling Rf_allocList followed by
    SET_TYPEOF.
  UTILITIES:
  * R CMD check now reports as warnings what gfortran calls 'Fortran
    2018 deleted features', all of which have long been marked as
    'obsolescent' and some of which were deleted in Fortran 2008 or
    earlier.  Fortran compilers are no longer required to support
    these.
  BUG FIXES:
  * as.numeric(), scan(), type.convert() and other places which use
    the internal C function R_strtod now require a _non-empty_ digit
    sequence in a decimal or binary exponent.  This aligns with the
    C/POSIX standard for strtod and with ?NumericConstants.
  * as.data.frame(m, make.names=NA) now works correctly for a matrix
    m with NA's in row names.
  * The error message from &lt;POSIXlt&gt;[["hour"]] and similar now
    mentions *[[, "hour"]], as wished for in PR#17409 and proposed by
    Michael Chirico.
  * qbinom() and potentially qpois(), qnbinom(), no longer sometimes
    fail accurate inversion (of pbinom(), etc), thanks to Christopher
    Chang's report and patch in PR#18711.
  * The internal help server on Windows can again serve requests sent
    in quick succession, fixing a regression in R 4.4.0.
  * debugcall(&lt;S3Generic&gt;()) now also works when a corresponding
    S4-generic version is in the methods cache (PR#18143).
  * Package tools' toTitleCase(ch0) now returns character(0) when ch0
    is of zero length; fixing PR#18724, reported by David Hugh Jones.
  * R CMD check is no longer broken (without a check result and no
    explanation in 00check.log) for a package which declares an
    invalid VignetteBuilder in DESCRIPTION but has no vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1730376000">- CHANGES IN R 4.4.2:
  C-LEVEL FACILITIES:
  * The S-compatibility macros F77_COM and F77_COMDECL defined in
    header R_ext/RS.h are deprecated and will be removed shortly.  We
    could find no record of their use.
  BUG FIXES:
  * Mathlib function lgammacor(x) no longer warns about underflow to
    zero for large x.
  * Text widths and heights were incorrectly reported by the Quartz
    device if the drawing context didn't exist yet (typically when
    drawing off-screen to a window that is yet to appear, see
    PR#18591).
  * The Quartz device could segfault in cases where paths with spaces
    are used in the new glyph drawing API.  Thanks to Tomek
    Gieorgijewski (PR#18758).
  * On macOS in R CRAN builds, it is again possible to read
    little-endian UTF-16 text with a BOM from a connection using
    encoding="UTF-16".  Users building R from source should avoid
    using the system libiconv in macOS 14.1 and later.
  * methods' internal .requirePackage() now re-enables primitive
    method dispatch when needed; thanks to Ivan Krylov for
    demystifying CRAN package check failures on the R-devel mailing
    list.</changelog>
</package>
<package pkgid="db5357985d674e79680bd89830119ad6a6937f66f2555fa006edb1830299518517cdf2dc6a080d66342cb1098d087de0fe7e15a88696b984c98f1ec6c95806d4" name="R-stats" arch="x86_64">
  <version epoch="0" ver="4.4.2" rel="51.0.2.2.sr20241103"/>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1620302400">- To get in sync with d:l:R:autoCRAN the Matrix package's split
  in -devel was reversed.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339200">- improved spec file according to comments of dimstar in
  https://build.opensuse.org/request/show/892685</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339201">- CHANGES IN R 4.1.0:
  FUTURE DIRECTIONS:
  * It is planned that the 4.1.x series will be the last to support
    32-bit Windows, with production of binary packages for that
    series continuing until early 2023.
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Data set esoph in package datasets now provides the correct
    numbers of controls; previously it had the numbers of cases added
    to these.  (Reported by Alexander Fowler in PR#17964.)
  NEW FEATURES:
  * www.omegahat.net is no longer one of the repositories known by
    default to setRepositories().  (Nowadays it only provides source
    packages and is often unavailable.)
  * Function package_dependencies() (in package tools) can now use
    different dependency types for direct and recursive dependencies.
  * The checking of the size of tarball in R CMD check --as-cran
    &lt;pkg&gt; may be tweaked via the new environment variable
    _R_CHECK_CRAN_INCOMING_TARBALL_THRESHOLD_, as suggested in
    PR#17777 by Jan Gorecki.
  * Using c() to combine a factor with other factors now gives a
    factor, an ordered factor when combining ordered factors with
    identical levels.
  * apply() gains a simplify argument to allow disabling of
    simplification of results.
  * The format() method for class "ftable" gets a new option justify.
    (Suggested by Thomas Soeiro.)
  * New ...names() utility.  (Proposed by Neal Fultz in PR#17705.)
  * type.convert() now warns when its as.is argument is not
    specified, as the help file always said it _should_.  In that
    case, the default is changed to TRUE in line with its change in
    read.table() (related to stringsAsFactor) in R 4.0.0.
  * When printing list arrays, classed objects are now shown _via_
    their format() value if this is a short enough character string,
    or by giving the first elements of their class vector and their
    length.
  * capabilities() gets new entry "Rprof" which is TRUE when R has
    been configured with the equivalent of --enable-R-profiling (as
    it is by default).  (Related to Michael Orlitzky's report
    PR#17836.)
  * str(xS4) now also shows extraneous attributes of an S4 object
    xS4.
  * Rudimentary support for vi-style tags in rtags() and R CMD rtags
    has been added.  (Based on a patch from Neal Fultz in PR#17214.)
  * checkRdContents() is now exported from tools; it and also
    checkDocFiles() have a new option chkInternal allowing to check
    Rd files marked with keyword "internal" as well.  The latter can
    be activated for R CMD check via environment variable
    _R_CHECK_RD_INTERNAL_TOO_.
  * New functions numToBits() and numToInts() extend the raw
    conversion utilities to (double precision) numeric.
  * Functions URLencode() and URLdecode() in package utils now work
    on vectors of URIs.  (Based on patch from Bob Rudis submitted
    with PR#17873.)
  * path.expand() can expand ~user on most Unix-alikes even when
    readline is not in use.  It tries harder to expand ~, for example
    should environment variable HOME be unset.
  * For HTML help (both dynamic and static), Rd file links to help
    pages in external packages are now treated as references to
    topics rather than file names, and fall back to a file link only
    if the topic is not found in the target package. The earlier rule
    which prioritized file names over topics can be restored by
    setting the environment variable _R_HELP_LINKS_TO_TOPICS_ to a
    false value.
  * c() now removes NULL arguments before dispatching to methods,
    thus simplifying the implementation of c() methods, _but_ for
    back compatibility keeps NULL when it is the first argument.
    (From a report and patch proposal by Lionel Henry in PR#17900.)
  * Vectorize()'s result function's environment no longer keeps
    unneeded objects.
  * Function ...elt() now propagates visibility consistently with
    ..n.  (Thanks to Lionel Henry's PR#17905.)
  * capture.output() no longer uses non-standard evaluation to
    evaluate its arguments.  This makes evaluation of functions like
    parent.frame() more consistent.  (Thanks to Lionel Henry's
    PR#17907.)
  * packBits(bits, type="double") now works as inverse of
    numToBits().  (Thanks to Bill Dunlap's proposal in PR#17914.)
  * curlGetHeaders() has two new arguments, timeout to specify the
    timeout for that call (overriding getOption("timeout")) and TLS
    to specify the minimum TLS protocol version to be used for
    https:// URIs (_inter alia_ providing a means to check for sites
    using deprecated TLS versions 1.0 and 1.1).
  * For nls(), an optional constant scaleOffset may be added to the
    denominator of the relative offset convergence test for cases
    where the fit of a model is expected to be exact, thanks to a
    proposal by John Nash.  nls(*, trace=TRUE) now also shows the
    convergence criterion.
  * Numeric differentiation _via_ numericDeriv() gets new optional
    arguments eps and central, the latter for taking central divided
    differences.  The latter can be activated for nls() via
    nls.control(nDcentral = TRUE).
  * nls() now passes the trace and control arguments to getInitial(),
    notably for all self-starting models, so these can also be fit in
    zero-noise situations via a scaleOffset.  For this reason, the
    initial function of a selfStart model must now have ... in its
    argument list.
  * bquote(splice = TRUE) can now splice expression vectors with
    attributes: this makes it possible to splice the result of
    parse(keep.source = TRUE).  (Report and patch provided by Lionel
    Henry in PR#17869.)
  * textConnection() gets an optional name argument.
  * get(), exists(), and get0() now signal an error if the first
    argument has length greater than 1.  Previously additional
    elements were silently ignored.  (Suggested by Antoine Fabri on
    R-devel.)
  * R now provides a shorthand notation for creating functions, e.g.
    \(x) x + 1 is parsed as function(x) x + 1.
  * R now provides a simple native forward pipe syntax |&gt;.  The
    simple form of the forward pipe inserts the left-hand side as the
    first argument in the right-hand side call.  The pipe
    implementation as a syntax transformation was motivated by
    suggestions from Jim Hester and Lionel Henry.
  * all.equal(f, g) for functions now by default also compares their
    environment(.)s, notably via new all.equal method for class
    function.  Comparison of nls() fits, e.g., may now need
    all.equal(m1, m2, check.environment = FALSE).
  * .libPaths() gets a new option include.site, allowing to _not_
    include the site library.  (Thanks to Dario Strbenac's suggestion
    and Gabe Becker's PR#18016.)
  * Lithuanian translations are now available.  (Thanks to Rimantas
    Zakauskas.)
  * names() now works for DOTSXP objects.  On the other hand, in
    R-lang, the R language manual, we now warn against relying on the
    structure or even existence of such dot-dot-dot objects.
  * all.equal() no longer gives an error on DOTSXP objects.
  * capabilities("cairo") now applies only to the file-based devices
    as it is now possible (if very unusual) to build R with Cairo
    support for those but not for X11().
  * There is optional support for tracing the progress of
    loadNamespace() - see its help.
  * (Not Windows.)  l10n_info() reports an additional element, the
    name of the encoding as reported by the OS (which may differ from
    the encoding part (if any) of the result from
    Sys.getlocale("LC_CTYPE").
  * New function gregexec() which generalizes regexec() to find _all_
    disjoint matches and well as all substrings corresponding to
    parenthesized subexpressions of the given regular expression.
    (Contributed by Brodie Gaslam.)
  * New function charClass() in package utils to query the
    wide-character classification functions in use (such as
    iswprint).
  * The names of quantile()'s result no longer depend on the global
    getOption("digits"), but quantile() gets a new optional argument
    digits = 7 instead.
  * grep(), sub(), regexp and variants work considerably faster for
    long factors with few levels.  (Thanks to Michael Chirico's
    PR#18063.)
  * Provide grouping of x11() graphics windows within a window
    manager such as Gnome or Unity; thanks to a patch by Ivan Krylov
    posted to R-devel.
  * The split() method for class data.frame now allows the f argument
    to be specified as a formula.
  * sprintf now warns on arguments unused by the format string.
  * New palettes "Rocket" and "Mako" for hcl.colors() (approximating
    palettes of the same name from the 'viridisLite' package).
    Contributed by Achim Zeileis.
  * The base environment and its namespace are now locked (so one can
    no longer add bindings to these or remove from these).
  * Rterm handling of multi-byte characters has been improved,
    allowing use of such characters when supported by the current
    locale.
  * Rterm now accepts ALT+ +xxxxxxxx sequences to enter Unicode
    characters as hex digits.
  * Environment variable LC_ALL on Windows now takes precedence over
    LC_CTYPE and variables for other supported categories, matching
    the POSIX behaviour.
  * duplicated() and anyDuplicated() are now optimized for integer
    and real vectors that are known to be sorted via the ALTREP
    framework. Contributed by Gabriel Becker via PR#17993.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 14
    and so packages that provide graphics devices should be
    reinstalled.
  * Graphics devices should now specify deviceVersion to indicate
    what version of the graphics engine they support.
  * Graphics devices can now specify deviceClip.  If TRUE, the
    graphics engine will never perform any clipping of output itself.
    The clipping that the graphics engine does perform (for both
    canClip = TRUE and canClip = FALSE) has been improved to avoid
    producing unnecessary artifacts in clipped output.
  * The grid package now allows gpar(fill) to be a linearGradient(),
    a radialGradient(), or a pattern().  The viewport(clip) can now
    also be a grob, which defines a clipping path, and there is a new
    viewport(mask) that can also be a grob, which defines a mask.
    These new features are only supported so far on the Cairo-based
    graphics devices and on the pdf() device.
  * (Not Windows.)  A warning is given when a Cairo-based type is
    specified for a png(), jpeg(), tiff() or bmp() device but Cairo
    is unsupported (so type = "Xlib" is tried instead).
  * grSoftVersion() now reports the versions of FreeType and
    FontConfig if they are used directly (not _via_ Pango), as is
    most commonly done on macOS.
  C-LEVEL FACILITIES:
  * The _standalone_ libRmath math library and R's C API now provide
    log1pexp() again as documented, and gain log1mexp().
  INSTALLATION on a UNIX-ALIKE:
  * configure checks for a program pkgconf if program pkg-config is
    not found.  These are now only looked for on the path (like
    almost all other programs) so if needed specify a full path to
    the command in PKG_CONFIG, for example in file config.site.
  * C99 function iswblank is required - it was last seen missing ca
    2003 so the workaround has been removed.
  * There are new configure options --with-internal-iswxxxxx,
  - -with-internal-towlower and --with-internal-wcwidth which allows
    the system functions for wide-character classification,
    case-switching and width (wcwidth and wcswidth) to be replaced by
    internal ones.  The first has long been used on macOS, AIX (and
    Windows) but this enables it to be unselected there and selected
    for other platforms (it is the new default on Solaris).  The
    second is new in this version of R and is selected by default on
    macOS and Solaris.  The third has long been the default and
    remains so as it contains customizations for East Asian
    languages.
    System versions of these functions are often minimally
    implemented (sometimes only for ASCII characters) and may not
    cover the full range of Unicode points: for example Solaris (and
    Windows) only cover the Basic Multilingual Plane.
  * Cairo installations without X11 are more likely to be detected by
    configure, when the file-based Cairo graphics devices will be
    available but not X11(type = "cairo").
  * There is a new configure option --with-static-cairo which is the
    default on macOS.  This should be used when only static cairo
    (and where relevant, Pango) libraries are available.
  * Cairo-based graphics devices on platforms without Pango but with
    FreeType/FontConfig will make use of the latter for font
    selection.
  LINK-TIME OPTIMIZATION on a UNIX-ALIKE:
  * Configuring with flag --enable-lto=R now also uses LTO when
    installing the recommended packages.
  * R CMD INSTALL and R CMD SHLIB have a new flag --use-LTO to use
    LTO when compiling code, for use with R configured with
  - -enable-lto=R.  For R configured with --enable-lto, they have
    the new flag --no-use-LTO.
    Packages can opt in or out of LTO compilation _via_ a UseLTO
    field in the DESCRIPTION file.  (As usual this can be overridden
    by the command-line flags.)
  BUILDING R on Windows:
  * for GCC &gt;= 8, FC_LEN_T is defined in config.h and hence character
    lengths are passed from C to Fortran in _inter alia_ BLAS and
    LAPACK calls.
  * There is a new text file src/gnuwin32/README.compilation, which
    outlines how C/Fortran code compilation is organized and
    documents new features:
  * R can be built with Link-Time Optimization with a suitable
    compiler - doing so with GCC 9.2 showed several
    inconsistencies which have been corrected.
  * There is support for cross-compiling the C and Fortran code
    in R and standard packages on suitable (Linux) platforms.
    This is mainly intended to allow developers to test later
    versions of compilers - for example using GCC 9.2 or 10.x has
    detected issues that GCC 8.3 in Rtools40 does not.
  * There is experimental support for cross-building R packages
    with C, C++ and/or Fortran code.
  * The R installer can now be optionally built to support a single
    architecture (only 64-bit or only 32-bit).
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++14 where
    available (which it is on all currently checked platforms): if
    not (as before) C++11 is used if available otherwise C++ is not
    supported.
    Packages which specify C++11 will still be installed using C++11.
    C++14 compilers may give deprecation warnings, most often for
    std::random_shuffle (deprecated in C++14 and removed in C++17).
    Either specify C++11 (see 'Writing R Extensions') or modernize
    the code and if needed specify C++14.  The latter has been
    supported since R 3.4.0 so the package's DESCRIPTION would need
    to include something like
    Depends: R (&gt;= 3.4)
  PACKAGE INSTALLATION on Windows:
  * R CMD INSTALL and R CMD SHLIB make use of their flag --use-LTO
    when the LTO_OPT make macro is set in file etc/${R_ARCH}/Makeconf
    or in a personal/site Makevars file.  (For details see 'Writing R
    Extensions' SS4.5.)
    This provides a valuable check on code consistency.  It does work
    with GCC 8.3 as in Rtools40, but that does not detect everything
    the CRAN checks with current GCC do.
  PACKAGE INSTALLATION on macOS:
  * The default personal library directory on builds with
  - -enable-aqua (including CRAN builds) now differs by CPU type,
    one of
    ~/Library/R/x86_64/x.y/library
    ~/Library/R/arm64/x.y/library
    This uses the CPU type R (and hence the packages) were built for,
    so when a x86_64 build of R is run under Rosetta emulation on an
    arm64 Mac, the first is used.
  UTILITIES:
  * R CMD check can now scan package functions for bogus return
    statements, which were possibly intended as return() calls (wish
    of PR#17180, patch by Sebastian Meyer). This check can be
    activated via the new environment variable
    _R_CHECK_BOGUS_RETURN_, true for --as-cran.
  * R CMD build omits tarballs and binaries of previous builds from
    the top-level package directory.  (PR#17828, patch by Sebastian
    Meyer.)
  * R CMD check now runs sanity checks on the use of LazyData, for
    example that a data directory is present and that
    LazyDataCompression is not specified without LazyData and has a
    documented value.  For packages with large LazyData databases
    without specifying LazyDataCompression, there is a reference to
    the code given in 'Writing R Extensions' SS1.1.6 to test the
    choice of compression (as in all the CRAN packages tested a
    non-default method was preferred).
  * R CMD build removes LazyData and LazyDataCompression fields from
    the DESCRIPTION file of packages without a data directory.
  ENCODING-RELATED CHANGES:
  * The parser now treats \Unnnnnnnn escapes larger than the upper
    limit for Unicode points (\U10FFFF) as an error as they cannot be
    represented by valid UTF-8.
    Where such escapes are used for outputting non-printable
    (including unassigned) characters, 6 hex digits are used (rather
    than 8 with leading zeros).  For clarity, braces are used, for
    example \U{0effff}.
  * The parser now looks for non-ASCII spaces on Solaris (as
    previously on most other OSes).
  * There are warnings (including from the parser) on the use of
    unpaired surrogate Unicode points such as \uD834.  (These cannot
    be converted to valid UTF-8.)
  * Functions nchar(), tolower(), toupper() and chartr() and those
    using regular expressions have more support for inputs with a
    marked Latin-1 encoding.
  * The character-classification functions used (by default) to
    replace the system iswxxxxx functions on Windows, macOS and AIX
    have been updated to Unicode 13.0.0.
    The character-width tables have been updated to include new
    assignments in Unicode 13.0.0.
  * The code for evaluating default (extended) regular expressions
    now uses the same character-classification functions as the rest
    of R (previously they differed on Windows, macOS and AIX).
  * There is a build-time option to replace the system's
    wide-character wctrans C function by tables shipped with R: use
    configure option --with-internal-towlower or (on Windows)
  - DUSE_RI18N_CASE in CFLAGS when building R.  This may be needed
    to allow tolower() and toupper() to work with Unicode characters
    beyond the Basic Multilingual Plane where not supported by system
    functions (e.g. on Solaris where it is the new default).
  * R is more careful when truncating UTF-8 and other multi-byte
    strings that are too long to be printed, passed to the system or
    libraries or placed into an internal buffer.  Truncation will no
    longer produce incomplete multibyte characters.
  DEPRECATED AND DEFUNCT:
  * Function plclust() from the package stats and
    package.dependencies(), pkgDepends(), getDepList(),
    installFoundDepends(), and vignetteDepends() from package tools
    are defunct.
  * Defunct functions checkNEWS() and readNEWS() from package tools
    and CRAN.packages() from utils have been removed.
  * R CMD config CXXCPP is defunct (it was deprecated in R 3.6.2).
  * parallel::detectCores() drops support for Irix (retired in 2013).
  * The LINPACK argument to chol.default(), chol2inv(),
    solve.default() and svd() has been defunct since R 3.1.0.  It was
    silently ignored up to R 4.0.3 but now gives an error.
  * Subsetting/indexing, such as ddd[*] or ddd$x on a DOTSXP
    (dot-dot-dot) object ddd has been disabled; it worked by accident
    only and was undocumented.
  BUG FIXES:
  * Many more C-level allocations (mainly by malloc and strdup) are
    checked for success with suitable alternative actions.
  * Bug fix for replayPlot(); this was turning off graphics engine
    display list recording if a recorded plot was replayed in the
    same session.  The impact of the bug became visible if resize the
    device after replay OR if attempted another savePlot() after
    replay (empty display list means empty screen on resize or empty
    saved plot).
  * R CMD check etc now warn when a package exports non-existing S4
    classes or methods, also in case of no "methods" presence.
    (Reported by Alex Bertram; reproducible example and patch by
    Sebastian Meyer in PR#16662.)
  * boxplot() now also accepts calls for labels such as ylab, the
    same as plot().  (Reported by Marius Hofert.)
  * The help page for xtabs() now correctly states that addNA is
    setting na.action = na.pass among others.  (Reported as PR#17770
    by Thomas Soeiro.)
  * The R CMD check &lt;pkg&gt; gives a longer and more comprehensible
    message when DESCRIPTION misses dependencies, e.g., in Imports:.
    (Thanks to the contributors of PR#17179.)
  * update.default() now calls the generic update() on the formula to
    work correctly for models with extended formulas.  (As reported
    and suggested by Neal Fultz in PR#17865.)
  * The horizontal position of leaves in a dendrogram is now correct
    also with center = FALSE.  (PR#14938, patch from Sebastian
    Meyer.)
  * all.equal.POSIXt() no longer warns about and subsequently ignores
    inconsistent "tzone" attributes, but describes the difference in
    its return value (PR#17277).  This check can be disabled _via_
    the new argument check.tzone = FALSE as suggested by Sebastian
    Meyer.
  * as.POSIXct() now populates the "tzone" attribute from its tz
    argument when x is a logical vector consisting entirely of NA
    values.
  * x[[2^31]] &lt;- v now works.  (Thanks to the report and patch by
    Suharto Anggono in PR#17330.)
  * In log-scale graphics, axis() ticks and label positions are now
    computed more carefully and symmetrically in their range,
    typically providing _more_ ticks, fulfilling wishes in PR#17936.
    The change really corresponds to an improved axisTicks() (package
    grDevices), potentially influencing grid and lattice, for
    example.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now correct to at
    least five digits where it was catastrophically wrong,
    previously.
  * sum(df) and similar "Summary"- and "Math"-group member functions
    now work for data frames df with logical columns, notably also of
    zero rows.  (Reported to R-devel by Martin "b706".)
  * unsplit() had trouble with tibbles due to unsound use of rep(NA,
    len)-indexing, which should use NA_integer_ (Reported to R-devel
    by Mario Annau.)
  * pnorm(x, log.p = TRUE) underflows to -Inf slightly later.
  * show(&lt;hidden S4 generic&gt;) prints better and without quotes for
    non-hidden S4 generics.
  * read.table() and relatives treated an "NA" column name as missing
    when check.names = FALSE PR#18007.
  * Parsing strings containing UTF-16 surrogate pairs such as
    "\uD834\uDD1E" works better on some (uncommon) platforms.
    sprintf("%X", utf8ToInt("\uD834\uDD1E")) should now give "1D11E"
    on all platforms.
  * identical(x,y) is no longer true for differing DOTSXP objects,
    fixing PR#18032.
  * str() now works correctly for DOTSXP and related exotics, even
    when these are doomed.
    Additionally, it no longer fails for lists with a class and
    "irregular" method definitions such that e.g. lapply(*) will
    necessarily fail, as currently for different igraph objects.
  * Too long lines in environment files (e.g. Renviron) no longer
    crash R. This limit has been increased to 100,000 bytes.
    (PR#18001.)
  * There is a further workaround for FreeType giving incorrect
    italic font faces with cairo-based graphics devices on macOS.
  * add_datalist(*, force = TRUE) (from package tools) now actually
    updates an existing data/datalist file for new content.  (Thanks
    to a report and patch by Sebastian Meyer in PR#18048.)
  * cut.Date() and cut.POSIXt() could produce an empty last interval
    for breaks = "months" or breaks = "years".  (Reported as PR#18053
    by Christopher Carbone.)
  * Detection of the encoding of 'regular' macOS locales such as
    en_US (which is UTF-8) had been broken by a macOS change:
    fortunately these are now rarely used with en_US.UTF-8 being
    preferred.
  * sub() and gsub(pattern, repl, x, *) now keep attributes of x such
    as names() also when pattern is NA (PR#18079).
  * Time differences ("difftime" objects) get a replacement and a
    rep() method to keep "units" consistent.  (Thanks to a report and
    patch by Nicolas Bennett in PR#18066.)
  * The \RdOpts macro, setting defaults for \Sexpr options in an Rd
    file, had been ineffective since R 2.12.0: it now works again.
    (Thanks to a report and patch by Sebastian Meyer in PR#18073.)
  * mclapply and pvec no longer accidentally terminate parallel
    processes started before by mcparallel or related calls in
    package parallel (PR#18078).
  * grep and other functions for evaluating (extended) regular
    expressions handle in Unicode also strings not explicitly flagged
    UTF-8, but flagged native when running in UTF-8 locale.
  * Fixed a crash in fifo implementation on Windows (PR#18031).
  * Binary mode in fifo on Windows is now properly detected from
    argument open (PR#15600, PR#18031).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1622808000">- The line %{__install} -m 755 -d %{_infodir}
  no longer works in TW or Factory.
  But without that line it works everywhere. So this instruction
  was commented out of the spec file.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1628596800">- CHANGES IN R 4.1.1:
  NEW FEATURES:
  * require(pkg, quietly = TRUE) is quieter and in particular does
    not warn if the package is not found.
  DEPRECATED AND DEFUNCT:
  * Use of ftp:// URIs should be regarded as deprecated, with
    on-going support confined to method = "libcurl" and not routinely
    tested.  (Nowadays no major browser supports them.)
  * The non-default method = "internal" is deprecated for http:// and
    ftp:// URIs for both download.file and url.
  * On Windows, method = "wininet" is deprecated for http://,
    https:// and ftp:// URIs for both download.file and url.  (A
    warning is only given for ftp://.)
    For ftp:// URIs the default method is now "libcurl" if available
    (which it is on CRAN builds).
    method = "wininet" remains the default for http:// and https://
    URIs but if libcurl is available, using method = "libcurl" is
    preferred.
  INSTALLATION:
  * make check now works also without a LaTeX installation.  (Thanks
    to Sebastian Meyer's PR#18103.)
  BUG FIXES:
  * make check-devel works again in an R build configured with
  - -without-recommended-packages.
  * qnbinom(p, size, mu) for large size/mu is correct now in a range
    of cases (PR#18095); similarly for the (size, prob)
    parametrization of the negative binomial.  Also qpois() and
    qbinom() are better and or faster for extreme cases.  The
    underlying C code has been modularized and is common to all four
    cases of discrete distributions.
  * gap.axis is now part of the axis() arguments which are passed
    from bxp(), and hence boxplot().  (Thanks to Martin Smith's
    report and suggestions in PR#18109.)
  * .First and .Last can again be set from the site profile.
  * seq.int(from, to, *) and seq.default(..) now work better in large
    range cases where from-to is infinite where the two boundaries
    are finite.
  * all.equal(x,y) now returns TRUE correctly also when several
    entries of abs(x) and abs(y) are close to .Machine$double.xmax,
    the largest finite numeric.
  * model.frame() now clears the object bit when removing the class
    attribute of a value via na.action (PR#18100).
  * charClass() now works with multi-character strings on Windows
    (PR#18104, fixed by Bill Dunlap).
  * encodeString() on Solaris now works again in Latin-1 encoding on
    characters represented differently in UTF-8.  Support for
    surrogate pairs on Solaris has been improved.
  * file.show() on Windows now works with non-ASCII path names
    representable in the current native encoding (PR#18132).
  * Embedded R on Windows can now find R home directory via the
    registry even when installed only for the current user
    (PR#18135).
  * pretty(x) with finite x now returns finite values also in the
    case where the extreme x values are close in size to the maximal
    representable number .Machine$double.xmax.
    Also, it's been tweaked for very small ranges and when a boundary
    is close (or equal) to zero; e.g., pretty(c(0,1e-317)) no longer
    has negative numbers, currently still warning about a very small
    range, and pretty(2^-(1024 - 2^-1/(c(24,10)))) is more accurate.
  * The error message for not finding vignette files when weaving has
    correct file sizes now. (Thanks to Sebastian Meyer's PR#18154.)
  * dnbinom(20, &lt;large&gt;, 1) now correctly gives 0, and similar cases
    are more accurate with underflow precaution.  (Reported by Francisco Vera Alcivar in PR#18072.)</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635163200">- repaired https://bugzilla.suse.com/show_bug.cgi?id=1191380
  (rpmacros now go to rpmmacrodir)
- minor clean-ups in spec file</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635768000">- CHANGES IN R 4.1.2:
  C-LEVEL FACILITIES:
  * The workaround in headers R.h and Rmath.h (using namespace std;)
    for the Oracle Developer Studio compiler is no longer needed now
    C++11 is required so has been removed.  A couple more usages of
    log() (which should have been std::log()) with an int argument
    are reported on Solaris.
  * The undocumented limit of 4095 bytes on messages from the
    S-compatibility macros PROBLEM and MESSAGE is now documented and
    longer messages will be silently truncated rather than
    potentially causing segfaults.
  * If the R_NO_SEGV_HANDLER environment variable is non-empty, the
    signal handler for SEGV/ILL/BUS signals (which offers recovery
    user interface) is not set. This allows more reliable debugging
    of crashes that involve the console.
  DEPRECATED AND DEFUNCT:
  * The legacy S-compatibility macros PROBLEM, MESSAGE, ERROR, WARN,
    WARNING, RECOVER, ... are deprecated and will be hidden in R
    4.2.0. R's native interface of Rf_error and Rf_warning has long
    been preferred.
  BUG FIXES:
  * .mapply(F, dots, .) no longer segfaults when dots is not a list
    and uses match.fun(F) as always documented; reported by Andrew
    Simmons in PR#18164.
  * hist(&lt;Date&gt;, ...) and hist(&lt;POSIXt&gt;, ...)  no longer pass
    arguments for rect() (such as col and density) to axis().
    (Thanks to Sebastian Meyer's PR#18171.)
  * \Sexpr{ch} now preserves Encoding(ch). (Thanks to report and
    patch by Jeroen Ooms in PR#18152.)
  * Setting the RNG to "Marsaglia-Multicarry" e.g., by RNGkind(), now
    warns in more places, thanks to Andr'e Gillibert's report and
    patch in PR#18168.
  * gray(numeric(), alpha=1/2) no longer segfaults, fixing PR#18183,
    reported by Till Krenz.
  * Fixed dnbinom(x, size=&lt;very_small&gt;, .., log=TRUE) regression,
    reported by Martin Morgan.
  * as.Date.POSIXlt(x) now keeps names(x), thanks to Davis Vaughan's
    report and patch in PR#18188.
  * model.response() now strips an "AsIs" class typically, thanks to
    Duncan Murdoch's report and other discussants in PR#18190.
  * try() is considerably faster in case of an error and long call,
    as e.g., from some do.call().  Thanks to Alexander Kaever's
    suggestion posted to R-devel.
  * qqline(y = &lt;object&gt;) such as y=I(.), now works, see also
    PR#18190.
  * Non-integer mgp par() settings are now handled correctly in
    axis() and mtext(), thanks to Mikael Jagan and Duncan Murdoch's
    report and suggestion in PR#18194.
  * formatC(x) returns length zero character() now, rather than ""
    when x is of length zero, as documented, thanks to Davis
    Vaughan's post to R-devel.
  * removeSource(fn) now retains (other) attributes(fn).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1647000000">- CHANGES IN R 4.1.3:
  NEW FEATURES:
  * The default version of Bioconductor has been changed to 3.14.
    (This is used by setRepositories and the menus in GUIs.)
  UTILITIES:
  * R CMD check --as-cran has a workaround for a bug in versions of
    file up to at least 5.41 which mis-identify DBF files last
    changed in 2022 as executables.
  C-LEVEL FACILITIES:
  * The legacy S-compatibility macros SINGLE_* in R_ext/Constants.h
    (included by R.h) are deprecated and will be removed in R 4.2.0.
  BUG FIXES:
  * Initialization of self-starting nls() models with initialization
    functions following the pre-R-4.1.0 API (without the ...
    argument) works again for now, with a deprecation warning.
  * Fixed quoting of ~autodetect~ in Java setting defaults to avoid
    inadvertent user lookup due to leading ~, reported in PR#18231 by
    Harold Gutch.
  * substr(., start, stop) &lt;- v now treats _negative_ stop values
    correctly.  Reported with a patch in PR#18228 by Brodie Gaslam.
  * Subscripting an array x without dimnames by a
    length(dim(x))-column character matrix gave "random" non-sense,
    now an error; reported in PR#18244 by Mikael Jagan.
  * ...names() now matches names(list(...)) closely, fixing PR#18247.
  * all.equal(*, scale = s) now works as intended when length(s) &gt; 1,
    partly thanks to Michael Chirico's PR#18272.
  * print(x) for long vectors x now also works for named atomic
    vectors or lists and prints the correct number when reaching the
    getOption("max.print") limit; partly thanks to a report and
    proposal by Hugh Parsonage to the R-devel list.
  * all.equal(&lt;selfStart&gt;, *) no longer signals a deprecation
    warning.
  * reformulate(*, response=r) gives a helpful error message now when
    length(r) &gt; 1, thanks to Bill Dunlap's PR#18281.
  * Modifying globalCallingHandlers inside withCallingHandlers() now
    works or fails correctly, thanks to Henrik Bengtsson's PR#18257.
  * hist(&lt;Date&gt;, breaks = "days") and hist(&lt;POSIXt&gt;, breaks = "secs")
    no longer fail for inputs of length 1.
  * qbeta(.001, .9, .009) and similar cases now converge correctly
    thanks to Ben Bolker's report in PR#17746.
  * window(x, start, end) no longer wrongly signals "'start' cannot
    be after 'end'", fixing PR#17527 and PR#18291.
  * data() now checks that its (rarely used) list argument is a
    character vector - a couple of packages passed other types and
    gave incorrect results.
  * which() now checks its arr.ind argument is TRUE rather coercing
    to logical and taking the first element - which gave incorrect
    results in package code.
  * model.weights() and model.offset() more carefully extract their
    model components, thanks to Ben Bolker and Tim Taylor's R-devel
    post.
  * list.files(recursive = TRUE) now shows all broken symlinks
    (previously, some of them may have been omitted, PR#18296).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1650628800">- CHANGES IN R 4.2.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * The formula method of aggregate() now matches the generic in
    naming its first argument x (resolving PR#18299 by Thomas
    Soeiro).
    This means that calling aggregate() with a formula as a named
    first argument requires name formula in earlier versions of R and
    name x now, so portable code should not name the argument (code
    in many packages did).
  * Calling &amp;&amp; or || with either argument of length greater than one
    now gives a warning (which it is intended will become an error).
  * Calling if() or while() with a condition of length greater than
    one gives an error rather than a warning.  Consequently,
    environment variable _R_CHECK_LENGTH_1_CONDITION_ no longer has
    any effect.
  * Windows users should consult the WINDOWS section below for some
    profound changes including
  * Support for 32-bit builds has been dropped.
  * UTF-8 locales are used where available.
  * The default locations for the R installation and personal
    library folder have been changed.
    Thanks to Tomas Kalibera for months of work on the Windows port
    for this release.
  NEW FEATURES:
  * matrix(x, n, m) now warns in more cases where length(x) differs
    from n * m, as suggested by Abby Spurdle and Wolfgang Huber in
    Feb 2021 on the R-devel mailing list.
    This warning can be turned into an error by setting environment
    variable _R_CHECK_MATRIX_DATA_ to TRUE: R CMD check --as-cran
    does so unless it is already set.
  * Function file_test() in package utils gains tests for symlinks,
    readability and writability.
  * capabilities("libxml") is now false.
    The description of capabilities("http/ftp") now reflects that it
    refers to the default method, no longer the internal one.
  * simplify2array() gains an except argument for controlling the
    exceptions used by sapply().
  * Environment variables R_LIBS_USER and R_LIBS_SITE are both now
    set to the R system default if unset or empty, and can be set to
    NULL to indicate an empty list of user or site library
    directories.
  * The warning for axis()(-like) calls in cases of relatively small
    ranges (typically in log-scale situations) is slightly improved
    _and_ suppressed from explicit calls to .axisPars() as has always
    been the intention.
  * The contrasts setter function `contrasts&lt;-` gains an explicit
    default how.many = NULL rather than just using missing(how.many).
  * grid.pretty() gains a new optional argument n = 5.
  * There is a new function .pretty() with option bounds as a
    technical-utility version of pretty().  It and pretty() gain a
    new argument f.min with a better than back-compatible default.
  * Function grDevices::axisTicks() and related functions such as
    graphics::axis() work better, notably for the log scale; partly
    because of the pretty() improvements, but also because care is
    taken e.g., when ylim is finite but diff(ylim) is infinite.
  * nclass.FD() gains a digits option.
  * The R Mathlib internal C function bd0() (called indirectly from a
    dozen probability density and distribution functions such as
    dpois(), dbinom(), dgamma(), pgamma() _etc_) has been
    complemented by a more sophisticated and (mostly) more accurate C
    function ebd0(), currently called only by internal dpois_raw()
    improving accuracy for R level dpois() and potentially others
    calling it such as dnbinom(), dgamma() or pgamma().  (Thanks to
    Morten Welinder's PR#15628.)
  * write.ftable() gains sep = " " argument as suggested by Thomas
    Soeiro.
  * The names of the locale categories supported by R's
    Sys.getlocale() and Sys.setlocale() are now provided by variable
    .LC.categories in the base namespace.
  * The Date and POSIXt methods for hist() and the histogram method
    for plot() now also use the new default col = "lightgray" in
    consistency with the corresponding change to hist()'s default for
    R 4.0.0.
  * hist.default() gains new fuzz argument, and the histogram plot
    method no longer uses fractional axis ticks when displaying
    counts ("Frequency").
  * mapply() and hence Map() now also obey the "max-or-0-if-any"
    recycling rule, such that, e.g., Map(`+`, 1:3, 1[0]) is valid
    now.
  * as.character(&lt;obj&gt;) for "hexmode" or "octmode" objects now
    fulfils the important basic rule as.character(x)[j] ===
    as.character(x[j]).
  * The set utility functions, notably intersect() have been tweaked
    to be more consistent and symmetric in their two set arguments,
    also preserving a common mode.
  * substr(ch, start,end) &lt;- new now e.g., preserves names(ch); ditto
    for substring(), thanks to a patch from Brodie Gaslam.
  * plot(&lt;lm&gt;) gains a extend.ylim.f argument, in partial response to
    PR#15285; further PR#17784 is fixed thanks to several
    contributors and a patch by Elin Waring.  The Cook's dist
    contours get customizable via cook.col and cook.lty with a
    different default color and their legend is nicer by default and
    customizable via cook.legendChanges.
  * Attempting to subset an object that is not subsettable now
    signals an error of class notSubsettableError. The
    non-subsettable object is contained in the object field of the
    error condition.
  * Subscript-out-of-bounds errors are now signaled as errors of
    class subscriptOutOfBoundsError.
  * Stack-overflow errors are now signaled as errors inheriting from
    class stackOverflowError. See ?stackOverflowError for more
    details.
  * New partly experimental Sys.setLanguage() utility, solving the
    main problem of PR#18055.
  * gettext() and gettextf() get a new option trim = TRUE which when
    set to false allows translations for strings such as "Execution
    halted\n" typical for C code.
  * An experimental implementation of hash tables is now available.
    See ?hashtab for more details.
  * identical() gains a extptr.as.ref argument for requesting that
    external pointer objects be compared as reference objects.
  * reorder() gets an argument decreasing which it passes to sort()
    for level creation; based on the wish and patch by Thomas Soeiro
    in PR#18243.
  * as.vector() gains a data.frame method which returns a simple
    named list, also clearing a long standing 'FIXME' to enable
    as.vector(&lt;data.frame&gt;, mode="list").  This breaks code relying
    on as.vector(&lt;data.frame&gt;) to return the unchanged data frame.
  * legend() is now vectorized for arguments cex, x.intersp, and
    text.width.  The latter can now also be specified as a vector
    (one element for each column of the legend) or as NA for
    computing a proper column wise maximum value of strwidth(legend).
    The argument y.intersp can be specified as a vector with one
    entry for each row of the legend.
    legend() also gains new arguments title.cex and title.font.
    Thanks to Swetlana Herbrandt.
  * Deparsing no longer remaps attribute names dim, dimnames, levels,
    names and tsp to historical S-compatible names (which structure()
    maps back).
  * sample() and sample.int() have additional sanity checks on their
    size and n arguments.
    all.equal.numeric() gains a sanity check on its tolerance
    argument - calling all.equal(a, b, c) for three numeric vectors
    is a surprisingly common error.
    mean(na.rm =), rank(na.last =), barplot(legend.text =),
    boxplot(), contour(drawlabels =), polygon(border =) and
    methods::is(class2 =) have more robust sanity checks on their
    arguments.
    R CMD Rd2pdf (used by R CMD check) has a more robust sanity check
    on the format of \alias{} commands.
  * psigamma(x, deriv) for negative x now also works for deriv = 4
    and 5; their underlying C level dpsifn() is documented in
    'Writing R Extensions'.
  * The HTML help system now uses HTML5 (wish of PR#18149).
  * ks.test() now provides exact p-values also with ties and MC
    p-values in the two-sample (Smirnov) case.  By Torsten Hothorn.
  * ks.test() gains a formula interface, with y ~ 1 for the
    one-sample (Kolmogorov) test and y ~ group for the two-sample
    (Smirnov) test.  Contributed by Torsten Hothorn.
  * The return value from ks.test() now has class c("ks.test",
    "htest") - packages using try() need to take care to use
    inherits() and not == on the class.
  * New functions psmirnov(), qsmirnov() and rsmirnov() in package
    stats implementing the asymptotic and exact distributions of the
    two-sample Smirnov statistic.
  * iconv() now allows sub = "c99" to use C99-style escapes for UTF-8
    inputs which cannot be converted to encoding to.
  * In a forward pipe |&gt; expression it is now possible to use a named
    argument with the placeholder _ in the rhs call to specify where
    the lhs is to be inserted.  The placeholder can only appear once
    on the rhs.
  * The included LAPACK sources have been updated to version 3.10.0,
    except for the four Fortran 77 routines which 3.10.0 has
    re-implemented in Fortran 90 (where the older versions have been
    retained as the R build process does not support Fortran 90).
  * path.expand() and most other uses of tilde expansion now warn if
    a path would be too long if expanded.  (An exception is
    file.exists(), which silently returns false.)
  * trunc(&lt;Date&gt;, *) now supports units = "months" or "years" for
    consistency with the POSIXt method, thanks to Dirk Eddelbuettel's
    proposal in PR#18099.
  * list2DF() now checks that its arguments are of the same length,
    rather than use recycling.
  * The HTML help system has several new features: LaTeX-like math
    can be typeset using either KaTeX or MathJax, usage and example
    code is highlighted using Prism, and for dynamic help the output
    of examples and demos can be shown within the browser if the
    knitr package is installed. These features can be disabled by
    setting the environment variable _R_HELP_ENABLE_ENHANCED_HTML_ to
    a false value.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 15
    and so packages that provide graphics devices should be
    reinstalled.
  * The grid package now allows the user to specify a "vector" of
    pattern fills.  The fill argument to gpar() accepts a list of
    gradients and/or patterns and the functions linearGradient(),
    radialGradient(), and pattern() have a new group argument.
    Points grobs (data symbols) can now also have a pattern fill.
    The grobCoords() function now returns a more informative and
    complex result.
  * The grid package has new functions for drawing isolated groups:
    grid.group(), grid.define(), and grid.use().  These functions add
    compositing operators and affine transformations to R's graphics
    capabilities.
    The grid package also has new functions for stroking and filling
    paths: grid.stroke(), grid.fill(), and grid.fillStroke().
    A new function as.path() allows the user to specify the fill rule
    for a path that is to be used for clipping, stroking, or filling;
    available options are "winding" and "evenodd".  A new function
    as.mask() allows the user to specify the type of a mask;
    available options are "alpha" and "luminance".
    These new features are only supported so far (at most) on the
    Cairo-based graphics devices and on the pdf() device.
  * dev.capabilities() reports on device support for the new
    features.
  * par() now warns about unnamed non-character arguments to prevent
    misuse such as {usr &lt;- par("usr"); par(usr)}.
  INSTALLATION:
  * Facilities for accessing ftp:// sites are no longer tested
    (except _pro tem_ for curlGetHeaders()) as modern browsers have
    removed support.
  * R can now be built with DEFS = -DSTRICT_R_HEADERS .
  PACKAGE INSTALLATION:
  * R CMD INSTALL no longer tangles vignettes. This completes an R
    CMD build change in R 3.0.0 and affects packages built before R
    3.0.2. Such packages should be re-made with R CMD build to have
    the tangled R code of vignettes shipped with the tarball.
  * USE_FC_LEN_T will become the default: this uses the correct
    prototypes for Fortran BLAS/LAPACK routines called from C/C++,
    and requires adjustment of most such calls - see 'Writing R
    Extensions' SS6.6.2.  (This has been supported since R 3.6.2.)
  * Package installation speed for packages installed with
    keep.source has been improved. This resolve the issue reported by
    Ofek Shilon in PR#18236.
  UTILITIES:
  * R CMD check can optionally report files/directories left behind
    in home, /tmp (even though TMPDIR is set) and other directories.
    See the "R Internals" manual for details.
  * R CMD check now reports byte-compilation errors during
    installation.  These are not usually fatal but may result in
    parts of the package not being byte-compiled.
  * _R_CHECK_DEPENDS_ONLY_ can be applied selectively to examples,
    tests and/or vignettes in R CMD check: see the "R Internals"
    manual.
  * _R_CHECK_SRC_MINUS_W_IMPLICIT_ now defaults to true: recent
    versions of Apple clang on macOS have made implicit function
    declarations in C into a compilation error.
  * R CMD check --as-cran makes use of the environment variable
    AUTORECONF.  See the "R Internals" manual SS8 for further details.
  * R CMD check --use-valgrind also uses valgrind when re-building
    vignettes as some non-Sweave vignettes unhelpfully comment out
    all their code when R CMD check runs vignettes.
  * Errors in re-building vignettes (unless there are LaTeX errors)
    are reported by R CMD check as ERROR rather than WARNING when
    running vignettes has been skipped (as it frequently is in CRAN
    checks and by --as-cran).
  * R CMD Rd2pdf gains a --quiet option that is used by R CMD build
    when building the PDF package manual.
  * R CMD Rd2pdf now always runs LaTeX in batch mode, consistent with
    Texinfo &gt;= 6.7. The --batch option is ignored.
  * R CMD build and R CMD check now include the Rd file name and line
    numbers in the error message of an \Sexpr evaluation failure.
  * For packages using the \doi Rd macro (now an install-time \Sexpr)
    but no other dynamic Rd content, R CMD build now produces a
    smaller tarball and is considerably faster - skipping temporary
    package installation.
  C-LEVEL FACILITIES:
  * The non-API header R_ext/R-ftp-http.h is no longer provided, as
    the entry points it covered are now all defunct.
  * A number of non-API declarations and macro definitions have been
    moved from the installed header Rinternals.h to the internal
    header Defn.h. Packages that only use entry points and
    definitions documented to be part of the API as specified in
    'Writing R Extensions' SS6 should not be affected.
  * The macro USE_RINTERNALS no longer has any effect when compiling
    package code.  Packages which also use R_NO_REMAP will need to
    ensure that the remapped names are used for calls to API
    functions that were formerly also made available as macros.
  * The deprecated legacy S-compatibility macros PROBLEM, MESSAGE,
    ERROR, WARN, WARNING, RECOVER, ... are no longer defined in
    R_exts/RS.h (included by R.h).  Replace these by calls to
    Rf_error and Rf_warning (defined in header R_ext/Error.h included
    by R.h).
    Header R_ext/RS.h no longer includes R_ext/Error.h.
  * Header R_ext/Constants.h (included by R.h) when included from C++
    now includes the C++ header cfloat rather than the C header
    float.h (now possible as C++11 is required).
  * The legacy S-compatibility macros DOUBLE_* in R_ext/Constants.h
    (included by R.h) are deprecated.
  * The deprecated S-compatibility macros SINGLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * R_Calloc, R_Free and R_Realloc are preferred to their unprefixed
    forms and error messages now use the prefix. These forms were
    introduced in R 3.4.0 and are available even when
    STRICT_R_HEADERS is defined.
  * rmultinom has been documented in 'Writing R Extensions' SS6 so is
    now part of the R API.
  * Similarly, Rtanpi, called from R level tanpi() is now part of the
    R API.
  * The long-deprecated, undocumented and non-API entry point call_R
    is no longer declared in R_ext/RS.h (included by R.h).
  * The header S.h which has been unsupported since Jan 2016 has been
    removed.  Use R.h instead.
  DEPRECATED AND DEFUNCT:
  * The (non-default and deprecated) method = "internal" for
    download.file() and url() no longer supports http:// nor ftp://
    URIs.  (It is used only for file:// URIs.)
    On Windows, download.file(method = "wininet") no longer supports
    ftp:// URIs.  (It is no longer the default method, which is
    "libcurl" and does.)
    On Windows, the deprecated method = "wininet" now gives a warning
    for http:// and https:// URIs for both download.file() and url().
    (It is no longer the default method.)
  * On Windows, the command-line option --max-mem-size and
    environment variable R_MAX_MEM_SIZE are defunct.  The memory
    allocation limit was important for 32-bit builds, but these are
    no longer supported.
  * default.stringsAsFactors() is now formally deprecated, where that
    was only mentioned on its regular help page, previously.  So it
    now gives a warning if called.
  * unix.time() is defunct now; it had been deprecated since R 3.4.0.
  BUG FIXES:
  * Setting digits = 0 in format(), print.default() (and hence
    typically print()) or options() is again invalid.  Its behaviour
    was platform-dependent, and it is unclear what "zero significant
    digits" should mean (PR#18098).
  * Messages from C code in the cairo section of package grDevices
    are now also offered for translation, thanks to Michael Chirico's
    PR#18123.
  * mean(x) with finite x now is finite also without "long.double"
    capability.
  * R CMD Rd2pdf no longer leaves an empty build directory behind
    when it aborts due to an already existing output file.  (Thanks
    to Sebastian Meyer's PR#18141.)
  * density(x, weights = w, na.rm = TRUE) when anyNA(x) is true, now
    removes weights "in parallel" to x, fixing PR#18151, reported by
    Matthias Gondan.  Additionally, it gets a subdensity option.
  * Conversion of \Sexpr[]{&lt;expR&gt;} to LaTeX or HTML no longer
    produces long blocks of empty lines when &lt;expR&gt; itself contains
    several lines all producing empty output.  Thanks to a report and
    patch by Ivan Krylov posted to R-devel.
  * R CMD build no longer fails if a package vignette uses child
    documents and inst/doc exists.  (Thanks to Sebastian Meyer's
    PR#18156.)
  * When an R documentation ('help' source) file man/foo.Rd in a
    package has \donttest{..} examples with a syntax error, it is now
    signalled as ERROR and with correct line numbers relating to the
  * -Ex.R file, thanks to Duncan Murdoch and Sebastian Meyer's
    reports and patch proposals in PR#17501.
  * Improved determination of the correct translation domain in
    non-base packages, addressing the combination of PR#18092 and
    PR#17998 (#c6) with reports and _augmented_ patch #2904 by
    Suharto Anggono.
    Note that "R-base" is no longer the default domain e.g., for
    top-level calls to gettext(); rather translation needs explicit
    domain = * specification in such cases.
  * identical(attrib.as.set=FALSE) now works correctly with data
    frames with default row names (Thanks to Charlie Gao's PR#18179).
  * txtProgressBar() now enforces a non-zero width for argument char,
    without which no progress can be visible.
  * dimnames(table(d)) is more consistent in the case where d is a
    list with a single component, thanks to Thomas Soeiro's report to
    R-devel.
    Further, table(d1, d2) now gives an error when d1 and d2 are data
    frames as suggested by Thomas in PR#18224.
  * Fix for drawing semi-transparent lines and fills on the native
    Windows graphics device (PR#18219 and PR#16694).  Thanks to Nick
    Ray for helpful diagnosis on Bugzilla.
  * The deparser now wraps sub-expressions such as if(A) ..  with
    parentheses when needed; thanks to Duncan Murdoch's PR#18232 and
    Lionel Henry's patches there.
  * remove.packages() no longer tries to uninstall Priority: base
    packages, thanks to a report and suggestions by Colin Fay in
    PR#18227.
  * win.metafile() now has xpinch and ypinch arguments so that the
    user can override Windows' (potentially wrong) guess at device
    dimensions.
  * x[i] and x[[i]] for non-integer i should now behave in all cases
    as always documented: the index used is equivalent to
    as.integer(i) unless that would overflow where trunc(i) is used
    instead; thanks to Suharto Anggono's report and patch proposals
    in PR#17977.
  * asOneSidedFormula() now associates the resulting formula with the
    global environment rather than the evaluation environment created
    for the call.
  * &lt;bibentry&gt;$name now matches the field name case-insensitively,
    consistent with bibentry() creation and the replacement method.
  * cbind() failed to detect some length mismatches with a mixture of
    time-series and non-time-series inputs.
  * The default LaTeX style file Sweave.sty used by the RweaveLatex
    driver no longer loads the obsolete ae package; thanks to a
    report by Thomas Soeiro in PR#18271.  Furthermore, it now skips
    \usepackage[T1]{fontenc} for engines other than pdfTeX (if
    detected) or if the new [nofontenc] option is used.
  * smooth.spline() now stores its logical cv argument more safely,
    fixing a rare bug when printing, and also stores n.
  * smooth.spline(x,y,*) now computes the cv.crit statistic
    correctly, also when is.unsorted(x), fixing PR#18294.
  * The data.frame method of rbind() now warns when binding
    not-wholly-recycling vectors, by analogy to the default method
    (for matrices).
  * setAs() finds the correct class for name to when multiple
    packages define a class with that name. Thanks to Gabor Csardi
    for the report.
  * Fix for detaching a package when two classes of the same name are
    present in method signatures for the same generic. Thanks to
    Gabor Csardi for the report.
  * match.arg("", c("", "a", "B")) gives a better error message, in
    part from PR#17959, thanks to Elin Waring.
  * R CMD Sweave --clean no longer removes pre-existing files or
    subdirectories (PR#18242).
  * The quartz() device no longer splits polylines into subpaths.
    That has caused narrowly-spaced lines with many points to always
    look solid even when dashed line type was used due to dash phase
    restarts.
  * Deparsing constructs such as quote(1 + `!`(2) + 3) works again as
    before R 3.5.0, thanks to the report and patch in PR#18284 by
    Suharto Anggono.
  * as.list(f) for a factor f now keeps names(f), fixing PR#18309.
  * qbeta(.001, .9, .009) and analogous qf() calls now return a
    correct value instead of NaN or wrongly 1, all with a warning;
    thanks to the report by Ludger Goeminne in PR#18302.
  * plot.lm() failed to produce the plot of residuals vs.  factor
    levels (i.e., which=5 when leverages are constant) for models
    with character predictors (PR#17840).
  * interaction.plot(..., xtick = TRUE) misplaced the x-axis line
    (PR#18305).
  * Not strictly fixing a bug, format()ing and print()ing of
    non-finite Date and POSIXt values NaN and +/-Inf no longer show
    as NA but the respective string, e.g., Inf, for consistency with
    numeric vector's behaviour, fulfilling the wish of PR#18308.
  * R CMD check no longer runs test scripts generated from
    corresponding .Rin files twice and now signals an ERROR if
    processing an .Rin script fails.
  * tools::Rd2txt() used for plain-text help pages now renders \hrefs
    (if tools::Rd2txt_options(showURLs = TRUE)) and \urls with
    percent-encoding and standards-compliant delimiting style (angle
    brackets and no URL: prefix).  \email is now rendered with a
    mailto: prefix.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1655985600">- CHANGES IN R 4.2.1:
  NEW FEATURES:
  * New function utils::findCRANmirror() to find out if a CRAN mirror
    has been selected, otherwise fallback to the main site.  This
    behaves in the same way as tools::CRAN_package_db() and is
    intended for packages wishing to access CRAN for purposes other
    than installing packages.
    The need for this was shown by a day when the main CRAN website
    was offline and a dozen or so packages which had its URL
    hardcoded failed their checks.
  INSTALLATION on a UNIX-ALIKE:
  * The libraries searched for by --with-blas (without a value) now
    include BLIS (after OpenBLAS but before ATLAS).  And on macOS,
    the Accelerate framework (after ATLAS).  (This is patterned after
    the AX_BLAS macro from the Autoconf Archive.)
  * The included LAPACK sources have been updated to 3.10.1.
  UTILITIES:
  * The (full path to) the command tidy to be used for HTML
    validation can be set by environment variable R_TIDYCMD.
  * Setting environment variable _R_CHECK_RD_VALIDATE_RD2HTML_ to a
    false value will override R CMD check --as-cran and turn off HTML
    validation.  This provides a way to circumvent a problematic
    tidy.
    The 2006 version that ships with macOS is always skipped.
  C-LEVEL FACILITIES:
  * The undocumented legacy declarations of Sint, Sfloat, SINT_MAX
    and SINT_MIN in header R.h are deprecated.
  BUG FIXES:
  * fisher.test(d) no longer segfaults for "large" d; fixing PR#18336
    by preventing/detecting an integer overflow reliably.
  * tar(., files=*) now produces correctly the warning about invalid
    uid or gid of files, fixing PR#18344, reported by Martin Morgan.
  * tk_choose.files() with multi = FALSE misbehaved on paths
    containing spaces (PR#18334) (regression introduced in R 4.0.0).
  * sort(x, partial = ind, *) now works correctly notably for the
    non-default na.last = FALSE or TRUE, fixing PR#18335 reported by
    James Edwards.
  * Environment variable _R_CHECK_XREFS_REPOSITORIES_ is only used
    for checking .Rd cross-references in R CMD check (as documented)
    and not for other uses looking for a CRAN mirror.
  * The search for a CRAN mirror when checking packages now uses
    getOption("repos") if that specifies a CRAN mirror, even when it
    does not also specify all three Bioconductor repositories (as was
    previously required).
  * The HTML code generated by tools::Rd2HTML() has been improved to
    pass tidy 5.8.0.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1667217600">- CHANGES IN R 4.2.2:
  NEW FEATURES:
  * tools::Rdiff(useDiff = TRUE) checks for the presence of an
    external diff command and switches to useDiff = FALSE if none is
    found.  This allows R CMD Rdiff to always work.
  * On Windows, environment variable R_LIBCURL_SSL_REVOKE_BEST_EFFORT
    can be used to switch to only 'best-effort' SSL certificate
    revocation checks with the default "libcurl" download method.
    This reduces security, but may be needed for downloads to work
    with MITM proxies (PR#18379).
  * (macOS) The run-time check for libraries from XQuartz for X11 and
    Tcl/Tk no longer uses otool from the Apple Developer Tools
    (PR#18400).
  * The LaTeX style for producing the PDF manuals, Rd.sty, now loads
    the standard amsmath, amsfonts and amssymb packages for greater
    coverage of math commands in the Rd \eqn and \deqn macros.  The
    \mathscr LaTeX command is also provided (via the mathrsfs
    package, if available, or the amsfonts bundle otherwise),
    fulfilling the wish of PR#18398.
  * (Windows) The default format of readClipboard() and
    writeClipboard() has been changed to 13 (CF_UNICODETEXT).
  INSTALLATION on a UNIX-ALIKE:
  * The PDF manuals (if built) can be compacted by the new target
    make compact-pdf (at the top level or in directory doc/manual).
  * There is now configure support for LLVM clang 15 on Linux, which
    defaults to position-independent (PIE) executables whereas
    gfortran does not.
  * Many small changes to ease compilation (and suppress warnings)
    with LLVM clang 15.
  BUG FIXES:
  * Rscript -e would fail if stdin were closed (Reported by Henrik
    Bengtsson.)
  * qt(*, log.p=TRUE) in outer tails no longer produces NaN in its
    final steps, thus fixing PR#18360.
  * tools::Rd2latex() now escapes hashes and ampersands when writing
    URLs, fixing LaTeX errors with such URLs in \tabular.
  * When isGeneric(f, fdef=*) is used with mismatching names, the
    warning is better understandable; reported (with fix) in PR#18370
    by Gabe Becker.
  * poly(x, n) now works again (and is now documented) when x is a
    "Date" or "POSIXct" object, or of another class while fulfilling
    mode(x) == "numeric".  This also enables poly(x, *, raw=TRUE) for
    such variables.  Reported by Michael Chirico to R-devel.
  * write.table(), write.csv() and write.csv2() restore their
    numerical precision (internal equivalent of digits = 15) after an
    interrupt (PR#18384).
  * One can now read also byte FF from a clipboard connection
    (PR#18385).
  * source("") and source(character()) now give more helpful error
    messages.
  * R CMD check --as-cran set _R_CHECK_TIMINGS_ too late to have the
    intended effect.
  * as.POSIXlt(x) now also works with very large dates x, fixing
    PR#18401 reported by Hannes M"uhleisen.
  * Files can now be extracted even from very large zip archives
    (PR#18390, thanks to Martin Jakt).
  * Non-finite objects of class "POSIXlt" are now correctly coerced
    to classes "Date" and "POSIXct"; following up on the extension to
    format() them correctly.
  * Added methods for is.finite(), is.infinite() and is.nan() for
    "POSIXlt" date-time objects.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1678881600">- CHANGES IN R 4.2.3:
  C-LEVEL FACILITIES:
  * The definition of DL_FUNC in R_ext/Rdynload.h has been changed to
    be fully C-compliant.  This means that functions loaded _via_ for
    example R_GetCCallable need to be cast to an appropriate type if
    they have any arguments.
  * .Machine has a new element sizeof.time_t to identify old systems
    with a 32-bit type and hence a limited range of date-times (and
    limited support for dates millions of years from present).
  PACKAGE INSTALLATION:
  * (Windows) The default C++ standard had accidentally been left at
    C++11 when it was changed to C++14 on Unix.
  BUG FIXES:
  * As "POSIXlt" objects may be "partially filled" and their list
    components meant to be recycled, length() now is the length of
    the longest component.
  * as.POSIXlt.Date() could underflow for dates in the far past (more
    than half a million years BCE).
  * as.Date.POSIXlt(x) would return "1970-01-01" instead of NA in R
    4.2.2, e.g., for
    x &lt;- as.POSIXlt(c("2019-01-30","2001-1-1"))
    x$mon &lt;- c(0L, NA); as.Date(x)
  * R CMD check failed to apply enabled _R_CHECK_SUGGESTS_ONLY_ to
    examples and vignettes (regression in R 4.2.0).
  * R CMD check did not re-build vignettes in separate processes by
    default (regression in R 4.2.0).
  * Running examples from HTML documentation now restores previous
    knitr settings and options (PR#18420).
  * Quartz: fonts are now located using Core Graphics API instead of
    deprecated ATS which is no longer supported in the macOS 13 SDK
    (PR#18426).  This also addresses an issue where the currently
    used font in the Quartz device context was not correctly
    retained.
  * (Windows) Math symbols in text drawing functions are again
    rendered correctly (PR#18440).  This fixes a regression in R
    4.2.1 caused by a fix in PR#18382 which uncovered an issue in
    GraphApp due to which the symbol charset was not used with TT
    Symbol font face.
  * (Windows) Installing a package with a src/Makefile.{win,ucrt}
    file includes ~/.R/Makevars.win64 in the search for user
    makevars, as documented in "R Installation and Administration"
    and done for packages with a src/Makevars.{win,ucrt} file.
  * format(&lt;POSIXlt_w/_unbalanced_sec&gt;, "....%OS&lt;n&gt;") with n &gt; 0 no
    longer accidentally uses the unbalanced seconds, thanks to
    Suharto Anggono's report (including patch) in PR#18448.
  * solve.default(a, b) works around issues with some versions of
    LAPACK when a contains NA or NaN values.
  * When UseMethod() cannot dispatch, it no longer segfaults
    producing the error message in case of a long class(), thanks to
    Joris Vankerschaver's report (including patch) in PR#18447.
  * When example(foo, ..) produces graphics on an interactive device
    it needs to open itself, it now leaves devAskNewPage() unchanged
    even when it was FALSE, thus fixing a 14 years old '&lt;FIXME&gt;'.
  * packageDescription() again catches errors from encoding
    conversions. This also fixes broken packageVersion() in C locale
    on systems where iconv does not support transliteration.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1681128000">- add patch to build with libcurl &gt;= 8</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1682078400">- CHANGES IN R 4.3.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Calling &amp;&amp; or || with LHS or (if evaluated) RHS of length greater
    than one is now always an error, with a report of the form
    'length = 4' in coercion to 'logical(1)'
    Environment variable _R_CHECK_LENGTH_1_LOGIC2_ no longer has any
    effect.
  NEW FEATURES:
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.10.1.  (This caused some platform-dependent
    changes to package check output.)  And then to the sources from
    LAPACK version 3.11.0 (with changes only to double complex
    subroutines).
  * The included LAPACK sources have been updated to include the four
    Fortran 90 routines rather than their Fortran 77 predecessors.
    This may give some different signs in SVDs or
    eigendecompositions..  (This completes the transition to LAPACK
    3.10.x begun in R 4.2.0.)
  * The LAPACK sources have been updated to version 3.11.0.  (No new
    subroutines have been added, so this almost entirely bug fixes:
    Those fixes do affect some computations with NaNs, including R's
    NA.)
  * The parser now signals _classed_ errors, notably in case of the
    pipe operator |&gt;.  The error object and message now give line and
    column numbers, mostly as proposed and provided by Duncan Murdoch
    in PR#18328.
  * toeplitz() is now generalized for asymmetric cases, with a
    toeplitz2() variant.
  * xy.coords() and xyz.coords() and consequently, e.g., plot(x,y,
    log = "y") now signal a _classed_ warning about negative values
    of y (where log(.) is NA).  Such a warning can be specifically
    suppressed or caught otherwise.
  * Regular expression functions now check more thoroughly whether
    their inputs are valid strings (in their encoding, e.g. in
    UTF-8).
  * The performance of grep(), sub(), gsub() and strsplit() has been
    improved, particularly with perl = TRUE and fixed = TRUE.  Use of
    useBytes = TRUE for performance reasons should no longer be
    needed and is discouraged: it may lead to incorrect results.
  * apropos() gains an argument dot_internals which is used by the
    completion (help(rcompgen)) engine to also see base internals
    such as .POSIXct().
  * Support in tools::Rdiff() for comparing uncompressed PDF files is
    further reduced - see its help page.
  * qqplot(x, y, ...) gains conf.level and conf.args arguments for
    computing and plotting a confidence band for the treatment
    function transforming the distribution of x into the distribution
    of y (Switzer, 1976, _Biometrika_). Contributed by Torsten
    Hothorn.
  * Performance of package_dependencies() has been improved for cases
    when the number of dependencies is large.
  * Strings newly created by gsub(), sub() and strsplit(), when any
    of the inputs is marked as "bytes", are also marked as "bytes".
    This reduces the risk of creating invalid strings and accidental
    substitution of bytes deemed invalid.
  * Support for readLines(encoding = "bytes") has been added to allow
    processing special text files byte-by-byte, without creating
    invalid strings.
  * iconv(from = "") now takes into account any declared encoding of
    the input elements and uses it in preference to the native
    encoding.  This reduces the risk of accidental creation of
    invalid strings, particularly when different elements of the
    input have different encoding (including "bytes").
  * Package repositories in getOption("repos") are now initialized
    from the repositories file when utils is loaded (if not already
    set, e.g., in .Rprofile).  (From a report and patch proposal by
    Gabriel Becker in PR#18405.)
  * compactPDF() gets a verbose option.
  * type.convert() and hence read.table() get new option tryLogical =
    TRUE with back compatible default.  When set to false, converts
    "F" or "T" columns to character.
  * Added new unit prefixes "R" and "Q" for abbreviating
    (unrealistically large) sizes beyond 10^{27} in standard = "SI",
    thanks to Henrik Bengtsson's PR#18435.
  * as.data.frame()'s default method now also works fine with atomic
    objects inheriting from classes such as "roman", "octmode" and
    "hexmode", such fulfilling the wish of PR#18421, by Benjamin
    Feakins.
  * The as.data.frame.vector() utility now errors for wrong-length
    row.names.  It warned for almost six years, with "Will be an
    error!".
  * sessionInfo() now also contains La_version() and reports codepage
    and timezone when relevant, in both print() and toLatex() methods
    which also get new option tzone for displaying timezone
    information when locale = FALSE.
  * New function R_compiled_by() reports the C and Fortran compilers
    used to build R, if known.
  * predict(&lt;lm&gt;, newdata = *) no longer unnecessarily creates an
    offset of all 0s.
  * solve() for complex inputs now uses argument tol and by default
    checks for 'computational singularity' (as it long has done for
    numeric inputs).
  * predict(&lt;rank-deficient lm&gt;, newdata=*) now obeys a new argument
    rankdeficient, with new default "warnif", warning only if there
    are non-estimable cases in newdata.  Other options include
    rankdeficient = "NA", predicting NA for non-estimable newdata
    cases.  This addresses PR#15072 by Russ Lenth and is based on his
    original proposal and discussions in PR#16158 also by David Firth
    and Elin Waring.  Still somewhat experimental.
  * Rgui console implementation now works better with the NVDA screen
    reader when the full blinking cursor is selected.  The underlying
    improvements in cursor handling may help also other screen
    readers on Windows.
  * The drop-field control in GraphApp can now be left with the TAB
    key and all controls can be navigated in the reverse order using
    the Shift+TAB key, improving accessibility of the Rgui
    configuration editor.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now fully accurate
    (instead of to "only" minimally five digits).
  * demo(error.catching) now also shows off withWarnings() and
    tryCatchWEMs().
  * As an experimental feature the placeholder _ can now also be used
    in the rhs of a forward pipe |&gt; expression as the first argument
    in an extraction call, such as _$coef. More generally, it can be
    used as the head of a chain of extractions, such as _$coef[[2]].
  * Spaces in the environment variable used to choose the R session's
    temporary directory (TMPDIR, TMP and TEMP are tried in turn) are
    now fatal.  (On Windows the 'short path' version of the path is
    tried and used if that does not contain a space.)
  * all.equal.numeric() gets a new optional switch giveErr to return
    the numeric error as attribute.  Relatedly,
    stopifnot(all.equal&lt;some&gt;(a, b, ..)) is as "smart" now, as
    stopifnot(all.equal(....)) has been already, thus allowing
    customized all.equal&lt;Some&gt;() wrappers.
  * R on Windows is now able to work with path names longer than 260
    characters when these are enabled in the system (requires at
    least Windows 10 version 1607).  Packages should be updated to
    work with long paths as well, instead of assuming PATH_MAX to be
    the maximum length.  Custom front-ends and applications embedding
    R need to update their manifests if they wish to allow this
    feature.  See
    &lt;https://blog.r-project.org/2023/03/07/path-length-limit-on-windows&gt;
    for more information.
  * 'Object not found' and 'Missing argument' errors now give a more
    accurate error context. Patch provided by Lionel Henry in
    PR#18241.
  * The @ operator is now an S3 generic. Based on contributions by
    Tomasz Kalinowski in PR#18482.
  * New generic chooseOpsMethod() provides a mechanism for objects to
    resolve cases where two suitable methods are found for an Ops
    Group Generic. This supports experimenting with alternative
    object systems. Based on contributions by Tomasz Kalinowski in
    PR#18484.
  * inherits(x, what) now accepts values other than a simple
    character vector for argument what. A new generic, nameOfClass(),
    is called to resolve the class name from what. This supports
    experimenting with alternative object systems. Based on
    contributions by Tomasz Kalinowski in PR#18485.
  * Detection of BLAS/LAPACK in use (sessionInfo()) with FlexiBLAS
    now reports the current backend.
  * The "data.frame" method for subset() now warns about extraneous
    arguments, typically catching the use of = instead of == in the
    subset expression.
  * Calling a:b when numeric a or b is longer than one may now be
    made into an error by setting environment variable
    _R_CHECK_LENGTH_COLON_ to a true value, along the proposal in
    PR#18419 by Henrik Bengtsson.
  * density(x, weights = *) now warns if automatic bandwidth
    selection happens without using weights; new optional warnWbw may
    suppress the warning.  Prompted by Christoph Dalitz' PR#18490 and
    its discussants.
  * rm(list = *) is faster and more readable thanks to Kevin Ushey's
    PR#18492.
  * The plot.lm() function no longer produces a normal Q-Q plot for
    GLMs. Instead it plots a half-normal Q-Q plot of the absolute
    value of the standardized deviance residuals.
  * The print() method for class "summary.glm" no longer shows
    summary statistics for the deviance residuals by default.  Its
    optional argument show.residuals can be used to show them if
    required.
  * The tapply() function now accepts a data frame as its X argument,
    and allows INDEX to be a formula in that case. by.data.frame()
    similarly allows INDICES to be a formula.
  * The performance of df[j] &lt;- value (including for missing j) and
    write.table(df) has been improved for data frames df with a large
    number of columns.  (Thanks to Gabriel Becker's PR#18500,
    PR#18503 and discussants, prompted by a report from Toby Dylan
    Hocking on the R-devel mailing list.)
  * The matrix multiply operator %*% is now an S3 generic, belonging
    to new group generic matrixOps.  From Tomasz Kalinowski's
    contribution in PR#18483.
  * New function array2DF() to convert arrays to data frames,
    particularly useful for the list arrays created by tapply().
  DATES and TIMES:
  * On platforms where (non-UTC) datetimes before 1902 (or before
    1900 as with system functions on recent macOS) are guessed by
    extrapolating time zones from 1902-2037, there is a warning at
    the first use of extrapolation in a session.  (As all time zones
    post 2037 are extrapolation, we do not warn on those.)
  * (Platforms using --with-internal-tzone, including Windows and by
    default macOS). How years are printed in dates or date-times can
    be controlled by environment variable R_PAD_YEARS_BY_ZERO.  The
    default remains to pad to 4 digits by zeroes, but setting value
    no gives no padding (as used by default by glibc).
  * strftime() tries harder to determine the offset for the "%z"
    format, and succeeds on the mainstream R platforms.
  * strftime() has a limit of 2048 bytes on the string produced -
    attempting to exceed this is an error.  (Previously it silently
    truncated at 255 bytes.)
  * sessionInfo() records (and by default prints) the system time
    zone as part of the locale information.  Also, the source
    (system/internal) of the date-time conversion and printing
    functions.
  * Objects of class "POSIXlt" created in this version of R always
    have 11 components: component zone is always set, and component
    gmtoff is set for times in UTC and usually set on the (almost
    all) platforms which have C-level support, otherwise is NA.
  * There are comprehensive validity checks on the structure of
    objects of class "POSIXlt" when converting (including formatting
    and printing).  (This avoids mis-conversions of hand-crafted
    objects.)
  * There is some support for using the native date-time routines on
    macOS: this is only viable on recent versions (e.g. 12.6 and 13)
    and does get wrong some historical changes (before 1900, during
    WWII).  Use of --with-internal-tzone remains the default.
  * as.POSIXct(&lt;numeric&gt;) and as.POSIXlt(.) (without specifying
    origin) now work.  So does as.Date(&lt;numeric&gt;).
  * as.Date.POSIXct(., tz) now treats several tz values, notably
    "GMT" as equivalent to "UTC", proposed and improved by Michael
    Chirico and Joshua Ulrich in PR#17674.
  * Experimental balancePOSIXlt() utility allows using "ragged" and
    or out-of-range "POSIXlt" objects more correctly, e.g., in
    subsetting and subassignments.  Such objects are now documented.
    More experimentally, a "POSIXlt" object may have an attribute
    "balanced" indicating if it is known to be filled or fully
    balanced.
  * Functions axis.Date() and axis.POSIXct() are rewritten to gain
    better default tick locations and better default formats by using
    prettyDate(). Thanks to Swetlana Herbrandt.
  * The mapping of Windows' names for time zones to IANA's 'Olson'
    names has been updated.  When ICU is available (it is by
    default), it is used to get a mapping for the current region set
    in Windows.  This can be overridden by setting environment
    variable TZ to the desired Olson name - see OlsonNames() for
    those currently available.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 16
    and so packages that provide graphics devices should be
    reinstalled.
  * The grDevices and grid packages have new functions for rendering
    typeset glyphs, primarily: grDevices::glyphInfo() and
    grid::grid.glyph().
    Rendering of typeset glyphs is only supported so far on the
    Cairo-based graphics devices and on the pdf() and quartz()
    devices.
  * The defined behaviour for "clear" and "source" compositing
    operators (via grid::grid.group()) has been changed (to align
    better with simple interpretation of original Porter-Duff
    definitions).
  * Support for gradients, patterns, clipping paths, masks, groups,
    compositing operators, and affine transformations has been added
    to the quartz() device.
  INSTALLATION on a UNIX-ALIKE:
  * A system installation of generic LAPACK 3.10.0 or later will be
    preferred to the version in the R sources.
    configure option --with-lapack=no (equivalently --without-lapack)
    forces compilation of the internal LAPACK sources.
    If --with-lapack is not specified, a system liblapack is looked
    for and used if it reports version 3.10.0 or later and does not
    contain BLAS routines.
    Packages using LAPACK will need to be reinstalled if this changes
    to using an external library.
  * On aarch64 Linux platforms using GCC, configure now defaults to
  - fPIC (instead of -fpic), as desired in PR#18326.
  * configure now checks conversion of datetimes between POSIXlt and
    POSIXct around year 2020.  Failure (which has been seen on
    platforms missing tzdata) is fatal.
  * If configure option --with-valgrind-instrumentation is given
    value 1 or 2, option --with-system-valgrind-headers is now the
    default and ignored (with a warning).  It is highly recommended
    that the system headers are installed alongside valgrind: they
    are part of its packaging on some Linux distributions and
    packaged separately (e.g. in the valgrind-devel RPM) on others.
    configure will give a warning if they are not found.
    The system headers will be required in a future release of R to
    build with valgrind instrumentation.
  * libcurl 8.x is now accepted by configure: despite a change in
    major version number it changes neither API nor ABI.
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools43, an update of the Rtools42 toolchain.  It is
    based on gcc 12 and newer versions of MinGW-W64, binutils and
    libraries.  At this time R-devel can still be built using
    Rtools42 without changes, but when R-devel is installed via the
    installer, it will by default look for Rtools43.
  * Old make targets rsync-extsoft and 32-bit ones that are no longer
    needed have been removed.
  * Default builds (including for packages) no longer select C99.
    Thus the C standard used is the default for the compiler, which
    for the toolchain in Rtools43 is C17.  (This is consistent with
    Unix builds.)
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++17 where
    available (which it is on all currently checked platforms): if
    not C++14 or C++11 is used if available otherwise C++ is not
    supported.
  * USE_FC_LEN_T is the default: this uses the correct
    (compiler-dependent) prototypes for Fortran BLAS/LAPACK routines
    called from C/C++, and requires adjustment of many such calls -
    see 'Writing R Extensions' SS6.6.1.
  * There is initial support for C++23 as several compilers are now
    supporting -std=c++23 or -std=c++2b or similar.  As for C++20,
    there no additional configure checks for C++23 features beyond a
    check that the compiler reports a __cplusplus value greater than
    that in the C++20 standard.  C++ feature tests should be used.
  * There is support for a package to indicate the version of the C
    standard which should be used to compile it, and for the
    installing user to specify this.  In most cases R defaults to the
    C compiler's default standard which is C17 (a `bug-fix' of C11) -
    earlier versions of R or compilers may have defaulted to C99.
    Current options are:
    USE_C17 Use a standard that is at most C17.  The intention is to
    allow legacy packages to still be installed when later C
    standards become the default, including packages using new
    keywords as identifiers or with K&amp;R-style function
    declarations.  This will use C17 if available, falling back
    to C11.
    USE_C90 Use the C90 (aka C89) standard.  (As that standard did
    not require compilers to identify that version, all we can
    verify is that the compiler does not claim to be using a
    later standard.  It may accept C99 features - for example
    clang accepts // to make comments.)
    USE_C99 Use the C99 standard. This should be rarely needed - it
    avoids the few new features of C11/C17 which can be useful if
    a package assumes them if C17 is specified and they are not
    implemented.
    USE_C23 Use C23 (or in future, later).  Compiler/library support
    for C23 is still being implemented, but LLVM clang from
    15.0.0 and the upcoming GCC 13 have quite extensive support.
    These can be specified as part of the SystemRequirements field in
    the package's DESCRIPTION file or _via_ options --use-C17 and so
    on of R CMD INSTALL and R CMD SHLIB.
    For further details see "Writing R Extensions" SS1.2.5.
  * (Windows) A src/Makefile.ucrt or src/Makefile.win file is now
    included after R_HOME/etcR_ARCH/Makeconf and so no longer needs
    to include that file itself.  Installation of a package with such
    a file now uses a site Makevars file in the same way as a package
    with a src/Makevars.win file would.
  * configure is now passed crucial variables such as CC and CFLAGS
    in its environment, as many packages were not setting them (as
    documented in 'Writing R Extensions' SS1.2).
    This has most effect where configure is used to compile parts of
    the package - most often by cmake or libtool which obfuscate the
    actual compile commands used.
    Also used for configure.win and configure.ucrt on Windows.
  FORTRAN FLAGS:
  * The flag -fno-optimize-sibling-calls is no longer forced for
    gfortran 7 and later.  It should no longer be needed now using
    'hidden' character-length arguments when calling BLAS/LAPACK
    routines from C/C++ is the default even for packages.  (Unless
    perhaps packages call Fortran code from C/C++ without using R's
    headers and without allowing for these arguments.)
  C-LEVEL FACILITIES:
  * The deprecated S-compatibility macros DOUBLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * The deprecated legacy typedefs of Sint and Sfloat in header R.h
    are no longer defined, and that header no longer includes header
    limits.h from C nor climits from C++.
  * New macro CAD5R() is provided in Rinternals.h and used in a few
    places in the R sources.
  * ALTREP now supports VECSXP vectors. Contributed by Gabor Csardi
    in PR#17620.
  * The Rcomplex definition (in header R_ext/Complex.h) has been
    extended to prevent possible mis-compilation when interfacing
    with Fortran (PR#18430).  The new definition causes compiler
    warnings with static initializers such as {1, 2}, which can be
    changed to {.r=1, .i=2}.
    Using the new definition from C++ depends on compiler extensions
    supporting C features that have not been incorporated into the
    C++ standards but are available in g++ and clang++: this may
    result in C++ compiler warnings but these have been worked around
    for recent versions of common compilers (GCC, Apple/LLVM clang,
    Intel).
    It is intended to change the inclusion of header R_ext/Complex.h
    by other R headers, so C/C++ code files which make use of
    Rcomplex should include that header explicitly.
  UTILITIES:
  * R CMD check does more checking of package .Rd files, warning
    about invalid email addresses and (some) invalid URIs and noting
    empty \item labels in description lists.
  * R CMD check now also reports problems when reading package news
    in md (file NEWS.md) and (optionally) plain text (file NEWS)
    formats.
  * _R_CHECK_TIMINGS_ defaults to a value from the environment even
    for R CMD check --as-cran; this allows for exceptionally fast or
    slow platforms.
    It now applies to checking PDF and HTML versions of the manuals,
    and 'checking CRAN incoming feasibility'.
  * R CMD check can optionally (but included in --as-cran) check
    whether HTML math rendering _via_ KaTeX works for the package .Rd
    files.
  * Non-interactive debugger invocations can be trapped by setting
    the environment variable _R_CHECK_BROWSER_NONINTERACTIVE_ to a
    true value.  This is enabled by R CMD check --as-cran to detect
    the use of leftover browser() statements in the package.
  * The use of sprintf and vsprintf from C/C++ has been deprecated in
    macOS 13 and is a known security risk.  R CMD check now reports
    (on all platforms) if their use is found in compiled code:
    replace by snprintf or vsnprintf respectively. [*NB:* whether
    such calls get compiled into the package is platform-dependent.]
  * Where recorded at installation, R CMD check reports the C and
    Fortran compilers used to build R.
    It reports the OS in use (if known, as given by osVersion) as
    well as that R was built for.
    It notes if a C++ standard was specified which is older than the
    current default: many packages have used C++11 to mean 'not
    C++98' - as C++11 is the minimum supported since R 4.0.0, that
    specification can probably be removed.
  * R CMD INSTALL reports the compilers (and on macOS, the SDK) used,
    and this is copied to the output of R CMD check.
    Where a C++ standard is specified, it is reported.
  * R CMD check's 'checking compilation flags in Makevars' has been
    relaxed to accept the use of flags such as -std=f2008 in
    PKG_FFLAGS.
  * tools::buildVignettes() has a new argument skip, which is used by
    R CMD check to skip (and note) vignettes with unavailable
    \VignetteDepends (PR#18318).
  * New generic .AtNames() added to enable class-specific completions
    after @. The formerly internal function findMatches() is now
    exported, mainly for use in methods for .DollarNames() and
    .AtNames().
  DEPRECATED AND DEFUNCT:
  * default.stringsAsFactors() is defunct.
  * Calling as.data.frame.&lt;class&gt;() directly (for 12 atomic classes)
    is going to be formally deprecated, currently activated by
    setting the environment variable
    _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ to non-empty, which also
    happens in R CMD check --as-cran.
  BUG FIXES:
  * Hashed environments with sizes less than 5 can now grow.
    (Reported to R-devel by Duncan Garmonsway.)
  * as.character(&lt;Rd&gt;, deparse = TRUE) failed to re-escape curly
    braces in LaTeX-like text.  (Reported by Hadley Wickham in
    PR#18324.)
  * library() now passes its lib.loc argument when requiring Depends
    packages; reported (with fix) in PR#18331 by Mikael Jagan.
  * R CMD Stangle: improved message about 'Output' files.
  * head(x, n) and tail(x, n) now signal an error if n is not
    numeric, instead of incidentally "working" sometimes returning
    all of x.  Reported and discussed by Colin Fay, in PR#18357.
  * The "lm" method for summary() now gives the correct F-statistic
    when the model contains an offset.  Reported in PR#18008.
  * C() and `contrasts&lt;-`() now preserve factor level names when
    given a function object (as opposed a function name which did
    preserve names). Reported in PR#17616.
  * c(a = 1, 2)[[]] no longer matches 2 but rather signals a
    _classed_ error.  Reported and analysed by Davis Vaughan in
    PR#18367, a duplicate of PR#18004, by Jan Meis et al.  For
    consistency, NULL[[]] is also erroneous now.  x[[]] &lt;- v gives an
    error of the same class "MissingSubscriptError".
  * The relist() function of utils now supports NULL elements in the
    skeleton (PR#15854).
  * ordered(levels = *) (missing x) now works analogously to factor(,
    ordered=TRUE); reported (with fix) by Achim Zeileis in PR#18389.
  * User-defined Rd macro definitions can now span multiple lines,
    thanks to a patch from Duncan Murdoch. Previously, the Rd parser
    silently ignored everything after the first line.
  * Plain-text help (tools::Rd2txt()) now preserves an initial blank
    line for text following description list items.
  * tools::Rd2HTML() and tools::Rd2latex() no longer split \arguments
    and \value lists at Rd comments.
  * tools::Rd2latex() now correctly handles optional text outside
    \items of argument lists as well as bracketed text at the
    beginning of sections, e.g., \value{[NULL]}.
  * as.character(&lt;POSIXt&gt;) now behaves more in line with the methods
    for atomic vectors such as numbers, and is no longer influenced
    by options().  Ditto for as.character(&lt;Date&gt;).  The
    as.character() method gets arguments digits and OutDec with
    defaults _not_ depending on options().  Use of as.character(*,
    format = .) now warns.
  * Similarly, the as.character.hexmode() and *.octmode() methods
    also behave as good citizen methods and back compatibility option
    keepStr = TRUE.
  * The as.POSIXlt(&lt;POSIXlt&gt;) and as.POSIXct(&lt;POSIXct&gt;) default
    methods now do obey their tz argument, also in this case.
  * as.POSIXlt(&lt;Date&gt;) now does apply a tz (time zone) argument, as
    does as.POSIXct(); partly suggested by Roland Fuss on the R-devel
    mailing list.
  * as.Date.POSIXlt(x) now also works when the list components are of
    unequal length, aka "partially filled" or "ragged".
  * expand.model.frame() looked up variables in the wrong environment
    when applied to models fitted without data.  Reported in
    PR#18414.
  * time() now (also) uses the ts.eps = getOption("ts.eps") argument
    and thus by default rounds values very close to the start (or
    end) of a year.  Based on a proposal by Andre"i V. Kostyrka on
    R-help.
  * Printing of a factanal() result with just one factor and sort =
    TRUE now works regularly, fixing PR#17863 by Timothy Bates,
    thanks to the 'R Contributors' working group.
  * Printing 0-length objects of class "factor", "roman", "hexmode",
    "octmode", "person", "bibentry", or "citation" now prints
    something better, one of which fixes PR#18422, reported by
    Benjamin Feakins.
  * Sys.timezone() queries timedatectl only if systemd is loaded;
    addressing a report by Jan Gorecki in PR#17421.
  * The formula method of cor.test() had scoping problems when
    environment(formula) was not the calling environment; reported
    with a patch proposal by Mao Kobayashi in PR#18439.
  * attach() of an environment with active bindings now preserves the
    active bindings.  Reported by Kevin Ushey in PR#18425.
  * BLAS detection now works also with system-provided libraries not
    available as regular files.  This fixes detection of the
    Accelerate framework on macOS since Big Sur.  Reported by David
    Novgorodsky.
  * download.file() gives a helpful error message in case of an
    invalid download.file.method option, thanks to Colin Fay's report
    in PR#18455.
  * Sporadic crashes of Rterm when using completion have been fixed.
  * Rprof() is now more reliable.  A livelock in thread
    initialization with too short sampling interval has been fixed on
    macOS.  A deadlock in using the C runtime has been fixed on
    Windows.  A potential deadlock has been prevented on Unix.
  * Cursor placement in Rgui now works even after a fixed-width font
    is selected.
  * Mandatory options (options()) are now set on startup so that
    saving and restoring them always works (PR#18372).
  * Package installation, R CMD INSTALL or install.packages(*), now
    parses each of the &lt;pkg&gt;/R/*.R files individually instead of
    first concatenating and then parse()ing the large resulting file.
    This allows parser or syntax errors to be diagnosed with correct
    file names and line numbers, thanks to Simon Dedman's report and
    Bill Dunlap's patch in PR#17859.
    This _does_ require syntactically self contained R source files
    now, fixing another inadvertent bug.
  * predict.lm(&lt;model with offset&gt;) now finds the offset in the
    correct environment, thanks to Andr'e Gillibert's report and patch
    in PR#18456.
  * getInitial(&lt;formula&gt;) now finds the selfStart model in the
    correct environment.  (Reported by Ivan Krylov in PR#18368.)
  * Fix for possible segfault when using recently-added graphics
    features, such as gradients, clipping paths, masks, and groups
    with pdf(file=NULL).
  * class(m) &lt;- class(m) no longer changes a matrix m by adding a
    class _attribute_.
  * packageDate(pkg) now only warns once if there is no pkg.
  * When ts() creates a multivariate time series, "mts", it also
    inherits from "array" now, and is.mts() is documented _and_
    stricter.
  * Rd2txt() now preserves line breaks of \verb Rd content and from
    duplicated \cr.  The former also fixes the rendering of verbatim
    output from Rd \Sexpr in plain-text help.
  * uniroot(f, interval) should no longer wrongly converge _outside_
    the interval in some cases where abs(f(x)) == Inf for an x at the
    interval boundary, thanks to posts by Ben Bolker and Serguei
    Sokol on R-devel.
  * Vectorized alpha handling in palette functions such as in gray(),
    rainbow(), or hcl.colors() works correctly now, thanks to Achim
    Zeileis' report and patch in PR#18476.
  * Formatting and print()ing of bibentry objects has dropped the
    deprecated citation.bibtex.max argument, such that the bibtex
    argument's default for print.bibentry() depends directly on the
    citation.bibtex.max option, whereas in format.bibentry() the
    option no longer applies.
  * Attempting to use a character string naming a foreign function
    entry point in a foreign function call in a package will now
    signal an error if the packages has called R_forceSymbols to
    specify that symbols must be used.
  * An error in table() could permanently set options(warn=2)
    promoting all subsequent warnings to errors.
  * The sigma() function gave misleading results for binary GLMs.  A
    new method for objects of class "glm" returns the square root of
    the estimate of the dispersion parameter using the same
    calculation as summary.glm().
  * bs() and ns() in the (typical) case of automatic knot
    construction, when some of the supposedly inner knots coincide
    with boundary knots, now moves them inside (with a warning),
    building on PR#18442 by Ben Bolker.
  * R CMD on Windows now skips the site profile with --no-site-file
    and --vanilla even when R_PROFILE is set (PR#18512, from Kevin
    Ushey).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1686916800">- CHANGES IN R 4.3.1:
  C-LEVEL FACILITIES:
  * The C-level API version of R's integrate(), Rdqags() in Applic.h,
    now returns the correct number of integrand evaluations neval,
    fixing PR#18515 reported and diagnosed by Stephen Wade.
  * The C prototypes for LAPACK calls dspgv and dtptrs in
    R_exts/Lapack.h had one too many and one too few character length
    arguments - but this has not caused any known issues. To get the
    corrected prototypes, include
    [#]include &lt;Rconfig.h&gt; // for PR18534fixed
    [#]ifdef PR18534fixed
    [#] define usePR18534fix 1
    [#]endif
    [#]include &lt;R_exts/Lapack.h&gt;
    in your C/C++ code (PR#18534).
  INSTALLATION:
  * Many of the checks of esoteric Internet operations and those
    using unreliable external sites have been moved to a new target
    that is not run by default and primarily intended for the core
    developers.  To run them use
    cd tests; make test-Internet-dev
  BUG FIXES:
  * .S3methods(), typically called from methods(), again marks
    methods from package base as visible.
    Also, the visibility of non-base methods is again determined by
    the method's presence in search().
  * tools::Rdiff() is now more robust against invalid strings, fixing
    installation tests on Windows without Rtools installed
    (PR#18530).
  * Fix (new) bug in hcl.colors(2, *), by Achim Zeileis (PR#18523).
  * head(., &lt;illegal&gt;) and tail(..) now produce more useful "Error in
    ...." error messages, fixing PR#18362.
  * Package code syntax on Windows is checked in UTF-8 when UTF-8 is
    the native encoding.
  * na.contiguous(x) now also returns the first run, when it is at
    the beginning and there is a later one of the same length;
    reported to R-devel, including a fix, by Georgi Boshnakov.
    Further, by default, it modifies only an existing attr(*,"tsp")
    but otherwise no longer sets one.
  * chol(&lt;not pos.def&gt;, pivot = &lt;T|F&gt;) now gives a correct error or
    warning message (depending on pivot), thanks to Mikael Jagan's
    (PR#18541).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1699012800">- CHANGES IN R 4.3.2:
  NEW FEATURES:
  * The default initialization of the "repos" option from the
    repositories file at startup can be skipped by setting
    environment variable R_REPOSITORIES to NULL such that
    getOption("repos") is empty if not set elsewhere.
  * qr.X() is now an implicit S4 generic in methods.
  * iconv(to = "ASCII//TRANSLIT") is emulated using substitution on
    platforms which do not support it (notably Alpine Linux).  This
    should give a human-readable conversion in ASCII on all platforms
    (rather than NA_character_).
  * trans3d() gains options continuous and verbose addressing the
    problem of possible "wrap around" when projecting too long
    curves, as reported by Achim Zeileis in PR#18537.
  * tools::showNonASCII() has been rewritten to work better on macOS
    14 (which has a changed implementation of iconv()).
  * tiff(type = "quartz") (the default on macOS) now warns if
    compression is specified: it continues to be ignored.
  INSTALLATION on a UNIX-ALIKE:
  * There is some support for building with Intel's LLVM-based
    compilers on x86_64 Linux, such as (C) icx, (C++) ipcx and
    (Fortran) ifx from oneAPI 2023.x.y.
  * There is support for using LLVM's flang-new as the Fortran
    compiler from LLVM 16.0.x (preferably 17.0.0 or later).
  UTILITIES:
  * R CMD check reports the use of the Fortran 90 random number
    generator RANDOM_NUMBER() and the subroutines to initialize it.
    'Writing R Extensions' has example code to use R's RNGs from
    Fortran.
  BUG FIXES:
  * substr(x, n, L) &lt;- cc now works (more) correctly for multibyte
    UTF-8 strings x when L &gt; nchar(x), thanks to a report and patch
    by 'Architect 95'.
  * contrib.url(character()) now returns 0-length character() as
    documented, which also avoids spurious warnings from
    available.packages() et al. in the edge case of an empty vector
    of repository URLs.
  * readChar(., 4e8) no longer fails, thanks to Kodi Arfer's report
    (PR#18557).
  * lapply(&lt;list&gt;, as.data.frame) no longer warns falsely for some
    base vector components.
  * Communication between parent and child processes in the multicore
    part of parallel could fail on platforms that do not support an
    arbitrarily large payload in system functions read()/write() on
    pipes (seen on macOS where a restriction to INT_MAX bytes is
    documented, without doing a partial read unlike Linux). The
    payload is now split into 1Gb chunks to avoid that problem.
    (PR#18571)
  * qqplot(x,y, conf.level=.) gives better confidence bounds when
    length(x) != length(y), thanks to Alexander Ploner's report and
    patch proposal (PR#18557).
  * norm(&lt;0-length&gt;, "2") now gives zero instead of an error, as all
    the other norm types, thanks to Mikael Jagan's PR#18542.
  * Build-stage Rd macros \packageAuthor and \packageMaintainer now
    process Authors@R, fixing NA results when the package DESCRIPTION
    omits Author and Maintainer fields.
  * Formatting and printing complex numbers could give things like
    0.1683-0i because of rounding error: -0i is now replaced by +0i.
  * postscript() refused to accept a title comment containing the
    letter "W" (PR#18599).
  * isoreg(c(1,Inf)) signals an error instead of segfaulting, fixing
    PR#18603.
  * tiff(type = "Xlib") was only outputting the last page of
    multi-page plots.
  * tools::latexToUtf8() again knows about \~{n} and other letters
    with tilde, fixing a regression in R 4.3.0, and about \^{i} as an
    alternative to \^{\i} (similarly with other accents).
    Furthermore, LaTeX codes for accented I letters are now correctly
    converted, also fixing related mistakes in
    tools::encoded_text_to_latex().
  * tar(*, tar = "internal") no longer creates out-of-spec tar files
    in the very rare case of user or group names longer than 32
    bytes, fixing PR#17871 with thanks to Ivan Krylov.
  * When using the "internal" timezone datetime code, adding a
    fraction of a second no longer adds one second, fixing PR#16856
    from a patch by Ivan Krylov.
  * tools::checkRd() no longer produces spurious notes about
    "unnecessary braces" from multi-line Rd results of \Sexpr macros.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1709208000">- CHANGES IN R 4.3.3:
  NEW FEATURES:
  * iconv() now fixes up variant encoding names such as "utf8"
    case-insensitively.
  DEPRECATED AND DEFUNCT:
  * The legacy encoding = "MacRoman" is deprecated in pdf() and
    postscript(): support was incomplete in earlier versions of R.
  BUG FIXES:
  * Arguments are now properly forwarded to methods on S4 generics
    with ... in the middle of their formal arguments. This was broken
    for the case when a method introduced an argument but did not
    include ... in its own formals. Thanks to Herv'e Pag`es for the
    report PR#18538.
  * Some invalid file arguments to pictex(), postscript() and xfig()
    opened a file called NA rather than throw an error.  These
    included postscript(NULL) (which some people expected to work
    like pdf(NULL)).
  * Passing filename = NA to svg(), cairo_pdf(), cairo_ps() or the
    Cairo-based bitmap devices opened a file called NA: it now throws
    an error.
  * quartz(file = NA) opened a file called NA, including when used as
    a Quartz-based bitmap device.  It now gives an error.
  * rank(&lt;long vector&gt;) now works, fixing PR#18617, thanks to Ilia
    Kats.
  * seq.int() did not adequately check its length.out argument.
  * match(&lt;POSIXct&gt;, .) is correct again for differing time zones,
    ditto for "POSIXlt", fixing PR#18618 reported by Bastian Klein.
  * drop.terms(*, dropx = &lt;0-length&gt;) now works, fixing PR#18563 as
    proposed by Mikael Jagan.
  * drop.terms(*) keeps + offset(.) terms when it should, PR#18565,
    and drop.terms() no longer makes up a response, PR#18566, fixing
    both bugs thanks to Mikael Jagan.
  * getS3method("t", "test") no longer finds the t.test() function,
    fixing PR#18627.
  * pdf() and postscript() support for the documented Adobe encodings
    "Greek" and "Cyrilllic" was missing (although the corresponding
    Windows' codepages could be used).
  * Computations of glyph metric information for pdf() and
    postscript() did not take into account that transliteration could
    replace one character by two or more (only seen on macOS 14) and
    typically warned that the information was not known.
  * rank(x) no longer overflows during integer addition, when
    computing rank average for largish but not-yet long vector x,
    fixing PR#18630, thanks to Ilia Kats.
  * list.files() on Windows now returns also files with names longer
    that 260 bytes (the Windows limit is 260 characters).
    Previously, some file names particularly with 'East Asian'
    characters were omitted.
  * cov2cor(&lt;0 x 0&gt;) now works, fixing PR#18423 thanks to Mikael
    Jagan and Elin Waring.
  * cov2cor(&lt;negative diagonal&gt;) and similar now give one warning
    instead of two, with better wording, fixing PR#18424 thanks to
    Mikael Jagan.
  * tools:: startDynamicHelp() now ensures port is in proper range,
    fixing PR#18645.
  * pbeta(x, a,b) is correct now for x=0 or 1 in the boundary cases
    where a or b or both are 0, fixing PR#18672 thanks to Michael
    Fay.
  * pmatch(x, table) for large table, also called for data frame row
    selection, dfrm[nm, ], is now interruptible, fixing PR#18656.
  * predict(&lt;rank-deficient lm&gt;, newdata=*) fix computing of nbasis,
    see Russ Lenth's comment 29 in PR#16158.
  * Added a work-around for a bug in macOS 14.3.1 and higher which
    prevents R plots in the Quartz Cocoa device from updating on
    screen.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1713960000">- CHANGES IN R 4.4.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Startup banners, R --version, sessionInfo() and R CMD check no
    longer report (64-bit) as part of the platform as this is almost
    universal - the increasingly rare 32-bit platforms will still
    report (32-bit).
    On Windows, ditto for window titles.
  * is.atomic(NULL) now returns FALSE, as NULL is not an atomic
    vector.  Strict back-compatibility would replace is.atomic(foo)
    by (is.null(foo) || is.atomic(foo)) but should happen only
    sparingly.
  NEW FEATURES:
  * The confint() methods for "glm" and "nls" objects have been
    copied to the stats package.  Previously, they were stubs which
    called versions in package MASS. The MASS namespace is no longer
    loaded if you invoke (say) confint(glmfit).  Further, the "glm"
    method for profile() and the plot() and pairs() methods for class
    "profile" have been copied from MASS to stats.  (profile.nls()
    and plot.profile.nls() were already in stats.)
  * The confint() and profile methods for "glm" objects have gained a
    possibility to do profiling based on the Rao Score statistic in
    addition to the default Likelihood Ratio. This is controlled by a
    new test = argument.
  * The pairs() method for "profile" objects has been extended with a
    which = argument to allow plotting only a subset of the
    parameters.
  * The "glm" method for anova() computes test statistics and
    p-values by default, using a chi-squared test or an F test
    depending on whether the dispersion is fixed or free.  Test
    statistics can be suppressed by giving argument test a false
    logical value.
  * In setRepositories() the repositories can be set using their
    names via name = instead of index ind =.
  * methods() and .S3methods() gain a all.names option for the (rare)
    case where functions starting with a . should be included.
  * Serializations can now be interrupted (e.g., by Ctrl-C on a
    Unix-alike) if they take too long, e.g., from save.image(),
    thanks to suggestions by Ivan Krylov and others on R-devel.
  * New startup option --max-connections to set the maximum number of
    simultaneous connections for the session.  Defaults to 128 as
    before: allowed values up to 4096 (but resource limits may in
    practice restrict to smaller values).
  * R on Windows (since Windows 10 2004) now uses the new Segment
    Heap allocator. This may improve performance of some
    memory-intensive applications.
  * When R packages are built, typically by R CMD build &lt;pkg&gt;, the
    new --user=&lt;build_user&gt; option overrides the (internally
    determined) user name, currently Sys.info()["user"] or LOGNAME.
    This is a (modified) fulfillment of Will Landau's suggestion in
    PR#17530.
  * tools::testInstalledBasic() gets new optional arguments outDir
    and testSrcdir, e.g., allowing to use it in a &lt;builddir&gt; !=
    &lt;srcdir&gt; setup, and in standard "binary" Windows installation
  * if* a source tests/ folder is present.
  * range(&lt;DT_with_Inf&gt;, finite = TRUE) now work for objects of class
    "Date", "POSIXct", and "POSIXlt" with infinite entries,
    analogously to range.default(), as proposed by Davis Vaughan on
    R-devel.  Other range()-methods can make use of new function
    .rangeNum().
  * New .internalGenerics object complementing .S3PrimitiveGenerics,
    for documentation and low-level book-keeping.
  * grid() now invisibly returns the x- and y- coordinates at which
    the grid-lines were drawn.
  * norm(., type) now also works for complex matrices.
  * kappa(., exact = TRUE, norm = *) now works for all norms and also
    for complex matrices.  In symmetric / triangular cases, the new
    argument uplo = "U" | "L" allows the upper or lower triangular
    part to be specified.
  * memDecompress(type = "unknown") recognizes compression in the
    default 'zlib' format as used by memCompress(type = "gzip").
  * memCompress() and memDecompress() will use the libdeflate library
    (&lt;https://github.com/ebiggers/libdeflate&gt;) if installed.  This
    uses the same type of compression for type = "gzip" but is 1.5-2x
    faster than the system libz library on some common platforms: the
    speed-up may depend on the library version.
  * diff() for objects of class "Date", "POSIXct", and "POSIXlt"
    accepts a units argument passed via ....
  * Dynamic help now does a much better job of rendering package
    DESCRIPTION metadata.
  * Rprof() gains an event argument and support for elapsed (real)
    time profiling on Unix (PR#18076).
  * filled.contour() gains a key.border argument.
  * tools::update_pkg_po() gets arguments pot_make and mo_make for
    _not_ re-making the corresponding files, and additionally a
    verbose argument.
  * Hexadecimal string colour specifications are now accepted in
    short form, so, for example, we can use "#123", which is
    equivalent to "#112233".
    Thanks to MikeFC for the original idea and Ella Kaye, Malcolm
    Barrett, George Stagg, and Hanne Oberman for the patch.
  * Plain-text help shows \var markup by angle brackets.
  * The new experimental primitive function declare() is intended to
    eventually allow information about R code to be communicated to
    the interpreter, compiler, and code analysis tools. The syntax
    for declarations is still being developed.
  * Functions psmirnov(), qsmirnov() and rsmirnov() in package stats
    have had argument two.sided renamed to alternative, to take into
    account that the permutation distributions of the one-sided
    statistics can be different in the case of ties.  Consequence of
    PR#18582.
  * sort() is now an implicit S4 generic in methods.
  * Formatting and printing, format(z), print(z), of complex vectors
    z no longer zap relatively small real or imaginary parts to zero,
    fixing PR#16752.  This is an API change, as it was documented
    previously to round real and imaginary parts together on purpose,
    producing nicer looking output.  As mentioned, e.g. in the PR,
    this change is compatible with many other "R-like" programming
    environments.
    We have simplified the internal code and now basically format the
    real and imaginary parts independently of each other.
  * New experimental functions Tailcall() and Exec() to support
    writing stack-space-efficient recursive functions.
  * Where characters are attempted to be plotted by pdf(),
    postscript() and xfig() which are not in the selected 8-bit
    character set (most often Latin-1) and the R session is using a
    UTF-8 locale, the warning messages will show the UTF-8 character
    rather than its bytes and one dot will be substituted per
    character rather than per byte.  (Platforms whose iconv() does
    transliteration silently plot the transliteration.)
    In a UTF-8 locale some transliterations are now done with a
    warning (e.g., dashes and Unicode minus to hyphen, ligatures are
    expanded, permille (‰) is replaced by o/oo), although the OS may
    have got there first.  These are warnings as they will continue
    to be replaced by dots in earlier versions of R.
  * The matrix multiplication functions crossprod() and tcrossprod()
    are now also primitive and S3 generic, as %*% had become in R
    4.3.0.
  * source() and example() have a new optional argument catch.aborts
    which allows continued evaluation of the R code after an error.
  * The non-Quartz tiff() devices allow additional types of
    compression if supported by the platform's libtiff library.
  * The list of base and recommended package names is now provided by
    tools::standard_package_names().
  * cairo_pdf() and cairo_ps() default to onefile = TRUE to closer
    match pdf() and postscript().
  * New option catch.script.errors provides a documented way to catch
    errors and then continue in non-interactive use.
  * L %||% R newly in base is an expressive idiom for the phrases
    if(!is.null(L)) L else R or if(is.null(L)) R else L.
  * The return value from warnings() now always inherits from
    "warnings" as documented, now also in the case of no warnings
    where it previously returned NULL.
  * as.complex("1i") now returns 0 + 1i instead of NA with a warning.
  * z &lt;- c(NA, 1i) now keeps the imaginary part Im(z[1]) == 0, no
    longer coercing to NA_complex_.  Similarly, cumsum(z) correctly
    sums real and imaginary parts separately, i.e., without
    "crosstalk" in case of NAs.
  * On Alpine Linux iconv() now maps "latin2", "latin-2", "latin9"
    and "latin-9" to encoding names the OS knows about
    (case-insensitively).
  * iconv(sub = "Unicode") now always zero-pads to four (hex) digits,
    rather than to 4 or 8.  (This seems to have become the convention
    once Unicode restricted the number of Unicode points to 2^21 - 1
    and so will never need more than 6 digits.)
  * NCOL(NULL) now returns 0 instead of 1, for consistency with
    cbind().
  * The information for the Euro glyph missing from the Adobe .afm
    files for the Courier, Helvetica and Times families has been
    copied from their URW equivalents - this will improve vertical
    centring in the pdf() and postscript() devices.
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.12.0.  The changes are almost entirely cosmetic.
  * The included LAPACK sources have been updated to version 3.12.0
    and some further double-complex routines added.
  * There are new font families for the 2014--5 URW 2.0 fonts (see
    ?pdf) which are included in recent versions of Ghostscript.
    These have font widths for most Greek glyphs and a few others
    which were missing from the original versions (whose font
    families remain available for reproducibility, although
    Ghostscript-based viewers will render using the 2.0 versions).
  * Improve the large-n efficiency of as.matrix(&lt;dist&gt;), thanks an R
    contributors effort, notably by Tim Taylor and Heather Turner,
    see PR#18660.
  * The default and numeric methods of all.equal() get a check.class
    option.
  * zapsmall() gets new optional arguments, function mFUN and min.d,
    for extra flexibility; fulfills a wish in PR#18199.  Also, it is
    now an implicit S4 generic in package methods.
  * The Rd filter for aspell() gains an ignore argument.
  * New generic function sort_by(), primarily useful for the
    data.frame method which can be used to sort rows of a data frame
    by one or more columns.
  * The icence headers for the RPC code in src/extra/xdr have been
    updated to use the GPL-compatible licence published by Oracle
    America in 2010.
  * New function pkg2HTML() in tools to create single-page HTML
    reference manuals for R packages.
  * The byte code evaluator now uses less C stack space for recursive
    calls to byte-compiled functions. It also makes more of an effort
    to avoid allocations for scalar return values.
  * New completion option backtick (disabled by default) allows
    non-syntactic completions to be wrapped in backquotes. This is
    currently only useful for Jupyter notebooks via the IRkernel
    package, and may cause problems for other backends.
  INSTALLATION:
  * The parser has been updated to work with bison 3.8.2, which is
    now used for the pre-generated parsers in gram.c, file.c, and
    gramRd.c. A few parser error messages have changed, which may
    affect code that relies on exact messages.
  INSTALLATION on a UNIX-ALIKE:
  * System valgrind headers are now required to use configure option
  - -with-valgrind-instrumentation with value 1 or 2.
  * configure will warn if it encounters a 32-bit build, as that is
    nowadays almost untested.
  * Environment variable R_SYSTEM_ABI is no longer used and so no
    longer recorded in etc/Renviron (it was not on Windows and was
    only ever used when preparing package tools).
  * If the libdeflate library and headers are available, libdeflate
    rather than libz is used to (de)compress R objects in lazy-load
    databases.  Typically tasks spend up to 5% of their time on such
    operations, although creating lazy-data databases is one of the
    exceptions.
    This can be suppressed if the library is available by the
    configure option --without-libdeflate-compression.
  * configure option --enable-lto=check has not worked reliably since
    2019 and has been removed.
  * The minimum autoconf requirement for a maintainer build has been
    increased to autoconf 2.71.
    It is intended to increase this to 2.72 for R 4.5.0: the
    distributed configure file was generated using 2.72.
  * The minimum version requirement for an external LAPACK has been
    reduced to 3.9.0.
  * No default C++ compiler is set if no C++17 compiler is detected:
    there is no longer an automatic fallback to C++14 or C++11.
    Compilers from the last five years should have sufficient
    support: for others macros CXX and CXXSTD can be set in file
    config.site to provide a fallback if needed.
    The Objective-C++ compiler now by default uses the standard
    selected by R for C++ (currently C++17) rather than the default
    standard for the C++ compiler (which on macOS is still C++98).
  INSTALLATION on macOS:
  * A new configure option --with-newAccelerate makes use of Apple's
    'new' BLAS / LAPACK interfaces in their Accelerate framework.
    Those interfaces are only available in macOS 13.3 or later, and
    building requires SDK 13.3 or later (from the Command Line Tools
    or Xcode 14.3 or later).
    By default the option uses new Accelerate for BLAS calls: to also
    use it for LAPACK use option --with-newAccelerate=lapack.  The
    later interfaces provide LAPACK 3.9.1 rather than 3.2.1: 3.9.1 is
    from 2021-04 and does not include the improved algorithms
    introduced in LAPACK 3.10.0 (including for BLAS calls).
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools44, an update of the Rtools43 toolchain.  It is
    based on GCC 13 and newer versions of MinGW-W64, binutils and
    libraries (targeting 64-bit Intel CPUs).  R-devel can no longer
    be built using Rtools43 without changes.
  * Rtools44 has experimental support for 64-bit ARM (aarch64) CPUs
    _via_ the LLVM 17 toolchain using lld, clang/flang-new and
    libc++.
  UTILITIES:
  * R CMD check notes when S4-style exports are used without
    declaring a strong dependence on package methods.
  * tools::checkRd() (used by R CMD check) detects more problems with
    \Sexpr-based dynamic content, including bad nesting of \Sexprs
    and invalid arguments.
  * tools::checkRd() now reports Rd titles and section names ending
    in a period; this is ignored by R CMD check unless environment
    variable _R_CHECK_RD_CHECKRD_MINLEVEL_ is set to -5 or smaller.
  * R CMD check now notes Rd files without an \alias, as long
    documented in 'Writing R Extensions' §1.3.1.  The check for a
    missing \description has been moved from tools::checkRd() to
    tools::checkRdContents().
  * R CMD check now visits inst/NEWS.Rd and OS-specific man
    subdirectories when checking Rd files.
  * tools::checkDocFiles() and tools::checkRdContents() now also
    check internal Rd files by default, but "specially" (ignoring
    missing documentation of arguments).
  * R CMD Rdiff gets option --useEx.
  * R CMD check now warns on non-portable uses of Fortran KIND such
    as INTEGER(KIND=4) and REAL(KIND=8).
    To see the failing lines set environment variable
    _R_CHECK_FORTRAN_KIND_DETAILS_ to a true value.
  * When checking Rd files, R CMD check now notes some of the "lost
    braces" that tools::checkRd() finds.  Typical problems are Rd
    macros missing the initial backslash (e.g., code{...}), in-text
    set notation (e.g., {1, 2}, where the braces need escaping), and
    \itemize lists with \describe-style entries of the form
    \item{label}{description}.
  * R CMD INSTALL (and hence check) will compile C++ code with
  - DR_NO_REMAP if environment variable _R_CXX_USE_NO_REMAP_ is set
    to a true value.  It is planned that this will in future become
    the default for compiling C++.
  * The new built-in Rd macro \dontdiff{} can be used to mark example
    code whose output should be ignored when comparing check output
    to reference output (tests/Examples/&lt;pkg&gt;-Ex.Rout.save).  The
    \dontdiff tag, like \donttest, is _not_ shown on the rendered
    help page, so provides a clean alternative to ##
    IGNORE_RDIFF_(BEGIN|END) comments.
  * R CMD build when there is no NAMESPACE, now uses the recommended
    exportPattern("^[^.]"), instead of exporting everything.
  * R CMD check now warns about non-ASCII characters in the NAMESPACE
    file (in addition to R files). Such packages are not portable and
    may fail to install on some platforms.
  C-LEVEL FACILITIES:
  * Headers R_ext/Applic.h and R-ext/Linpack.h used to include
    R_ext/BLAS.h although this was undocumented and unneeded by their
    documented entry points.  They no longer do so.
  * New function R_missing(), factored out from do_missing(), used to
    fix PR#18579.
  * SEXP type S4SXP has been renamed to OBJSXP to support
    experimenting with alternative object systems.  The S4SXP value
    can still be used in C code but is now deprecated.  Based on
    contributions from the R Consortium's Object-Oriented Programming
    Working Group.
  * New function pow1p(x,y) for accurate (1+x)^y.
  * mkCharLenCE was incorrectly documented to take a size_t length
    but was implemented with int (and character strings in R are
    limited to 2^31 - 1 bytes).
  DEPRECATED AND DEFUNCT:
  * data() no longer handles zipped data from long-defunct (since R
    2.13.0) --use-zip-data installations.
  * The legacy graphics devices pictex() and xfig() are now
    deprecated.  They do not support recent graphics enhancements and
    their font handling is rudimentary. The intention is to retain
    them for historical interest as long as they remain somewhat
    functional.
  * Support for encoding = "MacRoman" has been removed from the pdf()
    and postscript() devices - this was a legacy encoding supporting
    classic macOS up to 2001 and no longer has universal libiconv
    support.
  * is.R() is deprecated as no other S dialect is known to be in use
    (and this could only identify historical dialects, not future
    ones).
    Further information on calls can be obtained by setting the
    environment variable _R_DEPRECATED_IS_R_ to error which turns the
    deprecation warning into an error and so by default gives a
    traceback.  (This is done by R CMD check --as-cran.)
  * UseMethod() no longer forwards local variables assigned in the
    generic function into method call environments before evaluating
    the method body. This makes method calls behave more like
    standard function calls and makes method code easier to analyze
    correctly.
  * The twelve as.data.frame.&lt;class&gt;() methods which were deprecated
    only via _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ and in R CMD
    check --as-cran are formally deprecated now in favour of calling
    as.data.frame() or as.data.frame.vector().  The deprecation
    "check" now works also when as.data.frame() is S4 generic thanks
    to Ivan Krylov.
  * The default method for the directional comparison operators &lt;, &gt;,
    &lt;=, and &gt;= now signals an error when one of the operands is a
    language object, i.e. a symbol or a call.
  * For terms.formula(), deprecate abb and neg.out arguments
    _formally_ in addition to just documenting it.
  BUG FIXES:
  * The methods package is more robust to not being attached to the
    search path.  More work needs to be done.
  * pairwise.t.test() misbehaved when subgroups had 0 DF for
    variance, even with pool.sd = TRUE.  (PR#18594 by Jack Berry).
  * Probability distribution functions [dpq]&lt;distrib&gt;(x, *), but also
    bessel[IKJY](x, .) now consistently preserve attributes(x) when
    length(x) == 0, e.g., for a 2 x 0 matrix, thanks to Karolis
    Koncevičius' report PR#18509.
  * Group "Summary" computations such as sum(1:3, 4, na.rm = 5, NA,
    7, na.rm = LL) now give an error instead of either 17 or NN for
    LL true or false, as proposed by Ivan Krylov on the R-devel
    mailing list.  (This also means it is now an error to specify
    na.rm more than once.)
  * as.complex(x) now returns complex(real = x, imaginary = 0) for
    _all_ numerical and logical x, notably also for NA or
    NA_integer_.
  * Directories are now omitted by file.copy(, recursive = FALSE) and
    in file.append() (PR#17337).
  * gsub() and sub() are now more robust to integer overflow when
    reporting errors caused by too large input strings (PR#18346).
  * Top-level handlers are now more robust to attempts to remove a
    handler whilst handlers are running (PR#18508).
  * The handling of Alt+F4 in dialogs created on Windows using
    GraphApp has been fixed (PR#13870).
  * density() more consistently computes grid values for the
    FFT-based convolution, following Robert Schlicht's analysis and
    proposal in PR#18337, correcting density values typically by a
    factor of about 0.999.  Argument old.coords = TRUE provides back
    compatibility.
  * palette.colors() gains a name argument that defaults to FALSE
    controlling whether the vector of colours that is returned has
    names (where possible).  PR#18529.
  * tools::xgettext() no longer extracts the (non-translatable) class
    names from warningCondition and errorCondition calls.
  * S3method(&lt;gen&gt;, &lt;class&gt;, &lt;func&gt;) in the NAMESPACE file now works
    (again) when &lt;func&gt; is visible from the namespace, e.g.,
    imported, or in base.
  * getParseData(f) now also works for a function defined in the
    first of several &lt;pkg&gt;/R/*.R source files, thanks to Kirill
    Müller's report and Duncan Murdoch's patch in PR#16756.
  * Rd \Sexpr macros with nested #ifdef conditionals were not
    processed.
  * A non-blocking connection with non-default encoding (such as a
    socket) now correctly returns from readLines() after new data has
    arrived also when its EOF had been reached previously.  Thanks to
    Peter Meilstrup's report on R-devel and Ivan Krylov's report and
    patch proposal in PR#18555.
  * tools::checkRdContents() failed to detect empty argument
    descriptions when they spanned multiple lines, including those
    generated by prompt().  These cases are now noted by R CMD check.
  * Plain-text help no longer outputs spurious colons in the
    arguments list (for multi-line \item labels in the Rd source).
  * kappa() and rcond() work correctly in more cases; kappa(., norm =
    "2") now warns that it computes the 1-norm with (default) exact =
    FALSE; prompted by Mikael Jagan's quite comprehensive PR#18543.
  * Rd skeletons generated by prompt() or promptData() now use a
    dummy title (so R CMD build works).  tools::checkRdContents() has
    been updated to detect such template leftovers, including from
    promptPackage().
  * When S4 method dispatch fails because no method was found, the
    error message now includes the signature argument names; thanks
    to Michael Chirico's proposal on the R-devel list.
  * withAutoprint({ .. }) now preserves srcrefs previously lost,
    thanks to Andrew Simmons' report plus fix in PR#18572.
  * transform.data.frame() no longer adjusts names; in particular,
    untransformed variables are kept as-is, including those with
    syntactically invalid names (PR#17890).
  * The keep.source option for Rd \Sexpr blocks is no longer ignored.
  * The formula methods for t.test() and wilcox.test() now catch when
    paired is passed, addressing PR#14359; use Pair(x1, x2) ~ 1 for a
    paired test.
  * The level reported in the browser prompt was often too large. It
    now shows the number of browser contexts on the stack.
  * For cbind() and rbind(), the optional deparse.level argument is
    now properly passed to methods, thanks to Mikael Jagan's PR#18579
    and comments there.
  * Some error and warning messages for large ('long vector')
    matrix(v, nr, nc) and dim(m) &lt;- d are now correct about sizes,
    using long long formatting, fixing PR#18612 (and more) reported
    by Mikael Jagan.
  * readChar(useBytes = TRUE) now terminates strings even when the
    underlying connection uses extra spaces in the input buffer.
    This fixes problems with extra garbage seen with gzip
    connections, PR#18605.
  * Named capture in PCRE regular expressions now works also with
    more than 127 named groups (PR#18588).
  * Datetime functions are now robust against long jumps when dealing
    with internal time zone changes.  This avoids confusing warnings
    about an invalid time zone, previously triggered by turning
    warnings into errors or handling them via tryCatch (PR#17966,
    PR#17780).
  * Datetime functions now restore even an empty TZ environment
    variable after internal time zone changes (PR#17724).  This makes
    results of datetime functions with this (typically unintentional)
    setting more predictable.
  * drop.terms(*) now drops response as by default, keep.response =
    FALSE, fixing PR#18564 thanks to Mikael Jagan.
  * dummy.coef(.) now also works for lm()-models with character
    categorical predictor variables rather than factor ones, fixing
    PR#18635 reported by Jinsong Zhao.
  * formals(f) &lt;- formals(f) now also works for a function w/o
    arguments and atomic _constant_ body(f).
  * Correct as.function(&lt;invalid list&gt;, .)'s error message.
  * removeSource() is yet more thorough in finding and removing
    "srcref" and the other source references from parsed R language
    chunks, fixing PR#18638 thanks to Andrew Simmons.
  * dgeom() is more accurate now, notably when its result is very
    small, fixing PR#18642 thanks to the proposal of Morten Welinder,
    also improving other instances where C level binom_raw(x, n, ..)
    has x == 0 or x== n.
  * warning() with options(warn = 1) has improved output for
    multi-line messages.
  * axis.Date() and axis.POSIXct() now respect the par("lab") setting
    for the number of pretty() intervals.
  * Comparisons for language objects (which are based on deparsing)
    are now more careful about using accurate deparsed results
    (PR#18676).
  * Plain-text help (Rd2txt) now correctly preserves blank lines
    following single-line \dontrun code.
  * &lt;POSIXlt&gt;[*] no longer sets wrong "balanced" attribute, fixing
    PR#18681 thanks to Mikael Jagan.
  * str(&lt;classed-call&gt;) now deparses the call as expected, fixing
    PR#18684, reported by Dave Slager.
  * In Rd examples, code following the closing brace of a \dontrun,
    \dontshow or \donttest tag on the same line is no longer skipped
    when R CMD check runs the examples.
  * as.data.frame(matrix(*, ncol=0)) now gets valid names() and
    colnames(); reported by Davis Vaughan on the R-devel list.
  * Internal Mathlib function stirlerr(n) is now almost fully
    (52-bit) accurate for all n &gt;= ~5.9 and more accurate also in the
    range 1 -- 5.9.  This entails small ("after 12th decimal")
    changes in density functions, e.g., dgamma() in _some_ regions of
    their support.  The fix was partly prompted by Morten Welinder's
    PR#18640.
  * Numbers like 9876543.2 are now considered non-integer by Mathlib
    internal R_nonint(), amending original fix of PR#15734.
  * Rd comment lines no longer cause broken paragraphs in the
    rendered PDF and plain-text help. In code blocks, pure comment
    lines (starting with %) no longer produce an empty line.
  * xtabs(Freq ~ .) now consistently defaults to na.action = na.pass,
    using na.rm = FALSE (added as an argument) when summing over Freq
    (PR#17770).
  * tools::testInstalledPackage() is no longer silent about failures
    from running examples or tests and its return code no longer
    ignores failures from checking vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1718366400">- CHANGES IN R 4.4.1:
  C-LEVEL FACILITIES:
  * Functions R_atof and R_strtod declared in header R_ext/Utils.h
    are now documented in 'Writing R Extensions' and so formally part
    of the API.
  * The non-API entry points Rf_setSVector, Rf_StringFalse,
    Rf_StringTrue and Rf_isBlankString have been added to those
    reported by R CMD check.
  * The new function Rf_allocLang is now available. This provides an
    alternative to the idiom of calling Rf_allocList followed by
    SET_TYPEOF.
  UTILITIES:
  * R CMD check now reports as warnings what gfortran calls 'Fortran
    2018 deleted features', all of which have long been marked as
    'obsolescent' and some of which were deleted in Fortran 2008 or
    earlier.  Fortran compilers are no longer required to support
    these.
  BUG FIXES:
  * as.numeric(), scan(), type.convert() and other places which use
    the internal C function R_strtod now require a _non-empty_ digit
    sequence in a decimal or binary exponent.  This aligns with the
    C/POSIX standard for strtod and with ?NumericConstants.
  * as.data.frame(m, make.names=NA) now works correctly for a matrix
    m with NA's in row names.
  * The error message from &lt;POSIXlt&gt;[["hour"]] and similar now
    mentions *[[, "hour"]], as wished for in PR#17409 and proposed by
    Michael Chirico.
  * qbinom() and potentially qpois(), qnbinom(), no longer sometimes
    fail accurate inversion (of pbinom(), etc), thanks to Christopher
    Chang's report and patch in PR#18711.
  * The internal help server on Windows can again serve requests sent
    in quick succession, fixing a regression in R 4.4.0.
  * debugcall(&lt;S3Generic&gt;()) now also works when a corresponding
    S4-generic version is in the methods cache (PR#18143).
  * Package tools' toTitleCase(ch0) now returns character(0) when ch0
    is of zero length; fixing PR#18724, reported by David Hugh Jones.
  * R CMD check is no longer broken (without a check result and no
    explanation in 00check.log) for a package which declares an
    invalid VignetteBuilder in DESCRIPTION but has no vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1730376000">- CHANGES IN R 4.4.2:
  C-LEVEL FACILITIES:
  * The S-compatibility macros F77_COM and F77_COMDECL defined in
    header R_ext/RS.h are deprecated and will be removed shortly.  We
    could find no record of their use.
  BUG FIXES:
  * Mathlib function lgammacor(x) no longer warns about underflow to
    zero for large x.
  * Text widths and heights were incorrectly reported by the Quartz
    device if the drawing context didn't exist yet (typically when
    drawing off-screen to a window that is yet to appear, see
    PR#18591).
  * The Quartz device could segfault in cases where paths with spaces
    are used in the new glyph drawing API.  Thanks to Tomek
    Gieorgijewski (PR#18758).
  * On macOS in R CRAN builds, it is again possible to read
    little-endian UTF-16 text with a BOM from a connection using
    encoding="UTF-16".  Users building R from source should avoid
    using the system libiconv in macOS 14.1 and later.
  * methods' internal .requirePackage() now re-enables primitive
    method dispatch when needed; thanks to Ivan Krylov for
    demystifying CRAN package check failures on the R-devel mailing
    list.</changelog>
</package>
<package pkgid="b691b1f492096c4dba71e35369ccc4061d83a21f2cb4f1b5c3b78fa1cd41c63e56cf6b7d2b4b1da62c6f6067dcfa54e8ac6f7a96c10da1ef2b563909fa09f702" name="R-stats-debuginfo" arch="i586">
  <version epoch="0" ver="4.4.2" rel="51.0.2.2.sr20241103"/>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1620302400">- To get in sync with d:l:R:autoCRAN the Matrix package's split
  in -devel was reversed.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339200">- improved spec file according to comments of dimstar in
  https://build.opensuse.org/request/show/892685</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339201">- CHANGES IN R 4.1.0:
  FUTURE DIRECTIONS:
  * It is planned that the 4.1.x series will be the last to support
    32-bit Windows, with production of binary packages for that
    series continuing until early 2023.
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Data set esoph in package datasets now provides the correct
    numbers of controls; previously it had the numbers of cases added
    to these.  (Reported by Alexander Fowler in PR#17964.)
  NEW FEATURES:
  * www.omegahat.net is no longer one of the repositories known by
    default to setRepositories().  (Nowadays it only provides source
    packages and is often unavailable.)
  * Function package_dependencies() (in package tools) can now use
    different dependency types for direct and recursive dependencies.
  * The checking of the size of tarball in R CMD check --as-cran
    &lt;pkg&gt; may be tweaked via the new environment variable
    _R_CHECK_CRAN_INCOMING_TARBALL_THRESHOLD_, as suggested in
    PR#17777 by Jan Gorecki.
  * Using c() to combine a factor with other factors now gives a
    factor, an ordered factor when combining ordered factors with
    identical levels.
  * apply() gains a simplify argument to allow disabling of
    simplification of results.
  * The format() method for class "ftable" gets a new option justify.
    (Suggested by Thomas Soeiro.)
  * New ...names() utility.  (Proposed by Neal Fultz in PR#17705.)
  * type.convert() now warns when its as.is argument is not
    specified, as the help file always said it _should_.  In that
    case, the default is changed to TRUE in line with its change in
    read.table() (related to stringsAsFactor) in R 4.0.0.
  * When printing list arrays, classed objects are now shown _via_
    their format() value if this is a short enough character string,
    or by giving the first elements of their class vector and their
    length.
  * capabilities() gets new entry "Rprof" which is TRUE when R has
    been configured with the equivalent of --enable-R-profiling (as
    it is by default).  (Related to Michael Orlitzky's report
    PR#17836.)
  * str(xS4) now also shows extraneous attributes of an S4 object
    xS4.
  * Rudimentary support for vi-style tags in rtags() and R CMD rtags
    has been added.  (Based on a patch from Neal Fultz in PR#17214.)
  * checkRdContents() is now exported from tools; it and also
    checkDocFiles() have a new option chkInternal allowing to check
    Rd files marked with keyword "internal" as well.  The latter can
    be activated for R CMD check via environment variable
    _R_CHECK_RD_INTERNAL_TOO_.
  * New functions numToBits() and numToInts() extend the raw
    conversion utilities to (double precision) numeric.
  * Functions URLencode() and URLdecode() in package utils now work
    on vectors of URIs.  (Based on patch from Bob Rudis submitted
    with PR#17873.)
  * path.expand() can expand ~user on most Unix-alikes even when
    readline is not in use.  It tries harder to expand ~, for example
    should environment variable HOME be unset.
  * For HTML help (both dynamic and static), Rd file links to help
    pages in external packages are now treated as references to
    topics rather than file names, and fall back to a file link only
    if the topic is not found in the target package. The earlier rule
    which prioritized file names over topics can be restored by
    setting the environment variable _R_HELP_LINKS_TO_TOPICS_ to a
    false value.
  * c() now removes NULL arguments before dispatching to methods,
    thus simplifying the implementation of c() methods, _but_ for
    back compatibility keeps NULL when it is the first argument.
    (From a report and patch proposal by Lionel Henry in PR#17900.)
  * Vectorize()'s result function's environment no longer keeps
    unneeded objects.
  * Function ...elt() now propagates visibility consistently with
    ..n.  (Thanks to Lionel Henry's PR#17905.)
  * capture.output() no longer uses non-standard evaluation to
    evaluate its arguments.  This makes evaluation of functions like
    parent.frame() more consistent.  (Thanks to Lionel Henry's
    PR#17907.)
  * packBits(bits, type="double") now works as inverse of
    numToBits().  (Thanks to Bill Dunlap's proposal in PR#17914.)
  * curlGetHeaders() has two new arguments, timeout to specify the
    timeout for that call (overriding getOption("timeout")) and TLS
    to specify the minimum TLS protocol version to be used for
    https:// URIs (_inter alia_ providing a means to check for sites
    using deprecated TLS versions 1.0 and 1.1).
  * For nls(), an optional constant scaleOffset may be added to the
    denominator of the relative offset convergence test for cases
    where the fit of a model is expected to be exact, thanks to a
    proposal by John Nash.  nls(*, trace=TRUE) now also shows the
    convergence criterion.
  * Numeric differentiation _via_ numericDeriv() gets new optional
    arguments eps and central, the latter for taking central divided
    differences.  The latter can be activated for nls() via
    nls.control(nDcentral = TRUE).
  * nls() now passes the trace and control arguments to getInitial(),
    notably for all self-starting models, so these can also be fit in
    zero-noise situations via a scaleOffset.  For this reason, the
    initial function of a selfStart model must now have ... in its
    argument list.
  * bquote(splice = TRUE) can now splice expression vectors with
    attributes: this makes it possible to splice the result of
    parse(keep.source = TRUE).  (Report and patch provided by Lionel
    Henry in PR#17869.)
  * textConnection() gets an optional name argument.
  * get(), exists(), and get0() now signal an error if the first
    argument has length greater than 1.  Previously additional
    elements were silently ignored.  (Suggested by Antoine Fabri on
    R-devel.)
  * R now provides a shorthand notation for creating functions, e.g.
    \(x) x + 1 is parsed as function(x) x + 1.
  * R now provides a simple native forward pipe syntax |&gt;.  The
    simple form of the forward pipe inserts the left-hand side as the
    first argument in the right-hand side call.  The pipe
    implementation as a syntax transformation was motivated by
    suggestions from Jim Hester and Lionel Henry.
  * all.equal(f, g) for functions now by default also compares their
    environment(.)s, notably via new all.equal method for class
    function.  Comparison of nls() fits, e.g., may now need
    all.equal(m1, m2, check.environment = FALSE).
  * .libPaths() gets a new option include.site, allowing to _not_
    include the site library.  (Thanks to Dario Strbenac's suggestion
    and Gabe Becker's PR#18016.)
  * Lithuanian translations are now available.  (Thanks to Rimantas
    Zakauskas.)
  * names() now works for DOTSXP objects.  On the other hand, in
    R-lang, the R language manual, we now warn against relying on the
    structure or even existence of such dot-dot-dot objects.
  * all.equal() no longer gives an error on DOTSXP objects.
  * capabilities("cairo") now applies only to the file-based devices
    as it is now possible (if very unusual) to build R with Cairo
    support for those but not for X11().
  * There is optional support for tracing the progress of
    loadNamespace() - see its help.
  * (Not Windows.)  l10n_info() reports an additional element, the
    name of the encoding as reported by the OS (which may differ from
    the encoding part (if any) of the result from
    Sys.getlocale("LC_CTYPE").
  * New function gregexec() which generalizes regexec() to find _all_
    disjoint matches and well as all substrings corresponding to
    parenthesized subexpressions of the given regular expression.
    (Contributed by Brodie Gaslam.)
  * New function charClass() in package utils to query the
    wide-character classification functions in use (such as
    iswprint).
  * The names of quantile()'s result no longer depend on the global
    getOption("digits"), but quantile() gets a new optional argument
    digits = 7 instead.
  * grep(), sub(), regexp and variants work considerably faster for
    long factors with few levels.  (Thanks to Michael Chirico's
    PR#18063.)
  * Provide grouping of x11() graphics windows within a window
    manager such as Gnome or Unity; thanks to a patch by Ivan Krylov
    posted to R-devel.
  * The split() method for class data.frame now allows the f argument
    to be specified as a formula.
  * sprintf now warns on arguments unused by the format string.
  * New palettes "Rocket" and "Mako" for hcl.colors() (approximating
    palettes of the same name from the 'viridisLite' package).
    Contributed by Achim Zeileis.
  * The base environment and its namespace are now locked (so one can
    no longer add bindings to these or remove from these).
  * Rterm handling of multi-byte characters has been improved,
    allowing use of such characters when supported by the current
    locale.
  * Rterm now accepts ALT+ +xxxxxxxx sequences to enter Unicode
    characters as hex digits.
  * Environment variable LC_ALL on Windows now takes precedence over
    LC_CTYPE and variables for other supported categories, matching
    the POSIX behaviour.
  * duplicated() and anyDuplicated() are now optimized for integer
    and real vectors that are known to be sorted via the ALTREP
    framework. Contributed by Gabriel Becker via PR#17993.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 14
    and so packages that provide graphics devices should be
    reinstalled.
  * Graphics devices should now specify deviceVersion to indicate
    what version of the graphics engine they support.
  * Graphics devices can now specify deviceClip.  If TRUE, the
    graphics engine will never perform any clipping of output itself.
    The clipping that the graphics engine does perform (for both
    canClip = TRUE and canClip = FALSE) has been improved to avoid
    producing unnecessary artifacts in clipped output.
  * The grid package now allows gpar(fill) to be a linearGradient(),
    a radialGradient(), or a pattern().  The viewport(clip) can now
    also be a grob, which defines a clipping path, and there is a new
    viewport(mask) that can also be a grob, which defines a mask.
    These new features are only supported so far on the Cairo-based
    graphics devices and on the pdf() device.
  * (Not Windows.)  A warning is given when a Cairo-based type is
    specified for a png(), jpeg(), tiff() or bmp() device but Cairo
    is unsupported (so type = "Xlib" is tried instead).
  * grSoftVersion() now reports the versions of FreeType and
    FontConfig if they are used directly (not _via_ Pango), as is
    most commonly done on macOS.
  C-LEVEL FACILITIES:
  * The _standalone_ libRmath math library and R's C API now provide
    log1pexp() again as documented, and gain log1mexp().
  INSTALLATION on a UNIX-ALIKE:
  * configure checks for a program pkgconf if program pkg-config is
    not found.  These are now only looked for on the path (like
    almost all other programs) so if needed specify a full path to
    the command in PKG_CONFIG, for example in file config.site.
  * C99 function iswblank is required - it was last seen missing ca
    2003 so the workaround has been removed.
  * There are new configure options --with-internal-iswxxxxx,
  - -with-internal-towlower and --with-internal-wcwidth which allows
    the system functions for wide-character classification,
    case-switching and width (wcwidth and wcswidth) to be replaced by
    internal ones.  The first has long been used on macOS, AIX (and
    Windows) but this enables it to be unselected there and selected
    for other platforms (it is the new default on Solaris).  The
    second is new in this version of R and is selected by default on
    macOS and Solaris.  The third has long been the default and
    remains so as it contains customizations for East Asian
    languages.
    System versions of these functions are often minimally
    implemented (sometimes only for ASCII characters) and may not
    cover the full range of Unicode points: for example Solaris (and
    Windows) only cover the Basic Multilingual Plane.
  * Cairo installations without X11 are more likely to be detected by
    configure, when the file-based Cairo graphics devices will be
    available but not X11(type = "cairo").
  * There is a new configure option --with-static-cairo which is the
    default on macOS.  This should be used when only static cairo
    (and where relevant, Pango) libraries are available.
  * Cairo-based graphics devices on platforms without Pango but with
    FreeType/FontConfig will make use of the latter for font
    selection.
  LINK-TIME OPTIMIZATION on a UNIX-ALIKE:
  * Configuring with flag --enable-lto=R now also uses LTO when
    installing the recommended packages.
  * R CMD INSTALL and R CMD SHLIB have a new flag --use-LTO to use
    LTO when compiling code, for use with R configured with
  - -enable-lto=R.  For R configured with --enable-lto, they have
    the new flag --no-use-LTO.
    Packages can opt in or out of LTO compilation _via_ a UseLTO
    field in the DESCRIPTION file.  (As usual this can be overridden
    by the command-line flags.)
  BUILDING R on Windows:
  * for GCC &gt;= 8, FC_LEN_T is defined in config.h and hence character
    lengths are passed from C to Fortran in _inter alia_ BLAS and
    LAPACK calls.
  * There is a new text file src/gnuwin32/README.compilation, which
    outlines how C/Fortran code compilation is organized and
    documents new features:
  * R can be built with Link-Time Optimization with a suitable
    compiler - doing so with GCC 9.2 showed several
    inconsistencies which have been corrected.
  * There is support for cross-compiling the C and Fortran code
    in R and standard packages on suitable (Linux) platforms.
    This is mainly intended to allow developers to test later
    versions of compilers - for example using GCC 9.2 or 10.x has
    detected issues that GCC 8.3 in Rtools40 does not.
  * There is experimental support for cross-building R packages
    with C, C++ and/or Fortran code.
  * The R installer can now be optionally built to support a single
    architecture (only 64-bit or only 32-bit).
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++14 where
    available (which it is on all currently checked platforms): if
    not (as before) C++11 is used if available otherwise C++ is not
    supported.
    Packages which specify C++11 will still be installed using C++11.
    C++14 compilers may give deprecation warnings, most often for
    std::random_shuffle (deprecated in C++14 and removed in C++17).
    Either specify C++11 (see 'Writing R Extensions') or modernize
    the code and if needed specify C++14.  The latter has been
    supported since R 3.4.0 so the package's DESCRIPTION would need
    to include something like
    Depends: R (&gt;= 3.4)
  PACKAGE INSTALLATION on Windows:
  * R CMD INSTALL and R CMD SHLIB make use of their flag --use-LTO
    when the LTO_OPT make macro is set in file etc/${R_ARCH}/Makeconf
    or in a personal/site Makevars file.  (For details see 'Writing R
    Extensions' SS4.5.)
    This provides a valuable check on code consistency.  It does work
    with GCC 8.3 as in Rtools40, but that does not detect everything
    the CRAN checks with current GCC do.
  PACKAGE INSTALLATION on macOS:
  * The default personal library directory on builds with
  - -enable-aqua (including CRAN builds) now differs by CPU type,
    one of
    ~/Library/R/x86_64/x.y/library
    ~/Library/R/arm64/x.y/library
    This uses the CPU type R (and hence the packages) were built for,
    so when a x86_64 build of R is run under Rosetta emulation on an
    arm64 Mac, the first is used.
  UTILITIES:
  * R CMD check can now scan package functions for bogus return
    statements, which were possibly intended as return() calls (wish
    of PR#17180, patch by Sebastian Meyer). This check can be
    activated via the new environment variable
    _R_CHECK_BOGUS_RETURN_, true for --as-cran.
  * R CMD build omits tarballs and binaries of previous builds from
    the top-level package directory.  (PR#17828, patch by Sebastian
    Meyer.)
  * R CMD check now runs sanity checks on the use of LazyData, for
    example that a data directory is present and that
    LazyDataCompression is not specified without LazyData and has a
    documented value.  For packages with large LazyData databases
    without specifying LazyDataCompression, there is a reference to
    the code given in 'Writing R Extensions' SS1.1.6 to test the
    choice of compression (as in all the CRAN packages tested a
    non-default method was preferred).
  * R CMD build removes LazyData and LazyDataCompression fields from
    the DESCRIPTION file of packages without a data directory.
  ENCODING-RELATED CHANGES:
  * The parser now treats \Unnnnnnnn escapes larger than the upper
    limit for Unicode points (\U10FFFF) as an error as they cannot be
    represented by valid UTF-8.
    Where such escapes are used for outputting non-printable
    (including unassigned) characters, 6 hex digits are used (rather
    than 8 with leading zeros).  For clarity, braces are used, for
    example \U{0effff}.
  * The parser now looks for non-ASCII spaces on Solaris (as
    previously on most other OSes).
  * There are warnings (including from the parser) on the use of
    unpaired surrogate Unicode points such as \uD834.  (These cannot
    be converted to valid UTF-8.)
  * Functions nchar(), tolower(), toupper() and chartr() and those
    using regular expressions have more support for inputs with a
    marked Latin-1 encoding.
  * The character-classification functions used (by default) to
    replace the system iswxxxxx functions on Windows, macOS and AIX
    have been updated to Unicode 13.0.0.
    The character-width tables have been updated to include new
    assignments in Unicode 13.0.0.
  * The code for evaluating default (extended) regular expressions
    now uses the same character-classification functions as the rest
    of R (previously they differed on Windows, macOS and AIX).
  * There is a build-time option to replace the system's
    wide-character wctrans C function by tables shipped with R: use
    configure option --with-internal-towlower or (on Windows)
  - DUSE_RI18N_CASE in CFLAGS when building R.  This may be needed
    to allow tolower() and toupper() to work with Unicode characters
    beyond the Basic Multilingual Plane where not supported by system
    functions (e.g. on Solaris where it is the new default).
  * R is more careful when truncating UTF-8 and other multi-byte
    strings that are too long to be printed, passed to the system or
    libraries or placed into an internal buffer.  Truncation will no
    longer produce incomplete multibyte characters.
  DEPRECATED AND DEFUNCT:
  * Function plclust() from the package stats and
    package.dependencies(), pkgDepends(), getDepList(),
    installFoundDepends(), and vignetteDepends() from package tools
    are defunct.
  * Defunct functions checkNEWS() and readNEWS() from package tools
    and CRAN.packages() from utils have been removed.
  * R CMD config CXXCPP is defunct (it was deprecated in R 3.6.2).
  * parallel::detectCores() drops support for Irix (retired in 2013).
  * The LINPACK argument to chol.default(), chol2inv(),
    solve.default() and svd() has been defunct since R 3.1.0.  It was
    silently ignored up to R 4.0.3 but now gives an error.
  * Subsetting/indexing, such as ddd[*] or ddd$x on a DOTSXP
    (dot-dot-dot) object ddd has been disabled; it worked by accident
    only and was undocumented.
  BUG FIXES:
  * Many more C-level allocations (mainly by malloc and strdup) are
    checked for success with suitable alternative actions.
  * Bug fix for replayPlot(); this was turning off graphics engine
    display list recording if a recorded plot was replayed in the
    same session.  The impact of the bug became visible if resize the
    device after replay OR if attempted another savePlot() after
    replay (empty display list means empty screen on resize or empty
    saved plot).
  * R CMD check etc now warn when a package exports non-existing S4
    classes or methods, also in case of no "methods" presence.
    (Reported by Alex Bertram; reproducible example and patch by
    Sebastian Meyer in PR#16662.)
  * boxplot() now also accepts calls for labels such as ylab, the
    same as plot().  (Reported by Marius Hofert.)
  * The help page for xtabs() now correctly states that addNA is
    setting na.action = na.pass among others.  (Reported as PR#17770
    by Thomas Soeiro.)
  * The R CMD check &lt;pkg&gt; gives a longer and more comprehensible
    message when DESCRIPTION misses dependencies, e.g., in Imports:.
    (Thanks to the contributors of PR#17179.)
  * update.default() now calls the generic update() on the formula to
    work correctly for models with extended formulas.  (As reported
    and suggested by Neal Fultz in PR#17865.)
  * The horizontal position of leaves in a dendrogram is now correct
    also with center = FALSE.  (PR#14938, patch from Sebastian
    Meyer.)
  * all.equal.POSIXt() no longer warns about and subsequently ignores
    inconsistent "tzone" attributes, but describes the difference in
    its return value (PR#17277).  This check can be disabled _via_
    the new argument check.tzone = FALSE as suggested by Sebastian
    Meyer.
  * as.POSIXct() now populates the "tzone" attribute from its tz
    argument when x is a logical vector consisting entirely of NA
    values.
  * x[[2^31]] &lt;- v now works.  (Thanks to the report and patch by
    Suharto Anggono in PR#17330.)
  * In log-scale graphics, axis() ticks and label positions are now
    computed more carefully and symmetrically in their range,
    typically providing _more_ ticks, fulfilling wishes in PR#17936.
    The change really corresponds to an improved axisTicks() (package
    grDevices), potentially influencing grid and lattice, for
    example.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now correct to at
    least five digits where it was catastrophically wrong,
    previously.
  * sum(df) and similar "Summary"- and "Math"-group member functions
    now work for data frames df with logical columns, notably also of
    zero rows.  (Reported to R-devel by Martin "b706".)
  * unsplit() had trouble with tibbles due to unsound use of rep(NA,
    len)-indexing, which should use NA_integer_ (Reported to R-devel
    by Mario Annau.)
  * pnorm(x, log.p = TRUE) underflows to -Inf slightly later.
  * show(&lt;hidden S4 generic&gt;) prints better and without quotes for
    non-hidden S4 generics.
  * read.table() and relatives treated an "NA" column name as missing
    when check.names = FALSE PR#18007.
  * Parsing strings containing UTF-16 surrogate pairs such as
    "\uD834\uDD1E" works better on some (uncommon) platforms.
    sprintf("%X", utf8ToInt("\uD834\uDD1E")) should now give "1D11E"
    on all platforms.
  * identical(x,y) is no longer true for differing DOTSXP objects,
    fixing PR#18032.
  * str() now works correctly for DOTSXP and related exotics, even
    when these are doomed.
    Additionally, it no longer fails for lists with a class and
    "irregular" method definitions such that e.g. lapply(*) will
    necessarily fail, as currently for different igraph objects.
  * Too long lines in environment files (e.g. Renviron) no longer
    crash R. This limit has been increased to 100,000 bytes.
    (PR#18001.)
  * There is a further workaround for FreeType giving incorrect
    italic font faces with cairo-based graphics devices on macOS.
  * add_datalist(*, force = TRUE) (from package tools) now actually
    updates an existing data/datalist file for new content.  (Thanks
    to a report and patch by Sebastian Meyer in PR#18048.)
  * cut.Date() and cut.POSIXt() could produce an empty last interval
    for breaks = "months" or breaks = "years".  (Reported as PR#18053
    by Christopher Carbone.)
  * Detection of the encoding of 'regular' macOS locales such as
    en_US (which is UTF-8) had been broken by a macOS change:
    fortunately these are now rarely used with en_US.UTF-8 being
    preferred.
  * sub() and gsub(pattern, repl, x, *) now keep attributes of x such
    as names() also when pattern is NA (PR#18079).
  * Time differences ("difftime" objects) get a replacement and a
    rep() method to keep "units" consistent.  (Thanks to a report and
    patch by Nicolas Bennett in PR#18066.)
  * The \RdOpts macro, setting defaults for \Sexpr options in an Rd
    file, had been ineffective since R 2.12.0: it now works again.
    (Thanks to a report and patch by Sebastian Meyer in PR#18073.)
  * mclapply and pvec no longer accidentally terminate parallel
    processes started before by mcparallel or related calls in
    package parallel (PR#18078).
  * grep and other functions for evaluating (extended) regular
    expressions handle in Unicode also strings not explicitly flagged
    UTF-8, but flagged native when running in UTF-8 locale.
  * Fixed a crash in fifo implementation on Windows (PR#18031).
  * Binary mode in fifo on Windows is now properly detected from
    argument open (PR#15600, PR#18031).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1622808000">- The line %{__install} -m 755 -d %{_infodir}
  no longer works in TW or Factory.
  But without that line it works everywhere. So this instruction
  was commented out of the spec file.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1628596800">- CHANGES IN R 4.1.1:
  NEW FEATURES:
  * require(pkg, quietly = TRUE) is quieter and in particular does
    not warn if the package is not found.
  DEPRECATED AND DEFUNCT:
  * Use of ftp:// URIs should be regarded as deprecated, with
    on-going support confined to method = "libcurl" and not routinely
    tested.  (Nowadays no major browser supports them.)
  * The non-default method = "internal" is deprecated for http:// and
    ftp:// URIs for both download.file and url.
  * On Windows, method = "wininet" is deprecated for http://,
    https:// and ftp:// URIs for both download.file and url.  (A
    warning is only given for ftp://.)
    For ftp:// URIs the default method is now "libcurl" if available
    (which it is on CRAN builds).
    method = "wininet" remains the default for http:// and https://
    URIs but if libcurl is available, using method = "libcurl" is
    preferred.
  INSTALLATION:
  * make check now works also without a LaTeX installation.  (Thanks
    to Sebastian Meyer's PR#18103.)
  BUG FIXES:
  * make check-devel works again in an R build configured with
  - -without-recommended-packages.
  * qnbinom(p, size, mu) for large size/mu is correct now in a range
    of cases (PR#18095); similarly for the (size, prob)
    parametrization of the negative binomial.  Also qpois() and
    qbinom() are better and or faster for extreme cases.  The
    underlying C code has been modularized and is common to all four
    cases of discrete distributions.
  * gap.axis is now part of the axis() arguments which are passed
    from bxp(), and hence boxplot().  (Thanks to Martin Smith's
    report and suggestions in PR#18109.)
  * .First and .Last can again be set from the site profile.
  * seq.int(from, to, *) and seq.default(..) now work better in large
    range cases where from-to is infinite where the two boundaries
    are finite.
  * all.equal(x,y) now returns TRUE correctly also when several
    entries of abs(x) and abs(y) are close to .Machine$double.xmax,
    the largest finite numeric.
  * model.frame() now clears the object bit when removing the class
    attribute of a value via na.action (PR#18100).
  * charClass() now works with multi-character strings on Windows
    (PR#18104, fixed by Bill Dunlap).
  * encodeString() on Solaris now works again in Latin-1 encoding on
    characters represented differently in UTF-8.  Support for
    surrogate pairs on Solaris has been improved.
  * file.show() on Windows now works with non-ASCII path names
    representable in the current native encoding (PR#18132).
  * Embedded R on Windows can now find R home directory via the
    registry even when installed only for the current user
    (PR#18135).
  * pretty(x) with finite x now returns finite values also in the
    case where the extreme x values are close in size to the maximal
    representable number .Machine$double.xmax.
    Also, it's been tweaked for very small ranges and when a boundary
    is close (or equal) to zero; e.g., pretty(c(0,1e-317)) no longer
    has negative numbers, currently still warning about a very small
    range, and pretty(2^-(1024 - 2^-1/(c(24,10)))) is more accurate.
  * The error message for not finding vignette files when weaving has
    correct file sizes now. (Thanks to Sebastian Meyer's PR#18154.)
  * dnbinom(20, &lt;large&gt;, 1) now correctly gives 0, and similar cases
    are more accurate with underflow precaution.  (Reported by Francisco Vera Alcivar in PR#18072.)</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635163200">- repaired https://bugzilla.suse.com/show_bug.cgi?id=1191380
  (rpmacros now go to rpmmacrodir)
- minor clean-ups in spec file</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635768000">- CHANGES IN R 4.1.2:
  C-LEVEL FACILITIES:
  * The workaround in headers R.h and Rmath.h (using namespace std;)
    for the Oracle Developer Studio compiler is no longer needed now
    C++11 is required so has been removed.  A couple more usages of
    log() (which should have been std::log()) with an int argument
    are reported on Solaris.
  * The undocumented limit of 4095 bytes on messages from the
    S-compatibility macros PROBLEM and MESSAGE is now documented and
    longer messages will be silently truncated rather than
    potentially causing segfaults.
  * If the R_NO_SEGV_HANDLER environment variable is non-empty, the
    signal handler for SEGV/ILL/BUS signals (which offers recovery
    user interface) is not set. This allows more reliable debugging
    of crashes that involve the console.
  DEPRECATED AND DEFUNCT:
  * The legacy S-compatibility macros PROBLEM, MESSAGE, ERROR, WARN,
    WARNING, RECOVER, ... are deprecated and will be hidden in R
    4.2.0. R's native interface of Rf_error and Rf_warning has long
    been preferred.
  BUG FIXES:
  * .mapply(F, dots, .) no longer segfaults when dots is not a list
    and uses match.fun(F) as always documented; reported by Andrew
    Simmons in PR#18164.
  * hist(&lt;Date&gt;, ...) and hist(&lt;POSIXt&gt;, ...)  no longer pass
    arguments for rect() (such as col and density) to axis().
    (Thanks to Sebastian Meyer's PR#18171.)
  * \Sexpr{ch} now preserves Encoding(ch). (Thanks to report and
    patch by Jeroen Ooms in PR#18152.)
  * Setting the RNG to "Marsaglia-Multicarry" e.g., by RNGkind(), now
    warns in more places, thanks to Andr'e Gillibert's report and
    patch in PR#18168.
  * gray(numeric(), alpha=1/2) no longer segfaults, fixing PR#18183,
    reported by Till Krenz.
  * Fixed dnbinom(x, size=&lt;very_small&gt;, .., log=TRUE) regression,
    reported by Martin Morgan.
  * as.Date.POSIXlt(x) now keeps names(x), thanks to Davis Vaughan's
    report and patch in PR#18188.
  * model.response() now strips an "AsIs" class typically, thanks to
    Duncan Murdoch's report and other discussants in PR#18190.
  * try() is considerably faster in case of an error and long call,
    as e.g., from some do.call().  Thanks to Alexander Kaever's
    suggestion posted to R-devel.
  * qqline(y = &lt;object&gt;) such as y=I(.), now works, see also
    PR#18190.
  * Non-integer mgp par() settings are now handled correctly in
    axis() and mtext(), thanks to Mikael Jagan and Duncan Murdoch's
    report and suggestion in PR#18194.
  * formatC(x) returns length zero character() now, rather than ""
    when x is of length zero, as documented, thanks to Davis
    Vaughan's post to R-devel.
  * removeSource(fn) now retains (other) attributes(fn).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1647000000">- CHANGES IN R 4.1.3:
  NEW FEATURES:
  * The default version of Bioconductor has been changed to 3.14.
    (This is used by setRepositories and the menus in GUIs.)
  UTILITIES:
  * R CMD check --as-cran has a workaround for a bug in versions of
    file up to at least 5.41 which mis-identify DBF files last
    changed in 2022 as executables.
  C-LEVEL FACILITIES:
  * The legacy S-compatibility macros SINGLE_* in R_ext/Constants.h
    (included by R.h) are deprecated and will be removed in R 4.2.0.
  BUG FIXES:
  * Initialization of self-starting nls() models with initialization
    functions following the pre-R-4.1.0 API (without the ...
    argument) works again for now, with a deprecation warning.
  * Fixed quoting of ~autodetect~ in Java setting defaults to avoid
    inadvertent user lookup due to leading ~, reported in PR#18231 by
    Harold Gutch.
  * substr(., start, stop) &lt;- v now treats _negative_ stop values
    correctly.  Reported with a patch in PR#18228 by Brodie Gaslam.
  * Subscripting an array x without dimnames by a
    length(dim(x))-column character matrix gave "random" non-sense,
    now an error; reported in PR#18244 by Mikael Jagan.
  * ...names() now matches names(list(...)) closely, fixing PR#18247.
  * all.equal(*, scale = s) now works as intended when length(s) &gt; 1,
    partly thanks to Michael Chirico's PR#18272.
  * print(x) for long vectors x now also works for named atomic
    vectors or lists and prints the correct number when reaching the
    getOption("max.print") limit; partly thanks to a report and
    proposal by Hugh Parsonage to the R-devel list.
  * all.equal(&lt;selfStart&gt;, *) no longer signals a deprecation
    warning.
  * reformulate(*, response=r) gives a helpful error message now when
    length(r) &gt; 1, thanks to Bill Dunlap's PR#18281.
  * Modifying globalCallingHandlers inside withCallingHandlers() now
    works or fails correctly, thanks to Henrik Bengtsson's PR#18257.
  * hist(&lt;Date&gt;, breaks = "days") and hist(&lt;POSIXt&gt;, breaks = "secs")
    no longer fail for inputs of length 1.
  * qbeta(.001, .9, .009) and similar cases now converge correctly
    thanks to Ben Bolker's report in PR#17746.
  * window(x, start, end) no longer wrongly signals "'start' cannot
    be after 'end'", fixing PR#17527 and PR#18291.
  * data() now checks that its (rarely used) list argument is a
    character vector - a couple of packages passed other types and
    gave incorrect results.
  * which() now checks its arr.ind argument is TRUE rather coercing
    to logical and taking the first element - which gave incorrect
    results in package code.
  * model.weights() and model.offset() more carefully extract their
    model components, thanks to Ben Bolker and Tim Taylor's R-devel
    post.
  * list.files(recursive = TRUE) now shows all broken symlinks
    (previously, some of them may have been omitted, PR#18296).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1650628800">- CHANGES IN R 4.2.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * The formula method of aggregate() now matches the generic in
    naming its first argument x (resolving PR#18299 by Thomas
    Soeiro).
    This means that calling aggregate() with a formula as a named
    first argument requires name formula in earlier versions of R and
    name x now, so portable code should not name the argument (code
    in many packages did).
  * Calling &amp;&amp; or || with either argument of length greater than one
    now gives a warning (which it is intended will become an error).
  * Calling if() or while() with a condition of length greater than
    one gives an error rather than a warning.  Consequently,
    environment variable _R_CHECK_LENGTH_1_CONDITION_ no longer has
    any effect.
  * Windows users should consult the WINDOWS section below for some
    profound changes including
  * Support for 32-bit builds has been dropped.
  * UTF-8 locales are used where available.
  * The default locations for the R installation and personal
    library folder have been changed.
    Thanks to Tomas Kalibera for months of work on the Windows port
    for this release.
  NEW FEATURES:
  * matrix(x, n, m) now warns in more cases where length(x) differs
    from n * m, as suggested by Abby Spurdle and Wolfgang Huber in
    Feb 2021 on the R-devel mailing list.
    This warning can be turned into an error by setting environment
    variable _R_CHECK_MATRIX_DATA_ to TRUE: R CMD check --as-cran
    does so unless it is already set.
  * Function file_test() in package utils gains tests for symlinks,
    readability and writability.
  * capabilities("libxml") is now false.
    The description of capabilities("http/ftp") now reflects that it
    refers to the default method, no longer the internal one.
  * simplify2array() gains an except argument for controlling the
    exceptions used by sapply().
  * Environment variables R_LIBS_USER and R_LIBS_SITE are both now
    set to the R system default if unset or empty, and can be set to
    NULL to indicate an empty list of user or site library
    directories.
  * The warning for axis()(-like) calls in cases of relatively small
    ranges (typically in log-scale situations) is slightly improved
    _and_ suppressed from explicit calls to .axisPars() as has always
    been the intention.
  * The contrasts setter function `contrasts&lt;-` gains an explicit
    default how.many = NULL rather than just using missing(how.many).
  * grid.pretty() gains a new optional argument n = 5.
  * There is a new function .pretty() with option bounds as a
    technical-utility version of pretty().  It and pretty() gain a
    new argument f.min with a better than back-compatible default.
  * Function grDevices::axisTicks() and related functions such as
    graphics::axis() work better, notably for the log scale; partly
    because of the pretty() improvements, but also because care is
    taken e.g., when ylim is finite but diff(ylim) is infinite.
  * nclass.FD() gains a digits option.
  * The R Mathlib internal C function bd0() (called indirectly from a
    dozen probability density and distribution functions such as
    dpois(), dbinom(), dgamma(), pgamma() _etc_) has been
    complemented by a more sophisticated and (mostly) more accurate C
    function ebd0(), currently called only by internal dpois_raw()
    improving accuracy for R level dpois() and potentially others
    calling it such as dnbinom(), dgamma() or pgamma().  (Thanks to
    Morten Welinder's PR#15628.)
  * write.ftable() gains sep = " " argument as suggested by Thomas
    Soeiro.
  * The names of the locale categories supported by R's
    Sys.getlocale() and Sys.setlocale() are now provided by variable
    .LC.categories in the base namespace.
  * The Date and POSIXt methods for hist() and the histogram method
    for plot() now also use the new default col = "lightgray" in
    consistency with the corresponding change to hist()'s default for
    R 4.0.0.
  * hist.default() gains new fuzz argument, and the histogram plot
    method no longer uses fractional axis ticks when displaying
    counts ("Frequency").
  * mapply() and hence Map() now also obey the "max-or-0-if-any"
    recycling rule, such that, e.g., Map(`+`, 1:3, 1[0]) is valid
    now.
  * as.character(&lt;obj&gt;) for "hexmode" or "octmode" objects now
    fulfils the important basic rule as.character(x)[j] ===
    as.character(x[j]).
  * The set utility functions, notably intersect() have been tweaked
    to be more consistent and symmetric in their two set arguments,
    also preserving a common mode.
  * substr(ch, start,end) &lt;- new now e.g., preserves names(ch); ditto
    for substring(), thanks to a patch from Brodie Gaslam.
  * plot(&lt;lm&gt;) gains a extend.ylim.f argument, in partial response to
    PR#15285; further PR#17784 is fixed thanks to several
    contributors and a patch by Elin Waring.  The Cook's dist
    contours get customizable via cook.col and cook.lty with a
    different default color and their legend is nicer by default and
    customizable via cook.legendChanges.
  * Attempting to subset an object that is not subsettable now
    signals an error of class notSubsettableError. The
    non-subsettable object is contained in the object field of the
    error condition.
  * Subscript-out-of-bounds errors are now signaled as errors of
    class subscriptOutOfBoundsError.
  * Stack-overflow errors are now signaled as errors inheriting from
    class stackOverflowError. See ?stackOverflowError for more
    details.
  * New partly experimental Sys.setLanguage() utility, solving the
    main problem of PR#18055.
  * gettext() and gettextf() get a new option trim = TRUE which when
    set to false allows translations for strings such as "Execution
    halted\n" typical for C code.
  * An experimental implementation of hash tables is now available.
    See ?hashtab for more details.
  * identical() gains a extptr.as.ref argument for requesting that
    external pointer objects be compared as reference objects.
  * reorder() gets an argument decreasing which it passes to sort()
    for level creation; based on the wish and patch by Thomas Soeiro
    in PR#18243.
  * as.vector() gains a data.frame method which returns a simple
    named list, also clearing a long standing 'FIXME' to enable
    as.vector(&lt;data.frame&gt;, mode="list").  This breaks code relying
    on as.vector(&lt;data.frame&gt;) to return the unchanged data frame.
  * legend() is now vectorized for arguments cex, x.intersp, and
    text.width.  The latter can now also be specified as a vector
    (one element for each column of the legend) or as NA for
    computing a proper column wise maximum value of strwidth(legend).
    The argument y.intersp can be specified as a vector with one
    entry for each row of the legend.
    legend() also gains new arguments title.cex and title.font.
    Thanks to Swetlana Herbrandt.
  * Deparsing no longer remaps attribute names dim, dimnames, levels,
    names and tsp to historical S-compatible names (which structure()
    maps back).
  * sample() and sample.int() have additional sanity checks on their
    size and n arguments.
    all.equal.numeric() gains a sanity check on its tolerance
    argument - calling all.equal(a, b, c) for three numeric vectors
    is a surprisingly common error.
    mean(na.rm =), rank(na.last =), barplot(legend.text =),
    boxplot(), contour(drawlabels =), polygon(border =) and
    methods::is(class2 =) have more robust sanity checks on their
    arguments.
    R CMD Rd2pdf (used by R CMD check) has a more robust sanity check
    on the format of \alias{} commands.
  * psigamma(x, deriv) for negative x now also works for deriv = 4
    and 5; their underlying C level dpsifn() is documented in
    'Writing R Extensions'.
  * The HTML help system now uses HTML5 (wish of PR#18149).
  * ks.test() now provides exact p-values also with ties and MC
    p-values in the two-sample (Smirnov) case.  By Torsten Hothorn.
  * ks.test() gains a formula interface, with y ~ 1 for the
    one-sample (Kolmogorov) test and y ~ group for the two-sample
    (Smirnov) test.  Contributed by Torsten Hothorn.
  * The return value from ks.test() now has class c("ks.test",
    "htest") - packages using try() need to take care to use
    inherits() and not == on the class.
  * New functions psmirnov(), qsmirnov() and rsmirnov() in package
    stats implementing the asymptotic and exact distributions of the
    two-sample Smirnov statistic.
  * iconv() now allows sub = "c99" to use C99-style escapes for UTF-8
    inputs which cannot be converted to encoding to.
  * In a forward pipe |&gt; expression it is now possible to use a named
    argument with the placeholder _ in the rhs call to specify where
    the lhs is to be inserted.  The placeholder can only appear once
    on the rhs.
  * The included LAPACK sources have been updated to version 3.10.0,
    except for the four Fortran 77 routines which 3.10.0 has
    re-implemented in Fortran 90 (where the older versions have been
    retained as the R build process does not support Fortran 90).
  * path.expand() and most other uses of tilde expansion now warn if
    a path would be too long if expanded.  (An exception is
    file.exists(), which silently returns false.)
  * trunc(&lt;Date&gt;, *) now supports units = "months" or "years" for
    consistency with the POSIXt method, thanks to Dirk Eddelbuettel's
    proposal in PR#18099.
  * list2DF() now checks that its arguments are of the same length,
    rather than use recycling.
  * The HTML help system has several new features: LaTeX-like math
    can be typeset using either KaTeX or MathJax, usage and example
    code is highlighted using Prism, and for dynamic help the output
    of examples and demos can be shown within the browser if the
    knitr package is installed. These features can be disabled by
    setting the environment variable _R_HELP_ENABLE_ENHANCED_HTML_ to
    a false value.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 15
    and so packages that provide graphics devices should be
    reinstalled.
  * The grid package now allows the user to specify a "vector" of
    pattern fills.  The fill argument to gpar() accepts a list of
    gradients and/or patterns and the functions linearGradient(),
    radialGradient(), and pattern() have a new group argument.
    Points grobs (data symbols) can now also have a pattern fill.
    The grobCoords() function now returns a more informative and
    complex result.
  * The grid package has new functions for drawing isolated groups:
    grid.group(), grid.define(), and grid.use().  These functions add
    compositing operators and affine transformations to R's graphics
    capabilities.
    The grid package also has new functions for stroking and filling
    paths: grid.stroke(), grid.fill(), and grid.fillStroke().
    A new function as.path() allows the user to specify the fill rule
    for a path that is to be used for clipping, stroking, or filling;
    available options are "winding" and "evenodd".  A new function
    as.mask() allows the user to specify the type of a mask;
    available options are "alpha" and "luminance".
    These new features are only supported so far (at most) on the
    Cairo-based graphics devices and on the pdf() device.
  * dev.capabilities() reports on device support for the new
    features.
  * par() now warns about unnamed non-character arguments to prevent
    misuse such as {usr &lt;- par("usr"); par(usr)}.
  INSTALLATION:
  * Facilities for accessing ftp:// sites are no longer tested
    (except _pro tem_ for curlGetHeaders()) as modern browsers have
    removed support.
  * R can now be built with DEFS = -DSTRICT_R_HEADERS .
  PACKAGE INSTALLATION:
  * R CMD INSTALL no longer tangles vignettes. This completes an R
    CMD build change in R 3.0.0 and affects packages built before R
    3.0.2. Such packages should be re-made with R CMD build to have
    the tangled R code of vignettes shipped with the tarball.
  * USE_FC_LEN_T will become the default: this uses the correct
    prototypes for Fortran BLAS/LAPACK routines called from C/C++,
    and requires adjustment of most such calls - see 'Writing R
    Extensions' SS6.6.2.  (This has been supported since R 3.6.2.)
  * Package installation speed for packages installed with
    keep.source has been improved. This resolve the issue reported by
    Ofek Shilon in PR#18236.
  UTILITIES:
  * R CMD check can optionally report files/directories left behind
    in home, /tmp (even though TMPDIR is set) and other directories.
    See the "R Internals" manual for details.
  * R CMD check now reports byte-compilation errors during
    installation.  These are not usually fatal but may result in
    parts of the package not being byte-compiled.
  * _R_CHECK_DEPENDS_ONLY_ can be applied selectively to examples,
    tests and/or vignettes in R CMD check: see the "R Internals"
    manual.
  * _R_CHECK_SRC_MINUS_W_IMPLICIT_ now defaults to true: recent
    versions of Apple clang on macOS have made implicit function
    declarations in C into a compilation error.
  * R CMD check --as-cran makes use of the environment variable
    AUTORECONF.  See the "R Internals" manual SS8 for further details.
  * R CMD check --use-valgrind also uses valgrind when re-building
    vignettes as some non-Sweave vignettes unhelpfully comment out
    all their code when R CMD check runs vignettes.
  * Errors in re-building vignettes (unless there are LaTeX errors)
    are reported by R CMD check as ERROR rather than WARNING when
    running vignettes has been skipped (as it frequently is in CRAN
    checks and by --as-cran).
  * R CMD Rd2pdf gains a --quiet option that is used by R CMD build
    when building the PDF package manual.
  * R CMD Rd2pdf now always runs LaTeX in batch mode, consistent with
    Texinfo &gt;= 6.7. The --batch option is ignored.
  * R CMD build and R CMD check now include the Rd file name and line
    numbers in the error message of an \Sexpr evaluation failure.
  * For packages using the \doi Rd macro (now an install-time \Sexpr)
    but no other dynamic Rd content, R CMD build now produces a
    smaller tarball and is considerably faster - skipping temporary
    package installation.
  C-LEVEL FACILITIES:
  * The non-API header R_ext/R-ftp-http.h is no longer provided, as
    the entry points it covered are now all defunct.
  * A number of non-API declarations and macro definitions have been
    moved from the installed header Rinternals.h to the internal
    header Defn.h. Packages that only use entry points and
    definitions documented to be part of the API as specified in
    'Writing R Extensions' SS6 should not be affected.
  * The macro USE_RINTERNALS no longer has any effect when compiling
    package code.  Packages which also use R_NO_REMAP will need to
    ensure that the remapped names are used for calls to API
    functions that were formerly also made available as macros.
  * The deprecated legacy S-compatibility macros PROBLEM, MESSAGE,
    ERROR, WARN, WARNING, RECOVER, ... are no longer defined in
    R_exts/RS.h (included by R.h).  Replace these by calls to
    Rf_error and Rf_warning (defined in header R_ext/Error.h included
    by R.h).
    Header R_ext/RS.h no longer includes R_ext/Error.h.
  * Header R_ext/Constants.h (included by R.h) when included from C++
    now includes the C++ header cfloat rather than the C header
    float.h (now possible as C++11 is required).
  * The legacy S-compatibility macros DOUBLE_* in R_ext/Constants.h
    (included by R.h) are deprecated.
  * The deprecated S-compatibility macros SINGLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * R_Calloc, R_Free and R_Realloc are preferred to their unprefixed
    forms and error messages now use the prefix. These forms were
    introduced in R 3.4.0 and are available even when
    STRICT_R_HEADERS is defined.
  * rmultinom has been documented in 'Writing R Extensions' SS6 so is
    now part of the R API.
  * Similarly, Rtanpi, called from R level tanpi() is now part of the
    R API.
  * The long-deprecated, undocumented and non-API entry point call_R
    is no longer declared in R_ext/RS.h (included by R.h).
  * The header S.h which has been unsupported since Jan 2016 has been
    removed.  Use R.h instead.
  DEPRECATED AND DEFUNCT:
  * The (non-default and deprecated) method = "internal" for
    download.file() and url() no longer supports http:// nor ftp://
    URIs.  (It is used only for file:// URIs.)
    On Windows, download.file(method = "wininet") no longer supports
    ftp:// URIs.  (It is no longer the default method, which is
    "libcurl" and does.)
    On Windows, the deprecated method = "wininet" now gives a warning
    for http:// and https:// URIs for both download.file() and url().
    (It is no longer the default method.)
  * On Windows, the command-line option --max-mem-size and
    environment variable R_MAX_MEM_SIZE are defunct.  The memory
    allocation limit was important for 32-bit builds, but these are
    no longer supported.
  * default.stringsAsFactors() is now formally deprecated, where that
    was only mentioned on its regular help page, previously.  So it
    now gives a warning if called.
  * unix.time() is defunct now; it had been deprecated since R 3.4.0.
  BUG FIXES:
  * Setting digits = 0 in format(), print.default() (and hence
    typically print()) or options() is again invalid.  Its behaviour
    was platform-dependent, and it is unclear what "zero significant
    digits" should mean (PR#18098).
  * Messages from C code in the cairo section of package grDevices
    are now also offered for translation, thanks to Michael Chirico's
    PR#18123.
  * mean(x) with finite x now is finite also without "long.double"
    capability.
  * R CMD Rd2pdf no longer leaves an empty build directory behind
    when it aborts due to an already existing output file.  (Thanks
    to Sebastian Meyer's PR#18141.)
  * density(x, weights = w, na.rm = TRUE) when anyNA(x) is true, now
    removes weights "in parallel" to x, fixing PR#18151, reported by
    Matthias Gondan.  Additionally, it gets a subdensity option.
  * Conversion of \Sexpr[]{&lt;expR&gt;} to LaTeX or HTML no longer
    produces long blocks of empty lines when &lt;expR&gt; itself contains
    several lines all producing empty output.  Thanks to a report and
    patch by Ivan Krylov posted to R-devel.
  * R CMD build no longer fails if a package vignette uses child
    documents and inst/doc exists.  (Thanks to Sebastian Meyer's
    PR#18156.)
  * When an R documentation ('help' source) file man/foo.Rd in a
    package has \donttest{..} examples with a syntax error, it is now
    signalled as ERROR and with correct line numbers relating to the
  * -Ex.R file, thanks to Duncan Murdoch and Sebastian Meyer's
    reports and patch proposals in PR#17501.
  * Improved determination of the correct translation domain in
    non-base packages, addressing the combination of PR#18092 and
    PR#17998 (#c6) with reports and _augmented_ patch #2904 by
    Suharto Anggono.
    Note that "R-base" is no longer the default domain e.g., for
    top-level calls to gettext(); rather translation needs explicit
    domain = * specification in such cases.
  * identical(attrib.as.set=FALSE) now works correctly with data
    frames with default row names (Thanks to Charlie Gao's PR#18179).
  * txtProgressBar() now enforces a non-zero width for argument char,
    without which no progress can be visible.
  * dimnames(table(d)) is more consistent in the case where d is a
    list with a single component, thanks to Thomas Soeiro's report to
    R-devel.
    Further, table(d1, d2) now gives an error when d1 and d2 are data
    frames as suggested by Thomas in PR#18224.
  * Fix for drawing semi-transparent lines and fills on the native
    Windows graphics device (PR#18219 and PR#16694).  Thanks to Nick
    Ray for helpful diagnosis on Bugzilla.
  * The deparser now wraps sub-expressions such as if(A) ..  with
    parentheses when needed; thanks to Duncan Murdoch's PR#18232 and
    Lionel Henry's patches there.
  * remove.packages() no longer tries to uninstall Priority: base
    packages, thanks to a report and suggestions by Colin Fay in
    PR#18227.
  * win.metafile() now has xpinch and ypinch arguments so that the
    user can override Windows' (potentially wrong) guess at device
    dimensions.
  * x[i] and x[[i]] for non-integer i should now behave in all cases
    as always documented: the index used is equivalent to
    as.integer(i) unless that would overflow where trunc(i) is used
    instead; thanks to Suharto Anggono's report and patch proposals
    in PR#17977.
  * asOneSidedFormula() now associates the resulting formula with the
    global environment rather than the evaluation environment created
    for the call.
  * &lt;bibentry&gt;$name now matches the field name case-insensitively,
    consistent with bibentry() creation and the replacement method.
  * cbind() failed to detect some length mismatches with a mixture of
    time-series and non-time-series inputs.
  * The default LaTeX style file Sweave.sty used by the RweaveLatex
    driver no longer loads the obsolete ae package; thanks to a
    report by Thomas Soeiro in PR#18271.  Furthermore, it now skips
    \usepackage[T1]{fontenc} for engines other than pdfTeX (if
    detected) or if the new [nofontenc] option is used.
  * smooth.spline() now stores its logical cv argument more safely,
    fixing a rare bug when printing, and also stores n.
  * smooth.spline(x,y,*) now computes the cv.crit statistic
    correctly, also when is.unsorted(x), fixing PR#18294.
  * The data.frame method of rbind() now warns when binding
    not-wholly-recycling vectors, by analogy to the default method
    (for matrices).
  * setAs() finds the correct class for name to when multiple
    packages define a class with that name. Thanks to Gabor Csardi
    for the report.
  * Fix for detaching a package when two classes of the same name are
    present in method signatures for the same generic. Thanks to
    Gabor Csardi for the report.
  * match.arg("", c("", "a", "B")) gives a better error message, in
    part from PR#17959, thanks to Elin Waring.
  * R CMD Sweave --clean no longer removes pre-existing files or
    subdirectories (PR#18242).
  * The quartz() device no longer splits polylines into subpaths.
    That has caused narrowly-spaced lines with many points to always
    look solid even when dashed line type was used due to dash phase
    restarts.
  * Deparsing constructs such as quote(1 + `!`(2) + 3) works again as
    before R 3.5.0, thanks to the report and patch in PR#18284 by
    Suharto Anggono.
  * as.list(f) for a factor f now keeps names(f), fixing PR#18309.
  * qbeta(.001, .9, .009) and analogous qf() calls now return a
    correct value instead of NaN or wrongly 1, all with a warning;
    thanks to the report by Ludger Goeminne in PR#18302.
  * plot.lm() failed to produce the plot of residuals vs.  factor
    levels (i.e., which=5 when leverages are constant) for models
    with character predictors (PR#17840).
  * interaction.plot(..., xtick = TRUE) misplaced the x-axis line
    (PR#18305).
  * Not strictly fixing a bug, format()ing and print()ing of
    non-finite Date and POSIXt values NaN and +/-Inf no longer show
    as NA but the respective string, e.g., Inf, for consistency with
    numeric vector's behaviour, fulfilling the wish of PR#18308.
  * R CMD check no longer runs test scripts generated from
    corresponding .Rin files twice and now signals an ERROR if
    processing an .Rin script fails.
  * tools::Rd2txt() used for plain-text help pages now renders \hrefs
    (if tools::Rd2txt_options(showURLs = TRUE)) and \urls with
    percent-encoding and standards-compliant delimiting style (angle
    brackets and no URL: prefix).  \email is now rendered with a
    mailto: prefix.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1655985600">- CHANGES IN R 4.2.1:
  NEW FEATURES:
  * New function utils::findCRANmirror() to find out if a CRAN mirror
    has been selected, otherwise fallback to the main site.  This
    behaves in the same way as tools::CRAN_package_db() and is
    intended for packages wishing to access CRAN for purposes other
    than installing packages.
    The need for this was shown by a day when the main CRAN website
    was offline and a dozen or so packages which had its URL
    hardcoded failed their checks.
  INSTALLATION on a UNIX-ALIKE:
  * The libraries searched for by --with-blas (without a value) now
    include BLIS (after OpenBLAS but before ATLAS).  And on macOS,
    the Accelerate framework (after ATLAS).  (This is patterned after
    the AX_BLAS macro from the Autoconf Archive.)
  * The included LAPACK sources have been updated to 3.10.1.
  UTILITIES:
  * The (full path to) the command tidy to be used for HTML
    validation can be set by environment variable R_TIDYCMD.
  * Setting environment variable _R_CHECK_RD_VALIDATE_RD2HTML_ to a
    false value will override R CMD check --as-cran and turn off HTML
    validation.  This provides a way to circumvent a problematic
    tidy.
    The 2006 version that ships with macOS is always skipped.
  C-LEVEL FACILITIES:
  * The undocumented legacy declarations of Sint, Sfloat, SINT_MAX
    and SINT_MIN in header R.h are deprecated.
  BUG FIXES:
  * fisher.test(d) no longer segfaults for "large" d; fixing PR#18336
    by preventing/detecting an integer overflow reliably.
  * tar(., files=*) now produces correctly the warning about invalid
    uid or gid of files, fixing PR#18344, reported by Martin Morgan.
  * tk_choose.files() with multi = FALSE misbehaved on paths
    containing spaces (PR#18334) (regression introduced in R 4.0.0).
  * sort(x, partial = ind, *) now works correctly notably for the
    non-default na.last = FALSE or TRUE, fixing PR#18335 reported by
    James Edwards.
  * Environment variable _R_CHECK_XREFS_REPOSITORIES_ is only used
    for checking .Rd cross-references in R CMD check (as documented)
    and not for other uses looking for a CRAN mirror.
  * The search for a CRAN mirror when checking packages now uses
    getOption("repos") if that specifies a CRAN mirror, even when it
    does not also specify all three Bioconductor repositories (as was
    previously required).
  * The HTML code generated by tools::Rd2HTML() has been improved to
    pass tidy 5.8.0.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1667217600">- CHANGES IN R 4.2.2:
  NEW FEATURES:
  * tools::Rdiff(useDiff = TRUE) checks for the presence of an
    external diff command and switches to useDiff = FALSE if none is
    found.  This allows R CMD Rdiff to always work.
  * On Windows, environment variable R_LIBCURL_SSL_REVOKE_BEST_EFFORT
    can be used to switch to only 'best-effort' SSL certificate
    revocation checks with the default "libcurl" download method.
    This reduces security, but may be needed for downloads to work
    with MITM proxies (PR#18379).
  * (macOS) The run-time check for libraries from XQuartz for X11 and
    Tcl/Tk no longer uses otool from the Apple Developer Tools
    (PR#18400).
  * The LaTeX style for producing the PDF manuals, Rd.sty, now loads
    the standard amsmath, amsfonts and amssymb packages for greater
    coverage of math commands in the Rd \eqn and \deqn macros.  The
    \mathscr LaTeX command is also provided (via the mathrsfs
    package, if available, or the amsfonts bundle otherwise),
    fulfilling the wish of PR#18398.
  * (Windows) The default format of readClipboard() and
    writeClipboard() has been changed to 13 (CF_UNICODETEXT).
  INSTALLATION on a UNIX-ALIKE:
  * The PDF manuals (if built) can be compacted by the new target
    make compact-pdf (at the top level or in directory doc/manual).
  * There is now configure support for LLVM clang 15 on Linux, which
    defaults to position-independent (PIE) executables whereas
    gfortran does not.
  * Many small changes to ease compilation (and suppress warnings)
    with LLVM clang 15.
  BUG FIXES:
  * Rscript -e would fail if stdin were closed (Reported by Henrik
    Bengtsson.)
  * qt(*, log.p=TRUE) in outer tails no longer produces NaN in its
    final steps, thus fixing PR#18360.
  * tools::Rd2latex() now escapes hashes and ampersands when writing
    URLs, fixing LaTeX errors with such URLs in \tabular.
  * When isGeneric(f, fdef=*) is used with mismatching names, the
    warning is better understandable; reported (with fix) in PR#18370
    by Gabe Becker.
  * poly(x, n) now works again (and is now documented) when x is a
    "Date" or "POSIXct" object, or of another class while fulfilling
    mode(x) == "numeric".  This also enables poly(x, *, raw=TRUE) for
    such variables.  Reported by Michael Chirico to R-devel.
  * write.table(), write.csv() and write.csv2() restore their
    numerical precision (internal equivalent of digits = 15) after an
    interrupt (PR#18384).
  * One can now read also byte FF from a clipboard connection
    (PR#18385).
  * source("") and source(character()) now give more helpful error
    messages.
  * R CMD check --as-cran set _R_CHECK_TIMINGS_ too late to have the
    intended effect.
  * as.POSIXlt(x) now also works with very large dates x, fixing
    PR#18401 reported by Hannes M"uhleisen.
  * Files can now be extracted even from very large zip archives
    (PR#18390, thanks to Martin Jakt).
  * Non-finite objects of class "POSIXlt" are now correctly coerced
    to classes "Date" and "POSIXct"; following up on the extension to
    format() them correctly.
  * Added methods for is.finite(), is.infinite() and is.nan() for
    "POSIXlt" date-time objects.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1678881600">- CHANGES IN R 4.2.3:
  C-LEVEL FACILITIES:
  * The definition of DL_FUNC in R_ext/Rdynload.h has been changed to
    be fully C-compliant.  This means that functions loaded _via_ for
    example R_GetCCallable need to be cast to an appropriate type if
    they have any arguments.
  * .Machine has a new element sizeof.time_t to identify old systems
    with a 32-bit type and hence a limited range of date-times (and
    limited support for dates millions of years from present).
  PACKAGE INSTALLATION:
  * (Windows) The default C++ standard had accidentally been left at
    C++11 when it was changed to C++14 on Unix.
  BUG FIXES:
  * As "POSIXlt" objects may be "partially filled" and their list
    components meant to be recycled, length() now is the length of
    the longest component.
  * as.POSIXlt.Date() could underflow for dates in the far past (more
    than half a million years BCE).
  * as.Date.POSIXlt(x) would return "1970-01-01" instead of NA in R
    4.2.2, e.g., for
    x &lt;- as.POSIXlt(c("2019-01-30","2001-1-1"))
    x$mon &lt;- c(0L, NA); as.Date(x)
  * R CMD check failed to apply enabled _R_CHECK_SUGGESTS_ONLY_ to
    examples and vignettes (regression in R 4.2.0).
  * R CMD check did not re-build vignettes in separate processes by
    default (regression in R 4.2.0).
  * Running examples from HTML documentation now restores previous
    knitr settings and options (PR#18420).
  * Quartz: fonts are now located using Core Graphics API instead of
    deprecated ATS which is no longer supported in the macOS 13 SDK
    (PR#18426).  This also addresses an issue where the currently
    used font in the Quartz device context was not correctly
    retained.
  * (Windows) Math symbols in text drawing functions are again
    rendered correctly (PR#18440).  This fixes a regression in R
    4.2.1 caused by a fix in PR#18382 which uncovered an issue in
    GraphApp due to which the symbol charset was not used with TT
    Symbol font face.
  * (Windows) Installing a package with a src/Makefile.{win,ucrt}
    file includes ~/.R/Makevars.win64 in the search for user
    makevars, as documented in "R Installation and Administration"
    and done for packages with a src/Makevars.{win,ucrt} file.
  * format(&lt;POSIXlt_w/_unbalanced_sec&gt;, "....%OS&lt;n&gt;") with n &gt; 0 no
    longer accidentally uses the unbalanced seconds, thanks to
    Suharto Anggono's report (including patch) in PR#18448.
  * solve.default(a, b) works around issues with some versions of
    LAPACK when a contains NA or NaN values.
  * When UseMethod() cannot dispatch, it no longer segfaults
    producing the error message in case of a long class(), thanks to
    Joris Vankerschaver's report (including patch) in PR#18447.
  * When example(foo, ..) produces graphics on an interactive device
    it needs to open itself, it now leaves devAskNewPage() unchanged
    even when it was FALSE, thus fixing a 14 years old '&lt;FIXME&gt;'.
  * packageDescription() again catches errors from encoding
    conversions. This also fixes broken packageVersion() in C locale
    on systems where iconv does not support transliteration.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1681128000">- add patch to build with libcurl &gt;= 8</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1682078400">- CHANGES IN R 4.3.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Calling &amp;&amp; or || with LHS or (if evaluated) RHS of length greater
    than one is now always an error, with a report of the form
    'length = 4' in coercion to 'logical(1)'
    Environment variable _R_CHECK_LENGTH_1_LOGIC2_ no longer has any
    effect.
  NEW FEATURES:
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.10.1.  (This caused some platform-dependent
    changes to package check output.)  And then to the sources from
    LAPACK version 3.11.0 (with changes only to double complex
    subroutines).
  * The included LAPACK sources have been updated to include the four
    Fortran 90 routines rather than their Fortran 77 predecessors.
    This may give some different signs in SVDs or
    eigendecompositions..  (This completes the transition to LAPACK
    3.10.x begun in R 4.2.0.)
  * The LAPACK sources have been updated to version 3.11.0.  (No new
    subroutines have been added, so this almost entirely bug fixes:
    Those fixes do affect some computations with NaNs, including R's
    NA.)
  * The parser now signals _classed_ errors, notably in case of the
    pipe operator |&gt;.  The error object and message now give line and
    column numbers, mostly as proposed and provided by Duncan Murdoch
    in PR#18328.
  * toeplitz() is now generalized for asymmetric cases, with a
    toeplitz2() variant.
  * xy.coords() and xyz.coords() and consequently, e.g., plot(x,y,
    log = "y") now signal a _classed_ warning about negative values
    of y (where log(.) is NA).  Such a warning can be specifically
    suppressed or caught otherwise.
  * Regular expression functions now check more thoroughly whether
    their inputs are valid strings (in their encoding, e.g. in
    UTF-8).
  * The performance of grep(), sub(), gsub() and strsplit() has been
    improved, particularly with perl = TRUE and fixed = TRUE.  Use of
    useBytes = TRUE for performance reasons should no longer be
    needed and is discouraged: it may lead to incorrect results.
  * apropos() gains an argument dot_internals which is used by the
    completion (help(rcompgen)) engine to also see base internals
    such as .POSIXct().
  * Support in tools::Rdiff() for comparing uncompressed PDF files is
    further reduced - see its help page.
  * qqplot(x, y, ...) gains conf.level and conf.args arguments for
    computing and plotting a confidence band for the treatment
    function transforming the distribution of x into the distribution
    of y (Switzer, 1976, _Biometrika_). Contributed by Torsten
    Hothorn.
  * Performance of package_dependencies() has been improved for cases
    when the number of dependencies is large.
  * Strings newly created by gsub(), sub() and strsplit(), when any
    of the inputs is marked as "bytes", are also marked as "bytes".
    This reduces the risk of creating invalid strings and accidental
    substitution of bytes deemed invalid.
  * Support for readLines(encoding = "bytes") has been added to allow
    processing special text files byte-by-byte, without creating
    invalid strings.
  * iconv(from = "") now takes into account any declared encoding of
    the input elements and uses it in preference to the native
    encoding.  This reduces the risk of accidental creation of
    invalid strings, particularly when different elements of the
    input have different encoding (including "bytes").
  * Package repositories in getOption("repos") are now initialized
    from the repositories file when utils is loaded (if not already
    set, e.g., in .Rprofile).  (From a report and patch proposal by
    Gabriel Becker in PR#18405.)
  * compactPDF() gets a verbose option.
  * type.convert() and hence read.table() get new option tryLogical =
    TRUE with back compatible default.  When set to false, converts
    "F" or "T" columns to character.
  * Added new unit prefixes "R" and "Q" for abbreviating
    (unrealistically large) sizes beyond 10^{27} in standard = "SI",
    thanks to Henrik Bengtsson's PR#18435.
  * as.data.frame()'s default method now also works fine with atomic
    objects inheriting from classes such as "roman", "octmode" and
    "hexmode", such fulfilling the wish of PR#18421, by Benjamin
    Feakins.
  * The as.data.frame.vector() utility now errors for wrong-length
    row.names.  It warned for almost six years, with "Will be an
    error!".
  * sessionInfo() now also contains La_version() and reports codepage
    and timezone when relevant, in both print() and toLatex() methods
    which also get new option tzone for displaying timezone
    information when locale = FALSE.
  * New function R_compiled_by() reports the C and Fortran compilers
    used to build R, if known.
  * predict(&lt;lm&gt;, newdata = *) no longer unnecessarily creates an
    offset of all 0s.
  * solve() for complex inputs now uses argument tol and by default
    checks for 'computational singularity' (as it long has done for
    numeric inputs).
  * predict(&lt;rank-deficient lm&gt;, newdata=*) now obeys a new argument
    rankdeficient, with new default "warnif", warning only if there
    are non-estimable cases in newdata.  Other options include
    rankdeficient = "NA", predicting NA for non-estimable newdata
    cases.  This addresses PR#15072 by Russ Lenth and is based on his
    original proposal and discussions in PR#16158 also by David Firth
    and Elin Waring.  Still somewhat experimental.
  * Rgui console implementation now works better with the NVDA screen
    reader when the full blinking cursor is selected.  The underlying
    improvements in cursor handling may help also other screen
    readers on Windows.
  * The drop-field control in GraphApp can now be left with the TAB
    key and all controls can be navigated in the reverse order using
    the Shift+TAB key, improving accessibility of the Rgui
    configuration editor.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now fully accurate
    (instead of to "only" minimally five digits).
  * demo(error.catching) now also shows off withWarnings() and
    tryCatchWEMs().
  * As an experimental feature the placeholder _ can now also be used
    in the rhs of a forward pipe |&gt; expression as the first argument
    in an extraction call, such as _$coef. More generally, it can be
    used as the head of a chain of extractions, such as _$coef[[2]].
  * Spaces in the environment variable used to choose the R session's
    temporary directory (TMPDIR, TMP and TEMP are tried in turn) are
    now fatal.  (On Windows the 'short path' version of the path is
    tried and used if that does not contain a space.)
  * all.equal.numeric() gets a new optional switch giveErr to return
    the numeric error as attribute.  Relatedly,
    stopifnot(all.equal&lt;some&gt;(a, b, ..)) is as "smart" now, as
    stopifnot(all.equal(....)) has been already, thus allowing
    customized all.equal&lt;Some&gt;() wrappers.
  * R on Windows is now able to work with path names longer than 260
    characters when these are enabled in the system (requires at
    least Windows 10 version 1607).  Packages should be updated to
    work with long paths as well, instead of assuming PATH_MAX to be
    the maximum length.  Custom front-ends and applications embedding
    R need to update their manifests if they wish to allow this
    feature.  See
    &lt;https://blog.r-project.org/2023/03/07/path-length-limit-on-windows&gt;
    for more information.
  * 'Object not found' and 'Missing argument' errors now give a more
    accurate error context. Patch provided by Lionel Henry in
    PR#18241.
  * The @ operator is now an S3 generic. Based on contributions by
    Tomasz Kalinowski in PR#18482.
  * New generic chooseOpsMethod() provides a mechanism for objects to
    resolve cases where two suitable methods are found for an Ops
    Group Generic. This supports experimenting with alternative
    object systems. Based on contributions by Tomasz Kalinowski in
    PR#18484.
  * inherits(x, what) now accepts values other than a simple
    character vector for argument what. A new generic, nameOfClass(),
    is called to resolve the class name from what. This supports
    experimenting with alternative object systems. Based on
    contributions by Tomasz Kalinowski in PR#18485.
  * Detection of BLAS/LAPACK in use (sessionInfo()) with FlexiBLAS
    now reports the current backend.
  * The "data.frame" method for subset() now warns about extraneous
    arguments, typically catching the use of = instead of == in the
    subset expression.
  * Calling a:b when numeric a or b is longer than one may now be
    made into an error by setting environment variable
    _R_CHECK_LENGTH_COLON_ to a true value, along the proposal in
    PR#18419 by Henrik Bengtsson.
  * density(x, weights = *) now warns if automatic bandwidth
    selection happens without using weights; new optional warnWbw may
    suppress the warning.  Prompted by Christoph Dalitz' PR#18490 and
    its discussants.
  * rm(list = *) is faster and more readable thanks to Kevin Ushey's
    PR#18492.
  * The plot.lm() function no longer produces a normal Q-Q plot for
    GLMs. Instead it plots a half-normal Q-Q plot of the absolute
    value of the standardized deviance residuals.
  * The print() method for class "summary.glm" no longer shows
    summary statistics for the deviance residuals by default.  Its
    optional argument show.residuals can be used to show them if
    required.
  * The tapply() function now accepts a data frame as its X argument,
    and allows INDEX to be a formula in that case. by.data.frame()
    similarly allows INDICES to be a formula.
  * The performance of df[j] &lt;- value (including for missing j) and
    write.table(df) has been improved for data frames df with a large
    number of columns.  (Thanks to Gabriel Becker's PR#18500,
    PR#18503 and discussants, prompted by a report from Toby Dylan
    Hocking on the R-devel mailing list.)
  * The matrix multiply operator %*% is now an S3 generic, belonging
    to new group generic matrixOps.  From Tomasz Kalinowski's
    contribution in PR#18483.
  * New function array2DF() to convert arrays to data frames,
    particularly useful for the list arrays created by tapply().
  DATES and TIMES:
  * On platforms where (non-UTC) datetimes before 1902 (or before
    1900 as with system functions on recent macOS) are guessed by
    extrapolating time zones from 1902-2037, there is a warning at
    the first use of extrapolation in a session.  (As all time zones
    post 2037 are extrapolation, we do not warn on those.)
  * (Platforms using --with-internal-tzone, including Windows and by
    default macOS). How years are printed in dates or date-times can
    be controlled by environment variable R_PAD_YEARS_BY_ZERO.  The
    default remains to pad to 4 digits by zeroes, but setting value
    no gives no padding (as used by default by glibc).
  * strftime() tries harder to determine the offset for the "%z"
    format, and succeeds on the mainstream R platforms.
  * strftime() has a limit of 2048 bytes on the string produced -
    attempting to exceed this is an error.  (Previously it silently
    truncated at 255 bytes.)
  * sessionInfo() records (and by default prints) the system time
    zone as part of the locale information.  Also, the source
    (system/internal) of the date-time conversion and printing
    functions.
  * Objects of class "POSIXlt" created in this version of R always
    have 11 components: component zone is always set, and component
    gmtoff is set for times in UTC and usually set on the (almost
    all) platforms which have C-level support, otherwise is NA.
  * There are comprehensive validity checks on the structure of
    objects of class "POSIXlt" when converting (including formatting
    and printing).  (This avoids mis-conversions of hand-crafted
    objects.)
  * There is some support for using the native date-time routines on
    macOS: this is only viable on recent versions (e.g. 12.6 and 13)
    and does get wrong some historical changes (before 1900, during
    WWII).  Use of --with-internal-tzone remains the default.
  * as.POSIXct(&lt;numeric&gt;) and as.POSIXlt(.) (without specifying
    origin) now work.  So does as.Date(&lt;numeric&gt;).
  * as.Date.POSIXct(., tz) now treats several tz values, notably
    "GMT" as equivalent to "UTC", proposed and improved by Michael
    Chirico and Joshua Ulrich in PR#17674.
  * Experimental balancePOSIXlt() utility allows using "ragged" and
    or out-of-range "POSIXlt" objects more correctly, e.g., in
    subsetting and subassignments.  Such objects are now documented.
    More experimentally, a "POSIXlt" object may have an attribute
    "balanced" indicating if it is known to be filled or fully
    balanced.
  * Functions axis.Date() and axis.POSIXct() are rewritten to gain
    better default tick locations and better default formats by using
    prettyDate(). Thanks to Swetlana Herbrandt.
  * The mapping of Windows' names for time zones to IANA's 'Olson'
    names has been updated.  When ICU is available (it is by
    default), it is used to get a mapping for the current region set
    in Windows.  This can be overridden by setting environment
    variable TZ to the desired Olson name - see OlsonNames() for
    those currently available.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 16
    and so packages that provide graphics devices should be
    reinstalled.
  * The grDevices and grid packages have new functions for rendering
    typeset glyphs, primarily: grDevices::glyphInfo() and
    grid::grid.glyph().
    Rendering of typeset glyphs is only supported so far on the
    Cairo-based graphics devices and on the pdf() and quartz()
    devices.
  * The defined behaviour for "clear" and "source" compositing
    operators (via grid::grid.group()) has been changed (to align
    better with simple interpretation of original Porter-Duff
    definitions).
  * Support for gradients, patterns, clipping paths, masks, groups,
    compositing operators, and affine transformations has been added
    to the quartz() device.
  INSTALLATION on a UNIX-ALIKE:
  * A system installation of generic LAPACK 3.10.0 or later will be
    preferred to the version in the R sources.
    configure option --with-lapack=no (equivalently --without-lapack)
    forces compilation of the internal LAPACK sources.
    If --with-lapack is not specified, a system liblapack is looked
    for and used if it reports version 3.10.0 or later and does not
    contain BLAS routines.
    Packages using LAPACK will need to be reinstalled if this changes
    to using an external library.
  * On aarch64 Linux platforms using GCC, configure now defaults to
  - fPIC (instead of -fpic), as desired in PR#18326.
  * configure now checks conversion of datetimes between POSIXlt and
    POSIXct around year 2020.  Failure (which has been seen on
    platforms missing tzdata) is fatal.
  * If configure option --with-valgrind-instrumentation is given
    value 1 or 2, option --with-system-valgrind-headers is now the
    default and ignored (with a warning).  It is highly recommended
    that the system headers are installed alongside valgrind: they
    are part of its packaging on some Linux distributions and
    packaged separately (e.g. in the valgrind-devel RPM) on others.
    configure will give a warning if they are not found.
    The system headers will be required in a future release of R to
    build with valgrind instrumentation.
  * libcurl 8.x is now accepted by configure: despite a change in
    major version number it changes neither API nor ABI.
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools43, an update of the Rtools42 toolchain.  It is
    based on gcc 12 and newer versions of MinGW-W64, binutils and
    libraries.  At this time R-devel can still be built using
    Rtools42 without changes, but when R-devel is installed via the
    installer, it will by default look for Rtools43.
  * Old make targets rsync-extsoft and 32-bit ones that are no longer
    needed have been removed.
  * Default builds (including for packages) no longer select C99.
    Thus the C standard used is the default for the compiler, which
    for the toolchain in Rtools43 is C17.  (This is consistent with
    Unix builds.)
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++17 where
    available (which it is on all currently checked platforms): if
    not C++14 or C++11 is used if available otherwise C++ is not
    supported.
  * USE_FC_LEN_T is the default: this uses the correct
    (compiler-dependent) prototypes for Fortran BLAS/LAPACK routines
    called from C/C++, and requires adjustment of many such calls -
    see 'Writing R Extensions' SS6.6.1.
  * There is initial support for C++23 as several compilers are now
    supporting -std=c++23 or -std=c++2b or similar.  As for C++20,
    there no additional configure checks for C++23 features beyond a
    check that the compiler reports a __cplusplus value greater than
    that in the C++20 standard.  C++ feature tests should be used.
  * There is support for a package to indicate the version of the C
    standard which should be used to compile it, and for the
    installing user to specify this.  In most cases R defaults to the
    C compiler's default standard which is C17 (a `bug-fix' of C11) -
    earlier versions of R or compilers may have defaulted to C99.
    Current options are:
    USE_C17 Use a standard that is at most C17.  The intention is to
    allow legacy packages to still be installed when later C
    standards become the default, including packages using new
    keywords as identifiers or with K&amp;R-style function
    declarations.  This will use C17 if available, falling back
    to C11.
    USE_C90 Use the C90 (aka C89) standard.  (As that standard did
    not require compilers to identify that version, all we can
    verify is that the compiler does not claim to be using a
    later standard.  It may accept C99 features - for example
    clang accepts // to make comments.)
    USE_C99 Use the C99 standard. This should be rarely needed - it
    avoids the few new features of C11/C17 which can be useful if
    a package assumes them if C17 is specified and they are not
    implemented.
    USE_C23 Use C23 (or in future, later).  Compiler/library support
    for C23 is still being implemented, but LLVM clang from
    15.0.0 and the upcoming GCC 13 have quite extensive support.
    These can be specified as part of the SystemRequirements field in
    the package's DESCRIPTION file or _via_ options --use-C17 and so
    on of R CMD INSTALL and R CMD SHLIB.
    For further details see "Writing R Extensions" SS1.2.5.
  * (Windows) A src/Makefile.ucrt or src/Makefile.win file is now
    included after R_HOME/etcR_ARCH/Makeconf and so no longer needs
    to include that file itself.  Installation of a package with such
    a file now uses a site Makevars file in the same way as a package
    with a src/Makevars.win file would.
  * configure is now passed crucial variables such as CC and CFLAGS
    in its environment, as many packages were not setting them (as
    documented in 'Writing R Extensions' SS1.2).
    This has most effect where configure is used to compile parts of
    the package - most often by cmake or libtool which obfuscate the
    actual compile commands used.
    Also used for configure.win and configure.ucrt on Windows.
  FORTRAN FLAGS:
  * The flag -fno-optimize-sibling-calls is no longer forced for
    gfortran 7 and later.  It should no longer be needed now using
    'hidden' character-length arguments when calling BLAS/LAPACK
    routines from C/C++ is the default even for packages.  (Unless
    perhaps packages call Fortran code from C/C++ without using R's
    headers and without allowing for these arguments.)
  C-LEVEL FACILITIES:
  * The deprecated S-compatibility macros DOUBLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * The deprecated legacy typedefs of Sint and Sfloat in header R.h
    are no longer defined, and that header no longer includes header
    limits.h from C nor climits from C++.
  * New macro CAD5R() is provided in Rinternals.h and used in a few
    places in the R sources.
  * ALTREP now supports VECSXP vectors. Contributed by Gabor Csardi
    in PR#17620.
  * The Rcomplex definition (in header R_ext/Complex.h) has been
    extended to prevent possible mis-compilation when interfacing
    with Fortran (PR#18430).  The new definition causes compiler
    warnings with static initializers such as {1, 2}, which can be
    changed to {.r=1, .i=2}.
    Using the new definition from C++ depends on compiler extensions
    supporting C features that have not been incorporated into the
    C++ standards but are available in g++ and clang++: this may
    result in C++ compiler warnings but these have been worked around
    for recent versions of common compilers (GCC, Apple/LLVM clang,
    Intel).
    It is intended to change the inclusion of header R_ext/Complex.h
    by other R headers, so C/C++ code files which make use of
    Rcomplex should include that header explicitly.
  UTILITIES:
  * R CMD check does more checking of package .Rd files, warning
    about invalid email addresses and (some) invalid URIs and noting
    empty \item labels in description lists.
  * R CMD check now also reports problems when reading package news
    in md (file NEWS.md) and (optionally) plain text (file NEWS)
    formats.
  * _R_CHECK_TIMINGS_ defaults to a value from the environment even
    for R CMD check --as-cran; this allows for exceptionally fast or
    slow platforms.
    It now applies to checking PDF and HTML versions of the manuals,
    and 'checking CRAN incoming feasibility'.
  * R CMD check can optionally (but included in --as-cran) check
    whether HTML math rendering _via_ KaTeX works for the package .Rd
    files.
  * Non-interactive debugger invocations can be trapped by setting
    the environment variable _R_CHECK_BROWSER_NONINTERACTIVE_ to a
    true value.  This is enabled by R CMD check --as-cran to detect
    the use of leftover browser() statements in the package.
  * The use of sprintf and vsprintf from C/C++ has been deprecated in
    macOS 13 and is a known security risk.  R CMD check now reports
    (on all platforms) if their use is found in compiled code:
    replace by snprintf or vsnprintf respectively. [*NB:* whether
    such calls get compiled into the package is platform-dependent.]
  * Where recorded at installation, R CMD check reports the C and
    Fortran compilers used to build R.
    It reports the OS in use (if known, as given by osVersion) as
    well as that R was built for.
    It notes if a C++ standard was specified which is older than the
    current default: many packages have used C++11 to mean 'not
    C++98' - as C++11 is the minimum supported since R 4.0.0, that
    specification can probably be removed.
  * R CMD INSTALL reports the compilers (and on macOS, the SDK) used,
    and this is copied to the output of R CMD check.
    Where a C++ standard is specified, it is reported.
  * R CMD check's 'checking compilation flags in Makevars' has been
    relaxed to accept the use of flags such as -std=f2008 in
    PKG_FFLAGS.
  * tools::buildVignettes() has a new argument skip, which is used by
    R CMD check to skip (and note) vignettes with unavailable
    \VignetteDepends (PR#18318).
  * New generic .AtNames() added to enable class-specific completions
    after @. The formerly internal function findMatches() is now
    exported, mainly for use in methods for .DollarNames() and
    .AtNames().
  DEPRECATED AND DEFUNCT:
  * default.stringsAsFactors() is defunct.
  * Calling as.data.frame.&lt;class&gt;() directly (for 12 atomic classes)
    is going to be formally deprecated, currently activated by
    setting the environment variable
    _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ to non-empty, which also
    happens in R CMD check --as-cran.
  BUG FIXES:
  * Hashed environments with sizes less than 5 can now grow.
    (Reported to R-devel by Duncan Garmonsway.)
  * as.character(&lt;Rd&gt;, deparse = TRUE) failed to re-escape curly
    braces in LaTeX-like text.  (Reported by Hadley Wickham in
    PR#18324.)
  * library() now passes its lib.loc argument when requiring Depends
    packages; reported (with fix) in PR#18331 by Mikael Jagan.
  * R CMD Stangle: improved message about 'Output' files.
  * head(x, n) and tail(x, n) now signal an error if n is not
    numeric, instead of incidentally "working" sometimes returning
    all of x.  Reported and discussed by Colin Fay, in PR#18357.
  * The "lm" method for summary() now gives the correct F-statistic
    when the model contains an offset.  Reported in PR#18008.
  * C() and `contrasts&lt;-`() now preserve factor level names when
    given a function object (as opposed a function name which did
    preserve names). Reported in PR#17616.
  * c(a = 1, 2)[[]] no longer matches 2 but rather signals a
    _classed_ error.  Reported and analysed by Davis Vaughan in
    PR#18367, a duplicate of PR#18004, by Jan Meis et al.  For
    consistency, NULL[[]] is also erroneous now.  x[[]] &lt;- v gives an
    error of the same class "MissingSubscriptError".
  * The relist() function of utils now supports NULL elements in the
    skeleton (PR#15854).
  * ordered(levels = *) (missing x) now works analogously to factor(,
    ordered=TRUE); reported (with fix) by Achim Zeileis in PR#18389.
  * User-defined Rd macro definitions can now span multiple lines,
    thanks to a patch from Duncan Murdoch. Previously, the Rd parser
    silently ignored everything after the first line.
  * Plain-text help (tools::Rd2txt()) now preserves an initial blank
    line for text following description list items.
  * tools::Rd2HTML() and tools::Rd2latex() no longer split \arguments
    and \value lists at Rd comments.
  * tools::Rd2latex() now correctly handles optional text outside
    \items of argument lists as well as bracketed text at the
    beginning of sections, e.g., \value{[NULL]}.
  * as.character(&lt;POSIXt&gt;) now behaves more in line with the methods
    for atomic vectors such as numbers, and is no longer influenced
    by options().  Ditto for as.character(&lt;Date&gt;).  The
    as.character() method gets arguments digits and OutDec with
    defaults _not_ depending on options().  Use of as.character(*,
    format = .) now warns.
  * Similarly, the as.character.hexmode() and *.octmode() methods
    also behave as good citizen methods and back compatibility option
    keepStr = TRUE.
  * The as.POSIXlt(&lt;POSIXlt&gt;) and as.POSIXct(&lt;POSIXct&gt;) default
    methods now do obey their tz argument, also in this case.
  * as.POSIXlt(&lt;Date&gt;) now does apply a tz (time zone) argument, as
    does as.POSIXct(); partly suggested by Roland Fuss on the R-devel
    mailing list.
  * as.Date.POSIXlt(x) now also works when the list components are of
    unequal length, aka "partially filled" or "ragged".
  * expand.model.frame() looked up variables in the wrong environment
    when applied to models fitted without data.  Reported in
    PR#18414.
  * time() now (also) uses the ts.eps = getOption("ts.eps") argument
    and thus by default rounds values very close to the start (or
    end) of a year.  Based on a proposal by Andre"i V. Kostyrka on
    R-help.
  * Printing of a factanal() result with just one factor and sort =
    TRUE now works regularly, fixing PR#17863 by Timothy Bates,
    thanks to the 'R Contributors' working group.
  * Printing 0-length objects of class "factor", "roman", "hexmode",
    "octmode", "person", "bibentry", or "citation" now prints
    something better, one of which fixes PR#18422, reported by
    Benjamin Feakins.
  * Sys.timezone() queries timedatectl only if systemd is loaded;
    addressing a report by Jan Gorecki in PR#17421.
  * The formula method of cor.test() had scoping problems when
    environment(formula) was not the calling environment; reported
    with a patch proposal by Mao Kobayashi in PR#18439.
  * attach() of an environment with active bindings now preserves the
    active bindings.  Reported by Kevin Ushey in PR#18425.
  * BLAS detection now works also with system-provided libraries not
    available as regular files.  This fixes detection of the
    Accelerate framework on macOS since Big Sur.  Reported by David
    Novgorodsky.
  * download.file() gives a helpful error message in case of an
    invalid download.file.method option, thanks to Colin Fay's report
    in PR#18455.
  * Sporadic crashes of Rterm when using completion have been fixed.
  * Rprof() is now more reliable.  A livelock in thread
    initialization with too short sampling interval has been fixed on
    macOS.  A deadlock in using the C runtime has been fixed on
    Windows.  A potential deadlock has been prevented on Unix.
  * Cursor placement in Rgui now works even after a fixed-width font
    is selected.
  * Mandatory options (options()) are now set on startup so that
    saving and restoring them always works (PR#18372).
  * Package installation, R CMD INSTALL or install.packages(*), now
    parses each of the &lt;pkg&gt;/R/*.R files individually instead of
    first concatenating and then parse()ing the large resulting file.
    This allows parser or syntax errors to be diagnosed with correct
    file names and line numbers, thanks to Simon Dedman's report and
    Bill Dunlap's patch in PR#17859.
    This _does_ require syntactically self contained R source files
    now, fixing another inadvertent bug.
  * predict.lm(&lt;model with offset&gt;) now finds the offset in the
    correct environment, thanks to Andr'e Gillibert's report and patch
    in PR#18456.
  * getInitial(&lt;formula&gt;) now finds the selfStart model in the
    correct environment.  (Reported by Ivan Krylov in PR#18368.)
  * Fix for possible segfault when using recently-added graphics
    features, such as gradients, clipping paths, masks, and groups
    with pdf(file=NULL).
  * class(m) &lt;- class(m) no longer changes a matrix m by adding a
    class _attribute_.
  * packageDate(pkg) now only warns once if there is no pkg.
  * When ts() creates a multivariate time series, "mts", it also
    inherits from "array" now, and is.mts() is documented _and_
    stricter.
  * Rd2txt() now preserves line breaks of \verb Rd content and from
    duplicated \cr.  The former also fixes the rendering of verbatim
    output from Rd \Sexpr in plain-text help.
  * uniroot(f, interval) should no longer wrongly converge _outside_
    the interval in some cases where abs(f(x)) == Inf for an x at the
    interval boundary, thanks to posts by Ben Bolker and Serguei
    Sokol on R-devel.
  * Vectorized alpha handling in palette functions such as in gray(),
    rainbow(), or hcl.colors() works correctly now, thanks to Achim
    Zeileis' report and patch in PR#18476.
  * Formatting and print()ing of bibentry objects has dropped the
    deprecated citation.bibtex.max argument, such that the bibtex
    argument's default for print.bibentry() depends directly on the
    citation.bibtex.max option, whereas in format.bibentry() the
    option no longer applies.
  * Attempting to use a character string naming a foreign function
    entry point in a foreign function call in a package will now
    signal an error if the packages has called R_forceSymbols to
    specify that symbols must be used.
  * An error in table() could permanently set options(warn=2)
    promoting all subsequent warnings to errors.
  * The sigma() function gave misleading results for binary GLMs.  A
    new method for objects of class "glm" returns the square root of
    the estimate of the dispersion parameter using the same
    calculation as summary.glm().
  * bs() and ns() in the (typical) case of automatic knot
    construction, when some of the supposedly inner knots coincide
    with boundary knots, now moves them inside (with a warning),
    building on PR#18442 by Ben Bolker.
  * R CMD on Windows now skips the site profile with --no-site-file
    and --vanilla even when R_PROFILE is set (PR#18512, from Kevin
    Ushey).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1686916800">- CHANGES IN R 4.3.1:
  C-LEVEL FACILITIES:
  * The C-level API version of R's integrate(), Rdqags() in Applic.h,
    now returns the correct number of integrand evaluations neval,
    fixing PR#18515 reported and diagnosed by Stephen Wade.
  * The C prototypes for LAPACK calls dspgv and dtptrs in
    R_exts/Lapack.h had one too many and one too few character length
    arguments - but this has not caused any known issues. To get the
    corrected prototypes, include
    [#]include &lt;Rconfig.h&gt; // for PR18534fixed
    [#]ifdef PR18534fixed
    [#] define usePR18534fix 1
    [#]endif
    [#]include &lt;R_exts/Lapack.h&gt;
    in your C/C++ code (PR#18534).
  INSTALLATION:
  * Many of the checks of esoteric Internet operations and those
    using unreliable external sites have been moved to a new target
    that is not run by default and primarily intended for the core
    developers.  To run them use
    cd tests; make test-Internet-dev
  BUG FIXES:
  * .S3methods(), typically called from methods(), again marks
    methods from package base as visible.
    Also, the visibility of non-base methods is again determined by
    the method's presence in search().
  * tools::Rdiff() is now more robust against invalid strings, fixing
    installation tests on Windows without Rtools installed
    (PR#18530).
  * Fix (new) bug in hcl.colors(2, *), by Achim Zeileis (PR#18523).
  * head(., &lt;illegal&gt;) and tail(..) now produce more useful "Error in
    ...." error messages, fixing PR#18362.
  * Package code syntax on Windows is checked in UTF-8 when UTF-8 is
    the native encoding.
  * na.contiguous(x) now also returns the first run, when it is at
    the beginning and there is a later one of the same length;
    reported to R-devel, including a fix, by Georgi Boshnakov.
    Further, by default, it modifies only an existing attr(*,"tsp")
    but otherwise no longer sets one.
  * chol(&lt;not pos.def&gt;, pivot = &lt;T|F&gt;) now gives a correct error or
    warning message (depending on pivot), thanks to Mikael Jagan's
    (PR#18541).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1699012800">- CHANGES IN R 4.3.2:
  NEW FEATURES:
  * The default initialization of the "repos" option from the
    repositories file at startup can be skipped by setting
    environment variable R_REPOSITORIES to NULL such that
    getOption("repos") is empty if not set elsewhere.
  * qr.X() is now an implicit S4 generic in methods.
  * iconv(to = "ASCII//TRANSLIT") is emulated using substitution on
    platforms which do not support it (notably Alpine Linux).  This
    should give a human-readable conversion in ASCII on all platforms
    (rather than NA_character_).
  * trans3d() gains options continuous and verbose addressing the
    problem of possible "wrap around" when projecting too long
    curves, as reported by Achim Zeileis in PR#18537.
  * tools::showNonASCII() has been rewritten to work better on macOS
    14 (which has a changed implementation of iconv()).
  * tiff(type = "quartz") (the default on macOS) now warns if
    compression is specified: it continues to be ignored.
  INSTALLATION on a UNIX-ALIKE:
  * There is some support for building with Intel's LLVM-based
    compilers on x86_64 Linux, such as (C) icx, (C++) ipcx and
    (Fortran) ifx from oneAPI 2023.x.y.
  * There is support for using LLVM's flang-new as the Fortran
    compiler from LLVM 16.0.x (preferably 17.0.0 or later).
  UTILITIES:
  * R CMD check reports the use of the Fortran 90 random number
    generator RANDOM_NUMBER() and the subroutines to initialize it.
    'Writing R Extensions' has example code to use R's RNGs from
    Fortran.
  BUG FIXES:
  * substr(x, n, L) &lt;- cc now works (more) correctly for multibyte
    UTF-8 strings x when L &gt; nchar(x), thanks to a report and patch
    by 'Architect 95'.
  * contrib.url(character()) now returns 0-length character() as
    documented, which also avoids spurious warnings from
    available.packages() et al. in the edge case of an empty vector
    of repository URLs.
  * readChar(., 4e8) no longer fails, thanks to Kodi Arfer's report
    (PR#18557).
  * lapply(&lt;list&gt;, as.data.frame) no longer warns falsely for some
    base vector components.
  * Communication between parent and child processes in the multicore
    part of parallel could fail on platforms that do not support an
    arbitrarily large payload in system functions read()/write() on
    pipes (seen on macOS where a restriction to INT_MAX bytes is
    documented, without doing a partial read unlike Linux). The
    payload is now split into 1Gb chunks to avoid that problem.
    (PR#18571)
  * qqplot(x,y, conf.level=.) gives better confidence bounds when
    length(x) != length(y), thanks to Alexander Ploner's report and
    patch proposal (PR#18557).
  * norm(&lt;0-length&gt;, "2") now gives zero instead of an error, as all
    the other norm types, thanks to Mikael Jagan's PR#18542.
  * Build-stage Rd macros \packageAuthor and \packageMaintainer now
    process Authors@R, fixing NA results when the package DESCRIPTION
    omits Author and Maintainer fields.
  * Formatting and printing complex numbers could give things like
    0.1683-0i because of rounding error: -0i is now replaced by +0i.
  * postscript() refused to accept a title comment containing the
    letter "W" (PR#18599).
  * isoreg(c(1,Inf)) signals an error instead of segfaulting, fixing
    PR#18603.
  * tiff(type = "Xlib") was only outputting the last page of
    multi-page plots.
  * tools::latexToUtf8() again knows about \~{n} and other letters
    with tilde, fixing a regression in R 4.3.0, and about \^{i} as an
    alternative to \^{\i} (similarly with other accents).
    Furthermore, LaTeX codes for accented I letters are now correctly
    converted, also fixing related mistakes in
    tools::encoded_text_to_latex().
  * tar(*, tar = "internal") no longer creates out-of-spec tar files
    in the very rare case of user or group names longer than 32
    bytes, fixing PR#17871 with thanks to Ivan Krylov.
  * When using the "internal" timezone datetime code, adding a
    fraction of a second no longer adds one second, fixing PR#16856
    from a patch by Ivan Krylov.
  * tools::checkRd() no longer produces spurious notes about
    "unnecessary braces" from multi-line Rd results of \Sexpr macros.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1709208000">- CHANGES IN R 4.3.3:
  NEW FEATURES:
  * iconv() now fixes up variant encoding names such as "utf8"
    case-insensitively.
  DEPRECATED AND DEFUNCT:
  * The legacy encoding = "MacRoman" is deprecated in pdf() and
    postscript(): support was incomplete in earlier versions of R.
  BUG FIXES:
  * Arguments are now properly forwarded to methods on S4 generics
    with ... in the middle of their formal arguments. This was broken
    for the case when a method introduced an argument but did not
    include ... in its own formals. Thanks to Herv'e Pag`es for the
    report PR#18538.
  * Some invalid file arguments to pictex(), postscript() and xfig()
    opened a file called NA rather than throw an error.  These
    included postscript(NULL) (which some people expected to work
    like pdf(NULL)).
  * Passing filename = NA to svg(), cairo_pdf(), cairo_ps() or the
    Cairo-based bitmap devices opened a file called NA: it now throws
    an error.
  * quartz(file = NA) opened a file called NA, including when used as
    a Quartz-based bitmap device.  It now gives an error.
  * rank(&lt;long vector&gt;) now works, fixing PR#18617, thanks to Ilia
    Kats.
  * seq.int() did not adequately check its length.out argument.
  * match(&lt;POSIXct&gt;, .) is correct again for differing time zones,
    ditto for "POSIXlt", fixing PR#18618 reported by Bastian Klein.
  * drop.terms(*, dropx = &lt;0-length&gt;) now works, fixing PR#18563 as
    proposed by Mikael Jagan.
  * drop.terms(*) keeps + offset(.) terms when it should, PR#18565,
    and drop.terms() no longer makes up a response, PR#18566, fixing
    both bugs thanks to Mikael Jagan.
  * getS3method("t", "test") no longer finds the t.test() function,
    fixing PR#18627.
  * pdf() and postscript() support for the documented Adobe encodings
    "Greek" and "Cyrilllic" was missing (although the corresponding
    Windows' codepages could be used).
  * Computations of glyph metric information for pdf() and
    postscript() did not take into account that transliteration could
    replace one character by two or more (only seen on macOS 14) and
    typically warned that the information was not known.
  * rank(x) no longer overflows during integer addition, when
    computing rank average for largish but not-yet long vector x,
    fixing PR#18630, thanks to Ilia Kats.
  * list.files() on Windows now returns also files with names longer
    that 260 bytes (the Windows limit is 260 characters).
    Previously, some file names particularly with 'East Asian'
    characters were omitted.
  * cov2cor(&lt;0 x 0&gt;) now works, fixing PR#18423 thanks to Mikael
    Jagan and Elin Waring.
  * cov2cor(&lt;negative diagonal&gt;) and similar now give one warning
    instead of two, with better wording, fixing PR#18424 thanks to
    Mikael Jagan.
  * tools:: startDynamicHelp() now ensures port is in proper range,
    fixing PR#18645.
  * pbeta(x, a,b) is correct now for x=0 or 1 in the boundary cases
    where a or b or both are 0, fixing PR#18672 thanks to Michael
    Fay.
  * pmatch(x, table) for large table, also called for data frame row
    selection, dfrm[nm, ], is now interruptible, fixing PR#18656.
  * predict(&lt;rank-deficient lm&gt;, newdata=*) fix computing of nbasis,
    see Russ Lenth's comment 29 in PR#16158.
  * Added a work-around for a bug in macOS 14.3.1 and higher which
    prevents R plots in the Quartz Cocoa device from updating on
    screen.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1713960000">- CHANGES IN R 4.4.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Startup banners, R --version, sessionInfo() and R CMD check no
    longer report (64-bit) as part of the platform as this is almost
    universal - the increasingly rare 32-bit platforms will still
    report (32-bit).
    On Windows, ditto for window titles.
  * is.atomic(NULL) now returns FALSE, as NULL is not an atomic
    vector.  Strict back-compatibility would replace is.atomic(foo)
    by (is.null(foo) || is.atomic(foo)) but should happen only
    sparingly.
  NEW FEATURES:
  * The confint() methods for "glm" and "nls" objects have been
    copied to the stats package.  Previously, they were stubs which
    called versions in package MASS. The MASS namespace is no longer
    loaded if you invoke (say) confint(glmfit).  Further, the "glm"
    method for profile() and the plot() and pairs() methods for class
    "profile" have been copied from MASS to stats.  (profile.nls()
    and plot.profile.nls() were already in stats.)
  * The confint() and profile methods for "glm" objects have gained a
    possibility to do profiling based on the Rao Score statistic in
    addition to the default Likelihood Ratio. This is controlled by a
    new test = argument.
  * The pairs() method for "profile" objects has been extended with a
    which = argument to allow plotting only a subset of the
    parameters.
  * The "glm" method for anova() computes test statistics and
    p-values by default, using a chi-squared test or an F test
    depending on whether the dispersion is fixed or free.  Test
    statistics can be suppressed by giving argument test a false
    logical value.
  * In setRepositories() the repositories can be set using their
    names via name = instead of index ind =.
  * methods() and .S3methods() gain a all.names option for the (rare)
    case where functions starting with a . should be included.
  * Serializations can now be interrupted (e.g., by Ctrl-C on a
    Unix-alike) if they take too long, e.g., from save.image(),
    thanks to suggestions by Ivan Krylov and others on R-devel.
  * New startup option --max-connections to set the maximum number of
    simultaneous connections for the session.  Defaults to 128 as
    before: allowed values up to 4096 (but resource limits may in
    practice restrict to smaller values).
  * R on Windows (since Windows 10 2004) now uses the new Segment
    Heap allocator. This may improve performance of some
    memory-intensive applications.
  * When R packages are built, typically by R CMD build &lt;pkg&gt;, the
    new --user=&lt;build_user&gt; option overrides the (internally
    determined) user name, currently Sys.info()["user"] or LOGNAME.
    This is a (modified) fulfillment of Will Landau's suggestion in
    PR#17530.
  * tools::testInstalledBasic() gets new optional arguments outDir
    and testSrcdir, e.g., allowing to use it in a &lt;builddir&gt; !=
    &lt;srcdir&gt; setup, and in standard "binary" Windows installation
  * if* a source tests/ folder is present.
  * range(&lt;DT_with_Inf&gt;, finite = TRUE) now work for objects of class
    "Date", "POSIXct", and "POSIXlt" with infinite entries,
    analogously to range.default(), as proposed by Davis Vaughan on
    R-devel.  Other range()-methods can make use of new function
    .rangeNum().
  * New .internalGenerics object complementing .S3PrimitiveGenerics,
    for documentation and low-level book-keeping.
  * grid() now invisibly returns the x- and y- coordinates at which
    the grid-lines were drawn.
  * norm(., type) now also works for complex matrices.
  * kappa(., exact = TRUE, norm = *) now works for all norms and also
    for complex matrices.  In symmetric / triangular cases, the new
    argument uplo = "U" | "L" allows the upper or lower triangular
    part to be specified.
  * memDecompress(type = "unknown") recognizes compression in the
    default 'zlib' format as used by memCompress(type = "gzip").
  * memCompress() and memDecompress() will use the libdeflate library
    (&lt;https://github.com/ebiggers/libdeflate&gt;) if installed.  This
    uses the same type of compression for type = "gzip" but is 1.5-2x
    faster than the system libz library on some common platforms: the
    speed-up may depend on the library version.
  * diff() for objects of class "Date", "POSIXct", and "POSIXlt"
    accepts a units argument passed via ....
  * Dynamic help now does a much better job of rendering package
    DESCRIPTION metadata.
  * Rprof() gains an event argument and support for elapsed (real)
    time profiling on Unix (PR#18076).
  * filled.contour() gains a key.border argument.
  * tools::update_pkg_po() gets arguments pot_make and mo_make for
    _not_ re-making the corresponding files, and additionally a
    verbose argument.
  * Hexadecimal string colour specifications are now accepted in
    short form, so, for example, we can use "#123", which is
    equivalent to "#112233".
    Thanks to MikeFC for the original idea and Ella Kaye, Malcolm
    Barrett, George Stagg, and Hanne Oberman for the patch.
  * Plain-text help shows \var markup by angle brackets.
  * The new experimental primitive function declare() is intended to
    eventually allow information about R code to be communicated to
    the interpreter, compiler, and code analysis tools. The syntax
    for declarations is still being developed.
  * Functions psmirnov(), qsmirnov() and rsmirnov() in package stats
    have had argument two.sided renamed to alternative, to take into
    account that the permutation distributions of the one-sided
    statistics can be different in the case of ties.  Consequence of
    PR#18582.
  * sort() is now an implicit S4 generic in methods.
  * Formatting and printing, format(z), print(z), of complex vectors
    z no longer zap relatively small real or imaginary parts to zero,
    fixing PR#16752.  This is an API change, as it was documented
    previously to round real and imaginary parts together on purpose,
    producing nicer looking output.  As mentioned, e.g. in the PR,
    this change is compatible with many other "R-like" programming
    environments.
    We have simplified the internal code and now basically format the
    real and imaginary parts independently of each other.
  * New experimental functions Tailcall() and Exec() to support
    writing stack-space-efficient recursive functions.
  * Where characters are attempted to be plotted by pdf(),
    postscript() and xfig() which are not in the selected 8-bit
    character set (most often Latin-1) and the R session is using a
    UTF-8 locale, the warning messages will show the UTF-8 character
    rather than its bytes and one dot will be substituted per
    character rather than per byte.  (Platforms whose iconv() does
    transliteration silently plot the transliteration.)
    In a UTF-8 locale some transliterations are now done with a
    warning (e.g., dashes and Unicode minus to hyphen, ligatures are
    expanded, permille (‰) is replaced by o/oo), although the OS may
    have got there first.  These are warnings as they will continue
    to be replaced by dots in earlier versions of R.
  * The matrix multiplication functions crossprod() and tcrossprod()
    are now also primitive and S3 generic, as %*% had become in R
    4.3.0.
  * source() and example() have a new optional argument catch.aborts
    which allows continued evaluation of the R code after an error.
  * The non-Quartz tiff() devices allow additional types of
    compression if supported by the platform's libtiff library.
  * The list of base and recommended package names is now provided by
    tools::standard_package_names().
  * cairo_pdf() and cairo_ps() default to onefile = TRUE to closer
    match pdf() and postscript().
  * New option catch.script.errors provides a documented way to catch
    errors and then continue in non-interactive use.
  * L %||% R newly in base is an expressive idiom for the phrases
    if(!is.null(L)) L else R or if(is.null(L)) R else L.
  * The return value from warnings() now always inherits from
    "warnings" as documented, now also in the case of no warnings
    where it previously returned NULL.
  * as.complex("1i") now returns 0 + 1i instead of NA with a warning.
  * z &lt;- c(NA, 1i) now keeps the imaginary part Im(z[1]) == 0, no
    longer coercing to NA_complex_.  Similarly, cumsum(z) correctly
    sums real and imaginary parts separately, i.e., without
    "crosstalk" in case of NAs.
  * On Alpine Linux iconv() now maps "latin2", "latin-2", "latin9"
    and "latin-9" to encoding names the OS knows about
    (case-insensitively).
  * iconv(sub = "Unicode") now always zero-pads to four (hex) digits,
    rather than to 4 or 8.  (This seems to have become the convention
    once Unicode restricted the number of Unicode points to 2^21 - 1
    and so will never need more than 6 digits.)
  * NCOL(NULL) now returns 0 instead of 1, for consistency with
    cbind().
  * The information for the Euro glyph missing from the Adobe .afm
    files for the Courier, Helvetica and Times families has been
    copied from their URW equivalents - this will improve vertical
    centring in the pdf() and postscript() devices.
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.12.0.  The changes are almost entirely cosmetic.
  * The included LAPACK sources have been updated to version 3.12.0
    and some further double-complex routines added.
  * There are new font families for the 2014--5 URW 2.0 fonts (see
    ?pdf) which are included in recent versions of Ghostscript.
    These have font widths for most Greek glyphs and a few others
    which were missing from the original versions (whose font
    families remain available for reproducibility, although
    Ghostscript-based viewers will render using the 2.0 versions).
  * Improve the large-n efficiency of as.matrix(&lt;dist&gt;), thanks an R
    contributors effort, notably by Tim Taylor and Heather Turner,
    see PR#18660.
  * The default and numeric methods of all.equal() get a check.class
    option.
  * zapsmall() gets new optional arguments, function mFUN and min.d,
    for extra flexibility; fulfills a wish in PR#18199.  Also, it is
    now an implicit S4 generic in package methods.
  * The Rd filter for aspell() gains an ignore argument.
  * New generic function sort_by(), primarily useful for the
    data.frame method which can be used to sort rows of a data frame
    by one or more columns.
  * The icence headers for the RPC code in src/extra/xdr have been
    updated to use the GPL-compatible licence published by Oracle
    America in 2010.
  * New function pkg2HTML() in tools to create single-page HTML
    reference manuals for R packages.
  * The byte code evaluator now uses less C stack space for recursive
    calls to byte-compiled functions. It also makes more of an effort
    to avoid allocations for scalar return values.
  * New completion option backtick (disabled by default) allows
    non-syntactic completions to be wrapped in backquotes. This is
    currently only useful for Jupyter notebooks via the IRkernel
    package, and may cause problems for other backends.
  INSTALLATION:
  * The parser has been updated to work with bison 3.8.2, which is
    now used for the pre-generated parsers in gram.c, file.c, and
    gramRd.c. A few parser error messages have changed, which may
    affect code that relies on exact messages.
  INSTALLATION on a UNIX-ALIKE:
  * System valgrind headers are now required to use configure option
  - -with-valgrind-instrumentation with value 1 or 2.
  * configure will warn if it encounters a 32-bit build, as that is
    nowadays almost untested.
  * Environment variable R_SYSTEM_ABI is no longer used and so no
    longer recorded in etc/Renviron (it was not on Windows and was
    only ever used when preparing package tools).
  * If the libdeflate library and headers are available, libdeflate
    rather than libz is used to (de)compress R objects in lazy-load
    databases.  Typically tasks spend up to 5% of their time on such
    operations, although creating lazy-data databases is one of the
    exceptions.
    This can be suppressed if the library is available by the
    configure option --without-libdeflate-compression.
  * configure option --enable-lto=check has not worked reliably since
    2019 and has been removed.
  * The minimum autoconf requirement for a maintainer build has been
    increased to autoconf 2.71.
    It is intended to increase this to 2.72 for R 4.5.0: the
    distributed configure file was generated using 2.72.
  * The minimum version requirement for an external LAPACK has been
    reduced to 3.9.0.
  * No default C++ compiler is set if no C++17 compiler is detected:
    there is no longer an automatic fallback to C++14 or C++11.
    Compilers from the last five years should have sufficient
    support: for others macros CXX and CXXSTD can be set in file
    config.site to provide a fallback if needed.
    The Objective-C++ compiler now by default uses the standard
    selected by R for C++ (currently C++17) rather than the default
    standard for the C++ compiler (which on macOS is still C++98).
  INSTALLATION on macOS:
  * A new configure option --with-newAccelerate makes use of Apple's
    'new' BLAS / LAPACK interfaces in their Accelerate framework.
    Those interfaces are only available in macOS 13.3 or later, and
    building requires SDK 13.3 or later (from the Command Line Tools
    or Xcode 14.3 or later).
    By default the option uses new Accelerate for BLAS calls: to also
    use it for LAPACK use option --with-newAccelerate=lapack.  The
    later interfaces provide LAPACK 3.9.1 rather than 3.2.1: 3.9.1 is
    from 2021-04 and does not include the improved algorithms
    introduced in LAPACK 3.10.0 (including for BLAS calls).
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools44, an update of the Rtools43 toolchain.  It is
    based on GCC 13 and newer versions of MinGW-W64, binutils and
    libraries (targeting 64-bit Intel CPUs).  R-devel can no longer
    be built using Rtools43 without changes.
  * Rtools44 has experimental support for 64-bit ARM (aarch64) CPUs
    _via_ the LLVM 17 toolchain using lld, clang/flang-new and
    libc++.
  UTILITIES:
  * R CMD check notes when S4-style exports are used without
    declaring a strong dependence on package methods.
  * tools::checkRd() (used by R CMD check) detects more problems with
    \Sexpr-based dynamic content, including bad nesting of \Sexprs
    and invalid arguments.
  * tools::checkRd() now reports Rd titles and section names ending
    in a period; this is ignored by R CMD check unless environment
    variable _R_CHECK_RD_CHECKRD_MINLEVEL_ is set to -5 or smaller.
  * R CMD check now notes Rd files without an \alias, as long
    documented in 'Writing R Extensions' §1.3.1.  The check for a
    missing \description has been moved from tools::checkRd() to
    tools::checkRdContents().
  * R CMD check now visits inst/NEWS.Rd and OS-specific man
    subdirectories when checking Rd files.
  * tools::checkDocFiles() and tools::checkRdContents() now also
    check internal Rd files by default, but "specially" (ignoring
    missing documentation of arguments).
  * R CMD Rdiff gets option --useEx.
  * R CMD check now warns on non-portable uses of Fortran KIND such
    as INTEGER(KIND=4) and REAL(KIND=8).
    To see the failing lines set environment variable
    _R_CHECK_FORTRAN_KIND_DETAILS_ to a true value.
  * When checking Rd files, R CMD check now notes some of the "lost
    braces" that tools::checkRd() finds.  Typical problems are Rd
    macros missing the initial backslash (e.g., code{...}), in-text
    set notation (e.g., {1, 2}, where the braces need escaping), and
    \itemize lists with \describe-style entries of the form
    \item{label}{description}.
  * R CMD INSTALL (and hence check) will compile C++ code with
  - DR_NO_REMAP if environment variable _R_CXX_USE_NO_REMAP_ is set
    to a true value.  It is planned that this will in future become
    the default for compiling C++.
  * The new built-in Rd macro \dontdiff{} can be used to mark example
    code whose output should be ignored when comparing check output
    to reference output (tests/Examples/&lt;pkg&gt;-Ex.Rout.save).  The
    \dontdiff tag, like \donttest, is _not_ shown on the rendered
    help page, so provides a clean alternative to ##
    IGNORE_RDIFF_(BEGIN|END) comments.
  * R CMD build when there is no NAMESPACE, now uses the recommended
    exportPattern("^[^.]"), instead of exporting everything.
  * R CMD check now warns about non-ASCII characters in the NAMESPACE
    file (in addition to R files). Such packages are not portable and
    may fail to install on some platforms.
  C-LEVEL FACILITIES:
  * Headers R_ext/Applic.h and R-ext/Linpack.h used to include
    R_ext/BLAS.h although this was undocumented and unneeded by their
    documented entry points.  They no longer do so.
  * New function R_missing(), factored out from do_missing(), used to
    fix PR#18579.
  * SEXP type S4SXP has been renamed to OBJSXP to support
    experimenting with alternative object systems.  The S4SXP value
    can still be used in C code but is now deprecated.  Based on
    contributions from the R Consortium's Object-Oriented Programming
    Working Group.
  * New function pow1p(x,y) for accurate (1+x)^y.
  * mkCharLenCE was incorrectly documented to take a size_t length
    but was implemented with int (and character strings in R are
    limited to 2^31 - 1 bytes).
  DEPRECATED AND DEFUNCT:
  * data() no longer handles zipped data from long-defunct (since R
    2.13.0) --use-zip-data installations.
  * The legacy graphics devices pictex() and xfig() are now
    deprecated.  They do not support recent graphics enhancements and
    their font handling is rudimentary. The intention is to retain
    them for historical interest as long as they remain somewhat
    functional.
  * Support for encoding = "MacRoman" has been removed from the pdf()
    and postscript() devices - this was a legacy encoding supporting
    classic macOS up to 2001 and no longer has universal libiconv
    support.
  * is.R() is deprecated as no other S dialect is known to be in use
    (and this could only identify historical dialects, not future
    ones).
    Further information on calls can be obtained by setting the
    environment variable _R_DEPRECATED_IS_R_ to error which turns the
    deprecation warning into an error and so by default gives a
    traceback.  (This is done by R CMD check --as-cran.)
  * UseMethod() no longer forwards local variables assigned in the
    generic function into method call environments before evaluating
    the method body. This makes method calls behave more like
    standard function calls and makes method code easier to analyze
    correctly.
  * The twelve as.data.frame.&lt;class&gt;() methods which were deprecated
    only via _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ and in R CMD
    check --as-cran are formally deprecated now in favour of calling
    as.data.frame() or as.data.frame.vector().  The deprecation
    "check" now works also when as.data.frame() is S4 generic thanks
    to Ivan Krylov.
  * The default method for the directional comparison operators &lt;, &gt;,
    &lt;=, and &gt;= now signals an error when one of the operands is a
    language object, i.e. a symbol or a call.
  * For terms.formula(), deprecate abb and neg.out arguments
    _formally_ in addition to just documenting it.
  BUG FIXES:
  * The methods package is more robust to not being attached to the
    search path.  More work needs to be done.
  * pairwise.t.test() misbehaved when subgroups had 0 DF for
    variance, even with pool.sd = TRUE.  (PR#18594 by Jack Berry).
  * Probability distribution functions [dpq]&lt;distrib&gt;(x, *), but also
    bessel[IKJY](x, .) now consistently preserve attributes(x) when
    length(x) == 0, e.g., for a 2 x 0 matrix, thanks to Karolis
    Koncevičius' report PR#18509.
  * Group "Summary" computations such as sum(1:3, 4, na.rm = 5, NA,
    7, na.rm = LL) now give an error instead of either 17 or NN for
    LL true or false, as proposed by Ivan Krylov on the R-devel
    mailing list.  (This also means it is now an error to specify
    na.rm more than once.)
  * as.complex(x) now returns complex(real = x, imaginary = 0) for
    _all_ numerical and logical x, notably also for NA or
    NA_integer_.
  * Directories are now omitted by file.copy(, recursive = FALSE) and
    in file.append() (PR#17337).
  * gsub() and sub() are now more robust to integer overflow when
    reporting errors caused by too large input strings (PR#18346).
  * Top-level handlers are now more robust to attempts to remove a
    handler whilst handlers are running (PR#18508).
  * The handling of Alt+F4 in dialogs created on Windows using
    GraphApp has been fixed (PR#13870).
  * density() more consistently computes grid values for the
    FFT-based convolution, following Robert Schlicht's analysis and
    proposal in PR#18337, correcting density values typically by a
    factor of about 0.999.  Argument old.coords = TRUE provides back
    compatibility.
  * palette.colors() gains a name argument that defaults to FALSE
    controlling whether the vector of colours that is returned has
    names (where possible).  PR#18529.
  * tools::xgettext() no longer extracts the (non-translatable) class
    names from warningCondition and errorCondition calls.
  * S3method(&lt;gen&gt;, &lt;class&gt;, &lt;func&gt;) in the NAMESPACE file now works
    (again) when &lt;func&gt; is visible from the namespace, e.g.,
    imported, or in base.
  * getParseData(f) now also works for a function defined in the
    first of several &lt;pkg&gt;/R/*.R source files, thanks to Kirill
    Müller's report and Duncan Murdoch's patch in PR#16756.
  * Rd \Sexpr macros with nested #ifdef conditionals were not
    processed.
  * A non-blocking connection with non-default encoding (such as a
    socket) now correctly returns from readLines() after new data has
    arrived also when its EOF had been reached previously.  Thanks to
    Peter Meilstrup's report on R-devel and Ivan Krylov's report and
    patch proposal in PR#18555.
  * tools::checkRdContents() failed to detect empty argument
    descriptions when they spanned multiple lines, including those
    generated by prompt().  These cases are now noted by R CMD check.
  * Plain-text help no longer outputs spurious colons in the
    arguments list (for multi-line \item labels in the Rd source).
  * kappa() and rcond() work correctly in more cases; kappa(., norm =
    "2") now warns that it computes the 1-norm with (default) exact =
    FALSE; prompted by Mikael Jagan's quite comprehensive PR#18543.
  * Rd skeletons generated by prompt() or promptData() now use a
    dummy title (so R CMD build works).  tools::checkRdContents() has
    been updated to detect such template leftovers, including from
    promptPackage().
  * When S4 method dispatch fails because no method was found, the
    error message now includes the signature argument names; thanks
    to Michael Chirico's proposal on the R-devel list.
  * withAutoprint({ .. }) now preserves srcrefs previously lost,
    thanks to Andrew Simmons' report plus fix in PR#18572.
  * transform.data.frame() no longer adjusts names; in particular,
    untransformed variables are kept as-is, including those with
    syntactically invalid names (PR#17890).
  * The keep.source option for Rd \Sexpr blocks is no longer ignored.
  * The formula methods for t.test() and wilcox.test() now catch when
    paired is passed, addressing PR#14359; use Pair(x1, x2) ~ 1 for a
    paired test.
  * The level reported in the browser prompt was often too large. It
    now shows the number of browser contexts on the stack.
  * For cbind() and rbind(), the optional deparse.level argument is
    now properly passed to methods, thanks to Mikael Jagan's PR#18579
    and comments there.
  * Some error and warning messages for large ('long vector')
    matrix(v, nr, nc) and dim(m) &lt;- d are now correct about sizes,
    using long long formatting, fixing PR#18612 (and more) reported
    by Mikael Jagan.
  * readChar(useBytes = TRUE) now terminates strings even when the
    underlying connection uses extra spaces in the input buffer.
    This fixes problems with extra garbage seen with gzip
    connections, PR#18605.
  * Named capture in PCRE regular expressions now works also with
    more than 127 named groups (PR#18588).
  * Datetime functions are now robust against long jumps when dealing
    with internal time zone changes.  This avoids confusing warnings
    about an invalid time zone, previously triggered by turning
    warnings into errors or handling them via tryCatch (PR#17966,
    PR#17780).
  * Datetime functions now restore even an empty TZ environment
    variable after internal time zone changes (PR#17724).  This makes
    results of datetime functions with this (typically unintentional)
    setting more predictable.
  * drop.terms(*) now drops response as by default, keep.response =
    FALSE, fixing PR#18564 thanks to Mikael Jagan.
  * dummy.coef(.) now also works for lm()-models with character
    categorical predictor variables rather than factor ones, fixing
    PR#18635 reported by Jinsong Zhao.
  * formals(f) &lt;- formals(f) now also works for a function w/o
    arguments and atomic _constant_ body(f).
  * Correct as.function(&lt;invalid list&gt;, .)'s error message.
  * removeSource() is yet more thorough in finding and removing
    "srcref" and the other source references from parsed R language
    chunks, fixing PR#18638 thanks to Andrew Simmons.
  * dgeom() is more accurate now, notably when its result is very
    small, fixing PR#18642 thanks to the proposal of Morten Welinder,
    also improving other instances where C level binom_raw(x, n, ..)
    has x == 0 or x== n.
  * warning() with options(warn = 1) has improved output for
    multi-line messages.
  * axis.Date() and axis.POSIXct() now respect the par("lab") setting
    for the number of pretty() intervals.
  * Comparisons for language objects (which are based on deparsing)
    are now more careful about using accurate deparsed results
    (PR#18676).
  * Plain-text help (Rd2txt) now correctly preserves blank lines
    following single-line \dontrun code.
  * &lt;POSIXlt&gt;[*] no longer sets wrong "balanced" attribute, fixing
    PR#18681 thanks to Mikael Jagan.
  * str(&lt;classed-call&gt;) now deparses the call as expected, fixing
    PR#18684, reported by Dave Slager.
  * In Rd examples, code following the closing brace of a \dontrun,
    \dontshow or \donttest tag on the same line is no longer skipped
    when R CMD check runs the examples.
  * as.data.frame(matrix(*, ncol=0)) now gets valid names() and
    colnames(); reported by Davis Vaughan on the R-devel list.
  * Internal Mathlib function stirlerr(n) is now almost fully
    (52-bit) accurate for all n &gt;= ~5.9 and more accurate also in the
    range 1 -- 5.9.  This entails small ("after 12th decimal")
    changes in density functions, e.g., dgamma() in _some_ regions of
    their support.  The fix was partly prompted by Morten Welinder's
    PR#18640.
  * Numbers like 9876543.2 are now considered non-integer by Mathlib
    internal R_nonint(), amending original fix of PR#15734.
  * Rd comment lines no longer cause broken paragraphs in the
    rendered PDF and plain-text help. In code blocks, pure comment
    lines (starting with %) no longer produce an empty line.
  * xtabs(Freq ~ .) now consistently defaults to na.action = na.pass,
    using na.rm = FALSE (added as an argument) when summing over Freq
    (PR#17770).
  * tools::testInstalledPackage() is no longer silent about failures
    from running examples or tests and its return code no longer
    ignores failures from checking vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1718366400">- CHANGES IN R 4.4.1:
  C-LEVEL FACILITIES:
  * Functions R_atof and R_strtod declared in header R_ext/Utils.h
    are now documented in 'Writing R Extensions' and so formally part
    of the API.
  * The non-API entry points Rf_setSVector, Rf_StringFalse,
    Rf_StringTrue and Rf_isBlankString have been added to those
    reported by R CMD check.
  * The new function Rf_allocLang is now available. This provides an
    alternative to the idiom of calling Rf_allocList followed by
    SET_TYPEOF.
  UTILITIES:
  * R CMD check now reports as warnings what gfortran calls 'Fortran
    2018 deleted features', all of which have long been marked as
    'obsolescent' and some of which were deleted in Fortran 2008 or
    earlier.  Fortran compilers are no longer required to support
    these.
  BUG FIXES:
  * as.numeric(), scan(), type.convert() and other places which use
    the internal C function R_strtod now require a _non-empty_ digit
    sequence in a decimal or binary exponent.  This aligns with the
    C/POSIX standard for strtod and with ?NumericConstants.
  * as.data.frame(m, make.names=NA) now works correctly for a matrix
    m with NA's in row names.
  * The error message from &lt;POSIXlt&gt;[["hour"]] and similar now
    mentions *[[, "hour"]], as wished for in PR#17409 and proposed by
    Michael Chirico.
  * qbinom() and potentially qpois(), qnbinom(), no longer sometimes
    fail accurate inversion (of pbinom(), etc), thanks to Christopher
    Chang's report and patch in PR#18711.
  * The internal help server on Windows can again serve requests sent
    in quick succession, fixing a regression in R 4.4.0.
  * debugcall(&lt;S3Generic&gt;()) now also works when a corresponding
    S4-generic version is in the methods cache (PR#18143).
  * Package tools' toTitleCase(ch0) now returns character(0) when ch0
    is of zero length; fixing PR#18724, reported by David Hugh Jones.
  * R CMD check is no longer broken (without a check result and no
    explanation in 00check.log) for a package which declares an
    invalid VignetteBuilder in DESCRIPTION but has no vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1730376000">- CHANGES IN R 4.4.2:
  C-LEVEL FACILITIES:
  * The S-compatibility macros F77_COM and F77_COMDECL defined in
    header R_ext/RS.h are deprecated and will be removed shortly.  We
    could find no record of their use.
  BUG FIXES:
  * Mathlib function lgammacor(x) no longer warns about underflow to
    zero for large x.
  * Text widths and heights were incorrectly reported by the Quartz
    device if the drawing context didn't exist yet (typically when
    drawing off-screen to a window that is yet to appear, see
    PR#18591).
  * The Quartz device could segfault in cases where paths with spaces
    are used in the new glyph drawing API.  Thanks to Tomek
    Gieorgijewski (PR#18758).
  * On macOS in R CRAN builds, it is again possible to read
    little-endian UTF-16 text with a BOM from a connection using
    encoding="UTF-16".  Users building R from source should avoid
    using the system libiconv in macOS 14.1 and later.
  * methods' internal .requirePackage() now re-enables primitive
    method dispatch when needed; thanks to Ivan Krylov for
    demystifying CRAN package check failures on the R-devel mailing
    list.</changelog>
</package>
<package pkgid="ba7d7a64449dcda1c09f3f79516ac35ddc20735ad44b411d5922b5a4de850289fbe36cd6b4c4b654c1214c6d23780cb0bc1b9788ffd09b3ccce07f315e0bdc5f" name="R-stats-debuginfo" arch="x86_64">
  <version epoch="0" ver="4.4.2" rel="51.0.2.2.sr20241103"/>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1620302400">- To get in sync with d:l:R:autoCRAN the Matrix package's split
  in -devel was reversed.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339200">- improved spec file according to comments of dimstar in
  https://build.opensuse.org/request/show/892685</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339201">- CHANGES IN R 4.1.0:
  FUTURE DIRECTIONS:
  * It is planned that the 4.1.x series will be the last to support
    32-bit Windows, with production of binary packages for that
    series continuing until early 2023.
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Data set esoph in package datasets now provides the correct
    numbers of controls; previously it had the numbers of cases added
    to these.  (Reported by Alexander Fowler in PR#17964.)
  NEW FEATURES:
  * www.omegahat.net is no longer one of the repositories known by
    default to setRepositories().  (Nowadays it only provides source
    packages and is often unavailable.)
  * Function package_dependencies() (in package tools) can now use
    different dependency types for direct and recursive dependencies.
  * The checking of the size of tarball in R CMD check --as-cran
    &lt;pkg&gt; may be tweaked via the new environment variable
    _R_CHECK_CRAN_INCOMING_TARBALL_THRESHOLD_, as suggested in
    PR#17777 by Jan Gorecki.
  * Using c() to combine a factor with other factors now gives a
    factor, an ordered factor when combining ordered factors with
    identical levels.
  * apply() gains a simplify argument to allow disabling of
    simplification of results.
  * The format() method for class "ftable" gets a new option justify.
    (Suggested by Thomas Soeiro.)
  * New ...names() utility.  (Proposed by Neal Fultz in PR#17705.)
  * type.convert() now warns when its as.is argument is not
    specified, as the help file always said it _should_.  In that
    case, the default is changed to TRUE in line with its change in
    read.table() (related to stringsAsFactor) in R 4.0.0.
  * When printing list arrays, classed objects are now shown _via_
    their format() value if this is a short enough character string,
    or by giving the first elements of their class vector and their
    length.
  * capabilities() gets new entry "Rprof" which is TRUE when R has
    been configured with the equivalent of --enable-R-profiling (as
    it is by default).  (Related to Michael Orlitzky's report
    PR#17836.)
  * str(xS4) now also shows extraneous attributes of an S4 object
    xS4.
  * Rudimentary support for vi-style tags in rtags() and R CMD rtags
    has been added.  (Based on a patch from Neal Fultz in PR#17214.)
  * checkRdContents() is now exported from tools; it and also
    checkDocFiles() have a new option chkInternal allowing to check
    Rd files marked with keyword "internal" as well.  The latter can
    be activated for R CMD check via environment variable
    _R_CHECK_RD_INTERNAL_TOO_.
  * New functions numToBits() and numToInts() extend the raw
    conversion utilities to (double precision) numeric.
  * Functions URLencode() and URLdecode() in package utils now work
    on vectors of URIs.  (Based on patch from Bob Rudis submitted
    with PR#17873.)
  * path.expand() can expand ~user on most Unix-alikes even when
    readline is not in use.  It tries harder to expand ~, for example
    should environment variable HOME be unset.
  * For HTML help (both dynamic and static), Rd file links to help
    pages in external packages are now treated as references to
    topics rather than file names, and fall back to a file link only
    if the topic is not found in the target package. The earlier rule
    which prioritized file names over topics can be restored by
    setting the environment variable _R_HELP_LINKS_TO_TOPICS_ to a
    false value.
  * c() now removes NULL arguments before dispatching to methods,
    thus simplifying the implementation of c() methods, _but_ for
    back compatibility keeps NULL when it is the first argument.
    (From a report and patch proposal by Lionel Henry in PR#17900.)
  * Vectorize()'s result function's environment no longer keeps
    unneeded objects.
  * Function ...elt() now propagates visibility consistently with
    ..n.  (Thanks to Lionel Henry's PR#17905.)
  * capture.output() no longer uses non-standard evaluation to
    evaluate its arguments.  This makes evaluation of functions like
    parent.frame() more consistent.  (Thanks to Lionel Henry's
    PR#17907.)
  * packBits(bits, type="double") now works as inverse of
    numToBits().  (Thanks to Bill Dunlap's proposal in PR#17914.)
  * curlGetHeaders() has two new arguments, timeout to specify the
    timeout for that call (overriding getOption("timeout")) and TLS
    to specify the minimum TLS protocol version to be used for
    https:// URIs (_inter alia_ providing a means to check for sites
    using deprecated TLS versions 1.0 and 1.1).
  * For nls(), an optional constant scaleOffset may be added to the
    denominator of the relative offset convergence test for cases
    where the fit of a model is expected to be exact, thanks to a
    proposal by John Nash.  nls(*, trace=TRUE) now also shows the
    convergence criterion.
  * Numeric differentiation _via_ numericDeriv() gets new optional
    arguments eps and central, the latter for taking central divided
    differences.  The latter can be activated for nls() via
    nls.control(nDcentral = TRUE).
  * nls() now passes the trace and control arguments to getInitial(),
    notably for all self-starting models, so these can also be fit in
    zero-noise situations via a scaleOffset.  For this reason, the
    initial function of a selfStart model must now have ... in its
    argument list.
  * bquote(splice = TRUE) can now splice expression vectors with
    attributes: this makes it possible to splice the result of
    parse(keep.source = TRUE).  (Report and patch provided by Lionel
    Henry in PR#17869.)
  * textConnection() gets an optional name argument.
  * get(), exists(), and get0() now signal an error if the first
    argument has length greater than 1.  Previously additional
    elements were silently ignored.  (Suggested by Antoine Fabri on
    R-devel.)
  * R now provides a shorthand notation for creating functions, e.g.
    \(x) x + 1 is parsed as function(x) x + 1.
  * R now provides a simple native forward pipe syntax |&gt;.  The
    simple form of the forward pipe inserts the left-hand side as the
    first argument in the right-hand side call.  The pipe
    implementation as a syntax transformation was motivated by
    suggestions from Jim Hester and Lionel Henry.
  * all.equal(f, g) for functions now by default also compares their
    environment(.)s, notably via new all.equal method for class
    function.  Comparison of nls() fits, e.g., may now need
    all.equal(m1, m2, check.environment = FALSE).
  * .libPaths() gets a new option include.site, allowing to _not_
    include the site library.  (Thanks to Dario Strbenac's suggestion
    and Gabe Becker's PR#18016.)
  * Lithuanian translations are now available.  (Thanks to Rimantas
    Zakauskas.)
  * names() now works for DOTSXP objects.  On the other hand, in
    R-lang, the R language manual, we now warn against relying on the
    structure or even existence of such dot-dot-dot objects.
  * all.equal() no longer gives an error on DOTSXP objects.
  * capabilities("cairo") now applies only to the file-based devices
    as it is now possible (if very unusual) to build R with Cairo
    support for those but not for X11().
  * There is optional support for tracing the progress of
    loadNamespace() - see its help.
  * (Not Windows.)  l10n_info() reports an additional element, the
    name of the encoding as reported by the OS (which may differ from
    the encoding part (if any) of the result from
    Sys.getlocale("LC_CTYPE").
  * New function gregexec() which generalizes regexec() to find _all_
    disjoint matches and well as all substrings corresponding to
    parenthesized subexpressions of the given regular expression.
    (Contributed by Brodie Gaslam.)
  * New function charClass() in package utils to query the
    wide-character classification functions in use (such as
    iswprint).
  * The names of quantile()'s result no longer depend on the global
    getOption("digits"), but quantile() gets a new optional argument
    digits = 7 instead.
  * grep(), sub(), regexp and variants work considerably faster for
    long factors with few levels.  (Thanks to Michael Chirico's
    PR#18063.)
  * Provide grouping of x11() graphics windows within a window
    manager such as Gnome or Unity; thanks to a patch by Ivan Krylov
    posted to R-devel.
  * The split() method for class data.frame now allows the f argument
    to be specified as a formula.
  * sprintf now warns on arguments unused by the format string.
  * New palettes "Rocket" and "Mako" for hcl.colors() (approximating
    palettes of the same name from the 'viridisLite' package).
    Contributed by Achim Zeileis.
  * The base environment and its namespace are now locked (so one can
    no longer add bindings to these or remove from these).
  * Rterm handling of multi-byte characters has been improved,
    allowing use of such characters when supported by the current
    locale.
  * Rterm now accepts ALT+ +xxxxxxxx sequences to enter Unicode
    characters as hex digits.
  * Environment variable LC_ALL on Windows now takes precedence over
    LC_CTYPE and variables for other supported categories, matching
    the POSIX behaviour.
  * duplicated() and anyDuplicated() are now optimized for integer
    and real vectors that are known to be sorted via the ALTREP
    framework. Contributed by Gabriel Becker via PR#17993.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 14
    and so packages that provide graphics devices should be
    reinstalled.
  * Graphics devices should now specify deviceVersion to indicate
    what version of the graphics engine they support.
  * Graphics devices can now specify deviceClip.  If TRUE, the
    graphics engine will never perform any clipping of output itself.
    The clipping that the graphics engine does perform (for both
    canClip = TRUE and canClip = FALSE) has been improved to avoid
    producing unnecessary artifacts in clipped output.
  * The grid package now allows gpar(fill) to be a linearGradient(),
    a radialGradient(), or a pattern().  The viewport(clip) can now
    also be a grob, which defines a clipping path, and there is a new
    viewport(mask) that can also be a grob, which defines a mask.
    These new features are only supported so far on the Cairo-based
    graphics devices and on the pdf() device.
  * (Not Windows.)  A warning is given when a Cairo-based type is
    specified for a png(), jpeg(), tiff() or bmp() device but Cairo
    is unsupported (so type = "Xlib" is tried instead).
  * grSoftVersion() now reports the versions of FreeType and
    FontConfig if they are used directly (not _via_ Pango), as is
    most commonly done on macOS.
  C-LEVEL FACILITIES:
  * The _standalone_ libRmath math library and R's C API now provide
    log1pexp() again as documented, and gain log1mexp().
  INSTALLATION on a UNIX-ALIKE:
  * configure checks for a program pkgconf if program pkg-config is
    not found.  These are now only looked for on the path (like
    almost all other programs) so if needed specify a full path to
    the command in PKG_CONFIG, for example in file config.site.
  * C99 function iswblank is required - it was last seen missing ca
    2003 so the workaround has been removed.
  * There are new configure options --with-internal-iswxxxxx,
  - -with-internal-towlower and --with-internal-wcwidth which allows
    the system functions for wide-character classification,
    case-switching and width (wcwidth and wcswidth) to be replaced by
    internal ones.  The first has long been used on macOS, AIX (and
    Windows) but this enables it to be unselected there and selected
    for other platforms (it is the new default on Solaris).  The
    second is new in this version of R and is selected by default on
    macOS and Solaris.  The third has long been the default and
    remains so as it contains customizations for East Asian
    languages.
    System versions of these functions are often minimally
    implemented (sometimes only for ASCII characters) and may not
    cover the full range of Unicode points: for example Solaris (and
    Windows) only cover the Basic Multilingual Plane.
  * Cairo installations without X11 are more likely to be detected by
    configure, when the file-based Cairo graphics devices will be
    available but not X11(type = "cairo").
  * There is a new configure option --with-static-cairo which is the
    default on macOS.  This should be used when only static cairo
    (and where relevant, Pango) libraries are available.
  * Cairo-based graphics devices on platforms without Pango but with
    FreeType/FontConfig will make use of the latter for font
    selection.
  LINK-TIME OPTIMIZATION on a UNIX-ALIKE:
  * Configuring with flag --enable-lto=R now also uses LTO when
    installing the recommended packages.
  * R CMD INSTALL and R CMD SHLIB have a new flag --use-LTO to use
    LTO when compiling code, for use with R configured with
  - -enable-lto=R.  For R configured with --enable-lto, they have
    the new flag --no-use-LTO.
    Packages can opt in or out of LTO compilation _via_ a UseLTO
    field in the DESCRIPTION file.  (As usual this can be overridden
    by the command-line flags.)
  BUILDING R on Windows:
  * for GCC &gt;= 8, FC_LEN_T is defined in config.h and hence character
    lengths are passed from C to Fortran in _inter alia_ BLAS and
    LAPACK calls.
  * There is a new text file src/gnuwin32/README.compilation, which
    outlines how C/Fortran code compilation is organized and
    documents new features:
  * R can be built with Link-Time Optimization with a suitable
    compiler - doing so with GCC 9.2 showed several
    inconsistencies which have been corrected.
  * There is support for cross-compiling the C and Fortran code
    in R and standard packages on suitable (Linux) platforms.
    This is mainly intended to allow developers to test later
    versions of compilers - for example using GCC 9.2 or 10.x has
    detected issues that GCC 8.3 in Rtools40 does not.
  * There is experimental support for cross-building R packages
    with C, C++ and/or Fortran code.
  * The R installer can now be optionally built to support a single
    architecture (only 64-bit or only 32-bit).
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++14 where
    available (which it is on all currently checked platforms): if
    not (as before) C++11 is used if available otherwise C++ is not
    supported.
    Packages which specify C++11 will still be installed using C++11.
    C++14 compilers may give deprecation warnings, most often for
    std::random_shuffle (deprecated in C++14 and removed in C++17).
    Either specify C++11 (see 'Writing R Extensions') or modernize
    the code and if needed specify C++14.  The latter has been
    supported since R 3.4.0 so the package's DESCRIPTION would need
    to include something like
    Depends: R (&gt;= 3.4)
  PACKAGE INSTALLATION on Windows:
  * R CMD INSTALL and R CMD SHLIB make use of their flag --use-LTO
    when the LTO_OPT make macro is set in file etc/${R_ARCH}/Makeconf
    or in a personal/site Makevars file.  (For details see 'Writing R
    Extensions' SS4.5.)
    This provides a valuable check on code consistency.  It does work
    with GCC 8.3 as in Rtools40, but that does not detect everything
    the CRAN checks with current GCC do.
  PACKAGE INSTALLATION on macOS:
  * The default personal library directory on builds with
  - -enable-aqua (including CRAN builds) now differs by CPU type,
    one of
    ~/Library/R/x86_64/x.y/library
    ~/Library/R/arm64/x.y/library
    This uses the CPU type R (and hence the packages) were built for,
    so when a x86_64 build of R is run under Rosetta emulation on an
    arm64 Mac, the first is used.
  UTILITIES:
  * R CMD check can now scan package functions for bogus return
    statements, which were possibly intended as return() calls (wish
    of PR#17180, patch by Sebastian Meyer). This check can be
    activated via the new environment variable
    _R_CHECK_BOGUS_RETURN_, true for --as-cran.
  * R CMD build omits tarballs and binaries of previous builds from
    the top-level package directory.  (PR#17828, patch by Sebastian
    Meyer.)
  * R CMD check now runs sanity checks on the use of LazyData, for
    example that a data directory is present and that
    LazyDataCompression is not specified without LazyData and has a
    documented value.  For packages with large LazyData databases
    without specifying LazyDataCompression, there is a reference to
    the code given in 'Writing R Extensions' SS1.1.6 to test the
    choice of compression (as in all the CRAN packages tested a
    non-default method was preferred).
  * R CMD build removes LazyData and LazyDataCompression fields from
    the DESCRIPTION file of packages without a data directory.
  ENCODING-RELATED CHANGES:
  * The parser now treats \Unnnnnnnn escapes larger than the upper
    limit for Unicode points (\U10FFFF) as an error as they cannot be
    represented by valid UTF-8.
    Where such escapes are used for outputting non-printable
    (including unassigned) characters, 6 hex digits are used (rather
    than 8 with leading zeros).  For clarity, braces are used, for
    example \U{0effff}.
  * The parser now looks for non-ASCII spaces on Solaris (as
    previously on most other OSes).
  * There are warnings (including from the parser) on the use of
    unpaired surrogate Unicode points such as \uD834.  (These cannot
    be converted to valid UTF-8.)
  * Functions nchar(), tolower(), toupper() and chartr() and those
    using regular expressions have more support for inputs with a
    marked Latin-1 encoding.
  * The character-classification functions used (by default) to
    replace the system iswxxxxx functions on Windows, macOS and AIX
    have been updated to Unicode 13.0.0.
    The character-width tables have been updated to include new
    assignments in Unicode 13.0.0.
  * The code for evaluating default (extended) regular expressions
    now uses the same character-classification functions as the rest
    of R (previously they differed on Windows, macOS and AIX).
  * There is a build-time option to replace the system's
    wide-character wctrans C function by tables shipped with R: use
    configure option --with-internal-towlower or (on Windows)
  - DUSE_RI18N_CASE in CFLAGS when building R.  This may be needed
    to allow tolower() and toupper() to work with Unicode characters
    beyond the Basic Multilingual Plane where not supported by system
    functions (e.g. on Solaris where it is the new default).
  * R is more careful when truncating UTF-8 and other multi-byte
    strings that are too long to be printed, passed to the system or
    libraries or placed into an internal buffer.  Truncation will no
    longer produce incomplete multibyte characters.
  DEPRECATED AND DEFUNCT:
  * Function plclust() from the package stats and
    package.dependencies(), pkgDepends(), getDepList(),
    installFoundDepends(), and vignetteDepends() from package tools
    are defunct.
  * Defunct functions checkNEWS() and readNEWS() from package tools
    and CRAN.packages() from utils have been removed.
  * R CMD config CXXCPP is defunct (it was deprecated in R 3.6.2).
  * parallel::detectCores() drops support for Irix (retired in 2013).
  * The LINPACK argument to chol.default(), chol2inv(),
    solve.default() and svd() has been defunct since R 3.1.0.  It was
    silently ignored up to R 4.0.3 but now gives an error.
  * Subsetting/indexing, such as ddd[*] or ddd$x on a DOTSXP
    (dot-dot-dot) object ddd has been disabled; it worked by accident
    only and was undocumented.
  BUG FIXES:
  * Many more C-level allocations (mainly by malloc and strdup) are
    checked for success with suitable alternative actions.
  * Bug fix for replayPlot(); this was turning off graphics engine
    display list recording if a recorded plot was replayed in the
    same session.  The impact of the bug became visible if resize the
    device after replay OR if attempted another savePlot() after
    replay (empty display list means empty screen on resize or empty
    saved plot).
  * R CMD check etc now warn when a package exports non-existing S4
    classes or methods, also in case of no "methods" presence.
    (Reported by Alex Bertram; reproducible example and patch by
    Sebastian Meyer in PR#16662.)
  * boxplot() now also accepts calls for labels such as ylab, the
    same as plot().  (Reported by Marius Hofert.)
  * The help page for xtabs() now correctly states that addNA is
    setting na.action = na.pass among others.  (Reported as PR#17770
    by Thomas Soeiro.)
  * The R CMD check &lt;pkg&gt; gives a longer and more comprehensible
    message when DESCRIPTION misses dependencies, e.g., in Imports:.
    (Thanks to the contributors of PR#17179.)
  * update.default() now calls the generic update() on the formula to
    work correctly for models with extended formulas.  (As reported
    and suggested by Neal Fultz in PR#17865.)
  * The horizontal position of leaves in a dendrogram is now correct
    also with center = FALSE.  (PR#14938, patch from Sebastian
    Meyer.)
  * all.equal.POSIXt() no longer warns about and subsequently ignores
    inconsistent "tzone" attributes, but describes the difference in
    its return value (PR#17277).  This check can be disabled _via_
    the new argument check.tzone = FALSE as suggested by Sebastian
    Meyer.
  * as.POSIXct() now populates the "tzone" attribute from its tz
    argument when x is a logical vector consisting entirely of NA
    values.
  * x[[2^31]] &lt;- v now works.  (Thanks to the report and patch by
    Suharto Anggono in PR#17330.)
  * In log-scale graphics, axis() ticks and label positions are now
    computed more carefully and symmetrically in their range,
    typically providing _more_ ticks, fulfilling wishes in PR#17936.
    The change really corresponds to an improved axisTicks() (package
    grDevices), potentially influencing grid and lattice, for
    example.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now correct to at
    least five digits where it was catastrophically wrong,
    previously.
  * sum(df) and similar "Summary"- and "Math"-group member functions
    now work for data frames df with logical columns, notably also of
    zero rows.  (Reported to R-devel by Martin "b706".)
  * unsplit() had trouble with tibbles due to unsound use of rep(NA,
    len)-indexing, which should use NA_integer_ (Reported to R-devel
    by Mario Annau.)
  * pnorm(x, log.p = TRUE) underflows to -Inf slightly later.
  * show(&lt;hidden S4 generic&gt;) prints better and without quotes for
    non-hidden S4 generics.
  * read.table() and relatives treated an "NA" column name as missing
    when check.names = FALSE PR#18007.
  * Parsing strings containing UTF-16 surrogate pairs such as
    "\uD834\uDD1E" works better on some (uncommon) platforms.
    sprintf("%X", utf8ToInt("\uD834\uDD1E")) should now give "1D11E"
    on all platforms.
  * identical(x,y) is no longer true for differing DOTSXP objects,
    fixing PR#18032.
  * str() now works correctly for DOTSXP and related exotics, even
    when these are doomed.
    Additionally, it no longer fails for lists with a class and
    "irregular" method definitions such that e.g. lapply(*) will
    necessarily fail, as currently for different igraph objects.
  * Too long lines in environment files (e.g. Renviron) no longer
    crash R. This limit has been increased to 100,000 bytes.
    (PR#18001.)
  * There is a further workaround for FreeType giving incorrect
    italic font faces with cairo-based graphics devices on macOS.
  * add_datalist(*, force = TRUE) (from package tools) now actually
    updates an existing data/datalist file for new content.  (Thanks
    to a report and patch by Sebastian Meyer in PR#18048.)
  * cut.Date() and cut.POSIXt() could produce an empty last interval
    for breaks = "months" or breaks = "years".  (Reported as PR#18053
    by Christopher Carbone.)
  * Detection of the encoding of 'regular' macOS locales such as
    en_US (which is UTF-8) had been broken by a macOS change:
    fortunately these are now rarely used with en_US.UTF-8 being
    preferred.
  * sub() and gsub(pattern, repl, x, *) now keep attributes of x such
    as names() also when pattern is NA (PR#18079).
  * Time differences ("difftime" objects) get a replacement and a
    rep() method to keep "units" consistent.  (Thanks to a report and
    patch by Nicolas Bennett in PR#18066.)
  * The \RdOpts macro, setting defaults for \Sexpr options in an Rd
    file, had been ineffective since R 2.12.0: it now works again.
    (Thanks to a report and patch by Sebastian Meyer in PR#18073.)
  * mclapply and pvec no longer accidentally terminate parallel
    processes started before by mcparallel or related calls in
    package parallel (PR#18078).
  * grep and other functions for evaluating (extended) regular
    expressions handle in Unicode also strings not explicitly flagged
    UTF-8, but flagged native when running in UTF-8 locale.
  * Fixed a crash in fifo implementation on Windows (PR#18031).
  * Binary mode in fifo on Windows is now properly detected from
    argument open (PR#15600, PR#18031).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1622808000">- The line %{__install} -m 755 -d %{_infodir}
  no longer works in TW or Factory.
  But without that line it works everywhere. So this instruction
  was commented out of the spec file.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1628596800">- CHANGES IN R 4.1.1:
  NEW FEATURES:
  * require(pkg, quietly = TRUE) is quieter and in particular does
    not warn if the package is not found.
  DEPRECATED AND DEFUNCT:
  * Use of ftp:// URIs should be regarded as deprecated, with
    on-going support confined to method = "libcurl" and not routinely
    tested.  (Nowadays no major browser supports them.)
  * The non-default method = "internal" is deprecated for http:// and
    ftp:// URIs for both download.file and url.
  * On Windows, method = "wininet" is deprecated for http://,
    https:// and ftp:// URIs for both download.file and url.  (A
    warning is only given for ftp://.)
    For ftp:// URIs the default method is now "libcurl" if available
    (which it is on CRAN builds).
    method = "wininet" remains the default for http:// and https://
    URIs but if libcurl is available, using method = "libcurl" is
    preferred.
  INSTALLATION:
  * make check now works also without a LaTeX installation.  (Thanks
    to Sebastian Meyer's PR#18103.)
  BUG FIXES:
  * make check-devel works again in an R build configured with
  - -without-recommended-packages.
  * qnbinom(p, size, mu) for large size/mu is correct now in a range
    of cases (PR#18095); similarly for the (size, prob)
    parametrization of the negative binomial.  Also qpois() and
    qbinom() are better and or faster for extreme cases.  The
    underlying C code has been modularized and is common to all four
    cases of discrete distributions.
  * gap.axis is now part of the axis() arguments which are passed
    from bxp(), and hence boxplot().  (Thanks to Martin Smith's
    report and suggestions in PR#18109.)
  * .First and .Last can again be set from the site profile.
  * seq.int(from, to, *) and seq.default(..) now work better in large
    range cases where from-to is infinite where the two boundaries
    are finite.
  * all.equal(x,y) now returns TRUE correctly also when several
    entries of abs(x) and abs(y) are close to .Machine$double.xmax,
    the largest finite numeric.
  * model.frame() now clears the object bit when removing the class
    attribute of a value via na.action (PR#18100).
  * charClass() now works with multi-character strings on Windows
    (PR#18104, fixed by Bill Dunlap).
  * encodeString() on Solaris now works again in Latin-1 encoding on
    characters represented differently in UTF-8.  Support for
    surrogate pairs on Solaris has been improved.
  * file.show() on Windows now works with non-ASCII path names
    representable in the current native encoding (PR#18132).
  * Embedded R on Windows can now find R home directory via the
    registry even when installed only for the current user
    (PR#18135).
  * pretty(x) with finite x now returns finite values also in the
    case where the extreme x values are close in size to the maximal
    representable number .Machine$double.xmax.
    Also, it's been tweaked for very small ranges and when a boundary
    is close (or equal) to zero; e.g., pretty(c(0,1e-317)) no longer
    has negative numbers, currently still warning about a very small
    range, and pretty(2^-(1024 - 2^-1/(c(24,10)))) is more accurate.
  * The error message for not finding vignette files when weaving has
    correct file sizes now. (Thanks to Sebastian Meyer's PR#18154.)
  * dnbinom(20, &lt;large&gt;, 1) now correctly gives 0, and similar cases
    are more accurate with underflow precaution.  (Reported by Francisco Vera Alcivar in PR#18072.)</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635163200">- repaired https://bugzilla.suse.com/show_bug.cgi?id=1191380
  (rpmacros now go to rpmmacrodir)
- minor clean-ups in spec file</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635768000">- CHANGES IN R 4.1.2:
  C-LEVEL FACILITIES:
  * The workaround in headers R.h and Rmath.h (using namespace std;)
    for the Oracle Developer Studio compiler is no longer needed now
    C++11 is required so has been removed.  A couple more usages of
    log() (which should have been std::log()) with an int argument
    are reported on Solaris.
  * The undocumented limit of 4095 bytes on messages from the
    S-compatibility macros PROBLEM and MESSAGE is now documented and
    longer messages will be silently truncated rather than
    potentially causing segfaults.
  * If the R_NO_SEGV_HANDLER environment variable is non-empty, the
    signal handler for SEGV/ILL/BUS signals (which offers recovery
    user interface) is not set. This allows more reliable debugging
    of crashes that involve the console.
  DEPRECATED AND DEFUNCT:
  * The legacy S-compatibility macros PROBLEM, MESSAGE, ERROR, WARN,
    WARNING, RECOVER, ... are deprecated and will be hidden in R
    4.2.0. R's native interface of Rf_error and Rf_warning has long
    been preferred.
  BUG FIXES:
  * .mapply(F, dots, .) no longer segfaults when dots is not a list
    and uses match.fun(F) as always documented; reported by Andrew
    Simmons in PR#18164.
  * hist(&lt;Date&gt;, ...) and hist(&lt;POSIXt&gt;, ...)  no longer pass
    arguments for rect() (such as col and density) to axis().
    (Thanks to Sebastian Meyer's PR#18171.)
  * \Sexpr{ch} now preserves Encoding(ch). (Thanks to report and
    patch by Jeroen Ooms in PR#18152.)
  * Setting the RNG to "Marsaglia-Multicarry" e.g., by RNGkind(), now
    warns in more places, thanks to Andr'e Gillibert's report and
    patch in PR#18168.
  * gray(numeric(), alpha=1/2) no longer segfaults, fixing PR#18183,
    reported by Till Krenz.
  * Fixed dnbinom(x, size=&lt;very_small&gt;, .., log=TRUE) regression,
    reported by Martin Morgan.
  * as.Date.POSIXlt(x) now keeps names(x), thanks to Davis Vaughan's
    report and patch in PR#18188.
  * model.response() now strips an "AsIs" class typically, thanks to
    Duncan Murdoch's report and other discussants in PR#18190.
  * try() is considerably faster in case of an error and long call,
    as e.g., from some do.call().  Thanks to Alexander Kaever's
    suggestion posted to R-devel.
  * qqline(y = &lt;object&gt;) such as y=I(.), now works, see also
    PR#18190.
  * Non-integer mgp par() settings are now handled correctly in
    axis() and mtext(), thanks to Mikael Jagan and Duncan Murdoch's
    report and suggestion in PR#18194.
  * formatC(x) returns length zero character() now, rather than ""
    when x is of length zero, as documented, thanks to Davis
    Vaughan's post to R-devel.
  * removeSource(fn) now retains (other) attributes(fn).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1647000000">- CHANGES IN R 4.1.3:
  NEW FEATURES:
  * The default version of Bioconductor has been changed to 3.14.
    (This is used by setRepositories and the menus in GUIs.)
  UTILITIES:
  * R CMD check --as-cran has a workaround for a bug in versions of
    file up to at least 5.41 which mis-identify DBF files last
    changed in 2022 as executables.
  C-LEVEL FACILITIES:
  * The legacy S-compatibility macros SINGLE_* in R_ext/Constants.h
    (included by R.h) are deprecated and will be removed in R 4.2.0.
  BUG FIXES:
  * Initialization of self-starting nls() models with initialization
    functions following the pre-R-4.1.0 API (without the ...
    argument) works again for now, with a deprecation warning.
  * Fixed quoting of ~autodetect~ in Java setting defaults to avoid
    inadvertent user lookup due to leading ~, reported in PR#18231 by
    Harold Gutch.
  * substr(., start, stop) &lt;- v now treats _negative_ stop values
    correctly.  Reported with a patch in PR#18228 by Brodie Gaslam.
  * Subscripting an array x without dimnames by a
    length(dim(x))-column character matrix gave "random" non-sense,
    now an error; reported in PR#18244 by Mikael Jagan.
  * ...names() now matches names(list(...)) closely, fixing PR#18247.
  * all.equal(*, scale = s) now works as intended when length(s) &gt; 1,
    partly thanks to Michael Chirico's PR#18272.
  * print(x) for long vectors x now also works for named atomic
    vectors or lists and prints the correct number when reaching the
    getOption("max.print") limit; partly thanks to a report and
    proposal by Hugh Parsonage to the R-devel list.
  * all.equal(&lt;selfStart&gt;, *) no longer signals a deprecation
    warning.
  * reformulate(*, response=r) gives a helpful error message now when
    length(r) &gt; 1, thanks to Bill Dunlap's PR#18281.
  * Modifying globalCallingHandlers inside withCallingHandlers() now
    works or fails correctly, thanks to Henrik Bengtsson's PR#18257.
  * hist(&lt;Date&gt;, breaks = "days") and hist(&lt;POSIXt&gt;, breaks = "secs")
    no longer fail for inputs of length 1.
  * qbeta(.001, .9, .009) and similar cases now converge correctly
    thanks to Ben Bolker's report in PR#17746.
  * window(x, start, end) no longer wrongly signals "'start' cannot
    be after 'end'", fixing PR#17527 and PR#18291.
  * data() now checks that its (rarely used) list argument is a
    character vector - a couple of packages passed other types and
    gave incorrect results.
  * which() now checks its arr.ind argument is TRUE rather coercing
    to logical and taking the first element - which gave incorrect
    results in package code.
  * model.weights() and model.offset() more carefully extract their
    model components, thanks to Ben Bolker and Tim Taylor's R-devel
    post.
  * list.files(recursive = TRUE) now shows all broken symlinks
    (previously, some of them may have been omitted, PR#18296).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1650628800">- CHANGES IN R 4.2.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * The formula method of aggregate() now matches the generic in
    naming its first argument x (resolving PR#18299 by Thomas
    Soeiro).
    This means that calling aggregate() with a formula as a named
    first argument requires name formula in earlier versions of R and
    name x now, so portable code should not name the argument (code
    in many packages did).
  * Calling &amp;&amp; or || with either argument of length greater than one
    now gives a warning (which it is intended will become an error).
  * Calling if() or while() with a condition of length greater than
    one gives an error rather than a warning.  Consequently,
    environment variable _R_CHECK_LENGTH_1_CONDITION_ no longer has
    any effect.
  * Windows users should consult the WINDOWS section below for some
    profound changes including
  * Support for 32-bit builds has been dropped.
  * UTF-8 locales are used where available.
  * The default locations for the R installation and personal
    library folder have been changed.
    Thanks to Tomas Kalibera for months of work on the Windows port
    for this release.
  NEW FEATURES:
  * matrix(x, n, m) now warns in more cases where length(x) differs
    from n * m, as suggested by Abby Spurdle and Wolfgang Huber in
    Feb 2021 on the R-devel mailing list.
    This warning can be turned into an error by setting environment
    variable _R_CHECK_MATRIX_DATA_ to TRUE: R CMD check --as-cran
    does so unless it is already set.
  * Function file_test() in package utils gains tests for symlinks,
    readability and writability.
  * capabilities("libxml") is now false.
    The description of capabilities("http/ftp") now reflects that it
    refers to the default method, no longer the internal one.
  * simplify2array() gains an except argument for controlling the
    exceptions used by sapply().
  * Environment variables R_LIBS_USER and R_LIBS_SITE are both now
    set to the R system default if unset or empty, and can be set to
    NULL to indicate an empty list of user or site library
    directories.
  * The warning for axis()(-like) calls in cases of relatively small
    ranges (typically in log-scale situations) is slightly improved
    _and_ suppressed from explicit calls to .axisPars() as has always
    been the intention.
  * The contrasts setter function `contrasts&lt;-` gains an explicit
    default how.many = NULL rather than just using missing(how.many).
  * grid.pretty() gains a new optional argument n = 5.
  * There is a new function .pretty() with option bounds as a
    technical-utility version of pretty().  It and pretty() gain a
    new argument f.min with a better than back-compatible default.
  * Function grDevices::axisTicks() and related functions such as
    graphics::axis() work better, notably for the log scale; partly
    because of the pretty() improvements, but also because care is
    taken e.g., when ylim is finite but diff(ylim) is infinite.
  * nclass.FD() gains a digits option.
  * The R Mathlib internal C function bd0() (called indirectly from a
    dozen probability density and distribution functions such as
    dpois(), dbinom(), dgamma(), pgamma() _etc_) has been
    complemented by a more sophisticated and (mostly) more accurate C
    function ebd0(), currently called only by internal dpois_raw()
    improving accuracy for R level dpois() and potentially others
    calling it such as dnbinom(), dgamma() or pgamma().  (Thanks to
    Morten Welinder's PR#15628.)
  * write.ftable() gains sep = " " argument as suggested by Thomas
    Soeiro.
  * The names of the locale categories supported by R's
    Sys.getlocale() and Sys.setlocale() are now provided by variable
    .LC.categories in the base namespace.
  * The Date and POSIXt methods for hist() and the histogram method
    for plot() now also use the new default col = "lightgray" in
    consistency with the corresponding change to hist()'s default for
    R 4.0.0.
  * hist.default() gains new fuzz argument, and the histogram plot
    method no longer uses fractional axis ticks when displaying
    counts ("Frequency").
  * mapply() and hence Map() now also obey the "max-or-0-if-any"
    recycling rule, such that, e.g., Map(`+`, 1:3, 1[0]) is valid
    now.
  * as.character(&lt;obj&gt;) for "hexmode" or "octmode" objects now
    fulfils the important basic rule as.character(x)[j] ===
    as.character(x[j]).
  * The set utility functions, notably intersect() have been tweaked
    to be more consistent and symmetric in their two set arguments,
    also preserving a common mode.
  * substr(ch, start,end) &lt;- new now e.g., preserves names(ch); ditto
    for substring(), thanks to a patch from Brodie Gaslam.
  * plot(&lt;lm&gt;) gains a extend.ylim.f argument, in partial response to
    PR#15285; further PR#17784 is fixed thanks to several
    contributors and a patch by Elin Waring.  The Cook's dist
    contours get customizable via cook.col and cook.lty with a
    different default color and their legend is nicer by default and
    customizable via cook.legendChanges.
  * Attempting to subset an object that is not subsettable now
    signals an error of class notSubsettableError. The
    non-subsettable object is contained in the object field of the
    error condition.
  * Subscript-out-of-bounds errors are now signaled as errors of
    class subscriptOutOfBoundsError.
  * Stack-overflow errors are now signaled as errors inheriting from
    class stackOverflowError. See ?stackOverflowError for more
    details.
  * New partly experimental Sys.setLanguage() utility, solving the
    main problem of PR#18055.
  * gettext() and gettextf() get a new option trim = TRUE which when
    set to false allows translations for strings such as "Execution
    halted\n" typical for C code.
  * An experimental implementation of hash tables is now available.
    See ?hashtab for more details.
  * identical() gains a extptr.as.ref argument for requesting that
    external pointer objects be compared as reference objects.
  * reorder() gets an argument decreasing which it passes to sort()
    for level creation; based on the wish and patch by Thomas Soeiro
    in PR#18243.
  * as.vector() gains a data.frame method which returns a simple
    named list, also clearing a long standing 'FIXME' to enable
    as.vector(&lt;data.frame&gt;, mode="list").  This breaks code relying
    on as.vector(&lt;data.frame&gt;) to return the unchanged data frame.
  * legend() is now vectorized for arguments cex, x.intersp, and
    text.width.  The latter can now also be specified as a vector
    (one element for each column of the legend) or as NA for
    computing a proper column wise maximum value of strwidth(legend).
    The argument y.intersp can be specified as a vector with one
    entry for each row of the legend.
    legend() also gains new arguments title.cex and title.font.
    Thanks to Swetlana Herbrandt.
  * Deparsing no longer remaps attribute names dim, dimnames, levels,
    names and tsp to historical S-compatible names (which structure()
    maps back).
  * sample() and sample.int() have additional sanity checks on their
    size and n arguments.
    all.equal.numeric() gains a sanity check on its tolerance
    argument - calling all.equal(a, b, c) for three numeric vectors
    is a surprisingly common error.
    mean(na.rm =), rank(na.last =), barplot(legend.text =),
    boxplot(), contour(drawlabels =), polygon(border =) and
    methods::is(class2 =) have more robust sanity checks on their
    arguments.
    R CMD Rd2pdf (used by R CMD check) has a more robust sanity check
    on the format of \alias{} commands.
  * psigamma(x, deriv) for negative x now also works for deriv = 4
    and 5; their underlying C level dpsifn() is documented in
    'Writing R Extensions'.
  * The HTML help system now uses HTML5 (wish of PR#18149).
  * ks.test() now provides exact p-values also with ties and MC
    p-values in the two-sample (Smirnov) case.  By Torsten Hothorn.
  * ks.test() gains a formula interface, with y ~ 1 for the
    one-sample (Kolmogorov) test and y ~ group for the two-sample
    (Smirnov) test.  Contributed by Torsten Hothorn.
  * The return value from ks.test() now has class c("ks.test",
    "htest") - packages using try() need to take care to use
    inherits() and not == on the class.
  * New functions psmirnov(), qsmirnov() and rsmirnov() in package
    stats implementing the asymptotic and exact distributions of the
    two-sample Smirnov statistic.
  * iconv() now allows sub = "c99" to use C99-style escapes for UTF-8
    inputs which cannot be converted to encoding to.
  * In a forward pipe |&gt; expression it is now possible to use a named
    argument with the placeholder _ in the rhs call to specify where
    the lhs is to be inserted.  The placeholder can only appear once
    on the rhs.
  * The included LAPACK sources have been updated to version 3.10.0,
    except for the four Fortran 77 routines which 3.10.0 has
    re-implemented in Fortran 90 (where the older versions have been
    retained as the R build process does not support Fortran 90).
  * path.expand() and most other uses of tilde expansion now warn if
    a path would be too long if expanded.  (An exception is
    file.exists(), which silently returns false.)
  * trunc(&lt;Date&gt;, *) now supports units = "months" or "years" for
    consistency with the POSIXt method, thanks to Dirk Eddelbuettel's
    proposal in PR#18099.
  * list2DF() now checks that its arguments are of the same length,
    rather than use recycling.
  * The HTML help system has several new features: LaTeX-like math
    can be typeset using either KaTeX or MathJax, usage and example
    code is highlighted using Prism, and for dynamic help the output
    of examples and demos can be shown within the browser if the
    knitr package is installed. These features can be disabled by
    setting the environment variable _R_HELP_ENABLE_ENHANCED_HTML_ to
    a false value.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 15
    and so packages that provide graphics devices should be
    reinstalled.
  * The grid package now allows the user to specify a "vector" of
    pattern fills.  The fill argument to gpar() accepts a list of
    gradients and/or patterns and the functions linearGradient(),
    radialGradient(), and pattern() have a new group argument.
    Points grobs (data symbols) can now also have a pattern fill.
    The grobCoords() function now returns a more informative and
    complex result.
  * The grid package has new functions for drawing isolated groups:
    grid.group(), grid.define(), and grid.use().  These functions add
    compositing operators and affine transformations to R's graphics
    capabilities.
    The grid package also has new functions for stroking and filling
    paths: grid.stroke(), grid.fill(), and grid.fillStroke().
    A new function as.path() allows the user to specify the fill rule
    for a path that is to be used for clipping, stroking, or filling;
    available options are "winding" and "evenodd".  A new function
    as.mask() allows the user to specify the type of a mask;
    available options are "alpha" and "luminance".
    These new features are only supported so far (at most) on the
    Cairo-based graphics devices and on the pdf() device.
  * dev.capabilities() reports on device support for the new
    features.
  * par() now warns about unnamed non-character arguments to prevent
    misuse such as {usr &lt;- par("usr"); par(usr)}.
  INSTALLATION:
  * Facilities for accessing ftp:// sites are no longer tested
    (except _pro tem_ for curlGetHeaders()) as modern browsers have
    removed support.
  * R can now be built with DEFS = -DSTRICT_R_HEADERS .
  PACKAGE INSTALLATION:
  * R CMD INSTALL no longer tangles vignettes. This completes an R
    CMD build change in R 3.0.0 and affects packages built before R
    3.0.2. Such packages should be re-made with R CMD build to have
    the tangled R code of vignettes shipped with the tarball.
  * USE_FC_LEN_T will become the default: this uses the correct
    prototypes for Fortran BLAS/LAPACK routines called from C/C++,
    and requires adjustment of most such calls - see 'Writing R
    Extensions' SS6.6.2.  (This has been supported since R 3.6.2.)
  * Package installation speed for packages installed with
    keep.source has been improved. This resolve the issue reported by
    Ofek Shilon in PR#18236.
  UTILITIES:
  * R CMD check can optionally report files/directories left behind
    in home, /tmp (even though TMPDIR is set) and other directories.
    See the "R Internals" manual for details.
  * R CMD check now reports byte-compilation errors during
    installation.  These are not usually fatal but may result in
    parts of the package not being byte-compiled.
  * _R_CHECK_DEPENDS_ONLY_ can be applied selectively to examples,
    tests and/or vignettes in R CMD check: see the "R Internals"
    manual.
  * _R_CHECK_SRC_MINUS_W_IMPLICIT_ now defaults to true: recent
    versions of Apple clang on macOS have made implicit function
    declarations in C into a compilation error.
  * R CMD check --as-cran makes use of the environment variable
    AUTORECONF.  See the "R Internals" manual SS8 for further details.
  * R CMD check --use-valgrind also uses valgrind when re-building
    vignettes as some non-Sweave vignettes unhelpfully comment out
    all their code when R CMD check runs vignettes.
  * Errors in re-building vignettes (unless there are LaTeX errors)
    are reported by R CMD check as ERROR rather than WARNING when
    running vignettes has been skipped (as it frequently is in CRAN
    checks and by --as-cran).
  * R CMD Rd2pdf gains a --quiet option that is used by R CMD build
    when building the PDF package manual.
  * R CMD Rd2pdf now always runs LaTeX in batch mode, consistent with
    Texinfo &gt;= 6.7. The --batch option is ignored.
  * R CMD build and R CMD check now include the Rd file name and line
    numbers in the error message of an \Sexpr evaluation failure.
  * For packages using the \doi Rd macro (now an install-time \Sexpr)
    but no other dynamic Rd content, R CMD build now produces a
    smaller tarball and is considerably faster - skipping temporary
    package installation.
  C-LEVEL FACILITIES:
  * The non-API header R_ext/R-ftp-http.h is no longer provided, as
    the entry points it covered are now all defunct.
  * A number of non-API declarations and macro definitions have been
    moved from the installed header Rinternals.h to the internal
    header Defn.h. Packages that only use entry points and
    definitions documented to be part of the API as specified in
    'Writing R Extensions' SS6 should not be affected.
  * The macro USE_RINTERNALS no longer has any effect when compiling
    package code.  Packages which also use R_NO_REMAP will need to
    ensure that the remapped names are used for calls to API
    functions that were formerly also made available as macros.
  * The deprecated legacy S-compatibility macros PROBLEM, MESSAGE,
    ERROR, WARN, WARNING, RECOVER, ... are no longer defined in
    R_exts/RS.h (included by R.h).  Replace these by calls to
    Rf_error and Rf_warning (defined in header R_ext/Error.h included
    by R.h).
    Header R_ext/RS.h no longer includes R_ext/Error.h.
  * Header R_ext/Constants.h (included by R.h) when included from C++
    now includes the C++ header cfloat rather than the C header
    float.h (now possible as C++11 is required).
  * The legacy S-compatibility macros DOUBLE_* in R_ext/Constants.h
    (included by R.h) are deprecated.
  * The deprecated S-compatibility macros SINGLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * R_Calloc, R_Free and R_Realloc are preferred to their unprefixed
    forms and error messages now use the prefix. These forms were
    introduced in R 3.4.0 and are available even when
    STRICT_R_HEADERS is defined.
  * rmultinom has been documented in 'Writing R Extensions' SS6 so is
    now part of the R API.
  * Similarly, Rtanpi, called from R level tanpi() is now part of the
    R API.
  * The long-deprecated, undocumented and non-API entry point call_R
    is no longer declared in R_ext/RS.h (included by R.h).
  * The header S.h which has been unsupported since Jan 2016 has been
    removed.  Use R.h instead.
  DEPRECATED AND DEFUNCT:
  * The (non-default and deprecated) method = "internal" for
    download.file() and url() no longer supports http:// nor ftp://
    URIs.  (It is used only for file:// URIs.)
    On Windows, download.file(method = "wininet") no longer supports
    ftp:// URIs.  (It is no longer the default method, which is
    "libcurl" and does.)
    On Windows, the deprecated method = "wininet" now gives a warning
    for http:// and https:// URIs for both download.file() and url().
    (It is no longer the default method.)
  * On Windows, the command-line option --max-mem-size and
    environment variable R_MAX_MEM_SIZE are defunct.  The memory
    allocation limit was important for 32-bit builds, but these are
    no longer supported.
  * default.stringsAsFactors() is now formally deprecated, where that
    was only mentioned on its regular help page, previously.  So it
    now gives a warning if called.
  * unix.time() is defunct now; it had been deprecated since R 3.4.0.
  BUG FIXES:
  * Setting digits = 0 in format(), print.default() (and hence
    typically print()) or options() is again invalid.  Its behaviour
    was platform-dependent, and it is unclear what "zero significant
    digits" should mean (PR#18098).
  * Messages from C code in the cairo section of package grDevices
    are now also offered for translation, thanks to Michael Chirico's
    PR#18123.
  * mean(x) with finite x now is finite also without "long.double"
    capability.
  * R CMD Rd2pdf no longer leaves an empty build directory behind
    when it aborts due to an already existing output file.  (Thanks
    to Sebastian Meyer's PR#18141.)
  * density(x, weights = w, na.rm = TRUE) when anyNA(x) is true, now
    removes weights "in parallel" to x, fixing PR#18151, reported by
    Matthias Gondan.  Additionally, it gets a subdensity option.
  * Conversion of \Sexpr[]{&lt;expR&gt;} to LaTeX or HTML no longer
    produces long blocks of empty lines when &lt;expR&gt; itself contains
    several lines all producing empty output.  Thanks to a report and
    patch by Ivan Krylov posted to R-devel.
  * R CMD build no longer fails if a package vignette uses child
    documents and inst/doc exists.  (Thanks to Sebastian Meyer's
    PR#18156.)
  * When an R documentation ('help' source) file man/foo.Rd in a
    package has \donttest{..} examples with a syntax error, it is now
    signalled as ERROR and with correct line numbers relating to the
  * -Ex.R file, thanks to Duncan Murdoch and Sebastian Meyer's
    reports and patch proposals in PR#17501.
  * Improved determination of the correct translation domain in
    non-base packages, addressing the combination of PR#18092 and
    PR#17998 (#c6) with reports and _augmented_ patch #2904 by
    Suharto Anggono.
    Note that "R-base" is no longer the default domain e.g., for
    top-level calls to gettext(); rather translation needs explicit
    domain = * specification in such cases.
  * identical(attrib.as.set=FALSE) now works correctly with data
    frames with default row names (Thanks to Charlie Gao's PR#18179).
  * txtProgressBar() now enforces a non-zero width for argument char,
    without which no progress can be visible.
  * dimnames(table(d)) is more consistent in the case where d is a
    list with a single component, thanks to Thomas Soeiro's report to
    R-devel.
    Further, table(d1, d2) now gives an error when d1 and d2 are data
    frames as suggested by Thomas in PR#18224.
  * Fix for drawing semi-transparent lines and fills on the native
    Windows graphics device (PR#18219 and PR#16694).  Thanks to Nick
    Ray for helpful diagnosis on Bugzilla.
  * The deparser now wraps sub-expressions such as if(A) ..  with
    parentheses when needed; thanks to Duncan Murdoch's PR#18232 and
    Lionel Henry's patches there.
  * remove.packages() no longer tries to uninstall Priority: base
    packages, thanks to a report and suggestions by Colin Fay in
    PR#18227.
  * win.metafile() now has xpinch and ypinch arguments so that the
    user can override Windows' (potentially wrong) guess at device
    dimensions.
  * x[i] and x[[i]] for non-integer i should now behave in all cases
    as always documented: the index used is equivalent to
    as.integer(i) unless that would overflow where trunc(i) is used
    instead; thanks to Suharto Anggono's report and patch proposals
    in PR#17977.
  * asOneSidedFormula() now associates the resulting formula with the
    global environment rather than the evaluation environment created
    for the call.
  * &lt;bibentry&gt;$name now matches the field name case-insensitively,
    consistent with bibentry() creation and the replacement method.
  * cbind() failed to detect some length mismatches with a mixture of
    time-series and non-time-series inputs.
  * The default LaTeX style file Sweave.sty used by the RweaveLatex
    driver no longer loads the obsolete ae package; thanks to a
    report by Thomas Soeiro in PR#18271.  Furthermore, it now skips
    \usepackage[T1]{fontenc} for engines other than pdfTeX (if
    detected) or if the new [nofontenc] option is used.
  * smooth.spline() now stores its logical cv argument more safely,
    fixing a rare bug when printing, and also stores n.
  * smooth.spline(x,y,*) now computes the cv.crit statistic
    correctly, also when is.unsorted(x), fixing PR#18294.
  * The data.frame method of rbind() now warns when binding
    not-wholly-recycling vectors, by analogy to the default method
    (for matrices).
  * setAs() finds the correct class for name to when multiple
    packages define a class with that name. Thanks to Gabor Csardi
    for the report.
  * Fix for detaching a package when two classes of the same name are
    present in method signatures for the same generic. Thanks to
    Gabor Csardi for the report.
  * match.arg("", c("", "a", "B")) gives a better error message, in
    part from PR#17959, thanks to Elin Waring.
  * R CMD Sweave --clean no longer removes pre-existing files or
    subdirectories (PR#18242).
  * The quartz() device no longer splits polylines into subpaths.
    That has caused narrowly-spaced lines with many points to always
    look solid even when dashed line type was used due to dash phase
    restarts.
  * Deparsing constructs such as quote(1 + `!`(2) + 3) works again as
    before R 3.5.0, thanks to the report and patch in PR#18284 by
    Suharto Anggono.
  * as.list(f) for a factor f now keeps names(f), fixing PR#18309.
  * qbeta(.001, .9, .009) and analogous qf() calls now return a
    correct value instead of NaN or wrongly 1, all with a warning;
    thanks to the report by Ludger Goeminne in PR#18302.
  * plot.lm() failed to produce the plot of residuals vs.  factor
    levels (i.e., which=5 when leverages are constant) for models
    with character predictors (PR#17840).
  * interaction.plot(..., xtick = TRUE) misplaced the x-axis line
    (PR#18305).
  * Not strictly fixing a bug, format()ing and print()ing of
    non-finite Date and POSIXt values NaN and +/-Inf no longer show
    as NA but the respective string, e.g., Inf, for consistency with
    numeric vector's behaviour, fulfilling the wish of PR#18308.
  * R CMD check no longer runs test scripts generated from
    corresponding .Rin files twice and now signals an ERROR if
    processing an .Rin script fails.
  * tools::Rd2txt() used for plain-text help pages now renders \hrefs
    (if tools::Rd2txt_options(showURLs = TRUE)) and \urls with
    percent-encoding and standards-compliant delimiting style (angle
    brackets and no URL: prefix).  \email is now rendered with a
    mailto: prefix.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1655985600">- CHANGES IN R 4.2.1:
  NEW FEATURES:
  * New function utils::findCRANmirror() to find out if a CRAN mirror
    has been selected, otherwise fallback to the main site.  This
    behaves in the same way as tools::CRAN_package_db() and is
    intended for packages wishing to access CRAN for purposes other
    than installing packages.
    The need for this was shown by a day when the main CRAN website
    was offline and a dozen or so packages which had its URL
    hardcoded failed their checks.
  INSTALLATION on a UNIX-ALIKE:
  * The libraries searched for by --with-blas (without a value) now
    include BLIS (after OpenBLAS but before ATLAS).  And on macOS,
    the Accelerate framework (after ATLAS).  (This is patterned after
    the AX_BLAS macro from the Autoconf Archive.)
  * The included LAPACK sources have been updated to 3.10.1.
  UTILITIES:
  * The (full path to) the command tidy to be used for HTML
    validation can be set by environment variable R_TIDYCMD.
  * Setting environment variable _R_CHECK_RD_VALIDATE_RD2HTML_ to a
    false value will override R CMD check --as-cran and turn off HTML
    validation.  This provides a way to circumvent a problematic
    tidy.
    The 2006 version that ships with macOS is always skipped.
  C-LEVEL FACILITIES:
  * The undocumented legacy declarations of Sint, Sfloat, SINT_MAX
    and SINT_MIN in header R.h are deprecated.
  BUG FIXES:
  * fisher.test(d) no longer segfaults for "large" d; fixing PR#18336
    by preventing/detecting an integer overflow reliably.
  * tar(., files=*) now produces correctly the warning about invalid
    uid or gid of files, fixing PR#18344, reported by Martin Morgan.
  * tk_choose.files() with multi = FALSE misbehaved on paths
    containing spaces (PR#18334) (regression introduced in R 4.0.0).
  * sort(x, partial = ind, *) now works correctly notably for the
    non-default na.last = FALSE or TRUE, fixing PR#18335 reported by
    James Edwards.
  * Environment variable _R_CHECK_XREFS_REPOSITORIES_ is only used
    for checking .Rd cross-references in R CMD check (as documented)
    and not for other uses looking for a CRAN mirror.
  * The search for a CRAN mirror when checking packages now uses
    getOption("repos") if that specifies a CRAN mirror, even when it
    does not also specify all three Bioconductor repositories (as was
    previously required).
  * The HTML code generated by tools::Rd2HTML() has been improved to
    pass tidy 5.8.0.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1667217600">- CHANGES IN R 4.2.2:
  NEW FEATURES:
  * tools::Rdiff(useDiff = TRUE) checks for the presence of an
    external diff command and switches to useDiff = FALSE if none is
    found.  This allows R CMD Rdiff to always work.
  * On Windows, environment variable R_LIBCURL_SSL_REVOKE_BEST_EFFORT
    can be used to switch to only 'best-effort' SSL certificate
    revocation checks with the default "libcurl" download method.
    This reduces security, but may be needed for downloads to work
    with MITM proxies (PR#18379).
  * (macOS) The run-time check for libraries from XQuartz for X11 and
    Tcl/Tk no longer uses otool from the Apple Developer Tools
    (PR#18400).
  * The LaTeX style for producing the PDF manuals, Rd.sty, now loads
    the standard amsmath, amsfonts and amssymb packages for greater
    coverage of math commands in the Rd \eqn and \deqn macros.  The
    \mathscr LaTeX command is also provided (via the mathrsfs
    package, if available, or the amsfonts bundle otherwise),
    fulfilling the wish of PR#18398.
  * (Windows) The default format of readClipboard() and
    writeClipboard() has been changed to 13 (CF_UNICODETEXT).
  INSTALLATION on a UNIX-ALIKE:
  * The PDF manuals (if built) can be compacted by the new target
    make compact-pdf (at the top level or in directory doc/manual).
  * There is now configure support for LLVM clang 15 on Linux, which
    defaults to position-independent (PIE) executables whereas
    gfortran does not.
  * Many small changes to ease compilation (and suppress warnings)
    with LLVM clang 15.
  BUG FIXES:
  * Rscript -e would fail if stdin were closed (Reported by Henrik
    Bengtsson.)
  * qt(*, log.p=TRUE) in outer tails no longer produces NaN in its
    final steps, thus fixing PR#18360.
  * tools::Rd2latex() now escapes hashes and ampersands when writing
    URLs, fixing LaTeX errors with such URLs in \tabular.
  * When isGeneric(f, fdef=*) is used with mismatching names, the
    warning is better understandable; reported (with fix) in PR#18370
    by Gabe Becker.
  * poly(x, n) now works again (and is now documented) when x is a
    "Date" or "POSIXct" object, or of another class while fulfilling
    mode(x) == "numeric".  This also enables poly(x, *, raw=TRUE) for
    such variables.  Reported by Michael Chirico to R-devel.
  * write.table(), write.csv() and write.csv2() restore their
    numerical precision (internal equivalent of digits = 15) after an
    interrupt (PR#18384).
  * One can now read also byte FF from a clipboard connection
    (PR#18385).
  * source("") and source(character()) now give more helpful error
    messages.
  * R CMD check --as-cran set _R_CHECK_TIMINGS_ too late to have the
    intended effect.
  * as.POSIXlt(x) now also works with very large dates x, fixing
    PR#18401 reported by Hannes M"uhleisen.
  * Files can now be extracted even from very large zip archives
    (PR#18390, thanks to Martin Jakt).
  * Non-finite objects of class "POSIXlt" are now correctly coerced
    to classes "Date" and "POSIXct"; following up on the extension to
    format() them correctly.
  * Added methods for is.finite(), is.infinite() and is.nan() for
    "POSIXlt" date-time objects.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1678881600">- CHANGES IN R 4.2.3:
  C-LEVEL FACILITIES:
  * The definition of DL_FUNC in R_ext/Rdynload.h has been changed to
    be fully C-compliant.  This means that functions loaded _via_ for
    example R_GetCCallable need to be cast to an appropriate type if
    they have any arguments.
  * .Machine has a new element sizeof.time_t to identify old systems
    with a 32-bit type and hence a limited range of date-times (and
    limited support for dates millions of years from present).
  PACKAGE INSTALLATION:
  * (Windows) The default C++ standard had accidentally been left at
    C++11 when it was changed to C++14 on Unix.
  BUG FIXES:
  * As "POSIXlt" objects may be "partially filled" and their list
    components meant to be recycled, length() now is the length of
    the longest component.
  * as.POSIXlt.Date() could underflow for dates in the far past (more
    than half a million years BCE).
  * as.Date.POSIXlt(x) would return "1970-01-01" instead of NA in R
    4.2.2, e.g., for
    x &lt;- as.POSIXlt(c("2019-01-30","2001-1-1"))
    x$mon &lt;- c(0L, NA); as.Date(x)
  * R CMD check failed to apply enabled _R_CHECK_SUGGESTS_ONLY_ to
    examples and vignettes (regression in R 4.2.0).
  * R CMD check did not re-build vignettes in separate processes by
    default (regression in R 4.2.0).
  * Running examples from HTML documentation now restores previous
    knitr settings and options (PR#18420).
  * Quartz: fonts are now located using Core Graphics API instead of
    deprecated ATS which is no longer supported in the macOS 13 SDK
    (PR#18426).  This also addresses an issue where the currently
    used font in the Quartz device context was not correctly
    retained.
  * (Windows) Math symbols in text drawing functions are again
    rendered correctly (PR#18440).  This fixes a regression in R
    4.2.1 caused by a fix in PR#18382 which uncovered an issue in
    GraphApp due to which the symbol charset was not used with TT
    Symbol font face.
  * (Windows) Installing a package with a src/Makefile.{win,ucrt}
    file includes ~/.R/Makevars.win64 in the search for user
    makevars, as documented in "R Installation and Administration"
    and done for packages with a src/Makevars.{win,ucrt} file.
  * format(&lt;POSIXlt_w/_unbalanced_sec&gt;, "....%OS&lt;n&gt;") with n &gt; 0 no
    longer accidentally uses the unbalanced seconds, thanks to
    Suharto Anggono's report (including patch) in PR#18448.
  * solve.default(a, b) works around issues with some versions of
    LAPACK when a contains NA or NaN values.
  * When UseMethod() cannot dispatch, it no longer segfaults
    producing the error message in case of a long class(), thanks to
    Joris Vankerschaver's report (including patch) in PR#18447.
  * When example(foo, ..) produces graphics on an interactive device
    it needs to open itself, it now leaves devAskNewPage() unchanged
    even when it was FALSE, thus fixing a 14 years old '&lt;FIXME&gt;'.
  * packageDescription() again catches errors from encoding
    conversions. This also fixes broken packageVersion() in C locale
    on systems where iconv does not support transliteration.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1681128000">- add patch to build with libcurl &gt;= 8</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1682078400">- CHANGES IN R 4.3.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Calling &amp;&amp; or || with LHS or (if evaluated) RHS of length greater
    than one is now always an error, with a report of the form
    'length = 4' in coercion to 'logical(1)'
    Environment variable _R_CHECK_LENGTH_1_LOGIC2_ no longer has any
    effect.
  NEW FEATURES:
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.10.1.  (This caused some platform-dependent
    changes to package check output.)  And then to the sources from
    LAPACK version 3.11.0 (with changes only to double complex
    subroutines).
  * The included LAPACK sources have been updated to include the four
    Fortran 90 routines rather than their Fortran 77 predecessors.
    This may give some different signs in SVDs or
    eigendecompositions..  (This completes the transition to LAPACK
    3.10.x begun in R 4.2.0.)
  * The LAPACK sources have been updated to version 3.11.0.  (No new
    subroutines have been added, so this almost entirely bug fixes:
    Those fixes do affect some computations with NaNs, including R's
    NA.)
  * The parser now signals _classed_ errors, notably in case of the
    pipe operator |&gt;.  The error object and message now give line and
    column numbers, mostly as proposed and provided by Duncan Murdoch
    in PR#18328.
  * toeplitz() is now generalized for asymmetric cases, with a
    toeplitz2() variant.
  * xy.coords() and xyz.coords() and consequently, e.g., plot(x,y,
    log = "y") now signal a _classed_ warning about negative values
    of y (where log(.) is NA).  Such a warning can be specifically
    suppressed or caught otherwise.
  * Regular expression functions now check more thoroughly whether
    their inputs are valid strings (in their encoding, e.g. in
    UTF-8).
  * The performance of grep(), sub(), gsub() and strsplit() has been
    improved, particularly with perl = TRUE and fixed = TRUE.  Use of
    useBytes = TRUE for performance reasons should no longer be
    needed and is discouraged: it may lead to incorrect results.
  * apropos() gains an argument dot_internals which is used by the
    completion (help(rcompgen)) engine to also see base internals
    such as .POSIXct().
  * Support in tools::Rdiff() for comparing uncompressed PDF files is
    further reduced - see its help page.
  * qqplot(x, y, ...) gains conf.level and conf.args arguments for
    computing and plotting a confidence band for the treatment
    function transforming the distribution of x into the distribution
    of y (Switzer, 1976, _Biometrika_). Contributed by Torsten
    Hothorn.
  * Performance of package_dependencies() has been improved for cases
    when the number of dependencies is large.
  * Strings newly created by gsub(), sub() and strsplit(), when any
    of the inputs is marked as "bytes", are also marked as "bytes".
    This reduces the risk of creating invalid strings and accidental
    substitution of bytes deemed invalid.
  * Support for readLines(encoding = "bytes") has been added to allow
    processing special text files byte-by-byte, without creating
    invalid strings.
  * iconv(from = "") now takes into account any declared encoding of
    the input elements and uses it in preference to the native
    encoding.  This reduces the risk of accidental creation of
    invalid strings, particularly when different elements of the
    input have different encoding (including "bytes").
  * Package repositories in getOption("repos") are now initialized
    from the repositories file when utils is loaded (if not already
    set, e.g., in .Rprofile).  (From a report and patch proposal by
    Gabriel Becker in PR#18405.)
  * compactPDF() gets a verbose option.
  * type.convert() and hence read.table() get new option tryLogical =
    TRUE with back compatible default.  When set to false, converts
    "F" or "T" columns to character.
  * Added new unit prefixes "R" and "Q" for abbreviating
    (unrealistically large) sizes beyond 10^{27} in standard = "SI",
    thanks to Henrik Bengtsson's PR#18435.
  * as.data.frame()'s default method now also works fine with atomic
    objects inheriting from classes such as "roman", "octmode" and
    "hexmode", such fulfilling the wish of PR#18421, by Benjamin
    Feakins.
  * The as.data.frame.vector() utility now errors for wrong-length
    row.names.  It warned for almost six years, with "Will be an
    error!".
  * sessionInfo() now also contains La_version() and reports codepage
    and timezone when relevant, in both print() and toLatex() methods
    which also get new option tzone for displaying timezone
    information when locale = FALSE.
  * New function R_compiled_by() reports the C and Fortran compilers
    used to build R, if known.
  * predict(&lt;lm&gt;, newdata = *) no longer unnecessarily creates an
    offset of all 0s.
  * solve() for complex inputs now uses argument tol and by default
    checks for 'computational singularity' (as it long has done for
    numeric inputs).
  * predict(&lt;rank-deficient lm&gt;, newdata=*) now obeys a new argument
    rankdeficient, with new default "warnif", warning only if there
    are non-estimable cases in newdata.  Other options include
    rankdeficient = "NA", predicting NA for non-estimable newdata
    cases.  This addresses PR#15072 by Russ Lenth and is based on his
    original proposal and discussions in PR#16158 also by David Firth
    and Elin Waring.  Still somewhat experimental.
  * Rgui console implementation now works better with the NVDA screen
    reader when the full blinking cursor is selected.  The underlying
    improvements in cursor handling may help also other screen
    readers on Windows.
  * The drop-field control in GraphApp can now be left with the TAB
    key and all controls can be navigated in the reverse order using
    the Shift+TAB key, improving accessibility of the Rgui
    configuration editor.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now fully accurate
    (instead of to "only" minimally five digits).
  * demo(error.catching) now also shows off withWarnings() and
    tryCatchWEMs().
  * As an experimental feature the placeholder _ can now also be used
    in the rhs of a forward pipe |&gt; expression as the first argument
    in an extraction call, such as _$coef. More generally, it can be
    used as the head of a chain of extractions, such as _$coef[[2]].
  * Spaces in the environment variable used to choose the R session's
    temporary directory (TMPDIR, TMP and TEMP are tried in turn) are
    now fatal.  (On Windows the 'short path' version of the path is
    tried and used if that does not contain a space.)
  * all.equal.numeric() gets a new optional switch giveErr to return
    the numeric error as attribute.  Relatedly,
    stopifnot(all.equal&lt;some&gt;(a, b, ..)) is as "smart" now, as
    stopifnot(all.equal(....)) has been already, thus allowing
    customized all.equal&lt;Some&gt;() wrappers.
  * R on Windows is now able to work with path names longer than 260
    characters when these are enabled in the system (requires at
    least Windows 10 version 1607).  Packages should be updated to
    work with long paths as well, instead of assuming PATH_MAX to be
    the maximum length.  Custom front-ends and applications embedding
    R need to update their manifests if they wish to allow this
    feature.  See
    &lt;https://blog.r-project.org/2023/03/07/path-length-limit-on-windows&gt;
    for more information.
  * 'Object not found' and 'Missing argument' errors now give a more
    accurate error context. Patch provided by Lionel Henry in
    PR#18241.
  * The @ operator is now an S3 generic. Based on contributions by
    Tomasz Kalinowski in PR#18482.
  * New generic chooseOpsMethod() provides a mechanism for objects to
    resolve cases where two suitable methods are found for an Ops
    Group Generic. This supports experimenting with alternative
    object systems. Based on contributions by Tomasz Kalinowski in
    PR#18484.
  * inherits(x, what) now accepts values other than a simple
    character vector for argument what. A new generic, nameOfClass(),
    is called to resolve the class name from what. This supports
    experimenting with alternative object systems. Based on
    contributions by Tomasz Kalinowski in PR#18485.
  * Detection of BLAS/LAPACK in use (sessionInfo()) with FlexiBLAS
    now reports the current backend.
  * The "data.frame" method for subset() now warns about extraneous
    arguments, typically catching the use of = instead of == in the
    subset expression.
  * Calling a:b when numeric a or b is longer than one may now be
    made into an error by setting environment variable
    _R_CHECK_LENGTH_COLON_ to a true value, along the proposal in
    PR#18419 by Henrik Bengtsson.
  * density(x, weights = *) now warns if automatic bandwidth
    selection happens without using weights; new optional warnWbw may
    suppress the warning.  Prompted by Christoph Dalitz' PR#18490 and
    its discussants.
  * rm(list = *) is faster and more readable thanks to Kevin Ushey's
    PR#18492.
  * The plot.lm() function no longer produces a normal Q-Q plot for
    GLMs. Instead it plots a half-normal Q-Q plot of the absolute
    value of the standardized deviance residuals.
  * The print() method for class "summary.glm" no longer shows
    summary statistics for the deviance residuals by default.  Its
    optional argument show.residuals can be used to show them if
    required.
  * The tapply() function now accepts a data frame as its X argument,
    and allows INDEX to be a formula in that case. by.data.frame()
    similarly allows INDICES to be a formula.
  * The performance of df[j] &lt;- value (including for missing j) and
    write.table(df) has been improved for data frames df with a large
    number of columns.  (Thanks to Gabriel Becker's PR#18500,
    PR#18503 and discussants, prompted by a report from Toby Dylan
    Hocking on the R-devel mailing list.)
  * The matrix multiply operator %*% is now an S3 generic, belonging
    to new group generic matrixOps.  From Tomasz Kalinowski's
    contribution in PR#18483.
  * New function array2DF() to convert arrays to data frames,
    particularly useful for the list arrays created by tapply().
  DATES and TIMES:
  * On platforms where (non-UTC) datetimes before 1902 (or before
    1900 as with system functions on recent macOS) are guessed by
    extrapolating time zones from 1902-2037, there is a warning at
    the first use of extrapolation in a session.  (As all time zones
    post 2037 are extrapolation, we do not warn on those.)
  * (Platforms using --with-internal-tzone, including Windows and by
    default macOS). How years are printed in dates or date-times can
    be controlled by environment variable R_PAD_YEARS_BY_ZERO.  The
    default remains to pad to 4 digits by zeroes, but setting value
    no gives no padding (as used by default by glibc).
  * strftime() tries harder to determine the offset for the "%z"
    format, and succeeds on the mainstream R platforms.
  * strftime() has a limit of 2048 bytes on the string produced -
    attempting to exceed this is an error.  (Previously it silently
    truncated at 255 bytes.)
  * sessionInfo() records (and by default prints) the system time
    zone as part of the locale information.  Also, the source
    (system/internal) of the date-time conversion and printing
    functions.
  * Objects of class "POSIXlt" created in this version of R always
    have 11 components: component zone is always set, and component
    gmtoff is set for times in UTC and usually set on the (almost
    all) platforms which have C-level support, otherwise is NA.
  * There are comprehensive validity checks on the structure of
    objects of class "POSIXlt" when converting (including formatting
    and printing).  (This avoids mis-conversions of hand-crafted
    objects.)
  * There is some support for using the native date-time routines on
    macOS: this is only viable on recent versions (e.g. 12.6 and 13)
    and does get wrong some historical changes (before 1900, during
    WWII).  Use of --with-internal-tzone remains the default.
  * as.POSIXct(&lt;numeric&gt;) and as.POSIXlt(.) (without specifying
    origin) now work.  So does as.Date(&lt;numeric&gt;).
  * as.Date.POSIXct(., tz) now treats several tz values, notably
    "GMT" as equivalent to "UTC", proposed and improved by Michael
    Chirico and Joshua Ulrich in PR#17674.
  * Experimental balancePOSIXlt() utility allows using "ragged" and
    or out-of-range "POSIXlt" objects more correctly, e.g., in
    subsetting and subassignments.  Such objects are now documented.
    More experimentally, a "POSIXlt" object may have an attribute
    "balanced" indicating if it is known to be filled or fully
    balanced.
  * Functions axis.Date() and axis.POSIXct() are rewritten to gain
    better default tick locations and better default formats by using
    prettyDate(). Thanks to Swetlana Herbrandt.
  * The mapping of Windows' names for time zones to IANA's 'Olson'
    names has been updated.  When ICU is available (it is by
    default), it is used to get a mapping for the current region set
    in Windows.  This can be overridden by setting environment
    variable TZ to the desired Olson name - see OlsonNames() for
    those currently available.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 16
    and so packages that provide graphics devices should be
    reinstalled.
  * The grDevices and grid packages have new functions for rendering
    typeset glyphs, primarily: grDevices::glyphInfo() and
    grid::grid.glyph().
    Rendering of typeset glyphs is only supported so far on the
    Cairo-based graphics devices and on the pdf() and quartz()
    devices.
  * The defined behaviour for "clear" and "source" compositing
    operators (via grid::grid.group()) has been changed (to align
    better with simple interpretation of original Porter-Duff
    definitions).
  * Support for gradients, patterns, clipping paths, masks, groups,
    compositing operators, and affine transformations has been added
    to the quartz() device.
  INSTALLATION on a UNIX-ALIKE:
  * A system installation of generic LAPACK 3.10.0 or later will be
    preferred to the version in the R sources.
    configure option --with-lapack=no (equivalently --without-lapack)
    forces compilation of the internal LAPACK sources.
    If --with-lapack is not specified, a system liblapack is looked
    for and used if it reports version 3.10.0 or later and does not
    contain BLAS routines.
    Packages using LAPACK will need to be reinstalled if this changes
    to using an external library.
  * On aarch64 Linux platforms using GCC, configure now defaults to
  - fPIC (instead of -fpic), as desired in PR#18326.
  * configure now checks conversion of datetimes between POSIXlt and
    POSIXct around year 2020.  Failure (which has been seen on
    platforms missing tzdata) is fatal.
  * If configure option --with-valgrind-instrumentation is given
    value 1 or 2, option --with-system-valgrind-headers is now the
    default and ignored (with a warning).  It is highly recommended
    that the system headers are installed alongside valgrind: they
    are part of its packaging on some Linux distributions and
    packaged separately (e.g. in the valgrind-devel RPM) on others.
    configure will give a warning if they are not found.
    The system headers will be required in a future release of R to
    build with valgrind instrumentation.
  * libcurl 8.x is now accepted by configure: despite a change in
    major version number it changes neither API nor ABI.
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools43, an update of the Rtools42 toolchain.  It is
    based on gcc 12 and newer versions of MinGW-W64, binutils and
    libraries.  At this time R-devel can still be built using
    Rtools42 without changes, but when R-devel is installed via the
    installer, it will by default look for Rtools43.
  * Old make targets rsync-extsoft and 32-bit ones that are no longer
    needed have been removed.
  * Default builds (including for packages) no longer select C99.
    Thus the C standard used is the default for the compiler, which
    for the toolchain in Rtools43 is C17.  (This is consistent with
    Unix builds.)
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++17 where
    available (which it is on all currently checked platforms): if
    not C++14 or C++11 is used if available otherwise C++ is not
    supported.
  * USE_FC_LEN_T is the default: this uses the correct
    (compiler-dependent) prototypes for Fortran BLAS/LAPACK routines
    called from C/C++, and requires adjustment of many such calls -
    see 'Writing R Extensions' SS6.6.1.
  * There is initial support for C++23 as several compilers are now
    supporting -std=c++23 or -std=c++2b or similar.  As for C++20,
    there no additional configure checks for C++23 features beyond a
    check that the compiler reports a __cplusplus value greater than
    that in the C++20 standard.  C++ feature tests should be used.
  * There is support for a package to indicate the version of the C
    standard which should be used to compile it, and for the
    installing user to specify this.  In most cases R defaults to the
    C compiler's default standard which is C17 (a `bug-fix' of C11) -
    earlier versions of R or compilers may have defaulted to C99.
    Current options are:
    USE_C17 Use a standard that is at most C17.  The intention is to
    allow legacy packages to still be installed when later C
    standards become the default, including packages using new
    keywords as identifiers or with K&amp;R-style function
    declarations.  This will use C17 if available, falling back
    to C11.
    USE_C90 Use the C90 (aka C89) standard.  (As that standard did
    not require compilers to identify that version, all we can
    verify is that the compiler does not claim to be using a
    later standard.  It may accept C99 features - for example
    clang accepts // to make comments.)
    USE_C99 Use the C99 standard. This should be rarely needed - it
    avoids the few new features of C11/C17 which can be useful if
    a package assumes them if C17 is specified and they are not
    implemented.
    USE_C23 Use C23 (or in future, later).  Compiler/library support
    for C23 is still being implemented, but LLVM clang from
    15.0.0 and the upcoming GCC 13 have quite extensive support.
    These can be specified as part of the SystemRequirements field in
    the package's DESCRIPTION file or _via_ options --use-C17 and so
    on of R CMD INSTALL and R CMD SHLIB.
    For further details see "Writing R Extensions" SS1.2.5.
  * (Windows) A src/Makefile.ucrt or src/Makefile.win file is now
    included after R_HOME/etcR_ARCH/Makeconf and so no longer needs
    to include that file itself.  Installation of a package with such
    a file now uses a site Makevars file in the same way as a package
    with a src/Makevars.win file would.
  * configure is now passed crucial variables such as CC and CFLAGS
    in its environment, as many packages were not setting them (as
    documented in 'Writing R Extensions' SS1.2).
    This has most effect where configure is used to compile parts of
    the package - most often by cmake or libtool which obfuscate the
    actual compile commands used.
    Also used for configure.win and configure.ucrt on Windows.
  FORTRAN FLAGS:
  * The flag -fno-optimize-sibling-calls is no longer forced for
    gfortran 7 and later.  It should no longer be needed now using
    'hidden' character-length arguments when calling BLAS/LAPACK
    routines from C/C++ is the default even for packages.  (Unless
    perhaps packages call Fortran code from C/C++ without using R's
    headers and without allowing for these arguments.)
  C-LEVEL FACILITIES:
  * The deprecated S-compatibility macros DOUBLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * The deprecated legacy typedefs of Sint and Sfloat in header R.h
    are no longer defined, and that header no longer includes header
    limits.h from C nor climits from C++.
  * New macro CAD5R() is provided in Rinternals.h and used in a few
    places in the R sources.
  * ALTREP now supports VECSXP vectors. Contributed by Gabor Csardi
    in PR#17620.
  * The Rcomplex definition (in header R_ext/Complex.h) has been
    extended to prevent possible mis-compilation when interfacing
    with Fortran (PR#18430).  The new definition causes compiler
    warnings with static initializers such as {1, 2}, which can be
    changed to {.r=1, .i=2}.
    Using the new definition from C++ depends on compiler extensions
    supporting C features that have not been incorporated into the
    C++ standards but are available in g++ and clang++: this may
    result in C++ compiler warnings but these have been worked around
    for recent versions of common compilers (GCC, Apple/LLVM clang,
    Intel).
    It is intended to change the inclusion of header R_ext/Complex.h
    by other R headers, so C/C++ code files which make use of
    Rcomplex should include that header explicitly.
  UTILITIES:
  * R CMD check does more checking of package .Rd files, warning
    about invalid email addresses and (some) invalid URIs and noting
    empty \item labels in description lists.
  * R CMD check now also reports problems when reading package news
    in md (file NEWS.md) and (optionally) plain text (file NEWS)
    formats.
  * _R_CHECK_TIMINGS_ defaults to a value from the environment even
    for R CMD check --as-cran; this allows for exceptionally fast or
    slow platforms.
    It now applies to checking PDF and HTML versions of the manuals,
    and 'checking CRAN incoming feasibility'.
  * R CMD check can optionally (but included in --as-cran) check
    whether HTML math rendering _via_ KaTeX works for the package .Rd
    files.
  * Non-interactive debugger invocations can be trapped by setting
    the environment variable _R_CHECK_BROWSER_NONINTERACTIVE_ to a
    true value.  This is enabled by R CMD check --as-cran to detect
    the use of leftover browser() statements in the package.
  * The use of sprintf and vsprintf from C/C++ has been deprecated in
    macOS 13 and is a known security risk.  R CMD check now reports
    (on all platforms) if their use is found in compiled code:
    replace by snprintf or vsnprintf respectively. [*NB:* whether
    such calls get compiled into the package is platform-dependent.]
  * Where recorded at installation, R CMD check reports the C and
    Fortran compilers used to build R.
    It reports the OS in use (if known, as given by osVersion) as
    well as that R was built for.
    It notes if a C++ standard was specified which is older than the
    current default: many packages have used C++11 to mean 'not
    C++98' - as C++11 is the minimum supported since R 4.0.0, that
    specification can probably be removed.
  * R CMD INSTALL reports the compilers (and on macOS, the SDK) used,
    and this is copied to the output of R CMD check.
    Where a C++ standard is specified, it is reported.
  * R CMD check's 'checking compilation flags in Makevars' has been
    relaxed to accept the use of flags such as -std=f2008 in
    PKG_FFLAGS.
  * tools::buildVignettes() has a new argument skip, which is used by
    R CMD check to skip (and note) vignettes with unavailable
    \VignetteDepends (PR#18318).
  * New generic .AtNames() added to enable class-specific completions
    after @. The formerly internal function findMatches() is now
    exported, mainly for use in methods for .DollarNames() and
    .AtNames().
  DEPRECATED AND DEFUNCT:
  * default.stringsAsFactors() is defunct.
  * Calling as.data.frame.&lt;class&gt;() directly (for 12 atomic classes)
    is going to be formally deprecated, currently activated by
    setting the environment variable
    _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ to non-empty, which also
    happens in R CMD check --as-cran.
  BUG FIXES:
  * Hashed environments with sizes less than 5 can now grow.
    (Reported to R-devel by Duncan Garmonsway.)
  * as.character(&lt;Rd&gt;, deparse = TRUE) failed to re-escape curly
    braces in LaTeX-like text.  (Reported by Hadley Wickham in
    PR#18324.)
  * library() now passes its lib.loc argument when requiring Depends
    packages; reported (with fix) in PR#18331 by Mikael Jagan.
  * R CMD Stangle: improved message about 'Output' files.
  * head(x, n) and tail(x, n) now signal an error if n is not
    numeric, instead of incidentally "working" sometimes returning
    all of x.  Reported and discussed by Colin Fay, in PR#18357.
  * The "lm" method for summary() now gives the correct F-statistic
    when the model contains an offset.  Reported in PR#18008.
  * C() and `contrasts&lt;-`() now preserve factor level names when
    given a function object (as opposed a function name which did
    preserve names). Reported in PR#17616.
  * c(a = 1, 2)[[]] no longer matches 2 but rather signals a
    _classed_ error.  Reported and analysed by Davis Vaughan in
    PR#18367, a duplicate of PR#18004, by Jan Meis et al.  For
    consistency, NULL[[]] is also erroneous now.  x[[]] &lt;- v gives an
    error of the same class "MissingSubscriptError".
  * The relist() function of utils now supports NULL elements in the
    skeleton (PR#15854).
  * ordered(levels = *) (missing x) now works analogously to factor(,
    ordered=TRUE); reported (with fix) by Achim Zeileis in PR#18389.
  * User-defined Rd macro definitions can now span multiple lines,
    thanks to a patch from Duncan Murdoch. Previously, the Rd parser
    silently ignored everything after the first line.
  * Plain-text help (tools::Rd2txt()) now preserves an initial blank
    line for text following description list items.
  * tools::Rd2HTML() and tools::Rd2latex() no longer split \arguments
    and \value lists at Rd comments.
  * tools::Rd2latex() now correctly handles optional text outside
    \items of argument lists as well as bracketed text at the
    beginning of sections, e.g., \value{[NULL]}.
  * as.character(&lt;POSIXt&gt;) now behaves more in line with the methods
    for atomic vectors such as numbers, and is no longer influenced
    by options().  Ditto for as.character(&lt;Date&gt;).  The
    as.character() method gets arguments digits and OutDec with
    defaults _not_ depending on options().  Use of as.character(*,
    format = .) now warns.
  * Similarly, the as.character.hexmode() and *.octmode() methods
    also behave as good citizen methods and back compatibility option
    keepStr = TRUE.
  * The as.POSIXlt(&lt;POSIXlt&gt;) and as.POSIXct(&lt;POSIXct&gt;) default
    methods now do obey their tz argument, also in this case.
  * as.POSIXlt(&lt;Date&gt;) now does apply a tz (time zone) argument, as
    does as.POSIXct(); partly suggested by Roland Fuss on the R-devel
    mailing list.
  * as.Date.POSIXlt(x) now also works when the list components are of
    unequal length, aka "partially filled" or "ragged".
  * expand.model.frame() looked up variables in the wrong environment
    when applied to models fitted without data.  Reported in
    PR#18414.
  * time() now (also) uses the ts.eps = getOption("ts.eps") argument
    and thus by default rounds values very close to the start (or
    end) of a year.  Based on a proposal by Andre"i V. Kostyrka on
    R-help.
  * Printing of a factanal() result with just one factor and sort =
    TRUE now works regularly, fixing PR#17863 by Timothy Bates,
    thanks to the 'R Contributors' working group.
  * Printing 0-length objects of class "factor", "roman", "hexmode",
    "octmode", "person", "bibentry", or "citation" now prints
    something better, one of which fixes PR#18422, reported by
    Benjamin Feakins.
  * Sys.timezone() queries timedatectl only if systemd is loaded;
    addressing a report by Jan Gorecki in PR#17421.
  * The formula method of cor.test() had scoping problems when
    environment(formula) was not the calling environment; reported
    with a patch proposal by Mao Kobayashi in PR#18439.
  * attach() of an environment with active bindings now preserves the
    active bindings.  Reported by Kevin Ushey in PR#18425.
  * BLAS detection now works also with system-provided libraries not
    available as regular files.  This fixes detection of the
    Accelerate framework on macOS since Big Sur.  Reported by David
    Novgorodsky.
  * download.file() gives a helpful error message in case of an
    invalid download.file.method option, thanks to Colin Fay's report
    in PR#18455.
  * Sporadic crashes of Rterm when using completion have been fixed.
  * Rprof() is now more reliable.  A livelock in thread
    initialization with too short sampling interval has been fixed on
    macOS.  A deadlock in using the C runtime has been fixed on
    Windows.  A potential deadlock has been prevented on Unix.
  * Cursor placement in Rgui now works even after a fixed-width font
    is selected.
  * Mandatory options (options()) are now set on startup so that
    saving and restoring them always works (PR#18372).
  * Package installation, R CMD INSTALL or install.packages(*), now
    parses each of the &lt;pkg&gt;/R/*.R files individually instead of
    first concatenating and then parse()ing the large resulting file.
    This allows parser or syntax errors to be diagnosed with correct
    file names and line numbers, thanks to Simon Dedman's report and
    Bill Dunlap's patch in PR#17859.
    This _does_ require syntactically self contained R source files
    now, fixing another inadvertent bug.
  * predict.lm(&lt;model with offset&gt;) now finds the offset in the
    correct environment, thanks to Andr'e Gillibert's report and patch
    in PR#18456.
  * getInitial(&lt;formula&gt;) now finds the selfStart model in the
    correct environment.  (Reported by Ivan Krylov in PR#18368.)
  * Fix for possible segfault when using recently-added graphics
    features, such as gradients, clipping paths, masks, and groups
    with pdf(file=NULL).
  * class(m) &lt;- class(m) no longer changes a matrix m by adding a
    class _attribute_.
  * packageDate(pkg) now only warns once if there is no pkg.
  * When ts() creates a multivariate time series, "mts", it also
    inherits from "array" now, and is.mts() is documented _and_
    stricter.
  * Rd2txt() now preserves line breaks of \verb Rd content and from
    duplicated \cr.  The former also fixes the rendering of verbatim
    output from Rd \Sexpr in plain-text help.
  * uniroot(f, interval) should no longer wrongly converge _outside_
    the interval in some cases where abs(f(x)) == Inf for an x at the
    interval boundary, thanks to posts by Ben Bolker and Serguei
    Sokol on R-devel.
  * Vectorized alpha handling in palette functions such as in gray(),
    rainbow(), or hcl.colors() works correctly now, thanks to Achim
    Zeileis' report and patch in PR#18476.
  * Formatting and print()ing of bibentry objects has dropped the
    deprecated citation.bibtex.max argument, such that the bibtex
    argument's default for print.bibentry() depends directly on the
    citation.bibtex.max option, whereas in format.bibentry() the
    option no longer applies.
  * Attempting to use a character string naming a foreign function
    entry point in a foreign function call in a package will now
    signal an error if the packages has called R_forceSymbols to
    specify that symbols must be used.
  * An error in table() could permanently set options(warn=2)
    promoting all subsequent warnings to errors.
  * The sigma() function gave misleading results for binary GLMs.  A
    new method for objects of class "glm" returns the square root of
    the estimate of the dispersion parameter using the same
    calculation as summary.glm().
  * bs() and ns() in the (typical) case of automatic knot
    construction, when some of the supposedly inner knots coincide
    with boundary knots, now moves them inside (with a warning),
    building on PR#18442 by Ben Bolker.
  * R CMD on Windows now skips the site profile with --no-site-file
    and --vanilla even when R_PROFILE is set (PR#18512, from Kevin
    Ushey).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1686916800">- CHANGES IN R 4.3.1:
  C-LEVEL FACILITIES:
  * The C-level API version of R's integrate(), Rdqags() in Applic.h,
    now returns the correct number of integrand evaluations neval,
    fixing PR#18515 reported and diagnosed by Stephen Wade.
  * The C prototypes for LAPACK calls dspgv and dtptrs in
    R_exts/Lapack.h had one too many and one too few character length
    arguments - but this has not caused any known issues. To get the
    corrected prototypes, include
    [#]include &lt;Rconfig.h&gt; // for PR18534fixed
    [#]ifdef PR18534fixed
    [#] define usePR18534fix 1
    [#]endif
    [#]include &lt;R_exts/Lapack.h&gt;
    in your C/C++ code (PR#18534).
  INSTALLATION:
  * Many of the checks of esoteric Internet operations and those
    using unreliable external sites have been moved to a new target
    that is not run by default and primarily intended for the core
    developers.  To run them use
    cd tests; make test-Internet-dev
  BUG FIXES:
  * .S3methods(), typically called from methods(), again marks
    methods from package base as visible.
    Also, the visibility of non-base methods is again determined by
    the method's presence in search().
  * tools::Rdiff() is now more robust against invalid strings, fixing
    installation tests on Windows without Rtools installed
    (PR#18530).
  * Fix (new) bug in hcl.colors(2, *), by Achim Zeileis (PR#18523).
  * head(., &lt;illegal&gt;) and tail(..) now produce more useful "Error in
    ...." error messages, fixing PR#18362.
  * Package code syntax on Windows is checked in UTF-8 when UTF-8 is
    the native encoding.
  * na.contiguous(x) now also returns the first run, when it is at
    the beginning and there is a later one of the same length;
    reported to R-devel, including a fix, by Georgi Boshnakov.
    Further, by default, it modifies only an existing attr(*,"tsp")
    but otherwise no longer sets one.
  * chol(&lt;not pos.def&gt;, pivot = &lt;T|F&gt;) now gives a correct error or
    warning message (depending on pivot), thanks to Mikael Jagan's
    (PR#18541).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1699012800">- CHANGES IN R 4.3.2:
  NEW FEATURES:
  * The default initialization of the "repos" option from the
    repositories file at startup can be skipped by setting
    environment variable R_REPOSITORIES to NULL such that
    getOption("repos") is empty if not set elsewhere.
  * qr.X() is now an implicit S4 generic in methods.
  * iconv(to = "ASCII//TRANSLIT") is emulated using substitution on
    platforms which do not support it (notably Alpine Linux).  This
    should give a human-readable conversion in ASCII on all platforms
    (rather than NA_character_).
  * trans3d() gains options continuous and verbose addressing the
    problem of possible "wrap around" when projecting too long
    curves, as reported by Achim Zeileis in PR#18537.
  * tools::showNonASCII() has been rewritten to work better on macOS
    14 (which has a changed implementation of iconv()).
  * tiff(type = "quartz") (the default on macOS) now warns if
    compression is specified: it continues to be ignored.
  INSTALLATION on a UNIX-ALIKE:
  * There is some support for building with Intel's LLVM-based
    compilers on x86_64 Linux, such as (C) icx, (C++) ipcx and
    (Fortran) ifx from oneAPI 2023.x.y.
  * There is support for using LLVM's flang-new as the Fortran
    compiler from LLVM 16.0.x (preferably 17.0.0 or later).
  UTILITIES:
  * R CMD check reports the use of the Fortran 90 random number
    generator RANDOM_NUMBER() and the subroutines to initialize it.
    'Writing R Extensions' has example code to use R's RNGs from
    Fortran.
  BUG FIXES:
  * substr(x, n, L) &lt;- cc now works (more) correctly for multibyte
    UTF-8 strings x when L &gt; nchar(x), thanks to a report and patch
    by 'Architect 95'.
  * contrib.url(character()) now returns 0-length character() as
    documented, which also avoids spurious warnings from
    available.packages() et al. in the edge case of an empty vector
    of repository URLs.
  * readChar(., 4e8) no longer fails, thanks to Kodi Arfer's report
    (PR#18557).
  * lapply(&lt;list&gt;, as.data.frame) no longer warns falsely for some
    base vector components.
  * Communication between parent and child processes in the multicore
    part of parallel could fail on platforms that do not support an
    arbitrarily large payload in system functions read()/write() on
    pipes (seen on macOS where a restriction to INT_MAX bytes is
    documented, without doing a partial read unlike Linux). The
    payload is now split into 1Gb chunks to avoid that problem.
    (PR#18571)
  * qqplot(x,y, conf.level=.) gives better confidence bounds when
    length(x) != length(y), thanks to Alexander Ploner's report and
    patch proposal (PR#18557).
  * norm(&lt;0-length&gt;, "2") now gives zero instead of an error, as all
    the other norm types, thanks to Mikael Jagan's PR#18542.
  * Build-stage Rd macros \packageAuthor and \packageMaintainer now
    process Authors@R, fixing NA results when the package DESCRIPTION
    omits Author and Maintainer fields.
  * Formatting and printing complex numbers could give things like
    0.1683-0i because of rounding error: -0i is now replaced by +0i.
  * postscript() refused to accept a title comment containing the
    letter "W" (PR#18599).
  * isoreg(c(1,Inf)) signals an error instead of segfaulting, fixing
    PR#18603.
  * tiff(type = "Xlib") was only outputting the last page of
    multi-page plots.
  * tools::latexToUtf8() again knows about \~{n} and other letters
    with tilde, fixing a regression in R 4.3.0, and about \^{i} as an
    alternative to \^{\i} (similarly with other accents).
    Furthermore, LaTeX codes for accented I letters are now correctly
    converted, also fixing related mistakes in
    tools::encoded_text_to_latex().
  * tar(*, tar = "internal") no longer creates out-of-spec tar files
    in the very rare case of user or group names longer than 32
    bytes, fixing PR#17871 with thanks to Ivan Krylov.
  * When using the "internal" timezone datetime code, adding a
    fraction of a second no longer adds one second, fixing PR#16856
    from a patch by Ivan Krylov.
  * tools::checkRd() no longer produces spurious notes about
    "unnecessary braces" from multi-line Rd results of \Sexpr macros.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1709208000">- CHANGES IN R 4.3.3:
  NEW FEATURES:
  * iconv() now fixes up variant encoding names such as "utf8"
    case-insensitively.
  DEPRECATED AND DEFUNCT:
  * The legacy encoding = "MacRoman" is deprecated in pdf() and
    postscript(): support was incomplete in earlier versions of R.
  BUG FIXES:
  * Arguments are now properly forwarded to methods on S4 generics
    with ... in the middle of their formal arguments. This was broken
    for the case when a method introduced an argument but did not
    include ... in its own formals. Thanks to Herv'e Pag`es for the
    report PR#18538.
  * Some invalid file arguments to pictex(), postscript() and xfig()
    opened a file called NA rather than throw an error.  These
    included postscript(NULL) (which some people expected to work
    like pdf(NULL)).
  * Passing filename = NA to svg(), cairo_pdf(), cairo_ps() or the
    Cairo-based bitmap devices opened a file called NA: it now throws
    an error.
  * quartz(file = NA) opened a file called NA, including when used as
    a Quartz-based bitmap device.  It now gives an error.
  * rank(&lt;long vector&gt;) now works, fixing PR#18617, thanks to Ilia
    Kats.
  * seq.int() did not adequately check its length.out argument.
  * match(&lt;POSIXct&gt;, .) is correct again for differing time zones,
    ditto for "POSIXlt", fixing PR#18618 reported by Bastian Klein.
  * drop.terms(*, dropx = &lt;0-length&gt;) now works, fixing PR#18563 as
    proposed by Mikael Jagan.
  * drop.terms(*) keeps + offset(.) terms when it should, PR#18565,
    and drop.terms() no longer makes up a response, PR#18566, fixing
    both bugs thanks to Mikael Jagan.
  * getS3method("t", "test") no longer finds the t.test() function,
    fixing PR#18627.
  * pdf() and postscript() support for the documented Adobe encodings
    "Greek" and "Cyrilllic" was missing (although the corresponding
    Windows' codepages could be used).
  * Computations of glyph metric information for pdf() and
    postscript() did not take into account that transliteration could
    replace one character by two or more (only seen on macOS 14) and
    typically warned that the information was not known.
  * rank(x) no longer overflows during integer addition, when
    computing rank average for largish but not-yet long vector x,
    fixing PR#18630, thanks to Ilia Kats.
  * list.files() on Windows now returns also files with names longer
    that 260 bytes (the Windows limit is 260 characters).
    Previously, some file names particularly with 'East Asian'
    characters were omitted.
  * cov2cor(&lt;0 x 0&gt;) now works, fixing PR#18423 thanks to Mikael
    Jagan and Elin Waring.
  * cov2cor(&lt;negative diagonal&gt;) and similar now give one warning
    instead of two, with better wording, fixing PR#18424 thanks to
    Mikael Jagan.
  * tools:: startDynamicHelp() now ensures port is in proper range,
    fixing PR#18645.
  * pbeta(x, a,b) is correct now for x=0 or 1 in the boundary cases
    where a or b or both are 0, fixing PR#18672 thanks to Michael
    Fay.
  * pmatch(x, table) for large table, also called for data frame row
    selection, dfrm[nm, ], is now interruptible, fixing PR#18656.
  * predict(&lt;rank-deficient lm&gt;, newdata=*) fix computing of nbasis,
    see Russ Lenth's comment 29 in PR#16158.
  * Added a work-around for a bug in macOS 14.3.1 and higher which
    prevents R plots in the Quartz Cocoa device from updating on
    screen.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1713960000">- CHANGES IN R 4.4.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Startup banners, R --version, sessionInfo() and R CMD check no
    longer report (64-bit) as part of the platform as this is almost
    universal - the increasingly rare 32-bit platforms will still
    report (32-bit).
    On Windows, ditto for window titles.
  * is.atomic(NULL) now returns FALSE, as NULL is not an atomic
    vector.  Strict back-compatibility would replace is.atomic(foo)
    by (is.null(foo) || is.atomic(foo)) but should happen only
    sparingly.
  NEW FEATURES:
  * The confint() methods for "glm" and "nls" objects have been
    copied to the stats package.  Previously, they were stubs which
    called versions in package MASS. The MASS namespace is no longer
    loaded if you invoke (say) confint(glmfit).  Further, the "glm"
    method for profile() and the plot() and pairs() methods for class
    "profile" have been copied from MASS to stats.  (profile.nls()
    and plot.profile.nls() were already in stats.)
  * The confint() and profile methods for "glm" objects have gained a
    possibility to do profiling based on the Rao Score statistic in
    addition to the default Likelihood Ratio. This is controlled by a
    new test = argument.
  * The pairs() method for "profile" objects has been extended with a
    which = argument to allow plotting only a subset of the
    parameters.
  * The "glm" method for anova() computes test statistics and
    p-values by default, using a chi-squared test or an F test
    depending on whether the dispersion is fixed or free.  Test
    statistics can be suppressed by giving argument test a false
    logical value.
  * In setRepositories() the repositories can be set using their
    names via name = instead of index ind =.
  * methods() and .S3methods() gain a all.names option for the (rare)
    case where functions starting with a . should be included.
  * Serializations can now be interrupted (e.g., by Ctrl-C on a
    Unix-alike) if they take too long, e.g., from save.image(),
    thanks to suggestions by Ivan Krylov and others on R-devel.
  * New startup option --max-connections to set the maximum number of
    simultaneous connections for the session.  Defaults to 128 as
    before: allowed values up to 4096 (but resource limits may in
    practice restrict to smaller values).
  * R on Windows (since Windows 10 2004) now uses the new Segment
    Heap allocator. This may improve performance of some
    memory-intensive applications.
  * When R packages are built, typically by R CMD build &lt;pkg&gt;, the
    new --user=&lt;build_user&gt; option overrides the (internally
    determined) user name, currently Sys.info()["user"] or LOGNAME.
    This is a (modified) fulfillment of Will Landau's suggestion in
    PR#17530.
  * tools::testInstalledBasic() gets new optional arguments outDir
    and testSrcdir, e.g., allowing to use it in a &lt;builddir&gt; !=
    &lt;srcdir&gt; setup, and in standard "binary" Windows installation
  * if* a source tests/ folder is present.
  * range(&lt;DT_with_Inf&gt;, finite = TRUE) now work for objects of class
    "Date", "POSIXct", and "POSIXlt" with infinite entries,
    analogously to range.default(), as proposed by Davis Vaughan on
    R-devel.  Other range()-methods can make use of new function
    .rangeNum().
  * New .internalGenerics object complementing .S3PrimitiveGenerics,
    for documentation and low-level book-keeping.
  * grid() now invisibly returns the x- and y- coordinates at which
    the grid-lines were drawn.
  * norm(., type) now also works for complex matrices.
  * kappa(., exact = TRUE, norm = *) now works for all norms and also
    for complex matrices.  In symmetric / triangular cases, the new
    argument uplo = "U" | "L" allows the upper or lower triangular
    part to be specified.
  * memDecompress(type = "unknown") recognizes compression in the
    default 'zlib' format as used by memCompress(type = "gzip").
  * memCompress() and memDecompress() will use the libdeflate library
    (&lt;https://github.com/ebiggers/libdeflate&gt;) if installed.  This
    uses the same type of compression for type = "gzip" but is 1.5-2x
    faster than the system libz library on some common platforms: the
    speed-up may depend on the library version.
  * diff() for objects of class "Date", "POSIXct", and "POSIXlt"
    accepts a units argument passed via ....
  * Dynamic help now does a much better job of rendering package
    DESCRIPTION metadata.
  * Rprof() gains an event argument and support for elapsed (real)
    time profiling on Unix (PR#18076).
  * filled.contour() gains a key.border argument.
  * tools::update_pkg_po() gets arguments pot_make and mo_make for
    _not_ re-making the corresponding files, and additionally a
    verbose argument.
  * Hexadecimal string colour specifications are now accepted in
    short form, so, for example, we can use "#123", which is
    equivalent to "#112233".
    Thanks to MikeFC for the original idea and Ella Kaye, Malcolm
    Barrett, George Stagg, and Hanne Oberman for the patch.
  * Plain-text help shows \var markup by angle brackets.
  * The new experimental primitive function declare() is intended to
    eventually allow information about R code to be communicated to
    the interpreter, compiler, and code analysis tools. The syntax
    for declarations is still being developed.
  * Functions psmirnov(), qsmirnov() and rsmirnov() in package stats
    have had argument two.sided renamed to alternative, to take into
    account that the permutation distributions of the one-sided
    statistics can be different in the case of ties.  Consequence of
    PR#18582.
  * sort() is now an implicit S4 generic in methods.
  * Formatting and printing, format(z), print(z), of complex vectors
    z no longer zap relatively small real or imaginary parts to zero,
    fixing PR#16752.  This is an API change, as it was documented
    previously to round real and imaginary parts together on purpose,
    producing nicer looking output.  As mentioned, e.g. in the PR,
    this change is compatible with many other "R-like" programming
    environments.
    We have simplified the internal code and now basically format the
    real and imaginary parts independently of each other.
  * New experimental functions Tailcall() and Exec() to support
    writing stack-space-efficient recursive functions.
  * Where characters are attempted to be plotted by pdf(),
    postscript() and xfig() which are not in the selected 8-bit
    character set (most often Latin-1) and the R session is using a
    UTF-8 locale, the warning messages will show the UTF-8 character
    rather than its bytes and one dot will be substituted per
    character rather than per byte.  (Platforms whose iconv() does
    transliteration silently plot the transliteration.)
    In a UTF-8 locale some transliterations are now done with a
    warning (e.g., dashes and Unicode minus to hyphen, ligatures are
    expanded, permille (‰) is replaced by o/oo), although the OS may
    have got there first.  These are warnings as they will continue
    to be replaced by dots in earlier versions of R.
  * The matrix multiplication functions crossprod() and tcrossprod()
    are now also primitive and S3 generic, as %*% had become in R
    4.3.0.
  * source() and example() have a new optional argument catch.aborts
    which allows continued evaluation of the R code after an error.
  * The non-Quartz tiff() devices allow additional types of
    compression if supported by the platform's libtiff library.
  * The list of base and recommended package names is now provided by
    tools::standard_package_names().
  * cairo_pdf() and cairo_ps() default to onefile = TRUE to closer
    match pdf() and postscript().
  * New option catch.script.errors provides a documented way to catch
    errors and then continue in non-interactive use.
  * L %||% R newly in base is an expressive idiom for the phrases
    if(!is.null(L)) L else R or if(is.null(L)) R else L.
  * The return value from warnings() now always inherits from
    "warnings" as documented, now also in the case of no warnings
    where it previously returned NULL.
  * as.complex("1i") now returns 0 + 1i instead of NA with a warning.
  * z &lt;- c(NA, 1i) now keeps the imaginary part Im(z[1]) == 0, no
    longer coercing to NA_complex_.  Similarly, cumsum(z) correctly
    sums real and imaginary parts separately, i.e., without
    "crosstalk" in case of NAs.
  * On Alpine Linux iconv() now maps "latin2", "latin-2", "latin9"
    and "latin-9" to encoding names the OS knows about
    (case-insensitively).
  * iconv(sub = "Unicode") now always zero-pads to four (hex) digits,
    rather than to 4 or 8.  (This seems to have become the convention
    once Unicode restricted the number of Unicode points to 2^21 - 1
    and so will never need more than 6 digits.)
  * NCOL(NULL) now returns 0 instead of 1, for consistency with
    cbind().
  * The information for the Euro glyph missing from the Adobe .afm
    files for the Courier, Helvetica and Times families has been
    copied from their URW equivalents - this will improve vertical
    centring in the pdf() and postscript() devices.
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.12.0.  The changes are almost entirely cosmetic.
  * The included LAPACK sources have been updated to version 3.12.0
    and some further double-complex routines added.
  * There are new font families for the 2014--5 URW 2.0 fonts (see
    ?pdf) which are included in recent versions of Ghostscript.
    These have font widths for most Greek glyphs and a few others
    which were missing from the original versions (whose font
    families remain available for reproducibility, although
    Ghostscript-based viewers will render using the 2.0 versions).
  * Improve the large-n efficiency of as.matrix(&lt;dist&gt;), thanks an R
    contributors effort, notably by Tim Taylor and Heather Turner,
    see PR#18660.
  * The default and numeric methods of all.equal() get a check.class
    option.
  * zapsmall() gets new optional arguments, function mFUN and min.d,
    for extra flexibility; fulfills a wish in PR#18199.  Also, it is
    now an implicit S4 generic in package methods.
  * The Rd filter for aspell() gains an ignore argument.
  * New generic function sort_by(), primarily useful for the
    data.frame method which can be used to sort rows of a data frame
    by one or more columns.
  * The icence headers for the RPC code in src/extra/xdr have been
    updated to use the GPL-compatible licence published by Oracle
    America in 2010.
  * New function pkg2HTML() in tools to create single-page HTML
    reference manuals for R packages.
  * The byte code evaluator now uses less C stack space for recursive
    calls to byte-compiled functions. It also makes more of an effort
    to avoid allocations for scalar return values.
  * New completion option backtick (disabled by default) allows
    non-syntactic completions to be wrapped in backquotes. This is
    currently only useful for Jupyter notebooks via the IRkernel
    package, and may cause problems for other backends.
  INSTALLATION:
  * The parser has been updated to work with bison 3.8.2, which is
    now used for the pre-generated parsers in gram.c, file.c, and
    gramRd.c. A few parser error messages have changed, which may
    affect code that relies on exact messages.
  INSTALLATION on a UNIX-ALIKE:
  * System valgrind headers are now required to use configure option
  - -with-valgrind-instrumentation with value 1 or 2.
  * configure will warn if it encounters a 32-bit build, as that is
    nowadays almost untested.
  * Environment variable R_SYSTEM_ABI is no longer used and so no
    longer recorded in etc/Renviron (it was not on Windows and was
    only ever used when preparing package tools).
  * If the libdeflate library and headers are available, libdeflate
    rather than libz is used to (de)compress R objects in lazy-load
    databases.  Typically tasks spend up to 5% of their time on such
    operations, although creating lazy-data databases is one of the
    exceptions.
    This can be suppressed if the library is available by the
    configure option --without-libdeflate-compression.
  * configure option --enable-lto=check has not worked reliably since
    2019 and has been removed.
  * The minimum autoconf requirement for a maintainer build has been
    increased to autoconf 2.71.
    It is intended to increase this to 2.72 for R 4.5.0: the
    distributed configure file was generated using 2.72.
  * The minimum version requirement for an external LAPACK has been
    reduced to 3.9.0.
  * No default C++ compiler is set if no C++17 compiler is detected:
    there is no longer an automatic fallback to C++14 or C++11.
    Compilers from the last five years should have sufficient
    support: for others macros CXX and CXXSTD can be set in file
    config.site to provide a fallback if needed.
    The Objective-C++ compiler now by default uses the standard
    selected by R for C++ (currently C++17) rather than the default
    standard for the C++ compiler (which on macOS is still C++98).
  INSTALLATION on macOS:
  * A new configure option --with-newAccelerate makes use of Apple's
    'new' BLAS / LAPACK interfaces in their Accelerate framework.
    Those interfaces are only available in macOS 13.3 or later, and
    building requires SDK 13.3 or later (from the Command Line Tools
    or Xcode 14.3 or later).
    By default the option uses new Accelerate for BLAS calls: to also
    use it for LAPACK use option --with-newAccelerate=lapack.  The
    later interfaces provide LAPACK 3.9.1 rather than 3.2.1: 3.9.1 is
    from 2021-04 and does not include the improved algorithms
    introduced in LAPACK 3.10.0 (including for BLAS calls).
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools44, an update of the Rtools43 toolchain.  It is
    based on GCC 13 and newer versions of MinGW-W64, binutils and
    libraries (targeting 64-bit Intel CPUs).  R-devel can no longer
    be built using Rtools43 without changes.
  * Rtools44 has experimental support for 64-bit ARM (aarch64) CPUs
    _via_ the LLVM 17 toolchain using lld, clang/flang-new and
    libc++.
  UTILITIES:
  * R CMD check notes when S4-style exports are used without
    declaring a strong dependence on package methods.
  * tools::checkRd() (used by R CMD check) detects more problems with
    \Sexpr-based dynamic content, including bad nesting of \Sexprs
    and invalid arguments.
  * tools::checkRd() now reports Rd titles and section names ending
    in a period; this is ignored by R CMD check unless environment
    variable _R_CHECK_RD_CHECKRD_MINLEVEL_ is set to -5 or smaller.
  * R CMD check now notes Rd files without an \alias, as long
    documented in 'Writing R Extensions' §1.3.1.  The check for a
    missing \description has been moved from tools::checkRd() to
    tools::checkRdContents().
  * R CMD check now visits inst/NEWS.Rd and OS-specific man
    subdirectories when checking Rd files.
  * tools::checkDocFiles() and tools::checkRdContents() now also
    check internal Rd files by default, but "specially" (ignoring
    missing documentation of arguments).
  * R CMD Rdiff gets option --useEx.
  * R CMD check now warns on non-portable uses of Fortran KIND such
    as INTEGER(KIND=4) and REAL(KIND=8).
    To see the failing lines set environment variable
    _R_CHECK_FORTRAN_KIND_DETAILS_ to a true value.
  * When checking Rd files, R CMD check now notes some of the "lost
    braces" that tools::checkRd() finds.  Typical problems are Rd
    macros missing the initial backslash (e.g., code{...}), in-text
    set notation (e.g., {1, 2}, where the braces need escaping), and
    \itemize lists with \describe-style entries of the form
    \item{label}{description}.
  * R CMD INSTALL (and hence check) will compile C++ code with
  - DR_NO_REMAP if environment variable _R_CXX_USE_NO_REMAP_ is set
    to a true value.  It is planned that this will in future become
    the default for compiling C++.
  * The new built-in Rd macro \dontdiff{} can be used to mark example
    code whose output should be ignored when comparing check output
    to reference output (tests/Examples/&lt;pkg&gt;-Ex.Rout.save).  The
    \dontdiff tag, like \donttest, is _not_ shown on the rendered
    help page, so provides a clean alternative to ##
    IGNORE_RDIFF_(BEGIN|END) comments.
  * R CMD build when there is no NAMESPACE, now uses the recommended
    exportPattern("^[^.]"), instead of exporting everything.
  * R CMD check now warns about non-ASCII characters in the NAMESPACE
    file (in addition to R files). Such packages are not portable and
    may fail to install on some platforms.
  C-LEVEL FACILITIES:
  * Headers R_ext/Applic.h and R-ext/Linpack.h used to include
    R_ext/BLAS.h although this was undocumented and unneeded by their
    documented entry points.  They no longer do so.
  * New function R_missing(), factored out from do_missing(), used to
    fix PR#18579.
  * SEXP type S4SXP has been renamed to OBJSXP to support
    experimenting with alternative object systems.  The S4SXP value
    can still be used in C code but is now deprecated.  Based on
    contributions from the R Consortium's Object-Oriented Programming
    Working Group.
  * New function pow1p(x,y) for accurate (1+x)^y.
  * mkCharLenCE was incorrectly documented to take a size_t length
    but was implemented with int (and character strings in R are
    limited to 2^31 - 1 bytes).
  DEPRECATED AND DEFUNCT:
  * data() no longer handles zipped data from long-defunct (since R
    2.13.0) --use-zip-data installations.
  * The legacy graphics devices pictex() and xfig() are now
    deprecated.  They do not support recent graphics enhancements and
    their font handling is rudimentary. The intention is to retain
    them for historical interest as long as they remain somewhat
    functional.
  * Support for encoding = "MacRoman" has been removed from the pdf()
    and postscript() devices - this was a legacy encoding supporting
    classic macOS up to 2001 and no longer has universal libiconv
    support.
  * is.R() is deprecated as no other S dialect is known to be in use
    (and this could only identify historical dialects, not future
    ones).
    Further information on calls can be obtained by setting the
    environment variable _R_DEPRECATED_IS_R_ to error which turns the
    deprecation warning into an error and so by default gives a
    traceback.  (This is done by R CMD check --as-cran.)
  * UseMethod() no longer forwards local variables assigned in the
    generic function into method call environments before evaluating
    the method body. This makes method calls behave more like
    standard function calls and makes method code easier to analyze
    correctly.
  * The twelve as.data.frame.&lt;class&gt;() methods which were deprecated
    only via _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ and in R CMD
    check --as-cran are formally deprecated now in favour of calling
    as.data.frame() or as.data.frame.vector().  The deprecation
    "check" now works also when as.data.frame() is S4 generic thanks
    to Ivan Krylov.
  * The default method for the directional comparison operators &lt;, &gt;,
    &lt;=, and &gt;= now signals an error when one of the operands is a
    language object, i.e. a symbol or a call.
  * For terms.formula(), deprecate abb and neg.out arguments
    _formally_ in addition to just documenting it.
  BUG FIXES:
  * The methods package is more robust to not being attached to the
    search path.  More work needs to be done.
  * pairwise.t.test() misbehaved when subgroups had 0 DF for
    variance, even with pool.sd = TRUE.  (PR#18594 by Jack Berry).
  * Probability distribution functions [dpq]&lt;distrib&gt;(x, *), but also
    bessel[IKJY](x, .) now consistently preserve attributes(x) when
    length(x) == 0, e.g., for a 2 x 0 matrix, thanks to Karolis
    Koncevičius' report PR#18509.
  * Group "Summary" computations such as sum(1:3, 4, na.rm = 5, NA,
    7, na.rm = LL) now give an error instead of either 17 or NN for
    LL true or false, as proposed by Ivan Krylov on the R-devel
    mailing list.  (This also means it is now an error to specify
    na.rm more than once.)
  * as.complex(x) now returns complex(real = x, imaginary = 0) for
    _all_ numerical and logical x, notably also for NA or
    NA_integer_.
  * Directories are now omitted by file.copy(, recursive = FALSE) and
    in file.append() (PR#17337).
  * gsub() and sub() are now more robust to integer overflow when
    reporting errors caused by too large input strings (PR#18346).
  * Top-level handlers are now more robust to attempts to remove a
    handler whilst handlers are running (PR#18508).
  * The handling of Alt+F4 in dialogs created on Windows using
    GraphApp has been fixed (PR#13870).
  * density() more consistently computes grid values for the
    FFT-based convolution, following Robert Schlicht's analysis and
    proposal in PR#18337, correcting density values typically by a
    factor of about 0.999.  Argument old.coords = TRUE provides back
    compatibility.
  * palette.colors() gains a name argument that defaults to FALSE
    controlling whether the vector of colours that is returned has
    names (where possible).  PR#18529.
  * tools::xgettext() no longer extracts the (non-translatable) class
    names from warningCondition and errorCondition calls.
  * S3method(&lt;gen&gt;, &lt;class&gt;, &lt;func&gt;) in the NAMESPACE file now works
    (again) when &lt;func&gt; is visible from the namespace, e.g.,
    imported, or in base.
  * getParseData(f) now also works for a function defined in the
    first of several &lt;pkg&gt;/R/*.R source files, thanks to Kirill
    Müller's report and Duncan Murdoch's patch in PR#16756.
  * Rd \Sexpr macros with nested #ifdef conditionals were not
    processed.
  * A non-blocking connection with non-default encoding (such as a
    socket) now correctly returns from readLines() after new data has
    arrived also when its EOF had been reached previously.  Thanks to
    Peter Meilstrup's report on R-devel and Ivan Krylov's report and
    patch proposal in PR#18555.
  * tools::checkRdContents() failed to detect empty argument
    descriptions when they spanned multiple lines, including those
    generated by prompt().  These cases are now noted by R CMD check.
  * Plain-text help no longer outputs spurious colons in the
    arguments list (for multi-line \item labels in the Rd source).
  * kappa() and rcond() work correctly in more cases; kappa(., norm =
    "2") now warns that it computes the 1-norm with (default) exact =
    FALSE; prompted by Mikael Jagan's quite comprehensive PR#18543.
  * Rd skeletons generated by prompt() or promptData() now use a
    dummy title (so R CMD build works).  tools::checkRdContents() has
    been updated to detect such template leftovers, including from
    promptPackage().
  * When S4 method dispatch fails because no method was found, the
    error message now includes the signature argument names; thanks
    to Michael Chirico's proposal on the R-devel list.
  * withAutoprint({ .. }) now preserves srcrefs previously lost,
    thanks to Andrew Simmons' report plus fix in PR#18572.
  * transform.data.frame() no longer adjusts names; in particular,
    untransformed variables are kept as-is, including those with
    syntactically invalid names (PR#17890).
  * The keep.source option for Rd \Sexpr blocks is no longer ignored.
  * The formula methods for t.test() and wilcox.test() now catch when
    paired is passed, addressing PR#14359; use Pair(x1, x2) ~ 1 for a
    paired test.
  * The level reported in the browser prompt was often too large. It
    now shows the number of browser contexts on the stack.
  * For cbind() and rbind(), the optional deparse.level argument is
    now properly passed to methods, thanks to Mikael Jagan's PR#18579
    and comments there.
  * Some error and warning messages for large ('long vector')
    matrix(v, nr, nc) and dim(m) &lt;- d are now correct about sizes,
    using long long formatting, fixing PR#18612 (and more) reported
    by Mikael Jagan.
  * readChar(useBytes = TRUE) now terminates strings even when the
    underlying connection uses extra spaces in the input buffer.
    This fixes problems with extra garbage seen with gzip
    connections, PR#18605.
  * Named capture in PCRE regular expressions now works also with
    more than 127 named groups (PR#18588).
  * Datetime functions are now robust against long jumps when dealing
    with internal time zone changes.  This avoids confusing warnings
    about an invalid time zone, previously triggered by turning
    warnings into errors or handling them via tryCatch (PR#17966,
    PR#17780).
  * Datetime functions now restore even an empty TZ environment
    variable after internal time zone changes (PR#17724).  This makes
    results of datetime functions with this (typically unintentional)
    setting more predictable.
  * drop.terms(*) now drops response as by default, keep.response =
    FALSE, fixing PR#18564 thanks to Mikael Jagan.
  * dummy.coef(.) now also works for lm()-models with character
    categorical predictor variables rather than factor ones, fixing
    PR#18635 reported by Jinsong Zhao.
  * formals(f) &lt;- formals(f) now also works for a function w/o
    arguments and atomic _constant_ body(f).
  * Correct as.function(&lt;invalid list&gt;, .)'s error message.
  * removeSource() is yet more thorough in finding and removing
    "srcref" and the other source references from parsed R language
    chunks, fixing PR#18638 thanks to Andrew Simmons.
  * dgeom() is more accurate now, notably when its result is very
    small, fixing PR#18642 thanks to the proposal of Morten Welinder,
    also improving other instances where C level binom_raw(x, n, ..)
    has x == 0 or x== n.
  * warning() with options(warn = 1) has improved output for
    multi-line messages.
  * axis.Date() and axis.POSIXct() now respect the par("lab") setting
    for the number of pretty() intervals.
  * Comparisons for language objects (which are based on deparsing)
    are now more careful about using accurate deparsed results
    (PR#18676).
  * Plain-text help (Rd2txt) now correctly preserves blank lines
    following single-line \dontrun code.
  * &lt;POSIXlt&gt;[*] no longer sets wrong "balanced" attribute, fixing
    PR#18681 thanks to Mikael Jagan.
  * str(&lt;classed-call&gt;) now deparses the call as expected, fixing
    PR#18684, reported by Dave Slager.
  * In Rd examples, code following the closing brace of a \dontrun,
    \dontshow or \donttest tag on the same line is no longer skipped
    when R CMD check runs the examples.
  * as.data.frame(matrix(*, ncol=0)) now gets valid names() and
    colnames(); reported by Davis Vaughan on the R-devel list.
  * Internal Mathlib function stirlerr(n) is now almost fully
    (52-bit) accurate for all n &gt;= ~5.9 and more accurate also in the
    range 1 -- 5.9.  This entails small ("after 12th decimal")
    changes in density functions, e.g., dgamma() in _some_ regions of
    their support.  The fix was partly prompted by Morten Welinder's
    PR#18640.
  * Numbers like 9876543.2 are now considered non-integer by Mathlib
    internal R_nonint(), amending original fix of PR#15734.
  * Rd comment lines no longer cause broken paragraphs in the
    rendered PDF and plain-text help. In code blocks, pure comment
    lines (starting with %) no longer produce an empty line.
  * xtabs(Freq ~ .) now consistently defaults to na.action = na.pass,
    using na.rm = FALSE (added as an argument) when summing over Freq
    (PR#17770).
  * tools::testInstalledPackage() is no longer silent about failures
    from running examples or tests and its return code no longer
    ignores failures from checking vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1718366400">- CHANGES IN R 4.4.1:
  C-LEVEL FACILITIES:
  * Functions R_atof and R_strtod declared in header R_ext/Utils.h
    are now documented in 'Writing R Extensions' and so formally part
    of the API.
  * The non-API entry points Rf_setSVector, Rf_StringFalse,
    Rf_StringTrue and Rf_isBlankString have been added to those
    reported by R CMD check.
  * The new function Rf_allocLang is now available. This provides an
    alternative to the idiom of calling Rf_allocList followed by
    SET_TYPEOF.
  UTILITIES:
  * R CMD check now reports as warnings what gfortran calls 'Fortran
    2018 deleted features', all of which have long been marked as
    'obsolescent' and some of which were deleted in Fortran 2008 or
    earlier.  Fortran compilers are no longer required to support
    these.
  BUG FIXES:
  * as.numeric(), scan(), type.convert() and other places which use
    the internal C function R_strtod now require a _non-empty_ digit
    sequence in a decimal or binary exponent.  This aligns with the
    C/POSIX standard for strtod and with ?NumericConstants.
  * as.data.frame(m, make.names=NA) now works correctly for a matrix
    m with NA's in row names.
  * The error message from &lt;POSIXlt&gt;[["hour"]] and similar now
    mentions *[[, "hour"]], as wished for in PR#17409 and proposed by
    Michael Chirico.
  * qbinom() and potentially qpois(), qnbinom(), no longer sometimes
    fail accurate inversion (of pbinom(), etc), thanks to Christopher
    Chang's report and patch in PR#18711.
  * The internal help server on Windows can again serve requests sent
    in quick succession, fixing a regression in R 4.4.0.
  * debugcall(&lt;S3Generic&gt;()) now also works when a corresponding
    S4-generic version is in the methods cache (PR#18143).
  * Package tools' toTitleCase(ch0) now returns character(0) when ch0
    is of zero length; fixing PR#18724, reported by David Hugh Jones.
  * R CMD check is no longer broken (without a check result and no
    explanation in 00check.log) for a package which declares an
    invalid VignetteBuilder in DESCRIPTION but has no vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1730376000">- CHANGES IN R 4.4.2:
  C-LEVEL FACILITIES:
  * The S-compatibility macros F77_COM and F77_COMDECL defined in
    header R_ext/RS.h are deprecated and will be removed shortly.  We
    could find no record of their use.
  BUG FIXES:
  * Mathlib function lgammacor(x) no longer warns about underflow to
    zero for large x.
  * Text widths and heights were incorrectly reported by the Quartz
    device if the drawing context didn't exist yet (typically when
    drawing off-screen to a window that is yet to appear, see
    PR#18591).
  * The Quartz device could segfault in cases where paths with spaces
    are used in the new glyph drawing API.  Thanks to Tomek
    Gieorgijewski (PR#18758).
  * On macOS in R CRAN builds, it is again possible to read
    little-endian UTF-16 text with a BOM from a connection using
    encoding="UTF-16".  Users building R from source should avoid
    using the system libiconv in macOS 14.1 and later.
  * methods' internal .requirePackage() now re-enables primitive
    method dispatch when needed; thanks to Ivan Krylov for
    demystifying CRAN package check failures on the R-devel mailing
    list.</changelog>
</package>
<package pkgid="f800da03cd787219a164a3b60c77921c420fb9b00e8ac4b65f6bce3196551ca88f56bb3ffe466efe5c461a682e6c0acac191cc9b595706f6983aa742b52280e8" name="R-stats4" arch="i586">
  <version epoch="0" ver="4.4.2" rel="51.0.2.2.sr20241103"/>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1620302400">- To get in sync with d:l:R:autoCRAN the Matrix package's split
  in -devel was reversed.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339200">- improved spec file according to comments of dimstar in
  https://build.opensuse.org/request/show/892685</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339201">- CHANGES IN R 4.1.0:
  FUTURE DIRECTIONS:
  * It is planned that the 4.1.x series will be the last to support
    32-bit Windows, with production of binary packages for that
    series continuing until early 2023.
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Data set esoph in package datasets now provides the correct
    numbers of controls; previously it had the numbers of cases added
    to these.  (Reported by Alexander Fowler in PR#17964.)
  NEW FEATURES:
  * www.omegahat.net is no longer one of the repositories known by
    default to setRepositories().  (Nowadays it only provides source
    packages and is often unavailable.)
  * Function package_dependencies() (in package tools) can now use
    different dependency types for direct and recursive dependencies.
  * The checking of the size of tarball in R CMD check --as-cran
    &lt;pkg&gt; may be tweaked via the new environment variable
    _R_CHECK_CRAN_INCOMING_TARBALL_THRESHOLD_, as suggested in
    PR#17777 by Jan Gorecki.
  * Using c() to combine a factor with other factors now gives a
    factor, an ordered factor when combining ordered factors with
    identical levels.
  * apply() gains a simplify argument to allow disabling of
    simplification of results.
  * The format() method for class "ftable" gets a new option justify.
    (Suggested by Thomas Soeiro.)
  * New ...names() utility.  (Proposed by Neal Fultz in PR#17705.)
  * type.convert() now warns when its as.is argument is not
    specified, as the help file always said it _should_.  In that
    case, the default is changed to TRUE in line with its change in
    read.table() (related to stringsAsFactor) in R 4.0.0.
  * When printing list arrays, classed objects are now shown _via_
    their format() value if this is a short enough character string,
    or by giving the first elements of their class vector and their
    length.
  * capabilities() gets new entry "Rprof" which is TRUE when R has
    been configured with the equivalent of --enable-R-profiling (as
    it is by default).  (Related to Michael Orlitzky's report
    PR#17836.)
  * str(xS4) now also shows extraneous attributes of an S4 object
    xS4.
  * Rudimentary support for vi-style tags in rtags() and R CMD rtags
    has been added.  (Based on a patch from Neal Fultz in PR#17214.)
  * checkRdContents() is now exported from tools; it and also
    checkDocFiles() have a new option chkInternal allowing to check
    Rd files marked with keyword "internal" as well.  The latter can
    be activated for R CMD check via environment variable
    _R_CHECK_RD_INTERNAL_TOO_.
  * New functions numToBits() and numToInts() extend the raw
    conversion utilities to (double precision) numeric.
  * Functions URLencode() and URLdecode() in package utils now work
    on vectors of URIs.  (Based on patch from Bob Rudis submitted
    with PR#17873.)
  * path.expand() can expand ~user on most Unix-alikes even when
    readline is not in use.  It tries harder to expand ~, for example
    should environment variable HOME be unset.
  * For HTML help (both dynamic and static), Rd file links to help
    pages in external packages are now treated as references to
    topics rather than file names, and fall back to a file link only
    if the topic is not found in the target package. The earlier rule
    which prioritized file names over topics can be restored by
    setting the environment variable _R_HELP_LINKS_TO_TOPICS_ to a
    false value.
  * c() now removes NULL arguments before dispatching to methods,
    thus simplifying the implementation of c() methods, _but_ for
    back compatibility keeps NULL when it is the first argument.
    (From a report and patch proposal by Lionel Henry in PR#17900.)
  * Vectorize()'s result function's environment no longer keeps
    unneeded objects.
  * Function ...elt() now propagates visibility consistently with
    ..n.  (Thanks to Lionel Henry's PR#17905.)
  * capture.output() no longer uses non-standard evaluation to
    evaluate its arguments.  This makes evaluation of functions like
    parent.frame() more consistent.  (Thanks to Lionel Henry's
    PR#17907.)
  * packBits(bits, type="double") now works as inverse of
    numToBits().  (Thanks to Bill Dunlap's proposal in PR#17914.)
  * curlGetHeaders() has two new arguments, timeout to specify the
    timeout for that call (overriding getOption("timeout")) and TLS
    to specify the minimum TLS protocol version to be used for
    https:// URIs (_inter alia_ providing a means to check for sites
    using deprecated TLS versions 1.0 and 1.1).
  * For nls(), an optional constant scaleOffset may be added to the
    denominator of the relative offset convergence test for cases
    where the fit of a model is expected to be exact, thanks to a
    proposal by John Nash.  nls(*, trace=TRUE) now also shows the
    convergence criterion.
  * Numeric differentiation _via_ numericDeriv() gets new optional
    arguments eps and central, the latter for taking central divided
    differences.  The latter can be activated for nls() via
    nls.control(nDcentral = TRUE).
  * nls() now passes the trace and control arguments to getInitial(),
    notably for all self-starting models, so these can also be fit in
    zero-noise situations via a scaleOffset.  For this reason, the
    initial function of a selfStart model must now have ... in its
    argument list.
  * bquote(splice = TRUE) can now splice expression vectors with
    attributes: this makes it possible to splice the result of
    parse(keep.source = TRUE).  (Report and patch provided by Lionel
    Henry in PR#17869.)
  * textConnection() gets an optional name argument.
  * get(), exists(), and get0() now signal an error if the first
    argument has length greater than 1.  Previously additional
    elements were silently ignored.  (Suggested by Antoine Fabri on
    R-devel.)
  * R now provides a shorthand notation for creating functions, e.g.
    \(x) x + 1 is parsed as function(x) x + 1.
  * R now provides a simple native forward pipe syntax |&gt;.  The
    simple form of the forward pipe inserts the left-hand side as the
    first argument in the right-hand side call.  The pipe
    implementation as a syntax transformation was motivated by
    suggestions from Jim Hester and Lionel Henry.
  * all.equal(f, g) for functions now by default also compares their
    environment(.)s, notably via new all.equal method for class
    function.  Comparison of nls() fits, e.g., may now need
    all.equal(m1, m2, check.environment = FALSE).
  * .libPaths() gets a new option include.site, allowing to _not_
    include the site library.  (Thanks to Dario Strbenac's suggestion
    and Gabe Becker's PR#18016.)
  * Lithuanian translations are now available.  (Thanks to Rimantas
    Zakauskas.)
  * names() now works for DOTSXP objects.  On the other hand, in
    R-lang, the R language manual, we now warn against relying on the
    structure or even existence of such dot-dot-dot objects.
  * all.equal() no longer gives an error on DOTSXP objects.
  * capabilities("cairo") now applies only to the file-based devices
    as it is now possible (if very unusual) to build R with Cairo
    support for those but not for X11().
  * There is optional support for tracing the progress of
    loadNamespace() - see its help.
  * (Not Windows.)  l10n_info() reports an additional element, the
    name of the encoding as reported by the OS (which may differ from
    the encoding part (if any) of the result from
    Sys.getlocale("LC_CTYPE").
  * New function gregexec() which generalizes regexec() to find _all_
    disjoint matches and well as all substrings corresponding to
    parenthesized subexpressions of the given regular expression.
    (Contributed by Brodie Gaslam.)
  * New function charClass() in package utils to query the
    wide-character classification functions in use (such as
    iswprint).
  * The names of quantile()'s result no longer depend on the global
    getOption("digits"), but quantile() gets a new optional argument
    digits = 7 instead.
  * grep(), sub(), regexp and variants work considerably faster for
    long factors with few levels.  (Thanks to Michael Chirico's
    PR#18063.)
  * Provide grouping of x11() graphics windows within a window
    manager such as Gnome or Unity; thanks to a patch by Ivan Krylov
    posted to R-devel.
  * The split() method for class data.frame now allows the f argument
    to be specified as a formula.
  * sprintf now warns on arguments unused by the format string.
  * New palettes "Rocket" and "Mako" for hcl.colors() (approximating
    palettes of the same name from the 'viridisLite' package).
    Contributed by Achim Zeileis.
  * The base environment and its namespace are now locked (so one can
    no longer add bindings to these or remove from these).
  * Rterm handling of multi-byte characters has been improved,
    allowing use of such characters when supported by the current
    locale.
  * Rterm now accepts ALT+ +xxxxxxxx sequences to enter Unicode
    characters as hex digits.
  * Environment variable LC_ALL on Windows now takes precedence over
    LC_CTYPE and variables for other supported categories, matching
    the POSIX behaviour.
  * duplicated() and anyDuplicated() are now optimized for integer
    and real vectors that are known to be sorted via the ALTREP
    framework. Contributed by Gabriel Becker via PR#17993.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 14
    and so packages that provide graphics devices should be
    reinstalled.
  * Graphics devices should now specify deviceVersion to indicate
    what version of the graphics engine they support.
  * Graphics devices can now specify deviceClip.  If TRUE, the
    graphics engine will never perform any clipping of output itself.
    The clipping that the graphics engine does perform (for both
    canClip = TRUE and canClip = FALSE) has been improved to avoid
    producing unnecessary artifacts in clipped output.
  * The grid package now allows gpar(fill) to be a linearGradient(),
    a radialGradient(), or a pattern().  The viewport(clip) can now
    also be a grob, which defines a clipping path, and there is a new
    viewport(mask) that can also be a grob, which defines a mask.
    These new features are only supported so far on the Cairo-based
    graphics devices and on the pdf() device.
  * (Not Windows.)  A warning is given when a Cairo-based type is
    specified for a png(), jpeg(), tiff() or bmp() device but Cairo
    is unsupported (so type = "Xlib" is tried instead).
  * grSoftVersion() now reports the versions of FreeType and
    FontConfig if they are used directly (not _via_ Pango), as is
    most commonly done on macOS.
  C-LEVEL FACILITIES:
  * The _standalone_ libRmath math library and R's C API now provide
    log1pexp() again as documented, and gain log1mexp().
  INSTALLATION on a UNIX-ALIKE:
  * configure checks for a program pkgconf if program pkg-config is
    not found.  These are now only looked for on the path (like
    almost all other programs) so if needed specify a full path to
    the command in PKG_CONFIG, for example in file config.site.
  * C99 function iswblank is required - it was last seen missing ca
    2003 so the workaround has been removed.
  * There are new configure options --with-internal-iswxxxxx,
  - -with-internal-towlower and --with-internal-wcwidth which allows
    the system functions for wide-character classification,
    case-switching and width (wcwidth and wcswidth) to be replaced by
    internal ones.  The first has long been used on macOS, AIX (and
    Windows) but this enables it to be unselected there and selected
    for other platforms (it is the new default on Solaris).  The
    second is new in this version of R and is selected by default on
    macOS and Solaris.  The third has long been the default and
    remains so as it contains customizations for East Asian
    languages.
    System versions of these functions are often minimally
    implemented (sometimes only for ASCII characters) and may not
    cover the full range of Unicode points: for example Solaris (and
    Windows) only cover the Basic Multilingual Plane.
  * Cairo installations without X11 are more likely to be detected by
    configure, when the file-based Cairo graphics devices will be
    available but not X11(type = "cairo").
  * There is a new configure option --with-static-cairo which is the
    default on macOS.  This should be used when only static cairo
    (and where relevant, Pango) libraries are available.
  * Cairo-based graphics devices on platforms without Pango but with
    FreeType/FontConfig will make use of the latter for font
    selection.
  LINK-TIME OPTIMIZATION on a UNIX-ALIKE:
  * Configuring with flag --enable-lto=R now also uses LTO when
    installing the recommended packages.
  * R CMD INSTALL and R CMD SHLIB have a new flag --use-LTO to use
    LTO when compiling code, for use with R configured with
  - -enable-lto=R.  For R configured with --enable-lto, they have
    the new flag --no-use-LTO.
    Packages can opt in or out of LTO compilation _via_ a UseLTO
    field in the DESCRIPTION file.  (As usual this can be overridden
    by the command-line flags.)
  BUILDING R on Windows:
  * for GCC &gt;= 8, FC_LEN_T is defined in config.h and hence character
    lengths are passed from C to Fortran in _inter alia_ BLAS and
    LAPACK calls.
  * There is a new text file src/gnuwin32/README.compilation, which
    outlines how C/Fortran code compilation is organized and
    documents new features:
  * R can be built with Link-Time Optimization with a suitable
    compiler - doing so with GCC 9.2 showed several
    inconsistencies which have been corrected.
  * There is support for cross-compiling the C and Fortran code
    in R and standard packages on suitable (Linux) platforms.
    This is mainly intended to allow developers to test later
    versions of compilers - for example using GCC 9.2 or 10.x has
    detected issues that GCC 8.3 in Rtools40 does not.
  * There is experimental support for cross-building R packages
    with C, C++ and/or Fortran code.
  * The R installer can now be optionally built to support a single
    architecture (only 64-bit or only 32-bit).
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++14 where
    available (which it is on all currently checked platforms): if
    not (as before) C++11 is used if available otherwise C++ is not
    supported.
    Packages which specify C++11 will still be installed using C++11.
    C++14 compilers may give deprecation warnings, most often for
    std::random_shuffle (deprecated in C++14 and removed in C++17).
    Either specify C++11 (see 'Writing R Extensions') or modernize
    the code and if needed specify C++14.  The latter has been
    supported since R 3.4.0 so the package's DESCRIPTION would need
    to include something like
    Depends: R (&gt;= 3.4)
  PACKAGE INSTALLATION on Windows:
  * R CMD INSTALL and R CMD SHLIB make use of their flag --use-LTO
    when the LTO_OPT make macro is set in file etc/${R_ARCH}/Makeconf
    or in a personal/site Makevars file.  (For details see 'Writing R
    Extensions' SS4.5.)
    This provides a valuable check on code consistency.  It does work
    with GCC 8.3 as in Rtools40, but that does not detect everything
    the CRAN checks with current GCC do.
  PACKAGE INSTALLATION on macOS:
  * The default personal library directory on builds with
  - -enable-aqua (including CRAN builds) now differs by CPU type,
    one of
    ~/Library/R/x86_64/x.y/library
    ~/Library/R/arm64/x.y/library
    This uses the CPU type R (and hence the packages) were built for,
    so when a x86_64 build of R is run under Rosetta emulation on an
    arm64 Mac, the first is used.
  UTILITIES:
  * R CMD check can now scan package functions for bogus return
    statements, which were possibly intended as return() calls (wish
    of PR#17180, patch by Sebastian Meyer). This check can be
    activated via the new environment variable
    _R_CHECK_BOGUS_RETURN_, true for --as-cran.
  * R CMD build omits tarballs and binaries of previous builds from
    the top-level package directory.  (PR#17828, patch by Sebastian
    Meyer.)
  * R CMD check now runs sanity checks on the use of LazyData, for
    example that a data directory is present and that
    LazyDataCompression is not specified without LazyData and has a
    documented value.  For packages with large LazyData databases
    without specifying LazyDataCompression, there is a reference to
    the code given in 'Writing R Extensions' SS1.1.6 to test the
    choice of compression (as in all the CRAN packages tested a
    non-default method was preferred).
  * R CMD build removes LazyData and LazyDataCompression fields from
    the DESCRIPTION file of packages without a data directory.
  ENCODING-RELATED CHANGES:
  * The parser now treats \Unnnnnnnn escapes larger than the upper
    limit for Unicode points (\U10FFFF) as an error as they cannot be
    represented by valid UTF-8.
    Where such escapes are used for outputting non-printable
    (including unassigned) characters, 6 hex digits are used (rather
    than 8 with leading zeros).  For clarity, braces are used, for
    example \U{0effff}.
  * The parser now looks for non-ASCII spaces on Solaris (as
    previously on most other OSes).
  * There are warnings (including from the parser) on the use of
    unpaired surrogate Unicode points such as \uD834.  (These cannot
    be converted to valid UTF-8.)
  * Functions nchar(), tolower(), toupper() and chartr() and those
    using regular expressions have more support for inputs with a
    marked Latin-1 encoding.
  * The character-classification functions used (by default) to
    replace the system iswxxxxx functions on Windows, macOS and AIX
    have been updated to Unicode 13.0.0.
    The character-width tables have been updated to include new
    assignments in Unicode 13.0.0.
  * The code for evaluating default (extended) regular expressions
    now uses the same character-classification functions as the rest
    of R (previously they differed on Windows, macOS and AIX).
  * There is a build-time option to replace the system's
    wide-character wctrans C function by tables shipped with R: use
    configure option --with-internal-towlower or (on Windows)
  - DUSE_RI18N_CASE in CFLAGS when building R.  This may be needed
    to allow tolower() and toupper() to work with Unicode characters
    beyond the Basic Multilingual Plane where not supported by system
    functions (e.g. on Solaris where it is the new default).
  * R is more careful when truncating UTF-8 and other multi-byte
    strings that are too long to be printed, passed to the system or
    libraries or placed into an internal buffer.  Truncation will no
    longer produce incomplete multibyte characters.
  DEPRECATED AND DEFUNCT:
  * Function plclust() from the package stats and
    package.dependencies(), pkgDepends(), getDepList(),
    installFoundDepends(), and vignetteDepends() from package tools
    are defunct.
  * Defunct functions checkNEWS() and readNEWS() from package tools
    and CRAN.packages() from utils have been removed.
  * R CMD config CXXCPP is defunct (it was deprecated in R 3.6.2).
  * parallel::detectCores() drops support for Irix (retired in 2013).
  * The LINPACK argument to chol.default(), chol2inv(),
    solve.default() and svd() has been defunct since R 3.1.0.  It was
    silently ignored up to R 4.0.3 but now gives an error.
  * Subsetting/indexing, such as ddd[*] or ddd$x on a DOTSXP
    (dot-dot-dot) object ddd has been disabled; it worked by accident
    only and was undocumented.
  BUG FIXES:
  * Many more C-level allocations (mainly by malloc and strdup) are
    checked for success with suitable alternative actions.
  * Bug fix for replayPlot(); this was turning off graphics engine
    display list recording if a recorded plot was replayed in the
    same session.  The impact of the bug became visible if resize the
    device after replay OR if attempted another savePlot() after
    replay (empty display list means empty screen on resize or empty
    saved plot).
  * R CMD check etc now warn when a package exports non-existing S4
    classes or methods, also in case of no "methods" presence.
    (Reported by Alex Bertram; reproducible example and patch by
    Sebastian Meyer in PR#16662.)
  * boxplot() now also accepts calls for labels such as ylab, the
    same as plot().  (Reported by Marius Hofert.)
  * The help page for xtabs() now correctly states that addNA is
    setting na.action = na.pass among others.  (Reported as PR#17770
    by Thomas Soeiro.)
  * The R CMD check &lt;pkg&gt; gives a longer and more comprehensible
    message when DESCRIPTION misses dependencies, e.g., in Imports:.
    (Thanks to the contributors of PR#17179.)
  * update.default() now calls the generic update() on the formula to
    work correctly for models with extended formulas.  (As reported
    and suggested by Neal Fultz in PR#17865.)
  * The horizontal position of leaves in a dendrogram is now correct
    also with center = FALSE.  (PR#14938, patch from Sebastian
    Meyer.)
  * all.equal.POSIXt() no longer warns about and subsequently ignores
    inconsistent "tzone" attributes, but describes the difference in
    its return value (PR#17277).  This check can be disabled _via_
    the new argument check.tzone = FALSE as suggested by Sebastian
    Meyer.
  * as.POSIXct() now populates the "tzone" attribute from its tz
    argument when x is a logical vector consisting entirely of NA
    values.
  * x[[2^31]] &lt;- v now works.  (Thanks to the report and patch by
    Suharto Anggono in PR#17330.)
  * In log-scale graphics, axis() ticks and label positions are now
    computed more carefully and symmetrically in their range,
    typically providing _more_ ticks, fulfilling wishes in PR#17936.
    The change really corresponds to an improved axisTicks() (package
    grDevices), potentially influencing grid and lattice, for
    example.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now correct to at
    least five digits where it was catastrophically wrong,
    previously.
  * sum(df) and similar "Summary"- and "Math"-group member functions
    now work for data frames df with logical columns, notably also of
    zero rows.  (Reported to R-devel by Martin "b706".)
  * unsplit() had trouble with tibbles due to unsound use of rep(NA,
    len)-indexing, which should use NA_integer_ (Reported to R-devel
    by Mario Annau.)
  * pnorm(x, log.p = TRUE) underflows to -Inf slightly later.
  * show(&lt;hidden S4 generic&gt;) prints better and without quotes for
    non-hidden S4 generics.
  * read.table() and relatives treated an "NA" column name as missing
    when check.names = FALSE PR#18007.
  * Parsing strings containing UTF-16 surrogate pairs such as
    "\uD834\uDD1E" works better on some (uncommon) platforms.
    sprintf("%X", utf8ToInt("\uD834\uDD1E")) should now give "1D11E"
    on all platforms.
  * identical(x,y) is no longer true for differing DOTSXP objects,
    fixing PR#18032.
  * str() now works correctly for DOTSXP and related exotics, even
    when these are doomed.
    Additionally, it no longer fails for lists with a class and
    "irregular" method definitions such that e.g. lapply(*) will
    necessarily fail, as currently for different igraph objects.
  * Too long lines in environment files (e.g. Renviron) no longer
    crash R. This limit has been increased to 100,000 bytes.
    (PR#18001.)
  * There is a further workaround for FreeType giving incorrect
    italic font faces with cairo-based graphics devices on macOS.
  * add_datalist(*, force = TRUE) (from package tools) now actually
    updates an existing data/datalist file for new content.  (Thanks
    to a report and patch by Sebastian Meyer in PR#18048.)
  * cut.Date() and cut.POSIXt() could produce an empty last interval
    for breaks = "months" or breaks = "years".  (Reported as PR#18053
    by Christopher Carbone.)
  * Detection of the encoding of 'regular' macOS locales such as
    en_US (which is UTF-8) had been broken by a macOS change:
    fortunately these are now rarely used with en_US.UTF-8 being
    preferred.
  * sub() and gsub(pattern, repl, x, *) now keep attributes of x such
    as names() also when pattern is NA (PR#18079).
  * Time differences ("difftime" objects) get a replacement and a
    rep() method to keep "units" consistent.  (Thanks to a report and
    patch by Nicolas Bennett in PR#18066.)
  * The \RdOpts macro, setting defaults for \Sexpr options in an Rd
    file, had been ineffective since R 2.12.0: it now works again.
    (Thanks to a report and patch by Sebastian Meyer in PR#18073.)
  * mclapply and pvec no longer accidentally terminate parallel
    processes started before by mcparallel or related calls in
    package parallel (PR#18078).
  * grep and other functions for evaluating (extended) regular
    expressions handle in Unicode also strings not explicitly flagged
    UTF-8, but flagged native when running in UTF-8 locale.
  * Fixed a crash in fifo implementation on Windows (PR#18031).
  * Binary mode in fifo on Windows is now properly detected from
    argument open (PR#15600, PR#18031).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1622808000">- The line %{__install} -m 755 -d %{_infodir}
  no longer works in TW or Factory.
  But without that line it works everywhere. So this instruction
  was commented out of the spec file.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1628596800">- CHANGES IN R 4.1.1:
  NEW FEATURES:
  * require(pkg, quietly = TRUE) is quieter and in particular does
    not warn if the package is not found.
  DEPRECATED AND DEFUNCT:
  * Use of ftp:// URIs should be regarded as deprecated, with
    on-going support confined to method = "libcurl" and not routinely
    tested.  (Nowadays no major browser supports them.)
  * The non-default method = "internal" is deprecated for http:// and
    ftp:// URIs for both download.file and url.
  * On Windows, method = "wininet" is deprecated for http://,
    https:// and ftp:// URIs for both download.file and url.  (A
    warning is only given for ftp://.)
    For ftp:// URIs the default method is now "libcurl" if available
    (which it is on CRAN builds).
    method = "wininet" remains the default for http:// and https://
    URIs but if libcurl is available, using method = "libcurl" is
    preferred.
  INSTALLATION:
  * make check now works also without a LaTeX installation.  (Thanks
    to Sebastian Meyer's PR#18103.)
  BUG FIXES:
  * make check-devel works again in an R build configured with
  - -without-recommended-packages.
  * qnbinom(p, size, mu) for large size/mu is correct now in a range
    of cases (PR#18095); similarly for the (size, prob)
    parametrization of the negative binomial.  Also qpois() and
    qbinom() are better and or faster for extreme cases.  The
    underlying C code has been modularized and is common to all four
    cases of discrete distributions.
  * gap.axis is now part of the axis() arguments which are passed
    from bxp(), and hence boxplot().  (Thanks to Martin Smith's
    report and suggestions in PR#18109.)
  * .First and .Last can again be set from the site profile.
  * seq.int(from, to, *) and seq.default(..) now work better in large
    range cases where from-to is infinite where the two boundaries
    are finite.
  * all.equal(x,y) now returns TRUE correctly also when several
    entries of abs(x) and abs(y) are close to .Machine$double.xmax,
    the largest finite numeric.
  * model.frame() now clears the object bit when removing the class
    attribute of a value via na.action (PR#18100).
  * charClass() now works with multi-character strings on Windows
    (PR#18104, fixed by Bill Dunlap).
  * encodeString() on Solaris now works again in Latin-1 encoding on
    characters represented differently in UTF-8.  Support for
    surrogate pairs on Solaris has been improved.
  * file.show() on Windows now works with non-ASCII path names
    representable in the current native encoding (PR#18132).
  * Embedded R on Windows can now find R home directory via the
    registry even when installed only for the current user
    (PR#18135).
  * pretty(x) with finite x now returns finite values also in the
    case where the extreme x values are close in size to the maximal
    representable number .Machine$double.xmax.
    Also, it's been tweaked for very small ranges and when a boundary
    is close (or equal) to zero; e.g., pretty(c(0,1e-317)) no longer
    has negative numbers, currently still warning about a very small
    range, and pretty(2^-(1024 - 2^-1/(c(24,10)))) is more accurate.
  * The error message for not finding vignette files when weaving has
    correct file sizes now. (Thanks to Sebastian Meyer's PR#18154.)
  * dnbinom(20, &lt;large&gt;, 1) now correctly gives 0, and similar cases
    are more accurate with underflow precaution.  (Reported by Francisco Vera Alcivar in PR#18072.)</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635163200">- repaired https://bugzilla.suse.com/show_bug.cgi?id=1191380
  (rpmacros now go to rpmmacrodir)
- minor clean-ups in spec file</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635768000">- CHANGES IN R 4.1.2:
  C-LEVEL FACILITIES:
  * The workaround in headers R.h and Rmath.h (using namespace std;)
    for the Oracle Developer Studio compiler is no longer needed now
    C++11 is required so has been removed.  A couple more usages of
    log() (which should have been std::log()) with an int argument
    are reported on Solaris.
  * The undocumented limit of 4095 bytes on messages from the
    S-compatibility macros PROBLEM and MESSAGE is now documented and
    longer messages will be silently truncated rather than
    potentially causing segfaults.
  * If the R_NO_SEGV_HANDLER environment variable is non-empty, the
    signal handler for SEGV/ILL/BUS signals (which offers recovery
    user interface) is not set. This allows more reliable debugging
    of crashes that involve the console.
  DEPRECATED AND DEFUNCT:
  * The legacy S-compatibility macros PROBLEM, MESSAGE, ERROR, WARN,
    WARNING, RECOVER, ... are deprecated and will be hidden in R
    4.2.0. R's native interface of Rf_error and Rf_warning has long
    been preferred.
  BUG FIXES:
  * .mapply(F, dots, .) no longer segfaults when dots is not a list
    and uses match.fun(F) as always documented; reported by Andrew
    Simmons in PR#18164.
  * hist(&lt;Date&gt;, ...) and hist(&lt;POSIXt&gt;, ...)  no longer pass
    arguments for rect() (such as col and density) to axis().
    (Thanks to Sebastian Meyer's PR#18171.)
  * \Sexpr{ch} now preserves Encoding(ch). (Thanks to report and
    patch by Jeroen Ooms in PR#18152.)
  * Setting the RNG to "Marsaglia-Multicarry" e.g., by RNGkind(), now
    warns in more places, thanks to Andr'e Gillibert's report and
    patch in PR#18168.
  * gray(numeric(), alpha=1/2) no longer segfaults, fixing PR#18183,
    reported by Till Krenz.
  * Fixed dnbinom(x, size=&lt;very_small&gt;, .., log=TRUE) regression,
    reported by Martin Morgan.
  * as.Date.POSIXlt(x) now keeps names(x), thanks to Davis Vaughan's
    report and patch in PR#18188.
  * model.response() now strips an "AsIs" class typically, thanks to
    Duncan Murdoch's report and other discussants in PR#18190.
  * try() is considerably faster in case of an error and long call,
    as e.g., from some do.call().  Thanks to Alexander Kaever's
    suggestion posted to R-devel.
  * qqline(y = &lt;object&gt;) such as y=I(.), now works, see also
    PR#18190.
  * Non-integer mgp par() settings are now handled correctly in
    axis() and mtext(), thanks to Mikael Jagan and Duncan Murdoch's
    report and suggestion in PR#18194.
  * formatC(x) returns length zero character() now, rather than ""
    when x is of length zero, as documented, thanks to Davis
    Vaughan's post to R-devel.
  * removeSource(fn) now retains (other) attributes(fn).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1647000000">- CHANGES IN R 4.1.3:
  NEW FEATURES:
  * The default version of Bioconductor has been changed to 3.14.
    (This is used by setRepositories and the menus in GUIs.)
  UTILITIES:
  * R CMD check --as-cran has a workaround for a bug in versions of
    file up to at least 5.41 which mis-identify DBF files last
    changed in 2022 as executables.
  C-LEVEL FACILITIES:
  * The legacy S-compatibility macros SINGLE_* in R_ext/Constants.h
    (included by R.h) are deprecated and will be removed in R 4.2.0.
  BUG FIXES:
  * Initialization of self-starting nls() models with initialization
    functions following the pre-R-4.1.0 API (without the ...
    argument) works again for now, with a deprecation warning.
  * Fixed quoting of ~autodetect~ in Java setting defaults to avoid
    inadvertent user lookup due to leading ~, reported in PR#18231 by
    Harold Gutch.
  * substr(., start, stop) &lt;- v now treats _negative_ stop values
    correctly.  Reported with a patch in PR#18228 by Brodie Gaslam.
  * Subscripting an array x without dimnames by a
    length(dim(x))-column character matrix gave "random" non-sense,
    now an error; reported in PR#18244 by Mikael Jagan.
  * ...names() now matches names(list(...)) closely, fixing PR#18247.
  * all.equal(*, scale = s) now works as intended when length(s) &gt; 1,
    partly thanks to Michael Chirico's PR#18272.
  * print(x) for long vectors x now also works for named atomic
    vectors or lists and prints the correct number when reaching the
    getOption("max.print") limit; partly thanks to a report and
    proposal by Hugh Parsonage to the R-devel list.
  * all.equal(&lt;selfStart&gt;, *) no longer signals a deprecation
    warning.
  * reformulate(*, response=r) gives a helpful error message now when
    length(r) &gt; 1, thanks to Bill Dunlap's PR#18281.
  * Modifying globalCallingHandlers inside withCallingHandlers() now
    works or fails correctly, thanks to Henrik Bengtsson's PR#18257.
  * hist(&lt;Date&gt;, breaks = "days") and hist(&lt;POSIXt&gt;, breaks = "secs")
    no longer fail for inputs of length 1.
  * qbeta(.001, .9, .009) and similar cases now converge correctly
    thanks to Ben Bolker's report in PR#17746.
  * window(x, start, end) no longer wrongly signals "'start' cannot
    be after 'end'", fixing PR#17527 and PR#18291.
  * data() now checks that its (rarely used) list argument is a
    character vector - a couple of packages passed other types and
    gave incorrect results.
  * which() now checks its arr.ind argument is TRUE rather coercing
    to logical and taking the first element - which gave incorrect
    results in package code.
  * model.weights() and model.offset() more carefully extract their
    model components, thanks to Ben Bolker and Tim Taylor's R-devel
    post.
  * list.files(recursive = TRUE) now shows all broken symlinks
    (previously, some of them may have been omitted, PR#18296).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1650628800">- CHANGES IN R 4.2.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * The formula method of aggregate() now matches the generic in
    naming its first argument x (resolving PR#18299 by Thomas
    Soeiro).
    This means that calling aggregate() with a formula as a named
    first argument requires name formula in earlier versions of R and
    name x now, so portable code should not name the argument (code
    in many packages did).
  * Calling &amp;&amp; or || with either argument of length greater than one
    now gives a warning (which it is intended will become an error).
  * Calling if() or while() with a condition of length greater than
    one gives an error rather than a warning.  Consequently,
    environment variable _R_CHECK_LENGTH_1_CONDITION_ no longer has
    any effect.
  * Windows users should consult the WINDOWS section below for some
    profound changes including
  * Support for 32-bit builds has been dropped.
  * UTF-8 locales are used where available.
  * The default locations for the R installation and personal
    library folder have been changed.
    Thanks to Tomas Kalibera for months of work on the Windows port
    for this release.
  NEW FEATURES:
  * matrix(x, n, m) now warns in more cases where length(x) differs
    from n * m, as suggested by Abby Spurdle and Wolfgang Huber in
    Feb 2021 on the R-devel mailing list.
    This warning can be turned into an error by setting environment
    variable _R_CHECK_MATRIX_DATA_ to TRUE: R CMD check --as-cran
    does so unless it is already set.
  * Function file_test() in package utils gains tests for symlinks,
    readability and writability.
  * capabilities("libxml") is now false.
    The description of capabilities("http/ftp") now reflects that it
    refers to the default method, no longer the internal one.
  * simplify2array() gains an except argument for controlling the
    exceptions used by sapply().
  * Environment variables R_LIBS_USER and R_LIBS_SITE are both now
    set to the R system default if unset or empty, and can be set to
    NULL to indicate an empty list of user or site library
    directories.
  * The warning for axis()(-like) calls in cases of relatively small
    ranges (typically in log-scale situations) is slightly improved
    _and_ suppressed from explicit calls to .axisPars() as has always
    been the intention.
  * The contrasts setter function `contrasts&lt;-` gains an explicit
    default how.many = NULL rather than just using missing(how.many).
  * grid.pretty() gains a new optional argument n = 5.
  * There is a new function .pretty() with option bounds as a
    technical-utility version of pretty().  It and pretty() gain a
    new argument f.min with a better than back-compatible default.
  * Function grDevices::axisTicks() and related functions such as
    graphics::axis() work better, notably for the log scale; partly
    because of the pretty() improvements, but also because care is
    taken e.g., when ylim is finite but diff(ylim) is infinite.
  * nclass.FD() gains a digits option.
  * The R Mathlib internal C function bd0() (called indirectly from a
    dozen probability density and distribution functions such as
    dpois(), dbinom(), dgamma(), pgamma() _etc_) has been
    complemented by a more sophisticated and (mostly) more accurate C
    function ebd0(), currently called only by internal dpois_raw()
    improving accuracy for R level dpois() and potentially others
    calling it such as dnbinom(), dgamma() or pgamma().  (Thanks to
    Morten Welinder's PR#15628.)
  * write.ftable() gains sep = " " argument as suggested by Thomas
    Soeiro.
  * The names of the locale categories supported by R's
    Sys.getlocale() and Sys.setlocale() are now provided by variable
    .LC.categories in the base namespace.
  * The Date and POSIXt methods for hist() and the histogram method
    for plot() now also use the new default col = "lightgray" in
    consistency with the corresponding change to hist()'s default for
    R 4.0.0.
  * hist.default() gains new fuzz argument, and the histogram plot
    method no longer uses fractional axis ticks when displaying
    counts ("Frequency").
  * mapply() and hence Map() now also obey the "max-or-0-if-any"
    recycling rule, such that, e.g., Map(`+`, 1:3, 1[0]) is valid
    now.
  * as.character(&lt;obj&gt;) for "hexmode" or "octmode" objects now
    fulfils the important basic rule as.character(x)[j] ===
    as.character(x[j]).
  * The set utility functions, notably intersect() have been tweaked
    to be more consistent and symmetric in their two set arguments,
    also preserving a common mode.
  * substr(ch, start,end) &lt;- new now e.g., preserves names(ch); ditto
    for substring(), thanks to a patch from Brodie Gaslam.
  * plot(&lt;lm&gt;) gains a extend.ylim.f argument, in partial response to
    PR#15285; further PR#17784 is fixed thanks to several
    contributors and a patch by Elin Waring.  The Cook's dist
    contours get customizable via cook.col and cook.lty with a
    different default color and their legend is nicer by default and
    customizable via cook.legendChanges.
  * Attempting to subset an object that is not subsettable now
    signals an error of class notSubsettableError. The
    non-subsettable object is contained in the object field of the
    error condition.
  * Subscript-out-of-bounds errors are now signaled as errors of
    class subscriptOutOfBoundsError.
  * Stack-overflow errors are now signaled as errors inheriting from
    class stackOverflowError. See ?stackOverflowError for more
    details.
  * New partly experimental Sys.setLanguage() utility, solving the
    main problem of PR#18055.
  * gettext() and gettextf() get a new option trim = TRUE which when
    set to false allows translations for strings such as "Execution
    halted\n" typical for C code.
  * An experimental implementation of hash tables is now available.
    See ?hashtab for more details.
  * identical() gains a extptr.as.ref argument for requesting that
    external pointer objects be compared as reference objects.
  * reorder() gets an argument decreasing which it passes to sort()
    for level creation; based on the wish and patch by Thomas Soeiro
    in PR#18243.
  * as.vector() gains a data.frame method which returns a simple
    named list, also clearing a long standing 'FIXME' to enable
    as.vector(&lt;data.frame&gt;, mode="list").  This breaks code relying
    on as.vector(&lt;data.frame&gt;) to return the unchanged data frame.
  * legend() is now vectorized for arguments cex, x.intersp, and
    text.width.  The latter can now also be specified as a vector
    (one element for each column of the legend) or as NA for
    computing a proper column wise maximum value of strwidth(legend).
    The argument y.intersp can be specified as a vector with one
    entry for each row of the legend.
    legend() also gains new arguments title.cex and title.font.
    Thanks to Swetlana Herbrandt.
  * Deparsing no longer remaps attribute names dim, dimnames, levels,
    names and tsp to historical S-compatible names (which structure()
    maps back).
  * sample() and sample.int() have additional sanity checks on their
    size and n arguments.
    all.equal.numeric() gains a sanity check on its tolerance
    argument - calling all.equal(a, b, c) for three numeric vectors
    is a surprisingly common error.
    mean(na.rm =), rank(na.last =), barplot(legend.text =),
    boxplot(), contour(drawlabels =), polygon(border =) and
    methods::is(class2 =) have more robust sanity checks on their
    arguments.
    R CMD Rd2pdf (used by R CMD check) has a more robust sanity check
    on the format of \alias{} commands.
  * psigamma(x, deriv) for negative x now also works for deriv = 4
    and 5; their underlying C level dpsifn() is documented in
    'Writing R Extensions'.
  * The HTML help system now uses HTML5 (wish of PR#18149).
  * ks.test() now provides exact p-values also with ties and MC
    p-values in the two-sample (Smirnov) case.  By Torsten Hothorn.
  * ks.test() gains a formula interface, with y ~ 1 for the
    one-sample (Kolmogorov) test and y ~ group for the two-sample
    (Smirnov) test.  Contributed by Torsten Hothorn.
  * The return value from ks.test() now has class c("ks.test",
    "htest") - packages using try() need to take care to use
    inherits() and not == on the class.
  * New functions psmirnov(), qsmirnov() and rsmirnov() in package
    stats implementing the asymptotic and exact distributions of the
    two-sample Smirnov statistic.
  * iconv() now allows sub = "c99" to use C99-style escapes for UTF-8
    inputs which cannot be converted to encoding to.
  * In a forward pipe |&gt; expression it is now possible to use a named
    argument with the placeholder _ in the rhs call to specify where
    the lhs is to be inserted.  The placeholder can only appear once
    on the rhs.
  * The included LAPACK sources have been updated to version 3.10.0,
    except for the four Fortran 77 routines which 3.10.0 has
    re-implemented in Fortran 90 (where the older versions have been
    retained as the R build process does not support Fortran 90).
  * path.expand() and most other uses of tilde expansion now warn if
    a path would be too long if expanded.  (An exception is
    file.exists(), which silently returns false.)
  * trunc(&lt;Date&gt;, *) now supports units = "months" or "years" for
    consistency with the POSIXt method, thanks to Dirk Eddelbuettel's
    proposal in PR#18099.
  * list2DF() now checks that its arguments are of the same length,
    rather than use recycling.
  * The HTML help system has several new features: LaTeX-like math
    can be typeset using either KaTeX or MathJax, usage and example
    code is highlighted using Prism, and for dynamic help the output
    of examples and demos can be shown within the browser if the
    knitr package is installed. These features can be disabled by
    setting the environment variable _R_HELP_ENABLE_ENHANCED_HTML_ to
    a false value.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 15
    and so packages that provide graphics devices should be
    reinstalled.
  * The grid package now allows the user to specify a "vector" of
    pattern fills.  The fill argument to gpar() accepts a list of
    gradients and/or patterns and the functions linearGradient(),
    radialGradient(), and pattern() have a new group argument.
    Points grobs (data symbols) can now also have a pattern fill.
    The grobCoords() function now returns a more informative and
    complex result.
  * The grid package has new functions for drawing isolated groups:
    grid.group(), grid.define(), and grid.use().  These functions add
    compositing operators and affine transformations to R's graphics
    capabilities.
    The grid package also has new functions for stroking and filling
    paths: grid.stroke(), grid.fill(), and grid.fillStroke().
    A new function as.path() allows the user to specify the fill rule
    for a path that is to be used for clipping, stroking, or filling;
    available options are "winding" and "evenodd".  A new function
    as.mask() allows the user to specify the type of a mask;
    available options are "alpha" and "luminance".
    These new features are only supported so far (at most) on the
    Cairo-based graphics devices and on the pdf() device.
  * dev.capabilities() reports on device support for the new
    features.
  * par() now warns about unnamed non-character arguments to prevent
    misuse such as {usr &lt;- par("usr"); par(usr)}.
  INSTALLATION:
  * Facilities for accessing ftp:// sites are no longer tested
    (except _pro tem_ for curlGetHeaders()) as modern browsers have
    removed support.
  * R can now be built with DEFS = -DSTRICT_R_HEADERS .
  PACKAGE INSTALLATION:
  * R CMD INSTALL no longer tangles vignettes. This completes an R
    CMD build change in R 3.0.0 and affects packages built before R
    3.0.2. Such packages should be re-made with R CMD build to have
    the tangled R code of vignettes shipped with the tarball.
  * USE_FC_LEN_T will become the default: this uses the correct
    prototypes for Fortran BLAS/LAPACK routines called from C/C++,
    and requires adjustment of most such calls - see 'Writing R
    Extensions' SS6.6.2.  (This has been supported since R 3.6.2.)
  * Package installation speed for packages installed with
    keep.source has been improved. This resolve the issue reported by
    Ofek Shilon in PR#18236.
  UTILITIES:
  * R CMD check can optionally report files/directories left behind
    in home, /tmp (even though TMPDIR is set) and other directories.
    See the "R Internals" manual for details.
  * R CMD check now reports byte-compilation errors during
    installation.  These are not usually fatal but may result in
    parts of the package not being byte-compiled.
  * _R_CHECK_DEPENDS_ONLY_ can be applied selectively to examples,
    tests and/or vignettes in R CMD check: see the "R Internals"
    manual.
  * _R_CHECK_SRC_MINUS_W_IMPLICIT_ now defaults to true: recent
    versions of Apple clang on macOS have made implicit function
    declarations in C into a compilation error.
  * R CMD check --as-cran makes use of the environment variable
    AUTORECONF.  See the "R Internals" manual SS8 for further details.
  * R CMD check --use-valgrind also uses valgrind when re-building
    vignettes as some non-Sweave vignettes unhelpfully comment out
    all their code when R CMD check runs vignettes.
  * Errors in re-building vignettes (unless there are LaTeX errors)
    are reported by R CMD check as ERROR rather than WARNING when
    running vignettes has been skipped (as it frequently is in CRAN
    checks and by --as-cran).
  * R CMD Rd2pdf gains a --quiet option that is used by R CMD build
    when building the PDF package manual.
  * R CMD Rd2pdf now always runs LaTeX in batch mode, consistent with
    Texinfo &gt;= 6.7. The --batch option is ignored.
  * R CMD build and R CMD check now include the Rd file name and line
    numbers in the error message of an \Sexpr evaluation failure.
  * For packages using the \doi Rd macro (now an install-time \Sexpr)
    but no other dynamic Rd content, R CMD build now produces a
    smaller tarball and is considerably faster - skipping temporary
    package installation.
  C-LEVEL FACILITIES:
  * The non-API header R_ext/R-ftp-http.h is no longer provided, as
    the entry points it covered are now all defunct.
  * A number of non-API declarations and macro definitions have been
    moved from the installed header Rinternals.h to the internal
    header Defn.h. Packages that only use entry points and
    definitions documented to be part of the API as specified in
    'Writing R Extensions' SS6 should not be affected.
  * The macro USE_RINTERNALS no longer has any effect when compiling
    package code.  Packages which also use R_NO_REMAP will need to
    ensure that the remapped names are used for calls to API
    functions that were formerly also made available as macros.
  * The deprecated legacy S-compatibility macros PROBLEM, MESSAGE,
    ERROR, WARN, WARNING, RECOVER, ... are no longer defined in
    R_exts/RS.h (included by R.h).  Replace these by calls to
    Rf_error and Rf_warning (defined in header R_ext/Error.h included
    by R.h).
    Header R_ext/RS.h no longer includes R_ext/Error.h.
  * Header R_ext/Constants.h (included by R.h) when included from C++
    now includes the C++ header cfloat rather than the C header
    float.h (now possible as C++11 is required).
  * The legacy S-compatibility macros DOUBLE_* in R_ext/Constants.h
    (included by R.h) are deprecated.
  * The deprecated S-compatibility macros SINGLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * R_Calloc, R_Free and R_Realloc are preferred to their unprefixed
    forms and error messages now use the prefix. These forms were
    introduced in R 3.4.0 and are available even when
    STRICT_R_HEADERS is defined.
  * rmultinom has been documented in 'Writing R Extensions' SS6 so is
    now part of the R API.
  * Similarly, Rtanpi, called from R level tanpi() is now part of the
    R API.
  * The long-deprecated, undocumented and non-API entry point call_R
    is no longer declared in R_ext/RS.h (included by R.h).
  * The header S.h which has been unsupported since Jan 2016 has been
    removed.  Use R.h instead.
  DEPRECATED AND DEFUNCT:
  * The (non-default and deprecated) method = "internal" for
    download.file() and url() no longer supports http:// nor ftp://
    URIs.  (It is used only for file:// URIs.)
    On Windows, download.file(method = "wininet") no longer supports
    ftp:// URIs.  (It is no longer the default method, which is
    "libcurl" and does.)
    On Windows, the deprecated method = "wininet" now gives a warning
    for http:// and https:// URIs for both download.file() and url().
    (It is no longer the default method.)
  * On Windows, the command-line option --max-mem-size and
    environment variable R_MAX_MEM_SIZE are defunct.  The memory
    allocation limit was important for 32-bit builds, but these are
    no longer supported.
  * default.stringsAsFactors() is now formally deprecated, where that
    was only mentioned on its regular help page, previously.  So it
    now gives a warning if called.
  * unix.time() is defunct now; it had been deprecated since R 3.4.0.
  BUG FIXES:
  * Setting digits = 0 in format(), print.default() (and hence
    typically print()) or options() is again invalid.  Its behaviour
    was platform-dependent, and it is unclear what "zero significant
    digits" should mean (PR#18098).
  * Messages from C code in the cairo section of package grDevices
    are now also offered for translation, thanks to Michael Chirico's
    PR#18123.
  * mean(x) with finite x now is finite also without "long.double"
    capability.
  * R CMD Rd2pdf no longer leaves an empty build directory behind
    when it aborts due to an already existing output file.  (Thanks
    to Sebastian Meyer's PR#18141.)
  * density(x, weights = w, na.rm = TRUE) when anyNA(x) is true, now
    removes weights "in parallel" to x, fixing PR#18151, reported by
    Matthias Gondan.  Additionally, it gets a subdensity option.
  * Conversion of \Sexpr[]{&lt;expR&gt;} to LaTeX or HTML no longer
    produces long blocks of empty lines when &lt;expR&gt; itself contains
    several lines all producing empty output.  Thanks to a report and
    patch by Ivan Krylov posted to R-devel.
  * R CMD build no longer fails if a package vignette uses child
    documents and inst/doc exists.  (Thanks to Sebastian Meyer's
    PR#18156.)
  * When an R documentation ('help' source) file man/foo.Rd in a
    package has \donttest{..} examples with a syntax error, it is now
    signalled as ERROR and with correct line numbers relating to the
  * -Ex.R file, thanks to Duncan Murdoch and Sebastian Meyer's
    reports and patch proposals in PR#17501.
  * Improved determination of the correct translation domain in
    non-base packages, addressing the combination of PR#18092 and
    PR#17998 (#c6) with reports and _augmented_ patch #2904 by
    Suharto Anggono.
    Note that "R-base" is no longer the default domain e.g., for
    top-level calls to gettext(); rather translation needs explicit
    domain = * specification in such cases.
  * identical(attrib.as.set=FALSE) now works correctly with data
    frames with default row names (Thanks to Charlie Gao's PR#18179).
  * txtProgressBar() now enforces a non-zero width for argument char,
    without which no progress can be visible.
  * dimnames(table(d)) is more consistent in the case where d is a
    list with a single component, thanks to Thomas Soeiro's report to
    R-devel.
    Further, table(d1, d2) now gives an error when d1 and d2 are data
    frames as suggested by Thomas in PR#18224.
  * Fix for drawing semi-transparent lines and fills on the native
    Windows graphics device (PR#18219 and PR#16694).  Thanks to Nick
    Ray for helpful diagnosis on Bugzilla.
  * The deparser now wraps sub-expressions such as if(A) ..  with
    parentheses when needed; thanks to Duncan Murdoch's PR#18232 and
    Lionel Henry's patches there.
  * remove.packages() no longer tries to uninstall Priority: base
    packages, thanks to a report and suggestions by Colin Fay in
    PR#18227.
  * win.metafile() now has xpinch and ypinch arguments so that the
    user can override Windows' (potentially wrong) guess at device
    dimensions.
  * x[i] and x[[i]] for non-integer i should now behave in all cases
    as always documented: the index used is equivalent to
    as.integer(i) unless that would overflow where trunc(i) is used
    instead; thanks to Suharto Anggono's report and patch proposals
    in PR#17977.
  * asOneSidedFormula() now associates the resulting formula with the
    global environment rather than the evaluation environment created
    for the call.
  * &lt;bibentry&gt;$name now matches the field name case-insensitively,
    consistent with bibentry() creation and the replacement method.
  * cbind() failed to detect some length mismatches with a mixture of
    time-series and non-time-series inputs.
  * The default LaTeX style file Sweave.sty used by the RweaveLatex
    driver no longer loads the obsolete ae package; thanks to a
    report by Thomas Soeiro in PR#18271.  Furthermore, it now skips
    \usepackage[T1]{fontenc} for engines other than pdfTeX (if
    detected) or if the new [nofontenc] option is used.
  * smooth.spline() now stores its logical cv argument more safely,
    fixing a rare bug when printing, and also stores n.
  * smooth.spline(x,y,*) now computes the cv.crit statistic
    correctly, also when is.unsorted(x), fixing PR#18294.
  * The data.frame method of rbind() now warns when binding
    not-wholly-recycling vectors, by analogy to the default method
    (for matrices).
  * setAs() finds the correct class for name to when multiple
    packages define a class with that name. Thanks to Gabor Csardi
    for the report.
  * Fix for detaching a package when two classes of the same name are
    present in method signatures for the same generic. Thanks to
    Gabor Csardi for the report.
  * match.arg("", c("", "a", "B")) gives a better error message, in
    part from PR#17959, thanks to Elin Waring.
  * R CMD Sweave --clean no longer removes pre-existing files or
    subdirectories (PR#18242).
  * The quartz() device no longer splits polylines into subpaths.
    That has caused narrowly-spaced lines with many points to always
    look solid even when dashed line type was used due to dash phase
    restarts.
  * Deparsing constructs such as quote(1 + `!`(2) + 3) works again as
    before R 3.5.0, thanks to the report and patch in PR#18284 by
    Suharto Anggono.
  * as.list(f) for a factor f now keeps names(f), fixing PR#18309.
  * qbeta(.001, .9, .009) and analogous qf() calls now return a
    correct value instead of NaN or wrongly 1, all with a warning;
    thanks to the report by Ludger Goeminne in PR#18302.
  * plot.lm() failed to produce the plot of residuals vs.  factor
    levels (i.e., which=5 when leverages are constant) for models
    with character predictors (PR#17840).
  * interaction.plot(..., xtick = TRUE) misplaced the x-axis line
    (PR#18305).
  * Not strictly fixing a bug, format()ing and print()ing of
    non-finite Date and POSIXt values NaN and +/-Inf no longer show
    as NA but the respective string, e.g., Inf, for consistency with
    numeric vector's behaviour, fulfilling the wish of PR#18308.
  * R CMD check no longer runs test scripts generated from
    corresponding .Rin files twice and now signals an ERROR if
    processing an .Rin script fails.
  * tools::Rd2txt() used for plain-text help pages now renders \hrefs
    (if tools::Rd2txt_options(showURLs = TRUE)) and \urls with
    percent-encoding and standards-compliant delimiting style (angle
    brackets and no URL: prefix).  \email is now rendered with a
    mailto: prefix.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1655985600">- CHANGES IN R 4.2.1:
  NEW FEATURES:
  * New function utils::findCRANmirror() to find out if a CRAN mirror
    has been selected, otherwise fallback to the main site.  This
    behaves in the same way as tools::CRAN_package_db() and is
    intended for packages wishing to access CRAN for purposes other
    than installing packages.
    The need for this was shown by a day when the main CRAN website
    was offline and a dozen or so packages which had its URL
    hardcoded failed their checks.
  INSTALLATION on a UNIX-ALIKE:
  * The libraries searched for by --with-blas (without a value) now
    include BLIS (after OpenBLAS but before ATLAS).  And on macOS,
    the Accelerate framework (after ATLAS).  (This is patterned after
    the AX_BLAS macro from the Autoconf Archive.)
  * The included LAPACK sources have been updated to 3.10.1.
  UTILITIES:
  * The (full path to) the command tidy to be used for HTML
    validation can be set by environment variable R_TIDYCMD.
  * Setting environment variable _R_CHECK_RD_VALIDATE_RD2HTML_ to a
    false value will override R CMD check --as-cran and turn off HTML
    validation.  This provides a way to circumvent a problematic
    tidy.
    The 2006 version that ships with macOS is always skipped.
  C-LEVEL FACILITIES:
  * The undocumented legacy declarations of Sint, Sfloat, SINT_MAX
    and SINT_MIN in header R.h are deprecated.
  BUG FIXES:
  * fisher.test(d) no longer segfaults for "large" d; fixing PR#18336
    by preventing/detecting an integer overflow reliably.
  * tar(., files=*) now produces correctly the warning about invalid
    uid or gid of files, fixing PR#18344, reported by Martin Morgan.
  * tk_choose.files() with multi = FALSE misbehaved on paths
    containing spaces (PR#18334) (regression introduced in R 4.0.0).
  * sort(x, partial = ind, *) now works correctly notably for the
    non-default na.last = FALSE or TRUE, fixing PR#18335 reported by
    James Edwards.
  * Environment variable _R_CHECK_XREFS_REPOSITORIES_ is only used
    for checking .Rd cross-references in R CMD check (as documented)
    and not for other uses looking for a CRAN mirror.
  * The search for a CRAN mirror when checking packages now uses
    getOption("repos") if that specifies a CRAN mirror, even when it
    does not also specify all three Bioconductor repositories (as was
    previously required).
  * The HTML code generated by tools::Rd2HTML() has been improved to
    pass tidy 5.8.0.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1667217600">- CHANGES IN R 4.2.2:
  NEW FEATURES:
  * tools::Rdiff(useDiff = TRUE) checks for the presence of an
    external diff command and switches to useDiff = FALSE if none is
    found.  This allows R CMD Rdiff to always work.
  * On Windows, environment variable R_LIBCURL_SSL_REVOKE_BEST_EFFORT
    can be used to switch to only 'best-effort' SSL certificate
    revocation checks with the default "libcurl" download method.
    This reduces security, but may be needed for downloads to work
    with MITM proxies (PR#18379).
  * (macOS) The run-time check for libraries from XQuartz for X11 and
    Tcl/Tk no longer uses otool from the Apple Developer Tools
    (PR#18400).
  * The LaTeX style for producing the PDF manuals, Rd.sty, now loads
    the standard amsmath, amsfonts and amssymb packages for greater
    coverage of math commands in the Rd \eqn and \deqn macros.  The
    \mathscr LaTeX command is also provided (via the mathrsfs
    package, if available, or the amsfonts bundle otherwise),
    fulfilling the wish of PR#18398.
  * (Windows) The default format of readClipboard() and
    writeClipboard() has been changed to 13 (CF_UNICODETEXT).
  INSTALLATION on a UNIX-ALIKE:
  * The PDF manuals (if built) can be compacted by the new target
    make compact-pdf (at the top level or in directory doc/manual).
  * There is now configure support for LLVM clang 15 on Linux, which
    defaults to position-independent (PIE) executables whereas
    gfortran does not.
  * Many small changes to ease compilation (and suppress warnings)
    with LLVM clang 15.
  BUG FIXES:
  * Rscript -e would fail if stdin were closed (Reported by Henrik
    Bengtsson.)
  * qt(*, log.p=TRUE) in outer tails no longer produces NaN in its
    final steps, thus fixing PR#18360.
  * tools::Rd2latex() now escapes hashes and ampersands when writing
    URLs, fixing LaTeX errors with such URLs in \tabular.
  * When isGeneric(f, fdef=*) is used with mismatching names, the
    warning is better understandable; reported (with fix) in PR#18370
    by Gabe Becker.
  * poly(x, n) now works again (and is now documented) when x is a
    "Date" or "POSIXct" object, or of another class while fulfilling
    mode(x) == "numeric".  This also enables poly(x, *, raw=TRUE) for
    such variables.  Reported by Michael Chirico to R-devel.
  * write.table(), write.csv() and write.csv2() restore their
    numerical precision (internal equivalent of digits = 15) after an
    interrupt (PR#18384).
  * One can now read also byte FF from a clipboard connection
    (PR#18385).
  * source("") and source(character()) now give more helpful error
    messages.
  * R CMD check --as-cran set _R_CHECK_TIMINGS_ too late to have the
    intended effect.
  * as.POSIXlt(x) now also works with very large dates x, fixing
    PR#18401 reported by Hannes M"uhleisen.
  * Files can now be extracted even from very large zip archives
    (PR#18390, thanks to Martin Jakt).
  * Non-finite objects of class "POSIXlt" are now correctly coerced
    to classes "Date" and "POSIXct"; following up on the extension to
    format() them correctly.
  * Added methods for is.finite(), is.infinite() and is.nan() for
    "POSIXlt" date-time objects.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1678881600">- CHANGES IN R 4.2.3:
  C-LEVEL FACILITIES:
  * The definition of DL_FUNC in R_ext/Rdynload.h has been changed to
    be fully C-compliant.  This means that functions loaded _via_ for
    example R_GetCCallable need to be cast to an appropriate type if
    they have any arguments.
  * .Machine has a new element sizeof.time_t to identify old systems
    with a 32-bit type and hence a limited range of date-times (and
    limited support for dates millions of years from present).
  PACKAGE INSTALLATION:
  * (Windows) The default C++ standard had accidentally been left at
    C++11 when it was changed to C++14 on Unix.
  BUG FIXES:
  * As "POSIXlt" objects may be "partially filled" and their list
    components meant to be recycled, length() now is the length of
    the longest component.
  * as.POSIXlt.Date() could underflow for dates in the far past (more
    than half a million years BCE).
  * as.Date.POSIXlt(x) would return "1970-01-01" instead of NA in R
    4.2.2, e.g., for
    x &lt;- as.POSIXlt(c("2019-01-30","2001-1-1"))
    x$mon &lt;- c(0L, NA); as.Date(x)
  * R CMD check failed to apply enabled _R_CHECK_SUGGESTS_ONLY_ to
    examples and vignettes (regression in R 4.2.0).
  * R CMD check did not re-build vignettes in separate processes by
    default (regression in R 4.2.0).
  * Running examples from HTML documentation now restores previous
    knitr settings and options (PR#18420).
  * Quartz: fonts are now located using Core Graphics API instead of
    deprecated ATS which is no longer supported in the macOS 13 SDK
    (PR#18426).  This also addresses an issue where the currently
    used font in the Quartz device context was not correctly
    retained.
  * (Windows) Math symbols in text drawing functions are again
    rendered correctly (PR#18440).  This fixes a regression in R
    4.2.1 caused by a fix in PR#18382 which uncovered an issue in
    GraphApp due to which the symbol charset was not used with TT
    Symbol font face.
  * (Windows) Installing a package with a src/Makefile.{win,ucrt}
    file includes ~/.R/Makevars.win64 in the search for user
    makevars, as documented in "R Installation and Administration"
    and done for packages with a src/Makevars.{win,ucrt} file.
  * format(&lt;POSIXlt_w/_unbalanced_sec&gt;, "....%OS&lt;n&gt;") with n &gt; 0 no
    longer accidentally uses the unbalanced seconds, thanks to
    Suharto Anggono's report (including patch) in PR#18448.
  * solve.default(a, b) works around issues with some versions of
    LAPACK when a contains NA or NaN values.
  * When UseMethod() cannot dispatch, it no longer segfaults
    producing the error message in case of a long class(), thanks to
    Joris Vankerschaver's report (including patch) in PR#18447.
  * When example(foo, ..) produces graphics on an interactive device
    it needs to open itself, it now leaves devAskNewPage() unchanged
    even when it was FALSE, thus fixing a 14 years old '&lt;FIXME&gt;'.
  * packageDescription() again catches errors from encoding
    conversions. This also fixes broken packageVersion() in C locale
    on systems where iconv does not support transliteration.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1681128000">- add patch to build with libcurl &gt;= 8</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1682078400">- CHANGES IN R 4.3.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Calling &amp;&amp; or || with LHS or (if evaluated) RHS of length greater
    than one is now always an error, with a report of the form
    'length = 4' in coercion to 'logical(1)'
    Environment variable _R_CHECK_LENGTH_1_LOGIC2_ no longer has any
    effect.
  NEW FEATURES:
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.10.1.  (This caused some platform-dependent
    changes to package check output.)  And then to the sources from
    LAPACK version 3.11.0 (with changes only to double complex
    subroutines).
  * The included LAPACK sources have been updated to include the four
    Fortran 90 routines rather than their Fortran 77 predecessors.
    This may give some different signs in SVDs or
    eigendecompositions..  (This completes the transition to LAPACK
    3.10.x begun in R 4.2.0.)
  * The LAPACK sources have been updated to version 3.11.0.  (No new
    subroutines have been added, so this almost entirely bug fixes:
    Those fixes do affect some computations with NaNs, including R's
    NA.)
  * The parser now signals _classed_ errors, notably in case of the
    pipe operator |&gt;.  The error object and message now give line and
    column numbers, mostly as proposed and provided by Duncan Murdoch
    in PR#18328.
  * toeplitz() is now generalized for asymmetric cases, with a
    toeplitz2() variant.
  * xy.coords() and xyz.coords() and consequently, e.g., plot(x,y,
    log = "y") now signal a _classed_ warning about negative values
    of y (where log(.) is NA).  Such a warning can be specifically
    suppressed or caught otherwise.
  * Regular expression functions now check more thoroughly whether
    their inputs are valid strings (in their encoding, e.g. in
    UTF-8).
  * The performance of grep(), sub(), gsub() and strsplit() has been
    improved, particularly with perl = TRUE and fixed = TRUE.  Use of
    useBytes = TRUE for performance reasons should no longer be
    needed and is discouraged: it may lead to incorrect results.
  * apropos() gains an argument dot_internals which is used by the
    completion (help(rcompgen)) engine to also see base internals
    such as .POSIXct().
  * Support in tools::Rdiff() for comparing uncompressed PDF files is
    further reduced - see its help page.
  * qqplot(x, y, ...) gains conf.level and conf.args arguments for
    computing and plotting a confidence band for the treatment
    function transforming the distribution of x into the distribution
    of y (Switzer, 1976, _Biometrika_). Contributed by Torsten
    Hothorn.
  * Performance of package_dependencies() has been improved for cases
    when the number of dependencies is large.
  * Strings newly created by gsub(), sub() and strsplit(), when any
    of the inputs is marked as "bytes", are also marked as "bytes".
    This reduces the risk of creating invalid strings and accidental
    substitution of bytes deemed invalid.
  * Support for readLines(encoding = "bytes") has been added to allow
    processing special text files byte-by-byte, without creating
    invalid strings.
  * iconv(from = "") now takes into account any declared encoding of
    the input elements and uses it in preference to the native
    encoding.  This reduces the risk of accidental creation of
    invalid strings, particularly when different elements of the
    input have different encoding (including "bytes").
  * Package repositories in getOption("repos") are now initialized
    from the repositories file when utils is loaded (if not already
    set, e.g., in .Rprofile).  (From a report and patch proposal by
    Gabriel Becker in PR#18405.)
  * compactPDF() gets a verbose option.
  * type.convert() and hence read.table() get new option tryLogical =
    TRUE with back compatible default.  When set to false, converts
    "F" or "T" columns to character.
  * Added new unit prefixes "R" and "Q" for abbreviating
    (unrealistically large) sizes beyond 10^{27} in standard = "SI",
    thanks to Henrik Bengtsson's PR#18435.
  * as.data.frame()'s default method now also works fine with atomic
    objects inheriting from classes such as "roman", "octmode" and
    "hexmode", such fulfilling the wish of PR#18421, by Benjamin
    Feakins.
  * The as.data.frame.vector() utility now errors for wrong-length
    row.names.  It warned for almost six years, with "Will be an
    error!".
  * sessionInfo() now also contains La_version() and reports codepage
    and timezone when relevant, in both print() and toLatex() methods
    which also get new option tzone for displaying timezone
    information when locale = FALSE.
  * New function R_compiled_by() reports the C and Fortran compilers
    used to build R, if known.
  * predict(&lt;lm&gt;, newdata = *) no longer unnecessarily creates an
    offset of all 0s.
  * solve() for complex inputs now uses argument tol and by default
    checks for 'computational singularity' (as it long has done for
    numeric inputs).
  * predict(&lt;rank-deficient lm&gt;, newdata=*) now obeys a new argument
    rankdeficient, with new default "warnif", warning only if there
    are non-estimable cases in newdata.  Other options include
    rankdeficient = "NA", predicting NA for non-estimable newdata
    cases.  This addresses PR#15072 by Russ Lenth and is based on his
    original proposal and discussions in PR#16158 also by David Firth
    and Elin Waring.  Still somewhat experimental.
  * Rgui console implementation now works better with the NVDA screen
    reader when the full blinking cursor is selected.  The underlying
    improvements in cursor handling may help also other screen
    readers on Windows.
  * The drop-field control in GraphApp can now be left with the TAB
    key and all controls can be navigated in the reverse order using
    the Shift+TAB key, improving accessibility of the Rgui
    configuration editor.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now fully accurate
    (instead of to "only" minimally five digits).
  * demo(error.catching) now also shows off withWarnings() and
    tryCatchWEMs().
  * As an experimental feature the placeholder _ can now also be used
    in the rhs of a forward pipe |&gt; expression as the first argument
    in an extraction call, such as _$coef. More generally, it can be
    used as the head of a chain of extractions, such as _$coef[[2]].
  * Spaces in the environment variable used to choose the R session's
    temporary directory (TMPDIR, TMP and TEMP are tried in turn) are
    now fatal.  (On Windows the 'short path' version of the path is
    tried and used if that does not contain a space.)
  * all.equal.numeric() gets a new optional switch giveErr to return
    the numeric error as attribute.  Relatedly,
    stopifnot(all.equal&lt;some&gt;(a, b, ..)) is as "smart" now, as
    stopifnot(all.equal(....)) has been already, thus allowing
    customized all.equal&lt;Some&gt;() wrappers.
  * R on Windows is now able to work with path names longer than 260
    characters when these are enabled in the system (requires at
    least Windows 10 version 1607).  Packages should be updated to
    work with long paths as well, instead of assuming PATH_MAX to be
    the maximum length.  Custom front-ends and applications embedding
    R need to update their manifests if they wish to allow this
    feature.  See
    &lt;https://blog.r-project.org/2023/03/07/path-length-limit-on-windows&gt;
    for more information.
  * 'Object not found' and 'Missing argument' errors now give a more
    accurate error context. Patch provided by Lionel Henry in
    PR#18241.
  * The @ operator is now an S3 generic. Based on contributions by
    Tomasz Kalinowski in PR#18482.
  * New generic chooseOpsMethod() provides a mechanism for objects to
    resolve cases where two suitable methods are found for an Ops
    Group Generic. This supports experimenting with alternative
    object systems. Based on contributions by Tomasz Kalinowski in
    PR#18484.
  * inherits(x, what) now accepts values other than a simple
    character vector for argument what. A new generic, nameOfClass(),
    is called to resolve the class name from what. This supports
    experimenting with alternative object systems. Based on
    contributions by Tomasz Kalinowski in PR#18485.
  * Detection of BLAS/LAPACK in use (sessionInfo()) with FlexiBLAS
    now reports the current backend.
  * The "data.frame" method for subset() now warns about extraneous
    arguments, typically catching the use of = instead of == in the
    subset expression.
  * Calling a:b when numeric a or b is longer than one may now be
    made into an error by setting environment variable
    _R_CHECK_LENGTH_COLON_ to a true value, along the proposal in
    PR#18419 by Henrik Bengtsson.
  * density(x, weights = *) now warns if automatic bandwidth
    selection happens without using weights; new optional warnWbw may
    suppress the warning.  Prompted by Christoph Dalitz' PR#18490 and
    its discussants.
  * rm(list = *) is faster and more readable thanks to Kevin Ushey's
    PR#18492.
  * The plot.lm() function no longer produces a normal Q-Q plot for
    GLMs. Instead it plots a half-normal Q-Q plot of the absolute
    value of the standardized deviance residuals.
  * The print() method for class "summary.glm" no longer shows
    summary statistics for the deviance residuals by default.  Its
    optional argument show.residuals can be used to show them if
    required.
  * The tapply() function now accepts a data frame as its X argument,
    and allows INDEX to be a formula in that case. by.data.frame()
    similarly allows INDICES to be a formula.
  * The performance of df[j] &lt;- value (including for missing j) and
    write.table(df) has been improved for data frames df with a large
    number of columns.  (Thanks to Gabriel Becker's PR#18500,
    PR#18503 and discussants, prompted by a report from Toby Dylan
    Hocking on the R-devel mailing list.)
  * The matrix multiply operator %*% is now an S3 generic, belonging
    to new group generic matrixOps.  From Tomasz Kalinowski's
    contribution in PR#18483.
  * New function array2DF() to convert arrays to data frames,
    particularly useful for the list arrays created by tapply().
  DATES and TIMES:
  * On platforms where (non-UTC) datetimes before 1902 (or before
    1900 as with system functions on recent macOS) are guessed by
    extrapolating time zones from 1902-2037, there is a warning at
    the first use of extrapolation in a session.  (As all time zones
    post 2037 are extrapolation, we do not warn on those.)
  * (Platforms using --with-internal-tzone, including Windows and by
    default macOS). How years are printed in dates or date-times can
    be controlled by environment variable R_PAD_YEARS_BY_ZERO.  The
    default remains to pad to 4 digits by zeroes, but setting value
    no gives no padding (as used by default by glibc).
  * strftime() tries harder to determine the offset for the "%z"
    format, and succeeds on the mainstream R platforms.
  * strftime() has a limit of 2048 bytes on the string produced -
    attempting to exceed this is an error.  (Previously it silently
    truncated at 255 bytes.)
  * sessionInfo() records (and by default prints) the system time
    zone as part of the locale information.  Also, the source
    (system/internal) of the date-time conversion and printing
    functions.
  * Objects of class "POSIXlt" created in this version of R always
    have 11 components: component zone is always set, and component
    gmtoff is set for times in UTC and usually set on the (almost
    all) platforms which have C-level support, otherwise is NA.
  * There are comprehensive validity checks on the structure of
    objects of class "POSIXlt" when converting (including formatting
    and printing).  (This avoids mis-conversions of hand-crafted
    objects.)
  * There is some support for using the native date-time routines on
    macOS: this is only viable on recent versions (e.g. 12.6 and 13)
    and does get wrong some historical changes (before 1900, during
    WWII).  Use of --with-internal-tzone remains the default.
  * as.POSIXct(&lt;numeric&gt;) and as.POSIXlt(.) (without specifying
    origin) now work.  So does as.Date(&lt;numeric&gt;).
  * as.Date.POSIXct(., tz) now treats several tz values, notably
    "GMT" as equivalent to "UTC", proposed and improved by Michael
    Chirico and Joshua Ulrich in PR#17674.
  * Experimental balancePOSIXlt() utility allows using "ragged" and
    or out-of-range "POSIXlt" objects more correctly, e.g., in
    subsetting and subassignments.  Such objects are now documented.
    More experimentally, a "POSIXlt" object may have an attribute
    "balanced" indicating if it is known to be filled or fully
    balanced.
  * Functions axis.Date() and axis.POSIXct() are rewritten to gain
    better default tick locations and better default formats by using
    prettyDate(). Thanks to Swetlana Herbrandt.
  * The mapping of Windows' names for time zones to IANA's 'Olson'
    names has been updated.  When ICU is available (it is by
    default), it is used to get a mapping for the current region set
    in Windows.  This can be overridden by setting environment
    variable TZ to the desired Olson name - see OlsonNames() for
    those currently available.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 16
    and so packages that provide graphics devices should be
    reinstalled.
  * The grDevices and grid packages have new functions for rendering
    typeset glyphs, primarily: grDevices::glyphInfo() and
    grid::grid.glyph().
    Rendering of typeset glyphs is only supported so far on the
    Cairo-based graphics devices and on the pdf() and quartz()
    devices.
  * The defined behaviour for "clear" and "source" compositing
    operators (via grid::grid.group()) has been changed (to align
    better with simple interpretation of original Porter-Duff
    definitions).
  * Support for gradients, patterns, clipping paths, masks, groups,
    compositing operators, and affine transformations has been added
    to the quartz() device.
  INSTALLATION on a UNIX-ALIKE:
  * A system installation of generic LAPACK 3.10.0 or later will be
    preferred to the version in the R sources.
    configure option --with-lapack=no (equivalently --without-lapack)
    forces compilation of the internal LAPACK sources.
    If --with-lapack is not specified, a system liblapack is looked
    for and used if it reports version 3.10.0 or later and does not
    contain BLAS routines.
    Packages using LAPACK will need to be reinstalled if this changes
    to using an external library.
  * On aarch64 Linux platforms using GCC, configure now defaults to
  - fPIC (instead of -fpic), as desired in PR#18326.
  * configure now checks conversion of datetimes between POSIXlt and
    POSIXct around year 2020.  Failure (which has been seen on
    platforms missing tzdata) is fatal.
  * If configure option --with-valgrind-instrumentation is given
    value 1 or 2, option --with-system-valgrind-headers is now the
    default and ignored (with a warning).  It is highly recommended
    that the system headers are installed alongside valgrind: they
    are part of its packaging on some Linux distributions and
    packaged separately (e.g. in the valgrind-devel RPM) on others.
    configure will give a warning if they are not found.
    The system headers will be required in a future release of R to
    build with valgrind instrumentation.
  * libcurl 8.x is now accepted by configure: despite a change in
    major version number it changes neither API nor ABI.
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools43, an update of the Rtools42 toolchain.  It is
    based on gcc 12 and newer versions of MinGW-W64, binutils and
    libraries.  At this time R-devel can still be built using
    Rtools42 without changes, but when R-devel is installed via the
    installer, it will by default look for Rtools43.
  * Old make targets rsync-extsoft and 32-bit ones that are no longer
    needed have been removed.
  * Default builds (including for packages) no longer select C99.
    Thus the C standard used is the default for the compiler, which
    for the toolchain in Rtools43 is C17.  (This is consistent with
    Unix builds.)
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++17 where
    available (which it is on all currently checked platforms): if
    not C++14 or C++11 is used if available otherwise C++ is not
    supported.
  * USE_FC_LEN_T is the default: this uses the correct
    (compiler-dependent) prototypes for Fortran BLAS/LAPACK routines
    called from C/C++, and requires adjustment of many such calls -
    see 'Writing R Extensions' SS6.6.1.
  * There is initial support for C++23 as several compilers are now
    supporting -std=c++23 or -std=c++2b or similar.  As for C++20,
    there no additional configure checks for C++23 features beyond a
    check that the compiler reports a __cplusplus value greater than
    that in the C++20 standard.  C++ feature tests should be used.
  * There is support for a package to indicate the version of the C
    standard which should be used to compile it, and for the
    installing user to specify this.  In most cases R defaults to the
    C compiler's default standard which is C17 (a `bug-fix' of C11) -
    earlier versions of R or compilers may have defaulted to C99.
    Current options are:
    USE_C17 Use a standard that is at most C17.  The intention is to
    allow legacy packages to still be installed when later C
    standards become the default, including packages using new
    keywords as identifiers or with K&amp;R-style function
    declarations.  This will use C17 if available, falling back
    to C11.
    USE_C90 Use the C90 (aka C89) standard.  (As that standard did
    not require compilers to identify that version, all we can
    verify is that the compiler does not claim to be using a
    later standard.  It may accept C99 features - for example
    clang accepts // to make comments.)
    USE_C99 Use the C99 standard. This should be rarely needed - it
    avoids the few new features of C11/C17 which can be useful if
    a package assumes them if C17 is specified and they are not
    implemented.
    USE_C23 Use C23 (or in future, later).  Compiler/library support
    for C23 is still being implemented, but LLVM clang from
    15.0.0 and the upcoming GCC 13 have quite extensive support.
    These can be specified as part of the SystemRequirements field in
    the package's DESCRIPTION file or _via_ options --use-C17 and so
    on of R CMD INSTALL and R CMD SHLIB.
    For further details see "Writing R Extensions" SS1.2.5.
  * (Windows) A src/Makefile.ucrt or src/Makefile.win file is now
    included after R_HOME/etcR_ARCH/Makeconf and so no longer needs
    to include that file itself.  Installation of a package with such
    a file now uses a site Makevars file in the same way as a package
    with a src/Makevars.win file would.
  * configure is now passed crucial variables such as CC and CFLAGS
    in its environment, as many packages were not setting them (as
    documented in 'Writing R Extensions' SS1.2).
    This has most effect where configure is used to compile parts of
    the package - most often by cmake or libtool which obfuscate the
    actual compile commands used.
    Also used for configure.win and configure.ucrt on Windows.
  FORTRAN FLAGS:
  * The flag -fno-optimize-sibling-calls is no longer forced for
    gfortran 7 and later.  It should no longer be needed now using
    'hidden' character-length arguments when calling BLAS/LAPACK
    routines from C/C++ is the default even for packages.  (Unless
    perhaps packages call Fortran code from C/C++ without using R's
    headers and without allowing for these arguments.)
  C-LEVEL FACILITIES:
  * The deprecated S-compatibility macros DOUBLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * The deprecated legacy typedefs of Sint and Sfloat in header R.h
    are no longer defined, and that header no longer includes header
    limits.h from C nor climits from C++.
  * New macro CAD5R() is provided in Rinternals.h and used in a few
    places in the R sources.
  * ALTREP now supports VECSXP vectors. Contributed by Gabor Csardi
    in PR#17620.
  * The Rcomplex definition (in header R_ext/Complex.h) has been
    extended to prevent possible mis-compilation when interfacing
    with Fortran (PR#18430).  The new definition causes compiler
    warnings with static initializers such as {1, 2}, which can be
    changed to {.r=1, .i=2}.
    Using the new definition from C++ depends on compiler extensions
    supporting C features that have not been incorporated into the
    C++ standards but are available in g++ and clang++: this may
    result in C++ compiler warnings but these have been worked around
    for recent versions of common compilers (GCC, Apple/LLVM clang,
    Intel).
    It is intended to change the inclusion of header R_ext/Complex.h
    by other R headers, so C/C++ code files which make use of
    Rcomplex should include that header explicitly.
  UTILITIES:
  * R CMD check does more checking of package .Rd files, warning
    about invalid email addresses and (some) invalid URIs and noting
    empty \item labels in description lists.
  * R CMD check now also reports problems when reading package news
    in md (file NEWS.md) and (optionally) plain text (file NEWS)
    formats.
  * _R_CHECK_TIMINGS_ defaults to a value from the environment even
    for R CMD check --as-cran; this allows for exceptionally fast or
    slow platforms.
    It now applies to checking PDF and HTML versions of the manuals,
    and 'checking CRAN incoming feasibility'.
  * R CMD check can optionally (but included in --as-cran) check
    whether HTML math rendering _via_ KaTeX works for the package .Rd
    files.
  * Non-interactive debugger invocations can be trapped by setting
    the environment variable _R_CHECK_BROWSER_NONINTERACTIVE_ to a
    true value.  This is enabled by R CMD check --as-cran to detect
    the use of leftover browser() statements in the package.
  * The use of sprintf and vsprintf from C/C++ has been deprecated in
    macOS 13 and is a known security risk.  R CMD check now reports
    (on all platforms) if their use is found in compiled code:
    replace by snprintf or vsnprintf respectively. [*NB:* whether
    such calls get compiled into the package is platform-dependent.]
  * Where recorded at installation, R CMD check reports the C and
    Fortran compilers used to build R.
    It reports the OS in use (if known, as given by osVersion) as
    well as that R was built for.
    It notes if a C++ standard was specified which is older than the
    current default: many packages have used C++11 to mean 'not
    C++98' - as C++11 is the minimum supported since R 4.0.0, that
    specification can probably be removed.
  * R CMD INSTALL reports the compilers (and on macOS, the SDK) used,
    and this is copied to the output of R CMD check.
    Where a C++ standard is specified, it is reported.
  * R CMD check's 'checking compilation flags in Makevars' has been
    relaxed to accept the use of flags such as -std=f2008 in
    PKG_FFLAGS.
  * tools::buildVignettes() has a new argument skip, which is used by
    R CMD check to skip (and note) vignettes with unavailable
    \VignetteDepends (PR#18318).
  * New generic .AtNames() added to enable class-specific completions
    after @. The formerly internal function findMatches() is now
    exported, mainly for use in methods for .DollarNames() and
    .AtNames().
  DEPRECATED AND DEFUNCT:
  * default.stringsAsFactors() is defunct.
  * Calling as.data.frame.&lt;class&gt;() directly (for 12 atomic classes)
    is going to be formally deprecated, currently activated by
    setting the environment variable
    _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ to non-empty, which also
    happens in R CMD check --as-cran.
  BUG FIXES:
  * Hashed environments with sizes less than 5 can now grow.
    (Reported to R-devel by Duncan Garmonsway.)
  * as.character(&lt;Rd&gt;, deparse = TRUE) failed to re-escape curly
    braces in LaTeX-like text.  (Reported by Hadley Wickham in
    PR#18324.)
  * library() now passes its lib.loc argument when requiring Depends
    packages; reported (with fix) in PR#18331 by Mikael Jagan.
  * R CMD Stangle: improved message about 'Output' files.
  * head(x, n) and tail(x, n) now signal an error if n is not
    numeric, instead of incidentally "working" sometimes returning
    all of x.  Reported and discussed by Colin Fay, in PR#18357.
  * The "lm" method for summary() now gives the correct F-statistic
    when the model contains an offset.  Reported in PR#18008.
  * C() and `contrasts&lt;-`() now preserve factor level names when
    given a function object (as opposed a function name which did
    preserve names). Reported in PR#17616.
  * c(a = 1, 2)[[]] no longer matches 2 but rather signals a
    _classed_ error.  Reported and analysed by Davis Vaughan in
    PR#18367, a duplicate of PR#18004, by Jan Meis et al.  For
    consistency, NULL[[]] is also erroneous now.  x[[]] &lt;- v gives an
    error of the same class "MissingSubscriptError".
  * The relist() function of utils now supports NULL elements in the
    skeleton (PR#15854).
  * ordered(levels = *) (missing x) now works analogously to factor(,
    ordered=TRUE); reported (with fix) by Achim Zeileis in PR#18389.
  * User-defined Rd macro definitions can now span multiple lines,
    thanks to a patch from Duncan Murdoch. Previously, the Rd parser
    silently ignored everything after the first line.
  * Plain-text help (tools::Rd2txt()) now preserves an initial blank
    line for text following description list items.
  * tools::Rd2HTML() and tools::Rd2latex() no longer split \arguments
    and \value lists at Rd comments.
  * tools::Rd2latex() now correctly handles optional text outside
    \items of argument lists as well as bracketed text at the
    beginning of sections, e.g., \value{[NULL]}.
  * as.character(&lt;POSIXt&gt;) now behaves more in line with the methods
    for atomic vectors such as numbers, and is no longer influenced
    by options().  Ditto for as.character(&lt;Date&gt;).  The
    as.character() method gets arguments digits and OutDec with
    defaults _not_ depending on options().  Use of as.character(*,
    format = .) now warns.
  * Similarly, the as.character.hexmode() and *.octmode() methods
    also behave as good citizen methods and back compatibility option
    keepStr = TRUE.
  * The as.POSIXlt(&lt;POSIXlt&gt;) and as.POSIXct(&lt;POSIXct&gt;) default
    methods now do obey their tz argument, also in this case.
  * as.POSIXlt(&lt;Date&gt;) now does apply a tz (time zone) argument, as
    does as.POSIXct(); partly suggested by Roland Fuss on the R-devel
    mailing list.
  * as.Date.POSIXlt(x) now also works when the list components are of
    unequal length, aka "partially filled" or "ragged".
  * expand.model.frame() looked up variables in the wrong environment
    when applied to models fitted without data.  Reported in
    PR#18414.
  * time() now (also) uses the ts.eps = getOption("ts.eps") argument
    and thus by default rounds values very close to the start (or
    end) of a year.  Based on a proposal by Andre"i V. Kostyrka on
    R-help.
  * Printing of a factanal() result with just one factor and sort =
    TRUE now works regularly, fixing PR#17863 by Timothy Bates,
    thanks to the 'R Contributors' working group.
  * Printing 0-length objects of class "factor", "roman", "hexmode",
    "octmode", "person", "bibentry", or "citation" now prints
    something better, one of which fixes PR#18422, reported by
    Benjamin Feakins.
  * Sys.timezone() queries timedatectl only if systemd is loaded;
    addressing a report by Jan Gorecki in PR#17421.
  * The formula method of cor.test() had scoping problems when
    environment(formula) was not the calling environment; reported
    with a patch proposal by Mao Kobayashi in PR#18439.
  * attach() of an environment with active bindings now preserves the
    active bindings.  Reported by Kevin Ushey in PR#18425.
  * BLAS detection now works also with system-provided libraries not
    available as regular files.  This fixes detection of the
    Accelerate framework on macOS since Big Sur.  Reported by David
    Novgorodsky.
  * download.file() gives a helpful error message in case of an
    invalid download.file.method option, thanks to Colin Fay's report
    in PR#18455.
  * Sporadic crashes of Rterm when using completion have been fixed.
  * Rprof() is now more reliable.  A livelock in thread
    initialization with too short sampling interval has been fixed on
    macOS.  A deadlock in using the C runtime has been fixed on
    Windows.  A potential deadlock has been prevented on Unix.
  * Cursor placement in Rgui now works even after a fixed-width font
    is selected.
  * Mandatory options (options()) are now set on startup so that
    saving and restoring them always works (PR#18372).
  * Package installation, R CMD INSTALL or install.packages(*), now
    parses each of the &lt;pkg&gt;/R/*.R files individually instead of
    first concatenating and then parse()ing the large resulting file.
    This allows parser or syntax errors to be diagnosed with correct
    file names and line numbers, thanks to Simon Dedman's report and
    Bill Dunlap's patch in PR#17859.
    This _does_ require syntactically self contained R source files
    now, fixing another inadvertent bug.
  * predict.lm(&lt;model with offset&gt;) now finds the offset in the
    correct environment, thanks to Andr'e Gillibert's report and patch
    in PR#18456.
  * getInitial(&lt;formula&gt;) now finds the selfStart model in the
    correct environment.  (Reported by Ivan Krylov in PR#18368.)
  * Fix for possible segfault when using recently-added graphics
    features, such as gradients, clipping paths, masks, and groups
    with pdf(file=NULL).
  * class(m) &lt;- class(m) no longer changes a matrix m by adding a
    class _attribute_.
  * packageDate(pkg) now only warns once if there is no pkg.
  * When ts() creates a multivariate time series, "mts", it also
    inherits from "array" now, and is.mts() is documented _and_
    stricter.
  * Rd2txt() now preserves line breaks of \verb Rd content and from
    duplicated \cr.  The former also fixes the rendering of verbatim
    output from Rd \Sexpr in plain-text help.
  * uniroot(f, interval) should no longer wrongly converge _outside_
    the interval in some cases where abs(f(x)) == Inf for an x at the
    interval boundary, thanks to posts by Ben Bolker and Serguei
    Sokol on R-devel.
  * Vectorized alpha handling in palette functions such as in gray(),
    rainbow(), or hcl.colors() works correctly now, thanks to Achim
    Zeileis' report and patch in PR#18476.
  * Formatting and print()ing of bibentry objects has dropped the
    deprecated citation.bibtex.max argument, such that the bibtex
    argument's default for print.bibentry() depends directly on the
    citation.bibtex.max option, whereas in format.bibentry() the
    option no longer applies.
  * Attempting to use a character string naming a foreign function
    entry point in a foreign function call in a package will now
    signal an error if the packages has called R_forceSymbols to
    specify that symbols must be used.
  * An error in table() could permanently set options(warn=2)
    promoting all subsequent warnings to errors.
  * The sigma() function gave misleading results for binary GLMs.  A
    new method for objects of class "glm" returns the square root of
    the estimate of the dispersion parameter using the same
    calculation as summary.glm().
  * bs() and ns() in the (typical) case of automatic knot
    construction, when some of the supposedly inner knots coincide
    with boundary knots, now moves them inside (with a warning),
    building on PR#18442 by Ben Bolker.
  * R CMD on Windows now skips the site profile with --no-site-file
    and --vanilla even when R_PROFILE is set (PR#18512, from Kevin
    Ushey).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1686916800">- CHANGES IN R 4.3.1:
  C-LEVEL FACILITIES:
  * The C-level API version of R's integrate(), Rdqags() in Applic.h,
    now returns the correct number of integrand evaluations neval,
    fixing PR#18515 reported and diagnosed by Stephen Wade.
  * The C prototypes for LAPACK calls dspgv and dtptrs in
    R_exts/Lapack.h had one too many and one too few character length
    arguments - but this has not caused any known issues. To get the
    corrected prototypes, include
    [#]include &lt;Rconfig.h&gt; // for PR18534fixed
    [#]ifdef PR18534fixed
    [#] define usePR18534fix 1
    [#]endif
    [#]include &lt;R_exts/Lapack.h&gt;
    in your C/C++ code (PR#18534).
  INSTALLATION:
  * Many of the checks of esoteric Internet operations and those
    using unreliable external sites have been moved to a new target
    that is not run by default and primarily intended for the core
    developers.  To run them use
    cd tests; make test-Internet-dev
  BUG FIXES:
  * .S3methods(), typically called from methods(), again marks
    methods from package base as visible.
    Also, the visibility of non-base methods is again determined by
    the method's presence in search().
  * tools::Rdiff() is now more robust against invalid strings, fixing
    installation tests on Windows without Rtools installed
    (PR#18530).
  * Fix (new) bug in hcl.colors(2, *), by Achim Zeileis (PR#18523).
  * head(., &lt;illegal&gt;) and tail(..) now produce more useful "Error in
    ...." error messages, fixing PR#18362.
  * Package code syntax on Windows is checked in UTF-8 when UTF-8 is
    the native encoding.
  * na.contiguous(x) now also returns the first run, when it is at
    the beginning and there is a later one of the same length;
    reported to R-devel, including a fix, by Georgi Boshnakov.
    Further, by default, it modifies only an existing attr(*,"tsp")
    but otherwise no longer sets one.
  * chol(&lt;not pos.def&gt;, pivot = &lt;T|F&gt;) now gives a correct error or
    warning message (depending on pivot), thanks to Mikael Jagan's
    (PR#18541).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1699012800">- CHANGES IN R 4.3.2:
  NEW FEATURES:
  * The default initialization of the "repos" option from the
    repositories file at startup can be skipped by setting
    environment variable R_REPOSITORIES to NULL such that
    getOption("repos") is empty if not set elsewhere.
  * qr.X() is now an implicit S4 generic in methods.
  * iconv(to = "ASCII//TRANSLIT") is emulated using substitution on
    platforms which do not support it (notably Alpine Linux).  This
    should give a human-readable conversion in ASCII on all platforms
    (rather than NA_character_).
  * trans3d() gains options continuous and verbose addressing the
    problem of possible "wrap around" when projecting too long
    curves, as reported by Achim Zeileis in PR#18537.
  * tools::showNonASCII() has been rewritten to work better on macOS
    14 (which has a changed implementation of iconv()).
  * tiff(type = "quartz") (the default on macOS) now warns if
    compression is specified: it continues to be ignored.
  INSTALLATION on a UNIX-ALIKE:
  * There is some support for building with Intel's LLVM-based
    compilers on x86_64 Linux, such as (C) icx, (C++) ipcx and
    (Fortran) ifx from oneAPI 2023.x.y.
  * There is support for using LLVM's flang-new as the Fortran
    compiler from LLVM 16.0.x (preferably 17.0.0 or later).
  UTILITIES:
  * R CMD check reports the use of the Fortran 90 random number
    generator RANDOM_NUMBER() and the subroutines to initialize it.
    'Writing R Extensions' has example code to use R's RNGs from
    Fortran.
  BUG FIXES:
  * substr(x, n, L) &lt;- cc now works (more) correctly for multibyte
    UTF-8 strings x when L &gt; nchar(x), thanks to a report and patch
    by 'Architect 95'.
  * contrib.url(character()) now returns 0-length character() as
    documented, which also avoids spurious warnings from
    available.packages() et al. in the edge case of an empty vector
    of repository URLs.
  * readChar(., 4e8) no longer fails, thanks to Kodi Arfer's report
    (PR#18557).
  * lapply(&lt;list&gt;, as.data.frame) no longer warns falsely for some
    base vector components.
  * Communication between parent and child processes in the multicore
    part of parallel could fail on platforms that do not support an
    arbitrarily large payload in system functions read()/write() on
    pipes (seen on macOS where a restriction to INT_MAX bytes is
    documented, without doing a partial read unlike Linux). The
    payload is now split into 1Gb chunks to avoid that problem.
    (PR#18571)
  * qqplot(x,y, conf.level=.) gives better confidence bounds when
    length(x) != length(y), thanks to Alexander Ploner's report and
    patch proposal (PR#18557).
  * norm(&lt;0-length&gt;, "2") now gives zero instead of an error, as all
    the other norm types, thanks to Mikael Jagan's PR#18542.
  * Build-stage Rd macros \packageAuthor and \packageMaintainer now
    process Authors@R, fixing NA results when the package DESCRIPTION
    omits Author and Maintainer fields.
  * Formatting and printing complex numbers could give things like
    0.1683-0i because of rounding error: -0i is now replaced by +0i.
  * postscript() refused to accept a title comment containing the
    letter "W" (PR#18599).
  * isoreg(c(1,Inf)) signals an error instead of segfaulting, fixing
    PR#18603.
  * tiff(type = "Xlib") was only outputting the last page of
    multi-page plots.
  * tools::latexToUtf8() again knows about \~{n} and other letters
    with tilde, fixing a regression in R 4.3.0, and about \^{i} as an
    alternative to \^{\i} (similarly with other accents).
    Furthermore, LaTeX codes for accented I letters are now correctly
    converted, also fixing related mistakes in
    tools::encoded_text_to_latex().
  * tar(*, tar = "internal") no longer creates out-of-spec tar files
    in the very rare case of user or group names longer than 32
    bytes, fixing PR#17871 with thanks to Ivan Krylov.
  * When using the "internal" timezone datetime code, adding a
    fraction of a second no longer adds one second, fixing PR#16856
    from a patch by Ivan Krylov.
  * tools::checkRd() no longer produces spurious notes about
    "unnecessary braces" from multi-line Rd results of \Sexpr macros.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1709208000">- CHANGES IN R 4.3.3:
  NEW FEATURES:
  * iconv() now fixes up variant encoding names such as "utf8"
    case-insensitively.
  DEPRECATED AND DEFUNCT:
  * The legacy encoding = "MacRoman" is deprecated in pdf() and
    postscript(): support was incomplete in earlier versions of R.
  BUG FIXES:
  * Arguments are now properly forwarded to methods on S4 generics
    with ... in the middle of their formal arguments. This was broken
    for the case when a method introduced an argument but did not
    include ... in its own formals. Thanks to Herv'e Pag`es for the
    report PR#18538.
  * Some invalid file arguments to pictex(), postscript() and xfig()
    opened a file called NA rather than throw an error.  These
    included postscript(NULL) (which some people expected to work
    like pdf(NULL)).
  * Passing filename = NA to svg(), cairo_pdf(), cairo_ps() or the
    Cairo-based bitmap devices opened a file called NA: it now throws
    an error.
  * quartz(file = NA) opened a file called NA, including when used as
    a Quartz-based bitmap device.  It now gives an error.
  * rank(&lt;long vector&gt;) now works, fixing PR#18617, thanks to Ilia
    Kats.
  * seq.int() did not adequately check its length.out argument.
  * match(&lt;POSIXct&gt;, .) is correct again for differing time zones,
    ditto for "POSIXlt", fixing PR#18618 reported by Bastian Klein.
  * drop.terms(*, dropx = &lt;0-length&gt;) now works, fixing PR#18563 as
    proposed by Mikael Jagan.
  * drop.terms(*) keeps + offset(.) terms when it should, PR#18565,
    and drop.terms() no longer makes up a response, PR#18566, fixing
    both bugs thanks to Mikael Jagan.
  * getS3method("t", "test") no longer finds the t.test() function,
    fixing PR#18627.
  * pdf() and postscript() support for the documented Adobe encodings
    "Greek" and "Cyrilllic" was missing (although the corresponding
    Windows' codepages could be used).
  * Computations of glyph metric information for pdf() and
    postscript() did not take into account that transliteration could
    replace one character by two or more (only seen on macOS 14) and
    typically warned that the information was not known.
  * rank(x) no longer overflows during integer addition, when
    computing rank average for largish but not-yet long vector x,
    fixing PR#18630, thanks to Ilia Kats.
  * list.files() on Windows now returns also files with names longer
    that 260 bytes (the Windows limit is 260 characters).
    Previously, some file names particularly with 'East Asian'
    characters were omitted.
  * cov2cor(&lt;0 x 0&gt;) now works, fixing PR#18423 thanks to Mikael
    Jagan and Elin Waring.
  * cov2cor(&lt;negative diagonal&gt;) and similar now give one warning
    instead of two, with better wording, fixing PR#18424 thanks to
    Mikael Jagan.
  * tools:: startDynamicHelp() now ensures port is in proper range,
    fixing PR#18645.
  * pbeta(x, a,b) is correct now for x=0 or 1 in the boundary cases
    where a or b or both are 0, fixing PR#18672 thanks to Michael
    Fay.
  * pmatch(x, table) for large table, also called for data frame row
    selection, dfrm[nm, ], is now interruptible, fixing PR#18656.
  * predict(&lt;rank-deficient lm&gt;, newdata=*) fix computing of nbasis,
    see Russ Lenth's comment 29 in PR#16158.
  * Added a work-around for a bug in macOS 14.3.1 and higher which
    prevents R plots in the Quartz Cocoa device from updating on
    screen.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1713960000">- CHANGES IN R 4.4.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Startup banners, R --version, sessionInfo() and R CMD check no
    longer report (64-bit) as part of the platform as this is almost
    universal - the increasingly rare 32-bit platforms will still
    report (32-bit).
    On Windows, ditto for window titles.
  * is.atomic(NULL) now returns FALSE, as NULL is not an atomic
    vector.  Strict back-compatibility would replace is.atomic(foo)
    by (is.null(foo) || is.atomic(foo)) but should happen only
    sparingly.
  NEW FEATURES:
  * The confint() methods for "glm" and "nls" objects have been
    copied to the stats package.  Previously, they were stubs which
    called versions in package MASS. The MASS namespace is no longer
    loaded if you invoke (say) confint(glmfit).  Further, the "glm"
    method for profile() and the plot() and pairs() methods for class
    "profile" have been copied from MASS to stats.  (profile.nls()
    and plot.profile.nls() were already in stats.)
  * The confint() and profile methods for "glm" objects have gained a
    possibility to do profiling based on the Rao Score statistic in
    addition to the default Likelihood Ratio. This is controlled by a
    new test = argument.
  * The pairs() method for "profile" objects has been extended with a
    which = argument to allow plotting only a subset of the
    parameters.
  * The "glm" method for anova() computes test statistics and
    p-values by default, using a chi-squared test or an F test
    depending on whether the dispersion is fixed or free.  Test
    statistics can be suppressed by giving argument test a false
    logical value.
  * In setRepositories() the repositories can be set using their
    names via name = instead of index ind =.
  * methods() and .S3methods() gain a all.names option for the (rare)
    case where functions starting with a . should be included.
  * Serializations can now be interrupted (e.g., by Ctrl-C on a
    Unix-alike) if they take too long, e.g., from save.image(),
    thanks to suggestions by Ivan Krylov and others on R-devel.
  * New startup option --max-connections to set the maximum number of
    simultaneous connections for the session.  Defaults to 128 as
    before: allowed values up to 4096 (but resource limits may in
    practice restrict to smaller values).
  * R on Windows (since Windows 10 2004) now uses the new Segment
    Heap allocator. This may improve performance of some
    memory-intensive applications.
  * When R packages are built, typically by R CMD build &lt;pkg&gt;, the
    new --user=&lt;build_user&gt; option overrides the (internally
    determined) user name, currently Sys.info()["user"] or LOGNAME.
    This is a (modified) fulfillment of Will Landau's suggestion in
    PR#17530.
  * tools::testInstalledBasic() gets new optional arguments outDir
    and testSrcdir, e.g., allowing to use it in a &lt;builddir&gt; !=
    &lt;srcdir&gt; setup, and in standard "binary" Windows installation
  * if* a source tests/ folder is present.
  * range(&lt;DT_with_Inf&gt;, finite = TRUE) now work for objects of class
    "Date", "POSIXct", and "POSIXlt" with infinite entries,
    analogously to range.default(), as proposed by Davis Vaughan on
    R-devel.  Other range()-methods can make use of new function
    .rangeNum().
  * New .internalGenerics object complementing .S3PrimitiveGenerics,
    for documentation and low-level book-keeping.
  * grid() now invisibly returns the x- and y- coordinates at which
    the grid-lines were drawn.
  * norm(., type) now also works for complex matrices.
  * kappa(., exact = TRUE, norm = *) now works for all norms and also
    for complex matrices.  In symmetric / triangular cases, the new
    argument uplo = "U" | "L" allows the upper or lower triangular
    part to be specified.
  * memDecompress(type = "unknown") recognizes compression in the
    default 'zlib' format as used by memCompress(type = "gzip").
  * memCompress() and memDecompress() will use the libdeflate library
    (&lt;https://github.com/ebiggers/libdeflate&gt;) if installed.  This
    uses the same type of compression for type = "gzip" but is 1.5-2x
    faster than the system libz library on some common platforms: the
    speed-up may depend on the library version.
  * diff() for objects of class "Date", "POSIXct", and "POSIXlt"
    accepts a units argument passed via ....
  * Dynamic help now does a much better job of rendering package
    DESCRIPTION metadata.
  * Rprof() gains an event argument and support for elapsed (real)
    time profiling on Unix (PR#18076).
  * filled.contour() gains a key.border argument.
  * tools::update_pkg_po() gets arguments pot_make and mo_make for
    _not_ re-making the corresponding files, and additionally a
    verbose argument.
  * Hexadecimal string colour specifications are now accepted in
    short form, so, for example, we can use "#123", which is
    equivalent to "#112233".
    Thanks to MikeFC for the original idea and Ella Kaye, Malcolm
    Barrett, George Stagg, and Hanne Oberman for the patch.
  * Plain-text help shows \var markup by angle brackets.
  * The new experimental primitive function declare() is intended to
    eventually allow information about R code to be communicated to
    the interpreter, compiler, and code analysis tools. The syntax
    for declarations is still being developed.
  * Functions psmirnov(), qsmirnov() and rsmirnov() in package stats
    have had argument two.sided renamed to alternative, to take into
    account that the permutation distributions of the one-sided
    statistics can be different in the case of ties.  Consequence of
    PR#18582.
  * sort() is now an implicit S4 generic in methods.
  * Formatting and printing, format(z), print(z), of complex vectors
    z no longer zap relatively small real or imaginary parts to zero,
    fixing PR#16752.  This is an API change, as it was documented
    previously to round real and imaginary parts together on purpose,
    producing nicer looking output.  As mentioned, e.g. in the PR,
    this change is compatible with many other "R-like" programming
    environments.
    We have simplified the internal code and now basically format the
    real and imaginary parts independently of each other.
  * New experimental functions Tailcall() and Exec() to support
    writing stack-space-efficient recursive functions.
  * Where characters are attempted to be plotted by pdf(),
    postscript() and xfig() which are not in the selected 8-bit
    character set (most often Latin-1) and the R session is using a
    UTF-8 locale, the warning messages will show the UTF-8 character
    rather than its bytes and one dot will be substituted per
    character rather than per byte.  (Platforms whose iconv() does
    transliteration silently plot the transliteration.)
    In a UTF-8 locale some transliterations are now done with a
    warning (e.g., dashes and Unicode minus to hyphen, ligatures are
    expanded, permille (‰) is replaced by o/oo), although the OS may
    have got there first.  These are warnings as they will continue
    to be replaced by dots in earlier versions of R.
  * The matrix multiplication functions crossprod() and tcrossprod()
    are now also primitive and S3 generic, as %*% had become in R
    4.3.0.
  * source() and example() have a new optional argument catch.aborts
    which allows continued evaluation of the R code after an error.
  * The non-Quartz tiff() devices allow additional types of
    compression if supported by the platform's libtiff library.
  * The list of base and recommended package names is now provided by
    tools::standard_package_names().
  * cairo_pdf() and cairo_ps() default to onefile = TRUE to closer
    match pdf() and postscript().
  * New option catch.script.errors provides a documented way to catch
    errors and then continue in non-interactive use.
  * L %||% R newly in base is an expressive idiom for the phrases
    if(!is.null(L)) L else R or if(is.null(L)) R else L.
  * The return value from warnings() now always inherits from
    "warnings" as documented, now also in the case of no warnings
    where it previously returned NULL.
  * as.complex("1i") now returns 0 + 1i instead of NA with a warning.
  * z &lt;- c(NA, 1i) now keeps the imaginary part Im(z[1]) == 0, no
    longer coercing to NA_complex_.  Similarly, cumsum(z) correctly
    sums real and imaginary parts separately, i.e., without
    "crosstalk" in case of NAs.
  * On Alpine Linux iconv() now maps "latin2", "latin-2", "latin9"
    and "latin-9" to encoding names the OS knows about
    (case-insensitively).
  * iconv(sub = "Unicode") now always zero-pads to four (hex) digits,
    rather than to 4 or 8.  (This seems to have become the convention
    once Unicode restricted the number of Unicode points to 2^21 - 1
    and so will never need more than 6 digits.)
  * NCOL(NULL) now returns 0 instead of 1, for consistency with
    cbind().
  * The information for the Euro glyph missing from the Adobe .afm
    files for the Courier, Helvetica and Times families has been
    copied from their URW equivalents - this will improve vertical
    centring in the pdf() and postscript() devices.
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.12.0.  The changes are almost entirely cosmetic.
  * The included LAPACK sources have been updated to version 3.12.0
    and some further double-complex routines added.
  * There are new font families for the 2014--5 URW 2.0 fonts (see
    ?pdf) which are included in recent versions of Ghostscript.
    These have font widths for most Greek glyphs and a few others
    which were missing from the original versions (whose font
    families remain available for reproducibility, although
    Ghostscript-based viewers will render using the 2.0 versions).
  * Improve the large-n efficiency of as.matrix(&lt;dist&gt;), thanks an R
    contributors effort, notably by Tim Taylor and Heather Turner,
    see PR#18660.
  * The default and numeric methods of all.equal() get a check.class
    option.
  * zapsmall() gets new optional arguments, function mFUN and min.d,
    for extra flexibility; fulfills a wish in PR#18199.  Also, it is
    now an implicit S4 generic in package methods.
  * The Rd filter for aspell() gains an ignore argument.
  * New generic function sort_by(), primarily useful for the
    data.frame method which can be used to sort rows of a data frame
    by one or more columns.
  * The icence headers for the RPC code in src/extra/xdr have been
    updated to use the GPL-compatible licence published by Oracle
    America in 2010.
  * New function pkg2HTML() in tools to create single-page HTML
    reference manuals for R packages.
  * The byte code evaluator now uses less C stack space for recursive
    calls to byte-compiled functions. It also makes more of an effort
    to avoid allocations for scalar return values.
  * New completion option backtick (disabled by default) allows
    non-syntactic completions to be wrapped in backquotes. This is
    currently only useful for Jupyter notebooks via the IRkernel
    package, and may cause problems for other backends.
  INSTALLATION:
  * The parser has been updated to work with bison 3.8.2, which is
    now used for the pre-generated parsers in gram.c, file.c, and
    gramRd.c. A few parser error messages have changed, which may
    affect code that relies on exact messages.
  INSTALLATION on a UNIX-ALIKE:
  * System valgrind headers are now required to use configure option
  - -with-valgrind-instrumentation with value 1 or 2.
  * configure will warn if it encounters a 32-bit build, as that is
    nowadays almost untested.
  * Environment variable R_SYSTEM_ABI is no longer used and so no
    longer recorded in etc/Renviron (it was not on Windows and was
    only ever used when preparing package tools).
  * If the libdeflate library and headers are available, libdeflate
    rather than libz is used to (de)compress R objects in lazy-load
    databases.  Typically tasks spend up to 5% of their time on such
    operations, although creating lazy-data databases is one of the
    exceptions.
    This can be suppressed if the library is available by the
    configure option --without-libdeflate-compression.
  * configure option --enable-lto=check has not worked reliably since
    2019 and has been removed.
  * The minimum autoconf requirement for a maintainer build has been
    increased to autoconf 2.71.
    It is intended to increase this to 2.72 for R 4.5.0: the
    distributed configure file was generated using 2.72.
  * The minimum version requirement for an external LAPACK has been
    reduced to 3.9.0.
  * No default C++ compiler is set if no C++17 compiler is detected:
    there is no longer an automatic fallback to C++14 or C++11.
    Compilers from the last five years should have sufficient
    support: for others macros CXX and CXXSTD can be set in file
    config.site to provide a fallback if needed.
    The Objective-C++ compiler now by default uses the standard
    selected by R for C++ (currently C++17) rather than the default
    standard for the C++ compiler (which on macOS is still C++98).
  INSTALLATION on macOS:
  * A new configure option --with-newAccelerate makes use of Apple's
    'new' BLAS / LAPACK interfaces in their Accelerate framework.
    Those interfaces are only available in macOS 13.3 or later, and
    building requires SDK 13.3 or later (from the Command Line Tools
    or Xcode 14.3 or later).
    By default the option uses new Accelerate for BLAS calls: to also
    use it for LAPACK use option --with-newAccelerate=lapack.  The
    later interfaces provide LAPACK 3.9.1 rather than 3.2.1: 3.9.1 is
    from 2021-04 and does not include the improved algorithms
    introduced in LAPACK 3.10.0 (including for BLAS calls).
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools44, an update of the Rtools43 toolchain.  It is
    based on GCC 13 and newer versions of MinGW-W64, binutils and
    libraries (targeting 64-bit Intel CPUs).  R-devel can no longer
    be built using Rtools43 without changes.
  * Rtools44 has experimental support for 64-bit ARM (aarch64) CPUs
    _via_ the LLVM 17 toolchain using lld, clang/flang-new and
    libc++.
  UTILITIES:
  * R CMD check notes when S4-style exports are used without
    declaring a strong dependence on package methods.
  * tools::checkRd() (used by R CMD check) detects more problems with
    \Sexpr-based dynamic content, including bad nesting of \Sexprs
    and invalid arguments.
  * tools::checkRd() now reports Rd titles and section names ending
    in a period; this is ignored by R CMD check unless environment
    variable _R_CHECK_RD_CHECKRD_MINLEVEL_ is set to -5 or smaller.
  * R CMD check now notes Rd files without an \alias, as long
    documented in 'Writing R Extensions' §1.3.1.  The check for a
    missing \description has been moved from tools::checkRd() to
    tools::checkRdContents().
  * R CMD check now visits inst/NEWS.Rd and OS-specific man
    subdirectories when checking Rd files.
  * tools::checkDocFiles() and tools::checkRdContents() now also
    check internal Rd files by default, but "specially" (ignoring
    missing documentation of arguments).
  * R CMD Rdiff gets option --useEx.
  * R CMD check now warns on non-portable uses of Fortran KIND such
    as INTEGER(KIND=4) and REAL(KIND=8).
    To see the failing lines set environment variable
    _R_CHECK_FORTRAN_KIND_DETAILS_ to a true value.
  * When checking Rd files, R CMD check now notes some of the "lost
    braces" that tools::checkRd() finds.  Typical problems are Rd
    macros missing the initial backslash (e.g., code{...}), in-text
    set notation (e.g., {1, 2}, where the braces need escaping), and
    \itemize lists with \describe-style entries of the form
    \item{label}{description}.
  * R CMD INSTALL (and hence check) will compile C++ code with
  - DR_NO_REMAP if environment variable _R_CXX_USE_NO_REMAP_ is set
    to a true value.  It is planned that this will in future become
    the default for compiling C++.
  * The new built-in Rd macro \dontdiff{} can be used to mark example
    code whose output should be ignored when comparing check output
    to reference output (tests/Examples/&lt;pkg&gt;-Ex.Rout.save).  The
    \dontdiff tag, like \donttest, is _not_ shown on the rendered
    help page, so provides a clean alternative to ##
    IGNORE_RDIFF_(BEGIN|END) comments.
  * R CMD build when there is no NAMESPACE, now uses the recommended
    exportPattern("^[^.]"), instead of exporting everything.
  * R CMD check now warns about non-ASCII characters in the NAMESPACE
    file (in addition to R files). Such packages are not portable and
    may fail to install on some platforms.
  C-LEVEL FACILITIES:
  * Headers R_ext/Applic.h and R-ext/Linpack.h used to include
    R_ext/BLAS.h although this was undocumented and unneeded by their
    documented entry points.  They no longer do so.
  * New function R_missing(), factored out from do_missing(), used to
    fix PR#18579.
  * SEXP type S4SXP has been renamed to OBJSXP to support
    experimenting with alternative object systems.  The S4SXP value
    can still be used in C code but is now deprecated.  Based on
    contributions from the R Consortium's Object-Oriented Programming
    Working Group.
  * New function pow1p(x,y) for accurate (1+x)^y.
  * mkCharLenCE was incorrectly documented to take a size_t length
    but was implemented with int (and character strings in R are
    limited to 2^31 - 1 bytes).
  DEPRECATED AND DEFUNCT:
  * data() no longer handles zipped data from long-defunct (since R
    2.13.0) --use-zip-data installations.
  * The legacy graphics devices pictex() and xfig() are now
    deprecated.  They do not support recent graphics enhancements and
    their font handling is rudimentary. The intention is to retain
    them for historical interest as long as they remain somewhat
    functional.
  * Support for encoding = "MacRoman" has been removed from the pdf()
    and postscript() devices - this was a legacy encoding supporting
    classic macOS up to 2001 and no longer has universal libiconv
    support.
  * is.R() is deprecated as no other S dialect is known to be in use
    (and this could only identify historical dialects, not future
    ones).
    Further information on calls can be obtained by setting the
    environment variable _R_DEPRECATED_IS_R_ to error which turns the
    deprecation warning into an error and so by default gives a
    traceback.  (This is done by R CMD check --as-cran.)
  * UseMethod() no longer forwards local variables assigned in the
    generic function into method call environments before evaluating
    the method body. This makes method calls behave more like
    standard function calls and makes method code easier to analyze
    correctly.
  * The twelve as.data.frame.&lt;class&gt;() methods which were deprecated
    only via _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ and in R CMD
    check --as-cran are formally deprecated now in favour of calling
    as.data.frame() or as.data.frame.vector().  The deprecation
    "check" now works also when as.data.frame() is S4 generic thanks
    to Ivan Krylov.
  * The default method for the directional comparison operators &lt;, &gt;,
    &lt;=, and &gt;= now signals an error when one of the operands is a
    language object, i.e. a symbol or a call.
  * For terms.formula(), deprecate abb and neg.out arguments
    _formally_ in addition to just documenting it.
  BUG FIXES:
  * The methods package is more robust to not being attached to the
    search path.  More work needs to be done.
  * pairwise.t.test() misbehaved when subgroups had 0 DF for
    variance, even with pool.sd = TRUE.  (PR#18594 by Jack Berry).
  * Probability distribution functions [dpq]&lt;distrib&gt;(x, *), but also
    bessel[IKJY](x, .) now consistently preserve attributes(x) when
    length(x) == 0, e.g., for a 2 x 0 matrix, thanks to Karolis
    Koncevičius' report PR#18509.
  * Group "Summary" computations such as sum(1:3, 4, na.rm = 5, NA,
    7, na.rm = LL) now give an error instead of either 17 or NN for
    LL true or false, as proposed by Ivan Krylov on the R-devel
    mailing list.  (This also means it is now an error to specify
    na.rm more than once.)
  * as.complex(x) now returns complex(real = x, imaginary = 0) for
    _all_ numerical and logical x, notably also for NA or
    NA_integer_.
  * Directories are now omitted by file.copy(, recursive = FALSE) and
    in file.append() (PR#17337).
  * gsub() and sub() are now more robust to integer overflow when
    reporting errors caused by too large input strings (PR#18346).
  * Top-level handlers are now more robust to attempts to remove a
    handler whilst handlers are running (PR#18508).
  * The handling of Alt+F4 in dialogs created on Windows using
    GraphApp has been fixed (PR#13870).
  * density() more consistently computes grid values for the
    FFT-based convolution, following Robert Schlicht's analysis and
    proposal in PR#18337, correcting density values typically by a
    factor of about 0.999.  Argument old.coords = TRUE provides back
    compatibility.
  * palette.colors() gains a name argument that defaults to FALSE
    controlling whether the vector of colours that is returned has
    names (where possible).  PR#18529.
  * tools::xgettext() no longer extracts the (non-translatable) class
    names from warningCondition and errorCondition calls.
  * S3method(&lt;gen&gt;, &lt;class&gt;, &lt;func&gt;) in the NAMESPACE file now works
    (again) when &lt;func&gt; is visible from the namespace, e.g.,
    imported, or in base.
  * getParseData(f) now also works for a function defined in the
    first of several &lt;pkg&gt;/R/*.R source files, thanks to Kirill
    Müller's report and Duncan Murdoch's patch in PR#16756.
  * Rd \Sexpr macros with nested #ifdef conditionals were not
    processed.
  * A non-blocking connection with non-default encoding (such as a
    socket) now correctly returns from readLines() after new data has
    arrived also when its EOF had been reached previously.  Thanks to
    Peter Meilstrup's report on R-devel and Ivan Krylov's report and
    patch proposal in PR#18555.
  * tools::checkRdContents() failed to detect empty argument
    descriptions when they spanned multiple lines, including those
    generated by prompt().  These cases are now noted by R CMD check.
  * Plain-text help no longer outputs spurious colons in the
    arguments list (for multi-line \item labels in the Rd source).
  * kappa() and rcond() work correctly in more cases; kappa(., norm =
    "2") now warns that it computes the 1-norm with (default) exact =
    FALSE; prompted by Mikael Jagan's quite comprehensive PR#18543.
  * Rd skeletons generated by prompt() or promptData() now use a
    dummy title (so R CMD build works).  tools::checkRdContents() has
    been updated to detect such template leftovers, including from
    promptPackage().
  * When S4 method dispatch fails because no method was found, the
    error message now includes the signature argument names; thanks
    to Michael Chirico's proposal on the R-devel list.
  * withAutoprint({ .. }) now preserves srcrefs previously lost,
    thanks to Andrew Simmons' report plus fix in PR#18572.
  * transform.data.frame() no longer adjusts names; in particular,
    untransformed variables are kept as-is, including those with
    syntactically invalid names (PR#17890).
  * The keep.source option for Rd \Sexpr blocks is no longer ignored.
  * The formula methods for t.test() and wilcox.test() now catch when
    paired is passed, addressing PR#14359; use Pair(x1, x2) ~ 1 for a
    paired test.
  * The level reported in the browser prompt was often too large. It
    now shows the number of browser contexts on the stack.
  * For cbind() and rbind(), the optional deparse.level argument is
    now properly passed to methods, thanks to Mikael Jagan's PR#18579
    and comments there.
  * Some error and warning messages for large ('long vector')
    matrix(v, nr, nc) and dim(m) &lt;- d are now correct about sizes,
    using long long formatting, fixing PR#18612 (and more) reported
    by Mikael Jagan.
  * readChar(useBytes = TRUE) now terminates strings even when the
    underlying connection uses extra spaces in the input buffer.
    This fixes problems with extra garbage seen with gzip
    connections, PR#18605.
  * Named capture in PCRE regular expressions now works also with
    more than 127 named groups (PR#18588).
  * Datetime functions are now robust against long jumps when dealing
    with internal time zone changes.  This avoids confusing warnings
    about an invalid time zone, previously triggered by turning
    warnings into errors or handling them via tryCatch (PR#17966,
    PR#17780).
  * Datetime functions now restore even an empty TZ environment
    variable after internal time zone changes (PR#17724).  This makes
    results of datetime functions with this (typically unintentional)
    setting more predictable.
  * drop.terms(*) now drops response as by default, keep.response =
    FALSE, fixing PR#18564 thanks to Mikael Jagan.
  * dummy.coef(.) now also works for lm()-models with character
    categorical predictor variables rather than factor ones, fixing
    PR#18635 reported by Jinsong Zhao.
  * formals(f) &lt;- formals(f) now also works for a function w/o
    arguments and atomic _constant_ body(f).
  * Correct as.function(&lt;invalid list&gt;, .)'s error message.
  * removeSource() is yet more thorough in finding and removing
    "srcref" and the other source references from parsed R language
    chunks, fixing PR#18638 thanks to Andrew Simmons.
  * dgeom() is more accurate now, notably when its result is very
    small, fixing PR#18642 thanks to the proposal of Morten Welinder,
    also improving other instances where C level binom_raw(x, n, ..)
    has x == 0 or x== n.
  * warning() with options(warn = 1) has improved output for
    multi-line messages.
  * axis.Date() and axis.POSIXct() now respect the par("lab") setting
    for the number of pretty() intervals.
  * Comparisons for language objects (which are based on deparsing)
    are now more careful about using accurate deparsed results
    (PR#18676).
  * Plain-text help (Rd2txt) now correctly preserves blank lines
    following single-line \dontrun code.
  * &lt;POSIXlt&gt;[*] no longer sets wrong "balanced" attribute, fixing
    PR#18681 thanks to Mikael Jagan.
  * str(&lt;classed-call&gt;) now deparses the call as expected, fixing
    PR#18684, reported by Dave Slager.
  * In Rd examples, code following the closing brace of a \dontrun,
    \dontshow or \donttest tag on the same line is no longer skipped
    when R CMD check runs the examples.
  * as.data.frame(matrix(*, ncol=0)) now gets valid names() and
    colnames(); reported by Davis Vaughan on the R-devel list.
  * Internal Mathlib function stirlerr(n) is now almost fully
    (52-bit) accurate for all n &gt;= ~5.9 and more accurate also in the
    range 1 -- 5.9.  This entails small ("after 12th decimal")
    changes in density functions, e.g., dgamma() in _some_ regions of
    their support.  The fix was partly prompted by Morten Welinder's
    PR#18640.
  * Numbers like 9876543.2 are now considered non-integer by Mathlib
    internal R_nonint(), amending original fix of PR#15734.
  * Rd comment lines no longer cause broken paragraphs in the
    rendered PDF and plain-text help. In code blocks, pure comment
    lines (starting with %) no longer produce an empty line.
  * xtabs(Freq ~ .) now consistently defaults to na.action = na.pass,
    using na.rm = FALSE (added as an argument) when summing over Freq
    (PR#17770).
  * tools::testInstalledPackage() is no longer silent about failures
    from running examples or tests and its return code no longer
    ignores failures from checking vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1718366400">- CHANGES IN R 4.4.1:
  C-LEVEL FACILITIES:
  * Functions R_atof and R_strtod declared in header R_ext/Utils.h
    are now documented in 'Writing R Extensions' and so formally part
    of the API.
  * The non-API entry points Rf_setSVector, Rf_StringFalse,
    Rf_StringTrue and Rf_isBlankString have been added to those
    reported by R CMD check.
  * The new function Rf_allocLang is now available. This provides an
    alternative to the idiom of calling Rf_allocList followed by
    SET_TYPEOF.
  UTILITIES:
  * R CMD check now reports as warnings what gfortran calls 'Fortran
    2018 deleted features', all of which have long been marked as
    'obsolescent' and some of which were deleted in Fortran 2008 or
    earlier.  Fortran compilers are no longer required to support
    these.
  BUG FIXES:
  * as.numeric(), scan(), type.convert() and other places which use
    the internal C function R_strtod now require a _non-empty_ digit
    sequence in a decimal or binary exponent.  This aligns with the
    C/POSIX standard for strtod and with ?NumericConstants.
  * as.data.frame(m, make.names=NA) now works correctly for a matrix
    m with NA's in row names.
  * The error message from &lt;POSIXlt&gt;[["hour"]] and similar now
    mentions *[[, "hour"]], as wished for in PR#17409 and proposed by
    Michael Chirico.
  * qbinom() and potentially qpois(), qnbinom(), no longer sometimes
    fail accurate inversion (of pbinom(), etc), thanks to Christopher
    Chang's report and patch in PR#18711.
  * The internal help server on Windows can again serve requests sent
    in quick succession, fixing a regression in R 4.4.0.
  * debugcall(&lt;S3Generic&gt;()) now also works when a corresponding
    S4-generic version is in the methods cache (PR#18143).
  * Package tools' toTitleCase(ch0) now returns character(0) when ch0
    is of zero length; fixing PR#18724, reported by David Hugh Jones.
  * R CMD check is no longer broken (without a check result and no
    explanation in 00check.log) for a package which declares an
    invalid VignetteBuilder in DESCRIPTION but has no vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1730376000">- CHANGES IN R 4.4.2:
  C-LEVEL FACILITIES:
  * The S-compatibility macros F77_COM and F77_COMDECL defined in
    header R_ext/RS.h are deprecated and will be removed shortly.  We
    could find no record of their use.
  BUG FIXES:
  * Mathlib function lgammacor(x) no longer warns about underflow to
    zero for large x.
  * Text widths and heights were incorrectly reported by the Quartz
    device if the drawing context didn't exist yet (typically when
    drawing off-screen to a window that is yet to appear, see
    PR#18591).
  * The Quartz device could segfault in cases where paths with spaces
    are used in the new glyph drawing API.  Thanks to Tomek
    Gieorgijewski (PR#18758).
  * On macOS in R CRAN builds, it is again possible to read
    little-endian UTF-16 text with a BOM from a connection using
    encoding="UTF-16".  Users building R from source should avoid
    using the system libiconv in macOS 14.1 and later.
  * methods' internal .requirePackage() now re-enables primitive
    method dispatch when needed; thanks to Ivan Krylov for
    demystifying CRAN package check failures on the R-devel mailing
    list.</changelog>
</package>
<package pkgid="186c466647c78428e5633cd11fbfb27e99b7f27a80a323742ec9a2c26d1c1754b4833dd04b80dc8d2b04605e40ad7bfb44940fda0c73bcd6e12702a29d0c633a" name="R-stats4" arch="x86_64">
  <version epoch="0" ver="4.4.2" rel="51.0.2.2.sr20241103"/>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1620302400">- To get in sync with d:l:R:autoCRAN the Matrix package's split
  in -devel was reversed.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339200">- improved spec file according to comments of dimstar in
  https://build.opensuse.org/request/show/892685</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339201">- CHANGES IN R 4.1.0:
  FUTURE DIRECTIONS:
  * It is planned that the 4.1.x series will be the last to support
    32-bit Windows, with production of binary packages for that
    series continuing until early 2023.
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Data set esoph in package datasets now provides the correct
    numbers of controls; previously it had the numbers of cases added
    to these.  (Reported by Alexander Fowler in PR#17964.)
  NEW FEATURES:
  * www.omegahat.net is no longer one of the repositories known by
    default to setRepositories().  (Nowadays it only provides source
    packages and is often unavailable.)
  * Function package_dependencies() (in package tools) can now use
    different dependency types for direct and recursive dependencies.
  * The checking of the size of tarball in R CMD check --as-cran
    &lt;pkg&gt; may be tweaked via the new environment variable
    _R_CHECK_CRAN_INCOMING_TARBALL_THRESHOLD_, as suggested in
    PR#17777 by Jan Gorecki.
  * Using c() to combine a factor with other factors now gives a
    factor, an ordered factor when combining ordered factors with
    identical levels.
  * apply() gains a simplify argument to allow disabling of
    simplification of results.
  * The format() method for class "ftable" gets a new option justify.
    (Suggested by Thomas Soeiro.)
  * New ...names() utility.  (Proposed by Neal Fultz in PR#17705.)
  * type.convert() now warns when its as.is argument is not
    specified, as the help file always said it _should_.  In that
    case, the default is changed to TRUE in line with its change in
    read.table() (related to stringsAsFactor) in R 4.0.0.
  * When printing list arrays, classed objects are now shown _via_
    their format() value if this is a short enough character string,
    or by giving the first elements of their class vector and their
    length.
  * capabilities() gets new entry "Rprof" which is TRUE when R has
    been configured with the equivalent of --enable-R-profiling (as
    it is by default).  (Related to Michael Orlitzky's report
    PR#17836.)
  * str(xS4) now also shows extraneous attributes of an S4 object
    xS4.
  * Rudimentary support for vi-style tags in rtags() and R CMD rtags
    has been added.  (Based on a patch from Neal Fultz in PR#17214.)
  * checkRdContents() is now exported from tools; it and also
    checkDocFiles() have a new option chkInternal allowing to check
    Rd files marked with keyword "internal" as well.  The latter can
    be activated for R CMD check via environment variable
    _R_CHECK_RD_INTERNAL_TOO_.
  * New functions numToBits() and numToInts() extend the raw
    conversion utilities to (double precision) numeric.
  * Functions URLencode() and URLdecode() in package utils now work
    on vectors of URIs.  (Based on patch from Bob Rudis submitted
    with PR#17873.)
  * path.expand() can expand ~user on most Unix-alikes even when
    readline is not in use.  It tries harder to expand ~, for example
    should environment variable HOME be unset.
  * For HTML help (both dynamic and static), Rd file links to help
    pages in external packages are now treated as references to
    topics rather than file names, and fall back to a file link only
    if the topic is not found in the target package. The earlier rule
    which prioritized file names over topics can be restored by
    setting the environment variable _R_HELP_LINKS_TO_TOPICS_ to a
    false value.
  * c() now removes NULL arguments before dispatching to methods,
    thus simplifying the implementation of c() methods, _but_ for
    back compatibility keeps NULL when it is the first argument.
    (From a report and patch proposal by Lionel Henry in PR#17900.)
  * Vectorize()'s result function's environment no longer keeps
    unneeded objects.
  * Function ...elt() now propagates visibility consistently with
    ..n.  (Thanks to Lionel Henry's PR#17905.)
  * capture.output() no longer uses non-standard evaluation to
    evaluate its arguments.  This makes evaluation of functions like
    parent.frame() more consistent.  (Thanks to Lionel Henry's
    PR#17907.)
  * packBits(bits, type="double") now works as inverse of
    numToBits().  (Thanks to Bill Dunlap's proposal in PR#17914.)
  * curlGetHeaders() has two new arguments, timeout to specify the
    timeout for that call (overriding getOption("timeout")) and TLS
    to specify the minimum TLS protocol version to be used for
    https:// URIs (_inter alia_ providing a means to check for sites
    using deprecated TLS versions 1.0 and 1.1).
  * For nls(), an optional constant scaleOffset may be added to the
    denominator of the relative offset convergence test for cases
    where the fit of a model is expected to be exact, thanks to a
    proposal by John Nash.  nls(*, trace=TRUE) now also shows the
    convergence criterion.
  * Numeric differentiation _via_ numericDeriv() gets new optional
    arguments eps and central, the latter for taking central divided
    differences.  The latter can be activated for nls() via
    nls.control(nDcentral = TRUE).
  * nls() now passes the trace and control arguments to getInitial(),
    notably for all self-starting models, so these can also be fit in
    zero-noise situations via a scaleOffset.  For this reason, the
    initial function of a selfStart model must now have ... in its
    argument list.
  * bquote(splice = TRUE) can now splice expression vectors with
    attributes: this makes it possible to splice the result of
    parse(keep.source = TRUE).  (Report and patch provided by Lionel
    Henry in PR#17869.)
  * textConnection() gets an optional name argument.
  * get(), exists(), and get0() now signal an error if the first
    argument has length greater than 1.  Previously additional
    elements were silently ignored.  (Suggested by Antoine Fabri on
    R-devel.)
  * R now provides a shorthand notation for creating functions, e.g.
    \(x) x + 1 is parsed as function(x) x + 1.
  * R now provides a simple native forward pipe syntax |&gt;.  The
    simple form of the forward pipe inserts the left-hand side as the
    first argument in the right-hand side call.  The pipe
    implementation as a syntax transformation was motivated by
    suggestions from Jim Hester and Lionel Henry.
  * all.equal(f, g) for functions now by default also compares their
    environment(.)s, notably via new all.equal method for class
    function.  Comparison of nls() fits, e.g., may now need
    all.equal(m1, m2, check.environment = FALSE).
  * .libPaths() gets a new option include.site, allowing to _not_
    include the site library.  (Thanks to Dario Strbenac's suggestion
    and Gabe Becker's PR#18016.)
  * Lithuanian translations are now available.  (Thanks to Rimantas
    Zakauskas.)
  * names() now works for DOTSXP objects.  On the other hand, in
    R-lang, the R language manual, we now warn against relying on the
    structure or even existence of such dot-dot-dot objects.
  * all.equal() no longer gives an error on DOTSXP objects.
  * capabilities("cairo") now applies only to the file-based devices
    as it is now possible (if very unusual) to build R with Cairo
    support for those but not for X11().
  * There is optional support for tracing the progress of
    loadNamespace() - see its help.
  * (Not Windows.)  l10n_info() reports an additional element, the
    name of the encoding as reported by the OS (which may differ from
    the encoding part (if any) of the result from
    Sys.getlocale("LC_CTYPE").
  * New function gregexec() which generalizes regexec() to find _all_
    disjoint matches and well as all substrings corresponding to
    parenthesized subexpressions of the given regular expression.
    (Contributed by Brodie Gaslam.)
  * New function charClass() in package utils to query the
    wide-character classification functions in use (such as
    iswprint).
  * The names of quantile()'s result no longer depend on the global
    getOption("digits"), but quantile() gets a new optional argument
    digits = 7 instead.
  * grep(), sub(), regexp and variants work considerably faster for
    long factors with few levels.  (Thanks to Michael Chirico's
    PR#18063.)
  * Provide grouping of x11() graphics windows within a window
    manager such as Gnome or Unity; thanks to a patch by Ivan Krylov
    posted to R-devel.
  * The split() method for class data.frame now allows the f argument
    to be specified as a formula.
  * sprintf now warns on arguments unused by the format string.
  * New palettes "Rocket" and "Mako" for hcl.colors() (approximating
    palettes of the same name from the 'viridisLite' package).
    Contributed by Achim Zeileis.
  * The base environment and its namespace are now locked (so one can
    no longer add bindings to these or remove from these).
  * Rterm handling of multi-byte characters has been improved,
    allowing use of such characters when supported by the current
    locale.
  * Rterm now accepts ALT+ +xxxxxxxx sequences to enter Unicode
    characters as hex digits.
  * Environment variable LC_ALL on Windows now takes precedence over
    LC_CTYPE and variables for other supported categories, matching
    the POSIX behaviour.
  * duplicated() and anyDuplicated() are now optimized for integer
    and real vectors that are known to be sorted via the ALTREP
    framework. Contributed by Gabriel Becker via PR#17993.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 14
    and so packages that provide graphics devices should be
    reinstalled.
  * Graphics devices should now specify deviceVersion to indicate
    what version of the graphics engine they support.
  * Graphics devices can now specify deviceClip.  If TRUE, the
    graphics engine will never perform any clipping of output itself.
    The clipping that the graphics engine does perform (for both
    canClip = TRUE and canClip = FALSE) has been improved to avoid
    producing unnecessary artifacts in clipped output.
  * The grid package now allows gpar(fill) to be a linearGradient(),
    a radialGradient(), or a pattern().  The viewport(clip) can now
    also be a grob, which defines a clipping path, and there is a new
    viewport(mask) that can also be a grob, which defines a mask.
    These new features are only supported so far on the Cairo-based
    graphics devices and on the pdf() device.
  * (Not Windows.)  A warning is given when a Cairo-based type is
    specified for a png(), jpeg(), tiff() or bmp() device but Cairo
    is unsupported (so type = "Xlib" is tried instead).
  * grSoftVersion() now reports the versions of FreeType and
    FontConfig if they are used directly (not _via_ Pango), as is
    most commonly done on macOS.
  C-LEVEL FACILITIES:
  * The _standalone_ libRmath math library and R's C API now provide
    log1pexp() again as documented, and gain log1mexp().
  INSTALLATION on a UNIX-ALIKE:
  * configure checks for a program pkgconf if program pkg-config is
    not found.  These are now only looked for on the path (like
    almost all other programs) so if needed specify a full path to
    the command in PKG_CONFIG, for example in file config.site.
  * C99 function iswblank is required - it was last seen missing ca
    2003 so the workaround has been removed.
  * There are new configure options --with-internal-iswxxxxx,
  - -with-internal-towlower and --with-internal-wcwidth which allows
    the system functions for wide-character classification,
    case-switching and width (wcwidth and wcswidth) to be replaced by
    internal ones.  The first has long been used on macOS, AIX (and
    Windows) but this enables it to be unselected there and selected
    for other platforms (it is the new default on Solaris).  The
    second is new in this version of R and is selected by default on
    macOS and Solaris.  The third has long been the default and
    remains so as it contains customizations for East Asian
    languages.
    System versions of these functions are often minimally
    implemented (sometimes only for ASCII characters) and may not
    cover the full range of Unicode points: for example Solaris (and
    Windows) only cover the Basic Multilingual Plane.
  * Cairo installations without X11 are more likely to be detected by
    configure, when the file-based Cairo graphics devices will be
    available but not X11(type = "cairo").
  * There is a new configure option --with-static-cairo which is the
    default on macOS.  This should be used when only static cairo
    (and where relevant, Pango) libraries are available.
  * Cairo-based graphics devices on platforms without Pango but with
    FreeType/FontConfig will make use of the latter for font
    selection.
  LINK-TIME OPTIMIZATION on a UNIX-ALIKE:
  * Configuring with flag --enable-lto=R now also uses LTO when
    installing the recommended packages.
  * R CMD INSTALL and R CMD SHLIB have a new flag --use-LTO to use
    LTO when compiling code, for use with R configured with
  - -enable-lto=R.  For R configured with --enable-lto, they have
    the new flag --no-use-LTO.
    Packages can opt in or out of LTO compilation _via_ a UseLTO
    field in the DESCRIPTION file.  (As usual this can be overridden
    by the command-line flags.)
  BUILDING R on Windows:
  * for GCC &gt;= 8, FC_LEN_T is defined in config.h and hence character
    lengths are passed from C to Fortran in _inter alia_ BLAS and
    LAPACK calls.
  * There is a new text file src/gnuwin32/README.compilation, which
    outlines how C/Fortran code compilation is organized and
    documents new features:
  * R can be built with Link-Time Optimization with a suitable
    compiler - doing so with GCC 9.2 showed several
    inconsistencies which have been corrected.
  * There is support for cross-compiling the C and Fortran code
    in R and standard packages on suitable (Linux) platforms.
    This is mainly intended to allow developers to test later
    versions of compilers - for example using GCC 9.2 or 10.x has
    detected issues that GCC 8.3 in Rtools40 does not.
  * There is experimental support for cross-building R packages
    with C, C++ and/or Fortran code.
  * The R installer can now be optionally built to support a single
    architecture (only 64-bit or only 32-bit).
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++14 where
    available (which it is on all currently checked platforms): if
    not (as before) C++11 is used if available otherwise C++ is not
    supported.
    Packages which specify C++11 will still be installed using C++11.
    C++14 compilers may give deprecation warnings, most often for
    std::random_shuffle (deprecated in C++14 and removed in C++17).
    Either specify C++11 (see 'Writing R Extensions') or modernize
    the code and if needed specify C++14.  The latter has been
    supported since R 3.4.0 so the package's DESCRIPTION would need
    to include something like
    Depends: R (&gt;= 3.4)
  PACKAGE INSTALLATION on Windows:
  * R CMD INSTALL and R CMD SHLIB make use of their flag --use-LTO
    when the LTO_OPT make macro is set in file etc/${R_ARCH}/Makeconf
    or in a personal/site Makevars file.  (For details see 'Writing R
    Extensions' SS4.5.)
    This provides a valuable check on code consistency.  It does work
    with GCC 8.3 as in Rtools40, but that does not detect everything
    the CRAN checks with current GCC do.
  PACKAGE INSTALLATION on macOS:
  * The default personal library directory on builds with
  - -enable-aqua (including CRAN builds) now differs by CPU type,
    one of
    ~/Library/R/x86_64/x.y/library
    ~/Library/R/arm64/x.y/library
    This uses the CPU type R (and hence the packages) were built for,
    so when a x86_64 build of R is run under Rosetta emulation on an
    arm64 Mac, the first is used.
  UTILITIES:
  * R CMD check can now scan package functions for bogus return
    statements, which were possibly intended as return() calls (wish
    of PR#17180, patch by Sebastian Meyer). This check can be
    activated via the new environment variable
    _R_CHECK_BOGUS_RETURN_, true for --as-cran.
  * R CMD build omits tarballs and binaries of previous builds from
    the top-level package directory.  (PR#17828, patch by Sebastian
    Meyer.)
  * R CMD check now runs sanity checks on the use of LazyData, for
    example that a data directory is present and that
    LazyDataCompression is not specified without LazyData and has a
    documented value.  For packages with large LazyData databases
    without specifying LazyDataCompression, there is a reference to
    the code given in 'Writing R Extensions' SS1.1.6 to test the
    choice of compression (as in all the CRAN packages tested a
    non-default method was preferred).
  * R CMD build removes LazyData and LazyDataCompression fields from
    the DESCRIPTION file of packages without a data directory.
  ENCODING-RELATED CHANGES:
  * The parser now treats \Unnnnnnnn escapes larger than the upper
    limit for Unicode points (\U10FFFF) as an error as they cannot be
    represented by valid UTF-8.
    Where such escapes are used for outputting non-printable
    (including unassigned) characters, 6 hex digits are used (rather
    than 8 with leading zeros).  For clarity, braces are used, for
    example \U{0effff}.
  * The parser now looks for non-ASCII spaces on Solaris (as
    previously on most other OSes).
  * There are warnings (including from the parser) on the use of
    unpaired surrogate Unicode points such as \uD834.  (These cannot
    be converted to valid UTF-8.)
  * Functions nchar(), tolower(), toupper() and chartr() and those
    using regular expressions have more support for inputs with a
    marked Latin-1 encoding.
  * The character-classification functions used (by default) to
    replace the system iswxxxxx functions on Windows, macOS and AIX
    have been updated to Unicode 13.0.0.
    The character-width tables have been updated to include new
    assignments in Unicode 13.0.0.
  * The code for evaluating default (extended) regular expressions
    now uses the same character-classification functions as the rest
    of R (previously they differed on Windows, macOS and AIX).
  * There is a build-time option to replace the system's
    wide-character wctrans C function by tables shipped with R: use
    configure option --with-internal-towlower or (on Windows)
  - DUSE_RI18N_CASE in CFLAGS when building R.  This may be needed
    to allow tolower() and toupper() to work with Unicode characters
    beyond the Basic Multilingual Plane where not supported by system
    functions (e.g. on Solaris where it is the new default).
  * R is more careful when truncating UTF-8 and other multi-byte
    strings that are too long to be printed, passed to the system or
    libraries or placed into an internal buffer.  Truncation will no
    longer produce incomplete multibyte characters.
  DEPRECATED AND DEFUNCT:
  * Function plclust() from the package stats and
    package.dependencies(), pkgDepends(), getDepList(),
    installFoundDepends(), and vignetteDepends() from package tools
    are defunct.
  * Defunct functions checkNEWS() and readNEWS() from package tools
    and CRAN.packages() from utils have been removed.
  * R CMD config CXXCPP is defunct (it was deprecated in R 3.6.2).
  * parallel::detectCores() drops support for Irix (retired in 2013).
  * The LINPACK argument to chol.default(), chol2inv(),
    solve.default() and svd() has been defunct since R 3.1.0.  It was
    silently ignored up to R 4.0.3 but now gives an error.
  * Subsetting/indexing, such as ddd[*] or ddd$x on a DOTSXP
    (dot-dot-dot) object ddd has been disabled; it worked by accident
    only and was undocumented.
  BUG FIXES:
  * Many more C-level allocations (mainly by malloc and strdup) are
    checked for success with suitable alternative actions.
  * Bug fix for replayPlot(); this was turning off graphics engine
    display list recording if a recorded plot was replayed in the
    same session.  The impact of the bug became visible if resize the
    device after replay OR if attempted another savePlot() after
    replay (empty display list means empty screen on resize or empty
    saved plot).
  * R CMD check etc now warn when a package exports non-existing S4
    classes or methods, also in case of no "methods" presence.
    (Reported by Alex Bertram; reproducible example and patch by
    Sebastian Meyer in PR#16662.)
  * boxplot() now also accepts calls for labels such as ylab, the
    same as plot().  (Reported by Marius Hofert.)
  * The help page for xtabs() now correctly states that addNA is
    setting na.action = na.pass among others.  (Reported as PR#17770
    by Thomas Soeiro.)
  * The R CMD check &lt;pkg&gt; gives a longer and more comprehensible
    message when DESCRIPTION misses dependencies, e.g., in Imports:.
    (Thanks to the contributors of PR#17179.)
  * update.default() now calls the generic update() on the formula to
    work correctly for models with extended formulas.  (As reported
    and suggested by Neal Fultz in PR#17865.)
  * The horizontal position of leaves in a dendrogram is now correct
    also with center = FALSE.  (PR#14938, patch from Sebastian
    Meyer.)
  * all.equal.POSIXt() no longer warns about and subsequently ignores
    inconsistent "tzone" attributes, but describes the difference in
    its return value (PR#17277).  This check can be disabled _via_
    the new argument check.tzone = FALSE as suggested by Sebastian
    Meyer.
  * as.POSIXct() now populates the "tzone" attribute from its tz
    argument when x is a logical vector consisting entirely of NA
    values.
  * x[[2^31]] &lt;- v now works.  (Thanks to the report and patch by
    Suharto Anggono in PR#17330.)
  * In log-scale graphics, axis() ticks and label positions are now
    computed more carefully and symmetrically in their range,
    typically providing _more_ ticks, fulfilling wishes in PR#17936.
    The change really corresponds to an improved axisTicks() (package
    grDevices), potentially influencing grid and lattice, for
    example.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now correct to at
    least five digits where it was catastrophically wrong,
    previously.
  * sum(df) and similar "Summary"- and "Math"-group member functions
    now work for data frames df with logical columns, notably also of
    zero rows.  (Reported to R-devel by Martin "b706".)
  * unsplit() had trouble with tibbles due to unsound use of rep(NA,
    len)-indexing, which should use NA_integer_ (Reported to R-devel
    by Mario Annau.)
  * pnorm(x, log.p = TRUE) underflows to -Inf slightly later.
  * show(&lt;hidden S4 generic&gt;) prints better and without quotes for
    non-hidden S4 generics.
  * read.table() and relatives treated an "NA" column name as missing
    when check.names = FALSE PR#18007.
  * Parsing strings containing UTF-16 surrogate pairs such as
    "\uD834\uDD1E" works better on some (uncommon) platforms.
    sprintf("%X", utf8ToInt("\uD834\uDD1E")) should now give "1D11E"
    on all platforms.
  * identical(x,y) is no longer true for differing DOTSXP objects,
    fixing PR#18032.
  * str() now works correctly for DOTSXP and related exotics, even
    when these are doomed.
    Additionally, it no longer fails for lists with a class and
    "irregular" method definitions such that e.g. lapply(*) will
    necessarily fail, as currently for different igraph objects.
  * Too long lines in environment files (e.g. Renviron) no longer
    crash R. This limit has been increased to 100,000 bytes.
    (PR#18001.)
  * There is a further workaround for FreeType giving incorrect
    italic font faces with cairo-based graphics devices on macOS.
  * add_datalist(*, force = TRUE) (from package tools) now actually
    updates an existing data/datalist file for new content.  (Thanks
    to a report and patch by Sebastian Meyer in PR#18048.)
  * cut.Date() and cut.POSIXt() could produce an empty last interval
    for breaks = "months" or breaks = "years".  (Reported as PR#18053
    by Christopher Carbone.)
  * Detection of the encoding of 'regular' macOS locales such as
    en_US (which is UTF-8) had been broken by a macOS change:
    fortunately these are now rarely used with en_US.UTF-8 being
    preferred.
  * sub() and gsub(pattern, repl, x, *) now keep attributes of x such
    as names() also when pattern is NA (PR#18079).
  * Time differences ("difftime" objects) get a replacement and a
    rep() method to keep "units" consistent.  (Thanks to a report and
    patch by Nicolas Bennett in PR#18066.)
  * The \RdOpts macro, setting defaults for \Sexpr options in an Rd
    file, had been ineffective since R 2.12.0: it now works again.
    (Thanks to a report and patch by Sebastian Meyer in PR#18073.)
  * mclapply and pvec no longer accidentally terminate parallel
    processes started before by mcparallel or related calls in
    package parallel (PR#18078).
  * grep and other functions for evaluating (extended) regular
    expressions handle in Unicode also strings not explicitly flagged
    UTF-8, but flagged native when running in UTF-8 locale.
  * Fixed a crash in fifo implementation on Windows (PR#18031).
  * Binary mode in fifo on Windows is now properly detected from
    argument open (PR#15600, PR#18031).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1622808000">- The line %{__install} -m 755 -d %{_infodir}
  no longer works in TW or Factory.
  But without that line it works everywhere. So this instruction
  was commented out of the spec file.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1628596800">- CHANGES IN R 4.1.1:
  NEW FEATURES:
  * require(pkg, quietly = TRUE) is quieter and in particular does
    not warn if the package is not found.
  DEPRECATED AND DEFUNCT:
  * Use of ftp:// URIs should be regarded as deprecated, with
    on-going support confined to method = "libcurl" and not routinely
    tested.  (Nowadays no major browser supports them.)
  * The non-default method = "internal" is deprecated for http:// and
    ftp:// URIs for both download.file and url.
  * On Windows, method = "wininet" is deprecated for http://,
    https:// and ftp:// URIs for both download.file and url.  (A
    warning is only given for ftp://.)
    For ftp:// URIs the default method is now "libcurl" if available
    (which it is on CRAN builds).
    method = "wininet" remains the default for http:// and https://
    URIs but if libcurl is available, using method = "libcurl" is
    preferred.
  INSTALLATION:
  * make check now works also without a LaTeX installation.  (Thanks
    to Sebastian Meyer's PR#18103.)
  BUG FIXES:
  * make check-devel works again in an R build configured with
  - -without-recommended-packages.
  * qnbinom(p, size, mu) for large size/mu is correct now in a range
    of cases (PR#18095); similarly for the (size, prob)
    parametrization of the negative binomial.  Also qpois() and
    qbinom() are better and or faster for extreme cases.  The
    underlying C code has been modularized and is common to all four
    cases of discrete distributions.
  * gap.axis is now part of the axis() arguments which are passed
    from bxp(), and hence boxplot().  (Thanks to Martin Smith's
    report and suggestions in PR#18109.)
  * .First and .Last can again be set from the site profile.
  * seq.int(from, to, *) and seq.default(..) now work better in large
    range cases where from-to is infinite where the two boundaries
    are finite.
  * all.equal(x,y) now returns TRUE correctly also when several
    entries of abs(x) and abs(y) are close to .Machine$double.xmax,
    the largest finite numeric.
  * model.frame() now clears the object bit when removing the class
    attribute of a value via na.action (PR#18100).
  * charClass() now works with multi-character strings on Windows
    (PR#18104, fixed by Bill Dunlap).
  * encodeString() on Solaris now works again in Latin-1 encoding on
    characters represented differently in UTF-8.  Support for
    surrogate pairs on Solaris has been improved.
  * file.show() on Windows now works with non-ASCII path names
    representable in the current native encoding (PR#18132).
  * Embedded R on Windows can now find R home directory via the
    registry even when installed only for the current user
    (PR#18135).
  * pretty(x) with finite x now returns finite values also in the
    case where the extreme x values are close in size to the maximal
    representable number .Machine$double.xmax.
    Also, it's been tweaked for very small ranges and when a boundary
    is close (or equal) to zero; e.g., pretty(c(0,1e-317)) no longer
    has negative numbers, currently still warning about a very small
    range, and pretty(2^-(1024 - 2^-1/(c(24,10)))) is more accurate.
  * The error message for not finding vignette files when weaving has
    correct file sizes now. (Thanks to Sebastian Meyer's PR#18154.)
  * dnbinom(20, &lt;large&gt;, 1) now correctly gives 0, and similar cases
    are more accurate with underflow precaution.  (Reported by Francisco Vera Alcivar in PR#18072.)</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635163200">- repaired https://bugzilla.suse.com/show_bug.cgi?id=1191380
  (rpmacros now go to rpmmacrodir)
- minor clean-ups in spec file</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635768000">- CHANGES IN R 4.1.2:
  C-LEVEL FACILITIES:
  * The workaround in headers R.h and Rmath.h (using namespace std;)
    for the Oracle Developer Studio compiler is no longer needed now
    C++11 is required so has been removed.  A couple more usages of
    log() (which should have been std::log()) with an int argument
    are reported on Solaris.
  * The undocumented limit of 4095 bytes on messages from the
    S-compatibility macros PROBLEM and MESSAGE is now documented and
    longer messages will be silently truncated rather than
    potentially causing segfaults.
  * If the R_NO_SEGV_HANDLER environment variable is non-empty, the
    signal handler for SEGV/ILL/BUS signals (which offers recovery
    user interface) is not set. This allows more reliable debugging
    of crashes that involve the console.
  DEPRECATED AND DEFUNCT:
  * The legacy S-compatibility macros PROBLEM, MESSAGE, ERROR, WARN,
    WARNING, RECOVER, ... are deprecated and will be hidden in R
    4.2.0. R's native interface of Rf_error and Rf_warning has long
    been preferred.
  BUG FIXES:
  * .mapply(F, dots, .) no longer segfaults when dots is not a list
    and uses match.fun(F) as always documented; reported by Andrew
    Simmons in PR#18164.
  * hist(&lt;Date&gt;, ...) and hist(&lt;POSIXt&gt;, ...)  no longer pass
    arguments for rect() (such as col and density) to axis().
    (Thanks to Sebastian Meyer's PR#18171.)
  * \Sexpr{ch} now preserves Encoding(ch). (Thanks to report and
    patch by Jeroen Ooms in PR#18152.)
  * Setting the RNG to "Marsaglia-Multicarry" e.g., by RNGkind(), now
    warns in more places, thanks to Andr'e Gillibert's report and
    patch in PR#18168.
  * gray(numeric(), alpha=1/2) no longer segfaults, fixing PR#18183,
    reported by Till Krenz.
  * Fixed dnbinom(x, size=&lt;very_small&gt;, .., log=TRUE) regression,
    reported by Martin Morgan.
  * as.Date.POSIXlt(x) now keeps names(x), thanks to Davis Vaughan's
    report and patch in PR#18188.
  * model.response() now strips an "AsIs" class typically, thanks to
    Duncan Murdoch's report and other discussants in PR#18190.
  * try() is considerably faster in case of an error and long call,
    as e.g., from some do.call().  Thanks to Alexander Kaever's
    suggestion posted to R-devel.
  * qqline(y = &lt;object&gt;) such as y=I(.), now works, see also
    PR#18190.
  * Non-integer mgp par() settings are now handled correctly in
    axis() and mtext(), thanks to Mikael Jagan and Duncan Murdoch's
    report and suggestion in PR#18194.
  * formatC(x) returns length zero character() now, rather than ""
    when x is of length zero, as documented, thanks to Davis
    Vaughan's post to R-devel.
  * removeSource(fn) now retains (other) attributes(fn).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1647000000">- CHANGES IN R 4.1.3:
  NEW FEATURES:
  * The default version of Bioconductor has been changed to 3.14.
    (This is used by setRepositories and the menus in GUIs.)
  UTILITIES:
  * R CMD check --as-cran has a workaround for a bug in versions of
    file up to at least 5.41 which mis-identify DBF files last
    changed in 2022 as executables.
  C-LEVEL FACILITIES:
  * The legacy S-compatibility macros SINGLE_* in R_ext/Constants.h
    (included by R.h) are deprecated and will be removed in R 4.2.0.
  BUG FIXES:
  * Initialization of self-starting nls() models with initialization
    functions following the pre-R-4.1.0 API (without the ...
    argument) works again for now, with a deprecation warning.
  * Fixed quoting of ~autodetect~ in Java setting defaults to avoid
    inadvertent user lookup due to leading ~, reported in PR#18231 by
    Harold Gutch.
  * substr(., start, stop) &lt;- v now treats _negative_ stop values
    correctly.  Reported with a patch in PR#18228 by Brodie Gaslam.
  * Subscripting an array x without dimnames by a
    length(dim(x))-column character matrix gave "random" non-sense,
    now an error; reported in PR#18244 by Mikael Jagan.
  * ...names() now matches names(list(...)) closely, fixing PR#18247.
  * all.equal(*, scale = s) now works as intended when length(s) &gt; 1,
    partly thanks to Michael Chirico's PR#18272.
  * print(x) for long vectors x now also works for named atomic
    vectors or lists and prints the correct number when reaching the
    getOption("max.print") limit; partly thanks to a report and
    proposal by Hugh Parsonage to the R-devel list.
  * all.equal(&lt;selfStart&gt;, *) no longer signals a deprecation
    warning.
  * reformulate(*, response=r) gives a helpful error message now when
    length(r) &gt; 1, thanks to Bill Dunlap's PR#18281.
  * Modifying globalCallingHandlers inside withCallingHandlers() now
    works or fails correctly, thanks to Henrik Bengtsson's PR#18257.
  * hist(&lt;Date&gt;, breaks = "days") and hist(&lt;POSIXt&gt;, breaks = "secs")
    no longer fail for inputs of length 1.
  * qbeta(.001, .9, .009) and similar cases now converge correctly
    thanks to Ben Bolker's report in PR#17746.
  * window(x, start, end) no longer wrongly signals "'start' cannot
    be after 'end'", fixing PR#17527 and PR#18291.
  * data() now checks that its (rarely used) list argument is a
    character vector - a couple of packages passed other types and
    gave incorrect results.
  * which() now checks its arr.ind argument is TRUE rather coercing
    to logical and taking the first element - which gave incorrect
    results in package code.
  * model.weights() and model.offset() more carefully extract their
    model components, thanks to Ben Bolker and Tim Taylor's R-devel
    post.
  * list.files(recursive = TRUE) now shows all broken symlinks
    (previously, some of them may have been omitted, PR#18296).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1650628800">- CHANGES IN R 4.2.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * The formula method of aggregate() now matches the generic in
    naming its first argument x (resolving PR#18299 by Thomas
    Soeiro).
    This means that calling aggregate() with a formula as a named
    first argument requires name formula in earlier versions of R and
    name x now, so portable code should not name the argument (code
    in many packages did).
  * Calling &amp;&amp; or || with either argument of length greater than one
    now gives a warning (which it is intended will become an error).
  * Calling if() or while() with a condition of length greater than
    one gives an error rather than a warning.  Consequently,
    environment variable _R_CHECK_LENGTH_1_CONDITION_ no longer has
    any effect.
  * Windows users should consult the WINDOWS section below for some
    profound changes including
  * Support for 32-bit builds has been dropped.
  * UTF-8 locales are used where available.
  * The default locations for the R installation and personal
    library folder have been changed.
    Thanks to Tomas Kalibera for months of work on the Windows port
    for this release.
  NEW FEATURES:
  * matrix(x, n, m) now warns in more cases where length(x) differs
    from n * m, as suggested by Abby Spurdle and Wolfgang Huber in
    Feb 2021 on the R-devel mailing list.
    This warning can be turned into an error by setting environment
    variable _R_CHECK_MATRIX_DATA_ to TRUE: R CMD check --as-cran
    does so unless it is already set.
  * Function file_test() in package utils gains tests for symlinks,
    readability and writability.
  * capabilities("libxml") is now false.
    The description of capabilities("http/ftp") now reflects that it
    refers to the default method, no longer the internal one.
  * simplify2array() gains an except argument for controlling the
    exceptions used by sapply().
  * Environment variables R_LIBS_USER and R_LIBS_SITE are both now
    set to the R system default if unset or empty, and can be set to
    NULL to indicate an empty list of user or site library
    directories.
  * The warning for axis()(-like) calls in cases of relatively small
    ranges (typically in log-scale situations) is slightly improved
    _and_ suppressed from explicit calls to .axisPars() as has always
    been the intention.
  * The contrasts setter function `contrasts&lt;-` gains an explicit
    default how.many = NULL rather than just using missing(how.many).
  * grid.pretty() gains a new optional argument n = 5.
  * There is a new function .pretty() with option bounds as a
    technical-utility version of pretty().  It and pretty() gain a
    new argument f.min with a better than back-compatible default.
  * Function grDevices::axisTicks() and related functions such as
    graphics::axis() work better, notably for the log scale; partly
    because of the pretty() improvements, but also because care is
    taken e.g., when ylim is finite but diff(ylim) is infinite.
  * nclass.FD() gains a digits option.
  * The R Mathlib internal C function bd0() (called indirectly from a
    dozen probability density and distribution functions such as
    dpois(), dbinom(), dgamma(), pgamma() _etc_) has been
    complemented by a more sophisticated and (mostly) more accurate C
    function ebd0(), currently called only by internal dpois_raw()
    improving accuracy for R level dpois() and potentially others
    calling it such as dnbinom(), dgamma() or pgamma().  (Thanks to
    Morten Welinder's PR#15628.)
  * write.ftable() gains sep = " " argument as suggested by Thomas
    Soeiro.
  * The names of the locale categories supported by R's
    Sys.getlocale() and Sys.setlocale() are now provided by variable
    .LC.categories in the base namespace.
  * The Date and POSIXt methods for hist() and the histogram method
    for plot() now also use the new default col = "lightgray" in
    consistency with the corresponding change to hist()'s default for
    R 4.0.0.
  * hist.default() gains new fuzz argument, and the histogram plot
    method no longer uses fractional axis ticks when displaying
    counts ("Frequency").
  * mapply() and hence Map() now also obey the "max-or-0-if-any"
    recycling rule, such that, e.g., Map(`+`, 1:3, 1[0]) is valid
    now.
  * as.character(&lt;obj&gt;) for "hexmode" or "octmode" objects now
    fulfils the important basic rule as.character(x)[j] ===
    as.character(x[j]).
  * The set utility functions, notably intersect() have been tweaked
    to be more consistent and symmetric in their two set arguments,
    also preserving a common mode.
  * substr(ch, start,end) &lt;- new now e.g., preserves names(ch); ditto
    for substring(), thanks to a patch from Brodie Gaslam.
  * plot(&lt;lm&gt;) gains a extend.ylim.f argument, in partial response to
    PR#15285; further PR#17784 is fixed thanks to several
    contributors and a patch by Elin Waring.  The Cook's dist
    contours get customizable via cook.col and cook.lty with a
    different default color and their legend is nicer by default and
    customizable via cook.legendChanges.
  * Attempting to subset an object that is not subsettable now
    signals an error of class notSubsettableError. The
    non-subsettable object is contained in the object field of the
    error condition.
  * Subscript-out-of-bounds errors are now signaled as errors of
    class subscriptOutOfBoundsError.
  * Stack-overflow errors are now signaled as errors inheriting from
    class stackOverflowError. See ?stackOverflowError for more
    details.
  * New partly experimental Sys.setLanguage() utility, solving the
    main problem of PR#18055.
  * gettext() and gettextf() get a new option trim = TRUE which when
    set to false allows translations for strings such as "Execution
    halted\n" typical for C code.
  * An experimental implementation of hash tables is now available.
    See ?hashtab for more details.
  * identical() gains a extptr.as.ref argument for requesting that
    external pointer objects be compared as reference objects.
  * reorder() gets an argument decreasing which it passes to sort()
    for level creation; based on the wish and patch by Thomas Soeiro
    in PR#18243.
  * as.vector() gains a data.frame method which returns a simple
    named list, also clearing a long standing 'FIXME' to enable
    as.vector(&lt;data.frame&gt;, mode="list").  This breaks code relying
    on as.vector(&lt;data.frame&gt;) to return the unchanged data frame.
  * legend() is now vectorized for arguments cex, x.intersp, and
    text.width.  The latter can now also be specified as a vector
    (one element for each column of the legend) or as NA for
    computing a proper column wise maximum value of strwidth(legend).
    The argument y.intersp can be specified as a vector with one
    entry for each row of the legend.
    legend() also gains new arguments title.cex and title.font.
    Thanks to Swetlana Herbrandt.
  * Deparsing no longer remaps attribute names dim, dimnames, levels,
    names and tsp to historical S-compatible names (which structure()
    maps back).
  * sample() and sample.int() have additional sanity checks on their
    size and n arguments.
    all.equal.numeric() gains a sanity check on its tolerance
    argument - calling all.equal(a, b, c) for three numeric vectors
    is a surprisingly common error.
    mean(na.rm =), rank(na.last =), barplot(legend.text =),
    boxplot(), contour(drawlabels =), polygon(border =) and
    methods::is(class2 =) have more robust sanity checks on their
    arguments.
    R CMD Rd2pdf (used by R CMD check) has a more robust sanity check
    on the format of \alias{} commands.
  * psigamma(x, deriv) for negative x now also works for deriv = 4
    and 5; their underlying C level dpsifn() is documented in
    'Writing R Extensions'.
  * The HTML help system now uses HTML5 (wish of PR#18149).
  * ks.test() now provides exact p-values also with ties and MC
    p-values in the two-sample (Smirnov) case.  By Torsten Hothorn.
  * ks.test() gains a formula interface, with y ~ 1 for the
    one-sample (Kolmogorov) test and y ~ group for the two-sample
    (Smirnov) test.  Contributed by Torsten Hothorn.
  * The return value from ks.test() now has class c("ks.test",
    "htest") - packages using try() need to take care to use
    inherits() and not == on the class.
  * New functions psmirnov(), qsmirnov() and rsmirnov() in package
    stats implementing the asymptotic and exact distributions of the
    two-sample Smirnov statistic.
  * iconv() now allows sub = "c99" to use C99-style escapes for UTF-8
    inputs which cannot be converted to encoding to.
  * In a forward pipe |&gt; expression it is now possible to use a named
    argument with the placeholder _ in the rhs call to specify where
    the lhs is to be inserted.  The placeholder can only appear once
    on the rhs.
  * The included LAPACK sources have been updated to version 3.10.0,
    except for the four Fortran 77 routines which 3.10.0 has
    re-implemented in Fortran 90 (where the older versions have been
    retained as the R build process does not support Fortran 90).
  * path.expand() and most other uses of tilde expansion now warn if
    a path would be too long if expanded.  (An exception is
    file.exists(), which silently returns false.)
  * trunc(&lt;Date&gt;, *) now supports units = "months" or "years" for
    consistency with the POSIXt method, thanks to Dirk Eddelbuettel's
    proposal in PR#18099.
  * list2DF() now checks that its arguments are of the same length,
    rather than use recycling.
  * The HTML help system has several new features: LaTeX-like math
    can be typeset using either KaTeX or MathJax, usage and example
    code is highlighted using Prism, and for dynamic help the output
    of examples and demos can be shown within the browser if the
    knitr package is installed. These features can be disabled by
    setting the environment variable _R_HELP_ENABLE_ENHANCED_HTML_ to
    a false value.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 15
    and so packages that provide graphics devices should be
    reinstalled.
  * The grid package now allows the user to specify a "vector" of
    pattern fills.  The fill argument to gpar() accepts a list of
    gradients and/or patterns and the functions linearGradient(),
    radialGradient(), and pattern() have a new group argument.
    Points grobs (data symbols) can now also have a pattern fill.
    The grobCoords() function now returns a more informative and
    complex result.
  * The grid package has new functions for drawing isolated groups:
    grid.group(), grid.define(), and grid.use().  These functions add
    compositing operators and affine transformations to R's graphics
    capabilities.
    The grid package also has new functions for stroking and filling
    paths: grid.stroke(), grid.fill(), and grid.fillStroke().
    A new function as.path() allows the user to specify the fill rule
    for a path that is to be used for clipping, stroking, or filling;
    available options are "winding" and "evenodd".  A new function
    as.mask() allows the user to specify the type of a mask;
    available options are "alpha" and "luminance".
    These new features are only supported so far (at most) on the
    Cairo-based graphics devices and on the pdf() device.
  * dev.capabilities() reports on device support for the new
    features.
  * par() now warns about unnamed non-character arguments to prevent
    misuse such as {usr &lt;- par("usr"); par(usr)}.
  INSTALLATION:
  * Facilities for accessing ftp:// sites are no longer tested
    (except _pro tem_ for curlGetHeaders()) as modern browsers have
    removed support.
  * R can now be built with DEFS = -DSTRICT_R_HEADERS .
  PACKAGE INSTALLATION:
  * R CMD INSTALL no longer tangles vignettes. This completes an R
    CMD build change in R 3.0.0 and affects packages built before R
    3.0.2. Such packages should be re-made with R CMD build to have
    the tangled R code of vignettes shipped with the tarball.
  * USE_FC_LEN_T will become the default: this uses the correct
    prototypes for Fortran BLAS/LAPACK routines called from C/C++,
    and requires adjustment of most such calls - see 'Writing R
    Extensions' SS6.6.2.  (This has been supported since R 3.6.2.)
  * Package installation speed for packages installed with
    keep.source has been improved. This resolve the issue reported by
    Ofek Shilon in PR#18236.
  UTILITIES:
  * R CMD check can optionally report files/directories left behind
    in home, /tmp (even though TMPDIR is set) and other directories.
    See the "R Internals" manual for details.
  * R CMD check now reports byte-compilation errors during
    installation.  These are not usually fatal but may result in
    parts of the package not being byte-compiled.
  * _R_CHECK_DEPENDS_ONLY_ can be applied selectively to examples,
    tests and/or vignettes in R CMD check: see the "R Internals"
    manual.
  * _R_CHECK_SRC_MINUS_W_IMPLICIT_ now defaults to true: recent
    versions of Apple clang on macOS have made implicit function
    declarations in C into a compilation error.
  * R CMD check --as-cran makes use of the environment variable
    AUTORECONF.  See the "R Internals" manual SS8 for further details.
  * R CMD check --use-valgrind also uses valgrind when re-building
    vignettes as some non-Sweave vignettes unhelpfully comment out
    all their code when R CMD check runs vignettes.
  * Errors in re-building vignettes (unless there are LaTeX errors)
    are reported by R CMD check as ERROR rather than WARNING when
    running vignettes has been skipped (as it frequently is in CRAN
    checks and by --as-cran).
  * R CMD Rd2pdf gains a --quiet option that is used by R CMD build
    when building the PDF package manual.
  * R CMD Rd2pdf now always runs LaTeX in batch mode, consistent with
    Texinfo &gt;= 6.7. The --batch option is ignored.
  * R CMD build and R CMD check now include the Rd file name and line
    numbers in the error message of an \Sexpr evaluation failure.
  * For packages using the \doi Rd macro (now an install-time \Sexpr)
    but no other dynamic Rd content, R CMD build now produces a
    smaller tarball and is considerably faster - skipping temporary
    package installation.
  C-LEVEL FACILITIES:
  * The non-API header R_ext/R-ftp-http.h is no longer provided, as
    the entry points it covered are now all defunct.
  * A number of non-API declarations and macro definitions have been
    moved from the installed header Rinternals.h to the internal
    header Defn.h. Packages that only use entry points and
    definitions documented to be part of the API as specified in
    'Writing R Extensions' SS6 should not be affected.
  * The macro USE_RINTERNALS no longer has any effect when compiling
    package code.  Packages which also use R_NO_REMAP will need to
    ensure that the remapped names are used for calls to API
    functions that were formerly also made available as macros.
  * The deprecated legacy S-compatibility macros PROBLEM, MESSAGE,
    ERROR, WARN, WARNING, RECOVER, ... are no longer defined in
    R_exts/RS.h (included by R.h).  Replace these by calls to
    Rf_error and Rf_warning (defined in header R_ext/Error.h included
    by R.h).
    Header R_ext/RS.h no longer includes R_ext/Error.h.
  * Header R_ext/Constants.h (included by R.h) when included from C++
    now includes the C++ header cfloat rather than the C header
    float.h (now possible as C++11 is required).
  * The legacy S-compatibility macros DOUBLE_* in R_ext/Constants.h
    (included by R.h) are deprecated.
  * The deprecated S-compatibility macros SINGLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * R_Calloc, R_Free and R_Realloc are preferred to their unprefixed
    forms and error messages now use the prefix. These forms were
    introduced in R 3.4.0 and are available even when
    STRICT_R_HEADERS is defined.
  * rmultinom has been documented in 'Writing R Extensions' SS6 so is
    now part of the R API.
  * Similarly, Rtanpi, called from R level tanpi() is now part of the
    R API.
  * The long-deprecated, undocumented and non-API entry point call_R
    is no longer declared in R_ext/RS.h (included by R.h).
  * The header S.h which has been unsupported since Jan 2016 has been
    removed.  Use R.h instead.
  DEPRECATED AND DEFUNCT:
  * The (non-default and deprecated) method = "internal" for
    download.file() and url() no longer supports http:// nor ftp://
    URIs.  (It is used only for file:// URIs.)
    On Windows, download.file(method = "wininet") no longer supports
    ftp:// URIs.  (It is no longer the default method, which is
    "libcurl" and does.)
    On Windows, the deprecated method = "wininet" now gives a warning
    for http:// and https:// URIs for both download.file() and url().
    (It is no longer the default method.)
  * On Windows, the command-line option --max-mem-size and
    environment variable R_MAX_MEM_SIZE are defunct.  The memory
    allocation limit was important for 32-bit builds, but these are
    no longer supported.
  * default.stringsAsFactors() is now formally deprecated, where that
    was only mentioned on its regular help page, previously.  So it
    now gives a warning if called.
  * unix.time() is defunct now; it had been deprecated since R 3.4.0.
  BUG FIXES:
  * Setting digits = 0 in format(), print.default() (and hence
    typically print()) or options() is again invalid.  Its behaviour
    was platform-dependent, and it is unclear what "zero significant
    digits" should mean (PR#18098).
  * Messages from C code in the cairo section of package grDevices
    are now also offered for translation, thanks to Michael Chirico's
    PR#18123.
  * mean(x) with finite x now is finite also without "long.double"
    capability.
  * R CMD Rd2pdf no longer leaves an empty build directory behind
    when it aborts due to an already existing output file.  (Thanks
    to Sebastian Meyer's PR#18141.)
  * density(x, weights = w, na.rm = TRUE) when anyNA(x) is true, now
    removes weights "in parallel" to x, fixing PR#18151, reported by
    Matthias Gondan.  Additionally, it gets a subdensity option.
  * Conversion of \Sexpr[]{&lt;expR&gt;} to LaTeX or HTML no longer
    produces long blocks of empty lines when &lt;expR&gt; itself contains
    several lines all producing empty output.  Thanks to a report and
    patch by Ivan Krylov posted to R-devel.
  * R CMD build no longer fails if a package vignette uses child
    documents and inst/doc exists.  (Thanks to Sebastian Meyer's
    PR#18156.)
  * When an R documentation ('help' source) file man/foo.Rd in a
    package has \donttest{..} examples with a syntax error, it is now
    signalled as ERROR and with correct line numbers relating to the
  * -Ex.R file, thanks to Duncan Murdoch and Sebastian Meyer's
    reports and patch proposals in PR#17501.
  * Improved determination of the correct translation domain in
    non-base packages, addressing the combination of PR#18092 and
    PR#17998 (#c6) with reports and _augmented_ patch #2904 by
    Suharto Anggono.
    Note that "R-base" is no longer the default domain e.g., for
    top-level calls to gettext(); rather translation needs explicit
    domain = * specification in such cases.
  * identical(attrib.as.set=FALSE) now works correctly with data
    frames with default row names (Thanks to Charlie Gao's PR#18179).
  * txtProgressBar() now enforces a non-zero width for argument char,
    without which no progress can be visible.
  * dimnames(table(d)) is more consistent in the case where d is a
    list with a single component, thanks to Thomas Soeiro's report to
    R-devel.
    Further, table(d1, d2) now gives an error when d1 and d2 are data
    frames as suggested by Thomas in PR#18224.
  * Fix for drawing semi-transparent lines and fills on the native
    Windows graphics device (PR#18219 and PR#16694).  Thanks to Nick
    Ray for helpful diagnosis on Bugzilla.
  * The deparser now wraps sub-expressions such as if(A) ..  with
    parentheses when needed; thanks to Duncan Murdoch's PR#18232 and
    Lionel Henry's patches there.
  * remove.packages() no longer tries to uninstall Priority: base
    packages, thanks to a report and suggestions by Colin Fay in
    PR#18227.
  * win.metafile() now has xpinch and ypinch arguments so that the
    user can override Windows' (potentially wrong) guess at device
    dimensions.
  * x[i] and x[[i]] for non-integer i should now behave in all cases
    as always documented: the index used is equivalent to
    as.integer(i) unless that would overflow where trunc(i) is used
    instead; thanks to Suharto Anggono's report and patch proposals
    in PR#17977.
  * asOneSidedFormula() now associates the resulting formula with the
    global environment rather than the evaluation environment created
    for the call.
  * &lt;bibentry&gt;$name now matches the field name case-insensitively,
    consistent with bibentry() creation and the replacement method.
  * cbind() failed to detect some length mismatches with a mixture of
    time-series and non-time-series inputs.
  * The default LaTeX style file Sweave.sty used by the RweaveLatex
    driver no longer loads the obsolete ae package; thanks to a
    report by Thomas Soeiro in PR#18271.  Furthermore, it now skips
    \usepackage[T1]{fontenc} for engines other than pdfTeX (if
    detected) or if the new [nofontenc] option is used.
  * smooth.spline() now stores its logical cv argument more safely,
    fixing a rare bug when printing, and also stores n.
  * smooth.spline(x,y,*) now computes the cv.crit statistic
    correctly, also when is.unsorted(x), fixing PR#18294.
  * The data.frame method of rbind() now warns when binding
    not-wholly-recycling vectors, by analogy to the default method
    (for matrices).
  * setAs() finds the correct class for name to when multiple
    packages define a class with that name. Thanks to Gabor Csardi
    for the report.
  * Fix for detaching a package when two classes of the same name are
    present in method signatures for the same generic. Thanks to
    Gabor Csardi for the report.
  * match.arg("", c("", "a", "B")) gives a better error message, in
    part from PR#17959, thanks to Elin Waring.
  * R CMD Sweave --clean no longer removes pre-existing files or
    subdirectories (PR#18242).
  * The quartz() device no longer splits polylines into subpaths.
    That has caused narrowly-spaced lines with many points to always
    look solid even when dashed line type was used due to dash phase
    restarts.
  * Deparsing constructs such as quote(1 + `!`(2) + 3) works again as
    before R 3.5.0, thanks to the report and patch in PR#18284 by
    Suharto Anggono.
  * as.list(f) for a factor f now keeps names(f), fixing PR#18309.
  * qbeta(.001, .9, .009) and analogous qf() calls now return a
    correct value instead of NaN or wrongly 1, all with a warning;
    thanks to the report by Ludger Goeminne in PR#18302.
  * plot.lm() failed to produce the plot of residuals vs.  factor
    levels (i.e., which=5 when leverages are constant) for models
    with character predictors (PR#17840).
  * interaction.plot(..., xtick = TRUE) misplaced the x-axis line
    (PR#18305).
  * Not strictly fixing a bug, format()ing and print()ing of
    non-finite Date and POSIXt values NaN and +/-Inf no longer show
    as NA but the respective string, e.g., Inf, for consistency with
    numeric vector's behaviour, fulfilling the wish of PR#18308.
  * R CMD check no longer runs test scripts generated from
    corresponding .Rin files twice and now signals an ERROR if
    processing an .Rin script fails.
  * tools::Rd2txt() used for plain-text help pages now renders \hrefs
    (if tools::Rd2txt_options(showURLs = TRUE)) and \urls with
    percent-encoding and standards-compliant delimiting style (angle
    brackets and no URL: prefix).  \email is now rendered with a
    mailto: prefix.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1655985600">- CHANGES IN R 4.2.1:
  NEW FEATURES:
  * New function utils::findCRANmirror() to find out if a CRAN mirror
    has been selected, otherwise fallback to the main site.  This
    behaves in the same way as tools::CRAN_package_db() and is
    intended for packages wishing to access CRAN for purposes other
    than installing packages.
    The need for this was shown by a day when the main CRAN website
    was offline and a dozen or so packages which had its URL
    hardcoded failed their checks.
  INSTALLATION on a UNIX-ALIKE:
  * The libraries searched for by --with-blas (without a value) now
    include BLIS (after OpenBLAS but before ATLAS).  And on macOS,
    the Accelerate framework (after ATLAS).  (This is patterned after
    the AX_BLAS macro from the Autoconf Archive.)
  * The included LAPACK sources have been updated to 3.10.1.
  UTILITIES:
  * The (full path to) the command tidy to be used for HTML
    validation can be set by environment variable R_TIDYCMD.
  * Setting environment variable _R_CHECK_RD_VALIDATE_RD2HTML_ to a
    false value will override R CMD check --as-cran and turn off HTML
    validation.  This provides a way to circumvent a problematic
    tidy.
    The 2006 version that ships with macOS is always skipped.
  C-LEVEL FACILITIES:
  * The undocumented legacy declarations of Sint, Sfloat, SINT_MAX
    and SINT_MIN in header R.h are deprecated.
  BUG FIXES:
  * fisher.test(d) no longer segfaults for "large" d; fixing PR#18336
    by preventing/detecting an integer overflow reliably.
  * tar(., files=*) now produces correctly the warning about invalid
    uid or gid of files, fixing PR#18344, reported by Martin Morgan.
  * tk_choose.files() with multi = FALSE misbehaved on paths
    containing spaces (PR#18334) (regression introduced in R 4.0.0).
  * sort(x, partial = ind, *) now works correctly notably for the
    non-default na.last = FALSE or TRUE, fixing PR#18335 reported by
    James Edwards.
  * Environment variable _R_CHECK_XREFS_REPOSITORIES_ is only used
    for checking .Rd cross-references in R CMD check (as documented)
    and not for other uses looking for a CRAN mirror.
  * The search for a CRAN mirror when checking packages now uses
    getOption("repos") if that specifies a CRAN mirror, even when it
    does not also specify all three Bioconductor repositories (as was
    previously required).
  * The HTML code generated by tools::Rd2HTML() has been improved to
    pass tidy 5.8.0.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1667217600">- CHANGES IN R 4.2.2:
  NEW FEATURES:
  * tools::Rdiff(useDiff = TRUE) checks for the presence of an
    external diff command and switches to useDiff = FALSE if none is
    found.  This allows R CMD Rdiff to always work.
  * On Windows, environment variable R_LIBCURL_SSL_REVOKE_BEST_EFFORT
    can be used to switch to only 'best-effort' SSL certificate
    revocation checks with the default "libcurl" download method.
    This reduces security, but may be needed for downloads to work
    with MITM proxies (PR#18379).
  * (macOS) The run-time check for libraries from XQuartz for X11 and
    Tcl/Tk no longer uses otool from the Apple Developer Tools
    (PR#18400).
  * The LaTeX style for producing the PDF manuals, Rd.sty, now loads
    the standard amsmath, amsfonts and amssymb packages for greater
    coverage of math commands in the Rd \eqn and \deqn macros.  The
    \mathscr LaTeX command is also provided (via the mathrsfs
    package, if available, or the amsfonts bundle otherwise),
    fulfilling the wish of PR#18398.
  * (Windows) The default format of readClipboard() and
    writeClipboard() has been changed to 13 (CF_UNICODETEXT).
  INSTALLATION on a UNIX-ALIKE:
  * The PDF manuals (if built) can be compacted by the new target
    make compact-pdf (at the top level or in directory doc/manual).
  * There is now configure support for LLVM clang 15 on Linux, which
    defaults to position-independent (PIE) executables whereas
    gfortran does not.
  * Many small changes to ease compilation (and suppress warnings)
    with LLVM clang 15.
  BUG FIXES:
  * Rscript -e would fail if stdin were closed (Reported by Henrik
    Bengtsson.)
  * qt(*, log.p=TRUE) in outer tails no longer produces NaN in its
    final steps, thus fixing PR#18360.
  * tools::Rd2latex() now escapes hashes and ampersands when writing
    URLs, fixing LaTeX errors with such URLs in \tabular.
  * When isGeneric(f, fdef=*) is used with mismatching names, the
    warning is better understandable; reported (with fix) in PR#18370
    by Gabe Becker.
  * poly(x, n) now works again (and is now documented) when x is a
    "Date" or "POSIXct" object, or of another class while fulfilling
    mode(x) == "numeric".  This also enables poly(x, *, raw=TRUE) for
    such variables.  Reported by Michael Chirico to R-devel.
  * write.table(), write.csv() and write.csv2() restore their
    numerical precision (internal equivalent of digits = 15) after an
    interrupt (PR#18384).
  * One can now read also byte FF from a clipboard connection
    (PR#18385).
  * source("") and source(character()) now give more helpful error
    messages.
  * R CMD check --as-cran set _R_CHECK_TIMINGS_ too late to have the
    intended effect.
  * as.POSIXlt(x) now also works with very large dates x, fixing
    PR#18401 reported by Hannes M"uhleisen.
  * Files can now be extracted even from very large zip archives
    (PR#18390, thanks to Martin Jakt).
  * Non-finite objects of class "POSIXlt" are now correctly coerced
    to classes "Date" and "POSIXct"; following up on the extension to
    format() them correctly.
  * Added methods for is.finite(), is.infinite() and is.nan() for
    "POSIXlt" date-time objects.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1678881600">- CHANGES IN R 4.2.3:
  C-LEVEL FACILITIES:
  * The definition of DL_FUNC in R_ext/Rdynload.h has been changed to
    be fully C-compliant.  This means that functions loaded _via_ for
    example R_GetCCallable need to be cast to an appropriate type if
    they have any arguments.
  * .Machine has a new element sizeof.time_t to identify old systems
    with a 32-bit type and hence a limited range of date-times (and
    limited support for dates millions of years from present).
  PACKAGE INSTALLATION:
  * (Windows) The default C++ standard had accidentally been left at
    C++11 when it was changed to C++14 on Unix.
  BUG FIXES:
  * As "POSIXlt" objects may be "partially filled" and their list
    components meant to be recycled, length() now is the length of
    the longest component.
  * as.POSIXlt.Date() could underflow for dates in the far past (more
    than half a million years BCE).
  * as.Date.POSIXlt(x) would return "1970-01-01" instead of NA in R
    4.2.2, e.g., for
    x &lt;- as.POSIXlt(c("2019-01-30","2001-1-1"))
    x$mon &lt;- c(0L, NA); as.Date(x)
  * R CMD check failed to apply enabled _R_CHECK_SUGGESTS_ONLY_ to
    examples and vignettes (regression in R 4.2.0).
  * R CMD check did not re-build vignettes in separate processes by
    default (regression in R 4.2.0).
  * Running examples from HTML documentation now restores previous
    knitr settings and options (PR#18420).
  * Quartz: fonts are now located using Core Graphics API instead of
    deprecated ATS which is no longer supported in the macOS 13 SDK
    (PR#18426).  This also addresses an issue where the currently
    used font in the Quartz device context was not correctly
    retained.
  * (Windows) Math symbols in text drawing functions are again
    rendered correctly (PR#18440).  This fixes a regression in R
    4.2.1 caused by a fix in PR#18382 which uncovered an issue in
    GraphApp due to which the symbol charset was not used with TT
    Symbol font face.
  * (Windows) Installing a package with a src/Makefile.{win,ucrt}
    file includes ~/.R/Makevars.win64 in the search for user
    makevars, as documented in "R Installation and Administration"
    and done for packages with a src/Makevars.{win,ucrt} file.
  * format(&lt;POSIXlt_w/_unbalanced_sec&gt;, "....%OS&lt;n&gt;") with n &gt; 0 no
    longer accidentally uses the unbalanced seconds, thanks to
    Suharto Anggono's report (including patch) in PR#18448.
  * solve.default(a, b) works around issues with some versions of
    LAPACK when a contains NA or NaN values.
  * When UseMethod() cannot dispatch, it no longer segfaults
    producing the error message in case of a long class(), thanks to
    Joris Vankerschaver's report (including patch) in PR#18447.
  * When example(foo, ..) produces graphics on an interactive device
    it needs to open itself, it now leaves devAskNewPage() unchanged
    even when it was FALSE, thus fixing a 14 years old '&lt;FIXME&gt;'.
  * packageDescription() again catches errors from encoding
    conversions. This also fixes broken packageVersion() in C locale
    on systems where iconv does not support transliteration.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1681128000">- add patch to build with libcurl &gt;= 8</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1682078400">- CHANGES IN R 4.3.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Calling &amp;&amp; or || with LHS or (if evaluated) RHS of length greater
    than one is now always an error, with a report of the form
    'length = 4' in coercion to 'logical(1)'
    Environment variable _R_CHECK_LENGTH_1_LOGIC2_ no longer has any
    effect.
  NEW FEATURES:
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.10.1.  (This caused some platform-dependent
    changes to package check output.)  And then to the sources from
    LAPACK version 3.11.0 (with changes only to double complex
    subroutines).
  * The included LAPACK sources have been updated to include the four
    Fortran 90 routines rather than their Fortran 77 predecessors.
    This may give some different signs in SVDs or
    eigendecompositions..  (This completes the transition to LAPACK
    3.10.x begun in R 4.2.0.)
  * The LAPACK sources have been updated to version 3.11.0.  (No new
    subroutines have been added, so this almost entirely bug fixes:
    Those fixes do affect some computations with NaNs, including R's
    NA.)
  * The parser now signals _classed_ errors, notably in case of the
    pipe operator |&gt;.  The error object and message now give line and
    column numbers, mostly as proposed and provided by Duncan Murdoch
    in PR#18328.
  * toeplitz() is now generalized for asymmetric cases, with a
    toeplitz2() variant.
  * xy.coords() and xyz.coords() and consequently, e.g., plot(x,y,
    log = "y") now signal a _classed_ warning about negative values
    of y (where log(.) is NA).  Such a warning can be specifically
    suppressed or caught otherwise.
  * Regular expression functions now check more thoroughly whether
    their inputs are valid strings (in their encoding, e.g. in
    UTF-8).
  * The performance of grep(), sub(), gsub() and strsplit() has been
    improved, particularly with perl = TRUE and fixed = TRUE.  Use of
    useBytes = TRUE for performance reasons should no longer be
    needed and is discouraged: it may lead to incorrect results.
  * apropos() gains an argument dot_internals which is used by the
    completion (help(rcompgen)) engine to also see base internals
    such as .POSIXct().
  * Support in tools::Rdiff() for comparing uncompressed PDF files is
    further reduced - see its help page.
  * qqplot(x, y, ...) gains conf.level and conf.args arguments for
    computing and plotting a confidence band for the treatment
    function transforming the distribution of x into the distribution
    of y (Switzer, 1976, _Biometrika_). Contributed by Torsten
    Hothorn.
  * Performance of package_dependencies() has been improved for cases
    when the number of dependencies is large.
  * Strings newly created by gsub(), sub() and strsplit(), when any
    of the inputs is marked as "bytes", are also marked as "bytes".
    This reduces the risk of creating invalid strings and accidental
    substitution of bytes deemed invalid.
  * Support for readLines(encoding = "bytes") has been added to allow
    processing special text files byte-by-byte, without creating
    invalid strings.
  * iconv(from = "") now takes into account any declared encoding of
    the input elements and uses it in preference to the native
    encoding.  This reduces the risk of accidental creation of
    invalid strings, particularly when different elements of the
    input have different encoding (including "bytes").
  * Package repositories in getOption("repos") are now initialized
    from the repositories file when utils is loaded (if not already
    set, e.g., in .Rprofile).  (From a report and patch proposal by
    Gabriel Becker in PR#18405.)
  * compactPDF() gets a verbose option.
  * type.convert() and hence read.table() get new option tryLogical =
    TRUE with back compatible default.  When set to false, converts
    "F" or "T" columns to character.
  * Added new unit prefixes "R" and "Q" for abbreviating
    (unrealistically large) sizes beyond 10^{27} in standard = "SI",
    thanks to Henrik Bengtsson's PR#18435.
  * as.data.frame()'s default method now also works fine with atomic
    objects inheriting from classes such as "roman", "octmode" and
    "hexmode", such fulfilling the wish of PR#18421, by Benjamin
    Feakins.
  * The as.data.frame.vector() utility now errors for wrong-length
    row.names.  It warned for almost six years, with "Will be an
    error!".
  * sessionInfo() now also contains La_version() and reports codepage
    and timezone when relevant, in both print() and toLatex() methods
    which also get new option tzone for displaying timezone
    information when locale = FALSE.
  * New function R_compiled_by() reports the C and Fortran compilers
    used to build R, if known.
  * predict(&lt;lm&gt;, newdata = *) no longer unnecessarily creates an
    offset of all 0s.
  * solve() for complex inputs now uses argument tol and by default
    checks for 'computational singularity' (as it long has done for
    numeric inputs).
  * predict(&lt;rank-deficient lm&gt;, newdata=*) now obeys a new argument
    rankdeficient, with new default "warnif", warning only if there
    are non-estimable cases in newdata.  Other options include
    rankdeficient = "NA", predicting NA for non-estimable newdata
    cases.  This addresses PR#15072 by Russ Lenth and is based on his
    original proposal and discussions in PR#16158 also by David Firth
    and Elin Waring.  Still somewhat experimental.
  * Rgui console implementation now works better with the NVDA screen
    reader when the full blinking cursor is selected.  The underlying
    improvements in cursor handling may help also other screen
    readers on Windows.
  * The drop-field control in GraphApp can now be left with the TAB
    key and all controls can be navigated in the reverse order using
    the Shift+TAB key, improving accessibility of the Rgui
    configuration editor.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now fully accurate
    (instead of to "only" minimally five digits).
  * demo(error.catching) now also shows off withWarnings() and
    tryCatchWEMs().
  * As an experimental feature the placeholder _ can now also be used
    in the rhs of a forward pipe |&gt; expression as the first argument
    in an extraction call, such as _$coef. More generally, it can be
    used as the head of a chain of extractions, such as _$coef[[2]].
  * Spaces in the environment variable used to choose the R session's
    temporary directory (TMPDIR, TMP and TEMP are tried in turn) are
    now fatal.  (On Windows the 'short path' version of the path is
    tried and used if that does not contain a space.)
  * all.equal.numeric() gets a new optional switch giveErr to return
    the numeric error as attribute.  Relatedly,
    stopifnot(all.equal&lt;some&gt;(a, b, ..)) is as "smart" now, as
    stopifnot(all.equal(....)) has been already, thus allowing
    customized all.equal&lt;Some&gt;() wrappers.
  * R on Windows is now able to work with path names longer than 260
    characters when these are enabled in the system (requires at
    least Windows 10 version 1607).  Packages should be updated to
    work with long paths as well, instead of assuming PATH_MAX to be
    the maximum length.  Custom front-ends and applications embedding
    R need to update their manifests if they wish to allow this
    feature.  See
    &lt;https://blog.r-project.org/2023/03/07/path-length-limit-on-windows&gt;
    for more information.
  * 'Object not found' and 'Missing argument' errors now give a more
    accurate error context. Patch provided by Lionel Henry in
    PR#18241.
  * The @ operator is now an S3 generic. Based on contributions by
    Tomasz Kalinowski in PR#18482.
  * New generic chooseOpsMethod() provides a mechanism for objects to
    resolve cases where two suitable methods are found for an Ops
    Group Generic. This supports experimenting with alternative
    object systems. Based on contributions by Tomasz Kalinowski in
    PR#18484.
  * inherits(x, what) now accepts values other than a simple
    character vector for argument what. A new generic, nameOfClass(),
    is called to resolve the class name from what. This supports
    experimenting with alternative object systems. Based on
    contributions by Tomasz Kalinowski in PR#18485.
  * Detection of BLAS/LAPACK in use (sessionInfo()) with FlexiBLAS
    now reports the current backend.
  * The "data.frame" method for subset() now warns about extraneous
    arguments, typically catching the use of = instead of == in the
    subset expression.
  * Calling a:b when numeric a or b is longer than one may now be
    made into an error by setting environment variable
    _R_CHECK_LENGTH_COLON_ to a true value, along the proposal in
    PR#18419 by Henrik Bengtsson.
  * density(x, weights = *) now warns if automatic bandwidth
    selection happens without using weights; new optional warnWbw may
    suppress the warning.  Prompted by Christoph Dalitz' PR#18490 and
    its discussants.
  * rm(list = *) is faster and more readable thanks to Kevin Ushey's
    PR#18492.
  * The plot.lm() function no longer produces a normal Q-Q plot for
    GLMs. Instead it plots a half-normal Q-Q plot of the absolute
    value of the standardized deviance residuals.
  * The print() method for class "summary.glm" no longer shows
    summary statistics for the deviance residuals by default.  Its
    optional argument show.residuals can be used to show them if
    required.
  * The tapply() function now accepts a data frame as its X argument,
    and allows INDEX to be a formula in that case. by.data.frame()
    similarly allows INDICES to be a formula.
  * The performance of df[j] &lt;- value (including for missing j) and
    write.table(df) has been improved for data frames df with a large
    number of columns.  (Thanks to Gabriel Becker's PR#18500,
    PR#18503 and discussants, prompted by a report from Toby Dylan
    Hocking on the R-devel mailing list.)
  * The matrix multiply operator %*% is now an S3 generic, belonging
    to new group generic matrixOps.  From Tomasz Kalinowski's
    contribution in PR#18483.
  * New function array2DF() to convert arrays to data frames,
    particularly useful for the list arrays created by tapply().
  DATES and TIMES:
  * On platforms where (non-UTC) datetimes before 1902 (or before
    1900 as with system functions on recent macOS) are guessed by
    extrapolating time zones from 1902-2037, there is a warning at
    the first use of extrapolation in a session.  (As all time zones
    post 2037 are extrapolation, we do not warn on those.)
  * (Platforms using --with-internal-tzone, including Windows and by
    default macOS). How years are printed in dates or date-times can
    be controlled by environment variable R_PAD_YEARS_BY_ZERO.  The
    default remains to pad to 4 digits by zeroes, but setting value
    no gives no padding (as used by default by glibc).
  * strftime() tries harder to determine the offset for the "%z"
    format, and succeeds on the mainstream R platforms.
  * strftime() has a limit of 2048 bytes on the string produced -
    attempting to exceed this is an error.  (Previously it silently
    truncated at 255 bytes.)
  * sessionInfo() records (and by default prints) the system time
    zone as part of the locale information.  Also, the source
    (system/internal) of the date-time conversion and printing
    functions.
  * Objects of class "POSIXlt" created in this version of R always
    have 11 components: component zone is always set, and component
    gmtoff is set for times in UTC and usually set on the (almost
    all) platforms which have C-level support, otherwise is NA.
  * There are comprehensive validity checks on the structure of
    objects of class "POSIXlt" when converting (including formatting
    and printing).  (This avoids mis-conversions of hand-crafted
    objects.)
  * There is some support for using the native date-time routines on
    macOS: this is only viable on recent versions (e.g. 12.6 and 13)
    and does get wrong some historical changes (before 1900, during
    WWII).  Use of --with-internal-tzone remains the default.
  * as.POSIXct(&lt;numeric&gt;) and as.POSIXlt(.) (without specifying
    origin) now work.  So does as.Date(&lt;numeric&gt;).
  * as.Date.POSIXct(., tz) now treats several tz values, notably
    "GMT" as equivalent to "UTC", proposed and improved by Michael
    Chirico and Joshua Ulrich in PR#17674.
  * Experimental balancePOSIXlt() utility allows using "ragged" and
    or out-of-range "POSIXlt" objects more correctly, e.g., in
    subsetting and subassignments.  Such objects are now documented.
    More experimentally, a "POSIXlt" object may have an attribute
    "balanced" indicating if it is known to be filled or fully
    balanced.
  * Functions axis.Date() and axis.POSIXct() are rewritten to gain
    better default tick locations and better default formats by using
    prettyDate(). Thanks to Swetlana Herbrandt.
  * The mapping of Windows' names for time zones to IANA's 'Olson'
    names has been updated.  When ICU is available (it is by
    default), it is used to get a mapping for the current region set
    in Windows.  This can be overridden by setting environment
    variable TZ to the desired Olson name - see OlsonNames() for
    those currently available.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 16
    and so packages that provide graphics devices should be
    reinstalled.
  * The grDevices and grid packages have new functions for rendering
    typeset glyphs, primarily: grDevices::glyphInfo() and
    grid::grid.glyph().
    Rendering of typeset glyphs is only supported so far on the
    Cairo-based graphics devices and on the pdf() and quartz()
    devices.
  * The defined behaviour for "clear" and "source" compositing
    operators (via grid::grid.group()) has been changed (to align
    better with simple interpretation of original Porter-Duff
    definitions).
  * Support for gradients, patterns, clipping paths, masks, groups,
    compositing operators, and affine transformations has been added
    to the quartz() device.
  INSTALLATION on a UNIX-ALIKE:
  * A system installation of generic LAPACK 3.10.0 or later will be
    preferred to the version in the R sources.
    configure option --with-lapack=no (equivalently --without-lapack)
    forces compilation of the internal LAPACK sources.
    If --with-lapack is not specified, a system liblapack is looked
    for and used if it reports version 3.10.0 or later and does not
    contain BLAS routines.
    Packages using LAPACK will need to be reinstalled if this changes
    to using an external library.
  * On aarch64 Linux platforms using GCC, configure now defaults to
  - fPIC (instead of -fpic), as desired in PR#18326.
  * configure now checks conversion of datetimes between POSIXlt and
    POSIXct around year 2020.  Failure (which has been seen on
    platforms missing tzdata) is fatal.
  * If configure option --with-valgrind-instrumentation is given
    value 1 or 2, option --with-system-valgrind-headers is now the
    default and ignored (with a warning).  It is highly recommended
    that the system headers are installed alongside valgrind: they
    are part of its packaging on some Linux distributions and
    packaged separately (e.g. in the valgrind-devel RPM) on others.
    configure will give a warning if they are not found.
    The system headers will be required in a future release of R to
    build with valgrind instrumentation.
  * libcurl 8.x is now accepted by configure: despite a change in
    major version number it changes neither API nor ABI.
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools43, an update of the Rtools42 toolchain.  It is
    based on gcc 12 and newer versions of MinGW-W64, binutils and
    libraries.  At this time R-devel can still be built using
    Rtools42 without changes, but when R-devel is installed via the
    installer, it will by default look for Rtools43.
  * Old make targets rsync-extsoft and 32-bit ones that are no longer
    needed have been removed.
  * Default builds (including for packages) no longer select C99.
    Thus the C standard used is the default for the compiler, which
    for the toolchain in Rtools43 is C17.  (This is consistent with
    Unix builds.)
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++17 where
    available (which it is on all currently checked platforms): if
    not C++14 or C++11 is used if available otherwise C++ is not
    supported.
  * USE_FC_LEN_T is the default: this uses the correct
    (compiler-dependent) prototypes for Fortran BLAS/LAPACK routines
    called from C/C++, and requires adjustment of many such calls -
    see 'Writing R Extensions' SS6.6.1.
  * There is initial support for C++23 as several compilers are now
    supporting -std=c++23 or -std=c++2b or similar.  As for C++20,
    there no additional configure checks for C++23 features beyond a
    check that the compiler reports a __cplusplus value greater than
    that in the C++20 standard.  C++ feature tests should be used.
  * There is support for a package to indicate the version of the C
    standard which should be used to compile it, and for the
    installing user to specify this.  In most cases R defaults to the
    C compiler's default standard which is C17 (a `bug-fix' of C11) -
    earlier versions of R or compilers may have defaulted to C99.
    Current options are:
    USE_C17 Use a standard that is at most C17.  The intention is to
    allow legacy packages to still be installed when later C
    standards become the default, including packages using new
    keywords as identifiers or with K&amp;R-style function
    declarations.  This will use C17 if available, falling back
    to C11.
    USE_C90 Use the C90 (aka C89) standard.  (As that standard did
    not require compilers to identify that version, all we can
    verify is that the compiler does not claim to be using a
    later standard.  It may accept C99 features - for example
    clang accepts // to make comments.)
    USE_C99 Use the C99 standard. This should be rarely needed - it
    avoids the few new features of C11/C17 which can be useful if
    a package assumes them if C17 is specified and they are not
    implemented.
    USE_C23 Use C23 (or in future, later).  Compiler/library support
    for C23 is still being implemented, but LLVM clang from
    15.0.0 and the upcoming GCC 13 have quite extensive support.
    These can be specified as part of the SystemRequirements field in
    the package's DESCRIPTION file or _via_ options --use-C17 and so
    on of R CMD INSTALL and R CMD SHLIB.
    For further details see "Writing R Extensions" SS1.2.5.
  * (Windows) A src/Makefile.ucrt or src/Makefile.win file is now
    included after R_HOME/etcR_ARCH/Makeconf and so no longer needs
    to include that file itself.  Installation of a package with such
    a file now uses a site Makevars file in the same way as a package
    with a src/Makevars.win file would.
  * configure is now passed crucial variables such as CC and CFLAGS
    in its environment, as many packages were not setting them (as
    documented in 'Writing R Extensions' SS1.2).
    This has most effect where configure is used to compile parts of
    the package - most often by cmake or libtool which obfuscate the
    actual compile commands used.
    Also used for configure.win and configure.ucrt on Windows.
  FORTRAN FLAGS:
  * The flag -fno-optimize-sibling-calls is no longer forced for
    gfortran 7 and later.  It should no longer be needed now using
    'hidden' character-length arguments when calling BLAS/LAPACK
    routines from C/C++ is the default even for packages.  (Unless
    perhaps packages call Fortran code from C/C++ without using R's
    headers and without allowing for these arguments.)
  C-LEVEL FACILITIES:
  * The deprecated S-compatibility macros DOUBLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * The deprecated legacy typedefs of Sint and Sfloat in header R.h
    are no longer defined, and that header no longer includes header
    limits.h from C nor climits from C++.
  * New macro CAD5R() is provided in Rinternals.h and used in a few
    places in the R sources.
  * ALTREP now supports VECSXP vectors. Contributed by Gabor Csardi
    in PR#17620.
  * The Rcomplex definition (in header R_ext/Complex.h) has been
    extended to prevent possible mis-compilation when interfacing
    with Fortran (PR#18430).  The new definition causes compiler
    warnings with static initializers such as {1, 2}, which can be
    changed to {.r=1, .i=2}.
    Using the new definition from C++ depends on compiler extensions
    supporting C features that have not been incorporated into the
    C++ standards but are available in g++ and clang++: this may
    result in C++ compiler warnings but these have been worked around
    for recent versions of common compilers (GCC, Apple/LLVM clang,
    Intel).
    It is intended to change the inclusion of header R_ext/Complex.h
    by other R headers, so C/C++ code files which make use of
    Rcomplex should include that header explicitly.
  UTILITIES:
  * R CMD check does more checking of package .Rd files, warning
    about invalid email addresses and (some) invalid URIs and noting
    empty \item labels in description lists.
  * R CMD check now also reports problems when reading package news
    in md (file NEWS.md) and (optionally) plain text (file NEWS)
    formats.
  * _R_CHECK_TIMINGS_ defaults to a value from the environment even
    for R CMD check --as-cran; this allows for exceptionally fast or
    slow platforms.
    It now applies to checking PDF and HTML versions of the manuals,
    and 'checking CRAN incoming feasibility'.
  * R CMD check can optionally (but included in --as-cran) check
    whether HTML math rendering _via_ KaTeX works for the package .Rd
    files.
  * Non-interactive debugger invocations can be trapped by setting
    the environment variable _R_CHECK_BROWSER_NONINTERACTIVE_ to a
    true value.  This is enabled by R CMD check --as-cran to detect
    the use of leftover browser() statements in the package.
  * The use of sprintf and vsprintf from C/C++ has been deprecated in
    macOS 13 and is a known security risk.  R CMD check now reports
    (on all platforms) if their use is found in compiled code:
    replace by snprintf or vsnprintf respectively. [*NB:* whether
    such calls get compiled into the package is platform-dependent.]
  * Where recorded at installation, R CMD check reports the C and
    Fortran compilers used to build R.
    It reports the OS in use (if known, as given by osVersion) as
    well as that R was built for.
    It notes if a C++ standard was specified which is older than the
    current default: many packages have used C++11 to mean 'not
    C++98' - as C++11 is the minimum supported since R 4.0.0, that
    specification can probably be removed.
  * R CMD INSTALL reports the compilers (and on macOS, the SDK) used,
    and this is copied to the output of R CMD check.
    Where a C++ standard is specified, it is reported.
  * R CMD check's 'checking compilation flags in Makevars' has been
    relaxed to accept the use of flags such as -std=f2008 in
    PKG_FFLAGS.
  * tools::buildVignettes() has a new argument skip, which is used by
    R CMD check to skip (and note) vignettes with unavailable
    \VignetteDepends (PR#18318).
  * New generic .AtNames() added to enable class-specific completions
    after @. The formerly internal function findMatches() is now
    exported, mainly for use in methods for .DollarNames() and
    .AtNames().
  DEPRECATED AND DEFUNCT:
  * default.stringsAsFactors() is defunct.
  * Calling as.data.frame.&lt;class&gt;() directly (for 12 atomic classes)
    is going to be formally deprecated, currently activated by
    setting the environment variable
    _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ to non-empty, which also
    happens in R CMD check --as-cran.
  BUG FIXES:
  * Hashed environments with sizes less than 5 can now grow.
    (Reported to R-devel by Duncan Garmonsway.)
  * as.character(&lt;Rd&gt;, deparse = TRUE) failed to re-escape curly
    braces in LaTeX-like text.  (Reported by Hadley Wickham in
    PR#18324.)
  * library() now passes its lib.loc argument when requiring Depends
    packages; reported (with fix) in PR#18331 by Mikael Jagan.
  * R CMD Stangle: improved message about 'Output' files.
  * head(x, n) and tail(x, n) now signal an error if n is not
    numeric, instead of incidentally "working" sometimes returning
    all of x.  Reported and discussed by Colin Fay, in PR#18357.
  * The "lm" method for summary() now gives the correct F-statistic
    when the model contains an offset.  Reported in PR#18008.
  * C() and `contrasts&lt;-`() now preserve factor level names when
    given a function object (as opposed a function name which did
    preserve names). Reported in PR#17616.
  * c(a = 1, 2)[[]] no longer matches 2 but rather signals a
    _classed_ error.  Reported and analysed by Davis Vaughan in
    PR#18367, a duplicate of PR#18004, by Jan Meis et al.  For
    consistency, NULL[[]] is also erroneous now.  x[[]] &lt;- v gives an
    error of the same class "MissingSubscriptError".
  * The relist() function of utils now supports NULL elements in the
    skeleton (PR#15854).
  * ordered(levels = *) (missing x) now works analogously to factor(,
    ordered=TRUE); reported (with fix) by Achim Zeileis in PR#18389.
  * User-defined Rd macro definitions can now span multiple lines,
    thanks to a patch from Duncan Murdoch. Previously, the Rd parser
    silently ignored everything after the first line.
  * Plain-text help (tools::Rd2txt()) now preserves an initial blank
    line for text following description list items.
  * tools::Rd2HTML() and tools::Rd2latex() no longer split \arguments
    and \value lists at Rd comments.
  * tools::Rd2latex() now correctly handles optional text outside
    \items of argument lists as well as bracketed text at the
    beginning of sections, e.g., \value{[NULL]}.
  * as.character(&lt;POSIXt&gt;) now behaves more in line with the methods
    for atomic vectors such as numbers, and is no longer influenced
    by options().  Ditto for as.character(&lt;Date&gt;).  The
    as.character() method gets arguments digits and OutDec with
    defaults _not_ depending on options().  Use of as.character(*,
    format = .) now warns.
  * Similarly, the as.character.hexmode() and *.octmode() methods
    also behave as good citizen methods and back compatibility option
    keepStr = TRUE.
  * The as.POSIXlt(&lt;POSIXlt&gt;) and as.POSIXct(&lt;POSIXct&gt;) default
    methods now do obey their tz argument, also in this case.
  * as.POSIXlt(&lt;Date&gt;) now does apply a tz (time zone) argument, as
    does as.POSIXct(); partly suggested by Roland Fuss on the R-devel
    mailing list.
  * as.Date.POSIXlt(x) now also works when the list components are of
    unequal length, aka "partially filled" or "ragged".
  * expand.model.frame() looked up variables in the wrong environment
    when applied to models fitted without data.  Reported in
    PR#18414.
  * time() now (also) uses the ts.eps = getOption("ts.eps") argument
    and thus by default rounds values very close to the start (or
    end) of a year.  Based on a proposal by Andre"i V. Kostyrka on
    R-help.
  * Printing of a factanal() result with just one factor and sort =
    TRUE now works regularly, fixing PR#17863 by Timothy Bates,
    thanks to the 'R Contributors' working group.
  * Printing 0-length objects of class "factor", "roman", "hexmode",
    "octmode", "person", "bibentry", or "citation" now prints
    something better, one of which fixes PR#18422, reported by
    Benjamin Feakins.
  * Sys.timezone() queries timedatectl only if systemd is loaded;
    addressing a report by Jan Gorecki in PR#17421.
  * The formula method of cor.test() had scoping problems when
    environment(formula) was not the calling environment; reported
    with a patch proposal by Mao Kobayashi in PR#18439.
  * attach() of an environment with active bindings now preserves the
    active bindings.  Reported by Kevin Ushey in PR#18425.
  * BLAS detection now works also with system-provided libraries not
    available as regular files.  This fixes detection of the
    Accelerate framework on macOS since Big Sur.  Reported by David
    Novgorodsky.
  * download.file() gives a helpful error message in case of an
    invalid download.file.method option, thanks to Colin Fay's report
    in PR#18455.
  * Sporadic crashes of Rterm when using completion have been fixed.
  * Rprof() is now more reliable.  A livelock in thread
    initialization with too short sampling interval has been fixed on
    macOS.  A deadlock in using the C runtime has been fixed on
    Windows.  A potential deadlock has been prevented on Unix.
  * Cursor placement in Rgui now works even after a fixed-width font
    is selected.
  * Mandatory options (options()) are now set on startup so that
    saving and restoring them always works (PR#18372).
  * Package installation, R CMD INSTALL or install.packages(*), now
    parses each of the &lt;pkg&gt;/R/*.R files individually instead of
    first concatenating and then parse()ing the large resulting file.
    This allows parser or syntax errors to be diagnosed with correct
    file names and line numbers, thanks to Simon Dedman's report and
    Bill Dunlap's patch in PR#17859.
    This _does_ require syntactically self contained R source files
    now, fixing another inadvertent bug.
  * predict.lm(&lt;model with offset&gt;) now finds the offset in the
    correct environment, thanks to Andr'e Gillibert's report and patch
    in PR#18456.
  * getInitial(&lt;formula&gt;) now finds the selfStart model in the
    correct environment.  (Reported by Ivan Krylov in PR#18368.)
  * Fix for possible segfault when using recently-added graphics
    features, such as gradients, clipping paths, masks, and groups
    with pdf(file=NULL).
  * class(m) &lt;- class(m) no longer changes a matrix m by adding a
    class _attribute_.
  * packageDate(pkg) now only warns once if there is no pkg.
  * When ts() creates a multivariate time series, "mts", it also
    inherits from "array" now, and is.mts() is documented _and_
    stricter.
  * Rd2txt() now preserves line breaks of \verb Rd content and from
    duplicated \cr.  The former also fixes the rendering of verbatim
    output from Rd \Sexpr in plain-text help.
  * uniroot(f, interval) should no longer wrongly converge _outside_
    the interval in some cases where abs(f(x)) == Inf for an x at the
    interval boundary, thanks to posts by Ben Bolker and Serguei
    Sokol on R-devel.
  * Vectorized alpha handling in palette functions such as in gray(),
    rainbow(), or hcl.colors() works correctly now, thanks to Achim
    Zeileis' report and patch in PR#18476.
  * Formatting and print()ing of bibentry objects has dropped the
    deprecated citation.bibtex.max argument, such that the bibtex
    argument's default for print.bibentry() depends directly on the
    citation.bibtex.max option, whereas in format.bibentry() the
    option no longer applies.
  * Attempting to use a character string naming a foreign function
    entry point in a foreign function call in a package will now
    signal an error if the packages has called R_forceSymbols to
    specify that symbols must be used.
  * An error in table() could permanently set options(warn=2)
    promoting all subsequent warnings to errors.
  * The sigma() function gave misleading results for binary GLMs.  A
    new method for objects of class "glm" returns the square root of
    the estimate of the dispersion parameter using the same
    calculation as summary.glm().
  * bs() and ns() in the (typical) case of automatic knot
    construction, when some of the supposedly inner knots coincide
    with boundary knots, now moves them inside (with a warning),
    building on PR#18442 by Ben Bolker.
  * R CMD on Windows now skips the site profile with --no-site-file
    and --vanilla even when R_PROFILE is set (PR#18512, from Kevin
    Ushey).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1686916800">- CHANGES IN R 4.3.1:
  C-LEVEL FACILITIES:
  * The C-level API version of R's integrate(), Rdqags() in Applic.h,
    now returns the correct number of integrand evaluations neval,
    fixing PR#18515 reported and diagnosed by Stephen Wade.
  * The C prototypes for LAPACK calls dspgv and dtptrs in
    R_exts/Lapack.h had one too many and one too few character length
    arguments - but this has not caused any known issues. To get the
    corrected prototypes, include
    [#]include &lt;Rconfig.h&gt; // for PR18534fixed
    [#]ifdef PR18534fixed
    [#] define usePR18534fix 1
    [#]endif
    [#]include &lt;R_exts/Lapack.h&gt;
    in your C/C++ code (PR#18534).
  INSTALLATION:
  * Many of the checks of esoteric Internet operations and those
    using unreliable external sites have been moved to a new target
    that is not run by default and primarily intended for the core
    developers.  To run them use
    cd tests; make test-Internet-dev
  BUG FIXES:
  * .S3methods(), typically called from methods(), again marks
    methods from package base as visible.
    Also, the visibility of non-base methods is again determined by
    the method's presence in search().
  * tools::Rdiff() is now more robust against invalid strings, fixing
    installation tests on Windows without Rtools installed
    (PR#18530).
  * Fix (new) bug in hcl.colors(2, *), by Achim Zeileis (PR#18523).
  * head(., &lt;illegal&gt;) and tail(..) now produce more useful "Error in
    ...." error messages, fixing PR#18362.
  * Package code syntax on Windows is checked in UTF-8 when UTF-8 is
    the native encoding.
  * na.contiguous(x) now also returns the first run, when it is at
    the beginning and there is a later one of the same length;
    reported to R-devel, including a fix, by Georgi Boshnakov.
    Further, by default, it modifies only an existing attr(*,"tsp")
    but otherwise no longer sets one.
  * chol(&lt;not pos.def&gt;, pivot = &lt;T|F&gt;) now gives a correct error or
    warning message (depending on pivot), thanks to Mikael Jagan's
    (PR#18541).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1699012800">- CHANGES IN R 4.3.2:
  NEW FEATURES:
  * The default initialization of the "repos" option from the
    repositories file at startup can be skipped by setting
    environment variable R_REPOSITORIES to NULL such that
    getOption("repos") is empty if not set elsewhere.
  * qr.X() is now an implicit S4 generic in methods.
  * iconv(to = "ASCII//TRANSLIT") is emulated using substitution on
    platforms which do not support it (notably Alpine Linux).  This
    should give a human-readable conversion in ASCII on all platforms
    (rather than NA_character_).
  * trans3d() gains options continuous and verbose addressing the
    problem of possible "wrap around" when projecting too long
    curves, as reported by Achim Zeileis in PR#18537.
  * tools::showNonASCII() has been rewritten to work better on macOS
    14 (which has a changed implementation of iconv()).
  * tiff(type = "quartz") (the default on macOS) now warns if
    compression is specified: it continues to be ignored.
  INSTALLATION on a UNIX-ALIKE:
  * There is some support for building with Intel's LLVM-based
    compilers on x86_64 Linux, such as (C) icx, (C++) ipcx and
    (Fortran) ifx from oneAPI 2023.x.y.
  * There is support for using LLVM's flang-new as the Fortran
    compiler from LLVM 16.0.x (preferably 17.0.0 or later).
  UTILITIES:
  * R CMD check reports the use of the Fortran 90 random number
    generator RANDOM_NUMBER() and the subroutines to initialize it.
    'Writing R Extensions' has example code to use R's RNGs from
    Fortran.
  BUG FIXES:
  * substr(x, n, L) &lt;- cc now works (more) correctly for multibyte
    UTF-8 strings x when L &gt; nchar(x), thanks to a report and patch
    by 'Architect 95'.
  * contrib.url(character()) now returns 0-length character() as
    documented, which also avoids spurious warnings from
    available.packages() et al. in the edge case of an empty vector
    of repository URLs.
  * readChar(., 4e8) no longer fails, thanks to Kodi Arfer's report
    (PR#18557).
  * lapply(&lt;list&gt;, as.data.frame) no longer warns falsely for some
    base vector components.
  * Communication between parent and child processes in the multicore
    part of parallel could fail on platforms that do not support an
    arbitrarily large payload in system functions read()/write() on
    pipes (seen on macOS where a restriction to INT_MAX bytes is
    documented, without doing a partial read unlike Linux). The
    payload is now split into 1Gb chunks to avoid that problem.
    (PR#18571)
  * qqplot(x,y, conf.level=.) gives better confidence bounds when
    length(x) != length(y), thanks to Alexander Ploner's report and
    patch proposal (PR#18557).
  * norm(&lt;0-length&gt;, "2") now gives zero instead of an error, as all
    the other norm types, thanks to Mikael Jagan's PR#18542.
  * Build-stage Rd macros \packageAuthor and \packageMaintainer now
    process Authors@R, fixing NA results when the package DESCRIPTION
    omits Author and Maintainer fields.
  * Formatting and printing complex numbers could give things like
    0.1683-0i because of rounding error: -0i is now replaced by +0i.
  * postscript() refused to accept a title comment containing the
    letter "W" (PR#18599).
  * isoreg(c(1,Inf)) signals an error instead of segfaulting, fixing
    PR#18603.
  * tiff(type = "Xlib") was only outputting the last page of
    multi-page plots.
  * tools::latexToUtf8() again knows about \~{n} and other letters
    with tilde, fixing a regression in R 4.3.0, and about \^{i} as an
    alternative to \^{\i} (similarly with other accents).
    Furthermore, LaTeX codes for accented I letters are now correctly
    converted, also fixing related mistakes in
    tools::encoded_text_to_latex().
  * tar(*, tar = "internal") no longer creates out-of-spec tar files
    in the very rare case of user or group names longer than 32
    bytes, fixing PR#17871 with thanks to Ivan Krylov.
  * When using the "internal" timezone datetime code, adding a
    fraction of a second no longer adds one second, fixing PR#16856
    from a patch by Ivan Krylov.
  * tools::checkRd() no longer produces spurious notes about
    "unnecessary braces" from multi-line Rd results of \Sexpr macros.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1709208000">- CHANGES IN R 4.3.3:
  NEW FEATURES:
  * iconv() now fixes up variant encoding names such as "utf8"
    case-insensitively.
  DEPRECATED AND DEFUNCT:
  * The legacy encoding = "MacRoman" is deprecated in pdf() and
    postscript(): support was incomplete in earlier versions of R.
  BUG FIXES:
  * Arguments are now properly forwarded to methods on S4 generics
    with ... in the middle of their formal arguments. This was broken
    for the case when a method introduced an argument but did not
    include ... in its own formals. Thanks to Herv'e Pag`es for the
    report PR#18538.
  * Some invalid file arguments to pictex(), postscript() and xfig()
    opened a file called NA rather than throw an error.  These
    included postscript(NULL) (which some people expected to work
    like pdf(NULL)).
  * Passing filename = NA to svg(), cairo_pdf(), cairo_ps() or the
    Cairo-based bitmap devices opened a file called NA: it now throws
    an error.
  * quartz(file = NA) opened a file called NA, including when used as
    a Quartz-based bitmap device.  It now gives an error.
  * rank(&lt;long vector&gt;) now works, fixing PR#18617, thanks to Ilia
    Kats.
  * seq.int() did not adequately check its length.out argument.
  * match(&lt;POSIXct&gt;, .) is correct again for differing time zones,
    ditto for "POSIXlt", fixing PR#18618 reported by Bastian Klein.
  * drop.terms(*, dropx = &lt;0-length&gt;) now works, fixing PR#18563 as
    proposed by Mikael Jagan.
  * drop.terms(*) keeps + offset(.) terms when it should, PR#18565,
    and drop.terms() no longer makes up a response, PR#18566, fixing
    both bugs thanks to Mikael Jagan.
  * getS3method("t", "test") no longer finds the t.test() function,
    fixing PR#18627.
  * pdf() and postscript() support for the documented Adobe encodings
    "Greek" and "Cyrilllic" was missing (although the corresponding
    Windows' codepages could be used).
  * Computations of glyph metric information for pdf() and
    postscript() did not take into account that transliteration could
    replace one character by two or more (only seen on macOS 14) and
    typically warned that the information was not known.
  * rank(x) no longer overflows during integer addition, when
    computing rank average for largish but not-yet long vector x,
    fixing PR#18630, thanks to Ilia Kats.
  * list.files() on Windows now returns also files with names longer
    that 260 bytes (the Windows limit is 260 characters).
    Previously, some file names particularly with 'East Asian'
    characters were omitted.
  * cov2cor(&lt;0 x 0&gt;) now works, fixing PR#18423 thanks to Mikael
    Jagan and Elin Waring.
  * cov2cor(&lt;negative diagonal&gt;) and similar now give one warning
    instead of two, with better wording, fixing PR#18424 thanks to
    Mikael Jagan.
  * tools:: startDynamicHelp() now ensures port is in proper range,
    fixing PR#18645.
  * pbeta(x, a,b) is correct now for x=0 or 1 in the boundary cases
    where a or b or both are 0, fixing PR#18672 thanks to Michael
    Fay.
  * pmatch(x, table) for large table, also called for data frame row
    selection, dfrm[nm, ], is now interruptible, fixing PR#18656.
  * predict(&lt;rank-deficient lm&gt;, newdata=*) fix computing of nbasis,
    see Russ Lenth's comment 29 in PR#16158.
  * Added a work-around for a bug in macOS 14.3.1 and higher which
    prevents R plots in the Quartz Cocoa device from updating on
    screen.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1713960000">- CHANGES IN R 4.4.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Startup banners, R --version, sessionInfo() and R CMD check no
    longer report (64-bit) as part of the platform as this is almost
    universal - the increasingly rare 32-bit platforms will still
    report (32-bit).
    On Windows, ditto for window titles.
  * is.atomic(NULL) now returns FALSE, as NULL is not an atomic
    vector.  Strict back-compatibility would replace is.atomic(foo)
    by (is.null(foo) || is.atomic(foo)) but should happen only
    sparingly.
  NEW FEATURES:
  * The confint() methods for "glm" and "nls" objects have been
    copied to the stats package.  Previously, they were stubs which
    called versions in package MASS. The MASS namespace is no longer
    loaded if you invoke (say) confint(glmfit).  Further, the "glm"
    method for profile() and the plot() and pairs() methods for class
    "profile" have been copied from MASS to stats.  (profile.nls()
    and plot.profile.nls() were already in stats.)
  * The confint() and profile methods for "glm" objects have gained a
    possibility to do profiling based on the Rao Score statistic in
    addition to the default Likelihood Ratio. This is controlled by a
    new test = argument.
  * The pairs() method for "profile" objects has been extended with a
    which = argument to allow plotting only a subset of the
    parameters.
  * The "glm" method for anova() computes test statistics and
    p-values by default, using a chi-squared test or an F test
    depending on whether the dispersion is fixed or free.  Test
    statistics can be suppressed by giving argument test a false
    logical value.
  * In setRepositories() the repositories can be set using their
    names via name = instead of index ind =.
  * methods() and .S3methods() gain a all.names option for the (rare)
    case where functions starting with a . should be included.
  * Serializations can now be interrupted (e.g., by Ctrl-C on a
    Unix-alike) if they take too long, e.g., from save.image(),
    thanks to suggestions by Ivan Krylov and others on R-devel.
  * New startup option --max-connections to set the maximum number of
    simultaneous connections for the session.  Defaults to 128 as
    before: allowed values up to 4096 (but resource limits may in
    practice restrict to smaller values).
  * R on Windows (since Windows 10 2004) now uses the new Segment
    Heap allocator. This may improve performance of some
    memory-intensive applications.
  * When R packages are built, typically by R CMD build &lt;pkg&gt;, the
    new --user=&lt;build_user&gt; option overrides the (internally
    determined) user name, currently Sys.info()["user"] or LOGNAME.
    This is a (modified) fulfillment of Will Landau's suggestion in
    PR#17530.
  * tools::testInstalledBasic() gets new optional arguments outDir
    and testSrcdir, e.g., allowing to use it in a &lt;builddir&gt; !=
    &lt;srcdir&gt; setup, and in standard "binary" Windows installation
  * if* a source tests/ folder is present.
  * range(&lt;DT_with_Inf&gt;, finite = TRUE) now work for objects of class
    "Date", "POSIXct", and "POSIXlt" with infinite entries,
    analogously to range.default(), as proposed by Davis Vaughan on
    R-devel.  Other range()-methods can make use of new function
    .rangeNum().
  * New .internalGenerics object complementing .S3PrimitiveGenerics,
    for documentation and low-level book-keeping.
  * grid() now invisibly returns the x- and y- coordinates at which
    the grid-lines were drawn.
  * norm(., type) now also works for complex matrices.
  * kappa(., exact = TRUE, norm = *) now works for all norms and also
    for complex matrices.  In symmetric / triangular cases, the new
    argument uplo = "U" | "L" allows the upper or lower triangular
    part to be specified.
  * memDecompress(type = "unknown") recognizes compression in the
    default 'zlib' format as used by memCompress(type = "gzip").
  * memCompress() and memDecompress() will use the libdeflate library
    (&lt;https://github.com/ebiggers/libdeflate&gt;) if installed.  This
    uses the same type of compression for type = "gzip" but is 1.5-2x
    faster than the system libz library on some common platforms: the
    speed-up may depend on the library version.
  * diff() for objects of class "Date", "POSIXct", and "POSIXlt"
    accepts a units argument passed via ....
  * Dynamic help now does a much better job of rendering package
    DESCRIPTION metadata.
  * Rprof() gains an event argument and support for elapsed (real)
    time profiling on Unix (PR#18076).
  * filled.contour() gains a key.border argument.
  * tools::update_pkg_po() gets arguments pot_make and mo_make for
    _not_ re-making the corresponding files, and additionally a
    verbose argument.
  * Hexadecimal string colour specifications are now accepted in
    short form, so, for example, we can use "#123", which is
    equivalent to "#112233".
    Thanks to MikeFC for the original idea and Ella Kaye, Malcolm
    Barrett, George Stagg, and Hanne Oberman for the patch.
  * Plain-text help shows \var markup by angle brackets.
  * The new experimental primitive function declare() is intended to
    eventually allow information about R code to be communicated to
    the interpreter, compiler, and code analysis tools. The syntax
    for declarations is still being developed.
  * Functions psmirnov(), qsmirnov() and rsmirnov() in package stats
    have had argument two.sided renamed to alternative, to take into
    account that the permutation distributions of the one-sided
    statistics can be different in the case of ties.  Consequence of
    PR#18582.
  * sort() is now an implicit S4 generic in methods.
  * Formatting and printing, format(z), print(z), of complex vectors
    z no longer zap relatively small real or imaginary parts to zero,
    fixing PR#16752.  This is an API change, as it was documented
    previously to round real and imaginary parts together on purpose,
    producing nicer looking output.  As mentioned, e.g. in the PR,
    this change is compatible with many other "R-like" programming
    environments.
    We have simplified the internal code and now basically format the
    real and imaginary parts independently of each other.
  * New experimental functions Tailcall() and Exec() to support
    writing stack-space-efficient recursive functions.
  * Where characters are attempted to be plotted by pdf(),
    postscript() and xfig() which are not in the selected 8-bit
    character set (most often Latin-1) and the R session is using a
    UTF-8 locale, the warning messages will show the UTF-8 character
    rather than its bytes and one dot will be substituted per
    character rather than per byte.  (Platforms whose iconv() does
    transliteration silently plot the transliteration.)
    In a UTF-8 locale some transliterations are now done with a
    warning (e.g., dashes and Unicode minus to hyphen, ligatures are
    expanded, permille (‰) is replaced by o/oo), although the OS may
    have got there first.  These are warnings as they will continue
    to be replaced by dots in earlier versions of R.
  * The matrix multiplication functions crossprod() and tcrossprod()
    are now also primitive and S3 generic, as %*% had become in R
    4.3.0.
  * source() and example() have a new optional argument catch.aborts
    which allows continued evaluation of the R code after an error.
  * The non-Quartz tiff() devices allow additional types of
    compression if supported by the platform's libtiff library.
  * The list of base and recommended package names is now provided by
    tools::standard_package_names().
  * cairo_pdf() and cairo_ps() default to onefile = TRUE to closer
    match pdf() and postscript().
  * New option catch.script.errors provides a documented way to catch
    errors and then continue in non-interactive use.
  * L %||% R newly in base is an expressive idiom for the phrases
    if(!is.null(L)) L else R or if(is.null(L)) R else L.
  * The return value from warnings() now always inherits from
    "warnings" as documented, now also in the case of no warnings
    where it previously returned NULL.
  * as.complex("1i") now returns 0 + 1i instead of NA with a warning.
  * z &lt;- c(NA, 1i) now keeps the imaginary part Im(z[1]) == 0, no
    longer coercing to NA_complex_.  Similarly, cumsum(z) correctly
    sums real and imaginary parts separately, i.e., without
    "crosstalk" in case of NAs.
  * On Alpine Linux iconv() now maps "latin2", "latin-2", "latin9"
    and "latin-9" to encoding names the OS knows about
    (case-insensitively).
  * iconv(sub = "Unicode") now always zero-pads to four (hex) digits,
    rather than to 4 or 8.  (This seems to have become the convention
    once Unicode restricted the number of Unicode points to 2^21 - 1
    and so will never need more than 6 digits.)
  * NCOL(NULL) now returns 0 instead of 1, for consistency with
    cbind().
  * The information for the Euro glyph missing from the Adobe .afm
    files for the Courier, Helvetica and Times families has been
    copied from their URW equivalents - this will improve vertical
    centring in the pdf() and postscript() devices.
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.12.0.  The changes are almost entirely cosmetic.
  * The included LAPACK sources have been updated to version 3.12.0
    and some further double-complex routines added.
  * There are new font families for the 2014--5 URW 2.0 fonts (see
    ?pdf) which are included in recent versions of Ghostscript.
    These have font widths for most Greek glyphs and a few others
    which were missing from the original versions (whose font
    families remain available for reproducibility, although
    Ghostscript-based viewers will render using the 2.0 versions).
  * Improve the large-n efficiency of as.matrix(&lt;dist&gt;), thanks an R
    contributors effort, notably by Tim Taylor and Heather Turner,
    see PR#18660.
  * The default and numeric methods of all.equal() get a check.class
    option.
  * zapsmall() gets new optional arguments, function mFUN and min.d,
    for extra flexibility; fulfills a wish in PR#18199.  Also, it is
    now an implicit S4 generic in package methods.
  * The Rd filter for aspell() gains an ignore argument.
  * New generic function sort_by(), primarily useful for the
    data.frame method which can be used to sort rows of a data frame
    by one or more columns.
  * The icence headers for the RPC code in src/extra/xdr have been
    updated to use the GPL-compatible licence published by Oracle
    America in 2010.
  * New function pkg2HTML() in tools to create single-page HTML
    reference manuals for R packages.
  * The byte code evaluator now uses less C stack space for recursive
    calls to byte-compiled functions. It also makes more of an effort
    to avoid allocations for scalar return values.
  * New completion option backtick (disabled by default) allows
    non-syntactic completions to be wrapped in backquotes. This is
    currently only useful for Jupyter notebooks via the IRkernel
    package, and may cause problems for other backends.
  INSTALLATION:
  * The parser has been updated to work with bison 3.8.2, which is
    now used for the pre-generated parsers in gram.c, file.c, and
    gramRd.c. A few parser error messages have changed, which may
    affect code that relies on exact messages.
  INSTALLATION on a UNIX-ALIKE:
  * System valgrind headers are now required to use configure option
  - -with-valgrind-instrumentation with value 1 or 2.
  * configure will warn if it encounters a 32-bit build, as that is
    nowadays almost untested.
  * Environment variable R_SYSTEM_ABI is no longer used and so no
    longer recorded in etc/Renviron (it was not on Windows and was
    only ever used when preparing package tools).
  * If the libdeflate library and headers are available, libdeflate
    rather than libz is used to (de)compress R objects in lazy-load
    databases.  Typically tasks spend up to 5% of their time on such
    operations, although creating lazy-data databases is one of the
    exceptions.
    This can be suppressed if the library is available by the
    configure option --without-libdeflate-compression.
  * configure option --enable-lto=check has not worked reliably since
    2019 and has been removed.
  * The minimum autoconf requirement for a maintainer build has been
    increased to autoconf 2.71.
    It is intended to increase this to 2.72 for R 4.5.0: the
    distributed configure file was generated using 2.72.
  * The minimum version requirement for an external LAPACK has been
    reduced to 3.9.0.
  * No default C++ compiler is set if no C++17 compiler is detected:
    there is no longer an automatic fallback to C++14 or C++11.
    Compilers from the last five years should have sufficient
    support: for others macros CXX and CXXSTD can be set in file
    config.site to provide a fallback if needed.
    The Objective-C++ compiler now by default uses the standard
    selected by R for C++ (currently C++17) rather than the default
    standard for the C++ compiler (which on macOS is still C++98).
  INSTALLATION on macOS:
  * A new configure option --with-newAccelerate makes use of Apple's
    'new' BLAS / LAPACK interfaces in their Accelerate framework.
    Those interfaces are only available in macOS 13.3 or later, and
    building requires SDK 13.3 or later (from the Command Line Tools
    or Xcode 14.3 or later).
    By default the option uses new Accelerate for BLAS calls: to also
    use it for LAPACK use option --with-newAccelerate=lapack.  The
    later interfaces provide LAPACK 3.9.1 rather than 3.2.1: 3.9.1 is
    from 2021-04 and does not include the improved algorithms
    introduced in LAPACK 3.10.0 (including for BLAS calls).
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools44, an update of the Rtools43 toolchain.  It is
    based on GCC 13 and newer versions of MinGW-W64, binutils and
    libraries (targeting 64-bit Intel CPUs).  R-devel can no longer
    be built using Rtools43 without changes.
  * Rtools44 has experimental support for 64-bit ARM (aarch64) CPUs
    _via_ the LLVM 17 toolchain using lld, clang/flang-new and
    libc++.
  UTILITIES:
  * R CMD check notes when S4-style exports are used without
    declaring a strong dependence on package methods.
  * tools::checkRd() (used by R CMD check) detects more problems with
    \Sexpr-based dynamic content, including bad nesting of \Sexprs
    and invalid arguments.
  * tools::checkRd() now reports Rd titles and section names ending
    in a period; this is ignored by R CMD check unless environment
    variable _R_CHECK_RD_CHECKRD_MINLEVEL_ is set to -5 or smaller.
  * R CMD check now notes Rd files without an \alias, as long
    documented in 'Writing R Extensions' §1.3.1.  The check for a
    missing \description has been moved from tools::checkRd() to
    tools::checkRdContents().
  * R CMD check now visits inst/NEWS.Rd and OS-specific man
    subdirectories when checking Rd files.
  * tools::checkDocFiles() and tools::checkRdContents() now also
    check internal Rd files by default, but "specially" (ignoring
    missing documentation of arguments).
  * R CMD Rdiff gets option --useEx.
  * R CMD check now warns on non-portable uses of Fortran KIND such
    as INTEGER(KIND=4) and REAL(KIND=8).
    To see the failing lines set environment variable
    _R_CHECK_FORTRAN_KIND_DETAILS_ to a true value.
  * When checking Rd files, R CMD check now notes some of the "lost
    braces" that tools::checkRd() finds.  Typical problems are Rd
    macros missing the initial backslash (e.g., code{...}), in-text
    set notation (e.g., {1, 2}, where the braces need escaping), and
    \itemize lists with \describe-style entries of the form
    \item{label}{description}.
  * R CMD INSTALL (and hence check) will compile C++ code with
  - DR_NO_REMAP if environment variable _R_CXX_USE_NO_REMAP_ is set
    to a true value.  It is planned that this will in future become
    the default for compiling C++.
  * The new built-in Rd macro \dontdiff{} can be used to mark example
    code whose output should be ignored when comparing check output
    to reference output (tests/Examples/&lt;pkg&gt;-Ex.Rout.save).  The
    \dontdiff tag, like \donttest, is _not_ shown on the rendered
    help page, so provides a clean alternative to ##
    IGNORE_RDIFF_(BEGIN|END) comments.
  * R CMD build when there is no NAMESPACE, now uses the recommended
    exportPattern("^[^.]"), instead of exporting everything.
  * R CMD check now warns about non-ASCII characters in the NAMESPACE
    file (in addition to R files). Such packages are not portable and
    may fail to install on some platforms.
  C-LEVEL FACILITIES:
  * Headers R_ext/Applic.h and R-ext/Linpack.h used to include
    R_ext/BLAS.h although this was undocumented and unneeded by their
    documented entry points.  They no longer do so.
  * New function R_missing(), factored out from do_missing(), used to
    fix PR#18579.
  * SEXP type S4SXP has been renamed to OBJSXP to support
    experimenting with alternative object systems.  The S4SXP value
    can still be used in C code but is now deprecated.  Based on
    contributions from the R Consortium's Object-Oriented Programming
    Working Group.
  * New function pow1p(x,y) for accurate (1+x)^y.
  * mkCharLenCE was incorrectly documented to take a size_t length
    but was implemented with int (and character strings in R are
    limited to 2^31 - 1 bytes).
  DEPRECATED AND DEFUNCT:
  * data() no longer handles zipped data from long-defunct (since R
    2.13.0) --use-zip-data installations.
  * The legacy graphics devices pictex() and xfig() are now
    deprecated.  They do not support recent graphics enhancements and
    their font handling is rudimentary. The intention is to retain
    them for historical interest as long as they remain somewhat
    functional.
  * Support for encoding = "MacRoman" has been removed from the pdf()
    and postscript() devices - this was a legacy encoding supporting
    classic macOS up to 2001 and no longer has universal libiconv
    support.
  * is.R() is deprecated as no other S dialect is known to be in use
    (and this could only identify historical dialects, not future
    ones).
    Further information on calls can be obtained by setting the
    environment variable _R_DEPRECATED_IS_R_ to error which turns the
    deprecation warning into an error and so by default gives a
    traceback.  (This is done by R CMD check --as-cran.)
  * UseMethod() no longer forwards local variables assigned in the
    generic function into method call environments before evaluating
    the method body. This makes method calls behave more like
    standard function calls and makes method code easier to analyze
    correctly.
  * The twelve as.data.frame.&lt;class&gt;() methods which were deprecated
    only via _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ and in R CMD
    check --as-cran are formally deprecated now in favour of calling
    as.data.frame() or as.data.frame.vector().  The deprecation
    "check" now works also when as.data.frame() is S4 generic thanks
    to Ivan Krylov.
  * The default method for the directional comparison operators &lt;, &gt;,
    &lt;=, and &gt;= now signals an error when one of the operands is a
    language object, i.e. a symbol or a call.
  * For terms.formula(), deprecate abb and neg.out arguments
    _formally_ in addition to just documenting it.
  BUG FIXES:
  * The methods package is more robust to not being attached to the
    search path.  More work needs to be done.
  * pairwise.t.test() misbehaved when subgroups had 0 DF for
    variance, even with pool.sd = TRUE.  (PR#18594 by Jack Berry).
  * Probability distribution functions [dpq]&lt;distrib&gt;(x, *), but also
    bessel[IKJY](x, .) now consistently preserve attributes(x) when
    length(x) == 0, e.g., for a 2 x 0 matrix, thanks to Karolis
    Koncevičius' report PR#18509.
  * Group "Summary" computations such as sum(1:3, 4, na.rm = 5, NA,
    7, na.rm = LL) now give an error instead of either 17 or NN for
    LL true or false, as proposed by Ivan Krylov on the R-devel
    mailing list.  (This also means it is now an error to specify
    na.rm more than once.)
  * as.complex(x) now returns complex(real = x, imaginary = 0) for
    _all_ numerical and logical x, notably also for NA or
    NA_integer_.
  * Directories are now omitted by file.copy(, recursive = FALSE) and
    in file.append() (PR#17337).
  * gsub() and sub() are now more robust to integer overflow when
    reporting errors caused by too large input strings (PR#18346).
  * Top-level handlers are now more robust to attempts to remove a
    handler whilst handlers are running (PR#18508).
  * The handling of Alt+F4 in dialogs created on Windows using
    GraphApp has been fixed (PR#13870).
  * density() more consistently computes grid values for the
    FFT-based convolution, following Robert Schlicht's analysis and
    proposal in PR#18337, correcting density values typically by a
    factor of about 0.999.  Argument old.coords = TRUE provides back
    compatibility.
  * palette.colors() gains a name argument that defaults to FALSE
    controlling whether the vector of colours that is returned has
    names (where possible).  PR#18529.
  * tools::xgettext() no longer extracts the (non-translatable) class
    names from warningCondition and errorCondition calls.
  * S3method(&lt;gen&gt;, &lt;class&gt;, &lt;func&gt;) in the NAMESPACE file now works
    (again) when &lt;func&gt; is visible from the namespace, e.g.,
    imported, or in base.
  * getParseData(f) now also works for a function defined in the
    first of several &lt;pkg&gt;/R/*.R source files, thanks to Kirill
    Müller's report and Duncan Murdoch's patch in PR#16756.
  * Rd \Sexpr macros with nested #ifdef conditionals were not
    processed.
  * A non-blocking connection with non-default encoding (such as a
    socket) now correctly returns from readLines() after new data has
    arrived also when its EOF had been reached previously.  Thanks to
    Peter Meilstrup's report on R-devel and Ivan Krylov's report and
    patch proposal in PR#18555.
  * tools::checkRdContents() failed to detect empty argument
    descriptions when they spanned multiple lines, including those
    generated by prompt().  These cases are now noted by R CMD check.
  * Plain-text help no longer outputs spurious colons in the
    arguments list (for multi-line \item labels in the Rd source).
  * kappa() and rcond() work correctly in more cases; kappa(., norm =
    "2") now warns that it computes the 1-norm with (default) exact =
    FALSE; prompted by Mikael Jagan's quite comprehensive PR#18543.
  * Rd skeletons generated by prompt() or promptData() now use a
    dummy title (so R CMD build works).  tools::checkRdContents() has
    been updated to detect such template leftovers, including from
    promptPackage().
  * When S4 method dispatch fails because no method was found, the
    error message now includes the signature argument names; thanks
    to Michael Chirico's proposal on the R-devel list.
  * withAutoprint({ .. }) now preserves srcrefs previously lost,
    thanks to Andrew Simmons' report plus fix in PR#18572.
  * transform.data.frame() no longer adjusts names; in particular,
    untransformed variables are kept as-is, including those with
    syntactically invalid names (PR#17890).
  * The keep.source option for Rd \Sexpr blocks is no longer ignored.
  * The formula methods for t.test() and wilcox.test() now catch when
    paired is passed, addressing PR#14359; use Pair(x1, x2) ~ 1 for a
    paired test.
  * The level reported in the browser prompt was often too large. It
    now shows the number of browser contexts on the stack.
  * For cbind() and rbind(), the optional deparse.level argument is
    now properly passed to methods, thanks to Mikael Jagan's PR#18579
    and comments there.
  * Some error and warning messages for large ('long vector')
    matrix(v, nr, nc) and dim(m) &lt;- d are now correct about sizes,
    using long long formatting, fixing PR#18612 (and more) reported
    by Mikael Jagan.
  * readChar(useBytes = TRUE) now terminates strings even when the
    underlying connection uses extra spaces in the input buffer.
    This fixes problems with extra garbage seen with gzip
    connections, PR#18605.
  * Named capture in PCRE regular expressions now works also with
    more than 127 named groups (PR#18588).
  * Datetime functions are now robust against long jumps when dealing
    with internal time zone changes.  This avoids confusing warnings
    about an invalid time zone, previously triggered by turning
    warnings into errors or handling them via tryCatch (PR#17966,
    PR#17780).
  * Datetime functions now restore even an empty TZ environment
    variable after internal time zone changes (PR#17724).  This makes
    results of datetime functions with this (typically unintentional)
    setting more predictable.
  * drop.terms(*) now drops response as by default, keep.response =
    FALSE, fixing PR#18564 thanks to Mikael Jagan.
  * dummy.coef(.) now also works for lm()-models with character
    categorical predictor variables rather than factor ones, fixing
    PR#18635 reported by Jinsong Zhao.
  * formals(f) &lt;- formals(f) now also works for a function w/o
    arguments and atomic _constant_ body(f).
  * Correct as.function(&lt;invalid list&gt;, .)'s error message.
  * removeSource() is yet more thorough in finding and removing
    "srcref" and the other source references from parsed R language
    chunks, fixing PR#18638 thanks to Andrew Simmons.
  * dgeom() is more accurate now, notably when its result is very
    small, fixing PR#18642 thanks to the proposal of Morten Welinder,
    also improving other instances where C level binom_raw(x, n, ..)
    has x == 0 or x== n.
  * warning() with options(warn = 1) has improved output for
    multi-line messages.
  * axis.Date() and axis.POSIXct() now respect the par("lab") setting
    for the number of pretty() intervals.
  * Comparisons for language objects (which are based on deparsing)
    are now more careful about using accurate deparsed results
    (PR#18676).
  * Plain-text help (Rd2txt) now correctly preserves blank lines
    following single-line \dontrun code.
  * &lt;POSIXlt&gt;[*] no longer sets wrong "balanced" attribute, fixing
    PR#18681 thanks to Mikael Jagan.
  * str(&lt;classed-call&gt;) now deparses the call as expected, fixing
    PR#18684, reported by Dave Slager.
  * In Rd examples, code following the closing brace of a \dontrun,
    \dontshow or \donttest tag on the same line is no longer skipped
    when R CMD check runs the examples.
  * as.data.frame(matrix(*, ncol=0)) now gets valid names() and
    colnames(); reported by Davis Vaughan on the R-devel list.
  * Internal Mathlib function stirlerr(n) is now almost fully
    (52-bit) accurate for all n &gt;= ~5.9 and more accurate also in the
    range 1 -- 5.9.  This entails small ("after 12th decimal")
    changes in density functions, e.g., dgamma() in _some_ regions of
    their support.  The fix was partly prompted by Morten Welinder's
    PR#18640.
  * Numbers like 9876543.2 are now considered non-integer by Mathlib
    internal R_nonint(), amending original fix of PR#15734.
  * Rd comment lines no longer cause broken paragraphs in the
    rendered PDF and plain-text help. In code blocks, pure comment
    lines (starting with %) no longer produce an empty line.
  * xtabs(Freq ~ .) now consistently defaults to na.action = na.pass,
    using na.rm = FALSE (added as an argument) when summing over Freq
    (PR#17770).
  * tools::testInstalledPackage() is no longer silent about failures
    from running examples or tests and its return code no longer
    ignores failures from checking vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1718366400">- CHANGES IN R 4.4.1:
  C-LEVEL FACILITIES:
  * Functions R_atof and R_strtod declared in header R_ext/Utils.h
    are now documented in 'Writing R Extensions' and so formally part
    of the API.
  * The non-API entry points Rf_setSVector, Rf_StringFalse,
    Rf_StringTrue and Rf_isBlankString have been added to those
    reported by R CMD check.
  * The new function Rf_allocLang is now available. This provides an
    alternative to the idiom of calling Rf_allocList followed by
    SET_TYPEOF.
  UTILITIES:
  * R CMD check now reports as warnings what gfortran calls 'Fortran
    2018 deleted features', all of which have long been marked as
    'obsolescent' and some of which were deleted in Fortran 2008 or
    earlier.  Fortran compilers are no longer required to support
    these.
  BUG FIXES:
  * as.numeric(), scan(), type.convert() and other places which use
    the internal C function R_strtod now require a _non-empty_ digit
    sequence in a decimal or binary exponent.  This aligns with the
    C/POSIX standard for strtod and with ?NumericConstants.
  * as.data.frame(m, make.names=NA) now works correctly for a matrix
    m with NA's in row names.
  * The error message from &lt;POSIXlt&gt;[["hour"]] and similar now
    mentions *[[, "hour"]], as wished for in PR#17409 and proposed by
    Michael Chirico.
  * qbinom() and potentially qpois(), qnbinom(), no longer sometimes
    fail accurate inversion (of pbinom(), etc), thanks to Christopher
    Chang's report and patch in PR#18711.
  * The internal help server on Windows can again serve requests sent
    in quick succession, fixing a regression in R 4.4.0.
  * debugcall(&lt;S3Generic&gt;()) now also works when a corresponding
    S4-generic version is in the methods cache (PR#18143).
  * Package tools' toTitleCase(ch0) now returns character(0) when ch0
    is of zero length; fixing PR#18724, reported by David Hugh Jones.
  * R CMD check is no longer broken (without a check result and no
    explanation in 00check.log) for a package which declares an
    invalid VignetteBuilder in DESCRIPTION but has no vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1730376000">- CHANGES IN R 4.4.2:
  C-LEVEL FACILITIES:
  * The S-compatibility macros F77_COM and F77_COMDECL defined in
    header R_ext/RS.h are deprecated and will be removed shortly.  We
    could find no record of their use.
  BUG FIXES:
  * Mathlib function lgammacor(x) no longer warns about underflow to
    zero for large x.
  * Text widths and heights were incorrectly reported by the Quartz
    device if the drawing context didn't exist yet (typically when
    drawing off-screen to a window that is yet to appear, see
    PR#18591).
  * The Quartz device could segfault in cases where paths with spaces
    are used in the new glyph drawing API.  Thanks to Tomek
    Gieorgijewski (PR#18758).
  * On macOS in R CRAN builds, it is again possible to read
    little-endian UTF-16 text with a BOM from a connection using
    encoding="UTF-16".  Users building R from source should avoid
    using the system libiconv in macOS 14.1 and later.
  * methods' internal .requirePackage() now re-enables primitive
    method dispatch when needed; thanks to Ivan Krylov for
    demystifying CRAN package check failures on the R-devel mailing
    list.</changelog>
</package>
<package pkgid="f1d9d0cb932fb5da2784fdaf83c2bae9549fb8105f444e094f46c36613f521985b080c9146a99fe2b24bb5a02f4046434c82ad940652a046f515fb65a2a4fa20" name="R-survival" arch="i586">
  <version epoch="0" ver="3.7.0" rel="51.0.2.2.sr20241103"/>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1620302400">- To get in sync with d:l:R:autoCRAN the Matrix package's split
  in -devel was reversed.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339200">- improved spec file according to comments of dimstar in
  https://build.opensuse.org/request/show/892685</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339201">- CHANGES IN R 4.1.0:
  FUTURE DIRECTIONS:
  * It is planned that the 4.1.x series will be the last to support
    32-bit Windows, with production of binary packages for that
    series continuing until early 2023.
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Data set esoph in package datasets now provides the correct
    numbers of controls; previously it had the numbers of cases added
    to these.  (Reported by Alexander Fowler in PR#17964.)
  NEW FEATURES:
  * www.omegahat.net is no longer one of the repositories known by
    default to setRepositories().  (Nowadays it only provides source
    packages and is often unavailable.)
  * Function package_dependencies() (in package tools) can now use
    different dependency types for direct and recursive dependencies.
  * The checking of the size of tarball in R CMD check --as-cran
    &lt;pkg&gt; may be tweaked via the new environment variable
    _R_CHECK_CRAN_INCOMING_TARBALL_THRESHOLD_, as suggested in
    PR#17777 by Jan Gorecki.
  * Using c() to combine a factor with other factors now gives a
    factor, an ordered factor when combining ordered factors with
    identical levels.
  * apply() gains a simplify argument to allow disabling of
    simplification of results.
  * The format() method for class "ftable" gets a new option justify.
    (Suggested by Thomas Soeiro.)
  * New ...names() utility.  (Proposed by Neal Fultz in PR#17705.)
  * type.convert() now warns when its as.is argument is not
    specified, as the help file always said it _should_.  In that
    case, the default is changed to TRUE in line with its change in
    read.table() (related to stringsAsFactor) in R 4.0.0.
  * When printing list arrays, classed objects are now shown _via_
    their format() value if this is a short enough character string,
    or by giving the first elements of their class vector and their
    length.
  * capabilities() gets new entry "Rprof" which is TRUE when R has
    been configured with the equivalent of --enable-R-profiling (as
    it is by default).  (Related to Michael Orlitzky's report
    PR#17836.)
  * str(xS4) now also shows extraneous attributes of an S4 object
    xS4.
  * Rudimentary support for vi-style tags in rtags() and R CMD rtags
    has been added.  (Based on a patch from Neal Fultz in PR#17214.)
  * checkRdContents() is now exported from tools; it and also
    checkDocFiles() have a new option chkInternal allowing to check
    Rd files marked with keyword "internal" as well.  The latter can
    be activated for R CMD check via environment variable
    _R_CHECK_RD_INTERNAL_TOO_.
  * New functions numToBits() and numToInts() extend the raw
    conversion utilities to (double precision) numeric.
  * Functions URLencode() and URLdecode() in package utils now work
    on vectors of URIs.  (Based on patch from Bob Rudis submitted
    with PR#17873.)
  * path.expand() can expand ~user on most Unix-alikes even when
    readline is not in use.  It tries harder to expand ~, for example
    should environment variable HOME be unset.
  * For HTML help (both dynamic and static), Rd file links to help
    pages in external packages are now treated as references to
    topics rather than file names, and fall back to a file link only
    if the topic is not found in the target package. The earlier rule
    which prioritized file names over topics can be restored by
    setting the environment variable _R_HELP_LINKS_TO_TOPICS_ to a
    false value.
  * c() now removes NULL arguments before dispatching to methods,
    thus simplifying the implementation of c() methods, _but_ for
    back compatibility keeps NULL when it is the first argument.
    (From a report and patch proposal by Lionel Henry in PR#17900.)
  * Vectorize()'s result function's environment no longer keeps
    unneeded objects.
  * Function ...elt() now propagates visibility consistently with
    ..n.  (Thanks to Lionel Henry's PR#17905.)
  * capture.output() no longer uses non-standard evaluation to
    evaluate its arguments.  This makes evaluation of functions like
    parent.frame() more consistent.  (Thanks to Lionel Henry's
    PR#17907.)
  * packBits(bits, type="double") now works as inverse of
    numToBits().  (Thanks to Bill Dunlap's proposal in PR#17914.)
  * curlGetHeaders() has two new arguments, timeout to specify the
    timeout for that call (overriding getOption("timeout")) and TLS
    to specify the minimum TLS protocol version to be used for
    https:// URIs (_inter alia_ providing a means to check for sites
    using deprecated TLS versions 1.0 and 1.1).
  * For nls(), an optional constant scaleOffset may be added to the
    denominator of the relative offset convergence test for cases
    where the fit of a model is expected to be exact, thanks to a
    proposal by John Nash.  nls(*, trace=TRUE) now also shows the
    convergence criterion.
  * Numeric differentiation _via_ numericDeriv() gets new optional
    arguments eps and central, the latter for taking central divided
    differences.  The latter can be activated for nls() via
    nls.control(nDcentral = TRUE).
  * nls() now passes the trace and control arguments to getInitial(),
    notably for all self-starting models, so these can also be fit in
    zero-noise situations via a scaleOffset.  For this reason, the
    initial function of a selfStart model must now have ... in its
    argument list.
  * bquote(splice = TRUE) can now splice expression vectors with
    attributes: this makes it possible to splice the result of
    parse(keep.source = TRUE).  (Report and patch provided by Lionel
    Henry in PR#17869.)
  * textConnection() gets an optional name argument.
  * get(), exists(), and get0() now signal an error if the first
    argument has length greater than 1.  Previously additional
    elements were silently ignored.  (Suggested by Antoine Fabri on
    R-devel.)
  * R now provides a shorthand notation for creating functions, e.g.
    \(x) x + 1 is parsed as function(x) x + 1.
  * R now provides a simple native forward pipe syntax |&gt;.  The
    simple form of the forward pipe inserts the left-hand side as the
    first argument in the right-hand side call.  The pipe
    implementation as a syntax transformation was motivated by
    suggestions from Jim Hester and Lionel Henry.
  * all.equal(f, g) for functions now by default also compares their
    environment(.)s, notably via new all.equal method for class
    function.  Comparison of nls() fits, e.g., may now need
    all.equal(m1, m2, check.environment = FALSE).
  * .libPaths() gets a new option include.site, allowing to _not_
    include the site library.  (Thanks to Dario Strbenac's suggestion
    and Gabe Becker's PR#18016.)
  * Lithuanian translations are now available.  (Thanks to Rimantas
    Zakauskas.)
  * names() now works for DOTSXP objects.  On the other hand, in
    R-lang, the R language manual, we now warn against relying on the
    structure or even existence of such dot-dot-dot objects.
  * all.equal() no longer gives an error on DOTSXP objects.
  * capabilities("cairo") now applies only to the file-based devices
    as it is now possible (if very unusual) to build R with Cairo
    support for those but not for X11().
  * There is optional support for tracing the progress of
    loadNamespace() - see its help.
  * (Not Windows.)  l10n_info() reports an additional element, the
    name of the encoding as reported by the OS (which may differ from
    the encoding part (if any) of the result from
    Sys.getlocale("LC_CTYPE").
  * New function gregexec() which generalizes regexec() to find _all_
    disjoint matches and well as all substrings corresponding to
    parenthesized subexpressions of the given regular expression.
    (Contributed by Brodie Gaslam.)
  * New function charClass() in package utils to query the
    wide-character classification functions in use (such as
    iswprint).
  * The names of quantile()'s result no longer depend on the global
    getOption("digits"), but quantile() gets a new optional argument
    digits = 7 instead.
  * grep(), sub(), regexp and variants work considerably faster for
    long factors with few levels.  (Thanks to Michael Chirico's
    PR#18063.)
  * Provide grouping of x11() graphics windows within a window
    manager such as Gnome or Unity; thanks to a patch by Ivan Krylov
    posted to R-devel.
  * The split() method for class data.frame now allows the f argument
    to be specified as a formula.
  * sprintf now warns on arguments unused by the format string.
  * New palettes "Rocket" and "Mako" for hcl.colors() (approximating
    palettes of the same name from the 'viridisLite' package).
    Contributed by Achim Zeileis.
  * The base environment and its namespace are now locked (so one can
    no longer add bindings to these or remove from these).
  * Rterm handling of multi-byte characters has been improved,
    allowing use of such characters when supported by the current
    locale.
  * Rterm now accepts ALT+ +xxxxxxxx sequences to enter Unicode
    characters as hex digits.
  * Environment variable LC_ALL on Windows now takes precedence over
    LC_CTYPE and variables for other supported categories, matching
    the POSIX behaviour.
  * duplicated() and anyDuplicated() are now optimized for integer
    and real vectors that are known to be sorted via the ALTREP
    framework. Contributed by Gabriel Becker via PR#17993.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 14
    and so packages that provide graphics devices should be
    reinstalled.
  * Graphics devices should now specify deviceVersion to indicate
    what version of the graphics engine they support.
  * Graphics devices can now specify deviceClip.  If TRUE, the
    graphics engine will never perform any clipping of output itself.
    The clipping that the graphics engine does perform (for both
    canClip = TRUE and canClip = FALSE) has been improved to avoid
    producing unnecessary artifacts in clipped output.
  * The grid package now allows gpar(fill) to be a linearGradient(),
    a radialGradient(), or a pattern().  The viewport(clip) can now
    also be a grob, which defines a clipping path, and there is a new
    viewport(mask) that can also be a grob, which defines a mask.
    These new features are only supported so far on the Cairo-based
    graphics devices and on the pdf() device.
  * (Not Windows.)  A warning is given when a Cairo-based type is
    specified for a png(), jpeg(), tiff() or bmp() device but Cairo
    is unsupported (so type = "Xlib" is tried instead).
  * grSoftVersion() now reports the versions of FreeType and
    FontConfig if they are used directly (not _via_ Pango), as is
    most commonly done on macOS.
  C-LEVEL FACILITIES:
  * The _standalone_ libRmath math library and R's C API now provide
    log1pexp() again as documented, and gain log1mexp().
  INSTALLATION on a UNIX-ALIKE:
  * configure checks for a program pkgconf if program pkg-config is
    not found.  These are now only looked for on the path (like
    almost all other programs) so if needed specify a full path to
    the command in PKG_CONFIG, for example in file config.site.
  * C99 function iswblank is required - it was last seen missing ca
    2003 so the workaround has been removed.
  * There are new configure options --with-internal-iswxxxxx,
  - -with-internal-towlower and --with-internal-wcwidth which allows
    the system functions for wide-character classification,
    case-switching and width (wcwidth and wcswidth) to be replaced by
    internal ones.  The first has long been used on macOS, AIX (and
    Windows) but this enables it to be unselected there and selected
    for other platforms (it is the new default on Solaris).  The
    second is new in this version of R and is selected by default on
    macOS and Solaris.  The third has long been the default and
    remains so as it contains customizations for East Asian
    languages.
    System versions of these functions are often minimally
    implemented (sometimes only for ASCII characters) and may not
    cover the full range of Unicode points: for example Solaris (and
    Windows) only cover the Basic Multilingual Plane.
  * Cairo installations without X11 are more likely to be detected by
    configure, when the file-based Cairo graphics devices will be
    available but not X11(type = "cairo").
  * There is a new configure option --with-static-cairo which is the
    default on macOS.  This should be used when only static cairo
    (and where relevant, Pango) libraries are available.
  * Cairo-based graphics devices on platforms without Pango but with
    FreeType/FontConfig will make use of the latter for font
    selection.
  LINK-TIME OPTIMIZATION on a UNIX-ALIKE:
  * Configuring with flag --enable-lto=R now also uses LTO when
    installing the recommended packages.
  * R CMD INSTALL and R CMD SHLIB have a new flag --use-LTO to use
    LTO when compiling code, for use with R configured with
  - -enable-lto=R.  For R configured with --enable-lto, they have
    the new flag --no-use-LTO.
    Packages can opt in or out of LTO compilation _via_ a UseLTO
    field in the DESCRIPTION file.  (As usual this can be overridden
    by the command-line flags.)
  BUILDING R on Windows:
  * for GCC &gt;= 8, FC_LEN_T is defined in config.h and hence character
    lengths are passed from C to Fortran in _inter alia_ BLAS and
    LAPACK calls.
  * There is a new text file src/gnuwin32/README.compilation, which
    outlines how C/Fortran code compilation is organized and
    documents new features:
  * R can be built with Link-Time Optimization with a suitable
    compiler - doing so with GCC 9.2 showed several
    inconsistencies which have been corrected.
  * There is support for cross-compiling the C and Fortran code
    in R and standard packages on suitable (Linux) platforms.
    This is mainly intended to allow developers to test later
    versions of compilers - for example using GCC 9.2 or 10.x has
    detected issues that GCC 8.3 in Rtools40 does not.
  * There is experimental support for cross-building R packages
    with C, C++ and/or Fortran code.
  * The R installer can now be optionally built to support a single
    architecture (only 64-bit or only 32-bit).
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++14 where
    available (which it is on all currently checked platforms): if
    not (as before) C++11 is used if available otherwise C++ is not
    supported.
    Packages which specify C++11 will still be installed using C++11.
    C++14 compilers may give deprecation warnings, most often for
    std::random_shuffle (deprecated in C++14 and removed in C++17).
    Either specify C++11 (see 'Writing R Extensions') or modernize
    the code and if needed specify C++14.  The latter has been
    supported since R 3.4.0 so the package's DESCRIPTION would need
    to include something like
    Depends: R (&gt;= 3.4)
  PACKAGE INSTALLATION on Windows:
  * R CMD INSTALL and R CMD SHLIB make use of their flag --use-LTO
    when the LTO_OPT make macro is set in file etc/${R_ARCH}/Makeconf
    or in a personal/site Makevars file.  (For details see 'Writing R
    Extensions' SS4.5.)
    This provides a valuable check on code consistency.  It does work
    with GCC 8.3 as in Rtools40, but that does not detect everything
    the CRAN checks with current GCC do.
  PACKAGE INSTALLATION on macOS:
  * The default personal library directory on builds with
  - -enable-aqua (including CRAN builds) now differs by CPU type,
    one of
    ~/Library/R/x86_64/x.y/library
    ~/Library/R/arm64/x.y/library
    This uses the CPU type R (and hence the packages) were built for,
    so when a x86_64 build of R is run under Rosetta emulation on an
    arm64 Mac, the first is used.
  UTILITIES:
  * R CMD check can now scan package functions for bogus return
    statements, which were possibly intended as return() calls (wish
    of PR#17180, patch by Sebastian Meyer). This check can be
    activated via the new environment variable
    _R_CHECK_BOGUS_RETURN_, true for --as-cran.
  * R CMD build omits tarballs and binaries of previous builds from
    the top-level package directory.  (PR#17828, patch by Sebastian
    Meyer.)
  * R CMD check now runs sanity checks on the use of LazyData, for
    example that a data directory is present and that
    LazyDataCompression is not specified without LazyData and has a
    documented value.  For packages with large LazyData databases
    without specifying LazyDataCompression, there is a reference to
    the code given in 'Writing R Extensions' SS1.1.6 to test the
    choice of compression (as in all the CRAN packages tested a
    non-default method was preferred).
  * R CMD build removes LazyData and LazyDataCompression fields from
    the DESCRIPTION file of packages without a data directory.
  ENCODING-RELATED CHANGES:
  * The parser now treats \Unnnnnnnn escapes larger than the upper
    limit for Unicode points (\U10FFFF) as an error as they cannot be
    represented by valid UTF-8.
    Where such escapes are used for outputting non-printable
    (including unassigned) characters, 6 hex digits are used (rather
    than 8 with leading zeros).  For clarity, braces are used, for
    example \U{0effff}.
  * The parser now looks for non-ASCII spaces on Solaris (as
    previously on most other OSes).
  * There are warnings (including from the parser) on the use of
    unpaired surrogate Unicode points such as \uD834.  (These cannot
    be converted to valid UTF-8.)
  * Functions nchar(), tolower(), toupper() and chartr() and those
    using regular expressions have more support for inputs with a
    marked Latin-1 encoding.
  * The character-classification functions used (by default) to
    replace the system iswxxxxx functions on Windows, macOS and AIX
    have been updated to Unicode 13.0.0.
    The character-width tables have been updated to include new
    assignments in Unicode 13.0.0.
  * The code for evaluating default (extended) regular expressions
    now uses the same character-classification functions as the rest
    of R (previously they differed on Windows, macOS and AIX).
  * There is a build-time option to replace the system's
    wide-character wctrans C function by tables shipped with R: use
    configure option --with-internal-towlower or (on Windows)
  - DUSE_RI18N_CASE in CFLAGS when building R.  This may be needed
    to allow tolower() and toupper() to work with Unicode characters
    beyond the Basic Multilingual Plane where not supported by system
    functions (e.g. on Solaris where it is the new default).
  * R is more careful when truncating UTF-8 and other multi-byte
    strings that are too long to be printed, passed to the system or
    libraries or placed into an internal buffer.  Truncation will no
    longer produce incomplete multibyte characters.
  DEPRECATED AND DEFUNCT:
  * Function plclust() from the package stats and
    package.dependencies(), pkgDepends(), getDepList(),
    installFoundDepends(), and vignetteDepends() from package tools
    are defunct.
  * Defunct functions checkNEWS() and readNEWS() from package tools
    and CRAN.packages() from utils have been removed.
  * R CMD config CXXCPP is defunct (it was deprecated in R 3.6.2).
  * parallel::detectCores() drops support for Irix (retired in 2013).
  * The LINPACK argument to chol.default(), chol2inv(),
    solve.default() and svd() has been defunct since R 3.1.0.  It was
    silently ignored up to R 4.0.3 but now gives an error.
  * Subsetting/indexing, such as ddd[*] or ddd$x on a DOTSXP
    (dot-dot-dot) object ddd has been disabled; it worked by accident
    only and was undocumented.
  BUG FIXES:
  * Many more C-level allocations (mainly by malloc and strdup) are
    checked for success with suitable alternative actions.
  * Bug fix for replayPlot(); this was turning off graphics engine
    display list recording if a recorded plot was replayed in the
    same session.  The impact of the bug became visible if resize the
    device after replay OR if attempted another savePlot() after
    replay (empty display list means empty screen on resize or empty
    saved plot).
  * R CMD check etc now warn when a package exports non-existing S4
    classes or methods, also in case of no "methods" presence.
    (Reported by Alex Bertram; reproducible example and patch by
    Sebastian Meyer in PR#16662.)
  * boxplot() now also accepts calls for labels such as ylab, the
    same as plot().  (Reported by Marius Hofert.)
  * The help page for xtabs() now correctly states that addNA is
    setting na.action = na.pass among others.  (Reported as PR#17770
    by Thomas Soeiro.)
  * The R CMD check &lt;pkg&gt; gives a longer and more comprehensible
    message when DESCRIPTION misses dependencies, e.g., in Imports:.
    (Thanks to the contributors of PR#17179.)
  * update.default() now calls the generic update() on the formula to
    work correctly for models with extended formulas.  (As reported
    and suggested by Neal Fultz in PR#17865.)
  * The horizontal position of leaves in a dendrogram is now correct
    also with center = FALSE.  (PR#14938, patch from Sebastian
    Meyer.)
  * all.equal.POSIXt() no longer warns about and subsequently ignores
    inconsistent "tzone" attributes, but describes the difference in
    its return value (PR#17277).  This check can be disabled _via_
    the new argument check.tzone = FALSE as suggested by Sebastian
    Meyer.
  * as.POSIXct() now populates the "tzone" attribute from its tz
    argument when x is a logical vector consisting entirely of NA
    values.
  * x[[2^31]] &lt;- v now works.  (Thanks to the report and patch by
    Suharto Anggono in PR#17330.)
  * In log-scale graphics, axis() ticks and label positions are now
    computed more carefully and symmetrically in their range,
    typically providing _more_ ticks, fulfilling wishes in PR#17936.
    The change really corresponds to an improved axisTicks() (package
    grDevices), potentially influencing grid and lattice, for
    example.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now correct to at
    least five digits where it was catastrophically wrong,
    previously.
  * sum(df) and similar "Summary"- and "Math"-group member functions
    now work for data frames df with logical columns, notably also of
    zero rows.  (Reported to R-devel by Martin "b706".)
  * unsplit() had trouble with tibbles due to unsound use of rep(NA,
    len)-indexing, which should use NA_integer_ (Reported to R-devel
    by Mario Annau.)
  * pnorm(x, log.p = TRUE) underflows to -Inf slightly later.
  * show(&lt;hidden S4 generic&gt;) prints better and without quotes for
    non-hidden S4 generics.
  * read.table() and relatives treated an "NA" column name as missing
    when check.names = FALSE PR#18007.
  * Parsing strings containing UTF-16 surrogate pairs such as
    "\uD834\uDD1E" works better on some (uncommon) platforms.
    sprintf("%X", utf8ToInt("\uD834\uDD1E")) should now give "1D11E"
    on all platforms.
  * identical(x,y) is no longer true for differing DOTSXP objects,
    fixing PR#18032.
  * str() now works correctly for DOTSXP and related exotics, even
    when these are doomed.
    Additionally, it no longer fails for lists with a class and
    "irregular" method definitions such that e.g. lapply(*) will
    necessarily fail, as currently for different igraph objects.
  * Too long lines in environment files (e.g. Renviron) no longer
    crash R. This limit has been increased to 100,000 bytes.
    (PR#18001.)
  * There is a further workaround for FreeType giving incorrect
    italic font faces with cairo-based graphics devices on macOS.
  * add_datalist(*, force = TRUE) (from package tools) now actually
    updates an existing data/datalist file for new content.  (Thanks
    to a report and patch by Sebastian Meyer in PR#18048.)
  * cut.Date() and cut.POSIXt() could produce an empty last interval
    for breaks = "months" or breaks = "years".  (Reported as PR#18053
    by Christopher Carbone.)
  * Detection of the encoding of 'regular' macOS locales such as
    en_US (which is UTF-8) had been broken by a macOS change:
    fortunately these are now rarely used with en_US.UTF-8 being
    preferred.
  * sub() and gsub(pattern, repl, x, *) now keep attributes of x such
    as names() also when pattern is NA (PR#18079).
  * Time differences ("difftime" objects) get a replacement and a
    rep() method to keep "units" consistent.  (Thanks to a report and
    patch by Nicolas Bennett in PR#18066.)
  * The \RdOpts macro, setting defaults for \Sexpr options in an Rd
    file, had been ineffective since R 2.12.0: it now works again.
    (Thanks to a report and patch by Sebastian Meyer in PR#18073.)
  * mclapply and pvec no longer accidentally terminate parallel
    processes started before by mcparallel or related calls in
    package parallel (PR#18078).
  * grep and other functions for evaluating (extended) regular
    expressions handle in Unicode also strings not explicitly flagged
    UTF-8, but flagged native when running in UTF-8 locale.
  * Fixed a crash in fifo implementation on Windows (PR#18031).
  * Binary mode in fifo on Windows is now properly detected from
    argument open (PR#15600, PR#18031).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1622808000">- The line %{__install} -m 755 -d %{_infodir}
  no longer works in TW or Factory.
  But without that line it works everywhere. So this instruction
  was commented out of the spec file.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1628596800">- CHANGES IN R 4.1.1:
  NEW FEATURES:
  * require(pkg, quietly = TRUE) is quieter and in particular does
    not warn if the package is not found.
  DEPRECATED AND DEFUNCT:
  * Use of ftp:// URIs should be regarded as deprecated, with
    on-going support confined to method = "libcurl" and not routinely
    tested.  (Nowadays no major browser supports them.)
  * The non-default method = "internal" is deprecated for http:// and
    ftp:// URIs for both download.file and url.
  * On Windows, method = "wininet" is deprecated for http://,
    https:// and ftp:// URIs for both download.file and url.  (A
    warning is only given for ftp://.)
    For ftp:// URIs the default method is now "libcurl" if available
    (which it is on CRAN builds).
    method = "wininet" remains the default for http:// and https://
    URIs but if libcurl is available, using method = "libcurl" is
    preferred.
  INSTALLATION:
  * make check now works also without a LaTeX installation.  (Thanks
    to Sebastian Meyer's PR#18103.)
  BUG FIXES:
  * make check-devel works again in an R build configured with
  - -without-recommended-packages.
  * qnbinom(p, size, mu) for large size/mu is correct now in a range
    of cases (PR#18095); similarly for the (size, prob)
    parametrization of the negative binomial.  Also qpois() and
    qbinom() are better and or faster for extreme cases.  The
    underlying C code has been modularized and is common to all four
    cases of discrete distributions.
  * gap.axis is now part of the axis() arguments which are passed
    from bxp(), and hence boxplot().  (Thanks to Martin Smith's
    report and suggestions in PR#18109.)
  * .First and .Last can again be set from the site profile.
  * seq.int(from, to, *) and seq.default(..) now work better in large
    range cases where from-to is infinite where the two boundaries
    are finite.
  * all.equal(x,y) now returns TRUE correctly also when several
    entries of abs(x) and abs(y) are close to .Machine$double.xmax,
    the largest finite numeric.
  * model.frame() now clears the object bit when removing the class
    attribute of a value via na.action (PR#18100).
  * charClass() now works with multi-character strings on Windows
    (PR#18104, fixed by Bill Dunlap).
  * encodeString() on Solaris now works again in Latin-1 encoding on
    characters represented differently in UTF-8.  Support for
    surrogate pairs on Solaris has been improved.
  * file.show() on Windows now works with non-ASCII path names
    representable in the current native encoding (PR#18132).
  * Embedded R on Windows can now find R home directory via the
    registry even when installed only for the current user
    (PR#18135).
  * pretty(x) with finite x now returns finite values also in the
    case where the extreme x values are close in size to the maximal
    representable number .Machine$double.xmax.
    Also, it's been tweaked for very small ranges and when a boundary
    is close (or equal) to zero; e.g., pretty(c(0,1e-317)) no longer
    has negative numbers, currently still warning about a very small
    range, and pretty(2^-(1024 - 2^-1/(c(24,10)))) is more accurate.
  * The error message for not finding vignette files when weaving has
    correct file sizes now. (Thanks to Sebastian Meyer's PR#18154.)
  * dnbinom(20, &lt;large&gt;, 1) now correctly gives 0, and similar cases
    are more accurate with underflow precaution.  (Reported by Francisco Vera Alcivar in PR#18072.)</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635163200">- repaired https://bugzilla.suse.com/show_bug.cgi?id=1191380
  (rpmacros now go to rpmmacrodir)
- minor clean-ups in spec file</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635768000">- CHANGES IN R 4.1.2:
  C-LEVEL FACILITIES:
  * The workaround in headers R.h and Rmath.h (using namespace std;)
    for the Oracle Developer Studio compiler is no longer needed now
    C++11 is required so has been removed.  A couple more usages of
    log() (which should have been std::log()) with an int argument
    are reported on Solaris.
  * The undocumented limit of 4095 bytes on messages from the
    S-compatibility macros PROBLEM and MESSAGE is now documented and
    longer messages will be silently truncated rather than
    potentially causing segfaults.
  * If the R_NO_SEGV_HANDLER environment variable is non-empty, the
    signal handler for SEGV/ILL/BUS signals (which offers recovery
    user interface) is not set. This allows more reliable debugging
    of crashes that involve the console.
  DEPRECATED AND DEFUNCT:
  * The legacy S-compatibility macros PROBLEM, MESSAGE, ERROR, WARN,
    WARNING, RECOVER, ... are deprecated and will be hidden in R
    4.2.0. R's native interface of Rf_error and Rf_warning has long
    been preferred.
  BUG FIXES:
  * .mapply(F, dots, .) no longer segfaults when dots is not a list
    and uses match.fun(F) as always documented; reported by Andrew
    Simmons in PR#18164.
  * hist(&lt;Date&gt;, ...) and hist(&lt;POSIXt&gt;, ...)  no longer pass
    arguments for rect() (such as col and density) to axis().
    (Thanks to Sebastian Meyer's PR#18171.)
  * \Sexpr{ch} now preserves Encoding(ch). (Thanks to report and
    patch by Jeroen Ooms in PR#18152.)
  * Setting the RNG to "Marsaglia-Multicarry" e.g., by RNGkind(), now
    warns in more places, thanks to Andr'e Gillibert's report and
    patch in PR#18168.
  * gray(numeric(), alpha=1/2) no longer segfaults, fixing PR#18183,
    reported by Till Krenz.
  * Fixed dnbinom(x, size=&lt;very_small&gt;, .., log=TRUE) regression,
    reported by Martin Morgan.
  * as.Date.POSIXlt(x) now keeps names(x), thanks to Davis Vaughan's
    report and patch in PR#18188.
  * model.response() now strips an "AsIs" class typically, thanks to
    Duncan Murdoch's report and other discussants in PR#18190.
  * try() is considerably faster in case of an error and long call,
    as e.g., from some do.call().  Thanks to Alexander Kaever's
    suggestion posted to R-devel.
  * qqline(y = &lt;object&gt;) such as y=I(.), now works, see also
    PR#18190.
  * Non-integer mgp par() settings are now handled correctly in
    axis() and mtext(), thanks to Mikael Jagan and Duncan Murdoch's
    report and suggestion in PR#18194.
  * formatC(x) returns length zero character() now, rather than ""
    when x is of length zero, as documented, thanks to Davis
    Vaughan's post to R-devel.
  * removeSource(fn) now retains (other) attributes(fn).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1647000000">- CHANGES IN R 4.1.3:
  NEW FEATURES:
  * The default version of Bioconductor has been changed to 3.14.
    (This is used by setRepositories and the menus in GUIs.)
  UTILITIES:
  * R CMD check --as-cran has a workaround for a bug in versions of
    file up to at least 5.41 which mis-identify DBF files last
    changed in 2022 as executables.
  C-LEVEL FACILITIES:
  * The legacy S-compatibility macros SINGLE_* in R_ext/Constants.h
    (included by R.h) are deprecated and will be removed in R 4.2.0.
  BUG FIXES:
  * Initialization of self-starting nls() models with initialization
    functions following the pre-R-4.1.0 API (without the ...
    argument) works again for now, with a deprecation warning.
  * Fixed quoting of ~autodetect~ in Java setting defaults to avoid
    inadvertent user lookup due to leading ~, reported in PR#18231 by
    Harold Gutch.
  * substr(., start, stop) &lt;- v now treats _negative_ stop values
    correctly.  Reported with a patch in PR#18228 by Brodie Gaslam.
  * Subscripting an array x without dimnames by a
    length(dim(x))-column character matrix gave "random" non-sense,
    now an error; reported in PR#18244 by Mikael Jagan.
  * ...names() now matches names(list(...)) closely, fixing PR#18247.
  * all.equal(*, scale = s) now works as intended when length(s) &gt; 1,
    partly thanks to Michael Chirico's PR#18272.
  * print(x) for long vectors x now also works for named atomic
    vectors or lists and prints the correct number when reaching the
    getOption("max.print") limit; partly thanks to a report and
    proposal by Hugh Parsonage to the R-devel list.
  * all.equal(&lt;selfStart&gt;, *) no longer signals a deprecation
    warning.
  * reformulate(*, response=r) gives a helpful error message now when
    length(r) &gt; 1, thanks to Bill Dunlap's PR#18281.
  * Modifying globalCallingHandlers inside withCallingHandlers() now
    works or fails correctly, thanks to Henrik Bengtsson's PR#18257.
  * hist(&lt;Date&gt;, breaks = "days") and hist(&lt;POSIXt&gt;, breaks = "secs")
    no longer fail for inputs of length 1.
  * qbeta(.001, .9, .009) and similar cases now converge correctly
    thanks to Ben Bolker's report in PR#17746.
  * window(x, start, end) no longer wrongly signals "'start' cannot
    be after 'end'", fixing PR#17527 and PR#18291.
  * data() now checks that its (rarely used) list argument is a
    character vector - a couple of packages passed other types and
    gave incorrect results.
  * which() now checks its arr.ind argument is TRUE rather coercing
    to logical and taking the first element - which gave incorrect
    results in package code.
  * model.weights() and model.offset() more carefully extract their
    model components, thanks to Ben Bolker and Tim Taylor's R-devel
    post.
  * list.files(recursive = TRUE) now shows all broken symlinks
    (previously, some of them may have been omitted, PR#18296).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1650628800">- CHANGES IN R 4.2.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * The formula method of aggregate() now matches the generic in
    naming its first argument x (resolving PR#18299 by Thomas
    Soeiro).
    This means that calling aggregate() with a formula as a named
    first argument requires name formula in earlier versions of R and
    name x now, so portable code should not name the argument (code
    in many packages did).
  * Calling &amp;&amp; or || with either argument of length greater than one
    now gives a warning (which it is intended will become an error).
  * Calling if() or while() with a condition of length greater than
    one gives an error rather than a warning.  Consequently,
    environment variable _R_CHECK_LENGTH_1_CONDITION_ no longer has
    any effect.
  * Windows users should consult the WINDOWS section below for some
    profound changes including
  * Support for 32-bit builds has been dropped.
  * UTF-8 locales are used where available.
  * The default locations for the R installation and personal
    library folder have been changed.
    Thanks to Tomas Kalibera for months of work on the Windows port
    for this release.
  NEW FEATURES:
  * matrix(x, n, m) now warns in more cases where length(x) differs
    from n * m, as suggested by Abby Spurdle and Wolfgang Huber in
    Feb 2021 on the R-devel mailing list.
    This warning can be turned into an error by setting environment
    variable _R_CHECK_MATRIX_DATA_ to TRUE: R CMD check --as-cran
    does so unless it is already set.
  * Function file_test() in package utils gains tests for symlinks,
    readability and writability.
  * capabilities("libxml") is now false.
    The description of capabilities("http/ftp") now reflects that it
    refers to the default method, no longer the internal one.
  * simplify2array() gains an except argument for controlling the
    exceptions used by sapply().
  * Environment variables R_LIBS_USER and R_LIBS_SITE are both now
    set to the R system default if unset or empty, and can be set to
    NULL to indicate an empty list of user or site library
    directories.
  * The warning for axis()(-like) calls in cases of relatively small
    ranges (typically in log-scale situations) is slightly improved
    _and_ suppressed from explicit calls to .axisPars() as has always
    been the intention.
  * The contrasts setter function `contrasts&lt;-` gains an explicit
    default how.many = NULL rather than just using missing(how.many).
  * grid.pretty() gains a new optional argument n = 5.
  * There is a new function .pretty() with option bounds as a
    technical-utility version of pretty().  It and pretty() gain a
    new argument f.min with a better than back-compatible default.
  * Function grDevices::axisTicks() and related functions such as
    graphics::axis() work better, notably for the log scale; partly
    because of the pretty() improvements, but also because care is
    taken e.g., when ylim is finite but diff(ylim) is infinite.
  * nclass.FD() gains a digits option.
  * The R Mathlib internal C function bd0() (called indirectly from a
    dozen probability density and distribution functions such as
    dpois(), dbinom(), dgamma(), pgamma() _etc_) has been
    complemented by a more sophisticated and (mostly) more accurate C
    function ebd0(), currently called only by internal dpois_raw()
    improving accuracy for R level dpois() and potentially others
    calling it such as dnbinom(), dgamma() or pgamma().  (Thanks to
    Morten Welinder's PR#15628.)
  * write.ftable() gains sep = " " argument as suggested by Thomas
    Soeiro.
  * The names of the locale categories supported by R's
    Sys.getlocale() and Sys.setlocale() are now provided by variable
    .LC.categories in the base namespace.
  * The Date and POSIXt methods for hist() and the histogram method
    for plot() now also use the new default col = "lightgray" in
    consistency with the corresponding change to hist()'s default for
    R 4.0.0.
  * hist.default() gains new fuzz argument, and the histogram plot
    method no longer uses fractional axis ticks when displaying
    counts ("Frequency").
  * mapply() and hence Map() now also obey the "max-or-0-if-any"
    recycling rule, such that, e.g., Map(`+`, 1:3, 1[0]) is valid
    now.
  * as.character(&lt;obj&gt;) for "hexmode" or "octmode" objects now
    fulfils the important basic rule as.character(x)[j] ===
    as.character(x[j]).
  * The set utility functions, notably intersect() have been tweaked
    to be more consistent and symmetric in their two set arguments,
    also preserving a common mode.
  * substr(ch, start,end) &lt;- new now e.g., preserves names(ch); ditto
    for substring(), thanks to a patch from Brodie Gaslam.
  * plot(&lt;lm&gt;) gains a extend.ylim.f argument, in partial response to
    PR#15285; further PR#17784 is fixed thanks to several
    contributors and a patch by Elin Waring.  The Cook's dist
    contours get customizable via cook.col and cook.lty with a
    different default color and their legend is nicer by default and
    customizable via cook.legendChanges.
  * Attempting to subset an object that is not subsettable now
    signals an error of class notSubsettableError. The
    non-subsettable object is contained in the object field of the
    error condition.
  * Subscript-out-of-bounds errors are now signaled as errors of
    class subscriptOutOfBoundsError.
  * Stack-overflow errors are now signaled as errors inheriting from
    class stackOverflowError. See ?stackOverflowError for more
    details.
  * New partly experimental Sys.setLanguage() utility, solving the
    main problem of PR#18055.
  * gettext() and gettextf() get a new option trim = TRUE which when
    set to false allows translations for strings such as "Execution
    halted\n" typical for C code.
  * An experimental implementation of hash tables is now available.
    See ?hashtab for more details.
  * identical() gains a extptr.as.ref argument for requesting that
    external pointer objects be compared as reference objects.
  * reorder() gets an argument decreasing which it passes to sort()
    for level creation; based on the wish and patch by Thomas Soeiro
    in PR#18243.
  * as.vector() gains a data.frame method which returns a simple
    named list, also clearing a long standing 'FIXME' to enable
    as.vector(&lt;data.frame&gt;, mode="list").  This breaks code relying
    on as.vector(&lt;data.frame&gt;) to return the unchanged data frame.
  * legend() is now vectorized for arguments cex, x.intersp, and
    text.width.  The latter can now also be specified as a vector
    (one element for each column of the legend) or as NA for
    computing a proper column wise maximum value of strwidth(legend).
    The argument y.intersp can be specified as a vector with one
    entry for each row of the legend.
    legend() also gains new arguments title.cex and title.font.
    Thanks to Swetlana Herbrandt.
  * Deparsing no longer remaps attribute names dim, dimnames, levels,
    names and tsp to historical S-compatible names (which structure()
    maps back).
  * sample() and sample.int() have additional sanity checks on their
    size and n arguments.
    all.equal.numeric() gains a sanity check on its tolerance
    argument - calling all.equal(a, b, c) for three numeric vectors
    is a surprisingly common error.
    mean(na.rm =), rank(na.last =), barplot(legend.text =),
    boxplot(), contour(drawlabels =), polygon(border =) and
    methods::is(class2 =) have more robust sanity checks on their
    arguments.
    R CMD Rd2pdf (used by R CMD check) has a more robust sanity check
    on the format of \alias{} commands.
  * psigamma(x, deriv) for negative x now also works for deriv = 4
    and 5; their underlying C level dpsifn() is documented in
    'Writing R Extensions'.
  * The HTML help system now uses HTML5 (wish of PR#18149).
  * ks.test() now provides exact p-values also with ties and MC
    p-values in the two-sample (Smirnov) case.  By Torsten Hothorn.
  * ks.test() gains a formula interface, with y ~ 1 for the
    one-sample (Kolmogorov) test and y ~ group for the two-sample
    (Smirnov) test.  Contributed by Torsten Hothorn.
  * The return value from ks.test() now has class c("ks.test",
    "htest") - packages using try() need to take care to use
    inherits() and not == on the class.
  * New functions psmirnov(), qsmirnov() and rsmirnov() in package
    stats implementing the asymptotic and exact distributions of the
    two-sample Smirnov statistic.
  * iconv() now allows sub = "c99" to use C99-style escapes for UTF-8
    inputs which cannot be converted to encoding to.
  * In a forward pipe |&gt; expression it is now possible to use a named
    argument with the placeholder _ in the rhs call to specify where
    the lhs is to be inserted.  The placeholder can only appear once
    on the rhs.
  * The included LAPACK sources have been updated to version 3.10.0,
    except for the four Fortran 77 routines which 3.10.0 has
    re-implemented in Fortran 90 (where the older versions have been
    retained as the R build process does not support Fortran 90).
  * path.expand() and most other uses of tilde expansion now warn if
    a path would be too long if expanded.  (An exception is
    file.exists(), which silently returns false.)
  * trunc(&lt;Date&gt;, *) now supports units = "months" or "years" for
    consistency with the POSIXt method, thanks to Dirk Eddelbuettel's
    proposal in PR#18099.
  * list2DF() now checks that its arguments are of the same length,
    rather than use recycling.
  * The HTML help system has several new features: LaTeX-like math
    can be typeset using either KaTeX or MathJax, usage and example
    code is highlighted using Prism, and for dynamic help the output
    of examples and demos can be shown within the browser if the
    knitr package is installed. These features can be disabled by
    setting the environment variable _R_HELP_ENABLE_ENHANCED_HTML_ to
    a false value.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 15
    and so packages that provide graphics devices should be
    reinstalled.
  * The grid package now allows the user to specify a "vector" of
    pattern fills.  The fill argument to gpar() accepts a list of
    gradients and/or patterns and the functions linearGradient(),
    radialGradient(), and pattern() have a new group argument.
    Points grobs (data symbols) can now also have a pattern fill.
    The grobCoords() function now returns a more informative and
    complex result.
  * The grid package has new functions for drawing isolated groups:
    grid.group(), grid.define(), and grid.use().  These functions add
    compositing operators and affine transformations to R's graphics
    capabilities.
    The grid package also has new functions for stroking and filling
    paths: grid.stroke(), grid.fill(), and grid.fillStroke().
    A new function as.path() allows the user to specify the fill rule
    for a path that is to be used for clipping, stroking, or filling;
    available options are "winding" and "evenodd".  A new function
    as.mask() allows the user to specify the type of a mask;
    available options are "alpha" and "luminance".
    These new features are only supported so far (at most) on the
    Cairo-based graphics devices and on the pdf() device.
  * dev.capabilities() reports on device support for the new
    features.
  * par() now warns about unnamed non-character arguments to prevent
    misuse such as {usr &lt;- par("usr"); par(usr)}.
  INSTALLATION:
  * Facilities for accessing ftp:// sites are no longer tested
    (except _pro tem_ for curlGetHeaders()) as modern browsers have
    removed support.
  * R can now be built with DEFS = -DSTRICT_R_HEADERS .
  PACKAGE INSTALLATION:
  * R CMD INSTALL no longer tangles vignettes. This completes an R
    CMD build change in R 3.0.0 and affects packages built before R
    3.0.2. Such packages should be re-made with R CMD build to have
    the tangled R code of vignettes shipped with the tarball.
  * USE_FC_LEN_T will become the default: this uses the correct
    prototypes for Fortran BLAS/LAPACK routines called from C/C++,
    and requires adjustment of most such calls - see 'Writing R
    Extensions' SS6.6.2.  (This has been supported since R 3.6.2.)
  * Package installation speed for packages installed with
    keep.source has been improved. This resolve the issue reported by
    Ofek Shilon in PR#18236.
  UTILITIES:
  * R CMD check can optionally report files/directories left behind
    in home, /tmp (even though TMPDIR is set) and other directories.
    See the "R Internals" manual for details.
  * R CMD check now reports byte-compilation errors during
    installation.  These are not usually fatal but may result in
    parts of the package not being byte-compiled.
  * _R_CHECK_DEPENDS_ONLY_ can be applied selectively to examples,
    tests and/or vignettes in R CMD check: see the "R Internals"
    manual.
  * _R_CHECK_SRC_MINUS_W_IMPLICIT_ now defaults to true: recent
    versions of Apple clang on macOS have made implicit function
    declarations in C into a compilation error.
  * R CMD check --as-cran makes use of the environment variable
    AUTORECONF.  See the "R Internals" manual SS8 for further details.
  * R CMD check --use-valgrind also uses valgrind when re-building
    vignettes as some non-Sweave vignettes unhelpfully comment out
    all their code when R CMD check runs vignettes.
  * Errors in re-building vignettes (unless there are LaTeX errors)
    are reported by R CMD check as ERROR rather than WARNING when
    running vignettes has been skipped (as it frequently is in CRAN
    checks and by --as-cran).
  * R CMD Rd2pdf gains a --quiet option that is used by R CMD build
    when building the PDF package manual.
  * R CMD Rd2pdf now always runs LaTeX in batch mode, consistent with
    Texinfo &gt;= 6.7. The --batch option is ignored.
  * R CMD build and R CMD check now include the Rd file name and line
    numbers in the error message of an \Sexpr evaluation failure.
  * For packages using the \doi Rd macro (now an install-time \Sexpr)
    but no other dynamic Rd content, R CMD build now produces a
    smaller tarball and is considerably faster - skipping temporary
    package installation.
  C-LEVEL FACILITIES:
  * The non-API header R_ext/R-ftp-http.h is no longer provided, as
    the entry points it covered are now all defunct.
  * A number of non-API declarations and macro definitions have been
    moved from the installed header Rinternals.h to the internal
    header Defn.h. Packages that only use entry points and
    definitions documented to be part of the API as specified in
    'Writing R Extensions' SS6 should not be affected.
  * The macro USE_RINTERNALS no longer has any effect when compiling
    package code.  Packages which also use R_NO_REMAP will need to
    ensure that the remapped names are used for calls to API
    functions that were formerly also made available as macros.
  * The deprecated legacy S-compatibility macros PROBLEM, MESSAGE,
    ERROR, WARN, WARNING, RECOVER, ... are no longer defined in
    R_exts/RS.h (included by R.h).  Replace these by calls to
    Rf_error and Rf_warning (defined in header R_ext/Error.h included
    by R.h).
    Header R_ext/RS.h no longer includes R_ext/Error.h.
  * Header R_ext/Constants.h (included by R.h) when included from C++
    now includes the C++ header cfloat rather than the C header
    float.h (now possible as C++11 is required).
  * The legacy S-compatibility macros DOUBLE_* in R_ext/Constants.h
    (included by R.h) are deprecated.
  * The deprecated S-compatibility macros SINGLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * R_Calloc, R_Free and R_Realloc are preferred to their unprefixed
    forms and error messages now use the prefix. These forms were
    introduced in R 3.4.0 and are available even when
    STRICT_R_HEADERS is defined.
  * rmultinom has been documented in 'Writing R Extensions' SS6 so is
    now part of the R API.
  * Similarly, Rtanpi, called from R level tanpi() is now part of the
    R API.
  * The long-deprecated, undocumented and non-API entry point call_R
    is no longer declared in R_ext/RS.h (included by R.h).
  * The header S.h which has been unsupported since Jan 2016 has been
    removed.  Use R.h instead.
  DEPRECATED AND DEFUNCT:
  * The (non-default and deprecated) method = "internal" for
    download.file() and url() no longer supports http:// nor ftp://
    URIs.  (It is used only for file:// URIs.)
    On Windows, download.file(method = "wininet") no longer supports
    ftp:// URIs.  (It is no longer the default method, which is
    "libcurl" and does.)
    On Windows, the deprecated method = "wininet" now gives a warning
    for http:// and https:// URIs for both download.file() and url().
    (It is no longer the default method.)
  * On Windows, the command-line option --max-mem-size and
    environment variable R_MAX_MEM_SIZE are defunct.  The memory
    allocation limit was important for 32-bit builds, but these are
    no longer supported.
  * default.stringsAsFactors() is now formally deprecated, where that
    was only mentioned on its regular help page, previously.  So it
    now gives a warning if called.
  * unix.time() is defunct now; it had been deprecated since R 3.4.0.
  BUG FIXES:
  * Setting digits = 0 in format(), print.default() (and hence
    typically print()) or options() is again invalid.  Its behaviour
    was platform-dependent, and it is unclear what "zero significant
    digits" should mean (PR#18098).
  * Messages from C code in the cairo section of package grDevices
    are now also offered for translation, thanks to Michael Chirico's
    PR#18123.
  * mean(x) with finite x now is finite also without "long.double"
    capability.
  * R CMD Rd2pdf no longer leaves an empty build directory behind
    when it aborts due to an already existing output file.  (Thanks
    to Sebastian Meyer's PR#18141.)
  * density(x, weights = w, na.rm = TRUE) when anyNA(x) is true, now
    removes weights "in parallel" to x, fixing PR#18151, reported by
    Matthias Gondan.  Additionally, it gets a subdensity option.
  * Conversion of \Sexpr[]{&lt;expR&gt;} to LaTeX or HTML no longer
    produces long blocks of empty lines when &lt;expR&gt; itself contains
    several lines all producing empty output.  Thanks to a report and
    patch by Ivan Krylov posted to R-devel.
  * R CMD build no longer fails if a package vignette uses child
    documents and inst/doc exists.  (Thanks to Sebastian Meyer's
    PR#18156.)
  * When an R documentation ('help' source) file man/foo.Rd in a
    package has \donttest{..} examples with a syntax error, it is now
    signalled as ERROR and with correct line numbers relating to the
  * -Ex.R file, thanks to Duncan Murdoch and Sebastian Meyer's
    reports and patch proposals in PR#17501.
  * Improved determination of the correct translation domain in
    non-base packages, addressing the combination of PR#18092 and
    PR#17998 (#c6) with reports and _augmented_ patch #2904 by
    Suharto Anggono.
    Note that "R-base" is no longer the default domain e.g., for
    top-level calls to gettext(); rather translation needs explicit
    domain = * specification in such cases.
  * identical(attrib.as.set=FALSE) now works correctly with data
    frames with default row names (Thanks to Charlie Gao's PR#18179).
  * txtProgressBar() now enforces a non-zero width for argument char,
    without which no progress can be visible.
  * dimnames(table(d)) is more consistent in the case where d is a
    list with a single component, thanks to Thomas Soeiro's report to
    R-devel.
    Further, table(d1, d2) now gives an error when d1 and d2 are data
    frames as suggested by Thomas in PR#18224.
  * Fix for drawing semi-transparent lines and fills on the native
    Windows graphics device (PR#18219 and PR#16694).  Thanks to Nick
    Ray for helpful diagnosis on Bugzilla.
  * The deparser now wraps sub-expressions such as if(A) ..  with
    parentheses when needed; thanks to Duncan Murdoch's PR#18232 and
    Lionel Henry's patches there.
  * remove.packages() no longer tries to uninstall Priority: base
    packages, thanks to a report and suggestions by Colin Fay in
    PR#18227.
  * win.metafile() now has xpinch and ypinch arguments so that the
    user can override Windows' (potentially wrong) guess at device
    dimensions.
  * x[i] and x[[i]] for non-integer i should now behave in all cases
    as always documented: the index used is equivalent to
    as.integer(i) unless that would overflow where trunc(i) is used
    instead; thanks to Suharto Anggono's report and patch proposals
    in PR#17977.
  * asOneSidedFormula() now associates the resulting formula with the
    global environment rather than the evaluation environment created
    for the call.
  * &lt;bibentry&gt;$name now matches the field name case-insensitively,
    consistent with bibentry() creation and the replacement method.
  * cbind() failed to detect some length mismatches with a mixture of
    time-series and non-time-series inputs.
  * The default LaTeX style file Sweave.sty used by the RweaveLatex
    driver no longer loads the obsolete ae package; thanks to a
    report by Thomas Soeiro in PR#18271.  Furthermore, it now skips
    \usepackage[T1]{fontenc} for engines other than pdfTeX (if
    detected) or if the new [nofontenc] option is used.
  * smooth.spline() now stores its logical cv argument more safely,
    fixing a rare bug when printing, and also stores n.
  * smooth.spline(x,y,*) now computes the cv.crit statistic
    correctly, also when is.unsorted(x), fixing PR#18294.
  * The data.frame method of rbind() now warns when binding
    not-wholly-recycling vectors, by analogy to the default method
    (for matrices).
  * setAs() finds the correct class for name to when multiple
    packages define a class with that name. Thanks to Gabor Csardi
    for the report.
  * Fix for detaching a package when two classes of the same name are
    present in method signatures for the same generic. Thanks to
    Gabor Csardi for the report.
  * match.arg("", c("", "a", "B")) gives a better error message, in
    part from PR#17959, thanks to Elin Waring.
  * R CMD Sweave --clean no longer removes pre-existing files or
    subdirectories (PR#18242).
  * The quartz() device no longer splits polylines into subpaths.
    That has caused narrowly-spaced lines with many points to always
    look solid even when dashed line type was used due to dash phase
    restarts.
  * Deparsing constructs such as quote(1 + `!`(2) + 3) works again as
    before R 3.5.0, thanks to the report and patch in PR#18284 by
    Suharto Anggono.
  * as.list(f) for a factor f now keeps names(f), fixing PR#18309.
  * qbeta(.001, .9, .009) and analogous qf() calls now return a
    correct value instead of NaN or wrongly 1, all with a warning;
    thanks to the report by Ludger Goeminne in PR#18302.
  * plot.lm() failed to produce the plot of residuals vs.  factor
    levels (i.e., which=5 when leverages are constant) for models
    with character predictors (PR#17840).
  * interaction.plot(..., xtick = TRUE) misplaced the x-axis line
    (PR#18305).
  * Not strictly fixing a bug, format()ing and print()ing of
    non-finite Date and POSIXt values NaN and +/-Inf no longer show
    as NA but the respective string, e.g., Inf, for consistency with
    numeric vector's behaviour, fulfilling the wish of PR#18308.
  * R CMD check no longer runs test scripts generated from
    corresponding .Rin files twice and now signals an ERROR if
    processing an .Rin script fails.
  * tools::Rd2txt() used for plain-text help pages now renders \hrefs
    (if tools::Rd2txt_options(showURLs = TRUE)) and \urls with
    percent-encoding and standards-compliant delimiting style (angle
    brackets and no URL: prefix).  \email is now rendered with a
    mailto: prefix.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1655985600">- CHANGES IN R 4.2.1:
  NEW FEATURES:
  * New function utils::findCRANmirror() to find out if a CRAN mirror
    has been selected, otherwise fallback to the main site.  This
    behaves in the same way as tools::CRAN_package_db() and is
    intended for packages wishing to access CRAN for purposes other
    than installing packages.
    The need for this was shown by a day when the main CRAN website
    was offline and a dozen or so packages which had its URL
    hardcoded failed their checks.
  INSTALLATION on a UNIX-ALIKE:
  * The libraries searched for by --with-blas (without a value) now
    include BLIS (after OpenBLAS but before ATLAS).  And on macOS,
    the Accelerate framework (after ATLAS).  (This is patterned after
    the AX_BLAS macro from the Autoconf Archive.)
  * The included LAPACK sources have been updated to 3.10.1.
  UTILITIES:
  * The (full path to) the command tidy to be used for HTML
    validation can be set by environment variable R_TIDYCMD.
  * Setting environment variable _R_CHECK_RD_VALIDATE_RD2HTML_ to a
    false value will override R CMD check --as-cran and turn off HTML
    validation.  This provides a way to circumvent a problematic
    tidy.
    The 2006 version that ships with macOS is always skipped.
  C-LEVEL FACILITIES:
  * The undocumented legacy declarations of Sint, Sfloat, SINT_MAX
    and SINT_MIN in header R.h are deprecated.
  BUG FIXES:
  * fisher.test(d) no longer segfaults for "large" d; fixing PR#18336
    by preventing/detecting an integer overflow reliably.
  * tar(., files=*) now produces correctly the warning about invalid
    uid or gid of files, fixing PR#18344, reported by Martin Morgan.
  * tk_choose.files() with multi = FALSE misbehaved on paths
    containing spaces (PR#18334) (regression introduced in R 4.0.0).
  * sort(x, partial = ind, *) now works correctly notably for the
    non-default na.last = FALSE or TRUE, fixing PR#18335 reported by
    James Edwards.
  * Environment variable _R_CHECK_XREFS_REPOSITORIES_ is only used
    for checking .Rd cross-references in R CMD check (as documented)
    and not for other uses looking for a CRAN mirror.
  * The search for a CRAN mirror when checking packages now uses
    getOption("repos") if that specifies a CRAN mirror, even when it
    does not also specify all three Bioconductor repositories (as was
    previously required).
  * The HTML code generated by tools::Rd2HTML() has been improved to
    pass tidy 5.8.0.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1667217600">- CHANGES IN R 4.2.2:
  NEW FEATURES:
  * tools::Rdiff(useDiff = TRUE) checks for the presence of an
    external diff command and switches to useDiff = FALSE if none is
    found.  This allows R CMD Rdiff to always work.
  * On Windows, environment variable R_LIBCURL_SSL_REVOKE_BEST_EFFORT
    can be used to switch to only 'best-effort' SSL certificate
    revocation checks with the default "libcurl" download method.
    This reduces security, but may be needed for downloads to work
    with MITM proxies (PR#18379).
  * (macOS) The run-time check for libraries from XQuartz for X11 and
    Tcl/Tk no longer uses otool from the Apple Developer Tools
    (PR#18400).
  * The LaTeX style for producing the PDF manuals, Rd.sty, now loads
    the standard amsmath, amsfonts and amssymb packages for greater
    coverage of math commands in the Rd \eqn and \deqn macros.  The
    \mathscr LaTeX command is also provided (via the mathrsfs
    package, if available, or the amsfonts bundle otherwise),
    fulfilling the wish of PR#18398.
  * (Windows) The default format of readClipboard() and
    writeClipboard() has been changed to 13 (CF_UNICODETEXT).
  INSTALLATION on a UNIX-ALIKE:
  * The PDF manuals (if built) can be compacted by the new target
    make compact-pdf (at the top level or in directory doc/manual).
  * There is now configure support for LLVM clang 15 on Linux, which
    defaults to position-independent (PIE) executables whereas
    gfortran does not.
  * Many small changes to ease compilation (and suppress warnings)
    with LLVM clang 15.
  BUG FIXES:
  * Rscript -e would fail if stdin were closed (Reported by Henrik
    Bengtsson.)
  * qt(*, log.p=TRUE) in outer tails no longer produces NaN in its
    final steps, thus fixing PR#18360.
  * tools::Rd2latex() now escapes hashes and ampersands when writing
    URLs, fixing LaTeX errors with such URLs in \tabular.
  * When isGeneric(f, fdef=*) is used with mismatching names, the
    warning is better understandable; reported (with fix) in PR#18370
    by Gabe Becker.
  * poly(x, n) now works again (and is now documented) when x is a
    "Date" or "POSIXct" object, or of another class while fulfilling
    mode(x) == "numeric".  This also enables poly(x, *, raw=TRUE) for
    such variables.  Reported by Michael Chirico to R-devel.
  * write.table(), write.csv() and write.csv2() restore their
    numerical precision (internal equivalent of digits = 15) after an
    interrupt (PR#18384).
  * One can now read also byte FF from a clipboard connection
    (PR#18385).
  * source("") and source(character()) now give more helpful error
    messages.
  * R CMD check --as-cran set _R_CHECK_TIMINGS_ too late to have the
    intended effect.
  * as.POSIXlt(x) now also works with very large dates x, fixing
    PR#18401 reported by Hannes M"uhleisen.
  * Files can now be extracted even from very large zip archives
    (PR#18390, thanks to Martin Jakt).
  * Non-finite objects of class "POSIXlt" are now correctly coerced
    to classes "Date" and "POSIXct"; following up on the extension to
    format() them correctly.
  * Added methods for is.finite(), is.infinite() and is.nan() for
    "POSIXlt" date-time objects.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1678881600">- CHANGES IN R 4.2.3:
  C-LEVEL FACILITIES:
  * The definition of DL_FUNC in R_ext/Rdynload.h has been changed to
    be fully C-compliant.  This means that functions loaded _via_ for
    example R_GetCCallable need to be cast to an appropriate type if
    they have any arguments.
  * .Machine has a new element sizeof.time_t to identify old systems
    with a 32-bit type and hence a limited range of date-times (and
    limited support for dates millions of years from present).
  PACKAGE INSTALLATION:
  * (Windows) The default C++ standard had accidentally been left at
    C++11 when it was changed to C++14 on Unix.
  BUG FIXES:
  * As "POSIXlt" objects may be "partially filled" and their list
    components meant to be recycled, length() now is the length of
    the longest component.
  * as.POSIXlt.Date() could underflow for dates in the far past (more
    than half a million years BCE).
  * as.Date.POSIXlt(x) would return "1970-01-01" instead of NA in R
    4.2.2, e.g., for
    x &lt;- as.POSIXlt(c("2019-01-30","2001-1-1"))
    x$mon &lt;- c(0L, NA); as.Date(x)
  * R CMD check failed to apply enabled _R_CHECK_SUGGESTS_ONLY_ to
    examples and vignettes (regression in R 4.2.0).
  * R CMD check did not re-build vignettes in separate processes by
    default (regression in R 4.2.0).
  * Running examples from HTML documentation now restores previous
    knitr settings and options (PR#18420).
  * Quartz: fonts are now located using Core Graphics API instead of
    deprecated ATS which is no longer supported in the macOS 13 SDK
    (PR#18426).  This also addresses an issue where the currently
    used font in the Quartz device context was not correctly
    retained.
  * (Windows) Math symbols in text drawing functions are again
    rendered correctly (PR#18440).  This fixes a regression in R
    4.2.1 caused by a fix in PR#18382 which uncovered an issue in
    GraphApp due to which the symbol charset was not used with TT
    Symbol font face.
  * (Windows) Installing a package with a src/Makefile.{win,ucrt}
    file includes ~/.R/Makevars.win64 in the search for user
    makevars, as documented in "R Installation and Administration"
    and done for packages with a src/Makevars.{win,ucrt} file.
  * format(&lt;POSIXlt_w/_unbalanced_sec&gt;, "....%OS&lt;n&gt;") with n &gt; 0 no
    longer accidentally uses the unbalanced seconds, thanks to
    Suharto Anggono's report (including patch) in PR#18448.
  * solve.default(a, b) works around issues with some versions of
    LAPACK when a contains NA or NaN values.
  * When UseMethod() cannot dispatch, it no longer segfaults
    producing the error message in case of a long class(), thanks to
    Joris Vankerschaver's report (including patch) in PR#18447.
  * When example(foo, ..) produces graphics on an interactive device
    it needs to open itself, it now leaves devAskNewPage() unchanged
    even when it was FALSE, thus fixing a 14 years old '&lt;FIXME&gt;'.
  * packageDescription() again catches errors from encoding
    conversions. This also fixes broken packageVersion() in C locale
    on systems where iconv does not support transliteration.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1681128000">- add patch to build with libcurl &gt;= 8</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1682078400">- CHANGES IN R 4.3.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Calling &amp;&amp; or || with LHS or (if evaluated) RHS of length greater
    than one is now always an error, with a report of the form
    'length = 4' in coercion to 'logical(1)'
    Environment variable _R_CHECK_LENGTH_1_LOGIC2_ no longer has any
    effect.
  NEW FEATURES:
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.10.1.  (This caused some platform-dependent
    changes to package check output.)  And then to the sources from
    LAPACK version 3.11.0 (with changes only to double complex
    subroutines).
  * The included LAPACK sources have been updated to include the four
    Fortran 90 routines rather than their Fortran 77 predecessors.
    This may give some different signs in SVDs or
    eigendecompositions..  (This completes the transition to LAPACK
    3.10.x begun in R 4.2.0.)
  * The LAPACK sources have been updated to version 3.11.0.  (No new
    subroutines have been added, so this almost entirely bug fixes:
    Those fixes do affect some computations with NaNs, including R's
    NA.)
  * The parser now signals _classed_ errors, notably in case of the
    pipe operator |&gt;.  The error object and message now give line and
    column numbers, mostly as proposed and provided by Duncan Murdoch
    in PR#18328.
  * toeplitz() is now generalized for asymmetric cases, with a
    toeplitz2() variant.
  * xy.coords() and xyz.coords() and consequently, e.g., plot(x,y,
    log = "y") now signal a _classed_ warning about negative values
    of y (where log(.) is NA).  Such a warning can be specifically
    suppressed or caught otherwise.
  * Regular expression functions now check more thoroughly whether
    their inputs are valid strings (in their encoding, e.g. in
    UTF-8).
  * The performance of grep(), sub(), gsub() and strsplit() has been
    improved, particularly with perl = TRUE and fixed = TRUE.  Use of
    useBytes = TRUE for performance reasons should no longer be
    needed and is discouraged: it may lead to incorrect results.
  * apropos() gains an argument dot_internals which is used by the
    completion (help(rcompgen)) engine to also see base internals
    such as .POSIXct().
  * Support in tools::Rdiff() for comparing uncompressed PDF files is
    further reduced - see its help page.
  * qqplot(x, y, ...) gains conf.level and conf.args arguments for
    computing and plotting a confidence band for the treatment
    function transforming the distribution of x into the distribution
    of y (Switzer, 1976, _Biometrika_). Contributed by Torsten
    Hothorn.
  * Performance of package_dependencies() has been improved for cases
    when the number of dependencies is large.
  * Strings newly created by gsub(), sub() and strsplit(), when any
    of the inputs is marked as "bytes", are also marked as "bytes".
    This reduces the risk of creating invalid strings and accidental
    substitution of bytes deemed invalid.
  * Support for readLines(encoding = "bytes") has been added to allow
    processing special text files byte-by-byte, without creating
    invalid strings.
  * iconv(from = "") now takes into account any declared encoding of
    the input elements and uses it in preference to the native
    encoding.  This reduces the risk of accidental creation of
    invalid strings, particularly when different elements of the
    input have different encoding (including "bytes").
  * Package repositories in getOption("repos") are now initialized
    from the repositories file when utils is loaded (if not already
    set, e.g., in .Rprofile).  (From a report and patch proposal by
    Gabriel Becker in PR#18405.)
  * compactPDF() gets a verbose option.
  * type.convert() and hence read.table() get new option tryLogical =
    TRUE with back compatible default.  When set to false, converts
    "F" or "T" columns to character.
  * Added new unit prefixes "R" and "Q" for abbreviating
    (unrealistically large) sizes beyond 10^{27} in standard = "SI",
    thanks to Henrik Bengtsson's PR#18435.
  * as.data.frame()'s default method now also works fine with atomic
    objects inheriting from classes such as "roman", "octmode" and
    "hexmode", such fulfilling the wish of PR#18421, by Benjamin
    Feakins.
  * The as.data.frame.vector() utility now errors for wrong-length
    row.names.  It warned for almost six years, with "Will be an
    error!".
  * sessionInfo() now also contains La_version() and reports codepage
    and timezone when relevant, in both print() and toLatex() methods
    which also get new option tzone for displaying timezone
    information when locale = FALSE.
  * New function R_compiled_by() reports the C and Fortran compilers
    used to build R, if known.
  * predict(&lt;lm&gt;, newdata = *) no longer unnecessarily creates an
    offset of all 0s.
  * solve() for complex inputs now uses argument tol and by default
    checks for 'computational singularity' (as it long has done for
    numeric inputs).
  * predict(&lt;rank-deficient lm&gt;, newdata=*) now obeys a new argument
    rankdeficient, with new default "warnif", warning only if there
    are non-estimable cases in newdata.  Other options include
    rankdeficient = "NA", predicting NA for non-estimable newdata
    cases.  This addresses PR#15072 by Russ Lenth and is based on his
    original proposal and discussions in PR#16158 also by David Firth
    and Elin Waring.  Still somewhat experimental.
  * Rgui console implementation now works better with the NVDA screen
    reader when the full blinking cursor is selected.  The underlying
    improvements in cursor handling may help also other screen
    readers on Windows.
  * The drop-field control in GraphApp can now be left with the TAB
    key and all controls can be navigated in the reverse order using
    the Shift+TAB key, improving accessibility of the Rgui
    configuration editor.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now fully accurate
    (instead of to "only" minimally five digits).
  * demo(error.catching) now also shows off withWarnings() and
    tryCatchWEMs().
  * As an experimental feature the placeholder _ can now also be used
    in the rhs of a forward pipe |&gt; expression as the first argument
    in an extraction call, such as _$coef. More generally, it can be
    used as the head of a chain of extractions, such as _$coef[[2]].
  * Spaces in the environment variable used to choose the R session's
    temporary directory (TMPDIR, TMP and TEMP are tried in turn) are
    now fatal.  (On Windows the 'short path' version of the path is
    tried and used if that does not contain a space.)
  * all.equal.numeric() gets a new optional switch giveErr to return
    the numeric error as attribute.  Relatedly,
    stopifnot(all.equal&lt;some&gt;(a, b, ..)) is as "smart" now, as
    stopifnot(all.equal(....)) has been already, thus allowing
    customized all.equal&lt;Some&gt;() wrappers.
  * R on Windows is now able to work with path names longer than 260
    characters when these are enabled in the system (requires at
    least Windows 10 version 1607).  Packages should be updated to
    work with long paths as well, instead of assuming PATH_MAX to be
    the maximum length.  Custom front-ends and applications embedding
    R need to update their manifests if they wish to allow this
    feature.  See
    &lt;https://blog.r-project.org/2023/03/07/path-length-limit-on-windows&gt;
    for more information.
  * 'Object not found' and 'Missing argument' errors now give a more
    accurate error context. Patch provided by Lionel Henry in
    PR#18241.
  * The @ operator is now an S3 generic. Based on contributions by
    Tomasz Kalinowski in PR#18482.
  * New generic chooseOpsMethod() provides a mechanism for objects to
    resolve cases where two suitable methods are found for an Ops
    Group Generic. This supports experimenting with alternative
    object systems. Based on contributions by Tomasz Kalinowski in
    PR#18484.
  * inherits(x, what) now accepts values other than a simple
    character vector for argument what. A new generic, nameOfClass(),
    is called to resolve the class name from what. This supports
    experimenting with alternative object systems. Based on
    contributions by Tomasz Kalinowski in PR#18485.
  * Detection of BLAS/LAPACK in use (sessionInfo()) with FlexiBLAS
    now reports the current backend.
  * The "data.frame" method for subset() now warns about extraneous
    arguments, typically catching the use of = instead of == in the
    subset expression.
  * Calling a:b when numeric a or b is longer than one may now be
    made into an error by setting environment variable
    _R_CHECK_LENGTH_COLON_ to a true value, along the proposal in
    PR#18419 by Henrik Bengtsson.
  * density(x, weights = *) now warns if automatic bandwidth
    selection happens without using weights; new optional warnWbw may
    suppress the warning.  Prompted by Christoph Dalitz' PR#18490 and
    its discussants.
  * rm(list = *) is faster and more readable thanks to Kevin Ushey's
    PR#18492.
  * The plot.lm() function no longer produces a normal Q-Q plot for
    GLMs. Instead it plots a half-normal Q-Q plot of the absolute
    value of the standardized deviance residuals.
  * The print() method for class "summary.glm" no longer shows
    summary statistics for the deviance residuals by default.  Its
    optional argument show.residuals can be used to show them if
    required.
  * The tapply() function now accepts a data frame as its X argument,
    and allows INDEX to be a formula in that case. by.data.frame()
    similarly allows INDICES to be a formula.
  * The performance of df[j] &lt;- value (including for missing j) and
    write.table(df) has been improved for data frames df with a large
    number of columns.  (Thanks to Gabriel Becker's PR#18500,
    PR#18503 and discussants, prompted by a report from Toby Dylan
    Hocking on the R-devel mailing list.)
  * The matrix multiply operator %*% is now an S3 generic, belonging
    to new group generic matrixOps.  From Tomasz Kalinowski's
    contribution in PR#18483.
  * New function array2DF() to convert arrays to data frames,
    particularly useful for the list arrays created by tapply().
  DATES and TIMES:
  * On platforms where (non-UTC) datetimes before 1902 (or before
    1900 as with system functions on recent macOS) are guessed by
    extrapolating time zones from 1902-2037, there is a warning at
    the first use of extrapolation in a session.  (As all time zones
    post 2037 are extrapolation, we do not warn on those.)
  * (Platforms using --with-internal-tzone, including Windows and by
    default macOS). How years are printed in dates or date-times can
    be controlled by environment variable R_PAD_YEARS_BY_ZERO.  The
    default remains to pad to 4 digits by zeroes, but setting value
    no gives no padding (as used by default by glibc).
  * strftime() tries harder to determine the offset for the "%z"
    format, and succeeds on the mainstream R platforms.
  * strftime() has a limit of 2048 bytes on the string produced -
    attempting to exceed this is an error.  (Previously it silently
    truncated at 255 bytes.)
  * sessionInfo() records (and by default prints) the system time
    zone as part of the locale information.  Also, the source
    (system/internal) of the date-time conversion and printing
    functions.
  * Objects of class "POSIXlt" created in this version of R always
    have 11 components: component zone is always set, and component
    gmtoff is set for times in UTC and usually set on the (almost
    all) platforms which have C-level support, otherwise is NA.
  * There are comprehensive validity checks on the structure of
    objects of class "POSIXlt" when converting (including formatting
    and printing).  (This avoids mis-conversions of hand-crafted
    objects.)
  * There is some support for using the native date-time routines on
    macOS: this is only viable on recent versions (e.g. 12.6 and 13)
    and does get wrong some historical changes (before 1900, during
    WWII).  Use of --with-internal-tzone remains the default.
  * as.POSIXct(&lt;numeric&gt;) and as.POSIXlt(.) (without specifying
    origin) now work.  So does as.Date(&lt;numeric&gt;).
  * as.Date.POSIXct(., tz) now treats several tz values, notably
    "GMT" as equivalent to "UTC", proposed and improved by Michael
    Chirico and Joshua Ulrich in PR#17674.
  * Experimental balancePOSIXlt() utility allows using "ragged" and
    or out-of-range "POSIXlt" objects more correctly, e.g., in
    subsetting and subassignments.  Such objects are now documented.
    More experimentally, a "POSIXlt" object may have an attribute
    "balanced" indicating if it is known to be filled or fully
    balanced.
  * Functions axis.Date() and axis.POSIXct() are rewritten to gain
    better default tick locations and better default formats by using
    prettyDate(). Thanks to Swetlana Herbrandt.
  * The mapping of Windows' names for time zones to IANA's 'Olson'
    names has been updated.  When ICU is available (it is by
    default), it is used to get a mapping for the current region set
    in Windows.  This can be overridden by setting environment
    variable TZ to the desired Olson name - see OlsonNames() for
    those currently available.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 16
    and so packages that provide graphics devices should be
    reinstalled.
  * The grDevices and grid packages have new functions for rendering
    typeset glyphs, primarily: grDevices::glyphInfo() and
    grid::grid.glyph().
    Rendering of typeset glyphs is only supported so far on the
    Cairo-based graphics devices and on the pdf() and quartz()
    devices.
  * The defined behaviour for "clear" and "source" compositing
    operators (via grid::grid.group()) has been changed (to align
    better with simple interpretation of original Porter-Duff
    definitions).
  * Support for gradients, patterns, clipping paths, masks, groups,
    compositing operators, and affine transformations has been added
    to the quartz() device.
  INSTALLATION on a UNIX-ALIKE:
  * A system installation of generic LAPACK 3.10.0 or later will be
    preferred to the version in the R sources.
    configure option --with-lapack=no (equivalently --without-lapack)
    forces compilation of the internal LAPACK sources.
    If --with-lapack is not specified, a system liblapack is looked
    for and used if it reports version 3.10.0 or later and does not
    contain BLAS routines.
    Packages using LAPACK will need to be reinstalled if this changes
    to using an external library.
  * On aarch64 Linux platforms using GCC, configure now defaults to
  - fPIC (instead of -fpic), as desired in PR#18326.
  * configure now checks conversion of datetimes between POSIXlt and
    POSIXct around year 2020.  Failure (which has been seen on
    platforms missing tzdata) is fatal.
  * If configure option --with-valgrind-instrumentation is given
    value 1 or 2, option --with-system-valgrind-headers is now the
    default and ignored (with a warning).  It is highly recommended
    that the system headers are installed alongside valgrind: they
    are part of its packaging on some Linux distributions and
    packaged separately (e.g. in the valgrind-devel RPM) on others.
    configure will give a warning if they are not found.
    The system headers will be required in a future release of R to
    build with valgrind instrumentation.
  * libcurl 8.x is now accepted by configure: despite a change in
    major version number it changes neither API nor ABI.
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools43, an update of the Rtools42 toolchain.  It is
    based on gcc 12 and newer versions of MinGW-W64, binutils and
    libraries.  At this time R-devel can still be built using
    Rtools42 without changes, but when R-devel is installed via the
    installer, it will by default look for Rtools43.
  * Old make targets rsync-extsoft and 32-bit ones that are no longer
    needed have been removed.
  * Default builds (including for packages) no longer select C99.
    Thus the C standard used is the default for the compiler, which
    for the toolchain in Rtools43 is C17.  (This is consistent with
    Unix builds.)
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++17 where
    available (which it is on all currently checked platforms): if
    not C++14 or C++11 is used if available otherwise C++ is not
    supported.
  * USE_FC_LEN_T is the default: this uses the correct
    (compiler-dependent) prototypes for Fortran BLAS/LAPACK routines
    called from C/C++, and requires adjustment of many such calls -
    see 'Writing R Extensions' SS6.6.1.
  * There is initial support for C++23 as several compilers are now
    supporting -std=c++23 or -std=c++2b or similar.  As for C++20,
    there no additional configure checks for C++23 features beyond a
    check that the compiler reports a __cplusplus value greater than
    that in the C++20 standard.  C++ feature tests should be used.
  * There is support for a package to indicate the version of the C
    standard which should be used to compile it, and for the
    installing user to specify this.  In most cases R defaults to the
    C compiler's default standard which is C17 (a `bug-fix' of C11) -
    earlier versions of R or compilers may have defaulted to C99.
    Current options are:
    USE_C17 Use a standard that is at most C17.  The intention is to
    allow legacy packages to still be installed when later C
    standards become the default, including packages using new
    keywords as identifiers or with K&amp;R-style function
    declarations.  This will use C17 if available, falling back
    to C11.
    USE_C90 Use the C90 (aka C89) standard.  (As that standard did
    not require compilers to identify that version, all we can
    verify is that the compiler does not claim to be using a
    later standard.  It may accept C99 features - for example
    clang accepts // to make comments.)
    USE_C99 Use the C99 standard. This should be rarely needed - it
    avoids the few new features of C11/C17 which can be useful if
    a package assumes them if C17 is specified and they are not
    implemented.
    USE_C23 Use C23 (or in future, later).  Compiler/library support
    for C23 is still being implemented, but LLVM clang from
    15.0.0 and the upcoming GCC 13 have quite extensive support.
    These can be specified as part of the SystemRequirements field in
    the package's DESCRIPTION file or _via_ options --use-C17 and so
    on of R CMD INSTALL and R CMD SHLIB.
    For further details see "Writing R Extensions" SS1.2.5.
  * (Windows) A src/Makefile.ucrt or src/Makefile.win file is now
    included after R_HOME/etcR_ARCH/Makeconf and so no longer needs
    to include that file itself.  Installation of a package with such
    a file now uses a site Makevars file in the same way as a package
    with a src/Makevars.win file would.
  * configure is now passed crucial variables such as CC and CFLAGS
    in its environment, as many packages were not setting them (as
    documented in 'Writing R Extensions' SS1.2).
    This has most effect where configure is used to compile parts of
    the package - most often by cmake or libtool which obfuscate the
    actual compile commands used.
    Also used for configure.win and configure.ucrt on Windows.
  FORTRAN FLAGS:
  * The flag -fno-optimize-sibling-calls is no longer forced for
    gfortran 7 and later.  It should no longer be needed now using
    'hidden' character-length arguments when calling BLAS/LAPACK
    routines from C/C++ is the default even for packages.  (Unless
    perhaps packages call Fortran code from C/C++ without using R's
    headers and without allowing for these arguments.)
  C-LEVEL FACILITIES:
  * The deprecated S-compatibility macros DOUBLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * The deprecated legacy typedefs of Sint and Sfloat in header R.h
    are no longer defined, and that header no longer includes header
    limits.h from C nor climits from C++.
  * New macro CAD5R() is provided in Rinternals.h and used in a few
    places in the R sources.
  * ALTREP now supports VECSXP vectors. Contributed by Gabor Csardi
    in PR#17620.
  * The Rcomplex definition (in header R_ext/Complex.h) has been
    extended to prevent possible mis-compilation when interfacing
    with Fortran (PR#18430).  The new definition causes compiler
    warnings with static initializers such as {1, 2}, which can be
    changed to {.r=1, .i=2}.
    Using the new definition from C++ depends on compiler extensions
    supporting C features that have not been incorporated into the
    C++ standards but are available in g++ and clang++: this may
    result in C++ compiler warnings but these have been worked around
    for recent versions of common compilers (GCC, Apple/LLVM clang,
    Intel).
    It is intended to change the inclusion of header R_ext/Complex.h
    by other R headers, so C/C++ code files which make use of
    Rcomplex should include that header explicitly.
  UTILITIES:
  * R CMD check does more checking of package .Rd files, warning
    about invalid email addresses and (some) invalid URIs and noting
    empty \item labels in description lists.
  * R CMD check now also reports problems when reading package news
    in md (file NEWS.md) and (optionally) plain text (file NEWS)
    formats.
  * _R_CHECK_TIMINGS_ defaults to a value from the environment even
    for R CMD check --as-cran; this allows for exceptionally fast or
    slow platforms.
    It now applies to checking PDF and HTML versions of the manuals,
    and 'checking CRAN incoming feasibility'.
  * R CMD check can optionally (but included in --as-cran) check
    whether HTML math rendering _via_ KaTeX works for the package .Rd
    files.
  * Non-interactive debugger invocations can be trapped by setting
    the environment variable _R_CHECK_BROWSER_NONINTERACTIVE_ to a
    true value.  This is enabled by R CMD check --as-cran to detect
    the use of leftover browser() statements in the package.
  * The use of sprintf and vsprintf from C/C++ has been deprecated in
    macOS 13 and is a known security risk.  R CMD check now reports
    (on all platforms) if their use is found in compiled code:
    replace by snprintf or vsnprintf respectively. [*NB:* whether
    such calls get compiled into the package is platform-dependent.]
  * Where recorded at installation, R CMD check reports the C and
    Fortran compilers used to build R.
    It reports the OS in use (if known, as given by osVersion) as
    well as that R was built for.
    It notes if a C++ standard was specified which is older than the
    current default: many packages have used C++11 to mean 'not
    C++98' - as C++11 is the minimum supported since R 4.0.0, that
    specification can probably be removed.
  * R CMD INSTALL reports the compilers (and on macOS, the SDK) used,
    and this is copied to the output of R CMD check.
    Where a C++ standard is specified, it is reported.
  * R CMD check's 'checking compilation flags in Makevars' has been
    relaxed to accept the use of flags such as -std=f2008 in
    PKG_FFLAGS.
  * tools::buildVignettes() has a new argument skip, which is used by
    R CMD check to skip (and note) vignettes with unavailable
    \VignetteDepends (PR#18318).
  * New generic .AtNames() added to enable class-specific completions
    after @. The formerly internal function findMatches() is now
    exported, mainly for use in methods for .DollarNames() and
    .AtNames().
  DEPRECATED AND DEFUNCT:
  * default.stringsAsFactors() is defunct.
  * Calling as.data.frame.&lt;class&gt;() directly (for 12 atomic classes)
    is going to be formally deprecated, currently activated by
    setting the environment variable
    _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ to non-empty, which also
    happens in R CMD check --as-cran.
  BUG FIXES:
  * Hashed environments with sizes less than 5 can now grow.
    (Reported to R-devel by Duncan Garmonsway.)
  * as.character(&lt;Rd&gt;, deparse = TRUE) failed to re-escape curly
    braces in LaTeX-like text.  (Reported by Hadley Wickham in
    PR#18324.)
  * library() now passes its lib.loc argument when requiring Depends
    packages; reported (with fix) in PR#18331 by Mikael Jagan.
  * R CMD Stangle: improved message about 'Output' files.
  * head(x, n) and tail(x, n) now signal an error if n is not
    numeric, instead of incidentally "working" sometimes returning
    all of x.  Reported and discussed by Colin Fay, in PR#18357.
  * The "lm" method for summary() now gives the correct F-statistic
    when the model contains an offset.  Reported in PR#18008.
  * C() and `contrasts&lt;-`() now preserve factor level names when
    given a function object (as opposed a function name which did
    preserve names). Reported in PR#17616.
  * c(a = 1, 2)[[]] no longer matches 2 but rather signals a
    _classed_ error.  Reported and analysed by Davis Vaughan in
    PR#18367, a duplicate of PR#18004, by Jan Meis et al.  For
    consistency, NULL[[]] is also erroneous now.  x[[]] &lt;- v gives an
    error of the same class "MissingSubscriptError".
  * The relist() function of utils now supports NULL elements in the
    skeleton (PR#15854).
  * ordered(levels = *) (missing x) now works analogously to factor(,
    ordered=TRUE); reported (with fix) by Achim Zeileis in PR#18389.
  * User-defined Rd macro definitions can now span multiple lines,
    thanks to a patch from Duncan Murdoch. Previously, the Rd parser
    silently ignored everything after the first line.
  * Plain-text help (tools::Rd2txt()) now preserves an initial blank
    line for text following description list items.
  * tools::Rd2HTML() and tools::Rd2latex() no longer split \arguments
    and \value lists at Rd comments.
  * tools::Rd2latex() now correctly handles optional text outside
    \items of argument lists as well as bracketed text at the
    beginning of sections, e.g., \value{[NULL]}.
  * as.character(&lt;POSIXt&gt;) now behaves more in line with the methods
    for atomic vectors such as numbers, and is no longer influenced
    by options().  Ditto for as.character(&lt;Date&gt;).  The
    as.character() method gets arguments digits and OutDec with
    defaults _not_ depending on options().  Use of as.character(*,
    format = .) now warns.
  * Similarly, the as.character.hexmode() and *.octmode() methods
    also behave as good citizen methods and back compatibility option
    keepStr = TRUE.
  * The as.POSIXlt(&lt;POSIXlt&gt;) and as.POSIXct(&lt;POSIXct&gt;) default
    methods now do obey their tz argument, also in this case.
  * as.POSIXlt(&lt;Date&gt;) now does apply a tz (time zone) argument, as
    does as.POSIXct(); partly suggested by Roland Fuss on the R-devel
    mailing list.
  * as.Date.POSIXlt(x) now also works when the list components are of
    unequal length, aka "partially filled" or "ragged".
  * expand.model.frame() looked up variables in the wrong environment
    when applied to models fitted without data.  Reported in
    PR#18414.
  * time() now (also) uses the ts.eps = getOption("ts.eps") argument
    and thus by default rounds values very close to the start (or
    end) of a year.  Based on a proposal by Andre"i V. Kostyrka on
    R-help.
  * Printing of a factanal() result with just one factor and sort =
    TRUE now works regularly, fixing PR#17863 by Timothy Bates,
    thanks to the 'R Contributors' working group.
  * Printing 0-length objects of class "factor", "roman", "hexmode",
    "octmode", "person", "bibentry", or "citation" now prints
    something better, one of which fixes PR#18422, reported by
    Benjamin Feakins.
  * Sys.timezone() queries timedatectl only if systemd is loaded;
    addressing a report by Jan Gorecki in PR#17421.
  * The formula method of cor.test() had scoping problems when
    environment(formula) was not the calling environment; reported
    with a patch proposal by Mao Kobayashi in PR#18439.
  * attach() of an environment with active bindings now preserves the
    active bindings.  Reported by Kevin Ushey in PR#18425.
  * BLAS detection now works also with system-provided libraries not
    available as regular files.  This fixes detection of the
    Accelerate framework on macOS since Big Sur.  Reported by David
    Novgorodsky.
  * download.file() gives a helpful error message in case of an
    invalid download.file.method option, thanks to Colin Fay's report
    in PR#18455.
  * Sporadic crashes of Rterm when using completion have been fixed.
  * Rprof() is now more reliable.  A livelock in thread
    initialization with too short sampling interval has been fixed on
    macOS.  A deadlock in using the C runtime has been fixed on
    Windows.  A potential deadlock has been prevented on Unix.
  * Cursor placement in Rgui now works even after a fixed-width font
    is selected.
  * Mandatory options (options()) are now set on startup so that
    saving and restoring them always works (PR#18372).
  * Package installation, R CMD INSTALL or install.packages(*), now
    parses each of the &lt;pkg&gt;/R/*.R files individually instead of
    first concatenating and then parse()ing the large resulting file.
    This allows parser or syntax errors to be diagnosed with correct
    file names and line numbers, thanks to Simon Dedman's report and
    Bill Dunlap's patch in PR#17859.
    This _does_ require syntactically self contained R source files
    now, fixing another inadvertent bug.
  * predict.lm(&lt;model with offset&gt;) now finds the offset in the
    correct environment, thanks to Andr'e Gillibert's report and patch
    in PR#18456.
  * getInitial(&lt;formula&gt;) now finds the selfStart model in the
    correct environment.  (Reported by Ivan Krylov in PR#18368.)
  * Fix for possible segfault when using recently-added graphics
    features, such as gradients, clipping paths, masks, and groups
    with pdf(file=NULL).
  * class(m) &lt;- class(m) no longer changes a matrix m by adding a
    class _attribute_.
  * packageDate(pkg) now only warns once if there is no pkg.
  * When ts() creates a multivariate time series, "mts", it also
    inherits from "array" now, and is.mts() is documented _and_
    stricter.
  * Rd2txt() now preserves line breaks of \verb Rd content and from
    duplicated \cr.  The former also fixes the rendering of verbatim
    output from Rd \Sexpr in plain-text help.
  * uniroot(f, interval) should no longer wrongly converge _outside_
    the interval in some cases where abs(f(x)) == Inf for an x at the
    interval boundary, thanks to posts by Ben Bolker and Serguei
    Sokol on R-devel.
  * Vectorized alpha handling in palette functions such as in gray(),
    rainbow(), or hcl.colors() works correctly now, thanks to Achim
    Zeileis' report and patch in PR#18476.
  * Formatting and print()ing of bibentry objects has dropped the
    deprecated citation.bibtex.max argument, such that the bibtex
    argument's default for print.bibentry() depends directly on the
    citation.bibtex.max option, whereas in format.bibentry() the
    option no longer applies.
  * Attempting to use a character string naming a foreign function
    entry point in a foreign function call in a package will now
    signal an error if the packages has called R_forceSymbols to
    specify that symbols must be used.
  * An error in table() could permanently set options(warn=2)
    promoting all subsequent warnings to errors.
  * The sigma() function gave misleading results for binary GLMs.  A
    new method for objects of class "glm" returns the square root of
    the estimate of the dispersion parameter using the same
    calculation as summary.glm().
  * bs() and ns() in the (typical) case of automatic knot
    construction, when some of the supposedly inner knots coincide
    with boundary knots, now moves them inside (with a warning),
    building on PR#18442 by Ben Bolker.
  * R CMD on Windows now skips the site profile with --no-site-file
    and --vanilla even when R_PROFILE is set (PR#18512, from Kevin
    Ushey).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1686916800">- CHANGES IN R 4.3.1:
  C-LEVEL FACILITIES:
  * The C-level API version of R's integrate(), Rdqags() in Applic.h,
    now returns the correct number of integrand evaluations neval,
    fixing PR#18515 reported and diagnosed by Stephen Wade.
  * The C prototypes for LAPACK calls dspgv and dtptrs in
    R_exts/Lapack.h had one too many and one too few character length
    arguments - but this has not caused any known issues. To get the
    corrected prototypes, include
    [#]include &lt;Rconfig.h&gt; // for PR18534fixed
    [#]ifdef PR18534fixed
    [#] define usePR18534fix 1
    [#]endif
    [#]include &lt;R_exts/Lapack.h&gt;
    in your C/C++ code (PR#18534).
  INSTALLATION:
  * Many of the checks of esoteric Internet operations and those
    using unreliable external sites have been moved to a new target
    that is not run by default and primarily intended for the core
    developers.  To run them use
    cd tests; make test-Internet-dev
  BUG FIXES:
  * .S3methods(), typically called from methods(), again marks
    methods from package base as visible.
    Also, the visibility of non-base methods is again determined by
    the method's presence in search().
  * tools::Rdiff() is now more robust against invalid strings, fixing
    installation tests on Windows without Rtools installed
    (PR#18530).
  * Fix (new) bug in hcl.colors(2, *), by Achim Zeileis (PR#18523).
  * head(., &lt;illegal&gt;) and tail(..) now produce more useful "Error in
    ...." error messages, fixing PR#18362.
  * Package code syntax on Windows is checked in UTF-8 when UTF-8 is
    the native encoding.
  * na.contiguous(x) now also returns the first run, when it is at
    the beginning and there is a later one of the same length;
    reported to R-devel, including a fix, by Georgi Boshnakov.
    Further, by default, it modifies only an existing attr(*,"tsp")
    but otherwise no longer sets one.
  * chol(&lt;not pos.def&gt;, pivot = &lt;T|F&gt;) now gives a correct error or
    warning message (depending on pivot), thanks to Mikael Jagan's
    (PR#18541).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1699012800">- CHANGES IN R 4.3.2:
  NEW FEATURES:
  * The default initialization of the "repos" option from the
    repositories file at startup can be skipped by setting
    environment variable R_REPOSITORIES to NULL such that
    getOption("repos") is empty if not set elsewhere.
  * qr.X() is now an implicit S4 generic in methods.
  * iconv(to = "ASCII//TRANSLIT") is emulated using substitution on
    platforms which do not support it (notably Alpine Linux).  This
    should give a human-readable conversion in ASCII on all platforms
    (rather than NA_character_).
  * trans3d() gains options continuous and verbose addressing the
    problem of possible "wrap around" when projecting too long
    curves, as reported by Achim Zeileis in PR#18537.
  * tools::showNonASCII() has been rewritten to work better on macOS
    14 (which has a changed implementation of iconv()).
  * tiff(type = "quartz") (the default on macOS) now warns if
    compression is specified: it continues to be ignored.
  INSTALLATION on a UNIX-ALIKE:
  * There is some support for building with Intel's LLVM-based
    compilers on x86_64 Linux, such as (C) icx, (C++) ipcx and
    (Fortran) ifx from oneAPI 2023.x.y.
  * There is support for using LLVM's flang-new as the Fortran
    compiler from LLVM 16.0.x (preferably 17.0.0 or later).
  UTILITIES:
  * R CMD check reports the use of the Fortran 90 random number
    generator RANDOM_NUMBER() and the subroutines to initialize it.
    'Writing R Extensions' has example code to use R's RNGs from
    Fortran.
  BUG FIXES:
  * substr(x, n, L) &lt;- cc now works (more) correctly for multibyte
    UTF-8 strings x when L &gt; nchar(x), thanks to a report and patch
    by 'Architect 95'.
  * contrib.url(character()) now returns 0-length character() as
    documented, which also avoids spurious warnings from
    available.packages() et al. in the edge case of an empty vector
    of repository URLs.
  * readChar(., 4e8) no longer fails, thanks to Kodi Arfer's report
    (PR#18557).
  * lapply(&lt;list&gt;, as.data.frame) no longer warns falsely for some
    base vector components.
  * Communication between parent and child processes in the multicore
    part of parallel could fail on platforms that do not support an
    arbitrarily large payload in system functions read()/write() on
    pipes (seen on macOS where a restriction to INT_MAX bytes is
    documented, without doing a partial read unlike Linux). The
    payload is now split into 1Gb chunks to avoid that problem.
    (PR#18571)
  * qqplot(x,y, conf.level=.) gives better confidence bounds when
    length(x) != length(y), thanks to Alexander Ploner's report and
    patch proposal (PR#18557).
  * norm(&lt;0-length&gt;, "2") now gives zero instead of an error, as all
    the other norm types, thanks to Mikael Jagan's PR#18542.
  * Build-stage Rd macros \packageAuthor and \packageMaintainer now
    process Authors@R, fixing NA results when the package DESCRIPTION
    omits Author and Maintainer fields.
  * Formatting and printing complex numbers could give things like
    0.1683-0i because of rounding error: -0i is now replaced by +0i.
  * postscript() refused to accept a title comment containing the
    letter "W" (PR#18599).
  * isoreg(c(1,Inf)) signals an error instead of segfaulting, fixing
    PR#18603.
  * tiff(type = "Xlib") was only outputting the last page of
    multi-page plots.
  * tools::latexToUtf8() again knows about \~{n} and other letters
    with tilde, fixing a regression in R 4.3.0, and about \^{i} as an
    alternative to \^{\i} (similarly with other accents).
    Furthermore, LaTeX codes for accented I letters are now correctly
    converted, also fixing related mistakes in
    tools::encoded_text_to_latex().
  * tar(*, tar = "internal") no longer creates out-of-spec tar files
    in the very rare case of user or group names longer than 32
    bytes, fixing PR#17871 with thanks to Ivan Krylov.
  * When using the "internal" timezone datetime code, adding a
    fraction of a second no longer adds one second, fixing PR#16856
    from a patch by Ivan Krylov.
  * tools::checkRd() no longer produces spurious notes about
    "unnecessary braces" from multi-line Rd results of \Sexpr macros.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1709208000">- CHANGES IN R 4.3.3:
  NEW FEATURES:
  * iconv() now fixes up variant encoding names such as "utf8"
    case-insensitively.
  DEPRECATED AND DEFUNCT:
  * The legacy encoding = "MacRoman" is deprecated in pdf() and
    postscript(): support was incomplete in earlier versions of R.
  BUG FIXES:
  * Arguments are now properly forwarded to methods on S4 generics
    with ... in the middle of their formal arguments. This was broken
    for the case when a method introduced an argument but did not
    include ... in its own formals. Thanks to Herv'e Pag`es for the
    report PR#18538.
  * Some invalid file arguments to pictex(), postscript() and xfig()
    opened a file called NA rather than throw an error.  These
    included postscript(NULL) (which some people expected to work
    like pdf(NULL)).
  * Passing filename = NA to svg(), cairo_pdf(), cairo_ps() or the
    Cairo-based bitmap devices opened a file called NA: it now throws
    an error.
  * quartz(file = NA) opened a file called NA, including when used as
    a Quartz-based bitmap device.  It now gives an error.
  * rank(&lt;long vector&gt;) now works, fixing PR#18617, thanks to Ilia
    Kats.
  * seq.int() did not adequately check its length.out argument.
  * match(&lt;POSIXct&gt;, .) is correct again for differing time zones,
    ditto for "POSIXlt", fixing PR#18618 reported by Bastian Klein.
  * drop.terms(*, dropx = &lt;0-length&gt;) now works, fixing PR#18563 as
    proposed by Mikael Jagan.
  * drop.terms(*) keeps + offset(.) terms when it should, PR#18565,
    and drop.terms() no longer makes up a response, PR#18566, fixing
    both bugs thanks to Mikael Jagan.
  * getS3method("t", "test") no longer finds the t.test() function,
    fixing PR#18627.
  * pdf() and postscript() support for the documented Adobe encodings
    "Greek" and "Cyrilllic" was missing (although the corresponding
    Windows' codepages could be used).
  * Computations of glyph metric information for pdf() and
    postscript() did not take into account that transliteration could
    replace one character by two or more (only seen on macOS 14) and
    typically warned that the information was not known.
  * rank(x) no longer overflows during integer addition, when
    computing rank average for largish but not-yet long vector x,
    fixing PR#18630, thanks to Ilia Kats.
  * list.files() on Windows now returns also files with names longer
    that 260 bytes (the Windows limit is 260 characters).
    Previously, some file names particularly with 'East Asian'
    characters were omitted.
  * cov2cor(&lt;0 x 0&gt;) now works, fixing PR#18423 thanks to Mikael
    Jagan and Elin Waring.
  * cov2cor(&lt;negative diagonal&gt;) and similar now give one warning
    instead of two, with better wording, fixing PR#18424 thanks to
    Mikael Jagan.
  * tools:: startDynamicHelp() now ensures port is in proper range,
    fixing PR#18645.
  * pbeta(x, a,b) is correct now for x=0 or 1 in the boundary cases
    where a or b or both are 0, fixing PR#18672 thanks to Michael
    Fay.
  * pmatch(x, table) for large table, also called for data frame row
    selection, dfrm[nm, ], is now interruptible, fixing PR#18656.
  * predict(&lt;rank-deficient lm&gt;, newdata=*) fix computing of nbasis,
    see Russ Lenth's comment 29 in PR#16158.
  * Added a work-around for a bug in macOS 14.3.1 and higher which
    prevents R plots in the Quartz Cocoa device from updating on
    screen.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1713960000">- CHANGES IN R 4.4.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Startup banners, R --version, sessionInfo() and R CMD check no
    longer report (64-bit) as part of the platform as this is almost
    universal - the increasingly rare 32-bit platforms will still
    report (32-bit).
    On Windows, ditto for window titles.
  * is.atomic(NULL) now returns FALSE, as NULL is not an atomic
    vector.  Strict back-compatibility would replace is.atomic(foo)
    by (is.null(foo) || is.atomic(foo)) but should happen only
    sparingly.
  NEW FEATURES:
  * The confint() methods for "glm" and "nls" objects have been
    copied to the stats package.  Previously, they were stubs which
    called versions in package MASS. The MASS namespace is no longer
    loaded if you invoke (say) confint(glmfit).  Further, the "glm"
    method for profile() and the plot() and pairs() methods for class
    "profile" have been copied from MASS to stats.  (profile.nls()
    and plot.profile.nls() were already in stats.)
  * The confint() and profile methods for "glm" objects have gained a
    possibility to do profiling based on the Rao Score statistic in
    addition to the default Likelihood Ratio. This is controlled by a
    new test = argument.
  * The pairs() method for "profile" objects has been extended with a
    which = argument to allow plotting only a subset of the
    parameters.
  * The "glm" method for anova() computes test statistics and
    p-values by default, using a chi-squared test or an F test
    depending on whether the dispersion is fixed or free.  Test
    statistics can be suppressed by giving argument test a false
    logical value.
  * In setRepositories() the repositories can be set using their
    names via name = instead of index ind =.
  * methods() and .S3methods() gain a all.names option for the (rare)
    case where functions starting with a . should be included.
  * Serializations can now be interrupted (e.g., by Ctrl-C on a
    Unix-alike) if they take too long, e.g., from save.image(),
    thanks to suggestions by Ivan Krylov and others on R-devel.
  * New startup option --max-connections to set the maximum number of
    simultaneous connections for the session.  Defaults to 128 as
    before: allowed values up to 4096 (but resource limits may in
    practice restrict to smaller values).
  * R on Windows (since Windows 10 2004) now uses the new Segment
    Heap allocator. This may improve performance of some
    memory-intensive applications.
  * When R packages are built, typically by R CMD build &lt;pkg&gt;, the
    new --user=&lt;build_user&gt; option overrides the (internally
    determined) user name, currently Sys.info()["user"] or LOGNAME.
    This is a (modified) fulfillment of Will Landau's suggestion in
    PR#17530.
  * tools::testInstalledBasic() gets new optional arguments outDir
    and testSrcdir, e.g., allowing to use it in a &lt;builddir&gt; !=
    &lt;srcdir&gt; setup, and in standard "binary" Windows installation
  * if* a source tests/ folder is present.
  * range(&lt;DT_with_Inf&gt;, finite = TRUE) now work for objects of class
    "Date", "POSIXct", and "POSIXlt" with infinite entries,
    analogously to range.default(), as proposed by Davis Vaughan on
    R-devel.  Other range()-methods can make use of new function
    .rangeNum().
  * New .internalGenerics object complementing .S3PrimitiveGenerics,
    for documentation and low-level book-keeping.
  * grid() now invisibly returns the x- and y- coordinates at which
    the grid-lines were drawn.
  * norm(., type) now also works for complex matrices.
  * kappa(., exact = TRUE, norm = *) now works for all norms and also
    for complex matrices.  In symmetric / triangular cases, the new
    argument uplo = "U" | "L" allows the upper or lower triangular
    part to be specified.
  * memDecompress(type = "unknown") recognizes compression in the
    default 'zlib' format as used by memCompress(type = "gzip").
  * memCompress() and memDecompress() will use the libdeflate library
    (&lt;https://github.com/ebiggers/libdeflate&gt;) if installed.  This
    uses the same type of compression for type = "gzip" but is 1.5-2x
    faster than the system libz library on some common platforms: the
    speed-up may depend on the library version.
  * diff() for objects of class "Date", "POSIXct", and "POSIXlt"
    accepts a units argument passed via ....
  * Dynamic help now does a much better job of rendering package
    DESCRIPTION metadata.
  * Rprof() gains an event argument and support for elapsed (real)
    time profiling on Unix (PR#18076).
  * filled.contour() gains a key.border argument.
  * tools::update_pkg_po() gets arguments pot_make and mo_make for
    _not_ re-making the corresponding files, and additionally a
    verbose argument.
  * Hexadecimal string colour specifications are now accepted in
    short form, so, for example, we can use "#123", which is
    equivalent to "#112233".
    Thanks to MikeFC for the original idea and Ella Kaye, Malcolm
    Barrett, George Stagg, and Hanne Oberman for the patch.
  * Plain-text help shows \var markup by angle brackets.
  * The new experimental primitive function declare() is intended to
    eventually allow information about R code to be communicated to
    the interpreter, compiler, and code analysis tools. The syntax
    for declarations is still being developed.
  * Functions psmirnov(), qsmirnov() and rsmirnov() in package stats
    have had argument two.sided renamed to alternative, to take into
    account that the permutation distributions of the one-sided
    statistics can be different in the case of ties.  Consequence of
    PR#18582.
  * sort() is now an implicit S4 generic in methods.
  * Formatting and printing, format(z), print(z), of complex vectors
    z no longer zap relatively small real or imaginary parts to zero,
    fixing PR#16752.  This is an API change, as it was documented
    previously to round real and imaginary parts together on purpose,
    producing nicer looking output.  As mentioned, e.g. in the PR,
    this change is compatible with many other "R-like" programming
    environments.
    We have simplified the internal code and now basically format the
    real and imaginary parts independently of each other.
  * New experimental functions Tailcall() and Exec() to support
    writing stack-space-efficient recursive functions.
  * Where characters are attempted to be plotted by pdf(),
    postscript() and xfig() which are not in the selected 8-bit
    character set (most often Latin-1) and the R session is using a
    UTF-8 locale, the warning messages will show the UTF-8 character
    rather than its bytes and one dot will be substituted per
    character rather than per byte.  (Platforms whose iconv() does
    transliteration silently plot the transliteration.)
    In a UTF-8 locale some transliterations are now done with a
    warning (e.g., dashes and Unicode minus to hyphen, ligatures are
    expanded, permille (‰) is replaced by o/oo), although the OS may
    have got there first.  These are warnings as they will continue
    to be replaced by dots in earlier versions of R.
  * The matrix multiplication functions crossprod() and tcrossprod()
    are now also primitive and S3 generic, as %*% had become in R
    4.3.0.
  * source() and example() have a new optional argument catch.aborts
    which allows continued evaluation of the R code after an error.
  * The non-Quartz tiff() devices allow additional types of
    compression if supported by the platform's libtiff library.
  * The list of base and recommended package names is now provided by
    tools::standard_package_names().
  * cairo_pdf() and cairo_ps() default to onefile = TRUE to closer
    match pdf() and postscript().
  * New option catch.script.errors provides a documented way to catch
    errors and then continue in non-interactive use.
  * L %||% R newly in base is an expressive idiom for the phrases
    if(!is.null(L)) L else R or if(is.null(L)) R else L.
  * The return value from warnings() now always inherits from
    "warnings" as documented, now also in the case of no warnings
    where it previously returned NULL.
  * as.complex("1i") now returns 0 + 1i instead of NA with a warning.
  * z &lt;- c(NA, 1i) now keeps the imaginary part Im(z[1]) == 0, no
    longer coercing to NA_complex_.  Similarly, cumsum(z) correctly
    sums real and imaginary parts separately, i.e., without
    "crosstalk" in case of NAs.
  * On Alpine Linux iconv() now maps "latin2", "latin-2", "latin9"
    and "latin-9" to encoding names the OS knows about
    (case-insensitively).
  * iconv(sub = "Unicode") now always zero-pads to four (hex) digits,
    rather than to 4 or 8.  (This seems to have become the convention
    once Unicode restricted the number of Unicode points to 2^21 - 1
    and so will never need more than 6 digits.)
  * NCOL(NULL) now returns 0 instead of 1, for consistency with
    cbind().
  * The information for the Euro glyph missing from the Adobe .afm
    files for the Courier, Helvetica and Times families has been
    copied from their URW equivalents - this will improve vertical
    centring in the pdf() and postscript() devices.
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.12.0.  The changes are almost entirely cosmetic.
  * The included LAPACK sources have been updated to version 3.12.0
    and some further double-complex routines added.
  * There are new font families for the 2014--5 URW 2.0 fonts (see
    ?pdf) which are included in recent versions of Ghostscript.
    These have font widths for most Greek glyphs and a few others
    which were missing from the original versions (whose font
    families remain available for reproducibility, although
    Ghostscript-based viewers will render using the 2.0 versions).
  * Improve the large-n efficiency of as.matrix(&lt;dist&gt;), thanks an R
    contributors effort, notably by Tim Taylor and Heather Turner,
    see PR#18660.
  * The default and numeric methods of all.equal() get a check.class
    option.
  * zapsmall() gets new optional arguments, function mFUN and min.d,
    for extra flexibility; fulfills a wish in PR#18199.  Also, it is
    now an implicit S4 generic in package methods.
  * The Rd filter for aspell() gains an ignore argument.
  * New generic function sort_by(), primarily useful for the
    data.frame method which can be used to sort rows of a data frame
    by one or more columns.
  * The icence headers for the RPC code in src/extra/xdr have been
    updated to use the GPL-compatible licence published by Oracle
    America in 2010.
  * New function pkg2HTML() in tools to create single-page HTML
    reference manuals for R packages.
  * The byte code evaluator now uses less C stack space for recursive
    calls to byte-compiled functions. It also makes more of an effort
    to avoid allocations for scalar return values.
  * New completion option backtick (disabled by default) allows
    non-syntactic completions to be wrapped in backquotes. This is
    currently only useful for Jupyter notebooks via the IRkernel
    package, and may cause problems for other backends.
  INSTALLATION:
  * The parser has been updated to work with bison 3.8.2, which is
    now used for the pre-generated parsers in gram.c, file.c, and
    gramRd.c. A few parser error messages have changed, which may
    affect code that relies on exact messages.
  INSTALLATION on a UNIX-ALIKE:
  * System valgrind headers are now required to use configure option
  - -with-valgrind-instrumentation with value 1 or 2.
  * configure will warn if it encounters a 32-bit build, as that is
    nowadays almost untested.
  * Environment variable R_SYSTEM_ABI is no longer used and so no
    longer recorded in etc/Renviron (it was not on Windows and was
    only ever used when preparing package tools).
  * If the libdeflate library and headers are available, libdeflate
    rather than libz is used to (de)compress R objects in lazy-load
    databases.  Typically tasks spend up to 5% of their time on such
    operations, although creating lazy-data databases is one of the
    exceptions.
    This can be suppressed if the library is available by the
    configure option --without-libdeflate-compression.
  * configure option --enable-lto=check has not worked reliably since
    2019 and has been removed.
  * The minimum autoconf requirement for a maintainer build has been
    increased to autoconf 2.71.
    It is intended to increase this to 2.72 for R 4.5.0: the
    distributed configure file was generated using 2.72.
  * The minimum version requirement for an external LAPACK has been
    reduced to 3.9.0.
  * No default C++ compiler is set if no C++17 compiler is detected:
    there is no longer an automatic fallback to C++14 or C++11.
    Compilers from the last five years should have sufficient
    support: for others macros CXX and CXXSTD can be set in file
    config.site to provide a fallback if needed.
    The Objective-C++ compiler now by default uses the standard
    selected by R for C++ (currently C++17) rather than the default
    standard for the C++ compiler (which on macOS is still C++98).
  INSTALLATION on macOS:
  * A new configure option --with-newAccelerate makes use of Apple's
    'new' BLAS / LAPACK interfaces in their Accelerate framework.
    Those interfaces are only available in macOS 13.3 or later, and
    building requires SDK 13.3 or later (from the Command Line Tools
    or Xcode 14.3 or later).
    By default the option uses new Accelerate for BLAS calls: to also
    use it for LAPACK use option --with-newAccelerate=lapack.  The
    later interfaces provide LAPACK 3.9.1 rather than 3.2.1: 3.9.1 is
    from 2021-04 and does not include the improved algorithms
    introduced in LAPACK 3.10.0 (including for BLAS calls).
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools44, an update of the Rtools43 toolchain.  It is
    based on GCC 13 and newer versions of MinGW-W64, binutils and
    libraries (targeting 64-bit Intel CPUs).  R-devel can no longer
    be built using Rtools43 without changes.
  * Rtools44 has experimental support for 64-bit ARM (aarch64) CPUs
    _via_ the LLVM 17 toolchain using lld, clang/flang-new and
    libc++.
  UTILITIES:
  * R CMD check notes when S4-style exports are used without
    declaring a strong dependence on package methods.
  * tools::checkRd() (used by R CMD check) detects more problems with
    \Sexpr-based dynamic content, including bad nesting of \Sexprs
    and invalid arguments.
  * tools::checkRd() now reports Rd titles and section names ending
    in a period; this is ignored by R CMD check unless environment
    variable _R_CHECK_RD_CHECKRD_MINLEVEL_ is set to -5 or smaller.
  * R CMD check now notes Rd files without an \alias, as long
    documented in 'Writing R Extensions' §1.3.1.  The check for a
    missing \description has been moved from tools::checkRd() to
    tools::checkRdContents().
  * R CMD check now visits inst/NEWS.Rd and OS-specific man
    subdirectories when checking Rd files.
  * tools::checkDocFiles() and tools::checkRdContents() now also
    check internal Rd files by default, but "specially" (ignoring
    missing documentation of arguments).
  * R CMD Rdiff gets option --useEx.
  * R CMD check now warns on non-portable uses of Fortran KIND such
    as INTEGER(KIND=4) and REAL(KIND=8).
    To see the failing lines set environment variable
    _R_CHECK_FORTRAN_KIND_DETAILS_ to a true value.
  * When checking Rd files, R CMD check now notes some of the "lost
    braces" that tools::checkRd() finds.  Typical problems are Rd
    macros missing the initial backslash (e.g., code{...}), in-text
    set notation (e.g., {1, 2}, where the braces need escaping), and
    \itemize lists with \describe-style entries of the form
    \item{label}{description}.
  * R CMD INSTALL (and hence check) will compile C++ code with
  - DR_NO_REMAP if environment variable _R_CXX_USE_NO_REMAP_ is set
    to a true value.  It is planned that this will in future become
    the default for compiling C++.
  * The new built-in Rd macro \dontdiff{} can be used to mark example
    code whose output should be ignored when comparing check output
    to reference output (tests/Examples/&lt;pkg&gt;-Ex.Rout.save).  The
    \dontdiff tag, like \donttest, is _not_ shown on the rendered
    help page, so provides a clean alternative to ##
    IGNORE_RDIFF_(BEGIN|END) comments.
  * R CMD build when there is no NAMESPACE, now uses the recommended
    exportPattern("^[^.]"), instead of exporting everything.
  * R CMD check now warns about non-ASCII characters in the NAMESPACE
    file (in addition to R files). Such packages are not portable and
    may fail to install on some platforms.
  C-LEVEL FACILITIES:
  * Headers R_ext/Applic.h and R-ext/Linpack.h used to include
    R_ext/BLAS.h although this was undocumented and unneeded by their
    documented entry points.  They no longer do so.
  * New function R_missing(), factored out from do_missing(), used to
    fix PR#18579.
  * SEXP type S4SXP has been renamed to OBJSXP to support
    experimenting with alternative object systems.  The S4SXP value
    can still be used in C code but is now deprecated.  Based on
    contributions from the R Consortium's Object-Oriented Programming
    Working Group.
  * New function pow1p(x,y) for accurate (1+x)^y.
  * mkCharLenCE was incorrectly documented to take a size_t length
    but was implemented with int (and character strings in R are
    limited to 2^31 - 1 bytes).
  DEPRECATED AND DEFUNCT:
  * data() no longer handles zipped data from long-defunct (since R
    2.13.0) --use-zip-data installations.
  * The legacy graphics devices pictex() and xfig() are now
    deprecated.  They do not support recent graphics enhancements and
    their font handling is rudimentary. The intention is to retain
    them for historical interest as long as they remain somewhat
    functional.
  * Support for encoding = "MacRoman" has been removed from the pdf()
    and postscript() devices - this was a legacy encoding supporting
    classic macOS up to 2001 and no longer has universal libiconv
    support.
  * is.R() is deprecated as no other S dialect is known to be in use
    (and this could only identify historical dialects, not future
    ones).
    Further information on calls can be obtained by setting the
    environment variable _R_DEPRECATED_IS_R_ to error which turns the
    deprecation warning into an error and so by default gives a
    traceback.  (This is done by R CMD check --as-cran.)
  * UseMethod() no longer forwards local variables assigned in the
    generic function into method call environments before evaluating
    the method body. This makes method calls behave more like
    standard function calls and makes method code easier to analyze
    correctly.
  * The twelve as.data.frame.&lt;class&gt;() methods which were deprecated
    only via _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ and in R CMD
    check --as-cran are formally deprecated now in favour of calling
    as.data.frame() or as.data.frame.vector().  The deprecation
    "check" now works also when as.data.frame() is S4 generic thanks
    to Ivan Krylov.
  * The default method for the directional comparison operators &lt;, &gt;,
    &lt;=, and &gt;= now signals an error when one of the operands is a
    language object, i.e. a symbol or a call.
  * For terms.formula(), deprecate abb and neg.out arguments
    _formally_ in addition to just documenting it.
  BUG FIXES:
  * The methods package is more robust to not being attached to the
    search path.  More work needs to be done.
  * pairwise.t.test() misbehaved when subgroups had 0 DF for
    variance, even with pool.sd = TRUE.  (PR#18594 by Jack Berry).
  * Probability distribution functions [dpq]&lt;distrib&gt;(x, *), but also
    bessel[IKJY](x, .) now consistently preserve attributes(x) when
    length(x) == 0, e.g., for a 2 x 0 matrix, thanks to Karolis
    Koncevičius' report PR#18509.
  * Group "Summary" computations such as sum(1:3, 4, na.rm = 5, NA,
    7, na.rm = LL) now give an error instead of either 17 or NN for
    LL true or false, as proposed by Ivan Krylov on the R-devel
    mailing list.  (This also means it is now an error to specify
    na.rm more than once.)
  * as.complex(x) now returns complex(real = x, imaginary = 0) for
    _all_ numerical and logical x, notably also for NA or
    NA_integer_.
  * Directories are now omitted by file.copy(, recursive = FALSE) and
    in file.append() (PR#17337).
  * gsub() and sub() are now more robust to integer overflow when
    reporting errors caused by too large input strings (PR#18346).
  * Top-level handlers are now more robust to attempts to remove a
    handler whilst handlers are running (PR#18508).
  * The handling of Alt+F4 in dialogs created on Windows using
    GraphApp has been fixed (PR#13870).
  * density() more consistently computes grid values for the
    FFT-based convolution, following Robert Schlicht's analysis and
    proposal in PR#18337, correcting density values typically by a
    factor of about 0.999.  Argument old.coords = TRUE provides back
    compatibility.
  * palette.colors() gains a name argument that defaults to FALSE
    controlling whether the vector of colours that is returned has
    names (where possible).  PR#18529.
  * tools::xgettext() no longer extracts the (non-translatable) class
    names from warningCondition and errorCondition calls.
  * S3method(&lt;gen&gt;, &lt;class&gt;, &lt;func&gt;) in the NAMESPACE file now works
    (again) when &lt;func&gt; is visible from the namespace, e.g.,
    imported, or in base.
  * getParseData(f) now also works for a function defined in the
    first of several &lt;pkg&gt;/R/*.R source files, thanks to Kirill
    Müller's report and Duncan Murdoch's patch in PR#16756.
  * Rd \Sexpr macros with nested #ifdef conditionals were not
    processed.
  * A non-blocking connection with non-default encoding (such as a
    socket) now correctly returns from readLines() after new data has
    arrived also when its EOF had been reached previously.  Thanks to
    Peter Meilstrup's report on R-devel and Ivan Krylov's report and
    patch proposal in PR#18555.
  * tools::checkRdContents() failed to detect empty argument
    descriptions when they spanned multiple lines, including those
    generated by prompt().  These cases are now noted by R CMD check.
  * Plain-text help no longer outputs spurious colons in the
    arguments list (for multi-line \item labels in the Rd source).
  * kappa() and rcond() work correctly in more cases; kappa(., norm =
    "2") now warns that it computes the 1-norm with (default) exact =
    FALSE; prompted by Mikael Jagan's quite comprehensive PR#18543.
  * Rd skeletons generated by prompt() or promptData() now use a
    dummy title (so R CMD build works).  tools::checkRdContents() has
    been updated to detect such template leftovers, including from
    promptPackage().
  * When S4 method dispatch fails because no method was found, the
    error message now includes the signature argument names; thanks
    to Michael Chirico's proposal on the R-devel list.
  * withAutoprint({ .. }) now preserves srcrefs previously lost,
    thanks to Andrew Simmons' report plus fix in PR#18572.
  * transform.data.frame() no longer adjusts names; in particular,
    untransformed variables are kept as-is, including those with
    syntactically invalid names (PR#17890).
  * The keep.source option for Rd \Sexpr blocks is no longer ignored.
  * The formula methods for t.test() and wilcox.test() now catch when
    paired is passed, addressing PR#14359; use Pair(x1, x2) ~ 1 for a
    paired test.
  * The level reported in the browser prompt was often too large. It
    now shows the number of browser contexts on the stack.
  * For cbind() and rbind(), the optional deparse.level argument is
    now properly passed to methods, thanks to Mikael Jagan's PR#18579
    and comments there.
  * Some error and warning messages for large ('long vector')
    matrix(v, nr, nc) and dim(m) &lt;- d are now correct about sizes,
    using long long formatting, fixing PR#18612 (and more) reported
    by Mikael Jagan.
  * readChar(useBytes = TRUE) now terminates strings even when the
    underlying connection uses extra spaces in the input buffer.
    This fixes problems with extra garbage seen with gzip
    connections, PR#18605.
  * Named capture in PCRE regular expressions now works also with
    more than 127 named groups (PR#18588).
  * Datetime functions are now robust against long jumps when dealing
    with internal time zone changes.  This avoids confusing warnings
    about an invalid time zone, previously triggered by turning
    warnings into errors or handling them via tryCatch (PR#17966,
    PR#17780).
  * Datetime functions now restore even an empty TZ environment
    variable after internal time zone changes (PR#17724).  This makes
    results of datetime functions with this (typically unintentional)
    setting more predictable.
  * drop.terms(*) now drops response as by default, keep.response =
    FALSE, fixing PR#18564 thanks to Mikael Jagan.
  * dummy.coef(.) now also works for lm()-models with character
    categorical predictor variables rather than factor ones, fixing
    PR#18635 reported by Jinsong Zhao.
  * formals(f) &lt;- formals(f) now also works for a function w/o
    arguments and atomic _constant_ body(f).
  * Correct as.function(&lt;invalid list&gt;, .)'s error message.
  * removeSource() is yet more thorough in finding and removing
    "srcref" and the other source references from parsed R language
    chunks, fixing PR#18638 thanks to Andrew Simmons.
  * dgeom() is more accurate now, notably when its result is very
    small, fixing PR#18642 thanks to the proposal of Morten Welinder,
    also improving other instances where C level binom_raw(x, n, ..)
    has x == 0 or x== n.
  * warning() with options(warn = 1) has improved output for
    multi-line messages.
  * axis.Date() and axis.POSIXct() now respect the par("lab") setting
    for the number of pretty() intervals.
  * Comparisons for language objects (which are based on deparsing)
    are now more careful about using accurate deparsed results
    (PR#18676).
  * Plain-text help (Rd2txt) now correctly preserves blank lines
    following single-line \dontrun code.
  * &lt;POSIXlt&gt;[*] no longer sets wrong "balanced" attribute, fixing
    PR#18681 thanks to Mikael Jagan.
  * str(&lt;classed-call&gt;) now deparses the call as expected, fixing
    PR#18684, reported by Dave Slager.
  * In Rd examples, code following the closing brace of a \dontrun,
    \dontshow or \donttest tag on the same line is no longer skipped
    when R CMD check runs the examples.
  * as.data.frame(matrix(*, ncol=0)) now gets valid names() and
    colnames(); reported by Davis Vaughan on the R-devel list.
  * Internal Mathlib function stirlerr(n) is now almost fully
    (52-bit) accurate for all n &gt;= ~5.9 and more accurate also in the
    range 1 -- 5.9.  This entails small ("after 12th decimal")
    changes in density functions, e.g., dgamma() in _some_ regions of
    their support.  The fix was partly prompted by Morten Welinder's
    PR#18640.
  * Numbers like 9876543.2 are now considered non-integer by Mathlib
    internal R_nonint(), amending original fix of PR#15734.
  * Rd comment lines no longer cause broken paragraphs in the
    rendered PDF and plain-text help. In code blocks, pure comment
    lines (starting with %) no longer produce an empty line.
  * xtabs(Freq ~ .) now consistently defaults to na.action = na.pass,
    using na.rm = FALSE (added as an argument) when summing over Freq
    (PR#17770).
  * tools::testInstalledPackage() is no longer silent about failures
    from running examples or tests and its return code no longer
    ignores failures from checking vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1718366400">- CHANGES IN R 4.4.1:
  C-LEVEL FACILITIES:
  * Functions R_atof and R_strtod declared in header R_ext/Utils.h
    are now documented in 'Writing R Extensions' and so formally part
    of the API.
  * The non-API entry points Rf_setSVector, Rf_StringFalse,
    Rf_StringTrue and Rf_isBlankString have been added to those
    reported by R CMD check.
  * The new function Rf_allocLang is now available. This provides an
    alternative to the idiom of calling Rf_allocList followed by
    SET_TYPEOF.
  UTILITIES:
  * R CMD check now reports as warnings what gfortran calls 'Fortran
    2018 deleted features', all of which have long been marked as
    'obsolescent' and some of which were deleted in Fortran 2008 or
    earlier.  Fortran compilers are no longer required to support
    these.
  BUG FIXES:
  * as.numeric(), scan(), type.convert() and other places which use
    the internal C function R_strtod now require a _non-empty_ digit
    sequence in a decimal or binary exponent.  This aligns with the
    C/POSIX standard for strtod and with ?NumericConstants.
  * as.data.frame(m, make.names=NA) now works correctly for a matrix
    m with NA's in row names.
  * The error message from &lt;POSIXlt&gt;[["hour"]] and similar now
    mentions *[[, "hour"]], as wished for in PR#17409 and proposed by
    Michael Chirico.
  * qbinom() and potentially qpois(), qnbinom(), no longer sometimes
    fail accurate inversion (of pbinom(), etc), thanks to Christopher
    Chang's report and patch in PR#18711.
  * The internal help server on Windows can again serve requests sent
    in quick succession, fixing a regression in R 4.4.0.
  * debugcall(&lt;S3Generic&gt;()) now also works when a corresponding
    S4-generic version is in the methods cache (PR#18143).
  * Package tools' toTitleCase(ch0) now returns character(0) when ch0
    is of zero length; fixing PR#18724, reported by David Hugh Jones.
  * R CMD check is no longer broken (without a check result and no
    explanation in 00check.log) for a package which declares an
    invalid VignetteBuilder in DESCRIPTION but has no vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1730376000">- CHANGES IN R 4.4.2:
  C-LEVEL FACILITIES:
  * The S-compatibility macros F77_COM and F77_COMDECL defined in
    header R_ext/RS.h are deprecated and will be removed shortly.  We
    could find no record of their use.
  BUG FIXES:
  * Mathlib function lgammacor(x) no longer warns about underflow to
    zero for large x.
  * Text widths and heights were incorrectly reported by the Quartz
    device if the drawing context didn't exist yet (typically when
    drawing off-screen to a window that is yet to appear, see
    PR#18591).
  * The Quartz device could segfault in cases where paths with spaces
    are used in the new glyph drawing API.  Thanks to Tomek
    Gieorgijewski (PR#18758).
  * On macOS in R CRAN builds, it is again possible to read
    little-endian UTF-16 text with a BOM from a connection using
    encoding="UTF-16".  Users building R from source should avoid
    using the system libiconv in macOS 14.1 and later.
  * methods' internal .requirePackage() now re-enables primitive
    method dispatch when needed; thanks to Ivan Krylov for
    demystifying CRAN package check failures on the R-devel mailing
    list.</changelog>
</package>
<package pkgid="75a879f8614bb11f43b42126ddb144ca0fc8542e2f68bf9563efc6c1a923baf88c925c87c2f21ee1b82c4ad520ddac86b78f17e79ecfd3736af2dcacbcd79088" name="R-survival" arch="x86_64">
  <version epoch="0" ver="3.7.0" rel="51.0.2.2.sr20241103"/>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1620302400">- To get in sync with d:l:R:autoCRAN the Matrix package's split
  in -devel was reversed.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339200">- improved spec file according to comments of dimstar in
  https://build.opensuse.org/request/show/892685</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339201">- CHANGES IN R 4.1.0:
  FUTURE DIRECTIONS:
  * It is planned that the 4.1.x series will be the last to support
    32-bit Windows, with production of binary packages for that
    series continuing until early 2023.
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Data set esoph in package datasets now provides the correct
    numbers of controls; previously it had the numbers of cases added
    to these.  (Reported by Alexander Fowler in PR#17964.)
  NEW FEATURES:
  * www.omegahat.net is no longer one of the repositories known by
    default to setRepositories().  (Nowadays it only provides source
    packages and is often unavailable.)
  * Function package_dependencies() (in package tools) can now use
    different dependency types for direct and recursive dependencies.
  * The checking of the size of tarball in R CMD check --as-cran
    &lt;pkg&gt; may be tweaked via the new environment variable
    _R_CHECK_CRAN_INCOMING_TARBALL_THRESHOLD_, as suggested in
    PR#17777 by Jan Gorecki.
  * Using c() to combine a factor with other factors now gives a
    factor, an ordered factor when combining ordered factors with
    identical levels.
  * apply() gains a simplify argument to allow disabling of
    simplification of results.
  * The format() method for class "ftable" gets a new option justify.
    (Suggested by Thomas Soeiro.)
  * New ...names() utility.  (Proposed by Neal Fultz in PR#17705.)
  * type.convert() now warns when its as.is argument is not
    specified, as the help file always said it _should_.  In that
    case, the default is changed to TRUE in line with its change in
    read.table() (related to stringsAsFactor) in R 4.0.0.
  * When printing list arrays, classed objects are now shown _via_
    their format() value if this is a short enough character string,
    or by giving the first elements of their class vector and their
    length.
  * capabilities() gets new entry "Rprof" which is TRUE when R has
    been configured with the equivalent of --enable-R-profiling (as
    it is by default).  (Related to Michael Orlitzky's report
    PR#17836.)
  * str(xS4) now also shows extraneous attributes of an S4 object
    xS4.
  * Rudimentary support for vi-style tags in rtags() and R CMD rtags
    has been added.  (Based on a patch from Neal Fultz in PR#17214.)
  * checkRdContents() is now exported from tools; it and also
    checkDocFiles() have a new option chkInternal allowing to check
    Rd files marked with keyword "internal" as well.  The latter can
    be activated for R CMD check via environment variable
    _R_CHECK_RD_INTERNAL_TOO_.
  * New functions numToBits() and numToInts() extend the raw
    conversion utilities to (double precision) numeric.
  * Functions URLencode() and URLdecode() in package utils now work
    on vectors of URIs.  (Based on patch from Bob Rudis submitted
    with PR#17873.)
  * path.expand() can expand ~user on most Unix-alikes even when
    readline is not in use.  It tries harder to expand ~, for example
    should environment variable HOME be unset.
  * For HTML help (both dynamic and static), Rd file links to help
    pages in external packages are now treated as references to
    topics rather than file names, and fall back to a file link only
    if the topic is not found in the target package. The earlier rule
    which prioritized file names over topics can be restored by
    setting the environment variable _R_HELP_LINKS_TO_TOPICS_ to a
    false value.
  * c() now removes NULL arguments before dispatching to methods,
    thus simplifying the implementation of c() methods, _but_ for
    back compatibility keeps NULL when it is the first argument.
    (From a report and patch proposal by Lionel Henry in PR#17900.)
  * Vectorize()'s result function's environment no longer keeps
    unneeded objects.
  * Function ...elt() now propagates visibility consistently with
    ..n.  (Thanks to Lionel Henry's PR#17905.)
  * capture.output() no longer uses non-standard evaluation to
    evaluate its arguments.  This makes evaluation of functions like
    parent.frame() more consistent.  (Thanks to Lionel Henry's
    PR#17907.)
  * packBits(bits, type="double") now works as inverse of
    numToBits().  (Thanks to Bill Dunlap's proposal in PR#17914.)
  * curlGetHeaders() has two new arguments, timeout to specify the
    timeout for that call (overriding getOption("timeout")) and TLS
    to specify the minimum TLS protocol version to be used for
    https:// URIs (_inter alia_ providing a means to check for sites
    using deprecated TLS versions 1.0 and 1.1).
  * For nls(), an optional constant scaleOffset may be added to the
    denominator of the relative offset convergence test for cases
    where the fit of a model is expected to be exact, thanks to a
    proposal by John Nash.  nls(*, trace=TRUE) now also shows the
    convergence criterion.
  * Numeric differentiation _via_ numericDeriv() gets new optional
    arguments eps and central, the latter for taking central divided
    differences.  The latter can be activated for nls() via
    nls.control(nDcentral = TRUE).
  * nls() now passes the trace and control arguments to getInitial(),
    notably for all self-starting models, so these can also be fit in
    zero-noise situations via a scaleOffset.  For this reason, the
    initial function of a selfStart model must now have ... in its
    argument list.
  * bquote(splice = TRUE) can now splice expression vectors with
    attributes: this makes it possible to splice the result of
    parse(keep.source = TRUE).  (Report and patch provided by Lionel
    Henry in PR#17869.)
  * textConnection() gets an optional name argument.
  * get(), exists(), and get0() now signal an error if the first
    argument has length greater than 1.  Previously additional
    elements were silently ignored.  (Suggested by Antoine Fabri on
    R-devel.)
  * R now provides a shorthand notation for creating functions, e.g.
    \(x) x + 1 is parsed as function(x) x + 1.
  * R now provides a simple native forward pipe syntax |&gt;.  The
    simple form of the forward pipe inserts the left-hand side as the
    first argument in the right-hand side call.  The pipe
    implementation as a syntax transformation was motivated by
    suggestions from Jim Hester and Lionel Henry.
  * all.equal(f, g) for functions now by default also compares their
    environment(.)s, notably via new all.equal method for class
    function.  Comparison of nls() fits, e.g., may now need
    all.equal(m1, m2, check.environment = FALSE).
  * .libPaths() gets a new option include.site, allowing to _not_
    include the site library.  (Thanks to Dario Strbenac's suggestion
    and Gabe Becker's PR#18016.)
  * Lithuanian translations are now available.  (Thanks to Rimantas
    Zakauskas.)
  * names() now works for DOTSXP objects.  On the other hand, in
    R-lang, the R language manual, we now warn against relying on the
    structure or even existence of such dot-dot-dot objects.
  * all.equal() no longer gives an error on DOTSXP objects.
  * capabilities("cairo") now applies only to the file-based devices
    as it is now possible (if very unusual) to build R with Cairo
    support for those but not for X11().
  * There is optional support for tracing the progress of
    loadNamespace() - see its help.
  * (Not Windows.)  l10n_info() reports an additional element, the
    name of the encoding as reported by the OS (which may differ from
    the encoding part (if any) of the result from
    Sys.getlocale("LC_CTYPE").
  * New function gregexec() which generalizes regexec() to find _all_
    disjoint matches and well as all substrings corresponding to
    parenthesized subexpressions of the given regular expression.
    (Contributed by Brodie Gaslam.)
  * New function charClass() in package utils to query the
    wide-character classification functions in use (such as
    iswprint).
  * The names of quantile()'s result no longer depend on the global
    getOption("digits"), but quantile() gets a new optional argument
    digits = 7 instead.
  * grep(), sub(), regexp and variants work considerably faster for
    long factors with few levels.  (Thanks to Michael Chirico's
    PR#18063.)
  * Provide grouping of x11() graphics windows within a window
    manager such as Gnome or Unity; thanks to a patch by Ivan Krylov
    posted to R-devel.
  * The split() method for class data.frame now allows the f argument
    to be specified as a formula.
  * sprintf now warns on arguments unused by the format string.
  * New palettes "Rocket" and "Mako" for hcl.colors() (approximating
    palettes of the same name from the 'viridisLite' package).
    Contributed by Achim Zeileis.
  * The base environment and its namespace are now locked (so one can
    no longer add bindings to these or remove from these).
  * Rterm handling of multi-byte characters has been improved,
    allowing use of such characters when supported by the current
    locale.
  * Rterm now accepts ALT+ +xxxxxxxx sequences to enter Unicode
    characters as hex digits.
  * Environment variable LC_ALL on Windows now takes precedence over
    LC_CTYPE and variables for other supported categories, matching
    the POSIX behaviour.
  * duplicated() and anyDuplicated() are now optimized for integer
    and real vectors that are known to be sorted via the ALTREP
    framework. Contributed by Gabriel Becker via PR#17993.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 14
    and so packages that provide graphics devices should be
    reinstalled.
  * Graphics devices should now specify deviceVersion to indicate
    what version of the graphics engine they support.
  * Graphics devices can now specify deviceClip.  If TRUE, the
    graphics engine will never perform any clipping of output itself.
    The clipping that the graphics engine does perform (for both
    canClip = TRUE and canClip = FALSE) has been improved to avoid
    producing unnecessary artifacts in clipped output.
  * The grid package now allows gpar(fill) to be a linearGradient(),
    a radialGradient(), or a pattern().  The viewport(clip) can now
    also be a grob, which defines a clipping path, and there is a new
    viewport(mask) that can also be a grob, which defines a mask.
    These new features are only supported so far on the Cairo-based
    graphics devices and on the pdf() device.
  * (Not Windows.)  A warning is given when a Cairo-based type is
    specified for a png(), jpeg(), tiff() or bmp() device but Cairo
    is unsupported (so type = "Xlib" is tried instead).
  * grSoftVersion() now reports the versions of FreeType and
    FontConfig if they are used directly (not _via_ Pango), as is
    most commonly done on macOS.
  C-LEVEL FACILITIES:
  * The _standalone_ libRmath math library and R's C API now provide
    log1pexp() again as documented, and gain log1mexp().
  INSTALLATION on a UNIX-ALIKE:
  * configure checks for a program pkgconf if program pkg-config is
    not found.  These are now only looked for on the path (like
    almost all other programs) so if needed specify a full path to
    the command in PKG_CONFIG, for example in file config.site.
  * C99 function iswblank is required - it was last seen missing ca
    2003 so the workaround has been removed.
  * There are new configure options --with-internal-iswxxxxx,
  - -with-internal-towlower and --with-internal-wcwidth which allows
    the system functions for wide-character classification,
    case-switching and width (wcwidth and wcswidth) to be replaced by
    internal ones.  The first has long been used on macOS, AIX (and
    Windows) but this enables it to be unselected there and selected
    for other platforms (it is the new default on Solaris).  The
    second is new in this version of R and is selected by default on
    macOS and Solaris.  The third has long been the default and
    remains so as it contains customizations for East Asian
    languages.
    System versions of these functions are often minimally
    implemented (sometimes only for ASCII characters) and may not
    cover the full range of Unicode points: for example Solaris (and
    Windows) only cover the Basic Multilingual Plane.
  * Cairo installations without X11 are more likely to be detected by
    configure, when the file-based Cairo graphics devices will be
    available but not X11(type = "cairo").
  * There is a new configure option --with-static-cairo which is the
    default on macOS.  This should be used when only static cairo
    (and where relevant, Pango) libraries are available.
  * Cairo-based graphics devices on platforms without Pango but with
    FreeType/FontConfig will make use of the latter for font
    selection.
  LINK-TIME OPTIMIZATION on a UNIX-ALIKE:
  * Configuring with flag --enable-lto=R now also uses LTO when
    installing the recommended packages.
  * R CMD INSTALL and R CMD SHLIB have a new flag --use-LTO to use
    LTO when compiling code, for use with R configured with
  - -enable-lto=R.  For R configured with --enable-lto, they have
    the new flag --no-use-LTO.
    Packages can opt in or out of LTO compilation _via_ a UseLTO
    field in the DESCRIPTION file.  (As usual this can be overridden
    by the command-line flags.)
  BUILDING R on Windows:
  * for GCC &gt;= 8, FC_LEN_T is defined in config.h and hence character
    lengths are passed from C to Fortran in _inter alia_ BLAS and
    LAPACK calls.
  * There is a new text file src/gnuwin32/README.compilation, which
    outlines how C/Fortran code compilation is organized and
    documents new features:
  * R can be built with Link-Time Optimization with a suitable
    compiler - doing so with GCC 9.2 showed several
    inconsistencies which have been corrected.
  * There is support for cross-compiling the C and Fortran code
    in R and standard packages on suitable (Linux) platforms.
    This is mainly intended to allow developers to test later
    versions of compilers - for example using GCC 9.2 or 10.x has
    detected issues that GCC 8.3 in Rtools40 does not.
  * There is experimental support for cross-building R packages
    with C, C++ and/or Fortran code.
  * The R installer can now be optionally built to support a single
    architecture (only 64-bit or only 32-bit).
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++14 where
    available (which it is on all currently checked platforms): if
    not (as before) C++11 is used if available otherwise C++ is not
    supported.
    Packages which specify C++11 will still be installed using C++11.
    C++14 compilers may give deprecation warnings, most often for
    std::random_shuffle (deprecated in C++14 and removed in C++17).
    Either specify C++11 (see 'Writing R Extensions') or modernize
    the code and if needed specify C++14.  The latter has been
    supported since R 3.4.0 so the package's DESCRIPTION would need
    to include something like
    Depends: R (&gt;= 3.4)
  PACKAGE INSTALLATION on Windows:
  * R CMD INSTALL and R CMD SHLIB make use of their flag --use-LTO
    when the LTO_OPT make macro is set in file etc/${R_ARCH}/Makeconf
    or in a personal/site Makevars file.  (For details see 'Writing R
    Extensions' SS4.5.)
    This provides a valuable check on code consistency.  It does work
    with GCC 8.3 as in Rtools40, but that does not detect everything
    the CRAN checks with current GCC do.
  PACKAGE INSTALLATION on macOS:
  * The default personal library directory on builds with
  - -enable-aqua (including CRAN builds) now differs by CPU type,
    one of
    ~/Library/R/x86_64/x.y/library
    ~/Library/R/arm64/x.y/library
    This uses the CPU type R (and hence the packages) were built for,
    so when a x86_64 build of R is run under Rosetta emulation on an
    arm64 Mac, the first is used.
  UTILITIES:
  * R CMD check can now scan package functions for bogus return
    statements, which were possibly intended as return() calls (wish
    of PR#17180, patch by Sebastian Meyer). This check can be
    activated via the new environment variable
    _R_CHECK_BOGUS_RETURN_, true for --as-cran.
  * R CMD build omits tarballs and binaries of previous builds from
    the top-level package directory.  (PR#17828, patch by Sebastian
    Meyer.)
  * R CMD check now runs sanity checks on the use of LazyData, for
    example that a data directory is present and that
    LazyDataCompression is not specified without LazyData and has a
    documented value.  For packages with large LazyData databases
    without specifying LazyDataCompression, there is a reference to
    the code given in 'Writing R Extensions' SS1.1.6 to test the
    choice of compression (as in all the CRAN packages tested a
    non-default method was preferred).
  * R CMD build removes LazyData and LazyDataCompression fields from
    the DESCRIPTION file of packages without a data directory.
  ENCODING-RELATED CHANGES:
  * The parser now treats \Unnnnnnnn escapes larger than the upper
    limit for Unicode points (\U10FFFF) as an error as they cannot be
    represented by valid UTF-8.
    Where such escapes are used for outputting non-printable
    (including unassigned) characters, 6 hex digits are used (rather
    than 8 with leading zeros).  For clarity, braces are used, for
    example \U{0effff}.
  * The parser now looks for non-ASCII spaces on Solaris (as
    previously on most other OSes).
  * There are warnings (including from the parser) on the use of
    unpaired surrogate Unicode points such as \uD834.  (These cannot
    be converted to valid UTF-8.)
  * Functions nchar(), tolower(), toupper() and chartr() and those
    using regular expressions have more support for inputs with a
    marked Latin-1 encoding.
  * The character-classification functions used (by default) to
    replace the system iswxxxxx functions on Windows, macOS and AIX
    have been updated to Unicode 13.0.0.
    The character-width tables have been updated to include new
    assignments in Unicode 13.0.0.
  * The code for evaluating default (extended) regular expressions
    now uses the same character-classification functions as the rest
    of R (previously they differed on Windows, macOS and AIX).
  * There is a build-time option to replace the system's
    wide-character wctrans C function by tables shipped with R: use
    configure option --with-internal-towlower or (on Windows)
  - DUSE_RI18N_CASE in CFLAGS when building R.  This may be needed
    to allow tolower() and toupper() to work with Unicode characters
    beyond the Basic Multilingual Plane where not supported by system
    functions (e.g. on Solaris where it is the new default).
  * R is more careful when truncating UTF-8 and other multi-byte
    strings that are too long to be printed, passed to the system or
    libraries or placed into an internal buffer.  Truncation will no
    longer produce incomplete multibyte characters.
  DEPRECATED AND DEFUNCT:
  * Function plclust() from the package stats and
    package.dependencies(), pkgDepends(), getDepList(),
    installFoundDepends(), and vignetteDepends() from package tools
    are defunct.
  * Defunct functions checkNEWS() and readNEWS() from package tools
    and CRAN.packages() from utils have been removed.
  * R CMD config CXXCPP is defunct (it was deprecated in R 3.6.2).
  * parallel::detectCores() drops support for Irix (retired in 2013).
  * The LINPACK argument to chol.default(), chol2inv(),
    solve.default() and svd() has been defunct since R 3.1.0.  It was
    silently ignored up to R 4.0.3 but now gives an error.
  * Subsetting/indexing, such as ddd[*] or ddd$x on a DOTSXP
    (dot-dot-dot) object ddd has been disabled; it worked by accident
    only and was undocumented.
  BUG FIXES:
  * Many more C-level allocations (mainly by malloc and strdup) are
    checked for success with suitable alternative actions.
  * Bug fix for replayPlot(); this was turning off graphics engine
    display list recording if a recorded plot was replayed in the
    same session.  The impact of the bug became visible if resize the
    device after replay OR if attempted another savePlot() after
    replay (empty display list means empty screen on resize or empty
    saved plot).
  * R CMD check etc now warn when a package exports non-existing S4
    classes or methods, also in case of no "methods" presence.
    (Reported by Alex Bertram; reproducible example and patch by
    Sebastian Meyer in PR#16662.)
  * boxplot() now also accepts calls for labels such as ylab, the
    same as plot().  (Reported by Marius Hofert.)
  * The help page for xtabs() now correctly states that addNA is
    setting na.action = na.pass among others.  (Reported as PR#17770
    by Thomas Soeiro.)
  * The R CMD check &lt;pkg&gt; gives a longer and more comprehensible
    message when DESCRIPTION misses dependencies, e.g., in Imports:.
    (Thanks to the contributors of PR#17179.)
  * update.default() now calls the generic update() on the formula to
    work correctly for models with extended formulas.  (As reported
    and suggested by Neal Fultz in PR#17865.)
  * The horizontal position of leaves in a dendrogram is now correct
    also with center = FALSE.  (PR#14938, patch from Sebastian
    Meyer.)
  * all.equal.POSIXt() no longer warns about and subsequently ignores
    inconsistent "tzone" attributes, but describes the difference in
    its return value (PR#17277).  This check can be disabled _via_
    the new argument check.tzone = FALSE as suggested by Sebastian
    Meyer.
  * as.POSIXct() now populates the "tzone" attribute from its tz
    argument when x is a logical vector consisting entirely of NA
    values.
  * x[[2^31]] &lt;- v now works.  (Thanks to the report and patch by
    Suharto Anggono in PR#17330.)
  * In log-scale graphics, axis() ticks and label positions are now
    computed more carefully and symmetrically in their range,
    typically providing _more_ ticks, fulfilling wishes in PR#17936.
    The change really corresponds to an improved axisTicks() (package
    grDevices), potentially influencing grid and lattice, for
    example.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now correct to at
    least five digits where it was catastrophically wrong,
    previously.
  * sum(df) and similar "Summary"- and "Math"-group member functions
    now work for data frames df with logical columns, notably also of
    zero rows.  (Reported to R-devel by Martin "b706".)
  * unsplit() had trouble with tibbles due to unsound use of rep(NA,
    len)-indexing, which should use NA_integer_ (Reported to R-devel
    by Mario Annau.)
  * pnorm(x, log.p = TRUE) underflows to -Inf slightly later.
  * show(&lt;hidden S4 generic&gt;) prints better and without quotes for
    non-hidden S4 generics.
  * read.table() and relatives treated an "NA" column name as missing
    when check.names = FALSE PR#18007.
  * Parsing strings containing UTF-16 surrogate pairs such as
    "\uD834\uDD1E" works better on some (uncommon) platforms.
    sprintf("%X", utf8ToInt("\uD834\uDD1E")) should now give "1D11E"
    on all platforms.
  * identical(x,y) is no longer true for differing DOTSXP objects,
    fixing PR#18032.
  * str() now works correctly for DOTSXP and related exotics, even
    when these are doomed.
    Additionally, it no longer fails for lists with a class and
    "irregular" method definitions such that e.g. lapply(*) will
    necessarily fail, as currently for different igraph objects.
  * Too long lines in environment files (e.g. Renviron) no longer
    crash R. This limit has been increased to 100,000 bytes.
    (PR#18001.)
  * There is a further workaround for FreeType giving incorrect
    italic font faces with cairo-based graphics devices on macOS.
  * add_datalist(*, force = TRUE) (from package tools) now actually
    updates an existing data/datalist file for new content.  (Thanks
    to a report and patch by Sebastian Meyer in PR#18048.)
  * cut.Date() and cut.POSIXt() could produce an empty last interval
    for breaks = "months" or breaks = "years".  (Reported as PR#18053
    by Christopher Carbone.)
  * Detection of the encoding of 'regular' macOS locales such as
    en_US (which is UTF-8) had been broken by a macOS change:
    fortunately these are now rarely used with en_US.UTF-8 being
    preferred.
  * sub() and gsub(pattern, repl, x, *) now keep attributes of x such
    as names() also when pattern is NA (PR#18079).
  * Time differences ("difftime" objects) get a replacement and a
    rep() method to keep "units" consistent.  (Thanks to a report and
    patch by Nicolas Bennett in PR#18066.)
  * The \RdOpts macro, setting defaults for \Sexpr options in an Rd
    file, had been ineffective since R 2.12.0: it now works again.
    (Thanks to a report and patch by Sebastian Meyer in PR#18073.)
  * mclapply and pvec no longer accidentally terminate parallel
    processes started before by mcparallel or related calls in
    package parallel (PR#18078).
  * grep and other functions for evaluating (extended) regular
    expressions handle in Unicode also strings not explicitly flagged
    UTF-8, but flagged native when running in UTF-8 locale.
  * Fixed a crash in fifo implementation on Windows (PR#18031).
  * Binary mode in fifo on Windows is now properly detected from
    argument open (PR#15600, PR#18031).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1622808000">- The line %{__install} -m 755 -d %{_infodir}
  no longer works in TW or Factory.
  But without that line it works everywhere. So this instruction
  was commented out of the spec file.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1628596800">- CHANGES IN R 4.1.1:
  NEW FEATURES:
  * require(pkg, quietly = TRUE) is quieter and in particular does
    not warn if the package is not found.
  DEPRECATED AND DEFUNCT:
  * Use of ftp:// URIs should be regarded as deprecated, with
    on-going support confined to method = "libcurl" and not routinely
    tested.  (Nowadays no major browser supports them.)
  * The non-default method = "internal" is deprecated for http:// and
    ftp:// URIs for both download.file and url.
  * On Windows, method = "wininet" is deprecated for http://,
    https:// and ftp:// URIs for both download.file and url.  (A
    warning is only given for ftp://.)
    For ftp:// URIs the default method is now "libcurl" if available
    (which it is on CRAN builds).
    method = "wininet" remains the default for http:// and https://
    URIs but if libcurl is available, using method = "libcurl" is
    preferred.
  INSTALLATION:
  * make check now works also without a LaTeX installation.  (Thanks
    to Sebastian Meyer's PR#18103.)
  BUG FIXES:
  * make check-devel works again in an R build configured with
  - -without-recommended-packages.
  * qnbinom(p, size, mu) for large size/mu is correct now in a range
    of cases (PR#18095); similarly for the (size, prob)
    parametrization of the negative binomial.  Also qpois() and
    qbinom() are better and or faster for extreme cases.  The
    underlying C code has been modularized and is common to all four
    cases of discrete distributions.
  * gap.axis is now part of the axis() arguments which are passed
    from bxp(), and hence boxplot().  (Thanks to Martin Smith's
    report and suggestions in PR#18109.)
  * .First and .Last can again be set from the site profile.
  * seq.int(from, to, *) and seq.default(..) now work better in large
    range cases where from-to is infinite where the two boundaries
    are finite.
  * all.equal(x,y) now returns TRUE correctly also when several
    entries of abs(x) and abs(y) are close to .Machine$double.xmax,
    the largest finite numeric.
  * model.frame() now clears the object bit when removing the class
    attribute of a value via na.action (PR#18100).
  * charClass() now works with multi-character strings on Windows
    (PR#18104, fixed by Bill Dunlap).
  * encodeString() on Solaris now works again in Latin-1 encoding on
    characters represented differently in UTF-8.  Support for
    surrogate pairs on Solaris has been improved.
  * file.show() on Windows now works with non-ASCII path names
    representable in the current native encoding (PR#18132).
  * Embedded R on Windows can now find R home directory via the
    registry even when installed only for the current user
    (PR#18135).
  * pretty(x) with finite x now returns finite values also in the
    case where the extreme x values are close in size to the maximal
    representable number .Machine$double.xmax.
    Also, it's been tweaked for very small ranges and when a boundary
    is close (or equal) to zero; e.g., pretty(c(0,1e-317)) no longer
    has negative numbers, currently still warning about a very small
    range, and pretty(2^-(1024 - 2^-1/(c(24,10)))) is more accurate.
  * The error message for not finding vignette files when weaving has
    correct file sizes now. (Thanks to Sebastian Meyer's PR#18154.)
  * dnbinom(20, &lt;large&gt;, 1) now correctly gives 0, and similar cases
    are more accurate with underflow precaution.  (Reported by Francisco Vera Alcivar in PR#18072.)</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635163200">- repaired https://bugzilla.suse.com/show_bug.cgi?id=1191380
  (rpmacros now go to rpmmacrodir)
- minor clean-ups in spec file</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635768000">- CHANGES IN R 4.1.2:
  C-LEVEL FACILITIES:
  * The workaround in headers R.h and Rmath.h (using namespace std;)
    for the Oracle Developer Studio compiler is no longer needed now
    C++11 is required so has been removed.  A couple more usages of
    log() (which should have been std::log()) with an int argument
    are reported on Solaris.
  * The undocumented limit of 4095 bytes on messages from the
    S-compatibility macros PROBLEM and MESSAGE is now documented and
    longer messages will be silently truncated rather than
    potentially causing segfaults.
  * If the R_NO_SEGV_HANDLER environment variable is non-empty, the
    signal handler for SEGV/ILL/BUS signals (which offers recovery
    user interface) is not set. This allows more reliable debugging
    of crashes that involve the console.
  DEPRECATED AND DEFUNCT:
  * The legacy S-compatibility macros PROBLEM, MESSAGE, ERROR, WARN,
    WARNING, RECOVER, ... are deprecated and will be hidden in R
    4.2.0. R's native interface of Rf_error and Rf_warning has long
    been preferred.
  BUG FIXES:
  * .mapply(F, dots, .) no longer segfaults when dots is not a list
    and uses match.fun(F) as always documented; reported by Andrew
    Simmons in PR#18164.
  * hist(&lt;Date&gt;, ...) and hist(&lt;POSIXt&gt;, ...)  no longer pass
    arguments for rect() (such as col and density) to axis().
    (Thanks to Sebastian Meyer's PR#18171.)
  * \Sexpr{ch} now preserves Encoding(ch). (Thanks to report and
    patch by Jeroen Ooms in PR#18152.)
  * Setting the RNG to "Marsaglia-Multicarry" e.g., by RNGkind(), now
    warns in more places, thanks to Andr'e Gillibert's report and
    patch in PR#18168.
  * gray(numeric(), alpha=1/2) no longer segfaults, fixing PR#18183,
    reported by Till Krenz.
  * Fixed dnbinom(x, size=&lt;very_small&gt;, .., log=TRUE) regression,
    reported by Martin Morgan.
  * as.Date.POSIXlt(x) now keeps names(x), thanks to Davis Vaughan's
    report and patch in PR#18188.
  * model.response() now strips an "AsIs" class typically, thanks to
    Duncan Murdoch's report and other discussants in PR#18190.
  * try() is considerably faster in case of an error and long call,
    as e.g., from some do.call().  Thanks to Alexander Kaever's
    suggestion posted to R-devel.
  * qqline(y = &lt;object&gt;) such as y=I(.), now works, see also
    PR#18190.
  * Non-integer mgp par() settings are now handled correctly in
    axis() and mtext(), thanks to Mikael Jagan and Duncan Murdoch's
    report and suggestion in PR#18194.
  * formatC(x) returns length zero character() now, rather than ""
    when x is of length zero, as documented, thanks to Davis
    Vaughan's post to R-devel.
  * removeSource(fn) now retains (other) attributes(fn).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1647000000">- CHANGES IN R 4.1.3:
  NEW FEATURES:
  * The default version of Bioconductor has been changed to 3.14.
    (This is used by setRepositories and the menus in GUIs.)
  UTILITIES:
  * R CMD check --as-cran has a workaround for a bug in versions of
    file up to at least 5.41 which mis-identify DBF files last
    changed in 2022 as executables.
  C-LEVEL FACILITIES:
  * The legacy S-compatibility macros SINGLE_* in R_ext/Constants.h
    (included by R.h) are deprecated and will be removed in R 4.2.0.
  BUG FIXES:
  * Initialization of self-starting nls() models with initialization
    functions following the pre-R-4.1.0 API (without the ...
    argument) works again for now, with a deprecation warning.
  * Fixed quoting of ~autodetect~ in Java setting defaults to avoid
    inadvertent user lookup due to leading ~, reported in PR#18231 by
    Harold Gutch.
  * substr(., start, stop) &lt;- v now treats _negative_ stop values
    correctly.  Reported with a patch in PR#18228 by Brodie Gaslam.
  * Subscripting an array x without dimnames by a
    length(dim(x))-column character matrix gave "random" non-sense,
    now an error; reported in PR#18244 by Mikael Jagan.
  * ...names() now matches names(list(...)) closely, fixing PR#18247.
  * all.equal(*, scale = s) now works as intended when length(s) &gt; 1,
    partly thanks to Michael Chirico's PR#18272.
  * print(x) for long vectors x now also works for named atomic
    vectors or lists and prints the correct number when reaching the
    getOption("max.print") limit; partly thanks to a report and
    proposal by Hugh Parsonage to the R-devel list.
  * all.equal(&lt;selfStart&gt;, *) no longer signals a deprecation
    warning.
  * reformulate(*, response=r) gives a helpful error message now when
    length(r) &gt; 1, thanks to Bill Dunlap's PR#18281.
  * Modifying globalCallingHandlers inside withCallingHandlers() now
    works or fails correctly, thanks to Henrik Bengtsson's PR#18257.
  * hist(&lt;Date&gt;, breaks = "days") and hist(&lt;POSIXt&gt;, breaks = "secs")
    no longer fail for inputs of length 1.
  * qbeta(.001, .9, .009) and similar cases now converge correctly
    thanks to Ben Bolker's report in PR#17746.
  * window(x, start, end) no longer wrongly signals "'start' cannot
    be after 'end'", fixing PR#17527 and PR#18291.
  * data() now checks that its (rarely used) list argument is a
    character vector - a couple of packages passed other types and
    gave incorrect results.
  * which() now checks its arr.ind argument is TRUE rather coercing
    to logical and taking the first element - which gave incorrect
    results in package code.
  * model.weights() and model.offset() more carefully extract their
    model components, thanks to Ben Bolker and Tim Taylor's R-devel
    post.
  * list.files(recursive = TRUE) now shows all broken symlinks
    (previously, some of them may have been omitted, PR#18296).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1650628800">- CHANGES IN R 4.2.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * The formula method of aggregate() now matches the generic in
    naming its first argument x (resolving PR#18299 by Thomas
    Soeiro).
    This means that calling aggregate() with a formula as a named
    first argument requires name formula in earlier versions of R and
    name x now, so portable code should not name the argument (code
    in many packages did).
  * Calling &amp;&amp; or || with either argument of length greater than one
    now gives a warning (which it is intended will become an error).
  * Calling if() or while() with a condition of length greater than
    one gives an error rather than a warning.  Consequently,
    environment variable _R_CHECK_LENGTH_1_CONDITION_ no longer has
    any effect.
  * Windows users should consult the WINDOWS section below for some
    profound changes including
  * Support for 32-bit builds has been dropped.
  * UTF-8 locales are used where available.
  * The default locations for the R installation and personal
    library folder have been changed.
    Thanks to Tomas Kalibera for months of work on the Windows port
    for this release.
  NEW FEATURES:
  * matrix(x, n, m) now warns in more cases where length(x) differs
    from n * m, as suggested by Abby Spurdle and Wolfgang Huber in
    Feb 2021 on the R-devel mailing list.
    This warning can be turned into an error by setting environment
    variable _R_CHECK_MATRIX_DATA_ to TRUE: R CMD check --as-cran
    does so unless it is already set.
  * Function file_test() in package utils gains tests for symlinks,
    readability and writability.
  * capabilities("libxml") is now false.
    The description of capabilities("http/ftp") now reflects that it
    refers to the default method, no longer the internal one.
  * simplify2array() gains an except argument for controlling the
    exceptions used by sapply().
  * Environment variables R_LIBS_USER and R_LIBS_SITE are both now
    set to the R system default if unset or empty, and can be set to
    NULL to indicate an empty list of user or site library
    directories.
  * The warning for axis()(-like) calls in cases of relatively small
    ranges (typically in log-scale situations) is slightly improved
    _and_ suppressed from explicit calls to .axisPars() as has always
    been the intention.
  * The contrasts setter function `contrasts&lt;-` gains an explicit
    default how.many = NULL rather than just using missing(how.many).
  * grid.pretty() gains a new optional argument n = 5.
  * There is a new function .pretty() with option bounds as a
    technical-utility version of pretty().  It and pretty() gain a
    new argument f.min with a better than back-compatible default.
  * Function grDevices::axisTicks() and related functions such as
    graphics::axis() work better, notably for the log scale; partly
    because of the pretty() improvements, but also because care is
    taken e.g., when ylim is finite but diff(ylim) is infinite.
  * nclass.FD() gains a digits option.
  * The R Mathlib internal C function bd0() (called indirectly from a
    dozen probability density and distribution functions such as
    dpois(), dbinom(), dgamma(), pgamma() _etc_) has been
    complemented by a more sophisticated and (mostly) more accurate C
    function ebd0(), currently called only by internal dpois_raw()
    improving accuracy for R level dpois() and potentially others
    calling it such as dnbinom(), dgamma() or pgamma().  (Thanks to
    Morten Welinder's PR#15628.)
  * write.ftable() gains sep = " " argument as suggested by Thomas
    Soeiro.
  * The names of the locale categories supported by R's
    Sys.getlocale() and Sys.setlocale() are now provided by variable
    .LC.categories in the base namespace.
  * The Date and POSIXt methods for hist() and the histogram method
    for plot() now also use the new default col = "lightgray" in
    consistency with the corresponding change to hist()'s default for
    R 4.0.0.
  * hist.default() gains new fuzz argument, and the histogram plot
    method no longer uses fractional axis ticks when displaying
    counts ("Frequency").
  * mapply() and hence Map() now also obey the "max-or-0-if-any"
    recycling rule, such that, e.g., Map(`+`, 1:3, 1[0]) is valid
    now.
  * as.character(&lt;obj&gt;) for "hexmode" or "octmode" objects now
    fulfils the important basic rule as.character(x)[j] ===
    as.character(x[j]).
  * The set utility functions, notably intersect() have been tweaked
    to be more consistent and symmetric in their two set arguments,
    also preserving a common mode.
  * substr(ch, start,end) &lt;- new now e.g., preserves names(ch); ditto
    for substring(), thanks to a patch from Brodie Gaslam.
  * plot(&lt;lm&gt;) gains a extend.ylim.f argument, in partial response to
    PR#15285; further PR#17784 is fixed thanks to several
    contributors and a patch by Elin Waring.  The Cook's dist
    contours get customizable via cook.col and cook.lty with a
    different default color and their legend is nicer by default and
    customizable via cook.legendChanges.
  * Attempting to subset an object that is not subsettable now
    signals an error of class notSubsettableError. The
    non-subsettable object is contained in the object field of the
    error condition.
  * Subscript-out-of-bounds errors are now signaled as errors of
    class subscriptOutOfBoundsError.
  * Stack-overflow errors are now signaled as errors inheriting from
    class stackOverflowError. See ?stackOverflowError for more
    details.
  * New partly experimental Sys.setLanguage() utility, solving the
    main problem of PR#18055.
  * gettext() and gettextf() get a new option trim = TRUE which when
    set to false allows translations for strings such as "Execution
    halted\n" typical for C code.
  * An experimental implementation of hash tables is now available.
    See ?hashtab for more details.
  * identical() gains a extptr.as.ref argument for requesting that
    external pointer objects be compared as reference objects.
  * reorder() gets an argument decreasing which it passes to sort()
    for level creation; based on the wish and patch by Thomas Soeiro
    in PR#18243.
  * as.vector() gains a data.frame method which returns a simple
    named list, also clearing a long standing 'FIXME' to enable
    as.vector(&lt;data.frame&gt;, mode="list").  This breaks code relying
    on as.vector(&lt;data.frame&gt;) to return the unchanged data frame.
  * legend() is now vectorized for arguments cex, x.intersp, and
    text.width.  The latter can now also be specified as a vector
    (one element for each column of the legend) or as NA for
    computing a proper column wise maximum value of strwidth(legend).
    The argument y.intersp can be specified as a vector with one
    entry for each row of the legend.
    legend() also gains new arguments title.cex and title.font.
    Thanks to Swetlana Herbrandt.
  * Deparsing no longer remaps attribute names dim, dimnames, levels,
    names and tsp to historical S-compatible names (which structure()
    maps back).
  * sample() and sample.int() have additional sanity checks on their
    size and n arguments.
    all.equal.numeric() gains a sanity check on its tolerance
    argument - calling all.equal(a, b, c) for three numeric vectors
    is a surprisingly common error.
    mean(na.rm =), rank(na.last =), barplot(legend.text =),
    boxplot(), contour(drawlabels =), polygon(border =) and
    methods::is(class2 =) have more robust sanity checks on their
    arguments.
    R CMD Rd2pdf (used by R CMD check) has a more robust sanity check
    on the format of \alias{} commands.
  * psigamma(x, deriv) for negative x now also works for deriv = 4
    and 5; their underlying C level dpsifn() is documented in
    'Writing R Extensions'.
  * The HTML help system now uses HTML5 (wish of PR#18149).
  * ks.test() now provides exact p-values also with ties and MC
    p-values in the two-sample (Smirnov) case.  By Torsten Hothorn.
  * ks.test() gains a formula interface, with y ~ 1 for the
    one-sample (Kolmogorov) test and y ~ group for the two-sample
    (Smirnov) test.  Contributed by Torsten Hothorn.
  * The return value from ks.test() now has class c("ks.test",
    "htest") - packages using try() need to take care to use
    inherits() and not == on the class.
  * New functions psmirnov(), qsmirnov() and rsmirnov() in package
    stats implementing the asymptotic and exact distributions of the
    two-sample Smirnov statistic.
  * iconv() now allows sub = "c99" to use C99-style escapes for UTF-8
    inputs which cannot be converted to encoding to.
  * In a forward pipe |&gt; expression it is now possible to use a named
    argument with the placeholder _ in the rhs call to specify where
    the lhs is to be inserted.  The placeholder can only appear once
    on the rhs.
  * The included LAPACK sources have been updated to version 3.10.0,
    except for the four Fortran 77 routines which 3.10.0 has
    re-implemented in Fortran 90 (where the older versions have been
    retained as the R build process does not support Fortran 90).
  * path.expand() and most other uses of tilde expansion now warn if
    a path would be too long if expanded.  (An exception is
    file.exists(), which silently returns false.)
  * trunc(&lt;Date&gt;, *) now supports units = "months" or "years" for
    consistency with the POSIXt method, thanks to Dirk Eddelbuettel's
    proposal in PR#18099.
  * list2DF() now checks that its arguments are of the same length,
    rather than use recycling.
  * The HTML help system has several new features: LaTeX-like math
    can be typeset using either KaTeX or MathJax, usage and example
    code is highlighted using Prism, and for dynamic help the output
    of examples and demos can be shown within the browser if the
    knitr package is installed. These features can be disabled by
    setting the environment variable _R_HELP_ENABLE_ENHANCED_HTML_ to
    a false value.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 15
    and so packages that provide graphics devices should be
    reinstalled.
  * The grid package now allows the user to specify a "vector" of
    pattern fills.  The fill argument to gpar() accepts a list of
    gradients and/or patterns and the functions linearGradient(),
    radialGradient(), and pattern() have a new group argument.
    Points grobs (data symbols) can now also have a pattern fill.
    The grobCoords() function now returns a more informative and
    complex result.
  * The grid package has new functions for drawing isolated groups:
    grid.group(), grid.define(), and grid.use().  These functions add
    compositing operators and affine transformations to R's graphics
    capabilities.
    The grid package also has new functions for stroking and filling
    paths: grid.stroke(), grid.fill(), and grid.fillStroke().
    A new function as.path() allows the user to specify the fill rule
    for a path that is to be used for clipping, stroking, or filling;
    available options are "winding" and "evenodd".  A new function
    as.mask() allows the user to specify the type of a mask;
    available options are "alpha" and "luminance".
    These new features are only supported so far (at most) on the
    Cairo-based graphics devices and on the pdf() device.
  * dev.capabilities() reports on device support for the new
    features.
  * par() now warns about unnamed non-character arguments to prevent
    misuse such as {usr &lt;- par("usr"); par(usr)}.
  INSTALLATION:
  * Facilities for accessing ftp:// sites are no longer tested
    (except _pro tem_ for curlGetHeaders()) as modern browsers have
    removed support.
  * R can now be built with DEFS = -DSTRICT_R_HEADERS .
  PACKAGE INSTALLATION:
  * R CMD INSTALL no longer tangles vignettes. This completes an R
    CMD build change in R 3.0.0 and affects packages built before R
    3.0.2. Such packages should be re-made with R CMD build to have
    the tangled R code of vignettes shipped with the tarball.
  * USE_FC_LEN_T will become the default: this uses the correct
    prototypes for Fortran BLAS/LAPACK routines called from C/C++,
    and requires adjustment of most such calls - see 'Writing R
    Extensions' SS6.6.2.  (This has been supported since R 3.6.2.)
  * Package installation speed for packages installed with
    keep.source has been improved. This resolve the issue reported by
    Ofek Shilon in PR#18236.
  UTILITIES:
  * R CMD check can optionally report files/directories left behind
    in home, /tmp (even though TMPDIR is set) and other directories.
    See the "R Internals" manual for details.
  * R CMD check now reports byte-compilation errors during
    installation.  These are not usually fatal but may result in
    parts of the package not being byte-compiled.
  * _R_CHECK_DEPENDS_ONLY_ can be applied selectively to examples,
    tests and/or vignettes in R CMD check: see the "R Internals"
    manual.
  * _R_CHECK_SRC_MINUS_W_IMPLICIT_ now defaults to true: recent
    versions of Apple clang on macOS have made implicit function
    declarations in C into a compilation error.
  * R CMD check --as-cran makes use of the environment variable
    AUTORECONF.  See the "R Internals" manual SS8 for further details.
  * R CMD check --use-valgrind also uses valgrind when re-building
    vignettes as some non-Sweave vignettes unhelpfully comment out
    all their code when R CMD check runs vignettes.
  * Errors in re-building vignettes (unless there are LaTeX errors)
    are reported by R CMD check as ERROR rather than WARNING when
    running vignettes has been skipped (as it frequently is in CRAN
    checks and by --as-cran).
  * R CMD Rd2pdf gains a --quiet option that is used by R CMD build
    when building the PDF package manual.
  * R CMD Rd2pdf now always runs LaTeX in batch mode, consistent with
    Texinfo &gt;= 6.7. The --batch option is ignored.
  * R CMD build and R CMD check now include the Rd file name and line
    numbers in the error message of an \Sexpr evaluation failure.
  * For packages using the \doi Rd macro (now an install-time \Sexpr)
    but no other dynamic Rd content, R CMD build now produces a
    smaller tarball and is considerably faster - skipping temporary
    package installation.
  C-LEVEL FACILITIES:
  * The non-API header R_ext/R-ftp-http.h is no longer provided, as
    the entry points it covered are now all defunct.
  * A number of non-API declarations and macro definitions have been
    moved from the installed header Rinternals.h to the internal
    header Defn.h. Packages that only use entry points and
    definitions documented to be part of the API as specified in
    'Writing R Extensions' SS6 should not be affected.
  * The macro USE_RINTERNALS no longer has any effect when compiling
    package code.  Packages which also use R_NO_REMAP will need to
    ensure that the remapped names are used for calls to API
    functions that were formerly also made available as macros.
  * The deprecated legacy S-compatibility macros PROBLEM, MESSAGE,
    ERROR, WARN, WARNING, RECOVER, ... are no longer defined in
    R_exts/RS.h (included by R.h).  Replace these by calls to
    Rf_error and Rf_warning (defined in header R_ext/Error.h included
    by R.h).
    Header R_ext/RS.h no longer includes R_ext/Error.h.
  * Header R_ext/Constants.h (included by R.h) when included from C++
    now includes the C++ header cfloat rather than the C header
    float.h (now possible as C++11 is required).
  * The legacy S-compatibility macros DOUBLE_* in R_ext/Constants.h
    (included by R.h) are deprecated.
  * The deprecated S-compatibility macros SINGLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * R_Calloc, R_Free and R_Realloc are preferred to their unprefixed
    forms and error messages now use the prefix. These forms were
    introduced in R 3.4.0 and are available even when
    STRICT_R_HEADERS is defined.
  * rmultinom has been documented in 'Writing R Extensions' SS6 so is
    now part of the R API.
  * Similarly, Rtanpi, called from R level tanpi() is now part of the
    R API.
  * The long-deprecated, undocumented and non-API entry point call_R
    is no longer declared in R_ext/RS.h (included by R.h).
  * The header S.h which has been unsupported since Jan 2016 has been
    removed.  Use R.h instead.
  DEPRECATED AND DEFUNCT:
  * The (non-default and deprecated) method = "internal" for
    download.file() and url() no longer supports http:// nor ftp://
    URIs.  (It is used only for file:// URIs.)
    On Windows, download.file(method = "wininet") no longer supports
    ftp:// URIs.  (It is no longer the default method, which is
    "libcurl" and does.)
    On Windows, the deprecated method = "wininet" now gives a warning
    for http:// and https:// URIs for both download.file() and url().
    (It is no longer the default method.)
  * On Windows, the command-line option --max-mem-size and
    environment variable R_MAX_MEM_SIZE are defunct.  The memory
    allocation limit was important for 32-bit builds, but these are
    no longer supported.
  * default.stringsAsFactors() is now formally deprecated, where that
    was only mentioned on its regular help page, previously.  So it
    now gives a warning if called.
  * unix.time() is defunct now; it had been deprecated since R 3.4.0.
  BUG FIXES:
  * Setting digits = 0 in format(), print.default() (and hence
    typically print()) or options() is again invalid.  Its behaviour
    was platform-dependent, and it is unclear what "zero significant
    digits" should mean (PR#18098).
  * Messages from C code in the cairo section of package grDevices
    are now also offered for translation, thanks to Michael Chirico's
    PR#18123.
  * mean(x) with finite x now is finite also without "long.double"
    capability.
  * R CMD Rd2pdf no longer leaves an empty build directory behind
    when it aborts due to an already existing output file.  (Thanks
    to Sebastian Meyer's PR#18141.)
  * density(x, weights = w, na.rm = TRUE) when anyNA(x) is true, now
    removes weights "in parallel" to x, fixing PR#18151, reported by
    Matthias Gondan.  Additionally, it gets a subdensity option.
  * Conversion of \Sexpr[]{&lt;expR&gt;} to LaTeX or HTML no longer
    produces long blocks of empty lines when &lt;expR&gt; itself contains
    several lines all producing empty output.  Thanks to a report and
    patch by Ivan Krylov posted to R-devel.
  * R CMD build no longer fails if a package vignette uses child
    documents and inst/doc exists.  (Thanks to Sebastian Meyer's
    PR#18156.)
  * When an R documentation ('help' source) file man/foo.Rd in a
    package has \donttest{..} examples with a syntax error, it is now
    signalled as ERROR and with correct line numbers relating to the
  * -Ex.R file, thanks to Duncan Murdoch and Sebastian Meyer's
    reports and patch proposals in PR#17501.
  * Improved determination of the correct translation domain in
    non-base packages, addressing the combination of PR#18092 and
    PR#17998 (#c6) with reports and _augmented_ patch #2904 by
    Suharto Anggono.
    Note that "R-base" is no longer the default domain e.g., for
    top-level calls to gettext(); rather translation needs explicit
    domain = * specification in such cases.
  * identical(attrib.as.set=FALSE) now works correctly with data
    frames with default row names (Thanks to Charlie Gao's PR#18179).
  * txtProgressBar() now enforces a non-zero width for argument char,
    without which no progress can be visible.
  * dimnames(table(d)) is more consistent in the case where d is a
    list with a single component, thanks to Thomas Soeiro's report to
    R-devel.
    Further, table(d1, d2) now gives an error when d1 and d2 are data
    frames as suggested by Thomas in PR#18224.
  * Fix for drawing semi-transparent lines and fills on the native
    Windows graphics device (PR#18219 and PR#16694).  Thanks to Nick
    Ray for helpful diagnosis on Bugzilla.
  * The deparser now wraps sub-expressions such as if(A) ..  with
    parentheses when needed; thanks to Duncan Murdoch's PR#18232 and
    Lionel Henry's patches there.
  * remove.packages() no longer tries to uninstall Priority: base
    packages, thanks to a report and suggestions by Colin Fay in
    PR#18227.
  * win.metafile() now has xpinch and ypinch arguments so that the
    user can override Windows' (potentially wrong) guess at device
    dimensions.
  * x[i] and x[[i]] for non-integer i should now behave in all cases
    as always documented: the index used is equivalent to
    as.integer(i) unless that would overflow where trunc(i) is used
    instead; thanks to Suharto Anggono's report and patch proposals
    in PR#17977.
  * asOneSidedFormula() now associates the resulting formula with the
    global environment rather than the evaluation environment created
    for the call.
  * &lt;bibentry&gt;$name now matches the field name case-insensitively,
    consistent with bibentry() creation and the replacement method.
  * cbind() failed to detect some length mismatches with a mixture of
    time-series and non-time-series inputs.
  * The default LaTeX style file Sweave.sty used by the RweaveLatex
    driver no longer loads the obsolete ae package; thanks to a
    report by Thomas Soeiro in PR#18271.  Furthermore, it now skips
    \usepackage[T1]{fontenc} for engines other than pdfTeX (if
    detected) or if the new [nofontenc] option is used.
  * smooth.spline() now stores its logical cv argument more safely,
    fixing a rare bug when printing, and also stores n.
  * smooth.spline(x,y,*) now computes the cv.crit statistic
    correctly, also when is.unsorted(x), fixing PR#18294.
  * The data.frame method of rbind() now warns when binding
    not-wholly-recycling vectors, by analogy to the default method
    (for matrices).
  * setAs() finds the correct class for name to when multiple
    packages define a class with that name. Thanks to Gabor Csardi
    for the report.
  * Fix for detaching a package when two classes of the same name are
    present in method signatures for the same generic. Thanks to
    Gabor Csardi for the report.
  * match.arg("", c("", "a", "B")) gives a better error message, in
    part from PR#17959, thanks to Elin Waring.
  * R CMD Sweave --clean no longer removes pre-existing files or
    subdirectories (PR#18242).
  * The quartz() device no longer splits polylines into subpaths.
    That has caused narrowly-spaced lines with many points to always
    look solid even when dashed line type was used due to dash phase
    restarts.
  * Deparsing constructs such as quote(1 + `!`(2) + 3) works again as
    before R 3.5.0, thanks to the report and patch in PR#18284 by
    Suharto Anggono.
  * as.list(f) for a factor f now keeps names(f), fixing PR#18309.
  * qbeta(.001, .9, .009) and analogous qf() calls now return a
    correct value instead of NaN or wrongly 1, all with a warning;
    thanks to the report by Ludger Goeminne in PR#18302.
  * plot.lm() failed to produce the plot of residuals vs.  factor
    levels (i.e., which=5 when leverages are constant) for models
    with character predictors (PR#17840).
  * interaction.plot(..., xtick = TRUE) misplaced the x-axis line
    (PR#18305).
  * Not strictly fixing a bug, format()ing and print()ing of
    non-finite Date and POSIXt values NaN and +/-Inf no longer show
    as NA but the respective string, e.g., Inf, for consistency with
    numeric vector's behaviour, fulfilling the wish of PR#18308.
  * R CMD check no longer runs test scripts generated from
    corresponding .Rin files twice and now signals an ERROR if
    processing an .Rin script fails.
  * tools::Rd2txt() used for plain-text help pages now renders \hrefs
    (if tools::Rd2txt_options(showURLs = TRUE)) and \urls with
    percent-encoding and standards-compliant delimiting style (angle
    brackets and no URL: prefix).  \email is now rendered with a
    mailto: prefix.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1655985600">- CHANGES IN R 4.2.1:
  NEW FEATURES:
  * New function utils::findCRANmirror() to find out if a CRAN mirror
    has been selected, otherwise fallback to the main site.  This
    behaves in the same way as tools::CRAN_package_db() and is
    intended for packages wishing to access CRAN for purposes other
    than installing packages.
    The need for this was shown by a day when the main CRAN website
    was offline and a dozen or so packages which had its URL
    hardcoded failed their checks.
  INSTALLATION on a UNIX-ALIKE:
  * The libraries searched for by --with-blas (without a value) now
    include BLIS (after OpenBLAS but before ATLAS).  And on macOS,
    the Accelerate framework (after ATLAS).  (This is patterned after
    the AX_BLAS macro from the Autoconf Archive.)
  * The included LAPACK sources have been updated to 3.10.1.
  UTILITIES:
  * The (full path to) the command tidy to be used for HTML
    validation can be set by environment variable R_TIDYCMD.
  * Setting environment variable _R_CHECK_RD_VALIDATE_RD2HTML_ to a
    false value will override R CMD check --as-cran and turn off HTML
    validation.  This provides a way to circumvent a problematic
    tidy.
    The 2006 version that ships with macOS is always skipped.
  C-LEVEL FACILITIES:
  * The undocumented legacy declarations of Sint, Sfloat, SINT_MAX
    and SINT_MIN in header R.h are deprecated.
  BUG FIXES:
  * fisher.test(d) no longer segfaults for "large" d; fixing PR#18336
    by preventing/detecting an integer overflow reliably.
  * tar(., files=*) now produces correctly the warning about invalid
    uid or gid of files, fixing PR#18344, reported by Martin Morgan.
  * tk_choose.files() with multi = FALSE misbehaved on paths
    containing spaces (PR#18334) (regression introduced in R 4.0.0).
  * sort(x, partial = ind, *) now works correctly notably for the
    non-default na.last = FALSE or TRUE, fixing PR#18335 reported by
    James Edwards.
  * Environment variable _R_CHECK_XREFS_REPOSITORIES_ is only used
    for checking .Rd cross-references in R CMD check (as documented)
    and not for other uses looking for a CRAN mirror.
  * The search for a CRAN mirror when checking packages now uses
    getOption("repos") if that specifies a CRAN mirror, even when it
    does not also specify all three Bioconductor repositories (as was
    previously required).
  * The HTML code generated by tools::Rd2HTML() has been improved to
    pass tidy 5.8.0.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1667217600">- CHANGES IN R 4.2.2:
  NEW FEATURES:
  * tools::Rdiff(useDiff = TRUE) checks for the presence of an
    external diff command and switches to useDiff = FALSE if none is
    found.  This allows R CMD Rdiff to always work.
  * On Windows, environment variable R_LIBCURL_SSL_REVOKE_BEST_EFFORT
    can be used to switch to only 'best-effort' SSL certificate
    revocation checks with the default "libcurl" download method.
    This reduces security, but may be needed for downloads to work
    with MITM proxies (PR#18379).
  * (macOS) The run-time check for libraries from XQuartz for X11 and
    Tcl/Tk no longer uses otool from the Apple Developer Tools
    (PR#18400).
  * The LaTeX style for producing the PDF manuals, Rd.sty, now loads
    the standard amsmath, amsfonts and amssymb packages for greater
    coverage of math commands in the Rd \eqn and \deqn macros.  The
    \mathscr LaTeX command is also provided (via the mathrsfs
    package, if available, or the amsfonts bundle otherwise),
    fulfilling the wish of PR#18398.
  * (Windows) The default format of readClipboard() and
    writeClipboard() has been changed to 13 (CF_UNICODETEXT).
  INSTALLATION on a UNIX-ALIKE:
  * The PDF manuals (if built) can be compacted by the new target
    make compact-pdf (at the top level or in directory doc/manual).
  * There is now configure support for LLVM clang 15 on Linux, which
    defaults to position-independent (PIE) executables whereas
    gfortran does not.
  * Many small changes to ease compilation (and suppress warnings)
    with LLVM clang 15.
  BUG FIXES:
  * Rscript -e would fail if stdin were closed (Reported by Henrik
    Bengtsson.)
  * qt(*, log.p=TRUE) in outer tails no longer produces NaN in its
    final steps, thus fixing PR#18360.
  * tools::Rd2latex() now escapes hashes and ampersands when writing
    URLs, fixing LaTeX errors with such URLs in \tabular.
  * When isGeneric(f, fdef=*) is used with mismatching names, the
    warning is better understandable; reported (with fix) in PR#18370
    by Gabe Becker.
  * poly(x, n) now works again (and is now documented) when x is a
    "Date" or "POSIXct" object, or of another class while fulfilling
    mode(x) == "numeric".  This also enables poly(x, *, raw=TRUE) for
    such variables.  Reported by Michael Chirico to R-devel.
  * write.table(), write.csv() and write.csv2() restore their
    numerical precision (internal equivalent of digits = 15) after an
    interrupt (PR#18384).
  * One can now read also byte FF from a clipboard connection
    (PR#18385).
  * source("") and source(character()) now give more helpful error
    messages.
  * R CMD check --as-cran set _R_CHECK_TIMINGS_ too late to have the
    intended effect.
  * as.POSIXlt(x) now also works with very large dates x, fixing
    PR#18401 reported by Hannes M"uhleisen.
  * Files can now be extracted even from very large zip archives
    (PR#18390, thanks to Martin Jakt).
  * Non-finite objects of class "POSIXlt" are now correctly coerced
    to classes "Date" and "POSIXct"; following up on the extension to
    format() them correctly.
  * Added methods for is.finite(), is.infinite() and is.nan() for
    "POSIXlt" date-time objects.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1678881600">- CHANGES IN R 4.2.3:
  C-LEVEL FACILITIES:
  * The definition of DL_FUNC in R_ext/Rdynload.h has been changed to
    be fully C-compliant.  This means that functions loaded _via_ for
    example R_GetCCallable need to be cast to an appropriate type if
    they have any arguments.
  * .Machine has a new element sizeof.time_t to identify old systems
    with a 32-bit type and hence a limited range of date-times (and
    limited support for dates millions of years from present).
  PACKAGE INSTALLATION:
  * (Windows) The default C++ standard had accidentally been left at
    C++11 when it was changed to C++14 on Unix.
  BUG FIXES:
  * As "POSIXlt" objects may be "partially filled" and their list
    components meant to be recycled, length() now is the length of
    the longest component.
  * as.POSIXlt.Date() could underflow for dates in the far past (more
    than half a million years BCE).
  * as.Date.POSIXlt(x) would return "1970-01-01" instead of NA in R
    4.2.2, e.g., for
    x &lt;- as.POSIXlt(c("2019-01-30","2001-1-1"))
    x$mon &lt;- c(0L, NA); as.Date(x)
  * R CMD check failed to apply enabled _R_CHECK_SUGGESTS_ONLY_ to
    examples and vignettes (regression in R 4.2.0).
  * R CMD check did not re-build vignettes in separate processes by
    default (regression in R 4.2.0).
  * Running examples from HTML documentation now restores previous
    knitr settings and options (PR#18420).
  * Quartz: fonts are now located using Core Graphics API instead of
    deprecated ATS which is no longer supported in the macOS 13 SDK
    (PR#18426).  This also addresses an issue where the currently
    used font in the Quartz device context was not correctly
    retained.
  * (Windows) Math symbols in text drawing functions are again
    rendered correctly (PR#18440).  This fixes a regression in R
    4.2.1 caused by a fix in PR#18382 which uncovered an issue in
    GraphApp due to which the symbol charset was not used with TT
    Symbol font face.
  * (Windows) Installing a package with a src/Makefile.{win,ucrt}
    file includes ~/.R/Makevars.win64 in the search for user
    makevars, as documented in "R Installation and Administration"
    and done for packages with a src/Makevars.{win,ucrt} file.
  * format(&lt;POSIXlt_w/_unbalanced_sec&gt;, "....%OS&lt;n&gt;") with n &gt; 0 no
    longer accidentally uses the unbalanced seconds, thanks to
    Suharto Anggono's report (including patch) in PR#18448.
  * solve.default(a, b) works around issues with some versions of
    LAPACK when a contains NA or NaN values.
  * When UseMethod() cannot dispatch, it no longer segfaults
    producing the error message in case of a long class(), thanks to
    Joris Vankerschaver's report (including patch) in PR#18447.
  * When example(foo, ..) produces graphics on an interactive device
    it needs to open itself, it now leaves devAskNewPage() unchanged
    even when it was FALSE, thus fixing a 14 years old '&lt;FIXME&gt;'.
  * packageDescription() again catches errors from encoding
    conversions. This also fixes broken packageVersion() in C locale
    on systems where iconv does not support transliteration.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1681128000">- add patch to build with libcurl &gt;= 8</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1682078400">- CHANGES IN R 4.3.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Calling &amp;&amp; or || with LHS or (if evaluated) RHS of length greater
    than one is now always an error, with a report of the form
    'length = 4' in coercion to 'logical(1)'
    Environment variable _R_CHECK_LENGTH_1_LOGIC2_ no longer has any
    effect.
  NEW FEATURES:
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.10.1.  (This caused some platform-dependent
    changes to package check output.)  And then to the sources from
    LAPACK version 3.11.0 (with changes only to double complex
    subroutines).
  * The included LAPACK sources have been updated to include the four
    Fortran 90 routines rather than their Fortran 77 predecessors.
    This may give some different signs in SVDs or
    eigendecompositions..  (This completes the transition to LAPACK
    3.10.x begun in R 4.2.0.)
  * The LAPACK sources have been updated to version 3.11.0.  (No new
    subroutines have been added, so this almost entirely bug fixes:
    Those fixes do affect some computations with NaNs, including R's
    NA.)
  * The parser now signals _classed_ errors, notably in case of the
    pipe operator |&gt;.  The error object and message now give line and
    column numbers, mostly as proposed and provided by Duncan Murdoch
    in PR#18328.
  * toeplitz() is now generalized for asymmetric cases, with a
    toeplitz2() variant.
  * xy.coords() and xyz.coords() and consequently, e.g., plot(x,y,
    log = "y") now signal a _classed_ warning about negative values
    of y (where log(.) is NA).  Such a warning can be specifically
    suppressed or caught otherwise.
  * Regular expression functions now check more thoroughly whether
    their inputs are valid strings (in their encoding, e.g. in
    UTF-8).
  * The performance of grep(), sub(), gsub() and strsplit() has been
    improved, particularly with perl = TRUE and fixed = TRUE.  Use of
    useBytes = TRUE for performance reasons should no longer be
    needed and is discouraged: it may lead to incorrect results.
  * apropos() gains an argument dot_internals which is used by the
    completion (help(rcompgen)) engine to also see base internals
    such as .POSIXct().
  * Support in tools::Rdiff() for comparing uncompressed PDF files is
    further reduced - see its help page.
  * qqplot(x, y, ...) gains conf.level and conf.args arguments for
    computing and plotting a confidence band for the treatment
    function transforming the distribution of x into the distribution
    of y (Switzer, 1976, _Biometrika_). Contributed by Torsten
    Hothorn.
  * Performance of package_dependencies() has been improved for cases
    when the number of dependencies is large.
  * Strings newly created by gsub(), sub() and strsplit(), when any
    of the inputs is marked as "bytes", are also marked as "bytes".
    This reduces the risk of creating invalid strings and accidental
    substitution of bytes deemed invalid.
  * Support for readLines(encoding = "bytes") has been added to allow
    processing special text files byte-by-byte, without creating
    invalid strings.
  * iconv(from = "") now takes into account any declared encoding of
    the input elements and uses it in preference to the native
    encoding.  This reduces the risk of accidental creation of
    invalid strings, particularly when different elements of the
    input have different encoding (including "bytes").
  * Package repositories in getOption("repos") are now initialized
    from the repositories file when utils is loaded (if not already
    set, e.g., in .Rprofile).  (From a report and patch proposal by
    Gabriel Becker in PR#18405.)
  * compactPDF() gets a verbose option.
  * type.convert() and hence read.table() get new option tryLogical =
    TRUE with back compatible default.  When set to false, converts
    "F" or "T" columns to character.
  * Added new unit prefixes "R" and "Q" for abbreviating
    (unrealistically large) sizes beyond 10^{27} in standard = "SI",
    thanks to Henrik Bengtsson's PR#18435.
  * as.data.frame()'s default method now also works fine with atomic
    objects inheriting from classes such as "roman", "octmode" and
    "hexmode", such fulfilling the wish of PR#18421, by Benjamin
    Feakins.
  * The as.data.frame.vector() utility now errors for wrong-length
    row.names.  It warned for almost six years, with "Will be an
    error!".
  * sessionInfo() now also contains La_version() and reports codepage
    and timezone when relevant, in both print() and toLatex() methods
    which also get new option tzone for displaying timezone
    information when locale = FALSE.
  * New function R_compiled_by() reports the C and Fortran compilers
    used to build R, if known.
  * predict(&lt;lm&gt;, newdata = *) no longer unnecessarily creates an
    offset of all 0s.
  * solve() for complex inputs now uses argument tol and by default
    checks for 'computational singularity' (as it long has done for
    numeric inputs).
  * predict(&lt;rank-deficient lm&gt;, newdata=*) now obeys a new argument
    rankdeficient, with new default "warnif", warning only if there
    are non-estimable cases in newdata.  Other options include
    rankdeficient = "NA", predicting NA for non-estimable newdata
    cases.  This addresses PR#15072 by Russ Lenth and is based on his
    original proposal and discussions in PR#16158 also by David Firth
    and Elin Waring.  Still somewhat experimental.
  * Rgui console implementation now works better with the NVDA screen
    reader when the full blinking cursor is selected.  The underlying
    improvements in cursor handling may help also other screen
    readers on Windows.
  * The drop-field control in GraphApp can now be left with the TAB
    key and all controls can be navigated in the reverse order using
    the Shift+TAB key, improving accessibility of the Rgui
    configuration editor.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now fully accurate
    (instead of to "only" minimally five digits).
  * demo(error.catching) now also shows off withWarnings() and
    tryCatchWEMs().
  * As an experimental feature the placeholder _ can now also be used
    in the rhs of a forward pipe |&gt; expression as the first argument
    in an extraction call, such as _$coef. More generally, it can be
    used as the head of a chain of extractions, such as _$coef[[2]].
  * Spaces in the environment variable used to choose the R session's
    temporary directory (TMPDIR, TMP and TEMP are tried in turn) are
    now fatal.  (On Windows the 'short path' version of the path is
    tried and used if that does not contain a space.)
  * all.equal.numeric() gets a new optional switch giveErr to return
    the numeric error as attribute.  Relatedly,
    stopifnot(all.equal&lt;some&gt;(a, b, ..)) is as "smart" now, as
    stopifnot(all.equal(....)) has been already, thus allowing
    customized all.equal&lt;Some&gt;() wrappers.
  * R on Windows is now able to work with path names longer than 260
    characters when these are enabled in the system (requires at
    least Windows 10 version 1607).  Packages should be updated to
    work with long paths as well, instead of assuming PATH_MAX to be
    the maximum length.  Custom front-ends and applications embedding
    R need to update their manifests if they wish to allow this
    feature.  See
    &lt;https://blog.r-project.org/2023/03/07/path-length-limit-on-windows&gt;
    for more information.
  * 'Object not found' and 'Missing argument' errors now give a more
    accurate error context. Patch provided by Lionel Henry in
    PR#18241.
  * The @ operator is now an S3 generic. Based on contributions by
    Tomasz Kalinowski in PR#18482.
  * New generic chooseOpsMethod() provides a mechanism for objects to
    resolve cases where two suitable methods are found for an Ops
    Group Generic. This supports experimenting with alternative
    object systems. Based on contributions by Tomasz Kalinowski in
    PR#18484.
  * inherits(x, what) now accepts values other than a simple
    character vector for argument what. A new generic, nameOfClass(),
    is called to resolve the class name from what. This supports
    experimenting with alternative object systems. Based on
    contributions by Tomasz Kalinowski in PR#18485.
  * Detection of BLAS/LAPACK in use (sessionInfo()) with FlexiBLAS
    now reports the current backend.
  * The "data.frame" method for subset() now warns about extraneous
    arguments, typically catching the use of = instead of == in the
    subset expression.
  * Calling a:b when numeric a or b is longer than one may now be
    made into an error by setting environment variable
    _R_CHECK_LENGTH_COLON_ to a true value, along the proposal in
    PR#18419 by Henrik Bengtsson.
  * density(x, weights = *) now warns if automatic bandwidth
    selection happens without using weights; new optional warnWbw may
    suppress the warning.  Prompted by Christoph Dalitz' PR#18490 and
    its discussants.
  * rm(list = *) is faster and more readable thanks to Kevin Ushey's
    PR#18492.
  * The plot.lm() function no longer produces a normal Q-Q plot for
    GLMs. Instead it plots a half-normal Q-Q plot of the absolute
    value of the standardized deviance residuals.
  * The print() method for class "summary.glm" no longer shows
    summary statistics for the deviance residuals by default.  Its
    optional argument show.residuals can be used to show them if
    required.
  * The tapply() function now accepts a data frame as its X argument,
    and allows INDEX to be a formula in that case. by.data.frame()
    similarly allows INDICES to be a formula.
  * The performance of df[j] &lt;- value (including for missing j) and
    write.table(df) has been improved for data frames df with a large
    number of columns.  (Thanks to Gabriel Becker's PR#18500,
    PR#18503 and discussants, prompted by a report from Toby Dylan
    Hocking on the R-devel mailing list.)
  * The matrix multiply operator %*% is now an S3 generic, belonging
    to new group generic matrixOps.  From Tomasz Kalinowski's
    contribution in PR#18483.
  * New function array2DF() to convert arrays to data frames,
    particularly useful for the list arrays created by tapply().
  DATES and TIMES:
  * On platforms where (non-UTC) datetimes before 1902 (or before
    1900 as with system functions on recent macOS) are guessed by
    extrapolating time zones from 1902-2037, there is a warning at
    the first use of extrapolation in a session.  (As all time zones
    post 2037 are extrapolation, we do not warn on those.)
  * (Platforms using --with-internal-tzone, including Windows and by
    default macOS). How years are printed in dates or date-times can
    be controlled by environment variable R_PAD_YEARS_BY_ZERO.  The
    default remains to pad to 4 digits by zeroes, but setting value
    no gives no padding (as used by default by glibc).
  * strftime() tries harder to determine the offset for the "%z"
    format, and succeeds on the mainstream R platforms.
  * strftime() has a limit of 2048 bytes on the string produced -
    attempting to exceed this is an error.  (Previously it silently
    truncated at 255 bytes.)
  * sessionInfo() records (and by default prints) the system time
    zone as part of the locale information.  Also, the source
    (system/internal) of the date-time conversion and printing
    functions.
  * Objects of class "POSIXlt" created in this version of R always
    have 11 components: component zone is always set, and component
    gmtoff is set for times in UTC and usually set on the (almost
    all) platforms which have C-level support, otherwise is NA.
  * There are comprehensive validity checks on the structure of
    objects of class "POSIXlt" when converting (including formatting
    and printing).  (This avoids mis-conversions of hand-crafted
    objects.)
  * There is some support for using the native date-time routines on
    macOS: this is only viable on recent versions (e.g. 12.6 and 13)
    and does get wrong some historical changes (before 1900, during
    WWII).  Use of --with-internal-tzone remains the default.
  * as.POSIXct(&lt;numeric&gt;) and as.POSIXlt(.) (without specifying
    origin) now work.  So does as.Date(&lt;numeric&gt;).
  * as.Date.POSIXct(., tz) now treats several tz values, notably
    "GMT" as equivalent to "UTC", proposed and improved by Michael
    Chirico and Joshua Ulrich in PR#17674.
  * Experimental balancePOSIXlt() utility allows using "ragged" and
    or out-of-range "POSIXlt" objects more correctly, e.g., in
    subsetting and subassignments.  Such objects are now documented.
    More experimentally, a "POSIXlt" object may have an attribute
    "balanced" indicating if it is known to be filled or fully
    balanced.
  * Functions axis.Date() and axis.POSIXct() are rewritten to gain
    better default tick locations and better default formats by using
    prettyDate(). Thanks to Swetlana Herbrandt.
  * The mapping of Windows' names for time zones to IANA's 'Olson'
    names has been updated.  When ICU is available (it is by
    default), it is used to get a mapping for the current region set
    in Windows.  This can be overridden by setting environment
    variable TZ to the desired Olson name - see OlsonNames() for
    those currently available.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 16
    and so packages that provide graphics devices should be
    reinstalled.
  * The grDevices and grid packages have new functions for rendering
    typeset glyphs, primarily: grDevices::glyphInfo() and
    grid::grid.glyph().
    Rendering of typeset glyphs is only supported so far on the
    Cairo-based graphics devices and on the pdf() and quartz()
    devices.
  * The defined behaviour for "clear" and "source" compositing
    operators (via grid::grid.group()) has been changed (to align
    better with simple interpretation of original Porter-Duff
    definitions).
  * Support for gradients, patterns, clipping paths, masks, groups,
    compositing operators, and affine transformations has been added
    to the quartz() device.
  INSTALLATION on a UNIX-ALIKE:
  * A system installation of generic LAPACK 3.10.0 or later will be
    preferred to the version in the R sources.
    configure option --with-lapack=no (equivalently --without-lapack)
    forces compilation of the internal LAPACK sources.
    If --with-lapack is not specified, a system liblapack is looked
    for and used if it reports version 3.10.0 or later and does not
    contain BLAS routines.
    Packages using LAPACK will need to be reinstalled if this changes
    to using an external library.
  * On aarch64 Linux platforms using GCC, configure now defaults to
  - fPIC (instead of -fpic), as desired in PR#18326.
  * configure now checks conversion of datetimes between POSIXlt and
    POSIXct around year 2020.  Failure (which has been seen on
    platforms missing tzdata) is fatal.
  * If configure option --with-valgrind-instrumentation is given
    value 1 or 2, option --with-system-valgrind-headers is now the
    default and ignored (with a warning).  It is highly recommended
    that the system headers are installed alongside valgrind: they
    are part of its packaging on some Linux distributions and
    packaged separately (e.g. in the valgrind-devel RPM) on others.
    configure will give a warning if they are not found.
    The system headers will be required in a future release of R to
    build with valgrind instrumentation.
  * libcurl 8.x is now accepted by configure: despite a change in
    major version number it changes neither API nor ABI.
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools43, an update of the Rtools42 toolchain.  It is
    based on gcc 12 and newer versions of MinGW-W64, binutils and
    libraries.  At this time R-devel can still be built using
    Rtools42 without changes, but when R-devel is installed via the
    installer, it will by default look for Rtools43.
  * Old make targets rsync-extsoft and 32-bit ones that are no longer
    needed have been removed.
  * Default builds (including for packages) no longer select C99.
    Thus the C standard used is the default for the compiler, which
    for the toolchain in Rtools43 is C17.  (This is consistent with
    Unix builds.)
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++17 where
    available (which it is on all currently checked platforms): if
    not C++14 or C++11 is used if available otherwise C++ is not
    supported.
  * USE_FC_LEN_T is the default: this uses the correct
    (compiler-dependent) prototypes for Fortran BLAS/LAPACK routines
    called from C/C++, and requires adjustment of many such calls -
    see 'Writing R Extensions' SS6.6.1.
  * There is initial support for C++23 as several compilers are now
    supporting -std=c++23 or -std=c++2b or similar.  As for C++20,
    there no additional configure checks for C++23 features beyond a
    check that the compiler reports a __cplusplus value greater than
    that in the C++20 standard.  C++ feature tests should be used.
  * There is support for a package to indicate the version of the C
    standard which should be used to compile it, and for the
    installing user to specify this.  In most cases R defaults to the
    C compiler's default standard which is C17 (a `bug-fix' of C11) -
    earlier versions of R or compilers may have defaulted to C99.
    Current options are:
    USE_C17 Use a standard that is at most C17.  The intention is to
    allow legacy packages to still be installed when later C
    standards become the default, including packages using new
    keywords as identifiers or with K&amp;R-style function
    declarations.  This will use C17 if available, falling back
    to C11.
    USE_C90 Use the C90 (aka C89) standard.  (As that standard did
    not require compilers to identify that version, all we can
    verify is that the compiler does not claim to be using a
    later standard.  It may accept C99 features - for example
    clang accepts // to make comments.)
    USE_C99 Use the C99 standard. This should be rarely needed - it
    avoids the few new features of C11/C17 which can be useful if
    a package assumes them if C17 is specified and they are not
    implemented.
    USE_C23 Use C23 (or in future, later).  Compiler/library support
    for C23 is still being implemented, but LLVM clang from
    15.0.0 and the upcoming GCC 13 have quite extensive support.
    These can be specified as part of the SystemRequirements field in
    the package's DESCRIPTION file or _via_ options --use-C17 and so
    on of R CMD INSTALL and R CMD SHLIB.
    For further details see "Writing R Extensions" SS1.2.5.
  * (Windows) A src/Makefile.ucrt or src/Makefile.win file is now
    included after R_HOME/etcR_ARCH/Makeconf and so no longer needs
    to include that file itself.  Installation of a package with such
    a file now uses a site Makevars file in the same way as a package
    with a src/Makevars.win file would.
  * configure is now passed crucial variables such as CC and CFLAGS
    in its environment, as many packages were not setting them (as
    documented in 'Writing R Extensions' SS1.2).
    This has most effect where configure is used to compile parts of
    the package - most often by cmake or libtool which obfuscate the
    actual compile commands used.
    Also used for configure.win and configure.ucrt on Windows.
  FORTRAN FLAGS:
  * The flag -fno-optimize-sibling-calls is no longer forced for
    gfortran 7 and later.  It should no longer be needed now using
    'hidden' character-length arguments when calling BLAS/LAPACK
    routines from C/C++ is the default even for packages.  (Unless
    perhaps packages call Fortran code from C/C++ without using R's
    headers and without allowing for these arguments.)
  C-LEVEL FACILITIES:
  * The deprecated S-compatibility macros DOUBLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * The deprecated legacy typedefs of Sint and Sfloat in header R.h
    are no longer defined, and that header no longer includes header
    limits.h from C nor climits from C++.
  * New macro CAD5R() is provided in Rinternals.h and used in a few
    places in the R sources.
  * ALTREP now supports VECSXP vectors. Contributed by Gabor Csardi
    in PR#17620.
  * The Rcomplex definition (in header R_ext/Complex.h) has been
    extended to prevent possible mis-compilation when interfacing
    with Fortran (PR#18430).  The new definition causes compiler
    warnings with static initializers such as {1, 2}, which can be
    changed to {.r=1, .i=2}.
    Using the new definition from C++ depends on compiler extensions
    supporting C features that have not been incorporated into the
    C++ standards but are available in g++ and clang++: this may
    result in C++ compiler warnings but these have been worked around
    for recent versions of common compilers (GCC, Apple/LLVM clang,
    Intel).
    It is intended to change the inclusion of header R_ext/Complex.h
    by other R headers, so C/C++ code files which make use of
    Rcomplex should include that header explicitly.
  UTILITIES:
  * R CMD check does more checking of package .Rd files, warning
    about invalid email addresses and (some) invalid URIs and noting
    empty \item labels in description lists.
  * R CMD check now also reports problems when reading package news
    in md (file NEWS.md) and (optionally) plain text (file NEWS)
    formats.
  * _R_CHECK_TIMINGS_ defaults to a value from the environment even
    for R CMD check --as-cran; this allows for exceptionally fast or
    slow platforms.
    It now applies to checking PDF and HTML versions of the manuals,
    and 'checking CRAN incoming feasibility'.
  * R CMD check can optionally (but included in --as-cran) check
    whether HTML math rendering _via_ KaTeX works for the package .Rd
    files.
  * Non-interactive debugger invocations can be trapped by setting
    the environment variable _R_CHECK_BROWSER_NONINTERACTIVE_ to a
    true value.  This is enabled by R CMD check --as-cran to detect
    the use of leftover browser() statements in the package.
  * The use of sprintf and vsprintf from C/C++ has been deprecated in
    macOS 13 and is a known security risk.  R CMD check now reports
    (on all platforms) if their use is found in compiled code:
    replace by snprintf or vsnprintf respectively. [*NB:* whether
    such calls get compiled into the package is platform-dependent.]
  * Where recorded at installation, R CMD check reports the C and
    Fortran compilers used to build R.
    It reports the OS in use (if known, as given by osVersion) as
    well as that R was built for.
    It notes if a C++ standard was specified which is older than the
    current default: many packages have used C++11 to mean 'not
    C++98' - as C++11 is the minimum supported since R 4.0.0, that
    specification can probably be removed.
  * R CMD INSTALL reports the compilers (and on macOS, the SDK) used,
    and this is copied to the output of R CMD check.
    Where a C++ standard is specified, it is reported.
  * R CMD check's 'checking compilation flags in Makevars' has been
    relaxed to accept the use of flags such as -std=f2008 in
    PKG_FFLAGS.
  * tools::buildVignettes() has a new argument skip, which is used by
    R CMD check to skip (and note) vignettes with unavailable
    \VignetteDepends (PR#18318).
  * New generic .AtNames() added to enable class-specific completions
    after @. The formerly internal function findMatches() is now
    exported, mainly for use in methods for .DollarNames() and
    .AtNames().
  DEPRECATED AND DEFUNCT:
  * default.stringsAsFactors() is defunct.
  * Calling as.data.frame.&lt;class&gt;() directly (for 12 atomic classes)
    is going to be formally deprecated, currently activated by
    setting the environment variable
    _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ to non-empty, which also
    happens in R CMD check --as-cran.
  BUG FIXES:
  * Hashed environments with sizes less than 5 can now grow.
    (Reported to R-devel by Duncan Garmonsway.)
  * as.character(&lt;Rd&gt;, deparse = TRUE) failed to re-escape curly
    braces in LaTeX-like text.  (Reported by Hadley Wickham in
    PR#18324.)
  * library() now passes its lib.loc argument when requiring Depends
    packages; reported (with fix) in PR#18331 by Mikael Jagan.
  * R CMD Stangle: improved message about 'Output' files.
  * head(x, n) and tail(x, n) now signal an error if n is not
    numeric, instead of incidentally "working" sometimes returning
    all of x.  Reported and discussed by Colin Fay, in PR#18357.
  * The "lm" method for summary() now gives the correct F-statistic
    when the model contains an offset.  Reported in PR#18008.
  * C() and `contrasts&lt;-`() now preserve factor level names when
    given a function object (as opposed a function name which did
    preserve names). Reported in PR#17616.
  * c(a = 1, 2)[[]] no longer matches 2 but rather signals a
    _classed_ error.  Reported and analysed by Davis Vaughan in
    PR#18367, a duplicate of PR#18004, by Jan Meis et al.  For
    consistency, NULL[[]] is also erroneous now.  x[[]] &lt;- v gives an
    error of the same class "MissingSubscriptError".
  * The relist() function of utils now supports NULL elements in the
    skeleton (PR#15854).
  * ordered(levels = *) (missing x) now works analogously to factor(,
    ordered=TRUE); reported (with fix) by Achim Zeileis in PR#18389.
  * User-defined Rd macro definitions can now span multiple lines,
    thanks to a patch from Duncan Murdoch. Previously, the Rd parser
    silently ignored everything after the first line.
  * Plain-text help (tools::Rd2txt()) now preserves an initial blank
    line for text following description list items.
  * tools::Rd2HTML() and tools::Rd2latex() no longer split \arguments
    and \value lists at Rd comments.
  * tools::Rd2latex() now correctly handles optional text outside
    \items of argument lists as well as bracketed text at the
    beginning of sections, e.g., \value{[NULL]}.
  * as.character(&lt;POSIXt&gt;) now behaves more in line with the methods
    for atomic vectors such as numbers, and is no longer influenced
    by options().  Ditto for as.character(&lt;Date&gt;).  The
    as.character() method gets arguments digits and OutDec with
    defaults _not_ depending on options().  Use of as.character(*,
    format = .) now warns.
  * Similarly, the as.character.hexmode() and *.octmode() methods
    also behave as good citizen methods and back compatibility option
    keepStr = TRUE.
  * The as.POSIXlt(&lt;POSIXlt&gt;) and as.POSIXct(&lt;POSIXct&gt;) default
    methods now do obey their tz argument, also in this case.
  * as.POSIXlt(&lt;Date&gt;) now does apply a tz (time zone) argument, as
    does as.POSIXct(); partly suggested by Roland Fuss on the R-devel
    mailing list.
  * as.Date.POSIXlt(x) now also works when the list components are of
    unequal length, aka "partially filled" or "ragged".
  * expand.model.frame() looked up variables in the wrong environment
    when applied to models fitted without data.  Reported in
    PR#18414.
  * time() now (also) uses the ts.eps = getOption("ts.eps") argument
    and thus by default rounds values very close to the start (or
    end) of a year.  Based on a proposal by Andre"i V. Kostyrka on
    R-help.
  * Printing of a factanal() result with just one factor and sort =
    TRUE now works regularly, fixing PR#17863 by Timothy Bates,
    thanks to the 'R Contributors' working group.
  * Printing 0-length objects of class "factor", "roman", "hexmode",
    "octmode", "person", "bibentry", or "citation" now prints
    something better, one of which fixes PR#18422, reported by
    Benjamin Feakins.
  * Sys.timezone() queries timedatectl only if systemd is loaded;
    addressing a report by Jan Gorecki in PR#17421.
  * The formula method of cor.test() had scoping problems when
    environment(formula) was not the calling environment; reported
    with a patch proposal by Mao Kobayashi in PR#18439.
  * attach() of an environment with active bindings now preserves the
    active bindings.  Reported by Kevin Ushey in PR#18425.
  * BLAS detection now works also with system-provided libraries not
    available as regular files.  This fixes detection of the
    Accelerate framework on macOS since Big Sur.  Reported by David
    Novgorodsky.
  * download.file() gives a helpful error message in case of an
    invalid download.file.method option, thanks to Colin Fay's report
    in PR#18455.
  * Sporadic crashes of Rterm when using completion have been fixed.
  * Rprof() is now more reliable.  A livelock in thread
    initialization with too short sampling interval has been fixed on
    macOS.  A deadlock in using the C runtime has been fixed on
    Windows.  A potential deadlock has been prevented on Unix.
  * Cursor placement in Rgui now works even after a fixed-width font
    is selected.
  * Mandatory options (options()) are now set on startup so that
    saving and restoring them always works (PR#18372).
  * Package installation, R CMD INSTALL or install.packages(*), now
    parses each of the &lt;pkg&gt;/R/*.R files individually instead of
    first concatenating and then parse()ing the large resulting file.
    This allows parser or syntax errors to be diagnosed with correct
    file names and line numbers, thanks to Simon Dedman's report and
    Bill Dunlap's patch in PR#17859.
    This _does_ require syntactically self contained R source files
    now, fixing another inadvertent bug.
  * predict.lm(&lt;model with offset&gt;) now finds the offset in the
    correct environment, thanks to Andr'e Gillibert's report and patch
    in PR#18456.
  * getInitial(&lt;formula&gt;) now finds the selfStart model in the
    correct environment.  (Reported by Ivan Krylov in PR#18368.)
  * Fix for possible segfault when using recently-added graphics
    features, such as gradients, clipping paths, masks, and groups
    with pdf(file=NULL).
  * class(m) &lt;- class(m) no longer changes a matrix m by adding a
    class _attribute_.
  * packageDate(pkg) now only warns once if there is no pkg.
  * When ts() creates a multivariate time series, "mts", it also
    inherits from "array" now, and is.mts() is documented _and_
    stricter.
  * Rd2txt() now preserves line breaks of \verb Rd content and from
    duplicated \cr.  The former also fixes the rendering of verbatim
    output from Rd \Sexpr in plain-text help.
  * uniroot(f, interval) should no longer wrongly converge _outside_
    the interval in some cases where abs(f(x)) == Inf for an x at the
    interval boundary, thanks to posts by Ben Bolker and Serguei
    Sokol on R-devel.
  * Vectorized alpha handling in palette functions such as in gray(),
    rainbow(), or hcl.colors() works correctly now, thanks to Achim
    Zeileis' report and patch in PR#18476.
  * Formatting and print()ing of bibentry objects has dropped the
    deprecated citation.bibtex.max argument, such that the bibtex
    argument's default for print.bibentry() depends directly on the
    citation.bibtex.max option, whereas in format.bibentry() the
    option no longer applies.
  * Attempting to use a character string naming a foreign function
    entry point in a foreign function call in a package will now
    signal an error if the packages has called R_forceSymbols to
    specify that symbols must be used.
  * An error in table() could permanently set options(warn=2)
    promoting all subsequent warnings to errors.
  * The sigma() function gave misleading results for binary GLMs.  A
    new method for objects of class "glm" returns the square root of
    the estimate of the dispersion parameter using the same
    calculation as summary.glm().
  * bs() and ns() in the (typical) case of automatic knot
    construction, when some of the supposedly inner knots coincide
    with boundary knots, now moves them inside (with a warning),
    building on PR#18442 by Ben Bolker.
  * R CMD on Windows now skips the site profile with --no-site-file
    and --vanilla even when R_PROFILE is set (PR#18512, from Kevin
    Ushey).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1686916800">- CHANGES IN R 4.3.1:
  C-LEVEL FACILITIES:
  * The C-level API version of R's integrate(), Rdqags() in Applic.h,
    now returns the correct number of integrand evaluations neval,
    fixing PR#18515 reported and diagnosed by Stephen Wade.
  * The C prototypes for LAPACK calls dspgv and dtptrs in
    R_exts/Lapack.h had one too many and one too few character length
    arguments - but this has not caused any known issues. To get the
    corrected prototypes, include
    [#]include &lt;Rconfig.h&gt; // for PR18534fixed
    [#]ifdef PR18534fixed
    [#] define usePR18534fix 1
    [#]endif
    [#]include &lt;R_exts/Lapack.h&gt;
    in your C/C++ code (PR#18534).
  INSTALLATION:
  * Many of the checks of esoteric Internet operations and those
    using unreliable external sites have been moved to a new target
    that is not run by default and primarily intended for the core
    developers.  To run them use
    cd tests; make test-Internet-dev
  BUG FIXES:
  * .S3methods(), typically called from methods(), again marks
    methods from package base as visible.
    Also, the visibility of non-base methods is again determined by
    the method's presence in search().
  * tools::Rdiff() is now more robust against invalid strings, fixing
    installation tests on Windows without Rtools installed
    (PR#18530).
  * Fix (new) bug in hcl.colors(2, *), by Achim Zeileis (PR#18523).
  * head(., &lt;illegal&gt;) and tail(..) now produce more useful "Error in
    ...." error messages, fixing PR#18362.
  * Package code syntax on Windows is checked in UTF-8 when UTF-8 is
    the native encoding.
  * na.contiguous(x) now also returns the first run, when it is at
    the beginning and there is a later one of the same length;
    reported to R-devel, including a fix, by Georgi Boshnakov.
    Further, by default, it modifies only an existing attr(*,"tsp")
    but otherwise no longer sets one.
  * chol(&lt;not pos.def&gt;, pivot = &lt;T|F&gt;) now gives a correct error or
    warning message (depending on pivot), thanks to Mikael Jagan's
    (PR#18541).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1699012800">- CHANGES IN R 4.3.2:
  NEW FEATURES:
  * The default initialization of the "repos" option from the
    repositories file at startup can be skipped by setting
    environment variable R_REPOSITORIES to NULL such that
    getOption("repos") is empty if not set elsewhere.
  * qr.X() is now an implicit S4 generic in methods.
  * iconv(to = "ASCII//TRANSLIT") is emulated using substitution on
    platforms which do not support it (notably Alpine Linux).  This
    should give a human-readable conversion in ASCII on all platforms
    (rather than NA_character_).
  * trans3d() gains options continuous and verbose addressing the
    problem of possible "wrap around" when projecting too long
    curves, as reported by Achim Zeileis in PR#18537.
  * tools::showNonASCII() has been rewritten to work better on macOS
    14 (which has a changed implementation of iconv()).
  * tiff(type = "quartz") (the default on macOS) now warns if
    compression is specified: it continues to be ignored.
  INSTALLATION on a UNIX-ALIKE:
  * There is some support for building with Intel's LLVM-based
    compilers on x86_64 Linux, such as (C) icx, (C++) ipcx and
    (Fortran) ifx from oneAPI 2023.x.y.
  * There is support for using LLVM's flang-new as the Fortran
    compiler from LLVM 16.0.x (preferably 17.0.0 or later).
  UTILITIES:
  * R CMD check reports the use of the Fortran 90 random number
    generator RANDOM_NUMBER() and the subroutines to initialize it.
    'Writing R Extensions' has example code to use R's RNGs from
    Fortran.
  BUG FIXES:
  * substr(x, n, L) &lt;- cc now works (more) correctly for multibyte
    UTF-8 strings x when L &gt; nchar(x), thanks to a report and patch
    by 'Architect 95'.
  * contrib.url(character()) now returns 0-length character() as
    documented, which also avoids spurious warnings from
    available.packages() et al. in the edge case of an empty vector
    of repository URLs.
  * readChar(., 4e8) no longer fails, thanks to Kodi Arfer's report
    (PR#18557).
  * lapply(&lt;list&gt;, as.data.frame) no longer warns falsely for some
    base vector components.
  * Communication between parent and child processes in the multicore
    part of parallel could fail on platforms that do not support an
    arbitrarily large payload in system functions read()/write() on
    pipes (seen on macOS where a restriction to INT_MAX bytes is
    documented, without doing a partial read unlike Linux). The
    payload is now split into 1Gb chunks to avoid that problem.
    (PR#18571)
  * qqplot(x,y, conf.level=.) gives better confidence bounds when
    length(x) != length(y), thanks to Alexander Ploner's report and
    patch proposal (PR#18557).
  * norm(&lt;0-length&gt;, "2") now gives zero instead of an error, as all
    the other norm types, thanks to Mikael Jagan's PR#18542.
  * Build-stage Rd macros \packageAuthor and \packageMaintainer now
    process Authors@R, fixing NA results when the package DESCRIPTION
    omits Author and Maintainer fields.
  * Formatting and printing complex numbers could give things like
    0.1683-0i because of rounding error: -0i is now replaced by +0i.
  * postscript() refused to accept a title comment containing the
    letter "W" (PR#18599).
  * isoreg(c(1,Inf)) signals an error instead of segfaulting, fixing
    PR#18603.
  * tiff(type = "Xlib") was only outputting the last page of
    multi-page plots.
  * tools::latexToUtf8() again knows about \~{n} and other letters
    with tilde, fixing a regression in R 4.3.0, and about \^{i} as an
    alternative to \^{\i} (similarly with other accents).
    Furthermore, LaTeX codes for accented I letters are now correctly
    converted, also fixing related mistakes in
    tools::encoded_text_to_latex().
  * tar(*, tar = "internal") no longer creates out-of-spec tar files
    in the very rare case of user or group names longer than 32
    bytes, fixing PR#17871 with thanks to Ivan Krylov.
  * When using the "internal" timezone datetime code, adding a
    fraction of a second no longer adds one second, fixing PR#16856
    from a patch by Ivan Krylov.
  * tools::checkRd() no longer produces spurious notes about
    "unnecessary braces" from multi-line Rd results of \Sexpr macros.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1709208000">- CHANGES IN R 4.3.3:
  NEW FEATURES:
  * iconv() now fixes up variant encoding names such as "utf8"
    case-insensitively.
  DEPRECATED AND DEFUNCT:
  * The legacy encoding = "MacRoman" is deprecated in pdf() and
    postscript(): support was incomplete in earlier versions of R.
  BUG FIXES:
  * Arguments are now properly forwarded to methods on S4 generics
    with ... in the middle of their formal arguments. This was broken
    for the case when a method introduced an argument but did not
    include ... in its own formals. Thanks to Herv'e Pag`es for the
    report PR#18538.
  * Some invalid file arguments to pictex(), postscript() and xfig()
    opened a file called NA rather than throw an error.  These
    included postscript(NULL) (which some people expected to work
    like pdf(NULL)).
  * Passing filename = NA to svg(), cairo_pdf(), cairo_ps() or the
    Cairo-based bitmap devices opened a file called NA: it now throws
    an error.
  * quartz(file = NA) opened a file called NA, including when used as
    a Quartz-based bitmap device.  It now gives an error.
  * rank(&lt;long vector&gt;) now works, fixing PR#18617, thanks to Ilia
    Kats.
  * seq.int() did not adequately check its length.out argument.
  * match(&lt;POSIXct&gt;, .) is correct again for differing time zones,
    ditto for "POSIXlt", fixing PR#18618 reported by Bastian Klein.
  * drop.terms(*, dropx = &lt;0-length&gt;) now works, fixing PR#18563 as
    proposed by Mikael Jagan.
  * drop.terms(*) keeps + offset(.) terms when it should, PR#18565,
    and drop.terms() no longer makes up a response, PR#18566, fixing
    both bugs thanks to Mikael Jagan.
  * getS3method("t", "test") no longer finds the t.test() function,
    fixing PR#18627.
  * pdf() and postscript() support for the documented Adobe encodings
    "Greek" and "Cyrilllic" was missing (although the corresponding
    Windows' codepages could be used).
  * Computations of glyph metric information for pdf() and
    postscript() did not take into account that transliteration could
    replace one character by two or more (only seen on macOS 14) and
    typically warned that the information was not known.
  * rank(x) no longer overflows during integer addition, when
    computing rank average for largish but not-yet long vector x,
    fixing PR#18630, thanks to Ilia Kats.
  * list.files() on Windows now returns also files with names longer
    that 260 bytes (the Windows limit is 260 characters).
    Previously, some file names particularly with 'East Asian'
    characters were omitted.
  * cov2cor(&lt;0 x 0&gt;) now works, fixing PR#18423 thanks to Mikael
    Jagan and Elin Waring.
  * cov2cor(&lt;negative diagonal&gt;) and similar now give one warning
    instead of two, with better wording, fixing PR#18424 thanks to
    Mikael Jagan.
  * tools:: startDynamicHelp() now ensures port is in proper range,
    fixing PR#18645.
  * pbeta(x, a,b) is correct now for x=0 or 1 in the boundary cases
    where a or b or both are 0, fixing PR#18672 thanks to Michael
    Fay.
  * pmatch(x, table) for large table, also called for data frame row
    selection, dfrm[nm, ], is now interruptible, fixing PR#18656.
  * predict(&lt;rank-deficient lm&gt;, newdata=*) fix computing of nbasis,
    see Russ Lenth's comment 29 in PR#16158.
  * Added a work-around for a bug in macOS 14.3.1 and higher which
    prevents R plots in the Quartz Cocoa device from updating on
    screen.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1713960000">- CHANGES IN R 4.4.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Startup banners, R --version, sessionInfo() and R CMD check no
    longer report (64-bit) as part of the platform as this is almost
    universal - the increasingly rare 32-bit platforms will still
    report (32-bit).
    On Windows, ditto for window titles.
  * is.atomic(NULL) now returns FALSE, as NULL is not an atomic
    vector.  Strict back-compatibility would replace is.atomic(foo)
    by (is.null(foo) || is.atomic(foo)) but should happen only
    sparingly.
  NEW FEATURES:
  * The confint() methods for "glm" and "nls" objects have been
    copied to the stats package.  Previously, they were stubs which
    called versions in package MASS. The MASS namespace is no longer
    loaded if you invoke (say) confint(glmfit).  Further, the "glm"
    method for profile() and the plot() and pairs() methods for class
    "profile" have been copied from MASS to stats.  (profile.nls()
    and plot.profile.nls() were already in stats.)
  * The confint() and profile methods for "glm" objects have gained a
    possibility to do profiling based on the Rao Score statistic in
    addition to the default Likelihood Ratio. This is controlled by a
    new test = argument.
  * The pairs() method for "profile" objects has been extended with a
    which = argument to allow plotting only a subset of the
    parameters.
  * The "glm" method for anova() computes test statistics and
    p-values by default, using a chi-squared test or an F test
    depending on whether the dispersion is fixed or free.  Test
    statistics can be suppressed by giving argument test a false
    logical value.
  * In setRepositories() the repositories can be set using their
    names via name = instead of index ind =.
  * methods() and .S3methods() gain a all.names option for the (rare)
    case where functions starting with a . should be included.
  * Serializations can now be interrupted (e.g., by Ctrl-C on a
    Unix-alike) if they take too long, e.g., from save.image(),
    thanks to suggestions by Ivan Krylov and others on R-devel.
  * New startup option --max-connections to set the maximum number of
    simultaneous connections for the session.  Defaults to 128 as
    before: allowed values up to 4096 (but resource limits may in
    practice restrict to smaller values).
  * R on Windows (since Windows 10 2004) now uses the new Segment
    Heap allocator. This may improve performance of some
    memory-intensive applications.
  * When R packages are built, typically by R CMD build &lt;pkg&gt;, the
    new --user=&lt;build_user&gt; option overrides the (internally
    determined) user name, currently Sys.info()["user"] or LOGNAME.
    This is a (modified) fulfillment of Will Landau's suggestion in
    PR#17530.
  * tools::testInstalledBasic() gets new optional arguments outDir
    and testSrcdir, e.g., allowing to use it in a &lt;builddir&gt; !=
    &lt;srcdir&gt; setup, and in standard "binary" Windows installation
  * if* a source tests/ folder is present.
  * range(&lt;DT_with_Inf&gt;, finite = TRUE) now work for objects of class
    "Date", "POSIXct", and "POSIXlt" with infinite entries,
    analogously to range.default(), as proposed by Davis Vaughan on
    R-devel.  Other range()-methods can make use of new function
    .rangeNum().
  * New .internalGenerics object complementing .S3PrimitiveGenerics,
    for documentation and low-level book-keeping.
  * grid() now invisibly returns the x- and y- coordinates at which
    the grid-lines were drawn.
  * norm(., type) now also works for complex matrices.
  * kappa(., exact = TRUE, norm = *) now works for all norms and also
    for complex matrices.  In symmetric / triangular cases, the new
    argument uplo = "U" | "L" allows the upper or lower triangular
    part to be specified.
  * memDecompress(type = "unknown") recognizes compression in the
    default 'zlib' format as used by memCompress(type = "gzip").
  * memCompress() and memDecompress() will use the libdeflate library
    (&lt;https://github.com/ebiggers/libdeflate&gt;) if installed.  This
    uses the same type of compression for type = "gzip" but is 1.5-2x
    faster than the system libz library on some common platforms: the
    speed-up may depend on the library version.
  * diff() for objects of class "Date", "POSIXct", and "POSIXlt"
    accepts a units argument passed via ....
  * Dynamic help now does a much better job of rendering package
    DESCRIPTION metadata.
  * Rprof() gains an event argument and support for elapsed (real)
    time profiling on Unix (PR#18076).
  * filled.contour() gains a key.border argument.
  * tools::update_pkg_po() gets arguments pot_make and mo_make for
    _not_ re-making the corresponding files, and additionally a
    verbose argument.
  * Hexadecimal string colour specifications are now accepted in
    short form, so, for example, we can use "#123", which is
    equivalent to "#112233".
    Thanks to MikeFC for the original idea and Ella Kaye, Malcolm
    Barrett, George Stagg, and Hanne Oberman for the patch.
  * Plain-text help shows \var markup by angle brackets.
  * The new experimental primitive function declare() is intended to
    eventually allow information about R code to be communicated to
    the interpreter, compiler, and code analysis tools. The syntax
    for declarations is still being developed.
  * Functions psmirnov(), qsmirnov() and rsmirnov() in package stats
    have had argument two.sided renamed to alternative, to take into
    account that the permutation distributions of the one-sided
    statistics can be different in the case of ties.  Consequence of
    PR#18582.
  * sort() is now an implicit S4 generic in methods.
  * Formatting and printing, format(z), print(z), of complex vectors
    z no longer zap relatively small real or imaginary parts to zero,
    fixing PR#16752.  This is an API change, as it was documented
    previously to round real and imaginary parts together on purpose,
    producing nicer looking output.  As mentioned, e.g. in the PR,
    this change is compatible with many other "R-like" programming
    environments.
    We have simplified the internal code and now basically format the
    real and imaginary parts independently of each other.
  * New experimental functions Tailcall() and Exec() to support
    writing stack-space-efficient recursive functions.
  * Where characters are attempted to be plotted by pdf(),
    postscript() and xfig() which are not in the selected 8-bit
    character set (most often Latin-1) and the R session is using a
    UTF-8 locale, the warning messages will show the UTF-8 character
    rather than its bytes and one dot will be substituted per
    character rather than per byte.  (Platforms whose iconv() does
    transliteration silently plot the transliteration.)
    In a UTF-8 locale some transliterations are now done with a
    warning (e.g., dashes and Unicode minus to hyphen, ligatures are
    expanded, permille (‰) is replaced by o/oo), although the OS may
    have got there first.  These are warnings as they will continue
    to be replaced by dots in earlier versions of R.
  * The matrix multiplication functions crossprod() and tcrossprod()
    are now also primitive and S3 generic, as %*% had become in R
    4.3.0.
  * source() and example() have a new optional argument catch.aborts
    which allows continued evaluation of the R code after an error.
  * The non-Quartz tiff() devices allow additional types of
    compression if supported by the platform's libtiff library.
  * The list of base and recommended package names is now provided by
    tools::standard_package_names().
  * cairo_pdf() and cairo_ps() default to onefile = TRUE to closer
    match pdf() and postscript().
  * New option catch.script.errors provides a documented way to catch
    errors and then continue in non-interactive use.
  * L %||% R newly in base is an expressive idiom for the phrases
    if(!is.null(L)) L else R or if(is.null(L)) R else L.
  * The return value from warnings() now always inherits from
    "warnings" as documented, now also in the case of no warnings
    where it previously returned NULL.
  * as.complex("1i") now returns 0 + 1i instead of NA with a warning.
  * z &lt;- c(NA, 1i) now keeps the imaginary part Im(z[1]) == 0, no
    longer coercing to NA_complex_.  Similarly, cumsum(z) correctly
    sums real and imaginary parts separately, i.e., without
    "crosstalk" in case of NAs.
  * On Alpine Linux iconv() now maps "latin2", "latin-2", "latin9"
    and "latin-9" to encoding names the OS knows about
    (case-insensitively).
  * iconv(sub = "Unicode") now always zero-pads to four (hex) digits,
    rather than to 4 or 8.  (This seems to have become the convention
    once Unicode restricted the number of Unicode points to 2^21 - 1
    and so will never need more than 6 digits.)
  * NCOL(NULL) now returns 0 instead of 1, for consistency with
    cbind().
  * The information for the Euro glyph missing from the Adobe .afm
    files for the Courier, Helvetica and Times families has been
    copied from their URW equivalents - this will improve vertical
    centring in the pdf() and postscript() devices.
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.12.0.  The changes are almost entirely cosmetic.
  * The included LAPACK sources have been updated to version 3.12.0
    and some further double-complex routines added.
  * There are new font families for the 2014--5 URW 2.0 fonts (see
    ?pdf) which are included in recent versions of Ghostscript.
    These have font widths for most Greek glyphs and a few others
    which were missing from the original versions (whose font
    families remain available for reproducibility, although
    Ghostscript-based viewers will render using the 2.0 versions).
  * Improve the large-n efficiency of as.matrix(&lt;dist&gt;), thanks an R
    contributors effort, notably by Tim Taylor and Heather Turner,
    see PR#18660.
  * The default and numeric methods of all.equal() get a check.class
    option.
  * zapsmall() gets new optional arguments, function mFUN and min.d,
    for extra flexibility; fulfills a wish in PR#18199.  Also, it is
    now an implicit S4 generic in package methods.
  * The Rd filter for aspell() gains an ignore argument.
  * New generic function sort_by(), primarily useful for the
    data.frame method which can be used to sort rows of a data frame
    by one or more columns.
  * The icence headers for the RPC code in src/extra/xdr have been
    updated to use the GPL-compatible licence published by Oracle
    America in 2010.
  * New function pkg2HTML() in tools to create single-page HTML
    reference manuals for R packages.
  * The byte code evaluator now uses less C stack space for recursive
    calls to byte-compiled functions. It also makes more of an effort
    to avoid allocations for scalar return values.
  * New completion option backtick (disabled by default) allows
    non-syntactic completions to be wrapped in backquotes. This is
    currently only useful for Jupyter notebooks via the IRkernel
    package, and may cause problems for other backends.
  INSTALLATION:
  * The parser has been updated to work with bison 3.8.2, which is
    now used for the pre-generated parsers in gram.c, file.c, and
    gramRd.c. A few parser error messages have changed, which may
    affect code that relies on exact messages.
  INSTALLATION on a UNIX-ALIKE:
  * System valgrind headers are now required to use configure option
  - -with-valgrind-instrumentation with value 1 or 2.
  * configure will warn if it encounters a 32-bit build, as that is
    nowadays almost untested.
  * Environment variable R_SYSTEM_ABI is no longer used and so no
    longer recorded in etc/Renviron (it was not on Windows and was
    only ever used when preparing package tools).
  * If the libdeflate library and headers are available, libdeflate
    rather than libz is used to (de)compress R objects in lazy-load
    databases.  Typically tasks spend up to 5% of their time on such
    operations, although creating lazy-data databases is one of the
    exceptions.
    This can be suppressed if the library is available by the
    configure option --without-libdeflate-compression.
  * configure option --enable-lto=check has not worked reliably since
    2019 and has been removed.
  * The minimum autoconf requirement for a maintainer build has been
    increased to autoconf 2.71.
    It is intended to increase this to 2.72 for R 4.5.0: the
    distributed configure file was generated using 2.72.
  * The minimum version requirement for an external LAPACK has been
    reduced to 3.9.0.
  * No default C++ compiler is set if no C++17 compiler is detected:
    there is no longer an automatic fallback to C++14 or C++11.
    Compilers from the last five years should have sufficient
    support: for others macros CXX and CXXSTD can be set in file
    config.site to provide a fallback if needed.
    The Objective-C++ compiler now by default uses the standard
    selected by R for C++ (currently C++17) rather than the default
    standard for the C++ compiler (which on macOS is still C++98).
  INSTALLATION on macOS:
  * A new configure option --with-newAccelerate makes use of Apple's
    'new' BLAS / LAPACK interfaces in their Accelerate framework.
    Those interfaces are only available in macOS 13.3 or later, and
    building requires SDK 13.3 or later (from the Command Line Tools
    or Xcode 14.3 or later).
    By default the option uses new Accelerate for BLAS calls: to also
    use it for LAPACK use option --with-newAccelerate=lapack.  The
    later interfaces provide LAPACK 3.9.1 rather than 3.2.1: 3.9.1 is
    from 2021-04 and does not include the improved algorithms
    introduced in LAPACK 3.10.0 (including for BLAS calls).
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools44, an update of the Rtools43 toolchain.  It is
    based on GCC 13 and newer versions of MinGW-W64, binutils and
    libraries (targeting 64-bit Intel CPUs).  R-devel can no longer
    be built using Rtools43 without changes.
  * Rtools44 has experimental support for 64-bit ARM (aarch64) CPUs
    _via_ the LLVM 17 toolchain using lld, clang/flang-new and
    libc++.
  UTILITIES:
  * R CMD check notes when S4-style exports are used without
    declaring a strong dependence on package methods.
  * tools::checkRd() (used by R CMD check) detects more problems with
    \Sexpr-based dynamic content, including bad nesting of \Sexprs
    and invalid arguments.
  * tools::checkRd() now reports Rd titles and section names ending
    in a period; this is ignored by R CMD check unless environment
    variable _R_CHECK_RD_CHECKRD_MINLEVEL_ is set to -5 or smaller.
  * R CMD check now notes Rd files without an \alias, as long
    documented in 'Writing R Extensions' §1.3.1.  The check for a
    missing \description has been moved from tools::checkRd() to
    tools::checkRdContents().
  * R CMD check now visits inst/NEWS.Rd and OS-specific man
    subdirectories when checking Rd files.
  * tools::checkDocFiles() and tools::checkRdContents() now also
    check internal Rd files by default, but "specially" (ignoring
    missing documentation of arguments).
  * R CMD Rdiff gets option --useEx.
  * R CMD check now warns on non-portable uses of Fortran KIND such
    as INTEGER(KIND=4) and REAL(KIND=8).
    To see the failing lines set environment variable
    _R_CHECK_FORTRAN_KIND_DETAILS_ to a true value.
  * When checking Rd files, R CMD check now notes some of the "lost
    braces" that tools::checkRd() finds.  Typical problems are Rd
    macros missing the initial backslash (e.g., code{...}), in-text
    set notation (e.g., {1, 2}, where the braces need escaping), and
    \itemize lists with \describe-style entries of the form
    \item{label}{description}.
  * R CMD INSTALL (and hence check) will compile C++ code with
  - DR_NO_REMAP if environment variable _R_CXX_USE_NO_REMAP_ is set
    to a true value.  It is planned that this will in future become
    the default for compiling C++.
  * The new built-in Rd macro \dontdiff{} can be used to mark example
    code whose output should be ignored when comparing check output
    to reference output (tests/Examples/&lt;pkg&gt;-Ex.Rout.save).  The
    \dontdiff tag, like \donttest, is _not_ shown on the rendered
    help page, so provides a clean alternative to ##
    IGNORE_RDIFF_(BEGIN|END) comments.
  * R CMD build when there is no NAMESPACE, now uses the recommended
    exportPattern("^[^.]"), instead of exporting everything.
  * R CMD check now warns about non-ASCII characters in the NAMESPACE
    file (in addition to R files). Such packages are not portable and
    may fail to install on some platforms.
  C-LEVEL FACILITIES:
  * Headers R_ext/Applic.h and R-ext/Linpack.h used to include
    R_ext/BLAS.h although this was undocumented and unneeded by their
    documented entry points.  They no longer do so.
  * New function R_missing(), factored out from do_missing(), used to
    fix PR#18579.
  * SEXP type S4SXP has been renamed to OBJSXP to support
    experimenting with alternative object systems.  The S4SXP value
    can still be used in C code but is now deprecated.  Based on
    contributions from the R Consortium's Object-Oriented Programming
    Working Group.
  * New function pow1p(x,y) for accurate (1+x)^y.
  * mkCharLenCE was incorrectly documented to take a size_t length
    but was implemented with int (and character strings in R are
    limited to 2^31 - 1 bytes).
  DEPRECATED AND DEFUNCT:
  * data() no longer handles zipped data from long-defunct (since R
    2.13.0) --use-zip-data installations.
  * The legacy graphics devices pictex() and xfig() are now
    deprecated.  They do not support recent graphics enhancements and
    their font handling is rudimentary. The intention is to retain
    them for historical interest as long as they remain somewhat
    functional.
  * Support for encoding = "MacRoman" has been removed from the pdf()
    and postscript() devices - this was a legacy encoding supporting
    classic macOS up to 2001 and no longer has universal libiconv
    support.
  * is.R() is deprecated as no other S dialect is known to be in use
    (and this could only identify historical dialects, not future
    ones).
    Further information on calls can be obtained by setting the
    environment variable _R_DEPRECATED_IS_R_ to error which turns the
    deprecation warning into an error and so by default gives a
    traceback.  (This is done by R CMD check --as-cran.)
  * UseMethod() no longer forwards local variables assigned in the
    generic function into method call environments before evaluating
    the method body. This makes method calls behave more like
    standard function calls and makes method code easier to analyze
    correctly.
  * The twelve as.data.frame.&lt;class&gt;() methods which were deprecated
    only via _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ and in R CMD
    check --as-cran are formally deprecated now in favour of calling
    as.data.frame() or as.data.frame.vector().  The deprecation
    "check" now works also when as.data.frame() is S4 generic thanks
    to Ivan Krylov.
  * The default method for the directional comparison operators &lt;, &gt;,
    &lt;=, and &gt;= now signals an error when one of the operands is a
    language object, i.e. a symbol or a call.
  * For terms.formula(), deprecate abb and neg.out arguments
    _formally_ in addition to just documenting it.
  BUG FIXES:
  * The methods package is more robust to not being attached to the
    search path.  More work needs to be done.
  * pairwise.t.test() misbehaved when subgroups had 0 DF for
    variance, even with pool.sd = TRUE.  (PR#18594 by Jack Berry).
  * Probability distribution functions [dpq]&lt;distrib&gt;(x, *), but also
    bessel[IKJY](x, .) now consistently preserve attributes(x) when
    length(x) == 0, e.g., for a 2 x 0 matrix, thanks to Karolis
    Koncevičius' report PR#18509.
  * Group "Summary" computations such as sum(1:3, 4, na.rm = 5, NA,
    7, na.rm = LL) now give an error instead of either 17 or NN for
    LL true or false, as proposed by Ivan Krylov on the R-devel
    mailing list.  (This also means it is now an error to specify
    na.rm more than once.)
  * as.complex(x) now returns complex(real = x, imaginary = 0) for
    _all_ numerical and logical x, notably also for NA or
    NA_integer_.
  * Directories are now omitted by file.copy(, recursive = FALSE) and
    in file.append() (PR#17337).
  * gsub() and sub() are now more robust to integer overflow when
    reporting errors caused by too large input strings (PR#18346).
  * Top-level handlers are now more robust to attempts to remove a
    handler whilst handlers are running (PR#18508).
  * The handling of Alt+F4 in dialogs created on Windows using
    GraphApp has been fixed (PR#13870).
  * density() more consistently computes grid values for the
    FFT-based convolution, following Robert Schlicht's analysis and
    proposal in PR#18337, correcting density values typically by a
    factor of about 0.999.  Argument old.coords = TRUE provides back
    compatibility.
  * palette.colors() gains a name argument that defaults to FALSE
    controlling whether the vector of colours that is returned has
    names (where possible).  PR#18529.
  * tools::xgettext() no longer extracts the (non-translatable) class
    names from warningCondition and errorCondition calls.
  * S3method(&lt;gen&gt;, &lt;class&gt;, &lt;func&gt;) in the NAMESPACE file now works
    (again) when &lt;func&gt; is visible from the namespace, e.g.,
    imported, or in base.
  * getParseData(f) now also works for a function defined in the
    first of several &lt;pkg&gt;/R/*.R source files, thanks to Kirill
    Müller's report and Duncan Murdoch's patch in PR#16756.
  * Rd \Sexpr macros with nested #ifdef conditionals were not
    processed.
  * A non-blocking connection with non-default encoding (such as a
    socket) now correctly returns from readLines() after new data has
    arrived also when its EOF had been reached previously.  Thanks to
    Peter Meilstrup's report on R-devel and Ivan Krylov's report and
    patch proposal in PR#18555.
  * tools::checkRdContents() failed to detect empty argument
    descriptions when they spanned multiple lines, including those
    generated by prompt().  These cases are now noted by R CMD check.
  * Plain-text help no longer outputs spurious colons in the
    arguments list (for multi-line \item labels in the Rd source).
  * kappa() and rcond() work correctly in more cases; kappa(., norm =
    "2") now warns that it computes the 1-norm with (default) exact =
    FALSE; prompted by Mikael Jagan's quite comprehensive PR#18543.
  * Rd skeletons generated by prompt() or promptData() now use a
    dummy title (so R CMD build works).  tools::checkRdContents() has
    been updated to detect such template leftovers, including from
    promptPackage().
  * When S4 method dispatch fails because no method was found, the
    error message now includes the signature argument names; thanks
    to Michael Chirico's proposal on the R-devel list.
  * withAutoprint({ .. }) now preserves srcrefs previously lost,
    thanks to Andrew Simmons' report plus fix in PR#18572.
  * transform.data.frame() no longer adjusts names; in particular,
    untransformed variables are kept as-is, including those with
    syntactically invalid names (PR#17890).
  * The keep.source option for Rd \Sexpr blocks is no longer ignored.
  * The formula methods for t.test() and wilcox.test() now catch when
    paired is passed, addressing PR#14359; use Pair(x1, x2) ~ 1 for a
    paired test.
  * The level reported in the browser prompt was often too large. It
    now shows the number of browser contexts on the stack.
  * For cbind() and rbind(), the optional deparse.level argument is
    now properly passed to methods, thanks to Mikael Jagan's PR#18579
    and comments there.
  * Some error and warning messages for large ('long vector')
    matrix(v, nr, nc) and dim(m) &lt;- d are now correct about sizes,
    using long long formatting, fixing PR#18612 (and more) reported
    by Mikael Jagan.
  * readChar(useBytes = TRUE) now terminates strings even when the
    underlying connection uses extra spaces in the input buffer.
    This fixes problems with extra garbage seen with gzip
    connections, PR#18605.
  * Named capture in PCRE regular expressions now works also with
    more than 127 named groups (PR#18588).
  * Datetime functions are now robust against long jumps when dealing
    with internal time zone changes.  This avoids confusing warnings
    about an invalid time zone, previously triggered by turning
    warnings into errors or handling them via tryCatch (PR#17966,
    PR#17780).
  * Datetime functions now restore even an empty TZ environment
    variable after internal time zone changes (PR#17724).  This makes
    results of datetime functions with this (typically unintentional)
    setting more predictable.
  * drop.terms(*) now drops response as by default, keep.response =
    FALSE, fixing PR#18564 thanks to Mikael Jagan.
  * dummy.coef(.) now also works for lm()-models with character
    categorical predictor variables rather than factor ones, fixing
    PR#18635 reported by Jinsong Zhao.
  * formals(f) &lt;- formals(f) now also works for a function w/o
    arguments and atomic _constant_ body(f).
  * Correct as.function(&lt;invalid list&gt;, .)'s error message.
  * removeSource() is yet more thorough in finding and removing
    "srcref" and the other source references from parsed R language
    chunks, fixing PR#18638 thanks to Andrew Simmons.
  * dgeom() is more accurate now, notably when its result is very
    small, fixing PR#18642 thanks to the proposal of Morten Welinder,
    also improving other instances where C level binom_raw(x, n, ..)
    has x == 0 or x== n.
  * warning() with options(warn = 1) has improved output for
    multi-line messages.
  * axis.Date() and axis.POSIXct() now respect the par("lab") setting
    for the number of pretty() intervals.
  * Comparisons for language objects (which are based on deparsing)
    are now more careful about using accurate deparsed results
    (PR#18676).
  * Plain-text help (Rd2txt) now correctly preserves blank lines
    following single-line \dontrun code.
  * &lt;POSIXlt&gt;[*] no longer sets wrong "balanced" attribute, fixing
    PR#18681 thanks to Mikael Jagan.
  * str(&lt;classed-call&gt;) now deparses the call as expected, fixing
    PR#18684, reported by Dave Slager.
  * In Rd examples, code following the closing brace of a \dontrun,
    \dontshow or \donttest tag on the same line is no longer skipped
    when R CMD check runs the examples.
  * as.data.frame(matrix(*, ncol=0)) now gets valid names() and
    colnames(); reported by Davis Vaughan on the R-devel list.
  * Internal Mathlib function stirlerr(n) is now almost fully
    (52-bit) accurate for all n &gt;= ~5.9 and more accurate also in the
    range 1 -- 5.9.  This entails small ("after 12th decimal")
    changes in density functions, e.g., dgamma() in _some_ regions of
    their support.  The fix was partly prompted by Morten Welinder's
    PR#18640.
  * Numbers like 9876543.2 are now considered non-integer by Mathlib
    internal R_nonint(), amending original fix of PR#15734.
  * Rd comment lines no longer cause broken paragraphs in the
    rendered PDF and plain-text help. In code blocks, pure comment
    lines (starting with %) no longer produce an empty line.
  * xtabs(Freq ~ .) now consistently defaults to na.action = na.pass,
    using na.rm = FALSE (added as an argument) when summing over Freq
    (PR#17770).
  * tools::testInstalledPackage() is no longer silent about failures
    from running examples or tests and its return code no longer
    ignores failures from checking vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1718366400">- CHANGES IN R 4.4.1:
  C-LEVEL FACILITIES:
  * Functions R_atof and R_strtod declared in header R_ext/Utils.h
    are now documented in 'Writing R Extensions' and so formally part
    of the API.
  * The non-API entry points Rf_setSVector, Rf_StringFalse,
    Rf_StringTrue and Rf_isBlankString have been added to those
    reported by R CMD check.
  * The new function Rf_allocLang is now available. This provides an
    alternative to the idiom of calling Rf_allocList followed by
    SET_TYPEOF.
  UTILITIES:
  * R CMD check now reports as warnings what gfortran calls 'Fortran
    2018 deleted features', all of which have long been marked as
    'obsolescent' and some of which were deleted in Fortran 2008 or
    earlier.  Fortran compilers are no longer required to support
    these.
  BUG FIXES:
  * as.numeric(), scan(), type.convert() and other places which use
    the internal C function R_strtod now require a _non-empty_ digit
    sequence in a decimal or binary exponent.  This aligns with the
    C/POSIX standard for strtod and with ?NumericConstants.
  * as.data.frame(m, make.names=NA) now works correctly for a matrix
    m with NA's in row names.
  * The error message from &lt;POSIXlt&gt;[["hour"]] and similar now
    mentions *[[, "hour"]], as wished for in PR#17409 and proposed by
    Michael Chirico.
  * qbinom() and potentially qpois(), qnbinom(), no longer sometimes
    fail accurate inversion (of pbinom(), etc), thanks to Christopher
    Chang's report and patch in PR#18711.
  * The internal help server on Windows can again serve requests sent
    in quick succession, fixing a regression in R 4.4.0.
  * debugcall(&lt;S3Generic&gt;()) now also works when a corresponding
    S4-generic version is in the methods cache (PR#18143).
  * Package tools' toTitleCase(ch0) now returns character(0) when ch0
    is of zero length; fixing PR#18724, reported by David Hugh Jones.
  * R CMD check is no longer broken (without a check result and no
    explanation in 00check.log) for a package which declares an
    invalid VignetteBuilder in DESCRIPTION but has no vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1730376000">- CHANGES IN R 4.4.2:
  C-LEVEL FACILITIES:
  * The S-compatibility macros F77_COM and F77_COMDECL defined in
    header R_ext/RS.h are deprecated and will be removed shortly.  We
    could find no record of their use.
  BUG FIXES:
  * Mathlib function lgammacor(x) no longer warns about underflow to
    zero for large x.
  * Text widths and heights were incorrectly reported by the Quartz
    device if the drawing context didn't exist yet (typically when
    drawing off-screen to a window that is yet to appear, see
    PR#18591).
  * The Quartz device could segfault in cases where paths with spaces
    are used in the new glyph drawing API.  Thanks to Tomek
    Gieorgijewski (PR#18758).
  * On macOS in R CRAN builds, it is again possible to read
    little-endian UTF-16 text with a BOM from a connection using
    encoding="UTF-16".  Users building R from source should avoid
    using the system libiconv in macOS 14.1 and later.
  * methods' internal .requirePackage() now re-enables primitive
    method dispatch when needed; thanks to Ivan Krylov for
    demystifying CRAN package check failures on the R-devel mailing
    list.</changelog>
</package>
<package pkgid="2501d0d64118a9aa32e41c8c7ce96ea772a9d2effc8753d18b3f18e8ace87446fd902d70405901f288d2b323d690f960b56f3c4dfb8c12b74cd83977bae3453a" name="R-survival-debuginfo" arch="i586">
  <version epoch="0" ver="3.7.0" rel="51.0.2.2.sr20241103"/>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1620302400">- To get in sync with d:l:R:autoCRAN the Matrix package's split
  in -devel was reversed.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339200">- improved spec file according to comments of dimstar in
  https://build.opensuse.org/request/show/892685</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339201">- CHANGES IN R 4.1.0:
  FUTURE DIRECTIONS:
  * It is planned that the 4.1.x series will be the last to support
    32-bit Windows, with production of binary packages for that
    series continuing until early 2023.
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Data set esoph in package datasets now provides the correct
    numbers of controls; previously it had the numbers of cases added
    to these.  (Reported by Alexander Fowler in PR#17964.)
  NEW FEATURES:
  * www.omegahat.net is no longer one of the repositories known by
    default to setRepositories().  (Nowadays it only provides source
    packages and is often unavailable.)
  * Function package_dependencies() (in package tools) can now use
    different dependency types for direct and recursive dependencies.
  * The checking of the size of tarball in R CMD check --as-cran
    &lt;pkg&gt; may be tweaked via the new environment variable
    _R_CHECK_CRAN_INCOMING_TARBALL_THRESHOLD_, as suggested in
    PR#17777 by Jan Gorecki.
  * Using c() to combine a factor with other factors now gives a
    factor, an ordered factor when combining ordered factors with
    identical levels.
  * apply() gains a simplify argument to allow disabling of
    simplification of results.
  * The format() method for class "ftable" gets a new option justify.
    (Suggested by Thomas Soeiro.)
  * New ...names() utility.  (Proposed by Neal Fultz in PR#17705.)
  * type.convert() now warns when its as.is argument is not
    specified, as the help file always said it _should_.  In that
    case, the default is changed to TRUE in line with its change in
    read.table() (related to stringsAsFactor) in R 4.0.0.
  * When printing list arrays, classed objects are now shown _via_
    their format() value if this is a short enough character string,
    or by giving the first elements of their class vector and their
    length.
  * capabilities() gets new entry "Rprof" which is TRUE when R has
    been configured with the equivalent of --enable-R-profiling (as
    it is by default).  (Related to Michael Orlitzky's report
    PR#17836.)
  * str(xS4) now also shows extraneous attributes of an S4 object
    xS4.
  * Rudimentary support for vi-style tags in rtags() and R CMD rtags
    has been added.  (Based on a patch from Neal Fultz in PR#17214.)
  * checkRdContents() is now exported from tools; it and also
    checkDocFiles() have a new option chkInternal allowing to check
    Rd files marked with keyword "internal" as well.  The latter can
    be activated for R CMD check via environment variable
    _R_CHECK_RD_INTERNAL_TOO_.
  * New functions numToBits() and numToInts() extend the raw
    conversion utilities to (double precision) numeric.
  * Functions URLencode() and URLdecode() in package utils now work
    on vectors of URIs.  (Based on patch from Bob Rudis submitted
    with PR#17873.)
  * path.expand() can expand ~user on most Unix-alikes even when
    readline is not in use.  It tries harder to expand ~, for example
    should environment variable HOME be unset.
  * For HTML help (both dynamic and static), Rd file links to help
    pages in external packages are now treated as references to
    topics rather than file names, and fall back to a file link only
    if the topic is not found in the target package. The earlier rule
    which prioritized file names over topics can be restored by
    setting the environment variable _R_HELP_LINKS_TO_TOPICS_ to a
    false value.
  * c() now removes NULL arguments before dispatching to methods,
    thus simplifying the implementation of c() methods, _but_ for
    back compatibility keeps NULL when it is the first argument.
    (From a report and patch proposal by Lionel Henry in PR#17900.)
  * Vectorize()'s result function's environment no longer keeps
    unneeded objects.
  * Function ...elt() now propagates visibility consistently with
    ..n.  (Thanks to Lionel Henry's PR#17905.)
  * capture.output() no longer uses non-standard evaluation to
    evaluate its arguments.  This makes evaluation of functions like
    parent.frame() more consistent.  (Thanks to Lionel Henry's
    PR#17907.)
  * packBits(bits, type="double") now works as inverse of
    numToBits().  (Thanks to Bill Dunlap's proposal in PR#17914.)
  * curlGetHeaders() has two new arguments, timeout to specify the
    timeout for that call (overriding getOption("timeout")) and TLS
    to specify the minimum TLS protocol version to be used for
    https:// URIs (_inter alia_ providing a means to check for sites
    using deprecated TLS versions 1.0 and 1.1).
  * For nls(), an optional constant scaleOffset may be added to the
    denominator of the relative offset convergence test for cases
    where the fit of a model is expected to be exact, thanks to a
    proposal by John Nash.  nls(*, trace=TRUE) now also shows the
    convergence criterion.
  * Numeric differentiation _via_ numericDeriv() gets new optional
    arguments eps and central, the latter for taking central divided
    differences.  The latter can be activated for nls() via
    nls.control(nDcentral = TRUE).
  * nls() now passes the trace and control arguments to getInitial(),
    notably for all self-starting models, so these can also be fit in
    zero-noise situations via a scaleOffset.  For this reason, the
    initial function of a selfStart model must now have ... in its
    argument list.
  * bquote(splice = TRUE) can now splice expression vectors with
    attributes: this makes it possible to splice the result of
    parse(keep.source = TRUE).  (Report and patch provided by Lionel
    Henry in PR#17869.)
  * textConnection() gets an optional name argument.
  * get(), exists(), and get0() now signal an error if the first
    argument has length greater than 1.  Previously additional
    elements were silently ignored.  (Suggested by Antoine Fabri on
    R-devel.)
  * R now provides a shorthand notation for creating functions, e.g.
    \(x) x + 1 is parsed as function(x) x + 1.
  * R now provides a simple native forward pipe syntax |&gt;.  The
    simple form of the forward pipe inserts the left-hand side as the
    first argument in the right-hand side call.  The pipe
    implementation as a syntax transformation was motivated by
    suggestions from Jim Hester and Lionel Henry.
  * all.equal(f, g) for functions now by default also compares their
    environment(.)s, notably via new all.equal method for class
    function.  Comparison of nls() fits, e.g., may now need
    all.equal(m1, m2, check.environment = FALSE).
  * .libPaths() gets a new option include.site, allowing to _not_
    include the site library.  (Thanks to Dario Strbenac's suggestion
    and Gabe Becker's PR#18016.)
  * Lithuanian translations are now available.  (Thanks to Rimantas
    Zakauskas.)
  * names() now works for DOTSXP objects.  On the other hand, in
    R-lang, the R language manual, we now warn against relying on the
    structure or even existence of such dot-dot-dot objects.
  * all.equal() no longer gives an error on DOTSXP objects.
  * capabilities("cairo") now applies only to the file-based devices
    as it is now possible (if very unusual) to build R with Cairo
    support for those but not for X11().
  * There is optional support for tracing the progress of
    loadNamespace() - see its help.
  * (Not Windows.)  l10n_info() reports an additional element, the
    name of the encoding as reported by the OS (which may differ from
    the encoding part (if any) of the result from
    Sys.getlocale("LC_CTYPE").
  * New function gregexec() which generalizes regexec() to find _all_
    disjoint matches and well as all substrings corresponding to
    parenthesized subexpressions of the given regular expression.
    (Contributed by Brodie Gaslam.)
  * New function charClass() in package utils to query the
    wide-character classification functions in use (such as
    iswprint).
  * The names of quantile()'s result no longer depend on the global
    getOption("digits"), but quantile() gets a new optional argument
    digits = 7 instead.
  * grep(), sub(), regexp and variants work considerably faster for
    long factors with few levels.  (Thanks to Michael Chirico's
    PR#18063.)
  * Provide grouping of x11() graphics windows within a window
    manager such as Gnome or Unity; thanks to a patch by Ivan Krylov
    posted to R-devel.
  * The split() method for class data.frame now allows the f argument
    to be specified as a formula.
  * sprintf now warns on arguments unused by the format string.
  * New palettes "Rocket" and "Mako" for hcl.colors() (approximating
    palettes of the same name from the 'viridisLite' package).
    Contributed by Achim Zeileis.
  * The base environment and its namespace are now locked (so one can
    no longer add bindings to these or remove from these).
  * Rterm handling of multi-byte characters has been improved,
    allowing use of such characters when supported by the current
    locale.
  * Rterm now accepts ALT+ +xxxxxxxx sequences to enter Unicode
    characters as hex digits.
  * Environment variable LC_ALL on Windows now takes precedence over
    LC_CTYPE and variables for other supported categories, matching
    the POSIX behaviour.
  * duplicated() and anyDuplicated() are now optimized for integer
    and real vectors that are known to be sorted via the ALTREP
    framework. Contributed by Gabriel Becker via PR#17993.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 14
    and so packages that provide graphics devices should be
    reinstalled.
  * Graphics devices should now specify deviceVersion to indicate
    what version of the graphics engine they support.
  * Graphics devices can now specify deviceClip.  If TRUE, the
    graphics engine will never perform any clipping of output itself.
    The clipping that the graphics engine does perform (for both
    canClip = TRUE and canClip = FALSE) has been improved to avoid
    producing unnecessary artifacts in clipped output.
  * The grid package now allows gpar(fill) to be a linearGradient(),
    a radialGradient(), or a pattern().  The viewport(clip) can now
    also be a grob, which defines a clipping path, and there is a new
    viewport(mask) that can also be a grob, which defines a mask.
    These new features are only supported so far on the Cairo-based
    graphics devices and on the pdf() device.
  * (Not Windows.)  A warning is given when a Cairo-based type is
    specified for a png(), jpeg(), tiff() or bmp() device but Cairo
    is unsupported (so type = "Xlib" is tried instead).
  * grSoftVersion() now reports the versions of FreeType and
    FontConfig if they are used directly (not _via_ Pango), as is
    most commonly done on macOS.
  C-LEVEL FACILITIES:
  * The _standalone_ libRmath math library and R's C API now provide
    log1pexp() again as documented, and gain log1mexp().
  INSTALLATION on a UNIX-ALIKE:
  * configure checks for a program pkgconf if program pkg-config is
    not found.  These are now only looked for on the path (like
    almost all other programs) so if needed specify a full path to
    the command in PKG_CONFIG, for example in file config.site.
  * C99 function iswblank is required - it was last seen missing ca
    2003 so the workaround has been removed.
  * There are new configure options --with-internal-iswxxxxx,
  - -with-internal-towlower and --with-internal-wcwidth which allows
    the system functions for wide-character classification,
    case-switching and width (wcwidth and wcswidth) to be replaced by
    internal ones.  The first has long been used on macOS, AIX (and
    Windows) but this enables it to be unselected there and selected
    for other platforms (it is the new default on Solaris).  The
    second is new in this version of R and is selected by default on
    macOS and Solaris.  The third has long been the default and
    remains so as it contains customizations for East Asian
    languages.
    System versions of these functions are often minimally
    implemented (sometimes only for ASCII characters) and may not
    cover the full range of Unicode points: for example Solaris (and
    Windows) only cover the Basic Multilingual Plane.
  * Cairo installations without X11 are more likely to be detected by
    configure, when the file-based Cairo graphics devices will be
    available but not X11(type = "cairo").
  * There is a new configure option --with-static-cairo which is the
    default on macOS.  This should be used when only static cairo
    (and where relevant, Pango) libraries are available.
  * Cairo-based graphics devices on platforms without Pango but with
    FreeType/FontConfig will make use of the latter for font
    selection.
  LINK-TIME OPTIMIZATION on a UNIX-ALIKE:
  * Configuring with flag --enable-lto=R now also uses LTO when
    installing the recommended packages.
  * R CMD INSTALL and R CMD SHLIB have a new flag --use-LTO to use
    LTO when compiling code, for use with R configured with
  - -enable-lto=R.  For R configured with --enable-lto, they have
    the new flag --no-use-LTO.
    Packages can opt in or out of LTO compilation _via_ a UseLTO
    field in the DESCRIPTION file.  (As usual this can be overridden
    by the command-line flags.)
  BUILDING R on Windows:
  * for GCC &gt;= 8, FC_LEN_T is defined in config.h and hence character
    lengths are passed from C to Fortran in _inter alia_ BLAS and
    LAPACK calls.
  * There is a new text file src/gnuwin32/README.compilation, which
    outlines how C/Fortran code compilation is organized and
    documents new features:
  * R can be built with Link-Time Optimization with a suitable
    compiler - doing so with GCC 9.2 showed several
    inconsistencies which have been corrected.
  * There is support for cross-compiling the C and Fortran code
    in R and standard packages on suitable (Linux) platforms.
    This is mainly intended to allow developers to test later
    versions of compilers - for example using GCC 9.2 or 10.x has
    detected issues that GCC 8.3 in Rtools40 does not.
  * There is experimental support for cross-building R packages
    with C, C++ and/or Fortran code.
  * The R installer can now be optionally built to support a single
    architecture (only 64-bit or only 32-bit).
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++14 where
    available (which it is on all currently checked platforms): if
    not (as before) C++11 is used if available otherwise C++ is not
    supported.
    Packages which specify C++11 will still be installed using C++11.
    C++14 compilers may give deprecation warnings, most often for
    std::random_shuffle (deprecated in C++14 and removed in C++17).
    Either specify C++11 (see 'Writing R Extensions') or modernize
    the code and if needed specify C++14.  The latter has been
    supported since R 3.4.0 so the package's DESCRIPTION would need
    to include something like
    Depends: R (&gt;= 3.4)
  PACKAGE INSTALLATION on Windows:
  * R CMD INSTALL and R CMD SHLIB make use of their flag --use-LTO
    when the LTO_OPT make macro is set in file etc/${R_ARCH}/Makeconf
    or in a personal/site Makevars file.  (For details see 'Writing R
    Extensions' SS4.5.)
    This provides a valuable check on code consistency.  It does work
    with GCC 8.3 as in Rtools40, but that does not detect everything
    the CRAN checks with current GCC do.
  PACKAGE INSTALLATION on macOS:
  * The default personal library directory on builds with
  - -enable-aqua (including CRAN builds) now differs by CPU type,
    one of
    ~/Library/R/x86_64/x.y/library
    ~/Library/R/arm64/x.y/library
    This uses the CPU type R (and hence the packages) were built for,
    so when a x86_64 build of R is run under Rosetta emulation on an
    arm64 Mac, the first is used.
  UTILITIES:
  * R CMD check can now scan package functions for bogus return
    statements, which were possibly intended as return() calls (wish
    of PR#17180, patch by Sebastian Meyer). This check can be
    activated via the new environment variable
    _R_CHECK_BOGUS_RETURN_, true for --as-cran.
  * R CMD build omits tarballs and binaries of previous builds from
    the top-level package directory.  (PR#17828, patch by Sebastian
    Meyer.)
  * R CMD check now runs sanity checks on the use of LazyData, for
    example that a data directory is present and that
    LazyDataCompression is not specified without LazyData and has a
    documented value.  For packages with large LazyData databases
    without specifying LazyDataCompression, there is a reference to
    the code given in 'Writing R Extensions' SS1.1.6 to test the
    choice of compression (as in all the CRAN packages tested a
    non-default method was preferred).
  * R CMD build removes LazyData and LazyDataCompression fields from
    the DESCRIPTION file of packages without a data directory.
  ENCODING-RELATED CHANGES:
  * The parser now treats \Unnnnnnnn escapes larger than the upper
    limit for Unicode points (\U10FFFF) as an error as they cannot be
    represented by valid UTF-8.
    Where such escapes are used for outputting non-printable
    (including unassigned) characters, 6 hex digits are used (rather
    than 8 with leading zeros).  For clarity, braces are used, for
    example \U{0effff}.
  * The parser now looks for non-ASCII spaces on Solaris (as
    previously on most other OSes).
  * There are warnings (including from the parser) on the use of
    unpaired surrogate Unicode points such as \uD834.  (These cannot
    be converted to valid UTF-8.)
  * Functions nchar(), tolower(), toupper() and chartr() and those
    using regular expressions have more support for inputs with a
    marked Latin-1 encoding.
  * The character-classification functions used (by default) to
    replace the system iswxxxxx functions on Windows, macOS and AIX
    have been updated to Unicode 13.0.0.
    The character-width tables have been updated to include new
    assignments in Unicode 13.0.0.
  * The code for evaluating default (extended) regular expressions
    now uses the same character-classification functions as the rest
    of R (previously they differed on Windows, macOS and AIX).
  * There is a build-time option to replace the system's
    wide-character wctrans C function by tables shipped with R: use
    configure option --with-internal-towlower or (on Windows)
  - DUSE_RI18N_CASE in CFLAGS when building R.  This may be needed
    to allow tolower() and toupper() to work with Unicode characters
    beyond the Basic Multilingual Plane where not supported by system
    functions (e.g. on Solaris where it is the new default).
  * R is more careful when truncating UTF-8 and other multi-byte
    strings that are too long to be printed, passed to the system or
    libraries or placed into an internal buffer.  Truncation will no
    longer produce incomplete multibyte characters.
  DEPRECATED AND DEFUNCT:
  * Function plclust() from the package stats and
    package.dependencies(), pkgDepends(), getDepList(),
    installFoundDepends(), and vignetteDepends() from package tools
    are defunct.
  * Defunct functions checkNEWS() and readNEWS() from package tools
    and CRAN.packages() from utils have been removed.
  * R CMD config CXXCPP is defunct (it was deprecated in R 3.6.2).
  * parallel::detectCores() drops support for Irix (retired in 2013).
  * The LINPACK argument to chol.default(), chol2inv(),
    solve.default() and svd() has been defunct since R 3.1.0.  It was
    silently ignored up to R 4.0.3 but now gives an error.
  * Subsetting/indexing, such as ddd[*] or ddd$x on a DOTSXP
    (dot-dot-dot) object ddd has been disabled; it worked by accident
    only and was undocumented.
  BUG FIXES:
  * Many more C-level allocations (mainly by malloc and strdup) are
    checked for success with suitable alternative actions.
  * Bug fix for replayPlot(); this was turning off graphics engine
    display list recording if a recorded plot was replayed in the
    same session.  The impact of the bug became visible if resize the
    device after replay OR if attempted another savePlot() after
    replay (empty display list means empty screen on resize or empty
    saved plot).
  * R CMD check etc now warn when a package exports non-existing S4
    classes or methods, also in case of no "methods" presence.
    (Reported by Alex Bertram; reproducible example and patch by
    Sebastian Meyer in PR#16662.)
  * boxplot() now also accepts calls for labels such as ylab, the
    same as plot().  (Reported by Marius Hofert.)
  * The help page for xtabs() now correctly states that addNA is
    setting na.action = na.pass among others.  (Reported as PR#17770
    by Thomas Soeiro.)
  * The R CMD check &lt;pkg&gt; gives a longer and more comprehensible
    message when DESCRIPTION misses dependencies, e.g., in Imports:.
    (Thanks to the contributors of PR#17179.)
  * update.default() now calls the generic update() on the formula to
    work correctly for models with extended formulas.  (As reported
    and suggested by Neal Fultz in PR#17865.)
  * The horizontal position of leaves in a dendrogram is now correct
    also with center = FALSE.  (PR#14938, patch from Sebastian
    Meyer.)
  * all.equal.POSIXt() no longer warns about and subsequently ignores
    inconsistent "tzone" attributes, but describes the difference in
    its return value (PR#17277).  This check can be disabled _via_
    the new argument check.tzone = FALSE as suggested by Sebastian
    Meyer.
  * as.POSIXct() now populates the "tzone" attribute from its tz
    argument when x is a logical vector consisting entirely of NA
    values.
  * x[[2^31]] &lt;- v now works.  (Thanks to the report and patch by
    Suharto Anggono in PR#17330.)
  * In log-scale graphics, axis() ticks and label positions are now
    computed more carefully and symmetrically in their range,
    typically providing _more_ ticks, fulfilling wishes in PR#17936.
    The change really corresponds to an improved axisTicks() (package
    grDevices), potentially influencing grid and lattice, for
    example.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now correct to at
    least five digits where it was catastrophically wrong,
    previously.
  * sum(df) and similar "Summary"- and "Math"-group member functions
    now work for data frames df with logical columns, notably also of
    zero rows.  (Reported to R-devel by Martin "b706".)
  * unsplit() had trouble with tibbles due to unsound use of rep(NA,
    len)-indexing, which should use NA_integer_ (Reported to R-devel
    by Mario Annau.)
  * pnorm(x, log.p = TRUE) underflows to -Inf slightly later.
  * show(&lt;hidden S4 generic&gt;) prints better and without quotes for
    non-hidden S4 generics.
  * read.table() and relatives treated an "NA" column name as missing
    when check.names = FALSE PR#18007.
  * Parsing strings containing UTF-16 surrogate pairs such as
    "\uD834\uDD1E" works better on some (uncommon) platforms.
    sprintf("%X", utf8ToInt("\uD834\uDD1E")) should now give "1D11E"
    on all platforms.
  * identical(x,y) is no longer true for differing DOTSXP objects,
    fixing PR#18032.
  * str() now works correctly for DOTSXP and related exotics, even
    when these are doomed.
    Additionally, it no longer fails for lists with a class and
    "irregular" method definitions such that e.g. lapply(*) will
    necessarily fail, as currently for different igraph objects.
  * Too long lines in environment files (e.g. Renviron) no longer
    crash R. This limit has been increased to 100,000 bytes.
    (PR#18001.)
  * There is a further workaround for FreeType giving incorrect
    italic font faces with cairo-based graphics devices on macOS.
  * add_datalist(*, force = TRUE) (from package tools) now actually
    updates an existing data/datalist file for new content.  (Thanks
    to a report and patch by Sebastian Meyer in PR#18048.)
  * cut.Date() and cut.POSIXt() could produce an empty last interval
    for breaks = "months" or breaks = "years".  (Reported as PR#18053
    by Christopher Carbone.)
  * Detection of the encoding of 'regular' macOS locales such as
    en_US (which is UTF-8) had been broken by a macOS change:
    fortunately these are now rarely used with en_US.UTF-8 being
    preferred.
  * sub() and gsub(pattern, repl, x, *) now keep attributes of x such
    as names() also when pattern is NA (PR#18079).
  * Time differences ("difftime" objects) get a replacement and a
    rep() method to keep "units" consistent.  (Thanks to a report and
    patch by Nicolas Bennett in PR#18066.)
  * The \RdOpts macro, setting defaults for \Sexpr options in an Rd
    file, had been ineffective since R 2.12.0: it now works again.
    (Thanks to a report and patch by Sebastian Meyer in PR#18073.)
  * mclapply and pvec no longer accidentally terminate parallel
    processes started before by mcparallel or related calls in
    package parallel (PR#18078).
  * grep and other functions for evaluating (extended) regular
    expressions handle in Unicode also strings not explicitly flagged
    UTF-8, but flagged native when running in UTF-8 locale.
  * Fixed a crash in fifo implementation on Windows (PR#18031).
  * Binary mode in fifo on Windows is now properly detected from
    argument open (PR#15600, PR#18031).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1622808000">- The line %{__install} -m 755 -d %{_infodir}
  no longer works in TW or Factory.
  But without that line it works everywhere. So this instruction
  was commented out of the spec file.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1628596800">- CHANGES IN R 4.1.1:
  NEW FEATURES:
  * require(pkg, quietly = TRUE) is quieter and in particular does
    not warn if the package is not found.
  DEPRECATED AND DEFUNCT:
  * Use of ftp:// URIs should be regarded as deprecated, with
    on-going support confined to method = "libcurl" and not routinely
    tested.  (Nowadays no major browser supports them.)
  * The non-default method = "internal" is deprecated for http:// and
    ftp:// URIs for both download.file and url.
  * On Windows, method = "wininet" is deprecated for http://,
    https:// and ftp:// URIs for both download.file and url.  (A
    warning is only given for ftp://.)
    For ftp:// URIs the default method is now "libcurl" if available
    (which it is on CRAN builds).
    method = "wininet" remains the default for http:// and https://
    URIs but if libcurl is available, using method = "libcurl" is
    preferred.
  INSTALLATION:
  * make check now works also without a LaTeX installation.  (Thanks
    to Sebastian Meyer's PR#18103.)
  BUG FIXES:
  * make check-devel works again in an R build configured with
  - -without-recommended-packages.
  * qnbinom(p, size, mu) for large size/mu is correct now in a range
    of cases (PR#18095); similarly for the (size, prob)
    parametrization of the negative binomial.  Also qpois() and
    qbinom() are better and or faster for extreme cases.  The
    underlying C code has been modularized and is common to all four
    cases of discrete distributions.
  * gap.axis is now part of the axis() arguments which are passed
    from bxp(), and hence boxplot().  (Thanks to Martin Smith's
    report and suggestions in PR#18109.)
  * .First and .Last can again be set from the site profile.
  * seq.int(from, to, *) and seq.default(..) now work better in large
    range cases where from-to is infinite where the two boundaries
    are finite.
  * all.equal(x,y) now returns TRUE correctly also when several
    entries of abs(x) and abs(y) are close to .Machine$double.xmax,
    the largest finite numeric.
  * model.frame() now clears the object bit when removing the class
    attribute of a value via na.action (PR#18100).
  * charClass() now works with multi-character strings on Windows
    (PR#18104, fixed by Bill Dunlap).
  * encodeString() on Solaris now works again in Latin-1 encoding on
    characters represented differently in UTF-8.  Support for
    surrogate pairs on Solaris has been improved.
  * file.show() on Windows now works with non-ASCII path names
    representable in the current native encoding (PR#18132).
  * Embedded R on Windows can now find R home directory via the
    registry even when installed only for the current user
    (PR#18135).
  * pretty(x) with finite x now returns finite values also in the
    case where the extreme x values are close in size to the maximal
    representable number .Machine$double.xmax.
    Also, it's been tweaked for very small ranges and when a boundary
    is close (or equal) to zero; e.g., pretty(c(0,1e-317)) no longer
    has negative numbers, currently still warning about a very small
    range, and pretty(2^-(1024 - 2^-1/(c(24,10)))) is more accurate.
  * The error message for not finding vignette files when weaving has
    correct file sizes now. (Thanks to Sebastian Meyer's PR#18154.)
  * dnbinom(20, &lt;large&gt;, 1) now correctly gives 0, and similar cases
    are more accurate with underflow precaution.  (Reported by Francisco Vera Alcivar in PR#18072.)</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635163200">- repaired https://bugzilla.suse.com/show_bug.cgi?id=1191380
  (rpmacros now go to rpmmacrodir)
- minor clean-ups in spec file</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635768000">- CHANGES IN R 4.1.2:
  C-LEVEL FACILITIES:
  * The workaround in headers R.h and Rmath.h (using namespace std;)
    for the Oracle Developer Studio compiler is no longer needed now
    C++11 is required so has been removed.  A couple more usages of
    log() (which should have been std::log()) with an int argument
    are reported on Solaris.
  * The undocumented limit of 4095 bytes on messages from the
    S-compatibility macros PROBLEM and MESSAGE is now documented and
    longer messages will be silently truncated rather than
    potentially causing segfaults.
  * If the R_NO_SEGV_HANDLER environment variable is non-empty, the
    signal handler for SEGV/ILL/BUS signals (which offers recovery
    user interface) is not set. This allows more reliable debugging
    of crashes that involve the console.
  DEPRECATED AND DEFUNCT:
  * The legacy S-compatibility macros PROBLEM, MESSAGE, ERROR, WARN,
    WARNING, RECOVER, ... are deprecated and will be hidden in R
    4.2.0. R's native interface of Rf_error and Rf_warning has long
    been preferred.
  BUG FIXES:
  * .mapply(F, dots, .) no longer segfaults when dots is not a list
    and uses match.fun(F) as always documented; reported by Andrew
    Simmons in PR#18164.
  * hist(&lt;Date&gt;, ...) and hist(&lt;POSIXt&gt;, ...)  no longer pass
    arguments for rect() (such as col and density) to axis().
    (Thanks to Sebastian Meyer's PR#18171.)
  * \Sexpr{ch} now preserves Encoding(ch). (Thanks to report and
    patch by Jeroen Ooms in PR#18152.)
  * Setting the RNG to "Marsaglia-Multicarry" e.g., by RNGkind(), now
    warns in more places, thanks to Andr'e Gillibert's report and
    patch in PR#18168.
  * gray(numeric(), alpha=1/2) no longer segfaults, fixing PR#18183,
    reported by Till Krenz.
  * Fixed dnbinom(x, size=&lt;very_small&gt;, .., log=TRUE) regression,
    reported by Martin Morgan.
  * as.Date.POSIXlt(x) now keeps names(x), thanks to Davis Vaughan's
    report and patch in PR#18188.
  * model.response() now strips an "AsIs" class typically, thanks to
    Duncan Murdoch's report and other discussants in PR#18190.
  * try() is considerably faster in case of an error and long call,
    as e.g., from some do.call().  Thanks to Alexander Kaever's
    suggestion posted to R-devel.
  * qqline(y = &lt;object&gt;) such as y=I(.), now works, see also
    PR#18190.
  * Non-integer mgp par() settings are now handled correctly in
    axis() and mtext(), thanks to Mikael Jagan and Duncan Murdoch's
    report and suggestion in PR#18194.
  * formatC(x) returns length zero character() now, rather than ""
    when x is of length zero, as documented, thanks to Davis
    Vaughan's post to R-devel.
  * removeSource(fn) now retains (other) attributes(fn).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1647000000">- CHANGES IN R 4.1.3:
  NEW FEATURES:
  * The default version of Bioconductor has been changed to 3.14.
    (This is used by setRepositories and the menus in GUIs.)
  UTILITIES:
  * R CMD check --as-cran has a workaround for a bug in versions of
    file up to at least 5.41 which mis-identify DBF files last
    changed in 2022 as executables.
  C-LEVEL FACILITIES:
  * The legacy S-compatibility macros SINGLE_* in R_ext/Constants.h
    (included by R.h) are deprecated and will be removed in R 4.2.0.
  BUG FIXES:
  * Initialization of self-starting nls() models with initialization
    functions following the pre-R-4.1.0 API (without the ...
    argument) works again for now, with a deprecation warning.
  * Fixed quoting of ~autodetect~ in Java setting defaults to avoid
    inadvertent user lookup due to leading ~, reported in PR#18231 by
    Harold Gutch.
  * substr(., start, stop) &lt;- v now treats _negative_ stop values
    correctly.  Reported with a patch in PR#18228 by Brodie Gaslam.
  * Subscripting an array x without dimnames by a
    length(dim(x))-column character matrix gave "random" non-sense,
    now an error; reported in PR#18244 by Mikael Jagan.
  * ...names() now matches names(list(...)) closely, fixing PR#18247.
  * all.equal(*, scale = s) now works as intended when length(s) &gt; 1,
    partly thanks to Michael Chirico's PR#18272.
  * print(x) for long vectors x now also works for named atomic
    vectors or lists and prints the correct number when reaching the
    getOption("max.print") limit; partly thanks to a report and
    proposal by Hugh Parsonage to the R-devel list.
  * all.equal(&lt;selfStart&gt;, *) no longer signals a deprecation
    warning.
  * reformulate(*, response=r) gives a helpful error message now when
    length(r) &gt; 1, thanks to Bill Dunlap's PR#18281.
  * Modifying globalCallingHandlers inside withCallingHandlers() now
    works or fails correctly, thanks to Henrik Bengtsson's PR#18257.
  * hist(&lt;Date&gt;, breaks = "days") and hist(&lt;POSIXt&gt;, breaks = "secs")
    no longer fail for inputs of length 1.
  * qbeta(.001, .9, .009) and similar cases now converge correctly
    thanks to Ben Bolker's report in PR#17746.
  * window(x, start, end) no longer wrongly signals "'start' cannot
    be after 'end'", fixing PR#17527 and PR#18291.
  * data() now checks that its (rarely used) list argument is a
    character vector - a couple of packages passed other types and
    gave incorrect results.
  * which() now checks its arr.ind argument is TRUE rather coercing
    to logical and taking the first element - which gave incorrect
    results in package code.
  * model.weights() and model.offset() more carefully extract their
    model components, thanks to Ben Bolker and Tim Taylor's R-devel
    post.
  * list.files(recursive = TRUE) now shows all broken symlinks
    (previously, some of them may have been omitted, PR#18296).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1650628800">- CHANGES IN R 4.2.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * The formula method of aggregate() now matches the generic in
    naming its first argument x (resolving PR#18299 by Thomas
    Soeiro).
    This means that calling aggregate() with a formula as a named
    first argument requires name formula in earlier versions of R and
    name x now, so portable code should not name the argument (code
    in many packages did).
  * Calling &amp;&amp; or || with either argument of length greater than one
    now gives a warning (which it is intended will become an error).
  * Calling if() or while() with a condition of length greater than
    one gives an error rather than a warning.  Consequently,
    environment variable _R_CHECK_LENGTH_1_CONDITION_ no longer has
    any effect.
  * Windows users should consult the WINDOWS section below for some
    profound changes including
  * Support for 32-bit builds has been dropped.
  * UTF-8 locales are used where available.
  * The default locations for the R installation and personal
    library folder have been changed.
    Thanks to Tomas Kalibera for months of work on the Windows port
    for this release.
  NEW FEATURES:
  * matrix(x, n, m) now warns in more cases where length(x) differs
    from n * m, as suggested by Abby Spurdle and Wolfgang Huber in
    Feb 2021 on the R-devel mailing list.
    This warning can be turned into an error by setting environment
    variable _R_CHECK_MATRIX_DATA_ to TRUE: R CMD check --as-cran
    does so unless it is already set.
  * Function file_test() in package utils gains tests for symlinks,
    readability and writability.
  * capabilities("libxml") is now false.
    The description of capabilities("http/ftp") now reflects that it
    refers to the default method, no longer the internal one.
  * simplify2array() gains an except argument for controlling the
    exceptions used by sapply().
  * Environment variables R_LIBS_USER and R_LIBS_SITE are both now
    set to the R system default if unset or empty, and can be set to
    NULL to indicate an empty list of user or site library
    directories.
  * The warning for axis()(-like) calls in cases of relatively small
    ranges (typically in log-scale situations) is slightly improved
    _and_ suppressed from explicit calls to .axisPars() as has always
    been the intention.
  * The contrasts setter function `contrasts&lt;-` gains an explicit
    default how.many = NULL rather than just using missing(how.many).
  * grid.pretty() gains a new optional argument n = 5.
  * There is a new function .pretty() with option bounds as a
    technical-utility version of pretty().  It and pretty() gain a
    new argument f.min with a better than back-compatible default.
  * Function grDevices::axisTicks() and related functions such as
    graphics::axis() work better, notably for the log scale; partly
    because of the pretty() improvements, but also because care is
    taken e.g., when ylim is finite but diff(ylim) is infinite.
  * nclass.FD() gains a digits option.
  * The R Mathlib internal C function bd0() (called indirectly from a
    dozen probability density and distribution functions such as
    dpois(), dbinom(), dgamma(), pgamma() _etc_) has been
    complemented by a more sophisticated and (mostly) more accurate C
    function ebd0(), currently called only by internal dpois_raw()
    improving accuracy for R level dpois() and potentially others
    calling it such as dnbinom(), dgamma() or pgamma().  (Thanks to
    Morten Welinder's PR#15628.)
  * write.ftable() gains sep = " " argument as suggested by Thomas
    Soeiro.
  * The names of the locale categories supported by R's
    Sys.getlocale() and Sys.setlocale() are now provided by variable
    .LC.categories in the base namespace.
  * The Date and POSIXt methods for hist() and the histogram method
    for plot() now also use the new default col = "lightgray" in
    consistency with the corresponding change to hist()'s default for
    R 4.0.0.
  * hist.default() gains new fuzz argument, and the histogram plot
    method no longer uses fractional axis ticks when displaying
    counts ("Frequency").
  * mapply() and hence Map() now also obey the "max-or-0-if-any"
    recycling rule, such that, e.g., Map(`+`, 1:3, 1[0]) is valid
    now.
  * as.character(&lt;obj&gt;) for "hexmode" or "octmode" objects now
    fulfils the important basic rule as.character(x)[j] ===
    as.character(x[j]).
  * The set utility functions, notably intersect() have been tweaked
    to be more consistent and symmetric in their two set arguments,
    also preserving a common mode.
  * substr(ch, start,end) &lt;- new now e.g., preserves names(ch); ditto
    for substring(), thanks to a patch from Brodie Gaslam.
  * plot(&lt;lm&gt;) gains a extend.ylim.f argument, in partial response to
    PR#15285; further PR#17784 is fixed thanks to several
    contributors and a patch by Elin Waring.  The Cook's dist
    contours get customizable via cook.col and cook.lty with a
    different default color and their legend is nicer by default and
    customizable via cook.legendChanges.
  * Attempting to subset an object that is not subsettable now
    signals an error of class notSubsettableError. The
    non-subsettable object is contained in the object field of the
    error condition.
  * Subscript-out-of-bounds errors are now signaled as errors of
    class subscriptOutOfBoundsError.
  * Stack-overflow errors are now signaled as errors inheriting from
    class stackOverflowError. See ?stackOverflowError for more
    details.
  * New partly experimental Sys.setLanguage() utility, solving the
    main problem of PR#18055.
  * gettext() and gettextf() get a new option trim = TRUE which when
    set to false allows translations for strings such as "Execution
    halted\n" typical for C code.
  * An experimental implementation of hash tables is now available.
    See ?hashtab for more details.
  * identical() gains a extptr.as.ref argument for requesting that
    external pointer objects be compared as reference objects.
  * reorder() gets an argument decreasing which it passes to sort()
    for level creation; based on the wish and patch by Thomas Soeiro
    in PR#18243.
  * as.vector() gains a data.frame method which returns a simple
    named list, also clearing a long standing 'FIXME' to enable
    as.vector(&lt;data.frame&gt;, mode="list").  This breaks code relying
    on as.vector(&lt;data.frame&gt;) to return the unchanged data frame.
  * legend() is now vectorized for arguments cex, x.intersp, and
    text.width.  The latter can now also be specified as a vector
    (one element for each column of the legend) or as NA for
    computing a proper column wise maximum value of strwidth(legend).
    The argument y.intersp can be specified as a vector with one
    entry for each row of the legend.
    legend() also gains new arguments title.cex and title.font.
    Thanks to Swetlana Herbrandt.
  * Deparsing no longer remaps attribute names dim, dimnames, levels,
    names and tsp to historical S-compatible names (which structure()
    maps back).
  * sample() and sample.int() have additional sanity checks on their
    size and n arguments.
    all.equal.numeric() gains a sanity check on its tolerance
    argument - calling all.equal(a, b, c) for three numeric vectors
    is a surprisingly common error.
    mean(na.rm =), rank(na.last =), barplot(legend.text =),
    boxplot(), contour(drawlabels =), polygon(border =) and
    methods::is(class2 =) have more robust sanity checks on their
    arguments.
    R CMD Rd2pdf (used by R CMD check) has a more robust sanity check
    on the format of \alias{} commands.
  * psigamma(x, deriv) for negative x now also works for deriv = 4
    and 5; their underlying C level dpsifn() is documented in
    'Writing R Extensions'.
  * The HTML help system now uses HTML5 (wish of PR#18149).
  * ks.test() now provides exact p-values also with ties and MC
    p-values in the two-sample (Smirnov) case.  By Torsten Hothorn.
  * ks.test() gains a formula interface, with y ~ 1 for the
    one-sample (Kolmogorov) test and y ~ group for the two-sample
    (Smirnov) test.  Contributed by Torsten Hothorn.
  * The return value from ks.test() now has class c("ks.test",
    "htest") - packages using try() need to take care to use
    inherits() and not == on the class.
  * New functions psmirnov(), qsmirnov() and rsmirnov() in package
    stats implementing the asymptotic and exact distributions of the
    two-sample Smirnov statistic.
  * iconv() now allows sub = "c99" to use C99-style escapes for UTF-8
    inputs which cannot be converted to encoding to.
  * In a forward pipe |&gt; expression it is now possible to use a named
    argument with the placeholder _ in the rhs call to specify where
    the lhs is to be inserted.  The placeholder can only appear once
    on the rhs.
  * The included LAPACK sources have been updated to version 3.10.0,
    except for the four Fortran 77 routines which 3.10.0 has
    re-implemented in Fortran 90 (where the older versions have been
    retained as the R build process does not support Fortran 90).
  * path.expand() and most other uses of tilde expansion now warn if
    a path would be too long if expanded.  (An exception is
    file.exists(), which silently returns false.)
  * trunc(&lt;Date&gt;, *) now supports units = "months" or "years" for
    consistency with the POSIXt method, thanks to Dirk Eddelbuettel's
    proposal in PR#18099.
  * list2DF() now checks that its arguments are of the same length,
    rather than use recycling.
  * The HTML help system has several new features: LaTeX-like math
    can be typeset using either KaTeX or MathJax, usage and example
    code is highlighted using Prism, and for dynamic help the output
    of examples and demos can be shown within the browser if the
    knitr package is installed. These features can be disabled by
    setting the environment variable _R_HELP_ENABLE_ENHANCED_HTML_ to
    a false value.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 15
    and so packages that provide graphics devices should be
    reinstalled.
  * The grid package now allows the user to specify a "vector" of
    pattern fills.  The fill argument to gpar() accepts a list of
    gradients and/or patterns and the functions linearGradient(),
    radialGradient(), and pattern() have a new group argument.
    Points grobs (data symbols) can now also have a pattern fill.
    The grobCoords() function now returns a more informative and
    complex result.
  * The grid package has new functions for drawing isolated groups:
    grid.group(), grid.define(), and grid.use().  These functions add
    compositing operators and affine transformations to R's graphics
    capabilities.
    The grid package also has new functions for stroking and filling
    paths: grid.stroke(), grid.fill(), and grid.fillStroke().
    A new function as.path() allows the user to specify the fill rule
    for a path that is to be used for clipping, stroking, or filling;
    available options are "winding" and "evenodd".  A new function
    as.mask() allows the user to specify the type of a mask;
    available options are "alpha" and "luminance".
    These new features are only supported so far (at most) on the
    Cairo-based graphics devices and on the pdf() device.
  * dev.capabilities() reports on device support for the new
    features.
  * par() now warns about unnamed non-character arguments to prevent
    misuse such as {usr &lt;- par("usr"); par(usr)}.
  INSTALLATION:
  * Facilities for accessing ftp:// sites are no longer tested
    (except _pro tem_ for curlGetHeaders()) as modern browsers have
    removed support.
  * R can now be built with DEFS = -DSTRICT_R_HEADERS .
  PACKAGE INSTALLATION:
  * R CMD INSTALL no longer tangles vignettes. This completes an R
    CMD build change in R 3.0.0 and affects packages built before R
    3.0.2. Such packages should be re-made with R CMD build to have
    the tangled R code of vignettes shipped with the tarball.
  * USE_FC_LEN_T will become the default: this uses the correct
    prototypes for Fortran BLAS/LAPACK routines called from C/C++,
    and requires adjustment of most such calls - see 'Writing R
    Extensions' SS6.6.2.  (This has been supported since R 3.6.2.)
  * Package installation speed for packages installed with
    keep.source has been improved. This resolve the issue reported by
    Ofek Shilon in PR#18236.
  UTILITIES:
  * R CMD check can optionally report files/directories left behind
    in home, /tmp (even though TMPDIR is set) and other directories.
    See the "R Internals" manual for details.
  * R CMD check now reports byte-compilation errors during
    installation.  These are not usually fatal but may result in
    parts of the package not being byte-compiled.
  * _R_CHECK_DEPENDS_ONLY_ can be applied selectively to examples,
    tests and/or vignettes in R CMD check: see the "R Internals"
    manual.
  * _R_CHECK_SRC_MINUS_W_IMPLICIT_ now defaults to true: recent
    versions of Apple clang on macOS have made implicit function
    declarations in C into a compilation error.
  * R CMD check --as-cran makes use of the environment variable
    AUTORECONF.  See the "R Internals" manual SS8 for further details.
  * R CMD check --use-valgrind also uses valgrind when re-building
    vignettes as some non-Sweave vignettes unhelpfully comment out
    all their code when R CMD check runs vignettes.
  * Errors in re-building vignettes (unless there are LaTeX errors)
    are reported by R CMD check as ERROR rather than WARNING when
    running vignettes has been skipped (as it frequently is in CRAN
    checks and by --as-cran).
  * R CMD Rd2pdf gains a --quiet option that is used by R CMD build
    when building the PDF package manual.
  * R CMD Rd2pdf now always runs LaTeX in batch mode, consistent with
    Texinfo &gt;= 6.7. The --batch option is ignored.
  * R CMD build and R CMD check now include the Rd file name and line
    numbers in the error message of an \Sexpr evaluation failure.
  * For packages using the \doi Rd macro (now an install-time \Sexpr)
    but no other dynamic Rd content, R CMD build now produces a
    smaller tarball and is considerably faster - skipping temporary
    package installation.
  C-LEVEL FACILITIES:
  * The non-API header R_ext/R-ftp-http.h is no longer provided, as
    the entry points it covered are now all defunct.
  * A number of non-API declarations and macro definitions have been
    moved from the installed header Rinternals.h to the internal
    header Defn.h. Packages that only use entry points and
    definitions documented to be part of the API as specified in
    'Writing R Extensions' SS6 should not be affected.
  * The macro USE_RINTERNALS no longer has any effect when compiling
    package code.  Packages which also use R_NO_REMAP will need to
    ensure that the remapped names are used for calls to API
    functions that were formerly also made available as macros.
  * The deprecated legacy S-compatibility macros PROBLEM, MESSAGE,
    ERROR, WARN, WARNING, RECOVER, ... are no longer defined in
    R_exts/RS.h (included by R.h).  Replace these by calls to
    Rf_error and Rf_warning (defined in header R_ext/Error.h included
    by R.h).
    Header R_ext/RS.h no longer includes R_ext/Error.h.
  * Header R_ext/Constants.h (included by R.h) when included from C++
    now includes the C++ header cfloat rather than the C header
    float.h (now possible as C++11 is required).
  * The legacy S-compatibility macros DOUBLE_* in R_ext/Constants.h
    (included by R.h) are deprecated.
  * The deprecated S-compatibility macros SINGLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * R_Calloc, R_Free and R_Realloc are preferred to their unprefixed
    forms and error messages now use the prefix. These forms were
    introduced in R 3.4.0 and are available even when
    STRICT_R_HEADERS is defined.
  * rmultinom has been documented in 'Writing R Extensions' SS6 so is
    now part of the R API.
  * Similarly, Rtanpi, called from R level tanpi() is now part of the
    R API.
  * The long-deprecated, undocumented and non-API entry point call_R
    is no longer declared in R_ext/RS.h (included by R.h).
  * The header S.h which has been unsupported since Jan 2016 has been
    removed.  Use R.h instead.
  DEPRECATED AND DEFUNCT:
  * The (non-default and deprecated) method = "internal" for
    download.file() and url() no longer supports http:// nor ftp://
    URIs.  (It is used only for file:// URIs.)
    On Windows, download.file(method = "wininet") no longer supports
    ftp:// URIs.  (It is no longer the default method, which is
    "libcurl" and does.)
    On Windows, the deprecated method = "wininet" now gives a warning
    for http:// and https:// URIs for both download.file() and url().
    (It is no longer the default method.)
  * On Windows, the command-line option --max-mem-size and
    environment variable R_MAX_MEM_SIZE are defunct.  The memory
    allocation limit was important for 32-bit builds, but these are
    no longer supported.
  * default.stringsAsFactors() is now formally deprecated, where that
    was only mentioned on its regular help page, previously.  So it
    now gives a warning if called.
  * unix.time() is defunct now; it had been deprecated since R 3.4.0.
  BUG FIXES:
  * Setting digits = 0 in format(), print.default() (and hence
    typically print()) or options() is again invalid.  Its behaviour
    was platform-dependent, and it is unclear what "zero significant
    digits" should mean (PR#18098).
  * Messages from C code in the cairo section of package grDevices
    are now also offered for translation, thanks to Michael Chirico's
    PR#18123.
  * mean(x) with finite x now is finite also without "long.double"
    capability.
  * R CMD Rd2pdf no longer leaves an empty build directory behind
    when it aborts due to an already existing output file.  (Thanks
    to Sebastian Meyer's PR#18141.)
  * density(x, weights = w, na.rm = TRUE) when anyNA(x) is true, now
    removes weights "in parallel" to x, fixing PR#18151, reported by
    Matthias Gondan.  Additionally, it gets a subdensity option.
  * Conversion of \Sexpr[]{&lt;expR&gt;} to LaTeX or HTML no longer
    produces long blocks of empty lines when &lt;expR&gt; itself contains
    several lines all producing empty output.  Thanks to a report and
    patch by Ivan Krylov posted to R-devel.
  * R CMD build no longer fails if a package vignette uses child
    documents and inst/doc exists.  (Thanks to Sebastian Meyer's
    PR#18156.)
  * When an R documentation ('help' source) file man/foo.Rd in a
    package has \donttest{..} examples with a syntax error, it is now
    signalled as ERROR and with correct line numbers relating to the
  * -Ex.R file, thanks to Duncan Murdoch and Sebastian Meyer's
    reports and patch proposals in PR#17501.
  * Improved determination of the correct translation domain in
    non-base packages, addressing the combination of PR#18092 and
    PR#17998 (#c6) with reports and _augmented_ patch #2904 by
    Suharto Anggono.
    Note that "R-base" is no longer the default domain e.g., for
    top-level calls to gettext(); rather translation needs explicit
    domain = * specification in such cases.
  * identical(attrib.as.set=FALSE) now works correctly with data
    frames with default row names (Thanks to Charlie Gao's PR#18179).
  * txtProgressBar() now enforces a non-zero width for argument char,
    without which no progress can be visible.
  * dimnames(table(d)) is more consistent in the case where d is a
    list with a single component, thanks to Thomas Soeiro's report to
    R-devel.
    Further, table(d1, d2) now gives an error when d1 and d2 are data
    frames as suggested by Thomas in PR#18224.
  * Fix for drawing semi-transparent lines and fills on the native
    Windows graphics device (PR#18219 and PR#16694).  Thanks to Nick
    Ray for helpful diagnosis on Bugzilla.
  * The deparser now wraps sub-expressions such as if(A) ..  with
    parentheses when needed; thanks to Duncan Murdoch's PR#18232 and
    Lionel Henry's patches there.
  * remove.packages() no longer tries to uninstall Priority: base
    packages, thanks to a report and suggestions by Colin Fay in
    PR#18227.
  * win.metafile() now has xpinch and ypinch arguments so that the
    user can override Windows' (potentially wrong) guess at device
    dimensions.
  * x[i] and x[[i]] for non-integer i should now behave in all cases
    as always documented: the index used is equivalent to
    as.integer(i) unless that would overflow where trunc(i) is used
    instead; thanks to Suharto Anggono's report and patch proposals
    in PR#17977.
  * asOneSidedFormula() now associates the resulting formula with the
    global environment rather than the evaluation environment created
    for the call.
  * &lt;bibentry&gt;$name now matches the field name case-insensitively,
    consistent with bibentry() creation and the replacement method.
  * cbind() failed to detect some length mismatches with a mixture of
    time-series and non-time-series inputs.
  * The default LaTeX style file Sweave.sty used by the RweaveLatex
    driver no longer loads the obsolete ae package; thanks to a
    report by Thomas Soeiro in PR#18271.  Furthermore, it now skips
    \usepackage[T1]{fontenc} for engines other than pdfTeX (if
    detected) or if the new [nofontenc] option is used.
  * smooth.spline() now stores its logical cv argument more safely,
    fixing a rare bug when printing, and also stores n.
  * smooth.spline(x,y,*) now computes the cv.crit statistic
    correctly, also when is.unsorted(x), fixing PR#18294.
  * The data.frame method of rbind() now warns when binding
    not-wholly-recycling vectors, by analogy to the default method
    (for matrices).
  * setAs() finds the correct class for name to when multiple
    packages define a class with that name. Thanks to Gabor Csardi
    for the report.
  * Fix for detaching a package when two classes of the same name are
    present in method signatures for the same generic. Thanks to
    Gabor Csardi for the report.
  * match.arg("", c("", "a", "B")) gives a better error message, in
    part from PR#17959, thanks to Elin Waring.
  * R CMD Sweave --clean no longer removes pre-existing files or
    subdirectories (PR#18242).
  * The quartz() device no longer splits polylines into subpaths.
    That has caused narrowly-spaced lines with many points to always
    look solid even when dashed line type was used due to dash phase
    restarts.
  * Deparsing constructs such as quote(1 + `!`(2) + 3) works again as
    before R 3.5.0, thanks to the report and patch in PR#18284 by
    Suharto Anggono.
  * as.list(f) for a factor f now keeps names(f), fixing PR#18309.
  * qbeta(.001, .9, .009) and analogous qf() calls now return a
    correct value instead of NaN or wrongly 1, all with a warning;
    thanks to the report by Ludger Goeminne in PR#18302.
  * plot.lm() failed to produce the plot of residuals vs.  factor
    levels (i.e., which=5 when leverages are constant) for models
    with character predictors (PR#17840).
  * interaction.plot(..., xtick = TRUE) misplaced the x-axis line
    (PR#18305).
  * Not strictly fixing a bug, format()ing and print()ing of
    non-finite Date and POSIXt values NaN and +/-Inf no longer show
    as NA but the respective string, e.g., Inf, for consistency with
    numeric vector's behaviour, fulfilling the wish of PR#18308.
  * R CMD check no longer runs test scripts generated from
    corresponding .Rin files twice and now signals an ERROR if
    processing an .Rin script fails.
  * tools::Rd2txt() used for plain-text help pages now renders \hrefs
    (if tools::Rd2txt_options(showURLs = TRUE)) and \urls with
    percent-encoding and standards-compliant delimiting style (angle
    brackets and no URL: prefix).  \email is now rendered with a
    mailto: prefix.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1655985600">- CHANGES IN R 4.2.1:
  NEW FEATURES:
  * New function utils::findCRANmirror() to find out if a CRAN mirror
    has been selected, otherwise fallback to the main site.  This
    behaves in the same way as tools::CRAN_package_db() and is
    intended for packages wishing to access CRAN for purposes other
    than installing packages.
    The need for this was shown by a day when the main CRAN website
    was offline and a dozen or so packages which had its URL
    hardcoded failed their checks.
  INSTALLATION on a UNIX-ALIKE:
  * The libraries searched for by --with-blas (without a value) now
    include BLIS (after OpenBLAS but before ATLAS).  And on macOS,
    the Accelerate framework (after ATLAS).  (This is patterned after
    the AX_BLAS macro from the Autoconf Archive.)
  * The included LAPACK sources have been updated to 3.10.1.
  UTILITIES:
  * The (full path to) the command tidy to be used for HTML
    validation can be set by environment variable R_TIDYCMD.
  * Setting environment variable _R_CHECK_RD_VALIDATE_RD2HTML_ to a
    false value will override R CMD check --as-cran and turn off HTML
    validation.  This provides a way to circumvent a problematic
    tidy.
    The 2006 version that ships with macOS is always skipped.
  C-LEVEL FACILITIES:
  * The undocumented legacy declarations of Sint, Sfloat, SINT_MAX
    and SINT_MIN in header R.h are deprecated.
  BUG FIXES:
  * fisher.test(d) no longer segfaults for "large" d; fixing PR#18336
    by preventing/detecting an integer overflow reliably.
  * tar(., files=*) now produces correctly the warning about invalid
    uid or gid of files, fixing PR#18344, reported by Martin Morgan.
  * tk_choose.files() with multi = FALSE misbehaved on paths
    containing spaces (PR#18334) (regression introduced in R 4.0.0).
  * sort(x, partial = ind, *) now works correctly notably for the
    non-default na.last = FALSE or TRUE, fixing PR#18335 reported by
    James Edwards.
  * Environment variable _R_CHECK_XREFS_REPOSITORIES_ is only used
    for checking .Rd cross-references in R CMD check (as documented)
    and not for other uses looking for a CRAN mirror.
  * The search for a CRAN mirror when checking packages now uses
    getOption("repos") if that specifies a CRAN mirror, even when it
    does not also specify all three Bioconductor repositories (as was
    previously required).
  * The HTML code generated by tools::Rd2HTML() has been improved to
    pass tidy 5.8.0.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1667217600">- CHANGES IN R 4.2.2:
  NEW FEATURES:
  * tools::Rdiff(useDiff = TRUE) checks for the presence of an
    external diff command and switches to useDiff = FALSE if none is
    found.  This allows R CMD Rdiff to always work.
  * On Windows, environment variable R_LIBCURL_SSL_REVOKE_BEST_EFFORT
    can be used to switch to only 'best-effort' SSL certificate
    revocation checks with the default "libcurl" download method.
    This reduces security, but may be needed for downloads to work
    with MITM proxies (PR#18379).
  * (macOS) The run-time check for libraries from XQuartz for X11 and
    Tcl/Tk no longer uses otool from the Apple Developer Tools
    (PR#18400).
  * The LaTeX style for producing the PDF manuals, Rd.sty, now loads
    the standard amsmath, amsfonts and amssymb packages for greater
    coverage of math commands in the Rd \eqn and \deqn macros.  The
    \mathscr LaTeX command is also provided (via the mathrsfs
    package, if available, or the amsfonts bundle otherwise),
    fulfilling the wish of PR#18398.
  * (Windows) The default format of readClipboard() and
    writeClipboard() has been changed to 13 (CF_UNICODETEXT).
  INSTALLATION on a UNIX-ALIKE:
  * The PDF manuals (if built) can be compacted by the new target
    make compact-pdf (at the top level or in directory doc/manual).
  * There is now configure support for LLVM clang 15 on Linux, which
    defaults to position-independent (PIE) executables whereas
    gfortran does not.
  * Many small changes to ease compilation (and suppress warnings)
    with LLVM clang 15.
  BUG FIXES:
  * Rscript -e would fail if stdin were closed (Reported by Henrik
    Bengtsson.)
  * qt(*, log.p=TRUE) in outer tails no longer produces NaN in its
    final steps, thus fixing PR#18360.
  * tools::Rd2latex() now escapes hashes and ampersands when writing
    URLs, fixing LaTeX errors with such URLs in \tabular.
  * When isGeneric(f, fdef=*) is used with mismatching names, the
    warning is better understandable; reported (with fix) in PR#18370
    by Gabe Becker.
  * poly(x, n) now works again (and is now documented) when x is a
    "Date" or "POSIXct" object, or of another class while fulfilling
    mode(x) == "numeric".  This also enables poly(x, *, raw=TRUE) for
    such variables.  Reported by Michael Chirico to R-devel.
  * write.table(), write.csv() and write.csv2() restore their
    numerical precision (internal equivalent of digits = 15) after an
    interrupt (PR#18384).
  * One can now read also byte FF from a clipboard connection
    (PR#18385).
  * source("") and source(character()) now give more helpful error
    messages.
  * R CMD check --as-cran set _R_CHECK_TIMINGS_ too late to have the
    intended effect.
  * as.POSIXlt(x) now also works with very large dates x, fixing
    PR#18401 reported by Hannes M"uhleisen.
  * Files can now be extracted even from very large zip archives
    (PR#18390, thanks to Martin Jakt).
  * Non-finite objects of class "POSIXlt" are now correctly coerced
    to classes "Date" and "POSIXct"; following up on the extension to
    format() them correctly.
  * Added methods for is.finite(), is.infinite() and is.nan() for
    "POSIXlt" date-time objects.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1678881600">- CHANGES IN R 4.2.3:
  C-LEVEL FACILITIES:
  * The definition of DL_FUNC in R_ext/Rdynload.h has been changed to
    be fully C-compliant.  This means that functions loaded _via_ for
    example R_GetCCallable need to be cast to an appropriate type if
    they have any arguments.
  * .Machine has a new element sizeof.time_t to identify old systems
    with a 32-bit type and hence a limited range of date-times (and
    limited support for dates millions of years from present).
  PACKAGE INSTALLATION:
  * (Windows) The default C++ standard had accidentally been left at
    C++11 when it was changed to C++14 on Unix.
  BUG FIXES:
  * As "POSIXlt" objects may be "partially filled" and their list
    components meant to be recycled, length() now is the length of
    the longest component.
  * as.POSIXlt.Date() could underflow for dates in the far past (more
    than half a million years BCE).
  * as.Date.POSIXlt(x) would return "1970-01-01" instead of NA in R
    4.2.2, e.g., for
    x &lt;- as.POSIXlt(c("2019-01-30","2001-1-1"))
    x$mon &lt;- c(0L, NA); as.Date(x)
  * R CMD check failed to apply enabled _R_CHECK_SUGGESTS_ONLY_ to
    examples and vignettes (regression in R 4.2.0).
  * R CMD check did not re-build vignettes in separate processes by
    default (regression in R 4.2.0).
  * Running examples from HTML documentation now restores previous
    knitr settings and options (PR#18420).
  * Quartz: fonts are now located using Core Graphics API instead of
    deprecated ATS which is no longer supported in the macOS 13 SDK
    (PR#18426).  This also addresses an issue where the currently
    used font in the Quartz device context was not correctly
    retained.
  * (Windows) Math symbols in text drawing functions are again
    rendered correctly (PR#18440).  This fixes a regression in R
    4.2.1 caused by a fix in PR#18382 which uncovered an issue in
    GraphApp due to which the symbol charset was not used with TT
    Symbol font face.
  * (Windows) Installing a package with a src/Makefile.{win,ucrt}
    file includes ~/.R/Makevars.win64 in the search for user
    makevars, as documented in "R Installation and Administration"
    and done for packages with a src/Makevars.{win,ucrt} file.
  * format(&lt;POSIXlt_w/_unbalanced_sec&gt;, "....%OS&lt;n&gt;") with n &gt; 0 no
    longer accidentally uses the unbalanced seconds, thanks to
    Suharto Anggono's report (including patch) in PR#18448.
  * solve.default(a, b) works around issues with some versions of
    LAPACK when a contains NA or NaN values.
  * When UseMethod() cannot dispatch, it no longer segfaults
    producing the error message in case of a long class(), thanks to
    Joris Vankerschaver's report (including patch) in PR#18447.
  * When example(foo, ..) produces graphics on an interactive device
    it needs to open itself, it now leaves devAskNewPage() unchanged
    even when it was FALSE, thus fixing a 14 years old '&lt;FIXME&gt;'.
  * packageDescription() again catches errors from encoding
    conversions. This also fixes broken packageVersion() in C locale
    on systems where iconv does not support transliteration.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1681128000">- add patch to build with libcurl &gt;= 8</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1682078400">- CHANGES IN R 4.3.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Calling &amp;&amp; or || with LHS or (if evaluated) RHS of length greater
    than one is now always an error, with a report of the form
    'length = 4' in coercion to 'logical(1)'
    Environment variable _R_CHECK_LENGTH_1_LOGIC2_ no longer has any
    effect.
  NEW FEATURES:
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.10.1.  (This caused some platform-dependent
    changes to package check output.)  And then to the sources from
    LAPACK version 3.11.0 (with changes only to double complex
    subroutines).
  * The included LAPACK sources have been updated to include the four
    Fortran 90 routines rather than their Fortran 77 predecessors.
    This may give some different signs in SVDs or
    eigendecompositions..  (This completes the transition to LAPACK
    3.10.x begun in R 4.2.0.)
  * The LAPACK sources have been updated to version 3.11.0.  (No new
    subroutines have been added, so this almost entirely bug fixes:
    Those fixes do affect some computations with NaNs, including R's
    NA.)
  * The parser now signals _classed_ errors, notably in case of the
    pipe operator |&gt;.  The error object and message now give line and
    column numbers, mostly as proposed and provided by Duncan Murdoch
    in PR#18328.
  * toeplitz() is now generalized for asymmetric cases, with a
    toeplitz2() variant.
  * xy.coords() and xyz.coords() and consequently, e.g., plot(x,y,
    log = "y") now signal a _classed_ warning about negative values
    of y (where log(.) is NA).  Such a warning can be specifically
    suppressed or caught otherwise.
  * Regular expression functions now check more thoroughly whether
    their inputs are valid strings (in their encoding, e.g. in
    UTF-8).
  * The performance of grep(), sub(), gsub() and strsplit() has been
    improved, particularly with perl = TRUE and fixed = TRUE.  Use of
    useBytes = TRUE for performance reasons should no longer be
    needed and is discouraged: it may lead to incorrect results.
  * apropos() gains an argument dot_internals which is used by the
    completion (help(rcompgen)) engine to also see base internals
    such as .POSIXct().
  * Support in tools::Rdiff() for comparing uncompressed PDF files is
    further reduced - see its help page.
  * qqplot(x, y, ...) gains conf.level and conf.args arguments for
    computing and plotting a confidence band for the treatment
    function transforming the distribution of x into the distribution
    of y (Switzer, 1976, _Biometrika_). Contributed by Torsten
    Hothorn.
  * Performance of package_dependencies() has been improved for cases
    when the number of dependencies is large.
  * Strings newly created by gsub(), sub() and strsplit(), when any
    of the inputs is marked as "bytes", are also marked as "bytes".
    This reduces the risk of creating invalid strings and accidental
    substitution of bytes deemed invalid.
  * Support for readLines(encoding = "bytes") has been added to allow
    processing special text files byte-by-byte, without creating
    invalid strings.
  * iconv(from = "") now takes into account any declared encoding of
    the input elements and uses it in preference to the native
    encoding.  This reduces the risk of accidental creation of
    invalid strings, particularly when different elements of the
    input have different encoding (including "bytes").
  * Package repositories in getOption("repos") are now initialized
    from the repositories file when utils is loaded (if not already
    set, e.g., in .Rprofile).  (From a report and patch proposal by
    Gabriel Becker in PR#18405.)
  * compactPDF() gets a verbose option.
  * type.convert() and hence read.table() get new option tryLogical =
    TRUE with back compatible default.  When set to false, converts
    "F" or "T" columns to character.
  * Added new unit prefixes "R" and "Q" for abbreviating
    (unrealistically large) sizes beyond 10^{27} in standard = "SI",
    thanks to Henrik Bengtsson's PR#18435.
  * as.data.frame()'s default method now also works fine with atomic
    objects inheriting from classes such as "roman", "octmode" and
    "hexmode", such fulfilling the wish of PR#18421, by Benjamin
    Feakins.
  * The as.data.frame.vector() utility now errors for wrong-length
    row.names.  It warned for almost six years, with "Will be an
    error!".
  * sessionInfo() now also contains La_version() and reports codepage
    and timezone when relevant, in both print() and toLatex() methods
    which also get new option tzone for displaying timezone
    information when locale = FALSE.
  * New function R_compiled_by() reports the C and Fortran compilers
    used to build R, if known.
  * predict(&lt;lm&gt;, newdata = *) no longer unnecessarily creates an
    offset of all 0s.
  * solve() for complex inputs now uses argument tol and by default
    checks for 'computational singularity' (as it long has done for
    numeric inputs).
  * predict(&lt;rank-deficient lm&gt;, newdata=*) now obeys a new argument
    rankdeficient, with new default "warnif", warning only if there
    are non-estimable cases in newdata.  Other options include
    rankdeficient = "NA", predicting NA for non-estimable newdata
    cases.  This addresses PR#15072 by Russ Lenth and is based on his
    original proposal and discussions in PR#16158 also by David Firth
    and Elin Waring.  Still somewhat experimental.
  * Rgui console implementation now works better with the NVDA screen
    reader when the full blinking cursor is selected.  The underlying
    improvements in cursor handling may help also other screen
    readers on Windows.
  * The drop-field control in GraphApp can now be left with the TAB
    key and all controls can be navigated in the reverse order using
    the Shift+TAB key, improving accessibility of the Rgui
    configuration editor.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now fully accurate
    (instead of to "only" minimally five digits).
  * demo(error.catching) now also shows off withWarnings() and
    tryCatchWEMs().
  * As an experimental feature the placeholder _ can now also be used
    in the rhs of a forward pipe |&gt; expression as the first argument
    in an extraction call, such as _$coef. More generally, it can be
    used as the head of a chain of extractions, such as _$coef[[2]].
  * Spaces in the environment variable used to choose the R session's
    temporary directory (TMPDIR, TMP and TEMP are tried in turn) are
    now fatal.  (On Windows the 'short path' version of the path is
    tried and used if that does not contain a space.)
  * all.equal.numeric() gets a new optional switch giveErr to return
    the numeric error as attribute.  Relatedly,
    stopifnot(all.equal&lt;some&gt;(a, b, ..)) is as "smart" now, as
    stopifnot(all.equal(....)) has been already, thus allowing
    customized all.equal&lt;Some&gt;() wrappers.
  * R on Windows is now able to work with path names longer than 260
    characters when these are enabled in the system (requires at
    least Windows 10 version 1607).  Packages should be updated to
    work with long paths as well, instead of assuming PATH_MAX to be
    the maximum length.  Custom front-ends and applications embedding
    R need to update their manifests if they wish to allow this
    feature.  See
    &lt;https://blog.r-project.org/2023/03/07/path-length-limit-on-windows&gt;
    for more information.
  * 'Object not found' and 'Missing argument' errors now give a more
    accurate error context. Patch provided by Lionel Henry in
    PR#18241.
  * The @ operator is now an S3 generic. Based on contributions by
    Tomasz Kalinowski in PR#18482.
  * New generic chooseOpsMethod() provides a mechanism for objects to
    resolve cases where two suitable methods are found for an Ops
    Group Generic. This supports experimenting with alternative
    object systems. Based on contributions by Tomasz Kalinowski in
    PR#18484.
  * inherits(x, what) now accepts values other than a simple
    character vector for argument what. A new generic, nameOfClass(),
    is called to resolve the class name from what. This supports
    experimenting with alternative object systems. Based on
    contributions by Tomasz Kalinowski in PR#18485.
  * Detection of BLAS/LAPACK in use (sessionInfo()) with FlexiBLAS
    now reports the current backend.
  * The "data.frame" method for subset() now warns about extraneous
    arguments, typically catching the use of = instead of == in the
    subset expression.
  * Calling a:b when numeric a or b is longer than one may now be
    made into an error by setting environment variable
    _R_CHECK_LENGTH_COLON_ to a true value, along the proposal in
    PR#18419 by Henrik Bengtsson.
  * density(x, weights = *) now warns if automatic bandwidth
    selection happens without using weights; new optional warnWbw may
    suppress the warning.  Prompted by Christoph Dalitz' PR#18490 and
    its discussants.
  * rm(list = *) is faster and more readable thanks to Kevin Ushey's
    PR#18492.
  * The plot.lm() function no longer produces a normal Q-Q plot for
    GLMs. Instead it plots a half-normal Q-Q plot of the absolute
    value of the standardized deviance residuals.
  * The print() method for class "summary.glm" no longer shows
    summary statistics for the deviance residuals by default.  Its
    optional argument show.residuals can be used to show them if
    required.
  * The tapply() function now accepts a data frame as its X argument,
    and allows INDEX to be a formula in that case. by.data.frame()
    similarly allows INDICES to be a formula.
  * The performance of df[j] &lt;- value (including for missing j) and
    write.table(df) has been improved for data frames df with a large
    number of columns.  (Thanks to Gabriel Becker's PR#18500,
    PR#18503 and discussants, prompted by a report from Toby Dylan
    Hocking on the R-devel mailing list.)
  * The matrix multiply operator %*% is now an S3 generic, belonging
    to new group generic matrixOps.  From Tomasz Kalinowski's
    contribution in PR#18483.
  * New function array2DF() to convert arrays to data frames,
    particularly useful for the list arrays created by tapply().
  DATES and TIMES:
  * On platforms where (non-UTC) datetimes before 1902 (or before
    1900 as with system functions on recent macOS) are guessed by
    extrapolating time zones from 1902-2037, there is a warning at
    the first use of extrapolation in a session.  (As all time zones
    post 2037 are extrapolation, we do not warn on those.)
  * (Platforms using --with-internal-tzone, including Windows and by
    default macOS). How years are printed in dates or date-times can
    be controlled by environment variable R_PAD_YEARS_BY_ZERO.  The
    default remains to pad to 4 digits by zeroes, but setting value
    no gives no padding (as used by default by glibc).
  * strftime() tries harder to determine the offset for the "%z"
    format, and succeeds on the mainstream R platforms.
  * strftime() has a limit of 2048 bytes on the string produced -
    attempting to exceed this is an error.  (Previously it silently
    truncated at 255 bytes.)
  * sessionInfo() records (and by default prints) the system time
    zone as part of the locale information.  Also, the source
    (system/internal) of the date-time conversion and printing
    functions.
  * Objects of class "POSIXlt" created in this version of R always
    have 11 components: component zone is always set, and component
    gmtoff is set for times in UTC and usually set on the (almost
    all) platforms which have C-level support, otherwise is NA.
  * There are comprehensive validity checks on the structure of
    objects of class "POSIXlt" when converting (including formatting
    and printing).  (This avoids mis-conversions of hand-crafted
    objects.)
  * There is some support for using the native date-time routines on
    macOS: this is only viable on recent versions (e.g. 12.6 and 13)
    and does get wrong some historical changes (before 1900, during
    WWII).  Use of --with-internal-tzone remains the default.
  * as.POSIXct(&lt;numeric&gt;) and as.POSIXlt(.) (without specifying
    origin) now work.  So does as.Date(&lt;numeric&gt;).
  * as.Date.POSIXct(., tz) now treats several tz values, notably
    "GMT" as equivalent to "UTC", proposed and improved by Michael
    Chirico and Joshua Ulrich in PR#17674.
  * Experimental balancePOSIXlt() utility allows using "ragged" and
    or out-of-range "POSIXlt" objects more correctly, e.g., in
    subsetting and subassignments.  Such objects are now documented.
    More experimentally, a "POSIXlt" object may have an attribute
    "balanced" indicating if it is known to be filled or fully
    balanced.
  * Functions axis.Date() and axis.POSIXct() are rewritten to gain
    better default tick locations and better default formats by using
    prettyDate(). Thanks to Swetlana Herbrandt.
  * The mapping of Windows' names for time zones to IANA's 'Olson'
    names has been updated.  When ICU is available (it is by
    default), it is used to get a mapping for the current region set
    in Windows.  This can be overridden by setting environment
    variable TZ to the desired Olson name - see OlsonNames() for
    those currently available.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 16
    and so packages that provide graphics devices should be
    reinstalled.
  * The grDevices and grid packages have new functions for rendering
    typeset glyphs, primarily: grDevices::glyphInfo() and
    grid::grid.glyph().
    Rendering of typeset glyphs is only supported so far on the
    Cairo-based graphics devices and on the pdf() and quartz()
    devices.
  * The defined behaviour for "clear" and "source" compositing
    operators (via grid::grid.group()) has been changed (to align
    better with simple interpretation of original Porter-Duff
    definitions).
  * Support for gradients, patterns, clipping paths, masks, groups,
    compositing operators, and affine transformations has been added
    to the quartz() device.
  INSTALLATION on a UNIX-ALIKE:
  * A system installation of generic LAPACK 3.10.0 or later will be
    preferred to the version in the R sources.
    configure option --with-lapack=no (equivalently --without-lapack)
    forces compilation of the internal LAPACK sources.
    If --with-lapack is not specified, a system liblapack is looked
    for and used if it reports version 3.10.0 or later and does not
    contain BLAS routines.
    Packages using LAPACK will need to be reinstalled if this changes
    to using an external library.
  * On aarch64 Linux platforms using GCC, configure now defaults to
  - fPIC (instead of -fpic), as desired in PR#18326.
  * configure now checks conversion of datetimes between POSIXlt and
    POSIXct around year 2020.  Failure (which has been seen on
    platforms missing tzdata) is fatal.
  * If configure option --with-valgrind-instrumentation is given
    value 1 or 2, option --with-system-valgrind-headers is now the
    default and ignored (with a warning).  It is highly recommended
    that the system headers are installed alongside valgrind: they
    are part of its packaging on some Linux distributions and
    packaged separately (e.g. in the valgrind-devel RPM) on others.
    configure will give a warning if they are not found.
    The system headers will be required in a future release of R to
    build with valgrind instrumentation.
  * libcurl 8.x is now accepted by configure: despite a change in
    major version number it changes neither API nor ABI.
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools43, an update of the Rtools42 toolchain.  It is
    based on gcc 12 and newer versions of MinGW-W64, binutils and
    libraries.  At this time R-devel can still be built using
    Rtools42 without changes, but when R-devel is installed via the
    installer, it will by default look for Rtools43.
  * Old make targets rsync-extsoft and 32-bit ones that are no longer
    needed have been removed.
  * Default builds (including for packages) no longer select C99.
    Thus the C standard used is the default for the compiler, which
    for the toolchain in Rtools43 is C17.  (This is consistent with
    Unix builds.)
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++17 where
    available (which it is on all currently checked platforms): if
    not C++14 or C++11 is used if available otherwise C++ is not
    supported.
  * USE_FC_LEN_T is the default: this uses the correct
    (compiler-dependent) prototypes for Fortran BLAS/LAPACK routines
    called from C/C++, and requires adjustment of many such calls -
    see 'Writing R Extensions' SS6.6.1.
  * There is initial support for C++23 as several compilers are now
    supporting -std=c++23 or -std=c++2b or similar.  As for C++20,
    there no additional configure checks for C++23 features beyond a
    check that the compiler reports a __cplusplus value greater than
    that in the C++20 standard.  C++ feature tests should be used.
  * There is support for a package to indicate the version of the C
    standard which should be used to compile it, and for the
    installing user to specify this.  In most cases R defaults to the
    C compiler's default standard which is C17 (a `bug-fix' of C11) -
    earlier versions of R or compilers may have defaulted to C99.
    Current options are:
    USE_C17 Use a standard that is at most C17.  The intention is to
    allow legacy packages to still be installed when later C
    standards become the default, including packages using new
    keywords as identifiers or with K&amp;R-style function
    declarations.  This will use C17 if available, falling back
    to C11.
    USE_C90 Use the C90 (aka C89) standard.  (As that standard did
    not require compilers to identify that version, all we can
    verify is that the compiler does not claim to be using a
    later standard.  It may accept C99 features - for example
    clang accepts // to make comments.)
    USE_C99 Use the C99 standard. This should be rarely needed - it
    avoids the few new features of C11/C17 which can be useful if
    a package assumes them if C17 is specified and they are not
    implemented.
    USE_C23 Use C23 (or in future, later).  Compiler/library support
    for C23 is still being implemented, but LLVM clang from
    15.0.0 and the upcoming GCC 13 have quite extensive support.
    These can be specified as part of the SystemRequirements field in
    the package's DESCRIPTION file or _via_ options --use-C17 and so
    on of R CMD INSTALL and R CMD SHLIB.
    For further details see "Writing R Extensions" SS1.2.5.
  * (Windows) A src/Makefile.ucrt or src/Makefile.win file is now
    included after R_HOME/etcR_ARCH/Makeconf and so no longer needs
    to include that file itself.  Installation of a package with such
    a file now uses a site Makevars file in the same way as a package
    with a src/Makevars.win file would.
  * configure is now passed crucial variables such as CC and CFLAGS
    in its environment, as many packages were not setting them (as
    documented in 'Writing R Extensions' SS1.2).
    This has most effect where configure is used to compile parts of
    the package - most often by cmake or libtool which obfuscate the
    actual compile commands used.
    Also used for configure.win and configure.ucrt on Windows.
  FORTRAN FLAGS:
  * The flag -fno-optimize-sibling-calls is no longer forced for
    gfortran 7 and later.  It should no longer be needed now using
    'hidden' character-length arguments when calling BLAS/LAPACK
    routines from C/C++ is the default even for packages.  (Unless
    perhaps packages call Fortran code from C/C++ without using R's
    headers and without allowing for these arguments.)
  C-LEVEL FACILITIES:
  * The deprecated S-compatibility macros DOUBLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * The deprecated legacy typedefs of Sint and Sfloat in header R.h
    are no longer defined, and that header no longer includes header
    limits.h from C nor climits from C++.
  * New macro CAD5R() is provided in Rinternals.h and used in a few
    places in the R sources.
  * ALTREP now supports VECSXP vectors. Contributed by Gabor Csardi
    in PR#17620.
  * The Rcomplex definition (in header R_ext/Complex.h) has been
    extended to prevent possible mis-compilation when interfacing
    with Fortran (PR#18430).  The new definition causes compiler
    warnings with static initializers such as {1, 2}, which can be
    changed to {.r=1, .i=2}.
    Using the new definition from C++ depends on compiler extensions
    supporting C features that have not been incorporated into the
    C++ standards but are available in g++ and clang++: this may
    result in C++ compiler warnings but these have been worked around
    for recent versions of common compilers (GCC, Apple/LLVM clang,
    Intel).
    It is intended to change the inclusion of header R_ext/Complex.h
    by other R headers, so C/C++ code files which make use of
    Rcomplex should include that header explicitly.
  UTILITIES:
  * R CMD check does more checking of package .Rd files, warning
    about invalid email addresses and (some) invalid URIs and noting
    empty \item labels in description lists.
  * R CMD check now also reports problems when reading package news
    in md (file NEWS.md) and (optionally) plain text (file NEWS)
    formats.
  * _R_CHECK_TIMINGS_ defaults to a value from the environment even
    for R CMD check --as-cran; this allows for exceptionally fast or
    slow platforms.
    It now applies to checking PDF and HTML versions of the manuals,
    and 'checking CRAN incoming feasibility'.
  * R CMD check can optionally (but included in --as-cran) check
    whether HTML math rendering _via_ KaTeX works for the package .Rd
    files.
  * Non-interactive debugger invocations can be trapped by setting
    the environment variable _R_CHECK_BROWSER_NONINTERACTIVE_ to a
    true value.  This is enabled by R CMD check --as-cran to detect
    the use of leftover browser() statements in the package.
  * The use of sprintf and vsprintf from C/C++ has been deprecated in
    macOS 13 and is a known security risk.  R CMD check now reports
    (on all platforms) if their use is found in compiled code:
    replace by snprintf or vsnprintf respectively. [*NB:* whether
    such calls get compiled into the package is platform-dependent.]
  * Where recorded at installation, R CMD check reports the C and
    Fortran compilers used to build R.
    It reports the OS in use (if known, as given by osVersion) as
    well as that R was built for.
    It notes if a C++ standard was specified which is older than the
    current default: many packages have used C++11 to mean 'not
    C++98' - as C++11 is the minimum supported since R 4.0.0, that
    specification can probably be removed.
  * R CMD INSTALL reports the compilers (and on macOS, the SDK) used,
    and this is copied to the output of R CMD check.
    Where a C++ standard is specified, it is reported.
  * R CMD check's 'checking compilation flags in Makevars' has been
    relaxed to accept the use of flags such as -std=f2008 in
    PKG_FFLAGS.
  * tools::buildVignettes() has a new argument skip, which is used by
    R CMD check to skip (and note) vignettes with unavailable
    \VignetteDepends (PR#18318).
  * New generic .AtNames() added to enable class-specific completions
    after @. The formerly internal function findMatches() is now
    exported, mainly for use in methods for .DollarNames() and
    .AtNames().
  DEPRECATED AND DEFUNCT:
  * default.stringsAsFactors() is defunct.
  * Calling as.data.frame.&lt;class&gt;() directly (for 12 atomic classes)
    is going to be formally deprecated, currently activated by
    setting the environment variable
    _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ to non-empty, which also
    happens in R CMD check --as-cran.
  BUG FIXES:
  * Hashed environments with sizes less than 5 can now grow.
    (Reported to R-devel by Duncan Garmonsway.)
  * as.character(&lt;Rd&gt;, deparse = TRUE) failed to re-escape curly
    braces in LaTeX-like text.  (Reported by Hadley Wickham in
    PR#18324.)
  * library() now passes its lib.loc argument when requiring Depends
    packages; reported (with fix) in PR#18331 by Mikael Jagan.
  * R CMD Stangle: improved message about 'Output' files.
  * head(x, n) and tail(x, n) now signal an error if n is not
    numeric, instead of incidentally "working" sometimes returning
    all of x.  Reported and discussed by Colin Fay, in PR#18357.
  * The "lm" method for summary() now gives the correct F-statistic
    when the model contains an offset.  Reported in PR#18008.
  * C() and `contrasts&lt;-`() now preserve factor level names when
    given a function object (as opposed a function name which did
    preserve names). Reported in PR#17616.
  * c(a = 1, 2)[[]] no longer matches 2 but rather signals a
    _classed_ error.  Reported and analysed by Davis Vaughan in
    PR#18367, a duplicate of PR#18004, by Jan Meis et al.  For
    consistency, NULL[[]] is also erroneous now.  x[[]] &lt;- v gives an
    error of the same class "MissingSubscriptError".
  * The relist() function of utils now supports NULL elements in the
    skeleton (PR#15854).
  * ordered(levels = *) (missing x) now works analogously to factor(,
    ordered=TRUE); reported (with fix) by Achim Zeileis in PR#18389.
  * User-defined Rd macro definitions can now span multiple lines,
    thanks to a patch from Duncan Murdoch. Previously, the Rd parser
    silently ignored everything after the first line.
  * Plain-text help (tools::Rd2txt()) now preserves an initial blank
    line for text following description list items.
  * tools::Rd2HTML() and tools::Rd2latex() no longer split \arguments
    and \value lists at Rd comments.
  * tools::Rd2latex() now correctly handles optional text outside
    \items of argument lists as well as bracketed text at the
    beginning of sections, e.g., \value{[NULL]}.
  * as.character(&lt;POSIXt&gt;) now behaves more in line with the methods
    for atomic vectors such as numbers, and is no longer influenced
    by options().  Ditto for as.character(&lt;Date&gt;).  The
    as.character() method gets arguments digits and OutDec with
    defaults _not_ depending on options().  Use of as.character(*,
    format = .) now warns.
  * Similarly, the as.character.hexmode() and *.octmode() methods
    also behave as good citizen methods and back compatibility option
    keepStr = TRUE.
  * The as.POSIXlt(&lt;POSIXlt&gt;) and as.POSIXct(&lt;POSIXct&gt;) default
    methods now do obey their tz argument, also in this case.
  * as.POSIXlt(&lt;Date&gt;) now does apply a tz (time zone) argument, as
    does as.POSIXct(); partly suggested by Roland Fuss on the R-devel
    mailing list.
  * as.Date.POSIXlt(x) now also works when the list components are of
    unequal length, aka "partially filled" or "ragged".
  * expand.model.frame() looked up variables in the wrong environment
    when applied to models fitted without data.  Reported in
    PR#18414.
  * time() now (also) uses the ts.eps = getOption("ts.eps") argument
    and thus by default rounds values very close to the start (or
    end) of a year.  Based on a proposal by Andre"i V. Kostyrka on
    R-help.
  * Printing of a factanal() result with just one factor and sort =
    TRUE now works regularly, fixing PR#17863 by Timothy Bates,
    thanks to the 'R Contributors' working group.
  * Printing 0-length objects of class "factor", "roman", "hexmode",
    "octmode", "person", "bibentry", or "citation" now prints
    something better, one of which fixes PR#18422, reported by
    Benjamin Feakins.
  * Sys.timezone() queries timedatectl only if systemd is loaded;
    addressing a report by Jan Gorecki in PR#17421.
  * The formula method of cor.test() had scoping problems when
    environment(formula) was not the calling environment; reported
    with a patch proposal by Mao Kobayashi in PR#18439.
  * attach() of an environment with active bindings now preserves the
    active bindings.  Reported by Kevin Ushey in PR#18425.
  * BLAS detection now works also with system-provided libraries not
    available as regular files.  This fixes detection of the
    Accelerate framework on macOS since Big Sur.  Reported by David
    Novgorodsky.
  * download.file() gives a helpful error message in case of an
    invalid download.file.method option, thanks to Colin Fay's report
    in PR#18455.
  * Sporadic crashes of Rterm when using completion have been fixed.
  * Rprof() is now more reliable.  A livelock in thread
    initialization with too short sampling interval has been fixed on
    macOS.  A deadlock in using the C runtime has been fixed on
    Windows.  A potential deadlock has been prevented on Unix.
  * Cursor placement in Rgui now works even after a fixed-width font
    is selected.
  * Mandatory options (options()) are now set on startup so that
    saving and restoring them always works (PR#18372).
  * Package installation, R CMD INSTALL or install.packages(*), now
    parses each of the &lt;pkg&gt;/R/*.R files individually instead of
    first concatenating and then parse()ing the large resulting file.
    This allows parser or syntax errors to be diagnosed with correct
    file names and line numbers, thanks to Simon Dedman's report and
    Bill Dunlap's patch in PR#17859.
    This _does_ require syntactically self contained R source files
    now, fixing another inadvertent bug.
  * predict.lm(&lt;model with offset&gt;) now finds the offset in the
    correct environment, thanks to Andr'e Gillibert's report and patch
    in PR#18456.
  * getInitial(&lt;formula&gt;) now finds the selfStart model in the
    correct environment.  (Reported by Ivan Krylov in PR#18368.)
  * Fix for possible segfault when using recently-added graphics
    features, such as gradients, clipping paths, masks, and groups
    with pdf(file=NULL).
  * class(m) &lt;- class(m) no longer changes a matrix m by adding a
    class _attribute_.
  * packageDate(pkg) now only warns once if there is no pkg.
  * When ts() creates a multivariate time series, "mts", it also
    inherits from "array" now, and is.mts() is documented _and_
    stricter.
  * Rd2txt() now preserves line breaks of \verb Rd content and from
    duplicated \cr.  The former also fixes the rendering of verbatim
    output from Rd \Sexpr in plain-text help.
  * uniroot(f, interval) should no longer wrongly converge _outside_
    the interval in some cases where abs(f(x)) == Inf for an x at the
    interval boundary, thanks to posts by Ben Bolker and Serguei
    Sokol on R-devel.
  * Vectorized alpha handling in palette functions such as in gray(),
    rainbow(), or hcl.colors() works correctly now, thanks to Achim
    Zeileis' report and patch in PR#18476.
  * Formatting and print()ing of bibentry objects has dropped the
    deprecated citation.bibtex.max argument, such that the bibtex
    argument's default for print.bibentry() depends directly on the
    citation.bibtex.max option, whereas in format.bibentry() the
    option no longer applies.
  * Attempting to use a character string naming a foreign function
    entry point in a foreign function call in a package will now
    signal an error if the packages has called R_forceSymbols to
    specify that symbols must be used.
  * An error in table() could permanently set options(warn=2)
    promoting all subsequent warnings to errors.
  * The sigma() function gave misleading results for binary GLMs.  A
    new method for objects of class "glm" returns the square root of
    the estimate of the dispersion parameter using the same
    calculation as summary.glm().
  * bs() and ns() in the (typical) case of automatic knot
    construction, when some of the supposedly inner knots coincide
    with boundary knots, now moves them inside (with a warning),
    building on PR#18442 by Ben Bolker.
  * R CMD on Windows now skips the site profile with --no-site-file
    and --vanilla even when R_PROFILE is set (PR#18512, from Kevin
    Ushey).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1686916800">- CHANGES IN R 4.3.1:
  C-LEVEL FACILITIES:
  * The C-level API version of R's integrate(), Rdqags() in Applic.h,
    now returns the correct number of integrand evaluations neval,
    fixing PR#18515 reported and diagnosed by Stephen Wade.
  * The C prototypes for LAPACK calls dspgv and dtptrs in
    R_exts/Lapack.h had one too many and one too few character length
    arguments - but this has not caused any known issues. To get the
    corrected prototypes, include
    [#]include &lt;Rconfig.h&gt; // for PR18534fixed
    [#]ifdef PR18534fixed
    [#] define usePR18534fix 1
    [#]endif
    [#]include &lt;R_exts/Lapack.h&gt;
    in your C/C++ code (PR#18534).
  INSTALLATION:
  * Many of the checks of esoteric Internet operations and those
    using unreliable external sites have been moved to a new target
    that is not run by default and primarily intended for the core
    developers.  To run them use
    cd tests; make test-Internet-dev
  BUG FIXES:
  * .S3methods(), typically called from methods(), again marks
    methods from package base as visible.
    Also, the visibility of non-base methods is again determined by
    the method's presence in search().
  * tools::Rdiff() is now more robust against invalid strings, fixing
    installation tests on Windows without Rtools installed
    (PR#18530).
  * Fix (new) bug in hcl.colors(2, *), by Achim Zeileis (PR#18523).
  * head(., &lt;illegal&gt;) and tail(..) now produce more useful "Error in
    ...." error messages, fixing PR#18362.
  * Package code syntax on Windows is checked in UTF-8 when UTF-8 is
    the native encoding.
  * na.contiguous(x) now also returns the first run, when it is at
    the beginning and there is a later one of the same length;
    reported to R-devel, including a fix, by Georgi Boshnakov.
    Further, by default, it modifies only an existing attr(*,"tsp")
    but otherwise no longer sets one.
  * chol(&lt;not pos.def&gt;, pivot = &lt;T|F&gt;) now gives a correct error or
    warning message (depending on pivot), thanks to Mikael Jagan's
    (PR#18541).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1699012800">- CHANGES IN R 4.3.2:
  NEW FEATURES:
  * The default initialization of the "repos" option from the
    repositories file at startup can be skipped by setting
    environment variable R_REPOSITORIES to NULL such that
    getOption("repos") is empty if not set elsewhere.
  * qr.X() is now an implicit S4 generic in methods.
  * iconv(to = "ASCII//TRANSLIT") is emulated using substitution on
    platforms which do not support it (notably Alpine Linux).  This
    should give a human-readable conversion in ASCII on all platforms
    (rather than NA_character_).
  * trans3d() gains options continuous and verbose addressing the
    problem of possible "wrap around" when projecting too long
    curves, as reported by Achim Zeileis in PR#18537.
  * tools::showNonASCII() has been rewritten to work better on macOS
    14 (which has a changed implementation of iconv()).
  * tiff(type = "quartz") (the default on macOS) now warns if
    compression is specified: it continues to be ignored.
  INSTALLATION on a UNIX-ALIKE:
  * There is some support for building with Intel's LLVM-based
    compilers on x86_64 Linux, such as (C) icx, (C++) ipcx and
    (Fortran) ifx from oneAPI 2023.x.y.
  * There is support for using LLVM's flang-new as the Fortran
    compiler from LLVM 16.0.x (preferably 17.0.0 or later).
  UTILITIES:
  * R CMD check reports the use of the Fortran 90 random number
    generator RANDOM_NUMBER() and the subroutines to initialize it.
    'Writing R Extensions' has example code to use R's RNGs from
    Fortran.
  BUG FIXES:
  * substr(x, n, L) &lt;- cc now works (more) correctly for multibyte
    UTF-8 strings x when L &gt; nchar(x), thanks to a report and patch
    by 'Architect 95'.
  * contrib.url(character()) now returns 0-length character() as
    documented, which also avoids spurious warnings from
    available.packages() et al. in the edge case of an empty vector
    of repository URLs.
  * readChar(., 4e8) no longer fails, thanks to Kodi Arfer's report
    (PR#18557).
  * lapply(&lt;list&gt;, as.data.frame) no longer warns falsely for some
    base vector components.
  * Communication between parent and child processes in the multicore
    part of parallel could fail on platforms that do not support an
    arbitrarily large payload in system functions read()/write() on
    pipes (seen on macOS where a restriction to INT_MAX bytes is
    documented, without doing a partial read unlike Linux). The
    payload is now split into 1Gb chunks to avoid that problem.
    (PR#18571)
  * qqplot(x,y, conf.level=.) gives better confidence bounds when
    length(x) != length(y), thanks to Alexander Ploner's report and
    patch proposal (PR#18557).
  * norm(&lt;0-length&gt;, "2") now gives zero instead of an error, as all
    the other norm types, thanks to Mikael Jagan's PR#18542.
  * Build-stage Rd macros \packageAuthor and \packageMaintainer now
    process Authors@R, fixing NA results when the package DESCRIPTION
    omits Author and Maintainer fields.
  * Formatting and printing complex numbers could give things like
    0.1683-0i because of rounding error: -0i is now replaced by +0i.
  * postscript() refused to accept a title comment containing the
    letter "W" (PR#18599).
  * isoreg(c(1,Inf)) signals an error instead of segfaulting, fixing
    PR#18603.
  * tiff(type = "Xlib") was only outputting the last page of
    multi-page plots.
  * tools::latexToUtf8() again knows about \~{n} and other letters
    with tilde, fixing a regression in R 4.3.0, and about \^{i} as an
    alternative to \^{\i} (similarly with other accents).
    Furthermore, LaTeX codes for accented I letters are now correctly
    converted, also fixing related mistakes in
    tools::encoded_text_to_latex().
  * tar(*, tar = "internal") no longer creates out-of-spec tar files
    in the very rare case of user or group names longer than 32
    bytes, fixing PR#17871 with thanks to Ivan Krylov.
  * When using the "internal" timezone datetime code, adding a
    fraction of a second no longer adds one second, fixing PR#16856
    from a patch by Ivan Krylov.
  * tools::checkRd() no longer produces spurious notes about
    "unnecessary braces" from multi-line Rd results of \Sexpr macros.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1709208000">- CHANGES IN R 4.3.3:
  NEW FEATURES:
  * iconv() now fixes up variant encoding names such as "utf8"
    case-insensitively.
  DEPRECATED AND DEFUNCT:
  * The legacy encoding = "MacRoman" is deprecated in pdf() and
    postscript(): support was incomplete in earlier versions of R.
  BUG FIXES:
  * Arguments are now properly forwarded to methods on S4 generics
    with ... in the middle of their formal arguments. This was broken
    for the case when a method introduced an argument but did not
    include ... in its own formals. Thanks to Herv'e Pag`es for the
    report PR#18538.
  * Some invalid file arguments to pictex(), postscript() and xfig()
    opened a file called NA rather than throw an error.  These
    included postscript(NULL) (which some people expected to work
    like pdf(NULL)).
  * Passing filename = NA to svg(), cairo_pdf(), cairo_ps() or the
    Cairo-based bitmap devices opened a file called NA: it now throws
    an error.
  * quartz(file = NA) opened a file called NA, including when used as
    a Quartz-based bitmap device.  It now gives an error.
  * rank(&lt;long vector&gt;) now works, fixing PR#18617, thanks to Ilia
    Kats.
  * seq.int() did not adequately check its length.out argument.
  * match(&lt;POSIXct&gt;, .) is correct again for differing time zones,
    ditto for "POSIXlt", fixing PR#18618 reported by Bastian Klein.
  * drop.terms(*, dropx = &lt;0-length&gt;) now works, fixing PR#18563 as
    proposed by Mikael Jagan.
  * drop.terms(*) keeps + offset(.) terms when it should, PR#18565,
    and drop.terms() no longer makes up a response, PR#18566, fixing
    both bugs thanks to Mikael Jagan.
  * getS3method("t", "test") no longer finds the t.test() function,
    fixing PR#18627.
  * pdf() and postscript() support for the documented Adobe encodings
    "Greek" and "Cyrilllic" was missing (although the corresponding
    Windows' codepages could be used).
  * Computations of glyph metric information for pdf() and
    postscript() did not take into account that transliteration could
    replace one character by two or more (only seen on macOS 14) and
    typically warned that the information was not known.
  * rank(x) no longer overflows during integer addition, when
    computing rank average for largish but not-yet long vector x,
    fixing PR#18630, thanks to Ilia Kats.
  * list.files() on Windows now returns also files with names longer
    that 260 bytes (the Windows limit is 260 characters).
    Previously, some file names particularly with 'East Asian'
    characters were omitted.
  * cov2cor(&lt;0 x 0&gt;) now works, fixing PR#18423 thanks to Mikael
    Jagan and Elin Waring.
  * cov2cor(&lt;negative diagonal&gt;) and similar now give one warning
    instead of two, with better wording, fixing PR#18424 thanks to
    Mikael Jagan.
  * tools:: startDynamicHelp() now ensures port is in proper range,
    fixing PR#18645.
  * pbeta(x, a,b) is correct now for x=0 or 1 in the boundary cases
    where a or b or both are 0, fixing PR#18672 thanks to Michael
    Fay.
  * pmatch(x, table) for large table, also called for data frame row
    selection, dfrm[nm, ], is now interruptible, fixing PR#18656.
  * predict(&lt;rank-deficient lm&gt;, newdata=*) fix computing of nbasis,
    see Russ Lenth's comment 29 in PR#16158.
  * Added a work-around for a bug in macOS 14.3.1 and higher which
    prevents R plots in the Quartz Cocoa device from updating on
    screen.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1713960000">- CHANGES IN R 4.4.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Startup banners, R --version, sessionInfo() and R CMD check no
    longer report (64-bit) as part of the platform as this is almost
    universal - the increasingly rare 32-bit platforms will still
    report (32-bit).
    On Windows, ditto for window titles.
  * is.atomic(NULL) now returns FALSE, as NULL is not an atomic
    vector.  Strict back-compatibility would replace is.atomic(foo)
    by (is.null(foo) || is.atomic(foo)) but should happen only
    sparingly.
  NEW FEATURES:
  * The confint() methods for "glm" and "nls" objects have been
    copied to the stats package.  Previously, they were stubs which
    called versions in package MASS. The MASS namespace is no longer
    loaded if you invoke (say) confint(glmfit).  Further, the "glm"
    method for profile() and the plot() and pairs() methods for class
    "profile" have been copied from MASS to stats.  (profile.nls()
    and plot.profile.nls() were already in stats.)
  * The confint() and profile methods for "glm" objects have gained a
    possibility to do profiling based on the Rao Score statistic in
    addition to the default Likelihood Ratio. This is controlled by a
    new test = argument.
  * The pairs() method for "profile" objects has been extended with a
    which = argument to allow plotting only a subset of the
    parameters.
  * The "glm" method for anova() computes test statistics and
    p-values by default, using a chi-squared test or an F test
    depending on whether the dispersion is fixed or free.  Test
    statistics can be suppressed by giving argument test a false
    logical value.
  * In setRepositories() the repositories can be set using their
    names via name = instead of index ind =.
  * methods() and .S3methods() gain a all.names option for the (rare)
    case where functions starting with a . should be included.
  * Serializations can now be interrupted (e.g., by Ctrl-C on a
    Unix-alike) if they take too long, e.g., from save.image(),
    thanks to suggestions by Ivan Krylov and others on R-devel.
  * New startup option --max-connections to set the maximum number of
    simultaneous connections for the session.  Defaults to 128 as
    before: allowed values up to 4096 (but resource limits may in
    practice restrict to smaller values).
  * R on Windows (since Windows 10 2004) now uses the new Segment
    Heap allocator. This may improve performance of some
    memory-intensive applications.
  * When R packages are built, typically by R CMD build &lt;pkg&gt;, the
    new --user=&lt;build_user&gt; option overrides the (internally
    determined) user name, currently Sys.info()["user"] or LOGNAME.
    This is a (modified) fulfillment of Will Landau's suggestion in
    PR#17530.
  * tools::testInstalledBasic() gets new optional arguments outDir
    and testSrcdir, e.g., allowing to use it in a &lt;builddir&gt; !=
    &lt;srcdir&gt; setup, and in standard "binary" Windows installation
  * if* a source tests/ folder is present.
  * range(&lt;DT_with_Inf&gt;, finite = TRUE) now work for objects of class
    "Date", "POSIXct", and "POSIXlt" with infinite entries,
    analogously to range.default(), as proposed by Davis Vaughan on
    R-devel.  Other range()-methods can make use of new function
    .rangeNum().
  * New .internalGenerics object complementing .S3PrimitiveGenerics,
    for documentation and low-level book-keeping.
  * grid() now invisibly returns the x- and y- coordinates at which
    the grid-lines were drawn.
  * norm(., type) now also works for complex matrices.
  * kappa(., exact = TRUE, norm = *) now works for all norms and also
    for complex matrices.  In symmetric / triangular cases, the new
    argument uplo = "U" | "L" allows the upper or lower triangular
    part to be specified.
  * memDecompress(type = "unknown") recognizes compression in the
    default 'zlib' format as used by memCompress(type = "gzip").
  * memCompress() and memDecompress() will use the libdeflate library
    (&lt;https://github.com/ebiggers/libdeflate&gt;) if installed.  This
    uses the same type of compression for type = "gzip" but is 1.5-2x
    faster than the system libz library on some common platforms: the
    speed-up may depend on the library version.
  * diff() for objects of class "Date", "POSIXct", and "POSIXlt"
    accepts a units argument passed via ....
  * Dynamic help now does a much better job of rendering package
    DESCRIPTION metadata.
  * Rprof() gains an event argument and support for elapsed (real)
    time profiling on Unix (PR#18076).
  * filled.contour() gains a key.border argument.
  * tools::update_pkg_po() gets arguments pot_make and mo_make for
    _not_ re-making the corresponding files, and additionally a
    verbose argument.
  * Hexadecimal string colour specifications are now accepted in
    short form, so, for example, we can use "#123", which is
    equivalent to "#112233".
    Thanks to MikeFC for the original idea and Ella Kaye, Malcolm
    Barrett, George Stagg, and Hanne Oberman for the patch.
  * Plain-text help shows \var markup by angle brackets.
  * The new experimental primitive function declare() is intended to
    eventually allow information about R code to be communicated to
    the interpreter, compiler, and code analysis tools. The syntax
    for declarations is still being developed.
  * Functions psmirnov(), qsmirnov() and rsmirnov() in package stats
    have had argument two.sided renamed to alternative, to take into
    account that the permutation distributions of the one-sided
    statistics can be different in the case of ties.  Consequence of
    PR#18582.
  * sort() is now an implicit S4 generic in methods.
  * Formatting and printing, format(z), print(z), of complex vectors
    z no longer zap relatively small real or imaginary parts to zero,
    fixing PR#16752.  This is an API change, as it was documented
    previously to round real and imaginary parts together on purpose,
    producing nicer looking output.  As mentioned, e.g. in the PR,
    this change is compatible with many other "R-like" programming
    environments.
    We have simplified the internal code and now basically format the
    real and imaginary parts independently of each other.
  * New experimental functions Tailcall() and Exec() to support
    writing stack-space-efficient recursive functions.
  * Where characters are attempted to be plotted by pdf(),
    postscript() and xfig() which are not in the selected 8-bit
    character set (most often Latin-1) and the R session is using a
    UTF-8 locale, the warning messages will show the UTF-8 character
    rather than its bytes and one dot will be substituted per
    character rather than per byte.  (Platforms whose iconv() does
    transliteration silently plot the transliteration.)
    In a UTF-8 locale some transliterations are now done with a
    warning (e.g., dashes and Unicode minus to hyphen, ligatures are
    expanded, permille (‰) is replaced by o/oo), although the OS may
    have got there first.  These are warnings as they will continue
    to be replaced by dots in earlier versions of R.
  * The matrix multiplication functions crossprod() and tcrossprod()
    are now also primitive and S3 generic, as %*% had become in R
    4.3.0.
  * source() and example() have a new optional argument catch.aborts
    which allows continued evaluation of the R code after an error.
  * The non-Quartz tiff() devices allow additional types of
    compression if supported by the platform's libtiff library.
  * The list of base and recommended package names is now provided by
    tools::standard_package_names().
  * cairo_pdf() and cairo_ps() default to onefile = TRUE to closer
    match pdf() and postscript().
  * New option catch.script.errors provides a documented way to catch
    errors and then continue in non-interactive use.
  * L %||% R newly in base is an expressive idiom for the phrases
    if(!is.null(L)) L else R or if(is.null(L)) R else L.
  * The return value from warnings() now always inherits from
    "warnings" as documented, now also in the case of no warnings
    where it previously returned NULL.
  * as.complex("1i") now returns 0 + 1i instead of NA with a warning.
  * z &lt;- c(NA, 1i) now keeps the imaginary part Im(z[1]) == 0, no
    longer coercing to NA_complex_.  Similarly, cumsum(z) correctly
    sums real and imaginary parts separately, i.e., without
    "crosstalk" in case of NAs.
  * On Alpine Linux iconv() now maps "latin2", "latin-2", "latin9"
    and "latin-9" to encoding names the OS knows about
    (case-insensitively).
  * iconv(sub = "Unicode") now always zero-pads to four (hex) digits,
    rather than to 4 or 8.  (This seems to have become the convention
    once Unicode restricted the number of Unicode points to 2^21 - 1
    and so will never need more than 6 digits.)
  * NCOL(NULL) now returns 0 instead of 1, for consistency with
    cbind().
  * The information for the Euro glyph missing from the Adobe .afm
    files for the Courier, Helvetica and Times families has been
    copied from their URW equivalents - this will improve vertical
    centring in the pdf() and postscript() devices.
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.12.0.  The changes are almost entirely cosmetic.
  * The included LAPACK sources have been updated to version 3.12.0
    and some further double-complex routines added.
  * There are new font families for the 2014--5 URW 2.0 fonts (see
    ?pdf) which are included in recent versions of Ghostscript.
    These have font widths for most Greek glyphs and a few others
    which were missing from the original versions (whose font
    families remain available for reproducibility, although
    Ghostscript-based viewers will render using the 2.0 versions).
  * Improve the large-n efficiency of as.matrix(&lt;dist&gt;), thanks an R
    contributors effort, notably by Tim Taylor and Heather Turner,
    see PR#18660.
  * The default and numeric methods of all.equal() get a check.class
    option.
  * zapsmall() gets new optional arguments, function mFUN and min.d,
    for extra flexibility; fulfills a wish in PR#18199.  Also, it is
    now an implicit S4 generic in package methods.
  * The Rd filter for aspell() gains an ignore argument.
  * New generic function sort_by(), primarily useful for the
    data.frame method which can be used to sort rows of a data frame
    by one or more columns.
  * The icence headers for the RPC code in src/extra/xdr have been
    updated to use the GPL-compatible licence published by Oracle
    America in 2010.
  * New function pkg2HTML() in tools to create single-page HTML
    reference manuals for R packages.
  * The byte code evaluator now uses less C stack space for recursive
    calls to byte-compiled functions. It also makes more of an effort
    to avoid allocations for scalar return values.
  * New completion option backtick (disabled by default) allows
    non-syntactic completions to be wrapped in backquotes. This is
    currently only useful for Jupyter notebooks via the IRkernel
    package, and may cause problems for other backends.
  INSTALLATION:
  * The parser has been updated to work with bison 3.8.2, which is
    now used for the pre-generated parsers in gram.c, file.c, and
    gramRd.c. A few parser error messages have changed, which may
    affect code that relies on exact messages.
  INSTALLATION on a UNIX-ALIKE:
  * System valgrind headers are now required to use configure option
  - -with-valgrind-instrumentation with value 1 or 2.
  * configure will warn if it encounters a 32-bit build, as that is
    nowadays almost untested.
  * Environment variable R_SYSTEM_ABI is no longer used and so no
    longer recorded in etc/Renviron (it was not on Windows and was
    only ever used when preparing package tools).
  * If the libdeflate library and headers are available, libdeflate
    rather than libz is used to (de)compress R objects in lazy-load
    databases.  Typically tasks spend up to 5% of their time on such
    operations, although creating lazy-data databases is one of the
    exceptions.
    This can be suppressed if the library is available by the
    configure option --without-libdeflate-compression.
  * configure option --enable-lto=check has not worked reliably since
    2019 and has been removed.
  * The minimum autoconf requirement for a maintainer build has been
    increased to autoconf 2.71.
    It is intended to increase this to 2.72 for R 4.5.0: the
    distributed configure file was generated using 2.72.
  * The minimum version requirement for an external LAPACK has been
    reduced to 3.9.0.
  * No default C++ compiler is set if no C++17 compiler is detected:
    there is no longer an automatic fallback to C++14 or C++11.
    Compilers from the last five years should have sufficient
    support: for others macros CXX and CXXSTD can be set in file
    config.site to provide a fallback if needed.
    The Objective-C++ compiler now by default uses the standard
    selected by R for C++ (currently C++17) rather than the default
    standard for the C++ compiler (which on macOS is still C++98).
  INSTALLATION on macOS:
  * A new configure option --with-newAccelerate makes use of Apple's
    'new' BLAS / LAPACK interfaces in their Accelerate framework.
    Those interfaces are only available in macOS 13.3 or later, and
    building requires SDK 13.3 or later (from the Command Line Tools
    or Xcode 14.3 or later).
    By default the option uses new Accelerate for BLAS calls: to also
    use it for LAPACK use option --with-newAccelerate=lapack.  The
    later interfaces provide LAPACK 3.9.1 rather than 3.2.1: 3.9.1 is
    from 2021-04 and does not include the improved algorithms
    introduced in LAPACK 3.10.0 (including for BLAS calls).
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools44, an update of the Rtools43 toolchain.  It is
    based on GCC 13 and newer versions of MinGW-W64, binutils and
    libraries (targeting 64-bit Intel CPUs).  R-devel can no longer
    be built using Rtools43 without changes.
  * Rtools44 has experimental support for 64-bit ARM (aarch64) CPUs
    _via_ the LLVM 17 toolchain using lld, clang/flang-new and
    libc++.
  UTILITIES:
  * R CMD check notes when S4-style exports are used without
    declaring a strong dependence on package methods.
  * tools::checkRd() (used by R CMD check) detects more problems with
    \Sexpr-based dynamic content, including bad nesting of \Sexprs
    and invalid arguments.
  * tools::checkRd() now reports Rd titles and section names ending
    in a period; this is ignored by R CMD check unless environment
    variable _R_CHECK_RD_CHECKRD_MINLEVEL_ is set to -5 or smaller.
  * R CMD check now notes Rd files without an \alias, as long
    documented in 'Writing R Extensions' §1.3.1.  The check for a
    missing \description has been moved from tools::checkRd() to
    tools::checkRdContents().
  * R CMD check now visits inst/NEWS.Rd and OS-specific man
    subdirectories when checking Rd files.
  * tools::checkDocFiles() and tools::checkRdContents() now also
    check internal Rd files by default, but "specially" (ignoring
    missing documentation of arguments).
  * R CMD Rdiff gets option --useEx.
  * R CMD check now warns on non-portable uses of Fortran KIND such
    as INTEGER(KIND=4) and REAL(KIND=8).
    To see the failing lines set environment variable
    _R_CHECK_FORTRAN_KIND_DETAILS_ to a true value.
  * When checking Rd files, R CMD check now notes some of the "lost
    braces" that tools::checkRd() finds.  Typical problems are Rd
    macros missing the initial backslash (e.g., code{...}), in-text
    set notation (e.g., {1, 2}, where the braces need escaping), and
    \itemize lists with \describe-style entries of the form
    \item{label}{description}.
  * R CMD INSTALL (and hence check) will compile C++ code with
  - DR_NO_REMAP if environment variable _R_CXX_USE_NO_REMAP_ is set
    to a true value.  It is planned that this will in future become
    the default for compiling C++.
  * The new built-in Rd macro \dontdiff{} can be used to mark example
    code whose output should be ignored when comparing check output
    to reference output (tests/Examples/&lt;pkg&gt;-Ex.Rout.save).  The
    \dontdiff tag, like \donttest, is _not_ shown on the rendered
    help page, so provides a clean alternative to ##
    IGNORE_RDIFF_(BEGIN|END) comments.
  * R CMD build when there is no NAMESPACE, now uses the recommended
    exportPattern("^[^.]"), instead of exporting everything.
  * R CMD check now warns about non-ASCII characters in the NAMESPACE
    file (in addition to R files). Such packages are not portable and
    may fail to install on some platforms.
  C-LEVEL FACILITIES:
  * Headers R_ext/Applic.h and R-ext/Linpack.h used to include
    R_ext/BLAS.h although this was undocumented and unneeded by their
    documented entry points.  They no longer do so.
  * New function R_missing(), factored out from do_missing(), used to
    fix PR#18579.
  * SEXP type S4SXP has been renamed to OBJSXP to support
    experimenting with alternative object systems.  The S4SXP value
    can still be used in C code but is now deprecated.  Based on
    contributions from the R Consortium's Object-Oriented Programming
    Working Group.
  * New function pow1p(x,y) for accurate (1+x)^y.
  * mkCharLenCE was incorrectly documented to take a size_t length
    but was implemented with int (and character strings in R are
    limited to 2^31 - 1 bytes).
  DEPRECATED AND DEFUNCT:
  * data() no longer handles zipped data from long-defunct (since R
    2.13.0) --use-zip-data installations.
  * The legacy graphics devices pictex() and xfig() are now
    deprecated.  They do not support recent graphics enhancements and
    their font handling is rudimentary. The intention is to retain
    them for historical interest as long as they remain somewhat
    functional.
  * Support for encoding = "MacRoman" has been removed from the pdf()
    and postscript() devices - this was a legacy encoding supporting
    classic macOS up to 2001 and no longer has universal libiconv
    support.
  * is.R() is deprecated as no other S dialect is known to be in use
    (and this could only identify historical dialects, not future
    ones).
    Further information on calls can be obtained by setting the
    environment variable _R_DEPRECATED_IS_R_ to error which turns the
    deprecation warning into an error and so by default gives a
    traceback.  (This is done by R CMD check --as-cran.)
  * UseMethod() no longer forwards local variables assigned in the
    generic function into method call environments before evaluating
    the method body. This makes method calls behave more like
    standard function calls and makes method code easier to analyze
    correctly.
  * The twelve as.data.frame.&lt;class&gt;() methods which were deprecated
    only via _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ and in R CMD
    check --as-cran are formally deprecated now in favour of calling
    as.data.frame() or as.data.frame.vector().  The deprecation
    "check" now works also when as.data.frame() is S4 generic thanks
    to Ivan Krylov.
  * The default method for the directional comparison operators &lt;, &gt;,
    &lt;=, and &gt;= now signals an error when one of the operands is a
    language object, i.e. a symbol or a call.
  * For terms.formula(), deprecate abb and neg.out arguments
    _formally_ in addition to just documenting it.
  BUG FIXES:
  * The methods package is more robust to not being attached to the
    search path.  More work needs to be done.
  * pairwise.t.test() misbehaved when subgroups had 0 DF for
    variance, even with pool.sd = TRUE.  (PR#18594 by Jack Berry).
  * Probability distribution functions [dpq]&lt;distrib&gt;(x, *), but also
    bessel[IKJY](x, .) now consistently preserve attributes(x) when
    length(x) == 0, e.g., for a 2 x 0 matrix, thanks to Karolis
    Koncevičius' report PR#18509.
  * Group "Summary" computations such as sum(1:3, 4, na.rm = 5, NA,
    7, na.rm = LL) now give an error instead of either 17 or NN for
    LL true or false, as proposed by Ivan Krylov on the R-devel
    mailing list.  (This also means it is now an error to specify
    na.rm more than once.)
  * as.complex(x) now returns complex(real = x, imaginary = 0) for
    _all_ numerical and logical x, notably also for NA or
    NA_integer_.
  * Directories are now omitted by file.copy(, recursive = FALSE) and
    in file.append() (PR#17337).
  * gsub() and sub() are now more robust to integer overflow when
    reporting errors caused by too large input strings (PR#18346).
  * Top-level handlers are now more robust to attempts to remove a
    handler whilst handlers are running (PR#18508).
  * The handling of Alt+F4 in dialogs created on Windows using
    GraphApp has been fixed (PR#13870).
  * density() more consistently computes grid values for the
    FFT-based convolution, following Robert Schlicht's analysis and
    proposal in PR#18337, correcting density values typically by a
    factor of about 0.999.  Argument old.coords = TRUE provides back
    compatibility.
  * palette.colors() gains a name argument that defaults to FALSE
    controlling whether the vector of colours that is returned has
    names (where possible).  PR#18529.
  * tools::xgettext() no longer extracts the (non-translatable) class
    names from warningCondition and errorCondition calls.
  * S3method(&lt;gen&gt;, &lt;class&gt;, &lt;func&gt;) in the NAMESPACE file now works
    (again) when &lt;func&gt; is visible from the namespace, e.g.,
    imported, or in base.
  * getParseData(f) now also works for a function defined in the
    first of several &lt;pkg&gt;/R/*.R source files, thanks to Kirill
    Müller's report and Duncan Murdoch's patch in PR#16756.
  * Rd \Sexpr macros with nested #ifdef conditionals were not
    processed.
  * A non-blocking connection with non-default encoding (such as a
    socket) now correctly returns from readLines() after new data has
    arrived also when its EOF had been reached previously.  Thanks to
    Peter Meilstrup's report on R-devel and Ivan Krylov's report and
    patch proposal in PR#18555.
  * tools::checkRdContents() failed to detect empty argument
    descriptions when they spanned multiple lines, including those
    generated by prompt().  These cases are now noted by R CMD check.
  * Plain-text help no longer outputs spurious colons in the
    arguments list (for multi-line \item labels in the Rd source).
  * kappa() and rcond() work correctly in more cases; kappa(., norm =
    "2") now warns that it computes the 1-norm with (default) exact =
    FALSE; prompted by Mikael Jagan's quite comprehensive PR#18543.
  * Rd skeletons generated by prompt() or promptData() now use a
    dummy title (so R CMD build works).  tools::checkRdContents() has
    been updated to detect such template leftovers, including from
    promptPackage().
  * When S4 method dispatch fails because no method was found, the
    error message now includes the signature argument names; thanks
    to Michael Chirico's proposal on the R-devel list.
  * withAutoprint({ .. }) now preserves srcrefs previously lost,
    thanks to Andrew Simmons' report plus fix in PR#18572.
  * transform.data.frame() no longer adjusts names; in particular,
    untransformed variables are kept as-is, including those with
    syntactically invalid names (PR#17890).
  * The keep.source option for Rd \Sexpr blocks is no longer ignored.
  * The formula methods for t.test() and wilcox.test() now catch when
    paired is passed, addressing PR#14359; use Pair(x1, x2) ~ 1 for a
    paired test.
  * The level reported in the browser prompt was often too large. It
    now shows the number of browser contexts on the stack.
  * For cbind() and rbind(), the optional deparse.level argument is
    now properly passed to methods, thanks to Mikael Jagan's PR#18579
    and comments there.
  * Some error and warning messages for large ('long vector')
    matrix(v, nr, nc) and dim(m) &lt;- d are now correct about sizes,
    using long long formatting, fixing PR#18612 (and more) reported
    by Mikael Jagan.
  * readChar(useBytes = TRUE) now terminates strings even when the
    underlying connection uses extra spaces in the input buffer.
    This fixes problems with extra garbage seen with gzip
    connections, PR#18605.
  * Named capture in PCRE regular expressions now works also with
    more than 127 named groups (PR#18588).
  * Datetime functions are now robust against long jumps when dealing
    with internal time zone changes.  This avoids confusing warnings
    about an invalid time zone, previously triggered by turning
    warnings into errors or handling them via tryCatch (PR#17966,
    PR#17780).
  * Datetime functions now restore even an empty TZ environment
    variable after internal time zone changes (PR#17724).  This makes
    results of datetime functions with this (typically unintentional)
    setting more predictable.
  * drop.terms(*) now drops response as by default, keep.response =
    FALSE, fixing PR#18564 thanks to Mikael Jagan.
  * dummy.coef(.) now also works for lm()-models with character
    categorical predictor variables rather than factor ones, fixing
    PR#18635 reported by Jinsong Zhao.
  * formals(f) &lt;- formals(f) now also works for a function w/o
    arguments and atomic _constant_ body(f).
  * Correct as.function(&lt;invalid list&gt;, .)'s error message.
  * removeSource() is yet more thorough in finding and removing
    "srcref" and the other source references from parsed R language
    chunks, fixing PR#18638 thanks to Andrew Simmons.
  * dgeom() is more accurate now, notably when its result is very
    small, fixing PR#18642 thanks to the proposal of Morten Welinder,
    also improving other instances where C level binom_raw(x, n, ..)
    has x == 0 or x== n.
  * warning() with options(warn = 1) has improved output for
    multi-line messages.
  * axis.Date() and axis.POSIXct() now respect the par("lab") setting
    for the number of pretty() intervals.
  * Comparisons for language objects (which are based on deparsing)
    are now more careful about using accurate deparsed results
    (PR#18676).
  * Plain-text help (Rd2txt) now correctly preserves blank lines
    following single-line \dontrun code.
  * &lt;POSIXlt&gt;[*] no longer sets wrong "balanced" attribute, fixing
    PR#18681 thanks to Mikael Jagan.
  * str(&lt;classed-call&gt;) now deparses the call as expected, fixing
    PR#18684, reported by Dave Slager.
  * In Rd examples, code following the closing brace of a \dontrun,
    \dontshow or \donttest tag on the same line is no longer skipped
    when R CMD check runs the examples.
  * as.data.frame(matrix(*, ncol=0)) now gets valid names() and
    colnames(); reported by Davis Vaughan on the R-devel list.
  * Internal Mathlib function stirlerr(n) is now almost fully
    (52-bit) accurate for all n &gt;= ~5.9 and more accurate also in the
    range 1 -- 5.9.  This entails small ("after 12th decimal")
    changes in density functions, e.g., dgamma() in _some_ regions of
    their support.  The fix was partly prompted by Morten Welinder's
    PR#18640.
  * Numbers like 9876543.2 are now considered non-integer by Mathlib
    internal R_nonint(), amending original fix of PR#15734.
  * Rd comment lines no longer cause broken paragraphs in the
    rendered PDF and plain-text help. In code blocks, pure comment
    lines (starting with %) no longer produce an empty line.
  * xtabs(Freq ~ .) now consistently defaults to na.action = na.pass,
    using na.rm = FALSE (added as an argument) when summing over Freq
    (PR#17770).
  * tools::testInstalledPackage() is no longer silent about failures
    from running examples or tests and its return code no longer
    ignores failures from checking vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1718366400">- CHANGES IN R 4.4.1:
  C-LEVEL FACILITIES:
  * Functions R_atof and R_strtod declared in header R_ext/Utils.h
    are now documented in 'Writing R Extensions' and so formally part
    of the API.
  * The non-API entry points Rf_setSVector, Rf_StringFalse,
    Rf_StringTrue and Rf_isBlankString have been added to those
    reported by R CMD check.
  * The new function Rf_allocLang is now available. This provides an
    alternative to the idiom of calling Rf_allocList followed by
    SET_TYPEOF.
  UTILITIES:
  * R CMD check now reports as warnings what gfortran calls 'Fortran
    2018 deleted features', all of which have long been marked as
    'obsolescent' and some of which were deleted in Fortran 2008 or
    earlier.  Fortran compilers are no longer required to support
    these.
  BUG FIXES:
  * as.numeric(), scan(), type.convert() and other places which use
    the internal C function R_strtod now require a _non-empty_ digit
    sequence in a decimal or binary exponent.  This aligns with the
    C/POSIX standard for strtod and with ?NumericConstants.
  * as.data.frame(m, make.names=NA) now works correctly for a matrix
    m with NA's in row names.
  * The error message from &lt;POSIXlt&gt;[["hour"]] and similar now
    mentions *[[, "hour"]], as wished for in PR#17409 and proposed by
    Michael Chirico.
  * qbinom() and potentially qpois(), qnbinom(), no longer sometimes
    fail accurate inversion (of pbinom(), etc), thanks to Christopher
    Chang's report and patch in PR#18711.
  * The internal help server on Windows can again serve requests sent
    in quick succession, fixing a regression in R 4.4.0.
  * debugcall(&lt;S3Generic&gt;()) now also works when a corresponding
    S4-generic version is in the methods cache (PR#18143).
  * Package tools' toTitleCase(ch0) now returns character(0) when ch0
    is of zero length; fixing PR#18724, reported by David Hugh Jones.
  * R CMD check is no longer broken (without a check result and no
    explanation in 00check.log) for a package which declares an
    invalid VignetteBuilder in DESCRIPTION but has no vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1730376000">- CHANGES IN R 4.4.2:
  C-LEVEL FACILITIES:
  * The S-compatibility macros F77_COM and F77_COMDECL defined in
    header R_ext/RS.h are deprecated and will be removed shortly.  We
    could find no record of their use.
  BUG FIXES:
  * Mathlib function lgammacor(x) no longer warns about underflow to
    zero for large x.
  * Text widths and heights were incorrectly reported by the Quartz
    device if the drawing context didn't exist yet (typically when
    drawing off-screen to a window that is yet to appear, see
    PR#18591).
  * The Quartz device could segfault in cases where paths with spaces
    are used in the new glyph drawing API.  Thanks to Tomek
    Gieorgijewski (PR#18758).
  * On macOS in R CRAN builds, it is again possible to read
    little-endian UTF-16 text with a BOM from a connection using
    encoding="UTF-16".  Users building R from source should avoid
    using the system libiconv in macOS 14.1 and later.
  * methods' internal .requirePackage() now re-enables primitive
    method dispatch when needed; thanks to Ivan Krylov for
    demystifying CRAN package check failures on the R-devel mailing
    list.</changelog>
</package>
<package pkgid="c4a555449e31c2c0f8f3b0bae81abb98e0b5d81b232a71c4cae40f8a320506f30c74c1c30738ccb1d9956b86e525c69934f87169c1ad61802eceb755d0b9850a" name="R-survival-debuginfo" arch="x86_64">
  <version epoch="0" ver="3.7.0" rel="51.0.2.2.sr20241103"/>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1620302400">- To get in sync with d:l:R:autoCRAN the Matrix package's split
  in -devel was reversed.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339200">- improved spec file according to comments of dimstar in
  https://build.opensuse.org/request/show/892685</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339201">- CHANGES IN R 4.1.0:
  FUTURE DIRECTIONS:
  * It is planned that the 4.1.x series will be the last to support
    32-bit Windows, with production of binary packages for that
    series continuing until early 2023.
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Data set esoph in package datasets now provides the correct
    numbers of controls; previously it had the numbers of cases added
    to these.  (Reported by Alexander Fowler in PR#17964.)
  NEW FEATURES:
  * www.omegahat.net is no longer one of the repositories known by
    default to setRepositories().  (Nowadays it only provides source
    packages and is often unavailable.)
  * Function package_dependencies() (in package tools) can now use
    different dependency types for direct and recursive dependencies.
  * The checking of the size of tarball in R CMD check --as-cran
    &lt;pkg&gt; may be tweaked via the new environment variable
    _R_CHECK_CRAN_INCOMING_TARBALL_THRESHOLD_, as suggested in
    PR#17777 by Jan Gorecki.
  * Using c() to combine a factor with other factors now gives a
    factor, an ordered factor when combining ordered factors with
    identical levels.
  * apply() gains a simplify argument to allow disabling of
    simplification of results.
  * The format() method for class "ftable" gets a new option justify.
    (Suggested by Thomas Soeiro.)
  * New ...names() utility.  (Proposed by Neal Fultz in PR#17705.)
  * type.convert() now warns when its as.is argument is not
    specified, as the help file always said it _should_.  In that
    case, the default is changed to TRUE in line with its change in
    read.table() (related to stringsAsFactor) in R 4.0.0.
  * When printing list arrays, classed objects are now shown _via_
    their format() value if this is a short enough character string,
    or by giving the first elements of their class vector and their
    length.
  * capabilities() gets new entry "Rprof" which is TRUE when R has
    been configured with the equivalent of --enable-R-profiling (as
    it is by default).  (Related to Michael Orlitzky's report
    PR#17836.)
  * str(xS4) now also shows extraneous attributes of an S4 object
    xS4.
  * Rudimentary support for vi-style tags in rtags() and R CMD rtags
    has been added.  (Based on a patch from Neal Fultz in PR#17214.)
  * checkRdContents() is now exported from tools; it and also
    checkDocFiles() have a new option chkInternal allowing to check
    Rd files marked with keyword "internal" as well.  The latter can
    be activated for R CMD check via environment variable
    _R_CHECK_RD_INTERNAL_TOO_.
  * New functions numToBits() and numToInts() extend the raw
    conversion utilities to (double precision) numeric.
  * Functions URLencode() and URLdecode() in package utils now work
    on vectors of URIs.  (Based on patch from Bob Rudis submitted
    with PR#17873.)
  * path.expand() can expand ~user on most Unix-alikes even when
    readline is not in use.  It tries harder to expand ~, for example
    should environment variable HOME be unset.
  * For HTML help (both dynamic and static), Rd file links to help
    pages in external packages are now treated as references to
    topics rather than file names, and fall back to a file link only
    if the topic is not found in the target package. The earlier rule
    which prioritized file names over topics can be restored by
    setting the environment variable _R_HELP_LINKS_TO_TOPICS_ to a
    false value.
  * c() now removes NULL arguments before dispatching to methods,
    thus simplifying the implementation of c() methods, _but_ for
    back compatibility keeps NULL when it is the first argument.
    (From a report and patch proposal by Lionel Henry in PR#17900.)
  * Vectorize()'s result function's environment no longer keeps
    unneeded objects.
  * Function ...elt() now propagates visibility consistently with
    ..n.  (Thanks to Lionel Henry's PR#17905.)
  * capture.output() no longer uses non-standard evaluation to
    evaluate its arguments.  This makes evaluation of functions like
    parent.frame() more consistent.  (Thanks to Lionel Henry's
    PR#17907.)
  * packBits(bits, type="double") now works as inverse of
    numToBits().  (Thanks to Bill Dunlap's proposal in PR#17914.)
  * curlGetHeaders() has two new arguments, timeout to specify the
    timeout for that call (overriding getOption("timeout")) and TLS
    to specify the minimum TLS protocol version to be used for
    https:// URIs (_inter alia_ providing a means to check for sites
    using deprecated TLS versions 1.0 and 1.1).
  * For nls(), an optional constant scaleOffset may be added to the
    denominator of the relative offset convergence test for cases
    where the fit of a model is expected to be exact, thanks to a
    proposal by John Nash.  nls(*, trace=TRUE) now also shows the
    convergence criterion.
  * Numeric differentiation _via_ numericDeriv() gets new optional
    arguments eps and central, the latter for taking central divided
    differences.  The latter can be activated for nls() via
    nls.control(nDcentral = TRUE).
  * nls() now passes the trace and control arguments to getInitial(),
    notably for all self-starting models, so these can also be fit in
    zero-noise situations via a scaleOffset.  For this reason, the
    initial function of a selfStart model must now have ... in its
    argument list.
  * bquote(splice = TRUE) can now splice expression vectors with
    attributes: this makes it possible to splice the result of
    parse(keep.source = TRUE).  (Report and patch provided by Lionel
    Henry in PR#17869.)
  * textConnection() gets an optional name argument.
  * get(), exists(), and get0() now signal an error if the first
    argument has length greater than 1.  Previously additional
    elements were silently ignored.  (Suggested by Antoine Fabri on
    R-devel.)
  * R now provides a shorthand notation for creating functions, e.g.
    \(x) x + 1 is parsed as function(x) x + 1.
  * R now provides a simple native forward pipe syntax |&gt;.  The
    simple form of the forward pipe inserts the left-hand side as the
    first argument in the right-hand side call.  The pipe
    implementation as a syntax transformation was motivated by
    suggestions from Jim Hester and Lionel Henry.
  * all.equal(f, g) for functions now by default also compares their
    environment(.)s, notably via new all.equal method for class
    function.  Comparison of nls() fits, e.g., may now need
    all.equal(m1, m2, check.environment = FALSE).
  * .libPaths() gets a new option include.site, allowing to _not_
    include the site library.  (Thanks to Dario Strbenac's suggestion
    and Gabe Becker's PR#18016.)
  * Lithuanian translations are now available.  (Thanks to Rimantas
    Zakauskas.)
  * names() now works for DOTSXP objects.  On the other hand, in
    R-lang, the R language manual, we now warn against relying on the
    structure or even existence of such dot-dot-dot objects.
  * all.equal() no longer gives an error on DOTSXP objects.
  * capabilities("cairo") now applies only to the file-based devices
    as it is now possible (if very unusual) to build R with Cairo
    support for those but not for X11().
  * There is optional support for tracing the progress of
    loadNamespace() - see its help.
  * (Not Windows.)  l10n_info() reports an additional element, the
    name of the encoding as reported by the OS (which may differ from
    the encoding part (if any) of the result from
    Sys.getlocale("LC_CTYPE").
  * New function gregexec() which generalizes regexec() to find _all_
    disjoint matches and well as all substrings corresponding to
    parenthesized subexpressions of the given regular expression.
    (Contributed by Brodie Gaslam.)
  * New function charClass() in package utils to query the
    wide-character classification functions in use (such as
    iswprint).
  * The names of quantile()'s result no longer depend on the global
    getOption("digits"), but quantile() gets a new optional argument
    digits = 7 instead.
  * grep(), sub(), regexp and variants work considerably faster for
    long factors with few levels.  (Thanks to Michael Chirico's
    PR#18063.)
  * Provide grouping of x11() graphics windows within a window
    manager such as Gnome or Unity; thanks to a patch by Ivan Krylov
    posted to R-devel.
  * The split() method for class data.frame now allows the f argument
    to be specified as a formula.
  * sprintf now warns on arguments unused by the format string.
  * New palettes "Rocket" and "Mako" for hcl.colors() (approximating
    palettes of the same name from the 'viridisLite' package).
    Contributed by Achim Zeileis.
  * The base environment and its namespace are now locked (so one can
    no longer add bindings to these or remove from these).
  * Rterm handling of multi-byte characters has been improved,
    allowing use of such characters when supported by the current
    locale.
  * Rterm now accepts ALT+ +xxxxxxxx sequences to enter Unicode
    characters as hex digits.
  * Environment variable LC_ALL on Windows now takes precedence over
    LC_CTYPE and variables for other supported categories, matching
    the POSIX behaviour.
  * duplicated() and anyDuplicated() are now optimized for integer
    and real vectors that are known to be sorted via the ALTREP
    framework. Contributed by Gabriel Becker via PR#17993.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 14
    and so packages that provide graphics devices should be
    reinstalled.
  * Graphics devices should now specify deviceVersion to indicate
    what version of the graphics engine they support.
  * Graphics devices can now specify deviceClip.  If TRUE, the
    graphics engine will never perform any clipping of output itself.
    The clipping that the graphics engine does perform (for both
    canClip = TRUE and canClip = FALSE) has been improved to avoid
    producing unnecessary artifacts in clipped output.
  * The grid package now allows gpar(fill) to be a linearGradient(),
    a radialGradient(), or a pattern().  The viewport(clip) can now
    also be a grob, which defines a clipping path, and there is a new
    viewport(mask) that can also be a grob, which defines a mask.
    These new features are only supported so far on the Cairo-based
    graphics devices and on the pdf() device.
  * (Not Windows.)  A warning is given when a Cairo-based type is
    specified for a png(), jpeg(), tiff() or bmp() device but Cairo
    is unsupported (so type = "Xlib" is tried instead).
  * grSoftVersion() now reports the versions of FreeType and
    FontConfig if they are used directly (not _via_ Pango), as is
    most commonly done on macOS.
  C-LEVEL FACILITIES:
  * The _standalone_ libRmath math library and R's C API now provide
    log1pexp() again as documented, and gain log1mexp().
  INSTALLATION on a UNIX-ALIKE:
  * configure checks for a program pkgconf if program pkg-config is
    not found.  These are now only looked for on the path (like
    almost all other programs) so if needed specify a full path to
    the command in PKG_CONFIG, for example in file config.site.
  * C99 function iswblank is required - it was last seen missing ca
    2003 so the workaround has been removed.
  * There are new configure options --with-internal-iswxxxxx,
  - -with-internal-towlower and --with-internal-wcwidth which allows
    the system functions for wide-character classification,
    case-switching and width (wcwidth and wcswidth) to be replaced by
    internal ones.  The first has long been used on macOS, AIX (and
    Windows) but this enables it to be unselected there and selected
    for other platforms (it is the new default on Solaris).  The
    second is new in this version of R and is selected by default on
    macOS and Solaris.  The third has long been the default and
    remains so as it contains customizations for East Asian
    languages.
    System versions of these functions are often minimally
    implemented (sometimes only for ASCII characters) and may not
    cover the full range of Unicode points: for example Solaris (and
    Windows) only cover the Basic Multilingual Plane.
  * Cairo installations without X11 are more likely to be detected by
    configure, when the file-based Cairo graphics devices will be
    available but not X11(type = "cairo").
  * There is a new configure option --with-static-cairo which is the
    default on macOS.  This should be used when only static cairo
    (and where relevant, Pango) libraries are available.
  * Cairo-based graphics devices on platforms without Pango but with
    FreeType/FontConfig will make use of the latter for font
    selection.
  LINK-TIME OPTIMIZATION on a UNIX-ALIKE:
  * Configuring with flag --enable-lto=R now also uses LTO when
    installing the recommended packages.
  * R CMD INSTALL and R CMD SHLIB have a new flag --use-LTO to use
    LTO when compiling code, for use with R configured with
  - -enable-lto=R.  For R configured with --enable-lto, they have
    the new flag --no-use-LTO.
    Packages can opt in or out of LTO compilation _via_ a UseLTO
    field in the DESCRIPTION file.  (As usual this can be overridden
    by the command-line flags.)
  BUILDING R on Windows:
  * for GCC &gt;= 8, FC_LEN_T is defined in config.h and hence character
    lengths are passed from C to Fortran in _inter alia_ BLAS and
    LAPACK calls.
  * There is a new text file src/gnuwin32/README.compilation, which
    outlines how C/Fortran code compilation is organized and
    documents new features:
  * R can be built with Link-Time Optimization with a suitable
    compiler - doing so with GCC 9.2 showed several
    inconsistencies which have been corrected.
  * There is support for cross-compiling the C and Fortran code
    in R and standard packages on suitable (Linux) platforms.
    This is mainly intended to allow developers to test later
    versions of compilers - for example using GCC 9.2 or 10.x has
    detected issues that GCC 8.3 in Rtools40 does not.
  * There is experimental support for cross-building R packages
    with C, C++ and/or Fortran code.
  * The R installer can now be optionally built to support a single
    architecture (only 64-bit or only 32-bit).
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++14 where
    available (which it is on all currently checked platforms): if
    not (as before) C++11 is used if available otherwise C++ is not
    supported.
    Packages which specify C++11 will still be installed using C++11.
    C++14 compilers may give deprecation warnings, most often for
    std::random_shuffle (deprecated in C++14 and removed in C++17).
    Either specify C++11 (see 'Writing R Extensions') or modernize
    the code and if needed specify C++14.  The latter has been
    supported since R 3.4.0 so the package's DESCRIPTION would need
    to include something like
    Depends: R (&gt;= 3.4)
  PACKAGE INSTALLATION on Windows:
  * R CMD INSTALL and R CMD SHLIB make use of their flag --use-LTO
    when the LTO_OPT make macro is set in file etc/${R_ARCH}/Makeconf
    or in a personal/site Makevars file.  (For details see 'Writing R
    Extensions' SS4.5.)
    This provides a valuable check on code consistency.  It does work
    with GCC 8.3 as in Rtools40, but that does not detect everything
    the CRAN checks with current GCC do.
  PACKAGE INSTALLATION on macOS:
  * The default personal library directory on builds with
  - -enable-aqua (including CRAN builds) now differs by CPU type,
    one of
    ~/Library/R/x86_64/x.y/library
    ~/Library/R/arm64/x.y/library
    This uses the CPU type R (and hence the packages) were built for,
    so when a x86_64 build of R is run under Rosetta emulation on an
    arm64 Mac, the first is used.
  UTILITIES:
  * R CMD check can now scan package functions for bogus return
    statements, which were possibly intended as return() calls (wish
    of PR#17180, patch by Sebastian Meyer). This check can be
    activated via the new environment variable
    _R_CHECK_BOGUS_RETURN_, true for --as-cran.
  * R CMD build omits tarballs and binaries of previous builds from
    the top-level package directory.  (PR#17828, patch by Sebastian
    Meyer.)
  * R CMD check now runs sanity checks on the use of LazyData, for
    example that a data directory is present and that
    LazyDataCompression is not specified without LazyData and has a
    documented value.  For packages with large LazyData databases
    without specifying LazyDataCompression, there is a reference to
    the code given in 'Writing R Extensions' SS1.1.6 to test the
    choice of compression (as in all the CRAN packages tested a
    non-default method was preferred).
  * R CMD build removes LazyData and LazyDataCompression fields from
    the DESCRIPTION file of packages without a data directory.
  ENCODING-RELATED CHANGES:
  * The parser now treats \Unnnnnnnn escapes larger than the upper
    limit for Unicode points (\U10FFFF) as an error as they cannot be
    represented by valid UTF-8.
    Where such escapes are used for outputting non-printable
    (including unassigned) characters, 6 hex digits are used (rather
    than 8 with leading zeros).  For clarity, braces are used, for
    example \U{0effff}.
  * The parser now looks for non-ASCII spaces on Solaris (as
    previously on most other OSes).
  * There are warnings (including from the parser) on the use of
    unpaired surrogate Unicode points such as \uD834.  (These cannot
    be converted to valid UTF-8.)
  * Functions nchar(), tolower(), toupper() and chartr() and those
    using regular expressions have more support for inputs with a
    marked Latin-1 encoding.
  * The character-classification functions used (by default) to
    replace the system iswxxxxx functions on Windows, macOS and AIX
    have been updated to Unicode 13.0.0.
    The character-width tables have been updated to include new
    assignments in Unicode 13.0.0.
  * The code for evaluating default (extended) regular expressions
    now uses the same character-classification functions as the rest
    of R (previously they differed on Windows, macOS and AIX).
  * There is a build-time option to replace the system's
    wide-character wctrans C function by tables shipped with R: use
    configure option --with-internal-towlower or (on Windows)
  - DUSE_RI18N_CASE in CFLAGS when building R.  This may be needed
    to allow tolower() and toupper() to work with Unicode characters
    beyond the Basic Multilingual Plane where not supported by system
    functions (e.g. on Solaris where it is the new default).
  * R is more careful when truncating UTF-8 and other multi-byte
    strings that are too long to be printed, passed to the system or
    libraries or placed into an internal buffer.  Truncation will no
    longer produce incomplete multibyte characters.
  DEPRECATED AND DEFUNCT:
  * Function plclust() from the package stats and
    package.dependencies(), pkgDepends(), getDepList(),
    installFoundDepends(), and vignetteDepends() from package tools
    are defunct.
  * Defunct functions checkNEWS() and readNEWS() from package tools
    and CRAN.packages() from utils have been removed.
  * R CMD config CXXCPP is defunct (it was deprecated in R 3.6.2).
  * parallel::detectCores() drops support for Irix (retired in 2013).
  * The LINPACK argument to chol.default(), chol2inv(),
    solve.default() and svd() has been defunct since R 3.1.0.  It was
    silently ignored up to R 4.0.3 but now gives an error.
  * Subsetting/indexing, such as ddd[*] or ddd$x on a DOTSXP
    (dot-dot-dot) object ddd has been disabled; it worked by accident
    only and was undocumented.
  BUG FIXES:
  * Many more C-level allocations (mainly by malloc and strdup) are
    checked for success with suitable alternative actions.
  * Bug fix for replayPlot(); this was turning off graphics engine
    display list recording if a recorded plot was replayed in the
    same session.  The impact of the bug became visible if resize the
    device after replay OR if attempted another savePlot() after
    replay (empty display list means empty screen on resize or empty
    saved plot).
  * R CMD check etc now warn when a package exports non-existing S4
    classes or methods, also in case of no "methods" presence.
    (Reported by Alex Bertram; reproducible example and patch by
    Sebastian Meyer in PR#16662.)
  * boxplot() now also accepts calls for labels such as ylab, the
    same as plot().  (Reported by Marius Hofert.)
  * The help page for xtabs() now correctly states that addNA is
    setting na.action = na.pass among others.  (Reported as PR#17770
    by Thomas Soeiro.)
  * The R CMD check &lt;pkg&gt; gives a longer and more comprehensible
    message when DESCRIPTION misses dependencies, e.g., in Imports:.
    (Thanks to the contributors of PR#17179.)
  * update.default() now calls the generic update() on the formula to
    work correctly for models with extended formulas.  (As reported
    and suggested by Neal Fultz in PR#17865.)
  * The horizontal position of leaves in a dendrogram is now correct
    also with center = FALSE.  (PR#14938, patch from Sebastian
    Meyer.)
  * all.equal.POSIXt() no longer warns about and subsequently ignores
    inconsistent "tzone" attributes, but describes the difference in
    its return value (PR#17277).  This check can be disabled _via_
    the new argument check.tzone = FALSE as suggested by Sebastian
    Meyer.
  * as.POSIXct() now populates the "tzone" attribute from its tz
    argument when x is a logical vector consisting entirely of NA
    values.
  * x[[2^31]] &lt;- v now works.  (Thanks to the report and patch by
    Suharto Anggono in PR#17330.)
  * In log-scale graphics, axis() ticks and label positions are now
    computed more carefully and symmetrically in their range,
    typically providing _more_ ticks, fulfilling wishes in PR#17936.
    The change really corresponds to an improved axisTicks() (package
    grDevices), potentially influencing grid and lattice, for
    example.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now correct to at
    least five digits where it was catastrophically wrong,
    previously.
  * sum(df) and similar "Summary"- and "Math"-group member functions
    now work for data frames df with logical columns, notably also of
    zero rows.  (Reported to R-devel by Martin "b706".)
  * unsplit() had trouble with tibbles due to unsound use of rep(NA,
    len)-indexing, which should use NA_integer_ (Reported to R-devel
    by Mario Annau.)
  * pnorm(x, log.p = TRUE) underflows to -Inf slightly later.
  * show(&lt;hidden S4 generic&gt;) prints better and without quotes for
    non-hidden S4 generics.
  * read.table() and relatives treated an "NA" column name as missing
    when check.names = FALSE PR#18007.
  * Parsing strings containing UTF-16 surrogate pairs such as
    "\uD834\uDD1E" works better on some (uncommon) platforms.
    sprintf("%X", utf8ToInt("\uD834\uDD1E")) should now give "1D11E"
    on all platforms.
  * identical(x,y) is no longer true for differing DOTSXP objects,
    fixing PR#18032.
  * str() now works correctly for DOTSXP and related exotics, even
    when these are doomed.
    Additionally, it no longer fails for lists with a class and
    "irregular" method definitions such that e.g. lapply(*) will
    necessarily fail, as currently for different igraph objects.
  * Too long lines in environment files (e.g. Renviron) no longer
    crash R. This limit has been increased to 100,000 bytes.
    (PR#18001.)
  * There is a further workaround for FreeType giving incorrect
    italic font faces with cairo-based graphics devices on macOS.
  * add_datalist(*, force = TRUE) (from package tools) now actually
    updates an existing data/datalist file for new content.  (Thanks
    to a report and patch by Sebastian Meyer in PR#18048.)
  * cut.Date() and cut.POSIXt() could produce an empty last interval
    for breaks = "months" or breaks = "years".  (Reported as PR#18053
    by Christopher Carbone.)
  * Detection of the encoding of 'regular' macOS locales such as
    en_US (which is UTF-8) had been broken by a macOS change:
    fortunately these are now rarely used with en_US.UTF-8 being
    preferred.
  * sub() and gsub(pattern, repl, x, *) now keep attributes of x such
    as names() also when pattern is NA (PR#18079).
  * Time differences ("difftime" objects) get a replacement and a
    rep() method to keep "units" consistent.  (Thanks to a report and
    patch by Nicolas Bennett in PR#18066.)
  * The \RdOpts macro, setting defaults for \Sexpr options in an Rd
    file, had been ineffective since R 2.12.0: it now works again.
    (Thanks to a report and patch by Sebastian Meyer in PR#18073.)
  * mclapply and pvec no longer accidentally terminate parallel
    processes started before by mcparallel or related calls in
    package parallel (PR#18078).
  * grep and other functions for evaluating (extended) regular
    expressions handle in Unicode also strings not explicitly flagged
    UTF-8, but flagged native when running in UTF-8 locale.
  * Fixed a crash in fifo implementation on Windows (PR#18031).
  * Binary mode in fifo on Windows is now properly detected from
    argument open (PR#15600, PR#18031).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1622808000">- The line %{__install} -m 755 -d %{_infodir}
  no longer works in TW or Factory.
  But without that line it works everywhere. So this instruction
  was commented out of the spec file.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1628596800">- CHANGES IN R 4.1.1:
  NEW FEATURES:
  * require(pkg, quietly = TRUE) is quieter and in particular does
    not warn if the package is not found.
  DEPRECATED AND DEFUNCT:
  * Use of ftp:// URIs should be regarded as deprecated, with
    on-going support confined to method = "libcurl" and not routinely
    tested.  (Nowadays no major browser supports them.)
  * The non-default method = "internal" is deprecated for http:// and
    ftp:// URIs for both download.file and url.
  * On Windows, method = "wininet" is deprecated for http://,
    https:// and ftp:// URIs for both download.file and url.  (A
    warning is only given for ftp://.)
    For ftp:// URIs the default method is now "libcurl" if available
    (which it is on CRAN builds).
    method = "wininet" remains the default for http:// and https://
    URIs but if libcurl is available, using method = "libcurl" is
    preferred.
  INSTALLATION:
  * make check now works also without a LaTeX installation.  (Thanks
    to Sebastian Meyer's PR#18103.)
  BUG FIXES:
  * make check-devel works again in an R build configured with
  - -without-recommended-packages.
  * qnbinom(p, size, mu) for large size/mu is correct now in a range
    of cases (PR#18095); similarly for the (size, prob)
    parametrization of the negative binomial.  Also qpois() and
    qbinom() are better and or faster for extreme cases.  The
    underlying C code has been modularized and is common to all four
    cases of discrete distributions.
  * gap.axis is now part of the axis() arguments which are passed
    from bxp(), and hence boxplot().  (Thanks to Martin Smith's
    report and suggestions in PR#18109.)
  * .First and .Last can again be set from the site profile.
  * seq.int(from, to, *) and seq.default(..) now work better in large
    range cases where from-to is infinite where the two boundaries
    are finite.
  * all.equal(x,y) now returns TRUE correctly also when several
    entries of abs(x) and abs(y) are close to .Machine$double.xmax,
    the largest finite numeric.
  * model.frame() now clears the object bit when removing the class
    attribute of a value via na.action (PR#18100).
  * charClass() now works with multi-character strings on Windows
    (PR#18104, fixed by Bill Dunlap).
  * encodeString() on Solaris now works again in Latin-1 encoding on
    characters represented differently in UTF-8.  Support for
    surrogate pairs on Solaris has been improved.
  * file.show() on Windows now works with non-ASCII path names
    representable in the current native encoding (PR#18132).
  * Embedded R on Windows can now find R home directory via the
    registry even when installed only for the current user
    (PR#18135).
  * pretty(x) with finite x now returns finite values also in the
    case where the extreme x values are close in size to the maximal
    representable number .Machine$double.xmax.
    Also, it's been tweaked for very small ranges and when a boundary
    is close (or equal) to zero; e.g., pretty(c(0,1e-317)) no longer
    has negative numbers, currently still warning about a very small
    range, and pretty(2^-(1024 - 2^-1/(c(24,10)))) is more accurate.
  * The error message for not finding vignette files when weaving has
    correct file sizes now. (Thanks to Sebastian Meyer's PR#18154.)
  * dnbinom(20, &lt;large&gt;, 1) now correctly gives 0, and similar cases
    are more accurate with underflow precaution.  (Reported by Francisco Vera Alcivar in PR#18072.)</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635163200">- repaired https://bugzilla.suse.com/show_bug.cgi?id=1191380
  (rpmacros now go to rpmmacrodir)
- minor clean-ups in spec file</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635768000">- CHANGES IN R 4.1.2:
  C-LEVEL FACILITIES:
  * The workaround in headers R.h and Rmath.h (using namespace std;)
    for the Oracle Developer Studio compiler is no longer needed now
    C++11 is required so has been removed.  A couple more usages of
    log() (which should have been std::log()) with an int argument
    are reported on Solaris.
  * The undocumented limit of 4095 bytes on messages from the
    S-compatibility macros PROBLEM and MESSAGE is now documented and
    longer messages will be silently truncated rather than
    potentially causing segfaults.
  * If the R_NO_SEGV_HANDLER environment variable is non-empty, the
    signal handler for SEGV/ILL/BUS signals (which offers recovery
    user interface) is not set. This allows more reliable debugging
    of crashes that involve the console.
  DEPRECATED AND DEFUNCT:
  * The legacy S-compatibility macros PROBLEM, MESSAGE, ERROR, WARN,
    WARNING, RECOVER, ... are deprecated and will be hidden in R
    4.2.0. R's native interface of Rf_error and Rf_warning has long
    been preferred.
  BUG FIXES:
  * .mapply(F, dots, .) no longer segfaults when dots is not a list
    and uses match.fun(F) as always documented; reported by Andrew
    Simmons in PR#18164.
  * hist(&lt;Date&gt;, ...) and hist(&lt;POSIXt&gt;, ...)  no longer pass
    arguments for rect() (such as col and density) to axis().
    (Thanks to Sebastian Meyer's PR#18171.)
  * \Sexpr{ch} now preserves Encoding(ch). (Thanks to report and
    patch by Jeroen Ooms in PR#18152.)
  * Setting the RNG to "Marsaglia-Multicarry" e.g., by RNGkind(), now
    warns in more places, thanks to Andr'e Gillibert's report and
    patch in PR#18168.
  * gray(numeric(), alpha=1/2) no longer segfaults, fixing PR#18183,
    reported by Till Krenz.
  * Fixed dnbinom(x, size=&lt;very_small&gt;, .., log=TRUE) regression,
    reported by Martin Morgan.
  * as.Date.POSIXlt(x) now keeps names(x), thanks to Davis Vaughan's
    report and patch in PR#18188.
  * model.response() now strips an "AsIs" class typically, thanks to
    Duncan Murdoch's report and other discussants in PR#18190.
  * try() is considerably faster in case of an error and long call,
    as e.g., from some do.call().  Thanks to Alexander Kaever's
    suggestion posted to R-devel.
  * qqline(y = &lt;object&gt;) such as y=I(.), now works, see also
    PR#18190.
  * Non-integer mgp par() settings are now handled correctly in
    axis() and mtext(), thanks to Mikael Jagan and Duncan Murdoch's
    report and suggestion in PR#18194.
  * formatC(x) returns length zero character() now, rather than ""
    when x is of length zero, as documented, thanks to Davis
    Vaughan's post to R-devel.
  * removeSource(fn) now retains (other) attributes(fn).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1647000000">- CHANGES IN R 4.1.3:
  NEW FEATURES:
  * The default version of Bioconductor has been changed to 3.14.
    (This is used by setRepositories and the menus in GUIs.)
  UTILITIES:
  * R CMD check --as-cran has a workaround for a bug in versions of
    file up to at least 5.41 which mis-identify DBF files last
    changed in 2022 as executables.
  C-LEVEL FACILITIES:
  * The legacy S-compatibility macros SINGLE_* in R_ext/Constants.h
    (included by R.h) are deprecated and will be removed in R 4.2.0.
  BUG FIXES:
  * Initialization of self-starting nls() models with initialization
    functions following the pre-R-4.1.0 API (without the ...
    argument) works again for now, with a deprecation warning.
  * Fixed quoting of ~autodetect~ in Java setting defaults to avoid
    inadvertent user lookup due to leading ~, reported in PR#18231 by
    Harold Gutch.
  * substr(., start, stop) &lt;- v now treats _negative_ stop values
    correctly.  Reported with a patch in PR#18228 by Brodie Gaslam.
  * Subscripting an array x without dimnames by a
    length(dim(x))-column character matrix gave "random" non-sense,
    now an error; reported in PR#18244 by Mikael Jagan.
  * ...names() now matches names(list(...)) closely, fixing PR#18247.
  * all.equal(*, scale = s) now works as intended when length(s) &gt; 1,
    partly thanks to Michael Chirico's PR#18272.
  * print(x) for long vectors x now also works for named atomic
    vectors or lists and prints the correct number when reaching the
    getOption("max.print") limit; partly thanks to a report and
    proposal by Hugh Parsonage to the R-devel list.
  * all.equal(&lt;selfStart&gt;, *) no longer signals a deprecation
    warning.
  * reformulate(*, response=r) gives a helpful error message now when
    length(r) &gt; 1, thanks to Bill Dunlap's PR#18281.
  * Modifying globalCallingHandlers inside withCallingHandlers() now
    works or fails correctly, thanks to Henrik Bengtsson's PR#18257.
  * hist(&lt;Date&gt;, breaks = "days") and hist(&lt;POSIXt&gt;, breaks = "secs")
    no longer fail for inputs of length 1.
  * qbeta(.001, .9, .009) and similar cases now converge correctly
    thanks to Ben Bolker's report in PR#17746.
  * window(x, start, end) no longer wrongly signals "'start' cannot
    be after 'end'", fixing PR#17527 and PR#18291.
  * data() now checks that its (rarely used) list argument is a
    character vector - a couple of packages passed other types and
    gave incorrect results.
  * which() now checks its arr.ind argument is TRUE rather coercing
    to logical and taking the first element - which gave incorrect
    results in package code.
  * model.weights() and model.offset() more carefully extract their
    model components, thanks to Ben Bolker and Tim Taylor's R-devel
    post.
  * list.files(recursive = TRUE) now shows all broken symlinks
    (previously, some of them may have been omitted, PR#18296).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1650628800">- CHANGES IN R 4.2.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * The formula method of aggregate() now matches the generic in
    naming its first argument x (resolving PR#18299 by Thomas
    Soeiro).
    This means that calling aggregate() with a formula as a named
    first argument requires name formula in earlier versions of R and
    name x now, so portable code should not name the argument (code
    in many packages did).
  * Calling &amp;&amp; or || with either argument of length greater than one
    now gives a warning (which it is intended will become an error).
  * Calling if() or while() with a condition of length greater than
    one gives an error rather than a warning.  Consequently,
    environment variable _R_CHECK_LENGTH_1_CONDITION_ no longer has
    any effect.
  * Windows users should consult the WINDOWS section below for some
    profound changes including
  * Support for 32-bit builds has been dropped.
  * UTF-8 locales are used where available.
  * The default locations for the R installation and personal
    library folder have been changed.
    Thanks to Tomas Kalibera for months of work on the Windows port
    for this release.
  NEW FEATURES:
  * matrix(x, n, m) now warns in more cases where length(x) differs
    from n * m, as suggested by Abby Spurdle and Wolfgang Huber in
    Feb 2021 on the R-devel mailing list.
    This warning can be turned into an error by setting environment
    variable _R_CHECK_MATRIX_DATA_ to TRUE: R CMD check --as-cran
    does so unless it is already set.
  * Function file_test() in package utils gains tests for symlinks,
    readability and writability.
  * capabilities("libxml") is now false.
    The description of capabilities("http/ftp") now reflects that it
    refers to the default method, no longer the internal one.
  * simplify2array() gains an except argument for controlling the
    exceptions used by sapply().
  * Environment variables R_LIBS_USER and R_LIBS_SITE are both now
    set to the R system default if unset or empty, and can be set to
    NULL to indicate an empty list of user or site library
    directories.
  * The warning for axis()(-like) calls in cases of relatively small
    ranges (typically in log-scale situations) is slightly improved
    _and_ suppressed from explicit calls to .axisPars() as has always
    been the intention.
  * The contrasts setter function `contrasts&lt;-` gains an explicit
    default how.many = NULL rather than just using missing(how.many).
  * grid.pretty() gains a new optional argument n = 5.
  * There is a new function .pretty() with option bounds as a
    technical-utility version of pretty().  It and pretty() gain a
    new argument f.min with a better than back-compatible default.
  * Function grDevices::axisTicks() and related functions such as
    graphics::axis() work better, notably for the log scale; partly
    because of the pretty() improvements, but also because care is
    taken e.g., when ylim is finite but diff(ylim) is infinite.
  * nclass.FD() gains a digits option.
  * The R Mathlib internal C function bd0() (called indirectly from a
    dozen probability density and distribution functions such as
    dpois(), dbinom(), dgamma(), pgamma() _etc_) has been
    complemented by a more sophisticated and (mostly) more accurate C
    function ebd0(), currently called only by internal dpois_raw()
    improving accuracy for R level dpois() and potentially others
    calling it such as dnbinom(), dgamma() or pgamma().  (Thanks to
    Morten Welinder's PR#15628.)
  * write.ftable() gains sep = " " argument as suggested by Thomas
    Soeiro.
  * The names of the locale categories supported by R's
    Sys.getlocale() and Sys.setlocale() are now provided by variable
    .LC.categories in the base namespace.
  * The Date and POSIXt methods for hist() and the histogram method
    for plot() now also use the new default col = "lightgray" in
    consistency with the corresponding change to hist()'s default for
    R 4.0.0.
  * hist.default() gains new fuzz argument, and the histogram plot
    method no longer uses fractional axis ticks when displaying
    counts ("Frequency").
  * mapply() and hence Map() now also obey the "max-or-0-if-any"
    recycling rule, such that, e.g., Map(`+`, 1:3, 1[0]) is valid
    now.
  * as.character(&lt;obj&gt;) for "hexmode" or "octmode" objects now
    fulfils the important basic rule as.character(x)[j] ===
    as.character(x[j]).
  * The set utility functions, notably intersect() have been tweaked
    to be more consistent and symmetric in their two set arguments,
    also preserving a common mode.
  * substr(ch, start,end) &lt;- new now e.g., preserves names(ch); ditto
    for substring(), thanks to a patch from Brodie Gaslam.
  * plot(&lt;lm&gt;) gains a extend.ylim.f argument, in partial response to
    PR#15285; further PR#17784 is fixed thanks to several
    contributors and a patch by Elin Waring.  The Cook's dist
    contours get customizable via cook.col and cook.lty with a
    different default color and their legend is nicer by default and
    customizable via cook.legendChanges.
  * Attempting to subset an object that is not subsettable now
    signals an error of class notSubsettableError. The
    non-subsettable object is contained in the object field of the
    error condition.
  * Subscript-out-of-bounds errors are now signaled as errors of
    class subscriptOutOfBoundsError.
  * Stack-overflow errors are now signaled as errors inheriting from
    class stackOverflowError. See ?stackOverflowError for more
    details.
  * New partly experimental Sys.setLanguage() utility, solving the
    main problem of PR#18055.
  * gettext() and gettextf() get a new option trim = TRUE which when
    set to false allows translations for strings such as "Execution
    halted\n" typical for C code.
  * An experimental implementation of hash tables is now available.
    See ?hashtab for more details.
  * identical() gains a extptr.as.ref argument for requesting that
    external pointer objects be compared as reference objects.
  * reorder() gets an argument decreasing which it passes to sort()
    for level creation; based on the wish and patch by Thomas Soeiro
    in PR#18243.
  * as.vector() gains a data.frame method which returns a simple
    named list, also clearing a long standing 'FIXME' to enable
    as.vector(&lt;data.frame&gt;, mode="list").  This breaks code relying
    on as.vector(&lt;data.frame&gt;) to return the unchanged data frame.
  * legend() is now vectorized for arguments cex, x.intersp, and
    text.width.  The latter can now also be specified as a vector
    (one element for each column of the legend) or as NA for
    computing a proper column wise maximum value of strwidth(legend).
    The argument y.intersp can be specified as a vector with one
    entry for each row of the legend.
    legend() also gains new arguments title.cex and title.font.
    Thanks to Swetlana Herbrandt.
  * Deparsing no longer remaps attribute names dim, dimnames, levels,
    names and tsp to historical S-compatible names (which structure()
    maps back).
  * sample() and sample.int() have additional sanity checks on their
    size and n arguments.
    all.equal.numeric() gains a sanity check on its tolerance
    argument - calling all.equal(a, b, c) for three numeric vectors
    is a surprisingly common error.
    mean(na.rm =), rank(na.last =), barplot(legend.text =),
    boxplot(), contour(drawlabels =), polygon(border =) and
    methods::is(class2 =) have more robust sanity checks on their
    arguments.
    R CMD Rd2pdf (used by R CMD check) has a more robust sanity check
    on the format of \alias{} commands.
  * psigamma(x, deriv) for negative x now also works for deriv = 4
    and 5; their underlying C level dpsifn() is documented in
    'Writing R Extensions'.
  * The HTML help system now uses HTML5 (wish of PR#18149).
  * ks.test() now provides exact p-values also with ties and MC
    p-values in the two-sample (Smirnov) case.  By Torsten Hothorn.
  * ks.test() gains a formula interface, with y ~ 1 for the
    one-sample (Kolmogorov) test and y ~ group for the two-sample
    (Smirnov) test.  Contributed by Torsten Hothorn.
  * The return value from ks.test() now has class c("ks.test",
    "htest") - packages using try() need to take care to use
    inherits() and not == on the class.
  * New functions psmirnov(), qsmirnov() and rsmirnov() in package
    stats implementing the asymptotic and exact distributions of the
    two-sample Smirnov statistic.
  * iconv() now allows sub = "c99" to use C99-style escapes for UTF-8
    inputs which cannot be converted to encoding to.
  * In a forward pipe |&gt; expression it is now possible to use a named
    argument with the placeholder _ in the rhs call to specify where
    the lhs is to be inserted.  The placeholder can only appear once
    on the rhs.
  * The included LAPACK sources have been updated to version 3.10.0,
    except for the four Fortran 77 routines which 3.10.0 has
    re-implemented in Fortran 90 (where the older versions have been
    retained as the R build process does not support Fortran 90).
  * path.expand() and most other uses of tilde expansion now warn if
    a path would be too long if expanded.  (An exception is
    file.exists(), which silently returns false.)
  * trunc(&lt;Date&gt;, *) now supports units = "months" or "years" for
    consistency with the POSIXt method, thanks to Dirk Eddelbuettel's
    proposal in PR#18099.
  * list2DF() now checks that its arguments are of the same length,
    rather than use recycling.
  * The HTML help system has several new features: LaTeX-like math
    can be typeset using either KaTeX or MathJax, usage and example
    code is highlighted using Prism, and for dynamic help the output
    of examples and demos can be shown within the browser if the
    knitr package is installed. These features can be disabled by
    setting the environment variable _R_HELP_ENABLE_ENHANCED_HTML_ to
    a false value.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 15
    and so packages that provide graphics devices should be
    reinstalled.
  * The grid package now allows the user to specify a "vector" of
    pattern fills.  The fill argument to gpar() accepts a list of
    gradients and/or patterns and the functions linearGradient(),
    radialGradient(), and pattern() have a new group argument.
    Points grobs (data symbols) can now also have a pattern fill.
    The grobCoords() function now returns a more informative and
    complex result.
  * The grid package has new functions for drawing isolated groups:
    grid.group(), grid.define(), and grid.use().  These functions add
    compositing operators and affine transformations to R's graphics
    capabilities.
    The grid package also has new functions for stroking and filling
    paths: grid.stroke(), grid.fill(), and grid.fillStroke().
    A new function as.path() allows the user to specify the fill rule
    for a path that is to be used for clipping, stroking, or filling;
    available options are "winding" and "evenodd".  A new function
    as.mask() allows the user to specify the type of a mask;
    available options are "alpha" and "luminance".
    These new features are only supported so far (at most) on the
    Cairo-based graphics devices and on the pdf() device.
  * dev.capabilities() reports on device support for the new
    features.
  * par() now warns about unnamed non-character arguments to prevent
    misuse such as {usr &lt;- par("usr"); par(usr)}.
  INSTALLATION:
  * Facilities for accessing ftp:// sites are no longer tested
    (except _pro tem_ for curlGetHeaders()) as modern browsers have
    removed support.
  * R can now be built with DEFS = -DSTRICT_R_HEADERS .
  PACKAGE INSTALLATION:
  * R CMD INSTALL no longer tangles vignettes. This completes an R
    CMD build change in R 3.0.0 and affects packages built before R
    3.0.2. Such packages should be re-made with R CMD build to have
    the tangled R code of vignettes shipped with the tarball.
  * USE_FC_LEN_T will become the default: this uses the correct
    prototypes for Fortran BLAS/LAPACK routines called from C/C++,
    and requires adjustment of most such calls - see 'Writing R
    Extensions' SS6.6.2.  (This has been supported since R 3.6.2.)
  * Package installation speed for packages installed with
    keep.source has been improved. This resolve the issue reported by
    Ofek Shilon in PR#18236.
  UTILITIES:
  * R CMD check can optionally report files/directories left behind
    in home, /tmp (even though TMPDIR is set) and other directories.
    See the "R Internals" manual for details.
  * R CMD check now reports byte-compilation errors during
    installation.  These are not usually fatal but may result in
    parts of the package not being byte-compiled.
  * _R_CHECK_DEPENDS_ONLY_ can be applied selectively to examples,
    tests and/or vignettes in R CMD check: see the "R Internals"
    manual.
  * _R_CHECK_SRC_MINUS_W_IMPLICIT_ now defaults to true: recent
    versions of Apple clang on macOS have made implicit function
    declarations in C into a compilation error.
  * R CMD check --as-cran makes use of the environment variable
    AUTORECONF.  See the "R Internals" manual SS8 for further details.
  * R CMD check --use-valgrind also uses valgrind when re-building
    vignettes as some non-Sweave vignettes unhelpfully comment out
    all their code when R CMD check runs vignettes.
  * Errors in re-building vignettes (unless there are LaTeX errors)
    are reported by R CMD check as ERROR rather than WARNING when
    running vignettes has been skipped (as it frequently is in CRAN
    checks and by --as-cran).
  * R CMD Rd2pdf gains a --quiet option that is used by R CMD build
    when building the PDF package manual.
  * R CMD Rd2pdf now always runs LaTeX in batch mode, consistent with
    Texinfo &gt;= 6.7. The --batch option is ignored.
  * R CMD build and R CMD check now include the Rd file name and line
    numbers in the error message of an \Sexpr evaluation failure.
  * For packages using the \doi Rd macro (now an install-time \Sexpr)
    but no other dynamic Rd content, R CMD build now produces a
    smaller tarball and is considerably faster - skipping temporary
    package installation.
  C-LEVEL FACILITIES:
  * The non-API header R_ext/R-ftp-http.h is no longer provided, as
    the entry points it covered are now all defunct.
  * A number of non-API declarations and macro definitions have been
    moved from the installed header Rinternals.h to the internal
    header Defn.h. Packages that only use entry points and
    definitions documented to be part of the API as specified in
    'Writing R Extensions' SS6 should not be affected.
  * The macro USE_RINTERNALS no longer has any effect when compiling
    package code.  Packages which also use R_NO_REMAP will need to
    ensure that the remapped names are used for calls to API
    functions that were formerly also made available as macros.
  * The deprecated legacy S-compatibility macros PROBLEM, MESSAGE,
    ERROR, WARN, WARNING, RECOVER, ... are no longer defined in
    R_exts/RS.h (included by R.h).  Replace these by calls to
    Rf_error and Rf_warning (defined in header R_ext/Error.h included
    by R.h).
    Header R_ext/RS.h no longer includes R_ext/Error.h.
  * Header R_ext/Constants.h (included by R.h) when included from C++
    now includes the C++ header cfloat rather than the C header
    float.h (now possible as C++11 is required).
  * The legacy S-compatibility macros DOUBLE_* in R_ext/Constants.h
    (included by R.h) are deprecated.
  * The deprecated S-compatibility macros SINGLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * R_Calloc, R_Free and R_Realloc are preferred to their unprefixed
    forms and error messages now use the prefix. These forms were
    introduced in R 3.4.0 and are available even when
    STRICT_R_HEADERS is defined.
  * rmultinom has been documented in 'Writing R Extensions' SS6 so is
    now part of the R API.
  * Similarly, Rtanpi, called from R level tanpi() is now part of the
    R API.
  * The long-deprecated, undocumented and non-API entry point call_R
    is no longer declared in R_ext/RS.h (included by R.h).
  * The header S.h which has been unsupported since Jan 2016 has been
    removed.  Use R.h instead.
  DEPRECATED AND DEFUNCT:
  * The (non-default and deprecated) method = "internal" for
    download.file() and url() no longer supports http:// nor ftp://
    URIs.  (It is used only for file:// URIs.)
    On Windows, download.file(method = "wininet") no longer supports
    ftp:// URIs.  (It is no longer the default method, which is
    "libcurl" and does.)
    On Windows, the deprecated method = "wininet" now gives a warning
    for http:// and https:// URIs for both download.file() and url().
    (It is no longer the default method.)
  * On Windows, the command-line option --max-mem-size and
    environment variable R_MAX_MEM_SIZE are defunct.  The memory
    allocation limit was important for 32-bit builds, but these are
    no longer supported.
  * default.stringsAsFactors() is now formally deprecated, where that
    was only mentioned on its regular help page, previously.  So it
    now gives a warning if called.
  * unix.time() is defunct now; it had been deprecated since R 3.4.0.
  BUG FIXES:
  * Setting digits = 0 in format(), print.default() (and hence
    typically print()) or options() is again invalid.  Its behaviour
    was platform-dependent, and it is unclear what "zero significant
    digits" should mean (PR#18098).
  * Messages from C code in the cairo section of package grDevices
    are now also offered for translation, thanks to Michael Chirico's
    PR#18123.
  * mean(x) with finite x now is finite also without "long.double"
    capability.
  * R CMD Rd2pdf no longer leaves an empty build directory behind
    when it aborts due to an already existing output file.  (Thanks
    to Sebastian Meyer's PR#18141.)
  * density(x, weights = w, na.rm = TRUE) when anyNA(x) is true, now
    removes weights "in parallel" to x, fixing PR#18151, reported by
    Matthias Gondan.  Additionally, it gets a subdensity option.
  * Conversion of \Sexpr[]{&lt;expR&gt;} to LaTeX or HTML no longer
    produces long blocks of empty lines when &lt;expR&gt; itself contains
    several lines all producing empty output.  Thanks to a report and
    patch by Ivan Krylov posted to R-devel.
  * R CMD build no longer fails if a package vignette uses child
    documents and inst/doc exists.  (Thanks to Sebastian Meyer's
    PR#18156.)
  * When an R documentation ('help' source) file man/foo.Rd in a
    package has \donttest{..} examples with a syntax error, it is now
    signalled as ERROR and with correct line numbers relating to the
  * -Ex.R file, thanks to Duncan Murdoch and Sebastian Meyer's
    reports and patch proposals in PR#17501.
  * Improved determination of the correct translation domain in
    non-base packages, addressing the combination of PR#18092 and
    PR#17998 (#c6) with reports and _augmented_ patch #2904 by
    Suharto Anggono.
    Note that "R-base" is no longer the default domain e.g., for
    top-level calls to gettext(); rather translation needs explicit
    domain = * specification in such cases.
  * identical(attrib.as.set=FALSE) now works correctly with data
    frames with default row names (Thanks to Charlie Gao's PR#18179).
  * txtProgressBar() now enforces a non-zero width for argument char,
    without which no progress can be visible.
  * dimnames(table(d)) is more consistent in the case where d is a
    list with a single component, thanks to Thomas Soeiro's report to
    R-devel.
    Further, table(d1, d2) now gives an error when d1 and d2 are data
    frames as suggested by Thomas in PR#18224.
  * Fix for drawing semi-transparent lines and fills on the native
    Windows graphics device (PR#18219 and PR#16694).  Thanks to Nick
    Ray for helpful diagnosis on Bugzilla.
  * The deparser now wraps sub-expressions such as if(A) ..  with
    parentheses when needed; thanks to Duncan Murdoch's PR#18232 and
    Lionel Henry's patches there.
  * remove.packages() no longer tries to uninstall Priority: base
    packages, thanks to a report and suggestions by Colin Fay in
    PR#18227.
  * win.metafile() now has xpinch and ypinch arguments so that the
    user can override Windows' (potentially wrong) guess at device
    dimensions.
  * x[i] and x[[i]] for non-integer i should now behave in all cases
    as always documented: the index used is equivalent to
    as.integer(i) unless that would overflow where trunc(i) is used
    instead; thanks to Suharto Anggono's report and patch proposals
    in PR#17977.
  * asOneSidedFormula() now associates the resulting formula with the
    global environment rather than the evaluation environment created
    for the call.
  * &lt;bibentry&gt;$name now matches the field name case-insensitively,
    consistent with bibentry() creation and the replacement method.
  * cbind() failed to detect some length mismatches with a mixture of
    time-series and non-time-series inputs.
  * The default LaTeX style file Sweave.sty used by the RweaveLatex
    driver no longer loads the obsolete ae package; thanks to a
    report by Thomas Soeiro in PR#18271.  Furthermore, it now skips
    \usepackage[T1]{fontenc} for engines other than pdfTeX (if
    detected) or if the new [nofontenc] option is used.
  * smooth.spline() now stores its logical cv argument more safely,
    fixing a rare bug when printing, and also stores n.
  * smooth.spline(x,y,*) now computes the cv.crit statistic
    correctly, also when is.unsorted(x), fixing PR#18294.
  * The data.frame method of rbind() now warns when binding
    not-wholly-recycling vectors, by analogy to the default method
    (for matrices).
  * setAs() finds the correct class for name to when multiple
    packages define a class with that name. Thanks to Gabor Csardi
    for the report.
  * Fix for detaching a package when two classes of the same name are
    present in method signatures for the same generic. Thanks to
    Gabor Csardi for the report.
  * match.arg("", c("", "a", "B")) gives a better error message, in
    part from PR#17959, thanks to Elin Waring.
  * R CMD Sweave --clean no longer removes pre-existing files or
    subdirectories (PR#18242).
  * The quartz() device no longer splits polylines into subpaths.
    That has caused narrowly-spaced lines with many points to always
    look solid even when dashed line type was used due to dash phase
    restarts.
  * Deparsing constructs such as quote(1 + `!`(2) + 3) works again as
    before R 3.5.0, thanks to the report and patch in PR#18284 by
    Suharto Anggono.
  * as.list(f) for a factor f now keeps names(f), fixing PR#18309.
  * qbeta(.001, .9, .009) and analogous qf() calls now return a
    correct value instead of NaN or wrongly 1, all with a warning;
    thanks to the report by Ludger Goeminne in PR#18302.
  * plot.lm() failed to produce the plot of residuals vs.  factor
    levels (i.e., which=5 when leverages are constant) for models
    with character predictors (PR#17840).
  * interaction.plot(..., xtick = TRUE) misplaced the x-axis line
    (PR#18305).
  * Not strictly fixing a bug, format()ing and print()ing of
    non-finite Date and POSIXt values NaN and +/-Inf no longer show
    as NA but the respective string, e.g., Inf, for consistency with
    numeric vector's behaviour, fulfilling the wish of PR#18308.
  * R CMD check no longer runs test scripts generated from
    corresponding .Rin files twice and now signals an ERROR if
    processing an .Rin script fails.
  * tools::Rd2txt() used for plain-text help pages now renders \hrefs
    (if tools::Rd2txt_options(showURLs = TRUE)) and \urls with
    percent-encoding and standards-compliant delimiting style (angle
    brackets and no URL: prefix).  \email is now rendered with a
    mailto: prefix.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1655985600">- CHANGES IN R 4.2.1:
  NEW FEATURES:
  * New function utils::findCRANmirror() to find out if a CRAN mirror
    has been selected, otherwise fallback to the main site.  This
    behaves in the same way as tools::CRAN_package_db() and is
    intended for packages wishing to access CRAN for purposes other
    than installing packages.
    The need for this was shown by a day when the main CRAN website
    was offline and a dozen or so packages which had its URL
    hardcoded failed their checks.
  INSTALLATION on a UNIX-ALIKE:
  * The libraries searched for by --with-blas (without a value) now
    include BLIS (after OpenBLAS but before ATLAS).  And on macOS,
    the Accelerate framework (after ATLAS).  (This is patterned after
    the AX_BLAS macro from the Autoconf Archive.)
  * The included LAPACK sources have been updated to 3.10.1.
  UTILITIES:
  * The (full path to) the command tidy to be used for HTML
    validation can be set by environment variable R_TIDYCMD.
  * Setting environment variable _R_CHECK_RD_VALIDATE_RD2HTML_ to a
    false value will override R CMD check --as-cran and turn off HTML
    validation.  This provides a way to circumvent a problematic
    tidy.
    The 2006 version that ships with macOS is always skipped.
  C-LEVEL FACILITIES:
  * The undocumented legacy declarations of Sint, Sfloat, SINT_MAX
    and SINT_MIN in header R.h are deprecated.
  BUG FIXES:
  * fisher.test(d) no longer segfaults for "large" d; fixing PR#18336
    by preventing/detecting an integer overflow reliably.
  * tar(., files=*) now produces correctly the warning about invalid
    uid or gid of files, fixing PR#18344, reported by Martin Morgan.
  * tk_choose.files() with multi = FALSE misbehaved on paths
    containing spaces (PR#18334) (regression introduced in R 4.0.0).
  * sort(x, partial = ind, *) now works correctly notably for the
    non-default na.last = FALSE or TRUE, fixing PR#18335 reported by
    James Edwards.
  * Environment variable _R_CHECK_XREFS_REPOSITORIES_ is only used
    for checking .Rd cross-references in R CMD check (as documented)
    and not for other uses looking for a CRAN mirror.
  * The search for a CRAN mirror when checking packages now uses
    getOption("repos") if that specifies a CRAN mirror, even when it
    does not also specify all three Bioconductor repositories (as was
    previously required).
  * The HTML code generated by tools::Rd2HTML() has been improved to
    pass tidy 5.8.0.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1667217600">- CHANGES IN R 4.2.2:
  NEW FEATURES:
  * tools::Rdiff(useDiff = TRUE) checks for the presence of an
    external diff command and switches to useDiff = FALSE if none is
    found.  This allows R CMD Rdiff to always work.
  * On Windows, environment variable R_LIBCURL_SSL_REVOKE_BEST_EFFORT
    can be used to switch to only 'best-effort' SSL certificate
    revocation checks with the default "libcurl" download method.
    This reduces security, but may be needed for downloads to work
    with MITM proxies (PR#18379).
  * (macOS) The run-time check for libraries from XQuartz for X11 and
    Tcl/Tk no longer uses otool from the Apple Developer Tools
    (PR#18400).
  * The LaTeX style for producing the PDF manuals, Rd.sty, now loads
    the standard amsmath, amsfonts and amssymb packages for greater
    coverage of math commands in the Rd \eqn and \deqn macros.  The
    \mathscr LaTeX command is also provided (via the mathrsfs
    package, if available, or the amsfonts bundle otherwise),
    fulfilling the wish of PR#18398.
  * (Windows) The default format of readClipboard() and
    writeClipboard() has been changed to 13 (CF_UNICODETEXT).
  INSTALLATION on a UNIX-ALIKE:
  * The PDF manuals (if built) can be compacted by the new target
    make compact-pdf (at the top level or in directory doc/manual).
  * There is now configure support for LLVM clang 15 on Linux, which
    defaults to position-independent (PIE) executables whereas
    gfortran does not.
  * Many small changes to ease compilation (and suppress warnings)
    with LLVM clang 15.
  BUG FIXES:
  * Rscript -e would fail if stdin were closed (Reported by Henrik
    Bengtsson.)
  * qt(*, log.p=TRUE) in outer tails no longer produces NaN in its
    final steps, thus fixing PR#18360.
  * tools::Rd2latex() now escapes hashes and ampersands when writing
    URLs, fixing LaTeX errors with such URLs in \tabular.
  * When isGeneric(f, fdef=*) is used with mismatching names, the
    warning is better understandable; reported (with fix) in PR#18370
    by Gabe Becker.
  * poly(x, n) now works again (and is now documented) when x is a
    "Date" or "POSIXct" object, or of another class while fulfilling
    mode(x) == "numeric".  This also enables poly(x, *, raw=TRUE) for
    such variables.  Reported by Michael Chirico to R-devel.
  * write.table(), write.csv() and write.csv2() restore their
    numerical precision (internal equivalent of digits = 15) after an
    interrupt (PR#18384).
  * One can now read also byte FF from a clipboard connection
    (PR#18385).
  * source("") and source(character()) now give more helpful error
    messages.
  * R CMD check --as-cran set _R_CHECK_TIMINGS_ too late to have the
    intended effect.
  * as.POSIXlt(x) now also works with very large dates x, fixing
    PR#18401 reported by Hannes M"uhleisen.
  * Files can now be extracted even from very large zip archives
    (PR#18390, thanks to Martin Jakt).
  * Non-finite objects of class "POSIXlt" are now correctly coerced
    to classes "Date" and "POSIXct"; following up on the extension to
    format() them correctly.
  * Added methods for is.finite(), is.infinite() and is.nan() for
    "POSIXlt" date-time objects.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1678881600">- CHANGES IN R 4.2.3:
  C-LEVEL FACILITIES:
  * The definition of DL_FUNC in R_ext/Rdynload.h has been changed to
    be fully C-compliant.  This means that functions loaded _via_ for
    example R_GetCCallable need to be cast to an appropriate type if
    they have any arguments.
  * .Machine has a new element sizeof.time_t to identify old systems
    with a 32-bit type and hence a limited range of date-times (and
    limited support for dates millions of years from present).
  PACKAGE INSTALLATION:
  * (Windows) The default C++ standard had accidentally been left at
    C++11 when it was changed to C++14 on Unix.
  BUG FIXES:
  * As "POSIXlt" objects may be "partially filled" and their list
    components meant to be recycled, length() now is the length of
    the longest component.
  * as.POSIXlt.Date() could underflow for dates in the far past (more
    than half a million years BCE).
  * as.Date.POSIXlt(x) would return "1970-01-01" instead of NA in R
    4.2.2, e.g., for
    x &lt;- as.POSIXlt(c("2019-01-30","2001-1-1"))
    x$mon &lt;- c(0L, NA); as.Date(x)
  * R CMD check failed to apply enabled _R_CHECK_SUGGESTS_ONLY_ to
    examples and vignettes (regression in R 4.2.0).
  * R CMD check did not re-build vignettes in separate processes by
    default (regression in R 4.2.0).
  * Running examples from HTML documentation now restores previous
    knitr settings and options (PR#18420).
  * Quartz: fonts are now located using Core Graphics API instead of
    deprecated ATS which is no longer supported in the macOS 13 SDK
    (PR#18426).  This also addresses an issue where the currently
    used font in the Quartz device context was not correctly
    retained.
  * (Windows) Math symbols in text drawing functions are again
    rendered correctly (PR#18440).  This fixes a regression in R
    4.2.1 caused by a fix in PR#18382 which uncovered an issue in
    GraphApp due to which the symbol charset was not used with TT
    Symbol font face.
  * (Windows) Installing a package with a src/Makefile.{win,ucrt}
    file includes ~/.R/Makevars.win64 in the search for user
    makevars, as documented in "R Installation and Administration"
    and done for packages with a src/Makevars.{win,ucrt} file.
  * format(&lt;POSIXlt_w/_unbalanced_sec&gt;, "....%OS&lt;n&gt;") with n &gt; 0 no
    longer accidentally uses the unbalanced seconds, thanks to
    Suharto Anggono's report (including patch) in PR#18448.
  * solve.default(a, b) works around issues with some versions of
    LAPACK when a contains NA or NaN values.
  * When UseMethod() cannot dispatch, it no longer segfaults
    producing the error message in case of a long class(), thanks to
    Joris Vankerschaver's report (including patch) in PR#18447.
  * When example(foo, ..) produces graphics on an interactive device
    it needs to open itself, it now leaves devAskNewPage() unchanged
    even when it was FALSE, thus fixing a 14 years old '&lt;FIXME&gt;'.
  * packageDescription() again catches errors from encoding
    conversions. This also fixes broken packageVersion() in C locale
    on systems where iconv does not support transliteration.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1681128000">- add patch to build with libcurl &gt;= 8</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1682078400">- CHANGES IN R 4.3.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Calling &amp;&amp; or || with LHS or (if evaluated) RHS of length greater
    than one is now always an error, with a report of the form
    'length = 4' in coercion to 'logical(1)'
    Environment variable _R_CHECK_LENGTH_1_LOGIC2_ no longer has any
    effect.
  NEW FEATURES:
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.10.1.  (This caused some platform-dependent
    changes to package check output.)  And then to the sources from
    LAPACK version 3.11.0 (with changes only to double complex
    subroutines).
  * The included LAPACK sources have been updated to include the four
    Fortran 90 routines rather than their Fortran 77 predecessors.
    This may give some different signs in SVDs or
    eigendecompositions..  (This completes the transition to LAPACK
    3.10.x begun in R 4.2.0.)
  * The LAPACK sources have been updated to version 3.11.0.  (No new
    subroutines have been added, so this almost entirely bug fixes:
    Those fixes do affect some computations with NaNs, including R's
    NA.)
  * The parser now signals _classed_ errors, notably in case of the
    pipe operator |&gt;.  The error object and message now give line and
    column numbers, mostly as proposed and provided by Duncan Murdoch
    in PR#18328.
  * toeplitz() is now generalized for asymmetric cases, with a
    toeplitz2() variant.
  * xy.coords() and xyz.coords() and consequently, e.g., plot(x,y,
    log = "y") now signal a _classed_ warning about negative values
    of y (where log(.) is NA).  Such a warning can be specifically
    suppressed or caught otherwise.
  * Regular expression functions now check more thoroughly whether
    their inputs are valid strings (in their encoding, e.g. in
    UTF-8).
  * The performance of grep(), sub(), gsub() and strsplit() has been
    improved, particularly with perl = TRUE and fixed = TRUE.  Use of
    useBytes = TRUE for performance reasons should no longer be
    needed and is discouraged: it may lead to incorrect results.
  * apropos() gains an argument dot_internals which is used by the
    completion (help(rcompgen)) engine to also see base internals
    such as .POSIXct().
  * Support in tools::Rdiff() for comparing uncompressed PDF files is
    further reduced - see its help page.
  * qqplot(x, y, ...) gains conf.level and conf.args arguments for
    computing and plotting a confidence band for the treatment
    function transforming the distribution of x into the distribution
    of y (Switzer, 1976, _Biometrika_). Contributed by Torsten
    Hothorn.
  * Performance of package_dependencies() has been improved for cases
    when the number of dependencies is large.
  * Strings newly created by gsub(), sub() and strsplit(), when any
    of the inputs is marked as "bytes", are also marked as "bytes".
    This reduces the risk of creating invalid strings and accidental
    substitution of bytes deemed invalid.
  * Support for readLines(encoding = "bytes") has been added to allow
    processing special text files byte-by-byte, without creating
    invalid strings.
  * iconv(from = "") now takes into account any declared encoding of
    the input elements and uses it in preference to the native
    encoding.  This reduces the risk of accidental creation of
    invalid strings, particularly when different elements of the
    input have different encoding (including "bytes").
  * Package repositories in getOption("repos") are now initialized
    from the repositories file when utils is loaded (if not already
    set, e.g., in .Rprofile).  (From a report and patch proposal by
    Gabriel Becker in PR#18405.)
  * compactPDF() gets a verbose option.
  * type.convert() and hence read.table() get new option tryLogical =
    TRUE with back compatible default.  When set to false, converts
    "F" or "T" columns to character.
  * Added new unit prefixes "R" and "Q" for abbreviating
    (unrealistically large) sizes beyond 10^{27} in standard = "SI",
    thanks to Henrik Bengtsson's PR#18435.
  * as.data.frame()'s default method now also works fine with atomic
    objects inheriting from classes such as "roman", "octmode" and
    "hexmode", such fulfilling the wish of PR#18421, by Benjamin
    Feakins.
  * The as.data.frame.vector() utility now errors for wrong-length
    row.names.  It warned for almost six years, with "Will be an
    error!".
  * sessionInfo() now also contains La_version() and reports codepage
    and timezone when relevant, in both print() and toLatex() methods
    which also get new option tzone for displaying timezone
    information when locale = FALSE.
  * New function R_compiled_by() reports the C and Fortran compilers
    used to build R, if known.
  * predict(&lt;lm&gt;, newdata = *) no longer unnecessarily creates an
    offset of all 0s.
  * solve() for complex inputs now uses argument tol and by default
    checks for 'computational singularity' (as it long has done for
    numeric inputs).
  * predict(&lt;rank-deficient lm&gt;, newdata=*) now obeys a new argument
    rankdeficient, with new default "warnif", warning only if there
    are non-estimable cases in newdata.  Other options include
    rankdeficient = "NA", predicting NA for non-estimable newdata
    cases.  This addresses PR#15072 by Russ Lenth and is based on his
    original proposal and discussions in PR#16158 also by David Firth
    and Elin Waring.  Still somewhat experimental.
  * Rgui console implementation now works better with the NVDA screen
    reader when the full blinking cursor is selected.  The underlying
    improvements in cursor handling may help also other screen
    readers on Windows.
  * The drop-field control in GraphApp can now be left with the TAB
    key and all controls can be navigated in the reverse order using
    the Shift+TAB key, improving accessibility of the Rgui
    configuration editor.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now fully accurate
    (instead of to "only" minimally five digits).
  * demo(error.catching) now also shows off withWarnings() and
    tryCatchWEMs().
  * As an experimental feature the placeholder _ can now also be used
    in the rhs of a forward pipe |&gt; expression as the first argument
    in an extraction call, such as _$coef. More generally, it can be
    used as the head of a chain of extractions, such as _$coef[[2]].
  * Spaces in the environment variable used to choose the R session's
    temporary directory (TMPDIR, TMP and TEMP are tried in turn) are
    now fatal.  (On Windows the 'short path' version of the path is
    tried and used if that does not contain a space.)
  * all.equal.numeric() gets a new optional switch giveErr to return
    the numeric error as attribute.  Relatedly,
    stopifnot(all.equal&lt;some&gt;(a, b, ..)) is as "smart" now, as
    stopifnot(all.equal(....)) has been already, thus allowing
    customized all.equal&lt;Some&gt;() wrappers.
  * R on Windows is now able to work with path names longer than 260
    characters when these are enabled in the system (requires at
    least Windows 10 version 1607).  Packages should be updated to
    work with long paths as well, instead of assuming PATH_MAX to be
    the maximum length.  Custom front-ends and applications embedding
    R need to update their manifests if they wish to allow this
    feature.  See
    &lt;https://blog.r-project.org/2023/03/07/path-length-limit-on-windows&gt;
    for more information.
  * 'Object not found' and 'Missing argument' errors now give a more
    accurate error context. Patch provided by Lionel Henry in
    PR#18241.
  * The @ operator is now an S3 generic. Based on contributions by
    Tomasz Kalinowski in PR#18482.
  * New generic chooseOpsMethod() provides a mechanism for objects to
    resolve cases where two suitable methods are found for an Ops
    Group Generic. This supports experimenting with alternative
    object systems. Based on contributions by Tomasz Kalinowski in
    PR#18484.
  * inherits(x, what) now accepts values other than a simple
    character vector for argument what. A new generic, nameOfClass(),
    is called to resolve the class name from what. This supports
    experimenting with alternative object systems. Based on
    contributions by Tomasz Kalinowski in PR#18485.
  * Detection of BLAS/LAPACK in use (sessionInfo()) with FlexiBLAS
    now reports the current backend.
  * The "data.frame" method for subset() now warns about extraneous
    arguments, typically catching the use of = instead of == in the
    subset expression.
  * Calling a:b when numeric a or b is longer than one may now be
    made into an error by setting environment variable
    _R_CHECK_LENGTH_COLON_ to a true value, along the proposal in
    PR#18419 by Henrik Bengtsson.
  * density(x, weights = *) now warns if automatic bandwidth
    selection happens without using weights; new optional warnWbw may
    suppress the warning.  Prompted by Christoph Dalitz' PR#18490 and
    its discussants.
  * rm(list = *) is faster and more readable thanks to Kevin Ushey's
    PR#18492.
  * The plot.lm() function no longer produces a normal Q-Q plot for
    GLMs. Instead it plots a half-normal Q-Q plot of the absolute
    value of the standardized deviance residuals.
  * The print() method for class "summary.glm" no longer shows
    summary statistics for the deviance residuals by default.  Its
    optional argument show.residuals can be used to show them if
    required.
  * The tapply() function now accepts a data frame as its X argument,
    and allows INDEX to be a formula in that case. by.data.frame()
    similarly allows INDICES to be a formula.
  * The performance of df[j] &lt;- value (including for missing j) and
    write.table(df) has been improved for data frames df with a large
    number of columns.  (Thanks to Gabriel Becker's PR#18500,
    PR#18503 and discussants, prompted by a report from Toby Dylan
    Hocking on the R-devel mailing list.)
  * The matrix multiply operator %*% is now an S3 generic, belonging
    to new group generic matrixOps.  From Tomasz Kalinowski's
    contribution in PR#18483.
  * New function array2DF() to convert arrays to data frames,
    particularly useful for the list arrays created by tapply().
  DATES and TIMES:
  * On platforms where (non-UTC) datetimes before 1902 (or before
    1900 as with system functions on recent macOS) are guessed by
    extrapolating time zones from 1902-2037, there is a warning at
    the first use of extrapolation in a session.  (As all time zones
    post 2037 are extrapolation, we do not warn on those.)
  * (Platforms using --with-internal-tzone, including Windows and by
    default macOS). How years are printed in dates or date-times can
    be controlled by environment variable R_PAD_YEARS_BY_ZERO.  The
    default remains to pad to 4 digits by zeroes, but setting value
    no gives no padding (as used by default by glibc).
  * strftime() tries harder to determine the offset for the "%z"
    format, and succeeds on the mainstream R platforms.
  * strftime() has a limit of 2048 bytes on the string produced -
    attempting to exceed this is an error.  (Previously it silently
    truncated at 255 bytes.)
  * sessionInfo() records (and by default prints) the system time
    zone as part of the locale information.  Also, the source
    (system/internal) of the date-time conversion and printing
    functions.
  * Objects of class "POSIXlt" created in this version of R always
    have 11 components: component zone is always set, and component
    gmtoff is set for times in UTC and usually set on the (almost
    all) platforms which have C-level support, otherwise is NA.
  * There are comprehensive validity checks on the structure of
    objects of class "POSIXlt" when converting (including formatting
    and printing).  (This avoids mis-conversions of hand-crafted
    objects.)
  * There is some support for using the native date-time routines on
    macOS: this is only viable on recent versions (e.g. 12.6 and 13)
    and does get wrong some historical changes (before 1900, during
    WWII).  Use of --with-internal-tzone remains the default.
  * as.POSIXct(&lt;numeric&gt;) and as.POSIXlt(.) (without specifying
    origin) now work.  So does as.Date(&lt;numeric&gt;).
  * as.Date.POSIXct(., tz) now treats several tz values, notably
    "GMT" as equivalent to "UTC", proposed and improved by Michael
    Chirico and Joshua Ulrich in PR#17674.
  * Experimental balancePOSIXlt() utility allows using "ragged" and
    or out-of-range "POSIXlt" objects more correctly, e.g., in
    subsetting and subassignments.  Such objects are now documented.
    More experimentally, a "POSIXlt" object may have an attribute
    "balanced" indicating if it is known to be filled or fully
    balanced.
  * Functions axis.Date() and axis.POSIXct() are rewritten to gain
    better default tick locations and better default formats by using
    prettyDate(). Thanks to Swetlana Herbrandt.
  * The mapping of Windows' names for time zones to IANA's 'Olson'
    names has been updated.  When ICU is available (it is by
    default), it is used to get a mapping for the current region set
    in Windows.  This can be overridden by setting environment
    variable TZ to the desired Olson name - see OlsonNames() for
    those currently available.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 16
    and so packages that provide graphics devices should be
    reinstalled.
  * The grDevices and grid packages have new functions for rendering
    typeset glyphs, primarily: grDevices::glyphInfo() and
    grid::grid.glyph().
    Rendering of typeset glyphs is only supported so far on the
    Cairo-based graphics devices and on the pdf() and quartz()
    devices.
  * The defined behaviour for "clear" and "source" compositing
    operators (via grid::grid.group()) has been changed (to align
    better with simple interpretation of original Porter-Duff
    definitions).
  * Support for gradients, patterns, clipping paths, masks, groups,
    compositing operators, and affine transformations has been added
    to the quartz() device.
  INSTALLATION on a UNIX-ALIKE:
  * A system installation of generic LAPACK 3.10.0 or later will be
    preferred to the version in the R sources.
    configure option --with-lapack=no (equivalently --without-lapack)
    forces compilation of the internal LAPACK sources.
    If --with-lapack is not specified, a system liblapack is looked
    for and used if it reports version 3.10.0 or later and does not
    contain BLAS routines.
    Packages using LAPACK will need to be reinstalled if this changes
    to using an external library.
  * On aarch64 Linux platforms using GCC, configure now defaults to
  - fPIC (instead of -fpic), as desired in PR#18326.
  * configure now checks conversion of datetimes between POSIXlt and
    POSIXct around year 2020.  Failure (which has been seen on
    platforms missing tzdata) is fatal.
  * If configure option --with-valgrind-instrumentation is given
    value 1 or 2, option --with-system-valgrind-headers is now the
    default and ignored (with a warning).  It is highly recommended
    that the system headers are installed alongside valgrind: they
    are part of its packaging on some Linux distributions and
    packaged separately (e.g. in the valgrind-devel RPM) on others.
    configure will give a warning if they are not found.
    The system headers will be required in a future release of R to
    build with valgrind instrumentation.
  * libcurl 8.x is now accepted by configure: despite a change in
    major version number it changes neither API nor ABI.
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools43, an update of the Rtools42 toolchain.  It is
    based on gcc 12 and newer versions of MinGW-W64, binutils and
    libraries.  At this time R-devel can still be built using
    Rtools42 without changes, but when R-devel is installed via the
    installer, it will by default look for Rtools43.
  * Old make targets rsync-extsoft and 32-bit ones that are no longer
    needed have been removed.
  * Default builds (including for packages) no longer select C99.
    Thus the C standard used is the default for the compiler, which
    for the toolchain in Rtools43 is C17.  (This is consistent with
    Unix builds.)
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++17 where
    available (which it is on all currently checked platforms): if
    not C++14 or C++11 is used if available otherwise C++ is not
    supported.
  * USE_FC_LEN_T is the default: this uses the correct
    (compiler-dependent) prototypes for Fortran BLAS/LAPACK routines
    called from C/C++, and requires adjustment of many such calls -
    see 'Writing R Extensions' SS6.6.1.
  * There is initial support for C++23 as several compilers are now
    supporting -std=c++23 or -std=c++2b or similar.  As for C++20,
    there no additional configure checks for C++23 features beyond a
    check that the compiler reports a __cplusplus value greater than
    that in the C++20 standard.  C++ feature tests should be used.
  * There is support for a package to indicate the version of the C
    standard which should be used to compile it, and for the
    installing user to specify this.  In most cases R defaults to the
    C compiler's default standard which is C17 (a `bug-fix' of C11) -
    earlier versions of R or compilers may have defaulted to C99.
    Current options are:
    USE_C17 Use a standard that is at most C17.  The intention is to
    allow legacy packages to still be installed when later C
    standards become the default, including packages using new
    keywords as identifiers or with K&amp;R-style function
    declarations.  This will use C17 if available, falling back
    to C11.
    USE_C90 Use the C90 (aka C89) standard.  (As that standard did
    not require compilers to identify that version, all we can
    verify is that the compiler does not claim to be using a
    later standard.  It may accept C99 features - for example
    clang accepts // to make comments.)
    USE_C99 Use the C99 standard. This should be rarely needed - it
    avoids the few new features of C11/C17 which can be useful if
    a package assumes them if C17 is specified and they are not
    implemented.
    USE_C23 Use C23 (or in future, later).  Compiler/library support
    for C23 is still being implemented, but LLVM clang from
    15.0.0 and the upcoming GCC 13 have quite extensive support.
    These can be specified as part of the SystemRequirements field in
    the package's DESCRIPTION file or _via_ options --use-C17 and so
    on of R CMD INSTALL and R CMD SHLIB.
    For further details see "Writing R Extensions" SS1.2.5.
  * (Windows) A src/Makefile.ucrt or src/Makefile.win file is now
    included after R_HOME/etcR_ARCH/Makeconf and so no longer needs
    to include that file itself.  Installation of a package with such
    a file now uses a site Makevars file in the same way as a package
    with a src/Makevars.win file would.
  * configure is now passed crucial variables such as CC and CFLAGS
    in its environment, as many packages were not setting them (as
    documented in 'Writing R Extensions' SS1.2).
    This has most effect where configure is used to compile parts of
    the package - most often by cmake or libtool which obfuscate the
    actual compile commands used.
    Also used for configure.win and configure.ucrt on Windows.
  FORTRAN FLAGS:
  * The flag -fno-optimize-sibling-calls is no longer forced for
    gfortran 7 and later.  It should no longer be needed now using
    'hidden' character-length arguments when calling BLAS/LAPACK
    routines from C/C++ is the default even for packages.  (Unless
    perhaps packages call Fortran code from C/C++ without using R's
    headers and without allowing for these arguments.)
  C-LEVEL FACILITIES:
  * The deprecated S-compatibility macros DOUBLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * The deprecated legacy typedefs of Sint and Sfloat in header R.h
    are no longer defined, and that header no longer includes header
    limits.h from C nor climits from C++.
  * New macro CAD5R() is provided in Rinternals.h and used in a few
    places in the R sources.
  * ALTREP now supports VECSXP vectors. Contributed by Gabor Csardi
    in PR#17620.
  * The Rcomplex definition (in header R_ext/Complex.h) has been
    extended to prevent possible mis-compilation when interfacing
    with Fortran (PR#18430).  The new definition causes compiler
    warnings with static initializers such as {1, 2}, which can be
    changed to {.r=1, .i=2}.
    Using the new definition from C++ depends on compiler extensions
    supporting C features that have not been incorporated into the
    C++ standards but are available in g++ and clang++: this may
    result in C++ compiler warnings but these have been worked around
    for recent versions of common compilers (GCC, Apple/LLVM clang,
    Intel).
    It is intended to change the inclusion of header R_ext/Complex.h
    by other R headers, so C/C++ code files which make use of
    Rcomplex should include that header explicitly.
  UTILITIES:
  * R CMD check does more checking of package .Rd files, warning
    about invalid email addresses and (some) invalid URIs and noting
    empty \item labels in description lists.
  * R CMD check now also reports problems when reading package news
    in md (file NEWS.md) and (optionally) plain text (file NEWS)
    formats.
  * _R_CHECK_TIMINGS_ defaults to a value from the environment even
    for R CMD check --as-cran; this allows for exceptionally fast or
    slow platforms.
    It now applies to checking PDF and HTML versions of the manuals,
    and 'checking CRAN incoming feasibility'.
  * R CMD check can optionally (but included in --as-cran) check
    whether HTML math rendering _via_ KaTeX works for the package .Rd
    files.
  * Non-interactive debugger invocations can be trapped by setting
    the environment variable _R_CHECK_BROWSER_NONINTERACTIVE_ to a
    true value.  This is enabled by R CMD check --as-cran to detect
    the use of leftover browser() statements in the package.
  * The use of sprintf and vsprintf from C/C++ has been deprecated in
    macOS 13 and is a known security risk.  R CMD check now reports
    (on all platforms) if their use is found in compiled code:
    replace by snprintf or vsnprintf respectively. [*NB:* whether
    such calls get compiled into the package is platform-dependent.]
  * Where recorded at installation, R CMD check reports the C and
    Fortran compilers used to build R.
    It reports the OS in use (if known, as given by osVersion) as
    well as that R was built for.
    It notes if a C++ standard was specified which is older than the
    current default: many packages have used C++11 to mean 'not
    C++98' - as C++11 is the minimum supported since R 4.0.0, that
    specification can probably be removed.
  * R CMD INSTALL reports the compilers (and on macOS, the SDK) used,
    and this is copied to the output of R CMD check.
    Where a C++ standard is specified, it is reported.
  * R CMD check's 'checking compilation flags in Makevars' has been
    relaxed to accept the use of flags such as -std=f2008 in
    PKG_FFLAGS.
  * tools::buildVignettes() has a new argument skip, which is used by
    R CMD check to skip (and note) vignettes with unavailable
    \VignetteDepends (PR#18318).
  * New generic .AtNames() added to enable class-specific completions
    after @. The formerly internal function findMatches() is now
    exported, mainly for use in methods for .DollarNames() and
    .AtNames().
  DEPRECATED AND DEFUNCT:
  * default.stringsAsFactors() is defunct.
  * Calling as.data.frame.&lt;class&gt;() directly (for 12 atomic classes)
    is going to be formally deprecated, currently activated by
    setting the environment variable
    _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ to non-empty, which also
    happens in R CMD check --as-cran.
  BUG FIXES:
  * Hashed environments with sizes less than 5 can now grow.
    (Reported to R-devel by Duncan Garmonsway.)
  * as.character(&lt;Rd&gt;, deparse = TRUE) failed to re-escape curly
    braces in LaTeX-like text.  (Reported by Hadley Wickham in
    PR#18324.)
  * library() now passes its lib.loc argument when requiring Depends
    packages; reported (with fix) in PR#18331 by Mikael Jagan.
  * R CMD Stangle: improved message about 'Output' files.
  * head(x, n) and tail(x, n) now signal an error if n is not
    numeric, instead of incidentally "working" sometimes returning
    all of x.  Reported and discussed by Colin Fay, in PR#18357.
  * The "lm" method for summary() now gives the correct F-statistic
    when the model contains an offset.  Reported in PR#18008.
  * C() and `contrasts&lt;-`() now preserve factor level names when
    given a function object (as opposed a function name which did
    preserve names). Reported in PR#17616.
  * c(a = 1, 2)[[]] no longer matches 2 but rather signals a
    _classed_ error.  Reported and analysed by Davis Vaughan in
    PR#18367, a duplicate of PR#18004, by Jan Meis et al.  For
    consistency, NULL[[]] is also erroneous now.  x[[]] &lt;- v gives an
    error of the same class "MissingSubscriptError".
  * The relist() function of utils now supports NULL elements in the
    skeleton (PR#15854).
  * ordered(levels = *) (missing x) now works analogously to factor(,
    ordered=TRUE); reported (with fix) by Achim Zeileis in PR#18389.
  * User-defined Rd macro definitions can now span multiple lines,
    thanks to a patch from Duncan Murdoch. Previously, the Rd parser
    silently ignored everything after the first line.
  * Plain-text help (tools::Rd2txt()) now preserves an initial blank
    line for text following description list items.
  * tools::Rd2HTML() and tools::Rd2latex() no longer split \arguments
    and \value lists at Rd comments.
  * tools::Rd2latex() now correctly handles optional text outside
    \items of argument lists as well as bracketed text at the
    beginning of sections, e.g., \value{[NULL]}.
  * as.character(&lt;POSIXt&gt;) now behaves more in line with the methods
    for atomic vectors such as numbers, and is no longer influenced
    by options().  Ditto for as.character(&lt;Date&gt;).  The
    as.character() method gets arguments digits and OutDec with
    defaults _not_ depending on options().  Use of as.character(*,
    format = .) now warns.
  * Similarly, the as.character.hexmode() and *.octmode() methods
    also behave as good citizen methods and back compatibility option
    keepStr = TRUE.
  * The as.POSIXlt(&lt;POSIXlt&gt;) and as.POSIXct(&lt;POSIXct&gt;) default
    methods now do obey their tz argument, also in this case.
  * as.POSIXlt(&lt;Date&gt;) now does apply a tz (time zone) argument, as
    does as.POSIXct(); partly suggested by Roland Fuss on the R-devel
    mailing list.
  * as.Date.POSIXlt(x) now also works when the list components are of
    unequal length, aka "partially filled" or "ragged".
  * expand.model.frame() looked up variables in the wrong environment
    when applied to models fitted without data.  Reported in
    PR#18414.
  * time() now (also) uses the ts.eps = getOption("ts.eps") argument
    and thus by default rounds values very close to the start (or
    end) of a year.  Based on a proposal by Andre"i V. Kostyrka on
    R-help.
  * Printing of a factanal() result with just one factor and sort =
    TRUE now works regularly, fixing PR#17863 by Timothy Bates,
    thanks to the 'R Contributors' working group.
  * Printing 0-length objects of class "factor", "roman", "hexmode",
    "octmode", "person", "bibentry", or "citation" now prints
    something better, one of which fixes PR#18422, reported by
    Benjamin Feakins.
  * Sys.timezone() queries timedatectl only if systemd is loaded;
    addressing a report by Jan Gorecki in PR#17421.
  * The formula method of cor.test() had scoping problems when
    environment(formula) was not the calling environment; reported
    with a patch proposal by Mao Kobayashi in PR#18439.
  * attach() of an environment with active bindings now preserves the
    active bindings.  Reported by Kevin Ushey in PR#18425.
  * BLAS detection now works also with system-provided libraries not
    available as regular files.  This fixes detection of the
    Accelerate framework on macOS since Big Sur.  Reported by David
    Novgorodsky.
  * download.file() gives a helpful error message in case of an
    invalid download.file.method option, thanks to Colin Fay's report
    in PR#18455.
  * Sporadic crashes of Rterm when using completion have been fixed.
  * Rprof() is now more reliable.  A livelock in thread
    initialization with too short sampling interval has been fixed on
    macOS.  A deadlock in using the C runtime has been fixed on
    Windows.  A potential deadlock has been prevented on Unix.
  * Cursor placement in Rgui now works even after a fixed-width font
    is selected.
  * Mandatory options (options()) are now set on startup so that
    saving and restoring them always works (PR#18372).
  * Package installation, R CMD INSTALL or install.packages(*), now
    parses each of the &lt;pkg&gt;/R/*.R files individually instead of
    first concatenating and then parse()ing the large resulting file.
    This allows parser or syntax errors to be diagnosed with correct
    file names and line numbers, thanks to Simon Dedman's report and
    Bill Dunlap's patch in PR#17859.
    This _does_ require syntactically self contained R source files
    now, fixing another inadvertent bug.
  * predict.lm(&lt;model with offset&gt;) now finds the offset in the
    correct environment, thanks to Andr'e Gillibert's report and patch
    in PR#18456.
  * getInitial(&lt;formula&gt;) now finds the selfStart model in the
    correct environment.  (Reported by Ivan Krylov in PR#18368.)
  * Fix for possible segfault when using recently-added graphics
    features, such as gradients, clipping paths, masks, and groups
    with pdf(file=NULL).
  * class(m) &lt;- class(m) no longer changes a matrix m by adding a
    class _attribute_.
  * packageDate(pkg) now only warns once if there is no pkg.
  * When ts() creates a multivariate time series, "mts", it also
    inherits from "array" now, and is.mts() is documented _and_
    stricter.
  * Rd2txt() now preserves line breaks of \verb Rd content and from
    duplicated \cr.  The former also fixes the rendering of verbatim
    output from Rd \Sexpr in plain-text help.
  * uniroot(f, interval) should no longer wrongly converge _outside_
    the interval in some cases where abs(f(x)) == Inf for an x at the
    interval boundary, thanks to posts by Ben Bolker and Serguei
    Sokol on R-devel.
  * Vectorized alpha handling in palette functions such as in gray(),
    rainbow(), or hcl.colors() works correctly now, thanks to Achim
    Zeileis' report and patch in PR#18476.
  * Formatting and print()ing of bibentry objects has dropped the
    deprecated citation.bibtex.max argument, such that the bibtex
    argument's default for print.bibentry() depends directly on the
    citation.bibtex.max option, whereas in format.bibentry() the
    option no longer applies.
  * Attempting to use a character string naming a foreign function
    entry point in a foreign function call in a package will now
    signal an error if the packages has called R_forceSymbols to
    specify that symbols must be used.
  * An error in table() could permanently set options(warn=2)
    promoting all subsequent warnings to errors.
  * The sigma() function gave misleading results for binary GLMs.  A
    new method for objects of class "glm" returns the square root of
    the estimate of the dispersion parameter using the same
    calculation as summary.glm().
  * bs() and ns() in the (typical) case of automatic knot
    construction, when some of the supposedly inner knots coincide
    with boundary knots, now moves them inside (with a warning),
    building on PR#18442 by Ben Bolker.
  * R CMD on Windows now skips the site profile with --no-site-file
    and --vanilla even when R_PROFILE is set (PR#18512, from Kevin
    Ushey).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1686916800">- CHANGES IN R 4.3.1:
  C-LEVEL FACILITIES:
  * The C-level API version of R's integrate(), Rdqags() in Applic.h,
    now returns the correct number of integrand evaluations neval,
    fixing PR#18515 reported and diagnosed by Stephen Wade.
  * The C prototypes for LAPACK calls dspgv and dtptrs in
    R_exts/Lapack.h had one too many and one too few character length
    arguments - but this has not caused any known issues. To get the
    corrected prototypes, include
    [#]include &lt;Rconfig.h&gt; // for PR18534fixed
    [#]ifdef PR18534fixed
    [#] define usePR18534fix 1
    [#]endif
    [#]include &lt;R_exts/Lapack.h&gt;
    in your C/C++ code (PR#18534).
  INSTALLATION:
  * Many of the checks of esoteric Internet operations and those
    using unreliable external sites have been moved to a new target
    that is not run by default and primarily intended for the core
    developers.  To run them use
    cd tests; make test-Internet-dev
  BUG FIXES:
  * .S3methods(), typically called from methods(), again marks
    methods from package base as visible.
    Also, the visibility of non-base methods is again determined by
    the method's presence in search().
  * tools::Rdiff() is now more robust against invalid strings, fixing
    installation tests on Windows without Rtools installed
    (PR#18530).
  * Fix (new) bug in hcl.colors(2, *), by Achim Zeileis (PR#18523).
  * head(., &lt;illegal&gt;) and tail(..) now produce more useful "Error in
    ...." error messages, fixing PR#18362.
  * Package code syntax on Windows is checked in UTF-8 when UTF-8 is
    the native encoding.
  * na.contiguous(x) now also returns the first run, when it is at
    the beginning and there is a later one of the same length;
    reported to R-devel, including a fix, by Georgi Boshnakov.
    Further, by default, it modifies only an existing attr(*,"tsp")
    but otherwise no longer sets one.
  * chol(&lt;not pos.def&gt;, pivot = &lt;T|F&gt;) now gives a correct error or
    warning message (depending on pivot), thanks to Mikael Jagan's
    (PR#18541).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1699012800">- CHANGES IN R 4.3.2:
  NEW FEATURES:
  * The default initialization of the "repos" option from the
    repositories file at startup can be skipped by setting
    environment variable R_REPOSITORIES to NULL such that
    getOption("repos") is empty if not set elsewhere.
  * qr.X() is now an implicit S4 generic in methods.
  * iconv(to = "ASCII//TRANSLIT") is emulated using substitution on
    platforms which do not support it (notably Alpine Linux).  This
    should give a human-readable conversion in ASCII on all platforms
    (rather than NA_character_).
  * trans3d() gains options continuous and verbose addressing the
    problem of possible "wrap around" when projecting too long
    curves, as reported by Achim Zeileis in PR#18537.
  * tools::showNonASCII() has been rewritten to work better on macOS
    14 (which has a changed implementation of iconv()).
  * tiff(type = "quartz") (the default on macOS) now warns if
    compression is specified: it continues to be ignored.
  INSTALLATION on a UNIX-ALIKE:
  * There is some support for building with Intel's LLVM-based
    compilers on x86_64 Linux, such as (C) icx, (C++) ipcx and
    (Fortran) ifx from oneAPI 2023.x.y.
  * There is support for using LLVM's flang-new as the Fortran
    compiler from LLVM 16.0.x (preferably 17.0.0 or later).
  UTILITIES:
  * R CMD check reports the use of the Fortran 90 random number
    generator RANDOM_NUMBER() and the subroutines to initialize it.
    'Writing R Extensions' has example code to use R's RNGs from
    Fortran.
  BUG FIXES:
  * substr(x, n, L) &lt;- cc now works (more) correctly for multibyte
    UTF-8 strings x when L &gt; nchar(x), thanks to a report and patch
    by 'Architect 95'.
  * contrib.url(character()) now returns 0-length character() as
    documented, which also avoids spurious warnings from
    available.packages() et al. in the edge case of an empty vector
    of repository URLs.
  * readChar(., 4e8) no longer fails, thanks to Kodi Arfer's report
    (PR#18557).
  * lapply(&lt;list&gt;, as.data.frame) no longer warns falsely for some
    base vector components.
  * Communication between parent and child processes in the multicore
    part of parallel could fail on platforms that do not support an
    arbitrarily large payload in system functions read()/write() on
    pipes (seen on macOS where a restriction to INT_MAX bytes is
    documented, without doing a partial read unlike Linux). The
    payload is now split into 1Gb chunks to avoid that problem.
    (PR#18571)
  * qqplot(x,y, conf.level=.) gives better confidence bounds when
    length(x) != length(y), thanks to Alexander Ploner's report and
    patch proposal (PR#18557).
  * norm(&lt;0-length&gt;, "2") now gives zero instead of an error, as all
    the other norm types, thanks to Mikael Jagan's PR#18542.
  * Build-stage Rd macros \packageAuthor and \packageMaintainer now
    process Authors@R, fixing NA results when the package DESCRIPTION
    omits Author and Maintainer fields.
  * Formatting and printing complex numbers could give things like
    0.1683-0i because of rounding error: -0i is now replaced by +0i.
  * postscript() refused to accept a title comment containing the
    letter "W" (PR#18599).
  * isoreg(c(1,Inf)) signals an error instead of segfaulting, fixing
    PR#18603.
  * tiff(type = "Xlib") was only outputting the last page of
    multi-page plots.
  * tools::latexToUtf8() again knows about \~{n} and other letters
    with tilde, fixing a regression in R 4.3.0, and about \^{i} as an
    alternative to \^{\i} (similarly with other accents).
    Furthermore, LaTeX codes for accented I letters are now correctly
    converted, also fixing related mistakes in
    tools::encoded_text_to_latex().
  * tar(*, tar = "internal") no longer creates out-of-spec tar files
    in the very rare case of user or group names longer than 32
    bytes, fixing PR#17871 with thanks to Ivan Krylov.
  * When using the "internal" timezone datetime code, adding a
    fraction of a second no longer adds one second, fixing PR#16856
    from a patch by Ivan Krylov.
  * tools::checkRd() no longer produces spurious notes about
    "unnecessary braces" from multi-line Rd results of \Sexpr macros.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1709208000">- CHANGES IN R 4.3.3:
  NEW FEATURES:
  * iconv() now fixes up variant encoding names such as "utf8"
    case-insensitively.
  DEPRECATED AND DEFUNCT:
  * The legacy encoding = "MacRoman" is deprecated in pdf() and
    postscript(): support was incomplete in earlier versions of R.
  BUG FIXES:
  * Arguments are now properly forwarded to methods on S4 generics
    with ... in the middle of their formal arguments. This was broken
    for the case when a method introduced an argument but did not
    include ... in its own formals. Thanks to Herv'e Pag`es for the
    report PR#18538.
  * Some invalid file arguments to pictex(), postscript() and xfig()
    opened a file called NA rather than throw an error.  These
    included postscript(NULL) (which some people expected to work
    like pdf(NULL)).
  * Passing filename = NA to svg(), cairo_pdf(), cairo_ps() or the
    Cairo-based bitmap devices opened a file called NA: it now throws
    an error.
  * quartz(file = NA) opened a file called NA, including when used as
    a Quartz-based bitmap device.  It now gives an error.
  * rank(&lt;long vector&gt;) now works, fixing PR#18617, thanks to Ilia
    Kats.
  * seq.int() did not adequately check its length.out argument.
  * match(&lt;POSIXct&gt;, .) is correct again for differing time zones,
    ditto for "POSIXlt", fixing PR#18618 reported by Bastian Klein.
  * drop.terms(*, dropx = &lt;0-length&gt;) now works, fixing PR#18563 as
    proposed by Mikael Jagan.
  * drop.terms(*) keeps + offset(.) terms when it should, PR#18565,
    and drop.terms() no longer makes up a response, PR#18566, fixing
    both bugs thanks to Mikael Jagan.
  * getS3method("t", "test") no longer finds the t.test() function,
    fixing PR#18627.
  * pdf() and postscript() support for the documented Adobe encodings
    "Greek" and "Cyrilllic" was missing (although the corresponding
    Windows' codepages could be used).
  * Computations of glyph metric information for pdf() and
    postscript() did not take into account that transliteration could
    replace one character by two or more (only seen on macOS 14) and
    typically warned that the information was not known.
  * rank(x) no longer overflows during integer addition, when
    computing rank average for largish but not-yet long vector x,
    fixing PR#18630, thanks to Ilia Kats.
  * list.files() on Windows now returns also files with names longer
    that 260 bytes (the Windows limit is 260 characters).
    Previously, some file names particularly with 'East Asian'
    characters were omitted.
  * cov2cor(&lt;0 x 0&gt;) now works, fixing PR#18423 thanks to Mikael
    Jagan and Elin Waring.
  * cov2cor(&lt;negative diagonal&gt;) and similar now give one warning
    instead of two, with better wording, fixing PR#18424 thanks to
    Mikael Jagan.
  * tools:: startDynamicHelp() now ensures port is in proper range,
    fixing PR#18645.
  * pbeta(x, a,b) is correct now for x=0 or 1 in the boundary cases
    where a or b or both are 0, fixing PR#18672 thanks to Michael
    Fay.
  * pmatch(x, table) for large table, also called for data frame row
    selection, dfrm[nm, ], is now interruptible, fixing PR#18656.
  * predict(&lt;rank-deficient lm&gt;, newdata=*) fix computing of nbasis,
    see Russ Lenth's comment 29 in PR#16158.
  * Added a work-around for a bug in macOS 14.3.1 and higher which
    prevents R plots in the Quartz Cocoa device from updating on
    screen.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1713960000">- CHANGES IN R 4.4.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Startup banners, R --version, sessionInfo() and R CMD check no
    longer report (64-bit) as part of the platform as this is almost
    universal - the increasingly rare 32-bit platforms will still
    report (32-bit).
    On Windows, ditto for window titles.
  * is.atomic(NULL) now returns FALSE, as NULL is not an atomic
    vector.  Strict back-compatibility would replace is.atomic(foo)
    by (is.null(foo) || is.atomic(foo)) but should happen only
    sparingly.
  NEW FEATURES:
  * The confint() methods for "glm" and "nls" objects have been
    copied to the stats package.  Previously, they were stubs which
    called versions in package MASS. The MASS namespace is no longer
    loaded if you invoke (say) confint(glmfit).  Further, the "glm"
    method for profile() and the plot() and pairs() methods for class
    "profile" have been copied from MASS to stats.  (profile.nls()
    and plot.profile.nls() were already in stats.)
  * The confint() and profile methods for "glm" objects have gained a
    possibility to do profiling based on the Rao Score statistic in
    addition to the default Likelihood Ratio. This is controlled by a
    new test = argument.
  * The pairs() method for "profile" objects has been extended with a
    which = argument to allow plotting only a subset of the
    parameters.
  * The "glm" method for anova() computes test statistics and
    p-values by default, using a chi-squared test or an F test
    depending on whether the dispersion is fixed or free.  Test
    statistics can be suppressed by giving argument test a false
    logical value.
  * In setRepositories() the repositories can be set using their
    names via name = instead of index ind =.
  * methods() and .S3methods() gain a all.names option for the (rare)
    case where functions starting with a . should be included.
  * Serializations can now be interrupted (e.g., by Ctrl-C on a
    Unix-alike) if they take too long, e.g., from save.image(),
    thanks to suggestions by Ivan Krylov and others on R-devel.
  * New startup option --max-connections to set the maximum number of
    simultaneous connections for the session.  Defaults to 128 as
    before: allowed values up to 4096 (but resource limits may in
    practice restrict to smaller values).
  * R on Windows (since Windows 10 2004) now uses the new Segment
    Heap allocator. This may improve performance of some
    memory-intensive applications.
  * When R packages are built, typically by R CMD build &lt;pkg&gt;, the
    new --user=&lt;build_user&gt; option overrides the (internally
    determined) user name, currently Sys.info()["user"] or LOGNAME.
    This is a (modified) fulfillment of Will Landau's suggestion in
    PR#17530.
  * tools::testInstalledBasic() gets new optional arguments outDir
    and testSrcdir, e.g., allowing to use it in a &lt;builddir&gt; !=
    &lt;srcdir&gt; setup, and in standard "binary" Windows installation
  * if* a source tests/ folder is present.
  * range(&lt;DT_with_Inf&gt;, finite = TRUE) now work for objects of class
    "Date", "POSIXct", and "POSIXlt" with infinite entries,
    analogously to range.default(), as proposed by Davis Vaughan on
    R-devel.  Other range()-methods can make use of new function
    .rangeNum().
  * New .internalGenerics object complementing .S3PrimitiveGenerics,
    for documentation and low-level book-keeping.
  * grid() now invisibly returns the x- and y- coordinates at which
    the grid-lines were drawn.
  * norm(., type) now also works for complex matrices.
  * kappa(., exact = TRUE, norm = *) now works for all norms and also
    for complex matrices.  In symmetric / triangular cases, the new
    argument uplo = "U" | "L" allows the upper or lower triangular
    part to be specified.
  * memDecompress(type = "unknown") recognizes compression in the
    default 'zlib' format as used by memCompress(type = "gzip").
  * memCompress() and memDecompress() will use the libdeflate library
    (&lt;https://github.com/ebiggers/libdeflate&gt;) if installed.  This
    uses the same type of compression for type = "gzip" but is 1.5-2x
    faster than the system libz library on some common platforms: the
    speed-up may depend on the library version.
  * diff() for objects of class "Date", "POSIXct", and "POSIXlt"
    accepts a units argument passed via ....
  * Dynamic help now does a much better job of rendering package
    DESCRIPTION metadata.
  * Rprof() gains an event argument and support for elapsed (real)
    time profiling on Unix (PR#18076).
  * filled.contour() gains a key.border argument.
  * tools::update_pkg_po() gets arguments pot_make and mo_make for
    _not_ re-making the corresponding files, and additionally a
    verbose argument.
  * Hexadecimal string colour specifications are now accepted in
    short form, so, for example, we can use "#123", which is
    equivalent to "#112233".
    Thanks to MikeFC for the original idea and Ella Kaye, Malcolm
    Barrett, George Stagg, and Hanne Oberman for the patch.
  * Plain-text help shows \var markup by angle brackets.
  * The new experimental primitive function declare() is intended to
    eventually allow information about R code to be communicated to
    the interpreter, compiler, and code analysis tools. The syntax
    for declarations is still being developed.
  * Functions psmirnov(), qsmirnov() and rsmirnov() in package stats
    have had argument two.sided renamed to alternative, to take into
    account that the permutation distributions of the one-sided
    statistics can be different in the case of ties.  Consequence of
    PR#18582.
  * sort() is now an implicit S4 generic in methods.
  * Formatting and printing, format(z), print(z), of complex vectors
    z no longer zap relatively small real or imaginary parts to zero,
    fixing PR#16752.  This is an API change, as it was documented
    previously to round real and imaginary parts together on purpose,
    producing nicer looking output.  As mentioned, e.g. in the PR,
    this change is compatible with many other "R-like" programming
    environments.
    We have simplified the internal code and now basically format the
    real and imaginary parts independently of each other.
  * New experimental functions Tailcall() and Exec() to support
    writing stack-space-efficient recursive functions.
  * Where characters are attempted to be plotted by pdf(),
    postscript() and xfig() which are not in the selected 8-bit
    character set (most often Latin-1) and the R session is using a
    UTF-8 locale, the warning messages will show the UTF-8 character
    rather than its bytes and one dot will be substituted per
    character rather than per byte.  (Platforms whose iconv() does
    transliteration silently plot the transliteration.)
    In a UTF-8 locale some transliterations are now done with a
    warning (e.g., dashes and Unicode minus to hyphen, ligatures are
    expanded, permille (‰) is replaced by o/oo), although the OS may
    have got there first.  These are warnings as they will continue
    to be replaced by dots in earlier versions of R.
  * The matrix multiplication functions crossprod() and tcrossprod()
    are now also primitive and S3 generic, as %*% had become in R
    4.3.0.
  * source() and example() have a new optional argument catch.aborts
    which allows continued evaluation of the R code after an error.
  * The non-Quartz tiff() devices allow additional types of
    compression if supported by the platform's libtiff library.
  * The list of base and recommended package names is now provided by
    tools::standard_package_names().
  * cairo_pdf() and cairo_ps() default to onefile = TRUE to closer
    match pdf() and postscript().
  * New option catch.script.errors provides a documented way to catch
    errors and then continue in non-interactive use.
  * L %||% R newly in base is an expressive idiom for the phrases
    if(!is.null(L)) L else R or if(is.null(L)) R else L.
  * The return value from warnings() now always inherits from
    "warnings" as documented, now also in the case of no warnings
    where it previously returned NULL.
  * as.complex("1i") now returns 0 + 1i instead of NA with a warning.
  * z &lt;- c(NA, 1i) now keeps the imaginary part Im(z[1]) == 0, no
    longer coercing to NA_complex_.  Similarly, cumsum(z) correctly
    sums real and imaginary parts separately, i.e., without
    "crosstalk" in case of NAs.
  * On Alpine Linux iconv() now maps "latin2", "latin-2", "latin9"
    and "latin-9" to encoding names the OS knows about
    (case-insensitively).
  * iconv(sub = "Unicode") now always zero-pads to four (hex) digits,
    rather than to 4 or 8.  (This seems to have become the convention
    once Unicode restricted the number of Unicode points to 2^21 - 1
    and so will never need more than 6 digits.)
  * NCOL(NULL) now returns 0 instead of 1, for consistency with
    cbind().
  * The information for the Euro glyph missing from the Adobe .afm
    files for the Courier, Helvetica and Times families has been
    copied from their URW equivalents - this will improve vertical
    centring in the pdf() and postscript() devices.
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.12.0.  The changes are almost entirely cosmetic.
  * The included LAPACK sources have been updated to version 3.12.0
    and some further double-complex routines added.
  * There are new font families for the 2014--5 URW 2.0 fonts (see
    ?pdf) which are included in recent versions of Ghostscript.
    These have font widths for most Greek glyphs and a few others
    which were missing from the original versions (whose font
    families remain available for reproducibility, although
    Ghostscript-based viewers will render using the 2.0 versions).
  * Improve the large-n efficiency of as.matrix(&lt;dist&gt;), thanks an R
    contributors effort, notably by Tim Taylor and Heather Turner,
    see PR#18660.
  * The default and numeric methods of all.equal() get a check.class
    option.
  * zapsmall() gets new optional arguments, function mFUN and min.d,
    for extra flexibility; fulfills a wish in PR#18199.  Also, it is
    now an implicit S4 generic in package methods.
  * The Rd filter for aspell() gains an ignore argument.
  * New generic function sort_by(), primarily useful for the
    data.frame method which can be used to sort rows of a data frame
    by one or more columns.
  * The icence headers for the RPC code in src/extra/xdr have been
    updated to use the GPL-compatible licence published by Oracle
    America in 2010.
  * New function pkg2HTML() in tools to create single-page HTML
    reference manuals for R packages.
  * The byte code evaluator now uses less C stack space for recursive
    calls to byte-compiled functions. It also makes more of an effort
    to avoid allocations for scalar return values.
  * New completion option backtick (disabled by default) allows
    non-syntactic completions to be wrapped in backquotes. This is
    currently only useful for Jupyter notebooks via the IRkernel
    package, and may cause problems for other backends.
  INSTALLATION:
  * The parser has been updated to work with bison 3.8.2, which is
    now used for the pre-generated parsers in gram.c, file.c, and
    gramRd.c. A few parser error messages have changed, which may
    affect code that relies on exact messages.
  INSTALLATION on a UNIX-ALIKE:
  * System valgrind headers are now required to use configure option
  - -with-valgrind-instrumentation with value 1 or 2.
  * configure will warn if it encounters a 32-bit build, as that is
    nowadays almost untested.
  * Environment variable R_SYSTEM_ABI is no longer used and so no
    longer recorded in etc/Renviron (it was not on Windows and was
    only ever used when preparing package tools).
  * If the libdeflate library and headers are available, libdeflate
    rather than libz is used to (de)compress R objects in lazy-load
    databases.  Typically tasks spend up to 5% of their time on such
    operations, although creating lazy-data databases is one of the
    exceptions.
    This can be suppressed if the library is available by the
    configure option --without-libdeflate-compression.
  * configure option --enable-lto=check has not worked reliably since
    2019 and has been removed.
  * The minimum autoconf requirement for a maintainer build has been
    increased to autoconf 2.71.
    It is intended to increase this to 2.72 for R 4.5.0: the
    distributed configure file was generated using 2.72.
  * The minimum version requirement for an external LAPACK has been
    reduced to 3.9.0.
  * No default C++ compiler is set if no C++17 compiler is detected:
    there is no longer an automatic fallback to C++14 or C++11.
    Compilers from the last five years should have sufficient
    support: for others macros CXX and CXXSTD can be set in file
    config.site to provide a fallback if needed.
    The Objective-C++ compiler now by default uses the standard
    selected by R for C++ (currently C++17) rather than the default
    standard for the C++ compiler (which on macOS is still C++98).
  INSTALLATION on macOS:
  * A new configure option --with-newAccelerate makes use of Apple's
    'new' BLAS / LAPACK interfaces in their Accelerate framework.
    Those interfaces are only available in macOS 13.3 or later, and
    building requires SDK 13.3 or later (from the Command Line Tools
    or Xcode 14.3 or later).
    By default the option uses new Accelerate for BLAS calls: to also
    use it for LAPACK use option --with-newAccelerate=lapack.  The
    later interfaces provide LAPACK 3.9.1 rather than 3.2.1: 3.9.1 is
    from 2021-04 and does not include the improved algorithms
    introduced in LAPACK 3.10.0 (including for BLAS calls).
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools44, an update of the Rtools43 toolchain.  It is
    based on GCC 13 and newer versions of MinGW-W64, binutils and
    libraries (targeting 64-bit Intel CPUs).  R-devel can no longer
    be built using Rtools43 without changes.
  * Rtools44 has experimental support for 64-bit ARM (aarch64) CPUs
    _via_ the LLVM 17 toolchain using lld, clang/flang-new and
    libc++.
  UTILITIES:
  * R CMD check notes when S4-style exports are used without
    declaring a strong dependence on package methods.
  * tools::checkRd() (used by R CMD check) detects more problems with
    \Sexpr-based dynamic content, including bad nesting of \Sexprs
    and invalid arguments.
  * tools::checkRd() now reports Rd titles and section names ending
    in a period; this is ignored by R CMD check unless environment
    variable _R_CHECK_RD_CHECKRD_MINLEVEL_ is set to -5 or smaller.
  * R CMD check now notes Rd files without an \alias, as long
    documented in 'Writing R Extensions' §1.3.1.  The check for a
    missing \description has been moved from tools::checkRd() to
    tools::checkRdContents().
  * R CMD check now visits inst/NEWS.Rd and OS-specific man
    subdirectories when checking Rd files.
  * tools::checkDocFiles() and tools::checkRdContents() now also
    check internal Rd files by default, but "specially" (ignoring
    missing documentation of arguments).
  * R CMD Rdiff gets option --useEx.
  * R CMD check now warns on non-portable uses of Fortran KIND such
    as INTEGER(KIND=4) and REAL(KIND=8).
    To see the failing lines set environment variable
    _R_CHECK_FORTRAN_KIND_DETAILS_ to a true value.
  * When checking Rd files, R CMD check now notes some of the "lost
    braces" that tools::checkRd() finds.  Typical problems are Rd
    macros missing the initial backslash (e.g., code{...}), in-text
    set notation (e.g., {1, 2}, where the braces need escaping), and
    \itemize lists with \describe-style entries of the form
    \item{label}{description}.
  * R CMD INSTALL (and hence check) will compile C++ code with
  - DR_NO_REMAP if environment variable _R_CXX_USE_NO_REMAP_ is set
    to a true value.  It is planned that this will in future become
    the default for compiling C++.
  * The new built-in Rd macro \dontdiff{} can be used to mark example
    code whose output should be ignored when comparing check output
    to reference output (tests/Examples/&lt;pkg&gt;-Ex.Rout.save).  The
    \dontdiff tag, like \donttest, is _not_ shown on the rendered
    help page, so provides a clean alternative to ##
    IGNORE_RDIFF_(BEGIN|END) comments.
  * R CMD build when there is no NAMESPACE, now uses the recommended
    exportPattern("^[^.]"), instead of exporting everything.
  * R CMD check now warns about non-ASCII characters in the NAMESPACE
    file (in addition to R files). Such packages are not portable and
    may fail to install on some platforms.
  C-LEVEL FACILITIES:
  * Headers R_ext/Applic.h and R-ext/Linpack.h used to include
    R_ext/BLAS.h although this was undocumented and unneeded by their
    documented entry points.  They no longer do so.
  * New function R_missing(), factored out from do_missing(), used to
    fix PR#18579.
  * SEXP type S4SXP has been renamed to OBJSXP to support
    experimenting with alternative object systems.  The S4SXP value
    can still be used in C code but is now deprecated.  Based on
    contributions from the R Consortium's Object-Oriented Programming
    Working Group.
  * New function pow1p(x,y) for accurate (1+x)^y.
  * mkCharLenCE was incorrectly documented to take a size_t length
    but was implemented with int (and character strings in R are
    limited to 2^31 - 1 bytes).
  DEPRECATED AND DEFUNCT:
  * data() no longer handles zipped data from long-defunct (since R
    2.13.0) --use-zip-data installations.
  * The legacy graphics devices pictex() and xfig() are now
    deprecated.  They do not support recent graphics enhancements and
    their font handling is rudimentary. The intention is to retain
    them for historical interest as long as they remain somewhat
    functional.
  * Support for encoding = "MacRoman" has been removed from the pdf()
    and postscript() devices - this was a legacy encoding supporting
    classic macOS up to 2001 and no longer has universal libiconv
    support.
  * is.R() is deprecated as no other S dialect is known to be in use
    (and this could only identify historical dialects, not future
    ones).
    Further information on calls can be obtained by setting the
    environment variable _R_DEPRECATED_IS_R_ to error which turns the
    deprecation warning into an error and so by default gives a
    traceback.  (This is done by R CMD check --as-cran.)
  * UseMethod() no longer forwards local variables assigned in the
    generic function into method call environments before evaluating
    the method body. This makes method calls behave more like
    standard function calls and makes method code easier to analyze
    correctly.
  * The twelve as.data.frame.&lt;class&gt;() methods which were deprecated
    only via _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ and in R CMD
    check --as-cran are formally deprecated now in favour of calling
    as.data.frame() or as.data.frame.vector().  The deprecation
    "check" now works also when as.data.frame() is S4 generic thanks
    to Ivan Krylov.
  * The default method for the directional comparison operators &lt;, &gt;,
    &lt;=, and &gt;= now signals an error when one of the operands is a
    language object, i.e. a symbol or a call.
  * For terms.formula(), deprecate abb and neg.out arguments
    _formally_ in addition to just documenting it.
  BUG FIXES:
  * The methods package is more robust to not being attached to the
    search path.  More work needs to be done.
  * pairwise.t.test() misbehaved when subgroups had 0 DF for
    variance, even with pool.sd = TRUE.  (PR#18594 by Jack Berry).
  * Probability distribution functions [dpq]&lt;distrib&gt;(x, *), but also
    bessel[IKJY](x, .) now consistently preserve attributes(x) when
    length(x) == 0, e.g., for a 2 x 0 matrix, thanks to Karolis
    Koncevičius' report PR#18509.
  * Group "Summary" computations such as sum(1:3, 4, na.rm = 5, NA,
    7, na.rm = LL) now give an error instead of either 17 or NN for
    LL true or false, as proposed by Ivan Krylov on the R-devel
    mailing list.  (This also means it is now an error to specify
    na.rm more than once.)
  * as.complex(x) now returns complex(real = x, imaginary = 0) for
    _all_ numerical and logical x, notably also for NA or
    NA_integer_.
  * Directories are now omitted by file.copy(, recursive = FALSE) and
    in file.append() (PR#17337).
  * gsub() and sub() are now more robust to integer overflow when
    reporting errors caused by too large input strings (PR#18346).
  * Top-level handlers are now more robust to attempts to remove a
    handler whilst handlers are running (PR#18508).
  * The handling of Alt+F4 in dialogs created on Windows using
    GraphApp has been fixed (PR#13870).
  * density() more consistently computes grid values for the
    FFT-based convolution, following Robert Schlicht's analysis and
    proposal in PR#18337, correcting density values typically by a
    factor of about 0.999.  Argument old.coords = TRUE provides back
    compatibility.
  * palette.colors() gains a name argument that defaults to FALSE
    controlling whether the vector of colours that is returned has
    names (where possible).  PR#18529.
  * tools::xgettext() no longer extracts the (non-translatable) class
    names from warningCondition and errorCondition calls.
  * S3method(&lt;gen&gt;, &lt;class&gt;, &lt;func&gt;) in the NAMESPACE file now works
    (again) when &lt;func&gt; is visible from the namespace, e.g.,
    imported, or in base.
  * getParseData(f) now also works for a function defined in the
    first of several &lt;pkg&gt;/R/*.R source files, thanks to Kirill
    Müller's report and Duncan Murdoch's patch in PR#16756.
  * Rd \Sexpr macros with nested #ifdef conditionals were not
    processed.
  * A non-blocking connection with non-default encoding (such as a
    socket) now correctly returns from readLines() after new data has
    arrived also when its EOF had been reached previously.  Thanks to
    Peter Meilstrup's report on R-devel and Ivan Krylov's report and
    patch proposal in PR#18555.
  * tools::checkRdContents() failed to detect empty argument
    descriptions when they spanned multiple lines, including those
    generated by prompt().  These cases are now noted by R CMD check.
  * Plain-text help no longer outputs spurious colons in the
    arguments list (for multi-line \item labels in the Rd source).
  * kappa() and rcond() work correctly in more cases; kappa(., norm =
    "2") now warns that it computes the 1-norm with (default) exact =
    FALSE; prompted by Mikael Jagan's quite comprehensive PR#18543.
  * Rd skeletons generated by prompt() or promptData() now use a
    dummy title (so R CMD build works).  tools::checkRdContents() has
    been updated to detect such template leftovers, including from
    promptPackage().
  * When S4 method dispatch fails because no method was found, the
    error message now includes the signature argument names; thanks
    to Michael Chirico's proposal on the R-devel list.
  * withAutoprint({ .. }) now preserves srcrefs previously lost,
    thanks to Andrew Simmons' report plus fix in PR#18572.
  * transform.data.frame() no longer adjusts names; in particular,
    untransformed variables are kept as-is, including those with
    syntactically invalid names (PR#17890).
  * The keep.source option for Rd \Sexpr blocks is no longer ignored.
  * The formula methods for t.test() and wilcox.test() now catch when
    paired is passed, addressing PR#14359; use Pair(x1, x2) ~ 1 for a
    paired test.
  * The level reported in the browser prompt was often too large. It
    now shows the number of browser contexts on the stack.
  * For cbind() and rbind(), the optional deparse.level argument is
    now properly passed to methods, thanks to Mikael Jagan's PR#18579
    and comments there.
  * Some error and warning messages for large ('long vector')
    matrix(v, nr, nc) and dim(m) &lt;- d are now correct about sizes,
    using long long formatting, fixing PR#18612 (and more) reported
    by Mikael Jagan.
  * readChar(useBytes = TRUE) now terminates strings even when the
    underlying connection uses extra spaces in the input buffer.
    This fixes problems with extra garbage seen with gzip
    connections, PR#18605.
  * Named capture in PCRE regular expressions now works also with
    more than 127 named groups (PR#18588).
  * Datetime functions are now robust against long jumps when dealing
    with internal time zone changes.  This avoids confusing warnings
    about an invalid time zone, previously triggered by turning
    warnings into errors or handling them via tryCatch (PR#17966,
    PR#17780).
  * Datetime functions now restore even an empty TZ environment
    variable after internal time zone changes (PR#17724).  This makes
    results of datetime functions with this (typically unintentional)
    setting more predictable.
  * drop.terms(*) now drops response as by default, keep.response =
    FALSE, fixing PR#18564 thanks to Mikael Jagan.
  * dummy.coef(.) now also works for lm()-models with character
    categorical predictor variables rather than factor ones, fixing
    PR#18635 reported by Jinsong Zhao.
  * formals(f) &lt;- formals(f) now also works for a function w/o
    arguments and atomic _constant_ body(f).
  * Correct as.function(&lt;invalid list&gt;, .)'s error message.
  * removeSource() is yet more thorough in finding and removing
    "srcref" and the other source references from parsed R language
    chunks, fixing PR#18638 thanks to Andrew Simmons.
  * dgeom() is more accurate now, notably when its result is very
    small, fixing PR#18642 thanks to the proposal of Morten Welinder,
    also improving other instances where C level binom_raw(x, n, ..)
    has x == 0 or x== n.
  * warning() with options(warn = 1) has improved output for
    multi-line messages.
  * axis.Date() and axis.POSIXct() now respect the par("lab") setting
    for the number of pretty() intervals.
  * Comparisons for language objects (which are based on deparsing)
    are now more careful about using accurate deparsed results
    (PR#18676).
  * Plain-text help (Rd2txt) now correctly preserves blank lines
    following single-line \dontrun code.
  * &lt;POSIXlt&gt;[*] no longer sets wrong "balanced" attribute, fixing
    PR#18681 thanks to Mikael Jagan.
  * str(&lt;classed-call&gt;) now deparses the call as expected, fixing
    PR#18684, reported by Dave Slager.
  * In Rd examples, code following the closing brace of a \dontrun,
    \dontshow or \donttest tag on the same line is no longer skipped
    when R CMD check runs the examples.
  * as.data.frame(matrix(*, ncol=0)) now gets valid names() and
    colnames(); reported by Davis Vaughan on the R-devel list.
  * Internal Mathlib function stirlerr(n) is now almost fully
    (52-bit) accurate for all n &gt;= ~5.9 and more accurate also in the
    range 1 -- 5.9.  This entails small ("after 12th decimal")
    changes in density functions, e.g., dgamma() in _some_ regions of
    their support.  The fix was partly prompted by Morten Welinder's
    PR#18640.
  * Numbers like 9876543.2 are now considered non-integer by Mathlib
    internal R_nonint(), amending original fix of PR#15734.
  * Rd comment lines no longer cause broken paragraphs in the
    rendered PDF and plain-text help. In code blocks, pure comment
    lines (starting with %) no longer produce an empty line.
  * xtabs(Freq ~ .) now consistently defaults to na.action = na.pass,
    using na.rm = FALSE (added as an argument) when summing over Freq
    (PR#17770).
  * tools::testInstalledPackage() is no longer silent about failures
    from running examples or tests and its return code no longer
    ignores failures from checking vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1718366400">- CHANGES IN R 4.4.1:
  C-LEVEL FACILITIES:
  * Functions R_atof and R_strtod declared in header R_ext/Utils.h
    are now documented in 'Writing R Extensions' and so formally part
    of the API.
  * The non-API entry points Rf_setSVector, Rf_StringFalse,
    Rf_StringTrue and Rf_isBlankString have been added to those
    reported by R CMD check.
  * The new function Rf_allocLang is now available. This provides an
    alternative to the idiom of calling Rf_allocList followed by
    SET_TYPEOF.
  UTILITIES:
  * R CMD check now reports as warnings what gfortran calls 'Fortran
    2018 deleted features', all of which have long been marked as
    'obsolescent' and some of which were deleted in Fortran 2008 or
    earlier.  Fortran compilers are no longer required to support
    these.
  BUG FIXES:
  * as.numeric(), scan(), type.convert() and other places which use
    the internal C function R_strtod now require a _non-empty_ digit
    sequence in a decimal or binary exponent.  This aligns with the
    C/POSIX standard for strtod and with ?NumericConstants.
  * as.data.frame(m, make.names=NA) now works correctly for a matrix
    m with NA's in row names.
  * The error message from &lt;POSIXlt&gt;[["hour"]] and similar now
    mentions *[[, "hour"]], as wished for in PR#17409 and proposed by
    Michael Chirico.
  * qbinom() and potentially qpois(), qnbinom(), no longer sometimes
    fail accurate inversion (of pbinom(), etc), thanks to Christopher
    Chang's report and patch in PR#18711.
  * The internal help server on Windows can again serve requests sent
    in quick succession, fixing a regression in R 4.4.0.
  * debugcall(&lt;S3Generic&gt;()) now also works when a corresponding
    S4-generic version is in the methods cache (PR#18143).
  * Package tools' toTitleCase(ch0) now returns character(0) when ch0
    is of zero length; fixing PR#18724, reported by David Hugh Jones.
  * R CMD check is no longer broken (without a check result and no
    explanation in 00check.log) for a package which declares an
    invalid VignetteBuilder in DESCRIPTION but has no vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1730376000">- CHANGES IN R 4.4.2:
  C-LEVEL FACILITIES:
  * The S-compatibility macros F77_COM and F77_COMDECL defined in
    header R_ext/RS.h are deprecated and will be removed shortly.  We
    could find no record of their use.
  BUG FIXES:
  * Mathlib function lgammacor(x) no longer warns about underflow to
    zero for large x.
  * Text widths and heights were incorrectly reported by the Quartz
    device if the drawing context didn't exist yet (typically when
    drawing off-screen to a window that is yet to appear, see
    PR#18591).
  * The Quartz device could segfault in cases where paths with spaces
    are used in the new glyph drawing API.  Thanks to Tomek
    Gieorgijewski (PR#18758).
  * On macOS in R CRAN builds, it is again possible to read
    little-endian UTF-16 text with a BOM from a connection using
    encoding="UTF-16".  Users building R from source should avoid
    using the system libiconv in macOS 14.1 and later.
  * methods' internal .requirePackage() now re-enables primitive
    method dispatch when needed; thanks to Ivan Krylov for
    demystifying CRAN package check failures on the R-devel mailing
    list.</changelog>
</package>
<package pkgid="6369283310400725eb03e8e58e6f3e790fa426fa75c51353250b566cac456a2203ff0505f0ab6eafed27dae65eb8dbbc1769a7b6cef2e8c94d1dbe3d9d25cf3e" name="R-tcltk" arch="i586">
  <version epoch="0" ver="4.4.2" rel="51.0.2.2.sr20241103"/>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1620302400">- To get in sync with d:l:R:autoCRAN the Matrix package's split
  in -devel was reversed.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339200">- improved spec file according to comments of dimstar in
  https://build.opensuse.org/request/show/892685</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339201">- CHANGES IN R 4.1.0:
  FUTURE DIRECTIONS:
  * It is planned that the 4.1.x series will be the last to support
    32-bit Windows, with production of binary packages for that
    series continuing until early 2023.
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Data set esoph in package datasets now provides the correct
    numbers of controls; previously it had the numbers of cases added
    to these.  (Reported by Alexander Fowler in PR#17964.)
  NEW FEATURES:
  * www.omegahat.net is no longer one of the repositories known by
    default to setRepositories().  (Nowadays it only provides source
    packages and is often unavailable.)
  * Function package_dependencies() (in package tools) can now use
    different dependency types for direct and recursive dependencies.
  * The checking of the size of tarball in R CMD check --as-cran
    &lt;pkg&gt; may be tweaked via the new environment variable
    _R_CHECK_CRAN_INCOMING_TARBALL_THRESHOLD_, as suggested in
    PR#17777 by Jan Gorecki.
  * Using c() to combine a factor with other factors now gives a
    factor, an ordered factor when combining ordered factors with
    identical levels.
  * apply() gains a simplify argument to allow disabling of
    simplification of results.
  * The format() method for class "ftable" gets a new option justify.
    (Suggested by Thomas Soeiro.)
  * New ...names() utility.  (Proposed by Neal Fultz in PR#17705.)
  * type.convert() now warns when its as.is argument is not
    specified, as the help file always said it _should_.  In that
    case, the default is changed to TRUE in line with its change in
    read.table() (related to stringsAsFactor) in R 4.0.0.
  * When printing list arrays, classed objects are now shown _via_
    their format() value if this is a short enough character string,
    or by giving the first elements of their class vector and their
    length.
  * capabilities() gets new entry "Rprof" which is TRUE when R has
    been configured with the equivalent of --enable-R-profiling (as
    it is by default).  (Related to Michael Orlitzky's report
    PR#17836.)
  * str(xS4) now also shows extraneous attributes of an S4 object
    xS4.
  * Rudimentary support for vi-style tags in rtags() and R CMD rtags
    has been added.  (Based on a patch from Neal Fultz in PR#17214.)
  * checkRdContents() is now exported from tools; it and also
    checkDocFiles() have a new option chkInternal allowing to check
    Rd files marked with keyword "internal" as well.  The latter can
    be activated for R CMD check via environment variable
    _R_CHECK_RD_INTERNAL_TOO_.
  * New functions numToBits() and numToInts() extend the raw
    conversion utilities to (double precision) numeric.
  * Functions URLencode() and URLdecode() in package utils now work
    on vectors of URIs.  (Based on patch from Bob Rudis submitted
    with PR#17873.)
  * path.expand() can expand ~user on most Unix-alikes even when
    readline is not in use.  It tries harder to expand ~, for example
    should environment variable HOME be unset.
  * For HTML help (both dynamic and static), Rd file links to help
    pages in external packages are now treated as references to
    topics rather than file names, and fall back to a file link only
    if the topic is not found in the target package. The earlier rule
    which prioritized file names over topics can be restored by
    setting the environment variable _R_HELP_LINKS_TO_TOPICS_ to a
    false value.
  * c() now removes NULL arguments before dispatching to methods,
    thus simplifying the implementation of c() methods, _but_ for
    back compatibility keeps NULL when it is the first argument.
    (From a report and patch proposal by Lionel Henry in PR#17900.)
  * Vectorize()'s result function's environment no longer keeps
    unneeded objects.
  * Function ...elt() now propagates visibility consistently with
    ..n.  (Thanks to Lionel Henry's PR#17905.)
  * capture.output() no longer uses non-standard evaluation to
    evaluate its arguments.  This makes evaluation of functions like
    parent.frame() more consistent.  (Thanks to Lionel Henry's
    PR#17907.)
  * packBits(bits, type="double") now works as inverse of
    numToBits().  (Thanks to Bill Dunlap's proposal in PR#17914.)
  * curlGetHeaders() has two new arguments, timeout to specify the
    timeout for that call (overriding getOption("timeout")) and TLS
    to specify the minimum TLS protocol version to be used for
    https:// URIs (_inter alia_ providing a means to check for sites
    using deprecated TLS versions 1.0 and 1.1).
  * For nls(), an optional constant scaleOffset may be added to the
    denominator of the relative offset convergence test for cases
    where the fit of a model is expected to be exact, thanks to a
    proposal by John Nash.  nls(*, trace=TRUE) now also shows the
    convergence criterion.
  * Numeric differentiation _via_ numericDeriv() gets new optional
    arguments eps and central, the latter for taking central divided
    differences.  The latter can be activated for nls() via
    nls.control(nDcentral = TRUE).
  * nls() now passes the trace and control arguments to getInitial(),
    notably for all self-starting models, so these can also be fit in
    zero-noise situations via a scaleOffset.  For this reason, the
    initial function of a selfStart model must now have ... in its
    argument list.
  * bquote(splice = TRUE) can now splice expression vectors with
    attributes: this makes it possible to splice the result of
    parse(keep.source = TRUE).  (Report and patch provided by Lionel
    Henry in PR#17869.)
  * textConnection() gets an optional name argument.
  * get(), exists(), and get0() now signal an error if the first
    argument has length greater than 1.  Previously additional
    elements were silently ignored.  (Suggested by Antoine Fabri on
    R-devel.)
  * R now provides a shorthand notation for creating functions, e.g.
    \(x) x + 1 is parsed as function(x) x + 1.
  * R now provides a simple native forward pipe syntax |&gt;.  The
    simple form of the forward pipe inserts the left-hand side as the
    first argument in the right-hand side call.  The pipe
    implementation as a syntax transformation was motivated by
    suggestions from Jim Hester and Lionel Henry.
  * all.equal(f, g) for functions now by default also compares their
    environment(.)s, notably via new all.equal method for class
    function.  Comparison of nls() fits, e.g., may now need
    all.equal(m1, m2, check.environment = FALSE).
  * .libPaths() gets a new option include.site, allowing to _not_
    include the site library.  (Thanks to Dario Strbenac's suggestion
    and Gabe Becker's PR#18016.)
  * Lithuanian translations are now available.  (Thanks to Rimantas
    Zakauskas.)
  * names() now works for DOTSXP objects.  On the other hand, in
    R-lang, the R language manual, we now warn against relying on the
    structure or even existence of such dot-dot-dot objects.
  * all.equal() no longer gives an error on DOTSXP objects.
  * capabilities("cairo") now applies only to the file-based devices
    as it is now possible (if very unusual) to build R with Cairo
    support for those but not for X11().
  * There is optional support for tracing the progress of
    loadNamespace() - see its help.
  * (Not Windows.)  l10n_info() reports an additional element, the
    name of the encoding as reported by the OS (which may differ from
    the encoding part (if any) of the result from
    Sys.getlocale("LC_CTYPE").
  * New function gregexec() which generalizes regexec() to find _all_
    disjoint matches and well as all substrings corresponding to
    parenthesized subexpressions of the given regular expression.
    (Contributed by Brodie Gaslam.)
  * New function charClass() in package utils to query the
    wide-character classification functions in use (such as
    iswprint).
  * The names of quantile()'s result no longer depend on the global
    getOption("digits"), but quantile() gets a new optional argument
    digits = 7 instead.
  * grep(), sub(), regexp and variants work considerably faster for
    long factors with few levels.  (Thanks to Michael Chirico's
    PR#18063.)
  * Provide grouping of x11() graphics windows within a window
    manager such as Gnome or Unity; thanks to a patch by Ivan Krylov
    posted to R-devel.
  * The split() method for class data.frame now allows the f argument
    to be specified as a formula.
  * sprintf now warns on arguments unused by the format string.
  * New palettes "Rocket" and "Mako" for hcl.colors() (approximating
    palettes of the same name from the 'viridisLite' package).
    Contributed by Achim Zeileis.
  * The base environment and its namespace are now locked (so one can
    no longer add bindings to these or remove from these).
  * Rterm handling of multi-byte characters has been improved,
    allowing use of such characters when supported by the current
    locale.
  * Rterm now accepts ALT+ +xxxxxxxx sequences to enter Unicode
    characters as hex digits.
  * Environment variable LC_ALL on Windows now takes precedence over
    LC_CTYPE and variables for other supported categories, matching
    the POSIX behaviour.
  * duplicated() and anyDuplicated() are now optimized for integer
    and real vectors that are known to be sorted via the ALTREP
    framework. Contributed by Gabriel Becker via PR#17993.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 14
    and so packages that provide graphics devices should be
    reinstalled.
  * Graphics devices should now specify deviceVersion to indicate
    what version of the graphics engine they support.
  * Graphics devices can now specify deviceClip.  If TRUE, the
    graphics engine will never perform any clipping of output itself.
    The clipping that the graphics engine does perform (for both
    canClip = TRUE and canClip = FALSE) has been improved to avoid
    producing unnecessary artifacts in clipped output.
  * The grid package now allows gpar(fill) to be a linearGradient(),
    a radialGradient(), or a pattern().  The viewport(clip) can now
    also be a grob, which defines a clipping path, and there is a new
    viewport(mask) that can also be a grob, which defines a mask.
    These new features are only supported so far on the Cairo-based
    graphics devices and on the pdf() device.
  * (Not Windows.)  A warning is given when a Cairo-based type is
    specified for a png(), jpeg(), tiff() or bmp() device but Cairo
    is unsupported (so type = "Xlib" is tried instead).
  * grSoftVersion() now reports the versions of FreeType and
    FontConfig if they are used directly (not _via_ Pango), as is
    most commonly done on macOS.
  C-LEVEL FACILITIES:
  * The _standalone_ libRmath math library and R's C API now provide
    log1pexp() again as documented, and gain log1mexp().
  INSTALLATION on a UNIX-ALIKE:
  * configure checks for a program pkgconf if program pkg-config is
    not found.  These are now only looked for on the path (like
    almost all other programs) so if needed specify a full path to
    the command in PKG_CONFIG, for example in file config.site.
  * C99 function iswblank is required - it was last seen missing ca
    2003 so the workaround has been removed.
  * There are new configure options --with-internal-iswxxxxx,
  - -with-internal-towlower and --with-internal-wcwidth which allows
    the system functions for wide-character classification,
    case-switching and width (wcwidth and wcswidth) to be replaced by
    internal ones.  The first has long been used on macOS, AIX (and
    Windows) but this enables it to be unselected there and selected
    for other platforms (it is the new default on Solaris).  The
    second is new in this version of R and is selected by default on
    macOS and Solaris.  The third has long been the default and
    remains so as it contains customizations for East Asian
    languages.
    System versions of these functions are often minimally
    implemented (sometimes only for ASCII characters) and may not
    cover the full range of Unicode points: for example Solaris (and
    Windows) only cover the Basic Multilingual Plane.
  * Cairo installations without X11 are more likely to be detected by
    configure, when the file-based Cairo graphics devices will be
    available but not X11(type = "cairo").
  * There is a new configure option --with-static-cairo which is the
    default on macOS.  This should be used when only static cairo
    (and where relevant, Pango) libraries are available.
  * Cairo-based graphics devices on platforms without Pango but with
    FreeType/FontConfig will make use of the latter for font
    selection.
  LINK-TIME OPTIMIZATION on a UNIX-ALIKE:
  * Configuring with flag --enable-lto=R now also uses LTO when
    installing the recommended packages.
  * R CMD INSTALL and R CMD SHLIB have a new flag --use-LTO to use
    LTO when compiling code, for use with R configured with
  - -enable-lto=R.  For R configured with --enable-lto, they have
    the new flag --no-use-LTO.
    Packages can opt in or out of LTO compilation _via_ a UseLTO
    field in the DESCRIPTION file.  (As usual this can be overridden
    by the command-line flags.)
  BUILDING R on Windows:
  * for GCC &gt;= 8, FC_LEN_T is defined in config.h and hence character
    lengths are passed from C to Fortran in _inter alia_ BLAS and
    LAPACK calls.
  * There is a new text file src/gnuwin32/README.compilation, which
    outlines how C/Fortran code compilation is organized and
    documents new features:
  * R can be built with Link-Time Optimization with a suitable
    compiler - doing so with GCC 9.2 showed several
    inconsistencies which have been corrected.
  * There is support for cross-compiling the C and Fortran code
    in R and standard packages on suitable (Linux) platforms.
    This is mainly intended to allow developers to test later
    versions of compilers - for example using GCC 9.2 or 10.x has
    detected issues that GCC 8.3 in Rtools40 does not.
  * There is experimental support for cross-building R packages
    with C, C++ and/or Fortran code.
  * The R installer can now be optionally built to support a single
    architecture (only 64-bit or only 32-bit).
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++14 where
    available (which it is on all currently checked platforms): if
    not (as before) C++11 is used if available otherwise C++ is not
    supported.
    Packages which specify C++11 will still be installed using C++11.
    C++14 compilers may give deprecation warnings, most often for
    std::random_shuffle (deprecated in C++14 and removed in C++17).
    Either specify C++11 (see 'Writing R Extensions') or modernize
    the code and if needed specify C++14.  The latter has been
    supported since R 3.4.0 so the package's DESCRIPTION would need
    to include something like
    Depends: R (&gt;= 3.4)
  PACKAGE INSTALLATION on Windows:
  * R CMD INSTALL and R CMD SHLIB make use of their flag --use-LTO
    when the LTO_OPT make macro is set in file etc/${R_ARCH}/Makeconf
    or in a personal/site Makevars file.  (For details see 'Writing R
    Extensions' SS4.5.)
    This provides a valuable check on code consistency.  It does work
    with GCC 8.3 as in Rtools40, but that does not detect everything
    the CRAN checks with current GCC do.
  PACKAGE INSTALLATION on macOS:
  * The default personal library directory on builds with
  - -enable-aqua (including CRAN builds) now differs by CPU type,
    one of
    ~/Library/R/x86_64/x.y/library
    ~/Library/R/arm64/x.y/library
    This uses the CPU type R (and hence the packages) were built for,
    so when a x86_64 build of R is run under Rosetta emulation on an
    arm64 Mac, the first is used.
  UTILITIES:
  * R CMD check can now scan package functions for bogus return
    statements, which were possibly intended as return() calls (wish
    of PR#17180, patch by Sebastian Meyer). This check can be
    activated via the new environment variable
    _R_CHECK_BOGUS_RETURN_, true for --as-cran.
  * R CMD build omits tarballs and binaries of previous builds from
    the top-level package directory.  (PR#17828, patch by Sebastian
    Meyer.)
  * R CMD check now runs sanity checks on the use of LazyData, for
    example that a data directory is present and that
    LazyDataCompression is not specified without LazyData and has a
    documented value.  For packages with large LazyData databases
    without specifying LazyDataCompression, there is a reference to
    the code given in 'Writing R Extensions' SS1.1.6 to test the
    choice of compression (as in all the CRAN packages tested a
    non-default method was preferred).
  * R CMD build removes LazyData and LazyDataCompression fields from
    the DESCRIPTION file of packages without a data directory.
  ENCODING-RELATED CHANGES:
  * The parser now treats \Unnnnnnnn escapes larger than the upper
    limit for Unicode points (\U10FFFF) as an error as they cannot be
    represented by valid UTF-8.
    Where such escapes are used for outputting non-printable
    (including unassigned) characters, 6 hex digits are used (rather
    than 8 with leading zeros).  For clarity, braces are used, for
    example \U{0effff}.
  * The parser now looks for non-ASCII spaces on Solaris (as
    previously on most other OSes).
  * There are warnings (including from the parser) on the use of
    unpaired surrogate Unicode points such as \uD834.  (These cannot
    be converted to valid UTF-8.)
  * Functions nchar(), tolower(), toupper() and chartr() and those
    using regular expressions have more support for inputs with a
    marked Latin-1 encoding.
  * The character-classification functions used (by default) to
    replace the system iswxxxxx functions on Windows, macOS and AIX
    have been updated to Unicode 13.0.0.
    The character-width tables have been updated to include new
    assignments in Unicode 13.0.0.
  * The code for evaluating default (extended) regular expressions
    now uses the same character-classification functions as the rest
    of R (previously they differed on Windows, macOS and AIX).
  * There is a build-time option to replace the system's
    wide-character wctrans C function by tables shipped with R: use
    configure option --with-internal-towlower or (on Windows)
  - DUSE_RI18N_CASE in CFLAGS when building R.  This may be needed
    to allow tolower() and toupper() to work with Unicode characters
    beyond the Basic Multilingual Plane where not supported by system
    functions (e.g. on Solaris where it is the new default).
  * R is more careful when truncating UTF-8 and other multi-byte
    strings that are too long to be printed, passed to the system or
    libraries or placed into an internal buffer.  Truncation will no
    longer produce incomplete multibyte characters.
  DEPRECATED AND DEFUNCT:
  * Function plclust() from the package stats and
    package.dependencies(), pkgDepends(), getDepList(),
    installFoundDepends(), and vignetteDepends() from package tools
    are defunct.
  * Defunct functions checkNEWS() and readNEWS() from package tools
    and CRAN.packages() from utils have been removed.
  * R CMD config CXXCPP is defunct (it was deprecated in R 3.6.2).
  * parallel::detectCores() drops support for Irix (retired in 2013).
  * The LINPACK argument to chol.default(), chol2inv(),
    solve.default() and svd() has been defunct since R 3.1.0.  It was
    silently ignored up to R 4.0.3 but now gives an error.
  * Subsetting/indexing, such as ddd[*] or ddd$x on a DOTSXP
    (dot-dot-dot) object ddd has been disabled; it worked by accident
    only and was undocumented.
  BUG FIXES:
  * Many more C-level allocations (mainly by malloc and strdup) are
    checked for success with suitable alternative actions.
  * Bug fix for replayPlot(); this was turning off graphics engine
    display list recording if a recorded plot was replayed in the
    same session.  The impact of the bug became visible if resize the
    device after replay OR if attempted another savePlot() after
    replay (empty display list means empty screen on resize or empty
    saved plot).
  * R CMD check etc now warn when a package exports non-existing S4
    classes or methods, also in case of no "methods" presence.
    (Reported by Alex Bertram; reproducible example and patch by
    Sebastian Meyer in PR#16662.)
  * boxplot() now also accepts calls for labels such as ylab, the
    same as plot().  (Reported by Marius Hofert.)
  * The help page for xtabs() now correctly states that addNA is
    setting na.action = na.pass among others.  (Reported as PR#17770
    by Thomas Soeiro.)
  * The R CMD check &lt;pkg&gt; gives a longer and more comprehensible
    message when DESCRIPTION misses dependencies, e.g., in Imports:.
    (Thanks to the contributors of PR#17179.)
  * update.default() now calls the generic update() on the formula to
    work correctly for models with extended formulas.  (As reported
    and suggested by Neal Fultz in PR#17865.)
  * The horizontal position of leaves in a dendrogram is now correct
    also with center = FALSE.  (PR#14938, patch from Sebastian
    Meyer.)
  * all.equal.POSIXt() no longer warns about and subsequently ignores
    inconsistent "tzone" attributes, but describes the difference in
    its return value (PR#17277).  This check can be disabled _via_
    the new argument check.tzone = FALSE as suggested by Sebastian
    Meyer.
  * as.POSIXct() now populates the "tzone" attribute from its tz
    argument when x is a logical vector consisting entirely of NA
    values.
  * x[[2^31]] &lt;- v now works.  (Thanks to the report and patch by
    Suharto Anggono in PR#17330.)
  * In log-scale graphics, axis() ticks and label positions are now
    computed more carefully and symmetrically in their range,
    typically providing _more_ ticks, fulfilling wishes in PR#17936.
    The change really corresponds to an improved axisTicks() (package
    grDevices), potentially influencing grid and lattice, for
    example.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now correct to at
    least five digits where it was catastrophically wrong,
    previously.
  * sum(df) and similar "Summary"- and "Math"-group member functions
    now work for data frames df with logical columns, notably also of
    zero rows.  (Reported to R-devel by Martin "b706".)
  * unsplit() had trouble with tibbles due to unsound use of rep(NA,
    len)-indexing, which should use NA_integer_ (Reported to R-devel
    by Mario Annau.)
  * pnorm(x, log.p = TRUE) underflows to -Inf slightly later.
  * show(&lt;hidden S4 generic&gt;) prints better and without quotes for
    non-hidden S4 generics.
  * read.table() and relatives treated an "NA" column name as missing
    when check.names = FALSE PR#18007.
  * Parsing strings containing UTF-16 surrogate pairs such as
    "\uD834\uDD1E" works better on some (uncommon) platforms.
    sprintf("%X", utf8ToInt("\uD834\uDD1E")) should now give "1D11E"
    on all platforms.
  * identical(x,y) is no longer true for differing DOTSXP objects,
    fixing PR#18032.
  * str() now works correctly for DOTSXP and related exotics, even
    when these are doomed.
    Additionally, it no longer fails for lists with a class and
    "irregular" method definitions such that e.g. lapply(*) will
    necessarily fail, as currently for different igraph objects.
  * Too long lines in environment files (e.g. Renviron) no longer
    crash R. This limit has been increased to 100,000 bytes.
    (PR#18001.)
  * There is a further workaround for FreeType giving incorrect
    italic font faces with cairo-based graphics devices on macOS.
  * add_datalist(*, force = TRUE) (from package tools) now actually
    updates an existing data/datalist file for new content.  (Thanks
    to a report and patch by Sebastian Meyer in PR#18048.)
  * cut.Date() and cut.POSIXt() could produce an empty last interval
    for breaks = "months" or breaks = "years".  (Reported as PR#18053
    by Christopher Carbone.)
  * Detection of the encoding of 'regular' macOS locales such as
    en_US (which is UTF-8) had been broken by a macOS change:
    fortunately these are now rarely used with en_US.UTF-8 being
    preferred.
  * sub() and gsub(pattern, repl, x, *) now keep attributes of x such
    as names() also when pattern is NA (PR#18079).
  * Time differences ("difftime" objects) get a replacement and a
    rep() method to keep "units" consistent.  (Thanks to a report and
    patch by Nicolas Bennett in PR#18066.)
  * The \RdOpts macro, setting defaults for \Sexpr options in an Rd
    file, had been ineffective since R 2.12.0: it now works again.
    (Thanks to a report and patch by Sebastian Meyer in PR#18073.)
  * mclapply and pvec no longer accidentally terminate parallel
    processes started before by mcparallel or related calls in
    package parallel (PR#18078).
  * grep and other functions for evaluating (extended) regular
    expressions handle in Unicode also strings not explicitly flagged
    UTF-8, but flagged native when running in UTF-8 locale.
  * Fixed a crash in fifo implementation on Windows (PR#18031).
  * Binary mode in fifo on Windows is now properly detected from
    argument open (PR#15600, PR#18031).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1622808000">- The line %{__install} -m 755 -d %{_infodir}
  no longer works in TW or Factory.
  But without that line it works everywhere. So this instruction
  was commented out of the spec file.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1628596800">- CHANGES IN R 4.1.1:
  NEW FEATURES:
  * require(pkg, quietly = TRUE) is quieter and in particular does
    not warn if the package is not found.
  DEPRECATED AND DEFUNCT:
  * Use of ftp:// URIs should be regarded as deprecated, with
    on-going support confined to method = "libcurl" and not routinely
    tested.  (Nowadays no major browser supports them.)
  * The non-default method = "internal" is deprecated for http:// and
    ftp:// URIs for both download.file and url.
  * On Windows, method = "wininet" is deprecated for http://,
    https:// and ftp:// URIs for both download.file and url.  (A
    warning is only given for ftp://.)
    For ftp:// URIs the default method is now "libcurl" if available
    (which it is on CRAN builds).
    method = "wininet" remains the default for http:// and https://
    URIs but if libcurl is available, using method = "libcurl" is
    preferred.
  INSTALLATION:
  * make check now works also without a LaTeX installation.  (Thanks
    to Sebastian Meyer's PR#18103.)
  BUG FIXES:
  * make check-devel works again in an R build configured with
  - -without-recommended-packages.
  * qnbinom(p, size, mu) for large size/mu is correct now in a range
    of cases (PR#18095); similarly for the (size, prob)
    parametrization of the negative binomial.  Also qpois() and
    qbinom() are better and or faster for extreme cases.  The
    underlying C code has been modularized and is common to all four
    cases of discrete distributions.
  * gap.axis is now part of the axis() arguments which are passed
    from bxp(), and hence boxplot().  (Thanks to Martin Smith's
    report and suggestions in PR#18109.)
  * .First and .Last can again be set from the site profile.
  * seq.int(from, to, *) and seq.default(..) now work better in large
    range cases where from-to is infinite where the two boundaries
    are finite.
  * all.equal(x,y) now returns TRUE correctly also when several
    entries of abs(x) and abs(y) are close to .Machine$double.xmax,
    the largest finite numeric.
  * model.frame() now clears the object bit when removing the class
    attribute of a value via na.action (PR#18100).
  * charClass() now works with multi-character strings on Windows
    (PR#18104, fixed by Bill Dunlap).
  * encodeString() on Solaris now works again in Latin-1 encoding on
    characters represented differently in UTF-8.  Support for
    surrogate pairs on Solaris has been improved.
  * file.show() on Windows now works with non-ASCII path names
    representable in the current native encoding (PR#18132).
  * Embedded R on Windows can now find R home directory via the
    registry even when installed only for the current user
    (PR#18135).
  * pretty(x) with finite x now returns finite values also in the
    case where the extreme x values are close in size to the maximal
    representable number .Machine$double.xmax.
    Also, it's been tweaked for very small ranges and when a boundary
    is close (or equal) to zero; e.g., pretty(c(0,1e-317)) no longer
    has negative numbers, currently still warning about a very small
    range, and pretty(2^-(1024 - 2^-1/(c(24,10)))) is more accurate.
  * The error message for not finding vignette files when weaving has
    correct file sizes now. (Thanks to Sebastian Meyer's PR#18154.)
  * dnbinom(20, &lt;large&gt;, 1) now correctly gives 0, and similar cases
    are more accurate with underflow precaution.  (Reported by Francisco Vera Alcivar in PR#18072.)</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635163200">- repaired https://bugzilla.suse.com/show_bug.cgi?id=1191380
  (rpmacros now go to rpmmacrodir)
- minor clean-ups in spec file</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635768000">- CHANGES IN R 4.1.2:
  C-LEVEL FACILITIES:
  * The workaround in headers R.h and Rmath.h (using namespace std;)
    for the Oracle Developer Studio compiler is no longer needed now
    C++11 is required so has been removed.  A couple more usages of
    log() (which should have been std::log()) with an int argument
    are reported on Solaris.
  * The undocumented limit of 4095 bytes on messages from the
    S-compatibility macros PROBLEM and MESSAGE is now documented and
    longer messages will be silently truncated rather than
    potentially causing segfaults.
  * If the R_NO_SEGV_HANDLER environment variable is non-empty, the
    signal handler for SEGV/ILL/BUS signals (which offers recovery
    user interface) is not set. This allows more reliable debugging
    of crashes that involve the console.
  DEPRECATED AND DEFUNCT:
  * The legacy S-compatibility macros PROBLEM, MESSAGE, ERROR, WARN,
    WARNING, RECOVER, ... are deprecated and will be hidden in R
    4.2.0. R's native interface of Rf_error and Rf_warning has long
    been preferred.
  BUG FIXES:
  * .mapply(F, dots, .) no longer segfaults when dots is not a list
    and uses match.fun(F) as always documented; reported by Andrew
    Simmons in PR#18164.
  * hist(&lt;Date&gt;, ...) and hist(&lt;POSIXt&gt;, ...)  no longer pass
    arguments for rect() (such as col and density) to axis().
    (Thanks to Sebastian Meyer's PR#18171.)
  * \Sexpr{ch} now preserves Encoding(ch). (Thanks to report and
    patch by Jeroen Ooms in PR#18152.)
  * Setting the RNG to "Marsaglia-Multicarry" e.g., by RNGkind(), now
    warns in more places, thanks to Andr'e Gillibert's report and
    patch in PR#18168.
  * gray(numeric(), alpha=1/2) no longer segfaults, fixing PR#18183,
    reported by Till Krenz.
  * Fixed dnbinom(x, size=&lt;very_small&gt;, .., log=TRUE) regression,
    reported by Martin Morgan.
  * as.Date.POSIXlt(x) now keeps names(x), thanks to Davis Vaughan's
    report and patch in PR#18188.
  * model.response() now strips an "AsIs" class typically, thanks to
    Duncan Murdoch's report and other discussants in PR#18190.
  * try() is considerably faster in case of an error and long call,
    as e.g., from some do.call().  Thanks to Alexander Kaever's
    suggestion posted to R-devel.
  * qqline(y = &lt;object&gt;) such as y=I(.), now works, see also
    PR#18190.
  * Non-integer mgp par() settings are now handled correctly in
    axis() and mtext(), thanks to Mikael Jagan and Duncan Murdoch's
    report and suggestion in PR#18194.
  * formatC(x) returns length zero character() now, rather than ""
    when x is of length zero, as documented, thanks to Davis
    Vaughan's post to R-devel.
  * removeSource(fn) now retains (other) attributes(fn).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1647000000">- CHANGES IN R 4.1.3:
  NEW FEATURES:
  * The default version of Bioconductor has been changed to 3.14.
    (This is used by setRepositories and the menus in GUIs.)
  UTILITIES:
  * R CMD check --as-cran has a workaround for a bug in versions of
    file up to at least 5.41 which mis-identify DBF files last
    changed in 2022 as executables.
  C-LEVEL FACILITIES:
  * The legacy S-compatibility macros SINGLE_* in R_ext/Constants.h
    (included by R.h) are deprecated and will be removed in R 4.2.0.
  BUG FIXES:
  * Initialization of self-starting nls() models with initialization
    functions following the pre-R-4.1.0 API (without the ...
    argument) works again for now, with a deprecation warning.
  * Fixed quoting of ~autodetect~ in Java setting defaults to avoid
    inadvertent user lookup due to leading ~, reported in PR#18231 by
    Harold Gutch.
  * substr(., start, stop) &lt;- v now treats _negative_ stop values
    correctly.  Reported with a patch in PR#18228 by Brodie Gaslam.
  * Subscripting an array x without dimnames by a
    length(dim(x))-column character matrix gave "random" non-sense,
    now an error; reported in PR#18244 by Mikael Jagan.
  * ...names() now matches names(list(...)) closely, fixing PR#18247.
  * all.equal(*, scale = s) now works as intended when length(s) &gt; 1,
    partly thanks to Michael Chirico's PR#18272.
  * print(x) for long vectors x now also works for named atomic
    vectors or lists and prints the correct number when reaching the
    getOption("max.print") limit; partly thanks to a report and
    proposal by Hugh Parsonage to the R-devel list.
  * all.equal(&lt;selfStart&gt;, *) no longer signals a deprecation
    warning.
  * reformulate(*, response=r) gives a helpful error message now when
    length(r) &gt; 1, thanks to Bill Dunlap's PR#18281.
  * Modifying globalCallingHandlers inside withCallingHandlers() now
    works or fails correctly, thanks to Henrik Bengtsson's PR#18257.
  * hist(&lt;Date&gt;, breaks = "days") and hist(&lt;POSIXt&gt;, breaks = "secs")
    no longer fail for inputs of length 1.
  * qbeta(.001, .9, .009) and similar cases now converge correctly
    thanks to Ben Bolker's report in PR#17746.
  * window(x, start, end) no longer wrongly signals "'start' cannot
    be after 'end'", fixing PR#17527 and PR#18291.
  * data() now checks that its (rarely used) list argument is a
    character vector - a couple of packages passed other types and
    gave incorrect results.
  * which() now checks its arr.ind argument is TRUE rather coercing
    to logical and taking the first element - which gave incorrect
    results in package code.
  * model.weights() and model.offset() more carefully extract their
    model components, thanks to Ben Bolker and Tim Taylor's R-devel
    post.
  * list.files(recursive = TRUE) now shows all broken symlinks
    (previously, some of them may have been omitted, PR#18296).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1650628800">- CHANGES IN R 4.2.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * The formula method of aggregate() now matches the generic in
    naming its first argument x (resolving PR#18299 by Thomas
    Soeiro).
    This means that calling aggregate() with a formula as a named
    first argument requires name formula in earlier versions of R and
    name x now, so portable code should not name the argument (code
    in many packages did).
  * Calling &amp;&amp; or || with either argument of length greater than one
    now gives a warning (which it is intended will become an error).
  * Calling if() or while() with a condition of length greater than
    one gives an error rather than a warning.  Consequently,
    environment variable _R_CHECK_LENGTH_1_CONDITION_ no longer has
    any effect.
  * Windows users should consult the WINDOWS section below for some
    profound changes including
  * Support for 32-bit builds has been dropped.
  * UTF-8 locales are used where available.
  * The default locations for the R installation and personal
    library folder have been changed.
    Thanks to Tomas Kalibera for months of work on the Windows port
    for this release.
  NEW FEATURES:
  * matrix(x, n, m) now warns in more cases where length(x) differs
    from n * m, as suggested by Abby Spurdle and Wolfgang Huber in
    Feb 2021 on the R-devel mailing list.
    This warning can be turned into an error by setting environment
    variable _R_CHECK_MATRIX_DATA_ to TRUE: R CMD check --as-cran
    does so unless it is already set.
  * Function file_test() in package utils gains tests for symlinks,
    readability and writability.
  * capabilities("libxml") is now false.
    The description of capabilities("http/ftp") now reflects that it
    refers to the default method, no longer the internal one.
  * simplify2array() gains an except argument for controlling the
    exceptions used by sapply().
  * Environment variables R_LIBS_USER and R_LIBS_SITE are both now
    set to the R system default if unset or empty, and can be set to
    NULL to indicate an empty list of user or site library
    directories.
  * The warning for axis()(-like) calls in cases of relatively small
    ranges (typically in log-scale situations) is slightly improved
    _and_ suppressed from explicit calls to .axisPars() as has always
    been the intention.
  * The contrasts setter function `contrasts&lt;-` gains an explicit
    default how.many = NULL rather than just using missing(how.many).
  * grid.pretty() gains a new optional argument n = 5.
  * There is a new function .pretty() with option bounds as a
    technical-utility version of pretty().  It and pretty() gain a
    new argument f.min with a better than back-compatible default.
  * Function grDevices::axisTicks() and related functions such as
    graphics::axis() work better, notably for the log scale; partly
    because of the pretty() improvements, but also because care is
    taken e.g., when ylim is finite but diff(ylim) is infinite.
  * nclass.FD() gains a digits option.
  * The R Mathlib internal C function bd0() (called indirectly from a
    dozen probability density and distribution functions such as
    dpois(), dbinom(), dgamma(), pgamma() _etc_) has been
    complemented by a more sophisticated and (mostly) more accurate C
    function ebd0(), currently called only by internal dpois_raw()
    improving accuracy for R level dpois() and potentially others
    calling it such as dnbinom(), dgamma() or pgamma().  (Thanks to
    Morten Welinder's PR#15628.)
  * write.ftable() gains sep = " " argument as suggested by Thomas
    Soeiro.
  * The names of the locale categories supported by R's
    Sys.getlocale() and Sys.setlocale() are now provided by variable
    .LC.categories in the base namespace.
  * The Date and POSIXt methods for hist() and the histogram method
    for plot() now also use the new default col = "lightgray" in
    consistency with the corresponding change to hist()'s default for
    R 4.0.0.
  * hist.default() gains new fuzz argument, and the histogram plot
    method no longer uses fractional axis ticks when displaying
    counts ("Frequency").
  * mapply() and hence Map() now also obey the "max-or-0-if-any"
    recycling rule, such that, e.g., Map(`+`, 1:3, 1[0]) is valid
    now.
  * as.character(&lt;obj&gt;) for "hexmode" or "octmode" objects now
    fulfils the important basic rule as.character(x)[j] ===
    as.character(x[j]).
  * The set utility functions, notably intersect() have been tweaked
    to be more consistent and symmetric in their two set arguments,
    also preserving a common mode.
  * substr(ch, start,end) &lt;- new now e.g., preserves names(ch); ditto
    for substring(), thanks to a patch from Brodie Gaslam.
  * plot(&lt;lm&gt;) gains a extend.ylim.f argument, in partial response to
    PR#15285; further PR#17784 is fixed thanks to several
    contributors and a patch by Elin Waring.  The Cook's dist
    contours get customizable via cook.col and cook.lty with a
    different default color and their legend is nicer by default and
    customizable via cook.legendChanges.
  * Attempting to subset an object that is not subsettable now
    signals an error of class notSubsettableError. The
    non-subsettable object is contained in the object field of the
    error condition.
  * Subscript-out-of-bounds errors are now signaled as errors of
    class subscriptOutOfBoundsError.
  * Stack-overflow errors are now signaled as errors inheriting from
    class stackOverflowError. See ?stackOverflowError for more
    details.
  * New partly experimental Sys.setLanguage() utility, solving the
    main problem of PR#18055.
  * gettext() and gettextf() get a new option trim = TRUE which when
    set to false allows translations for strings such as "Execution
    halted\n" typical for C code.
  * An experimental implementation of hash tables is now available.
    See ?hashtab for more details.
  * identical() gains a extptr.as.ref argument for requesting that
    external pointer objects be compared as reference objects.
  * reorder() gets an argument decreasing which it passes to sort()
    for level creation; based on the wish and patch by Thomas Soeiro
    in PR#18243.
  * as.vector() gains a data.frame method which returns a simple
    named list, also clearing a long standing 'FIXME' to enable
    as.vector(&lt;data.frame&gt;, mode="list").  This breaks code relying
    on as.vector(&lt;data.frame&gt;) to return the unchanged data frame.
  * legend() is now vectorized for arguments cex, x.intersp, and
    text.width.  The latter can now also be specified as a vector
    (one element for each column of the legend) or as NA for
    computing a proper column wise maximum value of strwidth(legend).
    The argument y.intersp can be specified as a vector with one
    entry for each row of the legend.
    legend() also gains new arguments title.cex and title.font.
    Thanks to Swetlana Herbrandt.
  * Deparsing no longer remaps attribute names dim, dimnames, levels,
    names and tsp to historical S-compatible names (which structure()
    maps back).
  * sample() and sample.int() have additional sanity checks on their
    size and n arguments.
    all.equal.numeric() gains a sanity check on its tolerance
    argument - calling all.equal(a, b, c) for three numeric vectors
    is a surprisingly common error.
    mean(na.rm =), rank(na.last =), barplot(legend.text =),
    boxplot(), contour(drawlabels =), polygon(border =) and
    methods::is(class2 =) have more robust sanity checks on their
    arguments.
    R CMD Rd2pdf (used by R CMD check) has a more robust sanity check
    on the format of \alias{} commands.
  * psigamma(x, deriv) for negative x now also works for deriv = 4
    and 5; their underlying C level dpsifn() is documented in
    'Writing R Extensions'.
  * The HTML help system now uses HTML5 (wish of PR#18149).
  * ks.test() now provides exact p-values also with ties and MC
    p-values in the two-sample (Smirnov) case.  By Torsten Hothorn.
  * ks.test() gains a formula interface, with y ~ 1 for the
    one-sample (Kolmogorov) test and y ~ group for the two-sample
    (Smirnov) test.  Contributed by Torsten Hothorn.
  * The return value from ks.test() now has class c("ks.test",
    "htest") - packages using try() need to take care to use
    inherits() and not == on the class.
  * New functions psmirnov(), qsmirnov() and rsmirnov() in package
    stats implementing the asymptotic and exact distributions of the
    two-sample Smirnov statistic.
  * iconv() now allows sub = "c99" to use C99-style escapes for UTF-8
    inputs which cannot be converted to encoding to.
  * In a forward pipe |&gt; expression it is now possible to use a named
    argument with the placeholder _ in the rhs call to specify where
    the lhs is to be inserted.  The placeholder can only appear once
    on the rhs.
  * The included LAPACK sources have been updated to version 3.10.0,
    except for the four Fortran 77 routines which 3.10.0 has
    re-implemented in Fortran 90 (where the older versions have been
    retained as the R build process does not support Fortran 90).
  * path.expand() and most other uses of tilde expansion now warn if
    a path would be too long if expanded.  (An exception is
    file.exists(), which silently returns false.)
  * trunc(&lt;Date&gt;, *) now supports units = "months" or "years" for
    consistency with the POSIXt method, thanks to Dirk Eddelbuettel's
    proposal in PR#18099.
  * list2DF() now checks that its arguments are of the same length,
    rather than use recycling.
  * The HTML help system has several new features: LaTeX-like math
    can be typeset using either KaTeX or MathJax, usage and example
    code is highlighted using Prism, and for dynamic help the output
    of examples and demos can be shown within the browser if the
    knitr package is installed. These features can be disabled by
    setting the environment variable _R_HELP_ENABLE_ENHANCED_HTML_ to
    a false value.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 15
    and so packages that provide graphics devices should be
    reinstalled.
  * The grid package now allows the user to specify a "vector" of
    pattern fills.  The fill argument to gpar() accepts a list of
    gradients and/or patterns and the functions linearGradient(),
    radialGradient(), and pattern() have a new group argument.
    Points grobs (data symbols) can now also have a pattern fill.
    The grobCoords() function now returns a more informative and
    complex result.
  * The grid package has new functions for drawing isolated groups:
    grid.group(), grid.define(), and grid.use().  These functions add
    compositing operators and affine transformations to R's graphics
    capabilities.
    The grid package also has new functions for stroking and filling
    paths: grid.stroke(), grid.fill(), and grid.fillStroke().
    A new function as.path() allows the user to specify the fill rule
    for a path that is to be used for clipping, stroking, or filling;
    available options are "winding" and "evenodd".  A new function
    as.mask() allows the user to specify the type of a mask;
    available options are "alpha" and "luminance".
    These new features are only supported so far (at most) on the
    Cairo-based graphics devices and on the pdf() device.
  * dev.capabilities() reports on device support for the new
    features.
  * par() now warns about unnamed non-character arguments to prevent
    misuse such as {usr &lt;- par("usr"); par(usr)}.
  INSTALLATION:
  * Facilities for accessing ftp:// sites are no longer tested
    (except _pro tem_ for curlGetHeaders()) as modern browsers have
    removed support.
  * R can now be built with DEFS = -DSTRICT_R_HEADERS .
  PACKAGE INSTALLATION:
  * R CMD INSTALL no longer tangles vignettes. This completes an R
    CMD build change in R 3.0.0 and affects packages built before R
    3.0.2. Such packages should be re-made with R CMD build to have
    the tangled R code of vignettes shipped with the tarball.
  * USE_FC_LEN_T will become the default: this uses the correct
    prototypes for Fortran BLAS/LAPACK routines called from C/C++,
    and requires adjustment of most such calls - see 'Writing R
    Extensions' SS6.6.2.  (This has been supported since R 3.6.2.)
  * Package installation speed for packages installed with
    keep.source has been improved. This resolve the issue reported by
    Ofek Shilon in PR#18236.
  UTILITIES:
  * R CMD check can optionally report files/directories left behind
    in home, /tmp (even though TMPDIR is set) and other directories.
    See the "R Internals" manual for details.
  * R CMD check now reports byte-compilation errors during
    installation.  These are not usually fatal but may result in
    parts of the package not being byte-compiled.
  * _R_CHECK_DEPENDS_ONLY_ can be applied selectively to examples,
    tests and/or vignettes in R CMD check: see the "R Internals"
    manual.
  * _R_CHECK_SRC_MINUS_W_IMPLICIT_ now defaults to true: recent
    versions of Apple clang on macOS have made implicit function
    declarations in C into a compilation error.
  * R CMD check --as-cran makes use of the environment variable
    AUTORECONF.  See the "R Internals" manual SS8 for further details.
  * R CMD check --use-valgrind also uses valgrind when re-building
    vignettes as some non-Sweave vignettes unhelpfully comment out
    all their code when R CMD check runs vignettes.
  * Errors in re-building vignettes (unless there are LaTeX errors)
    are reported by R CMD check as ERROR rather than WARNING when
    running vignettes has been skipped (as it frequently is in CRAN
    checks and by --as-cran).
  * R CMD Rd2pdf gains a --quiet option that is used by R CMD build
    when building the PDF package manual.
  * R CMD Rd2pdf now always runs LaTeX in batch mode, consistent with
    Texinfo &gt;= 6.7. The --batch option is ignored.
  * R CMD build and R CMD check now include the Rd file name and line
    numbers in the error message of an \Sexpr evaluation failure.
  * For packages using the \doi Rd macro (now an install-time \Sexpr)
    but no other dynamic Rd content, R CMD build now produces a
    smaller tarball and is considerably faster - skipping temporary
    package installation.
  C-LEVEL FACILITIES:
  * The non-API header R_ext/R-ftp-http.h is no longer provided, as
    the entry points it covered are now all defunct.
  * A number of non-API declarations and macro definitions have been
    moved from the installed header Rinternals.h to the internal
    header Defn.h. Packages that only use entry points and
    definitions documented to be part of the API as specified in
    'Writing R Extensions' SS6 should not be affected.
  * The macro USE_RINTERNALS no longer has any effect when compiling
    package code.  Packages which also use R_NO_REMAP will need to
    ensure that the remapped names are used for calls to API
    functions that were formerly also made available as macros.
  * The deprecated legacy S-compatibility macros PROBLEM, MESSAGE,
    ERROR, WARN, WARNING, RECOVER, ... are no longer defined in
    R_exts/RS.h (included by R.h).  Replace these by calls to
    Rf_error and Rf_warning (defined in header R_ext/Error.h included
    by R.h).
    Header R_ext/RS.h no longer includes R_ext/Error.h.
  * Header R_ext/Constants.h (included by R.h) when included from C++
    now includes the C++ header cfloat rather than the C header
    float.h (now possible as C++11 is required).
  * The legacy S-compatibility macros DOUBLE_* in R_ext/Constants.h
    (included by R.h) are deprecated.
  * The deprecated S-compatibility macros SINGLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * R_Calloc, R_Free and R_Realloc are preferred to their unprefixed
    forms and error messages now use the prefix. These forms were
    introduced in R 3.4.0 and are available even when
    STRICT_R_HEADERS is defined.
  * rmultinom has been documented in 'Writing R Extensions' SS6 so is
    now part of the R API.
  * Similarly, Rtanpi, called from R level tanpi() is now part of the
    R API.
  * The long-deprecated, undocumented and non-API entry point call_R
    is no longer declared in R_ext/RS.h (included by R.h).
  * The header S.h which has been unsupported since Jan 2016 has been
    removed.  Use R.h instead.
  DEPRECATED AND DEFUNCT:
  * The (non-default and deprecated) method = "internal" for
    download.file() and url() no longer supports http:// nor ftp://
    URIs.  (It is used only for file:// URIs.)
    On Windows, download.file(method = "wininet") no longer supports
    ftp:// URIs.  (It is no longer the default method, which is
    "libcurl" and does.)
    On Windows, the deprecated method = "wininet" now gives a warning
    for http:// and https:// URIs for both download.file() and url().
    (It is no longer the default method.)
  * On Windows, the command-line option --max-mem-size and
    environment variable R_MAX_MEM_SIZE are defunct.  The memory
    allocation limit was important for 32-bit builds, but these are
    no longer supported.
  * default.stringsAsFactors() is now formally deprecated, where that
    was only mentioned on its regular help page, previously.  So it
    now gives a warning if called.
  * unix.time() is defunct now; it had been deprecated since R 3.4.0.
  BUG FIXES:
  * Setting digits = 0 in format(), print.default() (and hence
    typically print()) or options() is again invalid.  Its behaviour
    was platform-dependent, and it is unclear what "zero significant
    digits" should mean (PR#18098).
  * Messages from C code in the cairo section of package grDevices
    are now also offered for translation, thanks to Michael Chirico's
    PR#18123.
  * mean(x) with finite x now is finite also without "long.double"
    capability.
  * R CMD Rd2pdf no longer leaves an empty build directory behind
    when it aborts due to an already existing output file.  (Thanks
    to Sebastian Meyer's PR#18141.)
  * density(x, weights = w, na.rm = TRUE) when anyNA(x) is true, now
    removes weights "in parallel" to x, fixing PR#18151, reported by
    Matthias Gondan.  Additionally, it gets a subdensity option.
  * Conversion of \Sexpr[]{&lt;expR&gt;} to LaTeX or HTML no longer
    produces long blocks of empty lines when &lt;expR&gt; itself contains
    several lines all producing empty output.  Thanks to a report and
    patch by Ivan Krylov posted to R-devel.
  * R CMD build no longer fails if a package vignette uses child
    documents and inst/doc exists.  (Thanks to Sebastian Meyer's
    PR#18156.)
  * When an R documentation ('help' source) file man/foo.Rd in a
    package has \donttest{..} examples with a syntax error, it is now
    signalled as ERROR and with correct line numbers relating to the
  * -Ex.R file, thanks to Duncan Murdoch and Sebastian Meyer's
    reports and patch proposals in PR#17501.
  * Improved determination of the correct translation domain in
    non-base packages, addressing the combination of PR#18092 and
    PR#17998 (#c6) with reports and _augmented_ patch #2904 by
    Suharto Anggono.
    Note that "R-base" is no longer the default domain e.g., for
    top-level calls to gettext(); rather translation needs explicit
    domain = * specification in such cases.
  * identical(attrib.as.set=FALSE) now works correctly with data
    frames with default row names (Thanks to Charlie Gao's PR#18179).
  * txtProgressBar() now enforces a non-zero width for argument char,
    without which no progress can be visible.
  * dimnames(table(d)) is more consistent in the case where d is a
    list with a single component, thanks to Thomas Soeiro's report to
    R-devel.
    Further, table(d1, d2) now gives an error when d1 and d2 are data
    frames as suggested by Thomas in PR#18224.
  * Fix for drawing semi-transparent lines and fills on the native
    Windows graphics device (PR#18219 and PR#16694).  Thanks to Nick
    Ray for helpful diagnosis on Bugzilla.
  * The deparser now wraps sub-expressions such as if(A) ..  with
    parentheses when needed; thanks to Duncan Murdoch's PR#18232 and
    Lionel Henry's patches there.
  * remove.packages() no longer tries to uninstall Priority: base
    packages, thanks to a report and suggestions by Colin Fay in
    PR#18227.
  * win.metafile() now has xpinch and ypinch arguments so that the
    user can override Windows' (potentially wrong) guess at device
    dimensions.
  * x[i] and x[[i]] for non-integer i should now behave in all cases
    as always documented: the index used is equivalent to
    as.integer(i) unless that would overflow where trunc(i) is used
    instead; thanks to Suharto Anggono's report and patch proposals
    in PR#17977.
  * asOneSidedFormula() now associates the resulting formula with the
    global environment rather than the evaluation environment created
    for the call.
  * &lt;bibentry&gt;$name now matches the field name case-insensitively,
    consistent with bibentry() creation and the replacement method.
  * cbind() failed to detect some length mismatches with a mixture of
    time-series and non-time-series inputs.
  * The default LaTeX style file Sweave.sty used by the RweaveLatex
    driver no longer loads the obsolete ae package; thanks to a
    report by Thomas Soeiro in PR#18271.  Furthermore, it now skips
    \usepackage[T1]{fontenc} for engines other than pdfTeX (if
    detected) or if the new [nofontenc] option is used.
  * smooth.spline() now stores its logical cv argument more safely,
    fixing a rare bug when printing, and also stores n.
  * smooth.spline(x,y,*) now computes the cv.crit statistic
    correctly, also when is.unsorted(x), fixing PR#18294.
  * The data.frame method of rbind() now warns when binding
    not-wholly-recycling vectors, by analogy to the default method
    (for matrices).
  * setAs() finds the correct class for name to when multiple
    packages define a class with that name. Thanks to Gabor Csardi
    for the report.
  * Fix for detaching a package when two classes of the same name are
    present in method signatures for the same generic. Thanks to
    Gabor Csardi for the report.
  * match.arg("", c("", "a", "B")) gives a better error message, in
    part from PR#17959, thanks to Elin Waring.
  * R CMD Sweave --clean no longer removes pre-existing files or
    subdirectories (PR#18242).
  * The quartz() device no longer splits polylines into subpaths.
    That has caused narrowly-spaced lines with many points to always
    look solid even when dashed line type was used due to dash phase
    restarts.
  * Deparsing constructs such as quote(1 + `!`(2) + 3) works again as
    before R 3.5.0, thanks to the report and patch in PR#18284 by
    Suharto Anggono.
  * as.list(f) for a factor f now keeps names(f), fixing PR#18309.
  * qbeta(.001, .9, .009) and analogous qf() calls now return a
    correct value instead of NaN or wrongly 1, all with a warning;
    thanks to the report by Ludger Goeminne in PR#18302.
  * plot.lm() failed to produce the plot of residuals vs.  factor
    levels (i.e., which=5 when leverages are constant) for models
    with character predictors (PR#17840).
  * interaction.plot(..., xtick = TRUE) misplaced the x-axis line
    (PR#18305).
  * Not strictly fixing a bug, format()ing and print()ing of
    non-finite Date and POSIXt values NaN and +/-Inf no longer show
    as NA but the respective string, e.g., Inf, for consistency with
    numeric vector's behaviour, fulfilling the wish of PR#18308.
  * R CMD check no longer runs test scripts generated from
    corresponding .Rin files twice and now signals an ERROR if
    processing an .Rin script fails.
  * tools::Rd2txt() used for plain-text help pages now renders \hrefs
    (if tools::Rd2txt_options(showURLs = TRUE)) and \urls with
    percent-encoding and standards-compliant delimiting style (angle
    brackets and no URL: prefix).  \email is now rendered with a
    mailto: prefix.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1655985600">- CHANGES IN R 4.2.1:
  NEW FEATURES:
  * New function utils::findCRANmirror() to find out if a CRAN mirror
    has been selected, otherwise fallback to the main site.  This
    behaves in the same way as tools::CRAN_package_db() and is
    intended for packages wishing to access CRAN for purposes other
    than installing packages.
    The need for this was shown by a day when the main CRAN website
    was offline and a dozen or so packages which had its URL
    hardcoded failed their checks.
  INSTALLATION on a UNIX-ALIKE:
  * The libraries searched for by --with-blas (without a value) now
    include BLIS (after OpenBLAS but before ATLAS).  And on macOS,
    the Accelerate framework (after ATLAS).  (This is patterned after
    the AX_BLAS macro from the Autoconf Archive.)
  * The included LAPACK sources have been updated to 3.10.1.
  UTILITIES:
  * The (full path to) the command tidy to be used for HTML
    validation can be set by environment variable R_TIDYCMD.
  * Setting environment variable _R_CHECK_RD_VALIDATE_RD2HTML_ to a
    false value will override R CMD check --as-cran and turn off HTML
    validation.  This provides a way to circumvent a problematic
    tidy.
    The 2006 version that ships with macOS is always skipped.
  C-LEVEL FACILITIES:
  * The undocumented legacy declarations of Sint, Sfloat, SINT_MAX
    and SINT_MIN in header R.h are deprecated.
  BUG FIXES:
  * fisher.test(d) no longer segfaults for "large" d; fixing PR#18336
    by preventing/detecting an integer overflow reliably.
  * tar(., files=*) now produces correctly the warning about invalid
    uid or gid of files, fixing PR#18344, reported by Martin Morgan.
  * tk_choose.files() with multi = FALSE misbehaved on paths
    containing spaces (PR#18334) (regression introduced in R 4.0.0).
  * sort(x, partial = ind, *) now works correctly notably for the
    non-default na.last = FALSE or TRUE, fixing PR#18335 reported by
    James Edwards.
  * Environment variable _R_CHECK_XREFS_REPOSITORIES_ is only used
    for checking .Rd cross-references in R CMD check (as documented)
    and not for other uses looking for a CRAN mirror.
  * The search for a CRAN mirror when checking packages now uses
    getOption("repos") if that specifies a CRAN mirror, even when it
    does not also specify all three Bioconductor repositories (as was
    previously required).
  * The HTML code generated by tools::Rd2HTML() has been improved to
    pass tidy 5.8.0.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1667217600">- CHANGES IN R 4.2.2:
  NEW FEATURES:
  * tools::Rdiff(useDiff = TRUE) checks for the presence of an
    external diff command and switches to useDiff = FALSE if none is
    found.  This allows R CMD Rdiff to always work.
  * On Windows, environment variable R_LIBCURL_SSL_REVOKE_BEST_EFFORT
    can be used to switch to only 'best-effort' SSL certificate
    revocation checks with the default "libcurl" download method.
    This reduces security, but may be needed for downloads to work
    with MITM proxies (PR#18379).
  * (macOS) The run-time check for libraries from XQuartz for X11 and
    Tcl/Tk no longer uses otool from the Apple Developer Tools
    (PR#18400).
  * The LaTeX style for producing the PDF manuals, Rd.sty, now loads
    the standard amsmath, amsfonts and amssymb packages for greater
    coverage of math commands in the Rd \eqn and \deqn macros.  The
    \mathscr LaTeX command is also provided (via the mathrsfs
    package, if available, or the amsfonts bundle otherwise),
    fulfilling the wish of PR#18398.
  * (Windows) The default format of readClipboard() and
    writeClipboard() has been changed to 13 (CF_UNICODETEXT).
  INSTALLATION on a UNIX-ALIKE:
  * The PDF manuals (if built) can be compacted by the new target
    make compact-pdf (at the top level or in directory doc/manual).
  * There is now configure support for LLVM clang 15 on Linux, which
    defaults to position-independent (PIE) executables whereas
    gfortran does not.
  * Many small changes to ease compilation (and suppress warnings)
    with LLVM clang 15.
  BUG FIXES:
  * Rscript -e would fail if stdin were closed (Reported by Henrik
    Bengtsson.)
  * qt(*, log.p=TRUE) in outer tails no longer produces NaN in its
    final steps, thus fixing PR#18360.
  * tools::Rd2latex() now escapes hashes and ampersands when writing
    URLs, fixing LaTeX errors with such URLs in \tabular.
  * When isGeneric(f, fdef=*) is used with mismatching names, the
    warning is better understandable; reported (with fix) in PR#18370
    by Gabe Becker.
  * poly(x, n) now works again (and is now documented) when x is a
    "Date" or "POSIXct" object, or of another class while fulfilling
    mode(x) == "numeric".  This also enables poly(x, *, raw=TRUE) for
    such variables.  Reported by Michael Chirico to R-devel.
  * write.table(), write.csv() and write.csv2() restore their
    numerical precision (internal equivalent of digits = 15) after an
    interrupt (PR#18384).
  * One can now read also byte FF from a clipboard connection
    (PR#18385).
  * source("") and source(character()) now give more helpful error
    messages.
  * R CMD check --as-cran set _R_CHECK_TIMINGS_ too late to have the
    intended effect.
  * as.POSIXlt(x) now also works with very large dates x, fixing
    PR#18401 reported by Hannes M"uhleisen.
  * Files can now be extracted even from very large zip archives
    (PR#18390, thanks to Martin Jakt).
  * Non-finite objects of class "POSIXlt" are now correctly coerced
    to classes "Date" and "POSIXct"; following up on the extension to
    format() them correctly.
  * Added methods for is.finite(), is.infinite() and is.nan() for
    "POSIXlt" date-time objects.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1678881600">- CHANGES IN R 4.2.3:
  C-LEVEL FACILITIES:
  * The definition of DL_FUNC in R_ext/Rdynload.h has been changed to
    be fully C-compliant.  This means that functions loaded _via_ for
    example R_GetCCallable need to be cast to an appropriate type if
    they have any arguments.
  * .Machine has a new element sizeof.time_t to identify old systems
    with a 32-bit type and hence a limited range of date-times (and
    limited support for dates millions of years from present).
  PACKAGE INSTALLATION:
  * (Windows) The default C++ standard had accidentally been left at
    C++11 when it was changed to C++14 on Unix.
  BUG FIXES:
  * As "POSIXlt" objects may be "partially filled" and their list
    components meant to be recycled, length() now is the length of
    the longest component.
  * as.POSIXlt.Date() could underflow for dates in the far past (more
    than half a million years BCE).
  * as.Date.POSIXlt(x) would return "1970-01-01" instead of NA in R
    4.2.2, e.g., for
    x &lt;- as.POSIXlt(c("2019-01-30","2001-1-1"))
    x$mon &lt;- c(0L, NA); as.Date(x)
  * R CMD check failed to apply enabled _R_CHECK_SUGGESTS_ONLY_ to
    examples and vignettes (regression in R 4.2.0).
  * R CMD check did not re-build vignettes in separate processes by
    default (regression in R 4.2.0).
  * Running examples from HTML documentation now restores previous
    knitr settings and options (PR#18420).
  * Quartz: fonts are now located using Core Graphics API instead of
    deprecated ATS which is no longer supported in the macOS 13 SDK
    (PR#18426).  This also addresses an issue where the currently
    used font in the Quartz device context was not correctly
    retained.
  * (Windows) Math symbols in text drawing functions are again
    rendered correctly (PR#18440).  This fixes a regression in R
    4.2.1 caused by a fix in PR#18382 which uncovered an issue in
    GraphApp due to which the symbol charset was not used with TT
    Symbol font face.
  * (Windows) Installing a package with a src/Makefile.{win,ucrt}
    file includes ~/.R/Makevars.win64 in the search for user
    makevars, as documented in "R Installation and Administration"
    and done for packages with a src/Makevars.{win,ucrt} file.
  * format(&lt;POSIXlt_w/_unbalanced_sec&gt;, "....%OS&lt;n&gt;") with n &gt; 0 no
    longer accidentally uses the unbalanced seconds, thanks to
    Suharto Anggono's report (including patch) in PR#18448.
  * solve.default(a, b) works around issues with some versions of
    LAPACK when a contains NA or NaN values.
  * When UseMethod() cannot dispatch, it no longer segfaults
    producing the error message in case of a long class(), thanks to
    Joris Vankerschaver's report (including patch) in PR#18447.
  * When example(foo, ..) produces graphics on an interactive device
    it needs to open itself, it now leaves devAskNewPage() unchanged
    even when it was FALSE, thus fixing a 14 years old '&lt;FIXME&gt;'.
  * packageDescription() again catches errors from encoding
    conversions. This also fixes broken packageVersion() in C locale
    on systems where iconv does not support transliteration.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1681128000">- add patch to build with libcurl &gt;= 8</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1682078400">- CHANGES IN R 4.3.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Calling &amp;&amp; or || with LHS or (if evaluated) RHS of length greater
    than one is now always an error, with a report of the form
    'length = 4' in coercion to 'logical(1)'
    Environment variable _R_CHECK_LENGTH_1_LOGIC2_ no longer has any
    effect.
  NEW FEATURES:
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.10.1.  (This caused some platform-dependent
    changes to package check output.)  And then to the sources from
    LAPACK version 3.11.0 (with changes only to double complex
    subroutines).
  * The included LAPACK sources have been updated to include the four
    Fortran 90 routines rather than their Fortran 77 predecessors.
    This may give some different signs in SVDs or
    eigendecompositions..  (This completes the transition to LAPACK
    3.10.x begun in R 4.2.0.)
  * The LAPACK sources have been updated to version 3.11.0.  (No new
    subroutines have been added, so this almost entirely bug fixes:
    Those fixes do affect some computations with NaNs, including R's
    NA.)
  * The parser now signals _classed_ errors, notably in case of the
    pipe operator |&gt;.  The error object and message now give line and
    column numbers, mostly as proposed and provided by Duncan Murdoch
    in PR#18328.
  * toeplitz() is now generalized for asymmetric cases, with a
    toeplitz2() variant.
  * xy.coords() and xyz.coords() and consequently, e.g., plot(x,y,
    log = "y") now signal a _classed_ warning about negative values
    of y (where log(.) is NA).  Such a warning can be specifically
    suppressed or caught otherwise.
  * Regular expression functions now check more thoroughly whether
    their inputs are valid strings (in their encoding, e.g. in
    UTF-8).
  * The performance of grep(), sub(), gsub() and strsplit() has been
    improved, particularly with perl = TRUE and fixed = TRUE.  Use of
    useBytes = TRUE for performance reasons should no longer be
    needed and is discouraged: it may lead to incorrect results.
  * apropos() gains an argument dot_internals which is used by the
    completion (help(rcompgen)) engine to also see base internals
    such as .POSIXct().
  * Support in tools::Rdiff() for comparing uncompressed PDF files is
    further reduced - see its help page.
  * qqplot(x, y, ...) gains conf.level and conf.args arguments for
    computing and plotting a confidence band for the treatment
    function transforming the distribution of x into the distribution
    of y (Switzer, 1976, _Biometrika_). Contributed by Torsten
    Hothorn.
  * Performance of package_dependencies() has been improved for cases
    when the number of dependencies is large.
  * Strings newly created by gsub(), sub() and strsplit(), when any
    of the inputs is marked as "bytes", are also marked as "bytes".
    This reduces the risk of creating invalid strings and accidental
    substitution of bytes deemed invalid.
  * Support for readLines(encoding = "bytes") has been added to allow
    processing special text files byte-by-byte, without creating
    invalid strings.
  * iconv(from = "") now takes into account any declared encoding of
    the input elements and uses it in preference to the native
    encoding.  This reduces the risk of accidental creation of
    invalid strings, particularly when different elements of the
    input have different encoding (including "bytes").
  * Package repositories in getOption("repos") are now initialized
    from the repositories file when utils is loaded (if not already
    set, e.g., in .Rprofile).  (From a report and patch proposal by
    Gabriel Becker in PR#18405.)
  * compactPDF() gets a verbose option.
  * type.convert() and hence read.table() get new option tryLogical =
    TRUE with back compatible default.  When set to false, converts
    "F" or "T" columns to character.
  * Added new unit prefixes "R" and "Q" for abbreviating
    (unrealistically large) sizes beyond 10^{27} in standard = "SI",
    thanks to Henrik Bengtsson's PR#18435.
  * as.data.frame()'s default method now also works fine with atomic
    objects inheriting from classes such as "roman", "octmode" and
    "hexmode", such fulfilling the wish of PR#18421, by Benjamin
    Feakins.
  * The as.data.frame.vector() utility now errors for wrong-length
    row.names.  It warned for almost six years, with "Will be an
    error!".
  * sessionInfo() now also contains La_version() and reports codepage
    and timezone when relevant, in both print() and toLatex() methods
    which also get new option tzone for displaying timezone
    information when locale = FALSE.
  * New function R_compiled_by() reports the C and Fortran compilers
    used to build R, if known.
  * predict(&lt;lm&gt;, newdata = *) no longer unnecessarily creates an
    offset of all 0s.
  * solve() for complex inputs now uses argument tol and by default
    checks for 'computational singularity' (as it long has done for
    numeric inputs).
  * predict(&lt;rank-deficient lm&gt;, newdata=*) now obeys a new argument
    rankdeficient, with new default "warnif", warning only if there
    are non-estimable cases in newdata.  Other options include
    rankdeficient = "NA", predicting NA for non-estimable newdata
    cases.  This addresses PR#15072 by Russ Lenth and is based on his
    original proposal and discussions in PR#16158 also by David Firth
    and Elin Waring.  Still somewhat experimental.
  * Rgui console implementation now works better with the NVDA screen
    reader when the full blinking cursor is selected.  The underlying
    improvements in cursor handling may help also other screen
    readers on Windows.
  * The drop-field control in GraphApp can now be left with the TAB
    key and all controls can be navigated in the reverse order using
    the Shift+TAB key, improving accessibility of the Rgui
    configuration editor.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now fully accurate
    (instead of to "only" minimally five digits).
  * demo(error.catching) now also shows off withWarnings() and
    tryCatchWEMs().
  * As an experimental feature the placeholder _ can now also be used
    in the rhs of a forward pipe |&gt; expression as the first argument
    in an extraction call, such as _$coef. More generally, it can be
    used as the head of a chain of extractions, such as _$coef[[2]].
  * Spaces in the environment variable used to choose the R session's
    temporary directory (TMPDIR, TMP and TEMP are tried in turn) are
    now fatal.  (On Windows the 'short path' version of the path is
    tried and used if that does not contain a space.)
  * all.equal.numeric() gets a new optional switch giveErr to return
    the numeric error as attribute.  Relatedly,
    stopifnot(all.equal&lt;some&gt;(a, b, ..)) is as "smart" now, as
    stopifnot(all.equal(....)) has been already, thus allowing
    customized all.equal&lt;Some&gt;() wrappers.
  * R on Windows is now able to work with path names longer than 260
    characters when these are enabled in the system (requires at
    least Windows 10 version 1607).  Packages should be updated to
    work with long paths as well, instead of assuming PATH_MAX to be
    the maximum length.  Custom front-ends and applications embedding
    R need to update their manifests if they wish to allow this
    feature.  See
    &lt;https://blog.r-project.org/2023/03/07/path-length-limit-on-windows&gt;
    for more information.
  * 'Object not found' and 'Missing argument' errors now give a more
    accurate error context. Patch provided by Lionel Henry in
    PR#18241.
  * The @ operator is now an S3 generic. Based on contributions by
    Tomasz Kalinowski in PR#18482.
  * New generic chooseOpsMethod() provides a mechanism for objects to
    resolve cases where two suitable methods are found for an Ops
    Group Generic. This supports experimenting with alternative
    object systems. Based on contributions by Tomasz Kalinowski in
    PR#18484.
  * inherits(x, what) now accepts values other than a simple
    character vector for argument what. A new generic, nameOfClass(),
    is called to resolve the class name from what. This supports
    experimenting with alternative object systems. Based on
    contributions by Tomasz Kalinowski in PR#18485.
  * Detection of BLAS/LAPACK in use (sessionInfo()) with FlexiBLAS
    now reports the current backend.
  * The "data.frame" method for subset() now warns about extraneous
    arguments, typically catching the use of = instead of == in the
    subset expression.
  * Calling a:b when numeric a or b is longer than one may now be
    made into an error by setting environment variable
    _R_CHECK_LENGTH_COLON_ to a true value, along the proposal in
    PR#18419 by Henrik Bengtsson.
  * density(x, weights = *) now warns if automatic bandwidth
    selection happens without using weights; new optional warnWbw may
    suppress the warning.  Prompted by Christoph Dalitz' PR#18490 and
    its discussants.
  * rm(list = *) is faster and more readable thanks to Kevin Ushey's
    PR#18492.
  * The plot.lm() function no longer produces a normal Q-Q plot for
    GLMs. Instead it plots a half-normal Q-Q plot of the absolute
    value of the standardized deviance residuals.
  * The print() method for class "summary.glm" no longer shows
    summary statistics for the deviance residuals by default.  Its
    optional argument show.residuals can be used to show them if
    required.
  * The tapply() function now accepts a data frame as its X argument,
    and allows INDEX to be a formula in that case. by.data.frame()
    similarly allows INDICES to be a formula.
  * The performance of df[j] &lt;- value (including for missing j) and
    write.table(df) has been improved for data frames df with a large
    number of columns.  (Thanks to Gabriel Becker's PR#18500,
    PR#18503 and discussants, prompted by a report from Toby Dylan
    Hocking on the R-devel mailing list.)
  * The matrix multiply operator %*% is now an S3 generic, belonging
    to new group generic matrixOps.  From Tomasz Kalinowski's
    contribution in PR#18483.
  * New function array2DF() to convert arrays to data frames,
    particularly useful for the list arrays created by tapply().
  DATES and TIMES:
  * On platforms where (non-UTC) datetimes before 1902 (or before
    1900 as with system functions on recent macOS) are guessed by
    extrapolating time zones from 1902-2037, there is a warning at
    the first use of extrapolation in a session.  (As all time zones
    post 2037 are extrapolation, we do not warn on those.)
  * (Platforms using --with-internal-tzone, including Windows and by
    default macOS). How years are printed in dates or date-times can
    be controlled by environment variable R_PAD_YEARS_BY_ZERO.  The
    default remains to pad to 4 digits by zeroes, but setting value
    no gives no padding (as used by default by glibc).
  * strftime() tries harder to determine the offset for the "%z"
    format, and succeeds on the mainstream R platforms.
  * strftime() has a limit of 2048 bytes on the string produced -
    attempting to exceed this is an error.  (Previously it silently
    truncated at 255 bytes.)
  * sessionInfo() records (and by default prints) the system time
    zone as part of the locale information.  Also, the source
    (system/internal) of the date-time conversion and printing
    functions.
  * Objects of class "POSIXlt" created in this version of R always
    have 11 components: component zone is always set, and component
    gmtoff is set for times in UTC and usually set on the (almost
    all) platforms which have C-level support, otherwise is NA.
  * There are comprehensive validity checks on the structure of
    objects of class "POSIXlt" when converting (including formatting
    and printing).  (This avoids mis-conversions of hand-crafted
    objects.)
  * There is some support for using the native date-time routines on
    macOS: this is only viable on recent versions (e.g. 12.6 and 13)
    and does get wrong some historical changes (before 1900, during
    WWII).  Use of --with-internal-tzone remains the default.
  * as.POSIXct(&lt;numeric&gt;) and as.POSIXlt(.) (without specifying
    origin) now work.  So does as.Date(&lt;numeric&gt;).
  * as.Date.POSIXct(., tz) now treats several tz values, notably
    "GMT" as equivalent to "UTC", proposed and improved by Michael
    Chirico and Joshua Ulrich in PR#17674.
  * Experimental balancePOSIXlt() utility allows using "ragged" and
    or out-of-range "POSIXlt" objects more correctly, e.g., in
    subsetting and subassignments.  Such objects are now documented.
    More experimentally, a "POSIXlt" object may have an attribute
    "balanced" indicating if it is known to be filled or fully
    balanced.
  * Functions axis.Date() and axis.POSIXct() are rewritten to gain
    better default tick locations and better default formats by using
    prettyDate(). Thanks to Swetlana Herbrandt.
  * The mapping of Windows' names for time zones to IANA's 'Olson'
    names has been updated.  When ICU is available (it is by
    default), it is used to get a mapping for the current region set
    in Windows.  This can be overridden by setting environment
    variable TZ to the desired Olson name - see OlsonNames() for
    those currently available.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 16
    and so packages that provide graphics devices should be
    reinstalled.
  * The grDevices and grid packages have new functions for rendering
    typeset glyphs, primarily: grDevices::glyphInfo() and
    grid::grid.glyph().
    Rendering of typeset glyphs is only supported so far on the
    Cairo-based graphics devices and on the pdf() and quartz()
    devices.
  * The defined behaviour for "clear" and "source" compositing
    operators (via grid::grid.group()) has been changed (to align
    better with simple interpretation of original Porter-Duff
    definitions).
  * Support for gradients, patterns, clipping paths, masks, groups,
    compositing operators, and affine transformations has been added
    to the quartz() device.
  INSTALLATION on a UNIX-ALIKE:
  * A system installation of generic LAPACK 3.10.0 or later will be
    preferred to the version in the R sources.
    configure option --with-lapack=no (equivalently --without-lapack)
    forces compilation of the internal LAPACK sources.
    If --with-lapack is not specified, a system liblapack is looked
    for and used if it reports version 3.10.0 or later and does not
    contain BLAS routines.
    Packages using LAPACK will need to be reinstalled if this changes
    to using an external library.
  * On aarch64 Linux platforms using GCC, configure now defaults to
  - fPIC (instead of -fpic), as desired in PR#18326.
  * configure now checks conversion of datetimes between POSIXlt and
    POSIXct around year 2020.  Failure (which has been seen on
    platforms missing tzdata) is fatal.
  * If configure option --with-valgrind-instrumentation is given
    value 1 or 2, option --with-system-valgrind-headers is now the
    default and ignored (with a warning).  It is highly recommended
    that the system headers are installed alongside valgrind: they
    are part of its packaging on some Linux distributions and
    packaged separately (e.g. in the valgrind-devel RPM) on others.
    configure will give a warning if they are not found.
    The system headers will be required in a future release of R to
    build with valgrind instrumentation.
  * libcurl 8.x is now accepted by configure: despite a change in
    major version number it changes neither API nor ABI.
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools43, an update of the Rtools42 toolchain.  It is
    based on gcc 12 and newer versions of MinGW-W64, binutils and
    libraries.  At this time R-devel can still be built using
    Rtools42 without changes, but when R-devel is installed via the
    installer, it will by default look for Rtools43.
  * Old make targets rsync-extsoft and 32-bit ones that are no longer
    needed have been removed.
  * Default builds (including for packages) no longer select C99.
    Thus the C standard used is the default for the compiler, which
    for the toolchain in Rtools43 is C17.  (This is consistent with
    Unix builds.)
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++17 where
    available (which it is on all currently checked platforms): if
    not C++14 or C++11 is used if available otherwise C++ is not
    supported.
  * USE_FC_LEN_T is the default: this uses the correct
    (compiler-dependent) prototypes for Fortran BLAS/LAPACK routines
    called from C/C++, and requires adjustment of many such calls -
    see 'Writing R Extensions' SS6.6.1.
  * There is initial support for C++23 as several compilers are now
    supporting -std=c++23 or -std=c++2b or similar.  As for C++20,
    there no additional configure checks for C++23 features beyond a
    check that the compiler reports a __cplusplus value greater than
    that in the C++20 standard.  C++ feature tests should be used.
  * There is support for a package to indicate the version of the C
    standard which should be used to compile it, and for the
    installing user to specify this.  In most cases R defaults to the
    C compiler's default standard which is C17 (a `bug-fix' of C11) -
    earlier versions of R or compilers may have defaulted to C99.
    Current options are:
    USE_C17 Use a standard that is at most C17.  The intention is to
    allow legacy packages to still be installed when later C
    standards become the default, including packages using new
    keywords as identifiers or with K&amp;R-style function
    declarations.  This will use C17 if available, falling back
    to C11.
    USE_C90 Use the C90 (aka C89) standard.  (As that standard did
    not require compilers to identify that version, all we can
    verify is that the compiler does not claim to be using a
    later standard.  It may accept C99 features - for example
    clang accepts // to make comments.)
    USE_C99 Use the C99 standard. This should be rarely needed - it
    avoids the few new features of C11/C17 which can be useful if
    a package assumes them if C17 is specified and they are not
    implemented.
    USE_C23 Use C23 (or in future, later).  Compiler/library support
    for C23 is still being implemented, but LLVM clang from
    15.0.0 and the upcoming GCC 13 have quite extensive support.
    These can be specified as part of the SystemRequirements field in
    the package's DESCRIPTION file or _via_ options --use-C17 and so
    on of R CMD INSTALL and R CMD SHLIB.
    For further details see "Writing R Extensions" SS1.2.5.
  * (Windows) A src/Makefile.ucrt or src/Makefile.win file is now
    included after R_HOME/etcR_ARCH/Makeconf and so no longer needs
    to include that file itself.  Installation of a package with such
    a file now uses a site Makevars file in the same way as a package
    with a src/Makevars.win file would.
  * configure is now passed crucial variables such as CC and CFLAGS
    in its environment, as many packages were not setting them (as
    documented in 'Writing R Extensions' SS1.2).
    This has most effect where configure is used to compile parts of
    the package - most often by cmake or libtool which obfuscate the
    actual compile commands used.
    Also used for configure.win and configure.ucrt on Windows.
  FORTRAN FLAGS:
  * The flag -fno-optimize-sibling-calls is no longer forced for
    gfortran 7 and later.  It should no longer be needed now using
    'hidden' character-length arguments when calling BLAS/LAPACK
    routines from C/C++ is the default even for packages.  (Unless
    perhaps packages call Fortran code from C/C++ without using R's
    headers and without allowing for these arguments.)
  C-LEVEL FACILITIES:
  * The deprecated S-compatibility macros DOUBLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * The deprecated legacy typedefs of Sint and Sfloat in header R.h
    are no longer defined, and that header no longer includes header
    limits.h from C nor climits from C++.
  * New macro CAD5R() is provided in Rinternals.h and used in a few
    places in the R sources.
  * ALTREP now supports VECSXP vectors. Contributed by Gabor Csardi
    in PR#17620.
  * The Rcomplex definition (in header R_ext/Complex.h) has been
    extended to prevent possible mis-compilation when interfacing
    with Fortran (PR#18430).  The new definition causes compiler
    warnings with static initializers such as {1, 2}, which can be
    changed to {.r=1, .i=2}.
    Using the new definition from C++ depends on compiler extensions
    supporting C features that have not been incorporated into the
    C++ standards but are available in g++ and clang++: this may
    result in C++ compiler warnings but these have been worked around
    for recent versions of common compilers (GCC, Apple/LLVM clang,
    Intel).
    It is intended to change the inclusion of header R_ext/Complex.h
    by other R headers, so C/C++ code files which make use of
    Rcomplex should include that header explicitly.
  UTILITIES:
  * R CMD check does more checking of package .Rd files, warning
    about invalid email addresses and (some) invalid URIs and noting
    empty \item labels in description lists.
  * R CMD check now also reports problems when reading package news
    in md (file NEWS.md) and (optionally) plain text (file NEWS)
    formats.
  * _R_CHECK_TIMINGS_ defaults to a value from the environment even
    for R CMD check --as-cran; this allows for exceptionally fast or
    slow platforms.
    It now applies to checking PDF and HTML versions of the manuals,
    and 'checking CRAN incoming feasibility'.
  * R CMD check can optionally (but included in --as-cran) check
    whether HTML math rendering _via_ KaTeX works for the package .Rd
    files.
  * Non-interactive debugger invocations can be trapped by setting
    the environment variable _R_CHECK_BROWSER_NONINTERACTIVE_ to a
    true value.  This is enabled by R CMD check --as-cran to detect
    the use of leftover browser() statements in the package.
  * The use of sprintf and vsprintf from C/C++ has been deprecated in
    macOS 13 and is a known security risk.  R CMD check now reports
    (on all platforms) if their use is found in compiled code:
    replace by snprintf or vsnprintf respectively. [*NB:* whether
    such calls get compiled into the package is platform-dependent.]
  * Where recorded at installation, R CMD check reports the C and
    Fortran compilers used to build R.
    It reports the OS in use (if known, as given by osVersion) as
    well as that R was built for.
    It notes if a C++ standard was specified which is older than the
    current default: many packages have used C++11 to mean 'not
    C++98' - as C++11 is the minimum supported since R 4.0.0, that
    specification can probably be removed.
  * R CMD INSTALL reports the compilers (and on macOS, the SDK) used,
    and this is copied to the output of R CMD check.
    Where a C++ standard is specified, it is reported.
  * R CMD check's 'checking compilation flags in Makevars' has been
    relaxed to accept the use of flags such as -std=f2008 in
    PKG_FFLAGS.
  * tools::buildVignettes() has a new argument skip, which is used by
    R CMD check to skip (and note) vignettes with unavailable
    \VignetteDepends (PR#18318).
  * New generic .AtNames() added to enable class-specific completions
    after @. The formerly internal function findMatches() is now
    exported, mainly for use in methods for .DollarNames() and
    .AtNames().
  DEPRECATED AND DEFUNCT:
  * default.stringsAsFactors() is defunct.
  * Calling as.data.frame.&lt;class&gt;() directly (for 12 atomic classes)
    is going to be formally deprecated, currently activated by
    setting the environment variable
    _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ to non-empty, which also
    happens in R CMD check --as-cran.
  BUG FIXES:
  * Hashed environments with sizes less than 5 can now grow.
    (Reported to R-devel by Duncan Garmonsway.)
  * as.character(&lt;Rd&gt;, deparse = TRUE) failed to re-escape curly
    braces in LaTeX-like text.  (Reported by Hadley Wickham in
    PR#18324.)
  * library() now passes its lib.loc argument when requiring Depends
    packages; reported (with fix) in PR#18331 by Mikael Jagan.
  * R CMD Stangle: improved message about 'Output' files.
  * head(x, n) and tail(x, n) now signal an error if n is not
    numeric, instead of incidentally "working" sometimes returning
    all of x.  Reported and discussed by Colin Fay, in PR#18357.
  * The "lm" method for summary() now gives the correct F-statistic
    when the model contains an offset.  Reported in PR#18008.
  * C() and `contrasts&lt;-`() now preserve factor level names when
    given a function object (as opposed a function name which did
    preserve names). Reported in PR#17616.
  * c(a = 1, 2)[[]] no longer matches 2 but rather signals a
    _classed_ error.  Reported and analysed by Davis Vaughan in
    PR#18367, a duplicate of PR#18004, by Jan Meis et al.  For
    consistency, NULL[[]] is also erroneous now.  x[[]] &lt;- v gives an
    error of the same class "MissingSubscriptError".
  * The relist() function of utils now supports NULL elements in the
    skeleton (PR#15854).
  * ordered(levels = *) (missing x) now works analogously to factor(,
    ordered=TRUE); reported (with fix) by Achim Zeileis in PR#18389.
  * User-defined Rd macro definitions can now span multiple lines,
    thanks to a patch from Duncan Murdoch. Previously, the Rd parser
    silently ignored everything after the first line.
  * Plain-text help (tools::Rd2txt()) now preserves an initial blank
    line for text following description list items.
  * tools::Rd2HTML() and tools::Rd2latex() no longer split \arguments
    and \value lists at Rd comments.
  * tools::Rd2latex() now correctly handles optional text outside
    \items of argument lists as well as bracketed text at the
    beginning of sections, e.g., \value{[NULL]}.
  * as.character(&lt;POSIXt&gt;) now behaves more in line with the methods
    for atomic vectors such as numbers, and is no longer influenced
    by options().  Ditto for as.character(&lt;Date&gt;).  The
    as.character() method gets arguments digits and OutDec with
    defaults _not_ depending on options().  Use of as.character(*,
    format = .) now warns.
  * Similarly, the as.character.hexmode() and *.octmode() methods
    also behave as good citizen methods and back compatibility option
    keepStr = TRUE.
  * The as.POSIXlt(&lt;POSIXlt&gt;) and as.POSIXct(&lt;POSIXct&gt;) default
    methods now do obey their tz argument, also in this case.
  * as.POSIXlt(&lt;Date&gt;) now does apply a tz (time zone) argument, as
    does as.POSIXct(); partly suggested by Roland Fuss on the R-devel
    mailing list.
  * as.Date.POSIXlt(x) now also works when the list components are of
    unequal length, aka "partially filled" or "ragged".
  * expand.model.frame() looked up variables in the wrong environment
    when applied to models fitted without data.  Reported in
    PR#18414.
  * time() now (also) uses the ts.eps = getOption("ts.eps") argument
    and thus by default rounds values very close to the start (or
    end) of a year.  Based on a proposal by Andre"i V. Kostyrka on
    R-help.
  * Printing of a factanal() result with just one factor and sort =
    TRUE now works regularly, fixing PR#17863 by Timothy Bates,
    thanks to the 'R Contributors' working group.
  * Printing 0-length objects of class "factor", "roman", "hexmode",
    "octmode", "person", "bibentry", or "citation" now prints
    something better, one of which fixes PR#18422, reported by
    Benjamin Feakins.
  * Sys.timezone() queries timedatectl only if systemd is loaded;
    addressing a report by Jan Gorecki in PR#17421.
  * The formula method of cor.test() had scoping problems when
    environment(formula) was not the calling environment; reported
    with a patch proposal by Mao Kobayashi in PR#18439.
  * attach() of an environment with active bindings now preserves the
    active bindings.  Reported by Kevin Ushey in PR#18425.
  * BLAS detection now works also with system-provided libraries not
    available as regular files.  This fixes detection of the
    Accelerate framework on macOS since Big Sur.  Reported by David
    Novgorodsky.
  * download.file() gives a helpful error message in case of an
    invalid download.file.method option, thanks to Colin Fay's report
    in PR#18455.
  * Sporadic crashes of Rterm when using completion have been fixed.
  * Rprof() is now more reliable.  A livelock in thread
    initialization with too short sampling interval has been fixed on
    macOS.  A deadlock in using the C runtime has been fixed on
    Windows.  A potential deadlock has been prevented on Unix.
  * Cursor placement in Rgui now works even after a fixed-width font
    is selected.
  * Mandatory options (options()) are now set on startup so that
    saving and restoring them always works (PR#18372).
  * Package installation, R CMD INSTALL or install.packages(*), now
    parses each of the &lt;pkg&gt;/R/*.R files individually instead of
    first concatenating and then parse()ing the large resulting file.
    This allows parser or syntax errors to be diagnosed with correct
    file names and line numbers, thanks to Simon Dedman's report and
    Bill Dunlap's patch in PR#17859.
    This _does_ require syntactically self contained R source files
    now, fixing another inadvertent bug.
  * predict.lm(&lt;model with offset&gt;) now finds the offset in the
    correct environment, thanks to Andr'e Gillibert's report and patch
    in PR#18456.
  * getInitial(&lt;formula&gt;) now finds the selfStart model in the
    correct environment.  (Reported by Ivan Krylov in PR#18368.)
  * Fix for possible segfault when using recently-added graphics
    features, such as gradients, clipping paths, masks, and groups
    with pdf(file=NULL).
  * class(m) &lt;- class(m) no longer changes a matrix m by adding a
    class _attribute_.
  * packageDate(pkg) now only warns once if there is no pkg.
  * When ts() creates a multivariate time series, "mts", it also
    inherits from "array" now, and is.mts() is documented _and_
    stricter.
  * Rd2txt() now preserves line breaks of \verb Rd content and from
    duplicated \cr.  The former also fixes the rendering of verbatim
    output from Rd \Sexpr in plain-text help.
  * uniroot(f, interval) should no longer wrongly converge _outside_
    the interval in some cases where abs(f(x)) == Inf for an x at the
    interval boundary, thanks to posts by Ben Bolker and Serguei
    Sokol on R-devel.
  * Vectorized alpha handling in palette functions such as in gray(),
    rainbow(), or hcl.colors() works correctly now, thanks to Achim
    Zeileis' report and patch in PR#18476.
  * Formatting and print()ing of bibentry objects has dropped the
    deprecated citation.bibtex.max argument, such that the bibtex
    argument's default for print.bibentry() depends directly on the
    citation.bibtex.max option, whereas in format.bibentry() the
    option no longer applies.
  * Attempting to use a character string naming a foreign function
    entry point in a foreign function call in a package will now
    signal an error if the packages has called R_forceSymbols to
    specify that symbols must be used.
  * An error in table() could permanently set options(warn=2)
    promoting all subsequent warnings to errors.
  * The sigma() function gave misleading results for binary GLMs.  A
    new method for objects of class "glm" returns the square root of
    the estimate of the dispersion parameter using the same
    calculation as summary.glm().
  * bs() and ns() in the (typical) case of automatic knot
    construction, when some of the supposedly inner knots coincide
    with boundary knots, now moves them inside (with a warning),
    building on PR#18442 by Ben Bolker.
  * R CMD on Windows now skips the site profile with --no-site-file
    and --vanilla even when R_PROFILE is set (PR#18512, from Kevin
    Ushey).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1686916800">- CHANGES IN R 4.3.1:
  C-LEVEL FACILITIES:
  * The C-level API version of R's integrate(), Rdqags() in Applic.h,
    now returns the correct number of integrand evaluations neval,
    fixing PR#18515 reported and diagnosed by Stephen Wade.
  * The C prototypes for LAPACK calls dspgv and dtptrs in
    R_exts/Lapack.h had one too many and one too few character length
    arguments - but this has not caused any known issues. To get the
    corrected prototypes, include
    [#]include &lt;Rconfig.h&gt; // for PR18534fixed
    [#]ifdef PR18534fixed
    [#] define usePR18534fix 1
    [#]endif
    [#]include &lt;R_exts/Lapack.h&gt;
    in your C/C++ code (PR#18534).
  INSTALLATION:
  * Many of the checks of esoteric Internet operations and those
    using unreliable external sites have been moved to a new target
    that is not run by default and primarily intended for the core
    developers.  To run them use
    cd tests; make test-Internet-dev
  BUG FIXES:
  * .S3methods(), typically called from methods(), again marks
    methods from package base as visible.
    Also, the visibility of non-base methods is again determined by
    the method's presence in search().
  * tools::Rdiff() is now more robust against invalid strings, fixing
    installation tests on Windows without Rtools installed
    (PR#18530).
  * Fix (new) bug in hcl.colors(2, *), by Achim Zeileis (PR#18523).
  * head(., &lt;illegal&gt;) and tail(..) now produce more useful "Error in
    ...." error messages, fixing PR#18362.
  * Package code syntax on Windows is checked in UTF-8 when UTF-8 is
    the native encoding.
  * na.contiguous(x) now also returns the first run, when it is at
    the beginning and there is a later one of the same length;
    reported to R-devel, including a fix, by Georgi Boshnakov.
    Further, by default, it modifies only an existing attr(*,"tsp")
    but otherwise no longer sets one.
  * chol(&lt;not pos.def&gt;, pivot = &lt;T|F&gt;) now gives a correct error or
    warning message (depending on pivot), thanks to Mikael Jagan's
    (PR#18541).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1699012800">- CHANGES IN R 4.3.2:
  NEW FEATURES:
  * The default initialization of the "repos" option from the
    repositories file at startup can be skipped by setting
    environment variable R_REPOSITORIES to NULL such that
    getOption("repos") is empty if not set elsewhere.
  * qr.X() is now an implicit S4 generic in methods.
  * iconv(to = "ASCII//TRANSLIT") is emulated using substitution on
    platforms which do not support it (notably Alpine Linux).  This
    should give a human-readable conversion in ASCII on all platforms
    (rather than NA_character_).
  * trans3d() gains options continuous and verbose addressing the
    problem of possible "wrap around" when projecting too long
    curves, as reported by Achim Zeileis in PR#18537.
  * tools::showNonASCII() has been rewritten to work better on macOS
    14 (which has a changed implementation of iconv()).
  * tiff(type = "quartz") (the default on macOS) now warns if
    compression is specified: it continues to be ignored.
  INSTALLATION on a UNIX-ALIKE:
  * There is some support for building with Intel's LLVM-based
    compilers on x86_64 Linux, such as (C) icx, (C++) ipcx and
    (Fortran) ifx from oneAPI 2023.x.y.
  * There is support for using LLVM's flang-new as the Fortran
    compiler from LLVM 16.0.x (preferably 17.0.0 or later).
  UTILITIES:
  * R CMD check reports the use of the Fortran 90 random number
    generator RANDOM_NUMBER() and the subroutines to initialize it.
    'Writing R Extensions' has example code to use R's RNGs from
    Fortran.
  BUG FIXES:
  * substr(x, n, L) &lt;- cc now works (more) correctly for multibyte
    UTF-8 strings x when L &gt; nchar(x), thanks to a report and patch
    by 'Architect 95'.
  * contrib.url(character()) now returns 0-length character() as
    documented, which also avoids spurious warnings from
    available.packages() et al. in the edge case of an empty vector
    of repository URLs.
  * readChar(., 4e8) no longer fails, thanks to Kodi Arfer's report
    (PR#18557).
  * lapply(&lt;list&gt;, as.data.frame) no longer warns falsely for some
    base vector components.
  * Communication between parent and child processes in the multicore
    part of parallel could fail on platforms that do not support an
    arbitrarily large payload in system functions read()/write() on
    pipes (seen on macOS where a restriction to INT_MAX bytes is
    documented, without doing a partial read unlike Linux). The
    payload is now split into 1Gb chunks to avoid that problem.
    (PR#18571)
  * qqplot(x,y, conf.level=.) gives better confidence bounds when
    length(x) != length(y), thanks to Alexander Ploner's report and
    patch proposal (PR#18557).
  * norm(&lt;0-length&gt;, "2") now gives zero instead of an error, as all
    the other norm types, thanks to Mikael Jagan's PR#18542.
  * Build-stage Rd macros \packageAuthor and \packageMaintainer now
    process Authors@R, fixing NA results when the package DESCRIPTION
    omits Author and Maintainer fields.
  * Formatting and printing complex numbers could give things like
    0.1683-0i because of rounding error: -0i is now replaced by +0i.
  * postscript() refused to accept a title comment containing the
    letter "W" (PR#18599).
  * isoreg(c(1,Inf)) signals an error instead of segfaulting, fixing
    PR#18603.
  * tiff(type = "Xlib") was only outputting the last page of
    multi-page plots.
  * tools::latexToUtf8() again knows about \~{n} and other letters
    with tilde, fixing a regression in R 4.3.0, and about \^{i} as an
    alternative to \^{\i} (similarly with other accents).
    Furthermore, LaTeX codes for accented I letters are now correctly
    converted, also fixing related mistakes in
    tools::encoded_text_to_latex().
  * tar(*, tar = "internal") no longer creates out-of-spec tar files
    in the very rare case of user or group names longer than 32
    bytes, fixing PR#17871 with thanks to Ivan Krylov.
  * When using the "internal" timezone datetime code, adding a
    fraction of a second no longer adds one second, fixing PR#16856
    from a patch by Ivan Krylov.
  * tools::checkRd() no longer produces spurious notes about
    "unnecessary braces" from multi-line Rd results of \Sexpr macros.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1709208000">- CHANGES IN R 4.3.3:
  NEW FEATURES:
  * iconv() now fixes up variant encoding names such as "utf8"
    case-insensitively.
  DEPRECATED AND DEFUNCT:
  * The legacy encoding = "MacRoman" is deprecated in pdf() and
    postscript(): support was incomplete in earlier versions of R.
  BUG FIXES:
  * Arguments are now properly forwarded to methods on S4 generics
    with ... in the middle of their formal arguments. This was broken
    for the case when a method introduced an argument but did not
    include ... in its own formals. Thanks to Herv'e Pag`es for the
    report PR#18538.
  * Some invalid file arguments to pictex(), postscript() and xfig()
    opened a file called NA rather than throw an error.  These
    included postscript(NULL) (which some people expected to work
    like pdf(NULL)).
  * Passing filename = NA to svg(), cairo_pdf(), cairo_ps() or the
    Cairo-based bitmap devices opened a file called NA: it now throws
    an error.
  * quartz(file = NA) opened a file called NA, including when used as
    a Quartz-based bitmap device.  It now gives an error.
  * rank(&lt;long vector&gt;) now works, fixing PR#18617, thanks to Ilia
    Kats.
  * seq.int() did not adequately check its length.out argument.
  * match(&lt;POSIXct&gt;, .) is correct again for differing time zones,
    ditto for "POSIXlt", fixing PR#18618 reported by Bastian Klein.
  * drop.terms(*, dropx = &lt;0-length&gt;) now works, fixing PR#18563 as
    proposed by Mikael Jagan.
  * drop.terms(*) keeps + offset(.) terms when it should, PR#18565,
    and drop.terms() no longer makes up a response, PR#18566, fixing
    both bugs thanks to Mikael Jagan.
  * getS3method("t", "test") no longer finds the t.test() function,
    fixing PR#18627.
  * pdf() and postscript() support for the documented Adobe encodings
    "Greek" and "Cyrilllic" was missing (although the corresponding
    Windows' codepages could be used).
  * Computations of glyph metric information for pdf() and
    postscript() did not take into account that transliteration could
    replace one character by two or more (only seen on macOS 14) and
    typically warned that the information was not known.
  * rank(x) no longer overflows during integer addition, when
    computing rank average for largish but not-yet long vector x,
    fixing PR#18630, thanks to Ilia Kats.
  * list.files() on Windows now returns also files with names longer
    that 260 bytes (the Windows limit is 260 characters).
    Previously, some file names particularly with 'East Asian'
    characters were omitted.
  * cov2cor(&lt;0 x 0&gt;) now works, fixing PR#18423 thanks to Mikael
    Jagan and Elin Waring.
  * cov2cor(&lt;negative diagonal&gt;) and similar now give one warning
    instead of two, with better wording, fixing PR#18424 thanks to
    Mikael Jagan.
  * tools:: startDynamicHelp() now ensures port is in proper range,
    fixing PR#18645.
  * pbeta(x, a,b) is correct now for x=0 or 1 in the boundary cases
    where a or b or both are 0, fixing PR#18672 thanks to Michael
    Fay.
  * pmatch(x, table) for large table, also called for data frame row
    selection, dfrm[nm, ], is now interruptible, fixing PR#18656.
  * predict(&lt;rank-deficient lm&gt;, newdata=*) fix computing of nbasis,
    see Russ Lenth's comment 29 in PR#16158.
  * Added a work-around for a bug in macOS 14.3.1 and higher which
    prevents R plots in the Quartz Cocoa device from updating on
    screen.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1713960000">- CHANGES IN R 4.4.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Startup banners, R --version, sessionInfo() and R CMD check no
    longer report (64-bit) as part of the platform as this is almost
    universal - the increasingly rare 32-bit platforms will still
    report (32-bit).
    On Windows, ditto for window titles.
  * is.atomic(NULL) now returns FALSE, as NULL is not an atomic
    vector.  Strict back-compatibility would replace is.atomic(foo)
    by (is.null(foo) || is.atomic(foo)) but should happen only
    sparingly.
  NEW FEATURES:
  * The confint() methods for "glm" and "nls" objects have been
    copied to the stats package.  Previously, they were stubs which
    called versions in package MASS. The MASS namespace is no longer
    loaded if you invoke (say) confint(glmfit).  Further, the "glm"
    method for profile() and the plot() and pairs() methods for class
    "profile" have been copied from MASS to stats.  (profile.nls()
    and plot.profile.nls() were already in stats.)
  * The confint() and profile methods for "glm" objects have gained a
    possibility to do profiling based on the Rao Score statistic in
    addition to the default Likelihood Ratio. This is controlled by a
    new test = argument.
  * The pairs() method for "profile" objects has been extended with a
    which = argument to allow plotting only a subset of the
    parameters.
  * The "glm" method for anova() computes test statistics and
    p-values by default, using a chi-squared test or an F test
    depending on whether the dispersion is fixed or free.  Test
    statistics can be suppressed by giving argument test a false
    logical value.
  * In setRepositories() the repositories can be set using their
    names via name = instead of index ind =.
  * methods() and .S3methods() gain a all.names option for the (rare)
    case where functions starting with a . should be included.
  * Serializations can now be interrupted (e.g., by Ctrl-C on a
    Unix-alike) if they take too long, e.g., from save.image(),
    thanks to suggestions by Ivan Krylov and others on R-devel.
  * New startup option --max-connections to set the maximum number of
    simultaneous connections for the session.  Defaults to 128 as
    before: allowed values up to 4096 (but resource limits may in
    practice restrict to smaller values).
  * R on Windows (since Windows 10 2004) now uses the new Segment
    Heap allocator. This may improve performance of some
    memory-intensive applications.
  * When R packages are built, typically by R CMD build &lt;pkg&gt;, the
    new --user=&lt;build_user&gt; option overrides the (internally
    determined) user name, currently Sys.info()["user"] or LOGNAME.
    This is a (modified) fulfillment of Will Landau's suggestion in
    PR#17530.
  * tools::testInstalledBasic() gets new optional arguments outDir
    and testSrcdir, e.g., allowing to use it in a &lt;builddir&gt; !=
    &lt;srcdir&gt; setup, and in standard "binary" Windows installation
  * if* a source tests/ folder is present.
  * range(&lt;DT_with_Inf&gt;, finite = TRUE) now work for objects of class
    "Date", "POSIXct", and "POSIXlt" with infinite entries,
    analogously to range.default(), as proposed by Davis Vaughan on
    R-devel.  Other range()-methods can make use of new function
    .rangeNum().
  * New .internalGenerics object complementing .S3PrimitiveGenerics,
    for documentation and low-level book-keeping.
  * grid() now invisibly returns the x- and y- coordinates at which
    the grid-lines were drawn.
  * norm(., type) now also works for complex matrices.
  * kappa(., exact = TRUE, norm = *) now works for all norms and also
    for complex matrices.  In symmetric / triangular cases, the new
    argument uplo = "U" | "L" allows the upper or lower triangular
    part to be specified.
  * memDecompress(type = "unknown") recognizes compression in the
    default 'zlib' format as used by memCompress(type = "gzip").
  * memCompress() and memDecompress() will use the libdeflate library
    (&lt;https://github.com/ebiggers/libdeflate&gt;) if installed.  This
    uses the same type of compression for type = "gzip" but is 1.5-2x
    faster than the system libz library on some common platforms: the
    speed-up may depend on the library version.
  * diff() for objects of class "Date", "POSIXct", and "POSIXlt"
    accepts a units argument passed via ....
  * Dynamic help now does a much better job of rendering package
    DESCRIPTION metadata.
  * Rprof() gains an event argument and support for elapsed (real)
    time profiling on Unix (PR#18076).
  * filled.contour() gains a key.border argument.
  * tools::update_pkg_po() gets arguments pot_make and mo_make for
    _not_ re-making the corresponding files, and additionally a
    verbose argument.
  * Hexadecimal string colour specifications are now accepted in
    short form, so, for example, we can use "#123", which is
    equivalent to "#112233".
    Thanks to MikeFC for the original idea and Ella Kaye, Malcolm
    Barrett, George Stagg, and Hanne Oberman for the patch.
  * Plain-text help shows \var markup by angle brackets.
  * The new experimental primitive function declare() is intended to
    eventually allow information about R code to be communicated to
    the interpreter, compiler, and code analysis tools. The syntax
    for declarations is still being developed.
  * Functions psmirnov(), qsmirnov() and rsmirnov() in package stats
    have had argument two.sided renamed to alternative, to take into
    account that the permutation distributions of the one-sided
    statistics can be different in the case of ties.  Consequence of
    PR#18582.
  * sort() is now an implicit S4 generic in methods.
  * Formatting and printing, format(z), print(z), of complex vectors
    z no longer zap relatively small real or imaginary parts to zero,
    fixing PR#16752.  This is an API change, as it was documented
    previously to round real and imaginary parts together on purpose,
    producing nicer looking output.  As mentioned, e.g. in the PR,
    this change is compatible with many other "R-like" programming
    environments.
    We have simplified the internal code and now basically format the
    real and imaginary parts independently of each other.
  * New experimental functions Tailcall() and Exec() to support
    writing stack-space-efficient recursive functions.
  * Where characters are attempted to be plotted by pdf(),
    postscript() and xfig() which are not in the selected 8-bit
    character set (most often Latin-1) and the R session is using a
    UTF-8 locale, the warning messages will show the UTF-8 character
    rather than its bytes and one dot will be substituted per
    character rather than per byte.  (Platforms whose iconv() does
    transliteration silently plot the transliteration.)
    In a UTF-8 locale some transliterations are now done with a
    warning (e.g., dashes and Unicode minus to hyphen, ligatures are
    expanded, permille (‰) is replaced by o/oo), although the OS may
    have got there first.  These are warnings as they will continue
    to be replaced by dots in earlier versions of R.
  * The matrix multiplication functions crossprod() and tcrossprod()
    are now also primitive and S3 generic, as %*% had become in R
    4.3.0.
  * source() and example() have a new optional argument catch.aborts
    which allows continued evaluation of the R code after an error.
  * The non-Quartz tiff() devices allow additional types of
    compression if supported by the platform's libtiff library.
  * The list of base and recommended package names is now provided by
    tools::standard_package_names().
  * cairo_pdf() and cairo_ps() default to onefile = TRUE to closer
    match pdf() and postscript().
  * New option catch.script.errors provides a documented way to catch
    errors and then continue in non-interactive use.
  * L %||% R newly in base is an expressive idiom for the phrases
    if(!is.null(L)) L else R or if(is.null(L)) R else L.
  * The return value from warnings() now always inherits from
    "warnings" as documented, now also in the case of no warnings
    where it previously returned NULL.
  * as.complex("1i") now returns 0 + 1i instead of NA with a warning.
  * z &lt;- c(NA, 1i) now keeps the imaginary part Im(z[1]) == 0, no
    longer coercing to NA_complex_.  Similarly, cumsum(z) correctly
    sums real and imaginary parts separately, i.e., without
    "crosstalk" in case of NAs.
  * On Alpine Linux iconv() now maps "latin2", "latin-2", "latin9"
    and "latin-9" to encoding names the OS knows about
    (case-insensitively).
  * iconv(sub = "Unicode") now always zero-pads to four (hex) digits,
    rather than to 4 or 8.  (This seems to have become the convention
    once Unicode restricted the number of Unicode points to 2^21 - 1
    and so will never need more than 6 digits.)
  * NCOL(NULL) now returns 0 instead of 1, for consistency with
    cbind().
  * The information for the Euro glyph missing from the Adobe .afm
    files for the Courier, Helvetica and Times families has been
    copied from their URW equivalents - this will improve vertical
    centring in the pdf() and postscript() devices.
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.12.0.  The changes are almost entirely cosmetic.
  * The included LAPACK sources have been updated to version 3.12.0
    and some further double-complex routines added.
  * There are new font families for the 2014--5 URW 2.0 fonts (see
    ?pdf) which are included in recent versions of Ghostscript.
    These have font widths for most Greek glyphs and a few others
    which were missing from the original versions (whose font
    families remain available for reproducibility, although
    Ghostscript-based viewers will render using the 2.0 versions).
  * Improve the large-n efficiency of as.matrix(&lt;dist&gt;), thanks an R
    contributors effort, notably by Tim Taylor and Heather Turner,
    see PR#18660.
  * The default and numeric methods of all.equal() get a check.class
    option.
  * zapsmall() gets new optional arguments, function mFUN and min.d,
    for extra flexibility; fulfills a wish in PR#18199.  Also, it is
    now an implicit S4 generic in package methods.
  * The Rd filter for aspell() gains an ignore argument.
  * New generic function sort_by(), primarily useful for the
    data.frame method which can be used to sort rows of a data frame
    by one or more columns.
  * The icence headers for the RPC code in src/extra/xdr have been
    updated to use the GPL-compatible licence published by Oracle
    America in 2010.
  * New function pkg2HTML() in tools to create single-page HTML
    reference manuals for R packages.
  * The byte code evaluator now uses less C stack space for recursive
    calls to byte-compiled functions. It also makes more of an effort
    to avoid allocations for scalar return values.
  * New completion option backtick (disabled by default) allows
    non-syntactic completions to be wrapped in backquotes. This is
    currently only useful for Jupyter notebooks via the IRkernel
    package, and may cause problems for other backends.
  INSTALLATION:
  * The parser has been updated to work with bison 3.8.2, which is
    now used for the pre-generated parsers in gram.c, file.c, and
    gramRd.c. A few parser error messages have changed, which may
    affect code that relies on exact messages.
  INSTALLATION on a UNIX-ALIKE:
  * System valgrind headers are now required to use configure option
  - -with-valgrind-instrumentation with value 1 or 2.
  * configure will warn if it encounters a 32-bit build, as that is
    nowadays almost untested.
  * Environment variable R_SYSTEM_ABI is no longer used and so no
    longer recorded in etc/Renviron (it was not on Windows and was
    only ever used when preparing package tools).
  * If the libdeflate library and headers are available, libdeflate
    rather than libz is used to (de)compress R objects in lazy-load
    databases.  Typically tasks spend up to 5% of their time on such
    operations, although creating lazy-data databases is one of the
    exceptions.
    This can be suppressed if the library is available by the
    configure option --without-libdeflate-compression.
  * configure option --enable-lto=check has not worked reliably since
    2019 and has been removed.
  * The minimum autoconf requirement for a maintainer build has been
    increased to autoconf 2.71.
    It is intended to increase this to 2.72 for R 4.5.0: the
    distributed configure file was generated using 2.72.
  * The minimum version requirement for an external LAPACK has been
    reduced to 3.9.0.
  * No default C++ compiler is set if no C++17 compiler is detected:
    there is no longer an automatic fallback to C++14 or C++11.
    Compilers from the last five years should have sufficient
    support: for others macros CXX and CXXSTD can be set in file
    config.site to provide a fallback if needed.
    The Objective-C++ compiler now by default uses the standard
    selected by R for C++ (currently C++17) rather than the default
    standard for the C++ compiler (which on macOS is still C++98).
  INSTALLATION on macOS:
  * A new configure option --with-newAccelerate makes use of Apple's
    'new' BLAS / LAPACK interfaces in their Accelerate framework.
    Those interfaces are only available in macOS 13.3 or later, and
    building requires SDK 13.3 or later (from the Command Line Tools
    or Xcode 14.3 or later).
    By default the option uses new Accelerate for BLAS calls: to also
    use it for LAPACK use option --with-newAccelerate=lapack.  The
    later interfaces provide LAPACK 3.9.1 rather than 3.2.1: 3.9.1 is
    from 2021-04 and does not include the improved algorithms
    introduced in LAPACK 3.10.0 (including for BLAS calls).
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools44, an update of the Rtools43 toolchain.  It is
    based on GCC 13 and newer versions of MinGW-W64, binutils and
    libraries (targeting 64-bit Intel CPUs).  R-devel can no longer
    be built using Rtools43 without changes.
  * Rtools44 has experimental support for 64-bit ARM (aarch64) CPUs
    _via_ the LLVM 17 toolchain using lld, clang/flang-new and
    libc++.
  UTILITIES:
  * R CMD check notes when S4-style exports are used without
    declaring a strong dependence on package methods.
  * tools::checkRd() (used by R CMD check) detects more problems with
    \Sexpr-based dynamic content, including bad nesting of \Sexprs
    and invalid arguments.
  * tools::checkRd() now reports Rd titles and section names ending
    in a period; this is ignored by R CMD check unless environment
    variable _R_CHECK_RD_CHECKRD_MINLEVEL_ is set to -5 or smaller.
  * R CMD check now notes Rd files without an \alias, as long
    documented in 'Writing R Extensions' §1.3.1.  The check for a
    missing \description has been moved from tools::checkRd() to
    tools::checkRdContents().
  * R CMD check now visits inst/NEWS.Rd and OS-specific man
    subdirectories when checking Rd files.
  * tools::checkDocFiles() and tools::checkRdContents() now also
    check internal Rd files by default, but "specially" (ignoring
    missing documentation of arguments).
  * R CMD Rdiff gets option --useEx.
  * R CMD check now warns on non-portable uses of Fortran KIND such
    as INTEGER(KIND=4) and REAL(KIND=8).
    To see the failing lines set environment variable
    _R_CHECK_FORTRAN_KIND_DETAILS_ to a true value.
  * When checking Rd files, R CMD check now notes some of the "lost
    braces" that tools::checkRd() finds.  Typical problems are Rd
    macros missing the initial backslash (e.g., code{...}), in-text
    set notation (e.g., {1, 2}, where the braces need escaping), and
    \itemize lists with \describe-style entries of the form
    \item{label}{description}.
  * R CMD INSTALL (and hence check) will compile C++ code with
  - DR_NO_REMAP if environment variable _R_CXX_USE_NO_REMAP_ is set
    to a true value.  It is planned that this will in future become
    the default for compiling C++.
  * The new built-in Rd macro \dontdiff{} can be used to mark example
    code whose output should be ignored when comparing check output
    to reference output (tests/Examples/&lt;pkg&gt;-Ex.Rout.save).  The
    \dontdiff tag, like \donttest, is _not_ shown on the rendered
    help page, so provides a clean alternative to ##
    IGNORE_RDIFF_(BEGIN|END) comments.
  * R CMD build when there is no NAMESPACE, now uses the recommended
    exportPattern("^[^.]"), instead of exporting everything.
  * R CMD check now warns about non-ASCII characters in the NAMESPACE
    file (in addition to R files). Such packages are not portable and
    may fail to install on some platforms.
  C-LEVEL FACILITIES:
  * Headers R_ext/Applic.h and R-ext/Linpack.h used to include
    R_ext/BLAS.h although this was undocumented and unneeded by their
    documented entry points.  They no longer do so.
  * New function R_missing(), factored out from do_missing(), used to
    fix PR#18579.
  * SEXP type S4SXP has been renamed to OBJSXP to support
    experimenting with alternative object systems.  The S4SXP value
    can still be used in C code but is now deprecated.  Based on
    contributions from the R Consortium's Object-Oriented Programming
    Working Group.
  * New function pow1p(x,y) for accurate (1+x)^y.
  * mkCharLenCE was incorrectly documented to take a size_t length
    but was implemented with int (and character strings in R are
    limited to 2^31 - 1 bytes).
  DEPRECATED AND DEFUNCT:
  * data() no longer handles zipped data from long-defunct (since R
    2.13.0) --use-zip-data installations.
  * The legacy graphics devices pictex() and xfig() are now
    deprecated.  They do not support recent graphics enhancements and
    their font handling is rudimentary. The intention is to retain
    them for historical interest as long as they remain somewhat
    functional.
  * Support for encoding = "MacRoman" has been removed from the pdf()
    and postscript() devices - this was a legacy encoding supporting
    classic macOS up to 2001 and no longer has universal libiconv
    support.
  * is.R() is deprecated as no other S dialect is known to be in use
    (and this could only identify historical dialects, not future
    ones).
    Further information on calls can be obtained by setting the
    environment variable _R_DEPRECATED_IS_R_ to error which turns the
    deprecation warning into an error and so by default gives a
    traceback.  (This is done by R CMD check --as-cran.)
  * UseMethod() no longer forwards local variables assigned in the
    generic function into method call environments before evaluating
    the method body. This makes method calls behave more like
    standard function calls and makes method code easier to analyze
    correctly.
  * The twelve as.data.frame.&lt;class&gt;() methods which were deprecated
    only via _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ and in R CMD
    check --as-cran are formally deprecated now in favour of calling
    as.data.frame() or as.data.frame.vector().  The deprecation
    "check" now works also when as.data.frame() is S4 generic thanks
    to Ivan Krylov.
  * The default method for the directional comparison operators &lt;, &gt;,
    &lt;=, and &gt;= now signals an error when one of the operands is a
    language object, i.e. a symbol or a call.
  * For terms.formula(), deprecate abb and neg.out arguments
    _formally_ in addition to just documenting it.
  BUG FIXES:
  * The methods package is more robust to not being attached to the
    search path.  More work needs to be done.
  * pairwise.t.test() misbehaved when subgroups had 0 DF for
    variance, even with pool.sd = TRUE.  (PR#18594 by Jack Berry).
  * Probability distribution functions [dpq]&lt;distrib&gt;(x, *), but also
    bessel[IKJY](x, .) now consistently preserve attributes(x) when
    length(x) == 0, e.g., for a 2 x 0 matrix, thanks to Karolis
    Koncevičius' report PR#18509.
  * Group "Summary" computations such as sum(1:3, 4, na.rm = 5, NA,
    7, na.rm = LL) now give an error instead of either 17 or NN for
    LL true or false, as proposed by Ivan Krylov on the R-devel
    mailing list.  (This also means it is now an error to specify
    na.rm more than once.)
  * as.complex(x) now returns complex(real = x, imaginary = 0) for
    _all_ numerical and logical x, notably also for NA or
    NA_integer_.
  * Directories are now omitted by file.copy(, recursive = FALSE) and
    in file.append() (PR#17337).
  * gsub() and sub() are now more robust to integer overflow when
    reporting errors caused by too large input strings (PR#18346).
  * Top-level handlers are now more robust to attempts to remove a
    handler whilst handlers are running (PR#18508).
  * The handling of Alt+F4 in dialogs created on Windows using
    GraphApp has been fixed (PR#13870).
  * density() more consistently computes grid values for the
    FFT-based convolution, following Robert Schlicht's analysis and
    proposal in PR#18337, correcting density values typically by a
    factor of about 0.999.  Argument old.coords = TRUE provides back
    compatibility.
  * palette.colors() gains a name argument that defaults to FALSE
    controlling whether the vector of colours that is returned has
    names (where possible).  PR#18529.
  * tools::xgettext() no longer extracts the (non-translatable) class
    names from warningCondition and errorCondition calls.
  * S3method(&lt;gen&gt;, &lt;class&gt;, &lt;func&gt;) in the NAMESPACE file now works
    (again) when &lt;func&gt; is visible from the namespace, e.g.,
    imported, or in base.
  * getParseData(f) now also works for a function defined in the
    first of several &lt;pkg&gt;/R/*.R source files, thanks to Kirill
    Müller's report and Duncan Murdoch's patch in PR#16756.
  * Rd \Sexpr macros with nested #ifdef conditionals were not
    processed.
  * A non-blocking connection with non-default encoding (such as a
    socket) now correctly returns from readLines() after new data has
    arrived also when its EOF had been reached previously.  Thanks to
    Peter Meilstrup's report on R-devel and Ivan Krylov's report and
    patch proposal in PR#18555.
  * tools::checkRdContents() failed to detect empty argument
    descriptions when they spanned multiple lines, including those
    generated by prompt().  These cases are now noted by R CMD check.
  * Plain-text help no longer outputs spurious colons in the
    arguments list (for multi-line \item labels in the Rd source).
  * kappa() and rcond() work correctly in more cases; kappa(., norm =
    "2") now warns that it computes the 1-norm with (default) exact =
    FALSE; prompted by Mikael Jagan's quite comprehensive PR#18543.
  * Rd skeletons generated by prompt() or promptData() now use a
    dummy title (so R CMD build works).  tools::checkRdContents() has
    been updated to detect such template leftovers, including from
    promptPackage().
  * When S4 method dispatch fails because no method was found, the
    error message now includes the signature argument names; thanks
    to Michael Chirico's proposal on the R-devel list.
  * withAutoprint({ .. }) now preserves srcrefs previously lost,
    thanks to Andrew Simmons' report plus fix in PR#18572.
  * transform.data.frame() no longer adjusts names; in particular,
    untransformed variables are kept as-is, including those with
    syntactically invalid names (PR#17890).
  * The keep.source option for Rd \Sexpr blocks is no longer ignored.
  * The formula methods for t.test() and wilcox.test() now catch when
    paired is passed, addressing PR#14359; use Pair(x1, x2) ~ 1 for a
    paired test.
  * The level reported in the browser prompt was often too large. It
    now shows the number of browser contexts on the stack.
  * For cbind() and rbind(), the optional deparse.level argument is
    now properly passed to methods, thanks to Mikael Jagan's PR#18579
    and comments there.
  * Some error and warning messages for large ('long vector')
    matrix(v, nr, nc) and dim(m) &lt;- d are now correct about sizes,
    using long long formatting, fixing PR#18612 (and more) reported
    by Mikael Jagan.
  * readChar(useBytes = TRUE) now terminates strings even when the
    underlying connection uses extra spaces in the input buffer.
    This fixes problems with extra garbage seen with gzip
    connections, PR#18605.
  * Named capture in PCRE regular expressions now works also with
    more than 127 named groups (PR#18588).
  * Datetime functions are now robust against long jumps when dealing
    with internal time zone changes.  This avoids confusing warnings
    about an invalid time zone, previously triggered by turning
    warnings into errors or handling them via tryCatch (PR#17966,
    PR#17780).
  * Datetime functions now restore even an empty TZ environment
    variable after internal time zone changes (PR#17724).  This makes
    results of datetime functions with this (typically unintentional)
    setting more predictable.
  * drop.terms(*) now drops response as by default, keep.response =
    FALSE, fixing PR#18564 thanks to Mikael Jagan.
  * dummy.coef(.) now also works for lm()-models with character
    categorical predictor variables rather than factor ones, fixing
    PR#18635 reported by Jinsong Zhao.
  * formals(f) &lt;- formals(f) now also works for a function w/o
    arguments and atomic _constant_ body(f).
  * Correct as.function(&lt;invalid list&gt;, .)'s error message.
  * removeSource() is yet more thorough in finding and removing
    "srcref" and the other source references from parsed R language
    chunks, fixing PR#18638 thanks to Andrew Simmons.
  * dgeom() is more accurate now, notably when its result is very
    small, fixing PR#18642 thanks to the proposal of Morten Welinder,
    also improving other instances where C level binom_raw(x, n, ..)
    has x == 0 or x== n.
  * warning() with options(warn = 1) has improved output for
    multi-line messages.
  * axis.Date() and axis.POSIXct() now respect the par("lab") setting
    for the number of pretty() intervals.
  * Comparisons for language objects (which are based on deparsing)
    are now more careful about using accurate deparsed results
    (PR#18676).
  * Plain-text help (Rd2txt) now correctly preserves blank lines
    following single-line \dontrun code.
  * &lt;POSIXlt&gt;[*] no longer sets wrong "balanced" attribute, fixing
    PR#18681 thanks to Mikael Jagan.
  * str(&lt;classed-call&gt;) now deparses the call as expected, fixing
    PR#18684, reported by Dave Slager.
  * In Rd examples, code following the closing brace of a \dontrun,
    \dontshow or \donttest tag on the same line is no longer skipped
    when R CMD check runs the examples.
  * as.data.frame(matrix(*, ncol=0)) now gets valid names() and
    colnames(); reported by Davis Vaughan on the R-devel list.
  * Internal Mathlib function stirlerr(n) is now almost fully
    (52-bit) accurate for all n &gt;= ~5.9 and more accurate also in the
    range 1 -- 5.9.  This entails small ("after 12th decimal")
    changes in density functions, e.g., dgamma() in _some_ regions of
    their support.  The fix was partly prompted by Morten Welinder's
    PR#18640.
  * Numbers like 9876543.2 are now considered non-integer by Mathlib
    internal R_nonint(), amending original fix of PR#15734.
  * Rd comment lines no longer cause broken paragraphs in the
    rendered PDF and plain-text help. In code blocks, pure comment
    lines (starting with %) no longer produce an empty line.
  * xtabs(Freq ~ .) now consistently defaults to na.action = na.pass,
    using na.rm = FALSE (added as an argument) when summing over Freq
    (PR#17770).
  * tools::testInstalledPackage() is no longer silent about failures
    from running examples or tests and its return code no longer
    ignores failures from checking vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1718366400">- CHANGES IN R 4.4.1:
  C-LEVEL FACILITIES:
  * Functions R_atof and R_strtod declared in header R_ext/Utils.h
    are now documented in 'Writing R Extensions' and so formally part
    of the API.
  * The non-API entry points Rf_setSVector, Rf_StringFalse,
    Rf_StringTrue and Rf_isBlankString have been added to those
    reported by R CMD check.
  * The new function Rf_allocLang is now available. This provides an
    alternative to the idiom of calling Rf_allocList followed by
    SET_TYPEOF.
  UTILITIES:
  * R CMD check now reports as warnings what gfortran calls 'Fortran
    2018 deleted features', all of which have long been marked as
    'obsolescent' and some of which were deleted in Fortran 2008 or
    earlier.  Fortran compilers are no longer required to support
    these.
  BUG FIXES:
  * as.numeric(), scan(), type.convert() and other places which use
    the internal C function R_strtod now require a _non-empty_ digit
    sequence in a decimal or binary exponent.  This aligns with the
    C/POSIX standard for strtod and with ?NumericConstants.
  * as.data.frame(m, make.names=NA) now works correctly for a matrix
    m with NA's in row names.
  * The error message from &lt;POSIXlt&gt;[["hour"]] and similar now
    mentions *[[, "hour"]], as wished for in PR#17409 and proposed by
    Michael Chirico.
  * qbinom() and potentially qpois(), qnbinom(), no longer sometimes
    fail accurate inversion (of pbinom(), etc), thanks to Christopher
    Chang's report and patch in PR#18711.
  * The internal help server on Windows can again serve requests sent
    in quick succession, fixing a regression in R 4.4.0.
  * debugcall(&lt;S3Generic&gt;()) now also works when a corresponding
    S4-generic version is in the methods cache (PR#18143).
  * Package tools' toTitleCase(ch0) now returns character(0) when ch0
    is of zero length; fixing PR#18724, reported by David Hugh Jones.
  * R CMD check is no longer broken (without a check result and no
    explanation in 00check.log) for a package which declares an
    invalid VignetteBuilder in DESCRIPTION but has no vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1730376000">- CHANGES IN R 4.4.2:
  C-LEVEL FACILITIES:
  * The S-compatibility macros F77_COM and F77_COMDECL defined in
    header R_ext/RS.h are deprecated and will be removed shortly.  We
    could find no record of their use.
  BUG FIXES:
  * Mathlib function lgammacor(x) no longer warns about underflow to
    zero for large x.
  * Text widths and heights were incorrectly reported by the Quartz
    device if the drawing context didn't exist yet (typically when
    drawing off-screen to a window that is yet to appear, see
    PR#18591).
  * The Quartz device could segfault in cases where paths with spaces
    are used in the new glyph drawing API.  Thanks to Tomek
    Gieorgijewski (PR#18758).
  * On macOS in R CRAN builds, it is again possible to read
    little-endian UTF-16 text with a BOM from a connection using
    encoding="UTF-16".  Users building R from source should avoid
    using the system libiconv in macOS 14.1 and later.
  * methods' internal .requirePackage() now re-enables primitive
    method dispatch when needed; thanks to Ivan Krylov for
    demystifying CRAN package check failures on the R-devel mailing
    list.</changelog>
</package>
<package pkgid="7254d43f094c7a90b96fa98f4a5f64ae391885460a1ef7da53314b40e7bfc133e6a44afa807e257ffd14ff55a73465c0474dd662bcc6e7217f6afc97d00ea559" name="R-tcltk" arch="x86_64">
  <version epoch="0" ver="4.4.2" rel="51.0.2.2.sr20241103"/>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1620302400">- To get in sync with d:l:R:autoCRAN the Matrix package's split
  in -devel was reversed.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339200">- improved spec file according to comments of dimstar in
  https://build.opensuse.org/request/show/892685</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339201">- CHANGES IN R 4.1.0:
  FUTURE DIRECTIONS:
  * It is planned that the 4.1.x series will be the last to support
    32-bit Windows, with production of binary packages for that
    series continuing until early 2023.
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Data set esoph in package datasets now provides the correct
    numbers of controls; previously it had the numbers of cases added
    to these.  (Reported by Alexander Fowler in PR#17964.)
  NEW FEATURES:
  * www.omegahat.net is no longer one of the repositories known by
    default to setRepositories().  (Nowadays it only provides source
    packages and is often unavailable.)
  * Function package_dependencies() (in package tools) can now use
    different dependency types for direct and recursive dependencies.
  * The checking of the size of tarball in R CMD check --as-cran
    &lt;pkg&gt; may be tweaked via the new environment variable
    _R_CHECK_CRAN_INCOMING_TARBALL_THRESHOLD_, as suggested in
    PR#17777 by Jan Gorecki.
  * Using c() to combine a factor with other factors now gives a
    factor, an ordered factor when combining ordered factors with
    identical levels.
  * apply() gains a simplify argument to allow disabling of
    simplification of results.
  * The format() method for class "ftable" gets a new option justify.
    (Suggested by Thomas Soeiro.)
  * New ...names() utility.  (Proposed by Neal Fultz in PR#17705.)
  * type.convert() now warns when its as.is argument is not
    specified, as the help file always said it _should_.  In that
    case, the default is changed to TRUE in line with its change in
    read.table() (related to stringsAsFactor) in R 4.0.0.
  * When printing list arrays, classed objects are now shown _via_
    their format() value if this is a short enough character string,
    or by giving the first elements of their class vector and their
    length.
  * capabilities() gets new entry "Rprof" which is TRUE when R has
    been configured with the equivalent of --enable-R-profiling (as
    it is by default).  (Related to Michael Orlitzky's report
    PR#17836.)
  * str(xS4) now also shows extraneous attributes of an S4 object
    xS4.
  * Rudimentary support for vi-style tags in rtags() and R CMD rtags
    has been added.  (Based on a patch from Neal Fultz in PR#17214.)
  * checkRdContents() is now exported from tools; it and also
    checkDocFiles() have a new option chkInternal allowing to check
    Rd files marked with keyword "internal" as well.  The latter can
    be activated for R CMD check via environment variable
    _R_CHECK_RD_INTERNAL_TOO_.
  * New functions numToBits() and numToInts() extend the raw
    conversion utilities to (double precision) numeric.
  * Functions URLencode() and URLdecode() in package utils now work
    on vectors of URIs.  (Based on patch from Bob Rudis submitted
    with PR#17873.)
  * path.expand() can expand ~user on most Unix-alikes even when
    readline is not in use.  It tries harder to expand ~, for example
    should environment variable HOME be unset.
  * For HTML help (both dynamic and static), Rd file links to help
    pages in external packages are now treated as references to
    topics rather than file names, and fall back to a file link only
    if the topic is not found in the target package. The earlier rule
    which prioritized file names over topics can be restored by
    setting the environment variable _R_HELP_LINKS_TO_TOPICS_ to a
    false value.
  * c() now removes NULL arguments before dispatching to methods,
    thus simplifying the implementation of c() methods, _but_ for
    back compatibility keeps NULL when it is the first argument.
    (From a report and patch proposal by Lionel Henry in PR#17900.)
  * Vectorize()'s result function's environment no longer keeps
    unneeded objects.
  * Function ...elt() now propagates visibility consistently with
    ..n.  (Thanks to Lionel Henry's PR#17905.)
  * capture.output() no longer uses non-standard evaluation to
    evaluate its arguments.  This makes evaluation of functions like
    parent.frame() more consistent.  (Thanks to Lionel Henry's
    PR#17907.)
  * packBits(bits, type="double") now works as inverse of
    numToBits().  (Thanks to Bill Dunlap's proposal in PR#17914.)
  * curlGetHeaders() has two new arguments, timeout to specify the
    timeout for that call (overriding getOption("timeout")) and TLS
    to specify the minimum TLS protocol version to be used for
    https:// URIs (_inter alia_ providing a means to check for sites
    using deprecated TLS versions 1.0 and 1.1).
  * For nls(), an optional constant scaleOffset may be added to the
    denominator of the relative offset convergence test for cases
    where the fit of a model is expected to be exact, thanks to a
    proposal by John Nash.  nls(*, trace=TRUE) now also shows the
    convergence criterion.
  * Numeric differentiation _via_ numericDeriv() gets new optional
    arguments eps and central, the latter for taking central divided
    differences.  The latter can be activated for nls() via
    nls.control(nDcentral = TRUE).
  * nls() now passes the trace and control arguments to getInitial(),
    notably for all self-starting models, so these can also be fit in
    zero-noise situations via a scaleOffset.  For this reason, the
    initial function of a selfStart model must now have ... in its
    argument list.
  * bquote(splice = TRUE) can now splice expression vectors with
    attributes: this makes it possible to splice the result of
    parse(keep.source = TRUE).  (Report and patch provided by Lionel
    Henry in PR#17869.)
  * textConnection() gets an optional name argument.
  * get(), exists(), and get0() now signal an error if the first
    argument has length greater than 1.  Previously additional
    elements were silently ignored.  (Suggested by Antoine Fabri on
    R-devel.)
  * R now provides a shorthand notation for creating functions, e.g.
    \(x) x + 1 is parsed as function(x) x + 1.
  * R now provides a simple native forward pipe syntax |&gt;.  The
    simple form of the forward pipe inserts the left-hand side as the
    first argument in the right-hand side call.  The pipe
    implementation as a syntax transformation was motivated by
    suggestions from Jim Hester and Lionel Henry.
  * all.equal(f, g) for functions now by default also compares their
    environment(.)s, notably via new all.equal method for class
    function.  Comparison of nls() fits, e.g., may now need
    all.equal(m1, m2, check.environment = FALSE).
  * .libPaths() gets a new option include.site, allowing to _not_
    include the site library.  (Thanks to Dario Strbenac's suggestion
    and Gabe Becker's PR#18016.)
  * Lithuanian translations are now available.  (Thanks to Rimantas
    Zakauskas.)
  * names() now works for DOTSXP objects.  On the other hand, in
    R-lang, the R language manual, we now warn against relying on the
    structure or even existence of such dot-dot-dot objects.
  * all.equal() no longer gives an error on DOTSXP objects.
  * capabilities("cairo") now applies only to the file-based devices
    as it is now possible (if very unusual) to build R with Cairo
    support for those but not for X11().
  * There is optional support for tracing the progress of
    loadNamespace() - see its help.
  * (Not Windows.)  l10n_info() reports an additional element, the
    name of the encoding as reported by the OS (which may differ from
    the encoding part (if any) of the result from
    Sys.getlocale("LC_CTYPE").
  * New function gregexec() which generalizes regexec() to find _all_
    disjoint matches and well as all substrings corresponding to
    parenthesized subexpressions of the given regular expression.
    (Contributed by Brodie Gaslam.)
  * New function charClass() in package utils to query the
    wide-character classification functions in use (such as
    iswprint).
  * The names of quantile()'s result no longer depend on the global
    getOption("digits"), but quantile() gets a new optional argument
    digits = 7 instead.
  * grep(), sub(), regexp and variants work considerably faster for
    long factors with few levels.  (Thanks to Michael Chirico's
    PR#18063.)
  * Provide grouping of x11() graphics windows within a window
    manager such as Gnome or Unity; thanks to a patch by Ivan Krylov
    posted to R-devel.
  * The split() method for class data.frame now allows the f argument
    to be specified as a formula.
  * sprintf now warns on arguments unused by the format string.
  * New palettes "Rocket" and "Mako" for hcl.colors() (approximating
    palettes of the same name from the 'viridisLite' package).
    Contributed by Achim Zeileis.
  * The base environment and its namespace are now locked (so one can
    no longer add bindings to these or remove from these).
  * Rterm handling of multi-byte characters has been improved,
    allowing use of such characters when supported by the current
    locale.
  * Rterm now accepts ALT+ +xxxxxxxx sequences to enter Unicode
    characters as hex digits.
  * Environment variable LC_ALL on Windows now takes precedence over
    LC_CTYPE and variables for other supported categories, matching
    the POSIX behaviour.
  * duplicated() and anyDuplicated() are now optimized for integer
    and real vectors that are known to be sorted via the ALTREP
    framework. Contributed by Gabriel Becker via PR#17993.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 14
    and so packages that provide graphics devices should be
    reinstalled.
  * Graphics devices should now specify deviceVersion to indicate
    what version of the graphics engine they support.
  * Graphics devices can now specify deviceClip.  If TRUE, the
    graphics engine will never perform any clipping of output itself.
    The clipping that the graphics engine does perform (for both
    canClip = TRUE and canClip = FALSE) has been improved to avoid
    producing unnecessary artifacts in clipped output.
  * The grid package now allows gpar(fill) to be a linearGradient(),
    a radialGradient(), or a pattern().  The viewport(clip) can now
    also be a grob, which defines a clipping path, and there is a new
    viewport(mask) that can also be a grob, which defines a mask.
    These new features are only supported so far on the Cairo-based
    graphics devices and on the pdf() device.
  * (Not Windows.)  A warning is given when a Cairo-based type is
    specified for a png(), jpeg(), tiff() or bmp() device but Cairo
    is unsupported (so type = "Xlib" is tried instead).
  * grSoftVersion() now reports the versions of FreeType and
    FontConfig if they are used directly (not _via_ Pango), as is
    most commonly done on macOS.
  C-LEVEL FACILITIES:
  * The _standalone_ libRmath math library and R's C API now provide
    log1pexp() again as documented, and gain log1mexp().
  INSTALLATION on a UNIX-ALIKE:
  * configure checks for a program pkgconf if program pkg-config is
    not found.  These are now only looked for on the path (like
    almost all other programs) so if needed specify a full path to
    the command in PKG_CONFIG, for example in file config.site.
  * C99 function iswblank is required - it was last seen missing ca
    2003 so the workaround has been removed.
  * There are new configure options --with-internal-iswxxxxx,
  - -with-internal-towlower and --with-internal-wcwidth which allows
    the system functions for wide-character classification,
    case-switching and width (wcwidth and wcswidth) to be replaced by
    internal ones.  The first has long been used on macOS, AIX (and
    Windows) but this enables it to be unselected there and selected
    for other platforms (it is the new default on Solaris).  The
    second is new in this version of R and is selected by default on
    macOS and Solaris.  The third has long been the default and
    remains so as it contains customizations for East Asian
    languages.
    System versions of these functions are often minimally
    implemented (sometimes only for ASCII characters) and may not
    cover the full range of Unicode points: for example Solaris (and
    Windows) only cover the Basic Multilingual Plane.
  * Cairo installations without X11 are more likely to be detected by
    configure, when the file-based Cairo graphics devices will be
    available but not X11(type = "cairo").
  * There is a new configure option --with-static-cairo which is the
    default on macOS.  This should be used when only static cairo
    (and where relevant, Pango) libraries are available.
  * Cairo-based graphics devices on platforms without Pango but with
    FreeType/FontConfig will make use of the latter for font
    selection.
  LINK-TIME OPTIMIZATION on a UNIX-ALIKE:
  * Configuring with flag --enable-lto=R now also uses LTO when
    installing the recommended packages.
  * R CMD INSTALL and R CMD SHLIB have a new flag --use-LTO to use
    LTO when compiling code, for use with R configured with
  - -enable-lto=R.  For R configured with --enable-lto, they have
    the new flag --no-use-LTO.
    Packages can opt in or out of LTO compilation _via_ a UseLTO
    field in the DESCRIPTION file.  (As usual this can be overridden
    by the command-line flags.)
  BUILDING R on Windows:
  * for GCC &gt;= 8, FC_LEN_T is defined in config.h and hence character
    lengths are passed from C to Fortran in _inter alia_ BLAS and
    LAPACK calls.
  * There is a new text file src/gnuwin32/README.compilation, which
    outlines how C/Fortran code compilation is organized and
    documents new features:
  * R can be built with Link-Time Optimization with a suitable
    compiler - doing so with GCC 9.2 showed several
    inconsistencies which have been corrected.
  * There is support for cross-compiling the C and Fortran code
    in R and standard packages on suitable (Linux) platforms.
    This is mainly intended to allow developers to test later
    versions of compilers - for example using GCC 9.2 or 10.x has
    detected issues that GCC 8.3 in Rtools40 does not.
  * There is experimental support for cross-building R packages
    with C, C++ and/or Fortran code.
  * The R installer can now be optionally built to support a single
    architecture (only 64-bit or only 32-bit).
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++14 where
    available (which it is on all currently checked platforms): if
    not (as before) C++11 is used if available otherwise C++ is not
    supported.
    Packages which specify C++11 will still be installed using C++11.
    C++14 compilers may give deprecation warnings, most often for
    std::random_shuffle (deprecated in C++14 and removed in C++17).
    Either specify C++11 (see 'Writing R Extensions') or modernize
    the code and if needed specify C++14.  The latter has been
    supported since R 3.4.0 so the package's DESCRIPTION would need
    to include something like
    Depends: R (&gt;= 3.4)
  PACKAGE INSTALLATION on Windows:
  * R CMD INSTALL and R CMD SHLIB make use of their flag --use-LTO
    when the LTO_OPT make macro is set in file etc/${R_ARCH}/Makeconf
    or in a personal/site Makevars file.  (For details see 'Writing R
    Extensions' SS4.5.)
    This provides a valuable check on code consistency.  It does work
    with GCC 8.3 as in Rtools40, but that does not detect everything
    the CRAN checks with current GCC do.
  PACKAGE INSTALLATION on macOS:
  * The default personal library directory on builds with
  - -enable-aqua (including CRAN builds) now differs by CPU type,
    one of
    ~/Library/R/x86_64/x.y/library
    ~/Library/R/arm64/x.y/library
    This uses the CPU type R (and hence the packages) were built for,
    so when a x86_64 build of R is run under Rosetta emulation on an
    arm64 Mac, the first is used.
  UTILITIES:
  * R CMD check can now scan package functions for bogus return
    statements, which were possibly intended as return() calls (wish
    of PR#17180, patch by Sebastian Meyer). This check can be
    activated via the new environment variable
    _R_CHECK_BOGUS_RETURN_, true for --as-cran.
  * R CMD build omits tarballs and binaries of previous builds from
    the top-level package directory.  (PR#17828, patch by Sebastian
    Meyer.)
  * R CMD check now runs sanity checks on the use of LazyData, for
    example that a data directory is present and that
    LazyDataCompression is not specified without LazyData and has a
    documented value.  For packages with large LazyData databases
    without specifying LazyDataCompression, there is a reference to
    the code given in 'Writing R Extensions' SS1.1.6 to test the
    choice of compression (as in all the CRAN packages tested a
    non-default method was preferred).
  * R CMD build removes LazyData and LazyDataCompression fields from
    the DESCRIPTION file of packages without a data directory.
  ENCODING-RELATED CHANGES:
  * The parser now treats \Unnnnnnnn escapes larger than the upper
    limit for Unicode points (\U10FFFF) as an error as they cannot be
    represented by valid UTF-8.
    Where such escapes are used for outputting non-printable
    (including unassigned) characters, 6 hex digits are used (rather
    than 8 with leading zeros).  For clarity, braces are used, for
    example \U{0effff}.
  * The parser now looks for non-ASCII spaces on Solaris (as
    previously on most other OSes).
  * There are warnings (including from the parser) on the use of
    unpaired surrogate Unicode points such as \uD834.  (These cannot
    be converted to valid UTF-8.)
  * Functions nchar(), tolower(), toupper() and chartr() and those
    using regular expressions have more support for inputs with a
    marked Latin-1 encoding.
  * The character-classification functions used (by default) to
    replace the system iswxxxxx functions on Windows, macOS and AIX
    have been updated to Unicode 13.0.0.
    The character-width tables have been updated to include new
    assignments in Unicode 13.0.0.
  * The code for evaluating default (extended) regular expressions
    now uses the same character-classification functions as the rest
    of R (previously they differed on Windows, macOS and AIX).
  * There is a build-time option to replace the system's
    wide-character wctrans C function by tables shipped with R: use
    configure option --with-internal-towlower or (on Windows)
  - DUSE_RI18N_CASE in CFLAGS when building R.  This may be needed
    to allow tolower() and toupper() to work with Unicode characters
    beyond the Basic Multilingual Plane where not supported by system
    functions (e.g. on Solaris where it is the new default).
  * R is more careful when truncating UTF-8 and other multi-byte
    strings that are too long to be printed, passed to the system or
    libraries or placed into an internal buffer.  Truncation will no
    longer produce incomplete multibyte characters.
  DEPRECATED AND DEFUNCT:
  * Function plclust() from the package stats and
    package.dependencies(), pkgDepends(), getDepList(),
    installFoundDepends(), and vignetteDepends() from package tools
    are defunct.
  * Defunct functions checkNEWS() and readNEWS() from package tools
    and CRAN.packages() from utils have been removed.
  * R CMD config CXXCPP is defunct (it was deprecated in R 3.6.2).
  * parallel::detectCores() drops support for Irix (retired in 2013).
  * The LINPACK argument to chol.default(), chol2inv(),
    solve.default() and svd() has been defunct since R 3.1.0.  It was
    silently ignored up to R 4.0.3 but now gives an error.
  * Subsetting/indexing, such as ddd[*] or ddd$x on a DOTSXP
    (dot-dot-dot) object ddd has been disabled; it worked by accident
    only and was undocumented.
  BUG FIXES:
  * Many more C-level allocations (mainly by malloc and strdup) are
    checked for success with suitable alternative actions.
  * Bug fix for replayPlot(); this was turning off graphics engine
    display list recording if a recorded plot was replayed in the
    same session.  The impact of the bug became visible if resize the
    device after replay OR if attempted another savePlot() after
    replay (empty display list means empty screen on resize or empty
    saved plot).
  * R CMD check etc now warn when a package exports non-existing S4
    classes or methods, also in case of no "methods" presence.
    (Reported by Alex Bertram; reproducible example and patch by
    Sebastian Meyer in PR#16662.)
  * boxplot() now also accepts calls for labels such as ylab, the
    same as plot().  (Reported by Marius Hofert.)
  * The help page for xtabs() now correctly states that addNA is
    setting na.action = na.pass among others.  (Reported as PR#17770
    by Thomas Soeiro.)
  * The R CMD check &lt;pkg&gt; gives a longer and more comprehensible
    message when DESCRIPTION misses dependencies, e.g., in Imports:.
    (Thanks to the contributors of PR#17179.)
  * update.default() now calls the generic update() on the formula to
    work correctly for models with extended formulas.  (As reported
    and suggested by Neal Fultz in PR#17865.)
  * The horizontal position of leaves in a dendrogram is now correct
    also with center = FALSE.  (PR#14938, patch from Sebastian
    Meyer.)
  * all.equal.POSIXt() no longer warns about and subsequently ignores
    inconsistent "tzone" attributes, but describes the difference in
    its return value (PR#17277).  This check can be disabled _via_
    the new argument check.tzone = FALSE as suggested by Sebastian
    Meyer.
  * as.POSIXct() now populates the "tzone" attribute from its tz
    argument when x is a logical vector consisting entirely of NA
    values.
  * x[[2^31]] &lt;- v now works.  (Thanks to the report and patch by
    Suharto Anggono in PR#17330.)
  * In log-scale graphics, axis() ticks and label positions are now
    computed more carefully and symmetrically in their range,
    typically providing _more_ ticks, fulfilling wishes in PR#17936.
    The change really corresponds to an improved axisTicks() (package
    grDevices), potentially influencing grid and lattice, for
    example.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now correct to at
    least five digits where it was catastrophically wrong,
    previously.
  * sum(df) and similar "Summary"- and "Math"-group member functions
    now work for data frames df with logical columns, notably also of
    zero rows.  (Reported to R-devel by Martin "b706".)
  * unsplit() had trouble with tibbles due to unsound use of rep(NA,
    len)-indexing, which should use NA_integer_ (Reported to R-devel
    by Mario Annau.)
  * pnorm(x, log.p = TRUE) underflows to -Inf slightly later.
  * show(&lt;hidden S4 generic&gt;) prints better and without quotes for
    non-hidden S4 generics.
  * read.table() and relatives treated an "NA" column name as missing
    when check.names = FALSE PR#18007.
  * Parsing strings containing UTF-16 surrogate pairs such as
    "\uD834\uDD1E" works better on some (uncommon) platforms.
    sprintf("%X", utf8ToInt("\uD834\uDD1E")) should now give "1D11E"
    on all platforms.
  * identical(x,y) is no longer true for differing DOTSXP objects,
    fixing PR#18032.
  * str() now works correctly for DOTSXP and related exotics, even
    when these are doomed.
    Additionally, it no longer fails for lists with a class and
    "irregular" method definitions such that e.g. lapply(*) will
    necessarily fail, as currently for different igraph objects.
  * Too long lines in environment files (e.g. Renviron) no longer
    crash R. This limit has been increased to 100,000 bytes.
    (PR#18001.)
  * There is a further workaround for FreeType giving incorrect
    italic font faces with cairo-based graphics devices on macOS.
  * add_datalist(*, force = TRUE) (from package tools) now actually
    updates an existing data/datalist file for new content.  (Thanks
    to a report and patch by Sebastian Meyer in PR#18048.)
  * cut.Date() and cut.POSIXt() could produce an empty last interval
    for breaks = "months" or breaks = "years".  (Reported as PR#18053
    by Christopher Carbone.)
  * Detection of the encoding of 'regular' macOS locales such as
    en_US (which is UTF-8) had been broken by a macOS change:
    fortunately these are now rarely used with en_US.UTF-8 being
    preferred.
  * sub() and gsub(pattern, repl, x, *) now keep attributes of x such
    as names() also when pattern is NA (PR#18079).
  * Time differences ("difftime" objects) get a replacement and a
    rep() method to keep "units" consistent.  (Thanks to a report and
    patch by Nicolas Bennett in PR#18066.)
  * The \RdOpts macro, setting defaults for \Sexpr options in an Rd
    file, had been ineffective since R 2.12.0: it now works again.
    (Thanks to a report and patch by Sebastian Meyer in PR#18073.)
  * mclapply and pvec no longer accidentally terminate parallel
    processes started before by mcparallel or related calls in
    package parallel (PR#18078).
  * grep and other functions for evaluating (extended) regular
    expressions handle in Unicode also strings not explicitly flagged
    UTF-8, but flagged native when running in UTF-8 locale.
  * Fixed a crash in fifo implementation on Windows (PR#18031).
  * Binary mode in fifo on Windows is now properly detected from
    argument open (PR#15600, PR#18031).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1622808000">- The line %{__install} -m 755 -d %{_infodir}
  no longer works in TW or Factory.
  But without that line it works everywhere. So this instruction
  was commented out of the spec file.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1628596800">- CHANGES IN R 4.1.1:
  NEW FEATURES:
  * require(pkg, quietly = TRUE) is quieter and in particular does
    not warn if the package is not found.
  DEPRECATED AND DEFUNCT:
  * Use of ftp:// URIs should be regarded as deprecated, with
    on-going support confined to method = "libcurl" and not routinely
    tested.  (Nowadays no major browser supports them.)
  * The non-default method = "internal" is deprecated for http:// and
    ftp:// URIs for both download.file and url.
  * On Windows, method = "wininet" is deprecated for http://,
    https:// and ftp:// URIs for both download.file and url.  (A
    warning is only given for ftp://.)
    For ftp:// URIs the default method is now "libcurl" if available
    (which it is on CRAN builds).
    method = "wininet" remains the default for http:// and https://
    URIs but if libcurl is available, using method = "libcurl" is
    preferred.
  INSTALLATION:
  * make check now works also without a LaTeX installation.  (Thanks
    to Sebastian Meyer's PR#18103.)
  BUG FIXES:
  * make check-devel works again in an R build configured with
  - -without-recommended-packages.
  * qnbinom(p, size, mu) for large size/mu is correct now in a range
    of cases (PR#18095); similarly for the (size, prob)
    parametrization of the negative binomial.  Also qpois() and
    qbinom() are better and or faster for extreme cases.  The
    underlying C code has been modularized and is common to all four
    cases of discrete distributions.
  * gap.axis is now part of the axis() arguments which are passed
    from bxp(), and hence boxplot().  (Thanks to Martin Smith's
    report and suggestions in PR#18109.)
  * .First and .Last can again be set from the site profile.
  * seq.int(from, to, *) and seq.default(..) now work better in large
    range cases where from-to is infinite where the two boundaries
    are finite.
  * all.equal(x,y) now returns TRUE correctly also when several
    entries of abs(x) and abs(y) are close to .Machine$double.xmax,
    the largest finite numeric.
  * model.frame() now clears the object bit when removing the class
    attribute of a value via na.action (PR#18100).
  * charClass() now works with multi-character strings on Windows
    (PR#18104, fixed by Bill Dunlap).
  * encodeString() on Solaris now works again in Latin-1 encoding on
    characters represented differently in UTF-8.  Support for
    surrogate pairs on Solaris has been improved.
  * file.show() on Windows now works with non-ASCII path names
    representable in the current native encoding (PR#18132).
  * Embedded R on Windows can now find R home directory via the
    registry even when installed only for the current user
    (PR#18135).
  * pretty(x) with finite x now returns finite values also in the
    case where the extreme x values are close in size to the maximal
    representable number .Machine$double.xmax.
    Also, it's been tweaked for very small ranges and when a boundary
    is close (or equal) to zero; e.g., pretty(c(0,1e-317)) no longer
    has negative numbers, currently still warning about a very small
    range, and pretty(2^-(1024 - 2^-1/(c(24,10)))) is more accurate.
  * The error message for not finding vignette files when weaving has
    correct file sizes now. (Thanks to Sebastian Meyer's PR#18154.)
  * dnbinom(20, &lt;large&gt;, 1) now correctly gives 0, and similar cases
    are more accurate with underflow precaution.  (Reported by Francisco Vera Alcivar in PR#18072.)</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635163200">- repaired https://bugzilla.suse.com/show_bug.cgi?id=1191380
  (rpmacros now go to rpmmacrodir)
- minor clean-ups in spec file</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635768000">- CHANGES IN R 4.1.2:
  C-LEVEL FACILITIES:
  * The workaround in headers R.h and Rmath.h (using namespace std;)
    for the Oracle Developer Studio compiler is no longer needed now
    C++11 is required so has been removed.  A couple more usages of
    log() (which should have been std::log()) with an int argument
    are reported on Solaris.
  * The undocumented limit of 4095 bytes on messages from the
    S-compatibility macros PROBLEM and MESSAGE is now documented and
    longer messages will be silently truncated rather than
    potentially causing segfaults.
  * If the R_NO_SEGV_HANDLER environment variable is non-empty, the
    signal handler for SEGV/ILL/BUS signals (which offers recovery
    user interface) is not set. This allows more reliable debugging
    of crashes that involve the console.
  DEPRECATED AND DEFUNCT:
  * The legacy S-compatibility macros PROBLEM, MESSAGE, ERROR, WARN,
    WARNING, RECOVER, ... are deprecated and will be hidden in R
    4.2.0. R's native interface of Rf_error and Rf_warning has long
    been preferred.
  BUG FIXES:
  * .mapply(F, dots, .) no longer segfaults when dots is not a list
    and uses match.fun(F) as always documented; reported by Andrew
    Simmons in PR#18164.
  * hist(&lt;Date&gt;, ...) and hist(&lt;POSIXt&gt;, ...)  no longer pass
    arguments for rect() (such as col and density) to axis().
    (Thanks to Sebastian Meyer's PR#18171.)
  * \Sexpr{ch} now preserves Encoding(ch). (Thanks to report and
    patch by Jeroen Ooms in PR#18152.)
  * Setting the RNG to "Marsaglia-Multicarry" e.g., by RNGkind(), now
    warns in more places, thanks to Andr'e Gillibert's report and
    patch in PR#18168.
  * gray(numeric(), alpha=1/2) no longer segfaults, fixing PR#18183,
    reported by Till Krenz.
  * Fixed dnbinom(x, size=&lt;very_small&gt;, .., log=TRUE) regression,
    reported by Martin Morgan.
  * as.Date.POSIXlt(x) now keeps names(x), thanks to Davis Vaughan's
    report and patch in PR#18188.
  * model.response() now strips an "AsIs" class typically, thanks to
    Duncan Murdoch's report and other discussants in PR#18190.
  * try() is considerably faster in case of an error and long call,
    as e.g., from some do.call().  Thanks to Alexander Kaever's
    suggestion posted to R-devel.
  * qqline(y = &lt;object&gt;) such as y=I(.), now works, see also
    PR#18190.
  * Non-integer mgp par() settings are now handled correctly in
    axis() and mtext(), thanks to Mikael Jagan and Duncan Murdoch's
    report and suggestion in PR#18194.
  * formatC(x) returns length zero character() now, rather than ""
    when x is of length zero, as documented, thanks to Davis
    Vaughan's post to R-devel.
  * removeSource(fn) now retains (other) attributes(fn).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1647000000">- CHANGES IN R 4.1.3:
  NEW FEATURES:
  * The default version of Bioconductor has been changed to 3.14.
    (This is used by setRepositories and the menus in GUIs.)
  UTILITIES:
  * R CMD check --as-cran has a workaround for a bug in versions of
    file up to at least 5.41 which mis-identify DBF files last
    changed in 2022 as executables.
  C-LEVEL FACILITIES:
  * The legacy S-compatibility macros SINGLE_* in R_ext/Constants.h
    (included by R.h) are deprecated and will be removed in R 4.2.0.
  BUG FIXES:
  * Initialization of self-starting nls() models with initialization
    functions following the pre-R-4.1.0 API (without the ...
    argument) works again for now, with a deprecation warning.
  * Fixed quoting of ~autodetect~ in Java setting defaults to avoid
    inadvertent user lookup due to leading ~, reported in PR#18231 by
    Harold Gutch.
  * substr(., start, stop) &lt;- v now treats _negative_ stop values
    correctly.  Reported with a patch in PR#18228 by Brodie Gaslam.
  * Subscripting an array x without dimnames by a
    length(dim(x))-column character matrix gave "random" non-sense,
    now an error; reported in PR#18244 by Mikael Jagan.
  * ...names() now matches names(list(...)) closely, fixing PR#18247.
  * all.equal(*, scale = s) now works as intended when length(s) &gt; 1,
    partly thanks to Michael Chirico's PR#18272.
  * print(x) for long vectors x now also works for named atomic
    vectors or lists and prints the correct number when reaching the
    getOption("max.print") limit; partly thanks to a report and
    proposal by Hugh Parsonage to the R-devel list.
  * all.equal(&lt;selfStart&gt;, *) no longer signals a deprecation
    warning.
  * reformulate(*, response=r) gives a helpful error message now when
    length(r) &gt; 1, thanks to Bill Dunlap's PR#18281.
  * Modifying globalCallingHandlers inside withCallingHandlers() now
    works or fails correctly, thanks to Henrik Bengtsson's PR#18257.
  * hist(&lt;Date&gt;, breaks = "days") and hist(&lt;POSIXt&gt;, breaks = "secs")
    no longer fail for inputs of length 1.
  * qbeta(.001, .9, .009) and similar cases now converge correctly
    thanks to Ben Bolker's report in PR#17746.
  * window(x, start, end) no longer wrongly signals "'start' cannot
    be after 'end'", fixing PR#17527 and PR#18291.
  * data() now checks that its (rarely used) list argument is a
    character vector - a couple of packages passed other types and
    gave incorrect results.
  * which() now checks its arr.ind argument is TRUE rather coercing
    to logical and taking the first element - which gave incorrect
    results in package code.
  * model.weights() and model.offset() more carefully extract their
    model components, thanks to Ben Bolker and Tim Taylor's R-devel
    post.
  * list.files(recursive = TRUE) now shows all broken symlinks
    (previously, some of them may have been omitted, PR#18296).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1650628800">- CHANGES IN R 4.2.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * The formula method of aggregate() now matches the generic in
    naming its first argument x (resolving PR#18299 by Thomas
    Soeiro).
    This means that calling aggregate() with a formula as a named
    first argument requires name formula in earlier versions of R and
    name x now, so portable code should not name the argument (code
    in many packages did).
  * Calling &amp;&amp; or || with either argument of length greater than one
    now gives a warning (which it is intended will become an error).
  * Calling if() or while() with a condition of length greater than
    one gives an error rather than a warning.  Consequently,
    environment variable _R_CHECK_LENGTH_1_CONDITION_ no longer has
    any effect.
  * Windows users should consult the WINDOWS section below for some
    profound changes including
  * Support for 32-bit builds has been dropped.
  * UTF-8 locales are used where available.
  * The default locations for the R installation and personal
    library folder have been changed.
    Thanks to Tomas Kalibera for months of work on the Windows port
    for this release.
  NEW FEATURES:
  * matrix(x, n, m) now warns in more cases where length(x) differs
    from n * m, as suggested by Abby Spurdle and Wolfgang Huber in
    Feb 2021 on the R-devel mailing list.
    This warning can be turned into an error by setting environment
    variable _R_CHECK_MATRIX_DATA_ to TRUE: R CMD check --as-cran
    does so unless it is already set.
  * Function file_test() in package utils gains tests for symlinks,
    readability and writability.
  * capabilities("libxml") is now false.
    The description of capabilities("http/ftp") now reflects that it
    refers to the default method, no longer the internal one.
  * simplify2array() gains an except argument for controlling the
    exceptions used by sapply().
  * Environment variables R_LIBS_USER and R_LIBS_SITE are both now
    set to the R system default if unset or empty, and can be set to
    NULL to indicate an empty list of user or site library
    directories.
  * The warning for axis()(-like) calls in cases of relatively small
    ranges (typically in log-scale situations) is slightly improved
    _and_ suppressed from explicit calls to .axisPars() as has always
    been the intention.
  * The contrasts setter function `contrasts&lt;-` gains an explicit
    default how.many = NULL rather than just using missing(how.many).
  * grid.pretty() gains a new optional argument n = 5.
  * There is a new function .pretty() with option bounds as a
    technical-utility version of pretty().  It and pretty() gain a
    new argument f.min with a better than back-compatible default.
  * Function grDevices::axisTicks() and related functions such as
    graphics::axis() work better, notably for the log scale; partly
    because of the pretty() improvements, but also because care is
    taken e.g., when ylim is finite but diff(ylim) is infinite.
  * nclass.FD() gains a digits option.
  * The R Mathlib internal C function bd0() (called indirectly from a
    dozen probability density and distribution functions such as
    dpois(), dbinom(), dgamma(), pgamma() _etc_) has been
    complemented by a more sophisticated and (mostly) more accurate C
    function ebd0(), currently called only by internal dpois_raw()
    improving accuracy for R level dpois() and potentially others
    calling it such as dnbinom(), dgamma() or pgamma().  (Thanks to
    Morten Welinder's PR#15628.)
  * write.ftable() gains sep = " " argument as suggested by Thomas
    Soeiro.
  * The names of the locale categories supported by R's
    Sys.getlocale() and Sys.setlocale() are now provided by variable
    .LC.categories in the base namespace.
  * The Date and POSIXt methods for hist() and the histogram method
    for plot() now also use the new default col = "lightgray" in
    consistency with the corresponding change to hist()'s default for
    R 4.0.0.
  * hist.default() gains new fuzz argument, and the histogram plot
    method no longer uses fractional axis ticks when displaying
    counts ("Frequency").
  * mapply() and hence Map() now also obey the "max-or-0-if-any"
    recycling rule, such that, e.g., Map(`+`, 1:3, 1[0]) is valid
    now.
  * as.character(&lt;obj&gt;) for "hexmode" or "octmode" objects now
    fulfils the important basic rule as.character(x)[j] ===
    as.character(x[j]).
  * The set utility functions, notably intersect() have been tweaked
    to be more consistent and symmetric in their two set arguments,
    also preserving a common mode.
  * substr(ch, start,end) &lt;- new now e.g., preserves names(ch); ditto
    for substring(), thanks to a patch from Brodie Gaslam.
  * plot(&lt;lm&gt;) gains a extend.ylim.f argument, in partial response to
    PR#15285; further PR#17784 is fixed thanks to several
    contributors and a patch by Elin Waring.  The Cook's dist
    contours get customizable via cook.col and cook.lty with a
    different default color and their legend is nicer by default and
    customizable via cook.legendChanges.
  * Attempting to subset an object that is not subsettable now
    signals an error of class notSubsettableError. The
    non-subsettable object is contained in the object field of the
    error condition.
  * Subscript-out-of-bounds errors are now signaled as errors of
    class subscriptOutOfBoundsError.
  * Stack-overflow errors are now signaled as errors inheriting from
    class stackOverflowError. See ?stackOverflowError for more
    details.
  * New partly experimental Sys.setLanguage() utility, solving the
    main problem of PR#18055.
  * gettext() and gettextf() get a new option trim = TRUE which when
    set to false allows translations for strings such as "Execution
    halted\n" typical for C code.
  * An experimental implementation of hash tables is now available.
    See ?hashtab for more details.
  * identical() gains a extptr.as.ref argument for requesting that
    external pointer objects be compared as reference objects.
  * reorder() gets an argument decreasing which it passes to sort()
    for level creation; based on the wish and patch by Thomas Soeiro
    in PR#18243.
  * as.vector() gains a data.frame method which returns a simple
    named list, also clearing a long standing 'FIXME' to enable
    as.vector(&lt;data.frame&gt;, mode="list").  This breaks code relying
    on as.vector(&lt;data.frame&gt;) to return the unchanged data frame.
  * legend() is now vectorized for arguments cex, x.intersp, and
    text.width.  The latter can now also be specified as a vector
    (one element for each column of the legend) or as NA for
    computing a proper column wise maximum value of strwidth(legend).
    The argument y.intersp can be specified as a vector with one
    entry for each row of the legend.
    legend() also gains new arguments title.cex and title.font.
    Thanks to Swetlana Herbrandt.
  * Deparsing no longer remaps attribute names dim, dimnames, levels,
    names and tsp to historical S-compatible names (which structure()
    maps back).
  * sample() and sample.int() have additional sanity checks on their
    size and n arguments.
    all.equal.numeric() gains a sanity check on its tolerance
    argument - calling all.equal(a, b, c) for three numeric vectors
    is a surprisingly common error.
    mean(na.rm =), rank(na.last =), barplot(legend.text =),
    boxplot(), contour(drawlabels =), polygon(border =) and
    methods::is(class2 =) have more robust sanity checks on their
    arguments.
    R CMD Rd2pdf (used by R CMD check) has a more robust sanity check
    on the format of \alias{} commands.
  * psigamma(x, deriv) for negative x now also works for deriv = 4
    and 5; their underlying C level dpsifn() is documented in
    'Writing R Extensions'.
  * The HTML help system now uses HTML5 (wish of PR#18149).
  * ks.test() now provides exact p-values also with ties and MC
    p-values in the two-sample (Smirnov) case.  By Torsten Hothorn.
  * ks.test() gains a formula interface, with y ~ 1 for the
    one-sample (Kolmogorov) test and y ~ group for the two-sample
    (Smirnov) test.  Contributed by Torsten Hothorn.
  * The return value from ks.test() now has class c("ks.test",
    "htest") - packages using try() need to take care to use
    inherits() and not == on the class.
  * New functions psmirnov(), qsmirnov() and rsmirnov() in package
    stats implementing the asymptotic and exact distributions of the
    two-sample Smirnov statistic.
  * iconv() now allows sub = "c99" to use C99-style escapes for UTF-8
    inputs which cannot be converted to encoding to.
  * In a forward pipe |&gt; expression it is now possible to use a named
    argument with the placeholder _ in the rhs call to specify where
    the lhs is to be inserted.  The placeholder can only appear once
    on the rhs.
  * The included LAPACK sources have been updated to version 3.10.0,
    except for the four Fortran 77 routines which 3.10.0 has
    re-implemented in Fortran 90 (where the older versions have been
    retained as the R build process does not support Fortran 90).
  * path.expand() and most other uses of tilde expansion now warn if
    a path would be too long if expanded.  (An exception is
    file.exists(), which silently returns false.)
  * trunc(&lt;Date&gt;, *) now supports units = "months" or "years" for
    consistency with the POSIXt method, thanks to Dirk Eddelbuettel's
    proposal in PR#18099.
  * list2DF() now checks that its arguments are of the same length,
    rather than use recycling.
  * The HTML help system has several new features: LaTeX-like math
    can be typeset using either KaTeX or MathJax, usage and example
    code is highlighted using Prism, and for dynamic help the output
    of examples and demos can be shown within the browser if the
    knitr package is installed. These features can be disabled by
    setting the environment variable _R_HELP_ENABLE_ENHANCED_HTML_ to
    a false value.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 15
    and so packages that provide graphics devices should be
    reinstalled.
  * The grid package now allows the user to specify a "vector" of
    pattern fills.  The fill argument to gpar() accepts a list of
    gradients and/or patterns and the functions linearGradient(),
    radialGradient(), and pattern() have a new group argument.
    Points grobs (data symbols) can now also have a pattern fill.
    The grobCoords() function now returns a more informative and
    complex result.
  * The grid package has new functions for drawing isolated groups:
    grid.group(), grid.define(), and grid.use().  These functions add
    compositing operators and affine transformations to R's graphics
    capabilities.
    The grid package also has new functions for stroking and filling
    paths: grid.stroke(), grid.fill(), and grid.fillStroke().
    A new function as.path() allows the user to specify the fill rule
    for a path that is to be used for clipping, stroking, or filling;
    available options are "winding" and "evenodd".  A new function
    as.mask() allows the user to specify the type of a mask;
    available options are "alpha" and "luminance".
    These new features are only supported so far (at most) on the
    Cairo-based graphics devices and on the pdf() device.
  * dev.capabilities() reports on device support for the new
    features.
  * par() now warns about unnamed non-character arguments to prevent
    misuse such as {usr &lt;- par("usr"); par(usr)}.
  INSTALLATION:
  * Facilities for accessing ftp:// sites are no longer tested
    (except _pro tem_ for curlGetHeaders()) as modern browsers have
    removed support.
  * R can now be built with DEFS = -DSTRICT_R_HEADERS .
  PACKAGE INSTALLATION:
  * R CMD INSTALL no longer tangles vignettes. This completes an R
    CMD build change in R 3.0.0 and affects packages built before R
    3.0.2. Such packages should be re-made with R CMD build to have
    the tangled R code of vignettes shipped with the tarball.
  * USE_FC_LEN_T will become the default: this uses the correct
    prototypes for Fortran BLAS/LAPACK routines called from C/C++,
    and requires adjustment of most such calls - see 'Writing R
    Extensions' SS6.6.2.  (This has been supported since R 3.6.2.)
  * Package installation speed for packages installed with
    keep.source has been improved. This resolve the issue reported by
    Ofek Shilon in PR#18236.
  UTILITIES:
  * R CMD check can optionally report files/directories left behind
    in home, /tmp (even though TMPDIR is set) and other directories.
    See the "R Internals" manual for details.
  * R CMD check now reports byte-compilation errors during
    installation.  These are not usually fatal but may result in
    parts of the package not being byte-compiled.
  * _R_CHECK_DEPENDS_ONLY_ can be applied selectively to examples,
    tests and/or vignettes in R CMD check: see the "R Internals"
    manual.
  * _R_CHECK_SRC_MINUS_W_IMPLICIT_ now defaults to true: recent
    versions of Apple clang on macOS have made implicit function
    declarations in C into a compilation error.
  * R CMD check --as-cran makes use of the environment variable
    AUTORECONF.  See the "R Internals" manual SS8 for further details.
  * R CMD check --use-valgrind also uses valgrind when re-building
    vignettes as some non-Sweave vignettes unhelpfully comment out
    all their code when R CMD check runs vignettes.
  * Errors in re-building vignettes (unless there are LaTeX errors)
    are reported by R CMD check as ERROR rather than WARNING when
    running vignettes has been skipped (as it frequently is in CRAN
    checks and by --as-cran).
  * R CMD Rd2pdf gains a --quiet option that is used by R CMD build
    when building the PDF package manual.
  * R CMD Rd2pdf now always runs LaTeX in batch mode, consistent with
    Texinfo &gt;= 6.7. The --batch option is ignored.
  * R CMD build and R CMD check now include the Rd file name and line
    numbers in the error message of an \Sexpr evaluation failure.
  * For packages using the \doi Rd macro (now an install-time \Sexpr)
    but no other dynamic Rd content, R CMD build now produces a
    smaller tarball and is considerably faster - skipping temporary
    package installation.
  C-LEVEL FACILITIES:
  * The non-API header R_ext/R-ftp-http.h is no longer provided, as
    the entry points it covered are now all defunct.
  * A number of non-API declarations and macro definitions have been
    moved from the installed header Rinternals.h to the internal
    header Defn.h. Packages that only use entry points and
    definitions documented to be part of the API as specified in
    'Writing R Extensions' SS6 should not be affected.
  * The macro USE_RINTERNALS no longer has any effect when compiling
    package code.  Packages which also use R_NO_REMAP will need to
    ensure that the remapped names are used for calls to API
    functions that were formerly also made available as macros.
  * The deprecated legacy S-compatibility macros PROBLEM, MESSAGE,
    ERROR, WARN, WARNING, RECOVER, ... are no longer defined in
    R_exts/RS.h (included by R.h).  Replace these by calls to
    Rf_error and Rf_warning (defined in header R_ext/Error.h included
    by R.h).
    Header R_ext/RS.h no longer includes R_ext/Error.h.
  * Header R_ext/Constants.h (included by R.h) when included from C++
    now includes the C++ header cfloat rather than the C header
    float.h (now possible as C++11 is required).
  * The legacy S-compatibility macros DOUBLE_* in R_ext/Constants.h
    (included by R.h) are deprecated.
  * The deprecated S-compatibility macros SINGLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * R_Calloc, R_Free and R_Realloc are preferred to their unprefixed
    forms and error messages now use the prefix. These forms were
    introduced in R 3.4.0 and are available even when
    STRICT_R_HEADERS is defined.
  * rmultinom has been documented in 'Writing R Extensions' SS6 so is
    now part of the R API.
  * Similarly, Rtanpi, called from R level tanpi() is now part of the
    R API.
  * The long-deprecated, undocumented and non-API entry point call_R
    is no longer declared in R_ext/RS.h (included by R.h).
  * The header S.h which has been unsupported since Jan 2016 has been
    removed.  Use R.h instead.
  DEPRECATED AND DEFUNCT:
  * The (non-default and deprecated) method = "internal" for
    download.file() and url() no longer supports http:// nor ftp://
    URIs.  (It is used only for file:// URIs.)
    On Windows, download.file(method = "wininet") no longer supports
    ftp:// URIs.  (It is no longer the default method, which is
    "libcurl" and does.)
    On Windows, the deprecated method = "wininet" now gives a warning
    for http:// and https:// URIs for both download.file() and url().
    (It is no longer the default method.)
  * On Windows, the command-line option --max-mem-size and
    environment variable R_MAX_MEM_SIZE are defunct.  The memory
    allocation limit was important for 32-bit builds, but these are
    no longer supported.
  * default.stringsAsFactors() is now formally deprecated, where that
    was only mentioned on its regular help page, previously.  So it
    now gives a warning if called.
  * unix.time() is defunct now; it had been deprecated since R 3.4.0.
  BUG FIXES:
  * Setting digits = 0 in format(), print.default() (and hence
    typically print()) or options() is again invalid.  Its behaviour
    was platform-dependent, and it is unclear what "zero significant
    digits" should mean (PR#18098).
  * Messages from C code in the cairo section of package grDevices
    are now also offered for translation, thanks to Michael Chirico's
    PR#18123.
  * mean(x) with finite x now is finite also without "long.double"
    capability.
  * R CMD Rd2pdf no longer leaves an empty build directory behind
    when it aborts due to an already existing output file.  (Thanks
    to Sebastian Meyer's PR#18141.)
  * density(x, weights = w, na.rm = TRUE) when anyNA(x) is true, now
    removes weights "in parallel" to x, fixing PR#18151, reported by
    Matthias Gondan.  Additionally, it gets a subdensity option.
  * Conversion of \Sexpr[]{&lt;expR&gt;} to LaTeX or HTML no longer
    produces long blocks of empty lines when &lt;expR&gt; itself contains
    several lines all producing empty output.  Thanks to a report and
    patch by Ivan Krylov posted to R-devel.
  * R CMD build no longer fails if a package vignette uses child
    documents and inst/doc exists.  (Thanks to Sebastian Meyer's
    PR#18156.)
  * When an R documentation ('help' source) file man/foo.Rd in a
    package has \donttest{..} examples with a syntax error, it is now
    signalled as ERROR and with correct line numbers relating to the
  * -Ex.R file, thanks to Duncan Murdoch and Sebastian Meyer's
    reports and patch proposals in PR#17501.
  * Improved determination of the correct translation domain in
    non-base packages, addressing the combination of PR#18092 and
    PR#17998 (#c6) with reports and _augmented_ patch #2904 by
    Suharto Anggono.
    Note that "R-base" is no longer the default domain e.g., for
    top-level calls to gettext(); rather translation needs explicit
    domain = * specification in such cases.
  * identical(attrib.as.set=FALSE) now works correctly with data
    frames with default row names (Thanks to Charlie Gao's PR#18179).
  * txtProgressBar() now enforces a non-zero width for argument char,
    without which no progress can be visible.
  * dimnames(table(d)) is more consistent in the case where d is a
    list with a single component, thanks to Thomas Soeiro's report to
    R-devel.
    Further, table(d1, d2) now gives an error when d1 and d2 are data
    frames as suggested by Thomas in PR#18224.
  * Fix for drawing semi-transparent lines and fills on the native
    Windows graphics device (PR#18219 and PR#16694).  Thanks to Nick
    Ray for helpful diagnosis on Bugzilla.
  * The deparser now wraps sub-expressions such as if(A) ..  with
    parentheses when needed; thanks to Duncan Murdoch's PR#18232 and
    Lionel Henry's patches there.
  * remove.packages() no longer tries to uninstall Priority: base
    packages, thanks to a report and suggestions by Colin Fay in
    PR#18227.
  * win.metafile() now has xpinch and ypinch arguments so that the
    user can override Windows' (potentially wrong) guess at device
    dimensions.
  * x[i] and x[[i]] for non-integer i should now behave in all cases
    as always documented: the index used is equivalent to
    as.integer(i) unless that would overflow where trunc(i) is used
    instead; thanks to Suharto Anggono's report and patch proposals
    in PR#17977.
  * asOneSidedFormula() now associates the resulting formula with the
    global environment rather than the evaluation environment created
    for the call.
  * &lt;bibentry&gt;$name now matches the field name case-insensitively,
    consistent with bibentry() creation and the replacement method.
  * cbind() failed to detect some length mismatches with a mixture of
    time-series and non-time-series inputs.
  * The default LaTeX style file Sweave.sty used by the RweaveLatex
    driver no longer loads the obsolete ae package; thanks to a
    report by Thomas Soeiro in PR#18271.  Furthermore, it now skips
    \usepackage[T1]{fontenc} for engines other than pdfTeX (if
    detected) or if the new [nofontenc] option is used.
  * smooth.spline() now stores its logical cv argument more safely,
    fixing a rare bug when printing, and also stores n.
  * smooth.spline(x,y,*) now computes the cv.crit statistic
    correctly, also when is.unsorted(x), fixing PR#18294.
  * The data.frame method of rbind() now warns when binding
    not-wholly-recycling vectors, by analogy to the default method
    (for matrices).
  * setAs() finds the correct class for name to when multiple
    packages define a class with that name. Thanks to Gabor Csardi
    for the report.
  * Fix for detaching a package when two classes of the same name are
    present in method signatures for the same generic. Thanks to
    Gabor Csardi for the report.
  * match.arg("", c("", "a", "B")) gives a better error message, in
    part from PR#17959, thanks to Elin Waring.
  * R CMD Sweave --clean no longer removes pre-existing files or
    subdirectories (PR#18242).
  * The quartz() device no longer splits polylines into subpaths.
    That has caused narrowly-spaced lines with many points to always
    look solid even when dashed line type was used due to dash phase
    restarts.
  * Deparsing constructs such as quote(1 + `!`(2) + 3) works again as
    before R 3.5.0, thanks to the report and patch in PR#18284 by
    Suharto Anggono.
  * as.list(f) for a factor f now keeps names(f), fixing PR#18309.
  * qbeta(.001, .9, .009) and analogous qf() calls now return a
    correct value instead of NaN or wrongly 1, all with a warning;
    thanks to the report by Ludger Goeminne in PR#18302.
  * plot.lm() failed to produce the plot of residuals vs.  factor
    levels (i.e., which=5 when leverages are constant) for models
    with character predictors (PR#17840).
  * interaction.plot(..., xtick = TRUE) misplaced the x-axis line
    (PR#18305).
  * Not strictly fixing a bug, format()ing and print()ing of
    non-finite Date and POSIXt values NaN and +/-Inf no longer show
    as NA but the respective string, e.g., Inf, for consistency with
    numeric vector's behaviour, fulfilling the wish of PR#18308.
  * R CMD check no longer runs test scripts generated from
    corresponding .Rin files twice and now signals an ERROR if
    processing an .Rin script fails.
  * tools::Rd2txt() used for plain-text help pages now renders \hrefs
    (if tools::Rd2txt_options(showURLs = TRUE)) and \urls with
    percent-encoding and standards-compliant delimiting style (angle
    brackets and no URL: prefix).  \email is now rendered with a
    mailto: prefix.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1655985600">- CHANGES IN R 4.2.1:
  NEW FEATURES:
  * New function utils::findCRANmirror() to find out if a CRAN mirror
    has been selected, otherwise fallback to the main site.  This
    behaves in the same way as tools::CRAN_package_db() and is
    intended for packages wishing to access CRAN for purposes other
    than installing packages.
    The need for this was shown by a day when the main CRAN website
    was offline and a dozen or so packages which had its URL
    hardcoded failed their checks.
  INSTALLATION on a UNIX-ALIKE:
  * The libraries searched for by --with-blas (without a value) now
    include BLIS (after OpenBLAS but before ATLAS).  And on macOS,
    the Accelerate framework (after ATLAS).  (This is patterned after
    the AX_BLAS macro from the Autoconf Archive.)
  * The included LAPACK sources have been updated to 3.10.1.
  UTILITIES:
  * The (full path to) the command tidy to be used for HTML
    validation can be set by environment variable R_TIDYCMD.
  * Setting environment variable _R_CHECK_RD_VALIDATE_RD2HTML_ to a
    false value will override R CMD check --as-cran and turn off HTML
    validation.  This provides a way to circumvent a problematic
    tidy.
    The 2006 version that ships with macOS is always skipped.
  C-LEVEL FACILITIES:
  * The undocumented legacy declarations of Sint, Sfloat, SINT_MAX
    and SINT_MIN in header R.h are deprecated.
  BUG FIXES:
  * fisher.test(d) no longer segfaults for "large" d; fixing PR#18336
    by preventing/detecting an integer overflow reliably.
  * tar(., files=*) now produces correctly the warning about invalid
    uid or gid of files, fixing PR#18344, reported by Martin Morgan.
  * tk_choose.files() with multi = FALSE misbehaved on paths
    containing spaces (PR#18334) (regression introduced in R 4.0.0).
  * sort(x, partial = ind, *) now works correctly notably for the
    non-default na.last = FALSE or TRUE, fixing PR#18335 reported by
    James Edwards.
  * Environment variable _R_CHECK_XREFS_REPOSITORIES_ is only used
    for checking .Rd cross-references in R CMD check (as documented)
    and not for other uses looking for a CRAN mirror.
  * The search for a CRAN mirror when checking packages now uses
    getOption("repos") if that specifies a CRAN mirror, even when it
    does not also specify all three Bioconductor repositories (as was
    previously required).
  * The HTML code generated by tools::Rd2HTML() has been improved to
    pass tidy 5.8.0.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1667217600">- CHANGES IN R 4.2.2:
  NEW FEATURES:
  * tools::Rdiff(useDiff = TRUE) checks for the presence of an
    external diff command and switches to useDiff = FALSE if none is
    found.  This allows R CMD Rdiff to always work.
  * On Windows, environment variable R_LIBCURL_SSL_REVOKE_BEST_EFFORT
    can be used to switch to only 'best-effort' SSL certificate
    revocation checks with the default "libcurl" download method.
    This reduces security, but may be needed for downloads to work
    with MITM proxies (PR#18379).
  * (macOS) The run-time check for libraries from XQuartz for X11 and
    Tcl/Tk no longer uses otool from the Apple Developer Tools
    (PR#18400).
  * The LaTeX style for producing the PDF manuals, Rd.sty, now loads
    the standard amsmath, amsfonts and amssymb packages for greater
    coverage of math commands in the Rd \eqn and \deqn macros.  The
    \mathscr LaTeX command is also provided (via the mathrsfs
    package, if available, or the amsfonts bundle otherwise),
    fulfilling the wish of PR#18398.
  * (Windows) The default format of readClipboard() and
    writeClipboard() has been changed to 13 (CF_UNICODETEXT).
  INSTALLATION on a UNIX-ALIKE:
  * The PDF manuals (if built) can be compacted by the new target
    make compact-pdf (at the top level or in directory doc/manual).
  * There is now configure support for LLVM clang 15 on Linux, which
    defaults to position-independent (PIE) executables whereas
    gfortran does not.
  * Many small changes to ease compilation (and suppress warnings)
    with LLVM clang 15.
  BUG FIXES:
  * Rscript -e would fail if stdin were closed (Reported by Henrik
    Bengtsson.)
  * qt(*, log.p=TRUE) in outer tails no longer produces NaN in its
    final steps, thus fixing PR#18360.
  * tools::Rd2latex() now escapes hashes and ampersands when writing
    URLs, fixing LaTeX errors with such URLs in \tabular.
  * When isGeneric(f, fdef=*) is used with mismatching names, the
    warning is better understandable; reported (with fix) in PR#18370
    by Gabe Becker.
  * poly(x, n) now works again (and is now documented) when x is a
    "Date" or "POSIXct" object, or of another class while fulfilling
    mode(x) == "numeric".  This also enables poly(x, *, raw=TRUE) for
    such variables.  Reported by Michael Chirico to R-devel.
  * write.table(), write.csv() and write.csv2() restore their
    numerical precision (internal equivalent of digits = 15) after an
    interrupt (PR#18384).
  * One can now read also byte FF from a clipboard connection
    (PR#18385).
  * source("") and source(character()) now give more helpful error
    messages.
  * R CMD check --as-cran set _R_CHECK_TIMINGS_ too late to have the
    intended effect.
  * as.POSIXlt(x) now also works with very large dates x, fixing
    PR#18401 reported by Hannes M"uhleisen.
  * Files can now be extracted even from very large zip archives
    (PR#18390, thanks to Martin Jakt).
  * Non-finite objects of class "POSIXlt" are now correctly coerced
    to classes "Date" and "POSIXct"; following up on the extension to
    format() them correctly.
  * Added methods for is.finite(), is.infinite() and is.nan() for
    "POSIXlt" date-time objects.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1678881600">- CHANGES IN R 4.2.3:
  C-LEVEL FACILITIES:
  * The definition of DL_FUNC in R_ext/Rdynload.h has been changed to
    be fully C-compliant.  This means that functions loaded _via_ for
    example R_GetCCallable need to be cast to an appropriate type if
    they have any arguments.
  * .Machine has a new element sizeof.time_t to identify old systems
    with a 32-bit type and hence a limited range of date-times (and
    limited support for dates millions of years from present).
  PACKAGE INSTALLATION:
  * (Windows) The default C++ standard had accidentally been left at
    C++11 when it was changed to C++14 on Unix.
  BUG FIXES:
  * As "POSIXlt" objects may be "partially filled" and their list
    components meant to be recycled, length() now is the length of
    the longest component.
  * as.POSIXlt.Date() could underflow for dates in the far past (more
    than half a million years BCE).
  * as.Date.POSIXlt(x) would return "1970-01-01" instead of NA in R
    4.2.2, e.g., for
    x &lt;- as.POSIXlt(c("2019-01-30","2001-1-1"))
    x$mon &lt;- c(0L, NA); as.Date(x)
  * R CMD check failed to apply enabled _R_CHECK_SUGGESTS_ONLY_ to
    examples and vignettes (regression in R 4.2.0).
  * R CMD check did not re-build vignettes in separate processes by
    default (regression in R 4.2.0).
  * Running examples from HTML documentation now restores previous
    knitr settings and options (PR#18420).
  * Quartz: fonts are now located using Core Graphics API instead of
    deprecated ATS which is no longer supported in the macOS 13 SDK
    (PR#18426).  This also addresses an issue where the currently
    used font in the Quartz device context was not correctly
    retained.
  * (Windows) Math symbols in text drawing functions are again
    rendered correctly (PR#18440).  This fixes a regression in R
    4.2.1 caused by a fix in PR#18382 which uncovered an issue in
    GraphApp due to which the symbol charset was not used with TT
    Symbol font face.
  * (Windows) Installing a package with a src/Makefile.{win,ucrt}
    file includes ~/.R/Makevars.win64 in the search for user
    makevars, as documented in "R Installation and Administration"
    and done for packages with a src/Makevars.{win,ucrt} file.
  * format(&lt;POSIXlt_w/_unbalanced_sec&gt;, "....%OS&lt;n&gt;") with n &gt; 0 no
    longer accidentally uses the unbalanced seconds, thanks to
    Suharto Anggono's report (including patch) in PR#18448.
  * solve.default(a, b) works around issues with some versions of
    LAPACK when a contains NA or NaN values.
  * When UseMethod() cannot dispatch, it no longer segfaults
    producing the error message in case of a long class(), thanks to
    Joris Vankerschaver's report (including patch) in PR#18447.
  * When example(foo, ..) produces graphics on an interactive device
    it needs to open itself, it now leaves devAskNewPage() unchanged
    even when it was FALSE, thus fixing a 14 years old '&lt;FIXME&gt;'.
  * packageDescription() again catches errors from encoding
    conversions. This also fixes broken packageVersion() in C locale
    on systems where iconv does not support transliteration.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1681128000">- add patch to build with libcurl &gt;= 8</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1682078400">- CHANGES IN R 4.3.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Calling &amp;&amp; or || with LHS or (if evaluated) RHS of length greater
    than one is now always an error, with a report of the form
    'length = 4' in coercion to 'logical(1)'
    Environment variable _R_CHECK_LENGTH_1_LOGIC2_ no longer has any
    effect.
  NEW FEATURES:
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.10.1.  (This caused some platform-dependent
    changes to package check output.)  And then to the sources from
    LAPACK version 3.11.0 (with changes only to double complex
    subroutines).
  * The included LAPACK sources have been updated to include the four
    Fortran 90 routines rather than their Fortran 77 predecessors.
    This may give some different signs in SVDs or
    eigendecompositions..  (This completes the transition to LAPACK
    3.10.x begun in R 4.2.0.)
  * The LAPACK sources have been updated to version 3.11.0.  (No new
    subroutines have been added, so this almost entirely bug fixes:
    Those fixes do affect some computations with NaNs, including R's
    NA.)
  * The parser now signals _classed_ errors, notably in case of the
    pipe operator |&gt;.  The error object and message now give line and
    column numbers, mostly as proposed and provided by Duncan Murdoch
    in PR#18328.
  * toeplitz() is now generalized for asymmetric cases, with a
    toeplitz2() variant.
  * xy.coords() and xyz.coords() and consequently, e.g., plot(x,y,
    log = "y") now signal a _classed_ warning about negative values
    of y (where log(.) is NA).  Such a warning can be specifically
    suppressed or caught otherwise.
  * Regular expression functions now check more thoroughly whether
    their inputs are valid strings (in their encoding, e.g. in
    UTF-8).
  * The performance of grep(), sub(), gsub() and strsplit() has been
    improved, particularly with perl = TRUE and fixed = TRUE.  Use of
    useBytes = TRUE for performance reasons should no longer be
    needed and is discouraged: it may lead to incorrect results.
  * apropos() gains an argument dot_internals which is used by the
    completion (help(rcompgen)) engine to also see base internals
    such as .POSIXct().
  * Support in tools::Rdiff() for comparing uncompressed PDF files is
    further reduced - see its help page.
  * qqplot(x, y, ...) gains conf.level and conf.args arguments for
    computing and plotting a confidence band for the treatment
    function transforming the distribution of x into the distribution
    of y (Switzer, 1976, _Biometrika_). Contributed by Torsten
    Hothorn.
  * Performance of package_dependencies() has been improved for cases
    when the number of dependencies is large.
  * Strings newly created by gsub(), sub() and strsplit(), when any
    of the inputs is marked as "bytes", are also marked as "bytes".
    This reduces the risk of creating invalid strings and accidental
    substitution of bytes deemed invalid.
  * Support for readLines(encoding = "bytes") has been added to allow
    processing special text files byte-by-byte, without creating
    invalid strings.
  * iconv(from = "") now takes into account any declared encoding of
    the input elements and uses it in preference to the native
    encoding.  This reduces the risk of accidental creation of
    invalid strings, particularly when different elements of the
    input have different encoding (including "bytes").
  * Package repositories in getOption("repos") are now initialized
    from the repositories file when utils is loaded (if not already
    set, e.g., in .Rprofile).  (From a report and patch proposal by
    Gabriel Becker in PR#18405.)
  * compactPDF() gets a verbose option.
  * type.convert() and hence read.table() get new option tryLogical =
    TRUE with back compatible default.  When set to false, converts
    "F" or "T" columns to character.
  * Added new unit prefixes "R" and "Q" for abbreviating
    (unrealistically large) sizes beyond 10^{27} in standard = "SI",
    thanks to Henrik Bengtsson's PR#18435.
  * as.data.frame()'s default method now also works fine with atomic
    objects inheriting from classes such as "roman", "octmode" and
    "hexmode", such fulfilling the wish of PR#18421, by Benjamin
    Feakins.
  * The as.data.frame.vector() utility now errors for wrong-length
    row.names.  It warned for almost six years, with "Will be an
    error!".
  * sessionInfo() now also contains La_version() and reports codepage
    and timezone when relevant, in both print() and toLatex() methods
    which also get new option tzone for displaying timezone
    information when locale = FALSE.
  * New function R_compiled_by() reports the C and Fortran compilers
    used to build R, if known.
  * predict(&lt;lm&gt;, newdata = *) no longer unnecessarily creates an
    offset of all 0s.
  * solve() for complex inputs now uses argument tol and by default
    checks for 'computational singularity' (as it long has done for
    numeric inputs).
  * predict(&lt;rank-deficient lm&gt;, newdata=*) now obeys a new argument
    rankdeficient, with new default "warnif", warning only if there
    are non-estimable cases in newdata.  Other options include
    rankdeficient = "NA", predicting NA for non-estimable newdata
    cases.  This addresses PR#15072 by Russ Lenth and is based on his
    original proposal and discussions in PR#16158 also by David Firth
    and Elin Waring.  Still somewhat experimental.
  * Rgui console implementation now works better with the NVDA screen
    reader when the full blinking cursor is selected.  The underlying
    improvements in cursor handling may help also other screen
    readers on Windows.
  * The drop-field control in GraphApp can now be left with the TAB
    key and all controls can be navigated in the reverse order using
    the Shift+TAB key, improving accessibility of the Rgui
    configuration editor.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now fully accurate
    (instead of to "only" minimally five digits).
  * demo(error.catching) now also shows off withWarnings() and
    tryCatchWEMs().
  * As an experimental feature the placeholder _ can now also be used
    in the rhs of a forward pipe |&gt; expression as the first argument
    in an extraction call, such as _$coef. More generally, it can be
    used as the head of a chain of extractions, such as _$coef[[2]].
  * Spaces in the environment variable used to choose the R session's
    temporary directory (TMPDIR, TMP and TEMP are tried in turn) are
    now fatal.  (On Windows the 'short path' version of the path is
    tried and used if that does not contain a space.)
  * all.equal.numeric() gets a new optional switch giveErr to return
    the numeric error as attribute.  Relatedly,
    stopifnot(all.equal&lt;some&gt;(a, b, ..)) is as "smart" now, as
    stopifnot(all.equal(....)) has been already, thus allowing
    customized all.equal&lt;Some&gt;() wrappers.
  * R on Windows is now able to work with path names longer than 260
    characters when these are enabled in the system (requires at
    least Windows 10 version 1607).  Packages should be updated to
    work with long paths as well, instead of assuming PATH_MAX to be
    the maximum length.  Custom front-ends and applications embedding
    R need to update their manifests if they wish to allow this
    feature.  See
    &lt;https://blog.r-project.org/2023/03/07/path-length-limit-on-windows&gt;
    for more information.
  * 'Object not found' and 'Missing argument' errors now give a more
    accurate error context. Patch provided by Lionel Henry in
    PR#18241.
  * The @ operator is now an S3 generic. Based on contributions by
    Tomasz Kalinowski in PR#18482.
  * New generic chooseOpsMethod() provides a mechanism for objects to
    resolve cases where two suitable methods are found for an Ops
    Group Generic. This supports experimenting with alternative
    object systems. Based on contributions by Tomasz Kalinowski in
    PR#18484.
  * inherits(x, what) now accepts values other than a simple
    character vector for argument what. A new generic, nameOfClass(),
    is called to resolve the class name from what. This supports
    experimenting with alternative object systems. Based on
    contributions by Tomasz Kalinowski in PR#18485.
  * Detection of BLAS/LAPACK in use (sessionInfo()) with FlexiBLAS
    now reports the current backend.
  * The "data.frame" method for subset() now warns about extraneous
    arguments, typically catching the use of = instead of == in the
    subset expression.
  * Calling a:b when numeric a or b is longer than one may now be
    made into an error by setting environment variable
    _R_CHECK_LENGTH_COLON_ to a true value, along the proposal in
    PR#18419 by Henrik Bengtsson.
  * density(x, weights = *) now warns if automatic bandwidth
    selection happens without using weights; new optional warnWbw may
    suppress the warning.  Prompted by Christoph Dalitz' PR#18490 and
    its discussants.
  * rm(list = *) is faster and more readable thanks to Kevin Ushey's
    PR#18492.
  * The plot.lm() function no longer produces a normal Q-Q plot for
    GLMs. Instead it plots a half-normal Q-Q plot of the absolute
    value of the standardized deviance residuals.
  * The print() method for class "summary.glm" no longer shows
    summary statistics for the deviance residuals by default.  Its
    optional argument show.residuals can be used to show them if
    required.
  * The tapply() function now accepts a data frame as its X argument,
    and allows INDEX to be a formula in that case. by.data.frame()
    similarly allows INDICES to be a formula.
  * The performance of df[j] &lt;- value (including for missing j) and
    write.table(df) has been improved for data frames df with a large
    number of columns.  (Thanks to Gabriel Becker's PR#18500,
    PR#18503 and discussants, prompted by a report from Toby Dylan
    Hocking on the R-devel mailing list.)
  * The matrix multiply operator %*% is now an S3 generic, belonging
    to new group generic matrixOps.  From Tomasz Kalinowski's
    contribution in PR#18483.
  * New function array2DF() to convert arrays to data frames,
    particularly useful for the list arrays created by tapply().
  DATES and TIMES:
  * On platforms where (non-UTC) datetimes before 1902 (or before
    1900 as with system functions on recent macOS) are guessed by
    extrapolating time zones from 1902-2037, there is a warning at
    the first use of extrapolation in a session.  (As all time zones
    post 2037 are extrapolation, we do not warn on those.)
  * (Platforms using --with-internal-tzone, including Windows and by
    default macOS). How years are printed in dates or date-times can
    be controlled by environment variable R_PAD_YEARS_BY_ZERO.  The
    default remains to pad to 4 digits by zeroes, but setting value
    no gives no padding (as used by default by glibc).
  * strftime() tries harder to determine the offset for the "%z"
    format, and succeeds on the mainstream R platforms.
  * strftime() has a limit of 2048 bytes on the string produced -
    attempting to exceed this is an error.  (Previously it silently
    truncated at 255 bytes.)
  * sessionInfo() records (and by default prints) the system time
    zone as part of the locale information.  Also, the source
    (system/internal) of the date-time conversion and printing
    functions.
  * Objects of class "POSIXlt" created in this version of R always
    have 11 components: component zone is always set, and component
    gmtoff is set for times in UTC and usually set on the (almost
    all) platforms which have C-level support, otherwise is NA.
  * There are comprehensive validity checks on the structure of
    objects of class "POSIXlt" when converting (including formatting
    and printing).  (This avoids mis-conversions of hand-crafted
    objects.)
  * There is some support for using the native date-time routines on
    macOS: this is only viable on recent versions (e.g. 12.6 and 13)
    and does get wrong some historical changes (before 1900, during
    WWII).  Use of --with-internal-tzone remains the default.
  * as.POSIXct(&lt;numeric&gt;) and as.POSIXlt(.) (without specifying
    origin) now work.  So does as.Date(&lt;numeric&gt;).
  * as.Date.POSIXct(., tz) now treats several tz values, notably
    "GMT" as equivalent to "UTC", proposed and improved by Michael
    Chirico and Joshua Ulrich in PR#17674.
  * Experimental balancePOSIXlt() utility allows using "ragged" and
    or out-of-range "POSIXlt" objects more correctly, e.g., in
    subsetting and subassignments.  Such objects are now documented.
    More experimentally, a "POSIXlt" object may have an attribute
    "balanced" indicating if it is known to be filled or fully
    balanced.
  * Functions axis.Date() and axis.POSIXct() are rewritten to gain
    better default tick locations and better default formats by using
    prettyDate(). Thanks to Swetlana Herbrandt.
  * The mapping of Windows' names for time zones to IANA's 'Olson'
    names has been updated.  When ICU is available (it is by
    default), it is used to get a mapping for the current region set
    in Windows.  This can be overridden by setting environment
    variable TZ to the desired Olson name - see OlsonNames() for
    those currently available.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 16
    and so packages that provide graphics devices should be
    reinstalled.
  * The grDevices and grid packages have new functions for rendering
    typeset glyphs, primarily: grDevices::glyphInfo() and
    grid::grid.glyph().
    Rendering of typeset glyphs is only supported so far on the
    Cairo-based graphics devices and on the pdf() and quartz()
    devices.
  * The defined behaviour for "clear" and "source" compositing
    operators (via grid::grid.group()) has been changed (to align
    better with simple interpretation of original Porter-Duff
    definitions).
  * Support for gradients, patterns, clipping paths, masks, groups,
    compositing operators, and affine transformations has been added
    to the quartz() device.
  INSTALLATION on a UNIX-ALIKE:
  * A system installation of generic LAPACK 3.10.0 or later will be
    preferred to the version in the R sources.
    configure option --with-lapack=no (equivalently --without-lapack)
    forces compilation of the internal LAPACK sources.
    If --with-lapack is not specified, a system liblapack is looked
    for and used if it reports version 3.10.0 or later and does not
    contain BLAS routines.
    Packages using LAPACK will need to be reinstalled if this changes
    to using an external library.
  * On aarch64 Linux platforms using GCC, configure now defaults to
  - fPIC (instead of -fpic), as desired in PR#18326.
  * configure now checks conversion of datetimes between POSIXlt and
    POSIXct around year 2020.  Failure (which has been seen on
    platforms missing tzdata) is fatal.
  * If configure option --with-valgrind-instrumentation is given
    value 1 or 2, option --with-system-valgrind-headers is now the
    default and ignored (with a warning).  It is highly recommended
    that the system headers are installed alongside valgrind: they
    are part of its packaging on some Linux distributions and
    packaged separately (e.g. in the valgrind-devel RPM) on others.
    configure will give a warning if they are not found.
    The system headers will be required in a future release of R to
    build with valgrind instrumentation.
  * libcurl 8.x is now accepted by configure: despite a change in
    major version number it changes neither API nor ABI.
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools43, an update of the Rtools42 toolchain.  It is
    based on gcc 12 and newer versions of MinGW-W64, binutils and
    libraries.  At this time R-devel can still be built using
    Rtools42 without changes, but when R-devel is installed via the
    installer, it will by default look for Rtools43.
  * Old make targets rsync-extsoft and 32-bit ones that are no longer
    needed have been removed.
  * Default builds (including for packages) no longer select C99.
    Thus the C standard used is the default for the compiler, which
    for the toolchain in Rtools43 is C17.  (This is consistent with
    Unix builds.)
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++17 where
    available (which it is on all currently checked platforms): if
    not C++14 or C++11 is used if available otherwise C++ is not
    supported.
  * USE_FC_LEN_T is the default: this uses the correct
    (compiler-dependent) prototypes for Fortran BLAS/LAPACK routines
    called from C/C++, and requires adjustment of many such calls -
    see 'Writing R Extensions' SS6.6.1.
  * There is initial support for C++23 as several compilers are now
    supporting -std=c++23 or -std=c++2b or similar.  As for C++20,
    there no additional configure checks for C++23 features beyond a
    check that the compiler reports a __cplusplus value greater than
    that in the C++20 standard.  C++ feature tests should be used.
  * There is support for a package to indicate the version of the C
    standard which should be used to compile it, and for the
    installing user to specify this.  In most cases R defaults to the
    C compiler's default standard which is C17 (a `bug-fix' of C11) -
    earlier versions of R or compilers may have defaulted to C99.
    Current options are:
    USE_C17 Use a standard that is at most C17.  The intention is to
    allow legacy packages to still be installed when later C
    standards become the default, including packages using new
    keywords as identifiers or with K&amp;R-style function
    declarations.  This will use C17 if available, falling back
    to C11.
    USE_C90 Use the C90 (aka C89) standard.  (As that standard did
    not require compilers to identify that version, all we can
    verify is that the compiler does not claim to be using a
    later standard.  It may accept C99 features - for example
    clang accepts // to make comments.)
    USE_C99 Use the C99 standard. This should be rarely needed - it
    avoids the few new features of C11/C17 which can be useful if
    a package assumes them if C17 is specified and they are not
    implemented.
    USE_C23 Use C23 (or in future, later).  Compiler/library support
    for C23 is still being implemented, but LLVM clang from
    15.0.0 and the upcoming GCC 13 have quite extensive support.
    These can be specified as part of the SystemRequirements field in
    the package's DESCRIPTION file or _via_ options --use-C17 and so
    on of R CMD INSTALL and R CMD SHLIB.
    For further details see "Writing R Extensions" SS1.2.5.
  * (Windows) A src/Makefile.ucrt or src/Makefile.win file is now
    included after R_HOME/etcR_ARCH/Makeconf and so no longer needs
    to include that file itself.  Installation of a package with such
    a file now uses a site Makevars file in the same way as a package
    with a src/Makevars.win file would.
  * configure is now passed crucial variables such as CC and CFLAGS
    in its environment, as many packages were not setting them (as
    documented in 'Writing R Extensions' SS1.2).
    This has most effect where configure is used to compile parts of
    the package - most often by cmake or libtool which obfuscate the
    actual compile commands used.
    Also used for configure.win and configure.ucrt on Windows.
  FORTRAN FLAGS:
  * The flag -fno-optimize-sibling-calls is no longer forced for
    gfortran 7 and later.  It should no longer be needed now using
    'hidden' character-length arguments when calling BLAS/LAPACK
    routines from C/C++ is the default even for packages.  (Unless
    perhaps packages call Fortran code from C/C++ without using R's
    headers and without allowing for these arguments.)
  C-LEVEL FACILITIES:
  * The deprecated S-compatibility macros DOUBLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * The deprecated legacy typedefs of Sint and Sfloat in header R.h
    are no longer defined, and that header no longer includes header
    limits.h from C nor climits from C++.
  * New macro CAD5R() is provided in Rinternals.h and used in a few
    places in the R sources.
  * ALTREP now supports VECSXP vectors. Contributed by Gabor Csardi
    in PR#17620.
  * The Rcomplex definition (in header R_ext/Complex.h) has been
    extended to prevent possible mis-compilation when interfacing
    with Fortran (PR#18430).  The new definition causes compiler
    warnings with static initializers such as {1, 2}, which can be
    changed to {.r=1, .i=2}.
    Using the new definition from C++ depends on compiler extensions
    supporting C features that have not been incorporated into the
    C++ standards but are available in g++ and clang++: this may
    result in C++ compiler warnings but these have been worked around
    for recent versions of common compilers (GCC, Apple/LLVM clang,
    Intel).
    It is intended to change the inclusion of header R_ext/Complex.h
    by other R headers, so C/C++ code files which make use of
    Rcomplex should include that header explicitly.
  UTILITIES:
  * R CMD check does more checking of package .Rd files, warning
    about invalid email addresses and (some) invalid URIs and noting
    empty \item labels in description lists.
  * R CMD check now also reports problems when reading package news
    in md (file NEWS.md) and (optionally) plain text (file NEWS)
    formats.
  * _R_CHECK_TIMINGS_ defaults to a value from the environment even
    for R CMD check --as-cran; this allows for exceptionally fast or
    slow platforms.
    It now applies to checking PDF and HTML versions of the manuals,
    and 'checking CRAN incoming feasibility'.
  * R CMD check can optionally (but included in --as-cran) check
    whether HTML math rendering _via_ KaTeX works for the package .Rd
    files.
  * Non-interactive debugger invocations can be trapped by setting
    the environment variable _R_CHECK_BROWSER_NONINTERACTIVE_ to a
    true value.  This is enabled by R CMD check --as-cran to detect
    the use of leftover browser() statements in the package.
  * The use of sprintf and vsprintf from C/C++ has been deprecated in
    macOS 13 and is a known security risk.  R CMD check now reports
    (on all platforms) if their use is found in compiled code:
    replace by snprintf or vsnprintf respectively. [*NB:* whether
    such calls get compiled into the package is platform-dependent.]
  * Where recorded at installation, R CMD check reports the C and
    Fortran compilers used to build R.
    It reports the OS in use (if known, as given by osVersion) as
    well as that R was built for.
    It notes if a C++ standard was specified which is older than the
    current default: many packages have used C++11 to mean 'not
    C++98' - as C++11 is the minimum supported since R 4.0.0, that
    specification can probably be removed.
  * R CMD INSTALL reports the compilers (and on macOS, the SDK) used,
    and this is copied to the output of R CMD check.
    Where a C++ standard is specified, it is reported.
  * R CMD check's 'checking compilation flags in Makevars' has been
    relaxed to accept the use of flags such as -std=f2008 in
    PKG_FFLAGS.
  * tools::buildVignettes() has a new argument skip, which is used by
    R CMD check to skip (and note) vignettes with unavailable
    \VignetteDepends (PR#18318).
  * New generic .AtNames() added to enable class-specific completions
    after @. The formerly internal function findMatches() is now
    exported, mainly for use in methods for .DollarNames() and
    .AtNames().
  DEPRECATED AND DEFUNCT:
  * default.stringsAsFactors() is defunct.
  * Calling as.data.frame.&lt;class&gt;() directly (for 12 atomic classes)
    is going to be formally deprecated, currently activated by
    setting the environment variable
    _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ to non-empty, which also
    happens in R CMD check --as-cran.
  BUG FIXES:
  * Hashed environments with sizes less than 5 can now grow.
    (Reported to R-devel by Duncan Garmonsway.)
  * as.character(&lt;Rd&gt;, deparse = TRUE) failed to re-escape curly
    braces in LaTeX-like text.  (Reported by Hadley Wickham in
    PR#18324.)
  * library() now passes its lib.loc argument when requiring Depends
    packages; reported (with fix) in PR#18331 by Mikael Jagan.
  * R CMD Stangle: improved message about 'Output' files.
  * head(x, n) and tail(x, n) now signal an error if n is not
    numeric, instead of incidentally "working" sometimes returning
    all of x.  Reported and discussed by Colin Fay, in PR#18357.
  * The "lm" method for summary() now gives the correct F-statistic
    when the model contains an offset.  Reported in PR#18008.
  * C() and `contrasts&lt;-`() now preserve factor level names when
    given a function object (as opposed a function name which did
    preserve names). Reported in PR#17616.
  * c(a = 1, 2)[[]] no longer matches 2 but rather signals a
    _classed_ error.  Reported and analysed by Davis Vaughan in
    PR#18367, a duplicate of PR#18004, by Jan Meis et al.  For
    consistency, NULL[[]] is also erroneous now.  x[[]] &lt;- v gives an
    error of the same class "MissingSubscriptError".
  * The relist() function of utils now supports NULL elements in the
    skeleton (PR#15854).
  * ordered(levels = *) (missing x) now works analogously to factor(,
    ordered=TRUE); reported (with fix) by Achim Zeileis in PR#18389.
  * User-defined Rd macro definitions can now span multiple lines,
    thanks to a patch from Duncan Murdoch. Previously, the Rd parser
    silently ignored everything after the first line.
  * Plain-text help (tools::Rd2txt()) now preserves an initial blank
    line for text following description list items.
  * tools::Rd2HTML() and tools::Rd2latex() no longer split \arguments
    and \value lists at Rd comments.
  * tools::Rd2latex() now correctly handles optional text outside
    \items of argument lists as well as bracketed text at the
    beginning of sections, e.g., \value{[NULL]}.
  * as.character(&lt;POSIXt&gt;) now behaves more in line with the methods
    for atomic vectors such as numbers, and is no longer influenced
    by options().  Ditto for as.character(&lt;Date&gt;).  The
    as.character() method gets arguments digits and OutDec with
    defaults _not_ depending on options().  Use of as.character(*,
    format = .) now warns.
  * Similarly, the as.character.hexmode() and *.octmode() methods
    also behave as good citizen methods and back compatibility option
    keepStr = TRUE.
  * The as.POSIXlt(&lt;POSIXlt&gt;) and as.POSIXct(&lt;POSIXct&gt;) default
    methods now do obey their tz argument, also in this case.
  * as.POSIXlt(&lt;Date&gt;) now does apply a tz (time zone) argument, as
    does as.POSIXct(); partly suggested by Roland Fuss on the R-devel
    mailing list.
  * as.Date.POSIXlt(x) now also works when the list components are of
    unequal length, aka "partially filled" or "ragged".
  * expand.model.frame() looked up variables in the wrong environment
    when applied to models fitted without data.  Reported in
    PR#18414.
  * time() now (also) uses the ts.eps = getOption("ts.eps") argument
    and thus by default rounds values very close to the start (or
    end) of a year.  Based on a proposal by Andre"i V. Kostyrka on
    R-help.
  * Printing of a factanal() result with just one factor and sort =
    TRUE now works regularly, fixing PR#17863 by Timothy Bates,
    thanks to the 'R Contributors' working group.
  * Printing 0-length objects of class "factor", "roman", "hexmode",
    "octmode", "person", "bibentry", or "citation" now prints
    something better, one of which fixes PR#18422, reported by
    Benjamin Feakins.
  * Sys.timezone() queries timedatectl only if systemd is loaded;
    addressing a report by Jan Gorecki in PR#17421.
  * The formula method of cor.test() had scoping problems when
    environment(formula) was not the calling environment; reported
    with a patch proposal by Mao Kobayashi in PR#18439.
  * attach() of an environment with active bindings now preserves the
    active bindings.  Reported by Kevin Ushey in PR#18425.
  * BLAS detection now works also with system-provided libraries not
    available as regular files.  This fixes detection of the
    Accelerate framework on macOS since Big Sur.  Reported by David
    Novgorodsky.
  * download.file() gives a helpful error message in case of an
    invalid download.file.method option, thanks to Colin Fay's report
    in PR#18455.
  * Sporadic crashes of Rterm when using completion have been fixed.
  * Rprof() is now more reliable.  A livelock in thread
    initialization with too short sampling interval has been fixed on
    macOS.  A deadlock in using the C runtime has been fixed on
    Windows.  A potential deadlock has been prevented on Unix.
  * Cursor placement in Rgui now works even after a fixed-width font
    is selected.
  * Mandatory options (options()) are now set on startup so that
    saving and restoring them always works (PR#18372).
  * Package installation, R CMD INSTALL or install.packages(*), now
    parses each of the &lt;pkg&gt;/R/*.R files individually instead of
    first concatenating and then parse()ing the large resulting file.
    This allows parser or syntax errors to be diagnosed with correct
    file names and line numbers, thanks to Simon Dedman's report and
    Bill Dunlap's patch in PR#17859.
    This _does_ require syntactically self contained R source files
    now, fixing another inadvertent bug.
  * predict.lm(&lt;model with offset&gt;) now finds the offset in the
    correct environment, thanks to Andr'e Gillibert's report and patch
    in PR#18456.
  * getInitial(&lt;formula&gt;) now finds the selfStart model in the
    correct environment.  (Reported by Ivan Krylov in PR#18368.)
  * Fix for possible segfault when using recently-added graphics
    features, such as gradients, clipping paths, masks, and groups
    with pdf(file=NULL).
  * class(m) &lt;- class(m) no longer changes a matrix m by adding a
    class _attribute_.
  * packageDate(pkg) now only warns once if there is no pkg.
  * When ts() creates a multivariate time series, "mts", it also
    inherits from "array" now, and is.mts() is documented _and_
    stricter.
  * Rd2txt() now preserves line breaks of \verb Rd content and from
    duplicated \cr.  The former also fixes the rendering of verbatim
    output from Rd \Sexpr in plain-text help.
  * uniroot(f, interval) should no longer wrongly converge _outside_
    the interval in some cases where abs(f(x)) == Inf for an x at the
    interval boundary, thanks to posts by Ben Bolker and Serguei
    Sokol on R-devel.
  * Vectorized alpha handling in palette functions such as in gray(),
    rainbow(), or hcl.colors() works correctly now, thanks to Achim
    Zeileis' report and patch in PR#18476.
  * Formatting and print()ing of bibentry objects has dropped the
    deprecated citation.bibtex.max argument, such that the bibtex
    argument's default for print.bibentry() depends directly on the
    citation.bibtex.max option, whereas in format.bibentry() the
    option no longer applies.
  * Attempting to use a character string naming a foreign function
    entry point in a foreign function call in a package will now
    signal an error if the packages has called R_forceSymbols to
    specify that symbols must be used.
  * An error in table() could permanently set options(warn=2)
    promoting all subsequent warnings to errors.
  * The sigma() function gave misleading results for binary GLMs.  A
    new method for objects of class "glm" returns the square root of
    the estimate of the dispersion parameter using the same
    calculation as summary.glm().
  * bs() and ns() in the (typical) case of automatic knot
    construction, when some of the supposedly inner knots coincide
    with boundary knots, now moves them inside (with a warning),
    building on PR#18442 by Ben Bolker.
  * R CMD on Windows now skips the site profile with --no-site-file
    and --vanilla even when R_PROFILE is set (PR#18512, from Kevin
    Ushey).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1686916800">- CHANGES IN R 4.3.1:
  C-LEVEL FACILITIES:
  * The C-level API version of R's integrate(), Rdqags() in Applic.h,
    now returns the correct number of integrand evaluations neval,
    fixing PR#18515 reported and diagnosed by Stephen Wade.
  * The C prototypes for LAPACK calls dspgv and dtptrs in
    R_exts/Lapack.h had one too many and one too few character length
    arguments - but this has not caused any known issues. To get the
    corrected prototypes, include
    [#]include &lt;Rconfig.h&gt; // for PR18534fixed
    [#]ifdef PR18534fixed
    [#] define usePR18534fix 1
    [#]endif
    [#]include &lt;R_exts/Lapack.h&gt;
    in your C/C++ code (PR#18534).
  INSTALLATION:
  * Many of the checks of esoteric Internet operations and those
    using unreliable external sites have been moved to a new target
    that is not run by default and primarily intended for the core
    developers.  To run them use
    cd tests; make test-Internet-dev
  BUG FIXES:
  * .S3methods(), typically called from methods(), again marks
    methods from package base as visible.
    Also, the visibility of non-base methods is again determined by
    the method's presence in search().
  * tools::Rdiff() is now more robust against invalid strings, fixing
    installation tests on Windows without Rtools installed
    (PR#18530).
  * Fix (new) bug in hcl.colors(2, *), by Achim Zeileis (PR#18523).
  * head(., &lt;illegal&gt;) and tail(..) now produce more useful "Error in
    ...." error messages, fixing PR#18362.
  * Package code syntax on Windows is checked in UTF-8 when UTF-8 is
    the native encoding.
  * na.contiguous(x) now also returns the first run, when it is at
    the beginning and there is a later one of the same length;
    reported to R-devel, including a fix, by Georgi Boshnakov.
    Further, by default, it modifies only an existing attr(*,"tsp")
    but otherwise no longer sets one.
  * chol(&lt;not pos.def&gt;, pivot = &lt;T|F&gt;) now gives a correct error or
    warning message (depending on pivot), thanks to Mikael Jagan's
    (PR#18541).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1699012800">- CHANGES IN R 4.3.2:
  NEW FEATURES:
  * The default initialization of the "repos" option from the
    repositories file at startup can be skipped by setting
    environment variable R_REPOSITORIES to NULL such that
    getOption("repos") is empty if not set elsewhere.
  * qr.X() is now an implicit S4 generic in methods.
  * iconv(to = "ASCII//TRANSLIT") is emulated using substitution on
    platforms which do not support it (notably Alpine Linux).  This
    should give a human-readable conversion in ASCII on all platforms
    (rather than NA_character_).
  * trans3d() gains options continuous and verbose addressing the
    problem of possible "wrap around" when projecting too long
    curves, as reported by Achim Zeileis in PR#18537.
  * tools::showNonASCII() has been rewritten to work better on macOS
    14 (which has a changed implementation of iconv()).
  * tiff(type = "quartz") (the default on macOS) now warns if
    compression is specified: it continues to be ignored.
  INSTALLATION on a UNIX-ALIKE:
  * There is some support for building with Intel's LLVM-based
    compilers on x86_64 Linux, such as (C) icx, (C++) ipcx and
    (Fortran) ifx from oneAPI 2023.x.y.
  * There is support for using LLVM's flang-new as the Fortran
    compiler from LLVM 16.0.x (preferably 17.0.0 or later).
  UTILITIES:
  * R CMD check reports the use of the Fortran 90 random number
    generator RANDOM_NUMBER() and the subroutines to initialize it.
    'Writing R Extensions' has example code to use R's RNGs from
    Fortran.
  BUG FIXES:
  * substr(x, n, L) &lt;- cc now works (more) correctly for multibyte
    UTF-8 strings x when L &gt; nchar(x), thanks to a report and patch
    by 'Architect 95'.
  * contrib.url(character()) now returns 0-length character() as
    documented, which also avoids spurious warnings from
    available.packages() et al. in the edge case of an empty vector
    of repository URLs.
  * readChar(., 4e8) no longer fails, thanks to Kodi Arfer's report
    (PR#18557).
  * lapply(&lt;list&gt;, as.data.frame) no longer warns falsely for some
    base vector components.
  * Communication between parent and child processes in the multicore
    part of parallel could fail on platforms that do not support an
    arbitrarily large payload in system functions read()/write() on
    pipes (seen on macOS where a restriction to INT_MAX bytes is
    documented, without doing a partial read unlike Linux). The
    payload is now split into 1Gb chunks to avoid that problem.
    (PR#18571)
  * qqplot(x,y, conf.level=.) gives better confidence bounds when
    length(x) != length(y), thanks to Alexander Ploner's report and
    patch proposal (PR#18557).
  * norm(&lt;0-length&gt;, "2") now gives zero instead of an error, as all
    the other norm types, thanks to Mikael Jagan's PR#18542.
  * Build-stage Rd macros \packageAuthor and \packageMaintainer now
    process Authors@R, fixing NA results when the package DESCRIPTION
    omits Author and Maintainer fields.
  * Formatting and printing complex numbers could give things like
    0.1683-0i because of rounding error: -0i is now replaced by +0i.
  * postscript() refused to accept a title comment containing the
    letter "W" (PR#18599).
  * isoreg(c(1,Inf)) signals an error instead of segfaulting, fixing
    PR#18603.
  * tiff(type = "Xlib") was only outputting the last page of
    multi-page plots.
  * tools::latexToUtf8() again knows about \~{n} and other letters
    with tilde, fixing a regression in R 4.3.0, and about \^{i} as an
    alternative to \^{\i} (similarly with other accents).
    Furthermore, LaTeX codes for accented I letters are now correctly
    converted, also fixing related mistakes in
    tools::encoded_text_to_latex().
  * tar(*, tar = "internal") no longer creates out-of-spec tar files
    in the very rare case of user or group names longer than 32
    bytes, fixing PR#17871 with thanks to Ivan Krylov.
  * When using the "internal" timezone datetime code, adding a
    fraction of a second no longer adds one second, fixing PR#16856
    from a patch by Ivan Krylov.
  * tools::checkRd() no longer produces spurious notes about
    "unnecessary braces" from multi-line Rd results of \Sexpr macros.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1709208000">- CHANGES IN R 4.3.3:
  NEW FEATURES:
  * iconv() now fixes up variant encoding names such as "utf8"
    case-insensitively.
  DEPRECATED AND DEFUNCT:
  * The legacy encoding = "MacRoman" is deprecated in pdf() and
    postscript(): support was incomplete in earlier versions of R.
  BUG FIXES:
  * Arguments are now properly forwarded to methods on S4 generics
    with ... in the middle of their formal arguments. This was broken
    for the case when a method introduced an argument but did not
    include ... in its own formals. Thanks to Herv'e Pag`es for the
    report PR#18538.
  * Some invalid file arguments to pictex(), postscript() and xfig()
    opened a file called NA rather than throw an error.  These
    included postscript(NULL) (which some people expected to work
    like pdf(NULL)).
  * Passing filename = NA to svg(), cairo_pdf(), cairo_ps() or the
    Cairo-based bitmap devices opened a file called NA: it now throws
    an error.
  * quartz(file = NA) opened a file called NA, including when used as
    a Quartz-based bitmap device.  It now gives an error.
  * rank(&lt;long vector&gt;) now works, fixing PR#18617, thanks to Ilia
    Kats.
  * seq.int() did not adequately check its length.out argument.
  * match(&lt;POSIXct&gt;, .) is correct again for differing time zones,
    ditto for "POSIXlt", fixing PR#18618 reported by Bastian Klein.
  * drop.terms(*, dropx = &lt;0-length&gt;) now works, fixing PR#18563 as
    proposed by Mikael Jagan.
  * drop.terms(*) keeps + offset(.) terms when it should, PR#18565,
    and drop.terms() no longer makes up a response, PR#18566, fixing
    both bugs thanks to Mikael Jagan.
  * getS3method("t", "test") no longer finds the t.test() function,
    fixing PR#18627.
  * pdf() and postscript() support for the documented Adobe encodings
    "Greek" and "Cyrilllic" was missing (although the corresponding
    Windows' codepages could be used).
  * Computations of glyph metric information for pdf() and
    postscript() did not take into account that transliteration could
    replace one character by two or more (only seen on macOS 14) and
    typically warned that the information was not known.
  * rank(x) no longer overflows during integer addition, when
    computing rank average for largish but not-yet long vector x,
    fixing PR#18630, thanks to Ilia Kats.
  * list.files() on Windows now returns also files with names longer
    that 260 bytes (the Windows limit is 260 characters).
    Previously, some file names particularly with 'East Asian'
    characters were omitted.
  * cov2cor(&lt;0 x 0&gt;) now works, fixing PR#18423 thanks to Mikael
    Jagan and Elin Waring.
  * cov2cor(&lt;negative diagonal&gt;) and similar now give one warning
    instead of two, with better wording, fixing PR#18424 thanks to
    Mikael Jagan.
  * tools:: startDynamicHelp() now ensures port is in proper range,
    fixing PR#18645.
  * pbeta(x, a,b) is correct now for x=0 or 1 in the boundary cases
    where a or b or both are 0, fixing PR#18672 thanks to Michael
    Fay.
  * pmatch(x, table) for large table, also called for data frame row
    selection, dfrm[nm, ], is now interruptible, fixing PR#18656.
  * predict(&lt;rank-deficient lm&gt;, newdata=*) fix computing of nbasis,
    see Russ Lenth's comment 29 in PR#16158.
  * Added a work-around for a bug in macOS 14.3.1 and higher which
    prevents R plots in the Quartz Cocoa device from updating on
    screen.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1713960000">- CHANGES IN R 4.4.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Startup banners, R --version, sessionInfo() and R CMD check no
    longer report (64-bit) as part of the platform as this is almost
    universal - the increasingly rare 32-bit platforms will still
    report (32-bit).
    On Windows, ditto for window titles.
  * is.atomic(NULL) now returns FALSE, as NULL is not an atomic
    vector.  Strict back-compatibility would replace is.atomic(foo)
    by (is.null(foo) || is.atomic(foo)) but should happen only
    sparingly.
  NEW FEATURES:
  * The confint() methods for "glm" and "nls" objects have been
    copied to the stats package.  Previously, they were stubs which
    called versions in package MASS. The MASS namespace is no longer
    loaded if you invoke (say) confint(glmfit).  Further, the "glm"
    method for profile() and the plot() and pairs() methods for class
    "profile" have been copied from MASS to stats.  (profile.nls()
    and plot.profile.nls() were already in stats.)
  * The confint() and profile methods for "glm" objects have gained a
    possibility to do profiling based on the Rao Score statistic in
    addition to the default Likelihood Ratio. This is controlled by a
    new test = argument.
  * The pairs() method for "profile" objects has been extended with a
    which = argument to allow plotting only a subset of the
    parameters.
  * The "glm" method for anova() computes test statistics and
    p-values by default, using a chi-squared test or an F test
    depending on whether the dispersion is fixed or free.  Test
    statistics can be suppressed by giving argument test a false
    logical value.
  * In setRepositories() the repositories can be set using their
    names via name = instead of index ind =.
  * methods() and .S3methods() gain a all.names option for the (rare)
    case where functions starting with a . should be included.
  * Serializations can now be interrupted (e.g., by Ctrl-C on a
    Unix-alike) if they take too long, e.g., from save.image(),
    thanks to suggestions by Ivan Krylov and others on R-devel.
  * New startup option --max-connections to set the maximum number of
    simultaneous connections for the session.  Defaults to 128 as
    before: allowed values up to 4096 (but resource limits may in
    practice restrict to smaller values).
  * R on Windows (since Windows 10 2004) now uses the new Segment
    Heap allocator. This may improve performance of some
    memory-intensive applications.
  * When R packages are built, typically by R CMD build &lt;pkg&gt;, the
    new --user=&lt;build_user&gt; option overrides the (internally
    determined) user name, currently Sys.info()["user"] or LOGNAME.
    This is a (modified) fulfillment of Will Landau's suggestion in
    PR#17530.
  * tools::testInstalledBasic() gets new optional arguments outDir
    and testSrcdir, e.g., allowing to use it in a &lt;builddir&gt; !=
    &lt;srcdir&gt; setup, and in standard "binary" Windows installation
  * if* a source tests/ folder is present.
  * range(&lt;DT_with_Inf&gt;, finite = TRUE) now work for objects of class
    "Date", "POSIXct", and "POSIXlt" with infinite entries,
    analogously to range.default(), as proposed by Davis Vaughan on
    R-devel.  Other range()-methods can make use of new function
    .rangeNum().
  * New .internalGenerics object complementing .S3PrimitiveGenerics,
    for documentation and low-level book-keeping.
  * grid() now invisibly returns the x- and y- coordinates at which
    the grid-lines were drawn.
  * norm(., type) now also works for complex matrices.
  * kappa(., exact = TRUE, norm = *) now works for all norms and also
    for complex matrices.  In symmetric / triangular cases, the new
    argument uplo = "U" | "L" allows the upper or lower triangular
    part to be specified.
  * memDecompress(type = "unknown") recognizes compression in the
    default 'zlib' format as used by memCompress(type = "gzip").
  * memCompress() and memDecompress() will use the libdeflate library
    (&lt;https://github.com/ebiggers/libdeflate&gt;) if installed.  This
    uses the same type of compression for type = "gzip" but is 1.5-2x
    faster than the system libz library on some common platforms: the
    speed-up may depend on the library version.
  * diff() for objects of class "Date", "POSIXct", and "POSIXlt"
    accepts a units argument passed via ....
  * Dynamic help now does a much better job of rendering package
    DESCRIPTION metadata.
  * Rprof() gains an event argument and support for elapsed (real)
    time profiling on Unix (PR#18076).
  * filled.contour() gains a key.border argument.
  * tools::update_pkg_po() gets arguments pot_make and mo_make for
    _not_ re-making the corresponding files, and additionally a
    verbose argument.
  * Hexadecimal string colour specifications are now accepted in
    short form, so, for example, we can use "#123", which is
    equivalent to "#112233".
    Thanks to MikeFC for the original idea and Ella Kaye, Malcolm
    Barrett, George Stagg, and Hanne Oberman for the patch.
  * Plain-text help shows \var markup by angle brackets.
  * The new experimental primitive function declare() is intended to
    eventually allow information about R code to be communicated to
    the interpreter, compiler, and code analysis tools. The syntax
    for declarations is still being developed.
  * Functions psmirnov(), qsmirnov() and rsmirnov() in package stats
    have had argument two.sided renamed to alternative, to take into
    account that the permutation distributions of the one-sided
    statistics can be different in the case of ties.  Consequence of
    PR#18582.
  * sort() is now an implicit S4 generic in methods.
  * Formatting and printing, format(z), print(z), of complex vectors
    z no longer zap relatively small real or imaginary parts to zero,
    fixing PR#16752.  This is an API change, as it was documented
    previously to round real and imaginary parts together on purpose,
    producing nicer looking output.  As mentioned, e.g. in the PR,
    this change is compatible with many other "R-like" programming
    environments.
    We have simplified the internal code and now basically format the
    real and imaginary parts independently of each other.
  * New experimental functions Tailcall() and Exec() to support
    writing stack-space-efficient recursive functions.
  * Where characters are attempted to be plotted by pdf(),
    postscript() and xfig() which are not in the selected 8-bit
    character set (most often Latin-1) and the R session is using a
    UTF-8 locale, the warning messages will show the UTF-8 character
    rather than its bytes and one dot will be substituted per
    character rather than per byte.  (Platforms whose iconv() does
    transliteration silently plot the transliteration.)
    In a UTF-8 locale some transliterations are now done with a
    warning (e.g., dashes and Unicode minus to hyphen, ligatures are
    expanded, permille (‰) is replaced by o/oo), although the OS may
    have got there first.  These are warnings as they will continue
    to be replaced by dots in earlier versions of R.
  * The matrix multiplication functions crossprod() and tcrossprod()
    are now also primitive and S3 generic, as %*% had become in R
    4.3.0.
  * source() and example() have a new optional argument catch.aborts
    which allows continued evaluation of the R code after an error.
  * The non-Quartz tiff() devices allow additional types of
    compression if supported by the platform's libtiff library.
  * The list of base and recommended package names is now provided by
    tools::standard_package_names().
  * cairo_pdf() and cairo_ps() default to onefile = TRUE to closer
    match pdf() and postscript().
  * New option catch.script.errors provides a documented way to catch
    errors and then continue in non-interactive use.
  * L %||% R newly in base is an expressive idiom for the phrases
    if(!is.null(L)) L else R or if(is.null(L)) R else L.
  * The return value from warnings() now always inherits from
    "warnings" as documented, now also in the case of no warnings
    where it previously returned NULL.
  * as.complex("1i") now returns 0 + 1i instead of NA with a warning.
  * z &lt;- c(NA, 1i) now keeps the imaginary part Im(z[1]) == 0, no
    longer coercing to NA_complex_.  Similarly, cumsum(z) correctly
    sums real and imaginary parts separately, i.e., without
    "crosstalk" in case of NAs.
  * On Alpine Linux iconv() now maps "latin2", "latin-2", "latin9"
    and "latin-9" to encoding names the OS knows about
    (case-insensitively).
  * iconv(sub = "Unicode") now always zero-pads to four (hex) digits,
    rather than to 4 or 8.  (This seems to have become the convention
    once Unicode restricted the number of Unicode points to 2^21 - 1
    and so will never need more than 6 digits.)
  * NCOL(NULL) now returns 0 instead of 1, for consistency with
    cbind().
  * The information for the Euro glyph missing from the Adobe .afm
    files for the Courier, Helvetica and Times families has been
    copied from their URW equivalents - this will improve vertical
    centring in the pdf() and postscript() devices.
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.12.0.  The changes are almost entirely cosmetic.
  * The included LAPACK sources have been updated to version 3.12.0
    and some further double-complex routines added.
  * There are new font families for the 2014--5 URW 2.0 fonts (see
    ?pdf) which are included in recent versions of Ghostscript.
    These have font widths for most Greek glyphs and a few others
    which were missing from the original versions (whose font
    families remain available for reproducibility, although
    Ghostscript-based viewers will render using the 2.0 versions).
  * Improve the large-n efficiency of as.matrix(&lt;dist&gt;), thanks an R
    contributors effort, notably by Tim Taylor and Heather Turner,
    see PR#18660.
  * The default and numeric methods of all.equal() get a check.class
    option.
  * zapsmall() gets new optional arguments, function mFUN and min.d,
    for extra flexibility; fulfills a wish in PR#18199.  Also, it is
    now an implicit S4 generic in package methods.
  * The Rd filter for aspell() gains an ignore argument.
  * New generic function sort_by(), primarily useful for the
    data.frame method which can be used to sort rows of a data frame
    by one or more columns.
  * The icence headers for the RPC code in src/extra/xdr have been
    updated to use the GPL-compatible licence published by Oracle
    America in 2010.
  * New function pkg2HTML() in tools to create single-page HTML
    reference manuals for R packages.
  * The byte code evaluator now uses less C stack space for recursive
    calls to byte-compiled functions. It also makes more of an effort
    to avoid allocations for scalar return values.
  * New completion option backtick (disabled by default) allows
    non-syntactic completions to be wrapped in backquotes. This is
    currently only useful for Jupyter notebooks via the IRkernel
    package, and may cause problems for other backends.
  INSTALLATION:
  * The parser has been updated to work with bison 3.8.2, which is
    now used for the pre-generated parsers in gram.c, file.c, and
    gramRd.c. A few parser error messages have changed, which may
    affect code that relies on exact messages.
  INSTALLATION on a UNIX-ALIKE:
  * System valgrind headers are now required to use configure option
  - -with-valgrind-instrumentation with value 1 or 2.
  * configure will warn if it encounters a 32-bit build, as that is
    nowadays almost untested.
  * Environment variable R_SYSTEM_ABI is no longer used and so no
    longer recorded in etc/Renviron (it was not on Windows and was
    only ever used when preparing package tools).
  * If the libdeflate library and headers are available, libdeflate
    rather than libz is used to (de)compress R objects in lazy-load
    databases.  Typically tasks spend up to 5% of their time on such
    operations, although creating lazy-data databases is one of the
    exceptions.
    This can be suppressed if the library is available by the
    configure option --without-libdeflate-compression.
  * configure option --enable-lto=check has not worked reliably since
    2019 and has been removed.
  * The minimum autoconf requirement for a maintainer build has been
    increased to autoconf 2.71.
    It is intended to increase this to 2.72 for R 4.5.0: the
    distributed configure file was generated using 2.72.
  * The minimum version requirement for an external LAPACK has been
    reduced to 3.9.0.
  * No default C++ compiler is set if no C++17 compiler is detected:
    there is no longer an automatic fallback to C++14 or C++11.
    Compilers from the last five years should have sufficient
    support: for others macros CXX and CXXSTD can be set in file
    config.site to provide a fallback if needed.
    The Objective-C++ compiler now by default uses the standard
    selected by R for C++ (currently C++17) rather than the default
    standard for the C++ compiler (which on macOS is still C++98).
  INSTALLATION on macOS:
  * A new configure option --with-newAccelerate makes use of Apple's
    'new' BLAS / LAPACK interfaces in their Accelerate framework.
    Those interfaces are only available in macOS 13.3 or later, and
    building requires SDK 13.3 or later (from the Command Line Tools
    or Xcode 14.3 or later).
    By default the option uses new Accelerate for BLAS calls: to also
    use it for LAPACK use option --with-newAccelerate=lapack.  The
    later interfaces provide LAPACK 3.9.1 rather than 3.2.1: 3.9.1 is
    from 2021-04 and does not include the improved algorithms
    introduced in LAPACK 3.10.0 (including for BLAS calls).
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools44, an update of the Rtools43 toolchain.  It is
    based on GCC 13 and newer versions of MinGW-W64, binutils and
    libraries (targeting 64-bit Intel CPUs).  R-devel can no longer
    be built using Rtools43 without changes.
  * Rtools44 has experimental support for 64-bit ARM (aarch64) CPUs
    _via_ the LLVM 17 toolchain using lld, clang/flang-new and
    libc++.
  UTILITIES:
  * R CMD check notes when S4-style exports are used without
    declaring a strong dependence on package methods.
  * tools::checkRd() (used by R CMD check) detects more problems with
    \Sexpr-based dynamic content, including bad nesting of \Sexprs
    and invalid arguments.
  * tools::checkRd() now reports Rd titles and section names ending
    in a period; this is ignored by R CMD check unless environment
    variable _R_CHECK_RD_CHECKRD_MINLEVEL_ is set to -5 or smaller.
  * R CMD check now notes Rd files without an \alias, as long
    documented in 'Writing R Extensions' §1.3.1.  The check for a
    missing \description has been moved from tools::checkRd() to
    tools::checkRdContents().
  * R CMD check now visits inst/NEWS.Rd and OS-specific man
    subdirectories when checking Rd files.
  * tools::checkDocFiles() and tools::checkRdContents() now also
    check internal Rd files by default, but "specially" (ignoring
    missing documentation of arguments).
  * R CMD Rdiff gets option --useEx.
  * R CMD check now warns on non-portable uses of Fortran KIND such
    as INTEGER(KIND=4) and REAL(KIND=8).
    To see the failing lines set environment variable
    _R_CHECK_FORTRAN_KIND_DETAILS_ to a true value.
  * When checking Rd files, R CMD check now notes some of the "lost
    braces" that tools::checkRd() finds.  Typical problems are Rd
    macros missing the initial backslash (e.g., code{...}), in-text
    set notation (e.g., {1, 2}, where the braces need escaping), and
    \itemize lists with \describe-style entries of the form
    \item{label}{description}.
  * R CMD INSTALL (and hence check) will compile C++ code with
  - DR_NO_REMAP if environment variable _R_CXX_USE_NO_REMAP_ is set
    to a true value.  It is planned that this will in future become
    the default for compiling C++.
  * The new built-in Rd macro \dontdiff{} can be used to mark example
    code whose output should be ignored when comparing check output
    to reference output (tests/Examples/&lt;pkg&gt;-Ex.Rout.save).  The
    \dontdiff tag, like \donttest, is _not_ shown on the rendered
    help page, so provides a clean alternative to ##
    IGNORE_RDIFF_(BEGIN|END) comments.
  * R CMD build when there is no NAMESPACE, now uses the recommended
    exportPattern("^[^.]"), instead of exporting everything.
  * R CMD check now warns about non-ASCII characters in the NAMESPACE
    file (in addition to R files). Such packages are not portable and
    may fail to install on some platforms.
  C-LEVEL FACILITIES:
  * Headers R_ext/Applic.h and R-ext/Linpack.h used to include
    R_ext/BLAS.h although this was undocumented and unneeded by their
    documented entry points.  They no longer do so.
  * New function R_missing(), factored out from do_missing(), used to
    fix PR#18579.
  * SEXP type S4SXP has been renamed to OBJSXP to support
    experimenting with alternative object systems.  The S4SXP value
    can still be used in C code but is now deprecated.  Based on
    contributions from the R Consortium's Object-Oriented Programming
    Working Group.
  * New function pow1p(x,y) for accurate (1+x)^y.
  * mkCharLenCE was incorrectly documented to take a size_t length
    but was implemented with int (and character strings in R are
    limited to 2^31 - 1 bytes).
  DEPRECATED AND DEFUNCT:
  * data() no longer handles zipped data from long-defunct (since R
    2.13.0) --use-zip-data installations.
  * The legacy graphics devices pictex() and xfig() are now
    deprecated.  They do not support recent graphics enhancements and
    their font handling is rudimentary. The intention is to retain
    them for historical interest as long as they remain somewhat
    functional.
  * Support for encoding = "MacRoman" has been removed from the pdf()
    and postscript() devices - this was a legacy encoding supporting
    classic macOS up to 2001 and no longer has universal libiconv
    support.
  * is.R() is deprecated as no other S dialect is known to be in use
    (and this could only identify historical dialects, not future
    ones).
    Further information on calls can be obtained by setting the
    environment variable _R_DEPRECATED_IS_R_ to error which turns the
    deprecation warning into an error and so by default gives a
    traceback.  (This is done by R CMD check --as-cran.)
  * UseMethod() no longer forwards local variables assigned in the
    generic function into method call environments before evaluating
    the method body. This makes method calls behave more like
    standard function calls and makes method code easier to analyze
    correctly.
  * The twelve as.data.frame.&lt;class&gt;() methods which were deprecated
    only via _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ and in R CMD
    check --as-cran are formally deprecated now in favour of calling
    as.data.frame() or as.data.frame.vector().  The deprecation
    "check" now works also when as.data.frame() is S4 generic thanks
    to Ivan Krylov.
  * The default method for the directional comparison operators &lt;, &gt;,
    &lt;=, and &gt;= now signals an error when one of the operands is a
    language object, i.e. a symbol or a call.
  * For terms.formula(), deprecate abb and neg.out arguments
    _formally_ in addition to just documenting it.
  BUG FIXES:
  * The methods package is more robust to not being attached to the
    search path.  More work needs to be done.
  * pairwise.t.test() misbehaved when subgroups had 0 DF for
    variance, even with pool.sd = TRUE.  (PR#18594 by Jack Berry).
  * Probability distribution functions [dpq]&lt;distrib&gt;(x, *), but also
    bessel[IKJY](x, .) now consistently preserve attributes(x) when
    length(x) == 0, e.g., for a 2 x 0 matrix, thanks to Karolis
    Koncevičius' report PR#18509.
  * Group "Summary" computations such as sum(1:3, 4, na.rm = 5, NA,
    7, na.rm = LL) now give an error instead of either 17 or NN for
    LL true or false, as proposed by Ivan Krylov on the R-devel
    mailing list.  (This also means it is now an error to specify
    na.rm more than once.)
  * as.complex(x) now returns complex(real = x, imaginary = 0) for
    _all_ numerical and logical x, notably also for NA or
    NA_integer_.
  * Directories are now omitted by file.copy(, recursive = FALSE) and
    in file.append() (PR#17337).
  * gsub() and sub() are now more robust to integer overflow when
    reporting errors caused by too large input strings (PR#18346).
  * Top-level handlers are now more robust to attempts to remove a
    handler whilst handlers are running (PR#18508).
  * The handling of Alt+F4 in dialogs created on Windows using
    GraphApp has been fixed (PR#13870).
  * density() more consistently computes grid values for the
    FFT-based convolution, following Robert Schlicht's analysis and
    proposal in PR#18337, correcting density values typically by a
    factor of about 0.999.  Argument old.coords = TRUE provides back
    compatibility.
  * palette.colors() gains a name argument that defaults to FALSE
    controlling whether the vector of colours that is returned has
    names (where possible).  PR#18529.
  * tools::xgettext() no longer extracts the (non-translatable) class
    names from warningCondition and errorCondition calls.
  * S3method(&lt;gen&gt;, &lt;class&gt;, &lt;func&gt;) in the NAMESPACE file now works
    (again) when &lt;func&gt; is visible from the namespace, e.g.,
    imported, or in base.
  * getParseData(f) now also works for a function defined in the
    first of several &lt;pkg&gt;/R/*.R source files, thanks to Kirill
    Müller's report and Duncan Murdoch's patch in PR#16756.
  * Rd \Sexpr macros with nested #ifdef conditionals were not
    processed.
  * A non-blocking connection with non-default encoding (such as a
    socket) now correctly returns from readLines() after new data has
    arrived also when its EOF had been reached previously.  Thanks to
    Peter Meilstrup's report on R-devel and Ivan Krylov's report and
    patch proposal in PR#18555.
  * tools::checkRdContents() failed to detect empty argument
    descriptions when they spanned multiple lines, including those
    generated by prompt().  These cases are now noted by R CMD check.
  * Plain-text help no longer outputs spurious colons in the
    arguments list (for multi-line \item labels in the Rd source).
  * kappa() and rcond() work correctly in more cases; kappa(., norm =
    "2") now warns that it computes the 1-norm with (default) exact =
    FALSE; prompted by Mikael Jagan's quite comprehensive PR#18543.
  * Rd skeletons generated by prompt() or promptData() now use a
    dummy title (so R CMD build works).  tools::checkRdContents() has
    been updated to detect such template leftovers, including from
    promptPackage().
  * When S4 method dispatch fails because no method was found, the
    error message now includes the signature argument names; thanks
    to Michael Chirico's proposal on the R-devel list.
  * withAutoprint({ .. }) now preserves srcrefs previously lost,
    thanks to Andrew Simmons' report plus fix in PR#18572.
  * transform.data.frame() no longer adjusts names; in particular,
    untransformed variables are kept as-is, including those with
    syntactically invalid names (PR#17890).
  * The keep.source option for Rd \Sexpr blocks is no longer ignored.
  * The formula methods for t.test() and wilcox.test() now catch when
    paired is passed, addressing PR#14359; use Pair(x1, x2) ~ 1 for a
    paired test.
  * The level reported in the browser prompt was often too large. It
    now shows the number of browser contexts on the stack.
  * For cbind() and rbind(), the optional deparse.level argument is
    now properly passed to methods, thanks to Mikael Jagan's PR#18579
    and comments there.
  * Some error and warning messages for large ('long vector')
    matrix(v, nr, nc) and dim(m) &lt;- d are now correct about sizes,
    using long long formatting, fixing PR#18612 (and more) reported
    by Mikael Jagan.
  * readChar(useBytes = TRUE) now terminates strings even when the
    underlying connection uses extra spaces in the input buffer.
    This fixes problems with extra garbage seen with gzip
    connections, PR#18605.
  * Named capture in PCRE regular expressions now works also with
    more than 127 named groups (PR#18588).
  * Datetime functions are now robust against long jumps when dealing
    with internal time zone changes.  This avoids confusing warnings
    about an invalid time zone, previously triggered by turning
    warnings into errors or handling them via tryCatch (PR#17966,
    PR#17780).
  * Datetime functions now restore even an empty TZ environment
    variable after internal time zone changes (PR#17724).  This makes
    results of datetime functions with this (typically unintentional)
    setting more predictable.
  * drop.terms(*) now drops response as by default, keep.response =
    FALSE, fixing PR#18564 thanks to Mikael Jagan.
  * dummy.coef(.) now also works for lm()-models with character
    categorical predictor variables rather than factor ones, fixing
    PR#18635 reported by Jinsong Zhao.
  * formals(f) &lt;- formals(f) now also works for a function w/o
    arguments and atomic _constant_ body(f).
  * Correct as.function(&lt;invalid list&gt;, .)'s error message.
  * removeSource() is yet more thorough in finding and removing
    "srcref" and the other source references from parsed R language
    chunks, fixing PR#18638 thanks to Andrew Simmons.
  * dgeom() is more accurate now, notably when its result is very
    small, fixing PR#18642 thanks to the proposal of Morten Welinder,
    also improving other instances where C level binom_raw(x, n, ..)
    has x == 0 or x== n.
  * warning() with options(warn = 1) has improved output for
    multi-line messages.
  * axis.Date() and axis.POSIXct() now respect the par("lab") setting
    for the number of pretty() intervals.
  * Comparisons for language objects (which are based on deparsing)
    are now more careful about using accurate deparsed results
    (PR#18676).
  * Plain-text help (Rd2txt) now correctly preserves blank lines
    following single-line \dontrun code.
  * &lt;POSIXlt&gt;[*] no longer sets wrong "balanced" attribute, fixing
    PR#18681 thanks to Mikael Jagan.
  * str(&lt;classed-call&gt;) now deparses the call as expected, fixing
    PR#18684, reported by Dave Slager.
  * In Rd examples, code following the closing brace of a \dontrun,
    \dontshow or \donttest tag on the same line is no longer skipped
    when R CMD check runs the examples.
  * as.data.frame(matrix(*, ncol=0)) now gets valid names() and
    colnames(); reported by Davis Vaughan on the R-devel list.
  * Internal Mathlib function stirlerr(n) is now almost fully
    (52-bit) accurate for all n &gt;= ~5.9 and more accurate also in the
    range 1 -- 5.9.  This entails small ("after 12th decimal")
    changes in density functions, e.g., dgamma() in _some_ regions of
    their support.  The fix was partly prompted by Morten Welinder's
    PR#18640.
  * Numbers like 9876543.2 are now considered non-integer by Mathlib
    internal R_nonint(), amending original fix of PR#15734.
  * Rd comment lines no longer cause broken paragraphs in the
    rendered PDF and plain-text help. In code blocks, pure comment
    lines (starting with %) no longer produce an empty line.
  * xtabs(Freq ~ .) now consistently defaults to na.action = na.pass,
    using na.rm = FALSE (added as an argument) when summing over Freq
    (PR#17770).
  * tools::testInstalledPackage() is no longer silent about failures
    from running examples or tests and its return code no longer
    ignores failures from checking vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1718366400">- CHANGES IN R 4.4.1:
  C-LEVEL FACILITIES:
  * Functions R_atof and R_strtod declared in header R_ext/Utils.h
    are now documented in 'Writing R Extensions' and so formally part
    of the API.
  * The non-API entry points Rf_setSVector, Rf_StringFalse,
    Rf_StringTrue and Rf_isBlankString have been added to those
    reported by R CMD check.
  * The new function Rf_allocLang is now available. This provides an
    alternative to the idiom of calling Rf_allocList followed by
    SET_TYPEOF.
  UTILITIES:
  * R CMD check now reports as warnings what gfortran calls 'Fortran
    2018 deleted features', all of which have long been marked as
    'obsolescent' and some of which were deleted in Fortran 2008 or
    earlier.  Fortran compilers are no longer required to support
    these.
  BUG FIXES:
  * as.numeric(), scan(), type.convert() and other places which use
    the internal C function R_strtod now require a _non-empty_ digit
    sequence in a decimal or binary exponent.  This aligns with the
    C/POSIX standard for strtod and with ?NumericConstants.
  * as.data.frame(m, make.names=NA) now works correctly for a matrix
    m with NA's in row names.
  * The error message from &lt;POSIXlt&gt;[["hour"]] and similar now
    mentions *[[, "hour"]], as wished for in PR#17409 and proposed by
    Michael Chirico.
  * qbinom() and potentially qpois(), qnbinom(), no longer sometimes
    fail accurate inversion (of pbinom(), etc), thanks to Christopher
    Chang's report and patch in PR#18711.
  * The internal help server on Windows can again serve requests sent
    in quick succession, fixing a regression in R 4.4.0.
  * debugcall(&lt;S3Generic&gt;()) now also works when a corresponding
    S4-generic version is in the methods cache (PR#18143).
  * Package tools' toTitleCase(ch0) now returns character(0) when ch0
    is of zero length; fixing PR#18724, reported by David Hugh Jones.
  * R CMD check is no longer broken (without a check result and no
    explanation in 00check.log) for a package which declares an
    invalid VignetteBuilder in DESCRIPTION but has no vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1730376000">- CHANGES IN R 4.4.2:
  C-LEVEL FACILITIES:
  * The S-compatibility macros F77_COM and F77_COMDECL defined in
    header R_ext/RS.h are deprecated and will be removed shortly.  We
    could find no record of their use.
  BUG FIXES:
  * Mathlib function lgammacor(x) no longer warns about underflow to
    zero for large x.
  * Text widths and heights were incorrectly reported by the Quartz
    device if the drawing context didn't exist yet (typically when
    drawing off-screen to a window that is yet to appear, see
    PR#18591).
  * The Quartz device could segfault in cases where paths with spaces
    are used in the new glyph drawing API.  Thanks to Tomek
    Gieorgijewski (PR#18758).
  * On macOS in R CRAN builds, it is again possible to read
    little-endian UTF-16 text with a BOM from a connection using
    encoding="UTF-16".  Users building R from source should avoid
    using the system libiconv in macOS 14.1 and later.
  * methods' internal .requirePackage() now re-enables primitive
    method dispatch when needed; thanks to Ivan Krylov for
    demystifying CRAN package check failures on the R-devel mailing
    list.</changelog>
</package>
<package pkgid="09bbc19de7d0d11c00f49914320c70d8934f43ee569f0bb162b0b55ddb0e1c197e0b0927811b82ab676c39444555ca452f574ad0098178d639862e7dd30f91cc" name="R-tcltk-debuginfo" arch="i586">
  <version epoch="0" ver="4.4.2" rel="51.0.2.2.sr20241103"/>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1620302400">- To get in sync with d:l:R:autoCRAN the Matrix package's split
  in -devel was reversed.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339200">- improved spec file according to comments of dimstar in
  https://build.opensuse.org/request/show/892685</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339201">- CHANGES IN R 4.1.0:
  FUTURE DIRECTIONS:
  * It is planned that the 4.1.x series will be the last to support
    32-bit Windows, with production of binary packages for that
    series continuing until early 2023.
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Data set esoph in package datasets now provides the correct
    numbers of controls; previously it had the numbers of cases added
    to these.  (Reported by Alexander Fowler in PR#17964.)
  NEW FEATURES:
  * www.omegahat.net is no longer one of the repositories known by
    default to setRepositories().  (Nowadays it only provides source
    packages and is often unavailable.)
  * Function package_dependencies() (in package tools) can now use
    different dependency types for direct and recursive dependencies.
  * The checking of the size of tarball in R CMD check --as-cran
    &lt;pkg&gt; may be tweaked via the new environment variable
    _R_CHECK_CRAN_INCOMING_TARBALL_THRESHOLD_, as suggested in
    PR#17777 by Jan Gorecki.
  * Using c() to combine a factor with other factors now gives a
    factor, an ordered factor when combining ordered factors with
    identical levels.
  * apply() gains a simplify argument to allow disabling of
    simplification of results.
  * The format() method for class "ftable" gets a new option justify.
    (Suggested by Thomas Soeiro.)
  * New ...names() utility.  (Proposed by Neal Fultz in PR#17705.)
  * type.convert() now warns when its as.is argument is not
    specified, as the help file always said it _should_.  In that
    case, the default is changed to TRUE in line with its change in
    read.table() (related to stringsAsFactor) in R 4.0.0.
  * When printing list arrays, classed objects are now shown _via_
    their format() value if this is a short enough character string,
    or by giving the first elements of their class vector and their
    length.
  * capabilities() gets new entry "Rprof" which is TRUE when R has
    been configured with the equivalent of --enable-R-profiling (as
    it is by default).  (Related to Michael Orlitzky's report
    PR#17836.)
  * str(xS4) now also shows extraneous attributes of an S4 object
    xS4.
  * Rudimentary support for vi-style tags in rtags() and R CMD rtags
    has been added.  (Based on a patch from Neal Fultz in PR#17214.)
  * checkRdContents() is now exported from tools; it and also
    checkDocFiles() have a new option chkInternal allowing to check
    Rd files marked with keyword "internal" as well.  The latter can
    be activated for R CMD check via environment variable
    _R_CHECK_RD_INTERNAL_TOO_.
  * New functions numToBits() and numToInts() extend the raw
    conversion utilities to (double precision) numeric.
  * Functions URLencode() and URLdecode() in package utils now work
    on vectors of URIs.  (Based on patch from Bob Rudis submitted
    with PR#17873.)
  * path.expand() can expand ~user on most Unix-alikes even when
    readline is not in use.  It tries harder to expand ~, for example
    should environment variable HOME be unset.
  * For HTML help (both dynamic and static), Rd file links to help
    pages in external packages are now treated as references to
    topics rather than file names, and fall back to a file link only
    if the topic is not found in the target package. The earlier rule
    which prioritized file names over topics can be restored by
    setting the environment variable _R_HELP_LINKS_TO_TOPICS_ to a
    false value.
  * c() now removes NULL arguments before dispatching to methods,
    thus simplifying the implementation of c() methods, _but_ for
    back compatibility keeps NULL when it is the first argument.
    (From a report and patch proposal by Lionel Henry in PR#17900.)
  * Vectorize()'s result function's environment no longer keeps
    unneeded objects.
  * Function ...elt() now propagates visibility consistently with
    ..n.  (Thanks to Lionel Henry's PR#17905.)
  * capture.output() no longer uses non-standard evaluation to
    evaluate its arguments.  This makes evaluation of functions like
    parent.frame() more consistent.  (Thanks to Lionel Henry's
    PR#17907.)
  * packBits(bits, type="double") now works as inverse of
    numToBits().  (Thanks to Bill Dunlap's proposal in PR#17914.)
  * curlGetHeaders() has two new arguments, timeout to specify the
    timeout for that call (overriding getOption("timeout")) and TLS
    to specify the minimum TLS protocol version to be used for
    https:// URIs (_inter alia_ providing a means to check for sites
    using deprecated TLS versions 1.0 and 1.1).
  * For nls(), an optional constant scaleOffset may be added to the
    denominator of the relative offset convergence test for cases
    where the fit of a model is expected to be exact, thanks to a
    proposal by John Nash.  nls(*, trace=TRUE) now also shows the
    convergence criterion.
  * Numeric differentiation _via_ numericDeriv() gets new optional
    arguments eps and central, the latter for taking central divided
    differences.  The latter can be activated for nls() via
    nls.control(nDcentral = TRUE).
  * nls() now passes the trace and control arguments to getInitial(),
    notably for all self-starting models, so these can also be fit in
    zero-noise situations via a scaleOffset.  For this reason, the
    initial function of a selfStart model must now have ... in its
    argument list.
  * bquote(splice = TRUE) can now splice expression vectors with
    attributes: this makes it possible to splice the result of
    parse(keep.source = TRUE).  (Report and patch provided by Lionel
    Henry in PR#17869.)
  * textConnection() gets an optional name argument.
  * get(), exists(), and get0() now signal an error if the first
    argument has length greater than 1.  Previously additional
    elements were silently ignored.  (Suggested by Antoine Fabri on
    R-devel.)
  * R now provides a shorthand notation for creating functions, e.g.
    \(x) x + 1 is parsed as function(x) x + 1.
  * R now provides a simple native forward pipe syntax |&gt;.  The
    simple form of the forward pipe inserts the left-hand side as the
    first argument in the right-hand side call.  The pipe
    implementation as a syntax transformation was motivated by
    suggestions from Jim Hester and Lionel Henry.
  * all.equal(f, g) for functions now by default also compares their
    environment(.)s, notably via new all.equal method for class
    function.  Comparison of nls() fits, e.g., may now need
    all.equal(m1, m2, check.environment = FALSE).
  * .libPaths() gets a new option include.site, allowing to _not_
    include the site library.  (Thanks to Dario Strbenac's suggestion
    and Gabe Becker's PR#18016.)
  * Lithuanian translations are now available.  (Thanks to Rimantas
    Zakauskas.)
  * names() now works for DOTSXP objects.  On the other hand, in
    R-lang, the R language manual, we now warn against relying on the
    structure or even existence of such dot-dot-dot objects.
  * all.equal() no longer gives an error on DOTSXP objects.
  * capabilities("cairo") now applies only to the file-based devices
    as it is now possible (if very unusual) to build R with Cairo
    support for those but not for X11().
  * There is optional support for tracing the progress of
    loadNamespace() - see its help.
  * (Not Windows.)  l10n_info() reports an additional element, the
    name of the encoding as reported by the OS (which may differ from
    the encoding part (if any) of the result from
    Sys.getlocale("LC_CTYPE").
  * New function gregexec() which generalizes regexec() to find _all_
    disjoint matches and well as all substrings corresponding to
    parenthesized subexpressions of the given regular expression.
    (Contributed by Brodie Gaslam.)
  * New function charClass() in package utils to query the
    wide-character classification functions in use (such as
    iswprint).
  * The names of quantile()'s result no longer depend on the global
    getOption("digits"), but quantile() gets a new optional argument
    digits = 7 instead.
  * grep(), sub(), regexp and variants work considerably faster for
    long factors with few levels.  (Thanks to Michael Chirico's
    PR#18063.)
  * Provide grouping of x11() graphics windows within a window
    manager such as Gnome or Unity; thanks to a patch by Ivan Krylov
    posted to R-devel.
  * The split() method for class data.frame now allows the f argument
    to be specified as a formula.
  * sprintf now warns on arguments unused by the format string.
  * New palettes "Rocket" and "Mako" for hcl.colors() (approximating
    palettes of the same name from the 'viridisLite' package).
    Contributed by Achim Zeileis.
  * The base environment and its namespace are now locked (so one can
    no longer add bindings to these or remove from these).
  * Rterm handling of multi-byte characters has been improved,
    allowing use of such characters when supported by the current
    locale.
  * Rterm now accepts ALT+ +xxxxxxxx sequences to enter Unicode
    characters as hex digits.
  * Environment variable LC_ALL on Windows now takes precedence over
    LC_CTYPE and variables for other supported categories, matching
    the POSIX behaviour.
  * duplicated() and anyDuplicated() are now optimized for integer
    and real vectors that are known to be sorted via the ALTREP
    framework. Contributed by Gabriel Becker via PR#17993.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 14
    and so packages that provide graphics devices should be
    reinstalled.
  * Graphics devices should now specify deviceVersion to indicate
    what version of the graphics engine they support.
  * Graphics devices can now specify deviceClip.  If TRUE, the
    graphics engine will never perform any clipping of output itself.
    The clipping that the graphics engine does perform (for both
    canClip = TRUE and canClip = FALSE) has been improved to avoid
    producing unnecessary artifacts in clipped output.
  * The grid package now allows gpar(fill) to be a linearGradient(),
    a radialGradient(), or a pattern().  The viewport(clip) can now
    also be a grob, which defines a clipping path, and there is a new
    viewport(mask) that can also be a grob, which defines a mask.
    These new features are only supported so far on the Cairo-based
    graphics devices and on the pdf() device.
  * (Not Windows.)  A warning is given when a Cairo-based type is
    specified for a png(), jpeg(), tiff() or bmp() device but Cairo
    is unsupported (so type = "Xlib" is tried instead).
  * grSoftVersion() now reports the versions of FreeType and
    FontConfig if they are used directly (not _via_ Pango), as is
    most commonly done on macOS.
  C-LEVEL FACILITIES:
  * The _standalone_ libRmath math library and R's C API now provide
    log1pexp() again as documented, and gain log1mexp().
  INSTALLATION on a UNIX-ALIKE:
  * configure checks for a program pkgconf if program pkg-config is
    not found.  These are now only looked for on the path (like
    almost all other programs) so if needed specify a full path to
    the command in PKG_CONFIG, for example in file config.site.
  * C99 function iswblank is required - it was last seen missing ca
    2003 so the workaround has been removed.
  * There are new configure options --with-internal-iswxxxxx,
  - -with-internal-towlower and --with-internal-wcwidth which allows
    the system functions for wide-character classification,
    case-switching and width (wcwidth and wcswidth) to be replaced by
    internal ones.  The first has long been used on macOS, AIX (and
    Windows) but this enables it to be unselected there and selected
    for other platforms (it is the new default on Solaris).  The
    second is new in this version of R and is selected by default on
    macOS and Solaris.  The third has long been the default and
    remains so as it contains customizations for East Asian
    languages.
    System versions of these functions are often minimally
    implemented (sometimes only for ASCII characters) and may not
    cover the full range of Unicode points: for example Solaris (and
    Windows) only cover the Basic Multilingual Plane.
  * Cairo installations without X11 are more likely to be detected by
    configure, when the file-based Cairo graphics devices will be
    available but not X11(type = "cairo").
  * There is a new configure option --with-static-cairo which is the
    default on macOS.  This should be used when only static cairo
    (and where relevant, Pango) libraries are available.
  * Cairo-based graphics devices on platforms without Pango but with
    FreeType/FontConfig will make use of the latter for font
    selection.
  LINK-TIME OPTIMIZATION on a UNIX-ALIKE:
  * Configuring with flag --enable-lto=R now also uses LTO when
    installing the recommended packages.
  * R CMD INSTALL and R CMD SHLIB have a new flag --use-LTO to use
    LTO when compiling code, for use with R configured with
  - -enable-lto=R.  For R configured with --enable-lto, they have
    the new flag --no-use-LTO.
    Packages can opt in or out of LTO compilation _via_ a UseLTO
    field in the DESCRIPTION file.  (As usual this can be overridden
    by the command-line flags.)
  BUILDING R on Windows:
  * for GCC &gt;= 8, FC_LEN_T is defined in config.h and hence character
    lengths are passed from C to Fortran in _inter alia_ BLAS and
    LAPACK calls.
  * There is a new text file src/gnuwin32/README.compilation, which
    outlines how C/Fortran code compilation is organized and
    documents new features:
  * R can be built with Link-Time Optimization with a suitable
    compiler - doing so with GCC 9.2 showed several
    inconsistencies which have been corrected.
  * There is support for cross-compiling the C and Fortran code
    in R and standard packages on suitable (Linux) platforms.
    This is mainly intended to allow developers to test later
    versions of compilers - for example using GCC 9.2 or 10.x has
    detected issues that GCC 8.3 in Rtools40 does not.
  * There is experimental support for cross-building R packages
    with C, C++ and/or Fortran code.
  * The R installer can now be optionally built to support a single
    architecture (only 64-bit or only 32-bit).
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++14 where
    available (which it is on all currently checked platforms): if
    not (as before) C++11 is used if available otherwise C++ is not
    supported.
    Packages which specify C++11 will still be installed using C++11.
    C++14 compilers may give deprecation warnings, most often for
    std::random_shuffle (deprecated in C++14 and removed in C++17).
    Either specify C++11 (see 'Writing R Extensions') or modernize
    the code and if needed specify C++14.  The latter has been
    supported since R 3.4.0 so the package's DESCRIPTION would need
    to include something like
    Depends: R (&gt;= 3.4)
  PACKAGE INSTALLATION on Windows:
  * R CMD INSTALL and R CMD SHLIB make use of their flag --use-LTO
    when the LTO_OPT make macro is set in file etc/${R_ARCH}/Makeconf
    or in a personal/site Makevars file.  (For details see 'Writing R
    Extensions' SS4.5.)
    This provides a valuable check on code consistency.  It does work
    with GCC 8.3 as in Rtools40, but that does not detect everything
    the CRAN checks with current GCC do.
  PACKAGE INSTALLATION on macOS:
  * The default personal library directory on builds with
  - -enable-aqua (including CRAN builds) now differs by CPU type,
    one of
    ~/Library/R/x86_64/x.y/library
    ~/Library/R/arm64/x.y/library
    This uses the CPU type R (and hence the packages) were built for,
    so when a x86_64 build of R is run under Rosetta emulation on an
    arm64 Mac, the first is used.
  UTILITIES:
  * R CMD check can now scan package functions for bogus return
    statements, which were possibly intended as return() calls (wish
    of PR#17180, patch by Sebastian Meyer). This check can be
    activated via the new environment variable
    _R_CHECK_BOGUS_RETURN_, true for --as-cran.
  * R CMD build omits tarballs and binaries of previous builds from
    the top-level package directory.  (PR#17828, patch by Sebastian
    Meyer.)
  * R CMD check now runs sanity checks on the use of LazyData, for
    example that a data directory is present and that
    LazyDataCompression is not specified without LazyData and has a
    documented value.  For packages with large LazyData databases
    without specifying LazyDataCompression, there is a reference to
    the code given in 'Writing R Extensions' SS1.1.6 to test the
    choice of compression (as in all the CRAN packages tested a
    non-default method was preferred).
  * R CMD build removes LazyData and LazyDataCompression fields from
    the DESCRIPTION file of packages without a data directory.
  ENCODING-RELATED CHANGES:
  * The parser now treats \Unnnnnnnn escapes larger than the upper
    limit for Unicode points (\U10FFFF) as an error as they cannot be
    represented by valid UTF-8.
    Where such escapes are used for outputting non-printable
    (including unassigned) characters, 6 hex digits are used (rather
    than 8 with leading zeros).  For clarity, braces are used, for
    example \U{0effff}.
  * The parser now looks for non-ASCII spaces on Solaris (as
    previously on most other OSes).
  * There are warnings (including from the parser) on the use of
    unpaired surrogate Unicode points such as \uD834.  (These cannot
    be converted to valid UTF-8.)
  * Functions nchar(), tolower(), toupper() and chartr() and those
    using regular expressions have more support for inputs with a
    marked Latin-1 encoding.
  * The character-classification functions used (by default) to
    replace the system iswxxxxx functions on Windows, macOS and AIX
    have been updated to Unicode 13.0.0.
    The character-width tables have been updated to include new
    assignments in Unicode 13.0.0.
  * The code for evaluating default (extended) regular expressions
    now uses the same character-classification functions as the rest
    of R (previously they differed on Windows, macOS and AIX).
  * There is a build-time option to replace the system's
    wide-character wctrans C function by tables shipped with R: use
    configure option --with-internal-towlower or (on Windows)
  - DUSE_RI18N_CASE in CFLAGS when building R.  This may be needed
    to allow tolower() and toupper() to work with Unicode characters
    beyond the Basic Multilingual Plane where not supported by system
    functions (e.g. on Solaris where it is the new default).
  * R is more careful when truncating UTF-8 and other multi-byte
    strings that are too long to be printed, passed to the system or
    libraries or placed into an internal buffer.  Truncation will no
    longer produce incomplete multibyte characters.
  DEPRECATED AND DEFUNCT:
  * Function plclust() from the package stats and
    package.dependencies(), pkgDepends(), getDepList(),
    installFoundDepends(), and vignetteDepends() from package tools
    are defunct.
  * Defunct functions checkNEWS() and readNEWS() from package tools
    and CRAN.packages() from utils have been removed.
  * R CMD config CXXCPP is defunct (it was deprecated in R 3.6.2).
  * parallel::detectCores() drops support for Irix (retired in 2013).
  * The LINPACK argument to chol.default(), chol2inv(),
    solve.default() and svd() has been defunct since R 3.1.0.  It was
    silently ignored up to R 4.0.3 but now gives an error.
  * Subsetting/indexing, such as ddd[*] or ddd$x on a DOTSXP
    (dot-dot-dot) object ddd has been disabled; it worked by accident
    only and was undocumented.
  BUG FIXES:
  * Many more C-level allocations (mainly by malloc and strdup) are
    checked for success with suitable alternative actions.
  * Bug fix for replayPlot(); this was turning off graphics engine
    display list recording if a recorded plot was replayed in the
    same session.  The impact of the bug became visible if resize the
    device after replay OR if attempted another savePlot() after
    replay (empty display list means empty screen on resize or empty
    saved plot).
  * R CMD check etc now warn when a package exports non-existing S4
    classes or methods, also in case of no "methods" presence.
    (Reported by Alex Bertram; reproducible example and patch by
    Sebastian Meyer in PR#16662.)
  * boxplot() now also accepts calls for labels such as ylab, the
    same as plot().  (Reported by Marius Hofert.)
  * The help page for xtabs() now correctly states that addNA is
    setting na.action = na.pass among others.  (Reported as PR#17770
    by Thomas Soeiro.)
  * The R CMD check &lt;pkg&gt; gives a longer and more comprehensible
    message when DESCRIPTION misses dependencies, e.g., in Imports:.
    (Thanks to the contributors of PR#17179.)
  * update.default() now calls the generic update() on the formula to
    work correctly for models with extended formulas.  (As reported
    and suggested by Neal Fultz in PR#17865.)
  * The horizontal position of leaves in a dendrogram is now correct
    also with center = FALSE.  (PR#14938, patch from Sebastian
    Meyer.)
  * all.equal.POSIXt() no longer warns about and subsequently ignores
    inconsistent "tzone" attributes, but describes the difference in
    its return value (PR#17277).  This check can be disabled _via_
    the new argument check.tzone = FALSE as suggested by Sebastian
    Meyer.
  * as.POSIXct() now populates the "tzone" attribute from its tz
    argument when x is a logical vector consisting entirely of NA
    values.
  * x[[2^31]] &lt;- v now works.  (Thanks to the report and patch by
    Suharto Anggono in PR#17330.)
  * In log-scale graphics, axis() ticks and label positions are now
    computed more carefully and symmetrically in their range,
    typically providing _more_ ticks, fulfilling wishes in PR#17936.
    The change really corresponds to an improved axisTicks() (package
    grDevices), potentially influencing grid and lattice, for
    example.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now correct to at
    least five digits where it was catastrophically wrong,
    previously.
  * sum(df) and similar "Summary"- and "Math"-group member functions
    now work for data frames df with logical columns, notably also of
    zero rows.  (Reported to R-devel by Martin "b706".)
  * unsplit() had trouble with tibbles due to unsound use of rep(NA,
    len)-indexing, which should use NA_integer_ (Reported to R-devel
    by Mario Annau.)
  * pnorm(x, log.p = TRUE) underflows to -Inf slightly later.
  * show(&lt;hidden S4 generic&gt;) prints better and without quotes for
    non-hidden S4 generics.
  * read.table() and relatives treated an "NA" column name as missing
    when check.names = FALSE PR#18007.
  * Parsing strings containing UTF-16 surrogate pairs such as
    "\uD834\uDD1E" works better on some (uncommon) platforms.
    sprintf("%X", utf8ToInt("\uD834\uDD1E")) should now give "1D11E"
    on all platforms.
  * identical(x,y) is no longer true for differing DOTSXP objects,
    fixing PR#18032.
  * str() now works correctly for DOTSXP and related exotics, even
    when these are doomed.
    Additionally, it no longer fails for lists with a class and
    "irregular" method definitions such that e.g. lapply(*) will
    necessarily fail, as currently for different igraph objects.
  * Too long lines in environment files (e.g. Renviron) no longer
    crash R. This limit has been increased to 100,000 bytes.
    (PR#18001.)
  * There is a further workaround for FreeType giving incorrect
    italic font faces with cairo-based graphics devices on macOS.
  * add_datalist(*, force = TRUE) (from package tools) now actually
    updates an existing data/datalist file for new content.  (Thanks
    to a report and patch by Sebastian Meyer in PR#18048.)
  * cut.Date() and cut.POSIXt() could produce an empty last interval
    for breaks = "months" or breaks = "years".  (Reported as PR#18053
    by Christopher Carbone.)
  * Detection of the encoding of 'regular' macOS locales such as
    en_US (which is UTF-8) had been broken by a macOS change:
    fortunately these are now rarely used with en_US.UTF-8 being
    preferred.
  * sub() and gsub(pattern, repl, x, *) now keep attributes of x such
    as names() also when pattern is NA (PR#18079).
  * Time differences ("difftime" objects) get a replacement and a
    rep() method to keep "units" consistent.  (Thanks to a report and
    patch by Nicolas Bennett in PR#18066.)
  * The \RdOpts macro, setting defaults for \Sexpr options in an Rd
    file, had been ineffective since R 2.12.0: it now works again.
    (Thanks to a report and patch by Sebastian Meyer in PR#18073.)
  * mclapply and pvec no longer accidentally terminate parallel
    processes started before by mcparallel or related calls in
    package parallel (PR#18078).
  * grep and other functions for evaluating (extended) regular
    expressions handle in Unicode also strings not explicitly flagged
    UTF-8, but flagged native when running in UTF-8 locale.
  * Fixed a crash in fifo implementation on Windows (PR#18031).
  * Binary mode in fifo on Windows is now properly detected from
    argument open (PR#15600, PR#18031).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1622808000">- The line %{__install} -m 755 -d %{_infodir}
  no longer works in TW or Factory.
  But without that line it works everywhere. So this instruction
  was commented out of the spec file.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1628596800">- CHANGES IN R 4.1.1:
  NEW FEATURES:
  * require(pkg, quietly = TRUE) is quieter and in particular does
    not warn if the package is not found.
  DEPRECATED AND DEFUNCT:
  * Use of ftp:// URIs should be regarded as deprecated, with
    on-going support confined to method = "libcurl" and not routinely
    tested.  (Nowadays no major browser supports them.)
  * The non-default method = "internal" is deprecated for http:// and
    ftp:// URIs for both download.file and url.
  * On Windows, method = "wininet" is deprecated for http://,
    https:// and ftp:// URIs for both download.file and url.  (A
    warning is only given for ftp://.)
    For ftp:// URIs the default method is now "libcurl" if available
    (which it is on CRAN builds).
    method = "wininet" remains the default for http:// and https://
    URIs but if libcurl is available, using method = "libcurl" is
    preferred.
  INSTALLATION:
  * make check now works also without a LaTeX installation.  (Thanks
    to Sebastian Meyer's PR#18103.)
  BUG FIXES:
  * make check-devel works again in an R build configured with
  - -without-recommended-packages.
  * qnbinom(p, size, mu) for large size/mu is correct now in a range
    of cases (PR#18095); similarly for the (size, prob)
    parametrization of the negative binomial.  Also qpois() and
    qbinom() are better and or faster for extreme cases.  The
    underlying C code has been modularized and is common to all four
    cases of discrete distributions.
  * gap.axis is now part of the axis() arguments which are passed
    from bxp(), and hence boxplot().  (Thanks to Martin Smith's
    report and suggestions in PR#18109.)
  * .First and .Last can again be set from the site profile.
  * seq.int(from, to, *) and seq.default(..) now work better in large
    range cases where from-to is infinite where the two boundaries
    are finite.
  * all.equal(x,y) now returns TRUE correctly also when several
    entries of abs(x) and abs(y) are close to .Machine$double.xmax,
    the largest finite numeric.
  * model.frame() now clears the object bit when removing the class
    attribute of a value via na.action (PR#18100).
  * charClass() now works with multi-character strings on Windows
    (PR#18104, fixed by Bill Dunlap).
  * encodeString() on Solaris now works again in Latin-1 encoding on
    characters represented differently in UTF-8.  Support for
    surrogate pairs on Solaris has been improved.
  * file.show() on Windows now works with non-ASCII path names
    representable in the current native encoding (PR#18132).
  * Embedded R on Windows can now find R home directory via the
    registry even when installed only for the current user
    (PR#18135).
  * pretty(x) with finite x now returns finite values also in the
    case where the extreme x values are close in size to the maximal
    representable number .Machine$double.xmax.
    Also, it's been tweaked for very small ranges and when a boundary
    is close (or equal) to zero; e.g., pretty(c(0,1e-317)) no longer
    has negative numbers, currently still warning about a very small
    range, and pretty(2^-(1024 - 2^-1/(c(24,10)))) is more accurate.
  * The error message for not finding vignette files when weaving has
    correct file sizes now. (Thanks to Sebastian Meyer's PR#18154.)
  * dnbinom(20, &lt;large&gt;, 1) now correctly gives 0, and similar cases
    are more accurate with underflow precaution.  (Reported by Francisco Vera Alcivar in PR#18072.)</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635163200">- repaired https://bugzilla.suse.com/show_bug.cgi?id=1191380
  (rpmacros now go to rpmmacrodir)
- minor clean-ups in spec file</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635768000">- CHANGES IN R 4.1.2:
  C-LEVEL FACILITIES:
  * The workaround in headers R.h and Rmath.h (using namespace std;)
    for the Oracle Developer Studio compiler is no longer needed now
    C++11 is required so has been removed.  A couple more usages of
    log() (which should have been std::log()) with an int argument
    are reported on Solaris.
  * The undocumented limit of 4095 bytes on messages from the
    S-compatibility macros PROBLEM and MESSAGE is now documented and
    longer messages will be silently truncated rather than
    potentially causing segfaults.
  * If the R_NO_SEGV_HANDLER environment variable is non-empty, the
    signal handler for SEGV/ILL/BUS signals (which offers recovery
    user interface) is not set. This allows more reliable debugging
    of crashes that involve the console.
  DEPRECATED AND DEFUNCT:
  * The legacy S-compatibility macros PROBLEM, MESSAGE, ERROR, WARN,
    WARNING, RECOVER, ... are deprecated and will be hidden in R
    4.2.0. R's native interface of Rf_error and Rf_warning has long
    been preferred.
  BUG FIXES:
  * .mapply(F, dots, .) no longer segfaults when dots is not a list
    and uses match.fun(F) as always documented; reported by Andrew
    Simmons in PR#18164.
  * hist(&lt;Date&gt;, ...) and hist(&lt;POSIXt&gt;, ...)  no longer pass
    arguments for rect() (such as col and density) to axis().
    (Thanks to Sebastian Meyer's PR#18171.)
  * \Sexpr{ch} now preserves Encoding(ch). (Thanks to report and
    patch by Jeroen Ooms in PR#18152.)
  * Setting the RNG to "Marsaglia-Multicarry" e.g., by RNGkind(), now
    warns in more places, thanks to Andr'e Gillibert's report and
    patch in PR#18168.
  * gray(numeric(), alpha=1/2) no longer segfaults, fixing PR#18183,
    reported by Till Krenz.
  * Fixed dnbinom(x, size=&lt;very_small&gt;, .., log=TRUE) regression,
    reported by Martin Morgan.
  * as.Date.POSIXlt(x) now keeps names(x), thanks to Davis Vaughan's
    report and patch in PR#18188.
  * model.response() now strips an "AsIs" class typically, thanks to
    Duncan Murdoch's report and other discussants in PR#18190.
  * try() is considerably faster in case of an error and long call,
    as e.g., from some do.call().  Thanks to Alexander Kaever's
    suggestion posted to R-devel.
  * qqline(y = &lt;object&gt;) such as y=I(.), now works, see also
    PR#18190.
  * Non-integer mgp par() settings are now handled correctly in
    axis() and mtext(), thanks to Mikael Jagan and Duncan Murdoch's
    report and suggestion in PR#18194.
  * formatC(x) returns length zero character() now, rather than ""
    when x is of length zero, as documented, thanks to Davis
    Vaughan's post to R-devel.
  * removeSource(fn) now retains (other) attributes(fn).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1647000000">- CHANGES IN R 4.1.3:
  NEW FEATURES:
  * The default version of Bioconductor has been changed to 3.14.
    (This is used by setRepositories and the menus in GUIs.)
  UTILITIES:
  * R CMD check --as-cran has a workaround for a bug in versions of
    file up to at least 5.41 which mis-identify DBF files last
    changed in 2022 as executables.
  C-LEVEL FACILITIES:
  * The legacy S-compatibility macros SINGLE_* in R_ext/Constants.h
    (included by R.h) are deprecated and will be removed in R 4.2.0.
  BUG FIXES:
  * Initialization of self-starting nls() models with initialization
    functions following the pre-R-4.1.0 API (without the ...
    argument) works again for now, with a deprecation warning.
  * Fixed quoting of ~autodetect~ in Java setting defaults to avoid
    inadvertent user lookup due to leading ~, reported in PR#18231 by
    Harold Gutch.
  * substr(., start, stop) &lt;- v now treats _negative_ stop values
    correctly.  Reported with a patch in PR#18228 by Brodie Gaslam.
  * Subscripting an array x without dimnames by a
    length(dim(x))-column character matrix gave "random" non-sense,
    now an error; reported in PR#18244 by Mikael Jagan.
  * ...names() now matches names(list(...)) closely, fixing PR#18247.
  * all.equal(*, scale = s) now works as intended when length(s) &gt; 1,
    partly thanks to Michael Chirico's PR#18272.
  * print(x) for long vectors x now also works for named atomic
    vectors or lists and prints the correct number when reaching the
    getOption("max.print") limit; partly thanks to a report and
    proposal by Hugh Parsonage to the R-devel list.
  * all.equal(&lt;selfStart&gt;, *) no longer signals a deprecation
    warning.
  * reformulate(*, response=r) gives a helpful error message now when
    length(r) &gt; 1, thanks to Bill Dunlap's PR#18281.
  * Modifying globalCallingHandlers inside withCallingHandlers() now
    works or fails correctly, thanks to Henrik Bengtsson's PR#18257.
  * hist(&lt;Date&gt;, breaks = "days") and hist(&lt;POSIXt&gt;, breaks = "secs")
    no longer fail for inputs of length 1.
  * qbeta(.001, .9, .009) and similar cases now converge correctly
    thanks to Ben Bolker's report in PR#17746.
  * window(x, start, end) no longer wrongly signals "'start' cannot
    be after 'end'", fixing PR#17527 and PR#18291.
  * data() now checks that its (rarely used) list argument is a
    character vector - a couple of packages passed other types and
    gave incorrect results.
  * which() now checks its arr.ind argument is TRUE rather coercing
    to logical and taking the first element - which gave incorrect
    results in package code.
  * model.weights() and model.offset() more carefully extract their
    model components, thanks to Ben Bolker and Tim Taylor's R-devel
    post.
  * list.files(recursive = TRUE) now shows all broken symlinks
    (previously, some of them may have been omitted, PR#18296).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1650628800">- CHANGES IN R 4.2.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * The formula method of aggregate() now matches the generic in
    naming its first argument x (resolving PR#18299 by Thomas
    Soeiro).
    This means that calling aggregate() with a formula as a named
    first argument requires name formula in earlier versions of R and
    name x now, so portable code should not name the argument (code
    in many packages did).
  * Calling &amp;&amp; or || with either argument of length greater than one
    now gives a warning (which it is intended will become an error).
  * Calling if() or while() with a condition of length greater than
    one gives an error rather than a warning.  Consequently,
    environment variable _R_CHECK_LENGTH_1_CONDITION_ no longer has
    any effect.
  * Windows users should consult the WINDOWS section below for some
    profound changes including
  * Support for 32-bit builds has been dropped.
  * UTF-8 locales are used where available.
  * The default locations for the R installation and personal
    library folder have been changed.
    Thanks to Tomas Kalibera for months of work on the Windows port
    for this release.
  NEW FEATURES:
  * matrix(x, n, m) now warns in more cases where length(x) differs
    from n * m, as suggested by Abby Spurdle and Wolfgang Huber in
    Feb 2021 on the R-devel mailing list.
    This warning can be turned into an error by setting environment
    variable _R_CHECK_MATRIX_DATA_ to TRUE: R CMD check --as-cran
    does so unless it is already set.
  * Function file_test() in package utils gains tests for symlinks,
    readability and writability.
  * capabilities("libxml") is now false.
    The description of capabilities("http/ftp") now reflects that it
    refers to the default method, no longer the internal one.
  * simplify2array() gains an except argument for controlling the
    exceptions used by sapply().
  * Environment variables R_LIBS_USER and R_LIBS_SITE are both now
    set to the R system default if unset or empty, and can be set to
    NULL to indicate an empty list of user or site library
    directories.
  * The warning for axis()(-like) calls in cases of relatively small
    ranges (typically in log-scale situations) is slightly improved
    _and_ suppressed from explicit calls to .axisPars() as has always
    been the intention.
  * The contrasts setter function `contrasts&lt;-` gains an explicit
    default how.many = NULL rather than just using missing(how.many).
  * grid.pretty() gains a new optional argument n = 5.
  * There is a new function .pretty() with option bounds as a
    technical-utility version of pretty().  It and pretty() gain a
    new argument f.min with a better than back-compatible default.
  * Function grDevices::axisTicks() and related functions such as
    graphics::axis() work better, notably for the log scale; partly
    because of the pretty() improvements, but also because care is
    taken e.g., when ylim is finite but diff(ylim) is infinite.
  * nclass.FD() gains a digits option.
  * The R Mathlib internal C function bd0() (called indirectly from a
    dozen probability density and distribution functions such as
    dpois(), dbinom(), dgamma(), pgamma() _etc_) has been
    complemented by a more sophisticated and (mostly) more accurate C
    function ebd0(), currently called only by internal dpois_raw()
    improving accuracy for R level dpois() and potentially others
    calling it such as dnbinom(), dgamma() or pgamma().  (Thanks to
    Morten Welinder's PR#15628.)
  * write.ftable() gains sep = " " argument as suggested by Thomas
    Soeiro.
  * The names of the locale categories supported by R's
    Sys.getlocale() and Sys.setlocale() are now provided by variable
    .LC.categories in the base namespace.
  * The Date and POSIXt methods for hist() and the histogram method
    for plot() now also use the new default col = "lightgray" in
    consistency with the corresponding change to hist()'s default for
    R 4.0.0.
  * hist.default() gains new fuzz argument, and the histogram plot
    method no longer uses fractional axis ticks when displaying
    counts ("Frequency").
  * mapply() and hence Map() now also obey the "max-or-0-if-any"
    recycling rule, such that, e.g., Map(`+`, 1:3, 1[0]) is valid
    now.
  * as.character(&lt;obj&gt;) for "hexmode" or "octmode" objects now
    fulfils the important basic rule as.character(x)[j] ===
    as.character(x[j]).
  * The set utility functions, notably intersect() have been tweaked
    to be more consistent and symmetric in their two set arguments,
    also preserving a common mode.
  * substr(ch, start,end) &lt;- new now e.g., preserves names(ch); ditto
    for substring(), thanks to a patch from Brodie Gaslam.
  * plot(&lt;lm&gt;) gains a extend.ylim.f argument, in partial response to
    PR#15285; further PR#17784 is fixed thanks to several
    contributors and a patch by Elin Waring.  The Cook's dist
    contours get customizable via cook.col and cook.lty with a
    different default color and their legend is nicer by default and
    customizable via cook.legendChanges.
  * Attempting to subset an object that is not subsettable now
    signals an error of class notSubsettableError. The
    non-subsettable object is contained in the object field of the
    error condition.
  * Subscript-out-of-bounds errors are now signaled as errors of
    class subscriptOutOfBoundsError.
  * Stack-overflow errors are now signaled as errors inheriting from
    class stackOverflowError. See ?stackOverflowError for more
    details.
  * New partly experimental Sys.setLanguage() utility, solving the
    main problem of PR#18055.
  * gettext() and gettextf() get a new option trim = TRUE which when
    set to false allows translations for strings such as "Execution
    halted\n" typical for C code.
  * An experimental implementation of hash tables is now available.
    See ?hashtab for more details.
  * identical() gains a extptr.as.ref argument for requesting that
    external pointer objects be compared as reference objects.
  * reorder() gets an argument decreasing which it passes to sort()
    for level creation; based on the wish and patch by Thomas Soeiro
    in PR#18243.
  * as.vector() gains a data.frame method which returns a simple
    named list, also clearing a long standing 'FIXME' to enable
    as.vector(&lt;data.frame&gt;, mode="list").  This breaks code relying
    on as.vector(&lt;data.frame&gt;) to return the unchanged data frame.
  * legend() is now vectorized for arguments cex, x.intersp, and
    text.width.  The latter can now also be specified as a vector
    (one element for each column of the legend) or as NA for
    computing a proper column wise maximum value of strwidth(legend).
    The argument y.intersp can be specified as a vector with one
    entry for each row of the legend.
    legend() also gains new arguments title.cex and title.font.
    Thanks to Swetlana Herbrandt.
  * Deparsing no longer remaps attribute names dim, dimnames, levels,
    names and tsp to historical S-compatible names (which structure()
    maps back).
  * sample() and sample.int() have additional sanity checks on their
    size and n arguments.
    all.equal.numeric() gains a sanity check on its tolerance
    argument - calling all.equal(a, b, c) for three numeric vectors
    is a surprisingly common error.
    mean(na.rm =), rank(na.last =), barplot(legend.text =),
    boxplot(), contour(drawlabels =), polygon(border =) and
    methods::is(class2 =) have more robust sanity checks on their
    arguments.
    R CMD Rd2pdf (used by R CMD check) has a more robust sanity check
    on the format of \alias{} commands.
  * psigamma(x, deriv) for negative x now also works for deriv = 4
    and 5; their underlying C level dpsifn() is documented in
    'Writing R Extensions'.
  * The HTML help system now uses HTML5 (wish of PR#18149).
  * ks.test() now provides exact p-values also with ties and MC
    p-values in the two-sample (Smirnov) case.  By Torsten Hothorn.
  * ks.test() gains a formula interface, with y ~ 1 for the
    one-sample (Kolmogorov) test and y ~ group for the two-sample
    (Smirnov) test.  Contributed by Torsten Hothorn.
  * The return value from ks.test() now has class c("ks.test",
    "htest") - packages using try() need to take care to use
    inherits() and not == on the class.
  * New functions psmirnov(), qsmirnov() and rsmirnov() in package
    stats implementing the asymptotic and exact distributions of the
    two-sample Smirnov statistic.
  * iconv() now allows sub = "c99" to use C99-style escapes for UTF-8
    inputs which cannot be converted to encoding to.
  * In a forward pipe |&gt; expression it is now possible to use a named
    argument with the placeholder _ in the rhs call to specify where
    the lhs is to be inserted.  The placeholder can only appear once
    on the rhs.
  * The included LAPACK sources have been updated to version 3.10.0,
    except for the four Fortran 77 routines which 3.10.0 has
    re-implemented in Fortran 90 (where the older versions have been
    retained as the R build process does not support Fortran 90).
  * path.expand() and most other uses of tilde expansion now warn if
    a path would be too long if expanded.  (An exception is
    file.exists(), which silently returns false.)
  * trunc(&lt;Date&gt;, *) now supports units = "months" or "years" for
    consistency with the POSIXt method, thanks to Dirk Eddelbuettel's
    proposal in PR#18099.
  * list2DF() now checks that its arguments are of the same length,
    rather than use recycling.
  * The HTML help system has several new features: LaTeX-like math
    can be typeset using either KaTeX or MathJax, usage and example
    code is highlighted using Prism, and for dynamic help the output
    of examples and demos can be shown within the browser if the
    knitr package is installed. These features can be disabled by
    setting the environment variable _R_HELP_ENABLE_ENHANCED_HTML_ to
    a false value.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 15
    and so packages that provide graphics devices should be
    reinstalled.
  * The grid package now allows the user to specify a "vector" of
    pattern fills.  The fill argument to gpar() accepts a list of
    gradients and/or patterns and the functions linearGradient(),
    radialGradient(), and pattern() have a new group argument.
    Points grobs (data symbols) can now also have a pattern fill.
    The grobCoords() function now returns a more informative and
    complex result.
  * The grid package has new functions for drawing isolated groups:
    grid.group(), grid.define(), and grid.use().  These functions add
    compositing operators and affine transformations to R's graphics
    capabilities.
    The grid package also has new functions for stroking and filling
    paths: grid.stroke(), grid.fill(), and grid.fillStroke().
    A new function as.path() allows the user to specify the fill rule
    for a path that is to be used for clipping, stroking, or filling;
    available options are "winding" and "evenodd".  A new function
    as.mask() allows the user to specify the type of a mask;
    available options are "alpha" and "luminance".
    These new features are only supported so far (at most) on the
    Cairo-based graphics devices and on the pdf() device.
  * dev.capabilities() reports on device support for the new
    features.
  * par() now warns about unnamed non-character arguments to prevent
    misuse such as {usr &lt;- par("usr"); par(usr)}.
  INSTALLATION:
  * Facilities for accessing ftp:// sites are no longer tested
    (except _pro tem_ for curlGetHeaders()) as modern browsers have
    removed support.
  * R can now be built with DEFS = -DSTRICT_R_HEADERS .
  PACKAGE INSTALLATION:
  * R CMD INSTALL no longer tangles vignettes. This completes an R
    CMD build change in R 3.0.0 and affects packages built before R
    3.0.2. Such packages should be re-made with R CMD build to have
    the tangled R code of vignettes shipped with the tarball.
  * USE_FC_LEN_T will become the default: this uses the correct
    prototypes for Fortran BLAS/LAPACK routines called from C/C++,
    and requires adjustment of most such calls - see 'Writing R
    Extensions' SS6.6.2.  (This has been supported since R 3.6.2.)
  * Package installation speed for packages installed with
    keep.source has been improved. This resolve the issue reported by
    Ofek Shilon in PR#18236.
  UTILITIES:
  * R CMD check can optionally report files/directories left behind
    in home, /tmp (even though TMPDIR is set) and other directories.
    See the "R Internals" manual for details.
  * R CMD check now reports byte-compilation errors during
    installation.  These are not usually fatal but may result in
    parts of the package not being byte-compiled.
  * _R_CHECK_DEPENDS_ONLY_ can be applied selectively to examples,
    tests and/or vignettes in R CMD check: see the "R Internals"
    manual.
  * _R_CHECK_SRC_MINUS_W_IMPLICIT_ now defaults to true: recent
    versions of Apple clang on macOS have made implicit function
    declarations in C into a compilation error.
  * R CMD check --as-cran makes use of the environment variable
    AUTORECONF.  See the "R Internals" manual SS8 for further details.
  * R CMD check --use-valgrind also uses valgrind when re-building
    vignettes as some non-Sweave vignettes unhelpfully comment out
    all their code when R CMD check runs vignettes.
  * Errors in re-building vignettes (unless there are LaTeX errors)
    are reported by R CMD check as ERROR rather than WARNING when
    running vignettes has been skipped (as it frequently is in CRAN
    checks and by --as-cran).
  * R CMD Rd2pdf gains a --quiet option that is used by R CMD build
    when building the PDF package manual.
  * R CMD Rd2pdf now always runs LaTeX in batch mode, consistent with
    Texinfo &gt;= 6.7. The --batch option is ignored.
  * R CMD build and R CMD check now include the Rd file name and line
    numbers in the error message of an \Sexpr evaluation failure.
  * For packages using the \doi Rd macro (now an install-time \Sexpr)
    but no other dynamic Rd content, R CMD build now produces a
    smaller tarball and is considerably faster - skipping temporary
    package installation.
  C-LEVEL FACILITIES:
  * The non-API header R_ext/R-ftp-http.h is no longer provided, as
    the entry points it covered are now all defunct.
  * A number of non-API declarations and macro definitions have been
    moved from the installed header Rinternals.h to the internal
    header Defn.h. Packages that only use entry points and
    definitions documented to be part of the API as specified in
    'Writing R Extensions' SS6 should not be affected.
  * The macro USE_RINTERNALS no longer has any effect when compiling
    package code.  Packages which also use R_NO_REMAP will need to
    ensure that the remapped names are used for calls to API
    functions that were formerly also made available as macros.
  * The deprecated legacy S-compatibility macros PROBLEM, MESSAGE,
    ERROR, WARN, WARNING, RECOVER, ... are no longer defined in
    R_exts/RS.h (included by R.h).  Replace these by calls to
    Rf_error and Rf_warning (defined in header R_ext/Error.h included
    by R.h).
    Header R_ext/RS.h no longer includes R_ext/Error.h.
  * Header R_ext/Constants.h (included by R.h) when included from C++
    now includes the C++ header cfloat rather than the C header
    float.h (now possible as C++11 is required).
  * The legacy S-compatibility macros DOUBLE_* in R_ext/Constants.h
    (included by R.h) are deprecated.
  * The deprecated S-compatibility macros SINGLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * R_Calloc, R_Free and R_Realloc are preferred to their unprefixed
    forms and error messages now use the prefix. These forms were
    introduced in R 3.4.0 and are available even when
    STRICT_R_HEADERS is defined.
  * rmultinom has been documented in 'Writing R Extensions' SS6 so is
    now part of the R API.
  * Similarly, Rtanpi, called from R level tanpi() is now part of the
    R API.
  * The long-deprecated, undocumented and non-API entry point call_R
    is no longer declared in R_ext/RS.h (included by R.h).
  * The header S.h which has been unsupported since Jan 2016 has been
    removed.  Use R.h instead.
  DEPRECATED AND DEFUNCT:
  * The (non-default and deprecated) method = "internal" for
    download.file() and url() no longer supports http:// nor ftp://
    URIs.  (It is used only for file:// URIs.)
    On Windows, download.file(method = "wininet") no longer supports
    ftp:// URIs.  (It is no longer the default method, which is
    "libcurl" and does.)
    On Windows, the deprecated method = "wininet" now gives a warning
    for http:// and https:// URIs for both download.file() and url().
    (It is no longer the default method.)
  * On Windows, the command-line option --max-mem-size and
    environment variable R_MAX_MEM_SIZE are defunct.  The memory
    allocation limit was important for 32-bit builds, but these are
    no longer supported.
  * default.stringsAsFactors() is now formally deprecated, where that
    was only mentioned on its regular help page, previously.  So it
    now gives a warning if called.
  * unix.time() is defunct now; it had been deprecated since R 3.4.0.
  BUG FIXES:
  * Setting digits = 0 in format(), print.default() (and hence
    typically print()) or options() is again invalid.  Its behaviour
    was platform-dependent, and it is unclear what "zero significant
    digits" should mean (PR#18098).
  * Messages from C code in the cairo section of package grDevices
    are now also offered for translation, thanks to Michael Chirico's
    PR#18123.
  * mean(x) with finite x now is finite also without "long.double"
    capability.
  * R CMD Rd2pdf no longer leaves an empty build directory behind
    when it aborts due to an already existing output file.  (Thanks
    to Sebastian Meyer's PR#18141.)
  * density(x, weights = w, na.rm = TRUE) when anyNA(x) is true, now
    removes weights "in parallel" to x, fixing PR#18151, reported by
    Matthias Gondan.  Additionally, it gets a subdensity option.
  * Conversion of \Sexpr[]{&lt;expR&gt;} to LaTeX or HTML no longer
    produces long blocks of empty lines when &lt;expR&gt; itself contains
    several lines all producing empty output.  Thanks to a report and
    patch by Ivan Krylov posted to R-devel.
  * R CMD build no longer fails if a package vignette uses child
    documents and inst/doc exists.  (Thanks to Sebastian Meyer's
    PR#18156.)
  * When an R documentation ('help' source) file man/foo.Rd in a
    package has \donttest{..} examples with a syntax error, it is now
    signalled as ERROR and with correct line numbers relating to the
  * -Ex.R file, thanks to Duncan Murdoch and Sebastian Meyer's
    reports and patch proposals in PR#17501.
  * Improved determination of the correct translation domain in
    non-base packages, addressing the combination of PR#18092 and
    PR#17998 (#c6) with reports and _augmented_ patch #2904 by
    Suharto Anggono.
    Note that "R-base" is no longer the default domain e.g., for
    top-level calls to gettext(); rather translation needs explicit
    domain = * specification in such cases.
  * identical(attrib.as.set=FALSE) now works correctly with data
    frames with default row names (Thanks to Charlie Gao's PR#18179).
  * txtProgressBar() now enforces a non-zero width for argument char,
    without which no progress can be visible.
  * dimnames(table(d)) is more consistent in the case where d is a
    list with a single component, thanks to Thomas Soeiro's report to
    R-devel.
    Further, table(d1, d2) now gives an error when d1 and d2 are data
    frames as suggested by Thomas in PR#18224.
  * Fix for drawing semi-transparent lines and fills on the native
    Windows graphics device (PR#18219 and PR#16694).  Thanks to Nick
    Ray for helpful diagnosis on Bugzilla.
  * The deparser now wraps sub-expressions such as if(A) ..  with
    parentheses when needed; thanks to Duncan Murdoch's PR#18232 and
    Lionel Henry's patches there.
  * remove.packages() no longer tries to uninstall Priority: base
    packages, thanks to a report and suggestions by Colin Fay in
    PR#18227.
  * win.metafile() now has xpinch and ypinch arguments so that the
    user can override Windows' (potentially wrong) guess at device
    dimensions.
  * x[i] and x[[i]] for non-integer i should now behave in all cases
    as always documented: the index used is equivalent to
    as.integer(i) unless that would overflow where trunc(i) is used
    instead; thanks to Suharto Anggono's report and patch proposals
    in PR#17977.
  * asOneSidedFormula() now associates the resulting formula with the
    global environment rather than the evaluation environment created
    for the call.
  * &lt;bibentry&gt;$name now matches the field name case-insensitively,
    consistent with bibentry() creation and the replacement method.
  * cbind() failed to detect some length mismatches with a mixture of
    time-series and non-time-series inputs.
  * The default LaTeX style file Sweave.sty used by the RweaveLatex
    driver no longer loads the obsolete ae package; thanks to a
    report by Thomas Soeiro in PR#18271.  Furthermore, it now skips
    \usepackage[T1]{fontenc} for engines other than pdfTeX (if
    detected) or if the new [nofontenc] option is used.
  * smooth.spline() now stores its logical cv argument more safely,
    fixing a rare bug when printing, and also stores n.
  * smooth.spline(x,y,*) now computes the cv.crit statistic
    correctly, also when is.unsorted(x), fixing PR#18294.
  * The data.frame method of rbind() now warns when binding
    not-wholly-recycling vectors, by analogy to the default method
    (for matrices).
  * setAs() finds the correct class for name to when multiple
    packages define a class with that name. Thanks to Gabor Csardi
    for the report.
  * Fix for detaching a package when two classes of the same name are
    present in method signatures for the same generic. Thanks to
    Gabor Csardi for the report.
  * match.arg("", c("", "a", "B")) gives a better error message, in
    part from PR#17959, thanks to Elin Waring.
  * R CMD Sweave --clean no longer removes pre-existing files or
    subdirectories (PR#18242).
  * The quartz() device no longer splits polylines into subpaths.
    That has caused narrowly-spaced lines with many points to always
    look solid even when dashed line type was used due to dash phase
    restarts.
  * Deparsing constructs such as quote(1 + `!`(2) + 3) works again as
    before R 3.5.0, thanks to the report and patch in PR#18284 by
    Suharto Anggono.
  * as.list(f) for a factor f now keeps names(f), fixing PR#18309.
  * qbeta(.001, .9, .009) and analogous qf() calls now return a
    correct value instead of NaN or wrongly 1, all with a warning;
    thanks to the report by Ludger Goeminne in PR#18302.
  * plot.lm() failed to produce the plot of residuals vs.  factor
    levels (i.e., which=5 when leverages are constant) for models
    with character predictors (PR#17840).
  * interaction.plot(..., xtick = TRUE) misplaced the x-axis line
    (PR#18305).
  * Not strictly fixing a bug, format()ing and print()ing of
    non-finite Date and POSIXt values NaN and +/-Inf no longer show
    as NA but the respective string, e.g., Inf, for consistency with
    numeric vector's behaviour, fulfilling the wish of PR#18308.
  * R CMD check no longer runs test scripts generated from
    corresponding .Rin files twice and now signals an ERROR if
    processing an .Rin script fails.
  * tools::Rd2txt() used for plain-text help pages now renders \hrefs
    (if tools::Rd2txt_options(showURLs = TRUE)) and \urls with
    percent-encoding and standards-compliant delimiting style (angle
    brackets and no URL: prefix).  \email is now rendered with a
    mailto: prefix.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1655985600">- CHANGES IN R 4.2.1:
  NEW FEATURES:
  * New function utils::findCRANmirror() to find out if a CRAN mirror
    has been selected, otherwise fallback to the main site.  This
    behaves in the same way as tools::CRAN_package_db() and is
    intended for packages wishing to access CRAN for purposes other
    than installing packages.
    The need for this was shown by a day when the main CRAN website
    was offline and a dozen or so packages which had its URL
    hardcoded failed their checks.
  INSTALLATION on a UNIX-ALIKE:
  * The libraries searched for by --with-blas (without a value) now
    include BLIS (after OpenBLAS but before ATLAS).  And on macOS,
    the Accelerate framework (after ATLAS).  (This is patterned after
    the AX_BLAS macro from the Autoconf Archive.)
  * The included LAPACK sources have been updated to 3.10.1.
  UTILITIES:
  * The (full path to) the command tidy to be used for HTML
    validation can be set by environment variable R_TIDYCMD.
  * Setting environment variable _R_CHECK_RD_VALIDATE_RD2HTML_ to a
    false value will override R CMD check --as-cran and turn off HTML
    validation.  This provides a way to circumvent a problematic
    tidy.
    The 2006 version that ships with macOS is always skipped.
  C-LEVEL FACILITIES:
  * The undocumented legacy declarations of Sint, Sfloat, SINT_MAX
    and SINT_MIN in header R.h are deprecated.
  BUG FIXES:
  * fisher.test(d) no longer segfaults for "large" d; fixing PR#18336
    by preventing/detecting an integer overflow reliably.
  * tar(., files=*) now produces correctly the warning about invalid
    uid or gid of files, fixing PR#18344, reported by Martin Morgan.
  * tk_choose.files() with multi = FALSE misbehaved on paths
    containing spaces (PR#18334) (regression introduced in R 4.0.0).
  * sort(x, partial = ind, *) now works correctly notably for the
    non-default na.last = FALSE or TRUE, fixing PR#18335 reported by
    James Edwards.
  * Environment variable _R_CHECK_XREFS_REPOSITORIES_ is only used
    for checking .Rd cross-references in R CMD check (as documented)
    and not for other uses looking for a CRAN mirror.
  * The search for a CRAN mirror when checking packages now uses
    getOption("repos") if that specifies a CRAN mirror, even when it
    does not also specify all three Bioconductor repositories (as was
    previously required).
  * The HTML code generated by tools::Rd2HTML() has been improved to
    pass tidy 5.8.0.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1667217600">- CHANGES IN R 4.2.2:
  NEW FEATURES:
  * tools::Rdiff(useDiff = TRUE) checks for the presence of an
    external diff command and switches to useDiff = FALSE if none is
    found.  This allows R CMD Rdiff to always work.
  * On Windows, environment variable R_LIBCURL_SSL_REVOKE_BEST_EFFORT
    can be used to switch to only 'best-effort' SSL certificate
    revocation checks with the default "libcurl" download method.
    This reduces security, but may be needed for downloads to work
    with MITM proxies (PR#18379).
  * (macOS) The run-time check for libraries from XQuartz for X11 and
    Tcl/Tk no longer uses otool from the Apple Developer Tools
    (PR#18400).
  * The LaTeX style for producing the PDF manuals, Rd.sty, now loads
    the standard amsmath, amsfonts and amssymb packages for greater
    coverage of math commands in the Rd \eqn and \deqn macros.  The
    \mathscr LaTeX command is also provided (via the mathrsfs
    package, if available, or the amsfonts bundle otherwise),
    fulfilling the wish of PR#18398.
  * (Windows) The default format of readClipboard() and
    writeClipboard() has been changed to 13 (CF_UNICODETEXT).
  INSTALLATION on a UNIX-ALIKE:
  * The PDF manuals (if built) can be compacted by the new target
    make compact-pdf (at the top level or in directory doc/manual).
  * There is now configure support for LLVM clang 15 on Linux, which
    defaults to position-independent (PIE) executables whereas
    gfortran does not.
  * Many small changes to ease compilation (and suppress warnings)
    with LLVM clang 15.
  BUG FIXES:
  * Rscript -e would fail if stdin were closed (Reported by Henrik
    Bengtsson.)
  * qt(*, log.p=TRUE) in outer tails no longer produces NaN in its
    final steps, thus fixing PR#18360.
  * tools::Rd2latex() now escapes hashes and ampersands when writing
    URLs, fixing LaTeX errors with such URLs in \tabular.
  * When isGeneric(f, fdef=*) is used with mismatching names, the
    warning is better understandable; reported (with fix) in PR#18370
    by Gabe Becker.
  * poly(x, n) now works again (and is now documented) when x is a
    "Date" or "POSIXct" object, or of another class while fulfilling
    mode(x) == "numeric".  This also enables poly(x, *, raw=TRUE) for
    such variables.  Reported by Michael Chirico to R-devel.
  * write.table(), write.csv() and write.csv2() restore their
    numerical precision (internal equivalent of digits = 15) after an
    interrupt (PR#18384).
  * One can now read also byte FF from a clipboard connection
    (PR#18385).
  * source("") and source(character()) now give more helpful error
    messages.
  * R CMD check --as-cran set _R_CHECK_TIMINGS_ too late to have the
    intended effect.
  * as.POSIXlt(x) now also works with very large dates x, fixing
    PR#18401 reported by Hannes M"uhleisen.
  * Files can now be extracted even from very large zip archives
    (PR#18390, thanks to Martin Jakt).
  * Non-finite objects of class "POSIXlt" are now correctly coerced
    to classes "Date" and "POSIXct"; following up on the extension to
    format() them correctly.
  * Added methods for is.finite(), is.infinite() and is.nan() for
    "POSIXlt" date-time objects.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1678881600">- CHANGES IN R 4.2.3:
  C-LEVEL FACILITIES:
  * The definition of DL_FUNC in R_ext/Rdynload.h has been changed to
    be fully C-compliant.  This means that functions loaded _via_ for
    example R_GetCCallable need to be cast to an appropriate type if
    they have any arguments.
  * .Machine has a new element sizeof.time_t to identify old systems
    with a 32-bit type and hence a limited range of date-times (and
    limited support for dates millions of years from present).
  PACKAGE INSTALLATION:
  * (Windows) The default C++ standard had accidentally been left at
    C++11 when it was changed to C++14 on Unix.
  BUG FIXES:
  * As "POSIXlt" objects may be "partially filled" and their list
    components meant to be recycled, length() now is the length of
    the longest component.
  * as.POSIXlt.Date() could underflow for dates in the far past (more
    than half a million years BCE).
  * as.Date.POSIXlt(x) would return "1970-01-01" instead of NA in R
    4.2.2, e.g., for
    x &lt;- as.POSIXlt(c("2019-01-30","2001-1-1"))
    x$mon &lt;- c(0L, NA); as.Date(x)
  * R CMD check failed to apply enabled _R_CHECK_SUGGESTS_ONLY_ to
    examples and vignettes (regression in R 4.2.0).
  * R CMD check did not re-build vignettes in separate processes by
    default (regression in R 4.2.0).
  * Running examples from HTML documentation now restores previous
    knitr settings and options (PR#18420).
  * Quartz: fonts are now located using Core Graphics API instead of
    deprecated ATS which is no longer supported in the macOS 13 SDK
    (PR#18426).  This also addresses an issue where the currently
    used font in the Quartz device context was not correctly
    retained.
  * (Windows) Math symbols in text drawing functions are again
    rendered correctly (PR#18440).  This fixes a regression in R
    4.2.1 caused by a fix in PR#18382 which uncovered an issue in
    GraphApp due to which the symbol charset was not used with TT
    Symbol font face.
  * (Windows) Installing a package with a src/Makefile.{win,ucrt}
    file includes ~/.R/Makevars.win64 in the search for user
    makevars, as documented in "R Installation and Administration"
    and done for packages with a src/Makevars.{win,ucrt} file.
  * format(&lt;POSIXlt_w/_unbalanced_sec&gt;, "....%OS&lt;n&gt;") with n &gt; 0 no
    longer accidentally uses the unbalanced seconds, thanks to
    Suharto Anggono's report (including patch) in PR#18448.
  * solve.default(a, b) works around issues with some versions of
    LAPACK when a contains NA or NaN values.
  * When UseMethod() cannot dispatch, it no longer segfaults
    producing the error message in case of a long class(), thanks to
    Joris Vankerschaver's report (including patch) in PR#18447.
  * When example(foo, ..) produces graphics on an interactive device
    it needs to open itself, it now leaves devAskNewPage() unchanged
    even when it was FALSE, thus fixing a 14 years old '&lt;FIXME&gt;'.
  * packageDescription() again catches errors from encoding
    conversions. This also fixes broken packageVersion() in C locale
    on systems where iconv does not support transliteration.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1681128000">- add patch to build with libcurl &gt;= 8</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1682078400">- CHANGES IN R 4.3.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Calling &amp;&amp; or || with LHS or (if evaluated) RHS of length greater
    than one is now always an error, with a report of the form
    'length = 4' in coercion to 'logical(1)'
    Environment variable _R_CHECK_LENGTH_1_LOGIC2_ no longer has any
    effect.
  NEW FEATURES:
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.10.1.  (This caused some platform-dependent
    changes to package check output.)  And then to the sources from
    LAPACK version 3.11.0 (with changes only to double complex
    subroutines).
  * The included LAPACK sources have been updated to include the four
    Fortran 90 routines rather than their Fortran 77 predecessors.
    This may give some different signs in SVDs or
    eigendecompositions..  (This completes the transition to LAPACK
    3.10.x begun in R 4.2.0.)
  * The LAPACK sources have been updated to version 3.11.0.  (No new
    subroutines have been added, so this almost entirely bug fixes:
    Those fixes do affect some computations with NaNs, including R's
    NA.)
  * The parser now signals _classed_ errors, notably in case of the
    pipe operator |&gt;.  The error object and message now give line and
    column numbers, mostly as proposed and provided by Duncan Murdoch
    in PR#18328.
  * toeplitz() is now generalized for asymmetric cases, with a
    toeplitz2() variant.
  * xy.coords() and xyz.coords() and consequently, e.g., plot(x,y,
    log = "y") now signal a _classed_ warning about negative values
    of y (where log(.) is NA).  Such a warning can be specifically
    suppressed or caught otherwise.
  * Regular expression functions now check more thoroughly whether
    their inputs are valid strings (in their encoding, e.g. in
    UTF-8).
  * The performance of grep(), sub(), gsub() and strsplit() has been
    improved, particularly with perl = TRUE and fixed = TRUE.  Use of
    useBytes = TRUE for performance reasons should no longer be
    needed and is discouraged: it may lead to incorrect results.
  * apropos() gains an argument dot_internals which is used by the
    completion (help(rcompgen)) engine to also see base internals
    such as .POSIXct().
  * Support in tools::Rdiff() for comparing uncompressed PDF files is
    further reduced - see its help page.
  * qqplot(x, y, ...) gains conf.level and conf.args arguments for
    computing and plotting a confidence band for the treatment
    function transforming the distribution of x into the distribution
    of y (Switzer, 1976, _Biometrika_). Contributed by Torsten
    Hothorn.
  * Performance of package_dependencies() has been improved for cases
    when the number of dependencies is large.
  * Strings newly created by gsub(), sub() and strsplit(), when any
    of the inputs is marked as "bytes", are also marked as "bytes".
    This reduces the risk of creating invalid strings and accidental
    substitution of bytes deemed invalid.
  * Support for readLines(encoding = "bytes") has been added to allow
    processing special text files byte-by-byte, without creating
    invalid strings.
  * iconv(from = "") now takes into account any declared encoding of
    the input elements and uses it in preference to the native
    encoding.  This reduces the risk of accidental creation of
    invalid strings, particularly when different elements of the
    input have different encoding (including "bytes").
  * Package repositories in getOption("repos") are now initialized
    from the repositories file when utils is loaded (if not already
    set, e.g., in .Rprofile).  (From a report and patch proposal by
    Gabriel Becker in PR#18405.)
  * compactPDF() gets a verbose option.
  * type.convert() and hence read.table() get new option tryLogical =
    TRUE with back compatible default.  When set to false, converts
    "F" or "T" columns to character.
  * Added new unit prefixes "R" and "Q" for abbreviating
    (unrealistically large) sizes beyond 10^{27} in standard = "SI",
    thanks to Henrik Bengtsson's PR#18435.
  * as.data.frame()'s default method now also works fine with atomic
    objects inheriting from classes such as "roman", "octmode" and
    "hexmode", such fulfilling the wish of PR#18421, by Benjamin
    Feakins.
  * The as.data.frame.vector() utility now errors for wrong-length
    row.names.  It warned for almost six years, with "Will be an
    error!".
  * sessionInfo() now also contains La_version() and reports codepage
    and timezone when relevant, in both print() and toLatex() methods
    which also get new option tzone for displaying timezone
    information when locale = FALSE.
  * New function R_compiled_by() reports the C and Fortran compilers
    used to build R, if known.
  * predict(&lt;lm&gt;, newdata = *) no longer unnecessarily creates an
    offset of all 0s.
  * solve() for complex inputs now uses argument tol and by default
    checks for 'computational singularity' (as it long has done for
    numeric inputs).
  * predict(&lt;rank-deficient lm&gt;, newdata=*) now obeys a new argument
    rankdeficient, with new default "warnif", warning only if there
    are non-estimable cases in newdata.  Other options include
    rankdeficient = "NA", predicting NA for non-estimable newdata
    cases.  This addresses PR#15072 by Russ Lenth and is based on his
    original proposal and discussions in PR#16158 also by David Firth
    and Elin Waring.  Still somewhat experimental.
  * Rgui console implementation now works better with the NVDA screen
    reader when the full blinking cursor is selected.  The underlying
    improvements in cursor handling may help also other screen
    readers on Windows.
  * The drop-field control in GraphApp can now be left with the TAB
    key and all controls can be navigated in the reverse order using
    the Shift+TAB key, improving accessibility of the Rgui
    configuration editor.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now fully accurate
    (instead of to "only" minimally five digits).
  * demo(error.catching) now also shows off withWarnings() and
    tryCatchWEMs().
  * As an experimental feature the placeholder _ can now also be used
    in the rhs of a forward pipe |&gt; expression as the first argument
    in an extraction call, such as _$coef. More generally, it can be
    used as the head of a chain of extractions, such as _$coef[[2]].
  * Spaces in the environment variable used to choose the R session's
    temporary directory (TMPDIR, TMP and TEMP are tried in turn) are
    now fatal.  (On Windows the 'short path' version of the path is
    tried and used if that does not contain a space.)
  * all.equal.numeric() gets a new optional switch giveErr to return
    the numeric error as attribute.  Relatedly,
    stopifnot(all.equal&lt;some&gt;(a, b, ..)) is as "smart" now, as
    stopifnot(all.equal(....)) has been already, thus allowing
    customized all.equal&lt;Some&gt;() wrappers.
  * R on Windows is now able to work with path names longer than 260
    characters when these are enabled in the system (requires at
    least Windows 10 version 1607).  Packages should be updated to
    work with long paths as well, instead of assuming PATH_MAX to be
    the maximum length.  Custom front-ends and applications embedding
    R need to update their manifests if they wish to allow this
    feature.  See
    &lt;https://blog.r-project.org/2023/03/07/path-length-limit-on-windows&gt;
    for more information.
  * 'Object not found' and 'Missing argument' errors now give a more
    accurate error context. Patch provided by Lionel Henry in
    PR#18241.
  * The @ operator is now an S3 generic. Based on contributions by
    Tomasz Kalinowski in PR#18482.
  * New generic chooseOpsMethod() provides a mechanism for objects to
    resolve cases where two suitable methods are found for an Ops
    Group Generic. This supports experimenting with alternative
    object systems. Based on contributions by Tomasz Kalinowski in
    PR#18484.
  * inherits(x, what) now accepts values other than a simple
    character vector for argument what. A new generic, nameOfClass(),
    is called to resolve the class name from what. This supports
    experimenting with alternative object systems. Based on
    contributions by Tomasz Kalinowski in PR#18485.
  * Detection of BLAS/LAPACK in use (sessionInfo()) with FlexiBLAS
    now reports the current backend.
  * The "data.frame" method for subset() now warns about extraneous
    arguments, typically catching the use of = instead of == in the
    subset expression.
  * Calling a:b when numeric a or b is longer than one may now be
    made into an error by setting environment variable
    _R_CHECK_LENGTH_COLON_ to a true value, along the proposal in
    PR#18419 by Henrik Bengtsson.
  * density(x, weights = *) now warns if automatic bandwidth
    selection happens without using weights; new optional warnWbw may
    suppress the warning.  Prompted by Christoph Dalitz' PR#18490 and
    its discussants.
  * rm(list = *) is faster and more readable thanks to Kevin Ushey's
    PR#18492.
  * The plot.lm() function no longer produces a normal Q-Q plot for
    GLMs. Instead it plots a half-normal Q-Q plot of the absolute
    value of the standardized deviance residuals.
  * The print() method for class "summary.glm" no longer shows
    summary statistics for the deviance residuals by default.  Its
    optional argument show.residuals can be used to show them if
    required.
  * The tapply() function now accepts a data frame as its X argument,
    and allows INDEX to be a formula in that case. by.data.frame()
    similarly allows INDICES to be a formula.
  * The performance of df[j] &lt;- value (including for missing j) and
    write.table(df) has been improved for data frames df with a large
    number of columns.  (Thanks to Gabriel Becker's PR#18500,
    PR#18503 and discussants, prompted by a report from Toby Dylan
    Hocking on the R-devel mailing list.)
  * The matrix multiply operator %*% is now an S3 generic, belonging
    to new group generic matrixOps.  From Tomasz Kalinowski's
    contribution in PR#18483.
  * New function array2DF() to convert arrays to data frames,
    particularly useful for the list arrays created by tapply().
  DATES and TIMES:
  * On platforms where (non-UTC) datetimes before 1902 (or before
    1900 as with system functions on recent macOS) are guessed by
    extrapolating time zones from 1902-2037, there is a warning at
    the first use of extrapolation in a session.  (As all time zones
    post 2037 are extrapolation, we do not warn on those.)
  * (Platforms using --with-internal-tzone, including Windows and by
    default macOS). How years are printed in dates or date-times can
    be controlled by environment variable R_PAD_YEARS_BY_ZERO.  The
    default remains to pad to 4 digits by zeroes, but setting value
    no gives no padding (as used by default by glibc).
  * strftime() tries harder to determine the offset for the "%z"
    format, and succeeds on the mainstream R platforms.
  * strftime() has a limit of 2048 bytes on the string produced -
    attempting to exceed this is an error.  (Previously it silently
    truncated at 255 bytes.)
  * sessionInfo() records (and by default prints) the system time
    zone as part of the locale information.  Also, the source
    (system/internal) of the date-time conversion and printing
    functions.
  * Objects of class "POSIXlt" created in this version of R always
    have 11 components: component zone is always set, and component
    gmtoff is set for times in UTC and usually set on the (almost
    all) platforms which have C-level support, otherwise is NA.
  * There are comprehensive validity checks on the structure of
    objects of class "POSIXlt" when converting (including formatting
    and printing).  (This avoids mis-conversions of hand-crafted
    objects.)
  * There is some support for using the native date-time routines on
    macOS: this is only viable on recent versions (e.g. 12.6 and 13)
    and does get wrong some historical changes (before 1900, during
    WWII).  Use of --with-internal-tzone remains the default.
  * as.POSIXct(&lt;numeric&gt;) and as.POSIXlt(.) (without specifying
    origin) now work.  So does as.Date(&lt;numeric&gt;).
  * as.Date.POSIXct(., tz) now treats several tz values, notably
    "GMT" as equivalent to "UTC", proposed and improved by Michael
    Chirico and Joshua Ulrich in PR#17674.
  * Experimental balancePOSIXlt() utility allows using "ragged" and
    or out-of-range "POSIXlt" objects more correctly, e.g., in
    subsetting and subassignments.  Such objects are now documented.
    More experimentally, a "POSIXlt" object may have an attribute
    "balanced" indicating if it is known to be filled or fully
    balanced.
  * Functions axis.Date() and axis.POSIXct() are rewritten to gain
    better default tick locations and better default formats by using
    prettyDate(). Thanks to Swetlana Herbrandt.
  * The mapping of Windows' names for time zones to IANA's 'Olson'
    names has been updated.  When ICU is available (it is by
    default), it is used to get a mapping for the current region set
    in Windows.  This can be overridden by setting environment
    variable TZ to the desired Olson name - see OlsonNames() for
    those currently available.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 16
    and so packages that provide graphics devices should be
    reinstalled.
  * The grDevices and grid packages have new functions for rendering
    typeset glyphs, primarily: grDevices::glyphInfo() and
    grid::grid.glyph().
    Rendering of typeset glyphs is only supported so far on the
    Cairo-based graphics devices and on the pdf() and quartz()
    devices.
  * The defined behaviour for "clear" and "source" compositing
    operators (via grid::grid.group()) has been changed (to align
    better with simple interpretation of original Porter-Duff
    definitions).
  * Support for gradients, patterns, clipping paths, masks, groups,
    compositing operators, and affine transformations has been added
    to the quartz() device.
  INSTALLATION on a UNIX-ALIKE:
  * A system installation of generic LAPACK 3.10.0 or later will be
    preferred to the version in the R sources.
    configure option --with-lapack=no (equivalently --without-lapack)
    forces compilation of the internal LAPACK sources.
    If --with-lapack is not specified, a system liblapack is looked
    for and used if it reports version 3.10.0 or later and does not
    contain BLAS routines.
    Packages using LAPACK will need to be reinstalled if this changes
    to using an external library.
  * On aarch64 Linux platforms using GCC, configure now defaults to
  - fPIC (instead of -fpic), as desired in PR#18326.
  * configure now checks conversion of datetimes between POSIXlt and
    POSIXct around year 2020.  Failure (which has been seen on
    platforms missing tzdata) is fatal.
  * If configure option --with-valgrind-instrumentation is given
    value 1 or 2, option --with-system-valgrind-headers is now the
    default and ignored (with a warning).  It is highly recommended
    that the system headers are installed alongside valgrind: they
    are part of its packaging on some Linux distributions and
    packaged separately (e.g. in the valgrind-devel RPM) on others.
    configure will give a warning if they are not found.
    The system headers will be required in a future release of R to
    build with valgrind instrumentation.
  * libcurl 8.x is now accepted by configure: despite a change in
    major version number it changes neither API nor ABI.
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools43, an update of the Rtools42 toolchain.  It is
    based on gcc 12 and newer versions of MinGW-W64, binutils and
    libraries.  At this time R-devel can still be built using
    Rtools42 without changes, but when R-devel is installed via the
    installer, it will by default look for Rtools43.
  * Old make targets rsync-extsoft and 32-bit ones that are no longer
    needed have been removed.
  * Default builds (including for packages) no longer select C99.
    Thus the C standard used is the default for the compiler, which
    for the toolchain in Rtools43 is C17.  (This is consistent with
    Unix builds.)
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++17 where
    available (which it is on all currently checked platforms): if
    not C++14 or C++11 is used if available otherwise C++ is not
    supported.
  * USE_FC_LEN_T is the default: this uses the correct
    (compiler-dependent) prototypes for Fortran BLAS/LAPACK routines
    called from C/C++, and requires adjustment of many such calls -
    see 'Writing R Extensions' SS6.6.1.
  * There is initial support for C++23 as several compilers are now
    supporting -std=c++23 or -std=c++2b or similar.  As for C++20,
    there no additional configure checks for C++23 features beyond a
    check that the compiler reports a __cplusplus value greater than
    that in the C++20 standard.  C++ feature tests should be used.
  * There is support for a package to indicate the version of the C
    standard which should be used to compile it, and for the
    installing user to specify this.  In most cases R defaults to the
    C compiler's default standard which is C17 (a `bug-fix' of C11) -
    earlier versions of R or compilers may have defaulted to C99.
    Current options are:
    USE_C17 Use a standard that is at most C17.  The intention is to
    allow legacy packages to still be installed when later C
    standards become the default, including packages using new
    keywords as identifiers or with K&amp;R-style function
    declarations.  This will use C17 if available, falling back
    to C11.
    USE_C90 Use the C90 (aka C89) standard.  (As that standard did
    not require compilers to identify that version, all we can
    verify is that the compiler does not claim to be using a
    later standard.  It may accept C99 features - for example
    clang accepts // to make comments.)
    USE_C99 Use the C99 standard. This should be rarely needed - it
    avoids the few new features of C11/C17 which can be useful if
    a package assumes them if C17 is specified and they are not
    implemented.
    USE_C23 Use C23 (or in future, later).  Compiler/library support
    for C23 is still being implemented, but LLVM clang from
    15.0.0 and the upcoming GCC 13 have quite extensive support.
    These can be specified as part of the SystemRequirements field in
    the package's DESCRIPTION file or _via_ options --use-C17 and so
    on of R CMD INSTALL and R CMD SHLIB.
    For further details see "Writing R Extensions" SS1.2.5.
  * (Windows) A src/Makefile.ucrt or src/Makefile.win file is now
    included after R_HOME/etcR_ARCH/Makeconf and so no longer needs
    to include that file itself.  Installation of a package with such
    a file now uses a site Makevars file in the same way as a package
    with a src/Makevars.win file would.
  * configure is now passed crucial variables such as CC and CFLAGS
    in its environment, as many packages were not setting them (as
    documented in 'Writing R Extensions' SS1.2).
    This has most effect where configure is used to compile parts of
    the package - most often by cmake or libtool which obfuscate the
    actual compile commands used.
    Also used for configure.win and configure.ucrt on Windows.
  FORTRAN FLAGS:
  * The flag -fno-optimize-sibling-calls is no longer forced for
    gfortran 7 and later.  It should no longer be needed now using
    'hidden' character-length arguments when calling BLAS/LAPACK
    routines from C/C++ is the default even for packages.  (Unless
    perhaps packages call Fortran code from C/C++ without using R's
    headers and without allowing for these arguments.)
  C-LEVEL FACILITIES:
  * The deprecated S-compatibility macros DOUBLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * The deprecated legacy typedefs of Sint and Sfloat in header R.h
    are no longer defined, and that header no longer includes header
    limits.h from C nor climits from C++.
  * New macro CAD5R() is provided in Rinternals.h and used in a few
    places in the R sources.
  * ALTREP now supports VECSXP vectors. Contributed by Gabor Csardi
    in PR#17620.
  * The Rcomplex definition (in header R_ext/Complex.h) has been
    extended to prevent possible mis-compilation when interfacing
    with Fortran (PR#18430).  The new definition causes compiler
    warnings with static initializers such as {1, 2}, which can be
    changed to {.r=1, .i=2}.
    Using the new definition from C++ depends on compiler extensions
    supporting C features that have not been incorporated into the
    C++ standards but are available in g++ and clang++: this may
    result in C++ compiler warnings but these have been worked around
    for recent versions of common compilers (GCC, Apple/LLVM clang,
    Intel).
    It is intended to change the inclusion of header R_ext/Complex.h
    by other R headers, so C/C++ code files which make use of
    Rcomplex should include that header explicitly.
  UTILITIES:
  * R CMD check does more checking of package .Rd files, warning
    about invalid email addresses and (some) invalid URIs and noting
    empty \item labels in description lists.
  * R CMD check now also reports problems when reading package news
    in md (file NEWS.md) and (optionally) plain text (file NEWS)
    formats.
  * _R_CHECK_TIMINGS_ defaults to a value from the environment even
    for R CMD check --as-cran; this allows for exceptionally fast or
    slow platforms.
    It now applies to checking PDF and HTML versions of the manuals,
    and 'checking CRAN incoming feasibility'.
  * R CMD check can optionally (but included in --as-cran) check
    whether HTML math rendering _via_ KaTeX works for the package .Rd
    files.
  * Non-interactive debugger invocations can be trapped by setting
    the environment variable _R_CHECK_BROWSER_NONINTERACTIVE_ to a
    true value.  This is enabled by R CMD check --as-cran to detect
    the use of leftover browser() statements in the package.
  * The use of sprintf and vsprintf from C/C++ has been deprecated in
    macOS 13 and is a known security risk.  R CMD check now reports
    (on all platforms) if their use is found in compiled code:
    replace by snprintf or vsnprintf respectively. [*NB:* whether
    such calls get compiled into the package is platform-dependent.]
  * Where recorded at installation, R CMD check reports the C and
    Fortran compilers used to build R.
    It reports the OS in use (if known, as given by osVersion) as
    well as that R was built for.
    It notes if a C++ standard was specified which is older than the
    current default: many packages have used C++11 to mean 'not
    C++98' - as C++11 is the minimum supported since R 4.0.0, that
    specification can probably be removed.
  * R CMD INSTALL reports the compilers (and on macOS, the SDK) used,
    and this is copied to the output of R CMD check.
    Where a C++ standard is specified, it is reported.
  * R CMD check's 'checking compilation flags in Makevars' has been
    relaxed to accept the use of flags such as -std=f2008 in
    PKG_FFLAGS.
  * tools::buildVignettes() has a new argument skip, which is used by
    R CMD check to skip (and note) vignettes with unavailable
    \VignetteDepends (PR#18318).
  * New generic .AtNames() added to enable class-specific completions
    after @. The formerly internal function findMatches() is now
    exported, mainly for use in methods for .DollarNames() and
    .AtNames().
  DEPRECATED AND DEFUNCT:
  * default.stringsAsFactors() is defunct.
  * Calling as.data.frame.&lt;class&gt;() directly (for 12 atomic classes)
    is going to be formally deprecated, currently activated by
    setting the environment variable
    _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ to non-empty, which also
    happens in R CMD check --as-cran.
  BUG FIXES:
  * Hashed environments with sizes less than 5 can now grow.
    (Reported to R-devel by Duncan Garmonsway.)
  * as.character(&lt;Rd&gt;, deparse = TRUE) failed to re-escape curly
    braces in LaTeX-like text.  (Reported by Hadley Wickham in
    PR#18324.)
  * library() now passes its lib.loc argument when requiring Depends
    packages; reported (with fix) in PR#18331 by Mikael Jagan.
  * R CMD Stangle: improved message about 'Output' files.
  * head(x, n) and tail(x, n) now signal an error if n is not
    numeric, instead of incidentally "working" sometimes returning
    all of x.  Reported and discussed by Colin Fay, in PR#18357.
  * The "lm" method for summary() now gives the correct F-statistic
    when the model contains an offset.  Reported in PR#18008.
  * C() and `contrasts&lt;-`() now preserve factor level names when
    given a function object (as opposed a function name which did
    preserve names). Reported in PR#17616.
  * c(a = 1, 2)[[]] no longer matches 2 but rather signals a
    _classed_ error.  Reported and analysed by Davis Vaughan in
    PR#18367, a duplicate of PR#18004, by Jan Meis et al.  For
    consistency, NULL[[]] is also erroneous now.  x[[]] &lt;- v gives an
    error of the same class "MissingSubscriptError".
  * The relist() function of utils now supports NULL elements in the
    skeleton (PR#15854).
  * ordered(levels = *) (missing x) now works analogously to factor(,
    ordered=TRUE); reported (with fix) by Achim Zeileis in PR#18389.
  * User-defined Rd macro definitions can now span multiple lines,
    thanks to a patch from Duncan Murdoch. Previously, the Rd parser
    silently ignored everything after the first line.
  * Plain-text help (tools::Rd2txt()) now preserves an initial blank
    line for text following description list items.
  * tools::Rd2HTML() and tools::Rd2latex() no longer split \arguments
    and \value lists at Rd comments.
  * tools::Rd2latex() now correctly handles optional text outside
    \items of argument lists as well as bracketed text at the
    beginning of sections, e.g., \value{[NULL]}.
  * as.character(&lt;POSIXt&gt;) now behaves more in line with the methods
    for atomic vectors such as numbers, and is no longer influenced
    by options().  Ditto for as.character(&lt;Date&gt;).  The
    as.character() method gets arguments digits and OutDec with
    defaults _not_ depending on options().  Use of as.character(*,
    format = .) now warns.
  * Similarly, the as.character.hexmode() and *.octmode() methods
    also behave as good citizen methods and back compatibility option
    keepStr = TRUE.
  * The as.POSIXlt(&lt;POSIXlt&gt;) and as.POSIXct(&lt;POSIXct&gt;) default
    methods now do obey their tz argument, also in this case.
  * as.POSIXlt(&lt;Date&gt;) now does apply a tz (time zone) argument, as
    does as.POSIXct(); partly suggested by Roland Fuss on the R-devel
    mailing list.
  * as.Date.POSIXlt(x) now also works when the list components are of
    unequal length, aka "partially filled" or "ragged".
  * expand.model.frame() looked up variables in the wrong environment
    when applied to models fitted without data.  Reported in
    PR#18414.
  * time() now (also) uses the ts.eps = getOption("ts.eps") argument
    and thus by default rounds values very close to the start (or
    end) of a year.  Based on a proposal by Andre"i V. Kostyrka on
    R-help.
  * Printing of a factanal() result with just one factor and sort =
    TRUE now works regularly, fixing PR#17863 by Timothy Bates,
    thanks to the 'R Contributors' working group.
  * Printing 0-length objects of class "factor", "roman", "hexmode",
    "octmode", "person", "bibentry", or "citation" now prints
    something better, one of which fixes PR#18422, reported by
    Benjamin Feakins.
  * Sys.timezone() queries timedatectl only if systemd is loaded;
    addressing a report by Jan Gorecki in PR#17421.
  * The formula method of cor.test() had scoping problems when
    environment(formula) was not the calling environment; reported
    with a patch proposal by Mao Kobayashi in PR#18439.
  * attach() of an environment with active bindings now preserves the
    active bindings.  Reported by Kevin Ushey in PR#18425.
  * BLAS detection now works also with system-provided libraries not
    available as regular files.  This fixes detection of the
    Accelerate framework on macOS since Big Sur.  Reported by David
    Novgorodsky.
  * download.file() gives a helpful error message in case of an
    invalid download.file.method option, thanks to Colin Fay's report
    in PR#18455.
  * Sporadic crashes of Rterm when using completion have been fixed.
  * Rprof() is now more reliable.  A livelock in thread
    initialization with too short sampling interval has been fixed on
    macOS.  A deadlock in using the C runtime has been fixed on
    Windows.  A potential deadlock has been prevented on Unix.
  * Cursor placement in Rgui now works even after a fixed-width font
    is selected.
  * Mandatory options (options()) are now set on startup so that
    saving and restoring them always works (PR#18372).
  * Package installation, R CMD INSTALL or install.packages(*), now
    parses each of the &lt;pkg&gt;/R/*.R files individually instead of
    first concatenating and then parse()ing the large resulting file.
    This allows parser or syntax errors to be diagnosed with correct
    file names and line numbers, thanks to Simon Dedman's report and
    Bill Dunlap's patch in PR#17859.
    This _does_ require syntactically self contained R source files
    now, fixing another inadvertent bug.
  * predict.lm(&lt;model with offset&gt;) now finds the offset in the
    correct environment, thanks to Andr'e Gillibert's report and patch
    in PR#18456.
  * getInitial(&lt;formula&gt;) now finds the selfStart model in the
    correct environment.  (Reported by Ivan Krylov in PR#18368.)
  * Fix for possible segfault when using recently-added graphics
    features, such as gradients, clipping paths, masks, and groups
    with pdf(file=NULL).
  * class(m) &lt;- class(m) no longer changes a matrix m by adding a
    class _attribute_.
  * packageDate(pkg) now only warns once if there is no pkg.
  * When ts() creates a multivariate time series, "mts", it also
    inherits from "array" now, and is.mts() is documented _and_
    stricter.
  * Rd2txt() now preserves line breaks of \verb Rd content and from
    duplicated \cr.  The former also fixes the rendering of verbatim
    output from Rd \Sexpr in plain-text help.
  * uniroot(f, interval) should no longer wrongly converge _outside_
    the interval in some cases where abs(f(x)) == Inf for an x at the
    interval boundary, thanks to posts by Ben Bolker and Serguei
    Sokol on R-devel.
  * Vectorized alpha handling in palette functions such as in gray(),
    rainbow(), or hcl.colors() works correctly now, thanks to Achim
    Zeileis' report and patch in PR#18476.
  * Formatting and print()ing of bibentry objects has dropped the
    deprecated citation.bibtex.max argument, such that the bibtex
    argument's default for print.bibentry() depends directly on the
    citation.bibtex.max option, whereas in format.bibentry() the
    option no longer applies.
  * Attempting to use a character string naming a foreign function
    entry point in a foreign function call in a package will now
    signal an error if the packages has called R_forceSymbols to
    specify that symbols must be used.
  * An error in table() could permanently set options(warn=2)
    promoting all subsequent warnings to errors.
  * The sigma() function gave misleading results for binary GLMs.  A
    new method for objects of class "glm" returns the square root of
    the estimate of the dispersion parameter using the same
    calculation as summary.glm().
  * bs() and ns() in the (typical) case of automatic knot
    construction, when some of the supposedly inner knots coincide
    with boundary knots, now moves them inside (with a warning),
    building on PR#18442 by Ben Bolker.
  * R CMD on Windows now skips the site profile with --no-site-file
    and --vanilla even when R_PROFILE is set (PR#18512, from Kevin
    Ushey).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1686916800">- CHANGES IN R 4.3.1:
  C-LEVEL FACILITIES:
  * The C-level API version of R's integrate(), Rdqags() in Applic.h,
    now returns the correct number of integrand evaluations neval,
    fixing PR#18515 reported and diagnosed by Stephen Wade.
  * The C prototypes for LAPACK calls dspgv and dtptrs in
    R_exts/Lapack.h had one too many and one too few character length
    arguments - but this has not caused any known issues. To get the
    corrected prototypes, include
    [#]include &lt;Rconfig.h&gt; // for PR18534fixed
    [#]ifdef PR18534fixed
    [#] define usePR18534fix 1
    [#]endif
    [#]include &lt;R_exts/Lapack.h&gt;
    in your C/C++ code (PR#18534).
  INSTALLATION:
  * Many of the checks of esoteric Internet operations and those
    using unreliable external sites have been moved to a new target
    that is not run by default and primarily intended for the core
    developers.  To run them use
    cd tests; make test-Internet-dev
  BUG FIXES:
  * .S3methods(), typically called from methods(), again marks
    methods from package base as visible.
    Also, the visibility of non-base methods is again determined by
    the method's presence in search().
  * tools::Rdiff() is now more robust against invalid strings, fixing
    installation tests on Windows without Rtools installed
    (PR#18530).
  * Fix (new) bug in hcl.colors(2, *), by Achim Zeileis (PR#18523).
  * head(., &lt;illegal&gt;) and tail(..) now produce more useful "Error in
    ...." error messages, fixing PR#18362.
  * Package code syntax on Windows is checked in UTF-8 when UTF-8 is
    the native encoding.
  * na.contiguous(x) now also returns the first run, when it is at
    the beginning and there is a later one of the same length;
    reported to R-devel, including a fix, by Georgi Boshnakov.
    Further, by default, it modifies only an existing attr(*,"tsp")
    but otherwise no longer sets one.
  * chol(&lt;not pos.def&gt;, pivot = &lt;T|F&gt;) now gives a correct error or
    warning message (depending on pivot), thanks to Mikael Jagan's
    (PR#18541).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1699012800">- CHANGES IN R 4.3.2:
  NEW FEATURES:
  * The default initialization of the "repos" option from the
    repositories file at startup can be skipped by setting
    environment variable R_REPOSITORIES to NULL such that
    getOption("repos") is empty if not set elsewhere.
  * qr.X() is now an implicit S4 generic in methods.
  * iconv(to = "ASCII//TRANSLIT") is emulated using substitution on
    platforms which do not support it (notably Alpine Linux).  This
    should give a human-readable conversion in ASCII on all platforms
    (rather than NA_character_).
  * trans3d() gains options continuous and verbose addressing the
    problem of possible "wrap around" when projecting too long
    curves, as reported by Achim Zeileis in PR#18537.
  * tools::showNonASCII() has been rewritten to work better on macOS
    14 (which has a changed implementation of iconv()).
  * tiff(type = "quartz") (the default on macOS) now warns if
    compression is specified: it continues to be ignored.
  INSTALLATION on a UNIX-ALIKE:
  * There is some support for building with Intel's LLVM-based
    compilers on x86_64 Linux, such as (C) icx, (C++) ipcx and
    (Fortran) ifx from oneAPI 2023.x.y.
  * There is support for using LLVM's flang-new as the Fortran
    compiler from LLVM 16.0.x (preferably 17.0.0 or later).
  UTILITIES:
  * R CMD check reports the use of the Fortran 90 random number
    generator RANDOM_NUMBER() and the subroutines to initialize it.
    'Writing R Extensions' has example code to use R's RNGs from
    Fortran.
  BUG FIXES:
  * substr(x, n, L) &lt;- cc now works (more) correctly for multibyte
    UTF-8 strings x when L &gt; nchar(x), thanks to a report and patch
    by 'Architect 95'.
  * contrib.url(character()) now returns 0-length character() as
    documented, which also avoids spurious warnings from
    available.packages() et al. in the edge case of an empty vector
    of repository URLs.
  * readChar(., 4e8) no longer fails, thanks to Kodi Arfer's report
    (PR#18557).
  * lapply(&lt;list&gt;, as.data.frame) no longer warns falsely for some
    base vector components.
  * Communication between parent and child processes in the multicore
    part of parallel could fail on platforms that do not support an
    arbitrarily large payload in system functions read()/write() on
    pipes (seen on macOS where a restriction to INT_MAX bytes is
    documented, without doing a partial read unlike Linux). The
    payload is now split into 1Gb chunks to avoid that problem.
    (PR#18571)
  * qqplot(x,y, conf.level=.) gives better confidence bounds when
    length(x) != length(y), thanks to Alexander Ploner's report and
    patch proposal (PR#18557).
  * norm(&lt;0-length&gt;, "2") now gives zero instead of an error, as all
    the other norm types, thanks to Mikael Jagan's PR#18542.
  * Build-stage Rd macros \packageAuthor and \packageMaintainer now
    process Authors@R, fixing NA results when the package DESCRIPTION
    omits Author and Maintainer fields.
  * Formatting and printing complex numbers could give things like
    0.1683-0i because of rounding error: -0i is now replaced by +0i.
  * postscript() refused to accept a title comment containing the
    letter "W" (PR#18599).
  * isoreg(c(1,Inf)) signals an error instead of segfaulting, fixing
    PR#18603.
  * tiff(type = "Xlib") was only outputting the last page of
    multi-page plots.
  * tools::latexToUtf8() again knows about \~{n} and other letters
    with tilde, fixing a regression in R 4.3.0, and about \^{i} as an
    alternative to \^{\i} (similarly with other accents).
    Furthermore, LaTeX codes for accented I letters are now correctly
    converted, also fixing related mistakes in
    tools::encoded_text_to_latex().
  * tar(*, tar = "internal") no longer creates out-of-spec tar files
    in the very rare case of user or group names longer than 32
    bytes, fixing PR#17871 with thanks to Ivan Krylov.
  * When using the "internal" timezone datetime code, adding a
    fraction of a second no longer adds one second, fixing PR#16856
    from a patch by Ivan Krylov.
  * tools::checkRd() no longer produces spurious notes about
    "unnecessary braces" from multi-line Rd results of \Sexpr macros.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1709208000">- CHANGES IN R 4.3.3:
  NEW FEATURES:
  * iconv() now fixes up variant encoding names such as "utf8"
    case-insensitively.
  DEPRECATED AND DEFUNCT:
  * The legacy encoding = "MacRoman" is deprecated in pdf() and
    postscript(): support was incomplete in earlier versions of R.
  BUG FIXES:
  * Arguments are now properly forwarded to methods on S4 generics
    with ... in the middle of their formal arguments. This was broken
    for the case when a method introduced an argument but did not
    include ... in its own formals. Thanks to Herv'e Pag`es for the
    report PR#18538.
  * Some invalid file arguments to pictex(), postscript() and xfig()
    opened a file called NA rather than throw an error.  These
    included postscript(NULL) (which some people expected to work
    like pdf(NULL)).
  * Passing filename = NA to svg(), cairo_pdf(), cairo_ps() or the
    Cairo-based bitmap devices opened a file called NA: it now throws
    an error.
  * quartz(file = NA) opened a file called NA, including when used as
    a Quartz-based bitmap device.  It now gives an error.
  * rank(&lt;long vector&gt;) now works, fixing PR#18617, thanks to Ilia
    Kats.
  * seq.int() did not adequately check its length.out argument.
  * match(&lt;POSIXct&gt;, .) is correct again for differing time zones,
    ditto for "POSIXlt", fixing PR#18618 reported by Bastian Klein.
  * drop.terms(*, dropx = &lt;0-length&gt;) now works, fixing PR#18563 as
    proposed by Mikael Jagan.
  * drop.terms(*) keeps + offset(.) terms when it should, PR#18565,
    and drop.terms() no longer makes up a response, PR#18566, fixing
    both bugs thanks to Mikael Jagan.
  * getS3method("t", "test") no longer finds the t.test() function,
    fixing PR#18627.
  * pdf() and postscript() support for the documented Adobe encodings
    "Greek" and "Cyrilllic" was missing (although the corresponding
    Windows' codepages could be used).
  * Computations of glyph metric information for pdf() and
    postscript() did not take into account that transliteration could
    replace one character by two or more (only seen on macOS 14) and
    typically warned that the information was not known.
  * rank(x) no longer overflows during integer addition, when
    computing rank average for largish but not-yet long vector x,
    fixing PR#18630, thanks to Ilia Kats.
  * list.files() on Windows now returns also files with names longer
    that 260 bytes (the Windows limit is 260 characters).
    Previously, some file names particularly with 'East Asian'
    characters were omitted.
  * cov2cor(&lt;0 x 0&gt;) now works, fixing PR#18423 thanks to Mikael
    Jagan and Elin Waring.
  * cov2cor(&lt;negative diagonal&gt;) and similar now give one warning
    instead of two, with better wording, fixing PR#18424 thanks to
    Mikael Jagan.
  * tools:: startDynamicHelp() now ensures port is in proper range,
    fixing PR#18645.
  * pbeta(x, a,b) is correct now for x=0 or 1 in the boundary cases
    where a or b or both are 0, fixing PR#18672 thanks to Michael
    Fay.
  * pmatch(x, table) for large table, also called for data frame row
    selection, dfrm[nm, ], is now interruptible, fixing PR#18656.
  * predict(&lt;rank-deficient lm&gt;, newdata=*) fix computing of nbasis,
    see Russ Lenth's comment 29 in PR#16158.
  * Added a work-around for a bug in macOS 14.3.1 and higher which
    prevents R plots in the Quartz Cocoa device from updating on
    screen.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1713960000">- CHANGES IN R 4.4.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Startup banners, R --version, sessionInfo() and R CMD check no
    longer report (64-bit) as part of the platform as this is almost
    universal - the increasingly rare 32-bit platforms will still
    report (32-bit).
    On Windows, ditto for window titles.
  * is.atomic(NULL) now returns FALSE, as NULL is not an atomic
    vector.  Strict back-compatibility would replace is.atomic(foo)
    by (is.null(foo) || is.atomic(foo)) but should happen only
    sparingly.
  NEW FEATURES:
  * The confint() methods for "glm" and "nls" objects have been
    copied to the stats package.  Previously, they were stubs which
    called versions in package MASS. The MASS namespace is no longer
    loaded if you invoke (say) confint(glmfit).  Further, the "glm"
    method for profile() and the plot() and pairs() methods for class
    "profile" have been copied from MASS to stats.  (profile.nls()
    and plot.profile.nls() were already in stats.)
  * The confint() and profile methods for "glm" objects have gained a
    possibility to do profiling based on the Rao Score statistic in
    addition to the default Likelihood Ratio. This is controlled by a
    new test = argument.
  * The pairs() method for "profile" objects has been extended with a
    which = argument to allow plotting only a subset of the
    parameters.
  * The "glm" method for anova() computes test statistics and
    p-values by default, using a chi-squared test or an F test
    depending on whether the dispersion is fixed or free.  Test
    statistics can be suppressed by giving argument test a false
    logical value.
  * In setRepositories() the repositories can be set using their
    names via name = instead of index ind =.
  * methods() and .S3methods() gain a all.names option for the (rare)
    case where functions starting with a . should be included.
  * Serializations can now be interrupted (e.g., by Ctrl-C on a
    Unix-alike) if they take too long, e.g., from save.image(),
    thanks to suggestions by Ivan Krylov and others on R-devel.
  * New startup option --max-connections to set the maximum number of
    simultaneous connections for the session.  Defaults to 128 as
    before: allowed values up to 4096 (but resource limits may in
    practice restrict to smaller values).
  * R on Windows (since Windows 10 2004) now uses the new Segment
    Heap allocator. This may improve performance of some
    memory-intensive applications.
  * When R packages are built, typically by R CMD build &lt;pkg&gt;, the
    new --user=&lt;build_user&gt; option overrides the (internally
    determined) user name, currently Sys.info()["user"] or LOGNAME.
    This is a (modified) fulfillment of Will Landau's suggestion in
    PR#17530.
  * tools::testInstalledBasic() gets new optional arguments outDir
    and testSrcdir, e.g., allowing to use it in a &lt;builddir&gt; !=
    &lt;srcdir&gt; setup, and in standard "binary" Windows installation
  * if* a source tests/ folder is present.
  * range(&lt;DT_with_Inf&gt;, finite = TRUE) now work for objects of class
    "Date", "POSIXct", and "POSIXlt" with infinite entries,
    analogously to range.default(), as proposed by Davis Vaughan on
    R-devel.  Other range()-methods can make use of new function
    .rangeNum().
  * New .internalGenerics object complementing .S3PrimitiveGenerics,
    for documentation and low-level book-keeping.
  * grid() now invisibly returns the x- and y- coordinates at which
    the grid-lines were drawn.
  * norm(., type) now also works for complex matrices.
  * kappa(., exact = TRUE, norm = *) now works for all norms and also
    for complex matrices.  In symmetric / triangular cases, the new
    argument uplo = "U" | "L" allows the upper or lower triangular
    part to be specified.
  * memDecompress(type = "unknown") recognizes compression in the
    default 'zlib' format as used by memCompress(type = "gzip").
  * memCompress() and memDecompress() will use the libdeflate library
    (&lt;https://github.com/ebiggers/libdeflate&gt;) if installed.  This
    uses the same type of compression for type = "gzip" but is 1.5-2x
    faster than the system libz library on some common platforms: the
    speed-up may depend on the library version.
  * diff() for objects of class "Date", "POSIXct", and "POSIXlt"
    accepts a units argument passed via ....
  * Dynamic help now does a much better job of rendering package
    DESCRIPTION metadata.
  * Rprof() gains an event argument and support for elapsed (real)
    time profiling on Unix (PR#18076).
  * filled.contour() gains a key.border argument.
  * tools::update_pkg_po() gets arguments pot_make and mo_make for
    _not_ re-making the corresponding files, and additionally a
    verbose argument.
  * Hexadecimal string colour specifications are now accepted in
    short form, so, for example, we can use "#123", which is
    equivalent to "#112233".
    Thanks to MikeFC for the original idea and Ella Kaye, Malcolm
    Barrett, George Stagg, and Hanne Oberman for the patch.
  * Plain-text help shows \var markup by angle brackets.
  * The new experimental primitive function declare() is intended to
    eventually allow information about R code to be communicated to
    the interpreter, compiler, and code analysis tools. The syntax
    for declarations is still being developed.
  * Functions psmirnov(), qsmirnov() and rsmirnov() in package stats
    have had argument two.sided renamed to alternative, to take into
    account that the permutation distributions of the one-sided
    statistics can be different in the case of ties.  Consequence of
    PR#18582.
  * sort() is now an implicit S4 generic in methods.
  * Formatting and printing, format(z), print(z), of complex vectors
    z no longer zap relatively small real or imaginary parts to zero,
    fixing PR#16752.  This is an API change, as it was documented
    previously to round real and imaginary parts together on purpose,
    producing nicer looking output.  As mentioned, e.g. in the PR,
    this change is compatible with many other "R-like" programming
    environments.
    We have simplified the internal code and now basically format the
    real and imaginary parts independently of each other.
  * New experimental functions Tailcall() and Exec() to support
    writing stack-space-efficient recursive functions.
  * Where characters are attempted to be plotted by pdf(),
    postscript() and xfig() which are not in the selected 8-bit
    character set (most often Latin-1) and the R session is using a
    UTF-8 locale, the warning messages will show the UTF-8 character
    rather than its bytes and one dot will be substituted per
    character rather than per byte.  (Platforms whose iconv() does
    transliteration silently plot the transliteration.)
    In a UTF-8 locale some transliterations are now done with a
    warning (e.g., dashes and Unicode minus to hyphen, ligatures are
    expanded, permille (‰) is replaced by o/oo), although the OS may
    have got there first.  These are warnings as they will continue
    to be replaced by dots in earlier versions of R.
  * The matrix multiplication functions crossprod() and tcrossprod()
    are now also primitive and S3 generic, as %*% had become in R
    4.3.0.
  * source() and example() have a new optional argument catch.aborts
    which allows continued evaluation of the R code after an error.
  * The non-Quartz tiff() devices allow additional types of
    compression if supported by the platform's libtiff library.
  * The list of base and recommended package names is now provided by
    tools::standard_package_names().
  * cairo_pdf() and cairo_ps() default to onefile = TRUE to closer
    match pdf() and postscript().
  * New option catch.script.errors provides a documented way to catch
    errors and then continue in non-interactive use.
  * L %||% R newly in base is an expressive idiom for the phrases
    if(!is.null(L)) L else R or if(is.null(L)) R else L.
  * The return value from warnings() now always inherits from
    "warnings" as documented, now also in the case of no warnings
    where it previously returned NULL.
  * as.complex("1i") now returns 0 + 1i instead of NA with a warning.
  * z &lt;- c(NA, 1i) now keeps the imaginary part Im(z[1]) == 0, no
    longer coercing to NA_complex_.  Similarly, cumsum(z) correctly
    sums real and imaginary parts separately, i.e., without
    "crosstalk" in case of NAs.
  * On Alpine Linux iconv() now maps "latin2", "latin-2", "latin9"
    and "latin-9" to encoding names the OS knows about
    (case-insensitively).
  * iconv(sub = "Unicode") now always zero-pads to four (hex) digits,
    rather than to 4 or 8.  (This seems to have become the convention
    once Unicode restricted the number of Unicode points to 2^21 - 1
    and so will never need more than 6 digits.)
  * NCOL(NULL) now returns 0 instead of 1, for consistency with
    cbind().
  * The information for the Euro glyph missing from the Adobe .afm
    files for the Courier, Helvetica and Times families has been
    copied from their URW equivalents - this will improve vertical
    centring in the pdf() and postscript() devices.
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.12.0.  The changes are almost entirely cosmetic.
  * The included LAPACK sources have been updated to version 3.12.0
    and some further double-complex routines added.
  * There are new font families for the 2014--5 URW 2.0 fonts (see
    ?pdf) which are included in recent versions of Ghostscript.
    These have font widths for most Greek glyphs and a few others
    which were missing from the original versions (whose font
    families remain available for reproducibility, although
    Ghostscript-based viewers will render using the 2.0 versions).
  * Improve the large-n efficiency of as.matrix(&lt;dist&gt;), thanks an R
    contributors effort, notably by Tim Taylor and Heather Turner,
    see PR#18660.
  * The default and numeric methods of all.equal() get a check.class
    option.
  * zapsmall() gets new optional arguments, function mFUN and min.d,
    for extra flexibility; fulfills a wish in PR#18199.  Also, it is
    now an implicit S4 generic in package methods.
  * The Rd filter for aspell() gains an ignore argument.
  * New generic function sort_by(), primarily useful for the
    data.frame method which can be used to sort rows of a data frame
    by one or more columns.
  * The icence headers for the RPC code in src/extra/xdr have been
    updated to use the GPL-compatible licence published by Oracle
    America in 2010.
  * New function pkg2HTML() in tools to create single-page HTML
    reference manuals for R packages.
  * The byte code evaluator now uses less C stack space for recursive
    calls to byte-compiled functions. It also makes more of an effort
    to avoid allocations for scalar return values.
  * New completion option backtick (disabled by default) allows
    non-syntactic completions to be wrapped in backquotes. This is
    currently only useful for Jupyter notebooks via the IRkernel
    package, and may cause problems for other backends.
  INSTALLATION:
  * The parser has been updated to work with bison 3.8.2, which is
    now used for the pre-generated parsers in gram.c, file.c, and
    gramRd.c. A few parser error messages have changed, which may
    affect code that relies on exact messages.
  INSTALLATION on a UNIX-ALIKE:
  * System valgrind headers are now required to use configure option
  - -with-valgrind-instrumentation with value 1 or 2.
  * configure will warn if it encounters a 32-bit build, as that is
    nowadays almost untested.
  * Environment variable R_SYSTEM_ABI is no longer used and so no
    longer recorded in etc/Renviron (it was not on Windows and was
    only ever used when preparing package tools).
  * If the libdeflate library and headers are available, libdeflate
    rather than libz is used to (de)compress R objects in lazy-load
    databases.  Typically tasks spend up to 5% of their time on such
    operations, although creating lazy-data databases is one of the
    exceptions.
    This can be suppressed if the library is available by the
    configure option --without-libdeflate-compression.
  * configure option --enable-lto=check has not worked reliably since
    2019 and has been removed.
  * The minimum autoconf requirement for a maintainer build has been
    increased to autoconf 2.71.
    It is intended to increase this to 2.72 for R 4.5.0: the
    distributed configure file was generated using 2.72.
  * The minimum version requirement for an external LAPACK has been
    reduced to 3.9.0.
  * No default C++ compiler is set if no C++17 compiler is detected:
    there is no longer an automatic fallback to C++14 or C++11.
    Compilers from the last five years should have sufficient
    support: for others macros CXX and CXXSTD can be set in file
    config.site to provide a fallback if needed.
    The Objective-C++ compiler now by default uses the standard
    selected by R for C++ (currently C++17) rather than the default
    standard for the C++ compiler (which on macOS is still C++98).
  INSTALLATION on macOS:
  * A new configure option --with-newAccelerate makes use of Apple's
    'new' BLAS / LAPACK interfaces in their Accelerate framework.
    Those interfaces are only available in macOS 13.3 or later, and
    building requires SDK 13.3 or later (from the Command Line Tools
    or Xcode 14.3 or later).
    By default the option uses new Accelerate for BLAS calls: to also
    use it for LAPACK use option --with-newAccelerate=lapack.  The
    later interfaces provide LAPACK 3.9.1 rather than 3.2.1: 3.9.1 is
    from 2021-04 and does not include the improved algorithms
    introduced in LAPACK 3.10.0 (including for BLAS calls).
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools44, an update of the Rtools43 toolchain.  It is
    based on GCC 13 and newer versions of MinGW-W64, binutils and
    libraries (targeting 64-bit Intel CPUs).  R-devel can no longer
    be built using Rtools43 without changes.
  * Rtools44 has experimental support for 64-bit ARM (aarch64) CPUs
    _via_ the LLVM 17 toolchain using lld, clang/flang-new and
    libc++.
  UTILITIES:
  * R CMD check notes when S4-style exports are used without
    declaring a strong dependence on package methods.
  * tools::checkRd() (used by R CMD check) detects more problems with
    \Sexpr-based dynamic content, including bad nesting of \Sexprs
    and invalid arguments.
  * tools::checkRd() now reports Rd titles and section names ending
    in a period; this is ignored by R CMD check unless environment
    variable _R_CHECK_RD_CHECKRD_MINLEVEL_ is set to -5 or smaller.
  * R CMD check now notes Rd files without an \alias, as long
    documented in 'Writing R Extensions' §1.3.1.  The check for a
    missing \description has been moved from tools::checkRd() to
    tools::checkRdContents().
  * R CMD check now visits inst/NEWS.Rd and OS-specific man
    subdirectories when checking Rd files.
  * tools::checkDocFiles() and tools::checkRdContents() now also
    check internal Rd files by default, but "specially" (ignoring
    missing documentation of arguments).
  * R CMD Rdiff gets option --useEx.
  * R CMD check now warns on non-portable uses of Fortran KIND such
    as INTEGER(KIND=4) and REAL(KIND=8).
    To see the failing lines set environment variable
    _R_CHECK_FORTRAN_KIND_DETAILS_ to a true value.
  * When checking Rd files, R CMD check now notes some of the "lost
    braces" that tools::checkRd() finds.  Typical problems are Rd
    macros missing the initial backslash (e.g., code{...}), in-text
    set notation (e.g., {1, 2}, where the braces need escaping), and
    \itemize lists with \describe-style entries of the form
    \item{label}{description}.
  * R CMD INSTALL (and hence check) will compile C++ code with
  - DR_NO_REMAP if environment variable _R_CXX_USE_NO_REMAP_ is set
    to a true value.  It is planned that this will in future become
    the default for compiling C++.
  * The new built-in Rd macro \dontdiff{} can be used to mark example
    code whose output should be ignored when comparing check output
    to reference output (tests/Examples/&lt;pkg&gt;-Ex.Rout.save).  The
    \dontdiff tag, like \donttest, is _not_ shown on the rendered
    help page, so provides a clean alternative to ##
    IGNORE_RDIFF_(BEGIN|END) comments.
  * R CMD build when there is no NAMESPACE, now uses the recommended
    exportPattern("^[^.]"), instead of exporting everything.
  * R CMD check now warns about non-ASCII characters in the NAMESPACE
    file (in addition to R files). Such packages are not portable and
    may fail to install on some platforms.
  C-LEVEL FACILITIES:
  * Headers R_ext/Applic.h and R-ext/Linpack.h used to include
    R_ext/BLAS.h although this was undocumented and unneeded by their
    documented entry points.  They no longer do so.
  * New function R_missing(), factored out from do_missing(), used to
    fix PR#18579.
  * SEXP type S4SXP has been renamed to OBJSXP to support
    experimenting with alternative object systems.  The S4SXP value
    can still be used in C code but is now deprecated.  Based on
    contributions from the R Consortium's Object-Oriented Programming
    Working Group.
  * New function pow1p(x,y) for accurate (1+x)^y.
  * mkCharLenCE was incorrectly documented to take a size_t length
    but was implemented with int (and character strings in R are
    limited to 2^31 - 1 bytes).
  DEPRECATED AND DEFUNCT:
  * data() no longer handles zipped data from long-defunct (since R
    2.13.0) --use-zip-data installations.
  * The legacy graphics devices pictex() and xfig() are now
    deprecated.  They do not support recent graphics enhancements and
    their font handling is rudimentary. The intention is to retain
    them for historical interest as long as they remain somewhat
    functional.
  * Support for encoding = "MacRoman" has been removed from the pdf()
    and postscript() devices - this was a legacy encoding supporting
    classic macOS up to 2001 and no longer has universal libiconv
    support.
  * is.R() is deprecated as no other S dialect is known to be in use
    (and this could only identify historical dialects, not future
    ones).
    Further information on calls can be obtained by setting the
    environment variable _R_DEPRECATED_IS_R_ to error which turns the
    deprecation warning into an error and so by default gives a
    traceback.  (This is done by R CMD check --as-cran.)
  * UseMethod() no longer forwards local variables assigned in the
    generic function into method call environments before evaluating
    the method body. This makes method calls behave more like
    standard function calls and makes method code easier to analyze
    correctly.
  * The twelve as.data.frame.&lt;class&gt;() methods which were deprecated
    only via _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ and in R CMD
    check --as-cran are formally deprecated now in favour of calling
    as.data.frame() or as.data.frame.vector().  The deprecation
    "check" now works also when as.data.frame() is S4 generic thanks
    to Ivan Krylov.
  * The default method for the directional comparison operators &lt;, &gt;,
    &lt;=, and &gt;= now signals an error when one of the operands is a
    language object, i.e. a symbol or a call.
  * For terms.formula(), deprecate abb and neg.out arguments
    _formally_ in addition to just documenting it.
  BUG FIXES:
  * The methods package is more robust to not being attached to the
    search path.  More work needs to be done.
  * pairwise.t.test() misbehaved when subgroups had 0 DF for
    variance, even with pool.sd = TRUE.  (PR#18594 by Jack Berry).
  * Probability distribution functions [dpq]&lt;distrib&gt;(x, *), but also
    bessel[IKJY](x, .) now consistently preserve attributes(x) when
    length(x) == 0, e.g., for a 2 x 0 matrix, thanks to Karolis
    Koncevičius' report PR#18509.
  * Group "Summary" computations such as sum(1:3, 4, na.rm = 5, NA,
    7, na.rm = LL) now give an error instead of either 17 or NN for
    LL true or false, as proposed by Ivan Krylov on the R-devel
    mailing list.  (This also means it is now an error to specify
    na.rm more than once.)
  * as.complex(x) now returns complex(real = x, imaginary = 0) for
    _all_ numerical and logical x, notably also for NA or
    NA_integer_.
  * Directories are now omitted by file.copy(, recursive = FALSE) and
    in file.append() (PR#17337).
  * gsub() and sub() are now more robust to integer overflow when
    reporting errors caused by too large input strings (PR#18346).
  * Top-level handlers are now more robust to attempts to remove a
    handler whilst handlers are running (PR#18508).
  * The handling of Alt+F4 in dialogs created on Windows using
    GraphApp has been fixed (PR#13870).
  * density() more consistently computes grid values for the
    FFT-based convolution, following Robert Schlicht's analysis and
    proposal in PR#18337, correcting density values typically by a
    factor of about 0.999.  Argument old.coords = TRUE provides back
    compatibility.
  * palette.colors() gains a name argument that defaults to FALSE
    controlling whether the vector of colours that is returned has
    names (where possible).  PR#18529.
  * tools::xgettext() no longer extracts the (non-translatable) class
    names from warningCondition and errorCondition calls.
  * S3method(&lt;gen&gt;, &lt;class&gt;, &lt;func&gt;) in the NAMESPACE file now works
    (again) when &lt;func&gt; is visible from the namespace, e.g.,
    imported, or in base.
  * getParseData(f) now also works for a function defined in the
    first of several &lt;pkg&gt;/R/*.R source files, thanks to Kirill
    Müller's report and Duncan Murdoch's patch in PR#16756.
  * Rd \Sexpr macros with nested #ifdef conditionals were not
    processed.
  * A non-blocking connection with non-default encoding (such as a
    socket) now correctly returns from readLines() after new data has
    arrived also when its EOF had been reached previously.  Thanks to
    Peter Meilstrup's report on R-devel and Ivan Krylov's report and
    patch proposal in PR#18555.
  * tools::checkRdContents() failed to detect empty argument
    descriptions when they spanned multiple lines, including those
    generated by prompt().  These cases are now noted by R CMD check.
  * Plain-text help no longer outputs spurious colons in the
    arguments list (for multi-line \item labels in the Rd source).
  * kappa() and rcond() work correctly in more cases; kappa(., norm =
    "2") now warns that it computes the 1-norm with (default) exact =
    FALSE; prompted by Mikael Jagan's quite comprehensive PR#18543.
  * Rd skeletons generated by prompt() or promptData() now use a
    dummy title (so R CMD build works).  tools::checkRdContents() has
    been updated to detect such template leftovers, including from
    promptPackage().
  * When S4 method dispatch fails because no method was found, the
    error message now includes the signature argument names; thanks
    to Michael Chirico's proposal on the R-devel list.
  * withAutoprint({ .. }) now preserves srcrefs previously lost,
    thanks to Andrew Simmons' report plus fix in PR#18572.
  * transform.data.frame() no longer adjusts names; in particular,
    untransformed variables are kept as-is, including those with
    syntactically invalid names (PR#17890).
  * The keep.source option for Rd \Sexpr blocks is no longer ignored.
  * The formula methods for t.test() and wilcox.test() now catch when
    paired is passed, addressing PR#14359; use Pair(x1, x2) ~ 1 for a
    paired test.
  * The level reported in the browser prompt was often too large. It
    now shows the number of browser contexts on the stack.
  * For cbind() and rbind(), the optional deparse.level argument is
    now properly passed to methods, thanks to Mikael Jagan's PR#18579
    and comments there.
  * Some error and warning messages for large ('long vector')
    matrix(v, nr, nc) and dim(m) &lt;- d are now correct about sizes,
    using long long formatting, fixing PR#18612 (and more) reported
    by Mikael Jagan.
  * readChar(useBytes = TRUE) now terminates strings even when the
    underlying connection uses extra spaces in the input buffer.
    This fixes problems with extra garbage seen with gzip
    connections, PR#18605.
  * Named capture in PCRE regular expressions now works also with
    more than 127 named groups (PR#18588).
  * Datetime functions are now robust against long jumps when dealing
    with internal time zone changes.  This avoids confusing warnings
    about an invalid time zone, previously triggered by turning
    warnings into errors or handling them via tryCatch (PR#17966,
    PR#17780).
  * Datetime functions now restore even an empty TZ environment
    variable after internal time zone changes (PR#17724).  This makes
    results of datetime functions with this (typically unintentional)
    setting more predictable.
  * drop.terms(*) now drops response as by default, keep.response =
    FALSE, fixing PR#18564 thanks to Mikael Jagan.
  * dummy.coef(.) now also works for lm()-models with character
    categorical predictor variables rather than factor ones, fixing
    PR#18635 reported by Jinsong Zhao.
  * formals(f) &lt;- formals(f) now also works for a function w/o
    arguments and atomic _constant_ body(f).
  * Correct as.function(&lt;invalid list&gt;, .)'s error message.
  * removeSource() is yet more thorough in finding and removing
    "srcref" and the other source references from parsed R language
    chunks, fixing PR#18638 thanks to Andrew Simmons.
  * dgeom() is more accurate now, notably when its result is very
    small, fixing PR#18642 thanks to the proposal of Morten Welinder,
    also improving other instances where C level binom_raw(x, n, ..)
    has x == 0 or x== n.
  * warning() with options(warn = 1) has improved output for
    multi-line messages.
  * axis.Date() and axis.POSIXct() now respect the par("lab") setting
    for the number of pretty() intervals.
  * Comparisons for language objects (which are based on deparsing)
    are now more careful about using accurate deparsed results
    (PR#18676).
  * Plain-text help (Rd2txt) now correctly preserves blank lines
    following single-line \dontrun code.
  * &lt;POSIXlt&gt;[*] no longer sets wrong "balanced" attribute, fixing
    PR#18681 thanks to Mikael Jagan.
  * str(&lt;classed-call&gt;) now deparses the call as expected, fixing
    PR#18684, reported by Dave Slager.
  * In Rd examples, code following the closing brace of a \dontrun,
    \dontshow or \donttest tag on the same line is no longer skipped
    when R CMD check runs the examples.
  * as.data.frame(matrix(*, ncol=0)) now gets valid names() and
    colnames(); reported by Davis Vaughan on the R-devel list.
  * Internal Mathlib function stirlerr(n) is now almost fully
    (52-bit) accurate for all n &gt;= ~5.9 and more accurate also in the
    range 1 -- 5.9.  This entails small ("after 12th decimal")
    changes in density functions, e.g., dgamma() in _some_ regions of
    their support.  The fix was partly prompted by Morten Welinder's
    PR#18640.
  * Numbers like 9876543.2 are now considered non-integer by Mathlib
    internal R_nonint(), amending original fix of PR#15734.
  * Rd comment lines no longer cause broken paragraphs in the
    rendered PDF and plain-text help. In code blocks, pure comment
    lines (starting with %) no longer produce an empty line.
  * xtabs(Freq ~ .) now consistently defaults to na.action = na.pass,
    using na.rm = FALSE (added as an argument) when summing over Freq
    (PR#17770).
  * tools::testInstalledPackage() is no longer silent about failures
    from running examples or tests and its return code no longer
    ignores failures from checking vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1718366400">- CHANGES IN R 4.4.1:
  C-LEVEL FACILITIES:
  * Functions R_atof and R_strtod declared in header R_ext/Utils.h
    are now documented in 'Writing R Extensions' and so formally part
    of the API.
  * The non-API entry points Rf_setSVector, Rf_StringFalse,
    Rf_StringTrue and Rf_isBlankString have been added to those
    reported by R CMD check.
  * The new function Rf_allocLang is now available. This provides an
    alternative to the idiom of calling Rf_allocList followed by
    SET_TYPEOF.
  UTILITIES:
  * R CMD check now reports as warnings what gfortran calls 'Fortran
    2018 deleted features', all of which have long been marked as
    'obsolescent' and some of which were deleted in Fortran 2008 or
    earlier.  Fortran compilers are no longer required to support
    these.
  BUG FIXES:
  * as.numeric(), scan(), type.convert() and other places which use
    the internal C function R_strtod now require a _non-empty_ digit
    sequence in a decimal or binary exponent.  This aligns with the
    C/POSIX standard for strtod and with ?NumericConstants.
  * as.data.frame(m, make.names=NA) now works correctly for a matrix
    m with NA's in row names.
  * The error message from &lt;POSIXlt&gt;[["hour"]] and similar now
    mentions *[[, "hour"]], as wished for in PR#17409 and proposed by
    Michael Chirico.
  * qbinom() and potentially qpois(), qnbinom(), no longer sometimes
    fail accurate inversion (of pbinom(), etc), thanks to Christopher
    Chang's report and patch in PR#18711.
  * The internal help server on Windows can again serve requests sent
    in quick succession, fixing a regression in R 4.4.0.
  * debugcall(&lt;S3Generic&gt;()) now also works when a corresponding
    S4-generic version is in the methods cache (PR#18143).
  * Package tools' toTitleCase(ch0) now returns character(0) when ch0
    is of zero length; fixing PR#18724, reported by David Hugh Jones.
  * R CMD check is no longer broken (without a check result and no
    explanation in 00check.log) for a package which declares an
    invalid VignetteBuilder in DESCRIPTION but has no vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1730376000">- CHANGES IN R 4.4.2:
  C-LEVEL FACILITIES:
  * The S-compatibility macros F77_COM and F77_COMDECL defined in
    header R_ext/RS.h are deprecated and will be removed shortly.  We
    could find no record of their use.
  BUG FIXES:
  * Mathlib function lgammacor(x) no longer warns about underflow to
    zero for large x.
  * Text widths and heights were incorrectly reported by the Quartz
    device if the drawing context didn't exist yet (typically when
    drawing off-screen to a window that is yet to appear, see
    PR#18591).
  * The Quartz device could segfault in cases where paths with spaces
    are used in the new glyph drawing API.  Thanks to Tomek
    Gieorgijewski (PR#18758).
  * On macOS in R CRAN builds, it is again possible to read
    little-endian UTF-16 text with a BOM from a connection using
    encoding="UTF-16".  Users building R from source should avoid
    using the system libiconv in macOS 14.1 and later.
  * methods' internal .requirePackage() now re-enables primitive
    method dispatch when needed; thanks to Ivan Krylov for
    demystifying CRAN package check failures on the R-devel mailing
    list.</changelog>
</package>
<package pkgid="cf4c62f246d0230fc56ef80b4219d24508bb9745228763104c0788e202a78535d69ffde8d838a8b2a0cf930b45cf3e3612a112b1fba3c98263e8f2f8524a6b26" name="R-tcltk-debuginfo" arch="x86_64">
  <version epoch="0" ver="4.4.2" rel="51.0.2.2.sr20241103"/>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1620302400">- To get in sync with d:l:R:autoCRAN the Matrix package's split
  in -devel was reversed.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339200">- improved spec file according to comments of dimstar in
  https://build.opensuse.org/request/show/892685</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339201">- CHANGES IN R 4.1.0:
  FUTURE DIRECTIONS:
  * It is planned that the 4.1.x series will be the last to support
    32-bit Windows, with production of binary packages for that
    series continuing until early 2023.
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Data set esoph in package datasets now provides the correct
    numbers of controls; previously it had the numbers of cases added
    to these.  (Reported by Alexander Fowler in PR#17964.)
  NEW FEATURES:
  * www.omegahat.net is no longer one of the repositories known by
    default to setRepositories().  (Nowadays it only provides source
    packages and is often unavailable.)
  * Function package_dependencies() (in package tools) can now use
    different dependency types for direct and recursive dependencies.
  * The checking of the size of tarball in R CMD check --as-cran
    &lt;pkg&gt; may be tweaked via the new environment variable
    _R_CHECK_CRAN_INCOMING_TARBALL_THRESHOLD_, as suggested in
    PR#17777 by Jan Gorecki.
  * Using c() to combine a factor with other factors now gives a
    factor, an ordered factor when combining ordered factors with
    identical levels.
  * apply() gains a simplify argument to allow disabling of
    simplification of results.
  * The format() method for class "ftable" gets a new option justify.
    (Suggested by Thomas Soeiro.)
  * New ...names() utility.  (Proposed by Neal Fultz in PR#17705.)
  * type.convert() now warns when its as.is argument is not
    specified, as the help file always said it _should_.  In that
    case, the default is changed to TRUE in line with its change in
    read.table() (related to stringsAsFactor) in R 4.0.0.
  * When printing list arrays, classed objects are now shown _via_
    their format() value if this is a short enough character string,
    or by giving the first elements of their class vector and their
    length.
  * capabilities() gets new entry "Rprof" which is TRUE when R has
    been configured with the equivalent of --enable-R-profiling (as
    it is by default).  (Related to Michael Orlitzky's report
    PR#17836.)
  * str(xS4) now also shows extraneous attributes of an S4 object
    xS4.
  * Rudimentary support for vi-style tags in rtags() and R CMD rtags
    has been added.  (Based on a patch from Neal Fultz in PR#17214.)
  * checkRdContents() is now exported from tools; it and also
    checkDocFiles() have a new option chkInternal allowing to check
    Rd files marked with keyword "internal" as well.  The latter can
    be activated for R CMD check via environment variable
    _R_CHECK_RD_INTERNAL_TOO_.
  * New functions numToBits() and numToInts() extend the raw
    conversion utilities to (double precision) numeric.
  * Functions URLencode() and URLdecode() in package utils now work
    on vectors of URIs.  (Based on patch from Bob Rudis submitted
    with PR#17873.)
  * path.expand() can expand ~user on most Unix-alikes even when
    readline is not in use.  It tries harder to expand ~, for example
    should environment variable HOME be unset.
  * For HTML help (both dynamic and static), Rd file links to help
    pages in external packages are now treated as references to
    topics rather than file names, and fall back to a file link only
    if the topic is not found in the target package. The earlier rule
    which prioritized file names over topics can be restored by
    setting the environment variable _R_HELP_LINKS_TO_TOPICS_ to a
    false value.
  * c() now removes NULL arguments before dispatching to methods,
    thus simplifying the implementation of c() methods, _but_ for
    back compatibility keeps NULL when it is the first argument.
    (From a report and patch proposal by Lionel Henry in PR#17900.)
  * Vectorize()'s result function's environment no longer keeps
    unneeded objects.
  * Function ...elt() now propagates visibility consistently with
    ..n.  (Thanks to Lionel Henry's PR#17905.)
  * capture.output() no longer uses non-standard evaluation to
    evaluate its arguments.  This makes evaluation of functions like
    parent.frame() more consistent.  (Thanks to Lionel Henry's
    PR#17907.)
  * packBits(bits, type="double") now works as inverse of
    numToBits().  (Thanks to Bill Dunlap's proposal in PR#17914.)
  * curlGetHeaders() has two new arguments, timeout to specify the
    timeout for that call (overriding getOption("timeout")) and TLS
    to specify the minimum TLS protocol version to be used for
    https:// URIs (_inter alia_ providing a means to check for sites
    using deprecated TLS versions 1.0 and 1.1).
  * For nls(), an optional constant scaleOffset may be added to the
    denominator of the relative offset convergence test for cases
    where the fit of a model is expected to be exact, thanks to a
    proposal by John Nash.  nls(*, trace=TRUE) now also shows the
    convergence criterion.
  * Numeric differentiation _via_ numericDeriv() gets new optional
    arguments eps and central, the latter for taking central divided
    differences.  The latter can be activated for nls() via
    nls.control(nDcentral = TRUE).
  * nls() now passes the trace and control arguments to getInitial(),
    notably for all self-starting models, so these can also be fit in
    zero-noise situations via a scaleOffset.  For this reason, the
    initial function of a selfStart model must now have ... in its
    argument list.
  * bquote(splice = TRUE) can now splice expression vectors with
    attributes: this makes it possible to splice the result of
    parse(keep.source = TRUE).  (Report and patch provided by Lionel
    Henry in PR#17869.)
  * textConnection() gets an optional name argument.
  * get(), exists(), and get0() now signal an error if the first
    argument has length greater than 1.  Previously additional
    elements were silently ignored.  (Suggested by Antoine Fabri on
    R-devel.)
  * R now provides a shorthand notation for creating functions, e.g.
    \(x) x + 1 is parsed as function(x) x + 1.
  * R now provides a simple native forward pipe syntax |&gt;.  The
    simple form of the forward pipe inserts the left-hand side as the
    first argument in the right-hand side call.  The pipe
    implementation as a syntax transformation was motivated by
    suggestions from Jim Hester and Lionel Henry.
  * all.equal(f, g) for functions now by default also compares their
    environment(.)s, notably via new all.equal method for class
    function.  Comparison of nls() fits, e.g., may now need
    all.equal(m1, m2, check.environment = FALSE).
  * .libPaths() gets a new option include.site, allowing to _not_
    include the site library.  (Thanks to Dario Strbenac's suggestion
    and Gabe Becker's PR#18016.)
  * Lithuanian translations are now available.  (Thanks to Rimantas
    Zakauskas.)
  * names() now works for DOTSXP objects.  On the other hand, in
    R-lang, the R language manual, we now warn against relying on the
    structure or even existence of such dot-dot-dot objects.
  * all.equal() no longer gives an error on DOTSXP objects.
  * capabilities("cairo") now applies only to the file-based devices
    as it is now possible (if very unusual) to build R with Cairo
    support for those but not for X11().
  * There is optional support for tracing the progress of
    loadNamespace() - see its help.
  * (Not Windows.)  l10n_info() reports an additional element, the
    name of the encoding as reported by the OS (which may differ from
    the encoding part (if any) of the result from
    Sys.getlocale("LC_CTYPE").
  * New function gregexec() which generalizes regexec() to find _all_
    disjoint matches and well as all substrings corresponding to
    parenthesized subexpressions of the given regular expression.
    (Contributed by Brodie Gaslam.)
  * New function charClass() in package utils to query the
    wide-character classification functions in use (such as
    iswprint).
  * The names of quantile()'s result no longer depend on the global
    getOption("digits"), but quantile() gets a new optional argument
    digits = 7 instead.
  * grep(), sub(), regexp and variants work considerably faster for
    long factors with few levels.  (Thanks to Michael Chirico's
    PR#18063.)
  * Provide grouping of x11() graphics windows within a window
    manager such as Gnome or Unity; thanks to a patch by Ivan Krylov
    posted to R-devel.
  * The split() method for class data.frame now allows the f argument
    to be specified as a formula.
  * sprintf now warns on arguments unused by the format string.
  * New palettes "Rocket" and "Mako" for hcl.colors() (approximating
    palettes of the same name from the 'viridisLite' package).
    Contributed by Achim Zeileis.
  * The base environment and its namespace are now locked (so one can
    no longer add bindings to these or remove from these).
  * Rterm handling of multi-byte characters has been improved,
    allowing use of such characters when supported by the current
    locale.
  * Rterm now accepts ALT+ +xxxxxxxx sequences to enter Unicode
    characters as hex digits.
  * Environment variable LC_ALL on Windows now takes precedence over
    LC_CTYPE and variables for other supported categories, matching
    the POSIX behaviour.
  * duplicated() and anyDuplicated() are now optimized for integer
    and real vectors that are known to be sorted via the ALTREP
    framework. Contributed by Gabriel Becker via PR#17993.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 14
    and so packages that provide graphics devices should be
    reinstalled.
  * Graphics devices should now specify deviceVersion to indicate
    what version of the graphics engine they support.
  * Graphics devices can now specify deviceClip.  If TRUE, the
    graphics engine will never perform any clipping of output itself.
    The clipping that the graphics engine does perform (for both
    canClip = TRUE and canClip = FALSE) has been improved to avoid
    producing unnecessary artifacts in clipped output.
  * The grid package now allows gpar(fill) to be a linearGradient(),
    a radialGradient(), or a pattern().  The viewport(clip) can now
    also be a grob, which defines a clipping path, and there is a new
    viewport(mask) that can also be a grob, which defines a mask.
    These new features are only supported so far on the Cairo-based
    graphics devices and on the pdf() device.
  * (Not Windows.)  A warning is given when a Cairo-based type is
    specified for a png(), jpeg(), tiff() or bmp() device but Cairo
    is unsupported (so type = "Xlib" is tried instead).
  * grSoftVersion() now reports the versions of FreeType and
    FontConfig if they are used directly (not _via_ Pango), as is
    most commonly done on macOS.
  C-LEVEL FACILITIES:
  * The _standalone_ libRmath math library and R's C API now provide
    log1pexp() again as documented, and gain log1mexp().
  INSTALLATION on a UNIX-ALIKE:
  * configure checks for a program pkgconf if program pkg-config is
    not found.  These are now only looked for on the path (like
    almost all other programs) so if needed specify a full path to
    the command in PKG_CONFIG, for example in file config.site.
  * C99 function iswblank is required - it was last seen missing ca
    2003 so the workaround has been removed.
  * There are new configure options --with-internal-iswxxxxx,
  - -with-internal-towlower and --with-internal-wcwidth which allows
    the system functions for wide-character classification,
    case-switching and width (wcwidth and wcswidth) to be replaced by
    internal ones.  The first has long been used on macOS, AIX (and
    Windows) but this enables it to be unselected there and selected
    for other platforms (it is the new default on Solaris).  The
    second is new in this version of R and is selected by default on
    macOS and Solaris.  The third has long been the default and
    remains so as it contains customizations for East Asian
    languages.
    System versions of these functions are often minimally
    implemented (sometimes only for ASCII characters) and may not
    cover the full range of Unicode points: for example Solaris (and
    Windows) only cover the Basic Multilingual Plane.
  * Cairo installations without X11 are more likely to be detected by
    configure, when the file-based Cairo graphics devices will be
    available but not X11(type = "cairo").
  * There is a new configure option --with-static-cairo which is the
    default on macOS.  This should be used when only static cairo
    (and where relevant, Pango) libraries are available.
  * Cairo-based graphics devices on platforms without Pango but with
    FreeType/FontConfig will make use of the latter for font
    selection.
  LINK-TIME OPTIMIZATION on a UNIX-ALIKE:
  * Configuring with flag --enable-lto=R now also uses LTO when
    installing the recommended packages.
  * R CMD INSTALL and R CMD SHLIB have a new flag --use-LTO to use
    LTO when compiling code, for use with R configured with
  - -enable-lto=R.  For R configured with --enable-lto, they have
    the new flag --no-use-LTO.
    Packages can opt in or out of LTO compilation _via_ a UseLTO
    field in the DESCRIPTION file.  (As usual this can be overridden
    by the command-line flags.)
  BUILDING R on Windows:
  * for GCC &gt;= 8, FC_LEN_T is defined in config.h and hence character
    lengths are passed from C to Fortran in _inter alia_ BLAS and
    LAPACK calls.
  * There is a new text file src/gnuwin32/README.compilation, which
    outlines how C/Fortran code compilation is organized and
    documents new features:
  * R can be built with Link-Time Optimization with a suitable
    compiler - doing so with GCC 9.2 showed several
    inconsistencies which have been corrected.
  * There is support for cross-compiling the C and Fortran code
    in R and standard packages on suitable (Linux) platforms.
    This is mainly intended to allow developers to test later
    versions of compilers - for example using GCC 9.2 or 10.x has
    detected issues that GCC 8.3 in Rtools40 does not.
  * There is experimental support for cross-building R packages
    with C, C++ and/or Fortran code.
  * The R installer can now be optionally built to support a single
    architecture (only 64-bit or only 32-bit).
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++14 where
    available (which it is on all currently checked platforms): if
    not (as before) C++11 is used if available otherwise C++ is not
    supported.
    Packages which specify C++11 will still be installed using C++11.
    C++14 compilers may give deprecation warnings, most often for
    std::random_shuffle (deprecated in C++14 and removed in C++17).
    Either specify C++11 (see 'Writing R Extensions') or modernize
    the code and if needed specify C++14.  The latter has been
    supported since R 3.4.0 so the package's DESCRIPTION would need
    to include something like
    Depends: R (&gt;= 3.4)
  PACKAGE INSTALLATION on Windows:
  * R CMD INSTALL and R CMD SHLIB make use of their flag --use-LTO
    when the LTO_OPT make macro is set in file etc/${R_ARCH}/Makeconf
    or in a personal/site Makevars file.  (For details see 'Writing R
    Extensions' SS4.5.)
    This provides a valuable check on code consistency.  It does work
    with GCC 8.3 as in Rtools40, but that does not detect everything
    the CRAN checks with current GCC do.
  PACKAGE INSTALLATION on macOS:
  * The default personal library directory on builds with
  - -enable-aqua (including CRAN builds) now differs by CPU type,
    one of
    ~/Library/R/x86_64/x.y/library
    ~/Library/R/arm64/x.y/library
    This uses the CPU type R (and hence the packages) were built for,
    so when a x86_64 build of R is run under Rosetta emulation on an
    arm64 Mac, the first is used.
  UTILITIES:
  * R CMD check can now scan package functions for bogus return
    statements, which were possibly intended as return() calls (wish
    of PR#17180, patch by Sebastian Meyer). This check can be
    activated via the new environment variable
    _R_CHECK_BOGUS_RETURN_, true for --as-cran.
  * R CMD build omits tarballs and binaries of previous builds from
    the top-level package directory.  (PR#17828, patch by Sebastian
    Meyer.)
  * R CMD check now runs sanity checks on the use of LazyData, for
    example that a data directory is present and that
    LazyDataCompression is not specified without LazyData and has a
    documented value.  For packages with large LazyData databases
    without specifying LazyDataCompression, there is a reference to
    the code given in 'Writing R Extensions' SS1.1.6 to test the
    choice of compression (as in all the CRAN packages tested a
    non-default method was preferred).
  * R CMD build removes LazyData and LazyDataCompression fields from
    the DESCRIPTION file of packages without a data directory.
  ENCODING-RELATED CHANGES:
  * The parser now treats \Unnnnnnnn escapes larger than the upper
    limit for Unicode points (\U10FFFF) as an error as they cannot be
    represented by valid UTF-8.
    Where such escapes are used for outputting non-printable
    (including unassigned) characters, 6 hex digits are used (rather
    than 8 with leading zeros).  For clarity, braces are used, for
    example \U{0effff}.
  * The parser now looks for non-ASCII spaces on Solaris (as
    previously on most other OSes).
  * There are warnings (including from the parser) on the use of
    unpaired surrogate Unicode points such as \uD834.  (These cannot
    be converted to valid UTF-8.)
  * Functions nchar(), tolower(), toupper() and chartr() and those
    using regular expressions have more support for inputs with a
    marked Latin-1 encoding.
  * The character-classification functions used (by default) to
    replace the system iswxxxxx functions on Windows, macOS and AIX
    have been updated to Unicode 13.0.0.
    The character-width tables have been updated to include new
    assignments in Unicode 13.0.0.
  * The code for evaluating default (extended) regular expressions
    now uses the same character-classification functions as the rest
    of R (previously they differed on Windows, macOS and AIX).
  * There is a build-time option to replace the system's
    wide-character wctrans C function by tables shipped with R: use
    configure option --with-internal-towlower or (on Windows)
  - DUSE_RI18N_CASE in CFLAGS when building R.  This may be needed
    to allow tolower() and toupper() to work with Unicode characters
    beyond the Basic Multilingual Plane where not supported by system
    functions (e.g. on Solaris where it is the new default).
  * R is more careful when truncating UTF-8 and other multi-byte
    strings that are too long to be printed, passed to the system or
    libraries or placed into an internal buffer.  Truncation will no
    longer produce incomplete multibyte characters.
  DEPRECATED AND DEFUNCT:
  * Function plclust() from the package stats and
    package.dependencies(), pkgDepends(), getDepList(),
    installFoundDepends(), and vignetteDepends() from package tools
    are defunct.
  * Defunct functions checkNEWS() and readNEWS() from package tools
    and CRAN.packages() from utils have been removed.
  * R CMD config CXXCPP is defunct (it was deprecated in R 3.6.2).
  * parallel::detectCores() drops support for Irix (retired in 2013).
  * The LINPACK argument to chol.default(), chol2inv(),
    solve.default() and svd() has been defunct since R 3.1.0.  It was
    silently ignored up to R 4.0.3 but now gives an error.
  * Subsetting/indexing, such as ddd[*] or ddd$x on a DOTSXP
    (dot-dot-dot) object ddd has been disabled; it worked by accident
    only and was undocumented.
  BUG FIXES:
  * Many more C-level allocations (mainly by malloc and strdup) are
    checked for success with suitable alternative actions.
  * Bug fix for replayPlot(); this was turning off graphics engine
    display list recording if a recorded plot was replayed in the
    same session.  The impact of the bug became visible if resize the
    device after replay OR if attempted another savePlot() after
    replay (empty display list means empty screen on resize or empty
    saved plot).
  * R CMD check etc now warn when a package exports non-existing S4
    classes or methods, also in case of no "methods" presence.
    (Reported by Alex Bertram; reproducible example and patch by
    Sebastian Meyer in PR#16662.)
  * boxplot() now also accepts calls for labels such as ylab, the
    same as plot().  (Reported by Marius Hofert.)
  * The help page for xtabs() now correctly states that addNA is
    setting na.action = na.pass among others.  (Reported as PR#17770
    by Thomas Soeiro.)
  * The R CMD check &lt;pkg&gt; gives a longer and more comprehensible
    message when DESCRIPTION misses dependencies, e.g., in Imports:.
    (Thanks to the contributors of PR#17179.)
  * update.default() now calls the generic update() on the formula to
    work correctly for models with extended formulas.  (As reported
    and suggested by Neal Fultz in PR#17865.)
  * The horizontal position of leaves in a dendrogram is now correct
    also with center = FALSE.  (PR#14938, patch from Sebastian
    Meyer.)
  * all.equal.POSIXt() no longer warns about and subsequently ignores
    inconsistent "tzone" attributes, but describes the difference in
    its return value (PR#17277).  This check can be disabled _via_
    the new argument check.tzone = FALSE as suggested by Sebastian
    Meyer.
  * as.POSIXct() now populates the "tzone" attribute from its tz
    argument when x is a logical vector consisting entirely of NA
    values.
  * x[[2^31]] &lt;- v now works.  (Thanks to the report and patch by
    Suharto Anggono in PR#17330.)
  * In log-scale graphics, axis() ticks and label positions are now
    computed more carefully and symmetrically in their range,
    typically providing _more_ ticks, fulfilling wishes in PR#17936.
    The change really corresponds to an improved axisTicks() (package
    grDevices), potentially influencing grid and lattice, for
    example.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now correct to at
    least five digits where it was catastrophically wrong,
    previously.
  * sum(df) and similar "Summary"- and "Math"-group member functions
    now work for data frames df with logical columns, notably also of
    zero rows.  (Reported to R-devel by Martin "b706".)
  * unsplit() had trouble with tibbles due to unsound use of rep(NA,
    len)-indexing, which should use NA_integer_ (Reported to R-devel
    by Mario Annau.)
  * pnorm(x, log.p = TRUE) underflows to -Inf slightly later.
  * show(&lt;hidden S4 generic&gt;) prints better and without quotes for
    non-hidden S4 generics.
  * read.table() and relatives treated an "NA" column name as missing
    when check.names = FALSE PR#18007.
  * Parsing strings containing UTF-16 surrogate pairs such as
    "\uD834\uDD1E" works better on some (uncommon) platforms.
    sprintf("%X", utf8ToInt("\uD834\uDD1E")) should now give "1D11E"
    on all platforms.
  * identical(x,y) is no longer true for differing DOTSXP objects,
    fixing PR#18032.
  * str() now works correctly for DOTSXP and related exotics, even
    when these are doomed.
    Additionally, it no longer fails for lists with a class and
    "irregular" method definitions such that e.g. lapply(*) will
    necessarily fail, as currently for different igraph objects.
  * Too long lines in environment files (e.g. Renviron) no longer
    crash R. This limit has been increased to 100,000 bytes.
    (PR#18001.)
  * There is a further workaround for FreeType giving incorrect
    italic font faces with cairo-based graphics devices on macOS.
  * add_datalist(*, force = TRUE) (from package tools) now actually
    updates an existing data/datalist file for new content.  (Thanks
    to a report and patch by Sebastian Meyer in PR#18048.)
  * cut.Date() and cut.POSIXt() could produce an empty last interval
    for breaks = "months" or breaks = "years".  (Reported as PR#18053
    by Christopher Carbone.)
  * Detection of the encoding of 'regular' macOS locales such as
    en_US (which is UTF-8) had been broken by a macOS change:
    fortunately these are now rarely used with en_US.UTF-8 being
    preferred.
  * sub() and gsub(pattern, repl, x, *) now keep attributes of x such
    as names() also when pattern is NA (PR#18079).
  * Time differences ("difftime" objects) get a replacement and a
    rep() method to keep "units" consistent.  (Thanks to a report and
    patch by Nicolas Bennett in PR#18066.)
  * The \RdOpts macro, setting defaults for \Sexpr options in an Rd
    file, had been ineffective since R 2.12.0: it now works again.
    (Thanks to a report and patch by Sebastian Meyer in PR#18073.)
  * mclapply and pvec no longer accidentally terminate parallel
    processes started before by mcparallel or related calls in
    package parallel (PR#18078).
  * grep and other functions for evaluating (extended) regular
    expressions handle in Unicode also strings not explicitly flagged
    UTF-8, but flagged native when running in UTF-8 locale.
  * Fixed a crash in fifo implementation on Windows (PR#18031).
  * Binary mode in fifo on Windows is now properly detected from
    argument open (PR#15600, PR#18031).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1622808000">- The line %{__install} -m 755 -d %{_infodir}
  no longer works in TW or Factory.
  But without that line it works everywhere. So this instruction
  was commented out of the spec file.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1628596800">- CHANGES IN R 4.1.1:
  NEW FEATURES:
  * require(pkg, quietly = TRUE) is quieter and in particular does
    not warn if the package is not found.
  DEPRECATED AND DEFUNCT:
  * Use of ftp:// URIs should be regarded as deprecated, with
    on-going support confined to method = "libcurl" and not routinely
    tested.  (Nowadays no major browser supports them.)
  * The non-default method = "internal" is deprecated for http:// and
    ftp:// URIs for both download.file and url.
  * On Windows, method = "wininet" is deprecated for http://,
    https:// and ftp:// URIs for both download.file and url.  (A
    warning is only given for ftp://.)
    For ftp:// URIs the default method is now "libcurl" if available
    (which it is on CRAN builds).
    method = "wininet" remains the default for http:// and https://
    URIs but if libcurl is available, using method = "libcurl" is
    preferred.
  INSTALLATION:
  * make check now works also without a LaTeX installation.  (Thanks
    to Sebastian Meyer's PR#18103.)
  BUG FIXES:
  * make check-devel works again in an R build configured with
  - -without-recommended-packages.
  * qnbinom(p, size, mu) for large size/mu is correct now in a range
    of cases (PR#18095); similarly for the (size, prob)
    parametrization of the negative binomial.  Also qpois() and
    qbinom() are better and or faster for extreme cases.  The
    underlying C code has been modularized and is common to all four
    cases of discrete distributions.
  * gap.axis is now part of the axis() arguments which are passed
    from bxp(), and hence boxplot().  (Thanks to Martin Smith's
    report and suggestions in PR#18109.)
  * .First and .Last can again be set from the site profile.
  * seq.int(from, to, *) and seq.default(..) now work better in large
    range cases where from-to is infinite where the two boundaries
    are finite.
  * all.equal(x,y) now returns TRUE correctly also when several
    entries of abs(x) and abs(y) are close to .Machine$double.xmax,
    the largest finite numeric.
  * model.frame() now clears the object bit when removing the class
    attribute of a value via na.action (PR#18100).
  * charClass() now works with multi-character strings on Windows
    (PR#18104, fixed by Bill Dunlap).
  * encodeString() on Solaris now works again in Latin-1 encoding on
    characters represented differently in UTF-8.  Support for
    surrogate pairs on Solaris has been improved.
  * file.show() on Windows now works with non-ASCII path names
    representable in the current native encoding (PR#18132).
  * Embedded R on Windows can now find R home directory via the
    registry even when installed only for the current user
    (PR#18135).
  * pretty(x) with finite x now returns finite values also in the
    case where the extreme x values are close in size to the maximal
    representable number .Machine$double.xmax.
    Also, it's been tweaked for very small ranges and when a boundary
    is close (or equal) to zero; e.g., pretty(c(0,1e-317)) no longer
    has negative numbers, currently still warning about a very small
    range, and pretty(2^-(1024 - 2^-1/(c(24,10)))) is more accurate.
  * The error message for not finding vignette files when weaving has
    correct file sizes now. (Thanks to Sebastian Meyer's PR#18154.)
  * dnbinom(20, &lt;large&gt;, 1) now correctly gives 0, and similar cases
    are more accurate with underflow precaution.  (Reported by Francisco Vera Alcivar in PR#18072.)</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635163200">- repaired https://bugzilla.suse.com/show_bug.cgi?id=1191380
  (rpmacros now go to rpmmacrodir)
- minor clean-ups in spec file</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635768000">- CHANGES IN R 4.1.2:
  C-LEVEL FACILITIES:
  * The workaround in headers R.h and Rmath.h (using namespace std;)
    for the Oracle Developer Studio compiler is no longer needed now
    C++11 is required so has been removed.  A couple more usages of
    log() (which should have been std::log()) with an int argument
    are reported on Solaris.
  * The undocumented limit of 4095 bytes on messages from the
    S-compatibility macros PROBLEM and MESSAGE is now documented and
    longer messages will be silently truncated rather than
    potentially causing segfaults.
  * If the R_NO_SEGV_HANDLER environment variable is non-empty, the
    signal handler for SEGV/ILL/BUS signals (which offers recovery
    user interface) is not set. This allows more reliable debugging
    of crashes that involve the console.
  DEPRECATED AND DEFUNCT:
  * The legacy S-compatibility macros PROBLEM, MESSAGE, ERROR, WARN,
    WARNING, RECOVER, ... are deprecated and will be hidden in R
    4.2.0. R's native interface of Rf_error and Rf_warning has long
    been preferred.
  BUG FIXES:
  * .mapply(F, dots, .) no longer segfaults when dots is not a list
    and uses match.fun(F) as always documented; reported by Andrew
    Simmons in PR#18164.
  * hist(&lt;Date&gt;, ...) and hist(&lt;POSIXt&gt;, ...)  no longer pass
    arguments for rect() (such as col and density) to axis().
    (Thanks to Sebastian Meyer's PR#18171.)
  * \Sexpr{ch} now preserves Encoding(ch). (Thanks to report and
    patch by Jeroen Ooms in PR#18152.)
  * Setting the RNG to "Marsaglia-Multicarry" e.g., by RNGkind(), now
    warns in more places, thanks to Andr'e Gillibert's report and
    patch in PR#18168.
  * gray(numeric(), alpha=1/2) no longer segfaults, fixing PR#18183,
    reported by Till Krenz.
  * Fixed dnbinom(x, size=&lt;very_small&gt;, .., log=TRUE) regression,
    reported by Martin Morgan.
  * as.Date.POSIXlt(x) now keeps names(x), thanks to Davis Vaughan's
    report and patch in PR#18188.
  * model.response() now strips an "AsIs" class typically, thanks to
    Duncan Murdoch's report and other discussants in PR#18190.
  * try() is considerably faster in case of an error and long call,
    as e.g., from some do.call().  Thanks to Alexander Kaever's
    suggestion posted to R-devel.
  * qqline(y = &lt;object&gt;) such as y=I(.), now works, see also
    PR#18190.
  * Non-integer mgp par() settings are now handled correctly in
    axis() and mtext(), thanks to Mikael Jagan and Duncan Murdoch's
    report and suggestion in PR#18194.
  * formatC(x) returns length zero character() now, rather than ""
    when x is of length zero, as documented, thanks to Davis
    Vaughan's post to R-devel.
  * removeSource(fn) now retains (other) attributes(fn).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1647000000">- CHANGES IN R 4.1.3:
  NEW FEATURES:
  * The default version of Bioconductor has been changed to 3.14.
    (This is used by setRepositories and the menus in GUIs.)
  UTILITIES:
  * R CMD check --as-cran has a workaround for a bug in versions of
    file up to at least 5.41 which mis-identify DBF files last
    changed in 2022 as executables.
  C-LEVEL FACILITIES:
  * The legacy S-compatibility macros SINGLE_* in R_ext/Constants.h
    (included by R.h) are deprecated and will be removed in R 4.2.0.
  BUG FIXES:
  * Initialization of self-starting nls() models with initialization
    functions following the pre-R-4.1.0 API (without the ...
    argument) works again for now, with a deprecation warning.
  * Fixed quoting of ~autodetect~ in Java setting defaults to avoid
    inadvertent user lookup due to leading ~, reported in PR#18231 by
    Harold Gutch.
  * substr(., start, stop) &lt;- v now treats _negative_ stop values
    correctly.  Reported with a patch in PR#18228 by Brodie Gaslam.
  * Subscripting an array x without dimnames by a
    length(dim(x))-column character matrix gave "random" non-sense,
    now an error; reported in PR#18244 by Mikael Jagan.
  * ...names() now matches names(list(...)) closely, fixing PR#18247.
  * all.equal(*, scale = s) now works as intended when length(s) &gt; 1,
    partly thanks to Michael Chirico's PR#18272.
  * print(x) for long vectors x now also works for named atomic
    vectors or lists and prints the correct number when reaching the
    getOption("max.print") limit; partly thanks to a report and
    proposal by Hugh Parsonage to the R-devel list.
  * all.equal(&lt;selfStart&gt;, *) no longer signals a deprecation
    warning.
  * reformulate(*, response=r) gives a helpful error message now when
    length(r) &gt; 1, thanks to Bill Dunlap's PR#18281.
  * Modifying globalCallingHandlers inside withCallingHandlers() now
    works or fails correctly, thanks to Henrik Bengtsson's PR#18257.
  * hist(&lt;Date&gt;, breaks = "days") and hist(&lt;POSIXt&gt;, breaks = "secs")
    no longer fail for inputs of length 1.
  * qbeta(.001, .9, .009) and similar cases now converge correctly
    thanks to Ben Bolker's report in PR#17746.
  * window(x, start, end) no longer wrongly signals "'start' cannot
    be after 'end'", fixing PR#17527 and PR#18291.
  * data() now checks that its (rarely used) list argument is a
    character vector - a couple of packages passed other types and
    gave incorrect results.
  * which() now checks its arr.ind argument is TRUE rather coercing
    to logical and taking the first element - which gave incorrect
    results in package code.
  * model.weights() and model.offset() more carefully extract their
    model components, thanks to Ben Bolker and Tim Taylor's R-devel
    post.
  * list.files(recursive = TRUE) now shows all broken symlinks
    (previously, some of them may have been omitted, PR#18296).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1650628800">- CHANGES IN R 4.2.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * The formula method of aggregate() now matches the generic in
    naming its first argument x (resolving PR#18299 by Thomas
    Soeiro).
    This means that calling aggregate() with a formula as a named
    first argument requires name formula in earlier versions of R and
    name x now, so portable code should not name the argument (code
    in many packages did).
  * Calling &amp;&amp; or || with either argument of length greater than one
    now gives a warning (which it is intended will become an error).
  * Calling if() or while() with a condition of length greater than
    one gives an error rather than a warning.  Consequently,
    environment variable _R_CHECK_LENGTH_1_CONDITION_ no longer has
    any effect.
  * Windows users should consult the WINDOWS section below for some
    profound changes including
  * Support for 32-bit builds has been dropped.
  * UTF-8 locales are used where available.
  * The default locations for the R installation and personal
    library folder have been changed.
    Thanks to Tomas Kalibera for months of work on the Windows port
    for this release.
  NEW FEATURES:
  * matrix(x, n, m) now warns in more cases where length(x) differs
    from n * m, as suggested by Abby Spurdle and Wolfgang Huber in
    Feb 2021 on the R-devel mailing list.
    This warning can be turned into an error by setting environment
    variable _R_CHECK_MATRIX_DATA_ to TRUE: R CMD check --as-cran
    does so unless it is already set.
  * Function file_test() in package utils gains tests for symlinks,
    readability and writability.
  * capabilities("libxml") is now false.
    The description of capabilities("http/ftp") now reflects that it
    refers to the default method, no longer the internal one.
  * simplify2array() gains an except argument for controlling the
    exceptions used by sapply().
  * Environment variables R_LIBS_USER and R_LIBS_SITE are both now
    set to the R system default if unset or empty, and can be set to
    NULL to indicate an empty list of user or site library
    directories.
  * The warning for axis()(-like) calls in cases of relatively small
    ranges (typically in log-scale situations) is slightly improved
    _and_ suppressed from explicit calls to .axisPars() as has always
    been the intention.
  * The contrasts setter function `contrasts&lt;-` gains an explicit
    default how.many = NULL rather than just using missing(how.many).
  * grid.pretty() gains a new optional argument n = 5.
  * There is a new function .pretty() with option bounds as a
    technical-utility version of pretty().  It and pretty() gain a
    new argument f.min with a better than back-compatible default.
  * Function grDevices::axisTicks() and related functions such as
    graphics::axis() work better, notably for the log scale; partly
    because of the pretty() improvements, but also because care is
    taken e.g., when ylim is finite but diff(ylim) is infinite.
  * nclass.FD() gains a digits option.
  * The R Mathlib internal C function bd0() (called indirectly from a
    dozen probability density and distribution functions such as
    dpois(), dbinom(), dgamma(), pgamma() _etc_) has been
    complemented by a more sophisticated and (mostly) more accurate C
    function ebd0(), currently called only by internal dpois_raw()
    improving accuracy for R level dpois() and potentially others
    calling it such as dnbinom(), dgamma() or pgamma().  (Thanks to
    Morten Welinder's PR#15628.)
  * write.ftable() gains sep = " " argument as suggested by Thomas
    Soeiro.
  * The names of the locale categories supported by R's
    Sys.getlocale() and Sys.setlocale() are now provided by variable
    .LC.categories in the base namespace.
  * The Date and POSIXt methods for hist() and the histogram method
    for plot() now also use the new default col = "lightgray" in
    consistency with the corresponding change to hist()'s default for
    R 4.0.0.
  * hist.default() gains new fuzz argument, and the histogram plot
    method no longer uses fractional axis ticks when displaying
    counts ("Frequency").
  * mapply() and hence Map() now also obey the "max-or-0-if-any"
    recycling rule, such that, e.g., Map(`+`, 1:3, 1[0]) is valid
    now.
  * as.character(&lt;obj&gt;) for "hexmode" or "octmode" objects now
    fulfils the important basic rule as.character(x)[j] ===
    as.character(x[j]).
  * The set utility functions, notably intersect() have been tweaked
    to be more consistent and symmetric in their two set arguments,
    also preserving a common mode.
  * substr(ch, start,end) &lt;- new now e.g., preserves names(ch); ditto
    for substring(), thanks to a patch from Brodie Gaslam.
  * plot(&lt;lm&gt;) gains a extend.ylim.f argument, in partial response to
    PR#15285; further PR#17784 is fixed thanks to several
    contributors and a patch by Elin Waring.  The Cook's dist
    contours get customizable via cook.col and cook.lty with a
    different default color and their legend is nicer by default and
    customizable via cook.legendChanges.
  * Attempting to subset an object that is not subsettable now
    signals an error of class notSubsettableError. The
    non-subsettable object is contained in the object field of the
    error condition.
  * Subscript-out-of-bounds errors are now signaled as errors of
    class subscriptOutOfBoundsError.
  * Stack-overflow errors are now signaled as errors inheriting from
    class stackOverflowError. See ?stackOverflowError for more
    details.
  * New partly experimental Sys.setLanguage() utility, solving the
    main problem of PR#18055.
  * gettext() and gettextf() get a new option trim = TRUE which when
    set to false allows translations for strings such as "Execution
    halted\n" typical for C code.
  * An experimental implementation of hash tables is now available.
    See ?hashtab for more details.
  * identical() gains a extptr.as.ref argument for requesting that
    external pointer objects be compared as reference objects.
  * reorder() gets an argument decreasing which it passes to sort()
    for level creation; based on the wish and patch by Thomas Soeiro
    in PR#18243.
  * as.vector() gains a data.frame method which returns a simple
    named list, also clearing a long standing 'FIXME' to enable
    as.vector(&lt;data.frame&gt;, mode="list").  This breaks code relying
    on as.vector(&lt;data.frame&gt;) to return the unchanged data frame.
  * legend() is now vectorized for arguments cex, x.intersp, and
    text.width.  The latter can now also be specified as a vector
    (one element for each column of the legend) or as NA for
    computing a proper column wise maximum value of strwidth(legend).
    The argument y.intersp can be specified as a vector with one
    entry for each row of the legend.
    legend() also gains new arguments title.cex and title.font.
    Thanks to Swetlana Herbrandt.
  * Deparsing no longer remaps attribute names dim, dimnames, levels,
    names and tsp to historical S-compatible names (which structure()
    maps back).
  * sample() and sample.int() have additional sanity checks on their
    size and n arguments.
    all.equal.numeric() gains a sanity check on its tolerance
    argument - calling all.equal(a, b, c) for three numeric vectors
    is a surprisingly common error.
    mean(na.rm =), rank(na.last =), barplot(legend.text =),
    boxplot(), contour(drawlabels =), polygon(border =) and
    methods::is(class2 =) have more robust sanity checks on their
    arguments.
    R CMD Rd2pdf (used by R CMD check) has a more robust sanity check
    on the format of \alias{} commands.
  * psigamma(x, deriv) for negative x now also works for deriv = 4
    and 5; their underlying C level dpsifn() is documented in
    'Writing R Extensions'.
  * The HTML help system now uses HTML5 (wish of PR#18149).
  * ks.test() now provides exact p-values also with ties and MC
    p-values in the two-sample (Smirnov) case.  By Torsten Hothorn.
  * ks.test() gains a formula interface, with y ~ 1 for the
    one-sample (Kolmogorov) test and y ~ group for the two-sample
    (Smirnov) test.  Contributed by Torsten Hothorn.
  * The return value from ks.test() now has class c("ks.test",
    "htest") - packages using try() need to take care to use
    inherits() and not == on the class.
  * New functions psmirnov(), qsmirnov() and rsmirnov() in package
    stats implementing the asymptotic and exact distributions of the
    two-sample Smirnov statistic.
  * iconv() now allows sub = "c99" to use C99-style escapes for UTF-8
    inputs which cannot be converted to encoding to.
  * In a forward pipe |&gt; expression it is now possible to use a named
    argument with the placeholder _ in the rhs call to specify where
    the lhs is to be inserted.  The placeholder can only appear once
    on the rhs.
  * The included LAPACK sources have been updated to version 3.10.0,
    except for the four Fortran 77 routines which 3.10.0 has
    re-implemented in Fortran 90 (where the older versions have been
    retained as the R build process does not support Fortran 90).
  * path.expand() and most other uses of tilde expansion now warn if
    a path would be too long if expanded.  (An exception is
    file.exists(), which silently returns false.)
  * trunc(&lt;Date&gt;, *) now supports units = "months" or "years" for
    consistency with the POSIXt method, thanks to Dirk Eddelbuettel's
    proposal in PR#18099.
  * list2DF() now checks that its arguments are of the same length,
    rather than use recycling.
  * The HTML help system has several new features: LaTeX-like math
    can be typeset using either KaTeX or MathJax, usage and example
    code is highlighted using Prism, and for dynamic help the output
    of examples and demos can be shown within the browser if the
    knitr package is installed. These features can be disabled by
    setting the environment variable _R_HELP_ENABLE_ENHANCED_HTML_ to
    a false value.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 15
    and so packages that provide graphics devices should be
    reinstalled.
  * The grid package now allows the user to specify a "vector" of
    pattern fills.  The fill argument to gpar() accepts a list of
    gradients and/or patterns and the functions linearGradient(),
    radialGradient(), and pattern() have a new group argument.
    Points grobs (data symbols) can now also have a pattern fill.
    The grobCoords() function now returns a more informative and
    complex result.
  * The grid package has new functions for drawing isolated groups:
    grid.group(), grid.define(), and grid.use().  These functions add
    compositing operators and affine transformations to R's graphics
    capabilities.
    The grid package also has new functions for stroking and filling
    paths: grid.stroke(), grid.fill(), and grid.fillStroke().
    A new function as.path() allows the user to specify the fill rule
    for a path that is to be used for clipping, stroking, or filling;
    available options are "winding" and "evenodd".  A new function
    as.mask() allows the user to specify the type of a mask;
    available options are "alpha" and "luminance".
    These new features are only supported so far (at most) on the
    Cairo-based graphics devices and on the pdf() device.
  * dev.capabilities() reports on device support for the new
    features.
  * par() now warns about unnamed non-character arguments to prevent
    misuse such as {usr &lt;- par("usr"); par(usr)}.
  INSTALLATION:
  * Facilities for accessing ftp:// sites are no longer tested
    (except _pro tem_ for curlGetHeaders()) as modern browsers have
    removed support.
  * R can now be built with DEFS = -DSTRICT_R_HEADERS .
  PACKAGE INSTALLATION:
  * R CMD INSTALL no longer tangles vignettes. This completes an R
    CMD build change in R 3.0.0 and affects packages built before R
    3.0.2. Such packages should be re-made with R CMD build to have
    the tangled R code of vignettes shipped with the tarball.
  * USE_FC_LEN_T will become the default: this uses the correct
    prototypes for Fortran BLAS/LAPACK routines called from C/C++,
    and requires adjustment of most such calls - see 'Writing R
    Extensions' SS6.6.2.  (This has been supported since R 3.6.2.)
  * Package installation speed for packages installed with
    keep.source has been improved. This resolve the issue reported by
    Ofek Shilon in PR#18236.
  UTILITIES:
  * R CMD check can optionally report files/directories left behind
    in home, /tmp (even though TMPDIR is set) and other directories.
    See the "R Internals" manual for details.
  * R CMD check now reports byte-compilation errors during
    installation.  These are not usually fatal but may result in
    parts of the package not being byte-compiled.
  * _R_CHECK_DEPENDS_ONLY_ can be applied selectively to examples,
    tests and/or vignettes in R CMD check: see the "R Internals"
    manual.
  * _R_CHECK_SRC_MINUS_W_IMPLICIT_ now defaults to true: recent
    versions of Apple clang on macOS have made implicit function
    declarations in C into a compilation error.
  * R CMD check --as-cran makes use of the environment variable
    AUTORECONF.  See the "R Internals" manual SS8 for further details.
  * R CMD check --use-valgrind also uses valgrind when re-building
    vignettes as some non-Sweave vignettes unhelpfully comment out
    all their code when R CMD check runs vignettes.
  * Errors in re-building vignettes (unless there are LaTeX errors)
    are reported by R CMD check as ERROR rather than WARNING when
    running vignettes has been skipped (as it frequently is in CRAN
    checks and by --as-cran).
  * R CMD Rd2pdf gains a --quiet option that is used by R CMD build
    when building the PDF package manual.
  * R CMD Rd2pdf now always runs LaTeX in batch mode, consistent with
    Texinfo &gt;= 6.7. The --batch option is ignored.
  * R CMD build and R CMD check now include the Rd file name and line
    numbers in the error message of an \Sexpr evaluation failure.
  * For packages using the \doi Rd macro (now an install-time \Sexpr)
    but no other dynamic Rd content, R CMD build now produces a
    smaller tarball and is considerably faster - skipping temporary
    package installation.
  C-LEVEL FACILITIES:
  * The non-API header R_ext/R-ftp-http.h is no longer provided, as
    the entry points it covered are now all defunct.
  * A number of non-API declarations and macro definitions have been
    moved from the installed header Rinternals.h to the internal
    header Defn.h. Packages that only use entry points and
    definitions documented to be part of the API as specified in
    'Writing R Extensions' SS6 should not be affected.
  * The macro USE_RINTERNALS no longer has any effect when compiling
    package code.  Packages which also use R_NO_REMAP will need to
    ensure that the remapped names are used for calls to API
    functions that were formerly also made available as macros.
  * The deprecated legacy S-compatibility macros PROBLEM, MESSAGE,
    ERROR, WARN, WARNING, RECOVER, ... are no longer defined in
    R_exts/RS.h (included by R.h).  Replace these by calls to
    Rf_error and Rf_warning (defined in header R_ext/Error.h included
    by R.h).
    Header R_ext/RS.h no longer includes R_ext/Error.h.
  * Header R_ext/Constants.h (included by R.h) when included from C++
    now includes the C++ header cfloat rather than the C header
    float.h (now possible as C++11 is required).
  * The legacy S-compatibility macros DOUBLE_* in R_ext/Constants.h
    (included by R.h) are deprecated.
  * The deprecated S-compatibility macros SINGLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * R_Calloc, R_Free and R_Realloc are preferred to their unprefixed
    forms and error messages now use the prefix. These forms were
    introduced in R 3.4.0 and are available even when
    STRICT_R_HEADERS is defined.
  * rmultinom has been documented in 'Writing R Extensions' SS6 so is
    now part of the R API.
  * Similarly, Rtanpi, called from R level tanpi() is now part of the
    R API.
  * The long-deprecated, undocumented and non-API entry point call_R
    is no longer declared in R_ext/RS.h (included by R.h).
  * The header S.h which has been unsupported since Jan 2016 has been
    removed.  Use R.h instead.
  DEPRECATED AND DEFUNCT:
  * The (non-default and deprecated) method = "internal" for
    download.file() and url() no longer supports http:// nor ftp://
    URIs.  (It is used only for file:// URIs.)
    On Windows, download.file(method = "wininet") no longer supports
    ftp:// URIs.  (It is no longer the default method, which is
    "libcurl" and does.)
    On Windows, the deprecated method = "wininet" now gives a warning
    for http:// and https:// URIs for both download.file() and url().
    (It is no longer the default method.)
  * On Windows, the command-line option --max-mem-size and
    environment variable R_MAX_MEM_SIZE are defunct.  The memory
    allocation limit was important for 32-bit builds, but these are
    no longer supported.
  * default.stringsAsFactors() is now formally deprecated, where that
    was only mentioned on its regular help page, previously.  So it
    now gives a warning if called.
  * unix.time() is defunct now; it had been deprecated since R 3.4.0.
  BUG FIXES:
  * Setting digits = 0 in format(), print.default() (and hence
    typically print()) or options() is again invalid.  Its behaviour
    was platform-dependent, and it is unclear what "zero significant
    digits" should mean (PR#18098).
  * Messages from C code in the cairo section of package grDevices
    are now also offered for translation, thanks to Michael Chirico's
    PR#18123.
  * mean(x) with finite x now is finite also without "long.double"
    capability.
  * R CMD Rd2pdf no longer leaves an empty build directory behind
    when it aborts due to an already existing output file.  (Thanks
    to Sebastian Meyer's PR#18141.)
  * density(x, weights = w, na.rm = TRUE) when anyNA(x) is true, now
    removes weights "in parallel" to x, fixing PR#18151, reported by
    Matthias Gondan.  Additionally, it gets a subdensity option.
  * Conversion of \Sexpr[]{&lt;expR&gt;} to LaTeX or HTML no longer
    produces long blocks of empty lines when &lt;expR&gt; itself contains
    several lines all producing empty output.  Thanks to a report and
    patch by Ivan Krylov posted to R-devel.
  * R CMD build no longer fails if a package vignette uses child
    documents and inst/doc exists.  (Thanks to Sebastian Meyer's
    PR#18156.)
  * When an R documentation ('help' source) file man/foo.Rd in a
    package has \donttest{..} examples with a syntax error, it is now
    signalled as ERROR and with correct line numbers relating to the
  * -Ex.R file, thanks to Duncan Murdoch and Sebastian Meyer's
    reports and patch proposals in PR#17501.
  * Improved determination of the correct translation domain in
    non-base packages, addressing the combination of PR#18092 and
    PR#17998 (#c6) with reports and _augmented_ patch #2904 by
    Suharto Anggono.
    Note that "R-base" is no longer the default domain e.g., for
    top-level calls to gettext(); rather translation needs explicit
    domain = * specification in such cases.
  * identical(attrib.as.set=FALSE) now works correctly with data
    frames with default row names (Thanks to Charlie Gao's PR#18179).
  * txtProgressBar() now enforces a non-zero width for argument char,
    without which no progress can be visible.
  * dimnames(table(d)) is more consistent in the case where d is a
    list with a single component, thanks to Thomas Soeiro's report to
    R-devel.
    Further, table(d1, d2) now gives an error when d1 and d2 are data
    frames as suggested by Thomas in PR#18224.
  * Fix for drawing semi-transparent lines and fills on the native
    Windows graphics device (PR#18219 and PR#16694).  Thanks to Nick
    Ray for helpful diagnosis on Bugzilla.
  * The deparser now wraps sub-expressions such as if(A) ..  with
    parentheses when needed; thanks to Duncan Murdoch's PR#18232 and
    Lionel Henry's patches there.
  * remove.packages() no longer tries to uninstall Priority: base
    packages, thanks to a report and suggestions by Colin Fay in
    PR#18227.
  * win.metafile() now has xpinch and ypinch arguments so that the
    user can override Windows' (potentially wrong) guess at device
    dimensions.
  * x[i] and x[[i]] for non-integer i should now behave in all cases
    as always documented: the index used is equivalent to
    as.integer(i) unless that would overflow where trunc(i) is used
    instead; thanks to Suharto Anggono's report and patch proposals
    in PR#17977.
  * asOneSidedFormula() now associates the resulting formula with the
    global environment rather than the evaluation environment created
    for the call.
  * &lt;bibentry&gt;$name now matches the field name case-insensitively,
    consistent with bibentry() creation and the replacement method.
  * cbind() failed to detect some length mismatches with a mixture of
    time-series and non-time-series inputs.
  * The default LaTeX style file Sweave.sty used by the RweaveLatex
    driver no longer loads the obsolete ae package; thanks to a
    report by Thomas Soeiro in PR#18271.  Furthermore, it now skips
    \usepackage[T1]{fontenc} for engines other than pdfTeX (if
    detected) or if the new [nofontenc] option is used.
  * smooth.spline() now stores its logical cv argument more safely,
    fixing a rare bug when printing, and also stores n.
  * smooth.spline(x,y,*) now computes the cv.crit statistic
    correctly, also when is.unsorted(x), fixing PR#18294.
  * The data.frame method of rbind() now warns when binding
    not-wholly-recycling vectors, by analogy to the default method
    (for matrices).
  * setAs() finds the correct class for name to when multiple
    packages define a class with that name. Thanks to Gabor Csardi
    for the report.
  * Fix for detaching a package when two classes of the same name are
    present in method signatures for the same generic. Thanks to
    Gabor Csardi for the report.
  * match.arg("", c("", "a", "B")) gives a better error message, in
    part from PR#17959, thanks to Elin Waring.
  * R CMD Sweave --clean no longer removes pre-existing files or
    subdirectories (PR#18242).
  * The quartz() device no longer splits polylines into subpaths.
    That has caused narrowly-spaced lines with many points to always
    look solid even when dashed line type was used due to dash phase
    restarts.
  * Deparsing constructs such as quote(1 + `!`(2) + 3) works again as
    before R 3.5.0, thanks to the report and patch in PR#18284 by
    Suharto Anggono.
  * as.list(f) for a factor f now keeps names(f), fixing PR#18309.
  * qbeta(.001, .9, .009) and analogous qf() calls now return a
    correct value instead of NaN or wrongly 1, all with a warning;
    thanks to the report by Ludger Goeminne in PR#18302.
  * plot.lm() failed to produce the plot of residuals vs.  factor
    levels (i.e., which=5 when leverages are constant) for models
    with character predictors (PR#17840).
  * interaction.plot(..., xtick = TRUE) misplaced the x-axis line
    (PR#18305).
  * Not strictly fixing a bug, format()ing and print()ing of
    non-finite Date and POSIXt values NaN and +/-Inf no longer show
    as NA but the respective string, e.g., Inf, for consistency with
    numeric vector's behaviour, fulfilling the wish of PR#18308.
  * R CMD check no longer runs test scripts generated from
    corresponding .Rin files twice and now signals an ERROR if
    processing an .Rin script fails.
  * tools::Rd2txt() used for plain-text help pages now renders \hrefs
    (if tools::Rd2txt_options(showURLs = TRUE)) and \urls with
    percent-encoding and standards-compliant delimiting style (angle
    brackets and no URL: prefix).  \email is now rendered with a
    mailto: prefix.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1655985600">- CHANGES IN R 4.2.1:
  NEW FEATURES:
  * New function utils::findCRANmirror() to find out if a CRAN mirror
    has been selected, otherwise fallback to the main site.  This
    behaves in the same way as tools::CRAN_package_db() and is
    intended for packages wishing to access CRAN for purposes other
    than installing packages.
    The need for this was shown by a day when the main CRAN website
    was offline and a dozen or so packages which had its URL
    hardcoded failed their checks.
  INSTALLATION on a UNIX-ALIKE:
  * The libraries searched for by --with-blas (without a value) now
    include BLIS (after OpenBLAS but before ATLAS).  And on macOS,
    the Accelerate framework (after ATLAS).  (This is patterned after
    the AX_BLAS macro from the Autoconf Archive.)
  * The included LAPACK sources have been updated to 3.10.1.
  UTILITIES:
  * The (full path to) the command tidy to be used for HTML
    validation can be set by environment variable R_TIDYCMD.
  * Setting environment variable _R_CHECK_RD_VALIDATE_RD2HTML_ to a
    false value will override R CMD check --as-cran and turn off HTML
    validation.  This provides a way to circumvent a problematic
    tidy.
    The 2006 version that ships with macOS is always skipped.
  C-LEVEL FACILITIES:
  * The undocumented legacy declarations of Sint, Sfloat, SINT_MAX
    and SINT_MIN in header R.h are deprecated.
  BUG FIXES:
  * fisher.test(d) no longer segfaults for "large" d; fixing PR#18336
    by preventing/detecting an integer overflow reliably.
  * tar(., files=*) now produces correctly the warning about invalid
    uid or gid of files, fixing PR#18344, reported by Martin Morgan.
  * tk_choose.files() with multi = FALSE misbehaved on paths
    containing spaces (PR#18334) (regression introduced in R 4.0.0).
  * sort(x, partial = ind, *) now works correctly notably for the
    non-default na.last = FALSE or TRUE, fixing PR#18335 reported by
    James Edwards.
  * Environment variable _R_CHECK_XREFS_REPOSITORIES_ is only used
    for checking .Rd cross-references in R CMD check (as documented)
    and not for other uses looking for a CRAN mirror.
  * The search for a CRAN mirror when checking packages now uses
    getOption("repos") if that specifies a CRAN mirror, even when it
    does not also specify all three Bioconductor repositories (as was
    previously required).
  * The HTML code generated by tools::Rd2HTML() has been improved to
    pass tidy 5.8.0.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1667217600">- CHANGES IN R 4.2.2:
  NEW FEATURES:
  * tools::Rdiff(useDiff = TRUE) checks for the presence of an
    external diff command and switches to useDiff = FALSE if none is
    found.  This allows R CMD Rdiff to always work.
  * On Windows, environment variable R_LIBCURL_SSL_REVOKE_BEST_EFFORT
    can be used to switch to only 'best-effort' SSL certificate
    revocation checks with the default "libcurl" download method.
    This reduces security, but may be needed for downloads to work
    with MITM proxies (PR#18379).
  * (macOS) The run-time check for libraries from XQuartz for X11 and
    Tcl/Tk no longer uses otool from the Apple Developer Tools
    (PR#18400).
  * The LaTeX style for producing the PDF manuals, Rd.sty, now loads
    the standard amsmath, amsfonts and amssymb packages for greater
    coverage of math commands in the Rd \eqn and \deqn macros.  The
    \mathscr LaTeX command is also provided (via the mathrsfs
    package, if available, or the amsfonts bundle otherwise),
    fulfilling the wish of PR#18398.
  * (Windows) The default format of readClipboard() and
    writeClipboard() has been changed to 13 (CF_UNICODETEXT).
  INSTALLATION on a UNIX-ALIKE:
  * The PDF manuals (if built) can be compacted by the new target
    make compact-pdf (at the top level or in directory doc/manual).
  * There is now configure support for LLVM clang 15 on Linux, which
    defaults to position-independent (PIE) executables whereas
    gfortran does not.
  * Many small changes to ease compilation (and suppress warnings)
    with LLVM clang 15.
  BUG FIXES:
  * Rscript -e would fail if stdin were closed (Reported by Henrik
    Bengtsson.)
  * qt(*, log.p=TRUE) in outer tails no longer produces NaN in its
    final steps, thus fixing PR#18360.
  * tools::Rd2latex() now escapes hashes and ampersands when writing
    URLs, fixing LaTeX errors with such URLs in \tabular.
  * When isGeneric(f, fdef=*) is used with mismatching names, the
    warning is better understandable; reported (with fix) in PR#18370
    by Gabe Becker.
  * poly(x, n) now works again (and is now documented) when x is a
    "Date" or "POSIXct" object, or of another class while fulfilling
    mode(x) == "numeric".  This also enables poly(x, *, raw=TRUE) for
    such variables.  Reported by Michael Chirico to R-devel.
  * write.table(), write.csv() and write.csv2() restore their
    numerical precision (internal equivalent of digits = 15) after an
    interrupt (PR#18384).
  * One can now read also byte FF from a clipboard connection
    (PR#18385).
  * source("") and source(character()) now give more helpful error
    messages.
  * R CMD check --as-cran set _R_CHECK_TIMINGS_ too late to have the
    intended effect.
  * as.POSIXlt(x) now also works with very large dates x, fixing
    PR#18401 reported by Hannes M"uhleisen.
  * Files can now be extracted even from very large zip archives
    (PR#18390, thanks to Martin Jakt).
  * Non-finite objects of class "POSIXlt" are now correctly coerced
    to classes "Date" and "POSIXct"; following up on the extension to
    format() them correctly.
  * Added methods for is.finite(), is.infinite() and is.nan() for
    "POSIXlt" date-time objects.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1678881600">- CHANGES IN R 4.2.3:
  C-LEVEL FACILITIES:
  * The definition of DL_FUNC in R_ext/Rdynload.h has been changed to
    be fully C-compliant.  This means that functions loaded _via_ for
    example R_GetCCallable need to be cast to an appropriate type if
    they have any arguments.
  * .Machine has a new element sizeof.time_t to identify old systems
    with a 32-bit type and hence a limited range of date-times (and
    limited support for dates millions of years from present).
  PACKAGE INSTALLATION:
  * (Windows) The default C++ standard had accidentally been left at
    C++11 when it was changed to C++14 on Unix.
  BUG FIXES:
  * As "POSIXlt" objects may be "partially filled" and their list
    components meant to be recycled, length() now is the length of
    the longest component.
  * as.POSIXlt.Date() could underflow for dates in the far past (more
    than half a million years BCE).
  * as.Date.POSIXlt(x) would return "1970-01-01" instead of NA in R
    4.2.2, e.g., for
    x &lt;- as.POSIXlt(c("2019-01-30","2001-1-1"))
    x$mon &lt;- c(0L, NA); as.Date(x)
  * R CMD check failed to apply enabled _R_CHECK_SUGGESTS_ONLY_ to
    examples and vignettes (regression in R 4.2.0).
  * R CMD check did not re-build vignettes in separate processes by
    default (regression in R 4.2.0).
  * Running examples from HTML documentation now restores previous
    knitr settings and options (PR#18420).
  * Quartz: fonts are now located using Core Graphics API instead of
    deprecated ATS which is no longer supported in the macOS 13 SDK
    (PR#18426).  This also addresses an issue where the currently
    used font in the Quartz device context was not correctly
    retained.
  * (Windows) Math symbols in text drawing functions are again
    rendered correctly (PR#18440).  This fixes a regression in R
    4.2.1 caused by a fix in PR#18382 which uncovered an issue in
    GraphApp due to which the symbol charset was not used with TT
    Symbol font face.
  * (Windows) Installing a package with a src/Makefile.{win,ucrt}
    file includes ~/.R/Makevars.win64 in the search for user
    makevars, as documented in "R Installation and Administration"
    and done for packages with a src/Makevars.{win,ucrt} file.
  * format(&lt;POSIXlt_w/_unbalanced_sec&gt;, "....%OS&lt;n&gt;") with n &gt; 0 no
    longer accidentally uses the unbalanced seconds, thanks to
    Suharto Anggono's report (including patch) in PR#18448.
  * solve.default(a, b) works around issues with some versions of
    LAPACK when a contains NA or NaN values.
  * When UseMethod() cannot dispatch, it no longer segfaults
    producing the error message in case of a long class(), thanks to
    Joris Vankerschaver's report (including patch) in PR#18447.
  * When example(foo, ..) produces graphics on an interactive device
    it needs to open itself, it now leaves devAskNewPage() unchanged
    even when it was FALSE, thus fixing a 14 years old '&lt;FIXME&gt;'.
  * packageDescription() again catches errors from encoding
    conversions. This also fixes broken packageVersion() in C locale
    on systems where iconv does not support transliteration.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1681128000">- add patch to build with libcurl &gt;= 8</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1682078400">- CHANGES IN R 4.3.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Calling &amp;&amp; or || with LHS or (if evaluated) RHS of length greater
    than one is now always an error, with a report of the form
    'length = 4' in coercion to 'logical(1)'
    Environment variable _R_CHECK_LENGTH_1_LOGIC2_ no longer has any
    effect.
  NEW FEATURES:
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.10.1.  (This caused some platform-dependent
    changes to package check output.)  And then to the sources from
    LAPACK version 3.11.0 (with changes only to double complex
    subroutines).
  * The included LAPACK sources have been updated to include the four
    Fortran 90 routines rather than their Fortran 77 predecessors.
    This may give some different signs in SVDs or
    eigendecompositions..  (This completes the transition to LAPACK
    3.10.x begun in R 4.2.0.)
  * The LAPACK sources have been updated to version 3.11.0.  (No new
    subroutines have been added, so this almost entirely bug fixes:
    Those fixes do affect some computations with NaNs, including R's
    NA.)
  * The parser now signals _classed_ errors, notably in case of the
    pipe operator |&gt;.  The error object and message now give line and
    column numbers, mostly as proposed and provided by Duncan Murdoch
    in PR#18328.
  * toeplitz() is now generalized for asymmetric cases, with a
    toeplitz2() variant.
  * xy.coords() and xyz.coords() and consequently, e.g., plot(x,y,
    log = "y") now signal a _classed_ warning about negative values
    of y (where log(.) is NA).  Such a warning can be specifically
    suppressed or caught otherwise.
  * Regular expression functions now check more thoroughly whether
    their inputs are valid strings (in their encoding, e.g. in
    UTF-8).
  * The performance of grep(), sub(), gsub() and strsplit() has been
    improved, particularly with perl = TRUE and fixed = TRUE.  Use of
    useBytes = TRUE for performance reasons should no longer be
    needed and is discouraged: it may lead to incorrect results.
  * apropos() gains an argument dot_internals which is used by the
    completion (help(rcompgen)) engine to also see base internals
    such as .POSIXct().
  * Support in tools::Rdiff() for comparing uncompressed PDF files is
    further reduced - see its help page.
  * qqplot(x, y, ...) gains conf.level and conf.args arguments for
    computing and plotting a confidence band for the treatment
    function transforming the distribution of x into the distribution
    of y (Switzer, 1976, _Biometrika_). Contributed by Torsten
    Hothorn.
  * Performance of package_dependencies() has been improved for cases
    when the number of dependencies is large.
  * Strings newly created by gsub(), sub() and strsplit(), when any
    of the inputs is marked as "bytes", are also marked as "bytes".
    This reduces the risk of creating invalid strings and accidental
    substitution of bytes deemed invalid.
  * Support for readLines(encoding = "bytes") has been added to allow
    processing special text files byte-by-byte, without creating
    invalid strings.
  * iconv(from = "") now takes into account any declared encoding of
    the input elements and uses it in preference to the native
    encoding.  This reduces the risk of accidental creation of
    invalid strings, particularly when different elements of the
    input have different encoding (including "bytes").
  * Package repositories in getOption("repos") are now initialized
    from the repositories file when utils is loaded (if not already
    set, e.g., in .Rprofile).  (From a report and patch proposal by
    Gabriel Becker in PR#18405.)
  * compactPDF() gets a verbose option.
  * type.convert() and hence read.table() get new option tryLogical =
    TRUE with back compatible default.  When set to false, converts
    "F" or "T" columns to character.
  * Added new unit prefixes "R" and "Q" for abbreviating
    (unrealistically large) sizes beyond 10^{27} in standard = "SI",
    thanks to Henrik Bengtsson's PR#18435.
  * as.data.frame()'s default method now also works fine with atomic
    objects inheriting from classes such as "roman", "octmode" and
    "hexmode", such fulfilling the wish of PR#18421, by Benjamin
    Feakins.
  * The as.data.frame.vector() utility now errors for wrong-length
    row.names.  It warned for almost six years, with "Will be an
    error!".
  * sessionInfo() now also contains La_version() and reports codepage
    and timezone when relevant, in both print() and toLatex() methods
    which also get new option tzone for displaying timezone
    information when locale = FALSE.
  * New function R_compiled_by() reports the C and Fortran compilers
    used to build R, if known.
  * predict(&lt;lm&gt;, newdata = *) no longer unnecessarily creates an
    offset of all 0s.
  * solve() for complex inputs now uses argument tol and by default
    checks for 'computational singularity' (as it long has done for
    numeric inputs).
  * predict(&lt;rank-deficient lm&gt;, newdata=*) now obeys a new argument
    rankdeficient, with new default "warnif", warning only if there
    are non-estimable cases in newdata.  Other options include
    rankdeficient = "NA", predicting NA for non-estimable newdata
    cases.  This addresses PR#15072 by Russ Lenth and is based on his
    original proposal and discussions in PR#16158 also by David Firth
    and Elin Waring.  Still somewhat experimental.
  * Rgui console implementation now works better with the NVDA screen
    reader when the full blinking cursor is selected.  The underlying
    improvements in cursor handling may help also other screen
    readers on Windows.
  * The drop-field control in GraphApp can now be left with the TAB
    key and all controls can be navigated in the reverse order using
    the Shift+TAB key, improving accessibility of the Rgui
    configuration editor.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now fully accurate
    (instead of to "only" minimally five digits).
  * demo(error.catching) now also shows off withWarnings() and
    tryCatchWEMs().
  * As an experimental feature the placeholder _ can now also be used
    in the rhs of a forward pipe |&gt; expression as the first argument
    in an extraction call, such as _$coef. More generally, it can be
    used as the head of a chain of extractions, such as _$coef[[2]].
  * Spaces in the environment variable used to choose the R session's
    temporary directory (TMPDIR, TMP and TEMP are tried in turn) are
    now fatal.  (On Windows the 'short path' version of the path is
    tried and used if that does not contain a space.)
  * all.equal.numeric() gets a new optional switch giveErr to return
    the numeric error as attribute.  Relatedly,
    stopifnot(all.equal&lt;some&gt;(a, b, ..)) is as "smart" now, as
    stopifnot(all.equal(....)) has been already, thus allowing
    customized all.equal&lt;Some&gt;() wrappers.
  * R on Windows is now able to work with path names longer than 260
    characters when these are enabled in the system (requires at
    least Windows 10 version 1607).  Packages should be updated to
    work with long paths as well, instead of assuming PATH_MAX to be
    the maximum length.  Custom front-ends and applications embedding
    R need to update their manifests if they wish to allow this
    feature.  See
    &lt;https://blog.r-project.org/2023/03/07/path-length-limit-on-windows&gt;
    for more information.
  * 'Object not found' and 'Missing argument' errors now give a more
    accurate error context. Patch provided by Lionel Henry in
    PR#18241.
  * The @ operator is now an S3 generic. Based on contributions by
    Tomasz Kalinowski in PR#18482.
  * New generic chooseOpsMethod() provides a mechanism for objects to
    resolve cases where two suitable methods are found for an Ops
    Group Generic. This supports experimenting with alternative
    object systems. Based on contributions by Tomasz Kalinowski in
    PR#18484.
  * inherits(x, what) now accepts values other than a simple
    character vector for argument what. A new generic, nameOfClass(),
    is called to resolve the class name from what. This supports
    experimenting with alternative object systems. Based on
    contributions by Tomasz Kalinowski in PR#18485.
  * Detection of BLAS/LAPACK in use (sessionInfo()) with FlexiBLAS
    now reports the current backend.
  * The "data.frame" method for subset() now warns about extraneous
    arguments, typically catching the use of = instead of == in the
    subset expression.
  * Calling a:b when numeric a or b is longer than one may now be
    made into an error by setting environment variable
    _R_CHECK_LENGTH_COLON_ to a true value, along the proposal in
    PR#18419 by Henrik Bengtsson.
  * density(x, weights = *) now warns if automatic bandwidth
    selection happens without using weights; new optional warnWbw may
    suppress the warning.  Prompted by Christoph Dalitz' PR#18490 and
    its discussants.
  * rm(list = *) is faster and more readable thanks to Kevin Ushey's
    PR#18492.
  * The plot.lm() function no longer produces a normal Q-Q plot for
    GLMs. Instead it plots a half-normal Q-Q plot of the absolute
    value of the standardized deviance residuals.
  * The print() method for class "summary.glm" no longer shows
    summary statistics for the deviance residuals by default.  Its
    optional argument show.residuals can be used to show them if
    required.
  * The tapply() function now accepts a data frame as its X argument,
    and allows INDEX to be a formula in that case. by.data.frame()
    similarly allows INDICES to be a formula.
  * The performance of df[j] &lt;- value (including for missing j) and
    write.table(df) has been improved for data frames df with a large
    number of columns.  (Thanks to Gabriel Becker's PR#18500,
    PR#18503 and discussants, prompted by a report from Toby Dylan
    Hocking on the R-devel mailing list.)
  * The matrix multiply operator %*% is now an S3 generic, belonging
    to new group generic matrixOps.  From Tomasz Kalinowski's
    contribution in PR#18483.
  * New function array2DF() to convert arrays to data frames,
    particularly useful for the list arrays created by tapply().
  DATES and TIMES:
  * On platforms where (non-UTC) datetimes before 1902 (or before
    1900 as with system functions on recent macOS) are guessed by
    extrapolating time zones from 1902-2037, there is a warning at
    the first use of extrapolation in a session.  (As all time zones
    post 2037 are extrapolation, we do not warn on those.)
  * (Platforms using --with-internal-tzone, including Windows and by
    default macOS). How years are printed in dates or date-times can
    be controlled by environment variable R_PAD_YEARS_BY_ZERO.  The
    default remains to pad to 4 digits by zeroes, but setting value
    no gives no padding (as used by default by glibc).
  * strftime() tries harder to determine the offset for the "%z"
    format, and succeeds on the mainstream R platforms.
  * strftime() has a limit of 2048 bytes on the string produced -
    attempting to exceed this is an error.  (Previously it silently
    truncated at 255 bytes.)
  * sessionInfo() records (and by default prints) the system time
    zone as part of the locale information.  Also, the source
    (system/internal) of the date-time conversion and printing
    functions.
  * Objects of class "POSIXlt" created in this version of R always
    have 11 components: component zone is always set, and component
    gmtoff is set for times in UTC and usually set on the (almost
    all) platforms which have C-level support, otherwise is NA.
  * There are comprehensive validity checks on the structure of
    objects of class "POSIXlt" when converting (including formatting
    and printing).  (This avoids mis-conversions of hand-crafted
    objects.)
  * There is some support for using the native date-time routines on
    macOS: this is only viable on recent versions (e.g. 12.6 and 13)
    and does get wrong some historical changes (before 1900, during
    WWII).  Use of --with-internal-tzone remains the default.
  * as.POSIXct(&lt;numeric&gt;) and as.POSIXlt(.) (without specifying
    origin) now work.  So does as.Date(&lt;numeric&gt;).
  * as.Date.POSIXct(., tz) now treats several tz values, notably
    "GMT" as equivalent to "UTC", proposed and improved by Michael
    Chirico and Joshua Ulrich in PR#17674.
  * Experimental balancePOSIXlt() utility allows using "ragged" and
    or out-of-range "POSIXlt" objects more correctly, e.g., in
    subsetting and subassignments.  Such objects are now documented.
    More experimentally, a "POSIXlt" object may have an attribute
    "balanced" indicating if it is known to be filled or fully
    balanced.
  * Functions axis.Date() and axis.POSIXct() are rewritten to gain
    better default tick locations and better default formats by using
    prettyDate(). Thanks to Swetlana Herbrandt.
  * The mapping of Windows' names for time zones to IANA's 'Olson'
    names has been updated.  When ICU is available (it is by
    default), it is used to get a mapping for the current region set
    in Windows.  This can be overridden by setting environment
    variable TZ to the desired Olson name - see OlsonNames() for
    those currently available.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 16
    and so packages that provide graphics devices should be
    reinstalled.
  * The grDevices and grid packages have new functions for rendering
    typeset glyphs, primarily: grDevices::glyphInfo() and
    grid::grid.glyph().
    Rendering of typeset glyphs is only supported so far on the
    Cairo-based graphics devices and on the pdf() and quartz()
    devices.
  * The defined behaviour for "clear" and "source" compositing
    operators (via grid::grid.group()) has been changed (to align
    better with simple interpretation of original Porter-Duff
    definitions).
  * Support for gradients, patterns, clipping paths, masks, groups,
    compositing operators, and affine transformations has been added
    to the quartz() device.
  INSTALLATION on a UNIX-ALIKE:
  * A system installation of generic LAPACK 3.10.0 or later will be
    preferred to the version in the R sources.
    configure option --with-lapack=no (equivalently --without-lapack)
    forces compilation of the internal LAPACK sources.
    If --with-lapack is not specified, a system liblapack is looked
    for and used if it reports version 3.10.0 or later and does not
    contain BLAS routines.
    Packages using LAPACK will need to be reinstalled if this changes
    to using an external library.
  * On aarch64 Linux platforms using GCC, configure now defaults to
  - fPIC (instead of -fpic), as desired in PR#18326.
  * configure now checks conversion of datetimes between POSIXlt and
    POSIXct around year 2020.  Failure (which has been seen on
    platforms missing tzdata) is fatal.
  * If configure option --with-valgrind-instrumentation is given
    value 1 or 2, option --with-system-valgrind-headers is now the
    default and ignored (with a warning).  It is highly recommended
    that the system headers are installed alongside valgrind: they
    are part of its packaging on some Linux distributions and
    packaged separately (e.g. in the valgrind-devel RPM) on others.
    configure will give a warning if they are not found.
    The system headers will be required in a future release of R to
    build with valgrind instrumentation.
  * libcurl 8.x is now accepted by configure: despite a change in
    major version number it changes neither API nor ABI.
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools43, an update of the Rtools42 toolchain.  It is
    based on gcc 12 and newer versions of MinGW-W64, binutils and
    libraries.  At this time R-devel can still be built using
    Rtools42 without changes, but when R-devel is installed via the
    installer, it will by default look for Rtools43.
  * Old make targets rsync-extsoft and 32-bit ones that are no longer
    needed have been removed.
  * Default builds (including for packages) no longer select C99.
    Thus the C standard used is the default for the compiler, which
    for the toolchain in Rtools43 is C17.  (This is consistent with
    Unix builds.)
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++17 where
    available (which it is on all currently checked platforms): if
    not C++14 or C++11 is used if available otherwise C++ is not
    supported.
  * USE_FC_LEN_T is the default: this uses the correct
    (compiler-dependent) prototypes for Fortran BLAS/LAPACK routines
    called from C/C++, and requires adjustment of many such calls -
    see 'Writing R Extensions' SS6.6.1.
  * There is initial support for C++23 as several compilers are now
    supporting -std=c++23 or -std=c++2b or similar.  As for C++20,
    there no additional configure checks for C++23 features beyond a
    check that the compiler reports a __cplusplus value greater than
    that in the C++20 standard.  C++ feature tests should be used.
  * There is support for a package to indicate the version of the C
    standard which should be used to compile it, and for the
    installing user to specify this.  In most cases R defaults to the
    C compiler's default standard which is C17 (a `bug-fix' of C11) -
    earlier versions of R or compilers may have defaulted to C99.
    Current options are:
    USE_C17 Use a standard that is at most C17.  The intention is to
    allow legacy packages to still be installed when later C
    standards become the default, including packages using new
    keywords as identifiers or with K&amp;R-style function
    declarations.  This will use C17 if available, falling back
    to C11.
    USE_C90 Use the C90 (aka C89) standard.  (As that standard did
    not require compilers to identify that version, all we can
    verify is that the compiler does not claim to be using a
    later standard.  It may accept C99 features - for example
    clang accepts // to make comments.)
    USE_C99 Use the C99 standard. This should be rarely needed - it
    avoids the few new features of C11/C17 which can be useful if
    a package assumes them if C17 is specified and they are not
    implemented.
    USE_C23 Use C23 (or in future, later).  Compiler/library support
    for C23 is still being implemented, but LLVM clang from
    15.0.0 and the upcoming GCC 13 have quite extensive support.
    These can be specified as part of the SystemRequirements field in
    the package's DESCRIPTION file or _via_ options --use-C17 and so
    on of R CMD INSTALL and R CMD SHLIB.
    For further details see "Writing R Extensions" SS1.2.5.
  * (Windows) A src/Makefile.ucrt or src/Makefile.win file is now
    included after R_HOME/etcR_ARCH/Makeconf and so no longer needs
    to include that file itself.  Installation of a package with such
    a file now uses a site Makevars file in the same way as a package
    with a src/Makevars.win file would.
  * configure is now passed crucial variables such as CC and CFLAGS
    in its environment, as many packages were not setting them (as
    documented in 'Writing R Extensions' SS1.2).
    This has most effect where configure is used to compile parts of
    the package - most often by cmake or libtool which obfuscate the
    actual compile commands used.
    Also used for configure.win and configure.ucrt on Windows.
  FORTRAN FLAGS:
  * The flag -fno-optimize-sibling-calls is no longer forced for
    gfortran 7 and later.  It should no longer be needed now using
    'hidden' character-length arguments when calling BLAS/LAPACK
    routines from C/C++ is the default even for packages.  (Unless
    perhaps packages call Fortran code from C/C++ without using R's
    headers and without allowing for these arguments.)
  C-LEVEL FACILITIES:
  * The deprecated S-compatibility macros DOUBLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * The deprecated legacy typedefs of Sint and Sfloat in header R.h
    are no longer defined, and that header no longer includes header
    limits.h from C nor climits from C++.
  * New macro CAD5R() is provided in Rinternals.h and used in a few
    places in the R sources.
  * ALTREP now supports VECSXP vectors. Contributed by Gabor Csardi
    in PR#17620.
  * The Rcomplex definition (in header R_ext/Complex.h) has been
    extended to prevent possible mis-compilation when interfacing
    with Fortran (PR#18430).  The new definition causes compiler
    warnings with static initializers such as {1, 2}, which can be
    changed to {.r=1, .i=2}.
    Using the new definition from C++ depends on compiler extensions
    supporting C features that have not been incorporated into the
    C++ standards but are available in g++ and clang++: this may
    result in C++ compiler warnings but these have been worked around
    for recent versions of common compilers (GCC, Apple/LLVM clang,
    Intel).
    It is intended to change the inclusion of header R_ext/Complex.h
    by other R headers, so C/C++ code files which make use of
    Rcomplex should include that header explicitly.
  UTILITIES:
  * R CMD check does more checking of package .Rd files, warning
    about invalid email addresses and (some) invalid URIs and noting
    empty \item labels in description lists.
  * R CMD check now also reports problems when reading package news
    in md (file NEWS.md) and (optionally) plain text (file NEWS)
    formats.
  * _R_CHECK_TIMINGS_ defaults to a value from the environment even
    for R CMD check --as-cran; this allows for exceptionally fast or
    slow platforms.
    It now applies to checking PDF and HTML versions of the manuals,
    and 'checking CRAN incoming feasibility'.
  * R CMD check can optionally (but included in --as-cran) check
    whether HTML math rendering _via_ KaTeX works for the package .Rd
    files.
  * Non-interactive debugger invocations can be trapped by setting
    the environment variable _R_CHECK_BROWSER_NONINTERACTIVE_ to a
    true value.  This is enabled by R CMD check --as-cran to detect
    the use of leftover browser() statements in the package.
  * The use of sprintf and vsprintf from C/C++ has been deprecated in
    macOS 13 and is a known security risk.  R CMD check now reports
    (on all platforms) if their use is found in compiled code:
    replace by snprintf or vsnprintf respectively. [*NB:* whether
    such calls get compiled into the package is platform-dependent.]
  * Where recorded at installation, R CMD check reports the C and
    Fortran compilers used to build R.
    It reports the OS in use (if known, as given by osVersion) as
    well as that R was built for.
    It notes if a C++ standard was specified which is older than the
    current default: many packages have used C++11 to mean 'not
    C++98' - as C++11 is the minimum supported since R 4.0.0, that
    specification can probably be removed.
  * R CMD INSTALL reports the compilers (and on macOS, the SDK) used,
    and this is copied to the output of R CMD check.
    Where a C++ standard is specified, it is reported.
  * R CMD check's 'checking compilation flags in Makevars' has been
    relaxed to accept the use of flags such as -std=f2008 in
    PKG_FFLAGS.
  * tools::buildVignettes() has a new argument skip, which is used by
    R CMD check to skip (and note) vignettes with unavailable
    \VignetteDepends (PR#18318).
  * New generic .AtNames() added to enable class-specific completions
    after @. The formerly internal function findMatches() is now
    exported, mainly for use in methods for .DollarNames() and
    .AtNames().
  DEPRECATED AND DEFUNCT:
  * default.stringsAsFactors() is defunct.
  * Calling as.data.frame.&lt;class&gt;() directly (for 12 atomic classes)
    is going to be formally deprecated, currently activated by
    setting the environment variable
    _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ to non-empty, which also
    happens in R CMD check --as-cran.
  BUG FIXES:
  * Hashed environments with sizes less than 5 can now grow.
    (Reported to R-devel by Duncan Garmonsway.)
  * as.character(&lt;Rd&gt;, deparse = TRUE) failed to re-escape curly
    braces in LaTeX-like text.  (Reported by Hadley Wickham in
    PR#18324.)
  * library() now passes its lib.loc argument when requiring Depends
    packages; reported (with fix) in PR#18331 by Mikael Jagan.
  * R CMD Stangle: improved message about 'Output' files.
  * head(x, n) and tail(x, n) now signal an error if n is not
    numeric, instead of incidentally "working" sometimes returning
    all of x.  Reported and discussed by Colin Fay, in PR#18357.
  * The "lm" method for summary() now gives the correct F-statistic
    when the model contains an offset.  Reported in PR#18008.
  * C() and `contrasts&lt;-`() now preserve factor level names when
    given a function object (as opposed a function name which did
    preserve names). Reported in PR#17616.
  * c(a = 1, 2)[[]] no longer matches 2 but rather signals a
    _classed_ error.  Reported and analysed by Davis Vaughan in
    PR#18367, a duplicate of PR#18004, by Jan Meis et al.  For
    consistency, NULL[[]] is also erroneous now.  x[[]] &lt;- v gives an
    error of the same class "MissingSubscriptError".
  * The relist() function of utils now supports NULL elements in the
    skeleton (PR#15854).
  * ordered(levels = *) (missing x) now works analogously to factor(,
    ordered=TRUE); reported (with fix) by Achim Zeileis in PR#18389.
  * User-defined Rd macro definitions can now span multiple lines,
    thanks to a patch from Duncan Murdoch. Previously, the Rd parser
    silently ignored everything after the first line.
  * Plain-text help (tools::Rd2txt()) now preserves an initial blank
    line for text following description list items.
  * tools::Rd2HTML() and tools::Rd2latex() no longer split \arguments
    and \value lists at Rd comments.
  * tools::Rd2latex() now correctly handles optional text outside
    \items of argument lists as well as bracketed text at the
    beginning of sections, e.g., \value{[NULL]}.
  * as.character(&lt;POSIXt&gt;) now behaves more in line with the methods
    for atomic vectors such as numbers, and is no longer influenced
    by options().  Ditto for as.character(&lt;Date&gt;).  The
    as.character() method gets arguments digits and OutDec with
    defaults _not_ depending on options().  Use of as.character(*,
    format = .) now warns.
  * Similarly, the as.character.hexmode() and *.octmode() methods
    also behave as good citizen methods and back compatibility option
    keepStr = TRUE.
  * The as.POSIXlt(&lt;POSIXlt&gt;) and as.POSIXct(&lt;POSIXct&gt;) default
    methods now do obey their tz argument, also in this case.
  * as.POSIXlt(&lt;Date&gt;) now does apply a tz (time zone) argument, as
    does as.POSIXct(); partly suggested by Roland Fuss on the R-devel
    mailing list.
  * as.Date.POSIXlt(x) now also works when the list components are of
    unequal length, aka "partially filled" or "ragged".
  * expand.model.frame() looked up variables in the wrong environment
    when applied to models fitted without data.  Reported in
    PR#18414.
  * time() now (also) uses the ts.eps = getOption("ts.eps") argument
    and thus by default rounds values very close to the start (or
    end) of a year.  Based on a proposal by Andre"i V. Kostyrka on
    R-help.
  * Printing of a factanal() result with just one factor and sort =
    TRUE now works regularly, fixing PR#17863 by Timothy Bates,
    thanks to the 'R Contributors' working group.
  * Printing 0-length objects of class "factor", "roman", "hexmode",
    "octmode", "person", "bibentry", or "citation" now prints
    something better, one of which fixes PR#18422, reported by
    Benjamin Feakins.
  * Sys.timezone() queries timedatectl only if systemd is loaded;
    addressing a report by Jan Gorecki in PR#17421.
  * The formula method of cor.test() had scoping problems when
    environment(formula) was not the calling environment; reported
    with a patch proposal by Mao Kobayashi in PR#18439.
  * attach() of an environment with active bindings now preserves the
    active bindings.  Reported by Kevin Ushey in PR#18425.
  * BLAS detection now works also with system-provided libraries not
    available as regular files.  This fixes detection of the
    Accelerate framework on macOS since Big Sur.  Reported by David
    Novgorodsky.
  * download.file() gives a helpful error message in case of an
    invalid download.file.method option, thanks to Colin Fay's report
    in PR#18455.
  * Sporadic crashes of Rterm when using completion have been fixed.
  * Rprof() is now more reliable.  A livelock in thread
    initialization with too short sampling interval has been fixed on
    macOS.  A deadlock in using the C runtime has been fixed on
    Windows.  A potential deadlock has been prevented on Unix.
  * Cursor placement in Rgui now works even after a fixed-width font
    is selected.
  * Mandatory options (options()) are now set on startup so that
    saving and restoring them always works (PR#18372).
  * Package installation, R CMD INSTALL or install.packages(*), now
    parses each of the &lt;pkg&gt;/R/*.R files individually instead of
    first concatenating and then parse()ing the large resulting file.
    This allows parser or syntax errors to be diagnosed with correct
    file names and line numbers, thanks to Simon Dedman's report and
    Bill Dunlap's patch in PR#17859.
    This _does_ require syntactically self contained R source files
    now, fixing another inadvertent bug.
  * predict.lm(&lt;model with offset&gt;) now finds the offset in the
    correct environment, thanks to Andr'e Gillibert's report and patch
    in PR#18456.
  * getInitial(&lt;formula&gt;) now finds the selfStart model in the
    correct environment.  (Reported by Ivan Krylov in PR#18368.)
  * Fix for possible segfault when using recently-added graphics
    features, such as gradients, clipping paths, masks, and groups
    with pdf(file=NULL).
  * class(m) &lt;- class(m) no longer changes a matrix m by adding a
    class _attribute_.
  * packageDate(pkg) now only warns once if there is no pkg.
  * When ts() creates a multivariate time series, "mts", it also
    inherits from "array" now, and is.mts() is documented _and_
    stricter.
  * Rd2txt() now preserves line breaks of \verb Rd content and from
    duplicated \cr.  The former also fixes the rendering of verbatim
    output from Rd \Sexpr in plain-text help.
  * uniroot(f, interval) should no longer wrongly converge _outside_
    the interval in some cases where abs(f(x)) == Inf for an x at the
    interval boundary, thanks to posts by Ben Bolker and Serguei
    Sokol on R-devel.
  * Vectorized alpha handling in palette functions such as in gray(),
    rainbow(), or hcl.colors() works correctly now, thanks to Achim
    Zeileis' report and patch in PR#18476.
  * Formatting and print()ing of bibentry objects has dropped the
    deprecated citation.bibtex.max argument, such that the bibtex
    argument's default for print.bibentry() depends directly on the
    citation.bibtex.max option, whereas in format.bibentry() the
    option no longer applies.
  * Attempting to use a character string naming a foreign function
    entry point in a foreign function call in a package will now
    signal an error if the packages has called R_forceSymbols to
    specify that symbols must be used.
  * An error in table() could permanently set options(warn=2)
    promoting all subsequent warnings to errors.
  * The sigma() function gave misleading results for binary GLMs.  A
    new method for objects of class "glm" returns the square root of
    the estimate of the dispersion parameter using the same
    calculation as summary.glm().
  * bs() and ns() in the (typical) case of automatic knot
    construction, when some of the supposedly inner knots coincide
    with boundary knots, now moves them inside (with a warning),
    building on PR#18442 by Ben Bolker.
  * R CMD on Windows now skips the site profile with --no-site-file
    and --vanilla even when R_PROFILE is set (PR#18512, from Kevin
    Ushey).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1686916800">- CHANGES IN R 4.3.1:
  C-LEVEL FACILITIES:
  * The C-level API version of R's integrate(), Rdqags() in Applic.h,
    now returns the correct number of integrand evaluations neval,
    fixing PR#18515 reported and diagnosed by Stephen Wade.
  * The C prototypes for LAPACK calls dspgv and dtptrs in
    R_exts/Lapack.h had one too many and one too few character length
    arguments - but this has not caused any known issues. To get the
    corrected prototypes, include
    [#]include &lt;Rconfig.h&gt; // for PR18534fixed
    [#]ifdef PR18534fixed
    [#] define usePR18534fix 1
    [#]endif
    [#]include &lt;R_exts/Lapack.h&gt;
    in your C/C++ code (PR#18534).
  INSTALLATION:
  * Many of the checks of esoteric Internet operations and those
    using unreliable external sites have been moved to a new target
    that is not run by default and primarily intended for the core
    developers.  To run them use
    cd tests; make test-Internet-dev
  BUG FIXES:
  * .S3methods(), typically called from methods(), again marks
    methods from package base as visible.
    Also, the visibility of non-base methods is again determined by
    the method's presence in search().
  * tools::Rdiff() is now more robust against invalid strings, fixing
    installation tests on Windows without Rtools installed
    (PR#18530).
  * Fix (new) bug in hcl.colors(2, *), by Achim Zeileis (PR#18523).
  * head(., &lt;illegal&gt;) and tail(..) now produce more useful "Error in
    ...." error messages, fixing PR#18362.
  * Package code syntax on Windows is checked in UTF-8 when UTF-8 is
    the native encoding.
  * na.contiguous(x) now also returns the first run, when it is at
    the beginning and there is a later one of the same length;
    reported to R-devel, including a fix, by Georgi Boshnakov.
    Further, by default, it modifies only an existing attr(*,"tsp")
    but otherwise no longer sets one.
  * chol(&lt;not pos.def&gt;, pivot = &lt;T|F&gt;) now gives a correct error or
    warning message (depending on pivot), thanks to Mikael Jagan's
    (PR#18541).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1699012800">- CHANGES IN R 4.3.2:
  NEW FEATURES:
  * The default initialization of the "repos" option from the
    repositories file at startup can be skipped by setting
    environment variable R_REPOSITORIES to NULL such that
    getOption("repos") is empty if not set elsewhere.
  * qr.X() is now an implicit S4 generic in methods.
  * iconv(to = "ASCII//TRANSLIT") is emulated using substitution on
    platforms which do not support it (notably Alpine Linux).  This
    should give a human-readable conversion in ASCII on all platforms
    (rather than NA_character_).
  * trans3d() gains options continuous and verbose addressing the
    problem of possible "wrap around" when projecting too long
    curves, as reported by Achim Zeileis in PR#18537.
  * tools::showNonASCII() has been rewritten to work better on macOS
    14 (which has a changed implementation of iconv()).
  * tiff(type = "quartz") (the default on macOS) now warns if
    compression is specified: it continues to be ignored.
  INSTALLATION on a UNIX-ALIKE:
  * There is some support for building with Intel's LLVM-based
    compilers on x86_64 Linux, such as (C) icx, (C++) ipcx and
    (Fortran) ifx from oneAPI 2023.x.y.
  * There is support for using LLVM's flang-new as the Fortran
    compiler from LLVM 16.0.x (preferably 17.0.0 or later).
  UTILITIES:
  * R CMD check reports the use of the Fortran 90 random number
    generator RANDOM_NUMBER() and the subroutines to initialize it.
    'Writing R Extensions' has example code to use R's RNGs from
    Fortran.
  BUG FIXES:
  * substr(x, n, L) &lt;- cc now works (more) correctly for multibyte
    UTF-8 strings x when L &gt; nchar(x), thanks to a report and patch
    by 'Architect 95'.
  * contrib.url(character()) now returns 0-length character() as
    documented, which also avoids spurious warnings from
    available.packages() et al. in the edge case of an empty vector
    of repository URLs.
  * readChar(., 4e8) no longer fails, thanks to Kodi Arfer's report
    (PR#18557).
  * lapply(&lt;list&gt;, as.data.frame) no longer warns falsely for some
    base vector components.
  * Communication between parent and child processes in the multicore
    part of parallel could fail on platforms that do not support an
    arbitrarily large payload in system functions read()/write() on
    pipes (seen on macOS where a restriction to INT_MAX bytes is
    documented, without doing a partial read unlike Linux). The
    payload is now split into 1Gb chunks to avoid that problem.
    (PR#18571)
  * qqplot(x,y, conf.level=.) gives better confidence bounds when
    length(x) != length(y), thanks to Alexander Ploner's report and
    patch proposal (PR#18557).
  * norm(&lt;0-length&gt;, "2") now gives zero instead of an error, as all
    the other norm types, thanks to Mikael Jagan's PR#18542.
  * Build-stage Rd macros \packageAuthor and \packageMaintainer now
    process Authors@R, fixing NA results when the package DESCRIPTION
    omits Author and Maintainer fields.
  * Formatting and printing complex numbers could give things like
    0.1683-0i because of rounding error: -0i is now replaced by +0i.
  * postscript() refused to accept a title comment containing the
    letter "W" (PR#18599).
  * isoreg(c(1,Inf)) signals an error instead of segfaulting, fixing
    PR#18603.
  * tiff(type = "Xlib") was only outputting the last page of
    multi-page plots.
  * tools::latexToUtf8() again knows about \~{n} and other letters
    with tilde, fixing a regression in R 4.3.0, and about \^{i} as an
    alternative to \^{\i} (similarly with other accents).
    Furthermore, LaTeX codes for accented I letters are now correctly
    converted, also fixing related mistakes in
    tools::encoded_text_to_latex().
  * tar(*, tar = "internal") no longer creates out-of-spec tar files
    in the very rare case of user or group names longer than 32
    bytes, fixing PR#17871 with thanks to Ivan Krylov.
  * When using the "internal" timezone datetime code, adding a
    fraction of a second no longer adds one second, fixing PR#16856
    from a patch by Ivan Krylov.
  * tools::checkRd() no longer produces spurious notes about
    "unnecessary braces" from multi-line Rd results of \Sexpr macros.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1709208000">- CHANGES IN R 4.3.3:
  NEW FEATURES:
  * iconv() now fixes up variant encoding names such as "utf8"
    case-insensitively.
  DEPRECATED AND DEFUNCT:
  * The legacy encoding = "MacRoman" is deprecated in pdf() and
    postscript(): support was incomplete in earlier versions of R.
  BUG FIXES:
  * Arguments are now properly forwarded to methods on S4 generics
    with ... in the middle of their formal arguments. This was broken
    for the case when a method introduced an argument but did not
    include ... in its own formals. Thanks to Herv'e Pag`es for the
    report PR#18538.
  * Some invalid file arguments to pictex(), postscript() and xfig()
    opened a file called NA rather than throw an error.  These
    included postscript(NULL) (which some people expected to work
    like pdf(NULL)).
  * Passing filename = NA to svg(), cairo_pdf(), cairo_ps() or the
    Cairo-based bitmap devices opened a file called NA: it now throws
    an error.
  * quartz(file = NA) opened a file called NA, including when used as
    a Quartz-based bitmap device.  It now gives an error.
  * rank(&lt;long vector&gt;) now works, fixing PR#18617, thanks to Ilia
    Kats.
  * seq.int() did not adequately check its length.out argument.
  * match(&lt;POSIXct&gt;, .) is correct again for differing time zones,
    ditto for "POSIXlt", fixing PR#18618 reported by Bastian Klein.
  * drop.terms(*, dropx = &lt;0-length&gt;) now works, fixing PR#18563 as
    proposed by Mikael Jagan.
  * drop.terms(*) keeps + offset(.) terms when it should, PR#18565,
    and drop.terms() no longer makes up a response, PR#18566, fixing
    both bugs thanks to Mikael Jagan.
  * getS3method("t", "test") no longer finds the t.test() function,
    fixing PR#18627.
  * pdf() and postscript() support for the documented Adobe encodings
    "Greek" and "Cyrilllic" was missing (although the corresponding
    Windows' codepages could be used).
  * Computations of glyph metric information for pdf() and
    postscript() did not take into account that transliteration could
    replace one character by two or more (only seen on macOS 14) and
    typically warned that the information was not known.
  * rank(x) no longer overflows during integer addition, when
    computing rank average for largish but not-yet long vector x,
    fixing PR#18630, thanks to Ilia Kats.
  * list.files() on Windows now returns also files with names longer
    that 260 bytes (the Windows limit is 260 characters).
    Previously, some file names particularly with 'East Asian'
    characters were omitted.
  * cov2cor(&lt;0 x 0&gt;) now works, fixing PR#18423 thanks to Mikael
    Jagan and Elin Waring.
  * cov2cor(&lt;negative diagonal&gt;) and similar now give one warning
    instead of two, with better wording, fixing PR#18424 thanks to
    Mikael Jagan.
  * tools:: startDynamicHelp() now ensures port is in proper range,
    fixing PR#18645.
  * pbeta(x, a,b) is correct now for x=0 or 1 in the boundary cases
    where a or b or both are 0, fixing PR#18672 thanks to Michael
    Fay.
  * pmatch(x, table) for large table, also called for data frame row
    selection, dfrm[nm, ], is now interruptible, fixing PR#18656.
  * predict(&lt;rank-deficient lm&gt;, newdata=*) fix computing of nbasis,
    see Russ Lenth's comment 29 in PR#16158.
  * Added a work-around for a bug in macOS 14.3.1 and higher which
    prevents R plots in the Quartz Cocoa device from updating on
    screen.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1713960000">- CHANGES IN R 4.4.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Startup banners, R --version, sessionInfo() and R CMD check no
    longer report (64-bit) as part of the platform as this is almost
    universal - the increasingly rare 32-bit platforms will still
    report (32-bit).
    On Windows, ditto for window titles.
  * is.atomic(NULL) now returns FALSE, as NULL is not an atomic
    vector.  Strict back-compatibility would replace is.atomic(foo)
    by (is.null(foo) || is.atomic(foo)) but should happen only
    sparingly.
  NEW FEATURES:
  * The confint() methods for "glm" and "nls" objects have been
    copied to the stats package.  Previously, they were stubs which
    called versions in package MASS. The MASS namespace is no longer
    loaded if you invoke (say) confint(glmfit).  Further, the "glm"
    method for profile() and the plot() and pairs() methods for class
    "profile" have been copied from MASS to stats.  (profile.nls()
    and plot.profile.nls() were already in stats.)
  * The confint() and profile methods for "glm" objects have gained a
    possibility to do profiling based on the Rao Score statistic in
    addition to the default Likelihood Ratio. This is controlled by a
    new test = argument.
  * The pairs() method for "profile" objects has been extended with a
    which = argument to allow plotting only a subset of the
    parameters.
  * The "glm" method for anova() computes test statistics and
    p-values by default, using a chi-squared test or an F test
    depending on whether the dispersion is fixed or free.  Test
    statistics can be suppressed by giving argument test a false
    logical value.
  * In setRepositories() the repositories can be set using their
    names via name = instead of index ind =.
  * methods() and .S3methods() gain a all.names option for the (rare)
    case where functions starting with a . should be included.
  * Serializations can now be interrupted (e.g., by Ctrl-C on a
    Unix-alike) if they take too long, e.g., from save.image(),
    thanks to suggestions by Ivan Krylov and others on R-devel.
  * New startup option --max-connections to set the maximum number of
    simultaneous connections for the session.  Defaults to 128 as
    before: allowed values up to 4096 (but resource limits may in
    practice restrict to smaller values).
  * R on Windows (since Windows 10 2004) now uses the new Segment
    Heap allocator. This may improve performance of some
    memory-intensive applications.
  * When R packages are built, typically by R CMD build &lt;pkg&gt;, the
    new --user=&lt;build_user&gt; option overrides the (internally
    determined) user name, currently Sys.info()["user"] or LOGNAME.
    This is a (modified) fulfillment of Will Landau's suggestion in
    PR#17530.
  * tools::testInstalledBasic() gets new optional arguments outDir
    and testSrcdir, e.g., allowing to use it in a &lt;builddir&gt; !=
    &lt;srcdir&gt; setup, and in standard "binary" Windows installation
  * if* a source tests/ folder is present.
  * range(&lt;DT_with_Inf&gt;, finite = TRUE) now work for objects of class
    "Date", "POSIXct", and "POSIXlt" with infinite entries,
    analogously to range.default(), as proposed by Davis Vaughan on
    R-devel.  Other range()-methods can make use of new function
    .rangeNum().
  * New .internalGenerics object complementing .S3PrimitiveGenerics,
    for documentation and low-level book-keeping.
  * grid() now invisibly returns the x- and y- coordinates at which
    the grid-lines were drawn.
  * norm(., type) now also works for complex matrices.
  * kappa(., exact = TRUE, norm = *) now works for all norms and also
    for complex matrices.  In symmetric / triangular cases, the new
    argument uplo = "U" | "L" allows the upper or lower triangular
    part to be specified.
  * memDecompress(type = "unknown") recognizes compression in the
    default 'zlib' format as used by memCompress(type = "gzip").
  * memCompress() and memDecompress() will use the libdeflate library
    (&lt;https://github.com/ebiggers/libdeflate&gt;) if installed.  This
    uses the same type of compression for type = "gzip" but is 1.5-2x
    faster than the system libz library on some common platforms: the
    speed-up may depend on the library version.
  * diff() for objects of class "Date", "POSIXct", and "POSIXlt"
    accepts a units argument passed via ....
  * Dynamic help now does a much better job of rendering package
    DESCRIPTION metadata.
  * Rprof() gains an event argument and support for elapsed (real)
    time profiling on Unix (PR#18076).
  * filled.contour() gains a key.border argument.
  * tools::update_pkg_po() gets arguments pot_make and mo_make for
    _not_ re-making the corresponding files, and additionally a
    verbose argument.
  * Hexadecimal string colour specifications are now accepted in
    short form, so, for example, we can use "#123", which is
    equivalent to "#112233".
    Thanks to MikeFC for the original idea and Ella Kaye, Malcolm
    Barrett, George Stagg, and Hanne Oberman for the patch.
  * Plain-text help shows \var markup by angle brackets.
  * The new experimental primitive function declare() is intended to
    eventually allow information about R code to be communicated to
    the interpreter, compiler, and code analysis tools. The syntax
    for declarations is still being developed.
  * Functions psmirnov(), qsmirnov() and rsmirnov() in package stats
    have had argument two.sided renamed to alternative, to take into
    account that the permutation distributions of the one-sided
    statistics can be different in the case of ties.  Consequence of
    PR#18582.
  * sort() is now an implicit S4 generic in methods.
  * Formatting and printing, format(z), print(z), of complex vectors
    z no longer zap relatively small real or imaginary parts to zero,
    fixing PR#16752.  This is an API change, as it was documented
    previously to round real and imaginary parts together on purpose,
    producing nicer looking output.  As mentioned, e.g. in the PR,
    this change is compatible with many other "R-like" programming
    environments.
    We have simplified the internal code and now basically format the
    real and imaginary parts independently of each other.
  * New experimental functions Tailcall() and Exec() to support
    writing stack-space-efficient recursive functions.
  * Where characters are attempted to be plotted by pdf(),
    postscript() and xfig() which are not in the selected 8-bit
    character set (most often Latin-1) and the R session is using a
    UTF-8 locale, the warning messages will show the UTF-8 character
    rather than its bytes and one dot will be substituted per
    character rather than per byte.  (Platforms whose iconv() does
    transliteration silently plot the transliteration.)
    In a UTF-8 locale some transliterations are now done with a
    warning (e.g., dashes and Unicode minus to hyphen, ligatures are
    expanded, permille (‰) is replaced by o/oo), although the OS may
    have got there first.  These are warnings as they will continue
    to be replaced by dots in earlier versions of R.
  * The matrix multiplication functions crossprod() and tcrossprod()
    are now also primitive and S3 generic, as %*% had become in R
    4.3.0.
  * source() and example() have a new optional argument catch.aborts
    which allows continued evaluation of the R code after an error.
  * The non-Quartz tiff() devices allow additional types of
    compression if supported by the platform's libtiff library.
  * The list of base and recommended package names is now provided by
    tools::standard_package_names().
  * cairo_pdf() and cairo_ps() default to onefile = TRUE to closer
    match pdf() and postscript().
  * New option catch.script.errors provides a documented way to catch
    errors and then continue in non-interactive use.
  * L %||% R newly in base is an expressive idiom for the phrases
    if(!is.null(L)) L else R or if(is.null(L)) R else L.
  * The return value from warnings() now always inherits from
    "warnings" as documented, now also in the case of no warnings
    where it previously returned NULL.
  * as.complex("1i") now returns 0 + 1i instead of NA with a warning.
  * z &lt;- c(NA, 1i) now keeps the imaginary part Im(z[1]) == 0, no
    longer coercing to NA_complex_.  Similarly, cumsum(z) correctly
    sums real and imaginary parts separately, i.e., without
    "crosstalk" in case of NAs.
  * On Alpine Linux iconv() now maps "latin2", "latin-2", "latin9"
    and "latin-9" to encoding names the OS knows about
    (case-insensitively).
  * iconv(sub = "Unicode") now always zero-pads to four (hex) digits,
    rather than to 4 or 8.  (This seems to have become the convention
    once Unicode restricted the number of Unicode points to 2^21 - 1
    and so will never need more than 6 digits.)
  * NCOL(NULL) now returns 0 instead of 1, for consistency with
    cbind().
  * The information for the Euro glyph missing from the Adobe .afm
    files for the Courier, Helvetica and Times families has been
    copied from their URW equivalents - this will improve vertical
    centring in the pdf() and postscript() devices.
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.12.0.  The changes are almost entirely cosmetic.
  * The included LAPACK sources have been updated to version 3.12.0
    and some further double-complex routines added.
  * There are new font families for the 2014--5 URW 2.0 fonts (see
    ?pdf) which are included in recent versions of Ghostscript.
    These have font widths for most Greek glyphs and a few others
    which were missing from the original versions (whose font
    families remain available for reproducibility, although
    Ghostscript-based viewers will render using the 2.0 versions).
  * Improve the large-n efficiency of as.matrix(&lt;dist&gt;), thanks an R
    contributors effort, notably by Tim Taylor and Heather Turner,
    see PR#18660.
  * The default and numeric methods of all.equal() get a check.class
    option.
  * zapsmall() gets new optional arguments, function mFUN and min.d,
    for extra flexibility; fulfills a wish in PR#18199.  Also, it is
    now an implicit S4 generic in package methods.
  * The Rd filter for aspell() gains an ignore argument.
  * New generic function sort_by(), primarily useful for the
    data.frame method which can be used to sort rows of a data frame
    by one or more columns.
  * The icence headers for the RPC code in src/extra/xdr have been
    updated to use the GPL-compatible licence published by Oracle
    America in 2010.
  * New function pkg2HTML() in tools to create single-page HTML
    reference manuals for R packages.
  * The byte code evaluator now uses less C stack space for recursive
    calls to byte-compiled functions. It also makes more of an effort
    to avoid allocations for scalar return values.
  * New completion option backtick (disabled by default) allows
    non-syntactic completions to be wrapped in backquotes. This is
    currently only useful for Jupyter notebooks via the IRkernel
    package, and may cause problems for other backends.
  INSTALLATION:
  * The parser has been updated to work with bison 3.8.2, which is
    now used for the pre-generated parsers in gram.c, file.c, and
    gramRd.c. A few parser error messages have changed, which may
    affect code that relies on exact messages.
  INSTALLATION on a UNIX-ALIKE:
  * System valgrind headers are now required to use configure option
  - -with-valgrind-instrumentation with value 1 or 2.
  * configure will warn if it encounters a 32-bit build, as that is
    nowadays almost untested.
  * Environment variable R_SYSTEM_ABI is no longer used and so no
    longer recorded in etc/Renviron (it was not on Windows and was
    only ever used when preparing package tools).
  * If the libdeflate library and headers are available, libdeflate
    rather than libz is used to (de)compress R objects in lazy-load
    databases.  Typically tasks spend up to 5% of their time on such
    operations, although creating lazy-data databases is one of the
    exceptions.
    This can be suppressed if the library is available by the
    configure option --without-libdeflate-compression.
  * configure option --enable-lto=check has not worked reliably since
    2019 and has been removed.
  * The minimum autoconf requirement for a maintainer build has been
    increased to autoconf 2.71.
    It is intended to increase this to 2.72 for R 4.5.0: the
    distributed configure file was generated using 2.72.
  * The minimum version requirement for an external LAPACK has been
    reduced to 3.9.0.
  * No default C++ compiler is set if no C++17 compiler is detected:
    there is no longer an automatic fallback to C++14 or C++11.
    Compilers from the last five years should have sufficient
    support: for others macros CXX and CXXSTD can be set in file
    config.site to provide a fallback if needed.
    The Objective-C++ compiler now by default uses the standard
    selected by R for C++ (currently C++17) rather than the default
    standard for the C++ compiler (which on macOS is still C++98).
  INSTALLATION on macOS:
  * A new configure option --with-newAccelerate makes use of Apple's
    'new' BLAS / LAPACK interfaces in their Accelerate framework.
    Those interfaces are only available in macOS 13.3 or later, and
    building requires SDK 13.3 or later (from the Command Line Tools
    or Xcode 14.3 or later).
    By default the option uses new Accelerate for BLAS calls: to also
    use it for LAPACK use option --with-newAccelerate=lapack.  The
    later interfaces provide LAPACK 3.9.1 rather than 3.2.1: 3.9.1 is
    from 2021-04 and does not include the improved algorithms
    introduced in LAPACK 3.10.0 (including for BLAS calls).
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools44, an update of the Rtools43 toolchain.  It is
    based on GCC 13 and newer versions of MinGW-W64, binutils and
    libraries (targeting 64-bit Intel CPUs).  R-devel can no longer
    be built using Rtools43 without changes.
  * Rtools44 has experimental support for 64-bit ARM (aarch64) CPUs
    _via_ the LLVM 17 toolchain using lld, clang/flang-new and
    libc++.
  UTILITIES:
  * R CMD check notes when S4-style exports are used without
    declaring a strong dependence on package methods.
  * tools::checkRd() (used by R CMD check) detects more problems with
    \Sexpr-based dynamic content, including bad nesting of \Sexprs
    and invalid arguments.
  * tools::checkRd() now reports Rd titles and section names ending
    in a period; this is ignored by R CMD check unless environment
    variable _R_CHECK_RD_CHECKRD_MINLEVEL_ is set to -5 or smaller.
  * R CMD check now notes Rd files without an \alias, as long
    documented in 'Writing R Extensions' §1.3.1.  The check for a
    missing \description has been moved from tools::checkRd() to
    tools::checkRdContents().
  * R CMD check now visits inst/NEWS.Rd and OS-specific man
    subdirectories when checking Rd files.
  * tools::checkDocFiles() and tools::checkRdContents() now also
    check internal Rd files by default, but "specially" (ignoring
    missing documentation of arguments).
  * R CMD Rdiff gets option --useEx.
  * R CMD check now warns on non-portable uses of Fortran KIND such
    as INTEGER(KIND=4) and REAL(KIND=8).
    To see the failing lines set environment variable
    _R_CHECK_FORTRAN_KIND_DETAILS_ to a true value.
  * When checking Rd files, R CMD check now notes some of the "lost
    braces" that tools::checkRd() finds.  Typical problems are Rd
    macros missing the initial backslash (e.g., code{...}), in-text
    set notation (e.g., {1, 2}, where the braces need escaping), and
    \itemize lists with \describe-style entries of the form
    \item{label}{description}.
  * R CMD INSTALL (and hence check) will compile C++ code with
  - DR_NO_REMAP if environment variable _R_CXX_USE_NO_REMAP_ is set
    to a true value.  It is planned that this will in future become
    the default for compiling C++.
  * The new built-in Rd macro \dontdiff{} can be used to mark example
    code whose output should be ignored when comparing check output
    to reference output (tests/Examples/&lt;pkg&gt;-Ex.Rout.save).  The
    \dontdiff tag, like \donttest, is _not_ shown on the rendered
    help page, so provides a clean alternative to ##
    IGNORE_RDIFF_(BEGIN|END) comments.
  * R CMD build when there is no NAMESPACE, now uses the recommended
    exportPattern("^[^.]"), instead of exporting everything.
  * R CMD check now warns about non-ASCII characters in the NAMESPACE
    file (in addition to R files). Such packages are not portable and
    may fail to install on some platforms.
  C-LEVEL FACILITIES:
  * Headers R_ext/Applic.h and R-ext/Linpack.h used to include
    R_ext/BLAS.h although this was undocumented and unneeded by their
    documented entry points.  They no longer do so.
  * New function R_missing(), factored out from do_missing(), used to
    fix PR#18579.
  * SEXP type S4SXP has been renamed to OBJSXP to support
    experimenting with alternative object systems.  The S4SXP value
    can still be used in C code but is now deprecated.  Based on
    contributions from the R Consortium's Object-Oriented Programming
    Working Group.
  * New function pow1p(x,y) for accurate (1+x)^y.
  * mkCharLenCE was incorrectly documented to take a size_t length
    but was implemented with int (and character strings in R are
    limited to 2^31 - 1 bytes).
  DEPRECATED AND DEFUNCT:
  * data() no longer handles zipped data from long-defunct (since R
    2.13.0) --use-zip-data installations.
  * The legacy graphics devices pictex() and xfig() are now
    deprecated.  They do not support recent graphics enhancements and
    their font handling is rudimentary. The intention is to retain
    them for historical interest as long as they remain somewhat
    functional.
  * Support for encoding = "MacRoman" has been removed from the pdf()
    and postscript() devices - this was a legacy encoding supporting
    classic macOS up to 2001 and no longer has universal libiconv
    support.
  * is.R() is deprecated as no other S dialect is known to be in use
    (and this could only identify historical dialects, not future
    ones).
    Further information on calls can be obtained by setting the
    environment variable _R_DEPRECATED_IS_R_ to error which turns the
    deprecation warning into an error and so by default gives a
    traceback.  (This is done by R CMD check --as-cran.)
  * UseMethod() no longer forwards local variables assigned in the
    generic function into method call environments before evaluating
    the method body. This makes method calls behave more like
    standard function calls and makes method code easier to analyze
    correctly.
  * The twelve as.data.frame.&lt;class&gt;() methods which were deprecated
    only via _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ and in R CMD
    check --as-cran are formally deprecated now in favour of calling
    as.data.frame() or as.data.frame.vector().  The deprecation
    "check" now works also when as.data.frame() is S4 generic thanks
    to Ivan Krylov.
  * The default method for the directional comparison operators &lt;, &gt;,
    &lt;=, and &gt;= now signals an error when one of the operands is a
    language object, i.e. a symbol or a call.
  * For terms.formula(), deprecate abb and neg.out arguments
    _formally_ in addition to just documenting it.
  BUG FIXES:
  * The methods package is more robust to not being attached to the
    search path.  More work needs to be done.
  * pairwise.t.test() misbehaved when subgroups had 0 DF for
    variance, even with pool.sd = TRUE.  (PR#18594 by Jack Berry).
  * Probability distribution functions [dpq]&lt;distrib&gt;(x, *), but also
    bessel[IKJY](x, .) now consistently preserve attributes(x) when
    length(x) == 0, e.g., for a 2 x 0 matrix, thanks to Karolis
    Koncevičius' report PR#18509.
  * Group "Summary" computations such as sum(1:3, 4, na.rm = 5, NA,
    7, na.rm = LL) now give an error instead of either 17 or NN for
    LL true or false, as proposed by Ivan Krylov on the R-devel
    mailing list.  (This also means it is now an error to specify
    na.rm more than once.)
  * as.complex(x) now returns complex(real = x, imaginary = 0) for
    _all_ numerical and logical x, notably also for NA or
    NA_integer_.
  * Directories are now omitted by file.copy(, recursive = FALSE) and
    in file.append() (PR#17337).
  * gsub() and sub() are now more robust to integer overflow when
    reporting errors caused by too large input strings (PR#18346).
  * Top-level handlers are now more robust to attempts to remove a
    handler whilst handlers are running (PR#18508).
  * The handling of Alt+F4 in dialogs created on Windows using
    GraphApp has been fixed (PR#13870).
  * density() more consistently computes grid values for the
    FFT-based convolution, following Robert Schlicht's analysis and
    proposal in PR#18337, correcting density values typically by a
    factor of about 0.999.  Argument old.coords = TRUE provides back
    compatibility.
  * palette.colors() gains a name argument that defaults to FALSE
    controlling whether the vector of colours that is returned has
    names (where possible).  PR#18529.
  * tools::xgettext() no longer extracts the (non-translatable) class
    names from warningCondition and errorCondition calls.
  * S3method(&lt;gen&gt;, &lt;class&gt;, &lt;func&gt;) in the NAMESPACE file now works
    (again) when &lt;func&gt; is visible from the namespace, e.g.,
    imported, or in base.
  * getParseData(f) now also works for a function defined in the
    first of several &lt;pkg&gt;/R/*.R source files, thanks to Kirill
    Müller's report and Duncan Murdoch's patch in PR#16756.
  * Rd \Sexpr macros with nested #ifdef conditionals were not
    processed.
  * A non-blocking connection with non-default encoding (such as a
    socket) now correctly returns from readLines() after new data has
    arrived also when its EOF had been reached previously.  Thanks to
    Peter Meilstrup's report on R-devel and Ivan Krylov's report and
    patch proposal in PR#18555.
  * tools::checkRdContents() failed to detect empty argument
    descriptions when they spanned multiple lines, including those
    generated by prompt().  These cases are now noted by R CMD check.
  * Plain-text help no longer outputs spurious colons in the
    arguments list (for multi-line \item labels in the Rd source).
  * kappa() and rcond() work correctly in more cases; kappa(., norm =
    "2") now warns that it computes the 1-norm with (default) exact =
    FALSE; prompted by Mikael Jagan's quite comprehensive PR#18543.
  * Rd skeletons generated by prompt() or promptData() now use a
    dummy title (so R CMD build works).  tools::checkRdContents() has
    been updated to detect such template leftovers, including from
    promptPackage().
  * When S4 method dispatch fails because no method was found, the
    error message now includes the signature argument names; thanks
    to Michael Chirico's proposal on the R-devel list.
  * withAutoprint({ .. }) now preserves srcrefs previously lost,
    thanks to Andrew Simmons' report plus fix in PR#18572.
  * transform.data.frame() no longer adjusts names; in particular,
    untransformed variables are kept as-is, including those with
    syntactically invalid names (PR#17890).
  * The keep.source option for Rd \Sexpr blocks is no longer ignored.
  * The formula methods for t.test() and wilcox.test() now catch when
    paired is passed, addressing PR#14359; use Pair(x1, x2) ~ 1 for a
    paired test.
  * The level reported in the browser prompt was often too large. It
    now shows the number of browser contexts on the stack.
  * For cbind() and rbind(), the optional deparse.level argument is
    now properly passed to methods, thanks to Mikael Jagan's PR#18579
    and comments there.
  * Some error and warning messages for large ('long vector')
    matrix(v, nr, nc) and dim(m) &lt;- d are now correct about sizes,
    using long long formatting, fixing PR#18612 (and more) reported
    by Mikael Jagan.
  * readChar(useBytes = TRUE) now terminates strings even when the
    underlying connection uses extra spaces in the input buffer.
    This fixes problems with extra garbage seen with gzip
    connections, PR#18605.
  * Named capture in PCRE regular expressions now works also with
    more than 127 named groups (PR#18588).
  * Datetime functions are now robust against long jumps when dealing
    with internal time zone changes.  This avoids confusing warnings
    about an invalid time zone, previously triggered by turning
    warnings into errors or handling them via tryCatch (PR#17966,
    PR#17780).
  * Datetime functions now restore even an empty TZ environment
    variable after internal time zone changes (PR#17724).  This makes
    results of datetime functions with this (typically unintentional)
    setting more predictable.
  * drop.terms(*) now drops response as by default, keep.response =
    FALSE, fixing PR#18564 thanks to Mikael Jagan.
  * dummy.coef(.) now also works for lm()-models with character
    categorical predictor variables rather than factor ones, fixing
    PR#18635 reported by Jinsong Zhao.
  * formals(f) &lt;- formals(f) now also works for a function w/o
    arguments and atomic _constant_ body(f).
  * Correct as.function(&lt;invalid list&gt;, .)'s error message.
  * removeSource() is yet more thorough in finding and removing
    "srcref" and the other source references from parsed R language
    chunks, fixing PR#18638 thanks to Andrew Simmons.
  * dgeom() is more accurate now, notably when its result is very
    small, fixing PR#18642 thanks to the proposal of Morten Welinder,
    also improving other instances where C level binom_raw(x, n, ..)
    has x == 0 or x== n.
  * warning() with options(warn = 1) has improved output for
    multi-line messages.
  * axis.Date() and axis.POSIXct() now respect the par("lab") setting
    for the number of pretty() intervals.
  * Comparisons for language objects (which are based on deparsing)
    are now more careful about using accurate deparsed results
    (PR#18676).
  * Plain-text help (Rd2txt) now correctly preserves blank lines
    following single-line \dontrun code.
  * &lt;POSIXlt&gt;[*] no longer sets wrong "balanced" attribute, fixing
    PR#18681 thanks to Mikael Jagan.
  * str(&lt;classed-call&gt;) now deparses the call as expected, fixing
    PR#18684, reported by Dave Slager.
  * In Rd examples, code following the closing brace of a \dontrun,
    \dontshow or \donttest tag on the same line is no longer skipped
    when R CMD check runs the examples.
  * as.data.frame(matrix(*, ncol=0)) now gets valid names() and
    colnames(); reported by Davis Vaughan on the R-devel list.
  * Internal Mathlib function stirlerr(n) is now almost fully
    (52-bit) accurate for all n &gt;= ~5.9 and more accurate also in the
    range 1 -- 5.9.  This entails small ("after 12th decimal")
    changes in density functions, e.g., dgamma() in _some_ regions of
    their support.  The fix was partly prompted by Morten Welinder's
    PR#18640.
  * Numbers like 9876543.2 are now considered non-integer by Mathlib
    internal R_nonint(), amending original fix of PR#15734.
  * Rd comment lines no longer cause broken paragraphs in the
    rendered PDF and plain-text help. In code blocks, pure comment
    lines (starting with %) no longer produce an empty line.
  * xtabs(Freq ~ .) now consistently defaults to na.action = na.pass,
    using na.rm = FALSE (added as an argument) when summing over Freq
    (PR#17770).
  * tools::testInstalledPackage() is no longer silent about failures
    from running examples or tests and its return code no longer
    ignores failures from checking vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1718366400">- CHANGES IN R 4.4.1:
  C-LEVEL FACILITIES:
  * Functions R_atof and R_strtod declared in header R_ext/Utils.h
    are now documented in 'Writing R Extensions' and so formally part
    of the API.
  * The non-API entry points Rf_setSVector, Rf_StringFalse,
    Rf_StringTrue and Rf_isBlankString have been added to those
    reported by R CMD check.
  * The new function Rf_allocLang is now available. This provides an
    alternative to the idiom of calling Rf_allocList followed by
    SET_TYPEOF.
  UTILITIES:
  * R CMD check now reports as warnings what gfortran calls 'Fortran
    2018 deleted features', all of which have long been marked as
    'obsolescent' and some of which were deleted in Fortran 2008 or
    earlier.  Fortran compilers are no longer required to support
    these.
  BUG FIXES:
  * as.numeric(), scan(), type.convert() and other places which use
    the internal C function R_strtod now require a _non-empty_ digit
    sequence in a decimal or binary exponent.  This aligns with the
    C/POSIX standard for strtod and with ?NumericConstants.
  * as.data.frame(m, make.names=NA) now works correctly for a matrix
    m with NA's in row names.
  * The error message from &lt;POSIXlt&gt;[["hour"]] and similar now
    mentions *[[, "hour"]], as wished for in PR#17409 and proposed by
    Michael Chirico.
  * qbinom() and potentially qpois(), qnbinom(), no longer sometimes
    fail accurate inversion (of pbinom(), etc), thanks to Christopher
    Chang's report and patch in PR#18711.
  * The internal help server on Windows can again serve requests sent
    in quick succession, fixing a regression in R 4.4.0.
  * debugcall(&lt;S3Generic&gt;()) now also works when a corresponding
    S4-generic version is in the methods cache (PR#18143).
  * Package tools' toTitleCase(ch0) now returns character(0) when ch0
    is of zero length; fixing PR#18724, reported by David Hugh Jones.
  * R CMD check is no longer broken (without a check result and no
    explanation in 00check.log) for a package which declares an
    invalid VignetteBuilder in DESCRIPTION but has no vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1730376000">- CHANGES IN R 4.4.2:
  C-LEVEL FACILITIES:
  * The S-compatibility macros F77_COM and F77_COMDECL defined in
    header R_ext/RS.h are deprecated and will be removed shortly.  We
    could find no record of their use.
  BUG FIXES:
  * Mathlib function lgammacor(x) no longer warns about underflow to
    zero for large x.
  * Text widths and heights were incorrectly reported by the Quartz
    device if the drawing context didn't exist yet (typically when
    drawing off-screen to a window that is yet to appear, see
    PR#18591).
  * The Quartz device could segfault in cases where paths with spaces
    are used in the new glyph drawing API.  Thanks to Tomek
    Gieorgijewski (PR#18758).
  * On macOS in R CRAN builds, it is again possible to read
    little-endian UTF-16 text with a BOM from a connection using
    encoding="UTF-16".  Users building R from source should avoid
    using the system libiconv in macOS 14.1 and later.
  * methods' internal .requirePackage() now re-enables primitive
    method dispatch when needed; thanks to Ivan Krylov for
    demystifying CRAN package check failures on the R-devel mailing
    list.</changelog>
</package>
<package pkgid="89290103014beac7ae2b4905a5ba0bb305c2fbcb9b61388100761caba698f801a6b375ca443e2b35f752d34ee064739ab7c3ac0a97b707a9edca8359b60501c9" name="R-tools" arch="i586">
  <version epoch="0" ver="4.4.2" rel="51.0.2.2.sr20241103"/>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1620302400">- To get in sync with d:l:R:autoCRAN the Matrix package's split
  in -devel was reversed.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339200">- improved spec file according to comments of dimstar in
  https://build.opensuse.org/request/show/892685</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339201">- CHANGES IN R 4.1.0:
  FUTURE DIRECTIONS:
  * It is planned that the 4.1.x series will be the last to support
    32-bit Windows, with production of binary packages for that
    series continuing until early 2023.
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Data set esoph in package datasets now provides the correct
    numbers of controls; previously it had the numbers of cases added
    to these.  (Reported by Alexander Fowler in PR#17964.)
  NEW FEATURES:
  * www.omegahat.net is no longer one of the repositories known by
    default to setRepositories().  (Nowadays it only provides source
    packages and is often unavailable.)
  * Function package_dependencies() (in package tools) can now use
    different dependency types for direct and recursive dependencies.
  * The checking of the size of tarball in R CMD check --as-cran
    &lt;pkg&gt; may be tweaked via the new environment variable
    _R_CHECK_CRAN_INCOMING_TARBALL_THRESHOLD_, as suggested in
    PR#17777 by Jan Gorecki.
  * Using c() to combine a factor with other factors now gives a
    factor, an ordered factor when combining ordered factors with
    identical levels.
  * apply() gains a simplify argument to allow disabling of
    simplification of results.
  * The format() method for class "ftable" gets a new option justify.
    (Suggested by Thomas Soeiro.)
  * New ...names() utility.  (Proposed by Neal Fultz in PR#17705.)
  * type.convert() now warns when its as.is argument is not
    specified, as the help file always said it _should_.  In that
    case, the default is changed to TRUE in line with its change in
    read.table() (related to stringsAsFactor) in R 4.0.0.
  * When printing list arrays, classed objects are now shown _via_
    their format() value if this is a short enough character string,
    or by giving the first elements of their class vector and their
    length.
  * capabilities() gets new entry "Rprof" which is TRUE when R has
    been configured with the equivalent of --enable-R-profiling (as
    it is by default).  (Related to Michael Orlitzky's report
    PR#17836.)
  * str(xS4) now also shows extraneous attributes of an S4 object
    xS4.
  * Rudimentary support for vi-style tags in rtags() and R CMD rtags
    has been added.  (Based on a patch from Neal Fultz in PR#17214.)
  * checkRdContents() is now exported from tools; it and also
    checkDocFiles() have a new option chkInternal allowing to check
    Rd files marked with keyword "internal" as well.  The latter can
    be activated for R CMD check via environment variable
    _R_CHECK_RD_INTERNAL_TOO_.
  * New functions numToBits() and numToInts() extend the raw
    conversion utilities to (double precision) numeric.
  * Functions URLencode() and URLdecode() in package utils now work
    on vectors of URIs.  (Based on patch from Bob Rudis submitted
    with PR#17873.)
  * path.expand() can expand ~user on most Unix-alikes even when
    readline is not in use.  It tries harder to expand ~, for example
    should environment variable HOME be unset.
  * For HTML help (both dynamic and static), Rd file links to help
    pages in external packages are now treated as references to
    topics rather than file names, and fall back to a file link only
    if the topic is not found in the target package. The earlier rule
    which prioritized file names over topics can be restored by
    setting the environment variable _R_HELP_LINKS_TO_TOPICS_ to a
    false value.
  * c() now removes NULL arguments before dispatching to methods,
    thus simplifying the implementation of c() methods, _but_ for
    back compatibility keeps NULL when it is the first argument.
    (From a report and patch proposal by Lionel Henry in PR#17900.)
  * Vectorize()'s result function's environment no longer keeps
    unneeded objects.
  * Function ...elt() now propagates visibility consistently with
    ..n.  (Thanks to Lionel Henry's PR#17905.)
  * capture.output() no longer uses non-standard evaluation to
    evaluate its arguments.  This makes evaluation of functions like
    parent.frame() more consistent.  (Thanks to Lionel Henry's
    PR#17907.)
  * packBits(bits, type="double") now works as inverse of
    numToBits().  (Thanks to Bill Dunlap's proposal in PR#17914.)
  * curlGetHeaders() has two new arguments, timeout to specify the
    timeout for that call (overriding getOption("timeout")) and TLS
    to specify the minimum TLS protocol version to be used for
    https:// URIs (_inter alia_ providing a means to check for sites
    using deprecated TLS versions 1.0 and 1.1).
  * For nls(), an optional constant scaleOffset may be added to the
    denominator of the relative offset convergence test for cases
    where the fit of a model is expected to be exact, thanks to a
    proposal by John Nash.  nls(*, trace=TRUE) now also shows the
    convergence criterion.
  * Numeric differentiation _via_ numericDeriv() gets new optional
    arguments eps and central, the latter for taking central divided
    differences.  The latter can be activated for nls() via
    nls.control(nDcentral = TRUE).
  * nls() now passes the trace and control arguments to getInitial(),
    notably for all self-starting models, so these can also be fit in
    zero-noise situations via a scaleOffset.  For this reason, the
    initial function of a selfStart model must now have ... in its
    argument list.
  * bquote(splice = TRUE) can now splice expression vectors with
    attributes: this makes it possible to splice the result of
    parse(keep.source = TRUE).  (Report and patch provided by Lionel
    Henry in PR#17869.)
  * textConnection() gets an optional name argument.
  * get(), exists(), and get0() now signal an error if the first
    argument has length greater than 1.  Previously additional
    elements were silently ignored.  (Suggested by Antoine Fabri on
    R-devel.)
  * R now provides a shorthand notation for creating functions, e.g.
    \(x) x + 1 is parsed as function(x) x + 1.
  * R now provides a simple native forward pipe syntax |&gt;.  The
    simple form of the forward pipe inserts the left-hand side as the
    first argument in the right-hand side call.  The pipe
    implementation as a syntax transformation was motivated by
    suggestions from Jim Hester and Lionel Henry.
  * all.equal(f, g) for functions now by default also compares their
    environment(.)s, notably via new all.equal method for class
    function.  Comparison of nls() fits, e.g., may now need
    all.equal(m1, m2, check.environment = FALSE).
  * .libPaths() gets a new option include.site, allowing to _not_
    include the site library.  (Thanks to Dario Strbenac's suggestion
    and Gabe Becker's PR#18016.)
  * Lithuanian translations are now available.  (Thanks to Rimantas
    Zakauskas.)
  * names() now works for DOTSXP objects.  On the other hand, in
    R-lang, the R language manual, we now warn against relying on the
    structure or even existence of such dot-dot-dot objects.
  * all.equal() no longer gives an error on DOTSXP objects.
  * capabilities("cairo") now applies only to the file-based devices
    as it is now possible (if very unusual) to build R with Cairo
    support for those but not for X11().
  * There is optional support for tracing the progress of
    loadNamespace() - see its help.
  * (Not Windows.)  l10n_info() reports an additional element, the
    name of the encoding as reported by the OS (which may differ from
    the encoding part (if any) of the result from
    Sys.getlocale("LC_CTYPE").
  * New function gregexec() which generalizes regexec() to find _all_
    disjoint matches and well as all substrings corresponding to
    parenthesized subexpressions of the given regular expression.
    (Contributed by Brodie Gaslam.)
  * New function charClass() in package utils to query the
    wide-character classification functions in use (such as
    iswprint).
  * The names of quantile()'s result no longer depend on the global
    getOption("digits"), but quantile() gets a new optional argument
    digits = 7 instead.
  * grep(), sub(), regexp and variants work considerably faster for
    long factors with few levels.  (Thanks to Michael Chirico's
    PR#18063.)
  * Provide grouping of x11() graphics windows within a window
    manager such as Gnome or Unity; thanks to a patch by Ivan Krylov
    posted to R-devel.
  * The split() method for class data.frame now allows the f argument
    to be specified as a formula.
  * sprintf now warns on arguments unused by the format string.
  * New palettes "Rocket" and "Mako" for hcl.colors() (approximating
    palettes of the same name from the 'viridisLite' package).
    Contributed by Achim Zeileis.
  * The base environment and its namespace are now locked (so one can
    no longer add bindings to these or remove from these).
  * Rterm handling of multi-byte characters has been improved,
    allowing use of such characters when supported by the current
    locale.
  * Rterm now accepts ALT+ +xxxxxxxx sequences to enter Unicode
    characters as hex digits.
  * Environment variable LC_ALL on Windows now takes precedence over
    LC_CTYPE and variables for other supported categories, matching
    the POSIX behaviour.
  * duplicated() and anyDuplicated() are now optimized for integer
    and real vectors that are known to be sorted via the ALTREP
    framework. Contributed by Gabriel Becker via PR#17993.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 14
    and so packages that provide graphics devices should be
    reinstalled.
  * Graphics devices should now specify deviceVersion to indicate
    what version of the graphics engine they support.
  * Graphics devices can now specify deviceClip.  If TRUE, the
    graphics engine will never perform any clipping of output itself.
    The clipping that the graphics engine does perform (for both
    canClip = TRUE and canClip = FALSE) has been improved to avoid
    producing unnecessary artifacts in clipped output.
  * The grid package now allows gpar(fill) to be a linearGradient(),
    a radialGradient(), or a pattern().  The viewport(clip) can now
    also be a grob, which defines a clipping path, and there is a new
    viewport(mask) that can also be a grob, which defines a mask.
    These new features are only supported so far on the Cairo-based
    graphics devices and on the pdf() device.
  * (Not Windows.)  A warning is given when a Cairo-based type is
    specified for a png(), jpeg(), tiff() or bmp() device but Cairo
    is unsupported (so type = "Xlib" is tried instead).
  * grSoftVersion() now reports the versions of FreeType and
    FontConfig if they are used directly (not _via_ Pango), as is
    most commonly done on macOS.
  C-LEVEL FACILITIES:
  * The _standalone_ libRmath math library and R's C API now provide
    log1pexp() again as documented, and gain log1mexp().
  INSTALLATION on a UNIX-ALIKE:
  * configure checks for a program pkgconf if program pkg-config is
    not found.  These are now only looked for on the path (like
    almost all other programs) so if needed specify a full path to
    the command in PKG_CONFIG, for example in file config.site.
  * C99 function iswblank is required - it was last seen missing ca
    2003 so the workaround has been removed.
  * There are new configure options --with-internal-iswxxxxx,
  - -with-internal-towlower and --with-internal-wcwidth which allows
    the system functions for wide-character classification,
    case-switching and width (wcwidth and wcswidth) to be replaced by
    internal ones.  The first has long been used on macOS, AIX (and
    Windows) but this enables it to be unselected there and selected
    for other platforms (it is the new default on Solaris).  The
    second is new in this version of R and is selected by default on
    macOS and Solaris.  The third has long been the default and
    remains so as it contains customizations for East Asian
    languages.
    System versions of these functions are often minimally
    implemented (sometimes only for ASCII characters) and may not
    cover the full range of Unicode points: for example Solaris (and
    Windows) only cover the Basic Multilingual Plane.
  * Cairo installations without X11 are more likely to be detected by
    configure, when the file-based Cairo graphics devices will be
    available but not X11(type = "cairo").
  * There is a new configure option --with-static-cairo which is the
    default on macOS.  This should be used when only static cairo
    (and where relevant, Pango) libraries are available.
  * Cairo-based graphics devices on platforms without Pango but with
    FreeType/FontConfig will make use of the latter for font
    selection.
  LINK-TIME OPTIMIZATION on a UNIX-ALIKE:
  * Configuring with flag --enable-lto=R now also uses LTO when
    installing the recommended packages.
  * R CMD INSTALL and R CMD SHLIB have a new flag --use-LTO to use
    LTO when compiling code, for use with R configured with
  - -enable-lto=R.  For R configured with --enable-lto, they have
    the new flag --no-use-LTO.
    Packages can opt in or out of LTO compilation _via_ a UseLTO
    field in the DESCRIPTION file.  (As usual this can be overridden
    by the command-line flags.)
  BUILDING R on Windows:
  * for GCC &gt;= 8, FC_LEN_T is defined in config.h and hence character
    lengths are passed from C to Fortran in _inter alia_ BLAS and
    LAPACK calls.
  * There is a new text file src/gnuwin32/README.compilation, which
    outlines how C/Fortran code compilation is organized and
    documents new features:
  * R can be built with Link-Time Optimization with a suitable
    compiler - doing so with GCC 9.2 showed several
    inconsistencies which have been corrected.
  * There is support for cross-compiling the C and Fortran code
    in R and standard packages on suitable (Linux) platforms.
    This is mainly intended to allow developers to test later
    versions of compilers - for example using GCC 9.2 or 10.x has
    detected issues that GCC 8.3 in Rtools40 does not.
  * There is experimental support for cross-building R packages
    with C, C++ and/or Fortran code.
  * The R installer can now be optionally built to support a single
    architecture (only 64-bit or only 32-bit).
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++14 where
    available (which it is on all currently checked platforms): if
    not (as before) C++11 is used if available otherwise C++ is not
    supported.
    Packages which specify C++11 will still be installed using C++11.
    C++14 compilers may give deprecation warnings, most often for
    std::random_shuffle (deprecated in C++14 and removed in C++17).
    Either specify C++11 (see 'Writing R Extensions') or modernize
    the code and if needed specify C++14.  The latter has been
    supported since R 3.4.0 so the package's DESCRIPTION would need
    to include something like
    Depends: R (&gt;= 3.4)
  PACKAGE INSTALLATION on Windows:
  * R CMD INSTALL and R CMD SHLIB make use of their flag --use-LTO
    when the LTO_OPT make macro is set in file etc/${R_ARCH}/Makeconf
    or in a personal/site Makevars file.  (For details see 'Writing R
    Extensions' SS4.5.)
    This provides a valuable check on code consistency.  It does work
    with GCC 8.3 as in Rtools40, but that does not detect everything
    the CRAN checks with current GCC do.
  PACKAGE INSTALLATION on macOS:
  * The default personal library directory on builds with
  - -enable-aqua (including CRAN builds) now differs by CPU type,
    one of
    ~/Library/R/x86_64/x.y/library
    ~/Library/R/arm64/x.y/library
    This uses the CPU type R (and hence the packages) were built for,
    so when a x86_64 build of R is run under Rosetta emulation on an
    arm64 Mac, the first is used.
  UTILITIES:
  * R CMD check can now scan package functions for bogus return
    statements, which were possibly intended as return() calls (wish
    of PR#17180, patch by Sebastian Meyer). This check can be
    activated via the new environment variable
    _R_CHECK_BOGUS_RETURN_, true for --as-cran.
  * R CMD build omits tarballs and binaries of previous builds from
    the top-level package directory.  (PR#17828, patch by Sebastian
    Meyer.)
  * R CMD check now runs sanity checks on the use of LazyData, for
    example that a data directory is present and that
    LazyDataCompression is not specified without LazyData and has a
    documented value.  For packages with large LazyData databases
    without specifying LazyDataCompression, there is a reference to
    the code given in 'Writing R Extensions' SS1.1.6 to test the
    choice of compression (as in all the CRAN packages tested a
    non-default method was preferred).
  * R CMD build removes LazyData and LazyDataCompression fields from
    the DESCRIPTION file of packages without a data directory.
  ENCODING-RELATED CHANGES:
  * The parser now treats \Unnnnnnnn escapes larger than the upper
    limit for Unicode points (\U10FFFF) as an error as they cannot be
    represented by valid UTF-8.
    Where such escapes are used for outputting non-printable
    (including unassigned) characters, 6 hex digits are used (rather
    than 8 with leading zeros).  For clarity, braces are used, for
    example \U{0effff}.
  * The parser now looks for non-ASCII spaces on Solaris (as
    previously on most other OSes).
  * There are warnings (including from the parser) on the use of
    unpaired surrogate Unicode points such as \uD834.  (These cannot
    be converted to valid UTF-8.)
  * Functions nchar(), tolower(), toupper() and chartr() and those
    using regular expressions have more support for inputs with a
    marked Latin-1 encoding.
  * The character-classification functions used (by default) to
    replace the system iswxxxxx functions on Windows, macOS and AIX
    have been updated to Unicode 13.0.0.
    The character-width tables have been updated to include new
    assignments in Unicode 13.0.0.
  * The code for evaluating default (extended) regular expressions
    now uses the same character-classification functions as the rest
    of R (previously they differed on Windows, macOS and AIX).
  * There is a build-time option to replace the system's
    wide-character wctrans C function by tables shipped with R: use
    configure option --with-internal-towlower or (on Windows)
  - DUSE_RI18N_CASE in CFLAGS when building R.  This may be needed
    to allow tolower() and toupper() to work with Unicode characters
    beyond the Basic Multilingual Plane where not supported by system
    functions (e.g. on Solaris where it is the new default).
  * R is more careful when truncating UTF-8 and other multi-byte
    strings that are too long to be printed, passed to the system or
    libraries or placed into an internal buffer.  Truncation will no
    longer produce incomplete multibyte characters.
  DEPRECATED AND DEFUNCT:
  * Function plclust() from the package stats and
    package.dependencies(), pkgDepends(), getDepList(),
    installFoundDepends(), and vignetteDepends() from package tools
    are defunct.
  * Defunct functions checkNEWS() and readNEWS() from package tools
    and CRAN.packages() from utils have been removed.
  * R CMD config CXXCPP is defunct (it was deprecated in R 3.6.2).
  * parallel::detectCores() drops support for Irix (retired in 2013).
  * The LINPACK argument to chol.default(), chol2inv(),
    solve.default() and svd() has been defunct since R 3.1.0.  It was
    silently ignored up to R 4.0.3 but now gives an error.
  * Subsetting/indexing, such as ddd[*] or ddd$x on a DOTSXP
    (dot-dot-dot) object ddd has been disabled; it worked by accident
    only and was undocumented.
  BUG FIXES:
  * Many more C-level allocations (mainly by malloc and strdup) are
    checked for success with suitable alternative actions.
  * Bug fix for replayPlot(); this was turning off graphics engine
    display list recording if a recorded plot was replayed in the
    same session.  The impact of the bug became visible if resize the
    device after replay OR if attempted another savePlot() after
    replay (empty display list means empty screen on resize or empty
    saved plot).
  * R CMD check etc now warn when a package exports non-existing S4
    classes or methods, also in case of no "methods" presence.
    (Reported by Alex Bertram; reproducible example and patch by
    Sebastian Meyer in PR#16662.)
  * boxplot() now also accepts calls for labels such as ylab, the
    same as plot().  (Reported by Marius Hofert.)
  * The help page for xtabs() now correctly states that addNA is
    setting na.action = na.pass among others.  (Reported as PR#17770
    by Thomas Soeiro.)
  * The R CMD check &lt;pkg&gt; gives a longer and more comprehensible
    message when DESCRIPTION misses dependencies, e.g., in Imports:.
    (Thanks to the contributors of PR#17179.)
  * update.default() now calls the generic update() on the formula to
    work correctly for models with extended formulas.  (As reported
    and suggested by Neal Fultz in PR#17865.)
  * The horizontal position of leaves in a dendrogram is now correct
    also with center = FALSE.  (PR#14938, patch from Sebastian
    Meyer.)
  * all.equal.POSIXt() no longer warns about and subsequently ignores
    inconsistent "tzone" attributes, but describes the difference in
    its return value (PR#17277).  This check can be disabled _via_
    the new argument check.tzone = FALSE as suggested by Sebastian
    Meyer.
  * as.POSIXct() now populates the "tzone" attribute from its tz
    argument when x is a logical vector consisting entirely of NA
    values.
  * x[[2^31]] &lt;- v now works.  (Thanks to the report and patch by
    Suharto Anggono in PR#17330.)
  * In log-scale graphics, axis() ticks and label positions are now
    computed more carefully and symmetrically in their range,
    typically providing _more_ ticks, fulfilling wishes in PR#17936.
    The change really corresponds to an improved axisTicks() (package
    grDevices), potentially influencing grid and lattice, for
    example.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now correct to at
    least five digits where it was catastrophically wrong,
    previously.
  * sum(df) and similar "Summary"- and "Math"-group member functions
    now work for data frames df with logical columns, notably also of
    zero rows.  (Reported to R-devel by Martin "b706".)
  * unsplit() had trouble with tibbles due to unsound use of rep(NA,
    len)-indexing, which should use NA_integer_ (Reported to R-devel
    by Mario Annau.)
  * pnorm(x, log.p = TRUE) underflows to -Inf slightly later.
  * show(&lt;hidden S4 generic&gt;) prints better and without quotes for
    non-hidden S4 generics.
  * read.table() and relatives treated an "NA" column name as missing
    when check.names = FALSE PR#18007.
  * Parsing strings containing UTF-16 surrogate pairs such as
    "\uD834\uDD1E" works better on some (uncommon) platforms.
    sprintf("%X", utf8ToInt("\uD834\uDD1E")) should now give "1D11E"
    on all platforms.
  * identical(x,y) is no longer true for differing DOTSXP objects,
    fixing PR#18032.
  * str() now works correctly for DOTSXP and related exotics, even
    when these are doomed.
    Additionally, it no longer fails for lists with a class and
    "irregular" method definitions such that e.g. lapply(*) will
    necessarily fail, as currently for different igraph objects.
  * Too long lines in environment files (e.g. Renviron) no longer
    crash R. This limit has been increased to 100,000 bytes.
    (PR#18001.)
  * There is a further workaround for FreeType giving incorrect
    italic font faces with cairo-based graphics devices on macOS.
  * add_datalist(*, force = TRUE) (from package tools) now actually
    updates an existing data/datalist file for new content.  (Thanks
    to a report and patch by Sebastian Meyer in PR#18048.)
  * cut.Date() and cut.POSIXt() could produce an empty last interval
    for breaks = "months" or breaks = "years".  (Reported as PR#18053
    by Christopher Carbone.)
  * Detection of the encoding of 'regular' macOS locales such as
    en_US (which is UTF-8) had been broken by a macOS change:
    fortunately these are now rarely used with en_US.UTF-8 being
    preferred.
  * sub() and gsub(pattern, repl, x, *) now keep attributes of x such
    as names() also when pattern is NA (PR#18079).
  * Time differences ("difftime" objects) get a replacement and a
    rep() method to keep "units" consistent.  (Thanks to a report and
    patch by Nicolas Bennett in PR#18066.)
  * The \RdOpts macro, setting defaults for \Sexpr options in an Rd
    file, had been ineffective since R 2.12.0: it now works again.
    (Thanks to a report and patch by Sebastian Meyer in PR#18073.)
  * mclapply and pvec no longer accidentally terminate parallel
    processes started before by mcparallel or related calls in
    package parallel (PR#18078).
  * grep and other functions for evaluating (extended) regular
    expressions handle in Unicode also strings not explicitly flagged
    UTF-8, but flagged native when running in UTF-8 locale.
  * Fixed a crash in fifo implementation on Windows (PR#18031).
  * Binary mode in fifo on Windows is now properly detected from
    argument open (PR#15600, PR#18031).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1622808000">- The line %{__install} -m 755 -d %{_infodir}
  no longer works in TW or Factory.
  But without that line it works everywhere. So this instruction
  was commented out of the spec file.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1628596800">- CHANGES IN R 4.1.1:
  NEW FEATURES:
  * require(pkg, quietly = TRUE) is quieter and in particular does
    not warn if the package is not found.
  DEPRECATED AND DEFUNCT:
  * Use of ftp:// URIs should be regarded as deprecated, with
    on-going support confined to method = "libcurl" and not routinely
    tested.  (Nowadays no major browser supports them.)
  * The non-default method = "internal" is deprecated for http:// and
    ftp:// URIs for both download.file and url.
  * On Windows, method = "wininet" is deprecated for http://,
    https:// and ftp:// URIs for both download.file and url.  (A
    warning is only given for ftp://.)
    For ftp:// URIs the default method is now "libcurl" if available
    (which it is on CRAN builds).
    method = "wininet" remains the default for http:// and https://
    URIs but if libcurl is available, using method = "libcurl" is
    preferred.
  INSTALLATION:
  * make check now works also without a LaTeX installation.  (Thanks
    to Sebastian Meyer's PR#18103.)
  BUG FIXES:
  * make check-devel works again in an R build configured with
  - -without-recommended-packages.
  * qnbinom(p, size, mu) for large size/mu is correct now in a range
    of cases (PR#18095); similarly for the (size, prob)
    parametrization of the negative binomial.  Also qpois() and
    qbinom() are better and or faster for extreme cases.  The
    underlying C code has been modularized and is common to all four
    cases of discrete distributions.
  * gap.axis is now part of the axis() arguments which are passed
    from bxp(), and hence boxplot().  (Thanks to Martin Smith's
    report and suggestions in PR#18109.)
  * .First and .Last can again be set from the site profile.
  * seq.int(from, to, *) and seq.default(..) now work better in large
    range cases where from-to is infinite where the two boundaries
    are finite.
  * all.equal(x,y) now returns TRUE correctly also when several
    entries of abs(x) and abs(y) are close to .Machine$double.xmax,
    the largest finite numeric.
  * model.frame() now clears the object bit when removing the class
    attribute of a value via na.action (PR#18100).
  * charClass() now works with multi-character strings on Windows
    (PR#18104, fixed by Bill Dunlap).
  * encodeString() on Solaris now works again in Latin-1 encoding on
    characters represented differently in UTF-8.  Support for
    surrogate pairs on Solaris has been improved.
  * file.show() on Windows now works with non-ASCII path names
    representable in the current native encoding (PR#18132).
  * Embedded R on Windows can now find R home directory via the
    registry even when installed only for the current user
    (PR#18135).
  * pretty(x) with finite x now returns finite values also in the
    case where the extreme x values are close in size to the maximal
    representable number .Machine$double.xmax.
    Also, it's been tweaked for very small ranges and when a boundary
    is close (or equal) to zero; e.g., pretty(c(0,1e-317)) no longer
    has negative numbers, currently still warning about a very small
    range, and pretty(2^-(1024 - 2^-1/(c(24,10)))) is more accurate.
  * The error message for not finding vignette files when weaving has
    correct file sizes now. (Thanks to Sebastian Meyer's PR#18154.)
  * dnbinom(20, &lt;large&gt;, 1) now correctly gives 0, and similar cases
    are more accurate with underflow precaution.  (Reported by Francisco Vera Alcivar in PR#18072.)</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635163200">- repaired https://bugzilla.suse.com/show_bug.cgi?id=1191380
  (rpmacros now go to rpmmacrodir)
- minor clean-ups in spec file</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635768000">- CHANGES IN R 4.1.2:
  C-LEVEL FACILITIES:
  * The workaround in headers R.h and Rmath.h (using namespace std;)
    for the Oracle Developer Studio compiler is no longer needed now
    C++11 is required so has been removed.  A couple more usages of
    log() (which should have been std::log()) with an int argument
    are reported on Solaris.
  * The undocumented limit of 4095 bytes on messages from the
    S-compatibility macros PROBLEM and MESSAGE is now documented and
    longer messages will be silently truncated rather than
    potentially causing segfaults.
  * If the R_NO_SEGV_HANDLER environment variable is non-empty, the
    signal handler for SEGV/ILL/BUS signals (which offers recovery
    user interface) is not set. This allows more reliable debugging
    of crashes that involve the console.
  DEPRECATED AND DEFUNCT:
  * The legacy S-compatibility macros PROBLEM, MESSAGE, ERROR, WARN,
    WARNING, RECOVER, ... are deprecated and will be hidden in R
    4.2.0. R's native interface of Rf_error and Rf_warning has long
    been preferred.
  BUG FIXES:
  * .mapply(F, dots, .) no longer segfaults when dots is not a list
    and uses match.fun(F) as always documented; reported by Andrew
    Simmons in PR#18164.
  * hist(&lt;Date&gt;, ...) and hist(&lt;POSIXt&gt;, ...)  no longer pass
    arguments for rect() (such as col and density) to axis().
    (Thanks to Sebastian Meyer's PR#18171.)
  * \Sexpr{ch} now preserves Encoding(ch). (Thanks to report and
    patch by Jeroen Ooms in PR#18152.)
  * Setting the RNG to "Marsaglia-Multicarry" e.g., by RNGkind(), now
    warns in more places, thanks to Andr'e Gillibert's report and
    patch in PR#18168.
  * gray(numeric(), alpha=1/2) no longer segfaults, fixing PR#18183,
    reported by Till Krenz.
  * Fixed dnbinom(x, size=&lt;very_small&gt;, .., log=TRUE) regression,
    reported by Martin Morgan.
  * as.Date.POSIXlt(x) now keeps names(x), thanks to Davis Vaughan's
    report and patch in PR#18188.
  * model.response() now strips an "AsIs" class typically, thanks to
    Duncan Murdoch's report and other discussants in PR#18190.
  * try() is considerably faster in case of an error and long call,
    as e.g., from some do.call().  Thanks to Alexander Kaever's
    suggestion posted to R-devel.
  * qqline(y = &lt;object&gt;) such as y=I(.), now works, see also
    PR#18190.
  * Non-integer mgp par() settings are now handled correctly in
    axis() and mtext(), thanks to Mikael Jagan and Duncan Murdoch's
    report and suggestion in PR#18194.
  * formatC(x) returns length zero character() now, rather than ""
    when x is of length zero, as documented, thanks to Davis
    Vaughan's post to R-devel.
  * removeSource(fn) now retains (other) attributes(fn).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1647000000">- CHANGES IN R 4.1.3:
  NEW FEATURES:
  * The default version of Bioconductor has been changed to 3.14.
    (This is used by setRepositories and the menus in GUIs.)
  UTILITIES:
  * R CMD check --as-cran has a workaround for a bug in versions of
    file up to at least 5.41 which mis-identify DBF files last
    changed in 2022 as executables.
  C-LEVEL FACILITIES:
  * The legacy S-compatibility macros SINGLE_* in R_ext/Constants.h
    (included by R.h) are deprecated and will be removed in R 4.2.0.
  BUG FIXES:
  * Initialization of self-starting nls() models with initialization
    functions following the pre-R-4.1.0 API (without the ...
    argument) works again for now, with a deprecation warning.
  * Fixed quoting of ~autodetect~ in Java setting defaults to avoid
    inadvertent user lookup due to leading ~, reported in PR#18231 by
    Harold Gutch.
  * substr(., start, stop) &lt;- v now treats _negative_ stop values
    correctly.  Reported with a patch in PR#18228 by Brodie Gaslam.
  * Subscripting an array x without dimnames by a
    length(dim(x))-column character matrix gave "random" non-sense,
    now an error; reported in PR#18244 by Mikael Jagan.
  * ...names() now matches names(list(...)) closely, fixing PR#18247.
  * all.equal(*, scale = s) now works as intended when length(s) &gt; 1,
    partly thanks to Michael Chirico's PR#18272.
  * print(x) for long vectors x now also works for named atomic
    vectors or lists and prints the correct number when reaching the
    getOption("max.print") limit; partly thanks to a report and
    proposal by Hugh Parsonage to the R-devel list.
  * all.equal(&lt;selfStart&gt;, *) no longer signals a deprecation
    warning.
  * reformulate(*, response=r) gives a helpful error message now when
    length(r) &gt; 1, thanks to Bill Dunlap's PR#18281.
  * Modifying globalCallingHandlers inside withCallingHandlers() now
    works or fails correctly, thanks to Henrik Bengtsson's PR#18257.
  * hist(&lt;Date&gt;, breaks = "days") and hist(&lt;POSIXt&gt;, breaks = "secs")
    no longer fail for inputs of length 1.
  * qbeta(.001, .9, .009) and similar cases now converge correctly
    thanks to Ben Bolker's report in PR#17746.
  * window(x, start, end) no longer wrongly signals "'start' cannot
    be after 'end'", fixing PR#17527 and PR#18291.
  * data() now checks that its (rarely used) list argument is a
    character vector - a couple of packages passed other types and
    gave incorrect results.
  * which() now checks its arr.ind argument is TRUE rather coercing
    to logical and taking the first element - which gave incorrect
    results in package code.
  * model.weights() and model.offset() more carefully extract their
    model components, thanks to Ben Bolker and Tim Taylor's R-devel
    post.
  * list.files(recursive = TRUE) now shows all broken symlinks
    (previously, some of them may have been omitted, PR#18296).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1650628800">- CHANGES IN R 4.2.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * The formula method of aggregate() now matches the generic in
    naming its first argument x (resolving PR#18299 by Thomas
    Soeiro).
    This means that calling aggregate() with a formula as a named
    first argument requires name formula in earlier versions of R and
    name x now, so portable code should not name the argument (code
    in many packages did).
  * Calling &amp;&amp; or || with either argument of length greater than one
    now gives a warning (which it is intended will become an error).
  * Calling if() or while() with a condition of length greater than
    one gives an error rather than a warning.  Consequently,
    environment variable _R_CHECK_LENGTH_1_CONDITION_ no longer has
    any effect.
  * Windows users should consult the WINDOWS section below for some
    profound changes including
  * Support for 32-bit builds has been dropped.
  * UTF-8 locales are used where available.
  * The default locations for the R installation and personal
    library folder have been changed.
    Thanks to Tomas Kalibera for months of work on the Windows port
    for this release.
  NEW FEATURES:
  * matrix(x, n, m) now warns in more cases where length(x) differs
    from n * m, as suggested by Abby Spurdle and Wolfgang Huber in
    Feb 2021 on the R-devel mailing list.
    This warning can be turned into an error by setting environment
    variable _R_CHECK_MATRIX_DATA_ to TRUE: R CMD check --as-cran
    does so unless it is already set.
  * Function file_test() in package utils gains tests for symlinks,
    readability and writability.
  * capabilities("libxml") is now false.
    The description of capabilities("http/ftp") now reflects that it
    refers to the default method, no longer the internal one.
  * simplify2array() gains an except argument for controlling the
    exceptions used by sapply().
  * Environment variables R_LIBS_USER and R_LIBS_SITE are both now
    set to the R system default if unset or empty, and can be set to
    NULL to indicate an empty list of user or site library
    directories.
  * The warning for axis()(-like) calls in cases of relatively small
    ranges (typically in log-scale situations) is slightly improved
    _and_ suppressed from explicit calls to .axisPars() as has always
    been the intention.
  * The contrasts setter function `contrasts&lt;-` gains an explicit
    default how.many = NULL rather than just using missing(how.many).
  * grid.pretty() gains a new optional argument n = 5.
  * There is a new function .pretty() with option bounds as a
    technical-utility version of pretty().  It and pretty() gain a
    new argument f.min with a better than back-compatible default.
  * Function grDevices::axisTicks() and related functions such as
    graphics::axis() work better, notably for the log scale; partly
    because of the pretty() improvements, but also because care is
    taken e.g., when ylim is finite but diff(ylim) is infinite.
  * nclass.FD() gains a digits option.
  * The R Mathlib internal C function bd0() (called indirectly from a
    dozen probability density and distribution functions such as
    dpois(), dbinom(), dgamma(), pgamma() _etc_) has been
    complemented by a more sophisticated and (mostly) more accurate C
    function ebd0(), currently called only by internal dpois_raw()
    improving accuracy for R level dpois() and potentially others
    calling it such as dnbinom(), dgamma() or pgamma().  (Thanks to
    Morten Welinder's PR#15628.)
  * write.ftable() gains sep = " " argument as suggested by Thomas
    Soeiro.
  * The names of the locale categories supported by R's
    Sys.getlocale() and Sys.setlocale() are now provided by variable
    .LC.categories in the base namespace.
  * The Date and POSIXt methods for hist() and the histogram method
    for plot() now also use the new default col = "lightgray" in
    consistency with the corresponding change to hist()'s default for
    R 4.0.0.
  * hist.default() gains new fuzz argument, and the histogram plot
    method no longer uses fractional axis ticks when displaying
    counts ("Frequency").
  * mapply() and hence Map() now also obey the "max-or-0-if-any"
    recycling rule, such that, e.g., Map(`+`, 1:3, 1[0]) is valid
    now.
  * as.character(&lt;obj&gt;) for "hexmode" or "octmode" objects now
    fulfils the important basic rule as.character(x)[j] ===
    as.character(x[j]).
  * The set utility functions, notably intersect() have been tweaked
    to be more consistent and symmetric in their two set arguments,
    also preserving a common mode.
  * substr(ch, start,end) &lt;- new now e.g., preserves names(ch); ditto
    for substring(), thanks to a patch from Brodie Gaslam.
  * plot(&lt;lm&gt;) gains a extend.ylim.f argument, in partial response to
    PR#15285; further PR#17784 is fixed thanks to several
    contributors and a patch by Elin Waring.  The Cook's dist
    contours get customizable via cook.col and cook.lty with a
    different default color and their legend is nicer by default and
    customizable via cook.legendChanges.
  * Attempting to subset an object that is not subsettable now
    signals an error of class notSubsettableError. The
    non-subsettable object is contained in the object field of the
    error condition.
  * Subscript-out-of-bounds errors are now signaled as errors of
    class subscriptOutOfBoundsError.
  * Stack-overflow errors are now signaled as errors inheriting from
    class stackOverflowError. See ?stackOverflowError for more
    details.
  * New partly experimental Sys.setLanguage() utility, solving the
    main problem of PR#18055.
  * gettext() and gettextf() get a new option trim = TRUE which when
    set to false allows translations for strings such as "Execution
    halted\n" typical for C code.
  * An experimental implementation of hash tables is now available.
    See ?hashtab for more details.
  * identical() gains a extptr.as.ref argument for requesting that
    external pointer objects be compared as reference objects.
  * reorder() gets an argument decreasing which it passes to sort()
    for level creation; based on the wish and patch by Thomas Soeiro
    in PR#18243.
  * as.vector() gains a data.frame method which returns a simple
    named list, also clearing a long standing 'FIXME' to enable
    as.vector(&lt;data.frame&gt;, mode="list").  This breaks code relying
    on as.vector(&lt;data.frame&gt;) to return the unchanged data frame.
  * legend() is now vectorized for arguments cex, x.intersp, and
    text.width.  The latter can now also be specified as a vector
    (one element for each column of the legend) or as NA for
    computing a proper column wise maximum value of strwidth(legend).
    The argument y.intersp can be specified as a vector with one
    entry for each row of the legend.
    legend() also gains new arguments title.cex and title.font.
    Thanks to Swetlana Herbrandt.
  * Deparsing no longer remaps attribute names dim, dimnames, levels,
    names and tsp to historical S-compatible names (which structure()
    maps back).
  * sample() and sample.int() have additional sanity checks on their
    size and n arguments.
    all.equal.numeric() gains a sanity check on its tolerance
    argument - calling all.equal(a, b, c) for three numeric vectors
    is a surprisingly common error.
    mean(na.rm =), rank(na.last =), barplot(legend.text =),
    boxplot(), contour(drawlabels =), polygon(border =) and
    methods::is(class2 =) have more robust sanity checks on their
    arguments.
    R CMD Rd2pdf (used by R CMD check) has a more robust sanity check
    on the format of \alias{} commands.
  * psigamma(x, deriv) for negative x now also works for deriv = 4
    and 5; their underlying C level dpsifn() is documented in
    'Writing R Extensions'.
  * The HTML help system now uses HTML5 (wish of PR#18149).
  * ks.test() now provides exact p-values also with ties and MC
    p-values in the two-sample (Smirnov) case.  By Torsten Hothorn.
  * ks.test() gains a formula interface, with y ~ 1 for the
    one-sample (Kolmogorov) test and y ~ group for the two-sample
    (Smirnov) test.  Contributed by Torsten Hothorn.
  * The return value from ks.test() now has class c("ks.test",
    "htest") - packages using try() need to take care to use
    inherits() and not == on the class.
  * New functions psmirnov(), qsmirnov() and rsmirnov() in package
    stats implementing the asymptotic and exact distributions of the
    two-sample Smirnov statistic.
  * iconv() now allows sub = "c99" to use C99-style escapes for UTF-8
    inputs which cannot be converted to encoding to.
  * In a forward pipe |&gt; expression it is now possible to use a named
    argument with the placeholder _ in the rhs call to specify where
    the lhs is to be inserted.  The placeholder can only appear once
    on the rhs.
  * The included LAPACK sources have been updated to version 3.10.0,
    except for the four Fortran 77 routines which 3.10.0 has
    re-implemented in Fortran 90 (where the older versions have been
    retained as the R build process does not support Fortran 90).
  * path.expand() and most other uses of tilde expansion now warn if
    a path would be too long if expanded.  (An exception is
    file.exists(), which silently returns false.)
  * trunc(&lt;Date&gt;, *) now supports units = "months" or "years" for
    consistency with the POSIXt method, thanks to Dirk Eddelbuettel's
    proposal in PR#18099.
  * list2DF() now checks that its arguments are of the same length,
    rather than use recycling.
  * The HTML help system has several new features: LaTeX-like math
    can be typeset using either KaTeX or MathJax, usage and example
    code is highlighted using Prism, and for dynamic help the output
    of examples and demos can be shown within the browser if the
    knitr package is installed. These features can be disabled by
    setting the environment variable _R_HELP_ENABLE_ENHANCED_HTML_ to
    a false value.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 15
    and so packages that provide graphics devices should be
    reinstalled.
  * The grid package now allows the user to specify a "vector" of
    pattern fills.  The fill argument to gpar() accepts a list of
    gradients and/or patterns and the functions linearGradient(),
    radialGradient(), and pattern() have a new group argument.
    Points grobs (data symbols) can now also have a pattern fill.
    The grobCoords() function now returns a more informative and
    complex result.
  * The grid package has new functions for drawing isolated groups:
    grid.group(), grid.define(), and grid.use().  These functions add
    compositing operators and affine transformations to R's graphics
    capabilities.
    The grid package also has new functions for stroking and filling
    paths: grid.stroke(), grid.fill(), and grid.fillStroke().
    A new function as.path() allows the user to specify the fill rule
    for a path that is to be used for clipping, stroking, or filling;
    available options are "winding" and "evenodd".  A new function
    as.mask() allows the user to specify the type of a mask;
    available options are "alpha" and "luminance".
    These new features are only supported so far (at most) on the
    Cairo-based graphics devices and on the pdf() device.
  * dev.capabilities() reports on device support for the new
    features.
  * par() now warns about unnamed non-character arguments to prevent
    misuse such as {usr &lt;- par("usr"); par(usr)}.
  INSTALLATION:
  * Facilities for accessing ftp:// sites are no longer tested
    (except _pro tem_ for curlGetHeaders()) as modern browsers have
    removed support.
  * R can now be built with DEFS = -DSTRICT_R_HEADERS .
  PACKAGE INSTALLATION:
  * R CMD INSTALL no longer tangles vignettes. This completes an R
    CMD build change in R 3.0.0 and affects packages built before R
    3.0.2. Such packages should be re-made with R CMD build to have
    the tangled R code of vignettes shipped with the tarball.
  * USE_FC_LEN_T will become the default: this uses the correct
    prototypes for Fortran BLAS/LAPACK routines called from C/C++,
    and requires adjustment of most such calls - see 'Writing R
    Extensions' SS6.6.2.  (This has been supported since R 3.6.2.)
  * Package installation speed for packages installed with
    keep.source has been improved. This resolve the issue reported by
    Ofek Shilon in PR#18236.
  UTILITIES:
  * R CMD check can optionally report files/directories left behind
    in home, /tmp (even though TMPDIR is set) and other directories.
    See the "R Internals" manual for details.
  * R CMD check now reports byte-compilation errors during
    installation.  These are not usually fatal but may result in
    parts of the package not being byte-compiled.
  * _R_CHECK_DEPENDS_ONLY_ can be applied selectively to examples,
    tests and/or vignettes in R CMD check: see the "R Internals"
    manual.
  * _R_CHECK_SRC_MINUS_W_IMPLICIT_ now defaults to true: recent
    versions of Apple clang on macOS have made implicit function
    declarations in C into a compilation error.
  * R CMD check --as-cran makes use of the environment variable
    AUTORECONF.  See the "R Internals" manual SS8 for further details.
  * R CMD check --use-valgrind also uses valgrind when re-building
    vignettes as some non-Sweave vignettes unhelpfully comment out
    all their code when R CMD check runs vignettes.
  * Errors in re-building vignettes (unless there are LaTeX errors)
    are reported by R CMD check as ERROR rather than WARNING when
    running vignettes has been skipped (as it frequently is in CRAN
    checks and by --as-cran).
  * R CMD Rd2pdf gains a --quiet option that is used by R CMD build
    when building the PDF package manual.
  * R CMD Rd2pdf now always runs LaTeX in batch mode, consistent with
    Texinfo &gt;= 6.7. The --batch option is ignored.
  * R CMD build and R CMD check now include the Rd file name and line
    numbers in the error message of an \Sexpr evaluation failure.
  * For packages using the \doi Rd macro (now an install-time \Sexpr)
    but no other dynamic Rd content, R CMD build now produces a
    smaller tarball and is considerably faster - skipping temporary
    package installation.
  C-LEVEL FACILITIES:
  * The non-API header R_ext/R-ftp-http.h is no longer provided, as
    the entry points it covered are now all defunct.
  * A number of non-API declarations and macro definitions have been
    moved from the installed header Rinternals.h to the internal
    header Defn.h. Packages that only use entry points and
    definitions documented to be part of the API as specified in
    'Writing R Extensions' SS6 should not be affected.
  * The macro USE_RINTERNALS no longer has any effect when compiling
    package code.  Packages which also use R_NO_REMAP will need to
    ensure that the remapped names are used for calls to API
    functions that were formerly also made available as macros.
  * The deprecated legacy S-compatibility macros PROBLEM, MESSAGE,
    ERROR, WARN, WARNING, RECOVER, ... are no longer defined in
    R_exts/RS.h (included by R.h).  Replace these by calls to
    Rf_error and Rf_warning (defined in header R_ext/Error.h included
    by R.h).
    Header R_ext/RS.h no longer includes R_ext/Error.h.
  * Header R_ext/Constants.h (included by R.h) when included from C++
    now includes the C++ header cfloat rather than the C header
    float.h (now possible as C++11 is required).
  * The legacy S-compatibility macros DOUBLE_* in R_ext/Constants.h
    (included by R.h) are deprecated.
  * The deprecated S-compatibility macros SINGLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * R_Calloc, R_Free and R_Realloc are preferred to their unprefixed
    forms and error messages now use the prefix. These forms were
    introduced in R 3.4.0 and are available even when
    STRICT_R_HEADERS is defined.
  * rmultinom has been documented in 'Writing R Extensions' SS6 so is
    now part of the R API.
  * Similarly, Rtanpi, called from R level tanpi() is now part of the
    R API.
  * The long-deprecated, undocumented and non-API entry point call_R
    is no longer declared in R_ext/RS.h (included by R.h).
  * The header S.h which has been unsupported since Jan 2016 has been
    removed.  Use R.h instead.
  DEPRECATED AND DEFUNCT:
  * The (non-default and deprecated) method = "internal" for
    download.file() and url() no longer supports http:// nor ftp://
    URIs.  (It is used only for file:// URIs.)
    On Windows, download.file(method = "wininet") no longer supports
    ftp:// URIs.  (It is no longer the default method, which is
    "libcurl" and does.)
    On Windows, the deprecated method = "wininet" now gives a warning
    for http:// and https:// URIs for both download.file() and url().
    (It is no longer the default method.)
  * On Windows, the command-line option --max-mem-size and
    environment variable R_MAX_MEM_SIZE are defunct.  The memory
    allocation limit was important for 32-bit builds, but these are
    no longer supported.
  * default.stringsAsFactors() is now formally deprecated, where that
    was only mentioned on its regular help page, previously.  So it
    now gives a warning if called.
  * unix.time() is defunct now; it had been deprecated since R 3.4.0.
  BUG FIXES:
  * Setting digits = 0 in format(), print.default() (and hence
    typically print()) or options() is again invalid.  Its behaviour
    was platform-dependent, and it is unclear what "zero significant
    digits" should mean (PR#18098).
  * Messages from C code in the cairo section of package grDevices
    are now also offered for translation, thanks to Michael Chirico's
    PR#18123.
  * mean(x) with finite x now is finite also without "long.double"
    capability.
  * R CMD Rd2pdf no longer leaves an empty build directory behind
    when it aborts due to an already existing output file.  (Thanks
    to Sebastian Meyer's PR#18141.)
  * density(x, weights = w, na.rm = TRUE) when anyNA(x) is true, now
    removes weights "in parallel" to x, fixing PR#18151, reported by
    Matthias Gondan.  Additionally, it gets a subdensity option.
  * Conversion of \Sexpr[]{&lt;expR&gt;} to LaTeX or HTML no longer
    produces long blocks of empty lines when &lt;expR&gt; itself contains
    several lines all producing empty output.  Thanks to a report and
    patch by Ivan Krylov posted to R-devel.
  * R CMD build no longer fails if a package vignette uses child
    documents and inst/doc exists.  (Thanks to Sebastian Meyer's
    PR#18156.)
  * When an R documentation ('help' source) file man/foo.Rd in a
    package has \donttest{..} examples with a syntax error, it is now
    signalled as ERROR and with correct line numbers relating to the
  * -Ex.R file, thanks to Duncan Murdoch and Sebastian Meyer's
    reports and patch proposals in PR#17501.
  * Improved determination of the correct translation domain in
    non-base packages, addressing the combination of PR#18092 and
    PR#17998 (#c6) with reports and _augmented_ patch #2904 by
    Suharto Anggono.
    Note that "R-base" is no longer the default domain e.g., for
    top-level calls to gettext(); rather translation needs explicit
    domain = * specification in such cases.
  * identical(attrib.as.set=FALSE) now works correctly with data
    frames with default row names (Thanks to Charlie Gao's PR#18179).
  * txtProgressBar() now enforces a non-zero width for argument char,
    without which no progress can be visible.
  * dimnames(table(d)) is more consistent in the case where d is a
    list with a single component, thanks to Thomas Soeiro's report to
    R-devel.
    Further, table(d1, d2) now gives an error when d1 and d2 are data
    frames as suggested by Thomas in PR#18224.
  * Fix for drawing semi-transparent lines and fills on the native
    Windows graphics device (PR#18219 and PR#16694).  Thanks to Nick
    Ray for helpful diagnosis on Bugzilla.
  * The deparser now wraps sub-expressions such as if(A) ..  with
    parentheses when needed; thanks to Duncan Murdoch's PR#18232 and
    Lionel Henry's patches there.
  * remove.packages() no longer tries to uninstall Priority: base
    packages, thanks to a report and suggestions by Colin Fay in
    PR#18227.
  * win.metafile() now has xpinch and ypinch arguments so that the
    user can override Windows' (potentially wrong) guess at device
    dimensions.
  * x[i] and x[[i]] for non-integer i should now behave in all cases
    as always documented: the index used is equivalent to
    as.integer(i) unless that would overflow where trunc(i) is used
    instead; thanks to Suharto Anggono's report and patch proposals
    in PR#17977.
  * asOneSidedFormula() now associates the resulting formula with the
    global environment rather than the evaluation environment created
    for the call.
  * &lt;bibentry&gt;$name now matches the field name case-insensitively,
    consistent with bibentry() creation and the replacement method.
  * cbind() failed to detect some length mismatches with a mixture of
    time-series and non-time-series inputs.
  * The default LaTeX style file Sweave.sty used by the RweaveLatex
    driver no longer loads the obsolete ae package; thanks to a
    report by Thomas Soeiro in PR#18271.  Furthermore, it now skips
    \usepackage[T1]{fontenc} for engines other than pdfTeX (if
    detected) or if the new [nofontenc] option is used.
  * smooth.spline() now stores its logical cv argument more safely,
    fixing a rare bug when printing, and also stores n.
  * smooth.spline(x,y,*) now computes the cv.crit statistic
    correctly, also when is.unsorted(x), fixing PR#18294.
  * The data.frame method of rbind() now warns when binding
    not-wholly-recycling vectors, by analogy to the default method
    (for matrices).
  * setAs() finds the correct class for name to when multiple
    packages define a class with that name. Thanks to Gabor Csardi
    for the report.
  * Fix for detaching a package when two classes of the same name are
    present in method signatures for the same generic. Thanks to
    Gabor Csardi for the report.
  * match.arg("", c("", "a", "B")) gives a better error message, in
    part from PR#17959, thanks to Elin Waring.
  * R CMD Sweave --clean no longer removes pre-existing files or
    subdirectories (PR#18242).
  * The quartz() device no longer splits polylines into subpaths.
    That has caused narrowly-spaced lines with many points to always
    look solid even when dashed line type was used due to dash phase
    restarts.
  * Deparsing constructs such as quote(1 + `!`(2) + 3) works again as
    before R 3.5.0, thanks to the report and patch in PR#18284 by
    Suharto Anggono.
  * as.list(f) for a factor f now keeps names(f), fixing PR#18309.
  * qbeta(.001, .9, .009) and analogous qf() calls now return a
    correct value instead of NaN or wrongly 1, all with a warning;
    thanks to the report by Ludger Goeminne in PR#18302.
  * plot.lm() failed to produce the plot of residuals vs.  factor
    levels (i.e., which=5 when leverages are constant) for models
    with character predictors (PR#17840).
  * interaction.plot(..., xtick = TRUE) misplaced the x-axis line
    (PR#18305).
  * Not strictly fixing a bug, format()ing and print()ing of
    non-finite Date and POSIXt values NaN and +/-Inf no longer show
    as NA but the respective string, e.g., Inf, for consistency with
    numeric vector's behaviour, fulfilling the wish of PR#18308.
  * R CMD check no longer runs test scripts generated from
    corresponding .Rin files twice and now signals an ERROR if
    processing an .Rin script fails.
  * tools::Rd2txt() used for plain-text help pages now renders \hrefs
    (if tools::Rd2txt_options(showURLs = TRUE)) and \urls with
    percent-encoding and standards-compliant delimiting style (angle
    brackets and no URL: prefix).  \email is now rendered with a
    mailto: prefix.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1655985600">- CHANGES IN R 4.2.1:
  NEW FEATURES:
  * New function utils::findCRANmirror() to find out if a CRAN mirror
    has been selected, otherwise fallback to the main site.  This
    behaves in the same way as tools::CRAN_package_db() and is
    intended for packages wishing to access CRAN for purposes other
    than installing packages.
    The need for this was shown by a day when the main CRAN website
    was offline and a dozen or so packages which had its URL
    hardcoded failed their checks.
  INSTALLATION on a UNIX-ALIKE:
  * The libraries searched for by --with-blas (without a value) now
    include BLIS (after OpenBLAS but before ATLAS).  And on macOS,
    the Accelerate framework (after ATLAS).  (This is patterned after
    the AX_BLAS macro from the Autoconf Archive.)
  * The included LAPACK sources have been updated to 3.10.1.
  UTILITIES:
  * The (full path to) the command tidy to be used for HTML
    validation can be set by environment variable R_TIDYCMD.
  * Setting environment variable _R_CHECK_RD_VALIDATE_RD2HTML_ to a
    false value will override R CMD check --as-cran and turn off HTML
    validation.  This provides a way to circumvent a problematic
    tidy.
    The 2006 version that ships with macOS is always skipped.
  C-LEVEL FACILITIES:
  * The undocumented legacy declarations of Sint, Sfloat, SINT_MAX
    and SINT_MIN in header R.h are deprecated.
  BUG FIXES:
  * fisher.test(d) no longer segfaults for "large" d; fixing PR#18336
    by preventing/detecting an integer overflow reliably.
  * tar(., files=*) now produces correctly the warning about invalid
    uid or gid of files, fixing PR#18344, reported by Martin Morgan.
  * tk_choose.files() with multi = FALSE misbehaved on paths
    containing spaces (PR#18334) (regression introduced in R 4.0.0).
  * sort(x, partial = ind, *) now works correctly notably for the
    non-default na.last = FALSE or TRUE, fixing PR#18335 reported by
    James Edwards.
  * Environment variable _R_CHECK_XREFS_REPOSITORIES_ is only used
    for checking .Rd cross-references in R CMD check (as documented)
    and not for other uses looking for a CRAN mirror.
  * The search for a CRAN mirror when checking packages now uses
    getOption("repos") if that specifies a CRAN mirror, even when it
    does not also specify all three Bioconductor repositories (as was
    previously required).
  * The HTML code generated by tools::Rd2HTML() has been improved to
    pass tidy 5.8.0.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1667217600">- CHANGES IN R 4.2.2:
  NEW FEATURES:
  * tools::Rdiff(useDiff = TRUE) checks for the presence of an
    external diff command and switches to useDiff = FALSE if none is
    found.  This allows R CMD Rdiff to always work.
  * On Windows, environment variable R_LIBCURL_SSL_REVOKE_BEST_EFFORT
    can be used to switch to only 'best-effort' SSL certificate
    revocation checks with the default "libcurl" download method.
    This reduces security, but may be needed for downloads to work
    with MITM proxies (PR#18379).
  * (macOS) The run-time check for libraries from XQuartz for X11 and
    Tcl/Tk no longer uses otool from the Apple Developer Tools
    (PR#18400).
  * The LaTeX style for producing the PDF manuals, Rd.sty, now loads
    the standard amsmath, amsfonts and amssymb packages for greater
    coverage of math commands in the Rd \eqn and \deqn macros.  The
    \mathscr LaTeX command is also provided (via the mathrsfs
    package, if available, or the amsfonts bundle otherwise),
    fulfilling the wish of PR#18398.
  * (Windows) The default format of readClipboard() and
    writeClipboard() has been changed to 13 (CF_UNICODETEXT).
  INSTALLATION on a UNIX-ALIKE:
  * The PDF manuals (if built) can be compacted by the new target
    make compact-pdf (at the top level or in directory doc/manual).
  * There is now configure support for LLVM clang 15 on Linux, which
    defaults to position-independent (PIE) executables whereas
    gfortran does not.
  * Many small changes to ease compilation (and suppress warnings)
    with LLVM clang 15.
  BUG FIXES:
  * Rscript -e would fail if stdin were closed (Reported by Henrik
    Bengtsson.)
  * qt(*, log.p=TRUE) in outer tails no longer produces NaN in its
    final steps, thus fixing PR#18360.
  * tools::Rd2latex() now escapes hashes and ampersands when writing
    URLs, fixing LaTeX errors with such URLs in \tabular.
  * When isGeneric(f, fdef=*) is used with mismatching names, the
    warning is better understandable; reported (with fix) in PR#18370
    by Gabe Becker.
  * poly(x, n) now works again (and is now documented) when x is a
    "Date" or "POSIXct" object, or of another class while fulfilling
    mode(x) == "numeric".  This also enables poly(x, *, raw=TRUE) for
    such variables.  Reported by Michael Chirico to R-devel.
  * write.table(), write.csv() and write.csv2() restore their
    numerical precision (internal equivalent of digits = 15) after an
    interrupt (PR#18384).
  * One can now read also byte FF from a clipboard connection
    (PR#18385).
  * source("") and source(character()) now give more helpful error
    messages.
  * R CMD check --as-cran set _R_CHECK_TIMINGS_ too late to have the
    intended effect.
  * as.POSIXlt(x) now also works with very large dates x, fixing
    PR#18401 reported by Hannes M"uhleisen.
  * Files can now be extracted even from very large zip archives
    (PR#18390, thanks to Martin Jakt).
  * Non-finite objects of class "POSIXlt" are now correctly coerced
    to classes "Date" and "POSIXct"; following up on the extension to
    format() them correctly.
  * Added methods for is.finite(), is.infinite() and is.nan() for
    "POSIXlt" date-time objects.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1678881600">- CHANGES IN R 4.2.3:
  C-LEVEL FACILITIES:
  * The definition of DL_FUNC in R_ext/Rdynload.h has been changed to
    be fully C-compliant.  This means that functions loaded _via_ for
    example R_GetCCallable need to be cast to an appropriate type if
    they have any arguments.
  * .Machine has a new element sizeof.time_t to identify old systems
    with a 32-bit type and hence a limited range of date-times (and
    limited support for dates millions of years from present).
  PACKAGE INSTALLATION:
  * (Windows) The default C++ standard had accidentally been left at
    C++11 when it was changed to C++14 on Unix.
  BUG FIXES:
  * As "POSIXlt" objects may be "partially filled" and their list
    components meant to be recycled, length() now is the length of
    the longest component.
  * as.POSIXlt.Date() could underflow for dates in the far past (more
    than half a million years BCE).
  * as.Date.POSIXlt(x) would return "1970-01-01" instead of NA in R
    4.2.2, e.g., for
    x &lt;- as.POSIXlt(c("2019-01-30","2001-1-1"))
    x$mon &lt;- c(0L, NA); as.Date(x)
  * R CMD check failed to apply enabled _R_CHECK_SUGGESTS_ONLY_ to
    examples and vignettes (regression in R 4.2.0).
  * R CMD check did not re-build vignettes in separate processes by
    default (regression in R 4.2.0).
  * Running examples from HTML documentation now restores previous
    knitr settings and options (PR#18420).
  * Quartz: fonts are now located using Core Graphics API instead of
    deprecated ATS which is no longer supported in the macOS 13 SDK
    (PR#18426).  This also addresses an issue where the currently
    used font in the Quartz device context was not correctly
    retained.
  * (Windows) Math symbols in text drawing functions are again
    rendered correctly (PR#18440).  This fixes a regression in R
    4.2.1 caused by a fix in PR#18382 which uncovered an issue in
    GraphApp due to which the symbol charset was not used with TT
    Symbol font face.
  * (Windows) Installing a package with a src/Makefile.{win,ucrt}
    file includes ~/.R/Makevars.win64 in the search for user
    makevars, as documented in "R Installation and Administration"
    and done for packages with a src/Makevars.{win,ucrt} file.
  * format(&lt;POSIXlt_w/_unbalanced_sec&gt;, "....%OS&lt;n&gt;") with n &gt; 0 no
    longer accidentally uses the unbalanced seconds, thanks to
    Suharto Anggono's report (including patch) in PR#18448.
  * solve.default(a, b) works around issues with some versions of
    LAPACK when a contains NA or NaN values.
  * When UseMethod() cannot dispatch, it no longer segfaults
    producing the error message in case of a long class(), thanks to
    Joris Vankerschaver's report (including patch) in PR#18447.
  * When example(foo, ..) produces graphics on an interactive device
    it needs to open itself, it now leaves devAskNewPage() unchanged
    even when it was FALSE, thus fixing a 14 years old '&lt;FIXME&gt;'.
  * packageDescription() again catches errors from encoding
    conversions. This also fixes broken packageVersion() in C locale
    on systems where iconv does not support transliteration.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1681128000">- add patch to build with libcurl &gt;= 8</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1682078400">- CHANGES IN R 4.3.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Calling &amp;&amp; or || with LHS or (if evaluated) RHS of length greater
    than one is now always an error, with a report of the form
    'length = 4' in coercion to 'logical(1)'
    Environment variable _R_CHECK_LENGTH_1_LOGIC2_ no longer has any
    effect.
  NEW FEATURES:
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.10.1.  (This caused some platform-dependent
    changes to package check output.)  And then to the sources from
    LAPACK version 3.11.0 (with changes only to double complex
    subroutines).
  * The included LAPACK sources have been updated to include the four
    Fortran 90 routines rather than their Fortran 77 predecessors.
    This may give some different signs in SVDs or
    eigendecompositions..  (This completes the transition to LAPACK
    3.10.x begun in R 4.2.0.)
  * The LAPACK sources have been updated to version 3.11.0.  (No new
    subroutines have been added, so this almost entirely bug fixes:
    Those fixes do affect some computations with NaNs, including R's
    NA.)
  * The parser now signals _classed_ errors, notably in case of the
    pipe operator |&gt;.  The error object and message now give line and
    column numbers, mostly as proposed and provided by Duncan Murdoch
    in PR#18328.
  * toeplitz() is now generalized for asymmetric cases, with a
    toeplitz2() variant.
  * xy.coords() and xyz.coords() and consequently, e.g., plot(x,y,
    log = "y") now signal a _classed_ warning about negative values
    of y (where log(.) is NA).  Such a warning can be specifically
    suppressed or caught otherwise.
  * Regular expression functions now check more thoroughly whether
    their inputs are valid strings (in their encoding, e.g. in
    UTF-8).
  * The performance of grep(), sub(), gsub() and strsplit() has been
    improved, particularly with perl = TRUE and fixed = TRUE.  Use of
    useBytes = TRUE for performance reasons should no longer be
    needed and is discouraged: it may lead to incorrect results.
  * apropos() gains an argument dot_internals which is used by the
    completion (help(rcompgen)) engine to also see base internals
    such as .POSIXct().
  * Support in tools::Rdiff() for comparing uncompressed PDF files is
    further reduced - see its help page.
  * qqplot(x, y, ...) gains conf.level and conf.args arguments for
    computing and plotting a confidence band for the treatment
    function transforming the distribution of x into the distribution
    of y (Switzer, 1976, _Biometrika_). Contributed by Torsten
    Hothorn.
  * Performance of package_dependencies() has been improved for cases
    when the number of dependencies is large.
  * Strings newly created by gsub(), sub() and strsplit(), when any
    of the inputs is marked as "bytes", are also marked as "bytes".
    This reduces the risk of creating invalid strings and accidental
    substitution of bytes deemed invalid.
  * Support for readLines(encoding = "bytes") has been added to allow
    processing special text files byte-by-byte, without creating
    invalid strings.
  * iconv(from = "") now takes into account any declared encoding of
    the input elements and uses it in preference to the native
    encoding.  This reduces the risk of accidental creation of
    invalid strings, particularly when different elements of the
    input have different encoding (including "bytes").
  * Package repositories in getOption("repos") are now initialized
    from the repositories file when utils is loaded (if not already
    set, e.g., in .Rprofile).  (From a report and patch proposal by
    Gabriel Becker in PR#18405.)
  * compactPDF() gets a verbose option.
  * type.convert() and hence read.table() get new option tryLogical =
    TRUE with back compatible default.  When set to false, converts
    "F" or "T" columns to character.
  * Added new unit prefixes "R" and "Q" for abbreviating
    (unrealistically large) sizes beyond 10^{27} in standard = "SI",
    thanks to Henrik Bengtsson's PR#18435.
  * as.data.frame()'s default method now also works fine with atomic
    objects inheriting from classes such as "roman", "octmode" and
    "hexmode", such fulfilling the wish of PR#18421, by Benjamin
    Feakins.
  * The as.data.frame.vector() utility now errors for wrong-length
    row.names.  It warned for almost six years, with "Will be an
    error!".
  * sessionInfo() now also contains La_version() and reports codepage
    and timezone when relevant, in both print() and toLatex() methods
    which also get new option tzone for displaying timezone
    information when locale = FALSE.
  * New function R_compiled_by() reports the C and Fortran compilers
    used to build R, if known.
  * predict(&lt;lm&gt;, newdata = *) no longer unnecessarily creates an
    offset of all 0s.
  * solve() for complex inputs now uses argument tol and by default
    checks for 'computational singularity' (as it long has done for
    numeric inputs).
  * predict(&lt;rank-deficient lm&gt;, newdata=*) now obeys a new argument
    rankdeficient, with new default "warnif", warning only if there
    are non-estimable cases in newdata.  Other options include
    rankdeficient = "NA", predicting NA for non-estimable newdata
    cases.  This addresses PR#15072 by Russ Lenth and is based on his
    original proposal and discussions in PR#16158 also by David Firth
    and Elin Waring.  Still somewhat experimental.
  * Rgui console implementation now works better with the NVDA screen
    reader when the full blinking cursor is selected.  The underlying
    improvements in cursor handling may help also other screen
    readers on Windows.
  * The drop-field control in GraphApp can now be left with the TAB
    key and all controls can be navigated in the reverse order using
    the Shift+TAB key, improving accessibility of the Rgui
    configuration editor.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now fully accurate
    (instead of to "only" minimally five digits).
  * demo(error.catching) now also shows off withWarnings() and
    tryCatchWEMs().
  * As an experimental feature the placeholder _ can now also be used
    in the rhs of a forward pipe |&gt; expression as the first argument
    in an extraction call, such as _$coef. More generally, it can be
    used as the head of a chain of extractions, such as _$coef[[2]].
  * Spaces in the environment variable used to choose the R session's
    temporary directory (TMPDIR, TMP and TEMP are tried in turn) are
    now fatal.  (On Windows the 'short path' version of the path is
    tried and used if that does not contain a space.)
  * all.equal.numeric() gets a new optional switch giveErr to return
    the numeric error as attribute.  Relatedly,
    stopifnot(all.equal&lt;some&gt;(a, b, ..)) is as "smart" now, as
    stopifnot(all.equal(....)) has been already, thus allowing
    customized all.equal&lt;Some&gt;() wrappers.
  * R on Windows is now able to work with path names longer than 260
    characters when these are enabled in the system (requires at
    least Windows 10 version 1607).  Packages should be updated to
    work with long paths as well, instead of assuming PATH_MAX to be
    the maximum length.  Custom front-ends and applications embedding
    R need to update their manifests if they wish to allow this
    feature.  See
    &lt;https://blog.r-project.org/2023/03/07/path-length-limit-on-windows&gt;
    for more information.
  * 'Object not found' and 'Missing argument' errors now give a more
    accurate error context. Patch provided by Lionel Henry in
    PR#18241.
  * The @ operator is now an S3 generic. Based on contributions by
    Tomasz Kalinowski in PR#18482.
  * New generic chooseOpsMethod() provides a mechanism for objects to
    resolve cases where two suitable methods are found for an Ops
    Group Generic. This supports experimenting with alternative
    object systems. Based on contributions by Tomasz Kalinowski in
    PR#18484.
  * inherits(x, what) now accepts values other than a simple
    character vector for argument what. A new generic, nameOfClass(),
    is called to resolve the class name from what. This supports
    experimenting with alternative object systems. Based on
    contributions by Tomasz Kalinowski in PR#18485.
  * Detection of BLAS/LAPACK in use (sessionInfo()) with FlexiBLAS
    now reports the current backend.
  * The "data.frame" method for subset() now warns about extraneous
    arguments, typically catching the use of = instead of == in the
    subset expression.
  * Calling a:b when numeric a or b is longer than one may now be
    made into an error by setting environment variable
    _R_CHECK_LENGTH_COLON_ to a true value, along the proposal in
    PR#18419 by Henrik Bengtsson.
  * density(x, weights = *) now warns if automatic bandwidth
    selection happens without using weights; new optional warnWbw may
    suppress the warning.  Prompted by Christoph Dalitz' PR#18490 and
    its discussants.
  * rm(list = *) is faster and more readable thanks to Kevin Ushey's
    PR#18492.
  * The plot.lm() function no longer produces a normal Q-Q plot for
    GLMs. Instead it plots a half-normal Q-Q plot of the absolute
    value of the standardized deviance residuals.
  * The print() method for class "summary.glm" no longer shows
    summary statistics for the deviance residuals by default.  Its
    optional argument show.residuals can be used to show them if
    required.
  * The tapply() function now accepts a data frame as its X argument,
    and allows INDEX to be a formula in that case. by.data.frame()
    similarly allows INDICES to be a formula.
  * The performance of df[j] &lt;- value (including for missing j) and
    write.table(df) has been improved for data frames df with a large
    number of columns.  (Thanks to Gabriel Becker's PR#18500,
    PR#18503 and discussants, prompted by a report from Toby Dylan
    Hocking on the R-devel mailing list.)
  * The matrix multiply operator %*% is now an S3 generic, belonging
    to new group generic matrixOps.  From Tomasz Kalinowski's
    contribution in PR#18483.
  * New function array2DF() to convert arrays to data frames,
    particularly useful for the list arrays created by tapply().
  DATES and TIMES:
  * On platforms where (non-UTC) datetimes before 1902 (or before
    1900 as with system functions on recent macOS) are guessed by
    extrapolating time zones from 1902-2037, there is a warning at
    the first use of extrapolation in a session.  (As all time zones
    post 2037 are extrapolation, we do not warn on those.)
  * (Platforms using --with-internal-tzone, including Windows and by
    default macOS). How years are printed in dates or date-times can
    be controlled by environment variable R_PAD_YEARS_BY_ZERO.  The
    default remains to pad to 4 digits by zeroes, but setting value
    no gives no padding (as used by default by glibc).
  * strftime() tries harder to determine the offset for the "%z"
    format, and succeeds on the mainstream R platforms.
  * strftime() has a limit of 2048 bytes on the string produced -
    attempting to exceed this is an error.  (Previously it silently
    truncated at 255 bytes.)
  * sessionInfo() records (and by default prints) the system time
    zone as part of the locale information.  Also, the source
    (system/internal) of the date-time conversion and printing
    functions.
  * Objects of class "POSIXlt" created in this version of R always
    have 11 components: component zone is always set, and component
    gmtoff is set for times in UTC and usually set on the (almost
    all) platforms which have C-level support, otherwise is NA.
  * There are comprehensive validity checks on the structure of
    objects of class "POSIXlt" when converting (including formatting
    and printing).  (This avoids mis-conversions of hand-crafted
    objects.)
  * There is some support for using the native date-time routines on
    macOS: this is only viable on recent versions (e.g. 12.6 and 13)
    and does get wrong some historical changes (before 1900, during
    WWII).  Use of --with-internal-tzone remains the default.
  * as.POSIXct(&lt;numeric&gt;) and as.POSIXlt(.) (without specifying
    origin) now work.  So does as.Date(&lt;numeric&gt;).
  * as.Date.POSIXct(., tz) now treats several tz values, notably
    "GMT" as equivalent to "UTC", proposed and improved by Michael
    Chirico and Joshua Ulrich in PR#17674.
  * Experimental balancePOSIXlt() utility allows using "ragged" and
    or out-of-range "POSIXlt" objects more correctly, e.g., in
    subsetting and subassignments.  Such objects are now documented.
    More experimentally, a "POSIXlt" object may have an attribute
    "balanced" indicating if it is known to be filled or fully
    balanced.
  * Functions axis.Date() and axis.POSIXct() are rewritten to gain
    better default tick locations and better default formats by using
    prettyDate(). Thanks to Swetlana Herbrandt.
  * The mapping of Windows' names for time zones to IANA's 'Olson'
    names has been updated.  When ICU is available (it is by
    default), it is used to get a mapping for the current region set
    in Windows.  This can be overridden by setting environment
    variable TZ to the desired Olson name - see OlsonNames() for
    those currently available.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 16
    and so packages that provide graphics devices should be
    reinstalled.
  * The grDevices and grid packages have new functions for rendering
    typeset glyphs, primarily: grDevices::glyphInfo() and
    grid::grid.glyph().
    Rendering of typeset glyphs is only supported so far on the
    Cairo-based graphics devices and on the pdf() and quartz()
    devices.
  * The defined behaviour for "clear" and "source" compositing
    operators (via grid::grid.group()) has been changed (to align
    better with simple interpretation of original Porter-Duff
    definitions).
  * Support for gradients, patterns, clipping paths, masks, groups,
    compositing operators, and affine transformations has been added
    to the quartz() device.
  INSTALLATION on a UNIX-ALIKE:
  * A system installation of generic LAPACK 3.10.0 or later will be
    preferred to the version in the R sources.
    configure option --with-lapack=no (equivalently --without-lapack)
    forces compilation of the internal LAPACK sources.
    If --with-lapack is not specified, a system liblapack is looked
    for and used if it reports version 3.10.0 or later and does not
    contain BLAS routines.
    Packages using LAPACK will need to be reinstalled if this changes
    to using an external library.
  * On aarch64 Linux platforms using GCC, configure now defaults to
  - fPIC (instead of -fpic), as desired in PR#18326.
  * configure now checks conversion of datetimes between POSIXlt and
    POSIXct around year 2020.  Failure (which has been seen on
    platforms missing tzdata) is fatal.
  * If configure option --with-valgrind-instrumentation is given
    value 1 or 2, option --with-system-valgrind-headers is now the
    default and ignored (with a warning).  It is highly recommended
    that the system headers are installed alongside valgrind: they
    are part of its packaging on some Linux distributions and
    packaged separately (e.g. in the valgrind-devel RPM) on others.
    configure will give a warning if they are not found.
    The system headers will be required in a future release of R to
    build with valgrind instrumentation.
  * libcurl 8.x is now accepted by configure: despite a change in
    major version number it changes neither API nor ABI.
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools43, an update of the Rtools42 toolchain.  It is
    based on gcc 12 and newer versions of MinGW-W64, binutils and
    libraries.  At this time R-devel can still be built using
    Rtools42 without changes, but when R-devel is installed via the
    installer, it will by default look for Rtools43.
  * Old make targets rsync-extsoft and 32-bit ones that are no longer
    needed have been removed.
  * Default builds (including for packages) no longer select C99.
    Thus the C standard used is the default for the compiler, which
    for the toolchain in Rtools43 is C17.  (This is consistent with
    Unix builds.)
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++17 where
    available (which it is on all currently checked platforms): if
    not C++14 or C++11 is used if available otherwise C++ is not
    supported.
  * USE_FC_LEN_T is the default: this uses the correct
    (compiler-dependent) prototypes for Fortran BLAS/LAPACK routines
    called from C/C++, and requires adjustment of many such calls -
    see 'Writing R Extensions' SS6.6.1.
  * There is initial support for C++23 as several compilers are now
    supporting -std=c++23 or -std=c++2b or similar.  As for C++20,
    there no additional configure checks for C++23 features beyond a
    check that the compiler reports a __cplusplus value greater than
    that in the C++20 standard.  C++ feature tests should be used.
  * There is support for a package to indicate the version of the C
    standard which should be used to compile it, and for the
    installing user to specify this.  In most cases R defaults to the
    C compiler's default standard which is C17 (a `bug-fix' of C11) -
    earlier versions of R or compilers may have defaulted to C99.
    Current options are:
    USE_C17 Use a standard that is at most C17.  The intention is to
    allow legacy packages to still be installed when later C
    standards become the default, including packages using new
    keywords as identifiers or with K&amp;R-style function
    declarations.  This will use C17 if available, falling back
    to C11.
    USE_C90 Use the C90 (aka C89) standard.  (As that standard did
    not require compilers to identify that version, all we can
    verify is that the compiler does not claim to be using a
    later standard.  It may accept C99 features - for example
    clang accepts // to make comments.)
    USE_C99 Use the C99 standard. This should be rarely needed - it
    avoids the few new features of C11/C17 which can be useful if
    a package assumes them if C17 is specified and they are not
    implemented.
    USE_C23 Use C23 (or in future, later).  Compiler/library support
    for C23 is still being implemented, but LLVM clang from
    15.0.0 and the upcoming GCC 13 have quite extensive support.
    These can be specified as part of the SystemRequirements field in
    the package's DESCRIPTION file or _via_ options --use-C17 and so
    on of R CMD INSTALL and R CMD SHLIB.
    For further details see "Writing R Extensions" SS1.2.5.
  * (Windows) A src/Makefile.ucrt or src/Makefile.win file is now
    included after R_HOME/etcR_ARCH/Makeconf and so no longer needs
    to include that file itself.  Installation of a package with such
    a file now uses a site Makevars file in the same way as a package
    with a src/Makevars.win file would.
  * configure is now passed crucial variables such as CC and CFLAGS
    in its environment, as many packages were not setting them (as
    documented in 'Writing R Extensions' SS1.2).
    This has most effect where configure is used to compile parts of
    the package - most often by cmake or libtool which obfuscate the
    actual compile commands used.
    Also used for configure.win and configure.ucrt on Windows.
  FORTRAN FLAGS:
  * The flag -fno-optimize-sibling-calls is no longer forced for
    gfortran 7 and later.  It should no longer be needed now using
    'hidden' character-length arguments when calling BLAS/LAPACK
    routines from C/C++ is the default even for packages.  (Unless
    perhaps packages call Fortran code from C/C++ without using R's
    headers and without allowing for these arguments.)
  C-LEVEL FACILITIES:
  * The deprecated S-compatibility macros DOUBLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * The deprecated legacy typedefs of Sint and Sfloat in header R.h
    are no longer defined, and that header no longer includes header
    limits.h from C nor climits from C++.
  * New macro CAD5R() is provided in Rinternals.h and used in a few
    places in the R sources.
  * ALTREP now supports VECSXP vectors. Contributed by Gabor Csardi
    in PR#17620.
  * The Rcomplex definition (in header R_ext/Complex.h) has been
    extended to prevent possible mis-compilation when interfacing
    with Fortran (PR#18430).  The new definition causes compiler
    warnings with static initializers such as {1, 2}, which can be
    changed to {.r=1, .i=2}.
    Using the new definition from C++ depends on compiler extensions
    supporting C features that have not been incorporated into the
    C++ standards but are available in g++ and clang++: this may
    result in C++ compiler warnings but these have been worked around
    for recent versions of common compilers (GCC, Apple/LLVM clang,
    Intel).
    It is intended to change the inclusion of header R_ext/Complex.h
    by other R headers, so C/C++ code files which make use of
    Rcomplex should include that header explicitly.
  UTILITIES:
  * R CMD check does more checking of package .Rd files, warning
    about invalid email addresses and (some) invalid URIs and noting
    empty \item labels in description lists.
  * R CMD check now also reports problems when reading package news
    in md (file NEWS.md) and (optionally) plain text (file NEWS)
    formats.
  * _R_CHECK_TIMINGS_ defaults to a value from the environment even
    for R CMD check --as-cran; this allows for exceptionally fast or
    slow platforms.
    It now applies to checking PDF and HTML versions of the manuals,
    and 'checking CRAN incoming feasibility'.
  * R CMD check can optionally (but included in --as-cran) check
    whether HTML math rendering _via_ KaTeX works for the package .Rd
    files.
  * Non-interactive debugger invocations can be trapped by setting
    the environment variable _R_CHECK_BROWSER_NONINTERACTIVE_ to a
    true value.  This is enabled by R CMD check --as-cran to detect
    the use of leftover browser() statements in the package.
  * The use of sprintf and vsprintf from C/C++ has been deprecated in
    macOS 13 and is a known security risk.  R CMD check now reports
    (on all platforms) if their use is found in compiled code:
    replace by snprintf or vsnprintf respectively. [*NB:* whether
    such calls get compiled into the package is platform-dependent.]
  * Where recorded at installation, R CMD check reports the C and
    Fortran compilers used to build R.
    It reports the OS in use (if known, as given by osVersion) as
    well as that R was built for.
    It notes if a C++ standard was specified which is older than the
    current default: many packages have used C++11 to mean 'not
    C++98' - as C++11 is the minimum supported since R 4.0.0, that
    specification can probably be removed.
  * R CMD INSTALL reports the compilers (and on macOS, the SDK) used,
    and this is copied to the output of R CMD check.
    Where a C++ standard is specified, it is reported.
  * R CMD check's 'checking compilation flags in Makevars' has been
    relaxed to accept the use of flags such as -std=f2008 in
    PKG_FFLAGS.
  * tools::buildVignettes() has a new argument skip, which is used by
    R CMD check to skip (and note) vignettes with unavailable
    \VignetteDepends (PR#18318).
  * New generic .AtNames() added to enable class-specific completions
    after @. The formerly internal function findMatches() is now
    exported, mainly for use in methods for .DollarNames() and
    .AtNames().
  DEPRECATED AND DEFUNCT:
  * default.stringsAsFactors() is defunct.
  * Calling as.data.frame.&lt;class&gt;() directly (for 12 atomic classes)
    is going to be formally deprecated, currently activated by
    setting the environment variable
    _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ to non-empty, which also
    happens in R CMD check --as-cran.
  BUG FIXES:
  * Hashed environments with sizes less than 5 can now grow.
    (Reported to R-devel by Duncan Garmonsway.)
  * as.character(&lt;Rd&gt;, deparse = TRUE) failed to re-escape curly
    braces in LaTeX-like text.  (Reported by Hadley Wickham in
    PR#18324.)
  * library() now passes its lib.loc argument when requiring Depends
    packages; reported (with fix) in PR#18331 by Mikael Jagan.
  * R CMD Stangle: improved message about 'Output' files.
  * head(x, n) and tail(x, n) now signal an error if n is not
    numeric, instead of incidentally "working" sometimes returning
    all of x.  Reported and discussed by Colin Fay, in PR#18357.
  * The "lm" method for summary() now gives the correct F-statistic
    when the model contains an offset.  Reported in PR#18008.
  * C() and `contrasts&lt;-`() now preserve factor level names when
    given a function object (as opposed a function name which did
    preserve names). Reported in PR#17616.
  * c(a = 1, 2)[[]] no longer matches 2 but rather signals a
    _classed_ error.  Reported and analysed by Davis Vaughan in
    PR#18367, a duplicate of PR#18004, by Jan Meis et al.  For
    consistency, NULL[[]] is also erroneous now.  x[[]] &lt;- v gives an
    error of the same class "MissingSubscriptError".
  * The relist() function of utils now supports NULL elements in the
    skeleton (PR#15854).
  * ordered(levels = *) (missing x) now works analogously to factor(,
    ordered=TRUE); reported (with fix) by Achim Zeileis in PR#18389.
  * User-defined Rd macro definitions can now span multiple lines,
    thanks to a patch from Duncan Murdoch. Previously, the Rd parser
    silently ignored everything after the first line.
  * Plain-text help (tools::Rd2txt()) now preserves an initial blank
    line for text following description list items.
  * tools::Rd2HTML() and tools::Rd2latex() no longer split \arguments
    and \value lists at Rd comments.
  * tools::Rd2latex() now correctly handles optional text outside
    \items of argument lists as well as bracketed text at the
    beginning of sections, e.g., \value{[NULL]}.
  * as.character(&lt;POSIXt&gt;) now behaves more in line with the methods
    for atomic vectors such as numbers, and is no longer influenced
    by options().  Ditto for as.character(&lt;Date&gt;).  The
    as.character() method gets arguments digits and OutDec with
    defaults _not_ depending on options().  Use of as.character(*,
    format = .) now warns.
  * Similarly, the as.character.hexmode() and *.octmode() methods
    also behave as good citizen methods and back compatibility option
    keepStr = TRUE.
  * The as.POSIXlt(&lt;POSIXlt&gt;) and as.POSIXct(&lt;POSIXct&gt;) default
    methods now do obey their tz argument, also in this case.
  * as.POSIXlt(&lt;Date&gt;) now does apply a tz (time zone) argument, as
    does as.POSIXct(); partly suggested by Roland Fuss on the R-devel
    mailing list.
  * as.Date.POSIXlt(x) now also works when the list components are of
    unequal length, aka "partially filled" or "ragged".
  * expand.model.frame() looked up variables in the wrong environment
    when applied to models fitted without data.  Reported in
    PR#18414.
  * time() now (also) uses the ts.eps = getOption("ts.eps") argument
    and thus by default rounds values very close to the start (or
    end) of a year.  Based on a proposal by Andre"i V. Kostyrka on
    R-help.
  * Printing of a factanal() result with just one factor and sort =
    TRUE now works regularly, fixing PR#17863 by Timothy Bates,
    thanks to the 'R Contributors' working group.
  * Printing 0-length objects of class "factor", "roman", "hexmode",
    "octmode", "person", "bibentry", or "citation" now prints
    something better, one of which fixes PR#18422, reported by
    Benjamin Feakins.
  * Sys.timezone() queries timedatectl only if systemd is loaded;
    addressing a report by Jan Gorecki in PR#17421.
  * The formula method of cor.test() had scoping problems when
    environment(formula) was not the calling environment; reported
    with a patch proposal by Mao Kobayashi in PR#18439.
  * attach() of an environment with active bindings now preserves the
    active bindings.  Reported by Kevin Ushey in PR#18425.
  * BLAS detection now works also with system-provided libraries not
    available as regular files.  This fixes detection of the
    Accelerate framework on macOS since Big Sur.  Reported by David
    Novgorodsky.
  * download.file() gives a helpful error message in case of an
    invalid download.file.method option, thanks to Colin Fay's report
    in PR#18455.
  * Sporadic crashes of Rterm when using completion have been fixed.
  * Rprof() is now more reliable.  A livelock in thread
    initialization with too short sampling interval has been fixed on
    macOS.  A deadlock in using the C runtime has been fixed on
    Windows.  A potential deadlock has been prevented on Unix.
  * Cursor placement in Rgui now works even after a fixed-width font
    is selected.
  * Mandatory options (options()) are now set on startup so that
    saving and restoring them always works (PR#18372).
  * Package installation, R CMD INSTALL or install.packages(*), now
    parses each of the &lt;pkg&gt;/R/*.R files individually instead of
    first concatenating and then parse()ing the large resulting file.
    This allows parser or syntax errors to be diagnosed with correct
    file names and line numbers, thanks to Simon Dedman's report and
    Bill Dunlap's patch in PR#17859.
    This _does_ require syntactically self contained R source files
    now, fixing another inadvertent bug.
  * predict.lm(&lt;model with offset&gt;) now finds the offset in the
    correct environment, thanks to Andr'e Gillibert's report and patch
    in PR#18456.
  * getInitial(&lt;formula&gt;) now finds the selfStart model in the
    correct environment.  (Reported by Ivan Krylov in PR#18368.)
  * Fix for possible segfault when using recently-added graphics
    features, such as gradients, clipping paths, masks, and groups
    with pdf(file=NULL).
  * class(m) &lt;- class(m) no longer changes a matrix m by adding a
    class _attribute_.
  * packageDate(pkg) now only warns once if there is no pkg.
  * When ts() creates a multivariate time series, "mts", it also
    inherits from "array" now, and is.mts() is documented _and_
    stricter.
  * Rd2txt() now preserves line breaks of \verb Rd content and from
    duplicated \cr.  The former also fixes the rendering of verbatim
    output from Rd \Sexpr in plain-text help.
  * uniroot(f, interval) should no longer wrongly converge _outside_
    the interval in some cases where abs(f(x)) == Inf for an x at the
    interval boundary, thanks to posts by Ben Bolker and Serguei
    Sokol on R-devel.
  * Vectorized alpha handling in palette functions such as in gray(),
    rainbow(), or hcl.colors() works correctly now, thanks to Achim
    Zeileis' report and patch in PR#18476.
  * Formatting and print()ing of bibentry objects has dropped the
    deprecated citation.bibtex.max argument, such that the bibtex
    argument's default for print.bibentry() depends directly on the
    citation.bibtex.max option, whereas in format.bibentry() the
    option no longer applies.
  * Attempting to use a character string naming a foreign function
    entry point in a foreign function call in a package will now
    signal an error if the packages has called R_forceSymbols to
    specify that symbols must be used.
  * An error in table() could permanently set options(warn=2)
    promoting all subsequent warnings to errors.
  * The sigma() function gave misleading results for binary GLMs.  A
    new method for objects of class "glm" returns the square root of
    the estimate of the dispersion parameter using the same
    calculation as summary.glm().
  * bs() and ns() in the (typical) case of automatic knot
    construction, when some of the supposedly inner knots coincide
    with boundary knots, now moves them inside (with a warning),
    building on PR#18442 by Ben Bolker.
  * R CMD on Windows now skips the site profile with --no-site-file
    and --vanilla even when R_PROFILE is set (PR#18512, from Kevin
    Ushey).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1686916800">- CHANGES IN R 4.3.1:
  C-LEVEL FACILITIES:
  * The C-level API version of R's integrate(), Rdqags() in Applic.h,
    now returns the correct number of integrand evaluations neval,
    fixing PR#18515 reported and diagnosed by Stephen Wade.
  * The C prototypes for LAPACK calls dspgv and dtptrs in
    R_exts/Lapack.h had one too many and one too few character length
    arguments - but this has not caused any known issues. To get the
    corrected prototypes, include
    [#]include &lt;Rconfig.h&gt; // for PR18534fixed
    [#]ifdef PR18534fixed
    [#] define usePR18534fix 1
    [#]endif
    [#]include &lt;R_exts/Lapack.h&gt;
    in your C/C++ code (PR#18534).
  INSTALLATION:
  * Many of the checks of esoteric Internet operations and those
    using unreliable external sites have been moved to a new target
    that is not run by default and primarily intended for the core
    developers.  To run them use
    cd tests; make test-Internet-dev
  BUG FIXES:
  * .S3methods(), typically called from methods(), again marks
    methods from package base as visible.
    Also, the visibility of non-base methods is again determined by
    the method's presence in search().
  * tools::Rdiff() is now more robust against invalid strings, fixing
    installation tests on Windows without Rtools installed
    (PR#18530).
  * Fix (new) bug in hcl.colors(2, *), by Achim Zeileis (PR#18523).
  * head(., &lt;illegal&gt;) and tail(..) now produce more useful "Error in
    ...." error messages, fixing PR#18362.
  * Package code syntax on Windows is checked in UTF-8 when UTF-8 is
    the native encoding.
  * na.contiguous(x) now also returns the first run, when it is at
    the beginning and there is a later one of the same length;
    reported to R-devel, including a fix, by Georgi Boshnakov.
    Further, by default, it modifies only an existing attr(*,"tsp")
    but otherwise no longer sets one.
  * chol(&lt;not pos.def&gt;, pivot = &lt;T|F&gt;) now gives a correct error or
    warning message (depending on pivot), thanks to Mikael Jagan's
    (PR#18541).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1699012800">- CHANGES IN R 4.3.2:
  NEW FEATURES:
  * The default initialization of the "repos" option from the
    repositories file at startup can be skipped by setting
    environment variable R_REPOSITORIES to NULL such that
    getOption("repos") is empty if not set elsewhere.
  * qr.X() is now an implicit S4 generic in methods.
  * iconv(to = "ASCII//TRANSLIT") is emulated using substitution on
    platforms which do not support it (notably Alpine Linux).  This
    should give a human-readable conversion in ASCII on all platforms
    (rather than NA_character_).
  * trans3d() gains options continuous and verbose addressing the
    problem of possible "wrap around" when projecting too long
    curves, as reported by Achim Zeileis in PR#18537.
  * tools::showNonASCII() has been rewritten to work better on macOS
    14 (which has a changed implementation of iconv()).
  * tiff(type = "quartz") (the default on macOS) now warns if
    compression is specified: it continues to be ignored.
  INSTALLATION on a UNIX-ALIKE:
  * There is some support for building with Intel's LLVM-based
    compilers on x86_64 Linux, such as (C) icx, (C++) ipcx and
    (Fortran) ifx from oneAPI 2023.x.y.
  * There is support for using LLVM's flang-new as the Fortran
    compiler from LLVM 16.0.x (preferably 17.0.0 or later).
  UTILITIES:
  * R CMD check reports the use of the Fortran 90 random number
    generator RANDOM_NUMBER() and the subroutines to initialize it.
    'Writing R Extensions' has example code to use R's RNGs from
    Fortran.
  BUG FIXES:
  * substr(x, n, L) &lt;- cc now works (more) correctly for multibyte
    UTF-8 strings x when L &gt; nchar(x), thanks to a report and patch
    by 'Architect 95'.
  * contrib.url(character()) now returns 0-length character() as
    documented, which also avoids spurious warnings from
    available.packages() et al. in the edge case of an empty vector
    of repository URLs.
  * readChar(., 4e8) no longer fails, thanks to Kodi Arfer's report
    (PR#18557).
  * lapply(&lt;list&gt;, as.data.frame) no longer warns falsely for some
    base vector components.
  * Communication between parent and child processes in the multicore
    part of parallel could fail on platforms that do not support an
    arbitrarily large payload in system functions read()/write() on
    pipes (seen on macOS where a restriction to INT_MAX bytes is
    documented, without doing a partial read unlike Linux). The
    payload is now split into 1Gb chunks to avoid that problem.
    (PR#18571)
  * qqplot(x,y, conf.level=.) gives better confidence bounds when
    length(x) != length(y), thanks to Alexander Ploner's report and
    patch proposal (PR#18557).
  * norm(&lt;0-length&gt;, "2") now gives zero instead of an error, as all
    the other norm types, thanks to Mikael Jagan's PR#18542.
  * Build-stage Rd macros \packageAuthor and \packageMaintainer now
    process Authors@R, fixing NA results when the package DESCRIPTION
    omits Author and Maintainer fields.
  * Formatting and printing complex numbers could give things like
    0.1683-0i because of rounding error: -0i is now replaced by +0i.
  * postscript() refused to accept a title comment containing the
    letter "W" (PR#18599).
  * isoreg(c(1,Inf)) signals an error instead of segfaulting, fixing
    PR#18603.
  * tiff(type = "Xlib") was only outputting the last page of
    multi-page plots.
  * tools::latexToUtf8() again knows about \~{n} and other letters
    with tilde, fixing a regression in R 4.3.0, and about \^{i} as an
    alternative to \^{\i} (similarly with other accents).
    Furthermore, LaTeX codes for accented I letters are now correctly
    converted, also fixing related mistakes in
    tools::encoded_text_to_latex().
  * tar(*, tar = "internal") no longer creates out-of-spec tar files
    in the very rare case of user or group names longer than 32
    bytes, fixing PR#17871 with thanks to Ivan Krylov.
  * When using the "internal" timezone datetime code, adding a
    fraction of a second no longer adds one second, fixing PR#16856
    from a patch by Ivan Krylov.
  * tools::checkRd() no longer produces spurious notes about
    "unnecessary braces" from multi-line Rd results of \Sexpr macros.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1709208000">- CHANGES IN R 4.3.3:
  NEW FEATURES:
  * iconv() now fixes up variant encoding names such as "utf8"
    case-insensitively.
  DEPRECATED AND DEFUNCT:
  * The legacy encoding = "MacRoman" is deprecated in pdf() and
    postscript(): support was incomplete in earlier versions of R.
  BUG FIXES:
  * Arguments are now properly forwarded to methods on S4 generics
    with ... in the middle of their formal arguments. This was broken
    for the case when a method introduced an argument but did not
    include ... in its own formals. Thanks to Herv'e Pag`es for the
    report PR#18538.
  * Some invalid file arguments to pictex(), postscript() and xfig()
    opened a file called NA rather than throw an error.  These
    included postscript(NULL) (which some people expected to work
    like pdf(NULL)).
  * Passing filename = NA to svg(), cairo_pdf(), cairo_ps() or the
    Cairo-based bitmap devices opened a file called NA: it now throws
    an error.
  * quartz(file = NA) opened a file called NA, including when used as
    a Quartz-based bitmap device.  It now gives an error.
  * rank(&lt;long vector&gt;) now works, fixing PR#18617, thanks to Ilia
    Kats.
  * seq.int() did not adequately check its length.out argument.
  * match(&lt;POSIXct&gt;, .) is correct again for differing time zones,
    ditto for "POSIXlt", fixing PR#18618 reported by Bastian Klein.
  * drop.terms(*, dropx = &lt;0-length&gt;) now works, fixing PR#18563 as
    proposed by Mikael Jagan.
  * drop.terms(*) keeps + offset(.) terms when it should, PR#18565,
    and drop.terms() no longer makes up a response, PR#18566, fixing
    both bugs thanks to Mikael Jagan.
  * getS3method("t", "test") no longer finds the t.test() function,
    fixing PR#18627.
  * pdf() and postscript() support for the documented Adobe encodings
    "Greek" and "Cyrilllic" was missing (although the corresponding
    Windows' codepages could be used).
  * Computations of glyph metric information for pdf() and
    postscript() did not take into account that transliteration could
    replace one character by two or more (only seen on macOS 14) and
    typically warned that the information was not known.
  * rank(x) no longer overflows during integer addition, when
    computing rank average for largish but not-yet long vector x,
    fixing PR#18630, thanks to Ilia Kats.
  * list.files() on Windows now returns also files with names longer
    that 260 bytes (the Windows limit is 260 characters).
    Previously, some file names particularly with 'East Asian'
    characters were omitted.
  * cov2cor(&lt;0 x 0&gt;) now works, fixing PR#18423 thanks to Mikael
    Jagan and Elin Waring.
  * cov2cor(&lt;negative diagonal&gt;) and similar now give one warning
    instead of two, with better wording, fixing PR#18424 thanks to
    Mikael Jagan.
  * tools:: startDynamicHelp() now ensures port is in proper range,
    fixing PR#18645.
  * pbeta(x, a,b) is correct now for x=0 or 1 in the boundary cases
    where a or b or both are 0, fixing PR#18672 thanks to Michael
    Fay.
  * pmatch(x, table) for large table, also called for data frame row
    selection, dfrm[nm, ], is now interruptible, fixing PR#18656.
  * predict(&lt;rank-deficient lm&gt;, newdata=*) fix computing of nbasis,
    see Russ Lenth's comment 29 in PR#16158.
  * Added a work-around for a bug in macOS 14.3.1 and higher which
    prevents R plots in the Quartz Cocoa device from updating on
    screen.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1713960000">- CHANGES IN R 4.4.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Startup banners, R --version, sessionInfo() and R CMD check no
    longer report (64-bit) as part of the platform as this is almost
    universal - the increasingly rare 32-bit platforms will still
    report (32-bit).
    On Windows, ditto for window titles.
  * is.atomic(NULL) now returns FALSE, as NULL is not an atomic
    vector.  Strict back-compatibility would replace is.atomic(foo)
    by (is.null(foo) || is.atomic(foo)) but should happen only
    sparingly.
  NEW FEATURES:
  * The confint() methods for "glm" and "nls" objects have been
    copied to the stats package.  Previously, they were stubs which
    called versions in package MASS. The MASS namespace is no longer
    loaded if you invoke (say) confint(glmfit).  Further, the "glm"
    method for profile() and the plot() and pairs() methods for class
    "profile" have been copied from MASS to stats.  (profile.nls()
    and plot.profile.nls() were already in stats.)
  * The confint() and profile methods for "glm" objects have gained a
    possibility to do profiling based on the Rao Score statistic in
    addition to the default Likelihood Ratio. This is controlled by a
    new test = argument.
  * The pairs() method for "profile" objects has been extended with a
    which = argument to allow plotting only a subset of the
    parameters.
  * The "glm" method for anova() computes test statistics and
    p-values by default, using a chi-squared test or an F test
    depending on whether the dispersion is fixed or free.  Test
    statistics can be suppressed by giving argument test a false
    logical value.
  * In setRepositories() the repositories can be set using their
    names via name = instead of index ind =.
  * methods() and .S3methods() gain a all.names option for the (rare)
    case where functions starting with a . should be included.
  * Serializations can now be interrupted (e.g., by Ctrl-C on a
    Unix-alike) if they take too long, e.g., from save.image(),
    thanks to suggestions by Ivan Krylov and others on R-devel.
  * New startup option --max-connections to set the maximum number of
    simultaneous connections for the session.  Defaults to 128 as
    before: allowed values up to 4096 (but resource limits may in
    practice restrict to smaller values).
  * R on Windows (since Windows 10 2004) now uses the new Segment
    Heap allocator. This may improve performance of some
    memory-intensive applications.
  * When R packages are built, typically by R CMD build &lt;pkg&gt;, the
    new --user=&lt;build_user&gt; option overrides the (internally
    determined) user name, currently Sys.info()["user"] or LOGNAME.
    This is a (modified) fulfillment of Will Landau's suggestion in
    PR#17530.
  * tools::testInstalledBasic() gets new optional arguments outDir
    and testSrcdir, e.g., allowing to use it in a &lt;builddir&gt; !=
    &lt;srcdir&gt; setup, and in standard "binary" Windows installation
  * if* a source tests/ folder is present.
  * range(&lt;DT_with_Inf&gt;, finite = TRUE) now work for objects of class
    "Date", "POSIXct", and "POSIXlt" with infinite entries,
    analogously to range.default(), as proposed by Davis Vaughan on
    R-devel.  Other range()-methods can make use of new function
    .rangeNum().
  * New .internalGenerics object complementing .S3PrimitiveGenerics,
    for documentation and low-level book-keeping.
  * grid() now invisibly returns the x- and y- coordinates at which
    the grid-lines were drawn.
  * norm(., type) now also works for complex matrices.
  * kappa(., exact = TRUE, norm = *) now works for all norms and also
    for complex matrices.  In symmetric / triangular cases, the new
    argument uplo = "U" | "L" allows the upper or lower triangular
    part to be specified.
  * memDecompress(type = "unknown") recognizes compression in the
    default 'zlib' format as used by memCompress(type = "gzip").
  * memCompress() and memDecompress() will use the libdeflate library
    (&lt;https://github.com/ebiggers/libdeflate&gt;) if installed.  This
    uses the same type of compression for type = "gzip" but is 1.5-2x
    faster than the system libz library on some common platforms: the
    speed-up may depend on the library version.
  * diff() for objects of class "Date", "POSIXct", and "POSIXlt"
    accepts a units argument passed via ....
  * Dynamic help now does a much better job of rendering package
    DESCRIPTION metadata.
  * Rprof() gains an event argument and support for elapsed (real)
    time profiling on Unix (PR#18076).
  * filled.contour() gains a key.border argument.
  * tools::update_pkg_po() gets arguments pot_make and mo_make for
    _not_ re-making the corresponding files, and additionally a
    verbose argument.
  * Hexadecimal string colour specifications are now accepted in
    short form, so, for example, we can use "#123", which is
    equivalent to "#112233".
    Thanks to MikeFC for the original idea and Ella Kaye, Malcolm
    Barrett, George Stagg, and Hanne Oberman for the patch.
  * Plain-text help shows \var markup by angle brackets.
  * The new experimental primitive function declare() is intended to
    eventually allow information about R code to be communicated to
    the interpreter, compiler, and code analysis tools. The syntax
    for declarations is still being developed.
  * Functions psmirnov(), qsmirnov() and rsmirnov() in package stats
    have had argument two.sided renamed to alternative, to take into
    account that the permutation distributions of the one-sided
    statistics can be different in the case of ties.  Consequence of
    PR#18582.
  * sort() is now an implicit S4 generic in methods.
  * Formatting and printing, format(z), print(z), of complex vectors
    z no longer zap relatively small real or imaginary parts to zero,
    fixing PR#16752.  This is an API change, as it was documented
    previously to round real and imaginary parts together on purpose,
    producing nicer looking output.  As mentioned, e.g. in the PR,
    this change is compatible with many other "R-like" programming
    environments.
    We have simplified the internal code and now basically format the
    real and imaginary parts independently of each other.
  * New experimental functions Tailcall() and Exec() to support
    writing stack-space-efficient recursive functions.
  * Where characters are attempted to be plotted by pdf(),
    postscript() and xfig() which are not in the selected 8-bit
    character set (most often Latin-1) and the R session is using a
    UTF-8 locale, the warning messages will show the UTF-8 character
    rather than its bytes and one dot will be substituted per
    character rather than per byte.  (Platforms whose iconv() does
    transliteration silently plot the transliteration.)
    In a UTF-8 locale some transliterations are now done with a
    warning (e.g., dashes and Unicode minus to hyphen, ligatures are
    expanded, permille (‰) is replaced by o/oo), although the OS may
    have got there first.  These are warnings as they will continue
    to be replaced by dots in earlier versions of R.
  * The matrix multiplication functions crossprod() and tcrossprod()
    are now also primitive and S3 generic, as %*% had become in R
    4.3.0.
  * source() and example() have a new optional argument catch.aborts
    which allows continued evaluation of the R code after an error.
  * The non-Quartz tiff() devices allow additional types of
    compression if supported by the platform's libtiff library.
  * The list of base and recommended package names is now provided by
    tools::standard_package_names().
  * cairo_pdf() and cairo_ps() default to onefile = TRUE to closer
    match pdf() and postscript().
  * New option catch.script.errors provides a documented way to catch
    errors and then continue in non-interactive use.
  * L %||% R newly in base is an expressive idiom for the phrases
    if(!is.null(L)) L else R or if(is.null(L)) R else L.
  * The return value from warnings() now always inherits from
    "warnings" as documented, now also in the case of no warnings
    where it previously returned NULL.
  * as.complex("1i") now returns 0 + 1i instead of NA with a warning.
  * z &lt;- c(NA, 1i) now keeps the imaginary part Im(z[1]) == 0, no
    longer coercing to NA_complex_.  Similarly, cumsum(z) correctly
    sums real and imaginary parts separately, i.e., without
    "crosstalk" in case of NAs.
  * On Alpine Linux iconv() now maps "latin2", "latin-2", "latin9"
    and "latin-9" to encoding names the OS knows about
    (case-insensitively).
  * iconv(sub = "Unicode") now always zero-pads to four (hex) digits,
    rather than to 4 or 8.  (This seems to have become the convention
    once Unicode restricted the number of Unicode points to 2^21 - 1
    and so will never need more than 6 digits.)
  * NCOL(NULL) now returns 0 instead of 1, for consistency with
    cbind().
  * The information for the Euro glyph missing from the Adobe .afm
    files for the Courier, Helvetica and Times families has been
    copied from their URW equivalents - this will improve vertical
    centring in the pdf() and postscript() devices.
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.12.0.  The changes are almost entirely cosmetic.
  * The included LAPACK sources have been updated to version 3.12.0
    and some further double-complex routines added.
  * There are new font families for the 2014--5 URW 2.0 fonts (see
    ?pdf) which are included in recent versions of Ghostscript.
    These have font widths for most Greek glyphs and a few others
    which were missing from the original versions (whose font
    families remain available for reproducibility, although
    Ghostscript-based viewers will render using the 2.0 versions).
  * Improve the large-n efficiency of as.matrix(&lt;dist&gt;), thanks an R
    contributors effort, notably by Tim Taylor and Heather Turner,
    see PR#18660.
  * The default and numeric methods of all.equal() get a check.class
    option.
  * zapsmall() gets new optional arguments, function mFUN and min.d,
    for extra flexibility; fulfills a wish in PR#18199.  Also, it is
    now an implicit S4 generic in package methods.
  * The Rd filter for aspell() gains an ignore argument.
  * New generic function sort_by(), primarily useful for the
    data.frame method which can be used to sort rows of a data frame
    by one or more columns.
  * The icence headers for the RPC code in src/extra/xdr have been
    updated to use the GPL-compatible licence published by Oracle
    America in 2010.
  * New function pkg2HTML() in tools to create single-page HTML
    reference manuals for R packages.
  * The byte code evaluator now uses less C stack space for recursive
    calls to byte-compiled functions. It also makes more of an effort
    to avoid allocations for scalar return values.
  * New completion option backtick (disabled by default) allows
    non-syntactic completions to be wrapped in backquotes. This is
    currently only useful for Jupyter notebooks via the IRkernel
    package, and may cause problems for other backends.
  INSTALLATION:
  * The parser has been updated to work with bison 3.8.2, which is
    now used for the pre-generated parsers in gram.c, file.c, and
    gramRd.c. A few parser error messages have changed, which may
    affect code that relies on exact messages.
  INSTALLATION on a UNIX-ALIKE:
  * System valgrind headers are now required to use configure option
  - -with-valgrind-instrumentation with value 1 or 2.
  * configure will warn if it encounters a 32-bit build, as that is
    nowadays almost untested.
  * Environment variable R_SYSTEM_ABI is no longer used and so no
    longer recorded in etc/Renviron (it was not on Windows and was
    only ever used when preparing package tools).
  * If the libdeflate library and headers are available, libdeflate
    rather than libz is used to (de)compress R objects in lazy-load
    databases.  Typically tasks spend up to 5% of their time on such
    operations, although creating lazy-data databases is one of the
    exceptions.
    This can be suppressed if the library is available by the
    configure option --without-libdeflate-compression.
  * configure option --enable-lto=check has not worked reliably since
    2019 and has been removed.
  * The minimum autoconf requirement for a maintainer build has been
    increased to autoconf 2.71.
    It is intended to increase this to 2.72 for R 4.5.0: the
    distributed configure file was generated using 2.72.
  * The minimum version requirement for an external LAPACK has been
    reduced to 3.9.0.
  * No default C++ compiler is set if no C++17 compiler is detected:
    there is no longer an automatic fallback to C++14 or C++11.
    Compilers from the last five years should have sufficient
    support: for others macros CXX and CXXSTD can be set in file
    config.site to provide a fallback if needed.
    The Objective-C++ compiler now by default uses the standard
    selected by R for C++ (currently C++17) rather than the default
    standard for the C++ compiler (which on macOS is still C++98).
  INSTALLATION on macOS:
  * A new configure option --with-newAccelerate makes use of Apple's
    'new' BLAS / LAPACK interfaces in their Accelerate framework.
    Those interfaces are only available in macOS 13.3 or later, and
    building requires SDK 13.3 or later (from the Command Line Tools
    or Xcode 14.3 or later).
    By default the option uses new Accelerate for BLAS calls: to also
    use it for LAPACK use option --with-newAccelerate=lapack.  The
    later interfaces provide LAPACK 3.9.1 rather than 3.2.1: 3.9.1 is
    from 2021-04 and does not include the improved algorithms
    introduced in LAPACK 3.10.0 (including for BLAS calls).
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools44, an update of the Rtools43 toolchain.  It is
    based on GCC 13 and newer versions of MinGW-W64, binutils and
    libraries (targeting 64-bit Intel CPUs).  R-devel can no longer
    be built using Rtools43 without changes.
  * Rtools44 has experimental support for 64-bit ARM (aarch64) CPUs
    _via_ the LLVM 17 toolchain using lld, clang/flang-new and
    libc++.
  UTILITIES:
  * R CMD check notes when S4-style exports are used without
    declaring a strong dependence on package methods.
  * tools::checkRd() (used by R CMD check) detects more problems with
    \Sexpr-based dynamic content, including bad nesting of \Sexprs
    and invalid arguments.
  * tools::checkRd() now reports Rd titles and section names ending
    in a period; this is ignored by R CMD check unless environment
    variable _R_CHECK_RD_CHECKRD_MINLEVEL_ is set to -5 or smaller.
  * R CMD check now notes Rd files without an \alias, as long
    documented in 'Writing R Extensions' §1.3.1.  The check for a
    missing \description has been moved from tools::checkRd() to
    tools::checkRdContents().
  * R CMD check now visits inst/NEWS.Rd and OS-specific man
    subdirectories when checking Rd files.
  * tools::checkDocFiles() and tools::checkRdContents() now also
    check internal Rd files by default, but "specially" (ignoring
    missing documentation of arguments).
  * R CMD Rdiff gets option --useEx.
  * R CMD check now warns on non-portable uses of Fortran KIND such
    as INTEGER(KIND=4) and REAL(KIND=8).
    To see the failing lines set environment variable
    _R_CHECK_FORTRAN_KIND_DETAILS_ to a true value.
  * When checking Rd files, R CMD check now notes some of the "lost
    braces" that tools::checkRd() finds.  Typical problems are Rd
    macros missing the initial backslash (e.g., code{...}), in-text
    set notation (e.g., {1, 2}, where the braces need escaping), and
    \itemize lists with \describe-style entries of the form
    \item{label}{description}.
  * R CMD INSTALL (and hence check) will compile C++ code with
  - DR_NO_REMAP if environment variable _R_CXX_USE_NO_REMAP_ is set
    to a true value.  It is planned that this will in future become
    the default for compiling C++.
  * The new built-in Rd macro \dontdiff{} can be used to mark example
    code whose output should be ignored when comparing check output
    to reference output (tests/Examples/&lt;pkg&gt;-Ex.Rout.save).  The
    \dontdiff tag, like \donttest, is _not_ shown on the rendered
    help page, so provides a clean alternative to ##
    IGNORE_RDIFF_(BEGIN|END) comments.
  * R CMD build when there is no NAMESPACE, now uses the recommended
    exportPattern("^[^.]"), instead of exporting everything.
  * R CMD check now warns about non-ASCII characters in the NAMESPACE
    file (in addition to R files). Such packages are not portable and
    may fail to install on some platforms.
  C-LEVEL FACILITIES:
  * Headers R_ext/Applic.h and R-ext/Linpack.h used to include
    R_ext/BLAS.h although this was undocumented and unneeded by their
    documented entry points.  They no longer do so.
  * New function R_missing(), factored out from do_missing(), used to
    fix PR#18579.
  * SEXP type S4SXP has been renamed to OBJSXP to support
    experimenting with alternative object systems.  The S4SXP value
    can still be used in C code but is now deprecated.  Based on
    contributions from the R Consortium's Object-Oriented Programming
    Working Group.
  * New function pow1p(x,y) for accurate (1+x)^y.
  * mkCharLenCE was incorrectly documented to take a size_t length
    but was implemented with int (and character strings in R are
    limited to 2^31 - 1 bytes).
  DEPRECATED AND DEFUNCT:
  * data() no longer handles zipped data from long-defunct (since R
    2.13.0) --use-zip-data installations.
  * The legacy graphics devices pictex() and xfig() are now
    deprecated.  They do not support recent graphics enhancements and
    their font handling is rudimentary. The intention is to retain
    them for historical interest as long as they remain somewhat
    functional.
  * Support for encoding = "MacRoman" has been removed from the pdf()
    and postscript() devices - this was a legacy encoding supporting
    classic macOS up to 2001 and no longer has universal libiconv
    support.
  * is.R() is deprecated as no other S dialect is known to be in use
    (and this could only identify historical dialects, not future
    ones).
    Further information on calls can be obtained by setting the
    environment variable _R_DEPRECATED_IS_R_ to error which turns the
    deprecation warning into an error and so by default gives a
    traceback.  (This is done by R CMD check --as-cran.)
  * UseMethod() no longer forwards local variables assigned in the
    generic function into method call environments before evaluating
    the method body. This makes method calls behave more like
    standard function calls and makes method code easier to analyze
    correctly.
  * The twelve as.data.frame.&lt;class&gt;() methods which were deprecated
    only via _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ and in R CMD
    check --as-cran are formally deprecated now in favour of calling
    as.data.frame() or as.data.frame.vector().  The deprecation
    "check" now works also when as.data.frame() is S4 generic thanks
    to Ivan Krylov.
  * The default method for the directional comparison operators &lt;, &gt;,
    &lt;=, and &gt;= now signals an error when one of the operands is a
    language object, i.e. a symbol or a call.
  * For terms.formula(), deprecate abb and neg.out arguments
    _formally_ in addition to just documenting it.
  BUG FIXES:
  * The methods package is more robust to not being attached to the
    search path.  More work needs to be done.
  * pairwise.t.test() misbehaved when subgroups had 0 DF for
    variance, even with pool.sd = TRUE.  (PR#18594 by Jack Berry).
  * Probability distribution functions [dpq]&lt;distrib&gt;(x, *), but also
    bessel[IKJY](x, .) now consistently preserve attributes(x) when
    length(x) == 0, e.g., for a 2 x 0 matrix, thanks to Karolis
    Koncevičius' report PR#18509.
  * Group "Summary" computations such as sum(1:3, 4, na.rm = 5, NA,
    7, na.rm = LL) now give an error instead of either 17 or NN for
    LL true or false, as proposed by Ivan Krylov on the R-devel
    mailing list.  (This also means it is now an error to specify
    na.rm more than once.)
  * as.complex(x) now returns complex(real = x, imaginary = 0) for
    _all_ numerical and logical x, notably also for NA or
    NA_integer_.
  * Directories are now omitted by file.copy(, recursive = FALSE) and
    in file.append() (PR#17337).
  * gsub() and sub() are now more robust to integer overflow when
    reporting errors caused by too large input strings (PR#18346).
  * Top-level handlers are now more robust to attempts to remove a
    handler whilst handlers are running (PR#18508).
  * The handling of Alt+F4 in dialogs created on Windows using
    GraphApp has been fixed (PR#13870).
  * density() more consistently computes grid values for the
    FFT-based convolution, following Robert Schlicht's analysis and
    proposal in PR#18337, correcting density values typically by a
    factor of about 0.999.  Argument old.coords = TRUE provides back
    compatibility.
  * palette.colors() gains a name argument that defaults to FALSE
    controlling whether the vector of colours that is returned has
    names (where possible).  PR#18529.
  * tools::xgettext() no longer extracts the (non-translatable) class
    names from warningCondition and errorCondition calls.
  * S3method(&lt;gen&gt;, &lt;class&gt;, &lt;func&gt;) in the NAMESPACE file now works
    (again) when &lt;func&gt; is visible from the namespace, e.g.,
    imported, or in base.
  * getParseData(f) now also works for a function defined in the
    first of several &lt;pkg&gt;/R/*.R source files, thanks to Kirill
    Müller's report and Duncan Murdoch's patch in PR#16756.
  * Rd \Sexpr macros with nested #ifdef conditionals were not
    processed.
  * A non-blocking connection with non-default encoding (such as a
    socket) now correctly returns from readLines() after new data has
    arrived also when its EOF had been reached previously.  Thanks to
    Peter Meilstrup's report on R-devel and Ivan Krylov's report and
    patch proposal in PR#18555.
  * tools::checkRdContents() failed to detect empty argument
    descriptions when they spanned multiple lines, including those
    generated by prompt().  These cases are now noted by R CMD check.
  * Plain-text help no longer outputs spurious colons in the
    arguments list (for multi-line \item labels in the Rd source).
  * kappa() and rcond() work correctly in more cases; kappa(., norm =
    "2") now warns that it computes the 1-norm with (default) exact =
    FALSE; prompted by Mikael Jagan's quite comprehensive PR#18543.
  * Rd skeletons generated by prompt() or promptData() now use a
    dummy title (so R CMD build works).  tools::checkRdContents() has
    been updated to detect such template leftovers, including from
    promptPackage().
  * When S4 method dispatch fails because no method was found, the
    error message now includes the signature argument names; thanks
    to Michael Chirico's proposal on the R-devel list.
  * withAutoprint({ .. }) now preserves srcrefs previously lost,
    thanks to Andrew Simmons' report plus fix in PR#18572.
  * transform.data.frame() no longer adjusts names; in particular,
    untransformed variables are kept as-is, including those with
    syntactically invalid names (PR#17890).
  * The keep.source option for Rd \Sexpr blocks is no longer ignored.
  * The formula methods for t.test() and wilcox.test() now catch when
    paired is passed, addressing PR#14359; use Pair(x1, x2) ~ 1 for a
    paired test.
  * The level reported in the browser prompt was often too large. It
    now shows the number of browser contexts on the stack.
  * For cbind() and rbind(), the optional deparse.level argument is
    now properly passed to methods, thanks to Mikael Jagan's PR#18579
    and comments there.
  * Some error and warning messages for large ('long vector')
    matrix(v, nr, nc) and dim(m) &lt;- d are now correct about sizes,
    using long long formatting, fixing PR#18612 (and more) reported
    by Mikael Jagan.
  * readChar(useBytes = TRUE) now terminates strings even when the
    underlying connection uses extra spaces in the input buffer.
    This fixes problems with extra garbage seen with gzip
    connections, PR#18605.
  * Named capture in PCRE regular expressions now works also with
    more than 127 named groups (PR#18588).
  * Datetime functions are now robust against long jumps when dealing
    with internal time zone changes.  This avoids confusing warnings
    about an invalid time zone, previously triggered by turning
    warnings into errors or handling them via tryCatch (PR#17966,
    PR#17780).
  * Datetime functions now restore even an empty TZ environment
    variable after internal time zone changes (PR#17724).  This makes
    results of datetime functions with this (typically unintentional)
    setting more predictable.
  * drop.terms(*) now drops response as by default, keep.response =
    FALSE, fixing PR#18564 thanks to Mikael Jagan.
  * dummy.coef(.) now also works for lm()-models with character
    categorical predictor variables rather than factor ones, fixing
    PR#18635 reported by Jinsong Zhao.
  * formals(f) &lt;- formals(f) now also works for a function w/o
    arguments and atomic _constant_ body(f).
  * Correct as.function(&lt;invalid list&gt;, .)'s error message.
  * removeSource() is yet more thorough in finding and removing
    "srcref" and the other source references from parsed R language
    chunks, fixing PR#18638 thanks to Andrew Simmons.
  * dgeom() is more accurate now, notably when its result is very
    small, fixing PR#18642 thanks to the proposal of Morten Welinder,
    also improving other instances where C level binom_raw(x, n, ..)
    has x == 0 or x== n.
  * warning() with options(warn = 1) has improved output for
    multi-line messages.
  * axis.Date() and axis.POSIXct() now respect the par("lab") setting
    for the number of pretty() intervals.
  * Comparisons for language objects (which are based on deparsing)
    are now more careful about using accurate deparsed results
    (PR#18676).
  * Plain-text help (Rd2txt) now correctly preserves blank lines
    following single-line \dontrun code.
  * &lt;POSIXlt&gt;[*] no longer sets wrong "balanced" attribute, fixing
    PR#18681 thanks to Mikael Jagan.
  * str(&lt;classed-call&gt;) now deparses the call as expected, fixing
    PR#18684, reported by Dave Slager.
  * In Rd examples, code following the closing brace of a \dontrun,
    \dontshow or \donttest tag on the same line is no longer skipped
    when R CMD check runs the examples.
  * as.data.frame(matrix(*, ncol=0)) now gets valid names() and
    colnames(); reported by Davis Vaughan on the R-devel list.
  * Internal Mathlib function stirlerr(n) is now almost fully
    (52-bit) accurate for all n &gt;= ~5.9 and more accurate also in the
    range 1 -- 5.9.  This entails small ("after 12th decimal")
    changes in density functions, e.g., dgamma() in _some_ regions of
    their support.  The fix was partly prompted by Morten Welinder's
    PR#18640.
  * Numbers like 9876543.2 are now considered non-integer by Mathlib
    internal R_nonint(), amending original fix of PR#15734.
  * Rd comment lines no longer cause broken paragraphs in the
    rendered PDF and plain-text help. In code blocks, pure comment
    lines (starting with %) no longer produce an empty line.
  * xtabs(Freq ~ .) now consistently defaults to na.action = na.pass,
    using na.rm = FALSE (added as an argument) when summing over Freq
    (PR#17770).
  * tools::testInstalledPackage() is no longer silent about failures
    from running examples or tests and its return code no longer
    ignores failures from checking vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1718366400">- CHANGES IN R 4.4.1:
  C-LEVEL FACILITIES:
  * Functions R_atof and R_strtod declared in header R_ext/Utils.h
    are now documented in 'Writing R Extensions' and so formally part
    of the API.
  * The non-API entry points Rf_setSVector, Rf_StringFalse,
    Rf_StringTrue and Rf_isBlankString have been added to those
    reported by R CMD check.
  * The new function Rf_allocLang is now available. This provides an
    alternative to the idiom of calling Rf_allocList followed by
    SET_TYPEOF.
  UTILITIES:
  * R CMD check now reports as warnings what gfortran calls 'Fortran
    2018 deleted features', all of which have long been marked as
    'obsolescent' and some of which were deleted in Fortran 2008 or
    earlier.  Fortran compilers are no longer required to support
    these.
  BUG FIXES:
  * as.numeric(), scan(), type.convert() and other places which use
    the internal C function R_strtod now require a _non-empty_ digit
    sequence in a decimal or binary exponent.  This aligns with the
    C/POSIX standard for strtod and with ?NumericConstants.
  * as.data.frame(m, make.names=NA) now works correctly for a matrix
    m with NA's in row names.
  * The error message from &lt;POSIXlt&gt;[["hour"]] and similar now
    mentions *[[, "hour"]], as wished for in PR#17409 and proposed by
    Michael Chirico.
  * qbinom() and potentially qpois(), qnbinom(), no longer sometimes
    fail accurate inversion (of pbinom(), etc), thanks to Christopher
    Chang's report and patch in PR#18711.
  * The internal help server on Windows can again serve requests sent
    in quick succession, fixing a regression in R 4.4.0.
  * debugcall(&lt;S3Generic&gt;()) now also works when a corresponding
    S4-generic version is in the methods cache (PR#18143).
  * Package tools' toTitleCase(ch0) now returns character(0) when ch0
    is of zero length; fixing PR#18724, reported by David Hugh Jones.
  * R CMD check is no longer broken (without a check result and no
    explanation in 00check.log) for a package which declares an
    invalid VignetteBuilder in DESCRIPTION but has no vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1730376000">- CHANGES IN R 4.4.2:
  C-LEVEL FACILITIES:
  * The S-compatibility macros F77_COM and F77_COMDECL defined in
    header R_ext/RS.h are deprecated and will be removed shortly.  We
    could find no record of their use.
  BUG FIXES:
  * Mathlib function lgammacor(x) no longer warns about underflow to
    zero for large x.
  * Text widths and heights were incorrectly reported by the Quartz
    device if the drawing context didn't exist yet (typically when
    drawing off-screen to a window that is yet to appear, see
    PR#18591).
  * The Quartz device could segfault in cases where paths with spaces
    are used in the new glyph drawing API.  Thanks to Tomek
    Gieorgijewski (PR#18758).
  * On macOS in R CRAN builds, it is again possible to read
    little-endian UTF-16 text with a BOM from a connection using
    encoding="UTF-16".  Users building R from source should avoid
    using the system libiconv in macOS 14.1 and later.
  * methods' internal .requirePackage() now re-enables primitive
    method dispatch when needed; thanks to Ivan Krylov for
    demystifying CRAN package check failures on the R-devel mailing
    list.</changelog>
</package>
<package pkgid="93792ee7d6fe5e73617ff76357126ec24f114f8abe8295cc2542aee4bae8bdd6d112d5868cced77ad64e2ba0f1de9f1bc7ad8ae133996253098731d3652cae61" name="R-tools" arch="x86_64">
  <version epoch="0" ver="4.4.2" rel="51.0.2.2.sr20241103"/>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1620302400">- To get in sync with d:l:R:autoCRAN the Matrix package's split
  in -devel was reversed.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339200">- improved spec file according to comments of dimstar in
  https://build.opensuse.org/request/show/892685</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339201">- CHANGES IN R 4.1.0:
  FUTURE DIRECTIONS:
  * It is planned that the 4.1.x series will be the last to support
    32-bit Windows, with production of binary packages for that
    series continuing until early 2023.
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Data set esoph in package datasets now provides the correct
    numbers of controls; previously it had the numbers of cases added
    to these.  (Reported by Alexander Fowler in PR#17964.)
  NEW FEATURES:
  * www.omegahat.net is no longer one of the repositories known by
    default to setRepositories().  (Nowadays it only provides source
    packages and is often unavailable.)
  * Function package_dependencies() (in package tools) can now use
    different dependency types for direct and recursive dependencies.
  * The checking of the size of tarball in R CMD check --as-cran
    &lt;pkg&gt; may be tweaked via the new environment variable
    _R_CHECK_CRAN_INCOMING_TARBALL_THRESHOLD_, as suggested in
    PR#17777 by Jan Gorecki.
  * Using c() to combine a factor with other factors now gives a
    factor, an ordered factor when combining ordered factors with
    identical levels.
  * apply() gains a simplify argument to allow disabling of
    simplification of results.
  * The format() method for class "ftable" gets a new option justify.
    (Suggested by Thomas Soeiro.)
  * New ...names() utility.  (Proposed by Neal Fultz in PR#17705.)
  * type.convert() now warns when its as.is argument is not
    specified, as the help file always said it _should_.  In that
    case, the default is changed to TRUE in line with its change in
    read.table() (related to stringsAsFactor) in R 4.0.0.
  * When printing list arrays, classed objects are now shown _via_
    their format() value if this is a short enough character string,
    or by giving the first elements of their class vector and their
    length.
  * capabilities() gets new entry "Rprof" which is TRUE when R has
    been configured with the equivalent of --enable-R-profiling (as
    it is by default).  (Related to Michael Orlitzky's report
    PR#17836.)
  * str(xS4) now also shows extraneous attributes of an S4 object
    xS4.
  * Rudimentary support for vi-style tags in rtags() and R CMD rtags
    has been added.  (Based on a patch from Neal Fultz in PR#17214.)
  * checkRdContents() is now exported from tools; it and also
    checkDocFiles() have a new option chkInternal allowing to check
    Rd files marked with keyword "internal" as well.  The latter can
    be activated for R CMD check via environment variable
    _R_CHECK_RD_INTERNAL_TOO_.
  * New functions numToBits() and numToInts() extend the raw
    conversion utilities to (double precision) numeric.
  * Functions URLencode() and URLdecode() in package utils now work
    on vectors of URIs.  (Based on patch from Bob Rudis submitted
    with PR#17873.)
  * path.expand() can expand ~user on most Unix-alikes even when
    readline is not in use.  It tries harder to expand ~, for example
    should environment variable HOME be unset.
  * For HTML help (both dynamic and static), Rd file links to help
    pages in external packages are now treated as references to
    topics rather than file names, and fall back to a file link only
    if the topic is not found in the target package. The earlier rule
    which prioritized file names over topics can be restored by
    setting the environment variable _R_HELP_LINKS_TO_TOPICS_ to a
    false value.
  * c() now removes NULL arguments before dispatching to methods,
    thus simplifying the implementation of c() methods, _but_ for
    back compatibility keeps NULL when it is the first argument.
    (From a report and patch proposal by Lionel Henry in PR#17900.)
  * Vectorize()'s result function's environment no longer keeps
    unneeded objects.
  * Function ...elt() now propagates visibility consistently with
    ..n.  (Thanks to Lionel Henry's PR#17905.)
  * capture.output() no longer uses non-standard evaluation to
    evaluate its arguments.  This makes evaluation of functions like
    parent.frame() more consistent.  (Thanks to Lionel Henry's
    PR#17907.)
  * packBits(bits, type="double") now works as inverse of
    numToBits().  (Thanks to Bill Dunlap's proposal in PR#17914.)
  * curlGetHeaders() has two new arguments, timeout to specify the
    timeout for that call (overriding getOption("timeout")) and TLS
    to specify the minimum TLS protocol version to be used for
    https:// URIs (_inter alia_ providing a means to check for sites
    using deprecated TLS versions 1.0 and 1.1).
  * For nls(), an optional constant scaleOffset may be added to the
    denominator of the relative offset convergence test for cases
    where the fit of a model is expected to be exact, thanks to a
    proposal by John Nash.  nls(*, trace=TRUE) now also shows the
    convergence criterion.
  * Numeric differentiation _via_ numericDeriv() gets new optional
    arguments eps and central, the latter for taking central divided
    differences.  The latter can be activated for nls() via
    nls.control(nDcentral = TRUE).
  * nls() now passes the trace and control arguments to getInitial(),
    notably for all self-starting models, so these can also be fit in
    zero-noise situations via a scaleOffset.  For this reason, the
    initial function of a selfStart model must now have ... in its
    argument list.
  * bquote(splice = TRUE) can now splice expression vectors with
    attributes: this makes it possible to splice the result of
    parse(keep.source = TRUE).  (Report and patch provided by Lionel
    Henry in PR#17869.)
  * textConnection() gets an optional name argument.
  * get(), exists(), and get0() now signal an error if the first
    argument has length greater than 1.  Previously additional
    elements were silently ignored.  (Suggested by Antoine Fabri on
    R-devel.)
  * R now provides a shorthand notation for creating functions, e.g.
    \(x) x + 1 is parsed as function(x) x + 1.
  * R now provides a simple native forward pipe syntax |&gt;.  The
    simple form of the forward pipe inserts the left-hand side as the
    first argument in the right-hand side call.  The pipe
    implementation as a syntax transformation was motivated by
    suggestions from Jim Hester and Lionel Henry.
  * all.equal(f, g) for functions now by default also compares their
    environment(.)s, notably via new all.equal method for class
    function.  Comparison of nls() fits, e.g., may now need
    all.equal(m1, m2, check.environment = FALSE).
  * .libPaths() gets a new option include.site, allowing to _not_
    include the site library.  (Thanks to Dario Strbenac's suggestion
    and Gabe Becker's PR#18016.)
  * Lithuanian translations are now available.  (Thanks to Rimantas
    Zakauskas.)
  * names() now works for DOTSXP objects.  On the other hand, in
    R-lang, the R language manual, we now warn against relying on the
    structure or even existence of such dot-dot-dot objects.
  * all.equal() no longer gives an error on DOTSXP objects.
  * capabilities("cairo") now applies only to the file-based devices
    as it is now possible (if very unusual) to build R with Cairo
    support for those but not for X11().
  * There is optional support for tracing the progress of
    loadNamespace() - see its help.
  * (Not Windows.)  l10n_info() reports an additional element, the
    name of the encoding as reported by the OS (which may differ from
    the encoding part (if any) of the result from
    Sys.getlocale("LC_CTYPE").
  * New function gregexec() which generalizes regexec() to find _all_
    disjoint matches and well as all substrings corresponding to
    parenthesized subexpressions of the given regular expression.
    (Contributed by Brodie Gaslam.)
  * New function charClass() in package utils to query the
    wide-character classification functions in use (such as
    iswprint).
  * The names of quantile()'s result no longer depend on the global
    getOption("digits"), but quantile() gets a new optional argument
    digits = 7 instead.
  * grep(), sub(), regexp and variants work considerably faster for
    long factors with few levels.  (Thanks to Michael Chirico's
    PR#18063.)
  * Provide grouping of x11() graphics windows within a window
    manager such as Gnome or Unity; thanks to a patch by Ivan Krylov
    posted to R-devel.
  * The split() method for class data.frame now allows the f argument
    to be specified as a formula.
  * sprintf now warns on arguments unused by the format string.
  * New palettes "Rocket" and "Mako" for hcl.colors() (approximating
    palettes of the same name from the 'viridisLite' package).
    Contributed by Achim Zeileis.
  * The base environment and its namespace are now locked (so one can
    no longer add bindings to these or remove from these).
  * Rterm handling of multi-byte characters has been improved,
    allowing use of such characters when supported by the current
    locale.
  * Rterm now accepts ALT+ +xxxxxxxx sequences to enter Unicode
    characters as hex digits.
  * Environment variable LC_ALL on Windows now takes precedence over
    LC_CTYPE and variables for other supported categories, matching
    the POSIX behaviour.
  * duplicated() and anyDuplicated() are now optimized for integer
    and real vectors that are known to be sorted via the ALTREP
    framework. Contributed by Gabriel Becker via PR#17993.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 14
    and so packages that provide graphics devices should be
    reinstalled.
  * Graphics devices should now specify deviceVersion to indicate
    what version of the graphics engine they support.
  * Graphics devices can now specify deviceClip.  If TRUE, the
    graphics engine will never perform any clipping of output itself.
    The clipping that the graphics engine does perform (for both
    canClip = TRUE and canClip = FALSE) has been improved to avoid
    producing unnecessary artifacts in clipped output.
  * The grid package now allows gpar(fill) to be a linearGradient(),
    a radialGradient(), or a pattern().  The viewport(clip) can now
    also be a grob, which defines a clipping path, and there is a new
    viewport(mask) that can also be a grob, which defines a mask.
    These new features are only supported so far on the Cairo-based
    graphics devices and on the pdf() device.
  * (Not Windows.)  A warning is given when a Cairo-based type is
    specified for a png(), jpeg(), tiff() or bmp() device but Cairo
    is unsupported (so type = "Xlib" is tried instead).
  * grSoftVersion() now reports the versions of FreeType and
    FontConfig if they are used directly (not _via_ Pango), as is
    most commonly done on macOS.
  C-LEVEL FACILITIES:
  * The _standalone_ libRmath math library and R's C API now provide
    log1pexp() again as documented, and gain log1mexp().
  INSTALLATION on a UNIX-ALIKE:
  * configure checks for a program pkgconf if program pkg-config is
    not found.  These are now only looked for on the path (like
    almost all other programs) so if needed specify a full path to
    the command in PKG_CONFIG, for example in file config.site.
  * C99 function iswblank is required - it was last seen missing ca
    2003 so the workaround has been removed.
  * There are new configure options --with-internal-iswxxxxx,
  - -with-internal-towlower and --with-internal-wcwidth which allows
    the system functions for wide-character classification,
    case-switching and width (wcwidth and wcswidth) to be replaced by
    internal ones.  The first has long been used on macOS, AIX (and
    Windows) but this enables it to be unselected there and selected
    for other platforms (it is the new default on Solaris).  The
    second is new in this version of R and is selected by default on
    macOS and Solaris.  The third has long been the default and
    remains so as it contains customizations for East Asian
    languages.
    System versions of these functions are often minimally
    implemented (sometimes only for ASCII characters) and may not
    cover the full range of Unicode points: for example Solaris (and
    Windows) only cover the Basic Multilingual Plane.
  * Cairo installations without X11 are more likely to be detected by
    configure, when the file-based Cairo graphics devices will be
    available but not X11(type = "cairo").
  * There is a new configure option --with-static-cairo which is the
    default on macOS.  This should be used when only static cairo
    (and where relevant, Pango) libraries are available.
  * Cairo-based graphics devices on platforms without Pango but with
    FreeType/FontConfig will make use of the latter for font
    selection.
  LINK-TIME OPTIMIZATION on a UNIX-ALIKE:
  * Configuring with flag --enable-lto=R now also uses LTO when
    installing the recommended packages.
  * R CMD INSTALL and R CMD SHLIB have a new flag --use-LTO to use
    LTO when compiling code, for use with R configured with
  - -enable-lto=R.  For R configured with --enable-lto, they have
    the new flag --no-use-LTO.
    Packages can opt in or out of LTO compilation _via_ a UseLTO
    field in the DESCRIPTION file.  (As usual this can be overridden
    by the command-line flags.)
  BUILDING R on Windows:
  * for GCC &gt;= 8, FC_LEN_T is defined in config.h and hence character
    lengths are passed from C to Fortran in _inter alia_ BLAS and
    LAPACK calls.
  * There is a new text file src/gnuwin32/README.compilation, which
    outlines how C/Fortran code compilation is organized and
    documents new features:
  * R can be built with Link-Time Optimization with a suitable
    compiler - doing so with GCC 9.2 showed several
    inconsistencies which have been corrected.
  * There is support for cross-compiling the C and Fortran code
    in R and standard packages on suitable (Linux) platforms.
    This is mainly intended to allow developers to test later
    versions of compilers - for example using GCC 9.2 or 10.x has
    detected issues that GCC 8.3 in Rtools40 does not.
  * There is experimental support for cross-building R packages
    with C, C++ and/or Fortran code.
  * The R installer can now be optionally built to support a single
    architecture (only 64-bit or only 32-bit).
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++14 where
    available (which it is on all currently checked platforms): if
    not (as before) C++11 is used if available otherwise C++ is not
    supported.
    Packages which specify C++11 will still be installed using C++11.
    C++14 compilers may give deprecation warnings, most often for
    std::random_shuffle (deprecated in C++14 and removed in C++17).
    Either specify C++11 (see 'Writing R Extensions') or modernize
    the code and if needed specify C++14.  The latter has been
    supported since R 3.4.0 so the package's DESCRIPTION would need
    to include something like
    Depends: R (&gt;= 3.4)
  PACKAGE INSTALLATION on Windows:
  * R CMD INSTALL and R CMD SHLIB make use of their flag --use-LTO
    when the LTO_OPT make macro is set in file etc/${R_ARCH}/Makeconf
    or in a personal/site Makevars file.  (For details see 'Writing R
    Extensions' SS4.5.)
    This provides a valuable check on code consistency.  It does work
    with GCC 8.3 as in Rtools40, but that does not detect everything
    the CRAN checks with current GCC do.
  PACKAGE INSTALLATION on macOS:
  * The default personal library directory on builds with
  - -enable-aqua (including CRAN builds) now differs by CPU type,
    one of
    ~/Library/R/x86_64/x.y/library
    ~/Library/R/arm64/x.y/library
    This uses the CPU type R (and hence the packages) were built for,
    so when a x86_64 build of R is run under Rosetta emulation on an
    arm64 Mac, the first is used.
  UTILITIES:
  * R CMD check can now scan package functions for bogus return
    statements, which were possibly intended as return() calls (wish
    of PR#17180, patch by Sebastian Meyer). This check can be
    activated via the new environment variable
    _R_CHECK_BOGUS_RETURN_, true for --as-cran.
  * R CMD build omits tarballs and binaries of previous builds from
    the top-level package directory.  (PR#17828, patch by Sebastian
    Meyer.)
  * R CMD check now runs sanity checks on the use of LazyData, for
    example that a data directory is present and that
    LazyDataCompression is not specified without LazyData and has a
    documented value.  For packages with large LazyData databases
    without specifying LazyDataCompression, there is a reference to
    the code given in 'Writing R Extensions' SS1.1.6 to test the
    choice of compression (as in all the CRAN packages tested a
    non-default method was preferred).
  * R CMD build removes LazyData and LazyDataCompression fields from
    the DESCRIPTION file of packages without a data directory.
  ENCODING-RELATED CHANGES:
  * The parser now treats \Unnnnnnnn escapes larger than the upper
    limit for Unicode points (\U10FFFF) as an error as they cannot be
    represented by valid UTF-8.
    Where such escapes are used for outputting non-printable
    (including unassigned) characters, 6 hex digits are used (rather
    than 8 with leading zeros).  For clarity, braces are used, for
    example \U{0effff}.
  * The parser now looks for non-ASCII spaces on Solaris (as
    previously on most other OSes).
  * There are warnings (including from the parser) on the use of
    unpaired surrogate Unicode points such as \uD834.  (These cannot
    be converted to valid UTF-8.)
  * Functions nchar(), tolower(), toupper() and chartr() and those
    using regular expressions have more support for inputs with a
    marked Latin-1 encoding.
  * The character-classification functions used (by default) to
    replace the system iswxxxxx functions on Windows, macOS and AIX
    have been updated to Unicode 13.0.0.
    The character-width tables have been updated to include new
    assignments in Unicode 13.0.0.
  * The code for evaluating default (extended) regular expressions
    now uses the same character-classification functions as the rest
    of R (previously they differed on Windows, macOS and AIX).
  * There is a build-time option to replace the system's
    wide-character wctrans C function by tables shipped with R: use
    configure option --with-internal-towlower or (on Windows)
  - DUSE_RI18N_CASE in CFLAGS when building R.  This may be needed
    to allow tolower() and toupper() to work with Unicode characters
    beyond the Basic Multilingual Plane where not supported by system
    functions (e.g. on Solaris where it is the new default).
  * R is more careful when truncating UTF-8 and other multi-byte
    strings that are too long to be printed, passed to the system or
    libraries or placed into an internal buffer.  Truncation will no
    longer produce incomplete multibyte characters.
  DEPRECATED AND DEFUNCT:
  * Function plclust() from the package stats and
    package.dependencies(), pkgDepends(), getDepList(),
    installFoundDepends(), and vignetteDepends() from package tools
    are defunct.
  * Defunct functions checkNEWS() and readNEWS() from package tools
    and CRAN.packages() from utils have been removed.
  * R CMD config CXXCPP is defunct (it was deprecated in R 3.6.2).
  * parallel::detectCores() drops support for Irix (retired in 2013).
  * The LINPACK argument to chol.default(), chol2inv(),
    solve.default() and svd() has been defunct since R 3.1.0.  It was
    silently ignored up to R 4.0.3 but now gives an error.
  * Subsetting/indexing, such as ddd[*] or ddd$x on a DOTSXP
    (dot-dot-dot) object ddd has been disabled; it worked by accident
    only and was undocumented.
  BUG FIXES:
  * Many more C-level allocations (mainly by malloc and strdup) are
    checked for success with suitable alternative actions.
  * Bug fix for replayPlot(); this was turning off graphics engine
    display list recording if a recorded plot was replayed in the
    same session.  The impact of the bug became visible if resize the
    device after replay OR if attempted another savePlot() after
    replay (empty display list means empty screen on resize or empty
    saved plot).
  * R CMD check etc now warn when a package exports non-existing S4
    classes or methods, also in case of no "methods" presence.
    (Reported by Alex Bertram; reproducible example and patch by
    Sebastian Meyer in PR#16662.)
  * boxplot() now also accepts calls for labels such as ylab, the
    same as plot().  (Reported by Marius Hofert.)
  * The help page for xtabs() now correctly states that addNA is
    setting na.action = na.pass among others.  (Reported as PR#17770
    by Thomas Soeiro.)
  * The R CMD check &lt;pkg&gt; gives a longer and more comprehensible
    message when DESCRIPTION misses dependencies, e.g., in Imports:.
    (Thanks to the contributors of PR#17179.)
  * update.default() now calls the generic update() on the formula to
    work correctly for models with extended formulas.  (As reported
    and suggested by Neal Fultz in PR#17865.)
  * The horizontal position of leaves in a dendrogram is now correct
    also with center = FALSE.  (PR#14938, patch from Sebastian
    Meyer.)
  * all.equal.POSIXt() no longer warns about and subsequently ignores
    inconsistent "tzone" attributes, but describes the difference in
    its return value (PR#17277).  This check can be disabled _via_
    the new argument check.tzone = FALSE as suggested by Sebastian
    Meyer.
  * as.POSIXct() now populates the "tzone" attribute from its tz
    argument when x is a logical vector consisting entirely of NA
    values.
  * x[[2^31]] &lt;- v now works.  (Thanks to the report and patch by
    Suharto Anggono in PR#17330.)
  * In log-scale graphics, axis() ticks and label positions are now
    computed more carefully and symmetrically in their range,
    typically providing _more_ ticks, fulfilling wishes in PR#17936.
    The change really corresponds to an improved axisTicks() (package
    grDevices), potentially influencing grid and lattice, for
    example.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now correct to at
    least five digits where it was catastrophically wrong,
    previously.
  * sum(df) and similar "Summary"- and "Math"-group member functions
    now work for data frames df with logical columns, notably also of
    zero rows.  (Reported to R-devel by Martin "b706".)
  * unsplit() had trouble with tibbles due to unsound use of rep(NA,
    len)-indexing, which should use NA_integer_ (Reported to R-devel
    by Mario Annau.)
  * pnorm(x, log.p = TRUE) underflows to -Inf slightly later.
  * show(&lt;hidden S4 generic&gt;) prints better and without quotes for
    non-hidden S4 generics.
  * read.table() and relatives treated an "NA" column name as missing
    when check.names = FALSE PR#18007.
  * Parsing strings containing UTF-16 surrogate pairs such as
    "\uD834\uDD1E" works better on some (uncommon) platforms.
    sprintf("%X", utf8ToInt("\uD834\uDD1E")) should now give "1D11E"
    on all platforms.
  * identical(x,y) is no longer true for differing DOTSXP objects,
    fixing PR#18032.
  * str() now works correctly for DOTSXP and related exotics, even
    when these are doomed.
    Additionally, it no longer fails for lists with a class and
    "irregular" method definitions such that e.g. lapply(*) will
    necessarily fail, as currently for different igraph objects.
  * Too long lines in environment files (e.g. Renviron) no longer
    crash R. This limit has been increased to 100,000 bytes.
    (PR#18001.)
  * There is a further workaround for FreeType giving incorrect
    italic font faces with cairo-based graphics devices on macOS.
  * add_datalist(*, force = TRUE) (from package tools) now actually
    updates an existing data/datalist file for new content.  (Thanks
    to a report and patch by Sebastian Meyer in PR#18048.)
  * cut.Date() and cut.POSIXt() could produce an empty last interval
    for breaks = "months" or breaks = "years".  (Reported as PR#18053
    by Christopher Carbone.)
  * Detection of the encoding of 'regular' macOS locales such as
    en_US (which is UTF-8) had been broken by a macOS change:
    fortunately these are now rarely used with en_US.UTF-8 being
    preferred.
  * sub() and gsub(pattern, repl, x, *) now keep attributes of x such
    as names() also when pattern is NA (PR#18079).
  * Time differences ("difftime" objects) get a replacement and a
    rep() method to keep "units" consistent.  (Thanks to a report and
    patch by Nicolas Bennett in PR#18066.)
  * The \RdOpts macro, setting defaults for \Sexpr options in an Rd
    file, had been ineffective since R 2.12.0: it now works again.
    (Thanks to a report and patch by Sebastian Meyer in PR#18073.)
  * mclapply and pvec no longer accidentally terminate parallel
    processes started before by mcparallel or related calls in
    package parallel (PR#18078).
  * grep and other functions for evaluating (extended) regular
    expressions handle in Unicode also strings not explicitly flagged
    UTF-8, but flagged native when running in UTF-8 locale.
  * Fixed a crash in fifo implementation on Windows (PR#18031).
  * Binary mode in fifo on Windows is now properly detected from
    argument open (PR#15600, PR#18031).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1622808000">- The line %{__install} -m 755 -d %{_infodir}
  no longer works in TW or Factory.
  But without that line it works everywhere. So this instruction
  was commented out of the spec file.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1628596800">- CHANGES IN R 4.1.1:
  NEW FEATURES:
  * require(pkg, quietly = TRUE) is quieter and in particular does
    not warn if the package is not found.
  DEPRECATED AND DEFUNCT:
  * Use of ftp:// URIs should be regarded as deprecated, with
    on-going support confined to method = "libcurl" and not routinely
    tested.  (Nowadays no major browser supports them.)
  * The non-default method = "internal" is deprecated for http:// and
    ftp:// URIs for both download.file and url.
  * On Windows, method = "wininet" is deprecated for http://,
    https:// and ftp:// URIs for both download.file and url.  (A
    warning is only given for ftp://.)
    For ftp:// URIs the default method is now "libcurl" if available
    (which it is on CRAN builds).
    method = "wininet" remains the default for http:// and https://
    URIs but if libcurl is available, using method = "libcurl" is
    preferred.
  INSTALLATION:
  * make check now works also without a LaTeX installation.  (Thanks
    to Sebastian Meyer's PR#18103.)
  BUG FIXES:
  * make check-devel works again in an R build configured with
  - -without-recommended-packages.
  * qnbinom(p, size, mu) for large size/mu is correct now in a range
    of cases (PR#18095); similarly for the (size, prob)
    parametrization of the negative binomial.  Also qpois() and
    qbinom() are better and or faster for extreme cases.  The
    underlying C code has been modularized and is common to all four
    cases of discrete distributions.
  * gap.axis is now part of the axis() arguments which are passed
    from bxp(), and hence boxplot().  (Thanks to Martin Smith's
    report and suggestions in PR#18109.)
  * .First and .Last can again be set from the site profile.
  * seq.int(from, to, *) and seq.default(..) now work better in large
    range cases where from-to is infinite where the two boundaries
    are finite.
  * all.equal(x,y) now returns TRUE correctly also when several
    entries of abs(x) and abs(y) are close to .Machine$double.xmax,
    the largest finite numeric.
  * model.frame() now clears the object bit when removing the class
    attribute of a value via na.action (PR#18100).
  * charClass() now works with multi-character strings on Windows
    (PR#18104, fixed by Bill Dunlap).
  * encodeString() on Solaris now works again in Latin-1 encoding on
    characters represented differently in UTF-8.  Support for
    surrogate pairs on Solaris has been improved.
  * file.show() on Windows now works with non-ASCII path names
    representable in the current native encoding (PR#18132).
  * Embedded R on Windows can now find R home directory via the
    registry even when installed only for the current user
    (PR#18135).
  * pretty(x) with finite x now returns finite values also in the
    case where the extreme x values are close in size to the maximal
    representable number .Machine$double.xmax.
    Also, it's been tweaked for very small ranges and when a boundary
    is close (or equal) to zero; e.g., pretty(c(0,1e-317)) no longer
    has negative numbers, currently still warning about a very small
    range, and pretty(2^-(1024 - 2^-1/(c(24,10)))) is more accurate.
  * The error message for not finding vignette files when weaving has
    correct file sizes now. (Thanks to Sebastian Meyer's PR#18154.)
  * dnbinom(20, &lt;large&gt;, 1) now correctly gives 0, and similar cases
    are more accurate with underflow precaution.  (Reported by Francisco Vera Alcivar in PR#18072.)</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635163200">- repaired https://bugzilla.suse.com/show_bug.cgi?id=1191380
  (rpmacros now go to rpmmacrodir)
- minor clean-ups in spec file</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635768000">- CHANGES IN R 4.1.2:
  C-LEVEL FACILITIES:
  * The workaround in headers R.h and Rmath.h (using namespace std;)
    for the Oracle Developer Studio compiler is no longer needed now
    C++11 is required so has been removed.  A couple more usages of
    log() (which should have been std::log()) with an int argument
    are reported on Solaris.
  * The undocumented limit of 4095 bytes on messages from the
    S-compatibility macros PROBLEM and MESSAGE is now documented and
    longer messages will be silently truncated rather than
    potentially causing segfaults.
  * If the R_NO_SEGV_HANDLER environment variable is non-empty, the
    signal handler for SEGV/ILL/BUS signals (which offers recovery
    user interface) is not set. This allows more reliable debugging
    of crashes that involve the console.
  DEPRECATED AND DEFUNCT:
  * The legacy S-compatibility macros PROBLEM, MESSAGE, ERROR, WARN,
    WARNING, RECOVER, ... are deprecated and will be hidden in R
    4.2.0. R's native interface of Rf_error and Rf_warning has long
    been preferred.
  BUG FIXES:
  * .mapply(F, dots, .) no longer segfaults when dots is not a list
    and uses match.fun(F) as always documented; reported by Andrew
    Simmons in PR#18164.
  * hist(&lt;Date&gt;, ...) and hist(&lt;POSIXt&gt;, ...)  no longer pass
    arguments for rect() (such as col and density) to axis().
    (Thanks to Sebastian Meyer's PR#18171.)
  * \Sexpr{ch} now preserves Encoding(ch). (Thanks to report and
    patch by Jeroen Ooms in PR#18152.)
  * Setting the RNG to "Marsaglia-Multicarry" e.g., by RNGkind(), now
    warns in more places, thanks to Andr'e Gillibert's report and
    patch in PR#18168.
  * gray(numeric(), alpha=1/2) no longer segfaults, fixing PR#18183,
    reported by Till Krenz.
  * Fixed dnbinom(x, size=&lt;very_small&gt;, .., log=TRUE) regression,
    reported by Martin Morgan.
  * as.Date.POSIXlt(x) now keeps names(x), thanks to Davis Vaughan's
    report and patch in PR#18188.
  * model.response() now strips an "AsIs" class typically, thanks to
    Duncan Murdoch's report and other discussants in PR#18190.
  * try() is considerably faster in case of an error and long call,
    as e.g., from some do.call().  Thanks to Alexander Kaever's
    suggestion posted to R-devel.
  * qqline(y = &lt;object&gt;) such as y=I(.), now works, see also
    PR#18190.
  * Non-integer mgp par() settings are now handled correctly in
    axis() and mtext(), thanks to Mikael Jagan and Duncan Murdoch's
    report and suggestion in PR#18194.
  * formatC(x) returns length zero character() now, rather than ""
    when x is of length zero, as documented, thanks to Davis
    Vaughan's post to R-devel.
  * removeSource(fn) now retains (other) attributes(fn).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1647000000">- CHANGES IN R 4.1.3:
  NEW FEATURES:
  * The default version of Bioconductor has been changed to 3.14.
    (This is used by setRepositories and the menus in GUIs.)
  UTILITIES:
  * R CMD check --as-cran has a workaround for a bug in versions of
    file up to at least 5.41 which mis-identify DBF files last
    changed in 2022 as executables.
  C-LEVEL FACILITIES:
  * The legacy S-compatibility macros SINGLE_* in R_ext/Constants.h
    (included by R.h) are deprecated and will be removed in R 4.2.0.
  BUG FIXES:
  * Initialization of self-starting nls() models with initialization
    functions following the pre-R-4.1.0 API (without the ...
    argument) works again for now, with a deprecation warning.
  * Fixed quoting of ~autodetect~ in Java setting defaults to avoid
    inadvertent user lookup due to leading ~, reported in PR#18231 by
    Harold Gutch.
  * substr(., start, stop) &lt;- v now treats _negative_ stop values
    correctly.  Reported with a patch in PR#18228 by Brodie Gaslam.
  * Subscripting an array x without dimnames by a
    length(dim(x))-column character matrix gave "random" non-sense,
    now an error; reported in PR#18244 by Mikael Jagan.
  * ...names() now matches names(list(...)) closely, fixing PR#18247.
  * all.equal(*, scale = s) now works as intended when length(s) &gt; 1,
    partly thanks to Michael Chirico's PR#18272.
  * print(x) for long vectors x now also works for named atomic
    vectors or lists and prints the correct number when reaching the
    getOption("max.print") limit; partly thanks to a report and
    proposal by Hugh Parsonage to the R-devel list.
  * all.equal(&lt;selfStart&gt;, *) no longer signals a deprecation
    warning.
  * reformulate(*, response=r) gives a helpful error message now when
    length(r) &gt; 1, thanks to Bill Dunlap's PR#18281.
  * Modifying globalCallingHandlers inside withCallingHandlers() now
    works or fails correctly, thanks to Henrik Bengtsson's PR#18257.
  * hist(&lt;Date&gt;, breaks = "days") and hist(&lt;POSIXt&gt;, breaks = "secs")
    no longer fail for inputs of length 1.
  * qbeta(.001, .9, .009) and similar cases now converge correctly
    thanks to Ben Bolker's report in PR#17746.
  * window(x, start, end) no longer wrongly signals "'start' cannot
    be after 'end'", fixing PR#17527 and PR#18291.
  * data() now checks that its (rarely used) list argument is a
    character vector - a couple of packages passed other types and
    gave incorrect results.
  * which() now checks its arr.ind argument is TRUE rather coercing
    to logical and taking the first element - which gave incorrect
    results in package code.
  * model.weights() and model.offset() more carefully extract their
    model components, thanks to Ben Bolker and Tim Taylor's R-devel
    post.
  * list.files(recursive = TRUE) now shows all broken symlinks
    (previously, some of them may have been omitted, PR#18296).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1650628800">- CHANGES IN R 4.2.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * The formula method of aggregate() now matches the generic in
    naming its first argument x (resolving PR#18299 by Thomas
    Soeiro).
    This means that calling aggregate() with a formula as a named
    first argument requires name formula in earlier versions of R and
    name x now, so portable code should not name the argument (code
    in many packages did).
  * Calling &amp;&amp; or || with either argument of length greater than one
    now gives a warning (which it is intended will become an error).
  * Calling if() or while() with a condition of length greater than
    one gives an error rather than a warning.  Consequently,
    environment variable _R_CHECK_LENGTH_1_CONDITION_ no longer has
    any effect.
  * Windows users should consult the WINDOWS section below for some
    profound changes including
  * Support for 32-bit builds has been dropped.
  * UTF-8 locales are used where available.
  * The default locations for the R installation and personal
    library folder have been changed.
    Thanks to Tomas Kalibera for months of work on the Windows port
    for this release.
  NEW FEATURES:
  * matrix(x, n, m) now warns in more cases where length(x) differs
    from n * m, as suggested by Abby Spurdle and Wolfgang Huber in
    Feb 2021 on the R-devel mailing list.
    This warning can be turned into an error by setting environment
    variable _R_CHECK_MATRIX_DATA_ to TRUE: R CMD check --as-cran
    does so unless it is already set.
  * Function file_test() in package utils gains tests for symlinks,
    readability and writability.
  * capabilities("libxml") is now false.
    The description of capabilities("http/ftp") now reflects that it
    refers to the default method, no longer the internal one.
  * simplify2array() gains an except argument for controlling the
    exceptions used by sapply().
  * Environment variables R_LIBS_USER and R_LIBS_SITE are both now
    set to the R system default if unset or empty, and can be set to
    NULL to indicate an empty list of user or site library
    directories.
  * The warning for axis()(-like) calls in cases of relatively small
    ranges (typically in log-scale situations) is slightly improved
    _and_ suppressed from explicit calls to .axisPars() as has always
    been the intention.
  * The contrasts setter function `contrasts&lt;-` gains an explicit
    default how.many = NULL rather than just using missing(how.many).
  * grid.pretty() gains a new optional argument n = 5.
  * There is a new function .pretty() with option bounds as a
    technical-utility version of pretty().  It and pretty() gain a
    new argument f.min with a better than back-compatible default.
  * Function grDevices::axisTicks() and related functions such as
    graphics::axis() work better, notably for the log scale; partly
    because of the pretty() improvements, but also because care is
    taken e.g., when ylim is finite but diff(ylim) is infinite.
  * nclass.FD() gains a digits option.
  * The R Mathlib internal C function bd0() (called indirectly from a
    dozen probability density and distribution functions such as
    dpois(), dbinom(), dgamma(), pgamma() _etc_) has been
    complemented by a more sophisticated and (mostly) more accurate C
    function ebd0(), currently called only by internal dpois_raw()
    improving accuracy for R level dpois() and potentially others
    calling it such as dnbinom(), dgamma() or pgamma().  (Thanks to
    Morten Welinder's PR#15628.)
  * write.ftable() gains sep = " " argument as suggested by Thomas
    Soeiro.
  * The names of the locale categories supported by R's
    Sys.getlocale() and Sys.setlocale() are now provided by variable
    .LC.categories in the base namespace.
  * The Date and POSIXt methods for hist() and the histogram method
    for plot() now also use the new default col = "lightgray" in
    consistency with the corresponding change to hist()'s default for
    R 4.0.0.
  * hist.default() gains new fuzz argument, and the histogram plot
    method no longer uses fractional axis ticks when displaying
    counts ("Frequency").
  * mapply() and hence Map() now also obey the "max-or-0-if-any"
    recycling rule, such that, e.g., Map(`+`, 1:3, 1[0]) is valid
    now.
  * as.character(&lt;obj&gt;) for "hexmode" or "octmode" objects now
    fulfils the important basic rule as.character(x)[j] ===
    as.character(x[j]).
  * The set utility functions, notably intersect() have been tweaked
    to be more consistent and symmetric in their two set arguments,
    also preserving a common mode.
  * substr(ch, start,end) &lt;- new now e.g., preserves names(ch); ditto
    for substring(), thanks to a patch from Brodie Gaslam.
  * plot(&lt;lm&gt;) gains a extend.ylim.f argument, in partial response to
    PR#15285; further PR#17784 is fixed thanks to several
    contributors and a patch by Elin Waring.  The Cook's dist
    contours get customizable via cook.col and cook.lty with a
    different default color and their legend is nicer by default and
    customizable via cook.legendChanges.
  * Attempting to subset an object that is not subsettable now
    signals an error of class notSubsettableError. The
    non-subsettable object is contained in the object field of the
    error condition.
  * Subscript-out-of-bounds errors are now signaled as errors of
    class subscriptOutOfBoundsError.
  * Stack-overflow errors are now signaled as errors inheriting from
    class stackOverflowError. See ?stackOverflowError for more
    details.
  * New partly experimental Sys.setLanguage() utility, solving the
    main problem of PR#18055.
  * gettext() and gettextf() get a new option trim = TRUE which when
    set to false allows translations for strings such as "Execution
    halted\n" typical for C code.
  * An experimental implementation of hash tables is now available.
    See ?hashtab for more details.
  * identical() gains a extptr.as.ref argument for requesting that
    external pointer objects be compared as reference objects.
  * reorder() gets an argument decreasing which it passes to sort()
    for level creation; based on the wish and patch by Thomas Soeiro
    in PR#18243.
  * as.vector() gains a data.frame method which returns a simple
    named list, also clearing a long standing 'FIXME' to enable
    as.vector(&lt;data.frame&gt;, mode="list").  This breaks code relying
    on as.vector(&lt;data.frame&gt;) to return the unchanged data frame.
  * legend() is now vectorized for arguments cex, x.intersp, and
    text.width.  The latter can now also be specified as a vector
    (one element for each column of the legend) or as NA for
    computing a proper column wise maximum value of strwidth(legend).
    The argument y.intersp can be specified as a vector with one
    entry for each row of the legend.
    legend() also gains new arguments title.cex and title.font.
    Thanks to Swetlana Herbrandt.
  * Deparsing no longer remaps attribute names dim, dimnames, levels,
    names and tsp to historical S-compatible names (which structure()
    maps back).
  * sample() and sample.int() have additional sanity checks on their
    size and n arguments.
    all.equal.numeric() gains a sanity check on its tolerance
    argument - calling all.equal(a, b, c) for three numeric vectors
    is a surprisingly common error.
    mean(na.rm =), rank(na.last =), barplot(legend.text =),
    boxplot(), contour(drawlabels =), polygon(border =) and
    methods::is(class2 =) have more robust sanity checks on their
    arguments.
    R CMD Rd2pdf (used by R CMD check) has a more robust sanity check
    on the format of \alias{} commands.
  * psigamma(x, deriv) for negative x now also works for deriv = 4
    and 5; their underlying C level dpsifn() is documented in
    'Writing R Extensions'.
  * The HTML help system now uses HTML5 (wish of PR#18149).
  * ks.test() now provides exact p-values also with ties and MC
    p-values in the two-sample (Smirnov) case.  By Torsten Hothorn.
  * ks.test() gains a formula interface, with y ~ 1 for the
    one-sample (Kolmogorov) test and y ~ group for the two-sample
    (Smirnov) test.  Contributed by Torsten Hothorn.
  * The return value from ks.test() now has class c("ks.test",
    "htest") - packages using try() need to take care to use
    inherits() and not == on the class.
  * New functions psmirnov(), qsmirnov() and rsmirnov() in package
    stats implementing the asymptotic and exact distributions of the
    two-sample Smirnov statistic.
  * iconv() now allows sub = "c99" to use C99-style escapes for UTF-8
    inputs which cannot be converted to encoding to.
  * In a forward pipe |&gt; expression it is now possible to use a named
    argument with the placeholder _ in the rhs call to specify where
    the lhs is to be inserted.  The placeholder can only appear once
    on the rhs.
  * The included LAPACK sources have been updated to version 3.10.0,
    except for the four Fortran 77 routines which 3.10.0 has
    re-implemented in Fortran 90 (where the older versions have been
    retained as the R build process does not support Fortran 90).
  * path.expand() and most other uses of tilde expansion now warn if
    a path would be too long if expanded.  (An exception is
    file.exists(), which silently returns false.)
  * trunc(&lt;Date&gt;, *) now supports units = "months" or "years" for
    consistency with the POSIXt method, thanks to Dirk Eddelbuettel's
    proposal in PR#18099.
  * list2DF() now checks that its arguments are of the same length,
    rather than use recycling.
  * The HTML help system has several new features: LaTeX-like math
    can be typeset using either KaTeX or MathJax, usage and example
    code is highlighted using Prism, and for dynamic help the output
    of examples and demos can be shown within the browser if the
    knitr package is installed. These features can be disabled by
    setting the environment variable _R_HELP_ENABLE_ENHANCED_HTML_ to
    a false value.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 15
    and so packages that provide graphics devices should be
    reinstalled.
  * The grid package now allows the user to specify a "vector" of
    pattern fills.  The fill argument to gpar() accepts a list of
    gradients and/or patterns and the functions linearGradient(),
    radialGradient(), and pattern() have a new group argument.
    Points grobs (data symbols) can now also have a pattern fill.
    The grobCoords() function now returns a more informative and
    complex result.
  * The grid package has new functions for drawing isolated groups:
    grid.group(), grid.define(), and grid.use().  These functions add
    compositing operators and affine transformations to R's graphics
    capabilities.
    The grid package also has new functions for stroking and filling
    paths: grid.stroke(), grid.fill(), and grid.fillStroke().
    A new function as.path() allows the user to specify the fill rule
    for a path that is to be used for clipping, stroking, or filling;
    available options are "winding" and "evenodd".  A new function
    as.mask() allows the user to specify the type of a mask;
    available options are "alpha" and "luminance".
    These new features are only supported so far (at most) on the
    Cairo-based graphics devices and on the pdf() device.
  * dev.capabilities() reports on device support for the new
    features.
  * par() now warns about unnamed non-character arguments to prevent
    misuse such as {usr &lt;- par("usr"); par(usr)}.
  INSTALLATION:
  * Facilities for accessing ftp:// sites are no longer tested
    (except _pro tem_ for curlGetHeaders()) as modern browsers have
    removed support.
  * R can now be built with DEFS = -DSTRICT_R_HEADERS .
  PACKAGE INSTALLATION:
  * R CMD INSTALL no longer tangles vignettes. This completes an R
    CMD build change in R 3.0.0 and affects packages built before R
    3.0.2. Such packages should be re-made with R CMD build to have
    the tangled R code of vignettes shipped with the tarball.
  * USE_FC_LEN_T will become the default: this uses the correct
    prototypes for Fortran BLAS/LAPACK routines called from C/C++,
    and requires adjustment of most such calls - see 'Writing R
    Extensions' SS6.6.2.  (This has been supported since R 3.6.2.)
  * Package installation speed for packages installed with
    keep.source has been improved. This resolve the issue reported by
    Ofek Shilon in PR#18236.
  UTILITIES:
  * R CMD check can optionally report files/directories left behind
    in home, /tmp (even though TMPDIR is set) and other directories.
    See the "R Internals" manual for details.
  * R CMD check now reports byte-compilation errors during
    installation.  These are not usually fatal but may result in
    parts of the package not being byte-compiled.
  * _R_CHECK_DEPENDS_ONLY_ can be applied selectively to examples,
    tests and/or vignettes in R CMD check: see the "R Internals"
    manual.
  * _R_CHECK_SRC_MINUS_W_IMPLICIT_ now defaults to true: recent
    versions of Apple clang on macOS have made implicit function
    declarations in C into a compilation error.
  * R CMD check --as-cran makes use of the environment variable
    AUTORECONF.  See the "R Internals" manual SS8 for further details.
  * R CMD check --use-valgrind also uses valgrind when re-building
    vignettes as some non-Sweave vignettes unhelpfully comment out
    all their code when R CMD check runs vignettes.
  * Errors in re-building vignettes (unless there are LaTeX errors)
    are reported by R CMD check as ERROR rather than WARNING when
    running vignettes has been skipped (as it frequently is in CRAN
    checks and by --as-cran).
  * R CMD Rd2pdf gains a --quiet option that is used by R CMD build
    when building the PDF package manual.
  * R CMD Rd2pdf now always runs LaTeX in batch mode, consistent with
    Texinfo &gt;= 6.7. The --batch option is ignored.
  * R CMD build and R CMD check now include the Rd file name and line
    numbers in the error message of an \Sexpr evaluation failure.
  * For packages using the \doi Rd macro (now an install-time \Sexpr)
    but no other dynamic Rd content, R CMD build now produces a
    smaller tarball and is considerably faster - skipping temporary
    package installation.
  C-LEVEL FACILITIES:
  * The non-API header R_ext/R-ftp-http.h is no longer provided, as
    the entry points it covered are now all defunct.
  * A number of non-API declarations and macro definitions have been
    moved from the installed header Rinternals.h to the internal
    header Defn.h. Packages that only use entry points and
    definitions documented to be part of the API as specified in
    'Writing R Extensions' SS6 should not be affected.
  * The macro USE_RINTERNALS no longer has any effect when compiling
    package code.  Packages which also use R_NO_REMAP will need to
    ensure that the remapped names are used for calls to API
    functions that were formerly also made available as macros.
  * The deprecated legacy S-compatibility macros PROBLEM, MESSAGE,
    ERROR, WARN, WARNING, RECOVER, ... are no longer defined in
    R_exts/RS.h (included by R.h).  Replace these by calls to
    Rf_error and Rf_warning (defined in header R_ext/Error.h included
    by R.h).
    Header R_ext/RS.h no longer includes R_ext/Error.h.
  * Header R_ext/Constants.h (included by R.h) when included from C++
    now includes the C++ header cfloat rather than the C header
    float.h (now possible as C++11 is required).
  * The legacy S-compatibility macros DOUBLE_* in R_ext/Constants.h
    (included by R.h) are deprecated.
  * The deprecated S-compatibility macros SINGLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * R_Calloc, R_Free and R_Realloc are preferred to their unprefixed
    forms and error messages now use the prefix. These forms were
    introduced in R 3.4.0 and are available even when
    STRICT_R_HEADERS is defined.
  * rmultinom has been documented in 'Writing R Extensions' SS6 so is
    now part of the R API.
  * Similarly, Rtanpi, called from R level tanpi() is now part of the
    R API.
  * The long-deprecated, undocumented and non-API entry point call_R
    is no longer declared in R_ext/RS.h (included by R.h).
  * The header S.h which has been unsupported since Jan 2016 has been
    removed.  Use R.h instead.
  DEPRECATED AND DEFUNCT:
  * The (non-default and deprecated) method = "internal" for
    download.file() and url() no longer supports http:// nor ftp://
    URIs.  (It is used only for file:// URIs.)
    On Windows, download.file(method = "wininet") no longer supports
    ftp:// URIs.  (It is no longer the default method, which is
    "libcurl" and does.)
    On Windows, the deprecated method = "wininet" now gives a warning
    for http:// and https:// URIs for both download.file() and url().
    (It is no longer the default method.)
  * On Windows, the command-line option --max-mem-size and
    environment variable R_MAX_MEM_SIZE are defunct.  The memory
    allocation limit was important for 32-bit builds, but these are
    no longer supported.
  * default.stringsAsFactors() is now formally deprecated, where that
    was only mentioned on its regular help page, previously.  So it
    now gives a warning if called.
  * unix.time() is defunct now; it had been deprecated since R 3.4.0.
  BUG FIXES:
  * Setting digits = 0 in format(), print.default() (and hence
    typically print()) or options() is again invalid.  Its behaviour
    was platform-dependent, and it is unclear what "zero significant
    digits" should mean (PR#18098).
  * Messages from C code in the cairo section of package grDevices
    are now also offered for translation, thanks to Michael Chirico's
    PR#18123.
  * mean(x) with finite x now is finite also without "long.double"
    capability.
  * R CMD Rd2pdf no longer leaves an empty build directory behind
    when it aborts due to an already existing output file.  (Thanks
    to Sebastian Meyer's PR#18141.)
  * density(x, weights = w, na.rm = TRUE) when anyNA(x) is true, now
    removes weights "in parallel" to x, fixing PR#18151, reported by
    Matthias Gondan.  Additionally, it gets a subdensity option.
  * Conversion of \Sexpr[]{&lt;expR&gt;} to LaTeX or HTML no longer
    produces long blocks of empty lines when &lt;expR&gt; itself contains
    several lines all producing empty output.  Thanks to a report and
    patch by Ivan Krylov posted to R-devel.
  * R CMD build no longer fails if a package vignette uses child
    documents and inst/doc exists.  (Thanks to Sebastian Meyer's
    PR#18156.)
  * When an R documentation ('help' source) file man/foo.Rd in a
    package has \donttest{..} examples with a syntax error, it is now
    signalled as ERROR and with correct line numbers relating to the
  * -Ex.R file, thanks to Duncan Murdoch and Sebastian Meyer's
    reports and patch proposals in PR#17501.
  * Improved determination of the correct translation domain in
    non-base packages, addressing the combination of PR#18092 and
    PR#17998 (#c6) with reports and _augmented_ patch #2904 by
    Suharto Anggono.
    Note that "R-base" is no longer the default domain e.g., for
    top-level calls to gettext(); rather translation needs explicit
    domain = * specification in such cases.
  * identical(attrib.as.set=FALSE) now works correctly with data
    frames with default row names (Thanks to Charlie Gao's PR#18179).
  * txtProgressBar() now enforces a non-zero width for argument char,
    without which no progress can be visible.
  * dimnames(table(d)) is more consistent in the case where d is a
    list with a single component, thanks to Thomas Soeiro's report to
    R-devel.
    Further, table(d1, d2) now gives an error when d1 and d2 are data
    frames as suggested by Thomas in PR#18224.
  * Fix for drawing semi-transparent lines and fills on the native
    Windows graphics device (PR#18219 and PR#16694).  Thanks to Nick
    Ray for helpful diagnosis on Bugzilla.
  * The deparser now wraps sub-expressions such as if(A) ..  with
    parentheses when needed; thanks to Duncan Murdoch's PR#18232 and
    Lionel Henry's patches there.
  * remove.packages() no longer tries to uninstall Priority: base
    packages, thanks to a report and suggestions by Colin Fay in
    PR#18227.
  * win.metafile() now has xpinch and ypinch arguments so that the
    user can override Windows' (potentially wrong) guess at device
    dimensions.
  * x[i] and x[[i]] for non-integer i should now behave in all cases
    as always documented: the index used is equivalent to
    as.integer(i) unless that would overflow where trunc(i) is used
    instead; thanks to Suharto Anggono's report and patch proposals
    in PR#17977.
  * asOneSidedFormula() now associates the resulting formula with the
    global environment rather than the evaluation environment created
    for the call.
  * &lt;bibentry&gt;$name now matches the field name case-insensitively,
    consistent with bibentry() creation and the replacement method.
  * cbind() failed to detect some length mismatches with a mixture of
    time-series and non-time-series inputs.
  * The default LaTeX style file Sweave.sty used by the RweaveLatex
    driver no longer loads the obsolete ae package; thanks to a
    report by Thomas Soeiro in PR#18271.  Furthermore, it now skips
    \usepackage[T1]{fontenc} for engines other than pdfTeX (if
    detected) or if the new [nofontenc] option is used.
  * smooth.spline() now stores its logical cv argument more safely,
    fixing a rare bug when printing, and also stores n.
  * smooth.spline(x,y,*) now computes the cv.crit statistic
    correctly, also when is.unsorted(x), fixing PR#18294.
  * The data.frame method of rbind() now warns when binding
    not-wholly-recycling vectors, by analogy to the default method
    (for matrices).
  * setAs() finds the correct class for name to when multiple
    packages define a class with that name. Thanks to Gabor Csardi
    for the report.
  * Fix for detaching a package when two classes of the same name are
    present in method signatures for the same generic. Thanks to
    Gabor Csardi for the report.
  * match.arg("", c("", "a", "B")) gives a better error message, in
    part from PR#17959, thanks to Elin Waring.
  * R CMD Sweave --clean no longer removes pre-existing files or
    subdirectories (PR#18242).
  * The quartz() device no longer splits polylines into subpaths.
    That has caused narrowly-spaced lines with many points to always
    look solid even when dashed line type was used due to dash phase
    restarts.
  * Deparsing constructs such as quote(1 + `!`(2) + 3) works again as
    before R 3.5.0, thanks to the report and patch in PR#18284 by
    Suharto Anggono.
  * as.list(f) for a factor f now keeps names(f), fixing PR#18309.
  * qbeta(.001, .9, .009) and analogous qf() calls now return a
    correct value instead of NaN or wrongly 1, all with a warning;
    thanks to the report by Ludger Goeminne in PR#18302.
  * plot.lm() failed to produce the plot of residuals vs.  factor
    levels (i.e., which=5 when leverages are constant) for models
    with character predictors (PR#17840).
  * interaction.plot(..., xtick = TRUE) misplaced the x-axis line
    (PR#18305).
  * Not strictly fixing a bug, format()ing and print()ing of
    non-finite Date and POSIXt values NaN and +/-Inf no longer show
    as NA but the respective string, e.g., Inf, for consistency with
    numeric vector's behaviour, fulfilling the wish of PR#18308.
  * R CMD check no longer runs test scripts generated from
    corresponding .Rin files twice and now signals an ERROR if
    processing an .Rin script fails.
  * tools::Rd2txt() used for plain-text help pages now renders \hrefs
    (if tools::Rd2txt_options(showURLs = TRUE)) and \urls with
    percent-encoding and standards-compliant delimiting style (angle
    brackets and no URL: prefix).  \email is now rendered with a
    mailto: prefix.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1655985600">- CHANGES IN R 4.2.1:
  NEW FEATURES:
  * New function utils::findCRANmirror() to find out if a CRAN mirror
    has been selected, otherwise fallback to the main site.  This
    behaves in the same way as tools::CRAN_package_db() and is
    intended for packages wishing to access CRAN for purposes other
    than installing packages.
    The need for this was shown by a day when the main CRAN website
    was offline and a dozen or so packages which had its URL
    hardcoded failed their checks.
  INSTALLATION on a UNIX-ALIKE:
  * The libraries searched for by --with-blas (without a value) now
    include BLIS (after OpenBLAS but before ATLAS).  And on macOS,
    the Accelerate framework (after ATLAS).  (This is patterned after
    the AX_BLAS macro from the Autoconf Archive.)
  * The included LAPACK sources have been updated to 3.10.1.
  UTILITIES:
  * The (full path to) the command tidy to be used for HTML
    validation can be set by environment variable R_TIDYCMD.
  * Setting environment variable _R_CHECK_RD_VALIDATE_RD2HTML_ to a
    false value will override R CMD check --as-cran and turn off HTML
    validation.  This provides a way to circumvent a problematic
    tidy.
    The 2006 version that ships with macOS is always skipped.
  C-LEVEL FACILITIES:
  * The undocumented legacy declarations of Sint, Sfloat, SINT_MAX
    and SINT_MIN in header R.h are deprecated.
  BUG FIXES:
  * fisher.test(d) no longer segfaults for "large" d; fixing PR#18336
    by preventing/detecting an integer overflow reliably.
  * tar(., files=*) now produces correctly the warning about invalid
    uid or gid of files, fixing PR#18344, reported by Martin Morgan.
  * tk_choose.files() with multi = FALSE misbehaved on paths
    containing spaces (PR#18334) (regression introduced in R 4.0.0).
  * sort(x, partial = ind, *) now works correctly notably for the
    non-default na.last = FALSE or TRUE, fixing PR#18335 reported by
    James Edwards.
  * Environment variable _R_CHECK_XREFS_REPOSITORIES_ is only used
    for checking .Rd cross-references in R CMD check (as documented)
    and not for other uses looking for a CRAN mirror.
  * The search for a CRAN mirror when checking packages now uses
    getOption("repos") if that specifies a CRAN mirror, even when it
    does not also specify all three Bioconductor repositories (as was
    previously required).
  * The HTML code generated by tools::Rd2HTML() has been improved to
    pass tidy 5.8.0.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1667217600">- CHANGES IN R 4.2.2:
  NEW FEATURES:
  * tools::Rdiff(useDiff = TRUE) checks for the presence of an
    external diff command and switches to useDiff = FALSE if none is
    found.  This allows R CMD Rdiff to always work.
  * On Windows, environment variable R_LIBCURL_SSL_REVOKE_BEST_EFFORT
    can be used to switch to only 'best-effort' SSL certificate
    revocation checks with the default "libcurl" download method.
    This reduces security, but may be needed for downloads to work
    with MITM proxies (PR#18379).
  * (macOS) The run-time check for libraries from XQuartz for X11 and
    Tcl/Tk no longer uses otool from the Apple Developer Tools
    (PR#18400).
  * The LaTeX style for producing the PDF manuals, Rd.sty, now loads
    the standard amsmath, amsfonts and amssymb packages for greater
    coverage of math commands in the Rd \eqn and \deqn macros.  The
    \mathscr LaTeX command is also provided (via the mathrsfs
    package, if available, or the amsfonts bundle otherwise),
    fulfilling the wish of PR#18398.
  * (Windows) The default format of readClipboard() and
    writeClipboard() has been changed to 13 (CF_UNICODETEXT).
  INSTALLATION on a UNIX-ALIKE:
  * The PDF manuals (if built) can be compacted by the new target
    make compact-pdf (at the top level or in directory doc/manual).
  * There is now configure support for LLVM clang 15 on Linux, which
    defaults to position-independent (PIE) executables whereas
    gfortran does not.
  * Many small changes to ease compilation (and suppress warnings)
    with LLVM clang 15.
  BUG FIXES:
  * Rscript -e would fail if stdin were closed (Reported by Henrik
    Bengtsson.)
  * qt(*, log.p=TRUE) in outer tails no longer produces NaN in its
    final steps, thus fixing PR#18360.
  * tools::Rd2latex() now escapes hashes and ampersands when writing
    URLs, fixing LaTeX errors with such URLs in \tabular.
  * When isGeneric(f, fdef=*) is used with mismatching names, the
    warning is better understandable; reported (with fix) in PR#18370
    by Gabe Becker.
  * poly(x, n) now works again (and is now documented) when x is a
    "Date" or "POSIXct" object, or of another class while fulfilling
    mode(x) == "numeric".  This also enables poly(x, *, raw=TRUE) for
    such variables.  Reported by Michael Chirico to R-devel.
  * write.table(), write.csv() and write.csv2() restore their
    numerical precision (internal equivalent of digits = 15) after an
    interrupt (PR#18384).
  * One can now read also byte FF from a clipboard connection
    (PR#18385).
  * source("") and source(character()) now give more helpful error
    messages.
  * R CMD check --as-cran set _R_CHECK_TIMINGS_ too late to have the
    intended effect.
  * as.POSIXlt(x) now also works with very large dates x, fixing
    PR#18401 reported by Hannes M"uhleisen.
  * Files can now be extracted even from very large zip archives
    (PR#18390, thanks to Martin Jakt).
  * Non-finite objects of class "POSIXlt" are now correctly coerced
    to classes "Date" and "POSIXct"; following up on the extension to
    format() them correctly.
  * Added methods for is.finite(), is.infinite() and is.nan() for
    "POSIXlt" date-time objects.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1678881600">- CHANGES IN R 4.2.3:
  C-LEVEL FACILITIES:
  * The definition of DL_FUNC in R_ext/Rdynload.h has been changed to
    be fully C-compliant.  This means that functions loaded _via_ for
    example R_GetCCallable need to be cast to an appropriate type if
    they have any arguments.
  * .Machine has a new element sizeof.time_t to identify old systems
    with a 32-bit type and hence a limited range of date-times (and
    limited support for dates millions of years from present).
  PACKAGE INSTALLATION:
  * (Windows) The default C++ standard had accidentally been left at
    C++11 when it was changed to C++14 on Unix.
  BUG FIXES:
  * As "POSIXlt" objects may be "partially filled" and their list
    components meant to be recycled, length() now is the length of
    the longest component.
  * as.POSIXlt.Date() could underflow for dates in the far past (more
    than half a million years BCE).
  * as.Date.POSIXlt(x) would return "1970-01-01" instead of NA in R
    4.2.2, e.g., for
    x &lt;- as.POSIXlt(c("2019-01-30","2001-1-1"))
    x$mon &lt;- c(0L, NA); as.Date(x)
  * R CMD check failed to apply enabled _R_CHECK_SUGGESTS_ONLY_ to
    examples and vignettes (regression in R 4.2.0).
  * R CMD check did not re-build vignettes in separate processes by
    default (regression in R 4.2.0).
  * Running examples from HTML documentation now restores previous
    knitr settings and options (PR#18420).
  * Quartz: fonts are now located using Core Graphics API instead of
    deprecated ATS which is no longer supported in the macOS 13 SDK
    (PR#18426).  This also addresses an issue where the currently
    used font in the Quartz device context was not correctly
    retained.
  * (Windows) Math symbols in text drawing functions are again
    rendered correctly (PR#18440).  This fixes a regression in R
    4.2.1 caused by a fix in PR#18382 which uncovered an issue in
    GraphApp due to which the symbol charset was not used with TT
    Symbol font face.
  * (Windows) Installing a package with a src/Makefile.{win,ucrt}
    file includes ~/.R/Makevars.win64 in the search for user
    makevars, as documented in "R Installation and Administration"
    and done for packages with a src/Makevars.{win,ucrt} file.
  * format(&lt;POSIXlt_w/_unbalanced_sec&gt;, "....%OS&lt;n&gt;") with n &gt; 0 no
    longer accidentally uses the unbalanced seconds, thanks to
    Suharto Anggono's report (including patch) in PR#18448.
  * solve.default(a, b) works around issues with some versions of
    LAPACK when a contains NA or NaN values.
  * When UseMethod() cannot dispatch, it no longer segfaults
    producing the error message in case of a long class(), thanks to
    Joris Vankerschaver's report (including patch) in PR#18447.
  * When example(foo, ..) produces graphics on an interactive device
    it needs to open itself, it now leaves devAskNewPage() unchanged
    even when it was FALSE, thus fixing a 14 years old '&lt;FIXME&gt;'.
  * packageDescription() again catches errors from encoding
    conversions. This also fixes broken packageVersion() in C locale
    on systems where iconv does not support transliteration.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1681128000">- add patch to build with libcurl &gt;= 8</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1682078400">- CHANGES IN R 4.3.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Calling &amp;&amp; or || with LHS or (if evaluated) RHS of length greater
    than one is now always an error, with a report of the form
    'length = 4' in coercion to 'logical(1)'
    Environment variable _R_CHECK_LENGTH_1_LOGIC2_ no longer has any
    effect.
  NEW FEATURES:
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.10.1.  (This caused some platform-dependent
    changes to package check output.)  And then to the sources from
    LAPACK version 3.11.0 (with changes only to double complex
    subroutines).
  * The included LAPACK sources have been updated to include the four
    Fortran 90 routines rather than their Fortran 77 predecessors.
    This may give some different signs in SVDs or
    eigendecompositions..  (This completes the transition to LAPACK
    3.10.x begun in R 4.2.0.)
  * The LAPACK sources have been updated to version 3.11.0.  (No new
    subroutines have been added, so this almost entirely bug fixes:
    Those fixes do affect some computations with NaNs, including R's
    NA.)
  * The parser now signals _classed_ errors, notably in case of the
    pipe operator |&gt;.  The error object and message now give line and
    column numbers, mostly as proposed and provided by Duncan Murdoch
    in PR#18328.
  * toeplitz() is now generalized for asymmetric cases, with a
    toeplitz2() variant.
  * xy.coords() and xyz.coords() and consequently, e.g., plot(x,y,
    log = "y") now signal a _classed_ warning about negative values
    of y (where log(.) is NA).  Such a warning can be specifically
    suppressed or caught otherwise.
  * Regular expression functions now check more thoroughly whether
    their inputs are valid strings (in their encoding, e.g. in
    UTF-8).
  * The performance of grep(), sub(), gsub() and strsplit() has been
    improved, particularly with perl = TRUE and fixed = TRUE.  Use of
    useBytes = TRUE for performance reasons should no longer be
    needed and is discouraged: it may lead to incorrect results.
  * apropos() gains an argument dot_internals which is used by the
    completion (help(rcompgen)) engine to also see base internals
    such as .POSIXct().
  * Support in tools::Rdiff() for comparing uncompressed PDF files is
    further reduced - see its help page.
  * qqplot(x, y, ...) gains conf.level and conf.args arguments for
    computing and plotting a confidence band for the treatment
    function transforming the distribution of x into the distribution
    of y (Switzer, 1976, _Biometrika_). Contributed by Torsten
    Hothorn.
  * Performance of package_dependencies() has been improved for cases
    when the number of dependencies is large.
  * Strings newly created by gsub(), sub() and strsplit(), when any
    of the inputs is marked as "bytes", are also marked as "bytes".
    This reduces the risk of creating invalid strings and accidental
    substitution of bytes deemed invalid.
  * Support for readLines(encoding = "bytes") has been added to allow
    processing special text files byte-by-byte, without creating
    invalid strings.
  * iconv(from = "") now takes into account any declared encoding of
    the input elements and uses it in preference to the native
    encoding.  This reduces the risk of accidental creation of
    invalid strings, particularly when different elements of the
    input have different encoding (including "bytes").
  * Package repositories in getOption("repos") are now initialized
    from the repositories file when utils is loaded (if not already
    set, e.g., in .Rprofile).  (From a report and patch proposal by
    Gabriel Becker in PR#18405.)
  * compactPDF() gets a verbose option.
  * type.convert() and hence read.table() get new option tryLogical =
    TRUE with back compatible default.  When set to false, converts
    "F" or "T" columns to character.
  * Added new unit prefixes "R" and "Q" for abbreviating
    (unrealistically large) sizes beyond 10^{27} in standard = "SI",
    thanks to Henrik Bengtsson's PR#18435.
  * as.data.frame()'s default method now also works fine with atomic
    objects inheriting from classes such as "roman", "octmode" and
    "hexmode", such fulfilling the wish of PR#18421, by Benjamin
    Feakins.
  * The as.data.frame.vector() utility now errors for wrong-length
    row.names.  It warned for almost six years, with "Will be an
    error!".
  * sessionInfo() now also contains La_version() and reports codepage
    and timezone when relevant, in both print() and toLatex() methods
    which also get new option tzone for displaying timezone
    information when locale = FALSE.
  * New function R_compiled_by() reports the C and Fortran compilers
    used to build R, if known.
  * predict(&lt;lm&gt;, newdata = *) no longer unnecessarily creates an
    offset of all 0s.
  * solve() for complex inputs now uses argument tol and by default
    checks for 'computational singularity' (as it long has done for
    numeric inputs).
  * predict(&lt;rank-deficient lm&gt;, newdata=*) now obeys a new argument
    rankdeficient, with new default "warnif", warning only if there
    are non-estimable cases in newdata.  Other options include
    rankdeficient = "NA", predicting NA for non-estimable newdata
    cases.  This addresses PR#15072 by Russ Lenth and is based on his
    original proposal and discussions in PR#16158 also by David Firth
    and Elin Waring.  Still somewhat experimental.
  * Rgui console implementation now works better with the NVDA screen
    reader when the full blinking cursor is selected.  The underlying
    improvements in cursor handling may help also other screen
    readers on Windows.
  * The drop-field control in GraphApp can now be left with the TAB
    key and all controls can be navigated in the reverse order using
    the Shift+TAB key, improving accessibility of the Rgui
    configuration editor.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now fully accurate
    (instead of to "only" minimally five digits).
  * demo(error.catching) now also shows off withWarnings() and
    tryCatchWEMs().
  * As an experimental feature the placeholder _ can now also be used
    in the rhs of a forward pipe |&gt; expression as the first argument
    in an extraction call, such as _$coef. More generally, it can be
    used as the head of a chain of extractions, such as _$coef[[2]].
  * Spaces in the environment variable used to choose the R session's
    temporary directory (TMPDIR, TMP and TEMP are tried in turn) are
    now fatal.  (On Windows the 'short path' version of the path is
    tried and used if that does not contain a space.)
  * all.equal.numeric() gets a new optional switch giveErr to return
    the numeric error as attribute.  Relatedly,
    stopifnot(all.equal&lt;some&gt;(a, b, ..)) is as "smart" now, as
    stopifnot(all.equal(....)) has been already, thus allowing
    customized all.equal&lt;Some&gt;() wrappers.
  * R on Windows is now able to work with path names longer than 260
    characters when these are enabled in the system (requires at
    least Windows 10 version 1607).  Packages should be updated to
    work with long paths as well, instead of assuming PATH_MAX to be
    the maximum length.  Custom front-ends and applications embedding
    R need to update their manifests if they wish to allow this
    feature.  See
    &lt;https://blog.r-project.org/2023/03/07/path-length-limit-on-windows&gt;
    for more information.
  * 'Object not found' and 'Missing argument' errors now give a more
    accurate error context. Patch provided by Lionel Henry in
    PR#18241.
  * The @ operator is now an S3 generic. Based on contributions by
    Tomasz Kalinowski in PR#18482.
  * New generic chooseOpsMethod() provides a mechanism for objects to
    resolve cases where two suitable methods are found for an Ops
    Group Generic. This supports experimenting with alternative
    object systems. Based on contributions by Tomasz Kalinowski in
    PR#18484.
  * inherits(x, what) now accepts values other than a simple
    character vector for argument what. A new generic, nameOfClass(),
    is called to resolve the class name from what. This supports
    experimenting with alternative object systems. Based on
    contributions by Tomasz Kalinowski in PR#18485.
  * Detection of BLAS/LAPACK in use (sessionInfo()) with FlexiBLAS
    now reports the current backend.
  * The "data.frame" method for subset() now warns about extraneous
    arguments, typically catching the use of = instead of == in the
    subset expression.
  * Calling a:b when numeric a or b is longer than one may now be
    made into an error by setting environment variable
    _R_CHECK_LENGTH_COLON_ to a true value, along the proposal in
    PR#18419 by Henrik Bengtsson.
  * density(x, weights = *) now warns if automatic bandwidth
    selection happens without using weights; new optional warnWbw may
    suppress the warning.  Prompted by Christoph Dalitz' PR#18490 and
    its discussants.
  * rm(list = *) is faster and more readable thanks to Kevin Ushey's
    PR#18492.
  * The plot.lm() function no longer produces a normal Q-Q plot for
    GLMs. Instead it plots a half-normal Q-Q plot of the absolute
    value of the standardized deviance residuals.
  * The print() method for class "summary.glm" no longer shows
    summary statistics for the deviance residuals by default.  Its
    optional argument show.residuals can be used to show them if
    required.
  * The tapply() function now accepts a data frame as its X argument,
    and allows INDEX to be a formula in that case. by.data.frame()
    similarly allows INDICES to be a formula.
  * The performance of df[j] &lt;- value (including for missing j) and
    write.table(df) has been improved for data frames df with a large
    number of columns.  (Thanks to Gabriel Becker's PR#18500,
    PR#18503 and discussants, prompted by a report from Toby Dylan
    Hocking on the R-devel mailing list.)
  * The matrix multiply operator %*% is now an S3 generic, belonging
    to new group generic matrixOps.  From Tomasz Kalinowski's
    contribution in PR#18483.
  * New function array2DF() to convert arrays to data frames,
    particularly useful for the list arrays created by tapply().
  DATES and TIMES:
  * On platforms where (non-UTC) datetimes before 1902 (or before
    1900 as with system functions on recent macOS) are guessed by
    extrapolating time zones from 1902-2037, there is a warning at
    the first use of extrapolation in a session.  (As all time zones
    post 2037 are extrapolation, we do not warn on those.)
  * (Platforms using --with-internal-tzone, including Windows and by
    default macOS). How years are printed in dates or date-times can
    be controlled by environment variable R_PAD_YEARS_BY_ZERO.  The
    default remains to pad to 4 digits by zeroes, but setting value
    no gives no padding (as used by default by glibc).
  * strftime() tries harder to determine the offset for the "%z"
    format, and succeeds on the mainstream R platforms.
  * strftime() has a limit of 2048 bytes on the string produced -
    attempting to exceed this is an error.  (Previously it silently
    truncated at 255 bytes.)
  * sessionInfo() records (and by default prints) the system time
    zone as part of the locale information.  Also, the source
    (system/internal) of the date-time conversion and printing
    functions.
  * Objects of class "POSIXlt" created in this version of R always
    have 11 components: component zone is always set, and component
    gmtoff is set for times in UTC and usually set on the (almost
    all) platforms which have C-level support, otherwise is NA.
  * There are comprehensive validity checks on the structure of
    objects of class "POSIXlt" when converting (including formatting
    and printing).  (This avoids mis-conversions of hand-crafted
    objects.)
  * There is some support for using the native date-time routines on
    macOS: this is only viable on recent versions (e.g. 12.6 and 13)
    and does get wrong some historical changes (before 1900, during
    WWII).  Use of --with-internal-tzone remains the default.
  * as.POSIXct(&lt;numeric&gt;) and as.POSIXlt(.) (without specifying
    origin) now work.  So does as.Date(&lt;numeric&gt;).
  * as.Date.POSIXct(., tz) now treats several tz values, notably
    "GMT" as equivalent to "UTC", proposed and improved by Michael
    Chirico and Joshua Ulrich in PR#17674.
  * Experimental balancePOSIXlt() utility allows using "ragged" and
    or out-of-range "POSIXlt" objects more correctly, e.g., in
    subsetting and subassignments.  Such objects are now documented.
    More experimentally, a "POSIXlt" object may have an attribute
    "balanced" indicating if it is known to be filled or fully
    balanced.
  * Functions axis.Date() and axis.POSIXct() are rewritten to gain
    better default tick locations and better default formats by using
    prettyDate(). Thanks to Swetlana Herbrandt.
  * The mapping of Windows' names for time zones to IANA's 'Olson'
    names has been updated.  When ICU is available (it is by
    default), it is used to get a mapping for the current region set
    in Windows.  This can be overridden by setting environment
    variable TZ to the desired Olson name - see OlsonNames() for
    those currently available.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 16
    and so packages that provide graphics devices should be
    reinstalled.
  * The grDevices and grid packages have new functions for rendering
    typeset glyphs, primarily: grDevices::glyphInfo() and
    grid::grid.glyph().
    Rendering of typeset glyphs is only supported so far on the
    Cairo-based graphics devices and on the pdf() and quartz()
    devices.
  * The defined behaviour for "clear" and "source" compositing
    operators (via grid::grid.group()) has been changed (to align
    better with simple interpretation of original Porter-Duff
    definitions).
  * Support for gradients, patterns, clipping paths, masks, groups,
    compositing operators, and affine transformations has been added
    to the quartz() device.
  INSTALLATION on a UNIX-ALIKE:
  * A system installation of generic LAPACK 3.10.0 or later will be
    preferred to the version in the R sources.
    configure option --with-lapack=no (equivalently --without-lapack)
    forces compilation of the internal LAPACK sources.
    If --with-lapack is not specified, a system liblapack is looked
    for and used if it reports version 3.10.0 or later and does not
    contain BLAS routines.
    Packages using LAPACK will need to be reinstalled if this changes
    to using an external library.
  * On aarch64 Linux platforms using GCC, configure now defaults to
  - fPIC (instead of -fpic), as desired in PR#18326.
  * configure now checks conversion of datetimes between POSIXlt and
    POSIXct around year 2020.  Failure (which has been seen on
    platforms missing tzdata) is fatal.
  * If configure option --with-valgrind-instrumentation is given
    value 1 or 2, option --with-system-valgrind-headers is now the
    default and ignored (with a warning).  It is highly recommended
    that the system headers are installed alongside valgrind: they
    are part of its packaging on some Linux distributions and
    packaged separately (e.g. in the valgrind-devel RPM) on others.
    configure will give a warning if they are not found.
    The system headers will be required in a future release of R to
    build with valgrind instrumentation.
  * libcurl 8.x is now accepted by configure: despite a change in
    major version number it changes neither API nor ABI.
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools43, an update of the Rtools42 toolchain.  It is
    based on gcc 12 and newer versions of MinGW-W64, binutils and
    libraries.  At this time R-devel can still be built using
    Rtools42 without changes, but when R-devel is installed via the
    installer, it will by default look for Rtools43.
  * Old make targets rsync-extsoft and 32-bit ones that are no longer
    needed have been removed.
  * Default builds (including for packages) no longer select C99.
    Thus the C standard used is the default for the compiler, which
    for the toolchain in Rtools43 is C17.  (This is consistent with
    Unix builds.)
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++17 where
    available (which it is on all currently checked platforms): if
    not C++14 or C++11 is used if available otherwise C++ is not
    supported.
  * USE_FC_LEN_T is the default: this uses the correct
    (compiler-dependent) prototypes for Fortran BLAS/LAPACK routines
    called from C/C++, and requires adjustment of many such calls -
    see 'Writing R Extensions' SS6.6.1.
  * There is initial support for C++23 as several compilers are now
    supporting -std=c++23 or -std=c++2b or similar.  As for C++20,
    there no additional configure checks for C++23 features beyond a
    check that the compiler reports a __cplusplus value greater than
    that in the C++20 standard.  C++ feature tests should be used.
  * There is support for a package to indicate the version of the C
    standard which should be used to compile it, and for the
    installing user to specify this.  In most cases R defaults to the
    C compiler's default standard which is C17 (a `bug-fix' of C11) -
    earlier versions of R or compilers may have defaulted to C99.
    Current options are:
    USE_C17 Use a standard that is at most C17.  The intention is to
    allow legacy packages to still be installed when later C
    standards become the default, including packages using new
    keywords as identifiers or with K&amp;R-style function
    declarations.  This will use C17 if available, falling back
    to C11.
    USE_C90 Use the C90 (aka C89) standard.  (As that standard did
    not require compilers to identify that version, all we can
    verify is that the compiler does not claim to be using a
    later standard.  It may accept C99 features - for example
    clang accepts // to make comments.)
    USE_C99 Use the C99 standard. This should be rarely needed - it
    avoids the few new features of C11/C17 which can be useful if
    a package assumes them if C17 is specified and they are not
    implemented.
    USE_C23 Use C23 (or in future, later).  Compiler/library support
    for C23 is still being implemented, but LLVM clang from
    15.0.0 and the upcoming GCC 13 have quite extensive support.
    These can be specified as part of the SystemRequirements field in
    the package's DESCRIPTION file or _via_ options --use-C17 and so
    on of R CMD INSTALL and R CMD SHLIB.
    For further details see "Writing R Extensions" SS1.2.5.
  * (Windows) A src/Makefile.ucrt or src/Makefile.win file is now
    included after R_HOME/etcR_ARCH/Makeconf and so no longer needs
    to include that file itself.  Installation of a package with such
    a file now uses a site Makevars file in the same way as a package
    with a src/Makevars.win file would.
  * configure is now passed crucial variables such as CC and CFLAGS
    in its environment, as many packages were not setting them (as
    documented in 'Writing R Extensions' SS1.2).
    This has most effect where configure is used to compile parts of
    the package - most often by cmake or libtool which obfuscate the
    actual compile commands used.
    Also used for configure.win and configure.ucrt on Windows.
  FORTRAN FLAGS:
  * The flag -fno-optimize-sibling-calls is no longer forced for
    gfortran 7 and later.  It should no longer be needed now using
    'hidden' character-length arguments when calling BLAS/LAPACK
    routines from C/C++ is the default even for packages.  (Unless
    perhaps packages call Fortran code from C/C++ without using R's
    headers and without allowing for these arguments.)
  C-LEVEL FACILITIES:
  * The deprecated S-compatibility macros DOUBLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * The deprecated legacy typedefs of Sint and Sfloat in header R.h
    are no longer defined, and that header no longer includes header
    limits.h from C nor climits from C++.
  * New macro CAD5R() is provided in Rinternals.h and used in a few
    places in the R sources.
  * ALTREP now supports VECSXP vectors. Contributed by Gabor Csardi
    in PR#17620.
  * The Rcomplex definition (in header R_ext/Complex.h) has been
    extended to prevent possible mis-compilation when interfacing
    with Fortran (PR#18430).  The new definition causes compiler
    warnings with static initializers such as {1, 2}, which can be
    changed to {.r=1, .i=2}.
    Using the new definition from C++ depends on compiler extensions
    supporting C features that have not been incorporated into the
    C++ standards but are available in g++ and clang++: this may
    result in C++ compiler warnings but these have been worked around
    for recent versions of common compilers (GCC, Apple/LLVM clang,
    Intel).
    It is intended to change the inclusion of header R_ext/Complex.h
    by other R headers, so C/C++ code files which make use of
    Rcomplex should include that header explicitly.
  UTILITIES:
  * R CMD check does more checking of package .Rd files, warning
    about invalid email addresses and (some) invalid URIs and noting
    empty \item labels in description lists.
  * R CMD check now also reports problems when reading package news
    in md (file NEWS.md) and (optionally) plain text (file NEWS)
    formats.
  * _R_CHECK_TIMINGS_ defaults to a value from the environment even
    for R CMD check --as-cran; this allows for exceptionally fast or
    slow platforms.
    It now applies to checking PDF and HTML versions of the manuals,
    and 'checking CRAN incoming feasibility'.
  * R CMD check can optionally (but included in --as-cran) check
    whether HTML math rendering _via_ KaTeX works for the package .Rd
    files.
  * Non-interactive debugger invocations can be trapped by setting
    the environment variable _R_CHECK_BROWSER_NONINTERACTIVE_ to a
    true value.  This is enabled by R CMD check --as-cran to detect
    the use of leftover browser() statements in the package.
  * The use of sprintf and vsprintf from C/C++ has been deprecated in
    macOS 13 and is a known security risk.  R CMD check now reports
    (on all platforms) if their use is found in compiled code:
    replace by snprintf or vsnprintf respectively. [*NB:* whether
    such calls get compiled into the package is platform-dependent.]
  * Where recorded at installation, R CMD check reports the C and
    Fortran compilers used to build R.
    It reports the OS in use (if known, as given by osVersion) as
    well as that R was built for.
    It notes if a C++ standard was specified which is older than the
    current default: many packages have used C++11 to mean 'not
    C++98' - as C++11 is the minimum supported since R 4.0.0, that
    specification can probably be removed.
  * R CMD INSTALL reports the compilers (and on macOS, the SDK) used,
    and this is copied to the output of R CMD check.
    Where a C++ standard is specified, it is reported.
  * R CMD check's 'checking compilation flags in Makevars' has been
    relaxed to accept the use of flags such as -std=f2008 in
    PKG_FFLAGS.
  * tools::buildVignettes() has a new argument skip, which is used by
    R CMD check to skip (and note) vignettes with unavailable
    \VignetteDepends (PR#18318).
  * New generic .AtNames() added to enable class-specific completions
    after @. The formerly internal function findMatches() is now
    exported, mainly for use in methods for .DollarNames() and
    .AtNames().
  DEPRECATED AND DEFUNCT:
  * default.stringsAsFactors() is defunct.
  * Calling as.data.frame.&lt;class&gt;() directly (for 12 atomic classes)
    is going to be formally deprecated, currently activated by
    setting the environment variable
    _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ to non-empty, which also
    happens in R CMD check --as-cran.
  BUG FIXES:
  * Hashed environments with sizes less than 5 can now grow.
    (Reported to R-devel by Duncan Garmonsway.)
  * as.character(&lt;Rd&gt;, deparse = TRUE) failed to re-escape curly
    braces in LaTeX-like text.  (Reported by Hadley Wickham in
    PR#18324.)
  * library() now passes its lib.loc argument when requiring Depends
    packages; reported (with fix) in PR#18331 by Mikael Jagan.
  * R CMD Stangle: improved message about 'Output' files.
  * head(x, n) and tail(x, n) now signal an error if n is not
    numeric, instead of incidentally "working" sometimes returning
    all of x.  Reported and discussed by Colin Fay, in PR#18357.
  * The "lm" method for summary() now gives the correct F-statistic
    when the model contains an offset.  Reported in PR#18008.
  * C() and `contrasts&lt;-`() now preserve factor level names when
    given a function object (as opposed a function name which did
    preserve names). Reported in PR#17616.
  * c(a = 1, 2)[[]] no longer matches 2 but rather signals a
    _classed_ error.  Reported and analysed by Davis Vaughan in
    PR#18367, a duplicate of PR#18004, by Jan Meis et al.  For
    consistency, NULL[[]] is also erroneous now.  x[[]] &lt;- v gives an
    error of the same class "MissingSubscriptError".
  * The relist() function of utils now supports NULL elements in the
    skeleton (PR#15854).
  * ordered(levels = *) (missing x) now works analogously to factor(,
    ordered=TRUE); reported (with fix) by Achim Zeileis in PR#18389.
  * User-defined Rd macro definitions can now span multiple lines,
    thanks to a patch from Duncan Murdoch. Previously, the Rd parser
    silently ignored everything after the first line.
  * Plain-text help (tools::Rd2txt()) now preserves an initial blank
    line for text following description list items.
  * tools::Rd2HTML() and tools::Rd2latex() no longer split \arguments
    and \value lists at Rd comments.
  * tools::Rd2latex() now correctly handles optional text outside
    \items of argument lists as well as bracketed text at the
    beginning of sections, e.g., \value{[NULL]}.
  * as.character(&lt;POSIXt&gt;) now behaves more in line with the methods
    for atomic vectors such as numbers, and is no longer influenced
    by options().  Ditto for as.character(&lt;Date&gt;).  The
    as.character() method gets arguments digits and OutDec with
    defaults _not_ depending on options().  Use of as.character(*,
    format = .) now warns.
  * Similarly, the as.character.hexmode() and *.octmode() methods
    also behave as good citizen methods and back compatibility option
    keepStr = TRUE.
  * The as.POSIXlt(&lt;POSIXlt&gt;) and as.POSIXct(&lt;POSIXct&gt;) default
    methods now do obey their tz argument, also in this case.
  * as.POSIXlt(&lt;Date&gt;) now does apply a tz (time zone) argument, as
    does as.POSIXct(); partly suggested by Roland Fuss on the R-devel
    mailing list.
  * as.Date.POSIXlt(x) now also works when the list components are of
    unequal length, aka "partially filled" or "ragged".
  * expand.model.frame() looked up variables in the wrong environment
    when applied to models fitted without data.  Reported in
    PR#18414.
  * time() now (also) uses the ts.eps = getOption("ts.eps") argument
    and thus by default rounds values very close to the start (or
    end) of a year.  Based on a proposal by Andre"i V. Kostyrka on
    R-help.
  * Printing of a factanal() result with just one factor and sort =
    TRUE now works regularly, fixing PR#17863 by Timothy Bates,
    thanks to the 'R Contributors' working group.
  * Printing 0-length objects of class "factor", "roman", "hexmode",
    "octmode", "person", "bibentry", or "citation" now prints
    something better, one of which fixes PR#18422, reported by
    Benjamin Feakins.
  * Sys.timezone() queries timedatectl only if systemd is loaded;
    addressing a report by Jan Gorecki in PR#17421.
  * The formula method of cor.test() had scoping problems when
    environment(formula) was not the calling environment; reported
    with a patch proposal by Mao Kobayashi in PR#18439.
  * attach() of an environment with active bindings now preserves the
    active bindings.  Reported by Kevin Ushey in PR#18425.
  * BLAS detection now works also with system-provided libraries not
    available as regular files.  This fixes detection of the
    Accelerate framework on macOS since Big Sur.  Reported by David
    Novgorodsky.
  * download.file() gives a helpful error message in case of an
    invalid download.file.method option, thanks to Colin Fay's report
    in PR#18455.
  * Sporadic crashes of Rterm when using completion have been fixed.
  * Rprof() is now more reliable.  A livelock in thread
    initialization with too short sampling interval has been fixed on
    macOS.  A deadlock in using the C runtime has been fixed on
    Windows.  A potential deadlock has been prevented on Unix.
  * Cursor placement in Rgui now works even after a fixed-width font
    is selected.
  * Mandatory options (options()) are now set on startup so that
    saving and restoring them always works (PR#18372).
  * Package installation, R CMD INSTALL or install.packages(*), now
    parses each of the &lt;pkg&gt;/R/*.R files individually instead of
    first concatenating and then parse()ing the large resulting file.
    This allows parser or syntax errors to be diagnosed with correct
    file names and line numbers, thanks to Simon Dedman's report and
    Bill Dunlap's patch in PR#17859.
    This _does_ require syntactically self contained R source files
    now, fixing another inadvertent bug.
  * predict.lm(&lt;model with offset&gt;) now finds the offset in the
    correct environment, thanks to Andr'e Gillibert's report and patch
    in PR#18456.
  * getInitial(&lt;formula&gt;) now finds the selfStart model in the
    correct environment.  (Reported by Ivan Krylov in PR#18368.)
  * Fix for possible segfault when using recently-added graphics
    features, such as gradients, clipping paths, masks, and groups
    with pdf(file=NULL).
  * class(m) &lt;- class(m) no longer changes a matrix m by adding a
    class _attribute_.
  * packageDate(pkg) now only warns once if there is no pkg.
  * When ts() creates a multivariate time series, "mts", it also
    inherits from "array" now, and is.mts() is documented _and_
    stricter.
  * Rd2txt() now preserves line breaks of \verb Rd content and from
    duplicated \cr.  The former also fixes the rendering of verbatim
    output from Rd \Sexpr in plain-text help.
  * uniroot(f, interval) should no longer wrongly converge _outside_
    the interval in some cases where abs(f(x)) == Inf for an x at the
    interval boundary, thanks to posts by Ben Bolker and Serguei
    Sokol on R-devel.
  * Vectorized alpha handling in palette functions such as in gray(),
    rainbow(), or hcl.colors() works correctly now, thanks to Achim
    Zeileis' report and patch in PR#18476.
  * Formatting and print()ing of bibentry objects has dropped the
    deprecated citation.bibtex.max argument, such that the bibtex
    argument's default for print.bibentry() depends directly on the
    citation.bibtex.max option, whereas in format.bibentry() the
    option no longer applies.
  * Attempting to use a character string naming a foreign function
    entry point in a foreign function call in a package will now
    signal an error if the packages has called R_forceSymbols to
    specify that symbols must be used.
  * An error in table() could permanently set options(warn=2)
    promoting all subsequent warnings to errors.
  * The sigma() function gave misleading results for binary GLMs.  A
    new method for objects of class "glm" returns the square root of
    the estimate of the dispersion parameter using the same
    calculation as summary.glm().
  * bs() and ns() in the (typical) case of automatic knot
    construction, when some of the supposedly inner knots coincide
    with boundary knots, now moves them inside (with a warning),
    building on PR#18442 by Ben Bolker.
  * R CMD on Windows now skips the site profile with --no-site-file
    and --vanilla even when R_PROFILE is set (PR#18512, from Kevin
    Ushey).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1686916800">- CHANGES IN R 4.3.1:
  C-LEVEL FACILITIES:
  * The C-level API version of R's integrate(), Rdqags() in Applic.h,
    now returns the correct number of integrand evaluations neval,
    fixing PR#18515 reported and diagnosed by Stephen Wade.
  * The C prototypes for LAPACK calls dspgv and dtptrs in
    R_exts/Lapack.h had one too many and one too few character length
    arguments - but this has not caused any known issues. To get the
    corrected prototypes, include
    [#]include &lt;Rconfig.h&gt; // for PR18534fixed
    [#]ifdef PR18534fixed
    [#] define usePR18534fix 1
    [#]endif
    [#]include &lt;R_exts/Lapack.h&gt;
    in your C/C++ code (PR#18534).
  INSTALLATION:
  * Many of the checks of esoteric Internet operations and those
    using unreliable external sites have been moved to a new target
    that is not run by default and primarily intended for the core
    developers.  To run them use
    cd tests; make test-Internet-dev
  BUG FIXES:
  * .S3methods(), typically called from methods(), again marks
    methods from package base as visible.
    Also, the visibility of non-base methods is again determined by
    the method's presence in search().
  * tools::Rdiff() is now more robust against invalid strings, fixing
    installation tests on Windows without Rtools installed
    (PR#18530).
  * Fix (new) bug in hcl.colors(2, *), by Achim Zeileis (PR#18523).
  * head(., &lt;illegal&gt;) and tail(..) now produce more useful "Error in
    ...." error messages, fixing PR#18362.
  * Package code syntax on Windows is checked in UTF-8 when UTF-8 is
    the native encoding.
  * na.contiguous(x) now also returns the first run, when it is at
    the beginning and there is a later one of the same length;
    reported to R-devel, including a fix, by Georgi Boshnakov.
    Further, by default, it modifies only an existing attr(*,"tsp")
    but otherwise no longer sets one.
  * chol(&lt;not pos.def&gt;, pivot = &lt;T|F&gt;) now gives a correct error or
    warning message (depending on pivot), thanks to Mikael Jagan's
    (PR#18541).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1699012800">- CHANGES IN R 4.3.2:
  NEW FEATURES:
  * The default initialization of the "repos" option from the
    repositories file at startup can be skipped by setting
    environment variable R_REPOSITORIES to NULL such that
    getOption("repos") is empty if not set elsewhere.
  * qr.X() is now an implicit S4 generic in methods.
  * iconv(to = "ASCII//TRANSLIT") is emulated using substitution on
    platforms which do not support it (notably Alpine Linux).  This
    should give a human-readable conversion in ASCII on all platforms
    (rather than NA_character_).
  * trans3d() gains options continuous and verbose addressing the
    problem of possible "wrap around" when projecting too long
    curves, as reported by Achim Zeileis in PR#18537.
  * tools::showNonASCII() has been rewritten to work better on macOS
    14 (which has a changed implementation of iconv()).
  * tiff(type = "quartz") (the default on macOS) now warns if
    compression is specified: it continues to be ignored.
  INSTALLATION on a UNIX-ALIKE:
  * There is some support for building with Intel's LLVM-based
    compilers on x86_64 Linux, such as (C) icx, (C++) ipcx and
    (Fortran) ifx from oneAPI 2023.x.y.
  * There is support for using LLVM's flang-new as the Fortran
    compiler from LLVM 16.0.x (preferably 17.0.0 or later).
  UTILITIES:
  * R CMD check reports the use of the Fortran 90 random number
    generator RANDOM_NUMBER() and the subroutines to initialize it.
    'Writing R Extensions' has example code to use R's RNGs from
    Fortran.
  BUG FIXES:
  * substr(x, n, L) &lt;- cc now works (more) correctly for multibyte
    UTF-8 strings x when L &gt; nchar(x), thanks to a report and patch
    by 'Architect 95'.
  * contrib.url(character()) now returns 0-length character() as
    documented, which also avoids spurious warnings from
    available.packages() et al. in the edge case of an empty vector
    of repository URLs.
  * readChar(., 4e8) no longer fails, thanks to Kodi Arfer's report
    (PR#18557).
  * lapply(&lt;list&gt;, as.data.frame) no longer warns falsely for some
    base vector components.
  * Communication between parent and child processes in the multicore
    part of parallel could fail on platforms that do not support an
    arbitrarily large payload in system functions read()/write() on
    pipes (seen on macOS where a restriction to INT_MAX bytes is
    documented, without doing a partial read unlike Linux). The
    payload is now split into 1Gb chunks to avoid that problem.
    (PR#18571)
  * qqplot(x,y, conf.level=.) gives better confidence bounds when
    length(x) != length(y), thanks to Alexander Ploner's report and
    patch proposal (PR#18557).
  * norm(&lt;0-length&gt;, "2") now gives zero instead of an error, as all
    the other norm types, thanks to Mikael Jagan's PR#18542.
  * Build-stage Rd macros \packageAuthor and \packageMaintainer now
    process Authors@R, fixing NA results when the package DESCRIPTION
    omits Author and Maintainer fields.
  * Formatting and printing complex numbers could give things like
    0.1683-0i because of rounding error: -0i is now replaced by +0i.
  * postscript() refused to accept a title comment containing the
    letter "W" (PR#18599).
  * isoreg(c(1,Inf)) signals an error instead of segfaulting, fixing
    PR#18603.
  * tiff(type = "Xlib") was only outputting the last page of
    multi-page plots.
  * tools::latexToUtf8() again knows about \~{n} and other letters
    with tilde, fixing a regression in R 4.3.0, and about \^{i} as an
    alternative to \^{\i} (similarly with other accents).
    Furthermore, LaTeX codes for accented I letters are now correctly
    converted, also fixing related mistakes in
    tools::encoded_text_to_latex().
  * tar(*, tar = "internal") no longer creates out-of-spec tar files
    in the very rare case of user or group names longer than 32
    bytes, fixing PR#17871 with thanks to Ivan Krylov.
  * When using the "internal" timezone datetime code, adding a
    fraction of a second no longer adds one second, fixing PR#16856
    from a patch by Ivan Krylov.
  * tools::checkRd() no longer produces spurious notes about
    "unnecessary braces" from multi-line Rd results of \Sexpr macros.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1709208000">- CHANGES IN R 4.3.3:
  NEW FEATURES:
  * iconv() now fixes up variant encoding names such as "utf8"
    case-insensitively.
  DEPRECATED AND DEFUNCT:
  * The legacy encoding = "MacRoman" is deprecated in pdf() and
    postscript(): support was incomplete in earlier versions of R.
  BUG FIXES:
  * Arguments are now properly forwarded to methods on S4 generics
    with ... in the middle of their formal arguments. This was broken
    for the case when a method introduced an argument but did not
    include ... in its own formals. Thanks to Herv'e Pag`es for the
    report PR#18538.
  * Some invalid file arguments to pictex(), postscript() and xfig()
    opened a file called NA rather than throw an error.  These
    included postscript(NULL) (which some people expected to work
    like pdf(NULL)).
  * Passing filename = NA to svg(), cairo_pdf(), cairo_ps() or the
    Cairo-based bitmap devices opened a file called NA: it now throws
    an error.
  * quartz(file = NA) opened a file called NA, including when used as
    a Quartz-based bitmap device.  It now gives an error.
  * rank(&lt;long vector&gt;) now works, fixing PR#18617, thanks to Ilia
    Kats.
  * seq.int() did not adequately check its length.out argument.
  * match(&lt;POSIXct&gt;, .) is correct again for differing time zones,
    ditto for "POSIXlt", fixing PR#18618 reported by Bastian Klein.
  * drop.terms(*, dropx = &lt;0-length&gt;) now works, fixing PR#18563 as
    proposed by Mikael Jagan.
  * drop.terms(*) keeps + offset(.) terms when it should, PR#18565,
    and drop.terms() no longer makes up a response, PR#18566, fixing
    both bugs thanks to Mikael Jagan.
  * getS3method("t", "test") no longer finds the t.test() function,
    fixing PR#18627.
  * pdf() and postscript() support for the documented Adobe encodings
    "Greek" and "Cyrilllic" was missing (although the corresponding
    Windows' codepages could be used).
  * Computations of glyph metric information for pdf() and
    postscript() did not take into account that transliteration could
    replace one character by two or more (only seen on macOS 14) and
    typically warned that the information was not known.
  * rank(x) no longer overflows during integer addition, when
    computing rank average for largish but not-yet long vector x,
    fixing PR#18630, thanks to Ilia Kats.
  * list.files() on Windows now returns also files with names longer
    that 260 bytes (the Windows limit is 260 characters).
    Previously, some file names particularly with 'East Asian'
    characters were omitted.
  * cov2cor(&lt;0 x 0&gt;) now works, fixing PR#18423 thanks to Mikael
    Jagan and Elin Waring.
  * cov2cor(&lt;negative diagonal&gt;) and similar now give one warning
    instead of two, with better wording, fixing PR#18424 thanks to
    Mikael Jagan.
  * tools:: startDynamicHelp() now ensures port is in proper range,
    fixing PR#18645.
  * pbeta(x, a,b) is correct now for x=0 or 1 in the boundary cases
    where a or b or both are 0, fixing PR#18672 thanks to Michael
    Fay.
  * pmatch(x, table) for large table, also called for data frame row
    selection, dfrm[nm, ], is now interruptible, fixing PR#18656.
  * predict(&lt;rank-deficient lm&gt;, newdata=*) fix computing of nbasis,
    see Russ Lenth's comment 29 in PR#16158.
  * Added a work-around for a bug in macOS 14.3.1 and higher which
    prevents R plots in the Quartz Cocoa device from updating on
    screen.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1713960000">- CHANGES IN R 4.4.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Startup banners, R --version, sessionInfo() and R CMD check no
    longer report (64-bit) as part of the platform as this is almost
    universal - the increasingly rare 32-bit platforms will still
    report (32-bit).
    On Windows, ditto for window titles.
  * is.atomic(NULL) now returns FALSE, as NULL is not an atomic
    vector.  Strict back-compatibility would replace is.atomic(foo)
    by (is.null(foo) || is.atomic(foo)) but should happen only
    sparingly.
  NEW FEATURES:
  * The confint() methods for "glm" and "nls" objects have been
    copied to the stats package.  Previously, they were stubs which
    called versions in package MASS. The MASS namespace is no longer
    loaded if you invoke (say) confint(glmfit).  Further, the "glm"
    method for profile() and the plot() and pairs() methods for class
    "profile" have been copied from MASS to stats.  (profile.nls()
    and plot.profile.nls() were already in stats.)
  * The confint() and profile methods for "glm" objects have gained a
    possibility to do profiling based on the Rao Score statistic in
    addition to the default Likelihood Ratio. This is controlled by a
    new test = argument.
  * The pairs() method for "profile" objects has been extended with a
    which = argument to allow plotting only a subset of the
    parameters.
  * The "glm" method for anova() computes test statistics and
    p-values by default, using a chi-squared test or an F test
    depending on whether the dispersion is fixed or free.  Test
    statistics can be suppressed by giving argument test a false
    logical value.
  * In setRepositories() the repositories can be set using their
    names via name = instead of index ind =.
  * methods() and .S3methods() gain a all.names option for the (rare)
    case where functions starting with a . should be included.
  * Serializations can now be interrupted (e.g., by Ctrl-C on a
    Unix-alike) if they take too long, e.g., from save.image(),
    thanks to suggestions by Ivan Krylov and others on R-devel.
  * New startup option --max-connections to set the maximum number of
    simultaneous connections for the session.  Defaults to 128 as
    before: allowed values up to 4096 (but resource limits may in
    practice restrict to smaller values).
  * R on Windows (since Windows 10 2004) now uses the new Segment
    Heap allocator. This may improve performance of some
    memory-intensive applications.
  * When R packages are built, typically by R CMD build &lt;pkg&gt;, the
    new --user=&lt;build_user&gt; option overrides the (internally
    determined) user name, currently Sys.info()["user"] or LOGNAME.
    This is a (modified) fulfillment of Will Landau's suggestion in
    PR#17530.
  * tools::testInstalledBasic() gets new optional arguments outDir
    and testSrcdir, e.g., allowing to use it in a &lt;builddir&gt; !=
    &lt;srcdir&gt; setup, and in standard "binary" Windows installation
  * if* a source tests/ folder is present.
  * range(&lt;DT_with_Inf&gt;, finite = TRUE) now work for objects of class
    "Date", "POSIXct", and "POSIXlt" with infinite entries,
    analogously to range.default(), as proposed by Davis Vaughan on
    R-devel.  Other range()-methods can make use of new function
    .rangeNum().
  * New .internalGenerics object complementing .S3PrimitiveGenerics,
    for documentation and low-level book-keeping.
  * grid() now invisibly returns the x- and y- coordinates at which
    the grid-lines were drawn.
  * norm(., type) now also works for complex matrices.
  * kappa(., exact = TRUE, norm = *) now works for all norms and also
    for complex matrices.  In symmetric / triangular cases, the new
    argument uplo = "U" | "L" allows the upper or lower triangular
    part to be specified.
  * memDecompress(type = "unknown") recognizes compression in the
    default 'zlib' format as used by memCompress(type = "gzip").
  * memCompress() and memDecompress() will use the libdeflate library
    (&lt;https://github.com/ebiggers/libdeflate&gt;) if installed.  This
    uses the same type of compression for type = "gzip" but is 1.5-2x
    faster than the system libz library on some common platforms: the
    speed-up may depend on the library version.
  * diff() for objects of class "Date", "POSIXct", and "POSIXlt"
    accepts a units argument passed via ....
  * Dynamic help now does a much better job of rendering package
    DESCRIPTION metadata.
  * Rprof() gains an event argument and support for elapsed (real)
    time profiling on Unix (PR#18076).
  * filled.contour() gains a key.border argument.
  * tools::update_pkg_po() gets arguments pot_make and mo_make for
    _not_ re-making the corresponding files, and additionally a
    verbose argument.
  * Hexadecimal string colour specifications are now accepted in
    short form, so, for example, we can use "#123", which is
    equivalent to "#112233".
    Thanks to MikeFC for the original idea and Ella Kaye, Malcolm
    Barrett, George Stagg, and Hanne Oberman for the patch.
  * Plain-text help shows \var markup by angle brackets.
  * The new experimental primitive function declare() is intended to
    eventually allow information about R code to be communicated to
    the interpreter, compiler, and code analysis tools. The syntax
    for declarations is still being developed.
  * Functions psmirnov(), qsmirnov() and rsmirnov() in package stats
    have had argument two.sided renamed to alternative, to take into
    account that the permutation distributions of the one-sided
    statistics can be different in the case of ties.  Consequence of
    PR#18582.
  * sort() is now an implicit S4 generic in methods.
  * Formatting and printing, format(z), print(z), of complex vectors
    z no longer zap relatively small real or imaginary parts to zero,
    fixing PR#16752.  This is an API change, as it was documented
    previously to round real and imaginary parts together on purpose,
    producing nicer looking output.  As mentioned, e.g. in the PR,
    this change is compatible with many other "R-like" programming
    environments.
    We have simplified the internal code and now basically format the
    real and imaginary parts independently of each other.
  * New experimental functions Tailcall() and Exec() to support
    writing stack-space-efficient recursive functions.
  * Where characters are attempted to be plotted by pdf(),
    postscript() and xfig() which are not in the selected 8-bit
    character set (most often Latin-1) and the R session is using a
    UTF-8 locale, the warning messages will show the UTF-8 character
    rather than its bytes and one dot will be substituted per
    character rather than per byte.  (Platforms whose iconv() does
    transliteration silently plot the transliteration.)
    In a UTF-8 locale some transliterations are now done with a
    warning (e.g., dashes and Unicode minus to hyphen, ligatures are
    expanded, permille (‰) is replaced by o/oo), although the OS may
    have got there first.  These are warnings as they will continue
    to be replaced by dots in earlier versions of R.
  * The matrix multiplication functions crossprod() and tcrossprod()
    are now also primitive and S3 generic, as %*% had become in R
    4.3.0.
  * source() and example() have a new optional argument catch.aborts
    which allows continued evaluation of the R code after an error.
  * The non-Quartz tiff() devices allow additional types of
    compression if supported by the platform's libtiff library.
  * The list of base and recommended package names is now provided by
    tools::standard_package_names().
  * cairo_pdf() and cairo_ps() default to onefile = TRUE to closer
    match pdf() and postscript().
  * New option catch.script.errors provides a documented way to catch
    errors and then continue in non-interactive use.
  * L %||% R newly in base is an expressive idiom for the phrases
    if(!is.null(L)) L else R or if(is.null(L)) R else L.
  * The return value from warnings() now always inherits from
    "warnings" as documented, now also in the case of no warnings
    where it previously returned NULL.
  * as.complex("1i") now returns 0 + 1i instead of NA with a warning.
  * z &lt;- c(NA, 1i) now keeps the imaginary part Im(z[1]) == 0, no
    longer coercing to NA_complex_.  Similarly, cumsum(z) correctly
    sums real and imaginary parts separately, i.e., without
    "crosstalk" in case of NAs.
  * On Alpine Linux iconv() now maps "latin2", "latin-2", "latin9"
    and "latin-9" to encoding names the OS knows about
    (case-insensitively).
  * iconv(sub = "Unicode") now always zero-pads to four (hex) digits,
    rather than to 4 or 8.  (This seems to have become the convention
    once Unicode restricted the number of Unicode points to 2^21 - 1
    and so will never need more than 6 digits.)
  * NCOL(NULL) now returns 0 instead of 1, for consistency with
    cbind().
  * The information for the Euro glyph missing from the Adobe .afm
    files for the Courier, Helvetica and Times families has been
    copied from their URW equivalents - this will improve vertical
    centring in the pdf() and postscript() devices.
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.12.0.  The changes are almost entirely cosmetic.
  * The included LAPACK sources have been updated to version 3.12.0
    and some further double-complex routines added.
  * There are new font families for the 2014--5 URW 2.0 fonts (see
    ?pdf) which are included in recent versions of Ghostscript.
    These have font widths for most Greek glyphs and a few others
    which were missing from the original versions (whose font
    families remain available for reproducibility, although
    Ghostscript-based viewers will render using the 2.0 versions).
  * Improve the large-n efficiency of as.matrix(&lt;dist&gt;), thanks an R
    contributors effort, notably by Tim Taylor and Heather Turner,
    see PR#18660.
  * The default and numeric methods of all.equal() get a check.class
    option.
  * zapsmall() gets new optional arguments, function mFUN and min.d,
    for extra flexibility; fulfills a wish in PR#18199.  Also, it is
    now an implicit S4 generic in package methods.
  * The Rd filter for aspell() gains an ignore argument.
  * New generic function sort_by(), primarily useful for the
    data.frame method which can be used to sort rows of a data frame
    by one or more columns.
  * The icence headers for the RPC code in src/extra/xdr have been
    updated to use the GPL-compatible licence published by Oracle
    America in 2010.
  * New function pkg2HTML() in tools to create single-page HTML
    reference manuals for R packages.
  * The byte code evaluator now uses less C stack space for recursive
    calls to byte-compiled functions. It also makes more of an effort
    to avoid allocations for scalar return values.
  * New completion option backtick (disabled by default) allows
    non-syntactic completions to be wrapped in backquotes. This is
    currently only useful for Jupyter notebooks via the IRkernel
    package, and may cause problems for other backends.
  INSTALLATION:
  * The parser has been updated to work with bison 3.8.2, which is
    now used for the pre-generated parsers in gram.c, file.c, and
    gramRd.c. A few parser error messages have changed, which may
    affect code that relies on exact messages.
  INSTALLATION on a UNIX-ALIKE:
  * System valgrind headers are now required to use configure option
  - -with-valgrind-instrumentation with value 1 or 2.
  * configure will warn if it encounters a 32-bit build, as that is
    nowadays almost untested.
  * Environment variable R_SYSTEM_ABI is no longer used and so no
    longer recorded in etc/Renviron (it was not on Windows and was
    only ever used when preparing package tools).
  * If the libdeflate library and headers are available, libdeflate
    rather than libz is used to (de)compress R objects in lazy-load
    databases.  Typically tasks spend up to 5% of their time on such
    operations, although creating lazy-data databases is one of the
    exceptions.
    This can be suppressed if the library is available by the
    configure option --without-libdeflate-compression.
  * configure option --enable-lto=check has not worked reliably since
    2019 and has been removed.
  * The minimum autoconf requirement for a maintainer build has been
    increased to autoconf 2.71.
    It is intended to increase this to 2.72 for R 4.5.0: the
    distributed configure file was generated using 2.72.
  * The minimum version requirement for an external LAPACK has been
    reduced to 3.9.0.
  * No default C++ compiler is set if no C++17 compiler is detected:
    there is no longer an automatic fallback to C++14 or C++11.
    Compilers from the last five years should have sufficient
    support: for others macros CXX and CXXSTD can be set in file
    config.site to provide a fallback if needed.
    The Objective-C++ compiler now by default uses the standard
    selected by R for C++ (currently C++17) rather than the default
    standard for the C++ compiler (which on macOS is still C++98).
  INSTALLATION on macOS:
  * A new configure option --with-newAccelerate makes use of Apple's
    'new' BLAS / LAPACK interfaces in their Accelerate framework.
    Those interfaces are only available in macOS 13.3 or later, and
    building requires SDK 13.3 or later (from the Command Line Tools
    or Xcode 14.3 or later).
    By default the option uses new Accelerate for BLAS calls: to also
    use it for LAPACK use option --with-newAccelerate=lapack.  The
    later interfaces provide LAPACK 3.9.1 rather than 3.2.1: 3.9.1 is
    from 2021-04 and does not include the improved algorithms
    introduced in LAPACK 3.10.0 (including for BLAS calls).
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools44, an update of the Rtools43 toolchain.  It is
    based on GCC 13 and newer versions of MinGW-W64, binutils and
    libraries (targeting 64-bit Intel CPUs).  R-devel can no longer
    be built using Rtools43 without changes.
  * Rtools44 has experimental support for 64-bit ARM (aarch64) CPUs
    _via_ the LLVM 17 toolchain using lld, clang/flang-new and
    libc++.
  UTILITIES:
  * R CMD check notes when S4-style exports are used without
    declaring a strong dependence on package methods.
  * tools::checkRd() (used by R CMD check) detects more problems with
    \Sexpr-based dynamic content, including bad nesting of \Sexprs
    and invalid arguments.
  * tools::checkRd() now reports Rd titles and section names ending
    in a period; this is ignored by R CMD check unless environment
    variable _R_CHECK_RD_CHECKRD_MINLEVEL_ is set to -5 or smaller.
  * R CMD check now notes Rd files without an \alias, as long
    documented in 'Writing R Extensions' §1.3.1.  The check for a
    missing \description has been moved from tools::checkRd() to
    tools::checkRdContents().
  * R CMD check now visits inst/NEWS.Rd and OS-specific man
    subdirectories when checking Rd files.
  * tools::checkDocFiles() and tools::checkRdContents() now also
    check internal Rd files by default, but "specially" (ignoring
    missing documentation of arguments).
  * R CMD Rdiff gets option --useEx.
  * R CMD check now warns on non-portable uses of Fortran KIND such
    as INTEGER(KIND=4) and REAL(KIND=8).
    To see the failing lines set environment variable
    _R_CHECK_FORTRAN_KIND_DETAILS_ to a true value.
  * When checking Rd files, R CMD check now notes some of the "lost
    braces" that tools::checkRd() finds.  Typical problems are Rd
    macros missing the initial backslash (e.g., code{...}), in-text
    set notation (e.g., {1, 2}, where the braces need escaping), and
    \itemize lists with \describe-style entries of the form
    \item{label}{description}.
  * R CMD INSTALL (and hence check) will compile C++ code with
  - DR_NO_REMAP if environment variable _R_CXX_USE_NO_REMAP_ is set
    to a true value.  It is planned that this will in future become
    the default for compiling C++.
  * The new built-in Rd macro \dontdiff{} can be used to mark example
    code whose output should be ignored when comparing check output
    to reference output (tests/Examples/&lt;pkg&gt;-Ex.Rout.save).  The
    \dontdiff tag, like \donttest, is _not_ shown on the rendered
    help page, so provides a clean alternative to ##
    IGNORE_RDIFF_(BEGIN|END) comments.
  * R CMD build when there is no NAMESPACE, now uses the recommended
    exportPattern("^[^.]"), instead of exporting everything.
  * R CMD check now warns about non-ASCII characters in the NAMESPACE
    file (in addition to R files). Such packages are not portable and
    may fail to install on some platforms.
  C-LEVEL FACILITIES:
  * Headers R_ext/Applic.h and R-ext/Linpack.h used to include
    R_ext/BLAS.h although this was undocumented and unneeded by their
    documented entry points.  They no longer do so.
  * New function R_missing(), factored out from do_missing(), used to
    fix PR#18579.
  * SEXP type S4SXP has been renamed to OBJSXP to support
    experimenting with alternative object systems.  The S4SXP value
    can still be used in C code but is now deprecated.  Based on
    contributions from the R Consortium's Object-Oriented Programming
    Working Group.
  * New function pow1p(x,y) for accurate (1+x)^y.
  * mkCharLenCE was incorrectly documented to take a size_t length
    but was implemented with int (and character strings in R are
    limited to 2^31 - 1 bytes).
  DEPRECATED AND DEFUNCT:
  * data() no longer handles zipped data from long-defunct (since R
    2.13.0) --use-zip-data installations.
  * The legacy graphics devices pictex() and xfig() are now
    deprecated.  They do not support recent graphics enhancements and
    their font handling is rudimentary. The intention is to retain
    them for historical interest as long as they remain somewhat
    functional.
  * Support for encoding = "MacRoman" has been removed from the pdf()
    and postscript() devices - this was a legacy encoding supporting
    classic macOS up to 2001 and no longer has universal libiconv
    support.
  * is.R() is deprecated as no other S dialect is known to be in use
    (and this could only identify historical dialects, not future
    ones).
    Further information on calls can be obtained by setting the
    environment variable _R_DEPRECATED_IS_R_ to error which turns the
    deprecation warning into an error and so by default gives a
    traceback.  (This is done by R CMD check --as-cran.)
  * UseMethod() no longer forwards local variables assigned in the
    generic function into method call environments before evaluating
    the method body. This makes method calls behave more like
    standard function calls and makes method code easier to analyze
    correctly.
  * The twelve as.data.frame.&lt;class&gt;() methods which were deprecated
    only via _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ and in R CMD
    check --as-cran are formally deprecated now in favour of calling
    as.data.frame() or as.data.frame.vector().  The deprecation
    "check" now works also when as.data.frame() is S4 generic thanks
    to Ivan Krylov.
  * The default method for the directional comparison operators &lt;, &gt;,
    &lt;=, and &gt;= now signals an error when one of the operands is a
    language object, i.e. a symbol or a call.
  * For terms.formula(), deprecate abb and neg.out arguments
    _formally_ in addition to just documenting it.
  BUG FIXES:
  * The methods package is more robust to not being attached to the
    search path.  More work needs to be done.
  * pairwise.t.test() misbehaved when subgroups had 0 DF for
    variance, even with pool.sd = TRUE.  (PR#18594 by Jack Berry).
  * Probability distribution functions [dpq]&lt;distrib&gt;(x, *), but also
    bessel[IKJY](x, .) now consistently preserve attributes(x) when
    length(x) == 0, e.g., for a 2 x 0 matrix, thanks to Karolis
    Koncevičius' report PR#18509.
  * Group "Summary" computations such as sum(1:3, 4, na.rm = 5, NA,
    7, na.rm = LL) now give an error instead of either 17 or NN for
    LL true or false, as proposed by Ivan Krylov on the R-devel
    mailing list.  (This also means it is now an error to specify
    na.rm more than once.)
  * as.complex(x) now returns complex(real = x, imaginary = 0) for
    _all_ numerical and logical x, notably also for NA or
    NA_integer_.
  * Directories are now omitted by file.copy(, recursive = FALSE) and
    in file.append() (PR#17337).
  * gsub() and sub() are now more robust to integer overflow when
    reporting errors caused by too large input strings (PR#18346).
  * Top-level handlers are now more robust to attempts to remove a
    handler whilst handlers are running (PR#18508).
  * The handling of Alt+F4 in dialogs created on Windows using
    GraphApp has been fixed (PR#13870).
  * density() more consistently computes grid values for the
    FFT-based convolution, following Robert Schlicht's analysis and
    proposal in PR#18337, correcting density values typically by a
    factor of about 0.999.  Argument old.coords = TRUE provides back
    compatibility.
  * palette.colors() gains a name argument that defaults to FALSE
    controlling whether the vector of colours that is returned has
    names (where possible).  PR#18529.
  * tools::xgettext() no longer extracts the (non-translatable) class
    names from warningCondition and errorCondition calls.
  * S3method(&lt;gen&gt;, &lt;class&gt;, &lt;func&gt;) in the NAMESPACE file now works
    (again) when &lt;func&gt; is visible from the namespace, e.g.,
    imported, or in base.
  * getParseData(f) now also works for a function defined in the
    first of several &lt;pkg&gt;/R/*.R source files, thanks to Kirill
    Müller's report and Duncan Murdoch's patch in PR#16756.
  * Rd \Sexpr macros with nested #ifdef conditionals were not
    processed.
  * A non-blocking connection with non-default encoding (such as a
    socket) now correctly returns from readLines() after new data has
    arrived also when its EOF had been reached previously.  Thanks to
    Peter Meilstrup's report on R-devel and Ivan Krylov's report and
    patch proposal in PR#18555.
  * tools::checkRdContents() failed to detect empty argument
    descriptions when they spanned multiple lines, including those
    generated by prompt().  These cases are now noted by R CMD check.
  * Plain-text help no longer outputs spurious colons in the
    arguments list (for multi-line \item labels in the Rd source).
  * kappa() and rcond() work correctly in more cases; kappa(., norm =
    "2") now warns that it computes the 1-norm with (default) exact =
    FALSE; prompted by Mikael Jagan's quite comprehensive PR#18543.
  * Rd skeletons generated by prompt() or promptData() now use a
    dummy title (so R CMD build works).  tools::checkRdContents() has
    been updated to detect such template leftovers, including from
    promptPackage().
  * When S4 method dispatch fails because no method was found, the
    error message now includes the signature argument names; thanks
    to Michael Chirico's proposal on the R-devel list.
  * withAutoprint({ .. }) now preserves srcrefs previously lost,
    thanks to Andrew Simmons' report plus fix in PR#18572.
  * transform.data.frame() no longer adjusts names; in particular,
    untransformed variables are kept as-is, including those with
    syntactically invalid names (PR#17890).
  * The keep.source option for Rd \Sexpr blocks is no longer ignored.
  * The formula methods for t.test() and wilcox.test() now catch when
    paired is passed, addressing PR#14359; use Pair(x1, x2) ~ 1 for a
    paired test.
  * The level reported in the browser prompt was often too large. It
    now shows the number of browser contexts on the stack.
  * For cbind() and rbind(), the optional deparse.level argument is
    now properly passed to methods, thanks to Mikael Jagan's PR#18579
    and comments there.
  * Some error and warning messages for large ('long vector')
    matrix(v, nr, nc) and dim(m) &lt;- d are now correct about sizes,
    using long long formatting, fixing PR#18612 (and more) reported
    by Mikael Jagan.
  * readChar(useBytes = TRUE) now terminates strings even when the
    underlying connection uses extra spaces in the input buffer.
    This fixes problems with extra garbage seen with gzip
    connections, PR#18605.
  * Named capture in PCRE regular expressions now works also with
    more than 127 named groups (PR#18588).
  * Datetime functions are now robust against long jumps when dealing
    with internal time zone changes.  This avoids confusing warnings
    about an invalid time zone, previously triggered by turning
    warnings into errors or handling them via tryCatch (PR#17966,
    PR#17780).
  * Datetime functions now restore even an empty TZ environment
    variable after internal time zone changes (PR#17724).  This makes
    results of datetime functions with this (typically unintentional)
    setting more predictable.
  * drop.terms(*) now drops response as by default, keep.response =
    FALSE, fixing PR#18564 thanks to Mikael Jagan.
  * dummy.coef(.) now also works for lm()-models with character
    categorical predictor variables rather than factor ones, fixing
    PR#18635 reported by Jinsong Zhao.
  * formals(f) &lt;- formals(f) now also works for a function w/o
    arguments and atomic _constant_ body(f).
  * Correct as.function(&lt;invalid list&gt;, .)'s error message.
  * removeSource() is yet more thorough in finding and removing
    "srcref" and the other source references from parsed R language
    chunks, fixing PR#18638 thanks to Andrew Simmons.
  * dgeom() is more accurate now, notably when its result is very
    small, fixing PR#18642 thanks to the proposal of Morten Welinder,
    also improving other instances where C level binom_raw(x, n, ..)
    has x == 0 or x== n.
  * warning() with options(warn = 1) has improved output for
    multi-line messages.
  * axis.Date() and axis.POSIXct() now respect the par("lab") setting
    for the number of pretty() intervals.
  * Comparisons for language objects (which are based on deparsing)
    are now more careful about using accurate deparsed results
    (PR#18676).
  * Plain-text help (Rd2txt) now correctly preserves blank lines
    following single-line \dontrun code.
  * &lt;POSIXlt&gt;[*] no longer sets wrong "balanced" attribute, fixing
    PR#18681 thanks to Mikael Jagan.
  * str(&lt;classed-call&gt;) now deparses the call as expected, fixing
    PR#18684, reported by Dave Slager.
  * In Rd examples, code following the closing brace of a \dontrun,
    \dontshow or \donttest tag on the same line is no longer skipped
    when R CMD check runs the examples.
  * as.data.frame(matrix(*, ncol=0)) now gets valid names() and
    colnames(); reported by Davis Vaughan on the R-devel list.
  * Internal Mathlib function stirlerr(n) is now almost fully
    (52-bit) accurate for all n &gt;= ~5.9 and more accurate also in the
    range 1 -- 5.9.  This entails small ("after 12th decimal")
    changes in density functions, e.g., dgamma() in _some_ regions of
    their support.  The fix was partly prompted by Morten Welinder's
    PR#18640.
  * Numbers like 9876543.2 are now considered non-integer by Mathlib
    internal R_nonint(), amending original fix of PR#15734.
  * Rd comment lines no longer cause broken paragraphs in the
    rendered PDF and plain-text help. In code blocks, pure comment
    lines (starting with %) no longer produce an empty line.
  * xtabs(Freq ~ .) now consistently defaults to na.action = na.pass,
    using na.rm = FALSE (added as an argument) when summing over Freq
    (PR#17770).
  * tools::testInstalledPackage() is no longer silent about failures
    from running examples or tests and its return code no longer
    ignores failures from checking vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1718366400">- CHANGES IN R 4.4.1:
  C-LEVEL FACILITIES:
  * Functions R_atof and R_strtod declared in header R_ext/Utils.h
    are now documented in 'Writing R Extensions' and so formally part
    of the API.
  * The non-API entry points Rf_setSVector, Rf_StringFalse,
    Rf_StringTrue and Rf_isBlankString have been added to those
    reported by R CMD check.
  * The new function Rf_allocLang is now available. This provides an
    alternative to the idiom of calling Rf_allocList followed by
    SET_TYPEOF.
  UTILITIES:
  * R CMD check now reports as warnings what gfortran calls 'Fortran
    2018 deleted features', all of which have long been marked as
    'obsolescent' and some of which were deleted in Fortran 2008 or
    earlier.  Fortran compilers are no longer required to support
    these.
  BUG FIXES:
  * as.numeric(), scan(), type.convert() and other places which use
    the internal C function R_strtod now require a _non-empty_ digit
    sequence in a decimal or binary exponent.  This aligns with the
    C/POSIX standard for strtod and with ?NumericConstants.
  * as.data.frame(m, make.names=NA) now works correctly for a matrix
    m with NA's in row names.
  * The error message from &lt;POSIXlt&gt;[["hour"]] and similar now
    mentions *[[, "hour"]], as wished for in PR#17409 and proposed by
    Michael Chirico.
  * qbinom() and potentially qpois(), qnbinom(), no longer sometimes
    fail accurate inversion (of pbinom(), etc), thanks to Christopher
    Chang's report and patch in PR#18711.
  * The internal help server on Windows can again serve requests sent
    in quick succession, fixing a regression in R 4.4.0.
  * debugcall(&lt;S3Generic&gt;()) now also works when a corresponding
    S4-generic version is in the methods cache (PR#18143).
  * Package tools' toTitleCase(ch0) now returns character(0) when ch0
    is of zero length; fixing PR#18724, reported by David Hugh Jones.
  * R CMD check is no longer broken (without a check result and no
    explanation in 00check.log) for a package which declares an
    invalid VignetteBuilder in DESCRIPTION but has no vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1730376000">- CHANGES IN R 4.4.2:
  C-LEVEL FACILITIES:
  * The S-compatibility macros F77_COM and F77_COMDECL defined in
    header R_ext/RS.h are deprecated and will be removed shortly.  We
    could find no record of their use.
  BUG FIXES:
  * Mathlib function lgammacor(x) no longer warns about underflow to
    zero for large x.
  * Text widths and heights were incorrectly reported by the Quartz
    device if the drawing context didn't exist yet (typically when
    drawing off-screen to a window that is yet to appear, see
    PR#18591).
  * The Quartz device could segfault in cases where paths with spaces
    are used in the new glyph drawing API.  Thanks to Tomek
    Gieorgijewski (PR#18758).
  * On macOS in R CRAN builds, it is again possible to read
    little-endian UTF-16 text with a BOM from a connection using
    encoding="UTF-16".  Users building R from source should avoid
    using the system libiconv in macOS 14.1 and later.
  * methods' internal .requirePackage() now re-enables primitive
    method dispatch when needed; thanks to Ivan Krylov for
    demystifying CRAN package check failures on the R-devel mailing
    list.</changelog>
</package>
<package pkgid="3299d1a476ddd9909efef2abe13c3c3154d890f7a52654c8bed553e43fe5b13eb451e7ba806b2fed96b084067dbabb51bf258d8b32019db8b29dfeb430987e54" name="R-tools-debuginfo" arch="i586">
  <version epoch="0" ver="4.4.2" rel="51.0.2.2.sr20241103"/>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1620302400">- To get in sync with d:l:R:autoCRAN the Matrix package's split
  in -devel was reversed.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339200">- improved spec file according to comments of dimstar in
  https://build.opensuse.org/request/show/892685</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339201">- CHANGES IN R 4.1.0:
  FUTURE DIRECTIONS:
  * It is planned that the 4.1.x series will be the last to support
    32-bit Windows, with production of binary packages for that
    series continuing until early 2023.
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Data set esoph in package datasets now provides the correct
    numbers of controls; previously it had the numbers of cases added
    to these.  (Reported by Alexander Fowler in PR#17964.)
  NEW FEATURES:
  * www.omegahat.net is no longer one of the repositories known by
    default to setRepositories().  (Nowadays it only provides source
    packages and is often unavailable.)
  * Function package_dependencies() (in package tools) can now use
    different dependency types for direct and recursive dependencies.
  * The checking of the size of tarball in R CMD check --as-cran
    &lt;pkg&gt; may be tweaked via the new environment variable
    _R_CHECK_CRAN_INCOMING_TARBALL_THRESHOLD_, as suggested in
    PR#17777 by Jan Gorecki.
  * Using c() to combine a factor with other factors now gives a
    factor, an ordered factor when combining ordered factors with
    identical levels.
  * apply() gains a simplify argument to allow disabling of
    simplification of results.
  * The format() method for class "ftable" gets a new option justify.
    (Suggested by Thomas Soeiro.)
  * New ...names() utility.  (Proposed by Neal Fultz in PR#17705.)
  * type.convert() now warns when its as.is argument is not
    specified, as the help file always said it _should_.  In that
    case, the default is changed to TRUE in line with its change in
    read.table() (related to stringsAsFactor) in R 4.0.0.
  * When printing list arrays, classed objects are now shown _via_
    their format() value if this is a short enough character string,
    or by giving the first elements of their class vector and their
    length.
  * capabilities() gets new entry "Rprof" which is TRUE when R has
    been configured with the equivalent of --enable-R-profiling (as
    it is by default).  (Related to Michael Orlitzky's report
    PR#17836.)
  * str(xS4) now also shows extraneous attributes of an S4 object
    xS4.
  * Rudimentary support for vi-style tags in rtags() and R CMD rtags
    has been added.  (Based on a patch from Neal Fultz in PR#17214.)
  * checkRdContents() is now exported from tools; it and also
    checkDocFiles() have a new option chkInternal allowing to check
    Rd files marked with keyword "internal" as well.  The latter can
    be activated for R CMD check via environment variable
    _R_CHECK_RD_INTERNAL_TOO_.
  * New functions numToBits() and numToInts() extend the raw
    conversion utilities to (double precision) numeric.
  * Functions URLencode() and URLdecode() in package utils now work
    on vectors of URIs.  (Based on patch from Bob Rudis submitted
    with PR#17873.)
  * path.expand() can expand ~user on most Unix-alikes even when
    readline is not in use.  It tries harder to expand ~, for example
    should environment variable HOME be unset.
  * For HTML help (both dynamic and static), Rd file links to help
    pages in external packages are now treated as references to
    topics rather than file names, and fall back to a file link only
    if the topic is not found in the target package. The earlier rule
    which prioritized file names over topics can be restored by
    setting the environment variable _R_HELP_LINKS_TO_TOPICS_ to a
    false value.
  * c() now removes NULL arguments before dispatching to methods,
    thus simplifying the implementation of c() methods, _but_ for
    back compatibility keeps NULL when it is the first argument.
    (From a report and patch proposal by Lionel Henry in PR#17900.)
  * Vectorize()'s result function's environment no longer keeps
    unneeded objects.
  * Function ...elt() now propagates visibility consistently with
    ..n.  (Thanks to Lionel Henry's PR#17905.)
  * capture.output() no longer uses non-standard evaluation to
    evaluate its arguments.  This makes evaluation of functions like
    parent.frame() more consistent.  (Thanks to Lionel Henry's
    PR#17907.)
  * packBits(bits, type="double") now works as inverse of
    numToBits().  (Thanks to Bill Dunlap's proposal in PR#17914.)
  * curlGetHeaders() has two new arguments, timeout to specify the
    timeout for that call (overriding getOption("timeout")) and TLS
    to specify the minimum TLS protocol version to be used for
    https:// URIs (_inter alia_ providing a means to check for sites
    using deprecated TLS versions 1.0 and 1.1).
  * For nls(), an optional constant scaleOffset may be added to the
    denominator of the relative offset convergence test for cases
    where the fit of a model is expected to be exact, thanks to a
    proposal by John Nash.  nls(*, trace=TRUE) now also shows the
    convergence criterion.
  * Numeric differentiation _via_ numericDeriv() gets new optional
    arguments eps and central, the latter for taking central divided
    differences.  The latter can be activated for nls() via
    nls.control(nDcentral = TRUE).
  * nls() now passes the trace and control arguments to getInitial(),
    notably for all self-starting models, so these can also be fit in
    zero-noise situations via a scaleOffset.  For this reason, the
    initial function of a selfStart model must now have ... in its
    argument list.
  * bquote(splice = TRUE) can now splice expression vectors with
    attributes: this makes it possible to splice the result of
    parse(keep.source = TRUE).  (Report and patch provided by Lionel
    Henry in PR#17869.)
  * textConnection() gets an optional name argument.
  * get(), exists(), and get0() now signal an error if the first
    argument has length greater than 1.  Previously additional
    elements were silently ignored.  (Suggested by Antoine Fabri on
    R-devel.)
  * R now provides a shorthand notation for creating functions, e.g.
    \(x) x + 1 is parsed as function(x) x + 1.
  * R now provides a simple native forward pipe syntax |&gt;.  The
    simple form of the forward pipe inserts the left-hand side as the
    first argument in the right-hand side call.  The pipe
    implementation as a syntax transformation was motivated by
    suggestions from Jim Hester and Lionel Henry.
  * all.equal(f, g) for functions now by default also compares their
    environment(.)s, notably via new all.equal method for class
    function.  Comparison of nls() fits, e.g., may now need
    all.equal(m1, m2, check.environment = FALSE).
  * .libPaths() gets a new option include.site, allowing to _not_
    include the site library.  (Thanks to Dario Strbenac's suggestion
    and Gabe Becker's PR#18016.)
  * Lithuanian translations are now available.  (Thanks to Rimantas
    Zakauskas.)
  * names() now works for DOTSXP objects.  On the other hand, in
    R-lang, the R language manual, we now warn against relying on the
    structure or even existence of such dot-dot-dot objects.
  * all.equal() no longer gives an error on DOTSXP objects.
  * capabilities("cairo") now applies only to the file-based devices
    as it is now possible (if very unusual) to build R with Cairo
    support for those but not for X11().
  * There is optional support for tracing the progress of
    loadNamespace() - see its help.
  * (Not Windows.)  l10n_info() reports an additional element, the
    name of the encoding as reported by the OS (which may differ from
    the encoding part (if any) of the result from
    Sys.getlocale("LC_CTYPE").
  * New function gregexec() which generalizes regexec() to find _all_
    disjoint matches and well as all substrings corresponding to
    parenthesized subexpressions of the given regular expression.
    (Contributed by Brodie Gaslam.)
  * New function charClass() in package utils to query the
    wide-character classification functions in use (such as
    iswprint).
  * The names of quantile()'s result no longer depend on the global
    getOption("digits"), but quantile() gets a new optional argument
    digits = 7 instead.
  * grep(), sub(), regexp and variants work considerably faster for
    long factors with few levels.  (Thanks to Michael Chirico's
    PR#18063.)
  * Provide grouping of x11() graphics windows within a window
    manager such as Gnome or Unity; thanks to a patch by Ivan Krylov
    posted to R-devel.
  * The split() method for class data.frame now allows the f argument
    to be specified as a formula.
  * sprintf now warns on arguments unused by the format string.
  * New palettes "Rocket" and "Mako" for hcl.colors() (approximating
    palettes of the same name from the 'viridisLite' package).
    Contributed by Achim Zeileis.
  * The base environment and its namespace are now locked (so one can
    no longer add bindings to these or remove from these).
  * Rterm handling of multi-byte characters has been improved,
    allowing use of such characters when supported by the current
    locale.
  * Rterm now accepts ALT+ +xxxxxxxx sequences to enter Unicode
    characters as hex digits.
  * Environment variable LC_ALL on Windows now takes precedence over
    LC_CTYPE and variables for other supported categories, matching
    the POSIX behaviour.
  * duplicated() and anyDuplicated() are now optimized for integer
    and real vectors that are known to be sorted via the ALTREP
    framework. Contributed by Gabriel Becker via PR#17993.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 14
    and so packages that provide graphics devices should be
    reinstalled.
  * Graphics devices should now specify deviceVersion to indicate
    what version of the graphics engine they support.
  * Graphics devices can now specify deviceClip.  If TRUE, the
    graphics engine will never perform any clipping of output itself.
    The clipping that the graphics engine does perform (for both
    canClip = TRUE and canClip = FALSE) has been improved to avoid
    producing unnecessary artifacts in clipped output.
  * The grid package now allows gpar(fill) to be a linearGradient(),
    a radialGradient(), or a pattern().  The viewport(clip) can now
    also be a grob, which defines a clipping path, and there is a new
    viewport(mask) that can also be a grob, which defines a mask.
    These new features are only supported so far on the Cairo-based
    graphics devices and on the pdf() device.
  * (Not Windows.)  A warning is given when a Cairo-based type is
    specified for a png(), jpeg(), tiff() or bmp() device but Cairo
    is unsupported (so type = "Xlib" is tried instead).
  * grSoftVersion() now reports the versions of FreeType and
    FontConfig if they are used directly (not _via_ Pango), as is
    most commonly done on macOS.
  C-LEVEL FACILITIES:
  * The _standalone_ libRmath math library and R's C API now provide
    log1pexp() again as documented, and gain log1mexp().
  INSTALLATION on a UNIX-ALIKE:
  * configure checks for a program pkgconf if program pkg-config is
    not found.  These are now only looked for on the path (like
    almost all other programs) so if needed specify a full path to
    the command in PKG_CONFIG, for example in file config.site.
  * C99 function iswblank is required - it was last seen missing ca
    2003 so the workaround has been removed.
  * There are new configure options --with-internal-iswxxxxx,
  - -with-internal-towlower and --with-internal-wcwidth which allows
    the system functions for wide-character classification,
    case-switching and width (wcwidth and wcswidth) to be replaced by
    internal ones.  The first has long been used on macOS, AIX (and
    Windows) but this enables it to be unselected there and selected
    for other platforms (it is the new default on Solaris).  The
    second is new in this version of R and is selected by default on
    macOS and Solaris.  The third has long been the default and
    remains so as it contains customizations for East Asian
    languages.
    System versions of these functions are often minimally
    implemented (sometimes only for ASCII characters) and may not
    cover the full range of Unicode points: for example Solaris (and
    Windows) only cover the Basic Multilingual Plane.
  * Cairo installations without X11 are more likely to be detected by
    configure, when the file-based Cairo graphics devices will be
    available but not X11(type = "cairo").
  * There is a new configure option --with-static-cairo which is the
    default on macOS.  This should be used when only static cairo
    (and where relevant, Pango) libraries are available.
  * Cairo-based graphics devices on platforms without Pango but with
    FreeType/FontConfig will make use of the latter for font
    selection.
  LINK-TIME OPTIMIZATION on a UNIX-ALIKE:
  * Configuring with flag --enable-lto=R now also uses LTO when
    installing the recommended packages.
  * R CMD INSTALL and R CMD SHLIB have a new flag --use-LTO to use
    LTO when compiling code, for use with R configured with
  - -enable-lto=R.  For R configured with --enable-lto, they have
    the new flag --no-use-LTO.
    Packages can opt in or out of LTO compilation _via_ a UseLTO
    field in the DESCRIPTION file.  (As usual this can be overridden
    by the command-line flags.)
  BUILDING R on Windows:
  * for GCC &gt;= 8, FC_LEN_T is defined in config.h and hence character
    lengths are passed from C to Fortran in _inter alia_ BLAS and
    LAPACK calls.
  * There is a new text file src/gnuwin32/README.compilation, which
    outlines how C/Fortran code compilation is organized and
    documents new features:
  * R can be built with Link-Time Optimization with a suitable
    compiler - doing so with GCC 9.2 showed several
    inconsistencies which have been corrected.
  * There is support for cross-compiling the C and Fortran code
    in R and standard packages on suitable (Linux) platforms.
    This is mainly intended to allow developers to test later
    versions of compilers - for example using GCC 9.2 or 10.x has
    detected issues that GCC 8.3 in Rtools40 does not.
  * There is experimental support for cross-building R packages
    with C, C++ and/or Fortran code.
  * The R installer can now be optionally built to support a single
    architecture (only 64-bit or only 32-bit).
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++14 where
    available (which it is on all currently checked platforms): if
    not (as before) C++11 is used if available otherwise C++ is not
    supported.
    Packages which specify C++11 will still be installed using C++11.
    C++14 compilers may give deprecation warnings, most often for
    std::random_shuffle (deprecated in C++14 and removed in C++17).
    Either specify C++11 (see 'Writing R Extensions') or modernize
    the code and if needed specify C++14.  The latter has been
    supported since R 3.4.0 so the package's DESCRIPTION would need
    to include something like
    Depends: R (&gt;= 3.4)
  PACKAGE INSTALLATION on Windows:
  * R CMD INSTALL and R CMD SHLIB make use of their flag --use-LTO
    when the LTO_OPT make macro is set in file etc/${R_ARCH}/Makeconf
    or in a personal/site Makevars file.  (For details see 'Writing R
    Extensions' SS4.5.)
    This provides a valuable check on code consistency.  It does work
    with GCC 8.3 as in Rtools40, but that does not detect everything
    the CRAN checks with current GCC do.
  PACKAGE INSTALLATION on macOS:
  * The default personal library directory on builds with
  - -enable-aqua (including CRAN builds) now differs by CPU type,
    one of
    ~/Library/R/x86_64/x.y/library
    ~/Library/R/arm64/x.y/library
    This uses the CPU type R (and hence the packages) were built for,
    so when a x86_64 build of R is run under Rosetta emulation on an
    arm64 Mac, the first is used.
  UTILITIES:
  * R CMD check can now scan package functions for bogus return
    statements, which were possibly intended as return() calls (wish
    of PR#17180, patch by Sebastian Meyer). This check can be
    activated via the new environment variable
    _R_CHECK_BOGUS_RETURN_, true for --as-cran.
  * R CMD build omits tarballs and binaries of previous builds from
    the top-level package directory.  (PR#17828, patch by Sebastian
    Meyer.)
  * R CMD check now runs sanity checks on the use of LazyData, for
    example that a data directory is present and that
    LazyDataCompression is not specified without LazyData and has a
    documented value.  For packages with large LazyData databases
    without specifying LazyDataCompression, there is a reference to
    the code given in 'Writing R Extensions' SS1.1.6 to test the
    choice of compression (as in all the CRAN packages tested a
    non-default method was preferred).
  * R CMD build removes LazyData and LazyDataCompression fields from
    the DESCRIPTION file of packages without a data directory.
  ENCODING-RELATED CHANGES:
  * The parser now treats \Unnnnnnnn escapes larger than the upper
    limit for Unicode points (\U10FFFF) as an error as they cannot be
    represented by valid UTF-8.
    Where such escapes are used for outputting non-printable
    (including unassigned) characters, 6 hex digits are used (rather
    than 8 with leading zeros).  For clarity, braces are used, for
    example \U{0effff}.
  * The parser now looks for non-ASCII spaces on Solaris (as
    previously on most other OSes).
  * There are warnings (including from the parser) on the use of
    unpaired surrogate Unicode points such as \uD834.  (These cannot
    be converted to valid UTF-8.)
  * Functions nchar(), tolower(), toupper() and chartr() and those
    using regular expressions have more support for inputs with a
    marked Latin-1 encoding.
  * The character-classification functions used (by default) to
    replace the system iswxxxxx functions on Windows, macOS and AIX
    have been updated to Unicode 13.0.0.
    The character-width tables have been updated to include new
    assignments in Unicode 13.0.0.
  * The code for evaluating default (extended) regular expressions
    now uses the same character-classification functions as the rest
    of R (previously they differed on Windows, macOS and AIX).
  * There is a build-time option to replace the system's
    wide-character wctrans C function by tables shipped with R: use
    configure option --with-internal-towlower or (on Windows)
  - DUSE_RI18N_CASE in CFLAGS when building R.  This may be needed
    to allow tolower() and toupper() to work with Unicode characters
    beyond the Basic Multilingual Plane where not supported by system
    functions (e.g. on Solaris where it is the new default).
  * R is more careful when truncating UTF-8 and other multi-byte
    strings that are too long to be printed, passed to the system or
    libraries or placed into an internal buffer.  Truncation will no
    longer produce incomplete multibyte characters.
  DEPRECATED AND DEFUNCT:
  * Function plclust() from the package stats and
    package.dependencies(), pkgDepends(), getDepList(),
    installFoundDepends(), and vignetteDepends() from package tools
    are defunct.
  * Defunct functions checkNEWS() and readNEWS() from package tools
    and CRAN.packages() from utils have been removed.
  * R CMD config CXXCPP is defunct (it was deprecated in R 3.6.2).
  * parallel::detectCores() drops support for Irix (retired in 2013).
  * The LINPACK argument to chol.default(), chol2inv(),
    solve.default() and svd() has been defunct since R 3.1.0.  It was
    silently ignored up to R 4.0.3 but now gives an error.
  * Subsetting/indexing, such as ddd[*] or ddd$x on a DOTSXP
    (dot-dot-dot) object ddd has been disabled; it worked by accident
    only and was undocumented.
  BUG FIXES:
  * Many more C-level allocations (mainly by malloc and strdup) are
    checked for success with suitable alternative actions.
  * Bug fix for replayPlot(); this was turning off graphics engine
    display list recording if a recorded plot was replayed in the
    same session.  The impact of the bug became visible if resize the
    device after replay OR if attempted another savePlot() after
    replay (empty display list means empty screen on resize or empty
    saved plot).
  * R CMD check etc now warn when a package exports non-existing S4
    classes or methods, also in case of no "methods" presence.
    (Reported by Alex Bertram; reproducible example and patch by
    Sebastian Meyer in PR#16662.)
  * boxplot() now also accepts calls for labels such as ylab, the
    same as plot().  (Reported by Marius Hofert.)
  * The help page for xtabs() now correctly states that addNA is
    setting na.action = na.pass among others.  (Reported as PR#17770
    by Thomas Soeiro.)
  * The R CMD check &lt;pkg&gt; gives a longer and more comprehensible
    message when DESCRIPTION misses dependencies, e.g., in Imports:.
    (Thanks to the contributors of PR#17179.)
  * update.default() now calls the generic update() on the formula to
    work correctly for models with extended formulas.  (As reported
    and suggested by Neal Fultz in PR#17865.)
  * The horizontal position of leaves in a dendrogram is now correct
    also with center = FALSE.  (PR#14938, patch from Sebastian
    Meyer.)
  * all.equal.POSIXt() no longer warns about and subsequently ignores
    inconsistent "tzone" attributes, but describes the difference in
    its return value (PR#17277).  This check can be disabled _via_
    the new argument check.tzone = FALSE as suggested by Sebastian
    Meyer.
  * as.POSIXct() now populates the "tzone" attribute from its tz
    argument when x is a logical vector consisting entirely of NA
    values.
  * x[[2^31]] &lt;- v now works.  (Thanks to the report and patch by
    Suharto Anggono in PR#17330.)
  * In log-scale graphics, axis() ticks and label positions are now
    computed more carefully and symmetrically in their range,
    typically providing _more_ ticks, fulfilling wishes in PR#17936.
    The change really corresponds to an improved axisTicks() (package
    grDevices), potentially influencing grid and lattice, for
    example.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now correct to at
    least five digits where it was catastrophically wrong,
    previously.
  * sum(df) and similar "Summary"- and "Math"-group member functions
    now work for data frames df with logical columns, notably also of
    zero rows.  (Reported to R-devel by Martin "b706".)
  * unsplit() had trouble with tibbles due to unsound use of rep(NA,
    len)-indexing, which should use NA_integer_ (Reported to R-devel
    by Mario Annau.)
  * pnorm(x, log.p = TRUE) underflows to -Inf slightly later.
  * show(&lt;hidden S4 generic&gt;) prints better and without quotes for
    non-hidden S4 generics.
  * read.table() and relatives treated an "NA" column name as missing
    when check.names = FALSE PR#18007.
  * Parsing strings containing UTF-16 surrogate pairs such as
    "\uD834\uDD1E" works better on some (uncommon) platforms.
    sprintf("%X", utf8ToInt("\uD834\uDD1E")) should now give "1D11E"
    on all platforms.
  * identical(x,y) is no longer true for differing DOTSXP objects,
    fixing PR#18032.
  * str() now works correctly for DOTSXP and related exotics, even
    when these are doomed.
    Additionally, it no longer fails for lists with a class and
    "irregular" method definitions such that e.g. lapply(*) will
    necessarily fail, as currently for different igraph objects.
  * Too long lines in environment files (e.g. Renviron) no longer
    crash R. This limit has been increased to 100,000 bytes.
    (PR#18001.)
  * There is a further workaround for FreeType giving incorrect
    italic font faces with cairo-based graphics devices on macOS.
  * add_datalist(*, force = TRUE) (from package tools) now actually
    updates an existing data/datalist file for new content.  (Thanks
    to a report and patch by Sebastian Meyer in PR#18048.)
  * cut.Date() and cut.POSIXt() could produce an empty last interval
    for breaks = "months" or breaks = "years".  (Reported as PR#18053
    by Christopher Carbone.)
  * Detection of the encoding of 'regular' macOS locales such as
    en_US (which is UTF-8) had been broken by a macOS change:
    fortunately these are now rarely used with en_US.UTF-8 being
    preferred.
  * sub() and gsub(pattern, repl, x, *) now keep attributes of x such
    as names() also when pattern is NA (PR#18079).
  * Time differences ("difftime" objects) get a replacement and a
    rep() method to keep "units" consistent.  (Thanks to a report and
    patch by Nicolas Bennett in PR#18066.)
  * The \RdOpts macro, setting defaults for \Sexpr options in an Rd
    file, had been ineffective since R 2.12.0: it now works again.
    (Thanks to a report and patch by Sebastian Meyer in PR#18073.)
  * mclapply and pvec no longer accidentally terminate parallel
    processes started before by mcparallel or related calls in
    package parallel (PR#18078).
  * grep and other functions for evaluating (extended) regular
    expressions handle in Unicode also strings not explicitly flagged
    UTF-8, but flagged native when running in UTF-8 locale.
  * Fixed a crash in fifo implementation on Windows (PR#18031).
  * Binary mode in fifo on Windows is now properly detected from
    argument open (PR#15600, PR#18031).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1622808000">- The line %{__install} -m 755 -d %{_infodir}
  no longer works in TW or Factory.
  But without that line it works everywhere. So this instruction
  was commented out of the spec file.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1628596800">- CHANGES IN R 4.1.1:
  NEW FEATURES:
  * require(pkg, quietly = TRUE) is quieter and in particular does
    not warn if the package is not found.
  DEPRECATED AND DEFUNCT:
  * Use of ftp:// URIs should be regarded as deprecated, with
    on-going support confined to method = "libcurl" and not routinely
    tested.  (Nowadays no major browser supports them.)
  * The non-default method = "internal" is deprecated for http:// and
    ftp:// URIs for both download.file and url.
  * On Windows, method = "wininet" is deprecated for http://,
    https:// and ftp:// URIs for both download.file and url.  (A
    warning is only given for ftp://.)
    For ftp:// URIs the default method is now "libcurl" if available
    (which it is on CRAN builds).
    method = "wininet" remains the default for http:// and https://
    URIs but if libcurl is available, using method = "libcurl" is
    preferred.
  INSTALLATION:
  * make check now works also without a LaTeX installation.  (Thanks
    to Sebastian Meyer's PR#18103.)
  BUG FIXES:
  * make check-devel works again in an R build configured with
  - -without-recommended-packages.
  * qnbinom(p, size, mu) for large size/mu is correct now in a range
    of cases (PR#18095); similarly for the (size, prob)
    parametrization of the negative binomial.  Also qpois() and
    qbinom() are better and or faster for extreme cases.  The
    underlying C code has been modularized and is common to all four
    cases of discrete distributions.
  * gap.axis is now part of the axis() arguments which are passed
    from bxp(), and hence boxplot().  (Thanks to Martin Smith's
    report and suggestions in PR#18109.)
  * .First and .Last can again be set from the site profile.
  * seq.int(from, to, *) and seq.default(..) now work better in large
    range cases where from-to is infinite where the two boundaries
    are finite.
  * all.equal(x,y) now returns TRUE correctly also when several
    entries of abs(x) and abs(y) are close to .Machine$double.xmax,
    the largest finite numeric.
  * model.frame() now clears the object bit when removing the class
    attribute of a value via na.action (PR#18100).
  * charClass() now works with multi-character strings on Windows
    (PR#18104, fixed by Bill Dunlap).
  * encodeString() on Solaris now works again in Latin-1 encoding on
    characters represented differently in UTF-8.  Support for
    surrogate pairs on Solaris has been improved.
  * file.show() on Windows now works with non-ASCII path names
    representable in the current native encoding (PR#18132).
  * Embedded R on Windows can now find R home directory via the
    registry even when installed only for the current user
    (PR#18135).
  * pretty(x) with finite x now returns finite values also in the
    case where the extreme x values are close in size to the maximal
    representable number .Machine$double.xmax.
    Also, it's been tweaked for very small ranges and when a boundary
    is close (or equal) to zero; e.g., pretty(c(0,1e-317)) no longer
    has negative numbers, currently still warning about a very small
    range, and pretty(2^-(1024 - 2^-1/(c(24,10)))) is more accurate.
  * The error message for not finding vignette files when weaving has
    correct file sizes now. (Thanks to Sebastian Meyer's PR#18154.)
  * dnbinom(20, &lt;large&gt;, 1) now correctly gives 0, and similar cases
    are more accurate with underflow precaution.  (Reported by Francisco Vera Alcivar in PR#18072.)</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635163200">- repaired https://bugzilla.suse.com/show_bug.cgi?id=1191380
  (rpmacros now go to rpmmacrodir)
- minor clean-ups in spec file</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635768000">- CHANGES IN R 4.1.2:
  C-LEVEL FACILITIES:
  * The workaround in headers R.h and Rmath.h (using namespace std;)
    for the Oracle Developer Studio compiler is no longer needed now
    C++11 is required so has been removed.  A couple more usages of
    log() (which should have been std::log()) with an int argument
    are reported on Solaris.
  * The undocumented limit of 4095 bytes on messages from the
    S-compatibility macros PROBLEM and MESSAGE is now documented and
    longer messages will be silently truncated rather than
    potentially causing segfaults.
  * If the R_NO_SEGV_HANDLER environment variable is non-empty, the
    signal handler for SEGV/ILL/BUS signals (which offers recovery
    user interface) is not set. This allows more reliable debugging
    of crashes that involve the console.
  DEPRECATED AND DEFUNCT:
  * The legacy S-compatibility macros PROBLEM, MESSAGE, ERROR, WARN,
    WARNING, RECOVER, ... are deprecated and will be hidden in R
    4.2.0. R's native interface of Rf_error and Rf_warning has long
    been preferred.
  BUG FIXES:
  * .mapply(F, dots, .) no longer segfaults when dots is not a list
    and uses match.fun(F) as always documented; reported by Andrew
    Simmons in PR#18164.
  * hist(&lt;Date&gt;, ...) and hist(&lt;POSIXt&gt;, ...)  no longer pass
    arguments for rect() (such as col and density) to axis().
    (Thanks to Sebastian Meyer's PR#18171.)
  * \Sexpr{ch} now preserves Encoding(ch). (Thanks to report and
    patch by Jeroen Ooms in PR#18152.)
  * Setting the RNG to "Marsaglia-Multicarry" e.g., by RNGkind(), now
    warns in more places, thanks to Andr'e Gillibert's report and
    patch in PR#18168.
  * gray(numeric(), alpha=1/2) no longer segfaults, fixing PR#18183,
    reported by Till Krenz.
  * Fixed dnbinom(x, size=&lt;very_small&gt;, .., log=TRUE) regression,
    reported by Martin Morgan.
  * as.Date.POSIXlt(x) now keeps names(x), thanks to Davis Vaughan's
    report and patch in PR#18188.
  * model.response() now strips an "AsIs" class typically, thanks to
    Duncan Murdoch's report and other discussants in PR#18190.
  * try() is considerably faster in case of an error and long call,
    as e.g., from some do.call().  Thanks to Alexander Kaever's
    suggestion posted to R-devel.
  * qqline(y = &lt;object&gt;) such as y=I(.), now works, see also
    PR#18190.
  * Non-integer mgp par() settings are now handled correctly in
    axis() and mtext(), thanks to Mikael Jagan and Duncan Murdoch's
    report and suggestion in PR#18194.
  * formatC(x) returns length zero character() now, rather than ""
    when x is of length zero, as documented, thanks to Davis
    Vaughan's post to R-devel.
  * removeSource(fn) now retains (other) attributes(fn).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1647000000">- CHANGES IN R 4.1.3:
  NEW FEATURES:
  * The default version of Bioconductor has been changed to 3.14.
    (This is used by setRepositories and the menus in GUIs.)
  UTILITIES:
  * R CMD check --as-cran has a workaround for a bug in versions of
    file up to at least 5.41 which mis-identify DBF files last
    changed in 2022 as executables.
  C-LEVEL FACILITIES:
  * The legacy S-compatibility macros SINGLE_* in R_ext/Constants.h
    (included by R.h) are deprecated and will be removed in R 4.2.0.
  BUG FIXES:
  * Initialization of self-starting nls() models with initialization
    functions following the pre-R-4.1.0 API (without the ...
    argument) works again for now, with a deprecation warning.
  * Fixed quoting of ~autodetect~ in Java setting defaults to avoid
    inadvertent user lookup due to leading ~, reported in PR#18231 by
    Harold Gutch.
  * substr(., start, stop) &lt;- v now treats _negative_ stop values
    correctly.  Reported with a patch in PR#18228 by Brodie Gaslam.
  * Subscripting an array x without dimnames by a
    length(dim(x))-column character matrix gave "random" non-sense,
    now an error; reported in PR#18244 by Mikael Jagan.
  * ...names() now matches names(list(...)) closely, fixing PR#18247.
  * all.equal(*, scale = s) now works as intended when length(s) &gt; 1,
    partly thanks to Michael Chirico's PR#18272.
  * print(x) for long vectors x now also works for named atomic
    vectors or lists and prints the correct number when reaching the
    getOption("max.print") limit; partly thanks to a report and
    proposal by Hugh Parsonage to the R-devel list.
  * all.equal(&lt;selfStart&gt;, *) no longer signals a deprecation
    warning.
  * reformulate(*, response=r) gives a helpful error message now when
    length(r) &gt; 1, thanks to Bill Dunlap's PR#18281.
  * Modifying globalCallingHandlers inside withCallingHandlers() now
    works or fails correctly, thanks to Henrik Bengtsson's PR#18257.
  * hist(&lt;Date&gt;, breaks = "days") and hist(&lt;POSIXt&gt;, breaks = "secs")
    no longer fail for inputs of length 1.
  * qbeta(.001, .9, .009) and similar cases now converge correctly
    thanks to Ben Bolker's report in PR#17746.
  * window(x, start, end) no longer wrongly signals "'start' cannot
    be after 'end'", fixing PR#17527 and PR#18291.
  * data() now checks that its (rarely used) list argument is a
    character vector - a couple of packages passed other types and
    gave incorrect results.
  * which() now checks its arr.ind argument is TRUE rather coercing
    to logical and taking the first element - which gave incorrect
    results in package code.
  * model.weights() and model.offset() more carefully extract their
    model components, thanks to Ben Bolker and Tim Taylor's R-devel
    post.
  * list.files(recursive = TRUE) now shows all broken symlinks
    (previously, some of them may have been omitted, PR#18296).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1650628800">- CHANGES IN R 4.2.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * The formula method of aggregate() now matches the generic in
    naming its first argument x (resolving PR#18299 by Thomas
    Soeiro).
    This means that calling aggregate() with a formula as a named
    first argument requires name formula in earlier versions of R and
    name x now, so portable code should not name the argument (code
    in many packages did).
  * Calling &amp;&amp; or || with either argument of length greater than one
    now gives a warning (which it is intended will become an error).
  * Calling if() or while() with a condition of length greater than
    one gives an error rather than a warning.  Consequently,
    environment variable _R_CHECK_LENGTH_1_CONDITION_ no longer has
    any effect.
  * Windows users should consult the WINDOWS section below for some
    profound changes including
  * Support for 32-bit builds has been dropped.
  * UTF-8 locales are used where available.
  * The default locations for the R installation and personal
    library folder have been changed.
    Thanks to Tomas Kalibera for months of work on the Windows port
    for this release.
  NEW FEATURES:
  * matrix(x, n, m) now warns in more cases where length(x) differs
    from n * m, as suggested by Abby Spurdle and Wolfgang Huber in
    Feb 2021 on the R-devel mailing list.
    This warning can be turned into an error by setting environment
    variable _R_CHECK_MATRIX_DATA_ to TRUE: R CMD check --as-cran
    does so unless it is already set.
  * Function file_test() in package utils gains tests for symlinks,
    readability and writability.
  * capabilities("libxml") is now false.
    The description of capabilities("http/ftp") now reflects that it
    refers to the default method, no longer the internal one.
  * simplify2array() gains an except argument for controlling the
    exceptions used by sapply().
  * Environment variables R_LIBS_USER and R_LIBS_SITE are both now
    set to the R system default if unset or empty, and can be set to
    NULL to indicate an empty list of user or site library
    directories.
  * The warning for axis()(-like) calls in cases of relatively small
    ranges (typically in log-scale situations) is slightly improved
    _and_ suppressed from explicit calls to .axisPars() as has always
    been the intention.
  * The contrasts setter function `contrasts&lt;-` gains an explicit
    default how.many = NULL rather than just using missing(how.many).
  * grid.pretty() gains a new optional argument n = 5.
  * There is a new function .pretty() with option bounds as a
    technical-utility version of pretty().  It and pretty() gain a
    new argument f.min with a better than back-compatible default.
  * Function grDevices::axisTicks() and related functions such as
    graphics::axis() work better, notably for the log scale; partly
    because of the pretty() improvements, but also because care is
    taken e.g., when ylim is finite but diff(ylim) is infinite.
  * nclass.FD() gains a digits option.
  * The R Mathlib internal C function bd0() (called indirectly from a
    dozen probability density and distribution functions such as
    dpois(), dbinom(), dgamma(), pgamma() _etc_) has been
    complemented by a more sophisticated and (mostly) more accurate C
    function ebd0(), currently called only by internal dpois_raw()
    improving accuracy for R level dpois() and potentially others
    calling it such as dnbinom(), dgamma() or pgamma().  (Thanks to
    Morten Welinder's PR#15628.)
  * write.ftable() gains sep = " " argument as suggested by Thomas
    Soeiro.
  * The names of the locale categories supported by R's
    Sys.getlocale() and Sys.setlocale() are now provided by variable
    .LC.categories in the base namespace.
  * The Date and POSIXt methods for hist() and the histogram method
    for plot() now also use the new default col = "lightgray" in
    consistency with the corresponding change to hist()'s default for
    R 4.0.0.
  * hist.default() gains new fuzz argument, and the histogram plot
    method no longer uses fractional axis ticks when displaying
    counts ("Frequency").
  * mapply() and hence Map() now also obey the "max-or-0-if-any"
    recycling rule, such that, e.g., Map(`+`, 1:3, 1[0]) is valid
    now.
  * as.character(&lt;obj&gt;) for "hexmode" or "octmode" objects now
    fulfils the important basic rule as.character(x)[j] ===
    as.character(x[j]).
  * The set utility functions, notably intersect() have been tweaked
    to be more consistent and symmetric in their two set arguments,
    also preserving a common mode.
  * substr(ch, start,end) &lt;- new now e.g., preserves names(ch); ditto
    for substring(), thanks to a patch from Brodie Gaslam.
  * plot(&lt;lm&gt;) gains a extend.ylim.f argument, in partial response to
    PR#15285; further PR#17784 is fixed thanks to several
    contributors and a patch by Elin Waring.  The Cook's dist
    contours get customizable via cook.col and cook.lty with a
    different default color and their legend is nicer by default and
    customizable via cook.legendChanges.
  * Attempting to subset an object that is not subsettable now
    signals an error of class notSubsettableError. The
    non-subsettable object is contained in the object field of the
    error condition.
  * Subscript-out-of-bounds errors are now signaled as errors of
    class subscriptOutOfBoundsError.
  * Stack-overflow errors are now signaled as errors inheriting from
    class stackOverflowError. See ?stackOverflowError for more
    details.
  * New partly experimental Sys.setLanguage() utility, solving the
    main problem of PR#18055.
  * gettext() and gettextf() get a new option trim = TRUE which when
    set to false allows translations for strings such as "Execution
    halted\n" typical for C code.
  * An experimental implementation of hash tables is now available.
    See ?hashtab for more details.
  * identical() gains a extptr.as.ref argument for requesting that
    external pointer objects be compared as reference objects.
  * reorder() gets an argument decreasing which it passes to sort()
    for level creation; based on the wish and patch by Thomas Soeiro
    in PR#18243.
  * as.vector() gains a data.frame method which returns a simple
    named list, also clearing a long standing 'FIXME' to enable
    as.vector(&lt;data.frame&gt;, mode="list").  This breaks code relying
    on as.vector(&lt;data.frame&gt;) to return the unchanged data frame.
  * legend() is now vectorized for arguments cex, x.intersp, and
    text.width.  The latter can now also be specified as a vector
    (one element for each column of the legend) or as NA for
    computing a proper column wise maximum value of strwidth(legend).
    The argument y.intersp can be specified as a vector with one
    entry for each row of the legend.
    legend() also gains new arguments title.cex and title.font.
    Thanks to Swetlana Herbrandt.
  * Deparsing no longer remaps attribute names dim, dimnames, levels,
    names and tsp to historical S-compatible names (which structure()
    maps back).
  * sample() and sample.int() have additional sanity checks on their
    size and n arguments.
    all.equal.numeric() gains a sanity check on its tolerance
    argument - calling all.equal(a, b, c) for three numeric vectors
    is a surprisingly common error.
    mean(na.rm =), rank(na.last =), barplot(legend.text =),
    boxplot(), contour(drawlabels =), polygon(border =) and
    methods::is(class2 =) have more robust sanity checks on their
    arguments.
    R CMD Rd2pdf (used by R CMD check) has a more robust sanity check
    on the format of \alias{} commands.
  * psigamma(x, deriv) for negative x now also works for deriv = 4
    and 5; their underlying C level dpsifn() is documented in
    'Writing R Extensions'.
  * The HTML help system now uses HTML5 (wish of PR#18149).
  * ks.test() now provides exact p-values also with ties and MC
    p-values in the two-sample (Smirnov) case.  By Torsten Hothorn.
  * ks.test() gains a formula interface, with y ~ 1 for the
    one-sample (Kolmogorov) test and y ~ group for the two-sample
    (Smirnov) test.  Contributed by Torsten Hothorn.
  * The return value from ks.test() now has class c("ks.test",
    "htest") - packages using try() need to take care to use
    inherits() and not == on the class.
  * New functions psmirnov(), qsmirnov() and rsmirnov() in package
    stats implementing the asymptotic and exact distributions of the
    two-sample Smirnov statistic.
  * iconv() now allows sub = "c99" to use C99-style escapes for UTF-8
    inputs which cannot be converted to encoding to.
  * In a forward pipe |&gt; expression it is now possible to use a named
    argument with the placeholder _ in the rhs call to specify where
    the lhs is to be inserted.  The placeholder can only appear once
    on the rhs.
  * The included LAPACK sources have been updated to version 3.10.0,
    except for the four Fortran 77 routines which 3.10.0 has
    re-implemented in Fortran 90 (where the older versions have been
    retained as the R build process does not support Fortran 90).
  * path.expand() and most other uses of tilde expansion now warn if
    a path would be too long if expanded.  (An exception is
    file.exists(), which silently returns false.)
  * trunc(&lt;Date&gt;, *) now supports units = "months" or "years" for
    consistency with the POSIXt method, thanks to Dirk Eddelbuettel's
    proposal in PR#18099.
  * list2DF() now checks that its arguments are of the same length,
    rather than use recycling.
  * The HTML help system has several new features: LaTeX-like math
    can be typeset using either KaTeX or MathJax, usage and example
    code is highlighted using Prism, and for dynamic help the output
    of examples and demos can be shown within the browser if the
    knitr package is installed. These features can be disabled by
    setting the environment variable _R_HELP_ENABLE_ENHANCED_HTML_ to
    a false value.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 15
    and so packages that provide graphics devices should be
    reinstalled.
  * The grid package now allows the user to specify a "vector" of
    pattern fills.  The fill argument to gpar() accepts a list of
    gradients and/or patterns and the functions linearGradient(),
    radialGradient(), and pattern() have a new group argument.
    Points grobs (data symbols) can now also have a pattern fill.
    The grobCoords() function now returns a more informative and
    complex result.
  * The grid package has new functions for drawing isolated groups:
    grid.group(), grid.define(), and grid.use().  These functions add
    compositing operators and affine transformations to R's graphics
    capabilities.
    The grid package also has new functions for stroking and filling
    paths: grid.stroke(), grid.fill(), and grid.fillStroke().
    A new function as.path() allows the user to specify the fill rule
    for a path that is to be used for clipping, stroking, or filling;
    available options are "winding" and "evenodd".  A new function
    as.mask() allows the user to specify the type of a mask;
    available options are "alpha" and "luminance".
    These new features are only supported so far (at most) on the
    Cairo-based graphics devices and on the pdf() device.
  * dev.capabilities() reports on device support for the new
    features.
  * par() now warns about unnamed non-character arguments to prevent
    misuse such as {usr &lt;- par("usr"); par(usr)}.
  INSTALLATION:
  * Facilities for accessing ftp:// sites are no longer tested
    (except _pro tem_ for curlGetHeaders()) as modern browsers have
    removed support.
  * R can now be built with DEFS = -DSTRICT_R_HEADERS .
  PACKAGE INSTALLATION:
  * R CMD INSTALL no longer tangles vignettes. This completes an R
    CMD build change in R 3.0.0 and affects packages built before R
    3.0.2. Such packages should be re-made with R CMD build to have
    the tangled R code of vignettes shipped with the tarball.
  * USE_FC_LEN_T will become the default: this uses the correct
    prototypes for Fortran BLAS/LAPACK routines called from C/C++,
    and requires adjustment of most such calls - see 'Writing R
    Extensions' SS6.6.2.  (This has been supported since R 3.6.2.)
  * Package installation speed for packages installed with
    keep.source has been improved. This resolve the issue reported by
    Ofek Shilon in PR#18236.
  UTILITIES:
  * R CMD check can optionally report files/directories left behind
    in home, /tmp (even though TMPDIR is set) and other directories.
    See the "R Internals" manual for details.
  * R CMD check now reports byte-compilation errors during
    installation.  These are not usually fatal but may result in
    parts of the package not being byte-compiled.
  * _R_CHECK_DEPENDS_ONLY_ can be applied selectively to examples,
    tests and/or vignettes in R CMD check: see the "R Internals"
    manual.
  * _R_CHECK_SRC_MINUS_W_IMPLICIT_ now defaults to true: recent
    versions of Apple clang on macOS have made implicit function
    declarations in C into a compilation error.
  * R CMD check --as-cran makes use of the environment variable
    AUTORECONF.  See the "R Internals" manual SS8 for further details.
  * R CMD check --use-valgrind also uses valgrind when re-building
    vignettes as some non-Sweave vignettes unhelpfully comment out
    all their code when R CMD check runs vignettes.
  * Errors in re-building vignettes (unless there are LaTeX errors)
    are reported by R CMD check as ERROR rather than WARNING when
    running vignettes has been skipped (as it frequently is in CRAN
    checks and by --as-cran).
  * R CMD Rd2pdf gains a --quiet option that is used by R CMD build
    when building the PDF package manual.
  * R CMD Rd2pdf now always runs LaTeX in batch mode, consistent with
    Texinfo &gt;= 6.7. The --batch option is ignored.
  * R CMD build and R CMD check now include the Rd file name and line
    numbers in the error message of an \Sexpr evaluation failure.
  * For packages using the \doi Rd macro (now an install-time \Sexpr)
    but no other dynamic Rd content, R CMD build now produces a
    smaller tarball and is considerably faster - skipping temporary
    package installation.
  C-LEVEL FACILITIES:
  * The non-API header R_ext/R-ftp-http.h is no longer provided, as
    the entry points it covered are now all defunct.
  * A number of non-API declarations and macro definitions have been
    moved from the installed header Rinternals.h to the internal
    header Defn.h. Packages that only use entry points and
    definitions documented to be part of the API as specified in
    'Writing R Extensions' SS6 should not be affected.
  * The macro USE_RINTERNALS no longer has any effect when compiling
    package code.  Packages which also use R_NO_REMAP will need to
    ensure that the remapped names are used for calls to API
    functions that were formerly also made available as macros.
  * The deprecated legacy S-compatibility macros PROBLEM, MESSAGE,
    ERROR, WARN, WARNING, RECOVER, ... are no longer defined in
    R_exts/RS.h (included by R.h).  Replace these by calls to
    Rf_error and Rf_warning (defined in header R_ext/Error.h included
    by R.h).
    Header R_ext/RS.h no longer includes R_ext/Error.h.
  * Header R_ext/Constants.h (included by R.h) when included from C++
    now includes the C++ header cfloat rather than the C header
    float.h (now possible as C++11 is required).
  * The legacy S-compatibility macros DOUBLE_* in R_ext/Constants.h
    (included by R.h) are deprecated.
  * The deprecated S-compatibility macros SINGLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * R_Calloc, R_Free and R_Realloc are preferred to their unprefixed
    forms and error messages now use the prefix. These forms were
    introduced in R 3.4.0 and are available even when
    STRICT_R_HEADERS is defined.
  * rmultinom has been documented in 'Writing R Extensions' SS6 so is
    now part of the R API.
  * Similarly, Rtanpi, called from R level tanpi() is now part of the
    R API.
  * The long-deprecated, undocumented and non-API entry point call_R
    is no longer declared in R_ext/RS.h (included by R.h).
  * The header S.h which has been unsupported since Jan 2016 has been
    removed.  Use R.h instead.
  DEPRECATED AND DEFUNCT:
  * The (non-default and deprecated) method = "internal" for
    download.file() and url() no longer supports http:// nor ftp://
    URIs.  (It is used only for file:// URIs.)
    On Windows, download.file(method = "wininet") no longer supports
    ftp:// URIs.  (It is no longer the default method, which is
    "libcurl" and does.)
    On Windows, the deprecated method = "wininet" now gives a warning
    for http:// and https:// URIs for both download.file() and url().
    (It is no longer the default method.)
  * On Windows, the command-line option --max-mem-size and
    environment variable R_MAX_MEM_SIZE are defunct.  The memory
    allocation limit was important for 32-bit builds, but these are
    no longer supported.
  * default.stringsAsFactors() is now formally deprecated, where that
    was only mentioned on its regular help page, previously.  So it
    now gives a warning if called.
  * unix.time() is defunct now; it had been deprecated since R 3.4.0.
  BUG FIXES:
  * Setting digits = 0 in format(), print.default() (and hence
    typically print()) or options() is again invalid.  Its behaviour
    was platform-dependent, and it is unclear what "zero significant
    digits" should mean (PR#18098).
  * Messages from C code in the cairo section of package grDevices
    are now also offered for translation, thanks to Michael Chirico's
    PR#18123.
  * mean(x) with finite x now is finite also without "long.double"
    capability.
  * R CMD Rd2pdf no longer leaves an empty build directory behind
    when it aborts due to an already existing output file.  (Thanks
    to Sebastian Meyer's PR#18141.)
  * density(x, weights = w, na.rm = TRUE) when anyNA(x) is true, now
    removes weights "in parallel" to x, fixing PR#18151, reported by
    Matthias Gondan.  Additionally, it gets a subdensity option.
  * Conversion of \Sexpr[]{&lt;expR&gt;} to LaTeX or HTML no longer
    produces long blocks of empty lines when &lt;expR&gt; itself contains
    several lines all producing empty output.  Thanks to a report and
    patch by Ivan Krylov posted to R-devel.
  * R CMD build no longer fails if a package vignette uses child
    documents and inst/doc exists.  (Thanks to Sebastian Meyer's
    PR#18156.)
  * When an R documentation ('help' source) file man/foo.Rd in a
    package has \donttest{..} examples with a syntax error, it is now
    signalled as ERROR and with correct line numbers relating to the
  * -Ex.R file, thanks to Duncan Murdoch and Sebastian Meyer's
    reports and patch proposals in PR#17501.
  * Improved determination of the correct translation domain in
    non-base packages, addressing the combination of PR#18092 and
    PR#17998 (#c6) with reports and _augmented_ patch #2904 by
    Suharto Anggono.
    Note that "R-base" is no longer the default domain e.g., for
    top-level calls to gettext(); rather translation needs explicit
    domain = * specification in such cases.
  * identical(attrib.as.set=FALSE) now works correctly with data
    frames with default row names (Thanks to Charlie Gao's PR#18179).
  * txtProgressBar() now enforces a non-zero width for argument char,
    without which no progress can be visible.
  * dimnames(table(d)) is more consistent in the case where d is a
    list with a single component, thanks to Thomas Soeiro's report to
    R-devel.
    Further, table(d1, d2) now gives an error when d1 and d2 are data
    frames as suggested by Thomas in PR#18224.
  * Fix for drawing semi-transparent lines and fills on the native
    Windows graphics device (PR#18219 and PR#16694).  Thanks to Nick
    Ray for helpful diagnosis on Bugzilla.
  * The deparser now wraps sub-expressions such as if(A) ..  with
    parentheses when needed; thanks to Duncan Murdoch's PR#18232 and
    Lionel Henry's patches there.
  * remove.packages() no longer tries to uninstall Priority: base
    packages, thanks to a report and suggestions by Colin Fay in
    PR#18227.
  * win.metafile() now has xpinch and ypinch arguments so that the
    user can override Windows' (potentially wrong) guess at device
    dimensions.
  * x[i] and x[[i]] for non-integer i should now behave in all cases
    as always documented: the index used is equivalent to
    as.integer(i) unless that would overflow where trunc(i) is used
    instead; thanks to Suharto Anggono's report and patch proposals
    in PR#17977.
  * asOneSidedFormula() now associates the resulting formula with the
    global environment rather than the evaluation environment created
    for the call.
  * &lt;bibentry&gt;$name now matches the field name case-insensitively,
    consistent with bibentry() creation and the replacement method.
  * cbind() failed to detect some length mismatches with a mixture of
    time-series and non-time-series inputs.
  * The default LaTeX style file Sweave.sty used by the RweaveLatex
    driver no longer loads the obsolete ae package; thanks to a
    report by Thomas Soeiro in PR#18271.  Furthermore, it now skips
    \usepackage[T1]{fontenc} for engines other than pdfTeX (if
    detected) or if the new [nofontenc] option is used.
  * smooth.spline() now stores its logical cv argument more safely,
    fixing a rare bug when printing, and also stores n.
  * smooth.spline(x,y,*) now computes the cv.crit statistic
    correctly, also when is.unsorted(x), fixing PR#18294.
  * The data.frame method of rbind() now warns when binding
    not-wholly-recycling vectors, by analogy to the default method
    (for matrices).
  * setAs() finds the correct class for name to when multiple
    packages define a class with that name. Thanks to Gabor Csardi
    for the report.
  * Fix for detaching a package when two classes of the same name are
    present in method signatures for the same generic. Thanks to
    Gabor Csardi for the report.
  * match.arg("", c("", "a", "B")) gives a better error message, in
    part from PR#17959, thanks to Elin Waring.
  * R CMD Sweave --clean no longer removes pre-existing files or
    subdirectories (PR#18242).
  * The quartz() device no longer splits polylines into subpaths.
    That has caused narrowly-spaced lines with many points to always
    look solid even when dashed line type was used due to dash phase
    restarts.
  * Deparsing constructs such as quote(1 + `!`(2) + 3) works again as
    before R 3.5.0, thanks to the report and patch in PR#18284 by
    Suharto Anggono.
  * as.list(f) for a factor f now keeps names(f), fixing PR#18309.
  * qbeta(.001, .9, .009) and analogous qf() calls now return a
    correct value instead of NaN or wrongly 1, all with a warning;
    thanks to the report by Ludger Goeminne in PR#18302.
  * plot.lm() failed to produce the plot of residuals vs.  factor
    levels (i.e., which=5 when leverages are constant) for models
    with character predictors (PR#17840).
  * interaction.plot(..., xtick = TRUE) misplaced the x-axis line
    (PR#18305).
  * Not strictly fixing a bug, format()ing and print()ing of
    non-finite Date and POSIXt values NaN and +/-Inf no longer show
    as NA but the respective string, e.g., Inf, for consistency with
    numeric vector's behaviour, fulfilling the wish of PR#18308.
  * R CMD check no longer runs test scripts generated from
    corresponding .Rin files twice and now signals an ERROR if
    processing an .Rin script fails.
  * tools::Rd2txt() used for plain-text help pages now renders \hrefs
    (if tools::Rd2txt_options(showURLs = TRUE)) and \urls with
    percent-encoding and standards-compliant delimiting style (angle
    brackets and no URL: prefix).  \email is now rendered with a
    mailto: prefix.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1655985600">- CHANGES IN R 4.2.1:
  NEW FEATURES:
  * New function utils::findCRANmirror() to find out if a CRAN mirror
    has been selected, otherwise fallback to the main site.  This
    behaves in the same way as tools::CRAN_package_db() and is
    intended for packages wishing to access CRAN for purposes other
    than installing packages.
    The need for this was shown by a day when the main CRAN website
    was offline and a dozen or so packages which had its URL
    hardcoded failed their checks.
  INSTALLATION on a UNIX-ALIKE:
  * The libraries searched for by --with-blas (without a value) now
    include BLIS (after OpenBLAS but before ATLAS).  And on macOS,
    the Accelerate framework (after ATLAS).  (This is patterned after
    the AX_BLAS macro from the Autoconf Archive.)
  * The included LAPACK sources have been updated to 3.10.1.
  UTILITIES:
  * The (full path to) the command tidy to be used for HTML
    validation can be set by environment variable R_TIDYCMD.
  * Setting environment variable _R_CHECK_RD_VALIDATE_RD2HTML_ to a
    false value will override R CMD check --as-cran and turn off HTML
    validation.  This provides a way to circumvent a problematic
    tidy.
    The 2006 version that ships with macOS is always skipped.
  C-LEVEL FACILITIES:
  * The undocumented legacy declarations of Sint, Sfloat, SINT_MAX
    and SINT_MIN in header R.h are deprecated.
  BUG FIXES:
  * fisher.test(d) no longer segfaults for "large" d; fixing PR#18336
    by preventing/detecting an integer overflow reliably.
  * tar(., files=*) now produces correctly the warning about invalid
    uid or gid of files, fixing PR#18344, reported by Martin Morgan.
  * tk_choose.files() with multi = FALSE misbehaved on paths
    containing spaces (PR#18334) (regression introduced in R 4.0.0).
  * sort(x, partial = ind, *) now works correctly notably for the
    non-default na.last = FALSE or TRUE, fixing PR#18335 reported by
    James Edwards.
  * Environment variable _R_CHECK_XREFS_REPOSITORIES_ is only used
    for checking .Rd cross-references in R CMD check (as documented)
    and not for other uses looking for a CRAN mirror.
  * The search for a CRAN mirror when checking packages now uses
    getOption("repos") if that specifies a CRAN mirror, even when it
    does not also specify all three Bioconductor repositories (as was
    previously required).
  * The HTML code generated by tools::Rd2HTML() has been improved to
    pass tidy 5.8.0.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1667217600">- CHANGES IN R 4.2.2:
  NEW FEATURES:
  * tools::Rdiff(useDiff = TRUE) checks for the presence of an
    external diff command and switches to useDiff = FALSE if none is
    found.  This allows R CMD Rdiff to always work.
  * On Windows, environment variable R_LIBCURL_SSL_REVOKE_BEST_EFFORT
    can be used to switch to only 'best-effort' SSL certificate
    revocation checks with the default "libcurl" download method.
    This reduces security, but may be needed for downloads to work
    with MITM proxies (PR#18379).
  * (macOS) The run-time check for libraries from XQuartz for X11 and
    Tcl/Tk no longer uses otool from the Apple Developer Tools
    (PR#18400).
  * The LaTeX style for producing the PDF manuals, Rd.sty, now loads
    the standard amsmath, amsfonts and amssymb packages for greater
    coverage of math commands in the Rd \eqn and \deqn macros.  The
    \mathscr LaTeX command is also provided (via the mathrsfs
    package, if available, or the amsfonts bundle otherwise),
    fulfilling the wish of PR#18398.
  * (Windows) The default format of readClipboard() and
    writeClipboard() has been changed to 13 (CF_UNICODETEXT).
  INSTALLATION on a UNIX-ALIKE:
  * The PDF manuals (if built) can be compacted by the new target
    make compact-pdf (at the top level or in directory doc/manual).
  * There is now configure support for LLVM clang 15 on Linux, which
    defaults to position-independent (PIE) executables whereas
    gfortran does not.
  * Many small changes to ease compilation (and suppress warnings)
    with LLVM clang 15.
  BUG FIXES:
  * Rscript -e would fail if stdin were closed (Reported by Henrik
    Bengtsson.)
  * qt(*, log.p=TRUE) in outer tails no longer produces NaN in its
    final steps, thus fixing PR#18360.
  * tools::Rd2latex() now escapes hashes and ampersands when writing
    URLs, fixing LaTeX errors with such URLs in \tabular.
  * When isGeneric(f, fdef=*) is used with mismatching names, the
    warning is better understandable; reported (with fix) in PR#18370
    by Gabe Becker.
  * poly(x, n) now works again (and is now documented) when x is a
    "Date" or "POSIXct" object, or of another class while fulfilling
    mode(x) == "numeric".  This also enables poly(x, *, raw=TRUE) for
    such variables.  Reported by Michael Chirico to R-devel.
  * write.table(), write.csv() and write.csv2() restore their
    numerical precision (internal equivalent of digits = 15) after an
    interrupt (PR#18384).
  * One can now read also byte FF from a clipboard connection
    (PR#18385).
  * source("") and source(character()) now give more helpful error
    messages.
  * R CMD check --as-cran set _R_CHECK_TIMINGS_ too late to have the
    intended effect.
  * as.POSIXlt(x) now also works with very large dates x, fixing
    PR#18401 reported by Hannes M"uhleisen.
  * Files can now be extracted even from very large zip archives
    (PR#18390, thanks to Martin Jakt).
  * Non-finite objects of class "POSIXlt" are now correctly coerced
    to classes "Date" and "POSIXct"; following up on the extension to
    format() them correctly.
  * Added methods for is.finite(), is.infinite() and is.nan() for
    "POSIXlt" date-time objects.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1678881600">- CHANGES IN R 4.2.3:
  C-LEVEL FACILITIES:
  * The definition of DL_FUNC in R_ext/Rdynload.h has been changed to
    be fully C-compliant.  This means that functions loaded _via_ for
    example R_GetCCallable need to be cast to an appropriate type if
    they have any arguments.
  * .Machine has a new element sizeof.time_t to identify old systems
    with a 32-bit type and hence a limited range of date-times (and
    limited support for dates millions of years from present).
  PACKAGE INSTALLATION:
  * (Windows) The default C++ standard had accidentally been left at
    C++11 when it was changed to C++14 on Unix.
  BUG FIXES:
  * As "POSIXlt" objects may be "partially filled" and their list
    components meant to be recycled, length() now is the length of
    the longest component.
  * as.POSIXlt.Date() could underflow for dates in the far past (more
    than half a million years BCE).
  * as.Date.POSIXlt(x) would return "1970-01-01" instead of NA in R
    4.2.2, e.g., for
    x &lt;- as.POSIXlt(c("2019-01-30","2001-1-1"))
    x$mon &lt;- c(0L, NA); as.Date(x)
  * R CMD check failed to apply enabled _R_CHECK_SUGGESTS_ONLY_ to
    examples and vignettes (regression in R 4.2.0).
  * R CMD check did not re-build vignettes in separate processes by
    default (regression in R 4.2.0).
  * Running examples from HTML documentation now restores previous
    knitr settings and options (PR#18420).
  * Quartz: fonts are now located using Core Graphics API instead of
    deprecated ATS which is no longer supported in the macOS 13 SDK
    (PR#18426).  This also addresses an issue where the currently
    used font in the Quartz device context was not correctly
    retained.
  * (Windows) Math symbols in text drawing functions are again
    rendered correctly (PR#18440).  This fixes a regression in R
    4.2.1 caused by a fix in PR#18382 which uncovered an issue in
    GraphApp due to which the symbol charset was not used with TT
    Symbol font face.
  * (Windows) Installing a package with a src/Makefile.{win,ucrt}
    file includes ~/.R/Makevars.win64 in the search for user
    makevars, as documented in "R Installation and Administration"
    and done for packages with a src/Makevars.{win,ucrt} file.
  * format(&lt;POSIXlt_w/_unbalanced_sec&gt;, "....%OS&lt;n&gt;") with n &gt; 0 no
    longer accidentally uses the unbalanced seconds, thanks to
    Suharto Anggono's report (including patch) in PR#18448.
  * solve.default(a, b) works around issues with some versions of
    LAPACK when a contains NA or NaN values.
  * When UseMethod() cannot dispatch, it no longer segfaults
    producing the error message in case of a long class(), thanks to
    Joris Vankerschaver's report (including patch) in PR#18447.
  * When example(foo, ..) produces graphics on an interactive device
    it needs to open itself, it now leaves devAskNewPage() unchanged
    even when it was FALSE, thus fixing a 14 years old '&lt;FIXME&gt;'.
  * packageDescription() again catches errors from encoding
    conversions. This also fixes broken packageVersion() in C locale
    on systems where iconv does not support transliteration.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1681128000">- add patch to build with libcurl &gt;= 8</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1682078400">- CHANGES IN R 4.3.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Calling &amp;&amp; or || with LHS or (if evaluated) RHS of length greater
    than one is now always an error, with a report of the form
    'length = 4' in coercion to 'logical(1)'
    Environment variable _R_CHECK_LENGTH_1_LOGIC2_ no longer has any
    effect.
  NEW FEATURES:
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.10.1.  (This caused some platform-dependent
    changes to package check output.)  And then to the sources from
    LAPACK version 3.11.0 (with changes only to double complex
    subroutines).
  * The included LAPACK sources have been updated to include the four
    Fortran 90 routines rather than their Fortran 77 predecessors.
    This may give some different signs in SVDs or
    eigendecompositions..  (This completes the transition to LAPACK
    3.10.x begun in R 4.2.0.)
  * The LAPACK sources have been updated to version 3.11.0.  (No new
    subroutines have been added, so this almost entirely bug fixes:
    Those fixes do affect some computations with NaNs, including R's
    NA.)
  * The parser now signals _classed_ errors, notably in case of the
    pipe operator |&gt;.  The error object and message now give line and
    column numbers, mostly as proposed and provided by Duncan Murdoch
    in PR#18328.
  * toeplitz() is now generalized for asymmetric cases, with a
    toeplitz2() variant.
  * xy.coords() and xyz.coords() and consequently, e.g., plot(x,y,
    log = "y") now signal a _classed_ warning about negative values
    of y (where log(.) is NA).  Such a warning can be specifically
    suppressed or caught otherwise.
  * Regular expression functions now check more thoroughly whether
    their inputs are valid strings (in their encoding, e.g. in
    UTF-8).
  * The performance of grep(), sub(), gsub() and strsplit() has been
    improved, particularly with perl = TRUE and fixed = TRUE.  Use of
    useBytes = TRUE for performance reasons should no longer be
    needed and is discouraged: it may lead to incorrect results.
  * apropos() gains an argument dot_internals which is used by the
    completion (help(rcompgen)) engine to also see base internals
    such as .POSIXct().
  * Support in tools::Rdiff() for comparing uncompressed PDF files is
    further reduced - see its help page.
  * qqplot(x, y, ...) gains conf.level and conf.args arguments for
    computing and plotting a confidence band for the treatment
    function transforming the distribution of x into the distribution
    of y (Switzer, 1976, _Biometrika_). Contributed by Torsten
    Hothorn.
  * Performance of package_dependencies() has been improved for cases
    when the number of dependencies is large.
  * Strings newly created by gsub(), sub() and strsplit(), when any
    of the inputs is marked as "bytes", are also marked as "bytes".
    This reduces the risk of creating invalid strings and accidental
    substitution of bytes deemed invalid.
  * Support for readLines(encoding = "bytes") has been added to allow
    processing special text files byte-by-byte, without creating
    invalid strings.
  * iconv(from = "") now takes into account any declared encoding of
    the input elements and uses it in preference to the native
    encoding.  This reduces the risk of accidental creation of
    invalid strings, particularly when different elements of the
    input have different encoding (including "bytes").
  * Package repositories in getOption("repos") are now initialized
    from the repositories file when utils is loaded (if not already
    set, e.g., in .Rprofile).  (From a report and patch proposal by
    Gabriel Becker in PR#18405.)
  * compactPDF() gets a verbose option.
  * type.convert() and hence read.table() get new option tryLogical =
    TRUE with back compatible default.  When set to false, converts
    "F" or "T" columns to character.
  * Added new unit prefixes "R" and "Q" for abbreviating
    (unrealistically large) sizes beyond 10^{27} in standard = "SI",
    thanks to Henrik Bengtsson's PR#18435.
  * as.data.frame()'s default method now also works fine with atomic
    objects inheriting from classes such as "roman", "octmode" and
    "hexmode", such fulfilling the wish of PR#18421, by Benjamin
    Feakins.
  * The as.data.frame.vector() utility now errors for wrong-length
    row.names.  It warned for almost six years, with "Will be an
    error!".
  * sessionInfo() now also contains La_version() and reports codepage
    and timezone when relevant, in both print() and toLatex() methods
    which also get new option tzone for displaying timezone
    information when locale = FALSE.
  * New function R_compiled_by() reports the C and Fortran compilers
    used to build R, if known.
  * predict(&lt;lm&gt;, newdata = *) no longer unnecessarily creates an
    offset of all 0s.
  * solve() for complex inputs now uses argument tol and by default
    checks for 'computational singularity' (as it long has done for
    numeric inputs).
  * predict(&lt;rank-deficient lm&gt;, newdata=*) now obeys a new argument
    rankdeficient, with new default "warnif", warning only if there
    are non-estimable cases in newdata.  Other options include
    rankdeficient = "NA", predicting NA for non-estimable newdata
    cases.  This addresses PR#15072 by Russ Lenth and is based on his
    original proposal and discussions in PR#16158 also by David Firth
    and Elin Waring.  Still somewhat experimental.
  * Rgui console implementation now works better with the NVDA screen
    reader when the full blinking cursor is selected.  The underlying
    improvements in cursor handling may help also other screen
    readers on Windows.
  * The drop-field control in GraphApp can now be left with the TAB
    key and all controls can be navigated in the reverse order using
    the Shift+TAB key, improving accessibility of the Rgui
    configuration editor.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now fully accurate
    (instead of to "only" minimally five digits).
  * demo(error.catching) now also shows off withWarnings() and
    tryCatchWEMs().
  * As an experimental feature the placeholder _ can now also be used
    in the rhs of a forward pipe |&gt; expression as the first argument
    in an extraction call, such as _$coef. More generally, it can be
    used as the head of a chain of extractions, such as _$coef[[2]].
  * Spaces in the environment variable used to choose the R session's
    temporary directory (TMPDIR, TMP and TEMP are tried in turn) are
    now fatal.  (On Windows the 'short path' version of the path is
    tried and used if that does not contain a space.)
  * all.equal.numeric() gets a new optional switch giveErr to return
    the numeric error as attribute.  Relatedly,
    stopifnot(all.equal&lt;some&gt;(a, b, ..)) is as "smart" now, as
    stopifnot(all.equal(....)) has been already, thus allowing
    customized all.equal&lt;Some&gt;() wrappers.
  * R on Windows is now able to work with path names longer than 260
    characters when these are enabled in the system (requires at
    least Windows 10 version 1607).  Packages should be updated to
    work with long paths as well, instead of assuming PATH_MAX to be
    the maximum length.  Custom front-ends and applications embedding
    R need to update their manifests if they wish to allow this
    feature.  See
    &lt;https://blog.r-project.org/2023/03/07/path-length-limit-on-windows&gt;
    for more information.
  * 'Object not found' and 'Missing argument' errors now give a more
    accurate error context. Patch provided by Lionel Henry in
    PR#18241.
  * The @ operator is now an S3 generic. Based on contributions by
    Tomasz Kalinowski in PR#18482.
  * New generic chooseOpsMethod() provides a mechanism for objects to
    resolve cases where two suitable methods are found for an Ops
    Group Generic. This supports experimenting with alternative
    object systems. Based on contributions by Tomasz Kalinowski in
    PR#18484.
  * inherits(x, what) now accepts values other than a simple
    character vector for argument what. A new generic, nameOfClass(),
    is called to resolve the class name from what. This supports
    experimenting with alternative object systems. Based on
    contributions by Tomasz Kalinowski in PR#18485.
  * Detection of BLAS/LAPACK in use (sessionInfo()) with FlexiBLAS
    now reports the current backend.
  * The "data.frame" method for subset() now warns about extraneous
    arguments, typically catching the use of = instead of == in the
    subset expression.
  * Calling a:b when numeric a or b is longer than one may now be
    made into an error by setting environment variable
    _R_CHECK_LENGTH_COLON_ to a true value, along the proposal in
    PR#18419 by Henrik Bengtsson.
  * density(x, weights = *) now warns if automatic bandwidth
    selection happens without using weights; new optional warnWbw may
    suppress the warning.  Prompted by Christoph Dalitz' PR#18490 and
    its discussants.
  * rm(list = *) is faster and more readable thanks to Kevin Ushey's
    PR#18492.
  * The plot.lm() function no longer produces a normal Q-Q plot for
    GLMs. Instead it plots a half-normal Q-Q plot of the absolute
    value of the standardized deviance residuals.
  * The print() method for class "summary.glm" no longer shows
    summary statistics for the deviance residuals by default.  Its
    optional argument show.residuals can be used to show them if
    required.
  * The tapply() function now accepts a data frame as its X argument,
    and allows INDEX to be a formula in that case. by.data.frame()
    similarly allows INDICES to be a formula.
  * The performance of df[j] &lt;- value (including for missing j) and
    write.table(df) has been improved for data frames df with a large
    number of columns.  (Thanks to Gabriel Becker's PR#18500,
    PR#18503 and discussants, prompted by a report from Toby Dylan
    Hocking on the R-devel mailing list.)
  * The matrix multiply operator %*% is now an S3 generic, belonging
    to new group generic matrixOps.  From Tomasz Kalinowski's
    contribution in PR#18483.
  * New function array2DF() to convert arrays to data frames,
    particularly useful for the list arrays created by tapply().
  DATES and TIMES:
  * On platforms where (non-UTC) datetimes before 1902 (or before
    1900 as with system functions on recent macOS) are guessed by
    extrapolating time zones from 1902-2037, there is a warning at
    the first use of extrapolation in a session.  (As all time zones
    post 2037 are extrapolation, we do not warn on those.)
  * (Platforms using --with-internal-tzone, including Windows and by
    default macOS). How years are printed in dates or date-times can
    be controlled by environment variable R_PAD_YEARS_BY_ZERO.  The
    default remains to pad to 4 digits by zeroes, but setting value
    no gives no padding (as used by default by glibc).
  * strftime() tries harder to determine the offset for the "%z"
    format, and succeeds on the mainstream R platforms.
  * strftime() has a limit of 2048 bytes on the string produced -
    attempting to exceed this is an error.  (Previously it silently
    truncated at 255 bytes.)
  * sessionInfo() records (and by default prints) the system time
    zone as part of the locale information.  Also, the source
    (system/internal) of the date-time conversion and printing
    functions.
  * Objects of class "POSIXlt" created in this version of R always
    have 11 components: component zone is always set, and component
    gmtoff is set for times in UTC and usually set on the (almost
    all) platforms which have C-level support, otherwise is NA.
  * There are comprehensive validity checks on the structure of
    objects of class "POSIXlt" when converting (including formatting
    and printing).  (This avoids mis-conversions of hand-crafted
    objects.)
  * There is some support for using the native date-time routines on
    macOS: this is only viable on recent versions (e.g. 12.6 and 13)
    and does get wrong some historical changes (before 1900, during
    WWII).  Use of --with-internal-tzone remains the default.
  * as.POSIXct(&lt;numeric&gt;) and as.POSIXlt(.) (without specifying
    origin) now work.  So does as.Date(&lt;numeric&gt;).
  * as.Date.POSIXct(., tz) now treats several tz values, notably
    "GMT" as equivalent to "UTC", proposed and improved by Michael
    Chirico and Joshua Ulrich in PR#17674.
  * Experimental balancePOSIXlt() utility allows using "ragged" and
    or out-of-range "POSIXlt" objects more correctly, e.g., in
    subsetting and subassignments.  Such objects are now documented.
    More experimentally, a "POSIXlt" object may have an attribute
    "balanced" indicating if it is known to be filled or fully
    balanced.
  * Functions axis.Date() and axis.POSIXct() are rewritten to gain
    better default tick locations and better default formats by using
    prettyDate(). Thanks to Swetlana Herbrandt.
  * The mapping of Windows' names for time zones to IANA's 'Olson'
    names has been updated.  When ICU is available (it is by
    default), it is used to get a mapping for the current region set
    in Windows.  This can be overridden by setting environment
    variable TZ to the desired Olson name - see OlsonNames() for
    those currently available.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 16
    and so packages that provide graphics devices should be
    reinstalled.
  * The grDevices and grid packages have new functions for rendering
    typeset glyphs, primarily: grDevices::glyphInfo() and
    grid::grid.glyph().
    Rendering of typeset glyphs is only supported so far on the
    Cairo-based graphics devices and on the pdf() and quartz()
    devices.
  * The defined behaviour for "clear" and "source" compositing
    operators (via grid::grid.group()) has been changed (to align
    better with simple interpretation of original Porter-Duff
    definitions).
  * Support for gradients, patterns, clipping paths, masks, groups,
    compositing operators, and affine transformations has been added
    to the quartz() device.
  INSTALLATION on a UNIX-ALIKE:
  * A system installation of generic LAPACK 3.10.0 or later will be
    preferred to the version in the R sources.
    configure option --with-lapack=no (equivalently --without-lapack)
    forces compilation of the internal LAPACK sources.
    If --with-lapack is not specified, a system liblapack is looked
    for and used if it reports version 3.10.0 or later and does not
    contain BLAS routines.
    Packages using LAPACK will need to be reinstalled if this changes
    to using an external library.
  * On aarch64 Linux platforms using GCC, configure now defaults to
  - fPIC (instead of -fpic), as desired in PR#18326.
  * configure now checks conversion of datetimes between POSIXlt and
    POSIXct around year 2020.  Failure (which has been seen on
    platforms missing tzdata) is fatal.
  * If configure option --with-valgrind-instrumentation is given
    value 1 or 2, option --with-system-valgrind-headers is now the
    default and ignored (with a warning).  It is highly recommended
    that the system headers are installed alongside valgrind: they
    are part of its packaging on some Linux distributions and
    packaged separately (e.g. in the valgrind-devel RPM) on others.
    configure will give a warning if they are not found.
    The system headers will be required in a future release of R to
    build with valgrind instrumentation.
  * libcurl 8.x is now accepted by configure: despite a change in
    major version number it changes neither API nor ABI.
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools43, an update of the Rtools42 toolchain.  It is
    based on gcc 12 and newer versions of MinGW-W64, binutils and
    libraries.  At this time R-devel can still be built using
    Rtools42 without changes, but when R-devel is installed via the
    installer, it will by default look for Rtools43.
  * Old make targets rsync-extsoft and 32-bit ones that are no longer
    needed have been removed.
  * Default builds (including for packages) no longer select C99.
    Thus the C standard used is the default for the compiler, which
    for the toolchain in Rtools43 is C17.  (This is consistent with
    Unix builds.)
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++17 where
    available (which it is on all currently checked platforms): if
    not C++14 or C++11 is used if available otherwise C++ is not
    supported.
  * USE_FC_LEN_T is the default: this uses the correct
    (compiler-dependent) prototypes for Fortran BLAS/LAPACK routines
    called from C/C++, and requires adjustment of many such calls -
    see 'Writing R Extensions' SS6.6.1.
  * There is initial support for C++23 as several compilers are now
    supporting -std=c++23 or -std=c++2b or similar.  As for C++20,
    there no additional configure checks for C++23 features beyond a
    check that the compiler reports a __cplusplus value greater than
    that in the C++20 standard.  C++ feature tests should be used.
  * There is support for a package to indicate the version of the C
    standard which should be used to compile it, and for the
    installing user to specify this.  In most cases R defaults to the
    C compiler's default standard which is C17 (a `bug-fix' of C11) -
    earlier versions of R or compilers may have defaulted to C99.
    Current options are:
    USE_C17 Use a standard that is at most C17.  The intention is to
    allow legacy packages to still be installed when later C
    standards become the default, including packages using new
    keywords as identifiers or with K&amp;R-style function
    declarations.  This will use C17 if available, falling back
    to C11.
    USE_C90 Use the C90 (aka C89) standard.  (As that standard did
    not require compilers to identify that version, all we can
    verify is that the compiler does not claim to be using a
    later standard.  It may accept C99 features - for example
    clang accepts // to make comments.)
    USE_C99 Use the C99 standard. This should be rarely needed - it
    avoids the few new features of C11/C17 which can be useful if
    a package assumes them if C17 is specified and they are not
    implemented.
    USE_C23 Use C23 (or in future, later).  Compiler/library support
    for C23 is still being implemented, but LLVM clang from
    15.0.0 and the upcoming GCC 13 have quite extensive support.
    These can be specified as part of the SystemRequirements field in
    the package's DESCRIPTION file or _via_ options --use-C17 and so
    on of R CMD INSTALL and R CMD SHLIB.
    For further details see "Writing R Extensions" SS1.2.5.
  * (Windows) A src/Makefile.ucrt or src/Makefile.win file is now
    included after R_HOME/etcR_ARCH/Makeconf and so no longer needs
    to include that file itself.  Installation of a package with such
    a file now uses a site Makevars file in the same way as a package
    with a src/Makevars.win file would.
  * configure is now passed crucial variables such as CC and CFLAGS
    in its environment, as many packages were not setting them (as
    documented in 'Writing R Extensions' SS1.2).
    This has most effect where configure is used to compile parts of
    the package - most often by cmake or libtool which obfuscate the
    actual compile commands used.
    Also used for configure.win and configure.ucrt on Windows.
  FORTRAN FLAGS:
  * The flag -fno-optimize-sibling-calls is no longer forced for
    gfortran 7 and later.  It should no longer be needed now using
    'hidden' character-length arguments when calling BLAS/LAPACK
    routines from C/C++ is the default even for packages.  (Unless
    perhaps packages call Fortran code from C/C++ without using R's
    headers and without allowing for these arguments.)
  C-LEVEL FACILITIES:
  * The deprecated S-compatibility macros DOUBLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * The deprecated legacy typedefs of Sint and Sfloat in header R.h
    are no longer defined, and that header no longer includes header
    limits.h from C nor climits from C++.
  * New macro CAD5R() is provided in Rinternals.h and used in a few
    places in the R sources.
  * ALTREP now supports VECSXP vectors. Contributed by Gabor Csardi
    in PR#17620.
  * The Rcomplex definition (in header R_ext/Complex.h) has been
    extended to prevent possible mis-compilation when interfacing
    with Fortran (PR#18430).  The new definition causes compiler
    warnings with static initializers such as {1, 2}, which can be
    changed to {.r=1, .i=2}.
    Using the new definition from C++ depends on compiler extensions
    supporting C features that have not been incorporated into the
    C++ standards but are available in g++ and clang++: this may
    result in C++ compiler warnings but these have been worked around
    for recent versions of common compilers (GCC, Apple/LLVM clang,
    Intel).
    It is intended to change the inclusion of header R_ext/Complex.h
    by other R headers, so C/C++ code files which make use of
    Rcomplex should include that header explicitly.
  UTILITIES:
  * R CMD check does more checking of package .Rd files, warning
    about invalid email addresses and (some) invalid URIs and noting
    empty \item labels in description lists.
  * R CMD check now also reports problems when reading package news
    in md (file NEWS.md) and (optionally) plain text (file NEWS)
    formats.
  * _R_CHECK_TIMINGS_ defaults to a value from the environment even
    for R CMD check --as-cran; this allows for exceptionally fast or
    slow platforms.
    It now applies to checking PDF and HTML versions of the manuals,
    and 'checking CRAN incoming feasibility'.
  * R CMD check can optionally (but included in --as-cran) check
    whether HTML math rendering _via_ KaTeX works for the package .Rd
    files.
  * Non-interactive debugger invocations can be trapped by setting
    the environment variable _R_CHECK_BROWSER_NONINTERACTIVE_ to a
    true value.  This is enabled by R CMD check --as-cran to detect
    the use of leftover browser() statements in the package.
  * The use of sprintf and vsprintf from C/C++ has been deprecated in
    macOS 13 and is a known security risk.  R CMD check now reports
    (on all platforms) if their use is found in compiled code:
    replace by snprintf or vsnprintf respectively. [*NB:* whether
    such calls get compiled into the package is platform-dependent.]
  * Where recorded at installation, R CMD check reports the C and
    Fortran compilers used to build R.
    It reports the OS in use (if known, as given by osVersion) as
    well as that R was built for.
    It notes if a C++ standard was specified which is older than the
    current default: many packages have used C++11 to mean 'not
    C++98' - as C++11 is the minimum supported since R 4.0.0, that
    specification can probably be removed.
  * R CMD INSTALL reports the compilers (and on macOS, the SDK) used,
    and this is copied to the output of R CMD check.
    Where a C++ standard is specified, it is reported.
  * R CMD check's 'checking compilation flags in Makevars' has been
    relaxed to accept the use of flags such as -std=f2008 in
    PKG_FFLAGS.
  * tools::buildVignettes() has a new argument skip, which is used by
    R CMD check to skip (and note) vignettes with unavailable
    \VignetteDepends (PR#18318).
  * New generic .AtNames() added to enable class-specific completions
    after @. The formerly internal function findMatches() is now
    exported, mainly for use in methods for .DollarNames() and
    .AtNames().
  DEPRECATED AND DEFUNCT:
  * default.stringsAsFactors() is defunct.
  * Calling as.data.frame.&lt;class&gt;() directly (for 12 atomic classes)
    is going to be formally deprecated, currently activated by
    setting the environment variable
    _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ to non-empty, which also
    happens in R CMD check --as-cran.
  BUG FIXES:
  * Hashed environments with sizes less than 5 can now grow.
    (Reported to R-devel by Duncan Garmonsway.)
  * as.character(&lt;Rd&gt;, deparse = TRUE) failed to re-escape curly
    braces in LaTeX-like text.  (Reported by Hadley Wickham in
    PR#18324.)
  * library() now passes its lib.loc argument when requiring Depends
    packages; reported (with fix) in PR#18331 by Mikael Jagan.
  * R CMD Stangle: improved message about 'Output' files.
  * head(x, n) and tail(x, n) now signal an error if n is not
    numeric, instead of incidentally "working" sometimes returning
    all of x.  Reported and discussed by Colin Fay, in PR#18357.
  * The "lm" method for summary() now gives the correct F-statistic
    when the model contains an offset.  Reported in PR#18008.
  * C() and `contrasts&lt;-`() now preserve factor level names when
    given a function object (as opposed a function name which did
    preserve names). Reported in PR#17616.
  * c(a = 1, 2)[[]] no longer matches 2 but rather signals a
    _classed_ error.  Reported and analysed by Davis Vaughan in
    PR#18367, a duplicate of PR#18004, by Jan Meis et al.  For
    consistency, NULL[[]] is also erroneous now.  x[[]] &lt;- v gives an
    error of the same class "MissingSubscriptError".
  * The relist() function of utils now supports NULL elements in the
    skeleton (PR#15854).
  * ordered(levels = *) (missing x) now works analogously to factor(,
    ordered=TRUE); reported (with fix) by Achim Zeileis in PR#18389.
  * User-defined Rd macro definitions can now span multiple lines,
    thanks to a patch from Duncan Murdoch. Previously, the Rd parser
    silently ignored everything after the first line.
  * Plain-text help (tools::Rd2txt()) now preserves an initial blank
    line for text following description list items.
  * tools::Rd2HTML() and tools::Rd2latex() no longer split \arguments
    and \value lists at Rd comments.
  * tools::Rd2latex() now correctly handles optional text outside
    \items of argument lists as well as bracketed text at the
    beginning of sections, e.g., \value{[NULL]}.
  * as.character(&lt;POSIXt&gt;) now behaves more in line with the methods
    for atomic vectors such as numbers, and is no longer influenced
    by options().  Ditto for as.character(&lt;Date&gt;).  The
    as.character() method gets arguments digits and OutDec with
    defaults _not_ depending on options().  Use of as.character(*,
    format = .) now warns.
  * Similarly, the as.character.hexmode() and *.octmode() methods
    also behave as good citizen methods and back compatibility option
    keepStr = TRUE.
  * The as.POSIXlt(&lt;POSIXlt&gt;) and as.POSIXct(&lt;POSIXct&gt;) default
    methods now do obey their tz argument, also in this case.
  * as.POSIXlt(&lt;Date&gt;) now does apply a tz (time zone) argument, as
    does as.POSIXct(); partly suggested by Roland Fuss on the R-devel
    mailing list.
  * as.Date.POSIXlt(x) now also works when the list components are of
    unequal length, aka "partially filled" or "ragged".
  * expand.model.frame() looked up variables in the wrong environment
    when applied to models fitted without data.  Reported in
    PR#18414.
  * time() now (also) uses the ts.eps = getOption("ts.eps") argument
    and thus by default rounds values very close to the start (or
    end) of a year.  Based on a proposal by Andre"i V. Kostyrka on
    R-help.
  * Printing of a factanal() result with just one factor and sort =
    TRUE now works regularly, fixing PR#17863 by Timothy Bates,
    thanks to the 'R Contributors' working group.
  * Printing 0-length objects of class "factor", "roman", "hexmode",
    "octmode", "person", "bibentry", or "citation" now prints
    something better, one of which fixes PR#18422, reported by
    Benjamin Feakins.
  * Sys.timezone() queries timedatectl only if systemd is loaded;
    addressing a report by Jan Gorecki in PR#17421.
  * The formula method of cor.test() had scoping problems when
    environment(formula) was not the calling environment; reported
    with a patch proposal by Mao Kobayashi in PR#18439.
  * attach() of an environment with active bindings now preserves the
    active bindings.  Reported by Kevin Ushey in PR#18425.
  * BLAS detection now works also with system-provided libraries not
    available as regular files.  This fixes detection of the
    Accelerate framework on macOS since Big Sur.  Reported by David
    Novgorodsky.
  * download.file() gives a helpful error message in case of an
    invalid download.file.method option, thanks to Colin Fay's report
    in PR#18455.
  * Sporadic crashes of Rterm when using completion have been fixed.
  * Rprof() is now more reliable.  A livelock in thread
    initialization with too short sampling interval has been fixed on
    macOS.  A deadlock in using the C runtime has been fixed on
    Windows.  A potential deadlock has been prevented on Unix.
  * Cursor placement in Rgui now works even after a fixed-width font
    is selected.
  * Mandatory options (options()) are now set on startup so that
    saving and restoring them always works (PR#18372).
  * Package installation, R CMD INSTALL or install.packages(*), now
    parses each of the &lt;pkg&gt;/R/*.R files individually instead of
    first concatenating and then parse()ing the large resulting file.
    This allows parser or syntax errors to be diagnosed with correct
    file names and line numbers, thanks to Simon Dedman's report and
    Bill Dunlap's patch in PR#17859.
    This _does_ require syntactically self contained R source files
    now, fixing another inadvertent bug.
  * predict.lm(&lt;model with offset&gt;) now finds the offset in the
    correct environment, thanks to Andr'e Gillibert's report and patch
    in PR#18456.
  * getInitial(&lt;formula&gt;) now finds the selfStart model in the
    correct environment.  (Reported by Ivan Krylov in PR#18368.)
  * Fix for possible segfault when using recently-added graphics
    features, such as gradients, clipping paths, masks, and groups
    with pdf(file=NULL).
  * class(m) &lt;- class(m) no longer changes a matrix m by adding a
    class _attribute_.
  * packageDate(pkg) now only warns once if there is no pkg.
  * When ts() creates a multivariate time series, "mts", it also
    inherits from "array" now, and is.mts() is documented _and_
    stricter.
  * Rd2txt() now preserves line breaks of \verb Rd content and from
    duplicated \cr.  The former also fixes the rendering of verbatim
    output from Rd \Sexpr in plain-text help.
  * uniroot(f, interval) should no longer wrongly converge _outside_
    the interval in some cases where abs(f(x)) == Inf for an x at the
    interval boundary, thanks to posts by Ben Bolker and Serguei
    Sokol on R-devel.
  * Vectorized alpha handling in palette functions such as in gray(),
    rainbow(), or hcl.colors() works correctly now, thanks to Achim
    Zeileis' report and patch in PR#18476.
  * Formatting and print()ing of bibentry objects has dropped the
    deprecated citation.bibtex.max argument, such that the bibtex
    argument's default for print.bibentry() depends directly on the
    citation.bibtex.max option, whereas in format.bibentry() the
    option no longer applies.
  * Attempting to use a character string naming a foreign function
    entry point in a foreign function call in a package will now
    signal an error if the packages has called R_forceSymbols to
    specify that symbols must be used.
  * An error in table() could permanently set options(warn=2)
    promoting all subsequent warnings to errors.
  * The sigma() function gave misleading results for binary GLMs.  A
    new method for objects of class "glm" returns the square root of
    the estimate of the dispersion parameter using the same
    calculation as summary.glm().
  * bs() and ns() in the (typical) case of automatic knot
    construction, when some of the supposedly inner knots coincide
    with boundary knots, now moves them inside (with a warning),
    building on PR#18442 by Ben Bolker.
  * R CMD on Windows now skips the site profile with --no-site-file
    and --vanilla even when R_PROFILE is set (PR#18512, from Kevin
    Ushey).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1686916800">- CHANGES IN R 4.3.1:
  C-LEVEL FACILITIES:
  * The C-level API version of R's integrate(), Rdqags() in Applic.h,
    now returns the correct number of integrand evaluations neval,
    fixing PR#18515 reported and diagnosed by Stephen Wade.
  * The C prototypes for LAPACK calls dspgv and dtptrs in
    R_exts/Lapack.h had one too many and one too few character length
    arguments - but this has not caused any known issues. To get the
    corrected prototypes, include
    [#]include &lt;Rconfig.h&gt; // for PR18534fixed
    [#]ifdef PR18534fixed
    [#] define usePR18534fix 1
    [#]endif
    [#]include &lt;R_exts/Lapack.h&gt;
    in your C/C++ code (PR#18534).
  INSTALLATION:
  * Many of the checks of esoteric Internet operations and those
    using unreliable external sites have been moved to a new target
    that is not run by default and primarily intended for the core
    developers.  To run them use
    cd tests; make test-Internet-dev
  BUG FIXES:
  * .S3methods(), typically called from methods(), again marks
    methods from package base as visible.
    Also, the visibility of non-base methods is again determined by
    the method's presence in search().
  * tools::Rdiff() is now more robust against invalid strings, fixing
    installation tests on Windows without Rtools installed
    (PR#18530).
  * Fix (new) bug in hcl.colors(2, *), by Achim Zeileis (PR#18523).
  * head(., &lt;illegal&gt;) and tail(..) now produce more useful "Error in
    ...." error messages, fixing PR#18362.
  * Package code syntax on Windows is checked in UTF-8 when UTF-8 is
    the native encoding.
  * na.contiguous(x) now also returns the first run, when it is at
    the beginning and there is a later one of the same length;
    reported to R-devel, including a fix, by Georgi Boshnakov.
    Further, by default, it modifies only an existing attr(*,"tsp")
    but otherwise no longer sets one.
  * chol(&lt;not pos.def&gt;, pivot = &lt;T|F&gt;) now gives a correct error or
    warning message (depending on pivot), thanks to Mikael Jagan's
    (PR#18541).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1699012800">- CHANGES IN R 4.3.2:
  NEW FEATURES:
  * The default initialization of the "repos" option from the
    repositories file at startup can be skipped by setting
    environment variable R_REPOSITORIES to NULL such that
    getOption("repos") is empty if not set elsewhere.
  * qr.X() is now an implicit S4 generic in methods.
  * iconv(to = "ASCII//TRANSLIT") is emulated using substitution on
    platforms which do not support it (notably Alpine Linux).  This
    should give a human-readable conversion in ASCII on all platforms
    (rather than NA_character_).
  * trans3d() gains options continuous and verbose addressing the
    problem of possible "wrap around" when projecting too long
    curves, as reported by Achim Zeileis in PR#18537.
  * tools::showNonASCII() has been rewritten to work better on macOS
    14 (which has a changed implementation of iconv()).
  * tiff(type = "quartz") (the default on macOS) now warns if
    compression is specified: it continues to be ignored.
  INSTALLATION on a UNIX-ALIKE:
  * There is some support for building with Intel's LLVM-based
    compilers on x86_64 Linux, such as (C) icx, (C++) ipcx and
    (Fortran) ifx from oneAPI 2023.x.y.
  * There is support for using LLVM's flang-new as the Fortran
    compiler from LLVM 16.0.x (preferably 17.0.0 or later).
  UTILITIES:
  * R CMD check reports the use of the Fortran 90 random number
    generator RANDOM_NUMBER() and the subroutines to initialize it.
    'Writing R Extensions' has example code to use R's RNGs from
    Fortran.
  BUG FIXES:
  * substr(x, n, L) &lt;- cc now works (more) correctly for multibyte
    UTF-8 strings x when L &gt; nchar(x), thanks to a report and patch
    by 'Architect 95'.
  * contrib.url(character()) now returns 0-length character() as
    documented, which also avoids spurious warnings from
    available.packages() et al. in the edge case of an empty vector
    of repository URLs.
  * readChar(., 4e8) no longer fails, thanks to Kodi Arfer's report
    (PR#18557).
  * lapply(&lt;list&gt;, as.data.frame) no longer warns falsely for some
    base vector components.
  * Communication between parent and child processes in the multicore
    part of parallel could fail on platforms that do not support an
    arbitrarily large payload in system functions read()/write() on
    pipes (seen on macOS where a restriction to INT_MAX bytes is
    documented, without doing a partial read unlike Linux). The
    payload is now split into 1Gb chunks to avoid that problem.
    (PR#18571)
  * qqplot(x,y, conf.level=.) gives better confidence bounds when
    length(x) != length(y), thanks to Alexander Ploner's report and
    patch proposal (PR#18557).
  * norm(&lt;0-length&gt;, "2") now gives zero instead of an error, as all
    the other norm types, thanks to Mikael Jagan's PR#18542.
  * Build-stage Rd macros \packageAuthor and \packageMaintainer now
    process Authors@R, fixing NA results when the package DESCRIPTION
    omits Author and Maintainer fields.
  * Formatting and printing complex numbers could give things like
    0.1683-0i because of rounding error: -0i is now replaced by +0i.
  * postscript() refused to accept a title comment containing the
    letter "W" (PR#18599).
  * isoreg(c(1,Inf)) signals an error instead of segfaulting, fixing
    PR#18603.
  * tiff(type = "Xlib") was only outputting the last page of
    multi-page plots.
  * tools::latexToUtf8() again knows about \~{n} and other letters
    with tilde, fixing a regression in R 4.3.0, and about \^{i} as an
    alternative to \^{\i} (similarly with other accents).
    Furthermore, LaTeX codes for accented I letters are now correctly
    converted, also fixing related mistakes in
    tools::encoded_text_to_latex().
  * tar(*, tar = "internal") no longer creates out-of-spec tar files
    in the very rare case of user or group names longer than 32
    bytes, fixing PR#17871 with thanks to Ivan Krylov.
  * When using the "internal" timezone datetime code, adding a
    fraction of a second no longer adds one second, fixing PR#16856
    from a patch by Ivan Krylov.
  * tools::checkRd() no longer produces spurious notes about
    "unnecessary braces" from multi-line Rd results of \Sexpr macros.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1709208000">- CHANGES IN R 4.3.3:
  NEW FEATURES:
  * iconv() now fixes up variant encoding names such as "utf8"
    case-insensitively.
  DEPRECATED AND DEFUNCT:
  * The legacy encoding = "MacRoman" is deprecated in pdf() and
    postscript(): support was incomplete in earlier versions of R.
  BUG FIXES:
  * Arguments are now properly forwarded to methods on S4 generics
    with ... in the middle of their formal arguments. This was broken
    for the case when a method introduced an argument but did not
    include ... in its own formals. Thanks to Herv'e Pag`es for the
    report PR#18538.
  * Some invalid file arguments to pictex(), postscript() and xfig()
    opened a file called NA rather than throw an error.  These
    included postscript(NULL) (which some people expected to work
    like pdf(NULL)).
  * Passing filename = NA to svg(), cairo_pdf(), cairo_ps() or the
    Cairo-based bitmap devices opened a file called NA: it now throws
    an error.
  * quartz(file = NA) opened a file called NA, including when used as
    a Quartz-based bitmap device.  It now gives an error.
  * rank(&lt;long vector&gt;) now works, fixing PR#18617, thanks to Ilia
    Kats.
  * seq.int() did not adequately check its length.out argument.
  * match(&lt;POSIXct&gt;, .) is correct again for differing time zones,
    ditto for "POSIXlt", fixing PR#18618 reported by Bastian Klein.
  * drop.terms(*, dropx = &lt;0-length&gt;) now works, fixing PR#18563 as
    proposed by Mikael Jagan.
  * drop.terms(*) keeps + offset(.) terms when it should, PR#18565,
    and drop.terms() no longer makes up a response, PR#18566, fixing
    both bugs thanks to Mikael Jagan.
  * getS3method("t", "test") no longer finds the t.test() function,
    fixing PR#18627.
  * pdf() and postscript() support for the documented Adobe encodings
    "Greek" and "Cyrilllic" was missing (although the corresponding
    Windows' codepages could be used).
  * Computations of glyph metric information for pdf() and
    postscript() did not take into account that transliteration could
    replace one character by two or more (only seen on macOS 14) and
    typically warned that the information was not known.
  * rank(x) no longer overflows during integer addition, when
    computing rank average for largish but not-yet long vector x,
    fixing PR#18630, thanks to Ilia Kats.
  * list.files() on Windows now returns also files with names longer
    that 260 bytes (the Windows limit is 260 characters).
    Previously, some file names particularly with 'East Asian'
    characters were omitted.
  * cov2cor(&lt;0 x 0&gt;) now works, fixing PR#18423 thanks to Mikael
    Jagan and Elin Waring.
  * cov2cor(&lt;negative diagonal&gt;) and similar now give one warning
    instead of two, with better wording, fixing PR#18424 thanks to
    Mikael Jagan.
  * tools:: startDynamicHelp() now ensures port is in proper range,
    fixing PR#18645.
  * pbeta(x, a,b) is correct now for x=0 or 1 in the boundary cases
    where a or b or both are 0, fixing PR#18672 thanks to Michael
    Fay.
  * pmatch(x, table) for large table, also called for data frame row
    selection, dfrm[nm, ], is now interruptible, fixing PR#18656.
  * predict(&lt;rank-deficient lm&gt;, newdata=*) fix computing of nbasis,
    see Russ Lenth's comment 29 in PR#16158.
  * Added a work-around for a bug in macOS 14.3.1 and higher which
    prevents R plots in the Quartz Cocoa device from updating on
    screen.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1713960000">- CHANGES IN R 4.4.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Startup banners, R --version, sessionInfo() and R CMD check no
    longer report (64-bit) as part of the platform as this is almost
    universal - the increasingly rare 32-bit platforms will still
    report (32-bit).
    On Windows, ditto for window titles.
  * is.atomic(NULL) now returns FALSE, as NULL is not an atomic
    vector.  Strict back-compatibility would replace is.atomic(foo)
    by (is.null(foo) || is.atomic(foo)) but should happen only
    sparingly.
  NEW FEATURES:
  * The confint() methods for "glm" and "nls" objects have been
    copied to the stats package.  Previously, they were stubs which
    called versions in package MASS. The MASS namespace is no longer
    loaded if you invoke (say) confint(glmfit).  Further, the "glm"
    method for profile() and the plot() and pairs() methods for class
    "profile" have been copied from MASS to stats.  (profile.nls()
    and plot.profile.nls() were already in stats.)
  * The confint() and profile methods for "glm" objects have gained a
    possibility to do profiling based on the Rao Score statistic in
    addition to the default Likelihood Ratio. This is controlled by a
    new test = argument.
  * The pairs() method for "profile" objects has been extended with a
    which = argument to allow plotting only a subset of the
    parameters.
  * The "glm" method for anova() computes test statistics and
    p-values by default, using a chi-squared test or an F test
    depending on whether the dispersion is fixed or free.  Test
    statistics can be suppressed by giving argument test a false
    logical value.
  * In setRepositories() the repositories can be set using their
    names via name = instead of index ind =.
  * methods() and .S3methods() gain a all.names option for the (rare)
    case where functions starting with a . should be included.
  * Serializations can now be interrupted (e.g., by Ctrl-C on a
    Unix-alike) if they take too long, e.g., from save.image(),
    thanks to suggestions by Ivan Krylov and others on R-devel.
  * New startup option --max-connections to set the maximum number of
    simultaneous connections for the session.  Defaults to 128 as
    before: allowed values up to 4096 (but resource limits may in
    practice restrict to smaller values).
  * R on Windows (since Windows 10 2004) now uses the new Segment
    Heap allocator. This may improve performance of some
    memory-intensive applications.
  * When R packages are built, typically by R CMD build &lt;pkg&gt;, the
    new --user=&lt;build_user&gt; option overrides the (internally
    determined) user name, currently Sys.info()["user"] or LOGNAME.
    This is a (modified) fulfillment of Will Landau's suggestion in
    PR#17530.
  * tools::testInstalledBasic() gets new optional arguments outDir
    and testSrcdir, e.g., allowing to use it in a &lt;builddir&gt; !=
    &lt;srcdir&gt; setup, and in standard "binary" Windows installation
  * if* a source tests/ folder is present.
  * range(&lt;DT_with_Inf&gt;, finite = TRUE) now work for objects of class
    "Date", "POSIXct", and "POSIXlt" with infinite entries,
    analogously to range.default(), as proposed by Davis Vaughan on
    R-devel.  Other range()-methods can make use of new function
    .rangeNum().
  * New .internalGenerics object complementing .S3PrimitiveGenerics,
    for documentation and low-level book-keeping.
  * grid() now invisibly returns the x- and y- coordinates at which
    the grid-lines were drawn.
  * norm(., type) now also works for complex matrices.
  * kappa(., exact = TRUE, norm = *) now works for all norms and also
    for complex matrices.  In symmetric / triangular cases, the new
    argument uplo = "U" | "L" allows the upper or lower triangular
    part to be specified.
  * memDecompress(type = "unknown") recognizes compression in the
    default 'zlib' format as used by memCompress(type = "gzip").
  * memCompress() and memDecompress() will use the libdeflate library
    (&lt;https://github.com/ebiggers/libdeflate&gt;) if installed.  This
    uses the same type of compression for type = "gzip" but is 1.5-2x
    faster than the system libz library on some common platforms: the
    speed-up may depend on the library version.
  * diff() for objects of class "Date", "POSIXct", and "POSIXlt"
    accepts a units argument passed via ....
  * Dynamic help now does a much better job of rendering package
    DESCRIPTION metadata.
  * Rprof() gains an event argument and support for elapsed (real)
    time profiling on Unix (PR#18076).
  * filled.contour() gains a key.border argument.
  * tools::update_pkg_po() gets arguments pot_make and mo_make for
    _not_ re-making the corresponding files, and additionally a
    verbose argument.
  * Hexadecimal string colour specifications are now accepted in
    short form, so, for example, we can use "#123", which is
    equivalent to "#112233".
    Thanks to MikeFC for the original idea and Ella Kaye, Malcolm
    Barrett, George Stagg, and Hanne Oberman for the patch.
  * Plain-text help shows \var markup by angle brackets.
  * The new experimental primitive function declare() is intended to
    eventually allow information about R code to be communicated to
    the interpreter, compiler, and code analysis tools. The syntax
    for declarations is still being developed.
  * Functions psmirnov(), qsmirnov() and rsmirnov() in package stats
    have had argument two.sided renamed to alternative, to take into
    account that the permutation distributions of the one-sided
    statistics can be different in the case of ties.  Consequence of
    PR#18582.
  * sort() is now an implicit S4 generic in methods.
  * Formatting and printing, format(z), print(z), of complex vectors
    z no longer zap relatively small real or imaginary parts to zero,
    fixing PR#16752.  This is an API change, as it was documented
    previously to round real and imaginary parts together on purpose,
    producing nicer looking output.  As mentioned, e.g. in the PR,
    this change is compatible with many other "R-like" programming
    environments.
    We have simplified the internal code and now basically format the
    real and imaginary parts independently of each other.
  * New experimental functions Tailcall() and Exec() to support
    writing stack-space-efficient recursive functions.
  * Where characters are attempted to be plotted by pdf(),
    postscript() and xfig() which are not in the selected 8-bit
    character set (most often Latin-1) and the R session is using a
    UTF-8 locale, the warning messages will show the UTF-8 character
    rather than its bytes and one dot will be substituted per
    character rather than per byte.  (Platforms whose iconv() does
    transliteration silently plot the transliteration.)
    In a UTF-8 locale some transliterations are now done with a
    warning (e.g., dashes and Unicode minus to hyphen, ligatures are
    expanded, permille (‰) is replaced by o/oo), although the OS may
    have got there first.  These are warnings as they will continue
    to be replaced by dots in earlier versions of R.
  * The matrix multiplication functions crossprod() and tcrossprod()
    are now also primitive and S3 generic, as %*% had become in R
    4.3.0.
  * source() and example() have a new optional argument catch.aborts
    which allows continued evaluation of the R code after an error.
  * The non-Quartz tiff() devices allow additional types of
    compression if supported by the platform's libtiff library.
  * The list of base and recommended package names is now provided by
    tools::standard_package_names().
  * cairo_pdf() and cairo_ps() default to onefile = TRUE to closer
    match pdf() and postscript().
  * New option catch.script.errors provides a documented way to catch
    errors and then continue in non-interactive use.
  * L %||% R newly in base is an expressive idiom for the phrases
    if(!is.null(L)) L else R or if(is.null(L)) R else L.
  * The return value from warnings() now always inherits from
    "warnings" as documented, now also in the case of no warnings
    where it previously returned NULL.
  * as.complex("1i") now returns 0 + 1i instead of NA with a warning.
  * z &lt;- c(NA, 1i) now keeps the imaginary part Im(z[1]) == 0, no
    longer coercing to NA_complex_.  Similarly, cumsum(z) correctly
    sums real and imaginary parts separately, i.e., without
    "crosstalk" in case of NAs.
  * On Alpine Linux iconv() now maps "latin2", "latin-2", "latin9"
    and "latin-9" to encoding names the OS knows about
    (case-insensitively).
  * iconv(sub = "Unicode") now always zero-pads to four (hex) digits,
    rather than to 4 or 8.  (This seems to have become the convention
    once Unicode restricted the number of Unicode points to 2^21 - 1
    and so will never need more than 6 digits.)
  * NCOL(NULL) now returns 0 instead of 1, for consistency with
    cbind().
  * The information for the Euro glyph missing from the Adobe .afm
    files for the Courier, Helvetica and Times families has been
    copied from their URW equivalents - this will improve vertical
    centring in the pdf() and postscript() devices.
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.12.0.  The changes are almost entirely cosmetic.
  * The included LAPACK sources have been updated to version 3.12.0
    and some further double-complex routines added.
  * There are new font families for the 2014--5 URW 2.0 fonts (see
    ?pdf) which are included in recent versions of Ghostscript.
    These have font widths for most Greek glyphs and a few others
    which were missing from the original versions (whose font
    families remain available for reproducibility, although
    Ghostscript-based viewers will render using the 2.0 versions).
  * Improve the large-n efficiency of as.matrix(&lt;dist&gt;), thanks an R
    contributors effort, notably by Tim Taylor and Heather Turner,
    see PR#18660.
  * The default and numeric methods of all.equal() get a check.class
    option.
  * zapsmall() gets new optional arguments, function mFUN and min.d,
    for extra flexibility; fulfills a wish in PR#18199.  Also, it is
    now an implicit S4 generic in package methods.
  * The Rd filter for aspell() gains an ignore argument.
  * New generic function sort_by(), primarily useful for the
    data.frame method which can be used to sort rows of a data frame
    by one or more columns.
  * The icence headers for the RPC code in src/extra/xdr have been
    updated to use the GPL-compatible licence published by Oracle
    America in 2010.
  * New function pkg2HTML() in tools to create single-page HTML
    reference manuals for R packages.
  * The byte code evaluator now uses less C stack space for recursive
    calls to byte-compiled functions. It also makes more of an effort
    to avoid allocations for scalar return values.
  * New completion option backtick (disabled by default) allows
    non-syntactic completions to be wrapped in backquotes. This is
    currently only useful for Jupyter notebooks via the IRkernel
    package, and may cause problems for other backends.
  INSTALLATION:
  * The parser has been updated to work with bison 3.8.2, which is
    now used for the pre-generated parsers in gram.c, file.c, and
    gramRd.c. A few parser error messages have changed, which may
    affect code that relies on exact messages.
  INSTALLATION on a UNIX-ALIKE:
  * System valgrind headers are now required to use configure option
  - -with-valgrind-instrumentation with value 1 or 2.
  * configure will warn if it encounters a 32-bit build, as that is
    nowadays almost untested.
  * Environment variable R_SYSTEM_ABI is no longer used and so no
    longer recorded in etc/Renviron (it was not on Windows and was
    only ever used when preparing package tools).
  * If the libdeflate library and headers are available, libdeflate
    rather than libz is used to (de)compress R objects in lazy-load
    databases.  Typically tasks spend up to 5% of their time on such
    operations, although creating lazy-data databases is one of the
    exceptions.
    This can be suppressed if the library is available by the
    configure option --without-libdeflate-compression.
  * configure option --enable-lto=check has not worked reliably since
    2019 and has been removed.
  * The minimum autoconf requirement for a maintainer build has been
    increased to autoconf 2.71.
    It is intended to increase this to 2.72 for R 4.5.0: the
    distributed configure file was generated using 2.72.
  * The minimum version requirement for an external LAPACK has been
    reduced to 3.9.0.
  * No default C++ compiler is set if no C++17 compiler is detected:
    there is no longer an automatic fallback to C++14 or C++11.
    Compilers from the last five years should have sufficient
    support: for others macros CXX and CXXSTD can be set in file
    config.site to provide a fallback if needed.
    The Objective-C++ compiler now by default uses the standard
    selected by R for C++ (currently C++17) rather than the default
    standard for the C++ compiler (which on macOS is still C++98).
  INSTALLATION on macOS:
  * A new configure option --with-newAccelerate makes use of Apple's
    'new' BLAS / LAPACK interfaces in their Accelerate framework.
    Those interfaces are only available in macOS 13.3 or later, and
    building requires SDK 13.3 or later (from the Command Line Tools
    or Xcode 14.3 or later).
    By default the option uses new Accelerate for BLAS calls: to also
    use it for LAPACK use option --with-newAccelerate=lapack.  The
    later interfaces provide LAPACK 3.9.1 rather than 3.2.1: 3.9.1 is
    from 2021-04 and does not include the improved algorithms
    introduced in LAPACK 3.10.0 (including for BLAS calls).
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools44, an update of the Rtools43 toolchain.  It is
    based on GCC 13 and newer versions of MinGW-W64, binutils and
    libraries (targeting 64-bit Intel CPUs).  R-devel can no longer
    be built using Rtools43 without changes.
  * Rtools44 has experimental support for 64-bit ARM (aarch64) CPUs
    _via_ the LLVM 17 toolchain using lld, clang/flang-new and
    libc++.
  UTILITIES:
  * R CMD check notes when S4-style exports are used without
    declaring a strong dependence on package methods.
  * tools::checkRd() (used by R CMD check) detects more problems with
    \Sexpr-based dynamic content, including bad nesting of \Sexprs
    and invalid arguments.
  * tools::checkRd() now reports Rd titles and section names ending
    in a period; this is ignored by R CMD check unless environment
    variable _R_CHECK_RD_CHECKRD_MINLEVEL_ is set to -5 or smaller.
  * R CMD check now notes Rd files without an \alias, as long
    documented in 'Writing R Extensions' §1.3.1.  The check for a
    missing \description has been moved from tools::checkRd() to
    tools::checkRdContents().
  * R CMD check now visits inst/NEWS.Rd and OS-specific man
    subdirectories when checking Rd files.
  * tools::checkDocFiles() and tools::checkRdContents() now also
    check internal Rd files by default, but "specially" (ignoring
    missing documentation of arguments).
  * R CMD Rdiff gets option --useEx.
  * R CMD check now warns on non-portable uses of Fortran KIND such
    as INTEGER(KIND=4) and REAL(KIND=8).
    To see the failing lines set environment variable
    _R_CHECK_FORTRAN_KIND_DETAILS_ to a true value.
  * When checking Rd files, R CMD check now notes some of the "lost
    braces" that tools::checkRd() finds.  Typical problems are Rd
    macros missing the initial backslash (e.g., code{...}), in-text
    set notation (e.g., {1, 2}, where the braces need escaping), and
    \itemize lists with \describe-style entries of the form
    \item{label}{description}.
  * R CMD INSTALL (and hence check) will compile C++ code with
  - DR_NO_REMAP if environment variable _R_CXX_USE_NO_REMAP_ is set
    to a true value.  It is planned that this will in future become
    the default for compiling C++.
  * The new built-in Rd macro \dontdiff{} can be used to mark example
    code whose output should be ignored when comparing check output
    to reference output (tests/Examples/&lt;pkg&gt;-Ex.Rout.save).  The
    \dontdiff tag, like \donttest, is _not_ shown on the rendered
    help page, so provides a clean alternative to ##
    IGNORE_RDIFF_(BEGIN|END) comments.
  * R CMD build when there is no NAMESPACE, now uses the recommended
    exportPattern("^[^.]"), instead of exporting everything.
  * R CMD check now warns about non-ASCII characters in the NAMESPACE
    file (in addition to R files). Such packages are not portable and
    may fail to install on some platforms.
  C-LEVEL FACILITIES:
  * Headers R_ext/Applic.h and R-ext/Linpack.h used to include
    R_ext/BLAS.h although this was undocumented and unneeded by their
    documented entry points.  They no longer do so.
  * New function R_missing(), factored out from do_missing(), used to
    fix PR#18579.
  * SEXP type S4SXP has been renamed to OBJSXP to support
    experimenting with alternative object systems.  The S4SXP value
    can still be used in C code but is now deprecated.  Based on
    contributions from the R Consortium's Object-Oriented Programming
    Working Group.
  * New function pow1p(x,y) for accurate (1+x)^y.
  * mkCharLenCE was incorrectly documented to take a size_t length
    but was implemented with int (and character strings in R are
    limited to 2^31 - 1 bytes).
  DEPRECATED AND DEFUNCT:
  * data() no longer handles zipped data from long-defunct (since R
    2.13.0) --use-zip-data installations.
  * The legacy graphics devices pictex() and xfig() are now
    deprecated.  They do not support recent graphics enhancements and
    their font handling is rudimentary. The intention is to retain
    them for historical interest as long as they remain somewhat
    functional.
  * Support for encoding = "MacRoman" has been removed from the pdf()
    and postscript() devices - this was a legacy encoding supporting
    classic macOS up to 2001 and no longer has universal libiconv
    support.
  * is.R() is deprecated as no other S dialect is known to be in use
    (and this could only identify historical dialects, not future
    ones).
    Further information on calls can be obtained by setting the
    environment variable _R_DEPRECATED_IS_R_ to error which turns the
    deprecation warning into an error and so by default gives a
    traceback.  (This is done by R CMD check --as-cran.)
  * UseMethod() no longer forwards local variables assigned in the
    generic function into method call environments before evaluating
    the method body. This makes method calls behave more like
    standard function calls and makes method code easier to analyze
    correctly.
  * The twelve as.data.frame.&lt;class&gt;() methods which were deprecated
    only via _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ and in R CMD
    check --as-cran are formally deprecated now in favour of calling
    as.data.frame() or as.data.frame.vector().  The deprecation
    "check" now works also when as.data.frame() is S4 generic thanks
    to Ivan Krylov.
  * The default method for the directional comparison operators &lt;, &gt;,
    &lt;=, and &gt;= now signals an error when one of the operands is a
    language object, i.e. a symbol or a call.
  * For terms.formula(), deprecate abb and neg.out arguments
    _formally_ in addition to just documenting it.
  BUG FIXES:
  * The methods package is more robust to not being attached to the
    search path.  More work needs to be done.
  * pairwise.t.test() misbehaved when subgroups had 0 DF for
    variance, even with pool.sd = TRUE.  (PR#18594 by Jack Berry).
  * Probability distribution functions [dpq]&lt;distrib&gt;(x, *), but also
    bessel[IKJY](x, .) now consistently preserve attributes(x) when
    length(x) == 0, e.g., for a 2 x 0 matrix, thanks to Karolis
    Koncevičius' report PR#18509.
  * Group "Summary" computations such as sum(1:3, 4, na.rm = 5, NA,
    7, na.rm = LL) now give an error instead of either 17 or NN for
    LL true or false, as proposed by Ivan Krylov on the R-devel
    mailing list.  (This also means it is now an error to specify
    na.rm more than once.)
  * as.complex(x) now returns complex(real = x, imaginary = 0) for
    _all_ numerical and logical x, notably also for NA or
    NA_integer_.
  * Directories are now omitted by file.copy(, recursive = FALSE) and
    in file.append() (PR#17337).
  * gsub() and sub() are now more robust to integer overflow when
    reporting errors caused by too large input strings (PR#18346).
  * Top-level handlers are now more robust to attempts to remove a
    handler whilst handlers are running (PR#18508).
  * The handling of Alt+F4 in dialogs created on Windows using
    GraphApp has been fixed (PR#13870).
  * density() more consistently computes grid values for the
    FFT-based convolution, following Robert Schlicht's analysis and
    proposal in PR#18337, correcting density values typically by a
    factor of about 0.999.  Argument old.coords = TRUE provides back
    compatibility.
  * palette.colors() gains a name argument that defaults to FALSE
    controlling whether the vector of colours that is returned has
    names (where possible).  PR#18529.
  * tools::xgettext() no longer extracts the (non-translatable) class
    names from warningCondition and errorCondition calls.
  * S3method(&lt;gen&gt;, &lt;class&gt;, &lt;func&gt;) in the NAMESPACE file now works
    (again) when &lt;func&gt; is visible from the namespace, e.g.,
    imported, or in base.
  * getParseData(f) now also works for a function defined in the
    first of several &lt;pkg&gt;/R/*.R source files, thanks to Kirill
    Müller's report and Duncan Murdoch's patch in PR#16756.
  * Rd \Sexpr macros with nested #ifdef conditionals were not
    processed.
  * A non-blocking connection with non-default encoding (such as a
    socket) now correctly returns from readLines() after new data has
    arrived also when its EOF had been reached previously.  Thanks to
    Peter Meilstrup's report on R-devel and Ivan Krylov's report and
    patch proposal in PR#18555.
  * tools::checkRdContents() failed to detect empty argument
    descriptions when they spanned multiple lines, including those
    generated by prompt().  These cases are now noted by R CMD check.
  * Plain-text help no longer outputs spurious colons in the
    arguments list (for multi-line \item labels in the Rd source).
  * kappa() and rcond() work correctly in more cases; kappa(., norm =
    "2") now warns that it computes the 1-norm with (default) exact =
    FALSE; prompted by Mikael Jagan's quite comprehensive PR#18543.
  * Rd skeletons generated by prompt() or promptData() now use a
    dummy title (so R CMD build works).  tools::checkRdContents() has
    been updated to detect such template leftovers, including from
    promptPackage().
  * When S4 method dispatch fails because no method was found, the
    error message now includes the signature argument names; thanks
    to Michael Chirico's proposal on the R-devel list.
  * withAutoprint({ .. }) now preserves srcrefs previously lost,
    thanks to Andrew Simmons' report plus fix in PR#18572.
  * transform.data.frame() no longer adjusts names; in particular,
    untransformed variables are kept as-is, including those with
    syntactically invalid names (PR#17890).
  * The keep.source option for Rd \Sexpr blocks is no longer ignored.
  * The formula methods for t.test() and wilcox.test() now catch when
    paired is passed, addressing PR#14359; use Pair(x1, x2) ~ 1 for a
    paired test.
  * The level reported in the browser prompt was often too large. It
    now shows the number of browser contexts on the stack.
  * For cbind() and rbind(), the optional deparse.level argument is
    now properly passed to methods, thanks to Mikael Jagan's PR#18579
    and comments there.
  * Some error and warning messages for large ('long vector')
    matrix(v, nr, nc) and dim(m) &lt;- d are now correct about sizes,
    using long long formatting, fixing PR#18612 (and more) reported
    by Mikael Jagan.
  * readChar(useBytes = TRUE) now terminates strings even when the
    underlying connection uses extra spaces in the input buffer.
    This fixes problems with extra garbage seen with gzip
    connections, PR#18605.
  * Named capture in PCRE regular expressions now works also with
    more than 127 named groups (PR#18588).
  * Datetime functions are now robust against long jumps when dealing
    with internal time zone changes.  This avoids confusing warnings
    about an invalid time zone, previously triggered by turning
    warnings into errors or handling them via tryCatch (PR#17966,
    PR#17780).
  * Datetime functions now restore even an empty TZ environment
    variable after internal time zone changes (PR#17724).  This makes
    results of datetime functions with this (typically unintentional)
    setting more predictable.
  * drop.terms(*) now drops response as by default, keep.response =
    FALSE, fixing PR#18564 thanks to Mikael Jagan.
  * dummy.coef(.) now also works for lm()-models with character
    categorical predictor variables rather than factor ones, fixing
    PR#18635 reported by Jinsong Zhao.
  * formals(f) &lt;- formals(f) now also works for a function w/o
    arguments and atomic _constant_ body(f).
  * Correct as.function(&lt;invalid list&gt;, .)'s error message.
  * removeSource() is yet more thorough in finding and removing
    "srcref" and the other source references from parsed R language
    chunks, fixing PR#18638 thanks to Andrew Simmons.
  * dgeom() is more accurate now, notably when its result is very
    small, fixing PR#18642 thanks to the proposal of Morten Welinder,
    also improving other instances where C level binom_raw(x, n, ..)
    has x == 0 or x== n.
  * warning() with options(warn = 1) has improved output for
    multi-line messages.
  * axis.Date() and axis.POSIXct() now respect the par("lab") setting
    for the number of pretty() intervals.
  * Comparisons for language objects (which are based on deparsing)
    are now more careful about using accurate deparsed results
    (PR#18676).
  * Plain-text help (Rd2txt) now correctly preserves blank lines
    following single-line \dontrun code.
  * &lt;POSIXlt&gt;[*] no longer sets wrong "balanced" attribute, fixing
    PR#18681 thanks to Mikael Jagan.
  * str(&lt;classed-call&gt;) now deparses the call as expected, fixing
    PR#18684, reported by Dave Slager.
  * In Rd examples, code following the closing brace of a \dontrun,
    \dontshow or \donttest tag on the same line is no longer skipped
    when R CMD check runs the examples.
  * as.data.frame(matrix(*, ncol=0)) now gets valid names() and
    colnames(); reported by Davis Vaughan on the R-devel list.
  * Internal Mathlib function stirlerr(n) is now almost fully
    (52-bit) accurate for all n &gt;= ~5.9 and more accurate also in the
    range 1 -- 5.9.  This entails small ("after 12th decimal")
    changes in density functions, e.g., dgamma() in _some_ regions of
    their support.  The fix was partly prompted by Morten Welinder's
    PR#18640.
  * Numbers like 9876543.2 are now considered non-integer by Mathlib
    internal R_nonint(), amending original fix of PR#15734.
  * Rd comment lines no longer cause broken paragraphs in the
    rendered PDF and plain-text help. In code blocks, pure comment
    lines (starting with %) no longer produce an empty line.
  * xtabs(Freq ~ .) now consistently defaults to na.action = na.pass,
    using na.rm = FALSE (added as an argument) when summing over Freq
    (PR#17770).
  * tools::testInstalledPackage() is no longer silent about failures
    from running examples or tests and its return code no longer
    ignores failures from checking vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1718366400">- CHANGES IN R 4.4.1:
  C-LEVEL FACILITIES:
  * Functions R_atof and R_strtod declared in header R_ext/Utils.h
    are now documented in 'Writing R Extensions' and so formally part
    of the API.
  * The non-API entry points Rf_setSVector, Rf_StringFalse,
    Rf_StringTrue and Rf_isBlankString have been added to those
    reported by R CMD check.
  * The new function Rf_allocLang is now available. This provides an
    alternative to the idiom of calling Rf_allocList followed by
    SET_TYPEOF.
  UTILITIES:
  * R CMD check now reports as warnings what gfortran calls 'Fortran
    2018 deleted features', all of which have long been marked as
    'obsolescent' and some of which were deleted in Fortran 2008 or
    earlier.  Fortran compilers are no longer required to support
    these.
  BUG FIXES:
  * as.numeric(), scan(), type.convert() and other places which use
    the internal C function R_strtod now require a _non-empty_ digit
    sequence in a decimal or binary exponent.  This aligns with the
    C/POSIX standard for strtod and with ?NumericConstants.
  * as.data.frame(m, make.names=NA) now works correctly for a matrix
    m with NA's in row names.
  * The error message from &lt;POSIXlt&gt;[["hour"]] and similar now
    mentions *[[, "hour"]], as wished for in PR#17409 and proposed by
    Michael Chirico.
  * qbinom() and potentially qpois(), qnbinom(), no longer sometimes
    fail accurate inversion (of pbinom(), etc), thanks to Christopher
    Chang's report and patch in PR#18711.
  * The internal help server on Windows can again serve requests sent
    in quick succession, fixing a regression in R 4.4.0.
  * debugcall(&lt;S3Generic&gt;()) now also works when a corresponding
    S4-generic version is in the methods cache (PR#18143).
  * Package tools' toTitleCase(ch0) now returns character(0) when ch0
    is of zero length; fixing PR#18724, reported by David Hugh Jones.
  * R CMD check is no longer broken (without a check result and no
    explanation in 00check.log) for a package which declares an
    invalid VignetteBuilder in DESCRIPTION but has no vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1730376000">- CHANGES IN R 4.4.2:
  C-LEVEL FACILITIES:
  * The S-compatibility macros F77_COM and F77_COMDECL defined in
    header R_ext/RS.h are deprecated and will be removed shortly.  We
    could find no record of their use.
  BUG FIXES:
  * Mathlib function lgammacor(x) no longer warns about underflow to
    zero for large x.
  * Text widths and heights were incorrectly reported by the Quartz
    device if the drawing context didn't exist yet (typically when
    drawing off-screen to a window that is yet to appear, see
    PR#18591).
  * The Quartz device could segfault in cases where paths with spaces
    are used in the new glyph drawing API.  Thanks to Tomek
    Gieorgijewski (PR#18758).
  * On macOS in R CRAN builds, it is again possible to read
    little-endian UTF-16 text with a BOM from a connection using
    encoding="UTF-16".  Users building R from source should avoid
    using the system libiconv in macOS 14.1 and later.
  * methods' internal .requirePackage() now re-enables primitive
    method dispatch when needed; thanks to Ivan Krylov for
    demystifying CRAN package check failures on the R-devel mailing
    list.</changelog>
</package>
<package pkgid="f375eb249794c5e1c9c756ce88cb57bc213961cb379fd662f508639d7a725a46754a1c1cb35944886e2d76bf486cf1dbaee6d29d92401b3c4f079cdf41d73b7d" name="R-tools-debuginfo" arch="x86_64">
  <version epoch="0" ver="4.4.2" rel="51.0.2.2.sr20241103"/>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1620302400">- To get in sync with d:l:R:autoCRAN the Matrix package's split
  in -devel was reversed.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339200">- improved spec file according to comments of dimstar in
  https://build.opensuse.org/request/show/892685</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339201">- CHANGES IN R 4.1.0:
  FUTURE DIRECTIONS:
  * It is planned that the 4.1.x series will be the last to support
    32-bit Windows, with production of binary packages for that
    series continuing until early 2023.
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Data set esoph in package datasets now provides the correct
    numbers of controls; previously it had the numbers of cases added
    to these.  (Reported by Alexander Fowler in PR#17964.)
  NEW FEATURES:
  * www.omegahat.net is no longer one of the repositories known by
    default to setRepositories().  (Nowadays it only provides source
    packages and is often unavailable.)
  * Function package_dependencies() (in package tools) can now use
    different dependency types for direct and recursive dependencies.
  * The checking of the size of tarball in R CMD check --as-cran
    &lt;pkg&gt; may be tweaked via the new environment variable
    _R_CHECK_CRAN_INCOMING_TARBALL_THRESHOLD_, as suggested in
    PR#17777 by Jan Gorecki.
  * Using c() to combine a factor with other factors now gives a
    factor, an ordered factor when combining ordered factors with
    identical levels.
  * apply() gains a simplify argument to allow disabling of
    simplification of results.
  * The format() method for class "ftable" gets a new option justify.
    (Suggested by Thomas Soeiro.)
  * New ...names() utility.  (Proposed by Neal Fultz in PR#17705.)
  * type.convert() now warns when its as.is argument is not
    specified, as the help file always said it _should_.  In that
    case, the default is changed to TRUE in line with its change in
    read.table() (related to stringsAsFactor) in R 4.0.0.
  * When printing list arrays, classed objects are now shown _via_
    their format() value if this is a short enough character string,
    or by giving the first elements of their class vector and their
    length.
  * capabilities() gets new entry "Rprof" which is TRUE when R has
    been configured with the equivalent of --enable-R-profiling (as
    it is by default).  (Related to Michael Orlitzky's report
    PR#17836.)
  * str(xS4) now also shows extraneous attributes of an S4 object
    xS4.
  * Rudimentary support for vi-style tags in rtags() and R CMD rtags
    has been added.  (Based on a patch from Neal Fultz in PR#17214.)
  * checkRdContents() is now exported from tools; it and also
    checkDocFiles() have a new option chkInternal allowing to check
    Rd files marked with keyword "internal" as well.  The latter can
    be activated for R CMD check via environment variable
    _R_CHECK_RD_INTERNAL_TOO_.
  * New functions numToBits() and numToInts() extend the raw
    conversion utilities to (double precision) numeric.
  * Functions URLencode() and URLdecode() in package utils now work
    on vectors of URIs.  (Based on patch from Bob Rudis submitted
    with PR#17873.)
  * path.expand() can expand ~user on most Unix-alikes even when
    readline is not in use.  It tries harder to expand ~, for example
    should environment variable HOME be unset.
  * For HTML help (both dynamic and static), Rd file links to help
    pages in external packages are now treated as references to
    topics rather than file names, and fall back to a file link only
    if the topic is not found in the target package. The earlier rule
    which prioritized file names over topics can be restored by
    setting the environment variable _R_HELP_LINKS_TO_TOPICS_ to a
    false value.
  * c() now removes NULL arguments before dispatching to methods,
    thus simplifying the implementation of c() methods, _but_ for
    back compatibility keeps NULL when it is the first argument.
    (From a report and patch proposal by Lionel Henry in PR#17900.)
  * Vectorize()'s result function's environment no longer keeps
    unneeded objects.
  * Function ...elt() now propagates visibility consistently with
    ..n.  (Thanks to Lionel Henry's PR#17905.)
  * capture.output() no longer uses non-standard evaluation to
    evaluate its arguments.  This makes evaluation of functions like
    parent.frame() more consistent.  (Thanks to Lionel Henry's
    PR#17907.)
  * packBits(bits, type="double") now works as inverse of
    numToBits().  (Thanks to Bill Dunlap's proposal in PR#17914.)
  * curlGetHeaders() has two new arguments, timeout to specify the
    timeout for that call (overriding getOption("timeout")) and TLS
    to specify the minimum TLS protocol version to be used for
    https:// URIs (_inter alia_ providing a means to check for sites
    using deprecated TLS versions 1.0 and 1.1).
  * For nls(), an optional constant scaleOffset may be added to the
    denominator of the relative offset convergence test for cases
    where the fit of a model is expected to be exact, thanks to a
    proposal by John Nash.  nls(*, trace=TRUE) now also shows the
    convergence criterion.
  * Numeric differentiation _via_ numericDeriv() gets new optional
    arguments eps and central, the latter for taking central divided
    differences.  The latter can be activated for nls() via
    nls.control(nDcentral = TRUE).
  * nls() now passes the trace and control arguments to getInitial(),
    notably for all self-starting models, so these can also be fit in
    zero-noise situations via a scaleOffset.  For this reason, the
    initial function of a selfStart model must now have ... in its
    argument list.
  * bquote(splice = TRUE) can now splice expression vectors with
    attributes: this makes it possible to splice the result of
    parse(keep.source = TRUE).  (Report and patch provided by Lionel
    Henry in PR#17869.)
  * textConnection() gets an optional name argument.
  * get(), exists(), and get0() now signal an error if the first
    argument has length greater than 1.  Previously additional
    elements were silently ignored.  (Suggested by Antoine Fabri on
    R-devel.)
  * R now provides a shorthand notation for creating functions, e.g.
    \(x) x + 1 is parsed as function(x) x + 1.
  * R now provides a simple native forward pipe syntax |&gt;.  The
    simple form of the forward pipe inserts the left-hand side as the
    first argument in the right-hand side call.  The pipe
    implementation as a syntax transformation was motivated by
    suggestions from Jim Hester and Lionel Henry.
  * all.equal(f, g) for functions now by default also compares their
    environment(.)s, notably via new all.equal method for class
    function.  Comparison of nls() fits, e.g., may now need
    all.equal(m1, m2, check.environment = FALSE).
  * .libPaths() gets a new option include.site, allowing to _not_
    include the site library.  (Thanks to Dario Strbenac's suggestion
    and Gabe Becker's PR#18016.)
  * Lithuanian translations are now available.  (Thanks to Rimantas
    Zakauskas.)
  * names() now works for DOTSXP objects.  On the other hand, in
    R-lang, the R language manual, we now warn against relying on the
    structure or even existence of such dot-dot-dot objects.
  * all.equal() no longer gives an error on DOTSXP objects.
  * capabilities("cairo") now applies only to the file-based devices
    as it is now possible (if very unusual) to build R with Cairo
    support for those but not for X11().
  * There is optional support for tracing the progress of
    loadNamespace() - see its help.
  * (Not Windows.)  l10n_info() reports an additional element, the
    name of the encoding as reported by the OS (which may differ from
    the encoding part (if any) of the result from
    Sys.getlocale("LC_CTYPE").
  * New function gregexec() which generalizes regexec() to find _all_
    disjoint matches and well as all substrings corresponding to
    parenthesized subexpressions of the given regular expression.
    (Contributed by Brodie Gaslam.)
  * New function charClass() in package utils to query the
    wide-character classification functions in use (such as
    iswprint).
  * The names of quantile()'s result no longer depend on the global
    getOption("digits"), but quantile() gets a new optional argument
    digits = 7 instead.
  * grep(), sub(), regexp and variants work considerably faster for
    long factors with few levels.  (Thanks to Michael Chirico's
    PR#18063.)
  * Provide grouping of x11() graphics windows within a window
    manager such as Gnome or Unity; thanks to a patch by Ivan Krylov
    posted to R-devel.
  * The split() method for class data.frame now allows the f argument
    to be specified as a formula.
  * sprintf now warns on arguments unused by the format string.
  * New palettes "Rocket" and "Mako" for hcl.colors() (approximating
    palettes of the same name from the 'viridisLite' package).
    Contributed by Achim Zeileis.
  * The base environment and its namespace are now locked (so one can
    no longer add bindings to these or remove from these).
  * Rterm handling of multi-byte characters has been improved,
    allowing use of such characters when supported by the current
    locale.
  * Rterm now accepts ALT+ +xxxxxxxx sequences to enter Unicode
    characters as hex digits.
  * Environment variable LC_ALL on Windows now takes precedence over
    LC_CTYPE and variables for other supported categories, matching
    the POSIX behaviour.
  * duplicated() and anyDuplicated() are now optimized for integer
    and real vectors that are known to be sorted via the ALTREP
    framework. Contributed by Gabriel Becker via PR#17993.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 14
    and so packages that provide graphics devices should be
    reinstalled.
  * Graphics devices should now specify deviceVersion to indicate
    what version of the graphics engine they support.
  * Graphics devices can now specify deviceClip.  If TRUE, the
    graphics engine will never perform any clipping of output itself.
    The clipping that the graphics engine does perform (for both
    canClip = TRUE and canClip = FALSE) has been improved to avoid
    producing unnecessary artifacts in clipped output.
  * The grid package now allows gpar(fill) to be a linearGradient(),
    a radialGradient(), or a pattern().  The viewport(clip) can now
    also be a grob, which defines a clipping path, and there is a new
    viewport(mask) that can also be a grob, which defines a mask.
    These new features are only supported so far on the Cairo-based
    graphics devices and on the pdf() device.
  * (Not Windows.)  A warning is given when a Cairo-based type is
    specified for a png(), jpeg(), tiff() or bmp() device but Cairo
    is unsupported (so type = "Xlib" is tried instead).
  * grSoftVersion() now reports the versions of FreeType and
    FontConfig if they are used directly (not _via_ Pango), as is
    most commonly done on macOS.
  C-LEVEL FACILITIES:
  * The _standalone_ libRmath math library and R's C API now provide
    log1pexp() again as documented, and gain log1mexp().
  INSTALLATION on a UNIX-ALIKE:
  * configure checks for a program pkgconf if program pkg-config is
    not found.  These are now only looked for on the path (like
    almost all other programs) so if needed specify a full path to
    the command in PKG_CONFIG, for example in file config.site.
  * C99 function iswblank is required - it was last seen missing ca
    2003 so the workaround has been removed.
  * There are new configure options --with-internal-iswxxxxx,
  - -with-internal-towlower and --with-internal-wcwidth which allows
    the system functions for wide-character classification,
    case-switching and width (wcwidth and wcswidth) to be replaced by
    internal ones.  The first has long been used on macOS, AIX (and
    Windows) but this enables it to be unselected there and selected
    for other platforms (it is the new default on Solaris).  The
    second is new in this version of R and is selected by default on
    macOS and Solaris.  The third has long been the default and
    remains so as it contains customizations for East Asian
    languages.
    System versions of these functions are often minimally
    implemented (sometimes only for ASCII characters) and may not
    cover the full range of Unicode points: for example Solaris (and
    Windows) only cover the Basic Multilingual Plane.
  * Cairo installations without X11 are more likely to be detected by
    configure, when the file-based Cairo graphics devices will be
    available but not X11(type = "cairo").
  * There is a new configure option --with-static-cairo which is the
    default on macOS.  This should be used when only static cairo
    (and where relevant, Pango) libraries are available.
  * Cairo-based graphics devices on platforms without Pango but with
    FreeType/FontConfig will make use of the latter for font
    selection.
  LINK-TIME OPTIMIZATION on a UNIX-ALIKE:
  * Configuring with flag --enable-lto=R now also uses LTO when
    installing the recommended packages.
  * R CMD INSTALL and R CMD SHLIB have a new flag --use-LTO to use
    LTO when compiling code, for use with R configured with
  - -enable-lto=R.  For R configured with --enable-lto, they have
    the new flag --no-use-LTO.
    Packages can opt in or out of LTO compilation _via_ a UseLTO
    field in the DESCRIPTION file.  (As usual this can be overridden
    by the command-line flags.)
  BUILDING R on Windows:
  * for GCC &gt;= 8, FC_LEN_T is defined in config.h and hence character
    lengths are passed from C to Fortran in _inter alia_ BLAS and
    LAPACK calls.
  * There is a new text file src/gnuwin32/README.compilation, which
    outlines how C/Fortran code compilation is organized and
    documents new features:
  * R can be built with Link-Time Optimization with a suitable
    compiler - doing so with GCC 9.2 showed several
    inconsistencies which have been corrected.
  * There is support for cross-compiling the C and Fortran code
    in R and standard packages on suitable (Linux) platforms.
    This is mainly intended to allow developers to test later
    versions of compilers - for example using GCC 9.2 or 10.x has
    detected issues that GCC 8.3 in Rtools40 does not.
  * There is experimental support for cross-building R packages
    with C, C++ and/or Fortran code.
  * The R installer can now be optionally built to support a single
    architecture (only 64-bit or only 32-bit).
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++14 where
    available (which it is on all currently checked platforms): if
    not (as before) C++11 is used if available otherwise C++ is not
    supported.
    Packages which specify C++11 will still be installed using C++11.
    C++14 compilers may give deprecation warnings, most often for
    std::random_shuffle (deprecated in C++14 and removed in C++17).
    Either specify C++11 (see 'Writing R Extensions') or modernize
    the code and if needed specify C++14.  The latter has been
    supported since R 3.4.0 so the package's DESCRIPTION would need
    to include something like
    Depends: R (&gt;= 3.4)
  PACKAGE INSTALLATION on Windows:
  * R CMD INSTALL and R CMD SHLIB make use of their flag --use-LTO
    when the LTO_OPT make macro is set in file etc/${R_ARCH}/Makeconf
    or in a personal/site Makevars file.  (For details see 'Writing R
    Extensions' SS4.5.)
    This provides a valuable check on code consistency.  It does work
    with GCC 8.3 as in Rtools40, but that does not detect everything
    the CRAN checks with current GCC do.
  PACKAGE INSTALLATION on macOS:
  * The default personal library directory on builds with
  - -enable-aqua (including CRAN builds) now differs by CPU type,
    one of
    ~/Library/R/x86_64/x.y/library
    ~/Library/R/arm64/x.y/library
    This uses the CPU type R (and hence the packages) were built for,
    so when a x86_64 build of R is run under Rosetta emulation on an
    arm64 Mac, the first is used.
  UTILITIES:
  * R CMD check can now scan package functions for bogus return
    statements, which were possibly intended as return() calls (wish
    of PR#17180, patch by Sebastian Meyer). This check can be
    activated via the new environment variable
    _R_CHECK_BOGUS_RETURN_, true for --as-cran.
  * R CMD build omits tarballs and binaries of previous builds from
    the top-level package directory.  (PR#17828, patch by Sebastian
    Meyer.)
  * R CMD check now runs sanity checks on the use of LazyData, for
    example that a data directory is present and that
    LazyDataCompression is not specified without LazyData and has a
    documented value.  For packages with large LazyData databases
    without specifying LazyDataCompression, there is a reference to
    the code given in 'Writing R Extensions' SS1.1.6 to test the
    choice of compression (as in all the CRAN packages tested a
    non-default method was preferred).
  * R CMD build removes LazyData and LazyDataCompression fields from
    the DESCRIPTION file of packages without a data directory.
  ENCODING-RELATED CHANGES:
  * The parser now treats \Unnnnnnnn escapes larger than the upper
    limit for Unicode points (\U10FFFF) as an error as they cannot be
    represented by valid UTF-8.
    Where such escapes are used for outputting non-printable
    (including unassigned) characters, 6 hex digits are used (rather
    than 8 with leading zeros).  For clarity, braces are used, for
    example \U{0effff}.
  * The parser now looks for non-ASCII spaces on Solaris (as
    previously on most other OSes).
  * There are warnings (including from the parser) on the use of
    unpaired surrogate Unicode points such as \uD834.  (These cannot
    be converted to valid UTF-8.)
  * Functions nchar(), tolower(), toupper() and chartr() and those
    using regular expressions have more support for inputs with a
    marked Latin-1 encoding.
  * The character-classification functions used (by default) to
    replace the system iswxxxxx functions on Windows, macOS and AIX
    have been updated to Unicode 13.0.0.
    The character-width tables have been updated to include new
    assignments in Unicode 13.0.0.
  * The code for evaluating default (extended) regular expressions
    now uses the same character-classification functions as the rest
    of R (previously they differed on Windows, macOS and AIX).
  * There is a build-time option to replace the system's
    wide-character wctrans C function by tables shipped with R: use
    configure option --with-internal-towlower or (on Windows)
  - DUSE_RI18N_CASE in CFLAGS when building R.  This may be needed
    to allow tolower() and toupper() to work with Unicode characters
    beyond the Basic Multilingual Plane where not supported by system
    functions (e.g. on Solaris where it is the new default).
  * R is more careful when truncating UTF-8 and other multi-byte
    strings that are too long to be printed, passed to the system or
    libraries or placed into an internal buffer.  Truncation will no
    longer produce incomplete multibyte characters.
  DEPRECATED AND DEFUNCT:
  * Function plclust() from the package stats and
    package.dependencies(), pkgDepends(), getDepList(),
    installFoundDepends(), and vignetteDepends() from package tools
    are defunct.
  * Defunct functions checkNEWS() and readNEWS() from package tools
    and CRAN.packages() from utils have been removed.
  * R CMD config CXXCPP is defunct (it was deprecated in R 3.6.2).
  * parallel::detectCores() drops support for Irix (retired in 2013).
  * The LINPACK argument to chol.default(), chol2inv(),
    solve.default() and svd() has been defunct since R 3.1.0.  It was
    silently ignored up to R 4.0.3 but now gives an error.
  * Subsetting/indexing, such as ddd[*] or ddd$x on a DOTSXP
    (dot-dot-dot) object ddd has been disabled; it worked by accident
    only and was undocumented.
  BUG FIXES:
  * Many more C-level allocations (mainly by malloc and strdup) are
    checked for success with suitable alternative actions.
  * Bug fix for replayPlot(); this was turning off graphics engine
    display list recording if a recorded plot was replayed in the
    same session.  The impact of the bug became visible if resize the
    device after replay OR if attempted another savePlot() after
    replay (empty display list means empty screen on resize or empty
    saved plot).
  * R CMD check etc now warn when a package exports non-existing S4
    classes or methods, also in case of no "methods" presence.
    (Reported by Alex Bertram; reproducible example and patch by
    Sebastian Meyer in PR#16662.)
  * boxplot() now also accepts calls for labels such as ylab, the
    same as plot().  (Reported by Marius Hofert.)
  * The help page for xtabs() now correctly states that addNA is
    setting na.action = na.pass among others.  (Reported as PR#17770
    by Thomas Soeiro.)
  * The R CMD check &lt;pkg&gt; gives a longer and more comprehensible
    message when DESCRIPTION misses dependencies, e.g., in Imports:.
    (Thanks to the contributors of PR#17179.)
  * update.default() now calls the generic update() on the formula to
    work correctly for models with extended formulas.  (As reported
    and suggested by Neal Fultz in PR#17865.)
  * The horizontal position of leaves in a dendrogram is now correct
    also with center = FALSE.  (PR#14938, patch from Sebastian
    Meyer.)
  * all.equal.POSIXt() no longer warns about and subsequently ignores
    inconsistent "tzone" attributes, but describes the difference in
    its return value (PR#17277).  This check can be disabled _via_
    the new argument check.tzone = FALSE as suggested by Sebastian
    Meyer.
  * as.POSIXct() now populates the "tzone" attribute from its tz
    argument when x is a logical vector consisting entirely of NA
    values.
  * x[[2^31]] &lt;- v now works.  (Thanks to the report and patch by
    Suharto Anggono in PR#17330.)
  * In log-scale graphics, axis() ticks and label positions are now
    computed more carefully and symmetrically in their range,
    typically providing _more_ ticks, fulfilling wishes in PR#17936.
    The change really corresponds to an improved axisTicks() (package
    grDevices), potentially influencing grid and lattice, for
    example.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now correct to at
    least five digits where it was catastrophically wrong,
    previously.
  * sum(df) and similar "Summary"- and "Math"-group member functions
    now work for data frames df with logical columns, notably also of
    zero rows.  (Reported to R-devel by Martin "b706".)
  * unsplit() had trouble with tibbles due to unsound use of rep(NA,
    len)-indexing, which should use NA_integer_ (Reported to R-devel
    by Mario Annau.)
  * pnorm(x, log.p = TRUE) underflows to -Inf slightly later.
  * show(&lt;hidden S4 generic&gt;) prints better and without quotes for
    non-hidden S4 generics.
  * read.table() and relatives treated an "NA" column name as missing
    when check.names = FALSE PR#18007.
  * Parsing strings containing UTF-16 surrogate pairs such as
    "\uD834\uDD1E" works better on some (uncommon) platforms.
    sprintf("%X", utf8ToInt("\uD834\uDD1E")) should now give "1D11E"
    on all platforms.
  * identical(x,y) is no longer true for differing DOTSXP objects,
    fixing PR#18032.
  * str() now works correctly for DOTSXP and related exotics, even
    when these are doomed.
    Additionally, it no longer fails for lists with a class and
    "irregular" method definitions such that e.g. lapply(*) will
    necessarily fail, as currently for different igraph objects.
  * Too long lines in environment files (e.g. Renviron) no longer
    crash R. This limit has been increased to 100,000 bytes.
    (PR#18001.)
  * There is a further workaround for FreeType giving incorrect
    italic font faces with cairo-based graphics devices on macOS.
  * add_datalist(*, force = TRUE) (from package tools) now actually
    updates an existing data/datalist file for new content.  (Thanks
    to a report and patch by Sebastian Meyer in PR#18048.)
  * cut.Date() and cut.POSIXt() could produce an empty last interval
    for breaks = "months" or breaks = "years".  (Reported as PR#18053
    by Christopher Carbone.)
  * Detection of the encoding of 'regular' macOS locales such as
    en_US (which is UTF-8) had been broken by a macOS change:
    fortunately these are now rarely used with en_US.UTF-8 being
    preferred.
  * sub() and gsub(pattern, repl, x, *) now keep attributes of x such
    as names() also when pattern is NA (PR#18079).
  * Time differences ("difftime" objects) get a replacement and a
    rep() method to keep "units" consistent.  (Thanks to a report and
    patch by Nicolas Bennett in PR#18066.)
  * The \RdOpts macro, setting defaults for \Sexpr options in an Rd
    file, had been ineffective since R 2.12.0: it now works again.
    (Thanks to a report and patch by Sebastian Meyer in PR#18073.)
  * mclapply and pvec no longer accidentally terminate parallel
    processes started before by mcparallel or related calls in
    package parallel (PR#18078).
  * grep and other functions for evaluating (extended) regular
    expressions handle in Unicode also strings not explicitly flagged
    UTF-8, but flagged native when running in UTF-8 locale.
  * Fixed a crash in fifo implementation on Windows (PR#18031).
  * Binary mode in fifo on Windows is now properly detected from
    argument open (PR#15600, PR#18031).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1622808000">- The line %{__install} -m 755 -d %{_infodir}
  no longer works in TW or Factory.
  But without that line it works everywhere. So this instruction
  was commented out of the spec file.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1628596800">- CHANGES IN R 4.1.1:
  NEW FEATURES:
  * require(pkg, quietly = TRUE) is quieter and in particular does
    not warn if the package is not found.
  DEPRECATED AND DEFUNCT:
  * Use of ftp:// URIs should be regarded as deprecated, with
    on-going support confined to method = "libcurl" and not routinely
    tested.  (Nowadays no major browser supports them.)
  * The non-default method = "internal" is deprecated for http:// and
    ftp:// URIs for both download.file and url.
  * On Windows, method = "wininet" is deprecated for http://,
    https:// and ftp:// URIs for both download.file and url.  (A
    warning is only given for ftp://.)
    For ftp:// URIs the default method is now "libcurl" if available
    (which it is on CRAN builds).
    method = "wininet" remains the default for http:// and https://
    URIs but if libcurl is available, using method = "libcurl" is
    preferred.
  INSTALLATION:
  * make check now works also without a LaTeX installation.  (Thanks
    to Sebastian Meyer's PR#18103.)
  BUG FIXES:
  * make check-devel works again in an R build configured with
  - -without-recommended-packages.
  * qnbinom(p, size, mu) for large size/mu is correct now in a range
    of cases (PR#18095); similarly for the (size, prob)
    parametrization of the negative binomial.  Also qpois() and
    qbinom() are better and or faster for extreme cases.  The
    underlying C code has been modularized and is common to all four
    cases of discrete distributions.
  * gap.axis is now part of the axis() arguments which are passed
    from bxp(), and hence boxplot().  (Thanks to Martin Smith's
    report and suggestions in PR#18109.)
  * .First and .Last can again be set from the site profile.
  * seq.int(from, to, *) and seq.default(..) now work better in large
    range cases where from-to is infinite where the two boundaries
    are finite.
  * all.equal(x,y) now returns TRUE correctly also when several
    entries of abs(x) and abs(y) are close to .Machine$double.xmax,
    the largest finite numeric.
  * model.frame() now clears the object bit when removing the class
    attribute of a value via na.action (PR#18100).
  * charClass() now works with multi-character strings on Windows
    (PR#18104, fixed by Bill Dunlap).
  * encodeString() on Solaris now works again in Latin-1 encoding on
    characters represented differently in UTF-8.  Support for
    surrogate pairs on Solaris has been improved.
  * file.show() on Windows now works with non-ASCII path names
    representable in the current native encoding (PR#18132).
  * Embedded R on Windows can now find R home directory via the
    registry even when installed only for the current user
    (PR#18135).
  * pretty(x) with finite x now returns finite values also in the
    case where the extreme x values are close in size to the maximal
    representable number .Machine$double.xmax.
    Also, it's been tweaked for very small ranges and when a boundary
    is close (or equal) to zero; e.g., pretty(c(0,1e-317)) no longer
    has negative numbers, currently still warning about a very small
    range, and pretty(2^-(1024 - 2^-1/(c(24,10)))) is more accurate.
  * The error message for not finding vignette files when weaving has
    correct file sizes now. (Thanks to Sebastian Meyer's PR#18154.)
  * dnbinom(20, &lt;large&gt;, 1) now correctly gives 0, and similar cases
    are more accurate with underflow precaution.  (Reported by Francisco Vera Alcivar in PR#18072.)</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635163200">- repaired https://bugzilla.suse.com/show_bug.cgi?id=1191380
  (rpmacros now go to rpmmacrodir)
- minor clean-ups in spec file</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635768000">- CHANGES IN R 4.1.2:
  C-LEVEL FACILITIES:
  * The workaround in headers R.h and Rmath.h (using namespace std;)
    for the Oracle Developer Studio compiler is no longer needed now
    C++11 is required so has been removed.  A couple more usages of
    log() (which should have been std::log()) with an int argument
    are reported on Solaris.
  * The undocumented limit of 4095 bytes on messages from the
    S-compatibility macros PROBLEM and MESSAGE is now documented and
    longer messages will be silently truncated rather than
    potentially causing segfaults.
  * If the R_NO_SEGV_HANDLER environment variable is non-empty, the
    signal handler for SEGV/ILL/BUS signals (which offers recovery
    user interface) is not set. This allows more reliable debugging
    of crashes that involve the console.
  DEPRECATED AND DEFUNCT:
  * The legacy S-compatibility macros PROBLEM, MESSAGE, ERROR, WARN,
    WARNING, RECOVER, ... are deprecated and will be hidden in R
    4.2.0. R's native interface of Rf_error and Rf_warning has long
    been preferred.
  BUG FIXES:
  * .mapply(F, dots, .) no longer segfaults when dots is not a list
    and uses match.fun(F) as always documented; reported by Andrew
    Simmons in PR#18164.
  * hist(&lt;Date&gt;, ...) and hist(&lt;POSIXt&gt;, ...)  no longer pass
    arguments for rect() (such as col and density) to axis().
    (Thanks to Sebastian Meyer's PR#18171.)
  * \Sexpr{ch} now preserves Encoding(ch). (Thanks to report and
    patch by Jeroen Ooms in PR#18152.)
  * Setting the RNG to "Marsaglia-Multicarry" e.g., by RNGkind(), now
    warns in more places, thanks to Andr'e Gillibert's report and
    patch in PR#18168.
  * gray(numeric(), alpha=1/2) no longer segfaults, fixing PR#18183,
    reported by Till Krenz.
  * Fixed dnbinom(x, size=&lt;very_small&gt;, .., log=TRUE) regression,
    reported by Martin Morgan.
  * as.Date.POSIXlt(x) now keeps names(x), thanks to Davis Vaughan's
    report and patch in PR#18188.
  * model.response() now strips an "AsIs" class typically, thanks to
    Duncan Murdoch's report and other discussants in PR#18190.
  * try() is considerably faster in case of an error and long call,
    as e.g., from some do.call().  Thanks to Alexander Kaever's
    suggestion posted to R-devel.
  * qqline(y = &lt;object&gt;) such as y=I(.), now works, see also
    PR#18190.
  * Non-integer mgp par() settings are now handled correctly in
    axis() and mtext(), thanks to Mikael Jagan and Duncan Murdoch's
    report and suggestion in PR#18194.
  * formatC(x) returns length zero character() now, rather than ""
    when x is of length zero, as documented, thanks to Davis
    Vaughan's post to R-devel.
  * removeSource(fn) now retains (other) attributes(fn).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1647000000">- CHANGES IN R 4.1.3:
  NEW FEATURES:
  * The default version of Bioconductor has been changed to 3.14.
    (This is used by setRepositories and the menus in GUIs.)
  UTILITIES:
  * R CMD check --as-cran has a workaround for a bug in versions of
    file up to at least 5.41 which mis-identify DBF files last
    changed in 2022 as executables.
  C-LEVEL FACILITIES:
  * The legacy S-compatibility macros SINGLE_* in R_ext/Constants.h
    (included by R.h) are deprecated and will be removed in R 4.2.0.
  BUG FIXES:
  * Initialization of self-starting nls() models with initialization
    functions following the pre-R-4.1.0 API (without the ...
    argument) works again for now, with a deprecation warning.
  * Fixed quoting of ~autodetect~ in Java setting defaults to avoid
    inadvertent user lookup due to leading ~, reported in PR#18231 by
    Harold Gutch.
  * substr(., start, stop) &lt;- v now treats _negative_ stop values
    correctly.  Reported with a patch in PR#18228 by Brodie Gaslam.
  * Subscripting an array x without dimnames by a
    length(dim(x))-column character matrix gave "random" non-sense,
    now an error; reported in PR#18244 by Mikael Jagan.
  * ...names() now matches names(list(...)) closely, fixing PR#18247.
  * all.equal(*, scale = s) now works as intended when length(s) &gt; 1,
    partly thanks to Michael Chirico's PR#18272.
  * print(x) for long vectors x now also works for named atomic
    vectors or lists and prints the correct number when reaching the
    getOption("max.print") limit; partly thanks to a report and
    proposal by Hugh Parsonage to the R-devel list.
  * all.equal(&lt;selfStart&gt;, *) no longer signals a deprecation
    warning.
  * reformulate(*, response=r) gives a helpful error message now when
    length(r) &gt; 1, thanks to Bill Dunlap's PR#18281.
  * Modifying globalCallingHandlers inside withCallingHandlers() now
    works or fails correctly, thanks to Henrik Bengtsson's PR#18257.
  * hist(&lt;Date&gt;, breaks = "days") and hist(&lt;POSIXt&gt;, breaks = "secs")
    no longer fail for inputs of length 1.
  * qbeta(.001, .9, .009) and similar cases now converge correctly
    thanks to Ben Bolker's report in PR#17746.
  * window(x, start, end) no longer wrongly signals "'start' cannot
    be after 'end'", fixing PR#17527 and PR#18291.
  * data() now checks that its (rarely used) list argument is a
    character vector - a couple of packages passed other types and
    gave incorrect results.
  * which() now checks its arr.ind argument is TRUE rather coercing
    to logical and taking the first element - which gave incorrect
    results in package code.
  * model.weights() and model.offset() more carefully extract their
    model components, thanks to Ben Bolker and Tim Taylor's R-devel
    post.
  * list.files(recursive = TRUE) now shows all broken symlinks
    (previously, some of them may have been omitted, PR#18296).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1650628800">- CHANGES IN R 4.2.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * The formula method of aggregate() now matches the generic in
    naming its first argument x (resolving PR#18299 by Thomas
    Soeiro).
    This means that calling aggregate() with a formula as a named
    first argument requires name formula in earlier versions of R and
    name x now, so portable code should not name the argument (code
    in many packages did).
  * Calling &amp;&amp; or || with either argument of length greater than one
    now gives a warning (which it is intended will become an error).
  * Calling if() or while() with a condition of length greater than
    one gives an error rather than a warning.  Consequently,
    environment variable _R_CHECK_LENGTH_1_CONDITION_ no longer has
    any effect.
  * Windows users should consult the WINDOWS section below for some
    profound changes including
  * Support for 32-bit builds has been dropped.
  * UTF-8 locales are used where available.
  * The default locations for the R installation and personal
    library folder have been changed.
    Thanks to Tomas Kalibera for months of work on the Windows port
    for this release.
  NEW FEATURES:
  * matrix(x, n, m) now warns in more cases where length(x) differs
    from n * m, as suggested by Abby Spurdle and Wolfgang Huber in
    Feb 2021 on the R-devel mailing list.
    This warning can be turned into an error by setting environment
    variable _R_CHECK_MATRIX_DATA_ to TRUE: R CMD check --as-cran
    does so unless it is already set.
  * Function file_test() in package utils gains tests for symlinks,
    readability and writability.
  * capabilities("libxml") is now false.
    The description of capabilities("http/ftp") now reflects that it
    refers to the default method, no longer the internal one.
  * simplify2array() gains an except argument for controlling the
    exceptions used by sapply().
  * Environment variables R_LIBS_USER and R_LIBS_SITE are both now
    set to the R system default if unset or empty, and can be set to
    NULL to indicate an empty list of user or site library
    directories.
  * The warning for axis()(-like) calls in cases of relatively small
    ranges (typically in log-scale situations) is slightly improved
    _and_ suppressed from explicit calls to .axisPars() as has always
    been the intention.
  * The contrasts setter function `contrasts&lt;-` gains an explicit
    default how.many = NULL rather than just using missing(how.many).
  * grid.pretty() gains a new optional argument n = 5.
  * There is a new function .pretty() with option bounds as a
    technical-utility version of pretty().  It and pretty() gain a
    new argument f.min with a better than back-compatible default.
  * Function grDevices::axisTicks() and related functions such as
    graphics::axis() work better, notably for the log scale; partly
    because of the pretty() improvements, but also because care is
    taken e.g., when ylim is finite but diff(ylim) is infinite.
  * nclass.FD() gains a digits option.
  * The R Mathlib internal C function bd0() (called indirectly from a
    dozen probability density and distribution functions such as
    dpois(), dbinom(), dgamma(), pgamma() _etc_) has been
    complemented by a more sophisticated and (mostly) more accurate C
    function ebd0(), currently called only by internal dpois_raw()
    improving accuracy for R level dpois() and potentially others
    calling it such as dnbinom(), dgamma() or pgamma().  (Thanks to
    Morten Welinder's PR#15628.)
  * write.ftable() gains sep = " " argument as suggested by Thomas
    Soeiro.
  * The names of the locale categories supported by R's
    Sys.getlocale() and Sys.setlocale() are now provided by variable
    .LC.categories in the base namespace.
  * The Date and POSIXt methods for hist() and the histogram method
    for plot() now also use the new default col = "lightgray" in
    consistency with the corresponding change to hist()'s default for
    R 4.0.0.
  * hist.default() gains new fuzz argument, and the histogram plot
    method no longer uses fractional axis ticks when displaying
    counts ("Frequency").
  * mapply() and hence Map() now also obey the "max-or-0-if-any"
    recycling rule, such that, e.g., Map(`+`, 1:3, 1[0]) is valid
    now.
  * as.character(&lt;obj&gt;) for "hexmode" or "octmode" objects now
    fulfils the important basic rule as.character(x)[j] ===
    as.character(x[j]).
  * The set utility functions, notably intersect() have been tweaked
    to be more consistent and symmetric in their two set arguments,
    also preserving a common mode.
  * substr(ch, start,end) &lt;- new now e.g., preserves names(ch); ditto
    for substring(), thanks to a patch from Brodie Gaslam.
  * plot(&lt;lm&gt;) gains a extend.ylim.f argument, in partial response to
    PR#15285; further PR#17784 is fixed thanks to several
    contributors and a patch by Elin Waring.  The Cook's dist
    contours get customizable via cook.col and cook.lty with a
    different default color and their legend is nicer by default and
    customizable via cook.legendChanges.
  * Attempting to subset an object that is not subsettable now
    signals an error of class notSubsettableError. The
    non-subsettable object is contained in the object field of the
    error condition.
  * Subscript-out-of-bounds errors are now signaled as errors of
    class subscriptOutOfBoundsError.
  * Stack-overflow errors are now signaled as errors inheriting from
    class stackOverflowError. See ?stackOverflowError for more
    details.
  * New partly experimental Sys.setLanguage() utility, solving the
    main problem of PR#18055.
  * gettext() and gettextf() get a new option trim = TRUE which when
    set to false allows translations for strings such as "Execution
    halted\n" typical for C code.
  * An experimental implementation of hash tables is now available.
    See ?hashtab for more details.
  * identical() gains a extptr.as.ref argument for requesting that
    external pointer objects be compared as reference objects.
  * reorder() gets an argument decreasing which it passes to sort()
    for level creation; based on the wish and patch by Thomas Soeiro
    in PR#18243.
  * as.vector() gains a data.frame method which returns a simple
    named list, also clearing a long standing 'FIXME' to enable
    as.vector(&lt;data.frame&gt;, mode="list").  This breaks code relying
    on as.vector(&lt;data.frame&gt;) to return the unchanged data frame.
  * legend() is now vectorized for arguments cex, x.intersp, and
    text.width.  The latter can now also be specified as a vector
    (one element for each column of the legend) or as NA for
    computing a proper column wise maximum value of strwidth(legend).
    The argument y.intersp can be specified as a vector with one
    entry for each row of the legend.
    legend() also gains new arguments title.cex and title.font.
    Thanks to Swetlana Herbrandt.
  * Deparsing no longer remaps attribute names dim, dimnames, levels,
    names and tsp to historical S-compatible names (which structure()
    maps back).
  * sample() and sample.int() have additional sanity checks on their
    size and n arguments.
    all.equal.numeric() gains a sanity check on its tolerance
    argument - calling all.equal(a, b, c) for three numeric vectors
    is a surprisingly common error.
    mean(na.rm =), rank(na.last =), barplot(legend.text =),
    boxplot(), contour(drawlabels =), polygon(border =) and
    methods::is(class2 =) have more robust sanity checks on their
    arguments.
    R CMD Rd2pdf (used by R CMD check) has a more robust sanity check
    on the format of \alias{} commands.
  * psigamma(x, deriv) for negative x now also works for deriv = 4
    and 5; their underlying C level dpsifn() is documented in
    'Writing R Extensions'.
  * The HTML help system now uses HTML5 (wish of PR#18149).
  * ks.test() now provides exact p-values also with ties and MC
    p-values in the two-sample (Smirnov) case.  By Torsten Hothorn.
  * ks.test() gains a formula interface, with y ~ 1 for the
    one-sample (Kolmogorov) test and y ~ group for the two-sample
    (Smirnov) test.  Contributed by Torsten Hothorn.
  * The return value from ks.test() now has class c("ks.test",
    "htest") - packages using try() need to take care to use
    inherits() and not == on the class.
  * New functions psmirnov(), qsmirnov() and rsmirnov() in package
    stats implementing the asymptotic and exact distributions of the
    two-sample Smirnov statistic.
  * iconv() now allows sub = "c99" to use C99-style escapes for UTF-8
    inputs which cannot be converted to encoding to.
  * In a forward pipe |&gt; expression it is now possible to use a named
    argument with the placeholder _ in the rhs call to specify where
    the lhs is to be inserted.  The placeholder can only appear once
    on the rhs.
  * The included LAPACK sources have been updated to version 3.10.0,
    except for the four Fortran 77 routines which 3.10.0 has
    re-implemented in Fortran 90 (where the older versions have been
    retained as the R build process does not support Fortran 90).
  * path.expand() and most other uses of tilde expansion now warn if
    a path would be too long if expanded.  (An exception is
    file.exists(), which silently returns false.)
  * trunc(&lt;Date&gt;, *) now supports units = "months" or "years" for
    consistency with the POSIXt method, thanks to Dirk Eddelbuettel's
    proposal in PR#18099.
  * list2DF() now checks that its arguments are of the same length,
    rather than use recycling.
  * The HTML help system has several new features: LaTeX-like math
    can be typeset using either KaTeX or MathJax, usage and example
    code is highlighted using Prism, and for dynamic help the output
    of examples and demos can be shown within the browser if the
    knitr package is installed. These features can be disabled by
    setting the environment variable _R_HELP_ENABLE_ENHANCED_HTML_ to
    a false value.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 15
    and so packages that provide graphics devices should be
    reinstalled.
  * The grid package now allows the user to specify a "vector" of
    pattern fills.  The fill argument to gpar() accepts a list of
    gradients and/or patterns and the functions linearGradient(),
    radialGradient(), and pattern() have a new group argument.
    Points grobs (data symbols) can now also have a pattern fill.
    The grobCoords() function now returns a more informative and
    complex result.
  * The grid package has new functions for drawing isolated groups:
    grid.group(), grid.define(), and grid.use().  These functions add
    compositing operators and affine transformations to R's graphics
    capabilities.
    The grid package also has new functions for stroking and filling
    paths: grid.stroke(), grid.fill(), and grid.fillStroke().
    A new function as.path() allows the user to specify the fill rule
    for a path that is to be used for clipping, stroking, or filling;
    available options are "winding" and "evenodd".  A new function
    as.mask() allows the user to specify the type of a mask;
    available options are "alpha" and "luminance".
    These new features are only supported so far (at most) on the
    Cairo-based graphics devices and on the pdf() device.
  * dev.capabilities() reports on device support for the new
    features.
  * par() now warns about unnamed non-character arguments to prevent
    misuse such as {usr &lt;- par("usr"); par(usr)}.
  INSTALLATION:
  * Facilities for accessing ftp:// sites are no longer tested
    (except _pro tem_ for curlGetHeaders()) as modern browsers have
    removed support.
  * R can now be built with DEFS = -DSTRICT_R_HEADERS .
  PACKAGE INSTALLATION:
  * R CMD INSTALL no longer tangles vignettes. This completes an R
    CMD build change in R 3.0.0 and affects packages built before R
    3.0.2. Such packages should be re-made with R CMD build to have
    the tangled R code of vignettes shipped with the tarball.
  * USE_FC_LEN_T will become the default: this uses the correct
    prototypes for Fortran BLAS/LAPACK routines called from C/C++,
    and requires adjustment of most such calls - see 'Writing R
    Extensions' SS6.6.2.  (This has been supported since R 3.6.2.)
  * Package installation speed for packages installed with
    keep.source has been improved. This resolve the issue reported by
    Ofek Shilon in PR#18236.
  UTILITIES:
  * R CMD check can optionally report files/directories left behind
    in home, /tmp (even though TMPDIR is set) and other directories.
    See the "R Internals" manual for details.
  * R CMD check now reports byte-compilation errors during
    installation.  These are not usually fatal but may result in
    parts of the package not being byte-compiled.
  * _R_CHECK_DEPENDS_ONLY_ can be applied selectively to examples,
    tests and/or vignettes in R CMD check: see the "R Internals"
    manual.
  * _R_CHECK_SRC_MINUS_W_IMPLICIT_ now defaults to true: recent
    versions of Apple clang on macOS have made implicit function
    declarations in C into a compilation error.
  * R CMD check --as-cran makes use of the environment variable
    AUTORECONF.  See the "R Internals" manual SS8 for further details.
  * R CMD check --use-valgrind also uses valgrind when re-building
    vignettes as some non-Sweave vignettes unhelpfully comment out
    all their code when R CMD check runs vignettes.
  * Errors in re-building vignettes (unless there are LaTeX errors)
    are reported by R CMD check as ERROR rather than WARNING when
    running vignettes has been skipped (as it frequently is in CRAN
    checks and by --as-cran).
  * R CMD Rd2pdf gains a --quiet option that is used by R CMD build
    when building the PDF package manual.
  * R CMD Rd2pdf now always runs LaTeX in batch mode, consistent with
    Texinfo &gt;= 6.7. The --batch option is ignored.
  * R CMD build and R CMD check now include the Rd file name and line
    numbers in the error message of an \Sexpr evaluation failure.
  * For packages using the \doi Rd macro (now an install-time \Sexpr)
    but no other dynamic Rd content, R CMD build now produces a
    smaller tarball and is considerably faster - skipping temporary
    package installation.
  C-LEVEL FACILITIES:
  * The non-API header R_ext/R-ftp-http.h is no longer provided, as
    the entry points it covered are now all defunct.
  * A number of non-API declarations and macro definitions have been
    moved from the installed header Rinternals.h to the internal
    header Defn.h. Packages that only use entry points and
    definitions documented to be part of the API as specified in
    'Writing R Extensions' SS6 should not be affected.
  * The macro USE_RINTERNALS no longer has any effect when compiling
    package code.  Packages which also use R_NO_REMAP will need to
    ensure that the remapped names are used for calls to API
    functions that were formerly also made available as macros.
  * The deprecated legacy S-compatibility macros PROBLEM, MESSAGE,
    ERROR, WARN, WARNING, RECOVER, ... are no longer defined in
    R_exts/RS.h (included by R.h).  Replace these by calls to
    Rf_error and Rf_warning (defined in header R_ext/Error.h included
    by R.h).
    Header R_ext/RS.h no longer includes R_ext/Error.h.
  * Header R_ext/Constants.h (included by R.h) when included from C++
    now includes the C++ header cfloat rather than the C header
    float.h (now possible as C++11 is required).
  * The legacy S-compatibility macros DOUBLE_* in R_ext/Constants.h
    (included by R.h) are deprecated.
  * The deprecated S-compatibility macros SINGLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * R_Calloc, R_Free and R_Realloc are preferred to their unprefixed
    forms and error messages now use the prefix. These forms were
    introduced in R 3.4.0 and are available even when
    STRICT_R_HEADERS is defined.
  * rmultinom has been documented in 'Writing R Extensions' SS6 so is
    now part of the R API.
  * Similarly, Rtanpi, called from R level tanpi() is now part of the
    R API.
  * The long-deprecated, undocumented and non-API entry point call_R
    is no longer declared in R_ext/RS.h (included by R.h).
  * The header S.h which has been unsupported since Jan 2016 has been
    removed.  Use R.h instead.
  DEPRECATED AND DEFUNCT:
  * The (non-default and deprecated) method = "internal" for
    download.file() and url() no longer supports http:// nor ftp://
    URIs.  (It is used only for file:// URIs.)
    On Windows, download.file(method = "wininet") no longer supports
    ftp:// URIs.  (It is no longer the default method, which is
    "libcurl" and does.)
    On Windows, the deprecated method = "wininet" now gives a warning
    for http:// and https:// URIs for both download.file() and url().
    (It is no longer the default method.)
  * On Windows, the command-line option --max-mem-size and
    environment variable R_MAX_MEM_SIZE are defunct.  The memory
    allocation limit was important for 32-bit builds, but these are
    no longer supported.
  * default.stringsAsFactors() is now formally deprecated, where that
    was only mentioned on its regular help page, previously.  So it
    now gives a warning if called.
  * unix.time() is defunct now; it had been deprecated since R 3.4.0.
  BUG FIXES:
  * Setting digits = 0 in format(), print.default() (and hence
    typically print()) or options() is again invalid.  Its behaviour
    was platform-dependent, and it is unclear what "zero significant
    digits" should mean (PR#18098).
  * Messages from C code in the cairo section of package grDevices
    are now also offered for translation, thanks to Michael Chirico's
    PR#18123.
  * mean(x) with finite x now is finite also without "long.double"
    capability.
  * R CMD Rd2pdf no longer leaves an empty build directory behind
    when it aborts due to an already existing output file.  (Thanks
    to Sebastian Meyer's PR#18141.)
  * density(x, weights = w, na.rm = TRUE) when anyNA(x) is true, now
    removes weights "in parallel" to x, fixing PR#18151, reported by
    Matthias Gondan.  Additionally, it gets a subdensity option.
  * Conversion of \Sexpr[]{&lt;expR&gt;} to LaTeX or HTML no longer
    produces long blocks of empty lines when &lt;expR&gt; itself contains
    several lines all producing empty output.  Thanks to a report and
    patch by Ivan Krylov posted to R-devel.
  * R CMD build no longer fails if a package vignette uses child
    documents and inst/doc exists.  (Thanks to Sebastian Meyer's
    PR#18156.)
  * When an R documentation ('help' source) file man/foo.Rd in a
    package has \donttest{..} examples with a syntax error, it is now
    signalled as ERROR and with correct line numbers relating to the
  * -Ex.R file, thanks to Duncan Murdoch and Sebastian Meyer's
    reports and patch proposals in PR#17501.
  * Improved determination of the correct translation domain in
    non-base packages, addressing the combination of PR#18092 and
    PR#17998 (#c6) with reports and _augmented_ patch #2904 by
    Suharto Anggono.
    Note that "R-base" is no longer the default domain e.g., for
    top-level calls to gettext(); rather translation needs explicit
    domain = * specification in such cases.
  * identical(attrib.as.set=FALSE) now works correctly with data
    frames with default row names (Thanks to Charlie Gao's PR#18179).
  * txtProgressBar() now enforces a non-zero width for argument char,
    without which no progress can be visible.
  * dimnames(table(d)) is more consistent in the case where d is a
    list with a single component, thanks to Thomas Soeiro's report to
    R-devel.
    Further, table(d1, d2) now gives an error when d1 and d2 are data
    frames as suggested by Thomas in PR#18224.
  * Fix for drawing semi-transparent lines and fills on the native
    Windows graphics device (PR#18219 and PR#16694).  Thanks to Nick
    Ray for helpful diagnosis on Bugzilla.
  * The deparser now wraps sub-expressions such as if(A) ..  with
    parentheses when needed; thanks to Duncan Murdoch's PR#18232 and
    Lionel Henry's patches there.
  * remove.packages() no longer tries to uninstall Priority: base
    packages, thanks to a report and suggestions by Colin Fay in
    PR#18227.
  * win.metafile() now has xpinch and ypinch arguments so that the
    user can override Windows' (potentially wrong) guess at device
    dimensions.
  * x[i] and x[[i]] for non-integer i should now behave in all cases
    as always documented: the index used is equivalent to
    as.integer(i) unless that would overflow where trunc(i) is used
    instead; thanks to Suharto Anggono's report and patch proposals
    in PR#17977.
  * asOneSidedFormula() now associates the resulting formula with the
    global environment rather than the evaluation environment created
    for the call.
  * &lt;bibentry&gt;$name now matches the field name case-insensitively,
    consistent with bibentry() creation and the replacement method.
  * cbind() failed to detect some length mismatches with a mixture of
    time-series and non-time-series inputs.
  * The default LaTeX style file Sweave.sty used by the RweaveLatex
    driver no longer loads the obsolete ae package; thanks to a
    report by Thomas Soeiro in PR#18271.  Furthermore, it now skips
    \usepackage[T1]{fontenc} for engines other than pdfTeX (if
    detected) or if the new [nofontenc] option is used.
  * smooth.spline() now stores its logical cv argument more safely,
    fixing a rare bug when printing, and also stores n.
  * smooth.spline(x,y,*) now computes the cv.crit statistic
    correctly, also when is.unsorted(x), fixing PR#18294.
  * The data.frame method of rbind() now warns when binding
    not-wholly-recycling vectors, by analogy to the default method
    (for matrices).
  * setAs() finds the correct class for name to when multiple
    packages define a class with that name. Thanks to Gabor Csardi
    for the report.
  * Fix for detaching a package when two classes of the same name are
    present in method signatures for the same generic. Thanks to
    Gabor Csardi for the report.
  * match.arg("", c("", "a", "B")) gives a better error message, in
    part from PR#17959, thanks to Elin Waring.
  * R CMD Sweave --clean no longer removes pre-existing files or
    subdirectories (PR#18242).
  * The quartz() device no longer splits polylines into subpaths.
    That has caused narrowly-spaced lines with many points to always
    look solid even when dashed line type was used due to dash phase
    restarts.
  * Deparsing constructs such as quote(1 + `!`(2) + 3) works again as
    before R 3.5.0, thanks to the report and patch in PR#18284 by
    Suharto Anggono.
  * as.list(f) for a factor f now keeps names(f), fixing PR#18309.
  * qbeta(.001, .9, .009) and analogous qf() calls now return a
    correct value instead of NaN or wrongly 1, all with a warning;
    thanks to the report by Ludger Goeminne in PR#18302.
  * plot.lm() failed to produce the plot of residuals vs.  factor
    levels (i.e., which=5 when leverages are constant) for models
    with character predictors (PR#17840).
  * interaction.plot(..., xtick = TRUE) misplaced the x-axis line
    (PR#18305).
  * Not strictly fixing a bug, format()ing and print()ing of
    non-finite Date and POSIXt values NaN and +/-Inf no longer show
    as NA but the respective string, e.g., Inf, for consistency with
    numeric vector's behaviour, fulfilling the wish of PR#18308.
  * R CMD check no longer runs test scripts generated from
    corresponding .Rin files twice and now signals an ERROR if
    processing an .Rin script fails.
  * tools::Rd2txt() used for plain-text help pages now renders \hrefs
    (if tools::Rd2txt_options(showURLs = TRUE)) and \urls with
    percent-encoding and standards-compliant delimiting style (angle
    brackets and no URL: prefix).  \email is now rendered with a
    mailto: prefix.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1655985600">- CHANGES IN R 4.2.1:
  NEW FEATURES:
  * New function utils::findCRANmirror() to find out if a CRAN mirror
    has been selected, otherwise fallback to the main site.  This
    behaves in the same way as tools::CRAN_package_db() and is
    intended for packages wishing to access CRAN for purposes other
    than installing packages.
    The need for this was shown by a day when the main CRAN website
    was offline and a dozen or so packages which had its URL
    hardcoded failed their checks.
  INSTALLATION on a UNIX-ALIKE:
  * The libraries searched for by --with-blas (without a value) now
    include BLIS (after OpenBLAS but before ATLAS).  And on macOS,
    the Accelerate framework (after ATLAS).  (This is patterned after
    the AX_BLAS macro from the Autoconf Archive.)
  * The included LAPACK sources have been updated to 3.10.1.
  UTILITIES:
  * The (full path to) the command tidy to be used for HTML
    validation can be set by environment variable R_TIDYCMD.
  * Setting environment variable _R_CHECK_RD_VALIDATE_RD2HTML_ to a
    false value will override R CMD check --as-cran and turn off HTML
    validation.  This provides a way to circumvent a problematic
    tidy.
    The 2006 version that ships with macOS is always skipped.
  C-LEVEL FACILITIES:
  * The undocumented legacy declarations of Sint, Sfloat, SINT_MAX
    and SINT_MIN in header R.h are deprecated.
  BUG FIXES:
  * fisher.test(d) no longer segfaults for "large" d; fixing PR#18336
    by preventing/detecting an integer overflow reliably.
  * tar(., files=*) now produces correctly the warning about invalid
    uid or gid of files, fixing PR#18344, reported by Martin Morgan.
  * tk_choose.files() with multi = FALSE misbehaved on paths
    containing spaces (PR#18334) (regression introduced in R 4.0.0).
  * sort(x, partial = ind, *) now works correctly notably for the
    non-default na.last = FALSE or TRUE, fixing PR#18335 reported by
    James Edwards.
  * Environment variable _R_CHECK_XREFS_REPOSITORIES_ is only used
    for checking .Rd cross-references in R CMD check (as documented)
    and not for other uses looking for a CRAN mirror.
  * The search for a CRAN mirror when checking packages now uses
    getOption("repos") if that specifies a CRAN mirror, even when it
    does not also specify all three Bioconductor repositories (as was
    previously required).
  * The HTML code generated by tools::Rd2HTML() has been improved to
    pass tidy 5.8.0.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1667217600">- CHANGES IN R 4.2.2:
  NEW FEATURES:
  * tools::Rdiff(useDiff = TRUE) checks for the presence of an
    external diff command and switches to useDiff = FALSE if none is
    found.  This allows R CMD Rdiff to always work.
  * On Windows, environment variable R_LIBCURL_SSL_REVOKE_BEST_EFFORT
    can be used to switch to only 'best-effort' SSL certificate
    revocation checks with the default "libcurl" download method.
    This reduces security, but may be needed for downloads to work
    with MITM proxies (PR#18379).
  * (macOS) The run-time check for libraries from XQuartz for X11 and
    Tcl/Tk no longer uses otool from the Apple Developer Tools
    (PR#18400).
  * The LaTeX style for producing the PDF manuals, Rd.sty, now loads
    the standard amsmath, amsfonts and amssymb packages for greater
    coverage of math commands in the Rd \eqn and \deqn macros.  The
    \mathscr LaTeX command is also provided (via the mathrsfs
    package, if available, or the amsfonts bundle otherwise),
    fulfilling the wish of PR#18398.
  * (Windows) The default format of readClipboard() and
    writeClipboard() has been changed to 13 (CF_UNICODETEXT).
  INSTALLATION on a UNIX-ALIKE:
  * The PDF manuals (if built) can be compacted by the new target
    make compact-pdf (at the top level or in directory doc/manual).
  * There is now configure support for LLVM clang 15 on Linux, which
    defaults to position-independent (PIE) executables whereas
    gfortran does not.
  * Many small changes to ease compilation (and suppress warnings)
    with LLVM clang 15.
  BUG FIXES:
  * Rscript -e would fail if stdin were closed (Reported by Henrik
    Bengtsson.)
  * qt(*, log.p=TRUE) in outer tails no longer produces NaN in its
    final steps, thus fixing PR#18360.
  * tools::Rd2latex() now escapes hashes and ampersands when writing
    URLs, fixing LaTeX errors with such URLs in \tabular.
  * When isGeneric(f, fdef=*) is used with mismatching names, the
    warning is better understandable; reported (with fix) in PR#18370
    by Gabe Becker.
  * poly(x, n) now works again (and is now documented) when x is a
    "Date" or "POSIXct" object, or of another class while fulfilling
    mode(x) == "numeric".  This also enables poly(x, *, raw=TRUE) for
    such variables.  Reported by Michael Chirico to R-devel.
  * write.table(), write.csv() and write.csv2() restore their
    numerical precision (internal equivalent of digits = 15) after an
    interrupt (PR#18384).
  * One can now read also byte FF from a clipboard connection
    (PR#18385).
  * source("") and source(character()) now give more helpful error
    messages.
  * R CMD check --as-cran set _R_CHECK_TIMINGS_ too late to have the
    intended effect.
  * as.POSIXlt(x) now also works with very large dates x, fixing
    PR#18401 reported by Hannes M"uhleisen.
  * Files can now be extracted even from very large zip archives
    (PR#18390, thanks to Martin Jakt).
  * Non-finite objects of class "POSIXlt" are now correctly coerced
    to classes "Date" and "POSIXct"; following up on the extension to
    format() them correctly.
  * Added methods for is.finite(), is.infinite() and is.nan() for
    "POSIXlt" date-time objects.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1678881600">- CHANGES IN R 4.2.3:
  C-LEVEL FACILITIES:
  * The definition of DL_FUNC in R_ext/Rdynload.h has been changed to
    be fully C-compliant.  This means that functions loaded _via_ for
    example R_GetCCallable need to be cast to an appropriate type if
    they have any arguments.
  * .Machine has a new element sizeof.time_t to identify old systems
    with a 32-bit type and hence a limited range of date-times (and
    limited support for dates millions of years from present).
  PACKAGE INSTALLATION:
  * (Windows) The default C++ standard had accidentally been left at
    C++11 when it was changed to C++14 on Unix.
  BUG FIXES:
  * As "POSIXlt" objects may be "partially filled" and their list
    components meant to be recycled, length() now is the length of
    the longest component.
  * as.POSIXlt.Date() could underflow for dates in the far past (more
    than half a million years BCE).
  * as.Date.POSIXlt(x) would return "1970-01-01" instead of NA in R
    4.2.2, e.g., for
    x &lt;- as.POSIXlt(c("2019-01-30","2001-1-1"))
    x$mon &lt;- c(0L, NA); as.Date(x)
  * R CMD check failed to apply enabled _R_CHECK_SUGGESTS_ONLY_ to
    examples and vignettes (regression in R 4.2.0).
  * R CMD check did not re-build vignettes in separate processes by
    default (regression in R 4.2.0).
  * Running examples from HTML documentation now restores previous
    knitr settings and options (PR#18420).
  * Quartz: fonts are now located using Core Graphics API instead of
    deprecated ATS which is no longer supported in the macOS 13 SDK
    (PR#18426).  This also addresses an issue where the currently
    used font in the Quartz device context was not correctly
    retained.
  * (Windows) Math symbols in text drawing functions are again
    rendered correctly (PR#18440).  This fixes a regression in R
    4.2.1 caused by a fix in PR#18382 which uncovered an issue in
    GraphApp due to which the symbol charset was not used with TT
    Symbol font face.
  * (Windows) Installing a package with a src/Makefile.{win,ucrt}
    file includes ~/.R/Makevars.win64 in the search for user
    makevars, as documented in "R Installation and Administration"
    and done for packages with a src/Makevars.{win,ucrt} file.
  * format(&lt;POSIXlt_w/_unbalanced_sec&gt;, "....%OS&lt;n&gt;") with n &gt; 0 no
    longer accidentally uses the unbalanced seconds, thanks to
    Suharto Anggono's report (including patch) in PR#18448.
  * solve.default(a, b) works around issues with some versions of
    LAPACK when a contains NA or NaN values.
  * When UseMethod() cannot dispatch, it no longer segfaults
    producing the error message in case of a long class(), thanks to
    Joris Vankerschaver's report (including patch) in PR#18447.
  * When example(foo, ..) produces graphics on an interactive device
    it needs to open itself, it now leaves devAskNewPage() unchanged
    even when it was FALSE, thus fixing a 14 years old '&lt;FIXME&gt;'.
  * packageDescription() again catches errors from encoding
    conversions. This also fixes broken packageVersion() in C locale
    on systems where iconv does not support transliteration.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1681128000">- add patch to build with libcurl &gt;= 8</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1682078400">- CHANGES IN R 4.3.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Calling &amp;&amp; or || with LHS or (if evaluated) RHS of length greater
    than one is now always an error, with a report of the form
    'length = 4' in coercion to 'logical(1)'
    Environment variable _R_CHECK_LENGTH_1_LOGIC2_ no longer has any
    effect.
  NEW FEATURES:
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.10.1.  (This caused some platform-dependent
    changes to package check output.)  And then to the sources from
    LAPACK version 3.11.0 (with changes only to double complex
    subroutines).
  * The included LAPACK sources have been updated to include the four
    Fortran 90 routines rather than their Fortran 77 predecessors.
    This may give some different signs in SVDs or
    eigendecompositions..  (This completes the transition to LAPACK
    3.10.x begun in R 4.2.0.)
  * The LAPACK sources have been updated to version 3.11.0.  (No new
    subroutines have been added, so this almost entirely bug fixes:
    Those fixes do affect some computations with NaNs, including R's
    NA.)
  * The parser now signals _classed_ errors, notably in case of the
    pipe operator |&gt;.  The error object and message now give line and
    column numbers, mostly as proposed and provided by Duncan Murdoch
    in PR#18328.
  * toeplitz() is now generalized for asymmetric cases, with a
    toeplitz2() variant.
  * xy.coords() and xyz.coords() and consequently, e.g., plot(x,y,
    log = "y") now signal a _classed_ warning about negative values
    of y (where log(.) is NA).  Such a warning can be specifically
    suppressed or caught otherwise.
  * Regular expression functions now check more thoroughly whether
    their inputs are valid strings (in their encoding, e.g. in
    UTF-8).
  * The performance of grep(), sub(), gsub() and strsplit() has been
    improved, particularly with perl = TRUE and fixed = TRUE.  Use of
    useBytes = TRUE for performance reasons should no longer be
    needed and is discouraged: it may lead to incorrect results.
  * apropos() gains an argument dot_internals which is used by the
    completion (help(rcompgen)) engine to also see base internals
    such as .POSIXct().
  * Support in tools::Rdiff() for comparing uncompressed PDF files is
    further reduced - see its help page.
  * qqplot(x, y, ...) gains conf.level and conf.args arguments for
    computing and plotting a confidence band for the treatment
    function transforming the distribution of x into the distribution
    of y (Switzer, 1976, _Biometrika_). Contributed by Torsten
    Hothorn.
  * Performance of package_dependencies() has been improved for cases
    when the number of dependencies is large.
  * Strings newly created by gsub(), sub() and strsplit(), when any
    of the inputs is marked as "bytes", are also marked as "bytes".
    This reduces the risk of creating invalid strings and accidental
    substitution of bytes deemed invalid.
  * Support for readLines(encoding = "bytes") has been added to allow
    processing special text files byte-by-byte, without creating
    invalid strings.
  * iconv(from = "") now takes into account any declared encoding of
    the input elements and uses it in preference to the native
    encoding.  This reduces the risk of accidental creation of
    invalid strings, particularly when different elements of the
    input have different encoding (including "bytes").
  * Package repositories in getOption("repos") are now initialized
    from the repositories file when utils is loaded (if not already
    set, e.g., in .Rprofile).  (From a report and patch proposal by
    Gabriel Becker in PR#18405.)
  * compactPDF() gets a verbose option.
  * type.convert() and hence read.table() get new option tryLogical =
    TRUE with back compatible default.  When set to false, converts
    "F" or "T" columns to character.
  * Added new unit prefixes "R" and "Q" for abbreviating
    (unrealistically large) sizes beyond 10^{27} in standard = "SI",
    thanks to Henrik Bengtsson's PR#18435.
  * as.data.frame()'s default method now also works fine with atomic
    objects inheriting from classes such as "roman", "octmode" and
    "hexmode", such fulfilling the wish of PR#18421, by Benjamin
    Feakins.
  * The as.data.frame.vector() utility now errors for wrong-length
    row.names.  It warned for almost six years, with "Will be an
    error!".
  * sessionInfo() now also contains La_version() and reports codepage
    and timezone when relevant, in both print() and toLatex() methods
    which also get new option tzone for displaying timezone
    information when locale = FALSE.
  * New function R_compiled_by() reports the C and Fortran compilers
    used to build R, if known.
  * predict(&lt;lm&gt;, newdata = *) no longer unnecessarily creates an
    offset of all 0s.
  * solve() for complex inputs now uses argument tol and by default
    checks for 'computational singularity' (as it long has done for
    numeric inputs).
  * predict(&lt;rank-deficient lm&gt;, newdata=*) now obeys a new argument
    rankdeficient, with new default "warnif", warning only if there
    are non-estimable cases in newdata.  Other options include
    rankdeficient = "NA", predicting NA for non-estimable newdata
    cases.  This addresses PR#15072 by Russ Lenth and is based on his
    original proposal and discussions in PR#16158 also by David Firth
    and Elin Waring.  Still somewhat experimental.
  * Rgui console implementation now works better with the NVDA screen
    reader when the full blinking cursor is selected.  The underlying
    improvements in cursor handling may help also other screen
    readers on Windows.
  * The drop-field control in GraphApp can now be left with the TAB
    key and all controls can be navigated in the reverse order using
    the Shift+TAB key, improving accessibility of the Rgui
    configuration editor.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now fully accurate
    (instead of to "only" minimally five digits).
  * demo(error.catching) now also shows off withWarnings() and
    tryCatchWEMs().
  * As an experimental feature the placeholder _ can now also be used
    in the rhs of a forward pipe |&gt; expression as the first argument
    in an extraction call, such as _$coef. More generally, it can be
    used as the head of a chain of extractions, such as _$coef[[2]].
  * Spaces in the environment variable used to choose the R session's
    temporary directory (TMPDIR, TMP and TEMP are tried in turn) are
    now fatal.  (On Windows the 'short path' version of the path is
    tried and used if that does not contain a space.)
  * all.equal.numeric() gets a new optional switch giveErr to return
    the numeric error as attribute.  Relatedly,
    stopifnot(all.equal&lt;some&gt;(a, b, ..)) is as "smart" now, as
    stopifnot(all.equal(....)) has been already, thus allowing
    customized all.equal&lt;Some&gt;() wrappers.
  * R on Windows is now able to work with path names longer than 260
    characters when these are enabled in the system (requires at
    least Windows 10 version 1607).  Packages should be updated to
    work with long paths as well, instead of assuming PATH_MAX to be
    the maximum length.  Custom front-ends and applications embedding
    R need to update their manifests if they wish to allow this
    feature.  See
    &lt;https://blog.r-project.org/2023/03/07/path-length-limit-on-windows&gt;
    for more information.
  * 'Object not found' and 'Missing argument' errors now give a more
    accurate error context. Patch provided by Lionel Henry in
    PR#18241.
  * The @ operator is now an S3 generic. Based on contributions by
    Tomasz Kalinowski in PR#18482.
  * New generic chooseOpsMethod() provides a mechanism for objects to
    resolve cases where two suitable methods are found for an Ops
    Group Generic. This supports experimenting with alternative
    object systems. Based on contributions by Tomasz Kalinowski in
    PR#18484.
  * inherits(x, what) now accepts values other than a simple
    character vector for argument what. A new generic, nameOfClass(),
    is called to resolve the class name from what. This supports
    experimenting with alternative object systems. Based on
    contributions by Tomasz Kalinowski in PR#18485.
  * Detection of BLAS/LAPACK in use (sessionInfo()) with FlexiBLAS
    now reports the current backend.
  * The "data.frame" method for subset() now warns about extraneous
    arguments, typically catching the use of = instead of == in the
    subset expression.
  * Calling a:b when numeric a or b is longer than one may now be
    made into an error by setting environment variable
    _R_CHECK_LENGTH_COLON_ to a true value, along the proposal in
    PR#18419 by Henrik Bengtsson.
  * density(x, weights = *) now warns if automatic bandwidth
    selection happens without using weights; new optional warnWbw may
    suppress the warning.  Prompted by Christoph Dalitz' PR#18490 and
    its discussants.
  * rm(list = *) is faster and more readable thanks to Kevin Ushey's
    PR#18492.
  * The plot.lm() function no longer produces a normal Q-Q plot for
    GLMs. Instead it plots a half-normal Q-Q plot of the absolute
    value of the standardized deviance residuals.
  * The print() method for class "summary.glm" no longer shows
    summary statistics for the deviance residuals by default.  Its
    optional argument show.residuals can be used to show them if
    required.
  * The tapply() function now accepts a data frame as its X argument,
    and allows INDEX to be a formula in that case. by.data.frame()
    similarly allows INDICES to be a formula.
  * The performance of df[j] &lt;- value (including for missing j) and
    write.table(df) has been improved for data frames df with a large
    number of columns.  (Thanks to Gabriel Becker's PR#18500,
    PR#18503 and discussants, prompted by a report from Toby Dylan
    Hocking on the R-devel mailing list.)
  * The matrix multiply operator %*% is now an S3 generic, belonging
    to new group generic matrixOps.  From Tomasz Kalinowski's
    contribution in PR#18483.
  * New function array2DF() to convert arrays to data frames,
    particularly useful for the list arrays created by tapply().
  DATES and TIMES:
  * On platforms where (non-UTC) datetimes before 1902 (or before
    1900 as with system functions on recent macOS) are guessed by
    extrapolating time zones from 1902-2037, there is a warning at
    the first use of extrapolation in a session.  (As all time zones
    post 2037 are extrapolation, we do not warn on those.)
  * (Platforms using --with-internal-tzone, including Windows and by
    default macOS). How years are printed in dates or date-times can
    be controlled by environment variable R_PAD_YEARS_BY_ZERO.  The
    default remains to pad to 4 digits by zeroes, but setting value
    no gives no padding (as used by default by glibc).
  * strftime() tries harder to determine the offset for the "%z"
    format, and succeeds on the mainstream R platforms.
  * strftime() has a limit of 2048 bytes on the string produced -
    attempting to exceed this is an error.  (Previously it silently
    truncated at 255 bytes.)
  * sessionInfo() records (and by default prints) the system time
    zone as part of the locale information.  Also, the source
    (system/internal) of the date-time conversion and printing
    functions.
  * Objects of class "POSIXlt" created in this version of R always
    have 11 components: component zone is always set, and component
    gmtoff is set for times in UTC and usually set on the (almost
    all) platforms which have C-level support, otherwise is NA.
  * There are comprehensive validity checks on the structure of
    objects of class "POSIXlt" when converting (including formatting
    and printing).  (This avoids mis-conversions of hand-crafted
    objects.)
  * There is some support for using the native date-time routines on
    macOS: this is only viable on recent versions (e.g. 12.6 and 13)
    and does get wrong some historical changes (before 1900, during
    WWII).  Use of --with-internal-tzone remains the default.
  * as.POSIXct(&lt;numeric&gt;) and as.POSIXlt(.) (without specifying
    origin) now work.  So does as.Date(&lt;numeric&gt;).
  * as.Date.POSIXct(., tz) now treats several tz values, notably
    "GMT" as equivalent to "UTC", proposed and improved by Michael
    Chirico and Joshua Ulrich in PR#17674.
  * Experimental balancePOSIXlt() utility allows using "ragged" and
    or out-of-range "POSIXlt" objects more correctly, e.g., in
    subsetting and subassignments.  Such objects are now documented.
    More experimentally, a "POSIXlt" object may have an attribute
    "balanced" indicating if it is known to be filled or fully
    balanced.
  * Functions axis.Date() and axis.POSIXct() are rewritten to gain
    better default tick locations and better default formats by using
    prettyDate(). Thanks to Swetlana Herbrandt.
  * The mapping of Windows' names for time zones to IANA's 'Olson'
    names has been updated.  When ICU is available (it is by
    default), it is used to get a mapping for the current region set
    in Windows.  This can be overridden by setting environment
    variable TZ to the desired Olson name - see OlsonNames() for
    those currently available.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 16
    and so packages that provide graphics devices should be
    reinstalled.
  * The grDevices and grid packages have new functions for rendering
    typeset glyphs, primarily: grDevices::glyphInfo() and
    grid::grid.glyph().
    Rendering of typeset glyphs is only supported so far on the
    Cairo-based graphics devices and on the pdf() and quartz()
    devices.
  * The defined behaviour for "clear" and "source" compositing
    operators (via grid::grid.group()) has been changed (to align
    better with simple interpretation of original Porter-Duff
    definitions).
  * Support for gradients, patterns, clipping paths, masks, groups,
    compositing operators, and affine transformations has been added
    to the quartz() device.
  INSTALLATION on a UNIX-ALIKE:
  * A system installation of generic LAPACK 3.10.0 or later will be
    preferred to the version in the R sources.
    configure option --with-lapack=no (equivalently --without-lapack)
    forces compilation of the internal LAPACK sources.
    If --with-lapack is not specified, a system liblapack is looked
    for and used if it reports version 3.10.0 or later and does not
    contain BLAS routines.
    Packages using LAPACK will need to be reinstalled if this changes
    to using an external library.
  * On aarch64 Linux platforms using GCC, configure now defaults to
  - fPIC (instead of -fpic), as desired in PR#18326.
  * configure now checks conversion of datetimes between POSIXlt and
    POSIXct around year 2020.  Failure (which has been seen on
    platforms missing tzdata) is fatal.
  * If configure option --with-valgrind-instrumentation is given
    value 1 or 2, option --with-system-valgrind-headers is now the
    default and ignored (with a warning).  It is highly recommended
    that the system headers are installed alongside valgrind: they
    are part of its packaging on some Linux distributions and
    packaged separately (e.g. in the valgrind-devel RPM) on others.
    configure will give a warning if they are not found.
    The system headers will be required in a future release of R to
    build with valgrind instrumentation.
  * libcurl 8.x is now accepted by configure: despite a change in
    major version number it changes neither API nor ABI.
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools43, an update of the Rtools42 toolchain.  It is
    based on gcc 12 and newer versions of MinGW-W64, binutils and
    libraries.  At this time R-devel can still be built using
    Rtools42 without changes, but when R-devel is installed via the
    installer, it will by default look for Rtools43.
  * Old make targets rsync-extsoft and 32-bit ones that are no longer
    needed have been removed.
  * Default builds (including for packages) no longer select C99.
    Thus the C standard used is the default for the compiler, which
    for the toolchain in Rtools43 is C17.  (This is consistent with
    Unix builds.)
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++17 where
    available (which it is on all currently checked platforms): if
    not C++14 or C++11 is used if available otherwise C++ is not
    supported.
  * USE_FC_LEN_T is the default: this uses the correct
    (compiler-dependent) prototypes for Fortran BLAS/LAPACK routines
    called from C/C++, and requires adjustment of many such calls -
    see 'Writing R Extensions' SS6.6.1.
  * There is initial support for C++23 as several compilers are now
    supporting -std=c++23 or -std=c++2b or similar.  As for C++20,
    there no additional configure checks for C++23 features beyond a
    check that the compiler reports a __cplusplus value greater than
    that in the C++20 standard.  C++ feature tests should be used.
  * There is support for a package to indicate the version of the C
    standard which should be used to compile it, and for the
    installing user to specify this.  In most cases R defaults to the
    C compiler's default standard which is C17 (a `bug-fix' of C11) -
    earlier versions of R or compilers may have defaulted to C99.
    Current options are:
    USE_C17 Use a standard that is at most C17.  The intention is to
    allow legacy packages to still be installed when later C
    standards become the default, including packages using new
    keywords as identifiers or with K&amp;R-style function
    declarations.  This will use C17 if available, falling back
    to C11.
    USE_C90 Use the C90 (aka C89) standard.  (As that standard did
    not require compilers to identify that version, all we can
    verify is that the compiler does not claim to be using a
    later standard.  It may accept C99 features - for example
    clang accepts // to make comments.)
    USE_C99 Use the C99 standard. This should be rarely needed - it
    avoids the few new features of C11/C17 which can be useful if
    a package assumes them if C17 is specified and they are not
    implemented.
    USE_C23 Use C23 (or in future, later).  Compiler/library support
    for C23 is still being implemented, but LLVM clang from
    15.0.0 and the upcoming GCC 13 have quite extensive support.
    These can be specified as part of the SystemRequirements field in
    the package's DESCRIPTION file or _via_ options --use-C17 and so
    on of R CMD INSTALL and R CMD SHLIB.
    For further details see "Writing R Extensions" SS1.2.5.
  * (Windows) A src/Makefile.ucrt or src/Makefile.win file is now
    included after R_HOME/etcR_ARCH/Makeconf and so no longer needs
    to include that file itself.  Installation of a package with such
    a file now uses a site Makevars file in the same way as a package
    with a src/Makevars.win file would.
  * configure is now passed crucial variables such as CC and CFLAGS
    in its environment, as many packages were not setting them (as
    documented in 'Writing R Extensions' SS1.2).
    This has most effect where configure is used to compile parts of
    the package - most often by cmake or libtool which obfuscate the
    actual compile commands used.
    Also used for configure.win and configure.ucrt on Windows.
  FORTRAN FLAGS:
  * The flag -fno-optimize-sibling-calls is no longer forced for
    gfortran 7 and later.  It should no longer be needed now using
    'hidden' character-length arguments when calling BLAS/LAPACK
    routines from C/C++ is the default even for packages.  (Unless
    perhaps packages call Fortran code from C/C++ without using R's
    headers and without allowing for these arguments.)
  C-LEVEL FACILITIES:
  * The deprecated S-compatibility macros DOUBLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * The deprecated legacy typedefs of Sint and Sfloat in header R.h
    are no longer defined, and that header no longer includes header
    limits.h from C nor climits from C++.
  * New macro CAD5R() is provided in Rinternals.h and used in a few
    places in the R sources.
  * ALTREP now supports VECSXP vectors. Contributed by Gabor Csardi
    in PR#17620.
  * The Rcomplex definition (in header R_ext/Complex.h) has been
    extended to prevent possible mis-compilation when interfacing
    with Fortran (PR#18430).  The new definition causes compiler
    warnings with static initializers such as {1, 2}, which can be
    changed to {.r=1, .i=2}.
    Using the new definition from C++ depends on compiler extensions
    supporting C features that have not been incorporated into the
    C++ standards but are available in g++ and clang++: this may
    result in C++ compiler warnings but these have been worked around
    for recent versions of common compilers (GCC, Apple/LLVM clang,
    Intel).
    It is intended to change the inclusion of header R_ext/Complex.h
    by other R headers, so C/C++ code files which make use of
    Rcomplex should include that header explicitly.
  UTILITIES:
  * R CMD check does more checking of package .Rd files, warning
    about invalid email addresses and (some) invalid URIs and noting
    empty \item labels in description lists.
  * R CMD check now also reports problems when reading package news
    in md (file NEWS.md) and (optionally) plain text (file NEWS)
    formats.
  * _R_CHECK_TIMINGS_ defaults to a value from the environment even
    for R CMD check --as-cran; this allows for exceptionally fast or
    slow platforms.
    It now applies to checking PDF and HTML versions of the manuals,
    and 'checking CRAN incoming feasibility'.
  * R CMD check can optionally (but included in --as-cran) check
    whether HTML math rendering _via_ KaTeX works for the package .Rd
    files.
  * Non-interactive debugger invocations can be trapped by setting
    the environment variable _R_CHECK_BROWSER_NONINTERACTIVE_ to a
    true value.  This is enabled by R CMD check --as-cran to detect
    the use of leftover browser() statements in the package.
  * The use of sprintf and vsprintf from C/C++ has been deprecated in
    macOS 13 and is a known security risk.  R CMD check now reports
    (on all platforms) if their use is found in compiled code:
    replace by snprintf or vsnprintf respectively. [*NB:* whether
    such calls get compiled into the package is platform-dependent.]
  * Where recorded at installation, R CMD check reports the C and
    Fortran compilers used to build R.
    It reports the OS in use (if known, as given by osVersion) as
    well as that R was built for.
    It notes if a C++ standard was specified which is older than the
    current default: many packages have used C++11 to mean 'not
    C++98' - as C++11 is the minimum supported since R 4.0.0, that
    specification can probably be removed.
  * R CMD INSTALL reports the compilers (and on macOS, the SDK) used,
    and this is copied to the output of R CMD check.
    Where a C++ standard is specified, it is reported.
  * R CMD check's 'checking compilation flags in Makevars' has been
    relaxed to accept the use of flags such as -std=f2008 in
    PKG_FFLAGS.
  * tools::buildVignettes() has a new argument skip, which is used by
    R CMD check to skip (and note) vignettes with unavailable
    \VignetteDepends (PR#18318).
  * New generic .AtNames() added to enable class-specific completions
    after @. The formerly internal function findMatches() is now
    exported, mainly for use in methods for .DollarNames() and
    .AtNames().
  DEPRECATED AND DEFUNCT:
  * default.stringsAsFactors() is defunct.
  * Calling as.data.frame.&lt;class&gt;() directly (for 12 atomic classes)
    is going to be formally deprecated, currently activated by
    setting the environment variable
    _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ to non-empty, which also
    happens in R CMD check --as-cran.
  BUG FIXES:
  * Hashed environments with sizes less than 5 can now grow.
    (Reported to R-devel by Duncan Garmonsway.)
  * as.character(&lt;Rd&gt;, deparse = TRUE) failed to re-escape curly
    braces in LaTeX-like text.  (Reported by Hadley Wickham in
    PR#18324.)
  * library() now passes its lib.loc argument when requiring Depends
    packages; reported (with fix) in PR#18331 by Mikael Jagan.
  * R CMD Stangle: improved message about 'Output' files.
  * head(x, n) and tail(x, n) now signal an error if n is not
    numeric, instead of incidentally "working" sometimes returning
    all of x.  Reported and discussed by Colin Fay, in PR#18357.
  * The "lm" method for summary() now gives the correct F-statistic
    when the model contains an offset.  Reported in PR#18008.
  * C() and `contrasts&lt;-`() now preserve factor level names when
    given a function object (as opposed a function name which did
    preserve names). Reported in PR#17616.
  * c(a = 1, 2)[[]] no longer matches 2 but rather signals a
    _classed_ error.  Reported and analysed by Davis Vaughan in
    PR#18367, a duplicate of PR#18004, by Jan Meis et al.  For
    consistency, NULL[[]] is also erroneous now.  x[[]] &lt;- v gives an
    error of the same class "MissingSubscriptError".
  * The relist() function of utils now supports NULL elements in the
    skeleton (PR#15854).
  * ordered(levels = *) (missing x) now works analogously to factor(,
    ordered=TRUE); reported (with fix) by Achim Zeileis in PR#18389.
  * User-defined Rd macro definitions can now span multiple lines,
    thanks to a patch from Duncan Murdoch. Previously, the Rd parser
    silently ignored everything after the first line.
  * Plain-text help (tools::Rd2txt()) now preserves an initial blank
    line for text following description list items.
  * tools::Rd2HTML() and tools::Rd2latex() no longer split \arguments
    and \value lists at Rd comments.
  * tools::Rd2latex() now correctly handles optional text outside
    \items of argument lists as well as bracketed text at the
    beginning of sections, e.g., \value{[NULL]}.
  * as.character(&lt;POSIXt&gt;) now behaves more in line with the methods
    for atomic vectors such as numbers, and is no longer influenced
    by options().  Ditto for as.character(&lt;Date&gt;).  The
    as.character() method gets arguments digits and OutDec with
    defaults _not_ depending on options().  Use of as.character(*,
    format = .) now warns.
  * Similarly, the as.character.hexmode() and *.octmode() methods
    also behave as good citizen methods and back compatibility option
    keepStr = TRUE.
  * The as.POSIXlt(&lt;POSIXlt&gt;) and as.POSIXct(&lt;POSIXct&gt;) default
    methods now do obey their tz argument, also in this case.
  * as.POSIXlt(&lt;Date&gt;) now does apply a tz (time zone) argument, as
    does as.POSIXct(); partly suggested by Roland Fuss on the R-devel
    mailing list.
  * as.Date.POSIXlt(x) now also works when the list components are of
    unequal length, aka "partially filled" or "ragged".
  * expand.model.frame() looked up variables in the wrong environment
    when applied to models fitted without data.  Reported in
    PR#18414.
  * time() now (also) uses the ts.eps = getOption("ts.eps") argument
    and thus by default rounds values very close to the start (or
    end) of a year.  Based on a proposal by Andre"i V. Kostyrka on
    R-help.
  * Printing of a factanal() result with just one factor and sort =
    TRUE now works regularly, fixing PR#17863 by Timothy Bates,
    thanks to the 'R Contributors' working group.
  * Printing 0-length objects of class "factor", "roman", "hexmode",
    "octmode", "person", "bibentry", or "citation" now prints
    something better, one of which fixes PR#18422, reported by
    Benjamin Feakins.
  * Sys.timezone() queries timedatectl only if systemd is loaded;
    addressing a report by Jan Gorecki in PR#17421.
  * The formula method of cor.test() had scoping problems when
    environment(formula) was not the calling environment; reported
    with a patch proposal by Mao Kobayashi in PR#18439.
  * attach() of an environment with active bindings now preserves the
    active bindings.  Reported by Kevin Ushey in PR#18425.
  * BLAS detection now works also with system-provided libraries not
    available as regular files.  This fixes detection of the
    Accelerate framework on macOS since Big Sur.  Reported by David
    Novgorodsky.
  * download.file() gives a helpful error message in case of an
    invalid download.file.method option, thanks to Colin Fay's report
    in PR#18455.
  * Sporadic crashes of Rterm when using completion have been fixed.
  * Rprof() is now more reliable.  A livelock in thread
    initialization with too short sampling interval has been fixed on
    macOS.  A deadlock in using the C runtime has been fixed on
    Windows.  A potential deadlock has been prevented on Unix.
  * Cursor placement in Rgui now works even after a fixed-width font
    is selected.
  * Mandatory options (options()) are now set on startup so that
    saving and restoring them always works (PR#18372).
  * Package installation, R CMD INSTALL or install.packages(*), now
    parses each of the &lt;pkg&gt;/R/*.R files individually instead of
    first concatenating and then parse()ing the large resulting file.
    This allows parser or syntax errors to be diagnosed with correct
    file names and line numbers, thanks to Simon Dedman's report and
    Bill Dunlap's patch in PR#17859.
    This _does_ require syntactically self contained R source files
    now, fixing another inadvertent bug.
  * predict.lm(&lt;model with offset&gt;) now finds the offset in the
    correct environment, thanks to Andr'e Gillibert's report and patch
    in PR#18456.
  * getInitial(&lt;formula&gt;) now finds the selfStart model in the
    correct environment.  (Reported by Ivan Krylov in PR#18368.)
  * Fix for possible segfault when using recently-added graphics
    features, such as gradients, clipping paths, masks, and groups
    with pdf(file=NULL).
  * class(m) &lt;- class(m) no longer changes a matrix m by adding a
    class _attribute_.
  * packageDate(pkg) now only warns once if there is no pkg.
  * When ts() creates a multivariate time series, "mts", it also
    inherits from "array" now, and is.mts() is documented _and_
    stricter.
  * Rd2txt() now preserves line breaks of \verb Rd content and from
    duplicated \cr.  The former also fixes the rendering of verbatim
    output from Rd \Sexpr in plain-text help.
  * uniroot(f, interval) should no longer wrongly converge _outside_
    the interval in some cases where abs(f(x)) == Inf for an x at the
    interval boundary, thanks to posts by Ben Bolker and Serguei
    Sokol on R-devel.
  * Vectorized alpha handling in palette functions such as in gray(),
    rainbow(), or hcl.colors() works correctly now, thanks to Achim
    Zeileis' report and patch in PR#18476.
  * Formatting and print()ing of bibentry objects has dropped the
    deprecated citation.bibtex.max argument, such that the bibtex
    argument's default for print.bibentry() depends directly on the
    citation.bibtex.max option, whereas in format.bibentry() the
    option no longer applies.
  * Attempting to use a character string naming a foreign function
    entry point in a foreign function call in a package will now
    signal an error if the packages has called R_forceSymbols to
    specify that symbols must be used.
  * An error in table() could permanently set options(warn=2)
    promoting all subsequent warnings to errors.
  * The sigma() function gave misleading results for binary GLMs.  A
    new method for objects of class "glm" returns the square root of
    the estimate of the dispersion parameter using the same
    calculation as summary.glm().
  * bs() and ns() in the (typical) case of automatic knot
    construction, when some of the supposedly inner knots coincide
    with boundary knots, now moves them inside (with a warning),
    building on PR#18442 by Ben Bolker.
  * R CMD on Windows now skips the site profile with --no-site-file
    and --vanilla even when R_PROFILE is set (PR#18512, from Kevin
    Ushey).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1686916800">- CHANGES IN R 4.3.1:
  C-LEVEL FACILITIES:
  * The C-level API version of R's integrate(), Rdqags() in Applic.h,
    now returns the correct number of integrand evaluations neval,
    fixing PR#18515 reported and diagnosed by Stephen Wade.
  * The C prototypes for LAPACK calls dspgv and dtptrs in
    R_exts/Lapack.h had one too many and one too few character length
    arguments - but this has not caused any known issues. To get the
    corrected prototypes, include
    [#]include &lt;Rconfig.h&gt; // for PR18534fixed
    [#]ifdef PR18534fixed
    [#] define usePR18534fix 1
    [#]endif
    [#]include &lt;R_exts/Lapack.h&gt;
    in your C/C++ code (PR#18534).
  INSTALLATION:
  * Many of the checks of esoteric Internet operations and those
    using unreliable external sites have been moved to a new target
    that is not run by default and primarily intended for the core
    developers.  To run them use
    cd tests; make test-Internet-dev
  BUG FIXES:
  * .S3methods(), typically called from methods(), again marks
    methods from package base as visible.
    Also, the visibility of non-base methods is again determined by
    the method's presence in search().
  * tools::Rdiff() is now more robust against invalid strings, fixing
    installation tests on Windows without Rtools installed
    (PR#18530).
  * Fix (new) bug in hcl.colors(2, *), by Achim Zeileis (PR#18523).
  * head(., &lt;illegal&gt;) and tail(..) now produce more useful "Error in
    ...." error messages, fixing PR#18362.
  * Package code syntax on Windows is checked in UTF-8 when UTF-8 is
    the native encoding.
  * na.contiguous(x) now also returns the first run, when it is at
    the beginning and there is a later one of the same length;
    reported to R-devel, including a fix, by Georgi Boshnakov.
    Further, by default, it modifies only an existing attr(*,"tsp")
    but otherwise no longer sets one.
  * chol(&lt;not pos.def&gt;, pivot = &lt;T|F&gt;) now gives a correct error or
    warning message (depending on pivot), thanks to Mikael Jagan's
    (PR#18541).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1699012800">- CHANGES IN R 4.3.2:
  NEW FEATURES:
  * The default initialization of the "repos" option from the
    repositories file at startup can be skipped by setting
    environment variable R_REPOSITORIES to NULL such that
    getOption("repos") is empty if not set elsewhere.
  * qr.X() is now an implicit S4 generic in methods.
  * iconv(to = "ASCII//TRANSLIT") is emulated using substitution on
    platforms which do not support it (notably Alpine Linux).  This
    should give a human-readable conversion in ASCII on all platforms
    (rather than NA_character_).
  * trans3d() gains options continuous and verbose addressing the
    problem of possible "wrap around" when projecting too long
    curves, as reported by Achim Zeileis in PR#18537.
  * tools::showNonASCII() has been rewritten to work better on macOS
    14 (which has a changed implementation of iconv()).
  * tiff(type = "quartz") (the default on macOS) now warns if
    compression is specified: it continues to be ignored.
  INSTALLATION on a UNIX-ALIKE:
  * There is some support for building with Intel's LLVM-based
    compilers on x86_64 Linux, such as (C) icx, (C++) ipcx and
    (Fortran) ifx from oneAPI 2023.x.y.
  * There is support for using LLVM's flang-new as the Fortran
    compiler from LLVM 16.0.x (preferably 17.0.0 or later).
  UTILITIES:
  * R CMD check reports the use of the Fortran 90 random number
    generator RANDOM_NUMBER() and the subroutines to initialize it.
    'Writing R Extensions' has example code to use R's RNGs from
    Fortran.
  BUG FIXES:
  * substr(x, n, L) &lt;- cc now works (more) correctly for multibyte
    UTF-8 strings x when L &gt; nchar(x), thanks to a report and patch
    by 'Architect 95'.
  * contrib.url(character()) now returns 0-length character() as
    documented, which also avoids spurious warnings from
    available.packages() et al. in the edge case of an empty vector
    of repository URLs.
  * readChar(., 4e8) no longer fails, thanks to Kodi Arfer's report
    (PR#18557).
  * lapply(&lt;list&gt;, as.data.frame) no longer warns falsely for some
    base vector components.
  * Communication between parent and child processes in the multicore
    part of parallel could fail on platforms that do not support an
    arbitrarily large payload in system functions read()/write() on
    pipes (seen on macOS where a restriction to INT_MAX bytes is
    documented, without doing a partial read unlike Linux). The
    payload is now split into 1Gb chunks to avoid that problem.
    (PR#18571)
  * qqplot(x,y, conf.level=.) gives better confidence bounds when
    length(x) != length(y), thanks to Alexander Ploner's report and
    patch proposal (PR#18557).
  * norm(&lt;0-length&gt;, "2") now gives zero instead of an error, as all
    the other norm types, thanks to Mikael Jagan's PR#18542.
  * Build-stage Rd macros \packageAuthor and \packageMaintainer now
    process Authors@R, fixing NA results when the package DESCRIPTION
    omits Author and Maintainer fields.
  * Formatting and printing complex numbers could give things like
    0.1683-0i because of rounding error: -0i is now replaced by +0i.
  * postscript() refused to accept a title comment containing the
    letter "W" (PR#18599).
  * isoreg(c(1,Inf)) signals an error instead of segfaulting, fixing
    PR#18603.
  * tiff(type = "Xlib") was only outputting the last page of
    multi-page plots.
  * tools::latexToUtf8() again knows about \~{n} and other letters
    with tilde, fixing a regression in R 4.3.0, and about \^{i} as an
    alternative to \^{\i} (similarly with other accents).
    Furthermore, LaTeX codes for accented I letters are now correctly
    converted, also fixing related mistakes in
    tools::encoded_text_to_latex().
  * tar(*, tar = "internal") no longer creates out-of-spec tar files
    in the very rare case of user or group names longer than 32
    bytes, fixing PR#17871 with thanks to Ivan Krylov.
  * When using the "internal" timezone datetime code, adding a
    fraction of a second no longer adds one second, fixing PR#16856
    from a patch by Ivan Krylov.
  * tools::checkRd() no longer produces spurious notes about
    "unnecessary braces" from multi-line Rd results of \Sexpr macros.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1709208000">- CHANGES IN R 4.3.3:
  NEW FEATURES:
  * iconv() now fixes up variant encoding names such as "utf8"
    case-insensitively.
  DEPRECATED AND DEFUNCT:
  * The legacy encoding = "MacRoman" is deprecated in pdf() and
    postscript(): support was incomplete in earlier versions of R.
  BUG FIXES:
  * Arguments are now properly forwarded to methods on S4 generics
    with ... in the middle of their formal arguments. This was broken
    for the case when a method introduced an argument but did not
    include ... in its own formals. Thanks to Herv'e Pag`es for the
    report PR#18538.
  * Some invalid file arguments to pictex(), postscript() and xfig()
    opened a file called NA rather than throw an error.  These
    included postscript(NULL) (which some people expected to work
    like pdf(NULL)).
  * Passing filename = NA to svg(), cairo_pdf(), cairo_ps() or the
    Cairo-based bitmap devices opened a file called NA: it now throws
    an error.
  * quartz(file = NA) opened a file called NA, including when used as
    a Quartz-based bitmap device.  It now gives an error.
  * rank(&lt;long vector&gt;) now works, fixing PR#18617, thanks to Ilia
    Kats.
  * seq.int() did not adequately check its length.out argument.
  * match(&lt;POSIXct&gt;, .) is correct again for differing time zones,
    ditto for "POSIXlt", fixing PR#18618 reported by Bastian Klein.
  * drop.terms(*, dropx = &lt;0-length&gt;) now works, fixing PR#18563 as
    proposed by Mikael Jagan.
  * drop.terms(*) keeps + offset(.) terms when it should, PR#18565,
    and drop.terms() no longer makes up a response, PR#18566, fixing
    both bugs thanks to Mikael Jagan.
  * getS3method("t", "test") no longer finds the t.test() function,
    fixing PR#18627.
  * pdf() and postscript() support for the documented Adobe encodings
    "Greek" and "Cyrilllic" was missing (although the corresponding
    Windows' codepages could be used).
  * Computations of glyph metric information for pdf() and
    postscript() did not take into account that transliteration could
    replace one character by two or more (only seen on macOS 14) and
    typically warned that the information was not known.
  * rank(x) no longer overflows during integer addition, when
    computing rank average for largish but not-yet long vector x,
    fixing PR#18630, thanks to Ilia Kats.
  * list.files() on Windows now returns also files with names longer
    that 260 bytes (the Windows limit is 260 characters).
    Previously, some file names particularly with 'East Asian'
    characters were omitted.
  * cov2cor(&lt;0 x 0&gt;) now works, fixing PR#18423 thanks to Mikael
    Jagan and Elin Waring.
  * cov2cor(&lt;negative diagonal&gt;) and similar now give one warning
    instead of two, with better wording, fixing PR#18424 thanks to
    Mikael Jagan.
  * tools:: startDynamicHelp() now ensures port is in proper range,
    fixing PR#18645.
  * pbeta(x, a,b) is correct now for x=0 or 1 in the boundary cases
    where a or b or both are 0, fixing PR#18672 thanks to Michael
    Fay.
  * pmatch(x, table) for large table, also called for data frame row
    selection, dfrm[nm, ], is now interruptible, fixing PR#18656.
  * predict(&lt;rank-deficient lm&gt;, newdata=*) fix computing of nbasis,
    see Russ Lenth's comment 29 in PR#16158.
  * Added a work-around for a bug in macOS 14.3.1 and higher which
    prevents R plots in the Quartz Cocoa device from updating on
    screen.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1713960000">- CHANGES IN R 4.4.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Startup banners, R --version, sessionInfo() and R CMD check no
    longer report (64-bit) as part of the platform as this is almost
    universal - the increasingly rare 32-bit platforms will still
    report (32-bit).
    On Windows, ditto for window titles.
  * is.atomic(NULL) now returns FALSE, as NULL is not an atomic
    vector.  Strict back-compatibility would replace is.atomic(foo)
    by (is.null(foo) || is.atomic(foo)) but should happen only
    sparingly.
  NEW FEATURES:
  * The confint() methods for "glm" and "nls" objects have been
    copied to the stats package.  Previously, they were stubs which
    called versions in package MASS. The MASS namespace is no longer
    loaded if you invoke (say) confint(glmfit).  Further, the "glm"
    method for profile() and the plot() and pairs() methods for class
    "profile" have been copied from MASS to stats.  (profile.nls()
    and plot.profile.nls() were already in stats.)
  * The confint() and profile methods for "glm" objects have gained a
    possibility to do profiling based on the Rao Score statistic in
    addition to the default Likelihood Ratio. This is controlled by a
    new test = argument.
  * The pairs() method for "profile" objects has been extended with a
    which = argument to allow plotting only a subset of the
    parameters.
  * The "glm" method for anova() computes test statistics and
    p-values by default, using a chi-squared test or an F test
    depending on whether the dispersion is fixed or free.  Test
    statistics can be suppressed by giving argument test a false
    logical value.
  * In setRepositories() the repositories can be set using their
    names via name = instead of index ind =.
  * methods() and .S3methods() gain a all.names option for the (rare)
    case where functions starting with a . should be included.
  * Serializations can now be interrupted (e.g., by Ctrl-C on a
    Unix-alike) if they take too long, e.g., from save.image(),
    thanks to suggestions by Ivan Krylov and others on R-devel.
  * New startup option --max-connections to set the maximum number of
    simultaneous connections for the session.  Defaults to 128 as
    before: allowed values up to 4096 (but resource limits may in
    practice restrict to smaller values).
  * R on Windows (since Windows 10 2004) now uses the new Segment
    Heap allocator. This may improve performance of some
    memory-intensive applications.
  * When R packages are built, typically by R CMD build &lt;pkg&gt;, the
    new --user=&lt;build_user&gt; option overrides the (internally
    determined) user name, currently Sys.info()["user"] or LOGNAME.
    This is a (modified) fulfillment of Will Landau's suggestion in
    PR#17530.
  * tools::testInstalledBasic() gets new optional arguments outDir
    and testSrcdir, e.g., allowing to use it in a &lt;builddir&gt; !=
    &lt;srcdir&gt; setup, and in standard "binary" Windows installation
  * if* a source tests/ folder is present.
  * range(&lt;DT_with_Inf&gt;, finite = TRUE) now work for objects of class
    "Date", "POSIXct", and "POSIXlt" with infinite entries,
    analogously to range.default(), as proposed by Davis Vaughan on
    R-devel.  Other range()-methods can make use of new function
    .rangeNum().
  * New .internalGenerics object complementing .S3PrimitiveGenerics,
    for documentation and low-level book-keeping.
  * grid() now invisibly returns the x- and y- coordinates at which
    the grid-lines were drawn.
  * norm(., type) now also works for complex matrices.
  * kappa(., exact = TRUE, norm = *) now works for all norms and also
    for complex matrices.  In symmetric / triangular cases, the new
    argument uplo = "U" | "L" allows the upper or lower triangular
    part to be specified.
  * memDecompress(type = "unknown") recognizes compression in the
    default 'zlib' format as used by memCompress(type = "gzip").
  * memCompress() and memDecompress() will use the libdeflate library
    (&lt;https://github.com/ebiggers/libdeflate&gt;) if installed.  This
    uses the same type of compression for type = "gzip" but is 1.5-2x
    faster than the system libz library on some common platforms: the
    speed-up may depend on the library version.
  * diff() for objects of class "Date", "POSIXct", and "POSIXlt"
    accepts a units argument passed via ....
  * Dynamic help now does a much better job of rendering package
    DESCRIPTION metadata.
  * Rprof() gains an event argument and support for elapsed (real)
    time profiling on Unix (PR#18076).
  * filled.contour() gains a key.border argument.
  * tools::update_pkg_po() gets arguments pot_make and mo_make for
    _not_ re-making the corresponding files, and additionally a
    verbose argument.
  * Hexadecimal string colour specifications are now accepted in
    short form, so, for example, we can use "#123", which is
    equivalent to "#112233".
    Thanks to MikeFC for the original idea and Ella Kaye, Malcolm
    Barrett, George Stagg, and Hanne Oberman for the patch.
  * Plain-text help shows \var markup by angle brackets.
  * The new experimental primitive function declare() is intended to
    eventually allow information about R code to be communicated to
    the interpreter, compiler, and code analysis tools. The syntax
    for declarations is still being developed.
  * Functions psmirnov(), qsmirnov() and rsmirnov() in package stats
    have had argument two.sided renamed to alternative, to take into
    account that the permutation distributions of the one-sided
    statistics can be different in the case of ties.  Consequence of
    PR#18582.
  * sort() is now an implicit S4 generic in methods.
  * Formatting and printing, format(z), print(z), of complex vectors
    z no longer zap relatively small real or imaginary parts to zero,
    fixing PR#16752.  This is an API change, as it was documented
    previously to round real and imaginary parts together on purpose,
    producing nicer looking output.  As mentioned, e.g. in the PR,
    this change is compatible with many other "R-like" programming
    environments.
    We have simplified the internal code and now basically format the
    real and imaginary parts independently of each other.
  * New experimental functions Tailcall() and Exec() to support
    writing stack-space-efficient recursive functions.
  * Where characters are attempted to be plotted by pdf(),
    postscript() and xfig() which are not in the selected 8-bit
    character set (most often Latin-1) and the R session is using a
    UTF-8 locale, the warning messages will show the UTF-8 character
    rather than its bytes and one dot will be substituted per
    character rather than per byte.  (Platforms whose iconv() does
    transliteration silently plot the transliteration.)
    In a UTF-8 locale some transliterations are now done with a
    warning (e.g., dashes and Unicode minus to hyphen, ligatures are
    expanded, permille (‰) is replaced by o/oo), although the OS may
    have got there first.  These are warnings as they will continue
    to be replaced by dots in earlier versions of R.
  * The matrix multiplication functions crossprod() and tcrossprod()
    are now also primitive and S3 generic, as %*% had become in R
    4.3.0.
  * source() and example() have a new optional argument catch.aborts
    which allows continued evaluation of the R code after an error.
  * The non-Quartz tiff() devices allow additional types of
    compression if supported by the platform's libtiff library.
  * The list of base and recommended package names is now provided by
    tools::standard_package_names().
  * cairo_pdf() and cairo_ps() default to onefile = TRUE to closer
    match pdf() and postscript().
  * New option catch.script.errors provides a documented way to catch
    errors and then continue in non-interactive use.
  * L %||% R newly in base is an expressive idiom for the phrases
    if(!is.null(L)) L else R or if(is.null(L)) R else L.
  * The return value from warnings() now always inherits from
    "warnings" as documented, now also in the case of no warnings
    where it previously returned NULL.
  * as.complex("1i") now returns 0 + 1i instead of NA with a warning.
  * z &lt;- c(NA, 1i) now keeps the imaginary part Im(z[1]) == 0, no
    longer coercing to NA_complex_.  Similarly, cumsum(z) correctly
    sums real and imaginary parts separately, i.e., without
    "crosstalk" in case of NAs.
  * On Alpine Linux iconv() now maps "latin2", "latin-2", "latin9"
    and "latin-9" to encoding names the OS knows about
    (case-insensitively).
  * iconv(sub = "Unicode") now always zero-pads to four (hex) digits,
    rather than to 4 or 8.  (This seems to have become the convention
    once Unicode restricted the number of Unicode points to 2^21 - 1
    and so will never need more than 6 digits.)
  * NCOL(NULL) now returns 0 instead of 1, for consistency with
    cbind().
  * The information for the Euro glyph missing from the Adobe .afm
    files for the Courier, Helvetica and Times families has been
    copied from their URW equivalents - this will improve vertical
    centring in the pdf() and postscript() devices.
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.12.0.  The changes are almost entirely cosmetic.
  * The included LAPACK sources have been updated to version 3.12.0
    and some further double-complex routines added.
  * There are new font families for the 2014--5 URW 2.0 fonts (see
    ?pdf) which are included in recent versions of Ghostscript.
    These have font widths for most Greek glyphs and a few others
    which were missing from the original versions (whose font
    families remain available for reproducibility, although
    Ghostscript-based viewers will render using the 2.0 versions).
  * Improve the large-n efficiency of as.matrix(&lt;dist&gt;), thanks an R
    contributors effort, notably by Tim Taylor and Heather Turner,
    see PR#18660.
  * The default and numeric methods of all.equal() get a check.class
    option.
  * zapsmall() gets new optional arguments, function mFUN and min.d,
    for extra flexibility; fulfills a wish in PR#18199.  Also, it is
    now an implicit S4 generic in package methods.
  * The Rd filter for aspell() gains an ignore argument.
  * New generic function sort_by(), primarily useful for the
    data.frame method which can be used to sort rows of a data frame
    by one or more columns.
  * The icence headers for the RPC code in src/extra/xdr have been
    updated to use the GPL-compatible licence published by Oracle
    America in 2010.
  * New function pkg2HTML() in tools to create single-page HTML
    reference manuals for R packages.
  * The byte code evaluator now uses less C stack space for recursive
    calls to byte-compiled functions. It also makes more of an effort
    to avoid allocations for scalar return values.
  * New completion option backtick (disabled by default) allows
    non-syntactic completions to be wrapped in backquotes. This is
    currently only useful for Jupyter notebooks via the IRkernel
    package, and may cause problems for other backends.
  INSTALLATION:
  * The parser has been updated to work with bison 3.8.2, which is
    now used for the pre-generated parsers in gram.c, file.c, and
    gramRd.c. A few parser error messages have changed, which may
    affect code that relies on exact messages.
  INSTALLATION on a UNIX-ALIKE:
  * System valgrind headers are now required to use configure option
  - -with-valgrind-instrumentation with value 1 or 2.
  * configure will warn if it encounters a 32-bit build, as that is
    nowadays almost untested.
  * Environment variable R_SYSTEM_ABI is no longer used and so no
    longer recorded in etc/Renviron (it was not on Windows and was
    only ever used when preparing package tools).
  * If the libdeflate library and headers are available, libdeflate
    rather than libz is used to (de)compress R objects in lazy-load
    databases.  Typically tasks spend up to 5% of their time on such
    operations, although creating lazy-data databases is one of the
    exceptions.
    This can be suppressed if the library is available by the
    configure option --without-libdeflate-compression.
  * configure option --enable-lto=check has not worked reliably since
    2019 and has been removed.
  * The minimum autoconf requirement for a maintainer build has been
    increased to autoconf 2.71.
    It is intended to increase this to 2.72 for R 4.5.0: the
    distributed configure file was generated using 2.72.
  * The minimum version requirement for an external LAPACK has been
    reduced to 3.9.0.
  * No default C++ compiler is set if no C++17 compiler is detected:
    there is no longer an automatic fallback to C++14 or C++11.
    Compilers from the last five years should have sufficient
    support: for others macros CXX and CXXSTD can be set in file
    config.site to provide a fallback if needed.
    The Objective-C++ compiler now by default uses the standard
    selected by R for C++ (currently C++17) rather than the default
    standard for the C++ compiler (which on macOS is still C++98).
  INSTALLATION on macOS:
  * A new configure option --with-newAccelerate makes use of Apple's
    'new' BLAS / LAPACK interfaces in their Accelerate framework.
    Those interfaces are only available in macOS 13.3 or later, and
    building requires SDK 13.3 or later (from the Command Line Tools
    or Xcode 14.3 or later).
    By default the option uses new Accelerate for BLAS calls: to also
    use it for LAPACK use option --with-newAccelerate=lapack.  The
    later interfaces provide LAPACK 3.9.1 rather than 3.2.1: 3.9.1 is
    from 2021-04 and does not include the improved algorithms
    introduced in LAPACK 3.10.0 (including for BLAS calls).
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools44, an update of the Rtools43 toolchain.  It is
    based on GCC 13 and newer versions of MinGW-W64, binutils and
    libraries (targeting 64-bit Intel CPUs).  R-devel can no longer
    be built using Rtools43 without changes.
  * Rtools44 has experimental support for 64-bit ARM (aarch64) CPUs
    _via_ the LLVM 17 toolchain using lld, clang/flang-new and
    libc++.
  UTILITIES:
  * R CMD check notes when S4-style exports are used without
    declaring a strong dependence on package methods.
  * tools::checkRd() (used by R CMD check) detects more problems with
    \Sexpr-based dynamic content, including bad nesting of \Sexprs
    and invalid arguments.
  * tools::checkRd() now reports Rd titles and section names ending
    in a period; this is ignored by R CMD check unless environment
    variable _R_CHECK_RD_CHECKRD_MINLEVEL_ is set to -5 or smaller.
  * R CMD check now notes Rd files without an \alias, as long
    documented in 'Writing R Extensions' §1.3.1.  The check for a
    missing \description has been moved from tools::checkRd() to
    tools::checkRdContents().
  * R CMD check now visits inst/NEWS.Rd and OS-specific man
    subdirectories when checking Rd files.
  * tools::checkDocFiles() and tools::checkRdContents() now also
    check internal Rd files by default, but "specially" (ignoring
    missing documentation of arguments).
  * R CMD Rdiff gets option --useEx.
  * R CMD check now warns on non-portable uses of Fortran KIND such
    as INTEGER(KIND=4) and REAL(KIND=8).
    To see the failing lines set environment variable
    _R_CHECK_FORTRAN_KIND_DETAILS_ to a true value.
  * When checking Rd files, R CMD check now notes some of the "lost
    braces" that tools::checkRd() finds.  Typical problems are Rd
    macros missing the initial backslash (e.g., code{...}), in-text
    set notation (e.g., {1, 2}, where the braces need escaping), and
    \itemize lists with \describe-style entries of the form
    \item{label}{description}.
  * R CMD INSTALL (and hence check) will compile C++ code with
  - DR_NO_REMAP if environment variable _R_CXX_USE_NO_REMAP_ is set
    to a true value.  It is planned that this will in future become
    the default for compiling C++.
  * The new built-in Rd macro \dontdiff{} can be used to mark example
    code whose output should be ignored when comparing check output
    to reference output (tests/Examples/&lt;pkg&gt;-Ex.Rout.save).  The
    \dontdiff tag, like \donttest, is _not_ shown on the rendered
    help page, so provides a clean alternative to ##
    IGNORE_RDIFF_(BEGIN|END) comments.
  * R CMD build when there is no NAMESPACE, now uses the recommended
    exportPattern("^[^.]"), instead of exporting everything.
  * R CMD check now warns about non-ASCII characters in the NAMESPACE
    file (in addition to R files). Such packages are not portable and
    may fail to install on some platforms.
  C-LEVEL FACILITIES:
  * Headers R_ext/Applic.h and R-ext/Linpack.h used to include
    R_ext/BLAS.h although this was undocumented and unneeded by their
    documented entry points.  They no longer do so.
  * New function R_missing(), factored out from do_missing(), used to
    fix PR#18579.
  * SEXP type S4SXP has been renamed to OBJSXP to support
    experimenting with alternative object systems.  The S4SXP value
    can still be used in C code but is now deprecated.  Based on
    contributions from the R Consortium's Object-Oriented Programming
    Working Group.
  * New function pow1p(x,y) for accurate (1+x)^y.
  * mkCharLenCE was incorrectly documented to take a size_t length
    but was implemented with int (and character strings in R are
    limited to 2^31 - 1 bytes).
  DEPRECATED AND DEFUNCT:
  * data() no longer handles zipped data from long-defunct (since R
    2.13.0) --use-zip-data installations.
  * The legacy graphics devices pictex() and xfig() are now
    deprecated.  They do not support recent graphics enhancements and
    their font handling is rudimentary. The intention is to retain
    them for historical interest as long as they remain somewhat
    functional.
  * Support for encoding = "MacRoman" has been removed from the pdf()
    and postscript() devices - this was a legacy encoding supporting
    classic macOS up to 2001 and no longer has universal libiconv
    support.
  * is.R() is deprecated as no other S dialect is known to be in use
    (and this could only identify historical dialects, not future
    ones).
    Further information on calls can be obtained by setting the
    environment variable _R_DEPRECATED_IS_R_ to error which turns the
    deprecation warning into an error and so by default gives a
    traceback.  (This is done by R CMD check --as-cran.)
  * UseMethod() no longer forwards local variables assigned in the
    generic function into method call environments before evaluating
    the method body. This makes method calls behave more like
    standard function calls and makes method code easier to analyze
    correctly.
  * The twelve as.data.frame.&lt;class&gt;() methods which were deprecated
    only via _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ and in R CMD
    check --as-cran are formally deprecated now in favour of calling
    as.data.frame() or as.data.frame.vector().  The deprecation
    "check" now works also when as.data.frame() is S4 generic thanks
    to Ivan Krylov.
  * The default method for the directional comparison operators &lt;, &gt;,
    &lt;=, and &gt;= now signals an error when one of the operands is a
    language object, i.e. a symbol or a call.
  * For terms.formula(), deprecate abb and neg.out arguments
    _formally_ in addition to just documenting it.
  BUG FIXES:
  * The methods package is more robust to not being attached to the
    search path.  More work needs to be done.
  * pairwise.t.test() misbehaved when subgroups had 0 DF for
    variance, even with pool.sd = TRUE.  (PR#18594 by Jack Berry).
  * Probability distribution functions [dpq]&lt;distrib&gt;(x, *), but also
    bessel[IKJY](x, .) now consistently preserve attributes(x) when
    length(x) == 0, e.g., for a 2 x 0 matrix, thanks to Karolis
    Koncevičius' report PR#18509.
  * Group "Summary" computations such as sum(1:3, 4, na.rm = 5, NA,
    7, na.rm = LL) now give an error instead of either 17 or NN for
    LL true or false, as proposed by Ivan Krylov on the R-devel
    mailing list.  (This also means it is now an error to specify
    na.rm more than once.)
  * as.complex(x) now returns complex(real = x, imaginary = 0) for
    _all_ numerical and logical x, notably also for NA or
    NA_integer_.
  * Directories are now omitted by file.copy(, recursive = FALSE) and
    in file.append() (PR#17337).
  * gsub() and sub() are now more robust to integer overflow when
    reporting errors caused by too large input strings (PR#18346).
  * Top-level handlers are now more robust to attempts to remove a
    handler whilst handlers are running (PR#18508).
  * The handling of Alt+F4 in dialogs created on Windows using
    GraphApp has been fixed (PR#13870).
  * density() more consistently computes grid values for the
    FFT-based convolution, following Robert Schlicht's analysis and
    proposal in PR#18337, correcting density values typically by a
    factor of about 0.999.  Argument old.coords = TRUE provides back
    compatibility.
  * palette.colors() gains a name argument that defaults to FALSE
    controlling whether the vector of colours that is returned has
    names (where possible).  PR#18529.
  * tools::xgettext() no longer extracts the (non-translatable) class
    names from warningCondition and errorCondition calls.
  * S3method(&lt;gen&gt;, &lt;class&gt;, &lt;func&gt;) in the NAMESPACE file now works
    (again) when &lt;func&gt; is visible from the namespace, e.g.,
    imported, or in base.
  * getParseData(f) now also works for a function defined in the
    first of several &lt;pkg&gt;/R/*.R source files, thanks to Kirill
    Müller's report and Duncan Murdoch's patch in PR#16756.
  * Rd \Sexpr macros with nested #ifdef conditionals were not
    processed.
  * A non-blocking connection with non-default encoding (such as a
    socket) now correctly returns from readLines() after new data has
    arrived also when its EOF had been reached previously.  Thanks to
    Peter Meilstrup's report on R-devel and Ivan Krylov's report and
    patch proposal in PR#18555.
  * tools::checkRdContents() failed to detect empty argument
    descriptions when they spanned multiple lines, including those
    generated by prompt().  These cases are now noted by R CMD check.
  * Plain-text help no longer outputs spurious colons in the
    arguments list (for multi-line \item labels in the Rd source).
  * kappa() and rcond() work correctly in more cases; kappa(., norm =
    "2") now warns that it computes the 1-norm with (default) exact =
    FALSE; prompted by Mikael Jagan's quite comprehensive PR#18543.
  * Rd skeletons generated by prompt() or promptData() now use a
    dummy title (so R CMD build works).  tools::checkRdContents() has
    been updated to detect such template leftovers, including from
    promptPackage().
  * When S4 method dispatch fails because no method was found, the
    error message now includes the signature argument names; thanks
    to Michael Chirico's proposal on the R-devel list.
  * withAutoprint({ .. }) now preserves srcrefs previously lost,
    thanks to Andrew Simmons' report plus fix in PR#18572.
  * transform.data.frame() no longer adjusts names; in particular,
    untransformed variables are kept as-is, including those with
    syntactically invalid names (PR#17890).
  * The keep.source option for Rd \Sexpr blocks is no longer ignored.
  * The formula methods for t.test() and wilcox.test() now catch when
    paired is passed, addressing PR#14359; use Pair(x1, x2) ~ 1 for a
    paired test.
  * The level reported in the browser prompt was often too large. It
    now shows the number of browser contexts on the stack.
  * For cbind() and rbind(), the optional deparse.level argument is
    now properly passed to methods, thanks to Mikael Jagan's PR#18579
    and comments there.
  * Some error and warning messages for large ('long vector')
    matrix(v, nr, nc) and dim(m) &lt;- d are now correct about sizes,
    using long long formatting, fixing PR#18612 (and more) reported
    by Mikael Jagan.
  * readChar(useBytes = TRUE) now terminates strings even when the
    underlying connection uses extra spaces in the input buffer.
    This fixes problems with extra garbage seen with gzip
    connections, PR#18605.
  * Named capture in PCRE regular expressions now works also with
    more than 127 named groups (PR#18588).
  * Datetime functions are now robust against long jumps when dealing
    with internal time zone changes.  This avoids confusing warnings
    about an invalid time zone, previously triggered by turning
    warnings into errors or handling them via tryCatch (PR#17966,
    PR#17780).
  * Datetime functions now restore even an empty TZ environment
    variable after internal time zone changes (PR#17724).  This makes
    results of datetime functions with this (typically unintentional)
    setting more predictable.
  * drop.terms(*) now drops response as by default, keep.response =
    FALSE, fixing PR#18564 thanks to Mikael Jagan.
  * dummy.coef(.) now also works for lm()-models with character
    categorical predictor variables rather than factor ones, fixing
    PR#18635 reported by Jinsong Zhao.
  * formals(f) &lt;- formals(f) now also works for a function w/o
    arguments and atomic _constant_ body(f).
  * Correct as.function(&lt;invalid list&gt;, .)'s error message.
  * removeSource() is yet more thorough in finding and removing
    "srcref" and the other source references from parsed R language
    chunks, fixing PR#18638 thanks to Andrew Simmons.
  * dgeom() is more accurate now, notably when its result is very
    small, fixing PR#18642 thanks to the proposal of Morten Welinder,
    also improving other instances where C level binom_raw(x, n, ..)
    has x == 0 or x== n.
  * warning() with options(warn = 1) has improved output for
    multi-line messages.
  * axis.Date() and axis.POSIXct() now respect the par("lab") setting
    for the number of pretty() intervals.
  * Comparisons for language objects (which are based on deparsing)
    are now more careful about using accurate deparsed results
    (PR#18676).
  * Plain-text help (Rd2txt) now correctly preserves blank lines
    following single-line \dontrun code.
  * &lt;POSIXlt&gt;[*] no longer sets wrong "balanced" attribute, fixing
    PR#18681 thanks to Mikael Jagan.
  * str(&lt;classed-call&gt;) now deparses the call as expected, fixing
    PR#18684, reported by Dave Slager.
  * In Rd examples, code following the closing brace of a \dontrun,
    \dontshow or \donttest tag on the same line is no longer skipped
    when R CMD check runs the examples.
  * as.data.frame(matrix(*, ncol=0)) now gets valid names() and
    colnames(); reported by Davis Vaughan on the R-devel list.
  * Internal Mathlib function stirlerr(n) is now almost fully
    (52-bit) accurate for all n &gt;= ~5.9 and more accurate also in the
    range 1 -- 5.9.  This entails small ("after 12th decimal")
    changes in density functions, e.g., dgamma() in _some_ regions of
    their support.  The fix was partly prompted by Morten Welinder's
    PR#18640.
  * Numbers like 9876543.2 are now considered non-integer by Mathlib
    internal R_nonint(), amending original fix of PR#15734.
  * Rd comment lines no longer cause broken paragraphs in the
    rendered PDF and plain-text help. In code blocks, pure comment
    lines (starting with %) no longer produce an empty line.
  * xtabs(Freq ~ .) now consistently defaults to na.action = na.pass,
    using na.rm = FALSE (added as an argument) when summing over Freq
    (PR#17770).
  * tools::testInstalledPackage() is no longer silent about failures
    from running examples or tests and its return code no longer
    ignores failures from checking vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1718366400">- CHANGES IN R 4.4.1:
  C-LEVEL FACILITIES:
  * Functions R_atof and R_strtod declared in header R_ext/Utils.h
    are now documented in 'Writing R Extensions' and so formally part
    of the API.
  * The non-API entry points Rf_setSVector, Rf_StringFalse,
    Rf_StringTrue and Rf_isBlankString have been added to those
    reported by R CMD check.
  * The new function Rf_allocLang is now available. This provides an
    alternative to the idiom of calling Rf_allocList followed by
    SET_TYPEOF.
  UTILITIES:
  * R CMD check now reports as warnings what gfortran calls 'Fortran
    2018 deleted features', all of which have long been marked as
    'obsolescent' and some of which were deleted in Fortran 2008 or
    earlier.  Fortran compilers are no longer required to support
    these.
  BUG FIXES:
  * as.numeric(), scan(), type.convert() and other places which use
    the internal C function R_strtod now require a _non-empty_ digit
    sequence in a decimal or binary exponent.  This aligns with the
    C/POSIX standard for strtod and with ?NumericConstants.
  * as.data.frame(m, make.names=NA) now works correctly for a matrix
    m with NA's in row names.
  * The error message from &lt;POSIXlt&gt;[["hour"]] and similar now
    mentions *[[, "hour"]], as wished for in PR#17409 and proposed by
    Michael Chirico.
  * qbinom() and potentially qpois(), qnbinom(), no longer sometimes
    fail accurate inversion (of pbinom(), etc), thanks to Christopher
    Chang's report and patch in PR#18711.
  * The internal help server on Windows can again serve requests sent
    in quick succession, fixing a regression in R 4.4.0.
  * debugcall(&lt;S3Generic&gt;()) now also works when a corresponding
    S4-generic version is in the methods cache (PR#18143).
  * Package tools' toTitleCase(ch0) now returns character(0) when ch0
    is of zero length; fixing PR#18724, reported by David Hugh Jones.
  * R CMD check is no longer broken (without a check result and no
    explanation in 00check.log) for a package which declares an
    invalid VignetteBuilder in DESCRIPTION but has no vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1730376000">- CHANGES IN R 4.4.2:
  C-LEVEL FACILITIES:
  * The S-compatibility macros F77_COM and F77_COMDECL defined in
    header R_ext/RS.h are deprecated and will be removed shortly.  We
    could find no record of their use.
  BUG FIXES:
  * Mathlib function lgammacor(x) no longer warns about underflow to
    zero for large x.
  * Text widths and heights were incorrectly reported by the Quartz
    device if the drawing context didn't exist yet (typically when
    drawing off-screen to a window that is yet to appear, see
    PR#18591).
  * The Quartz device could segfault in cases where paths with spaces
    are used in the new glyph drawing API.  Thanks to Tomek
    Gieorgijewski (PR#18758).
  * On macOS in R CRAN builds, it is again possible to read
    little-endian UTF-16 text with a BOM from a connection using
    encoding="UTF-16".  Users building R from source should avoid
    using the system libiconv in macOS 14.1 and later.
  * methods' internal .requirePackage() now re-enables primitive
    method dispatch when needed; thanks to Ivan Krylov for
    demystifying CRAN package check failures on the R-devel mailing
    list.</changelog>
</package>
<package pkgid="3d7a0e5dbe1481688ab615776677ab05892966eae1e3dc2c3e4564f01ba49f47b9a4b0b845d6f21b3d2a5dbfe670e7dbdf7cac895da8985b139f2525197ab136" name="R-utils" arch="i586">
  <version epoch="0" ver="4.4.2" rel="51.0.2.2.sr20241103"/>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1620302400">- To get in sync with d:l:R:autoCRAN the Matrix package's split
  in -devel was reversed.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339200">- improved spec file according to comments of dimstar in
  https://build.opensuse.org/request/show/892685</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339201">- CHANGES IN R 4.1.0:
  FUTURE DIRECTIONS:
  * It is planned that the 4.1.x series will be the last to support
    32-bit Windows, with production of binary packages for that
    series continuing until early 2023.
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Data set esoph in package datasets now provides the correct
    numbers of controls; previously it had the numbers of cases added
    to these.  (Reported by Alexander Fowler in PR#17964.)
  NEW FEATURES:
  * www.omegahat.net is no longer one of the repositories known by
    default to setRepositories().  (Nowadays it only provides source
    packages and is often unavailable.)
  * Function package_dependencies() (in package tools) can now use
    different dependency types for direct and recursive dependencies.
  * The checking of the size of tarball in R CMD check --as-cran
    &lt;pkg&gt; may be tweaked via the new environment variable
    _R_CHECK_CRAN_INCOMING_TARBALL_THRESHOLD_, as suggested in
    PR#17777 by Jan Gorecki.
  * Using c() to combine a factor with other factors now gives a
    factor, an ordered factor when combining ordered factors with
    identical levels.
  * apply() gains a simplify argument to allow disabling of
    simplification of results.
  * The format() method for class "ftable" gets a new option justify.
    (Suggested by Thomas Soeiro.)
  * New ...names() utility.  (Proposed by Neal Fultz in PR#17705.)
  * type.convert() now warns when its as.is argument is not
    specified, as the help file always said it _should_.  In that
    case, the default is changed to TRUE in line with its change in
    read.table() (related to stringsAsFactor) in R 4.0.0.
  * When printing list arrays, classed objects are now shown _via_
    their format() value if this is a short enough character string,
    or by giving the first elements of their class vector and their
    length.
  * capabilities() gets new entry "Rprof" which is TRUE when R has
    been configured with the equivalent of --enable-R-profiling (as
    it is by default).  (Related to Michael Orlitzky's report
    PR#17836.)
  * str(xS4) now also shows extraneous attributes of an S4 object
    xS4.
  * Rudimentary support for vi-style tags in rtags() and R CMD rtags
    has been added.  (Based on a patch from Neal Fultz in PR#17214.)
  * checkRdContents() is now exported from tools; it and also
    checkDocFiles() have a new option chkInternal allowing to check
    Rd files marked with keyword "internal" as well.  The latter can
    be activated for R CMD check via environment variable
    _R_CHECK_RD_INTERNAL_TOO_.
  * New functions numToBits() and numToInts() extend the raw
    conversion utilities to (double precision) numeric.
  * Functions URLencode() and URLdecode() in package utils now work
    on vectors of URIs.  (Based on patch from Bob Rudis submitted
    with PR#17873.)
  * path.expand() can expand ~user on most Unix-alikes even when
    readline is not in use.  It tries harder to expand ~, for example
    should environment variable HOME be unset.
  * For HTML help (both dynamic and static), Rd file links to help
    pages in external packages are now treated as references to
    topics rather than file names, and fall back to a file link only
    if the topic is not found in the target package. The earlier rule
    which prioritized file names over topics can be restored by
    setting the environment variable _R_HELP_LINKS_TO_TOPICS_ to a
    false value.
  * c() now removes NULL arguments before dispatching to methods,
    thus simplifying the implementation of c() methods, _but_ for
    back compatibility keeps NULL when it is the first argument.
    (From a report and patch proposal by Lionel Henry in PR#17900.)
  * Vectorize()'s result function's environment no longer keeps
    unneeded objects.
  * Function ...elt() now propagates visibility consistently with
    ..n.  (Thanks to Lionel Henry's PR#17905.)
  * capture.output() no longer uses non-standard evaluation to
    evaluate its arguments.  This makes evaluation of functions like
    parent.frame() more consistent.  (Thanks to Lionel Henry's
    PR#17907.)
  * packBits(bits, type="double") now works as inverse of
    numToBits().  (Thanks to Bill Dunlap's proposal in PR#17914.)
  * curlGetHeaders() has two new arguments, timeout to specify the
    timeout for that call (overriding getOption("timeout")) and TLS
    to specify the minimum TLS protocol version to be used for
    https:// URIs (_inter alia_ providing a means to check for sites
    using deprecated TLS versions 1.0 and 1.1).
  * For nls(), an optional constant scaleOffset may be added to the
    denominator of the relative offset convergence test for cases
    where the fit of a model is expected to be exact, thanks to a
    proposal by John Nash.  nls(*, trace=TRUE) now also shows the
    convergence criterion.
  * Numeric differentiation _via_ numericDeriv() gets new optional
    arguments eps and central, the latter for taking central divided
    differences.  The latter can be activated for nls() via
    nls.control(nDcentral = TRUE).
  * nls() now passes the trace and control arguments to getInitial(),
    notably for all self-starting models, so these can also be fit in
    zero-noise situations via a scaleOffset.  For this reason, the
    initial function of a selfStart model must now have ... in its
    argument list.
  * bquote(splice = TRUE) can now splice expression vectors with
    attributes: this makes it possible to splice the result of
    parse(keep.source = TRUE).  (Report and patch provided by Lionel
    Henry in PR#17869.)
  * textConnection() gets an optional name argument.
  * get(), exists(), and get0() now signal an error if the first
    argument has length greater than 1.  Previously additional
    elements were silently ignored.  (Suggested by Antoine Fabri on
    R-devel.)
  * R now provides a shorthand notation for creating functions, e.g.
    \(x) x + 1 is parsed as function(x) x + 1.
  * R now provides a simple native forward pipe syntax |&gt;.  The
    simple form of the forward pipe inserts the left-hand side as the
    first argument in the right-hand side call.  The pipe
    implementation as a syntax transformation was motivated by
    suggestions from Jim Hester and Lionel Henry.
  * all.equal(f, g) for functions now by default also compares their
    environment(.)s, notably via new all.equal method for class
    function.  Comparison of nls() fits, e.g., may now need
    all.equal(m1, m2, check.environment = FALSE).
  * .libPaths() gets a new option include.site, allowing to _not_
    include the site library.  (Thanks to Dario Strbenac's suggestion
    and Gabe Becker's PR#18016.)
  * Lithuanian translations are now available.  (Thanks to Rimantas
    Zakauskas.)
  * names() now works for DOTSXP objects.  On the other hand, in
    R-lang, the R language manual, we now warn against relying on the
    structure or even existence of such dot-dot-dot objects.
  * all.equal() no longer gives an error on DOTSXP objects.
  * capabilities("cairo") now applies only to the file-based devices
    as it is now possible (if very unusual) to build R with Cairo
    support for those but not for X11().
  * There is optional support for tracing the progress of
    loadNamespace() - see its help.
  * (Not Windows.)  l10n_info() reports an additional element, the
    name of the encoding as reported by the OS (which may differ from
    the encoding part (if any) of the result from
    Sys.getlocale("LC_CTYPE").
  * New function gregexec() which generalizes regexec() to find _all_
    disjoint matches and well as all substrings corresponding to
    parenthesized subexpressions of the given regular expression.
    (Contributed by Brodie Gaslam.)
  * New function charClass() in package utils to query the
    wide-character classification functions in use (such as
    iswprint).
  * The names of quantile()'s result no longer depend on the global
    getOption("digits"), but quantile() gets a new optional argument
    digits = 7 instead.
  * grep(), sub(), regexp and variants work considerably faster for
    long factors with few levels.  (Thanks to Michael Chirico's
    PR#18063.)
  * Provide grouping of x11() graphics windows within a window
    manager such as Gnome or Unity; thanks to a patch by Ivan Krylov
    posted to R-devel.
  * The split() method for class data.frame now allows the f argument
    to be specified as a formula.
  * sprintf now warns on arguments unused by the format string.
  * New palettes "Rocket" and "Mako" for hcl.colors() (approximating
    palettes of the same name from the 'viridisLite' package).
    Contributed by Achim Zeileis.
  * The base environment and its namespace are now locked (so one can
    no longer add bindings to these or remove from these).
  * Rterm handling of multi-byte characters has been improved,
    allowing use of such characters when supported by the current
    locale.
  * Rterm now accepts ALT+ +xxxxxxxx sequences to enter Unicode
    characters as hex digits.
  * Environment variable LC_ALL on Windows now takes precedence over
    LC_CTYPE and variables for other supported categories, matching
    the POSIX behaviour.
  * duplicated() and anyDuplicated() are now optimized for integer
    and real vectors that are known to be sorted via the ALTREP
    framework. Contributed by Gabriel Becker via PR#17993.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 14
    and so packages that provide graphics devices should be
    reinstalled.
  * Graphics devices should now specify deviceVersion to indicate
    what version of the graphics engine they support.
  * Graphics devices can now specify deviceClip.  If TRUE, the
    graphics engine will never perform any clipping of output itself.
    The clipping that the graphics engine does perform (for both
    canClip = TRUE and canClip = FALSE) has been improved to avoid
    producing unnecessary artifacts in clipped output.
  * The grid package now allows gpar(fill) to be a linearGradient(),
    a radialGradient(), or a pattern().  The viewport(clip) can now
    also be a grob, which defines a clipping path, and there is a new
    viewport(mask) that can also be a grob, which defines a mask.
    These new features are only supported so far on the Cairo-based
    graphics devices and on the pdf() device.
  * (Not Windows.)  A warning is given when a Cairo-based type is
    specified for a png(), jpeg(), tiff() or bmp() device but Cairo
    is unsupported (so type = "Xlib" is tried instead).
  * grSoftVersion() now reports the versions of FreeType and
    FontConfig if they are used directly (not _via_ Pango), as is
    most commonly done on macOS.
  C-LEVEL FACILITIES:
  * The _standalone_ libRmath math library and R's C API now provide
    log1pexp() again as documented, and gain log1mexp().
  INSTALLATION on a UNIX-ALIKE:
  * configure checks for a program pkgconf if program pkg-config is
    not found.  These are now only looked for on the path (like
    almost all other programs) so if needed specify a full path to
    the command in PKG_CONFIG, for example in file config.site.
  * C99 function iswblank is required - it was last seen missing ca
    2003 so the workaround has been removed.
  * There are new configure options --with-internal-iswxxxxx,
  - -with-internal-towlower and --with-internal-wcwidth which allows
    the system functions for wide-character classification,
    case-switching and width (wcwidth and wcswidth) to be replaced by
    internal ones.  The first has long been used on macOS, AIX (and
    Windows) but this enables it to be unselected there and selected
    for other platforms (it is the new default on Solaris).  The
    second is new in this version of R and is selected by default on
    macOS and Solaris.  The third has long been the default and
    remains so as it contains customizations for East Asian
    languages.
    System versions of these functions are often minimally
    implemented (sometimes only for ASCII characters) and may not
    cover the full range of Unicode points: for example Solaris (and
    Windows) only cover the Basic Multilingual Plane.
  * Cairo installations without X11 are more likely to be detected by
    configure, when the file-based Cairo graphics devices will be
    available but not X11(type = "cairo").
  * There is a new configure option --with-static-cairo which is the
    default on macOS.  This should be used when only static cairo
    (and where relevant, Pango) libraries are available.
  * Cairo-based graphics devices on platforms without Pango but with
    FreeType/FontConfig will make use of the latter for font
    selection.
  LINK-TIME OPTIMIZATION on a UNIX-ALIKE:
  * Configuring with flag --enable-lto=R now also uses LTO when
    installing the recommended packages.
  * R CMD INSTALL and R CMD SHLIB have a new flag --use-LTO to use
    LTO when compiling code, for use with R configured with
  - -enable-lto=R.  For R configured with --enable-lto, they have
    the new flag --no-use-LTO.
    Packages can opt in or out of LTO compilation _via_ a UseLTO
    field in the DESCRIPTION file.  (As usual this can be overridden
    by the command-line flags.)
  BUILDING R on Windows:
  * for GCC &gt;= 8, FC_LEN_T is defined in config.h and hence character
    lengths are passed from C to Fortran in _inter alia_ BLAS and
    LAPACK calls.
  * There is a new text file src/gnuwin32/README.compilation, which
    outlines how C/Fortran code compilation is organized and
    documents new features:
  * R can be built with Link-Time Optimization with a suitable
    compiler - doing so with GCC 9.2 showed several
    inconsistencies which have been corrected.
  * There is support for cross-compiling the C and Fortran code
    in R and standard packages on suitable (Linux) platforms.
    This is mainly intended to allow developers to test later
    versions of compilers - for example using GCC 9.2 or 10.x has
    detected issues that GCC 8.3 in Rtools40 does not.
  * There is experimental support for cross-building R packages
    with C, C++ and/or Fortran code.
  * The R installer can now be optionally built to support a single
    architecture (only 64-bit or only 32-bit).
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++14 where
    available (which it is on all currently checked platforms): if
    not (as before) C++11 is used if available otherwise C++ is not
    supported.
    Packages which specify C++11 will still be installed using C++11.
    C++14 compilers may give deprecation warnings, most often for
    std::random_shuffle (deprecated in C++14 and removed in C++17).
    Either specify C++11 (see 'Writing R Extensions') or modernize
    the code and if needed specify C++14.  The latter has been
    supported since R 3.4.0 so the package's DESCRIPTION would need
    to include something like
    Depends: R (&gt;= 3.4)
  PACKAGE INSTALLATION on Windows:
  * R CMD INSTALL and R CMD SHLIB make use of their flag --use-LTO
    when the LTO_OPT make macro is set in file etc/${R_ARCH}/Makeconf
    or in a personal/site Makevars file.  (For details see 'Writing R
    Extensions' SS4.5.)
    This provides a valuable check on code consistency.  It does work
    with GCC 8.3 as in Rtools40, but that does not detect everything
    the CRAN checks with current GCC do.
  PACKAGE INSTALLATION on macOS:
  * The default personal library directory on builds with
  - -enable-aqua (including CRAN builds) now differs by CPU type,
    one of
    ~/Library/R/x86_64/x.y/library
    ~/Library/R/arm64/x.y/library
    This uses the CPU type R (and hence the packages) were built for,
    so when a x86_64 build of R is run under Rosetta emulation on an
    arm64 Mac, the first is used.
  UTILITIES:
  * R CMD check can now scan package functions for bogus return
    statements, which were possibly intended as return() calls (wish
    of PR#17180, patch by Sebastian Meyer). This check can be
    activated via the new environment variable
    _R_CHECK_BOGUS_RETURN_, true for --as-cran.
  * R CMD build omits tarballs and binaries of previous builds from
    the top-level package directory.  (PR#17828, patch by Sebastian
    Meyer.)
  * R CMD check now runs sanity checks on the use of LazyData, for
    example that a data directory is present and that
    LazyDataCompression is not specified without LazyData and has a
    documented value.  For packages with large LazyData databases
    without specifying LazyDataCompression, there is a reference to
    the code given in 'Writing R Extensions' SS1.1.6 to test the
    choice of compression (as in all the CRAN packages tested a
    non-default method was preferred).
  * R CMD build removes LazyData and LazyDataCompression fields from
    the DESCRIPTION file of packages without a data directory.
  ENCODING-RELATED CHANGES:
  * The parser now treats \Unnnnnnnn escapes larger than the upper
    limit for Unicode points (\U10FFFF) as an error as they cannot be
    represented by valid UTF-8.
    Where such escapes are used for outputting non-printable
    (including unassigned) characters, 6 hex digits are used (rather
    than 8 with leading zeros).  For clarity, braces are used, for
    example \U{0effff}.
  * The parser now looks for non-ASCII spaces on Solaris (as
    previously on most other OSes).
  * There are warnings (including from the parser) on the use of
    unpaired surrogate Unicode points such as \uD834.  (These cannot
    be converted to valid UTF-8.)
  * Functions nchar(), tolower(), toupper() and chartr() and those
    using regular expressions have more support for inputs with a
    marked Latin-1 encoding.
  * The character-classification functions used (by default) to
    replace the system iswxxxxx functions on Windows, macOS and AIX
    have been updated to Unicode 13.0.0.
    The character-width tables have been updated to include new
    assignments in Unicode 13.0.0.
  * The code for evaluating default (extended) regular expressions
    now uses the same character-classification functions as the rest
    of R (previously they differed on Windows, macOS and AIX).
  * There is a build-time option to replace the system's
    wide-character wctrans C function by tables shipped with R: use
    configure option --with-internal-towlower or (on Windows)
  - DUSE_RI18N_CASE in CFLAGS when building R.  This may be needed
    to allow tolower() and toupper() to work with Unicode characters
    beyond the Basic Multilingual Plane where not supported by system
    functions (e.g. on Solaris where it is the new default).
  * R is more careful when truncating UTF-8 and other multi-byte
    strings that are too long to be printed, passed to the system or
    libraries or placed into an internal buffer.  Truncation will no
    longer produce incomplete multibyte characters.
  DEPRECATED AND DEFUNCT:
  * Function plclust() from the package stats and
    package.dependencies(), pkgDepends(), getDepList(),
    installFoundDepends(), and vignetteDepends() from package tools
    are defunct.
  * Defunct functions checkNEWS() and readNEWS() from package tools
    and CRAN.packages() from utils have been removed.
  * R CMD config CXXCPP is defunct (it was deprecated in R 3.6.2).
  * parallel::detectCores() drops support for Irix (retired in 2013).
  * The LINPACK argument to chol.default(), chol2inv(),
    solve.default() and svd() has been defunct since R 3.1.0.  It was
    silently ignored up to R 4.0.3 but now gives an error.
  * Subsetting/indexing, such as ddd[*] or ddd$x on a DOTSXP
    (dot-dot-dot) object ddd has been disabled; it worked by accident
    only and was undocumented.
  BUG FIXES:
  * Many more C-level allocations (mainly by malloc and strdup) are
    checked for success with suitable alternative actions.
  * Bug fix for replayPlot(); this was turning off graphics engine
    display list recording if a recorded plot was replayed in the
    same session.  The impact of the bug became visible if resize the
    device after replay OR if attempted another savePlot() after
    replay (empty display list means empty screen on resize or empty
    saved plot).
  * R CMD check etc now warn when a package exports non-existing S4
    classes or methods, also in case of no "methods" presence.
    (Reported by Alex Bertram; reproducible example and patch by
    Sebastian Meyer in PR#16662.)
  * boxplot() now also accepts calls for labels such as ylab, the
    same as plot().  (Reported by Marius Hofert.)
  * The help page for xtabs() now correctly states that addNA is
    setting na.action = na.pass among others.  (Reported as PR#17770
    by Thomas Soeiro.)
  * The R CMD check &lt;pkg&gt; gives a longer and more comprehensible
    message when DESCRIPTION misses dependencies, e.g., in Imports:.
    (Thanks to the contributors of PR#17179.)
  * update.default() now calls the generic update() on the formula to
    work correctly for models with extended formulas.  (As reported
    and suggested by Neal Fultz in PR#17865.)
  * The horizontal position of leaves in a dendrogram is now correct
    also with center = FALSE.  (PR#14938, patch from Sebastian
    Meyer.)
  * all.equal.POSIXt() no longer warns about and subsequently ignores
    inconsistent "tzone" attributes, but describes the difference in
    its return value (PR#17277).  This check can be disabled _via_
    the new argument check.tzone = FALSE as suggested by Sebastian
    Meyer.
  * as.POSIXct() now populates the "tzone" attribute from its tz
    argument when x is a logical vector consisting entirely of NA
    values.
  * x[[2^31]] &lt;- v now works.  (Thanks to the report and patch by
    Suharto Anggono in PR#17330.)
  * In log-scale graphics, axis() ticks and label positions are now
    computed more carefully and symmetrically in their range,
    typically providing _more_ ticks, fulfilling wishes in PR#17936.
    The change really corresponds to an improved axisTicks() (package
    grDevices), potentially influencing grid and lattice, for
    example.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now correct to at
    least five digits where it was catastrophically wrong,
    previously.
  * sum(df) and similar "Summary"- and "Math"-group member functions
    now work for data frames df with logical columns, notably also of
    zero rows.  (Reported to R-devel by Martin "b706".)
  * unsplit() had trouble with tibbles due to unsound use of rep(NA,
    len)-indexing, which should use NA_integer_ (Reported to R-devel
    by Mario Annau.)
  * pnorm(x, log.p = TRUE) underflows to -Inf slightly later.
  * show(&lt;hidden S4 generic&gt;) prints better and without quotes for
    non-hidden S4 generics.
  * read.table() and relatives treated an "NA" column name as missing
    when check.names = FALSE PR#18007.
  * Parsing strings containing UTF-16 surrogate pairs such as
    "\uD834\uDD1E" works better on some (uncommon) platforms.
    sprintf("%X", utf8ToInt("\uD834\uDD1E")) should now give "1D11E"
    on all platforms.
  * identical(x,y) is no longer true for differing DOTSXP objects,
    fixing PR#18032.
  * str() now works correctly for DOTSXP and related exotics, even
    when these are doomed.
    Additionally, it no longer fails for lists with a class and
    "irregular" method definitions such that e.g. lapply(*) will
    necessarily fail, as currently for different igraph objects.
  * Too long lines in environment files (e.g. Renviron) no longer
    crash R. This limit has been increased to 100,000 bytes.
    (PR#18001.)
  * There is a further workaround for FreeType giving incorrect
    italic font faces with cairo-based graphics devices on macOS.
  * add_datalist(*, force = TRUE) (from package tools) now actually
    updates an existing data/datalist file for new content.  (Thanks
    to a report and patch by Sebastian Meyer in PR#18048.)
  * cut.Date() and cut.POSIXt() could produce an empty last interval
    for breaks = "months" or breaks = "years".  (Reported as PR#18053
    by Christopher Carbone.)
  * Detection of the encoding of 'regular' macOS locales such as
    en_US (which is UTF-8) had been broken by a macOS change:
    fortunately these are now rarely used with en_US.UTF-8 being
    preferred.
  * sub() and gsub(pattern, repl, x, *) now keep attributes of x such
    as names() also when pattern is NA (PR#18079).
  * Time differences ("difftime" objects) get a replacement and a
    rep() method to keep "units" consistent.  (Thanks to a report and
    patch by Nicolas Bennett in PR#18066.)
  * The \RdOpts macro, setting defaults for \Sexpr options in an Rd
    file, had been ineffective since R 2.12.0: it now works again.
    (Thanks to a report and patch by Sebastian Meyer in PR#18073.)
  * mclapply and pvec no longer accidentally terminate parallel
    processes started before by mcparallel or related calls in
    package parallel (PR#18078).
  * grep and other functions for evaluating (extended) regular
    expressions handle in Unicode also strings not explicitly flagged
    UTF-8, but flagged native when running in UTF-8 locale.
  * Fixed a crash in fifo implementation on Windows (PR#18031).
  * Binary mode in fifo on Windows is now properly detected from
    argument open (PR#15600, PR#18031).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1622808000">- The line %{__install} -m 755 -d %{_infodir}
  no longer works in TW or Factory.
  But without that line it works everywhere. So this instruction
  was commented out of the spec file.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1628596800">- CHANGES IN R 4.1.1:
  NEW FEATURES:
  * require(pkg, quietly = TRUE) is quieter and in particular does
    not warn if the package is not found.
  DEPRECATED AND DEFUNCT:
  * Use of ftp:// URIs should be regarded as deprecated, with
    on-going support confined to method = "libcurl" and not routinely
    tested.  (Nowadays no major browser supports them.)
  * The non-default method = "internal" is deprecated for http:// and
    ftp:// URIs for both download.file and url.
  * On Windows, method = "wininet" is deprecated for http://,
    https:// and ftp:// URIs for both download.file and url.  (A
    warning is only given for ftp://.)
    For ftp:// URIs the default method is now "libcurl" if available
    (which it is on CRAN builds).
    method = "wininet" remains the default for http:// and https://
    URIs but if libcurl is available, using method = "libcurl" is
    preferred.
  INSTALLATION:
  * make check now works also without a LaTeX installation.  (Thanks
    to Sebastian Meyer's PR#18103.)
  BUG FIXES:
  * make check-devel works again in an R build configured with
  - -without-recommended-packages.
  * qnbinom(p, size, mu) for large size/mu is correct now in a range
    of cases (PR#18095); similarly for the (size, prob)
    parametrization of the negative binomial.  Also qpois() and
    qbinom() are better and or faster for extreme cases.  The
    underlying C code has been modularized and is common to all four
    cases of discrete distributions.
  * gap.axis is now part of the axis() arguments which are passed
    from bxp(), and hence boxplot().  (Thanks to Martin Smith's
    report and suggestions in PR#18109.)
  * .First and .Last can again be set from the site profile.
  * seq.int(from, to, *) and seq.default(..) now work better in large
    range cases where from-to is infinite where the two boundaries
    are finite.
  * all.equal(x,y) now returns TRUE correctly also when several
    entries of abs(x) and abs(y) are close to .Machine$double.xmax,
    the largest finite numeric.
  * model.frame() now clears the object bit when removing the class
    attribute of a value via na.action (PR#18100).
  * charClass() now works with multi-character strings on Windows
    (PR#18104, fixed by Bill Dunlap).
  * encodeString() on Solaris now works again in Latin-1 encoding on
    characters represented differently in UTF-8.  Support for
    surrogate pairs on Solaris has been improved.
  * file.show() on Windows now works with non-ASCII path names
    representable in the current native encoding (PR#18132).
  * Embedded R on Windows can now find R home directory via the
    registry even when installed only for the current user
    (PR#18135).
  * pretty(x) with finite x now returns finite values also in the
    case where the extreme x values are close in size to the maximal
    representable number .Machine$double.xmax.
    Also, it's been tweaked for very small ranges and when a boundary
    is close (or equal) to zero; e.g., pretty(c(0,1e-317)) no longer
    has negative numbers, currently still warning about a very small
    range, and pretty(2^-(1024 - 2^-1/(c(24,10)))) is more accurate.
  * The error message for not finding vignette files when weaving has
    correct file sizes now. (Thanks to Sebastian Meyer's PR#18154.)
  * dnbinom(20, &lt;large&gt;, 1) now correctly gives 0, and similar cases
    are more accurate with underflow precaution.  (Reported by Francisco Vera Alcivar in PR#18072.)</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635163200">- repaired https://bugzilla.suse.com/show_bug.cgi?id=1191380
  (rpmacros now go to rpmmacrodir)
- minor clean-ups in spec file</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635768000">- CHANGES IN R 4.1.2:
  C-LEVEL FACILITIES:
  * The workaround in headers R.h and Rmath.h (using namespace std;)
    for the Oracle Developer Studio compiler is no longer needed now
    C++11 is required so has been removed.  A couple more usages of
    log() (which should have been std::log()) with an int argument
    are reported on Solaris.
  * The undocumented limit of 4095 bytes on messages from the
    S-compatibility macros PROBLEM and MESSAGE is now documented and
    longer messages will be silently truncated rather than
    potentially causing segfaults.
  * If the R_NO_SEGV_HANDLER environment variable is non-empty, the
    signal handler for SEGV/ILL/BUS signals (which offers recovery
    user interface) is not set. This allows more reliable debugging
    of crashes that involve the console.
  DEPRECATED AND DEFUNCT:
  * The legacy S-compatibility macros PROBLEM, MESSAGE, ERROR, WARN,
    WARNING, RECOVER, ... are deprecated and will be hidden in R
    4.2.0. R's native interface of Rf_error and Rf_warning has long
    been preferred.
  BUG FIXES:
  * .mapply(F, dots, .) no longer segfaults when dots is not a list
    and uses match.fun(F) as always documented; reported by Andrew
    Simmons in PR#18164.
  * hist(&lt;Date&gt;, ...) and hist(&lt;POSIXt&gt;, ...)  no longer pass
    arguments for rect() (such as col and density) to axis().
    (Thanks to Sebastian Meyer's PR#18171.)
  * \Sexpr{ch} now preserves Encoding(ch). (Thanks to report and
    patch by Jeroen Ooms in PR#18152.)
  * Setting the RNG to "Marsaglia-Multicarry" e.g., by RNGkind(), now
    warns in more places, thanks to Andr'e Gillibert's report and
    patch in PR#18168.
  * gray(numeric(), alpha=1/2) no longer segfaults, fixing PR#18183,
    reported by Till Krenz.
  * Fixed dnbinom(x, size=&lt;very_small&gt;, .., log=TRUE) regression,
    reported by Martin Morgan.
  * as.Date.POSIXlt(x) now keeps names(x), thanks to Davis Vaughan's
    report and patch in PR#18188.
  * model.response() now strips an "AsIs" class typically, thanks to
    Duncan Murdoch's report and other discussants in PR#18190.
  * try() is considerably faster in case of an error and long call,
    as e.g., from some do.call().  Thanks to Alexander Kaever's
    suggestion posted to R-devel.
  * qqline(y = &lt;object&gt;) such as y=I(.), now works, see also
    PR#18190.
  * Non-integer mgp par() settings are now handled correctly in
    axis() and mtext(), thanks to Mikael Jagan and Duncan Murdoch's
    report and suggestion in PR#18194.
  * formatC(x) returns length zero character() now, rather than ""
    when x is of length zero, as documented, thanks to Davis
    Vaughan's post to R-devel.
  * removeSource(fn) now retains (other) attributes(fn).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1647000000">- CHANGES IN R 4.1.3:
  NEW FEATURES:
  * The default version of Bioconductor has been changed to 3.14.
    (This is used by setRepositories and the menus in GUIs.)
  UTILITIES:
  * R CMD check --as-cran has a workaround for a bug in versions of
    file up to at least 5.41 which mis-identify DBF files last
    changed in 2022 as executables.
  C-LEVEL FACILITIES:
  * The legacy S-compatibility macros SINGLE_* in R_ext/Constants.h
    (included by R.h) are deprecated and will be removed in R 4.2.0.
  BUG FIXES:
  * Initialization of self-starting nls() models with initialization
    functions following the pre-R-4.1.0 API (without the ...
    argument) works again for now, with a deprecation warning.
  * Fixed quoting of ~autodetect~ in Java setting defaults to avoid
    inadvertent user lookup due to leading ~, reported in PR#18231 by
    Harold Gutch.
  * substr(., start, stop) &lt;- v now treats _negative_ stop values
    correctly.  Reported with a patch in PR#18228 by Brodie Gaslam.
  * Subscripting an array x without dimnames by a
    length(dim(x))-column character matrix gave "random" non-sense,
    now an error; reported in PR#18244 by Mikael Jagan.
  * ...names() now matches names(list(...)) closely, fixing PR#18247.
  * all.equal(*, scale = s) now works as intended when length(s) &gt; 1,
    partly thanks to Michael Chirico's PR#18272.
  * print(x) for long vectors x now also works for named atomic
    vectors or lists and prints the correct number when reaching the
    getOption("max.print") limit; partly thanks to a report and
    proposal by Hugh Parsonage to the R-devel list.
  * all.equal(&lt;selfStart&gt;, *) no longer signals a deprecation
    warning.
  * reformulate(*, response=r) gives a helpful error message now when
    length(r) &gt; 1, thanks to Bill Dunlap's PR#18281.
  * Modifying globalCallingHandlers inside withCallingHandlers() now
    works or fails correctly, thanks to Henrik Bengtsson's PR#18257.
  * hist(&lt;Date&gt;, breaks = "days") and hist(&lt;POSIXt&gt;, breaks = "secs")
    no longer fail for inputs of length 1.
  * qbeta(.001, .9, .009) and similar cases now converge correctly
    thanks to Ben Bolker's report in PR#17746.
  * window(x, start, end) no longer wrongly signals "'start' cannot
    be after 'end'", fixing PR#17527 and PR#18291.
  * data() now checks that its (rarely used) list argument is a
    character vector - a couple of packages passed other types and
    gave incorrect results.
  * which() now checks its arr.ind argument is TRUE rather coercing
    to logical and taking the first element - which gave incorrect
    results in package code.
  * model.weights() and model.offset() more carefully extract their
    model components, thanks to Ben Bolker and Tim Taylor's R-devel
    post.
  * list.files(recursive = TRUE) now shows all broken symlinks
    (previously, some of them may have been omitted, PR#18296).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1650628800">- CHANGES IN R 4.2.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * The formula method of aggregate() now matches the generic in
    naming its first argument x (resolving PR#18299 by Thomas
    Soeiro).
    This means that calling aggregate() with a formula as a named
    first argument requires name formula in earlier versions of R and
    name x now, so portable code should not name the argument (code
    in many packages did).
  * Calling &amp;&amp; or || with either argument of length greater than one
    now gives a warning (which it is intended will become an error).
  * Calling if() or while() with a condition of length greater than
    one gives an error rather than a warning.  Consequently,
    environment variable _R_CHECK_LENGTH_1_CONDITION_ no longer has
    any effect.
  * Windows users should consult the WINDOWS section below for some
    profound changes including
  * Support for 32-bit builds has been dropped.
  * UTF-8 locales are used where available.
  * The default locations for the R installation and personal
    library folder have been changed.
    Thanks to Tomas Kalibera for months of work on the Windows port
    for this release.
  NEW FEATURES:
  * matrix(x, n, m) now warns in more cases where length(x) differs
    from n * m, as suggested by Abby Spurdle and Wolfgang Huber in
    Feb 2021 on the R-devel mailing list.
    This warning can be turned into an error by setting environment
    variable _R_CHECK_MATRIX_DATA_ to TRUE: R CMD check --as-cran
    does so unless it is already set.
  * Function file_test() in package utils gains tests for symlinks,
    readability and writability.
  * capabilities("libxml") is now false.
    The description of capabilities("http/ftp") now reflects that it
    refers to the default method, no longer the internal one.
  * simplify2array() gains an except argument for controlling the
    exceptions used by sapply().
  * Environment variables R_LIBS_USER and R_LIBS_SITE are both now
    set to the R system default if unset or empty, and can be set to
    NULL to indicate an empty list of user or site library
    directories.
  * The warning for axis()(-like) calls in cases of relatively small
    ranges (typically in log-scale situations) is slightly improved
    _and_ suppressed from explicit calls to .axisPars() as has always
    been the intention.
  * The contrasts setter function `contrasts&lt;-` gains an explicit
    default how.many = NULL rather than just using missing(how.many).
  * grid.pretty() gains a new optional argument n = 5.
  * There is a new function .pretty() with option bounds as a
    technical-utility version of pretty().  It and pretty() gain a
    new argument f.min with a better than back-compatible default.
  * Function grDevices::axisTicks() and related functions such as
    graphics::axis() work better, notably for the log scale; partly
    because of the pretty() improvements, but also because care is
    taken e.g., when ylim is finite but diff(ylim) is infinite.
  * nclass.FD() gains a digits option.
  * The R Mathlib internal C function bd0() (called indirectly from a
    dozen probability density and distribution functions such as
    dpois(), dbinom(), dgamma(), pgamma() _etc_) has been
    complemented by a more sophisticated and (mostly) more accurate C
    function ebd0(), currently called only by internal dpois_raw()
    improving accuracy for R level dpois() and potentially others
    calling it such as dnbinom(), dgamma() or pgamma().  (Thanks to
    Morten Welinder's PR#15628.)
  * write.ftable() gains sep = " " argument as suggested by Thomas
    Soeiro.
  * The names of the locale categories supported by R's
    Sys.getlocale() and Sys.setlocale() are now provided by variable
    .LC.categories in the base namespace.
  * The Date and POSIXt methods for hist() and the histogram method
    for plot() now also use the new default col = "lightgray" in
    consistency with the corresponding change to hist()'s default for
    R 4.0.0.
  * hist.default() gains new fuzz argument, and the histogram plot
    method no longer uses fractional axis ticks when displaying
    counts ("Frequency").
  * mapply() and hence Map() now also obey the "max-or-0-if-any"
    recycling rule, such that, e.g., Map(`+`, 1:3, 1[0]) is valid
    now.
  * as.character(&lt;obj&gt;) for "hexmode" or "octmode" objects now
    fulfils the important basic rule as.character(x)[j] ===
    as.character(x[j]).
  * The set utility functions, notably intersect() have been tweaked
    to be more consistent and symmetric in their two set arguments,
    also preserving a common mode.
  * substr(ch, start,end) &lt;- new now e.g., preserves names(ch); ditto
    for substring(), thanks to a patch from Brodie Gaslam.
  * plot(&lt;lm&gt;) gains a extend.ylim.f argument, in partial response to
    PR#15285; further PR#17784 is fixed thanks to several
    contributors and a patch by Elin Waring.  The Cook's dist
    contours get customizable via cook.col and cook.lty with a
    different default color and their legend is nicer by default and
    customizable via cook.legendChanges.
  * Attempting to subset an object that is not subsettable now
    signals an error of class notSubsettableError. The
    non-subsettable object is contained in the object field of the
    error condition.
  * Subscript-out-of-bounds errors are now signaled as errors of
    class subscriptOutOfBoundsError.
  * Stack-overflow errors are now signaled as errors inheriting from
    class stackOverflowError. See ?stackOverflowError for more
    details.
  * New partly experimental Sys.setLanguage() utility, solving the
    main problem of PR#18055.
  * gettext() and gettextf() get a new option trim = TRUE which when
    set to false allows translations for strings such as "Execution
    halted\n" typical for C code.
  * An experimental implementation of hash tables is now available.
    See ?hashtab for more details.
  * identical() gains a extptr.as.ref argument for requesting that
    external pointer objects be compared as reference objects.
  * reorder() gets an argument decreasing which it passes to sort()
    for level creation; based on the wish and patch by Thomas Soeiro
    in PR#18243.
  * as.vector() gains a data.frame method which returns a simple
    named list, also clearing a long standing 'FIXME' to enable
    as.vector(&lt;data.frame&gt;, mode="list").  This breaks code relying
    on as.vector(&lt;data.frame&gt;) to return the unchanged data frame.
  * legend() is now vectorized for arguments cex, x.intersp, and
    text.width.  The latter can now also be specified as a vector
    (one element for each column of the legend) or as NA for
    computing a proper column wise maximum value of strwidth(legend).
    The argument y.intersp can be specified as a vector with one
    entry for each row of the legend.
    legend() also gains new arguments title.cex and title.font.
    Thanks to Swetlana Herbrandt.
  * Deparsing no longer remaps attribute names dim, dimnames, levels,
    names and tsp to historical S-compatible names (which structure()
    maps back).
  * sample() and sample.int() have additional sanity checks on their
    size and n arguments.
    all.equal.numeric() gains a sanity check on its tolerance
    argument - calling all.equal(a, b, c) for three numeric vectors
    is a surprisingly common error.
    mean(na.rm =), rank(na.last =), barplot(legend.text =),
    boxplot(), contour(drawlabels =), polygon(border =) and
    methods::is(class2 =) have more robust sanity checks on their
    arguments.
    R CMD Rd2pdf (used by R CMD check) has a more robust sanity check
    on the format of \alias{} commands.
  * psigamma(x, deriv) for negative x now also works for deriv = 4
    and 5; their underlying C level dpsifn() is documented in
    'Writing R Extensions'.
  * The HTML help system now uses HTML5 (wish of PR#18149).
  * ks.test() now provides exact p-values also with ties and MC
    p-values in the two-sample (Smirnov) case.  By Torsten Hothorn.
  * ks.test() gains a formula interface, with y ~ 1 for the
    one-sample (Kolmogorov) test and y ~ group for the two-sample
    (Smirnov) test.  Contributed by Torsten Hothorn.
  * The return value from ks.test() now has class c("ks.test",
    "htest") - packages using try() need to take care to use
    inherits() and not == on the class.
  * New functions psmirnov(), qsmirnov() and rsmirnov() in package
    stats implementing the asymptotic and exact distributions of the
    two-sample Smirnov statistic.
  * iconv() now allows sub = "c99" to use C99-style escapes for UTF-8
    inputs which cannot be converted to encoding to.
  * In a forward pipe |&gt; expression it is now possible to use a named
    argument with the placeholder _ in the rhs call to specify where
    the lhs is to be inserted.  The placeholder can only appear once
    on the rhs.
  * The included LAPACK sources have been updated to version 3.10.0,
    except for the four Fortran 77 routines which 3.10.0 has
    re-implemented in Fortran 90 (where the older versions have been
    retained as the R build process does not support Fortran 90).
  * path.expand() and most other uses of tilde expansion now warn if
    a path would be too long if expanded.  (An exception is
    file.exists(), which silently returns false.)
  * trunc(&lt;Date&gt;, *) now supports units = "months" or "years" for
    consistency with the POSIXt method, thanks to Dirk Eddelbuettel's
    proposal in PR#18099.
  * list2DF() now checks that its arguments are of the same length,
    rather than use recycling.
  * The HTML help system has several new features: LaTeX-like math
    can be typeset using either KaTeX or MathJax, usage and example
    code is highlighted using Prism, and for dynamic help the output
    of examples and demos can be shown within the browser if the
    knitr package is installed. These features can be disabled by
    setting the environment variable _R_HELP_ENABLE_ENHANCED_HTML_ to
    a false value.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 15
    and so packages that provide graphics devices should be
    reinstalled.
  * The grid package now allows the user to specify a "vector" of
    pattern fills.  The fill argument to gpar() accepts a list of
    gradients and/or patterns and the functions linearGradient(),
    radialGradient(), and pattern() have a new group argument.
    Points grobs (data symbols) can now also have a pattern fill.
    The grobCoords() function now returns a more informative and
    complex result.
  * The grid package has new functions for drawing isolated groups:
    grid.group(), grid.define(), and grid.use().  These functions add
    compositing operators and affine transformations to R's graphics
    capabilities.
    The grid package also has new functions for stroking and filling
    paths: grid.stroke(), grid.fill(), and grid.fillStroke().
    A new function as.path() allows the user to specify the fill rule
    for a path that is to be used for clipping, stroking, or filling;
    available options are "winding" and "evenodd".  A new function
    as.mask() allows the user to specify the type of a mask;
    available options are "alpha" and "luminance".
    These new features are only supported so far (at most) on the
    Cairo-based graphics devices and on the pdf() device.
  * dev.capabilities() reports on device support for the new
    features.
  * par() now warns about unnamed non-character arguments to prevent
    misuse such as {usr &lt;- par("usr"); par(usr)}.
  INSTALLATION:
  * Facilities for accessing ftp:// sites are no longer tested
    (except _pro tem_ for curlGetHeaders()) as modern browsers have
    removed support.
  * R can now be built with DEFS = -DSTRICT_R_HEADERS .
  PACKAGE INSTALLATION:
  * R CMD INSTALL no longer tangles vignettes. This completes an R
    CMD build change in R 3.0.0 and affects packages built before R
    3.0.2. Such packages should be re-made with R CMD build to have
    the tangled R code of vignettes shipped with the tarball.
  * USE_FC_LEN_T will become the default: this uses the correct
    prototypes for Fortran BLAS/LAPACK routines called from C/C++,
    and requires adjustment of most such calls - see 'Writing R
    Extensions' SS6.6.2.  (This has been supported since R 3.6.2.)
  * Package installation speed for packages installed with
    keep.source has been improved. This resolve the issue reported by
    Ofek Shilon in PR#18236.
  UTILITIES:
  * R CMD check can optionally report files/directories left behind
    in home, /tmp (even though TMPDIR is set) and other directories.
    See the "R Internals" manual for details.
  * R CMD check now reports byte-compilation errors during
    installation.  These are not usually fatal but may result in
    parts of the package not being byte-compiled.
  * _R_CHECK_DEPENDS_ONLY_ can be applied selectively to examples,
    tests and/or vignettes in R CMD check: see the "R Internals"
    manual.
  * _R_CHECK_SRC_MINUS_W_IMPLICIT_ now defaults to true: recent
    versions of Apple clang on macOS have made implicit function
    declarations in C into a compilation error.
  * R CMD check --as-cran makes use of the environment variable
    AUTORECONF.  See the "R Internals" manual SS8 for further details.
  * R CMD check --use-valgrind also uses valgrind when re-building
    vignettes as some non-Sweave vignettes unhelpfully comment out
    all their code when R CMD check runs vignettes.
  * Errors in re-building vignettes (unless there are LaTeX errors)
    are reported by R CMD check as ERROR rather than WARNING when
    running vignettes has been skipped (as it frequently is in CRAN
    checks and by --as-cran).
  * R CMD Rd2pdf gains a --quiet option that is used by R CMD build
    when building the PDF package manual.
  * R CMD Rd2pdf now always runs LaTeX in batch mode, consistent with
    Texinfo &gt;= 6.7. The --batch option is ignored.
  * R CMD build and R CMD check now include the Rd file name and line
    numbers in the error message of an \Sexpr evaluation failure.
  * For packages using the \doi Rd macro (now an install-time \Sexpr)
    but no other dynamic Rd content, R CMD build now produces a
    smaller tarball and is considerably faster - skipping temporary
    package installation.
  C-LEVEL FACILITIES:
  * The non-API header R_ext/R-ftp-http.h is no longer provided, as
    the entry points it covered are now all defunct.
  * A number of non-API declarations and macro definitions have been
    moved from the installed header Rinternals.h to the internal
    header Defn.h. Packages that only use entry points and
    definitions documented to be part of the API as specified in
    'Writing R Extensions' SS6 should not be affected.
  * The macro USE_RINTERNALS no longer has any effect when compiling
    package code.  Packages which also use R_NO_REMAP will need to
    ensure that the remapped names are used for calls to API
    functions that were formerly also made available as macros.
  * The deprecated legacy S-compatibility macros PROBLEM, MESSAGE,
    ERROR, WARN, WARNING, RECOVER, ... are no longer defined in
    R_exts/RS.h (included by R.h).  Replace these by calls to
    Rf_error and Rf_warning (defined in header R_ext/Error.h included
    by R.h).
    Header R_ext/RS.h no longer includes R_ext/Error.h.
  * Header R_ext/Constants.h (included by R.h) when included from C++
    now includes the C++ header cfloat rather than the C header
    float.h (now possible as C++11 is required).
  * The legacy S-compatibility macros DOUBLE_* in R_ext/Constants.h
    (included by R.h) are deprecated.
  * The deprecated S-compatibility macros SINGLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * R_Calloc, R_Free and R_Realloc are preferred to their unprefixed
    forms and error messages now use the prefix. These forms were
    introduced in R 3.4.0 and are available even when
    STRICT_R_HEADERS is defined.
  * rmultinom has been documented in 'Writing R Extensions' SS6 so is
    now part of the R API.
  * Similarly, Rtanpi, called from R level tanpi() is now part of the
    R API.
  * The long-deprecated, undocumented and non-API entry point call_R
    is no longer declared in R_ext/RS.h (included by R.h).
  * The header S.h which has been unsupported since Jan 2016 has been
    removed.  Use R.h instead.
  DEPRECATED AND DEFUNCT:
  * The (non-default and deprecated) method = "internal" for
    download.file() and url() no longer supports http:// nor ftp://
    URIs.  (It is used only for file:// URIs.)
    On Windows, download.file(method = "wininet") no longer supports
    ftp:// URIs.  (It is no longer the default method, which is
    "libcurl" and does.)
    On Windows, the deprecated method = "wininet" now gives a warning
    for http:// and https:// URIs for both download.file() and url().
    (It is no longer the default method.)
  * On Windows, the command-line option --max-mem-size and
    environment variable R_MAX_MEM_SIZE are defunct.  The memory
    allocation limit was important for 32-bit builds, but these are
    no longer supported.
  * default.stringsAsFactors() is now formally deprecated, where that
    was only mentioned on its regular help page, previously.  So it
    now gives a warning if called.
  * unix.time() is defunct now; it had been deprecated since R 3.4.0.
  BUG FIXES:
  * Setting digits = 0 in format(), print.default() (and hence
    typically print()) or options() is again invalid.  Its behaviour
    was platform-dependent, and it is unclear what "zero significant
    digits" should mean (PR#18098).
  * Messages from C code in the cairo section of package grDevices
    are now also offered for translation, thanks to Michael Chirico's
    PR#18123.
  * mean(x) with finite x now is finite also without "long.double"
    capability.
  * R CMD Rd2pdf no longer leaves an empty build directory behind
    when it aborts due to an already existing output file.  (Thanks
    to Sebastian Meyer's PR#18141.)
  * density(x, weights = w, na.rm = TRUE) when anyNA(x) is true, now
    removes weights "in parallel" to x, fixing PR#18151, reported by
    Matthias Gondan.  Additionally, it gets a subdensity option.
  * Conversion of \Sexpr[]{&lt;expR&gt;} to LaTeX or HTML no longer
    produces long blocks of empty lines when &lt;expR&gt; itself contains
    several lines all producing empty output.  Thanks to a report and
    patch by Ivan Krylov posted to R-devel.
  * R CMD build no longer fails if a package vignette uses child
    documents and inst/doc exists.  (Thanks to Sebastian Meyer's
    PR#18156.)
  * When an R documentation ('help' source) file man/foo.Rd in a
    package has \donttest{..} examples with a syntax error, it is now
    signalled as ERROR and with correct line numbers relating to the
  * -Ex.R file, thanks to Duncan Murdoch and Sebastian Meyer's
    reports and patch proposals in PR#17501.
  * Improved determination of the correct translation domain in
    non-base packages, addressing the combination of PR#18092 and
    PR#17998 (#c6) with reports and _augmented_ patch #2904 by
    Suharto Anggono.
    Note that "R-base" is no longer the default domain e.g., for
    top-level calls to gettext(); rather translation needs explicit
    domain = * specification in such cases.
  * identical(attrib.as.set=FALSE) now works correctly with data
    frames with default row names (Thanks to Charlie Gao's PR#18179).
  * txtProgressBar() now enforces a non-zero width for argument char,
    without which no progress can be visible.
  * dimnames(table(d)) is more consistent in the case where d is a
    list with a single component, thanks to Thomas Soeiro's report to
    R-devel.
    Further, table(d1, d2) now gives an error when d1 and d2 are data
    frames as suggested by Thomas in PR#18224.
  * Fix for drawing semi-transparent lines and fills on the native
    Windows graphics device (PR#18219 and PR#16694).  Thanks to Nick
    Ray for helpful diagnosis on Bugzilla.
  * The deparser now wraps sub-expressions such as if(A) ..  with
    parentheses when needed; thanks to Duncan Murdoch's PR#18232 and
    Lionel Henry's patches there.
  * remove.packages() no longer tries to uninstall Priority: base
    packages, thanks to a report and suggestions by Colin Fay in
    PR#18227.
  * win.metafile() now has xpinch and ypinch arguments so that the
    user can override Windows' (potentially wrong) guess at device
    dimensions.
  * x[i] and x[[i]] for non-integer i should now behave in all cases
    as always documented: the index used is equivalent to
    as.integer(i) unless that would overflow where trunc(i) is used
    instead; thanks to Suharto Anggono's report and patch proposals
    in PR#17977.
  * asOneSidedFormula() now associates the resulting formula with the
    global environment rather than the evaluation environment created
    for the call.
  * &lt;bibentry&gt;$name now matches the field name case-insensitively,
    consistent with bibentry() creation and the replacement method.
  * cbind() failed to detect some length mismatches with a mixture of
    time-series and non-time-series inputs.
  * The default LaTeX style file Sweave.sty used by the RweaveLatex
    driver no longer loads the obsolete ae package; thanks to a
    report by Thomas Soeiro in PR#18271.  Furthermore, it now skips
    \usepackage[T1]{fontenc} for engines other than pdfTeX (if
    detected) or if the new [nofontenc] option is used.
  * smooth.spline() now stores its logical cv argument more safely,
    fixing a rare bug when printing, and also stores n.
  * smooth.spline(x,y,*) now computes the cv.crit statistic
    correctly, also when is.unsorted(x), fixing PR#18294.
  * The data.frame method of rbind() now warns when binding
    not-wholly-recycling vectors, by analogy to the default method
    (for matrices).
  * setAs() finds the correct class for name to when multiple
    packages define a class with that name. Thanks to Gabor Csardi
    for the report.
  * Fix for detaching a package when two classes of the same name are
    present in method signatures for the same generic. Thanks to
    Gabor Csardi for the report.
  * match.arg("", c("", "a", "B")) gives a better error message, in
    part from PR#17959, thanks to Elin Waring.
  * R CMD Sweave --clean no longer removes pre-existing files or
    subdirectories (PR#18242).
  * The quartz() device no longer splits polylines into subpaths.
    That has caused narrowly-spaced lines with many points to always
    look solid even when dashed line type was used due to dash phase
    restarts.
  * Deparsing constructs such as quote(1 + `!`(2) + 3) works again as
    before R 3.5.0, thanks to the report and patch in PR#18284 by
    Suharto Anggono.
  * as.list(f) for a factor f now keeps names(f), fixing PR#18309.
  * qbeta(.001, .9, .009) and analogous qf() calls now return a
    correct value instead of NaN or wrongly 1, all with a warning;
    thanks to the report by Ludger Goeminne in PR#18302.
  * plot.lm() failed to produce the plot of residuals vs.  factor
    levels (i.e., which=5 when leverages are constant) for models
    with character predictors (PR#17840).
  * interaction.plot(..., xtick = TRUE) misplaced the x-axis line
    (PR#18305).
  * Not strictly fixing a bug, format()ing and print()ing of
    non-finite Date and POSIXt values NaN and +/-Inf no longer show
    as NA but the respective string, e.g., Inf, for consistency with
    numeric vector's behaviour, fulfilling the wish of PR#18308.
  * R CMD check no longer runs test scripts generated from
    corresponding .Rin files twice and now signals an ERROR if
    processing an .Rin script fails.
  * tools::Rd2txt() used for plain-text help pages now renders \hrefs
    (if tools::Rd2txt_options(showURLs = TRUE)) and \urls with
    percent-encoding and standards-compliant delimiting style (angle
    brackets and no URL: prefix).  \email is now rendered with a
    mailto: prefix.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1655985600">- CHANGES IN R 4.2.1:
  NEW FEATURES:
  * New function utils::findCRANmirror() to find out if a CRAN mirror
    has been selected, otherwise fallback to the main site.  This
    behaves in the same way as tools::CRAN_package_db() and is
    intended for packages wishing to access CRAN for purposes other
    than installing packages.
    The need for this was shown by a day when the main CRAN website
    was offline and a dozen or so packages which had its URL
    hardcoded failed their checks.
  INSTALLATION on a UNIX-ALIKE:
  * The libraries searched for by --with-blas (without a value) now
    include BLIS (after OpenBLAS but before ATLAS).  And on macOS,
    the Accelerate framework (after ATLAS).  (This is patterned after
    the AX_BLAS macro from the Autoconf Archive.)
  * The included LAPACK sources have been updated to 3.10.1.
  UTILITIES:
  * The (full path to) the command tidy to be used for HTML
    validation can be set by environment variable R_TIDYCMD.
  * Setting environment variable _R_CHECK_RD_VALIDATE_RD2HTML_ to a
    false value will override R CMD check --as-cran and turn off HTML
    validation.  This provides a way to circumvent a problematic
    tidy.
    The 2006 version that ships with macOS is always skipped.
  C-LEVEL FACILITIES:
  * The undocumented legacy declarations of Sint, Sfloat, SINT_MAX
    and SINT_MIN in header R.h are deprecated.
  BUG FIXES:
  * fisher.test(d) no longer segfaults for "large" d; fixing PR#18336
    by preventing/detecting an integer overflow reliably.
  * tar(., files=*) now produces correctly the warning about invalid
    uid or gid of files, fixing PR#18344, reported by Martin Morgan.
  * tk_choose.files() with multi = FALSE misbehaved on paths
    containing spaces (PR#18334) (regression introduced in R 4.0.0).
  * sort(x, partial = ind, *) now works correctly notably for the
    non-default na.last = FALSE or TRUE, fixing PR#18335 reported by
    James Edwards.
  * Environment variable _R_CHECK_XREFS_REPOSITORIES_ is only used
    for checking .Rd cross-references in R CMD check (as documented)
    and not for other uses looking for a CRAN mirror.
  * The search for a CRAN mirror when checking packages now uses
    getOption("repos") if that specifies a CRAN mirror, even when it
    does not also specify all three Bioconductor repositories (as was
    previously required).
  * The HTML code generated by tools::Rd2HTML() has been improved to
    pass tidy 5.8.0.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1667217600">- CHANGES IN R 4.2.2:
  NEW FEATURES:
  * tools::Rdiff(useDiff = TRUE) checks for the presence of an
    external diff command and switches to useDiff = FALSE if none is
    found.  This allows R CMD Rdiff to always work.
  * On Windows, environment variable R_LIBCURL_SSL_REVOKE_BEST_EFFORT
    can be used to switch to only 'best-effort' SSL certificate
    revocation checks with the default "libcurl" download method.
    This reduces security, but may be needed for downloads to work
    with MITM proxies (PR#18379).
  * (macOS) The run-time check for libraries from XQuartz for X11 and
    Tcl/Tk no longer uses otool from the Apple Developer Tools
    (PR#18400).
  * The LaTeX style for producing the PDF manuals, Rd.sty, now loads
    the standard amsmath, amsfonts and amssymb packages for greater
    coverage of math commands in the Rd \eqn and \deqn macros.  The
    \mathscr LaTeX command is also provided (via the mathrsfs
    package, if available, or the amsfonts bundle otherwise),
    fulfilling the wish of PR#18398.
  * (Windows) The default format of readClipboard() and
    writeClipboard() has been changed to 13 (CF_UNICODETEXT).
  INSTALLATION on a UNIX-ALIKE:
  * The PDF manuals (if built) can be compacted by the new target
    make compact-pdf (at the top level or in directory doc/manual).
  * There is now configure support for LLVM clang 15 on Linux, which
    defaults to position-independent (PIE) executables whereas
    gfortran does not.
  * Many small changes to ease compilation (and suppress warnings)
    with LLVM clang 15.
  BUG FIXES:
  * Rscript -e would fail if stdin were closed (Reported by Henrik
    Bengtsson.)
  * qt(*, log.p=TRUE) in outer tails no longer produces NaN in its
    final steps, thus fixing PR#18360.
  * tools::Rd2latex() now escapes hashes and ampersands when writing
    URLs, fixing LaTeX errors with such URLs in \tabular.
  * When isGeneric(f, fdef=*) is used with mismatching names, the
    warning is better understandable; reported (with fix) in PR#18370
    by Gabe Becker.
  * poly(x, n) now works again (and is now documented) when x is a
    "Date" or "POSIXct" object, or of another class while fulfilling
    mode(x) == "numeric".  This also enables poly(x, *, raw=TRUE) for
    such variables.  Reported by Michael Chirico to R-devel.
  * write.table(), write.csv() and write.csv2() restore their
    numerical precision (internal equivalent of digits = 15) after an
    interrupt (PR#18384).
  * One can now read also byte FF from a clipboard connection
    (PR#18385).
  * source("") and source(character()) now give more helpful error
    messages.
  * R CMD check --as-cran set _R_CHECK_TIMINGS_ too late to have the
    intended effect.
  * as.POSIXlt(x) now also works with very large dates x, fixing
    PR#18401 reported by Hannes M"uhleisen.
  * Files can now be extracted even from very large zip archives
    (PR#18390, thanks to Martin Jakt).
  * Non-finite objects of class "POSIXlt" are now correctly coerced
    to classes "Date" and "POSIXct"; following up on the extension to
    format() them correctly.
  * Added methods for is.finite(), is.infinite() and is.nan() for
    "POSIXlt" date-time objects.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1678881600">- CHANGES IN R 4.2.3:
  C-LEVEL FACILITIES:
  * The definition of DL_FUNC in R_ext/Rdynload.h has been changed to
    be fully C-compliant.  This means that functions loaded _via_ for
    example R_GetCCallable need to be cast to an appropriate type if
    they have any arguments.
  * .Machine has a new element sizeof.time_t to identify old systems
    with a 32-bit type and hence a limited range of date-times (and
    limited support for dates millions of years from present).
  PACKAGE INSTALLATION:
  * (Windows) The default C++ standard had accidentally been left at
    C++11 when it was changed to C++14 on Unix.
  BUG FIXES:
  * As "POSIXlt" objects may be "partially filled" and their list
    components meant to be recycled, length() now is the length of
    the longest component.
  * as.POSIXlt.Date() could underflow for dates in the far past (more
    than half a million years BCE).
  * as.Date.POSIXlt(x) would return "1970-01-01" instead of NA in R
    4.2.2, e.g., for
    x &lt;- as.POSIXlt(c("2019-01-30","2001-1-1"))
    x$mon &lt;- c(0L, NA); as.Date(x)
  * R CMD check failed to apply enabled _R_CHECK_SUGGESTS_ONLY_ to
    examples and vignettes (regression in R 4.2.0).
  * R CMD check did not re-build vignettes in separate processes by
    default (regression in R 4.2.0).
  * Running examples from HTML documentation now restores previous
    knitr settings and options (PR#18420).
  * Quartz: fonts are now located using Core Graphics API instead of
    deprecated ATS which is no longer supported in the macOS 13 SDK
    (PR#18426).  This also addresses an issue where the currently
    used font in the Quartz device context was not correctly
    retained.
  * (Windows) Math symbols in text drawing functions are again
    rendered correctly (PR#18440).  This fixes a regression in R
    4.2.1 caused by a fix in PR#18382 which uncovered an issue in
    GraphApp due to which the symbol charset was not used with TT
    Symbol font face.
  * (Windows) Installing a package with a src/Makefile.{win,ucrt}
    file includes ~/.R/Makevars.win64 in the search for user
    makevars, as documented in "R Installation and Administration"
    and done for packages with a src/Makevars.{win,ucrt} file.
  * format(&lt;POSIXlt_w/_unbalanced_sec&gt;, "....%OS&lt;n&gt;") with n &gt; 0 no
    longer accidentally uses the unbalanced seconds, thanks to
    Suharto Anggono's report (including patch) in PR#18448.
  * solve.default(a, b) works around issues with some versions of
    LAPACK when a contains NA or NaN values.
  * When UseMethod() cannot dispatch, it no longer segfaults
    producing the error message in case of a long class(), thanks to
    Joris Vankerschaver's report (including patch) in PR#18447.
  * When example(foo, ..) produces graphics on an interactive device
    it needs to open itself, it now leaves devAskNewPage() unchanged
    even when it was FALSE, thus fixing a 14 years old '&lt;FIXME&gt;'.
  * packageDescription() again catches errors from encoding
    conversions. This also fixes broken packageVersion() in C locale
    on systems where iconv does not support transliteration.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1681128000">- add patch to build with libcurl &gt;= 8</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1682078400">- CHANGES IN R 4.3.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Calling &amp;&amp; or || with LHS or (if evaluated) RHS of length greater
    than one is now always an error, with a report of the form
    'length = 4' in coercion to 'logical(1)'
    Environment variable _R_CHECK_LENGTH_1_LOGIC2_ no longer has any
    effect.
  NEW FEATURES:
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.10.1.  (This caused some platform-dependent
    changes to package check output.)  And then to the sources from
    LAPACK version 3.11.0 (with changes only to double complex
    subroutines).
  * The included LAPACK sources have been updated to include the four
    Fortran 90 routines rather than their Fortran 77 predecessors.
    This may give some different signs in SVDs or
    eigendecompositions..  (This completes the transition to LAPACK
    3.10.x begun in R 4.2.0.)
  * The LAPACK sources have been updated to version 3.11.0.  (No new
    subroutines have been added, so this almost entirely bug fixes:
    Those fixes do affect some computations with NaNs, including R's
    NA.)
  * The parser now signals _classed_ errors, notably in case of the
    pipe operator |&gt;.  The error object and message now give line and
    column numbers, mostly as proposed and provided by Duncan Murdoch
    in PR#18328.
  * toeplitz() is now generalized for asymmetric cases, with a
    toeplitz2() variant.
  * xy.coords() and xyz.coords() and consequently, e.g., plot(x,y,
    log = "y") now signal a _classed_ warning about negative values
    of y (where log(.) is NA).  Such a warning can be specifically
    suppressed or caught otherwise.
  * Regular expression functions now check more thoroughly whether
    their inputs are valid strings (in their encoding, e.g. in
    UTF-8).
  * The performance of grep(), sub(), gsub() and strsplit() has been
    improved, particularly with perl = TRUE and fixed = TRUE.  Use of
    useBytes = TRUE for performance reasons should no longer be
    needed and is discouraged: it may lead to incorrect results.
  * apropos() gains an argument dot_internals which is used by the
    completion (help(rcompgen)) engine to also see base internals
    such as .POSIXct().
  * Support in tools::Rdiff() for comparing uncompressed PDF files is
    further reduced - see its help page.
  * qqplot(x, y, ...) gains conf.level and conf.args arguments for
    computing and plotting a confidence band for the treatment
    function transforming the distribution of x into the distribution
    of y (Switzer, 1976, _Biometrika_). Contributed by Torsten
    Hothorn.
  * Performance of package_dependencies() has been improved for cases
    when the number of dependencies is large.
  * Strings newly created by gsub(), sub() and strsplit(), when any
    of the inputs is marked as "bytes", are also marked as "bytes".
    This reduces the risk of creating invalid strings and accidental
    substitution of bytes deemed invalid.
  * Support for readLines(encoding = "bytes") has been added to allow
    processing special text files byte-by-byte, without creating
    invalid strings.
  * iconv(from = "") now takes into account any declared encoding of
    the input elements and uses it in preference to the native
    encoding.  This reduces the risk of accidental creation of
    invalid strings, particularly when different elements of the
    input have different encoding (including "bytes").
  * Package repositories in getOption("repos") are now initialized
    from the repositories file when utils is loaded (if not already
    set, e.g., in .Rprofile).  (From a report and patch proposal by
    Gabriel Becker in PR#18405.)
  * compactPDF() gets a verbose option.
  * type.convert() and hence read.table() get new option tryLogical =
    TRUE with back compatible default.  When set to false, converts
    "F" or "T" columns to character.
  * Added new unit prefixes "R" and "Q" for abbreviating
    (unrealistically large) sizes beyond 10^{27} in standard = "SI",
    thanks to Henrik Bengtsson's PR#18435.
  * as.data.frame()'s default method now also works fine with atomic
    objects inheriting from classes such as "roman", "octmode" and
    "hexmode", such fulfilling the wish of PR#18421, by Benjamin
    Feakins.
  * The as.data.frame.vector() utility now errors for wrong-length
    row.names.  It warned for almost six years, with "Will be an
    error!".
  * sessionInfo() now also contains La_version() and reports codepage
    and timezone when relevant, in both print() and toLatex() methods
    which also get new option tzone for displaying timezone
    information when locale = FALSE.
  * New function R_compiled_by() reports the C and Fortran compilers
    used to build R, if known.
  * predict(&lt;lm&gt;, newdata = *) no longer unnecessarily creates an
    offset of all 0s.
  * solve() for complex inputs now uses argument tol and by default
    checks for 'computational singularity' (as it long has done for
    numeric inputs).
  * predict(&lt;rank-deficient lm&gt;, newdata=*) now obeys a new argument
    rankdeficient, with new default "warnif", warning only if there
    are non-estimable cases in newdata.  Other options include
    rankdeficient = "NA", predicting NA for non-estimable newdata
    cases.  This addresses PR#15072 by Russ Lenth and is based on his
    original proposal and discussions in PR#16158 also by David Firth
    and Elin Waring.  Still somewhat experimental.
  * Rgui console implementation now works better with the NVDA screen
    reader when the full blinking cursor is selected.  The underlying
    improvements in cursor handling may help also other screen
    readers on Windows.
  * The drop-field control in GraphApp can now be left with the TAB
    key and all controls can be navigated in the reverse order using
    the Shift+TAB key, improving accessibility of the Rgui
    configuration editor.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now fully accurate
    (instead of to "only" minimally five digits).
  * demo(error.catching) now also shows off withWarnings() and
    tryCatchWEMs().
  * As an experimental feature the placeholder _ can now also be used
    in the rhs of a forward pipe |&gt; expression as the first argument
    in an extraction call, such as _$coef. More generally, it can be
    used as the head of a chain of extractions, such as _$coef[[2]].
  * Spaces in the environment variable used to choose the R session's
    temporary directory (TMPDIR, TMP and TEMP are tried in turn) are
    now fatal.  (On Windows the 'short path' version of the path is
    tried and used if that does not contain a space.)
  * all.equal.numeric() gets a new optional switch giveErr to return
    the numeric error as attribute.  Relatedly,
    stopifnot(all.equal&lt;some&gt;(a, b, ..)) is as "smart" now, as
    stopifnot(all.equal(....)) has been already, thus allowing
    customized all.equal&lt;Some&gt;() wrappers.
  * R on Windows is now able to work with path names longer than 260
    characters when these are enabled in the system (requires at
    least Windows 10 version 1607).  Packages should be updated to
    work with long paths as well, instead of assuming PATH_MAX to be
    the maximum length.  Custom front-ends and applications embedding
    R need to update their manifests if they wish to allow this
    feature.  See
    &lt;https://blog.r-project.org/2023/03/07/path-length-limit-on-windows&gt;
    for more information.
  * 'Object not found' and 'Missing argument' errors now give a more
    accurate error context. Patch provided by Lionel Henry in
    PR#18241.
  * The @ operator is now an S3 generic. Based on contributions by
    Tomasz Kalinowski in PR#18482.
  * New generic chooseOpsMethod() provides a mechanism for objects to
    resolve cases where two suitable methods are found for an Ops
    Group Generic. This supports experimenting with alternative
    object systems. Based on contributions by Tomasz Kalinowski in
    PR#18484.
  * inherits(x, what) now accepts values other than a simple
    character vector for argument what. A new generic, nameOfClass(),
    is called to resolve the class name from what. This supports
    experimenting with alternative object systems. Based on
    contributions by Tomasz Kalinowski in PR#18485.
  * Detection of BLAS/LAPACK in use (sessionInfo()) with FlexiBLAS
    now reports the current backend.
  * The "data.frame" method for subset() now warns about extraneous
    arguments, typically catching the use of = instead of == in the
    subset expression.
  * Calling a:b when numeric a or b is longer than one may now be
    made into an error by setting environment variable
    _R_CHECK_LENGTH_COLON_ to a true value, along the proposal in
    PR#18419 by Henrik Bengtsson.
  * density(x, weights = *) now warns if automatic bandwidth
    selection happens without using weights; new optional warnWbw may
    suppress the warning.  Prompted by Christoph Dalitz' PR#18490 and
    its discussants.
  * rm(list = *) is faster and more readable thanks to Kevin Ushey's
    PR#18492.
  * The plot.lm() function no longer produces a normal Q-Q plot for
    GLMs. Instead it plots a half-normal Q-Q plot of the absolute
    value of the standardized deviance residuals.
  * The print() method for class "summary.glm" no longer shows
    summary statistics for the deviance residuals by default.  Its
    optional argument show.residuals can be used to show them if
    required.
  * The tapply() function now accepts a data frame as its X argument,
    and allows INDEX to be a formula in that case. by.data.frame()
    similarly allows INDICES to be a formula.
  * The performance of df[j] &lt;- value (including for missing j) and
    write.table(df) has been improved for data frames df with a large
    number of columns.  (Thanks to Gabriel Becker's PR#18500,
    PR#18503 and discussants, prompted by a report from Toby Dylan
    Hocking on the R-devel mailing list.)
  * The matrix multiply operator %*% is now an S3 generic, belonging
    to new group generic matrixOps.  From Tomasz Kalinowski's
    contribution in PR#18483.
  * New function array2DF() to convert arrays to data frames,
    particularly useful for the list arrays created by tapply().
  DATES and TIMES:
  * On platforms where (non-UTC) datetimes before 1902 (or before
    1900 as with system functions on recent macOS) are guessed by
    extrapolating time zones from 1902-2037, there is a warning at
    the first use of extrapolation in a session.  (As all time zones
    post 2037 are extrapolation, we do not warn on those.)
  * (Platforms using --with-internal-tzone, including Windows and by
    default macOS). How years are printed in dates or date-times can
    be controlled by environment variable R_PAD_YEARS_BY_ZERO.  The
    default remains to pad to 4 digits by zeroes, but setting value
    no gives no padding (as used by default by glibc).
  * strftime() tries harder to determine the offset for the "%z"
    format, and succeeds on the mainstream R platforms.
  * strftime() has a limit of 2048 bytes on the string produced -
    attempting to exceed this is an error.  (Previously it silently
    truncated at 255 bytes.)
  * sessionInfo() records (and by default prints) the system time
    zone as part of the locale information.  Also, the source
    (system/internal) of the date-time conversion and printing
    functions.
  * Objects of class "POSIXlt" created in this version of R always
    have 11 components: component zone is always set, and component
    gmtoff is set for times in UTC and usually set on the (almost
    all) platforms which have C-level support, otherwise is NA.
  * There are comprehensive validity checks on the structure of
    objects of class "POSIXlt" when converting (including formatting
    and printing).  (This avoids mis-conversions of hand-crafted
    objects.)
  * There is some support for using the native date-time routines on
    macOS: this is only viable on recent versions (e.g. 12.6 and 13)
    and does get wrong some historical changes (before 1900, during
    WWII).  Use of --with-internal-tzone remains the default.
  * as.POSIXct(&lt;numeric&gt;) and as.POSIXlt(.) (without specifying
    origin) now work.  So does as.Date(&lt;numeric&gt;).
  * as.Date.POSIXct(., tz) now treats several tz values, notably
    "GMT" as equivalent to "UTC", proposed and improved by Michael
    Chirico and Joshua Ulrich in PR#17674.
  * Experimental balancePOSIXlt() utility allows using "ragged" and
    or out-of-range "POSIXlt" objects more correctly, e.g., in
    subsetting and subassignments.  Such objects are now documented.
    More experimentally, a "POSIXlt" object may have an attribute
    "balanced" indicating if it is known to be filled or fully
    balanced.
  * Functions axis.Date() and axis.POSIXct() are rewritten to gain
    better default tick locations and better default formats by using
    prettyDate(). Thanks to Swetlana Herbrandt.
  * The mapping of Windows' names for time zones to IANA's 'Olson'
    names has been updated.  When ICU is available (it is by
    default), it is used to get a mapping for the current region set
    in Windows.  This can be overridden by setting environment
    variable TZ to the desired Olson name - see OlsonNames() for
    those currently available.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 16
    and so packages that provide graphics devices should be
    reinstalled.
  * The grDevices and grid packages have new functions for rendering
    typeset glyphs, primarily: grDevices::glyphInfo() and
    grid::grid.glyph().
    Rendering of typeset glyphs is only supported so far on the
    Cairo-based graphics devices and on the pdf() and quartz()
    devices.
  * The defined behaviour for "clear" and "source" compositing
    operators (via grid::grid.group()) has been changed (to align
    better with simple interpretation of original Porter-Duff
    definitions).
  * Support for gradients, patterns, clipping paths, masks, groups,
    compositing operators, and affine transformations has been added
    to the quartz() device.
  INSTALLATION on a UNIX-ALIKE:
  * A system installation of generic LAPACK 3.10.0 or later will be
    preferred to the version in the R sources.
    configure option --with-lapack=no (equivalently --without-lapack)
    forces compilation of the internal LAPACK sources.
    If --with-lapack is not specified, a system liblapack is looked
    for and used if it reports version 3.10.0 or later and does not
    contain BLAS routines.
    Packages using LAPACK will need to be reinstalled if this changes
    to using an external library.
  * On aarch64 Linux platforms using GCC, configure now defaults to
  - fPIC (instead of -fpic), as desired in PR#18326.
  * configure now checks conversion of datetimes between POSIXlt and
    POSIXct around year 2020.  Failure (which has been seen on
    platforms missing tzdata) is fatal.
  * If configure option --with-valgrind-instrumentation is given
    value 1 or 2, option --with-system-valgrind-headers is now the
    default and ignored (with a warning).  It is highly recommended
    that the system headers are installed alongside valgrind: they
    are part of its packaging on some Linux distributions and
    packaged separately (e.g. in the valgrind-devel RPM) on others.
    configure will give a warning if they are not found.
    The system headers will be required in a future release of R to
    build with valgrind instrumentation.
  * libcurl 8.x is now accepted by configure: despite a change in
    major version number it changes neither API nor ABI.
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools43, an update of the Rtools42 toolchain.  It is
    based on gcc 12 and newer versions of MinGW-W64, binutils and
    libraries.  At this time R-devel can still be built using
    Rtools42 without changes, but when R-devel is installed via the
    installer, it will by default look for Rtools43.
  * Old make targets rsync-extsoft and 32-bit ones that are no longer
    needed have been removed.
  * Default builds (including for packages) no longer select C99.
    Thus the C standard used is the default for the compiler, which
    for the toolchain in Rtools43 is C17.  (This is consistent with
    Unix builds.)
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++17 where
    available (which it is on all currently checked platforms): if
    not C++14 or C++11 is used if available otherwise C++ is not
    supported.
  * USE_FC_LEN_T is the default: this uses the correct
    (compiler-dependent) prototypes for Fortran BLAS/LAPACK routines
    called from C/C++, and requires adjustment of many such calls -
    see 'Writing R Extensions' SS6.6.1.
  * There is initial support for C++23 as several compilers are now
    supporting -std=c++23 or -std=c++2b or similar.  As for C++20,
    there no additional configure checks for C++23 features beyond a
    check that the compiler reports a __cplusplus value greater than
    that in the C++20 standard.  C++ feature tests should be used.
  * There is support for a package to indicate the version of the C
    standard which should be used to compile it, and for the
    installing user to specify this.  In most cases R defaults to the
    C compiler's default standard which is C17 (a `bug-fix' of C11) -
    earlier versions of R or compilers may have defaulted to C99.
    Current options are:
    USE_C17 Use a standard that is at most C17.  The intention is to
    allow legacy packages to still be installed when later C
    standards become the default, including packages using new
    keywords as identifiers or with K&amp;R-style function
    declarations.  This will use C17 if available, falling back
    to C11.
    USE_C90 Use the C90 (aka C89) standard.  (As that standard did
    not require compilers to identify that version, all we can
    verify is that the compiler does not claim to be using a
    later standard.  It may accept C99 features - for example
    clang accepts // to make comments.)
    USE_C99 Use the C99 standard. This should be rarely needed - it
    avoids the few new features of C11/C17 which can be useful if
    a package assumes them if C17 is specified and they are not
    implemented.
    USE_C23 Use C23 (or in future, later).  Compiler/library support
    for C23 is still being implemented, but LLVM clang from
    15.0.0 and the upcoming GCC 13 have quite extensive support.
    These can be specified as part of the SystemRequirements field in
    the package's DESCRIPTION file or _via_ options --use-C17 and so
    on of R CMD INSTALL and R CMD SHLIB.
    For further details see "Writing R Extensions" SS1.2.5.
  * (Windows) A src/Makefile.ucrt or src/Makefile.win file is now
    included after R_HOME/etcR_ARCH/Makeconf and so no longer needs
    to include that file itself.  Installation of a package with such
    a file now uses a site Makevars file in the same way as a package
    with a src/Makevars.win file would.
  * configure is now passed crucial variables such as CC and CFLAGS
    in its environment, as many packages were not setting them (as
    documented in 'Writing R Extensions' SS1.2).
    This has most effect where configure is used to compile parts of
    the package - most often by cmake or libtool which obfuscate the
    actual compile commands used.
    Also used for configure.win and configure.ucrt on Windows.
  FORTRAN FLAGS:
  * The flag -fno-optimize-sibling-calls is no longer forced for
    gfortran 7 and later.  It should no longer be needed now using
    'hidden' character-length arguments when calling BLAS/LAPACK
    routines from C/C++ is the default even for packages.  (Unless
    perhaps packages call Fortran code from C/C++ without using R's
    headers and without allowing for these arguments.)
  C-LEVEL FACILITIES:
  * The deprecated S-compatibility macros DOUBLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * The deprecated legacy typedefs of Sint and Sfloat in header R.h
    are no longer defined, and that header no longer includes header
    limits.h from C nor climits from C++.
  * New macro CAD5R() is provided in Rinternals.h and used in a few
    places in the R sources.
  * ALTREP now supports VECSXP vectors. Contributed by Gabor Csardi
    in PR#17620.
  * The Rcomplex definition (in header R_ext/Complex.h) has been
    extended to prevent possible mis-compilation when interfacing
    with Fortran (PR#18430).  The new definition causes compiler
    warnings with static initializers such as {1, 2}, which can be
    changed to {.r=1, .i=2}.
    Using the new definition from C++ depends on compiler extensions
    supporting C features that have not been incorporated into the
    C++ standards but are available in g++ and clang++: this may
    result in C++ compiler warnings but these have been worked around
    for recent versions of common compilers (GCC, Apple/LLVM clang,
    Intel).
    It is intended to change the inclusion of header R_ext/Complex.h
    by other R headers, so C/C++ code files which make use of
    Rcomplex should include that header explicitly.
  UTILITIES:
  * R CMD check does more checking of package .Rd files, warning
    about invalid email addresses and (some) invalid URIs and noting
    empty \item labels in description lists.
  * R CMD check now also reports problems when reading package news
    in md (file NEWS.md) and (optionally) plain text (file NEWS)
    formats.
  * _R_CHECK_TIMINGS_ defaults to a value from the environment even
    for R CMD check --as-cran; this allows for exceptionally fast or
    slow platforms.
    It now applies to checking PDF and HTML versions of the manuals,
    and 'checking CRAN incoming feasibility'.
  * R CMD check can optionally (but included in --as-cran) check
    whether HTML math rendering _via_ KaTeX works for the package .Rd
    files.
  * Non-interactive debugger invocations can be trapped by setting
    the environment variable _R_CHECK_BROWSER_NONINTERACTIVE_ to a
    true value.  This is enabled by R CMD check --as-cran to detect
    the use of leftover browser() statements in the package.
  * The use of sprintf and vsprintf from C/C++ has been deprecated in
    macOS 13 and is a known security risk.  R CMD check now reports
    (on all platforms) if their use is found in compiled code:
    replace by snprintf or vsnprintf respectively. [*NB:* whether
    such calls get compiled into the package is platform-dependent.]
  * Where recorded at installation, R CMD check reports the C and
    Fortran compilers used to build R.
    It reports the OS in use (if known, as given by osVersion) as
    well as that R was built for.
    It notes if a C++ standard was specified which is older than the
    current default: many packages have used C++11 to mean 'not
    C++98' - as C++11 is the minimum supported since R 4.0.0, that
    specification can probably be removed.
  * R CMD INSTALL reports the compilers (and on macOS, the SDK) used,
    and this is copied to the output of R CMD check.
    Where a C++ standard is specified, it is reported.
  * R CMD check's 'checking compilation flags in Makevars' has been
    relaxed to accept the use of flags such as -std=f2008 in
    PKG_FFLAGS.
  * tools::buildVignettes() has a new argument skip, which is used by
    R CMD check to skip (and note) vignettes with unavailable
    \VignetteDepends (PR#18318).
  * New generic .AtNames() added to enable class-specific completions
    after @. The formerly internal function findMatches() is now
    exported, mainly for use in methods for .DollarNames() and
    .AtNames().
  DEPRECATED AND DEFUNCT:
  * default.stringsAsFactors() is defunct.
  * Calling as.data.frame.&lt;class&gt;() directly (for 12 atomic classes)
    is going to be formally deprecated, currently activated by
    setting the environment variable
    _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ to non-empty, which also
    happens in R CMD check --as-cran.
  BUG FIXES:
  * Hashed environments with sizes less than 5 can now grow.
    (Reported to R-devel by Duncan Garmonsway.)
  * as.character(&lt;Rd&gt;, deparse = TRUE) failed to re-escape curly
    braces in LaTeX-like text.  (Reported by Hadley Wickham in
    PR#18324.)
  * library() now passes its lib.loc argument when requiring Depends
    packages; reported (with fix) in PR#18331 by Mikael Jagan.
  * R CMD Stangle: improved message about 'Output' files.
  * head(x, n) and tail(x, n) now signal an error if n is not
    numeric, instead of incidentally "working" sometimes returning
    all of x.  Reported and discussed by Colin Fay, in PR#18357.
  * The "lm" method for summary() now gives the correct F-statistic
    when the model contains an offset.  Reported in PR#18008.
  * C() and `contrasts&lt;-`() now preserve factor level names when
    given a function object (as opposed a function name which did
    preserve names). Reported in PR#17616.
  * c(a = 1, 2)[[]] no longer matches 2 but rather signals a
    _classed_ error.  Reported and analysed by Davis Vaughan in
    PR#18367, a duplicate of PR#18004, by Jan Meis et al.  For
    consistency, NULL[[]] is also erroneous now.  x[[]] &lt;- v gives an
    error of the same class "MissingSubscriptError".
  * The relist() function of utils now supports NULL elements in the
    skeleton (PR#15854).
  * ordered(levels = *) (missing x) now works analogously to factor(,
    ordered=TRUE); reported (with fix) by Achim Zeileis in PR#18389.
  * User-defined Rd macro definitions can now span multiple lines,
    thanks to a patch from Duncan Murdoch. Previously, the Rd parser
    silently ignored everything after the first line.
  * Plain-text help (tools::Rd2txt()) now preserves an initial blank
    line for text following description list items.
  * tools::Rd2HTML() and tools::Rd2latex() no longer split \arguments
    and \value lists at Rd comments.
  * tools::Rd2latex() now correctly handles optional text outside
    \items of argument lists as well as bracketed text at the
    beginning of sections, e.g., \value{[NULL]}.
  * as.character(&lt;POSIXt&gt;) now behaves more in line with the methods
    for atomic vectors such as numbers, and is no longer influenced
    by options().  Ditto for as.character(&lt;Date&gt;).  The
    as.character() method gets arguments digits and OutDec with
    defaults _not_ depending on options().  Use of as.character(*,
    format = .) now warns.
  * Similarly, the as.character.hexmode() and *.octmode() methods
    also behave as good citizen methods and back compatibility option
    keepStr = TRUE.
  * The as.POSIXlt(&lt;POSIXlt&gt;) and as.POSIXct(&lt;POSIXct&gt;) default
    methods now do obey their tz argument, also in this case.
  * as.POSIXlt(&lt;Date&gt;) now does apply a tz (time zone) argument, as
    does as.POSIXct(); partly suggested by Roland Fuss on the R-devel
    mailing list.
  * as.Date.POSIXlt(x) now also works when the list components are of
    unequal length, aka "partially filled" or "ragged".
  * expand.model.frame() looked up variables in the wrong environment
    when applied to models fitted without data.  Reported in
    PR#18414.
  * time() now (also) uses the ts.eps = getOption("ts.eps") argument
    and thus by default rounds values very close to the start (or
    end) of a year.  Based on a proposal by Andre"i V. Kostyrka on
    R-help.
  * Printing of a factanal() result with just one factor and sort =
    TRUE now works regularly, fixing PR#17863 by Timothy Bates,
    thanks to the 'R Contributors' working group.
  * Printing 0-length objects of class "factor", "roman", "hexmode",
    "octmode", "person", "bibentry", or "citation" now prints
    something better, one of which fixes PR#18422, reported by
    Benjamin Feakins.
  * Sys.timezone() queries timedatectl only if systemd is loaded;
    addressing a report by Jan Gorecki in PR#17421.
  * The formula method of cor.test() had scoping problems when
    environment(formula) was not the calling environment; reported
    with a patch proposal by Mao Kobayashi in PR#18439.
  * attach() of an environment with active bindings now preserves the
    active bindings.  Reported by Kevin Ushey in PR#18425.
  * BLAS detection now works also with system-provided libraries not
    available as regular files.  This fixes detection of the
    Accelerate framework on macOS since Big Sur.  Reported by David
    Novgorodsky.
  * download.file() gives a helpful error message in case of an
    invalid download.file.method option, thanks to Colin Fay's report
    in PR#18455.
  * Sporadic crashes of Rterm when using completion have been fixed.
  * Rprof() is now more reliable.  A livelock in thread
    initialization with too short sampling interval has been fixed on
    macOS.  A deadlock in using the C runtime has been fixed on
    Windows.  A potential deadlock has been prevented on Unix.
  * Cursor placement in Rgui now works even after a fixed-width font
    is selected.
  * Mandatory options (options()) are now set on startup so that
    saving and restoring them always works (PR#18372).
  * Package installation, R CMD INSTALL or install.packages(*), now
    parses each of the &lt;pkg&gt;/R/*.R files individually instead of
    first concatenating and then parse()ing the large resulting file.
    This allows parser or syntax errors to be diagnosed with correct
    file names and line numbers, thanks to Simon Dedman's report and
    Bill Dunlap's patch in PR#17859.
    This _does_ require syntactically self contained R source files
    now, fixing another inadvertent bug.
  * predict.lm(&lt;model with offset&gt;) now finds the offset in the
    correct environment, thanks to Andr'e Gillibert's report and patch
    in PR#18456.
  * getInitial(&lt;formula&gt;) now finds the selfStart model in the
    correct environment.  (Reported by Ivan Krylov in PR#18368.)
  * Fix for possible segfault when using recently-added graphics
    features, such as gradients, clipping paths, masks, and groups
    with pdf(file=NULL).
  * class(m) &lt;- class(m) no longer changes a matrix m by adding a
    class _attribute_.
  * packageDate(pkg) now only warns once if there is no pkg.
  * When ts() creates a multivariate time series, "mts", it also
    inherits from "array" now, and is.mts() is documented _and_
    stricter.
  * Rd2txt() now preserves line breaks of \verb Rd content and from
    duplicated \cr.  The former also fixes the rendering of verbatim
    output from Rd \Sexpr in plain-text help.
  * uniroot(f, interval) should no longer wrongly converge _outside_
    the interval in some cases where abs(f(x)) == Inf for an x at the
    interval boundary, thanks to posts by Ben Bolker and Serguei
    Sokol on R-devel.
  * Vectorized alpha handling in palette functions such as in gray(),
    rainbow(), or hcl.colors() works correctly now, thanks to Achim
    Zeileis' report and patch in PR#18476.
  * Formatting and print()ing of bibentry objects has dropped the
    deprecated citation.bibtex.max argument, such that the bibtex
    argument's default for print.bibentry() depends directly on the
    citation.bibtex.max option, whereas in format.bibentry() the
    option no longer applies.
  * Attempting to use a character string naming a foreign function
    entry point in a foreign function call in a package will now
    signal an error if the packages has called R_forceSymbols to
    specify that symbols must be used.
  * An error in table() could permanently set options(warn=2)
    promoting all subsequent warnings to errors.
  * The sigma() function gave misleading results for binary GLMs.  A
    new method for objects of class "glm" returns the square root of
    the estimate of the dispersion parameter using the same
    calculation as summary.glm().
  * bs() and ns() in the (typical) case of automatic knot
    construction, when some of the supposedly inner knots coincide
    with boundary knots, now moves them inside (with a warning),
    building on PR#18442 by Ben Bolker.
  * R CMD on Windows now skips the site profile with --no-site-file
    and --vanilla even when R_PROFILE is set (PR#18512, from Kevin
    Ushey).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1686916800">- CHANGES IN R 4.3.1:
  C-LEVEL FACILITIES:
  * The C-level API version of R's integrate(), Rdqags() in Applic.h,
    now returns the correct number of integrand evaluations neval,
    fixing PR#18515 reported and diagnosed by Stephen Wade.
  * The C prototypes for LAPACK calls dspgv and dtptrs in
    R_exts/Lapack.h had one too many and one too few character length
    arguments - but this has not caused any known issues. To get the
    corrected prototypes, include
    [#]include &lt;Rconfig.h&gt; // for PR18534fixed
    [#]ifdef PR18534fixed
    [#] define usePR18534fix 1
    [#]endif
    [#]include &lt;R_exts/Lapack.h&gt;
    in your C/C++ code (PR#18534).
  INSTALLATION:
  * Many of the checks of esoteric Internet operations and those
    using unreliable external sites have been moved to a new target
    that is not run by default and primarily intended for the core
    developers.  To run them use
    cd tests; make test-Internet-dev
  BUG FIXES:
  * .S3methods(), typically called from methods(), again marks
    methods from package base as visible.
    Also, the visibility of non-base methods is again determined by
    the method's presence in search().
  * tools::Rdiff() is now more robust against invalid strings, fixing
    installation tests on Windows without Rtools installed
    (PR#18530).
  * Fix (new) bug in hcl.colors(2, *), by Achim Zeileis (PR#18523).
  * head(., &lt;illegal&gt;) and tail(..) now produce more useful "Error in
    ...." error messages, fixing PR#18362.
  * Package code syntax on Windows is checked in UTF-8 when UTF-8 is
    the native encoding.
  * na.contiguous(x) now also returns the first run, when it is at
    the beginning and there is a later one of the same length;
    reported to R-devel, including a fix, by Georgi Boshnakov.
    Further, by default, it modifies only an existing attr(*,"tsp")
    but otherwise no longer sets one.
  * chol(&lt;not pos.def&gt;, pivot = &lt;T|F&gt;) now gives a correct error or
    warning message (depending on pivot), thanks to Mikael Jagan's
    (PR#18541).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1699012800">- CHANGES IN R 4.3.2:
  NEW FEATURES:
  * The default initialization of the "repos" option from the
    repositories file at startup can be skipped by setting
    environment variable R_REPOSITORIES to NULL such that
    getOption("repos") is empty if not set elsewhere.
  * qr.X() is now an implicit S4 generic in methods.
  * iconv(to = "ASCII//TRANSLIT") is emulated using substitution on
    platforms which do not support it (notably Alpine Linux).  This
    should give a human-readable conversion in ASCII on all platforms
    (rather than NA_character_).
  * trans3d() gains options continuous and verbose addressing the
    problem of possible "wrap around" when projecting too long
    curves, as reported by Achim Zeileis in PR#18537.
  * tools::showNonASCII() has been rewritten to work better on macOS
    14 (which has a changed implementation of iconv()).
  * tiff(type = "quartz") (the default on macOS) now warns if
    compression is specified: it continues to be ignored.
  INSTALLATION on a UNIX-ALIKE:
  * There is some support for building with Intel's LLVM-based
    compilers on x86_64 Linux, such as (C) icx, (C++) ipcx and
    (Fortran) ifx from oneAPI 2023.x.y.
  * There is support for using LLVM's flang-new as the Fortran
    compiler from LLVM 16.0.x (preferably 17.0.0 or later).
  UTILITIES:
  * R CMD check reports the use of the Fortran 90 random number
    generator RANDOM_NUMBER() and the subroutines to initialize it.
    'Writing R Extensions' has example code to use R's RNGs from
    Fortran.
  BUG FIXES:
  * substr(x, n, L) &lt;- cc now works (more) correctly for multibyte
    UTF-8 strings x when L &gt; nchar(x), thanks to a report and patch
    by 'Architect 95'.
  * contrib.url(character()) now returns 0-length character() as
    documented, which also avoids spurious warnings from
    available.packages() et al. in the edge case of an empty vector
    of repository URLs.
  * readChar(., 4e8) no longer fails, thanks to Kodi Arfer's report
    (PR#18557).
  * lapply(&lt;list&gt;, as.data.frame) no longer warns falsely for some
    base vector components.
  * Communication between parent and child processes in the multicore
    part of parallel could fail on platforms that do not support an
    arbitrarily large payload in system functions read()/write() on
    pipes (seen on macOS where a restriction to INT_MAX bytes is
    documented, without doing a partial read unlike Linux). The
    payload is now split into 1Gb chunks to avoid that problem.
    (PR#18571)
  * qqplot(x,y, conf.level=.) gives better confidence bounds when
    length(x) != length(y), thanks to Alexander Ploner's report and
    patch proposal (PR#18557).
  * norm(&lt;0-length&gt;, "2") now gives zero instead of an error, as all
    the other norm types, thanks to Mikael Jagan's PR#18542.
  * Build-stage Rd macros \packageAuthor and \packageMaintainer now
    process Authors@R, fixing NA results when the package DESCRIPTION
    omits Author and Maintainer fields.
  * Formatting and printing complex numbers could give things like
    0.1683-0i because of rounding error: -0i is now replaced by +0i.
  * postscript() refused to accept a title comment containing the
    letter "W" (PR#18599).
  * isoreg(c(1,Inf)) signals an error instead of segfaulting, fixing
    PR#18603.
  * tiff(type = "Xlib") was only outputting the last page of
    multi-page plots.
  * tools::latexToUtf8() again knows about \~{n} and other letters
    with tilde, fixing a regression in R 4.3.0, and about \^{i} as an
    alternative to \^{\i} (similarly with other accents).
    Furthermore, LaTeX codes for accented I letters are now correctly
    converted, also fixing related mistakes in
    tools::encoded_text_to_latex().
  * tar(*, tar = "internal") no longer creates out-of-spec tar files
    in the very rare case of user or group names longer than 32
    bytes, fixing PR#17871 with thanks to Ivan Krylov.
  * When using the "internal" timezone datetime code, adding a
    fraction of a second no longer adds one second, fixing PR#16856
    from a patch by Ivan Krylov.
  * tools::checkRd() no longer produces spurious notes about
    "unnecessary braces" from multi-line Rd results of \Sexpr macros.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1709208000">- CHANGES IN R 4.3.3:
  NEW FEATURES:
  * iconv() now fixes up variant encoding names such as "utf8"
    case-insensitively.
  DEPRECATED AND DEFUNCT:
  * The legacy encoding = "MacRoman" is deprecated in pdf() and
    postscript(): support was incomplete in earlier versions of R.
  BUG FIXES:
  * Arguments are now properly forwarded to methods on S4 generics
    with ... in the middle of their formal arguments. This was broken
    for the case when a method introduced an argument but did not
    include ... in its own formals. Thanks to Herv'e Pag`es for the
    report PR#18538.
  * Some invalid file arguments to pictex(), postscript() and xfig()
    opened a file called NA rather than throw an error.  These
    included postscript(NULL) (which some people expected to work
    like pdf(NULL)).
  * Passing filename = NA to svg(), cairo_pdf(), cairo_ps() or the
    Cairo-based bitmap devices opened a file called NA: it now throws
    an error.
  * quartz(file = NA) opened a file called NA, including when used as
    a Quartz-based bitmap device.  It now gives an error.
  * rank(&lt;long vector&gt;) now works, fixing PR#18617, thanks to Ilia
    Kats.
  * seq.int() did not adequately check its length.out argument.
  * match(&lt;POSIXct&gt;, .) is correct again for differing time zones,
    ditto for "POSIXlt", fixing PR#18618 reported by Bastian Klein.
  * drop.terms(*, dropx = &lt;0-length&gt;) now works, fixing PR#18563 as
    proposed by Mikael Jagan.
  * drop.terms(*) keeps + offset(.) terms when it should, PR#18565,
    and drop.terms() no longer makes up a response, PR#18566, fixing
    both bugs thanks to Mikael Jagan.
  * getS3method("t", "test") no longer finds the t.test() function,
    fixing PR#18627.
  * pdf() and postscript() support for the documented Adobe encodings
    "Greek" and "Cyrilllic" was missing (although the corresponding
    Windows' codepages could be used).
  * Computations of glyph metric information for pdf() and
    postscript() did not take into account that transliteration could
    replace one character by two or more (only seen on macOS 14) and
    typically warned that the information was not known.
  * rank(x) no longer overflows during integer addition, when
    computing rank average for largish but not-yet long vector x,
    fixing PR#18630, thanks to Ilia Kats.
  * list.files() on Windows now returns also files with names longer
    that 260 bytes (the Windows limit is 260 characters).
    Previously, some file names particularly with 'East Asian'
    characters were omitted.
  * cov2cor(&lt;0 x 0&gt;) now works, fixing PR#18423 thanks to Mikael
    Jagan and Elin Waring.
  * cov2cor(&lt;negative diagonal&gt;) and similar now give one warning
    instead of two, with better wording, fixing PR#18424 thanks to
    Mikael Jagan.
  * tools:: startDynamicHelp() now ensures port is in proper range,
    fixing PR#18645.
  * pbeta(x, a,b) is correct now for x=0 or 1 in the boundary cases
    where a or b or both are 0, fixing PR#18672 thanks to Michael
    Fay.
  * pmatch(x, table) for large table, also called for data frame row
    selection, dfrm[nm, ], is now interruptible, fixing PR#18656.
  * predict(&lt;rank-deficient lm&gt;, newdata=*) fix computing of nbasis,
    see Russ Lenth's comment 29 in PR#16158.
  * Added a work-around for a bug in macOS 14.3.1 and higher which
    prevents R plots in the Quartz Cocoa device from updating on
    screen.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1713960000">- CHANGES IN R 4.4.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Startup banners, R --version, sessionInfo() and R CMD check no
    longer report (64-bit) as part of the platform as this is almost
    universal - the increasingly rare 32-bit platforms will still
    report (32-bit).
    On Windows, ditto for window titles.
  * is.atomic(NULL) now returns FALSE, as NULL is not an atomic
    vector.  Strict back-compatibility would replace is.atomic(foo)
    by (is.null(foo) || is.atomic(foo)) but should happen only
    sparingly.
  NEW FEATURES:
  * The confint() methods for "glm" and "nls" objects have been
    copied to the stats package.  Previously, they were stubs which
    called versions in package MASS. The MASS namespace is no longer
    loaded if you invoke (say) confint(glmfit).  Further, the "glm"
    method for profile() and the plot() and pairs() methods for class
    "profile" have been copied from MASS to stats.  (profile.nls()
    and plot.profile.nls() were already in stats.)
  * The confint() and profile methods for "glm" objects have gained a
    possibility to do profiling based on the Rao Score statistic in
    addition to the default Likelihood Ratio. This is controlled by a
    new test = argument.
  * The pairs() method for "profile" objects has been extended with a
    which = argument to allow plotting only a subset of the
    parameters.
  * The "glm" method for anova() computes test statistics and
    p-values by default, using a chi-squared test or an F test
    depending on whether the dispersion is fixed or free.  Test
    statistics can be suppressed by giving argument test a false
    logical value.
  * In setRepositories() the repositories can be set using their
    names via name = instead of index ind =.
  * methods() and .S3methods() gain a all.names option for the (rare)
    case where functions starting with a . should be included.
  * Serializations can now be interrupted (e.g., by Ctrl-C on a
    Unix-alike) if they take too long, e.g., from save.image(),
    thanks to suggestions by Ivan Krylov and others on R-devel.
  * New startup option --max-connections to set the maximum number of
    simultaneous connections for the session.  Defaults to 128 as
    before: allowed values up to 4096 (but resource limits may in
    practice restrict to smaller values).
  * R on Windows (since Windows 10 2004) now uses the new Segment
    Heap allocator. This may improve performance of some
    memory-intensive applications.
  * When R packages are built, typically by R CMD build &lt;pkg&gt;, the
    new --user=&lt;build_user&gt; option overrides the (internally
    determined) user name, currently Sys.info()["user"] or LOGNAME.
    This is a (modified) fulfillment of Will Landau's suggestion in
    PR#17530.
  * tools::testInstalledBasic() gets new optional arguments outDir
    and testSrcdir, e.g., allowing to use it in a &lt;builddir&gt; !=
    &lt;srcdir&gt; setup, and in standard "binary" Windows installation
  * if* a source tests/ folder is present.
  * range(&lt;DT_with_Inf&gt;, finite = TRUE) now work for objects of class
    "Date", "POSIXct", and "POSIXlt" with infinite entries,
    analogously to range.default(), as proposed by Davis Vaughan on
    R-devel.  Other range()-methods can make use of new function
    .rangeNum().
  * New .internalGenerics object complementing .S3PrimitiveGenerics,
    for documentation and low-level book-keeping.
  * grid() now invisibly returns the x- and y- coordinates at which
    the grid-lines were drawn.
  * norm(., type) now also works for complex matrices.
  * kappa(., exact = TRUE, norm = *) now works for all norms and also
    for complex matrices.  In symmetric / triangular cases, the new
    argument uplo = "U" | "L" allows the upper or lower triangular
    part to be specified.
  * memDecompress(type = "unknown") recognizes compression in the
    default 'zlib' format as used by memCompress(type = "gzip").
  * memCompress() and memDecompress() will use the libdeflate library
    (&lt;https://github.com/ebiggers/libdeflate&gt;) if installed.  This
    uses the same type of compression for type = "gzip" but is 1.5-2x
    faster than the system libz library on some common platforms: the
    speed-up may depend on the library version.
  * diff() for objects of class "Date", "POSIXct", and "POSIXlt"
    accepts a units argument passed via ....
  * Dynamic help now does a much better job of rendering package
    DESCRIPTION metadata.
  * Rprof() gains an event argument and support for elapsed (real)
    time profiling on Unix (PR#18076).
  * filled.contour() gains a key.border argument.
  * tools::update_pkg_po() gets arguments pot_make and mo_make for
    _not_ re-making the corresponding files, and additionally a
    verbose argument.
  * Hexadecimal string colour specifications are now accepted in
    short form, so, for example, we can use "#123", which is
    equivalent to "#112233".
    Thanks to MikeFC for the original idea and Ella Kaye, Malcolm
    Barrett, George Stagg, and Hanne Oberman for the patch.
  * Plain-text help shows \var markup by angle brackets.
  * The new experimental primitive function declare() is intended to
    eventually allow information about R code to be communicated to
    the interpreter, compiler, and code analysis tools. The syntax
    for declarations is still being developed.
  * Functions psmirnov(), qsmirnov() and rsmirnov() in package stats
    have had argument two.sided renamed to alternative, to take into
    account that the permutation distributions of the one-sided
    statistics can be different in the case of ties.  Consequence of
    PR#18582.
  * sort() is now an implicit S4 generic in methods.
  * Formatting and printing, format(z), print(z), of complex vectors
    z no longer zap relatively small real or imaginary parts to zero,
    fixing PR#16752.  This is an API change, as it was documented
    previously to round real and imaginary parts together on purpose,
    producing nicer looking output.  As mentioned, e.g. in the PR,
    this change is compatible with many other "R-like" programming
    environments.
    We have simplified the internal code and now basically format the
    real and imaginary parts independently of each other.
  * New experimental functions Tailcall() and Exec() to support
    writing stack-space-efficient recursive functions.
  * Where characters are attempted to be plotted by pdf(),
    postscript() and xfig() which are not in the selected 8-bit
    character set (most often Latin-1) and the R session is using a
    UTF-8 locale, the warning messages will show the UTF-8 character
    rather than its bytes and one dot will be substituted per
    character rather than per byte.  (Platforms whose iconv() does
    transliteration silently plot the transliteration.)
    In a UTF-8 locale some transliterations are now done with a
    warning (e.g., dashes and Unicode minus to hyphen, ligatures are
    expanded, permille (‰) is replaced by o/oo), although the OS may
    have got there first.  These are warnings as they will continue
    to be replaced by dots in earlier versions of R.
  * The matrix multiplication functions crossprod() and tcrossprod()
    are now also primitive and S3 generic, as %*% had become in R
    4.3.0.
  * source() and example() have a new optional argument catch.aborts
    which allows continued evaluation of the R code after an error.
  * The non-Quartz tiff() devices allow additional types of
    compression if supported by the platform's libtiff library.
  * The list of base and recommended package names is now provided by
    tools::standard_package_names().
  * cairo_pdf() and cairo_ps() default to onefile = TRUE to closer
    match pdf() and postscript().
  * New option catch.script.errors provides a documented way to catch
    errors and then continue in non-interactive use.
  * L %||% R newly in base is an expressive idiom for the phrases
    if(!is.null(L)) L else R or if(is.null(L)) R else L.
  * The return value from warnings() now always inherits from
    "warnings" as documented, now also in the case of no warnings
    where it previously returned NULL.
  * as.complex("1i") now returns 0 + 1i instead of NA with a warning.
  * z &lt;- c(NA, 1i) now keeps the imaginary part Im(z[1]) == 0, no
    longer coercing to NA_complex_.  Similarly, cumsum(z) correctly
    sums real and imaginary parts separately, i.e., without
    "crosstalk" in case of NAs.
  * On Alpine Linux iconv() now maps "latin2", "latin-2", "latin9"
    and "latin-9" to encoding names the OS knows about
    (case-insensitively).
  * iconv(sub = "Unicode") now always zero-pads to four (hex) digits,
    rather than to 4 or 8.  (This seems to have become the convention
    once Unicode restricted the number of Unicode points to 2^21 - 1
    and so will never need more than 6 digits.)
  * NCOL(NULL) now returns 0 instead of 1, for consistency with
    cbind().
  * The information for the Euro glyph missing from the Adobe .afm
    files for the Courier, Helvetica and Times families has been
    copied from their URW equivalents - this will improve vertical
    centring in the pdf() and postscript() devices.
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.12.0.  The changes are almost entirely cosmetic.
  * The included LAPACK sources have been updated to version 3.12.0
    and some further double-complex routines added.
  * There are new font families for the 2014--5 URW 2.0 fonts (see
    ?pdf) which are included in recent versions of Ghostscript.
    These have font widths for most Greek glyphs and a few others
    which were missing from the original versions (whose font
    families remain available for reproducibility, although
    Ghostscript-based viewers will render using the 2.0 versions).
  * Improve the large-n efficiency of as.matrix(&lt;dist&gt;), thanks an R
    contributors effort, notably by Tim Taylor and Heather Turner,
    see PR#18660.
  * The default and numeric methods of all.equal() get a check.class
    option.
  * zapsmall() gets new optional arguments, function mFUN and min.d,
    for extra flexibility; fulfills a wish in PR#18199.  Also, it is
    now an implicit S4 generic in package methods.
  * The Rd filter for aspell() gains an ignore argument.
  * New generic function sort_by(), primarily useful for the
    data.frame method which can be used to sort rows of a data frame
    by one or more columns.
  * The icence headers for the RPC code in src/extra/xdr have been
    updated to use the GPL-compatible licence published by Oracle
    America in 2010.
  * New function pkg2HTML() in tools to create single-page HTML
    reference manuals for R packages.
  * The byte code evaluator now uses less C stack space for recursive
    calls to byte-compiled functions. It also makes more of an effort
    to avoid allocations for scalar return values.
  * New completion option backtick (disabled by default) allows
    non-syntactic completions to be wrapped in backquotes. This is
    currently only useful for Jupyter notebooks via the IRkernel
    package, and may cause problems for other backends.
  INSTALLATION:
  * The parser has been updated to work with bison 3.8.2, which is
    now used for the pre-generated parsers in gram.c, file.c, and
    gramRd.c. A few parser error messages have changed, which may
    affect code that relies on exact messages.
  INSTALLATION on a UNIX-ALIKE:
  * System valgrind headers are now required to use configure option
  - -with-valgrind-instrumentation with value 1 or 2.
  * configure will warn if it encounters a 32-bit build, as that is
    nowadays almost untested.
  * Environment variable R_SYSTEM_ABI is no longer used and so no
    longer recorded in etc/Renviron (it was not on Windows and was
    only ever used when preparing package tools).
  * If the libdeflate library and headers are available, libdeflate
    rather than libz is used to (de)compress R objects in lazy-load
    databases.  Typically tasks spend up to 5% of their time on such
    operations, although creating lazy-data databases is one of the
    exceptions.
    This can be suppressed if the library is available by the
    configure option --without-libdeflate-compression.
  * configure option --enable-lto=check has not worked reliably since
    2019 and has been removed.
  * The minimum autoconf requirement for a maintainer build has been
    increased to autoconf 2.71.
    It is intended to increase this to 2.72 for R 4.5.0: the
    distributed configure file was generated using 2.72.
  * The minimum version requirement for an external LAPACK has been
    reduced to 3.9.0.
  * No default C++ compiler is set if no C++17 compiler is detected:
    there is no longer an automatic fallback to C++14 or C++11.
    Compilers from the last five years should have sufficient
    support: for others macros CXX and CXXSTD can be set in file
    config.site to provide a fallback if needed.
    The Objective-C++ compiler now by default uses the standard
    selected by R for C++ (currently C++17) rather than the default
    standard for the C++ compiler (which on macOS is still C++98).
  INSTALLATION on macOS:
  * A new configure option --with-newAccelerate makes use of Apple's
    'new' BLAS / LAPACK interfaces in their Accelerate framework.
    Those interfaces are only available in macOS 13.3 or later, and
    building requires SDK 13.3 or later (from the Command Line Tools
    or Xcode 14.3 or later).
    By default the option uses new Accelerate for BLAS calls: to also
    use it for LAPACK use option --with-newAccelerate=lapack.  The
    later interfaces provide LAPACK 3.9.1 rather than 3.2.1: 3.9.1 is
    from 2021-04 and does not include the improved algorithms
    introduced in LAPACK 3.10.0 (including for BLAS calls).
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools44, an update of the Rtools43 toolchain.  It is
    based on GCC 13 and newer versions of MinGW-W64, binutils and
    libraries (targeting 64-bit Intel CPUs).  R-devel can no longer
    be built using Rtools43 without changes.
  * Rtools44 has experimental support for 64-bit ARM (aarch64) CPUs
    _via_ the LLVM 17 toolchain using lld, clang/flang-new and
    libc++.
  UTILITIES:
  * R CMD check notes when S4-style exports are used without
    declaring a strong dependence on package methods.
  * tools::checkRd() (used by R CMD check) detects more problems with
    \Sexpr-based dynamic content, including bad nesting of \Sexprs
    and invalid arguments.
  * tools::checkRd() now reports Rd titles and section names ending
    in a period; this is ignored by R CMD check unless environment
    variable _R_CHECK_RD_CHECKRD_MINLEVEL_ is set to -5 or smaller.
  * R CMD check now notes Rd files without an \alias, as long
    documented in 'Writing R Extensions' §1.3.1.  The check for a
    missing \description has been moved from tools::checkRd() to
    tools::checkRdContents().
  * R CMD check now visits inst/NEWS.Rd and OS-specific man
    subdirectories when checking Rd files.
  * tools::checkDocFiles() and tools::checkRdContents() now also
    check internal Rd files by default, but "specially" (ignoring
    missing documentation of arguments).
  * R CMD Rdiff gets option --useEx.
  * R CMD check now warns on non-portable uses of Fortran KIND such
    as INTEGER(KIND=4) and REAL(KIND=8).
    To see the failing lines set environment variable
    _R_CHECK_FORTRAN_KIND_DETAILS_ to a true value.
  * When checking Rd files, R CMD check now notes some of the "lost
    braces" that tools::checkRd() finds.  Typical problems are Rd
    macros missing the initial backslash (e.g., code{...}), in-text
    set notation (e.g., {1, 2}, where the braces need escaping), and
    \itemize lists with \describe-style entries of the form
    \item{label}{description}.
  * R CMD INSTALL (and hence check) will compile C++ code with
  - DR_NO_REMAP if environment variable _R_CXX_USE_NO_REMAP_ is set
    to a true value.  It is planned that this will in future become
    the default for compiling C++.
  * The new built-in Rd macro \dontdiff{} can be used to mark example
    code whose output should be ignored when comparing check output
    to reference output (tests/Examples/&lt;pkg&gt;-Ex.Rout.save).  The
    \dontdiff tag, like \donttest, is _not_ shown on the rendered
    help page, so provides a clean alternative to ##
    IGNORE_RDIFF_(BEGIN|END) comments.
  * R CMD build when there is no NAMESPACE, now uses the recommended
    exportPattern("^[^.]"), instead of exporting everything.
  * R CMD check now warns about non-ASCII characters in the NAMESPACE
    file (in addition to R files). Such packages are not portable and
    may fail to install on some platforms.
  C-LEVEL FACILITIES:
  * Headers R_ext/Applic.h and R-ext/Linpack.h used to include
    R_ext/BLAS.h although this was undocumented and unneeded by their
    documented entry points.  They no longer do so.
  * New function R_missing(), factored out from do_missing(), used to
    fix PR#18579.
  * SEXP type S4SXP has been renamed to OBJSXP to support
    experimenting with alternative object systems.  The S4SXP value
    can still be used in C code but is now deprecated.  Based on
    contributions from the R Consortium's Object-Oriented Programming
    Working Group.
  * New function pow1p(x,y) for accurate (1+x)^y.
  * mkCharLenCE was incorrectly documented to take a size_t length
    but was implemented with int (and character strings in R are
    limited to 2^31 - 1 bytes).
  DEPRECATED AND DEFUNCT:
  * data() no longer handles zipped data from long-defunct (since R
    2.13.0) --use-zip-data installations.
  * The legacy graphics devices pictex() and xfig() are now
    deprecated.  They do not support recent graphics enhancements and
    their font handling is rudimentary. The intention is to retain
    them for historical interest as long as they remain somewhat
    functional.
  * Support for encoding = "MacRoman" has been removed from the pdf()
    and postscript() devices - this was a legacy encoding supporting
    classic macOS up to 2001 and no longer has universal libiconv
    support.
  * is.R() is deprecated as no other S dialect is known to be in use
    (and this could only identify historical dialects, not future
    ones).
    Further information on calls can be obtained by setting the
    environment variable _R_DEPRECATED_IS_R_ to error which turns the
    deprecation warning into an error and so by default gives a
    traceback.  (This is done by R CMD check --as-cran.)
  * UseMethod() no longer forwards local variables assigned in the
    generic function into method call environments before evaluating
    the method body. This makes method calls behave more like
    standard function calls and makes method code easier to analyze
    correctly.
  * The twelve as.data.frame.&lt;class&gt;() methods which were deprecated
    only via _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ and in R CMD
    check --as-cran are formally deprecated now in favour of calling
    as.data.frame() or as.data.frame.vector().  The deprecation
    "check" now works also when as.data.frame() is S4 generic thanks
    to Ivan Krylov.
  * The default method for the directional comparison operators &lt;, &gt;,
    &lt;=, and &gt;= now signals an error when one of the operands is a
    language object, i.e. a symbol or a call.
  * For terms.formula(), deprecate abb and neg.out arguments
    _formally_ in addition to just documenting it.
  BUG FIXES:
  * The methods package is more robust to not being attached to the
    search path.  More work needs to be done.
  * pairwise.t.test() misbehaved when subgroups had 0 DF for
    variance, even with pool.sd = TRUE.  (PR#18594 by Jack Berry).
  * Probability distribution functions [dpq]&lt;distrib&gt;(x, *), but also
    bessel[IKJY](x, .) now consistently preserve attributes(x) when
    length(x) == 0, e.g., for a 2 x 0 matrix, thanks to Karolis
    Koncevičius' report PR#18509.
  * Group "Summary" computations such as sum(1:3, 4, na.rm = 5, NA,
    7, na.rm = LL) now give an error instead of either 17 or NN for
    LL true or false, as proposed by Ivan Krylov on the R-devel
    mailing list.  (This also means it is now an error to specify
    na.rm more than once.)
  * as.complex(x) now returns complex(real = x, imaginary = 0) for
    _all_ numerical and logical x, notably also for NA or
    NA_integer_.
  * Directories are now omitted by file.copy(, recursive = FALSE) and
    in file.append() (PR#17337).
  * gsub() and sub() are now more robust to integer overflow when
    reporting errors caused by too large input strings (PR#18346).
  * Top-level handlers are now more robust to attempts to remove a
    handler whilst handlers are running (PR#18508).
  * The handling of Alt+F4 in dialogs created on Windows using
    GraphApp has been fixed (PR#13870).
  * density() more consistently computes grid values for the
    FFT-based convolution, following Robert Schlicht's analysis and
    proposal in PR#18337, correcting density values typically by a
    factor of about 0.999.  Argument old.coords = TRUE provides back
    compatibility.
  * palette.colors() gains a name argument that defaults to FALSE
    controlling whether the vector of colours that is returned has
    names (where possible).  PR#18529.
  * tools::xgettext() no longer extracts the (non-translatable) class
    names from warningCondition and errorCondition calls.
  * S3method(&lt;gen&gt;, &lt;class&gt;, &lt;func&gt;) in the NAMESPACE file now works
    (again) when &lt;func&gt; is visible from the namespace, e.g.,
    imported, or in base.
  * getParseData(f) now also works for a function defined in the
    first of several &lt;pkg&gt;/R/*.R source files, thanks to Kirill
    Müller's report and Duncan Murdoch's patch in PR#16756.
  * Rd \Sexpr macros with nested #ifdef conditionals were not
    processed.
  * A non-blocking connection with non-default encoding (such as a
    socket) now correctly returns from readLines() after new data has
    arrived also when its EOF had been reached previously.  Thanks to
    Peter Meilstrup's report on R-devel and Ivan Krylov's report and
    patch proposal in PR#18555.
  * tools::checkRdContents() failed to detect empty argument
    descriptions when they spanned multiple lines, including those
    generated by prompt().  These cases are now noted by R CMD check.
  * Plain-text help no longer outputs spurious colons in the
    arguments list (for multi-line \item labels in the Rd source).
  * kappa() and rcond() work correctly in more cases; kappa(., norm =
    "2") now warns that it computes the 1-norm with (default) exact =
    FALSE; prompted by Mikael Jagan's quite comprehensive PR#18543.
  * Rd skeletons generated by prompt() or promptData() now use a
    dummy title (so R CMD build works).  tools::checkRdContents() has
    been updated to detect such template leftovers, including from
    promptPackage().
  * When S4 method dispatch fails because no method was found, the
    error message now includes the signature argument names; thanks
    to Michael Chirico's proposal on the R-devel list.
  * withAutoprint({ .. }) now preserves srcrefs previously lost,
    thanks to Andrew Simmons' report plus fix in PR#18572.
  * transform.data.frame() no longer adjusts names; in particular,
    untransformed variables are kept as-is, including those with
    syntactically invalid names (PR#17890).
  * The keep.source option for Rd \Sexpr blocks is no longer ignored.
  * The formula methods for t.test() and wilcox.test() now catch when
    paired is passed, addressing PR#14359; use Pair(x1, x2) ~ 1 for a
    paired test.
  * The level reported in the browser prompt was often too large. It
    now shows the number of browser contexts on the stack.
  * For cbind() and rbind(), the optional deparse.level argument is
    now properly passed to methods, thanks to Mikael Jagan's PR#18579
    and comments there.
  * Some error and warning messages for large ('long vector')
    matrix(v, nr, nc) and dim(m) &lt;- d are now correct about sizes,
    using long long formatting, fixing PR#18612 (and more) reported
    by Mikael Jagan.
  * readChar(useBytes = TRUE) now terminates strings even when the
    underlying connection uses extra spaces in the input buffer.
    This fixes problems with extra garbage seen with gzip
    connections, PR#18605.
  * Named capture in PCRE regular expressions now works also with
    more than 127 named groups (PR#18588).
  * Datetime functions are now robust against long jumps when dealing
    with internal time zone changes.  This avoids confusing warnings
    about an invalid time zone, previously triggered by turning
    warnings into errors or handling them via tryCatch (PR#17966,
    PR#17780).
  * Datetime functions now restore even an empty TZ environment
    variable after internal time zone changes (PR#17724).  This makes
    results of datetime functions with this (typically unintentional)
    setting more predictable.
  * drop.terms(*) now drops response as by default, keep.response =
    FALSE, fixing PR#18564 thanks to Mikael Jagan.
  * dummy.coef(.) now also works for lm()-models with character
    categorical predictor variables rather than factor ones, fixing
    PR#18635 reported by Jinsong Zhao.
  * formals(f) &lt;- formals(f) now also works for a function w/o
    arguments and atomic _constant_ body(f).
  * Correct as.function(&lt;invalid list&gt;, .)'s error message.
  * removeSource() is yet more thorough in finding and removing
    "srcref" and the other source references from parsed R language
    chunks, fixing PR#18638 thanks to Andrew Simmons.
  * dgeom() is more accurate now, notably when its result is very
    small, fixing PR#18642 thanks to the proposal of Morten Welinder,
    also improving other instances where C level binom_raw(x, n, ..)
    has x == 0 or x== n.
  * warning() with options(warn = 1) has improved output for
    multi-line messages.
  * axis.Date() and axis.POSIXct() now respect the par("lab") setting
    for the number of pretty() intervals.
  * Comparisons for language objects (which are based on deparsing)
    are now more careful about using accurate deparsed results
    (PR#18676).
  * Plain-text help (Rd2txt) now correctly preserves blank lines
    following single-line \dontrun code.
  * &lt;POSIXlt&gt;[*] no longer sets wrong "balanced" attribute, fixing
    PR#18681 thanks to Mikael Jagan.
  * str(&lt;classed-call&gt;) now deparses the call as expected, fixing
    PR#18684, reported by Dave Slager.
  * In Rd examples, code following the closing brace of a \dontrun,
    \dontshow or \donttest tag on the same line is no longer skipped
    when R CMD check runs the examples.
  * as.data.frame(matrix(*, ncol=0)) now gets valid names() and
    colnames(); reported by Davis Vaughan on the R-devel list.
  * Internal Mathlib function stirlerr(n) is now almost fully
    (52-bit) accurate for all n &gt;= ~5.9 and more accurate also in the
    range 1 -- 5.9.  This entails small ("after 12th decimal")
    changes in density functions, e.g., dgamma() in _some_ regions of
    their support.  The fix was partly prompted by Morten Welinder's
    PR#18640.
  * Numbers like 9876543.2 are now considered non-integer by Mathlib
    internal R_nonint(), amending original fix of PR#15734.
  * Rd comment lines no longer cause broken paragraphs in the
    rendered PDF and plain-text help. In code blocks, pure comment
    lines (starting with %) no longer produce an empty line.
  * xtabs(Freq ~ .) now consistently defaults to na.action = na.pass,
    using na.rm = FALSE (added as an argument) when summing over Freq
    (PR#17770).
  * tools::testInstalledPackage() is no longer silent about failures
    from running examples or tests and its return code no longer
    ignores failures from checking vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1718366400">- CHANGES IN R 4.4.1:
  C-LEVEL FACILITIES:
  * Functions R_atof and R_strtod declared in header R_ext/Utils.h
    are now documented in 'Writing R Extensions' and so formally part
    of the API.
  * The non-API entry points Rf_setSVector, Rf_StringFalse,
    Rf_StringTrue and Rf_isBlankString have been added to those
    reported by R CMD check.
  * The new function Rf_allocLang is now available. This provides an
    alternative to the idiom of calling Rf_allocList followed by
    SET_TYPEOF.
  UTILITIES:
  * R CMD check now reports as warnings what gfortran calls 'Fortran
    2018 deleted features', all of which have long been marked as
    'obsolescent' and some of which were deleted in Fortran 2008 or
    earlier.  Fortran compilers are no longer required to support
    these.
  BUG FIXES:
  * as.numeric(), scan(), type.convert() and other places which use
    the internal C function R_strtod now require a _non-empty_ digit
    sequence in a decimal or binary exponent.  This aligns with the
    C/POSIX standard for strtod and with ?NumericConstants.
  * as.data.frame(m, make.names=NA) now works correctly for a matrix
    m with NA's in row names.
  * The error message from &lt;POSIXlt&gt;[["hour"]] and similar now
    mentions *[[, "hour"]], as wished for in PR#17409 and proposed by
    Michael Chirico.
  * qbinom() and potentially qpois(), qnbinom(), no longer sometimes
    fail accurate inversion (of pbinom(), etc), thanks to Christopher
    Chang's report and patch in PR#18711.
  * The internal help server on Windows can again serve requests sent
    in quick succession, fixing a regression in R 4.4.0.
  * debugcall(&lt;S3Generic&gt;()) now also works when a corresponding
    S4-generic version is in the methods cache (PR#18143).
  * Package tools' toTitleCase(ch0) now returns character(0) when ch0
    is of zero length; fixing PR#18724, reported by David Hugh Jones.
  * R CMD check is no longer broken (without a check result and no
    explanation in 00check.log) for a package which declares an
    invalid VignetteBuilder in DESCRIPTION but has no vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1730376000">- CHANGES IN R 4.4.2:
  C-LEVEL FACILITIES:
  * The S-compatibility macros F77_COM and F77_COMDECL defined in
    header R_ext/RS.h are deprecated and will be removed shortly.  We
    could find no record of their use.
  BUG FIXES:
  * Mathlib function lgammacor(x) no longer warns about underflow to
    zero for large x.
  * Text widths and heights were incorrectly reported by the Quartz
    device if the drawing context didn't exist yet (typically when
    drawing off-screen to a window that is yet to appear, see
    PR#18591).
  * The Quartz device could segfault in cases where paths with spaces
    are used in the new glyph drawing API.  Thanks to Tomek
    Gieorgijewski (PR#18758).
  * On macOS in R CRAN builds, it is again possible to read
    little-endian UTF-16 text with a BOM from a connection using
    encoding="UTF-16".  Users building R from source should avoid
    using the system libiconv in macOS 14.1 and later.
  * methods' internal .requirePackage() now re-enables primitive
    method dispatch when needed; thanks to Ivan Krylov for
    demystifying CRAN package check failures on the R-devel mailing
    list.</changelog>
</package>
<package pkgid="6bef381b36af2b59296c2313322875cd3b66d78abbc6e721a9c08815c11fca7a751788ffd9cca30520ec8e25e6f0a25daa5c37e39d8ea654c03c9116e3bc8d45" name="R-utils" arch="x86_64">
  <version epoch="0" ver="4.4.2" rel="51.0.2.2.sr20241103"/>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1620302400">- To get in sync with d:l:R:autoCRAN the Matrix package's split
  in -devel was reversed.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339200">- improved spec file according to comments of dimstar in
  https://build.opensuse.org/request/show/892685</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339201">- CHANGES IN R 4.1.0:
  FUTURE DIRECTIONS:
  * It is planned that the 4.1.x series will be the last to support
    32-bit Windows, with production of binary packages for that
    series continuing until early 2023.
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Data set esoph in package datasets now provides the correct
    numbers of controls; previously it had the numbers of cases added
    to these.  (Reported by Alexander Fowler in PR#17964.)
  NEW FEATURES:
  * www.omegahat.net is no longer one of the repositories known by
    default to setRepositories().  (Nowadays it only provides source
    packages and is often unavailable.)
  * Function package_dependencies() (in package tools) can now use
    different dependency types for direct and recursive dependencies.
  * The checking of the size of tarball in R CMD check --as-cran
    &lt;pkg&gt; may be tweaked via the new environment variable
    _R_CHECK_CRAN_INCOMING_TARBALL_THRESHOLD_, as suggested in
    PR#17777 by Jan Gorecki.
  * Using c() to combine a factor with other factors now gives a
    factor, an ordered factor when combining ordered factors with
    identical levels.
  * apply() gains a simplify argument to allow disabling of
    simplification of results.
  * The format() method for class "ftable" gets a new option justify.
    (Suggested by Thomas Soeiro.)
  * New ...names() utility.  (Proposed by Neal Fultz in PR#17705.)
  * type.convert() now warns when its as.is argument is not
    specified, as the help file always said it _should_.  In that
    case, the default is changed to TRUE in line with its change in
    read.table() (related to stringsAsFactor) in R 4.0.0.
  * When printing list arrays, classed objects are now shown _via_
    their format() value if this is a short enough character string,
    or by giving the first elements of their class vector and their
    length.
  * capabilities() gets new entry "Rprof" which is TRUE when R has
    been configured with the equivalent of --enable-R-profiling (as
    it is by default).  (Related to Michael Orlitzky's report
    PR#17836.)
  * str(xS4) now also shows extraneous attributes of an S4 object
    xS4.
  * Rudimentary support for vi-style tags in rtags() and R CMD rtags
    has been added.  (Based on a patch from Neal Fultz in PR#17214.)
  * checkRdContents() is now exported from tools; it and also
    checkDocFiles() have a new option chkInternal allowing to check
    Rd files marked with keyword "internal" as well.  The latter can
    be activated for R CMD check via environment variable
    _R_CHECK_RD_INTERNAL_TOO_.
  * New functions numToBits() and numToInts() extend the raw
    conversion utilities to (double precision) numeric.
  * Functions URLencode() and URLdecode() in package utils now work
    on vectors of URIs.  (Based on patch from Bob Rudis submitted
    with PR#17873.)
  * path.expand() can expand ~user on most Unix-alikes even when
    readline is not in use.  It tries harder to expand ~, for example
    should environment variable HOME be unset.
  * For HTML help (both dynamic and static), Rd file links to help
    pages in external packages are now treated as references to
    topics rather than file names, and fall back to a file link only
    if the topic is not found in the target package. The earlier rule
    which prioritized file names over topics can be restored by
    setting the environment variable _R_HELP_LINKS_TO_TOPICS_ to a
    false value.
  * c() now removes NULL arguments before dispatching to methods,
    thus simplifying the implementation of c() methods, _but_ for
    back compatibility keeps NULL when it is the first argument.
    (From a report and patch proposal by Lionel Henry in PR#17900.)
  * Vectorize()'s result function's environment no longer keeps
    unneeded objects.
  * Function ...elt() now propagates visibility consistently with
    ..n.  (Thanks to Lionel Henry's PR#17905.)
  * capture.output() no longer uses non-standard evaluation to
    evaluate its arguments.  This makes evaluation of functions like
    parent.frame() more consistent.  (Thanks to Lionel Henry's
    PR#17907.)
  * packBits(bits, type="double") now works as inverse of
    numToBits().  (Thanks to Bill Dunlap's proposal in PR#17914.)
  * curlGetHeaders() has two new arguments, timeout to specify the
    timeout for that call (overriding getOption("timeout")) and TLS
    to specify the minimum TLS protocol version to be used for
    https:// URIs (_inter alia_ providing a means to check for sites
    using deprecated TLS versions 1.0 and 1.1).
  * For nls(), an optional constant scaleOffset may be added to the
    denominator of the relative offset convergence test for cases
    where the fit of a model is expected to be exact, thanks to a
    proposal by John Nash.  nls(*, trace=TRUE) now also shows the
    convergence criterion.
  * Numeric differentiation _via_ numericDeriv() gets new optional
    arguments eps and central, the latter for taking central divided
    differences.  The latter can be activated for nls() via
    nls.control(nDcentral = TRUE).
  * nls() now passes the trace and control arguments to getInitial(),
    notably for all self-starting models, so these can also be fit in
    zero-noise situations via a scaleOffset.  For this reason, the
    initial function of a selfStart model must now have ... in its
    argument list.
  * bquote(splice = TRUE) can now splice expression vectors with
    attributes: this makes it possible to splice the result of
    parse(keep.source = TRUE).  (Report and patch provided by Lionel
    Henry in PR#17869.)
  * textConnection() gets an optional name argument.
  * get(), exists(), and get0() now signal an error if the first
    argument has length greater than 1.  Previously additional
    elements were silently ignored.  (Suggested by Antoine Fabri on
    R-devel.)
  * R now provides a shorthand notation for creating functions, e.g.
    \(x) x + 1 is parsed as function(x) x + 1.
  * R now provides a simple native forward pipe syntax |&gt;.  The
    simple form of the forward pipe inserts the left-hand side as the
    first argument in the right-hand side call.  The pipe
    implementation as a syntax transformation was motivated by
    suggestions from Jim Hester and Lionel Henry.
  * all.equal(f, g) for functions now by default also compares their
    environment(.)s, notably via new all.equal method for class
    function.  Comparison of nls() fits, e.g., may now need
    all.equal(m1, m2, check.environment = FALSE).
  * .libPaths() gets a new option include.site, allowing to _not_
    include the site library.  (Thanks to Dario Strbenac's suggestion
    and Gabe Becker's PR#18016.)
  * Lithuanian translations are now available.  (Thanks to Rimantas
    Zakauskas.)
  * names() now works for DOTSXP objects.  On the other hand, in
    R-lang, the R language manual, we now warn against relying on the
    structure or even existence of such dot-dot-dot objects.
  * all.equal() no longer gives an error on DOTSXP objects.
  * capabilities("cairo") now applies only to the file-based devices
    as it is now possible (if very unusual) to build R with Cairo
    support for those but not for X11().
  * There is optional support for tracing the progress of
    loadNamespace() - see its help.
  * (Not Windows.)  l10n_info() reports an additional element, the
    name of the encoding as reported by the OS (which may differ from
    the encoding part (if any) of the result from
    Sys.getlocale("LC_CTYPE").
  * New function gregexec() which generalizes regexec() to find _all_
    disjoint matches and well as all substrings corresponding to
    parenthesized subexpressions of the given regular expression.
    (Contributed by Brodie Gaslam.)
  * New function charClass() in package utils to query the
    wide-character classification functions in use (such as
    iswprint).
  * The names of quantile()'s result no longer depend on the global
    getOption("digits"), but quantile() gets a new optional argument
    digits = 7 instead.
  * grep(), sub(), regexp and variants work considerably faster for
    long factors with few levels.  (Thanks to Michael Chirico's
    PR#18063.)
  * Provide grouping of x11() graphics windows within a window
    manager such as Gnome or Unity; thanks to a patch by Ivan Krylov
    posted to R-devel.
  * The split() method for class data.frame now allows the f argument
    to be specified as a formula.
  * sprintf now warns on arguments unused by the format string.
  * New palettes "Rocket" and "Mako" for hcl.colors() (approximating
    palettes of the same name from the 'viridisLite' package).
    Contributed by Achim Zeileis.
  * The base environment and its namespace are now locked (so one can
    no longer add bindings to these or remove from these).
  * Rterm handling of multi-byte characters has been improved,
    allowing use of such characters when supported by the current
    locale.
  * Rterm now accepts ALT+ +xxxxxxxx sequences to enter Unicode
    characters as hex digits.
  * Environment variable LC_ALL on Windows now takes precedence over
    LC_CTYPE and variables for other supported categories, matching
    the POSIX behaviour.
  * duplicated() and anyDuplicated() are now optimized for integer
    and real vectors that are known to be sorted via the ALTREP
    framework. Contributed by Gabriel Becker via PR#17993.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 14
    and so packages that provide graphics devices should be
    reinstalled.
  * Graphics devices should now specify deviceVersion to indicate
    what version of the graphics engine they support.
  * Graphics devices can now specify deviceClip.  If TRUE, the
    graphics engine will never perform any clipping of output itself.
    The clipping that the graphics engine does perform (for both
    canClip = TRUE and canClip = FALSE) has been improved to avoid
    producing unnecessary artifacts in clipped output.
  * The grid package now allows gpar(fill) to be a linearGradient(),
    a radialGradient(), or a pattern().  The viewport(clip) can now
    also be a grob, which defines a clipping path, and there is a new
    viewport(mask) that can also be a grob, which defines a mask.
    These new features are only supported so far on the Cairo-based
    graphics devices and on the pdf() device.
  * (Not Windows.)  A warning is given when a Cairo-based type is
    specified for a png(), jpeg(), tiff() or bmp() device but Cairo
    is unsupported (so type = "Xlib" is tried instead).
  * grSoftVersion() now reports the versions of FreeType and
    FontConfig if they are used directly (not _via_ Pango), as is
    most commonly done on macOS.
  C-LEVEL FACILITIES:
  * The _standalone_ libRmath math library and R's C API now provide
    log1pexp() again as documented, and gain log1mexp().
  INSTALLATION on a UNIX-ALIKE:
  * configure checks for a program pkgconf if program pkg-config is
    not found.  These are now only looked for on the path (like
    almost all other programs) so if needed specify a full path to
    the command in PKG_CONFIG, for example in file config.site.
  * C99 function iswblank is required - it was last seen missing ca
    2003 so the workaround has been removed.
  * There are new configure options --with-internal-iswxxxxx,
  - -with-internal-towlower and --with-internal-wcwidth which allows
    the system functions for wide-character classification,
    case-switching and width (wcwidth and wcswidth) to be replaced by
    internal ones.  The first has long been used on macOS, AIX (and
    Windows) but this enables it to be unselected there and selected
    for other platforms (it is the new default on Solaris).  The
    second is new in this version of R and is selected by default on
    macOS and Solaris.  The third has long been the default and
    remains so as it contains customizations for East Asian
    languages.
    System versions of these functions are often minimally
    implemented (sometimes only for ASCII characters) and may not
    cover the full range of Unicode points: for example Solaris (and
    Windows) only cover the Basic Multilingual Plane.
  * Cairo installations without X11 are more likely to be detected by
    configure, when the file-based Cairo graphics devices will be
    available but not X11(type = "cairo").
  * There is a new configure option --with-static-cairo which is the
    default on macOS.  This should be used when only static cairo
    (and where relevant, Pango) libraries are available.
  * Cairo-based graphics devices on platforms without Pango but with
    FreeType/FontConfig will make use of the latter for font
    selection.
  LINK-TIME OPTIMIZATION on a UNIX-ALIKE:
  * Configuring with flag --enable-lto=R now also uses LTO when
    installing the recommended packages.
  * R CMD INSTALL and R CMD SHLIB have a new flag --use-LTO to use
    LTO when compiling code, for use with R configured with
  - -enable-lto=R.  For R configured with --enable-lto, they have
    the new flag --no-use-LTO.
    Packages can opt in or out of LTO compilation _via_ a UseLTO
    field in the DESCRIPTION file.  (As usual this can be overridden
    by the command-line flags.)
  BUILDING R on Windows:
  * for GCC &gt;= 8, FC_LEN_T is defined in config.h and hence character
    lengths are passed from C to Fortran in _inter alia_ BLAS and
    LAPACK calls.
  * There is a new text file src/gnuwin32/README.compilation, which
    outlines how C/Fortran code compilation is organized and
    documents new features:
  * R can be built with Link-Time Optimization with a suitable
    compiler - doing so with GCC 9.2 showed several
    inconsistencies which have been corrected.
  * There is support for cross-compiling the C and Fortran code
    in R and standard packages on suitable (Linux) platforms.
    This is mainly intended to allow developers to test later
    versions of compilers - for example using GCC 9.2 or 10.x has
    detected issues that GCC 8.3 in Rtools40 does not.
  * There is experimental support for cross-building R packages
    with C, C++ and/or Fortran code.
  * The R installer can now be optionally built to support a single
    architecture (only 64-bit or only 32-bit).
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++14 where
    available (which it is on all currently checked platforms): if
    not (as before) C++11 is used if available otherwise C++ is not
    supported.
    Packages which specify C++11 will still be installed using C++11.
    C++14 compilers may give deprecation warnings, most often for
    std::random_shuffle (deprecated in C++14 and removed in C++17).
    Either specify C++11 (see 'Writing R Extensions') or modernize
    the code and if needed specify C++14.  The latter has been
    supported since R 3.4.0 so the package's DESCRIPTION would need
    to include something like
    Depends: R (&gt;= 3.4)
  PACKAGE INSTALLATION on Windows:
  * R CMD INSTALL and R CMD SHLIB make use of their flag --use-LTO
    when the LTO_OPT make macro is set in file etc/${R_ARCH}/Makeconf
    or in a personal/site Makevars file.  (For details see 'Writing R
    Extensions' SS4.5.)
    This provides a valuable check on code consistency.  It does work
    with GCC 8.3 as in Rtools40, but that does not detect everything
    the CRAN checks with current GCC do.
  PACKAGE INSTALLATION on macOS:
  * The default personal library directory on builds with
  - -enable-aqua (including CRAN builds) now differs by CPU type,
    one of
    ~/Library/R/x86_64/x.y/library
    ~/Library/R/arm64/x.y/library
    This uses the CPU type R (and hence the packages) were built for,
    so when a x86_64 build of R is run under Rosetta emulation on an
    arm64 Mac, the first is used.
  UTILITIES:
  * R CMD check can now scan package functions for bogus return
    statements, which were possibly intended as return() calls (wish
    of PR#17180, patch by Sebastian Meyer). This check can be
    activated via the new environment variable
    _R_CHECK_BOGUS_RETURN_, true for --as-cran.
  * R CMD build omits tarballs and binaries of previous builds from
    the top-level package directory.  (PR#17828, patch by Sebastian
    Meyer.)
  * R CMD check now runs sanity checks on the use of LazyData, for
    example that a data directory is present and that
    LazyDataCompression is not specified without LazyData and has a
    documented value.  For packages with large LazyData databases
    without specifying LazyDataCompression, there is a reference to
    the code given in 'Writing R Extensions' SS1.1.6 to test the
    choice of compression (as in all the CRAN packages tested a
    non-default method was preferred).
  * R CMD build removes LazyData and LazyDataCompression fields from
    the DESCRIPTION file of packages without a data directory.
  ENCODING-RELATED CHANGES:
  * The parser now treats \Unnnnnnnn escapes larger than the upper
    limit for Unicode points (\U10FFFF) as an error as they cannot be
    represented by valid UTF-8.
    Where such escapes are used for outputting non-printable
    (including unassigned) characters, 6 hex digits are used (rather
    than 8 with leading zeros).  For clarity, braces are used, for
    example \U{0effff}.
  * The parser now looks for non-ASCII spaces on Solaris (as
    previously on most other OSes).
  * There are warnings (including from the parser) on the use of
    unpaired surrogate Unicode points such as \uD834.  (These cannot
    be converted to valid UTF-8.)
  * Functions nchar(), tolower(), toupper() and chartr() and those
    using regular expressions have more support for inputs with a
    marked Latin-1 encoding.
  * The character-classification functions used (by default) to
    replace the system iswxxxxx functions on Windows, macOS and AIX
    have been updated to Unicode 13.0.0.
    The character-width tables have been updated to include new
    assignments in Unicode 13.0.0.
  * The code for evaluating default (extended) regular expressions
    now uses the same character-classification functions as the rest
    of R (previously they differed on Windows, macOS and AIX).
  * There is a build-time option to replace the system's
    wide-character wctrans C function by tables shipped with R: use
    configure option --with-internal-towlower or (on Windows)
  - DUSE_RI18N_CASE in CFLAGS when building R.  This may be needed
    to allow tolower() and toupper() to work with Unicode characters
    beyond the Basic Multilingual Plane where not supported by system
    functions (e.g. on Solaris where it is the new default).
  * R is more careful when truncating UTF-8 and other multi-byte
    strings that are too long to be printed, passed to the system or
    libraries or placed into an internal buffer.  Truncation will no
    longer produce incomplete multibyte characters.
  DEPRECATED AND DEFUNCT:
  * Function plclust() from the package stats and
    package.dependencies(), pkgDepends(), getDepList(),
    installFoundDepends(), and vignetteDepends() from package tools
    are defunct.
  * Defunct functions checkNEWS() and readNEWS() from package tools
    and CRAN.packages() from utils have been removed.
  * R CMD config CXXCPP is defunct (it was deprecated in R 3.6.2).
  * parallel::detectCores() drops support for Irix (retired in 2013).
  * The LINPACK argument to chol.default(), chol2inv(),
    solve.default() and svd() has been defunct since R 3.1.0.  It was
    silently ignored up to R 4.0.3 but now gives an error.
  * Subsetting/indexing, such as ddd[*] or ddd$x on a DOTSXP
    (dot-dot-dot) object ddd has been disabled; it worked by accident
    only and was undocumented.
  BUG FIXES:
  * Many more C-level allocations (mainly by malloc and strdup) are
    checked for success with suitable alternative actions.
  * Bug fix for replayPlot(); this was turning off graphics engine
    display list recording if a recorded plot was replayed in the
    same session.  The impact of the bug became visible if resize the
    device after replay OR if attempted another savePlot() after
    replay (empty display list means empty screen on resize or empty
    saved plot).
  * R CMD check etc now warn when a package exports non-existing S4
    classes or methods, also in case of no "methods" presence.
    (Reported by Alex Bertram; reproducible example and patch by
    Sebastian Meyer in PR#16662.)
  * boxplot() now also accepts calls for labels such as ylab, the
    same as plot().  (Reported by Marius Hofert.)
  * The help page for xtabs() now correctly states that addNA is
    setting na.action = na.pass among others.  (Reported as PR#17770
    by Thomas Soeiro.)
  * The R CMD check &lt;pkg&gt; gives a longer and more comprehensible
    message when DESCRIPTION misses dependencies, e.g., in Imports:.
    (Thanks to the contributors of PR#17179.)
  * update.default() now calls the generic update() on the formula to
    work correctly for models with extended formulas.  (As reported
    and suggested by Neal Fultz in PR#17865.)
  * The horizontal position of leaves in a dendrogram is now correct
    also with center = FALSE.  (PR#14938, patch from Sebastian
    Meyer.)
  * all.equal.POSIXt() no longer warns about and subsequently ignores
    inconsistent "tzone" attributes, but describes the difference in
    its return value (PR#17277).  This check can be disabled _via_
    the new argument check.tzone = FALSE as suggested by Sebastian
    Meyer.
  * as.POSIXct() now populates the "tzone" attribute from its tz
    argument when x is a logical vector consisting entirely of NA
    values.
  * x[[2^31]] &lt;- v now works.  (Thanks to the report and patch by
    Suharto Anggono in PR#17330.)
  * In log-scale graphics, axis() ticks and label positions are now
    computed more carefully and symmetrically in their range,
    typically providing _more_ ticks, fulfilling wishes in PR#17936.
    The change really corresponds to an improved axisTicks() (package
    grDevices), potentially influencing grid and lattice, for
    example.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now correct to at
    least five digits where it was catastrophically wrong,
    previously.
  * sum(df) and similar "Summary"- and "Math"-group member functions
    now work for data frames df with logical columns, notably also of
    zero rows.  (Reported to R-devel by Martin "b706".)
  * unsplit() had trouble with tibbles due to unsound use of rep(NA,
    len)-indexing, which should use NA_integer_ (Reported to R-devel
    by Mario Annau.)
  * pnorm(x, log.p = TRUE) underflows to -Inf slightly later.
  * show(&lt;hidden S4 generic&gt;) prints better and without quotes for
    non-hidden S4 generics.
  * read.table() and relatives treated an "NA" column name as missing
    when check.names = FALSE PR#18007.
  * Parsing strings containing UTF-16 surrogate pairs such as
    "\uD834\uDD1E" works better on some (uncommon) platforms.
    sprintf("%X", utf8ToInt("\uD834\uDD1E")) should now give "1D11E"
    on all platforms.
  * identical(x,y) is no longer true for differing DOTSXP objects,
    fixing PR#18032.
  * str() now works correctly for DOTSXP and related exotics, even
    when these are doomed.
    Additionally, it no longer fails for lists with a class and
    "irregular" method definitions such that e.g. lapply(*) will
    necessarily fail, as currently for different igraph objects.
  * Too long lines in environment files (e.g. Renviron) no longer
    crash R. This limit has been increased to 100,000 bytes.
    (PR#18001.)
  * There is a further workaround for FreeType giving incorrect
    italic font faces with cairo-based graphics devices on macOS.
  * add_datalist(*, force = TRUE) (from package tools) now actually
    updates an existing data/datalist file for new content.  (Thanks
    to a report and patch by Sebastian Meyer in PR#18048.)
  * cut.Date() and cut.POSIXt() could produce an empty last interval
    for breaks = "months" or breaks = "years".  (Reported as PR#18053
    by Christopher Carbone.)
  * Detection of the encoding of 'regular' macOS locales such as
    en_US (which is UTF-8) had been broken by a macOS change:
    fortunately these are now rarely used with en_US.UTF-8 being
    preferred.
  * sub() and gsub(pattern, repl, x, *) now keep attributes of x such
    as names() also when pattern is NA (PR#18079).
  * Time differences ("difftime" objects) get a replacement and a
    rep() method to keep "units" consistent.  (Thanks to a report and
    patch by Nicolas Bennett in PR#18066.)
  * The \RdOpts macro, setting defaults for \Sexpr options in an Rd
    file, had been ineffective since R 2.12.0: it now works again.
    (Thanks to a report and patch by Sebastian Meyer in PR#18073.)
  * mclapply and pvec no longer accidentally terminate parallel
    processes started before by mcparallel or related calls in
    package parallel (PR#18078).
  * grep and other functions for evaluating (extended) regular
    expressions handle in Unicode also strings not explicitly flagged
    UTF-8, but flagged native when running in UTF-8 locale.
  * Fixed a crash in fifo implementation on Windows (PR#18031).
  * Binary mode in fifo on Windows is now properly detected from
    argument open (PR#15600, PR#18031).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1622808000">- The line %{__install} -m 755 -d %{_infodir}
  no longer works in TW or Factory.
  But without that line it works everywhere. So this instruction
  was commented out of the spec file.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1628596800">- CHANGES IN R 4.1.1:
  NEW FEATURES:
  * require(pkg, quietly = TRUE) is quieter and in particular does
    not warn if the package is not found.
  DEPRECATED AND DEFUNCT:
  * Use of ftp:// URIs should be regarded as deprecated, with
    on-going support confined to method = "libcurl" and not routinely
    tested.  (Nowadays no major browser supports them.)
  * The non-default method = "internal" is deprecated for http:// and
    ftp:// URIs for both download.file and url.
  * On Windows, method = "wininet" is deprecated for http://,
    https:// and ftp:// URIs for both download.file and url.  (A
    warning is only given for ftp://.)
    For ftp:// URIs the default method is now "libcurl" if available
    (which it is on CRAN builds).
    method = "wininet" remains the default for http:// and https://
    URIs but if libcurl is available, using method = "libcurl" is
    preferred.
  INSTALLATION:
  * make check now works also without a LaTeX installation.  (Thanks
    to Sebastian Meyer's PR#18103.)
  BUG FIXES:
  * make check-devel works again in an R build configured with
  - -without-recommended-packages.
  * qnbinom(p, size, mu) for large size/mu is correct now in a range
    of cases (PR#18095); similarly for the (size, prob)
    parametrization of the negative binomial.  Also qpois() and
    qbinom() are better and or faster for extreme cases.  The
    underlying C code has been modularized and is common to all four
    cases of discrete distributions.
  * gap.axis is now part of the axis() arguments which are passed
    from bxp(), and hence boxplot().  (Thanks to Martin Smith's
    report and suggestions in PR#18109.)
  * .First and .Last can again be set from the site profile.
  * seq.int(from, to, *) and seq.default(..) now work better in large
    range cases where from-to is infinite where the two boundaries
    are finite.
  * all.equal(x,y) now returns TRUE correctly also when several
    entries of abs(x) and abs(y) are close to .Machine$double.xmax,
    the largest finite numeric.
  * model.frame() now clears the object bit when removing the class
    attribute of a value via na.action (PR#18100).
  * charClass() now works with multi-character strings on Windows
    (PR#18104, fixed by Bill Dunlap).
  * encodeString() on Solaris now works again in Latin-1 encoding on
    characters represented differently in UTF-8.  Support for
    surrogate pairs on Solaris has been improved.
  * file.show() on Windows now works with non-ASCII path names
    representable in the current native encoding (PR#18132).
  * Embedded R on Windows can now find R home directory via the
    registry even when installed only for the current user
    (PR#18135).
  * pretty(x) with finite x now returns finite values also in the
    case where the extreme x values are close in size to the maximal
    representable number .Machine$double.xmax.
    Also, it's been tweaked for very small ranges and when a boundary
    is close (or equal) to zero; e.g., pretty(c(0,1e-317)) no longer
    has negative numbers, currently still warning about a very small
    range, and pretty(2^-(1024 - 2^-1/(c(24,10)))) is more accurate.
  * The error message for not finding vignette files when weaving has
    correct file sizes now. (Thanks to Sebastian Meyer's PR#18154.)
  * dnbinom(20, &lt;large&gt;, 1) now correctly gives 0, and similar cases
    are more accurate with underflow precaution.  (Reported by Francisco Vera Alcivar in PR#18072.)</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635163200">- repaired https://bugzilla.suse.com/show_bug.cgi?id=1191380
  (rpmacros now go to rpmmacrodir)
- minor clean-ups in spec file</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635768000">- CHANGES IN R 4.1.2:
  C-LEVEL FACILITIES:
  * The workaround in headers R.h and Rmath.h (using namespace std;)
    for the Oracle Developer Studio compiler is no longer needed now
    C++11 is required so has been removed.  A couple more usages of
    log() (which should have been std::log()) with an int argument
    are reported on Solaris.
  * The undocumented limit of 4095 bytes on messages from the
    S-compatibility macros PROBLEM and MESSAGE is now documented and
    longer messages will be silently truncated rather than
    potentially causing segfaults.
  * If the R_NO_SEGV_HANDLER environment variable is non-empty, the
    signal handler for SEGV/ILL/BUS signals (which offers recovery
    user interface) is not set. This allows more reliable debugging
    of crashes that involve the console.
  DEPRECATED AND DEFUNCT:
  * The legacy S-compatibility macros PROBLEM, MESSAGE, ERROR, WARN,
    WARNING, RECOVER, ... are deprecated and will be hidden in R
    4.2.0. R's native interface of Rf_error and Rf_warning has long
    been preferred.
  BUG FIXES:
  * .mapply(F, dots, .) no longer segfaults when dots is not a list
    and uses match.fun(F) as always documented; reported by Andrew
    Simmons in PR#18164.
  * hist(&lt;Date&gt;, ...) and hist(&lt;POSIXt&gt;, ...)  no longer pass
    arguments for rect() (such as col and density) to axis().
    (Thanks to Sebastian Meyer's PR#18171.)
  * \Sexpr{ch} now preserves Encoding(ch). (Thanks to report and
    patch by Jeroen Ooms in PR#18152.)
  * Setting the RNG to "Marsaglia-Multicarry" e.g., by RNGkind(), now
    warns in more places, thanks to Andr'e Gillibert's report and
    patch in PR#18168.
  * gray(numeric(), alpha=1/2) no longer segfaults, fixing PR#18183,
    reported by Till Krenz.
  * Fixed dnbinom(x, size=&lt;very_small&gt;, .., log=TRUE) regression,
    reported by Martin Morgan.
  * as.Date.POSIXlt(x) now keeps names(x), thanks to Davis Vaughan's
    report and patch in PR#18188.
  * model.response() now strips an "AsIs" class typically, thanks to
    Duncan Murdoch's report and other discussants in PR#18190.
  * try() is considerably faster in case of an error and long call,
    as e.g., from some do.call().  Thanks to Alexander Kaever's
    suggestion posted to R-devel.
  * qqline(y = &lt;object&gt;) such as y=I(.), now works, see also
    PR#18190.
  * Non-integer mgp par() settings are now handled correctly in
    axis() and mtext(), thanks to Mikael Jagan and Duncan Murdoch's
    report and suggestion in PR#18194.
  * formatC(x) returns length zero character() now, rather than ""
    when x is of length zero, as documented, thanks to Davis
    Vaughan's post to R-devel.
  * removeSource(fn) now retains (other) attributes(fn).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1647000000">- CHANGES IN R 4.1.3:
  NEW FEATURES:
  * The default version of Bioconductor has been changed to 3.14.
    (This is used by setRepositories and the menus in GUIs.)
  UTILITIES:
  * R CMD check --as-cran has a workaround for a bug in versions of
    file up to at least 5.41 which mis-identify DBF files last
    changed in 2022 as executables.
  C-LEVEL FACILITIES:
  * The legacy S-compatibility macros SINGLE_* in R_ext/Constants.h
    (included by R.h) are deprecated and will be removed in R 4.2.0.
  BUG FIXES:
  * Initialization of self-starting nls() models with initialization
    functions following the pre-R-4.1.0 API (without the ...
    argument) works again for now, with a deprecation warning.
  * Fixed quoting of ~autodetect~ in Java setting defaults to avoid
    inadvertent user lookup due to leading ~, reported in PR#18231 by
    Harold Gutch.
  * substr(., start, stop) &lt;- v now treats _negative_ stop values
    correctly.  Reported with a patch in PR#18228 by Brodie Gaslam.
  * Subscripting an array x without dimnames by a
    length(dim(x))-column character matrix gave "random" non-sense,
    now an error; reported in PR#18244 by Mikael Jagan.
  * ...names() now matches names(list(...)) closely, fixing PR#18247.
  * all.equal(*, scale = s) now works as intended when length(s) &gt; 1,
    partly thanks to Michael Chirico's PR#18272.
  * print(x) for long vectors x now also works for named atomic
    vectors or lists and prints the correct number when reaching the
    getOption("max.print") limit; partly thanks to a report and
    proposal by Hugh Parsonage to the R-devel list.
  * all.equal(&lt;selfStart&gt;, *) no longer signals a deprecation
    warning.
  * reformulate(*, response=r) gives a helpful error message now when
    length(r) &gt; 1, thanks to Bill Dunlap's PR#18281.
  * Modifying globalCallingHandlers inside withCallingHandlers() now
    works or fails correctly, thanks to Henrik Bengtsson's PR#18257.
  * hist(&lt;Date&gt;, breaks = "days") and hist(&lt;POSIXt&gt;, breaks = "secs")
    no longer fail for inputs of length 1.
  * qbeta(.001, .9, .009) and similar cases now converge correctly
    thanks to Ben Bolker's report in PR#17746.
  * window(x, start, end) no longer wrongly signals "'start' cannot
    be after 'end'", fixing PR#17527 and PR#18291.
  * data() now checks that its (rarely used) list argument is a
    character vector - a couple of packages passed other types and
    gave incorrect results.
  * which() now checks its arr.ind argument is TRUE rather coercing
    to logical and taking the first element - which gave incorrect
    results in package code.
  * model.weights() and model.offset() more carefully extract their
    model components, thanks to Ben Bolker and Tim Taylor's R-devel
    post.
  * list.files(recursive = TRUE) now shows all broken symlinks
    (previously, some of them may have been omitted, PR#18296).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1650628800">- CHANGES IN R 4.2.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * The formula method of aggregate() now matches the generic in
    naming its first argument x (resolving PR#18299 by Thomas
    Soeiro).
    This means that calling aggregate() with a formula as a named
    first argument requires name formula in earlier versions of R and
    name x now, so portable code should not name the argument (code
    in many packages did).
  * Calling &amp;&amp; or || with either argument of length greater than one
    now gives a warning (which it is intended will become an error).
  * Calling if() or while() with a condition of length greater than
    one gives an error rather than a warning.  Consequently,
    environment variable _R_CHECK_LENGTH_1_CONDITION_ no longer has
    any effect.
  * Windows users should consult the WINDOWS section below for some
    profound changes including
  * Support for 32-bit builds has been dropped.
  * UTF-8 locales are used where available.
  * The default locations for the R installation and personal
    library folder have been changed.
    Thanks to Tomas Kalibera for months of work on the Windows port
    for this release.
  NEW FEATURES:
  * matrix(x, n, m) now warns in more cases where length(x) differs
    from n * m, as suggested by Abby Spurdle and Wolfgang Huber in
    Feb 2021 on the R-devel mailing list.
    This warning can be turned into an error by setting environment
    variable _R_CHECK_MATRIX_DATA_ to TRUE: R CMD check --as-cran
    does so unless it is already set.
  * Function file_test() in package utils gains tests for symlinks,
    readability and writability.
  * capabilities("libxml") is now false.
    The description of capabilities("http/ftp") now reflects that it
    refers to the default method, no longer the internal one.
  * simplify2array() gains an except argument for controlling the
    exceptions used by sapply().
  * Environment variables R_LIBS_USER and R_LIBS_SITE are both now
    set to the R system default if unset or empty, and can be set to
    NULL to indicate an empty list of user or site library
    directories.
  * The warning for axis()(-like) calls in cases of relatively small
    ranges (typically in log-scale situations) is slightly improved
    _and_ suppressed from explicit calls to .axisPars() as has always
    been the intention.
  * The contrasts setter function `contrasts&lt;-` gains an explicit
    default how.many = NULL rather than just using missing(how.many).
  * grid.pretty() gains a new optional argument n = 5.
  * There is a new function .pretty() with option bounds as a
    technical-utility version of pretty().  It and pretty() gain a
    new argument f.min with a better than back-compatible default.
  * Function grDevices::axisTicks() and related functions such as
    graphics::axis() work better, notably for the log scale; partly
    because of the pretty() improvements, but also because care is
    taken e.g., when ylim is finite but diff(ylim) is infinite.
  * nclass.FD() gains a digits option.
  * The R Mathlib internal C function bd0() (called indirectly from a
    dozen probability density and distribution functions such as
    dpois(), dbinom(), dgamma(), pgamma() _etc_) has been
    complemented by a more sophisticated and (mostly) more accurate C
    function ebd0(), currently called only by internal dpois_raw()
    improving accuracy for R level dpois() and potentially others
    calling it such as dnbinom(), dgamma() or pgamma().  (Thanks to
    Morten Welinder's PR#15628.)
  * write.ftable() gains sep = " " argument as suggested by Thomas
    Soeiro.
  * The names of the locale categories supported by R's
    Sys.getlocale() and Sys.setlocale() are now provided by variable
    .LC.categories in the base namespace.
  * The Date and POSIXt methods for hist() and the histogram method
    for plot() now also use the new default col = "lightgray" in
    consistency with the corresponding change to hist()'s default for
    R 4.0.0.
  * hist.default() gains new fuzz argument, and the histogram plot
    method no longer uses fractional axis ticks when displaying
    counts ("Frequency").
  * mapply() and hence Map() now also obey the "max-or-0-if-any"
    recycling rule, such that, e.g., Map(`+`, 1:3, 1[0]) is valid
    now.
  * as.character(&lt;obj&gt;) for "hexmode" or "octmode" objects now
    fulfils the important basic rule as.character(x)[j] ===
    as.character(x[j]).
  * The set utility functions, notably intersect() have been tweaked
    to be more consistent and symmetric in their two set arguments,
    also preserving a common mode.
  * substr(ch, start,end) &lt;- new now e.g., preserves names(ch); ditto
    for substring(), thanks to a patch from Brodie Gaslam.
  * plot(&lt;lm&gt;) gains a extend.ylim.f argument, in partial response to
    PR#15285; further PR#17784 is fixed thanks to several
    contributors and a patch by Elin Waring.  The Cook's dist
    contours get customizable via cook.col and cook.lty with a
    different default color and their legend is nicer by default and
    customizable via cook.legendChanges.
  * Attempting to subset an object that is not subsettable now
    signals an error of class notSubsettableError. The
    non-subsettable object is contained in the object field of the
    error condition.
  * Subscript-out-of-bounds errors are now signaled as errors of
    class subscriptOutOfBoundsError.
  * Stack-overflow errors are now signaled as errors inheriting from
    class stackOverflowError. See ?stackOverflowError for more
    details.
  * New partly experimental Sys.setLanguage() utility, solving the
    main problem of PR#18055.
  * gettext() and gettextf() get a new option trim = TRUE which when
    set to false allows translations for strings such as "Execution
    halted\n" typical for C code.
  * An experimental implementation of hash tables is now available.
    See ?hashtab for more details.
  * identical() gains a extptr.as.ref argument for requesting that
    external pointer objects be compared as reference objects.
  * reorder() gets an argument decreasing which it passes to sort()
    for level creation; based on the wish and patch by Thomas Soeiro
    in PR#18243.
  * as.vector() gains a data.frame method which returns a simple
    named list, also clearing a long standing 'FIXME' to enable
    as.vector(&lt;data.frame&gt;, mode="list").  This breaks code relying
    on as.vector(&lt;data.frame&gt;) to return the unchanged data frame.
  * legend() is now vectorized for arguments cex, x.intersp, and
    text.width.  The latter can now also be specified as a vector
    (one element for each column of the legend) or as NA for
    computing a proper column wise maximum value of strwidth(legend).
    The argument y.intersp can be specified as a vector with one
    entry for each row of the legend.
    legend() also gains new arguments title.cex and title.font.
    Thanks to Swetlana Herbrandt.
  * Deparsing no longer remaps attribute names dim, dimnames, levels,
    names and tsp to historical S-compatible names (which structure()
    maps back).
  * sample() and sample.int() have additional sanity checks on their
    size and n arguments.
    all.equal.numeric() gains a sanity check on its tolerance
    argument - calling all.equal(a, b, c) for three numeric vectors
    is a surprisingly common error.
    mean(na.rm =), rank(na.last =), barplot(legend.text =),
    boxplot(), contour(drawlabels =), polygon(border =) and
    methods::is(class2 =) have more robust sanity checks on their
    arguments.
    R CMD Rd2pdf (used by R CMD check) has a more robust sanity check
    on the format of \alias{} commands.
  * psigamma(x, deriv) for negative x now also works for deriv = 4
    and 5; their underlying C level dpsifn() is documented in
    'Writing R Extensions'.
  * The HTML help system now uses HTML5 (wish of PR#18149).
  * ks.test() now provides exact p-values also with ties and MC
    p-values in the two-sample (Smirnov) case.  By Torsten Hothorn.
  * ks.test() gains a formula interface, with y ~ 1 for the
    one-sample (Kolmogorov) test and y ~ group for the two-sample
    (Smirnov) test.  Contributed by Torsten Hothorn.
  * The return value from ks.test() now has class c("ks.test",
    "htest") - packages using try() need to take care to use
    inherits() and not == on the class.
  * New functions psmirnov(), qsmirnov() and rsmirnov() in package
    stats implementing the asymptotic and exact distributions of the
    two-sample Smirnov statistic.
  * iconv() now allows sub = "c99" to use C99-style escapes for UTF-8
    inputs which cannot be converted to encoding to.
  * In a forward pipe |&gt; expression it is now possible to use a named
    argument with the placeholder _ in the rhs call to specify where
    the lhs is to be inserted.  The placeholder can only appear once
    on the rhs.
  * The included LAPACK sources have been updated to version 3.10.0,
    except for the four Fortran 77 routines which 3.10.0 has
    re-implemented in Fortran 90 (where the older versions have been
    retained as the R build process does not support Fortran 90).
  * path.expand() and most other uses of tilde expansion now warn if
    a path would be too long if expanded.  (An exception is
    file.exists(), which silently returns false.)
  * trunc(&lt;Date&gt;, *) now supports units = "months" or "years" for
    consistency with the POSIXt method, thanks to Dirk Eddelbuettel's
    proposal in PR#18099.
  * list2DF() now checks that its arguments are of the same length,
    rather than use recycling.
  * The HTML help system has several new features: LaTeX-like math
    can be typeset using either KaTeX or MathJax, usage and example
    code is highlighted using Prism, and for dynamic help the output
    of examples and demos can be shown within the browser if the
    knitr package is installed. These features can be disabled by
    setting the environment variable _R_HELP_ENABLE_ENHANCED_HTML_ to
    a false value.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 15
    and so packages that provide graphics devices should be
    reinstalled.
  * The grid package now allows the user to specify a "vector" of
    pattern fills.  The fill argument to gpar() accepts a list of
    gradients and/or patterns and the functions linearGradient(),
    radialGradient(), and pattern() have a new group argument.
    Points grobs (data symbols) can now also have a pattern fill.
    The grobCoords() function now returns a more informative and
    complex result.
  * The grid package has new functions for drawing isolated groups:
    grid.group(), grid.define(), and grid.use().  These functions add
    compositing operators and affine transformations to R's graphics
    capabilities.
    The grid package also has new functions for stroking and filling
    paths: grid.stroke(), grid.fill(), and grid.fillStroke().
    A new function as.path() allows the user to specify the fill rule
    for a path that is to be used for clipping, stroking, or filling;
    available options are "winding" and "evenodd".  A new function
    as.mask() allows the user to specify the type of a mask;
    available options are "alpha" and "luminance".
    These new features are only supported so far (at most) on the
    Cairo-based graphics devices and on the pdf() device.
  * dev.capabilities() reports on device support for the new
    features.
  * par() now warns about unnamed non-character arguments to prevent
    misuse such as {usr &lt;- par("usr"); par(usr)}.
  INSTALLATION:
  * Facilities for accessing ftp:// sites are no longer tested
    (except _pro tem_ for curlGetHeaders()) as modern browsers have
    removed support.
  * R can now be built with DEFS = -DSTRICT_R_HEADERS .
  PACKAGE INSTALLATION:
  * R CMD INSTALL no longer tangles vignettes. This completes an R
    CMD build change in R 3.0.0 and affects packages built before R
    3.0.2. Such packages should be re-made with R CMD build to have
    the tangled R code of vignettes shipped with the tarball.
  * USE_FC_LEN_T will become the default: this uses the correct
    prototypes for Fortran BLAS/LAPACK routines called from C/C++,
    and requires adjustment of most such calls - see 'Writing R
    Extensions' SS6.6.2.  (This has been supported since R 3.6.2.)
  * Package installation speed for packages installed with
    keep.source has been improved. This resolve the issue reported by
    Ofek Shilon in PR#18236.
  UTILITIES:
  * R CMD check can optionally report files/directories left behind
    in home, /tmp (even though TMPDIR is set) and other directories.
    See the "R Internals" manual for details.
  * R CMD check now reports byte-compilation errors during
    installation.  These are not usually fatal but may result in
    parts of the package not being byte-compiled.
  * _R_CHECK_DEPENDS_ONLY_ can be applied selectively to examples,
    tests and/or vignettes in R CMD check: see the "R Internals"
    manual.
  * _R_CHECK_SRC_MINUS_W_IMPLICIT_ now defaults to true: recent
    versions of Apple clang on macOS have made implicit function
    declarations in C into a compilation error.
  * R CMD check --as-cran makes use of the environment variable
    AUTORECONF.  See the "R Internals" manual SS8 for further details.
  * R CMD check --use-valgrind also uses valgrind when re-building
    vignettes as some non-Sweave vignettes unhelpfully comment out
    all their code when R CMD check runs vignettes.
  * Errors in re-building vignettes (unless there are LaTeX errors)
    are reported by R CMD check as ERROR rather than WARNING when
    running vignettes has been skipped (as it frequently is in CRAN
    checks and by --as-cran).
  * R CMD Rd2pdf gains a --quiet option that is used by R CMD build
    when building the PDF package manual.
  * R CMD Rd2pdf now always runs LaTeX in batch mode, consistent with
    Texinfo &gt;= 6.7. The --batch option is ignored.
  * R CMD build and R CMD check now include the Rd file name and line
    numbers in the error message of an \Sexpr evaluation failure.
  * For packages using the \doi Rd macro (now an install-time \Sexpr)
    but no other dynamic Rd content, R CMD build now produces a
    smaller tarball and is considerably faster - skipping temporary
    package installation.
  C-LEVEL FACILITIES:
  * The non-API header R_ext/R-ftp-http.h is no longer provided, as
    the entry points it covered are now all defunct.
  * A number of non-API declarations and macro definitions have been
    moved from the installed header Rinternals.h to the internal
    header Defn.h. Packages that only use entry points and
    definitions documented to be part of the API as specified in
    'Writing R Extensions' SS6 should not be affected.
  * The macro USE_RINTERNALS no longer has any effect when compiling
    package code.  Packages which also use R_NO_REMAP will need to
    ensure that the remapped names are used for calls to API
    functions that were formerly also made available as macros.
  * The deprecated legacy S-compatibility macros PROBLEM, MESSAGE,
    ERROR, WARN, WARNING, RECOVER, ... are no longer defined in
    R_exts/RS.h (included by R.h).  Replace these by calls to
    Rf_error and Rf_warning (defined in header R_ext/Error.h included
    by R.h).
    Header R_ext/RS.h no longer includes R_ext/Error.h.
  * Header R_ext/Constants.h (included by R.h) when included from C++
    now includes the C++ header cfloat rather than the C header
    float.h (now possible as C++11 is required).
  * The legacy S-compatibility macros DOUBLE_* in R_ext/Constants.h
    (included by R.h) are deprecated.
  * The deprecated S-compatibility macros SINGLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * R_Calloc, R_Free and R_Realloc are preferred to their unprefixed
    forms and error messages now use the prefix. These forms were
    introduced in R 3.4.0 and are available even when
    STRICT_R_HEADERS is defined.
  * rmultinom has been documented in 'Writing R Extensions' SS6 so is
    now part of the R API.
  * Similarly, Rtanpi, called from R level tanpi() is now part of the
    R API.
  * The long-deprecated, undocumented and non-API entry point call_R
    is no longer declared in R_ext/RS.h (included by R.h).
  * The header S.h which has been unsupported since Jan 2016 has been
    removed.  Use R.h instead.
  DEPRECATED AND DEFUNCT:
  * The (non-default and deprecated) method = "internal" for
    download.file() and url() no longer supports http:// nor ftp://
    URIs.  (It is used only for file:// URIs.)
    On Windows, download.file(method = "wininet") no longer supports
    ftp:// URIs.  (It is no longer the default method, which is
    "libcurl" and does.)
    On Windows, the deprecated method = "wininet" now gives a warning
    for http:// and https:// URIs for both download.file() and url().
    (It is no longer the default method.)
  * On Windows, the command-line option --max-mem-size and
    environment variable R_MAX_MEM_SIZE are defunct.  The memory
    allocation limit was important for 32-bit builds, but these are
    no longer supported.
  * default.stringsAsFactors() is now formally deprecated, where that
    was only mentioned on its regular help page, previously.  So it
    now gives a warning if called.
  * unix.time() is defunct now; it had been deprecated since R 3.4.0.
  BUG FIXES:
  * Setting digits = 0 in format(), print.default() (and hence
    typically print()) or options() is again invalid.  Its behaviour
    was platform-dependent, and it is unclear what "zero significant
    digits" should mean (PR#18098).
  * Messages from C code in the cairo section of package grDevices
    are now also offered for translation, thanks to Michael Chirico's
    PR#18123.
  * mean(x) with finite x now is finite also without "long.double"
    capability.
  * R CMD Rd2pdf no longer leaves an empty build directory behind
    when it aborts due to an already existing output file.  (Thanks
    to Sebastian Meyer's PR#18141.)
  * density(x, weights = w, na.rm = TRUE) when anyNA(x) is true, now
    removes weights "in parallel" to x, fixing PR#18151, reported by
    Matthias Gondan.  Additionally, it gets a subdensity option.
  * Conversion of \Sexpr[]{&lt;expR&gt;} to LaTeX or HTML no longer
    produces long blocks of empty lines when &lt;expR&gt; itself contains
    several lines all producing empty output.  Thanks to a report and
    patch by Ivan Krylov posted to R-devel.
  * R CMD build no longer fails if a package vignette uses child
    documents and inst/doc exists.  (Thanks to Sebastian Meyer's
    PR#18156.)
  * When an R documentation ('help' source) file man/foo.Rd in a
    package has \donttest{..} examples with a syntax error, it is now
    signalled as ERROR and with correct line numbers relating to the
  * -Ex.R file, thanks to Duncan Murdoch and Sebastian Meyer's
    reports and patch proposals in PR#17501.
  * Improved determination of the correct translation domain in
    non-base packages, addressing the combination of PR#18092 and
    PR#17998 (#c6) with reports and _augmented_ patch #2904 by
    Suharto Anggono.
    Note that "R-base" is no longer the default domain e.g., for
    top-level calls to gettext(); rather translation needs explicit
    domain = * specification in such cases.
  * identical(attrib.as.set=FALSE) now works correctly with data
    frames with default row names (Thanks to Charlie Gao's PR#18179).
  * txtProgressBar() now enforces a non-zero width for argument char,
    without which no progress can be visible.
  * dimnames(table(d)) is more consistent in the case where d is a
    list with a single component, thanks to Thomas Soeiro's report to
    R-devel.
    Further, table(d1, d2) now gives an error when d1 and d2 are data
    frames as suggested by Thomas in PR#18224.
  * Fix for drawing semi-transparent lines and fills on the native
    Windows graphics device (PR#18219 and PR#16694).  Thanks to Nick
    Ray for helpful diagnosis on Bugzilla.
  * The deparser now wraps sub-expressions such as if(A) ..  with
    parentheses when needed; thanks to Duncan Murdoch's PR#18232 and
    Lionel Henry's patches there.
  * remove.packages() no longer tries to uninstall Priority: base
    packages, thanks to a report and suggestions by Colin Fay in
    PR#18227.
  * win.metafile() now has xpinch and ypinch arguments so that the
    user can override Windows' (potentially wrong) guess at device
    dimensions.
  * x[i] and x[[i]] for non-integer i should now behave in all cases
    as always documented: the index used is equivalent to
    as.integer(i) unless that would overflow where trunc(i) is used
    instead; thanks to Suharto Anggono's report and patch proposals
    in PR#17977.
  * asOneSidedFormula() now associates the resulting formula with the
    global environment rather than the evaluation environment created
    for the call.
  * &lt;bibentry&gt;$name now matches the field name case-insensitively,
    consistent with bibentry() creation and the replacement method.
  * cbind() failed to detect some length mismatches with a mixture of
    time-series and non-time-series inputs.
  * The default LaTeX style file Sweave.sty used by the RweaveLatex
    driver no longer loads the obsolete ae package; thanks to a
    report by Thomas Soeiro in PR#18271.  Furthermore, it now skips
    \usepackage[T1]{fontenc} for engines other than pdfTeX (if
    detected) or if the new [nofontenc] option is used.
  * smooth.spline() now stores its logical cv argument more safely,
    fixing a rare bug when printing, and also stores n.
  * smooth.spline(x,y,*) now computes the cv.crit statistic
    correctly, also when is.unsorted(x), fixing PR#18294.
  * The data.frame method of rbind() now warns when binding
    not-wholly-recycling vectors, by analogy to the default method
    (for matrices).
  * setAs() finds the correct class for name to when multiple
    packages define a class with that name. Thanks to Gabor Csardi
    for the report.
  * Fix for detaching a package when two classes of the same name are
    present in method signatures for the same generic. Thanks to
    Gabor Csardi for the report.
  * match.arg("", c("", "a", "B")) gives a better error message, in
    part from PR#17959, thanks to Elin Waring.
  * R CMD Sweave --clean no longer removes pre-existing files or
    subdirectories (PR#18242).
  * The quartz() device no longer splits polylines into subpaths.
    That has caused narrowly-spaced lines with many points to always
    look solid even when dashed line type was used due to dash phase
    restarts.
  * Deparsing constructs such as quote(1 + `!`(2) + 3) works again as
    before R 3.5.0, thanks to the report and patch in PR#18284 by
    Suharto Anggono.
  * as.list(f) for a factor f now keeps names(f), fixing PR#18309.
  * qbeta(.001, .9, .009) and analogous qf() calls now return a
    correct value instead of NaN or wrongly 1, all with a warning;
    thanks to the report by Ludger Goeminne in PR#18302.
  * plot.lm() failed to produce the plot of residuals vs.  factor
    levels (i.e., which=5 when leverages are constant) for models
    with character predictors (PR#17840).
  * interaction.plot(..., xtick = TRUE) misplaced the x-axis line
    (PR#18305).
  * Not strictly fixing a bug, format()ing and print()ing of
    non-finite Date and POSIXt values NaN and +/-Inf no longer show
    as NA but the respective string, e.g., Inf, for consistency with
    numeric vector's behaviour, fulfilling the wish of PR#18308.
  * R CMD check no longer runs test scripts generated from
    corresponding .Rin files twice and now signals an ERROR if
    processing an .Rin script fails.
  * tools::Rd2txt() used for plain-text help pages now renders \hrefs
    (if tools::Rd2txt_options(showURLs = TRUE)) and \urls with
    percent-encoding and standards-compliant delimiting style (angle
    brackets and no URL: prefix).  \email is now rendered with a
    mailto: prefix.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1655985600">- CHANGES IN R 4.2.1:
  NEW FEATURES:
  * New function utils::findCRANmirror() to find out if a CRAN mirror
    has been selected, otherwise fallback to the main site.  This
    behaves in the same way as tools::CRAN_package_db() and is
    intended for packages wishing to access CRAN for purposes other
    than installing packages.
    The need for this was shown by a day when the main CRAN website
    was offline and a dozen or so packages which had its URL
    hardcoded failed their checks.
  INSTALLATION on a UNIX-ALIKE:
  * The libraries searched for by --with-blas (without a value) now
    include BLIS (after OpenBLAS but before ATLAS).  And on macOS,
    the Accelerate framework (after ATLAS).  (This is patterned after
    the AX_BLAS macro from the Autoconf Archive.)
  * The included LAPACK sources have been updated to 3.10.1.
  UTILITIES:
  * The (full path to) the command tidy to be used for HTML
    validation can be set by environment variable R_TIDYCMD.
  * Setting environment variable _R_CHECK_RD_VALIDATE_RD2HTML_ to a
    false value will override R CMD check --as-cran and turn off HTML
    validation.  This provides a way to circumvent a problematic
    tidy.
    The 2006 version that ships with macOS is always skipped.
  C-LEVEL FACILITIES:
  * The undocumented legacy declarations of Sint, Sfloat, SINT_MAX
    and SINT_MIN in header R.h are deprecated.
  BUG FIXES:
  * fisher.test(d) no longer segfaults for "large" d; fixing PR#18336
    by preventing/detecting an integer overflow reliably.
  * tar(., files=*) now produces correctly the warning about invalid
    uid or gid of files, fixing PR#18344, reported by Martin Morgan.
  * tk_choose.files() with multi = FALSE misbehaved on paths
    containing spaces (PR#18334) (regression introduced in R 4.0.0).
  * sort(x, partial = ind, *) now works correctly notably for the
    non-default na.last = FALSE or TRUE, fixing PR#18335 reported by
    James Edwards.
  * Environment variable _R_CHECK_XREFS_REPOSITORIES_ is only used
    for checking .Rd cross-references in R CMD check (as documented)
    and not for other uses looking for a CRAN mirror.
  * The search for a CRAN mirror when checking packages now uses
    getOption("repos") if that specifies a CRAN mirror, even when it
    does not also specify all three Bioconductor repositories (as was
    previously required).
  * The HTML code generated by tools::Rd2HTML() has been improved to
    pass tidy 5.8.0.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1667217600">- CHANGES IN R 4.2.2:
  NEW FEATURES:
  * tools::Rdiff(useDiff = TRUE) checks for the presence of an
    external diff command and switches to useDiff = FALSE if none is
    found.  This allows R CMD Rdiff to always work.
  * On Windows, environment variable R_LIBCURL_SSL_REVOKE_BEST_EFFORT
    can be used to switch to only 'best-effort' SSL certificate
    revocation checks with the default "libcurl" download method.
    This reduces security, but may be needed for downloads to work
    with MITM proxies (PR#18379).
  * (macOS) The run-time check for libraries from XQuartz for X11 and
    Tcl/Tk no longer uses otool from the Apple Developer Tools
    (PR#18400).
  * The LaTeX style for producing the PDF manuals, Rd.sty, now loads
    the standard amsmath, amsfonts and amssymb packages for greater
    coverage of math commands in the Rd \eqn and \deqn macros.  The
    \mathscr LaTeX command is also provided (via the mathrsfs
    package, if available, or the amsfonts bundle otherwise),
    fulfilling the wish of PR#18398.
  * (Windows) The default format of readClipboard() and
    writeClipboard() has been changed to 13 (CF_UNICODETEXT).
  INSTALLATION on a UNIX-ALIKE:
  * The PDF manuals (if built) can be compacted by the new target
    make compact-pdf (at the top level or in directory doc/manual).
  * There is now configure support for LLVM clang 15 on Linux, which
    defaults to position-independent (PIE) executables whereas
    gfortran does not.
  * Many small changes to ease compilation (and suppress warnings)
    with LLVM clang 15.
  BUG FIXES:
  * Rscript -e would fail if stdin were closed (Reported by Henrik
    Bengtsson.)
  * qt(*, log.p=TRUE) in outer tails no longer produces NaN in its
    final steps, thus fixing PR#18360.
  * tools::Rd2latex() now escapes hashes and ampersands when writing
    URLs, fixing LaTeX errors with such URLs in \tabular.
  * When isGeneric(f, fdef=*) is used with mismatching names, the
    warning is better understandable; reported (with fix) in PR#18370
    by Gabe Becker.
  * poly(x, n) now works again (and is now documented) when x is a
    "Date" or "POSIXct" object, or of another class while fulfilling
    mode(x) == "numeric".  This also enables poly(x, *, raw=TRUE) for
    such variables.  Reported by Michael Chirico to R-devel.
  * write.table(), write.csv() and write.csv2() restore their
    numerical precision (internal equivalent of digits = 15) after an
    interrupt (PR#18384).
  * One can now read also byte FF from a clipboard connection
    (PR#18385).
  * source("") and source(character()) now give more helpful error
    messages.
  * R CMD check --as-cran set _R_CHECK_TIMINGS_ too late to have the
    intended effect.
  * as.POSIXlt(x) now also works with very large dates x, fixing
    PR#18401 reported by Hannes M"uhleisen.
  * Files can now be extracted even from very large zip archives
    (PR#18390, thanks to Martin Jakt).
  * Non-finite objects of class "POSIXlt" are now correctly coerced
    to classes "Date" and "POSIXct"; following up on the extension to
    format() them correctly.
  * Added methods for is.finite(), is.infinite() and is.nan() for
    "POSIXlt" date-time objects.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1678881600">- CHANGES IN R 4.2.3:
  C-LEVEL FACILITIES:
  * The definition of DL_FUNC in R_ext/Rdynload.h has been changed to
    be fully C-compliant.  This means that functions loaded _via_ for
    example R_GetCCallable need to be cast to an appropriate type if
    they have any arguments.
  * .Machine has a new element sizeof.time_t to identify old systems
    with a 32-bit type and hence a limited range of date-times (and
    limited support for dates millions of years from present).
  PACKAGE INSTALLATION:
  * (Windows) The default C++ standard had accidentally been left at
    C++11 when it was changed to C++14 on Unix.
  BUG FIXES:
  * As "POSIXlt" objects may be "partially filled" and their list
    components meant to be recycled, length() now is the length of
    the longest component.
  * as.POSIXlt.Date() could underflow for dates in the far past (more
    than half a million years BCE).
  * as.Date.POSIXlt(x) would return "1970-01-01" instead of NA in R
    4.2.2, e.g., for
    x &lt;- as.POSIXlt(c("2019-01-30","2001-1-1"))
    x$mon &lt;- c(0L, NA); as.Date(x)
  * R CMD check failed to apply enabled _R_CHECK_SUGGESTS_ONLY_ to
    examples and vignettes (regression in R 4.2.0).
  * R CMD check did not re-build vignettes in separate processes by
    default (regression in R 4.2.0).
  * Running examples from HTML documentation now restores previous
    knitr settings and options (PR#18420).
  * Quartz: fonts are now located using Core Graphics API instead of
    deprecated ATS which is no longer supported in the macOS 13 SDK
    (PR#18426).  This also addresses an issue where the currently
    used font in the Quartz device context was not correctly
    retained.
  * (Windows) Math symbols in text drawing functions are again
    rendered correctly (PR#18440).  This fixes a regression in R
    4.2.1 caused by a fix in PR#18382 which uncovered an issue in
    GraphApp due to which the symbol charset was not used with TT
    Symbol font face.
  * (Windows) Installing a package with a src/Makefile.{win,ucrt}
    file includes ~/.R/Makevars.win64 in the search for user
    makevars, as documented in "R Installation and Administration"
    and done for packages with a src/Makevars.{win,ucrt} file.
  * format(&lt;POSIXlt_w/_unbalanced_sec&gt;, "....%OS&lt;n&gt;") with n &gt; 0 no
    longer accidentally uses the unbalanced seconds, thanks to
    Suharto Anggono's report (including patch) in PR#18448.
  * solve.default(a, b) works around issues with some versions of
    LAPACK when a contains NA or NaN values.
  * When UseMethod() cannot dispatch, it no longer segfaults
    producing the error message in case of a long class(), thanks to
    Joris Vankerschaver's report (including patch) in PR#18447.
  * When example(foo, ..) produces graphics on an interactive device
    it needs to open itself, it now leaves devAskNewPage() unchanged
    even when it was FALSE, thus fixing a 14 years old '&lt;FIXME&gt;'.
  * packageDescription() again catches errors from encoding
    conversions. This also fixes broken packageVersion() in C locale
    on systems where iconv does not support transliteration.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1681128000">- add patch to build with libcurl &gt;= 8</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1682078400">- CHANGES IN R 4.3.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Calling &amp;&amp; or || with LHS or (if evaluated) RHS of length greater
    than one is now always an error, with a report of the form
    'length = 4' in coercion to 'logical(1)'
    Environment variable _R_CHECK_LENGTH_1_LOGIC2_ no longer has any
    effect.
  NEW FEATURES:
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.10.1.  (This caused some platform-dependent
    changes to package check output.)  And then to the sources from
    LAPACK version 3.11.0 (with changes only to double complex
    subroutines).
  * The included LAPACK sources have been updated to include the four
    Fortran 90 routines rather than their Fortran 77 predecessors.
    This may give some different signs in SVDs or
    eigendecompositions..  (This completes the transition to LAPACK
    3.10.x begun in R 4.2.0.)
  * The LAPACK sources have been updated to version 3.11.0.  (No new
    subroutines have been added, so this almost entirely bug fixes:
    Those fixes do affect some computations with NaNs, including R's
    NA.)
  * The parser now signals _classed_ errors, notably in case of the
    pipe operator |&gt;.  The error object and message now give line and
    column numbers, mostly as proposed and provided by Duncan Murdoch
    in PR#18328.
  * toeplitz() is now generalized for asymmetric cases, with a
    toeplitz2() variant.
  * xy.coords() and xyz.coords() and consequently, e.g., plot(x,y,
    log = "y") now signal a _classed_ warning about negative values
    of y (where log(.) is NA).  Such a warning can be specifically
    suppressed or caught otherwise.
  * Regular expression functions now check more thoroughly whether
    their inputs are valid strings (in their encoding, e.g. in
    UTF-8).
  * The performance of grep(), sub(), gsub() and strsplit() has been
    improved, particularly with perl = TRUE and fixed = TRUE.  Use of
    useBytes = TRUE for performance reasons should no longer be
    needed and is discouraged: it may lead to incorrect results.
  * apropos() gains an argument dot_internals which is used by the
    completion (help(rcompgen)) engine to also see base internals
    such as .POSIXct().
  * Support in tools::Rdiff() for comparing uncompressed PDF files is
    further reduced - see its help page.
  * qqplot(x, y, ...) gains conf.level and conf.args arguments for
    computing and plotting a confidence band for the treatment
    function transforming the distribution of x into the distribution
    of y (Switzer, 1976, _Biometrika_). Contributed by Torsten
    Hothorn.
  * Performance of package_dependencies() has been improved for cases
    when the number of dependencies is large.
  * Strings newly created by gsub(), sub() and strsplit(), when any
    of the inputs is marked as "bytes", are also marked as "bytes".
    This reduces the risk of creating invalid strings and accidental
    substitution of bytes deemed invalid.
  * Support for readLines(encoding = "bytes") has been added to allow
    processing special text files byte-by-byte, without creating
    invalid strings.
  * iconv(from = "") now takes into account any declared encoding of
    the input elements and uses it in preference to the native
    encoding.  This reduces the risk of accidental creation of
    invalid strings, particularly when different elements of the
    input have different encoding (including "bytes").
  * Package repositories in getOption("repos") are now initialized
    from the repositories file when utils is loaded (if not already
    set, e.g., in .Rprofile).  (From a report and patch proposal by
    Gabriel Becker in PR#18405.)
  * compactPDF() gets a verbose option.
  * type.convert() and hence read.table() get new option tryLogical =
    TRUE with back compatible default.  When set to false, converts
    "F" or "T" columns to character.
  * Added new unit prefixes "R" and "Q" for abbreviating
    (unrealistically large) sizes beyond 10^{27} in standard = "SI",
    thanks to Henrik Bengtsson's PR#18435.
  * as.data.frame()'s default method now also works fine with atomic
    objects inheriting from classes such as "roman", "octmode" and
    "hexmode", such fulfilling the wish of PR#18421, by Benjamin
    Feakins.
  * The as.data.frame.vector() utility now errors for wrong-length
    row.names.  It warned for almost six years, with "Will be an
    error!".
  * sessionInfo() now also contains La_version() and reports codepage
    and timezone when relevant, in both print() and toLatex() methods
    which also get new option tzone for displaying timezone
    information when locale = FALSE.
  * New function R_compiled_by() reports the C and Fortran compilers
    used to build R, if known.
  * predict(&lt;lm&gt;, newdata = *) no longer unnecessarily creates an
    offset of all 0s.
  * solve() for complex inputs now uses argument tol and by default
    checks for 'computational singularity' (as it long has done for
    numeric inputs).
  * predict(&lt;rank-deficient lm&gt;, newdata=*) now obeys a new argument
    rankdeficient, with new default "warnif", warning only if there
    are non-estimable cases in newdata.  Other options include
    rankdeficient = "NA", predicting NA for non-estimable newdata
    cases.  This addresses PR#15072 by Russ Lenth and is based on his
    original proposal and discussions in PR#16158 also by David Firth
    and Elin Waring.  Still somewhat experimental.
  * Rgui console implementation now works better with the NVDA screen
    reader when the full blinking cursor is selected.  The underlying
    improvements in cursor handling may help also other screen
    readers on Windows.
  * The drop-field control in GraphApp can now be left with the TAB
    key and all controls can be navigated in the reverse order using
    the Shift+TAB key, improving accessibility of the Rgui
    configuration editor.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now fully accurate
    (instead of to "only" minimally five digits).
  * demo(error.catching) now also shows off withWarnings() and
    tryCatchWEMs().
  * As an experimental feature the placeholder _ can now also be used
    in the rhs of a forward pipe |&gt; expression as the first argument
    in an extraction call, such as _$coef. More generally, it can be
    used as the head of a chain of extractions, such as _$coef[[2]].
  * Spaces in the environment variable used to choose the R session's
    temporary directory (TMPDIR, TMP and TEMP are tried in turn) are
    now fatal.  (On Windows the 'short path' version of the path is
    tried and used if that does not contain a space.)
  * all.equal.numeric() gets a new optional switch giveErr to return
    the numeric error as attribute.  Relatedly,
    stopifnot(all.equal&lt;some&gt;(a, b, ..)) is as "smart" now, as
    stopifnot(all.equal(....)) has been already, thus allowing
    customized all.equal&lt;Some&gt;() wrappers.
  * R on Windows is now able to work with path names longer than 260
    characters when these are enabled in the system (requires at
    least Windows 10 version 1607).  Packages should be updated to
    work with long paths as well, instead of assuming PATH_MAX to be
    the maximum length.  Custom front-ends and applications embedding
    R need to update their manifests if they wish to allow this
    feature.  See
    &lt;https://blog.r-project.org/2023/03/07/path-length-limit-on-windows&gt;
    for more information.
  * 'Object not found' and 'Missing argument' errors now give a more
    accurate error context. Patch provided by Lionel Henry in
    PR#18241.
  * The @ operator is now an S3 generic. Based on contributions by
    Tomasz Kalinowski in PR#18482.
  * New generic chooseOpsMethod() provides a mechanism for objects to
    resolve cases where two suitable methods are found for an Ops
    Group Generic. This supports experimenting with alternative
    object systems. Based on contributions by Tomasz Kalinowski in
    PR#18484.
  * inherits(x, what) now accepts values other than a simple
    character vector for argument what. A new generic, nameOfClass(),
    is called to resolve the class name from what. This supports
    experimenting with alternative object systems. Based on
    contributions by Tomasz Kalinowski in PR#18485.
  * Detection of BLAS/LAPACK in use (sessionInfo()) with FlexiBLAS
    now reports the current backend.
  * The "data.frame" method for subset() now warns about extraneous
    arguments, typically catching the use of = instead of == in the
    subset expression.
  * Calling a:b when numeric a or b is longer than one may now be
    made into an error by setting environment variable
    _R_CHECK_LENGTH_COLON_ to a true value, along the proposal in
    PR#18419 by Henrik Bengtsson.
  * density(x, weights = *) now warns if automatic bandwidth
    selection happens without using weights; new optional warnWbw may
    suppress the warning.  Prompted by Christoph Dalitz' PR#18490 and
    its discussants.
  * rm(list = *) is faster and more readable thanks to Kevin Ushey's
    PR#18492.
  * The plot.lm() function no longer produces a normal Q-Q plot for
    GLMs. Instead it plots a half-normal Q-Q plot of the absolute
    value of the standardized deviance residuals.
  * The print() method for class "summary.glm" no longer shows
    summary statistics for the deviance residuals by default.  Its
    optional argument show.residuals can be used to show them if
    required.
  * The tapply() function now accepts a data frame as its X argument,
    and allows INDEX to be a formula in that case. by.data.frame()
    similarly allows INDICES to be a formula.
  * The performance of df[j] &lt;- value (including for missing j) and
    write.table(df) has been improved for data frames df with a large
    number of columns.  (Thanks to Gabriel Becker's PR#18500,
    PR#18503 and discussants, prompted by a report from Toby Dylan
    Hocking on the R-devel mailing list.)
  * The matrix multiply operator %*% is now an S3 generic, belonging
    to new group generic matrixOps.  From Tomasz Kalinowski's
    contribution in PR#18483.
  * New function array2DF() to convert arrays to data frames,
    particularly useful for the list arrays created by tapply().
  DATES and TIMES:
  * On platforms where (non-UTC) datetimes before 1902 (or before
    1900 as with system functions on recent macOS) are guessed by
    extrapolating time zones from 1902-2037, there is a warning at
    the first use of extrapolation in a session.  (As all time zones
    post 2037 are extrapolation, we do not warn on those.)
  * (Platforms using --with-internal-tzone, including Windows and by
    default macOS). How years are printed in dates or date-times can
    be controlled by environment variable R_PAD_YEARS_BY_ZERO.  The
    default remains to pad to 4 digits by zeroes, but setting value
    no gives no padding (as used by default by glibc).
  * strftime() tries harder to determine the offset for the "%z"
    format, and succeeds on the mainstream R platforms.
  * strftime() has a limit of 2048 bytes on the string produced -
    attempting to exceed this is an error.  (Previously it silently
    truncated at 255 bytes.)
  * sessionInfo() records (and by default prints) the system time
    zone as part of the locale information.  Also, the source
    (system/internal) of the date-time conversion and printing
    functions.
  * Objects of class "POSIXlt" created in this version of R always
    have 11 components: component zone is always set, and component
    gmtoff is set for times in UTC and usually set on the (almost
    all) platforms which have C-level support, otherwise is NA.
  * There are comprehensive validity checks on the structure of
    objects of class "POSIXlt" when converting (including formatting
    and printing).  (This avoids mis-conversions of hand-crafted
    objects.)
  * There is some support for using the native date-time routines on
    macOS: this is only viable on recent versions (e.g. 12.6 and 13)
    and does get wrong some historical changes (before 1900, during
    WWII).  Use of --with-internal-tzone remains the default.
  * as.POSIXct(&lt;numeric&gt;) and as.POSIXlt(.) (without specifying
    origin) now work.  So does as.Date(&lt;numeric&gt;).
  * as.Date.POSIXct(., tz) now treats several tz values, notably
    "GMT" as equivalent to "UTC", proposed and improved by Michael
    Chirico and Joshua Ulrich in PR#17674.
  * Experimental balancePOSIXlt() utility allows using "ragged" and
    or out-of-range "POSIXlt" objects more correctly, e.g., in
    subsetting and subassignments.  Such objects are now documented.
    More experimentally, a "POSIXlt" object may have an attribute
    "balanced" indicating if it is known to be filled or fully
    balanced.
  * Functions axis.Date() and axis.POSIXct() are rewritten to gain
    better default tick locations and better default formats by using
    prettyDate(). Thanks to Swetlana Herbrandt.
  * The mapping of Windows' names for time zones to IANA's 'Olson'
    names has been updated.  When ICU is available (it is by
    default), it is used to get a mapping for the current region set
    in Windows.  This can be overridden by setting environment
    variable TZ to the desired Olson name - see OlsonNames() for
    those currently available.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 16
    and so packages that provide graphics devices should be
    reinstalled.
  * The grDevices and grid packages have new functions for rendering
    typeset glyphs, primarily: grDevices::glyphInfo() and
    grid::grid.glyph().
    Rendering of typeset glyphs is only supported so far on the
    Cairo-based graphics devices and on the pdf() and quartz()
    devices.
  * The defined behaviour for "clear" and "source" compositing
    operators (via grid::grid.group()) has been changed (to align
    better with simple interpretation of original Porter-Duff
    definitions).
  * Support for gradients, patterns, clipping paths, masks, groups,
    compositing operators, and affine transformations has been added
    to the quartz() device.
  INSTALLATION on a UNIX-ALIKE:
  * A system installation of generic LAPACK 3.10.0 or later will be
    preferred to the version in the R sources.
    configure option --with-lapack=no (equivalently --without-lapack)
    forces compilation of the internal LAPACK sources.
    If --with-lapack is not specified, a system liblapack is looked
    for and used if it reports version 3.10.0 or later and does not
    contain BLAS routines.
    Packages using LAPACK will need to be reinstalled if this changes
    to using an external library.
  * On aarch64 Linux platforms using GCC, configure now defaults to
  - fPIC (instead of -fpic), as desired in PR#18326.
  * configure now checks conversion of datetimes between POSIXlt and
    POSIXct around year 2020.  Failure (which has been seen on
    platforms missing tzdata) is fatal.
  * If configure option --with-valgrind-instrumentation is given
    value 1 or 2, option --with-system-valgrind-headers is now the
    default and ignored (with a warning).  It is highly recommended
    that the system headers are installed alongside valgrind: they
    are part of its packaging on some Linux distributions and
    packaged separately (e.g. in the valgrind-devel RPM) on others.
    configure will give a warning if they are not found.
    The system headers will be required in a future release of R to
    build with valgrind instrumentation.
  * libcurl 8.x is now accepted by configure: despite a change in
    major version number it changes neither API nor ABI.
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools43, an update of the Rtools42 toolchain.  It is
    based on gcc 12 and newer versions of MinGW-W64, binutils and
    libraries.  At this time R-devel can still be built using
    Rtools42 without changes, but when R-devel is installed via the
    installer, it will by default look for Rtools43.
  * Old make targets rsync-extsoft and 32-bit ones that are no longer
    needed have been removed.
  * Default builds (including for packages) no longer select C99.
    Thus the C standard used is the default for the compiler, which
    for the toolchain in Rtools43 is C17.  (This is consistent with
    Unix builds.)
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++17 where
    available (which it is on all currently checked platforms): if
    not C++14 or C++11 is used if available otherwise C++ is not
    supported.
  * USE_FC_LEN_T is the default: this uses the correct
    (compiler-dependent) prototypes for Fortran BLAS/LAPACK routines
    called from C/C++, and requires adjustment of many such calls -
    see 'Writing R Extensions' SS6.6.1.
  * There is initial support for C++23 as several compilers are now
    supporting -std=c++23 or -std=c++2b or similar.  As for C++20,
    there no additional configure checks for C++23 features beyond a
    check that the compiler reports a __cplusplus value greater than
    that in the C++20 standard.  C++ feature tests should be used.
  * There is support for a package to indicate the version of the C
    standard which should be used to compile it, and for the
    installing user to specify this.  In most cases R defaults to the
    C compiler's default standard which is C17 (a `bug-fix' of C11) -
    earlier versions of R or compilers may have defaulted to C99.
    Current options are:
    USE_C17 Use a standard that is at most C17.  The intention is to
    allow legacy packages to still be installed when later C
    standards become the default, including packages using new
    keywords as identifiers or with K&amp;R-style function
    declarations.  This will use C17 if available, falling back
    to C11.
    USE_C90 Use the C90 (aka C89) standard.  (As that standard did
    not require compilers to identify that version, all we can
    verify is that the compiler does not claim to be using a
    later standard.  It may accept C99 features - for example
    clang accepts // to make comments.)
    USE_C99 Use the C99 standard. This should be rarely needed - it
    avoids the few new features of C11/C17 which can be useful if
    a package assumes them if C17 is specified and they are not
    implemented.
    USE_C23 Use C23 (or in future, later).  Compiler/library support
    for C23 is still being implemented, but LLVM clang from
    15.0.0 and the upcoming GCC 13 have quite extensive support.
    These can be specified as part of the SystemRequirements field in
    the package's DESCRIPTION file or _via_ options --use-C17 and so
    on of R CMD INSTALL and R CMD SHLIB.
    For further details see "Writing R Extensions" SS1.2.5.
  * (Windows) A src/Makefile.ucrt or src/Makefile.win file is now
    included after R_HOME/etcR_ARCH/Makeconf and so no longer needs
    to include that file itself.  Installation of a package with such
    a file now uses a site Makevars file in the same way as a package
    with a src/Makevars.win file would.
  * configure is now passed crucial variables such as CC and CFLAGS
    in its environment, as many packages were not setting them (as
    documented in 'Writing R Extensions' SS1.2).
    This has most effect where configure is used to compile parts of
    the package - most often by cmake or libtool which obfuscate the
    actual compile commands used.
    Also used for configure.win and configure.ucrt on Windows.
  FORTRAN FLAGS:
  * The flag -fno-optimize-sibling-calls is no longer forced for
    gfortran 7 and later.  It should no longer be needed now using
    'hidden' character-length arguments when calling BLAS/LAPACK
    routines from C/C++ is the default even for packages.  (Unless
    perhaps packages call Fortran code from C/C++ without using R's
    headers and without allowing for these arguments.)
  C-LEVEL FACILITIES:
  * The deprecated S-compatibility macros DOUBLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * The deprecated legacy typedefs of Sint and Sfloat in header R.h
    are no longer defined, and that header no longer includes header
    limits.h from C nor climits from C++.
  * New macro CAD5R() is provided in Rinternals.h and used in a few
    places in the R sources.
  * ALTREP now supports VECSXP vectors. Contributed by Gabor Csardi
    in PR#17620.
  * The Rcomplex definition (in header R_ext/Complex.h) has been
    extended to prevent possible mis-compilation when interfacing
    with Fortran (PR#18430).  The new definition causes compiler
    warnings with static initializers such as {1, 2}, which can be
    changed to {.r=1, .i=2}.
    Using the new definition from C++ depends on compiler extensions
    supporting C features that have not been incorporated into the
    C++ standards but are available in g++ and clang++: this may
    result in C++ compiler warnings but these have been worked around
    for recent versions of common compilers (GCC, Apple/LLVM clang,
    Intel).
    It is intended to change the inclusion of header R_ext/Complex.h
    by other R headers, so C/C++ code files which make use of
    Rcomplex should include that header explicitly.
  UTILITIES:
  * R CMD check does more checking of package .Rd files, warning
    about invalid email addresses and (some) invalid URIs and noting
    empty \item labels in description lists.
  * R CMD check now also reports problems when reading package news
    in md (file NEWS.md) and (optionally) plain text (file NEWS)
    formats.
  * _R_CHECK_TIMINGS_ defaults to a value from the environment even
    for R CMD check --as-cran; this allows for exceptionally fast or
    slow platforms.
    It now applies to checking PDF and HTML versions of the manuals,
    and 'checking CRAN incoming feasibility'.
  * R CMD check can optionally (but included in --as-cran) check
    whether HTML math rendering _via_ KaTeX works for the package .Rd
    files.
  * Non-interactive debugger invocations can be trapped by setting
    the environment variable _R_CHECK_BROWSER_NONINTERACTIVE_ to a
    true value.  This is enabled by R CMD check --as-cran to detect
    the use of leftover browser() statements in the package.
  * The use of sprintf and vsprintf from C/C++ has been deprecated in
    macOS 13 and is a known security risk.  R CMD check now reports
    (on all platforms) if their use is found in compiled code:
    replace by snprintf or vsnprintf respectively. [*NB:* whether
    such calls get compiled into the package is platform-dependent.]
  * Where recorded at installation, R CMD check reports the C and
    Fortran compilers used to build R.
    It reports the OS in use (if known, as given by osVersion) as
    well as that R was built for.
    It notes if a C++ standard was specified which is older than the
    current default: many packages have used C++11 to mean 'not
    C++98' - as C++11 is the minimum supported since R 4.0.0, that
    specification can probably be removed.
  * R CMD INSTALL reports the compilers (and on macOS, the SDK) used,
    and this is copied to the output of R CMD check.
    Where a C++ standard is specified, it is reported.
  * R CMD check's 'checking compilation flags in Makevars' has been
    relaxed to accept the use of flags such as -std=f2008 in
    PKG_FFLAGS.
  * tools::buildVignettes() has a new argument skip, which is used by
    R CMD check to skip (and note) vignettes with unavailable
    \VignetteDepends (PR#18318).
  * New generic .AtNames() added to enable class-specific completions
    after @. The formerly internal function findMatches() is now
    exported, mainly for use in methods for .DollarNames() and
    .AtNames().
  DEPRECATED AND DEFUNCT:
  * default.stringsAsFactors() is defunct.
  * Calling as.data.frame.&lt;class&gt;() directly (for 12 atomic classes)
    is going to be formally deprecated, currently activated by
    setting the environment variable
    _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ to non-empty, which also
    happens in R CMD check --as-cran.
  BUG FIXES:
  * Hashed environments with sizes less than 5 can now grow.
    (Reported to R-devel by Duncan Garmonsway.)
  * as.character(&lt;Rd&gt;, deparse = TRUE) failed to re-escape curly
    braces in LaTeX-like text.  (Reported by Hadley Wickham in
    PR#18324.)
  * library() now passes its lib.loc argument when requiring Depends
    packages; reported (with fix) in PR#18331 by Mikael Jagan.
  * R CMD Stangle: improved message about 'Output' files.
  * head(x, n) and tail(x, n) now signal an error if n is not
    numeric, instead of incidentally "working" sometimes returning
    all of x.  Reported and discussed by Colin Fay, in PR#18357.
  * The "lm" method for summary() now gives the correct F-statistic
    when the model contains an offset.  Reported in PR#18008.
  * C() and `contrasts&lt;-`() now preserve factor level names when
    given a function object (as opposed a function name which did
    preserve names). Reported in PR#17616.
  * c(a = 1, 2)[[]] no longer matches 2 but rather signals a
    _classed_ error.  Reported and analysed by Davis Vaughan in
    PR#18367, a duplicate of PR#18004, by Jan Meis et al.  For
    consistency, NULL[[]] is also erroneous now.  x[[]] &lt;- v gives an
    error of the same class "MissingSubscriptError".
  * The relist() function of utils now supports NULL elements in the
    skeleton (PR#15854).
  * ordered(levels = *) (missing x) now works analogously to factor(,
    ordered=TRUE); reported (with fix) by Achim Zeileis in PR#18389.
  * User-defined Rd macro definitions can now span multiple lines,
    thanks to a patch from Duncan Murdoch. Previously, the Rd parser
    silently ignored everything after the first line.
  * Plain-text help (tools::Rd2txt()) now preserves an initial blank
    line for text following description list items.
  * tools::Rd2HTML() and tools::Rd2latex() no longer split \arguments
    and \value lists at Rd comments.
  * tools::Rd2latex() now correctly handles optional text outside
    \items of argument lists as well as bracketed text at the
    beginning of sections, e.g., \value{[NULL]}.
  * as.character(&lt;POSIXt&gt;) now behaves more in line with the methods
    for atomic vectors such as numbers, and is no longer influenced
    by options().  Ditto for as.character(&lt;Date&gt;).  The
    as.character() method gets arguments digits and OutDec with
    defaults _not_ depending on options().  Use of as.character(*,
    format = .) now warns.
  * Similarly, the as.character.hexmode() and *.octmode() methods
    also behave as good citizen methods and back compatibility option
    keepStr = TRUE.
  * The as.POSIXlt(&lt;POSIXlt&gt;) and as.POSIXct(&lt;POSIXct&gt;) default
    methods now do obey their tz argument, also in this case.
  * as.POSIXlt(&lt;Date&gt;) now does apply a tz (time zone) argument, as
    does as.POSIXct(); partly suggested by Roland Fuss on the R-devel
    mailing list.
  * as.Date.POSIXlt(x) now also works when the list components are of
    unequal length, aka "partially filled" or "ragged".
  * expand.model.frame() looked up variables in the wrong environment
    when applied to models fitted without data.  Reported in
    PR#18414.
  * time() now (also) uses the ts.eps = getOption("ts.eps") argument
    and thus by default rounds values very close to the start (or
    end) of a year.  Based on a proposal by Andre"i V. Kostyrka on
    R-help.
  * Printing of a factanal() result with just one factor and sort =
    TRUE now works regularly, fixing PR#17863 by Timothy Bates,
    thanks to the 'R Contributors' working group.
  * Printing 0-length objects of class "factor", "roman", "hexmode",
    "octmode", "person", "bibentry", or "citation" now prints
    something better, one of which fixes PR#18422, reported by
    Benjamin Feakins.
  * Sys.timezone() queries timedatectl only if systemd is loaded;
    addressing a report by Jan Gorecki in PR#17421.
  * The formula method of cor.test() had scoping problems when
    environment(formula) was not the calling environment; reported
    with a patch proposal by Mao Kobayashi in PR#18439.
  * attach() of an environment with active bindings now preserves the
    active bindings.  Reported by Kevin Ushey in PR#18425.
  * BLAS detection now works also with system-provided libraries not
    available as regular files.  This fixes detection of the
    Accelerate framework on macOS since Big Sur.  Reported by David
    Novgorodsky.
  * download.file() gives a helpful error message in case of an
    invalid download.file.method option, thanks to Colin Fay's report
    in PR#18455.
  * Sporadic crashes of Rterm when using completion have been fixed.
  * Rprof() is now more reliable.  A livelock in thread
    initialization with too short sampling interval has been fixed on
    macOS.  A deadlock in using the C runtime has been fixed on
    Windows.  A potential deadlock has been prevented on Unix.
  * Cursor placement in Rgui now works even after a fixed-width font
    is selected.
  * Mandatory options (options()) are now set on startup so that
    saving and restoring them always works (PR#18372).
  * Package installation, R CMD INSTALL or install.packages(*), now
    parses each of the &lt;pkg&gt;/R/*.R files individually instead of
    first concatenating and then parse()ing the large resulting file.
    This allows parser or syntax errors to be diagnosed with correct
    file names and line numbers, thanks to Simon Dedman's report and
    Bill Dunlap's patch in PR#17859.
    This _does_ require syntactically self contained R source files
    now, fixing another inadvertent bug.
  * predict.lm(&lt;model with offset&gt;) now finds the offset in the
    correct environment, thanks to Andr'e Gillibert's report and patch
    in PR#18456.
  * getInitial(&lt;formula&gt;) now finds the selfStart model in the
    correct environment.  (Reported by Ivan Krylov in PR#18368.)
  * Fix for possible segfault when using recently-added graphics
    features, such as gradients, clipping paths, masks, and groups
    with pdf(file=NULL).
  * class(m) &lt;- class(m) no longer changes a matrix m by adding a
    class _attribute_.
  * packageDate(pkg) now only warns once if there is no pkg.
  * When ts() creates a multivariate time series, "mts", it also
    inherits from "array" now, and is.mts() is documented _and_
    stricter.
  * Rd2txt() now preserves line breaks of \verb Rd content and from
    duplicated \cr.  The former also fixes the rendering of verbatim
    output from Rd \Sexpr in plain-text help.
  * uniroot(f, interval) should no longer wrongly converge _outside_
    the interval in some cases where abs(f(x)) == Inf for an x at the
    interval boundary, thanks to posts by Ben Bolker and Serguei
    Sokol on R-devel.
  * Vectorized alpha handling in palette functions such as in gray(),
    rainbow(), or hcl.colors() works correctly now, thanks to Achim
    Zeileis' report and patch in PR#18476.
  * Formatting and print()ing of bibentry objects has dropped the
    deprecated citation.bibtex.max argument, such that the bibtex
    argument's default for print.bibentry() depends directly on the
    citation.bibtex.max option, whereas in format.bibentry() the
    option no longer applies.
  * Attempting to use a character string naming a foreign function
    entry point in a foreign function call in a package will now
    signal an error if the packages has called R_forceSymbols to
    specify that symbols must be used.
  * An error in table() could permanently set options(warn=2)
    promoting all subsequent warnings to errors.
  * The sigma() function gave misleading results for binary GLMs.  A
    new method for objects of class "glm" returns the square root of
    the estimate of the dispersion parameter using the same
    calculation as summary.glm().
  * bs() and ns() in the (typical) case of automatic knot
    construction, when some of the supposedly inner knots coincide
    with boundary knots, now moves them inside (with a warning),
    building on PR#18442 by Ben Bolker.
  * R CMD on Windows now skips the site profile with --no-site-file
    and --vanilla even when R_PROFILE is set (PR#18512, from Kevin
    Ushey).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1686916800">- CHANGES IN R 4.3.1:
  C-LEVEL FACILITIES:
  * The C-level API version of R's integrate(), Rdqags() in Applic.h,
    now returns the correct number of integrand evaluations neval,
    fixing PR#18515 reported and diagnosed by Stephen Wade.
  * The C prototypes for LAPACK calls dspgv and dtptrs in
    R_exts/Lapack.h had one too many and one too few character length
    arguments - but this has not caused any known issues. To get the
    corrected prototypes, include
    [#]include &lt;Rconfig.h&gt; // for PR18534fixed
    [#]ifdef PR18534fixed
    [#] define usePR18534fix 1
    [#]endif
    [#]include &lt;R_exts/Lapack.h&gt;
    in your C/C++ code (PR#18534).
  INSTALLATION:
  * Many of the checks of esoteric Internet operations and those
    using unreliable external sites have been moved to a new target
    that is not run by default and primarily intended for the core
    developers.  To run them use
    cd tests; make test-Internet-dev
  BUG FIXES:
  * .S3methods(), typically called from methods(), again marks
    methods from package base as visible.
    Also, the visibility of non-base methods is again determined by
    the method's presence in search().
  * tools::Rdiff() is now more robust against invalid strings, fixing
    installation tests on Windows without Rtools installed
    (PR#18530).
  * Fix (new) bug in hcl.colors(2, *), by Achim Zeileis (PR#18523).
  * head(., &lt;illegal&gt;) and tail(..) now produce more useful "Error in
    ...." error messages, fixing PR#18362.
  * Package code syntax on Windows is checked in UTF-8 when UTF-8 is
    the native encoding.
  * na.contiguous(x) now also returns the first run, when it is at
    the beginning and there is a later one of the same length;
    reported to R-devel, including a fix, by Georgi Boshnakov.
    Further, by default, it modifies only an existing attr(*,"tsp")
    but otherwise no longer sets one.
  * chol(&lt;not pos.def&gt;, pivot = &lt;T|F&gt;) now gives a correct error or
    warning message (depending on pivot), thanks to Mikael Jagan's
    (PR#18541).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1699012800">- CHANGES IN R 4.3.2:
  NEW FEATURES:
  * The default initialization of the "repos" option from the
    repositories file at startup can be skipped by setting
    environment variable R_REPOSITORIES to NULL such that
    getOption("repos") is empty if not set elsewhere.
  * qr.X() is now an implicit S4 generic in methods.
  * iconv(to = "ASCII//TRANSLIT") is emulated using substitution on
    platforms which do not support it (notably Alpine Linux).  This
    should give a human-readable conversion in ASCII on all platforms
    (rather than NA_character_).
  * trans3d() gains options continuous and verbose addressing the
    problem of possible "wrap around" when projecting too long
    curves, as reported by Achim Zeileis in PR#18537.
  * tools::showNonASCII() has been rewritten to work better on macOS
    14 (which has a changed implementation of iconv()).
  * tiff(type = "quartz") (the default on macOS) now warns if
    compression is specified: it continues to be ignored.
  INSTALLATION on a UNIX-ALIKE:
  * There is some support for building with Intel's LLVM-based
    compilers on x86_64 Linux, such as (C) icx, (C++) ipcx and
    (Fortran) ifx from oneAPI 2023.x.y.
  * There is support for using LLVM's flang-new as the Fortran
    compiler from LLVM 16.0.x (preferably 17.0.0 or later).
  UTILITIES:
  * R CMD check reports the use of the Fortran 90 random number
    generator RANDOM_NUMBER() and the subroutines to initialize it.
    'Writing R Extensions' has example code to use R's RNGs from
    Fortran.
  BUG FIXES:
  * substr(x, n, L) &lt;- cc now works (more) correctly for multibyte
    UTF-8 strings x when L &gt; nchar(x), thanks to a report and patch
    by 'Architect 95'.
  * contrib.url(character()) now returns 0-length character() as
    documented, which also avoids spurious warnings from
    available.packages() et al. in the edge case of an empty vector
    of repository URLs.
  * readChar(., 4e8) no longer fails, thanks to Kodi Arfer's report
    (PR#18557).
  * lapply(&lt;list&gt;, as.data.frame) no longer warns falsely for some
    base vector components.
  * Communication between parent and child processes in the multicore
    part of parallel could fail on platforms that do not support an
    arbitrarily large payload in system functions read()/write() on
    pipes (seen on macOS where a restriction to INT_MAX bytes is
    documented, without doing a partial read unlike Linux). The
    payload is now split into 1Gb chunks to avoid that problem.
    (PR#18571)
  * qqplot(x,y, conf.level=.) gives better confidence bounds when
    length(x) != length(y), thanks to Alexander Ploner's report and
    patch proposal (PR#18557).
  * norm(&lt;0-length&gt;, "2") now gives zero instead of an error, as all
    the other norm types, thanks to Mikael Jagan's PR#18542.
  * Build-stage Rd macros \packageAuthor and \packageMaintainer now
    process Authors@R, fixing NA results when the package DESCRIPTION
    omits Author and Maintainer fields.
  * Formatting and printing complex numbers could give things like
    0.1683-0i because of rounding error: -0i is now replaced by +0i.
  * postscript() refused to accept a title comment containing the
    letter "W" (PR#18599).
  * isoreg(c(1,Inf)) signals an error instead of segfaulting, fixing
    PR#18603.
  * tiff(type = "Xlib") was only outputting the last page of
    multi-page plots.
  * tools::latexToUtf8() again knows about \~{n} and other letters
    with tilde, fixing a regression in R 4.3.0, and about \^{i} as an
    alternative to \^{\i} (similarly with other accents).
    Furthermore, LaTeX codes for accented I letters are now correctly
    converted, also fixing related mistakes in
    tools::encoded_text_to_latex().
  * tar(*, tar = "internal") no longer creates out-of-spec tar files
    in the very rare case of user or group names longer than 32
    bytes, fixing PR#17871 with thanks to Ivan Krylov.
  * When using the "internal" timezone datetime code, adding a
    fraction of a second no longer adds one second, fixing PR#16856
    from a patch by Ivan Krylov.
  * tools::checkRd() no longer produces spurious notes about
    "unnecessary braces" from multi-line Rd results of \Sexpr macros.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1709208000">- CHANGES IN R 4.3.3:
  NEW FEATURES:
  * iconv() now fixes up variant encoding names such as "utf8"
    case-insensitively.
  DEPRECATED AND DEFUNCT:
  * The legacy encoding = "MacRoman" is deprecated in pdf() and
    postscript(): support was incomplete in earlier versions of R.
  BUG FIXES:
  * Arguments are now properly forwarded to methods on S4 generics
    with ... in the middle of their formal arguments. This was broken
    for the case when a method introduced an argument but did not
    include ... in its own formals. Thanks to Herv'e Pag`es for the
    report PR#18538.
  * Some invalid file arguments to pictex(), postscript() and xfig()
    opened a file called NA rather than throw an error.  These
    included postscript(NULL) (which some people expected to work
    like pdf(NULL)).
  * Passing filename = NA to svg(), cairo_pdf(), cairo_ps() or the
    Cairo-based bitmap devices opened a file called NA: it now throws
    an error.
  * quartz(file = NA) opened a file called NA, including when used as
    a Quartz-based bitmap device.  It now gives an error.
  * rank(&lt;long vector&gt;) now works, fixing PR#18617, thanks to Ilia
    Kats.
  * seq.int() did not adequately check its length.out argument.
  * match(&lt;POSIXct&gt;, .) is correct again for differing time zones,
    ditto for "POSIXlt", fixing PR#18618 reported by Bastian Klein.
  * drop.terms(*, dropx = &lt;0-length&gt;) now works, fixing PR#18563 as
    proposed by Mikael Jagan.
  * drop.terms(*) keeps + offset(.) terms when it should, PR#18565,
    and drop.terms() no longer makes up a response, PR#18566, fixing
    both bugs thanks to Mikael Jagan.
  * getS3method("t", "test") no longer finds the t.test() function,
    fixing PR#18627.
  * pdf() and postscript() support for the documented Adobe encodings
    "Greek" and "Cyrilllic" was missing (although the corresponding
    Windows' codepages could be used).
  * Computations of glyph metric information for pdf() and
    postscript() did not take into account that transliteration could
    replace one character by two or more (only seen on macOS 14) and
    typically warned that the information was not known.
  * rank(x) no longer overflows during integer addition, when
    computing rank average for largish but not-yet long vector x,
    fixing PR#18630, thanks to Ilia Kats.
  * list.files() on Windows now returns also files with names longer
    that 260 bytes (the Windows limit is 260 characters).
    Previously, some file names particularly with 'East Asian'
    characters were omitted.
  * cov2cor(&lt;0 x 0&gt;) now works, fixing PR#18423 thanks to Mikael
    Jagan and Elin Waring.
  * cov2cor(&lt;negative diagonal&gt;) and similar now give one warning
    instead of two, with better wording, fixing PR#18424 thanks to
    Mikael Jagan.
  * tools:: startDynamicHelp() now ensures port is in proper range,
    fixing PR#18645.
  * pbeta(x, a,b) is correct now for x=0 or 1 in the boundary cases
    where a or b or both are 0, fixing PR#18672 thanks to Michael
    Fay.
  * pmatch(x, table) for large table, also called for data frame row
    selection, dfrm[nm, ], is now interruptible, fixing PR#18656.
  * predict(&lt;rank-deficient lm&gt;, newdata=*) fix computing of nbasis,
    see Russ Lenth's comment 29 in PR#16158.
  * Added a work-around for a bug in macOS 14.3.1 and higher which
    prevents R plots in the Quartz Cocoa device from updating on
    screen.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1713960000">- CHANGES IN R 4.4.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Startup banners, R --version, sessionInfo() and R CMD check no
    longer report (64-bit) as part of the platform as this is almost
    universal - the increasingly rare 32-bit platforms will still
    report (32-bit).
    On Windows, ditto for window titles.
  * is.atomic(NULL) now returns FALSE, as NULL is not an atomic
    vector.  Strict back-compatibility would replace is.atomic(foo)
    by (is.null(foo) || is.atomic(foo)) but should happen only
    sparingly.
  NEW FEATURES:
  * The confint() methods for "glm" and "nls" objects have been
    copied to the stats package.  Previously, they were stubs which
    called versions in package MASS. The MASS namespace is no longer
    loaded if you invoke (say) confint(glmfit).  Further, the "glm"
    method for profile() and the plot() and pairs() methods for class
    "profile" have been copied from MASS to stats.  (profile.nls()
    and plot.profile.nls() were already in stats.)
  * The confint() and profile methods for "glm" objects have gained a
    possibility to do profiling based on the Rao Score statistic in
    addition to the default Likelihood Ratio. This is controlled by a
    new test = argument.
  * The pairs() method for "profile" objects has been extended with a
    which = argument to allow plotting only a subset of the
    parameters.
  * The "glm" method for anova() computes test statistics and
    p-values by default, using a chi-squared test or an F test
    depending on whether the dispersion is fixed or free.  Test
    statistics can be suppressed by giving argument test a false
    logical value.
  * In setRepositories() the repositories can be set using their
    names via name = instead of index ind =.
  * methods() and .S3methods() gain a all.names option for the (rare)
    case where functions starting with a . should be included.
  * Serializations can now be interrupted (e.g., by Ctrl-C on a
    Unix-alike) if they take too long, e.g., from save.image(),
    thanks to suggestions by Ivan Krylov and others on R-devel.
  * New startup option --max-connections to set the maximum number of
    simultaneous connections for the session.  Defaults to 128 as
    before: allowed values up to 4096 (but resource limits may in
    practice restrict to smaller values).
  * R on Windows (since Windows 10 2004) now uses the new Segment
    Heap allocator. This may improve performance of some
    memory-intensive applications.
  * When R packages are built, typically by R CMD build &lt;pkg&gt;, the
    new --user=&lt;build_user&gt; option overrides the (internally
    determined) user name, currently Sys.info()["user"] or LOGNAME.
    This is a (modified) fulfillment of Will Landau's suggestion in
    PR#17530.
  * tools::testInstalledBasic() gets new optional arguments outDir
    and testSrcdir, e.g., allowing to use it in a &lt;builddir&gt; !=
    &lt;srcdir&gt; setup, and in standard "binary" Windows installation
  * if* a source tests/ folder is present.
  * range(&lt;DT_with_Inf&gt;, finite = TRUE) now work for objects of class
    "Date", "POSIXct", and "POSIXlt" with infinite entries,
    analogously to range.default(), as proposed by Davis Vaughan on
    R-devel.  Other range()-methods can make use of new function
    .rangeNum().
  * New .internalGenerics object complementing .S3PrimitiveGenerics,
    for documentation and low-level book-keeping.
  * grid() now invisibly returns the x- and y- coordinates at which
    the grid-lines were drawn.
  * norm(., type) now also works for complex matrices.
  * kappa(., exact = TRUE, norm = *) now works for all norms and also
    for complex matrices.  In symmetric / triangular cases, the new
    argument uplo = "U" | "L" allows the upper or lower triangular
    part to be specified.
  * memDecompress(type = "unknown") recognizes compression in the
    default 'zlib' format as used by memCompress(type = "gzip").
  * memCompress() and memDecompress() will use the libdeflate library
    (&lt;https://github.com/ebiggers/libdeflate&gt;) if installed.  This
    uses the same type of compression for type = "gzip" but is 1.5-2x
    faster than the system libz library on some common platforms: the
    speed-up may depend on the library version.
  * diff() for objects of class "Date", "POSIXct", and "POSIXlt"
    accepts a units argument passed via ....
  * Dynamic help now does a much better job of rendering package
    DESCRIPTION metadata.
  * Rprof() gains an event argument and support for elapsed (real)
    time profiling on Unix (PR#18076).
  * filled.contour() gains a key.border argument.
  * tools::update_pkg_po() gets arguments pot_make and mo_make for
    _not_ re-making the corresponding files, and additionally a
    verbose argument.
  * Hexadecimal string colour specifications are now accepted in
    short form, so, for example, we can use "#123", which is
    equivalent to "#112233".
    Thanks to MikeFC for the original idea and Ella Kaye, Malcolm
    Barrett, George Stagg, and Hanne Oberman for the patch.
  * Plain-text help shows \var markup by angle brackets.
  * The new experimental primitive function declare() is intended to
    eventually allow information about R code to be communicated to
    the interpreter, compiler, and code analysis tools. The syntax
    for declarations is still being developed.
  * Functions psmirnov(), qsmirnov() and rsmirnov() in package stats
    have had argument two.sided renamed to alternative, to take into
    account that the permutation distributions of the one-sided
    statistics can be different in the case of ties.  Consequence of
    PR#18582.
  * sort() is now an implicit S4 generic in methods.
  * Formatting and printing, format(z), print(z), of complex vectors
    z no longer zap relatively small real or imaginary parts to zero,
    fixing PR#16752.  This is an API change, as it was documented
    previously to round real and imaginary parts together on purpose,
    producing nicer looking output.  As mentioned, e.g. in the PR,
    this change is compatible with many other "R-like" programming
    environments.
    We have simplified the internal code and now basically format the
    real and imaginary parts independently of each other.
  * New experimental functions Tailcall() and Exec() to support
    writing stack-space-efficient recursive functions.
  * Where characters are attempted to be plotted by pdf(),
    postscript() and xfig() which are not in the selected 8-bit
    character set (most often Latin-1) and the R session is using a
    UTF-8 locale, the warning messages will show the UTF-8 character
    rather than its bytes and one dot will be substituted per
    character rather than per byte.  (Platforms whose iconv() does
    transliteration silently plot the transliteration.)
    In a UTF-8 locale some transliterations are now done with a
    warning (e.g., dashes and Unicode minus to hyphen, ligatures are
    expanded, permille (‰) is replaced by o/oo), although the OS may
    have got there first.  These are warnings as they will continue
    to be replaced by dots in earlier versions of R.
  * The matrix multiplication functions crossprod() and tcrossprod()
    are now also primitive and S3 generic, as %*% had become in R
    4.3.0.
  * source() and example() have a new optional argument catch.aborts
    which allows continued evaluation of the R code after an error.
  * The non-Quartz tiff() devices allow additional types of
    compression if supported by the platform's libtiff library.
  * The list of base and recommended package names is now provided by
    tools::standard_package_names().
  * cairo_pdf() and cairo_ps() default to onefile = TRUE to closer
    match pdf() and postscript().
  * New option catch.script.errors provides a documented way to catch
    errors and then continue in non-interactive use.
  * L %||% R newly in base is an expressive idiom for the phrases
    if(!is.null(L)) L else R or if(is.null(L)) R else L.
  * The return value from warnings() now always inherits from
    "warnings" as documented, now also in the case of no warnings
    where it previously returned NULL.
  * as.complex("1i") now returns 0 + 1i instead of NA with a warning.
  * z &lt;- c(NA, 1i) now keeps the imaginary part Im(z[1]) == 0, no
    longer coercing to NA_complex_.  Similarly, cumsum(z) correctly
    sums real and imaginary parts separately, i.e., without
    "crosstalk" in case of NAs.
  * On Alpine Linux iconv() now maps "latin2", "latin-2", "latin9"
    and "latin-9" to encoding names the OS knows about
    (case-insensitively).
  * iconv(sub = "Unicode") now always zero-pads to four (hex) digits,
    rather than to 4 or 8.  (This seems to have become the convention
    once Unicode restricted the number of Unicode points to 2^21 - 1
    and so will never need more than 6 digits.)
  * NCOL(NULL) now returns 0 instead of 1, for consistency with
    cbind().
  * The information for the Euro glyph missing from the Adobe .afm
    files for the Courier, Helvetica and Times families has been
    copied from their URW equivalents - this will improve vertical
    centring in the pdf() and postscript() devices.
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.12.0.  The changes are almost entirely cosmetic.
  * The included LAPACK sources have been updated to version 3.12.0
    and some further double-complex routines added.
  * There are new font families for the 2014--5 URW 2.0 fonts (see
    ?pdf) which are included in recent versions of Ghostscript.
    These have font widths for most Greek glyphs and a few others
    which were missing from the original versions (whose font
    families remain available for reproducibility, although
    Ghostscript-based viewers will render using the 2.0 versions).
  * Improve the large-n efficiency of as.matrix(&lt;dist&gt;), thanks an R
    contributors effort, notably by Tim Taylor and Heather Turner,
    see PR#18660.
  * The default and numeric methods of all.equal() get a check.class
    option.
  * zapsmall() gets new optional arguments, function mFUN and min.d,
    for extra flexibility; fulfills a wish in PR#18199.  Also, it is
    now an implicit S4 generic in package methods.
  * The Rd filter for aspell() gains an ignore argument.
  * New generic function sort_by(), primarily useful for the
    data.frame method which can be used to sort rows of a data frame
    by one or more columns.
  * The icence headers for the RPC code in src/extra/xdr have been
    updated to use the GPL-compatible licence published by Oracle
    America in 2010.
  * New function pkg2HTML() in tools to create single-page HTML
    reference manuals for R packages.
  * The byte code evaluator now uses less C stack space for recursive
    calls to byte-compiled functions. It also makes more of an effort
    to avoid allocations for scalar return values.
  * New completion option backtick (disabled by default) allows
    non-syntactic completions to be wrapped in backquotes. This is
    currently only useful for Jupyter notebooks via the IRkernel
    package, and may cause problems for other backends.
  INSTALLATION:
  * The parser has been updated to work with bison 3.8.2, which is
    now used for the pre-generated parsers in gram.c, file.c, and
    gramRd.c. A few parser error messages have changed, which may
    affect code that relies on exact messages.
  INSTALLATION on a UNIX-ALIKE:
  * System valgrind headers are now required to use configure option
  - -with-valgrind-instrumentation with value 1 or 2.
  * configure will warn if it encounters a 32-bit build, as that is
    nowadays almost untested.
  * Environment variable R_SYSTEM_ABI is no longer used and so no
    longer recorded in etc/Renviron (it was not on Windows and was
    only ever used when preparing package tools).
  * If the libdeflate library and headers are available, libdeflate
    rather than libz is used to (de)compress R objects in lazy-load
    databases.  Typically tasks spend up to 5% of their time on such
    operations, although creating lazy-data databases is one of the
    exceptions.
    This can be suppressed if the library is available by the
    configure option --without-libdeflate-compression.
  * configure option --enable-lto=check has not worked reliably since
    2019 and has been removed.
  * The minimum autoconf requirement for a maintainer build has been
    increased to autoconf 2.71.
    It is intended to increase this to 2.72 for R 4.5.0: the
    distributed configure file was generated using 2.72.
  * The minimum version requirement for an external LAPACK has been
    reduced to 3.9.0.
  * No default C++ compiler is set if no C++17 compiler is detected:
    there is no longer an automatic fallback to C++14 or C++11.
    Compilers from the last five years should have sufficient
    support: for others macros CXX and CXXSTD can be set in file
    config.site to provide a fallback if needed.
    The Objective-C++ compiler now by default uses the standard
    selected by R for C++ (currently C++17) rather than the default
    standard for the C++ compiler (which on macOS is still C++98).
  INSTALLATION on macOS:
  * A new configure option --with-newAccelerate makes use of Apple's
    'new' BLAS / LAPACK interfaces in their Accelerate framework.
    Those interfaces are only available in macOS 13.3 or later, and
    building requires SDK 13.3 or later (from the Command Line Tools
    or Xcode 14.3 or later).
    By default the option uses new Accelerate for BLAS calls: to also
    use it for LAPACK use option --with-newAccelerate=lapack.  The
    later interfaces provide LAPACK 3.9.1 rather than 3.2.1: 3.9.1 is
    from 2021-04 and does not include the improved algorithms
    introduced in LAPACK 3.10.0 (including for BLAS calls).
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools44, an update of the Rtools43 toolchain.  It is
    based on GCC 13 and newer versions of MinGW-W64, binutils and
    libraries (targeting 64-bit Intel CPUs).  R-devel can no longer
    be built using Rtools43 without changes.
  * Rtools44 has experimental support for 64-bit ARM (aarch64) CPUs
    _via_ the LLVM 17 toolchain using lld, clang/flang-new and
    libc++.
  UTILITIES:
  * R CMD check notes when S4-style exports are used without
    declaring a strong dependence on package methods.
  * tools::checkRd() (used by R CMD check) detects more problems with
    \Sexpr-based dynamic content, including bad nesting of \Sexprs
    and invalid arguments.
  * tools::checkRd() now reports Rd titles and section names ending
    in a period; this is ignored by R CMD check unless environment
    variable _R_CHECK_RD_CHECKRD_MINLEVEL_ is set to -5 or smaller.
  * R CMD check now notes Rd files without an \alias, as long
    documented in 'Writing R Extensions' §1.3.1.  The check for a
    missing \description has been moved from tools::checkRd() to
    tools::checkRdContents().
  * R CMD check now visits inst/NEWS.Rd and OS-specific man
    subdirectories when checking Rd files.
  * tools::checkDocFiles() and tools::checkRdContents() now also
    check internal Rd files by default, but "specially" (ignoring
    missing documentation of arguments).
  * R CMD Rdiff gets option --useEx.
  * R CMD check now warns on non-portable uses of Fortran KIND such
    as INTEGER(KIND=4) and REAL(KIND=8).
    To see the failing lines set environment variable
    _R_CHECK_FORTRAN_KIND_DETAILS_ to a true value.
  * When checking Rd files, R CMD check now notes some of the "lost
    braces" that tools::checkRd() finds.  Typical problems are Rd
    macros missing the initial backslash (e.g., code{...}), in-text
    set notation (e.g., {1, 2}, where the braces need escaping), and
    \itemize lists with \describe-style entries of the form
    \item{label}{description}.
  * R CMD INSTALL (and hence check) will compile C++ code with
  - DR_NO_REMAP if environment variable _R_CXX_USE_NO_REMAP_ is set
    to a true value.  It is planned that this will in future become
    the default for compiling C++.
  * The new built-in Rd macro \dontdiff{} can be used to mark example
    code whose output should be ignored when comparing check output
    to reference output (tests/Examples/&lt;pkg&gt;-Ex.Rout.save).  The
    \dontdiff tag, like \donttest, is _not_ shown on the rendered
    help page, so provides a clean alternative to ##
    IGNORE_RDIFF_(BEGIN|END) comments.
  * R CMD build when there is no NAMESPACE, now uses the recommended
    exportPattern("^[^.]"), instead of exporting everything.
  * R CMD check now warns about non-ASCII characters in the NAMESPACE
    file (in addition to R files). Such packages are not portable and
    may fail to install on some platforms.
  C-LEVEL FACILITIES:
  * Headers R_ext/Applic.h and R-ext/Linpack.h used to include
    R_ext/BLAS.h although this was undocumented and unneeded by their
    documented entry points.  They no longer do so.
  * New function R_missing(), factored out from do_missing(), used to
    fix PR#18579.
  * SEXP type S4SXP has been renamed to OBJSXP to support
    experimenting with alternative object systems.  The S4SXP value
    can still be used in C code but is now deprecated.  Based on
    contributions from the R Consortium's Object-Oriented Programming
    Working Group.
  * New function pow1p(x,y) for accurate (1+x)^y.
  * mkCharLenCE was incorrectly documented to take a size_t length
    but was implemented with int (and character strings in R are
    limited to 2^31 - 1 bytes).
  DEPRECATED AND DEFUNCT:
  * data() no longer handles zipped data from long-defunct (since R
    2.13.0) --use-zip-data installations.
  * The legacy graphics devices pictex() and xfig() are now
    deprecated.  They do not support recent graphics enhancements and
    their font handling is rudimentary. The intention is to retain
    them for historical interest as long as they remain somewhat
    functional.
  * Support for encoding = "MacRoman" has been removed from the pdf()
    and postscript() devices - this was a legacy encoding supporting
    classic macOS up to 2001 and no longer has universal libiconv
    support.
  * is.R() is deprecated as no other S dialect is known to be in use
    (and this could only identify historical dialects, not future
    ones).
    Further information on calls can be obtained by setting the
    environment variable _R_DEPRECATED_IS_R_ to error which turns the
    deprecation warning into an error and so by default gives a
    traceback.  (This is done by R CMD check --as-cran.)
  * UseMethod() no longer forwards local variables assigned in the
    generic function into method call environments before evaluating
    the method body. This makes method calls behave more like
    standard function calls and makes method code easier to analyze
    correctly.
  * The twelve as.data.frame.&lt;class&gt;() methods which were deprecated
    only via _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ and in R CMD
    check --as-cran are formally deprecated now in favour of calling
    as.data.frame() or as.data.frame.vector().  The deprecation
    "check" now works also when as.data.frame() is S4 generic thanks
    to Ivan Krylov.
  * The default method for the directional comparison operators &lt;, &gt;,
    &lt;=, and &gt;= now signals an error when one of the operands is a
    language object, i.e. a symbol or a call.
  * For terms.formula(), deprecate abb and neg.out arguments
    _formally_ in addition to just documenting it.
  BUG FIXES:
  * The methods package is more robust to not being attached to the
    search path.  More work needs to be done.
  * pairwise.t.test() misbehaved when subgroups had 0 DF for
    variance, even with pool.sd = TRUE.  (PR#18594 by Jack Berry).
  * Probability distribution functions [dpq]&lt;distrib&gt;(x, *), but also
    bessel[IKJY](x, .) now consistently preserve attributes(x) when
    length(x) == 0, e.g., for a 2 x 0 matrix, thanks to Karolis
    Koncevičius' report PR#18509.
  * Group "Summary" computations such as sum(1:3, 4, na.rm = 5, NA,
    7, na.rm = LL) now give an error instead of either 17 or NN for
    LL true or false, as proposed by Ivan Krylov on the R-devel
    mailing list.  (This also means it is now an error to specify
    na.rm more than once.)
  * as.complex(x) now returns complex(real = x, imaginary = 0) for
    _all_ numerical and logical x, notably also for NA or
    NA_integer_.
  * Directories are now omitted by file.copy(, recursive = FALSE) and
    in file.append() (PR#17337).
  * gsub() and sub() are now more robust to integer overflow when
    reporting errors caused by too large input strings (PR#18346).
  * Top-level handlers are now more robust to attempts to remove a
    handler whilst handlers are running (PR#18508).
  * The handling of Alt+F4 in dialogs created on Windows using
    GraphApp has been fixed (PR#13870).
  * density() more consistently computes grid values for the
    FFT-based convolution, following Robert Schlicht's analysis and
    proposal in PR#18337, correcting density values typically by a
    factor of about 0.999.  Argument old.coords = TRUE provides back
    compatibility.
  * palette.colors() gains a name argument that defaults to FALSE
    controlling whether the vector of colours that is returned has
    names (where possible).  PR#18529.
  * tools::xgettext() no longer extracts the (non-translatable) class
    names from warningCondition and errorCondition calls.
  * S3method(&lt;gen&gt;, &lt;class&gt;, &lt;func&gt;) in the NAMESPACE file now works
    (again) when &lt;func&gt; is visible from the namespace, e.g.,
    imported, or in base.
  * getParseData(f) now also works for a function defined in the
    first of several &lt;pkg&gt;/R/*.R source files, thanks to Kirill
    Müller's report and Duncan Murdoch's patch in PR#16756.
  * Rd \Sexpr macros with nested #ifdef conditionals were not
    processed.
  * A non-blocking connection with non-default encoding (such as a
    socket) now correctly returns from readLines() after new data has
    arrived also when its EOF had been reached previously.  Thanks to
    Peter Meilstrup's report on R-devel and Ivan Krylov's report and
    patch proposal in PR#18555.
  * tools::checkRdContents() failed to detect empty argument
    descriptions when they spanned multiple lines, including those
    generated by prompt().  These cases are now noted by R CMD check.
  * Plain-text help no longer outputs spurious colons in the
    arguments list (for multi-line \item labels in the Rd source).
  * kappa() and rcond() work correctly in more cases; kappa(., norm =
    "2") now warns that it computes the 1-norm with (default) exact =
    FALSE; prompted by Mikael Jagan's quite comprehensive PR#18543.
  * Rd skeletons generated by prompt() or promptData() now use a
    dummy title (so R CMD build works).  tools::checkRdContents() has
    been updated to detect such template leftovers, including from
    promptPackage().
  * When S4 method dispatch fails because no method was found, the
    error message now includes the signature argument names; thanks
    to Michael Chirico's proposal on the R-devel list.
  * withAutoprint({ .. }) now preserves srcrefs previously lost,
    thanks to Andrew Simmons' report plus fix in PR#18572.
  * transform.data.frame() no longer adjusts names; in particular,
    untransformed variables are kept as-is, including those with
    syntactically invalid names (PR#17890).
  * The keep.source option for Rd \Sexpr blocks is no longer ignored.
  * The formula methods for t.test() and wilcox.test() now catch when
    paired is passed, addressing PR#14359; use Pair(x1, x2) ~ 1 for a
    paired test.
  * The level reported in the browser prompt was often too large. It
    now shows the number of browser contexts on the stack.
  * For cbind() and rbind(), the optional deparse.level argument is
    now properly passed to methods, thanks to Mikael Jagan's PR#18579
    and comments there.
  * Some error and warning messages for large ('long vector')
    matrix(v, nr, nc) and dim(m) &lt;- d are now correct about sizes,
    using long long formatting, fixing PR#18612 (and more) reported
    by Mikael Jagan.
  * readChar(useBytes = TRUE) now terminates strings even when the
    underlying connection uses extra spaces in the input buffer.
    This fixes problems with extra garbage seen with gzip
    connections, PR#18605.
  * Named capture in PCRE regular expressions now works also with
    more than 127 named groups (PR#18588).
  * Datetime functions are now robust against long jumps when dealing
    with internal time zone changes.  This avoids confusing warnings
    about an invalid time zone, previously triggered by turning
    warnings into errors or handling them via tryCatch (PR#17966,
    PR#17780).
  * Datetime functions now restore even an empty TZ environment
    variable after internal time zone changes (PR#17724).  This makes
    results of datetime functions with this (typically unintentional)
    setting more predictable.
  * drop.terms(*) now drops response as by default, keep.response =
    FALSE, fixing PR#18564 thanks to Mikael Jagan.
  * dummy.coef(.) now also works for lm()-models with character
    categorical predictor variables rather than factor ones, fixing
    PR#18635 reported by Jinsong Zhao.
  * formals(f) &lt;- formals(f) now also works for a function w/o
    arguments and atomic _constant_ body(f).
  * Correct as.function(&lt;invalid list&gt;, .)'s error message.
  * removeSource() is yet more thorough in finding and removing
    "srcref" and the other source references from parsed R language
    chunks, fixing PR#18638 thanks to Andrew Simmons.
  * dgeom() is more accurate now, notably when its result is very
    small, fixing PR#18642 thanks to the proposal of Morten Welinder,
    also improving other instances where C level binom_raw(x, n, ..)
    has x == 0 or x== n.
  * warning() with options(warn = 1) has improved output for
    multi-line messages.
  * axis.Date() and axis.POSIXct() now respect the par("lab") setting
    for the number of pretty() intervals.
  * Comparisons for language objects (which are based on deparsing)
    are now more careful about using accurate deparsed results
    (PR#18676).
  * Plain-text help (Rd2txt) now correctly preserves blank lines
    following single-line \dontrun code.
  * &lt;POSIXlt&gt;[*] no longer sets wrong "balanced" attribute, fixing
    PR#18681 thanks to Mikael Jagan.
  * str(&lt;classed-call&gt;) now deparses the call as expected, fixing
    PR#18684, reported by Dave Slager.
  * In Rd examples, code following the closing brace of a \dontrun,
    \dontshow or \donttest tag on the same line is no longer skipped
    when R CMD check runs the examples.
  * as.data.frame(matrix(*, ncol=0)) now gets valid names() and
    colnames(); reported by Davis Vaughan on the R-devel list.
  * Internal Mathlib function stirlerr(n) is now almost fully
    (52-bit) accurate for all n &gt;= ~5.9 and more accurate also in the
    range 1 -- 5.9.  This entails small ("after 12th decimal")
    changes in density functions, e.g., dgamma() in _some_ regions of
    their support.  The fix was partly prompted by Morten Welinder's
    PR#18640.
  * Numbers like 9876543.2 are now considered non-integer by Mathlib
    internal R_nonint(), amending original fix of PR#15734.
  * Rd comment lines no longer cause broken paragraphs in the
    rendered PDF and plain-text help. In code blocks, pure comment
    lines (starting with %) no longer produce an empty line.
  * xtabs(Freq ~ .) now consistently defaults to na.action = na.pass,
    using na.rm = FALSE (added as an argument) when summing over Freq
    (PR#17770).
  * tools::testInstalledPackage() is no longer silent about failures
    from running examples or tests and its return code no longer
    ignores failures from checking vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1718366400">- CHANGES IN R 4.4.1:
  C-LEVEL FACILITIES:
  * Functions R_atof and R_strtod declared in header R_ext/Utils.h
    are now documented in 'Writing R Extensions' and so formally part
    of the API.
  * The non-API entry points Rf_setSVector, Rf_StringFalse,
    Rf_StringTrue and Rf_isBlankString have been added to those
    reported by R CMD check.
  * The new function Rf_allocLang is now available. This provides an
    alternative to the idiom of calling Rf_allocList followed by
    SET_TYPEOF.
  UTILITIES:
  * R CMD check now reports as warnings what gfortran calls 'Fortran
    2018 deleted features', all of which have long been marked as
    'obsolescent' and some of which were deleted in Fortran 2008 or
    earlier.  Fortran compilers are no longer required to support
    these.
  BUG FIXES:
  * as.numeric(), scan(), type.convert() and other places which use
    the internal C function R_strtod now require a _non-empty_ digit
    sequence in a decimal or binary exponent.  This aligns with the
    C/POSIX standard for strtod and with ?NumericConstants.
  * as.data.frame(m, make.names=NA) now works correctly for a matrix
    m with NA's in row names.
  * The error message from &lt;POSIXlt&gt;[["hour"]] and similar now
    mentions *[[, "hour"]], as wished for in PR#17409 and proposed by
    Michael Chirico.
  * qbinom() and potentially qpois(), qnbinom(), no longer sometimes
    fail accurate inversion (of pbinom(), etc), thanks to Christopher
    Chang's report and patch in PR#18711.
  * The internal help server on Windows can again serve requests sent
    in quick succession, fixing a regression in R 4.4.0.
  * debugcall(&lt;S3Generic&gt;()) now also works when a corresponding
    S4-generic version is in the methods cache (PR#18143).
  * Package tools' toTitleCase(ch0) now returns character(0) when ch0
    is of zero length; fixing PR#18724, reported by David Hugh Jones.
  * R CMD check is no longer broken (without a check result and no
    explanation in 00check.log) for a package which declares an
    invalid VignetteBuilder in DESCRIPTION but has no vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1730376000">- CHANGES IN R 4.4.2:
  C-LEVEL FACILITIES:
  * The S-compatibility macros F77_COM and F77_COMDECL defined in
    header R_ext/RS.h are deprecated and will be removed shortly.  We
    could find no record of their use.
  BUG FIXES:
  * Mathlib function lgammacor(x) no longer warns about underflow to
    zero for large x.
  * Text widths and heights were incorrectly reported by the Quartz
    device if the drawing context didn't exist yet (typically when
    drawing off-screen to a window that is yet to appear, see
    PR#18591).
  * The Quartz device could segfault in cases where paths with spaces
    are used in the new glyph drawing API.  Thanks to Tomek
    Gieorgijewski (PR#18758).
  * On macOS in R CRAN builds, it is again possible to read
    little-endian UTF-16 text with a BOM from a connection using
    encoding="UTF-16".  Users building R from source should avoid
    using the system libiconv in macOS 14.1 and later.
  * methods' internal .requirePackage() now re-enables primitive
    method dispatch when needed; thanks to Ivan Krylov for
    demystifying CRAN package check failures on the R-devel mailing
    list.</changelog>
</package>
<package pkgid="c5ffd660628ba337416ec34c1455ba97a16db4539161ae05f0cf3ac4bf505aa1e621c78f058670227727fb622b37e041dd589560d51aa54b528edea7b6d92116" name="R-utils-debuginfo" arch="i586">
  <version epoch="0" ver="4.4.2" rel="51.0.2.2.sr20241103"/>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1620302400">- To get in sync with d:l:R:autoCRAN the Matrix package's split
  in -devel was reversed.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339200">- improved spec file according to comments of dimstar in
  https://build.opensuse.org/request/show/892685</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339201">- CHANGES IN R 4.1.0:
  FUTURE DIRECTIONS:
  * It is planned that the 4.1.x series will be the last to support
    32-bit Windows, with production of binary packages for that
    series continuing until early 2023.
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Data set esoph in package datasets now provides the correct
    numbers of controls; previously it had the numbers of cases added
    to these.  (Reported by Alexander Fowler in PR#17964.)
  NEW FEATURES:
  * www.omegahat.net is no longer one of the repositories known by
    default to setRepositories().  (Nowadays it only provides source
    packages and is often unavailable.)
  * Function package_dependencies() (in package tools) can now use
    different dependency types for direct and recursive dependencies.
  * The checking of the size of tarball in R CMD check --as-cran
    &lt;pkg&gt; may be tweaked via the new environment variable
    _R_CHECK_CRAN_INCOMING_TARBALL_THRESHOLD_, as suggested in
    PR#17777 by Jan Gorecki.
  * Using c() to combine a factor with other factors now gives a
    factor, an ordered factor when combining ordered factors with
    identical levels.
  * apply() gains a simplify argument to allow disabling of
    simplification of results.
  * The format() method for class "ftable" gets a new option justify.
    (Suggested by Thomas Soeiro.)
  * New ...names() utility.  (Proposed by Neal Fultz in PR#17705.)
  * type.convert() now warns when its as.is argument is not
    specified, as the help file always said it _should_.  In that
    case, the default is changed to TRUE in line with its change in
    read.table() (related to stringsAsFactor) in R 4.0.0.
  * When printing list arrays, classed objects are now shown _via_
    their format() value if this is a short enough character string,
    or by giving the first elements of their class vector and their
    length.
  * capabilities() gets new entry "Rprof" which is TRUE when R has
    been configured with the equivalent of --enable-R-profiling (as
    it is by default).  (Related to Michael Orlitzky's report
    PR#17836.)
  * str(xS4) now also shows extraneous attributes of an S4 object
    xS4.
  * Rudimentary support for vi-style tags in rtags() and R CMD rtags
    has been added.  (Based on a patch from Neal Fultz in PR#17214.)
  * checkRdContents() is now exported from tools; it and also
    checkDocFiles() have a new option chkInternal allowing to check
    Rd files marked with keyword "internal" as well.  The latter can
    be activated for R CMD check via environment variable
    _R_CHECK_RD_INTERNAL_TOO_.
  * New functions numToBits() and numToInts() extend the raw
    conversion utilities to (double precision) numeric.
  * Functions URLencode() and URLdecode() in package utils now work
    on vectors of URIs.  (Based on patch from Bob Rudis submitted
    with PR#17873.)
  * path.expand() can expand ~user on most Unix-alikes even when
    readline is not in use.  It tries harder to expand ~, for example
    should environment variable HOME be unset.
  * For HTML help (both dynamic and static), Rd file links to help
    pages in external packages are now treated as references to
    topics rather than file names, and fall back to a file link only
    if the topic is not found in the target package. The earlier rule
    which prioritized file names over topics can be restored by
    setting the environment variable _R_HELP_LINKS_TO_TOPICS_ to a
    false value.
  * c() now removes NULL arguments before dispatching to methods,
    thus simplifying the implementation of c() methods, _but_ for
    back compatibility keeps NULL when it is the first argument.
    (From a report and patch proposal by Lionel Henry in PR#17900.)
  * Vectorize()'s result function's environment no longer keeps
    unneeded objects.
  * Function ...elt() now propagates visibility consistently with
    ..n.  (Thanks to Lionel Henry's PR#17905.)
  * capture.output() no longer uses non-standard evaluation to
    evaluate its arguments.  This makes evaluation of functions like
    parent.frame() more consistent.  (Thanks to Lionel Henry's
    PR#17907.)
  * packBits(bits, type="double") now works as inverse of
    numToBits().  (Thanks to Bill Dunlap's proposal in PR#17914.)
  * curlGetHeaders() has two new arguments, timeout to specify the
    timeout for that call (overriding getOption("timeout")) and TLS
    to specify the minimum TLS protocol version to be used for
    https:// URIs (_inter alia_ providing a means to check for sites
    using deprecated TLS versions 1.0 and 1.1).
  * For nls(), an optional constant scaleOffset may be added to the
    denominator of the relative offset convergence test for cases
    where the fit of a model is expected to be exact, thanks to a
    proposal by John Nash.  nls(*, trace=TRUE) now also shows the
    convergence criterion.
  * Numeric differentiation _via_ numericDeriv() gets new optional
    arguments eps and central, the latter for taking central divided
    differences.  The latter can be activated for nls() via
    nls.control(nDcentral = TRUE).
  * nls() now passes the trace and control arguments to getInitial(),
    notably for all self-starting models, so these can also be fit in
    zero-noise situations via a scaleOffset.  For this reason, the
    initial function of a selfStart model must now have ... in its
    argument list.
  * bquote(splice = TRUE) can now splice expression vectors with
    attributes: this makes it possible to splice the result of
    parse(keep.source = TRUE).  (Report and patch provided by Lionel
    Henry in PR#17869.)
  * textConnection() gets an optional name argument.
  * get(), exists(), and get0() now signal an error if the first
    argument has length greater than 1.  Previously additional
    elements were silently ignored.  (Suggested by Antoine Fabri on
    R-devel.)
  * R now provides a shorthand notation for creating functions, e.g.
    \(x) x + 1 is parsed as function(x) x + 1.
  * R now provides a simple native forward pipe syntax |&gt;.  The
    simple form of the forward pipe inserts the left-hand side as the
    first argument in the right-hand side call.  The pipe
    implementation as a syntax transformation was motivated by
    suggestions from Jim Hester and Lionel Henry.
  * all.equal(f, g) for functions now by default also compares their
    environment(.)s, notably via new all.equal method for class
    function.  Comparison of nls() fits, e.g., may now need
    all.equal(m1, m2, check.environment = FALSE).
  * .libPaths() gets a new option include.site, allowing to _not_
    include the site library.  (Thanks to Dario Strbenac's suggestion
    and Gabe Becker's PR#18016.)
  * Lithuanian translations are now available.  (Thanks to Rimantas
    Zakauskas.)
  * names() now works for DOTSXP objects.  On the other hand, in
    R-lang, the R language manual, we now warn against relying on the
    structure or even existence of such dot-dot-dot objects.
  * all.equal() no longer gives an error on DOTSXP objects.
  * capabilities("cairo") now applies only to the file-based devices
    as it is now possible (if very unusual) to build R with Cairo
    support for those but not for X11().
  * There is optional support for tracing the progress of
    loadNamespace() - see its help.
  * (Not Windows.)  l10n_info() reports an additional element, the
    name of the encoding as reported by the OS (which may differ from
    the encoding part (if any) of the result from
    Sys.getlocale("LC_CTYPE").
  * New function gregexec() which generalizes regexec() to find _all_
    disjoint matches and well as all substrings corresponding to
    parenthesized subexpressions of the given regular expression.
    (Contributed by Brodie Gaslam.)
  * New function charClass() in package utils to query the
    wide-character classification functions in use (such as
    iswprint).
  * The names of quantile()'s result no longer depend on the global
    getOption("digits"), but quantile() gets a new optional argument
    digits = 7 instead.
  * grep(), sub(), regexp and variants work considerably faster for
    long factors with few levels.  (Thanks to Michael Chirico's
    PR#18063.)
  * Provide grouping of x11() graphics windows within a window
    manager such as Gnome or Unity; thanks to a patch by Ivan Krylov
    posted to R-devel.
  * The split() method for class data.frame now allows the f argument
    to be specified as a formula.
  * sprintf now warns on arguments unused by the format string.
  * New palettes "Rocket" and "Mako" for hcl.colors() (approximating
    palettes of the same name from the 'viridisLite' package).
    Contributed by Achim Zeileis.
  * The base environment and its namespace are now locked (so one can
    no longer add bindings to these or remove from these).
  * Rterm handling of multi-byte characters has been improved,
    allowing use of such characters when supported by the current
    locale.
  * Rterm now accepts ALT+ +xxxxxxxx sequences to enter Unicode
    characters as hex digits.
  * Environment variable LC_ALL on Windows now takes precedence over
    LC_CTYPE and variables for other supported categories, matching
    the POSIX behaviour.
  * duplicated() and anyDuplicated() are now optimized for integer
    and real vectors that are known to be sorted via the ALTREP
    framework. Contributed by Gabriel Becker via PR#17993.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 14
    and so packages that provide graphics devices should be
    reinstalled.
  * Graphics devices should now specify deviceVersion to indicate
    what version of the graphics engine they support.
  * Graphics devices can now specify deviceClip.  If TRUE, the
    graphics engine will never perform any clipping of output itself.
    The clipping that the graphics engine does perform (for both
    canClip = TRUE and canClip = FALSE) has been improved to avoid
    producing unnecessary artifacts in clipped output.
  * The grid package now allows gpar(fill) to be a linearGradient(),
    a radialGradient(), or a pattern().  The viewport(clip) can now
    also be a grob, which defines a clipping path, and there is a new
    viewport(mask) that can also be a grob, which defines a mask.
    These new features are only supported so far on the Cairo-based
    graphics devices and on the pdf() device.
  * (Not Windows.)  A warning is given when a Cairo-based type is
    specified for a png(), jpeg(), tiff() or bmp() device but Cairo
    is unsupported (so type = "Xlib" is tried instead).
  * grSoftVersion() now reports the versions of FreeType and
    FontConfig if they are used directly (not _via_ Pango), as is
    most commonly done on macOS.
  C-LEVEL FACILITIES:
  * The _standalone_ libRmath math library and R's C API now provide
    log1pexp() again as documented, and gain log1mexp().
  INSTALLATION on a UNIX-ALIKE:
  * configure checks for a program pkgconf if program pkg-config is
    not found.  These are now only looked for on the path (like
    almost all other programs) so if needed specify a full path to
    the command in PKG_CONFIG, for example in file config.site.
  * C99 function iswblank is required - it was last seen missing ca
    2003 so the workaround has been removed.
  * There are new configure options --with-internal-iswxxxxx,
  - -with-internal-towlower and --with-internal-wcwidth which allows
    the system functions for wide-character classification,
    case-switching and width (wcwidth and wcswidth) to be replaced by
    internal ones.  The first has long been used on macOS, AIX (and
    Windows) but this enables it to be unselected there and selected
    for other platforms (it is the new default on Solaris).  The
    second is new in this version of R and is selected by default on
    macOS and Solaris.  The third has long been the default and
    remains so as it contains customizations for East Asian
    languages.
    System versions of these functions are often minimally
    implemented (sometimes only for ASCII characters) and may not
    cover the full range of Unicode points: for example Solaris (and
    Windows) only cover the Basic Multilingual Plane.
  * Cairo installations without X11 are more likely to be detected by
    configure, when the file-based Cairo graphics devices will be
    available but not X11(type = "cairo").
  * There is a new configure option --with-static-cairo which is the
    default on macOS.  This should be used when only static cairo
    (and where relevant, Pango) libraries are available.
  * Cairo-based graphics devices on platforms without Pango but with
    FreeType/FontConfig will make use of the latter for font
    selection.
  LINK-TIME OPTIMIZATION on a UNIX-ALIKE:
  * Configuring with flag --enable-lto=R now also uses LTO when
    installing the recommended packages.
  * R CMD INSTALL and R CMD SHLIB have a new flag --use-LTO to use
    LTO when compiling code, for use with R configured with
  - -enable-lto=R.  For R configured with --enable-lto, they have
    the new flag --no-use-LTO.
    Packages can opt in or out of LTO compilation _via_ a UseLTO
    field in the DESCRIPTION file.  (As usual this can be overridden
    by the command-line flags.)
  BUILDING R on Windows:
  * for GCC &gt;= 8, FC_LEN_T is defined in config.h and hence character
    lengths are passed from C to Fortran in _inter alia_ BLAS and
    LAPACK calls.
  * There is a new text file src/gnuwin32/README.compilation, which
    outlines how C/Fortran code compilation is organized and
    documents new features:
  * R can be built with Link-Time Optimization with a suitable
    compiler - doing so with GCC 9.2 showed several
    inconsistencies which have been corrected.
  * There is support for cross-compiling the C and Fortran code
    in R and standard packages on suitable (Linux) platforms.
    This is mainly intended to allow developers to test later
    versions of compilers - for example using GCC 9.2 or 10.x has
    detected issues that GCC 8.3 in Rtools40 does not.
  * There is experimental support for cross-building R packages
    with C, C++ and/or Fortran code.
  * The R installer can now be optionally built to support a single
    architecture (only 64-bit or only 32-bit).
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++14 where
    available (which it is on all currently checked platforms): if
    not (as before) C++11 is used if available otherwise C++ is not
    supported.
    Packages which specify C++11 will still be installed using C++11.
    C++14 compilers may give deprecation warnings, most often for
    std::random_shuffle (deprecated in C++14 and removed in C++17).
    Either specify C++11 (see 'Writing R Extensions') or modernize
    the code and if needed specify C++14.  The latter has been
    supported since R 3.4.0 so the package's DESCRIPTION would need
    to include something like
    Depends: R (&gt;= 3.4)
  PACKAGE INSTALLATION on Windows:
  * R CMD INSTALL and R CMD SHLIB make use of their flag --use-LTO
    when the LTO_OPT make macro is set in file etc/${R_ARCH}/Makeconf
    or in a personal/site Makevars file.  (For details see 'Writing R
    Extensions' SS4.5.)
    This provides a valuable check on code consistency.  It does work
    with GCC 8.3 as in Rtools40, but that does not detect everything
    the CRAN checks with current GCC do.
  PACKAGE INSTALLATION on macOS:
  * The default personal library directory on builds with
  - -enable-aqua (including CRAN builds) now differs by CPU type,
    one of
    ~/Library/R/x86_64/x.y/library
    ~/Library/R/arm64/x.y/library
    This uses the CPU type R (and hence the packages) were built for,
    so when a x86_64 build of R is run under Rosetta emulation on an
    arm64 Mac, the first is used.
  UTILITIES:
  * R CMD check can now scan package functions for bogus return
    statements, which were possibly intended as return() calls (wish
    of PR#17180, patch by Sebastian Meyer). This check can be
    activated via the new environment variable
    _R_CHECK_BOGUS_RETURN_, true for --as-cran.
  * R CMD build omits tarballs and binaries of previous builds from
    the top-level package directory.  (PR#17828, patch by Sebastian
    Meyer.)
  * R CMD check now runs sanity checks on the use of LazyData, for
    example that a data directory is present and that
    LazyDataCompression is not specified without LazyData and has a
    documented value.  For packages with large LazyData databases
    without specifying LazyDataCompression, there is a reference to
    the code given in 'Writing R Extensions' SS1.1.6 to test the
    choice of compression (as in all the CRAN packages tested a
    non-default method was preferred).
  * R CMD build removes LazyData and LazyDataCompression fields from
    the DESCRIPTION file of packages without a data directory.
  ENCODING-RELATED CHANGES:
  * The parser now treats \Unnnnnnnn escapes larger than the upper
    limit for Unicode points (\U10FFFF) as an error as they cannot be
    represented by valid UTF-8.
    Where such escapes are used for outputting non-printable
    (including unassigned) characters, 6 hex digits are used (rather
    than 8 with leading zeros).  For clarity, braces are used, for
    example \U{0effff}.
  * The parser now looks for non-ASCII spaces on Solaris (as
    previously on most other OSes).
  * There are warnings (including from the parser) on the use of
    unpaired surrogate Unicode points such as \uD834.  (These cannot
    be converted to valid UTF-8.)
  * Functions nchar(), tolower(), toupper() and chartr() and those
    using regular expressions have more support for inputs with a
    marked Latin-1 encoding.
  * The character-classification functions used (by default) to
    replace the system iswxxxxx functions on Windows, macOS and AIX
    have been updated to Unicode 13.0.0.
    The character-width tables have been updated to include new
    assignments in Unicode 13.0.0.
  * The code for evaluating default (extended) regular expressions
    now uses the same character-classification functions as the rest
    of R (previously they differed on Windows, macOS and AIX).
  * There is a build-time option to replace the system's
    wide-character wctrans C function by tables shipped with R: use
    configure option --with-internal-towlower or (on Windows)
  - DUSE_RI18N_CASE in CFLAGS when building R.  This may be needed
    to allow tolower() and toupper() to work with Unicode characters
    beyond the Basic Multilingual Plane where not supported by system
    functions (e.g. on Solaris where it is the new default).
  * R is more careful when truncating UTF-8 and other multi-byte
    strings that are too long to be printed, passed to the system or
    libraries or placed into an internal buffer.  Truncation will no
    longer produce incomplete multibyte characters.
  DEPRECATED AND DEFUNCT:
  * Function plclust() from the package stats and
    package.dependencies(), pkgDepends(), getDepList(),
    installFoundDepends(), and vignetteDepends() from package tools
    are defunct.
  * Defunct functions checkNEWS() and readNEWS() from package tools
    and CRAN.packages() from utils have been removed.
  * R CMD config CXXCPP is defunct (it was deprecated in R 3.6.2).
  * parallel::detectCores() drops support for Irix (retired in 2013).
  * The LINPACK argument to chol.default(), chol2inv(),
    solve.default() and svd() has been defunct since R 3.1.0.  It was
    silently ignored up to R 4.0.3 but now gives an error.
  * Subsetting/indexing, such as ddd[*] or ddd$x on a DOTSXP
    (dot-dot-dot) object ddd has been disabled; it worked by accident
    only and was undocumented.
  BUG FIXES:
  * Many more C-level allocations (mainly by malloc and strdup) are
    checked for success with suitable alternative actions.
  * Bug fix for replayPlot(); this was turning off graphics engine
    display list recording if a recorded plot was replayed in the
    same session.  The impact of the bug became visible if resize the
    device after replay OR if attempted another savePlot() after
    replay (empty display list means empty screen on resize or empty
    saved plot).
  * R CMD check etc now warn when a package exports non-existing S4
    classes or methods, also in case of no "methods" presence.
    (Reported by Alex Bertram; reproducible example and patch by
    Sebastian Meyer in PR#16662.)
  * boxplot() now also accepts calls for labels such as ylab, the
    same as plot().  (Reported by Marius Hofert.)
  * The help page for xtabs() now correctly states that addNA is
    setting na.action = na.pass among others.  (Reported as PR#17770
    by Thomas Soeiro.)
  * The R CMD check &lt;pkg&gt; gives a longer and more comprehensible
    message when DESCRIPTION misses dependencies, e.g., in Imports:.
    (Thanks to the contributors of PR#17179.)
  * update.default() now calls the generic update() on the formula to
    work correctly for models with extended formulas.  (As reported
    and suggested by Neal Fultz in PR#17865.)
  * The horizontal position of leaves in a dendrogram is now correct
    also with center = FALSE.  (PR#14938, patch from Sebastian
    Meyer.)
  * all.equal.POSIXt() no longer warns about and subsequently ignores
    inconsistent "tzone" attributes, but describes the difference in
    its return value (PR#17277).  This check can be disabled _via_
    the new argument check.tzone = FALSE as suggested by Sebastian
    Meyer.
  * as.POSIXct() now populates the "tzone" attribute from its tz
    argument when x is a logical vector consisting entirely of NA
    values.
  * x[[2^31]] &lt;- v now works.  (Thanks to the report and patch by
    Suharto Anggono in PR#17330.)
  * In log-scale graphics, axis() ticks and label positions are now
    computed more carefully and symmetrically in their range,
    typically providing _more_ ticks, fulfilling wishes in PR#17936.
    The change really corresponds to an improved axisTicks() (package
    grDevices), potentially influencing grid and lattice, for
    example.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now correct to at
    least five digits where it was catastrophically wrong,
    previously.
  * sum(df) and similar "Summary"- and "Math"-group member functions
    now work for data frames df with logical columns, notably also of
    zero rows.  (Reported to R-devel by Martin "b706".)
  * unsplit() had trouble with tibbles due to unsound use of rep(NA,
    len)-indexing, which should use NA_integer_ (Reported to R-devel
    by Mario Annau.)
  * pnorm(x, log.p = TRUE) underflows to -Inf slightly later.
  * show(&lt;hidden S4 generic&gt;) prints better and without quotes for
    non-hidden S4 generics.
  * read.table() and relatives treated an "NA" column name as missing
    when check.names = FALSE PR#18007.
  * Parsing strings containing UTF-16 surrogate pairs such as
    "\uD834\uDD1E" works better on some (uncommon) platforms.
    sprintf("%X", utf8ToInt("\uD834\uDD1E")) should now give "1D11E"
    on all platforms.
  * identical(x,y) is no longer true for differing DOTSXP objects,
    fixing PR#18032.
  * str() now works correctly for DOTSXP and related exotics, even
    when these are doomed.
    Additionally, it no longer fails for lists with a class and
    "irregular" method definitions such that e.g. lapply(*) will
    necessarily fail, as currently for different igraph objects.
  * Too long lines in environment files (e.g. Renviron) no longer
    crash R. This limit has been increased to 100,000 bytes.
    (PR#18001.)
  * There is a further workaround for FreeType giving incorrect
    italic font faces with cairo-based graphics devices on macOS.
  * add_datalist(*, force = TRUE) (from package tools) now actually
    updates an existing data/datalist file for new content.  (Thanks
    to a report and patch by Sebastian Meyer in PR#18048.)
  * cut.Date() and cut.POSIXt() could produce an empty last interval
    for breaks = "months" or breaks = "years".  (Reported as PR#18053
    by Christopher Carbone.)
  * Detection of the encoding of 'regular' macOS locales such as
    en_US (which is UTF-8) had been broken by a macOS change:
    fortunately these are now rarely used with en_US.UTF-8 being
    preferred.
  * sub() and gsub(pattern, repl, x, *) now keep attributes of x such
    as names() also when pattern is NA (PR#18079).
  * Time differences ("difftime" objects) get a replacement and a
    rep() method to keep "units" consistent.  (Thanks to a report and
    patch by Nicolas Bennett in PR#18066.)
  * The \RdOpts macro, setting defaults for \Sexpr options in an Rd
    file, had been ineffective since R 2.12.0: it now works again.
    (Thanks to a report and patch by Sebastian Meyer in PR#18073.)
  * mclapply and pvec no longer accidentally terminate parallel
    processes started before by mcparallel or related calls in
    package parallel (PR#18078).
  * grep and other functions for evaluating (extended) regular
    expressions handle in Unicode also strings not explicitly flagged
    UTF-8, but flagged native when running in UTF-8 locale.
  * Fixed a crash in fifo implementation on Windows (PR#18031).
  * Binary mode in fifo on Windows is now properly detected from
    argument open (PR#15600, PR#18031).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1622808000">- The line %{__install} -m 755 -d %{_infodir}
  no longer works in TW or Factory.
  But without that line it works everywhere. So this instruction
  was commented out of the spec file.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1628596800">- CHANGES IN R 4.1.1:
  NEW FEATURES:
  * require(pkg, quietly = TRUE) is quieter and in particular does
    not warn if the package is not found.
  DEPRECATED AND DEFUNCT:
  * Use of ftp:// URIs should be regarded as deprecated, with
    on-going support confined to method = "libcurl" and not routinely
    tested.  (Nowadays no major browser supports them.)
  * The non-default method = "internal" is deprecated for http:// and
    ftp:// URIs for both download.file and url.
  * On Windows, method = "wininet" is deprecated for http://,
    https:// and ftp:// URIs for both download.file and url.  (A
    warning is only given for ftp://.)
    For ftp:// URIs the default method is now "libcurl" if available
    (which it is on CRAN builds).
    method = "wininet" remains the default for http:// and https://
    URIs but if libcurl is available, using method = "libcurl" is
    preferred.
  INSTALLATION:
  * make check now works also without a LaTeX installation.  (Thanks
    to Sebastian Meyer's PR#18103.)
  BUG FIXES:
  * make check-devel works again in an R build configured with
  - -without-recommended-packages.
  * qnbinom(p, size, mu) for large size/mu is correct now in a range
    of cases (PR#18095); similarly for the (size, prob)
    parametrization of the negative binomial.  Also qpois() and
    qbinom() are better and or faster for extreme cases.  The
    underlying C code has been modularized and is common to all four
    cases of discrete distributions.
  * gap.axis is now part of the axis() arguments which are passed
    from bxp(), and hence boxplot().  (Thanks to Martin Smith's
    report and suggestions in PR#18109.)
  * .First and .Last can again be set from the site profile.
  * seq.int(from, to, *) and seq.default(..) now work better in large
    range cases where from-to is infinite where the two boundaries
    are finite.
  * all.equal(x,y) now returns TRUE correctly also when several
    entries of abs(x) and abs(y) are close to .Machine$double.xmax,
    the largest finite numeric.
  * model.frame() now clears the object bit when removing the class
    attribute of a value via na.action (PR#18100).
  * charClass() now works with multi-character strings on Windows
    (PR#18104, fixed by Bill Dunlap).
  * encodeString() on Solaris now works again in Latin-1 encoding on
    characters represented differently in UTF-8.  Support for
    surrogate pairs on Solaris has been improved.
  * file.show() on Windows now works with non-ASCII path names
    representable in the current native encoding (PR#18132).
  * Embedded R on Windows can now find R home directory via the
    registry even when installed only for the current user
    (PR#18135).
  * pretty(x) with finite x now returns finite values also in the
    case where the extreme x values are close in size to the maximal
    representable number .Machine$double.xmax.
    Also, it's been tweaked for very small ranges and when a boundary
    is close (or equal) to zero; e.g., pretty(c(0,1e-317)) no longer
    has negative numbers, currently still warning about a very small
    range, and pretty(2^-(1024 - 2^-1/(c(24,10)))) is more accurate.
  * The error message for not finding vignette files when weaving has
    correct file sizes now. (Thanks to Sebastian Meyer's PR#18154.)
  * dnbinom(20, &lt;large&gt;, 1) now correctly gives 0, and similar cases
    are more accurate with underflow precaution.  (Reported by Francisco Vera Alcivar in PR#18072.)</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635163200">- repaired https://bugzilla.suse.com/show_bug.cgi?id=1191380
  (rpmacros now go to rpmmacrodir)
- minor clean-ups in spec file</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635768000">- CHANGES IN R 4.1.2:
  C-LEVEL FACILITIES:
  * The workaround in headers R.h and Rmath.h (using namespace std;)
    for the Oracle Developer Studio compiler is no longer needed now
    C++11 is required so has been removed.  A couple more usages of
    log() (which should have been std::log()) with an int argument
    are reported on Solaris.
  * The undocumented limit of 4095 bytes on messages from the
    S-compatibility macros PROBLEM and MESSAGE is now documented and
    longer messages will be silently truncated rather than
    potentially causing segfaults.
  * If the R_NO_SEGV_HANDLER environment variable is non-empty, the
    signal handler for SEGV/ILL/BUS signals (which offers recovery
    user interface) is not set. This allows more reliable debugging
    of crashes that involve the console.
  DEPRECATED AND DEFUNCT:
  * The legacy S-compatibility macros PROBLEM, MESSAGE, ERROR, WARN,
    WARNING, RECOVER, ... are deprecated and will be hidden in R
    4.2.0. R's native interface of Rf_error and Rf_warning has long
    been preferred.
  BUG FIXES:
  * .mapply(F, dots, .) no longer segfaults when dots is not a list
    and uses match.fun(F) as always documented; reported by Andrew
    Simmons in PR#18164.
  * hist(&lt;Date&gt;, ...) and hist(&lt;POSIXt&gt;, ...)  no longer pass
    arguments for rect() (such as col and density) to axis().
    (Thanks to Sebastian Meyer's PR#18171.)
  * \Sexpr{ch} now preserves Encoding(ch). (Thanks to report and
    patch by Jeroen Ooms in PR#18152.)
  * Setting the RNG to "Marsaglia-Multicarry" e.g., by RNGkind(), now
    warns in more places, thanks to Andr'e Gillibert's report and
    patch in PR#18168.
  * gray(numeric(), alpha=1/2) no longer segfaults, fixing PR#18183,
    reported by Till Krenz.
  * Fixed dnbinom(x, size=&lt;very_small&gt;, .., log=TRUE) regression,
    reported by Martin Morgan.
  * as.Date.POSIXlt(x) now keeps names(x), thanks to Davis Vaughan's
    report and patch in PR#18188.
  * model.response() now strips an "AsIs" class typically, thanks to
    Duncan Murdoch's report and other discussants in PR#18190.
  * try() is considerably faster in case of an error and long call,
    as e.g., from some do.call().  Thanks to Alexander Kaever's
    suggestion posted to R-devel.
  * qqline(y = &lt;object&gt;) such as y=I(.), now works, see also
    PR#18190.
  * Non-integer mgp par() settings are now handled correctly in
    axis() and mtext(), thanks to Mikael Jagan and Duncan Murdoch's
    report and suggestion in PR#18194.
  * formatC(x) returns length zero character() now, rather than ""
    when x is of length zero, as documented, thanks to Davis
    Vaughan's post to R-devel.
  * removeSource(fn) now retains (other) attributes(fn).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1647000000">- CHANGES IN R 4.1.3:
  NEW FEATURES:
  * The default version of Bioconductor has been changed to 3.14.
    (This is used by setRepositories and the menus in GUIs.)
  UTILITIES:
  * R CMD check --as-cran has a workaround for a bug in versions of
    file up to at least 5.41 which mis-identify DBF files last
    changed in 2022 as executables.
  C-LEVEL FACILITIES:
  * The legacy S-compatibility macros SINGLE_* in R_ext/Constants.h
    (included by R.h) are deprecated and will be removed in R 4.2.0.
  BUG FIXES:
  * Initialization of self-starting nls() models with initialization
    functions following the pre-R-4.1.0 API (without the ...
    argument) works again for now, with a deprecation warning.
  * Fixed quoting of ~autodetect~ in Java setting defaults to avoid
    inadvertent user lookup due to leading ~, reported in PR#18231 by
    Harold Gutch.
  * substr(., start, stop) &lt;- v now treats _negative_ stop values
    correctly.  Reported with a patch in PR#18228 by Brodie Gaslam.
  * Subscripting an array x without dimnames by a
    length(dim(x))-column character matrix gave "random" non-sense,
    now an error; reported in PR#18244 by Mikael Jagan.
  * ...names() now matches names(list(...)) closely, fixing PR#18247.
  * all.equal(*, scale = s) now works as intended when length(s) &gt; 1,
    partly thanks to Michael Chirico's PR#18272.
  * print(x) for long vectors x now also works for named atomic
    vectors or lists and prints the correct number when reaching the
    getOption("max.print") limit; partly thanks to a report and
    proposal by Hugh Parsonage to the R-devel list.
  * all.equal(&lt;selfStart&gt;, *) no longer signals a deprecation
    warning.
  * reformulate(*, response=r) gives a helpful error message now when
    length(r) &gt; 1, thanks to Bill Dunlap's PR#18281.
  * Modifying globalCallingHandlers inside withCallingHandlers() now
    works or fails correctly, thanks to Henrik Bengtsson's PR#18257.
  * hist(&lt;Date&gt;, breaks = "days") and hist(&lt;POSIXt&gt;, breaks = "secs")
    no longer fail for inputs of length 1.
  * qbeta(.001, .9, .009) and similar cases now converge correctly
    thanks to Ben Bolker's report in PR#17746.
  * window(x, start, end) no longer wrongly signals "'start' cannot
    be after 'end'", fixing PR#17527 and PR#18291.
  * data() now checks that its (rarely used) list argument is a
    character vector - a couple of packages passed other types and
    gave incorrect results.
  * which() now checks its arr.ind argument is TRUE rather coercing
    to logical and taking the first element - which gave incorrect
    results in package code.
  * model.weights() and model.offset() more carefully extract their
    model components, thanks to Ben Bolker and Tim Taylor's R-devel
    post.
  * list.files(recursive = TRUE) now shows all broken symlinks
    (previously, some of them may have been omitted, PR#18296).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1650628800">- CHANGES IN R 4.2.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * The formula method of aggregate() now matches the generic in
    naming its first argument x (resolving PR#18299 by Thomas
    Soeiro).
    This means that calling aggregate() with a formula as a named
    first argument requires name formula in earlier versions of R and
    name x now, so portable code should not name the argument (code
    in many packages did).
  * Calling &amp;&amp; or || with either argument of length greater than one
    now gives a warning (which it is intended will become an error).
  * Calling if() or while() with a condition of length greater than
    one gives an error rather than a warning.  Consequently,
    environment variable _R_CHECK_LENGTH_1_CONDITION_ no longer has
    any effect.
  * Windows users should consult the WINDOWS section below for some
    profound changes including
  * Support for 32-bit builds has been dropped.
  * UTF-8 locales are used where available.
  * The default locations for the R installation and personal
    library folder have been changed.
    Thanks to Tomas Kalibera for months of work on the Windows port
    for this release.
  NEW FEATURES:
  * matrix(x, n, m) now warns in more cases where length(x) differs
    from n * m, as suggested by Abby Spurdle and Wolfgang Huber in
    Feb 2021 on the R-devel mailing list.
    This warning can be turned into an error by setting environment
    variable _R_CHECK_MATRIX_DATA_ to TRUE: R CMD check --as-cran
    does so unless it is already set.
  * Function file_test() in package utils gains tests for symlinks,
    readability and writability.
  * capabilities("libxml") is now false.
    The description of capabilities("http/ftp") now reflects that it
    refers to the default method, no longer the internal one.
  * simplify2array() gains an except argument for controlling the
    exceptions used by sapply().
  * Environment variables R_LIBS_USER and R_LIBS_SITE are both now
    set to the R system default if unset or empty, and can be set to
    NULL to indicate an empty list of user or site library
    directories.
  * The warning for axis()(-like) calls in cases of relatively small
    ranges (typically in log-scale situations) is slightly improved
    _and_ suppressed from explicit calls to .axisPars() as has always
    been the intention.
  * The contrasts setter function `contrasts&lt;-` gains an explicit
    default how.many = NULL rather than just using missing(how.many).
  * grid.pretty() gains a new optional argument n = 5.
  * There is a new function .pretty() with option bounds as a
    technical-utility version of pretty().  It and pretty() gain a
    new argument f.min with a better than back-compatible default.
  * Function grDevices::axisTicks() and related functions such as
    graphics::axis() work better, notably for the log scale; partly
    because of the pretty() improvements, but also because care is
    taken e.g., when ylim is finite but diff(ylim) is infinite.
  * nclass.FD() gains a digits option.
  * The R Mathlib internal C function bd0() (called indirectly from a
    dozen probability density and distribution functions such as
    dpois(), dbinom(), dgamma(), pgamma() _etc_) has been
    complemented by a more sophisticated and (mostly) more accurate C
    function ebd0(), currently called only by internal dpois_raw()
    improving accuracy for R level dpois() and potentially others
    calling it such as dnbinom(), dgamma() or pgamma().  (Thanks to
    Morten Welinder's PR#15628.)
  * write.ftable() gains sep = " " argument as suggested by Thomas
    Soeiro.
  * The names of the locale categories supported by R's
    Sys.getlocale() and Sys.setlocale() are now provided by variable
    .LC.categories in the base namespace.
  * The Date and POSIXt methods for hist() and the histogram method
    for plot() now also use the new default col = "lightgray" in
    consistency with the corresponding change to hist()'s default for
    R 4.0.0.
  * hist.default() gains new fuzz argument, and the histogram plot
    method no longer uses fractional axis ticks when displaying
    counts ("Frequency").
  * mapply() and hence Map() now also obey the "max-or-0-if-any"
    recycling rule, such that, e.g., Map(`+`, 1:3, 1[0]) is valid
    now.
  * as.character(&lt;obj&gt;) for "hexmode" or "octmode" objects now
    fulfils the important basic rule as.character(x)[j] ===
    as.character(x[j]).
  * The set utility functions, notably intersect() have been tweaked
    to be more consistent and symmetric in their two set arguments,
    also preserving a common mode.
  * substr(ch, start,end) &lt;- new now e.g., preserves names(ch); ditto
    for substring(), thanks to a patch from Brodie Gaslam.
  * plot(&lt;lm&gt;) gains a extend.ylim.f argument, in partial response to
    PR#15285; further PR#17784 is fixed thanks to several
    contributors and a patch by Elin Waring.  The Cook's dist
    contours get customizable via cook.col and cook.lty with a
    different default color and their legend is nicer by default and
    customizable via cook.legendChanges.
  * Attempting to subset an object that is not subsettable now
    signals an error of class notSubsettableError. The
    non-subsettable object is contained in the object field of the
    error condition.
  * Subscript-out-of-bounds errors are now signaled as errors of
    class subscriptOutOfBoundsError.
  * Stack-overflow errors are now signaled as errors inheriting from
    class stackOverflowError. See ?stackOverflowError for more
    details.
  * New partly experimental Sys.setLanguage() utility, solving the
    main problem of PR#18055.
  * gettext() and gettextf() get a new option trim = TRUE which when
    set to false allows translations for strings such as "Execution
    halted\n" typical for C code.
  * An experimental implementation of hash tables is now available.
    See ?hashtab for more details.
  * identical() gains a extptr.as.ref argument for requesting that
    external pointer objects be compared as reference objects.
  * reorder() gets an argument decreasing which it passes to sort()
    for level creation; based on the wish and patch by Thomas Soeiro
    in PR#18243.
  * as.vector() gains a data.frame method which returns a simple
    named list, also clearing a long standing 'FIXME' to enable
    as.vector(&lt;data.frame&gt;, mode="list").  This breaks code relying
    on as.vector(&lt;data.frame&gt;) to return the unchanged data frame.
  * legend() is now vectorized for arguments cex, x.intersp, and
    text.width.  The latter can now also be specified as a vector
    (one element for each column of the legend) or as NA for
    computing a proper column wise maximum value of strwidth(legend).
    The argument y.intersp can be specified as a vector with one
    entry for each row of the legend.
    legend() also gains new arguments title.cex and title.font.
    Thanks to Swetlana Herbrandt.
  * Deparsing no longer remaps attribute names dim, dimnames, levels,
    names and tsp to historical S-compatible names (which structure()
    maps back).
  * sample() and sample.int() have additional sanity checks on their
    size and n arguments.
    all.equal.numeric() gains a sanity check on its tolerance
    argument - calling all.equal(a, b, c) for three numeric vectors
    is a surprisingly common error.
    mean(na.rm =), rank(na.last =), barplot(legend.text =),
    boxplot(), contour(drawlabels =), polygon(border =) and
    methods::is(class2 =) have more robust sanity checks on their
    arguments.
    R CMD Rd2pdf (used by R CMD check) has a more robust sanity check
    on the format of \alias{} commands.
  * psigamma(x, deriv) for negative x now also works for deriv = 4
    and 5; their underlying C level dpsifn() is documented in
    'Writing R Extensions'.
  * The HTML help system now uses HTML5 (wish of PR#18149).
  * ks.test() now provides exact p-values also with ties and MC
    p-values in the two-sample (Smirnov) case.  By Torsten Hothorn.
  * ks.test() gains a formula interface, with y ~ 1 for the
    one-sample (Kolmogorov) test and y ~ group for the two-sample
    (Smirnov) test.  Contributed by Torsten Hothorn.
  * The return value from ks.test() now has class c("ks.test",
    "htest") - packages using try() need to take care to use
    inherits() and not == on the class.
  * New functions psmirnov(), qsmirnov() and rsmirnov() in package
    stats implementing the asymptotic and exact distributions of the
    two-sample Smirnov statistic.
  * iconv() now allows sub = "c99" to use C99-style escapes for UTF-8
    inputs which cannot be converted to encoding to.
  * In a forward pipe |&gt; expression it is now possible to use a named
    argument with the placeholder _ in the rhs call to specify where
    the lhs is to be inserted.  The placeholder can only appear once
    on the rhs.
  * The included LAPACK sources have been updated to version 3.10.0,
    except for the four Fortran 77 routines which 3.10.0 has
    re-implemented in Fortran 90 (where the older versions have been
    retained as the R build process does not support Fortran 90).
  * path.expand() and most other uses of tilde expansion now warn if
    a path would be too long if expanded.  (An exception is
    file.exists(), which silently returns false.)
  * trunc(&lt;Date&gt;, *) now supports units = "months" or "years" for
    consistency with the POSIXt method, thanks to Dirk Eddelbuettel's
    proposal in PR#18099.
  * list2DF() now checks that its arguments are of the same length,
    rather than use recycling.
  * The HTML help system has several new features: LaTeX-like math
    can be typeset using either KaTeX or MathJax, usage and example
    code is highlighted using Prism, and for dynamic help the output
    of examples and demos can be shown within the browser if the
    knitr package is installed. These features can be disabled by
    setting the environment variable _R_HELP_ENABLE_ENHANCED_HTML_ to
    a false value.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 15
    and so packages that provide graphics devices should be
    reinstalled.
  * The grid package now allows the user to specify a "vector" of
    pattern fills.  The fill argument to gpar() accepts a list of
    gradients and/or patterns and the functions linearGradient(),
    radialGradient(), and pattern() have a new group argument.
    Points grobs (data symbols) can now also have a pattern fill.
    The grobCoords() function now returns a more informative and
    complex result.
  * The grid package has new functions for drawing isolated groups:
    grid.group(), grid.define(), and grid.use().  These functions add
    compositing operators and affine transformations to R's graphics
    capabilities.
    The grid package also has new functions for stroking and filling
    paths: grid.stroke(), grid.fill(), and grid.fillStroke().
    A new function as.path() allows the user to specify the fill rule
    for a path that is to be used for clipping, stroking, or filling;
    available options are "winding" and "evenodd".  A new function
    as.mask() allows the user to specify the type of a mask;
    available options are "alpha" and "luminance".
    These new features are only supported so far (at most) on the
    Cairo-based graphics devices and on the pdf() device.
  * dev.capabilities() reports on device support for the new
    features.
  * par() now warns about unnamed non-character arguments to prevent
    misuse such as {usr &lt;- par("usr"); par(usr)}.
  INSTALLATION:
  * Facilities for accessing ftp:// sites are no longer tested
    (except _pro tem_ for curlGetHeaders()) as modern browsers have
    removed support.
  * R can now be built with DEFS = -DSTRICT_R_HEADERS .
  PACKAGE INSTALLATION:
  * R CMD INSTALL no longer tangles vignettes. This completes an R
    CMD build change in R 3.0.0 and affects packages built before R
    3.0.2. Such packages should be re-made with R CMD build to have
    the tangled R code of vignettes shipped with the tarball.
  * USE_FC_LEN_T will become the default: this uses the correct
    prototypes for Fortran BLAS/LAPACK routines called from C/C++,
    and requires adjustment of most such calls - see 'Writing R
    Extensions' SS6.6.2.  (This has been supported since R 3.6.2.)
  * Package installation speed for packages installed with
    keep.source has been improved. This resolve the issue reported by
    Ofek Shilon in PR#18236.
  UTILITIES:
  * R CMD check can optionally report files/directories left behind
    in home, /tmp (even though TMPDIR is set) and other directories.
    See the "R Internals" manual for details.
  * R CMD check now reports byte-compilation errors during
    installation.  These are not usually fatal but may result in
    parts of the package not being byte-compiled.
  * _R_CHECK_DEPENDS_ONLY_ can be applied selectively to examples,
    tests and/or vignettes in R CMD check: see the "R Internals"
    manual.
  * _R_CHECK_SRC_MINUS_W_IMPLICIT_ now defaults to true: recent
    versions of Apple clang on macOS have made implicit function
    declarations in C into a compilation error.
  * R CMD check --as-cran makes use of the environment variable
    AUTORECONF.  See the "R Internals" manual SS8 for further details.
  * R CMD check --use-valgrind also uses valgrind when re-building
    vignettes as some non-Sweave vignettes unhelpfully comment out
    all their code when R CMD check runs vignettes.
  * Errors in re-building vignettes (unless there are LaTeX errors)
    are reported by R CMD check as ERROR rather than WARNING when
    running vignettes has been skipped (as it frequently is in CRAN
    checks and by --as-cran).
  * R CMD Rd2pdf gains a --quiet option that is used by R CMD build
    when building the PDF package manual.
  * R CMD Rd2pdf now always runs LaTeX in batch mode, consistent with
    Texinfo &gt;= 6.7. The --batch option is ignored.
  * R CMD build and R CMD check now include the Rd file name and line
    numbers in the error message of an \Sexpr evaluation failure.
  * For packages using the \doi Rd macro (now an install-time \Sexpr)
    but no other dynamic Rd content, R CMD build now produces a
    smaller tarball and is considerably faster - skipping temporary
    package installation.
  C-LEVEL FACILITIES:
  * The non-API header R_ext/R-ftp-http.h is no longer provided, as
    the entry points it covered are now all defunct.
  * A number of non-API declarations and macro definitions have been
    moved from the installed header Rinternals.h to the internal
    header Defn.h. Packages that only use entry points and
    definitions documented to be part of the API as specified in
    'Writing R Extensions' SS6 should not be affected.
  * The macro USE_RINTERNALS no longer has any effect when compiling
    package code.  Packages which also use R_NO_REMAP will need to
    ensure that the remapped names are used for calls to API
    functions that were formerly also made available as macros.
  * The deprecated legacy S-compatibility macros PROBLEM, MESSAGE,
    ERROR, WARN, WARNING, RECOVER, ... are no longer defined in
    R_exts/RS.h (included by R.h).  Replace these by calls to
    Rf_error and Rf_warning (defined in header R_ext/Error.h included
    by R.h).
    Header R_ext/RS.h no longer includes R_ext/Error.h.
  * Header R_ext/Constants.h (included by R.h) when included from C++
    now includes the C++ header cfloat rather than the C header
    float.h (now possible as C++11 is required).
  * The legacy S-compatibility macros DOUBLE_* in R_ext/Constants.h
    (included by R.h) are deprecated.
  * The deprecated S-compatibility macros SINGLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * R_Calloc, R_Free and R_Realloc are preferred to their unprefixed
    forms and error messages now use the prefix. These forms were
    introduced in R 3.4.0 and are available even when
    STRICT_R_HEADERS is defined.
  * rmultinom has been documented in 'Writing R Extensions' SS6 so is
    now part of the R API.
  * Similarly, Rtanpi, called from R level tanpi() is now part of the
    R API.
  * The long-deprecated, undocumented and non-API entry point call_R
    is no longer declared in R_ext/RS.h (included by R.h).
  * The header S.h which has been unsupported since Jan 2016 has been
    removed.  Use R.h instead.
  DEPRECATED AND DEFUNCT:
  * The (non-default and deprecated) method = "internal" for
    download.file() and url() no longer supports http:// nor ftp://
    URIs.  (It is used only for file:// URIs.)
    On Windows, download.file(method = "wininet") no longer supports
    ftp:// URIs.  (It is no longer the default method, which is
    "libcurl" and does.)
    On Windows, the deprecated method = "wininet" now gives a warning
    for http:// and https:// URIs for both download.file() and url().
    (It is no longer the default method.)
  * On Windows, the command-line option --max-mem-size and
    environment variable R_MAX_MEM_SIZE are defunct.  The memory
    allocation limit was important for 32-bit builds, but these are
    no longer supported.
  * default.stringsAsFactors() is now formally deprecated, where that
    was only mentioned on its regular help page, previously.  So it
    now gives a warning if called.
  * unix.time() is defunct now; it had been deprecated since R 3.4.0.
  BUG FIXES:
  * Setting digits = 0 in format(), print.default() (and hence
    typically print()) or options() is again invalid.  Its behaviour
    was platform-dependent, and it is unclear what "zero significant
    digits" should mean (PR#18098).
  * Messages from C code in the cairo section of package grDevices
    are now also offered for translation, thanks to Michael Chirico's
    PR#18123.
  * mean(x) with finite x now is finite also without "long.double"
    capability.
  * R CMD Rd2pdf no longer leaves an empty build directory behind
    when it aborts due to an already existing output file.  (Thanks
    to Sebastian Meyer's PR#18141.)
  * density(x, weights = w, na.rm = TRUE) when anyNA(x) is true, now
    removes weights "in parallel" to x, fixing PR#18151, reported by
    Matthias Gondan.  Additionally, it gets a subdensity option.
  * Conversion of \Sexpr[]{&lt;expR&gt;} to LaTeX or HTML no longer
    produces long blocks of empty lines when &lt;expR&gt; itself contains
    several lines all producing empty output.  Thanks to a report and
    patch by Ivan Krylov posted to R-devel.
  * R CMD build no longer fails if a package vignette uses child
    documents and inst/doc exists.  (Thanks to Sebastian Meyer's
    PR#18156.)
  * When an R documentation ('help' source) file man/foo.Rd in a
    package has \donttest{..} examples with a syntax error, it is now
    signalled as ERROR and with correct line numbers relating to the
  * -Ex.R file, thanks to Duncan Murdoch and Sebastian Meyer's
    reports and patch proposals in PR#17501.
  * Improved determination of the correct translation domain in
    non-base packages, addressing the combination of PR#18092 and
    PR#17998 (#c6) with reports and _augmented_ patch #2904 by
    Suharto Anggono.
    Note that "R-base" is no longer the default domain e.g., for
    top-level calls to gettext(); rather translation needs explicit
    domain = * specification in such cases.
  * identical(attrib.as.set=FALSE) now works correctly with data
    frames with default row names (Thanks to Charlie Gao's PR#18179).
  * txtProgressBar() now enforces a non-zero width for argument char,
    without which no progress can be visible.
  * dimnames(table(d)) is more consistent in the case where d is a
    list with a single component, thanks to Thomas Soeiro's report to
    R-devel.
    Further, table(d1, d2) now gives an error when d1 and d2 are data
    frames as suggested by Thomas in PR#18224.
  * Fix for drawing semi-transparent lines and fills on the native
    Windows graphics device (PR#18219 and PR#16694).  Thanks to Nick
    Ray for helpful diagnosis on Bugzilla.
  * The deparser now wraps sub-expressions such as if(A) ..  with
    parentheses when needed; thanks to Duncan Murdoch's PR#18232 and
    Lionel Henry's patches there.
  * remove.packages() no longer tries to uninstall Priority: base
    packages, thanks to a report and suggestions by Colin Fay in
    PR#18227.
  * win.metafile() now has xpinch and ypinch arguments so that the
    user can override Windows' (potentially wrong) guess at device
    dimensions.
  * x[i] and x[[i]] for non-integer i should now behave in all cases
    as always documented: the index used is equivalent to
    as.integer(i) unless that would overflow where trunc(i) is used
    instead; thanks to Suharto Anggono's report and patch proposals
    in PR#17977.
  * asOneSidedFormula() now associates the resulting formula with the
    global environment rather than the evaluation environment created
    for the call.
  * &lt;bibentry&gt;$name now matches the field name case-insensitively,
    consistent with bibentry() creation and the replacement method.
  * cbind() failed to detect some length mismatches with a mixture of
    time-series and non-time-series inputs.
  * The default LaTeX style file Sweave.sty used by the RweaveLatex
    driver no longer loads the obsolete ae package; thanks to a
    report by Thomas Soeiro in PR#18271.  Furthermore, it now skips
    \usepackage[T1]{fontenc} for engines other than pdfTeX (if
    detected) or if the new [nofontenc] option is used.
  * smooth.spline() now stores its logical cv argument more safely,
    fixing a rare bug when printing, and also stores n.
  * smooth.spline(x,y,*) now computes the cv.crit statistic
    correctly, also when is.unsorted(x), fixing PR#18294.
  * The data.frame method of rbind() now warns when binding
    not-wholly-recycling vectors, by analogy to the default method
    (for matrices).
  * setAs() finds the correct class for name to when multiple
    packages define a class with that name. Thanks to Gabor Csardi
    for the report.
  * Fix for detaching a package when two classes of the same name are
    present in method signatures for the same generic. Thanks to
    Gabor Csardi for the report.
  * match.arg("", c("", "a", "B")) gives a better error message, in
    part from PR#17959, thanks to Elin Waring.
  * R CMD Sweave --clean no longer removes pre-existing files or
    subdirectories (PR#18242).
  * The quartz() device no longer splits polylines into subpaths.
    That has caused narrowly-spaced lines with many points to always
    look solid even when dashed line type was used due to dash phase
    restarts.
  * Deparsing constructs such as quote(1 + `!`(2) + 3) works again as
    before R 3.5.0, thanks to the report and patch in PR#18284 by
    Suharto Anggono.
  * as.list(f) for a factor f now keeps names(f), fixing PR#18309.
  * qbeta(.001, .9, .009) and analogous qf() calls now return a
    correct value instead of NaN or wrongly 1, all with a warning;
    thanks to the report by Ludger Goeminne in PR#18302.
  * plot.lm() failed to produce the plot of residuals vs.  factor
    levels (i.e., which=5 when leverages are constant) for models
    with character predictors (PR#17840).
  * interaction.plot(..., xtick = TRUE) misplaced the x-axis line
    (PR#18305).
  * Not strictly fixing a bug, format()ing and print()ing of
    non-finite Date and POSIXt values NaN and +/-Inf no longer show
    as NA but the respective string, e.g., Inf, for consistency with
    numeric vector's behaviour, fulfilling the wish of PR#18308.
  * R CMD check no longer runs test scripts generated from
    corresponding .Rin files twice and now signals an ERROR if
    processing an .Rin script fails.
  * tools::Rd2txt() used for plain-text help pages now renders \hrefs
    (if tools::Rd2txt_options(showURLs = TRUE)) and \urls with
    percent-encoding and standards-compliant delimiting style (angle
    brackets and no URL: prefix).  \email is now rendered with a
    mailto: prefix.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1655985600">- CHANGES IN R 4.2.1:
  NEW FEATURES:
  * New function utils::findCRANmirror() to find out if a CRAN mirror
    has been selected, otherwise fallback to the main site.  This
    behaves in the same way as tools::CRAN_package_db() and is
    intended for packages wishing to access CRAN for purposes other
    than installing packages.
    The need for this was shown by a day when the main CRAN website
    was offline and a dozen or so packages which had its URL
    hardcoded failed their checks.
  INSTALLATION on a UNIX-ALIKE:
  * The libraries searched for by --with-blas (without a value) now
    include BLIS (after OpenBLAS but before ATLAS).  And on macOS,
    the Accelerate framework (after ATLAS).  (This is patterned after
    the AX_BLAS macro from the Autoconf Archive.)
  * The included LAPACK sources have been updated to 3.10.1.
  UTILITIES:
  * The (full path to) the command tidy to be used for HTML
    validation can be set by environment variable R_TIDYCMD.
  * Setting environment variable _R_CHECK_RD_VALIDATE_RD2HTML_ to a
    false value will override R CMD check --as-cran and turn off HTML
    validation.  This provides a way to circumvent a problematic
    tidy.
    The 2006 version that ships with macOS is always skipped.
  C-LEVEL FACILITIES:
  * The undocumented legacy declarations of Sint, Sfloat, SINT_MAX
    and SINT_MIN in header R.h are deprecated.
  BUG FIXES:
  * fisher.test(d) no longer segfaults for "large" d; fixing PR#18336
    by preventing/detecting an integer overflow reliably.
  * tar(., files=*) now produces correctly the warning about invalid
    uid or gid of files, fixing PR#18344, reported by Martin Morgan.
  * tk_choose.files() with multi = FALSE misbehaved on paths
    containing spaces (PR#18334) (regression introduced in R 4.0.0).
  * sort(x, partial = ind, *) now works correctly notably for the
    non-default na.last = FALSE or TRUE, fixing PR#18335 reported by
    James Edwards.
  * Environment variable _R_CHECK_XREFS_REPOSITORIES_ is only used
    for checking .Rd cross-references in R CMD check (as documented)
    and not for other uses looking for a CRAN mirror.
  * The search for a CRAN mirror when checking packages now uses
    getOption("repos") if that specifies a CRAN mirror, even when it
    does not also specify all three Bioconductor repositories (as was
    previously required).
  * The HTML code generated by tools::Rd2HTML() has been improved to
    pass tidy 5.8.0.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1667217600">- CHANGES IN R 4.2.2:
  NEW FEATURES:
  * tools::Rdiff(useDiff = TRUE) checks for the presence of an
    external diff command and switches to useDiff = FALSE if none is
    found.  This allows R CMD Rdiff to always work.
  * On Windows, environment variable R_LIBCURL_SSL_REVOKE_BEST_EFFORT
    can be used to switch to only 'best-effort' SSL certificate
    revocation checks with the default "libcurl" download method.
    This reduces security, but may be needed for downloads to work
    with MITM proxies (PR#18379).
  * (macOS) The run-time check for libraries from XQuartz for X11 and
    Tcl/Tk no longer uses otool from the Apple Developer Tools
    (PR#18400).
  * The LaTeX style for producing the PDF manuals, Rd.sty, now loads
    the standard amsmath, amsfonts and amssymb packages for greater
    coverage of math commands in the Rd \eqn and \deqn macros.  The
    \mathscr LaTeX command is also provided (via the mathrsfs
    package, if available, or the amsfonts bundle otherwise),
    fulfilling the wish of PR#18398.
  * (Windows) The default format of readClipboard() and
    writeClipboard() has been changed to 13 (CF_UNICODETEXT).
  INSTALLATION on a UNIX-ALIKE:
  * The PDF manuals (if built) can be compacted by the new target
    make compact-pdf (at the top level or in directory doc/manual).
  * There is now configure support for LLVM clang 15 on Linux, which
    defaults to position-independent (PIE) executables whereas
    gfortran does not.
  * Many small changes to ease compilation (and suppress warnings)
    with LLVM clang 15.
  BUG FIXES:
  * Rscript -e would fail if stdin were closed (Reported by Henrik
    Bengtsson.)
  * qt(*, log.p=TRUE) in outer tails no longer produces NaN in its
    final steps, thus fixing PR#18360.
  * tools::Rd2latex() now escapes hashes and ampersands when writing
    URLs, fixing LaTeX errors with such URLs in \tabular.
  * When isGeneric(f, fdef=*) is used with mismatching names, the
    warning is better understandable; reported (with fix) in PR#18370
    by Gabe Becker.
  * poly(x, n) now works again (and is now documented) when x is a
    "Date" or "POSIXct" object, or of another class while fulfilling
    mode(x) == "numeric".  This also enables poly(x, *, raw=TRUE) for
    such variables.  Reported by Michael Chirico to R-devel.
  * write.table(), write.csv() and write.csv2() restore their
    numerical precision (internal equivalent of digits = 15) after an
    interrupt (PR#18384).
  * One can now read also byte FF from a clipboard connection
    (PR#18385).
  * source("") and source(character()) now give more helpful error
    messages.
  * R CMD check --as-cran set _R_CHECK_TIMINGS_ too late to have the
    intended effect.
  * as.POSIXlt(x) now also works with very large dates x, fixing
    PR#18401 reported by Hannes M"uhleisen.
  * Files can now be extracted even from very large zip archives
    (PR#18390, thanks to Martin Jakt).
  * Non-finite objects of class "POSIXlt" are now correctly coerced
    to classes "Date" and "POSIXct"; following up on the extension to
    format() them correctly.
  * Added methods for is.finite(), is.infinite() and is.nan() for
    "POSIXlt" date-time objects.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1678881600">- CHANGES IN R 4.2.3:
  C-LEVEL FACILITIES:
  * The definition of DL_FUNC in R_ext/Rdynload.h has been changed to
    be fully C-compliant.  This means that functions loaded _via_ for
    example R_GetCCallable need to be cast to an appropriate type if
    they have any arguments.
  * .Machine has a new element sizeof.time_t to identify old systems
    with a 32-bit type and hence a limited range of date-times (and
    limited support for dates millions of years from present).
  PACKAGE INSTALLATION:
  * (Windows) The default C++ standard had accidentally been left at
    C++11 when it was changed to C++14 on Unix.
  BUG FIXES:
  * As "POSIXlt" objects may be "partially filled" and their list
    components meant to be recycled, length() now is the length of
    the longest component.
  * as.POSIXlt.Date() could underflow for dates in the far past (more
    than half a million years BCE).
  * as.Date.POSIXlt(x) would return "1970-01-01" instead of NA in R
    4.2.2, e.g., for
    x &lt;- as.POSIXlt(c("2019-01-30","2001-1-1"))
    x$mon &lt;- c(0L, NA); as.Date(x)
  * R CMD check failed to apply enabled _R_CHECK_SUGGESTS_ONLY_ to
    examples and vignettes (regression in R 4.2.0).
  * R CMD check did not re-build vignettes in separate processes by
    default (regression in R 4.2.0).
  * Running examples from HTML documentation now restores previous
    knitr settings and options (PR#18420).
  * Quartz: fonts are now located using Core Graphics API instead of
    deprecated ATS which is no longer supported in the macOS 13 SDK
    (PR#18426).  This also addresses an issue where the currently
    used font in the Quartz device context was not correctly
    retained.
  * (Windows) Math symbols in text drawing functions are again
    rendered correctly (PR#18440).  This fixes a regression in R
    4.2.1 caused by a fix in PR#18382 which uncovered an issue in
    GraphApp due to which the symbol charset was not used with TT
    Symbol font face.
  * (Windows) Installing a package with a src/Makefile.{win,ucrt}
    file includes ~/.R/Makevars.win64 in the search for user
    makevars, as documented in "R Installation and Administration"
    and done for packages with a src/Makevars.{win,ucrt} file.
  * format(&lt;POSIXlt_w/_unbalanced_sec&gt;, "....%OS&lt;n&gt;") with n &gt; 0 no
    longer accidentally uses the unbalanced seconds, thanks to
    Suharto Anggono's report (including patch) in PR#18448.
  * solve.default(a, b) works around issues with some versions of
    LAPACK when a contains NA or NaN values.
  * When UseMethod() cannot dispatch, it no longer segfaults
    producing the error message in case of a long class(), thanks to
    Joris Vankerschaver's report (including patch) in PR#18447.
  * When example(foo, ..) produces graphics on an interactive device
    it needs to open itself, it now leaves devAskNewPage() unchanged
    even when it was FALSE, thus fixing a 14 years old '&lt;FIXME&gt;'.
  * packageDescription() again catches errors from encoding
    conversions. This also fixes broken packageVersion() in C locale
    on systems where iconv does not support transliteration.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1681128000">- add patch to build with libcurl &gt;= 8</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1682078400">- CHANGES IN R 4.3.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Calling &amp;&amp; or || with LHS or (if evaluated) RHS of length greater
    than one is now always an error, with a report of the form
    'length = 4' in coercion to 'logical(1)'
    Environment variable _R_CHECK_LENGTH_1_LOGIC2_ no longer has any
    effect.
  NEW FEATURES:
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.10.1.  (This caused some platform-dependent
    changes to package check output.)  And then to the sources from
    LAPACK version 3.11.0 (with changes only to double complex
    subroutines).
  * The included LAPACK sources have been updated to include the four
    Fortran 90 routines rather than their Fortran 77 predecessors.
    This may give some different signs in SVDs or
    eigendecompositions..  (This completes the transition to LAPACK
    3.10.x begun in R 4.2.0.)
  * The LAPACK sources have been updated to version 3.11.0.  (No new
    subroutines have been added, so this almost entirely bug fixes:
    Those fixes do affect some computations with NaNs, including R's
    NA.)
  * The parser now signals _classed_ errors, notably in case of the
    pipe operator |&gt;.  The error object and message now give line and
    column numbers, mostly as proposed and provided by Duncan Murdoch
    in PR#18328.
  * toeplitz() is now generalized for asymmetric cases, with a
    toeplitz2() variant.
  * xy.coords() and xyz.coords() and consequently, e.g., plot(x,y,
    log = "y") now signal a _classed_ warning about negative values
    of y (where log(.) is NA).  Such a warning can be specifically
    suppressed or caught otherwise.
  * Regular expression functions now check more thoroughly whether
    their inputs are valid strings (in their encoding, e.g. in
    UTF-8).
  * The performance of grep(), sub(), gsub() and strsplit() has been
    improved, particularly with perl = TRUE and fixed = TRUE.  Use of
    useBytes = TRUE for performance reasons should no longer be
    needed and is discouraged: it may lead to incorrect results.
  * apropos() gains an argument dot_internals which is used by the
    completion (help(rcompgen)) engine to also see base internals
    such as .POSIXct().
  * Support in tools::Rdiff() for comparing uncompressed PDF files is
    further reduced - see its help page.
  * qqplot(x, y, ...) gains conf.level and conf.args arguments for
    computing and plotting a confidence band for the treatment
    function transforming the distribution of x into the distribution
    of y (Switzer, 1976, _Biometrika_). Contributed by Torsten
    Hothorn.
  * Performance of package_dependencies() has been improved for cases
    when the number of dependencies is large.
  * Strings newly created by gsub(), sub() and strsplit(), when any
    of the inputs is marked as "bytes", are also marked as "bytes".
    This reduces the risk of creating invalid strings and accidental
    substitution of bytes deemed invalid.
  * Support for readLines(encoding = "bytes") has been added to allow
    processing special text files byte-by-byte, without creating
    invalid strings.
  * iconv(from = "") now takes into account any declared encoding of
    the input elements and uses it in preference to the native
    encoding.  This reduces the risk of accidental creation of
    invalid strings, particularly when different elements of the
    input have different encoding (including "bytes").
  * Package repositories in getOption("repos") are now initialized
    from the repositories file when utils is loaded (if not already
    set, e.g., in .Rprofile).  (From a report and patch proposal by
    Gabriel Becker in PR#18405.)
  * compactPDF() gets a verbose option.
  * type.convert() and hence read.table() get new option tryLogical =
    TRUE with back compatible default.  When set to false, converts
    "F" or "T" columns to character.
  * Added new unit prefixes "R" and "Q" for abbreviating
    (unrealistically large) sizes beyond 10^{27} in standard = "SI",
    thanks to Henrik Bengtsson's PR#18435.
  * as.data.frame()'s default method now also works fine with atomic
    objects inheriting from classes such as "roman", "octmode" and
    "hexmode", such fulfilling the wish of PR#18421, by Benjamin
    Feakins.
  * The as.data.frame.vector() utility now errors for wrong-length
    row.names.  It warned for almost six years, with "Will be an
    error!".
  * sessionInfo() now also contains La_version() and reports codepage
    and timezone when relevant, in both print() and toLatex() methods
    which also get new option tzone for displaying timezone
    information when locale = FALSE.
  * New function R_compiled_by() reports the C and Fortran compilers
    used to build R, if known.
  * predict(&lt;lm&gt;, newdata = *) no longer unnecessarily creates an
    offset of all 0s.
  * solve() for complex inputs now uses argument tol and by default
    checks for 'computational singularity' (as it long has done for
    numeric inputs).
  * predict(&lt;rank-deficient lm&gt;, newdata=*) now obeys a new argument
    rankdeficient, with new default "warnif", warning only if there
    are non-estimable cases in newdata.  Other options include
    rankdeficient = "NA", predicting NA for non-estimable newdata
    cases.  This addresses PR#15072 by Russ Lenth and is based on his
    original proposal and discussions in PR#16158 also by David Firth
    and Elin Waring.  Still somewhat experimental.
  * Rgui console implementation now works better with the NVDA screen
    reader when the full blinking cursor is selected.  The underlying
    improvements in cursor handling may help also other screen
    readers on Windows.
  * The drop-field control in GraphApp can now be left with the TAB
    key and all controls can be navigated in the reverse order using
    the Shift+TAB key, improving accessibility of the Rgui
    configuration editor.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now fully accurate
    (instead of to "only" minimally five digits).
  * demo(error.catching) now also shows off withWarnings() and
    tryCatchWEMs().
  * As an experimental feature the placeholder _ can now also be used
    in the rhs of a forward pipe |&gt; expression as the first argument
    in an extraction call, such as _$coef. More generally, it can be
    used as the head of a chain of extractions, such as _$coef[[2]].
  * Spaces in the environment variable used to choose the R session's
    temporary directory (TMPDIR, TMP and TEMP are tried in turn) are
    now fatal.  (On Windows the 'short path' version of the path is
    tried and used if that does not contain a space.)
  * all.equal.numeric() gets a new optional switch giveErr to return
    the numeric error as attribute.  Relatedly,
    stopifnot(all.equal&lt;some&gt;(a, b, ..)) is as "smart" now, as
    stopifnot(all.equal(....)) has been already, thus allowing
    customized all.equal&lt;Some&gt;() wrappers.
  * R on Windows is now able to work with path names longer than 260
    characters when these are enabled in the system (requires at
    least Windows 10 version 1607).  Packages should be updated to
    work with long paths as well, instead of assuming PATH_MAX to be
    the maximum length.  Custom front-ends and applications embedding
    R need to update their manifests if they wish to allow this
    feature.  See
    &lt;https://blog.r-project.org/2023/03/07/path-length-limit-on-windows&gt;
    for more information.
  * 'Object not found' and 'Missing argument' errors now give a more
    accurate error context. Patch provided by Lionel Henry in
    PR#18241.
  * The @ operator is now an S3 generic. Based on contributions by
    Tomasz Kalinowski in PR#18482.
  * New generic chooseOpsMethod() provides a mechanism for objects to
    resolve cases where two suitable methods are found for an Ops
    Group Generic. This supports experimenting with alternative
    object systems. Based on contributions by Tomasz Kalinowski in
    PR#18484.
  * inherits(x, what) now accepts values other than a simple
    character vector for argument what. A new generic, nameOfClass(),
    is called to resolve the class name from what. This supports
    experimenting with alternative object systems. Based on
    contributions by Tomasz Kalinowski in PR#18485.
  * Detection of BLAS/LAPACK in use (sessionInfo()) with FlexiBLAS
    now reports the current backend.
  * The "data.frame" method for subset() now warns about extraneous
    arguments, typically catching the use of = instead of == in the
    subset expression.
  * Calling a:b when numeric a or b is longer than one may now be
    made into an error by setting environment variable
    _R_CHECK_LENGTH_COLON_ to a true value, along the proposal in
    PR#18419 by Henrik Bengtsson.
  * density(x, weights = *) now warns if automatic bandwidth
    selection happens without using weights; new optional warnWbw may
    suppress the warning.  Prompted by Christoph Dalitz' PR#18490 and
    its discussants.
  * rm(list = *) is faster and more readable thanks to Kevin Ushey's
    PR#18492.
  * The plot.lm() function no longer produces a normal Q-Q plot for
    GLMs. Instead it plots a half-normal Q-Q plot of the absolute
    value of the standardized deviance residuals.
  * The print() method for class "summary.glm" no longer shows
    summary statistics for the deviance residuals by default.  Its
    optional argument show.residuals can be used to show them if
    required.
  * The tapply() function now accepts a data frame as its X argument,
    and allows INDEX to be a formula in that case. by.data.frame()
    similarly allows INDICES to be a formula.
  * The performance of df[j] &lt;- value (including for missing j) and
    write.table(df) has been improved for data frames df with a large
    number of columns.  (Thanks to Gabriel Becker's PR#18500,
    PR#18503 and discussants, prompted by a report from Toby Dylan
    Hocking on the R-devel mailing list.)
  * The matrix multiply operator %*% is now an S3 generic, belonging
    to new group generic matrixOps.  From Tomasz Kalinowski's
    contribution in PR#18483.
  * New function array2DF() to convert arrays to data frames,
    particularly useful for the list arrays created by tapply().
  DATES and TIMES:
  * On platforms where (non-UTC) datetimes before 1902 (or before
    1900 as with system functions on recent macOS) are guessed by
    extrapolating time zones from 1902-2037, there is a warning at
    the first use of extrapolation in a session.  (As all time zones
    post 2037 are extrapolation, we do not warn on those.)
  * (Platforms using --with-internal-tzone, including Windows and by
    default macOS). How years are printed in dates or date-times can
    be controlled by environment variable R_PAD_YEARS_BY_ZERO.  The
    default remains to pad to 4 digits by zeroes, but setting value
    no gives no padding (as used by default by glibc).
  * strftime() tries harder to determine the offset for the "%z"
    format, and succeeds on the mainstream R platforms.
  * strftime() has a limit of 2048 bytes on the string produced -
    attempting to exceed this is an error.  (Previously it silently
    truncated at 255 bytes.)
  * sessionInfo() records (and by default prints) the system time
    zone as part of the locale information.  Also, the source
    (system/internal) of the date-time conversion and printing
    functions.
  * Objects of class "POSIXlt" created in this version of R always
    have 11 components: component zone is always set, and component
    gmtoff is set for times in UTC and usually set on the (almost
    all) platforms which have C-level support, otherwise is NA.
  * There are comprehensive validity checks on the structure of
    objects of class "POSIXlt" when converting (including formatting
    and printing).  (This avoids mis-conversions of hand-crafted
    objects.)
  * There is some support for using the native date-time routines on
    macOS: this is only viable on recent versions (e.g. 12.6 and 13)
    and does get wrong some historical changes (before 1900, during
    WWII).  Use of --with-internal-tzone remains the default.
  * as.POSIXct(&lt;numeric&gt;) and as.POSIXlt(.) (without specifying
    origin) now work.  So does as.Date(&lt;numeric&gt;).
  * as.Date.POSIXct(., tz) now treats several tz values, notably
    "GMT" as equivalent to "UTC", proposed and improved by Michael
    Chirico and Joshua Ulrich in PR#17674.
  * Experimental balancePOSIXlt() utility allows using "ragged" and
    or out-of-range "POSIXlt" objects more correctly, e.g., in
    subsetting and subassignments.  Such objects are now documented.
    More experimentally, a "POSIXlt" object may have an attribute
    "balanced" indicating if it is known to be filled or fully
    balanced.
  * Functions axis.Date() and axis.POSIXct() are rewritten to gain
    better default tick locations and better default formats by using
    prettyDate(). Thanks to Swetlana Herbrandt.
  * The mapping of Windows' names for time zones to IANA's 'Olson'
    names has been updated.  When ICU is available (it is by
    default), it is used to get a mapping for the current region set
    in Windows.  This can be overridden by setting environment
    variable TZ to the desired Olson name - see OlsonNames() for
    those currently available.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 16
    and so packages that provide graphics devices should be
    reinstalled.
  * The grDevices and grid packages have new functions for rendering
    typeset glyphs, primarily: grDevices::glyphInfo() and
    grid::grid.glyph().
    Rendering of typeset glyphs is only supported so far on the
    Cairo-based graphics devices and on the pdf() and quartz()
    devices.
  * The defined behaviour for "clear" and "source" compositing
    operators (via grid::grid.group()) has been changed (to align
    better with simple interpretation of original Porter-Duff
    definitions).
  * Support for gradients, patterns, clipping paths, masks, groups,
    compositing operators, and affine transformations has been added
    to the quartz() device.
  INSTALLATION on a UNIX-ALIKE:
  * A system installation of generic LAPACK 3.10.0 or later will be
    preferred to the version in the R sources.
    configure option --with-lapack=no (equivalently --without-lapack)
    forces compilation of the internal LAPACK sources.
    If --with-lapack is not specified, a system liblapack is looked
    for and used if it reports version 3.10.0 or later and does not
    contain BLAS routines.
    Packages using LAPACK will need to be reinstalled if this changes
    to using an external library.
  * On aarch64 Linux platforms using GCC, configure now defaults to
  - fPIC (instead of -fpic), as desired in PR#18326.
  * configure now checks conversion of datetimes between POSIXlt and
    POSIXct around year 2020.  Failure (which has been seen on
    platforms missing tzdata) is fatal.
  * If configure option --with-valgrind-instrumentation is given
    value 1 or 2, option --with-system-valgrind-headers is now the
    default and ignored (with a warning).  It is highly recommended
    that the system headers are installed alongside valgrind: they
    are part of its packaging on some Linux distributions and
    packaged separately (e.g. in the valgrind-devel RPM) on others.
    configure will give a warning if they are not found.
    The system headers will be required in a future release of R to
    build with valgrind instrumentation.
  * libcurl 8.x is now accepted by configure: despite a change in
    major version number it changes neither API nor ABI.
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools43, an update of the Rtools42 toolchain.  It is
    based on gcc 12 and newer versions of MinGW-W64, binutils and
    libraries.  At this time R-devel can still be built using
    Rtools42 without changes, but when R-devel is installed via the
    installer, it will by default look for Rtools43.
  * Old make targets rsync-extsoft and 32-bit ones that are no longer
    needed have been removed.
  * Default builds (including for packages) no longer select C99.
    Thus the C standard used is the default for the compiler, which
    for the toolchain in Rtools43 is C17.  (This is consistent with
    Unix builds.)
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++17 where
    available (which it is on all currently checked platforms): if
    not C++14 or C++11 is used if available otherwise C++ is not
    supported.
  * USE_FC_LEN_T is the default: this uses the correct
    (compiler-dependent) prototypes for Fortran BLAS/LAPACK routines
    called from C/C++, and requires adjustment of many such calls -
    see 'Writing R Extensions' SS6.6.1.
  * There is initial support for C++23 as several compilers are now
    supporting -std=c++23 or -std=c++2b or similar.  As for C++20,
    there no additional configure checks for C++23 features beyond a
    check that the compiler reports a __cplusplus value greater than
    that in the C++20 standard.  C++ feature tests should be used.
  * There is support for a package to indicate the version of the C
    standard which should be used to compile it, and for the
    installing user to specify this.  In most cases R defaults to the
    C compiler's default standard which is C17 (a `bug-fix' of C11) -
    earlier versions of R or compilers may have defaulted to C99.
    Current options are:
    USE_C17 Use a standard that is at most C17.  The intention is to
    allow legacy packages to still be installed when later C
    standards become the default, including packages using new
    keywords as identifiers or with K&amp;R-style function
    declarations.  This will use C17 if available, falling back
    to C11.
    USE_C90 Use the C90 (aka C89) standard.  (As that standard did
    not require compilers to identify that version, all we can
    verify is that the compiler does not claim to be using a
    later standard.  It may accept C99 features - for example
    clang accepts // to make comments.)
    USE_C99 Use the C99 standard. This should be rarely needed - it
    avoids the few new features of C11/C17 which can be useful if
    a package assumes them if C17 is specified and they are not
    implemented.
    USE_C23 Use C23 (or in future, later).  Compiler/library support
    for C23 is still being implemented, but LLVM clang from
    15.0.0 and the upcoming GCC 13 have quite extensive support.
    These can be specified as part of the SystemRequirements field in
    the package's DESCRIPTION file or _via_ options --use-C17 and so
    on of R CMD INSTALL and R CMD SHLIB.
    For further details see "Writing R Extensions" SS1.2.5.
  * (Windows) A src/Makefile.ucrt or src/Makefile.win file is now
    included after R_HOME/etcR_ARCH/Makeconf and so no longer needs
    to include that file itself.  Installation of a package with such
    a file now uses a site Makevars file in the same way as a package
    with a src/Makevars.win file would.
  * configure is now passed crucial variables such as CC and CFLAGS
    in its environment, as many packages were not setting them (as
    documented in 'Writing R Extensions' SS1.2).
    This has most effect where configure is used to compile parts of
    the package - most often by cmake or libtool which obfuscate the
    actual compile commands used.
    Also used for configure.win and configure.ucrt on Windows.
  FORTRAN FLAGS:
  * The flag -fno-optimize-sibling-calls is no longer forced for
    gfortran 7 and later.  It should no longer be needed now using
    'hidden' character-length arguments when calling BLAS/LAPACK
    routines from C/C++ is the default even for packages.  (Unless
    perhaps packages call Fortran code from C/C++ without using R's
    headers and without allowing for these arguments.)
  C-LEVEL FACILITIES:
  * The deprecated S-compatibility macros DOUBLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * The deprecated legacy typedefs of Sint and Sfloat in header R.h
    are no longer defined, and that header no longer includes header
    limits.h from C nor climits from C++.
  * New macro CAD5R() is provided in Rinternals.h and used in a few
    places in the R sources.
  * ALTREP now supports VECSXP vectors. Contributed by Gabor Csardi
    in PR#17620.
  * The Rcomplex definition (in header R_ext/Complex.h) has been
    extended to prevent possible mis-compilation when interfacing
    with Fortran (PR#18430).  The new definition causes compiler
    warnings with static initializers such as {1, 2}, which can be
    changed to {.r=1, .i=2}.
    Using the new definition from C++ depends on compiler extensions
    supporting C features that have not been incorporated into the
    C++ standards but are available in g++ and clang++: this may
    result in C++ compiler warnings but these have been worked around
    for recent versions of common compilers (GCC, Apple/LLVM clang,
    Intel).
    It is intended to change the inclusion of header R_ext/Complex.h
    by other R headers, so C/C++ code files which make use of
    Rcomplex should include that header explicitly.
  UTILITIES:
  * R CMD check does more checking of package .Rd files, warning
    about invalid email addresses and (some) invalid URIs and noting
    empty \item labels in description lists.
  * R CMD check now also reports problems when reading package news
    in md (file NEWS.md) and (optionally) plain text (file NEWS)
    formats.
  * _R_CHECK_TIMINGS_ defaults to a value from the environment even
    for R CMD check --as-cran; this allows for exceptionally fast or
    slow platforms.
    It now applies to checking PDF and HTML versions of the manuals,
    and 'checking CRAN incoming feasibility'.
  * R CMD check can optionally (but included in --as-cran) check
    whether HTML math rendering _via_ KaTeX works for the package .Rd
    files.
  * Non-interactive debugger invocations can be trapped by setting
    the environment variable _R_CHECK_BROWSER_NONINTERACTIVE_ to a
    true value.  This is enabled by R CMD check --as-cran to detect
    the use of leftover browser() statements in the package.
  * The use of sprintf and vsprintf from C/C++ has been deprecated in
    macOS 13 and is a known security risk.  R CMD check now reports
    (on all platforms) if their use is found in compiled code:
    replace by snprintf or vsnprintf respectively. [*NB:* whether
    such calls get compiled into the package is platform-dependent.]
  * Where recorded at installation, R CMD check reports the C and
    Fortran compilers used to build R.
    It reports the OS in use (if known, as given by osVersion) as
    well as that R was built for.
    It notes if a C++ standard was specified which is older than the
    current default: many packages have used C++11 to mean 'not
    C++98' - as C++11 is the minimum supported since R 4.0.0, that
    specification can probably be removed.
  * R CMD INSTALL reports the compilers (and on macOS, the SDK) used,
    and this is copied to the output of R CMD check.
    Where a C++ standard is specified, it is reported.
  * R CMD check's 'checking compilation flags in Makevars' has been
    relaxed to accept the use of flags such as -std=f2008 in
    PKG_FFLAGS.
  * tools::buildVignettes() has a new argument skip, which is used by
    R CMD check to skip (and note) vignettes with unavailable
    \VignetteDepends (PR#18318).
  * New generic .AtNames() added to enable class-specific completions
    after @. The formerly internal function findMatches() is now
    exported, mainly for use in methods for .DollarNames() and
    .AtNames().
  DEPRECATED AND DEFUNCT:
  * default.stringsAsFactors() is defunct.
  * Calling as.data.frame.&lt;class&gt;() directly (for 12 atomic classes)
    is going to be formally deprecated, currently activated by
    setting the environment variable
    _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ to non-empty, which also
    happens in R CMD check --as-cran.
  BUG FIXES:
  * Hashed environments with sizes less than 5 can now grow.
    (Reported to R-devel by Duncan Garmonsway.)
  * as.character(&lt;Rd&gt;, deparse = TRUE) failed to re-escape curly
    braces in LaTeX-like text.  (Reported by Hadley Wickham in
    PR#18324.)
  * library() now passes its lib.loc argument when requiring Depends
    packages; reported (with fix) in PR#18331 by Mikael Jagan.
  * R CMD Stangle: improved message about 'Output' files.
  * head(x, n) and tail(x, n) now signal an error if n is not
    numeric, instead of incidentally "working" sometimes returning
    all of x.  Reported and discussed by Colin Fay, in PR#18357.
  * The "lm" method for summary() now gives the correct F-statistic
    when the model contains an offset.  Reported in PR#18008.
  * C() and `contrasts&lt;-`() now preserve factor level names when
    given a function object (as opposed a function name which did
    preserve names). Reported in PR#17616.
  * c(a = 1, 2)[[]] no longer matches 2 but rather signals a
    _classed_ error.  Reported and analysed by Davis Vaughan in
    PR#18367, a duplicate of PR#18004, by Jan Meis et al.  For
    consistency, NULL[[]] is also erroneous now.  x[[]] &lt;- v gives an
    error of the same class "MissingSubscriptError".
  * The relist() function of utils now supports NULL elements in the
    skeleton (PR#15854).
  * ordered(levels = *) (missing x) now works analogously to factor(,
    ordered=TRUE); reported (with fix) by Achim Zeileis in PR#18389.
  * User-defined Rd macro definitions can now span multiple lines,
    thanks to a patch from Duncan Murdoch. Previously, the Rd parser
    silently ignored everything after the first line.
  * Plain-text help (tools::Rd2txt()) now preserves an initial blank
    line for text following description list items.
  * tools::Rd2HTML() and tools::Rd2latex() no longer split \arguments
    and \value lists at Rd comments.
  * tools::Rd2latex() now correctly handles optional text outside
    \items of argument lists as well as bracketed text at the
    beginning of sections, e.g., \value{[NULL]}.
  * as.character(&lt;POSIXt&gt;) now behaves more in line with the methods
    for atomic vectors such as numbers, and is no longer influenced
    by options().  Ditto for as.character(&lt;Date&gt;).  The
    as.character() method gets arguments digits and OutDec with
    defaults _not_ depending on options().  Use of as.character(*,
    format = .) now warns.
  * Similarly, the as.character.hexmode() and *.octmode() methods
    also behave as good citizen methods and back compatibility option
    keepStr = TRUE.
  * The as.POSIXlt(&lt;POSIXlt&gt;) and as.POSIXct(&lt;POSIXct&gt;) default
    methods now do obey their tz argument, also in this case.
  * as.POSIXlt(&lt;Date&gt;) now does apply a tz (time zone) argument, as
    does as.POSIXct(); partly suggested by Roland Fuss on the R-devel
    mailing list.
  * as.Date.POSIXlt(x) now also works when the list components are of
    unequal length, aka "partially filled" or "ragged".
  * expand.model.frame() looked up variables in the wrong environment
    when applied to models fitted without data.  Reported in
    PR#18414.
  * time() now (also) uses the ts.eps = getOption("ts.eps") argument
    and thus by default rounds values very close to the start (or
    end) of a year.  Based on a proposal by Andre"i V. Kostyrka on
    R-help.
  * Printing of a factanal() result with just one factor and sort =
    TRUE now works regularly, fixing PR#17863 by Timothy Bates,
    thanks to the 'R Contributors' working group.
  * Printing 0-length objects of class "factor", "roman", "hexmode",
    "octmode", "person", "bibentry", or "citation" now prints
    something better, one of which fixes PR#18422, reported by
    Benjamin Feakins.
  * Sys.timezone() queries timedatectl only if systemd is loaded;
    addressing a report by Jan Gorecki in PR#17421.
  * The formula method of cor.test() had scoping problems when
    environment(formula) was not the calling environment; reported
    with a patch proposal by Mao Kobayashi in PR#18439.
  * attach() of an environment with active bindings now preserves the
    active bindings.  Reported by Kevin Ushey in PR#18425.
  * BLAS detection now works also with system-provided libraries not
    available as regular files.  This fixes detection of the
    Accelerate framework on macOS since Big Sur.  Reported by David
    Novgorodsky.
  * download.file() gives a helpful error message in case of an
    invalid download.file.method option, thanks to Colin Fay's report
    in PR#18455.
  * Sporadic crashes of Rterm when using completion have been fixed.
  * Rprof() is now more reliable.  A livelock in thread
    initialization with too short sampling interval has been fixed on
    macOS.  A deadlock in using the C runtime has been fixed on
    Windows.  A potential deadlock has been prevented on Unix.
  * Cursor placement in Rgui now works even after a fixed-width font
    is selected.
  * Mandatory options (options()) are now set on startup so that
    saving and restoring them always works (PR#18372).
  * Package installation, R CMD INSTALL or install.packages(*), now
    parses each of the &lt;pkg&gt;/R/*.R files individually instead of
    first concatenating and then parse()ing the large resulting file.
    This allows parser or syntax errors to be diagnosed with correct
    file names and line numbers, thanks to Simon Dedman's report and
    Bill Dunlap's patch in PR#17859.
    This _does_ require syntactically self contained R source files
    now, fixing another inadvertent bug.
  * predict.lm(&lt;model with offset&gt;) now finds the offset in the
    correct environment, thanks to Andr'e Gillibert's report and patch
    in PR#18456.
  * getInitial(&lt;formula&gt;) now finds the selfStart model in the
    correct environment.  (Reported by Ivan Krylov in PR#18368.)
  * Fix for possible segfault when using recently-added graphics
    features, such as gradients, clipping paths, masks, and groups
    with pdf(file=NULL).
  * class(m) &lt;- class(m) no longer changes a matrix m by adding a
    class _attribute_.
  * packageDate(pkg) now only warns once if there is no pkg.
  * When ts() creates a multivariate time series, "mts", it also
    inherits from "array" now, and is.mts() is documented _and_
    stricter.
  * Rd2txt() now preserves line breaks of \verb Rd content and from
    duplicated \cr.  The former also fixes the rendering of verbatim
    output from Rd \Sexpr in plain-text help.
  * uniroot(f, interval) should no longer wrongly converge _outside_
    the interval in some cases where abs(f(x)) == Inf for an x at the
    interval boundary, thanks to posts by Ben Bolker and Serguei
    Sokol on R-devel.
  * Vectorized alpha handling in palette functions such as in gray(),
    rainbow(), or hcl.colors() works correctly now, thanks to Achim
    Zeileis' report and patch in PR#18476.
  * Formatting and print()ing of bibentry objects has dropped the
    deprecated citation.bibtex.max argument, such that the bibtex
    argument's default for print.bibentry() depends directly on the
    citation.bibtex.max option, whereas in format.bibentry() the
    option no longer applies.
  * Attempting to use a character string naming a foreign function
    entry point in a foreign function call in a package will now
    signal an error if the packages has called R_forceSymbols to
    specify that symbols must be used.
  * An error in table() could permanently set options(warn=2)
    promoting all subsequent warnings to errors.
  * The sigma() function gave misleading results for binary GLMs.  A
    new method for objects of class "glm" returns the square root of
    the estimate of the dispersion parameter using the same
    calculation as summary.glm().
  * bs() and ns() in the (typical) case of automatic knot
    construction, when some of the supposedly inner knots coincide
    with boundary knots, now moves them inside (with a warning),
    building on PR#18442 by Ben Bolker.
  * R CMD on Windows now skips the site profile with --no-site-file
    and --vanilla even when R_PROFILE is set (PR#18512, from Kevin
    Ushey).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1686916800">- CHANGES IN R 4.3.1:
  C-LEVEL FACILITIES:
  * The C-level API version of R's integrate(), Rdqags() in Applic.h,
    now returns the correct number of integrand evaluations neval,
    fixing PR#18515 reported and diagnosed by Stephen Wade.
  * The C prototypes for LAPACK calls dspgv and dtptrs in
    R_exts/Lapack.h had one too many and one too few character length
    arguments - but this has not caused any known issues. To get the
    corrected prototypes, include
    [#]include &lt;Rconfig.h&gt; // for PR18534fixed
    [#]ifdef PR18534fixed
    [#] define usePR18534fix 1
    [#]endif
    [#]include &lt;R_exts/Lapack.h&gt;
    in your C/C++ code (PR#18534).
  INSTALLATION:
  * Many of the checks of esoteric Internet operations and those
    using unreliable external sites have been moved to a new target
    that is not run by default and primarily intended for the core
    developers.  To run them use
    cd tests; make test-Internet-dev
  BUG FIXES:
  * .S3methods(), typically called from methods(), again marks
    methods from package base as visible.
    Also, the visibility of non-base methods is again determined by
    the method's presence in search().
  * tools::Rdiff() is now more robust against invalid strings, fixing
    installation tests on Windows without Rtools installed
    (PR#18530).
  * Fix (new) bug in hcl.colors(2, *), by Achim Zeileis (PR#18523).
  * head(., &lt;illegal&gt;) and tail(..) now produce more useful "Error in
    ...." error messages, fixing PR#18362.
  * Package code syntax on Windows is checked in UTF-8 when UTF-8 is
    the native encoding.
  * na.contiguous(x) now also returns the first run, when it is at
    the beginning and there is a later one of the same length;
    reported to R-devel, including a fix, by Georgi Boshnakov.
    Further, by default, it modifies only an existing attr(*,"tsp")
    but otherwise no longer sets one.
  * chol(&lt;not pos.def&gt;, pivot = &lt;T|F&gt;) now gives a correct error or
    warning message (depending on pivot), thanks to Mikael Jagan's
    (PR#18541).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1699012800">- CHANGES IN R 4.3.2:
  NEW FEATURES:
  * The default initialization of the "repos" option from the
    repositories file at startup can be skipped by setting
    environment variable R_REPOSITORIES to NULL such that
    getOption("repos") is empty if not set elsewhere.
  * qr.X() is now an implicit S4 generic in methods.
  * iconv(to = "ASCII//TRANSLIT") is emulated using substitution on
    platforms which do not support it (notably Alpine Linux).  This
    should give a human-readable conversion in ASCII on all platforms
    (rather than NA_character_).
  * trans3d() gains options continuous and verbose addressing the
    problem of possible "wrap around" when projecting too long
    curves, as reported by Achim Zeileis in PR#18537.
  * tools::showNonASCII() has been rewritten to work better on macOS
    14 (which has a changed implementation of iconv()).
  * tiff(type = "quartz") (the default on macOS) now warns if
    compression is specified: it continues to be ignored.
  INSTALLATION on a UNIX-ALIKE:
  * There is some support for building with Intel's LLVM-based
    compilers on x86_64 Linux, such as (C) icx, (C++) ipcx and
    (Fortran) ifx from oneAPI 2023.x.y.
  * There is support for using LLVM's flang-new as the Fortran
    compiler from LLVM 16.0.x (preferably 17.0.0 or later).
  UTILITIES:
  * R CMD check reports the use of the Fortran 90 random number
    generator RANDOM_NUMBER() and the subroutines to initialize it.
    'Writing R Extensions' has example code to use R's RNGs from
    Fortran.
  BUG FIXES:
  * substr(x, n, L) &lt;- cc now works (more) correctly for multibyte
    UTF-8 strings x when L &gt; nchar(x), thanks to a report and patch
    by 'Architect 95'.
  * contrib.url(character()) now returns 0-length character() as
    documented, which also avoids spurious warnings from
    available.packages() et al. in the edge case of an empty vector
    of repository URLs.
  * readChar(., 4e8) no longer fails, thanks to Kodi Arfer's report
    (PR#18557).
  * lapply(&lt;list&gt;, as.data.frame) no longer warns falsely for some
    base vector components.
  * Communication between parent and child processes in the multicore
    part of parallel could fail on platforms that do not support an
    arbitrarily large payload in system functions read()/write() on
    pipes (seen on macOS where a restriction to INT_MAX bytes is
    documented, without doing a partial read unlike Linux). The
    payload is now split into 1Gb chunks to avoid that problem.
    (PR#18571)
  * qqplot(x,y, conf.level=.) gives better confidence bounds when
    length(x) != length(y), thanks to Alexander Ploner's report and
    patch proposal (PR#18557).
  * norm(&lt;0-length&gt;, "2") now gives zero instead of an error, as all
    the other norm types, thanks to Mikael Jagan's PR#18542.
  * Build-stage Rd macros \packageAuthor and \packageMaintainer now
    process Authors@R, fixing NA results when the package DESCRIPTION
    omits Author and Maintainer fields.
  * Formatting and printing complex numbers could give things like
    0.1683-0i because of rounding error: -0i is now replaced by +0i.
  * postscript() refused to accept a title comment containing the
    letter "W" (PR#18599).
  * isoreg(c(1,Inf)) signals an error instead of segfaulting, fixing
    PR#18603.
  * tiff(type = "Xlib") was only outputting the last page of
    multi-page plots.
  * tools::latexToUtf8() again knows about \~{n} and other letters
    with tilde, fixing a regression in R 4.3.0, and about \^{i} as an
    alternative to \^{\i} (similarly with other accents).
    Furthermore, LaTeX codes for accented I letters are now correctly
    converted, also fixing related mistakes in
    tools::encoded_text_to_latex().
  * tar(*, tar = "internal") no longer creates out-of-spec tar files
    in the very rare case of user or group names longer than 32
    bytes, fixing PR#17871 with thanks to Ivan Krylov.
  * When using the "internal" timezone datetime code, adding a
    fraction of a second no longer adds one second, fixing PR#16856
    from a patch by Ivan Krylov.
  * tools::checkRd() no longer produces spurious notes about
    "unnecessary braces" from multi-line Rd results of \Sexpr macros.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1709208000">- CHANGES IN R 4.3.3:
  NEW FEATURES:
  * iconv() now fixes up variant encoding names such as "utf8"
    case-insensitively.
  DEPRECATED AND DEFUNCT:
  * The legacy encoding = "MacRoman" is deprecated in pdf() and
    postscript(): support was incomplete in earlier versions of R.
  BUG FIXES:
  * Arguments are now properly forwarded to methods on S4 generics
    with ... in the middle of their formal arguments. This was broken
    for the case when a method introduced an argument but did not
    include ... in its own formals. Thanks to Herv'e Pag`es for the
    report PR#18538.
  * Some invalid file arguments to pictex(), postscript() and xfig()
    opened a file called NA rather than throw an error.  These
    included postscript(NULL) (which some people expected to work
    like pdf(NULL)).
  * Passing filename = NA to svg(), cairo_pdf(), cairo_ps() or the
    Cairo-based bitmap devices opened a file called NA: it now throws
    an error.
  * quartz(file = NA) opened a file called NA, including when used as
    a Quartz-based bitmap device.  It now gives an error.
  * rank(&lt;long vector&gt;) now works, fixing PR#18617, thanks to Ilia
    Kats.
  * seq.int() did not adequately check its length.out argument.
  * match(&lt;POSIXct&gt;, .) is correct again for differing time zones,
    ditto for "POSIXlt", fixing PR#18618 reported by Bastian Klein.
  * drop.terms(*, dropx = &lt;0-length&gt;) now works, fixing PR#18563 as
    proposed by Mikael Jagan.
  * drop.terms(*) keeps + offset(.) terms when it should, PR#18565,
    and drop.terms() no longer makes up a response, PR#18566, fixing
    both bugs thanks to Mikael Jagan.
  * getS3method("t", "test") no longer finds the t.test() function,
    fixing PR#18627.
  * pdf() and postscript() support for the documented Adobe encodings
    "Greek" and "Cyrilllic" was missing (although the corresponding
    Windows' codepages could be used).
  * Computations of glyph metric information for pdf() and
    postscript() did not take into account that transliteration could
    replace one character by two or more (only seen on macOS 14) and
    typically warned that the information was not known.
  * rank(x) no longer overflows during integer addition, when
    computing rank average for largish but not-yet long vector x,
    fixing PR#18630, thanks to Ilia Kats.
  * list.files() on Windows now returns also files with names longer
    that 260 bytes (the Windows limit is 260 characters).
    Previously, some file names particularly with 'East Asian'
    characters were omitted.
  * cov2cor(&lt;0 x 0&gt;) now works, fixing PR#18423 thanks to Mikael
    Jagan and Elin Waring.
  * cov2cor(&lt;negative diagonal&gt;) and similar now give one warning
    instead of two, with better wording, fixing PR#18424 thanks to
    Mikael Jagan.
  * tools:: startDynamicHelp() now ensures port is in proper range,
    fixing PR#18645.
  * pbeta(x, a,b) is correct now for x=0 or 1 in the boundary cases
    where a or b or both are 0, fixing PR#18672 thanks to Michael
    Fay.
  * pmatch(x, table) for large table, also called for data frame row
    selection, dfrm[nm, ], is now interruptible, fixing PR#18656.
  * predict(&lt;rank-deficient lm&gt;, newdata=*) fix computing of nbasis,
    see Russ Lenth's comment 29 in PR#16158.
  * Added a work-around for a bug in macOS 14.3.1 and higher which
    prevents R plots in the Quartz Cocoa device from updating on
    screen.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1713960000">- CHANGES IN R 4.4.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Startup banners, R --version, sessionInfo() and R CMD check no
    longer report (64-bit) as part of the platform as this is almost
    universal - the increasingly rare 32-bit platforms will still
    report (32-bit).
    On Windows, ditto for window titles.
  * is.atomic(NULL) now returns FALSE, as NULL is not an atomic
    vector.  Strict back-compatibility would replace is.atomic(foo)
    by (is.null(foo) || is.atomic(foo)) but should happen only
    sparingly.
  NEW FEATURES:
  * The confint() methods for "glm" and "nls" objects have been
    copied to the stats package.  Previously, they were stubs which
    called versions in package MASS. The MASS namespace is no longer
    loaded if you invoke (say) confint(glmfit).  Further, the "glm"
    method for profile() and the plot() and pairs() methods for class
    "profile" have been copied from MASS to stats.  (profile.nls()
    and plot.profile.nls() were already in stats.)
  * The confint() and profile methods for "glm" objects have gained a
    possibility to do profiling based on the Rao Score statistic in
    addition to the default Likelihood Ratio. This is controlled by a
    new test = argument.
  * The pairs() method for "profile" objects has been extended with a
    which = argument to allow plotting only a subset of the
    parameters.
  * The "glm" method for anova() computes test statistics and
    p-values by default, using a chi-squared test or an F test
    depending on whether the dispersion is fixed or free.  Test
    statistics can be suppressed by giving argument test a false
    logical value.
  * In setRepositories() the repositories can be set using their
    names via name = instead of index ind =.
  * methods() and .S3methods() gain a all.names option for the (rare)
    case where functions starting with a . should be included.
  * Serializations can now be interrupted (e.g., by Ctrl-C on a
    Unix-alike) if they take too long, e.g., from save.image(),
    thanks to suggestions by Ivan Krylov and others on R-devel.
  * New startup option --max-connections to set the maximum number of
    simultaneous connections for the session.  Defaults to 128 as
    before: allowed values up to 4096 (but resource limits may in
    practice restrict to smaller values).
  * R on Windows (since Windows 10 2004) now uses the new Segment
    Heap allocator. This may improve performance of some
    memory-intensive applications.
  * When R packages are built, typically by R CMD build &lt;pkg&gt;, the
    new --user=&lt;build_user&gt; option overrides the (internally
    determined) user name, currently Sys.info()["user"] or LOGNAME.
    This is a (modified) fulfillment of Will Landau's suggestion in
    PR#17530.
  * tools::testInstalledBasic() gets new optional arguments outDir
    and testSrcdir, e.g., allowing to use it in a &lt;builddir&gt; !=
    &lt;srcdir&gt; setup, and in standard "binary" Windows installation
  * if* a source tests/ folder is present.
  * range(&lt;DT_with_Inf&gt;, finite = TRUE) now work for objects of class
    "Date", "POSIXct", and "POSIXlt" with infinite entries,
    analogously to range.default(), as proposed by Davis Vaughan on
    R-devel.  Other range()-methods can make use of new function
    .rangeNum().
  * New .internalGenerics object complementing .S3PrimitiveGenerics,
    for documentation and low-level book-keeping.
  * grid() now invisibly returns the x- and y- coordinates at which
    the grid-lines were drawn.
  * norm(., type) now also works for complex matrices.
  * kappa(., exact = TRUE, norm = *) now works for all norms and also
    for complex matrices.  In symmetric / triangular cases, the new
    argument uplo = "U" | "L" allows the upper or lower triangular
    part to be specified.
  * memDecompress(type = "unknown") recognizes compression in the
    default 'zlib' format as used by memCompress(type = "gzip").
  * memCompress() and memDecompress() will use the libdeflate library
    (&lt;https://github.com/ebiggers/libdeflate&gt;) if installed.  This
    uses the same type of compression for type = "gzip" but is 1.5-2x
    faster than the system libz library on some common platforms: the
    speed-up may depend on the library version.
  * diff() for objects of class "Date", "POSIXct", and "POSIXlt"
    accepts a units argument passed via ....
  * Dynamic help now does a much better job of rendering package
    DESCRIPTION metadata.
  * Rprof() gains an event argument and support for elapsed (real)
    time profiling on Unix (PR#18076).
  * filled.contour() gains a key.border argument.
  * tools::update_pkg_po() gets arguments pot_make and mo_make for
    _not_ re-making the corresponding files, and additionally a
    verbose argument.
  * Hexadecimal string colour specifications are now accepted in
    short form, so, for example, we can use "#123", which is
    equivalent to "#112233".
    Thanks to MikeFC for the original idea and Ella Kaye, Malcolm
    Barrett, George Stagg, and Hanne Oberman for the patch.
  * Plain-text help shows \var markup by angle brackets.
  * The new experimental primitive function declare() is intended to
    eventually allow information about R code to be communicated to
    the interpreter, compiler, and code analysis tools. The syntax
    for declarations is still being developed.
  * Functions psmirnov(), qsmirnov() and rsmirnov() in package stats
    have had argument two.sided renamed to alternative, to take into
    account that the permutation distributions of the one-sided
    statistics can be different in the case of ties.  Consequence of
    PR#18582.
  * sort() is now an implicit S4 generic in methods.
  * Formatting and printing, format(z), print(z), of complex vectors
    z no longer zap relatively small real or imaginary parts to zero,
    fixing PR#16752.  This is an API change, as it was documented
    previously to round real and imaginary parts together on purpose,
    producing nicer looking output.  As mentioned, e.g. in the PR,
    this change is compatible with many other "R-like" programming
    environments.
    We have simplified the internal code and now basically format the
    real and imaginary parts independently of each other.
  * New experimental functions Tailcall() and Exec() to support
    writing stack-space-efficient recursive functions.
  * Where characters are attempted to be plotted by pdf(),
    postscript() and xfig() which are not in the selected 8-bit
    character set (most often Latin-1) and the R session is using a
    UTF-8 locale, the warning messages will show the UTF-8 character
    rather than its bytes and one dot will be substituted per
    character rather than per byte.  (Platforms whose iconv() does
    transliteration silently plot the transliteration.)
    In a UTF-8 locale some transliterations are now done with a
    warning (e.g., dashes and Unicode minus to hyphen, ligatures are
    expanded, permille (‰) is replaced by o/oo), although the OS may
    have got there first.  These are warnings as they will continue
    to be replaced by dots in earlier versions of R.
  * The matrix multiplication functions crossprod() and tcrossprod()
    are now also primitive and S3 generic, as %*% had become in R
    4.3.0.
  * source() and example() have a new optional argument catch.aborts
    which allows continued evaluation of the R code after an error.
  * The non-Quartz tiff() devices allow additional types of
    compression if supported by the platform's libtiff library.
  * The list of base and recommended package names is now provided by
    tools::standard_package_names().
  * cairo_pdf() and cairo_ps() default to onefile = TRUE to closer
    match pdf() and postscript().
  * New option catch.script.errors provides a documented way to catch
    errors and then continue in non-interactive use.
  * L %||% R newly in base is an expressive idiom for the phrases
    if(!is.null(L)) L else R or if(is.null(L)) R else L.
  * The return value from warnings() now always inherits from
    "warnings" as documented, now also in the case of no warnings
    where it previously returned NULL.
  * as.complex("1i") now returns 0 + 1i instead of NA with a warning.
  * z &lt;- c(NA, 1i) now keeps the imaginary part Im(z[1]) == 0, no
    longer coercing to NA_complex_.  Similarly, cumsum(z) correctly
    sums real and imaginary parts separately, i.e., without
    "crosstalk" in case of NAs.
  * On Alpine Linux iconv() now maps "latin2", "latin-2", "latin9"
    and "latin-9" to encoding names the OS knows about
    (case-insensitively).
  * iconv(sub = "Unicode") now always zero-pads to four (hex) digits,
    rather than to 4 or 8.  (This seems to have become the convention
    once Unicode restricted the number of Unicode points to 2^21 - 1
    and so will never need more than 6 digits.)
  * NCOL(NULL) now returns 0 instead of 1, for consistency with
    cbind().
  * The information for the Euro glyph missing from the Adobe .afm
    files for the Courier, Helvetica and Times families has been
    copied from their URW equivalents - this will improve vertical
    centring in the pdf() and postscript() devices.
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.12.0.  The changes are almost entirely cosmetic.
  * The included LAPACK sources have been updated to version 3.12.0
    and some further double-complex routines added.
  * There are new font families for the 2014--5 URW 2.0 fonts (see
    ?pdf) which are included in recent versions of Ghostscript.
    These have font widths for most Greek glyphs and a few others
    which were missing from the original versions (whose font
    families remain available for reproducibility, although
    Ghostscript-based viewers will render using the 2.0 versions).
  * Improve the large-n efficiency of as.matrix(&lt;dist&gt;), thanks an R
    contributors effort, notably by Tim Taylor and Heather Turner,
    see PR#18660.
  * The default and numeric methods of all.equal() get a check.class
    option.
  * zapsmall() gets new optional arguments, function mFUN and min.d,
    for extra flexibility; fulfills a wish in PR#18199.  Also, it is
    now an implicit S4 generic in package methods.
  * The Rd filter for aspell() gains an ignore argument.
  * New generic function sort_by(), primarily useful for the
    data.frame method which can be used to sort rows of a data frame
    by one or more columns.
  * The icence headers for the RPC code in src/extra/xdr have been
    updated to use the GPL-compatible licence published by Oracle
    America in 2010.
  * New function pkg2HTML() in tools to create single-page HTML
    reference manuals for R packages.
  * The byte code evaluator now uses less C stack space for recursive
    calls to byte-compiled functions. It also makes more of an effort
    to avoid allocations for scalar return values.
  * New completion option backtick (disabled by default) allows
    non-syntactic completions to be wrapped in backquotes. This is
    currently only useful for Jupyter notebooks via the IRkernel
    package, and may cause problems for other backends.
  INSTALLATION:
  * The parser has been updated to work with bison 3.8.2, which is
    now used for the pre-generated parsers in gram.c, file.c, and
    gramRd.c. A few parser error messages have changed, which may
    affect code that relies on exact messages.
  INSTALLATION on a UNIX-ALIKE:
  * System valgrind headers are now required to use configure option
  - -with-valgrind-instrumentation with value 1 or 2.
  * configure will warn if it encounters a 32-bit build, as that is
    nowadays almost untested.
  * Environment variable R_SYSTEM_ABI is no longer used and so no
    longer recorded in etc/Renviron (it was not on Windows and was
    only ever used when preparing package tools).
  * If the libdeflate library and headers are available, libdeflate
    rather than libz is used to (de)compress R objects in lazy-load
    databases.  Typically tasks spend up to 5% of their time on such
    operations, although creating lazy-data databases is one of the
    exceptions.
    This can be suppressed if the library is available by the
    configure option --without-libdeflate-compression.
  * configure option --enable-lto=check has not worked reliably since
    2019 and has been removed.
  * The minimum autoconf requirement for a maintainer build has been
    increased to autoconf 2.71.
    It is intended to increase this to 2.72 for R 4.5.0: the
    distributed configure file was generated using 2.72.
  * The minimum version requirement for an external LAPACK has been
    reduced to 3.9.0.
  * No default C++ compiler is set if no C++17 compiler is detected:
    there is no longer an automatic fallback to C++14 or C++11.
    Compilers from the last five years should have sufficient
    support: for others macros CXX and CXXSTD can be set in file
    config.site to provide a fallback if needed.
    The Objective-C++ compiler now by default uses the standard
    selected by R for C++ (currently C++17) rather than the default
    standard for the C++ compiler (which on macOS is still C++98).
  INSTALLATION on macOS:
  * A new configure option --with-newAccelerate makes use of Apple's
    'new' BLAS / LAPACK interfaces in their Accelerate framework.
    Those interfaces are only available in macOS 13.3 or later, and
    building requires SDK 13.3 or later (from the Command Line Tools
    or Xcode 14.3 or later).
    By default the option uses new Accelerate for BLAS calls: to also
    use it for LAPACK use option --with-newAccelerate=lapack.  The
    later interfaces provide LAPACK 3.9.1 rather than 3.2.1: 3.9.1 is
    from 2021-04 and does not include the improved algorithms
    introduced in LAPACK 3.10.0 (including for BLAS calls).
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools44, an update of the Rtools43 toolchain.  It is
    based on GCC 13 and newer versions of MinGW-W64, binutils and
    libraries (targeting 64-bit Intel CPUs).  R-devel can no longer
    be built using Rtools43 without changes.
  * Rtools44 has experimental support for 64-bit ARM (aarch64) CPUs
    _via_ the LLVM 17 toolchain using lld, clang/flang-new and
    libc++.
  UTILITIES:
  * R CMD check notes when S4-style exports are used without
    declaring a strong dependence on package methods.
  * tools::checkRd() (used by R CMD check) detects more problems with
    \Sexpr-based dynamic content, including bad nesting of \Sexprs
    and invalid arguments.
  * tools::checkRd() now reports Rd titles and section names ending
    in a period; this is ignored by R CMD check unless environment
    variable _R_CHECK_RD_CHECKRD_MINLEVEL_ is set to -5 or smaller.
  * R CMD check now notes Rd files without an \alias, as long
    documented in 'Writing R Extensions' §1.3.1.  The check for a
    missing \description has been moved from tools::checkRd() to
    tools::checkRdContents().
  * R CMD check now visits inst/NEWS.Rd and OS-specific man
    subdirectories when checking Rd files.
  * tools::checkDocFiles() and tools::checkRdContents() now also
    check internal Rd files by default, but "specially" (ignoring
    missing documentation of arguments).
  * R CMD Rdiff gets option --useEx.
  * R CMD check now warns on non-portable uses of Fortran KIND such
    as INTEGER(KIND=4) and REAL(KIND=8).
    To see the failing lines set environment variable
    _R_CHECK_FORTRAN_KIND_DETAILS_ to a true value.
  * When checking Rd files, R CMD check now notes some of the "lost
    braces" that tools::checkRd() finds.  Typical problems are Rd
    macros missing the initial backslash (e.g., code{...}), in-text
    set notation (e.g., {1, 2}, where the braces need escaping), and
    \itemize lists with \describe-style entries of the form
    \item{label}{description}.
  * R CMD INSTALL (and hence check) will compile C++ code with
  - DR_NO_REMAP if environment variable _R_CXX_USE_NO_REMAP_ is set
    to a true value.  It is planned that this will in future become
    the default for compiling C++.
  * The new built-in Rd macro \dontdiff{} can be used to mark example
    code whose output should be ignored when comparing check output
    to reference output (tests/Examples/&lt;pkg&gt;-Ex.Rout.save).  The
    \dontdiff tag, like \donttest, is _not_ shown on the rendered
    help page, so provides a clean alternative to ##
    IGNORE_RDIFF_(BEGIN|END) comments.
  * R CMD build when there is no NAMESPACE, now uses the recommended
    exportPattern("^[^.]"), instead of exporting everything.
  * R CMD check now warns about non-ASCII characters in the NAMESPACE
    file (in addition to R files). Such packages are not portable and
    may fail to install on some platforms.
  C-LEVEL FACILITIES:
  * Headers R_ext/Applic.h and R-ext/Linpack.h used to include
    R_ext/BLAS.h although this was undocumented and unneeded by their
    documented entry points.  They no longer do so.
  * New function R_missing(), factored out from do_missing(), used to
    fix PR#18579.
  * SEXP type S4SXP has been renamed to OBJSXP to support
    experimenting with alternative object systems.  The S4SXP value
    can still be used in C code but is now deprecated.  Based on
    contributions from the R Consortium's Object-Oriented Programming
    Working Group.
  * New function pow1p(x,y) for accurate (1+x)^y.
  * mkCharLenCE was incorrectly documented to take a size_t length
    but was implemented with int (and character strings in R are
    limited to 2^31 - 1 bytes).
  DEPRECATED AND DEFUNCT:
  * data() no longer handles zipped data from long-defunct (since R
    2.13.0) --use-zip-data installations.
  * The legacy graphics devices pictex() and xfig() are now
    deprecated.  They do not support recent graphics enhancements and
    their font handling is rudimentary. The intention is to retain
    them for historical interest as long as they remain somewhat
    functional.
  * Support for encoding = "MacRoman" has been removed from the pdf()
    and postscript() devices - this was a legacy encoding supporting
    classic macOS up to 2001 and no longer has universal libiconv
    support.
  * is.R() is deprecated as no other S dialect is known to be in use
    (and this could only identify historical dialects, not future
    ones).
    Further information on calls can be obtained by setting the
    environment variable _R_DEPRECATED_IS_R_ to error which turns the
    deprecation warning into an error and so by default gives a
    traceback.  (This is done by R CMD check --as-cran.)
  * UseMethod() no longer forwards local variables assigned in the
    generic function into method call environments before evaluating
    the method body. This makes method calls behave more like
    standard function calls and makes method code easier to analyze
    correctly.
  * The twelve as.data.frame.&lt;class&gt;() methods which were deprecated
    only via _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ and in R CMD
    check --as-cran are formally deprecated now in favour of calling
    as.data.frame() or as.data.frame.vector().  The deprecation
    "check" now works also when as.data.frame() is S4 generic thanks
    to Ivan Krylov.
  * The default method for the directional comparison operators &lt;, &gt;,
    &lt;=, and &gt;= now signals an error when one of the operands is a
    language object, i.e. a symbol or a call.
  * For terms.formula(), deprecate abb and neg.out arguments
    _formally_ in addition to just documenting it.
  BUG FIXES:
  * The methods package is more robust to not being attached to the
    search path.  More work needs to be done.
  * pairwise.t.test() misbehaved when subgroups had 0 DF for
    variance, even with pool.sd = TRUE.  (PR#18594 by Jack Berry).
  * Probability distribution functions [dpq]&lt;distrib&gt;(x, *), but also
    bessel[IKJY](x, .) now consistently preserve attributes(x) when
    length(x) == 0, e.g., for a 2 x 0 matrix, thanks to Karolis
    Koncevičius' report PR#18509.
  * Group "Summary" computations such as sum(1:3, 4, na.rm = 5, NA,
    7, na.rm = LL) now give an error instead of either 17 or NN for
    LL true or false, as proposed by Ivan Krylov on the R-devel
    mailing list.  (This also means it is now an error to specify
    na.rm more than once.)
  * as.complex(x) now returns complex(real = x, imaginary = 0) for
    _all_ numerical and logical x, notably also for NA or
    NA_integer_.
  * Directories are now omitted by file.copy(, recursive = FALSE) and
    in file.append() (PR#17337).
  * gsub() and sub() are now more robust to integer overflow when
    reporting errors caused by too large input strings (PR#18346).
  * Top-level handlers are now more robust to attempts to remove a
    handler whilst handlers are running (PR#18508).
  * The handling of Alt+F4 in dialogs created on Windows using
    GraphApp has been fixed (PR#13870).
  * density() more consistently computes grid values for the
    FFT-based convolution, following Robert Schlicht's analysis and
    proposal in PR#18337, correcting density values typically by a
    factor of about 0.999.  Argument old.coords = TRUE provides back
    compatibility.
  * palette.colors() gains a name argument that defaults to FALSE
    controlling whether the vector of colours that is returned has
    names (where possible).  PR#18529.
  * tools::xgettext() no longer extracts the (non-translatable) class
    names from warningCondition and errorCondition calls.
  * S3method(&lt;gen&gt;, &lt;class&gt;, &lt;func&gt;) in the NAMESPACE file now works
    (again) when &lt;func&gt; is visible from the namespace, e.g.,
    imported, or in base.
  * getParseData(f) now also works for a function defined in the
    first of several &lt;pkg&gt;/R/*.R source files, thanks to Kirill
    Müller's report and Duncan Murdoch's patch in PR#16756.
  * Rd \Sexpr macros with nested #ifdef conditionals were not
    processed.
  * A non-blocking connection with non-default encoding (such as a
    socket) now correctly returns from readLines() after new data has
    arrived also when its EOF had been reached previously.  Thanks to
    Peter Meilstrup's report on R-devel and Ivan Krylov's report and
    patch proposal in PR#18555.
  * tools::checkRdContents() failed to detect empty argument
    descriptions when they spanned multiple lines, including those
    generated by prompt().  These cases are now noted by R CMD check.
  * Plain-text help no longer outputs spurious colons in the
    arguments list (for multi-line \item labels in the Rd source).
  * kappa() and rcond() work correctly in more cases; kappa(., norm =
    "2") now warns that it computes the 1-norm with (default) exact =
    FALSE; prompted by Mikael Jagan's quite comprehensive PR#18543.
  * Rd skeletons generated by prompt() or promptData() now use a
    dummy title (so R CMD build works).  tools::checkRdContents() has
    been updated to detect such template leftovers, including from
    promptPackage().
  * When S4 method dispatch fails because no method was found, the
    error message now includes the signature argument names; thanks
    to Michael Chirico's proposal on the R-devel list.
  * withAutoprint({ .. }) now preserves srcrefs previously lost,
    thanks to Andrew Simmons' report plus fix in PR#18572.
  * transform.data.frame() no longer adjusts names; in particular,
    untransformed variables are kept as-is, including those with
    syntactically invalid names (PR#17890).
  * The keep.source option for Rd \Sexpr blocks is no longer ignored.
  * The formula methods for t.test() and wilcox.test() now catch when
    paired is passed, addressing PR#14359; use Pair(x1, x2) ~ 1 for a
    paired test.
  * The level reported in the browser prompt was often too large. It
    now shows the number of browser contexts on the stack.
  * For cbind() and rbind(), the optional deparse.level argument is
    now properly passed to methods, thanks to Mikael Jagan's PR#18579
    and comments there.
  * Some error and warning messages for large ('long vector')
    matrix(v, nr, nc) and dim(m) &lt;- d are now correct about sizes,
    using long long formatting, fixing PR#18612 (and more) reported
    by Mikael Jagan.
  * readChar(useBytes = TRUE) now terminates strings even when the
    underlying connection uses extra spaces in the input buffer.
    This fixes problems with extra garbage seen with gzip
    connections, PR#18605.
  * Named capture in PCRE regular expressions now works also with
    more than 127 named groups (PR#18588).
  * Datetime functions are now robust against long jumps when dealing
    with internal time zone changes.  This avoids confusing warnings
    about an invalid time zone, previously triggered by turning
    warnings into errors or handling them via tryCatch (PR#17966,
    PR#17780).
  * Datetime functions now restore even an empty TZ environment
    variable after internal time zone changes (PR#17724).  This makes
    results of datetime functions with this (typically unintentional)
    setting more predictable.
  * drop.terms(*) now drops response as by default, keep.response =
    FALSE, fixing PR#18564 thanks to Mikael Jagan.
  * dummy.coef(.) now also works for lm()-models with character
    categorical predictor variables rather than factor ones, fixing
    PR#18635 reported by Jinsong Zhao.
  * formals(f) &lt;- formals(f) now also works for a function w/o
    arguments and atomic _constant_ body(f).
  * Correct as.function(&lt;invalid list&gt;, .)'s error message.
  * removeSource() is yet more thorough in finding and removing
    "srcref" and the other source references from parsed R language
    chunks, fixing PR#18638 thanks to Andrew Simmons.
  * dgeom() is more accurate now, notably when its result is very
    small, fixing PR#18642 thanks to the proposal of Morten Welinder,
    also improving other instances where C level binom_raw(x, n, ..)
    has x == 0 or x== n.
  * warning() with options(warn = 1) has improved output for
    multi-line messages.
  * axis.Date() and axis.POSIXct() now respect the par("lab") setting
    for the number of pretty() intervals.
  * Comparisons for language objects (which are based on deparsing)
    are now more careful about using accurate deparsed results
    (PR#18676).
  * Plain-text help (Rd2txt) now correctly preserves blank lines
    following single-line \dontrun code.
  * &lt;POSIXlt&gt;[*] no longer sets wrong "balanced" attribute, fixing
    PR#18681 thanks to Mikael Jagan.
  * str(&lt;classed-call&gt;) now deparses the call as expected, fixing
    PR#18684, reported by Dave Slager.
  * In Rd examples, code following the closing brace of a \dontrun,
    \dontshow or \donttest tag on the same line is no longer skipped
    when R CMD check runs the examples.
  * as.data.frame(matrix(*, ncol=0)) now gets valid names() and
    colnames(); reported by Davis Vaughan on the R-devel list.
  * Internal Mathlib function stirlerr(n) is now almost fully
    (52-bit) accurate for all n &gt;= ~5.9 and more accurate also in the
    range 1 -- 5.9.  This entails small ("after 12th decimal")
    changes in density functions, e.g., dgamma() in _some_ regions of
    their support.  The fix was partly prompted by Morten Welinder's
    PR#18640.
  * Numbers like 9876543.2 are now considered non-integer by Mathlib
    internal R_nonint(), amending original fix of PR#15734.
  * Rd comment lines no longer cause broken paragraphs in the
    rendered PDF and plain-text help. In code blocks, pure comment
    lines (starting with %) no longer produce an empty line.
  * xtabs(Freq ~ .) now consistently defaults to na.action = na.pass,
    using na.rm = FALSE (added as an argument) when summing over Freq
    (PR#17770).
  * tools::testInstalledPackage() is no longer silent about failures
    from running examples or tests and its return code no longer
    ignores failures from checking vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1718366400">- CHANGES IN R 4.4.1:
  C-LEVEL FACILITIES:
  * Functions R_atof and R_strtod declared in header R_ext/Utils.h
    are now documented in 'Writing R Extensions' and so formally part
    of the API.
  * The non-API entry points Rf_setSVector, Rf_StringFalse,
    Rf_StringTrue and Rf_isBlankString have been added to those
    reported by R CMD check.
  * The new function Rf_allocLang is now available. This provides an
    alternative to the idiom of calling Rf_allocList followed by
    SET_TYPEOF.
  UTILITIES:
  * R CMD check now reports as warnings what gfortran calls 'Fortran
    2018 deleted features', all of which have long been marked as
    'obsolescent' and some of which were deleted in Fortran 2008 or
    earlier.  Fortran compilers are no longer required to support
    these.
  BUG FIXES:
  * as.numeric(), scan(), type.convert() and other places which use
    the internal C function R_strtod now require a _non-empty_ digit
    sequence in a decimal or binary exponent.  This aligns with the
    C/POSIX standard for strtod and with ?NumericConstants.
  * as.data.frame(m, make.names=NA) now works correctly for a matrix
    m with NA's in row names.
  * The error message from &lt;POSIXlt&gt;[["hour"]] and similar now
    mentions *[[, "hour"]], as wished for in PR#17409 and proposed by
    Michael Chirico.
  * qbinom() and potentially qpois(), qnbinom(), no longer sometimes
    fail accurate inversion (of pbinom(), etc), thanks to Christopher
    Chang's report and patch in PR#18711.
  * The internal help server on Windows can again serve requests sent
    in quick succession, fixing a regression in R 4.4.0.
  * debugcall(&lt;S3Generic&gt;()) now also works when a corresponding
    S4-generic version is in the methods cache (PR#18143).
  * Package tools' toTitleCase(ch0) now returns character(0) when ch0
    is of zero length; fixing PR#18724, reported by David Hugh Jones.
  * R CMD check is no longer broken (without a check result and no
    explanation in 00check.log) for a package which declares an
    invalid VignetteBuilder in DESCRIPTION but has no vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1730376000">- CHANGES IN R 4.4.2:
  C-LEVEL FACILITIES:
  * The S-compatibility macros F77_COM and F77_COMDECL defined in
    header R_ext/RS.h are deprecated and will be removed shortly.  We
    could find no record of their use.
  BUG FIXES:
  * Mathlib function lgammacor(x) no longer warns about underflow to
    zero for large x.
  * Text widths and heights were incorrectly reported by the Quartz
    device if the drawing context didn't exist yet (typically when
    drawing off-screen to a window that is yet to appear, see
    PR#18591).
  * The Quartz device could segfault in cases where paths with spaces
    are used in the new glyph drawing API.  Thanks to Tomek
    Gieorgijewski (PR#18758).
  * On macOS in R CRAN builds, it is again possible to read
    little-endian UTF-16 text with a BOM from a connection using
    encoding="UTF-16".  Users building R from source should avoid
    using the system libiconv in macOS 14.1 and later.
  * methods' internal .requirePackage() now re-enables primitive
    method dispatch when needed; thanks to Ivan Krylov for
    demystifying CRAN package check failures on the R-devel mailing
    list.</changelog>
</package>
<package pkgid="e743745bd52cbcbd8e53883b2d5acfddbe0446d0e764ec81759fd42412a690283dec644d9d0d117f18edca9fb57accb6401662c140253c340eec19a5e6ccd2ea" name="R-utils-debuginfo" arch="x86_64">
  <version epoch="0" ver="4.4.2" rel="51.0.2.2.sr20241103"/>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1620302400">- To get in sync with d:l:R:autoCRAN the Matrix package's split
  in -devel was reversed.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339200">- improved spec file according to comments of dimstar in
  https://build.opensuse.org/request/show/892685</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1621339201">- CHANGES IN R 4.1.0:
  FUTURE DIRECTIONS:
  * It is planned that the 4.1.x series will be the last to support
    32-bit Windows, with production of binary packages for that
    series continuing until early 2023.
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Data set esoph in package datasets now provides the correct
    numbers of controls; previously it had the numbers of cases added
    to these.  (Reported by Alexander Fowler in PR#17964.)
  NEW FEATURES:
  * www.omegahat.net is no longer one of the repositories known by
    default to setRepositories().  (Nowadays it only provides source
    packages and is often unavailable.)
  * Function package_dependencies() (in package tools) can now use
    different dependency types for direct and recursive dependencies.
  * The checking of the size of tarball in R CMD check --as-cran
    &lt;pkg&gt; may be tweaked via the new environment variable
    _R_CHECK_CRAN_INCOMING_TARBALL_THRESHOLD_, as suggested in
    PR#17777 by Jan Gorecki.
  * Using c() to combine a factor with other factors now gives a
    factor, an ordered factor when combining ordered factors with
    identical levels.
  * apply() gains a simplify argument to allow disabling of
    simplification of results.
  * The format() method for class "ftable" gets a new option justify.
    (Suggested by Thomas Soeiro.)
  * New ...names() utility.  (Proposed by Neal Fultz in PR#17705.)
  * type.convert() now warns when its as.is argument is not
    specified, as the help file always said it _should_.  In that
    case, the default is changed to TRUE in line with its change in
    read.table() (related to stringsAsFactor) in R 4.0.0.
  * When printing list arrays, classed objects are now shown _via_
    their format() value if this is a short enough character string,
    or by giving the first elements of their class vector and their
    length.
  * capabilities() gets new entry "Rprof" which is TRUE when R has
    been configured with the equivalent of --enable-R-profiling (as
    it is by default).  (Related to Michael Orlitzky's report
    PR#17836.)
  * str(xS4) now also shows extraneous attributes of an S4 object
    xS4.
  * Rudimentary support for vi-style tags in rtags() and R CMD rtags
    has been added.  (Based on a patch from Neal Fultz in PR#17214.)
  * checkRdContents() is now exported from tools; it and also
    checkDocFiles() have a new option chkInternal allowing to check
    Rd files marked with keyword "internal" as well.  The latter can
    be activated for R CMD check via environment variable
    _R_CHECK_RD_INTERNAL_TOO_.
  * New functions numToBits() and numToInts() extend the raw
    conversion utilities to (double precision) numeric.
  * Functions URLencode() and URLdecode() in package utils now work
    on vectors of URIs.  (Based on patch from Bob Rudis submitted
    with PR#17873.)
  * path.expand() can expand ~user on most Unix-alikes even when
    readline is not in use.  It tries harder to expand ~, for example
    should environment variable HOME be unset.
  * For HTML help (both dynamic and static), Rd file links to help
    pages in external packages are now treated as references to
    topics rather than file names, and fall back to a file link only
    if the topic is not found in the target package. The earlier rule
    which prioritized file names over topics can be restored by
    setting the environment variable _R_HELP_LINKS_TO_TOPICS_ to a
    false value.
  * c() now removes NULL arguments before dispatching to methods,
    thus simplifying the implementation of c() methods, _but_ for
    back compatibility keeps NULL when it is the first argument.
    (From a report and patch proposal by Lionel Henry in PR#17900.)
  * Vectorize()'s result function's environment no longer keeps
    unneeded objects.
  * Function ...elt() now propagates visibility consistently with
    ..n.  (Thanks to Lionel Henry's PR#17905.)
  * capture.output() no longer uses non-standard evaluation to
    evaluate its arguments.  This makes evaluation of functions like
    parent.frame() more consistent.  (Thanks to Lionel Henry's
    PR#17907.)
  * packBits(bits, type="double") now works as inverse of
    numToBits().  (Thanks to Bill Dunlap's proposal in PR#17914.)
  * curlGetHeaders() has two new arguments, timeout to specify the
    timeout for that call (overriding getOption("timeout")) and TLS
    to specify the minimum TLS protocol version to be used for
    https:// URIs (_inter alia_ providing a means to check for sites
    using deprecated TLS versions 1.0 and 1.1).
  * For nls(), an optional constant scaleOffset may be added to the
    denominator of the relative offset convergence test for cases
    where the fit of a model is expected to be exact, thanks to a
    proposal by John Nash.  nls(*, trace=TRUE) now also shows the
    convergence criterion.
  * Numeric differentiation _via_ numericDeriv() gets new optional
    arguments eps and central, the latter for taking central divided
    differences.  The latter can be activated for nls() via
    nls.control(nDcentral = TRUE).
  * nls() now passes the trace and control arguments to getInitial(),
    notably for all self-starting models, so these can also be fit in
    zero-noise situations via a scaleOffset.  For this reason, the
    initial function of a selfStart model must now have ... in its
    argument list.
  * bquote(splice = TRUE) can now splice expression vectors with
    attributes: this makes it possible to splice the result of
    parse(keep.source = TRUE).  (Report and patch provided by Lionel
    Henry in PR#17869.)
  * textConnection() gets an optional name argument.
  * get(), exists(), and get0() now signal an error if the first
    argument has length greater than 1.  Previously additional
    elements were silently ignored.  (Suggested by Antoine Fabri on
    R-devel.)
  * R now provides a shorthand notation for creating functions, e.g.
    \(x) x + 1 is parsed as function(x) x + 1.
  * R now provides a simple native forward pipe syntax |&gt;.  The
    simple form of the forward pipe inserts the left-hand side as the
    first argument in the right-hand side call.  The pipe
    implementation as a syntax transformation was motivated by
    suggestions from Jim Hester and Lionel Henry.
  * all.equal(f, g) for functions now by default also compares their
    environment(.)s, notably via new all.equal method for class
    function.  Comparison of nls() fits, e.g., may now need
    all.equal(m1, m2, check.environment = FALSE).
  * .libPaths() gets a new option include.site, allowing to _not_
    include the site library.  (Thanks to Dario Strbenac's suggestion
    and Gabe Becker's PR#18016.)
  * Lithuanian translations are now available.  (Thanks to Rimantas
    Zakauskas.)
  * names() now works for DOTSXP objects.  On the other hand, in
    R-lang, the R language manual, we now warn against relying on the
    structure or even existence of such dot-dot-dot objects.
  * all.equal() no longer gives an error on DOTSXP objects.
  * capabilities("cairo") now applies only to the file-based devices
    as it is now possible (if very unusual) to build R with Cairo
    support for those but not for X11().
  * There is optional support for tracing the progress of
    loadNamespace() - see its help.
  * (Not Windows.)  l10n_info() reports an additional element, the
    name of the encoding as reported by the OS (which may differ from
    the encoding part (if any) of the result from
    Sys.getlocale("LC_CTYPE").
  * New function gregexec() which generalizes regexec() to find _all_
    disjoint matches and well as all substrings corresponding to
    parenthesized subexpressions of the given regular expression.
    (Contributed by Brodie Gaslam.)
  * New function charClass() in package utils to query the
    wide-character classification functions in use (such as
    iswprint).
  * The names of quantile()'s result no longer depend on the global
    getOption("digits"), but quantile() gets a new optional argument
    digits = 7 instead.
  * grep(), sub(), regexp and variants work considerably faster for
    long factors with few levels.  (Thanks to Michael Chirico's
    PR#18063.)
  * Provide grouping of x11() graphics windows within a window
    manager such as Gnome or Unity; thanks to a patch by Ivan Krylov
    posted to R-devel.
  * The split() method for class data.frame now allows the f argument
    to be specified as a formula.
  * sprintf now warns on arguments unused by the format string.
  * New palettes "Rocket" and "Mako" for hcl.colors() (approximating
    palettes of the same name from the 'viridisLite' package).
    Contributed by Achim Zeileis.
  * The base environment and its namespace are now locked (so one can
    no longer add bindings to these or remove from these).
  * Rterm handling of multi-byte characters has been improved,
    allowing use of such characters when supported by the current
    locale.
  * Rterm now accepts ALT+ +xxxxxxxx sequences to enter Unicode
    characters as hex digits.
  * Environment variable LC_ALL on Windows now takes precedence over
    LC_CTYPE and variables for other supported categories, matching
    the POSIX behaviour.
  * duplicated() and anyDuplicated() are now optimized for integer
    and real vectors that are known to be sorted via the ALTREP
    framework. Contributed by Gabriel Becker via PR#17993.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 14
    and so packages that provide graphics devices should be
    reinstalled.
  * Graphics devices should now specify deviceVersion to indicate
    what version of the graphics engine they support.
  * Graphics devices can now specify deviceClip.  If TRUE, the
    graphics engine will never perform any clipping of output itself.
    The clipping that the graphics engine does perform (for both
    canClip = TRUE and canClip = FALSE) has been improved to avoid
    producing unnecessary artifacts in clipped output.
  * The grid package now allows gpar(fill) to be a linearGradient(),
    a radialGradient(), or a pattern().  The viewport(clip) can now
    also be a grob, which defines a clipping path, and there is a new
    viewport(mask) that can also be a grob, which defines a mask.
    These new features are only supported so far on the Cairo-based
    graphics devices and on the pdf() device.
  * (Not Windows.)  A warning is given when a Cairo-based type is
    specified for a png(), jpeg(), tiff() or bmp() device but Cairo
    is unsupported (so type = "Xlib" is tried instead).
  * grSoftVersion() now reports the versions of FreeType and
    FontConfig if they are used directly (not _via_ Pango), as is
    most commonly done on macOS.
  C-LEVEL FACILITIES:
  * The _standalone_ libRmath math library and R's C API now provide
    log1pexp() again as documented, and gain log1mexp().
  INSTALLATION on a UNIX-ALIKE:
  * configure checks for a program pkgconf if program pkg-config is
    not found.  These are now only looked for on the path (like
    almost all other programs) so if needed specify a full path to
    the command in PKG_CONFIG, for example in file config.site.
  * C99 function iswblank is required - it was last seen missing ca
    2003 so the workaround has been removed.
  * There are new configure options --with-internal-iswxxxxx,
  - -with-internal-towlower and --with-internal-wcwidth which allows
    the system functions for wide-character classification,
    case-switching and width (wcwidth and wcswidth) to be replaced by
    internal ones.  The first has long been used on macOS, AIX (and
    Windows) but this enables it to be unselected there and selected
    for other platforms (it is the new default on Solaris).  The
    second is new in this version of R and is selected by default on
    macOS and Solaris.  The third has long been the default and
    remains so as it contains customizations for East Asian
    languages.
    System versions of these functions are often minimally
    implemented (sometimes only for ASCII characters) and may not
    cover the full range of Unicode points: for example Solaris (and
    Windows) only cover the Basic Multilingual Plane.
  * Cairo installations without X11 are more likely to be detected by
    configure, when the file-based Cairo graphics devices will be
    available but not X11(type = "cairo").
  * There is a new configure option --with-static-cairo which is the
    default on macOS.  This should be used when only static cairo
    (and where relevant, Pango) libraries are available.
  * Cairo-based graphics devices on platforms without Pango but with
    FreeType/FontConfig will make use of the latter for font
    selection.
  LINK-TIME OPTIMIZATION on a UNIX-ALIKE:
  * Configuring with flag --enable-lto=R now also uses LTO when
    installing the recommended packages.
  * R CMD INSTALL and R CMD SHLIB have a new flag --use-LTO to use
    LTO when compiling code, for use with R configured with
  - -enable-lto=R.  For R configured with --enable-lto, they have
    the new flag --no-use-LTO.
    Packages can opt in or out of LTO compilation _via_ a UseLTO
    field in the DESCRIPTION file.  (As usual this can be overridden
    by the command-line flags.)
  BUILDING R on Windows:
  * for GCC &gt;= 8, FC_LEN_T is defined in config.h and hence character
    lengths are passed from C to Fortran in _inter alia_ BLAS and
    LAPACK calls.
  * There is a new text file src/gnuwin32/README.compilation, which
    outlines how C/Fortran code compilation is organized and
    documents new features:
  * R can be built with Link-Time Optimization with a suitable
    compiler - doing so with GCC 9.2 showed several
    inconsistencies which have been corrected.
  * There is support for cross-compiling the C and Fortran code
    in R and standard packages on suitable (Linux) platforms.
    This is mainly intended to allow developers to test later
    versions of compilers - for example using GCC 9.2 or 10.x has
    detected issues that GCC 8.3 in Rtools40 does not.
  * There is experimental support for cross-building R packages
    with C, C++ and/or Fortran code.
  * The R installer can now be optionally built to support a single
    architecture (only 64-bit or only 32-bit).
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++14 where
    available (which it is on all currently checked platforms): if
    not (as before) C++11 is used if available otherwise C++ is not
    supported.
    Packages which specify C++11 will still be installed using C++11.
    C++14 compilers may give deprecation warnings, most often for
    std::random_shuffle (deprecated in C++14 and removed in C++17).
    Either specify C++11 (see 'Writing R Extensions') or modernize
    the code and if needed specify C++14.  The latter has been
    supported since R 3.4.0 so the package's DESCRIPTION would need
    to include something like
    Depends: R (&gt;= 3.4)
  PACKAGE INSTALLATION on Windows:
  * R CMD INSTALL and R CMD SHLIB make use of their flag --use-LTO
    when the LTO_OPT make macro is set in file etc/${R_ARCH}/Makeconf
    or in a personal/site Makevars file.  (For details see 'Writing R
    Extensions' SS4.5.)
    This provides a valuable check on code consistency.  It does work
    with GCC 8.3 as in Rtools40, but that does not detect everything
    the CRAN checks with current GCC do.
  PACKAGE INSTALLATION on macOS:
  * The default personal library directory on builds with
  - -enable-aqua (including CRAN builds) now differs by CPU type,
    one of
    ~/Library/R/x86_64/x.y/library
    ~/Library/R/arm64/x.y/library
    This uses the CPU type R (and hence the packages) were built for,
    so when a x86_64 build of R is run under Rosetta emulation on an
    arm64 Mac, the first is used.
  UTILITIES:
  * R CMD check can now scan package functions for bogus return
    statements, which were possibly intended as return() calls (wish
    of PR#17180, patch by Sebastian Meyer). This check can be
    activated via the new environment variable
    _R_CHECK_BOGUS_RETURN_, true for --as-cran.
  * R CMD build omits tarballs and binaries of previous builds from
    the top-level package directory.  (PR#17828, patch by Sebastian
    Meyer.)
  * R CMD check now runs sanity checks on the use of LazyData, for
    example that a data directory is present and that
    LazyDataCompression is not specified without LazyData and has a
    documented value.  For packages with large LazyData databases
    without specifying LazyDataCompression, there is a reference to
    the code given in 'Writing R Extensions' SS1.1.6 to test the
    choice of compression (as in all the CRAN packages tested a
    non-default method was preferred).
  * R CMD build removes LazyData and LazyDataCompression fields from
    the DESCRIPTION file of packages without a data directory.
  ENCODING-RELATED CHANGES:
  * The parser now treats \Unnnnnnnn escapes larger than the upper
    limit for Unicode points (\U10FFFF) as an error as they cannot be
    represented by valid UTF-8.
    Where such escapes are used for outputting non-printable
    (including unassigned) characters, 6 hex digits are used (rather
    than 8 with leading zeros).  For clarity, braces are used, for
    example \U{0effff}.
  * The parser now looks for non-ASCII spaces on Solaris (as
    previously on most other OSes).
  * There are warnings (including from the parser) on the use of
    unpaired surrogate Unicode points such as \uD834.  (These cannot
    be converted to valid UTF-8.)
  * Functions nchar(), tolower(), toupper() and chartr() and those
    using regular expressions have more support for inputs with a
    marked Latin-1 encoding.
  * The character-classification functions used (by default) to
    replace the system iswxxxxx functions on Windows, macOS and AIX
    have been updated to Unicode 13.0.0.
    The character-width tables have been updated to include new
    assignments in Unicode 13.0.0.
  * The code for evaluating default (extended) regular expressions
    now uses the same character-classification functions as the rest
    of R (previously they differed on Windows, macOS and AIX).
  * There is a build-time option to replace the system's
    wide-character wctrans C function by tables shipped with R: use
    configure option --with-internal-towlower or (on Windows)
  - DUSE_RI18N_CASE in CFLAGS when building R.  This may be needed
    to allow tolower() and toupper() to work with Unicode characters
    beyond the Basic Multilingual Plane where not supported by system
    functions (e.g. on Solaris where it is the new default).
  * R is more careful when truncating UTF-8 and other multi-byte
    strings that are too long to be printed, passed to the system or
    libraries or placed into an internal buffer.  Truncation will no
    longer produce incomplete multibyte characters.
  DEPRECATED AND DEFUNCT:
  * Function plclust() from the package stats and
    package.dependencies(), pkgDepends(), getDepList(),
    installFoundDepends(), and vignetteDepends() from package tools
    are defunct.
  * Defunct functions checkNEWS() and readNEWS() from package tools
    and CRAN.packages() from utils have been removed.
  * R CMD config CXXCPP is defunct (it was deprecated in R 3.6.2).
  * parallel::detectCores() drops support for Irix (retired in 2013).
  * The LINPACK argument to chol.default(), chol2inv(),
    solve.default() and svd() has been defunct since R 3.1.0.  It was
    silently ignored up to R 4.0.3 but now gives an error.
  * Subsetting/indexing, such as ddd[*] or ddd$x on a DOTSXP
    (dot-dot-dot) object ddd has been disabled; it worked by accident
    only and was undocumented.
  BUG FIXES:
  * Many more C-level allocations (mainly by malloc and strdup) are
    checked for success with suitable alternative actions.
  * Bug fix for replayPlot(); this was turning off graphics engine
    display list recording if a recorded plot was replayed in the
    same session.  The impact of the bug became visible if resize the
    device after replay OR if attempted another savePlot() after
    replay (empty display list means empty screen on resize or empty
    saved plot).
  * R CMD check etc now warn when a package exports non-existing S4
    classes or methods, also in case of no "methods" presence.
    (Reported by Alex Bertram; reproducible example and patch by
    Sebastian Meyer in PR#16662.)
  * boxplot() now also accepts calls for labels such as ylab, the
    same as plot().  (Reported by Marius Hofert.)
  * The help page for xtabs() now correctly states that addNA is
    setting na.action = na.pass among others.  (Reported as PR#17770
    by Thomas Soeiro.)
  * The R CMD check &lt;pkg&gt; gives a longer and more comprehensible
    message when DESCRIPTION misses dependencies, e.g., in Imports:.
    (Thanks to the contributors of PR#17179.)
  * update.default() now calls the generic update() on the formula to
    work correctly for models with extended formulas.  (As reported
    and suggested by Neal Fultz in PR#17865.)
  * The horizontal position of leaves in a dendrogram is now correct
    also with center = FALSE.  (PR#14938, patch from Sebastian
    Meyer.)
  * all.equal.POSIXt() no longer warns about and subsequently ignores
    inconsistent "tzone" attributes, but describes the difference in
    its return value (PR#17277).  This check can be disabled _via_
    the new argument check.tzone = FALSE as suggested by Sebastian
    Meyer.
  * as.POSIXct() now populates the "tzone" attribute from its tz
    argument when x is a logical vector consisting entirely of NA
    values.
  * x[[2^31]] &lt;- v now works.  (Thanks to the report and patch by
    Suharto Anggono in PR#17330.)
  * In log-scale graphics, axis() ticks and label positions are now
    computed more carefully and symmetrically in their range,
    typically providing _more_ ticks, fulfilling wishes in PR#17936.
    The change really corresponds to an improved axisTicks() (package
    grDevices), potentially influencing grid and lattice, for
    example.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now correct to at
    least five digits where it was catastrophically wrong,
    previously.
  * sum(df) and similar "Summary"- and "Math"-group member functions
    now work for data frames df with logical columns, notably also of
    zero rows.  (Reported to R-devel by Martin "b706".)
  * unsplit() had trouble with tibbles due to unsound use of rep(NA,
    len)-indexing, which should use NA_integer_ (Reported to R-devel
    by Mario Annau.)
  * pnorm(x, log.p = TRUE) underflows to -Inf slightly later.
  * show(&lt;hidden S4 generic&gt;) prints better and without quotes for
    non-hidden S4 generics.
  * read.table() and relatives treated an "NA" column name as missing
    when check.names = FALSE PR#18007.
  * Parsing strings containing UTF-16 surrogate pairs such as
    "\uD834\uDD1E" works better on some (uncommon) platforms.
    sprintf("%X", utf8ToInt("\uD834\uDD1E")) should now give "1D11E"
    on all platforms.
  * identical(x,y) is no longer true for differing DOTSXP objects,
    fixing PR#18032.
  * str() now works correctly for DOTSXP and related exotics, even
    when these are doomed.
    Additionally, it no longer fails for lists with a class and
    "irregular" method definitions such that e.g. lapply(*) will
    necessarily fail, as currently for different igraph objects.
  * Too long lines in environment files (e.g. Renviron) no longer
    crash R. This limit has been increased to 100,000 bytes.
    (PR#18001.)
  * There is a further workaround for FreeType giving incorrect
    italic font faces with cairo-based graphics devices on macOS.
  * add_datalist(*, force = TRUE) (from package tools) now actually
    updates an existing data/datalist file for new content.  (Thanks
    to a report and patch by Sebastian Meyer in PR#18048.)
  * cut.Date() and cut.POSIXt() could produce an empty last interval
    for breaks = "months" or breaks = "years".  (Reported as PR#18053
    by Christopher Carbone.)
  * Detection of the encoding of 'regular' macOS locales such as
    en_US (which is UTF-8) had been broken by a macOS change:
    fortunately these are now rarely used with en_US.UTF-8 being
    preferred.
  * sub() and gsub(pattern, repl, x, *) now keep attributes of x such
    as names() also when pattern is NA (PR#18079).
  * Time differences ("difftime" objects) get a replacement and a
    rep() method to keep "units" consistent.  (Thanks to a report and
    patch by Nicolas Bennett in PR#18066.)
  * The \RdOpts macro, setting defaults for \Sexpr options in an Rd
    file, had been ineffective since R 2.12.0: it now works again.
    (Thanks to a report and patch by Sebastian Meyer in PR#18073.)
  * mclapply and pvec no longer accidentally terminate parallel
    processes started before by mcparallel or related calls in
    package parallel (PR#18078).
  * grep and other functions for evaluating (extended) regular
    expressions handle in Unicode also strings not explicitly flagged
    UTF-8, but flagged native when running in UTF-8 locale.
  * Fixed a crash in fifo implementation on Windows (PR#18031).
  * Binary mode in fifo on Windows is now properly detected from
    argument open (PR#15600, PR#18031).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1622808000">- The line %{__install} -m 755 -d %{_infodir}
  no longer works in TW or Factory.
  But without that line it works everywhere. So this instruction
  was commented out of the spec file.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1628596800">- CHANGES IN R 4.1.1:
  NEW FEATURES:
  * require(pkg, quietly = TRUE) is quieter and in particular does
    not warn if the package is not found.
  DEPRECATED AND DEFUNCT:
  * Use of ftp:// URIs should be regarded as deprecated, with
    on-going support confined to method = "libcurl" and not routinely
    tested.  (Nowadays no major browser supports them.)
  * The non-default method = "internal" is deprecated for http:// and
    ftp:// URIs for both download.file and url.
  * On Windows, method = "wininet" is deprecated for http://,
    https:// and ftp:// URIs for both download.file and url.  (A
    warning is only given for ftp://.)
    For ftp:// URIs the default method is now "libcurl" if available
    (which it is on CRAN builds).
    method = "wininet" remains the default for http:// and https://
    URIs but if libcurl is available, using method = "libcurl" is
    preferred.
  INSTALLATION:
  * make check now works also without a LaTeX installation.  (Thanks
    to Sebastian Meyer's PR#18103.)
  BUG FIXES:
  * make check-devel works again in an R build configured with
  - -without-recommended-packages.
  * qnbinom(p, size, mu) for large size/mu is correct now in a range
    of cases (PR#18095); similarly for the (size, prob)
    parametrization of the negative binomial.  Also qpois() and
    qbinom() are better and or faster for extreme cases.  The
    underlying C code has been modularized and is common to all four
    cases of discrete distributions.
  * gap.axis is now part of the axis() arguments which are passed
    from bxp(), and hence boxplot().  (Thanks to Martin Smith's
    report and suggestions in PR#18109.)
  * .First and .Last can again be set from the site profile.
  * seq.int(from, to, *) and seq.default(..) now work better in large
    range cases where from-to is infinite where the two boundaries
    are finite.
  * all.equal(x,y) now returns TRUE correctly also when several
    entries of abs(x) and abs(y) are close to .Machine$double.xmax,
    the largest finite numeric.
  * model.frame() now clears the object bit when removing the class
    attribute of a value via na.action (PR#18100).
  * charClass() now works with multi-character strings on Windows
    (PR#18104, fixed by Bill Dunlap).
  * encodeString() on Solaris now works again in Latin-1 encoding on
    characters represented differently in UTF-8.  Support for
    surrogate pairs on Solaris has been improved.
  * file.show() on Windows now works with non-ASCII path names
    representable in the current native encoding (PR#18132).
  * Embedded R on Windows can now find R home directory via the
    registry even when installed only for the current user
    (PR#18135).
  * pretty(x) with finite x now returns finite values also in the
    case where the extreme x values are close in size to the maximal
    representable number .Machine$double.xmax.
    Also, it's been tweaked for very small ranges and when a boundary
    is close (or equal) to zero; e.g., pretty(c(0,1e-317)) no longer
    has negative numbers, currently still warning about a very small
    range, and pretty(2^-(1024 - 2^-1/(c(24,10)))) is more accurate.
  * The error message for not finding vignette files when weaving has
    correct file sizes now. (Thanks to Sebastian Meyer's PR#18154.)
  * dnbinom(20, &lt;large&gt;, 1) now correctly gives 0, and similar cases
    are more accurate with underflow precaution.  (Reported by Francisco Vera Alcivar in PR#18072.)</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635163200">- repaired https://bugzilla.suse.com/show_bug.cgi?id=1191380
  (rpmacros now go to rpmmacrodir)
- minor clean-ups in spec file</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1635768000">- CHANGES IN R 4.1.2:
  C-LEVEL FACILITIES:
  * The workaround in headers R.h and Rmath.h (using namespace std;)
    for the Oracle Developer Studio compiler is no longer needed now
    C++11 is required so has been removed.  A couple more usages of
    log() (which should have been std::log()) with an int argument
    are reported on Solaris.
  * The undocumented limit of 4095 bytes on messages from the
    S-compatibility macros PROBLEM and MESSAGE is now documented and
    longer messages will be silently truncated rather than
    potentially causing segfaults.
  * If the R_NO_SEGV_HANDLER environment variable is non-empty, the
    signal handler for SEGV/ILL/BUS signals (which offers recovery
    user interface) is not set. This allows more reliable debugging
    of crashes that involve the console.
  DEPRECATED AND DEFUNCT:
  * The legacy S-compatibility macros PROBLEM, MESSAGE, ERROR, WARN,
    WARNING, RECOVER, ... are deprecated and will be hidden in R
    4.2.0. R's native interface of Rf_error and Rf_warning has long
    been preferred.
  BUG FIXES:
  * .mapply(F, dots, .) no longer segfaults when dots is not a list
    and uses match.fun(F) as always documented; reported by Andrew
    Simmons in PR#18164.
  * hist(&lt;Date&gt;, ...) and hist(&lt;POSIXt&gt;, ...)  no longer pass
    arguments for rect() (such as col and density) to axis().
    (Thanks to Sebastian Meyer's PR#18171.)
  * \Sexpr{ch} now preserves Encoding(ch). (Thanks to report and
    patch by Jeroen Ooms in PR#18152.)
  * Setting the RNG to "Marsaglia-Multicarry" e.g., by RNGkind(), now
    warns in more places, thanks to Andr'e Gillibert's report and
    patch in PR#18168.
  * gray(numeric(), alpha=1/2) no longer segfaults, fixing PR#18183,
    reported by Till Krenz.
  * Fixed dnbinom(x, size=&lt;very_small&gt;, .., log=TRUE) regression,
    reported by Martin Morgan.
  * as.Date.POSIXlt(x) now keeps names(x), thanks to Davis Vaughan's
    report and patch in PR#18188.
  * model.response() now strips an "AsIs" class typically, thanks to
    Duncan Murdoch's report and other discussants in PR#18190.
  * try() is considerably faster in case of an error and long call,
    as e.g., from some do.call().  Thanks to Alexander Kaever's
    suggestion posted to R-devel.
  * qqline(y = &lt;object&gt;) such as y=I(.), now works, see also
    PR#18190.
  * Non-integer mgp par() settings are now handled correctly in
    axis() and mtext(), thanks to Mikael Jagan and Duncan Murdoch's
    report and suggestion in PR#18194.
  * formatC(x) returns length zero character() now, rather than ""
    when x is of length zero, as documented, thanks to Davis
    Vaughan's post to R-devel.
  * removeSource(fn) now retains (other) attributes(fn).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1647000000">- CHANGES IN R 4.1.3:
  NEW FEATURES:
  * The default version of Bioconductor has been changed to 3.14.
    (This is used by setRepositories and the menus in GUIs.)
  UTILITIES:
  * R CMD check --as-cran has a workaround for a bug in versions of
    file up to at least 5.41 which mis-identify DBF files last
    changed in 2022 as executables.
  C-LEVEL FACILITIES:
  * The legacy S-compatibility macros SINGLE_* in R_ext/Constants.h
    (included by R.h) are deprecated and will be removed in R 4.2.0.
  BUG FIXES:
  * Initialization of self-starting nls() models with initialization
    functions following the pre-R-4.1.0 API (without the ...
    argument) works again for now, with a deprecation warning.
  * Fixed quoting of ~autodetect~ in Java setting defaults to avoid
    inadvertent user lookup due to leading ~, reported in PR#18231 by
    Harold Gutch.
  * substr(., start, stop) &lt;- v now treats _negative_ stop values
    correctly.  Reported with a patch in PR#18228 by Brodie Gaslam.
  * Subscripting an array x without dimnames by a
    length(dim(x))-column character matrix gave "random" non-sense,
    now an error; reported in PR#18244 by Mikael Jagan.
  * ...names() now matches names(list(...)) closely, fixing PR#18247.
  * all.equal(*, scale = s) now works as intended when length(s) &gt; 1,
    partly thanks to Michael Chirico's PR#18272.
  * print(x) for long vectors x now also works for named atomic
    vectors or lists and prints the correct number when reaching the
    getOption("max.print") limit; partly thanks to a report and
    proposal by Hugh Parsonage to the R-devel list.
  * all.equal(&lt;selfStart&gt;, *) no longer signals a deprecation
    warning.
  * reformulate(*, response=r) gives a helpful error message now when
    length(r) &gt; 1, thanks to Bill Dunlap's PR#18281.
  * Modifying globalCallingHandlers inside withCallingHandlers() now
    works or fails correctly, thanks to Henrik Bengtsson's PR#18257.
  * hist(&lt;Date&gt;, breaks = "days") and hist(&lt;POSIXt&gt;, breaks = "secs")
    no longer fail for inputs of length 1.
  * qbeta(.001, .9, .009) and similar cases now converge correctly
    thanks to Ben Bolker's report in PR#17746.
  * window(x, start, end) no longer wrongly signals "'start' cannot
    be after 'end'", fixing PR#17527 and PR#18291.
  * data() now checks that its (rarely used) list argument is a
    character vector - a couple of packages passed other types and
    gave incorrect results.
  * which() now checks its arr.ind argument is TRUE rather coercing
    to logical and taking the first element - which gave incorrect
    results in package code.
  * model.weights() and model.offset() more carefully extract their
    model components, thanks to Ben Bolker and Tim Taylor's R-devel
    post.
  * list.files(recursive = TRUE) now shows all broken symlinks
    (previously, some of them may have been omitted, PR#18296).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1650628800">- CHANGES IN R 4.2.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * The formula method of aggregate() now matches the generic in
    naming its first argument x (resolving PR#18299 by Thomas
    Soeiro).
    This means that calling aggregate() with a formula as a named
    first argument requires name formula in earlier versions of R and
    name x now, so portable code should not name the argument (code
    in many packages did).
  * Calling &amp;&amp; or || with either argument of length greater than one
    now gives a warning (which it is intended will become an error).
  * Calling if() or while() with a condition of length greater than
    one gives an error rather than a warning.  Consequently,
    environment variable _R_CHECK_LENGTH_1_CONDITION_ no longer has
    any effect.
  * Windows users should consult the WINDOWS section below for some
    profound changes including
  * Support for 32-bit builds has been dropped.
  * UTF-8 locales are used where available.
  * The default locations for the R installation and personal
    library folder have been changed.
    Thanks to Tomas Kalibera for months of work on the Windows port
    for this release.
  NEW FEATURES:
  * matrix(x, n, m) now warns in more cases where length(x) differs
    from n * m, as suggested by Abby Spurdle and Wolfgang Huber in
    Feb 2021 on the R-devel mailing list.
    This warning can be turned into an error by setting environment
    variable _R_CHECK_MATRIX_DATA_ to TRUE: R CMD check --as-cran
    does so unless it is already set.
  * Function file_test() in package utils gains tests for symlinks,
    readability and writability.
  * capabilities("libxml") is now false.
    The description of capabilities("http/ftp") now reflects that it
    refers to the default method, no longer the internal one.
  * simplify2array() gains an except argument for controlling the
    exceptions used by sapply().
  * Environment variables R_LIBS_USER and R_LIBS_SITE are both now
    set to the R system default if unset or empty, and can be set to
    NULL to indicate an empty list of user or site library
    directories.
  * The warning for axis()(-like) calls in cases of relatively small
    ranges (typically in log-scale situations) is slightly improved
    _and_ suppressed from explicit calls to .axisPars() as has always
    been the intention.
  * The contrasts setter function `contrasts&lt;-` gains an explicit
    default how.many = NULL rather than just using missing(how.many).
  * grid.pretty() gains a new optional argument n = 5.
  * There is a new function .pretty() with option bounds as a
    technical-utility version of pretty().  It and pretty() gain a
    new argument f.min with a better than back-compatible default.
  * Function grDevices::axisTicks() and related functions such as
    graphics::axis() work better, notably for the log scale; partly
    because of the pretty() improvements, but also because care is
    taken e.g., when ylim is finite but diff(ylim) is infinite.
  * nclass.FD() gains a digits option.
  * The R Mathlib internal C function bd0() (called indirectly from a
    dozen probability density and distribution functions such as
    dpois(), dbinom(), dgamma(), pgamma() _etc_) has been
    complemented by a more sophisticated and (mostly) more accurate C
    function ebd0(), currently called only by internal dpois_raw()
    improving accuracy for R level dpois() and potentially others
    calling it such as dnbinom(), dgamma() or pgamma().  (Thanks to
    Morten Welinder's PR#15628.)
  * write.ftable() gains sep = " " argument as suggested by Thomas
    Soeiro.
  * The names of the locale categories supported by R's
    Sys.getlocale() and Sys.setlocale() are now provided by variable
    .LC.categories in the base namespace.
  * The Date and POSIXt methods for hist() and the histogram method
    for plot() now also use the new default col = "lightgray" in
    consistency with the corresponding change to hist()'s default for
    R 4.0.0.
  * hist.default() gains new fuzz argument, and the histogram plot
    method no longer uses fractional axis ticks when displaying
    counts ("Frequency").
  * mapply() and hence Map() now also obey the "max-or-0-if-any"
    recycling rule, such that, e.g., Map(`+`, 1:3, 1[0]) is valid
    now.
  * as.character(&lt;obj&gt;) for "hexmode" or "octmode" objects now
    fulfils the important basic rule as.character(x)[j] ===
    as.character(x[j]).
  * The set utility functions, notably intersect() have been tweaked
    to be more consistent and symmetric in their two set arguments,
    also preserving a common mode.
  * substr(ch, start,end) &lt;- new now e.g., preserves names(ch); ditto
    for substring(), thanks to a patch from Brodie Gaslam.
  * plot(&lt;lm&gt;) gains a extend.ylim.f argument, in partial response to
    PR#15285; further PR#17784 is fixed thanks to several
    contributors and a patch by Elin Waring.  The Cook's dist
    contours get customizable via cook.col and cook.lty with a
    different default color and their legend is nicer by default and
    customizable via cook.legendChanges.
  * Attempting to subset an object that is not subsettable now
    signals an error of class notSubsettableError. The
    non-subsettable object is contained in the object field of the
    error condition.
  * Subscript-out-of-bounds errors are now signaled as errors of
    class subscriptOutOfBoundsError.
  * Stack-overflow errors are now signaled as errors inheriting from
    class stackOverflowError. See ?stackOverflowError for more
    details.
  * New partly experimental Sys.setLanguage() utility, solving the
    main problem of PR#18055.
  * gettext() and gettextf() get a new option trim = TRUE which when
    set to false allows translations for strings such as "Execution
    halted\n" typical for C code.
  * An experimental implementation of hash tables is now available.
    See ?hashtab for more details.
  * identical() gains a extptr.as.ref argument for requesting that
    external pointer objects be compared as reference objects.
  * reorder() gets an argument decreasing which it passes to sort()
    for level creation; based on the wish and patch by Thomas Soeiro
    in PR#18243.
  * as.vector() gains a data.frame method which returns a simple
    named list, also clearing a long standing 'FIXME' to enable
    as.vector(&lt;data.frame&gt;, mode="list").  This breaks code relying
    on as.vector(&lt;data.frame&gt;) to return the unchanged data frame.
  * legend() is now vectorized for arguments cex, x.intersp, and
    text.width.  The latter can now also be specified as a vector
    (one element for each column of the legend) or as NA for
    computing a proper column wise maximum value of strwidth(legend).
    The argument y.intersp can be specified as a vector with one
    entry for each row of the legend.
    legend() also gains new arguments title.cex and title.font.
    Thanks to Swetlana Herbrandt.
  * Deparsing no longer remaps attribute names dim, dimnames, levels,
    names and tsp to historical S-compatible names (which structure()
    maps back).
  * sample() and sample.int() have additional sanity checks on their
    size and n arguments.
    all.equal.numeric() gains a sanity check on its tolerance
    argument - calling all.equal(a, b, c) for three numeric vectors
    is a surprisingly common error.
    mean(na.rm =), rank(na.last =), barplot(legend.text =),
    boxplot(), contour(drawlabels =), polygon(border =) and
    methods::is(class2 =) have more robust sanity checks on their
    arguments.
    R CMD Rd2pdf (used by R CMD check) has a more robust sanity check
    on the format of \alias{} commands.
  * psigamma(x, deriv) for negative x now also works for deriv = 4
    and 5; their underlying C level dpsifn() is documented in
    'Writing R Extensions'.
  * The HTML help system now uses HTML5 (wish of PR#18149).
  * ks.test() now provides exact p-values also with ties and MC
    p-values in the two-sample (Smirnov) case.  By Torsten Hothorn.
  * ks.test() gains a formula interface, with y ~ 1 for the
    one-sample (Kolmogorov) test and y ~ group for the two-sample
    (Smirnov) test.  Contributed by Torsten Hothorn.
  * The return value from ks.test() now has class c("ks.test",
    "htest") - packages using try() need to take care to use
    inherits() and not == on the class.
  * New functions psmirnov(), qsmirnov() and rsmirnov() in package
    stats implementing the asymptotic and exact distributions of the
    two-sample Smirnov statistic.
  * iconv() now allows sub = "c99" to use C99-style escapes for UTF-8
    inputs which cannot be converted to encoding to.
  * In a forward pipe |&gt; expression it is now possible to use a named
    argument with the placeholder _ in the rhs call to specify where
    the lhs is to be inserted.  The placeholder can only appear once
    on the rhs.
  * The included LAPACK sources have been updated to version 3.10.0,
    except for the four Fortran 77 routines which 3.10.0 has
    re-implemented in Fortran 90 (where the older versions have been
    retained as the R build process does not support Fortran 90).
  * path.expand() and most other uses of tilde expansion now warn if
    a path would be too long if expanded.  (An exception is
    file.exists(), which silently returns false.)
  * trunc(&lt;Date&gt;, *) now supports units = "months" or "years" for
    consistency with the POSIXt method, thanks to Dirk Eddelbuettel's
    proposal in PR#18099.
  * list2DF() now checks that its arguments are of the same length,
    rather than use recycling.
  * The HTML help system has several new features: LaTeX-like math
    can be typeset using either KaTeX or MathJax, usage and example
    code is highlighted using Prism, and for dynamic help the output
    of examples and demos can be shown within the browser if the
    knitr package is installed. These features can be disabled by
    setting the environment variable _R_HELP_ENABLE_ENHANCED_HTML_ to
    a false value.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 15
    and so packages that provide graphics devices should be
    reinstalled.
  * The grid package now allows the user to specify a "vector" of
    pattern fills.  The fill argument to gpar() accepts a list of
    gradients and/or patterns and the functions linearGradient(),
    radialGradient(), and pattern() have a new group argument.
    Points grobs (data symbols) can now also have a pattern fill.
    The grobCoords() function now returns a more informative and
    complex result.
  * The grid package has new functions for drawing isolated groups:
    grid.group(), grid.define(), and grid.use().  These functions add
    compositing operators and affine transformations to R's graphics
    capabilities.
    The grid package also has new functions for stroking and filling
    paths: grid.stroke(), grid.fill(), and grid.fillStroke().
    A new function as.path() allows the user to specify the fill rule
    for a path that is to be used for clipping, stroking, or filling;
    available options are "winding" and "evenodd".  A new function
    as.mask() allows the user to specify the type of a mask;
    available options are "alpha" and "luminance".
    These new features are only supported so far (at most) on the
    Cairo-based graphics devices and on the pdf() device.
  * dev.capabilities() reports on device support for the new
    features.
  * par() now warns about unnamed non-character arguments to prevent
    misuse such as {usr &lt;- par("usr"); par(usr)}.
  INSTALLATION:
  * Facilities for accessing ftp:// sites are no longer tested
    (except _pro tem_ for curlGetHeaders()) as modern browsers have
    removed support.
  * R can now be built with DEFS = -DSTRICT_R_HEADERS .
  PACKAGE INSTALLATION:
  * R CMD INSTALL no longer tangles vignettes. This completes an R
    CMD build change in R 3.0.0 and affects packages built before R
    3.0.2. Such packages should be re-made with R CMD build to have
    the tangled R code of vignettes shipped with the tarball.
  * USE_FC_LEN_T will become the default: this uses the correct
    prototypes for Fortran BLAS/LAPACK routines called from C/C++,
    and requires adjustment of most such calls - see 'Writing R
    Extensions' SS6.6.2.  (This has been supported since R 3.6.2.)
  * Package installation speed for packages installed with
    keep.source has been improved. This resolve the issue reported by
    Ofek Shilon in PR#18236.
  UTILITIES:
  * R CMD check can optionally report files/directories left behind
    in home, /tmp (even though TMPDIR is set) and other directories.
    See the "R Internals" manual for details.
  * R CMD check now reports byte-compilation errors during
    installation.  These are not usually fatal but may result in
    parts of the package not being byte-compiled.
  * _R_CHECK_DEPENDS_ONLY_ can be applied selectively to examples,
    tests and/or vignettes in R CMD check: see the "R Internals"
    manual.
  * _R_CHECK_SRC_MINUS_W_IMPLICIT_ now defaults to true: recent
    versions of Apple clang on macOS have made implicit function
    declarations in C into a compilation error.
  * R CMD check --as-cran makes use of the environment variable
    AUTORECONF.  See the "R Internals" manual SS8 for further details.
  * R CMD check --use-valgrind also uses valgrind when re-building
    vignettes as some non-Sweave vignettes unhelpfully comment out
    all their code when R CMD check runs vignettes.
  * Errors in re-building vignettes (unless there are LaTeX errors)
    are reported by R CMD check as ERROR rather than WARNING when
    running vignettes has been skipped (as it frequently is in CRAN
    checks and by --as-cran).
  * R CMD Rd2pdf gains a --quiet option that is used by R CMD build
    when building the PDF package manual.
  * R CMD Rd2pdf now always runs LaTeX in batch mode, consistent with
    Texinfo &gt;= 6.7. The --batch option is ignored.
  * R CMD build and R CMD check now include the Rd file name and line
    numbers in the error message of an \Sexpr evaluation failure.
  * For packages using the \doi Rd macro (now an install-time \Sexpr)
    but no other dynamic Rd content, R CMD build now produces a
    smaller tarball and is considerably faster - skipping temporary
    package installation.
  C-LEVEL FACILITIES:
  * The non-API header R_ext/R-ftp-http.h is no longer provided, as
    the entry points it covered are now all defunct.
  * A number of non-API declarations and macro definitions have been
    moved from the installed header Rinternals.h to the internal
    header Defn.h. Packages that only use entry points and
    definitions documented to be part of the API as specified in
    'Writing R Extensions' SS6 should not be affected.
  * The macro USE_RINTERNALS no longer has any effect when compiling
    package code.  Packages which also use R_NO_REMAP will need to
    ensure that the remapped names are used for calls to API
    functions that were formerly also made available as macros.
  * The deprecated legacy S-compatibility macros PROBLEM, MESSAGE,
    ERROR, WARN, WARNING, RECOVER, ... are no longer defined in
    R_exts/RS.h (included by R.h).  Replace these by calls to
    Rf_error and Rf_warning (defined in header R_ext/Error.h included
    by R.h).
    Header R_ext/RS.h no longer includes R_ext/Error.h.
  * Header R_ext/Constants.h (included by R.h) when included from C++
    now includes the C++ header cfloat rather than the C header
    float.h (now possible as C++11 is required).
  * The legacy S-compatibility macros DOUBLE_* in R_ext/Constants.h
    (included by R.h) are deprecated.
  * The deprecated S-compatibility macros SINGLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * R_Calloc, R_Free and R_Realloc are preferred to their unprefixed
    forms and error messages now use the prefix. These forms were
    introduced in R 3.4.0 and are available even when
    STRICT_R_HEADERS is defined.
  * rmultinom has been documented in 'Writing R Extensions' SS6 so is
    now part of the R API.
  * Similarly, Rtanpi, called from R level tanpi() is now part of the
    R API.
  * The long-deprecated, undocumented and non-API entry point call_R
    is no longer declared in R_ext/RS.h (included by R.h).
  * The header S.h which has been unsupported since Jan 2016 has been
    removed.  Use R.h instead.
  DEPRECATED AND DEFUNCT:
  * The (non-default and deprecated) method = "internal" for
    download.file() and url() no longer supports http:// nor ftp://
    URIs.  (It is used only for file:// URIs.)
    On Windows, download.file(method = "wininet") no longer supports
    ftp:// URIs.  (It is no longer the default method, which is
    "libcurl" and does.)
    On Windows, the deprecated method = "wininet" now gives a warning
    for http:// and https:// URIs for both download.file() and url().
    (It is no longer the default method.)
  * On Windows, the command-line option --max-mem-size and
    environment variable R_MAX_MEM_SIZE are defunct.  The memory
    allocation limit was important for 32-bit builds, but these are
    no longer supported.
  * default.stringsAsFactors() is now formally deprecated, where that
    was only mentioned on its regular help page, previously.  So it
    now gives a warning if called.
  * unix.time() is defunct now; it had been deprecated since R 3.4.0.
  BUG FIXES:
  * Setting digits = 0 in format(), print.default() (and hence
    typically print()) or options() is again invalid.  Its behaviour
    was platform-dependent, and it is unclear what "zero significant
    digits" should mean (PR#18098).
  * Messages from C code in the cairo section of package grDevices
    are now also offered for translation, thanks to Michael Chirico's
    PR#18123.
  * mean(x) with finite x now is finite also without "long.double"
    capability.
  * R CMD Rd2pdf no longer leaves an empty build directory behind
    when it aborts due to an already existing output file.  (Thanks
    to Sebastian Meyer's PR#18141.)
  * density(x, weights = w, na.rm = TRUE) when anyNA(x) is true, now
    removes weights "in parallel" to x, fixing PR#18151, reported by
    Matthias Gondan.  Additionally, it gets a subdensity option.
  * Conversion of \Sexpr[]{&lt;expR&gt;} to LaTeX or HTML no longer
    produces long blocks of empty lines when &lt;expR&gt; itself contains
    several lines all producing empty output.  Thanks to a report and
    patch by Ivan Krylov posted to R-devel.
  * R CMD build no longer fails if a package vignette uses child
    documents and inst/doc exists.  (Thanks to Sebastian Meyer's
    PR#18156.)
  * When an R documentation ('help' source) file man/foo.Rd in a
    package has \donttest{..} examples with a syntax error, it is now
    signalled as ERROR and with correct line numbers relating to the
  * -Ex.R file, thanks to Duncan Murdoch and Sebastian Meyer's
    reports and patch proposals in PR#17501.
  * Improved determination of the correct translation domain in
    non-base packages, addressing the combination of PR#18092 and
    PR#17998 (#c6) with reports and _augmented_ patch #2904 by
    Suharto Anggono.
    Note that "R-base" is no longer the default domain e.g., for
    top-level calls to gettext(); rather translation needs explicit
    domain = * specification in such cases.
  * identical(attrib.as.set=FALSE) now works correctly with data
    frames with default row names (Thanks to Charlie Gao's PR#18179).
  * txtProgressBar() now enforces a non-zero width for argument char,
    without which no progress can be visible.
  * dimnames(table(d)) is more consistent in the case where d is a
    list with a single component, thanks to Thomas Soeiro's report to
    R-devel.
    Further, table(d1, d2) now gives an error when d1 and d2 are data
    frames as suggested by Thomas in PR#18224.
  * Fix for drawing semi-transparent lines and fills on the native
    Windows graphics device (PR#18219 and PR#16694).  Thanks to Nick
    Ray for helpful diagnosis on Bugzilla.
  * The deparser now wraps sub-expressions such as if(A) ..  with
    parentheses when needed; thanks to Duncan Murdoch's PR#18232 and
    Lionel Henry's patches there.
  * remove.packages() no longer tries to uninstall Priority: base
    packages, thanks to a report and suggestions by Colin Fay in
    PR#18227.
  * win.metafile() now has xpinch and ypinch arguments so that the
    user can override Windows' (potentially wrong) guess at device
    dimensions.
  * x[i] and x[[i]] for non-integer i should now behave in all cases
    as always documented: the index used is equivalent to
    as.integer(i) unless that would overflow where trunc(i) is used
    instead; thanks to Suharto Anggono's report and patch proposals
    in PR#17977.
  * asOneSidedFormula() now associates the resulting formula with the
    global environment rather than the evaluation environment created
    for the call.
  * &lt;bibentry&gt;$name now matches the field name case-insensitively,
    consistent with bibentry() creation and the replacement method.
  * cbind() failed to detect some length mismatches with a mixture of
    time-series and non-time-series inputs.
  * The default LaTeX style file Sweave.sty used by the RweaveLatex
    driver no longer loads the obsolete ae package; thanks to a
    report by Thomas Soeiro in PR#18271.  Furthermore, it now skips
    \usepackage[T1]{fontenc} for engines other than pdfTeX (if
    detected) or if the new [nofontenc] option is used.
  * smooth.spline() now stores its logical cv argument more safely,
    fixing a rare bug when printing, and also stores n.
  * smooth.spline(x,y,*) now computes the cv.crit statistic
    correctly, also when is.unsorted(x), fixing PR#18294.
  * The data.frame method of rbind() now warns when binding
    not-wholly-recycling vectors, by analogy to the default method
    (for matrices).
  * setAs() finds the correct class for name to when multiple
    packages define a class with that name. Thanks to Gabor Csardi
    for the report.
  * Fix for detaching a package when two classes of the same name are
    present in method signatures for the same generic. Thanks to
    Gabor Csardi for the report.
  * match.arg("", c("", "a", "B")) gives a better error message, in
    part from PR#17959, thanks to Elin Waring.
  * R CMD Sweave --clean no longer removes pre-existing files or
    subdirectories (PR#18242).
  * The quartz() device no longer splits polylines into subpaths.
    That has caused narrowly-spaced lines with many points to always
    look solid even when dashed line type was used due to dash phase
    restarts.
  * Deparsing constructs such as quote(1 + `!`(2) + 3) works again as
    before R 3.5.0, thanks to the report and patch in PR#18284 by
    Suharto Anggono.
  * as.list(f) for a factor f now keeps names(f), fixing PR#18309.
  * qbeta(.001, .9, .009) and analogous qf() calls now return a
    correct value instead of NaN or wrongly 1, all with a warning;
    thanks to the report by Ludger Goeminne in PR#18302.
  * plot.lm() failed to produce the plot of residuals vs.  factor
    levels (i.e., which=5 when leverages are constant) for models
    with character predictors (PR#17840).
  * interaction.plot(..., xtick = TRUE) misplaced the x-axis line
    (PR#18305).
  * Not strictly fixing a bug, format()ing and print()ing of
    non-finite Date and POSIXt values NaN and +/-Inf no longer show
    as NA but the respective string, e.g., Inf, for consistency with
    numeric vector's behaviour, fulfilling the wish of PR#18308.
  * R CMD check no longer runs test scripts generated from
    corresponding .Rin files twice and now signals an ERROR if
    processing an .Rin script fails.
  * tools::Rd2txt() used for plain-text help pages now renders \hrefs
    (if tools::Rd2txt_options(showURLs = TRUE)) and \urls with
    percent-encoding and standards-compliant delimiting style (angle
    brackets and no URL: prefix).  \email is now rendered with a
    mailto: prefix.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1655985600">- CHANGES IN R 4.2.1:
  NEW FEATURES:
  * New function utils::findCRANmirror() to find out if a CRAN mirror
    has been selected, otherwise fallback to the main site.  This
    behaves in the same way as tools::CRAN_package_db() and is
    intended for packages wishing to access CRAN for purposes other
    than installing packages.
    The need for this was shown by a day when the main CRAN website
    was offline and a dozen or so packages which had its URL
    hardcoded failed their checks.
  INSTALLATION on a UNIX-ALIKE:
  * The libraries searched for by --with-blas (without a value) now
    include BLIS (after OpenBLAS but before ATLAS).  And on macOS,
    the Accelerate framework (after ATLAS).  (This is patterned after
    the AX_BLAS macro from the Autoconf Archive.)
  * The included LAPACK sources have been updated to 3.10.1.
  UTILITIES:
  * The (full path to) the command tidy to be used for HTML
    validation can be set by environment variable R_TIDYCMD.
  * Setting environment variable _R_CHECK_RD_VALIDATE_RD2HTML_ to a
    false value will override R CMD check --as-cran and turn off HTML
    validation.  This provides a way to circumvent a problematic
    tidy.
    The 2006 version that ships with macOS is always skipped.
  C-LEVEL FACILITIES:
  * The undocumented legacy declarations of Sint, Sfloat, SINT_MAX
    and SINT_MIN in header R.h are deprecated.
  BUG FIXES:
  * fisher.test(d) no longer segfaults for "large" d; fixing PR#18336
    by preventing/detecting an integer overflow reliably.
  * tar(., files=*) now produces correctly the warning about invalid
    uid or gid of files, fixing PR#18344, reported by Martin Morgan.
  * tk_choose.files() with multi = FALSE misbehaved on paths
    containing spaces (PR#18334) (regression introduced in R 4.0.0).
  * sort(x, partial = ind, *) now works correctly notably for the
    non-default na.last = FALSE or TRUE, fixing PR#18335 reported by
    James Edwards.
  * Environment variable _R_CHECK_XREFS_REPOSITORIES_ is only used
    for checking .Rd cross-references in R CMD check (as documented)
    and not for other uses looking for a CRAN mirror.
  * The search for a CRAN mirror when checking packages now uses
    getOption("repos") if that specifies a CRAN mirror, even when it
    does not also specify all three Bioconductor repositories (as was
    previously required).
  * The HTML code generated by tools::Rd2HTML() has been improved to
    pass tidy 5.8.0.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1667217600">- CHANGES IN R 4.2.2:
  NEW FEATURES:
  * tools::Rdiff(useDiff = TRUE) checks for the presence of an
    external diff command and switches to useDiff = FALSE if none is
    found.  This allows R CMD Rdiff to always work.
  * On Windows, environment variable R_LIBCURL_SSL_REVOKE_BEST_EFFORT
    can be used to switch to only 'best-effort' SSL certificate
    revocation checks with the default "libcurl" download method.
    This reduces security, but may be needed for downloads to work
    with MITM proxies (PR#18379).
  * (macOS) The run-time check for libraries from XQuartz for X11 and
    Tcl/Tk no longer uses otool from the Apple Developer Tools
    (PR#18400).
  * The LaTeX style for producing the PDF manuals, Rd.sty, now loads
    the standard amsmath, amsfonts and amssymb packages for greater
    coverage of math commands in the Rd \eqn and \deqn macros.  The
    \mathscr LaTeX command is also provided (via the mathrsfs
    package, if available, or the amsfonts bundle otherwise),
    fulfilling the wish of PR#18398.
  * (Windows) The default format of readClipboard() and
    writeClipboard() has been changed to 13 (CF_UNICODETEXT).
  INSTALLATION on a UNIX-ALIKE:
  * The PDF manuals (if built) can be compacted by the new target
    make compact-pdf (at the top level or in directory doc/manual).
  * There is now configure support for LLVM clang 15 on Linux, which
    defaults to position-independent (PIE) executables whereas
    gfortran does not.
  * Many small changes to ease compilation (and suppress warnings)
    with LLVM clang 15.
  BUG FIXES:
  * Rscript -e would fail if stdin were closed (Reported by Henrik
    Bengtsson.)
  * qt(*, log.p=TRUE) in outer tails no longer produces NaN in its
    final steps, thus fixing PR#18360.
  * tools::Rd2latex() now escapes hashes and ampersands when writing
    URLs, fixing LaTeX errors with such URLs in \tabular.
  * When isGeneric(f, fdef=*) is used with mismatching names, the
    warning is better understandable; reported (with fix) in PR#18370
    by Gabe Becker.
  * poly(x, n) now works again (and is now documented) when x is a
    "Date" or "POSIXct" object, or of another class while fulfilling
    mode(x) == "numeric".  This also enables poly(x, *, raw=TRUE) for
    such variables.  Reported by Michael Chirico to R-devel.
  * write.table(), write.csv() and write.csv2() restore their
    numerical precision (internal equivalent of digits = 15) after an
    interrupt (PR#18384).
  * One can now read also byte FF from a clipboard connection
    (PR#18385).
  * source("") and source(character()) now give more helpful error
    messages.
  * R CMD check --as-cran set _R_CHECK_TIMINGS_ too late to have the
    intended effect.
  * as.POSIXlt(x) now also works with very large dates x, fixing
    PR#18401 reported by Hannes M"uhleisen.
  * Files can now be extracted even from very large zip archives
    (PR#18390, thanks to Martin Jakt).
  * Non-finite objects of class "POSIXlt" are now correctly coerced
    to classes "Date" and "POSIXct"; following up on the extension to
    format() them correctly.
  * Added methods for is.finite(), is.infinite() and is.nan() for
    "POSIXlt" date-time objects.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1678881600">- CHANGES IN R 4.2.3:
  C-LEVEL FACILITIES:
  * The definition of DL_FUNC in R_ext/Rdynload.h has been changed to
    be fully C-compliant.  This means that functions loaded _via_ for
    example R_GetCCallable need to be cast to an appropriate type if
    they have any arguments.
  * .Machine has a new element sizeof.time_t to identify old systems
    with a 32-bit type and hence a limited range of date-times (and
    limited support for dates millions of years from present).
  PACKAGE INSTALLATION:
  * (Windows) The default C++ standard had accidentally been left at
    C++11 when it was changed to C++14 on Unix.
  BUG FIXES:
  * As "POSIXlt" objects may be "partially filled" and their list
    components meant to be recycled, length() now is the length of
    the longest component.
  * as.POSIXlt.Date() could underflow for dates in the far past (more
    than half a million years BCE).
  * as.Date.POSIXlt(x) would return "1970-01-01" instead of NA in R
    4.2.2, e.g., for
    x &lt;- as.POSIXlt(c("2019-01-30","2001-1-1"))
    x$mon &lt;- c(0L, NA); as.Date(x)
  * R CMD check failed to apply enabled _R_CHECK_SUGGESTS_ONLY_ to
    examples and vignettes (regression in R 4.2.0).
  * R CMD check did not re-build vignettes in separate processes by
    default (regression in R 4.2.0).
  * Running examples from HTML documentation now restores previous
    knitr settings and options (PR#18420).
  * Quartz: fonts are now located using Core Graphics API instead of
    deprecated ATS which is no longer supported in the macOS 13 SDK
    (PR#18426).  This also addresses an issue where the currently
    used font in the Quartz device context was not correctly
    retained.
  * (Windows) Math symbols in text drawing functions are again
    rendered correctly (PR#18440).  This fixes a regression in R
    4.2.1 caused by a fix in PR#18382 which uncovered an issue in
    GraphApp due to which the symbol charset was not used with TT
    Symbol font face.
  * (Windows) Installing a package with a src/Makefile.{win,ucrt}
    file includes ~/.R/Makevars.win64 in the search for user
    makevars, as documented in "R Installation and Administration"
    and done for packages with a src/Makevars.{win,ucrt} file.
  * format(&lt;POSIXlt_w/_unbalanced_sec&gt;, "....%OS&lt;n&gt;") with n &gt; 0 no
    longer accidentally uses the unbalanced seconds, thanks to
    Suharto Anggono's report (including patch) in PR#18448.
  * solve.default(a, b) works around issues with some versions of
    LAPACK when a contains NA or NaN values.
  * When UseMethod() cannot dispatch, it no longer segfaults
    producing the error message in case of a long class(), thanks to
    Joris Vankerschaver's report (including patch) in PR#18447.
  * When example(foo, ..) produces graphics on an interactive device
    it needs to open itself, it now leaves devAskNewPage() unchanged
    even when it was FALSE, thus fixing a 14 years old '&lt;FIXME&gt;'.
  * packageDescription() again catches errors from encoding
    conversions. This also fixes broken packageVersion() in C locale
    on systems where iconv does not support transliteration.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1681128000">- add patch to build with libcurl &gt;= 8</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1682078400">- CHANGES IN R 4.3.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Calling &amp;&amp; or || with LHS or (if evaluated) RHS of length greater
    than one is now always an error, with a report of the form
    'length = 4' in coercion to 'logical(1)'
    Environment variable _R_CHECK_LENGTH_1_LOGIC2_ no longer has any
    effect.
  NEW FEATURES:
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.10.1.  (This caused some platform-dependent
    changes to package check output.)  And then to the sources from
    LAPACK version 3.11.0 (with changes only to double complex
    subroutines).
  * The included LAPACK sources have been updated to include the four
    Fortran 90 routines rather than their Fortran 77 predecessors.
    This may give some different signs in SVDs or
    eigendecompositions..  (This completes the transition to LAPACK
    3.10.x begun in R 4.2.0.)
  * The LAPACK sources have been updated to version 3.11.0.  (No new
    subroutines have been added, so this almost entirely bug fixes:
    Those fixes do affect some computations with NaNs, including R's
    NA.)
  * The parser now signals _classed_ errors, notably in case of the
    pipe operator |&gt;.  The error object and message now give line and
    column numbers, mostly as proposed and provided by Duncan Murdoch
    in PR#18328.
  * toeplitz() is now generalized for asymmetric cases, with a
    toeplitz2() variant.
  * xy.coords() and xyz.coords() and consequently, e.g., plot(x,y,
    log = "y") now signal a _classed_ warning about negative values
    of y (where log(.) is NA).  Such a warning can be specifically
    suppressed or caught otherwise.
  * Regular expression functions now check more thoroughly whether
    their inputs are valid strings (in their encoding, e.g. in
    UTF-8).
  * The performance of grep(), sub(), gsub() and strsplit() has been
    improved, particularly with perl = TRUE and fixed = TRUE.  Use of
    useBytes = TRUE for performance reasons should no longer be
    needed and is discouraged: it may lead to incorrect results.
  * apropos() gains an argument dot_internals which is used by the
    completion (help(rcompgen)) engine to also see base internals
    such as .POSIXct().
  * Support in tools::Rdiff() for comparing uncompressed PDF files is
    further reduced - see its help page.
  * qqplot(x, y, ...) gains conf.level and conf.args arguments for
    computing and plotting a confidence band for the treatment
    function transforming the distribution of x into the distribution
    of y (Switzer, 1976, _Biometrika_). Contributed by Torsten
    Hothorn.
  * Performance of package_dependencies() has been improved for cases
    when the number of dependencies is large.
  * Strings newly created by gsub(), sub() and strsplit(), when any
    of the inputs is marked as "bytes", are also marked as "bytes".
    This reduces the risk of creating invalid strings and accidental
    substitution of bytes deemed invalid.
  * Support for readLines(encoding = "bytes") has been added to allow
    processing special text files byte-by-byte, without creating
    invalid strings.
  * iconv(from = "") now takes into account any declared encoding of
    the input elements and uses it in preference to the native
    encoding.  This reduces the risk of accidental creation of
    invalid strings, particularly when different elements of the
    input have different encoding (including "bytes").
  * Package repositories in getOption("repos") are now initialized
    from the repositories file when utils is loaded (if not already
    set, e.g., in .Rprofile).  (From a report and patch proposal by
    Gabriel Becker in PR#18405.)
  * compactPDF() gets a verbose option.
  * type.convert() and hence read.table() get new option tryLogical =
    TRUE with back compatible default.  When set to false, converts
    "F" or "T" columns to character.
  * Added new unit prefixes "R" and "Q" for abbreviating
    (unrealistically large) sizes beyond 10^{27} in standard = "SI",
    thanks to Henrik Bengtsson's PR#18435.
  * as.data.frame()'s default method now also works fine with atomic
    objects inheriting from classes such as "roman", "octmode" and
    "hexmode", such fulfilling the wish of PR#18421, by Benjamin
    Feakins.
  * The as.data.frame.vector() utility now errors for wrong-length
    row.names.  It warned for almost six years, with "Will be an
    error!".
  * sessionInfo() now also contains La_version() and reports codepage
    and timezone when relevant, in both print() and toLatex() methods
    which also get new option tzone for displaying timezone
    information when locale = FALSE.
  * New function R_compiled_by() reports the C and Fortran compilers
    used to build R, if known.
  * predict(&lt;lm&gt;, newdata = *) no longer unnecessarily creates an
    offset of all 0s.
  * solve() for complex inputs now uses argument tol and by default
    checks for 'computational singularity' (as it long has done for
    numeric inputs).
  * predict(&lt;rank-deficient lm&gt;, newdata=*) now obeys a new argument
    rankdeficient, with new default "warnif", warning only if there
    are non-estimable cases in newdata.  Other options include
    rankdeficient = "NA", predicting NA for non-estimable newdata
    cases.  This addresses PR#15072 by Russ Lenth and is based on his
    original proposal and discussions in PR#16158 also by David Firth
    and Elin Waring.  Still somewhat experimental.
  * Rgui console implementation now works better with the NVDA screen
    reader when the full blinking cursor is selected.  The underlying
    improvements in cursor handling may help also other screen
    readers on Windows.
  * The drop-field control in GraphApp can now be left with the TAB
    key and all controls can be navigated in the reverse order using
    the Shift+TAB key, improving accessibility of the Rgui
    configuration editor.
  * qnorm(&lt;very large negative&gt;, log.p=TRUE) is now fully accurate
    (instead of to "only" minimally five digits).
  * demo(error.catching) now also shows off withWarnings() and
    tryCatchWEMs().
  * As an experimental feature the placeholder _ can now also be used
    in the rhs of a forward pipe |&gt; expression as the first argument
    in an extraction call, such as _$coef. More generally, it can be
    used as the head of a chain of extractions, such as _$coef[[2]].
  * Spaces in the environment variable used to choose the R session's
    temporary directory (TMPDIR, TMP and TEMP are tried in turn) are
    now fatal.  (On Windows the 'short path' version of the path is
    tried and used if that does not contain a space.)
  * all.equal.numeric() gets a new optional switch giveErr to return
    the numeric error as attribute.  Relatedly,
    stopifnot(all.equal&lt;some&gt;(a, b, ..)) is as "smart" now, as
    stopifnot(all.equal(....)) has been already, thus allowing
    customized all.equal&lt;Some&gt;() wrappers.
  * R on Windows is now able to work with path names longer than 260
    characters when these are enabled in the system (requires at
    least Windows 10 version 1607).  Packages should be updated to
    work with long paths as well, instead of assuming PATH_MAX to be
    the maximum length.  Custom front-ends and applications embedding
    R need to update their manifests if they wish to allow this
    feature.  See
    &lt;https://blog.r-project.org/2023/03/07/path-length-limit-on-windows&gt;
    for more information.
  * 'Object not found' and 'Missing argument' errors now give a more
    accurate error context. Patch provided by Lionel Henry in
    PR#18241.
  * The @ operator is now an S3 generic. Based on contributions by
    Tomasz Kalinowski in PR#18482.
  * New generic chooseOpsMethod() provides a mechanism for objects to
    resolve cases where two suitable methods are found for an Ops
    Group Generic. This supports experimenting with alternative
    object systems. Based on contributions by Tomasz Kalinowski in
    PR#18484.
  * inherits(x, what) now accepts values other than a simple
    character vector for argument what. A new generic, nameOfClass(),
    is called to resolve the class name from what. This supports
    experimenting with alternative object systems. Based on
    contributions by Tomasz Kalinowski in PR#18485.
  * Detection of BLAS/LAPACK in use (sessionInfo()) with FlexiBLAS
    now reports the current backend.
  * The "data.frame" method for subset() now warns about extraneous
    arguments, typically catching the use of = instead of == in the
    subset expression.
  * Calling a:b when numeric a or b is longer than one may now be
    made into an error by setting environment variable
    _R_CHECK_LENGTH_COLON_ to a true value, along the proposal in
    PR#18419 by Henrik Bengtsson.
  * density(x, weights = *) now warns if automatic bandwidth
    selection happens without using weights; new optional warnWbw may
    suppress the warning.  Prompted by Christoph Dalitz' PR#18490 and
    its discussants.
  * rm(list = *) is faster and more readable thanks to Kevin Ushey's
    PR#18492.
  * The plot.lm() function no longer produces a normal Q-Q plot for
    GLMs. Instead it plots a half-normal Q-Q plot of the absolute
    value of the standardized deviance residuals.
  * The print() method for class "summary.glm" no longer shows
    summary statistics for the deviance residuals by default.  Its
    optional argument show.residuals can be used to show them if
    required.
  * The tapply() function now accepts a data frame as its X argument,
    and allows INDEX to be a formula in that case. by.data.frame()
    similarly allows INDICES to be a formula.
  * The performance of df[j] &lt;- value (including for missing j) and
    write.table(df) has been improved for data frames df with a large
    number of columns.  (Thanks to Gabriel Becker's PR#18500,
    PR#18503 and discussants, prompted by a report from Toby Dylan
    Hocking on the R-devel mailing list.)
  * The matrix multiply operator %*% is now an S3 generic, belonging
    to new group generic matrixOps.  From Tomasz Kalinowski's
    contribution in PR#18483.
  * New function array2DF() to convert arrays to data frames,
    particularly useful for the list arrays created by tapply().
  DATES and TIMES:
  * On platforms where (non-UTC) datetimes before 1902 (or before
    1900 as with system functions on recent macOS) are guessed by
    extrapolating time zones from 1902-2037, there is a warning at
    the first use of extrapolation in a session.  (As all time zones
    post 2037 are extrapolation, we do not warn on those.)
  * (Platforms using --with-internal-tzone, including Windows and by
    default macOS). How years are printed in dates or date-times can
    be controlled by environment variable R_PAD_YEARS_BY_ZERO.  The
    default remains to pad to 4 digits by zeroes, but setting value
    no gives no padding (as used by default by glibc).
  * strftime() tries harder to determine the offset for the "%z"
    format, and succeeds on the mainstream R platforms.
  * strftime() has a limit of 2048 bytes on the string produced -
    attempting to exceed this is an error.  (Previously it silently
    truncated at 255 bytes.)
  * sessionInfo() records (and by default prints) the system time
    zone as part of the locale information.  Also, the source
    (system/internal) of the date-time conversion and printing
    functions.
  * Objects of class "POSIXlt" created in this version of R always
    have 11 components: component zone is always set, and component
    gmtoff is set for times in UTC and usually set on the (almost
    all) platforms which have C-level support, otherwise is NA.
  * There are comprehensive validity checks on the structure of
    objects of class "POSIXlt" when converting (including formatting
    and printing).  (This avoids mis-conversions of hand-crafted
    objects.)
  * There is some support for using the native date-time routines on
    macOS: this is only viable on recent versions (e.g. 12.6 and 13)
    and does get wrong some historical changes (before 1900, during
    WWII).  Use of --with-internal-tzone remains the default.
  * as.POSIXct(&lt;numeric&gt;) and as.POSIXlt(.) (without specifying
    origin) now work.  So does as.Date(&lt;numeric&gt;).
  * as.Date.POSIXct(., tz) now treats several tz values, notably
    "GMT" as equivalent to "UTC", proposed and improved by Michael
    Chirico and Joshua Ulrich in PR#17674.
  * Experimental balancePOSIXlt() utility allows using "ragged" and
    or out-of-range "POSIXlt" objects more correctly, e.g., in
    subsetting and subassignments.  Such objects are now documented.
    More experimentally, a "POSIXlt" object may have an attribute
    "balanced" indicating if it is known to be filled or fully
    balanced.
  * Functions axis.Date() and axis.POSIXct() are rewritten to gain
    better default tick locations and better default formats by using
    prettyDate(). Thanks to Swetlana Herbrandt.
  * The mapping of Windows' names for time zones to IANA's 'Olson'
    names has been updated.  When ICU is available (it is by
    default), it is used to get a mapping for the current region set
    in Windows.  This can be overridden by setting environment
    variable TZ to the desired Olson name - see OlsonNames() for
    those currently available.
  GRAPHICS:
  * The graphics engine version, R_GE_version, has been bumped to 16
    and so packages that provide graphics devices should be
    reinstalled.
  * The grDevices and grid packages have new functions for rendering
    typeset glyphs, primarily: grDevices::glyphInfo() and
    grid::grid.glyph().
    Rendering of typeset glyphs is only supported so far on the
    Cairo-based graphics devices and on the pdf() and quartz()
    devices.
  * The defined behaviour for "clear" and "source" compositing
    operators (via grid::grid.group()) has been changed (to align
    better with simple interpretation of original Porter-Duff
    definitions).
  * Support for gradients, patterns, clipping paths, masks, groups,
    compositing operators, and affine transformations has been added
    to the quartz() device.
  INSTALLATION on a UNIX-ALIKE:
  * A system installation of generic LAPACK 3.10.0 or later will be
    preferred to the version in the R sources.
    configure option --with-lapack=no (equivalently --without-lapack)
    forces compilation of the internal LAPACK sources.
    If --with-lapack is not specified, a system liblapack is looked
    for and used if it reports version 3.10.0 or later and does not
    contain BLAS routines.
    Packages using LAPACK will need to be reinstalled if this changes
    to using an external library.
  * On aarch64 Linux platforms using GCC, configure now defaults to
  - fPIC (instead of -fpic), as desired in PR#18326.
  * configure now checks conversion of datetimes between POSIXlt and
    POSIXct around year 2020.  Failure (which has been seen on
    platforms missing tzdata) is fatal.
  * If configure option --with-valgrind-instrumentation is given
    value 1 or 2, option --with-system-valgrind-headers is now the
    default and ignored (with a warning).  It is highly recommended
    that the system headers are installed alongside valgrind: they
    are part of its packaging on some Linux distributions and
    packaged separately (e.g. in the valgrind-devel RPM) on others.
    configure will give a warning if they are not found.
    The system headers will be required in a future release of R to
    build with valgrind instrumentation.
  * libcurl 8.x is now accepted by configure: despite a change in
    major version number it changes neither API nor ABI.
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools43, an update of the Rtools42 toolchain.  It is
    based on gcc 12 and newer versions of MinGW-W64, binutils and
    libraries.  At this time R-devel can still be built using
    Rtools42 without changes, but when R-devel is installed via the
    installer, it will by default look for Rtools43.
  * Old make targets rsync-extsoft and 32-bit ones that are no longer
    needed have been removed.
  * Default builds (including for packages) no longer select C99.
    Thus the C standard used is the default for the compiler, which
    for the toolchain in Rtools43 is C17.  (This is consistent with
    Unix builds.)
  PACKAGE INSTALLATION:
  * The default C++ standard has been changed to C++17 where
    available (which it is on all currently checked platforms): if
    not C++14 or C++11 is used if available otherwise C++ is not
    supported.
  * USE_FC_LEN_T is the default: this uses the correct
    (compiler-dependent) prototypes for Fortran BLAS/LAPACK routines
    called from C/C++, and requires adjustment of many such calls -
    see 'Writing R Extensions' SS6.6.1.
  * There is initial support for C++23 as several compilers are now
    supporting -std=c++23 or -std=c++2b or similar.  As for C++20,
    there no additional configure checks for C++23 features beyond a
    check that the compiler reports a __cplusplus value greater than
    that in the C++20 standard.  C++ feature tests should be used.
  * There is support for a package to indicate the version of the C
    standard which should be used to compile it, and for the
    installing user to specify this.  In most cases R defaults to the
    C compiler's default standard which is C17 (a `bug-fix' of C11) -
    earlier versions of R or compilers may have defaulted to C99.
    Current options are:
    USE_C17 Use a standard that is at most C17.  The intention is to
    allow legacy packages to still be installed when later C
    standards become the default, including packages using new
    keywords as identifiers or with K&amp;R-style function
    declarations.  This will use C17 if available, falling back
    to C11.
    USE_C90 Use the C90 (aka C89) standard.  (As that standard did
    not require compilers to identify that version, all we can
    verify is that the compiler does not claim to be using a
    later standard.  It may accept C99 features - for example
    clang accepts // to make comments.)
    USE_C99 Use the C99 standard. This should be rarely needed - it
    avoids the few new features of C11/C17 which can be useful if
    a package assumes them if C17 is specified and they are not
    implemented.
    USE_C23 Use C23 (or in future, later).  Compiler/library support
    for C23 is still being implemented, but LLVM clang from
    15.0.0 and the upcoming GCC 13 have quite extensive support.
    These can be specified as part of the SystemRequirements field in
    the package's DESCRIPTION file or _via_ options --use-C17 and so
    on of R CMD INSTALL and R CMD SHLIB.
    For further details see "Writing R Extensions" SS1.2.5.
  * (Windows) A src/Makefile.ucrt or src/Makefile.win file is now
    included after R_HOME/etcR_ARCH/Makeconf and so no longer needs
    to include that file itself.  Installation of a package with such
    a file now uses a site Makevars file in the same way as a package
    with a src/Makevars.win file would.
  * configure is now passed crucial variables such as CC and CFLAGS
    in its environment, as many packages were not setting them (as
    documented in 'Writing R Extensions' SS1.2).
    This has most effect where configure is used to compile parts of
    the package - most often by cmake or libtool which obfuscate the
    actual compile commands used.
    Also used for configure.win and configure.ucrt on Windows.
  FORTRAN FLAGS:
  * The flag -fno-optimize-sibling-calls is no longer forced for
    gfortran 7 and later.  It should no longer be needed now using
    'hidden' character-length arguments when calling BLAS/LAPACK
    routines from C/C++ is the default even for packages.  (Unless
    perhaps packages call Fortran code from C/C++ without using R's
    headers and without allowing for these arguments.)
  C-LEVEL FACILITIES:
  * The deprecated S-compatibility macros DOUBLE_* in
    R_ext/Constants.h (included by R.h) have been removed.
  * The deprecated legacy typedefs of Sint and Sfloat in header R.h
    are no longer defined, and that header no longer includes header
    limits.h from C nor climits from C++.
  * New macro CAD5R() is provided in Rinternals.h and used in a few
    places in the R sources.
  * ALTREP now supports VECSXP vectors. Contributed by Gabor Csardi
    in PR#17620.
  * The Rcomplex definition (in header R_ext/Complex.h) has been
    extended to prevent possible mis-compilation when interfacing
    with Fortran (PR#18430).  The new definition causes compiler
    warnings with static initializers such as {1, 2}, which can be
    changed to {.r=1, .i=2}.
    Using the new definition from C++ depends on compiler extensions
    supporting C features that have not been incorporated into the
    C++ standards but are available in g++ and clang++: this may
    result in C++ compiler warnings but these have been worked around
    for recent versions of common compilers (GCC, Apple/LLVM clang,
    Intel).
    It is intended to change the inclusion of header R_ext/Complex.h
    by other R headers, so C/C++ code files which make use of
    Rcomplex should include that header explicitly.
  UTILITIES:
  * R CMD check does more checking of package .Rd files, warning
    about invalid email addresses and (some) invalid URIs and noting
    empty \item labels in description lists.
  * R CMD check now also reports problems when reading package news
    in md (file NEWS.md) and (optionally) plain text (file NEWS)
    formats.
  * _R_CHECK_TIMINGS_ defaults to a value from the environment even
    for R CMD check --as-cran; this allows for exceptionally fast or
    slow platforms.
    It now applies to checking PDF and HTML versions of the manuals,
    and 'checking CRAN incoming feasibility'.
  * R CMD check can optionally (but included in --as-cran) check
    whether HTML math rendering _via_ KaTeX works for the package .Rd
    files.
  * Non-interactive debugger invocations can be trapped by setting
    the environment variable _R_CHECK_BROWSER_NONINTERACTIVE_ to a
    true value.  This is enabled by R CMD check --as-cran to detect
    the use of leftover browser() statements in the package.
  * The use of sprintf and vsprintf from C/C++ has been deprecated in
    macOS 13 and is a known security risk.  R CMD check now reports
    (on all platforms) if their use is found in compiled code:
    replace by snprintf or vsnprintf respectively. [*NB:* whether
    such calls get compiled into the package is platform-dependent.]
  * Where recorded at installation, R CMD check reports the C and
    Fortran compilers used to build R.
    It reports the OS in use (if known, as given by osVersion) as
    well as that R was built for.
    It notes if a C++ standard was specified which is older than the
    current default: many packages have used C++11 to mean 'not
    C++98' - as C++11 is the minimum supported since R 4.0.0, that
    specification can probably be removed.
  * R CMD INSTALL reports the compilers (and on macOS, the SDK) used,
    and this is copied to the output of R CMD check.
    Where a C++ standard is specified, it is reported.
  * R CMD check's 'checking compilation flags in Makevars' has been
    relaxed to accept the use of flags such as -std=f2008 in
    PKG_FFLAGS.
  * tools::buildVignettes() has a new argument skip, which is used by
    R CMD check to skip (and note) vignettes with unavailable
    \VignetteDepends (PR#18318).
  * New generic .AtNames() added to enable class-specific completions
    after @. The formerly internal function findMatches() is now
    exported, mainly for use in methods for .DollarNames() and
    .AtNames().
  DEPRECATED AND DEFUNCT:
  * default.stringsAsFactors() is defunct.
  * Calling as.data.frame.&lt;class&gt;() directly (for 12 atomic classes)
    is going to be formally deprecated, currently activated by
    setting the environment variable
    _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ to non-empty, which also
    happens in R CMD check --as-cran.
  BUG FIXES:
  * Hashed environments with sizes less than 5 can now grow.
    (Reported to R-devel by Duncan Garmonsway.)
  * as.character(&lt;Rd&gt;, deparse = TRUE) failed to re-escape curly
    braces in LaTeX-like text.  (Reported by Hadley Wickham in
    PR#18324.)
  * library() now passes its lib.loc argument when requiring Depends
    packages; reported (with fix) in PR#18331 by Mikael Jagan.
  * R CMD Stangle: improved message about 'Output' files.
  * head(x, n) and tail(x, n) now signal an error if n is not
    numeric, instead of incidentally "working" sometimes returning
    all of x.  Reported and discussed by Colin Fay, in PR#18357.
  * The "lm" method for summary() now gives the correct F-statistic
    when the model contains an offset.  Reported in PR#18008.
  * C() and `contrasts&lt;-`() now preserve factor level names when
    given a function object (as opposed a function name which did
    preserve names). Reported in PR#17616.
  * c(a = 1, 2)[[]] no longer matches 2 but rather signals a
    _classed_ error.  Reported and analysed by Davis Vaughan in
    PR#18367, a duplicate of PR#18004, by Jan Meis et al.  For
    consistency, NULL[[]] is also erroneous now.  x[[]] &lt;- v gives an
    error of the same class "MissingSubscriptError".
  * The relist() function of utils now supports NULL elements in the
    skeleton (PR#15854).
  * ordered(levels = *) (missing x) now works analogously to factor(,
    ordered=TRUE); reported (with fix) by Achim Zeileis in PR#18389.
  * User-defined Rd macro definitions can now span multiple lines,
    thanks to a patch from Duncan Murdoch. Previously, the Rd parser
    silently ignored everything after the first line.
  * Plain-text help (tools::Rd2txt()) now preserves an initial blank
    line for text following description list items.
  * tools::Rd2HTML() and tools::Rd2latex() no longer split \arguments
    and \value lists at Rd comments.
  * tools::Rd2latex() now correctly handles optional text outside
    \items of argument lists as well as bracketed text at the
    beginning of sections, e.g., \value{[NULL]}.
  * as.character(&lt;POSIXt&gt;) now behaves more in line with the methods
    for atomic vectors such as numbers, and is no longer influenced
    by options().  Ditto for as.character(&lt;Date&gt;).  The
    as.character() method gets arguments digits and OutDec with
    defaults _not_ depending on options().  Use of as.character(*,
    format = .) now warns.
  * Similarly, the as.character.hexmode() and *.octmode() methods
    also behave as good citizen methods and back compatibility option
    keepStr = TRUE.
  * The as.POSIXlt(&lt;POSIXlt&gt;) and as.POSIXct(&lt;POSIXct&gt;) default
    methods now do obey their tz argument, also in this case.
  * as.POSIXlt(&lt;Date&gt;) now does apply a tz (time zone) argument, as
    does as.POSIXct(); partly suggested by Roland Fuss on the R-devel
    mailing list.
  * as.Date.POSIXlt(x) now also works when the list components are of
    unequal length, aka "partially filled" or "ragged".
  * expand.model.frame() looked up variables in the wrong environment
    when applied to models fitted without data.  Reported in
    PR#18414.
  * time() now (also) uses the ts.eps = getOption("ts.eps") argument
    and thus by default rounds values very close to the start (or
    end) of a year.  Based on a proposal by Andre"i V. Kostyrka on
    R-help.
  * Printing of a factanal() result with just one factor and sort =
    TRUE now works regularly, fixing PR#17863 by Timothy Bates,
    thanks to the 'R Contributors' working group.
  * Printing 0-length objects of class "factor", "roman", "hexmode",
    "octmode", "person", "bibentry", or "citation" now prints
    something better, one of which fixes PR#18422, reported by
    Benjamin Feakins.
  * Sys.timezone() queries timedatectl only if systemd is loaded;
    addressing a report by Jan Gorecki in PR#17421.
  * The formula method of cor.test() had scoping problems when
    environment(formula) was not the calling environment; reported
    with a patch proposal by Mao Kobayashi in PR#18439.
  * attach() of an environment with active bindings now preserves the
    active bindings.  Reported by Kevin Ushey in PR#18425.
  * BLAS detection now works also with system-provided libraries not
    available as regular files.  This fixes detection of the
    Accelerate framework on macOS since Big Sur.  Reported by David
    Novgorodsky.
  * download.file() gives a helpful error message in case of an
    invalid download.file.method option, thanks to Colin Fay's report
    in PR#18455.
  * Sporadic crashes of Rterm when using completion have been fixed.
  * Rprof() is now more reliable.  A livelock in thread
    initialization with too short sampling interval has been fixed on
    macOS.  A deadlock in using the C runtime has been fixed on
    Windows.  A potential deadlock has been prevented on Unix.
  * Cursor placement in Rgui now works even after a fixed-width font
    is selected.
  * Mandatory options (options()) are now set on startup so that
    saving and restoring them always works (PR#18372).
  * Package installation, R CMD INSTALL or install.packages(*), now
    parses each of the &lt;pkg&gt;/R/*.R files individually instead of
    first concatenating and then parse()ing the large resulting file.
    This allows parser or syntax errors to be diagnosed with correct
    file names and line numbers, thanks to Simon Dedman's report and
    Bill Dunlap's patch in PR#17859.
    This _does_ require syntactically self contained R source files
    now, fixing another inadvertent bug.
  * predict.lm(&lt;model with offset&gt;) now finds the offset in the
    correct environment, thanks to Andr'e Gillibert's report and patch
    in PR#18456.
  * getInitial(&lt;formula&gt;) now finds the selfStart model in the
    correct environment.  (Reported by Ivan Krylov in PR#18368.)
  * Fix for possible segfault when using recently-added graphics
    features, such as gradients, clipping paths, masks, and groups
    with pdf(file=NULL).
  * class(m) &lt;- class(m) no longer changes a matrix m by adding a
    class _attribute_.
  * packageDate(pkg) now only warns once if there is no pkg.
  * When ts() creates a multivariate time series, "mts", it also
    inherits from "array" now, and is.mts() is documented _and_
    stricter.
  * Rd2txt() now preserves line breaks of \verb Rd content and from
    duplicated \cr.  The former also fixes the rendering of verbatim
    output from Rd \Sexpr in plain-text help.
  * uniroot(f, interval) should no longer wrongly converge _outside_
    the interval in some cases where abs(f(x)) == Inf for an x at the
    interval boundary, thanks to posts by Ben Bolker and Serguei
    Sokol on R-devel.
  * Vectorized alpha handling in palette functions such as in gray(),
    rainbow(), or hcl.colors() works correctly now, thanks to Achim
    Zeileis' report and patch in PR#18476.
  * Formatting and print()ing of bibentry objects has dropped the
    deprecated citation.bibtex.max argument, such that the bibtex
    argument's default for print.bibentry() depends directly on the
    citation.bibtex.max option, whereas in format.bibentry() the
    option no longer applies.
  * Attempting to use a character string naming a foreign function
    entry point in a foreign function call in a package will now
    signal an error if the packages has called R_forceSymbols to
    specify that symbols must be used.
  * An error in table() could permanently set options(warn=2)
    promoting all subsequent warnings to errors.
  * The sigma() function gave misleading results for binary GLMs.  A
    new method for objects of class "glm" returns the square root of
    the estimate of the dispersion parameter using the same
    calculation as summary.glm().
  * bs() and ns() in the (typical) case of automatic knot
    construction, when some of the supposedly inner knots coincide
    with boundary knots, now moves them inside (with a warning),
    building on PR#18442 by Ben Bolker.
  * R CMD on Windows now skips the site profile with --no-site-file
    and --vanilla even when R_PROFILE is set (PR#18512, from Kevin
    Ushey).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1686916800">- CHANGES IN R 4.3.1:
  C-LEVEL FACILITIES:
  * The C-level API version of R's integrate(), Rdqags() in Applic.h,
    now returns the correct number of integrand evaluations neval,
    fixing PR#18515 reported and diagnosed by Stephen Wade.
  * The C prototypes for LAPACK calls dspgv and dtptrs in
    R_exts/Lapack.h had one too many and one too few character length
    arguments - but this has not caused any known issues. To get the
    corrected prototypes, include
    [#]include &lt;Rconfig.h&gt; // for PR18534fixed
    [#]ifdef PR18534fixed
    [#] define usePR18534fix 1
    [#]endif
    [#]include &lt;R_exts/Lapack.h&gt;
    in your C/C++ code (PR#18534).
  INSTALLATION:
  * Many of the checks of esoteric Internet operations and those
    using unreliable external sites have been moved to a new target
    that is not run by default and primarily intended for the core
    developers.  To run them use
    cd tests; make test-Internet-dev
  BUG FIXES:
  * .S3methods(), typically called from methods(), again marks
    methods from package base as visible.
    Also, the visibility of non-base methods is again determined by
    the method's presence in search().
  * tools::Rdiff() is now more robust against invalid strings, fixing
    installation tests on Windows without Rtools installed
    (PR#18530).
  * Fix (new) bug in hcl.colors(2, *), by Achim Zeileis (PR#18523).
  * head(., &lt;illegal&gt;) and tail(..) now produce more useful "Error in
    ...." error messages, fixing PR#18362.
  * Package code syntax on Windows is checked in UTF-8 when UTF-8 is
    the native encoding.
  * na.contiguous(x) now also returns the first run, when it is at
    the beginning and there is a later one of the same length;
    reported to R-devel, including a fix, by Georgi Boshnakov.
    Further, by default, it modifies only an existing attr(*,"tsp")
    but otherwise no longer sets one.
  * chol(&lt;not pos.def&gt;, pivot = &lt;T|F&gt;) now gives a correct error or
    warning message (depending on pivot), thanks to Mikael Jagan's
    (PR#18541).</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1699012800">- CHANGES IN R 4.3.2:
  NEW FEATURES:
  * The default initialization of the "repos" option from the
    repositories file at startup can be skipped by setting
    environment variable R_REPOSITORIES to NULL such that
    getOption("repos") is empty if not set elsewhere.
  * qr.X() is now an implicit S4 generic in methods.
  * iconv(to = "ASCII//TRANSLIT") is emulated using substitution on
    platforms which do not support it (notably Alpine Linux).  This
    should give a human-readable conversion in ASCII on all platforms
    (rather than NA_character_).
  * trans3d() gains options continuous and verbose addressing the
    problem of possible "wrap around" when projecting too long
    curves, as reported by Achim Zeileis in PR#18537.
  * tools::showNonASCII() has been rewritten to work better on macOS
    14 (which has a changed implementation of iconv()).
  * tiff(type = "quartz") (the default on macOS) now warns if
    compression is specified: it continues to be ignored.
  INSTALLATION on a UNIX-ALIKE:
  * There is some support for building with Intel's LLVM-based
    compilers on x86_64 Linux, such as (C) icx, (C++) ipcx and
    (Fortran) ifx from oneAPI 2023.x.y.
  * There is support for using LLVM's flang-new as the Fortran
    compiler from LLVM 16.0.x (preferably 17.0.0 or later).
  UTILITIES:
  * R CMD check reports the use of the Fortran 90 random number
    generator RANDOM_NUMBER() and the subroutines to initialize it.
    'Writing R Extensions' has example code to use R's RNGs from
    Fortran.
  BUG FIXES:
  * substr(x, n, L) &lt;- cc now works (more) correctly for multibyte
    UTF-8 strings x when L &gt; nchar(x), thanks to a report and patch
    by 'Architect 95'.
  * contrib.url(character()) now returns 0-length character() as
    documented, which also avoids spurious warnings from
    available.packages() et al. in the edge case of an empty vector
    of repository URLs.
  * readChar(., 4e8) no longer fails, thanks to Kodi Arfer's report
    (PR#18557).
  * lapply(&lt;list&gt;, as.data.frame) no longer warns falsely for some
    base vector components.
  * Communication between parent and child processes in the multicore
    part of parallel could fail on platforms that do not support an
    arbitrarily large payload in system functions read()/write() on
    pipes (seen on macOS where a restriction to INT_MAX bytes is
    documented, without doing a partial read unlike Linux). The
    payload is now split into 1Gb chunks to avoid that problem.
    (PR#18571)
  * qqplot(x,y, conf.level=.) gives better confidence bounds when
    length(x) != length(y), thanks to Alexander Ploner's report and
    patch proposal (PR#18557).
  * norm(&lt;0-length&gt;, "2") now gives zero instead of an error, as all
    the other norm types, thanks to Mikael Jagan's PR#18542.
  * Build-stage Rd macros \packageAuthor and \packageMaintainer now
    process Authors@R, fixing NA results when the package DESCRIPTION
    omits Author and Maintainer fields.
  * Formatting and printing complex numbers could give things like
    0.1683-0i because of rounding error: -0i is now replaced by +0i.
  * postscript() refused to accept a title comment containing the
    letter "W" (PR#18599).
  * isoreg(c(1,Inf)) signals an error instead of segfaulting, fixing
    PR#18603.
  * tiff(type = "Xlib") was only outputting the last page of
    multi-page plots.
  * tools::latexToUtf8() again knows about \~{n} and other letters
    with tilde, fixing a regression in R 4.3.0, and about \^{i} as an
    alternative to \^{\i} (similarly with other accents).
    Furthermore, LaTeX codes for accented I letters are now correctly
    converted, also fixing related mistakes in
    tools::encoded_text_to_latex().
  * tar(*, tar = "internal") no longer creates out-of-spec tar files
    in the very rare case of user or group names longer than 32
    bytes, fixing PR#17871 with thanks to Ivan Krylov.
  * When using the "internal" timezone datetime code, adding a
    fraction of a second no longer adds one second, fixing PR#16856
    from a patch by Ivan Krylov.
  * tools::checkRd() no longer produces spurious notes about
    "unnecessary braces" from multi-line Rd results of \Sexpr macros.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1709208000">- CHANGES IN R 4.3.3:
  NEW FEATURES:
  * iconv() now fixes up variant encoding names such as "utf8"
    case-insensitively.
  DEPRECATED AND DEFUNCT:
  * The legacy encoding = "MacRoman" is deprecated in pdf() and
    postscript(): support was incomplete in earlier versions of R.
  BUG FIXES:
  * Arguments are now properly forwarded to methods on S4 generics
    with ... in the middle of their formal arguments. This was broken
    for the case when a method introduced an argument but did not
    include ... in its own formals. Thanks to Herv'e Pag`es for the
    report PR#18538.
  * Some invalid file arguments to pictex(), postscript() and xfig()
    opened a file called NA rather than throw an error.  These
    included postscript(NULL) (which some people expected to work
    like pdf(NULL)).
  * Passing filename = NA to svg(), cairo_pdf(), cairo_ps() or the
    Cairo-based bitmap devices opened a file called NA: it now throws
    an error.
  * quartz(file = NA) opened a file called NA, including when used as
    a Quartz-based bitmap device.  It now gives an error.
  * rank(&lt;long vector&gt;) now works, fixing PR#18617, thanks to Ilia
    Kats.
  * seq.int() did not adequately check its length.out argument.
  * match(&lt;POSIXct&gt;, .) is correct again for differing time zones,
    ditto for "POSIXlt", fixing PR#18618 reported by Bastian Klein.
  * drop.terms(*, dropx = &lt;0-length&gt;) now works, fixing PR#18563 as
    proposed by Mikael Jagan.
  * drop.terms(*) keeps + offset(.) terms when it should, PR#18565,
    and drop.terms() no longer makes up a response, PR#18566, fixing
    both bugs thanks to Mikael Jagan.
  * getS3method("t", "test") no longer finds the t.test() function,
    fixing PR#18627.
  * pdf() and postscript() support for the documented Adobe encodings
    "Greek" and "Cyrilllic" was missing (although the corresponding
    Windows' codepages could be used).
  * Computations of glyph metric information for pdf() and
    postscript() did not take into account that transliteration could
    replace one character by two or more (only seen on macOS 14) and
    typically warned that the information was not known.
  * rank(x) no longer overflows during integer addition, when
    computing rank average for largish but not-yet long vector x,
    fixing PR#18630, thanks to Ilia Kats.
  * list.files() on Windows now returns also files with names longer
    that 260 bytes (the Windows limit is 260 characters).
    Previously, some file names particularly with 'East Asian'
    characters were omitted.
  * cov2cor(&lt;0 x 0&gt;) now works, fixing PR#18423 thanks to Mikael
    Jagan and Elin Waring.
  * cov2cor(&lt;negative diagonal&gt;) and similar now give one warning
    instead of two, with better wording, fixing PR#18424 thanks to
    Mikael Jagan.
  * tools:: startDynamicHelp() now ensures port is in proper range,
    fixing PR#18645.
  * pbeta(x, a,b) is correct now for x=0 or 1 in the boundary cases
    where a or b or both are 0, fixing PR#18672 thanks to Michael
    Fay.
  * pmatch(x, table) for large table, also called for data frame row
    selection, dfrm[nm, ], is now interruptible, fixing PR#18656.
  * predict(&lt;rank-deficient lm&gt;, newdata=*) fix computing of nbasis,
    see Russ Lenth's comment 29 in PR#16158.
  * Added a work-around for a bug in macOS 14.3.1 and higher which
    prevents R plots in the Quartz Cocoa device from updating on
    screen.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1713960000">- CHANGES IN R 4.4.0:
  SIGNIFICANT USER-VISIBLE CHANGES:
  * Startup banners, R --version, sessionInfo() and R CMD check no
    longer report (64-bit) as part of the platform as this is almost
    universal - the increasingly rare 32-bit platforms will still
    report (32-bit).
    On Windows, ditto for window titles.
  * is.atomic(NULL) now returns FALSE, as NULL is not an atomic
    vector.  Strict back-compatibility would replace is.atomic(foo)
    by (is.null(foo) || is.atomic(foo)) but should happen only
    sparingly.
  NEW FEATURES:
  * The confint() methods for "glm" and "nls" objects have been
    copied to the stats package.  Previously, they were stubs which
    called versions in package MASS. The MASS namespace is no longer
    loaded if you invoke (say) confint(glmfit).  Further, the "glm"
    method for profile() and the plot() and pairs() methods for class
    "profile" have been copied from MASS to stats.  (profile.nls()
    and plot.profile.nls() were already in stats.)
  * The confint() and profile methods for "glm" objects have gained a
    possibility to do profiling based on the Rao Score statistic in
    addition to the default Likelihood Ratio. This is controlled by a
    new test = argument.
  * The pairs() method for "profile" objects has been extended with a
    which = argument to allow plotting only a subset of the
    parameters.
  * The "glm" method for anova() computes test statistics and
    p-values by default, using a chi-squared test or an F test
    depending on whether the dispersion is fixed or free.  Test
    statistics can be suppressed by giving argument test a false
    logical value.
  * In setRepositories() the repositories can be set using their
    names via name = instead of index ind =.
  * methods() and .S3methods() gain a all.names option for the (rare)
    case where functions starting with a . should be included.
  * Serializations can now be interrupted (e.g., by Ctrl-C on a
    Unix-alike) if they take too long, e.g., from save.image(),
    thanks to suggestions by Ivan Krylov and others on R-devel.
  * New startup option --max-connections to set the maximum number of
    simultaneous connections for the session.  Defaults to 128 as
    before: allowed values up to 4096 (but resource limits may in
    practice restrict to smaller values).
  * R on Windows (since Windows 10 2004) now uses the new Segment
    Heap allocator. This may improve performance of some
    memory-intensive applications.
  * When R packages are built, typically by R CMD build &lt;pkg&gt;, the
    new --user=&lt;build_user&gt; option overrides the (internally
    determined) user name, currently Sys.info()["user"] or LOGNAME.
    This is a (modified) fulfillment of Will Landau's suggestion in
    PR#17530.
  * tools::testInstalledBasic() gets new optional arguments outDir
    and testSrcdir, e.g., allowing to use it in a &lt;builddir&gt; !=
    &lt;srcdir&gt; setup, and in standard "binary" Windows installation
  * if* a source tests/ folder is present.
  * range(&lt;DT_with_Inf&gt;, finite = TRUE) now work for objects of class
    "Date", "POSIXct", and "POSIXlt" with infinite entries,
    analogously to range.default(), as proposed by Davis Vaughan on
    R-devel.  Other range()-methods can make use of new function
    .rangeNum().
  * New .internalGenerics object complementing .S3PrimitiveGenerics,
    for documentation and low-level book-keeping.
  * grid() now invisibly returns the x- and y- coordinates at which
    the grid-lines were drawn.
  * norm(., type) now also works for complex matrices.
  * kappa(., exact = TRUE, norm = *) now works for all norms and also
    for complex matrices.  In symmetric / triangular cases, the new
    argument uplo = "U" | "L" allows the upper or lower triangular
    part to be specified.
  * memDecompress(type = "unknown") recognizes compression in the
    default 'zlib' format as used by memCompress(type = "gzip").
  * memCompress() and memDecompress() will use the libdeflate library
    (&lt;https://github.com/ebiggers/libdeflate&gt;) if installed.  This
    uses the same type of compression for type = "gzip" but is 1.5-2x
    faster than the system libz library on some common platforms: the
    speed-up may depend on the library version.
  * diff() for objects of class "Date", "POSIXct", and "POSIXlt"
    accepts a units argument passed via ....
  * Dynamic help now does a much better job of rendering package
    DESCRIPTION metadata.
  * Rprof() gains an event argument and support for elapsed (real)
    time profiling on Unix (PR#18076).
  * filled.contour() gains a key.border argument.
  * tools::update_pkg_po() gets arguments pot_make and mo_make for
    _not_ re-making the corresponding files, and additionally a
    verbose argument.
  * Hexadecimal string colour specifications are now accepted in
    short form, so, for example, we can use "#123", which is
    equivalent to "#112233".
    Thanks to MikeFC for the original idea and Ella Kaye, Malcolm
    Barrett, George Stagg, and Hanne Oberman for the patch.
  * Plain-text help shows \var markup by angle brackets.
  * The new experimental primitive function declare() is intended to
    eventually allow information about R code to be communicated to
    the interpreter, compiler, and code analysis tools. The syntax
    for declarations is still being developed.
  * Functions psmirnov(), qsmirnov() and rsmirnov() in package stats
    have had argument two.sided renamed to alternative, to take into
    account that the permutation distributions of the one-sided
    statistics can be different in the case of ties.  Consequence of
    PR#18582.
  * sort() is now an implicit S4 generic in methods.
  * Formatting and printing, format(z), print(z), of complex vectors
    z no longer zap relatively small real or imaginary parts to zero,
    fixing PR#16752.  This is an API change, as it was documented
    previously to round real and imaginary parts together on purpose,
    producing nicer looking output.  As mentioned, e.g. in the PR,
    this change is compatible with many other "R-like" programming
    environments.
    We have simplified the internal code and now basically format the
    real and imaginary parts independently of each other.
  * New experimental functions Tailcall() and Exec() to support
    writing stack-space-efficient recursive functions.
  * Where characters are attempted to be plotted by pdf(),
    postscript() and xfig() which are not in the selected 8-bit
    character set (most often Latin-1) and the R session is using a
    UTF-8 locale, the warning messages will show the UTF-8 character
    rather than its bytes and one dot will be substituted per
    character rather than per byte.  (Platforms whose iconv() does
    transliteration silently plot the transliteration.)
    In a UTF-8 locale some transliterations are now done with a
    warning (e.g., dashes and Unicode minus to hyphen, ligatures are
    expanded, permille (‰) is replaced by o/oo), although the OS may
    have got there first.  These are warnings as they will continue
    to be replaced by dots in earlier versions of R.
  * The matrix multiplication functions crossprod() and tcrossprod()
    are now also primitive and S3 generic, as %*% had become in R
    4.3.0.
  * source() and example() have a new optional argument catch.aborts
    which allows continued evaluation of the R code after an error.
  * The non-Quartz tiff() devices allow additional types of
    compression if supported by the platform's libtiff library.
  * The list of base and recommended package names is now provided by
    tools::standard_package_names().
  * cairo_pdf() and cairo_ps() default to onefile = TRUE to closer
    match pdf() and postscript().
  * New option catch.script.errors provides a documented way to catch
    errors and then continue in non-interactive use.
  * L %||% R newly in base is an expressive idiom for the phrases
    if(!is.null(L)) L else R or if(is.null(L)) R else L.
  * The return value from warnings() now always inherits from
    "warnings" as documented, now also in the case of no warnings
    where it previously returned NULL.
  * as.complex("1i") now returns 0 + 1i instead of NA with a warning.
  * z &lt;- c(NA, 1i) now keeps the imaginary part Im(z[1]) == 0, no
    longer coercing to NA_complex_.  Similarly, cumsum(z) correctly
    sums real and imaginary parts separately, i.e., without
    "crosstalk" in case of NAs.
  * On Alpine Linux iconv() now maps "latin2", "latin-2", "latin9"
    and "latin-9" to encoding names the OS knows about
    (case-insensitively).
  * iconv(sub = "Unicode") now always zero-pads to four (hex) digits,
    rather than to 4 or 8.  (This seems to have become the convention
    once Unicode restricted the number of Unicode points to 2^21 - 1
    and so will never need more than 6 digits.)
  * NCOL(NULL) now returns 0 instead of 1, for consistency with
    cbind().
  * The information for the Euro glyph missing from the Adobe .afm
    files for the Courier, Helvetica and Times families has been
    copied from their URW equivalents - this will improve vertical
    centring in the pdf() and postscript() devices.
  * The included BLAS sources have been updated to those shipped with
    LAPACK version 3.12.0.  The changes are almost entirely cosmetic.
  * The included LAPACK sources have been updated to version 3.12.0
    and some further double-complex routines added.
  * There are new font families for the 2014--5 URW 2.0 fonts (see
    ?pdf) which are included in recent versions of Ghostscript.
    These have font widths for most Greek glyphs and a few others
    which were missing from the original versions (whose font
    families remain available for reproducibility, although
    Ghostscript-based viewers will render using the 2.0 versions).
  * Improve the large-n efficiency of as.matrix(&lt;dist&gt;), thanks an R
    contributors effort, notably by Tim Taylor and Heather Turner,
    see PR#18660.
  * The default and numeric methods of all.equal() get a check.class
    option.
  * zapsmall() gets new optional arguments, function mFUN and min.d,
    for extra flexibility; fulfills a wish in PR#18199.  Also, it is
    now an implicit S4 generic in package methods.
  * The Rd filter for aspell() gains an ignore argument.
  * New generic function sort_by(), primarily useful for the
    data.frame method which can be used to sort rows of a data frame
    by one or more columns.
  * The icence headers for the RPC code in src/extra/xdr have been
    updated to use the GPL-compatible licence published by Oracle
    America in 2010.
  * New function pkg2HTML() in tools to create single-page HTML
    reference manuals for R packages.
  * The byte code evaluator now uses less C stack space for recursive
    calls to byte-compiled functions. It also makes more of an effort
    to avoid allocations for scalar return values.
  * New completion option backtick (disabled by default) allows
    non-syntactic completions to be wrapped in backquotes. This is
    currently only useful for Jupyter notebooks via the IRkernel
    package, and may cause problems for other backends.
  INSTALLATION:
  * The parser has been updated to work with bison 3.8.2, which is
    now used for the pre-generated parsers in gram.c, file.c, and
    gramRd.c. A few parser error messages have changed, which may
    affect code that relies on exact messages.
  INSTALLATION on a UNIX-ALIKE:
  * System valgrind headers are now required to use configure option
  - -with-valgrind-instrumentation with value 1 or 2.
  * configure will warn if it encounters a 32-bit build, as that is
    nowadays almost untested.
  * Environment variable R_SYSTEM_ABI is no longer used and so no
    longer recorded in etc/Renviron (it was not on Windows and was
    only ever used when preparing package tools).
  * If the libdeflate library and headers are available, libdeflate
    rather than libz is used to (de)compress R objects in lazy-load
    databases.  Typically tasks spend up to 5% of their time on such
    operations, although creating lazy-data databases is one of the
    exceptions.
    This can be suppressed if the library is available by the
    configure option --without-libdeflate-compression.
  * configure option --enable-lto=check has not worked reliably since
    2019 and has been removed.
  * The minimum autoconf requirement for a maintainer build has been
    increased to autoconf 2.71.
    It is intended to increase this to 2.72 for R 4.5.0: the
    distributed configure file was generated using 2.72.
  * The minimum version requirement for an external LAPACK has been
    reduced to 3.9.0.
  * No default C++ compiler is set if no C++17 compiler is detected:
    there is no longer an automatic fallback to C++14 or C++11.
    Compilers from the last five years should have sufficient
    support: for others macros CXX and CXXSTD can be set in file
    config.site to provide a fallback if needed.
    The Objective-C++ compiler now by default uses the standard
    selected by R for C++ (currently C++17) rather than the default
    standard for the C++ compiler (which on macOS is still C++98).
  INSTALLATION on macOS:
  * A new configure option --with-newAccelerate makes use of Apple's
    'new' BLAS / LAPACK interfaces in their Accelerate framework.
    Those interfaces are only available in macOS 13.3 or later, and
    building requires SDK 13.3 or later (from the Command Line Tools
    or Xcode 14.3 or later).
    By default the option uses new Accelerate for BLAS calls: to also
    use it for LAPACK use option --with-newAccelerate=lapack.  The
    later interfaces provide LAPACK 3.9.1 rather than 3.2.1: 3.9.1 is
    from 2021-04 and does not include the improved algorithms
    introduced in LAPACK 3.10.0 (including for BLAS calls).
  INSTALLATION on WINDOWS:
  * The makefiles and installer scripts for Windows have been
    tailored to Rtools44, an update of the Rtools43 toolchain.  It is
    based on GCC 13 and newer versions of MinGW-W64, binutils and
    libraries (targeting 64-bit Intel CPUs).  R-devel can no longer
    be built using Rtools43 without changes.
  * Rtools44 has experimental support for 64-bit ARM (aarch64) CPUs
    _via_ the LLVM 17 toolchain using lld, clang/flang-new and
    libc++.
  UTILITIES:
  * R CMD check notes when S4-style exports are used without
    declaring a strong dependence on package methods.
  * tools::checkRd() (used by R CMD check) detects more problems with
    \Sexpr-based dynamic content, including bad nesting of \Sexprs
    and invalid arguments.
  * tools::checkRd() now reports Rd titles and section names ending
    in a period; this is ignored by R CMD check unless environment
    variable _R_CHECK_RD_CHECKRD_MINLEVEL_ is set to -5 or smaller.
  * R CMD check now notes Rd files without an \alias, as long
    documented in 'Writing R Extensions' §1.3.1.  The check for a
    missing \description has been moved from tools::checkRd() to
    tools::checkRdContents().
  * R CMD check now visits inst/NEWS.Rd and OS-specific man
    subdirectories when checking Rd files.
  * tools::checkDocFiles() and tools::checkRdContents() now also
    check internal Rd files by default, but "specially" (ignoring
    missing documentation of arguments).
  * R CMD Rdiff gets option --useEx.
  * R CMD check now warns on non-portable uses of Fortran KIND such
    as INTEGER(KIND=4) and REAL(KIND=8).
    To see the failing lines set environment variable
    _R_CHECK_FORTRAN_KIND_DETAILS_ to a true value.
  * When checking Rd files, R CMD check now notes some of the "lost
    braces" that tools::checkRd() finds.  Typical problems are Rd
    macros missing the initial backslash (e.g., code{...}), in-text
    set notation (e.g., {1, 2}, where the braces need escaping), and
    \itemize lists with \describe-style entries of the form
    \item{label}{description}.
  * R CMD INSTALL (and hence check) will compile C++ code with
  - DR_NO_REMAP if environment variable _R_CXX_USE_NO_REMAP_ is set
    to a true value.  It is planned that this will in future become
    the default for compiling C++.
  * The new built-in Rd macro \dontdiff{} can be used to mark example
    code whose output should be ignored when comparing check output
    to reference output (tests/Examples/&lt;pkg&gt;-Ex.Rout.save).  The
    \dontdiff tag, like \donttest, is _not_ shown on the rendered
    help page, so provides a clean alternative to ##
    IGNORE_RDIFF_(BEGIN|END) comments.
  * R CMD build when there is no NAMESPACE, now uses the recommended
    exportPattern("^[^.]"), instead of exporting everything.
  * R CMD check now warns about non-ASCII characters in the NAMESPACE
    file (in addition to R files). Such packages are not portable and
    may fail to install on some platforms.
  C-LEVEL FACILITIES:
  * Headers R_ext/Applic.h and R-ext/Linpack.h used to include
    R_ext/BLAS.h although this was undocumented and unneeded by their
    documented entry points.  They no longer do so.
  * New function R_missing(), factored out from do_missing(), used to
    fix PR#18579.
  * SEXP type S4SXP has been renamed to OBJSXP to support
    experimenting with alternative object systems.  The S4SXP value
    can still be used in C code but is now deprecated.  Based on
    contributions from the R Consortium's Object-Oriented Programming
    Working Group.
  * New function pow1p(x,y) for accurate (1+x)^y.
  * mkCharLenCE was incorrectly documented to take a size_t length
    but was implemented with int (and character strings in R are
    limited to 2^31 - 1 bytes).
  DEPRECATED AND DEFUNCT:
  * data() no longer handles zipped data from long-defunct (since R
    2.13.0) --use-zip-data installations.
  * The legacy graphics devices pictex() and xfig() are now
    deprecated.  They do not support recent graphics enhancements and
    their font handling is rudimentary. The intention is to retain
    them for historical interest as long as they remain somewhat
    functional.
  * Support for encoding = "MacRoman" has been removed from the pdf()
    and postscript() devices - this was a legacy encoding supporting
    classic macOS up to 2001 and no longer has universal libiconv
    support.
  * is.R() is deprecated as no other S dialect is known to be in use
    (and this could only identify historical dialects, not future
    ones).
    Further information on calls can be obtained by setting the
    environment variable _R_DEPRECATED_IS_R_ to error which turns the
    deprecation warning into an error and so by default gives a
    traceback.  (This is done by R CMD check --as-cran.)
  * UseMethod() no longer forwards local variables assigned in the
    generic function into method call environments before evaluating
    the method body. This makes method calls behave more like
    standard function calls and makes method code easier to analyze
    correctly.
  * The twelve as.data.frame.&lt;class&gt;() methods which were deprecated
    only via _R_CHECK_AS_DATA_FRAME_EXPLICIT_METHOD_ and in R CMD
    check --as-cran are formally deprecated now in favour of calling
    as.data.frame() or as.data.frame.vector().  The deprecation
    "check" now works also when as.data.frame() is S4 generic thanks
    to Ivan Krylov.
  * The default method for the directional comparison operators &lt;, &gt;,
    &lt;=, and &gt;= now signals an error when one of the operands is a
    language object, i.e. a symbol or a call.
  * For terms.formula(), deprecate abb and neg.out arguments
    _formally_ in addition to just documenting it.
  BUG FIXES:
  * The methods package is more robust to not being attached to the
    search path.  More work needs to be done.
  * pairwise.t.test() misbehaved when subgroups had 0 DF for
    variance, even with pool.sd = TRUE.  (PR#18594 by Jack Berry).
  * Probability distribution functions [dpq]&lt;distrib&gt;(x, *), but also
    bessel[IKJY](x, .) now consistently preserve attributes(x) when
    length(x) == 0, e.g., for a 2 x 0 matrix, thanks to Karolis
    Koncevičius' report PR#18509.
  * Group "Summary" computations such as sum(1:3, 4, na.rm = 5, NA,
    7, na.rm = LL) now give an error instead of either 17 or NN for
    LL true or false, as proposed by Ivan Krylov on the R-devel
    mailing list.  (This also means it is now an error to specify
    na.rm more than once.)
  * as.complex(x) now returns complex(real = x, imaginary = 0) for
    _all_ numerical and logical x, notably also for NA or
    NA_integer_.
  * Directories are now omitted by file.copy(, recursive = FALSE) and
    in file.append() (PR#17337).
  * gsub() and sub() are now more robust to integer overflow when
    reporting errors caused by too large input strings (PR#18346).
  * Top-level handlers are now more robust to attempts to remove a
    handler whilst handlers are running (PR#18508).
  * The handling of Alt+F4 in dialogs created on Windows using
    GraphApp has been fixed (PR#13870).
  * density() more consistently computes grid values for the
    FFT-based convolution, following Robert Schlicht's analysis and
    proposal in PR#18337, correcting density values typically by a
    factor of about 0.999.  Argument old.coords = TRUE provides back
    compatibility.
  * palette.colors() gains a name argument that defaults to FALSE
    controlling whether the vector of colours that is returned has
    names (where possible).  PR#18529.
  * tools::xgettext() no longer extracts the (non-translatable) class
    names from warningCondition and errorCondition calls.
  * S3method(&lt;gen&gt;, &lt;class&gt;, &lt;func&gt;) in the NAMESPACE file now works
    (again) when &lt;func&gt; is visible from the namespace, e.g.,
    imported, or in base.
  * getParseData(f) now also works for a function defined in the
    first of several &lt;pkg&gt;/R/*.R source files, thanks to Kirill
    Müller's report and Duncan Murdoch's patch in PR#16756.
  * Rd \Sexpr macros with nested #ifdef conditionals were not
    processed.
  * A non-blocking connection with non-default encoding (such as a
    socket) now correctly returns from readLines() after new data has
    arrived also when its EOF had been reached previously.  Thanks to
    Peter Meilstrup's report on R-devel and Ivan Krylov's report and
    patch proposal in PR#18555.
  * tools::checkRdContents() failed to detect empty argument
    descriptions when they spanned multiple lines, including those
    generated by prompt().  These cases are now noted by R CMD check.
  * Plain-text help no longer outputs spurious colons in the
    arguments list (for multi-line \item labels in the Rd source).
  * kappa() and rcond() work correctly in more cases; kappa(., norm =
    "2") now warns that it computes the 1-norm with (default) exact =
    FALSE; prompted by Mikael Jagan's quite comprehensive PR#18543.
  * Rd skeletons generated by prompt() or promptData() now use a
    dummy title (so R CMD build works).  tools::checkRdContents() has
    been updated to detect such template leftovers, including from
    promptPackage().
  * When S4 method dispatch fails because no method was found, the
    error message now includes the signature argument names; thanks
    to Michael Chirico's proposal on the R-devel list.
  * withAutoprint({ .. }) now preserves srcrefs previously lost,
    thanks to Andrew Simmons' report plus fix in PR#18572.
  * transform.data.frame() no longer adjusts names; in particular,
    untransformed variables are kept as-is, including those with
    syntactically invalid names (PR#17890).
  * The keep.source option for Rd \Sexpr blocks is no longer ignored.
  * The formula methods for t.test() and wilcox.test() now catch when
    paired is passed, addressing PR#14359; use Pair(x1, x2) ~ 1 for a
    paired test.
  * The level reported in the browser prompt was often too large. It
    now shows the number of browser contexts on the stack.
  * For cbind() and rbind(), the optional deparse.level argument is
    now properly passed to methods, thanks to Mikael Jagan's PR#18579
    and comments there.
  * Some error and warning messages for large ('long vector')
    matrix(v, nr, nc) and dim(m) &lt;- d are now correct about sizes,
    using long long formatting, fixing PR#18612 (and more) reported
    by Mikael Jagan.
  * readChar(useBytes = TRUE) now terminates strings even when the
    underlying connection uses extra spaces in the input buffer.
    This fixes problems with extra garbage seen with gzip
    connections, PR#18605.
  * Named capture in PCRE regular expressions now works also with
    more than 127 named groups (PR#18588).
  * Datetime functions are now robust against long jumps when dealing
    with internal time zone changes.  This avoids confusing warnings
    about an invalid time zone, previously triggered by turning
    warnings into errors or handling them via tryCatch (PR#17966,
    PR#17780).
  * Datetime functions now restore even an empty TZ environment
    variable after internal time zone changes (PR#17724).  This makes
    results of datetime functions with this (typically unintentional)
    setting more predictable.
  * drop.terms(*) now drops response as by default, keep.response =
    FALSE, fixing PR#18564 thanks to Mikael Jagan.
  * dummy.coef(.) now also works for lm()-models with character
    categorical predictor variables rather than factor ones, fixing
    PR#18635 reported by Jinsong Zhao.
  * formals(f) &lt;- formals(f) now also works for a function w/o
    arguments and atomic _constant_ body(f).
  * Correct as.function(&lt;invalid list&gt;, .)'s error message.
  * removeSource() is yet more thorough in finding and removing
    "srcref" and the other source references from parsed R language
    chunks, fixing PR#18638 thanks to Andrew Simmons.
  * dgeom() is more accurate now, notably when its result is very
    small, fixing PR#18642 thanks to the proposal of Morten Welinder,
    also improving other instances where C level binom_raw(x, n, ..)
    has x == 0 or x== n.
  * warning() with options(warn = 1) has improved output for
    multi-line messages.
  * axis.Date() and axis.POSIXct() now respect the par("lab") setting
    for the number of pretty() intervals.
  * Comparisons for language objects (which are based on deparsing)
    are now more careful about using accurate deparsed results
    (PR#18676).
  * Plain-text help (Rd2txt) now correctly preserves blank lines
    following single-line \dontrun code.
  * &lt;POSIXlt&gt;[*] no longer sets wrong "balanced" attribute, fixing
    PR#18681 thanks to Mikael Jagan.
  * str(&lt;classed-call&gt;) now deparses the call as expected, fixing
    PR#18684, reported by Dave Slager.
  * In Rd examples, code following the closing brace of a \dontrun,
    \dontshow or \donttest tag on the same line is no longer skipped
    when R CMD check runs the examples.
  * as.data.frame(matrix(*, ncol=0)) now gets valid names() and
    colnames(); reported by Davis Vaughan on the R-devel list.
  * Internal Mathlib function stirlerr(n) is now almost fully
    (52-bit) accurate for all n &gt;= ~5.9 and more accurate also in the
    range 1 -- 5.9.  This entails small ("after 12th decimal")
    changes in density functions, e.g., dgamma() in _some_ regions of
    their support.  The fix was partly prompted by Morten Welinder's
    PR#18640.
  * Numbers like 9876543.2 are now considered non-integer by Mathlib
    internal R_nonint(), amending original fix of PR#15734.
  * Rd comment lines no longer cause broken paragraphs in the
    rendered PDF and plain-text help. In code blocks, pure comment
    lines (starting with %) no longer produce an empty line.
  * xtabs(Freq ~ .) now consistently defaults to na.action = na.pass,
    using na.rm = FALSE (added as an argument) when summing over Freq
    (PR#17770).
  * tools::testInstalledPackage() is no longer silent about failures
    from running examples or tests and its return code no longer
    ignores failures from checking vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1718366400">- CHANGES IN R 4.4.1:
  C-LEVEL FACILITIES:
  * Functions R_atof and R_strtod declared in header R_ext/Utils.h
    are now documented in 'Writing R Extensions' and so formally part
    of the API.
  * The non-API entry points Rf_setSVector, Rf_StringFalse,
    Rf_StringTrue and Rf_isBlankString have been added to those
    reported by R CMD check.
  * The new function Rf_allocLang is now available. This provides an
    alternative to the idiom of calling Rf_allocList followed by
    SET_TYPEOF.
  UTILITIES:
  * R CMD check now reports as warnings what gfortran calls 'Fortran
    2018 deleted features', all of which have long been marked as
    'obsolescent' and some of which were deleted in Fortran 2008 or
    earlier.  Fortran compilers are no longer required to support
    these.
  BUG FIXES:
  * as.numeric(), scan(), type.convert() and other places which use
    the internal C function R_strtod now require a _non-empty_ digit
    sequence in a decimal or binary exponent.  This aligns with the
    C/POSIX standard for strtod and with ?NumericConstants.
  * as.data.frame(m, make.names=NA) now works correctly for a matrix
    m with NA's in row names.
  * The error message from &lt;POSIXlt&gt;[["hour"]] and similar now
    mentions *[[, "hour"]], as wished for in PR#17409 and proposed by
    Michael Chirico.
  * qbinom() and potentially qpois(), qnbinom(), no longer sometimes
    fail accurate inversion (of pbinom(), etc), thanks to Christopher
    Chang's report and patch in PR#18711.
  * The internal help server on Windows can again serve requests sent
    in quick succession, fixing a regression in R 4.4.0.
  * debugcall(&lt;S3Generic&gt;()) now also works when a corresponding
    S4-generic version is in the methods cache (PR#18143).
  * Package tools' toTitleCase(ch0) now returns character(0) when ch0
    is of zero length; fixing PR#18724, reported by David Hugh Jones.
  * R CMD check is no longer broken (without a check result and no
    explanation in 00check.log) for a package which declares an
    invalid VignetteBuilder in DESCRIPTION but has no vignettes.</changelog>
  <changelog author="Detlef Steuer &lt;detlef.steuer@gmx.de&gt;" date="1730376000">- CHANGES IN R 4.4.2:
  C-LEVEL FACILITIES:
  * The S-compatibility macros F77_COM and F77_COMDECL defined in
    header R_ext/RS.h are deprecated and will be removed shortly.  We
    could find no record of their use.
  BUG FIXES:
  * Mathlib function lgammacor(x) no longer warns about underflow to
    zero for large x.
  * Text widths and heights were incorrectly reported by the Quartz
    device if the drawing context didn't exist yet (typically when
    drawing off-screen to a window that is yet to appear, see
    PR#18591).
  * The Quartz device could segfault in cases where paths with spaces
    are used in the new glyph drawing API.  Thanks to Tomek
    Gieorgijewski (PR#18758).
  * On macOS in R CRAN builds, it is again possible to read
    little-endian UTF-16 text with a BOM from a connection using
    encoding="UTF-16".  Users building R from source should avoid
    using the system libiconv in macOS 14.1 and later.
  * methods' internal .requirePackage() now re-enables primitive
    method dispatch when needed; thanks to Ivan Krylov for
    demystifying CRAN package check failures on the R-devel mailing
    list.</changelog>
</package>
<package pkgid="c5af883a566255c1dec9f65a228d419d60f66af50bcaa939cbfc6c0be646b74f5a86b6766d7347ce34adb870d26d3003a528fb931f391a07faaaef0c6df2a3c1" name="SDL2" arch="src">
  <version epoch="0" ver="2.30.6" rel="1.0.2.1.sr20240803"/>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1669118400">- Update to release 2.26
  * Added SDL_GetWindowSizeInPixels() to get the window size in
    pixels, which may differ from the window coordinate size for
    windows with high-DPI support.
  * Added simulated vsync synchronization for the software
    renderer.
  * Added the mouse position to SDL_MouseWheelEvent.
  * Added SDL_ResetHints() to reset all hints to their default
    values.
  * Added SDL_GetJoystickGUIDInfo() to get device information
    encoded in a joystick GUID.
  * Added XBOX Hints.
  * Added support for PS3 and Wii controllers to the HIDAPI
    driver (not enabled by default).
  * Added access to the individual left and right gyro sensors of
    the combined Joy-Cons controller.
  * Added a microsecond timestamp to SDL_SensorEvent and
    SDL_ControllerSensorEvent, when the hardware provides that
    information.
- Delete sdl2-khronos.patch (merged)
- Drop CVE-2022-4743.patch.</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1669896000">- Update to release 2.26.1
  * Improved audio resampling quality
  * Fixed crash if SDL_GetPointDisplayIndex() or
    SDL_GetRectDisplayIndex() are called before SDL_VideoInit()</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1672747200">- Update to release 2.26.2
  * Fixed long delay at startup when a Razer keyboard is
    connected
  * Fixed not receiving SDLK_5 or SDL_SCANCODE_5 when using the
    AZERTY keyboard layout on Linux
- Enable libsamplerate and libdecor components
- Remove unused tslib build requirement</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1675771200">- Update to release 2.26.3
  * Fixed infinite loop shutting down WGI controllers
  * Fixed centering the D-pad on some Xbox controllers</changelog>
  <changelog author="Michal Suchanek &lt;msuchanek@suse.com&gt;" date="1677844800">- Use current keymap on console
  (https://github.com/libsdl-org/SDL/pull/7400 )
  + 0001-Cleanup-add-brace-6545.patch
  + 0002-Update-for-SDL3-coding-style-6717.patch
  + 0003-Clang-Tidy-fixes-6725.patch
  + 0004-evdev_kbd-Use-current-keymap.patch</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1678190400">- Update to release 2.26.4
  * Fixed using older game controller mappings on Linux</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1681214400">- Update to release 2.26.5
  * Fixed handling of third party PS4 controller input reports
  * Added support for the trigger buttons on the Victrix Pro FS
    for PS5
  * Added mapping for Flydigi Vader 2 with the latest firmware
    (6.0.4.9)
  * Added mapping for DualSense Edge Wireless Controller on Linux
  * Added mapping for Hori Pokken Tournament DX Pro Pad
  * Improved the speed and quality of audio resampling
  * Fixed crash on Linux if dbus can't be initialized</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1687348800">- Update to release 2.28
  * Added SDL_HasWindowSurface() and SDL_DestroyWindowSurface() to
    switch between the window surface and rendering APIs.
  * Added a display event SDL_DISPLAYEVENT_MOVED which is sent
    when the primary monitor changes or displays change position
    relative to each other.
  * Added the hint SDL_HINT_ENABLE_SCREEN_KEYBOARD to control
    whether the on-screen keyboard should be shown when text input
    is active.
- Delete 0001-Cleanup-add-brace-6545.patch,
  0002-Update-for-SDL3-coding-style-6717.patch,
  0003-Clang-Tidy-fixes-6725.patch (inapplicable),
  0004-evdev_kbd-Use-current-keymap.patch (merged).</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1688212800">- Update to release 2.28.1
  * Added support for the Nintendo Online Famicom controllers
  * Improved support for third-party Nintendo Switch controllers
  * Fixed setting the player LED on Nintendo Switch controllers
  * Added Linux controller mapping for the Logitech Chillstream</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1690977600">- Update to release 2.28.2
  * Fixed 8BitDo gamepad mapping when in XInput mode on Linux
  * Fixed controller lockup initializing some unofficial PS4
    replica controllers
  * Fixed video initialization on headless Linux systems using VNC</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1693569600">- Update to release 2.28.3
  * Added a gamepad mapping for the G-Shark GS-GP702
  * Fixed touchpad events for the Razer Wolverine V2 Pro in PS5 mode</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1696248000">- Update to release 2.28.4
  * Enable clipping for zero sized rectangles in the SDL renderer
  * Notify X11 clipboard managers when the clipboard changes
  * Fixed sensor timestamps for third-party PS5 controllers
  * Added detection for Logitech and Simagic racing wheels</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1696680000">- Enable direct PipeWire support</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1698926400">- Update to release 2.28.5
  * Added support for the HP HyperX Clutch Gladiate controller
  * Fixed a crash if a controller is disconnected while SDL is
    opening it
  * Fixed a crash on Linux if XInput2 isn't available at runtime</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1706875200">- Update to release 2.30
  * Added support for 2 bits-per-pixel indexed surface formats.
  * Added the function SDL_GameControllerGetSteamHandle() to get
    the Steam API handle for a controller, if available.
  * Added the event SDL_CONTROLLERSTEAMHANDLEUPDATED which is sent
    when the Steam API handle for a controller changes. This could
    also change the name, VID, and PID of the controller.
  * Added the environment variable SDL_LOGGING to control default
    log output.</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1709726400">- Update to release 2.30.1
  * Fixed a regression causing SDL_WaitEvent() to return spurious
    failures
  * Wayland windows automatically have OpenGL enabled again
  * Fixed memory corruption when converting signed 16-bit audio
    to float
  * Fixed audio artifacts when converting signed 8-bit audio to
    float
  * Fixed the clip rectangle not being updated when the viewport
    changes in the SDL renderer</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1712059200">- Update to release 2.30.2
  * Fixed performance regression initialing controllers on Linux
  * Added support for the 6-button SEGA Mega Drive Control Pad
    for Nintendo Online
  * Add support for MadCatz Saitek Side Panel Control Deck
  * Added support for the Hori Fighting Stick EX2
  * Added support for the Yawman Arrow flightstick
  * Added a gamepad mapping for the Defender Joystick Cobra R4
  * Fixed the gamepad mapping for the Sanwa Supply JY-P76USV
    controller
  * Allow using SDL_RWFromFile() with named pipes</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1714564800">- Update to release 2.30.3
  * Fixed a pointer warping issue on XWayland
  * Reduced startup time when scanning for game controllers on Linux</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1718712000">- Update to release 2.30.4
  * Added support for the Saitek Cyborg V.3 Rumble Pad in PS3 mode
  * Added support for the Razer Kitsune in PS5 mode
  * Added Linux bindings for the Qanba Drone 2 Arcade Joystick
  * Leave Nintendo Online controllers in simple report mode so
    they work with DirectInput games
  * Enable using libusb for GameCube controllers when available</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1723809600">- Update to release 2.30.6
  * Improved detection of Nintendo Switch Pro controller report mode
  * Fixed a rare crash when a controller is disconnected</changelog>
</package>
<package pkgid="f55a0022cd5a9149b9c916346c83504b16f6e74856807d6384fab3ba1ef90a423ba0862fe2889282b078d02ee7070d562f7d5d6d7b84cca55ce271566552647c" name="SDL2" arch="src">
  <version epoch="0" ver="2.30.6" rel="1.1"/>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1669118400">- Update to release 2.26
  * Added SDL_GetWindowSizeInPixels() to get the window size in
    pixels, which may differ from the window coordinate size for
    windows with high-DPI support.
  * Added simulated vsync synchronization for the software
    renderer.
  * Added the mouse position to SDL_MouseWheelEvent.
  * Added SDL_ResetHints() to reset all hints to their default
    values.
  * Added SDL_GetJoystickGUIDInfo() to get device information
    encoded in a joystick GUID.
  * Added XBOX Hints.
  * Added support for PS3 and Wii controllers to the HIDAPI
    driver (not enabled by default).
  * Added access to the individual left and right gyro sensors of
    the combined Joy-Cons controller.
  * Added a microsecond timestamp to SDL_SensorEvent and
    SDL_ControllerSensorEvent, when the hardware provides that
    information.
- Delete sdl2-khronos.patch (merged)
- Drop CVE-2022-4743.patch.</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1669896000">- Update to release 2.26.1
  * Improved audio resampling quality
  * Fixed crash if SDL_GetPointDisplayIndex() or
    SDL_GetRectDisplayIndex() are called before SDL_VideoInit()</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1672747200">- Update to release 2.26.2
  * Fixed long delay at startup when a Razer keyboard is
    connected
  * Fixed not receiving SDLK_5 or SDL_SCANCODE_5 when using the
    AZERTY keyboard layout on Linux
- Enable libsamplerate and libdecor components
- Remove unused tslib build requirement</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1675771200">- Update to release 2.26.3
  * Fixed infinite loop shutting down WGI controllers
  * Fixed centering the D-pad on some Xbox controllers</changelog>
  <changelog author="Michal Suchanek &lt;msuchanek@suse.com&gt;" date="1677844800">- Use current keymap on console
  (https://github.com/libsdl-org/SDL/pull/7400 )
  + 0001-Cleanup-add-brace-6545.patch
  + 0002-Update-for-SDL3-coding-style-6717.patch
  + 0003-Clang-Tidy-fixes-6725.patch
  + 0004-evdev_kbd-Use-current-keymap.patch</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1678190400">- Update to release 2.26.4
  * Fixed using older game controller mappings on Linux</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1681214400">- Update to release 2.26.5
  * Fixed handling of third party PS4 controller input reports
  * Added support for the trigger buttons on the Victrix Pro FS
    for PS5
  * Added mapping for Flydigi Vader 2 with the latest firmware
    (6.0.4.9)
  * Added mapping for DualSense Edge Wireless Controller on Linux
  * Added mapping for Hori Pokken Tournament DX Pro Pad
  * Improved the speed and quality of audio resampling
  * Fixed crash on Linux if dbus can't be initialized</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1687348800">- Update to release 2.28
  * Added SDL_HasWindowSurface() and SDL_DestroyWindowSurface() to
    switch between the window surface and rendering APIs.
  * Added a display event SDL_DISPLAYEVENT_MOVED which is sent
    when the primary monitor changes or displays change position
    relative to each other.
  * Added the hint SDL_HINT_ENABLE_SCREEN_KEYBOARD to control
    whether the on-screen keyboard should be shown when text input
    is active.
- Delete 0001-Cleanup-add-brace-6545.patch,
  0002-Update-for-SDL3-coding-style-6717.patch,
  0003-Clang-Tidy-fixes-6725.patch (inapplicable),
  0004-evdev_kbd-Use-current-keymap.patch (merged).</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1688212800">- Update to release 2.28.1
  * Added support for the Nintendo Online Famicom controllers
  * Improved support for third-party Nintendo Switch controllers
  * Fixed setting the player LED on Nintendo Switch controllers
  * Added Linux controller mapping for the Logitech Chillstream</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1690977600">- Update to release 2.28.2
  * Fixed 8BitDo gamepad mapping when in XInput mode on Linux
  * Fixed controller lockup initializing some unofficial PS4
    replica controllers
  * Fixed video initialization on headless Linux systems using VNC</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1693569600">- Update to release 2.28.3
  * Added a gamepad mapping for the G-Shark GS-GP702
  * Fixed touchpad events for the Razer Wolverine V2 Pro in PS5 mode</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1696248000">- Update to release 2.28.4
  * Enable clipping for zero sized rectangles in the SDL renderer
  * Notify X11 clipboard managers when the clipboard changes
  * Fixed sensor timestamps for third-party PS5 controllers
  * Added detection for Logitech and Simagic racing wheels</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1696680000">- Enable direct PipeWire support</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1698926400">- Update to release 2.28.5
  * Added support for the HP HyperX Clutch Gladiate controller
  * Fixed a crash if a controller is disconnected while SDL is
    opening it
  * Fixed a crash on Linux if XInput2 isn't available at runtime</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1706875200">- Update to release 2.30
  * Added support for 2 bits-per-pixel indexed surface formats.
  * Added the function SDL_GameControllerGetSteamHandle() to get
    the Steam API handle for a controller, if available.
  * Added the event SDL_CONTROLLERSTEAMHANDLEUPDATED which is sent
    when the Steam API handle for a controller changes. This could
    also change the name, VID, and PID of the controller.
  * Added the environment variable SDL_LOGGING to control default
    log output.</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1709726400">- Update to release 2.30.1
  * Fixed a regression causing SDL_WaitEvent() to return spurious
    failures
  * Wayland windows automatically have OpenGL enabled again
  * Fixed memory corruption when converting signed 16-bit audio
    to float
  * Fixed audio artifacts when converting signed 8-bit audio to
    float
  * Fixed the clip rectangle not being updated when the viewport
    changes in the SDL renderer</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1712059200">- Update to release 2.30.2
  * Fixed performance regression initialing controllers on Linux
  * Added support for the 6-button SEGA Mega Drive Control Pad
    for Nintendo Online
  * Add support for MadCatz Saitek Side Panel Control Deck
  * Added support for the Hori Fighting Stick EX2
  * Added support for the Yawman Arrow flightstick
  * Added a gamepad mapping for the Defender Joystick Cobra R4
  * Fixed the gamepad mapping for the Sanwa Supply JY-P76USV
    controller
  * Allow using SDL_RWFromFile() with named pipes</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1714564800">- Update to release 2.30.3
  * Fixed a pointer warping issue on XWayland
  * Reduced startup time when scanning for game controllers on Linux</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1718712000">- Update to release 2.30.4
  * Added support for the Saitek Cyborg V.3 Rumble Pad in PS3 mode
  * Added support for the Razer Kitsune in PS5 mode
  * Added Linux bindings for the Qanba Drone 2 Arcade Joystick
  * Leave Nintendo Online controllers in simple report mode so
    they work with DirectInput games
  * Enable using libusb for GameCube controllers when available</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1723809600">- Update to release 2.30.6
  * Improved detection of Nintendo Switch Pro controller report mode
  * Fixed a rare crash when a controller is disconnected</changelog>
</package>
<package pkgid="08042b386936a556ea98a47efe8846fdd552d98d5311edad9da280385a1964e8054cab109d559144bc7d2b04303119a4944d4e4530806e1cfb36a6a120b11459" name="SDL2" arch="src">
  <version epoch="0" ver="2.30.6" rel="2.0.4.1.sr20240803"/>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1669896000">- Update to release 2.26.1
  * Improved audio resampling quality
  * Fixed crash if SDL_GetPointDisplayIndex() or
    SDL_GetRectDisplayIndex() are called before SDL_VideoInit()</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1672747200">- Update to release 2.26.2
  * Fixed long delay at startup when a Razer keyboard is
    connected
  * Fixed not receiving SDLK_5 or SDL_SCANCODE_5 when using the
    AZERTY keyboard layout on Linux
- Enable libsamplerate and libdecor components
- Remove unused tslib build requirement</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1675771200">- Update to release 2.26.3
  * Fixed infinite loop shutting down WGI controllers
  * Fixed centering the D-pad on some Xbox controllers</changelog>
  <changelog author="Michal Suchanek &lt;msuchanek@suse.com&gt;" date="1677844800">- Use current keymap on console
  (https://github.com/libsdl-org/SDL/pull/7400 )
  + 0001-Cleanup-add-brace-6545.patch
  + 0002-Update-for-SDL3-coding-style-6717.patch
  + 0003-Clang-Tidy-fixes-6725.patch
  + 0004-evdev_kbd-Use-current-keymap.patch</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1678190400">- Update to release 2.26.4
  * Fixed using older game controller mappings on Linux</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1681214400">- Update to release 2.26.5
  * Fixed handling of third party PS4 controller input reports
  * Added support for the trigger buttons on the Victrix Pro FS
    for PS5
  * Added mapping for Flydigi Vader 2 with the latest firmware
    (6.0.4.9)
  * Added mapping for DualSense Edge Wireless Controller on Linux
  * Added mapping for Hori Pokken Tournament DX Pro Pad
  * Improved the speed and quality of audio resampling
  * Fixed crash on Linux if dbus can't be initialized</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1687348800">- Update to release 2.28
  * Added SDL_HasWindowSurface() and SDL_DestroyWindowSurface() to
    switch between the window surface and rendering APIs.
  * Added a display event SDL_DISPLAYEVENT_MOVED which is sent
    when the primary monitor changes or displays change position
    relative to each other.
  * Added the hint SDL_HINT_ENABLE_SCREEN_KEYBOARD to control
    whether the on-screen keyboard should be shown when text input
    is active.
- Delete 0001-Cleanup-add-brace-6545.patch,
  0002-Update-for-SDL3-coding-style-6717.patch,
  0003-Clang-Tidy-fixes-6725.patch (inapplicable),
  0004-evdev_kbd-Use-current-keymap.patch (merged).</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1688212800">- Update to release 2.28.1
  * Added support for the Nintendo Online Famicom controllers
  * Improved support for third-party Nintendo Switch controllers
  * Fixed setting the player LED on Nintendo Switch controllers
  * Added Linux controller mapping for the Logitech Chillstream</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1690977600">- Update to release 2.28.2
  * Fixed 8BitDo gamepad mapping when in XInput mode on Linux
  * Fixed controller lockup initializing some unofficial PS4
    replica controllers
  * Fixed video initialization on headless Linux systems using VNC</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1693569600">- Update to release 2.28.3
  * Added a gamepad mapping for the G-Shark GS-GP702
  * Fixed touchpad events for the Razer Wolverine V2 Pro in PS5 mode</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1696248000">- Update to release 2.28.4
  * Enable clipping for zero sized rectangles in the SDL renderer
  * Notify X11 clipboard managers when the clipboard changes
  * Fixed sensor timestamps for third-party PS5 controllers
  * Added detection for Logitech and Simagic racing wheels</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1696680000">- Enable direct PipeWire support</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1698926400">- Update to release 2.28.5
  * Added support for the HP HyperX Clutch Gladiate controller
  * Fixed a crash if a controller is disconnected while SDL is
    opening it
  * Fixed a crash on Linux if XInput2 isn't available at runtime</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1706875200">- Update to release 2.30
  * Added support for 2 bits-per-pixel indexed surface formats.
  * Added the function SDL_GameControllerGetSteamHandle() to get
    the Steam API handle for a controller, if available.
  * Added the event SDL_CONTROLLERSTEAMHANDLEUPDATED which is sent
    when the Steam API handle for a controller changes. This could
    also change the name, VID, and PID of the controller.
  * Added the environment variable SDL_LOGGING to control default
    log output.</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1709726400">- Update to release 2.30.1
  * Fixed a regression causing SDL_WaitEvent() to return spurious
    failures
  * Wayland windows automatically have OpenGL enabled again
  * Fixed memory corruption when converting signed 16-bit audio
    to float
  * Fixed audio artifacts when converting signed 8-bit audio to
    float
  * Fixed the clip rectangle not being updated when the viewport
    changes in the SDL renderer</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1712059200">- Update to release 2.30.2
  * Fixed performance regression initialing controllers on Linux
  * Added support for the 6-button SEGA Mega Drive Control Pad
    for Nintendo Online
  * Add support for MadCatz Saitek Side Panel Control Deck
  * Added support for the Hori Fighting Stick EX2
  * Added support for the Yawman Arrow flightstick
  * Added a gamepad mapping for the Defender Joystick Cobra R4
  * Fixed the gamepad mapping for the Sanwa Supply JY-P76USV
    controller
  * Allow using SDL_RWFromFile() with named pipes</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1714564800">- Update to release 2.30.3
  * Fixed a pointer warping issue on XWayland
  * Reduced startup time when scanning for game controllers on Linux</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1718712000">- Update to release 2.30.4
  * Added support for the Saitek Cyborg V.3 Rumble Pad in PS3 mode
  * Added support for the Razer Kitsune in PS5 mode
  * Added Linux bindings for the Qanba Drone 2 Arcade Joystick
  * Leave Nintendo Online controllers in simple report mode so
    they work with DirectInput games
  * Enable using libusb for GameCube controllers when available</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1723809600">- Update to release 2.30.6
  * Improved detection of Nintendo Switch Pro controller report mode
  * Fixed a rare crash when a controller is disconnected</changelog>
  <changelog author="Antonio Larrosa &lt;alarrosa@suse.com&gt;" date="1724932800">- Don't build with fcitx support. fcitx support was just added
  because of a bug (boo#1025413) that could be fixed by building
  with fcitx support but upstream SDL2 developers fixed it
  in 2.0.5 when building without fcitx support too. Also fcitx
  support has always been disabled in SLE/Leap and in Factory
  it's built against fcitx 4.2.9.9, not the newer fcitx5 so
  let's disable it in order to reduce dependencies.</changelog>
</package>
<package pkgid="365ea459b91b8a6779fd62a75cb88a09bc7e088195ce3fc58a3ef1c254f7e1efd50168c409f976432de5151885449b19b45f20ca436d83bdf44f87a2b53a8ec5" name="SDL2" arch="src">
  <version epoch="0" ver="2.30.7" rel="1.1"/>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1672747200">- Update to release 2.26.2
  * Fixed long delay at startup when a Razer keyboard is
    connected
  * Fixed not receiving SDLK_5 or SDL_SCANCODE_5 when using the
    AZERTY keyboard layout on Linux
- Enable libsamplerate and libdecor components
- Remove unused tslib build requirement</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1675771200">- Update to release 2.26.3
  * Fixed infinite loop shutting down WGI controllers
  * Fixed centering the D-pad on some Xbox controllers</changelog>
  <changelog author="Michal Suchanek &lt;msuchanek@suse.com&gt;" date="1677844800">- Use current keymap on console
  (https://github.com/libsdl-org/SDL/pull/7400 )
  + 0001-Cleanup-add-brace-6545.patch
  + 0002-Update-for-SDL3-coding-style-6717.patch
  + 0003-Clang-Tidy-fixes-6725.patch
  + 0004-evdev_kbd-Use-current-keymap.patch</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1678190400">- Update to release 2.26.4
  * Fixed using older game controller mappings on Linux</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1681214400">- Update to release 2.26.5
  * Fixed handling of third party PS4 controller input reports
  * Added support for the trigger buttons on the Victrix Pro FS
    for PS5
  * Added mapping for Flydigi Vader 2 with the latest firmware
    (6.0.4.9)
  * Added mapping for DualSense Edge Wireless Controller on Linux
  * Added mapping for Hori Pokken Tournament DX Pro Pad
  * Improved the speed and quality of audio resampling
  * Fixed crash on Linux if dbus can't be initialized</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1687348800">- Update to release 2.28
  * Added SDL_HasWindowSurface() and SDL_DestroyWindowSurface() to
    switch between the window surface and rendering APIs.
  * Added a display event SDL_DISPLAYEVENT_MOVED which is sent
    when the primary monitor changes or displays change position
    relative to each other.
  * Added the hint SDL_HINT_ENABLE_SCREEN_KEYBOARD to control
    whether the on-screen keyboard should be shown when text input
    is active.
- Delete 0001-Cleanup-add-brace-6545.patch,
  0002-Update-for-SDL3-coding-style-6717.patch,
  0003-Clang-Tidy-fixes-6725.patch (inapplicable),
  0004-evdev_kbd-Use-current-keymap.patch (merged).</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1688212800">- Update to release 2.28.1
  * Added support for the Nintendo Online Famicom controllers
  * Improved support for third-party Nintendo Switch controllers
  * Fixed setting the player LED on Nintendo Switch controllers
  * Added Linux controller mapping for the Logitech Chillstream</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1690977600">- Update to release 2.28.2
  * Fixed 8BitDo gamepad mapping when in XInput mode on Linux
  * Fixed controller lockup initializing some unofficial PS4
    replica controllers
  * Fixed video initialization on headless Linux systems using VNC</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1693569600">- Update to release 2.28.3
  * Added a gamepad mapping for the G-Shark GS-GP702
  * Fixed touchpad events for the Razer Wolverine V2 Pro in PS5 mode</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1696248000">- Update to release 2.28.4
  * Enable clipping for zero sized rectangles in the SDL renderer
  * Notify X11 clipboard managers when the clipboard changes
  * Fixed sensor timestamps for third-party PS5 controllers
  * Added detection for Logitech and Simagic racing wheels</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1696680000">- Enable direct PipeWire support</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1698926400">- Update to release 2.28.5
  * Added support for the HP HyperX Clutch Gladiate controller
  * Fixed a crash if a controller is disconnected while SDL is
    opening it
  * Fixed a crash on Linux if XInput2 isn't available at runtime</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1706875200">- Update to release 2.30
  * Added support for 2 bits-per-pixel indexed surface formats.
  * Added the function SDL_GameControllerGetSteamHandle() to get
    the Steam API handle for a controller, if available.
  * Added the event SDL_CONTROLLERSTEAMHANDLEUPDATED which is sent
    when the Steam API handle for a controller changes. This could
    also change the name, VID, and PID of the controller.
  * Added the environment variable SDL_LOGGING to control default
    log output.</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1709726400">- Update to release 2.30.1
  * Fixed a regression causing SDL_WaitEvent() to return spurious
    failures
  * Wayland windows automatically have OpenGL enabled again
  * Fixed memory corruption when converting signed 16-bit audio
    to float
  * Fixed audio artifacts when converting signed 8-bit audio to
    float
  * Fixed the clip rectangle not being updated when the viewport
    changes in the SDL renderer</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1712059200">- Update to release 2.30.2
  * Fixed performance regression initialing controllers on Linux
  * Added support for the 6-button SEGA Mega Drive Control Pad
    for Nintendo Online
  * Add support for MadCatz Saitek Side Panel Control Deck
  * Added support for the Hori Fighting Stick EX2
  * Added support for the Yawman Arrow flightstick
  * Added a gamepad mapping for the Defender Joystick Cobra R4
  * Fixed the gamepad mapping for the Sanwa Supply JY-P76USV
    controller
  * Allow using SDL_RWFromFile() with named pipes</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1714564800">- Update to release 2.30.3
  * Fixed a pointer warping issue on XWayland
  * Reduced startup time when scanning for game controllers on Linux</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1718712000">- Update to release 2.30.4
  * Added support for the Saitek Cyborg V.3 Rumble Pad in PS3 mode
  * Added support for the Razer Kitsune in PS5 mode
  * Added Linux bindings for the Qanba Drone 2 Arcade Joystick
  * Leave Nintendo Online controllers in simple report mode so
    they work with DirectInput games
  * Enable using libusb for GameCube controllers when available</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1723809600">- Update to release 2.30.6
  * Improved detection of Nintendo Switch Pro controller report mode
  * Fixed a rare crash when a controller is disconnected</changelog>
  <changelog author="Antonio Larrosa &lt;alarrosa@suse.com&gt;" date="1724932800">- Don't build with fcitx support. fcitx support was just added
  because of a bug (boo#1025413) that could be fixed by building
  with fcitx support but upstream SDL2 developers fixed it
  in 2.0.5 when building without fcitx support too. Also fcitx
  support has always been disabled in SLE/Leap and in Factory
  it's built against fcitx 4.2.9.9, not the newer fcitx5 so
  let's disable it in order to reduce dependencies.</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1725364800">- Update to release 2.30.7
  * Added support for the Retro-bit Controller in PS3 mode
  * Fixed the cursor becoming visible when using relative mode
    under XWayland
  * Fixed Direct Rendering Manager initialization failure on some
    Linux systems
  * Fixed a crash when the current mouse capture window is
    destroyed</changelog>
</package>
<package pkgid="8cb90f89297adcc994374c2c6ca7ae6973ed598d12f1bec5f8891c6ba8b80d2f43ce3948886c7e5ab9095d9c050a2a123af420c04aeca299c93247f3e2c8a9b3" name="SDL2" arch="src">
  <version epoch="0" ver="2.30.8" rel="1.1"/>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1675771200">- Update to release 2.26.3
  * Fixed infinite loop shutting down WGI controllers
  * Fixed centering the D-pad on some Xbox controllers</changelog>
  <changelog author="Michal Suchanek &lt;msuchanek@suse.com&gt;" date="1677844800">- Use current keymap on console
  (https://github.com/libsdl-org/SDL/pull/7400 )
  + 0001-Cleanup-add-brace-6545.patch
  + 0002-Update-for-SDL3-coding-style-6717.patch
  + 0003-Clang-Tidy-fixes-6725.patch
  + 0004-evdev_kbd-Use-current-keymap.patch</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1678190400">- Update to release 2.26.4
  * Fixed using older game controller mappings on Linux</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1681214400">- Update to release 2.26.5
  * Fixed handling of third party PS4 controller input reports
  * Added support for the trigger buttons on the Victrix Pro FS
    for PS5
  * Added mapping for Flydigi Vader 2 with the latest firmware
    (6.0.4.9)
  * Added mapping for DualSense Edge Wireless Controller on Linux
  * Added mapping for Hori Pokken Tournament DX Pro Pad
  * Improved the speed and quality of audio resampling
  * Fixed crash on Linux if dbus can't be initialized</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1687348800">- Update to release 2.28
  * Added SDL_HasWindowSurface() and SDL_DestroyWindowSurface() to
    switch between the window surface and rendering APIs.
  * Added a display event SDL_DISPLAYEVENT_MOVED which is sent
    when the primary monitor changes or displays change position
    relative to each other.
  * Added the hint SDL_HINT_ENABLE_SCREEN_KEYBOARD to control
    whether the on-screen keyboard should be shown when text input
    is active.
- Delete 0001-Cleanup-add-brace-6545.patch,
  0002-Update-for-SDL3-coding-style-6717.patch,
  0003-Clang-Tidy-fixes-6725.patch (inapplicable),
  0004-evdev_kbd-Use-current-keymap.patch (merged).</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1688212800">- Update to release 2.28.1
  * Added support for the Nintendo Online Famicom controllers
  * Improved support for third-party Nintendo Switch controllers
  * Fixed setting the player LED on Nintendo Switch controllers
  * Added Linux controller mapping for the Logitech Chillstream</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1690977600">- Update to release 2.28.2
  * Fixed 8BitDo gamepad mapping when in XInput mode on Linux
  * Fixed controller lockup initializing some unofficial PS4
    replica controllers
  * Fixed video initialization on headless Linux systems using VNC</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1693569600">- Update to release 2.28.3
  * Added a gamepad mapping for the G-Shark GS-GP702
  * Fixed touchpad events for the Razer Wolverine V2 Pro in PS5 mode</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1696248000">- Update to release 2.28.4
  * Enable clipping for zero sized rectangles in the SDL renderer
  * Notify X11 clipboard managers when the clipboard changes
  * Fixed sensor timestamps for third-party PS5 controllers
  * Added detection for Logitech and Simagic racing wheels</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1696680000">- Enable direct PipeWire support</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1698926400">- Update to release 2.28.5
  * Added support for the HP HyperX Clutch Gladiate controller
  * Fixed a crash if a controller is disconnected while SDL is
    opening it
  * Fixed a crash on Linux if XInput2 isn't available at runtime</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1706875200">- Update to release 2.30
  * Added support for 2 bits-per-pixel indexed surface formats.
  * Added the function SDL_GameControllerGetSteamHandle() to get
    the Steam API handle for a controller, if available.
  * Added the event SDL_CONTROLLERSTEAMHANDLEUPDATED which is sent
    when the Steam API handle for a controller changes. This could
    also change the name, VID, and PID of the controller.
  * Added the environment variable SDL_LOGGING to control default
    log output.</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1709726400">- Update to release 2.30.1
  * Fixed a regression causing SDL_WaitEvent() to return spurious
    failures
  * Wayland windows automatically have OpenGL enabled again
  * Fixed memory corruption when converting signed 16-bit audio
    to float
  * Fixed audio artifacts when converting signed 8-bit audio to
    float
  * Fixed the clip rectangle not being updated when the viewport
    changes in the SDL renderer</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1712059200">- Update to release 2.30.2
  * Fixed performance regression initialing controllers on Linux
  * Added support for the 6-button SEGA Mega Drive Control Pad
    for Nintendo Online
  * Add support for MadCatz Saitek Side Panel Control Deck
  * Added support for the Hori Fighting Stick EX2
  * Added support for the Yawman Arrow flightstick
  * Added a gamepad mapping for the Defender Joystick Cobra R4
  * Fixed the gamepad mapping for the Sanwa Supply JY-P76USV
    controller
  * Allow using SDL_RWFromFile() with named pipes</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1714564800">- Update to release 2.30.3
  * Fixed a pointer warping issue on XWayland
  * Reduced startup time when scanning for game controllers on Linux</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1718712000">- Update to release 2.30.4
  * Added support for the Saitek Cyborg V.3 Rumble Pad in PS3 mode
  * Added support for the Razer Kitsune in PS5 mode
  * Added Linux bindings for the Qanba Drone 2 Arcade Joystick
  * Leave Nintendo Online controllers in simple report mode so
    they work with DirectInput games
  * Enable using libusb for GameCube controllers when available</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1723809600">- Update to release 2.30.6
  * Improved detection of Nintendo Switch Pro controller report mode
  * Fixed a rare crash when a controller is disconnected</changelog>
  <changelog author="Antonio Larrosa &lt;alarrosa@suse.com&gt;" date="1724932800">- Don't build with fcitx support. fcitx support was just added
  because of a bug (boo#1025413) that could be fixed by building
  with fcitx support but upstream SDL2 developers fixed it
  in 2.0.5 when building without fcitx support too. Also fcitx
  support has always been disabled in SLE/Leap and in Factory
  it's built against fcitx 4.2.9.9, not the newer fcitx5 so
  let's disable it in order to reduce dependencies.</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1725364800">- Update to release 2.30.7
  * Added support for the Retro-bit Controller in PS3 mode
  * Fixed the cursor becoming visible when using relative mode
    under XWayland
  * Fixed Direct Rendering Manager initialization failure on some
    Linux systems
  * Fixed a crash when the current mouse capture window is
    destroyed</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1727784000">- Update to release 2.30.8
  * Fixed a crash in XInput code at startup
  * Fixed flooding the OS with I/O when a PS4/PS5 controller is
    disconnected
  * Added SDL_VIDEO_DOUBLE_BUFFER support to the Wayland backend
  * SDL_WINDOWEVENT_EXPOSED is sent appropriately when using
    Wayland
  * Fixed hang at startup in audio code when the application has
    large stack usage on Linux
  * Fixed initializing KMSDRM on older Linux systems</changelog>
</package>
<package pkgid="4ccf7fe614fe096e8916bde6fe276e8a2df218dcfa3726e81b877d7928f0ff2f5d1d97cfa9be9807d4d60fbfd76b14fe992281eb72c850d34c248e582ef203ae" name="SDL2" arch="src">
  <version epoch="0" ver="2.30.9" rel="1.1"/>
  <changelog author="Michal Suchanek &lt;msuchanek@suse.com&gt;" date="1677844800">- Use current keymap on console
  (https://github.com/libsdl-org/SDL/pull/7400 )
  + 0001-Cleanup-add-brace-6545.patch
  + 0002-Update-for-SDL3-coding-style-6717.patch
  + 0003-Clang-Tidy-fixes-6725.patch
  + 0004-evdev_kbd-Use-current-keymap.patch</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1678190400">- Update to release 2.26.4
  * Fixed using older game controller mappings on Linux</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1681214400">- Update to release 2.26.5
  * Fixed handling of third party PS4 controller input reports
  * Added support for the trigger buttons on the Victrix Pro FS
    for PS5
  * Added mapping for Flydigi Vader 2 with the latest firmware
    (6.0.4.9)
  * Added mapping for DualSense Edge Wireless Controller on Linux
  * Added mapping for Hori Pokken Tournament DX Pro Pad
  * Improved the speed and quality of audio resampling
  * Fixed crash on Linux if dbus can't be initialized</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1687348800">- Update to release 2.28
  * Added SDL_HasWindowSurface() and SDL_DestroyWindowSurface() to
    switch between the window surface and rendering APIs.
  * Added a display event SDL_DISPLAYEVENT_MOVED which is sent
    when the primary monitor changes or displays change position
    relative to each other.
  * Added the hint SDL_HINT_ENABLE_SCREEN_KEYBOARD to control
    whether the on-screen keyboard should be shown when text input
    is active.
- Delete 0001-Cleanup-add-brace-6545.patch,
  0002-Update-for-SDL3-coding-style-6717.patch,
  0003-Clang-Tidy-fixes-6725.patch (inapplicable),
  0004-evdev_kbd-Use-current-keymap.patch (merged).</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1688212800">- Update to release 2.28.1
  * Added support for the Nintendo Online Famicom controllers
  * Improved support for third-party Nintendo Switch controllers
  * Fixed setting the player LED on Nintendo Switch controllers
  * Added Linux controller mapping for the Logitech Chillstream</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1690977600">- Update to release 2.28.2
  * Fixed 8BitDo gamepad mapping when in XInput mode on Linux
  * Fixed controller lockup initializing some unofficial PS4
    replica controllers
  * Fixed video initialization on headless Linux systems using VNC</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1693569600">- Update to release 2.28.3
  * Added a gamepad mapping for the G-Shark GS-GP702
  * Fixed touchpad events for the Razer Wolverine V2 Pro in PS5 mode</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1696248000">- Update to release 2.28.4
  * Enable clipping for zero sized rectangles in the SDL renderer
  * Notify X11 clipboard managers when the clipboard changes
  * Fixed sensor timestamps for third-party PS5 controllers
  * Added detection for Logitech and Simagic racing wheels</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1696680000">- Enable direct PipeWire support</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1698926400">- Update to release 2.28.5
  * Added support for the HP HyperX Clutch Gladiate controller
  * Fixed a crash if a controller is disconnected while SDL is
    opening it
  * Fixed a crash on Linux if XInput2 isn't available at runtime</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1706875200">- Update to release 2.30
  * Added support for 2 bits-per-pixel indexed surface formats.
  * Added the function SDL_GameControllerGetSteamHandle() to get
    the Steam API handle for a controller, if available.
  * Added the event SDL_CONTROLLERSTEAMHANDLEUPDATED which is sent
    when the Steam API handle for a controller changes. This could
    also change the name, VID, and PID of the controller.
  * Added the environment variable SDL_LOGGING to control default
    log output.</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1709726400">- Update to release 2.30.1
  * Fixed a regression causing SDL_WaitEvent() to return spurious
    failures
  * Wayland windows automatically have OpenGL enabled again
  * Fixed memory corruption when converting signed 16-bit audio
    to float
  * Fixed audio artifacts when converting signed 8-bit audio to
    float
  * Fixed the clip rectangle not being updated when the viewport
    changes in the SDL renderer</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1712059200">- Update to release 2.30.2
  * Fixed performance regression initialing controllers on Linux
  * Added support for the 6-button SEGA Mega Drive Control Pad
    for Nintendo Online
  * Add support for MadCatz Saitek Side Panel Control Deck
  * Added support for the Hori Fighting Stick EX2
  * Added support for the Yawman Arrow flightstick
  * Added a gamepad mapping for the Defender Joystick Cobra R4
  * Fixed the gamepad mapping for the Sanwa Supply JY-P76USV
    controller
  * Allow using SDL_RWFromFile() with named pipes</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1714564800">- Update to release 2.30.3
  * Fixed a pointer warping issue on XWayland
  * Reduced startup time when scanning for game controllers on Linux</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1718712000">- Update to release 2.30.4
  * Added support for the Saitek Cyborg V.3 Rumble Pad in PS3 mode
  * Added support for the Razer Kitsune in PS5 mode
  * Added Linux bindings for the Qanba Drone 2 Arcade Joystick
  * Leave Nintendo Online controllers in simple report mode so
    they work with DirectInput games
  * Enable using libusb for GameCube controllers when available</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1723809600">- Update to release 2.30.6
  * Improved detection of Nintendo Switch Pro controller report mode
  * Fixed a rare crash when a controller is disconnected</changelog>
  <changelog author="Antonio Larrosa &lt;alarrosa@suse.com&gt;" date="1724932800">- Don't build with fcitx support. fcitx support was just added
  because of a bug (boo#1025413) that could be fixed by building
  with fcitx support but upstream SDL2 developers fixed it
  in 2.0.5 when building without fcitx support too. Also fcitx
  support has always been disabled in SLE/Leap and in Factory
  it's built against fcitx 4.2.9.9, not the newer fcitx5 so
  let's disable it in order to reduce dependencies.</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1725364800">- Update to release 2.30.7
  * Added support for the Retro-bit Controller in PS3 mode
  * Fixed the cursor becoming visible when using relative mode
    under XWayland
  * Fixed Direct Rendering Manager initialization failure on some
    Linux systems
  * Fixed a crash when the current mouse capture window is
    destroyed</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1727784000">- Update to release 2.30.8
  * Fixed a crash in XInput code at startup
  * Fixed flooding the OS with I/O when a PS4/PS5 controller is
    disconnected
  * Added SDL_VIDEO_DOUBLE_BUFFER support to the Wayland backend
  * SDL_WINDOWEVENT_EXPOSED is sent appropriately when using
    Wayland
  * Fixed hang at startup in audio code when the application has
    large stack usage on Linux
  * Fixed initializing KMSDRM on older Linux systems</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1730548800">- Update to release 2.30.9
  * Fixed flicker when entering/exiting fullscreen or moving the
    window between scaled and non-scaled displays under Wayland.</changelog>
</package>
<package pkgid="bf05c2bdc9ca381079b992dc53163bb6c0b4b73a36063a752018c1eac232202a1fdcc8fda217a583f382ea5c636d7dc55b914424f0b781378f7c5e8318b11239" name="SDL2-debugsource" arch="i586">
  <version epoch="0" ver="2.30.6" rel="1.0.2.1.sr20240803"/>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1669118400">- Update to release 2.26
  * Added SDL_GetWindowSizeInPixels() to get the window size in
    pixels, which may differ from the window coordinate size for
    windows with high-DPI support.
  * Added simulated vsync synchronization for the software
    renderer.
  * Added the mouse position to SDL_MouseWheelEvent.
  * Added SDL_ResetHints() to reset all hints to their default
    values.
  * Added SDL_GetJoystickGUIDInfo() to get device information
    encoded in a joystick GUID.
  * Added XBOX Hints.
  * Added support for PS3 and Wii controllers to the HIDAPI
    driver (not enabled by default).
  * Added access to the individual left and right gyro sensors of
    the combined Joy-Cons controller.
  * Added a microsecond timestamp to SDL_SensorEvent and
    SDL_ControllerSensorEvent, when the hardware provides that
    information.
- Delete sdl2-khronos.patch (merged)
- Drop CVE-2022-4743.patch.</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1669896000">- Update to release 2.26.1
  * Improved audio resampling quality
  * Fixed crash if SDL_GetPointDisplayIndex() or
    SDL_GetRectDisplayIndex() are called before SDL_VideoInit()</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1672747200">- Update to release 2.26.2
  * Fixed long delay at startup when a Razer keyboard is
    connected
  * Fixed not receiving SDLK_5 or SDL_SCANCODE_5 when using the
    AZERTY keyboard layout on Linux
- Enable libsamplerate and libdecor components
- Remove unused tslib build requirement</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1675771200">- Update to release 2.26.3
  * Fixed infinite loop shutting down WGI controllers
  * Fixed centering the D-pad on some Xbox controllers</changelog>
  <changelog author="Michal Suchanek &lt;msuchanek@suse.com&gt;" date="1677844800">- Use current keymap on console
  (https://github.com/libsdl-org/SDL/pull/7400 )
  + 0001-Cleanup-add-brace-6545.patch
  + 0002-Update-for-SDL3-coding-style-6717.patch
  + 0003-Clang-Tidy-fixes-6725.patch
  + 0004-evdev_kbd-Use-current-keymap.patch</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1678190400">- Update to release 2.26.4
  * Fixed using older game controller mappings on Linux</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1681214400">- Update to release 2.26.5
  * Fixed handling of third party PS4 controller input reports
  * Added support for the trigger buttons on the Victrix Pro FS
    for PS5
  * Added mapping for Flydigi Vader 2 with the latest firmware
    (6.0.4.9)
  * Added mapping for DualSense Edge Wireless Controller on Linux
  * Added mapping for Hori Pokken Tournament DX Pro Pad
  * Improved the speed and quality of audio resampling
  * Fixed crash on Linux if dbus can't be initialized</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1687348800">- Update to release 2.28
  * Added SDL_HasWindowSurface() and SDL_DestroyWindowSurface() to
    switch between the window surface and rendering APIs.
  * Added a display event SDL_DISPLAYEVENT_MOVED which is sent
    when the primary monitor changes or displays change position
    relative to each other.
  * Added the hint SDL_HINT_ENABLE_SCREEN_KEYBOARD to control
    whether the on-screen keyboard should be shown when text input
    is active.
- Delete 0001-Cleanup-add-brace-6545.patch,
  0002-Update-for-SDL3-coding-style-6717.patch,
  0003-Clang-Tidy-fixes-6725.patch (inapplicable),
  0004-evdev_kbd-Use-current-keymap.patch (merged).</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1688212800">- Update to release 2.28.1
  * Added support for the Nintendo Online Famicom controllers
  * Improved support for third-party Nintendo Switch controllers
  * Fixed setting the player LED on Nintendo Switch controllers
  * Added Linux controller mapping for the Logitech Chillstream</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1690977600">- Update to release 2.28.2
  * Fixed 8BitDo gamepad mapping when in XInput mode on Linux
  * Fixed controller lockup initializing some unofficial PS4
    replica controllers
  * Fixed video initialization on headless Linux systems using VNC</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1693569600">- Update to release 2.28.3
  * Added a gamepad mapping for the G-Shark GS-GP702
  * Fixed touchpad events for the Razer Wolverine V2 Pro in PS5 mode</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1696248000">- Update to release 2.28.4
  * Enable clipping for zero sized rectangles in the SDL renderer
  * Notify X11 clipboard managers when the clipboard changes
  * Fixed sensor timestamps for third-party PS5 controllers
  * Added detection for Logitech and Simagic racing wheels</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1696680000">- Enable direct PipeWire support</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1698926400">- Update to release 2.28.5
  * Added support for the HP HyperX Clutch Gladiate controller
  * Fixed a crash if a controller is disconnected while SDL is
    opening it
  * Fixed a crash on Linux if XInput2 isn't available at runtime</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1706875200">- Update to release 2.30
  * Added support for 2 bits-per-pixel indexed surface formats.
  * Added the function SDL_GameControllerGetSteamHandle() to get
    the Steam API handle for a controller, if available.
  * Added the event SDL_CONTROLLERSTEAMHANDLEUPDATED which is sent
    when the Steam API handle for a controller changes. This could
    also change the name, VID, and PID of the controller.
  * Added the environment variable SDL_LOGGING to control default
    log output.</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1709726400">- Update to release 2.30.1
  * Fixed a regression causing SDL_WaitEvent() to return spurious
    failures
  * Wayland windows automatically have OpenGL enabled again
  * Fixed memory corruption when converting signed 16-bit audio
    to float
  * Fixed audio artifacts when converting signed 8-bit audio to
    float
  * Fixed the clip rectangle not being updated when the viewport
    changes in the SDL renderer</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1712059200">- Update to release 2.30.2
  * Fixed performance regression initialing controllers on Linux
  * Added support for the 6-button SEGA Mega Drive Control Pad
    for Nintendo Online
  * Add support for MadCatz Saitek Side Panel Control Deck
  * Added support for the Hori Fighting Stick EX2
  * Added support for the Yawman Arrow flightstick
  * Added a gamepad mapping for the Defender Joystick Cobra R4
  * Fixed the gamepad mapping for the Sanwa Supply JY-P76USV
    controller
  * Allow using SDL_RWFromFile() with named pipes</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1714564800">- Update to release 2.30.3
  * Fixed a pointer warping issue on XWayland
  * Reduced startup time when scanning for game controllers on Linux</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1718712000">- Update to release 2.30.4
  * Added support for the Saitek Cyborg V.3 Rumble Pad in PS3 mode
  * Added support for the Razer Kitsune in PS5 mode
  * Added Linux bindings for the Qanba Drone 2 Arcade Joystick
  * Leave Nintendo Online controllers in simple report mode so
    they work with DirectInput games
  * Enable using libusb for GameCube controllers when available</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1723809600">- Update to release 2.30.6
  * Improved detection of Nintendo Switch Pro controller report mode
  * Fixed a rare crash when a controller is disconnected</changelog>
</package>
<package pkgid="2d33899c8b6f42ed5f110e876a47f26050bf91f71851f62951a5125164dc0fe78545ac9927d42bb74b3cc51920aca616efa75ab6ba97d5fb3ecfab3135620808" name="SDL2-debugsource" arch="i586">
  <version epoch="0" ver="2.30.6" rel="1.1"/>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1669118400">- Update to release 2.26
  * Added SDL_GetWindowSizeInPixels() to get the window size in
    pixels, which may differ from the window coordinate size for
    windows with high-DPI support.
  * Added simulated vsync synchronization for the software
    renderer.
  * Added the mouse position to SDL_MouseWheelEvent.
  * Added SDL_ResetHints() to reset all hints to their default
    values.
  * Added SDL_GetJoystickGUIDInfo() to get device information
    encoded in a joystick GUID.
  * Added XBOX Hints.
  * Added support for PS3 and Wii controllers to the HIDAPI
    driver (not enabled by default).
  * Added access to the individual left and right gyro sensors of
    the combined Joy-Cons controller.
  * Added a microsecond timestamp to SDL_SensorEvent and
    SDL_ControllerSensorEvent, when the hardware provides that
    information.
- Delete sdl2-khronos.patch (merged)
- Drop CVE-2022-4743.patch.</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1669896000">- Update to release 2.26.1
  * Improved audio resampling quality
  * Fixed crash if SDL_GetPointDisplayIndex() or
    SDL_GetRectDisplayIndex() are called before SDL_VideoInit()</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1672747200">- Update to release 2.26.2
  * Fixed long delay at startup when a Razer keyboard is
    connected
  * Fixed not receiving SDLK_5 or SDL_SCANCODE_5 when using the
    AZERTY keyboard layout on Linux
- Enable libsamplerate and libdecor components
- Remove unused tslib build requirement</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1675771200">- Update to release 2.26.3
  * Fixed infinite loop shutting down WGI controllers
  * Fixed centering the D-pad on some Xbox controllers</changelog>
  <changelog author="Michal Suchanek &lt;msuchanek@suse.com&gt;" date="1677844800">- Use current keymap on console
  (https://github.com/libsdl-org/SDL/pull/7400 )
  + 0001-Cleanup-add-brace-6545.patch
  + 0002-Update-for-SDL3-coding-style-6717.patch
  + 0003-Clang-Tidy-fixes-6725.patch
  + 0004-evdev_kbd-Use-current-keymap.patch</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1678190400">- Update to release 2.26.4
  * Fixed using older game controller mappings on Linux</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1681214400">- Update to release 2.26.5
  * Fixed handling of third party PS4 controller input reports
  * Added support for the trigger buttons on the Victrix Pro FS
    for PS5
  * Added mapping for Flydigi Vader 2 with the latest firmware
    (6.0.4.9)
  * Added mapping for DualSense Edge Wireless Controller on Linux
  * Added mapping for Hori Pokken Tournament DX Pro Pad
  * Improved the speed and quality of audio resampling
  * Fixed crash on Linux if dbus can't be initialized</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1687348800">- Update to release 2.28
  * Added SDL_HasWindowSurface() and SDL_DestroyWindowSurface() to
    switch between the window surface and rendering APIs.
  * Added a display event SDL_DISPLAYEVENT_MOVED which is sent
    when the primary monitor changes or displays change position
    relative to each other.
  * Added the hint SDL_HINT_ENABLE_SCREEN_KEYBOARD to control
    whether the on-screen keyboard should be shown when text input
    is active.
- Delete 0001-Cleanup-add-brace-6545.patch,
  0002-Update-for-SDL3-coding-style-6717.patch,
  0003-Clang-Tidy-fixes-6725.patch (inapplicable),
  0004-evdev_kbd-Use-current-keymap.patch (merged).</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1688212800">- Update to release 2.28.1
  * Added support for the Nintendo Online Famicom controllers
  * Improved support for third-party Nintendo Switch controllers
  * Fixed setting the player LED on Nintendo Switch controllers
  * Added Linux controller mapping for the Logitech Chillstream</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1690977600">- Update to release 2.28.2
  * Fixed 8BitDo gamepad mapping when in XInput mode on Linux
  * Fixed controller lockup initializing some unofficial PS4
    replica controllers
  * Fixed video initialization on headless Linux systems using VNC</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1693569600">- Update to release 2.28.3
  * Added a gamepad mapping for the G-Shark GS-GP702
  * Fixed touchpad events for the Razer Wolverine V2 Pro in PS5 mode</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1696248000">- Update to release 2.28.4
  * Enable clipping for zero sized rectangles in the SDL renderer
  * Notify X11 clipboard managers when the clipboard changes
  * Fixed sensor timestamps for third-party PS5 controllers
  * Added detection for Logitech and Simagic racing wheels</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1696680000">- Enable direct PipeWire support</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1698926400">- Update to release 2.28.5
  * Added support for the HP HyperX Clutch Gladiate controller
  * Fixed a crash if a controller is disconnected while SDL is
    opening it
  * Fixed a crash on Linux if XInput2 isn't available at runtime</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1706875200">- Update to release 2.30
  * Added support for 2 bits-per-pixel indexed surface formats.
  * Added the function SDL_GameControllerGetSteamHandle() to get
    the Steam API handle for a controller, if available.
  * Added the event SDL_CONTROLLERSTEAMHANDLEUPDATED which is sent
    when the Steam API handle for a controller changes. This could
    also change the name, VID, and PID of the controller.
  * Added the environment variable SDL_LOGGING to control default
    log output.</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1709726400">- Update to release 2.30.1
  * Fixed a regression causing SDL_WaitEvent() to return spurious
    failures
  * Wayland windows automatically have OpenGL enabled again
  * Fixed memory corruption when converting signed 16-bit audio
    to float
  * Fixed audio artifacts when converting signed 8-bit audio to
    float
  * Fixed the clip rectangle not being updated when the viewport
    changes in the SDL renderer</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1712059200">- Update to release 2.30.2
  * Fixed performance regression initialing controllers on Linux
  * Added support for the 6-button SEGA Mega Drive Control Pad
    for Nintendo Online
  * Add support for MadCatz Saitek Side Panel Control Deck
  * Added support for the Hori Fighting Stick EX2
  * Added support for the Yawman Arrow flightstick
  * Added a gamepad mapping for the Defender Joystick Cobra R4
  * Fixed the gamepad mapping for the Sanwa Supply JY-P76USV
    controller
  * Allow using SDL_RWFromFile() with named pipes</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1714564800">- Update to release 2.30.3
  * Fixed a pointer warping issue on XWayland
  * Reduced startup time when scanning for game controllers on Linux</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1718712000">- Update to release 2.30.4
  * Added support for the Saitek Cyborg V.3 Rumble Pad in PS3 mode
  * Added support for the Razer Kitsune in PS5 mode
  * Added Linux bindings for the Qanba Drone 2 Arcade Joystick
  * Leave Nintendo Online controllers in simple report mode so
    they work with DirectInput games
  * Enable using libusb for GameCube controllers when available</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1723809600">- Update to release 2.30.6
  * Improved detection of Nintendo Switch Pro controller report mode
  * Fixed a rare crash when a controller is disconnected</changelog>
</package>
<package pkgid="5c8a5e6ce422280310775a88a9c7cf58784da0cacd87b2a84632b86ecd6f15dc6ccda6860671f43e3629a350960d1ba8b69fdad5f116430160fa9a5a8deb84a4" name="SDL2-debugsource" arch="x86_64">
  <version epoch="0" ver="2.30.6" rel="1.1"/>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1669118400">- Update to release 2.26
  * Added SDL_GetWindowSizeInPixels() to get the window size in
    pixels, which may differ from the window coordinate size for
    windows with high-DPI support.
  * Added simulated vsync synchronization for the software
    renderer.
  * Added the mouse position to SDL_MouseWheelEvent.
  * Added SDL_ResetHints() to reset all hints to their default
    values.
  * Added SDL_GetJoystickGUIDInfo() to get device information
    encoded in a joystick GUID.
  * Added XBOX Hints.
  * Added support for PS3 and Wii controllers to the HIDAPI
    driver (not enabled by default).
  * Added access to the individual left and right gyro sensors of
    the combined Joy-Cons controller.
  * Added a microsecond timestamp to SDL_SensorEvent and
    SDL_ControllerSensorEvent, when the hardware provides that
    information.
- Delete sdl2-khronos.patch (merged)
- Drop CVE-2022-4743.patch.</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1669896000">- Update to release 2.26.1
  * Improved audio resampling quality
  * Fixed crash if SDL_GetPointDisplayIndex() or
    SDL_GetRectDisplayIndex() are called before SDL_VideoInit()</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1672747200">- Update to release 2.26.2
  * Fixed long delay at startup when a Razer keyboard is
    connected
  * Fixed not receiving SDLK_5 or SDL_SCANCODE_5 when using the
    AZERTY keyboard layout on Linux
- Enable libsamplerate and libdecor components
- Remove unused tslib build requirement</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1675771200">- Update to release 2.26.3
  * Fixed infinite loop shutting down WGI controllers
  * Fixed centering the D-pad on some Xbox controllers</changelog>
  <changelog author="Michal Suchanek &lt;msuchanek@suse.com&gt;" date="1677844800">- Use current keymap on console
  (https://github.com/libsdl-org/SDL/pull/7400 )
  + 0001-Cleanup-add-brace-6545.patch
  + 0002-Update-for-SDL3-coding-style-6717.patch
  + 0003-Clang-Tidy-fixes-6725.patch
  + 0004-evdev_kbd-Use-current-keymap.patch</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1678190400">- Update to release 2.26.4
  * Fixed using older game controller mappings on Linux</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1681214400">- Update to release 2.26.5
  * Fixed handling of third party PS4 controller input reports
  * Added support for the trigger buttons on the Victrix Pro FS
    for PS5
  * Added mapping for Flydigi Vader 2 with the latest firmware
    (6.0.4.9)
  * Added mapping for DualSense Edge Wireless Controller on Linux
  * Added mapping for Hori Pokken Tournament DX Pro Pad
  * Improved the speed and quality of audio resampling
  * Fixed crash on Linux if dbus can't be initialized</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1687348800">- Update to release 2.28
  * Added SDL_HasWindowSurface() and SDL_DestroyWindowSurface() to
    switch between the window surface and rendering APIs.
  * Added a display event SDL_DISPLAYEVENT_MOVED which is sent
    when the primary monitor changes or displays change position
    relative to each other.
  * Added the hint SDL_HINT_ENABLE_SCREEN_KEYBOARD to control
    whether the on-screen keyboard should be shown when text input
    is active.
- Delete 0001-Cleanup-add-brace-6545.patch,
  0002-Update-for-SDL3-coding-style-6717.patch,
  0003-Clang-Tidy-fixes-6725.patch (inapplicable),
  0004-evdev_kbd-Use-current-keymap.patch (merged).</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1688212800">- Update to release 2.28.1
  * Added support for the Nintendo Online Famicom controllers
  * Improved support for third-party Nintendo Switch controllers
  * Fixed setting the player LED on Nintendo Switch controllers
  * Added Linux controller mapping for the Logitech Chillstream</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1690977600">- Update to release 2.28.2
  * Fixed 8BitDo gamepad mapping when in XInput mode on Linux
  * Fixed controller lockup initializing some unofficial PS4
    replica controllers
  * Fixed video initialization on headless Linux systems using VNC</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1693569600">- Update to release 2.28.3
  * Added a gamepad mapping for the G-Shark GS-GP702
  * Fixed touchpad events for the Razer Wolverine V2 Pro in PS5 mode</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1696248000">- Update to release 2.28.4
  * Enable clipping for zero sized rectangles in the SDL renderer
  * Notify X11 clipboard managers when the clipboard changes
  * Fixed sensor timestamps for third-party PS5 controllers
  * Added detection for Logitech and Simagic racing wheels</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1696680000">- Enable direct PipeWire support</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1698926400">- Update to release 2.28.5
  * Added support for the HP HyperX Clutch Gladiate controller
  * Fixed a crash if a controller is disconnected while SDL is
    opening it
  * Fixed a crash on Linux if XInput2 isn't available at runtime</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1706875200">- Update to release 2.30
  * Added support for 2 bits-per-pixel indexed surface formats.
  * Added the function SDL_GameControllerGetSteamHandle() to get
    the Steam API handle for a controller, if available.
  * Added the event SDL_CONTROLLERSTEAMHANDLEUPDATED which is sent
    when the Steam API handle for a controller changes. This could
    also change the name, VID, and PID of the controller.
  * Added the environment variable SDL_LOGGING to control default
    log output.</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1709726400">- Update to release 2.30.1
  * Fixed a regression causing SDL_WaitEvent() to return spurious
    failures
  * Wayland windows automatically have OpenGL enabled again
  * Fixed memory corruption when converting signed 16-bit audio
    to float
  * Fixed audio artifacts when converting signed 8-bit audio to
    float
  * Fixed the clip rectangle not being updated when the viewport
    changes in the SDL renderer</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1712059200">- Update to release 2.30.2
  * Fixed performance regression initialing controllers on Linux
  * Added support for the 6-button SEGA Mega Drive Control Pad
    for Nintendo Online
  * Add support for MadCatz Saitek Side Panel Control Deck
  * Added support for the Hori Fighting Stick EX2
  * Added support for the Yawman Arrow flightstick
  * Added a gamepad mapping for the Defender Joystick Cobra R4
  * Fixed the gamepad mapping for the Sanwa Supply JY-P76USV
    controller
  * Allow using SDL_RWFromFile() with named pipes</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1714564800">- Update to release 2.30.3
  * Fixed a pointer warping issue on XWayland
  * Reduced startup time when scanning for game controllers on Linux</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1718712000">- Update to release 2.30.4
  * Added support for the Saitek Cyborg V.3 Rumble Pad in PS3 mode
  * Added support for the Razer Kitsune in PS5 mode
  * Added Linux bindings for the Qanba Drone 2 Arcade Joystick
  * Leave Nintendo Online controllers in simple report mode so
    they work with DirectInput games
  * Enable using libusb for GameCube controllers when available</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1723809600">- Update to release 2.30.6
  * Improved detection of Nintendo Switch Pro controller report mode
  * Fixed a rare crash when a controller is disconnected</changelog>
</package>
<package pkgid="d42c15d6633a2bf132f654031a3d9be4a1f452ac467f75ae35132e8af3b1ce9112322683a2dec0a67fa48b6dcfd034dc5616799552212cdcabd1e2f094bee0e8" name="SDL2-debugsource" arch="x86_64">
  <version epoch="0" ver="2.30.6" rel="2.0.4.1.sr20240803"/>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1669896000">- Update to release 2.26.1
  * Improved audio resampling quality
  * Fixed crash if SDL_GetPointDisplayIndex() or
    SDL_GetRectDisplayIndex() are called before SDL_VideoInit()</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1672747200">- Update to release 2.26.2
  * Fixed long delay at startup when a Razer keyboard is
    connected
  * Fixed not receiving SDLK_5 or SDL_SCANCODE_5 when using the
    AZERTY keyboard layout on Linux
- Enable libsamplerate and libdecor components
- Remove unused tslib build requirement</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1675771200">- Update to release 2.26.3
  * Fixed infinite loop shutting down WGI controllers
  * Fixed centering the D-pad on some Xbox controllers</changelog>
  <changelog author="Michal Suchanek &lt;msuchanek@suse.com&gt;" date="1677844800">- Use current keymap on console
  (https://github.com/libsdl-org/SDL/pull/7400 )
  + 0001-Cleanup-add-brace-6545.patch
  + 0002-Update-for-SDL3-coding-style-6717.patch
  + 0003-Clang-Tidy-fixes-6725.patch
  + 0004-evdev_kbd-Use-current-keymap.patch</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1678190400">- Update to release 2.26.4
  * Fixed using older game controller mappings on Linux</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1681214400">- Update to release 2.26.5
  * Fixed handling of third party PS4 controller input reports
  * Added support for the trigger buttons on the Victrix Pro FS
    for PS5
  * Added mapping for Flydigi Vader 2 with the latest firmware
    (6.0.4.9)
  * Added mapping for DualSense Edge Wireless Controller on Linux
  * Added mapping for Hori Pokken Tournament DX Pro Pad
  * Improved the speed and quality of audio resampling
  * Fixed crash on Linux if dbus can't be initialized</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1687348800">- Update to release 2.28
  * Added SDL_HasWindowSurface() and SDL_DestroyWindowSurface() to
    switch between the window surface and rendering APIs.
  * Added a display event SDL_DISPLAYEVENT_MOVED which is sent
    when the primary monitor changes or displays change position
    relative to each other.
  * Added the hint SDL_HINT_ENABLE_SCREEN_KEYBOARD to control
    whether the on-screen keyboard should be shown when text input
    is active.
- Delete 0001-Cleanup-add-brace-6545.patch,
  0002-Update-for-SDL3-coding-style-6717.patch,
  0003-Clang-Tidy-fixes-6725.patch (inapplicable),
  0004-evdev_kbd-Use-current-keymap.patch (merged).</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1688212800">- Update to release 2.28.1
  * Added support for the Nintendo Online Famicom controllers
  * Improved support for third-party Nintendo Switch controllers
  * Fixed setting the player LED on Nintendo Switch controllers
  * Added Linux controller mapping for the Logitech Chillstream</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1690977600">- Update to release 2.28.2
  * Fixed 8BitDo gamepad mapping when in XInput mode on Linux
  * Fixed controller lockup initializing some unofficial PS4
    replica controllers
  * Fixed video initialization on headless Linux systems using VNC</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1693569600">- Update to release 2.28.3
  * Added a gamepad mapping for the G-Shark GS-GP702
  * Fixed touchpad events for the Razer Wolverine V2 Pro in PS5 mode</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1696248000">- Update to release 2.28.4
  * Enable clipping for zero sized rectangles in the SDL renderer
  * Notify X11 clipboard managers when the clipboard changes
  * Fixed sensor timestamps for third-party PS5 controllers
  * Added detection for Logitech and Simagic racing wheels</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1696680000">- Enable direct PipeWire support</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1698926400">- Update to release 2.28.5
  * Added support for the HP HyperX Clutch Gladiate controller
  * Fixed a crash if a controller is disconnected while SDL is
    opening it
  * Fixed a crash on Linux if XInput2 isn't available at runtime</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1706875200">- Update to release 2.30
  * Added support for 2 bits-per-pixel indexed surface formats.
  * Added the function SDL_GameControllerGetSteamHandle() to get
    the Steam API handle for a controller, if available.
  * Added the event SDL_CONTROLLERSTEAMHANDLEUPDATED which is sent
    when the Steam API handle for a controller changes. This could
    also change the name, VID, and PID of the controller.
  * Added the environment variable SDL_LOGGING to control default
    log output.</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1709726400">- Update to release 2.30.1
  * Fixed a regression causing SDL_WaitEvent() to return spurious
    failures
  * Wayland windows automatically have OpenGL enabled again
  * Fixed memory corruption when converting signed 16-bit audio
    to float
  * Fixed audio artifacts when converting signed 8-bit audio to
    float
  * Fixed the clip rectangle not being updated when the viewport
    changes in the SDL renderer</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1712059200">- Update to release 2.30.2
  * Fixed performance regression initialing controllers on Linux
  * Added support for the 6-button SEGA Mega Drive Control Pad
    for Nintendo Online
  * Add support for MadCatz Saitek Side Panel Control Deck
  * Added support for the Hori Fighting Stick EX2
  * Added support for the Yawman Arrow flightstick
  * Added a gamepad mapping for the Defender Joystick Cobra R4
  * Fixed the gamepad mapping for the Sanwa Supply JY-P76USV
    controller
  * Allow using SDL_RWFromFile() with named pipes</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1714564800">- Update to release 2.30.3
  * Fixed a pointer warping issue on XWayland
  * Reduced startup time when scanning for game controllers on Linux</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1718712000">- Update to release 2.30.4
  * Added support for the Saitek Cyborg V.3 Rumble Pad in PS3 mode
  * Added support for the Razer Kitsune in PS5 mode
  * Added Linux bindings for the Qanba Drone 2 Arcade Joystick
  * Leave Nintendo Online controllers in simple report mode so
    they work with DirectInput games
  * Enable using libusb for GameCube controllers when available</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1723809600">- Update to release 2.30.6
  * Improved detection of Nintendo Switch Pro controller report mode
  * Fixed a rare crash when a controller is disconnected</changelog>
  <changelog author="Antonio Larrosa &lt;alarrosa@suse.com&gt;" date="1724932800">- Don't build with fcitx support. fcitx support was just added
  because of a bug (boo#1025413) that could be fixed by building
  with fcitx support but upstream SDL2 developers fixed it
  in 2.0.5 when building without fcitx support too. Also fcitx
  support has always been disabled in SLE/Leap and in Factory
  it's built against fcitx 4.2.9.9, not the newer fcitx5 so
  let's disable it in order to reduce dependencies.</changelog>
</package>
<package pkgid="1e6b8b4f5335571a6c1d992833bcc5a2cd7f01d5dead6d129ef2ff38851cc38f52b9d25e606a4d25412b0c49e0960d0e4d24cca76f6bd93a661613d8f0d59604" name="SDL2-debugsource" arch="i586">
  <version epoch="0" ver="2.30.7" rel="1.1"/>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1672747200">- Update to release 2.26.2
  * Fixed long delay at startup when a Razer keyboard is
    connected
  * Fixed not receiving SDLK_5 or SDL_SCANCODE_5 when using the
    AZERTY keyboard layout on Linux
- Enable libsamplerate and libdecor components
- Remove unused tslib build requirement</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1675771200">- Update to release 2.26.3
  * Fixed infinite loop shutting down WGI controllers
  * Fixed centering the D-pad on some Xbox controllers</changelog>
  <changelog author="Michal Suchanek &lt;msuchanek@suse.com&gt;" date="1677844800">- Use current keymap on console
  (https://github.com/libsdl-org/SDL/pull/7400 )
  + 0001-Cleanup-add-brace-6545.patch
  + 0002-Update-for-SDL3-coding-style-6717.patch
  + 0003-Clang-Tidy-fixes-6725.patch
  + 0004-evdev_kbd-Use-current-keymap.patch</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1678190400">- Update to release 2.26.4
  * Fixed using older game controller mappings on Linux</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1681214400">- Update to release 2.26.5
  * Fixed handling of third party PS4 controller input reports
  * Added support for the trigger buttons on the Victrix Pro FS
    for PS5
  * Added mapping for Flydigi Vader 2 with the latest firmware
    (6.0.4.9)
  * Added mapping for DualSense Edge Wireless Controller on Linux
  * Added mapping for Hori Pokken Tournament DX Pro Pad
  * Improved the speed and quality of audio resampling
  * Fixed crash on Linux if dbus can't be initialized</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1687348800">- Update to release 2.28
  * Added SDL_HasWindowSurface() and SDL_DestroyWindowSurface() to
    switch between the window surface and rendering APIs.
  * Added a display event SDL_DISPLAYEVENT_MOVED which is sent
    when the primary monitor changes or displays change position
    relative to each other.
  * Added the hint SDL_HINT_ENABLE_SCREEN_KEYBOARD to control
    whether the on-screen keyboard should be shown when text input
    is active.
- Delete 0001-Cleanup-add-brace-6545.patch,
  0002-Update-for-SDL3-coding-style-6717.patch,
  0003-Clang-Tidy-fixes-6725.patch (inapplicable),
  0004-evdev_kbd-Use-current-keymap.patch (merged).</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1688212800">- Update to release 2.28.1
  * Added support for the Nintendo Online Famicom controllers
  * Improved support for third-party Nintendo Switch controllers
  * Fixed setting the player LED on Nintendo Switch controllers
  * Added Linux controller mapping for the Logitech Chillstream</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1690977600">- Update to release 2.28.2
  * Fixed 8BitDo gamepad mapping when in XInput mode on Linux
  * Fixed controller lockup initializing some unofficial PS4
    replica controllers
  * Fixed video initialization on headless Linux systems using VNC</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1693569600">- Update to release 2.28.3
  * Added a gamepad mapping for the G-Shark GS-GP702
  * Fixed touchpad events for the Razer Wolverine V2 Pro in PS5 mode</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1696248000">- Update to release 2.28.4
  * Enable clipping for zero sized rectangles in the SDL renderer
  * Notify X11 clipboard managers when the clipboard changes
  * Fixed sensor timestamps for third-party PS5 controllers
  * Added detection for Logitech and Simagic racing wheels</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1696680000">- Enable direct PipeWire support</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1698926400">- Update to release 2.28.5
  * Added support for the HP HyperX Clutch Gladiate controller
  * Fixed a crash if a controller is disconnected while SDL is
    opening it
  * Fixed a crash on Linux if XInput2 isn't available at runtime</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1706875200">- Update to release 2.30
  * Added support for 2 bits-per-pixel indexed surface formats.
  * Added the function SDL_GameControllerGetSteamHandle() to get
    the Steam API handle for a controller, if available.
  * Added the event SDL_CONTROLLERSTEAMHANDLEUPDATED which is sent
    when the Steam API handle for a controller changes. This could
    also change the name, VID, and PID of the controller.
  * Added the environment variable SDL_LOGGING to control default
    log output.</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1709726400">- Update to release 2.30.1
  * Fixed a regression causing SDL_WaitEvent() to return spurious
    failures
  * Wayland windows automatically have OpenGL enabled again
  * Fixed memory corruption when converting signed 16-bit audio
    to float
  * Fixed audio artifacts when converting signed 8-bit audio to
    float
  * Fixed the clip rectangle not being updated when the viewport
    changes in the SDL renderer</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1712059200">- Update to release 2.30.2
  * Fixed performance regression initialing controllers on Linux
  * Added support for the 6-button SEGA Mega Drive Control Pad
    for Nintendo Online
  * Add support for MadCatz Saitek Side Panel Control Deck
  * Added support for the Hori Fighting Stick EX2
  * Added support for the Yawman Arrow flightstick
  * Added a gamepad mapping for the Defender Joystick Cobra R4
  * Fixed the gamepad mapping for the Sanwa Supply JY-P76USV
    controller
  * Allow using SDL_RWFromFile() with named pipes</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1714564800">- Update to release 2.30.3
  * Fixed a pointer warping issue on XWayland
  * Reduced startup time when scanning for game controllers on Linux</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1718712000">- Update to release 2.30.4
  * Added support for the Saitek Cyborg V.3 Rumble Pad in PS3 mode
  * Added support for the Razer Kitsune in PS5 mode
  * Added Linux bindings for the Qanba Drone 2 Arcade Joystick
  * Leave Nintendo Online controllers in simple report mode so
    they work with DirectInput games
  * Enable using libusb for GameCube controllers when available</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1723809600">- Update to release 2.30.6
  * Improved detection of Nintendo Switch Pro controller report mode
  * Fixed a rare crash when a controller is disconnected</changelog>
  <changelog author="Antonio Larrosa &lt;alarrosa@suse.com&gt;" date="1724932800">- Don't build with fcitx support. fcitx support was just added
  because of a bug (boo#1025413) that could be fixed by building
  with fcitx support but upstream SDL2 developers fixed it
  in 2.0.5 when building without fcitx support too. Also fcitx
  support has always been disabled in SLE/Leap and in Factory
  it's built against fcitx 4.2.9.9, not the newer fcitx5 so
  let's disable it in order to reduce dependencies.</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1725364800">- Update to release 2.30.7
  * Added support for the Retro-bit Controller in PS3 mode
  * Fixed the cursor becoming visible when using relative mode
    under XWayland
  * Fixed Direct Rendering Manager initialization failure on some
    Linux systems
  * Fixed a crash when the current mouse capture window is
    destroyed</changelog>
</package>
<package pkgid="f566a28e7d9131cb80859f69ccf24b61f73a41ebbf222b07105f856d1b4657515855876d7e0bb561c8d1f38634a371401f444c05c5668d6ea8696a6495180355" name="SDL2-debugsource" arch="x86_64">
  <version epoch="0" ver="2.30.7" rel="1.1"/>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1672747200">- Update to release 2.26.2
  * Fixed long delay at startup when a Razer keyboard is
    connected
  * Fixed not receiving SDLK_5 or SDL_SCANCODE_5 when using the
    AZERTY keyboard layout on Linux
- Enable libsamplerate and libdecor components
- Remove unused tslib build requirement</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1675771200">- Update to release 2.26.3
  * Fixed infinite loop shutting down WGI controllers
  * Fixed centering the D-pad on some Xbox controllers</changelog>
  <changelog author="Michal Suchanek &lt;msuchanek@suse.com&gt;" date="1677844800">- Use current keymap on console
  (https://github.com/libsdl-org/SDL/pull/7400 )
  + 0001-Cleanup-add-brace-6545.patch
  + 0002-Update-for-SDL3-coding-style-6717.patch
  + 0003-Clang-Tidy-fixes-6725.patch
  + 0004-evdev_kbd-Use-current-keymap.patch</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1678190400">- Update to release 2.26.4
  * Fixed using older game controller mappings on Linux</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1681214400">- Update to release 2.26.5
  * Fixed handling of third party PS4 controller input reports
  * Added support for the trigger buttons on the Victrix Pro FS
    for PS5
  * Added mapping for Flydigi Vader 2 with the latest firmware
    (6.0.4.9)
  * Added mapping for DualSense Edge Wireless Controller on Linux
  * Added mapping for Hori Pokken Tournament DX Pro Pad
  * Improved the speed and quality of audio resampling
  * Fixed crash on Linux if dbus can't be initialized</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1687348800">- Update to release 2.28
  * Added SDL_HasWindowSurface() and SDL_DestroyWindowSurface() to
    switch between the window surface and rendering APIs.
  * Added a display event SDL_DISPLAYEVENT_MOVED which is sent
    when the primary monitor changes or displays change position
    relative to each other.
  * Added the hint SDL_HINT_ENABLE_SCREEN_KEYBOARD to control
    whether the on-screen keyboard should be shown when text input
    is active.
- Delete 0001-Cleanup-add-brace-6545.patch,
  0002-Update-for-SDL3-coding-style-6717.patch,
  0003-Clang-Tidy-fixes-6725.patch (inapplicable),
  0004-evdev_kbd-Use-current-keymap.patch (merged).</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1688212800">- Update to release 2.28.1
  * Added support for the Nintendo Online Famicom controllers
  * Improved support for third-party Nintendo Switch controllers
  * Fixed setting the player LED on Nintendo Switch controllers
  * Added Linux controller mapping for the Logitech Chillstream</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1690977600">- Update to release 2.28.2
  * Fixed 8BitDo gamepad mapping when in XInput mode on Linux
  * Fixed controller lockup initializing some unofficial PS4
    replica controllers
  * Fixed video initialization on headless Linux systems using VNC</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1693569600">- Update to release 2.28.3
  * Added a gamepad mapping for the G-Shark GS-GP702
  * Fixed touchpad events for the Razer Wolverine V2 Pro in PS5 mode</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1696248000">- Update to release 2.28.4
  * Enable clipping for zero sized rectangles in the SDL renderer
  * Notify X11 clipboard managers when the clipboard changes
  * Fixed sensor timestamps for third-party PS5 controllers
  * Added detection for Logitech and Simagic racing wheels</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1696680000">- Enable direct PipeWire support</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1698926400">- Update to release 2.28.5
  * Added support for the HP HyperX Clutch Gladiate controller
  * Fixed a crash if a controller is disconnected while SDL is
    opening it
  * Fixed a crash on Linux if XInput2 isn't available at runtime</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1706875200">- Update to release 2.30
  * Added support for 2 bits-per-pixel indexed surface formats.
  * Added the function SDL_GameControllerGetSteamHandle() to get
    the Steam API handle for a controller, if available.
  * Added the event SDL_CONTROLLERSTEAMHANDLEUPDATED which is sent
    when the Steam API handle for a controller changes. This could
    also change the name, VID, and PID of the controller.
  * Added the environment variable SDL_LOGGING to control default
    log output.</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1709726400">- Update to release 2.30.1
  * Fixed a regression causing SDL_WaitEvent() to return spurious
    failures
  * Wayland windows automatically have OpenGL enabled again
  * Fixed memory corruption when converting signed 16-bit audio
    to float
  * Fixed audio artifacts when converting signed 8-bit audio to
    float
  * Fixed the clip rectangle not being updated when the viewport
    changes in the SDL renderer</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1712059200">- Update to release 2.30.2
  * Fixed performance regression initialing controllers on Linux
  * Added support for the 6-button SEGA Mega Drive Control Pad
    for Nintendo Online
  * Add support for MadCatz Saitek Side Panel Control Deck
  * Added support for the Hori Fighting Stick EX2
  * Added support for the Yawman Arrow flightstick
  * Added a gamepad mapping for the Defender Joystick Cobra R4
  * Fixed the gamepad mapping for the Sanwa Supply JY-P76USV
    controller
  * Allow using SDL_RWFromFile() with named pipes</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1714564800">- Update to release 2.30.3
  * Fixed a pointer warping issue on XWayland
  * Reduced startup time when scanning for game controllers on Linux</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1718712000">- Update to release 2.30.4
  * Added support for the Saitek Cyborg V.3 Rumble Pad in PS3 mode
  * Added support for the Razer Kitsune in PS5 mode
  * Added Linux bindings for the Qanba Drone 2 Arcade Joystick
  * Leave Nintendo Online controllers in simple report mode so
    they work with DirectInput games
  * Enable using libusb for GameCube controllers when available</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1723809600">- Update to release 2.30.6
  * Improved detection of Nintendo Switch Pro controller report mode
  * Fixed a rare crash when a controller is disconnected</changelog>
  <changelog author="Antonio Larrosa &lt;alarrosa@suse.com&gt;" date="1724932800">- Don't build with fcitx support. fcitx support was just added
  because of a bug (boo#1025413) that could be fixed by building
  with fcitx support but upstream SDL2 developers fixed it
  in 2.0.5 when building without fcitx support too. Also fcitx
  support has always been disabled in SLE/Leap and in Factory
  it's built against fcitx 4.2.9.9, not the newer fcitx5 so
  let's disable it in order to reduce dependencies.</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1725364800">- Update to release 2.30.7
  * Added support for the Retro-bit Controller in PS3 mode
  * Fixed the cursor becoming visible when using relative mode
    under XWayland
  * Fixed Direct Rendering Manager initialization failure on some
    Linux systems
  * Fixed a crash when the current mouse capture window is
    destroyed</changelog>
</package>
<package pkgid="f08023f66902b386fe8a461ba787495c57326acc16a3b6c21220645d5c79bde8ce95c3cf84ae14805e7b4f91d0315a9197bb294b7803bcea204215789767bf56" name="SDL2-debugsource" arch="i586">
  <version epoch="0" ver="2.30.8" rel="1.1"/>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1675771200">- Update to release 2.26.3
  * Fixed infinite loop shutting down WGI controllers
  * Fixed centering the D-pad on some Xbox controllers</changelog>
  <changelog author="Michal Suchanek &lt;msuchanek@suse.com&gt;" date="1677844800">- Use current keymap on console
  (https://github.com/libsdl-org/SDL/pull/7400 )
  + 0001-Cleanup-add-brace-6545.patch
  + 0002-Update-for-SDL3-coding-style-6717.patch
  + 0003-Clang-Tidy-fixes-6725.patch
  + 0004-evdev_kbd-Use-current-keymap.patch</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1678190400">- Update to release 2.26.4
  * Fixed using older game controller mappings on Linux</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1681214400">- Update to release 2.26.5
  * Fixed handling of third party PS4 controller input reports
  * Added support for the trigger buttons on the Victrix Pro FS
    for PS5
  * Added mapping for Flydigi Vader 2 with the latest firmware
    (6.0.4.9)
  * Added mapping for DualSense Edge Wireless Controller on Linux
  * Added mapping for Hori Pokken Tournament DX Pro Pad
  * Improved the speed and quality of audio resampling
  * Fixed crash on Linux if dbus can't be initialized</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1687348800">- Update to release 2.28
  * Added SDL_HasWindowSurface() and SDL_DestroyWindowSurface() to
    switch between the window surface and rendering APIs.
  * Added a display event SDL_DISPLAYEVENT_MOVED which is sent
    when the primary monitor changes or displays change position
    relative to each other.
  * Added the hint SDL_HINT_ENABLE_SCREEN_KEYBOARD to control
    whether the on-screen keyboard should be shown when text input
    is active.
- Delete 0001-Cleanup-add-brace-6545.patch,
  0002-Update-for-SDL3-coding-style-6717.patch,
  0003-Clang-Tidy-fixes-6725.patch (inapplicable),
  0004-evdev_kbd-Use-current-keymap.patch (merged).</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1688212800">- Update to release 2.28.1
  * Added support for the Nintendo Online Famicom controllers
  * Improved support for third-party Nintendo Switch controllers
  * Fixed setting the player LED on Nintendo Switch controllers
  * Added Linux controller mapping for the Logitech Chillstream</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1690977600">- Update to release 2.28.2
  * Fixed 8BitDo gamepad mapping when in XInput mode on Linux
  * Fixed controller lockup initializing some unofficial PS4
    replica controllers
  * Fixed video initialization on headless Linux systems using VNC</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1693569600">- Update to release 2.28.3
  * Added a gamepad mapping for the G-Shark GS-GP702
  * Fixed touchpad events for the Razer Wolverine V2 Pro in PS5 mode</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1696248000">- Update to release 2.28.4
  * Enable clipping for zero sized rectangles in the SDL renderer
  * Notify X11 clipboard managers when the clipboard changes
  * Fixed sensor timestamps for third-party PS5 controllers
  * Added detection for Logitech and Simagic racing wheels</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1696680000">- Enable direct PipeWire support</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1698926400">- Update to release 2.28.5
  * Added support for the HP HyperX Clutch Gladiate controller
  * Fixed a crash if a controller is disconnected while SDL is
    opening it
  * Fixed a crash on Linux if XInput2 isn't available at runtime</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1706875200">- Update to release 2.30
  * Added support for 2 bits-per-pixel indexed surface formats.
  * Added the function SDL_GameControllerGetSteamHandle() to get
    the Steam API handle for a controller, if available.
  * Added the event SDL_CONTROLLERSTEAMHANDLEUPDATED which is sent
    when the Steam API handle for a controller changes. This could
    also change the name, VID, and PID of the controller.
  * Added the environment variable SDL_LOGGING to control default
    log output.</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1709726400">- Update to release 2.30.1
  * Fixed a regression causing SDL_WaitEvent() to return spurious
    failures
  * Wayland windows automatically have OpenGL enabled again
  * Fixed memory corruption when converting signed 16-bit audio
    to float
  * Fixed audio artifacts when converting signed 8-bit audio to
    float
  * Fixed the clip rectangle not being updated when the viewport
    changes in the SDL renderer</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1712059200">- Update to release 2.30.2
  * Fixed performance regression initialing controllers on Linux
  * Added support for the 6-button SEGA Mega Drive Control Pad
    for Nintendo Online
  * Add support for MadCatz Saitek Side Panel Control Deck
  * Added support for the Hori Fighting Stick EX2
  * Added support for the Yawman Arrow flightstick
  * Added a gamepad mapping for the Defender Joystick Cobra R4
  * Fixed the gamepad mapping for the Sanwa Supply JY-P76USV
    controller
  * Allow using SDL_RWFromFile() with named pipes</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1714564800">- Update to release 2.30.3
  * Fixed a pointer warping issue on XWayland
  * Reduced startup time when scanning for game controllers on Linux</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1718712000">- Update to release 2.30.4
  * Added support for the Saitek Cyborg V.3 Rumble Pad in PS3 mode
  * Added support for the Razer Kitsune in PS5 mode
  * Added Linux bindings for the Qanba Drone 2 Arcade Joystick
  * Leave Nintendo Online controllers in simple report mode so
    they work with DirectInput games
  * Enable using libusb for GameCube controllers when available</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1723809600">- Update to release 2.30.6
  * Improved detection of Nintendo Switch Pro controller report mode
  * Fixed a rare crash when a controller is disconnected</changelog>
  <changelog author="Antonio Larrosa &lt;alarrosa@suse.com&gt;" date="1724932800">- Don't build with fcitx support. fcitx support was just added
  because of a bug (boo#1025413) that could be fixed by building
  with fcitx support but upstream SDL2 developers fixed it
  in 2.0.5 when building without fcitx support too. Also fcitx
  support has always been disabled in SLE/Leap and in Factory
  it's built against fcitx 4.2.9.9, not the newer fcitx5 so
  let's disable it in order to reduce dependencies.</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1725364800">- Update to release 2.30.7
  * Added support for the Retro-bit Controller in PS3 mode
  * Fixed the cursor becoming visible when using relative mode
    under XWayland
  * Fixed Direct Rendering Manager initialization failure on some
    Linux systems
  * Fixed a crash when the current mouse capture window is
    destroyed</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1727784000">- Update to release 2.30.8
  * Fixed a crash in XInput code at startup
  * Fixed flooding the OS with I/O when a PS4/PS5 controller is
    disconnected
  * Added SDL_VIDEO_DOUBLE_BUFFER support to the Wayland backend
  * SDL_WINDOWEVENT_EXPOSED is sent appropriately when using
    Wayland
  * Fixed hang at startup in audio code when the application has
    large stack usage on Linux
  * Fixed initializing KMSDRM on older Linux systems</changelog>
</package>
<package pkgid="beefff325a8a0dd7d57bccb3fa98363ed3f35a7ebb9b344149d0376900018e18795eb5e06ca1c12a99ac1e2cf1b602ae9437e582f5e0040be3010ffbca01f82b" name="SDL2-debugsource" arch="x86_64">
  <version epoch="0" ver="2.30.8" rel="1.1"/>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1675771200">- Update to release 2.26.3
  * Fixed infinite loop shutting down WGI controllers
  * Fixed centering the D-pad on some Xbox controllers</changelog>
  <changelog author="Michal Suchanek &lt;msuchanek@suse.com&gt;" date="1677844800">- Use current keymap on console
  (https://github.com/libsdl-org/SDL/pull/7400 )
  + 0001-Cleanup-add-brace-6545.patch
  + 0002-Update-for-SDL3-coding-style-6717.patch
  + 0003-Clang-Tidy-fixes-6725.patch
  + 0004-evdev_kbd-Use-current-keymap.patch</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1678190400">- Update to release 2.26.4
  * Fixed using older game controller mappings on Linux</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1681214400">- Update to release 2.26.5
  * Fixed handling of third party PS4 controller input reports
  * Added support for the trigger buttons on the Victrix Pro FS
    for PS5
  * Added mapping for Flydigi Vader 2 with the latest firmware
    (6.0.4.9)
  * Added mapping for DualSense Edge Wireless Controller on Linux
  * Added mapping for Hori Pokken Tournament DX Pro Pad
  * Improved the speed and quality of audio resampling
  * Fixed crash on Linux if dbus can't be initialized</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1687348800">- Update to release 2.28
  * Added SDL_HasWindowSurface() and SDL_DestroyWindowSurface() to
    switch between the window surface and rendering APIs.
  * Added a display event SDL_DISPLAYEVENT_MOVED which is sent
    when the primary monitor changes or displays change position
    relative to each other.
  * Added the hint SDL_HINT_ENABLE_SCREEN_KEYBOARD to control
    whether the on-screen keyboard should be shown when text input
    is active.
- Delete 0001-Cleanup-add-brace-6545.patch,
  0002-Update-for-SDL3-coding-style-6717.patch,
  0003-Clang-Tidy-fixes-6725.patch (inapplicable),
  0004-evdev_kbd-Use-current-keymap.patch (merged).</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1688212800">- Update to release 2.28.1
  * Added support for the Nintendo Online Famicom controllers
  * Improved support for third-party Nintendo Switch controllers
  * Fixed setting the player LED on Nintendo Switch controllers
  * Added Linux controller mapping for the Logitech Chillstream</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1690977600">- Update to release 2.28.2
  * Fixed 8BitDo gamepad mapping when in XInput mode on Linux
  * Fixed controller lockup initializing some unofficial PS4
    replica controllers
  * Fixed video initialization on headless Linux systems using VNC</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1693569600">- Update to release 2.28.3
  * Added a gamepad mapping for the G-Shark GS-GP702
  * Fixed touchpad events for the Razer Wolverine V2 Pro in PS5 mode</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1696248000">- Update to release 2.28.4
  * Enable clipping for zero sized rectangles in the SDL renderer
  * Notify X11 clipboard managers when the clipboard changes
  * Fixed sensor timestamps for third-party PS5 controllers
  * Added detection for Logitech and Simagic racing wheels</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1696680000">- Enable direct PipeWire support</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1698926400">- Update to release 2.28.5
  * Added support for the HP HyperX Clutch Gladiate controller
  * Fixed a crash if a controller is disconnected while SDL is
    opening it
  * Fixed a crash on Linux if XInput2 isn't available at runtime</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1706875200">- Update to release 2.30
  * Added support for 2 bits-per-pixel indexed surface formats.
  * Added the function SDL_GameControllerGetSteamHandle() to get
    the Steam API handle for a controller, if available.
  * Added the event SDL_CONTROLLERSTEAMHANDLEUPDATED which is sent
    when the Steam API handle for a controller changes. This could
    also change the name, VID, and PID of the controller.
  * Added the environment variable SDL_LOGGING to control default
    log output.</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1709726400">- Update to release 2.30.1
  * Fixed a regression causing SDL_WaitEvent() to return spurious
    failures
  * Wayland windows automatically have OpenGL enabled again
  * Fixed memory corruption when converting signed 16-bit audio
    to float
  * Fixed audio artifacts when converting signed 8-bit audio to
    float
  * Fixed the clip rectangle not being updated when the viewport
    changes in the SDL renderer</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1712059200">- Update to release 2.30.2
  * Fixed performance regression initialing controllers on Linux
  * Added support for the 6-button SEGA Mega Drive Control Pad
    for Nintendo Online
  * Add support for MadCatz Saitek Side Panel Control Deck
  * Added support for the Hori Fighting Stick EX2
  * Added support for the Yawman Arrow flightstick
  * Added a gamepad mapping for the Defender Joystick Cobra R4
  * Fixed the gamepad mapping for the Sanwa Supply JY-P76USV
    controller
  * Allow using SDL_RWFromFile() with named pipes</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1714564800">- Update to release 2.30.3
  * Fixed a pointer warping issue on XWayland
  * Reduced startup time when scanning for game controllers on Linux</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1718712000">- Update to release 2.30.4
  * Added support for the Saitek Cyborg V.3 Rumble Pad in PS3 mode
  * Added support for the Razer Kitsune in PS5 mode
  * Added Linux bindings for the Qanba Drone 2 Arcade Joystick
  * Leave Nintendo Online controllers in simple report mode so
    they work with DirectInput games
  * Enable using libusb for GameCube controllers when available</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1723809600">- Update to release 2.30.6
  * Improved detection of Nintendo Switch Pro controller report mode
  * Fixed a rare crash when a controller is disconnected</changelog>
  <changelog author="Antonio Larrosa &lt;alarrosa@suse.com&gt;" date="1724932800">- Don't build with fcitx support. fcitx support was just added
  because of a bug (boo#1025413) that could be fixed by building
  with fcitx support but upstream SDL2 developers fixed it
  in 2.0.5 when building without fcitx support too. Also fcitx
  support has always been disabled in SLE/Leap and in Factory
  it's built against fcitx 4.2.9.9, not the newer fcitx5 so
  let's disable it in order to reduce dependencies.</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1725364800">- Update to release 2.30.7
  * Added support for the Retro-bit Controller in PS3 mode
  * Fixed the cursor becoming visible when using relative mode
    under XWayland
  * Fixed Direct Rendering Manager initialization failure on some
    Linux systems
  * Fixed a crash when the current mouse capture window is
    destroyed</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1727784000">- Update to release 2.30.8
  * Fixed a crash in XInput code at startup
  * Fixed flooding the OS with I/O when a PS4/PS5 controller is
    disconnected
  * Added SDL_VIDEO_DOUBLE_BUFFER support to the Wayland backend
  * SDL_WINDOWEVENT_EXPOSED is sent appropriately when using
    Wayland
  * Fixed hang at startup in audio code when the application has
    large stack usage on Linux
  * Fixed initializing KMSDRM on older Linux systems</changelog>
</package>
<package pkgid="be326e55ee49a90e764200d62919dfcc7edb77236ed4576ed914f5da814c28dbad5edb1f78862b69e73b7c9f8731024f6c3ec6e772f0ac25b90cc3a52447506c" name="SDL2-debugsource" arch="i586">
  <version epoch="0" ver="2.30.9" rel="1.1"/>
  <changelog author="Michal Suchanek &lt;msuchanek@suse.com&gt;" date="1677844800">- Use current keymap on console
  (https://github.com/libsdl-org/SDL/pull/7400 )
  + 0001-Cleanup-add-brace-6545.patch
  + 0002-Update-for-SDL3-coding-style-6717.patch
  + 0003-Clang-Tidy-fixes-6725.patch
  + 0004-evdev_kbd-Use-current-keymap.patch</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1678190400">- Update to release 2.26.4
  * Fixed using older game controller mappings on Linux</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1681214400">- Update to release 2.26.5
  * Fixed handling of third party PS4 controller input reports
  * Added support for the trigger buttons on the Victrix Pro FS
    for PS5
  * Added mapping for Flydigi Vader 2 with the latest firmware
    (6.0.4.9)
  * Added mapping for DualSense Edge Wireless Controller on Linux
  * Added mapping for Hori Pokken Tournament DX Pro Pad
  * Improved the speed and quality of audio resampling
  * Fixed crash on Linux if dbus can't be initialized</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1687348800">- Update to release 2.28
  * Added SDL_HasWindowSurface() and SDL_DestroyWindowSurface() to
    switch between the window surface and rendering APIs.
  * Added a display event SDL_DISPLAYEVENT_MOVED which is sent
    when the primary monitor changes or displays change position
    relative to each other.
  * Added the hint SDL_HINT_ENABLE_SCREEN_KEYBOARD to control
    whether the on-screen keyboard should be shown when text input
    is active.
- Delete 0001-Cleanup-add-brace-6545.patch,
  0002-Update-for-SDL3-coding-style-6717.patch,
  0003-Clang-Tidy-fixes-6725.patch (inapplicable),
  0004-evdev_kbd-Use-current-keymap.patch (merged).</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1688212800">- Update to release 2.28.1
  * Added support for the Nintendo Online Famicom controllers
  * Improved support for third-party Nintendo Switch controllers
  * Fixed setting the player LED on Nintendo Switch controllers
  * Added Linux controller mapping for the Logitech Chillstream</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1690977600">- Update to release 2.28.2
  * Fixed 8BitDo gamepad mapping when in XInput mode on Linux
  * Fixed controller lockup initializing some unofficial PS4
    replica controllers
  * Fixed video initialization on headless Linux systems using VNC</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1693569600">- Update to release 2.28.3
  * Added a gamepad mapping for the G-Shark GS-GP702
  * Fixed touchpad events for the Razer Wolverine V2 Pro in PS5 mode</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1696248000">- Update to release 2.28.4
  * Enable clipping for zero sized rectangles in the SDL renderer
  * Notify X11 clipboard managers when the clipboard changes
  * Fixed sensor timestamps for third-party PS5 controllers
  * Added detection for Logitech and Simagic racing wheels</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1696680000">- Enable direct PipeWire support</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1698926400">- Update to release 2.28.5
  * Added support for the HP HyperX Clutch Gladiate controller
  * Fixed a crash if a controller is disconnected while SDL is
    opening it
  * Fixed a crash on Linux if XInput2 isn't available at runtime</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1706875200">- Update to release 2.30
  * Added support for 2 bits-per-pixel indexed surface formats.
  * Added the function SDL_GameControllerGetSteamHandle() to get
    the Steam API handle for a controller, if available.
  * Added the event SDL_CONTROLLERSTEAMHANDLEUPDATED which is sent
    when the Steam API handle for a controller changes. This could
    also change the name, VID, and PID of the controller.
  * Added the environment variable SDL_LOGGING to control default
    log output.</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1709726400">- Update to release 2.30.1
  * Fixed a regression causing SDL_WaitEvent() to return spurious
    failures
  * Wayland windows automatically have OpenGL enabled again
  * Fixed memory corruption when converting signed 16-bit audio
    to float
  * Fixed audio artifacts when converting signed 8-bit audio to
    float
  * Fixed the clip rectangle not being updated when the viewport
    changes in the SDL renderer</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1712059200">- Update to release 2.30.2
  * Fixed performance regression initialing controllers on Linux
  * Added support for the 6-button SEGA Mega Drive Control Pad
    for Nintendo Online
  * Add support for MadCatz Saitek Side Panel Control Deck
  * Added support for the Hori Fighting Stick EX2
  * Added support for the Yawman Arrow flightstick
  * Added a gamepad mapping for the Defender Joystick Cobra R4
  * Fixed the gamepad mapping for the Sanwa Supply JY-P76USV
    controller
  * Allow using SDL_RWFromFile() with named pipes</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1714564800">- Update to release 2.30.3
  * Fixed a pointer warping issue on XWayland
  * Reduced startup time when scanning for game controllers on Linux</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1718712000">- Update to release 2.30.4
  * Added support for the Saitek Cyborg V.3 Rumble Pad in PS3 mode
  * Added support for the Razer Kitsune in PS5 mode
  * Added Linux bindings for the Qanba Drone 2 Arcade Joystick
  * Leave Nintendo Online controllers in simple report mode so
    they work with DirectInput games
  * Enable using libusb for GameCube controllers when available</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1723809600">- Update to release 2.30.6
  * Improved detection of Nintendo Switch Pro controller report mode
  * Fixed a rare crash when a controller is disconnected</changelog>
  <changelog author="Antonio Larrosa &lt;alarrosa@suse.com&gt;" date="1724932800">- Don't build with fcitx support. fcitx support was just added
  because of a bug (boo#1025413) that could be fixed by building
  with fcitx support but upstream SDL2 developers fixed it
  in 2.0.5 when building without fcitx support too. Also fcitx
  support has always been disabled in SLE/Leap and in Factory
  it's built against fcitx 4.2.9.9, not the newer fcitx5 so
  let's disable it in order to reduce dependencies.</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1725364800">- Update to release 2.30.7
  * Added support for the Retro-bit Controller in PS3 mode
  * Fixed the cursor becoming visible when using relative mode
    under XWayland
  * Fixed Direct Rendering Manager initialization failure on some
    Linux systems
  * Fixed a crash when the current mouse capture window is
    destroyed</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1727784000">- Update to release 2.30.8
  * Fixed a crash in XInput code at startup
  * Fixed flooding the OS with I/O when a PS4/PS5 controller is
    disconnected
  * Added SDL_VIDEO_DOUBLE_BUFFER support to the Wayland backend
  * SDL_WINDOWEVENT_EXPOSED is sent appropriately when using
    Wayland
  * Fixed hang at startup in audio code when the application has
    large stack usage on Linux
  * Fixed initializing KMSDRM on older Linux systems</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1730548800">- Update to release 2.30.9
  * Fixed flicker when entering/exiting fullscreen or moving the
    window between scaled and non-scaled displays under Wayland.</changelog>
</package>
<package pkgid="fcf96b83bb4b6fc8d5984fb3adc4f479fdf52edee56d11bd3c03274c967b7bdcef7fb871d91d11d02f0a318a8d7b6793ca24a9012210f4c5fa561dd4cf22538e" name="SDL2-debugsource" arch="x86_64">
  <version epoch="0" ver="2.30.9" rel="1.1"/>
  <changelog author="Michal Suchanek &lt;msuchanek@suse.com&gt;" date="1677844800">- Use current keymap on console
  (https://github.com/libsdl-org/SDL/pull/7400 )
  + 0001-Cleanup-add-brace-6545.patch
  + 0002-Update-for-SDL3-coding-style-6717.patch
  + 0003-Clang-Tidy-fixes-6725.patch
  + 0004-evdev_kbd-Use-current-keymap.patch</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1678190400">- Update to release 2.26.4
  * Fixed using older game controller mappings on Linux</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1681214400">- Update to release 2.26.5
  * Fixed handling of third party PS4 controller input reports
  * Added support for the trigger buttons on the Victrix Pro FS
    for PS5
  * Added mapping for Flydigi Vader 2 with the latest firmware
    (6.0.4.9)
  * Added mapping for DualSense Edge Wireless Controller on Linux
  * Added mapping for Hori Pokken Tournament DX Pro Pad
  * Improved the speed and quality of audio resampling
  * Fixed crash on Linux if dbus can't be initialized</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1687348800">- Update to release 2.28
  * Added SDL_HasWindowSurface() and SDL_DestroyWindowSurface() to
    switch between the window surface and rendering APIs.
  * Added a display event SDL_DISPLAYEVENT_MOVED which is sent
    when the primary monitor changes or displays change position
    relative to each other.
  * Added the hint SDL_HINT_ENABLE_SCREEN_KEYBOARD to control
    whether the on-screen keyboard should be shown when text input
    is active.
- Delete 0001-Cleanup-add-brace-6545.patch,
  0002-Update-for-SDL3-coding-style-6717.patch,
  0003-Clang-Tidy-fixes-6725.patch (inapplicable),
  0004-evdev_kbd-Use-current-keymap.patch (merged).</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1688212800">- Update to release 2.28.1
  * Added support for the Nintendo Online Famicom controllers
  * Improved support for third-party Nintendo Switch controllers
  * Fixed setting the player LED on Nintendo Switch controllers
  * Added Linux controller mapping for the Logitech Chillstream</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1690977600">- Update to release 2.28.2
  * Fixed 8BitDo gamepad mapping when in XInput mode on Linux
  * Fixed controller lockup initializing some unofficial PS4
    replica controllers
  * Fixed video initialization on headless Linux systems using VNC</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1693569600">- Update to release 2.28.3
  * Added a gamepad mapping for the G-Shark GS-GP702
  * Fixed touchpad events for the Razer Wolverine V2 Pro in PS5 mode</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1696248000">- Update to release 2.28.4
  * Enable clipping for zero sized rectangles in the SDL renderer
  * Notify X11 clipboard managers when the clipboard changes
  * Fixed sensor timestamps for third-party PS5 controllers
  * Added detection for Logitech and Simagic racing wheels</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1696680000">- Enable direct PipeWire support</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1698926400">- Update to release 2.28.5
  * Added support for the HP HyperX Clutch Gladiate controller
  * Fixed a crash if a controller is disconnected while SDL is
    opening it
  * Fixed a crash on Linux if XInput2 isn't available at runtime</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1706875200">- Update to release 2.30
  * Added support for 2 bits-per-pixel indexed surface formats.
  * Added the function SDL_GameControllerGetSteamHandle() to get
    the Steam API handle for a controller, if available.
  * Added the event SDL_CONTROLLERSTEAMHANDLEUPDATED which is sent
    when the Steam API handle for a controller changes. This could
    also change the name, VID, and PID of the controller.
  * Added the environment variable SDL_LOGGING to control default
    log output.</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1709726400">- Update to release 2.30.1
  * Fixed a regression causing SDL_WaitEvent() to return spurious
    failures
  * Wayland windows automatically have OpenGL enabled again
  * Fixed memory corruption when converting signed 16-bit audio
    to float
  * Fixed audio artifacts when converting signed 8-bit audio to
    float
  * Fixed the clip rectangle not being updated when the viewport
    changes in the SDL renderer</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1712059200">- Update to release 2.30.2
  * Fixed performance regression initialing controllers on Linux
  * Added support for the 6-button SEGA Mega Drive Control Pad
    for Nintendo Online
  * Add support for MadCatz Saitek Side Panel Control Deck
  * Added support for the Hori Fighting Stick EX2
  * Added support for the Yawman Arrow flightstick
  * Added a gamepad mapping for the Defender Joystick Cobra R4
  * Fixed the gamepad mapping for the Sanwa Supply JY-P76USV
    controller
  * Allow using SDL_RWFromFile() with named pipes</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1714564800">- Update to release 2.30.3
  * Fixed a pointer warping issue on XWayland
  * Reduced startup time when scanning for game controllers on Linux</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1718712000">- Update to release 2.30.4
  * Added support for the Saitek Cyborg V.3 Rumble Pad in PS3 mode
  * Added support for the Razer Kitsune in PS5 mode
  * Added Linux bindings for the Qanba Drone 2 Arcade Joystick
  * Leave Nintendo Online controllers in simple report mode so
    they work with DirectInput games
  * Enable using libusb for GameCube controllers when available</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1723809600">- Update to release 2.30.6
  * Improved detection of Nintendo Switch Pro controller report mode
  * Fixed a rare crash when a controller is disconnected</changelog>
  <changelog author="Antonio Larrosa &lt;alarrosa@suse.com&gt;" date="1724932800">- Don't build with fcitx support. fcitx support was just added
  because of a bug (boo#1025413) that could be fixed by building
  with fcitx support but upstream SDL2 developers fixed it
  in 2.0.5 when building without fcitx support too. Also fcitx
  support has always been disabled in SLE/Leap and in Factory
  it's built against fcitx 4.2.9.9, not the newer fcitx5 so
  let's disable it in order to reduce dependencies.</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1725364800">- Update to release 2.30.7
  * Added support for the Retro-bit Controller in PS3 mode
  * Fixed the cursor becoming visible when using relative mode
    under XWayland
  * Fixed Direct Rendering Manager initialization failure on some
    Linux systems
  * Fixed a crash when the current mouse capture window is
    destroyed</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1727784000">- Update to release 2.30.8
  * Fixed a crash in XInput code at startup
  * Fixed flooding the OS with I/O when a PS4/PS5 controller is
    disconnected
  * Added SDL_VIDEO_DOUBLE_BUFFER support to the Wayland backend
  * SDL_WINDOWEVENT_EXPOSED is sent appropriately when using
    Wayland
  * Fixed hang at startup in audio code when the application has
    large stack usage on Linux
  * Fixed initializing KMSDRM on older Linux systems</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1730548800">- Update to release 2.30.9
  * Fixed flicker when entering/exiting fullscreen or moving the
    window between scaled and non-scaled displays under Wayland.</changelog>
</package>
<package pkgid="aabaaf6c3883f2d09cf77495707984a28340cbed30e985c1c2d0e91498c3a53f6743d11f3ac3736f7fa48515e5e065ef98b8dd76aa5f08d37b917b08bf60e221" name="SDL2-devel" arch="i586">
  <version epoch="0" ver="2.30.6" rel="1.0.2.1.sr20240803"/>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1669118400">- Update to release 2.26
  * Added SDL_GetWindowSizeInPixels() to get the window size in
    pixels, which may differ from the window coordinate size for
    windows with high-DPI support.
  * Added simulated vsync synchronization for the software
    renderer.
  * Added the mouse position to SDL_MouseWheelEvent.
  * Added SDL_ResetHints() to reset all hints to their default
    values.
  * Added SDL_GetJoystickGUIDInfo() to get device information
    encoded in a joystick GUID.
  * Added XBOX Hints.
  * Added support for PS3 and Wii controllers to the HIDAPI
    driver (not enabled by default).
  * Added access to the individual left and right gyro sensors of
    the combined Joy-Cons controller.
  * Added a microsecond timestamp to SDL_SensorEvent and
    SDL_ControllerSensorEvent, when the hardware provides that
    information.
- Delete sdl2-khronos.patch (merged)
- Drop CVE-2022-4743.patch.</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1669896000">- Update to release 2.26.1
  * Improved audio resampling quality
  * Fixed crash if SDL_GetPointDisplayIndex() or
    SDL_GetRectDisplayIndex() are called before SDL_VideoInit()</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1672747200">- Update to release 2.26.2
  * Fixed long delay at startup when a Razer keyboard is
    connected
  * Fixed not receiving SDLK_5 or SDL_SCANCODE_5 when using the
    AZERTY keyboard layout on Linux
- Enable libsamplerate and libdecor components
- Remove unused tslib build requirement</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1675771200">- Update to release 2.26.3
  * Fixed infinite loop shutting down WGI controllers
  * Fixed centering the D-pad on some Xbox controllers</changelog>
  <changelog author="Michal Suchanek &lt;msuchanek@suse.com&gt;" date="1677844800">- Use current keymap on console
  (https://github.com/libsdl-org/SDL/pull/7400 )
  + 0001-Cleanup-add-brace-6545.patch
  + 0002-Update-for-SDL3-coding-style-6717.patch
  + 0003-Clang-Tidy-fixes-6725.patch
  + 0004-evdev_kbd-Use-current-keymap.patch</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1678190400">- Update to release 2.26.4
  * Fixed using older game controller mappings on Linux</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1681214400">- Update to release 2.26.5
  * Fixed handling of third party PS4 controller input reports
  * Added support for the trigger buttons on the Victrix Pro FS
    for PS5
  * Added mapping for Flydigi Vader 2 with the latest firmware
    (6.0.4.9)
  * Added mapping for DualSense Edge Wireless Controller on Linux
  * Added mapping for Hori Pokken Tournament DX Pro Pad
  * Improved the speed and quality of audio resampling
  * Fixed crash on Linux if dbus can't be initialized</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1687348800">- Update to release 2.28
  * Added SDL_HasWindowSurface() and SDL_DestroyWindowSurface() to
    switch between the window surface and rendering APIs.
  * Added a display event SDL_DISPLAYEVENT_MOVED which is sent
    when the primary monitor changes or displays change position
    relative to each other.
  * Added the hint SDL_HINT_ENABLE_SCREEN_KEYBOARD to control
    whether the on-screen keyboard should be shown when text input
    is active.
- Delete 0001-Cleanup-add-brace-6545.patch,
  0002-Update-for-SDL3-coding-style-6717.patch,
  0003-Clang-Tidy-fixes-6725.patch (inapplicable),
  0004-evdev_kbd-Use-current-keymap.patch (merged).</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1688212800">- Update to release 2.28.1
  * Added support for the Nintendo Online Famicom controllers
  * Improved support for third-party Nintendo Switch controllers
  * Fixed setting the player LED on Nintendo Switch controllers
  * Added Linux controller mapping for the Logitech Chillstream</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1690977600">- Update to release 2.28.2
  * Fixed 8BitDo gamepad mapping when in XInput mode on Linux
  * Fixed controller lockup initializing some unofficial PS4
    replica controllers
  * Fixed video initialization on headless Linux systems using VNC</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1693569600">- Update to release 2.28.3
  * Added a gamepad mapping for the G-Shark GS-GP702
  * Fixed touchpad events for the Razer Wolverine V2 Pro in PS5 mode</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1696248000">- Update to release 2.28.4
  * Enable clipping for zero sized rectangles in the SDL renderer
  * Notify X11 clipboard managers when the clipboard changes
  * Fixed sensor timestamps for third-party PS5 controllers
  * Added detection for Logitech and Simagic racing wheels</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1696680000">- Enable direct PipeWire support</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1698926400">- Update to release 2.28.5
  * Added support for the HP HyperX Clutch Gladiate controller
  * Fixed a crash if a controller is disconnected while SDL is
    opening it
  * Fixed a crash on Linux if XInput2 isn't available at runtime</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1706875200">- Update to release 2.30
  * Added support for 2 bits-per-pixel indexed surface formats.
  * Added the function SDL_GameControllerGetSteamHandle() to get
    the Steam API handle for a controller, if available.
  * Added the event SDL_CONTROLLERSTEAMHANDLEUPDATED which is sent
    when the Steam API handle for a controller changes. This could
    also change the name, VID, and PID of the controller.
  * Added the environment variable SDL_LOGGING to control default
    log output.</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1709726400">- Update to release 2.30.1
  * Fixed a regression causing SDL_WaitEvent() to return spurious
    failures
  * Wayland windows automatically have OpenGL enabled again
  * Fixed memory corruption when converting signed 16-bit audio
    to float
  * Fixed audio artifacts when converting signed 8-bit audio to
    float
  * Fixed the clip rectangle not being updated when the viewport
    changes in the SDL renderer</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1712059200">- Update to release 2.30.2
  * Fixed performance regression initialing controllers on Linux
  * Added support for the 6-button SEGA Mega Drive Control Pad
    for Nintendo Online
  * Add support for MadCatz Saitek Side Panel Control Deck
  * Added support for the Hori Fighting Stick EX2
  * Added support for the Yawman Arrow flightstick
  * Added a gamepad mapping for the Defender Joystick Cobra R4
  * Fixed the gamepad mapping for the Sanwa Supply JY-P76USV
    controller
  * Allow using SDL_RWFromFile() with named pipes</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1714564800">- Update to release 2.30.3
  * Fixed a pointer warping issue on XWayland
  * Reduced startup time when scanning for game controllers on Linux</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1718712000">- Update to release 2.30.4
  * Added support for the Saitek Cyborg V.3 Rumble Pad in PS3 mode
  * Added support for the Razer Kitsune in PS5 mode
  * Added Linux bindings for the Qanba Drone 2 Arcade Joystick
  * Leave Nintendo Online controllers in simple report mode so
    they work with DirectInput games
  * Enable using libusb for GameCube controllers when available</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1723809600">- Update to release 2.30.6
  * Improved detection of Nintendo Switch Pro controller report mode
  * Fixed a rare crash when a controller is disconnected</changelog>
</package>
<package pkgid="7637957ba3981a40b9e68e5655f8c0fc929713c4b536899ddde43cbfc543f3f33c740330caa8b710009454677d3897db885661a712c8c8e580bc076fa9728925" name="SDL2-devel" arch="i586">
  <version epoch="0" ver="2.30.6" rel="1.1"/>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1669118400">- Update to release 2.26
  * Added SDL_GetWindowSizeInPixels() to get the window size in
    pixels, which may differ from the window coordinate size for
    windows with high-DPI support.
  * Added simulated vsync synchronization for the software
    renderer.
  * Added the mouse position to SDL_MouseWheelEvent.
  * Added SDL_ResetHints() to reset all hints to their default
    values.
  * Added SDL_GetJoystickGUIDInfo() to get device information
    encoded in a joystick GUID.
  * Added XBOX Hints.
  * Added support for PS3 and Wii controllers to the HIDAPI
    driver (not enabled by default).
  * Added access to the individual left and right gyro sensors of
    the combined Joy-Cons controller.
  * Added a microsecond timestamp to SDL_SensorEvent and
    SDL_ControllerSensorEvent, when the hardware provides that
    information.
- Delete sdl2-khronos.patch (merged)
- Drop CVE-2022-4743.patch.</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1669896000">- Update to release 2.26.1
  * Improved audio resampling quality
  * Fixed crash if SDL_GetPointDisplayIndex() or
    SDL_GetRectDisplayIndex() are called before SDL_VideoInit()</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1672747200">- Update to release 2.26.2
  * Fixed long delay at startup when a Razer keyboard is
    connected
  * Fixed not receiving SDLK_5 or SDL_SCANCODE_5 when using the
    AZERTY keyboard layout on Linux
- Enable libsamplerate and libdecor components
- Remove unused tslib build requirement</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1675771200">- Update to release 2.26.3
  * Fixed infinite loop shutting down WGI controllers
  * Fixed centering the D-pad on some Xbox controllers</changelog>
  <changelog author="Michal Suchanek &lt;msuchanek@suse.com&gt;" date="1677844800">- Use current keymap on console
  (https://github.com/libsdl-org/SDL/pull/7400 )
  + 0001-Cleanup-add-brace-6545.patch
  + 0002-Update-for-SDL3-coding-style-6717.patch
  + 0003-Clang-Tidy-fixes-6725.patch
  + 0004-evdev_kbd-Use-current-keymap.patch</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1678190400">- Update to release 2.26.4
  * Fixed using older game controller mappings on Linux</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1681214400">- Update to release 2.26.5
  * Fixed handling of third party PS4 controller input reports
  * Added support for the trigger buttons on the Victrix Pro FS
    for PS5
  * Added mapping for Flydigi Vader 2 with the latest firmware
    (6.0.4.9)
  * Added mapping for DualSense Edge Wireless Controller on Linux
  * Added mapping for Hori Pokken Tournament DX Pro Pad
  * Improved the speed and quality of audio resampling
  * Fixed crash on Linux if dbus can't be initialized</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1687348800">- Update to release 2.28
  * Added SDL_HasWindowSurface() and SDL_DestroyWindowSurface() to
    switch between the window surface and rendering APIs.
  * Added a display event SDL_DISPLAYEVENT_MOVED which is sent
    when the primary monitor changes or displays change position
    relative to each other.
  * Added the hint SDL_HINT_ENABLE_SCREEN_KEYBOARD to control
    whether the on-screen keyboard should be shown when text input
    is active.
- Delete 0001-Cleanup-add-brace-6545.patch,
  0002-Update-for-SDL3-coding-style-6717.patch,
  0003-Clang-Tidy-fixes-6725.patch (inapplicable),
  0004-evdev_kbd-Use-current-keymap.patch (merged).</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1688212800">- Update to release 2.28.1
  * Added support for the Nintendo Online Famicom controllers
  * Improved support for third-party Nintendo Switch controllers
  * Fixed setting the player LED on Nintendo Switch controllers
  * Added Linux controller mapping for the Logitech Chillstream</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1690977600">- Update to release 2.28.2
  * Fixed 8BitDo gamepad mapping when in XInput mode on Linux
  * Fixed controller lockup initializing some unofficial PS4
    replica controllers
  * Fixed video initialization on headless Linux systems using VNC</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1693569600">- Update to release 2.28.3
  * Added a gamepad mapping for the G-Shark GS-GP702
  * Fixed touchpad events for the Razer Wolverine V2 Pro in PS5 mode</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1696248000">- Update to release 2.28.4
  * Enable clipping for zero sized rectangles in the SDL renderer
  * Notify X11 clipboard managers when the clipboard changes
  * Fixed sensor timestamps for third-party PS5 controllers
  * Added detection for Logitech and Simagic racing wheels</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1696680000">- Enable direct PipeWire support</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1698926400">- Update to release 2.28.5
  * Added support for the HP HyperX Clutch Gladiate controller
  * Fixed a crash if a controller is disconnected while SDL is
    opening it
  * Fixed a crash on Linux if XInput2 isn't available at runtime</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1706875200">- Update to release 2.30
  * Added support for 2 bits-per-pixel indexed surface formats.
  * Added the function SDL_GameControllerGetSteamHandle() to get
    the Steam API handle for a controller, if available.
  * Added the event SDL_CONTROLLERSTEAMHANDLEUPDATED which is sent
    when the Steam API handle for a controller changes. This could
    also change the name, VID, and PID of the controller.
  * Added the environment variable SDL_LOGGING to control default
    log output.</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1709726400">- Update to release 2.30.1
  * Fixed a regression causing SDL_WaitEvent() to return spurious
    failures
  * Wayland windows automatically have OpenGL enabled again
  * Fixed memory corruption when converting signed 16-bit audio
    to float
  * Fixed audio artifacts when converting signed 8-bit audio to
    float
  * Fixed the clip rectangle not being updated when the viewport
    changes in the SDL renderer</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1712059200">- Update to release 2.30.2
  * Fixed performance regression initialing controllers on Linux
  * Added support for the 6-button SEGA Mega Drive Control Pad
    for Nintendo Online
  * Add support for MadCatz Saitek Side Panel Control Deck
  * Added support for the Hori Fighting Stick EX2
  * Added support for the Yawman Arrow flightstick
  * Added a gamepad mapping for the Defender Joystick Cobra R4
  * Fixed the gamepad mapping for the Sanwa Supply JY-P76USV
    controller
  * Allow using SDL_RWFromFile() with named pipes</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1714564800">- Update to release 2.30.3
  * Fixed a pointer warping issue on XWayland
  * Reduced startup time when scanning for game controllers on Linux</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1718712000">- Update to release 2.30.4
  * Added support for the Saitek Cyborg V.3 Rumble Pad in PS3 mode
  * Added support for the Razer Kitsune in PS5 mode
  * Added Linux bindings for the Qanba Drone 2 Arcade Joystick
  * Leave Nintendo Online controllers in simple report mode so
    they work with DirectInput games
  * Enable using libusb for GameCube controllers when available</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1723809600">- Update to release 2.30.6
  * Improved detection of Nintendo Switch Pro controller report mode
  * Fixed a rare crash when a controller is disconnected</changelog>
</package>
<package pkgid="f6d22f6cf4d6c65df83fadd86c5978a5db1038c7231bb727d71c27747db01035a900ea4050f4f498a2bd048af1804990ab2dcbad6a85065a5a57902d03850016" name="SDL2-devel" arch="x86_64">
  <version epoch="0" ver="2.30.6" rel="1.1"/>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1669118400">- Update to release 2.26
  * Added SDL_GetWindowSizeInPixels() to get the window size in
    pixels, which may differ from the window coordinate size for
    windows with high-DPI support.
  * Added simulated vsync synchronization for the software
    renderer.
  * Added the mouse position to SDL_MouseWheelEvent.
  * Added SDL_ResetHints() to reset all hints to their default
    values.
  * Added SDL_GetJoystickGUIDInfo() to get device information
    encoded in a joystick GUID.
  * Added XBOX Hints.
  * Added support for PS3 and Wii controllers to the HIDAPI
    driver (not enabled by default).
  * Added access to the individual left and right gyro sensors of
    the combined Joy-Cons controller.
  * Added a microsecond timestamp to SDL_SensorEvent and
    SDL_ControllerSensorEvent, when the hardware provides that
    information.
- Delete sdl2-khronos.patch (merged)
- Drop CVE-2022-4743.patch.</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1669896000">- Update to release 2.26.1
  * Improved audio resampling quality
  * Fixed crash if SDL_GetPointDisplayIndex() or
    SDL_GetRectDisplayIndex() are called before SDL_VideoInit()</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1672747200">- Update to release 2.26.2
  * Fixed long delay at startup when a Razer keyboard is
    connected
  * Fixed not receiving SDLK_5 or SDL_SCANCODE_5 when using the
    AZERTY keyboard layout on Linux
- Enable libsamplerate and libdecor components
- Remove unused tslib build requirement</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1675771200">- Update to release 2.26.3
  * Fixed infinite loop shutting down WGI controllers
  * Fixed centering the D-pad on some Xbox controllers</changelog>
  <changelog author="Michal Suchanek &lt;msuchanek@suse.com&gt;" date="1677844800">- Use current keymap on console
  (https://github.com/libsdl-org/SDL/pull/7400 )
  + 0001-Cleanup-add-brace-6545.patch
  + 0002-Update-for-SDL3-coding-style-6717.patch
  + 0003-Clang-Tidy-fixes-6725.patch
  + 0004-evdev_kbd-Use-current-keymap.patch</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1678190400">- Update to release 2.26.4
  * Fixed using older game controller mappings on Linux</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1681214400">- Update to release 2.26.5
  * Fixed handling of third party PS4 controller input reports
  * Added support for the trigger buttons on the Victrix Pro FS
    for PS5
  * Added mapping for Flydigi Vader 2 with the latest firmware
    (6.0.4.9)
  * Added mapping for DualSense Edge Wireless Controller on Linux
  * Added mapping for Hori Pokken Tournament DX Pro Pad
  * Improved the speed and quality of audio resampling
  * Fixed crash on Linux if dbus can't be initialized</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1687348800">- Update to release 2.28
  * Added SDL_HasWindowSurface() and SDL_DestroyWindowSurface() to
    switch between the window surface and rendering APIs.
  * Added a display event SDL_DISPLAYEVENT_MOVED which is sent
    when the primary monitor changes or displays change position
    relative to each other.
  * Added the hint SDL_HINT_ENABLE_SCREEN_KEYBOARD to control
    whether the on-screen keyboard should be shown when text input
    is active.
- Delete 0001-Cleanup-add-brace-6545.patch,
  0002-Update-for-SDL3-coding-style-6717.patch,
  0003-Clang-Tidy-fixes-6725.patch (inapplicable),
  0004-evdev_kbd-Use-current-keymap.patch (merged).</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1688212800">- Update to release 2.28.1
  * Added support for the Nintendo Online Famicom controllers
  * Improved support for third-party Nintendo Switch controllers
  * Fixed setting the player LED on Nintendo Switch controllers
  * Added Linux controller mapping for the Logitech Chillstream</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1690977600">- Update to release 2.28.2
  * Fixed 8BitDo gamepad mapping when in XInput mode on Linux
  * Fixed controller lockup initializing some unofficial PS4
    replica controllers
  * Fixed video initialization on headless Linux systems using VNC</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1693569600">- Update to release 2.28.3
  * Added a gamepad mapping for the G-Shark GS-GP702
  * Fixed touchpad events for the Razer Wolverine V2 Pro in PS5 mode</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1696248000">- Update to release 2.28.4
  * Enable clipping for zero sized rectangles in the SDL renderer
  * Notify X11 clipboard managers when the clipboard changes
  * Fixed sensor timestamps for third-party PS5 controllers
  * Added detection for Logitech and Simagic racing wheels</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1696680000">- Enable direct PipeWire support</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1698926400">- Update to release 2.28.5
  * Added support for the HP HyperX Clutch Gladiate controller
  * Fixed a crash if a controller is disconnected while SDL is
    opening it
  * Fixed a crash on Linux if XInput2 isn't available at runtime</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1706875200">- Update to release 2.30
  * Added support for 2 bits-per-pixel indexed surface formats.
  * Added the function SDL_GameControllerGetSteamHandle() to get
    the Steam API handle for a controller, if available.
  * Added the event SDL_CONTROLLERSTEAMHANDLEUPDATED which is sent
    when the Steam API handle for a controller changes. This could
    also change the name, VID, and PID of the controller.
  * Added the environment variable SDL_LOGGING to control default
    log output.</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1709726400">- Update to release 2.30.1
  * Fixed a regression causing SDL_WaitEvent() to return spurious
    failures
  * Wayland windows automatically have OpenGL enabled again
  * Fixed memory corruption when converting signed 16-bit audio
    to float
  * Fixed audio artifacts when converting signed 8-bit audio to
    float
  * Fixed the clip rectangle not being updated when the viewport
    changes in the SDL renderer</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1712059200">- Update to release 2.30.2
  * Fixed performance regression initialing controllers on Linux
  * Added support for the 6-button SEGA Mega Drive Control Pad
    for Nintendo Online
  * Add support for MadCatz Saitek Side Panel Control Deck
  * Added support for the Hori Fighting Stick EX2
  * Added support for the Yawman Arrow flightstick
  * Added a gamepad mapping for the Defender Joystick Cobra R4
  * Fixed the gamepad mapping for the Sanwa Supply JY-P76USV
    controller
  * Allow using SDL_RWFromFile() with named pipes</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1714564800">- Update to release 2.30.3
  * Fixed a pointer warping issue on XWayland
  * Reduced startup time when scanning for game controllers on Linux</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1718712000">- Update to release 2.30.4
  * Added support for the Saitek Cyborg V.3 Rumble Pad in PS3 mode
  * Added support for the Razer Kitsune in PS5 mode
  * Added Linux bindings for the Qanba Drone 2 Arcade Joystick
  * Leave Nintendo Online controllers in simple report mode so
    they work with DirectInput games
  * Enable using libusb for GameCube controllers when available</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1723809600">- Update to release 2.30.6
  * Improved detection of Nintendo Switch Pro controller report mode
  * Fixed a rare crash when a controller is disconnected</changelog>
</package>
<package pkgid="2baceb84f2faefb9c3fb3419b180b8b6bd6d0186a5ddf95ec5a6703aa19acaa55ae20de2dab9fb5637c6a78230bdc11fc6f1f0a2457028c55d876aa0cec07a27" name="SDL2-devel" arch="x86_64">
  <version epoch="0" ver="2.30.6" rel="2.0.4.1.sr20240803"/>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1669896000">- Update to release 2.26.1
  * Improved audio resampling quality
  * Fixed crash if SDL_GetPointDisplayIndex() or
    SDL_GetRectDisplayIndex() are called before SDL_VideoInit()</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1672747200">- Update to release 2.26.2
  * Fixed long delay at startup when a Razer keyboard is
    connected
  * Fixed not receiving SDLK_5 or SDL_SCANCODE_5 when using the
    AZERTY keyboard layout on Linux
- Enable libsamplerate and libdecor components
- Remove unused tslib build requirement</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1675771200">- Update to release 2.26.3
  * Fixed infinite loop shutting down WGI controllers
  * Fixed centering the D-pad on some Xbox controllers</changelog>
  <changelog author="Michal Suchanek &lt;msuchanek@suse.com&gt;" date="1677844800">- Use current keymap on console
  (https://github.com/libsdl-org/SDL/pull/7400 )
  + 0001-Cleanup-add-brace-6545.patch
  + 0002-Update-for-SDL3-coding-style-6717.patch
  + 0003-Clang-Tidy-fixes-6725.patch
  + 0004-evdev_kbd-Use-current-keymap.patch</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1678190400">- Update to release 2.26.4
  * Fixed using older game controller mappings on Linux</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1681214400">- Update to release 2.26.5
  * Fixed handling of third party PS4 controller input reports
  * Added support for the trigger buttons on the Victrix Pro FS
    for PS5
  * Added mapping for Flydigi Vader 2 with the latest firmware
    (6.0.4.9)
  * Added mapping for DualSense Edge Wireless Controller on Linux
  * Added mapping for Hori Pokken Tournament DX Pro Pad
  * Improved the speed and quality of audio resampling
  * Fixed crash on Linux if dbus can't be initialized</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1687348800">- Update to release 2.28
  * Added SDL_HasWindowSurface() and SDL_DestroyWindowSurface() to
    switch between the window surface and rendering APIs.
  * Added a display event SDL_DISPLAYEVENT_MOVED which is sent
    when the primary monitor changes or displays change position
    relative to each other.
  * Added the hint SDL_HINT_ENABLE_SCREEN_KEYBOARD to control
    whether the on-screen keyboard should be shown when text input
    is active.
- Delete 0001-Cleanup-add-brace-6545.patch,
  0002-Update-for-SDL3-coding-style-6717.patch,
  0003-Clang-Tidy-fixes-6725.patch (inapplicable),
  0004-evdev_kbd-Use-current-keymap.patch (merged).</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1688212800">- Update to release 2.28.1
  * Added support for the Nintendo Online Famicom controllers
  * Improved support for third-party Nintendo Switch controllers
  * Fixed setting the player LED on Nintendo Switch controllers
  * Added Linux controller mapping for the Logitech Chillstream</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1690977600">- Update to release 2.28.2
  * Fixed 8BitDo gamepad mapping when in XInput mode on Linux
  * Fixed controller lockup initializing some unofficial PS4
    replica controllers
  * Fixed video initialization on headless Linux systems using VNC</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1693569600">- Update to release 2.28.3
  * Added a gamepad mapping for the G-Shark GS-GP702
  * Fixed touchpad events for the Razer Wolverine V2 Pro in PS5 mode</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1696248000">- Update to release 2.28.4
  * Enable clipping for zero sized rectangles in the SDL renderer
  * Notify X11 clipboard managers when the clipboard changes
  * Fixed sensor timestamps for third-party PS5 controllers
  * Added detection for Logitech and Simagic racing wheels</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1696680000">- Enable direct PipeWire support</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1698926400">- Update to release 2.28.5
  * Added support for the HP HyperX Clutch Gladiate controller
  * Fixed a crash if a controller is disconnected while SDL is
    opening it
  * Fixed a crash on Linux if XInput2 isn't available at runtime</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1706875200">- Update to release 2.30
  * Added support for 2 bits-per-pixel indexed surface formats.
  * Added the function SDL_GameControllerGetSteamHandle() to get
    the Steam API handle for a controller, if available.
  * Added the event SDL_CONTROLLERSTEAMHANDLEUPDATED which is sent
    when the Steam API handle for a controller changes. This could
    also change the name, VID, and PID of the controller.
  * Added the environment variable SDL_LOGGING to control default
    log output.</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1709726400">- Update to release 2.30.1
  * Fixed a regression causing SDL_WaitEvent() to return spurious
    failures
  * Wayland windows automatically have OpenGL enabled again
  * Fixed memory corruption when converting signed 16-bit audio
    to float
  * Fixed audio artifacts when converting signed 8-bit audio to
    float
  * Fixed the clip rectangle not being updated when the viewport
    changes in the SDL renderer</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1712059200">- Update to release 2.30.2
  * Fixed performance regression initialing controllers on Linux
  * Added support for the 6-button SEGA Mega Drive Control Pad
    for Nintendo Online
  * Add support for MadCatz Saitek Side Panel Control Deck
  * Added support for the Hori Fighting Stick EX2
  * Added support for the Yawman Arrow flightstick
  * Added a gamepad mapping for the Defender Joystick Cobra R4
  * Fixed the gamepad mapping for the Sanwa Supply JY-P76USV
    controller
  * Allow using SDL_RWFromFile() with named pipes</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1714564800">- Update to release 2.30.3
  * Fixed a pointer warping issue on XWayland
  * Reduced startup time when scanning for game controllers on Linux</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1718712000">- Update to release 2.30.4
  * Added support for the Saitek Cyborg V.3 Rumble Pad in PS3 mode
  * Added support for the Razer Kitsune in PS5 mode
  * Added Linux bindings for the Qanba Drone 2 Arcade Joystick
  * Leave Nintendo Online controllers in simple report mode so
    they work with DirectInput games
  * Enable using libusb for GameCube controllers when available</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1723809600">- Update to release 2.30.6
  * Improved detection of Nintendo Switch Pro controller report mode
  * Fixed a rare crash when a controller is disconnected</changelog>
  <changelog author="Antonio Larrosa &lt;alarrosa@suse.com&gt;" date="1724932800">- Don't build with fcitx support. fcitx support was just added
  because of a bug (boo#1025413) that could be fixed by building
  with fcitx support but upstream SDL2 developers fixed it
  in 2.0.5 when building without fcitx support too. Also fcitx
  support has always been disabled in SLE/Leap and in Factory
  it's built against fcitx 4.2.9.9, not the newer fcitx5 so
  let's disable it in order to reduce dependencies.</changelog>
</package>
<package pkgid="9f28747b31de14caa7afe12e8e7a4dd010c09bdf745acb6ae4f701ca3e27351bc13e86246752d995e3abadf8de4e13029bbcb9371befc720df2165ec258b217e" name="SDL2-devel" arch="i586">
  <version epoch="0" ver="2.30.7" rel="1.1"/>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1672747200">- Update to release 2.26.2
  * Fixed long delay at startup when a Razer keyboard is
    connected
  * Fixed not receiving SDLK_5 or SDL_SCANCODE_5 when using the
    AZERTY keyboard layout on Linux
- Enable libsamplerate and libdecor components
- Remove unused tslib build requirement</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1675771200">- Update to release 2.26.3
  * Fixed infinite loop shutting down WGI controllers
  * Fixed centering the D-pad on some Xbox controllers</changelog>
  <changelog author="Michal Suchanek &lt;msuchanek@suse.com&gt;" date="1677844800">- Use current keymap on console
  (https://github.com/libsdl-org/SDL/pull/7400 )
  + 0001-Cleanup-add-brace-6545.patch
  + 0002-Update-for-SDL3-coding-style-6717.patch
  + 0003-Clang-Tidy-fixes-6725.patch
  + 0004-evdev_kbd-Use-current-keymap.patch</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1678190400">- Update to release 2.26.4
  * Fixed using older game controller mappings on Linux</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1681214400">- Update to release 2.26.5
  * Fixed handling of third party PS4 controller input reports
  * Added support for the trigger buttons on the Victrix Pro FS
    for PS5
  * Added mapping for Flydigi Vader 2 with the latest firmware
    (6.0.4.9)
  * Added mapping for DualSense Edge Wireless Controller on Linux
  * Added mapping for Hori Pokken Tournament DX Pro Pad
  * Improved the speed and quality of audio resampling
  * Fixed crash on Linux if dbus can't be initialized</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1687348800">- Update to release 2.28
  * Added SDL_HasWindowSurface() and SDL_DestroyWindowSurface() to
    switch between the window surface and rendering APIs.
  * Added a display event SDL_DISPLAYEVENT_MOVED which is sent
    when the primary monitor changes or displays change position
    relative to each other.
  * Added the hint SDL_HINT_ENABLE_SCREEN_KEYBOARD to control
    whether the on-screen keyboard should be shown when text input
    is active.
- Delete 0001-Cleanup-add-brace-6545.patch,
  0002-Update-for-SDL3-coding-style-6717.patch,
  0003-Clang-Tidy-fixes-6725.patch (inapplicable),
  0004-evdev_kbd-Use-current-keymap.patch (merged).</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1688212800">- Update to release 2.28.1
  * Added support for the Nintendo Online Famicom controllers
  * Improved support for third-party Nintendo Switch controllers
  * Fixed setting the player LED on Nintendo Switch controllers
  * Added Linux controller mapping for the Logitech Chillstream</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1690977600">- Update to release 2.28.2
  * Fixed 8BitDo gamepad mapping when in XInput mode on Linux
  * Fixed controller lockup initializing some unofficial PS4
    replica controllers
  * Fixed video initialization on headless Linux systems using VNC</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1693569600">- Update to release 2.28.3
  * Added a gamepad mapping for the G-Shark GS-GP702
  * Fixed touchpad events for the Razer Wolverine V2 Pro in PS5 mode</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1696248000">- Update to release 2.28.4
  * Enable clipping for zero sized rectangles in the SDL renderer
  * Notify X11 clipboard managers when the clipboard changes
  * Fixed sensor timestamps for third-party PS5 controllers
  * Added detection for Logitech and Simagic racing wheels</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1696680000">- Enable direct PipeWire support</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1698926400">- Update to release 2.28.5
  * Added support for the HP HyperX Clutch Gladiate controller
  * Fixed a crash if a controller is disconnected while SDL is
    opening it
  * Fixed a crash on Linux if XInput2 isn't available at runtime</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1706875200">- Update to release 2.30
  * Added support for 2 bits-per-pixel indexed surface formats.
  * Added the function SDL_GameControllerGetSteamHandle() to get
    the Steam API handle for a controller, if available.
  * Added the event SDL_CONTROLLERSTEAMHANDLEUPDATED which is sent
    when the Steam API handle for a controller changes. This could
    also change the name, VID, and PID of the controller.
  * Added the environment variable SDL_LOGGING to control default
    log output.</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1709726400">- Update to release 2.30.1
  * Fixed a regression causing SDL_WaitEvent() to return spurious
    failures
  * Wayland windows automatically have OpenGL enabled again
  * Fixed memory corruption when converting signed 16-bit audio
    to float
  * Fixed audio artifacts when converting signed 8-bit audio to
    float
  * Fixed the clip rectangle not being updated when the viewport
    changes in the SDL renderer</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1712059200">- Update to release 2.30.2
  * Fixed performance regression initialing controllers on Linux
  * Added support for the 6-button SEGA Mega Drive Control Pad
    for Nintendo Online
  * Add support for MadCatz Saitek Side Panel Control Deck
  * Added support for the Hori Fighting Stick EX2
  * Added support for the Yawman Arrow flightstick
  * Added a gamepad mapping for the Defender Joystick Cobra R4
  * Fixed the gamepad mapping for the Sanwa Supply JY-P76USV
    controller
  * Allow using SDL_RWFromFile() with named pipes</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1714564800">- Update to release 2.30.3
  * Fixed a pointer warping issue on XWayland
  * Reduced startup time when scanning for game controllers on Linux</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1718712000">- Update to release 2.30.4
  * Added support for the Saitek Cyborg V.3 Rumble Pad in PS3 mode
  * Added support for the Razer Kitsune in PS5 mode
  * Added Linux bindings for the Qanba Drone 2 Arcade Joystick
  * Leave Nintendo Online controllers in simple report mode so
    they work with DirectInput games
  * Enable using libusb for GameCube controllers when available</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1723809600">- Update to release 2.30.6
  * Improved detection of Nintendo Switch Pro controller report mode
  * Fixed a rare crash when a controller is disconnected</changelog>
  <changelog author="Antonio Larrosa &lt;alarrosa@suse.com&gt;" date="1724932800">- Don't build with fcitx support. fcitx support was just added
  because of a bug (boo#1025413) that could be fixed by building
  with fcitx support but upstream SDL2 developers fixed it
  in 2.0.5 when building without fcitx support too. Also fcitx
  support has always been disabled in SLE/Leap and in Factory
  it's built against fcitx 4.2.9.9, not the newer fcitx5 so
  let's disable it in order to reduce dependencies.</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1725364800">- Update to release 2.30.7
  * Added support for the Retro-bit Controller in PS3 mode
  * Fixed the cursor becoming visible when using relative mode
    under XWayland
  * Fixed Direct Rendering Manager initialization failure on some
    Linux systems
  * Fixed a crash when the current mouse capture window is
    destroyed</changelog>
</package>
<package pkgid="45b660bb18dbec48ef7ff986a6f732cbf35898be4e12ea233720be43e4053ad1b497b9b89407c5c6338417443198ad2a04151fa48c166476166ce9006c7b650b" name="SDL2-devel" arch="x86_64">
  <version epoch="0" ver="2.30.7" rel="1.1"/>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1672747200">- Update to release 2.26.2
  * Fixed long delay at startup when a Razer keyboard is
    connected
  * Fixed not receiving SDLK_5 or SDL_SCANCODE_5 when using the
    AZERTY keyboard layout on Linux
- Enable libsamplerate and libdecor components
- Remove unused tslib build requirement</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1675771200">- Update to release 2.26.3
  * Fixed infinite loop shutting down WGI controllers
  * Fixed centering the D-pad on some Xbox controllers</changelog>
  <changelog author="Michal Suchanek &lt;msuchanek@suse.com&gt;" date="1677844800">- Use current keymap on console
  (https://github.com/libsdl-org/SDL/pull/7400 )
  + 0001-Cleanup-add-brace-6545.patch
  + 0002-Update-for-SDL3-coding-style-6717.patch
  + 0003-Clang-Tidy-fixes-6725.patch
  + 0004-evdev_kbd-Use-current-keymap.patch</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1678190400">- Update to release 2.26.4
  * Fixed using older game controller mappings on Linux</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1681214400">- Update to release 2.26.5
  * Fixed handling of third party PS4 controller input reports
  * Added support for the trigger buttons on the Victrix Pro FS
    for PS5
  * Added mapping for Flydigi Vader 2 with the latest firmware
    (6.0.4.9)
  * Added mapping for DualSense Edge Wireless Controller on Linux
  * Added mapping for Hori Pokken Tournament DX Pro Pad
  * Improved the speed and quality of audio resampling
  * Fixed crash on Linux if dbus can't be initialized</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1687348800">- Update to release 2.28
  * Added SDL_HasWindowSurface() and SDL_DestroyWindowSurface() to
    switch between the window surface and rendering APIs.
  * Added a display event SDL_DISPLAYEVENT_MOVED which is sent
    when the primary monitor changes or displays change position
    relative to each other.
  * Added the hint SDL_HINT_ENABLE_SCREEN_KEYBOARD to control
    whether the on-screen keyboard should be shown when text input
    is active.
- Delete 0001-Cleanup-add-brace-6545.patch,
  0002-Update-for-SDL3-coding-style-6717.patch,
  0003-Clang-Tidy-fixes-6725.patch (inapplicable),
  0004-evdev_kbd-Use-current-keymap.patch (merged).</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1688212800">- Update to release 2.28.1
  * Added support for the Nintendo Online Famicom controllers
  * Improved support for third-party Nintendo Switch controllers
  * Fixed setting the player LED on Nintendo Switch controllers
  * Added Linux controller mapping for the Logitech Chillstream</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1690977600">- Update to release 2.28.2
  * Fixed 8BitDo gamepad mapping when in XInput mode on Linux
  * Fixed controller lockup initializing some unofficial PS4
    replica controllers
  * Fixed video initialization on headless Linux systems using VNC</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1693569600">- Update to release 2.28.3
  * Added a gamepad mapping for the G-Shark GS-GP702
  * Fixed touchpad events for the Razer Wolverine V2 Pro in PS5 mode</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1696248000">- Update to release 2.28.4
  * Enable clipping for zero sized rectangles in the SDL renderer
  * Notify X11 clipboard managers when the clipboard changes
  * Fixed sensor timestamps for third-party PS5 controllers
  * Added detection for Logitech and Simagic racing wheels</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1696680000">- Enable direct PipeWire support</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1698926400">- Update to release 2.28.5
  * Added support for the HP HyperX Clutch Gladiate controller
  * Fixed a crash if a controller is disconnected while SDL is
    opening it
  * Fixed a crash on Linux if XInput2 isn't available at runtime</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1706875200">- Update to release 2.30
  * Added support for 2 bits-per-pixel indexed surface formats.
  * Added the function SDL_GameControllerGetSteamHandle() to get
    the Steam API handle for a controller, if available.
  * Added the event SDL_CONTROLLERSTEAMHANDLEUPDATED which is sent
    when the Steam API handle for a controller changes. This could
    also change the name, VID, and PID of the controller.
  * Added the environment variable SDL_LOGGING to control default
    log output.</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1709726400">- Update to release 2.30.1
  * Fixed a regression causing SDL_WaitEvent() to return spurious
    failures
  * Wayland windows automatically have OpenGL enabled again
  * Fixed memory corruption when converting signed 16-bit audio
    to float
  * Fixed audio artifacts when converting signed 8-bit audio to
    float
  * Fixed the clip rectangle not being updated when the viewport
    changes in the SDL renderer</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1712059200">- Update to release 2.30.2
  * Fixed performance regression initialing controllers on Linux
  * Added support for the 6-button SEGA Mega Drive Control Pad
    for Nintendo Online
  * Add support for MadCatz Saitek Side Panel Control Deck
  * Added support for the Hori Fighting Stick EX2
  * Added support for the Yawman Arrow flightstick
  * Added a gamepad mapping for the Defender Joystick Cobra R4
  * Fixed the gamepad mapping for the Sanwa Supply JY-P76USV
    controller
  * Allow using SDL_RWFromFile() with named pipes</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1714564800">- Update to release 2.30.3
  * Fixed a pointer warping issue on XWayland
  * Reduced startup time when scanning for game controllers on Linux</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1718712000">- Update to release 2.30.4
  * Added support for the Saitek Cyborg V.3 Rumble Pad in PS3 mode
  * Added support for the Razer Kitsune in PS5 mode
  * Added Linux bindings for the Qanba Drone 2 Arcade Joystick
  * Leave Nintendo Online controllers in simple report mode so
    they work with DirectInput games
  * Enable using libusb for GameCube controllers when available</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1723809600">- Update to release 2.30.6
  * Improved detection of Nintendo Switch Pro controller report mode
  * Fixed a rare crash when a controller is disconnected</changelog>
  <changelog author="Antonio Larrosa &lt;alarrosa@suse.com&gt;" date="1724932800">- Don't build with fcitx support. fcitx support was just added
  because of a bug (boo#1025413) that could be fixed by building
  with fcitx support but upstream SDL2 developers fixed it
  in 2.0.5 when building without fcitx support too. Also fcitx
  support has always been disabled in SLE/Leap and in Factory
  it's built against fcitx 4.2.9.9, not the newer fcitx5 so
  let's disable it in order to reduce dependencies.</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1725364800">- Update to release 2.30.7
  * Added support for the Retro-bit Controller in PS3 mode
  * Fixed the cursor becoming visible when using relative mode
    under XWayland
  * Fixed Direct Rendering Manager initialization failure on some
    Linux systems
  * Fixed a crash when the current mouse capture window is
    destroyed</changelog>
</package>
<package pkgid="a36a3d05dce799881aa46a5d7891f61cd740810156c199ccc4abdab9f07dbf1d0ac843309263d0f52936189123de413c48c72c9b465f57708c21be2eae91a642" name="SDL2-devel" arch="i586">
  <version epoch="0" ver="2.30.8" rel="1.1"/>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1675771200">- Update to release 2.26.3
  * Fixed infinite loop shutting down WGI controllers
  * Fixed centering the D-pad on some Xbox controllers</changelog>
  <changelog author="Michal Suchanek &lt;msuchanek@suse.com&gt;" date="1677844800">- Use current keymap on console
  (https://github.com/libsdl-org/SDL/pull/7400 )
  + 0001-Cleanup-add-brace-6545.patch
  + 0002-Update-for-SDL3-coding-style-6717.patch
  + 0003-Clang-Tidy-fixes-6725.patch
  + 0004-evdev_kbd-Use-current-keymap.patch</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1678190400">- Update to release 2.26.4
  * Fixed using older game controller mappings on Linux</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1681214400">- Update to release 2.26.5
  * Fixed handling of third party PS4 controller input reports
  * Added support for the trigger buttons on the Victrix Pro FS
    for PS5
  * Added mapping for Flydigi Vader 2 with the latest firmware
    (6.0.4.9)
  * Added mapping for DualSense Edge Wireless Controller on Linux
  * Added mapping for Hori Pokken Tournament DX Pro Pad
  * Improved the speed and quality of audio resampling
  * Fixed crash on Linux if dbus can't be initialized</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1687348800">- Update to release 2.28
  * Added SDL_HasWindowSurface() and SDL_DestroyWindowSurface() to
    switch between the window surface and rendering APIs.
  * Added a display event SDL_DISPLAYEVENT_MOVED which is sent
    when the primary monitor changes or displays change position
    relative to each other.
  * Added the hint SDL_HINT_ENABLE_SCREEN_KEYBOARD to control
    whether the on-screen keyboard should be shown when text input
    is active.
- Delete 0001-Cleanup-add-brace-6545.patch,
  0002-Update-for-SDL3-coding-style-6717.patch,
  0003-Clang-Tidy-fixes-6725.patch (inapplicable),
  0004-evdev_kbd-Use-current-keymap.patch (merged).</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1688212800">- Update to release 2.28.1
  * Added support for the Nintendo Online Famicom controllers
  * Improved support for third-party Nintendo Switch controllers
  * Fixed setting the player LED on Nintendo Switch controllers
  * Added Linux controller mapping for the Logitech Chillstream</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1690977600">- Update to release 2.28.2
  * Fixed 8BitDo gamepad mapping when in XInput mode on Linux
  * Fixed controller lockup initializing some unofficial PS4
    replica controllers
  * Fixed video initialization on headless Linux systems using VNC</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1693569600">- Update to release 2.28.3
  * Added a gamepad mapping for the G-Shark GS-GP702
  * Fixed touchpad events for the Razer Wolverine V2 Pro in PS5 mode</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1696248000">- Update to release 2.28.4
  * Enable clipping for zero sized rectangles in the SDL renderer
  * Notify X11 clipboard managers when the clipboard changes
  * Fixed sensor timestamps for third-party PS5 controllers
  * Added detection for Logitech and Simagic racing wheels</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1696680000">- Enable direct PipeWire support</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1698926400">- Update to release 2.28.5
  * Added support for the HP HyperX Clutch Gladiate controller
  * Fixed a crash if a controller is disconnected while SDL is
    opening it
  * Fixed a crash on Linux if XInput2 isn't available at runtime</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1706875200">- Update to release 2.30
  * Added support for 2 bits-per-pixel indexed surface formats.
  * Added the function SDL_GameControllerGetSteamHandle() to get
    the Steam API handle for a controller, if available.
  * Added the event SDL_CONTROLLERSTEAMHANDLEUPDATED which is sent
    when the Steam API handle for a controller changes. This could
    also change the name, VID, and PID of the controller.
  * Added the environment variable SDL_LOGGING to control default
    log output.</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1709726400">- Update to release 2.30.1
  * Fixed a regression causing SDL_WaitEvent() to return spurious
    failures
  * Wayland windows automatically have OpenGL enabled again
  * Fixed memory corruption when converting signed 16-bit audio
    to float
  * Fixed audio artifacts when converting signed 8-bit audio to
    float
  * Fixed the clip rectangle not being updated when the viewport
    changes in the SDL renderer</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1712059200">- Update to release 2.30.2
  * Fixed performance regression initialing controllers on Linux
  * Added support for the 6-button SEGA Mega Drive Control Pad
    for Nintendo Online
  * Add support for MadCatz Saitek Side Panel Control Deck
  * Added support for the Hori Fighting Stick EX2
  * Added support for the Yawman Arrow flightstick
  * Added a gamepad mapping for the Defender Joystick Cobra R4
  * Fixed the gamepad mapping for the Sanwa Supply JY-P76USV
    controller
  * Allow using SDL_RWFromFile() with named pipes</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1714564800">- Update to release 2.30.3
  * Fixed a pointer warping issue on XWayland
  * Reduced startup time when scanning for game controllers on Linux</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1718712000">- Update to release 2.30.4
  * Added support for the Saitek Cyborg V.3 Rumble Pad in PS3 mode
  * Added support for the Razer Kitsune in PS5 mode
  * Added Linux bindings for the Qanba Drone 2 Arcade Joystick
  * Leave Nintendo Online controllers in simple report mode so
    they work with DirectInput games
  * Enable using libusb for GameCube controllers when available</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1723809600">- Update to release 2.30.6
  * Improved detection of Nintendo Switch Pro controller report mode
  * Fixed a rare crash when a controller is disconnected</changelog>
  <changelog author="Antonio Larrosa &lt;alarrosa@suse.com&gt;" date="1724932800">- Don't build with fcitx support. fcitx support was just added
  because of a bug (boo#1025413) that could be fixed by building
  with fcitx support but upstream SDL2 developers fixed it
  in 2.0.5 when building without fcitx support too. Also fcitx
  support has always been disabled in SLE/Leap and in Factory
  it's built against fcitx 4.2.9.9, not the newer fcitx5 so
  let's disable it in order to reduce dependencies.</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1725364800">- Update to release 2.30.7
  * Added support for the Retro-bit Controller in PS3 mode
  * Fixed the cursor becoming visible when using relative mode
    under XWayland
  * Fixed Direct Rendering Manager initialization failure on some
    Linux systems
  * Fixed a crash when the current mouse capture window is
    destroyed</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1727784000">- Update to release 2.30.8
  * Fixed a crash in XInput code at startup
  * Fixed flooding the OS with I/O when a PS4/PS5 controller is
    disconnected
  * Added SDL_VIDEO_DOUBLE_BUFFER support to the Wayland backend
  * SDL_WINDOWEVENT_EXPOSED is sent appropriately when using
    Wayland
  * Fixed hang at startup in audio code when the application has
    large stack usage on Linux
  * Fixed initializing KMSDRM on older Linux systems</changelog>
</package>
<package pkgid="c0b97d0b0f074c2f6ec88f2fa3201f05c04119e88cfb61fa5cd73957bbbf97bd21dd8069109f8c2bbbf04a175e0151c321d152fb59704b5c3160d5b36226cc45" name="SDL2-devel" arch="x86_64">
  <version epoch="0" ver="2.30.8" rel="1.1"/>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1675771200">- Update to release 2.26.3
  * Fixed infinite loop shutting down WGI controllers
  * Fixed centering the D-pad on some Xbox controllers</changelog>
  <changelog author="Michal Suchanek &lt;msuchanek@suse.com&gt;" date="1677844800">- Use current keymap on console
  (https://github.com/libsdl-org/SDL/pull/7400 )
  + 0001-Cleanup-add-brace-6545.patch
  + 0002-Update-for-SDL3-coding-style-6717.patch
  + 0003-Clang-Tidy-fixes-6725.patch
  + 0004-evdev_kbd-Use-current-keymap.patch</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1678190400">- Update to release 2.26.4
  * Fixed using older game controller mappings on Linux</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1681214400">- Update to release 2.26.5
  * Fixed handling of third party PS4 controller input reports
  * Added support for the trigger buttons on the Victrix Pro FS
    for PS5
  * Added mapping for Flydigi Vader 2 with the latest firmware
    (6.0.4.9)
  * Added mapping for DualSense Edge Wireless Controller on Linux
  * Added mapping for Hori Pokken Tournament DX Pro Pad
  * Improved the speed and quality of audio resampling
  * Fixed crash on Linux if dbus can't be initialized</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1687348800">- Update to release 2.28
  * Added SDL_HasWindowSurface() and SDL_DestroyWindowSurface() to
    switch between the window surface and rendering APIs.
  * Added a display event SDL_DISPLAYEVENT_MOVED which is sent
    when the primary monitor changes or displays change position
    relative to each other.
  * Added the hint SDL_HINT_ENABLE_SCREEN_KEYBOARD to control
    whether the on-screen keyboard should be shown when text input
    is active.
- Delete 0001-Cleanup-add-brace-6545.patch,
  0002-Update-for-SDL3-coding-style-6717.patch,
  0003-Clang-Tidy-fixes-6725.patch (inapplicable),
  0004-evdev_kbd-Use-current-keymap.patch (merged).</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1688212800">- Update to release 2.28.1
  * Added support for the Nintendo Online Famicom controllers
  * Improved support for third-party Nintendo Switch controllers
  * Fixed setting the player LED on Nintendo Switch controllers
  * Added Linux controller mapping for the Logitech Chillstream</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1690977600">- Update to release 2.28.2
  * Fixed 8BitDo gamepad mapping when in XInput mode on Linux
  * Fixed controller lockup initializing some unofficial PS4
    replica controllers
  * Fixed video initialization on headless Linux systems using VNC</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1693569600">- Update to release 2.28.3
  * Added a gamepad mapping for the G-Shark GS-GP702
  * Fixed touchpad events for the Razer Wolverine V2 Pro in PS5 mode</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1696248000">- Update to release 2.28.4
  * Enable clipping for zero sized rectangles in the SDL renderer
  * Notify X11 clipboard managers when the clipboard changes
  * Fixed sensor timestamps for third-party PS5 controllers
  * Added detection for Logitech and Simagic racing wheels</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1696680000">- Enable direct PipeWire support</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1698926400">- Update to release 2.28.5
  * Added support for the HP HyperX Clutch Gladiate controller
  * Fixed a crash if a controller is disconnected while SDL is
    opening it
  * Fixed a crash on Linux if XInput2 isn't available at runtime</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1706875200">- Update to release 2.30
  * Added support for 2 bits-per-pixel indexed surface formats.
  * Added the function SDL_GameControllerGetSteamHandle() to get
    the Steam API handle for a controller, if available.
  * Added the event SDL_CONTROLLERSTEAMHANDLEUPDATED which is sent
    when the Steam API handle for a controller changes. This could
    also change the name, VID, and PID of the controller.
  * Added the environment variable SDL_LOGGING to control default
    log output.</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1709726400">- Update to release 2.30.1
  * Fixed a regression causing SDL_WaitEvent() to return spurious
    failures
  * Wayland windows automatically have OpenGL enabled again
  * Fixed memory corruption when converting signed 16-bit audio
    to float
  * Fixed audio artifacts when converting signed 8-bit audio to
    float
  * Fixed the clip rectangle not being updated when the viewport
    changes in the SDL renderer</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1712059200">- Update to release 2.30.2
  * Fixed performance regression initialing controllers on Linux
  * Added support for the 6-button SEGA Mega Drive Control Pad
    for Nintendo Online
  * Add support for MadCatz Saitek Side Panel Control Deck
  * Added support for the Hori Fighting Stick EX2
  * Added support for the Yawman Arrow flightstick
  * Added a gamepad mapping for the Defender Joystick Cobra R4
  * Fixed the gamepad mapping for the Sanwa Supply JY-P76USV
    controller
  * Allow using SDL_RWFromFile() with named pipes</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1714564800">- Update to release 2.30.3
  * Fixed a pointer warping issue on XWayland
  * Reduced startup time when scanning for game controllers on Linux</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1718712000">- Update to release 2.30.4
  * Added support for the Saitek Cyborg V.3 Rumble Pad in PS3 mode
  * Added support for the Razer Kitsune in PS5 mode
  * Added Linux bindings for the Qanba Drone 2 Arcade Joystick
  * Leave Nintendo Online controllers in simple report mode so
    they work with DirectInput games
  * Enable using libusb for GameCube controllers when available</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1723809600">- Update to release 2.30.6
  * Improved detection of Nintendo Switch Pro controller report mode
  * Fixed a rare crash when a controller is disconnected</changelog>
  <changelog author="Antonio Larrosa &lt;alarrosa@suse.com&gt;" date="1724932800">- Don't build with fcitx support. fcitx support was just added
  because of a bug (boo#1025413) that could be fixed by building
  with fcitx support but upstream SDL2 developers fixed it
  in 2.0.5 when building without fcitx support too. Also fcitx
  support has always been disabled in SLE/Leap and in Factory
  it's built against fcitx 4.2.9.9, not the newer fcitx5 so
  let's disable it in order to reduce dependencies.</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1725364800">- Update to release 2.30.7
  * Added support for the Retro-bit Controller in PS3 mode
  * Fixed the cursor becoming visible when using relative mode
    under XWayland
  * Fixed Direct Rendering Manager initialization failure on some
    Linux systems
  * Fixed a crash when the current mouse capture window is
    destroyed</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1727784000">- Update to release 2.30.8
  * Fixed a crash in XInput code at startup
  * Fixed flooding the OS with I/O when a PS4/PS5 controller is
    disconnected
  * Added SDL_VIDEO_DOUBLE_BUFFER support to the Wayland backend
  * SDL_WINDOWEVENT_EXPOSED is sent appropriately when using
    Wayland
  * Fixed hang at startup in audio code when the application has
    large stack usage on Linux
  * Fixed initializing KMSDRM on older Linux systems</changelog>
</package>
<package pkgid="ebda4d56f2549b3673a41dd58a993fca857e42ee53ad1c91befa769adf5d468f5092f9d57dcf43c5cd332a26ec110f3fc06f7142273bc8b58a16021c09d992ef" name="SDL2-devel" arch="i586">
  <version epoch="0" ver="2.30.9" rel="1.1"/>
  <changelog author="Michal Suchanek &lt;msuchanek@suse.com&gt;" date="1677844800">- Use current keymap on console
  (https://github.com/libsdl-org/SDL/pull/7400 )
  + 0001-Cleanup-add-brace-6545.patch
  + 0002-Update-for-SDL3-coding-style-6717.patch
  + 0003-Clang-Tidy-fixes-6725.patch
  + 0004-evdev_kbd-Use-current-keymap.patch</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1678190400">- Update to release 2.26.4
  * Fixed using older game controller mappings on Linux</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1681214400">- Update to release 2.26.5
  * Fixed handling of third party PS4 controller input reports
  * Added support for the trigger buttons on the Victrix Pro FS
    for PS5
  * Added mapping for Flydigi Vader 2 with the latest firmware
    (6.0.4.9)
  * Added mapping for DualSense Edge Wireless Controller on Linux
  * Added mapping for Hori Pokken Tournament DX Pro Pad
  * Improved the speed and quality of audio resampling
  * Fixed crash on Linux if dbus can't be initialized</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1687348800">- Update to release 2.28
  * Added SDL_HasWindowSurface() and SDL_DestroyWindowSurface() to
    switch between the window surface and rendering APIs.
  * Added a display event SDL_DISPLAYEVENT_MOVED which is sent
    when the primary monitor changes or displays change position
    relative to each other.
  * Added the hint SDL_HINT_ENABLE_SCREEN_KEYBOARD to control
    whether the on-screen keyboard should be shown when text input
    is active.
- Delete 0001-Cleanup-add-brace-6545.patch,
  0002-Update-for-SDL3-coding-style-6717.patch,
  0003-Clang-Tidy-fixes-6725.patch (inapplicable),
  0004-evdev_kbd-Use-current-keymap.patch (merged).</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1688212800">- Update to release 2.28.1
  * Added support for the Nintendo Online Famicom controllers
  * Improved support for third-party Nintendo Switch controllers
  * Fixed setting the player LED on Nintendo Switch controllers
  * Added Linux controller mapping for the Logitech Chillstream</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1690977600">- Update to release 2.28.2
  * Fixed 8BitDo gamepad mapping when in XInput mode on Linux
  * Fixed controller lockup initializing some unofficial PS4
    replica controllers
  * Fixed video initialization on headless Linux systems using VNC</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1693569600">- Update to release 2.28.3
  * Added a gamepad mapping for the G-Shark GS-GP702
  * Fixed touchpad events for the Razer Wolverine V2 Pro in PS5 mode</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1696248000">- Update to release 2.28.4
  * Enable clipping for zero sized rectangles in the SDL renderer
  * Notify X11 clipboard managers when the clipboard changes
  * Fixed sensor timestamps for third-party PS5 controllers
  * Added detection for Logitech and Simagic racing wheels</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1696680000">- Enable direct PipeWire support</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1698926400">- Update to release 2.28.5
  * Added support for the HP HyperX Clutch Gladiate controller
  * Fixed a crash if a controller is disconnected while SDL is
    opening it
  * Fixed a crash on Linux if XInput2 isn't available at runtime</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1706875200">- Update to release 2.30
  * Added support for 2 bits-per-pixel indexed surface formats.
  * Added the function SDL_GameControllerGetSteamHandle() to get
    the Steam API handle for a controller, if available.
  * Added the event SDL_CONTROLLERSTEAMHANDLEUPDATED which is sent
    when the Steam API handle for a controller changes. This could
    also change the name, VID, and PID of the controller.
  * Added the environment variable SDL_LOGGING to control default
    log output.</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1709726400">- Update to release 2.30.1
  * Fixed a regression causing SDL_WaitEvent() to return spurious
    failures
  * Wayland windows automatically have OpenGL enabled again
  * Fixed memory corruption when converting signed 16-bit audio
    to float
  * Fixed audio artifacts when converting signed 8-bit audio to
    float
  * Fixed the clip rectangle not being updated when the viewport
    changes in the SDL renderer</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1712059200">- Update to release 2.30.2
  * Fixed performance regression initialing controllers on Linux
  * Added support for the 6-button SEGA Mega Drive Control Pad
    for Nintendo Online
  * Add support for MadCatz Saitek Side Panel Control Deck
  * Added support for the Hori Fighting Stick EX2
  * Added support for the Yawman Arrow flightstick
  * Added a gamepad mapping for the Defender Joystick Cobra R4
  * Fixed the gamepad mapping for the Sanwa Supply JY-P76USV
    controller
  * Allow using SDL_RWFromFile() with named pipes</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1714564800">- Update to release 2.30.3
  * Fixed a pointer warping issue on XWayland
  * Reduced startup time when scanning for game controllers on Linux</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1718712000">- Update to release 2.30.4
  * Added support for the Saitek Cyborg V.3 Rumble Pad in PS3 mode
  * Added support for the Razer Kitsune in PS5 mode
  * Added Linux bindings for the Qanba Drone 2 Arcade Joystick
  * Leave Nintendo Online controllers in simple report mode so
    they work with DirectInput games
  * Enable using libusb for GameCube controllers when available</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1723809600">- Update to release 2.30.6
  * Improved detection of Nintendo Switch Pro controller report mode
  * Fixed a rare crash when a controller is disconnected</changelog>
  <changelog author="Antonio Larrosa &lt;alarrosa@suse.com&gt;" date="1724932800">- Don't build with fcitx support. fcitx support was just added
  because of a bug (boo#1025413) that could be fixed by building
  with fcitx support but upstream SDL2 developers fixed it
  in 2.0.5 when building without fcitx support too. Also fcitx
  support has always been disabled in SLE/Leap and in Factory
  it's built against fcitx 4.2.9.9, not the newer fcitx5 so
  let's disable it in order to reduce dependencies.</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1725364800">- Update to release 2.30.7
  * Added support for the Retro-bit Controller in PS3 mode
  * Fixed the cursor becoming visible when using relative mode
    under XWayland
  * Fixed Direct Rendering Manager initialization failure on some
    Linux systems
  * Fixed a crash when the current mouse capture window is
    destroyed</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1727784000">- Update to release 2.30.8
  * Fixed a crash in XInput code at startup
  * Fixed flooding the OS with I/O when a PS4/PS5 controller is
    disconnected
  * Added SDL_VIDEO_DOUBLE_BUFFER support to the Wayland backend
  * SDL_WINDOWEVENT_EXPOSED is sent appropriately when using
    Wayland
  * Fixed hang at startup in audio code when the application has
    large stack usage on Linux
  * Fixed initializing KMSDRM on older Linux systems</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1730548800">- Update to release 2.30.9
  * Fixed flicker when entering/exiting fullscreen or moving the
    window between scaled and non-scaled displays under Wayland.</changelog>
</package>
<package pkgid="93e72f4dee6c81d0c2c193d56e22d3bf1e8c86d111738c3082911b645da96add65bb8712ab02bf6eb89e560411ae8e7630584ddc4938f7a486e33321aa37793c" name="SDL2-devel" arch="x86_64">
  <version epoch="0" ver="2.30.9" rel="1.1"/>
  <changelog author="Michal Suchanek &lt;msuchanek@suse.com&gt;" date="1677844800">- Use current keymap on console
  (https://github.com/libsdl-org/SDL/pull/7400 )
  + 0001-Cleanup-add-brace-6545.patch
  + 0002-Update-for-SDL3-coding-style-6717.patch
  + 0003-Clang-Tidy-fixes-6725.patch
  + 0004-evdev_kbd-Use-current-keymap.patch</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1678190400">- Update to release 2.26.4
  * Fixed using older game controller mappings on Linux</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1681214400">- Update to release 2.26.5
  * Fixed handling of third party PS4 controller input reports
  * Added support for the trigger buttons on the Victrix Pro FS
    for PS5
  * Added mapping for Flydigi Vader 2 with the latest firmware
    (6.0.4.9)
  * Added mapping for DualSense Edge Wireless Controller on Linux
  * Added mapping for Hori Pokken Tournament DX Pro Pad
  * Improved the speed and quality of audio resampling
  * Fixed crash on Linux if dbus can't be initialized</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1687348800">- Update to release 2.28
  * Added SDL_HasWindowSurface() and SDL_DestroyWindowSurface() to
    switch between the window surface and rendering APIs.
  * Added a display event SDL_DISPLAYEVENT_MOVED which is sent
    when the primary monitor changes or displays change position
    relative to each other.
  * Added the hint SDL_HINT_ENABLE_SCREEN_KEYBOARD to control
    whether the on-screen keyboard should be shown when text input
    is active.
- Delete 0001-Cleanup-add-brace-6545.patch,
  0002-Update-for-SDL3-coding-style-6717.patch,
  0003-Clang-Tidy-fixes-6725.patch (inapplicable),
  0004-evdev_kbd-Use-current-keymap.patch (merged).</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1688212800">- Update to release 2.28.1
  * Added support for the Nintendo Online Famicom controllers
  * Improved support for third-party Nintendo Switch controllers
  * Fixed setting the player LED on Nintendo Switch controllers
  * Added Linux controller mapping for the Logitech Chillstream</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1690977600">- Update to release 2.28.2
  * Fixed 8BitDo gamepad mapping when in XInput mode on Linux
  * Fixed controller lockup initializing some unofficial PS4
    replica controllers
  * Fixed video initialization on headless Linux systems using VNC</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1693569600">- Update to release 2.28.3
  * Added a gamepad mapping for the G-Shark GS-GP702
  * Fixed touchpad events for the Razer Wolverine V2 Pro in PS5 mode</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1696248000">- Update to release 2.28.4
  * Enable clipping for zero sized rectangles in the SDL renderer
  * Notify X11 clipboard managers when the clipboard changes
  * Fixed sensor timestamps for third-party PS5 controllers
  * Added detection for Logitech and Simagic racing wheels</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1696680000">- Enable direct PipeWire support</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1698926400">- Update to release 2.28.5
  * Added support for the HP HyperX Clutch Gladiate controller
  * Fixed a crash if a controller is disconnected while SDL is
    opening it
  * Fixed a crash on Linux if XInput2 isn't available at runtime</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1706875200">- Update to release 2.30
  * Added support for 2 bits-per-pixel indexed surface formats.
  * Added the function SDL_GameControllerGetSteamHandle() to get
    the Steam API handle for a controller, if available.
  * Added the event SDL_CONTROLLERSTEAMHANDLEUPDATED which is sent
    when the Steam API handle for a controller changes. This could
    also change the name, VID, and PID of the controller.
  * Added the environment variable SDL_LOGGING to control default
    log output.</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1709726400">- Update to release 2.30.1
  * Fixed a regression causing SDL_WaitEvent() to return spurious
    failures
  * Wayland windows automatically have OpenGL enabled again
  * Fixed memory corruption when converting signed 16-bit audio
    to float
  * Fixed audio artifacts when converting signed 8-bit audio to
    float
  * Fixed the clip rectangle not being updated when the viewport
    changes in the SDL renderer</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1712059200">- Update to release 2.30.2
  * Fixed performance regression initialing controllers on Linux
  * Added support for the 6-button SEGA Mega Drive Control Pad
    for Nintendo Online
  * Add support for MadCatz Saitek Side Panel Control Deck
  * Added support for the Hori Fighting Stick EX2
  * Added support for the Yawman Arrow flightstick
  * Added a gamepad mapping for the Defender Joystick Cobra R4
  * Fixed the gamepad mapping for the Sanwa Supply JY-P76USV
    controller
  * Allow using SDL_RWFromFile() with named pipes</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1714564800">- Update to release 2.30.3
  * Fixed a pointer warping issue on XWayland
  * Reduced startup time when scanning for game controllers on Linux</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1718712000">- Update to release 2.30.4
  * Added support for the Saitek Cyborg V.3 Rumble Pad in PS3 mode
  * Added support for the Razer Kitsune in PS5 mode
  * Added Linux bindings for the Qanba Drone 2 Arcade Joystick
  * Leave Nintendo Online controllers in simple report mode so
    they work with DirectInput games
  * Enable using libusb for GameCube controllers when available</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1723809600">- Update to release 2.30.6
  * Improved detection of Nintendo Switch Pro controller report mode
  * Fixed a rare crash when a controller is disconnected</changelog>
  <changelog author="Antonio Larrosa &lt;alarrosa@suse.com&gt;" date="1724932800">- Don't build with fcitx support. fcitx support was just added
  because of a bug (boo#1025413) that could be fixed by building
  with fcitx support but upstream SDL2 developers fixed it
  in 2.0.5 when building without fcitx support too. Also fcitx
  support has always been disabled in SLE/Leap and in Factory
  it's built against fcitx 4.2.9.9, not the newer fcitx5 so
  let's disable it in order to reduce dependencies.</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1725364800">- Update to release 2.30.7
  * Added support for the Retro-bit Controller in PS3 mode
  * Fixed the cursor becoming visible when using relative mode
    under XWayland
  * Fixed Direct Rendering Manager initialization failure on some
    Linux systems
  * Fixed a crash when the current mouse capture window is
    destroyed</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1727784000">- Update to release 2.30.8
  * Fixed a crash in XInput code at startup
  * Fixed flooding the OS with I/O when a PS4/PS5 controller is
    disconnected
  * Added SDL_VIDEO_DOUBLE_BUFFER support to the Wayland backend
  * SDL_WINDOWEVENT_EXPOSED is sent appropriately when using
    Wayland
  * Fixed hang at startup in audio code when the application has
    large stack usage on Linux
  * Fixed initializing KMSDRM on older Linux systems</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1730548800">- Update to release 2.30.9
  * Fixed flicker when entering/exiting fullscreen or moving the
    window between scaled and non-scaled displays under Wayland.</changelog>
</package>
<package pkgid="410aa2eff0d0cbb2a41513986cdd26dc0ab1f4e32d7bb6daf3eebbe9b9f98e850ff1ac296972b970483ee14de389ba3bf15b8e442e55c96125cea84ebaec4efc" name="SDL2-devel-32bit" arch="x86_64">
  <version epoch="0" ver="2.30.6" rel="1.0.2.1.sr20240803"/>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1669118400">- Update to release 2.26
  * Added SDL_GetWindowSizeInPixels() to get the window size in
    pixels, which may differ from the window coordinate size for
    windows with high-DPI support.
  * Added simulated vsync synchronization for the software
    renderer.
  * Added the mouse position to SDL_MouseWheelEvent.
  * Added SDL_ResetHints() to reset all hints to their default
    values.
  * Added SDL_GetJoystickGUIDInfo() to get device information
    encoded in a joystick GUID.
  * Added XBOX Hints.
  * Added support for PS3 and Wii controllers to the HIDAPI
    driver (not enabled by default).
  * Added access to the individual left and right gyro sensors of
    the combined Joy-Cons controller.
  * Added a microsecond timestamp to SDL_SensorEvent and
    SDL_ControllerSensorEvent, when the hardware provides that
    information.
- Delete sdl2-khronos.patch (merged)
- Drop CVE-2022-4743.patch.</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1669896000">- Update to release 2.26.1
  * Improved audio resampling quality
  * Fixed crash if SDL_GetPointDisplayIndex() or
    SDL_GetRectDisplayIndex() are called before SDL_VideoInit()</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1672747200">- Update to release 2.26.2
  * Fixed long delay at startup when a Razer keyboard is
    connected
  * Fixed not receiving SDLK_5 or SDL_SCANCODE_5 when using the
    AZERTY keyboard layout on Linux
- Enable libsamplerate and libdecor components
- Remove unused tslib build requirement</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1675771200">- Update to release 2.26.3
  * Fixed infinite loop shutting down WGI controllers
  * Fixed centering the D-pad on some Xbox controllers</changelog>
  <changelog author="Michal Suchanek &lt;msuchanek@suse.com&gt;" date="1677844800">- Use current keymap on console
  (https://github.com/libsdl-org/SDL/pull/7400 )
  + 0001-Cleanup-add-brace-6545.patch
  + 0002-Update-for-SDL3-coding-style-6717.patch
  + 0003-Clang-Tidy-fixes-6725.patch
  + 0004-evdev_kbd-Use-current-keymap.patch</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1678190400">- Update to release 2.26.4
  * Fixed using older game controller mappings on Linux</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1681214400">- Update to release 2.26.5
  * Fixed handling of third party PS4 controller input reports
  * Added support for the trigger buttons on the Victrix Pro FS
    for PS5
  * Added mapping for Flydigi Vader 2 with the latest firmware
    (6.0.4.9)
  * Added mapping for DualSense Edge Wireless Controller on Linux
  * Added mapping for Hori Pokken Tournament DX Pro Pad
  * Improved the speed and quality of audio resampling
  * Fixed crash on Linux if dbus can't be initialized</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1687348800">- Update to release 2.28
  * Added SDL_HasWindowSurface() and SDL_DestroyWindowSurface() to
    switch between the window surface and rendering APIs.
  * Added a display event SDL_DISPLAYEVENT_MOVED which is sent
    when the primary monitor changes or displays change position
    relative to each other.
  * Added the hint SDL_HINT_ENABLE_SCREEN_KEYBOARD to control
    whether the on-screen keyboard should be shown when text input
    is active.
- Delete 0001-Cleanup-add-brace-6545.patch,
  0002-Update-for-SDL3-coding-style-6717.patch,
  0003-Clang-Tidy-fixes-6725.patch (inapplicable),
  0004-evdev_kbd-Use-current-keymap.patch (merged).</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1688212800">- Update to release 2.28.1
  * Added support for the Nintendo Online Famicom controllers
  * Improved support for third-party Nintendo Switch controllers
  * Fixed setting the player LED on Nintendo Switch controllers
  * Added Linux controller mapping for the Logitech Chillstream</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1690977600">- Update to release 2.28.2
  * Fixed 8BitDo gamepad mapping when in XInput mode on Linux
  * Fixed controller lockup initializing some unofficial PS4
    replica controllers
  * Fixed video initialization on headless Linux systems using VNC</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1693569600">- Update to release 2.28.3
  * Added a gamepad mapping for the G-Shark GS-GP702
  * Fixed touchpad events for the Razer Wolverine V2 Pro in PS5 mode</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1696248000">- Update to release 2.28.4
  * Enable clipping for zero sized rectangles in the SDL renderer
  * Notify X11 clipboard managers when the clipboard changes
  * Fixed sensor timestamps for third-party PS5 controllers
  * Added detection for Logitech and Simagic racing wheels</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1696680000">- Enable direct PipeWire support</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1698926400">- Update to release 2.28.5
  * Added support for the HP HyperX Clutch Gladiate controller
  * Fixed a crash if a controller is disconnected while SDL is
    opening it
  * Fixed a crash on Linux if XInput2 isn't available at runtime</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1706875200">- Update to release 2.30
  * Added support for 2 bits-per-pixel indexed surface formats.
  * Added the function SDL_GameControllerGetSteamHandle() to get
    the Steam API handle for a controller, if available.
  * Added the event SDL_CONTROLLERSTEAMHANDLEUPDATED which is sent
    when the Steam API handle for a controller changes. This could
    also change the name, VID, and PID of the controller.
  * Added the environment variable SDL_LOGGING to control default
    log output.</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1709726400">- Update to release 2.30.1
  * Fixed a regression causing SDL_WaitEvent() to return spurious
    failures
  * Wayland windows automatically have OpenGL enabled again
  * Fixed memory corruption when converting signed 16-bit audio
    to float
  * Fixed audio artifacts when converting signed 8-bit audio to
    float
  * Fixed the clip rectangle not being updated when the viewport
    changes in the SDL renderer</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1712059200">- Update to release 2.30.2
  * Fixed performance regression initialing controllers on Linux
  * Added support for the 6-button SEGA Mega Drive Control Pad
    for Nintendo Online
  * Add support for MadCatz Saitek Side Panel Control Deck
  * Added support for the Hori Fighting Stick EX2
  * Added support for the Yawman Arrow flightstick
  * Added a gamepad mapping for the Defender Joystick Cobra R4
  * Fixed the gamepad mapping for the Sanwa Supply JY-P76USV
    controller
  * Allow using SDL_RWFromFile() with named pipes</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1714564800">- Update to release 2.30.3
  * Fixed a pointer warping issue on XWayland
  * Reduced startup time when scanning for game controllers on Linux</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1718712000">- Update to release 2.30.4
  * Added support for the Saitek Cyborg V.3 Rumble Pad in PS3 mode
  * Added support for the Razer Kitsune in PS5 mode
  * Added Linux bindings for the Qanba Drone 2 Arcade Joystick
  * Leave Nintendo Online controllers in simple report mode so
    they work with DirectInput games
  * Enable using libusb for GameCube controllers when available</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1723809600">- Update to release 2.30.6
  * Improved detection of Nintendo Switch Pro controller report mode
  * Fixed a rare crash when a controller is disconnected</changelog>
</package>
<package pkgid="4287b66b36995b7befb8c5cf9bf026265af9aecf7c041a540007c04b2b1eb10f7a3608811c85fab02e19ce0dc6fae1da52356d6882c12e3a7a7043b8e419d17a" name="SDL2-devel-32bit" arch="x86_64">
  <version epoch="0" ver="2.30.6" rel="1.1"/>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1669118400">- Update to release 2.26
  * Added SDL_GetWindowSizeInPixels() to get the window size in
    pixels, which may differ from the window coordinate size for
    windows with high-DPI support.
  * Added simulated vsync synchronization for the software
    renderer.
  * Added the mouse position to SDL_MouseWheelEvent.
  * Added SDL_ResetHints() to reset all hints to their default
    values.
  * Added SDL_GetJoystickGUIDInfo() to get device information
    encoded in a joystick GUID.
  * Added XBOX Hints.
  * Added support for PS3 and Wii controllers to the HIDAPI
    driver (not enabled by default).
  * Added access to the individual left and right gyro sensors of
    the combined Joy-Cons controller.
  * Added a microsecond timestamp to SDL_SensorEvent and
    SDL_ControllerSensorEvent, when the hardware provides that
    information.
- Delete sdl2-khronos.patch (merged)
- Drop CVE-2022-4743.patch.</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1669896000">- Update to release 2.26.1
  * Improved audio resampling quality
  * Fixed crash if SDL_GetPointDisplayIndex() or
    SDL_GetRectDisplayIndex() are called before SDL_VideoInit()</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1672747200">- Update to release 2.26.2
  * Fixed long delay at startup when a Razer keyboard is
    connected
  * Fixed not receiving SDLK_5 or SDL_SCANCODE_5 when using the
    AZERTY keyboard layout on Linux
- Enable libsamplerate and libdecor components
- Remove unused tslib build requirement</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1675771200">- Update to release 2.26.3
  * Fixed infinite loop shutting down WGI controllers
  * Fixed centering the D-pad on some Xbox controllers</changelog>
  <changelog author="Michal Suchanek &lt;msuchanek@suse.com&gt;" date="1677844800">- Use current keymap on console
  (https://github.com/libsdl-org/SDL/pull/7400 )
  + 0001-Cleanup-add-brace-6545.patch
  + 0002-Update-for-SDL3-coding-style-6717.patch
  + 0003-Clang-Tidy-fixes-6725.patch
  + 0004-evdev_kbd-Use-current-keymap.patch</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1678190400">- Update to release 2.26.4
  * Fixed using older game controller mappings on Linux</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1681214400">- Update to release 2.26.5
  * Fixed handling of third party PS4 controller input reports
  * Added support for the trigger buttons on the Victrix Pro FS
    for PS5
  * Added mapping for Flydigi Vader 2 with the latest firmware
    (6.0.4.9)
  * Added mapping for DualSense Edge Wireless Controller on Linux
  * Added mapping for Hori Pokken Tournament DX Pro Pad
  * Improved the speed and quality of audio resampling
  * Fixed crash on Linux if dbus can't be initialized</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1687348800">- Update to release 2.28
  * Added SDL_HasWindowSurface() and SDL_DestroyWindowSurface() to
    switch between the window surface and rendering APIs.
  * Added a display event SDL_DISPLAYEVENT_MOVED which is sent
    when the primary monitor changes or displays change position
    relative to each other.
  * Added the hint SDL_HINT_ENABLE_SCREEN_KEYBOARD to control
    whether the on-screen keyboard should be shown when text input
    is active.
- Delete 0001-Cleanup-add-brace-6545.patch,
  0002-Update-for-SDL3-coding-style-6717.patch,
  0003-Clang-Tidy-fixes-6725.patch (inapplicable),
  0004-evdev_kbd-Use-current-keymap.patch (merged).</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1688212800">- Update to release 2.28.1
  * Added support for the Nintendo Online Famicom controllers
  * Improved support for third-party Nintendo Switch controllers
  * Fixed setting the player LED on Nintendo Switch controllers
  * Added Linux controller mapping for the Logitech Chillstream</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1690977600">- Update to release 2.28.2
  * Fixed 8BitDo gamepad mapping when in XInput mode on Linux
  * Fixed controller lockup initializing some unofficial PS4
    replica controllers
  * Fixed video initialization on headless Linux systems using VNC</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1693569600">- Update to release 2.28.3
  * Added a gamepad mapping for the G-Shark GS-GP702
  * Fixed touchpad events for the Razer Wolverine V2 Pro in PS5 mode</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1696248000">- Update to release 2.28.4
  * Enable clipping for zero sized rectangles in the SDL renderer
  * Notify X11 clipboard managers when the clipboard changes
  * Fixed sensor timestamps for third-party PS5 controllers
  * Added detection for Logitech and Simagic racing wheels</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1696680000">- Enable direct PipeWire support</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1698926400">- Update to release 2.28.5
  * Added support for the HP HyperX Clutch Gladiate controller
  * Fixed a crash if a controller is disconnected while SDL is
    opening it
  * Fixed a crash on Linux if XInput2 isn't available at runtime</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1706875200">- Update to release 2.30
  * Added support for 2 bits-per-pixel indexed surface formats.
  * Added the function SDL_GameControllerGetSteamHandle() to get
    the Steam API handle for a controller, if available.
  * Added the event SDL_CONTROLLERSTEAMHANDLEUPDATED which is sent
    when the Steam API handle for a controller changes. This could
    also change the name, VID, and PID of the controller.
  * Added the environment variable SDL_LOGGING to control default
    log output.</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1709726400">- Update to release 2.30.1
  * Fixed a regression causing SDL_WaitEvent() to return spurious
    failures
  * Wayland windows automatically have OpenGL enabled again
  * Fixed memory corruption when converting signed 16-bit audio
    to float
  * Fixed audio artifacts when converting signed 8-bit audio to
    float
  * Fixed the clip rectangle not being updated when the viewport
    changes in the SDL renderer</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1712059200">- Update to release 2.30.2
  * Fixed performance regression initialing controllers on Linux
  * Added support for the 6-button SEGA Mega Drive Control Pad
    for Nintendo Online
  * Add support for MadCatz Saitek Side Panel Control Deck
  * Added support for the Hori Fighting Stick EX2
  * Added support for the Yawman Arrow flightstick
  * Added a gamepad mapping for the Defender Joystick Cobra R4
  * Fixed the gamepad mapping for the Sanwa Supply JY-P76USV
    controller
  * Allow using SDL_RWFromFile() with named pipes</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1714564800">- Update to release 2.30.3
  * Fixed a pointer warping issue on XWayland
  * Reduced startup time when scanning for game controllers on Linux</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1718712000">- Update to release 2.30.4
  * Added support for the Saitek Cyborg V.3 Rumble Pad in PS3 mode
  * Added support for the Razer Kitsune in PS5 mode
  * Added Linux bindings for the Qanba Drone 2 Arcade Joystick
  * Leave Nintendo Online controllers in simple report mode so
    they work with DirectInput games
  * Enable using libusb for GameCube controllers when available</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1723809600">- Update to release 2.30.6
  * Improved detection of Nintendo Switch Pro controller report mode
  * Fixed a rare crash when a controller is disconnected</changelog>
</package>
<package pkgid="ef99df8e173c1a50d9fd49980062f4360b73c2016e9466b389c9a3252d42a8df99ce4b7d098f141e336f6953f3c2be0db77c3de8ebc5055315a08a1006530beb" name="SDL2-devel-32bit" arch="x86_64">
  <version epoch="0" ver="2.30.7" rel="1.1"/>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1672747200">- Update to release 2.26.2
  * Fixed long delay at startup when a Razer keyboard is
    connected
  * Fixed not receiving SDLK_5 or SDL_SCANCODE_5 when using the
    AZERTY keyboard layout on Linux
- Enable libsamplerate and libdecor components
- Remove unused tslib build requirement</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1675771200">- Update to release 2.26.3
  * Fixed infinite loop shutting down WGI controllers
  * Fixed centering the D-pad on some Xbox controllers</changelog>
  <changelog author="Michal Suchanek &lt;msuchanek@suse.com&gt;" date="1677844800">- Use current keymap on console
  (https://github.com/libsdl-org/SDL/pull/7400 )
  + 0001-Cleanup-add-brace-6545.patch
  + 0002-Update-for-SDL3-coding-style-6717.patch
  + 0003-Clang-Tidy-fixes-6725.patch
  + 0004-evdev_kbd-Use-current-keymap.patch</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1678190400">- Update to release 2.26.4
  * Fixed using older game controller mappings on Linux</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1681214400">- Update to release 2.26.5
  * Fixed handling of third party PS4 controller input reports
  * Added support for the trigger buttons on the Victrix Pro FS
    for PS5
  * Added mapping for Flydigi Vader 2 with the latest firmware
    (6.0.4.9)
  * Added mapping for DualSense Edge Wireless Controller on Linux
  * Added mapping for Hori Pokken Tournament DX Pro Pad
  * Improved the speed and quality of audio resampling
  * Fixed crash on Linux if dbus can't be initialized</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1687348800">- Update to release 2.28
  * Added SDL_HasWindowSurface() and SDL_DestroyWindowSurface() to
    switch between the window surface and rendering APIs.
  * Added a display event SDL_DISPLAYEVENT_MOVED which is sent
    when the primary monitor changes or displays change position
    relative to each other.
  * Added the hint SDL_HINT_ENABLE_SCREEN_KEYBOARD to control
    whether the on-screen keyboard should be shown when text input
    is active.
- Delete 0001-Cleanup-add-brace-6545.patch,
  0002-Update-for-SDL3-coding-style-6717.patch,
  0003-Clang-Tidy-fixes-6725.patch (inapplicable),
  0004-evdev_kbd-Use-current-keymap.patch (merged).</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1688212800">- Update to release 2.28.1
  * Added support for the Nintendo Online Famicom controllers
  * Improved support for third-party Nintendo Switch controllers
  * Fixed setting the player LED on Nintendo Switch controllers
  * Added Linux controller mapping for the Logitech Chillstream</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1690977600">- Update to release 2.28.2
  * Fixed 8BitDo gamepad mapping when in XInput mode on Linux
  * Fixed controller lockup initializing some unofficial PS4
    replica controllers
  * Fixed video initialization on headless Linux systems using VNC</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1693569600">- Update to release 2.28.3
  * Added a gamepad mapping for the G-Shark GS-GP702
  * Fixed touchpad events for the Razer Wolverine V2 Pro in PS5 mode</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1696248000">- Update to release 2.28.4
  * Enable clipping for zero sized rectangles in the SDL renderer
  * Notify X11 clipboard managers when the clipboard changes
  * Fixed sensor timestamps for third-party PS5 controllers
  * Added detection for Logitech and Simagic racing wheels</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1696680000">- Enable direct PipeWire support</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1698926400">- Update to release 2.28.5
  * Added support for the HP HyperX Clutch Gladiate controller
  * Fixed a crash if a controller is disconnected while SDL is
    opening it
  * Fixed a crash on Linux if XInput2 isn't available at runtime</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1706875200">- Update to release 2.30
  * Added support for 2 bits-per-pixel indexed surface formats.
  * Added the function SDL_GameControllerGetSteamHandle() to get
    the Steam API handle for a controller, if available.
  * Added the event SDL_CONTROLLERSTEAMHANDLEUPDATED which is sent
    when the Steam API handle for a controller changes. This could
    also change the name, VID, and PID of the controller.
  * Added the environment variable SDL_LOGGING to control default
    log output.</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1709726400">- Update to release 2.30.1
  * Fixed a regression causing SDL_WaitEvent() to return spurious
    failures
  * Wayland windows automatically have OpenGL enabled again
  * Fixed memory corruption when converting signed 16-bit audio
    to float
  * Fixed audio artifacts when converting signed 8-bit audio to
    float
  * Fixed the clip rectangle not being updated when the viewport
    changes in the SDL renderer</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1712059200">- Update to release 2.30.2
  * Fixed performance regression initialing controllers on Linux
  * Added support for the 6-button SEGA Mega Drive Control Pad
    for Nintendo Online
  * Add support for MadCatz Saitek Side Panel Control Deck
  * Added support for the Hori Fighting Stick EX2
  * Added support for the Yawman Arrow flightstick
  * Added a gamepad mapping for the Defender Joystick Cobra R4
  * Fixed the gamepad mapping for the Sanwa Supply JY-P76USV
    controller
  * Allow using SDL_RWFromFile() with named pipes</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1714564800">- Update to release 2.30.3
  * Fixed a pointer warping issue on XWayland
  * Reduced startup time when scanning for game controllers on Linux</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1718712000">- Update to release 2.30.4
  * Added support for the Saitek Cyborg V.3 Rumble Pad in PS3 mode
  * Added support for the Razer Kitsune in PS5 mode
  * Added Linux bindings for the Qanba Drone 2 Arcade Joystick
  * Leave Nintendo Online controllers in simple report mode so
    they work with DirectInput games
  * Enable using libusb for GameCube controllers when available</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1723809600">- Update to release 2.30.6
  * Improved detection of Nintendo Switch Pro controller report mode
  * Fixed a rare crash when a controller is disconnected</changelog>
  <changelog author="Antonio Larrosa &lt;alarrosa@suse.com&gt;" date="1724932800">- Don't build with fcitx support. fcitx support was just added
  because of a bug (boo#1025413) that could be fixed by building
  with fcitx support but upstream SDL2 developers fixed it
  in 2.0.5 when building without fcitx support too. Also fcitx
  support has always been disabled in SLE/Leap and in Factory
  it's built against fcitx 4.2.9.9, not the newer fcitx5 so
  let's disable it in order to reduce dependencies.</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1725364800">- Update to release 2.30.7
  * Added support for the Retro-bit Controller in PS3 mode
  * Fixed the cursor becoming visible when using relative mode
    under XWayland
  * Fixed Direct Rendering Manager initialization failure on some
    Linux systems
  * Fixed a crash when the current mouse capture window is
    destroyed</changelog>
</package>
<package pkgid="f87a5d3e158d7635a6dc6ef196302efb2d9025dc46b1180cb75da1fc4bcb87af0f95882372a72ca2e120db3d71e0b9573611c196f8dca28d83ca4429cd25140e" name="SDL2-devel-32bit" arch="x86_64">
  <version epoch="0" ver="2.30.8" rel="1.1"/>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1675771200">- Update to release 2.26.3
  * Fixed infinite loop shutting down WGI controllers
  * Fixed centering the D-pad on some Xbox controllers</changelog>
  <changelog author="Michal Suchanek &lt;msuchanek@suse.com&gt;" date="1677844800">- Use current keymap on console
  (https://github.com/libsdl-org/SDL/pull/7400 )
  + 0001-Cleanup-add-brace-6545.patch
  + 0002-Update-for-SDL3-coding-style-6717.patch
  + 0003-Clang-Tidy-fixes-6725.patch
  + 0004-evdev_kbd-Use-current-keymap.patch</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1678190400">- Update to release 2.26.4
  * Fixed using older game controller mappings on Linux</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1681214400">- Update to release 2.26.5
  * Fixed handling of third party PS4 controller input reports
  * Added support for the trigger buttons on the Victrix Pro FS
    for PS5
  * Added mapping for Flydigi Vader 2 with the latest firmware
    (6.0.4.9)
  * Added mapping for DualSense Edge Wireless Controller on Linux
  * Added mapping for Hori Pokken Tournament DX Pro Pad
  * Improved the speed and quality of audio resampling
  * Fixed crash on Linux if dbus can't be initialized</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1687348800">- Update to release 2.28
  * Added SDL_HasWindowSurface() and SDL_DestroyWindowSurface() to
    switch between the window surface and rendering APIs.
  * Added a display event SDL_DISPLAYEVENT_MOVED which is sent
    when the primary monitor changes or displays change position
    relative to each other.
  * Added the hint SDL_HINT_ENABLE_SCREEN_KEYBOARD to control
    whether the on-screen keyboard should be shown when text input
    is active.
- Delete 0001-Cleanup-add-brace-6545.patch,
  0002-Update-for-SDL3-coding-style-6717.patch,
  0003-Clang-Tidy-fixes-6725.patch (inapplicable),
  0004-evdev_kbd-Use-current-keymap.patch (merged).</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1688212800">- Update to release 2.28.1
  * Added support for the Nintendo Online Famicom controllers
  * Improved support for third-party Nintendo Switch controllers
  * Fixed setting the player LED on Nintendo Switch controllers
  * Added Linux controller mapping for the Logitech Chillstream</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1690977600">- Update to release 2.28.2
  * Fixed 8BitDo gamepad mapping when in XInput mode on Linux
  * Fixed controller lockup initializing some unofficial PS4
    replica controllers
  * Fixed video initialization on headless Linux systems using VNC</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1693569600">- Update to release 2.28.3
  * Added a gamepad mapping for the G-Shark GS-GP702
  * Fixed touchpad events for the Razer Wolverine V2 Pro in PS5 mode</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1696248000">- Update to release 2.28.4
  * Enable clipping for zero sized rectangles in the SDL renderer
  * Notify X11 clipboard managers when the clipboard changes
  * Fixed sensor timestamps for third-party PS5 controllers
  * Added detection for Logitech and Simagic racing wheels</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1696680000">- Enable direct PipeWire support</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1698926400">- Update to release 2.28.5
  * Added support for the HP HyperX Clutch Gladiate controller
  * Fixed a crash if a controller is disconnected while SDL is
    opening it
  * Fixed a crash on Linux if XInput2 isn't available at runtime</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1706875200">- Update to release 2.30
  * Added support for 2 bits-per-pixel indexed surface formats.
  * Added the function SDL_GameControllerGetSteamHandle() to get
    the Steam API handle for a controller, if available.
  * Added the event SDL_CONTROLLERSTEAMHANDLEUPDATED which is sent
    when the Steam API handle for a controller changes. This could
    also change the name, VID, and PID of the controller.
  * Added the environment variable SDL_LOGGING to control default
    log output.</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1709726400">- Update to release 2.30.1
  * Fixed a regression causing SDL_WaitEvent() to return spurious
    failures
  * Wayland windows automatically have OpenGL enabled again
  * Fixed memory corruption when converting signed 16-bit audio
    to float
  * Fixed audio artifacts when converting signed 8-bit audio to
    float
  * Fixed the clip rectangle not being updated when the viewport
    changes in the SDL renderer</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1712059200">- Update to release 2.30.2
  * Fixed performance regression initialing controllers on Linux
  * Added support for the 6-button SEGA Mega Drive Control Pad
    for Nintendo Online
  * Add support for MadCatz Saitek Side Panel Control Deck
  * Added support for the Hori Fighting Stick EX2
  * Added support for the Yawman Arrow flightstick
  * Added a gamepad mapping for the Defender Joystick Cobra R4
  * Fixed the gamepad mapping for the Sanwa Supply JY-P76USV
    controller
  * Allow using SDL_RWFromFile() with named pipes</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1714564800">- Update to release 2.30.3
  * Fixed a pointer warping issue on XWayland
  * Reduced startup time when scanning for game controllers on Linux</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1718712000">- Update to release 2.30.4
  * Added support for the Saitek Cyborg V.3 Rumble Pad in PS3 mode
  * Added support for the Razer Kitsune in PS5 mode
  * Added Linux bindings for the Qanba Drone 2 Arcade Joystick
  * Leave Nintendo Online controllers in simple report mode so
    they work with DirectInput games
  * Enable using libusb for GameCube controllers when available</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1723809600">- Update to release 2.30.6
  * Improved detection of Nintendo Switch Pro controller report mode
  * Fixed a rare crash when a controller is disconnected</changelog>
  <changelog author="Antonio Larrosa &lt;alarrosa@suse.com&gt;" date="1724932800">- Don't build with fcitx support. fcitx support was just added
  because of a bug (boo#1025413) that could be fixed by building
  with fcitx support but upstream SDL2 developers fixed it
  in 2.0.5 when building without fcitx support too. Also fcitx
  support has always been disabled in SLE/Leap and in Factory
  it's built against fcitx 4.2.9.9, not the newer fcitx5 so
  let's disable it in order to reduce dependencies.</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1725364800">- Update to release 2.30.7
  * Added support for the Retro-bit Controller in PS3 mode
  * Fixed the cursor becoming visible when using relative mode
    under XWayland
  * Fixed Direct Rendering Manager initialization failure on some
    Linux systems
  * Fixed a crash when the current mouse capture window is
    destroyed</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1727784000">- Update to release 2.30.8
  * Fixed a crash in XInput code at startup
  * Fixed flooding the OS with I/O when a PS4/PS5 controller is
    disconnected
  * Added SDL_VIDEO_DOUBLE_BUFFER support to the Wayland backend
  * SDL_WINDOWEVENT_EXPOSED is sent appropriately when using
    Wayland
  * Fixed hang at startup in audio code when the application has
    large stack usage on Linux
  * Fixed initializing KMSDRM on older Linux systems</changelog>
</package>
<package pkgid="83f75fccfd72df5f96644d1538f552b7e42a8f13cd76cc50ac3160696e0b71dbbfbe6ef6599fbacef46417241339e74f7c341bcb43cda5f1d249cd943902920f" name="SDL2-devel-32bit" arch="x86_64">
  <version epoch="0" ver="2.30.9" rel="1.1"/>
  <changelog author="Michal Suchanek &lt;msuchanek@suse.com&gt;" date="1677844800">- Use current keymap on console
  (https://github.com/libsdl-org/SDL/pull/7400 )
  + 0001-Cleanup-add-brace-6545.patch
  + 0002-Update-for-SDL3-coding-style-6717.patch
  + 0003-Clang-Tidy-fixes-6725.patch
  + 0004-evdev_kbd-Use-current-keymap.patch</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1678190400">- Update to release 2.26.4
  * Fixed using older game controller mappings on Linux</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1681214400">- Update to release 2.26.5
  * Fixed handling of third party PS4 controller input reports
  * Added support for the trigger buttons on the Victrix Pro FS
    for PS5
  * Added mapping for Flydigi Vader 2 with the latest firmware
    (6.0.4.9)
  * Added mapping for DualSense Edge Wireless Controller on Linux
  * Added mapping for Hori Pokken Tournament DX Pro Pad
  * Improved the speed and quality of audio resampling
  * Fixed crash on Linux if dbus can't be initialized</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1687348800">- Update to release 2.28
  * Added SDL_HasWindowSurface() and SDL_DestroyWindowSurface() to
    switch between the window surface and rendering APIs.
  * Added a display event SDL_DISPLAYEVENT_MOVED which is sent
    when the primary monitor changes or displays change position
    relative to each other.
  * Added the hint SDL_HINT_ENABLE_SCREEN_KEYBOARD to control
    whether the on-screen keyboard should be shown when text input
    is active.
- Delete 0001-Cleanup-add-brace-6545.patch,
  0002-Update-for-SDL3-coding-style-6717.patch,
  0003-Clang-Tidy-fixes-6725.patch (inapplicable),
  0004-evdev_kbd-Use-current-keymap.patch (merged).</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1688212800">- Update to release 2.28.1
  * Added support for the Nintendo Online Famicom controllers
  * Improved support for third-party Nintendo Switch controllers
  * Fixed setting the player LED on Nintendo Switch controllers
  * Added Linux controller mapping for the Logitech Chillstream</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1690977600">- Update to release 2.28.2
  * Fixed 8BitDo gamepad mapping when in XInput mode on Linux
  * Fixed controller lockup initializing some unofficial PS4
    replica controllers
  * Fixed video initialization on headless Linux systems using VNC</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1693569600">- Update to release 2.28.3
  * Added a gamepad mapping for the G-Shark GS-GP702
  * Fixed touchpad events for the Razer Wolverine V2 Pro in PS5 mode</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1696248000">- Update to release 2.28.4
  * Enable clipping for zero sized rectangles in the SDL renderer
  * Notify X11 clipboard managers when the clipboard changes
  * Fixed sensor timestamps for third-party PS5 controllers
  * Added detection for Logitech and Simagic racing wheels</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1696680000">- Enable direct PipeWire support</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1698926400">- Update to release 2.28.5
  * Added support for the HP HyperX Clutch Gladiate controller
  * Fixed a crash if a controller is disconnected while SDL is
    opening it
  * Fixed a crash on Linux if XInput2 isn't available at runtime</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1706875200">- Update to release 2.30
  * Added support for 2 bits-per-pixel indexed surface formats.
  * Added the function SDL_GameControllerGetSteamHandle() to get
    the Steam API handle for a controller, if available.
  * Added the event SDL_CONTROLLERSTEAMHANDLEUPDATED which is sent
    when the Steam API handle for a controller changes. This could
    also change the name, VID, and PID of the controller.
  * Added the environment variable SDL_LOGGING to control default
    log output.</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1709726400">- Update to release 2.30.1
  * Fixed a regression causing SDL_WaitEvent() to return spurious
    failures
  * Wayland windows automatically have OpenGL enabled again
  * Fixed memory corruption when converting signed 16-bit audio
    to float
  * Fixed audio artifacts when converting signed 8-bit audio to
    float
  * Fixed the clip rectangle not being updated when the viewport
    changes in the SDL renderer</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1712059200">- Update to release 2.30.2
  * Fixed performance regression initialing controllers on Linux
  * Added support for the 6-button SEGA Mega Drive Control Pad
    for Nintendo Online
  * Add support for MadCatz Saitek Side Panel Control Deck
  * Added support for the Hori Fighting Stick EX2
  * Added support for the Yawman Arrow flightstick
  * Added a gamepad mapping for the Defender Joystick Cobra R4
  * Fixed the gamepad mapping for the Sanwa Supply JY-P76USV
    controller
  * Allow using SDL_RWFromFile() with named pipes</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1714564800">- Update to release 2.30.3
  * Fixed a pointer warping issue on XWayland
  * Reduced startup time when scanning for game controllers on Linux</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1718712000">- Update to release 2.30.4
  * Added support for the Saitek Cyborg V.3 Rumble Pad in PS3 mode
  * Added support for the Razer Kitsune in PS5 mode
  * Added Linux bindings for the Qanba Drone 2 Arcade Joystick
  * Leave Nintendo Online controllers in simple report mode so
    they work with DirectInput games
  * Enable using libusb for GameCube controllers when available</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1723809600">- Update to release 2.30.6
  * Improved detection of Nintendo Switch Pro controller report mode
  * Fixed a rare crash when a controller is disconnected</changelog>
  <changelog author="Antonio Larrosa &lt;alarrosa@suse.com&gt;" date="1724932800">- Don't build with fcitx support. fcitx support was just added
  because of a bug (boo#1025413) that could be fixed by building
  with fcitx support but upstream SDL2 developers fixed it
  in 2.0.5 when building without fcitx support too. Also fcitx
  support has always been disabled in SLE/Leap and in Factory
  it's built against fcitx 4.2.9.9, not the newer fcitx5 so
  let's disable it in order to reduce dependencies.</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1725364800">- Update to release 2.30.7
  * Added support for the Retro-bit Controller in PS3 mode
  * Fixed the cursor becoming visible when using relative mode
    under XWayland
  * Fixed Direct Rendering Manager initialization failure on some
    Linux systems
  * Fixed a crash when the current mouse capture window is
    destroyed</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1727784000">- Update to release 2.30.8
  * Fixed a crash in XInput code at startup
  * Fixed flooding the OS with I/O when a PS4/PS5 controller is
    disconnected
  * Added SDL_VIDEO_DOUBLE_BUFFER support to the Wayland backend
  * SDL_WINDOWEVENT_EXPOSED is sent appropriately when using
    Wayland
  * Fixed hang at startup in audio code when the application has
    large stack usage on Linux
  * Fixed initializing KMSDRM on older Linux systems</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1730548800">- Update to release 2.30.9
  * Fixed flicker when entering/exiting fullscreen or moving the
    window between scaled and non-scaled displays under Wayland.</changelog>
</package>
<package pkgid="830ddcb058299261d3ecdd5275da063f3c1aa36a1237bd89ec0ec5e81660ced257cc1d5846d4edd0ffaa2ad1116334da99c99fc7773f4ad793d493f941a0ab89" name="SDL_mixer" arch="src">
  <version epoch="0" ver="1.2.12" rel="10.1"/>
  <changelog author="crrodriguez@suse.de" date="1215259200">- remove unusable static libraries
- cleanup BuildRequires and -devel package dependencies</changelog>
  <changelog author="olh@suse.de" date="1225368000">- obsolete old -XXbit packages (bnc#437293)</changelog>
  <changelog author="olh@suse.de" date="1228910400">- use Obsoletes: -XXbit only for ppc64 to help solver during distupgrade
  (bnc#437293)</changelog>
  <changelog author="prusnak@suse.cz" date="1242820800">- follow Shared Library Policy</changelog>
  <changelog author="prusnak@suse.cz" date="1243598400">- removed VisualC.zip, Watcom-OS2.zip, Xcode.tar.gz from upstream
  tarball [bnc#508180]</changelog>
  <changelog author="prusnak@suse.cz" date="1254916800">- fix provides and obsoletes [bnc#544957]</changelog>
  <changelog author="jengelh@medozas.de" date="1261224000">- add baselibs.conf as a source</changelog>
  <changelog author="prusnak@suse.cz" date="1261396800">- updated to 1.2.11
  * Fixed initialization error and crashes if MikMod library isn't available
  * Fixed bug loading multiple music files
  * Added Mix_Init()/Mix_Quit() to prevent constantly loading and unloading DLLs
  * Check for fork/vfork on any platform, don't just assume it on UNIX
  * Fixed export of Mix_GetNumChunkDecoders() and Mix_GetNumMusicDecoders()
  * Reset channel volumes after a fade out interrupts a fade in.
  * Fixed crash race condition with position audio functions
  * Fixed stereo panning in 8-bit mode
  * Added /usr/share/timidity to the default timidity.cfg locations
  * MOD support uses libmikmod and is dynamically loaded by default
  * Added TIMIDITY_CFG environment variable to fully locate timidity.cfg
  * Implemented seamless looping for music playback
  * ID3 files are now recognized as MP3 format
  * Added decoder enumeration API:
    Mix_GetNumChunkDecoders(), Mix_GetChunkDecoder(),
    Mix_GetNumMusicDecoders(), Mix_GetMusicDecoder()
  * Added support for FLAC audio both as chunks and streaming
  * Added support for streaming WAV files with Mix_LoadMUS_RW()
  * Fixed crash caused by not resetting position_channels
- drop no longer needed 64bit-fix.patch and timidity_cfg.patch</changelog>
  <changelog author="coolo@novell.com" date="1263297600">- fix file list</changelog>
  <changelog author="reddwarf@opensuse.org" date="1279972800">- Add FLAC support
- Recommend the libraries that are dlopened</changelog>
  <changelog author="jengelh@medozas.de" date="1309608000">- Use %_smp_mflags for parallel building
- Strip %clean section (not needed on BS)</changelog>
  <changelog author="jengelh@medozas.de" date="1312200000">- Update baselibs.conf to also ship libSDL_mixer-devel-32bit</changelog>
  <changelog author="jengelh@medozas.de" date="1316260800">- Remove redundant tags/sections from specfile</changelog>
  <changelog author="crrodriguez@opensuse.org" date="1357214400">- Do not use dlopened libraries _ever_.</changelog>
  <changelog author="mailaender@opensuse.org" date="1361707200">- Update to 1.2.12
  * SDL_mixer is now under the zlib license
  * Fixed seek offset with SMPEG (was relative, should be absolute)
  * Added Mix_LoadMUSType_RW() so you can tell SDL_mixer what type the music is
  * Added /usr/local/share/timidity to the timidity data path
  * Fixed timidity loading of some MIDI files
  * Fixed dropping audio in the FLAC audio decoding
  * Fixed memory leak in SDL_LoadMUS()
  * Removed GPL native MIDI code for new licensing
  * Fixed drums playing on MIDI channel 16 with timidity
  * The music-finished hook can start a track immediately
  * Added support for FluidSynth
  * Added support for libmodplug (disabled by default)</changelog>
  <changelog author="jengelh@inai.de" date="1376395200">- Some metadata spruce-up: add current URLs, softer wildcarding
  in the files list</changelog>
  <changelog author="bwiedemann@suse.com" date="1385208000">- import patches from https://projects.archlinux.org/svntogit/packages.git/tree/trunk?h=packages/sdl_mixer
  to fix mixer / mikmod free corruption (bnc#851996)
  Add double-free-crash.patch, mikmod1.patch and mikmod2.patch</changelog>
  <changelog author="jengelh@inai.de" date="1420545600">- Improve package summary and description. Drop --with-pic which
  is enabled implicitly anyway, remove redundant Requires.
- Enable modplug support</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1660996800">- Specfile modernization
- Rename devel package to just %name-devel, which is what most
  our packages do.</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1724241600">- Add gcc14.patch</changelog>
</package>
<package pkgid="1618fae4baea3e054718047f1cf80d3c42443e774d5cbf47fb7bc4756c7ef4bb328e56a6d38c6f3e7b8475c956b3fc3e46bb9cd87b80805c62047e7a5b68c8a8" name="SDL_mixer-debugsource" arch="x86_64">
  <version epoch="0" ver="1.2.12" rel="10.1"/>
  <changelog author="jengelh@medozas.de" date="1309608000">- Use %_smp_mflags for parallel building
- Strip %clean section (not needed on BS)</changelog>
  <changelog author="jengelh@medozas.de" date="1312200000">- Update baselibs.conf to also ship libSDL_mixer-devel-32bit</changelog>
  <changelog author="jengelh@medozas.de" date="1316260800">- Remove redundant tags/sections from specfile</changelog>
  <changelog author="crrodriguez@opensuse.org" date="1357214400">- Do not use dlopened libraries _ever_.</changelog>
  <changelog author="mailaender@opensuse.org" date="1361707200">- Update to 1.2.12
  * SDL_mixer is now under the zlib license
  * Fixed seek offset with SMPEG (was relative, should be absolute)
  * Added Mix_LoadMUSType_RW() so you can tell SDL_mixer what type the music is
  * Added /usr/local/share/timidity to the timidity data path
  * Fixed timidity loading of some MIDI files
  * Fixed dropping audio in the FLAC audio decoding
  * Fixed memory leak in SDL_LoadMUS()
  * Removed GPL native MIDI code for new licensing
  * Fixed drums playing on MIDI channel 16 with timidity
  * The music-finished hook can start a track immediately
  * Added support for FluidSynth
  * Added support for libmodplug (disabled by default)</changelog>
  <changelog author="jengelh@inai.de" date="1376395200">- Some metadata spruce-up: add current URLs, softer wildcarding
  in the files list</changelog>
  <changelog author="bwiedemann@suse.com" date="1385208000">- import patches from https://projects.archlinux.org/svntogit/packages.git/tree/trunk?h=packages/sdl_mixer
  to fix mixer / mikmod free corruption (bnc#851996)
  Add double-free-crash.patch, mikmod1.patch and mikmod2.patch</changelog>
  <changelog author="jengelh@inai.de" date="1420545600">- Improve package summary and description. Drop --with-pic which
  is enabled implicitly anyway, remove redundant Requires.
- Enable modplug support</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1660996800">- Specfile modernization
- Rename devel package to just %name-devel, which is what most
  our packages do.</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1724241600">- Add gcc14.patch</changelog>
</package>
<package pkgid="a9edb27719ee0f8bf7a85c672859aaa654368892f2cadd4fcd8342c91f4970ec7bdc926a6e61744d9ea46b0321debdefe027c1ea9d23becad9fc76ce65063167" name="SDL_mixer-devel" arch="x86_64">
  <version epoch="0" ver="1.2.12" rel="10.1"/>
  <changelog author="jengelh@medozas.de" date="1309608000">- Use %_smp_mflags for parallel building
- Strip %clean section (not needed on BS)</changelog>
  <changelog author="jengelh@medozas.de" date="1312200000">- Update baselibs.conf to also ship libSDL_mixer-devel-32bit</changelog>
  <changelog author="jengelh@medozas.de" date="1316260800">- Remove redundant tags/sections from specfile</changelog>
  <changelog author="crrodriguez@opensuse.org" date="1357214400">- Do not use dlopened libraries _ever_.</changelog>
  <changelog author="mailaender@opensuse.org" date="1361707200">- Update to 1.2.12
  * SDL_mixer is now under the zlib license
  * Fixed seek offset with SMPEG (was relative, should be absolute)
  * Added Mix_LoadMUSType_RW() so you can tell SDL_mixer what type the music is
  * Added /usr/local/share/timidity to the timidity data path
  * Fixed timidity loading of some MIDI files
  * Fixed dropping audio in the FLAC audio decoding
  * Fixed memory leak in SDL_LoadMUS()
  * Removed GPL native MIDI code for new licensing
  * Fixed drums playing on MIDI channel 16 with timidity
  * The music-finished hook can start a track immediately
  * Added support for FluidSynth
  * Added support for libmodplug (disabled by default)</changelog>
  <changelog author="jengelh@inai.de" date="1376395200">- Some metadata spruce-up: add current URLs, softer wildcarding
  in the files list</changelog>
  <changelog author="bwiedemann@suse.com" date="1385208000">- import patches from https://projects.archlinux.org/svntogit/packages.git/tree/trunk?h=packages/sdl_mixer
  to fix mixer / mikmod free corruption (bnc#851996)
  Add double-free-crash.patch, mikmod1.patch and mikmod2.patch</changelog>
  <changelog author="jengelh@inai.de" date="1420545600">- Improve package summary and description. Drop --with-pic which
  is enabled implicitly anyway, remove redundant Requires.
- Enable modplug support</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1660996800">- Specfile modernization
- Rename devel package to just %name-devel, which is what most
  our packages do.</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1724241600">- Add gcc14.patch</changelog>
</package>
<package pkgid="d67e1d72dcb7e02ff6395602df5be67cd7544a1b9ce74f3d2be64e21fd8ed114b7c766bc835fbda4a08e8161150d2ff8cf6022b5806481eaeec87f4c37cc144b" name="SDL_mixer-devel-debuginfo" arch="x86_64">
  <version epoch="0" ver="1.2.12" rel="10.1"/>
  <changelog author="jengelh@medozas.de" date="1309608000">- Use %_smp_mflags for parallel building
- Strip %clean section (not needed on BS)</changelog>
  <changelog author="jengelh@medozas.de" date="1312200000">- Update baselibs.conf to also ship libSDL_mixer-devel-32bit</changelog>
  <changelog author="jengelh@medozas.de" date="1316260800">- Remove redundant tags/sections from specfile</changelog>
  <changelog author="crrodriguez@opensuse.org" date="1357214400">- Do not use dlopened libraries _ever_.</changelog>
  <changelog author="mailaender@opensuse.org" date="1361707200">- Update to 1.2.12
  * SDL_mixer is now under the zlib license
  * Fixed seek offset with SMPEG (was relative, should be absolute)
  * Added Mix_LoadMUSType_RW() so you can tell SDL_mixer what type the music is
  * Added /usr/local/share/timidity to the timidity data path
  * Fixed timidity loading of some MIDI files
  * Fixed dropping audio in the FLAC audio decoding
  * Fixed memory leak in SDL_LoadMUS()
  * Removed GPL native MIDI code for new licensing
  * Fixed drums playing on MIDI channel 16 with timidity
  * The music-finished hook can start a track immediately
  * Added support for FluidSynth
  * Added support for libmodplug (disabled by default)</changelog>
  <changelog author="jengelh@inai.de" date="1376395200">- Some metadata spruce-up: add current URLs, softer wildcarding
  in the files list</changelog>
  <changelog author="bwiedemann@suse.com" date="1385208000">- import patches from https://projects.archlinux.org/svntogit/packages.git/tree/trunk?h=packages/sdl_mixer
  to fix mixer / mikmod free corruption (bnc#851996)
  Add double-free-crash.patch, mikmod1.patch and mikmod2.patch</changelog>
  <changelog author="jengelh@inai.de" date="1420545600">- Improve package summary and description. Drop --with-pic which
  is enabled implicitly anyway, remove redundant Requires.
- Enable modplug support</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1660996800">- Specfile modernization
- Rename devel package to just %name-devel, which is what most
  our packages do.</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1724241600">- Add gcc14.patch</changelog>
</package>
<package pkgid="7b35221bc7c7587981ca1df1d8060a0c9d79d2ac932cc4dc94263873387193706f5f13a60ac5e02c12eb944c8ab832e2f08054baaacdf7e436824bb619cd8d43" name="SDL_net" arch="src">
  <version epoch="0" ver="1.2.8" rel="8.0.2.1.sr20240803"/>
  <changelog author="nadvornik@suse.cz" date="1059134400">- updated to 1.2.5
- added buildroot</changelog>
  <changelog author="adrian@suse.de" date="1073736000">- add %defattr and %run_ldconfig</changelog>
  <changelog author="mls@suse.de" date="1138190400">- converted neededforbuild to BuildRequires</changelog>
  <changelog author="nadvornik@suse.cz" date="1138363200">- fixed BuildRequires</changelog>
  <changelog author="sndirsch@suse.de" date="1161864000">- removed wrong 'extra ;' in SDL_net.h (Bug #214645)</changelog>
  <changelog author="prusnak@suse.cz" date="1172145600">- updated to 1.2.6
- created devel subpackage</changelog>
  <changelog author="prusnak@suse.cz" date="1172836800">- cleaned spec file</changelog>
  <changelog author="aj@suse.de" date="1185105600">- Cleanup build requires.</changelog>
  <changelog author="prusnak@suse.cz" date="1185364800">- updated to 1.2.7
  * set server TCP sockets to blocking mode</changelog>
  <changelog author="crrodriguez@suse.de" date="1235563200">- remove static libraries and "la" files</changelog>
  <changelog author="prusnak@suse.cz" date="1242820800">- follow Shared Library Policy</changelog>
  <changelog author="prusnak@suse.cz" date="1254916800">- fix provides and obsoletes [bnc#544957]</changelog>
  <changelog author="jengelh@medozas.de" date="1261224000">- add baselibs.conf as a source</changelog>
  <changelog author="jengelh@medozas.de" date="1309608000">- Use %_smp_mflags for parallel building
- Strip %clean section (not needed on BS)</changelog>
  <changelog author="jengelh@medozas.de" date="1312200000">- Update baselibs.conf to also ship libSDL_net-devel-32bit</changelog>
  <changelog author="jengelh@medozas.de" date="1316260800">- Remove redundant tags/sections from specfile</changelog>
  <changelog author="prusnak@opensuse.org" date="1376395200">- updated to 1.2.8
  * Added the definition for INADDR_LOOPBACK
  * Added an Xcode project for iOS
  * SDL_net is now under the zlib license
  * Added SDLNet_UDP_SetPacketLoss() to simulate random packet loss
  * Added SDLNet_GetLocalAddresses() to query local interfaces
  * Removed obsolete OpenTransport code
  * Added Android.mk to build on the Android platform
  * Fixed to compile cleanly with g++
  * Fixed the code to use socklen_t where appropriate
  * Added pkg-config support
  * Fixed C++ compilation with -Wold-style-cast
  * Enable multicast receiving on 224.0.0.1 on Windows (already worked on UNIX)</changelog>
  <changelog author="jengelh@inai.de" date="1376395201">- Some metadata spruce-up: add current URLs, softer wildcarding
  in the files list, more robust make install call</changelog>
  <changelog author="jengelh@inai.de" date="1420718400">- Improve package summary and description. Drop --with-pic which
  is enabled implicitly anyway, remove redundant Requires.</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1724241600">- Rename devel package to just %name-devel, which is what most
  openSUSE's packages do.</changelog>
</package>
<package pkgid="1f83449940a86485aa403a0593ed5f376228b1d9b7dde19912f3138dc64f6460eb3a974a5694ca46f342354ab15390b08030f42accc127379f1a9d55bf85d724" name="SDL_net" arch="src">
  <version epoch="0" ver="1.2.8" rel="8.1"/>
  <changelog author="nadvornik@suse.cz" date="1059134400">- updated to 1.2.5
- added buildroot</changelog>
  <changelog author="adrian@suse.de" date="1073736000">- add %defattr and %run_ldconfig</changelog>
  <changelog author="mls@suse.de" date="1138190400">- converted neededforbuild to BuildRequires</changelog>
  <changelog author="nadvornik@suse.cz" date="1138363200">- fixed BuildRequires</changelog>
  <changelog author="sndirsch@suse.de" date="1161864000">- removed wrong 'extra ;' in SDL_net.h (Bug #214645)</changelog>
  <changelog author="prusnak@suse.cz" date="1172145600">- updated to 1.2.6
- created devel subpackage</changelog>
  <changelog author="prusnak@suse.cz" date="1172836800">- cleaned spec file</changelog>
  <changelog author="aj@suse.de" date="1185105600">- Cleanup build requires.</changelog>
  <changelog author="prusnak@suse.cz" date="1185364800">- updated to 1.2.7
  * set server TCP sockets to blocking mode</changelog>
  <changelog author="crrodriguez@suse.de" date="1235563200">- remove static libraries and "la" files</changelog>
  <changelog author="prusnak@suse.cz" date="1242820800">- follow Shared Library Policy</changelog>
  <changelog author="prusnak@suse.cz" date="1254916800">- fix provides and obsoletes [bnc#544957]</changelog>
  <changelog author="jengelh@medozas.de" date="1261224000">- add baselibs.conf as a source</changelog>
  <changelog author="jengelh@medozas.de" date="1309608000">- Use %_smp_mflags for parallel building
- Strip %clean section (not needed on BS)</changelog>
  <changelog author="jengelh@medozas.de" date="1312200000">- Update baselibs.conf to also ship libSDL_net-devel-32bit</changelog>
  <changelog author="jengelh@medozas.de" date="1316260800">- Remove redundant tags/sections from specfile</changelog>
  <changelog author="prusnak@opensuse.org" date="1376395200">- updated to 1.2.8
  * Added the definition for INADDR_LOOPBACK
  * Added an Xcode project for iOS
  * SDL_net is now under the zlib license
  * Added SDLNet_UDP_SetPacketLoss() to simulate random packet loss
  * Added SDLNet_GetLocalAddresses() to query local interfaces
  * Removed obsolete OpenTransport code
  * Added Android.mk to build on the Android platform
  * Fixed to compile cleanly with g++
  * Fixed the code to use socklen_t where appropriate
  * Added pkg-config support
  * Fixed C++ compilation with -Wold-style-cast
  * Enable multicast receiving on 224.0.0.1 on Windows (already worked on UNIX)</changelog>
  <changelog author="jengelh@inai.de" date="1376395201">- Some metadata spruce-up: add current URLs, softer wildcarding
  in the files list, more robust make install call</changelog>
  <changelog author="jengelh@inai.de" date="1420718400">- Improve package summary and description. Drop --with-pic which
  is enabled implicitly anyway, remove redundant Requires.</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1724241600">- Rename devel package to just %name-devel, which is what most
  openSUSE's packages do.</changelog>
</package>
<package pkgid="71e9d1c31abc4e4b75a3517ccad42608aaa785fc7dfb4fb37e309e6be5f2bdbf98cd86354d80e2a5311a70fb761d8311045a0dc55fc545545f246fd39480a0ca" name="SDL_net-debugsource" arch="i586">
  <version epoch="0" ver="1.2.8" rel="8.0.2.1.sr20240803"/>
  <changelog author="prusnak@suse.cz" date="1242820800">- follow Shared Library Policy</changelog>
  <changelog author="prusnak@suse.cz" date="1254916800">- fix provides and obsoletes [bnc#544957]</changelog>
  <changelog author="jengelh@medozas.de" date="1261224000">- add baselibs.conf as a source</changelog>
  <changelog author="jengelh@medozas.de" date="1309608000">- Use %_smp_mflags for parallel building
- Strip %clean section (not needed on BS)</changelog>
  <changelog author="jengelh@medozas.de" date="1312200000">- Update baselibs.conf to also ship libSDL_net-devel-32bit</changelog>
  <changelog author="jengelh@medozas.de" date="1316260800">- Remove redundant tags/sections from specfile</changelog>
  <changelog author="prusnak@opensuse.org" date="1376395200">- updated to 1.2.8
  * Added the definition for INADDR_LOOPBACK
  * Added an Xcode project for iOS
  * SDL_net is now under the zlib license
  * Added SDLNet_UDP_SetPacketLoss() to simulate random packet loss
  * Added SDLNet_GetLocalAddresses() to query local interfaces
  * Removed obsolete OpenTransport code
  * Added Android.mk to build on the Android platform
  * Fixed to compile cleanly with g++
  * Fixed the code to use socklen_t where appropriate
  * Added pkg-config support
  * Fixed C++ compilation with -Wold-style-cast
  * Enable multicast receiving on 224.0.0.1 on Windows (already worked on UNIX)</changelog>
  <changelog author="jengelh@inai.de" date="1376395201">- Some metadata spruce-up: add current URLs, softer wildcarding
  in the files list, more robust make install call</changelog>
  <changelog author="jengelh@inai.de" date="1420718400">- Improve package summary and description. Drop --with-pic which
  is enabled implicitly anyway, remove redundant Requires.</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1724241600">- Rename devel package to just %name-devel, which is what most
  openSUSE's packages do.</changelog>
</package>
<package pkgid="e4a621520c952c7cd4e06a4a2505cef366d904a5df765d1cb657c9377d8bd2cd6554aa0c5628e1f2b2bdddd8ecf8e12432ea5e85e8037fd78c7c3acc26fcb036" name="SDL_net-debugsource" arch="x86_64">
  <version epoch="0" ver="1.2.8" rel="8.0.2.1.sr20240803"/>
  <changelog author="prusnak@suse.cz" date="1242820800">- follow Shared Library Policy</changelog>
  <changelog author="prusnak@suse.cz" date="1254916800">- fix provides and obsoletes [bnc#544957]</changelog>
  <changelog author="jengelh@medozas.de" date="1261224000">- add baselibs.conf as a source</changelog>
  <changelog author="jengelh@medozas.de" date="1309608000">- Use %_smp_mflags for parallel building
- Strip %clean section (not needed on BS)</changelog>
  <changelog author="jengelh@medozas.de" date="1312200000">- Update baselibs.conf to also ship libSDL_net-devel-32bit</changelog>
  <changelog author="jengelh@medozas.de" date="1316260800">- Remove redundant tags/sections from specfile</changelog>
  <changelog author="prusnak@opensuse.org" date="1376395200">- updated to 1.2.8
  * Added the definition for INADDR_LOOPBACK
  * Added an Xcode project for iOS
  * SDL_net is now under the zlib license
  * Added SDLNet_UDP_SetPacketLoss() to simulate random packet loss
  * Added SDLNet_GetLocalAddresses() to query local interfaces
  * Removed obsolete OpenTransport code
  * Added Android.mk to build on the Android platform
  * Fixed to compile cleanly with g++
  * Fixed the code to use socklen_t where appropriate
  * Added pkg-config support
  * Fixed C++ compilation with -Wold-style-cast
  * Enable multicast receiving on 224.0.0.1 on Windows (already worked on UNIX)</changelog>
  <changelog author="jengelh@inai.de" date="1376395201">- Some metadata spruce-up: add current URLs, softer wildcarding
  in the files list, more robust make install call</changelog>
  <changelog author="jengelh@inai.de" date="1420718400">- Improve package summary and description. Drop --with-pic which
  is enabled implicitly anyway, remove redundant Requires.</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1724241600">- Rename devel package to just %name-devel, which is what most
  openSUSE's packages do.</changelog>
</package>
<package pkgid="fff1891f4d3699f2d2c3a65460634f5e00fd4199336e2d4005d6eb80ab44ca80d8ab21fee2c6f4eac0ed1b39801cc8e4a1795ec5f2b4927ca39406f0a9e7154a" name="SDL_net-debugsource" arch="x86_64">
  <version epoch="0" ver="1.2.8" rel="8.1"/>
  <changelog author="prusnak@suse.cz" date="1242820800">- follow Shared Library Policy</changelog>
  <changelog author="prusnak@suse.cz" date="1254916800">- fix provides and obsoletes [bnc#544957]</changelog>
  <changelog author="jengelh@medozas.de" date="1261224000">- add baselibs.conf as a source</changelog>
  <changelog author="jengelh@medozas.de" date="1309608000">- Use %_smp_mflags for parallel building
- Strip %clean section (not needed on BS)</changelog>
  <changelog author="jengelh@medozas.de" date="1312200000">- Update baselibs.conf to also ship libSDL_net-devel-32bit</changelog>
  <changelog author="jengelh@medozas.de" date="1316260800">- Remove redundant tags/sections from specfile</changelog>
  <changelog author="prusnak@opensuse.org" date="1376395200">- updated to 1.2.8
  * Added the definition for INADDR_LOOPBACK
  * Added an Xcode project for iOS
  * SDL_net is now under the zlib license
  * Added SDLNet_UDP_SetPacketLoss() to simulate random packet loss
  * Added SDLNet_GetLocalAddresses() to query local interfaces
  * Removed obsolete OpenTransport code
  * Added Android.mk to build on the Android platform
  * Fixed to compile cleanly with g++
  * Fixed the code to use socklen_t where appropriate
  * Added pkg-config support
  * Fixed C++ compilation with -Wold-style-cast
  * Enable multicast receiving on 224.0.0.1 on Windows (already worked on UNIX)</changelog>
  <changelog author="jengelh@inai.de" date="1376395201">- Some metadata spruce-up: add current URLs, softer wildcarding
  in the files list, more robust make install call</changelog>
  <changelog author="jengelh@inai.de" date="1420718400">- Improve package summary and description. Drop --with-pic which
  is enabled implicitly anyway, remove redundant Requires.</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1724241600">- Rename devel package to just %name-devel, which is what most
  openSUSE's packages do.</changelog>
</package>
<package pkgid="5026cb783d136cdd6eb9564b52d08c42a973b64b4b4350c3a6c3fd24ccd26852aebe449a7dd19f10e0e974cf758fd87275c41405f555ea7572e5b37127650322" name="SDL_net-devel" arch="i586">
  <version epoch="0" ver="1.2.8" rel="8.0.2.1.sr20240803"/>
  <changelog author="prusnak@suse.cz" date="1242820800">- follow Shared Library Policy</changelog>
  <changelog author="prusnak@suse.cz" date="1254916800">- fix provides and obsoletes [bnc#544957]</changelog>
  <changelog author="jengelh@medozas.de" date="1261224000">- add baselibs.conf as a source</changelog>
  <changelog author="jengelh@medozas.de" date="1309608000">- Use %_smp_mflags for parallel building
- Strip %clean section (not needed on BS)</changelog>
  <changelog author="jengelh@medozas.de" date="1312200000">- Update baselibs.conf to also ship libSDL_net-devel-32bit</changelog>
  <changelog author="jengelh@medozas.de" date="1316260800">- Remove redundant tags/sections from specfile</changelog>
  <changelog author="prusnak@opensuse.org" date="1376395200">- updated to 1.2.8
  * Added the definition for INADDR_LOOPBACK
  * Added an Xcode project for iOS
  * SDL_net is now under the zlib license
  * Added SDLNet_UDP_SetPacketLoss() to simulate random packet loss
  * Added SDLNet_GetLocalAddresses() to query local interfaces
  * Removed obsolete OpenTransport code
  * Added Android.mk to build on the Android platform
  * Fixed to compile cleanly with g++
  * Fixed the code to use socklen_t where appropriate
  * Added pkg-config support
  * Fixed C++ compilation with -Wold-style-cast
  * Enable multicast receiving on 224.0.0.1 on Windows (already worked on UNIX)</changelog>
  <changelog author="jengelh@inai.de" date="1376395201">- Some metadata spruce-up: add current URLs, softer wildcarding
  in the files list, more robust make install call</changelog>
  <changelog author="jengelh@inai.de" date="1420718400">- Improve package summary and description. Drop --with-pic which
  is enabled implicitly anyway, remove redundant Requires.</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1724241600">- Rename devel package to just %name-devel, which is what most
  openSUSE's packages do.</changelog>
</package>
<package pkgid="04ba84cd6046bfec468537e5d19ea11a233708553942d2e7a8548d94a22acf8d977917b75ef3c6579bd322aa54e7c945a4614f1c6c93c73bdad847c7567e2432" name="SDL_net-devel" arch="x86_64">
  <version epoch="0" ver="1.2.8" rel="8.0.2.1.sr20240803"/>
  <changelog author="prusnak@suse.cz" date="1242820800">- follow Shared Library Policy</changelog>
  <changelog author="prusnak@suse.cz" date="1254916800">- fix provides and obsoletes [bnc#544957]</changelog>
  <changelog author="jengelh@medozas.de" date="1261224000">- add baselibs.conf as a source</changelog>
  <changelog author="jengelh@medozas.de" date="1309608000">- Use %_smp_mflags for parallel building
- Strip %clean section (not needed on BS)</changelog>
  <changelog author="jengelh@medozas.de" date="1312200000">- Update baselibs.conf to also ship libSDL_net-devel-32bit</changelog>
  <changelog author="jengelh@medozas.de" date="1316260800">- Remove redundant tags/sections from specfile</changelog>
  <changelog author="prusnak@opensuse.org" date="1376395200">- updated to 1.2.8
  * Added the definition for INADDR_LOOPBACK
  * Added an Xcode project for iOS
  * SDL_net is now under the zlib license
  * Added SDLNet_UDP_SetPacketLoss() to simulate random packet loss
  * Added SDLNet_GetLocalAddresses() to query local interfaces
  * Removed obsolete OpenTransport code
  * Added Android.mk to build on the Android platform
  * Fixed to compile cleanly with g++
  * Fixed the code to use socklen_t where appropriate
  * Added pkg-config support
  * Fixed C++ compilation with -Wold-style-cast
  * Enable multicast receiving on 224.0.0.1 on Windows (already worked on UNIX)</changelog>
  <changelog author="jengelh@inai.de" date="1376395201">- Some metadata spruce-up: add current URLs, softer wildcarding
  in the files list, more robust make install call</changelog>
  <changelog author="jengelh@inai.de" date="1420718400">- Improve package summary and description. Drop --with-pic which
  is enabled implicitly anyway, remove redundant Requires.</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1724241600">- Rename devel package to just %name-devel, which is what most
  openSUSE's packages do.</changelog>
</package>
<package pkgid="1475da208d13b7f45d56d2e7285e32a091c20182b8538ed6e112657398660459707d36f805a7625efc017c7f2b57e0c8cfca62db92eacd9893fc5d44f639fe8a" name="SDL_net-devel" arch="x86_64">
  <version epoch="0" ver="1.2.8" rel="8.1"/>
  <changelog author="prusnak@suse.cz" date="1242820800">- follow Shared Library Policy</changelog>
  <changelog author="prusnak@suse.cz" date="1254916800">- fix provides and obsoletes [bnc#544957]</changelog>
  <changelog author="jengelh@medozas.de" date="1261224000">- add baselibs.conf as a source</changelog>
  <changelog author="jengelh@medozas.de" date="1309608000">- Use %_smp_mflags for parallel building
- Strip %clean section (not needed on BS)</changelog>
  <changelog author="jengelh@medozas.de" date="1312200000">- Update baselibs.conf to also ship libSDL_net-devel-32bit</changelog>
  <changelog author="jengelh@medozas.de" date="1316260800">- Remove redundant tags/sections from specfile</changelog>
  <changelog author="prusnak@opensuse.org" date="1376395200">- updated to 1.2.8
  * Added the definition for INADDR_LOOPBACK
  * Added an Xcode project for iOS
  * SDL_net is now under the zlib license
  * Added SDLNet_UDP_SetPacketLoss() to simulate random packet loss
  * Added SDLNet_GetLocalAddresses() to query local interfaces
  * Removed obsolete OpenTransport code
  * Added Android.mk to build on the Android platform
  * Fixed to compile cleanly with g++
  * Fixed the code to use socklen_t where appropriate
  * Added pkg-config support
  * Fixed C++ compilation with -Wold-style-cast
  * Enable multicast receiving on 224.0.0.1 on Windows (already worked on UNIX)</changelog>
  <changelog author="jengelh@inai.de" date="1376395201">- Some metadata spruce-up: add current URLs, softer wildcarding
  in the files list, more robust make install call</changelog>
  <changelog author="jengelh@inai.de" date="1420718400">- Improve package summary and description. Drop --with-pic which
  is enabled implicitly anyway, remove redundant Requires.</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1724241600">- Rename devel package to just %name-devel, which is what most
  openSUSE's packages do.</changelog>
</package>
<package pkgid="d14e4f49eb73c348a408127392d61c8e823c1550660a00a4cf1aa721668150db0bc271355fadec037c077f1992e1dadd608499743918a6f39b2ab8409422d7ec" name="SDL_net-devel-32bit" arch="x86_64">
  <version epoch="0" ver="1.2.8" rel="8.0.2.1.sr20240803"/>
  <changelog author="prusnak@suse.cz" date="1242820800">- follow Shared Library Policy</changelog>
  <changelog author="prusnak@suse.cz" date="1254916800">- fix provides and obsoletes [bnc#544957]</changelog>
  <changelog author="jengelh@medozas.de" date="1261224000">- add baselibs.conf as a source</changelog>
  <changelog author="jengelh@medozas.de" date="1309608000">- Use %_smp_mflags for parallel building
- Strip %clean section (not needed on BS)</changelog>
  <changelog author="jengelh@medozas.de" date="1312200000">- Update baselibs.conf to also ship libSDL_net-devel-32bit</changelog>
  <changelog author="jengelh@medozas.de" date="1316260800">- Remove redundant tags/sections from specfile</changelog>
  <changelog author="prusnak@opensuse.org" date="1376395200">- updated to 1.2.8
  * Added the definition for INADDR_LOOPBACK
  * Added an Xcode project for iOS
  * SDL_net is now under the zlib license
  * Added SDLNet_UDP_SetPacketLoss() to simulate random packet loss
  * Added SDLNet_GetLocalAddresses() to query local interfaces
  * Removed obsolete OpenTransport code
  * Added Android.mk to build on the Android platform
  * Fixed to compile cleanly with g++
  * Fixed the code to use socklen_t where appropriate
  * Added pkg-config support
  * Fixed C++ compilation with -Wold-style-cast
  * Enable multicast receiving on 224.0.0.1 on Windows (already worked on UNIX)</changelog>
  <changelog author="jengelh@inai.de" date="1376395201">- Some metadata spruce-up: add current URLs, softer wildcarding
  in the files list, more robust make install call</changelog>
  <changelog author="jengelh@inai.de" date="1420718400">- Improve package summary and description. Drop --with-pic which
  is enabled implicitly anyway, remove redundant Requires.</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1724241600">- Rename devel package to just %name-devel, which is what most
  openSUSE's packages do.</changelog>
</package>
<package pkgid="b26606de363ad348ae330049924c2044fa675f26621fd015e6bf72dd52e6e9dcbc1ff21789e202320c91ca4a4353b19aa8662b196f44a0ba2a5340017705a9e5" name="VirtualGL" arch="i586">
  <version epoch="0" ver="3.1.1" rel="1.0.2.1.sr20241002"/>
  <changelog author="Andreas Schwab &lt;schwab@suse.de&gt;" date="1572868800">- Add riscv64 to the list of 64-bit architectures</changelog>
  <changelog author="Adam Mizerski &lt;adam@mizerski.pl&gt;" date="1581249600">- update to 2.6.3
  * Changelog in packaged ChangeLog.md or at
    https://github.com/VirtualGL/virtualgl/blob/2.6.3/ChangeLog.md
- Refreshed patch VirtualGL-link-libs.patch
- Removed patch virtualgl-nodl.patch - resolved upstream
- Added patch glx.patch</changelog>
  <changelog author="Max Lin &lt;mlin@suse.com&gt;" date="1591012800">- Remove conditional of applying glx.patch because we have newer Mesa
  in Leap 15.2
- Use upstream patch fix-Mesa-19.3.0-build.patch to replace glx.patch
  * Add fix-Mesa-19.3.0-build.patch
  * Remove glx.patch</changelog>
  <changelog author="&#xC1;kos Sz&#x151;ts &lt;szotsaki@gmail.com&gt;" date="1594036800">- update to 2.6.4
  * Changelog in packaged ChangeLog.md or at
    https://github.com/VirtualGL/virtualgl/blob/2.6.4/ChangeLog.md
- Refreshed patch VirtualGL-link-libs.patch
- Removed patch fix-Mesa-19.3.0-build.patch - resolved upstream</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1608379200">- update to 2.6.5:
  1. Fixed a race condition that sometimes caused various fatal errors in the
  interposed `glXMakeContextCurrent()` function if both GLX drawable IDs passed
  to that function were the same window handle and the corresponding X window was
  simultaneously resized in another thread.
  2. Fixed an oversight whereby the addresses of the interposed
  `glDrawBuffers()`, `glGetString()`, and `glGetStringi()` functions introduced
  in 2.6.3[2] and 2.6.4[1] were not returned from the interposed
  `glXGetProcAddress()` and `glXGetProcAddressARB()` functions.
  3. VirtualGL now works properly with 3D applications that use the
  `glNamedFramebufferDrawBuffer()` and `glNamedFramebufferDrawBuffers()`
  functions (OpenGL 4.5) or the `glFramebufferDrawBufferEXT()` and
  `glFramebufferDrawBuffersEXT()` functions (`GL_EXT_direct_state_access`) and
  render to the front buffer.
  4. Fixed a BadRequest X11 error that occurred when attempting to use the X11
  Transport with a remote X connection.
  5. Worked around an issue with certain GLX implementations that list
  10-bit-per-component FB configs ahead of 8-bit-per-component FB configs and
  incorrectly set `GLX_DRAWABLE_TYPE|=GLX_PIXMAP_BIT` for those 10-bpc FB
  configs, even though they have no X visuals attached.  This caused VirtualGL's
  interposed `glXChooseVisual()` function to choose one of the 10-bpc FB configs
  behind the scenes, which made it impossible to use the VGL Transport.
  6. Fixed an issue whereby, when using the X11 Transport, a vertically flipped
  image of a previously-rendered frame was sometimes displayed if the 3D
  application called `glFlush()` while the front buffer was the active drawing
  buffer and the render mode was `GL_FEEDBACK` or `GL_SELECT`.
  7. `vglserver_config` now works properly if invoked with a relative path
  (for example, `cd /opt/VirtualGL/bin; sudo ./vglserver_config`.)
  8. Worked around a limitation in the AMDGPU drivers that prevented recent
  versions of Google Chrome from enabling GPU acceleration when used with
  VirtualGL.</changelog>
  <changelog author="Anonymous Checkouts &lt;anoncvs@mailinator.com&gt;" date="1670760000">- update to 3.0.2
  * Now supports use of EGL as well as GLX</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1671624000">- update to 3.0.2:
  1. Support for transparent overlay visuals has been retired in this version of
  VirtualGL.  That feature will continue to be maintained in the 2.6.x branch on
  a break/fix basis only.  Most applications that once used transparent overlay
  visuals used them with color index rendering, which was removed in OpenGL 3.1
  in 2009.  Thus, almost all applications that render overlays now do so using
  other mechanisms.  Furthermore, the need for VirtualGL to hand off the
  rendering of transparent overlay visuals to the 2D X server has always limited
  the usefulness of the feature, and the discontinuation of the VirtualGL Client
  for Exceed relegated the feature to Un*x clients (with workstation-class GPUs)
  and the VGL Transport only.  Given that nVidia's implementation of transparent
  overlay visuals requires disabling the X Composite extension, which cannot be
  done in many modern Linux distributions, that further limited the feature to
  the point of uselessness.
  2. The VirtualGL Faker now assigns various permutations of common OpenGL
  rendering attributes to the available 2D X server visuals.  This maximizes the
  chances that "visual hunting" 3D applications (applications that use X11
  functions to obtain a list of 2D X server visuals, then iterate through the
  list with `glXGetConfig()` until they find a visual with a desired set of
  OpenGL rendering attributes) will find a suitable visual.
  `VGL_DEFAULTFBCONFIG` can still be used to assign a specified set of OpenGL
  rendering attributes to all 2D X server visuals, although the usefulness of
  that feature is now very limited.
  3. The VirtualGL Faker now includes an EGL back end that optionally emulates
  the GLX API using a combination of the EGL API (with the
  `EGL_EXT_platform_device` extension) and OpenGL renderbuffer objects (RBOs.)
  On supported platforms, the EGL back end allows the VirtualGL Faker to be used
  without a 3D X server.  The EGL back end can be activated by setting the
  `VGL_DISPLAY` environment variable to the path of a DRI device, such as
  * */dev/dri/card0**, or by passing that device path to `vglrun` using the `-d`
  argument.  Some obsolete OpenGL and GLX features are not supported by the EGL</changelog>
  <changelog author="ming li &lt;mli@suse.com&gt;" date="1701864000">- Update to 3.1:
  1. Fixed an issue in the EGL back end whereby textures and other OpenGL objects
  were not automatically destroyed along with the context and drawable in which
  the objects were created.
  2. Added an environment variable (`VGL_EXITFUNCTION`) that, when set to
  `_exit` or `abort`, causes the VirtualGL Faker to call the specified function
  rather than `exit()` when a non-recoverable error occurs.
  3. Fixed an issue whereby the interposed `eglCreatePlatformWindowSurface()`
  and `eglCreatePlatformWindowSurfaceEXT()` functions incorrectly treated the
  native window argument as an X window handle rather than a pointer to an X
  window handle.  This caused a segfault in VLC when using the OpenGL video
  output module.
  4. `vglserver_config` now works properly with SUSE Linux Enterprise/openSUSE
  Leap 15.
  5. If the GLX back end is in use, then the interposed `eglGetDisplay()` and
  `eglGetPlatformDisplay()` functions now return `EGL_NO_DISPLAY` rather than
  throwing a fatal error.  This allows applications such as Firefox to fail
  gracefully or to fall back and use the GLX API if EGL/X11 is unavailable.
  6. Fixed an issue whereby the VirtualGL Configuration dialog did not pop up if
  the X keyboard extension was enabled on the 2D X server.
  7. The VirtualGL Faker no longer probes the 2D X server for stereo visuals
  unless the VGL Transport or a transport plugin will be used.  Even if the 2D X
  server has stereo visuals, they will never be used with the X11 and XV
  Transports.  Probing the 2D X server for stereo visuals causes problems with
  certain OpenGL implementations and with applications, such as Tecplot 360, that
  include static builds of Mesa.  An undocumented environment variable
  (`VGL_PROBEGLX`) can be used to override the default behavior.
  8. When using the EGL back end, interposed `XQueryExtension(..., "GLX", ...)`
  and `glXQueryExtension()` function calls now return `False`, rather than
  throwing a fatal error, if the 2D X server does not have a GLX extension.  (The
  EGL back end uses the 2D X server's GLX extension for GLX error handling.)
  This allows applications, such as Chrome/Chromium, to fail gracefully or use a
  different API (such as EGL/X11) if the VirtualGL Faker is unable to emulate
  GLX.
  9. The VirtualGL Client now runs on Macs with Apple silicon CPUs (without
  requiring Rosetta 2.)
- update to 3.0.90 (3.1 beta1)
  1. The `vglconnect -x` and `vglconnect -k` options have been retired in this
  version of VirtualGL and will continue to be maintained in the 3.0.x branch on
  a break/fix basis only.  Those options, which had been undocumented since
  VirtualGL 2.6.1, were a throwback to the early days of VirtualGL when SSH was
  not universally available and SSH X11 forwarding sometimes introduced a
  performance penalty.  `vglconnect -x` did not work with most modern operating
  systems, since most modern operating systems disable X11 TCP connections by
  default.
  2. SSL encryption of the VGL Transport has been retired in this version of
  VirtualGL and will continue to be maintained in the 3.0.x branch on a break/fix
  basis only.  That feature, which had not been included in official VirtualGL
  packages since VirtualGL 2.1.x, was not widely used.  Furthermore, SSL
  encryption of the VGL Transport had no performance advantages over SSH
  tunneling on modern systems, and it had some security disadvantages due to its
  reliance on the RSA key exchange algorithm (which made it incompatible with TLS
  v1.3.)
  3. When using the EGL back end, VirtualGL now supports 3D applications
  (including recent versions of Google Chrome/Chromium and Mozilla Firefox) that
  use the EGL/X11 API instead of the GLX API.  As of this writing, VirtualGL does
  not support EGL pixmap surfaces or front buffer/single buffer rendering with
  EGL window surfaces.
  4. On Un*x and Mac clients, `vglconnect` now uses the OpenSSH `ControlMaster`
  option to avoid the need to authenticate with the server multiple times when
  tunneling the VGL Transport through SSH.
  5. `vglconnect` now accepts a new command-line argument (`-v`) that, when
  combined with `-s`, causes VirtualGL to be preloaded into all processes
  launched in the remote shell, thus eliminating the need to invoke `vglrun`.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1715774400">- Use %autosetup macro: allows us to eliminate usage of deprecated
  %patchN syntax.</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1729684800">- update to 3.1.1:
  * The EGL back end now supports OpenGL applications, including
    ANSYS Fluent, that use multiple X11 Display handles to render to
    the same GLX drawable.
  * The VirtualGL Faker now works around an issue whereby
    applications using the GtkGLArea widget with GTK v3.15.2 through
    v4.3.1 failed with "No available configurations for the given
    [RGBA] pixel format" if GTK v3.15.2 through v4.3.1 had previously
    been initialized on the 2D X server without VirtualGL.
  * As required by the EGL spec, the interposed `eglSwapBuffers()`
    function now flushes the current OpenGL context if the surface
    being swapped is bound to that context.  This fixes a flickering
    issue that occurred with recent versions of Firefox.
  * It is no longer necessary to enable the EGL back end in order to
    use VirtualGL with 3D applications that use the EGL/X11 API.  If
    the GLX back end is enabled, then the EGL/X11 interposer will now
    use the 3D X server.
  * Fixed an issue in the VirtualGL Faker that caused random characters
    and other elements of the Firefox browser window to disappear when
    the window was resized.
  * Fixed an issue in VirtualGL's `dlopen()` interposer
    (**libdlfaker.so**) that interfered with the correct operation of
    ANGLE (Almost Native Graphics Layer Engine.)
- add keyring for signature validation</changelog>
</package>
<package pkgid="0cb62f1ff7f0074af31f4281df9158e9bc712a67f480e85eed11687af9296c940d179423de7d273cefeb869fbdb4c2546fe2cea086fee6b77887bb4f2fd641f3" name="VirtualGL" arch="src">
  <version epoch="0" ver="3.1.1" rel="1.0.2.1.sr20241002"/>
  <changelog author="dvaleev@suse.com" date="1408622400">- Extend 64bit conditions to s390x ppc64 ppc64le aarch64</changelog>
  <changelog author="tchvatal@suse.com" date="1409313600">- Version bump to beta1 of 2.4 (2.3.90)
- Fix building with -Wl,-z,now and no-undefined
  * VirtualGL-link-libs.patch</changelog>
  <changelog author="tchvatal@suse.com" date="1440763200">- Update to 2.4.1:
  * Various bugfixes not mentioned on changes
  * Refresh VirtualGL-link-libs.patch</changelog>
  <changelog author="tchvatal@suse.com" date="1441108800">- Add proper wxwidgets license string</changelog>
  <changelog author="normand@linux.vnet.ibm.com" date="1466078400">- new gcc6_literal_suffixes.patch</changelog>
  <changelog author="tchvatal@suse.com" date="1466078401">- Version update to 2.5 release
  * See upstream changelog for details
  * Mostly removal of compat for pre-VirtualGL namespace
- Refresh patch VirtualGL-link-libs.patch</changelog>
  <changelog author="tchvatal@suse.com" date="1472040000">- Fix bnc#993645 as-needed eating symbols needed by this lib
  * virtualgl-nodl.patch
- Use system xcb headers
- Rename glxinfo2 to vglxinfo, sounds bit better and more descriptive</changelog>
  <changelog author="tchvatal@suse.com" date="1512388800">- Version update 2.5.2:
  * Various compat fixes all around
- Remove merged gcc6_literal_suffixes.patch
- Refresh VirtualGL-link-libs.patch and virtualgl-nodl.patch</changelog>
  <changelog author="tchvatal@suse.com" date="1512388801">- Disable ssl feature as we can tunnel via ssh and the openssl-1.1
  is not compatible at all currently</changelog>
  <changelog author="tchvatal@suse.com" date="1529409600">- Do not provide the env files which change the preload order
  bsc#1097210</changelog>
  <changelog author="Andreas Schwab &lt;schwab@suse.de&gt;" date="1572868800">- Add riscv64 to the list of 64-bit architectures</changelog>
  <changelog author="Adam Mizerski &lt;adam@mizerski.pl&gt;" date="1581249600">- update to 2.6.3
  * Changelog in packaged ChangeLog.md or at
    https://github.com/VirtualGL/virtualgl/blob/2.6.3/ChangeLog.md
- Refreshed patch VirtualGL-link-libs.patch
- Removed patch virtualgl-nodl.patch - resolved upstream
- Added patch glx.patch</changelog>
  <changelog author="Max Lin &lt;mlin@suse.com&gt;" date="1591012800">- Remove conditional of applying glx.patch because we have newer Mesa
  in Leap 15.2
- Use upstream patch fix-Mesa-19.3.0-build.patch to replace glx.patch
  * Add fix-Mesa-19.3.0-build.patch
  * Remove glx.patch</changelog>
  <changelog author="&#xC1;kos Sz&#x151;ts &lt;szotsaki@gmail.com&gt;" date="1594036800">- update to 2.6.4
  * Changelog in packaged ChangeLog.md or at
    https://github.com/VirtualGL/virtualgl/blob/2.6.4/ChangeLog.md
- Refreshed patch VirtualGL-link-libs.patch
- Removed patch fix-Mesa-19.3.0-build.patch - resolved upstream</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1608379200">- update to 2.6.5:
  1. Fixed a race condition that sometimes caused various fatal errors in the
  interposed `glXMakeContextCurrent()` function if both GLX drawable IDs passed
  to that function were the same window handle and the corresponding X window was
  simultaneously resized in another thread.
  2. Fixed an oversight whereby the addresses of the interposed
  `glDrawBuffers()`, `glGetString()`, and `glGetStringi()` functions introduced
  in 2.6.3[2] and 2.6.4[1] were not returned from the interposed
  `glXGetProcAddress()` and `glXGetProcAddressARB()` functions.
  3. VirtualGL now works properly with 3D applications that use the
  `glNamedFramebufferDrawBuffer()` and `glNamedFramebufferDrawBuffers()`
  functions (OpenGL 4.5) or the `glFramebufferDrawBufferEXT()` and
  `glFramebufferDrawBuffersEXT()` functions (`GL_EXT_direct_state_access`) and
  render to the front buffer.
  4. Fixed a BadRequest X11 error that occurred when attempting to use the X11
  Transport with a remote X connection.
  5. Worked around an issue with certain GLX implementations that list
  10-bit-per-component FB configs ahead of 8-bit-per-component FB configs and
  incorrectly set `GLX_DRAWABLE_TYPE|=GLX_PIXMAP_BIT` for those 10-bpc FB
  configs, even though they have no X visuals attached.  This caused VirtualGL's
  interposed `glXChooseVisual()` function to choose one of the 10-bpc FB configs
  behind the scenes, which made it impossible to use the VGL Transport.
  6. Fixed an issue whereby, when using the X11 Transport, a vertically flipped
  image of a previously-rendered frame was sometimes displayed if the 3D
  application called `glFlush()` while the front buffer was the active drawing
  buffer and the render mode was `GL_FEEDBACK` or `GL_SELECT`.
  7. `vglserver_config` now works properly if invoked with a relative path
  (for example, `cd /opt/VirtualGL/bin; sudo ./vglserver_config`.)
  8. Worked around a limitation in the AMDGPU drivers that prevented recent
  versions of Google Chrome from enabling GPU acceleration when used with
  VirtualGL.</changelog>
  <changelog author="Anonymous Checkouts &lt;anoncvs@mailinator.com&gt;" date="1670760000">- update to 3.0.2
  * Now supports use of EGL as well as GLX</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1671624000">- update to 3.0.2:
  1. Support for transparent overlay visuals has been retired in this version of
  VirtualGL.  That feature will continue to be maintained in the 2.6.x branch on
  a break/fix basis only.  Most applications that once used transparent overlay
  visuals used them with color index rendering, which was removed in OpenGL 3.1
  in 2009.  Thus, almost all applications that render overlays now do so using
  other mechanisms.  Furthermore, the need for VirtualGL to hand off the
  rendering of transparent overlay visuals to the 2D X server has always limited
  the usefulness of the feature, and the discontinuation of the VirtualGL Client
  for Exceed relegated the feature to Un*x clients (with workstation-class GPUs)
  and the VGL Transport only.  Given that nVidia's implementation of transparent
  overlay visuals requires disabling the X Composite extension, which cannot be
  done in many modern Linux distributions, that further limited the feature to
  the point of uselessness.
  2. The VirtualGL Faker now assigns various permutations of common OpenGL
  rendering attributes to the available 2D X server visuals.  This maximizes the
  chances that "visual hunting" 3D applications (applications that use X11
  functions to obtain a list of 2D X server visuals, then iterate through the
  list with `glXGetConfig()` until they find a visual with a desired set of
  OpenGL rendering attributes) will find a suitable visual.
  `VGL_DEFAULTFBCONFIG` can still be used to assign a specified set of OpenGL
  rendering attributes to all 2D X server visuals, although the usefulness of
  that feature is now very limited.
  3. The VirtualGL Faker now includes an EGL back end that optionally emulates
  the GLX API using a combination of the EGL API (with the
  `EGL_EXT_platform_device` extension) and OpenGL renderbuffer objects (RBOs.)
  On supported platforms, the EGL back end allows the VirtualGL Faker to be used
  without a 3D X server.  The EGL back end can be activated by setting the
  `VGL_DISPLAY` environment variable to the path of a DRI device, such as
  * */dev/dri/card0**, or by passing that device path to `vglrun` using the `-d`
  argument.  Some obsolete OpenGL and GLX features are not supported by the EGL</changelog>
  <changelog author="ming li &lt;mli@suse.com&gt;" date="1701864000">- Update to 3.1:
  1. Fixed an issue in the EGL back end whereby textures and other OpenGL objects
  were not automatically destroyed along with the context and drawable in which
  the objects were created.
  2. Added an environment variable (`VGL_EXITFUNCTION`) that, when set to
  `_exit` or `abort`, causes the VirtualGL Faker to call the specified function
  rather than `exit()` when a non-recoverable error occurs.
  3. Fixed an issue whereby the interposed `eglCreatePlatformWindowSurface()`
  and `eglCreatePlatformWindowSurfaceEXT()` functions incorrectly treated the
  native window argument as an X window handle rather than a pointer to an X
  window handle.  This caused a segfault in VLC when using the OpenGL video
  output module.
  4. `vglserver_config` now works properly with SUSE Linux Enterprise/openSUSE
  Leap 15.
  5. If the GLX back end is in use, then the interposed `eglGetDisplay()` and
  `eglGetPlatformDisplay()` functions now return `EGL_NO_DISPLAY` rather than
  throwing a fatal error.  This allows applications such as Firefox to fail
  gracefully or to fall back and use the GLX API if EGL/X11 is unavailable.
  6. Fixed an issue whereby the VirtualGL Configuration dialog did not pop up if
  the X keyboard extension was enabled on the 2D X server.
  7. The VirtualGL Faker no longer probes the 2D X server for stereo visuals
  unless the VGL Transport or a transport plugin will be used.  Even if the 2D X
  server has stereo visuals, they will never be used with the X11 and XV
  Transports.  Probing the 2D X server for stereo visuals causes problems with
  certain OpenGL implementations and with applications, such as Tecplot 360, that
  include static builds of Mesa.  An undocumented environment variable
  (`VGL_PROBEGLX`) can be used to override the default behavior.
  8. When using the EGL back end, interposed `XQueryExtension(..., "GLX", ...)`
  and `glXQueryExtension()` function calls now return `False`, rather than
  throwing a fatal error, if the 2D X server does not have a GLX extension.  (The
  EGL back end uses the 2D X server's GLX extension for GLX error handling.)
  This allows applications, such as Chrome/Chromium, to fail gracefully or use a
  different API (such as EGL/X11) if the VirtualGL Faker is unable to emulate
  GLX.
  9. The VirtualGL Client now runs on Macs with Apple silicon CPUs (without
  requiring Rosetta 2.)
- update to 3.0.90 (3.1 beta1)
  1. The `vglconnect -x` and `vglconnect -k` options have been retired in this
  version of VirtualGL and will continue to be maintained in the 3.0.x branch on
  a break/fix basis only.  Those options, which had been undocumented since
  VirtualGL 2.6.1, were a throwback to the early days of VirtualGL when SSH was
  not universally available and SSH X11 forwarding sometimes introduced a
  performance penalty.  `vglconnect -x` did not work with most modern operating
  systems, since most modern operating systems disable X11 TCP connections by
  default.
  2. SSL encryption of the VGL Transport has been retired in this version of
  VirtualGL and will continue to be maintained in the 3.0.x branch on a break/fix
  basis only.  That feature, which had not been included in official VirtualGL
  packages since VirtualGL 2.1.x, was not widely used.  Furthermore, SSL
  encryption of the VGL Transport had no performance advantages over SSH
  tunneling on modern systems, and it had some security disadvantages due to its
  reliance on the RSA key exchange algorithm (which made it incompatible with TLS
  v1.3.)
  3. When using the EGL back end, VirtualGL now supports 3D applications
  (including recent versions of Google Chrome/Chromium and Mozilla Firefox) that
  use the EGL/X11 API instead of the GLX API.  As of this writing, VirtualGL does
  not support EGL pixmap surfaces or front buffer/single buffer rendering with
  EGL window surfaces.
  4. On Un*x and Mac clients, `vglconnect` now uses the OpenSSH `ControlMaster`
  option to avoid the need to authenticate with the server multiple times when
  tunneling the VGL Transport through SSH.
  5. `vglconnect` now accepts a new command-line argument (`-v`) that, when
  combined with `-s`, causes VirtualGL to be preloaded into all processes
  launched in the remote shell, thus eliminating the need to invoke `vglrun`.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1715774400">- Use %autosetup macro: allows us to eliminate usage of deprecated
  %patchN syntax.</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1729684800">- update to 3.1.1:
  * The EGL back end now supports OpenGL applications, including
    ANSYS Fluent, that use multiple X11 Display handles to render to
    the same GLX drawable.
  * The VirtualGL Faker now works around an issue whereby
    applications using the GtkGLArea widget with GTK v3.15.2 through
    v4.3.1 failed with "No available configurations for the given
    [RGBA] pixel format" if GTK v3.15.2 through v4.3.1 had previously
    been initialized on the 2D X server without VirtualGL.
  * As required by the EGL spec, the interposed `eglSwapBuffers()`
    function now flushes the current OpenGL context if the surface
    being swapped is bound to that context.  This fixes a flickering
    issue that occurred with recent versions of Firefox.
  * It is no longer necessary to enable the EGL back end in order to
    use VirtualGL with 3D applications that use the EGL/X11 API.  If
    the GLX back end is enabled, then the EGL/X11 interposer will now
    use the 3D X server.
  * Fixed an issue in the VirtualGL Faker that caused random characters
    and other elements of the Firefox browser window to disappear when
    the window was resized.
  * Fixed an issue in VirtualGL's `dlopen()` interposer
    (**libdlfaker.so**) that interfered with the correct operation of
    ANGLE (Almost Native Graphics Layer Engine.)
- add keyring for signature validation</changelog>
</package>
<package pkgid="10b9ed55f5deeefec6f036402334369af5725ca84ada0cfc5494e82d71432dbcdb18458004e69f300e760348c72a4420fb4288fafa423d30dca848055e7550f5" name="VirtualGL" arch="x86_64">
  <version epoch="0" ver="3.1.1" rel="1.0.2.1.sr20241002"/>
  <changelog author="Andreas Schwab &lt;schwab@suse.de&gt;" date="1572868800">- Add riscv64 to the list of 64-bit architectures</changelog>
  <changelog author="Adam Mizerski &lt;adam@mizerski.pl&gt;" date="1581249600">- update to 2.6.3
  * Changelog in packaged ChangeLog.md or at
    https://github.com/VirtualGL/virtualgl/blob/2.6.3/ChangeLog.md
- Refreshed patch VirtualGL-link-libs.patch
- Removed patch virtualgl-nodl.patch - resolved upstream
- Added patch glx.patch</changelog>
  <changelog author="Max Lin &lt;mlin@suse.com&gt;" date="1591012800">- Remove conditional of applying glx.patch because we have newer Mesa
  in Leap 15.2
- Use upstream patch fix-Mesa-19.3.0-build.patch to replace glx.patch
  * Add fix-Mesa-19.3.0-build.patch
  * Remove glx.patch</changelog>
  <changelog author="&#xC1;kos Sz&#x151;ts &lt;szotsaki@gmail.com&gt;" date="1594036800">- update to 2.6.4
  * Changelog in packaged ChangeLog.md or at
    https://github.com/VirtualGL/virtualgl/blob/2.6.4/ChangeLog.md
- Refreshed patch VirtualGL-link-libs.patch
- Removed patch fix-Mesa-19.3.0-build.patch - resolved upstream</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1608379200">- update to 2.6.5:
  1. Fixed a race condition that sometimes caused various fatal errors in the
  interposed `glXMakeContextCurrent()` function if both GLX drawable IDs passed
  to that function were the same window handle and the corresponding X window was
  simultaneously resized in another thread.
  2. Fixed an oversight whereby the addresses of the interposed
  `glDrawBuffers()`, `glGetString()`, and `glGetStringi()` functions introduced
  in 2.6.3[2] and 2.6.4[1] were not returned from the interposed
  `glXGetProcAddress()` and `glXGetProcAddressARB()` functions.
  3. VirtualGL now works properly with 3D applications that use the
  `glNamedFramebufferDrawBuffer()` and `glNamedFramebufferDrawBuffers()`
  functions (OpenGL 4.5) or the `glFramebufferDrawBufferEXT()` and
  `glFramebufferDrawBuffersEXT()` functions (`GL_EXT_direct_state_access`) and
  render to the front buffer.
  4. Fixed a BadRequest X11 error that occurred when attempting to use the X11
  Transport with a remote X connection.
  5. Worked around an issue with certain GLX implementations that list
  10-bit-per-component FB configs ahead of 8-bit-per-component FB configs and
  incorrectly set `GLX_DRAWABLE_TYPE|=GLX_PIXMAP_BIT` for those 10-bpc FB
  configs, even though they have no X visuals attached.  This caused VirtualGL's
  interposed `glXChooseVisual()` function to choose one of the 10-bpc FB configs
  behind the scenes, which made it impossible to use the VGL Transport.
  6. Fixed an issue whereby, when using the X11 Transport, a vertically flipped
  image of a previously-rendered frame was sometimes displayed if the 3D
  application called `glFlush()` while the front buffer was the active drawing
  buffer and the render mode was `GL_FEEDBACK` or `GL_SELECT`.
  7. `vglserver_config` now works properly if invoked with a relative path
  (for example, `cd /opt/VirtualGL/bin; sudo ./vglserver_config`.)
  8. Worked around a limitation in the AMDGPU drivers that prevented recent
  versions of Google Chrome from enabling GPU acceleration when used with
  VirtualGL.</changelog>
  <changelog author="Anonymous Checkouts &lt;anoncvs@mailinator.com&gt;" date="1670760000">- update to 3.0.2
  * Now supports use of EGL as well as GLX</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1671624000">- update to 3.0.2:
  1. Support for transparent overlay visuals has been retired in this version of
  VirtualGL.  That feature will continue to be maintained in the 2.6.x branch on
  a break/fix basis only.  Most applications that once used transparent overlay
  visuals used them with color index rendering, which was removed in OpenGL 3.1
  in 2009.  Thus, almost all applications that render overlays now do so using
  other mechanisms.  Furthermore, the need for VirtualGL to hand off the
  rendering of transparent overlay visuals to the 2D X server has always limited
  the usefulness of the feature, and the discontinuation of the VirtualGL Client
  for Exceed relegated the feature to Un*x clients (with workstation-class GPUs)
  and the VGL Transport only.  Given that nVidia's implementation of transparent
  overlay visuals requires disabling the X Composite extension, which cannot be
  done in many modern Linux distributions, that further limited the feature to
  the point of uselessness.
  2. The VirtualGL Faker now assigns various permutations of common OpenGL
  rendering attributes to the available 2D X server visuals.  This maximizes the
  chances that "visual hunting" 3D applications (applications that use X11
  functions to obtain a list of 2D X server visuals, then iterate through the
  list with `glXGetConfig()` until they find a visual with a desired set of
  OpenGL rendering attributes) will find a suitable visual.
  `VGL_DEFAULTFBCONFIG` can still be used to assign a specified set of OpenGL
  rendering attributes to all 2D X server visuals, although the usefulness of
  that feature is now very limited.
  3. The VirtualGL Faker now includes an EGL back end that optionally emulates
  the GLX API using a combination of the EGL API (with the
  `EGL_EXT_platform_device` extension) and OpenGL renderbuffer objects (RBOs.)
  On supported platforms, the EGL back end allows the VirtualGL Faker to be used
  without a 3D X server.  The EGL back end can be activated by setting the
  `VGL_DISPLAY` environment variable to the path of a DRI device, such as
  * */dev/dri/card0**, or by passing that device path to `vglrun` using the `-d`
  argument.  Some obsolete OpenGL and GLX features are not supported by the EGL</changelog>
  <changelog author="ming li &lt;mli@suse.com&gt;" date="1701864000">- Update to 3.1:
  1. Fixed an issue in the EGL back end whereby textures and other OpenGL objects
  were not automatically destroyed along with the context and drawable in which
  the objects were created.
  2. Added an environment variable (`VGL_EXITFUNCTION`) that, when set to
  `_exit` or `abort`, causes the VirtualGL Faker to call the specified function
  rather than `exit()` when a non-recoverable error occurs.
  3. Fixed an issue whereby the interposed `eglCreatePlatformWindowSurface()`
  and `eglCreatePlatformWindowSurfaceEXT()` functions incorrectly treated the
  native window argument as an X window handle rather than a pointer to an X
  window handle.  This caused a segfault in VLC when using the OpenGL video
  output module.
  4. `vglserver_config` now works properly with SUSE Linux Enterprise/openSUSE
  Leap 15.
  5. If the GLX back end is in use, then the interposed `eglGetDisplay()` and
  `eglGetPlatformDisplay()` functions now return `EGL_NO_DISPLAY` rather than
  throwing a fatal error.  This allows applications such as Firefox to fail
  gracefully or to fall back and use the GLX API if EGL/X11 is unavailable.
  6. Fixed an issue whereby the VirtualGL Configuration dialog did not pop up if
  the X keyboard extension was enabled on the 2D X server.
  7. The VirtualGL Faker no longer probes the 2D X server for stereo visuals
  unless the VGL Transport or a transport plugin will be used.  Even if the 2D X
  server has stereo visuals, they will never be used with the X11 and XV
  Transports.  Probing the 2D X server for stereo visuals causes problems with
  certain OpenGL implementations and with applications, such as Tecplot 360, that
  include static builds of Mesa.  An undocumented environment variable
  (`VGL_PROBEGLX`) can be used to override the default behavior.
  8. When using the EGL back end, interposed `XQueryExtension(..., "GLX", ...)`
  and `glXQueryExtension()` function calls now return `False`, rather than
  throwing a fatal error, if the 2D X server does not have a GLX extension.  (The
  EGL back end uses the 2D X server's GLX extension for GLX error handling.)
  This allows applications, such as Chrome/Chromium, to fail gracefully or use a
  different API (such as EGL/X11) if the VirtualGL Faker is unable to emulate
  GLX.
  9. The VirtualGL Client now runs on Macs with Apple silicon CPUs (without
  requiring Rosetta 2.)
- update to 3.0.90 (3.1 beta1)
  1. The `vglconnect -x` and `vglconnect -k` options have been retired in this
  version of VirtualGL and will continue to be maintained in the 3.0.x branch on
  a break/fix basis only.  Those options, which had been undocumented since
  VirtualGL 2.6.1, were a throwback to the early days of VirtualGL when SSH was
  not universally available and SSH X11 forwarding sometimes introduced a
  performance penalty.  `vglconnect -x` did not work with most modern operating
  systems, since most modern operating systems disable X11 TCP connections by
  default.
  2. SSL encryption of the VGL Transport has been retired in this version of
  VirtualGL and will continue to be maintained in the 3.0.x branch on a break/fix
  basis only.  That feature, which had not been included in official VirtualGL
  packages since VirtualGL 2.1.x, was not widely used.  Furthermore, SSL
  encryption of the VGL Transport had no performance advantages over SSH
  tunneling on modern systems, and it had some security disadvantages due to its
  reliance on the RSA key exchange algorithm (which made it incompatible with TLS
  v1.3.)
  3. When using the EGL back end, VirtualGL now supports 3D applications
  (including recent versions of Google Chrome/Chromium and Mozilla Firefox) that
  use the EGL/X11 API instead of the GLX API.  As of this writing, VirtualGL does
  not support EGL pixmap surfaces or front buffer/single buffer rendering with
  EGL window surfaces.
  4. On Un*x and Mac clients, `vglconnect` now uses the OpenSSH `ControlMaster`
  option to avoid the need to authenticate with the server multiple times when
  tunneling the VGL Transport through SSH.
  5. `vglconnect` now accepts a new command-line argument (`-v`) that, when
  combined with `-s`, causes VirtualGL to be preloaded into all processes
  launched in the remote shell, thus eliminating the need to invoke `vglrun`.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1715774400">- Use %autosetup macro: allows us to eliminate usage of deprecated
  %patchN syntax.</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1729684800">- update to 3.1.1:
  * The EGL back end now supports OpenGL applications, including
    ANSYS Fluent, that use multiple X11 Display handles to render to
    the same GLX drawable.
  * The VirtualGL Faker now works around an issue whereby
    applications using the GtkGLArea widget with GTK v3.15.2 through
    v4.3.1 failed with "No available configurations for the given
    [RGBA] pixel format" if GTK v3.15.2 through v4.3.1 had previously
    been initialized on the 2D X server without VirtualGL.
  * As required by the EGL spec, the interposed `eglSwapBuffers()`
    function now flushes the current OpenGL context if the surface
    being swapped is bound to that context.  This fixes a flickering
    issue that occurred with recent versions of Firefox.
  * It is no longer necessary to enable the EGL back end in order to
    use VirtualGL with 3D applications that use the EGL/X11 API.  If
    the GLX back end is enabled, then the EGL/X11 interposer will now
    use the 3D X server.
  * Fixed an issue in the VirtualGL Faker that caused random characters
    and other elements of the Firefox browser window to disappear when
    the window was resized.
  * Fixed an issue in VirtualGL's `dlopen()` interposer
    (**libdlfaker.so**) that interfered with the correct operation of
    ANGLE (Almost Native Graphics Layer Engine.)
- add keyring for signature validation</changelog>
</package>
<package pkgid="2b00111f6f83b8e2ef607734662d7046ccdf64740d82e87bf330d13710bc78766d5deb6c070a580450e3254c562c9986a3733c6016851ded03718ef9096e72be" name="VirtualGL" arch="src">
  <version epoch="0" ver="3.1.1" rel="1.1"/>
  <changelog author="dvaleev@suse.com" date="1408622400">- Extend 64bit conditions to s390x ppc64 ppc64le aarch64</changelog>
  <changelog author="tchvatal@suse.com" date="1409313600">- Version bump to beta1 of 2.4 (2.3.90)
- Fix building with -Wl,-z,now and no-undefined
  * VirtualGL-link-libs.patch</changelog>
  <changelog author="tchvatal@suse.com" date="1440763200">- Update to 2.4.1:
  * Various bugfixes not mentioned on changes
  * Refresh VirtualGL-link-libs.patch</changelog>
  <changelog author="tchvatal@suse.com" date="1441108800">- Add proper wxwidgets license string</changelog>
  <changelog author="normand@linux.vnet.ibm.com" date="1466078400">- new gcc6_literal_suffixes.patch</changelog>
  <changelog author="tchvatal@suse.com" date="1466078401">- Version update to 2.5 release
  * See upstream changelog for details
  * Mostly removal of compat for pre-VirtualGL namespace
- Refresh patch VirtualGL-link-libs.patch</changelog>
  <changelog author="tchvatal@suse.com" date="1472040000">- Fix bnc#993645 as-needed eating symbols needed by this lib
  * virtualgl-nodl.patch
- Use system xcb headers
- Rename glxinfo2 to vglxinfo, sounds bit better and more descriptive</changelog>
  <changelog author="tchvatal@suse.com" date="1512388800">- Version update 2.5.2:
  * Various compat fixes all around
- Remove merged gcc6_literal_suffixes.patch
- Refresh VirtualGL-link-libs.patch and virtualgl-nodl.patch</changelog>
  <changelog author="tchvatal@suse.com" date="1512388801">- Disable ssl feature as we can tunnel via ssh and the openssl-1.1
  is not compatible at all currently</changelog>
  <changelog author="tchvatal@suse.com" date="1529409600">- Do not provide the env files which change the preload order
  bsc#1097210</changelog>
  <changelog author="Andreas Schwab &lt;schwab@suse.de&gt;" date="1572868800">- Add riscv64 to the list of 64-bit architectures</changelog>
  <changelog author="Adam Mizerski &lt;adam@mizerski.pl&gt;" date="1581249600">- update to 2.6.3
  * Changelog in packaged ChangeLog.md or at
    https://github.com/VirtualGL/virtualgl/blob/2.6.3/ChangeLog.md
- Refreshed patch VirtualGL-link-libs.patch
- Removed patch virtualgl-nodl.patch - resolved upstream
- Added patch glx.patch</changelog>
  <changelog author="Max Lin &lt;mlin@suse.com&gt;" date="1591012800">- Remove conditional of applying glx.patch because we have newer Mesa
  in Leap 15.2
- Use upstream patch fix-Mesa-19.3.0-build.patch to replace glx.patch
  * Add fix-Mesa-19.3.0-build.patch
  * Remove glx.patch</changelog>
  <changelog author="&#xC1;kos Sz&#x151;ts &lt;szotsaki@gmail.com&gt;" date="1594036800">- update to 2.6.4
  * Changelog in packaged ChangeLog.md or at
    https://github.com/VirtualGL/virtualgl/blob/2.6.4/ChangeLog.md
- Refreshed patch VirtualGL-link-libs.patch
- Removed patch fix-Mesa-19.3.0-build.patch - resolved upstream</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1608379200">- update to 2.6.5:
  1. Fixed a race condition that sometimes caused various fatal errors in the
  interposed `glXMakeContextCurrent()` function if both GLX drawable IDs passed
  to that function were the same window handle and the corresponding X window was
  simultaneously resized in another thread.
  2. Fixed an oversight whereby the addresses of the interposed
  `glDrawBuffers()`, `glGetString()`, and `glGetStringi()` functions introduced
  in 2.6.3[2] and 2.6.4[1] were not returned from the interposed
  `glXGetProcAddress()` and `glXGetProcAddressARB()` functions.
  3. VirtualGL now works properly with 3D applications that use the
  `glNamedFramebufferDrawBuffer()` and `glNamedFramebufferDrawBuffers()`
  functions (OpenGL 4.5) or the `glFramebufferDrawBufferEXT()` and
  `glFramebufferDrawBuffersEXT()` functions (`GL_EXT_direct_state_access`) and
  render to the front buffer.
  4. Fixed a BadRequest X11 error that occurred when attempting to use the X11
  Transport with a remote X connection.
  5. Worked around an issue with certain GLX implementations that list
  10-bit-per-component FB configs ahead of 8-bit-per-component FB configs and
  incorrectly set `GLX_DRAWABLE_TYPE|=GLX_PIXMAP_BIT` for those 10-bpc FB
  configs, even though they have no X visuals attached.  This caused VirtualGL's
  interposed `glXChooseVisual()` function to choose one of the 10-bpc FB configs
  behind the scenes, which made it impossible to use the VGL Transport.
  6. Fixed an issue whereby, when using the X11 Transport, a vertically flipped
  image of a previously-rendered frame was sometimes displayed if the 3D
  application called `glFlush()` while the front buffer was the active drawing
  buffer and the render mode was `GL_FEEDBACK` or `GL_SELECT`.
  7. `vglserver_config` now works properly if invoked with a relative path
  (for example, `cd /opt/VirtualGL/bin; sudo ./vglserver_config`.)
  8. Worked around a limitation in the AMDGPU drivers that prevented recent
  versions of Google Chrome from enabling GPU acceleration when used with
  VirtualGL.</changelog>
  <changelog author="Anonymous Checkouts &lt;anoncvs@mailinator.com&gt;" date="1670760000">- update to 3.0.2
  * Now supports use of EGL as well as GLX</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1671624000">- update to 3.0.2:
  1. Support for transparent overlay visuals has been retired in this version of
  VirtualGL.  That feature will continue to be maintained in the 2.6.x branch on
  a break/fix basis only.  Most applications that once used transparent overlay
  visuals used them with color index rendering, which was removed in OpenGL 3.1
  in 2009.  Thus, almost all applications that render overlays now do so using
  other mechanisms.  Furthermore, the need for VirtualGL to hand off the
  rendering of transparent overlay visuals to the 2D X server has always limited
  the usefulness of the feature, and the discontinuation of the VirtualGL Client
  for Exceed relegated the feature to Un*x clients (with workstation-class GPUs)
  and the VGL Transport only.  Given that nVidia's implementation of transparent
  overlay visuals requires disabling the X Composite extension, which cannot be
  done in many modern Linux distributions, that further limited the feature to
  the point of uselessness.
  2. The VirtualGL Faker now assigns various permutations of common OpenGL
  rendering attributes to the available 2D X server visuals.  This maximizes the
  chances that "visual hunting" 3D applications (applications that use X11
  functions to obtain a list of 2D X server visuals, then iterate through the
  list with `glXGetConfig()` until they find a visual with a desired set of
  OpenGL rendering attributes) will find a suitable visual.
  `VGL_DEFAULTFBCONFIG` can still be used to assign a specified set of OpenGL
  rendering attributes to all 2D X server visuals, although the usefulness of
  that feature is now very limited.
  3. The VirtualGL Faker now includes an EGL back end that optionally emulates
  the GLX API using a combination of the EGL API (with the
  `EGL_EXT_platform_device` extension) and OpenGL renderbuffer objects (RBOs.)
  On supported platforms, the EGL back end allows the VirtualGL Faker to be used
  without a 3D X server.  The EGL back end can be activated by setting the
  `VGL_DISPLAY` environment variable to the path of a DRI device, such as
  * */dev/dri/card0**, or by passing that device path to `vglrun` using the `-d`
  argument.  Some obsolete OpenGL and GLX features are not supported by the EGL</changelog>
  <changelog author="ming li &lt;mli@suse.com&gt;" date="1701864000">- Update to 3.1:
  1. Fixed an issue in the EGL back end whereby textures and other OpenGL objects
  were not automatically destroyed along with the context and drawable in which
  the objects were created.
  2. Added an environment variable (`VGL_EXITFUNCTION`) that, when set to
  `_exit` or `abort`, causes the VirtualGL Faker to call the specified function
  rather than `exit()` when a non-recoverable error occurs.
  3. Fixed an issue whereby the interposed `eglCreatePlatformWindowSurface()`
  and `eglCreatePlatformWindowSurfaceEXT()` functions incorrectly treated the
  native window argument as an X window handle rather than a pointer to an X
  window handle.  This caused a segfault in VLC when using the OpenGL video
  output module.
  4. `vglserver_config` now works properly with SUSE Linux Enterprise/openSUSE
  Leap 15.
  5. If the GLX back end is in use, then the interposed `eglGetDisplay()` and
  `eglGetPlatformDisplay()` functions now return `EGL_NO_DISPLAY` rather than
  throwing a fatal error.  This allows applications such as Firefox to fail
  gracefully or to fall back and use the GLX API if EGL/X11 is unavailable.
  6. Fixed an issue whereby the VirtualGL Configuration dialog did not pop up if
  the X keyboard extension was enabled on the 2D X server.
  7. The VirtualGL Faker no longer probes the 2D X server for stereo visuals
  unless the VGL Transport or a transport plugin will be used.  Even if the 2D X
  server has stereo visuals, they will never be used with the X11 and XV
  Transports.  Probing the 2D X server for stereo visuals causes problems with
  certain OpenGL implementations and with applications, such as Tecplot 360, that
  include static builds of Mesa.  An undocumented environment variable
  (`VGL_PROBEGLX`) can be used to override the default behavior.
  8. When using the EGL back end, interposed `XQueryExtension(..., "GLX", ...)`
  and `glXQueryExtension()` function calls now return `False`, rather than
  throwing a fatal error, if the 2D X server does not have a GLX extension.  (The
  EGL back end uses the 2D X server's GLX extension for GLX error handling.)
  This allows applications, such as Chrome/Chromium, to fail gracefully or use a
  different API (such as EGL/X11) if the VirtualGL Faker is unable to emulate
  GLX.
  9. The VirtualGL Client now runs on Macs with Apple silicon CPUs (without
  requiring Rosetta 2.)
- update to 3.0.90 (3.1 beta1)
  1. The `vglconnect -x` and `vglconnect -k` options have been retired in this
  version of VirtualGL and will continue to be maintained in the 3.0.x branch on
  a break/fix basis only.  Those options, which had been undocumented since
  VirtualGL 2.6.1, were a throwback to the early days of VirtualGL when SSH was
  not universally available and SSH X11 forwarding sometimes introduced a
  performance penalty.  `vglconnect -x` did not work with most modern operating
  systems, since most modern operating systems disable X11 TCP connections by
  default.
  2. SSL encryption of the VGL Transport has been retired in this version of
  VirtualGL and will continue to be maintained in the 3.0.x branch on a break/fix
  basis only.  That feature, which had not been included in official VirtualGL
  packages since VirtualGL 2.1.x, was not widely used.  Furthermore, SSL
  encryption of the VGL Transport had no performance advantages over SSH
  tunneling on modern systems, and it had some security disadvantages due to its
  reliance on the RSA key exchange algorithm (which made it incompatible with TLS
  v1.3.)
  3. When using the EGL back end, VirtualGL now supports 3D applications
  (including recent versions of Google Chrome/Chromium and Mozilla Firefox) that
  use the EGL/X11 API instead of the GLX API.  As of this writing, VirtualGL does
  not support EGL pixmap surfaces or front buffer/single buffer rendering with
  EGL window surfaces.
  4. On Un*x and Mac clients, `vglconnect` now uses the OpenSSH `ControlMaster`
  option to avoid the need to authenticate with the server multiple times when
  tunneling the VGL Transport through SSH.
  5. `vglconnect` now accepts a new command-line argument (`-v`) that, when
  combined with `-s`, causes VirtualGL to be preloaded into all processes
  launched in the remote shell, thus eliminating the need to invoke `vglrun`.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1715774400">- Use %autosetup macro: allows us to eliminate usage of deprecated
  %patchN syntax.</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1729684800">- update to 3.1.1:
  * The EGL back end now supports OpenGL applications, including
    ANSYS Fluent, that use multiple X11 Display handles to render to
    the same GLX drawable.
  * The VirtualGL Faker now works around an issue whereby
    applications using the GtkGLArea widget with GTK v3.15.2 through
    v4.3.1 failed with "No available configurations for the given
    [RGBA] pixel format" if GTK v3.15.2 through v4.3.1 had previously
    been initialized on the 2D X server without VirtualGL.
  * As required by the EGL spec, the interposed `eglSwapBuffers()`
    function now flushes the current OpenGL context if the surface
    being swapped is bound to that context.  This fixes a flickering
    issue that occurred with recent versions of Firefox.
  * It is no longer necessary to enable the EGL back end in order to
    use VirtualGL with 3D applications that use the EGL/X11 API.  If
    the GLX back end is enabled, then the EGL/X11 interposer will now
    use the 3D X server.
  * Fixed an issue in the VirtualGL Faker that caused random characters
    and other elements of the Firefox browser window to disappear when
    the window was resized.
  * Fixed an issue in VirtualGL's `dlopen()` interposer
    (**libdlfaker.so**) that interfered with the correct operation of
    ANGLE (Almost Native Graphics Layer Engine.)
- add keyring for signature validation</changelog>
</package>
<package pkgid="5a093a2ba5e6cd065eef0629434695bd8c9d5c3d91237437996da595ea43dd1f5b22aa42054282a9298ea05e34157d814dc8022e6fef7537c1358dfde48758a8" name="VirtualGL" arch="x86_64">
  <version epoch="0" ver="3.1.1" rel="1.1"/>
  <changelog author="Andreas Schwab &lt;schwab@suse.de&gt;" date="1572868800">- Add riscv64 to the list of 64-bit architectures</changelog>
  <changelog author="Adam Mizerski &lt;adam@mizerski.pl&gt;" date="1581249600">- update to 2.6.3
  * Changelog in packaged ChangeLog.md or at
    https://github.com/VirtualGL/virtualgl/blob/2.6.3/ChangeLog.md
- Refreshed patch VirtualGL-link-libs.patch
- Removed patch virtualgl-nodl.patch - resolved upstream
- Added patch glx.patch</changelog>
  <changelog author="Max Lin &lt;mlin@suse.com&gt;" date="1591012800">- Remove conditional of applying glx.patch because we have newer Mesa
  in Leap 15.2
- Use upstream patch fix-Mesa-19.3.0-build.patch to replace glx.patch
  * Add fix-Mesa-19.3.0-build.patch
  * Remove glx.patch</changelog>
  <changelog author="&#xC1;kos Sz&#x151;ts &lt;szotsaki@gmail.com&gt;" date="1594036800">- update to 2.6.4
  * Changelog in packaged ChangeLog.md or at
    https://github.com/VirtualGL/virtualgl/blob/2.6.4/ChangeLog.md
- Refreshed patch VirtualGL-link-libs.patch
- Removed patch fix-Mesa-19.3.0-build.patch - resolved upstream</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1608379200">- update to 2.6.5:
  1. Fixed a race condition that sometimes caused various fatal errors in the
  interposed `glXMakeContextCurrent()` function if both GLX drawable IDs passed
  to that function were the same window handle and the corresponding X window was
  simultaneously resized in another thread.
  2. Fixed an oversight whereby the addresses of the interposed
  `glDrawBuffers()`, `glGetString()`, and `glGetStringi()` functions introduced
  in 2.6.3[2] and 2.6.4[1] were not returned from the interposed
  `glXGetProcAddress()` and `glXGetProcAddressARB()` functions.
  3. VirtualGL now works properly with 3D applications that use the
  `glNamedFramebufferDrawBuffer()` and `glNamedFramebufferDrawBuffers()`
  functions (OpenGL 4.5) or the `glFramebufferDrawBufferEXT()` and
  `glFramebufferDrawBuffersEXT()` functions (`GL_EXT_direct_state_access`) and
  render to the front buffer.
  4. Fixed a BadRequest X11 error that occurred when attempting to use the X11
  Transport with a remote X connection.
  5. Worked around an issue with certain GLX implementations that list
  10-bit-per-component FB configs ahead of 8-bit-per-component FB configs and
  incorrectly set `GLX_DRAWABLE_TYPE|=GLX_PIXMAP_BIT` for those 10-bpc FB
  configs, even though they have no X visuals attached.  This caused VirtualGL's
  interposed `glXChooseVisual()` function to choose one of the 10-bpc FB configs
  behind the scenes, which made it impossible to use the VGL Transport.
  6. Fixed an issue whereby, when using the X11 Transport, a vertically flipped
  image of a previously-rendered frame was sometimes displayed if the 3D
  application called `glFlush()` while the front buffer was the active drawing
  buffer and the render mode was `GL_FEEDBACK` or `GL_SELECT`.
  7. `vglserver_config` now works properly if invoked with a relative path
  (for example, `cd /opt/VirtualGL/bin; sudo ./vglserver_config`.)
  8. Worked around a limitation in the AMDGPU drivers that prevented recent
  versions of Google Chrome from enabling GPU acceleration when used with
  VirtualGL.</changelog>
  <changelog author="Anonymous Checkouts &lt;anoncvs@mailinator.com&gt;" date="1670760000">- update to 3.0.2
  * Now supports use of EGL as well as GLX</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1671624000">- update to 3.0.2:
  1. Support for transparent overlay visuals has been retired in this version of
  VirtualGL.  That feature will continue to be maintained in the 2.6.x branch on
  a break/fix basis only.  Most applications that once used transparent overlay
  visuals used them with color index rendering, which was removed in OpenGL 3.1
  in 2009.  Thus, almost all applications that render overlays now do so using
  other mechanisms.  Furthermore, the need for VirtualGL to hand off the
  rendering of transparent overlay visuals to the 2D X server has always limited
  the usefulness of the feature, and the discontinuation of the VirtualGL Client
  for Exceed relegated the feature to Un*x clients (with workstation-class GPUs)
  and the VGL Transport only.  Given that nVidia's implementation of transparent
  overlay visuals requires disabling the X Composite extension, which cannot be
  done in many modern Linux distributions, that further limited the feature to
  the point of uselessness.
  2. The VirtualGL Faker now assigns various permutations of common OpenGL
  rendering attributes to the available 2D X server visuals.  This maximizes the
  chances that "visual hunting" 3D applications (applications that use X11
  functions to obtain a list of 2D X server visuals, then iterate through the
  list with `glXGetConfig()` until they find a visual with a desired set of
  OpenGL rendering attributes) will find a suitable visual.
  `VGL_DEFAULTFBCONFIG` can still be used to assign a specified set of OpenGL
  rendering attributes to all 2D X server visuals, although the usefulness of
  that feature is now very limited.
  3. The VirtualGL Faker now includes an EGL back end that optionally emulates
  the GLX API using a combination of the EGL API (with the
  `EGL_EXT_platform_device` extension) and OpenGL renderbuffer objects (RBOs.)
  On supported platforms, the EGL back end allows the VirtualGL Faker to be used
  without a 3D X server.  The EGL back end can be activated by setting the
  `VGL_DISPLAY` environment variable to the path of a DRI device, such as
  * */dev/dri/card0**, or by passing that device path to `vglrun` using the `-d`
  argument.  Some obsolete OpenGL and GLX features are not supported by the EGL</changelog>
  <changelog author="ming li &lt;mli@suse.com&gt;" date="1701864000">- Update to 3.1:
  1. Fixed an issue in the EGL back end whereby textures and other OpenGL objects
  were not automatically destroyed along with the context and drawable in which
  the objects were created.
  2. Added an environment variable (`VGL_EXITFUNCTION`) that, when set to
  `_exit` or `abort`, causes the VirtualGL Faker to call the specified function
  rather than `exit()` when a non-recoverable error occurs.
  3. Fixed an issue whereby the interposed `eglCreatePlatformWindowSurface()`
  and `eglCreatePlatformWindowSurfaceEXT()` functions incorrectly treated the
  native window argument as an X window handle rather than a pointer to an X
  window handle.  This caused a segfault in VLC when using the OpenGL video
  output module.
  4. `vglserver_config` now works properly with SUSE Linux Enterprise/openSUSE
  Leap 15.
  5. If the GLX back end is in use, then the interposed `eglGetDisplay()` and
  `eglGetPlatformDisplay()` functions now return `EGL_NO_DISPLAY` rather than
  throwing a fatal error.  This allows applications such as Firefox to fail
  gracefully or to fall back and use the GLX API if EGL/X11 is unavailable.
  6. Fixed an issue whereby the VirtualGL Configuration dialog did not pop up if
  the X keyboard extension was enabled on the 2D X server.
  7. The VirtualGL Faker no longer probes the 2D X server for stereo visuals
  unless the VGL Transport or a transport plugin will be used.  Even if the 2D X
  server has stereo visuals, they will never be used with the X11 and XV
  Transports.  Probing the 2D X server for stereo visuals causes problems with
  certain OpenGL implementations and with applications, such as Tecplot 360, that
  include static builds of Mesa.  An undocumented environment variable
  (`VGL_PROBEGLX`) can be used to override the default behavior.
  8. When using the EGL back end, interposed `XQueryExtension(..., "GLX", ...)`
  and `glXQueryExtension()` function calls now return `False`, rather than
  throwing a fatal error, if the 2D X server does not have a GLX extension.  (The
  EGL back end uses the 2D X server's GLX extension for GLX error handling.)
  This allows applications, such as Chrome/Chromium, to fail gracefully or use a
  different API (such as EGL/X11) if the VirtualGL Faker is unable to emulate
  GLX.
  9. The VirtualGL Client now runs on Macs with Apple silicon CPUs (without
  requiring Rosetta 2.)
- update to 3.0.90 (3.1 beta1)
  1. The `vglconnect -x` and `vglconnect -k` options have been retired in this
  version of VirtualGL and will continue to be maintained in the 3.0.x branch on
  a break/fix basis only.  Those options, which had been undocumented since
  VirtualGL 2.6.1, were a throwback to the early days of VirtualGL when SSH was
  not universally available and SSH X11 forwarding sometimes introduced a
  performance penalty.  `vglconnect -x` did not work with most modern operating
  systems, since most modern operating systems disable X11 TCP connections by
  default.
  2. SSL encryption of the VGL Transport has been retired in this version of
  VirtualGL and will continue to be maintained in the 3.0.x branch on a break/fix
  basis only.  That feature, which had not been included in official VirtualGL
  packages since VirtualGL 2.1.x, was not widely used.  Furthermore, SSL
  encryption of the VGL Transport had no performance advantages over SSH
  tunneling on modern systems, and it had some security disadvantages due to its
  reliance on the RSA key exchange algorithm (which made it incompatible with TLS
  v1.3.)
  3. When using the EGL back end, VirtualGL now supports 3D applications
  (including recent versions of Google Chrome/Chromium and Mozilla Firefox) that
  use the EGL/X11 API instead of the GLX API.  As of this writing, VirtualGL does
  not support EGL pixmap surfaces or front buffer/single buffer rendering with
  EGL window surfaces.
  4. On Un*x and Mac clients, `vglconnect` now uses the OpenSSH `ControlMaster`
  option to avoid the need to authenticate with the server multiple times when
  tunneling the VGL Transport through SSH.
  5. `vglconnect` now accepts a new command-line argument (`-v`) that, when
  combined with `-s`, causes VirtualGL to be preloaded into all processes
  launched in the remote shell, thus eliminating the need to invoke `vglrun`.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1715774400">- Use %autosetup macro: allows us to eliminate usage of deprecated
  %patchN syntax.</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1729684800">- update to 3.1.1:
  * The EGL back end now supports OpenGL applications, including
    ANSYS Fluent, that use multiple X11 Display handles to render to
    the same GLX drawable.
  * The VirtualGL Faker now works around an issue whereby
    applications using the GtkGLArea widget with GTK v3.15.2 through
    v4.3.1 failed with "No available configurations for the given
    [RGBA] pixel format" if GTK v3.15.2 through v4.3.1 had previously
    been initialized on the 2D X server without VirtualGL.
  * As required by the EGL spec, the interposed `eglSwapBuffers()`
    function now flushes the current OpenGL context if the surface
    being swapped is bound to that context.  This fixes a flickering
    issue that occurred with recent versions of Firefox.
  * It is no longer necessary to enable the EGL back end in order to
    use VirtualGL with 3D applications that use the EGL/X11 API.  If
    the GLX back end is enabled, then the EGL/X11 interposer will now
    use the 3D X server.
  * Fixed an issue in the VirtualGL Faker that caused random characters
    and other elements of the Firefox browser window to disappear when
    the window was resized.
  * Fixed an issue in VirtualGL's `dlopen()` interposer
    (**libdlfaker.so**) that interfered with the correct operation of
    ANGLE (Almost Native Graphics Layer Engine.)
- add keyring for signature validation</changelog>
</package>
<package pkgid="317b5a3c31da917b3787f309dbec43bc1a6de93c9d616ad8feab264014227a1cb1713dec5f0010c545f94bc082dcbe0572ff74eec669d9648b2ba24ccc0ce056" name="VirtualGL-32bit" arch="x86_64">
  <version epoch="0" ver="3.1.1" rel="1.0.2.1.sr20241002"/>
  <changelog author="Andreas Schwab &lt;schwab@suse.de&gt;" date="1572868800">- Add riscv64 to the list of 64-bit architectures</changelog>
  <changelog author="Adam Mizerski &lt;adam@mizerski.pl&gt;" date="1581249600">- update to 2.6.3
  * Changelog in packaged ChangeLog.md or at
    https://github.com/VirtualGL/virtualgl/blob/2.6.3/ChangeLog.md
- Refreshed patch VirtualGL-link-libs.patch
- Removed patch virtualgl-nodl.patch - resolved upstream
- Added patch glx.patch</changelog>
  <changelog author="Max Lin &lt;mlin@suse.com&gt;" date="1591012800">- Remove conditional of applying glx.patch because we have newer Mesa
  in Leap 15.2
- Use upstream patch fix-Mesa-19.3.0-build.patch to replace glx.patch
  * Add fix-Mesa-19.3.0-build.patch
  * Remove glx.patch</changelog>
  <changelog author="&#xC1;kos Sz&#x151;ts &lt;szotsaki@gmail.com&gt;" date="1594036800">- update to 2.6.4
  * Changelog in packaged ChangeLog.md or at
    https://github.com/VirtualGL/virtualgl/blob/2.6.4/ChangeLog.md
- Refreshed patch VirtualGL-link-libs.patch
- Removed patch fix-Mesa-19.3.0-build.patch - resolved upstream</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1608379200">- update to 2.6.5:
  1. Fixed a race condition that sometimes caused various fatal errors in the
  interposed `glXMakeContextCurrent()` function if both GLX drawable IDs passed
  to that function were the same window handle and the corresponding X window was
  simultaneously resized in another thread.
  2. Fixed an oversight whereby the addresses of the interposed
  `glDrawBuffers()`, `glGetString()`, and `glGetStringi()` functions introduced
  in 2.6.3[2] and 2.6.4[1] were not returned from the interposed
  `glXGetProcAddress()` and `glXGetProcAddressARB()` functions.
  3. VirtualGL now works properly with 3D applications that use the
  `glNamedFramebufferDrawBuffer()` and `glNamedFramebufferDrawBuffers()`
  functions (OpenGL 4.5) or the `glFramebufferDrawBufferEXT()` and
  `glFramebufferDrawBuffersEXT()` functions (`GL_EXT_direct_state_access`) and
  render to the front buffer.
  4. Fixed a BadRequest X11 error that occurred when attempting to use the X11
  Transport with a remote X connection.
  5. Worked around an issue with certain GLX implementations that list
  10-bit-per-component FB configs ahead of 8-bit-per-component FB configs and
  incorrectly set `GLX_DRAWABLE_TYPE|=GLX_PIXMAP_BIT` for those 10-bpc FB
  configs, even though they have no X visuals attached.  This caused VirtualGL's
  interposed `glXChooseVisual()` function to choose one of the 10-bpc FB configs
  behind the scenes, which made it impossible to use the VGL Transport.
  6. Fixed an issue whereby, when using the X11 Transport, a vertically flipped
  image of a previously-rendered frame was sometimes displayed if the 3D
  application called `glFlush()` while the front buffer was the active drawing
  buffer and the render mode was `GL_FEEDBACK` or `GL_SELECT`.
  7. `vglserver_config` now works properly if invoked with a relative path
  (for example, `cd /opt/VirtualGL/bin; sudo ./vglserver_config`.)
  8. Worked around a limitation in the AMDGPU drivers that prevented recent
  versions of Google Chrome from enabling GPU acceleration when used with
  VirtualGL.</changelog>
  <changelog author="Anonymous Checkouts &lt;anoncvs@mailinator.com&gt;" date="1670760000">- update to 3.0.2
  * Now supports use of EGL as well as GLX</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1671624000">- update to 3.0.2:
  1. Support for transparent overlay visuals has been retired in this version of
  VirtualGL.  That feature will continue to be maintained in the 2.6.x branch on
  a break/fix basis only.  Most applications that once used transparent overlay
  visuals used them with color index rendering, which was removed in OpenGL 3.1
  in 2009.  Thus, almost all applications that render overlays now do so using
  other mechanisms.  Furthermore, the need for VirtualGL to hand off the
  rendering of transparent overlay visuals to the 2D X server has always limited
  the usefulness of the feature, and the discontinuation of the VirtualGL Client
  for Exceed relegated the feature to Un*x clients (with workstation-class GPUs)
  and the VGL Transport only.  Given that nVidia's implementation of transparent
  overlay visuals requires disabling the X Composite extension, which cannot be
  done in many modern Linux distributions, that further limited the feature to
  the point of uselessness.
  2. The VirtualGL Faker now assigns various permutations of common OpenGL
  rendering attributes to the available 2D X server visuals.  This maximizes the
  chances that "visual hunting" 3D applications (applications that use X11
  functions to obtain a list of 2D X server visuals, then iterate through the
  list with `glXGetConfig()` until they find a visual with a desired set of
  OpenGL rendering attributes) will find a suitable visual.
  `VGL_DEFAULTFBCONFIG` can still be used to assign a specified set of OpenGL
  rendering attributes to all 2D X server visuals, although the usefulness of
  that feature is now very limited.
  3. The VirtualGL Faker now includes an EGL back end that optionally emulates
  the GLX API using a combination of the EGL API (with the
  `EGL_EXT_platform_device` extension) and OpenGL renderbuffer objects (RBOs.)
  On supported platforms, the EGL back end allows the VirtualGL Faker to be used
  without a 3D X server.  The EGL back end can be activated by setting the
  `VGL_DISPLAY` environment variable to the path of a DRI device, such as
  * */dev/dri/card0**, or by passing that device path to `vglrun` using the `-d`
  argument.  Some obsolete OpenGL and GLX features are not supported by the EGL</changelog>
  <changelog author="ming li &lt;mli@suse.com&gt;" date="1701864000">- Update to 3.1:
  1. Fixed an issue in the EGL back end whereby textures and other OpenGL objects
  were not automatically destroyed along with the context and drawable in which
  the objects were created.
  2. Added an environment variable (`VGL_EXITFUNCTION`) that, when set to
  `_exit` or `abort`, causes the VirtualGL Faker to call the specified function
  rather than `exit()` when a non-recoverable error occurs.
  3. Fixed an issue whereby the interposed `eglCreatePlatformWindowSurface()`
  and `eglCreatePlatformWindowSurfaceEXT()` functions incorrectly treated the
  native window argument as an X window handle rather than a pointer to an X
  window handle.  This caused a segfault in VLC when using the OpenGL video
  output module.
  4. `vglserver_config` now works properly with SUSE Linux Enterprise/openSUSE
  Leap 15.
  5. If the GLX back end is in use, then the interposed `eglGetDisplay()` and
  `eglGetPlatformDisplay()` functions now return `EGL_NO_DISPLAY` rather than
  throwing a fatal error.  This allows applications such as Firefox to fail
  gracefully or to fall back and use the GLX API if EGL/X11 is unavailable.
  6. Fixed an issue whereby the VirtualGL Configuration dialog did not pop up if
  the X keyboard extension was enabled on the 2D X server.
  7. The VirtualGL Faker no longer probes the 2D X server for stereo visuals
  unless the VGL Transport or a transport plugin will be used.  Even if the 2D X
  server has stereo visuals, they will never be used with the X11 and XV
  Transports.  Probing the 2D X server for stereo visuals causes problems with
  certain OpenGL implementations and with applications, such as Tecplot 360, that
  include static builds of Mesa.  An undocumented environment variable
  (`VGL_PROBEGLX`) can be used to override the default behavior.
  8. When using the EGL back end, interposed `XQueryExtension(..., "GLX", ...)`
  and `glXQueryExtension()` function calls now return `False`, rather than
  throwing a fatal error, if the 2D X server does not have a GLX extension.  (The
  EGL back end uses the 2D X server's GLX extension for GLX error handling.)
  This allows applications, such as Chrome/Chromium, to fail gracefully or use a
  different API (such as EGL/X11) if the VirtualGL Faker is unable to emulate
  GLX.
  9. The VirtualGL Client now runs on Macs with Apple silicon CPUs (without
  requiring Rosetta 2.)
- update to 3.0.90 (3.1 beta1)
  1. The `vglconnect -x` and `vglconnect -k` options have been retired in this
  version of VirtualGL and will continue to be maintained in the 3.0.x branch on
  a break/fix basis only.  Those options, which had been undocumented since
  VirtualGL 2.6.1, were a throwback to the early days of VirtualGL when SSH was
  not universally available and SSH X11 forwarding sometimes introduced a
  performance penalty.  `vglconnect -x` did not work with most modern operating
  systems, since most modern operating systems disable X11 TCP connections by
  default.
  2. SSL encryption of the VGL Transport has been retired in this version of
  VirtualGL and will continue to be maintained in the 3.0.x branch on a break/fix
  basis only.  That feature, which had not been included in official VirtualGL
  packages since VirtualGL 2.1.x, was not widely used.  Furthermore, SSL
  encryption of the VGL Transport had no performance advantages over SSH
  tunneling on modern systems, and it had some security disadvantages due to its
  reliance on the RSA key exchange algorithm (which made it incompatible with TLS
  v1.3.)
  3. When using the EGL back end, VirtualGL now supports 3D applications
  (including recent versions of Google Chrome/Chromium and Mozilla Firefox) that
  use the EGL/X11 API instead of the GLX API.  As of this writing, VirtualGL does
  not support EGL pixmap surfaces or front buffer/single buffer rendering with
  EGL window surfaces.
  4. On Un*x and Mac clients, `vglconnect` now uses the OpenSSH `ControlMaster`
  option to avoid the need to authenticate with the server multiple times when
  tunneling the VGL Transport through SSH.
  5. `vglconnect` now accepts a new command-line argument (`-v`) that, when
  combined with `-s`, causes VirtualGL to be preloaded into all processes
  launched in the remote shell, thus eliminating the need to invoke `vglrun`.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1715774400">- Use %autosetup macro: allows us to eliminate usage of deprecated
  %patchN syntax.</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1729684800">- update to 3.1.1:
  * The EGL back end now supports OpenGL applications, including
    ANSYS Fluent, that use multiple X11 Display handles to render to
    the same GLX drawable.
  * The VirtualGL Faker now works around an issue whereby
    applications using the GtkGLArea widget with GTK v3.15.2 through
    v4.3.1 failed with "No available configurations for the given
    [RGBA] pixel format" if GTK v3.15.2 through v4.3.1 had previously
    been initialized on the 2D X server without VirtualGL.
  * As required by the EGL spec, the interposed `eglSwapBuffers()`
    function now flushes the current OpenGL context if the surface
    being swapped is bound to that context.  This fixes a flickering
    issue that occurred with recent versions of Firefox.
  * It is no longer necessary to enable the EGL back end in order to
    use VirtualGL with 3D applications that use the EGL/X11 API.  If
    the GLX back end is enabled, then the EGL/X11 interposer will now
    use the 3D X server.
  * Fixed an issue in the VirtualGL Faker that caused random characters
    and other elements of the Firefox browser window to disappear when
    the window was resized.
  * Fixed an issue in VirtualGL's `dlopen()` interposer
    (**libdlfaker.so**) that interfered with the correct operation of
    ANGLE (Almost Native Graphics Layer Engine.)
- add keyring for signature validation</changelog>
</package>
<package pkgid="93f9e55d35bebd331ba4612a84c5f3b76a2f0ac704b301f9b0dc1d344d8fd51b7a72449276dc01b3e545ebf04883702d7a77417ebc7b4b7b338c4a0b8515f109" name="VirtualGL-32bit-debuginfo" arch="x86_64">
  <version epoch="0" ver="3.1.1" rel="1.0.2.1.sr20241002"/>
  <changelog author="Andreas Schwab &lt;schwab@suse.de&gt;" date="1572868800">- Add riscv64 to the list of 64-bit architectures</changelog>
  <changelog author="Adam Mizerski &lt;adam@mizerski.pl&gt;" date="1581249600">- update to 2.6.3
  * Changelog in packaged ChangeLog.md or at
    https://github.com/VirtualGL/virtualgl/blob/2.6.3/ChangeLog.md
- Refreshed patch VirtualGL-link-libs.patch
- Removed patch virtualgl-nodl.patch - resolved upstream
- Added patch glx.patch</changelog>
  <changelog author="Max Lin &lt;mlin@suse.com&gt;" date="1591012800">- Remove conditional of applying glx.patch because we have newer Mesa
  in Leap 15.2
- Use upstream patch fix-Mesa-19.3.0-build.patch to replace glx.patch
  * Add fix-Mesa-19.3.0-build.patch
  * Remove glx.patch</changelog>
  <changelog author="&#xC1;kos Sz&#x151;ts &lt;szotsaki@gmail.com&gt;" date="1594036800">- update to 2.6.4
  * Changelog in packaged ChangeLog.md or at
    https://github.com/VirtualGL/virtualgl/blob/2.6.4/ChangeLog.md
- Refreshed patch VirtualGL-link-libs.patch
- Removed patch fix-Mesa-19.3.0-build.patch - resolved upstream</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1608379200">- update to 2.6.5:
  1. Fixed a race condition that sometimes caused various fatal errors in the
  interposed `glXMakeContextCurrent()` function if both GLX drawable IDs passed
  to that function were the same window handle and the corresponding X window was
  simultaneously resized in another thread.
  2. Fixed an oversight whereby the addresses of the interposed
  `glDrawBuffers()`, `glGetString()`, and `glGetStringi()` functions introduced
  in 2.6.3[2] and 2.6.4[1] were not returned from the interposed
  `glXGetProcAddress()` and `glXGetProcAddressARB()` functions.
  3. VirtualGL now works properly with 3D applications that use the
  `glNamedFramebufferDrawBuffer()` and `glNamedFramebufferDrawBuffers()`
  functions (OpenGL 4.5) or the `glFramebufferDrawBufferEXT()` and
  `glFramebufferDrawBuffersEXT()` functions (`GL_EXT_direct_state_access`) and
  render to the front buffer.
  4. Fixed a BadRequest X11 error that occurred when attempting to use the X11
  Transport with a remote X connection.
  5. Worked around an issue with certain GLX implementations that list
  10-bit-per-component FB configs ahead of 8-bit-per-component FB configs and
  incorrectly set `GLX_DRAWABLE_TYPE|=GLX_PIXMAP_BIT` for those 10-bpc FB
  configs, even though they have no X visuals attached.  This caused VirtualGL's
  interposed `glXChooseVisual()` function to choose one of the 10-bpc FB configs
  behind the scenes, which made it impossible to use the VGL Transport.
  6. Fixed an issue whereby, when using the X11 Transport, a vertically flipped
  image of a previously-rendered frame was sometimes displayed if the 3D
  application called `glFlush()` while the front buffer was the active drawing
  buffer and the render mode was `GL_FEEDBACK` or `GL_SELECT`.
  7. `vglserver_config` now works properly if invoked with a relative path
  (for example, `cd /opt/VirtualGL/bin; sudo ./vglserver_config`.)
  8. Worked around a limitation in the AMDGPU drivers that prevented recent
  versions of Google Chrome from enabling GPU acceleration when used with
  VirtualGL.</changelog>
  <changelog author="Anonymous Checkouts &lt;anoncvs@mailinator.com&gt;" date="1670760000">- update to 3.0.2
  * Now supports use of EGL as well as GLX</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1671624000">- update to 3.0.2:
  1. Support for transparent overlay visuals has been retired in this version of
  VirtualGL.  That feature will continue to be maintained in the 2.6.x branch on
  a break/fix basis only.  Most applications that once used transparent overlay
  visuals used them with color index rendering, which was removed in OpenGL 3.1
  in 2009.  Thus, almost all applications that render overlays now do so using
  other mechanisms.  Furthermore, the need for VirtualGL to hand off the
  rendering of transparent overlay visuals to the 2D X server has always limited
  the usefulness of the feature, and the discontinuation of the VirtualGL Client
  for Exceed relegated the feature to Un*x clients (with workstation-class GPUs)
  and the VGL Transport only.  Given that nVidia's implementation of transparent
  overlay visuals requires disabling the X Composite extension, which cannot be
  done in many modern Linux distributions, that further limited the feature to
  the point of uselessness.
  2. The VirtualGL Faker now assigns various permutations of common OpenGL
  rendering attributes to the available 2D X server visuals.  This maximizes the
  chances that "visual hunting" 3D applications (applications that use X11
  functions to obtain a list of 2D X server visuals, then iterate through the
  list with `glXGetConfig()` until they find a visual with a desired set of
  OpenGL rendering attributes) will find a suitable visual.
  `VGL_DEFAULTFBCONFIG` can still be used to assign a specified set of OpenGL
  rendering attributes to all 2D X server visuals, although the usefulness of
  that feature is now very limited.
  3. The VirtualGL Faker now includes an EGL back end that optionally emulates
  the GLX API using a combination of the EGL API (with the
  `EGL_EXT_platform_device` extension) and OpenGL renderbuffer objects (RBOs.)
  On supported platforms, the EGL back end allows the VirtualGL Faker to be used
  without a 3D X server.  The EGL back end can be activated by setting the
  `VGL_DISPLAY` environment variable to the path of a DRI device, such as
  * */dev/dri/card0**, or by passing that device path to `vglrun` using the `-d`
  argument.  Some obsolete OpenGL and GLX features are not supported by the EGL</changelog>
  <changelog author="ming li &lt;mli@suse.com&gt;" date="1701864000">- Update to 3.1:
  1. Fixed an issue in the EGL back end whereby textures and other OpenGL objects
  were not automatically destroyed along with the context and drawable in which
  the objects were created.
  2. Added an environment variable (`VGL_EXITFUNCTION`) that, when set to
  `_exit` or `abort`, causes the VirtualGL Faker to call the specified function
  rather than `exit()` when a non-recoverable error occurs.
  3. Fixed an issue whereby the interposed `eglCreatePlatformWindowSurface()`
  and `eglCreatePlatformWindowSurfaceEXT()` functions incorrectly treated the
  native window argument as an X window handle rather than a pointer to an X
  window handle.  This caused a segfault in VLC when using the OpenGL video
  output module.
  4. `vglserver_config` now works properly with SUSE Linux Enterprise/openSUSE
  Leap 15.
  5. If the GLX back end is in use, then the interposed `eglGetDisplay()` and
  `eglGetPlatformDisplay()` functions now return `EGL_NO_DISPLAY` rather than
  throwing a fatal error.  This allows applications such as Firefox to fail
  gracefully or to fall back and use the GLX API if EGL/X11 is unavailable.
  6. Fixed an issue whereby the VirtualGL Configuration dialog did not pop up if
  the X keyboard extension was enabled on the 2D X server.
  7. The VirtualGL Faker no longer probes the 2D X server for stereo visuals
  unless the VGL Transport or a transport plugin will be used.  Even if the 2D X
  server has stereo visuals, they will never be used with the X11 and XV
  Transports.  Probing the 2D X server for stereo visuals causes problems with
  certain OpenGL implementations and with applications, such as Tecplot 360, that
  include static builds of Mesa.  An undocumented environment variable
  (`VGL_PROBEGLX`) can be used to override the default behavior.
  8. When using the EGL back end, interposed `XQueryExtension(..., "GLX", ...)`
  and `glXQueryExtension()` function calls now return `False`, rather than
  throwing a fatal error, if the 2D X server does not have a GLX extension.  (The
  EGL back end uses the 2D X server's GLX extension for GLX error handling.)
  This allows applications, such as Chrome/Chromium, to fail gracefully or use a
  different API (such as EGL/X11) if the VirtualGL Faker is unable to emulate
  GLX.
  9. The VirtualGL Client now runs on Macs with Apple silicon CPUs (without
  requiring Rosetta 2.)
- update to 3.0.90 (3.1 beta1)
  1. The `vglconnect -x` and `vglconnect -k` options have been retired in this
  version of VirtualGL and will continue to be maintained in the 3.0.x branch on
  a break/fix basis only.  Those options, which had been undocumented since
  VirtualGL 2.6.1, were a throwback to the early days of VirtualGL when SSH was
  not universally available and SSH X11 forwarding sometimes introduced a
  performance penalty.  `vglconnect -x` did not work with most modern operating
  systems, since most modern operating systems disable X11 TCP connections by
  default.
  2. SSL encryption of the VGL Transport has been retired in this version of
  VirtualGL and will continue to be maintained in the 3.0.x branch on a break/fix
  basis only.  That feature, which had not been included in official VirtualGL
  packages since VirtualGL 2.1.x, was not widely used.  Furthermore, SSL
  encryption of the VGL Transport had no performance advantages over SSH
  tunneling on modern systems, and it had some security disadvantages due to its
  reliance on the RSA key exchange algorithm (which made it incompatible with TLS
  v1.3.)
  3. When using the EGL back end, VirtualGL now supports 3D applications
  (including recent versions of Google Chrome/Chromium and Mozilla Firefox) that
  use the EGL/X11 API instead of the GLX API.  As of this writing, VirtualGL does
  not support EGL pixmap surfaces or front buffer/single buffer rendering with
  EGL window surfaces.
  4. On Un*x and Mac clients, `vglconnect` now uses the OpenSSH `ControlMaster`
  option to avoid the need to authenticate with the server multiple times when
  tunneling the VGL Transport through SSH.
  5. `vglconnect` now accepts a new command-line argument (`-v`) that, when
  combined with `-s`, causes VirtualGL to be preloaded into all processes
  launched in the remote shell, thus eliminating the need to invoke `vglrun`.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1715774400">- Use %autosetup macro: allows us to eliminate usage of deprecated
  %patchN syntax.</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1729684800">- update to 3.1.1:
  * The EGL back end now supports OpenGL applications, including
    ANSYS Fluent, that use multiple X11 Display handles to render to
    the same GLX drawable.
  * The VirtualGL Faker now works around an issue whereby
    applications using the GtkGLArea widget with GTK v3.15.2 through
    v4.3.1 failed with "No available configurations for the given
    [RGBA] pixel format" if GTK v3.15.2 through v4.3.1 had previously
    been initialized on the 2D X server without VirtualGL.
  * As required by the EGL spec, the interposed `eglSwapBuffers()`
    function now flushes the current OpenGL context if the surface
    being swapped is bound to that context.  This fixes a flickering
    issue that occurred with recent versions of Firefox.
  * It is no longer necessary to enable the EGL back end in order to
    use VirtualGL with 3D applications that use the EGL/X11 API.  If
    the GLX back end is enabled, then the EGL/X11 interposer will now
    use the 3D X server.
  * Fixed an issue in the VirtualGL Faker that caused random characters
    and other elements of the Firefox browser window to disappear when
    the window was resized.
  * Fixed an issue in VirtualGL's `dlopen()` interposer
    (**libdlfaker.so**) that interfered with the correct operation of
    ANGLE (Almost Native Graphics Layer Engine.)
- add keyring for signature validation</changelog>
</package>
<package pkgid="0480260887f27320319b7995477c1f0bd2e51edc0277b0f12caed3a2e4b5f98c49a3ff2ea962e503bfd35ce5a84ef1c47fb65f50c61566ff28ec68b6a6074ea8" name="VirtualGL-debuginfo" arch="i586">
  <version epoch="0" ver="3.1.1" rel="1.0.2.1.sr20241002"/>
  <changelog author="Andreas Schwab &lt;schwab@suse.de&gt;" date="1572868800">- Add riscv64 to the list of 64-bit architectures</changelog>
  <changelog author="Adam Mizerski &lt;adam@mizerski.pl&gt;" date="1581249600">- update to 2.6.3
  * Changelog in packaged ChangeLog.md or at
    https://github.com/VirtualGL/virtualgl/blob/2.6.3/ChangeLog.md
- Refreshed patch VirtualGL-link-libs.patch
- Removed patch virtualgl-nodl.patch - resolved upstream
- Added patch glx.patch</changelog>
  <changelog author="Max Lin &lt;mlin@suse.com&gt;" date="1591012800">- Remove conditional of applying glx.patch because we have newer Mesa
  in Leap 15.2
- Use upstream patch fix-Mesa-19.3.0-build.patch to replace glx.patch
  * Add fix-Mesa-19.3.0-build.patch
  * Remove glx.patch</changelog>
  <changelog author="&#xC1;kos Sz&#x151;ts &lt;szotsaki@gmail.com&gt;" date="1594036800">- update to 2.6.4
  * Changelog in packaged ChangeLog.md or at
    https://github.com/VirtualGL/virtualgl/blob/2.6.4/ChangeLog.md
- Refreshed patch VirtualGL-link-libs.patch
- Removed patch fix-Mesa-19.3.0-build.patch - resolved upstream</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1608379200">- update to 2.6.5:
  1. Fixed a race condition that sometimes caused various fatal errors in the
  interposed `glXMakeContextCurrent()` function if both GLX drawable IDs passed
  to that function were the same window handle and the corresponding X window was
  simultaneously resized in another thread.
  2. Fixed an oversight whereby the addresses of the interposed
  `glDrawBuffers()`, `glGetString()`, and `glGetStringi()` functions introduced
  in 2.6.3[2] and 2.6.4[1] were not returned from the interposed
  `glXGetProcAddress()` and `glXGetProcAddressARB()` functions.
  3. VirtualGL now works properly with 3D applications that use the
  `glNamedFramebufferDrawBuffer()` and `glNamedFramebufferDrawBuffers()`
  functions (OpenGL 4.5) or the `glFramebufferDrawBufferEXT()` and
  `glFramebufferDrawBuffersEXT()` functions (`GL_EXT_direct_state_access`) and
  render to the front buffer.
  4. Fixed a BadRequest X11 error that occurred when attempting to use the X11
  Transport with a remote X connection.
  5. Worked around an issue with certain GLX implementations that list
  10-bit-per-component FB configs ahead of 8-bit-per-component FB configs and
  incorrectly set `GLX_DRAWABLE_TYPE|=GLX_PIXMAP_BIT` for those 10-bpc FB
  configs, even though they have no X visuals attached.  This caused VirtualGL's
  interposed `glXChooseVisual()` function to choose one of the 10-bpc FB configs
  behind the scenes, which made it impossible to use the VGL Transport.
  6. Fixed an issue whereby, when using the X11 Transport, a vertically flipped
  image of a previously-rendered frame was sometimes displayed if the 3D
  application called `glFlush()` while the front buffer was the active drawing
  buffer and the render mode was `GL_FEEDBACK` or `GL_SELECT`.
  7. `vglserver_config` now works properly if invoked with a relative path
  (for example, `cd /opt/VirtualGL/bin; sudo ./vglserver_config`.)
  8. Worked around a limitation in the AMDGPU drivers that prevented recent
  versions of Google Chrome from enabling GPU acceleration when used with
  VirtualGL.</changelog>
  <changelog author="Anonymous Checkouts &lt;anoncvs@mailinator.com&gt;" date="1670760000">- update to 3.0.2
  * Now supports use of EGL as well as GLX</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1671624000">- update to 3.0.2:
  1. Support for transparent overlay visuals has been retired in this version of
  VirtualGL.  That feature will continue to be maintained in the 2.6.x branch on
  a break/fix basis only.  Most applications that once used transparent overlay
  visuals used them with color index rendering, which was removed in OpenGL 3.1
  in 2009.  Thus, almost all applications that render overlays now do so using
  other mechanisms.  Furthermore, the need for VirtualGL to hand off the
  rendering of transparent overlay visuals to the 2D X server has always limited
  the usefulness of the feature, and the discontinuation of the VirtualGL Client
  for Exceed relegated the feature to Un*x clients (with workstation-class GPUs)
  and the VGL Transport only.  Given that nVidia's implementation of transparent
  overlay visuals requires disabling the X Composite extension, which cannot be
  done in many modern Linux distributions, that further limited the feature to
  the point of uselessness.
  2. The VirtualGL Faker now assigns various permutations of common OpenGL
  rendering attributes to the available 2D X server visuals.  This maximizes the
  chances that "visual hunting" 3D applications (applications that use X11
  functions to obtain a list of 2D X server visuals, then iterate through the
  list with `glXGetConfig()` until they find a visual with a desired set of
  OpenGL rendering attributes) will find a suitable visual.
  `VGL_DEFAULTFBCONFIG` can still be used to assign a specified set of OpenGL
  rendering attributes to all 2D X server visuals, although the usefulness of
  that feature is now very limited.
  3. The VirtualGL Faker now includes an EGL back end that optionally emulates
  the GLX API using a combination of the EGL API (with the
  `EGL_EXT_platform_device` extension) and OpenGL renderbuffer objects (RBOs.)
  On supported platforms, the EGL back end allows the VirtualGL Faker to be used
  without a 3D X server.  The EGL back end can be activated by setting the
  `VGL_DISPLAY` environment variable to the path of a DRI device, such as
  * */dev/dri/card0**, or by passing that device path to `vglrun` using the `-d`
  argument.  Some obsolete OpenGL and GLX features are not supported by the EGL</changelog>
  <changelog author="ming li &lt;mli@suse.com&gt;" date="1701864000">- Update to 3.1:
  1. Fixed an issue in the EGL back end whereby textures and other OpenGL objects
  were not automatically destroyed along with the context and drawable in which
  the objects were created.
  2. Added an environment variable (`VGL_EXITFUNCTION`) that, when set to
  `_exit` or `abort`, causes the VirtualGL Faker to call the specified function
  rather than `exit()` when a non-recoverable error occurs.
  3. Fixed an issue whereby the interposed `eglCreatePlatformWindowSurface()`
  and `eglCreatePlatformWindowSurfaceEXT()` functions incorrectly treated the
  native window argument as an X window handle rather than a pointer to an X
  window handle.  This caused a segfault in VLC when using the OpenGL video
  output module.
  4. `vglserver_config` now works properly with SUSE Linux Enterprise/openSUSE
  Leap 15.
  5. If the GLX back end is in use, then the interposed `eglGetDisplay()` and
  `eglGetPlatformDisplay()` functions now return `EGL_NO_DISPLAY` rather than
  throwing a fatal error.  This allows applications such as Firefox to fail
  gracefully or to fall back and use the GLX API if EGL/X11 is unavailable.
  6. Fixed an issue whereby the VirtualGL Configuration dialog did not pop up if
  the X keyboard extension was enabled on the 2D X server.
  7. The VirtualGL Faker no longer probes the 2D X server for stereo visuals
  unless the VGL Transport or a transport plugin will be used.  Even if the 2D X
  server has stereo visuals, they will never be used with the X11 and XV
  Transports.  Probing the 2D X server for stereo visuals causes problems with
  certain OpenGL implementations and with applications, such as Tecplot 360, that
  include static builds of Mesa.  An undocumented environment variable
  (`VGL_PROBEGLX`) can be used to override the default behavior.
  8. When using the EGL back end, interposed `XQueryExtension(..., "GLX", ...)`
  and `glXQueryExtension()` function calls now return `False`, rather than
  throwing a fatal error, if the 2D X server does not have a GLX extension.  (The
  EGL back end uses the 2D X server's GLX extension for GLX error handling.)
  This allows applications, such as Chrome/Chromium, to fail gracefully or use a
  different API (such as EGL/X11) if the VirtualGL Faker is unable to emulate
  GLX.
  9. The VirtualGL Client now runs on Macs with Apple silicon CPUs (without
  requiring Rosetta 2.)
- update to 3.0.90 (3.1 beta1)
  1. The `vglconnect -x` and `vglconnect -k` options have been retired in this
  version of VirtualGL and will continue to be maintained in the 3.0.x branch on
  a break/fix basis only.  Those options, which had been undocumented since
  VirtualGL 2.6.1, were a throwback to the early days of VirtualGL when SSH was
  not universally available and SSH X11 forwarding sometimes introduced a
  performance penalty.  `vglconnect -x` did not work with most modern operating
  systems, since most modern operating systems disable X11 TCP connections by
  default.
  2. SSL encryption of the VGL Transport has been retired in this version of
  VirtualGL and will continue to be maintained in the 3.0.x branch on a break/fix
  basis only.  That feature, which had not been included in official VirtualGL
  packages since VirtualGL 2.1.x, was not widely used.  Furthermore, SSL
  encryption of the VGL Transport had no performance advantages over SSH
  tunneling on modern systems, and it had some security disadvantages due to its
  reliance on the RSA key exchange algorithm (which made it incompatible with TLS
  v1.3.)
  3. When using the EGL back end, VirtualGL now supports 3D applications
  (including recent versions of Google Chrome/Chromium and Mozilla Firefox) that
  use the EGL/X11 API instead of the GLX API.  As of this writing, VirtualGL does
  not support EGL pixmap surfaces or front buffer/single buffer rendering with
  EGL window surfaces.
  4. On Un*x and Mac clients, `vglconnect` now uses the OpenSSH `ControlMaster`
  option to avoid the need to authenticate with the server multiple times when
  tunneling the VGL Transport through SSH.
  5. `vglconnect` now accepts a new command-line argument (`-v`) that, when
  combined with `-s`, causes VirtualGL to be preloaded into all processes
  launched in the remote shell, thus eliminating the need to invoke `vglrun`.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1715774400">- Use %autosetup macro: allows us to eliminate usage of deprecated
  %patchN syntax.</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1729684800">- update to 3.1.1:
  * The EGL back end now supports OpenGL applications, including
    ANSYS Fluent, that use multiple X11 Display handles to render to
    the same GLX drawable.
  * The VirtualGL Faker now works around an issue whereby
    applications using the GtkGLArea widget with GTK v3.15.2 through
    v4.3.1 failed with "No available configurations for the given
    [RGBA] pixel format" if GTK v3.15.2 through v4.3.1 had previously
    been initialized on the 2D X server without VirtualGL.
  * As required by the EGL spec, the interposed `eglSwapBuffers()`
    function now flushes the current OpenGL context if the surface
    being swapped is bound to that context.  This fixes a flickering
    issue that occurred with recent versions of Firefox.
  * It is no longer necessary to enable the EGL back end in order to
    use VirtualGL with 3D applications that use the EGL/X11 API.  If
    the GLX back end is enabled, then the EGL/X11 interposer will now
    use the 3D X server.
  * Fixed an issue in the VirtualGL Faker that caused random characters
    and other elements of the Firefox browser window to disappear when
    the window was resized.
  * Fixed an issue in VirtualGL's `dlopen()` interposer
    (**libdlfaker.so**) that interfered with the correct operation of
    ANGLE (Almost Native Graphics Layer Engine.)
- add keyring for signature validation</changelog>
</package>
<package pkgid="06c4ea08b10b5e47726255d30de153578f48d2f87e14e9ff5fa76267b148199da4df056cf45592b65cd9a5bf16df91c57a67a6174eb3bd3d26c504911f02079b" name="VirtualGL-debuginfo" arch="x86_64">
  <version epoch="0" ver="3.1.1" rel="1.0.2.1.sr20241002"/>
  <changelog author="Andreas Schwab &lt;schwab@suse.de&gt;" date="1572868800">- Add riscv64 to the list of 64-bit architectures</changelog>
  <changelog author="Adam Mizerski &lt;adam@mizerski.pl&gt;" date="1581249600">- update to 2.6.3
  * Changelog in packaged ChangeLog.md or at
    https://github.com/VirtualGL/virtualgl/blob/2.6.3/ChangeLog.md
- Refreshed patch VirtualGL-link-libs.patch
- Removed patch virtualgl-nodl.patch - resolved upstream
- Added patch glx.patch</changelog>
  <changelog author="Max Lin &lt;mlin@suse.com&gt;" date="1591012800">- Remove conditional of applying glx.patch because we have newer Mesa
  in Leap 15.2
- Use upstream patch fix-Mesa-19.3.0-build.patch to replace glx.patch
  * Add fix-Mesa-19.3.0-build.patch
  * Remove glx.patch</changelog>
  <changelog author="&#xC1;kos Sz&#x151;ts &lt;szotsaki@gmail.com&gt;" date="1594036800">- update to 2.6.4
  * Changelog in packaged ChangeLog.md or at
    https://github.com/VirtualGL/virtualgl/blob/2.6.4/ChangeLog.md
- Refreshed patch VirtualGL-link-libs.patch
- Removed patch fix-Mesa-19.3.0-build.patch - resolved upstream</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1608379200">- update to 2.6.5:
  1. Fixed a race condition that sometimes caused various fatal errors in the
  interposed `glXMakeContextCurrent()` function if both GLX drawable IDs passed
  to that function were the same window handle and the corresponding X window was
  simultaneously resized in another thread.
  2. Fixed an oversight whereby the addresses of the interposed
  `glDrawBuffers()`, `glGetString()`, and `glGetStringi()` functions introduced
  in 2.6.3[2] and 2.6.4[1] were not returned from the interposed
  `glXGetProcAddress()` and `glXGetProcAddressARB()` functions.
  3. VirtualGL now works properly with 3D applications that use the
  `glNamedFramebufferDrawBuffer()` and `glNamedFramebufferDrawBuffers()`
  functions (OpenGL 4.5) or the `glFramebufferDrawBufferEXT()` and
  `glFramebufferDrawBuffersEXT()` functions (`GL_EXT_direct_state_access`) and
  render to the front buffer.
  4. Fixed a BadRequest X11 error that occurred when attempting to use the X11
  Transport with a remote X connection.
  5. Worked around an issue with certain GLX implementations that list
  10-bit-per-component FB configs ahead of 8-bit-per-component FB configs and
  incorrectly set `GLX_DRAWABLE_TYPE|=GLX_PIXMAP_BIT` for those 10-bpc FB
  configs, even though they have no X visuals attached.  This caused VirtualGL's
  interposed `glXChooseVisual()` function to choose one of the 10-bpc FB configs
  behind the scenes, which made it impossible to use the VGL Transport.
  6. Fixed an issue whereby, when using the X11 Transport, a vertically flipped
  image of a previously-rendered frame was sometimes displayed if the 3D
  application called `glFlush()` while the front buffer was the active drawing
  buffer and the render mode was `GL_FEEDBACK` or `GL_SELECT`.
  7. `vglserver_config` now works properly if invoked with a relative path
  (for example, `cd /opt/VirtualGL/bin; sudo ./vglserver_config`.)
  8. Worked around a limitation in the AMDGPU drivers that prevented recent
  versions of Google Chrome from enabling GPU acceleration when used with
  VirtualGL.</changelog>
  <changelog author="Anonymous Checkouts &lt;anoncvs@mailinator.com&gt;" date="1670760000">- update to 3.0.2
  * Now supports use of EGL as well as GLX</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1671624000">- update to 3.0.2:
  1. Support for transparent overlay visuals has been retired in this version of
  VirtualGL.  That feature will continue to be maintained in the 2.6.x branch on
  a break/fix basis only.  Most applications that once used transparent overlay
  visuals used them with color index rendering, which was removed in OpenGL 3.1
  in 2009.  Thus, almost all applications that render overlays now do so using
  other mechanisms.  Furthermore, the need for VirtualGL to hand off the
  rendering of transparent overlay visuals to the 2D X server has always limited
  the usefulness of the feature, and the discontinuation of the VirtualGL Client
  for Exceed relegated the feature to Un*x clients (with workstation-class GPUs)
  and the VGL Transport only.  Given that nVidia's implementation of transparent
  overlay visuals requires disabling the X Composite extension, which cannot be
  done in many modern Linux distributions, that further limited the feature to
  the point of uselessness.
  2. The VirtualGL Faker now assigns various permutations of common OpenGL
  rendering attributes to the available 2D X server visuals.  This maximizes the
  chances that "visual hunting" 3D applications (applications that use X11
  functions to obtain a list of 2D X server visuals, then iterate through the
  list with `glXGetConfig()` until they find a visual with a desired set of
  OpenGL rendering attributes) will find a suitable visual.
  `VGL_DEFAULTFBCONFIG` can still be used to assign a specified set of OpenGL
  rendering attributes to all 2D X server visuals, although the usefulness of
  that feature is now very limited.
  3. The VirtualGL Faker now includes an EGL back end that optionally emulates
  the GLX API using a combination of the EGL API (with the
  `EGL_EXT_platform_device` extension) and OpenGL renderbuffer objects (RBOs.)
  On supported platforms, the EGL back end allows the VirtualGL Faker to be used
  without a 3D X server.  The EGL back end can be activated by setting the
  `VGL_DISPLAY` environment variable to the path of a DRI device, such as
  * */dev/dri/card0**, or by passing that device path to `vglrun` using the `-d`
  argument.  Some obsolete OpenGL and GLX features are not supported by the EGL</changelog>
  <changelog author="ming li &lt;mli@suse.com&gt;" date="1701864000">- Update to 3.1:
  1. Fixed an issue in the EGL back end whereby textures and other OpenGL objects
  were not automatically destroyed along with the context and drawable in which
  the objects were created.
  2. Added an environment variable (`VGL_EXITFUNCTION`) that, when set to
  `_exit` or `abort`, causes the VirtualGL Faker to call the specified function
  rather than `exit()` when a non-recoverable error occurs.
  3. Fixed an issue whereby the interposed `eglCreatePlatformWindowSurface()`
  and `eglCreatePlatformWindowSurfaceEXT()` functions incorrectly treated the
  native window argument as an X window handle rather than a pointer to an X
  window handle.  This caused a segfault in VLC when using the OpenGL video
  output module.
  4. `vglserver_config` now works properly with SUSE Linux Enterprise/openSUSE
  Leap 15.
  5. If the GLX back end is in use, then the interposed `eglGetDisplay()` and
  `eglGetPlatformDisplay()` functions now return `EGL_NO_DISPLAY` rather than
  throwing a fatal error.  This allows applications such as Firefox to fail
  gracefully or to fall back and use the GLX API if EGL/X11 is unavailable.
  6. Fixed an issue whereby the VirtualGL Configuration dialog did not pop up if
  the X keyboard extension was enabled on the 2D X server.
  7. The VirtualGL Faker no longer probes the 2D X server for stereo visuals
  unless the VGL Transport or a transport plugin will be used.  Even if the 2D X
  server has stereo visuals, they will never be used with the X11 and XV
  Transports.  Probing the 2D X server for stereo visuals causes problems with
  certain OpenGL implementations and with applications, such as Tecplot 360, that
  include static builds of Mesa.  An undocumented environment variable
  (`VGL_PROBEGLX`) can be used to override the default behavior.
  8. When using the EGL back end, interposed `XQueryExtension(..., "GLX", ...)`
  and `glXQueryExtension()` function calls now return `False`, rather than
  throwing a fatal error, if the 2D X server does not have a GLX extension.  (The
  EGL back end uses the 2D X server's GLX extension for GLX error handling.)
  This allows applications, such as Chrome/Chromium, to fail gracefully or use a
  different API (such as EGL/X11) if the VirtualGL Faker is unable to emulate
  GLX.
  9. The VirtualGL Client now runs on Macs with Apple silicon CPUs (without
  requiring Rosetta 2.)
- update to 3.0.90 (3.1 beta1)
  1. The `vglconnect -x` and `vglconnect -k` options have been retired in this
  version of VirtualGL and will continue to be maintained in the 3.0.x branch on
  a break/fix basis only.  Those options, which had been undocumented since
  VirtualGL 2.6.1, were a throwback to the early days of VirtualGL when SSH was
  not universally available and SSH X11 forwarding sometimes introduced a
  performance penalty.  `vglconnect -x` did not work with most modern operating
  systems, since most modern operating systems disable X11 TCP connections by
  default.
  2. SSL encryption of the VGL Transport has been retired in this version of
  VirtualGL and will continue to be maintained in the 3.0.x branch on a break/fix
  basis only.  That feature, which had not been included in official VirtualGL
  packages since VirtualGL 2.1.x, was not widely used.  Furthermore, SSL
  encryption of the VGL Transport had no performance advantages over SSH
  tunneling on modern systems, and it had some security disadvantages due to its
  reliance on the RSA key exchange algorithm (which made it incompatible with TLS
  v1.3.)
  3. When using the EGL back end, VirtualGL now supports 3D applications
  (including recent versions of Google Chrome/Chromium and Mozilla Firefox) that
  use the EGL/X11 API instead of the GLX API.  As of this writing, VirtualGL does
  not support EGL pixmap surfaces or front buffer/single buffer rendering with
  EGL window surfaces.
  4. On Un*x and Mac clients, `vglconnect` now uses the OpenSSH `ControlMaster`
  option to avoid the need to authenticate with the server multiple times when
  tunneling the VGL Transport through SSH.
  5. `vglconnect` now accepts a new command-line argument (`-v`) that, when
  combined with `-s`, causes VirtualGL to be preloaded into all processes
  launched in the remote shell, thus eliminating the need to invoke `vglrun`.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1715774400">- Use %autosetup macro: allows us to eliminate usage of deprecated
  %patchN syntax.</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1729684800">- update to 3.1.1:
  * The EGL back end now supports OpenGL applications, including
    ANSYS Fluent, that use multiple X11 Display handles to render to
    the same GLX drawable.
  * The VirtualGL Faker now works around an issue whereby
    applications using the GtkGLArea widget with GTK v3.15.2 through
    v4.3.1 failed with "No available configurations for the given
    [RGBA] pixel format" if GTK v3.15.2 through v4.3.1 had previously
    been initialized on the 2D X server without VirtualGL.
  * As required by the EGL spec, the interposed `eglSwapBuffers()`
    function now flushes the current OpenGL context if the surface
    being swapped is bound to that context.  This fixes a flickering
    issue that occurred with recent versions of Firefox.
  * It is no longer necessary to enable the EGL back end in order to
    use VirtualGL with 3D applications that use the EGL/X11 API.  If
    the GLX back end is enabled, then the EGL/X11 interposer will now
    use the 3D X server.
  * Fixed an issue in the VirtualGL Faker that caused random characters
    and other elements of the Firefox browser window to disappear when
    the window was resized.
  * Fixed an issue in VirtualGL's `dlopen()` interposer
    (**libdlfaker.so**) that interfered with the correct operation of
    ANGLE (Almost Native Graphics Layer Engine.)
- add keyring for signature validation</changelog>
</package>
<package pkgid="f4a0efcb301f1727363a6f9b0d36a88e7169546a9334cc94eac6210a8ba8bf66700db12407d66cab85c5343b59c4225bebde0d0286773d988defa59e2a8f0d93" name="VirtualGL-debuginfo" arch="x86_64">
  <version epoch="0" ver="3.1.1" rel="1.1"/>
  <changelog author="Andreas Schwab &lt;schwab@suse.de&gt;" date="1572868800">- Add riscv64 to the list of 64-bit architectures</changelog>
  <changelog author="Adam Mizerski &lt;adam@mizerski.pl&gt;" date="1581249600">- update to 2.6.3
  * Changelog in packaged ChangeLog.md or at
    https://github.com/VirtualGL/virtualgl/blob/2.6.3/ChangeLog.md
- Refreshed patch VirtualGL-link-libs.patch
- Removed patch virtualgl-nodl.patch - resolved upstream
- Added patch glx.patch</changelog>
  <changelog author="Max Lin &lt;mlin@suse.com&gt;" date="1591012800">- Remove conditional of applying glx.patch because we have newer Mesa
  in Leap 15.2
- Use upstream patch fix-Mesa-19.3.0-build.patch to replace glx.patch
  * Add fix-Mesa-19.3.0-build.patch
  * Remove glx.patch</changelog>
  <changelog author="&#xC1;kos Sz&#x151;ts &lt;szotsaki@gmail.com&gt;" date="1594036800">- update to 2.6.4
  * Changelog in packaged ChangeLog.md or at
    https://github.com/VirtualGL/virtualgl/blob/2.6.4/ChangeLog.md
- Refreshed patch VirtualGL-link-libs.patch
- Removed patch fix-Mesa-19.3.0-build.patch - resolved upstream</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1608379200">- update to 2.6.5:
  1. Fixed a race condition that sometimes caused various fatal errors in the
  interposed `glXMakeContextCurrent()` function if both GLX drawable IDs passed
  to that function were the same window handle and the corresponding X window was
  simultaneously resized in another thread.
  2. Fixed an oversight whereby the addresses of the interposed
  `glDrawBuffers()`, `glGetString()`, and `glGetStringi()` functions introduced
  in 2.6.3[2] and 2.6.4[1] were not returned from the interposed
  `glXGetProcAddress()` and `glXGetProcAddressARB()` functions.
  3. VirtualGL now works properly with 3D applications that use the
  `glNamedFramebufferDrawBuffer()` and `glNamedFramebufferDrawBuffers()`
  functions (OpenGL 4.5) or the `glFramebufferDrawBufferEXT()` and
  `glFramebufferDrawBuffersEXT()` functions (`GL_EXT_direct_state_access`) and
  render to the front buffer.
  4. Fixed a BadRequest X11 error that occurred when attempting to use the X11
  Transport with a remote X connection.
  5. Worked around an issue with certain GLX implementations that list
  10-bit-per-component FB configs ahead of 8-bit-per-component FB configs and
  incorrectly set `GLX_DRAWABLE_TYPE|=GLX_PIXMAP_BIT` for those 10-bpc FB
  configs, even though they have no X visuals attached.  This caused VirtualGL's
  interposed `glXChooseVisual()` function to choose one of the 10-bpc FB configs
  behind the scenes, which made it impossible to use the VGL Transport.
  6. Fixed an issue whereby, when using the X11 Transport, a vertically flipped
  image of a previously-rendered frame was sometimes displayed if the 3D
  application called `glFlush()` while the front buffer was the active drawing
  buffer and the render mode was `GL_FEEDBACK` or `GL_SELECT`.
  7. `vglserver_config` now works properly if invoked with a relative path
  (for example, `cd /opt/VirtualGL/bin; sudo ./vglserver_config`.)
  8. Worked around a limitation in the AMDGPU drivers that prevented recent
  versions of Google Chrome from enabling GPU acceleration when used with
  VirtualGL.</changelog>
  <changelog author="Anonymous Checkouts &lt;anoncvs@mailinator.com&gt;" date="1670760000">- update to 3.0.2
  * Now supports use of EGL as well as GLX</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1671624000">- update to 3.0.2:
  1. Support for transparent overlay visuals has been retired in this version of
  VirtualGL.  That feature will continue to be maintained in the 2.6.x branch on
  a break/fix basis only.  Most applications that once used transparent overlay
  visuals used them with color index rendering, which was removed in OpenGL 3.1
  in 2009.  Thus, almost all applications that render overlays now do so using
  other mechanisms.  Furthermore, the need for VirtualGL to hand off the
  rendering of transparent overlay visuals to the 2D X server has always limited
  the usefulness of the feature, and the discontinuation of the VirtualGL Client
  for Exceed relegated the feature to Un*x clients (with workstation-class GPUs)
  and the VGL Transport only.  Given that nVidia's implementation of transparent
  overlay visuals requires disabling the X Composite extension, which cannot be
  done in many modern Linux distributions, that further limited the feature to
  the point of uselessness.
  2. The VirtualGL Faker now assigns various permutations of common OpenGL
  rendering attributes to the available 2D X server visuals.  This maximizes the
  chances that "visual hunting" 3D applications (applications that use X11
  functions to obtain a list of 2D X server visuals, then iterate through the
  list with `glXGetConfig()` until they find a visual with a desired set of
  OpenGL rendering attributes) will find a suitable visual.
  `VGL_DEFAULTFBCONFIG` can still be used to assign a specified set of OpenGL
  rendering attributes to all 2D X server visuals, although the usefulness of
  that feature is now very limited.
  3. The VirtualGL Faker now includes an EGL back end that optionally emulates
  the GLX API using a combination of the EGL API (with the
  `EGL_EXT_platform_device` extension) and OpenGL renderbuffer objects (RBOs.)
  On supported platforms, the EGL back end allows the VirtualGL Faker to be used
  without a 3D X server.  The EGL back end can be activated by setting the
  `VGL_DISPLAY` environment variable to the path of a DRI device, such as
  * */dev/dri/card0**, or by passing that device path to `vglrun` using the `-d`
  argument.  Some obsolete OpenGL and GLX features are not supported by the EGL</changelog>
  <changelog author="ming li &lt;mli@suse.com&gt;" date="1701864000">- Update to 3.1:
  1. Fixed an issue in the EGL back end whereby textures and other OpenGL objects
  were not automatically destroyed along with the context and drawable in which
  the objects were created.
  2. Added an environment variable (`VGL_EXITFUNCTION`) that, when set to
  `_exit` or `abort`, causes the VirtualGL Faker to call the specified function
  rather than `exit()` when a non-recoverable error occurs.
  3. Fixed an issue whereby the interposed `eglCreatePlatformWindowSurface()`
  and `eglCreatePlatformWindowSurfaceEXT()` functions incorrectly treated the
  native window argument as an X window handle rather than a pointer to an X
  window handle.  This caused a segfault in VLC when using the OpenGL video
  output module.
  4. `vglserver_config` now works properly with SUSE Linux Enterprise/openSUSE
  Leap 15.
  5. If the GLX back end is in use, then the interposed `eglGetDisplay()` and
  `eglGetPlatformDisplay()` functions now return `EGL_NO_DISPLAY` rather than
  throwing a fatal error.  This allows applications such as Firefox to fail
  gracefully or to fall back and use the GLX API if EGL/X11 is unavailable.
  6. Fixed an issue whereby the VirtualGL Configuration dialog did not pop up if
  the X keyboard extension was enabled on the 2D X server.
  7. The VirtualGL Faker no longer probes the 2D X server for stereo visuals
  unless the VGL Transport or a transport plugin will be used.  Even if the 2D X
  server has stereo visuals, they will never be used with the X11 and XV
  Transports.  Probing the 2D X server for stereo visuals causes problems with
  certain OpenGL implementations and with applications, such as Tecplot 360, that
  include static builds of Mesa.  An undocumented environment variable
  (`VGL_PROBEGLX`) can be used to override the default behavior.
  8. When using the EGL back end, interposed `XQueryExtension(..., "GLX", ...)`
  and `glXQueryExtension()` function calls now return `False`, rather than
  throwing a fatal error, if the 2D X server does not have a GLX extension.  (The
  EGL back end uses the 2D X server's GLX extension for GLX error handling.)
  This allows applications, such as Chrome/Chromium, to fail gracefully or use a
  different API (such as EGL/X11) if the VirtualGL Faker is unable to emulate
  GLX.
  9. The VirtualGL Client now runs on Macs with Apple silicon CPUs (without
  requiring Rosetta 2.)
- update to 3.0.90 (3.1 beta1)
  1. The `vglconnect -x` and `vglconnect -k` options have been retired in this
  version of VirtualGL and will continue to be maintained in the 3.0.x branch on
  a break/fix basis only.  Those options, which had been undocumented since
  VirtualGL 2.6.1, were a throwback to the early days of VirtualGL when SSH was
  not universally available and SSH X11 forwarding sometimes introduced a
  performance penalty.  `vglconnect -x` did not work with most modern operating
  systems, since most modern operating systems disable X11 TCP connections by
  default.
  2. SSL encryption of the VGL Transport has been retired in this version of
  VirtualGL and will continue to be maintained in the 3.0.x branch on a break/fix
  basis only.  That feature, which had not been included in official VirtualGL
  packages since VirtualGL 2.1.x, was not widely used.  Furthermore, SSL
  encryption of the VGL Transport had no performance advantages over SSH
  tunneling on modern systems, and it had some security disadvantages due to its
  reliance on the RSA key exchange algorithm (which made it incompatible with TLS
  v1.3.)
  3. When using the EGL back end, VirtualGL now supports 3D applications
  (including recent versions of Google Chrome/Chromium and Mozilla Firefox) that
  use the EGL/X11 API instead of the GLX API.  As of this writing, VirtualGL does
  not support EGL pixmap surfaces or front buffer/single buffer rendering with
  EGL window surfaces.
  4. On Un*x and Mac clients, `vglconnect` now uses the OpenSSH `ControlMaster`
  option to avoid the need to authenticate with the server multiple times when
  tunneling the VGL Transport through SSH.
  5. `vglconnect` now accepts a new command-line argument (`-v`) that, when
  combined with `-s`, causes VirtualGL to be preloaded into all processes
  launched in the remote shell, thus eliminating the need to invoke `vglrun`.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1715774400">- Use %autosetup macro: allows us to eliminate usage of deprecated
  %patchN syntax.</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1729684800">- update to 3.1.1:
  * The EGL back end now supports OpenGL applications, including
    ANSYS Fluent, that use multiple X11 Display handles to render to
    the same GLX drawable.
  * The VirtualGL Faker now works around an issue whereby
    applications using the GtkGLArea widget with GTK v3.15.2 through
    v4.3.1 failed with "No available configurations for the given
    [RGBA] pixel format" if GTK v3.15.2 through v4.3.1 had previously
    been initialized on the 2D X server without VirtualGL.
  * As required by the EGL spec, the interposed `eglSwapBuffers()`
    function now flushes the current OpenGL context if the surface
    being swapped is bound to that context.  This fixes a flickering
    issue that occurred with recent versions of Firefox.
  * It is no longer necessary to enable the EGL back end in order to
    use VirtualGL with 3D applications that use the EGL/X11 API.  If
    the GLX back end is enabled, then the EGL/X11 interposer will now
    use the 3D X server.
  * Fixed an issue in the VirtualGL Faker that caused random characters
    and other elements of the Firefox browser window to disappear when
    the window was resized.
  * Fixed an issue in VirtualGL's `dlopen()` interposer
    (**libdlfaker.so**) that interfered with the correct operation of
    ANGLE (Almost Native Graphics Layer Engine.)
- add keyring for signature validation</changelog>
</package>
<package pkgid="bd02a06a7c6ffc72b8c07b376c0298719564f7d4d52fdaf82d4a4b4e3a6aa543113b57e7cab677a755d88503fe24347479c6fe3cc21a7474c938f25c3fc89d5b" name="VirtualGL-debugsource" arch="i586">
  <version epoch="0" ver="3.1.1" rel="1.0.2.1.sr20241002"/>
  <changelog author="Andreas Schwab &lt;schwab@suse.de&gt;" date="1572868800">- Add riscv64 to the list of 64-bit architectures</changelog>
  <changelog author="Adam Mizerski &lt;adam@mizerski.pl&gt;" date="1581249600">- update to 2.6.3
  * Changelog in packaged ChangeLog.md or at
    https://github.com/VirtualGL/virtualgl/blob/2.6.3/ChangeLog.md
- Refreshed patch VirtualGL-link-libs.patch
- Removed patch virtualgl-nodl.patch - resolved upstream
- Added patch glx.patch</changelog>
  <changelog author="Max Lin &lt;mlin@suse.com&gt;" date="1591012800">- Remove conditional of applying glx.patch because we have newer Mesa
  in Leap 15.2
- Use upstream patch fix-Mesa-19.3.0-build.patch to replace glx.patch
  * Add fix-Mesa-19.3.0-build.patch
  * Remove glx.patch</changelog>
  <changelog author="&#xC1;kos Sz&#x151;ts &lt;szotsaki@gmail.com&gt;" date="1594036800">- update to 2.6.4
  * Changelog in packaged ChangeLog.md or at
    https://github.com/VirtualGL/virtualgl/blob/2.6.4/ChangeLog.md
- Refreshed patch VirtualGL-link-libs.patch
- Removed patch fix-Mesa-19.3.0-build.patch - resolved upstream</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1608379200">- update to 2.6.5:
  1. Fixed a race condition that sometimes caused various fatal errors in the
  interposed `glXMakeContextCurrent()` function if both GLX drawable IDs passed
  to that function were the same window handle and the corresponding X window was
  simultaneously resized in another thread.
  2. Fixed an oversight whereby the addresses of the interposed
  `glDrawBuffers()`, `glGetString()`, and `glGetStringi()` functions introduced
  in 2.6.3[2] and 2.6.4[1] were not returned from the interposed
  `glXGetProcAddress()` and `glXGetProcAddressARB()` functions.
  3. VirtualGL now works properly with 3D applications that use the
  `glNamedFramebufferDrawBuffer()` and `glNamedFramebufferDrawBuffers()`
  functions (OpenGL 4.5) or the `glFramebufferDrawBufferEXT()` and
  `glFramebufferDrawBuffersEXT()` functions (`GL_EXT_direct_state_access`) and
  render to the front buffer.
  4. Fixed a BadRequest X11 error that occurred when attempting to use the X11
  Transport with a remote X connection.
  5. Worked around an issue with certain GLX implementations that list
  10-bit-per-component FB configs ahead of 8-bit-per-component FB configs and
  incorrectly set `GLX_DRAWABLE_TYPE|=GLX_PIXMAP_BIT` for those 10-bpc FB
  configs, even though they have no X visuals attached.  This caused VirtualGL's
  interposed `glXChooseVisual()` function to choose one of the 10-bpc FB configs
  behind the scenes, which made it impossible to use the VGL Transport.
  6. Fixed an issue whereby, when using the X11 Transport, a vertically flipped
  image of a previously-rendered frame was sometimes displayed if the 3D
  application called `glFlush()` while the front buffer was the active drawing
  buffer and the render mode was `GL_FEEDBACK` or `GL_SELECT`.
  7. `vglserver_config` now works properly if invoked with a relative path
  (for example, `cd /opt/VirtualGL/bin; sudo ./vglserver_config`.)
  8. Worked around a limitation in the AMDGPU drivers that prevented recent
  versions of Google Chrome from enabling GPU acceleration when used with
  VirtualGL.</changelog>
  <changelog author="Anonymous Checkouts &lt;anoncvs@mailinator.com&gt;" date="1670760000">- update to 3.0.2
  * Now supports use of EGL as well as GLX</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1671624000">- update to 3.0.2:
  1. Support for transparent overlay visuals has been retired in this version of
  VirtualGL.  That feature will continue to be maintained in the 2.6.x branch on
  a break/fix basis only.  Most applications that once used transparent overlay
  visuals used them with color index rendering, which was removed in OpenGL 3.1
  in 2009.  Thus, almost all applications that render overlays now do so using
  other mechanisms.  Furthermore, the need for VirtualGL to hand off the
  rendering of transparent overlay visuals to the 2D X server has always limited
  the usefulness of the feature, and the discontinuation of the VirtualGL Client
  for Exceed relegated the feature to Un*x clients (with workstation-class GPUs)
  and the VGL Transport only.  Given that nVidia's implementation of transparent
  overlay visuals requires disabling the X Composite extension, which cannot be
  done in many modern Linux distributions, that further limited the feature to
  the point of uselessness.
  2. The VirtualGL Faker now assigns various permutations of common OpenGL
  rendering attributes to the available 2D X server visuals.  This maximizes the
  chances that "visual hunting" 3D applications (applications that use X11
  functions to obtain a list of 2D X server visuals, then iterate through the
  list with `glXGetConfig()` until they find a visual with a desired set of
  OpenGL rendering attributes) will find a suitable visual.
  `VGL_DEFAULTFBCONFIG` can still be used to assign a specified set of OpenGL
  rendering attributes to all 2D X server visuals, although the usefulness of
  that feature is now very limited.
  3. The VirtualGL Faker now includes an EGL back end that optionally emulates
  the GLX API using a combination of the EGL API (with the
  `EGL_EXT_platform_device` extension) and OpenGL renderbuffer objects (RBOs.)
  On supported platforms, the EGL back end allows the VirtualGL Faker to be used
  without a 3D X server.  The EGL back end can be activated by setting the
  `VGL_DISPLAY` environment variable to the path of a DRI device, such as
  * */dev/dri/card0**, or by passing that device path to `vglrun` using the `-d`
  argument.  Some obsolete OpenGL and GLX features are not supported by the EGL</changelog>
  <changelog author="ming li &lt;mli@suse.com&gt;" date="1701864000">- Update to 3.1:
  1. Fixed an issue in the EGL back end whereby textures and other OpenGL objects
  were not automatically destroyed along with the context and drawable in which
  the objects were created.
  2. Added an environment variable (`VGL_EXITFUNCTION`) that, when set to
  `_exit` or `abort`, causes the VirtualGL Faker to call the specified function
  rather than `exit()` when a non-recoverable error occurs.
  3. Fixed an issue whereby the interposed `eglCreatePlatformWindowSurface()`
  and `eglCreatePlatformWindowSurfaceEXT()` functions incorrectly treated the
  native window argument as an X window handle rather than a pointer to an X
  window handle.  This caused a segfault in VLC when using the OpenGL video
  output module.
  4. `vglserver_config` now works properly with SUSE Linux Enterprise/openSUSE
  Leap 15.
  5. If the GLX back end is in use, then the interposed `eglGetDisplay()` and
  `eglGetPlatformDisplay()` functions now return `EGL_NO_DISPLAY` rather than
  throwing a fatal error.  This allows applications such as Firefox to fail
  gracefully or to fall back and use the GLX API if EGL/X11 is unavailable.
  6. Fixed an issue whereby the VirtualGL Configuration dialog did not pop up if
  the X keyboard extension was enabled on the 2D X server.
  7. The VirtualGL Faker no longer probes the 2D X server for stereo visuals
  unless the VGL Transport or a transport plugin will be used.  Even if the 2D X
  server has stereo visuals, they will never be used with the X11 and XV
  Transports.  Probing the 2D X server for stereo visuals causes problems with
  certain OpenGL implementations and with applications, such as Tecplot 360, that
  include static builds of Mesa.  An undocumented environment variable
  (`VGL_PROBEGLX`) can be used to override the default behavior.
  8. When using the EGL back end, interposed `XQueryExtension(..., "GLX", ...)`
  and `glXQueryExtension()` function calls now return `False`, rather than
  throwing a fatal error, if the 2D X server does not have a GLX extension.  (The
  EGL back end uses the 2D X server's GLX extension for GLX error handling.)
  This allows applications, such as Chrome/Chromium, to fail gracefully or use a
  different API (such as EGL/X11) if the VirtualGL Faker is unable to emulate
  GLX.
  9. The VirtualGL Client now runs on Macs with Apple silicon CPUs (without
  requiring Rosetta 2.)
- update to 3.0.90 (3.1 beta1)
  1. The `vglconnect -x` and `vglconnect -k` options have been retired in this
  version of VirtualGL and will continue to be maintained in the 3.0.x branch on
  a break/fix basis only.  Those options, which had been undocumented since
  VirtualGL 2.6.1, were a throwback to the early days of VirtualGL when SSH was
  not universally available and SSH X11 forwarding sometimes introduced a
  performance penalty.  `vglconnect -x` did not work with most modern operating
  systems, since most modern operating systems disable X11 TCP connections by
  default.
  2. SSL encryption of the VGL Transport has been retired in this version of
  VirtualGL and will continue to be maintained in the 3.0.x branch on a break/fix
  basis only.  That feature, which had not been included in official VirtualGL
  packages since VirtualGL 2.1.x, was not widely used.  Furthermore, SSL
  encryption of the VGL Transport had no performance advantages over SSH
  tunneling on modern systems, and it had some security disadvantages due to its
  reliance on the RSA key exchange algorithm (which made it incompatible with TLS
  v1.3.)
  3. When using the EGL back end, VirtualGL now supports 3D applications
  (including recent versions of Google Chrome/Chromium and Mozilla Firefox) that
  use the EGL/X11 API instead of the GLX API.  As of this writing, VirtualGL does
  not support EGL pixmap surfaces or front buffer/single buffer rendering with
  EGL window surfaces.
  4. On Un*x and Mac clients, `vglconnect` now uses the OpenSSH `ControlMaster`
  option to avoid the need to authenticate with the server multiple times when
  tunneling the VGL Transport through SSH.
  5. `vglconnect` now accepts a new command-line argument (`-v`) that, when
  combined with `-s`, causes VirtualGL to be preloaded into all processes
  launched in the remote shell, thus eliminating the need to invoke `vglrun`.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1715774400">- Use %autosetup macro: allows us to eliminate usage of deprecated
  %patchN syntax.</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1729684800">- update to 3.1.1:
  * The EGL back end now supports OpenGL applications, including
    ANSYS Fluent, that use multiple X11 Display handles to render to
    the same GLX drawable.
  * The VirtualGL Faker now works around an issue whereby
    applications using the GtkGLArea widget with GTK v3.15.2 through
    v4.3.1 failed with "No available configurations for the given
    [RGBA] pixel format" if GTK v3.15.2 through v4.3.1 had previously
    been initialized on the 2D X server without VirtualGL.
  * As required by the EGL spec, the interposed `eglSwapBuffers()`
    function now flushes the current OpenGL context if the surface
    being swapped is bound to that context.  This fixes a flickering
    issue that occurred with recent versions of Firefox.
  * It is no longer necessary to enable the EGL back end in order to
    use VirtualGL with 3D applications that use the EGL/X11 API.  If
    the GLX back end is enabled, then the EGL/X11 interposer will now
    use the 3D X server.
  * Fixed an issue in the VirtualGL Faker that caused random characters
    and other elements of the Firefox browser window to disappear when
    the window was resized.
  * Fixed an issue in VirtualGL's `dlopen()` interposer
    (**libdlfaker.so**) that interfered with the correct operation of
    ANGLE (Almost Native Graphics Layer Engine.)
- add keyring for signature validation</changelog>
</package>
<package pkgid="289449cc0ab2dc1845a1169a12600349d8c1615adaccd7a73346a3b1170c9e57ed460072535f2507f8581b97ca5d0f63d0f21a33baf85dfdcae433326b206fd6" name="VirtualGL-debugsource" arch="x86_64">
  <version epoch="0" ver="3.1.1" rel="1.0.2.1.sr20241002"/>
  <changelog author="Andreas Schwab &lt;schwab@suse.de&gt;" date="1572868800">- Add riscv64 to the list of 64-bit architectures</changelog>
  <changelog author="Adam Mizerski &lt;adam@mizerski.pl&gt;" date="1581249600">- update to 2.6.3
  * Changelog in packaged ChangeLog.md or at
    https://github.com/VirtualGL/virtualgl/blob/2.6.3/ChangeLog.md
- Refreshed patch VirtualGL-link-libs.patch
- Removed patch virtualgl-nodl.patch - resolved upstream
- Added patch glx.patch</changelog>
  <changelog author="Max Lin &lt;mlin@suse.com&gt;" date="1591012800">- Remove conditional of applying glx.patch because we have newer Mesa
  in Leap 15.2
- Use upstream patch fix-Mesa-19.3.0-build.patch to replace glx.patch
  * Add fix-Mesa-19.3.0-build.patch
  * Remove glx.patch</changelog>
  <changelog author="&#xC1;kos Sz&#x151;ts &lt;szotsaki@gmail.com&gt;" date="1594036800">- update to 2.6.4
  * Changelog in packaged ChangeLog.md or at
    https://github.com/VirtualGL/virtualgl/blob/2.6.4/ChangeLog.md
- Refreshed patch VirtualGL-link-libs.patch
- Removed patch fix-Mesa-19.3.0-build.patch - resolved upstream</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1608379200">- update to 2.6.5:
  1. Fixed a race condition that sometimes caused various fatal errors in the
  interposed `glXMakeContextCurrent()` function if both GLX drawable IDs passed
  to that function were the same window handle and the corresponding X window was
  simultaneously resized in another thread.
  2. Fixed an oversight whereby the addresses of the interposed
  `glDrawBuffers()`, `glGetString()`, and `glGetStringi()` functions introduced
  in 2.6.3[2] and 2.6.4[1] were not returned from the interposed
  `glXGetProcAddress()` and `glXGetProcAddressARB()` functions.
  3. VirtualGL now works properly with 3D applications that use the
  `glNamedFramebufferDrawBuffer()` and `glNamedFramebufferDrawBuffers()`
  functions (OpenGL 4.5) or the `glFramebufferDrawBufferEXT()` and
  `glFramebufferDrawBuffersEXT()` functions (`GL_EXT_direct_state_access`) and
  render to the front buffer.
  4. Fixed a BadRequest X11 error that occurred when attempting to use the X11
  Transport with a remote X connection.
  5. Worked around an issue with certain GLX implementations that list
  10-bit-per-component FB configs ahead of 8-bit-per-component FB configs and
  incorrectly set `GLX_DRAWABLE_TYPE|=GLX_PIXMAP_BIT` for those 10-bpc FB
  configs, even though they have no X visuals attached.  This caused VirtualGL's
  interposed `glXChooseVisual()` function to choose one of the 10-bpc FB configs
  behind the scenes, which made it impossible to use the VGL Transport.
  6. Fixed an issue whereby, when using the X11 Transport, a vertically flipped
  image of a previously-rendered frame was sometimes displayed if the 3D
  application called `glFlush()` while the front buffer was the active drawing
  buffer and the render mode was `GL_FEEDBACK` or `GL_SELECT`.
  7. `vglserver_config` now works properly if invoked with a relative path
  (for example, `cd /opt/VirtualGL/bin; sudo ./vglserver_config`.)
  8. Worked around a limitation in the AMDGPU drivers that prevented recent
  versions of Google Chrome from enabling GPU acceleration when used with
  VirtualGL.</changelog>
  <changelog author="Anonymous Checkouts &lt;anoncvs@mailinator.com&gt;" date="1670760000">- update to 3.0.2
  * Now supports use of EGL as well as GLX</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1671624000">- update to 3.0.2:
  1. Support for transparent overlay visuals has been retired in this version of
  VirtualGL.  That feature will continue to be maintained in the 2.6.x branch on
  a break/fix basis only.  Most applications that once used transparent overlay
  visuals used them with color index rendering, which was removed in OpenGL 3.1
  in 2009.  Thus, almost all applications that render overlays now do so using
  other mechanisms.  Furthermore, the need for VirtualGL to hand off the
  rendering of transparent overlay visuals to the 2D X server has always limited
  the usefulness of the feature, and the discontinuation of the VirtualGL Client
  for Exceed relegated the feature to Un*x clients (with workstation-class GPUs)
  and the VGL Transport only.  Given that nVidia's implementation of transparent
  overlay visuals requires disabling the X Composite extension, which cannot be
  done in many modern Linux distributions, that further limited the feature to
  the point of uselessness.
  2. The VirtualGL Faker now assigns various permutations of common OpenGL
  rendering attributes to the available 2D X server visuals.  This maximizes the
  chances that "visual hunting" 3D applications (applications that use X11
  functions to obtain a list of 2D X server visuals, then iterate through the
  list with `glXGetConfig()` until they find a visual with a desired set of
  OpenGL rendering attributes) will find a suitable visual.
  `VGL_DEFAULTFBCONFIG` can still be used to assign a specified set of OpenGL
  rendering attributes to all 2D X server visuals, although the usefulness of
  that feature is now very limited.
  3. The VirtualGL Faker now includes an EGL back end that optionally emulates
  the GLX API using a combination of the EGL API (with the
  `EGL_EXT_platform_device` extension) and OpenGL renderbuffer objects (RBOs.)
  On supported platforms, the EGL back end allows the VirtualGL Faker to be used
  without a 3D X server.  The EGL back end can be activated by setting the
  `VGL_DISPLAY` environment variable to the path of a DRI device, such as
  * */dev/dri/card0**, or by passing that device path to `vglrun` using the `-d`
  argument.  Some obsolete OpenGL and GLX features are not supported by the EGL</changelog>
  <changelog author="ming li &lt;mli@suse.com&gt;" date="1701864000">- Update to 3.1:
  1. Fixed an issue in the EGL back end whereby textures and other OpenGL objects
  were not automatically destroyed along with the context and drawable in which
  the objects were created.
  2. Added an environment variable (`VGL_EXITFUNCTION`) that, when set to
  `_exit` or `abort`, causes the VirtualGL Faker to call the specified function
  rather than `exit()` when a non-recoverable error occurs.
  3. Fixed an issue whereby the interposed `eglCreatePlatformWindowSurface()`
  and `eglCreatePlatformWindowSurfaceEXT()` functions incorrectly treated the
  native window argument as an X window handle rather than a pointer to an X
  window handle.  This caused a segfault in VLC when using the OpenGL video
  output module.
  4. `vglserver_config` now works properly with SUSE Linux Enterprise/openSUSE
  Leap 15.
  5. If the GLX back end is in use, then the interposed `eglGetDisplay()` and
  `eglGetPlatformDisplay()` functions now return `EGL_NO_DISPLAY` rather than
  throwing a fatal error.  This allows applications such as Firefox to fail
  gracefully or to fall back and use the GLX API if EGL/X11 is unavailable.
  6. Fixed an issue whereby the VirtualGL Configuration dialog did not pop up if
  the X keyboard extension was enabled on the 2D X server.
  7. The VirtualGL Faker no longer probes the 2D X server for stereo visuals
  unless the VGL Transport or a transport plugin will be used.  Even if the 2D X
  server has stereo visuals, they will never be used with the X11 and XV
  Transports.  Probing the 2D X server for stereo visuals causes problems with
  certain OpenGL implementations and with applications, such as Tecplot 360, that
  include static builds of Mesa.  An undocumented environment variable
  (`VGL_PROBEGLX`) can be used to override the default behavior.
  8. When using the EGL back end, interposed `XQueryExtension(..., "GLX", ...)`
  and `glXQueryExtension()` function calls now return `False`, rather than
  throwing a fatal error, if the 2D X server does not have a GLX extension.  (The
  EGL back end uses the 2D X server's GLX extension for GLX error handling.)
  This allows applications, such as Chrome/Chromium, to fail gracefully or use a
  different API (such as EGL/X11) if the VirtualGL Faker is unable to emulate
  GLX.
  9. The VirtualGL Client now runs on Macs with Apple silicon CPUs (without
  requiring Rosetta 2.)
- update to 3.0.90 (3.1 beta1)
  1. The `vglconnect -x` and `vglconnect -k` options have been retired in this
  version of VirtualGL and will continue to be maintained in the 3.0.x branch on
  a break/fix basis only.  Those options, which had been undocumented since
  VirtualGL 2.6.1, were a throwback to the early days of VirtualGL when SSH was
  not universally available and SSH X11 forwarding sometimes introduced a
  performance penalty.  `vglconnect -x` did not work with most modern operating
  systems, since most modern operating systems disable X11 TCP connections by
  default.
  2. SSL encryption of the VGL Transport has been retired in this version of
  VirtualGL and will continue to be maintained in the 3.0.x branch on a break/fix
  basis only.  That feature, which had not been included in official VirtualGL
  packages since VirtualGL 2.1.x, was not widely used.  Furthermore, SSL
  encryption of the VGL Transport had no performance advantages over SSH
  tunneling on modern systems, and it had some security disadvantages due to its
  reliance on the RSA key exchange algorithm (which made it incompatible with TLS
  v1.3.)
  3. When using the EGL back end, VirtualGL now supports 3D applications
  (including recent versions of Google Chrome/Chromium and Mozilla Firefox) that
  use the EGL/X11 API instead of the GLX API.  As of this writing, VirtualGL does
  not support EGL pixmap surfaces or front buffer/single buffer rendering with
  EGL window surfaces.
  4. On Un*x and Mac clients, `vglconnect` now uses the OpenSSH `ControlMaster`
  option to avoid the need to authenticate with the server multiple times when
  tunneling the VGL Transport through SSH.
  5. `vglconnect` now accepts a new command-line argument (`-v`) that, when
  combined with `-s`, causes VirtualGL to be preloaded into all processes
  launched in the remote shell, thus eliminating the need to invoke `vglrun`.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1715774400">- Use %autosetup macro: allows us to eliminate usage of deprecated
  %patchN syntax.</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1729684800">- update to 3.1.1:
  * The EGL back end now supports OpenGL applications, including
    ANSYS Fluent, that use multiple X11 Display handles to render to
    the same GLX drawable.
  * The VirtualGL Faker now works around an issue whereby
    applications using the GtkGLArea widget with GTK v3.15.2 through
    v4.3.1 failed with "No available configurations for the given
    [RGBA] pixel format" if GTK v3.15.2 through v4.3.1 had previously
    been initialized on the 2D X server without VirtualGL.
  * As required by the EGL spec, the interposed `eglSwapBuffers()`
    function now flushes the current OpenGL context if the surface
    being swapped is bound to that context.  This fixes a flickering
    issue that occurred with recent versions of Firefox.
  * It is no longer necessary to enable the EGL back end in order to
    use VirtualGL with 3D applications that use the EGL/X11 API.  If
    the GLX back end is enabled, then the EGL/X11 interposer will now
    use the 3D X server.
  * Fixed an issue in the VirtualGL Faker that caused random characters
    and other elements of the Firefox browser window to disappear when
    the window was resized.
  * Fixed an issue in VirtualGL's `dlopen()` interposer
    (**libdlfaker.so**) that interfered with the correct operation of
    ANGLE (Almost Native Graphics Layer Engine.)
- add keyring for signature validation</changelog>
</package>
<package pkgid="de54b3b4f42bef1ad86d6511f66c6a38cbc871faa7397fa5bf1db383bfaca108701c4bf578440f55d388ba134c5270cdc943e958f24214a9b8cfbc4b3e41add5" name="VirtualGL-debugsource" arch="x86_64">
  <version epoch="0" ver="3.1.1" rel="1.1"/>
  <changelog author="Andreas Schwab &lt;schwab@suse.de&gt;" date="1572868800">- Add riscv64 to the list of 64-bit architectures</changelog>
  <changelog author="Adam Mizerski &lt;adam@mizerski.pl&gt;" date="1581249600">- update to 2.6.3
  * Changelog in packaged ChangeLog.md or at
    https://github.com/VirtualGL/virtualgl/blob/2.6.3/ChangeLog.md
- Refreshed patch VirtualGL-link-libs.patch
- Removed patch virtualgl-nodl.patch - resolved upstream
- Added patch glx.patch</changelog>
  <changelog author="Max Lin &lt;mlin@suse.com&gt;" date="1591012800">- Remove conditional of applying glx.patch because we have newer Mesa
  in Leap 15.2
- Use upstream patch fix-Mesa-19.3.0-build.patch to replace glx.patch
  * Add fix-Mesa-19.3.0-build.patch
  * Remove glx.patch</changelog>
  <changelog author="&#xC1;kos Sz&#x151;ts &lt;szotsaki@gmail.com&gt;" date="1594036800">- update to 2.6.4
  * Changelog in packaged ChangeLog.md or at
    https://github.com/VirtualGL/virtualgl/blob/2.6.4/ChangeLog.md
- Refreshed patch VirtualGL-link-libs.patch
- Removed patch fix-Mesa-19.3.0-build.patch - resolved upstream</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1608379200">- update to 2.6.5:
  1. Fixed a race condition that sometimes caused various fatal errors in the
  interposed `glXMakeContextCurrent()` function if both GLX drawable IDs passed
  to that function were the same window handle and the corresponding X window was
  simultaneously resized in another thread.
  2. Fixed an oversight whereby the addresses of the interposed
  `glDrawBuffers()`, `glGetString()`, and `glGetStringi()` functions introduced
  in 2.6.3[2] and 2.6.4[1] were not returned from the interposed
  `glXGetProcAddress()` and `glXGetProcAddressARB()` functions.
  3. VirtualGL now works properly with 3D applications that use the
  `glNamedFramebufferDrawBuffer()` and `glNamedFramebufferDrawBuffers()`
  functions (OpenGL 4.5) or the `glFramebufferDrawBufferEXT()` and
  `glFramebufferDrawBuffersEXT()` functions (`GL_EXT_direct_state_access`) and
  render to the front buffer.
  4. Fixed a BadRequest X11 error that occurred when attempting to use the X11
  Transport with a remote X connection.
  5. Worked around an issue with certain GLX implementations that list
  10-bit-per-component FB configs ahead of 8-bit-per-component FB configs and
  incorrectly set `GLX_DRAWABLE_TYPE|=GLX_PIXMAP_BIT` for those 10-bpc FB
  configs, even though they have no X visuals attached.  This caused VirtualGL's
  interposed `glXChooseVisual()` function to choose one of the 10-bpc FB configs
  behind the scenes, which made it impossible to use the VGL Transport.
  6. Fixed an issue whereby, when using the X11 Transport, a vertically flipped
  image of a previously-rendered frame was sometimes displayed if the 3D
  application called `glFlush()` while the front buffer was the active drawing
  buffer and the render mode was `GL_FEEDBACK` or `GL_SELECT`.
  7. `vglserver_config` now works properly if invoked with a relative path
  (for example, `cd /opt/VirtualGL/bin; sudo ./vglserver_config`.)
  8. Worked around a limitation in the AMDGPU drivers that prevented recent
  versions of Google Chrome from enabling GPU acceleration when used with
  VirtualGL.</changelog>
  <changelog author="Anonymous Checkouts &lt;anoncvs@mailinator.com&gt;" date="1670760000">- update to 3.0.2
  * Now supports use of EGL as well as GLX</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1671624000">- update to 3.0.2:
  1. Support for transparent overlay visuals has been retired in this version of
  VirtualGL.  That feature will continue to be maintained in the 2.6.x branch on
  a break/fix basis only.  Most applications that once used transparent overlay
  visuals used them with color index rendering, which was removed in OpenGL 3.1
  in 2009.  Thus, almost all applications that render overlays now do so using
  other mechanisms.  Furthermore, the need for VirtualGL to hand off the
  rendering of transparent overlay visuals to the 2D X server has always limited
  the usefulness of the feature, and the discontinuation of the VirtualGL Client
  for Exceed relegated the feature to Un*x clients (with workstation-class GPUs)
  and the VGL Transport only.  Given that nVidia's implementation of transparent
  overlay visuals requires disabling the X Composite extension, which cannot be
  done in many modern Linux distributions, that further limited the feature to
  the point of uselessness.
  2. The VirtualGL Faker now assigns various permutations of common OpenGL
  rendering attributes to the available 2D X server visuals.  This maximizes the
  chances that "visual hunting" 3D applications (applications that use X11
  functions to obtain a list of 2D X server visuals, then iterate through the
  list with `glXGetConfig()` until they find a visual with a desired set of
  OpenGL rendering attributes) will find a suitable visual.
  `VGL_DEFAULTFBCONFIG` can still be used to assign a specified set of OpenGL
  rendering attributes to all 2D X server visuals, although the usefulness of
  that feature is now very limited.
  3. The VirtualGL Faker now includes an EGL back end that optionally emulates
  the GLX API using a combination of the EGL API (with the
  `EGL_EXT_platform_device` extension) and OpenGL renderbuffer objects (RBOs.)
  On supported platforms, the EGL back end allows the VirtualGL Faker to be used
  without a 3D X server.  The EGL back end can be activated by setting the
  `VGL_DISPLAY` environment variable to the path of a DRI device, such as
  * */dev/dri/card0**, or by passing that device path to `vglrun` using the `-d`
  argument.  Some obsolete OpenGL and GLX features are not supported by the EGL</changelog>
  <changelog author="ming li &lt;mli@suse.com&gt;" date="1701864000">- Update to 3.1:
  1. Fixed an issue in the EGL back end whereby textures and other OpenGL objects
  were not automatically destroyed along with the context and drawable in which
  the objects were created.
  2. Added an environment variable (`VGL_EXITFUNCTION`) that, when set to
  `_exit` or `abort`, causes the VirtualGL Faker to call the specified function
  rather than `exit()` when a non-recoverable error occurs.
  3. Fixed an issue whereby the interposed `eglCreatePlatformWindowSurface()`
  and `eglCreatePlatformWindowSurfaceEXT()` functions incorrectly treated the
  native window argument as an X window handle rather than a pointer to an X
  window handle.  This caused a segfault in VLC when using the OpenGL video
  output module.
  4. `vglserver_config` now works properly with SUSE Linux Enterprise/openSUSE
  Leap 15.
  5. If the GLX back end is in use, then the interposed `eglGetDisplay()` and
  `eglGetPlatformDisplay()` functions now return `EGL_NO_DISPLAY` rather than
  throwing a fatal error.  This allows applications such as Firefox to fail
  gracefully or to fall back and use the GLX API if EGL/X11 is unavailable.
  6. Fixed an issue whereby the VirtualGL Configuration dialog did not pop up if
  the X keyboard extension was enabled on the 2D X server.
  7. The VirtualGL Faker no longer probes the 2D X server for stereo visuals
  unless the VGL Transport or a transport plugin will be used.  Even if the 2D X
  server has stereo visuals, they will never be used with the X11 and XV
  Transports.  Probing the 2D X server for stereo visuals causes problems with
  certain OpenGL implementations and with applications, such as Tecplot 360, that
  include static builds of Mesa.  An undocumented environment variable
  (`VGL_PROBEGLX`) can be used to override the default behavior.
  8. When using the EGL back end, interposed `XQueryExtension(..., "GLX", ...)`
  and `glXQueryExtension()` function calls now return `False`, rather than
  throwing a fatal error, if the 2D X server does not have a GLX extension.  (The
  EGL back end uses the 2D X server's GLX extension for GLX error handling.)
  This allows applications, such as Chrome/Chromium, to fail gracefully or use a
  different API (such as EGL/X11) if the VirtualGL Faker is unable to emulate
  GLX.
  9. The VirtualGL Client now runs on Macs with Apple silicon CPUs (without
  requiring Rosetta 2.)
- update to 3.0.90 (3.1 beta1)
  1. The `vglconnect -x` and `vglconnect -k` options have been retired in this
  version of VirtualGL and will continue to be maintained in the 3.0.x branch on
  a break/fix basis only.  Those options, which had been undocumented since
  VirtualGL 2.6.1, were a throwback to the early days of VirtualGL when SSH was
  not universally available and SSH X11 forwarding sometimes introduced a
  performance penalty.  `vglconnect -x` did not work with most modern operating
  systems, since most modern operating systems disable X11 TCP connections by
  default.
  2. SSL encryption of the VGL Transport has been retired in this version of
  VirtualGL and will continue to be maintained in the 3.0.x branch on a break/fix
  basis only.  That feature, which had not been included in official VirtualGL
  packages since VirtualGL 2.1.x, was not widely used.  Furthermore, SSL
  encryption of the VGL Transport had no performance advantages over SSH
  tunneling on modern systems, and it had some security disadvantages due to its
  reliance on the RSA key exchange algorithm (which made it incompatible with TLS
  v1.3.)
  3. When using the EGL back end, VirtualGL now supports 3D applications
  (including recent versions of Google Chrome/Chromium and Mozilla Firefox) that
  use the EGL/X11 API instead of the GLX API.  As of this writing, VirtualGL does
  not support EGL pixmap surfaces or front buffer/single buffer rendering with
  EGL window surfaces.
  4. On Un*x and Mac clients, `vglconnect` now uses the OpenSSH `ControlMaster`
  option to avoid the need to authenticate with the server multiple times when
  tunneling the VGL Transport through SSH.
  5. `vglconnect` now accepts a new command-line argument (`-v`) that, when
  combined with `-s`, causes VirtualGL to be preloaded into all processes
  launched in the remote shell, thus eliminating the need to invoke `vglrun`.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1715774400">- Use %autosetup macro: allows us to eliminate usage of deprecated
  %patchN syntax.</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1729684800">- update to 3.1.1:
  * The EGL back end now supports OpenGL applications, including
    ANSYS Fluent, that use multiple X11 Display handles to render to
    the same GLX drawable.
  * The VirtualGL Faker now works around an issue whereby
    applications using the GtkGLArea widget with GTK v3.15.2 through
    v4.3.1 failed with "No available configurations for the given
    [RGBA] pixel format" if GTK v3.15.2 through v4.3.1 had previously
    been initialized on the 2D X server without VirtualGL.
  * As required by the EGL spec, the interposed `eglSwapBuffers()`
    function now flushes the current OpenGL context if the surface
    being swapped is bound to that context.  This fixes a flickering
    issue that occurred with recent versions of Firefox.
  * It is no longer necessary to enable the EGL back end in order to
    use VirtualGL with 3D applications that use the EGL/X11 API.  If
    the GLX back end is enabled, then the EGL/X11 interposer will now
    use the 3D X server.
  * Fixed an issue in the VirtualGL Faker that caused random characters
    and other elements of the Firefox browser window to disappear when
    the window was resized.
  * Fixed an issue in VirtualGL's `dlopen()` interposer
    (**libdlfaker.so**) that interfered with the correct operation of
    ANGLE (Almost Native Graphics Layer Engine.)
- add keyring for signature validation</changelog>
</package>
<package pkgid="602fb88d71f193c696a876943f9a91f66c00987886a563d35bd1b255b59791d71dc712ff334a76518f80ec0c4672be77e360afdf809479aa7e6cb688dcb3865a" name="VirtualGL-devel" arch="i586">
  <version epoch="0" ver="3.1.1" rel="1.0.2.1.sr20241002"/>
  <changelog author="Andreas Schwab &lt;schwab@suse.de&gt;" date="1572868800">- Add riscv64 to the list of 64-bit architectures</changelog>
  <changelog author="Adam Mizerski &lt;adam@mizerski.pl&gt;" date="1581249600">- update to 2.6.3
  * Changelog in packaged ChangeLog.md or at
    https://github.com/VirtualGL/virtualgl/blob/2.6.3/ChangeLog.md
- Refreshed patch VirtualGL-link-libs.patch
- Removed patch virtualgl-nodl.patch - resolved upstream
- Added patch glx.patch</changelog>
  <changelog author="Max Lin &lt;mlin@suse.com&gt;" date="1591012800">- Remove conditional of applying glx.patch because we have newer Mesa
  in Leap 15.2
- Use upstream patch fix-Mesa-19.3.0-build.patch to replace glx.patch
  * Add fix-Mesa-19.3.0-build.patch
  * Remove glx.patch</changelog>
  <changelog author="&#xC1;kos Sz&#x151;ts &lt;szotsaki@gmail.com&gt;" date="1594036800">- update to 2.6.4
  * Changelog in packaged ChangeLog.md or at
    https://github.com/VirtualGL/virtualgl/blob/2.6.4/ChangeLog.md
- Refreshed patch VirtualGL-link-libs.patch
- Removed patch fix-Mesa-19.3.0-build.patch - resolved upstream</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1608379200">- update to 2.6.5:
  1. Fixed a race condition that sometimes caused various fatal errors in the
  interposed `glXMakeContextCurrent()` function if both GLX drawable IDs passed
  to that function were the same window handle and the corresponding X window was
  simultaneously resized in another thread.
  2. Fixed an oversight whereby the addresses of the interposed
  `glDrawBuffers()`, `glGetString()`, and `glGetStringi()` functions introduced
  in 2.6.3[2] and 2.6.4[1] were not returned from the interposed
  `glXGetProcAddress()` and `glXGetProcAddressARB()` functions.
  3. VirtualGL now works properly with 3D applications that use the
  `glNamedFramebufferDrawBuffer()` and `glNamedFramebufferDrawBuffers()`
  functions (OpenGL 4.5) or the `glFramebufferDrawBufferEXT()` and
  `glFramebufferDrawBuffersEXT()` functions (`GL_EXT_direct_state_access`) and
  render to the front buffer.
  4. Fixed a BadRequest X11 error that occurred when attempting to use the X11
  Transport with a remote X connection.
  5. Worked around an issue with certain GLX implementations that list
  10-bit-per-component FB configs ahead of 8-bit-per-component FB configs and
  incorrectly set `GLX_DRAWABLE_TYPE|=GLX_PIXMAP_BIT` for those 10-bpc FB
  configs, even though they have no X visuals attached.  This caused VirtualGL's
  interposed `glXChooseVisual()` function to choose one of the 10-bpc FB configs
  behind the scenes, which made it impossible to use the VGL Transport.
  6. Fixed an issue whereby, when using the X11 Transport, a vertically flipped
  image of a previously-rendered frame was sometimes displayed if the 3D
  application called `glFlush()` while the front buffer was the active drawing
  buffer and the render mode was `GL_FEEDBACK` or `GL_SELECT`.
  7. `vglserver_config` now works properly if invoked with a relative path
  (for example, `cd /opt/VirtualGL/bin; sudo ./vglserver_config`.)
  8. Worked around a limitation in the AMDGPU drivers that prevented recent
  versions of Google Chrome from enabling GPU acceleration when used with
  VirtualGL.</changelog>
  <changelog author="Anonymous Checkouts &lt;anoncvs@mailinator.com&gt;" date="1670760000">- update to 3.0.2
  * Now supports use of EGL as well as GLX</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1671624000">- update to 3.0.2:
  1. Support for transparent overlay visuals has been retired in this version of
  VirtualGL.  That feature will continue to be maintained in the 2.6.x branch on
  a break/fix basis only.  Most applications that once used transparent overlay
  visuals used them with color index rendering, which was removed in OpenGL 3.1
  in 2009.  Thus, almost all applications that render overlays now do so using
  other mechanisms.  Furthermore, the need for VirtualGL to hand off the
  rendering of transparent overlay visuals to the 2D X server has always limited
  the usefulness of the feature, and the discontinuation of the VirtualGL Client
  for Exceed relegated the feature to Un*x clients (with workstation-class GPUs)
  and the VGL Transport only.  Given that nVidia's implementation of transparent
  overlay visuals requires disabling the X Composite extension, which cannot be
  done in many modern Linux distributions, that further limited the feature to
  the point of uselessness.
  2. The VirtualGL Faker now assigns various permutations of common OpenGL
  rendering attributes to the available 2D X server visuals.  This maximizes the
  chances that "visual hunting" 3D applications (applications that use X11
  functions to obtain a list of 2D X server visuals, then iterate through the
  list with `glXGetConfig()` until they find a visual with a desired set of
  OpenGL rendering attributes) will find a suitable visual.
  `VGL_DEFAULTFBCONFIG` can still be used to assign a specified set of OpenGL
  rendering attributes to all 2D X server visuals, although the usefulness of
  that feature is now very limited.
  3. The VirtualGL Faker now includes an EGL back end that optionally emulates
  the GLX API using a combination of the EGL API (with the
  `EGL_EXT_platform_device` extension) and OpenGL renderbuffer objects (RBOs.)
  On supported platforms, the EGL back end allows the VirtualGL Faker to be used
  without a 3D X server.  The EGL back end can be activated by setting the
  `VGL_DISPLAY` environment variable to the path of a DRI device, such as
  * */dev/dri/card0**, or by passing that device path to `vglrun` using the `-d`
  argument.  Some obsolete OpenGL and GLX features are not supported by the EGL</changelog>
  <changelog author="ming li &lt;mli@suse.com&gt;" date="1701864000">- Update to 3.1:
  1. Fixed an issue in the EGL back end whereby textures and other OpenGL objects
  were not automatically destroyed along with the context and drawable in which
  the objects were created.
  2. Added an environment variable (`VGL_EXITFUNCTION`) that, when set to
  `_exit` or `abort`, causes the VirtualGL Faker to call the specified function
  rather than `exit()` when a non-recoverable error occurs.
  3. Fixed an issue whereby the interposed `eglCreatePlatformWindowSurface()`
  and `eglCreatePlatformWindowSurfaceEXT()` functions incorrectly treated the
  native window argument as an X window handle rather than a pointer to an X
  window handle.  This caused a segfault in VLC when using the OpenGL video
  output module.
  4. `vglserver_config` now works properly with SUSE Linux Enterprise/openSUSE
  Leap 15.
  5. If the GLX back end is in use, then the interposed `eglGetDisplay()` and
  `eglGetPlatformDisplay()` functions now return `EGL_NO_DISPLAY` rather than
  throwing a fatal error.  This allows applications such as Firefox to fail
  gracefully or to fall back and use the GLX API if EGL/X11 is unavailable.
  6. Fixed an issue whereby the VirtualGL Configuration dialog did not pop up if
  the X keyboard extension was enabled on the 2D X server.
  7. The VirtualGL Faker no longer probes the 2D X server for stereo visuals
  unless the VGL Transport or a transport plugin will be used.  Even if the 2D X
  server has stereo visuals, they will never be used with the X11 and XV
  Transports.  Probing the 2D X server for stereo visuals causes problems with
  certain OpenGL implementations and with applications, such as Tecplot 360, that
  include static builds of Mesa.  An undocumented environment variable
  (`VGL_PROBEGLX`) can be used to override the default behavior.
  8. When using the EGL back end, interposed `XQueryExtension(..., "GLX", ...)`
  and `glXQueryExtension()` function calls now return `False`, rather than
  throwing a fatal error, if the 2D X server does not have a GLX extension.  (The
  EGL back end uses the 2D X server's GLX extension for GLX error handling.)
  This allows applications, such as Chrome/Chromium, to fail gracefully or use a
  different API (such as EGL/X11) if the VirtualGL Faker is unable to emulate
  GLX.
  9. The VirtualGL Client now runs on Macs with Apple silicon CPUs (without
  requiring Rosetta 2.)
- update to 3.0.90 (3.1 beta1)
  1. The `vglconnect -x` and `vglconnect -k` options have been retired in this
  version of VirtualGL and will continue to be maintained in the 3.0.x branch on
  a break/fix basis only.  Those options, which had been undocumented since
  VirtualGL 2.6.1, were a throwback to the early days of VirtualGL when SSH was
  not universally available and SSH X11 forwarding sometimes introduced a
  performance penalty.  `vglconnect -x` did not work with most modern operating
  systems, since most modern operating systems disable X11 TCP connections by
  default.
  2. SSL encryption of the VGL Transport has been retired in this version of
  VirtualGL and will continue to be maintained in the 3.0.x branch on a break/fix
  basis only.  That feature, which had not been included in official VirtualGL
  packages since VirtualGL 2.1.x, was not widely used.  Furthermore, SSL
  encryption of the VGL Transport had no performance advantages over SSH
  tunneling on modern systems, and it had some security disadvantages due to its
  reliance on the RSA key exchange algorithm (which made it incompatible with TLS
  v1.3.)
  3. When using the EGL back end, VirtualGL now supports 3D applications
  (including recent versions of Google Chrome/Chromium and Mozilla Firefox) that
  use the EGL/X11 API instead of the GLX API.  As of this writing, VirtualGL does
  not support EGL pixmap surfaces or front buffer/single buffer rendering with
  EGL window surfaces.
  4. On Un*x and Mac clients, `vglconnect` now uses the OpenSSH `ControlMaster`
  option to avoid the need to authenticate with the server multiple times when
  tunneling the VGL Transport through SSH.
  5. `vglconnect` now accepts a new command-line argument (`-v`) that, when
  combined with `-s`, causes VirtualGL to be preloaded into all processes
  launched in the remote shell, thus eliminating the need to invoke `vglrun`.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1715774400">- Use %autosetup macro: allows us to eliminate usage of deprecated
  %patchN syntax.</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1729684800">- update to 3.1.1:
  * The EGL back end now supports OpenGL applications, including
    ANSYS Fluent, that use multiple X11 Display handles to render to
    the same GLX drawable.
  * The VirtualGL Faker now works around an issue whereby
    applications using the GtkGLArea widget with GTK v3.15.2 through
    v4.3.1 failed with "No available configurations for the given
    [RGBA] pixel format" if GTK v3.15.2 through v4.3.1 had previously
    been initialized on the 2D X server without VirtualGL.
  * As required by the EGL spec, the interposed `eglSwapBuffers()`
    function now flushes the current OpenGL context if the surface
    being swapped is bound to that context.  This fixes a flickering
    issue that occurred with recent versions of Firefox.
  * It is no longer necessary to enable the EGL back end in order to
    use VirtualGL with 3D applications that use the EGL/X11 API.  If
    the GLX back end is enabled, then the EGL/X11 interposer will now
    use the 3D X server.
  * Fixed an issue in the VirtualGL Faker that caused random characters
    and other elements of the Firefox browser window to disappear when
    the window was resized.
  * Fixed an issue in VirtualGL's `dlopen()` interposer
    (**libdlfaker.so**) that interfered with the correct operation of
    ANGLE (Almost Native Graphics Layer Engine.)
- add keyring for signature validation</changelog>
</package>
<package pkgid="e2243f69fed0151bdecf2c5e601b795b7d5dd05db071e0065cc20652438e79bf6658886fc5107e4269ac77e3454443149b4eb6312fda606a0549f9db9c66f3c8" name="VirtualGL-devel" arch="x86_64">
  <version epoch="0" ver="3.1.1" rel="1.0.2.1.sr20241002"/>
  <changelog author="Andreas Schwab &lt;schwab@suse.de&gt;" date="1572868800">- Add riscv64 to the list of 64-bit architectures</changelog>
  <changelog author="Adam Mizerski &lt;adam@mizerski.pl&gt;" date="1581249600">- update to 2.6.3
  * Changelog in packaged ChangeLog.md or at
    https://github.com/VirtualGL/virtualgl/blob/2.6.3/ChangeLog.md
- Refreshed patch VirtualGL-link-libs.patch
- Removed patch virtualgl-nodl.patch - resolved upstream
- Added patch glx.patch</changelog>
  <changelog author="Max Lin &lt;mlin@suse.com&gt;" date="1591012800">- Remove conditional of applying glx.patch because we have newer Mesa
  in Leap 15.2
- Use upstream patch fix-Mesa-19.3.0-build.patch to replace glx.patch
  * Add fix-Mesa-19.3.0-build.patch
  * Remove glx.patch</changelog>
  <changelog author="&#xC1;kos Sz&#x151;ts &lt;szotsaki@gmail.com&gt;" date="1594036800">- update to 2.6.4
  * Changelog in packaged ChangeLog.md or at
    https://github.com/VirtualGL/virtualgl/blob/2.6.4/ChangeLog.md
- Refreshed patch VirtualGL-link-libs.patch
- Removed patch fix-Mesa-19.3.0-build.patch - resolved upstream</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1608379200">- update to 2.6.5:
  1. Fixed a race condition that sometimes caused various fatal errors in the
  interposed `glXMakeContextCurrent()` function if both GLX drawable IDs passed
  to that function were the same window handle and the corresponding X window was
  simultaneously resized in another thread.
  2. Fixed an oversight whereby the addresses of the interposed
  `glDrawBuffers()`, `glGetString()`, and `glGetStringi()` functions introduced
  in 2.6.3[2] and 2.6.4[1] were not returned from the interposed
  `glXGetProcAddress()` and `glXGetProcAddressARB()` functions.
  3. VirtualGL now works properly with 3D applications that use the
  `glNamedFramebufferDrawBuffer()` and `glNamedFramebufferDrawBuffers()`
  functions (OpenGL 4.5) or the `glFramebufferDrawBufferEXT()` and
  `glFramebufferDrawBuffersEXT()` functions (`GL_EXT_direct_state_access`) and
  render to the front buffer.
  4. Fixed a BadRequest X11 error that occurred when attempting to use the X11
  Transport with a remote X connection.
  5. Worked around an issue with certain GLX implementations that list
  10-bit-per-component FB configs ahead of 8-bit-per-component FB configs and
  incorrectly set `GLX_DRAWABLE_TYPE|=GLX_PIXMAP_BIT` for those 10-bpc FB
  configs, even though they have no X visuals attached.  This caused VirtualGL's
  interposed `glXChooseVisual()` function to choose one of the 10-bpc FB configs
  behind the scenes, which made it impossible to use the VGL Transport.
  6. Fixed an issue whereby, when using the X11 Transport, a vertically flipped
  image of a previously-rendered frame was sometimes displayed if the 3D
  application called `glFlush()` while the front buffer was the active drawing
  buffer and the render mode was `GL_FEEDBACK` or `GL_SELECT`.
  7. `vglserver_config` now works properly if invoked with a relative path
  (for example, `cd /opt/VirtualGL/bin; sudo ./vglserver_config`.)
  8. Worked around a limitation in the AMDGPU drivers that prevented recent
  versions of Google Chrome from enabling GPU acceleration when used with
  VirtualGL.</changelog>
  <changelog author="Anonymous Checkouts &lt;anoncvs@mailinator.com&gt;" date="1670760000">- update to 3.0.2
  * Now supports use of EGL as well as GLX</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1671624000">- update to 3.0.2:
  1. Support for transparent overlay visuals has been retired in this version of
  VirtualGL.  That feature will continue to be maintained in the 2.6.x branch on
  a break/fix basis only.  Most applications that once used transparent overlay
  visuals used them with color index rendering, which was removed in OpenGL 3.1
  in 2009.  Thus, almost all applications that render overlays now do so using
  other mechanisms.  Furthermore, the need for VirtualGL to hand off the
  rendering of transparent overlay visuals to the 2D X server has always limited
  the usefulness of the feature, and the discontinuation of the VirtualGL Client
  for Exceed relegated the feature to Un*x clients (with workstation-class GPUs)
  and the VGL Transport only.  Given that nVidia's implementation of transparent
  overlay visuals requires disabling the X Composite extension, which cannot be
  done in many modern Linux distributions, that further limited the feature to
  the point of uselessness.
  2. The VirtualGL Faker now assigns various permutations of common OpenGL
  rendering attributes to the available 2D X server visuals.  This maximizes the
  chances that "visual hunting" 3D applications (applications that use X11
  functions to obtain a list of 2D X server visuals, then iterate through the
  list with `glXGetConfig()` until they find a visual with a desired set of
  OpenGL rendering attributes) will find a suitable visual.
  `VGL_DEFAULTFBCONFIG` can still be used to assign a specified set of OpenGL
  rendering attributes to all 2D X server visuals, although the usefulness of
  that feature is now very limited.
  3. The VirtualGL Faker now includes an EGL back end that optionally emulates
  the GLX API using a combination of the EGL API (with the
  `EGL_EXT_platform_device` extension) and OpenGL renderbuffer objects (RBOs.)
  On supported platforms, the EGL back end allows the VirtualGL Faker to be used
  without a 3D X server.  The EGL back end can be activated by setting the
  `VGL_DISPLAY` environment variable to the path of a DRI device, such as
  * */dev/dri/card0**, or by passing that device path to `vglrun` using the `-d`
  argument.  Some obsolete OpenGL and GLX features are not supported by the EGL</changelog>
  <changelog author="ming li &lt;mli@suse.com&gt;" date="1701864000">- Update to 3.1:
  1. Fixed an issue in the EGL back end whereby textures and other OpenGL objects
  were not automatically destroyed along with the context and drawable in which
  the objects were created.
  2. Added an environment variable (`VGL_EXITFUNCTION`) that, when set to
  `_exit` or `abort`, causes the VirtualGL Faker to call the specified function
  rather than `exit()` when a non-recoverable error occurs.
  3. Fixed an issue whereby the interposed `eglCreatePlatformWindowSurface()`
  and `eglCreatePlatformWindowSurfaceEXT()` functions incorrectly treated the
  native window argument as an X window handle rather than a pointer to an X
  window handle.  This caused a segfault in VLC when using the OpenGL video
  output module.
  4. `vglserver_config` now works properly with SUSE Linux Enterprise/openSUSE
  Leap 15.
  5. If the GLX back end is in use, then the interposed `eglGetDisplay()` and
  `eglGetPlatformDisplay()` functions now return `EGL_NO_DISPLAY` rather than
  throwing a fatal error.  This allows applications such as Firefox to fail
  gracefully or to fall back and use the GLX API if EGL/X11 is unavailable.
  6. Fixed an issue whereby the VirtualGL Configuration dialog did not pop up if
  the X keyboard extension was enabled on the 2D X server.
  7. The VirtualGL Faker no longer probes the 2D X server for stereo visuals
  unless the VGL Transport or a transport plugin will be used.  Even if the 2D X
  server has stereo visuals, they will never be used with the X11 and XV
  Transports.  Probing the 2D X server for stereo visuals causes problems with
  certain OpenGL implementations and with applications, such as Tecplot 360, that
  include static builds of Mesa.  An undocumented environment variable
  (`VGL_PROBEGLX`) can be used to override the default behavior.
  8. When using the EGL back end, interposed `XQueryExtension(..., "GLX", ...)`
  and `glXQueryExtension()` function calls now return `False`, rather than
  throwing a fatal error, if the 2D X server does not have a GLX extension.  (The
  EGL back end uses the 2D X server's GLX extension for GLX error handling.)
  This allows applications, such as Chrome/Chromium, to fail gracefully or use a
  different API (such as EGL/X11) if the VirtualGL Faker is unable to emulate
  GLX.
  9. The VirtualGL Client now runs on Macs with Apple silicon CPUs (without
  requiring Rosetta 2.)
- update to 3.0.90 (3.1 beta1)
  1. The `vglconnect -x` and `vglconnect -k` options have been retired in this
  version of VirtualGL and will continue to be maintained in the 3.0.x branch on
  a break/fix basis only.  Those options, which had been undocumented since
  VirtualGL 2.6.1, were a throwback to the early days of VirtualGL when SSH was
  not universally available and SSH X11 forwarding sometimes introduced a
  performance penalty.  `vglconnect -x` did not work with most modern operating
  systems, since most modern operating systems disable X11 TCP connections by
  default.
  2. SSL encryption of the VGL Transport has been retired in this version of
  VirtualGL and will continue to be maintained in the 3.0.x branch on a break/fix
  basis only.  That feature, which had not been included in official VirtualGL
  packages since VirtualGL 2.1.x, was not widely used.  Furthermore, SSL
  encryption of the VGL Transport had no performance advantages over SSH
  tunneling on modern systems, and it had some security disadvantages due to its
  reliance on the RSA key exchange algorithm (which made it incompatible with TLS
  v1.3.)
  3. When using the EGL back end, VirtualGL now supports 3D applications
  (including recent versions of Google Chrome/Chromium and Mozilla Firefox) that
  use the EGL/X11 API instead of the GLX API.  As of this writing, VirtualGL does
  not support EGL pixmap surfaces or front buffer/single buffer rendering with
  EGL window surfaces.
  4. On Un*x and Mac clients, `vglconnect` now uses the OpenSSH `ControlMaster`
  option to avoid the need to authenticate with the server multiple times when
  tunneling the VGL Transport through SSH.
  5. `vglconnect` now accepts a new command-line argument (`-v`) that, when
  combined with `-s`, causes VirtualGL to be preloaded into all processes
  launched in the remote shell, thus eliminating the need to invoke `vglrun`.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1715774400">- Use %autosetup macro: allows us to eliminate usage of deprecated
  %patchN syntax.</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1729684800">- update to 3.1.1:
  * The EGL back end now supports OpenGL applications, including
    ANSYS Fluent, that use multiple X11 Display handles to render to
    the same GLX drawable.
  * The VirtualGL Faker now works around an issue whereby
    applications using the GtkGLArea widget with GTK v3.15.2 through
    v4.3.1 failed with "No available configurations for the given
    [RGBA] pixel format" if GTK v3.15.2 through v4.3.1 had previously
    been initialized on the 2D X server without VirtualGL.
  * As required by the EGL spec, the interposed `eglSwapBuffers()`
    function now flushes the current OpenGL context if the surface
    being swapped is bound to that context.  This fixes a flickering
    issue that occurred with recent versions of Firefox.
  * It is no longer necessary to enable the EGL back end in order to
    use VirtualGL with 3D applications that use the EGL/X11 API.  If
    the GLX back end is enabled, then the EGL/X11 interposer will now
    use the 3D X server.
  * Fixed an issue in the VirtualGL Faker that caused random characters
    and other elements of the Firefox browser window to disappear when
    the window was resized.
  * Fixed an issue in VirtualGL's `dlopen()` interposer
    (**libdlfaker.so**) that interfered with the correct operation of
    ANGLE (Almost Native Graphics Layer Engine.)
- add keyring for signature validation</changelog>
</package>
<package pkgid="3ec56bcddc66aff489133033c5bd9123c3ff08f0d02f8adf6fb11e86bc006dd892259b39d19a66658398a9bba342bf2827ff15d0716ace3b6d48cdfc37e7289c" name="VirtualGL-devel" arch="x86_64">
  <version epoch="0" ver="3.1.1" rel="1.1"/>
  <changelog author="Andreas Schwab &lt;schwab@suse.de&gt;" date="1572868800">- Add riscv64 to the list of 64-bit architectures</changelog>
  <changelog author="Adam Mizerski &lt;adam@mizerski.pl&gt;" date="1581249600">- update to 2.6.3
  * Changelog in packaged ChangeLog.md or at
    https://github.com/VirtualGL/virtualgl/blob/2.6.3/ChangeLog.md
- Refreshed patch VirtualGL-link-libs.patch
- Removed patch virtualgl-nodl.patch - resolved upstream
- Added patch glx.patch</changelog>
  <changelog author="Max Lin &lt;mlin@suse.com&gt;" date="1591012800">- Remove conditional of applying glx.patch because we have newer Mesa
  in Leap 15.2
- Use upstream patch fix-Mesa-19.3.0-build.patch to replace glx.patch
  * Add fix-Mesa-19.3.0-build.patch
  * Remove glx.patch</changelog>
  <changelog author="&#xC1;kos Sz&#x151;ts &lt;szotsaki@gmail.com&gt;" date="1594036800">- update to 2.6.4
  * Changelog in packaged ChangeLog.md or at
    https://github.com/VirtualGL/virtualgl/blob/2.6.4/ChangeLog.md
- Refreshed patch VirtualGL-link-libs.patch
- Removed patch fix-Mesa-19.3.0-build.patch - resolved upstream</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1608379200">- update to 2.6.5:
  1. Fixed a race condition that sometimes caused various fatal errors in the
  interposed `glXMakeContextCurrent()` function if both GLX drawable IDs passed
  to that function were the same window handle and the corresponding X window was
  simultaneously resized in another thread.
  2. Fixed an oversight whereby the addresses of the interposed
  `glDrawBuffers()`, `glGetString()`, and `glGetStringi()` functions introduced
  in 2.6.3[2] and 2.6.4[1] were not returned from the interposed
  `glXGetProcAddress()` and `glXGetProcAddressARB()` functions.
  3. VirtualGL now works properly with 3D applications that use the
  `glNamedFramebufferDrawBuffer()` and `glNamedFramebufferDrawBuffers()`
  functions (OpenGL 4.5) or the `glFramebufferDrawBufferEXT()` and
  `glFramebufferDrawBuffersEXT()` functions (`GL_EXT_direct_state_access`) and
  render to the front buffer.
  4. Fixed a BadRequest X11 error that occurred when attempting to use the X11
  Transport with a remote X connection.
  5. Worked around an issue with certain GLX implementations that list
  10-bit-per-component FB configs ahead of 8-bit-per-component FB configs and
  incorrectly set `GLX_DRAWABLE_TYPE|=GLX_PIXMAP_BIT` for those 10-bpc FB
  configs, even though they have no X visuals attached.  This caused VirtualGL's
  interposed `glXChooseVisual()` function to choose one of the 10-bpc FB configs
  behind the scenes, which made it impossible to use the VGL Transport.
  6. Fixed an issue whereby, when using the X11 Transport, a vertically flipped
  image of a previously-rendered frame was sometimes displayed if the 3D
  application called `glFlush()` while the front buffer was the active drawing
  buffer and the render mode was `GL_FEEDBACK` or `GL_SELECT`.
  7. `vglserver_config` now works properly if invoked with a relative path
  (for example, `cd /opt/VirtualGL/bin; sudo ./vglserver_config`.)
  8. Worked around a limitation in the AMDGPU drivers that prevented recent
  versions of Google Chrome from enabling GPU acceleration when used with
  VirtualGL.</changelog>
  <changelog author="Anonymous Checkouts &lt;anoncvs@mailinator.com&gt;" date="1670760000">- update to 3.0.2
  * Now supports use of EGL as well as GLX</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1671624000">- update to 3.0.2:
  1. Support for transparent overlay visuals has been retired in this version of
  VirtualGL.  That feature will continue to be maintained in the 2.6.x branch on
  a break/fix basis only.  Most applications that once used transparent overlay
  visuals used them with color index rendering, which was removed in OpenGL 3.1
  in 2009.  Thus, almost all applications that render overlays now do so using
  other mechanisms.  Furthermore, the need for VirtualGL to hand off the
  rendering of transparent overlay visuals to the 2D X server has always limited
  the usefulness of the feature, and the discontinuation of the VirtualGL Client
  for Exceed relegated the feature to Un*x clients (with workstation-class GPUs)
  and the VGL Transport only.  Given that nVidia's implementation of transparent
  overlay visuals requires disabling the X Composite extension, which cannot be
  done in many modern Linux distributions, that further limited the feature to
  the point of uselessness.
  2. The VirtualGL Faker now assigns various permutations of common OpenGL
  rendering attributes to the available 2D X server visuals.  This maximizes the
  chances that "visual hunting" 3D applications (applications that use X11
  functions to obtain a list of 2D X server visuals, then iterate through the
  list with `glXGetConfig()` until they find a visual with a desired set of
  OpenGL rendering attributes) will find a suitable visual.
  `VGL_DEFAULTFBCONFIG` can still be used to assign a specified set of OpenGL
  rendering attributes to all 2D X server visuals, although the usefulness of
  that feature is now very limited.
  3. The VirtualGL Faker now includes an EGL back end that optionally emulates
  the GLX API using a combination of the EGL API (with the
  `EGL_EXT_platform_device` extension) and OpenGL renderbuffer objects (RBOs.)
  On supported platforms, the EGL back end allows the VirtualGL Faker to be used
  without a 3D X server.  The EGL back end can be activated by setting the
  `VGL_DISPLAY` environment variable to the path of a DRI device, such as
  * */dev/dri/card0**, or by passing that device path to `vglrun` using the `-d`
  argument.  Some obsolete OpenGL and GLX features are not supported by the EGL</changelog>
  <changelog author="ming li &lt;mli@suse.com&gt;" date="1701864000">- Update to 3.1:
  1. Fixed an issue in the EGL back end whereby textures and other OpenGL objects
  were not automatically destroyed along with the context and drawable in which
  the objects were created.
  2. Added an environment variable (`VGL_EXITFUNCTION`) that, when set to
  `_exit` or `abort`, causes the VirtualGL Faker to call the specified function
  rather than `exit()` when a non-recoverable error occurs.
  3. Fixed an issue whereby the interposed `eglCreatePlatformWindowSurface()`
  and `eglCreatePlatformWindowSurfaceEXT()` functions incorrectly treated the
  native window argument as an X window handle rather than a pointer to an X
  window handle.  This caused a segfault in VLC when using the OpenGL video
  output module.
  4. `vglserver_config` now works properly with SUSE Linux Enterprise/openSUSE
  Leap 15.
  5. If the GLX back end is in use, then the interposed `eglGetDisplay()` and
  `eglGetPlatformDisplay()` functions now return `EGL_NO_DISPLAY` rather than
  throwing a fatal error.  This allows applications such as Firefox to fail
  gracefully or to fall back and use the GLX API if EGL/X11 is unavailable.
  6. Fixed an issue whereby the VirtualGL Configuration dialog did not pop up if
  the X keyboard extension was enabled on the 2D X server.
  7. The VirtualGL Faker no longer probes the 2D X server for stereo visuals
  unless the VGL Transport or a transport plugin will be used.  Even if the 2D X
  server has stereo visuals, they will never be used with the X11 and XV
  Transports.  Probing the 2D X server for stereo visuals causes problems with
  certain OpenGL implementations and with applications, such as Tecplot 360, that
  include static builds of Mesa.  An undocumented environment variable
  (`VGL_PROBEGLX`) can be used to override the default behavior.
  8. When using the EGL back end, interposed `XQueryExtension(..., "GLX", ...)`
  and `glXQueryExtension()` function calls now return `False`, rather than
  throwing a fatal error, if the 2D X server does not have a GLX extension.  (The
  EGL back end uses the 2D X server's GLX extension for GLX error handling.)
  This allows applications, such as Chrome/Chromium, to fail gracefully or use a
  different API (such as EGL/X11) if the VirtualGL Faker is unable to emulate
  GLX.
  9. The VirtualGL Client now runs on Macs with Apple silicon CPUs (without
  requiring Rosetta 2.)
- update to 3.0.90 (3.1 beta1)
  1. The `vglconnect -x` and `vglconnect -k` options have been retired in this
  version of VirtualGL and will continue to be maintained in the 3.0.x branch on
  a break/fix basis only.  Those options, which had been undocumented since
  VirtualGL 2.6.1, were a throwback to the early days of VirtualGL when SSH was
  not universally available and SSH X11 forwarding sometimes introduced a
  performance penalty.  `vglconnect -x` did not work with most modern operating
  systems, since most modern operating systems disable X11 TCP connections by
  default.
  2. SSL encryption of the VGL Transport has been retired in this version of
  VirtualGL and will continue to be maintained in the 3.0.x branch on a break/fix
  basis only.  That feature, which had not been included in official VirtualGL
  packages since VirtualGL 2.1.x, was not widely used.  Furthermore, SSL
  encryption of the VGL Transport had no performance advantages over SSH
  tunneling on modern systems, and it had some security disadvantages due to its
  reliance on the RSA key exchange algorithm (which made it incompatible with TLS
  v1.3.)
  3. When using the EGL back end, VirtualGL now supports 3D applications
  (including recent versions of Google Chrome/Chromium and Mozilla Firefox) that
  use the EGL/X11 API instead of the GLX API.  As of this writing, VirtualGL does
  not support EGL pixmap surfaces or front buffer/single buffer rendering with
  EGL window surfaces.
  4. On Un*x and Mac clients, `vglconnect` now uses the OpenSSH `ControlMaster`
  option to avoid the need to authenticate with the server multiple times when
  tunneling the VGL Transport through SSH.
  5. `vglconnect` now accepts a new command-line argument (`-v`) that, when
  combined with `-s`, causes VirtualGL to be preloaded into all processes
  launched in the remote shell, thus eliminating the need to invoke `vglrun`.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1715774400">- Use %autosetup macro: allows us to eliminate usage of deprecated
  %patchN syntax.</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1729684800">- update to 3.1.1:
  * The EGL back end now supports OpenGL applications, including
    ANSYS Fluent, that use multiple X11 Display handles to render to
    the same GLX drawable.
  * The VirtualGL Faker now works around an issue whereby
    applications using the GtkGLArea widget with GTK v3.15.2 through
    v4.3.1 failed with "No available configurations for the given
    [RGBA] pixel format" if GTK v3.15.2 through v4.3.1 had previously
    been initialized on the 2D X server without VirtualGL.
  * As required by the EGL spec, the interposed `eglSwapBuffers()`
    function now flushes the current OpenGL context if the surface
    being swapped is bound to that context.  This fixes a flickering
    issue that occurred with recent versions of Firefox.
  * It is no longer necessary to enable the EGL back end in order to
    use VirtualGL with 3D applications that use the EGL/X11 API.  If
    the GLX back end is enabled, then the EGL/X11 interposer will now
    use the 3D X server.
  * Fixed an issue in the VirtualGL Faker that caused random characters
    and other elements of the Firefox browser window to disappear when
    the window was resized.
  * Fixed an issue in VirtualGL's `dlopen()` interposer
    (**libdlfaker.so**) that interfered with the correct operation of
    ANGLE (Almost Native Graphics Layer Engine.)
- add keyring for signature validation</changelog>
</package>
<package pkgid="cb9a89ce874de4abe056994ec0c6dedc4905ac5295b37a51108a4bf6ef0051fd5fcc4db65db1b9f265c982ed0a3ba8bb4f1a803336e7d3aa647de22f980d5fb1" name="WPEWebDriver" arch="i586">
  <version epoch="0" ver="2.46.0" rel="2.0.2.1.sr20241103"/>
  <changelog author="Joan Torres &lt;joan.torres@suse.com&gt;" date="1688126400">- Init repo.</changelog>
  <changelog author="Joan Torres &lt;joan.torres@suse.com&gt;" date="1695729600">- Update to version 2.42.0:
  * GBM is no longer required for WebGL implementation.
  * Add API to configure experimental features at runtime.
  * Add API to set the percentage of volume space that can be used for data storage.
  * Fix several crashes and rendering issues.</changelog>
  <changelog author="Joan Torres &lt;joan.torres@suse.com&gt;" date="1700654400">- Update to version 2.42.2:
  * Bump Safari version in user agent header.
  * Fix CSP regression that broke Unity WebGL applications.
  * Fix the build with GBM disabled.
  * Fix several crashes and rendering issues.
- Temporaly disable LTO which is currently failing to link
  (will be solved in a next release).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1714737600">- Update to version 2.44.1:
  + Do not schedule layer flushes when drawing area size is empty.
  + Fix videos with alpha when using the DMA-BUF sink.
  + Fix the build with ENABLE_WEB_AUDIO=OFF.
  + Fix the build with ENABLE_VIDEO=OFF.
  + Fix the build with USE_GBM=OFF.
  + Fix the build in 32bit platforms
  + Fix several crashes and rendering issues.
  + For all changes between 2.42.2 and 2.44.1, please see packaged
    NEWS file.
- Add libbacktrace-devel BuildRequires: new dependency.
- Drop fix-include-dirs.patch and fix-load-backend-fdo-lib.patch:
  no longer needed.</changelog>
  <changelog author="Joan Torres &lt;joan.torres@suse.com&gt;" date="1716465600">- Update to version 2.44.2:
  * Fix CVE-2024-27834 bsc#1225071
  * Decrease input notifications for gamepad inputs.
  * Disable the gst-libav AAC decoder.
  * Make gamepads visible on axis movements, and not only on button presses.
  * Make user scripts and style sheets visible in the Web Inspector.
  * Use the geolocation portal where available, with the existing Geoclue as fallback if the portal is not usable.
  * Use optimized assembler BoringSSL modules with USE_LIBWEBRTC enabled.
  * Fix mouse location in WebDriver when output device scaling is in effect.
  * Fix touch input event propagation.
  * Fix the build on 32-bit ARM with USE_LIBWEBRTC enabled.
  * Fix the build with ENABLE_WEBAUDIO disabled.
  * Fix several crashes and rendering issues.</changelog>
  <changelog author="Joan Torres &lt;joan.torres@suse.com&gt;" date="1717502400">- Stop passing -DENABLE_SAMPLING_PROFILER=OFF and -DENABLE_C_LOOP=ON
  on arch64, it's no longer needed to avoid build failure.
- Set wayland and xkbcommon includes through CFLAGS and CXXFLAGS,
  it looks like the compiler can't automatically find them.</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1727524800">- Update to version 2.46.0:
  + Fix rendering of images in PDF documents.
  + Make process launching fast again.
  + Fix webkit_web_resource_get_data() regression that caused we
    were always retuning empty data.
  + Fix the build with touch events disabled.
  + Fix the build with GLib &lt; 2.68.
  + Fix several crashes and rendering issues.
  + For all changes between 2.44.2 and 2.45.90, please see packaged
    NEWS file.
- Add libinput to BuildRequires: new dependency.
- Pass USE_SYSTEM_SYSPROF_CAPTURE=NO to cmake, avoid building
  sysprof capture for now.
- Only disable LTO on x86 and ppc64le.
- Package libWPEPlatform (new WPE platform API).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1732104000">- Add fix-icu-build.patch: Support ICU 76.1 build</changelog>
</package>
<package pkgid="a7a4f620b5ad4718b29b672dde7eaca310ad0d01a38ac1d88df775e685a104ba7a953359b50d877bcdf1bc9afd60eba5448f90b13cc1d20f198edcb2b4a0a845" name="WPEWebDriver" arch="x86_64">
  <version epoch="0" ver="2.46.0" rel="2.0.2.1.sr20241103"/>
  <changelog author="Joan Torres &lt;joan.torres@suse.com&gt;" date="1688126400">- Init repo.</changelog>
  <changelog author="Joan Torres &lt;joan.torres@suse.com&gt;" date="1695729600">- Update to version 2.42.0:
  * GBM is no longer required for WebGL implementation.
  * Add API to configure experimental features at runtime.
  * Add API to set the percentage of volume space that can be used for data storage.
  * Fix several crashes and rendering issues.</changelog>
  <changelog author="Joan Torres &lt;joan.torres@suse.com&gt;" date="1700654400">- Update to version 2.42.2:
  * Bump Safari version in user agent header.
  * Fix CSP regression that broke Unity WebGL applications.
  * Fix the build with GBM disabled.
  * Fix several crashes and rendering issues.
- Temporaly disable LTO which is currently failing to link
  (will be solved in a next release).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1714737600">- Update to version 2.44.1:
  + Do not schedule layer flushes when drawing area size is empty.
  + Fix videos with alpha when using the DMA-BUF sink.
  + Fix the build with ENABLE_WEB_AUDIO=OFF.
  + Fix the build with ENABLE_VIDEO=OFF.
  + Fix the build with USE_GBM=OFF.
  + Fix the build in 32bit platforms
  + Fix several crashes and rendering issues.
  + For all changes between 2.42.2 and 2.44.1, please see packaged
    NEWS file.
- Add libbacktrace-devel BuildRequires: new dependency.
- Drop fix-include-dirs.patch and fix-load-backend-fdo-lib.patch:
  no longer needed.</changelog>
  <changelog author="Joan Torres &lt;joan.torres@suse.com&gt;" date="1716465600">- Update to version 2.44.2:
  * Fix CVE-2024-27834 bsc#1225071
  * Decrease input notifications for gamepad inputs.
  * Disable the gst-libav AAC decoder.
  * Make gamepads visible on axis movements, and not only on button presses.
  * Make user scripts and style sheets visible in the Web Inspector.
  * Use the geolocation portal where available, with the existing Geoclue as fallback if the portal is not usable.
  * Use optimized assembler BoringSSL modules with USE_LIBWEBRTC enabled.
  * Fix mouse location in WebDriver when output device scaling is in effect.
  * Fix touch input event propagation.
  * Fix the build on 32-bit ARM with USE_LIBWEBRTC enabled.
  * Fix the build with ENABLE_WEBAUDIO disabled.
  * Fix several crashes and rendering issues.</changelog>
  <changelog author="Joan Torres &lt;joan.torres@suse.com&gt;" date="1717502400">- Stop passing -DENABLE_SAMPLING_PROFILER=OFF and -DENABLE_C_LOOP=ON
  on arch64, it's no longer needed to avoid build failure.
- Set wayland and xkbcommon includes through CFLAGS and CXXFLAGS,
  it looks like the compiler can't automatically find them.</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1727524800">- Update to version 2.46.0:
  + Fix rendering of images in PDF documents.
  + Make process launching fast again.
  + Fix webkit_web_resource_get_data() regression that caused we
    were always retuning empty data.
  + Fix the build with touch events disabled.
  + Fix the build with GLib &lt; 2.68.
  + Fix several crashes and rendering issues.
  + For all changes between 2.44.2 and 2.45.90, please see packaged
    NEWS file.
- Add libinput to BuildRequires: new dependency.
- Pass USE_SYSTEM_SYSPROF_CAPTURE=NO to cmake, avoid building
  sysprof capture for now.
- Only disable LTO on x86 and ppc64le.
- Package libWPEPlatform (new WPE platform API).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1732104000">- Add fix-icu-build.patch: Support ICU 76.1 build</changelog>
</package>
<package pkgid="362fc4f44a6c9c2d43d29b76c1cf647673c9c69ac00b978979a03936ca685b503e5a5c5d077e12d062de9a6a1a9938e56cfab0cf88775e69b1f08c83999661d5" name="WPEWebDriver-debuginfo" arch="i586">
  <version epoch="0" ver="2.46.0" rel="2.0.2.1.sr20241103"/>
  <changelog author="Joan Torres &lt;joan.torres@suse.com&gt;" date="1688126400">- Init repo.</changelog>
  <changelog author="Joan Torres &lt;joan.torres@suse.com&gt;" date="1695729600">- Update to version 2.42.0:
  * GBM is no longer required for WebGL implementation.
  * Add API to configure experimental features at runtime.
  * Add API to set the percentage of volume space that can be used for data storage.
  * Fix several crashes and rendering issues.</changelog>
  <changelog author="Joan Torres &lt;joan.torres@suse.com&gt;" date="1700654400">- Update to version 2.42.2:
  * Bump Safari version in user agent header.
  * Fix CSP regression that broke Unity WebGL applications.
  * Fix the build with GBM disabled.
  * Fix several crashes and rendering issues.
- Temporaly disable LTO which is currently failing to link
  (will be solved in a next release).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1714737600">- Update to version 2.44.1:
  + Do not schedule layer flushes when drawing area size is empty.
  + Fix videos with alpha when using the DMA-BUF sink.
  + Fix the build with ENABLE_WEB_AUDIO=OFF.
  + Fix the build with ENABLE_VIDEO=OFF.
  + Fix the build with USE_GBM=OFF.
  + Fix the build in 32bit platforms
  + Fix several crashes and rendering issues.
  + For all changes between 2.42.2 and 2.44.1, please see packaged
    NEWS file.
- Add libbacktrace-devel BuildRequires: new dependency.
- Drop fix-include-dirs.patch and fix-load-backend-fdo-lib.patch:
  no longer needed.</changelog>
  <changelog author="Joan Torres &lt;joan.torres@suse.com&gt;" date="1716465600">- Update to version 2.44.2:
  * Fix CVE-2024-27834 bsc#1225071
  * Decrease input notifications for gamepad inputs.
  * Disable the gst-libav AAC decoder.
  * Make gamepads visible on axis movements, and not only on button presses.
  * Make user scripts and style sheets visible in the Web Inspector.
  * Use the geolocation portal where available, with the existing Geoclue as fallback if the portal is not usable.
  * Use optimized assembler BoringSSL modules with USE_LIBWEBRTC enabled.
  * Fix mouse location in WebDriver when output device scaling is in effect.
  * Fix touch input event propagation.
  * Fix the build on 32-bit ARM with USE_LIBWEBRTC enabled.
  * Fix the build with ENABLE_WEBAUDIO disabled.
  * Fix several crashes and rendering issues.</changelog>
  <changelog author="Joan Torres &lt;joan.torres@suse.com&gt;" date="1717502400">- Stop passing -DENABLE_SAMPLING_PROFILER=OFF and -DENABLE_C_LOOP=ON
  on arch64, it's no longer needed to avoid build failure.
- Set wayland and xkbcommon includes through CFLAGS and CXXFLAGS,
  it looks like the compiler can't automatically find them.</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1727524800">- Update to version 2.46.0:
  + Fix rendering of images in PDF documents.
  + Make process launching fast again.
  + Fix webkit_web_resource_get_data() regression that caused we
    were always retuning empty data.
  + Fix the build with touch events disabled.
  + Fix the build with GLib &lt; 2.68.
  + Fix several crashes and rendering issues.
  + For all changes between 2.44.2 and 2.45.90, please see packaged
    NEWS file.
- Add libinput to BuildRequires: new dependency.
- Pass USE_SYSTEM_SYSPROF_CAPTURE=NO to cmake, avoid building
  sysprof capture for now.
- Only disable LTO on x86 and ppc64le.
- Package libWPEPlatform (new WPE platform API).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1732104000">- Add fix-icu-build.patch: Support ICU 76.1 build</changelog>
</package>
<package pkgid="73bf8fd3cfbdf40cf876fc37f79e2bf090a65fda648597479750f7c05778d1968518648a4d31b7e97dd077d00b1e9589100c499202b5202a7f6f7065a86eee8c" name="WPEWebDriver-debuginfo" arch="x86_64">
  <version epoch="0" ver="2.46.0" rel="2.0.2.1.sr20241103"/>
  <changelog author="Joan Torres &lt;joan.torres@suse.com&gt;" date="1688126400">- Init repo.</changelog>
  <changelog author="Joan Torres &lt;joan.torres@suse.com&gt;" date="1695729600">- Update to version 2.42.0:
  * GBM is no longer required for WebGL implementation.
  * Add API to configure experimental features at runtime.
  * Add API to set the percentage of volume space that can be used for data storage.
  * Fix several crashes and rendering issues.</changelog>
  <changelog author="Joan Torres &lt;joan.torres@suse.com&gt;" date="1700654400">- Update to version 2.42.2:
  * Bump Safari version in user agent header.
  * Fix CSP regression that broke Unity WebGL applications.
  * Fix the build with GBM disabled.
  * Fix several crashes and rendering issues.
- Temporaly disable LTO which is currently failing to link
  (will be solved in a next release).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1714737600">- Update to version 2.44.1:
  + Do not schedule layer flushes when drawing area size is empty.
  + Fix videos with alpha when using the DMA-BUF sink.
  + Fix the build with ENABLE_WEB_AUDIO=OFF.
  + Fix the build with ENABLE_VIDEO=OFF.
  + Fix the build with USE_GBM=OFF.
  + Fix the build in 32bit platforms
  + Fix several crashes and rendering issues.
  + For all changes between 2.42.2 and 2.44.1, please see packaged
    NEWS file.
- Add libbacktrace-devel BuildRequires: new dependency.
- Drop fix-include-dirs.patch and fix-load-backend-fdo-lib.patch:
  no longer needed.</changelog>
  <changelog author="Joan Torres &lt;joan.torres@suse.com&gt;" date="1716465600">- Update to version 2.44.2:
  * Fix CVE-2024-27834 bsc#1225071
  * Decrease input notifications for gamepad inputs.
  * Disable the gst-libav AAC decoder.
  * Make gamepads visible on axis movements, and not only on button presses.
  * Make user scripts and style sheets visible in the Web Inspector.
  * Use the geolocation portal where available, with the existing Geoclue as fallback if the portal is not usable.
  * Use optimized assembler BoringSSL modules with USE_LIBWEBRTC enabled.
  * Fix mouse location in WebDriver when output device scaling is in effect.
  * Fix touch input event propagation.
  * Fix the build on 32-bit ARM with USE_LIBWEBRTC enabled.
  * Fix the build with ENABLE_WEBAUDIO disabled.
  * Fix several crashes and rendering issues.</changelog>
  <changelog author="Joan Torres &lt;joan.torres@suse.com&gt;" date="1717502400">- Stop passing -DENABLE_SAMPLING_PROFILER=OFF and -DENABLE_C_LOOP=ON
  on arch64, it's no longer needed to avoid build failure.
- Set wayland and xkbcommon includes through CFLAGS and CXXFLAGS,
  it looks like the compiler can't automatically find them.</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1727524800">- Update to version 2.46.0:
  + Fix rendering of images in PDF documents.
  + Make process launching fast again.
  + Fix webkit_web_resource_get_data() regression that caused we
    were always retuning empty data.
  + Fix the build with touch events disabled.
  + Fix the build with GLib &lt; 2.68.
  + Fix several crashes and rendering issues.
  + For all changes between 2.44.2 and 2.45.90, please see packaged
    NEWS file.
- Add libinput to BuildRequires: new dependency.
- Pass USE_SYSTEM_SYSPROF_CAPTURE=NO to cmake, avoid building
  sysprof capture for now.
- Only disable LTO on x86 and ppc64le.
- Package libWPEPlatform (new WPE platform API).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1732104000">- Add fix-icu-build.patch: Support ICU 76.1 build</changelog>
</package>
<package pkgid="126ca456280dc78ab7518634ca3fb5f214bafd6c44329b64ca45242ed218360ea495c52e99bad885c0e2f79981105fbb47d309260f772f4e14140cd95d4fd5f0" name="WebKitGTK-4.0-lang" arch="noarch">
  <version epoch="0" ver="2.46.3" rel="2.0.5.1.sr20241103"/>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1709640000">- baselibs.conf: Do not build libjavascriptcoregtk-4_1-0-32bit and
  libwebkit2gtk-4_1-0-32bit: they are not used, and in fact not
  built in Factory (build excluded).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1710590400">- Update to version 2.44.0 (boo#1222010):
  + Make the DOM accessibility tree reachable from UI process with
    GTK4.
  + Removed the X11 and WPE renderers in favor of DMA-BUF.
  + Improved vblank synchronization when rendering.
  + Removed key event reinjection in GTK4 to make keyboard
    shortcuts work in web sites.
  + Fix gamepads detection by correctly handling focused window in
    GTK4.
  + Security fixes: CVE-2024-23252, CVE-2024-23254, CVE-2024-23263,
  CVE-2024-23280, CVE-2024-23284, CVE-2023-42950, CVE-2023-42956,
  CVE-2023-42843.
- Rebase webkit2gtk3-disable-dmabuf-nvidia.patch.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1710763200">- Add webkit2gtk3-271108.patch: Fix build on 32bit archs
  (https://bugs.webkit.org/show_bug.cgi?id=271108).</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1710936000">- Use WebAssembly on aarch64. It is the upstream default and no
  longer makes the build fail. Stop passing -DENABLE_C_LOOP=ON,
  - DENABLE_WEBASSEMBLY=OFF and -DENABLE_SAMPLING_PROFILER=OFF for
  the same reason.
- Drop webkit2gtk3-llint-build-fix.patch: no longer needed.
- Update some version requirements to match cmake checks.</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1713268800">- Update to version 2.44.1:
  + Fix handling of lifetime of web view child dialogs in GTK4.
  + Do not schedule layer flushes when drawing area size is empty.
  + Fix videos with alpha when using the DMA-BUF sink.
  + Fix the build with USE_GBM=OFF.
  + Fix the build in 32bit platforms
  + Fix several crashes and rendering issues.
- Drop webkit2gtk3-271108.patch: fixed upstream.</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1715947200">- Update to version 2.44.2 (boo#1225071):
  + Make gamepads visible on axis movements, and not only on
    button presses.
  + Disable the gst-libav AAC decoder.
  + Make user scripts and style sheets visible in the Web
    Inspector.
  + Use the geolocation portal where available, with the existing
    geoclue as fallback if the portal is not usable.
  + Use the printing portal when running sandboxed.
  + Use the file transfer portal for drag and drop when running
    sandboxed.
  + Avoid notifying an empty cursor rectangle to input methods.
  + Remove empty bar shown in detached inspector windows.
  + Consider keycode when activating application accelerators.
  + Fix the build with ENABLE_WEBAUDIO disabled.
  + Fix several crashes and rendering issues.
  + Security fixes: CVE-2024-27834, CVE-2024-27808, CVE-2024-27820,
    CVE-2024-27833.
- Update keyring (taken from rawhide).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1719921600">- Add 9d5844679af8f84036f1b800307e799bd7ab73ba.patch VA+DMABuf
  videos flicker</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1722513600">- Add CVE fixes:
  + webkit2gtk3-CVE-2024-40776.patch (boo#1228613 CVE-2024-40776)
  + webkit2gtk3-CVE-2024-40779.patch (boo#1228693 CVE-2024-40779)
  + webkit2gtk3-CVE-2024-40780.patch (boo#1228694 CVE-2024-40780)
  + webkit2gtk3-CVE-2024-40782.patch (boo#1228695 CVE-2024-40782)</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1723550400">- Update to version 2.44.3 (boo#1228696 boo#1228697 boo#1228698):
  + Fix web process cache suspend/resume when sandbox is enabled.
  + Fix accelerated images dissapearing after scrolling.
  + Fix video flickering with DMA-BUF sink.
  + Fix pointer lock on X11.
  + Fix movement delta on mouse events in GTK3.
  + Undeprecate console message API and make it available in 2022
    API.
  + Fix several crashes and rendering issues.
  + Security fixes: CVE-2024-40776, CVE-2024-40779, CVE-2024-40780,
    CVE-2023-40782, CVE-2024-40785, CVE-2024-40789, CVE-2024-40794,
    CVE-2024-4558, CVE-2024-27838, CVE-2024-27851.
- Drop patches now upstream:
  9d5844679af8f84036f1b800307e799bd7ab73ba.patch
  webkit2gtk3-CVE-2024-40776.patch
  webkit2gtk3-CVE-2024-40779.patch
  webkit2gtk3-CVE-2024-40780.patch
  webkit2gtk3-CVE-2024-40782.patch</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725192000">- Add revert-271175.patch: This reverts commit 279c9d7, it broke
  wasm.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725883200">- Update to version 2.44.4:
  + Add quirk to allow totale.rosettastone.com to load properly.
  + Fix webkit_web_resource_get_data() not working properly in some
    sites.
  + Fix not being able to jump-to-source in Web Inspector canvas
    traces.
  + Fix not being able to scroll list of WebGL shader programs in
    the Web Inspector.
  + Fix linker relocation errors on Debug/RelWithDebInfo builds.
  + Fix crashes when built with Clang with Link-Time Optimization
    (LTO).
  + Fix several crashes and rendering issues.
- Drop revert-271175.patch: Fixed upstream.
- Enable LTO again, pass define _lto_cflags for only select targets</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725883201">- Update to version 2.45.91:
  + Add new API to WebKitAutomationSession to be notified when the
    session is about to be closed.
  + Fix WebGL with accelerated compositing disabled.
  + Fix image filtering not being applied in some cases.
  + Fix the build on 32 bits systems.
  + Fix the build with -DUSE_TEXTURE_MAPPER_DMABUF=OFF
  + Fix several crashes and rendering issues.
  + Updated translations.
- Rebase patch with quilt.
- Drop webkit2gtk3-disable-dmabuf-nvidia.patch: Should not be
  needed anymore.
- Pass USE_SYSTEM_SYSPROF_CAPTURE=NO to cmake, avoid building
  sysprof capture for now.
- Disable LTO on x86 and ppc64le.</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1725969600">- Up gcc requirement to match cmake check.
  Remove wpe and wpebackend-fdo from BuildRequires: no longer used.</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1726056000">- Update to version 2.45.92:
  + Add webkit://gpu/stdout to dump the information from
    webkit://gpu to stdout.
  + Undeprecate injected bundle frame access interfaces.
  + Fix drag and drop.
  + Fix connection to a11y bus under flatpak.
  + Fix the build with Wayland and GBM disabled.
  + Fix linker relocation errors on Debug/RelWithDebInfo builds.
  + Fix several crashes and rendering issues.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1726574400">- Update to version 2.46.0 (boo#1231039):
  + Use Skia instead of cairo for 2D rendering and enable GPU
    rendering by default.
  + Enable offscreen canvas by default.
  + Add support for system tracing with Sysprof.
  + Implement printing using the Print portal.
  + Add new API to load settings from a config file.
  + Add a new setting to enable or disable the 2D canvas
    acceleration (enabled by default).
  + Undeprecate console messages API and make it available in 6.0
    API.
  + Security fixes: CVE-2024-40866, CVE-2024-44187, CVE-2044-44185.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1728043200">- Update to version 2.46.1:
  + Fix login QR code not shown in WhatsApp web.
  + Disable PSON by default again in GTK 3 API versions.
  + Disable DMABuf video sink by default to prevent file descriptor
    leaks.
  + Fix the build with GCC 13.
  + Fix several crashes and rendering issues.</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1729080000">- Add bug281492.patch: fix crash in
  AccessibilityAtspi::textAttributes.
- Add bug281495.patch: fix crash in ProcessLauncher socket
  monitor callback.</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1729512000">- Update to version 2.46.2:
  + Own well-known bus name on a11y bus.
  + Improve memory consumption when putImageData is used repeatedly
    on accelerated canvas.
  + Disable cached web process suspension for now to prevent leaks.
  + Improve text kerning with different combinations of antialias
    and hinting settings.
  + Destroy all network sessions on process exit.
  + Fix visible rectangle calculation when there are animations.
  + Fix the build with ENABLE_NOTIFICATIONS=OFF.
  + Fix the build with ENABLE_FULLSCREEN_API=OFF.
  + Fix the build with ENABLE_WEB_AUDIO=OFF.
  + Fix the build on ppc64le.
  + Fix several crashes and rendering issues.
- Drop bug281495.patch: fixed upstream.</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1730721600">- Update to version 2.46.3 (boo#1232747):
  + Flatten layers to a plane when preseve-3d style is set.
  + Fix DuckDuckGo links by adding a user agent quirk.
  + Fix several crashes and rendering issues.
  + Security fixes: CVE-2044-44244, CVE-2024-44296.
- Drop bug281492.patch: fixed upstream.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1731412800">- Add 9e9ea966373d3858668f6a29d8ba91a5807c8dd8.patch: Fix aspect
  ratio in videos with gststreamer-1.24.9.</changelog>
</package>
<package pkgid="87446bc84a6b0dbf1376b146a18b697493819ddebd407fff506b49ab518056a04748d8b58ecec58a07ac0a476e6762fb7b2d1b8b1ad8e101314415fb9d7acbbb" name="WebKitGTK-4.0-lang" arch="noarch">
  <version epoch="0" ver="2.46.3" rel="3.0.7.1.sr20241103"/>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1710590400">- Update to version 2.44.0 (boo#1222010):
  + Make the DOM accessibility tree reachable from UI process with
    GTK4.
  + Removed the X11 and WPE renderers in favor of DMA-BUF.
  + Improved vblank synchronization when rendering.
  + Removed key event reinjection in GTK4 to make keyboard
    shortcuts work in web sites.
  + Fix gamepads detection by correctly handling focused window in
    GTK4.
  + Security fixes: CVE-2024-23252, CVE-2024-23254, CVE-2024-23263,
  CVE-2024-23280, CVE-2024-23284, CVE-2023-42950, CVE-2023-42956,
  CVE-2023-42843.
- Rebase webkit2gtk3-disable-dmabuf-nvidia.patch.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1710763200">- Add webkit2gtk3-271108.patch: Fix build on 32bit archs
  (https://bugs.webkit.org/show_bug.cgi?id=271108).</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1710936000">- Use WebAssembly on aarch64. It is the upstream default and no
  longer makes the build fail. Stop passing -DENABLE_C_LOOP=ON,
  - DENABLE_WEBASSEMBLY=OFF and -DENABLE_SAMPLING_PROFILER=OFF for
  the same reason.
- Drop webkit2gtk3-llint-build-fix.patch: no longer needed.
- Update some version requirements to match cmake checks.</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1713268800">- Update to version 2.44.1:
  + Fix handling of lifetime of web view child dialogs in GTK4.
  + Do not schedule layer flushes when drawing area size is empty.
  + Fix videos with alpha when using the DMA-BUF sink.
  + Fix the build with USE_GBM=OFF.
  + Fix the build in 32bit platforms
  + Fix several crashes and rendering issues.
- Drop webkit2gtk3-271108.patch: fixed upstream.</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1715947200">- Update to version 2.44.2 (boo#1225071):
  + Make gamepads visible on axis movements, and not only on
    button presses.
  + Disable the gst-libav AAC decoder.
  + Make user scripts and style sheets visible in the Web
    Inspector.
  + Use the geolocation portal where available, with the existing
    geoclue as fallback if the portal is not usable.
  + Use the printing portal when running sandboxed.
  + Use the file transfer portal for drag and drop when running
    sandboxed.
  + Avoid notifying an empty cursor rectangle to input methods.
  + Remove empty bar shown in detached inspector windows.
  + Consider keycode when activating application accelerators.
  + Fix the build with ENABLE_WEBAUDIO disabled.
  + Fix several crashes and rendering issues.
  + Security fixes: CVE-2024-27834, CVE-2024-27808, CVE-2024-27820,
    CVE-2024-27833.
- Update keyring (taken from rawhide).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1719921600">- Add 9d5844679af8f84036f1b800307e799bd7ab73ba.patch VA+DMABuf
  videos flicker</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1722513600">- Add CVE fixes:
  + webkit2gtk3-CVE-2024-40776.patch (boo#1228613 CVE-2024-40776)
  + webkit2gtk3-CVE-2024-40779.patch (boo#1228693 CVE-2024-40779)
  + webkit2gtk3-CVE-2024-40780.patch (boo#1228694 CVE-2024-40780)
  + webkit2gtk3-CVE-2024-40782.patch (boo#1228695 CVE-2024-40782)</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1723550400">- Update to version 2.44.3 (boo#1228696 boo#1228697 boo#1228698):
  + Fix web process cache suspend/resume when sandbox is enabled.
  + Fix accelerated images dissapearing after scrolling.
  + Fix video flickering with DMA-BUF sink.
  + Fix pointer lock on X11.
  + Fix movement delta on mouse events in GTK3.
  + Undeprecate console message API and make it available in 2022
    API.
  + Fix several crashes and rendering issues.
  + Security fixes: CVE-2024-40776, CVE-2024-40779, CVE-2024-40780,
    CVE-2023-40782, CVE-2024-40785, CVE-2024-40789, CVE-2024-40794,
    CVE-2024-4558, CVE-2024-27838, CVE-2024-27851.
- Drop patches now upstream:
  9d5844679af8f84036f1b800307e799bd7ab73ba.patch
  webkit2gtk3-CVE-2024-40776.patch
  webkit2gtk3-CVE-2024-40779.patch
  webkit2gtk3-CVE-2024-40780.patch
  webkit2gtk3-CVE-2024-40782.patch</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725192000">- Add revert-271175.patch: This reverts commit 279c9d7, it broke
  wasm.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725883200">- Update to version 2.44.4:
  + Add quirk to allow totale.rosettastone.com to load properly.
  + Fix webkit_web_resource_get_data() not working properly in some
    sites.
  + Fix not being able to jump-to-source in Web Inspector canvas
    traces.
  + Fix not being able to scroll list of WebGL shader programs in
    the Web Inspector.
  + Fix linker relocation errors on Debug/RelWithDebInfo builds.
  + Fix crashes when built with Clang with Link-Time Optimization
    (LTO).
  + Fix several crashes and rendering issues.
- Drop revert-271175.patch: Fixed upstream.
- Enable LTO again, pass define _lto_cflags for only select targets</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725883201">- Update to version 2.45.91:
  + Add new API to WebKitAutomationSession to be notified when the
    session is about to be closed.
  + Fix WebGL with accelerated compositing disabled.
  + Fix image filtering not being applied in some cases.
  + Fix the build on 32 bits systems.
  + Fix the build with -DUSE_TEXTURE_MAPPER_DMABUF=OFF
  + Fix several crashes and rendering issues.
  + Updated translations.
- Rebase patch with quilt.
- Drop webkit2gtk3-disable-dmabuf-nvidia.patch: Should not be
  needed anymore.
- Pass USE_SYSTEM_SYSPROF_CAPTURE=NO to cmake, avoid building
  sysprof capture for now.
- Disable LTO on x86 and ppc64le.</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1725969600">- Up gcc requirement to match cmake check.
  Remove wpe and wpebackend-fdo from BuildRequires: no longer used.</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1726056000">- Update to version 2.45.92:
  + Add webkit://gpu/stdout to dump the information from
    webkit://gpu to stdout.
  + Undeprecate injected bundle frame access interfaces.
  + Fix drag and drop.
  + Fix connection to a11y bus under flatpak.
  + Fix the build with Wayland and GBM disabled.
  + Fix linker relocation errors on Debug/RelWithDebInfo builds.
  + Fix several crashes and rendering issues.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1726574400">- Update to version 2.46.0 (boo#1231039):
  + Use Skia instead of cairo for 2D rendering and enable GPU
    rendering by default.
  + Enable offscreen canvas by default.
  + Add support for system tracing with Sysprof.
  + Implement printing using the Print portal.
  + Add new API to load settings from a config file.
  + Add a new setting to enable or disable the 2D canvas
    acceleration (enabled by default).
  + Undeprecate console messages API and make it available in 6.0
    API.
  + Security fixes: CVE-2024-40866, CVE-2024-44187, CVE-2044-44185.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1728043200">- Update to version 2.46.1:
  + Fix login QR code not shown in WhatsApp web.
  + Disable PSON by default again in GTK 3 API versions.
  + Disable DMABuf video sink by default to prevent file descriptor
    leaks.
  + Fix the build with GCC 13.
  + Fix several crashes and rendering issues.</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1729080000">- Add bug281492.patch: fix crash in
  AccessibilityAtspi::textAttributes.
- Add bug281495.patch: fix crash in ProcessLauncher socket
  monitor callback.</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1729512000">- Update to version 2.46.2:
  + Own well-known bus name on a11y bus.
  + Improve memory consumption when putImageData is used repeatedly
    on accelerated canvas.
  + Disable cached web process suspension for now to prevent leaks.
  + Improve text kerning with different combinations of antialias
    and hinting settings.
  + Destroy all network sessions on process exit.
  + Fix visible rectangle calculation when there are animations.
  + Fix the build with ENABLE_NOTIFICATIONS=OFF.
  + Fix the build with ENABLE_FULLSCREEN_API=OFF.
  + Fix the build with ENABLE_WEB_AUDIO=OFF.
  + Fix the build on ppc64le.
  + Fix several crashes and rendering issues.
- Drop bug281495.patch: fixed upstream.</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1730721600">- Update to version 2.46.3 (boo#1232747):
  + Flatten layers to a plane when preseve-3d style is set.
  + Fix DuckDuckGo links by adding a user agent quirk.
  + Fix several crashes and rendering issues.
  + Security fixes: CVE-2044-44244, CVE-2024-44296.
- Drop bug281492.patch: fixed upstream.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1731412800">- Add 9e9ea966373d3858668f6a29d8ba91a5807c8dd8.patch: Fix aspect
  ratio in videos with gststreamer-1.24.9.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1731585600">- Add 63f7badbada070ebaadd318b2801818ecf7e7ea0.patch: Fix build
  using ICU 76.1.</changelog>
</package>
<package pkgid="74a3984bca011fab40ee3fabfa758693caa6cec84c28bf4cb1c81dab997f8424c144eb3c1aa7277de832506cd26c1e15aeb2ec9b4ab568f4aa9dd929bb248211" name="WebKitGTK-4.0-lang" arch="noarch">
  <version epoch="0" ver="2.46.3" rel="3.1.sr20241103"/>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1709208000">- Update to version 2.43.4:
  + Remove key event reinjection in GTK4 to make keyboard shortcuts
    work in web sites.
  + Use the new GTK API to create a GdkTexture from a DMA-BUF
    buffer when available.
  + Fix rendering when GTK is using the vulkan renderer.
  + Fix gamepads detection by correctly handling focused window in
    GTK4.
  + Fix rendering after history navigation.
  + Write bwrapinfo.json to disk for xdg-desktop-portal.
  + Fixed several memory leaks in media backend.
  + Fix several crashes and rendering issues.
- Changes from version 2.43.3:
  + Show vblank monitor information in webkit://gpu.
  + Fallback to timer based vblank monitor if drmWaitVBlank fails.
  + Fix several memory leaks in media backend.
  + Fix several crashes and rendering issues.
- Changes from version 2.43.2?
  + Remove the X11 and WPE renderers.
  + Release unused buffers when the view is hidden.
  + Fix flickering while playing videos with DMA-BUF sink.
  + Do not special case the "sans" font family name.
  + Fix webkit_web_context_allow_tls_certificate_for_host() for
    IPv6 URIs produced by SoupURI.
  + Fix several crashes and rendering issues.
- Changes from version WebKitGTK 2.43.1?
  + Improve vblank synchronization when rendering.
  + Improve DMA-BUF buffers handling for video frames.
  + Use the buffer format preferred by the driver in DMA-BUF
    renderer.
  + Do not block the compositing thread waiting for rendering
    threads.
  + Improve performance when scaling images in a canvas.
  + Fix several crashes and rendering issues.
  + Updated translations.
- Drop webkit2gtk3-create-destroy-egl-image.patch: fixed upstream.
- Add libbacktrace-devel BuildRequires (for gtk4 flavor).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1709640000">- baselibs.conf: Do not build libjavascriptcoregtk-4_1-0-32bit and
  libwebkit2gtk-4_1-0-32bit: they are not used, and in fact not
  built in Factory (build excluded).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1710590400">- Update to version 2.44.0 (boo#1222010):
  + Make the DOM accessibility tree reachable from UI process with
    GTK4.
  + Removed the X11 and WPE renderers in favor of DMA-BUF.
  + Improved vblank synchronization when rendering.
  + Removed key event reinjection in GTK4 to make keyboard
    shortcuts work in web sites.
  + Fix gamepads detection by correctly handling focused window in
    GTK4.
  + Security fixes: CVE-2024-23252, CVE-2024-23254, CVE-2024-23263,
  CVE-2024-23280, CVE-2024-23284, CVE-2023-42950, CVE-2023-42956,
  CVE-2023-42843.
- Rebase webkit2gtk3-disable-dmabuf-nvidia.patch.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1710763200">- Add webkit2gtk3-271108.patch: Fix build on 32bit archs
  (https://bugs.webkit.org/show_bug.cgi?id=271108).</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1710936000">- Use WebAssembly on aarch64. It is the upstream default and no
  longer makes the build fail. Stop passing -DENABLE_C_LOOP=ON,
  - DENABLE_WEBASSEMBLY=OFF and -DENABLE_SAMPLING_PROFILER=OFF for
  the same reason.
- Drop webkit2gtk3-llint-build-fix.patch: no longer needed.
- Update some version requirements to match cmake checks.</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1713268800">- Update to version 2.44.1:
  + Fix handling of lifetime of web view child dialogs in GTK4.
  + Do not schedule layer flushes when drawing area size is empty.
  + Fix videos with alpha when using the DMA-BUF sink.
  + Fix the build with USE_GBM=OFF.
  + Fix the build in 32bit platforms
  + Fix several crashes and rendering issues.
- Drop webkit2gtk3-271108.patch: fixed upstream.</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1715947200">- Update to version 2.44.2 (boo#1225071):
  + Make gamepads visible on axis movements, and not only on
    button presses.
  + Disable the gst-libav AAC decoder.
  + Make user scripts and style sheets visible in the Web
    Inspector.
  + Use the geolocation portal where available, with the existing
    geoclue as fallback if the portal is not usable.
  + Use the printing portal when running sandboxed.
  + Use the file transfer portal for drag and drop when running
    sandboxed.
  + Avoid notifying an empty cursor rectangle to input methods.
  + Remove empty bar shown in detached inspector windows.
  + Consider keycode when activating application accelerators.
  + Fix the build with ENABLE_WEBAUDIO disabled.
  + Fix several crashes and rendering issues.
  + Security fixes: CVE-2024-27834, CVE-2024-27808, CVE-2024-27820,
    CVE-2024-27833.
- Update keyring (taken from rawhide).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1719921600">- Add 9d5844679af8f84036f1b800307e799bd7ab73ba.patch VA+DMABuf
  videos flicker</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1722513600">- Add CVE fixes:
  + webkit2gtk3-CVE-2024-40776.patch (boo#1228613 CVE-2024-40776)
  + webkit2gtk3-CVE-2024-40779.patch (boo#1228693 CVE-2024-40779)
  + webkit2gtk3-CVE-2024-40780.patch (boo#1228694 CVE-2024-40780)
  + webkit2gtk3-CVE-2024-40782.patch (boo#1228695 CVE-2024-40782)</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1723550400">- Update to version 2.44.3 (boo#1228696 boo#1228697 boo#1228698):
  + Fix web process cache suspend/resume when sandbox is enabled.
  + Fix accelerated images dissapearing after scrolling.
  + Fix video flickering with DMA-BUF sink.
  + Fix pointer lock on X11.
  + Fix movement delta on mouse events in GTK3.
  + Undeprecate console message API and make it available in 2022
    API.
  + Fix several crashes and rendering issues.
  + Security fixes: CVE-2024-40776, CVE-2024-40779, CVE-2024-40780,
    CVE-2023-40782, CVE-2024-40785, CVE-2024-40789, CVE-2024-40794,
    CVE-2024-4558, CVE-2024-27838, CVE-2024-27851.
- Drop patches now upstream:
  9d5844679af8f84036f1b800307e799bd7ab73ba.patch
  webkit2gtk3-CVE-2024-40776.patch
  webkit2gtk3-CVE-2024-40779.patch
  webkit2gtk3-CVE-2024-40780.patch
  webkit2gtk3-CVE-2024-40782.patch</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725192000">- Add revert-271175.patch: This reverts commit 279c9d7, it broke
  wasm.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725883200">- Update to version 2.44.4:
  + Add quirk to allow totale.rosettastone.com to load properly.
  + Fix webkit_web_resource_get_data() not working properly in some
    sites.
  + Fix not being able to jump-to-source in Web Inspector canvas
    traces.
  + Fix not being able to scroll list of WebGL shader programs in
    the Web Inspector.
  + Fix linker relocation errors on Debug/RelWithDebInfo builds.
  + Fix crashes when built with Clang with Link-Time Optimization
    (LTO).
  + Fix several crashes and rendering issues.
- Drop revert-271175.patch: Fixed upstream.
- Enable LTO again, pass define _lto_cflags for only select targets</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725883201">- Update to version 2.45.91:
  + Add new API to WebKitAutomationSession to be notified when the
    session is about to be closed.
  + Fix WebGL with accelerated compositing disabled.
  + Fix image filtering not being applied in some cases.
  + Fix the build on 32 bits systems.
  + Fix the build with -DUSE_TEXTURE_MAPPER_DMABUF=OFF
  + Fix several crashes and rendering issues.
  + Updated translations.
- Rebase patch with quilt.
- Drop webkit2gtk3-disable-dmabuf-nvidia.patch: Should not be
  needed anymore.
- Pass USE_SYSTEM_SYSPROF_CAPTURE=NO to cmake, avoid building
  sysprof capture for now.
- Disable LTO on x86 and ppc64le.</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1725969600">- Up gcc requirement to match cmake check.
  Remove wpe and wpebackend-fdo from BuildRequires: no longer used.</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1726056000">- Update to version 2.45.92:
  + Add webkit://gpu/stdout to dump the information from
    webkit://gpu to stdout.
  + Undeprecate injected bundle frame access interfaces.
  + Fix drag and drop.
  + Fix connection to a11y bus under flatpak.
  + Fix the build with Wayland and GBM disabled.
  + Fix linker relocation errors on Debug/RelWithDebInfo builds.
  + Fix several crashes and rendering issues.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1726574400">- Update to version 2.46.0 (boo#1231039):
  + Use Skia instead of cairo for 2D rendering and enable GPU
    rendering by default.
  + Enable offscreen canvas by default.
  + Add support for system tracing with Sysprof.
  + Implement printing using the Print portal.
  + Add new API to load settings from a config file.
  + Add a new setting to enable or disable the 2D canvas
    acceleration (enabled by default).
  + Undeprecate console messages API and make it available in 6.0
    API.
  + Security fixes: CVE-2024-40866, CVE-2024-44187, CVE-2044-44185.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1728043200">- Update to version 2.46.1:
  + Fix login QR code not shown in WhatsApp web.
  + Disable PSON by default again in GTK 3 API versions.
  + Disable DMABuf video sink by default to prevent file descriptor
    leaks.
  + Fix the build with GCC 13.
  + Fix several crashes and rendering issues.</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1729080000">- Add bug281492.patch: fix crash in
  AccessibilityAtspi::textAttributes.
- Add bug281495.patch: fix crash in ProcessLauncher socket
  monitor callback.</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1729512000">- Update to version 2.46.2:
  + Own well-known bus name on a11y bus.
  + Improve memory consumption when putImageData is used repeatedly
    on accelerated canvas.
  + Disable cached web process suspension for now to prevent leaks.
  + Improve text kerning with different combinations of antialias
    and hinting settings.
  + Destroy all network sessions on process exit.
  + Fix visible rectangle calculation when there are animations.
  + Fix the build with ENABLE_NOTIFICATIONS=OFF.
  + Fix the build with ENABLE_FULLSCREEN_API=OFF.
  + Fix the build with ENABLE_WEB_AUDIO=OFF.
  + Fix the build on ppc64le.
  + Fix several crashes and rendering issues.
- Drop bug281495.patch: fixed upstream.</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1730721600">- Update to version 2.46.3 (boo#1232747):
  + Flatten layers to a plane when preseve-3d style is set.
  + Fix DuckDuckGo links by adding a user agent quirk.
  + Fix several crashes and rendering issues.
  + Security fixes: CVE-2044-44244, CVE-2024-44296.
- Drop bug281492.patch: fixed upstream.</changelog>
</package>
<package pkgid="428c66554626787c3fdb8c250a52a764b560f4ae0b91d638023c979ebd08f7e5408cbb2a07dd494563194b90a7308dc7fa56ccac55b7c177b5729e1d2c52810f" name="WebKitGTK-4.0-lang" arch="noarch">
  <version epoch="0" ver="2.46.3" rel="4.0.9.1.sr20241103"/>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1710763200">- Add webkit2gtk3-271108.patch: Fix build on 32bit archs
  (https://bugs.webkit.org/show_bug.cgi?id=271108).</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1710936000">- Use WebAssembly on aarch64. It is the upstream default and no
  longer makes the build fail. Stop passing -DENABLE_C_LOOP=ON,
  - DENABLE_WEBASSEMBLY=OFF and -DENABLE_SAMPLING_PROFILER=OFF for
  the same reason.
- Drop webkit2gtk3-llint-build-fix.patch: no longer needed.
- Update some version requirements to match cmake checks.</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1713268800">- Update to version 2.44.1:
  + Fix handling of lifetime of web view child dialogs in GTK4.
  + Do not schedule layer flushes when drawing area size is empty.
  + Fix videos with alpha when using the DMA-BUF sink.
  + Fix the build with USE_GBM=OFF.
  + Fix the build in 32bit platforms
  + Fix several crashes and rendering issues.
- Drop webkit2gtk3-271108.patch: fixed upstream.</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1715947200">- Update to version 2.44.2 (boo#1225071):
  + Make gamepads visible on axis movements, and not only on
    button presses.
  + Disable the gst-libav AAC decoder.
  + Make user scripts and style sheets visible in the Web
    Inspector.
  + Use the geolocation portal where available, with the existing
    geoclue as fallback if the portal is not usable.
  + Use the printing portal when running sandboxed.
  + Use the file transfer portal for drag and drop when running
    sandboxed.
  + Avoid notifying an empty cursor rectangle to input methods.
  + Remove empty bar shown in detached inspector windows.
  + Consider keycode when activating application accelerators.
  + Fix the build with ENABLE_WEBAUDIO disabled.
  + Fix several crashes and rendering issues.
  + Security fixes: CVE-2024-27834, CVE-2024-27808, CVE-2024-27820,
    CVE-2024-27833.
- Update keyring (taken from rawhide).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1719921600">- Add 9d5844679af8f84036f1b800307e799bd7ab73ba.patch VA+DMABuf
  videos flicker</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1722513600">- Add CVE fixes:
  + webkit2gtk3-CVE-2024-40776.patch (boo#1228613 CVE-2024-40776)
  + webkit2gtk3-CVE-2024-40779.patch (boo#1228693 CVE-2024-40779)
  + webkit2gtk3-CVE-2024-40780.patch (boo#1228694 CVE-2024-40780)
  + webkit2gtk3-CVE-2024-40782.patch (boo#1228695 CVE-2024-40782)</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1723550400">- Update to version 2.44.3 (boo#1228696 boo#1228697 boo#1228698):
  + Fix web process cache suspend/resume when sandbox is enabled.
  + Fix accelerated images dissapearing after scrolling.
  + Fix video flickering with DMA-BUF sink.
  + Fix pointer lock on X11.
  + Fix movement delta on mouse events in GTK3.
  + Undeprecate console message API and make it available in 2022
    API.
  + Fix several crashes and rendering issues.
  + Security fixes: CVE-2024-40776, CVE-2024-40779, CVE-2024-40780,
    CVE-2023-40782, CVE-2024-40785, CVE-2024-40789, CVE-2024-40794,
    CVE-2024-4558, CVE-2024-27838, CVE-2024-27851.
- Drop patches now upstream:
  9d5844679af8f84036f1b800307e799bd7ab73ba.patch
  webkit2gtk3-CVE-2024-40776.patch
  webkit2gtk3-CVE-2024-40779.patch
  webkit2gtk3-CVE-2024-40780.patch
  webkit2gtk3-CVE-2024-40782.patch</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725192000">- Add revert-271175.patch: This reverts commit 279c9d7, it broke
  wasm.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725883200">- Update to version 2.44.4:
  + Add quirk to allow totale.rosettastone.com to load properly.
  + Fix webkit_web_resource_get_data() not working properly in some
    sites.
  + Fix not being able to jump-to-source in Web Inspector canvas
    traces.
  + Fix not being able to scroll list of WebGL shader programs in
    the Web Inspector.
  + Fix linker relocation errors on Debug/RelWithDebInfo builds.
  + Fix crashes when built with Clang with Link-Time Optimization
    (LTO).
  + Fix several crashes and rendering issues.
- Drop revert-271175.patch: Fixed upstream.
- Enable LTO again, pass define _lto_cflags for only select targets</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725883201">- Update to version 2.45.91:
  + Add new API to WebKitAutomationSession to be notified when the
    session is about to be closed.
  + Fix WebGL with accelerated compositing disabled.
  + Fix image filtering not being applied in some cases.
  + Fix the build on 32 bits systems.
  + Fix the build with -DUSE_TEXTURE_MAPPER_DMABUF=OFF
  + Fix several crashes and rendering issues.
  + Updated translations.
- Rebase patch with quilt.
- Drop webkit2gtk3-disable-dmabuf-nvidia.patch: Should not be
  needed anymore.
- Pass USE_SYSTEM_SYSPROF_CAPTURE=NO to cmake, avoid building
  sysprof capture for now.
- Disable LTO on x86 and ppc64le.</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1725969600">- Up gcc requirement to match cmake check.
  Remove wpe and wpebackend-fdo from BuildRequires: no longer used.</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1726056000">- Update to version 2.45.92:
  + Add webkit://gpu/stdout to dump the information from
    webkit://gpu to stdout.
  + Undeprecate injected bundle frame access interfaces.
  + Fix drag and drop.
  + Fix connection to a11y bus under flatpak.
  + Fix the build with Wayland and GBM disabled.
  + Fix linker relocation errors on Debug/RelWithDebInfo builds.
  + Fix several crashes and rendering issues.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1726574400">- Update to version 2.46.0 (boo#1231039):
  + Use Skia instead of cairo for 2D rendering and enable GPU
    rendering by default.
  + Enable offscreen canvas by default.
  + Add support for system tracing with Sysprof.
  + Implement printing using the Print portal.
  + Add new API to load settings from a config file.
  + Add a new setting to enable or disable the 2D canvas
    acceleration (enabled by default).
  + Undeprecate console messages API and make it available in 6.0
    API.
  + Security fixes: CVE-2024-40866, CVE-2024-44187, CVE-2044-44185.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1728043200">- Update to version 2.46.1:
  + Fix login QR code not shown in WhatsApp web.
  + Disable PSON by default again in GTK 3 API versions.
  + Disable DMABuf video sink by default to prevent file descriptor
    leaks.
  + Fix the build with GCC 13.
  + Fix several crashes and rendering issues.</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1729080000">- Add bug281492.patch: fix crash in
  AccessibilityAtspi::textAttributes.
- Add bug281495.patch: fix crash in ProcessLauncher socket
  monitor callback.</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1729512000">- Update to version 2.46.2:
  + Own well-known bus name on a11y bus.
  + Improve memory consumption when putImageData is used repeatedly
    on accelerated canvas.
  + Disable cached web process suspension for now to prevent leaks.
  + Improve text kerning with different combinations of antialias
    and hinting settings.
  + Destroy all network sessions on process exit.
  + Fix visible rectangle calculation when there are animations.
  + Fix the build with ENABLE_NOTIFICATIONS=OFF.
  + Fix the build with ENABLE_FULLSCREEN_API=OFF.
  + Fix the build with ENABLE_WEB_AUDIO=OFF.
  + Fix the build on ppc64le.
  + Fix several crashes and rendering issues.
- Drop bug281495.patch: fixed upstream.</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1730721600">- Update to version 2.46.3 (boo#1232747):
  + Flatten layers to a plane when preseve-3d style is set.
  + Fix DuckDuckGo links by adding a user agent quirk.
  + Fix several crashes and rendering issues.
  + Security fixes: CVE-2044-44244, CVE-2024-44296.
- Drop bug281492.patch: fixed upstream.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1731412800">- Add 9e9ea966373d3858668f6a29d8ba91a5807c8dd8.patch: Fix aspect
  ratio in videos with gststreamer-1.24.9.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1731585600">- Add 63f7badbada070ebaadd318b2801818ecf7e7ea0.patch: Fix build
  using ICU 76.1.</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1732536000">- Add webkit2gtk3-CVE-2024-44308.patch: don't allocate DFG register
  after a slow path (boo#1233631 CVE-2024-44308).
- Add webkit2gtk3-CVE-2024-44309.patch: fix a cookie management
  issue (boo#1233632 CVE-2024-44309).</changelog>
</package>
<package pkgid="e7269170889d050f9b91791395e58b62ed057d7221a56f5806d524019f9e1569d2a5cd9f4c00f476e551cf3427d66dbde49f35b66110991d7207435632325512" name="WebKitGTK-4.0-lang" arch="noarch">
  <version epoch="0" ver="2.46.4" rel="1.0.11.1.sr20241103"/>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1710936000">- Use WebAssembly on aarch64. It is the upstream default and no
  longer makes the build fail. Stop passing -DENABLE_C_LOOP=ON,
  - DENABLE_WEBASSEMBLY=OFF and -DENABLE_SAMPLING_PROFILER=OFF for
  the same reason.
- Drop webkit2gtk3-llint-build-fix.patch: no longer needed.
- Update some version requirements to match cmake checks.</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1713268800">- Update to version 2.44.1:
  + Fix handling of lifetime of web view child dialogs in GTK4.
  + Do not schedule layer flushes when drawing area size is empty.
  + Fix videos with alpha when using the DMA-BUF sink.
  + Fix the build with USE_GBM=OFF.
  + Fix the build in 32bit platforms
  + Fix several crashes and rendering issues.
- Drop webkit2gtk3-271108.patch: fixed upstream.</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1715947200">- Update to version 2.44.2 (boo#1225071):
  + Make gamepads visible on axis movements, and not only on
    button presses.
  + Disable the gst-libav AAC decoder.
  + Make user scripts and style sheets visible in the Web
    Inspector.
  + Use the geolocation portal where available, with the existing
    geoclue as fallback if the portal is not usable.
  + Use the printing portal when running sandboxed.
  + Use the file transfer portal for drag and drop when running
    sandboxed.
  + Avoid notifying an empty cursor rectangle to input methods.
  + Remove empty bar shown in detached inspector windows.
  + Consider keycode when activating application accelerators.
  + Fix the build with ENABLE_WEBAUDIO disabled.
  + Fix several crashes and rendering issues.
  + Security fixes: CVE-2024-27834, CVE-2024-27808, CVE-2024-27820,
    CVE-2024-27833.
- Update keyring (taken from rawhide).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1719921600">- Add 9d5844679af8f84036f1b800307e799bd7ab73ba.patch VA+DMABuf
  videos flicker</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1722513600">- Add CVE fixes:
  + webkit2gtk3-CVE-2024-40776.patch (boo#1228613 CVE-2024-40776)
  + webkit2gtk3-CVE-2024-40779.patch (boo#1228693 CVE-2024-40779)
  + webkit2gtk3-CVE-2024-40780.patch (boo#1228694 CVE-2024-40780)
  + webkit2gtk3-CVE-2024-40782.patch (boo#1228695 CVE-2024-40782)</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1723550400">- Update to version 2.44.3 (boo#1228697):
  + Fix web process cache suspend/resume when sandbox is enabled.
  + Fix accelerated images dissapearing after scrolling.
  + Fix video flickering with DMA-BUF sink.
  + Fix pointer lock on X11.
  + Fix movement delta on mouse events in GTK3.
  + Undeprecate console message API and make it available in 2022
    API.
  + Fix several crashes and rendering issues.
  + Security fixes: CVE-2024-40776, CVE-2024-40779, CVE-2024-40780,
    CVE-2024-40782, CVE-2024-40789, CVE-2024-4558, CVE-2024-27838,
  CVE-2024-27851.
- Drop patches now upstream:
  9d5844679af8f84036f1b800307e799bd7ab73ba.patch
  webkit2gtk3-CVE-2024-40776.patch
  webkit2gtk3-CVE-2024-40779.patch
  webkit2gtk3-CVE-2024-40780.patch
  webkit2gtk3-CVE-2024-40782.patch</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725192000">- Add revert-271175.patch: This reverts commit 279c9d7, it broke
  wasm.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725883200">- Update to version 2.44.4:
  + Add quirk to allow totale.rosettastone.com to load properly.
  + Fix webkit_web_resource_get_data() not working properly in some
    sites.
  + Fix not being able to jump-to-source in Web Inspector canvas
    traces.
  + Fix not being able to scroll list of WebGL shader programs in
    the Web Inspector.
  + Fix linker relocation errors on Debug/RelWithDebInfo builds.
  + Fix crashes when built with Clang with Link-Time Optimization
    (LTO).
  + Fix several crashes and rendering issues.
- Drop revert-271175.patch: Fixed upstream.
- Enable LTO again, pass define _lto_cflags for only select targets</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725883201">- Update to version 2.45.91:
  + Add new API to WebKitAutomationSession to be notified when the
    session is about to be closed.
  + Fix WebGL with accelerated compositing disabled.
  + Fix image filtering not being applied in some cases.
  + Fix the build on 32 bits systems.
  + Fix the build with -DUSE_TEXTURE_MAPPER_DMABUF=OFF
  + Fix several crashes and rendering issues.
  + Updated translations.
- Rebase patch with quilt.
- Drop webkit2gtk3-disable-dmabuf-nvidia.patch: Should not be
  needed anymore.
- Pass USE_SYSTEM_SYSPROF_CAPTURE=NO to cmake, avoid building
  sysprof capture for now.
- Disable LTO on x86 and ppc64le.</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1725969600">- Up gcc requirement to match cmake check.
  Remove wpe and wpebackend-fdo from BuildRequires: no longer used.</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1726056000">- Update to version 2.45.92:
  + Add webkit://gpu/stdout to dump the information from
    webkit://gpu to stdout.
  + Undeprecate injected bundle frame access interfaces.
  + Fix drag and drop.
  + Fix connection to a11y bus under flatpak.
  + Fix the build with Wayland and GBM disabled.
  + Fix linker relocation errors on Debug/RelWithDebInfo builds.
  + Fix several crashes and rendering issues.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1726574400">- Update to version 2.46.0 (boo#1231039):
  + Use Skia instead of cairo for 2D rendering and enable GPU
    rendering by default.
  + Enable offscreen canvas by default.
  + Add support for system tracing with Sysprof.
  + Implement printing using the Print portal.
  + Add new API to load settings from a config file.
  + Add a new setting to enable or disable the 2D canvas
    acceleration (enabled by default).
  + Undeprecate console messages API and make it available in 6.0
    API.
  + Security fixes: CVE-2024-40866, CVE-2024-44187, CVE-2044-44185.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1728043200">- Update to version 2.46.1:
  + Fix login QR code not shown in WhatsApp web.
  + Disable PSON by default again in GTK 3 API versions.
  + Disable DMABuf video sink by default to prevent file descriptor
    leaks.
  + Fix the build with GCC 13.
  + Fix several crashes and rendering issues.</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1729080000">- Add bug281492.patch: fix crash in
  AccessibilityAtspi::textAttributes.
- Add bug281495.patch: fix crash in ProcessLauncher socket
  monitor callback.</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1729512000">- Update to version 2.46.2:
  + Own well-known bus name on a11y bus.
  + Improve memory consumption when putImageData is used repeatedly
    on accelerated canvas.
  + Disable cached web process suspension for now to prevent leaks.
  + Improve text kerning with different combinations of antialias
    and hinting settings.
  + Destroy all network sessions on process exit.
  + Fix visible rectangle calculation when there are animations.
  + Fix the build with ENABLE_NOTIFICATIONS=OFF.
  + Fix the build with ENABLE_FULLSCREEN_API=OFF.
  + Fix the build with ENABLE_WEB_AUDIO=OFF.
  + Fix the build on ppc64le.
  + Fix several crashes and rendering issues.
- Drop bug281495.patch: fixed upstream.</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1730721600">- Update to version 2.46.3 (boo#1232747):
  + Flatten layers to a plane when preseve-3d style is set.
  + Fix DuckDuckGo links by adding a user agent quirk.
  + Fix several crashes and rendering issues.
  + Security fixes: CVE-2044-44244, CVE-2024-44296.
- Drop bug281492.patch: fixed upstream.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1731412800">- Add 9e9ea966373d3858668f6a29d8ba91a5807c8dd8.patch: Fix aspect
  ratio in videos with gststreamer-1.24.9.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1731585600">- Add 63f7badbada070ebaadd318b2801818ecf7e7ea0.patch: Fix build
  using ICU 76.1.</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1732536000">- Add webkit2gtk3-CVE-2024-44308.patch: don't allocate DFG register
  after a slow path (boo#1233631 CVE-2024-44308).
- Add webkit2gtk3-CVE-2024-44309.patch: fix a cookie management
  issue (boo#1233632 CVE-2024-44309).</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1732708800">- Update to version 2.46.4:
  + Improve memory consumption and performance of Canvas
    getImageData.
  + Fix preserve-3D intersection rendering.
  + Fix video dimensions since GStreamer 1.24.9.
  + Fix the HTTP-based remote Web Inspector not loading in
    Chromium.
  + Fix content filters not working on about:blank iframes.
  + Fix several crashes and rendering issues.
  + Security fixes: CVE-2024-44308, CVE-2024-44309.
- Drop patches fixed upstream:
  + 9e9ea966373d3858668f6a29d8ba91a5807c8dd8.patch
  + webkit2gtk3-CVE-2024-44308.patch
  + webkit2gtk3-CVE-2024-44309.patch</changelog>
</package>
<package pkgid="be1d87eb9cb2a356a87e7c3e4b8c4d867cc03ca11efe3987712b51d8484de8aabf1a0d00a88350347f5131d81f5fa7c2f4561722aaaf71693eaaaa144d9d5c77" name="WebKitGTK-4.1-lang" arch="noarch">
  <version epoch="0" ver="2.46.3" rel="2.0.5.1.sr20241103"/>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1709640000">- baselibs.conf: Do not build libjavascriptcoregtk-4_1-0-32bit and
  libwebkit2gtk-4_1-0-32bit: they are not used, and in fact not
  built in Factory (build excluded).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1710590400">- Update to version 2.44.0 (boo#1222010):
  + Make the DOM accessibility tree reachable from UI process with
    GTK4.
  + Removed the X11 and WPE renderers in favor of DMA-BUF.
  + Improved vblank synchronization when rendering.
  + Removed key event reinjection in GTK4 to make keyboard
    shortcuts work in web sites.
  + Fix gamepads detection by correctly handling focused window in
    GTK4.
  + Security fixes: CVE-2024-23252, CVE-2024-23254, CVE-2024-23263,
  CVE-2024-23280, CVE-2024-23284, CVE-2023-42950, CVE-2023-42956,
  CVE-2023-42843.
- Rebase webkit2gtk3-disable-dmabuf-nvidia.patch.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1710763200">- Add webkit2gtk3-271108.patch: Fix build on 32bit archs
  (https://bugs.webkit.org/show_bug.cgi?id=271108).</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1710936000">- Use WebAssembly on aarch64. It is the upstream default and no
  longer makes the build fail. Stop passing -DENABLE_C_LOOP=ON,
  - DENABLE_WEBASSEMBLY=OFF and -DENABLE_SAMPLING_PROFILER=OFF for
  the same reason.
- Drop webkit2gtk3-llint-build-fix.patch: no longer needed.
- Update some version requirements to match cmake checks.</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1713268800">- Update to version 2.44.1:
  + Fix handling of lifetime of web view child dialogs in GTK4.
  + Do not schedule layer flushes when drawing area size is empty.
  + Fix videos with alpha when using the DMA-BUF sink.
  + Fix the build with USE_GBM=OFF.
  + Fix the build in 32bit platforms
  + Fix several crashes and rendering issues.
- Drop webkit2gtk3-271108.patch: fixed upstream.</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1715947200">- Update to version 2.44.2 (boo#1225071):
  + Make gamepads visible on axis movements, and not only on
    button presses.
  + Disable the gst-libav AAC decoder.
  + Make user scripts and style sheets visible in the Web
    Inspector.
  + Use the geolocation portal where available, with the existing
    geoclue as fallback if the portal is not usable.
  + Use the printing portal when running sandboxed.
  + Use the file transfer portal for drag and drop when running
    sandboxed.
  + Avoid notifying an empty cursor rectangle to input methods.
  + Remove empty bar shown in detached inspector windows.
  + Consider keycode when activating application accelerators.
  + Fix the build with ENABLE_WEBAUDIO disabled.
  + Fix several crashes and rendering issues.
  + Security fixes: CVE-2024-27834, CVE-2024-27808, CVE-2024-27820,
    CVE-2024-27833.
- Update keyring (taken from rawhide).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1719921600">- Add 9d5844679af8f84036f1b800307e799bd7ab73ba.patch VA+DMABuf
  videos flicker</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1722513600">- Add CVE fixes:
  + webkit2gtk3-CVE-2024-40776.patch (boo#1228613 CVE-2024-40776)
  + webkit2gtk3-CVE-2024-40779.patch (boo#1228693 CVE-2024-40779)
  + webkit2gtk3-CVE-2024-40780.patch (boo#1228694 CVE-2024-40780)
  + webkit2gtk3-CVE-2024-40782.patch (boo#1228695 CVE-2024-40782)</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1723550400">- Update to version 2.44.3 (boo#1228696 boo#1228697 boo#1228698):
  + Fix web process cache suspend/resume when sandbox is enabled.
  + Fix accelerated images dissapearing after scrolling.
  + Fix video flickering with DMA-BUF sink.
  + Fix pointer lock on X11.
  + Fix movement delta on mouse events in GTK3.
  + Undeprecate console message API and make it available in 2022
    API.
  + Fix several crashes and rendering issues.
  + Security fixes: CVE-2024-40776, CVE-2024-40779, CVE-2024-40780,
    CVE-2023-40782, CVE-2024-40785, CVE-2024-40789, CVE-2024-40794,
    CVE-2024-4558, CVE-2024-27838, CVE-2024-27851.
- Drop patches now upstream:
  9d5844679af8f84036f1b800307e799bd7ab73ba.patch
  webkit2gtk3-CVE-2024-40776.patch
  webkit2gtk3-CVE-2024-40779.patch
  webkit2gtk3-CVE-2024-40780.patch
  webkit2gtk3-CVE-2024-40782.patch</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725192000">- Add revert-271175.patch: This reverts commit 279c9d7, it broke
  wasm.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725883200">- Update to version 2.44.4:
  + Add quirk to allow totale.rosettastone.com to load properly.
  + Fix webkit_web_resource_get_data() not working properly in some
    sites.
  + Fix not being able to jump-to-source in Web Inspector canvas
    traces.
  + Fix not being able to scroll list of WebGL shader programs in
    the Web Inspector.
  + Fix linker relocation errors on Debug/RelWithDebInfo builds.
  + Fix crashes when built with Clang with Link-Time Optimization
    (LTO).
  + Fix several crashes and rendering issues.
- Drop revert-271175.patch: Fixed upstream.
- Enable LTO again, pass define _lto_cflags for only select targets</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725883201">- Update to version 2.45.91:
  + Add new API to WebKitAutomationSession to be notified when the
    session is about to be closed.
  + Fix WebGL with accelerated compositing disabled.
  + Fix image filtering not being applied in some cases.
  + Fix the build on 32 bits systems.
  + Fix the build with -DUSE_TEXTURE_MAPPER_DMABUF=OFF
  + Fix several crashes and rendering issues.
  + Updated translations.
- Rebase patch with quilt.
- Drop webkit2gtk3-disable-dmabuf-nvidia.patch: Should not be
  needed anymore.
- Pass USE_SYSTEM_SYSPROF_CAPTURE=NO to cmake, avoid building
  sysprof capture for now.
- Disable LTO on x86 and ppc64le.</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1725969600">- Up gcc requirement to match cmake check.
  Remove wpe and wpebackend-fdo from BuildRequires: no longer used.</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1726056000">- Update to version 2.45.92:
  + Add webkit://gpu/stdout to dump the information from
    webkit://gpu to stdout.
  + Undeprecate injected bundle frame access interfaces.
  + Fix drag and drop.
  + Fix connection to a11y bus under flatpak.
  + Fix the build with Wayland and GBM disabled.
  + Fix linker relocation errors on Debug/RelWithDebInfo builds.
  + Fix several crashes and rendering issues.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1726574400">- Update to version 2.46.0 (boo#1231039):
  + Use Skia instead of cairo for 2D rendering and enable GPU
    rendering by default.
  + Enable offscreen canvas by default.
  + Add support for system tracing with Sysprof.
  + Implement printing using the Print portal.
  + Add new API to load settings from a config file.
  + Add a new setting to enable or disable the 2D canvas
    acceleration (enabled by default).
  + Undeprecate console messages API and make it available in 6.0
    API.
  + Security fixes: CVE-2024-40866, CVE-2024-44187, CVE-2044-44185.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1728043200">- Update to version 2.46.1:
  + Fix login QR code not shown in WhatsApp web.
  + Disable PSON by default again in GTK 3 API versions.
  + Disable DMABuf video sink by default to prevent file descriptor
    leaks.
  + Fix the build with GCC 13.
  + Fix several crashes and rendering issues.</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1729080000">- Add bug281492.patch: fix crash in
  AccessibilityAtspi::textAttributes.
- Add bug281495.patch: fix crash in ProcessLauncher socket
  monitor callback.</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1729512000">- Update to version 2.46.2:
  + Own well-known bus name on a11y bus.
  + Improve memory consumption when putImageData is used repeatedly
    on accelerated canvas.
  + Disable cached web process suspension for now to prevent leaks.
  + Improve text kerning with different combinations of antialias
    and hinting settings.
  + Destroy all network sessions on process exit.
  + Fix visible rectangle calculation when there are animations.
  + Fix the build with ENABLE_NOTIFICATIONS=OFF.
  + Fix the build with ENABLE_FULLSCREEN_API=OFF.
  + Fix the build with ENABLE_WEB_AUDIO=OFF.
  + Fix the build on ppc64le.
  + Fix several crashes and rendering issues.
- Drop bug281495.patch: fixed upstream.</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1730721600">- Update to version 2.46.3 (boo#1232747):
  + Flatten layers to a plane when preseve-3d style is set.
  + Fix DuckDuckGo links by adding a user agent quirk.
  + Fix several crashes and rendering issues.
  + Security fixes: CVE-2044-44244, CVE-2024-44296.
- Drop bug281492.patch: fixed upstream.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1731412800">- Add 9e9ea966373d3858668f6a29d8ba91a5807c8dd8.patch: Fix aspect
  ratio in videos with gststreamer-1.24.9.</changelog>
</package>
<package pkgid="32c0458f12f71088a6300426dad54154d5b2b7b7cf564415d38e9a2b205ea030fe2814c9c8d3903106939b61b0dbb134afec69d8b452dff745d216d80451cfcf" name="WebKitGTK-4.1-lang" arch="noarch">
  <version epoch="0" ver="2.46.3" rel="3.0.7.1.sr20241103"/>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1710590400">- Update to version 2.44.0 (boo#1222010):
  + Make the DOM accessibility tree reachable from UI process with
    GTK4.
  + Removed the X11 and WPE renderers in favor of DMA-BUF.
  + Improved vblank synchronization when rendering.
  + Removed key event reinjection in GTK4 to make keyboard
    shortcuts work in web sites.
  + Fix gamepads detection by correctly handling focused window in
    GTK4.
  + Security fixes: CVE-2024-23252, CVE-2024-23254, CVE-2024-23263,
  CVE-2024-23280, CVE-2024-23284, CVE-2023-42950, CVE-2023-42956,
  CVE-2023-42843.
- Rebase webkit2gtk3-disable-dmabuf-nvidia.patch.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1710763200">- Add webkit2gtk3-271108.patch: Fix build on 32bit archs
  (https://bugs.webkit.org/show_bug.cgi?id=271108).</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1710936000">- Use WebAssembly on aarch64. It is the upstream default and no
  longer makes the build fail. Stop passing -DENABLE_C_LOOP=ON,
  - DENABLE_WEBASSEMBLY=OFF and -DENABLE_SAMPLING_PROFILER=OFF for
  the same reason.
- Drop webkit2gtk3-llint-build-fix.patch: no longer needed.
- Update some version requirements to match cmake checks.</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1713268800">- Update to version 2.44.1:
  + Fix handling of lifetime of web view child dialogs in GTK4.
  + Do not schedule layer flushes when drawing area size is empty.
  + Fix videos with alpha when using the DMA-BUF sink.
  + Fix the build with USE_GBM=OFF.
  + Fix the build in 32bit platforms
  + Fix several crashes and rendering issues.
- Drop webkit2gtk3-271108.patch: fixed upstream.</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1715947200">- Update to version 2.44.2 (boo#1225071):
  + Make gamepads visible on axis movements, and not only on
    button presses.
  + Disable the gst-libav AAC decoder.
  + Make user scripts and style sheets visible in the Web
    Inspector.
  + Use the geolocation portal where available, with the existing
    geoclue as fallback if the portal is not usable.
  + Use the printing portal when running sandboxed.
  + Use the file transfer portal for drag and drop when running
    sandboxed.
  + Avoid notifying an empty cursor rectangle to input methods.
  + Remove empty bar shown in detached inspector windows.
  + Consider keycode when activating application accelerators.
  + Fix the build with ENABLE_WEBAUDIO disabled.
  + Fix several crashes and rendering issues.
  + Security fixes: CVE-2024-27834, CVE-2024-27808, CVE-2024-27820,
    CVE-2024-27833.
- Update keyring (taken from rawhide).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1719921600">- Add 9d5844679af8f84036f1b800307e799bd7ab73ba.patch VA+DMABuf
  videos flicker</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1722513600">- Add CVE fixes:
  + webkit2gtk3-CVE-2024-40776.patch (boo#1228613 CVE-2024-40776)
  + webkit2gtk3-CVE-2024-40779.patch (boo#1228693 CVE-2024-40779)
  + webkit2gtk3-CVE-2024-40780.patch (boo#1228694 CVE-2024-40780)
  + webkit2gtk3-CVE-2024-40782.patch (boo#1228695 CVE-2024-40782)</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1723550400">- Update to version 2.44.3 (boo#1228696 boo#1228697 boo#1228698):
  + Fix web process cache suspend/resume when sandbox is enabled.
  + Fix accelerated images dissapearing after scrolling.
  + Fix video flickering with DMA-BUF sink.
  + Fix pointer lock on X11.
  + Fix movement delta on mouse events in GTK3.
  + Undeprecate console message API and make it available in 2022
    API.
  + Fix several crashes and rendering issues.
  + Security fixes: CVE-2024-40776, CVE-2024-40779, CVE-2024-40780,
    CVE-2023-40782, CVE-2024-40785, CVE-2024-40789, CVE-2024-40794,
    CVE-2024-4558, CVE-2024-27838, CVE-2024-27851.
- Drop patches now upstream:
  9d5844679af8f84036f1b800307e799bd7ab73ba.patch
  webkit2gtk3-CVE-2024-40776.patch
  webkit2gtk3-CVE-2024-40779.patch
  webkit2gtk3-CVE-2024-40780.patch
  webkit2gtk3-CVE-2024-40782.patch</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725192000">- Add revert-271175.patch: This reverts commit 279c9d7, it broke
  wasm.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725883200">- Update to version 2.44.4:
  + Add quirk to allow totale.rosettastone.com to load properly.
  + Fix webkit_web_resource_get_data() not working properly in some
    sites.
  + Fix not being able to jump-to-source in Web Inspector canvas
    traces.
  + Fix not being able to scroll list of WebGL shader programs in
    the Web Inspector.
  + Fix linker relocation errors on Debug/RelWithDebInfo builds.
  + Fix crashes when built with Clang with Link-Time Optimization
    (LTO).
  + Fix several crashes and rendering issues.
- Drop revert-271175.patch: Fixed upstream.
- Enable LTO again, pass define _lto_cflags for only select targets</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725883201">- Update to version 2.45.91:
  + Add new API to WebKitAutomationSession to be notified when the
    session is about to be closed.
  + Fix WebGL with accelerated compositing disabled.
  + Fix image filtering not being applied in some cases.
  + Fix the build on 32 bits systems.
  + Fix the build with -DUSE_TEXTURE_MAPPER_DMABUF=OFF
  + Fix several crashes and rendering issues.
  + Updated translations.
- Rebase patch with quilt.
- Drop webkit2gtk3-disable-dmabuf-nvidia.patch: Should not be
  needed anymore.
- Pass USE_SYSTEM_SYSPROF_CAPTURE=NO to cmake, avoid building
  sysprof capture for now.
- Disable LTO on x86 and ppc64le.</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1725969600">- Up gcc requirement to match cmake check.
  Remove wpe and wpebackend-fdo from BuildRequires: no longer used.</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1726056000">- Update to version 2.45.92:
  + Add webkit://gpu/stdout to dump the information from
    webkit://gpu to stdout.
  + Undeprecate injected bundle frame access interfaces.
  + Fix drag and drop.
  + Fix connection to a11y bus under flatpak.
  + Fix the build with Wayland and GBM disabled.
  + Fix linker relocation errors on Debug/RelWithDebInfo builds.
  + Fix several crashes and rendering issues.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1726574400">- Update to version 2.46.0 (boo#1231039):
  + Use Skia instead of cairo for 2D rendering and enable GPU
    rendering by default.
  + Enable offscreen canvas by default.
  + Add support for system tracing with Sysprof.
  + Implement printing using the Print portal.
  + Add new API to load settings from a config file.
  + Add a new setting to enable or disable the 2D canvas
    acceleration (enabled by default).
  + Undeprecate console messages API and make it available in 6.0
    API.
  + Security fixes: CVE-2024-40866, CVE-2024-44187, CVE-2044-44185.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1728043200">- Update to version 2.46.1:
  + Fix login QR code not shown in WhatsApp web.
  + Disable PSON by default again in GTK 3 API versions.
  + Disable DMABuf video sink by default to prevent file descriptor
    leaks.
  + Fix the build with GCC 13.
  + Fix several crashes and rendering issues.</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1729080000">- Add bug281492.patch: fix crash in
  AccessibilityAtspi::textAttributes.
- Add bug281495.patch: fix crash in ProcessLauncher socket
  monitor callback.</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1729512000">- Update to version 2.46.2:
  + Own well-known bus name on a11y bus.
  + Improve memory consumption when putImageData is used repeatedly
    on accelerated canvas.
  + Disable cached web process suspension for now to prevent leaks.
  + Improve text kerning with different combinations of antialias
    and hinting settings.
  + Destroy all network sessions on process exit.
  + Fix visible rectangle calculation when there are animations.
  + Fix the build with ENABLE_NOTIFICATIONS=OFF.
  + Fix the build with ENABLE_FULLSCREEN_API=OFF.
  + Fix the build with ENABLE_WEB_AUDIO=OFF.
  + Fix the build on ppc64le.
  + Fix several crashes and rendering issues.
- Drop bug281495.patch: fixed upstream.</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1730721600">- Update to version 2.46.3 (boo#1232747):
  + Flatten layers to a plane when preseve-3d style is set.
  + Fix DuckDuckGo links by adding a user agent quirk.
  + Fix several crashes and rendering issues.
  + Security fixes: CVE-2044-44244, CVE-2024-44296.
- Drop bug281492.patch: fixed upstream.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1731412800">- Add 9e9ea966373d3858668f6a29d8ba91a5807c8dd8.patch: Fix aspect
  ratio in videos with gststreamer-1.24.9.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1731585600">- Add 63f7badbada070ebaadd318b2801818ecf7e7ea0.patch: Fix build
  using ICU 76.1.</changelog>
</package>
<package pkgid="820934819c5f55009bcf52c3df0c8c320c026e73bddab3897d4d5febb011c26a8d954dff7b1fe5668690f6a7290cf40142514b531c3dbe35dfb22375a68900d4" name="WebKitGTK-4.1-lang" arch="noarch">
  <version epoch="0" ver="2.46.3" rel="3.1.sr20241103"/>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1709208000">- Update to version 2.43.4:
  + Remove key event reinjection in GTK4 to make keyboard shortcuts
    work in web sites.
  + Use the new GTK API to create a GdkTexture from a DMA-BUF
    buffer when available.
  + Fix rendering when GTK is using the vulkan renderer.
  + Fix gamepads detection by correctly handling focused window in
    GTK4.
  + Fix rendering after history navigation.
  + Write bwrapinfo.json to disk for xdg-desktop-portal.
  + Fixed several memory leaks in media backend.
  + Fix several crashes and rendering issues.
- Changes from version 2.43.3:
  + Show vblank monitor information in webkit://gpu.
  + Fallback to timer based vblank monitor if drmWaitVBlank fails.
  + Fix several memory leaks in media backend.
  + Fix several crashes and rendering issues.
- Changes from version 2.43.2?
  + Remove the X11 and WPE renderers.
  + Release unused buffers when the view is hidden.
  + Fix flickering while playing videos with DMA-BUF sink.
  + Do not special case the "sans" font family name.
  + Fix webkit_web_context_allow_tls_certificate_for_host() for
    IPv6 URIs produced by SoupURI.
  + Fix several crashes and rendering issues.
- Changes from version WebKitGTK 2.43.1?
  + Improve vblank synchronization when rendering.
  + Improve DMA-BUF buffers handling for video frames.
  + Use the buffer format preferred by the driver in DMA-BUF
    renderer.
  + Do not block the compositing thread waiting for rendering
    threads.
  + Improve performance when scaling images in a canvas.
  + Fix several crashes and rendering issues.
  + Updated translations.
- Drop webkit2gtk3-create-destroy-egl-image.patch: fixed upstream.
- Add libbacktrace-devel BuildRequires (for gtk4 flavor).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1709640000">- baselibs.conf: Do not build libjavascriptcoregtk-4_1-0-32bit and
  libwebkit2gtk-4_1-0-32bit: they are not used, and in fact not
  built in Factory (build excluded).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1710590400">- Update to version 2.44.0 (boo#1222010):
  + Make the DOM accessibility tree reachable from UI process with
    GTK4.
  + Removed the X11 and WPE renderers in favor of DMA-BUF.
  + Improved vblank synchronization when rendering.
  + Removed key event reinjection in GTK4 to make keyboard
    shortcuts work in web sites.
  + Fix gamepads detection by correctly handling focused window in
    GTK4.
  + Security fixes: CVE-2024-23252, CVE-2024-23254, CVE-2024-23263,
  CVE-2024-23280, CVE-2024-23284, CVE-2023-42950, CVE-2023-42956,
  CVE-2023-42843.
- Rebase webkit2gtk3-disable-dmabuf-nvidia.patch.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1710763200">- Add webkit2gtk3-271108.patch: Fix build on 32bit archs
  (https://bugs.webkit.org/show_bug.cgi?id=271108).</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1710936000">- Use WebAssembly on aarch64. It is the upstream default and no
  longer makes the build fail. Stop passing -DENABLE_C_LOOP=ON,
  - DENABLE_WEBASSEMBLY=OFF and -DENABLE_SAMPLING_PROFILER=OFF for
  the same reason.
- Drop webkit2gtk3-llint-build-fix.patch: no longer needed.
- Update some version requirements to match cmake checks.</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1713268800">- Update to version 2.44.1:
  + Fix handling of lifetime of web view child dialogs in GTK4.
  + Do not schedule layer flushes when drawing area size is empty.
  + Fix videos with alpha when using the DMA-BUF sink.
  + Fix the build with USE_GBM=OFF.
  + Fix the build in 32bit platforms
  + Fix several crashes and rendering issues.
- Drop webkit2gtk3-271108.patch: fixed upstream.</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1715947200">- Update to version 2.44.2 (boo#1225071):
  + Make gamepads visible on axis movements, and not only on
    button presses.
  + Disable the gst-libav AAC decoder.
  + Make user scripts and style sheets visible in the Web
    Inspector.
  + Use the geolocation portal where available, with the existing
    geoclue as fallback if the portal is not usable.
  + Use the printing portal when running sandboxed.
  + Use the file transfer portal for drag and drop when running
    sandboxed.
  + Avoid notifying an empty cursor rectangle to input methods.
  + Remove empty bar shown in detached inspector windows.
  + Consider keycode when activating application accelerators.
  + Fix the build with ENABLE_WEBAUDIO disabled.
  + Fix several crashes and rendering issues.
  + Security fixes: CVE-2024-27834, CVE-2024-27808, CVE-2024-27820,
    CVE-2024-27833.
- Update keyring (taken from rawhide).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1719921600">- Add 9d5844679af8f84036f1b800307e799bd7ab73ba.patch VA+DMABuf
  videos flicker</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1722513600">- Add CVE fixes:
  + webkit2gtk3-CVE-2024-40776.patch (boo#1228613 CVE-2024-40776)
  + webkit2gtk3-CVE-2024-40779.patch (boo#1228693 CVE-2024-40779)
  + webkit2gtk3-CVE-2024-40780.patch (boo#1228694 CVE-2024-40780)
  + webkit2gtk3-CVE-2024-40782.patch (boo#1228695 CVE-2024-40782)</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1723550400">- Update to version 2.44.3 (boo#1228696 boo#1228697 boo#1228698):
  + Fix web process cache suspend/resume when sandbox is enabled.
  + Fix accelerated images dissapearing after scrolling.
  + Fix video flickering with DMA-BUF sink.
  + Fix pointer lock on X11.
  + Fix movement delta on mouse events in GTK3.
  + Undeprecate console message API and make it available in 2022
    API.
  + Fix several crashes and rendering issues.
  + Security fixes: CVE-2024-40776, CVE-2024-40779, CVE-2024-40780,
    CVE-2023-40782, CVE-2024-40785, CVE-2024-40789, CVE-2024-40794,
    CVE-2024-4558, CVE-2024-27838, CVE-2024-27851.
- Drop patches now upstream:
  9d5844679af8f84036f1b800307e799bd7ab73ba.patch
  webkit2gtk3-CVE-2024-40776.patch
  webkit2gtk3-CVE-2024-40779.patch
  webkit2gtk3-CVE-2024-40780.patch
  webkit2gtk3-CVE-2024-40782.patch</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725192000">- Add revert-271175.patch: This reverts commit 279c9d7, it broke
  wasm.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725883200">- Update to version 2.44.4:
  + Add quirk to allow totale.rosettastone.com to load properly.
  + Fix webkit_web_resource_get_data() not working properly in some
    sites.
  + Fix not being able to jump-to-source in Web Inspector canvas
    traces.
  + Fix not being able to scroll list of WebGL shader programs in
    the Web Inspector.
  + Fix linker relocation errors on Debug/RelWithDebInfo builds.
  + Fix crashes when built with Clang with Link-Time Optimization
    (LTO).
  + Fix several crashes and rendering issues.
- Drop revert-271175.patch: Fixed upstream.
- Enable LTO again, pass define _lto_cflags for only select targets</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725883201">- Update to version 2.45.91:
  + Add new API to WebKitAutomationSession to be notified when the
    session is about to be closed.
  + Fix WebGL with accelerated compositing disabled.
  + Fix image filtering not being applied in some cases.
  + Fix the build on 32 bits systems.
  + Fix the build with -DUSE_TEXTURE_MAPPER_DMABUF=OFF
  + Fix several crashes and rendering issues.
  + Updated translations.
- Rebase patch with quilt.
- Drop webkit2gtk3-disable-dmabuf-nvidia.patch: Should not be
  needed anymore.
- Pass USE_SYSTEM_SYSPROF_CAPTURE=NO to cmake, avoid building
  sysprof capture for now.
- Disable LTO on x86 and ppc64le.</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1725969600">- Up gcc requirement to match cmake check.
  Remove wpe and wpebackend-fdo from BuildRequires: no longer used.</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1726056000">- Update to version 2.45.92:
  + Add webkit://gpu/stdout to dump the information from
    webkit://gpu to stdout.
  + Undeprecate injected bundle frame access interfaces.
  + Fix drag and drop.
  + Fix connection to a11y bus under flatpak.
  + Fix the build with Wayland and GBM disabled.
  + Fix linker relocation errors on Debug/RelWithDebInfo builds.
  + Fix several crashes and rendering issues.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1726574400">- Update to version 2.46.0 (boo#1231039):
  + Use Skia instead of cairo for 2D rendering and enable GPU
    rendering by default.
  + Enable offscreen canvas by default.
  + Add support for system tracing with Sysprof.
  + Implement printing using the Print portal.
  + Add new API to load settings from a config file.
  + Add a new setting to enable or disable the 2D canvas
    acceleration (enabled by default).
  + Undeprecate console messages API and make it available in 6.0
    API.
  + Security fixes: CVE-2024-40866, CVE-2024-44187, CVE-2044-44185.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1728043200">- Update to version 2.46.1:
  + Fix login QR code not shown in WhatsApp web.
  + Disable PSON by default again in GTK 3 API versions.
  + Disable DMABuf video sink by default to prevent file descriptor
    leaks.
  + Fix the build with GCC 13.
  + Fix several crashes and rendering issues.</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1729080000">- Add bug281492.patch: fix crash in
  AccessibilityAtspi::textAttributes.
- Add bug281495.patch: fix crash in ProcessLauncher socket
  monitor callback.</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1729512000">- Update to version 2.46.2:
  + Own well-known bus name on a11y bus.
  + Improve memory consumption when putImageData is used repeatedly
    on accelerated canvas.
  + Disable cached web process suspension for now to prevent leaks.
  + Improve text kerning with different combinations of antialias
    and hinting settings.
  + Destroy all network sessions on process exit.
  + Fix visible rectangle calculation when there are animations.
  + Fix the build with ENABLE_NOTIFICATIONS=OFF.
  + Fix the build with ENABLE_FULLSCREEN_API=OFF.
  + Fix the build with ENABLE_WEB_AUDIO=OFF.
  + Fix the build on ppc64le.
  + Fix several crashes and rendering issues.
- Drop bug281495.patch: fixed upstream.</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1730721600">- Update to version 2.46.3 (boo#1232747):
  + Flatten layers to a plane when preseve-3d style is set.
  + Fix DuckDuckGo links by adding a user agent quirk.
  + Fix several crashes and rendering issues.
  + Security fixes: CVE-2044-44244, CVE-2024-44296.
- Drop bug281492.patch: fixed upstream.</changelog>
</package>
<package pkgid="f33c487b0b74a253553f2962bf660268d2e61b5a576e57ea9d1484ada858c11e9e945a45d5c3c60164fc0a5b423256f62b0cf46d54cb9f1a0ce45f35b011bac8" name="WebKitGTK-4.1-lang" arch="noarch">
  <version epoch="0" ver="2.46.3" rel="4.0.9.1.sr20241103"/>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1710763200">- Add webkit2gtk3-271108.patch: Fix build on 32bit archs
  (https://bugs.webkit.org/show_bug.cgi?id=271108).</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1710936000">- Use WebAssembly on aarch64. It is the upstream default and no
  longer makes the build fail. Stop passing -DENABLE_C_LOOP=ON,
  - DENABLE_WEBASSEMBLY=OFF and -DENABLE_SAMPLING_PROFILER=OFF for
  the same reason.
- Drop webkit2gtk3-llint-build-fix.patch: no longer needed.
- Update some version requirements to match cmake checks.</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1713268800">- Update to version 2.44.1:
  + Fix handling of lifetime of web view child dialogs in GTK4.
  + Do not schedule layer flushes when drawing area size is empty.
  + Fix videos with alpha when using the DMA-BUF sink.
  + Fix the build with USE_GBM=OFF.
  + Fix the build in 32bit platforms
  + Fix several crashes and rendering issues.
- Drop webkit2gtk3-271108.patch: fixed upstream.</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1715947200">- Update to version 2.44.2 (boo#1225071):
  + Make gamepads visible on axis movements, and not only on
    button presses.
  + Disable the gst-libav AAC decoder.
  + Make user scripts and style sheets visible in the Web
    Inspector.
  + Use the geolocation portal where available, with the existing
    geoclue as fallback if the portal is not usable.
  + Use the printing portal when running sandboxed.
  + Use the file transfer portal for drag and drop when running
    sandboxed.
  + Avoid notifying an empty cursor rectangle to input methods.
  + Remove empty bar shown in detached inspector windows.
  + Consider keycode when activating application accelerators.
  + Fix the build with ENABLE_WEBAUDIO disabled.
  + Fix several crashes and rendering issues.
  + Security fixes: CVE-2024-27834, CVE-2024-27808, CVE-2024-27820,
    CVE-2024-27833.
- Update keyring (taken from rawhide).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1719921600">- Add 9d5844679af8f84036f1b800307e799bd7ab73ba.patch VA+DMABuf
  videos flicker</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1722513600">- Add CVE fixes:
  + webkit2gtk3-CVE-2024-40776.patch (boo#1228613 CVE-2024-40776)
  + webkit2gtk3-CVE-2024-40779.patch (boo#1228693 CVE-2024-40779)
  + webkit2gtk3-CVE-2024-40780.patch (boo#1228694 CVE-2024-40780)
  + webkit2gtk3-CVE-2024-40782.patch (boo#1228695 CVE-2024-40782)</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1723550400">- Update to version 2.44.3 (boo#1228696 boo#1228697 boo#1228698):
  + Fix web process cache suspend/resume when sandbox is enabled.
  + Fix accelerated images dissapearing after scrolling.
  + Fix video flickering with DMA-BUF sink.
  + Fix pointer lock on X11.
  + Fix movement delta on mouse events in GTK3.
  + Undeprecate console message API and make it available in 2022
    API.
  + Fix several crashes and rendering issues.
  + Security fixes: CVE-2024-40776, CVE-2024-40779, CVE-2024-40780,
    CVE-2023-40782, CVE-2024-40785, CVE-2024-40789, CVE-2024-40794,
    CVE-2024-4558, CVE-2024-27838, CVE-2024-27851.
- Drop patches now upstream:
  9d5844679af8f84036f1b800307e799bd7ab73ba.patch
  webkit2gtk3-CVE-2024-40776.patch
  webkit2gtk3-CVE-2024-40779.patch
  webkit2gtk3-CVE-2024-40780.patch
  webkit2gtk3-CVE-2024-40782.patch</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725192000">- Add revert-271175.patch: This reverts commit 279c9d7, it broke
  wasm.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725883200">- Update to version 2.44.4:
  + Add quirk to allow totale.rosettastone.com to load properly.
  + Fix webkit_web_resource_get_data() not working properly in some
    sites.
  + Fix not being able to jump-to-source in Web Inspector canvas
    traces.
  + Fix not being able to scroll list of WebGL shader programs in
    the Web Inspector.
  + Fix linker relocation errors on Debug/RelWithDebInfo builds.
  + Fix crashes when built with Clang with Link-Time Optimization
    (LTO).
  + Fix several crashes and rendering issues.
- Drop revert-271175.patch: Fixed upstream.
- Enable LTO again, pass define _lto_cflags for only select targets</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725883201">- Update to version 2.45.91:
  + Add new API to WebKitAutomationSession to be notified when the
    session is about to be closed.
  + Fix WebGL with accelerated compositing disabled.
  + Fix image filtering not being applied in some cases.
  + Fix the build on 32 bits systems.
  + Fix the build with -DUSE_TEXTURE_MAPPER_DMABUF=OFF
  + Fix several crashes and rendering issues.
  + Updated translations.
- Rebase patch with quilt.
- Drop webkit2gtk3-disable-dmabuf-nvidia.patch: Should not be
  needed anymore.
- Pass USE_SYSTEM_SYSPROF_CAPTURE=NO to cmake, avoid building
  sysprof capture for now.
- Disable LTO on x86 and ppc64le.</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1725969600">- Up gcc requirement to match cmake check.
  Remove wpe and wpebackend-fdo from BuildRequires: no longer used.</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1726056000">- Update to version 2.45.92:
  + Add webkit://gpu/stdout to dump the information from
    webkit://gpu to stdout.
  + Undeprecate injected bundle frame access interfaces.
  + Fix drag and drop.
  + Fix connection to a11y bus under flatpak.
  + Fix the build with Wayland and GBM disabled.
  + Fix linker relocation errors on Debug/RelWithDebInfo builds.
  + Fix several crashes and rendering issues.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1726574400">- Update to version 2.46.0 (boo#1231039):
  + Use Skia instead of cairo for 2D rendering and enable GPU
    rendering by default.
  + Enable offscreen canvas by default.
  + Add support for system tracing with Sysprof.
  + Implement printing using the Print portal.
  + Add new API to load settings from a config file.
  + Add a new setting to enable or disable the 2D canvas
    acceleration (enabled by default).
  + Undeprecate console messages API and make it available in 6.0
    API.
  + Security fixes: CVE-2024-40866, CVE-2024-44187, CVE-2044-44185.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1728043200">- Update to version 2.46.1:
  + Fix login QR code not shown in WhatsApp web.
  + Disable PSON by default again in GTK 3 API versions.
  + Disable DMABuf video sink by default to prevent file descriptor
    leaks.
  + Fix the build with GCC 13.
  + Fix several crashes and rendering issues.</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1729080000">- Add bug281492.patch: fix crash in
  AccessibilityAtspi::textAttributes.
- Add bug281495.patch: fix crash in ProcessLauncher socket
  monitor callback.</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1729512000">- Update to version 2.46.2:
  + Own well-known bus name on a11y bus.
  + Improve memory consumption when putImageData is used repeatedly
    on accelerated canvas.
  + Disable cached web process suspension for now to prevent leaks.
  + Improve text kerning with different combinations of antialias
    and hinting settings.
  + Destroy all network sessions on process exit.
  + Fix visible rectangle calculation when there are animations.
  + Fix the build with ENABLE_NOTIFICATIONS=OFF.
  + Fix the build with ENABLE_FULLSCREEN_API=OFF.
  + Fix the build with ENABLE_WEB_AUDIO=OFF.
  + Fix the build on ppc64le.
  + Fix several crashes and rendering issues.
- Drop bug281495.patch: fixed upstream.</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1730721600">- Update to version 2.46.3 (boo#1232747):
  + Flatten layers to a plane when preseve-3d style is set.
  + Fix DuckDuckGo links by adding a user agent quirk.
  + Fix several crashes and rendering issues.
  + Security fixes: CVE-2044-44244, CVE-2024-44296.
- Drop bug281492.patch: fixed upstream.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1731412800">- Add 9e9ea966373d3858668f6a29d8ba91a5807c8dd8.patch: Fix aspect
  ratio in videos with gststreamer-1.24.9.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1731585600">- Add 63f7badbada070ebaadd318b2801818ecf7e7ea0.patch: Fix build
  using ICU 76.1.</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1732536000">- Add webkit2gtk3-CVE-2024-44308.patch: don't allocate DFG register
  after a slow path (boo#1233631 CVE-2024-44308).
- Add webkit2gtk3-CVE-2024-44309.patch: fix a cookie management
  issue (boo#1233632 CVE-2024-44309).</changelog>
</package>
<package pkgid="a6f2c26c33f4447afce7550df154c574d0b6058ab4baaeff7534f1e3d55d2b4762fcee17976713dbc6953de0d2ae29fcc12d78c3cefca28a2d46772cccf14197" name="WebKitGTK-4.1-lang" arch="noarch">
  <version epoch="0" ver="2.46.4" rel="1.0.11.1.sr20241103"/>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1710936000">- Use WebAssembly on aarch64. It is the upstream default and no
  longer makes the build fail. Stop passing -DENABLE_C_LOOP=ON,
  - DENABLE_WEBASSEMBLY=OFF and -DENABLE_SAMPLING_PROFILER=OFF for
  the same reason.
- Drop webkit2gtk3-llint-build-fix.patch: no longer needed.
- Update some version requirements to match cmake checks.</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1713268800">- Update to version 2.44.1:
  + Fix handling of lifetime of web view child dialogs in GTK4.
  + Do not schedule layer flushes when drawing area size is empty.
  + Fix videos with alpha when using the DMA-BUF sink.
  + Fix the build with USE_GBM=OFF.
  + Fix the build in 32bit platforms
  + Fix several crashes and rendering issues.
- Drop webkit2gtk3-271108.patch: fixed upstream.</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1715947200">- Update to version 2.44.2 (boo#1225071):
  + Make gamepads visible on axis movements, and not only on
    button presses.
  + Disable the gst-libav AAC decoder.
  + Make user scripts and style sheets visible in the Web
    Inspector.
  + Use the geolocation portal where available, with the existing
    geoclue as fallback if the portal is not usable.
  + Use the printing portal when running sandboxed.
  + Use the file transfer portal for drag and drop when running
    sandboxed.
  + Avoid notifying an empty cursor rectangle to input methods.
  + Remove empty bar shown in detached inspector windows.
  + Consider keycode when activating application accelerators.
  + Fix the build with ENABLE_WEBAUDIO disabled.
  + Fix several crashes and rendering issues.
  + Security fixes: CVE-2024-27834, CVE-2024-27808, CVE-2024-27820,
    CVE-2024-27833.
- Update keyring (taken from rawhide).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1719921600">- Add 9d5844679af8f84036f1b800307e799bd7ab73ba.patch VA+DMABuf
  videos flicker</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1722513600">- Add CVE fixes:
  + webkit2gtk3-CVE-2024-40776.patch (boo#1228613 CVE-2024-40776)
  + webkit2gtk3-CVE-2024-40779.patch (boo#1228693 CVE-2024-40779)
  + webkit2gtk3-CVE-2024-40780.patch (boo#1228694 CVE-2024-40780)
  + webkit2gtk3-CVE-2024-40782.patch (boo#1228695 CVE-2024-40782)</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1723550400">- Update to version 2.44.3 (boo#1228697):
  + Fix web process cache suspend/resume when sandbox is enabled.
  + Fix accelerated images dissapearing after scrolling.
  + Fix video flickering with DMA-BUF sink.
  + Fix pointer lock on X11.
  + Fix movement delta on mouse events in GTK3.
  + Undeprecate console message API and make it available in 2022
    API.
  + Fix several crashes and rendering issues.
  + Security fixes: CVE-2024-40776, CVE-2024-40779, CVE-2024-40780,
    CVE-2024-40782, CVE-2024-40789, CVE-2024-4558, CVE-2024-27838,
  CVE-2024-27851.
- Drop patches now upstream:
  9d5844679af8f84036f1b800307e799bd7ab73ba.patch
  webkit2gtk3-CVE-2024-40776.patch
  webkit2gtk3-CVE-2024-40779.patch
  webkit2gtk3-CVE-2024-40780.patch
  webkit2gtk3-CVE-2024-40782.patch</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725192000">- Add revert-271175.patch: This reverts commit 279c9d7, it broke
  wasm.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725883200">- Update to version 2.44.4:
  + Add quirk to allow totale.rosettastone.com to load properly.
  + Fix webkit_web_resource_get_data() not working properly in some
    sites.
  + Fix not being able to jump-to-source in Web Inspector canvas
    traces.
  + Fix not being able to scroll list of WebGL shader programs in
    the Web Inspector.
  + Fix linker relocation errors on Debug/RelWithDebInfo builds.
  + Fix crashes when built with Clang with Link-Time Optimization
    (LTO).
  + Fix several crashes and rendering issues.
- Drop revert-271175.patch: Fixed upstream.
- Enable LTO again, pass define _lto_cflags for only select targets</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725883201">- Update to version 2.45.91:
  + Add new API to WebKitAutomationSession to be notified when the
    session is about to be closed.
  + Fix WebGL with accelerated compositing disabled.
  + Fix image filtering not being applied in some cases.
  + Fix the build on 32 bits systems.
  + Fix the build with -DUSE_TEXTURE_MAPPER_DMABUF=OFF
  + Fix several crashes and rendering issues.
  + Updated translations.
- Rebase patch with quilt.
- Drop webkit2gtk3-disable-dmabuf-nvidia.patch: Should not be
  needed anymore.
- Pass USE_SYSTEM_SYSPROF_CAPTURE=NO to cmake, avoid building
  sysprof capture for now.
- Disable LTO on x86 and ppc64le.</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1725969600">- Up gcc requirement to match cmake check.
  Remove wpe and wpebackend-fdo from BuildRequires: no longer used.</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1726056000">- Update to version 2.45.92:
  + Add webkit://gpu/stdout to dump the information from
    webkit://gpu to stdout.
  + Undeprecate injected bundle frame access interfaces.
  + Fix drag and drop.
  + Fix connection to a11y bus under flatpak.
  + Fix the build with Wayland and GBM disabled.
  + Fix linker relocation errors on Debug/RelWithDebInfo builds.
  + Fix several crashes and rendering issues.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1726574400">- Update to version 2.46.0 (boo#1231039):
  + Use Skia instead of cairo for 2D rendering and enable GPU
    rendering by default.
  + Enable offscreen canvas by default.
  + Add support for system tracing with Sysprof.
  + Implement printing using the Print portal.
  + Add new API to load settings from a config file.
  + Add a new setting to enable or disable the 2D canvas
    acceleration (enabled by default).
  + Undeprecate console messages API and make it available in 6.0
    API.
  + Security fixes: CVE-2024-40866, CVE-2024-44187, CVE-2044-44185.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1728043200">- Update to version 2.46.1:
  + Fix login QR code not shown in WhatsApp web.
  + Disable PSON by default again in GTK 3 API versions.
  + Disable DMABuf video sink by default to prevent file descriptor
    leaks.
  + Fix the build with GCC 13.
  + Fix several crashes and rendering issues.</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1729080000">- Add bug281492.patch: fix crash in
  AccessibilityAtspi::textAttributes.
- Add bug281495.patch: fix crash in ProcessLauncher socket
  monitor callback.</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1729512000">- Update to version 2.46.2:
  + Own well-known bus name on a11y bus.
  + Improve memory consumption when putImageData is used repeatedly
    on accelerated canvas.
  + Disable cached web process suspension for now to prevent leaks.
  + Improve text kerning with different combinations of antialias
    and hinting settings.
  + Destroy all network sessions on process exit.
  + Fix visible rectangle calculation when there are animations.
  + Fix the build with ENABLE_NOTIFICATIONS=OFF.
  + Fix the build with ENABLE_FULLSCREEN_API=OFF.
  + Fix the build with ENABLE_WEB_AUDIO=OFF.
  + Fix the build on ppc64le.
  + Fix several crashes and rendering issues.
- Drop bug281495.patch: fixed upstream.</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1730721600">- Update to version 2.46.3 (boo#1232747):
  + Flatten layers to a plane when preseve-3d style is set.
  + Fix DuckDuckGo links by adding a user agent quirk.
  + Fix several crashes and rendering issues.
  + Security fixes: CVE-2044-44244, CVE-2024-44296.
- Drop bug281492.patch: fixed upstream.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1731412800">- Add 9e9ea966373d3858668f6a29d8ba91a5807c8dd8.patch: Fix aspect
  ratio in videos with gststreamer-1.24.9.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1731585600">- Add 63f7badbada070ebaadd318b2801818ecf7e7ea0.patch: Fix build
  using ICU 76.1.</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1732536000">- Add webkit2gtk3-CVE-2024-44308.patch: don't allocate DFG register
  after a slow path (boo#1233631 CVE-2024-44308).
- Add webkit2gtk3-CVE-2024-44309.patch: fix a cookie management
  issue (boo#1233632 CVE-2024-44309).</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1732708800">- Update to version 2.46.4:
  + Improve memory consumption and performance of Canvas
    getImageData.
  + Fix preserve-3D intersection rendering.
  + Fix video dimensions since GStreamer 1.24.9.
  + Fix the HTTP-based remote Web Inspector not loading in
    Chromium.
  + Fix content filters not working on about:blank iframes.
  + Fix several crashes and rendering issues.
  + Security fixes: CVE-2024-44308, CVE-2024-44309.
- Drop patches fixed upstream:
  + 9e9ea966373d3858668f6a29d8ba91a5807c8dd8.patch
  + webkit2gtk3-CVE-2024-44308.patch
  + webkit2gtk3-CVE-2024-44309.patch</changelog>
</package>
<package pkgid="00f9f81050555a952ae2036d6f90222b26f215d1c22b168c73d3e4fd684017aee591efe93b3c28b124e74f7b81b36aef19368959b42842d3bbc5f871c25bb5fc" name="WebKitGTK-6.0-lang" arch="noarch">
  <version epoch="0" ver="2.46.3" rel="2.0.5.1.sr20241103"/>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1709640000">- baselibs.conf: Do not build libjavascriptcoregtk-4_1-0-32bit and
  libwebkit2gtk-4_1-0-32bit: they are not used, and in fact not
  built in Factory (build excluded).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1710590400">- Update to version 2.44.0 (boo#1222010):
  + Make the DOM accessibility tree reachable from UI process with
    GTK4.
  + Removed the X11 and WPE renderers in favor of DMA-BUF.
  + Improved vblank synchronization when rendering.
  + Removed key event reinjection in GTK4 to make keyboard
    shortcuts work in web sites.
  + Fix gamepads detection by correctly handling focused window in
    GTK4.
  + Security fixes: CVE-2024-23252, CVE-2024-23254, CVE-2024-23263,
  CVE-2024-23280, CVE-2024-23284, CVE-2023-42950, CVE-2023-42956,
  CVE-2023-42843.
- Rebase webkit2gtk3-disable-dmabuf-nvidia.patch.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1710763200">- Add webkit2gtk3-271108.patch: Fix build on 32bit archs
  (https://bugs.webkit.org/show_bug.cgi?id=271108).</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1710936000">- Use WebAssembly on aarch64. It is the upstream default and no
  longer makes the build fail. Stop passing -DENABLE_C_LOOP=ON,
  - DENABLE_WEBASSEMBLY=OFF and -DENABLE_SAMPLING_PROFILER=OFF for
  the same reason.
- Drop webkit2gtk3-llint-build-fix.patch: no longer needed.
- Update some version requirements to match cmake checks.</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1713268800">- Update to version 2.44.1:
  + Fix handling of lifetime of web view child dialogs in GTK4.
  + Do not schedule layer flushes when drawing area size is empty.
  + Fix videos with alpha when using the DMA-BUF sink.
  + Fix the build with USE_GBM=OFF.
  + Fix the build in 32bit platforms
  + Fix several crashes and rendering issues.
- Drop webkit2gtk3-271108.patch: fixed upstream.</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1715947200">- Update to version 2.44.2 (boo#1225071):
  + Make gamepads visible on axis movements, and not only on
    button presses.
  + Disable the gst-libav AAC decoder.
  + Make user scripts and style sheets visible in the Web
    Inspector.
  + Use the geolocation portal where available, with the existing
    geoclue as fallback if the portal is not usable.
  + Use the printing portal when running sandboxed.
  + Use the file transfer portal for drag and drop when running
    sandboxed.
  + Avoid notifying an empty cursor rectangle to input methods.
  + Remove empty bar shown in detached inspector windows.
  + Consider keycode when activating application accelerators.
  + Fix the build with ENABLE_WEBAUDIO disabled.
  + Fix several crashes and rendering issues.
  + Security fixes: CVE-2024-27834, CVE-2024-27808, CVE-2024-27820,
    CVE-2024-27833.
- Update keyring (taken from rawhide).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1719921600">- Add 9d5844679af8f84036f1b800307e799bd7ab73ba.patch VA+DMABuf
  videos flicker</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1722513600">- Add CVE fixes:
  + webkit2gtk3-CVE-2024-40776.patch (boo#1228613 CVE-2024-40776)
  + webkit2gtk3-CVE-2024-40779.patch (boo#1228693 CVE-2024-40779)
  + webkit2gtk3-CVE-2024-40780.patch (boo#1228694 CVE-2024-40780)
  + webkit2gtk3-CVE-2024-40782.patch (boo#1228695 CVE-2024-40782)</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1723550400">- Update to version 2.44.3 (boo#1228696 boo#1228697 boo#1228698):
  + Fix web process cache suspend/resume when sandbox is enabled.
  + Fix accelerated images dissapearing after scrolling.
  + Fix video flickering with DMA-BUF sink.
  + Fix pointer lock on X11.
  + Fix movement delta on mouse events in GTK3.
  + Undeprecate console message API and make it available in 2022
    API.
  + Fix several crashes and rendering issues.
  + Security fixes: CVE-2024-40776, CVE-2024-40779, CVE-2024-40780,
    CVE-2023-40782, CVE-2024-40785, CVE-2024-40789, CVE-2024-40794,
    CVE-2024-4558, CVE-2024-27838, CVE-2024-27851.
- Drop patches now upstream:
  9d5844679af8f84036f1b800307e799bd7ab73ba.patch
  webkit2gtk3-CVE-2024-40776.patch
  webkit2gtk3-CVE-2024-40779.patch
  webkit2gtk3-CVE-2024-40780.patch
  webkit2gtk3-CVE-2024-40782.patch</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725192000">- Add revert-271175.patch: This reverts commit 279c9d7, it broke
  wasm.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725883200">- Update to version 2.44.4:
  + Add quirk to allow totale.rosettastone.com to load properly.
  + Fix webkit_web_resource_get_data() not working properly in some
    sites.
  + Fix not being able to jump-to-source in Web Inspector canvas
    traces.
  + Fix not being able to scroll list of WebGL shader programs in
    the Web Inspector.
  + Fix linker relocation errors on Debug/RelWithDebInfo builds.
  + Fix crashes when built with Clang with Link-Time Optimization
    (LTO).
  + Fix several crashes and rendering issues.
- Drop revert-271175.patch: Fixed upstream.
- Enable LTO again, pass define _lto_cflags for only select targets</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725883201">- Update to version 2.45.91:
  + Add new API to WebKitAutomationSession to be notified when the
    session is about to be closed.
  + Fix WebGL with accelerated compositing disabled.
  + Fix image filtering not being applied in some cases.
  + Fix the build on 32 bits systems.
  + Fix the build with -DUSE_TEXTURE_MAPPER_DMABUF=OFF
  + Fix several crashes and rendering issues.
  + Updated translations.
- Rebase patch with quilt.
- Drop webkit2gtk3-disable-dmabuf-nvidia.patch: Should not be
  needed anymore.
- Pass USE_SYSTEM_SYSPROF_CAPTURE=NO to cmake, avoid building
  sysprof capture for now.
- Disable LTO on x86 and ppc64le.</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1725969600">- Up gcc requirement to match cmake check.
  Remove wpe and wpebackend-fdo from BuildRequires: no longer used.</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1726056000">- Update to version 2.45.92:
  + Add webkit://gpu/stdout to dump the information from
    webkit://gpu to stdout.
  + Undeprecate injected bundle frame access interfaces.
  + Fix drag and drop.
  + Fix connection to a11y bus under flatpak.
  + Fix the build with Wayland and GBM disabled.
  + Fix linker relocation errors on Debug/RelWithDebInfo builds.
  + Fix several crashes and rendering issues.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1726574400">- Update to version 2.46.0 (boo#1231039):
  + Use Skia instead of cairo for 2D rendering and enable GPU
    rendering by default.
  + Enable offscreen canvas by default.
  + Add support for system tracing with Sysprof.
  + Implement printing using the Print portal.
  + Add new API to load settings from a config file.
  + Add a new setting to enable or disable the 2D canvas
    acceleration (enabled by default).
  + Undeprecate console messages API and make it available in 6.0
    API.
  + Security fixes: CVE-2024-40866, CVE-2024-44187, CVE-2044-44185.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1728043200">- Update to version 2.46.1:
  + Fix login QR code not shown in WhatsApp web.
  + Disable PSON by default again in GTK 3 API versions.
  + Disable DMABuf video sink by default to prevent file descriptor
    leaks.
  + Fix the build with GCC 13.
  + Fix several crashes and rendering issues.</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1729080000">- Add bug281492.patch: fix crash in
  AccessibilityAtspi::textAttributes.
- Add bug281495.patch: fix crash in ProcessLauncher socket
  monitor callback.</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1729512000">- Update to version 2.46.2:
  + Own well-known bus name on a11y bus.
  + Improve memory consumption when putImageData is used repeatedly
    on accelerated canvas.
  + Disable cached web process suspension for now to prevent leaks.
  + Improve text kerning with different combinations of antialias
    and hinting settings.
  + Destroy all network sessions on process exit.
  + Fix visible rectangle calculation when there are animations.
  + Fix the build with ENABLE_NOTIFICATIONS=OFF.
  + Fix the build with ENABLE_FULLSCREEN_API=OFF.
  + Fix the build with ENABLE_WEB_AUDIO=OFF.
  + Fix the build on ppc64le.
  + Fix several crashes and rendering issues.
- Drop bug281495.patch: fixed upstream.</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1730721600">- Update to version 2.46.3 (boo#1232747):
  + Flatten layers to a plane when preseve-3d style is set.
  + Fix DuckDuckGo links by adding a user agent quirk.
  + Fix several crashes and rendering issues.
  + Security fixes: CVE-2044-44244, CVE-2024-44296.
- Drop bug281492.patch: fixed upstream.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1731412800">- Add 9e9ea966373d3858668f6a29d8ba91a5807c8dd8.patch: Fix aspect
  ratio in videos with gststreamer-1.24.9.</changelog>
</package>
<package pkgid="ff85dcbad3c736c92a4acfd6385d65bba8b2f383a1250ea99fe939897d146db9200d499633892f619097e2597f4a92242d50526a74e26123bdc39720612ce747" name="WebKitGTK-6.0-lang" arch="noarch">
  <version epoch="0" ver="2.46.3" rel="3.0.7.1.sr20241103"/>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1710590400">- Update to version 2.44.0 (boo#1222010):
  + Make the DOM accessibility tree reachable from UI process with
    GTK4.
  + Removed the X11 and WPE renderers in favor of DMA-BUF.
  + Improved vblank synchronization when rendering.
  + Removed key event reinjection in GTK4 to make keyboard
    shortcuts work in web sites.
  + Fix gamepads detection by correctly handling focused window in
    GTK4.
  + Security fixes: CVE-2024-23252, CVE-2024-23254, CVE-2024-23263,
  CVE-2024-23280, CVE-2024-23284, CVE-2023-42950, CVE-2023-42956,
  CVE-2023-42843.
- Rebase webkit2gtk3-disable-dmabuf-nvidia.patch.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1710763200">- Add webkit2gtk3-271108.patch: Fix build on 32bit archs
  (https://bugs.webkit.org/show_bug.cgi?id=271108).</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1710936000">- Use WebAssembly on aarch64. It is the upstream default and no
  longer makes the build fail. Stop passing -DENABLE_C_LOOP=ON,
  - DENABLE_WEBASSEMBLY=OFF and -DENABLE_SAMPLING_PROFILER=OFF for
  the same reason.
- Drop webkit2gtk3-llint-build-fix.patch: no longer needed.
- Update some version requirements to match cmake checks.</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1713268800">- Update to version 2.44.1:
  + Fix handling of lifetime of web view child dialogs in GTK4.
  + Do not schedule layer flushes when drawing area size is empty.
  + Fix videos with alpha when using the DMA-BUF sink.
  + Fix the build with USE_GBM=OFF.
  + Fix the build in 32bit platforms
  + Fix several crashes and rendering issues.
- Drop webkit2gtk3-271108.patch: fixed upstream.</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1715947200">- Update to version 2.44.2 (boo#1225071):
  + Make gamepads visible on axis movements, and not only on
    button presses.
  + Disable the gst-libav AAC decoder.
  + Make user scripts and style sheets visible in the Web
    Inspector.
  + Use the geolocation portal where available, with the existing
    geoclue as fallback if the portal is not usable.
  + Use the printing portal when running sandboxed.
  + Use the file transfer portal for drag and drop when running
    sandboxed.
  + Avoid notifying an empty cursor rectangle to input methods.
  + Remove empty bar shown in detached inspector windows.
  + Consider keycode when activating application accelerators.
  + Fix the build with ENABLE_WEBAUDIO disabled.
  + Fix several crashes and rendering issues.
  + Security fixes: CVE-2024-27834, CVE-2024-27808, CVE-2024-27820,
    CVE-2024-27833.
- Update keyring (taken from rawhide).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1719921600">- Add 9d5844679af8f84036f1b800307e799bd7ab73ba.patch VA+DMABuf
  videos flicker</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1722513600">- Add CVE fixes:
  + webkit2gtk3-CVE-2024-40776.patch (boo#1228613 CVE-2024-40776)
  + webkit2gtk3-CVE-2024-40779.patch (boo#1228693 CVE-2024-40779)
  + webkit2gtk3-CVE-2024-40780.patch (boo#1228694 CVE-2024-40780)
  + webkit2gtk3-CVE-2024-40782.patch (boo#1228695 CVE-2024-40782)</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1723550400">- Update to version 2.44.3 (boo#1228696 boo#1228697 boo#1228698):
  + Fix web process cache suspend/resume when sandbox is enabled.
  + Fix accelerated images dissapearing after scrolling.
  + Fix video flickering with DMA-BUF sink.
  + Fix pointer lock on X11.
  + Fix movement delta on mouse events in GTK3.
  + Undeprecate console message API and make it available in 2022
    API.
  + Fix several crashes and rendering issues.
  + Security fixes: CVE-2024-40776, CVE-2024-40779, CVE-2024-40780,
    CVE-2023-40782, CVE-2024-40785, CVE-2024-40789, CVE-2024-40794,
    CVE-2024-4558, CVE-2024-27838, CVE-2024-27851.
- Drop patches now upstream:
  9d5844679af8f84036f1b800307e799bd7ab73ba.patch
  webkit2gtk3-CVE-2024-40776.patch
  webkit2gtk3-CVE-2024-40779.patch
  webkit2gtk3-CVE-2024-40780.patch
  webkit2gtk3-CVE-2024-40782.patch</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725192000">- Add revert-271175.patch: This reverts commit 279c9d7, it broke
  wasm.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725883200">- Update to version 2.44.4:
  + Add quirk to allow totale.rosettastone.com to load properly.
  + Fix webkit_web_resource_get_data() not working properly in some
    sites.
  + Fix not being able to jump-to-source in Web Inspector canvas
    traces.
  + Fix not being able to scroll list of WebGL shader programs in
    the Web Inspector.
  + Fix linker relocation errors on Debug/RelWithDebInfo builds.
  + Fix crashes when built with Clang with Link-Time Optimization
    (LTO).
  + Fix several crashes and rendering issues.
- Drop revert-271175.patch: Fixed upstream.
- Enable LTO again, pass define _lto_cflags for only select targets</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725883201">- Update to version 2.45.91:
  + Add new API to WebKitAutomationSession to be notified when the
    session is about to be closed.
  + Fix WebGL with accelerated compositing disabled.
  + Fix image filtering not being applied in some cases.
  + Fix the build on 32 bits systems.
  + Fix the build with -DUSE_TEXTURE_MAPPER_DMABUF=OFF
  + Fix several crashes and rendering issues.
  + Updated translations.
- Rebase patch with quilt.
- Drop webkit2gtk3-disable-dmabuf-nvidia.patch: Should not be
  needed anymore.
- Pass USE_SYSTEM_SYSPROF_CAPTURE=NO to cmake, avoid building
  sysprof capture for now.
- Disable LTO on x86 and ppc64le.</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1725969600">- Up gcc requirement to match cmake check.
  Remove wpe and wpebackend-fdo from BuildRequires: no longer used.</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1726056000">- Update to version 2.45.92:
  + Add webkit://gpu/stdout to dump the information from
    webkit://gpu to stdout.
  + Undeprecate injected bundle frame access interfaces.
  + Fix drag and drop.
  + Fix connection to a11y bus under flatpak.
  + Fix the build with Wayland and GBM disabled.
  + Fix linker relocation errors on Debug/RelWithDebInfo builds.
  + Fix several crashes and rendering issues.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1726574400">- Update to version 2.46.0 (boo#1231039):
  + Use Skia instead of cairo for 2D rendering and enable GPU
    rendering by default.
  + Enable offscreen canvas by default.
  + Add support for system tracing with Sysprof.
  + Implement printing using the Print portal.
  + Add new API to load settings from a config file.
  + Add a new setting to enable or disable the 2D canvas
    acceleration (enabled by default).
  + Undeprecate console messages API and make it available in 6.0
    API.
  + Security fixes: CVE-2024-40866, CVE-2024-44187, CVE-2044-44185.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1728043200">- Update to version 2.46.1:
  + Fix login QR code not shown in WhatsApp web.
  + Disable PSON by default again in GTK 3 API versions.
  + Disable DMABuf video sink by default to prevent file descriptor
    leaks.
  + Fix the build with GCC 13.
  + Fix several crashes and rendering issues.</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1729080000">- Add bug281492.patch: fix crash in
  AccessibilityAtspi::textAttributes.
- Add bug281495.patch: fix crash in ProcessLauncher socket
  monitor callback.</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1729512000">- Update to version 2.46.2:
  + Own well-known bus name on a11y bus.
  + Improve memory consumption when putImageData is used repeatedly
    on accelerated canvas.
  + Disable cached web process suspension for now to prevent leaks.
  + Improve text kerning with different combinations of antialias
    and hinting settings.
  + Destroy all network sessions on process exit.
  + Fix visible rectangle calculation when there are animations.
  + Fix the build with ENABLE_NOTIFICATIONS=OFF.
  + Fix the build with ENABLE_FULLSCREEN_API=OFF.
  + Fix the build with ENABLE_WEB_AUDIO=OFF.
  + Fix the build on ppc64le.
  + Fix several crashes and rendering issues.
- Drop bug281495.patch: fixed upstream.</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1730721600">- Update to version 2.46.3 (boo#1232747):
  + Flatten layers to a plane when preseve-3d style is set.
  + Fix DuckDuckGo links by adding a user agent quirk.
  + Fix several crashes and rendering issues.
  + Security fixes: CVE-2044-44244, CVE-2024-44296.
- Drop bug281492.patch: fixed upstream.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1731412800">- Add 9e9ea966373d3858668f6a29d8ba91a5807c8dd8.patch: Fix aspect
  ratio in videos with gststreamer-1.24.9.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1731585600">- Add 63f7badbada070ebaadd318b2801818ecf7e7ea0.patch: Fix build
  using ICU 76.1.</changelog>
</package>
<package pkgid="79b206e0858df84ca879996d1305dcd00265bd9ca243b1ddf5bfbe86811bf5a2cf7e1c8667bc9597f6a986fb22d72e892cae3dadb0799f20e30dd57bb9845be3" name="WebKitGTK-6.0-lang" arch="noarch">
  <version epoch="0" ver="2.46.3" rel="3.1.sr20241103"/>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1709208000">- Update to version 2.43.4:
  + Remove key event reinjection in GTK4 to make keyboard shortcuts
    work in web sites.
  + Use the new GTK API to create a GdkTexture from a DMA-BUF
    buffer when available.
  + Fix rendering when GTK is using the vulkan renderer.
  + Fix gamepads detection by correctly handling focused window in
    GTK4.
  + Fix rendering after history navigation.
  + Write bwrapinfo.json to disk for xdg-desktop-portal.
  + Fixed several memory leaks in media backend.
  + Fix several crashes and rendering issues.
- Changes from version 2.43.3:
  + Show vblank monitor information in webkit://gpu.
  + Fallback to timer based vblank monitor if drmWaitVBlank fails.
  + Fix several memory leaks in media backend.
  + Fix several crashes and rendering issues.
- Changes from version 2.43.2?
  + Remove the X11 and WPE renderers.
  + Release unused buffers when the view is hidden.
  + Fix flickering while playing videos with DMA-BUF sink.
  + Do not special case the "sans" font family name.
  + Fix webkit_web_context_allow_tls_certificate_for_host() for
    IPv6 URIs produced by SoupURI.
  + Fix several crashes and rendering issues.
- Changes from version WebKitGTK 2.43.1?
  + Improve vblank synchronization when rendering.
  + Improve DMA-BUF buffers handling for video frames.
  + Use the buffer format preferred by the driver in DMA-BUF
    renderer.
  + Do not block the compositing thread waiting for rendering
    threads.
  + Improve performance when scaling images in a canvas.
  + Fix several crashes and rendering issues.
  + Updated translations.
- Drop webkit2gtk3-create-destroy-egl-image.patch: fixed upstream.
- Add libbacktrace-devel BuildRequires (for gtk4 flavor).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1709640000">- baselibs.conf: Do not build libjavascriptcoregtk-4_1-0-32bit and
  libwebkit2gtk-4_1-0-32bit: they are not used, and in fact not
  built in Factory (build excluded).</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1710590400">- Update to version 2.44.0 (boo#1222010):
  + Make the DOM accessibility tree reachable from UI process with
    GTK4.
  + Removed the X11 and WPE renderers in favor of DMA-BUF.
  + Improved vblank synchronization when rendering.
  + Removed key event reinjection in GTK4 to make keyboard
    shortcuts work in web sites.
  + Fix gamepads detection by correctly handling focused window in
    GTK4.
  + Security fixes: CVE-2024-23252, CVE-2024-23254, CVE-2024-23263,
  CVE-2024-23280, CVE-2024-23284, CVE-2023-42950, CVE-2023-42956,
  CVE-2023-42843.
- Rebase webkit2gtk3-disable-dmabuf-nvidia.patch.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1710763200">- Add webkit2gtk3-271108.patch: Fix build on 32bit archs
  (https://bugs.webkit.org/show_bug.cgi?id=271108).</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1710936000">- Use WebAssembly on aarch64. It is the upstream default and no
  longer makes the build fail. Stop passing -DENABLE_C_LOOP=ON,
  - DENABLE_WEBASSEMBLY=OFF and -DENABLE_SAMPLING_PROFILER=OFF for
  the same reason.
- Drop webkit2gtk3-llint-build-fix.patch: no longer needed.
- Update some version requirements to match cmake checks.</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1713268800">- Update to version 2.44.1:
  + Fix handling of lifetime of web view child dialogs in GTK4.
  + Do not schedule layer flushes when drawing area size is empty.
  + Fix videos with alpha when using the DMA-BUF sink.
  + Fix the build with USE_GBM=OFF.
  + Fix the build in 32bit platforms
  + Fix several crashes and rendering issues.
- Drop webkit2gtk3-271108.patch: fixed upstream.</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1715947200">- Update to version 2.44.2 (boo#1225071):
  + Make gamepads visible on axis movements, and not only on
    button presses.
  + Disable the gst-libav AAC decoder.
  + Make user scripts and style sheets visible in the Web
    Inspector.
  + Use the geolocation portal where available, with the existing
    geoclue as fallback if the portal is not usable.
  + Use the printing portal when running sandboxed.
  + Use the file transfer portal for drag and drop when running
    sandboxed.
  + Avoid notifying an empty cursor rectangle to input methods.
  + Remove empty bar shown in detached inspector windows.
  + Consider keycode when activating application accelerators.
  + Fix the build with ENABLE_WEBAUDIO disabled.
  + Fix several crashes and rendering issues.
  + Security fixes: CVE-2024-27834, CVE-2024-27808, CVE-2024-27820,
    CVE-2024-27833.
- Update keyring (taken from rawhide).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1719921600">- Add 9d5844679af8f84036f1b800307e799bd7ab73ba.patch VA+DMABuf
  videos flicker</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1722513600">- Add CVE fixes:
  + webkit2gtk3-CVE-2024-40776.patch (boo#1228613 CVE-2024-40776)
  + webkit2gtk3-CVE-2024-40779.patch (boo#1228693 CVE-2024-40779)
  + webkit2gtk3-CVE-2024-40780.patch (boo#1228694 CVE-2024-40780)
  + webkit2gtk3-CVE-2024-40782.patch (boo#1228695 CVE-2024-40782)</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1723550400">- Update to version 2.44.3 (boo#1228696 boo#1228697 boo#1228698):
  + Fix web process cache suspend/resume when sandbox is enabled.
  + Fix accelerated images dissapearing after scrolling.
  + Fix video flickering with DMA-BUF sink.
  + Fix pointer lock on X11.
  + Fix movement delta on mouse events in GTK3.
  + Undeprecate console message API and make it available in 2022
    API.
  + Fix several crashes and rendering issues.
  + Security fixes: CVE-2024-40776, CVE-2024-40779, CVE-2024-40780,
    CVE-2023-40782, CVE-2024-40785, CVE-2024-40789, CVE-2024-40794,
    CVE-2024-4558, CVE-2024-27838, CVE-2024-27851.
- Drop patches now upstream:
  9d5844679af8f84036f1b800307e799bd7ab73ba.patch
  webkit2gtk3-CVE-2024-40776.patch
  webkit2gtk3-CVE-2024-40779.patch
  webkit2gtk3-CVE-2024-40780.patch
  webkit2gtk3-CVE-2024-40782.patch</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725192000">- Add revert-271175.patch: This reverts commit 279c9d7, it broke
  wasm.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725883200">- Update to version 2.44.4:
  + Add quirk to allow totale.rosettastone.com to load properly.
  + Fix webkit_web_resource_get_data() not working properly in some
    sites.
  + Fix not being able to jump-to-source in Web Inspector canvas
    traces.
  + Fix not being able to scroll list of WebGL shader programs in
    the Web Inspector.
  + Fix linker relocation errors on Debug/RelWithDebInfo builds.
  + Fix crashes when built with Clang with Link-Time Optimization
    (LTO).
  + Fix several crashes and rendering issues.
- Drop revert-271175.patch: Fixed upstream.
- Enable LTO again, pass define _lto_cflags for only select targets</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725883201">- Update to version 2.45.91:
  + Add new API to WebKitAutomationSession to be notified when the
    session is about to be closed.
  + Fix WebGL with accelerated compositing disabled.
  + Fix image filtering not being applied in some cases.
  + Fix the build on 32 bits systems.
  + Fix the build with -DUSE_TEXTURE_MAPPER_DMABUF=OFF
  + Fix several crashes and rendering issues.
  + Updated translations.
- Rebase patch with quilt.
- Drop webkit2gtk3-disable-dmabuf-nvidia.patch: Should not be
  needed anymore.
- Pass USE_SYSTEM_SYSPROF_CAPTURE=NO to cmake, avoid building
  sysprof capture for now.
- Disable LTO on x86 and ppc64le.</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1725969600">- Up gcc requirement to match cmake check.
  Remove wpe and wpebackend-fdo from BuildRequires: no longer used.</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1726056000">- Update to version 2.45.92:
  + Add webkit://gpu/stdout to dump the information from
    webkit://gpu to stdout.
  + Undeprecate injected bundle frame access interfaces.
  + Fix drag and drop.
  + Fix connection to a11y bus under flatpak.
  + Fix the build with Wayland and GBM disabled.
  + Fix linker relocation errors on Debug/RelWithDebInfo builds.
  + Fix several crashes and rendering issues.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1726574400">- Update to version 2.46.0 (boo#1231039):
  + Use Skia instead of cairo for 2D rendering and enable GPU
    rendering by default.
  + Enable offscreen canvas by default.
  + Add support for system tracing with Sysprof.
  + Implement printing using the Print portal.
  + Add new API to load settings from a config file.
  + Add a new setting to enable or disable the 2D canvas
    acceleration (enabled by default).
  + Undeprecate console messages API and make it available in 6.0
    API.
  + Security fixes: CVE-2024-40866, CVE-2024-44187, CVE-2044-44185.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1728043200">- Update to version 2.46.1:
  + Fix login QR code not shown in WhatsApp web.
  + Disable PSON by default again in GTK 3 API versions.
  + Disable DMABuf video sink by default to prevent file descriptor
    leaks.
  + Fix the build with GCC 13.
  + Fix several crashes and rendering issues.</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1729080000">- Add bug281492.patch: fix crash in
  AccessibilityAtspi::textAttributes.
- Add bug281495.patch: fix crash in ProcessLauncher socket
  monitor callback.</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1729512000">- Update to version 2.46.2:
  + Own well-known bus name on a11y bus.
  + Improve memory consumption when putImageData is used repeatedly
    on accelerated canvas.
  + Disable cached web process suspension for now to prevent leaks.
  + Improve text kerning with different combinations of antialias
    and hinting settings.
  + Destroy all network sessions on process exit.
  + Fix visible rectangle calculation when there are animations.
  + Fix the build with ENABLE_NOTIFICATIONS=OFF.
  + Fix the build with ENABLE_FULLSCREEN_API=OFF.
  + Fix the build with ENABLE_WEB_AUDIO=OFF.
  + Fix the build on ppc64le.
  + Fix several crashes and rendering issues.
- Drop bug281495.patch: fixed upstream.</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1730721600">- Update to version 2.46.3 (boo#1232747):
  + Flatten layers to a plane when preseve-3d style is set.
  + Fix DuckDuckGo links by adding a user agent quirk.
  + Fix several crashes and rendering issues.
  + Security fixes: CVE-2044-44244, CVE-2024-44296.
- Drop bug281492.patch: fixed upstream.</changelog>
</package>
<package pkgid="1f1aba72cd6bc6ce258dc9b7797876d4b246856f393943117ff4795af36cbbaefa9f14fc94e6b608e00fc0eb373e8c17cb4d74609b47ec1d91212c44b1ee10f5" name="WebKitGTK-6.0-lang" arch="noarch">
  <version epoch="0" ver="2.46.3" rel="4.0.9.1.sr20241103"/>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1710763200">- Add webkit2gtk3-271108.patch: Fix build on 32bit archs
  (https://bugs.webkit.org/show_bug.cgi?id=271108).</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1710936000">- Use WebAssembly on aarch64. It is the upstream default and no
  longer makes the build fail. Stop passing -DENABLE_C_LOOP=ON,
  - DENABLE_WEBASSEMBLY=OFF and -DENABLE_SAMPLING_PROFILER=OFF for
  the same reason.
- Drop webkit2gtk3-llint-build-fix.patch: no longer needed.
- Update some version requirements to match cmake checks.</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1713268800">- Update to version 2.44.1:
  + Fix handling of lifetime of web view child dialogs in GTK4.
  + Do not schedule layer flushes when drawing area size is empty.
  + Fix videos with alpha when using the DMA-BUF sink.
  + Fix the build with USE_GBM=OFF.
  + Fix the build in 32bit platforms
  + Fix several crashes and rendering issues.
- Drop webkit2gtk3-271108.patch: fixed upstream.</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1715947200">- Update to version 2.44.2 (boo#1225071):
  + Make gamepads visible on axis movements, and not only on
    button presses.
  + Disable the gst-libav AAC decoder.
  + Make user scripts and style sheets visible in the Web
    Inspector.
  + Use the geolocation portal where available, with the existing
    geoclue as fallback if the portal is not usable.
  + Use the printing portal when running sandboxed.
  + Use the file transfer portal for drag and drop when running
    sandboxed.
  + Avoid notifying an empty cursor rectangle to input methods.
  + Remove empty bar shown in detached inspector windows.
  + Consider keycode when activating application accelerators.
  + Fix the build with ENABLE_WEBAUDIO disabled.
  + Fix several crashes and rendering issues.
  + Security fixes: CVE-2024-27834, CVE-2024-27808, CVE-2024-27820,
    CVE-2024-27833.
- Update keyring (taken from rawhide).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1719921600">- Add 9d5844679af8f84036f1b800307e799bd7ab73ba.patch VA+DMABuf
  videos flicker</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1722513600">- Add CVE fixes:
  + webkit2gtk3-CVE-2024-40776.patch (boo#1228613 CVE-2024-40776)
  + webkit2gtk3-CVE-2024-40779.patch (boo#1228693 CVE-2024-40779)
  + webkit2gtk3-CVE-2024-40780.patch (boo#1228694 CVE-2024-40780)
  + webkit2gtk3-CVE-2024-40782.patch (boo#1228695 CVE-2024-40782)</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1723550400">- Update to version 2.44.3 (boo#1228696 boo#1228697 boo#1228698):
  + Fix web process cache suspend/resume when sandbox is enabled.
  + Fix accelerated images dissapearing after scrolling.
  + Fix video flickering with DMA-BUF sink.
  + Fix pointer lock on X11.
  + Fix movement delta on mouse events in GTK3.
  + Undeprecate console message API and make it available in 2022
    API.
  + Fix several crashes and rendering issues.
  + Security fixes: CVE-2024-40776, CVE-2024-40779, CVE-2024-40780,
    CVE-2023-40782, CVE-2024-40785, CVE-2024-40789, CVE-2024-40794,
    CVE-2024-4558, CVE-2024-27838, CVE-2024-27851.
- Drop patches now upstream:
  9d5844679af8f84036f1b800307e799bd7ab73ba.patch
  webkit2gtk3-CVE-2024-40776.patch
  webkit2gtk3-CVE-2024-40779.patch
  webkit2gtk3-CVE-2024-40780.patch
  webkit2gtk3-CVE-2024-40782.patch</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725192000">- Add revert-271175.patch: This reverts commit 279c9d7, it broke
  wasm.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725883200">- Update to version 2.44.4:
  + Add quirk to allow totale.rosettastone.com to load properly.
  + Fix webkit_web_resource_get_data() not working properly in some
    sites.
  + Fix not being able to jump-to-source in Web Inspector canvas
    traces.
  + Fix not being able to scroll list of WebGL shader programs in
    the Web Inspector.
  + Fix linker relocation errors on Debug/RelWithDebInfo builds.
  + Fix crashes when built with Clang with Link-Time Optimization
    (LTO).
  + Fix several crashes and rendering issues.
- Drop revert-271175.patch: Fixed upstream.
- Enable LTO again, pass define _lto_cflags for only select targets</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725883201">- Update to version 2.45.91:
  + Add new API to WebKitAutomationSession to be notified when the
    session is about to be closed.
  + Fix WebGL with accelerated compositing disabled.
  + Fix image filtering not being applied in some cases.
  + Fix the build on 32 bits systems.
  + Fix the build with -DUSE_TEXTURE_MAPPER_DMABUF=OFF
  + Fix several crashes and rendering issues.
  + Updated translations.
- Rebase patch with quilt.
- Drop webkit2gtk3-disable-dmabuf-nvidia.patch: Should not be
  needed anymore.
- Pass USE_SYSTEM_SYSPROF_CAPTURE=NO to cmake, avoid building
  sysprof capture for now.
- Disable LTO on x86 and ppc64le.</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1725969600">- Up gcc requirement to match cmake check.
  Remove wpe and wpebackend-fdo from BuildRequires: no longer used.</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1726056000">- Update to version 2.45.92:
  + Add webkit://gpu/stdout to dump the information from
    webkit://gpu to stdout.
  + Undeprecate injected bundle frame access interfaces.
  + Fix drag and drop.
  + Fix connection to a11y bus under flatpak.
  + Fix the build with Wayland and GBM disabled.
  + Fix linker relocation errors on Debug/RelWithDebInfo builds.
  + Fix several crashes and rendering issues.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1726574400">- Update to version 2.46.0 (boo#1231039):
  + Use Skia instead of cairo for 2D rendering and enable GPU
    rendering by default.
  + Enable offscreen canvas by default.
  + Add support for system tracing with Sysprof.
  + Implement printing using the Print portal.
  + Add new API to load settings from a config file.
  + Add a new setting to enable or disable the 2D canvas
    acceleration (enabled by default).
  + Undeprecate console messages API and make it available in 6.0
    API.
  + Security fixes: CVE-2024-40866, CVE-2024-44187, CVE-2044-44185.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1728043200">- Update to version 2.46.1:
  + Fix login QR code not shown in WhatsApp web.
  + Disable PSON by default again in GTK 3 API versions.
  + Disable DMABuf video sink by default to prevent file descriptor
    leaks.
  + Fix the build with GCC 13.
  + Fix several crashes and rendering issues.</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1729080000">- Add bug281492.patch: fix crash in
  AccessibilityAtspi::textAttributes.
- Add bug281495.patch: fix crash in ProcessLauncher socket
  monitor callback.</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1729512000">- Update to version 2.46.2:
  + Own well-known bus name on a11y bus.
  + Improve memory consumption when putImageData is used repeatedly
    on accelerated canvas.
  + Disable cached web process suspension for now to prevent leaks.
  + Improve text kerning with different combinations of antialias
    and hinting settings.
  + Destroy all network sessions on process exit.
  + Fix visible rectangle calculation when there are animations.
  + Fix the build with ENABLE_NOTIFICATIONS=OFF.
  + Fix the build with ENABLE_FULLSCREEN_API=OFF.
  + Fix the build with ENABLE_WEB_AUDIO=OFF.
  + Fix the build on ppc64le.
  + Fix several crashes and rendering issues.
- Drop bug281495.patch: fixed upstream.</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1730721600">- Update to version 2.46.3 (boo#1232747):
  + Flatten layers to a plane when preseve-3d style is set.
  + Fix DuckDuckGo links by adding a user agent quirk.
  + Fix several crashes and rendering issues.
  + Security fixes: CVE-2044-44244, CVE-2024-44296.
- Drop bug281492.patch: fixed upstream.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1731412800">- Add 9e9ea966373d3858668f6a29d8ba91a5807c8dd8.patch: Fix aspect
  ratio in videos with gststreamer-1.24.9.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1731585600">- Add 63f7badbada070ebaadd318b2801818ecf7e7ea0.patch: Fix build
  using ICU 76.1.</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1732536000">- Add webkit2gtk3-CVE-2024-44308.patch: don't allocate DFG register
  after a slow path (boo#1233631 CVE-2024-44308).
- Add webkit2gtk3-CVE-2024-44309.patch: fix a cookie management
  issue (boo#1233632 CVE-2024-44309).</changelog>
</package>
<package pkgid="f22db39e3f85f756c66bcee221eb19e62a96bf33e180c6635d29b8ad3f85cddaa0291aed11e3d37dbeb0f3963be306f286ae9616d43338bd411982b32f0d33a0" name="WebKitGTK-6.0-lang" arch="noarch">
  <version epoch="0" ver="2.46.4" rel="1.0.11.1.sr20241103"/>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1710936000">- Use WebAssembly on aarch64. It is the upstream default and no
  longer makes the build fail. Stop passing -DENABLE_C_LOOP=ON,
  - DENABLE_WEBASSEMBLY=OFF and -DENABLE_SAMPLING_PROFILER=OFF for
  the same reason.
- Drop webkit2gtk3-llint-build-fix.patch: no longer needed.
- Update some version requirements to match cmake checks.</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1713268800">- Update to version 2.44.1:
  + Fix handling of lifetime of web view child dialogs in GTK4.
  + Do not schedule layer flushes when drawing area size is empty.
  + Fix videos with alpha when using the DMA-BUF sink.
  + Fix the build with USE_GBM=OFF.
  + Fix the build in 32bit platforms
  + Fix several crashes and rendering issues.
- Drop webkit2gtk3-271108.patch: fixed upstream.</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1715947200">- Update to version 2.44.2 (boo#1225071):
  + Make gamepads visible on axis movements, and not only on
    button presses.
  + Disable the gst-libav AAC decoder.
  + Make user scripts and style sheets visible in the Web
    Inspector.
  + Use the geolocation portal where available, with the existing
    geoclue as fallback if the portal is not usable.
  + Use the printing portal when running sandboxed.
  + Use the file transfer portal for drag and drop when running
    sandboxed.
  + Avoid notifying an empty cursor rectangle to input methods.
  + Remove empty bar shown in detached inspector windows.
  + Consider keycode when activating application accelerators.
  + Fix the build with ENABLE_WEBAUDIO disabled.
  + Fix several crashes and rendering issues.
  + Security fixes: CVE-2024-27834, CVE-2024-27808, CVE-2024-27820,
    CVE-2024-27833.
- Update keyring (taken from rawhide).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1719921600">- Add 9d5844679af8f84036f1b800307e799bd7ab73ba.patch VA+DMABuf
  videos flicker</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1722513600">- Add CVE fixes:
  + webkit2gtk3-CVE-2024-40776.patch (boo#1228613 CVE-2024-40776)
  + webkit2gtk3-CVE-2024-40779.patch (boo#1228693 CVE-2024-40779)
  + webkit2gtk3-CVE-2024-40780.patch (boo#1228694 CVE-2024-40780)
  + webkit2gtk3-CVE-2024-40782.patch (boo#1228695 CVE-2024-40782)</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1723550400">- Update to version 2.44.3 (boo#1228697):
  + Fix web process cache suspend/resume when sandbox is enabled.
  + Fix accelerated images dissapearing after scrolling.
  + Fix video flickering with DMA-BUF sink.
  + Fix pointer lock on X11.
  + Fix movement delta on mouse events in GTK3.
  + Undeprecate console message API and make it available in 2022
    API.
  + Fix several crashes and rendering issues.
  + Security fixes: CVE-2024-40776, CVE-2024-40779, CVE-2024-40780,
    CVE-2024-40782, CVE-2024-40789, CVE-2024-4558, CVE-2024-27838,
  CVE-2024-27851.
- Drop patches now upstream:
  9d5844679af8f84036f1b800307e799bd7ab73ba.patch
  webkit2gtk3-CVE-2024-40776.patch
  webkit2gtk3-CVE-2024-40779.patch
  webkit2gtk3-CVE-2024-40780.patch
  webkit2gtk3-CVE-2024-40782.patch</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725192000">- Add revert-271175.patch: This reverts commit 279c9d7, it broke
  wasm.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725883200">- Update to version 2.44.4:
  + Add quirk to allow totale.rosettastone.com to load properly.
  + Fix webkit_web_resource_get_data() not working properly in some
    sites.
  + Fix not being able to jump-to-source in Web Inspector canvas
    traces.
  + Fix not being able to scroll list of WebGL shader programs in
    the Web Inspector.
  + Fix linker relocation errors on Debug/RelWithDebInfo builds.
  + Fix crashes when built with Clang with Link-Time Optimization
    (LTO).
  + Fix several crashes and rendering issues.
- Drop revert-271175.patch: Fixed upstream.
- Enable LTO again, pass define _lto_cflags for only select targets</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725883201">- Update to version 2.45.91:
  + Add new API to WebKitAutomationSession to be notified when the
    session is about to be closed.
  + Fix WebGL with accelerated compositing disabled.
  + Fix image filtering not being applied in some cases.
  + Fix the build on 32 bits systems.
  + Fix the build with -DUSE_TEXTURE_MAPPER_DMABUF=OFF
  + Fix several crashes and rendering issues.
  + Updated translations.
- Rebase patch with quilt.
- Drop webkit2gtk3-disable-dmabuf-nvidia.patch: Should not be
  needed anymore.
- Pass USE_SYSTEM_SYSPROF_CAPTURE=NO to cmake, avoid building
  sysprof capture for now.
- Disable LTO on x86 and ppc64le.</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1725969600">- Up gcc requirement to match cmake check.
  Remove wpe and wpebackend-fdo from BuildRequires: no longer used.</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1726056000">- Update to version 2.45.92:
  + Add webkit://gpu/stdout to dump the information from
    webkit://gpu to stdout.
  + Undeprecate injected bundle frame access interfaces.
  + Fix drag and drop.
  + Fix connection to a11y bus under flatpak.
  + Fix the build with Wayland and GBM disabled.
  + Fix linker relocation errors on Debug/RelWithDebInfo builds.
  + Fix several crashes and rendering issues.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1726574400">- Update to version 2.46.0 (boo#1231039):
  + Use Skia instead of cairo for 2D rendering and enable GPU
    rendering by default.
  + Enable offscreen canvas by default.
  + Add support for system tracing with Sysprof.
  + Implement printing using the Print portal.
  + Add new API to load settings from a config file.
  + Add a new setting to enable or disable the 2D canvas
    acceleration (enabled by default).
  + Undeprecate console messages API and make it available in 6.0
    API.
  + Security fixes: CVE-2024-40866, CVE-2024-44187, CVE-2044-44185.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1728043200">- Update to version 2.46.1:
  + Fix login QR code not shown in WhatsApp web.
  + Disable PSON by default again in GTK 3 API versions.
  + Disable DMABuf video sink by default to prevent file descriptor
    leaks.
  + Fix the build with GCC 13.
  + Fix several crashes and rendering issues.</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1729080000">- Add bug281492.patch: fix crash in
  AccessibilityAtspi::textAttributes.
- Add bug281495.patch: fix crash in ProcessLauncher socket
  monitor callback.</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1729512000">- Update to version 2.46.2:
  + Own well-known bus name on a11y bus.
  + Improve memory consumption when putImageData is used repeatedly
    on accelerated canvas.
  + Disable cached web process suspension for now to prevent leaks.
  + Improve text kerning with different combinations of antialias
    and hinting settings.
  + Destroy all network sessions on process exit.
  + Fix visible rectangle calculation when there are animations.
  + Fix the build with ENABLE_NOTIFICATIONS=OFF.
  + Fix the build with ENABLE_FULLSCREEN_API=OFF.
  + Fix the build with ENABLE_WEB_AUDIO=OFF.
  + Fix the build on ppc64le.
  + Fix several crashes and rendering issues.
- Drop bug281495.patch: fixed upstream.</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1730721600">- Update to version 2.46.3 (boo#1232747):
  + Flatten layers to a plane when preseve-3d style is set.
  + Fix DuckDuckGo links by adding a user agent quirk.
  + Fix several crashes and rendering issues.
  + Security fixes: CVE-2044-44244, CVE-2024-44296.
- Drop bug281492.patch: fixed upstream.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1731412800">- Add 9e9ea966373d3858668f6a29d8ba91a5807c8dd8.patch: Fix aspect
  ratio in videos with gststreamer-1.24.9.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1731585600">- Add 63f7badbada070ebaadd318b2801818ecf7e7ea0.patch: Fix build
  using ICU 76.1.</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1732536000">- Add webkit2gtk3-CVE-2024-44308.patch: don't allocate DFG register
  after a slow path (boo#1233631 CVE-2024-44308).
- Add webkit2gtk3-CVE-2024-44309.patch: fix a cookie management
  issue (boo#1233632 CVE-2024-44309).</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1732708800">- Update to version 2.46.4:
  + Improve memory consumption and performance of Canvas
    getImageData.
  + Fix preserve-3D intersection rendering.
  + Fix video dimensions since GStreamer 1.24.9.
  + Fix the HTTP-based remote Web Inspector not loading in
    Chromium.
  + Fix content filters not working on about:blank iframes.
  + Fix several crashes and rendering issues.
  + Security fixes: CVE-2024-44308, CVE-2024-44309.
- Drop patches fixed upstream:
  + 9e9ea966373d3858668f6a29d8ba91a5807c8dd8.patch
  + webkit2gtk3-CVE-2024-44308.patch
  + webkit2gtk3-CVE-2024-44309.patch</changelog>
</package>
<package pkgid="4f20fcfcabf2668a2bcdfe09e83a204981ecd0385eeac63964de3979166ef403f08903ac9ed3031f2326038f5538939736c31a91cd153c54f042cdebd580fcf9" name="WebKitGTK-6.0-lang" arch="noarch">
  <version epoch="0" ver="2.46.4" rel="2.0.13.1.sr20241103"/>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1710936000">- Use WebAssembly on aarch64. It is the upstream default and no
  longer makes the build fail. Stop passing -DENABLE_C_LOOP=ON,
  - DENABLE_WEBASSEMBLY=OFF and -DENABLE_SAMPLING_PROFILER=OFF for
  the same reason.
- Drop webkit2gtk3-llint-build-fix.patch: no longer needed.
- Update some version requirements to match cmake checks.</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1713268800">- Update to version 2.44.1:
  + Fix handling of lifetime of web view child dialogs in GTK4.
  + Do not schedule layer flushes when drawing area size is empty.
  + Fix videos with alpha when using the DMA-BUF sink.
  + Fix the build with USE_GBM=OFF.
  + Fix the build in 32bit platforms
  + Fix several crashes and rendering issues.
- Drop webkit2gtk3-271108.patch: fixed upstream.</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1715947200">- Update to version 2.44.2 (boo#1225071):
  + Make gamepads visible on axis movements, and not only on
    button presses.
  + Disable the gst-libav AAC decoder.
  + Make user scripts and style sheets visible in the Web
    Inspector.
  + Use the geolocation portal where available, with the existing
    geoclue as fallback if the portal is not usable.
  + Use the printing portal when running sandboxed.
  + Use the file transfer portal for drag and drop when running
    sandboxed.
  + Avoid notifying an empty cursor rectangle to input methods.
  + Remove empty bar shown in detached inspector windows.
  + Consider keycode when activating application accelerators.
  + Fix the build with ENABLE_WEBAUDIO disabled.
  + Fix several crashes and rendering issues.
  + Security fixes: CVE-2024-27834, CVE-2024-27808, CVE-2024-27820,
    CVE-2024-27833.
- Update keyring (taken from rawhide).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1719921600">- Add 9d5844679af8f84036f1b800307e799bd7ab73ba.patch VA+DMABuf
  videos flicker</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1722513600">- Add CVE fixes:
  + webkit2gtk3-CVE-2024-40776.patch (boo#1228613 CVE-2024-40776)
  + webkit2gtk3-CVE-2024-40779.patch (boo#1228693 CVE-2024-40779)
  + webkit2gtk3-CVE-2024-40780.patch (boo#1228694 CVE-2024-40780)
  + webkit2gtk3-CVE-2024-40782.patch (boo#1228695 CVE-2024-40782)</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1723550400">- Update to version 2.44.3 (boo#1228697):
  + Fix web process cache suspend/resume when sandbox is enabled.
  + Fix accelerated images dissapearing after scrolling.
  + Fix video flickering with DMA-BUF sink.
  + Fix pointer lock on X11.
  + Fix movement delta on mouse events in GTK3.
  + Undeprecate console message API and make it available in 2022
    API.
  + Fix several crashes and rendering issues.
  + Security fixes: CVE-2024-40776, CVE-2024-40779, CVE-2024-40780,
    CVE-2024-40782, CVE-2024-40789, CVE-2024-4558, CVE-2024-27838,
  CVE-2024-27851.
- Drop patches now upstream:
  9d5844679af8f84036f1b800307e799bd7ab73ba.patch
  webkit2gtk3-CVE-2024-40776.patch
  webkit2gtk3-CVE-2024-40779.patch
  webkit2gtk3-CVE-2024-40780.patch
  webkit2gtk3-CVE-2024-40782.patch</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725192000">- Add revert-271175.patch: This reverts commit 279c9d7, it broke
  wasm.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725883200">- Update to version 2.44.4:
  + Add quirk to allow totale.rosettastone.com to load properly.
  + Fix webkit_web_resource_get_data() not working properly in some
    sites.
  + Fix not being able to jump-to-source in Web Inspector canvas
    traces.
  + Fix not being able to scroll list of WebGL shader programs in
    the Web Inspector.
  + Fix linker relocation errors on Debug/RelWithDebInfo builds.
  + Fix crashes when built with Clang with Link-Time Optimization
    (LTO).
  + Fix several crashes and rendering issues.
- Drop revert-271175.patch: Fixed upstream.
- Enable LTO again, pass define _lto_cflags for only select targets</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1725883201">- Update to version 2.45.91:
  + Add new API to WebKitAutomationSession to be notified when the
    session is about to be closed.
  + Fix WebGL with accelerated compositing disabled.
  + Fix image filtering not being applied in some cases.
  + Fix the build on 32 bits systems.
  + Fix the build with -DUSE_TEXTURE_MAPPER_DMABUF=OFF
  + Fix several crashes and rendering issues.
  + Updated translations.
- Rebase patch with quilt.
- Drop webkit2gtk3-disable-dmabuf-nvidia.patch: Should not be
  needed anymore.
- Pass USE_SYSTEM_SYSPROF_CAPTURE=NO to cmake, avoid building
  sysprof capture for now.
- Disable LTO on x86 and ppc64le.</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1725969600">- Up gcc requirement to match cmake check.
  Remove wpe and wpebackend-fdo from BuildRequires: no longer used.</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1726056000">- Update to version 2.45.92:
  + Add webkit://gpu/stdout to dump the information from
    webkit://gpu to stdout.
  + Undeprecate injected bundle frame access interfaces.
  + Fix drag and drop.
  + Fix connection to a11y bus under flatpak.
  + Fix the build with Wayland and GBM disabled.
  + Fix linker relocation errors on Debug/RelWithDebInfo builds.
  + Fix several crashes and rendering issues.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1726574400">- Update to version 2.46.0 (boo#1231039):
  + Use Skia instead of cairo for 2D rendering and enable GPU
    rendering by default.
  + Enable offscreen canvas by default.
  + Add support for system tracing with Sysprof.
  + Implement printing using the Print portal.
  + Add new API to load settings from a config file.
  + Add a new setting to enable or disable the 2D canvas
    acceleration (enabled by default).
  + Undeprecate console messages API and make it available in 6.0
    API.
  + Security fixes: CVE-2024-40866, CVE-2024-44187, CVE-2044-44185.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1728043200">- Update to version 2.46.1:
  + Fix login QR code not shown in WhatsApp web.
  + Disable PSON by default again in GTK 3 API versions.
  + Disable DMABuf video sink by default to prevent file descriptor
    leaks.
  + Fix the build with GCC 13.
  + Fix several crashes and rendering issues.</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1729080000">- Add bug281492.patch: fix crash in
  AccessibilityAtspi::textAttributes.
- Add bug281495.patch: fix crash in ProcessLauncher socket
  monitor callback.</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1729512000">- Update to version 2.46.2:
  + Own well-known bus name on a11y bus.
  + Improve memory consumption when putImageData is used repeatedly
    on accelerated canvas.
  + Disable cached web process suspension for now to prevent leaks.
  + Improve text kerning with different combinations of antialias
    and hinting settings.
  + Destroy all network sessions on process exit.
  + Fix visible rectangle calculation when there are animations.
  + Fix the build with ENABLE_NOTIFICATIONS=OFF.
  + Fix the build with ENABLE_FULLSCREEN_API=OFF.
  + Fix the build with ENABLE_WEB_AUDIO=OFF.
  + Fix the build on ppc64le.
  + Fix several crashes and rendering issues.
- Drop bug281495.patch: fixed upstream.</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1730721600">- Update to version 2.46.3 (boo#1232747):
  + Flatten layers to a plane when preseve-3d style is set.
  + Fix DuckDuckGo links by adding a user agent quirk.
  + Fix several crashes and rendering issues.
  + Security fixes: CVE-2024-44244, CVE-2024-44296.
- Drop bug281492.patch: fixed upstream.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1731412800">- Add 9e9ea966373d3858668f6a29d8ba91a5807c8dd8.patch: Fix aspect
  ratio in videos with gststreamer-1.24.9.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1731585600">- Add 63f7badbada070ebaadd318b2801818ecf7e7ea0.patch: Fix build
  using ICU 76.1.</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1732536000">- Add webkit2gtk3-CVE-2024-44308.patch: don't allocate DFG register
  after a slow path (boo#1233631 CVE-2024-44308).
- Add webkit2gtk3-CVE-2024-44309.patch: fix a cookie management
  issue (boo#1233632 CVE-2024-44309).</changelog>
  <changelog author="Michael Gorse &lt;mgorse@suse.com&gt;" date="1732708800">- Update to version 2.46.4:
  + Improve memory consumption and performance of Canvas
    getImageData.
  + Fix preserve-3D intersection rendering.
  + Fix video dimensions since GStreamer 1.24.9.
  + Fix the HTTP-based remote Web Inspector not loading in
    Chromium.
  + Fix content filters not working on about:blank iframes.
  + Fix several crashes and rendering issues.
  + Security fixes: CVE-2024-44308, CVE-2024-44309.
- Drop patches fixed upstream:
  + 9e9ea966373d3858668f6a29d8ba91a5807c8dd8.patch
  + webkit2gtk3-CVE-2024-44308.patch
  + webkit2gtk3-CVE-2024-44309.patch</changelog>
</package>
<package pkgid="83e59210a1525829330e2ab18c763b2c1eb9175bb73368b33598a6c271f2b68ecb97e1c4b167a70e7f7611793f2ddf2bdb27360fc0a5c3660e83b58d8f1b2317" name="aalib" arch="i586">
  <version epoch="0" ver="1.4.0" rel="516.0.2.1.sr20240803"/>
  <changelog author="meissner@suse.com" date="1431864000">- info deinstall needs to be in preun section.</changelog>
  <changelog author="dimstar@opensuse.org" date="1441800000">- Add aalib-ncurses-6.0-accessors.patch: Fix build with
  NCurses 6.0 with WINDOW_OPAQUE set to 1.</changelog>
  <changelog author="meissner@suse.com" date="1445083200">- aavga.dif: add -fno-stack-protector to shared aavga.so object build</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1623067200">- Drop --with-pic (no effect with --disable-static).
- Run fdupes, and trim old rpm constructs.</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1662897600">- avoid ffast-math (ggo#55522)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1668513600">- Homepage link http://aa-project.sourceforge.net/ is a permanent
  redirect to its HTTPS counterpart https://aa-project.sourceforge.net/</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1708430400">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Martin Jambor &lt;mjambor@suse.com&gt;" date="1714996800">- Add -fpermissive to optflags (boo#1223910).</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1715256000">- Remove conditionals for SUSE 11.3</changelog>
  <changelog author="Martin Jambor &lt;mjambor@suse.com&gt;" date="1720094400">- Add -fpermissive to the remaining uses of optflags. [boo#1223910]</changelog>
</package>
<package pkgid="6c3e6c7eb08e8583c6817a34a020bf9bb975b506dad3b18af3a147a559c94a936cfa2ee05f6b8a557b16a4409bc3f57375f3d50ad033e1d6123fb9cf6f222ebb" name="aalib" arch="src">
  <version epoch="0" ver="1.4.0" rel="516.0.2.1.sr20240803"/>
  <changelog author="jengelh@medozas.de" date="1264593600">- package baselibs.conf</changelog>
  <changelog author="aj@suse.de" date="1283860800">- BuildRequire gpm-devel</changelog>
  <changelog author="coolo@suse.com" date="1315224000">- fix build with newer ld</changelog>
  <changelog author="jengelh@medozas.de" date="1316174400">- Implement shlib policy
- Remove redundant tags; use %_smp_mflags</changelog>
  <changelog author="coolo@suse.com" date="1317384000">- add libtool as buildrequire to make the spec file more reliable</changelog>
  <changelog author="coolo@suse.com" date="1323259200">- fix license to be in spdx.org format</changelog>
  <changelog author="jengelh@medozas.de" date="1328961600">- Strip distinct version from -devel subpackage</changelog>
  <changelog author="mmeister@suse.com" date="1363608000">- Replace Source with Link to source</changelog>
  <changelog author="mmeister@suse.com" date="1363953600">- Added url as source.
  Please see http://en.opensuse.org/SourceUrls</changelog>
  <changelog author="crrodriguez@opensuse.org" date="1410782400">- Use pkgconfig(x11) not metapackage xorg-x11-devel</changelog>
  <changelog author="meissner@suse.com" date="1431864000">- info deinstall needs to be in preun section.</changelog>
  <changelog author="dimstar@opensuse.org" date="1441800000">- Add aalib-ncurses-6.0-accessors.patch: Fix build with
  NCurses 6.0 with WINDOW_OPAQUE set to 1.</changelog>
  <changelog author="meissner@suse.com" date="1445083200">- aavga.dif: add -fno-stack-protector to shared aavga.so object build</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1623067200">- Drop --with-pic (no effect with --disable-static).
- Run fdupes, and trim old rpm constructs.</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1662897600">- avoid ffast-math (ggo#55522)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1668513600">- Homepage link http://aa-project.sourceforge.net/ is a permanent
  redirect to its HTTPS counterpart https://aa-project.sourceforge.net/</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1708430400">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Martin Jambor &lt;mjambor@suse.com&gt;" date="1714996800">- Add -fpermissive to optflags (boo#1223910).</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1715256000">- Remove conditionals for SUSE 11.3</changelog>
  <changelog author="Martin Jambor &lt;mjambor@suse.com&gt;" date="1720094400">- Add -fpermissive to the remaining uses of optflags. [boo#1223910]</changelog>
</package>
<package pkgid="aeb4a6fba9bc5244db7103884e975fd7acaf0ce2a9a8f22aece2d3215da66d3da54dfd5a8aea3ebe0a2f8789a04ca56c1e05db4ea7d9c95b2658f51c39d8cbd2" name="aalib" arch="x86_64">
  <version epoch="0" ver="1.4.0" rel="516.0.2.1.sr20240803"/>
  <changelog author="meissner@suse.com" date="1431864000">- info deinstall needs to be in preun section.</changelog>
  <changelog author="dimstar@opensuse.org" date="1441800000">- Add aalib-ncurses-6.0-accessors.patch: Fix build with
  NCurses 6.0 with WINDOW_OPAQUE set to 1.</changelog>
  <changelog author="meissner@suse.com" date="1445083200">- aavga.dif: add -fno-stack-protector to shared aavga.so object build</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1623067200">- Drop --with-pic (no effect with --disable-static).
- Run fdupes, and trim old rpm constructs.</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1662897600">- avoid ffast-math (ggo#55522)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1668513600">- Homepage link http://aa-project.sourceforge.net/ is a permanent
  redirect to its HTTPS counterpart https://aa-project.sourceforge.net/</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1708430400">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Martin Jambor &lt;mjambor@suse.com&gt;" date="1714996800">- Add -fpermissive to optflags (boo#1223910).</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1715256000">- Remove conditionals for SUSE 11.3</changelog>
  <changelog author="Martin Jambor &lt;mjambor@suse.com&gt;" date="1720094400">- Add -fpermissive to the remaining uses of optflags. [boo#1223910]</changelog>
</package>
<package pkgid="95b4a5ebe882db668684e25f48249435c717eab0b263228921fceb4c6be500d35bb63f586dda430312a9a33786c400564ffe175ce81684b3b9fb0321836cd8de" name="aalib" arch="i586">
  <version epoch="0" ver="1.4.0" rel="516.0.2.1.sr20240901"/>
  <changelog author="meissner@suse.com" date="1431864000">- info deinstall needs to be in preun section.</changelog>
  <changelog author="dimstar@opensuse.org" date="1441800000">- Add aalib-ncurses-6.0-accessors.patch: Fix build with
  NCurses 6.0 with WINDOW_OPAQUE set to 1.</changelog>
  <changelog author="meissner@suse.com" date="1445083200">- aavga.dif: add -fno-stack-protector to shared aavga.so object build</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1623067200">- Drop --with-pic (no effect with --disable-static).
- Run fdupes, and trim old rpm constructs.</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1662897600">- avoid ffast-math (ggo#55522)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1668513600">- Homepage link http://aa-project.sourceforge.net/ is a permanent
  redirect to its HTTPS counterpart https://aa-project.sourceforge.net/</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1708430400">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Martin Jambor &lt;mjambor@suse.com&gt;" date="1714996800">- Add -fpermissive to optflags (boo#1223910).</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1715256000">- Remove conditionals for SUSE 11.3</changelog>
  <changelog author="Martin Jambor &lt;mjambor@suse.com&gt;" date="1720094400">- Add -fpermissive to the remaining uses of optflags. [boo#1223910]</changelog>
</package>
<package pkgid="e1ffd518ac03ad86324fedc2915f683a67a23139035510adcae3f17d34052fda9bdd6357d3d1293f1067a4c886fc204243b4f1b91688ae37a3f259381d5f35f2" name="aalib" arch="src">
  <version epoch="0" ver="1.4.0" rel="516.0.2.1.sr20240901"/>
  <changelog author="jengelh@medozas.de" date="1264593600">- package baselibs.conf</changelog>
  <changelog author="aj@suse.de" date="1283860800">- BuildRequire gpm-devel</changelog>
  <changelog author="coolo@suse.com" date="1315224000">- fix build with newer ld</changelog>
  <changelog author="jengelh@medozas.de" date="1316174400">- Implement shlib policy
- Remove redundant tags; use %_smp_mflags</changelog>
  <changelog author="coolo@suse.com" date="1317384000">- add libtool as buildrequire to make the spec file more reliable</changelog>
  <changelog author="coolo@suse.com" date="1323259200">- fix license to be in spdx.org format</changelog>
  <changelog author="jengelh@medozas.de" date="1328961600">- Strip distinct version from -devel subpackage</changelog>
  <changelog author="mmeister@suse.com" date="1363608000">- Replace Source with Link to source</changelog>
  <changelog author="mmeister@suse.com" date="1363953600">- Added url as source.
  Please see http://en.opensuse.org/SourceUrls</changelog>
  <changelog author="crrodriguez@opensuse.org" date="1410782400">- Use pkgconfig(x11) not metapackage xorg-x11-devel</changelog>
  <changelog author="meissner@suse.com" date="1431864000">- info deinstall needs to be in preun section.</changelog>
  <changelog author="dimstar@opensuse.org" date="1441800000">- Add aalib-ncurses-6.0-accessors.patch: Fix build with
  NCurses 6.0 with WINDOW_OPAQUE set to 1.</changelog>
  <changelog author="meissner@suse.com" date="1445083200">- aavga.dif: add -fno-stack-protector to shared aavga.so object build</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1623067200">- Drop --with-pic (no effect with --disable-static).
- Run fdupes, and trim old rpm constructs.</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1662897600">- avoid ffast-math (ggo#55522)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1668513600">- Homepage link http://aa-project.sourceforge.net/ is a permanent
  redirect to its HTTPS counterpart https://aa-project.sourceforge.net/</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1708430400">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Martin Jambor &lt;mjambor@suse.com&gt;" date="1714996800">- Add -fpermissive to optflags (boo#1223910).</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1715256000">- Remove conditionals for SUSE 11.3</changelog>
  <changelog author="Martin Jambor &lt;mjambor@suse.com&gt;" date="1720094400">- Add -fpermissive to the remaining uses of optflags. [boo#1223910]</changelog>
</package>
<package pkgid="2a08975d4259a5c865863ad41a1c86139c3878a27c333fad28a85161d878ee1525548af55a70d0cf25857c5def04b60479c6bdebdfa94c3d27ff288a19e7290d" name="aalib" arch="x86_64">
  <version epoch="0" ver="1.4.0" rel="516.0.2.1.sr20240901"/>
  <changelog author="meissner@suse.com" date="1431864000">- info deinstall needs to be in preun section.</changelog>
  <changelog author="dimstar@opensuse.org" date="1441800000">- Add aalib-ncurses-6.0-accessors.patch: Fix build with
  NCurses 6.0 with WINDOW_OPAQUE set to 1.</changelog>
  <changelog author="meissner@suse.com" date="1445083200">- aavga.dif: add -fno-stack-protector to shared aavga.so object build</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1623067200">- Drop --with-pic (no effect with --disable-static).
- Run fdupes, and trim old rpm constructs.</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1662897600">- avoid ffast-math (ggo#55522)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1668513600">- Homepage link http://aa-project.sourceforge.net/ is a permanent
  redirect to its HTTPS counterpart https://aa-project.sourceforge.net/</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1708430400">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Martin Jambor &lt;mjambor@suse.com&gt;" date="1714996800">- Add -fpermissive to optflags (boo#1223910).</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1715256000">- Remove conditionals for SUSE 11.3</changelog>
  <changelog author="Martin Jambor &lt;mjambor@suse.com&gt;" date="1720094400">- Add -fpermissive to the remaining uses of optflags. [boo#1223910]</changelog>
</package>
<package pkgid="2e5f1889b044f1564b1413d30652ee738c90ee0dff1c3c937a4b67f9b80e6d6bc2ac365cdc2254e5f7be0af426d1b524a6fadd17b83db86fb8753ff8ce0cf518" name="aalib" arch="i586">
  <version epoch="0" ver="1.4.0" rel="516.0.2.1.sr20241002"/>
  <changelog author="meissner@suse.com" date="1431864000">- info deinstall needs to be in preun section.</changelog>
  <changelog author="dimstar@opensuse.org" date="1441800000">- Add aalib-ncurses-6.0-accessors.patch: Fix build with
  NCurses 6.0 with WINDOW_OPAQUE set to 1.</changelog>
  <changelog author="meissner@suse.com" date="1445083200">- aavga.dif: add -fno-stack-protector to shared aavga.so object build</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1623067200">- Drop --with-pic (no effect with --disable-static).
- Run fdupes, and trim old rpm constructs.</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1662897600">- avoid ffast-math (ggo#55522)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1668513600">- Homepage link http://aa-project.sourceforge.net/ is a permanent
  redirect to its HTTPS counterpart https://aa-project.sourceforge.net/</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1708430400">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Martin Jambor &lt;mjambor@suse.com&gt;" date="1714996800">- Add -fpermissive to optflags (boo#1223910).</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1715256000">- Remove conditionals for SUSE 11.3</changelog>
  <changelog author="Martin Jambor &lt;mjambor@suse.com&gt;" date="1720094400">- Add -fpermissive to the remaining uses of optflags. [boo#1223910]</changelog>
</package>
<package pkgid="c4f409c7791e23e4ad1a538e2fb3fad68a6478da6cf0a013b63d379d13c6a6748231600c0c6f2f91a794acdeda52b3a15cfaf0a438b5c39f712402990e4780dd" name="aalib" arch="src">
  <version epoch="0" ver="1.4.0" rel="516.0.2.1.sr20241002"/>
  <changelog author="jengelh@medozas.de" date="1264593600">- package baselibs.conf</changelog>
  <changelog author="aj@suse.de" date="1283860800">- BuildRequire gpm-devel</changelog>
  <changelog author="coolo@suse.com" date="1315224000">- fix build with newer ld</changelog>
  <changelog author="jengelh@medozas.de" date="1316174400">- Implement shlib policy
- Remove redundant tags; use %_smp_mflags</changelog>
  <changelog author="coolo@suse.com" date="1317384000">- add libtool as buildrequire to make the spec file more reliable</changelog>
  <changelog author="coolo@suse.com" date="1323259200">- fix license to be in spdx.org format</changelog>
  <changelog author="jengelh@medozas.de" date="1328961600">- Strip distinct version from -devel subpackage</changelog>
  <changelog author="mmeister@suse.com" date="1363608000">- Replace Source with Link to source</changelog>
  <changelog author="mmeister@suse.com" date="1363953600">- Added url as source.
  Please see http://en.opensuse.org/SourceUrls</changelog>
  <changelog author="crrodriguez@opensuse.org" date="1410782400">- Use pkgconfig(x11) not metapackage xorg-x11-devel</changelog>
  <changelog author="meissner@suse.com" date="1431864000">- info deinstall needs to be in preun section.</changelog>
  <changelog author="dimstar@opensuse.org" date="1441800000">- Add aalib-ncurses-6.0-accessors.patch: Fix build with
  NCurses 6.0 with WINDOW_OPAQUE set to 1.</changelog>
  <changelog author="meissner@suse.com" date="1445083200">- aavga.dif: add -fno-stack-protector to shared aavga.so object build</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1623067200">- Drop --with-pic (no effect with --disable-static).
- Run fdupes, and trim old rpm constructs.</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1662897600">- avoid ffast-math (ggo#55522)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1668513600">- Homepage link http://aa-project.sourceforge.net/ is a permanent
  redirect to its HTTPS counterpart https://aa-project.sourceforge.net/</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1708430400">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Martin Jambor &lt;mjambor@suse.com&gt;" date="1714996800">- Add -fpermissive to optflags (boo#1223910).</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1715256000">- Remove conditionals for SUSE 11.3</changelog>
  <changelog author="Martin Jambor &lt;mjambor@suse.com&gt;" date="1720094400">- Add -fpermissive to the remaining uses of optflags. [boo#1223910]</changelog>
</package>
<package pkgid="636c80004b27984a2ce9ec062989f8f83cfb3da5653b3e591159816c0da74f1f10a02f09061fe5e6fcb8ef497c04619d01f95c8b69a7c437ac9d042eda788636" name="aalib" arch="x86_64">
  <version epoch="0" ver="1.4.0" rel="516.0.2.1.sr20241002"/>
  <changelog author="meissner@suse.com" date="1431864000">- info deinstall needs to be in preun section.</changelog>
  <changelog author="dimstar@opensuse.org" date="1441800000">- Add aalib-ncurses-6.0-accessors.patch: Fix build with
  NCurses 6.0 with WINDOW_OPAQUE set to 1.</changelog>
  <changelog author="meissner@suse.com" date="1445083200">- aavga.dif: add -fno-stack-protector to shared aavga.so object build</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1623067200">- Drop --with-pic (no effect with --disable-static).
- Run fdupes, and trim old rpm constructs.</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1662897600">- avoid ffast-math (ggo#55522)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1668513600">- Homepage link http://aa-project.sourceforge.net/ is a permanent
  redirect to its HTTPS counterpart https://aa-project.sourceforge.net/</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1708430400">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Martin Jambor &lt;mjambor@suse.com&gt;" date="1714996800">- Add -fpermissive to optflags (boo#1223910).</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1715256000">- Remove conditionals for SUSE 11.3</changelog>
  <changelog author="Martin Jambor &lt;mjambor@suse.com&gt;" date="1720094400">- Add -fpermissive to the remaining uses of optflags. [boo#1223910]</changelog>
</package>
<package pkgid="f8b8e543ae740e5c0015579c6eaccd26b7c5522bfab5c91a4bb937b7bb3d0c15ed89bc00e60d98ca6a99aeaa687edaf6bf4d99cac068bc2d7bfdd89b1826bce3" name="aalib" arch="i586">
  <version epoch="0" ver="1.4.0" rel="516.0.2.1.sr20241103"/>
  <changelog author="meissner@suse.com" date="1431864000">- info deinstall needs to be in preun section.</changelog>
  <changelog author="dimstar@opensuse.org" date="1441800000">- Add aalib-ncurses-6.0-accessors.patch: Fix build with
  NCurses 6.0 with WINDOW_OPAQUE set to 1.</changelog>
  <changelog author="meissner@suse.com" date="1445083200">- aavga.dif: add -fno-stack-protector to shared aavga.so object build</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1623067200">- Drop --with-pic (no effect with --disable-static).
- Run fdupes, and trim old rpm constructs.</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1662897600">- avoid ffast-math (ggo#55522)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1668513600">- Homepage link http://aa-project.sourceforge.net/ is a permanent
  redirect to its HTTPS counterpart https://aa-project.sourceforge.net/</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1708430400">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Martin Jambor &lt;mjambor@suse.com&gt;" date="1714996800">- Add -fpermissive to optflags (boo#1223910).</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1715256000">- Remove conditionals for SUSE 11.3</changelog>
  <changelog author="Martin Jambor &lt;mjambor@suse.com&gt;" date="1720094400">- Add -fpermissive to the remaining uses of optflags. [boo#1223910]</changelog>
</package>
<package pkgid="7fb0c9666719b08ab1d54e77deb1cd290d69c5a4c7e2b1cdfddd851501fbf633f2358dab677c7b71544fafde9ed9667199e0b242b1f5ed2a02152a2b11cca1fa" name="aalib" arch="src">
  <version epoch="0" ver="1.4.0" rel="516.0.2.1.sr20241103"/>
  <changelog author="jengelh@medozas.de" date="1264593600">- package baselibs.conf</changelog>
  <changelog author="aj@suse.de" date="1283860800">- BuildRequire gpm-devel</changelog>
  <changelog author="coolo@suse.com" date="1315224000">- fix build with newer ld</changelog>
  <changelog author="jengelh@medozas.de" date="1316174400">- Implement shlib policy
- Remove redundant tags; use %_smp_mflags</changelog>
  <changelog author="coolo@suse.com" date="1317384000">- add libtool as buildrequire to make the spec file more reliable</changelog>
  <changelog author="coolo@suse.com" date="1323259200">- fix license to be in spdx.org format</changelog>
  <changelog author="jengelh@medozas.de" date="1328961600">- Strip distinct version from -devel subpackage</changelog>
  <changelog author="mmeister@suse.com" date="1363608000">- Replace Source with Link to source</changelog>
  <changelog author="mmeister@suse.com" date="1363953600">- Added url as source.
  Please see http://en.opensuse.org/SourceUrls</changelog>
  <changelog author="crrodriguez@opensuse.org" date="1410782400">- Use pkgconfig(x11) not metapackage xorg-x11-devel</changelog>
  <changelog author="meissner@suse.com" date="1431864000">- info deinstall needs to be in preun section.</changelog>
  <changelog author="dimstar@opensuse.org" date="1441800000">- Add aalib-ncurses-6.0-accessors.patch: Fix build with
  NCurses 6.0 with WINDOW_OPAQUE set to 1.</changelog>
  <changelog author="meissner@suse.com" date="1445083200">- aavga.dif: add -fno-stack-protector to shared aavga.so object build</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1623067200">- Drop --with-pic (no effect with --disable-static).
- Run fdupes, and trim old rpm constructs.</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1662897600">- avoid ffast-math (ggo#55522)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1668513600">- Homepage link http://aa-project.sourceforge.net/ is a permanent
  redirect to its HTTPS counterpart https://aa-project.sourceforge.net/</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1708430400">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Martin Jambor &lt;mjambor@suse.com&gt;" date="1714996800">- Add -fpermissive to optflags (boo#1223910).</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1715256000">- Remove conditionals for SUSE 11.3</changelog>
  <changelog author="Martin Jambor &lt;mjambor@suse.com&gt;" date="1720094400">- Add -fpermissive to the remaining uses of optflags. [boo#1223910]</changelog>
</package>
<package pkgid="91b7208224bd7f1fd7bc8f57a680d01ff40d4e4ce37f9b0b879d3c3e6d1dfccb6fa47d0f4bd18b0abfc451ff32f3277582676d00010db64c8beeea58c97263da" name="aalib" arch="x86_64">
  <version epoch="0" ver="1.4.0" rel="516.0.2.1.sr20241103"/>
  <changelog author="meissner@suse.com" date="1431864000">- info deinstall needs to be in preun section.</changelog>
  <changelog author="dimstar@opensuse.org" date="1441800000">- Add aalib-ncurses-6.0-accessors.patch: Fix build with
  NCurses 6.0 with WINDOW_OPAQUE set to 1.</changelog>
  <changelog author="meissner@suse.com" date="1445083200">- aavga.dif: add -fno-stack-protector to shared aavga.so object build</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1623067200">- Drop --with-pic (no effect with --disable-static).
- Run fdupes, and trim old rpm constructs.</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1662897600">- avoid ffast-math (ggo#55522)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1668513600">- Homepage link http://aa-project.sourceforge.net/ is a permanent
  redirect to its HTTPS counterpart https://aa-project.sourceforge.net/</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1708430400">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Martin Jambor &lt;mjambor@suse.com&gt;" date="1714996800">- Add -fpermissive to optflags (boo#1223910).</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1715256000">- Remove conditionals for SUSE 11.3</changelog>
  <changelog author="Martin Jambor &lt;mjambor@suse.com&gt;" date="1720094400">- Add -fpermissive to the remaining uses of optflags. [boo#1223910]</changelog>
</package>
<package pkgid="c0914a26e48b773237c79f3c57aee6ac7e752e975d756cfbcc117f5e2c23ae3194bee2d1f8b370fcc6301e549898cf5599eefe0636d4bfbd0abecbfe54f85bc1" name="aalib" arch="src">
  <version epoch="0" ver="1.4.0" rel="516.1"/>
  <changelog author="jengelh@medozas.de" date="1264593600">- package baselibs.conf</changelog>
  <changelog author="aj@suse.de" date="1283860800">- BuildRequire gpm-devel</changelog>
  <changelog author="coolo@suse.com" date="1315224000">- fix build with newer ld</changelog>
  <changelog author="jengelh@medozas.de" date="1316174400">- Implement shlib policy
- Remove redundant tags; use %_smp_mflags</changelog>
  <changelog author="coolo@suse.com" date="1317384000">- add libtool as buildrequire to make the spec file more reliable</changelog>
  <changelog author="coolo@suse.com" date="1323259200">- fix license to be in spdx.org format</changelog>
  <changelog author="jengelh@medozas.de" date="1328961600">- Strip distinct version from -devel subpackage</changelog>
  <changelog author="mmeister@suse.com" date="1363608000">- Replace Source with Link to source</changelog>
  <changelog author="mmeister@suse.com" date="1363953600">- Added url as source.
  Please see http://en.opensuse.org/SourceUrls</changelog>
  <changelog author="crrodriguez@opensuse.org" date="1410782400">- Use pkgconfig(x11) not metapackage xorg-x11-devel</changelog>
  <changelog author="meissner@suse.com" date="1431864000">- info deinstall needs to be in preun section.</changelog>
  <changelog author="dimstar@opensuse.org" date="1441800000">- Add aalib-ncurses-6.0-accessors.patch: Fix build with
  NCurses 6.0 with WINDOW_OPAQUE set to 1.</changelog>
  <changelog author="meissner@suse.com" date="1445083200">- aavga.dif: add -fno-stack-protector to shared aavga.so object build</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1623067200">- Drop --with-pic (no effect with --disable-static).
- Run fdupes, and trim old rpm constructs.</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1662897600">- avoid ffast-math (ggo#55522)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1668513600">- Homepage link http://aa-project.sourceforge.net/ is a permanent
  redirect to its HTTPS counterpart https://aa-project.sourceforge.net/</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1708430400">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Martin Jambor &lt;mjambor@suse.com&gt;" date="1714996800">- Add -fpermissive to optflags (boo#1223910).</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1715256000">- Remove conditionals for SUSE 11.3</changelog>
  <changelog author="Martin Jambor &lt;mjambor@suse.com&gt;" date="1720094400">- Add -fpermissive to the remaining uses of optflags. [boo#1223910]</changelog>
</package>
<package pkgid="5a175247c65bb52200f6d1325f3a1378ebebe3f6f2f700b31008b534b83d73d1493e5f71176c7d352a7dd5b0e108c78ee3713b18efbc48a0963875d039c1da32" name="aalib" arch="x86_64">
  <version epoch="0" ver="1.4.0" rel="516.1"/>
  <changelog author="meissner@suse.com" date="1431864000">- info deinstall needs to be in preun section.</changelog>
  <changelog author="dimstar@opensuse.org" date="1441800000">- Add aalib-ncurses-6.0-accessors.patch: Fix build with
  NCurses 6.0 with WINDOW_OPAQUE set to 1.</changelog>
  <changelog author="meissner@suse.com" date="1445083200">- aavga.dif: add -fno-stack-protector to shared aavga.so object build</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1623067200">- Drop --with-pic (no effect with --disable-static).
- Run fdupes, and trim old rpm constructs.</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1662897600">- avoid ffast-math (ggo#55522)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1668513600">- Homepage link http://aa-project.sourceforge.net/ is a permanent
  redirect to its HTTPS counterpart https://aa-project.sourceforge.net/</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1708430400">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Martin Jambor &lt;mjambor@suse.com&gt;" date="1714996800">- Add -fpermissive to optflags (boo#1223910).</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1715256000">- Remove conditionals for SUSE 11.3</changelog>
  <changelog author="Martin Jambor &lt;mjambor@suse.com&gt;" date="1720094400">- Add -fpermissive to the remaining uses of optflags. [boo#1223910]</changelog>
</package>
<package pkgid="78f8c78633a74ec8129c019dfdfc96e8a901c86f42d7ae44c0153d5c73c2507204af534076dacb5c5d1790881a6d4a3a72c738eb82867dcdd9b872114763dc28" name="aalib-debuginfo" arch="i586">
  <version epoch="0" ver="1.4.0" rel="516.0.2.1.sr20240803"/>
  <changelog author="meissner@suse.com" date="1431864000">- info deinstall needs to be in preun section.</changelog>
  <changelog author="dimstar@opensuse.org" date="1441800000">- Add aalib-ncurses-6.0-accessors.patch: Fix build with
  NCurses 6.0 with WINDOW_OPAQUE set to 1.</changelog>
  <changelog author="meissner@suse.com" date="1445083200">- aavga.dif: add -fno-stack-protector to shared aavga.so object build</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1623067200">- Drop --with-pic (no effect with --disable-static).
- Run fdupes, and trim old rpm constructs.</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1662897600">- avoid ffast-math (ggo#55522)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1668513600">- Homepage link http://aa-project.sourceforge.net/ is a permanent
  redirect to its HTTPS counterpart https://aa-project.sourceforge.net/</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1708430400">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Martin Jambor &lt;mjambor@suse.com&gt;" date="1714996800">- Add -fpermissive to optflags (boo#1223910).</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1715256000">- Remove conditionals for SUSE 11.3</changelog>
  <changelog author="Martin Jambor &lt;mjambor@suse.com&gt;" date="1720094400">- Add -fpermissive to the remaining uses of optflags. [boo#1223910]</changelog>
</package>
<package pkgid="de4f8cd38de696301ef4476a05b535e0c36d6f405276d57070c7fbad4ee746e4183f0352a9a26bb067ec3150a133eeba73244a0666cf3164997dcbd5e0f02476" name="aalib-debuginfo" arch="x86_64">
  <version epoch="0" ver="1.4.0" rel="516.0.2.1.sr20240803"/>
  <changelog author="meissner@suse.com" date="1431864000">- info deinstall needs to be in preun section.</changelog>
  <changelog author="dimstar@opensuse.org" date="1441800000">- Add aalib-ncurses-6.0-accessors.patch: Fix build with
  NCurses 6.0 with WINDOW_OPAQUE set to 1.</changelog>
  <changelog author="meissner@suse.com" date="1445083200">- aavga.dif: add -fno-stack-protector to shared aavga.so object build</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1623067200">- Drop --with-pic (no effect with --disable-static).
- Run fdupes, and trim old rpm constructs.</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1662897600">- avoid ffast-math (ggo#55522)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1668513600">- Homepage link http://aa-project.sourceforge.net/ is a permanent
  redirect to its HTTPS counterpart https://aa-project.sourceforge.net/</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1708430400">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Martin Jambor &lt;mjambor@suse.com&gt;" date="1714996800">- Add -fpermissive to optflags (boo#1223910).</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1715256000">- Remove conditionals for SUSE 11.3</changelog>
  <changelog author="Martin Jambor &lt;mjambor@suse.com&gt;" date="1720094400">- Add -fpermissive to the remaining uses of optflags. [boo#1223910]</changelog>
</package>
<package pkgid="84bec95897a1c9ec6321032f21f7cbcf098a53f04e7918354ad6d4158f2981ecb8bd61b18b22c7773bebeff7f9899d2c6afcf8fd49719cdb6c915a2f6ab73a7b" name="aalib-debuginfo" arch="i586">
  <version epoch="0" ver="1.4.0" rel="516.0.2.1.sr20240901"/>
  <changelog author="meissner@suse.com" date="1431864000">- info deinstall needs to be in preun section.</changelog>
  <changelog author="dimstar@opensuse.org" date="1441800000">- Add aalib-ncurses-6.0-accessors.patch: Fix build with
  NCurses 6.0 with WINDOW_OPAQUE set to 1.</changelog>
  <changelog author="meissner@suse.com" date="1445083200">- aavga.dif: add -fno-stack-protector to shared aavga.so object build</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1623067200">- Drop --with-pic (no effect with --disable-static).
- Run fdupes, and trim old rpm constructs.</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1662897600">- avoid ffast-math (ggo#55522)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1668513600">- Homepage link http://aa-project.sourceforge.net/ is a permanent
  redirect to its HTTPS counterpart https://aa-project.sourceforge.net/</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1708430400">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Martin Jambor &lt;mjambor@suse.com&gt;" date="1714996800">- Add -fpermissive to optflags (boo#1223910).</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1715256000">- Remove conditionals for SUSE 11.3</changelog>
  <changelog author="Martin Jambor &lt;mjambor@suse.com&gt;" date="1720094400">- Add -fpermissive to the remaining uses of optflags. [boo#1223910]</changelog>
</package>
<package pkgid="195834bb92009418bfe04e0148efdea6d7a1072e63c86d2c1f09b4181bf55a1d7068e890329d32cab9dfe1a1ab371bc91da827fb36e258e3bb108d1ea30f9c51" name="aalib-debuginfo" arch="x86_64">
  <version epoch="0" ver="1.4.0" rel="516.0.2.1.sr20240901"/>
  <changelog author="meissner@suse.com" date="1431864000">- info deinstall needs to be in preun section.</changelog>
  <changelog author="dimstar@opensuse.org" date="1441800000">- Add aalib-ncurses-6.0-accessors.patch: Fix build with
  NCurses 6.0 with WINDOW_OPAQUE set to 1.</changelog>
  <changelog author="meissner@suse.com" date="1445083200">- aavga.dif: add -fno-stack-protector to shared aavga.so object build</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1623067200">- Drop --with-pic (no effect with --disable-static).
- Run fdupes, and trim old rpm constructs.</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1662897600">- avoid ffast-math (ggo#55522)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1668513600">- Homepage link http://aa-project.sourceforge.net/ is a permanent
  redirect to its HTTPS counterpart https://aa-project.sourceforge.net/</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1708430400">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Martin Jambor &lt;mjambor@suse.com&gt;" date="1714996800">- Add -fpermissive to optflags (boo#1223910).</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1715256000">- Remove conditionals for SUSE 11.3</changelog>
  <changelog author="Martin Jambor &lt;mjambor@suse.com&gt;" date="1720094400">- Add -fpermissive to the remaining uses of optflags. [boo#1223910]</changelog>
</package>
<package pkgid="9e5b7b8eeba021d18d92fd2909f72856d232d999c9b85077c4d0eb8060077e2b46cf44890c02c6aa93a8fff7c335e813ad2475af2119a3b7c2e9406a52521e58" name="aalib-debuginfo" arch="i586">
  <version epoch="0" ver="1.4.0" rel="516.0.2.1.sr20241002"/>
  <changelog author="meissner@suse.com" date="1431864000">- info deinstall needs to be in preun section.</changelog>
  <changelog author="dimstar@opensuse.org" date="1441800000">- Add aalib-ncurses-6.0-accessors.patch: Fix build with
  NCurses 6.0 with WINDOW_OPAQUE set to 1.</changelog>
  <changelog author="meissner@suse.com" date="1445083200">- aavga.dif: add -fno-stack-protector to shared aavga.so object build</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1623067200">- Drop --with-pic (no effect with --disable-static).
- Run fdupes, and trim old rpm constructs.</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1662897600">- avoid ffast-math (ggo#55522)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1668513600">- Homepage link http://aa-project.sourceforge.net/ is a permanent
  redirect to its HTTPS counterpart https://aa-project.sourceforge.net/</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1708430400">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Martin Jambor &lt;mjambor@suse.com&gt;" date="1714996800">- Add -fpermissive to optflags (boo#1223910).</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1715256000">- Remove conditionals for SUSE 11.3</changelog>
  <changelog author="Martin Jambor &lt;mjambor@suse.com&gt;" date="1720094400">- Add -fpermissive to the remaining uses of optflags. [boo#1223910]</changelog>
</package>
<package pkgid="f5fe2ea4b19cab4873b4c77dff33a792327f9c3c2db5c3b2022799079c890488e44cc0ff9b2509fbcb5abf580a289b24cf5232e4336b54be69e140aa2989475c" name="aalib-debuginfo" arch="x86_64">
  <version epoch="0" ver="1.4.0" rel="516.0.2.1.sr20241002"/>
  <changelog author="meissner@suse.com" date="1431864000">- info deinstall needs to be in preun section.</changelog>
  <changelog author="dimstar@opensuse.org" date="1441800000">- Add aalib-ncurses-6.0-accessors.patch: Fix build with
  NCurses 6.0 with WINDOW_OPAQUE set to 1.</changelog>
  <changelog author="meissner@suse.com" date="1445083200">- aavga.dif: add -fno-stack-protector to shared aavga.so object build</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1623067200">- Drop --with-pic (no effect with --disable-static).
- Run fdupes, and trim old rpm constructs.</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1662897600">- avoid ffast-math (ggo#55522)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1668513600">- Homepage link http://aa-project.sourceforge.net/ is a permanent
  redirect to its HTTPS counterpart https://aa-project.sourceforge.net/</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1708430400">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Martin Jambor &lt;mjambor@suse.com&gt;" date="1714996800">- Add -fpermissive to optflags (boo#1223910).</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1715256000">- Remove conditionals for SUSE 11.3</changelog>
  <changelog author="Martin Jambor &lt;mjambor@suse.com&gt;" date="1720094400">- Add -fpermissive to the remaining uses of optflags. [boo#1223910]</changelog>
</package>
<package pkgid="75aeeae2fee4b47e623c9f7b1662ae6c1a785cf5512dc197c5a29a7add1e2cc28a5523244b044f0ae61cce485f5d940f4c9ed878a2738b1a6f8db9a20136f923" name="aalib-debuginfo" arch="i586">
  <version epoch="0" ver="1.4.0" rel="516.0.2.1.sr20241103"/>
  <changelog author="meissner@suse.com" date="1431864000">- info deinstall needs to be in preun section.</changelog>
  <changelog author="dimstar@opensuse.org" date="1441800000">- Add aalib-ncurses-6.0-accessors.patch: Fix build with
  NCurses 6.0 with WINDOW_OPAQUE set to 1.</changelog>
  <changelog author="meissner@suse.com" date="1445083200">- aavga.dif: add -fno-stack-protector to shared aavga.so object build</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1623067200">- Drop --with-pic (no effect with --disable-static).
- Run fdupes, and trim old rpm constructs.</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1662897600">- avoid ffast-math (ggo#55522)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1668513600">- Homepage link http://aa-project.sourceforge.net/ is a permanent
  redirect to its HTTPS counterpart https://aa-project.sourceforge.net/</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1708430400">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Martin Jambor &lt;mjambor@suse.com&gt;" date="1714996800">- Add -fpermissive to optflags (boo#1223910).</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1715256000">- Remove conditionals for SUSE 11.3</changelog>
  <changelog author="Martin Jambor &lt;mjambor@suse.com&gt;" date="1720094400">- Add -fpermissive to the remaining uses of optflags. [boo#1223910]</changelog>
</package>
<package pkgid="c9462677636a994eab2093f7c6305f2c031bfe0c1e4afb4d462838827d646b3aa1ea842064bfe3706975efe3e785e67ff54892a8153e83f262fa44ca5b297ee0" name="aalib-debuginfo" arch="x86_64">
  <version epoch="0" ver="1.4.0" rel="516.0.2.1.sr20241103"/>
  <changelog author="meissner@suse.com" date="1431864000">- info deinstall needs to be in preun section.</changelog>
  <changelog author="dimstar@opensuse.org" date="1441800000">- Add aalib-ncurses-6.0-accessors.patch: Fix build with
  NCurses 6.0 with WINDOW_OPAQUE set to 1.</changelog>
  <changelog author="meissner@suse.com" date="1445083200">- aavga.dif: add -fno-stack-protector to shared aavga.so object build</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1623067200">- Drop --with-pic (no effect with --disable-static).
- Run fdupes, and trim old rpm constructs.</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1662897600">- avoid ffast-math (ggo#55522)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1668513600">- Homepage link http://aa-project.sourceforge.net/ is a permanent
  redirect to its HTTPS counterpart https://aa-project.sourceforge.net/</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1708430400">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Martin Jambor &lt;mjambor@suse.com&gt;" date="1714996800">- Add -fpermissive to optflags (boo#1223910).</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1715256000">- Remove conditionals for SUSE 11.3</changelog>
  <changelog author="Martin Jambor &lt;mjambor@suse.com&gt;" date="1720094400">- Add -fpermissive to the remaining uses of optflags. [boo#1223910]</changelog>
</package>
<package pkgid="ba79ea99f66ea4ce80283c55880c9da4c6b52de727bcc12388dc1b3e7ca0d3632a3527d2addd68b6e399cb1e8b351a8da66d5303696b3b643645a2f414dbe2d0" name="aalib-debuginfo" arch="x86_64">
  <version epoch="0" ver="1.4.0" rel="516.1"/>
  <changelog author="meissner@suse.com" date="1431864000">- info deinstall needs to be in preun section.</changelog>
  <changelog author="dimstar@opensuse.org" date="1441800000">- Add aalib-ncurses-6.0-accessors.patch: Fix build with
  NCurses 6.0 with WINDOW_OPAQUE set to 1.</changelog>
  <changelog author="meissner@suse.com" date="1445083200">- aavga.dif: add -fno-stack-protector to shared aavga.so object build</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1623067200">- Drop --with-pic (no effect with --disable-static).
- Run fdupes, and trim old rpm constructs.</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1662897600">- avoid ffast-math (ggo#55522)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1668513600">- Homepage link http://aa-project.sourceforge.net/ is a permanent
  redirect to its HTTPS counterpart https://aa-project.sourceforge.net/</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1708430400">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Martin Jambor &lt;mjambor@suse.com&gt;" date="1714996800">- Add -fpermissive to optflags (boo#1223910).</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1715256000">- Remove conditionals for SUSE 11.3</changelog>
  <changelog author="Martin Jambor &lt;mjambor@suse.com&gt;" date="1720094400">- Add -fpermissive to the remaining uses of optflags. [boo#1223910]</changelog>
</package>
<package pkgid="fa1f8d118d85c6787ff1cb816282eb902286e44fd86300f8d1eed32dbe579cd24cc9866c5e91bd5dd62b0b60ddce6ff56c78de8ed94f01fd25f45af3c7c6bf53" name="aalib-debugsource" arch="i586">
  <version epoch="0" ver="1.4.0" rel="516.0.2.1.sr20240803"/>
  <changelog author="meissner@suse.com" date="1431864000">- info deinstall needs to be in preun section.</changelog>
  <changelog author="dimstar@opensuse.org" date="1441800000">- Add aalib-ncurses-6.0-accessors.patch: Fix build with
  NCurses 6.0 with WINDOW_OPAQUE set to 1.</changelog>
  <changelog author="meissner@suse.com" date="1445083200">- aavga.dif: add -fno-stack-protector to shared aavga.so object build</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1623067200">- Drop --with-pic (no effect with --disable-static).
- Run fdupes, and trim old rpm constructs.</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1662897600">- avoid ffast-math (ggo#55522)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1668513600">- Homepage link http://aa-project.sourceforge.net/ is a permanent
  redirect to its HTTPS counterpart https://aa-project.sourceforge.net/</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1708430400">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Martin Jambor &lt;mjambor@suse.com&gt;" date="1714996800">- Add -fpermissive to optflags (boo#1223910).</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1715256000">- Remove conditionals for SUSE 11.3</changelog>
  <changelog author="Martin Jambor &lt;mjambor@suse.com&gt;" date="1720094400">- Add -fpermissive to the remaining uses of optflags. [boo#1223910]</changelog>
</package>
<package pkgid="6506903a823da56e15533fdd5205d8463112c850e8aaea3c53bd8686fb22674944e8f05c1f7724bd560267ed0bc0ca7eef97347faca718b5715dea372835fa7f" name="aalib-debugsource" arch="x86_64">
  <version epoch="0" ver="1.4.0" rel="516.0.2.1.sr20240803"/>
  <changelog author="meissner@suse.com" date="1431864000">- info deinstall needs to be in preun section.</changelog>
  <changelog author="dimstar@opensuse.org" date="1441800000">- Add aalib-ncurses-6.0-accessors.patch: Fix build with
  NCurses 6.0 with WINDOW_OPAQUE set to 1.</changelog>
  <changelog author="meissner@suse.com" date="1445083200">- aavga.dif: add -fno-stack-protector to shared aavga.so object build</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1623067200">- Drop --with-pic (no effect with --disable-static).
- Run fdupes, and trim old rpm constructs.</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1662897600">- avoid ffast-math (ggo#55522)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1668513600">- Homepage link http://aa-project.sourceforge.net/ is a permanent
  redirect to its HTTPS counterpart https://aa-project.sourceforge.net/</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1708430400">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Martin Jambor &lt;mjambor@suse.com&gt;" date="1714996800">- Add -fpermissive to optflags (boo#1223910).</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1715256000">- Remove conditionals for SUSE 11.3</changelog>
  <changelog author="Martin Jambor &lt;mjambor@suse.com&gt;" date="1720094400">- Add -fpermissive to the remaining uses of optflags. [boo#1223910]</changelog>
</package>
<package pkgid="9063d0bf479d9c966183303f8971ce0e232a42ff90cf7ea320f15aa8be0d6c568ba039f37e532aa289c34131834693c61122fafbef0dc55e00605eeac1a1bde7" name="aalib-debugsource" arch="i586">
  <version epoch="0" ver="1.4.0" rel="516.0.2.1.sr20240901"/>
  <changelog author="meissner@suse.com" date="1431864000">- info deinstall needs to be in preun section.</changelog>
  <changelog author="dimstar@opensuse.org" date="1441800000">- Add aalib-ncurses-6.0-accessors.patch: Fix build with
  NCurses 6.0 with WINDOW_OPAQUE set to 1.</changelog>
  <changelog author="meissner@suse.com" date="1445083200">- aavga.dif: add -fno-stack-protector to shared aavga.so object build</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1623067200">- Drop --with-pic (no effect with --disable-static).
- Run fdupes, and trim old rpm constructs.</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1662897600">- avoid ffast-math (ggo#55522)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1668513600">- Homepage link http://aa-project.sourceforge.net/ is a permanent
  redirect to its HTTPS counterpart https://aa-project.sourceforge.net/</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1708430400">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Martin Jambor &lt;mjambor@suse.com&gt;" date="1714996800">- Add -fpermissive to optflags (boo#1223910).</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1715256000">- Remove conditionals for SUSE 11.3</changelog>
  <changelog author="Martin Jambor &lt;mjambor@suse.com&gt;" date="1720094400">- Add -fpermissive to the remaining uses of optflags. [boo#1223910]</changelog>
</package>
<package pkgid="5050bf11af737c114e916daac7a935b9d5076a003f2c8071298225bd7adaa5d106a54dfbdd548123097b9581d454f507ec12fb6a78ab96ffda3da1208b540021" name="aalib-debugsource" arch="x86_64">
  <version epoch="0" ver="1.4.0" rel="516.0.2.1.sr20240901"/>
  <changelog author="meissner@suse.com" date="1431864000">- info deinstall needs to be in preun section.</changelog>
  <changelog author="dimstar@opensuse.org" date="1441800000">- Add aalib-ncurses-6.0-accessors.patch: Fix build with
  NCurses 6.0 with WINDOW_OPAQUE set to 1.</changelog>
  <changelog author="meissner@suse.com" date="1445083200">- aavga.dif: add -fno-stack-protector to shared aavga.so object build</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1623067200">- Drop --with-pic (no effect with --disable-static).
- Run fdupes, and trim old rpm constructs.</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1662897600">- avoid ffast-math (ggo#55522)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1668513600">- Homepage link http://aa-project.sourceforge.net/ is a permanent
  redirect to its HTTPS counterpart https://aa-project.sourceforge.net/</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1708430400">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Martin Jambor &lt;mjambor@suse.com&gt;" date="1714996800">- Add -fpermissive to optflags (boo#1223910).</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1715256000">- Remove conditionals for SUSE 11.3</changelog>
  <changelog author="Martin Jambor &lt;mjambor@suse.com&gt;" date="1720094400">- Add -fpermissive to the remaining uses of optflags. [boo#1223910]</changelog>
</package>
<package pkgid="e5a9675e308836cbb9c184702e0d8e8265d00a9ea6a7008cac19d16a3d00a47981ba5cfdab49b158b134b01b0139ad2bf4b8eeaf72cac9f2bab27d0f4f453615" name="aalib-debugsource" arch="i586">
  <version epoch="0" ver="1.4.0" rel="516.0.2.1.sr20241002"/>
  <changelog author="meissner@suse.com" date="1431864000">- info deinstall needs to be in preun section.</changelog>
  <changelog author="dimstar@opensuse.org" date="1441800000">- Add aalib-ncurses-6.0-accessors.patch: Fix build with
  NCurses 6.0 with WINDOW_OPAQUE set to 1.</changelog>
  <changelog author="meissner@suse.com" date="1445083200">- aavga.dif: add -fno-stack-protector to shared aavga.so object build</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1623067200">- Drop --with-pic (no effect with --disable-static).
- Run fdupes, and trim old rpm constructs.</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1662897600">- avoid ffast-math (ggo#55522)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1668513600">- Homepage link http://aa-project.sourceforge.net/ is a permanent
  redirect to its HTTPS counterpart https://aa-project.sourceforge.net/</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1708430400">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Martin Jambor &lt;mjambor@suse.com&gt;" date="1714996800">- Add -fpermissive to optflags (boo#1223910).</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1715256000">- Remove conditionals for SUSE 11.3</changelog>
  <changelog author="Martin Jambor &lt;mjambor@suse.com&gt;" date="1720094400">- Add -fpermissive to the remaining uses of optflags. [boo#1223910]</changelog>
</package>
<package pkgid="d29717ba736bd4956919a4fe21255d64cd34595b402628f83bcb069d3c3c0a77ea40b142b8ddfec3fe86693da3db65c2561957fb5d6e6508fa4c474ac7c993e6" name="aalib-debugsource" arch="x86_64">
  <version epoch="0" ver="1.4.0" rel="516.0.2.1.sr20241002"/>
  <changelog author="meissner@suse.com" date="1431864000">- info deinstall needs to be in preun section.</changelog>
  <changelog author="dimstar@opensuse.org" date="1441800000">- Add aalib-ncurses-6.0-accessors.patch: Fix build with
  NCurses 6.0 with WINDOW_OPAQUE set to 1.</changelog>
  <changelog author="meissner@suse.com" date="1445083200">- aavga.dif: add -fno-stack-protector to shared aavga.so object build</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1623067200">- Drop --with-pic (no effect with --disable-static).
- Run fdupes, and trim old rpm constructs.</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1662897600">- avoid ffast-math (ggo#55522)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1668513600">- Homepage link http://aa-project.sourceforge.net/ is a permanent
  redirect to its HTTPS counterpart https://aa-project.sourceforge.net/</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1708430400">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Martin Jambor &lt;mjambor@suse.com&gt;" date="1714996800">- Add -fpermissive to optflags (boo#1223910).</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1715256000">- Remove conditionals for SUSE 11.3</changelog>
  <changelog author="Martin Jambor &lt;mjambor@suse.com&gt;" date="1720094400">- Add -fpermissive to the remaining uses of optflags. [boo#1223910]</changelog>
</package>
<package pkgid="3878a92b5549a01acb7bd6b3163fbd37110df2f267b16834bb8435908ba8e02b195891d6706b0e0729466911fb5b474af3476f895dbb03eeaa466177b4fa42dd" name="aalib-debugsource" arch="i586">
  <version epoch="0" ver="1.4.0" rel="516.0.2.1.sr20241103"/>
  <changelog author="meissner@suse.com" date="1431864000">- info deinstall needs to be in preun section.</changelog>
  <changelog author="dimstar@opensuse.org" date="1441800000">- Add aalib-ncurses-6.0-accessors.patch: Fix build with
  NCurses 6.0 with WINDOW_OPAQUE set to 1.</changelog>
  <changelog author="meissner@suse.com" date="1445083200">- aavga.dif: add -fno-stack-protector to shared aavga.so object build</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1623067200">- Drop --with-pic (no effect with --disable-static).
- Run fdupes, and trim old rpm constructs.</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1662897600">- avoid ffast-math (ggo#55522)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1668513600">- Homepage link http://aa-project.sourceforge.net/ is a permanent
  redirect to its HTTPS counterpart https://aa-project.sourceforge.net/</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1708430400">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Martin Jambor &lt;mjambor@suse.com&gt;" date="1714996800">- Add -fpermissive to optflags (boo#1223910).</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1715256000">- Remove conditionals for SUSE 11.3</changelog>
  <changelog author="Martin Jambor &lt;mjambor@suse.com&gt;" date="1720094400">- Add -fpermissive to the remaining uses of optflags. [boo#1223910]</changelog>
</package>
<package pkgid="0d5c88a54293e6821ad74e594682dfbe0b4957e205730cce716e94c4bbcfe22cfcc35a45322d7c04f1ac1cde5a5e57db3d839970fe8de33b5f25ef0a5f752300" name="aalib-debugsource" arch="x86_64">
  <version epoch="0" ver="1.4.0" rel="516.0.2.1.sr20241103"/>
  <changelog author="meissner@suse.com" date="1431864000">- info deinstall needs to be in preun section.</changelog>
  <changelog author="dimstar@opensuse.org" date="1441800000">- Add aalib-ncurses-6.0-accessors.patch: Fix build with
  NCurses 6.0 with WINDOW_OPAQUE set to 1.</changelog>
  <changelog author="meissner@suse.com" date="1445083200">- aavga.dif: add -fno-stack-protector to shared aavga.so object build</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1623067200">- Drop --with-pic (no effect with --disable-static).
- Run fdupes, and trim old rpm constructs.</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1662897600">- avoid ffast-math (ggo#55522)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1668513600">- Homepage link http://aa-project.sourceforge.net/ is a permanent
  redirect to its HTTPS counterpart https://aa-project.sourceforge.net/</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1708430400">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Martin Jambor &lt;mjambor@suse.com&gt;" date="1714996800">- Add -fpermissive to optflags (boo#1223910).</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1715256000">- Remove conditionals for SUSE 11.3</changelog>
  <changelog author="Martin Jambor &lt;mjambor@suse.com&gt;" date="1720094400">- Add -fpermissive to the remaining uses of optflags. [boo#1223910]</changelog>
</package>
<package pkgid="04198e3db9f6b3bc8d8b908205899701541d05b1321d67bad835fd608e57f74c131bf09c23b8a7f5e6b29f9fb9256a23d80bff1bbce5860f127d20b00fad1c0b" name="aalib-debugsource" arch="x86_64">
  <version epoch="0" ver="1.4.0" rel="516.1"/>
  <changelog author="meissner@suse.com" date="1431864000">- info deinstall needs to be in preun section.</changelog>
  <changelog author="dimstar@opensuse.org" date="1441800000">- Add aalib-ncurses-6.0-accessors.patch: Fix build with
  NCurses 6.0 with WINDOW_OPAQUE set to 1.</changelog>
  <changelog author="meissner@suse.com" date="1445083200">- aavga.dif: add -fno-stack-protector to shared aavga.so object build</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1623067200">- Drop --with-pic (no effect with --disable-static).
- Run fdupes, and trim old rpm constructs.</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1662897600">- avoid ffast-math (ggo#55522)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1668513600">- Homepage link http://aa-project.sourceforge.net/ is a permanent
  redirect to its HTTPS counterpart https://aa-project.sourceforge.net/</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1708430400">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Martin Jambor &lt;mjambor@suse.com&gt;" date="1714996800">- Add -fpermissive to optflags (boo#1223910).</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1715256000">- Remove conditionals for SUSE 11.3</changelog>
  <changelog author="Martin Jambor &lt;mjambor@suse.com&gt;" date="1720094400">- Add -fpermissive to the remaining uses of optflags. [boo#1223910]</changelog>
</package>
<package pkgid="dff8032463652890b7575ae10533e4f5bd2efc7e21c247147661fff3f3b00d2cc4a9284e6fa15fa059ee2fc084928d48d23b06168f08a74328f46e61e2ee3dcb" name="aalib-devel" arch="i586">
  <version epoch="0" ver="1.4.0" rel="516.0.2.1.sr20240803"/>
  <changelog author="meissner@suse.com" date="1431864000">- info deinstall needs to be in preun section.</changelog>
  <changelog author="dimstar@opensuse.org" date="1441800000">- Add aalib-ncurses-6.0-accessors.patch: Fix build with
  NCurses 6.0 with WINDOW_OPAQUE set to 1.</changelog>
  <changelog author="meissner@suse.com" date="1445083200">- aavga.dif: add -fno-stack-protector to shared aavga.so object build</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1623067200">- Drop --with-pic (no effect with --disable-static).
- Run fdupes, and trim old rpm constructs.</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1662897600">- avoid ffast-math (ggo#55522)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1668513600">- Homepage link http://aa-project.sourceforge.net/ is a permanent
  redirect to its HTTPS counterpart https://aa-project.sourceforge.net/</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1708430400">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Martin Jambor &lt;mjambor@suse.com&gt;" date="1714996800">- Add -fpermissive to optflags (boo#1223910).</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1715256000">- Remove conditionals for SUSE 11.3</changelog>
  <changelog author="Martin Jambor &lt;mjambor@suse.com&gt;" date="1720094400">- Add -fpermissive to the remaining uses of optflags. [boo#1223910]</changelog>
</package>
<package pkgid="177362dc66ce89e6d605a37e24c51487bfd6a78886e28abef72ae0109a2bb64fcab239cdedd77ad52b788cbdd86daf912c8d973d446e3ca7e4e6a73765b8fb28" name="aalib-devel" arch="x86_64">
  <version epoch="0" ver="1.4.0" rel="516.0.2.1.sr20240803"/>
  <changelog author="meissner@suse.com" date="1431864000">- info deinstall needs to be in preun section.</changelog>
  <changelog author="dimstar@opensuse.org" date="1441800000">- Add aalib-ncurses-6.0-accessors.patch: Fix build with
  NCurses 6.0 with WINDOW_OPAQUE set to 1.</changelog>
  <changelog author="meissner@suse.com" date="1445083200">- aavga.dif: add -fno-stack-protector to shared aavga.so object build</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1623067200">- Drop --with-pic (no effect with --disable-static).
- Run fdupes, and trim old rpm constructs.</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1662897600">- avoid ffast-math (ggo#55522)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1668513600">- Homepage link http://aa-project.sourceforge.net/ is a permanent
  redirect to its HTTPS counterpart https://aa-project.sourceforge.net/</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1708430400">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Martin Jambor &lt;mjambor@suse.com&gt;" date="1714996800">- Add -fpermissive to optflags (boo#1223910).</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1715256000">- Remove conditionals for SUSE 11.3</changelog>
  <changelog author="Martin Jambor &lt;mjambor@suse.com&gt;" date="1720094400">- Add -fpermissive to the remaining uses of optflags. [boo#1223910]</changelog>
</package>
<package pkgid="7b7d162e98a030c3af07daf7fb937738cf64e351674fab90121e780e31e719187954e2ba44a35bc7914435f92d257902f29decd74af0e979ed47448a67e718cf" name="aalib-devel" arch="i586">
  <version epoch="0" ver="1.4.0" rel="516.0.2.1.sr20240901"/>
  <changelog author="meissner@suse.com" date="1431864000">- info deinstall needs to be in preun section.</changelog>
  <changelog author="dimstar@opensuse.org" date="1441800000">- Add aalib-ncurses-6.0-accessors.patch: Fix build with
  NCurses 6.0 with WINDOW_OPAQUE set to 1.</changelog>
  <changelog author="meissner@suse.com" date="1445083200">- aavga.dif: add -fno-stack-protector to shared aavga.so object build</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1623067200">- Drop --with-pic (no effect with --disable-static).
- Run fdupes, and trim old rpm constructs.</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1662897600">- avoid ffast-math (ggo#55522)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1668513600">- Homepage link http://aa-project.sourceforge.net/ is a permanent
  redirect to its HTTPS counterpart https://aa-project.sourceforge.net/</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1708430400">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Martin Jambor &lt;mjambor@suse.com&gt;" date="1714996800">- Add -fpermissive to optflags (boo#1223910).</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1715256000">- Remove conditionals for SUSE 11.3</changelog>
  <changelog author="Martin Jambor &lt;mjambor@suse.com&gt;" date="1720094400">- Add -fpermissive to the remaining uses of optflags. [boo#1223910]</changelog>
</package>
<package pkgid="69d8a0d422c54299da87eae63b7a240624fbf7ea675357ee8064f2ba28f33c8e40c10e4c8299ffaa35bf124934bdf495ba70e36e8073afb869f03a751dd88dda" name="aalib-devel" arch="x86_64">
  <version epoch="0" ver="1.4.0" rel="516.0.2.1.sr20240901"/>
  <changelog author="meissner@suse.com" date="1431864000">- info deinstall needs to be in preun section.</changelog>
  <changelog author="dimstar@opensuse.org" date="1441800000">- Add aalib-ncurses-6.0-accessors.patch: Fix build with
  NCurses 6.0 with WINDOW_OPAQUE set to 1.</changelog>
  <changelog author="meissner@suse.com" date="1445083200">- aavga.dif: add -fno-stack-protector to shared aavga.so object build</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1623067200">- Drop --with-pic (no effect with --disable-static).
- Run fdupes, and trim old rpm constructs.</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1662897600">- avoid ffast-math (ggo#55522)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1668513600">- Homepage link http://aa-project.sourceforge.net/ is a permanent
  redirect to its HTTPS counterpart https://aa-project.sourceforge.net/</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1708430400">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Martin Jambor &lt;mjambor@suse.com&gt;" date="1714996800">- Add -fpermissive to optflags (boo#1223910).</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1715256000">- Remove conditionals for SUSE 11.3</changelog>
  <changelog author="Martin Jambor &lt;mjambor@suse.com&gt;" date="1720094400">- Add -fpermissive to the remaining uses of optflags. [boo#1223910]</changelog>
</package>
<package pkgid="08b63a50e981272069f528da1d223119c7f1cf45c9923a906a77c8b26e132db697d26d3a01e8d3b5a8fdcef8d709d7360b5e433183af2fe82cdb7fb6138bc34f" name="aalib-devel" arch="i586">
  <version epoch="0" ver="1.4.0" rel="516.0.2.1.sr20241002"/>
  <changelog author="meissner@suse.com" date="1431864000">- info deinstall needs to be in preun section.</changelog>
  <changelog author="dimstar@opensuse.org" date="1441800000">- Add aalib-ncurses-6.0-accessors.patch: Fix build with
  NCurses 6.0 with WINDOW_OPAQUE set to 1.</changelog>
  <changelog author="meissner@suse.com" date="1445083200">- aavga.dif: add -fno-stack-protector to shared aavga.so object build</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1623067200">- Drop --with-pic (no effect with --disable-static).
- Run fdupes, and trim old rpm constructs.</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1662897600">- avoid ffast-math (ggo#55522)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1668513600">- Homepage link http://aa-project.sourceforge.net/ is a permanent
  redirect to its HTTPS counterpart https://aa-project.sourceforge.net/</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1708430400">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Martin Jambor &lt;mjambor@suse.com&gt;" date="1714996800">- Add -fpermissive to optflags (boo#1223910).</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1715256000">- Remove conditionals for SUSE 11.3</changelog>
  <changelog author="Martin Jambor &lt;mjambor@suse.com&gt;" date="1720094400">- Add -fpermissive to the remaining uses of optflags. [boo#1223910]</changelog>
</package>
<package pkgid="89858b2b85bdec175f426d21e87505d7e8436e7bcd75f8c422cfea6b196cc017907abc9a4ef603033008fc2b69c65205ad3d399b69dd59d7c814847ceb30707b" name="aalib-devel" arch="x86_64">
  <version epoch="0" ver="1.4.0" rel="516.0.2.1.sr20241002"/>
  <changelog author="meissner@suse.com" date="1431864000">- info deinstall needs to be in preun section.</changelog>
  <changelog author="dimstar@opensuse.org" date="1441800000">- Add aalib-ncurses-6.0-accessors.patch: Fix build with
  NCurses 6.0 with WINDOW_OPAQUE set to 1.</changelog>
  <changelog author="meissner@suse.com" date="1445083200">- aavga.dif: add -fno-stack-protector to shared aavga.so object build</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1623067200">- Drop --with-pic (no effect with --disable-static).
- Run fdupes, and trim old rpm constructs.</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1662897600">- avoid ffast-math (ggo#55522)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1668513600">- Homepage link http://aa-project.sourceforge.net/ is a permanent
  redirect to its HTTPS counterpart https://aa-project.sourceforge.net/</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1708430400">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Martin Jambor &lt;mjambor@suse.com&gt;" date="1714996800">- Add -fpermissive to optflags (boo#1223910).</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1715256000">- Remove conditionals for SUSE 11.3</changelog>
  <changelog author="Martin Jambor &lt;mjambor@suse.com&gt;" date="1720094400">- Add -fpermissive to the remaining uses of optflags. [boo#1223910]</changelog>
</package>
<package pkgid="ca7302dcffabc2a396a10c85b1ff60aeed058462cebcc98444bf296eb967126bda9095f98cc6529fcc36e773669e4ef424557e6d6f32ae28ab5291fe1fe49d4d" name="aalib-devel" arch="i586">
  <version epoch="0" ver="1.4.0" rel="516.0.2.1.sr20241103"/>
  <changelog author="meissner@suse.com" date="1431864000">- info deinstall needs to be in preun section.</changelog>
  <changelog author="dimstar@opensuse.org" date="1441800000">- Add aalib-ncurses-6.0-accessors.patch: Fix build with
  NCurses 6.0 with WINDOW_OPAQUE set to 1.</changelog>
  <changelog author="meissner@suse.com" date="1445083200">- aavga.dif: add -fno-stack-protector to shared aavga.so object build</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1623067200">- Drop --with-pic (no effect with --disable-static).
- Run fdupes, and trim old rpm constructs.</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1662897600">- avoid ffast-math (ggo#55522)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1668513600">- Homepage link http://aa-project.sourceforge.net/ is a permanent
  redirect to its HTTPS counterpart https://aa-project.sourceforge.net/</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1708430400">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Martin Jambor &lt;mjambor@suse.com&gt;" date="1714996800">- Add -fpermissive to optflags (boo#1223910).</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1715256000">- Remove conditionals for SUSE 11.3</changelog>
  <changelog author="Martin Jambor &lt;mjambor@suse.com&gt;" date="1720094400">- Add -fpermissive to the remaining uses of optflags. [boo#1223910]</changelog>
</package>
<package pkgid="80930a198061570e2930c6b3cca84e72c7099719d157cfd25a2864c720dd8e9e02877325fc49234e5d8fc6488bf30c5bc206842ff1345a001e59310cb7e6739d" name="aalib-devel" arch="x86_64">
  <version epoch="0" ver="1.4.0" rel="516.0.2.1.sr20241103"/>
  <changelog author="meissner@suse.com" date="1431864000">- info deinstall needs to be in preun section.</changelog>
  <changelog author="dimstar@opensuse.org" date="1441800000">- Add aalib-ncurses-6.0-accessors.patch: Fix build with
  NCurses 6.0 with WINDOW_OPAQUE set to 1.</changelog>
  <changelog author="meissner@suse.com" date="1445083200">- aavga.dif: add -fno-stack-protector to shared aavga.so object build</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1623067200">- Drop --with-pic (no effect with --disable-static).
- Run fdupes, and trim old rpm constructs.</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1662897600">- avoid ffast-math (ggo#55522)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1668513600">- Homepage link http://aa-project.sourceforge.net/ is a permanent
  redirect to its HTTPS counterpart https://aa-project.sourceforge.net/</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1708430400">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Martin Jambor &lt;mjambor@suse.com&gt;" date="1714996800">- Add -fpermissive to optflags (boo#1223910).</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1715256000">- Remove conditionals for SUSE 11.3</changelog>
  <changelog author="Martin Jambor &lt;mjambor@suse.com&gt;" date="1720094400">- Add -fpermissive to the remaining uses of optflags. [boo#1223910]</changelog>
</package>
<package pkgid="180a41e089a295961cc7b9b88f9698cdd36546887fbcad7daeeae9df53eae5e39b6f043bdbd2a8691d1150602cbe97ceb13a411097ce57f91872840a97ee09f7" name="aalib-devel" arch="x86_64">
  <version epoch="0" ver="1.4.0" rel="516.1"/>
  <changelog author="meissner@suse.com" date="1431864000">- info deinstall needs to be in preun section.</changelog>
  <changelog author="dimstar@opensuse.org" date="1441800000">- Add aalib-ncurses-6.0-accessors.patch: Fix build with
  NCurses 6.0 with WINDOW_OPAQUE set to 1.</changelog>
  <changelog author="meissner@suse.com" date="1445083200">- aavga.dif: add -fno-stack-protector to shared aavga.so object build</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1623067200">- Drop --with-pic (no effect with --disable-static).
- Run fdupes, and trim old rpm constructs.</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1662897600">- avoid ffast-math (ggo#55522)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1668513600">- Homepage link http://aa-project.sourceforge.net/ is a permanent
  redirect to its HTTPS counterpart https://aa-project.sourceforge.net/</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1708430400">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Martin Jambor &lt;mjambor@suse.com&gt;" date="1714996800">- Add -fpermissive to optflags (boo#1223910).</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1715256000">- Remove conditionals for SUSE 11.3</changelog>
  <changelog author="Martin Jambor &lt;mjambor@suse.com&gt;" date="1720094400">- Add -fpermissive to the remaining uses of optflags. [boo#1223910]</changelog>
</package>
<package pkgid="e901b71f806cfd99a308e7be05b00120f03cb91301a56b8bbcf1cb0e3b926c94c0a4785e416737c7e995faa1a5c57cb455c9c0a967e61ae9dec9bab89c46b6a5" name="aalib-devel-32bit" arch="x86_64">
  <version epoch="0" ver="1.4.0" rel="516.0.2.1.sr20240803"/>
  <changelog author="meissner@suse.com" date="1431864000">- info deinstall needs to be in preun section.</changelog>
  <changelog author="dimstar@opensuse.org" date="1441800000">- Add aalib-ncurses-6.0-accessors.patch: Fix build with
  NCurses 6.0 with WINDOW_OPAQUE set to 1.</changelog>
  <changelog author="meissner@suse.com" date="1445083200">- aavga.dif: add -fno-stack-protector to shared aavga.so object build</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1623067200">- Drop --with-pic (no effect with --disable-static).
- Run fdupes, and trim old rpm constructs.</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1662897600">- avoid ffast-math (ggo#55522)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1668513600">- Homepage link http://aa-project.sourceforge.net/ is a permanent
  redirect to its HTTPS counterpart https://aa-project.sourceforge.net/</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1708430400">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Martin Jambor &lt;mjambor@suse.com&gt;" date="1714996800">- Add -fpermissive to optflags (boo#1223910).</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1715256000">- Remove conditionals for SUSE 11.3</changelog>
  <changelog author="Martin Jambor &lt;mjambor@suse.com&gt;" date="1720094400">- Add -fpermissive to the remaining uses of optflags. [boo#1223910]</changelog>
</package>
<package pkgid="ef8eadd4a445e2c66740d90657d5d19dd8f0a8d4abc4c81ae0169f08d1a8d1930535744f1efcb909cd70751f74d3a7eea190210fc577a2387d5eb476dd5fd5ce" name="aalib-devel-32bit" arch="x86_64">
  <version epoch="0" ver="1.4.0" rel="516.0.2.1.sr20240901"/>
  <changelog author="meissner@suse.com" date="1431864000">- info deinstall needs to be in preun section.</changelog>
  <changelog author="dimstar@opensuse.org" date="1441800000">- Add aalib-ncurses-6.0-accessors.patch: Fix build with
  NCurses 6.0 with WINDOW_OPAQUE set to 1.</changelog>
  <changelog author="meissner@suse.com" date="1445083200">- aavga.dif: add -fno-stack-protector to shared aavga.so object build</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1623067200">- Drop --with-pic (no effect with --disable-static).
- Run fdupes, and trim old rpm constructs.</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1662897600">- avoid ffast-math (ggo#55522)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1668513600">- Homepage link http://aa-project.sourceforge.net/ is a permanent
  redirect to its HTTPS counterpart https://aa-project.sourceforge.net/</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1708430400">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Martin Jambor &lt;mjambor@suse.com&gt;" date="1714996800">- Add -fpermissive to optflags (boo#1223910).</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1715256000">- Remove conditionals for SUSE 11.3</changelog>
  <changelog author="Martin Jambor &lt;mjambor@suse.com&gt;" date="1720094400">- Add -fpermissive to the remaining uses of optflags. [boo#1223910]</changelog>
</package>
<package pkgid="d7b8da15a600b37fa560103565de41204e03e8ce1b08159af37c34b8ccca05502cf1d5e8750c61660c11529be0235a5c763dacd1f9e05565586729b7dfe89d79" name="aalib-devel-32bit" arch="x86_64">
  <version epoch="0" ver="1.4.0" rel="516.0.2.1.sr20241002"/>
  <changelog author="meissner@suse.com" date="1431864000">- info deinstall needs to be in preun section.</changelog>
  <changelog author="dimstar@opensuse.org" date="1441800000">- Add aalib-ncurses-6.0-accessors.patch: Fix build with
  NCurses 6.0 with WINDOW_OPAQUE set to 1.</changelog>
  <changelog author="meissner@suse.com" date="1445083200">- aavga.dif: add -fno-stack-protector to shared aavga.so object build</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1623067200">- Drop --with-pic (no effect with --disable-static).
- Run fdupes, and trim old rpm constructs.</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1662897600">- avoid ffast-math (ggo#55522)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1668513600">- Homepage link http://aa-project.sourceforge.net/ is a permanent
  redirect to its HTTPS counterpart https://aa-project.sourceforge.net/</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1708430400">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Martin Jambor &lt;mjambor@suse.com&gt;" date="1714996800">- Add -fpermissive to optflags (boo#1223910).</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1715256000">- Remove conditionals for SUSE 11.3</changelog>
  <changelog author="Martin Jambor &lt;mjambor@suse.com&gt;" date="1720094400">- Add -fpermissive to the remaining uses of optflags. [boo#1223910]</changelog>
</package>
<package pkgid="569aab9165116688e1765d08b108532bfbbdaa52f56b3aa7f55621e303588de7c34f2efd9f244e174b3f17a2353c1e67f68c7002507acc6dc02044048b6604f0" name="aalib-devel-32bit" arch="x86_64">
  <version epoch="0" ver="1.4.0" rel="516.0.2.1.sr20241103"/>
  <changelog author="meissner@suse.com" date="1431864000">- info deinstall needs to be in preun section.</changelog>
  <changelog author="dimstar@opensuse.org" date="1441800000">- Add aalib-ncurses-6.0-accessors.patch: Fix build with
  NCurses 6.0 with WINDOW_OPAQUE set to 1.</changelog>
  <changelog author="meissner@suse.com" date="1445083200">- aavga.dif: add -fno-stack-protector to shared aavga.so object build</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1623067200">- Drop --with-pic (no effect with --disable-static).
- Run fdupes, and trim old rpm constructs.</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1662897600">- avoid ffast-math (ggo#55522)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1668513600">- Homepage link http://aa-project.sourceforge.net/ is a permanent
  redirect to its HTTPS counterpart https://aa-project.sourceforge.net/</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1708430400">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Martin Jambor &lt;mjambor@suse.com&gt;" date="1714996800">- Add -fpermissive to optflags (boo#1223910).</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1715256000">- Remove conditionals for SUSE 11.3</changelog>
  <changelog author="Martin Jambor &lt;mjambor@suse.com&gt;" date="1720094400">- Add -fpermissive to the remaining uses of optflags. [boo#1223910]</changelog>
</package>
<package pkgid="3eeee192710918451c77a5ee3c5c8401bbcf8d5a5d8412dade2e64356b42ff03200f6e82a0e66bf51f0e60e8e8568f5ae7fbfb1e1f5ed79944241f123bdff0e8" name="aardvark-dns" arch="src">
  <version epoch="0" ver="1.13.1" rel="1.1"/>
  <changelog author="Danish Prakash &lt;danish.prakash@suse.com&gt;" date="1676376000">- First version of aardvark-dns</changelog>
  <changelog author="Danish Prakash &lt;danish.prakash@suse.com&gt;" date="1679054400">- Fix libexecdir issue on Leap and SLE</changelog>
  <changelog author="danish.prakash@suse.com" date="1681300800">- Update to version 1.6.0:
  * v1.6.0 release
  * Update release notes for v1.6.0
  * fix(deps): update rust crate tokio to 1.27.0
  * use lower TTL for contianer entries
  * fix(deps): update rust crate syslog to ^6.0.1
  * fix(deps): update rust crate futures-util to 0.3.28
  * chore(deps): update dependency containers/automation_images to v20230330
  * Disable Dependabot in favor of Renovate
  * chore(deps): update dependency containers/automation_images to v20230320
  * build(deps): bump futures-util from 0.3.26 to 0.3.27
  * [CI:BUILD] Packit: trigger builds on commit to main branch
  * build(deps): bump anyhow from 1.0.68 to 1.0.70
  * fix lint issue with new rust version 1.68
  * Cirrus: Update to newer CI VM images
  * build(deps): bump chrono from 0.4.23 to 0.4.24
  * build(deps): bump libc from 0.2.139 to 0.2.140
  * build(deps): bump async-broadcast from 0.5.0 to 0.5.1
  * build(deps): bump signal-hook from 0.3.14 to 0.3.15
  * build(deps): bump futures-util from 0.3.25 to 0.3.26
  * build(deps): bump tokio from 1.25.0 to 1.26.0
  * [CI:DOCS] Clarify packit related comments
  * [CI:BUILD] Packit: initial enablement
  * Allow custom cargo binary path
  * Switch to explicit platform list for `cargo vendor-filterer`
  * bump to v1.6.0-dev
  * Add renovate.json5
  * Cirrus: Groom rust cache before updating</changelog>
  <changelog author="danish.prakash@suse.com" date="1688385600">- Update to version 1.7.0:
  * release v1.7.0
  * Update release notes for v1.7.0
  * fix(deps): update rust crate tokio to 1.29.0
  * fix(deps): update rust crate clap to 4.3.8
  * fix(deps): update rust crate clap to 4.3.5
  * run cargo update
  * [CI:BUILD] Packit: add Fedora downstream tasks
  * fix(deps): update rust crate clap to 4.3.4
  * chore(deps): update dependency containers/automation_images to v20230614
  * fix(deps): update rust crate clap to 4.3.3
  * fix(deps): update rust crate log to 0.4.19
  * fix(deps): update rust crate clap to 4.3.2
  * fix(deps): update rust crate clap to 4.3.1
  * cirrus: remove verify_vendor task
  * chore(deps): update dependency containers/automation_images to v20230601
  * fix(deps): update rust crate trust-dns-server to 0.22.1
  * chore(deps): update rust crate chrono to 0.4.26
  * fix(deps): update rust crate tokio to 1.28.2
  * fix(deps): update rust crate log to 0.4.18
  * chore(deps): update rust crate chrono to 0.4.25
  * fix(deps): update rust crate clap to 4.3.0
  * chore(deps): update dependency containers/automation_images to v20230517
  * fix(deps): update rust crate tokio to 1.28.1
  * chore(deps): update dependency containers/automation_images to v20230426
  * fix(deps): update rust crate clap to 4.2.7
  * fix(deps): update rust crate anyhow to 1.0.71
  * fix typo in makefile
  * fix(deps): update rust crate tokio to 1.28.0
  * fix(deps): update rust crate clap to 4.2.5
  * fix(deps): update rust crate syslog to ^6.1.0
  * fix(deps): update rust crate clap to 4.2.4
  * fix(deps): update rust crate clap to 4.2.3
  * fix(deps): update rust crate clap to v4
  * chore(deps): update dependency containers/automation_images to v20230405
  * bump to v1.7.0-dev</changelog>
  <changelog author="Danish Prakash &lt;danish.prakash@suse.com&gt;" date="1689076800">- Disable restricting builds only for tier1 platforms
  i.e. only for x86_64 and aarch64 and enable for all.</changelog>
  <changelog author="danish.prakash@suse.com" date="1695902400">- Update to version 1.8.0:
  * Release v1.8.0
  * update release notes for v1.8.0
  * run cargo update
  * Packit: switch to @containers/packit-build team for copr failure notification comments
  * [CI:BUILD] Packit: tag @lsm5 on copr build failures
  * chore(deps): update rust crate chrono to 0.4.31
  * cargo: bump chrono to 0.4.30
  * test: IPv6 format is changed in v1.72.0
  * bump nix to 0.27.1
  * vendor: bump trust_dns_proto and trust_dns_client to 0.23.0
  * fix(deps): update rust crate trust-dns-server to 0.23.0
  * [CI:BUILD] rpm: spdx compatible license field
  * fix(deps): update rust crate anyhow to 1.0.75
  * fix(deps): update rust crate tokio to 1.32.0
  * chore(deps): update dependency containers/automation_images to v20230816
  * fix(deps): update rust crate tokio to 1.31.0
  * fix(deps): update rust crate anyhow to 1.0.74
  * fix(deps): update rust crate anyhow to 1.0.73
  * fix(deps): update rust crate log to 0.4.20
  * chore(deps): update dependency containers/automation_images to v20230809
  * fix(deps): update rust crate tokio to 1.30.0
  * fix(deps): update rust crate clap to 4.3.21
  * packit: Build PRs into default packit COPRs
  * chore(deps): update dependency containers/automation_images to v20230807
  * fix(deps): update rust crate anyhow to 1.0.72
  * fix(deps): update rust crate signal-hook to 0.3.17
  * fix(deps): update rust crate clap to 4.3.19
  * fix(deps): update rust crate clap to 4.3.15
  * fix(deps): update rust crate signal-hook to 0.3.16
  * [CI:BUILD] Packit: remove pre-sync action
  * fix(deps): update rust crate clap to 4.3.11
  * fix(deps): update rust crate tokio to 1.29.1
  * fix(deps): update rust crate clap to 4.3.10
  * [CI:BUILD] RPM: cleanup spec and fix eln builds
  * bump to v1.8.0-devel</changelog>
  <changelog author="danish.prakash@suse.com" date="1701345600">- Update to version 1.9.0:
  * Release v1.9.0
  * v1.9.0 Update release notes
  * run cargo update
  * chore(deps): update dependency containers/automation_images to v20231116
  * fix(deps): update rust crate tokio to 1.34.0
  * fix(deps): update rust crate async-broadcast to 0.6.0
  * update trust-dns to hickory
  * fix(deps): update rust crate futures-util to 0.3.29
  * fix(deps): update rust crate trust-dns-server to 0.23.2
  * fix(deps): update rust crate trust-dns-proto to 0.23.2
  * tmt: initial enablement
  * aardvark main: change error reporting
  * chore(deps): update dependency containers/automation_images to v20231004
  * fix(deps): update rust crate trust-dns-proto to 0.23.1
  * fix(deps): update rust crate trust-dns-client to 0.23.1
  * clippy: some format fixes
  * fix(deps): update rust crate tokio to 1.33.0
  * Bump to v1.9.0-dev</changelog>
  <changelog author="danish.prakash@suse.com" date="1706184000">- Update to version 1.10.0:
  * Release 1.10.0
  * Release notes for 1.10.0
  * chore(deps): update rust crate chrono to 0.4.32
  * chore(deps): update dependency containers/automation_images to v20240102
  * fix(deps): update rust crate futures-util to 0.3.30
  * fix(deps): update rust crate anyhow to 1.0.79
  * fix(deps): update rust crate tokio to 1.35.1
  * chore(deps): update dependency containers/automation_images to v20231208
  * fix(deps): update rust crate tokio to 1.35.0
  * fix duplicated IP CI flake
  * server: remove unused kill switch
  * fix(deps): update rust crate clap to ~4.4.10
  * Bump working version to v1.10.0-dev</changelog>
  <changelog author="danish.prakash@suse.com" date="1717416000">- Remove redundant source: cargo_config
- Update to version 1.11.0:
  * Release v1.11.0
  * v1.11.0 release notes
  * run cargo update
  * chore(deps): update dependency containers/automation_images to v20240529
  * Internal networks cannot make external DNS requests
  * fix(deps): update rust crate anyhow to 1.0.86
  * fix(deps): update rust crate nix to 0.29.0
  * [skip-ci] RPM: use default __cargo macro across all envs
  * chore(deps): update dependency containers/automation_images to v20240513
  * fix(deps): update rust crate anyhow to 1.0.83
  * [skip-ci] Packit: separate `packages` key for rhel jobs
  * fix(deps): update rust crate libc to 0.2.154
  * [skip-ci] Packit: enable rhel10, c10s tests and c10s downstream sync
  * [skip-ci] Packit: Remove EL8 jobs
  * fix(deps): update rust crate syslog to ^6.1.1
  * fix reverse ipv6 lookup test flake
  * fix(deps): update hickory-dns monorepo to 0.24.1
  * chore(deps): update rust crate chrono to 0.4.38
  * Don't tear down all server threads on SIGHUP (bsc#1224167)
  * fix(deps): update rust crate anyhow to 1.0.82
  * fix(deps): update rust crate tokio to 1.37.0
  * Update to nix-0.28.0
  * update chrono package
  * chore(deps): update dependency containers/automation_images to v20240320
  * fix(deps): update rust crate anyhow to 1.0.81
  * tests: check queried domain name in reverse lookup tests
  * fix: set name for answers in reverse lookups
  * chore: fix typo in runner script
  * chore: fix log message when doing reverse lookup
  * fix(deps): update rust crate log to 0.4.21
  * fix(deps): update rust crate anyhow to 1.0.80
  * chore(deps): update rust crate chrono to 0.4.34
  * fix(deps): update rust crate async-broadcast to 0.7.0
  * fix(deps): update rust crate tokio to 1.36.0
  * [CI:DOCS] Packit: disable bodhi tasks
  * chore(deps): update rust crate chrono to 0.4.33
  * Bump to 1.11.0-dev</changelog>
  <changelog author="Danish Prakash &lt;danish.prakash@suse.com&gt;" date="1721995200">- rust &gt;= 1.70 is required to build more recent versions of this
  package. Also, BuildRequire cargo+rust to prevent conflicts with
  `cargo-packaging`.</changelog>
  <changelog author="danish.prakash@suse.com" date="1723032000">- Update to version 1.12.1:
  * Release v1.12.1
  * Updated release notes for 1.12.1
  * Change av cargo categories
  * Bump to 1.13.0-dev
  * Release 1.12.0
  * Release notes for 1.12
  * config: ignore enoent errors while reading configs
  * run cargo update
  * update upsteam resolvers on each refresh
  * fix(deps): update rust crate syslog to v7
  * fix(deps): update rust crate tokio to 1.39.2
  * add tcp support for forwarding
  * add tcp listening support
  * test: add new test to check for startup error
  * return bind error to caller on first start
  * add our own error type and use it over anyhow
  * server: use anyhow to wrap parse_configs error
  * server: split out main loop into new function
  * main: remove aardvark-dns error prefix
  * coredns: remove unnecessary try_join! call
  * coredns: drop pointless name var
  * serve: read nameservers once
  * replace signal-hook with tokio::signal
  * serve: fix broken error logging
  * server: improve parent &lt;-&gt; child error handling
  * add some basic perf check script
  * fix(deps): update rust crate tokio to 1.39.0
  * coredns: create reply_ip() function
  * coredns: match dns type explicitly
  * server: use only one tokio runtime
  * coredns: improve indentation for process_message()
  * coredns: move upstream resolvers detection later
  * coredns: do not clone sender
  * read AARDVARK_NO_PROXY once
  * coredns: move main code out of select!
  * coredns: fix "name" naming
  * coredns: remove unused forward_addr/port
  * coredns: fix handling of dns search domain
  * coredns: rework PTR lookup flow
  * fix(deps): update rust crate tokio to 1.38.1
  * [skip-ci] TMT: Reorg upstream tests for downstream reusability
  * [skip-ci] Packit: use `packages: [aardvark-dns-fedora]` for podman-next builds
  * Be sure to have at least Epoch 2 to preserve upgrade path in c10s.
  * fix(deps): update rust crate log to 0.4.22
  * [CI:BUILD] rpm: Update Rust macro usage
  * fix(deps): update rust crate tokio to 1.38.0
  * Bump to 1.12.0-dev</changelog>
  <changelog author="dcermak@suse.com" date="1725451200">- Update to version 1.12.2:
  * Release v1.12.2
  * Update release notes for 1.12.2
  * coredns: work on tcp requests concurrently
  * tcp: add timeout to connection (fixes bsc#1230153 / CVE-2024-8418)
  * cirrus: update branch names</changelog>
  <changelog author="danish.prakash@suse.com" date="1730289600">- Update to version 1.13.0:
  * Release v1.13.0
  * Update release notes for 1.13.0
  * test: use dnsmasq over slirp4netns
  * coredns: forward names with no ndots as well
  * run cargo update
  * fix(deps): update rust crate tokio to 1.41.0
  * fix(deps): update rust crate flume to 0.11.1
  * fix(deps): update rust crate libc to 0.2.161
  * fix(deps): update rust crate libc to 0.2.160
  * fix(deps): update rust crate clap to ~4.5.20
  * cirrus: check for msrv build
  * define a MSRV policy
  * chore(deps): update dependency containers/automation_images to v20241010
  * [skip-ci] Packit: constrain koji job to the fedora package
  * dns: limit to 3 resolvers and use better timeout for them
  * OWNERS file audit and update
  * fix new lint error with rust 1.81
  * test: make them pass on RHEL/Centos Stream 9
  * Packit: disable F39 and separate out ELN
  * serve: parse resolv.conf ourselves
  * fix(deps): update rust crate libc to 0.2.159
  * coredns: allow host lookup of names
  * backend: return simple Vector in lookup()
  * coredns: use a TTL of 0 for our names
  * coredns: do not clonse the Record
  * netavark_cache_groom.sh: fix wrong branch
  * Packit: add sidetag to release with netavark
  * coredns: work on tcp requests concurrently
  * tcp: add timeout to connection
  * fix(deps): update rust crate tokio to 1.40.0
  * fix(deps): update rust crate libc to 0.2.158
  * chore(deps): update dependency containers/automation_images to v20240821
  * fix(deps): update rust crate tokio to 1.39.3
  * fix(deps): update rust crate libc to 0.2.156
  * Bump main version back to v1.13.0-dev</changelog>
  <changelog author="madhankumar.chellamuthu@suse.com" date="1731412800">- Update to version 1.13.1:
  * Release v1.13.1
  * release notes for 1.13.1
  * test: make jq query work on centos stream 9
  * [skip-ci] Packit/TMT: idiomatic repo addition
  * [skip-ci] Packit: Remove epel jobs
  * tmt: install dnsmasq dependency
  * [skip-ci] Packit: disable osh-diff-scan
  * [skip-ci] Packit: enable c9s downstream updates
  * [skip-ci] TMT: install builddeps downstream
  * [skip-ci] RPM: cleanup changelog conditionals
  * support ipv6 link local addresses in resolv.conf
  * cirrus: update DEST_BRANCH</changelog>
</package>
<package pkgid="d72cff868f0fb9f2c3ce4fbf3ab238d07aa1d0c86af3045071bfb929d34b661ef2cec08f58a73decf137485166a9ab93310b59b99d188c6e208146e28e3d69cd" name="aardvark-dns" arch="x86_64">
  <version epoch="0" ver="1.13.1" rel="1.1"/>
  <changelog author="Danish Prakash &lt;danish.prakash@suse.com&gt;" date="1676376000">- First version of aardvark-dns</changelog>
  <changelog author="Danish Prakash &lt;danish.prakash@suse.com&gt;" date="1679054400">- Fix libexecdir issue on Leap and SLE</changelog>
  <changelog author="danish.prakash@suse.com" date="1681300800">- Update to version 1.6.0:
  * v1.6.0 release
  * Update release notes for v1.6.0
  * fix(deps): update rust crate tokio to 1.27.0
  * use lower TTL for contianer entries
  * fix(deps): update rust crate syslog to ^6.0.1
  * fix(deps): update rust crate futures-util to 0.3.28
  * chore(deps): update dependency containers/automation_images to v20230330
  * Disable Dependabot in favor of Renovate
  * chore(deps): update dependency containers/automation_images to v20230320
  * build(deps): bump futures-util from 0.3.26 to 0.3.27
  * [CI:BUILD] Packit: trigger builds on commit to main branch
  * build(deps): bump anyhow from 1.0.68 to 1.0.70
  * fix lint issue with new rust version 1.68
  * Cirrus: Update to newer CI VM images
  * build(deps): bump chrono from 0.4.23 to 0.4.24
  * build(deps): bump libc from 0.2.139 to 0.2.140
  * build(deps): bump async-broadcast from 0.5.0 to 0.5.1
  * build(deps): bump signal-hook from 0.3.14 to 0.3.15
  * build(deps): bump futures-util from 0.3.25 to 0.3.26
  * build(deps): bump tokio from 1.25.0 to 1.26.0
  * [CI:DOCS] Clarify packit related comments
  * [CI:BUILD] Packit: initial enablement
  * Allow custom cargo binary path
  * Switch to explicit platform list for `cargo vendor-filterer`
  * bump to v1.6.0-dev
  * Add renovate.json5
  * Cirrus: Groom rust cache before updating</changelog>
  <changelog author="danish.prakash@suse.com" date="1688385600">- Update to version 1.7.0:
  * release v1.7.0
  * Update release notes for v1.7.0
  * fix(deps): update rust crate tokio to 1.29.0
  * fix(deps): update rust crate clap to 4.3.8
  * fix(deps): update rust crate clap to 4.3.5
  * run cargo update
  * [CI:BUILD] Packit: add Fedora downstream tasks
  * fix(deps): update rust crate clap to 4.3.4
  * chore(deps): update dependency containers/automation_images to v20230614
  * fix(deps): update rust crate clap to 4.3.3
  * fix(deps): update rust crate log to 0.4.19
  * fix(deps): update rust crate clap to 4.3.2
  * fix(deps): update rust crate clap to 4.3.1
  * cirrus: remove verify_vendor task
  * chore(deps): update dependency containers/automation_images to v20230601
  * fix(deps): update rust crate trust-dns-server to 0.22.1
  * chore(deps): update rust crate chrono to 0.4.26
  * fix(deps): update rust crate tokio to 1.28.2
  * fix(deps): update rust crate log to 0.4.18
  * chore(deps): update rust crate chrono to 0.4.25
  * fix(deps): update rust crate clap to 4.3.0
  * chore(deps): update dependency containers/automation_images to v20230517
  * fix(deps): update rust crate tokio to 1.28.1
  * chore(deps): update dependency containers/automation_images to v20230426
  * fix(deps): update rust crate clap to 4.2.7
  * fix(deps): update rust crate anyhow to 1.0.71
  * fix typo in makefile
  * fix(deps): update rust crate tokio to 1.28.0
  * fix(deps): update rust crate clap to 4.2.5
  * fix(deps): update rust crate syslog to ^6.1.0
  * fix(deps): update rust crate clap to 4.2.4
  * fix(deps): update rust crate clap to 4.2.3
  * fix(deps): update rust crate clap to v4
  * chore(deps): update dependency containers/automation_images to v20230405
  * bump to v1.7.0-dev</changelog>
  <changelog author="Danish Prakash &lt;danish.prakash@suse.com&gt;" date="1689076800">- Disable restricting builds only for tier1 platforms
  i.e. only for x86_64 and aarch64 and enable for all.</changelog>
  <changelog author="danish.prakash@suse.com" date="1695902400">- Update to version 1.8.0:
  * Release v1.8.0
  * update release notes for v1.8.0
  * run cargo update
  * Packit: switch to @containers/packit-build team for copr failure notification comments
  * [CI:BUILD] Packit: tag @lsm5 on copr build failures
  * chore(deps): update rust crate chrono to 0.4.31
  * cargo: bump chrono to 0.4.30
  * test: IPv6 format is changed in v1.72.0
  * bump nix to 0.27.1
  * vendor: bump trust_dns_proto and trust_dns_client to 0.23.0
  * fix(deps): update rust crate trust-dns-server to 0.23.0
  * [CI:BUILD] rpm: spdx compatible license field
  * fix(deps): update rust crate anyhow to 1.0.75
  * fix(deps): update rust crate tokio to 1.32.0
  * chore(deps): update dependency containers/automation_images to v20230816
  * fix(deps): update rust crate tokio to 1.31.0
  * fix(deps): update rust crate anyhow to 1.0.74
  * fix(deps): update rust crate anyhow to 1.0.73
  * fix(deps): update rust crate log to 0.4.20
  * chore(deps): update dependency containers/automation_images to v20230809
  * fix(deps): update rust crate tokio to 1.30.0
  * fix(deps): update rust crate clap to 4.3.21
  * packit: Build PRs into default packit COPRs
  * chore(deps): update dependency containers/automation_images to v20230807
  * fix(deps): update rust crate anyhow to 1.0.72
  * fix(deps): update rust crate signal-hook to 0.3.17
  * fix(deps): update rust crate clap to 4.3.19
  * fix(deps): update rust crate clap to 4.3.15
  * fix(deps): update rust crate signal-hook to 0.3.16
  * [CI:BUILD] Packit: remove pre-sync action
  * fix(deps): update rust crate clap to 4.3.11
  * fix(deps): update rust crate tokio to 1.29.1
  * fix(deps): update rust crate clap to 4.3.10
  * [CI:BUILD] RPM: cleanup spec and fix eln builds
  * bump to v1.8.0-devel</changelog>
  <changelog author="danish.prakash@suse.com" date="1701345600">- Update to version 1.9.0:
  * Release v1.9.0
  * v1.9.0 Update release notes
  * run cargo update
  * chore(deps): update dependency containers/automation_images to v20231116
  * fix(deps): update rust crate tokio to 1.34.0
  * fix(deps): update rust crate async-broadcast to 0.6.0
  * update trust-dns to hickory
  * fix(deps): update rust crate futures-util to 0.3.29
  * fix(deps): update rust crate trust-dns-server to 0.23.2
  * fix(deps): update rust crate trust-dns-proto to 0.23.2
  * tmt: initial enablement
  * aardvark main: change error reporting
  * chore(deps): update dependency containers/automation_images to v20231004
  * fix(deps): update rust crate trust-dns-proto to 0.23.1
  * fix(deps): update rust crate trust-dns-client to 0.23.1
  * clippy: some format fixes
  * fix(deps): update rust crate tokio to 1.33.0
  * Bump to v1.9.0-dev</changelog>
  <changelog author="danish.prakash@suse.com" date="1706184000">- Update to version 1.10.0:
  * Release 1.10.0
  * Release notes for 1.10.0
  * chore(deps): update rust crate chrono to 0.4.32
  * chore(deps): update dependency containers/automation_images to v20240102
  * fix(deps): update rust crate futures-util to 0.3.30
  * fix(deps): update rust crate anyhow to 1.0.79
  * fix(deps): update rust crate tokio to 1.35.1
  * chore(deps): update dependency containers/automation_images to v20231208
  * fix(deps): update rust crate tokio to 1.35.0
  * fix duplicated IP CI flake
  * server: remove unused kill switch
  * fix(deps): update rust crate clap to ~4.4.10
  * Bump working version to v1.10.0-dev</changelog>
  <changelog author="danish.prakash@suse.com" date="1717416000">- Remove redundant source: cargo_config
- Update to version 1.11.0:
  * Release v1.11.0
  * v1.11.0 release notes
  * run cargo update
  * chore(deps): update dependency containers/automation_images to v20240529
  * Internal networks cannot make external DNS requests
  * fix(deps): update rust crate anyhow to 1.0.86
  * fix(deps): update rust crate nix to 0.29.0
  * [skip-ci] RPM: use default __cargo macro across all envs
  * chore(deps): update dependency containers/automation_images to v20240513
  * fix(deps): update rust crate anyhow to 1.0.83
  * [skip-ci] Packit: separate `packages` key for rhel jobs
  * fix(deps): update rust crate libc to 0.2.154
  * [skip-ci] Packit: enable rhel10, c10s tests and c10s downstream sync
  * [skip-ci] Packit: Remove EL8 jobs
  * fix(deps): update rust crate syslog to ^6.1.1
  * fix reverse ipv6 lookup test flake
  * fix(deps): update hickory-dns monorepo to 0.24.1
  * chore(deps): update rust crate chrono to 0.4.38
  * Don't tear down all server threads on SIGHUP (bsc#1224167)
  * fix(deps): update rust crate anyhow to 1.0.82
  * fix(deps): update rust crate tokio to 1.37.0
  * Update to nix-0.28.0
  * update chrono package
  * chore(deps): update dependency containers/automation_images to v20240320
  * fix(deps): update rust crate anyhow to 1.0.81
  * tests: check queried domain name in reverse lookup tests
  * fix: set name for answers in reverse lookups
  * chore: fix typo in runner script
  * chore: fix log message when doing reverse lookup
  * fix(deps): update rust crate log to 0.4.21
  * fix(deps): update rust crate anyhow to 1.0.80
  * chore(deps): update rust crate chrono to 0.4.34
  * fix(deps): update rust crate async-broadcast to 0.7.0
  * fix(deps): update rust crate tokio to 1.36.0
  * [CI:DOCS] Packit: disable bodhi tasks
  * chore(deps): update rust crate chrono to 0.4.33
  * Bump to 1.11.0-dev</changelog>
  <changelog author="Danish Prakash &lt;danish.prakash@suse.com&gt;" date="1721995200">- rust &gt;= 1.70 is required to build more recent versions of this
  package. Also, BuildRequire cargo+rust to prevent conflicts with
  `cargo-packaging`.</changelog>
  <changelog author="danish.prakash@suse.com" date="1723032000">- Update to version 1.12.1:
  * Release v1.12.1
  * Updated release notes for 1.12.1
  * Change av cargo categories
  * Bump to 1.13.0-dev
  * Release 1.12.0
  * Release notes for 1.12
  * config: ignore enoent errors while reading configs
  * run cargo update
  * update upsteam resolvers on each refresh
  * fix(deps): update rust crate syslog to v7
  * fix(deps): update rust crate tokio to 1.39.2
  * add tcp support for forwarding
  * add tcp listening support
  * test: add new test to check for startup error
  * return bind error to caller on first start
  * add our own error type and use it over anyhow
  * server: use anyhow to wrap parse_configs error
  * server: split out main loop into new function
  * main: remove aardvark-dns error prefix
  * coredns: remove unnecessary try_join! call
  * coredns: drop pointless name var
  * serve: read nameservers once
  * replace signal-hook with tokio::signal
  * serve: fix broken error logging
  * server: improve parent &lt;-&gt; child error handling
  * add some basic perf check script
  * fix(deps): update rust crate tokio to 1.39.0
  * coredns: create reply_ip() function
  * coredns: match dns type explicitly
  * server: use only one tokio runtime
  * coredns: improve indentation for process_message()
  * coredns: move upstream resolvers detection later
  * coredns: do not clone sender
  * read AARDVARK_NO_PROXY once
  * coredns: move main code out of select!
  * coredns: fix "name" naming
  * coredns: remove unused forward_addr/port
  * coredns: fix handling of dns search domain
  * coredns: rework PTR lookup flow
  * fix(deps): update rust crate tokio to 1.38.1
  * [skip-ci] TMT: Reorg upstream tests for downstream reusability
  * [skip-ci] Packit: use `packages: [aardvark-dns-fedora]` for podman-next builds
  * Be sure to have at least Epoch 2 to preserve upgrade path in c10s.
  * fix(deps): update rust crate log to 0.4.22
  * [CI:BUILD] rpm: Update Rust macro usage
  * fix(deps): update rust crate tokio to 1.38.0
  * Bump to 1.12.0-dev</changelog>
  <changelog author="dcermak@suse.com" date="1725451200">- Update to version 1.12.2:
  * Release v1.12.2
  * Update release notes for 1.12.2
  * coredns: work on tcp requests concurrently
  * tcp: add timeout to connection (fixes bsc#1230153 / CVE-2024-8418)
  * cirrus: update branch names</changelog>
  <changelog author="danish.prakash@suse.com" date="1730289600">- Update to version 1.13.0:
  * Release v1.13.0
  * Update release notes for 1.13.0
  * test: use dnsmasq over slirp4netns
  * coredns: forward names with no ndots as well
  * run cargo update
  * fix(deps): update rust crate tokio to 1.41.0
  * fix(deps): update rust crate flume to 0.11.1
  * fix(deps): update rust crate libc to 0.2.161
  * fix(deps): update rust crate libc to 0.2.160
  * fix(deps): update rust crate clap to ~4.5.20
  * cirrus: check for msrv build
  * define a MSRV policy
  * chore(deps): update dependency containers/automation_images to v20241010
  * [skip-ci] Packit: constrain koji job to the fedora package
  * dns: limit to 3 resolvers and use better timeout for them
  * OWNERS file audit and update
  * fix new lint error with rust 1.81
  * test: make them pass on RHEL/Centos Stream 9
  * Packit: disable F39 and separate out ELN
  * serve: parse resolv.conf ourselves
  * fix(deps): update rust crate libc to 0.2.159
  * coredns: allow host lookup of names
  * backend: return simple Vector in lookup()
  * coredns: use a TTL of 0 for our names
  * coredns: do not clonse the Record
  * netavark_cache_groom.sh: fix wrong branch
  * Packit: add sidetag to release with netavark
  * coredns: work on tcp requests concurrently
  * tcp: add timeout to connection
  * fix(deps): update rust crate tokio to 1.40.0
  * fix(deps): update rust crate libc to 0.2.158
  * chore(deps): update dependency containers/automation_images to v20240821
  * fix(deps): update rust crate tokio to 1.39.3
  * fix(deps): update rust crate libc to 0.2.156
  * Bump main version back to v1.13.0-dev</changelog>
  <changelog author="madhankumar.chellamuthu@suse.com" date="1731412800">- Update to version 1.13.1:
  * Release v1.13.1
  * release notes for 1.13.1
  * test: make jq query work on centos stream 9
  * [skip-ci] Packit/TMT: idiomatic repo addition
  * [skip-ci] Packit: Remove epel jobs
  * tmt: install dnsmasq dependency
  * [skip-ci] Packit: disable osh-diff-scan
  * [skip-ci] Packit: enable c9s downstream updates
  * [skip-ci] TMT: install builddeps downstream
  * [skip-ci] RPM: cleanup changelog conditionals
  * support ipv6 link local addresses in resolv.conf
  * cirrus: update DEST_BRANCH</changelog>
</package>
<package pkgid="77dfc6fccb8797fe60acf1c7dcc3b7e12d5b68bfbc76317b3247d2c19f89c6854bf1cf0afc4117edaa36cc71365d8696d970edada7aba56c55a5fe9852da37ae" name="accessibility-inspector" arch="src">
  <version epoch="0" ver="24.08.3" rel="1.1"/>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1710504000">- Init accessibility-inspector</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1716120000">- Update to 24.05.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.0/
- No code change since 24.04.80</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1718193600">- Update to 24.05.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.1/
- No code change since 24.05.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1719921600">- Update to 24.05.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.2/
- No code change since 24.05.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1724068800">- Update to 24.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.0/
- Changes since 24.05.2:
  * Fix build without deprecated method
  * Fix Qt version
  * Use 6.7 image
  * Strickout invisible items</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1725969600">- Update to 24.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.1/
- No code change since 24.08.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1728388800">- Update to 24.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.2/
- No code change since 24.08.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1730808000">- Update to 24.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.3/
- No code change since 24.08.2</changelog>
</package>
<package pkgid="34caa22b8fdf6c4449b99be476d938078440b4ed45f0350b87144b26eb69a286562621b9f5d8cd4dd018d6ce16ac238bf3708a85f44c6ecc314bf26a33c2649e" name="accessibility-inspector" arch="x86_64">
  <version epoch="0" ver="24.08.3" rel="1.1"/>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1710504000">- Init accessibility-inspector</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1716120000">- Update to 24.05.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.0/
- No code change since 24.04.80</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1718193600">- Update to 24.05.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.1/
- No code change since 24.05.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1719921600">- Update to 24.05.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.2/
- No code change since 24.05.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1724068800">- Update to 24.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.0/
- Changes since 24.05.2:
  * Fix build without deprecated method
  * Fix Qt version
  * Use 6.7 image
  * Strickout invisible items</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1725969600">- Update to 24.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.1/
- No code change since 24.08.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1728388800">- Update to 24.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.2/
- No code change since 24.08.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1730808000">- Update to 24.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.3/
- No code change since 24.08.2</changelog>
</package>
<package pkgid="15b243ccb586b20e625150cb56b80e51b721429e2199b76aaeaf85668f3bef540bcf95d260af0ebaf45e908be7f3f674d990086de4deb5e5dc5ef4dc2a0b117f" name="accessibility-inspector-debuginfo" arch="x86_64">
  <version epoch="0" ver="24.08.3" rel="1.1"/>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1710504000">- Init accessibility-inspector</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1716120000">- Update to 24.05.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.0/
- No code change since 24.04.80</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1718193600">- Update to 24.05.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.1/
- No code change since 24.05.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1719921600">- Update to 24.05.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.2/
- No code change since 24.05.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1724068800">- Update to 24.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.0/
- Changes since 24.05.2:
  * Fix build without deprecated method
  * Fix Qt version
  * Use 6.7 image
  * Strickout invisible items</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1725969600">- Update to 24.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.1/
- No code change since 24.08.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1728388800">- Update to 24.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.2/
- No code change since 24.08.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1730808000">- Update to 24.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.3/
- No code change since 24.08.2</changelog>
</package>
<package pkgid="f8adecd8e4cd930cab2764e55db77e4c75b3190e1703adfa01cea0f4268f1f3ac9d5f0508b583f811d157f25b20a2e2da5ed89e8b2568fee21cdb049f55db96c" name="accessibility-inspector-debugsource" arch="x86_64">
  <version epoch="0" ver="24.08.3" rel="1.1"/>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1710504000">- Init accessibility-inspector</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1716120000">- Update to 24.05.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.0/
- No code change since 24.04.80</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1718193600">- Update to 24.05.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.1/
- No code change since 24.05.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1719921600">- Update to 24.05.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.2/
- No code change since 24.05.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1724068800">- Update to 24.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.0/
- Changes since 24.05.2:
  * Fix build without deprecated method
  * Fix Qt version
  * Use 6.7 image
  * Strickout invisible items</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1725969600">- Update to 24.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.1/
- No code change since 24.08.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1728388800">- Update to 24.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.2/
- No code change since 24.08.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1730808000">- Update to 24.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.3/
- No code change since 24.08.2</changelog>
</package>
<package pkgid="6a36ecf618fcdfaefd125e47e710b2492d1f5abfe1eaad2b107c2215e3286650ff74491cbb4ef7e4131ebfdba3a7ff45ab00d319e7572012fdba1eac264f8faa" name="accessibility-inspector-lang" arch="noarch">
  <version epoch="0" ver="24.08.3" rel="1.1"/>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1710504000">- Init accessibility-inspector</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1716120000">- Update to 24.05.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.0/
- No code change since 24.04.80</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1718193600">- Update to 24.05.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.1/
- No code change since 24.05.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1719921600">- Update to 24.05.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.2/
- No code change since 24.05.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1724068800">- Update to 24.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.0/
- Changes since 24.05.2:
  * Fix build without deprecated method
  * Fix Qt version
  * Use 6.7 image
  * Strickout invisible items</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1725969600">- Update to 24.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.1/
- No code change since 24.08.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1728388800">- Update to 24.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.2/
- No code change since 24.08.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1730808000">- Update to 24.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.3/
- No code change since 24.08.2</changelog>
</package>
<package pkgid="8810d4144116a4fd5f1c0a067c23499c4c9fb450e5b98551c1947d50841c7a215d625c2f3a62dcf27c9778945d6ddd8db20de0c19a27e1fc1148281e70bc549e" name="actuated-cli" arch="src">
  <version epoch="0" ver="0.2.10" rel="1.1"/>
  <changelog author="Johannes Kastl &lt;johannes.kastl@ars.de&gt;" date="1727352000">- new package actuated-cli: CLI for the actuated self-hosted runner
  project</changelog>
  <changelog author="opensuse_buildservice@ojkastl.de" date="1730376000">- Update to version 0.2.8:
  * Add ETA to running jobs</changelog>
  <changelog author="opensuse_buildservice@ojkastl.de" date="1731412800">- Update to version 0.2.9:
  * Update message
  * Improve error handling for metering command
  * Bind command to root
  * Update vendor
  * Add metering command</changelog>
  <changelog author="opensuse_buildservice@ojkastl.de" date="1731412801">- Update to version 0.2.10:
  * Show a summary of jobs</changelog>
</package>
<package pkgid="0cea8efd1c3dbd79c9e3baafc4b509f7087c962b197cc244aca6f114e10ec673072a61c9c144050b5beb2b88ac8fc62db7f530a8e20dd1f045eecb9cb3e6e2bd" name="actuated-cli" arch="x86_64">
  <version epoch="0" ver="0.2.10" rel="1.1"/>
  <changelog author="Johannes Kastl &lt;johannes.kastl@ars.de&gt;" date="1727352000">- new package actuated-cli: CLI for the actuated self-hosted runner
  project</changelog>
  <changelog author="opensuse_buildservice@ojkastl.de" date="1730376000">- Update to version 0.2.8:
  * Add ETA to running jobs</changelog>
  <changelog author="opensuse_buildservice@ojkastl.de" date="1731412800">- Update to version 0.2.9:
  * Update message
  * Improve error handling for metering command
  * Bind command to root
  * Update vendor
  * Add metering command</changelog>
  <changelog author="opensuse_buildservice@ojkastl.de" date="1731412801">- Update to version 0.2.10:
  * Show a summary of jobs</changelog>
</package>
<package pkgid="bb7aa9c477001a4851d14362ce6400ac790812eded8a59240c20b4bbe891ccc8270049863dc7c948cf40ba9abb23949eb7ca1c9fc3b9eddca842b871cfec3dc1" name="actuated-cli-debuginfo" arch="x86_64">
  <version epoch="0" ver="0.2.10" rel="1.1"/>
  <changelog author="Johannes Kastl &lt;johannes.kastl@ars.de&gt;" date="1727352000">- new package actuated-cli: CLI for the actuated self-hosted runner
  project</changelog>
  <changelog author="opensuse_buildservice@ojkastl.de" date="1730376000">- Update to version 0.2.8:
  * Add ETA to running jobs</changelog>
  <changelog author="opensuse_buildservice@ojkastl.de" date="1731412800">- Update to version 0.2.9:
  * Update message
  * Improve error handling for metering command
  * Bind command to root
  * Update vendor
  * Add metering command</changelog>
  <changelog author="opensuse_buildservice@ojkastl.de" date="1731412801">- Update to version 0.2.10:
  * Show a summary of jobs</changelog>
</package>
<package pkgid="c3649996dac1648329baa5620dc7b4543798d56644bbe4836c1b60605c72056761e618c536c6127dc5888ea66bc16adebd600d2fab29df9433ffbe51c85ceaaf" name="ade" arch="src">
  <version epoch="0" ver="0.1.2d" rel="2.0.2.1.sr20241103"/>
  <changelog author="Stefan Br&#xFC;ns &lt;stefan.bruens@rwth-aachen.de&gt;" date="1562068800">- Initial package version 0.1.1d</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1566820800">- Remove pointless empty scriptlets</changelog>
  <changelog author="Stefan Br&#xFC;ns &lt;stefan.bruens@rwth-aachen.de&gt;" date="1568116800">- Update to version 0.1.1f
  * Fixed warning which happens with old compilers
    (which are still supported in OpenCV)
- Update to version 0.1.1e
  * Bugfix: Make size() method to return size_t value
- Drop upstream Silence_redundant-move_warning.patch
- Use -ffat-lto-objects to provide a proper static library.
- Run tests by default</changelog>
  <changelog author="Antonio Larrosa &lt;alarrosa@suse.com&gt;" date="1641988800">- Don't leave an empty %check section if building without tests</changelog>
  <changelog author="Stefan Br&#xFC;ns &lt;stefan.bruens@rwth-aachen.de&gt;" date="1663416000">- Update to version 0.1.2a
  * A minor version bump to fix OpenCV warnings on Windows
- Update to version 0.1.2
  * This release incorporates the community PRs for the past three
    years &amp; mainly serves for OpenCV new compilers support as
    requested.</changelog>
  <changelog author="Stefan Br&#xFC;ns &lt;stefan.bruens@rwth-aachen.de&gt;" date="1704110400">- Update to version 0.1.2d
  * Fix compilation with CXX standard set in parent project tree
- Update to version 0.1.2c
  * Fixed issues with CMake exported targets/configs as part
    of OpenVINO build
  * Fixed GCC13 support
- Update to version 0.1.2b
  * A minor version bump to fix warnings on Linux.</changelog>
  <changelog author="Atri Bhattacharya &lt;badshah400@gmail.com&gt;" date="1714046400">- Add ade-use-cxx14-standard.patch: Enforce CMAKE_CXX_STANDARD=14
  to allow building tests with gtest &gt;= 1.14.0 (gh#opencv/ade#44).</changelog>
</package>
<package pkgid="2d716aa06e7ea81df4510d12fb1aee7d6d4cbb479231700eddacaf76da398c091ecad8aa1769ef9fc60901e832126663122ba9584d35c7115a678d774cc732dc" name="ade" arch="src">
  <version epoch="0" ver="0.1.2d" rel="2.0.2.4.sr20241002"/>
  <changelog author="Stefan Br&#xFC;ns &lt;stefan.bruens@rwth-aachen.de&gt;" date="1562068800">- Initial package version 0.1.1d</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1566820800">- Remove pointless empty scriptlets</changelog>
  <changelog author="Stefan Br&#xFC;ns &lt;stefan.bruens@rwth-aachen.de&gt;" date="1568116800">- Update to version 0.1.1f
  * Fixed warning which happens with old compilers
    (which are still supported in OpenCV)
- Update to version 0.1.1e
  * Bugfix: Make size() method to return size_t value
- Drop upstream Silence_redundant-move_warning.patch
- Use -ffat-lto-objects to provide a proper static library.
- Run tests by default</changelog>
  <changelog author="Antonio Larrosa &lt;alarrosa@suse.com&gt;" date="1641988800">- Don't leave an empty %check section if building without tests</changelog>
  <changelog author="Stefan Br&#xFC;ns &lt;stefan.bruens@rwth-aachen.de&gt;" date="1663416000">- Update to version 0.1.2a
  * A minor version bump to fix OpenCV warnings on Windows
- Update to version 0.1.2
  * This release incorporates the community PRs for the past three
    years &amp; mainly serves for OpenCV new compilers support as
    requested.</changelog>
  <changelog author="Stefan Br&#xFC;ns &lt;stefan.bruens@rwth-aachen.de&gt;" date="1704110400">- Update to version 0.1.2d
  * Fix compilation with CXX standard set in parent project tree
- Update to version 0.1.2c
  * Fixed issues with CMake exported targets/configs as part
    of OpenVINO build
  * Fixed GCC13 support
- Update to version 0.1.2b
  * A minor version bump to fix warnings on Linux.</changelog>
  <changelog author="Atri Bhattacharya &lt;badshah400@gmail.com&gt;" date="1714046400">- Add ade-use-cxx14-standard.patch: Enforce CMAKE_CXX_STANDARD=14
  to allow building tests with gtest &gt;= 1.14.0 (gh#opencv/ade#44).</changelog>
</package>
<package pkgid="251801ce9c019a96a7f9473622587e2b50f267acc744f15b7371de99ef6d00dabed0dab49f0c0b5e111bd353cffe7115f7619b9acbc8be0870d05f3ebc47f6ce" name="ade-devel" arch="i586">
  <version epoch="0" ver="0.1.2d" rel="2.0.2.1.sr20241103"/>
  <changelog author="Stefan Br&#xFC;ns &lt;stefan.bruens@rwth-aachen.de&gt;" date="1562068800">- Initial package version 0.1.1d</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1566820800">- Remove pointless empty scriptlets</changelog>
  <changelog author="Stefan Br&#xFC;ns &lt;stefan.bruens@rwth-aachen.de&gt;" date="1568116800">- Update to version 0.1.1f
  * Fixed warning which happens with old compilers
    (which are still supported in OpenCV)
- Update to version 0.1.1e
  * Bugfix: Make size() method to return size_t value
- Drop upstream Silence_redundant-move_warning.patch
- Use -ffat-lto-objects to provide a proper static library.
- Run tests by default</changelog>
  <changelog author="Antonio Larrosa &lt;alarrosa@suse.com&gt;" date="1641988800">- Don't leave an empty %check section if building without tests</changelog>
  <changelog author="Stefan Br&#xFC;ns &lt;stefan.bruens@rwth-aachen.de&gt;" date="1663416000">- Update to version 0.1.2a
  * A minor version bump to fix OpenCV warnings on Windows
- Update to version 0.1.2
  * This release incorporates the community PRs for the past three
    years &amp; mainly serves for OpenCV new compilers support as
    requested.</changelog>
  <changelog author="Stefan Br&#xFC;ns &lt;stefan.bruens@rwth-aachen.de&gt;" date="1704110400">- Update to version 0.1.2d
  * Fix compilation with CXX standard set in parent project tree
- Update to version 0.1.2c
  * Fixed issues with CMake exported targets/configs as part
    of OpenVINO build
  * Fixed GCC13 support
- Update to version 0.1.2b
  * A minor version bump to fix warnings on Linux.</changelog>
  <changelog author="Atri Bhattacharya &lt;badshah400@gmail.com&gt;" date="1714046400">- Add ade-use-cxx14-standard.patch: Enforce CMAKE_CXX_STANDARD=14
  to allow building tests with gtest &gt;= 1.14.0 (gh#opencv/ade#44).</changelog>
</package>
<package pkgid="a4d69cd70555fd75d97cc145929a30dff6118f20c9f9d7a064d5c0c267634c46055ef83d1c4055ea88fe873ecc08c3b9032ffb80e53478b2b5bab45c120fdcae" name="ade-devel" arch="x86_64">
  <version epoch="0" ver="0.1.2d" rel="2.0.2.1.sr20241103"/>
  <changelog author="Stefan Br&#xFC;ns &lt;stefan.bruens@rwth-aachen.de&gt;" date="1562068800">- Initial package version 0.1.1d</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1566820800">- Remove pointless empty scriptlets</changelog>
  <changelog author="Stefan Br&#xFC;ns &lt;stefan.bruens@rwth-aachen.de&gt;" date="1568116800">- Update to version 0.1.1f
  * Fixed warning which happens with old compilers
    (which are still supported in OpenCV)
- Update to version 0.1.1e
  * Bugfix: Make size() method to return size_t value
- Drop upstream Silence_redundant-move_warning.patch
- Use -ffat-lto-objects to provide a proper static library.
- Run tests by default</changelog>
  <changelog author="Antonio Larrosa &lt;alarrosa@suse.com&gt;" date="1641988800">- Don't leave an empty %check section if building without tests</changelog>
  <changelog author="Stefan Br&#xFC;ns &lt;stefan.bruens@rwth-aachen.de&gt;" date="1663416000">- Update to version 0.1.2a
  * A minor version bump to fix OpenCV warnings on Windows
- Update to version 0.1.2
  * This release incorporates the community PRs for the past three
    years &amp; mainly serves for OpenCV new compilers support as
    requested.</changelog>
  <changelog author="Stefan Br&#xFC;ns &lt;stefan.bruens@rwth-aachen.de&gt;" date="1704110400">- Update to version 0.1.2d
  * Fix compilation with CXX standard set in parent project tree
- Update to version 0.1.2c
  * Fixed issues with CMake exported targets/configs as part
    of OpenVINO build
  * Fixed GCC13 support
- Update to version 0.1.2b
  * A minor version bump to fix warnings on Linux.</changelog>
  <changelog author="Atri Bhattacharya &lt;badshah400@gmail.com&gt;" date="1714046400">- Add ade-use-cxx14-standard.patch: Enforce CMAKE_CXX_STANDARD=14
  to allow building tests with gtest &gt;= 1.14.0 (gh#opencv/ade#44).</changelog>
</package>
<package pkgid="c459d216f6761b673083e4236cdd706015bebfa979b07caeb3750451bd2700edcd0c545aba90c2d77360e2a032cf1fc94790f8f6f7ebe207e7f5e29a29df9295" name="ade-devel" arch="i586">
  <version epoch="0" ver="0.1.2d" rel="2.0.2.4.sr20241002"/>
  <changelog author="Stefan Br&#xFC;ns &lt;stefan.bruens@rwth-aachen.de&gt;" date="1562068800">- Initial package version 0.1.1d</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1566820800">- Remove pointless empty scriptlets</changelog>
  <changelog author="Stefan Br&#xFC;ns &lt;stefan.bruens@rwth-aachen.de&gt;" date="1568116800">- Update to version 0.1.1f
  * Fixed warning which happens with old compilers
    (which are still supported in OpenCV)
- Update to version 0.1.1e
  * Bugfix: Make size() method to return size_t value
- Drop upstream Silence_redundant-move_warning.patch
- Use -ffat-lto-objects to provide a proper static library.
- Run tests by default</changelog>
  <changelog author="Antonio Larrosa &lt;alarrosa@suse.com&gt;" date="1641988800">- Don't leave an empty %check section if building without tests</changelog>
  <changelog author="Stefan Br&#xFC;ns &lt;stefan.bruens@rwth-aachen.de&gt;" date="1663416000">- Update to version 0.1.2a
  * A minor version bump to fix OpenCV warnings on Windows
- Update to version 0.1.2
  * This release incorporates the community PRs for the past three
    years &amp; mainly serves for OpenCV new compilers support as
    requested.</changelog>
  <changelog author="Stefan Br&#xFC;ns &lt;stefan.bruens@rwth-aachen.de&gt;" date="1704110400">- Update to version 0.1.2d
  * Fix compilation with CXX standard set in parent project tree
- Update to version 0.1.2c
  * Fixed issues with CMake exported targets/configs as part
    of OpenVINO build
  * Fixed GCC13 support
- Update to version 0.1.2b
  * A minor version bump to fix warnings on Linux.</changelog>
  <changelog author="Atri Bhattacharya &lt;badshah400@gmail.com&gt;" date="1714046400">- Add ade-use-cxx14-standard.patch: Enforce CMAKE_CXX_STANDARD=14
  to allow building tests with gtest &gt;= 1.14.0 (gh#opencv/ade#44).</changelog>
</package>
<package pkgid="deedeef1b3b16c26a260630fc53b4dc2e8ce01494286d01111d3e4e19130f592998c6ea7a04180b4d46a6121b5ad486a14c17744afd6ad51b3f5c96808da2f78" name="ade-devel" arch="x86_64">
  <version epoch="0" ver="0.1.2d" rel="2.0.2.4.sr20241002"/>
  <changelog author="Stefan Br&#xFC;ns &lt;stefan.bruens@rwth-aachen.de&gt;" date="1562068800">- Initial package version 0.1.1d</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1566820800">- Remove pointless empty scriptlets</changelog>
  <changelog author="Stefan Br&#xFC;ns &lt;stefan.bruens@rwth-aachen.de&gt;" date="1568116800">- Update to version 0.1.1f
  * Fixed warning which happens with old compilers
    (which are still supported in OpenCV)
- Update to version 0.1.1e
  * Bugfix: Make size() method to return size_t value
- Drop upstream Silence_redundant-move_warning.patch
- Use -ffat-lto-objects to provide a proper static library.
- Run tests by default</changelog>
  <changelog author="Antonio Larrosa &lt;alarrosa@suse.com&gt;" date="1641988800">- Don't leave an empty %check section if building without tests</changelog>
  <changelog author="Stefan Br&#xFC;ns &lt;stefan.bruens@rwth-aachen.de&gt;" date="1663416000">- Update to version 0.1.2a
  * A minor version bump to fix OpenCV warnings on Windows
- Update to version 0.1.2
  * This release incorporates the community PRs for the past three
    years &amp; mainly serves for OpenCV new compilers support as
    requested.</changelog>
  <changelog author="Stefan Br&#xFC;ns &lt;stefan.bruens@rwth-aachen.de&gt;" date="1704110400">- Update to version 0.1.2d
  * Fix compilation with CXX standard set in parent project tree
- Update to version 0.1.2c
  * Fixed issues with CMake exported targets/configs as part
    of OpenVINO build
  * Fixed GCC13 support
- Update to version 0.1.2b
  * A minor version bump to fix warnings on Linux.</changelog>
  <changelog author="Atri Bhattacharya &lt;badshah400@gmail.com&gt;" date="1714046400">- Add ade-use-cxx14-standard.patch: Enforce CMAKE_CXX_STANDARD=14
  to allow building tests with gtest &gt;= 1.14.0 (gh#opencv/ade#44).</changelog>
</package>
<package pkgid="7f2705f7ef9001cb9c65c53f2fba33ce8a37b47c0e6aa8f1b8a215bb4523525dec33fb7bc5e58b571ba4693afb86f3c5cb0c6a4d331f1b570bbd2369e088245c" name="aeon-check" arch="noarch">
  <version epoch="0" ver="1.0.2" rel="1.1"/>
  <changelog author="rbrown@suse.com" date="1722340800">- Initial packaging of version 1.0.1
  * Addresses boo#1228416</changelog>
  <changelog author="rbrown@suse.com" date="1730721600">- Update to version 1.0.2:
  * Use mktemp (boo#1228861)</changelog>
</package>
<package pkgid="62f92d8088ba6510b4b9ae5d9e1c0ef535e781f4936471d5652aaa8ceead9a7b4915f8c1526225e803aa8fe474cdcedfd51bfa74b87bae647b6959b66aefaad8" name="aeon-check" arch="src">
  <version epoch="0" ver="1.0.2" rel="1.1"/>
  <changelog author="rbrown@suse.com" date="1722340800">- Initial packaging of version 1.0.1
  * Addresses boo#1228416</changelog>
  <changelog author="rbrown@suse.com" date="1730721600">- Update to version 1.0.2:
  * Use mktemp (boo#1228861)</changelog>
</package>
<package pkgid="d592d9885b451f0779e0ae6e9e98160daf1b9a406f4d40ea04aba015159a89f6b076194d44a3b02a42061471a3295e28368d30c25b5b0ba1eb2c9c2414353e89" name="aisleriot" arch="src">
  <version epoch="0" ver="3.22.34" rel="1.1"/>
  <changelog author="Jonathan Brielmaier &lt;jbrielmaier@suse.de&gt;" date="1579176000">- Update to version 3.22.10:
  + Switch to the meson build system.
  + remove intltool marks from AppData file.
  + Update translations.
  + Fix reshuffling.
  + Some fixes and cleanups.
- Add patch:
  + add-guile-3.0-support.patch: Allows building with Guile 3.0.
- Switch download link, as release is not on download.gnome.org
- New build requires: gcc-c++, meson and pkgconfig(libxml-2.0)
- Remove no longer needed dependencies: intltool
- Switch to meson build system, build with the defaults and remove
  hack for configure script
- Install README.md
- Don't install ChangeLog anymore, as it got removed
- sol.appdata.xml was renamed to sol.metainfo.xml</changelog>
  <changelog author="Matthias Eliasson &lt;elimat@opensuse.org&gt;" date="1596110400">- Update to version 3.22.11:
  + Support for guile-3.0
  + Updated translations.
- Remove patch:
  * add-guile-3.0-support.patch: it was fixed upstream.
- Run spec-cleaner.</changelog>
  <changelog author="Matthias Eliasson &lt;elimat@opensuse.org&gt;" date="1610193600">- Update to version 2.22.14:
  + Updated translations
- Run spec-cleaner</changelog>
  <changelog author="Ferdinand Thiessen &lt;rpm@fthiessen.de&gt;" date="1618315200">- Update to version 3.22.15:
  + Updated translations</changelog>
  <changelog author="Ferdinand Thiessen &lt;rpm@fthiessen.de&gt;" date="1620734400">- Update to version 3.22.16:
  + Updated translations</changelog>
  <changelog author="Ferdinand Thiessen &lt;rpm@fthiessen.de&gt;" date="1625054400">- Update to version 3.22.17:
  + Updated translations</changelog>
  <changelog author="Ferdinand Thiessen &lt;rpm@fthiessen.de&gt;" date="1638532800">- Update to version 3.22.19:
  + Updated translations</changelog>
  <changelog author="Antoine Belvire &lt;antoine.belvire@opensuse.org&gt;" date="1642507200">- Update to version 3.22.20:
  + Updated translations</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1643803200">- Add 4bf6fcf5c8043adfcadd948e678cc68f150cc998.patch: Fix build
  with meson 0.61.0 and newer.</changelog>
  <changelog author="Ferdinand Thiessen &lt;rpm@fthiessen.de&gt;" date="1649851200">- Update to version 3.22.22
  + Add support for loading user-installed themes.
  + Fix build with guile 2.2.
  + Fix build with meson 0.60.
  + Updated translations.
- Drop 4bf6fcf5c8043adfcadd948e678cc68f150cc998.patch: fixed
  upstream.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1653998400">- Update to version 3.22.23:
  + Update card decks.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1668427200">- Update to version 3.22.26:
  + metainfo: pass validation.
  + Updated translations.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1670241600">- Update to version 3.22.27:
  + theme: qsvg: Flush surface before drawing to it with qt.
  + game: Provide a clean environment for each game.
  + Updated translations.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1683028800">- Update to version 3.22.29:
  + Updated translations.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1695643200">- Update to version 3.22.30:
  + Revert "game: Provide a clean environment for each game"
    (glgo#GNOME/aisleriot#961).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1697112000">- Replace lsb-release with distribution-release BuildRequires:
  aisleriot meson setup uses /etc/os-release to determine
  distribution.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1711627200">- Update to version 3.22.31:
  + Cards: Add multiple new card decks.
  + Updated translations.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1715688000">- Update to version 3.22.32:
  + Fixes and optimisations.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718107200">- Update to version 3.22.33:
  + README: Update user manual URI.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1731412800">- Update to version 3.22.34:
  + help: Grammar fixes
  + games: Add new game Australian Patience
  + eight-off:
  - Change double-click behavior to move to a reserve
  - Shrink distance between foundations and main area
  + cards:
  - Bug fix for neoclassical themes
  - New card theme Pixelangelo Compact
  - Tweak the king of kearts
  + Updated translations.</changelog>
</package>
<package pkgid="a51fb3654085ef313b1b18e03b582505095369710787a352613eef4074127261d1431f76c94c98cc77502401c1413b991c92b3f576b94945feaafe5ae89b3b66" name="aisleriot" arch="x86_64">
  <version epoch="0" ver="3.22.34" rel="1.1"/>
  <changelog author="Matthias Eliasson &lt;elimat@opensuse.org&gt;" date="1610193600">- Update to version 2.22.14:
  + Updated translations
- Run spec-cleaner</changelog>
  <changelog author="Ferdinand Thiessen &lt;rpm@fthiessen.de&gt;" date="1618315200">- Update to version 3.22.15:
  + Updated translations</changelog>
  <changelog author="Ferdinand Thiessen &lt;rpm@fthiessen.de&gt;" date="1620734400">- Update to version 3.22.16:
  + Updated translations</changelog>
  <changelog author="Ferdinand Thiessen &lt;rpm@fthiessen.de&gt;" date="1625054400">- Update to version 3.22.17:
  + Updated translations</changelog>
  <changelog author="Ferdinand Thiessen &lt;rpm@fthiessen.de&gt;" date="1638532800">- Update to version 3.22.19:
  + Updated translations</changelog>
  <changelog author="Antoine Belvire &lt;antoine.belvire@opensuse.org&gt;" date="1642507200">- Update to version 3.22.20:
  + Updated translations</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1643803200">- Add 4bf6fcf5c8043adfcadd948e678cc68f150cc998.patch: Fix build
  with meson 0.61.0 and newer.</changelog>
  <changelog author="Ferdinand Thiessen &lt;rpm@fthiessen.de&gt;" date="1649851200">- Update to version 3.22.22
  + Add support for loading user-installed themes.
  + Fix build with guile 2.2.
  + Fix build with meson 0.60.
  + Updated translations.
- Drop 4bf6fcf5c8043adfcadd948e678cc68f150cc998.patch: fixed
  upstream.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1653998400">- Update to version 3.22.23:
  + Update card decks.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1668427200">- Update to version 3.22.26:
  + metainfo: pass validation.
  + Updated translations.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1670241600">- Update to version 3.22.27:
  + theme: qsvg: Flush surface before drawing to it with qt.
  + game: Provide a clean environment for each game.
  + Updated translations.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1683028800">- Update to version 3.22.29:
  + Updated translations.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1695643200">- Update to version 3.22.30:
  + Revert "game: Provide a clean environment for each game"
    (glgo#GNOME/aisleriot#961).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1697112000">- Replace lsb-release with distribution-release BuildRequires:
  aisleriot meson setup uses /etc/os-release to determine
  distribution.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1711627200">- Update to version 3.22.31:
  + Cards: Add multiple new card decks.
  + Updated translations.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1715688000">- Update to version 3.22.32:
  + Fixes and optimisations.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718107200">- Update to version 3.22.33:
  + README: Update user manual URI.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1731412800">- Update to version 3.22.34:
  + help: Grammar fixes
  + games: Add new game Australian Patience
  + eight-off:
  - Change double-click behavior to move to a reserve
  - Shrink distance between foundations and main area
  + cards:
  - Bug fix for neoclassical themes
  - New card theme Pixelangelo Compact
  - Tweak the king of kearts
  + Updated translations.</changelog>
</package>
<package pkgid="f2bfbe54aa98918d5f35fa5054f2ce24ff5ae5efa71535782bd3d8b303bbee06f4771fbe424308eae4449c3f20e50c1dcc93d2f2fe46f28f6793fa402795da5a" name="aisleriot-debuginfo" arch="x86_64">
  <version epoch="0" ver="3.22.34" rel="1.1"/>
  <changelog author="Matthias Eliasson &lt;elimat@opensuse.org&gt;" date="1610193600">- Update to version 2.22.14:
  + Updated translations
- Run spec-cleaner</changelog>
  <changelog author="Ferdinand Thiessen &lt;rpm@fthiessen.de&gt;" date="1618315200">- Update to version 3.22.15:
  + Updated translations</changelog>
  <changelog author="Ferdinand Thiessen &lt;rpm@fthiessen.de&gt;" date="1620734400">- Update to version 3.22.16:
  + Updated translations</changelog>
  <changelog author="Ferdinand Thiessen &lt;rpm@fthiessen.de&gt;" date="1625054400">- Update to version 3.22.17:
  + Updated translations</changelog>
  <changelog author="Ferdinand Thiessen &lt;rpm@fthiessen.de&gt;" date="1638532800">- Update to version 3.22.19:
  + Updated translations</changelog>
  <changelog author="Antoine Belvire &lt;antoine.belvire@opensuse.org&gt;" date="1642507200">- Update to version 3.22.20:
  + Updated translations</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1643803200">- Add 4bf6fcf5c8043adfcadd948e678cc68f150cc998.patch: Fix build
  with meson 0.61.0 and newer.</changelog>
  <changelog author="Ferdinand Thiessen &lt;rpm@fthiessen.de&gt;" date="1649851200">- Update to version 3.22.22
  + Add support for loading user-installed themes.
  + Fix build with guile 2.2.
  + Fix build with meson 0.60.
  + Updated translations.
- Drop 4bf6fcf5c8043adfcadd948e678cc68f150cc998.patch: fixed
  upstream.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1653998400">- Update to version 3.22.23:
  + Update card decks.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1668427200">- Update to version 3.22.26:
  + metainfo: pass validation.
  + Updated translations.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1670241600">- Update to version 3.22.27:
  + theme: qsvg: Flush surface before drawing to it with qt.
  + game: Provide a clean environment for each game.
  + Updated translations.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1683028800">- Update to version 3.22.29:
  + Updated translations.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1695643200">- Update to version 3.22.30:
  + Revert "game: Provide a clean environment for each game"
    (glgo#GNOME/aisleriot#961).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1697112000">- Replace lsb-release with distribution-release BuildRequires:
  aisleriot meson setup uses /etc/os-release to determine
  distribution.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1711627200">- Update to version 3.22.31:
  + Cards: Add multiple new card decks.
  + Updated translations.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1715688000">- Update to version 3.22.32:
  + Fixes and optimisations.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718107200">- Update to version 3.22.33:
  + README: Update user manual URI.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1731412800">- Update to version 3.22.34:
  + help: Grammar fixes
  + games: Add new game Australian Patience
  + eight-off:
  - Change double-click behavior to move to a reserve
  - Shrink distance between foundations and main area
  + cards:
  - Bug fix for neoclassical themes
  - New card theme Pixelangelo Compact
  - Tweak the king of kearts
  + Updated translations.</changelog>
</package>
<package pkgid="7672b92d62a79a54eb2238e9171eaae23501aec4fa10bbb00b6e53fb3add15f35dcabb084636ede751a9cf0f58be76395927e17305ced10d44fe447c7968db99" name="aisleriot-debugsource" arch="x86_64">
  <version epoch="0" ver="3.22.34" rel="1.1"/>
  <changelog author="Matthias Eliasson &lt;elimat@opensuse.org&gt;" date="1610193600">- Update to version 2.22.14:
  + Updated translations
- Run spec-cleaner</changelog>
  <changelog author="Ferdinand Thiessen &lt;rpm@fthiessen.de&gt;" date="1618315200">- Update to version 3.22.15:
  + Updated translations</changelog>
  <changelog author="Ferdinand Thiessen &lt;rpm@fthiessen.de&gt;" date="1620734400">- Update to version 3.22.16:
  + Updated translations</changelog>
  <changelog author="Ferdinand Thiessen &lt;rpm@fthiessen.de&gt;" date="1625054400">- Update to version 3.22.17:
  + Updated translations</changelog>
  <changelog author="Ferdinand Thiessen &lt;rpm@fthiessen.de&gt;" date="1638532800">- Update to version 3.22.19:
  + Updated translations</changelog>
  <changelog author="Antoine Belvire &lt;antoine.belvire@opensuse.org&gt;" date="1642507200">- Update to version 3.22.20:
  + Updated translations</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1643803200">- Add 4bf6fcf5c8043adfcadd948e678cc68f150cc998.patch: Fix build
  with meson 0.61.0 and newer.</changelog>
  <changelog author="Ferdinand Thiessen &lt;rpm@fthiessen.de&gt;" date="1649851200">- Update to version 3.22.22
  + Add support for loading user-installed themes.
  + Fix build with guile 2.2.
  + Fix build with meson 0.60.
  + Updated translations.
- Drop 4bf6fcf5c8043adfcadd948e678cc68f150cc998.patch: fixed
  upstream.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1653998400">- Update to version 3.22.23:
  + Update card decks.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1668427200">- Update to version 3.22.26:
  + metainfo: pass validation.
  + Updated translations.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1670241600">- Update to version 3.22.27:
  + theme: qsvg: Flush surface before drawing to it with qt.
  + game: Provide a clean environment for each game.
  + Updated translations.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1683028800">- Update to version 3.22.29:
  + Updated translations.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1695643200">- Update to version 3.22.30:
  + Revert "game: Provide a clean environment for each game"
    (glgo#GNOME/aisleriot#961).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1697112000">- Replace lsb-release with distribution-release BuildRequires:
  aisleriot meson setup uses /etc/os-release to determine
  distribution.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1711627200">- Update to version 3.22.31:
  + Cards: Add multiple new card decks.
  + Updated translations.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1715688000">- Update to version 3.22.32:
  + Fixes and optimisations.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718107200">- Update to version 3.22.33:
  + README: Update user manual URI.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1731412800">- Update to version 3.22.34:
  + help: Grammar fixes
  + games: Add new game Australian Patience
  + eight-off:
  - Change double-click behavior to move to a reserve
  - Shrink distance between foundations and main area
  + cards:
  - Bug fix for neoclassical themes
  - New card theme Pixelangelo Compact
  - Tweak the king of kearts
  + Updated translations.</changelog>
</package>
<package pkgid="5c9b690b49323dd724b2e5e3f2bbe86ca25edeef430e4ea8907af91f7a8b8c1cf1eaee42b641eb99ac9b46713ad13d1a0085ca148629ed7ea114fc562d0d3cd2" name="aisleriot-lang" arch="noarch">
  <version epoch="0" ver="3.22.34" rel="1.1"/>
  <changelog author="Matthias Eliasson &lt;elimat@opensuse.org&gt;" date="1610193600">- Update to version 2.22.14:
  + Updated translations
- Run spec-cleaner</changelog>
  <changelog author="Ferdinand Thiessen &lt;rpm@fthiessen.de&gt;" date="1618315200">- Update to version 3.22.15:
  + Updated translations</changelog>
  <changelog author="Ferdinand Thiessen &lt;rpm@fthiessen.de&gt;" date="1620734400">- Update to version 3.22.16:
  + Updated translations</changelog>
  <changelog author="Ferdinand Thiessen &lt;rpm@fthiessen.de&gt;" date="1625054400">- Update to version 3.22.17:
  + Updated translations</changelog>
  <changelog author="Ferdinand Thiessen &lt;rpm@fthiessen.de&gt;" date="1638532800">- Update to version 3.22.19:
  + Updated translations</changelog>
  <changelog author="Antoine Belvire &lt;antoine.belvire@opensuse.org&gt;" date="1642507200">- Update to version 3.22.20:
  + Updated translations</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1643803200">- Add 4bf6fcf5c8043adfcadd948e678cc68f150cc998.patch: Fix build
  with meson 0.61.0 and newer.</changelog>
  <changelog author="Ferdinand Thiessen &lt;rpm@fthiessen.de&gt;" date="1649851200">- Update to version 3.22.22
  + Add support for loading user-installed themes.
  + Fix build with guile 2.2.
  + Fix build with meson 0.60.
  + Updated translations.
- Drop 4bf6fcf5c8043adfcadd948e678cc68f150cc998.patch: fixed
  upstream.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1653998400">- Update to version 3.22.23:
  + Update card decks.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1668427200">- Update to version 3.22.26:
  + metainfo: pass validation.
  + Updated translations.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1670241600">- Update to version 3.22.27:
  + theme: qsvg: Flush surface before drawing to it with qt.
  + game: Provide a clean environment for each game.
  + Updated translations.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1683028800">- Update to version 3.22.29:
  + Updated translations.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1695643200">- Update to version 3.22.30:
  + Revert "game: Provide a clean environment for each game"
    (glgo#GNOME/aisleriot#961).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1697112000">- Replace lsb-release with distribution-release BuildRequires:
  aisleriot meson setup uses /etc/os-release to determine
  distribution.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1711627200">- Update to version 3.22.31:
  + Cards: Add multiple new card decks.
  + Updated translations.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1715688000">- Update to version 3.22.32:
  + Fixes and optimisations.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718107200">- Update to version 3.22.33:
  + README: Update user manual URI.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1731412800">- Update to version 3.22.34:
  + help: Grammar fixes
  + games: Add new game Australian Patience
  + eight-off:
  - Change double-click behavior to move to a reserve
  - Shrink distance between foundations and main area
  + cards:
  - Bug fix for neoclassical themes
  - New card theme Pixelangelo Compact
  - Tweak the king of kearts
  + Updated translations.</changelog>
</package>
<package pkgid="c163d96c28381a76551026081303127f3ac0c1be0089ddd8a1e38af050871e442ae7a2fbff8b1c88fca9927a9a51c97a99b052edac5304b27f5e0b7aceaa1d31" name="aisleriot-themes" arch="noarch">
  <version epoch="0" ver="3.22.34" rel="1.1"/>
  <changelog author="Matthias Eliasson &lt;elimat@opensuse.org&gt;" date="1610193600">- Update to version 2.22.14:
  + Updated translations
- Run spec-cleaner</changelog>
  <changelog author="Ferdinand Thiessen &lt;rpm@fthiessen.de&gt;" date="1618315200">- Update to version 3.22.15:
  + Updated translations</changelog>
  <changelog author="Ferdinand Thiessen &lt;rpm@fthiessen.de&gt;" date="1620734400">- Update to version 3.22.16:
  + Updated translations</changelog>
  <changelog author="Ferdinand Thiessen &lt;rpm@fthiessen.de&gt;" date="1625054400">- Update to version 3.22.17:
  + Updated translations</changelog>
  <changelog author="Ferdinand Thiessen &lt;rpm@fthiessen.de&gt;" date="1638532800">- Update to version 3.22.19:
  + Updated translations</changelog>
  <changelog author="Antoine Belvire &lt;antoine.belvire@opensuse.org&gt;" date="1642507200">- Update to version 3.22.20:
  + Updated translations</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1643803200">- Add 4bf6fcf5c8043adfcadd948e678cc68f150cc998.patch: Fix build
  with meson 0.61.0 and newer.</changelog>
  <changelog author="Ferdinand Thiessen &lt;rpm@fthiessen.de&gt;" date="1649851200">- Update to version 3.22.22
  + Add support for loading user-installed themes.
  + Fix build with guile 2.2.
  + Fix build with meson 0.60.
  + Updated translations.
- Drop 4bf6fcf5c8043adfcadd948e678cc68f150cc998.patch: fixed
  upstream.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1653998400">- Update to version 3.22.23:
  + Update card decks.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1668427200">- Update to version 3.22.26:
  + metainfo: pass validation.
  + Updated translations.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1670241600">- Update to version 3.22.27:
  + theme: qsvg: Flush surface before drawing to it with qt.
  + game: Provide a clean environment for each game.
  + Updated translations.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1683028800">- Update to version 3.22.29:
  + Updated translations.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1695643200">- Update to version 3.22.30:
  + Revert "game: Provide a clean environment for each game"
    (glgo#GNOME/aisleriot#961).</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1697112000">- Replace lsb-release with distribution-release BuildRequires:
  aisleriot meson setup uses /etc/os-release to determine
  distribution.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1711627200">- Update to version 3.22.31:
  + Cards: Add multiple new card decks.
  + Updated translations.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1715688000">- Update to version 3.22.32:
  + Fixes and optimisations.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1718107200">- Update to version 3.22.33:
  + README: Update user manual URI.</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1731412800">- Update to version 3.22.34:
  + help: Grammar fixes
  + games: Add new game Australian Patience
  + eight-off:
  - Change double-click behavior to move to a reserve
  - Shrink distance between foundations and main area
  + cards:
  - Bug fix for neoclassical themes
  - New card theme Pixelangelo Compact
  - Tweak the king of kearts
  + Updated translations.</changelog>
</package>
<package pkgid="c3bb8e13ef02d244ef858d46f6cae2ba6c30d7797838c518d4e5f7cc3763151970d11fb663067454a97eb9c149323af858ec3d13fc5328d748498bd14ab9fbbf" name="akonadi" arch="src">
  <version epoch="0" ver="24.08.3" rel="1.1"/>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1699272000">- init akonadi. Renamed from akonadi-server</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1699272001">- Switch to sqlite by default for new setup</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1707480000">- Update to 24.01.95
  * https://kde.org/fr/announcements/megarelease/6/rc2/</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1708689600">- Update to 24.02.0
  * New feature release
- Changes since 24.01.95:
  * Fix infinite recursion in NotificationCollector
  * Monitor: restore Items from Ntf if we cannot fetch them
  * NotificationCollector: ignore notification with invalid or empty item set
  * Fix ChangeRecorder journal corruption due to qsizetype change in Qt6
  * Ensure query size in search manager remains less than 1000
  * Optimize imap set
  * Also skip MySQL tests on the FreeBSD CI
  * Disable PostgreSQL Akonadi tests on the CI</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1710676800">- Make sure the old translation package gets uninstalled (boo#1221515)</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1710849600">- Update to 24.02.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.1/
- Changes since 24.02.0:
  * Disable akonadi-db-migrator in 24.02</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1712664000">- Update to 24.02.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.2/
- Changes since 24.02.1:
  * Fix 485099: Clicking to add tags does nothing (kde#485099)
  * setHeaderGroup() changes the column count and filterAcceptsColumn()</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1714737600">- Update to 24.04.80
  * New feature release
- Too many changes since 24.02.2, only listing bugfixes:
  * Fix handling of UTC vs. local time for database engines (kde#483060)</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1716120000">- Update to 24.05.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.0/
- No code change since 24.04.80</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1718193600">- Update to 24.05.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.1/
- No code change since 24.05.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1719921600">- Update to 24.05.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.2/
- No code change since 24.05.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1724068800">- Update to 24.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.0/
- Too many changes to list here.</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1725969600">- Update to 24.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.1/
- Changes since 24.08.0:
  * Fix loading/saving resource config file in config dialog when
    using Akonadi Instances
  * Fix crash when query is evicted from QueryCache (kde#492547)</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1728388800">- Update to 24.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.2/
- Changes since 24.08.1:
  * Enable KCrash for resources</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1730808000">- Update to 24.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.3/
- No code change since 24.08.2</changelog>
</package>
<package pkgid="f5ae7d39c4baf9f808c5b7ae374cb2ece1ee56c76fab5c76357e35e1523cfa3a35b82cfc06d8535740315dbbf7f7914c33be539bfe4260ca7cf0d8c2ada18184" name="akonadi" arch="x86_64">
  <version epoch="0" ver="24.08.3" rel="1.1"/>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1699272000">- init akonadi. Renamed from akonadi-server</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1699272001">- Switch to sqlite by default for new setup</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1707480000">- Update to 24.01.95
  * https://kde.org/fr/announcements/megarelease/6/rc2/</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1708689600">- Update to 24.02.0
  * New feature release
- Changes since 24.01.95:
  * Fix infinite recursion in NotificationCollector
  * Monitor: restore Items from Ntf if we cannot fetch them
  * NotificationCollector: ignore notification with invalid or empty item set
  * Fix ChangeRecorder journal corruption due to qsizetype change in Qt6
  * Ensure query size in search manager remains less than 1000
  * Optimize imap set
  * Also skip MySQL tests on the FreeBSD CI
  * Disable PostgreSQL Akonadi tests on the CI</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1710676800">- Make sure the old translation package gets uninstalled (boo#1221515)</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1710849600">- Update to 24.02.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.1/
- Changes since 24.02.0:
  * Disable akonadi-db-migrator in 24.02</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1712664000">- Update to 24.02.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.2/
- Changes since 24.02.1:
  * Fix 485099: Clicking to add tags does nothing (kde#485099)
  * setHeaderGroup() changes the column count and filterAcceptsColumn()</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1714737600">- Update to 24.04.80
  * New feature release
- Too many changes since 24.02.2, only listing bugfixes:
  * Fix handling of UTC vs. local time for database engines (kde#483060)</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1716120000">- Update to 24.05.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.0/
- No code change since 24.04.80</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1718193600">- Update to 24.05.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.1/
- No code change since 24.05.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1719921600">- Update to 24.05.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.2/
- No code change since 24.05.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1724068800">- Update to 24.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.0/
- Too many changes to list here.</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1725969600">- Update to 24.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.1/
- Changes since 24.08.0:
  * Fix loading/saving resource config file in config dialog when
    using Akonadi Instances
  * Fix crash when query is evicted from QueryCache (kde#492547)</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1728388800">- Update to 24.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.2/
- Changes since 24.08.1:
  * Enable KCrash for resources</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1730808000">- Update to 24.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.3/
- No code change since 24.08.2</changelog>
</package>
<package pkgid="93e23c05fd127f40cc51980f32cb1b737e9ea9ecdf70b23b443cb62f5b0f49c1c411bd89de68ee1f7a8f4ff8862e55bc3a8d6688787213f47b38b3691d71d6e6" name="akonadi-apparmor" arch="x86_64">
  <version epoch="0" ver="24.08.3" rel="1.1"/>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1699272000">- init akonadi. Renamed from akonadi-server</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1699272001">- Switch to sqlite by default for new setup</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1707480000">- Update to 24.01.95
  * https://kde.org/fr/announcements/megarelease/6/rc2/</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1708689600">- Update to 24.02.0
  * New feature release
- Changes since 24.01.95:
  * Fix infinite recursion in NotificationCollector
  * Monitor: restore Items from Ntf if we cannot fetch them
  * NotificationCollector: ignore notification with invalid or empty item set
  * Fix ChangeRecorder journal corruption due to qsizetype change in Qt6
  * Ensure query size in search manager remains less than 1000
  * Optimize imap set
  * Also skip MySQL tests on the FreeBSD CI
  * Disable PostgreSQL Akonadi tests on the CI</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1710676800">- Make sure the old translation package gets uninstalled (boo#1221515)</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1710849600">- Update to 24.02.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.1/
- Changes since 24.02.0:
  * Disable akonadi-db-migrator in 24.02</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1712664000">- Update to 24.02.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.2/
- Changes since 24.02.1:
  * Fix 485099: Clicking to add tags does nothing (kde#485099)
  * setHeaderGroup() changes the column count and filterAcceptsColumn()</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1714737600">- Update to 24.04.80
  * New feature release
- Too many changes since 24.02.2, only listing bugfixes:
  * Fix handling of UTC vs. local time for database engines (kde#483060)</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1716120000">- Update to 24.05.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.0/
- No code change since 24.04.80</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1718193600">- Update to 24.05.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.1/
- No code change since 24.05.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1719921600">- Update to 24.05.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.2/
- No code change since 24.05.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1724068800">- Update to 24.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.0/
- Too many changes to list here.</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1725969600">- Update to 24.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.1/
- Changes since 24.08.0:
  * Fix loading/saving resource config file in config dialog when
    using Akonadi Instances
  * Fix crash when query is evicted from QueryCache (kde#492547)</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1728388800">- Update to 24.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.2/
- Changes since 24.08.1:
  * Enable KCrash for resources</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1730808000">- Update to 24.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.3/
- No code change since 24.08.2</changelog>
</package>
<package pkgid="782fa3e99cb55797285f027778cca66c71b11bc74262140ad5e921d8cc620b3bbb4250c0de08022f497071b5c7180dff2905d0545a3103362033e48edc115cd1" name="akonadi-calendar" arch="src">
  <version epoch="0" ver="24.08.3" rel="1.1"/>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1688472000">- Update to 23.04.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.04.3/
- No code change since 23.04.2</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1690891200">- Update to 23.07.80
  * New feature release
- Changes since 23.04.3:
  * Make sure to extract only email
  * Fix generate emails (don't create "foo" &lt;foo &lt;foo@kde.org&gt; &gt;)
  * Avoid too big dialogbox
  * Generate properties for CalendarSettings
  * Add Akonadi::CalendarUtils::displayName overload that takes ETM instead of ETMCalendar
  * Don't link twice against KF::Codecs
  * Add messagelib dependency
  * Sign/encrypt iTIP emails (kde#297956)
  * make free/busy invokable from QML
  * Fix platforms name
  * Remove the never set "MailTransport" setting
  * Remove CI 6 job. We will use kf6 branch for kf6 works
  * Simplify default mail transport code
  * Don't needlessly link against KIOWidgets
  * Add akonadi-mime dependency explicitly
  * Adapt to KMailTransportAkonadi being integrated into AkonadiMime
  * Expose missing kidentitymanagement
  * Add TodoModel (coming from eventviews)
  * Bump library version
  * Move SearchCollectionHelper to akonadi-calendar
  * Move CalendarSupport::createMimeData here
  * not export symbol of private methods
  * Add QCH support
  * Add missing lib
  * Use correct INSTALL_TARGETS_DEFAULT_ARGS</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1692014400">- Update to 23.07.90
  * New feature release
- Changes since 23.07.80:
  * Fix linking with self-built gpgmepp
  * Explicitly search for KPim{5,6}Libkleo</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1692532800">- Update to 23.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.0/
- No code change since 23.07.90</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1694520000">- Update to 23.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.1/
- Changes since 23.08.0:
  * Use correct identity when sending iTIP counter-proposal (kde#458524)</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1696939200">- Update to 23.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.2/
- No code change since 23.08.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1699358400">- Update to 23.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.3/
- No code change since 23.08.2</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1701777600">- Update to 23.08.4
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.4/
- No code change since 23.08.3</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1707480000">- Update to 24.01.95
  * https://kde.org/announcements/megarelease/6/rc2/</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1708689600">- Update to 24.02.0
  * New feature release
- Changes since 24.01.95:
  * Make the SearchCollectionHelper inactive by default
  * Implement a dialog for the user to choose the suspend duration (kde#481024)</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1710849600">- Update to 24.02.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.1/
- No code change since 24.02.0
- Uninstall old KDE PIM 5 libraries (boo#1221515)</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1712664000">- Update to 24.02.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.2/
- No code change since 24.02.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1714737600">- Update to 24.04.80
  * New feature release
- Changes since 24.02.2:
  * Adapt api
  * USe _L1
  * Make CalFilterProxyModel part of public API
  * Use QIODevice::WriteOnly directly
  * Drop support for KF5's deprecated KToolInvocation
  * Fix copyright
  * Add missing [[nodiscard]]
  * Add option to hide declined invitations from event views
  * Bump version so we can depend on the new API in KOrganizer
  * Make CollectionCalendar work with a proxy on top of ETM instead of raw ETM
  * Make CalFilterPartStatusProxyModel part of akonadi-calendar public API
  * Not necessary to use 6 suffix
  * Remove mem leak
  * Refactor the SearchCollectionHelper to use d-pointer
  * Make the SearchCollectionHelper inactive by default
  * There is not qml/js files
  * USe [[nodiscard]]
  * Don't export symbol
  * Remove unused variables
  * Add missing include moc
  * Remove commented code
  * Implement a dialog for the user to choose the suspend duration (kde#481024)
  * Use local includes</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1716120000">- Update to 24.05.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.0/
- Changes since 24.04.80:
  * IncidenceChanger: fix crash due to redundant deletion of handler</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1718193600">- Update to 24.05.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.1/
- No code change since 24.05.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1719921600">- Update to 24.05.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.2/
- Changes since 24.05.1:
  * Add missing change notification for initial calendar loading</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1724068800">- Update to 24.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.0/
- Changes since 24.05.2:
  * Remove unused argument
  * Use @info:placeholder
  * Fix version
  * Add missing change notification for initial calendar loading
  * fix cmake lint warning
  * Add missing [[nodiscard]]
  * Remove duplicate private area
  * Remove not necessary lib
  * ETMCalendar: add signal emitted when the user is checking/unchecking a calendar
  * Add build-ftime support
  * Add @info:tooltip
  * Add context i18n
  * Add @action:button
  * Use ellipsis character instead of three dots in UI strings
  * IncidenceChanger: fix crash due to redundant deletion of handler
  * It compiles fine without deprecated kf methods</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1725969600">- Update to 24.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.1/
- Changes since 24.08.0:
  * Fix duplicated text in "remind later" dialog</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1728388800">- Update to 24.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.2/
- No code change since 24.08.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1730808000">- Update to 24.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.3/
- No code change since 24.08.2</changelog>
</package>
<package pkgid="81b00dc0007bf31dd531da5df25a5fd992177328a34214ca3feca26698b99b154812077789d11ab69929baad9043e215d3bcdaaf9278303792108dec329db591" name="akonadi-calendar" arch="x86_64">
  <version epoch="0" ver="24.08.3" rel="1.1"/>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1688472000">- Update to 23.04.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.04.3/
- No code change since 23.04.2</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1690891200">- Update to 23.07.80
  * New feature release
- Changes since 23.04.3:
  * Make sure to extract only email
  * Fix generate emails (don't create "foo" &lt;foo &lt;foo@kde.org&gt; &gt;)
  * Avoid too big dialogbox
  * Generate properties for CalendarSettings
  * Add Akonadi::CalendarUtils::displayName overload that takes ETM instead of ETMCalendar
  * Don't link twice against KF::Codecs
  * Add messagelib dependency
  * Sign/encrypt iTIP emails (kde#297956)
  * make free/busy invokable from QML
  * Fix platforms name
  * Remove the never set "MailTransport" setting
  * Remove CI 6 job. We will use kf6 branch for kf6 works
  * Simplify default mail transport code
  * Don't needlessly link against KIOWidgets
  * Add akonadi-mime dependency explicitly
  * Adapt to KMailTransportAkonadi being integrated into AkonadiMime
  * Expose missing kidentitymanagement
  * Add TodoModel (coming from eventviews)
  * Bump library version
  * Move SearchCollectionHelper to akonadi-calendar
  * Move CalendarSupport::createMimeData here
  * not export symbol of private methods
  * Add QCH support
  * Add missing lib
  * Use correct INSTALL_TARGETS_DEFAULT_ARGS</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1692014400">- Update to 23.07.90
  * New feature release
- Changes since 23.07.80:
  * Fix linking with self-built gpgmepp
  * Explicitly search for KPim{5,6}Libkleo</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1692532800">- Update to 23.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.0/
- No code change since 23.07.90</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1694520000">- Update to 23.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.1/
- Changes since 23.08.0:
  * Use correct identity when sending iTIP counter-proposal (kde#458524)</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1696939200">- Update to 23.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.2/
- No code change since 23.08.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1699358400">- Update to 23.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.3/
- No code change since 23.08.2</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1701777600">- Update to 23.08.4
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.4/
- No code change since 23.08.3</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1707480000">- Update to 24.01.95
  * https://kde.org/announcements/megarelease/6/rc2/</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1708689600">- Update to 24.02.0
  * New feature release
- Changes since 24.01.95:
  * Make the SearchCollectionHelper inactive by default
  * Implement a dialog for the user to choose the suspend duration (kde#481024)</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1710849600">- Update to 24.02.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.1/
- No code change since 24.02.0
- Uninstall old KDE PIM 5 libraries (boo#1221515)</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1712664000">- Update to 24.02.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.2/
- No code change since 24.02.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1714737600">- Update to 24.04.80
  * New feature release
- Changes since 24.02.2:
  * Adapt api
  * USe _L1
  * Make CalFilterProxyModel part of public API
  * Use QIODevice::WriteOnly directly
  * Drop support for KF5's deprecated KToolInvocation
  * Fix copyright
  * Add missing [[nodiscard]]
  * Add option to hide declined invitations from event views
  * Bump version so we can depend on the new API in KOrganizer
  * Make CollectionCalendar work with a proxy on top of ETM instead of raw ETM
  * Make CalFilterPartStatusProxyModel part of akonadi-calendar public API
  * Not necessary to use 6 suffix
  * Remove mem leak
  * Refactor the SearchCollectionHelper to use d-pointer
  * Make the SearchCollectionHelper inactive by default
  * There is not qml/js files
  * USe [[nodiscard]]
  * Don't export symbol
  * Remove unused variables
  * Add missing include moc
  * Remove commented code
  * Implement a dialog for the user to choose the suspend duration (kde#481024)
  * Use local includes</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1716120000">- Update to 24.05.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.0/
- Changes since 24.04.80:
  * IncidenceChanger: fix crash due to redundant deletion of handler</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1718193600">- Update to 24.05.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.1/
- No code change since 24.05.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1719921600">- Update to 24.05.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.2/
- Changes since 24.05.1:
  * Add missing change notification for initial calendar loading</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1724068800">- Update to 24.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.0/
- Changes since 24.05.2:
  * Remove unused argument
  * Use @info:placeholder
  * Fix version
  * Add missing change notification for initial calendar loading
  * fix cmake lint warning
  * Add missing [[nodiscard]]
  * Remove duplicate private area
  * Remove not necessary lib
  * ETMCalendar: add signal emitted when the user is checking/unchecking a calendar
  * Add build-ftime support
  * Add @info:tooltip
  * Add context i18n
  * Add @action:button
  * Use ellipsis character instead of three dots in UI strings
  * IncidenceChanger: fix crash due to redundant deletion of handler
  * It compiles fine without deprecated kf methods</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1725969600">- Update to 24.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.1/
- Changes since 24.08.0:
  * Fix duplicated text in "remind later" dialog</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1728388800">- Update to 24.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.2/
- No code change since 24.08.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1730808000">- Update to 24.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.3/
- No code change since 24.08.2</changelog>
</package>
<package pkgid="cd4b7454b6eb188ba9669b8fa386ae352aa793833097a787452ff5d03342106387a24769d37051cf797396a79c1767ec0c03755f75d3f9d5c259ffd749dd8ad6" name="akonadi-calendar-debuginfo" arch="x86_64">
  <version epoch="0" ver="24.08.3" rel="1.1"/>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1688472000">- Update to 23.04.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.04.3/
- No code change since 23.04.2</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1690891200">- Update to 23.07.80
  * New feature release
- Changes since 23.04.3:
  * Make sure to extract only email
  * Fix generate emails (don't create "foo" &lt;foo &lt;foo@kde.org&gt; &gt;)
  * Avoid too big dialogbox
  * Generate properties for CalendarSettings
  * Add Akonadi::CalendarUtils::displayName overload that takes ETM instead of ETMCalendar
  * Don't link twice against KF::Codecs
  * Add messagelib dependency
  * Sign/encrypt iTIP emails (kde#297956)
  * make free/busy invokable from QML
  * Fix platforms name
  * Remove the never set "MailTransport" setting
  * Remove CI 6 job. We will use kf6 branch for kf6 works
  * Simplify default mail transport code
  * Don't needlessly link against KIOWidgets
  * Add akonadi-mime dependency explicitly
  * Adapt to KMailTransportAkonadi being integrated into AkonadiMime
  * Expose missing kidentitymanagement
  * Add TodoModel (coming from eventviews)
  * Bump library version
  * Move SearchCollectionHelper to akonadi-calendar
  * Move CalendarSupport::createMimeData here
  * not export symbol of private methods
  * Add QCH support
  * Add missing lib
  * Use correct INSTALL_TARGETS_DEFAULT_ARGS</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1692014400">- Update to 23.07.90
  * New feature release
- Changes since 23.07.80:
  * Fix linking with self-built gpgmepp
  * Explicitly search for KPim{5,6}Libkleo</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1692532800">- Update to 23.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.0/
- No code change since 23.07.90</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1694520000">- Update to 23.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.1/
- Changes since 23.08.0:
  * Use correct identity when sending iTIP counter-proposal (kde#458524)</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1696939200">- Update to 23.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.2/
- No code change since 23.08.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1699358400">- Update to 23.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.3/
- No code change since 23.08.2</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1701777600">- Update to 23.08.4
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.4/
- No code change since 23.08.3</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1707480000">- Update to 24.01.95
  * https://kde.org/announcements/megarelease/6/rc2/</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1708689600">- Update to 24.02.0
  * New feature release
- Changes since 24.01.95:
  * Make the SearchCollectionHelper inactive by default
  * Implement a dialog for the user to choose the suspend duration (kde#481024)</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1710849600">- Update to 24.02.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.1/
- No code change since 24.02.0
- Uninstall old KDE PIM 5 libraries (boo#1221515)</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1712664000">- Update to 24.02.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.2/
- No code change since 24.02.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1714737600">- Update to 24.04.80
  * New feature release
- Changes since 24.02.2:
  * Adapt api
  * USe _L1
  * Make CalFilterProxyModel part of public API
  * Use QIODevice::WriteOnly directly
  * Drop support for KF5's deprecated KToolInvocation
  * Fix copyright
  * Add missing [[nodiscard]]
  * Add option to hide declined invitations from event views
  * Bump version so we can depend on the new API in KOrganizer
  * Make CollectionCalendar work with a proxy on top of ETM instead of raw ETM
  * Make CalFilterPartStatusProxyModel part of akonadi-calendar public API
  * Not necessary to use 6 suffix
  * Remove mem leak
  * Refactor the SearchCollectionHelper to use d-pointer
  * Make the SearchCollectionHelper inactive by default
  * There is not qml/js files
  * USe [[nodiscard]]
  * Don't export symbol
  * Remove unused variables
  * Add missing include moc
  * Remove commented code
  * Implement a dialog for the user to choose the suspend duration (kde#481024)
  * Use local includes</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1716120000">- Update to 24.05.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.0/
- Changes since 24.04.80:
  * IncidenceChanger: fix crash due to redundant deletion of handler</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1718193600">- Update to 24.05.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.1/
- No code change since 24.05.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1719921600">- Update to 24.05.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.2/
- Changes since 24.05.1:
  * Add missing change notification for initial calendar loading</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1724068800">- Update to 24.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.0/
- Changes since 24.05.2:
  * Remove unused argument
  * Use @info:placeholder
  * Fix version
  * Add missing change notification for initial calendar loading
  * fix cmake lint warning
  * Add missing [[nodiscard]]
  * Remove duplicate private area
  * Remove not necessary lib
  * ETMCalendar: add signal emitted when the user is checking/unchecking a calendar
  * Add build-ftime support
  * Add @info:tooltip
  * Add context i18n
  * Add @action:button
  * Use ellipsis character instead of three dots in UI strings
  * IncidenceChanger: fix crash due to redundant deletion of handler
  * It compiles fine without deprecated kf methods</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1725969600">- Update to 24.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.1/
- Changes since 24.08.0:
  * Fix duplicated text in "remind later" dialog</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1728388800">- Update to 24.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.2/
- No code change since 24.08.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1730808000">- Update to 24.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.3/
- No code change since 24.08.2</changelog>
</package>
<package pkgid="337c8d41566b5c098c2a959338c0d5c2421fd351c7c6b7f62e0c4a0ec4af8d01018599c4a4ee0cc70e1dd69e62943f7c5d2fe72fbaed25ce2e56bc1d8b64655c" name="akonadi-calendar-debugsource" arch="x86_64">
  <version epoch="0" ver="24.08.3" rel="1.1"/>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1688472000">- Update to 23.04.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.04.3/
- No code change since 23.04.2</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1690891200">- Update to 23.07.80
  * New feature release
- Changes since 23.04.3:
  * Make sure to extract only email
  * Fix generate emails (don't create "foo" &lt;foo &lt;foo@kde.org&gt; &gt;)
  * Avoid too big dialogbox
  * Generate properties for CalendarSettings
  * Add Akonadi::CalendarUtils::displayName overload that takes ETM instead of ETMCalendar
  * Don't link twice against KF::Codecs
  * Add messagelib dependency
  * Sign/encrypt iTIP emails (kde#297956)
  * make free/busy invokable from QML
  * Fix platforms name
  * Remove the never set "MailTransport" setting
  * Remove CI 6 job. We will use kf6 branch for kf6 works
  * Simplify default mail transport code
  * Don't needlessly link against KIOWidgets
  * Add akonadi-mime dependency explicitly
  * Adapt to KMailTransportAkonadi being integrated into AkonadiMime
  * Expose missing kidentitymanagement
  * Add TodoModel (coming from eventviews)
  * Bump library version
  * Move SearchCollectionHelper to akonadi-calendar
  * Move CalendarSupport::createMimeData here
  * not export symbol of private methods
  * Add QCH support
  * Add missing lib
  * Use correct INSTALL_TARGETS_DEFAULT_ARGS</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1692014400">- Update to 23.07.90
  * New feature release
- Changes since 23.07.80:
  * Fix linking with self-built gpgmepp
  * Explicitly search for KPim{5,6}Libkleo</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1692532800">- Update to 23.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.0/
- No code change since 23.07.90</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1694520000">- Update to 23.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.1/
- Changes since 23.08.0:
  * Use correct identity when sending iTIP counter-proposal (kde#458524)</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1696939200">- Update to 23.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.2/
- No code change since 23.08.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1699358400">- Update to 23.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.3/
- No code change since 23.08.2</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1701777600">- Update to 23.08.4
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.4/
- No code change since 23.08.3</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1707480000">- Update to 24.01.95
  * https://kde.org/announcements/megarelease/6/rc2/</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1708689600">- Update to 24.02.0
  * New feature release
- Changes since 24.01.95:
  * Make the SearchCollectionHelper inactive by default
  * Implement a dialog for the user to choose the suspend duration (kde#481024)</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1710849600">- Update to 24.02.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.1/
- No code change since 24.02.0
- Uninstall old KDE PIM 5 libraries (boo#1221515)</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1712664000">- Update to 24.02.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.2/
- No code change since 24.02.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1714737600">- Update to 24.04.80
  * New feature release
- Changes since 24.02.2:
  * Adapt api
  * USe _L1
  * Make CalFilterProxyModel part of public API
  * Use QIODevice::WriteOnly directly
  * Drop support for KF5's deprecated KToolInvocation
  * Fix copyright
  * Add missing [[nodiscard]]
  * Add option to hide declined invitations from event views
  * Bump version so we can depend on the new API in KOrganizer
  * Make CollectionCalendar work with a proxy on top of ETM instead of raw ETM
  * Make CalFilterPartStatusProxyModel part of akonadi-calendar public API
  * Not necessary to use 6 suffix
  * Remove mem leak
  * Refactor the SearchCollectionHelper to use d-pointer
  * Make the SearchCollectionHelper inactive by default
  * There is not qml/js files
  * USe [[nodiscard]]
  * Don't export symbol
  * Remove unused variables
  * Add missing include moc
  * Remove commented code
  * Implement a dialog for the user to choose the suspend duration (kde#481024)
  * Use local includes</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1716120000">- Update to 24.05.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.0/
- Changes since 24.04.80:
  * IncidenceChanger: fix crash due to redundant deletion of handler</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1718193600">- Update to 24.05.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.1/
- No code change since 24.05.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1719921600">- Update to 24.05.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.2/
- Changes since 24.05.1:
  * Add missing change notification for initial calendar loading</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1724068800">- Update to 24.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.0/
- Changes since 24.05.2:
  * Remove unused argument
  * Use @info:placeholder
  * Fix version
  * Add missing change notification for initial calendar loading
  * fix cmake lint warning
  * Add missing [[nodiscard]]
  * Remove duplicate private area
  * Remove not necessary lib
  * ETMCalendar: add signal emitted when the user is checking/unchecking a calendar
  * Add build-ftime support
  * Add @info:tooltip
  * Add context i18n
  * Add @action:button
  * Use ellipsis character instead of three dots in UI strings
  * IncidenceChanger: fix crash due to redundant deletion of handler
  * It compiles fine without deprecated kf methods</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1725969600">- Update to 24.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.1/
- Changes since 24.08.0:
  * Fix duplicated text in "remind later" dialog</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1728388800">- Update to 24.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.2/
- No code change since 24.08.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1730808000">- Update to 24.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.3/
- No code change since 24.08.2</changelog>
</package>
<package pkgid="c59a1b1f8463ab9c7d3a05c0b28a55263307b67a70f53019fe1d6d5a3fb2a26fd411e01791eb39474f2e4a5548c1454ef603169caf910407df9a8d060270f32b" name="akonadi-calendar-devel" arch="x86_64">
  <version epoch="0" ver="24.08.3" rel="1.1"/>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1688472000">- Update to 23.04.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.04.3/
- No code change since 23.04.2</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1690891200">- Update to 23.07.80
  * New feature release
- Changes since 23.04.3:
  * Make sure to extract only email
  * Fix generate emails (don't create "foo" &lt;foo &lt;foo@kde.org&gt; &gt;)
  * Avoid too big dialogbox
  * Generate properties for CalendarSettings
  * Add Akonadi::CalendarUtils::displayName overload that takes ETM instead of ETMCalendar
  * Don't link twice against KF::Codecs
  * Add messagelib dependency
  * Sign/encrypt iTIP emails (kde#297956)
  * make free/busy invokable from QML
  * Fix platforms name
  * Remove the never set "MailTransport" setting
  * Remove CI 6 job. We will use kf6 branch for kf6 works
  * Simplify default mail transport code
  * Don't needlessly link against KIOWidgets
  * Add akonadi-mime dependency explicitly
  * Adapt to KMailTransportAkonadi being integrated into AkonadiMime
  * Expose missing kidentitymanagement
  * Add TodoModel (coming from eventviews)
  * Bump library version
  * Move SearchCollectionHelper to akonadi-calendar
  * Move CalendarSupport::createMimeData here
  * not export symbol of private methods
  * Add QCH support
  * Add missing lib
  * Use correct INSTALL_TARGETS_DEFAULT_ARGS</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1692014400">- Update to 23.07.90
  * New feature release
- Changes since 23.07.80:
  * Fix linking with self-built gpgmepp
  * Explicitly search for KPim{5,6}Libkleo</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1692532800">- Update to 23.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.0/
- No code change since 23.07.90</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1694520000">- Update to 23.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.1/
- Changes since 23.08.0:
  * Use correct identity when sending iTIP counter-proposal (kde#458524)</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1696939200">- Update to 23.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.2/
- No code change since 23.08.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1699358400">- Update to 23.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.3/
- No code change since 23.08.2</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1701777600">- Update to 23.08.4
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.4/
- No code change since 23.08.3</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1707480000">- Update to 24.01.95
  * https://kde.org/announcements/megarelease/6/rc2/</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1708689600">- Update to 24.02.0
  * New feature release
- Changes since 24.01.95:
  * Make the SearchCollectionHelper inactive by default
  * Implement a dialog for the user to choose the suspend duration (kde#481024)</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1710849600">- Update to 24.02.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.1/
- No code change since 24.02.0
- Uninstall old KDE PIM 5 libraries (boo#1221515)</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1712664000">- Update to 24.02.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.2/
- No code change since 24.02.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1714737600">- Update to 24.04.80
  * New feature release
- Changes since 24.02.2:
  * Adapt api
  * USe _L1
  * Make CalFilterProxyModel part of public API
  * Use QIODevice::WriteOnly directly
  * Drop support for KF5's deprecated KToolInvocation
  * Fix copyright
  * Add missing [[nodiscard]]
  * Add option to hide declined invitations from event views
  * Bump version so we can depend on the new API in KOrganizer
  * Make CollectionCalendar work with a proxy on top of ETM instead of raw ETM
  * Make CalFilterPartStatusProxyModel part of akonadi-calendar public API
  * Not necessary to use 6 suffix
  * Remove mem leak
  * Refactor the SearchCollectionHelper to use d-pointer
  * Make the SearchCollectionHelper inactive by default
  * There is not qml/js files
  * USe [[nodiscard]]
  * Don't export symbol
  * Remove unused variables
  * Add missing include moc
  * Remove commented code
  * Implement a dialog for the user to choose the suspend duration (kde#481024)
  * Use local includes</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1716120000">- Update to 24.05.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.0/
- Changes since 24.04.80:
  * IncidenceChanger: fix crash due to redundant deletion of handler</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1718193600">- Update to 24.05.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.1/
- No code change since 24.05.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1719921600">- Update to 24.05.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.2/
- Changes since 24.05.1:
  * Add missing change notification for initial calendar loading</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1724068800">- Update to 24.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.0/
- Changes since 24.05.2:
  * Remove unused argument
  * Use @info:placeholder
  * Fix version
  * Add missing change notification for initial calendar loading
  * fix cmake lint warning
  * Add missing [[nodiscard]]
  * Remove duplicate private area
  * Remove not necessary lib
  * ETMCalendar: add signal emitted when the user is checking/unchecking a calendar
  * Add build-ftime support
  * Add @info:tooltip
  * Add context i18n
  * Add @action:button
  * Use ellipsis character instead of three dots in UI strings
  * IncidenceChanger: fix crash due to redundant deletion of handler
  * It compiles fine without deprecated kf methods</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1725969600">- Update to 24.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.1/
- Changes since 24.08.0:
  * Fix duplicated text in "remind later" dialog</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1728388800">- Update to 24.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.2/
- No code change since 24.08.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1730808000">- Update to 24.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.3/
- No code change since 24.08.2</changelog>
</package>
<package pkgid="ad30d99b02639f3d03b8b8bc1ec75ed4ece2a6b1dee644771e1df953eff28abf4e1047f811d32a086710bf0fec7d89f7c352f0c5168a8bc1522d4d738daa32d8" name="akonadi-calendar-tools" arch="src">
  <version epoch="0" ver="24.08.3" rel="1.1"/>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1688472000">- Update to 23.04.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.04.3/
- No code change since 23.04.2</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1690891200">- Update to 23.07.80
  * New feature release
- Changes since 23.04.3:
  * Remove unused libkdepim dependency
  * Remove the HTML export feature</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1692014400">- Update to 23.07.90
  * New feature release
- No code change since 23.07.80</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1692532800">- Update to 23.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.0/
- No code change since 23.07.90</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1694520000">- Update to 23.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.1/
- No code change since 23.08.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1696939200">- Update to 23.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.2/
- No code change since 23.08.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1699358400">- Update to 23.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.3/
- No code change since 23.08.2</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1701777600">- Update to 23.08.4
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.4/
- No code change since 23.08.3</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1707480000">- Update to 24.01.95
  * https://kde.org/announcements/megarelease/6/rc2/</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1708689600">- Update to 24.02.0
  * New feature release
- No code change since 24.01.95</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1710849600">- Update to 24.02.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.1/
- No code change since 24.02.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1712664000">- Update to 24.02.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.2/
- No code change since 24.02.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1714737600">- Update to 24.04.80
  * New feature release
- No code change since 24.02.2</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1716120000">- Update to 24.05.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.0/
- No code change since 24.04.80</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1718193600">- Update to 24.05.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.1/
- No code change since 24.05.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1719921600">- Update to 24.05.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.2/
- No code change since 24.05.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1724068800">- Update to 24.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.0/
- Changes since 24.05.2:
  * Add build-ftime support
  * Use i18n context
  * It compiles fine without deprecated kf methods</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1725969600">- Update to 24.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.1/
- No code change since 24.08.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1728388800">- Update to 24.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.2/
- No code change since 24.08.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1730808000">- Update to 24.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.3/
- No code change since 24.08.2</changelog>
</package>
<package pkgid="a453c8d416b3b850b7c84f9feb2172ea924e55ab5fa9cce527c0940551acce24d667c8b93e27fa87c3399f41d9ca58899b8ea5258f81b8ad1db0b7921890c1bc" name="akonadi-calendar-tools" arch="x86_64">
  <version epoch="0" ver="24.08.3" rel="1.1"/>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1688472000">- Update to 23.04.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.04.3/
- No code change since 23.04.2</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1690891200">- Update to 23.07.80
  * New feature release
- Changes since 23.04.3:
  * Remove unused libkdepim dependency
  * Remove the HTML export feature</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1692014400">- Update to 23.07.90
  * New feature release
- No code change since 23.07.80</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1692532800">- Update to 23.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.0/
- No code change since 23.07.90</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1694520000">- Update to 23.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.1/
- No code change since 23.08.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1696939200">- Update to 23.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.2/
- No code change since 23.08.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1699358400">- Update to 23.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.3/
- No code change since 23.08.2</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1701777600">- Update to 23.08.4
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.4/
- No code change since 23.08.3</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1707480000">- Update to 24.01.95
  * https://kde.org/announcements/megarelease/6/rc2/</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1708689600">- Update to 24.02.0
  * New feature release
- No code change since 24.01.95</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1710849600">- Update to 24.02.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.1/
- No code change since 24.02.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1712664000">- Update to 24.02.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.2/
- No code change since 24.02.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1714737600">- Update to 24.04.80
  * New feature release
- No code change since 24.02.2</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1716120000">- Update to 24.05.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.0/
- No code change since 24.04.80</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1718193600">- Update to 24.05.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.1/
- No code change since 24.05.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1719921600">- Update to 24.05.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.2/
- No code change since 24.05.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1724068800">- Update to 24.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.0/
- Changes since 24.05.2:
  * Add build-ftime support
  * Use i18n context
  * It compiles fine without deprecated kf methods</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1725969600">- Update to 24.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.1/
- No code change since 24.08.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1728388800">- Update to 24.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.2/
- No code change since 24.08.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1730808000">- Update to 24.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.3/
- No code change since 24.08.2</changelog>
</package>
<package pkgid="13c5129ce8522f9bde87255f079d7f685f52667835fb524ff2f9ef65364f9caf42f290019a81146697441849c2af0ee0f0aed2f1870c35841deb042ae9825179" name="akonadi-calendar-tools-debuginfo" arch="x86_64">
  <version epoch="0" ver="24.08.3" rel="1.1"/>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1688472000">- Update to 23.04.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.04.3/
- No code change since 23.04.2</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1690891200">- Update to 23.07.80
  * New feature release
- Changes since 23.04.3:
  * Remove unused libkdepim dependency
  * Remove the HTML export feature</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1692014400">- Update to 23.07.90
  * New feature release
- No code change since 23.07.80</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1692532800">- Update to 23.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.0/
- No code change since 23.07.90</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1694520000">- Update to 23.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.1/
- No code change since 23.08.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1696939200">- Update to 23.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.2/
- No code change since 23.08.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1699358400">- Update to 23.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.3/
- No code change since 23.08.2</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1701777600">- Update to 23.08.4
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.4/
- No code change since 23.08.3</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1707480000">- Update to 24.01.95
  * https://kde.org/announcements/megarelease/6/rc2/</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1708689600">- Update to 24.02.0
  * New feature release
- No code change since 24.01.95</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1710849600">- Update to 24.02.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.1/
- No code change since 24.02.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1712664000">- Update to 24.02.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.2/
- No code change since 24.02.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1714737600">- Update to 24.04.80
  * New feature release
- No code change since 24.02.2</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1716120000">- Update to 24.05.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.0/
- No code change since 24.04.80</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1718193600">- Update to 24.05.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.1/
- No code change since 24.05.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1719921600">- Update to 24.05.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.2/
- No code change since 24.05.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1724068800">- Update to 24.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.0/
- Changes since 24.05.2:
  * Add build-ftime support
  * Use i18n context
  * It compiles fine without deprecated kf methods</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1725969600">- Update to 24.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.1/
- No code change since 24.08.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1728388800">- Update to 24.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.2/
- No code change since 24.08.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1730808000">- Update to 24.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.3/
- No code change since 24.08.2</changelog>
</package>
<package pkgid="def37e67c62bcff4ee02b194793659a39acf47e748f95706d58c03d97adc51d1bf3f3aae83d078ea33081a957506c09182279e55fb3bbf8fff46ceea0bd2a794" name="akonadi-calendar-tools-debugsource" arch="x86_64">
  <version epoch="0" ver="24.08.3" rel="1.1"/>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1688472000">- Update to 23.04.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.04.3/
- No code change since 23.04.2</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1690891200">- Update to 23.07.80
  * New feature release
- Changes since 23.04.3:
  * Remove unused libkdepim dependency
  * Remove the HTML export feature</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1692014400">- Update to 23.07.90
  * New feature release
- No code change since 23.07.80</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1692532800">- Update to 23.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.0/
- No code change since 23.07.90</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1694520000">- Update to 23.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.1/
- No code change since 23.08.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1696939200">- Update to 23.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.2/
- No code change since 23.08.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1699358400">- Update to 23.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.3/
- No code change since 23.08.2</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1701777600">- Update to 23.08.4
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.4/
- No code change since 23.08.3</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1707480000">- Update to 24.01.95
  * https://kde.org/announcements/megarelease/6/rc2/</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1708689600">- Update to 24.02.0
  * New feature release
- No code change since 24.01.95</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1710849600">- Update to 24.02.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.1/
- No code change since 24.02.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1712664000">- Update to 24.02.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.2/
- No code change since 24.02.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1714737600">- Update to 24.04.80
  * New feature release
- No code change since 24.02.2</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1716120000">- Update to 24.05.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.0/
- No code change since 24.04.80</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1718193600">- Update to 24.05.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.1/
- No code change since 24.05.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1719921600">- Update to 24.05.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.2/
- No code change since 24.05.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1724068800">- Update to 24.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.0/
- Changes since 24.05.2:
  * Add build-ftime support
  * Use i18n context
  * It compiles fine without deprecated kf methods</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1725969600">- Update to 24.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.1/
- No code change since 24.08.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1728388800">- Update to 24.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.2/
- No code change since 24.08.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1730808000">- Update to 24.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.3/
- No code change since 24.08.2</changelog>
</package>
<package pkgid="b71e703755699eaa30067ab99c3651b5898660a7f2d94959ed36e32f9c18a63fe1b5736549fcfceee740e4bdf752f140a103177f69266b9659f13d70584ecdc9" name="akonadi-calendar-tools-lang" arch="noarch">
  <version epoch="0" ver="24.08.3" rel="1.1"/>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1688472000">- Update to 23.04.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.04.3/
- No code change since 23.04.2</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1690891200">- Update to 23.07.80
  * New feature release
- Changes since 23.04.3:
  * Remove unused libkdepim dependency
  * Remove the HTML export feature</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1692014400">- Update to 23.07.90
  * New feature release
- No code change since 23.07.80</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1692532800">- Update to 23.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.0/
- No code change since 23.07.90</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1694520000">- Update to 23.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.1/
- No code change since 23.08.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1696939200">- Update to 23.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.2/
- No code change since 23.08.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1699358400">- Update to 23.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.3/
- No code change since 23.08.2</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1701777600">- Update to 23.08.4
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.4/
- No code change since 23.08.3</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1707480000">- Update to 24.01.95
  * https://kde.org/announcements/megarelease/6/rc2/</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1708689600">- Update to 24.02.0
  * New feature release
- No code change since 24.01.95</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1710849600">- Update to 24.02.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.1/
- No code change since 24.02.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1712664000">- Update to 24.02.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.2/
- No code change since 24.02.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1714737600">- Update to 24.04.80
  * New feature release
- No code change since 24.02.2</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1716120000">- Update to 24.05.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.0/
- No code change since 24.04.80</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1718193600">- Update to 24.05.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.1/
- No code change since 24.05.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1719921600">- Update to 24.05.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.2/
- No code change since 24.05.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1724068800">- Update to 24.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.0/
- Changes since 24.05.2:
  * Add build-ftime support
  * Use i18n context
  * It compiles fine without deprecated kf methods</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1725969600">- Update to 24.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.1/
- No code change since 24.08.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1728388800">- Update to 24.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.2/
- No code change since 24.08.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1730808000">- Update to 24.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.3/
- No code change since 24.08.2</changelog>
</package>
<package pkgid="c15176e457c6f2540ef81c51fb0485dc2e0c8207396f523b956dd89e2100629e3bb8a50285efa18167593ff93b92d2062cd945ad47e38bbdf80e163a25b67d91" name="akonadi-contacts" arch="src">
  <version epoch="0" ver="24.08.3" rel="1.1"/>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1693828800">- Init akonadi-contacts</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1707480000">- Update to 24.01.95
  * https://kde.org/fr/announcements/megarelease/6/rc2/</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1708689600">- Update to 24.02.0
  * New feature release
- No code change since 24.01.95</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1710849600">- Update to 24.02.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.1/
- Changes since 24.02.0:
  * Fix bug 482737: KAddressbook crash editing entry (kde#482737)
- Uninstall old KDE PIM 5 libraries (boo#1221515)</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1712664000">- Update to 24.02.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.2/
- No code change since 24.02.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1714737600">- Update to 24.04.80
  * New feature release
- Changes since 24.02.2:
  * We don't have kcfg* file
  * Add missing [[nodiscard]]
  * Add missing explicit keyword
  * Use local includes
  * QLatin1String is same as QLatin1StringView, we need to use QLatin1StringView now
  * Activate CI test</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1716120000">- Update to 24.05.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.0/
- Changes since 24.04.80:
  * Fix 486837: "upon new contact creation, KAddressbook always warns: Location was not saved. Do you want to close editor?" (kde#486837)</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1718193600">- Update to 24.05.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.1/
- No code change since 24.05.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1719921600">- Update to 24.05.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.2/
- No code change since 24.05.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1724068800">- Update to 24.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.0/
- Changes since 24.05.2:
  * Use @info:placeholder
  * Fix forward declaration of CustomFieldsModel
  * fix cmake lint warning
  * Remove KF6::ConfigCore
  * Remove unused include
  * USe @action:button
  * Add build-ftime support
  * Use context i18n
  * Add @info:tooltip
  * Add @action:button
  * It compiles fine without deprecated kf methods</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1725969600">- Update to 24.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.1/
- No code change since 24.08.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1728388800">- Update to 24.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.2/
- No code change since 24.08.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1728820800">- Add upstream crash fix (kde#494242):
  * 0001-Fix-KAddressBook-crash-when-editing-a-contact-with-n.patch</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1730808000">- Update to 24.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.3/
- No code change since 24.08.2</changelog>
</package>
<package pkgid="ce4916e7f1d84a22a5b0e4cbd58215dc24e303d8d9a814e6063706301c697a40c0a0c65db66fe6c071d4f90901405898b2ce0603f898e75a18373d36cf751224" name="akonadi-contacts" arch="x86_64">
  <version epoch="0" ver="24.08.3" rel="1.1"/>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1693828800">- Init akonadi-contacts</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1707480000">- Update to 24.01.95
  * https://kde.org/fr/announcements/megarelease/6/rc2/</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1708689600">- Update to 24.02.0
  * New feature release
- No code change since 24.01.95</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1710849600">- Update to 24.02.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.1/
- Changes since 24.02.0:
  * Fix bug 482737: KAddressbook crash editing entry (kde#482737)
- Uninstall old KDE PIM 5 libraries (boo#1221515)</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1712664000">- Update to 24.02.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.2/
- No code change since 24.02.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1714737600">- Update to 24.04.80
  * New feature release
- Changes since 24.02.2:
  * We don't have kcfg* file
  * Add missing [[nodiscard]]
  * Add missing explicit keyword
  * Use local includes
  * QLatin1String is same as QLatin1StringView, we need to use QLatin1StringView now
  * Activate CI test</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1716120000">- Update to 24.05.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.0/
- Changes since 24.04.80:
  * Fix 486837: "upon new contact creation, KAddressbook always warns: Location was not saved. Do you want to close editor?" (kde#486837)</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1718193600">- Update to 24.05.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.1/
- No code change since 24.05.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1719921600">- Update to 24.05.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.2/
- No code change since 24.05.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1724068800">- Update to 24.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.0/
- Changes since 24.05.2:
  * Use @info:placeholder
  * Fix forward declaration of CustomFieldsModel
  * fix cmake lint warning
  * Remove KF6::ConfigCore
  * Remove unused include
  * USe @action:button
  * Add build-ftime support
  * Use context i18n
  * Add @info:tooltip
  * Add @action:button
  * It compiles fine without deprecated kf methods</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1725969600">- Update to 24.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.1/
- No code change since 24.08.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1728388800">- Update to 24.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.2/
- No code change since 24.08.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1728820800">- Add upstream crash fix (kde#494242):
  * 0001-Fix-KAddressBook-crash-when-editing-a-contact-with-n.patch</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1730808000">- Update to 24.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.3/
- No code change since 24.08.2</changelog>
</package>
<package pkgid="113eba7ed497e98abaa8c548a48bd4c0d53fda578fb8ec459ec4cc8965346f45c1d1f591ef272236598e37fcd22169bf056a8ab822590e4a93c11948c7b6475e" name="akonadi-contacts-debuginfo" arch="x86_64">
  <version epoch="0" ver="24.08.3" rel="1.1"/>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1693828800">- Init akonadi-contacts</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1707480000">- Update to 24.01.95
  * https://kde.org/fr/announcements/megarelease/6/rc2/</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1708689600">- Update to 24.02.0
  * New feature release
- No code change since 24.01.95</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1710849600">- Update to 24.02.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.1/
- Changes since 24.02.0:
  * Fix bug 482737: KAddressbook crash editing entry (kde#482737)
- Uninstall old KDE PIM 5 libraries (boo#1221515)</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1712664000">- Update to 24.02.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.2/
- No code change since 24.02.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1714737600">- Update to 24.04.80
  * New feature release
- Changes since 24.02.2:
  * We don't have kcfg* file
  * Add missing [[nodiscard]]
  * Add missing explicit keyword
  * Use local includes
  * QLatin1String is same as QLatin1StringView, we need to use QLatin1StringView now
  * Activate CI test</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1716120000">- Update to 24.05.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.0/
- Changes since 24.04.80:
  * Fix 486837: "upon new contact creation, KAddressbook always warns: Location was not saved. Do you want to close editor?" (kde#486837)</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1718193600">- Update to 24.05.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.1/
- No code change since 24.05.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1719921600">- Update to 24.05.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.2/
- No code change since 24.05.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1724068800">- Update to 24.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.0/
- Changes since 24.05.2:
  * Use @info:placeholder
  * Fix forward declaration of CustomFieldsModel
  * fix cmake lint warning
  * Remove KF6::ConfigCore
  * Remove unused include
  * USe @action:button
  * Add build-ftime support
  * Use context i18n
  * Add @info:tooltip
  * Add @action:button
  * It compiles fine without deprecated kf methods</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1725969600">- Update to 24.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.1/
- No code change since 24.08.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1728388800">- Update to 24.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.2/
- No code change since 24.08.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1728820800">- Add upstream crash fix (kde#494242):
  * 0001-Fix-KAddressBook-crash-when-editing-a-contact-with-n.patch</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1730808000">- Update to 24.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.3/
- No code change since 24.08.2</changelog>
</package>
<package pkgid="23b0d927cc85f0809a56d989cb8e32fc8bbff4401fa2e4d5469d94418578d5be85320c63cc40979671ea59ebd3d863da1a6be488d89ab95e5a93181cb8dd5131" name="akonadi-contacts-debugsource" arch="x86_64">
  <version epoch="0" ver="24.08.3" rel="1.1"/>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1693828800">- Init akonadi-contacts</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1707480000">- Update to 24.01.95
  * https://kde.org/fr/announcements/megarelease/6/rc2/</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1708689600">- Update to 24.02.0
  * New feature release
- No code change since 24.01.95</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1710849600">- Update to 24.02.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.1/
- Changes since 24.02.0:
  * Fix bug 482737: KAddressbook crash editing entry (kde#482737)
- Uninstall old KDE PIM 5 libraries (boo#1221515)</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1712664000">- Update to 24.02.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.2/
- No code change since 24.02.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1714737600">- Update to 24.04.80
  * New feature release
- Changes since 24.02.2:
  * We don't have kcfg* file
  * Add missing [[nodiscard]]
  * Add missing explicit keyword
  * Use local includes
  * QLatin1String is same as QLatin1StringView, we need to use QLatin1StringView now
  * Activate CI test</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1716120000">- Update to 24.05.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.0/
- Changes since 24.04.80:
  * Fix 486837: "upon new contact creation, KAddressbook always warns: Location was not saved. Do you want to close editor?" (kde#486837)</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1718193600">- Update to 24.05.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.1/
- No code change since 24.05.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1719921600">- Update to 24.05.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.2/
- No code change since 24.05.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1724068800">- Update to 24.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.0/
- Changes since 24.05.2:
  * Use @info:placeholder
  * Fix forward declaration of CustomFieldsModel
  * fix cmake lint warning
  * Remove KF6::ConfigCore
  * Remove unused include
  * USe @action:button
  * Add build-ftime support
  * Use context i18n
  * Add @info:tooltip
  * Add @action:button
  * It compiles fine without deprecated kf methods</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1725969600">- Update to 24.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.1/
- No code change since 24.08.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1728388800">- Update to 24.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.2/
- No code change since 24.08.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1728820800">- Add upstream crash fix (kde#494242):
  * 0001-Fix-KAddressBook-crash-when-editing-a-contact-with-n.patch</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1730808000">- Update to 24.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.3/
- No code change since 24.08.2</changelog>
</package>
<package pkgid="9ba66f3da7cc1cadbdb8f7ca7041684819f06c7834014b1362c3ea4a541b29ab255bcf1248fe22521bcc4d522c326c41ac41bb01d830a00e5b76347ac3ac1260" name="akonadi-contacts-devel" arch="x86_64">
  <version epoch="0" ver="24.08.3" rel="1.1"/>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1693828800">- Init akonadi-contacts</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1707480000">- Update to 24.01.95
  * https://kde.org/fr/announcements/megarelease/6/rc2/</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1708689600">- Update to 24.02.0
  * New feature release
- No code change since 24.01.95</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1710849600">- Update to 24.02.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.1/
- Changes since 24.02.0:
  * Fix bug 482737: KAddressbook crash editing entry (kde#482737)
- Uninstall old KDE PIM 5 libraries (boo#1221515)</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1712664000">- Update to 24.02.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.2/
- No code change since 24.02.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1714737600">- Update to 24.04.80
  * New feature release
- Changes since 24.02.2:
  * We don't have kcfg* file
  * Add missing [[nodiscard]]
  * Add missing explicit keyword
  * Use local includes
  * QLatin1String is same as QLatin1StringView, we need to use QLatin1StringView now
  * Activate CI test</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1716120000">- Update to 24.05.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.0/
- Changes since 24.04.80:
  * Fix 486837: "upon new contact creation, KAddressbook always warns: Location was not saved. Do you want to close editor?" (kde#486837)</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1718193600">- Update to 24.05.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.1/
- No code change since 24.05.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1719921600">- Update to 24.05.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.2/
- No code change since 24.05.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1724068800">- Update to 24.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.0/
- Changes since 24.05.2:
  * Use @info:placeholder
  * Fix forward declaration of CustomFieldsModel
  * fix cmake lint warning
  * Remove KF6::ConfigCore
  * Remove unused include
  * USe @action:button
  * Add build-ftime support
  * Use context i18n
  * Add @info:tooltip
  * Add @action:button
  * It compiles fine without deprecated kf methods</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1725969600">- Update to 24.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.1/
- No code change since 24.08.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1728388800">- Update to 24.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.2/
- No code change since 24.08.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1728820800">- Add upstream crash fix (kde#494242):
  * 0001-Fix-KAddressBook-crash-when-editing-a-contact-with-n.patch</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1730808000">- Update to 24.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.3/
- No code change since 24.08.2</changelog>
</package>
<package pkgid="21d7027c17047aded2ddf9a9da825078ce923dd04e76fa82ed5193de22ef92c3cd99e73125aa1db31f239877eb2d7633a49ccbddc4902e37cace6acd43414106" name="akonadi-contacts-lang" arch="noarch">
  <version epoch="0" ver="24.08.3" rel="1.1"/>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1693828800">- Init akonadi-contacts</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1707480000">- Update to 24.01.95
  * https://kde.org/fr/announcements/megarelease/6/rc2/</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1708689600">- Update to 24.02.0
  * New feature release
- No code change since 24.01.95</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1710849600">- Update to 24.02.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.1/
- Changes since 24.02.0:
  * Fix bug 482737: KAddressbook crash editing entry (kde#482737)
- Uninstall old KDE PIM 5 libraries (boo#1221515)</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1712664000">- Update to 24.02.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.2/
- No code change since 24.02.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1714737600">- Update to 24.04.80
  * New feature release
- Changes since 24.02.2:
  * We don't have kcfg* file
  * Add missing [[nodiscard]]
  * Add missing explicit keyword
  * Use local includes
  * QLatin1String is same as QLatin1StringView, we need to use QLatin1StringView now
  * Activate CI test</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1716120000">- Update to 24.05.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.0/
- Changes since 24.04.80:
  * Fix 486837: "upon new contact creation, KAddressbook always warns: Location was not saved. Do you want to close editor?" (kde#486837)</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1718193600">- Update to 24.05.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.1/
- No code change since 24.05.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1719921600">- Update to 24.05.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.2/
- No code change since 24.05.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1724068800">- Update to 24.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.0/
- Changes since 24.05.2:
  * Use @info:placeholder
  * Fix forward declaration of CustomFieldsModel
  * fix cmake lint warning
  * Remove KF6::ConfigCore
  * Remove unused include
  * USe @action:button
  * Add build-ftime support
  * Use context i18n
  * Add @info:tooltip
  * Add @action:button
  * It compiles fine without deprecated kf methods</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1725969600">- Update to 24.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.1/
- No code change since 24.08.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1728388800">- Update to 24.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.2/
- No code change since 24.08.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1728820800">- Add upstream crash fix (kde#494242):
  * 0001-Fix-KAddressBook-crash-when-editing-a-contact-with-n.patch</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1730808000">- Update to 24.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.3/
- No code change since 24.08.2</changelog>
</package>
<package pkgid="2f574536a9de0a0864abe34c7b15bd5da1c8b8ae8a80d7d318686d96e017d3f590f6ea8c5d0eec289f3da0bf1d68b5eea7ee6f20b83004ce7971532bc3908ea0" name="akonadi-debuginfo" arch="x86_64">
  <version epoch="0" ver="24.08.3" rel="1.1"/>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1699272000">- init akonadi. Renamed from akonadi-server</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1699272001">- Switch to sqlite by default for new setup</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1707480000">- Update to 24.01.95
  * https://kde.org/fr/announcements/megarelease/6/rc2/</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1708689600">- Update to 24.02.0
  * New feature release
- Changes since 24.01.95:
  * Fix infinite recursion in NotificationCollector
  * Monitor: restore Items from Ntf if we cannot fetch them
  * NotificationCollector: ignore notification with invalid or empty item set
  * Fix ChangeRecorder journal corruption due to qsizetype change in Qt6
  * Ensure query size in search manager remains less than 1000
  * Optimize imap set
  * Also skip MySQL tests on the FreeBSD CI
  * Disable PostgreSQL Akonadi tests on the CI</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1710676800">- Make sure the old translation package gets uninstalled (boo#1221515)</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1710849600">- Update to 24.02.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.1/
- Changes since 24.02.0:
  * Disable akonadi-db-migrator in 24.02</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1712664000">- Update to 24.02.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.2/
- Changes since 24.02.1:
  * Fix 485099: Clicking to add tags does nothing (kde#485099)
  * setHeaderGroup() changes the column count and filterAcceptsColumn()</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1714737600">- Update to 24.04.80
  * New feature release
- Too many changes since 24.02.2, only listing bugfixes:
  * Fix handling of UTC vs. local time for database engines (kde#483060)</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1716120000">- Update to 24.05.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.0/
- No code change since 24.04.80</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1718193600">- Update to 24.05.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.1/
- No code change since 24.05.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1719921600">- Update to 24.05.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.2/
- No code change since 24.05.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1724068800">- Update to 24.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.0/
- Too many changes to list here.</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1725969600">- Update to 24.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.1/
- Changes since 24.08.0:
  * Fix loading/saving resource config file in config dialog when
    using Akonadi Instances
  * Fix crash when query is evicted from QueryCache (kde#492547)</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1728388800">- Update to 24.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.2/
- Changes since 24.08.1:
  * Enable KCrash for resources</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1730808000">- Update to 24.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.3/
- No code change since 24.08.2</changelog>
</package>
<package pkgid="6d077103ccb8dabe2dc4b05b5ba11a63fe94350178771d370a885e92dabd41169b0f0e77069a927e8b65901ca696ff1e2af1254d77d05e1ba732415f1382f7b3" name="akonadi-debugsource" arch="x86_64">
  <version epoch="0" ver="24.08.3" rel="1.1"/>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1699272000">- init akonadi. Renamed from akonadi-server</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1699272001">- Switch to sqlite by default for new setup</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1707480000">- Update to 24.01.95
  * https://kde.org/fr/announcements/megarelease/6/rc2/</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1708689600">- Update to 24.02.0
  * New feature release
- Changes since 24.01.95:
  * Fix infinite recursion in NotificationCollector
  * Monitor: restore Items from Ntf if we cannot fetch them
  * NotificationCollector: ignore notification with invalid or empty item set
  * Fix ChangeRecorder journal corruption due to qsizetype change in Qt6
  * Ensure query size in search manager remains less than 1000
  * Optimize imap set
  * Also skip MySQL tests on the FreeBSD CI
  * Disable PostgreSQL Akonadi tests on the CI</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1710676800">- Make sure the old translation package gets uninstalled (boo#1221515)</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1710849600">- Update to 24.02.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.1/
- Changes since 24.02.0:
  * Disable akonadi-db-migrator in 24.02</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1712664000">- Update to 24.02.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.2/
- Changes since 24.02.1:
  * Fix 485099: Clicking to add tags does nothing (kde#485099)
  * setHeaderGroup() changes the column count and filterAcceptsColumn()</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1714737600">- Update to 24.04.80
  * New feature release
- Too many changes since 24.02.2, only listing bugfixes:
  * Fix handling of UTC vs. local time for database engines (kde#483060)</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1716120000">- Update to 24.05.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.0/
- No code change since 24.04.80</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1718193600">- Update to 24.05.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.1/
- No code change since 24.05.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1719921600">- Update to 24.05.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.2/
- No code change since 24.05.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1724068800">- Update to 24.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.0/
- Too many changes to list here.</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1725969600">- Update to 24.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.1/
- Changes since 24.08.0:
  * Fix loading/saving resource config file in config dialog when
    using Akonadi Instances
  * Fix crash when query is evicted from QueryCache (kde#492547)</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1728388800">- Update to 24.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.2/
- Changes since 24.08.1:
  * Enable KCrash for resources</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1730808000">- Update to 24.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.3/
- No code change since 24.08.2</changelog>
</package>
<package pkgid="a4612bede1f49505062674f872f149c366d97527eeece5b2f5bb3825ad45a2d9a6200c95190d8d51aafe36be5482e3e1a55c28aa1087c7ec1bd156aa541d8331" name="akonadi-devel" arch="x86_64">
  <version epoch="0" ver="24.08.3" rel="1.1"/>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1699272000">- init akonadi. Renamed from akonadi-server</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1699272001">- Switch to sqlite by default for new setup</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1707480000">- Update to 24.01.95
  * https://kde.org/fr/announcements/megarelease/6/rc2/</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1708689600">- Update to 24.02.0
  * New feature release
- Changes since 24.01.95:
  * Fix infinite recursion in NotificationCollector
  * Monitor: restore Items from Ntf if we cannot fetch them
  * NotificationCollector: ignore notification with invalid or empty item set
  * Fix ChangeRecorder journal corruption due to qsizetype change in Qt6
  * Ensure query size in search manager remains less than 1000
  * Optimize imap set
  * Also skip MySQL tests on the FreeBSD CI
  * Disable PostgreSQL Akonadi tests on the CI</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1710676800">- Make sure the old translation package gets uninstalled (boo#1221515)</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1710849600">- Update to 24.02.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.1/
- Changes since 24.02.0:
  * Disable akonadi-db-migrator in 24.02</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1712664000">- Update to 24.02.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.2/
- Changes since 24.02.1:
  * Fix 485099: Clicking to add tags does nothing (kde#485099)
  * setHeaderGroup() changes the column count and filterAcceptsColumn()</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1714737600">- Update to 24.04.80
  * New feature release
- Too many changes since 24.02.2, only listing bugfixes:
  * Fix handling of UTC vs. local time for database engines (kde#483060)</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1716120000">- Update to 24.05.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.0/
- No code change since 24.04.80</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1718193600">- Update to 24.05.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.1/
- No code change since 24.05.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1719921600">- Update to 24.05.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.2/
- No code change since 24.05.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1724068800">- Update to 24.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.0/
- Too many changes to list here.</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1725969600">- Update to 24.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.1/
- Changes since 24.08.0:
  * Fix loading/saving resource config file in config dialog when
    using Akonadi Instances
  * Fix crash when query is evicted from QueryCache (kde#492547)</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1728388800">- Update to 24.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.2/
- Changes since 24.08.1:
  * Enable KCrash for resources</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1730808000">- Update to 24.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.3/
- No code change since 24.08.2</changelog>
</package>
<package pkgid="09b406ae031a79c1ad31c8f018a09489dddb8d7c8a863c811dc1677c0edb242b82a21c51f542922f483e1b80f745220c6bcb0d1d8758e4fa8153e13c67ade8f5" name="akonadi-devel-debuginfo" arch="x86_64">
  <version epoch="0" ver="24.08.3" rel="1.1"/>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1699272000">- init akonadi. Renamed from akonadi-server</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1699272001">- Switch to sqlite by default for new setup</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1707480000">- Update to 24.01.95
  * https://kde.org/fr/announcements/megarelease/6/rc2/</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1708689600">- Update to 24.02.0
  * New feature release
- Changes since 24.01.95:
  * Fix infinite recursion in NotificationCollector
  * Monitor: restore Items from Ntf if we cannot fetch them
  * NotificationCollector: ignore notification with invalid or empty item set
  * Fix ChangeRecorder journal corruption due to qsizetype change in Qt6
  * Ensure query size in search manager remains less than 1000
  * Optimize imap set
  * Also skip MySQL tests on the FreeBSD CI
  * Disable PostgreSQL Akonadi tests on the CI</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1710676800">- Make sure the old translation package gets uninstalled (boo#1221515)</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1710849600">- Update to 24.02.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.1/
- Changes since 24.02.0:
  * Disable akonadi-db-migrator in 24.02</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1712664000">- Update to 24.02.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.2/
- Changes since 24.02.1:
  * Fix 485099: Clicking to add tags does nothing (kde#485099)
  * setHeaderGroup() changes the column count and filterAcceptsColumn()</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1714737600">- Update to 24.04.80
  * New feature release
- Too many changes since 24.02.2, only listing bugfixes:
  * Fix handling of UTC vs. local time for database engines (kde#483060)</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1716120000">- Update to 24.05.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.0/
- No code change since 24.04.80</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1718193600">- Update to 24.05.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.1/
- No code change since 24.05.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1719921600">- Update to 24.05.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.2/
- No code change since 24.05.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1724068800">- Update to 24.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.0/
- Too many changes to list here.</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1725969600">- Update to 24.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.1/
- Changes since 24.08.0:
  * Fix loading/saving resource config file in config dialog when
    using Akonadi Instances
  * Fix crash when query is evicted from QueryCache (kde#492547)</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1728388800">- Update to 24.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.2/
- Changes since 24.08.1:
  * Enable KCrash for resources</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1730808000">- Update to 24.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.3/
- No code change since 24.08.2</changelog>
</package>
<package pkgid="fa2e3d34fd8d476fc4c046762da1b0556c3f63fbe782af50c181f5c1cae6ec00fd7d549c81192accaa777dc806357ee28a4e0ea7b90ddcf1d57fe7c79adc0167" name="akonadi-import-wizard" arch="src">
  <version epoch="0" ver="24.08.3" rel="1.1"/>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1688472000">- Update to 23.04.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.04.3/
- No code change since 23.04.2</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1690891200">- Update to 23.07.80
  * New feature release
- Changes since 23.04.3:
  * not export symbol of private methods
  * Fix install headers
  * Remove duplicate alias</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1692014400">- Update to 23.07.90
  * New feature release
- No code change since 23.07.80</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1692532800">- Update to 23.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.0/
- No code change since 23.07.90</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1694520000">- Update to 23.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.1/
- No code change since 23.08.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1696939200">- Update to 23.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.2/
- No code change since 23.08.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1699358400">- Update to 23.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.3/
- No code change since 23.08.2</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1701777600">- Update to 23.08.4
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.4/
- No code change since 23.08.3</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1707480000">- Update to 24.01.95
  * https://kde.org/announcements/megarelease/6/rc2/</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1708689600">- Update to 24.02.0
  * New feature release
- No code change since 24.01.95</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1710849600">- Update to 24.02.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.1/
- No code change since 24.02.0
- Uninstall old KDE PIM 5 libraries (boo#1221515)</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1712664000">- Update to 24.02.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.2/
- No code change since 24.02.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1714737600">- Update to 24.04.80
  * New feature release
- Changes since 24.02.2:
  * We depend against qtkeychain 0.14.2 (kwallet6 support)
  * Remove unused include
  * Remove doc that doesn't compile
  * Drop support for KF5's deprecated KToolInvocation
  * Add QT6KEYCHAIN_LIB_VERSION 0.14.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1716120000">- Update to 24.05.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.0/
- No code change since 24.04.80</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1718193600">- Update to 24.05.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.1/
- No code change since 24.05.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1719921600">- Update to 24.05.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.2/
- No code change since 24.05.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1724068800">- Update to 24.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.0/
- Changes since 24.05.2:
  * Set up KCrash after KAboutData::setApplicationData()
  * Fix cmake lint warning
  * We depend against 6.3.0
  * Use @info:shell
  * Add build-ftime support
  * Use KIconThemes and KStyleManager if available during build-time
  * Use i18n context
  * It compiles fine without deprecated kf methods</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1725969600">- Update to 24.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.1/
- No code change since 24.08.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1728388800">- Update to 24.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.2/
- No code change since 24.08.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1730808000">- Update to 24.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.3/
- No code change since 24.08.2</changelog>
</package>
<package pkgid="c16648835935b4dcdbeb25d2f0c1bb2779533493d05e46715e4aae376b258acdec5f3d4f89a56e6997fd07b95251dc1e9460fa233b4f272b7836ef7caf4fbee2" name="akonadi-import-wizard" arch="x86_64">
  <version epoch="0" ver="24.08.3" rel="1.1"/>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1688472000">- Update to 23.04.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.04.3/
- No code change since 23.04.2</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1690891200">- Update to 23.07.80
  * New feature release
- Changes since 23.04.3:
  * not export symbol of private methods
  * Fix install headers
  * Remove duplicate alias</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1692014400">- Update to 23.07.90
  * New feature release
- No code change since 23.07.80</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1692532800">- Update to 23.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.0/
- No code change since 23.07.90</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1694520000">- Update to 23.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.1/
- No code change since 23.08.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1696939200">- Update to 23.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.2/
- No code change since 23.08.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1699358400">- Update to 23.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.3/
- No code change since 23.08.2</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1701777600">- Update to 23.08.4
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.4/
- No code change since 23.08.3</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1707480000">- Update to 24.01.95
  * https://kde.org/announcements/megarelease/6/rc2/</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1708689600">- Update to 24.02.0
  * New feature release
- No code change since 24.01.95</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1710849600">- Update to 24.02.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.1/
- No code change since 24.02.0
- Uninstall old KDE PIM 5 libraries (boo#1221515)</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1712664000">- Update to 24.02.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.2/
- No code change since 24.02.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1714737600">- Update to 24.04.80
  * New feature release
- Changes since 24.02.2:
  * We depend against qtkeychain 0.14.2 (kwallet6 support)
  * Remove unused include
  * Remove doc that doesn't compile
  * Drop support for KF5's deprecated KToolInvocation
  * Add QT6KEYCHAIN_LIB_VERSION 0.14.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1716120000">- Update to 24.05.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.0/
- No code change since 24.04.80</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1718193600">- Update to 24.05.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.1/
- No code change since 24.05.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1719921600">- Update to 24.05.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.2/
- No code change since 24.05.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1724068800">- Update to 24.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.0/
- Changes since 24.05.2:
  * Set up KCrash after KAboutData::setApplicationData()
  * Fix cmake lint warning
  * We depend against 6.3.0
  * Use @info:shell
  * Add build-ftime support
  * Use KIconThemes and KStyleManager if available during build-time
  * Use i18n context
  * It compiles fine without deprecated kf methods</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1725969600">- Update to 24.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.1/
- No code change since 24.08.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1728388800">- Update to 24.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.2/
- No code change since 24.08.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1730808000">- Update to 24.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.3/
- No code change since 24.08.2</changelog>
</package>
<package pkgid="d348d879afe50cc0767e14b61d69223ad0fd748463e5d53e5182dd25ee08074e08be20abca1debb2dfcc129d6672c4a38e6306aaba9f3039ef5744c41748b585" name="akonadi-import-wizard-debuginfo" arch="x86_64">
  <version epoch="0" ver="24.08.3" rel="1.1"/>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1688472000">- Update to 23.04.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.04.3/
- No code change since 23.04.2</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1690891200">- Update to 23.07.80
  * New feature release
- Changes since 23.04.3:
  * not export symbol of private methods
  * Fix install headers
  * Remove duplicate alias</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1692014400">- Update to 23.07.90
  * New feature release
- No code change since 23.07.80</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1692532800">- Update to 23.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.0/
- No code change since 23.07.90</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1694520000">- Update to 23.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.1/
- No code change since 23.08.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1696939200">- Update to 23.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.2/
- No code change since 23.08.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1699358400">- Update to 23.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.3/
- No code change since 23.08.2</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1701777600">- Update to 23.08.4
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.4/
- No code change since 23.08.3</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1707480000">- Update to 24.01.95
  * https://kde.org/announcements/megarelease/6/rc2/</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1708689600">- Update to 24.02.0
  * New feature release
- No code change since 24.01.95</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1710849600">- Update to 24.02.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.1/
- No code change since 24.02.0
- Uninstall old KDE PIM 5 libraries (boo#1221515)</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1712664000">- Update to 24.02.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.2/
- No code change since 24.02.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1714737600">- Update to 24.04.80
  * New feature release
- Changes since 24.02.2:
  * We depend against qtkeychain 0.14.2 (kwallet6 support)
  * Remove unused include
  * Remove doc that doesn't compile
  * Drop support for KF5's deprecated KToolInvocation
  * Add QT6KEYCHAIN_LIB_VERSION 0.14.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1716120000">- Update to 24.05.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.0/
- No code change since 24.04.80</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1718193600">- Update to 24.05.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.1/
- No code change since 24.05.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1719921600">- Update to 24.05.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.2/
- No code change since 24.05.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1724068800">- Update to 24.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.0/
- Changes since 24.05.2:
  * Set up KCrash after KAboutData::setApplicationData()
  * Fix cmake lint warning
  * We depend against 6.3.0
  * Use @info:shell
  * Add build-ftime support
  * Use KIconThemes and KStyleManager if available during build-time
  * Use i18n context
  * It compiles fine without deprecated kf methods</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1725969600">- Update to 24.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.1/
- No code change since 24.08.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1728388800">- Update to 24.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.2/
- No code change since 24.08.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1730808000">- Update to 24.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.3/
- No code change since 24.08.2</changelog>
</package>
<package pkgid="ec650e7ac385e0b46a360e3c697ad8281c8825f056c0efa3c8de411b080c3ce1c4b5dd2bb46f0bbc63ebf2644cafe5122c3cb3bae1841ae6de4774fdf5576ca5" name="akonadi-import-wizard-debugsource" arch="x86_64">
  <version epoch="0" ver="24.08.3" rel="1.1"/>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1688472000">- Update to 23.04.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.04.3/
- No code change since 23.04.2</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1690891200">- Update to 23.07.80
  * New feature release
- Changes since 23.04.3:
  * not export symbol of private methods
  * Fix install headers
  * Remove duplicate alias</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1692014400">- Update to 23.07.90
  * New feature release
- No code change since 23.07.80</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1692532800">- Update to 23.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.0/
- No code change since 23.07.90</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1694520000">- Update to 23.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.1/
- No code change since 23.08.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1696939200">- Update to 23.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.2/
- No code change since 23.08.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1699358400">- Update to 23.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.3/
- No code change since 23.08.2</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1701777600">- Update to 23.08.4
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.4/
- No code change since 23.08.3</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1707480000">- Update to 24.01.95
  * https://kde.org/announcements/megarelease/6/rc2/</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1708689600">- Update to 24.02.0
  * New feature release
- No code change since 24.01.95</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1710849600">- Update to 24.02.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.1/
- No code change since 24.02.0
- Uninstall old KDE PIM 5 libraries (boo#1221515)</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1712664000">- Update to 24.02.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.2/
- No code change since 24.02.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1714737600">- Update to 24.04.80
  * New feature release
- Changes since 24.02.2:
  * We depend against qtkeychain 0.14.2 (kwallet6 support)
  * Remove unused include
  * Remove doc that doesn't compile
  * Drop support for KF5's deprecated KToolInvocation
  * Add QT6KEYCHAIN_LIB_VERSION 0.14.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1716120000">- Update to 24.05.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.0/
- No code change since 24.04.80</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1718193600">- Update to 24.05.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.1/
- No code change since 24.05.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1719921600">- Update to 24.05.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.2/
- No code change since 24.05.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1724068800">- Update to 24.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.0/
- Changes since 24.05.2:
  * Set up KCrash after KAboutData::setApplicationData()
  * Fix cmake lint warning
  * We depend against 6.3.0
  * Use @info:shell
  * Add build-ftime support
  * Use KIconThemes and KStyleManager if available during build-time
  * Use i18n context
  * It compiles fine without deprecated kf methods</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1725969600">- Update to 24.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.1/
- No code change since 24.08.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1728388800">- Update to 24.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.2/
- No code change since 24.08.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1730808000">- Update to 24.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.3/
- No code change since 24.08.2</changelog>
</package>
<package pkgid="d985f27dfe26f2c10ba939eaf0305f80a87340001665f45df93d8fd7584dc03fffb97e306510c8cc720b4538aaa9687559913dc51f88cefbd6e819d9a0d5e146" name="akonadi-import-wizard-devel" arch="x86_64">
  <version epoch="0" ver="24.08.3" rel="1.1"/>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1688472000">- Update to 23.04.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.04.3/
- No code change since 23.04.2</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1690891200">- Update to 23.07.80
  * New feature release
- Changes since 23.04.3:
  * not export symbol of private methods
  * Fix install headers
  * Remove duplicate alias</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1692014400">- Update to 23.07.90
  * New feature release
- No code change since 23.07.80</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1692532800">- Update to 23.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.0/
- No code change since 23.07.90</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1694520000">- Update to 23.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.1/
- No code change since 23.08.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1696939200">- Update to 23.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.2/
- No code change since 23.08.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1699358400">- Update to 23.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.3/
- No code change since 23.08.2</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1701777600">- Update to 23.08.4
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.4/
- No code change since 23.08.3</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1707480000">- Update to 24.01.95
  * https://kde.org/announcements/megarelease/6/rc2/</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1708689600">- Update to 24.02.0
  * New feature release
- No code change since 24.01.95</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1710849600">- Update to 24.02.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.1/
- No code change since 24.02.0
- Uninstall old KDE PIM 5 libraries (boo#1221515)</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1712664000">- Update to 24.02.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.2/
- No code change since 24.02.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1714737600">- Update to 24.04.80
  * New feature release
- Changes since 24.02.2:
  * We depend against qtkeychain 0.14.2 (kwallet6 support)
  * Remove unused include
  * Remove doc that doesn't compile
  * Drop support for KF5's deprecated KToolInvocation
  * Add QT6KEYCHAIN_LIB_VERSION 0.14.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1716120000">- Update to 24.05.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.0/
- No code change since 24.04.80</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1718193600">- Update to 24.05.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.1/
- No code change since 24.05.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1719921600">- Update to 24.05.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.2/
- No code change since 24.05.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1724068800">- Update to 24.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.0/
- Changes since 24.05.2:
  * Set up KCrash after KAboutData::setApplicationData()
  * Fix cmake lint warning
  * We depend against 6.3.0
  * Use @info:shell
  * Add build-ftime support
  * Use KIconThemes and KStyleManager if available during build-time
  * Use i18n context
  * It compiles fine without deprecated kf methods</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1725969600">- Update to 24.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.1/
- No code change since 24.08.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1728388800">- Update to 24.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.2/
- No code change since 24.08.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1730808000">- Update to 24.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.3/
- No code change since 24.08.2</changelog>
</package>
<package pkgid="a4c0b9cee9c62918fbe902c99510fda8a822d04621cc9e42d04f4d2cf069e8b7b5a71119b7ab288b4051aad7cc662b44801fa4a1766ea9b0c00722f3ddeca63a" name="akonadi-import-wizard-lang" arch="noarch">
  <version epoch="0" ver="24.08.3" rel="1.1"/>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1688472000">- Update to 23.04.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.04.3/
- No code change since 23.04.2</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1690891200">- Update to 23.07.80
  * New feature release
- Changes since 23.04.3:
  * not export symbol of private methods
  * Fix install headers
  * Remove duplicate alias</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1692014400">- Update to 23.07.90
  * New feature release
- No code change since 23.07.80</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1692532800">- Update to 23.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.0/
- No code change since 23.07.90</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1694520000">- Update to 23.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.1/
- No code change since 23.08.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1696939200">- Update to 23.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.2/
- No code change since 23.08.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1699358400">- Update to 23.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.3/
- No code change since 23.08.2</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1701777600">- Update to 23.08.4
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.4/
- No code change since 23.08.3</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1707480000">- Update to 24.01.95
  * https://kde.org/announcements/megarelease/6/rc2/</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1708689600">- Update to 24.02.0
  * New feature release
- No code change since 24.01.95</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1710849600">- Update to 24.02.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.1/
- No code change since 24.02.0
- Uninstall old KDE PIM 5 libraries (boo#1221515)</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1712664000">- Update to 24.02.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.2/
- No code change since 24.02.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1714737600">- Update to 24.04.80
  * New feature release
- Changes since 24.02.2:
  * We depend against qtkeychain 0.14.2 (kwallet6 support)
  * Remove unused include
  * Remove doc that doesn't compile
  * Drop support for KF5's deprecated KToolInvocation
  * Add QT6KEYCHAIN_LIB_VERSION 0.14.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1716120000">- Update to 24.05.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.0/
- No code change since 24.04.80</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1718193600">- Update to 24.05.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.1/
- No code change since 24.05.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1719921600">- Update to 24.05.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.2/
- No code change since 24.05.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1724068800">- Update to 24.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.0/
- Changes since 24.05.2:
  * Set up KCrash after KAboutData::setApplicationData()
  * Fix cmake lint warning
  * We depend against 6.3.0
  * Use @info:shell
  * Add build-ftime support
  * Use KIconThemes and KStyleManager if available during build-time
  * Use i18n context
  * It compiles fine without deprecated kf methods</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1725969600">- Update to 24.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.1/
- No code change since 24.08.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1728388800">- Update to 24.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.2/
- No code change since 24.08.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1730808000">- Update to 24.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.3/
- No code change since 24.08.2</changelog>
</package>
<package pkgid="4a076411ff0ec06a046b1b7f21bf90eb4cd7566a35a18c1ae616126a08f9db22acaf62295853ea7a9ef580f5052f02c51f76accbd7c0c8f34f9fdd3634c5038d" name="akonadi-lang" arch="noarch">
  <version epoch="0" ver="24.08.3" rel="1.1"/>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1699272000">- init akonadi. Renamed from akonadi-server</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1699272001">- Switch to sqlite by default for new setup</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1707480000">- Update to 24.01.95
  * https://kde.org/fr/announcements/megarelease/6/rc2/</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1708689600">- Update to 24.02.0
  * New feature release
- Changes since 24.01.95:
  * Fix infinite recursion in NotificationCollector
  * Monitor: restore Items from Ntf if we cannot fetch them
  * NotificationCollector: ignore notification with invalid or empty item set
  * Fix ChangeRecorder journal corruption due to qsizetype change in Qt6
  * Ensure query size in search manager remains less than 1000
  * Optimize imap set
  * Also skip MySQL tests on the FreeBSD CI
  * Disable PostgreSQL Akonadi tests on the CI</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1710676800">- Make sure the old translation package gets uninstalled (boo#1221515)</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1710849600">- Update to 24.02.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.1/
- Changes since 24.02.0:
  * Disable akonadi-db-migrator in 24.02</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1712664000">- Update to 24.02.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.2/
- Changes since 24.02.1:
  * Fix 485099: Clicking to add tags does nothing (kde#485099)
  * setHeaderGroup() changes the column count and filterAcceptsColumn()</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1714737600">- Update to 24.04.80
  * New feature release
- Too many changes since 24.02.2, only listing bugfixes:
  * Fix handling of UTC vs. local time for database engines (kde#483060)</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1716120000">- Update to 24.05.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.0/
- No code change since 24.04.80</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1718193600">- Update to 24.05.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.1/
- No code change since 24.05.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1719921600">- Update to 24.05.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.2/
- No code change since 24.05.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1724068800">- Update to 24.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.0/
- Too many changes to list here.</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1725969600">- Update to 24.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.1/
- Changes since 24.08.0:
  * Fix loading/saving resource config file in config dialog when
    using Akonadi Instances
  * Fix crash when query is evicted from QueryCache (kde#492547)</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1728388800">- Update to 24.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.2/
- Changes since 24.08.1:
  * Enable KCrash for resources</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1730808000">- Update to 24.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.3/
- No code change since 24.08.2</changelog>
</package>
<package pkgid="e2013ee8ea90ddcdc2206348ff3dca61a20f4b2496afb5250f634c12ced1d164bfa3b0560c14d6912e2dc14e679a15ac414b5da6f30bd23d49c1f346fdd71e2b" name="akonadi-mime" arch="src">
  <version epoch="0" ver="24.08.3" rel="1.1"/>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1688472000">- Update to 23.04.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.04.3/
- No code change since 23.04.2</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1690891200">- Update to 23.07.80
  * New feature release
- Changes since 23.04.3:
  * increase version
  * Second step: move/adapt class from kmailtransportakonadi
  * not export symbol of private methods
  * Fix generate qch
  * Use correct INSTALL_TARGETS_DEFAULT_ARGS</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1692014400">- Update to 23.07.90
  * New feature release
- No code change since 23.07.80</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1692532800">- Update to 23.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.0/
- No code change since 23.07.90</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1694520000">- Update to 23.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.1/
- No code change since 23.08.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1696939200">- Update to 23.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.2/
- No code change since 23.08.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1699358400">- Update to 23.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.3/
- No code change since 23.08.2</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1701777600">- Update to 23.08.4
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.4/
- No code change since 23.08.3</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1707480000">- Update to 24.01.95
  * https://kde.org/announcements/megarelease/6/rc2/</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1708689600">- Update to 24.02.0
  * New feature release
- No code change since 24.01.95</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1710849600">- Update to 24.02.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.1/
- No code change since 24.02.0
- Uninstall old KDE PIM 5 libraries (boo#1221515)</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1712664000">- Update to 24.02.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.2/
- No code change since 24.02.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1714737600">- Update to 24.04.80
  * New feature release
- Changes since 24.02.2:
  * It compiles fine without deprecated method &lt; kf6.0
  * We need kio here
  * Use KFormat directly
  * Add missing [[nodiscard]]
  * Remove commented include
  * Use local includes</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1716120000">- Update to 24.05.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.0/
- No code change since 24.04.80</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1718193600">- Update to 24.05.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.1/
- Changes since 24.05.0:
  * Explicitly link against QtDBus</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1719921600">- Update to 24.05.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.2/
- No code change since 24.05.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1724068800">- Update to 24.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.0/
- Changes since 24.05.2:
  * Remove unused utf8
  * kcoreaddons uses minimum version == 1.8
  * Fix cmake lint warning
  * Add missing [[nodiscard]]
  * Use canonical KMime includes
  * Add build-ftime support
  * Use ellipsis character instead of three dots in UI strings
  * It compiles fine without deprecated kf methods</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1725969600">- Update to 24.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.1/
- No code change since 24.08.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1728388800">- Update to 24.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.2/
- No code change since 24.08.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1730808000">- Update to 24.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.3/
- No code change since 24.08.2</changelog>
</package>
<package pkgid="72a54e0b319d83d5be0d2a2f7561f3240439aa40e458aef930e5f57a866e870d645c25bf57d8d77760fd7a121c60fb813bb7135e6202eb647e05651f158ed5d3" name="akonadi-mime" arch="x86_64">
  <version epoch="0" ver="24.08.3" rel="1.1"/>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1688472000">- Update to 23.04.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.04.3/
- No code change since 23.04.2</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1690891200">- Update to 23.07.80
  * New feature release
- Changes since 23.04.3:
  * increase version
  * Second step: move/adapt class from kmailtransportakonadi
  * not export symbol of private methods
  * Fix generate qch
  * Use correct INSTALL_TARGETS_DEFAULT_ARGS</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1692014400">- Update to 23.07.90
  * New feature release
- No code change since 23.07.80</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1692532800">- Update to 23.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.0/
- No code change since 23.07.90</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1694520000">- Update to 23.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.1/
- No code change since 23.08.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1696939200">- Update to 23.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.2/
- No code change since 23.08.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1699358400">- Update to 23.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.3/
- No code change since 23.08.2</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1701777600">- Update to 23.08.4
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.4/
- No code change since 23.08.3</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1707480000">- Update to 24.01.95
  * https://kde.org/announcements/megarelease/6/rc2/</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1708689600">- Update to 24.02.0
  * New feature release
- No code change since 24.01.95</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1710849600">- Update to 24.02.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.1/
- No code change since 24.02.0
- Uninstall old KDE PIM 5 libraries (boo#1221515)</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1712664000">- Update to 24.02.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.2/
- No code change since 24.02.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1714737600">- Update to 24.04.80
  * New feature release
- Changes since 24.02.2:
  * It compiles fine without deprecated method &lt; kf6.0
  * We need kio here
  * Use KFormat directly
  * Add missing [[nodiscard]]
  * Remove commented include
  * Use local includes</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1716120000">- Update to 24.05.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.0/
- No code change since 24.04.80</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1718193600">- Update to 24.05.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.1/
- Changes since 24.05.0:
  * Explicitly link against QtDBus</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1719921600">- Update to 24.05.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.2/
- No code change since 24.05.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1724068800">- Update to 24.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.0/
- Changes since 24.05.2:
  * Remove unused utf8
  * kcoreaddons uses minimum version == 1.8
  * Fix cmake lint warning
  * Add missing [[nodiscard]]
  * Use canonical KMime includes
  * Add build-ftime support
  * Use ellipsis character instead of three dots in UI strings
  * It compiles fine without deprecated kf methods</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1725969600">- Update to 24.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.1/
- No code change since 24.08.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1728388800">- Update to 24.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.2/
- No code change since 24.08.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1730808000">- Update to 24.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.3/
- No code change since 24.08.2</changelog>
</package>
<package pkgid="aa192564f2a3eef23e043b5f0abd1016ccc5cb9c53f4f6d537b8016b8e21ade07e1f018554d71e45f19cbfd75251d70dabd3f8022df765745ebdcc7d179c56da" name="akonadi-mime-debuginfo" arch="x86_64">
  <version epoch="0" ver="24.08.3" rel="1.1"/>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1688472000">- Update to 23.04.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.04.3/
- No code change since 23.04.2</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1690891200">- Update to 23.07.80
  * New feature release
- Changes since 23.04.3:
  * increase version
  * Second step: move/adapt class from kmailtransportakonadi
  * not export symbol of private methods
  * Fix generate qch
  * Use correct INSTALL_TARGETS_DEFAULT_ARGS</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1692014400">- Update to 23.07.90
  * New feature release
- No code change since 23.07.80</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1692532800">- Update to 23.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.0/
- No code change since 23.07.90</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1694520000">- Update to 23.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.1/
- No code change since 23.08.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1696939200">- Update to 23.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.2/
- No code change since 23.08.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1699358400">- Update to 23.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.3/
- No code change since 23.08.2</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1701777600">- Update to 23.08.4
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.4/
- No code change since 23.08.3</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1707480000">- Update to 24.01.95
  * https://kde.org/announcements/megarelease/6/rc2/</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1708689600">- Update to 24.02.0
  * New feature release
- No code change since 24.01.95</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1710849600">- Update to 24.02.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.1/
- No code change since 24.02.0
- Uninstall old KDE PIM 5 libraries (boo#1221515)</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1712664000">- Update to 24.02.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.2/
- No code change since 24.02.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1714737600">- Update to 24.04.80
  * New feature release
- Changes since 24.02.2:
  * It compiles fine without deprecated method &lt; kf6.0
  * We need kio here
  * Use KFormat directly
  * Add missing [[nodiscard]]
  * Remove commented include
  * Use local includes</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1716120000">- Update to 24.05.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.0/
- No code change since 24.04.80</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1718193600">- Update to 24.05.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.1/
- Changes since 24.05.0:
  * Explicitly link against QtDBus</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1719921600">- Update to 24.05.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.2/
- No code change since 24.05.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1724068800">- Update to 24.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.0/
- Changes since 24.05.2:
  * Remove unused utf8
  * kcoreaddons uses minimum version == 1.8
  * Fix cmake lint warning
  * Add missing [[nodiscard]]
  * Use canonical KMime includes
  * Add build-ftime support
  * Use ellipsis character instead of three dots in UI strings
  * It compiles fine without deprecated kf methods</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1725969600">- Update to 24.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.1/
- No code change since 24.08.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1728388800">- Update to 24.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.2/
- No code change since 24.08.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1730808000">- Update to 24.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.3/
- No code change since 24.08.2</changelog>
</package>
<package pkgid="c51c58e9f5ebb7866be84c7df5983150768f18512a18e9b0d88e3852c8c73ab571fdaa1ce0ff22cc64835e6e3dc6b27b5c47a56103538bbe6cb5e124fb658b98" name="akonadi-mime-debugsource" arch="x86_64">
  <version epoch="0" ver="24.08.3" rel="1.1"/>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1688472000">- Update to 23.04.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.04.3/
- No code change since 23.04.2</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1690891200">- Update to 23.07.80
  * New feature release
- Changes since 23.04.3:
  * increase version
  * Second step: move/adapt class from kmailtransportakonadi
  * not export symbol of private methods
  * Fix generate qch
  * Use correct INSTALL_TARGETS_DEFAULT_ARGS</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1692014400">- Update to 23.07.90
  * New feature release
- No code change since 23.07.80</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1692532800">- Update to 23.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.0/
- No code change since 23.07.90</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1694520000">- Update to 23.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.1/
- No code change since 23.08.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1696939200">- Update to 23.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.2/
- No code change since 23.08.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1699358400">- Update to 23.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.3/
- No code change since 23.08.2</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1701777600">- Update to 23.08.4
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.4/
- No code change since 23.08.3</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1707480000">- Update to 24.01.95
  * https://kde.org/announcements/megarelease/6/rc2/</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1708689600">- Update to 24.02.0
  * New feature release
- No code change since 24.01.95</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1710849600">- Update to 24.02.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.1/
- No code change since 24.02.0
- Uninstall old KDE PIM 5 libraries (boo#1221515)</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1712664000">- Update to 24.02.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.2/
- No code change since 24.02.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1714737600">- Update to 24.04.80
  * New feature release
- Changes since 24.02.2:
  * It compiles fine without deprecated method &lt; kf6.0
  * We need kio here
  * Use KFormat directly
  * Add missing [[nodiscard]]
  * Remove commented include
  * Use local includes</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1716120000">- Update to 24.05.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.0/
- No code change since 24.04.80</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1718193600">- Update to 24.05.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.1/
- Changes since 24.05.0:
  * Explicitly link against QtDBus</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1719921600">- Update to 24.05.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.2/
- No code change since 24.05.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1724068800">- Update to 24.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.0/
- Changes since 24.05.2:
  * Remove unused utf8
  * kcoreaddons uses minimum version == 1.8
  * Fix cmake lint warning
  * Add missing [[nodiscard]]
  * Use canonical KMime includes
  * Add build-ftime support
  * Use ellipsis character instead of three dots in UI strings
  * It compiles fine without deprecated kf methods</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1725969600">- Update to 24.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.1/
- No code change since 24.08.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1728388800">- Update to 24.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.2/
- No code change since 24.08.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1730808000">- Update to 24.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.3/
- No code change since 24.08.2</changelog>
</package>
<package pkgid="c753f4fcc4f7a69dcb1dd294f36a14c64b6e0ff23a4d00e280b4700bba616ac8e17e5c70ac19f2e8e706843bb2c3b3e47bb341befdd5dff4cf640dc3bc25c2f6" name="akonadi-mime-devel" arch="x86_64">
  <version epoch="0" ver="24.08.3" rel="1.1"/>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1688472000">- Update to 23.04.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.04.3/
- No code change since 23.04.2</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1690891200">- Update to 23.07.80
  * New feature release
- Changes since 23.04.3:
  * increase version
  * Second step: move/adapt class from kmailtransportakonadi
  * not export symbol of private methods
  * Fix generate qch
  * Use correct INSTALL_TARGETS_DEFAULT_ARGS</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1692014400">- Update to 23.07.90
  * New feature release
- No code change since 23.07.80</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1692532800">- Update to 23.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.0/
- No code change since 23.07.90</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1694520000">- Update to 23.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.1/
- No code change since 23.08.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1696939200">- Update to 23.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.2/
- No code change since 23.08.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1699358400">- Update to 23.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.3/
- No code change since 23.08.2</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1701777600">- Update to 23.08.4
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.4/
- No code change since 23.08.3</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1707480000">- Update to 24.01.95
  * https://kde.org/announcements/megarelease/6/rc2/</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1708689600">- Update to 24.02.0
  * New feature release
- No code change since 24.01.95</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1710849600">- Update to 24.02.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.1/
- No code change since 24.02.0
- Uninstall old KDE PIM 5 libraries (boo#1221515)</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1712664000">- Update to 24.02.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.2/
- No code change since 24.02.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1714737600">- Update to 24.04.80
  * New feature release
- Changes since 24.02.2:
  * It compiles fine without deprecated method &lt; kf6.0
  * We need kio here
  * Use KFormat directly
  * Add missing [[nodiscard]]
  * Remove commented include
  * Use local includes</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1716120000">- Update to 24.05.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.0/
- No code change since 24.04.80</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1718193600">- Update to 24.05.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.1/
- Changes since 24.05.0:
  * Explicitly link against QtDBus</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1719921600">- Update to 24.05.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.2/
- No code change since 24.05.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1724068800">- Update to 24.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.0/
- Changes since 24.05.2:
  * Remove unused utf8
  * kcoreaddons uses minimum version == 1.8
  * Fix cmake lint warning
  * Add missing [[nodiscard]]
  * Use canonical KMime includes
  * Add build-ftime support
  * Use ellipsis character instead of three dots in UI strings
  * It compiles fine without deprecated kf methods</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1725969600">- Update to 24.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.1/
- No code change since 24.08.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1728388800">- Update to 24.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.2/
- No code change since 24.08.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1730808000">- Update to 24.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.3/
- No code change since 24.08.2</changelog>
</package>
<package pkgid="241872a2f3d13b9e7343f22b02f69aaee9e82a9eec25e7f23f0a30070c8111ef83cadcc51fba27db77df5ec49d9467b57a38655c585a859d8e11477e4a1888b0" name="akonadi-notes" arch="src">
  <version epoch="0" ver="24.08.3" rel="1.1"/>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1688472000">- Update to 23.04.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.04.3/
- No code change since 23.04.2</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1690891200">- Update to 23.07.80
  * New feature release
- Changes since 23.04.3:
  * Add missing Q_REQUIRED_RESULT
  * Use correct INSTALL_TARGETS_DEFAULT_ARGS</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1692014400">- Update to 23.07.90
  * New feature release
- No code change since 23.07.80</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1692532800">- Update to 23.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.0/
- No code change since 23.07.90</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1694520000">- Update to 23.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.1/
- No code change since 23.08.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1696939200">- Update to 23.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.2/
- No code change since 23.08.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1699358400">- Update to 23.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.3/
- No code change since 23.08.2</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1701777600">- Update to 23.08.4
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.4/
- No code change since 23.08.3</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1707480000">- Update to 24.01.95
  * https://kde.org/announcements/megarelease/6/rc2/</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1708689600">- Update to 24.02.0
  * New feature release
- No code change since 24.01.95</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1710849600">- Update to 24.02.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.1/
- No code change since 24.02.0
- Uninstall old KDE PIM 5 libraries (boo#1221515)</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1712664000">- Update to 24.02.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.2/
- No code change since 24.02.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1714737600">- Update to 24.04.80
  * New feature release
- Changes since 24.02.2:
  * Port deprecated method</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1716120000">- Update to 24.05.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.0/
- No code change since 24.04.80</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1718193600">- Update to 24.05.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.1/
- No code change since 24.05.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1719921600">- Update to 24.05.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.2/
- No code change since 24.05.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1724068800">- Update to 24.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.0/
- Changes since 24.05.2:
  * Port away from KMime::ContentTransferEncoding::setDecoded
  * fix some cmakelint warning
  * Fix reuse lint
  * Add build-ftime support
  * It compiles fine without deprecated kf methods</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1725969600">- Update to 24.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.1/
- No code change since 24.08.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1728388800">- Update to 24.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.2/
- No code change since 24.08.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1730808000">- Update to 24.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.3/
- No code change since 24.08.2</changelog>
</package>
<package pkgid="38602330fa1eaf55f2a2e8780cddedb98855d730991b3ad22f46780c30856e88da5079ddc76c034353b3579be5a06ce96bdf38a2693ad6639f83983626cdfaa3" name="akonadi-notes-debugsource" arch="x86_64">
  <version epoch="0" ver="24.08.3" rel="1.1"/>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1688472000">- Update to 23.04.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.04.3/
- No code change since 23.04.2</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1690891200">- Update to 23.07.80
  * New feature release
- Changes since 23.04.3:
  * Add missing Q_REQUIRED_RESULT
  * Use correct INSTALL_TARGETS_DEFAULT_ARGS</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1692014400">- Update to 23.07.90
  * New feature release
- No code change since 23.07.80</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1692532800">- Update to 23.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.0/
- No code change since 23.07.90</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1694520000">- Update to 23.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.1/
- No code change since 23.08.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1696939200">- Update to 23.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.2/
- No code change since 23.08.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1699358400">- Update to 23.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.3/
- No code change since 23.08.2</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1701777600">- Update to 23.08.4
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.4/
- No code change since 23.08.3</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1707480000">- Update to 24.01.95
  * https://kde.org/announcements/megarelease/6/rc2/</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1708689600">- Update to 24.02.0
  * New feature release
- No code change since 24.01.95</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1710849600">- Update to 24.02.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.1/
- No code change since 24.02.0
- Uninstall old KDE PIM 5 libraries (boo#1221515)</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1712664000">- Update to 24.02.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.2/
- No code change since 24.02.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1714737600">- Update to 24.04.80
  * New feature release
- Changes since 24.02.2:
  * Port deprecated method</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1716120000">- Update to 24.05.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.0/
- No code change since 24.04.80</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1718193600">- Update to 24.05.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.1/
- No code change since 24.05.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1719921600">- Update to 24.05.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.2/
- No code change since 24.05.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1724068800">- Update to 24.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.0/
- Changes since 24.05.2:
  * Port away from KMime::ContentTransferEncoding::setDecoded
  * fix some cmakelint warning
  * Fix reuse lint
  * Add build-ftime support
  * It compiles fine without deprecated kf methods</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1725969600">- Update to 24.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.1/
- No code change since 24.08.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1728388800">- Update to 24.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.2/
- No code change since 24.08.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1730808000">- Update to 24.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.3/
- No code change since 24.08.2</changelog>
</package>
<package pkgid="ba0d0f3169ef23265854bb088ad988c8454b117f9475eed5b4eddefa15a982563b6cb79d22357359da9e688cf2441c84c79b1d24b51365509cb7da8cd3d7fb75" name="akonadi-notes-devel" arch="x86_64">
  <version epoch="0" ver="24.08.3" rel="1.1"/>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1688472000">- Update to 23.04.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.04.3/
- No code change since 23.04.2</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1690891200">- Update to 23.07.80
  * New feature release
- Changes since 23.04.3:
  * Add missing Q_REQUIRED_RESULT
  * Use correct INSTALL_TARGETS_DEFAULT_ARGS</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1692014400">- Update to 23.07.90
  * New feature release
- No code change since 23.07.80</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1692532800">- Update to 23.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.0/
- No code change since 23.07.90</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1694520000">- Update to 23.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.1/
- No code change since 23.08.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1696939200">- Update to 23.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.2/
- No code change since 23.08.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1699358400">- Update to 23.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.3/
- No code change since 23.08.2</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1701777600">- Update to 23.08.4
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.4/
- No code change since 23.08.3</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1707480000">- Update to 24.01.95
  * https://kde.org/announcements/megarelease/6/rc2/</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1708689600">- Update to 24.02.0
  * New feature release
- No code change since 24.01.95</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1710849600">- Update to 24.02.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.1/
- No code change since 24.02.0
- Uninstall old KDE PIM 5 libraries (boo#1221515)</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1712664000">- Update to 24.02.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.2/
- No code change since 24.02.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1714737600">- Update to 24.04.80
  * New feature release
- Changes since 24.02.2:
  * Port deprecated method</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1716120000">- Update to 24.05.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.0/
- No code change since 24.04.80</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1718193600">- Update to 24.05.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.1/
- No code change since 24.05.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1719921600">- Update to 24.05.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.2/
- No code change since 24.05.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1724068800">- Update to 24.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.0/
- Changes since 24.05.2:
  * Port away from KMime::ContentTransferEncoding::setDecoded
  * fix some cmakelint warning
  * Fix reuse lint
  * Add build-ftime support
  * It compiles fine without deprecated kf methods</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1725969600">- Update to 24.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.1/
- No code change since 24.08.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1728388800">- Update to 24.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.2/
- No code change since 24.08.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1730808000">- Update to 24.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.3/
- No code change since 24.08.2</changelog>
</package>
<package pkgid="a7812f1251747165f45c42ba4c40247a565c60071b3e2277ffc8fca54bfdcd64147474fa2b44d1deb3f3965574ef3c41814b7cb2c5e177f33536dec89ff01bb4" name="akonadi-plugin-calendar" arch="x86_64">
  <version epoch="0" ver="24.08.3" rel="1.1"/>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1688472000">- Update to 23.04.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.04.3/
- No code change since 23.04.2</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1690891200">- Update to 23.07.80
  * New feature release
- Changes since 23.04.3:
  * Make sure to extract only email
  * Fix generate emails (don't create "foo" &lt;foo &lt;foo@kde.org&gt; &gt;)
  * Avoid too big dialogbox
  * Generate properties for CalendarSettings
  * Add Akonadi::CalendarUtils::displayName overload that takes ETM instead of ETMCalendar
  * Don't link twice against KF::Codecs
  * Add messagelib dependency
  * Sign/encrypt iTIP emails (kde#297956)
  * make free/busy invokable from QML
  * Fix platforms name
  * Remove the never set "MailTransport" setting
  * Remove CI 6 job. We will use kf6 branch for kf6 works
  * Simplify default mail transport code
  * Don't needlessly link against KIOWidgets
  * Add akonadi-mime dependency explicitly
  * Adapt to KMailTransportAkonadi being integrated into AkonadiMime
  * Expose missing kidentitymanagement
  * Add TodoModel (coming from eventviews)
  * Bump library version
  * Move SearchCollectionHelper to akonadi-calendar
  * Move CalendarSupport::createMimeData here
  * not export symbol of private methods
  * Add QCH support
  * Add missing lib
  * Use correct INSTALL_TARGETS_DEFAULT_ARGS</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1692014400">- Update to 23.07.90
  * New feature release
- Changes since 23.07.80:
  * Fix linking with self-built gpgmepp
  * Explicitly search for KPim{5,6}Libkleo</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1692532800">- Update to 23.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.0/
- No code change since 23.07.90</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1694520000">- Update to 23.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.1/
- Changes since 23.08.0:
  * Use correct identity when sending iTIP counter-proposal (kde#458524)</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1696939200">- Update to 23.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.2/
- No code change since 23.08.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1699358400">- Update to 23.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.3/
- No code change since 23.08.2</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1701777600">- Update to 23.08.4
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.4/
- No code change since 23.08.3</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1707480000">- Update to 24.01.95
  * https://kde.org/announcements/megarelease/6/rc2/</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1708689600">- Update to 24.02.0
  * New feature release
- Changes since 24.01.95:
  * Make the SearchCollectionHelper inactive by default
  * Implement a dialog for the user to choose the suspend duration (kde#481024)</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1710849600">- Update to 24.02.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.1/
- No code change since 24.02.0
- Uninstall old KDE PIM 5 libraries (boo#1221515)</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1712664000">- Update to 24.02.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.2/
- No code change since 24.02.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1714737600">- Update to 24.04.80
  * New feature release
- Changes since 24.02.2:
  * Adapt api
  * USe _L1
  * Make CalFilterProxyModel part of public API
  * Use QIODevice::WriteOnly directly
  * Drop support for KF5's deprecated KToolInvocation
  * Fix copyright
  * Add missing [[nodiscard]]
  * Add option to hide declined invitations from event views
  * Bump version so we can depend on the new API in KOrganizer
  * Make CollectionCalendar work with a proxy on top of ETM instead of raw ETM
  * Make CalFilterPartStatusProxyModel part of akonadi-calendar public API
  * Not necessary to use 6 suffix
  * Remove mem leak
  * Refactor the SearchCollectionHelper to use d-pointer
  * Make the SearchCollectionHelper inactive by default
  * There is not qml/js files
  * USe [[nodiscard]]
  * Don't export symbol
  * Remove unused variables
  * Add missing include moc
  * Remove commented code
  * Implement a dialog for the user to choose the suspend duration (kde#481024)
  * Use local includes</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1716120000">- Update to 24.05.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.0/
- Changes since 24.04.80:
  * IncidenceChanger: fix crash due to redundant deletion of handler</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1718193600">- Update to 24.05.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.1/
- No code change since 24.05.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1719921600">- Update to 24.05.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.2/
- Changes since 24.05.1:
  * Add missing change notification for initial calendar loading</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1724068800">- Update to 24.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.0/
- Changes since 24.05.2:
  * Remove unused argument
  * Use @info:placeholder
  * Fix version
  * Add missing change notification for initial calendar loading
  * fix cmake lint warning
  * Add missing [[nodiscard]]
  * Remove duplicate private area
  * Remove not necessary lib
  * ETMCalendar: add signal emitted when the user is checking/unchecking a calendar
  * Add build-ftime support
  * Add @info:tooltip
  * Add context i18n
  * Add @action:button
  * Use ellipsis character instead of three dots in UI strings
  * IncidenceChanger: fix crash due to redundant deletion of handler
  * It compiles fine without deprecated kf methods</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1725969600">- Update to 24.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.1/
- Changes since 24.08.0:
  * Fix duplicated text in "remind later" dialog</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1728388800">- Update to 24.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.2/
- No code change since 24.08.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1730808000">- Update to 24.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.3/
- No code change since 24.08.2</changelog>
</package>
<package pkgid="7dd68ce9bdb9d37785da202aed189fb3ea3beb869d329d4a529407562637136542aa0533de16e7d18c3a4d8344d3a2fa75a9193c0ed88660367a22eb7a51deb5" name="akonadi-plugin-calendar-debuginfo" arch="x86_64">
  <version epoch="0" ver="24.08.3" rel="1.1"/>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1688472000">- Update to 23.04.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.04.3/
- No code change since 23.04.2</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1690891200">- Update to 23.07.80
  * New feature release
- Changes since 23.04.3:
  * Make sure to extract only email
  * Fix generate emails (don't create "foo" &lt;foo &lt;foo@kde.org&gt; &gt;)
  * Avoid too big dialogbox
  * Generate properties for CalendarSettings
  * Add Akonadi::CalendarUtils::displayName overload that takes ETM instead of ETMCalendar
  * Don't link twice against KF::Codecs
  * Add messagelib dependency
  * Sign/encrypt iTIP emails (kde#297956)
  * make free/busy invokable from QML
  * Fix platforms name
  * Remove the never set "MailTransport" setting
  * Remove CI 6 job. We will use kf6 branch for kf6 works
  * Simplify default mail transport code
  * Don't needlessly link against KIOWidgets
  * Add akonadi-mime dependency explicitly
  * Adapt to KMailTransportAkonadi being integrated into AkonadiMime
  * Expose missing kidentitymanagement
  * Add TodoModel (coming from eventviews)
  * Bump library version
  * Move SearchCollectionHelper to akonadi-calendar
  * Move CalendarSupport::createMimeData here
  * not export symbol of private methods
  * Add QCH support
  * Add missing lib
  * Use correct INSTALL_TARGETS_DEFAULT_ARGS</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1692014400">- Update to 23.07.90
  * New feature release
- Changes since 23.07.80:
  * Fix linking with self-built gpgmepp
  * Explicitly search for KPim{5,6}Libkleo</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1692532800">- Update to 23.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.0/
- No code change since 23.07.90</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1694520000">- Update to 23.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.1/
- Changes since 23.08.0:
  * Use correct identity when sending iTIP counter-proposal (kde#458524)</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1696939200">- Update to 23.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.2/
- No code change since 23.08.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1699358400">- Update to 23.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.3/
- No code change since 23.08.2</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1701777600">- Update to 23.08.4
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.4/
- No code change since 23.08.3</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1707480000">- Update to 24.01.95
  * https://kde.org/announcements/megarelease/6/rc2/</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1708689600">- Update to 24.02.0
  * New feature release
- Changes since 24.01.95:
  * Make the SearchCollectionHelper inactive by default
  * Implement a dialog for the user to choose the suspend duration (kde#481024)</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1710849600">- Update to 24.02.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.1/
- No code change since 24.02.0
- Uninstall old KDE PIM 5 libraries (boo#1221515)</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1712664000">- Update to 24.02.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.2/
- No code change since 24.02.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1714737600">- Update to 24.04.80
  * New feature release
- Changes since 24.02.2:
  * Adapt api
  * USe _L1
  * Make CalFilterProxyModel part of public API
  * Use QIODevice::WriteOnly directly
  * Drop support for KF5's deprecated KToolInvocation
  * Fix copyright
  * Add missing [[nodiscard]]
  * Add option to hide declined invitations from event views
  * Bump version so we can depend on the new API in KOrganizer
  * Make CollectionCalendar work with a proxy on top of ETM instead of raw ETM
  * Make CalFilterPartStatusProxyModel part of akonadi-calendar public API
  * Not necessary to use 6 suffix
  * Remove mem leak
  * Refactor the SearchCollectionHelper to use d-pointer
  * Make the SearchCollectionHelper inactive by default
  * There is not qml/js files
  * USe [[nodiscard]]
  * Don't export symbol
  * Remove unused variables
  * Add missing include moc
  * Remove commented code
  * Implement a dialog for the user to choose the suspend duration (kde#481024)
  * Use local includes</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1716120000">- Update to 24.05.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.0/
- Changes since 24.04.80:
  * IncidenceChanger: fix crash due to redundant deletion of handler</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1718193600">- Update to 24.05.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.1/
- No code change since 24.05.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1719921600">- Update to 24.05.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.2/
- Changes since 24.05.1:
  * Add missing change notification for initial calendar loading</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1724068800">- Update to 24.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.0/
- Changes since 24.05.2:
  * Remove unused argument
  * Use @info:placeholder
  * Fix version
  * Add missing change notification for initial calendar loading
  * fix cmake lint warning
  * Add missing [[nodiscard]]
  * Remove duplicate private area
  * Remove not necessary lib
  * ETMCalendar: add signal emitted when the user is checking/unchecking a calendar
  * Add build-ftime support
  * Add @info:tooltip
  * Add context i18n
  * Add @action:button
  * Use ellipsis character instead of three dots in UI strings
  * IncidenceChanger: fix crash due to redundant deletion of handler
  * It compiles fine without deprecated kf methods</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1725969600">- Update to 24.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.1/
- Changes since 24.08.0:
  * Fix duplicated text in "remind later" dialog</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1728388800">- Update to 24.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.2/
- No code change since 24.08.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1730808000">- Update to 24.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.3/
- No code change since 24.08.2</changelog>
</package>
<package pkgid="76fc42dcb113704e98381636675ace542b036bb0ffa1371bd01123c0753dbdd90c4d27b3535ece43857c730e45be85a1f89eb3b4d68c2f50b77771e0fca2ab57" name="akonadi-plugin-contacts" arch="x86_64">
  <version epoch="0" ver="24.08.3" rel="1.1"/>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1693828800">- Init akonadi-contacts</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1707480000">- Update to 24.01.95
  * https://kde.org/fr/announcements/megarelease/6/rc2/</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1708689600">- Update to 24.02.0
  * New feature release
- No code change since 24.01.95</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1710849600">- Update to 24.02.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.1/
- Changes since 24.02.0:
  * Fix bug 482737: KAddressbook crash editing entry (kde#482737)
- Uninstall old KDE PIM 5 libraries (boo#1221515)</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1712664000">- Update to 24.02.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.2/
- No code change since 24.02.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1714737600">- Update to 24.04.80
  * New feature release
- Changes since 24.02.2:
  * We don't have kcfg* file
  * Add missing [[nodiscard]]
  * Add missing explicit keyword
  * Use local includes
  * QLatin1String is same as QLatin1StringView, we need to use QLatin1StringView now
  * Activate CI test</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1716120000">- Update to 24.05.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.0/
- Changes since 24.04.80:
  * Fix 486837: "upon new contact creation, KAddressbook always warns: Location was not saved. Do you want to close editor?" (kde#486837)</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1718193600">- Update to 24.05.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.1/
- No code change since 24.05.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1719921600">- Update to 24.05.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.2/
- No code change since 24.05.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1724068800">- Update to 24.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.0/
- Changes since 24.05.2:
  * Use @info:placeholder
  * Fix forward declaration of CustomFieldsModel
  * fix cmake lint warning
  * Remove KF6::ConfigCore
  * Remove unused include
  * USe @action:button
  * Add build-ftime support
  * Use context i18n
  * Add @info:tooltip
  * Add @action:button
  * It compiles fine without deprecated kf methods</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1725969600">- Update to 24.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.1/
- No code change since 24.08.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1728388800">- Update to 24.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.2/
- No code change since 24.08.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1728820800">- Add upstream crash fix (kde#494242):
  * 0001-Fix-KAddressBook-crash-when-editing-a-contact-with-n.patch</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1730808000">- Update to 24.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.3/
- No code change since 24.08.2</changelog>
</package>
<package pkgid="00aea65fa3e16d08a6476d5cd741781564dbfaaabe7f3a5ad9c4d41ffacc765cc3689b9d1b9006f0880d9ecb12200133a4f60f9ecdf9bc36f17e9b626b6a5c2e" name="akonadi-plugin-contacts-debuginfo" arch="x86_64">
  <version epoch="0" ver="24.08.3" rel="1.1"/>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1693828800">- Init akonadi-contacts</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1707480000">- Update to 24.01.95
  * https://kde.org/fr/announcements/megarelease/6/rc2/</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1708689600">- Update to 24.02.0
  * New feature release
- No code change since 24.01.95</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1710849600">- Update to 24.02.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.1/
- Changes since 24.02.0:
  * Fix bug 482737: KAddressbook crash editing entry (kde#482737)
- Uninstall old KDE PIM 5 libraries (boo#1221515)</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1712664000">- Update to 24.02.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.2/
- No code change since 24.02.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1714737600">- Update to 24.04.80
  * New feature release
- Changes since 24.02.2:
  * We don't have kcfg* file
  * Add missing [[nodiscard]]
  * Add missing explicit keyword
  * Use local includes
  * QLatin1String is same as QLatin1StringView, we need to use QLatin1StringView now
  * Activate CI test</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1716120000">- Update to 24.05.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.0/
- Changes since 24.04.80:
  * Fix 486837: "upon new contact creation, KAddressbook always warns: Location was not saved. Do you want to close editor?" (kde#486837)</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1718193600">- Update to 24.05.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.1/
- No code change since 24.05.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1719921600">- Update to 24.05.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.2/
- No code change since 24.05.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1724068800">- Update to 24.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.0/
- Changes since 24.05.2:
  * Use @info:placeholder
  * Fix forward declaration of CustomFieldsModel
  * fix cmake lint warning
  * Remove KF6::ConfigCore
  * Remove unused include
  * USe @action:button
  * Add build-ftime support
  * Use context i18n
  * Add @info:tooltip
  * Add @action:button
  * It compiles fine without deprecated kf methods</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1725969600">- Update to 24.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.1/
- No code change since 24.08.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1728388800">- Update to 24.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.2/
- No code change since 24.08.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1728820800">- Add upstream crash fix (kde#494242):
  * 0001-Fix-KAddressBook-crash-when-editing-a-contact-with-n.patch</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1730808000">- Update to 24.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.3/
- No code change since 24.08.2</changelog>
</package>
<package pkgid="a7b37069afc9d969826e6f4ad3aa4862302e09d4b900d3cbe1bca5da7408ab556fb2972a6d5b6468181eb32fe8ce39cd73a0cfff69a05860a10cbbd5b94e3b75" name="akonadi-plugin-mime" arch="x86_64">
  <version epoch="0" ver="24.08.3" rel="1.1"/>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1688472000">- Update to 23.04.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.04.3/
- No code change since 23.04.2</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1690891200">- Update to 23.07.80
  * New feature release
- Changes since 23.04.3:
  * increase version
  * Second step: move/adapt class from kmailtransportakonadi
  * not export symbol of private methods
  * Fix generate qch
  * Use correct INSTALL_TARGETS_DEFAULT_ARGS</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1692014400">- Update to 23.07.90
  * New feature release
- No code change since 23.07.80</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1692532800">- Update to 23.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.0/
- No code change since 23.07.90</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1694520000">- Update to 23.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.1/
- No code change since 23.08.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1696939200">- Update to 23.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.2/
- No code change since 23.08.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1699358400">- Update to 23.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.3/
- No code change since 23.08.2</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1701777600">- Update to 23.08.4
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.4/
- No code change since 23.08.3</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1707480000">- Update to 24.01.95
  * https://kde.org/announcements/megarelease/6/rc2/</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1708689600">- Update to 24.02.0
  * New feature release
- No code change since 24.01.95</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1710849600">- Update to 24.02.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.1/
- No code change since 24.02.0
- Uninstall old KDE PIM 5 libraries (boo#1221515)</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1712664000">- Update to 24.02.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.2/
- No code change since 24.02.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1714737600">- Update to 24.04.80
  * New feature release
- Changes since 24.02.2:
  * It compiles fine without deprecated method &lt; kf6.0
  * We need kio here
  * Use KFormat directly
  * Add missing [[nodiscard]]
  * Remove commented include
  * Use local includes</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1716120000">- Update to 24.05.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.0/
- No code change since 24.04.80</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1718193600">- Update to 24.05.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.1/
- Changes since 24.05.0:
  * Explicitly link against QtDBus</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1719921600">- Update to 24.05.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.2/
- No code change since 24.05.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1724068800">- Update to 24.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.0/
- Changes since 24.05.2:
  * Remove unused utf8
  * kcoreaddons uses minimum version == 1.8
  * Fix cmake lint warning
  * Add missing [[nodiscard]]
  * Use canonical KMime includes
  * Add build-ftime support
  * Use ellipsis character instead of three dots in UI strings
  * It compiles fine without deprecated kf methods</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1725969600">- Update to 24.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.1/
- No code change since 24.08.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1728388800">- Update to 24.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.2/
- No code change since 24.08.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1730808000">- Update to 24.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.3/
- No code change since 24.08.2</changelog>
</package>
<package pkgid="711766a001d5195c079accff7d7fe172a23e9dcf4aee3c93fa3e8edc5bc20d244141a54e3db5af3b4f62e10d2d81f5e32e383c5d66b1ca728fc665d5babc9153" name="akonadi-plugin-mime-debuginfo" arch="x86_64">
  <version epoch="0" ver="24.08.3" rel="1.1"/>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1688472000">- Update to 23.04.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.04.3/
- No code change since 23.04.2</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1690891200">- Update to 23.07.80
  * New feature release
- Changes since 23.04.3:
  * increase version
  * Second step: move/adapt class from kmailtransportakonadi
  * not export symbol of private methods
  * Fix generate qch
  * Use correct INSTALL_TARGETS_DEFAULT_ARGS</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1692014400">- Update to 23.07.90
  * New feature release
- No code change since 23.07.80</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1692532800">- Update to 23.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.0/
- No code change since 23.07.90</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1694520000">- Update to 23.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.1/
- No code change since 23.08.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1696939200">- Update to 23.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.2/
- No code change since 23.08.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1699358400">- Update to 23.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.3/
- No code change since 23.08.2</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1701777600">- Update to 23.08.4
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.4/
- No code change since 23.08.3</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1707480000">- Update to 24.01.95
  * https://kde.org/announcements/megarelease/6/rc2/</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1708689600">- Update to 24.02.0
  * New feature release
- No code change since 24.01.95</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1710849600">- Update to 24.02.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.1/
- No code change since 24.02.0
- Uninstall old KDE PIM 5 libraries (boo#1221515)</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1712664000">- Update to 24.02.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.2/
- No code change since 24.02.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1714737600">- Update to 24.04.80
  * New feature release
- Changes since 24.02.2:
  * It compiles fine without deprecated method &lt; kf6.0
  * We need kio here
  * Use KFormat directly
  * Add missing [[nodiscard]]
  * Remove commented include
  * Use local includes</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1716120000">- Update to 24.05.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.0/
- No code change since 24.04.80</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1718193600">- Update to 24.05.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.1/
- Changes since 24.05.0:
  * Explicitly link against QtDBus</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1719921600">- Update to 24.05.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.2/
- No code change since 24.05.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1724068800">- Update to 24.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.0/
- Changes since 24.05.2:
  * Remove unused utf8
  * kcoreaddons uses minimum version == 1.8
  * Fix cmake lint warning
  * Add missing [[nodiscard]]
  * Use canonical KMime includes
  * Add build-ftime support
  * Use ellipsis character instead of three dots in UI strings
  * It compiles fine without deprecated kf methods</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1725969600">- Update to 24.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.1/
- No code change since 24.08.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1728388800">- Update to 24.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.2/
- No code change since 24.08.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1730808000">- Update to 24.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.3/
- No code change since 24.08.2</changelog>
</package>
<package pkgid="bc8e94a2fbabcf0df546d2782618924de6be2d8dcef525e6ad0017351dc835443b55eff98829d44c055751e7bbf7a2f08450dc9c49c87965b631cc8d5d181a7a" name="akonadi-search" arch="src">
  <version epoch="0" ver="24.08.3" rel="1.1"/>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1688472000">- Update to 23.04.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.04.3/
- No code change since 23.04.2</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1690891200">- Update to 23.07.80
  * New feature release
- Changes since 23.04.3:
  * Disable broken test
  * Enable testing again
  * Parse html with rust
  * Remove CI 6 job. We will use kf6 branch for kf6 works
  * Add specific debug category for email
  * Add basic test for calendar indexer
  * Use smart pointers in Index
  * Add debug output for calendar indexer
  * Modernize codebase of CalendarIndexer
  * not export symbol of private methods
  * Exclude more duplicate contact
  * Avoid to show duplicate mails
  * [runner] Filter out email matches where writing doesn't make sense
  * Port to new api
  * Use correct INSTALL_TARGETS_DEFAULT_ARGS</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1692014400">- Update to 23.07.90
  * New feature release
- No code change since 23.07.80</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1692532800">- Update to 23.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.0/
- No code change since 23.07.90</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1694520000">- Update to 23.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.1/
- No code change since 23.08.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1696939200">- Update to 23.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.2/
- Changes since 23.08.1:
  * Update Rust dependencies (kde#474526)
  * Move convertion from html to text out-of-process (kde#474747)</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1699358400">- Update to 23.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.3/
- Changes since 23.08.2:
  * htmltotext needs a QGuiApplication, because QTextHtmlParser does</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1701777600">- Update to 23.08.4
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.4/
- No code change since 23.08.3</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1707480000">- Update to 24.01.95
  * https://kde.org/announcements/megarelease/6/rc2/</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1708689600">- Update to 24.02.0
  * New feature release
- No code change since 24.01.95</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1710849600">- Update to 24.02.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.1/
- No code change since 24.02.0
- Uninstall old KDE PIM 5 libraries (boo#1221515)</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1712664000">- Update to 24.02.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.2/
- No code change since 24.02.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1714737600">- Update to 24.04.80
  * New feature release
- Changes since 24.02.2:
  * Port deprecated QCheckBox::stateChanged
  * Use _L1 directly
  * Initialize pointer
  * const'ify pointer
  * Update copyright
  * Use [[nodiscard]]
  * Const'ify variable
  * Minor optimization
  * We can use directly QStringList
  * Remove unused variable
  * Don't export private method + remove Q_SLOTS + add missing [[nodiscard]]
  * Not necessary to use 6 suffix
  * Use local include
  * Use isEmpty()
  * Fix searchplugintest
  * Port deprecated methods</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1716120000">- Update to 24.05.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.0/
- No code change since 24.04.80</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1718193600">- Update to 24.05.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.1/
- No code change since 24.05.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1719921600">- Update to 24.05.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.2/
- No code change since 24.05.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1724068800">- Update to 24.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.0/
- Changes since 24.05.2:
  * Use not deprecated globalMatchView
  * Remove unused utf8
  * Fix cmake lint warning
  * Fix macOS build
  * Add build-ftime support
  * Remove ServiceType from KRunner plugin
  * Use i18n context
  * It compiles fine without deprecated kf methods</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1725969600">- Update to 24.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.1/
- No code change since 24.08.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1728388800">- Update to 24.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.2/
- No code change since 24.08.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1730808000">- Update to 24.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.3/
- No code change since 24.08.2</changelog>
</package>
<package pkgid="c4d2cc07a9299ed8e7bd2ebbb7dcc55a928af9f63a3658b8160ff119f880ce3561f658f7daa13333dd050a85ee6daafb69a3cfabc6d55f15082992b95fb34e39" name="akonadi-search" arch="x86_64">
  <version epoch="0" ver="24.08.3" rel="1.1"/>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1688472000">- Update to 23.04.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.04.3/
- No code change since 23.04.2</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1690891200">- Update to 23.07.80
  * New feature release
- Changes since 23.04.3:
  * Disable broken test
  * Enable testing again
  * Parse html with rust
  * Remove CI 6 job. We will use kf6 branch for kf6 works
  * Add specific debug category for email
  * Add basic test for calendar indexer
  * Use smart pointers in Index
  * Add debug output for calendar indexer
  * Modernize codebase of CalendarIndexer
  * not export symbol of private methods
  * Exclude more duplicate contact
  * Avoid to show duplicate mails
  * [runner] Filter out email matches where writing doesn't make sense
  * Port to new api
  * Use correct INSTALL_TARGETS_DEFAULT_ARGS</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1692014400">- Update to 23.07.90
  * New feature release
- No code change since 23.07.80</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1692532800">- Update to 23.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.0/
- No code change since 23.07.90</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1694520000">- Update to 23.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.1/
- No code change since 23.08.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1696939200">- Update to 23.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.2/
- Changes since 23.08.1:
  * Update Rust dependencies (kde#474526)
  * Move convertion from html to text out-of-process (kde#474747)</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1699358400">- Update to 23.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.3/
- Changes since 23.08.2:
  * htmltotext needs a QGuiApplication, because QTextHtmlParser does</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1701777600">- Update to 23.08.4
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.4/
- No code change since 23.08.3</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1707480000">- Update to 24.01.95
  * https://kde.org/announcements/megarelease/6/rc2/</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1708689600">- Update to 24.02.0
  * New feature release
- No code change since 24.01.95</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1710849600">- Update to 24.02.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.1/
- No code change since 24.02.0
- Uninstall old KDE PIM 5 libraries (boo#1221515)</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1712664000">- Update to 24.02.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.2/
- No code change since 24.02.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1714737600">- Update to 24.04.80
  * New feature release
- Changes since 24.02.2:
  * Port deprecated QCheckBox::stateChanged
  * Use _L1 directly
  * Initialize pointer
  * const'ify pointer
  * Update copyright
  * Use [[nodiscard]]
  * Const'ify variable
  * Minor optimization
  * We can use directly QStringList
  * Remove unused variable
  * Don't export private method + remove Q_SLOTS + add missing [[nodiscard]]
  * Not necessary to use 6 suffix
  * Use local include
  * Use isEmpty()
  * Fix searchplugintest
  * Port deprecated methods</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1716120000">- Update to 24.05.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.0/
- No code change since 24.04.80</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1718193600">- Update to 24.05.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.1/
- No code change since 24.05.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1719921600">- Update to 24.05.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.2/
- No code change since 24.05.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1724068800">- Update to 24.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.0/
- Changes since 24.05.2:
  * Use not deprecated globalMatchView
  * Remove unused utf8
  * Fix cmake lint warning
  * Fix macOS build
  * Add build-ftime support
  * Remove ServiceType from KRunner plugin
  * Use i18n context
  * It compiles fine without deprecated kf methods</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1725969600">- Update to 24.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.1/
- No code change since 24.08.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1728388800">- Update to 24.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.2/
- No code change since 24.08.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1730808000">- Update to 24.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.3/
- No code change since 24.08.2</changelog>
</package>
<package pkgid="09ff511a7144ab36b5734246c99f07f194c5f150fe5acc125ec49d216bc347ed04483363a0d6e66b2ea7a0659b4434716f889fac6744752fc170bb3b88f76287" name="akonadi-search-debuginfo" arch="x86_64">
  <version epoch="0" ver="24.08.3" rel="1.1"/>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1688472000">- Update to 23.04.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.04.3/
- No code change since 23.04.2</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1690891200">- Update to 23.07.80
  * New feature release
- Changes since 23.04.3:
  * Disable broken test
  * Enable testing again
  * Parse html with rust
  * Remove CI 6 job. We will use kf6 branch for kf6 works
  * Add specific debug category for email
  * Add basic test for calendar indexer
  * Use smart pointers in Index
  * Add debug output for calendar indexer
  * Modernize codebase of CalendarIndexer
  * not export symbol of private methods
  * Exclude more duplicate contact
  * Avoid to show duplicate mails
  * [runner] Filter out email matches where writing doesn't make sense
  * Port to new api
  * Use correct INSTALL_TARGETS_DEFAULT_ARGS</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1692014400">- Update to 23.07.90
  * New feature release
- No code change since 23.07.80</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1692532800">- Update to 23.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.0/
- No code change since 23.07.90</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1694520000">- Update to 23.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.1/
- No code change since 23.08.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1696939200">- Update to 23.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.2/
- Changes since 23.08.1:
  * Update Rust dependencies (kde#474526)
  * Move convertion from html to text out-of-process (kde#474747)</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1699358400">- Update to 23.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.3/
- Changes since 23.08.2:
  * htmltotext needs a QGuiApplication, because QTextHtmlParser does</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1701777600">- Update to 23.08.4
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.4/
- No code change since 23.08.3</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1707480000">- Update to 24.01.95
  * https://kde.org/announcements/megarelease/6/rc2/</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1708689600">- Update to 24.02.0
  * New feature release
- No code change since 24.01.95</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1710849600">- Update to 24.02.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.1/
- No code change since 24.02.0
- Uninstall old KDE PIM 5 libraries (boo#1221515)</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1712664000">- Update to 24.02.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.2/
- No code change since 24.02.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1714737600">- Update to 24.04.80
  * New feature release
- Changes since 24.02.2:
  * Port deprecated QCheckBox::stateChanged
  * Use _L1 directly
  * Initialize pointer
  * const'ify pointer
  * Update copyright
  * Use [[nodiscard]]
  * Const'ify variable
  * Minor optimization
  * We can use directly QStringList
  * Remove unused variable
  * Don't export private method + remove Q_SLOTS + add missing [[nodiscard]]
  * Not necessary to use 6 suffix
  * Use local include
  * Use isEmpty()
  * Fix searchplugintest
  * Port deprecated methods</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1716120000">- Update to 24.05.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.0/
- No code change since 24.04.80</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1718193600">- Update to 24.05.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.1/
- No code change since 24.05.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1719921600">- Update to 24.05.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.2/
- No code change since 24.05.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1724068800">- Update to 24.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.0/
- Changes since 24.05.2:
  * Use not deprecated globalMatchView
  * Remove unused utf8
  * Fix cmake lint warning
  * Fix macOS build
  * Add build-ftime support
  * Remove ServiceType from KRunner plugin
  * Use i18n context
  * It compiles fine without deprecated kf methods</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1725969600">- Update to 24.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.1/
- No code change since 24.08.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1728388800">- Update to 24.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.2/
- No code change since 24.08.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1730808000">- Update to 24.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.3/
- No code change since 24.08.2</changelog>
</package>
<package pkgid="35f1da799171ddaeca0b4240f12b71365d45f767d57c3949ef6617b5b30266473aa4f4e960229c18283a3489da9834eb66199d2577f835fb1e05b3f6e3819140" name="akonadi-search-debugsource" arch="x86_64">
  <version epoch="0" ver="24.08.3" rel="1.1"/>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1688472000">- Update to 23.04.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.04.3/
- No code change since 23.04.2</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1690891200">- Update to 23.07.80
  * New feature release
- Changes since 23.04.3:
  * Disable broken test
  * Enable testing again
  * Parse html with rust
  * Remove CI 6 job. We will use kf6 branch for kf6 works
  * Add specific debug category for email
  * Add basic test for calendar indexer
  * Use smart pointers in Index
  * Add debug output for calendar indexer
  * Modernize codebase of CalendarIndexer
  * not export symbol of private methods
  * Exclude more duplicate contact
  * Avoid to show duplicate mails
  * [runner] Filter out email matches where writing doesn't make sense
  * Port to new api
  * Use correct INSTALL_TARGETS_DEFAULT_ARGS</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1692014400">- Update to 23.07.90
  * New feature release
- No code change since 23.07.80</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1692532800">- Update to 23.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.0/
- No code change since 23.07.90</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1694520000">- Update to 23.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.1/
- No code change since 23.08.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1696939200">- Update to 23.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.2/
- Changes since 23.08.1:
  * Update Rust dependencies (kde#474526)
  * Move convertion from html to text out-of-process (kde#474747)</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1699358400">- Update to 23.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.3/
- Changes since 23.08.2:
  * htmltotext needs a QGuiApplication, because QTextHtmlParser does</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1701777600">- Update to 23.08.4
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.4/
- No code change since 23.08.3</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1707480000">- Update to 24.01.95
  * https://kde.org/announcements/megarelease/6/rc2/</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1708689600">- Update to 24.02.0
  * New feature release
- No code change since 24.01.95</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1710849600">- Update to 24.02.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.1/
- No code change since 24.02.0
- Uninstall old KDE PIM 5 libraries (boo#1221515)</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1712664000">- Update to 24.02.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.2/
- No code change since 24.02.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1714737600">- Update to 24.04.80
  * New feature release
- Changes since 24.02.2:
  * Port deprecated QCheckBox::stateChanged
  * Use _L1 directly
  * Initialize pointer
  * const'ify pointer
  * Update copyright
  * Use [[nodiscard]]
  * Const'ify variable
  * Minor optimization
  * We can use directly QStringList
  * Remove unused variable
  * Don't export private method + remove Q_SLOTS + add missing [[nodiscard]]
  * Not necessary to use 6 suffix
  * Use local include
  * Use isEmpty()
  * Fix searchplugintest
  * Port deprecated methods</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1716120000">- Update to 24.05.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.0/
- No code change since 24.04.80</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1718193600">- Update to 24.05.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.1/
- No code change since 24.05.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1719921600">- Update to 24.05.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.2/
- No code change since 24.05.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1724068800">- Update to 24.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.0/
- Changes since 24.05.2:
  * Use not deprecated globalMatchView
  * Remove unused utf8
  * Fix cmake lint warning
  * Fix macOS build
  * Add build-ftime support
  * Remove ServiceType from KRunner plugin
  * Use i18n context
  * It compiles fine without deprecated kf methods</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1725969600">- Update to 24.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.1/
- No code change since 24.08.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1728388800">- Update to 24.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.2/
- No code change since 24.08.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1730808000">- Update to 24.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.3/
- No code change since 24.08.2</changelog>
</package>
<package pkgid="a02dbc0006d5e81eb8493a6c3e3ba1853c41d6d73fc6a1bf6deec5016f27bd64a211d0189582acccc53ce1be5efda438141603895480c0e4b475ad2f87726886" name="akonadi-search-devel" arch="x86_64">
  <version epoch="0" ver="24.08.3" rel="1.1"/>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1688472000">- Update to 23.04.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.04.3/
- No code change since 23.04.2</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1690891200">- Update to 23.07.80
  * New feature release
- Changes since 23.04.3:
  * Disable broken test
  * Enable testing again
  * Parse html with rust
  * Remove CI 6 job. We will use kf6 branch for kf6 works
  * Add specific debug category for email
  * Add basic test for calendar indexer
  * Use smart pointers in Index
  * Add debug output for calendar indexer
  * Modernize codebase of CalendarIndexer
  * not export symbol of private methods
  * Exclude more duplicate contact
  * Avoid to show duplicate mails
  * [runner] Filter out email matches where writing doesn't make sense
  * Port to new api
  * Use correct INSTALL_TARGETS_DEFAULT_ARGS</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1692014400">- Update to 23.07.90
  * New feature release
- No code change since 23.07.80</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1692532800">- Update to 23.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.0/
- No code change since 23.07.90</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1694520000">- Update to 23.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.1/
- No code change since 23.08.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1696939200">- Update to 23.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.2/
- Changes since 23.08.1:
  * Update Rust dependencies (kde#474526)
  * Move convertion from html to text out-of-process (kde#474747)</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1699358400">- Update to 23.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.3/
- Changes since 23.08.2:
  * htmltotext needs a QGuiApplication, because QTextHtmlParser does</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1701777600">- Update to 23.08.4
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.4/
- No code change since 23.08.3</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1707480000">- Update to 24.01.95
  * https://kde.org/announcements/megarelease/6/rc2/</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1708689600">- Update to 24.02.0
  * New feature release
- No code change since 24.01.95</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1710849600">- Update to 24.02.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.1/
- No code change since 24.02.0
- Uninstall old KDE PIM 5 libraries (boo#1221515)</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1712664000">- Update to 24.02.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.2/
- No code change since 24.02.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1714737600">- Update to 24.04.80
  * New feature release
- Changes since 24.02.2:
  * Port deprecated QCheckBox::stateChanged
  * Use _L1 directly
  * Initialize pointer
  * const'ify pointer
  * Update copyright
  * Use [[nodiscard]]
  * Const'ify variable
  * Minor optimization
  * We can use directly QStringList
  * Remove unused variable
  * Don't export private method + remove Q_SLOTS + add missing [[nodiscard]]
  * Not necessary to use 6 suffix
  * Use local include
  * Use isEmpty()
  * Fix searchplugintest
  * Port deprecated methods</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1716120000">- Update to 24.05.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.0/
- No code change since 24.04.80</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1718193600">- Update to 24.05.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.1/
- No code change since 24.05.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1719921600">- Update to 24.05.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.2/
- No code change since 24.05.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1724068800">- Update to 24.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.0/
- Changes since 24.05.2:
  * Use not deprecated globalMatchView
  * Remove unused utf8
  * Fix cmake lint warning
  * Fix macOS build
  * Add build-ftime support
  * Remove ServiceType from KRunner plugin
  * Use i18n context
  * It compiles fine without deprecated kf methods</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1725969600">- Update to 24.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.1/
- No code change since 24.08.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1728388800">- Update to 24.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.2/
- No code change since 24.08.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1730808000">- Update to 24.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.3/
- No code change since 24.08.2</changelog>
</package>
<package pkgid="f9d8dc8fb8cb1b831da28ececf99520a3bb45b94f7b6e7abf934fe5d496b116d1f0c91c0a4c868f1ebacb57a982c4cc988a942be1c4de1715b45dab171c4bb29" name="akonadi-search-lang" arch="noarch">
  <version epoch="0" ver="24.08.3" rel="1.1"/>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1688472000">- Update to 23.04.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.04.3/
- No code change since 23.04.2</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1690891200">- Update to 23.07.80
  * New feature release
- Changes since 23.04.3:
  * Disable broken test
  * Enable testing again
  * Parse html with rust
  * Remove CI 6 job. We will use kf6 branch for kf6 works
  * Add specific debug category for email
  * Add basic test for calendar indexer
  * Use smart pointers in Index
  * Add debug output for calendar indexer
  * Modernize codebase of CalendarIndexer
  * not export symbol of private methods
  * Exclude more duplicate contact
  * Avoid to show duplicate mails
  * [runner] Filter out email matches where writing doesn't make sense
  * Port to new api
  * Use correct INSTALL_TARGETS_DEFAULT_ARGS</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1692014400">- Update to 23.07.90
  * New feature release
- No code change since 23.07.80</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1692532800">- Update to 23.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.0/
- No code change since 23.07.90</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1694520000">- Update to 23.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.1/
- No code change since 23.08.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1696939200">- Update to 23.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.2/
- Changes since 23.08.1:
  * Update Rust dependencies (kde#474526)
  * Move convertion from html to text out-of-process (kde#474747)</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1699358400">- Update to 23.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.3/
- Changes since 23.08.2:
  * htmltotext needs a QGuiApplication, because QTextHtmlParser does</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1701777600">- Update to 23.08.4
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.4/
- No code change since 23.08.3</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1707480000">- Update to 24.01.95
  * https://kde.org/announcements/megarelease/6/rc2/</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1708689600">- Update to 24.02.0
  * New feature release
- No code change since 24.01.95</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1710849600">- Update to 24.02.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.1/
- No code change since 24.02.0
- Uninstall old KDE PIM 5 libraries (boo#1221515)</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1712664000">- Update to 24.02.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.2/
- No code change since 24.02.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1714737600">- Update to 24.04.80
  * New feature release
- Changes since 24.02.2:
  * Port deprecated QCheckBox::stateChanged
  * Use _L1 directly
  * Initialize pointer
  * const'ify pointer
  * Update copyright
  * Use [[nodiscard]]
  * Const'ify variable
  * Minor optimization
  * We can use directly QStringList
  * Remove unused variable
  * Don't export private method + remove Q_SLOTS + add missing [[nodiscard]]
  * Not necessary to use 6 suffix
  * Use local include
  * Use isEmpty()
  * Fix searchplugintest
  * Port deprecated methods</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1716120000">- Update to 24.05.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.0/
- No code change since 24.04.80</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1718193600">- Update to 24.05.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.1/
- No code change since 24.05.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1719921600">- Update to 24.05.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.2/
- No code change since 24.05.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1724068800">- Update to 24.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.0/
- Changes since 24.05.2:
  * Use not deprecated globalMatchView
  * Remove unused utf8
  * Fix cmake lint warning
  * Fix macOS build
  * Add build-ftime support
  * Remove ServiceType from KRunner plugin
  * Use i18n context
  * It compiles fine without deprecated kf methods</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1725969600">- Update to 24.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.1/
- No code change since 24.08.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1728388800">- Update to 24.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.2/
- No code change since 24.08.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1730808000">- Update to 24.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.3/
- No code change since 24.08.2</changelog>
</package>
<package pkgid="c2f5e4992337a687025f2540a8d517c92639c94c024135812447e47ebcefb05b984ac70b1d27a628dbf4c2948439385675f5cc774b9ec4bc2dc78218cb31b01a" name="akonadiconsole" arch="src">
  <version epoch="0" ver="24.08.3" rel="1.1"/>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1688472000">- Update to 23.04.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.04.3/
- No code change since 23.04.2</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1690891200">- Update to 23.07.80
  * New feature release
- Changes since 23.04.3:
  * Add title
  * Use ClearCacheFoldersJob
  * Remove CI 6 job. We will use kf6 branch for kf6 works
  * Adapt to new akonadi-contact/akonadi-contact-editor api
  * Fix enable/disable buttons
  * Not necessary to use slot here
  * Add info when we can't find element
  * Allow to translate akonadiconsole
  * Remove unused method
  * Remove search configwidget</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1692014400">- Update to 23.07.90
  * New feature release
- No code change since 23.07.80</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1692532800">- Update to 23.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.0/
- No code change since 23.07.90</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1694520000">- Update to 23.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.1/
- No code change since 23.08.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1696939200">- Update to 23.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.2/
- No code change since 23.08.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1699358400">- Update to 23.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.3/
- No code change since 23.08.2</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1701777600">- Update to 23.08.4
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.4/
- No code change since 23.08.3</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1707480000">- Update to 24.01.95
  * https://kde.org/announcements/megarelease/6/rc2/</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1708689600">- Update to 24.02.0
  * New feature release
- No code change since 24.01.95</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1710849600">- Update to 24.02.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.1/
- No code change since 24.02.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1712664000">- Update to 24.02.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.2/
- No code change since 24.02.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1714737600">- Update to 24.04.80
  * New feature release
- Changes since 24.02.2:
  * Use _L1 directly
  * We use lambda now + add missing [[nodiscard]]
  * Port deprecated method
  * Drop support for KF5's deprecated KToolInvocation
  * Fix build by requiring C++20</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1716120000">- Update to 24.05.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.0/
- No code change since 24.04.80</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1718193600">- Update to 24.05.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.1/
- No code change since 24.05.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1719921600">- Update to 24.05.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.2/
- No code change since 24.05.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1724068800">- Update to 24.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.0/
- Changes since 24.05.2:
  * Use @info:placeholder
  * Fix cmakelint issues
  * Remove Akonadi Relation support
  * Fix cmake lint warning
  * USe @action:button
  * Add build-ftime support
  * Use context i18n
  * Add QPushbutton i18n context
  * It compiles fine without deprecated kf methods</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1725969600">- Update to 24.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.1/
- No code change since 24.08.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1728388800">- Update to 24.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.2/
- No code change since 24.08.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1730808000">- Update to 24.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.3/
- No code change since 24.08.2</changelog>
</package>
<package pkgid="6990255d244d40c09bbf59e1fae4f3e9fb89e8f367fbf5ef3867a9b3e92b1961ac0424b451523546e2b63aebc10f69982dad0a7447d01548c84ddf41333c30e6" name="akonadiconsole" arch="x86_64">
  <version epoch="0" ver="24.08.3" rel="1.1"/>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1688472000">- Update to 23.04.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.04.3/
- No code change since 23.04.2</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1690891200">- Update to 23.07.80
  * New feature release
- Changes since 23.04.3:
  * Add title
  * Use ClearCacheFoldersJob
  * Remove CI 6 job. We will use kf6 branch for kf6 works
  * Adapt to new akonadi-contact/akonadi-contact-editor api
  * Fix enable/disable buttons
  * Not necessary to use slot here
  * Add info when we can't find element
  * Allow to translate akonadiconsole
  * Remove unused method
  * Remove search configwidget</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1692014400">- Update to 23.07.90
  * New feature release
- No code change since 23.07.80</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1692532800">- Update to 23.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.0/
- No code change since 23.07.90</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1694520000">- Update to 23.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.1/
- No code change since 23.08.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1696939200">- Update to 23.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.2/
- No code change since 23.08.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1699358400">- Update to 23.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.3/
- No code change since 23.08.2</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1701777600">- Update to 23.08.4
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.4/
- No code change since 23.08.3</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1707480000">- Update to 24.01.95
  * https://kde.org/announcements/megarelease/6/rc2/</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1708689600">- Update to 24.02.0
  * New feature release
- No code change since 24.01.95</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1710849600">- Update to 24.02.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.1/
- No code change since 24.02.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1712664000">- Update to 24.02.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.2/
- No code change since 24.02.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1714737600">- Update to 24.04.80
  * New feature release
- Changes since 24.02.2:
  * Use _L1 directly
  * We use lambda now + add missing [[nodiscard]]
  * Port deprecated method
  * Drop support for KF5's deprecated KToolInvocation
  * Fix build by requiring C++20</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1716120000">- Update to 24.05.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.0/
- No code change since 24.04.80</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1718193600">- Update to 24.05.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.1/
- No code change since 24.05.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1719921600">- Update to 24.05.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.2/
- No code change since 24.05.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1724068800">- Update to 24.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.0/
- Changes since 24.05.2:
  * Use @info:placeholder
  * Fix cmakelint issues
  * Remove Akonadi Relation support
  * Fix cmake lint warning
  * USe @action:button
  * Add build-ftime support
  * Use context i18n
  * Add QPushbutton i18n context
  * It compiles fine without deprecated kf methods</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1725969600">- Update to 24.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.1/
- No code change since 24.08.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1728388800">- Update to 24.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.2/
- No code change since 24.08.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1730808000">- Update to 24.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.3/
- No code change since 24.08.2</changelog>
</package>
<package pkgid="6d9be85b33719f1fc83d68e6674ef69eef42ddaad367be07b407f438c9250ad896d0499e28a3baaca0206a12dd9382a7efe3e1d913ef7f8a86f8754d84e946cf" name="akonadiconsole-debuginfo" arch="x86_64">
  <version epoch="0" ver="24.08.3" rel="1.1"/>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1688472000">- Update to 23.04.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.04.3/
- No code change since 23.04.2</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1690891200">- Update to 23.07.80
  * New feature release
- Changes since 23.04.3:
  * Add title
  * Use ClearCacheFoldersJob
  * Remove CI 6 job. We will use kf6 branch for kf6 works
  * Adapt to new akonadi-contact/akonadi-contact-editor api
  * Fix enable/disable buttons
  * Not necessary to use slot here
  * Add info when we can't find element
  * Allow to translate akonadiconsole
  * Remove unused method
  * Remove search configwidget</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1692014400">- Update to 23.07.90
  * New feature release
- No code change since 23.07.80</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1692532800">- Update to 23.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.0/
- No code change since 23.07.90</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1694520000">- Update to 23.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.1/
- No code change since 23.08.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1696939200">- Update to 23.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.2/
- No code change since 23.08.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1699358400">- Update to 23.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.3/
- No code change since 23.08.2</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1701777600">- Update to 23.08.4
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.4/
- No code change since 23.08.3</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1707480000">- Update to 24.01.95
  * https://kde.org/announcements/megarelease/6/rc2/</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1708689600">- Update to 24.02.0
  * New feature release
- No code change since 24.01.95</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1710849600">- Update to 24.02.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.1/
- No code change since 24.02.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1712664000">- Update to 24.02.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.2/
- No code change since 24.02.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1714737600">- Update to 24.04.80
  * New feature release
- Changes since 24.02.2:
  * Use _L1 directly
  * We use lambda now + add missing [[nodiscard]]
  * Port deprecated method
  * Drop support for KF5's deprecated KToolInvocation
  * Fix build by requiring C++20</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1716120000">- Update to 24.05.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.0/
- No code change since 24.04.80</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1718193600">- Update to 24.05.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.1/
- No code change since 24.05.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1719921600">- Update to 24.05.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.2/
- No code change since 24.05.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1724068800">- Update to 24.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.0/
- Changes since 24.05.2:
  * Use @info:placeholder
  * Fix cmakelint issues
  * Remove Akonadi Relation support
  * Fix cmake lint warning
  * USe @action:button
  * Add build-ftime support
  * Use context i18n
  * Add QPushbutton i18n context
  * It compiles fine without deprecated kf methods</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1725969600">- Update to 24.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.1/
- No code change since 24.08.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1728388800">- Update to 24.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.2/
- No code change since 24.08.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1730808000">- Update to 24.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.3/
- No code change since 24.08.2</changelog>
</package>
<package pkgid="632a84d1ed7f49729f748059130a954343c6d86eb13548352935aaf47ff947184999f5999fb5e0a6b5801e9a9ec09d915409510c0ee000f178f27425989b1c2b" name="akonadiconsole-debugsource" arch="x86_64">
  <version epoch="0" ver="24.08.3" rel="1.1"/>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1688472000">- Update to 23.04.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.04.3/
- No code change since 23.04.2</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1690891200">- Update to 23.07.80
  * New feature release
- Changes since 23.04.3:
  * Add title
  * Use ClearCacheFoldersJob
  * Remove CI 6 job. We will use kf6 branch for kf6 works
  * Adapt to new akonadi-contact/akonadi-contact-editor api
  * Fix enable/disable buttons
  * Not necessary to use slot here
  * Add info when we can't find element
  * Allow to translate akonadiconsole
  * Remove unused method
  * Remove search configwidget</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1692014400">- Update to 23.07.90
  * New feature release
- No code change since 23.07.80</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1692532800">- Update to 23.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.0/
- No code change since 23.07.90</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1694520000">- Update to 23.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.1/
- No code change since 23.08.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1696939200">- Update to 23.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.2/
- No code change since 23.08.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1699358400">- Update to 23.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.3/
- No code change since 23.08.2</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1701777600">- Update to 23.08.4
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.4/
- No code change since 23.08.3</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1707480000">- Update to 24.01.95
  * https://kde.org/announcements/megarelease/6/rc2/</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1708689600">- Update to 24.02.0
  * New feature release
- No code change since 24.01.95</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1710849600">- Update to 24.02.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.1/
- No code change since 24.02.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1712664000">- Update to 24.02.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.2/
- No code change since 24.02.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1714737600">- Update to 24.04.80
  * New feature release
- Changes since 24.02.2:
  * Use _L1 directly
  * We use lambda now + add missing [[nodiscard]]
  * Port deprecated method
  * Drop support for KF5's deprecated KToolInvocation
  * Fix build by requiring C++20</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1716120000">- Update to 24.05.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.0/
- No code change since 24.04.80</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1718193600">- Update to 24.05.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.1/
- No code change since 24.05.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1719921600">- Update to 24.05.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.2/
- No code change since 24.05.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1724068800">- Update to 24.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.0/
- Changes since 24.05.2:
  * Use @info:placeholder
  * Fix cmakelint issues
  * Remove Akonadi Relation support
  * Fix cmake lint warning
  * USe @action:button
  * Add build-ftime support
  * Use context i18n
  * Add QPushbutton i18n context
  * It compiles fine without deprecated kf methods</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1725969600">- Update to 24.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.1/
- No code change since 24.08.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1728388800">- Update to 24.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.2/
- No code change since 24.08.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1730808000">- Update to 24.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.3/
- No code change since 24.08.2</changelog>
</package>
<package pkgid="5775e2807312d6c7289c6b54c7d107d948f7000c74025ed669cb52be064e8814a51bf00852f5e390e1b32c8e9b7598d0a6c201e006e633ba44ef57f735cb5e57" name="akonadiconsole-lang" arch="noarch">
  <version epoch="0" ver="24.08.3" rel="1.1"/>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1688472000">- Update to 23.04.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.04.3/
- No code change since 23.04.2</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1690891200">- Update to 23.07.80
  * New feature release
- Changes since 23.04.3:
  * Add title
  * Use ClearCacheFoldersJob
  * Remove CI 6 job. We will use kf6 branch for kf6 works
  * Adapt to new akonadi-contact/akonadi-contact-editor api
  * Fix enable/disable buttons
  * Not necessary to use slot here
  * Add info when we can't find element
  * Allow to translate akonadiconsole
  * Remove unused method
  * Remove search configwidget</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1692014400">- Update to 23.07.90
  * New feature release
- No code change since 23.07.80</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1692532800">- Update to 23.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.0/
- No code change since 23.07.90</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1694520000">- Update to 23.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.1/
- No code change since 23.08.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1696939200">- Update to 23.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.2/
- No code change since 23.08.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1699358400">- Update to 23.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.3/
- No code change since 23.08.2</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1701777600">- Update to 23.08.4
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.4/
- No code change since 23.08.3</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1707480000">- Update to 24.01.95
  * https://kde.org/announcements/megarelease/6/rc2/</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1708689600">- Update to 24.02.0
  * New feature release
- No code change since 24.01.95</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1710849600">- Update to 24.02.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.1/
- No code change since 24.02.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1712664000">- Update to 24.02.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.2/
- No code change since 24.02.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1714737600">- Update to 24.04.80
  * New feature release
- Changes since 24.02.2:
  * Use _L1 directly
  * We use lambda now + add missing [[nodiscard]]
  * Port deprecated method
  * Drop support for KF5's deprecated KToolInvocation
  * Fix build by requiring C++20</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1716120000">- Update to 24.05.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.0/
- No code change since 24.04.80</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1718193600">- Update to 24.05.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.1/
- No code change since 24.05.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1719921600">- Update to 24.05.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.2/
- No code change since 24.05.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1724068800">- Update to 24.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.0/
- Changes since 24.05.2:
  * Use @info:placeholder
  * Fix cmakelint issues
  * Remove Akonadi Relation support
  * Fix cmake lint warning
  * USe @action:button
  * Add build-ftime support
  * Use context i18n
  * Add QPushbutton i18n context
  * It compiles fine without deprecated kf methods</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1725969600">- Update to 24.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.1/
- No code change since 24.08.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1728388800">- Update to 24.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.2/
- No code change since 24.08.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1730808000">- Update to 24.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.3/
- No code change since 24.08.2</changelog>
</package>
<package pkgid="3cc566a3475583759681823c0cf4663cbdc4d0284cdfecd844e4703ea2c1a9067f2c5f0e663a59267d01b96ff3faca70f9394449ba0d7a80b058729618d725c0" name="akregator" arch="src">
  <version epoch="0" ver="24.08.3" rel="1.1"/>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1688472000">- Update to 23.04.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.04.3/
- No code change since 23.04.2</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1690891200">- Update to 23.07.80
  * New feature release
- Changes since 23.04.3:
  * Remove CI 6 job. We will use kf6 branch for kf6 works
  * Port to Qt6
  * Adapt to new api
  * Comment print code Qt6 for the moment
  * Adapt to new api
  * Add separator
  * Show header in qtc6</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1692014400">- Update to 23.07.90
  * New feature release
- No code change since 23.07.80</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1692532800">- Update to 23.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.0/
- No code change since 23.07.90</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1694520000">- Update to 23.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.1/
- Changes since 23.08.0:
  * Add project_license to appstream metadata</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1696939200">- Update to 23.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.2/
- No code change since 23.08.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1699358400">- Update to 23.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.3/
- No code change since 23.08.2</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1701777600">- Update to 23.08.4
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.4/
- No code change since 23.08.3</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1707480000">- Update to 24.01.95
  * https://kde.org/announcements/megarelease/6/rc2/</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1708689600">- Update to 24.02.0
  * New feature release
- Changes since 24.01.95:
  * Fix bug 481593: New Feed and Add Feed Buttons Do the Same Thing (kde#481593)
  * Fix mem leak</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1710849600">- Update to 24.02.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.1/
- Changes since 24.02.0:
  * Fix appstream developer tag id
  * Fix appstream file
  * Improve appstream metadata</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1712664000">- Update to 24.02.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.2/
- Changes since 24.02.1:
  * Fix translated shortcut
  * Fix 483737:  akregator icon, in systray does not follow dark breeze theme. (kde#483737)</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1714737600">- Update to 24.04.80
  * New feature release
- Changes since 24.02.2:
  * appdata: Fix typo in launchable desktop-id
  * Remove unused include
  * Add comment
  * We already use "using namespace Akregator"
  * const'ify
  * It's enabled by default
  * Coding style
  * Coding style + add missing [[nodiscard]]
  * Remove unused include
  * Prepare for the future support for Activities
  * Update org.kde.akregator.appdata.xml - Drop .desktop from ID.
  * New article theme
  * Use desktop-application
  * We use namespace directly
  * Fix 483737:  akregator icon, in systray does not follow dark breeze theme. (kde#483737)
  * Drop support for KF5's deprecated KToolInvocation
  * Fix appstream developer tag id
  * Remove some KIO/Global
  * Fix homepage
  * Fix appstream file
  * Improve appstream metadata
  * Remove unused code
  * Use local include</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1716120000">- Update to 24.05.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.0/
- No code change since 24.04.80</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1718193600">- Update to 24.05.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.1/
- No code change since 24.05.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1719921600">- Update to 24.05.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.2/
- No code change since 24.05.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1724068800">- Update to 24.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.0/
- Too many changes since 24.05.2, only listing bugfixes:
  * Bug: implement filter bar similar like in Thunderbird (kde#293655)
  * Add dark mode support for article view (kde#383404)</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1725969600">- Update to 24.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.1/
- No code change since 24.08.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1728388800">- Update to 24.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.2/
- No code change since 24.08.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1730808000">- Update to 24.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.3/
- No code change since 24.08.2</changelog>
</package>
<package pkgid="9892c47a62821657acd54493b0830e5328330acf949db1c70edaef174ff924d146e9f0558cd25743b7013315ffb5f634297bcc34d7062cf51c697a803d6639ea" name="akregator" arch="x86_64">
  <version epoch="0" ver="24.08.3" rel="1.1"/>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1688472000">- Update to 23.04.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.04.3/
- No code change since 23.04.2</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1690891200">- Update to 23.07.80
  * New feature release
- Changes since 23.04.3:
  * Remove CI 6 job. We will use kf6 branch for kf6 works
  * Port to Qt6
  * Adapt to new api
  * Comment print code Qt6 for the moment
  * Adapt to new api
  * Add separator
  * Show header in qtc6</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1692014400">- Update to 23.07.90
  * New feature release
- No code change since 23.07.80</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1692532800">- Update to 23.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.0/
- No code change since 23.07.90</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1694520000">- Update to 23.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.1/
- Changes since 23.08.0:
  * Add project_license to appstream metadata</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1696939200">- Update to 23.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.2/
- No code change since 23.08.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1699358400">- Update to 23.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.3/
- No code change since 23.08.2</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1701777600">- Update to 23.08.4
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.4/
- No code change since 23.08.3</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1707480000">- Update to 24.01.95
  * https://kde.org/announcements/megarelease/6/rc2/</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1708689600">- Update to 24.02.0
  * New feature release
- Changes since 24.01.95:
  * Fix bug 481593: New Feed and Add Feed Buttons Do the Same Thing (kde#481593)
  * Fix mem leak</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1710849600">- Update to 24.02.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.1/
- Changes since 24.02.0:
  * Fix appstream developer tag id
  * Fix appstream file
  * Improve appstream metadata</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1712664000">- Update to 24.02.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.2/
- Changes since 24.02.1:
  * Fix translated shortcut
  * Fix 483737:  akregator icon, in systray does not follow dark breeze theme. (kde#483737)</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1714737600">- Update to 24.04.80
  * New feature release
- Changes since 24.02.2:
  * appdata: Fix typo in launchable desktop-id
  * Remove unused include
  * Add comment
  * We already use "using namespace Akregator"
  * const'ify
  * It's enabled by default
  * Coding style
  * Coding style + add missing [[nodiscard]]
  * Remove unused include
  * Prepare for the future support for Activities
  * Update org.kde.akregator.appdata.xml - Drop .desktop from ID.
  * New article theme
  * Use desktop-application
  * We use namespace directly
  * Fix 483737:  akregator icon, in systray does not follow dark breeze theme. (kde#483737)
  * Drop support for KF5's deprecated KToolInvocation
  * Fix appstream developer tag id
  * Remove some KIO/Global
  * Fix homepage
  * Fix appstream file
  * Improve appstream metadata
  * Remove unused code
  * Use local include</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1716120000">- Update to 24.05.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.0/
- No code change since 24.04.80</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1718193600">- Update to 24.05.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.1/
- No code change since 24.05.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1719921600">- Update to 24.05.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.2/
- No code change since 24.05.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1724068800">- Update to 24.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.0/
- Too many changes since 24.05.2, only listing bugfixes:
  * Bug: implement filter bar similar like in Thunderbird (kde#293655)
  * Add dark mode support for article view (kde#383404)</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1725969600">- Update to 24.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.1/
- No code change since 24.08.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1728388800">- Update to 24.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.2/
- No code change since 24.08.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1730808000">- Update to 24.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.3/
- No code change since 24.08.2</changelog>
</package>
<package pkgid="2ae598708355b3b7860233912c9588b734cefaf87152c6211a0931790575e7e63d722d13ae8db3cc100095a182112d820271aa273bb9d9734c88ad56d09a47cd" name="akregator-debuginfo" arch="x86_64">
  <version epoch="0" ver="24.08.3" rel="1.1"/>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1688472000">- Update to 23.04.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.04.3/
- No code change since 23.04.2</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1690891200">- Update to 23.07.80
  * New feature release
- Changes since 23.04.3:
  * Remove CI 6 job. We will use kf6 branch for kf6 works
  * Port to Qt6
  * Adapt to new api
  * Comment print code Qt6 for the moment
  * Adapt to new api
  * Add separator
  * Show header in qtc6</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1692014400">- Update to 23.07.90
  * New feature release
- No code change since 23.07.80</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1692532800">- Update to 23.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.0/
- No code change since 23.07.90</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1694520000">- Update to 23.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.1/
- Changes since 23.08.0:
  * Add project_license to appstream metadata</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1696939200">- Update to 23.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.2/
- No code change since 23.08.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1699358400">- Update to 23.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.3/
- No code change since 23.08.2</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1701777600">- Update to 23.08.4
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.4/
- No code change since 23.08.3</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1707480000">- Update to 24.01.95
  * https://kde.org/announcements/megarelease/6/rc2/</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1708689600">- Update to 24.02.0
  * New feature release
- Changes since 24.01.95:
  * Fix bug 481593: New Feed and Add Feed Buttons Do the Same Thing (kde#481593)
  * Fix mem leak</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1710849600">- Update to 24.02.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.1/
- Changes since 24.02.0:
  * Fix appstream developer tag id
  * Fix appstream file
  * Improve appstream metadata</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1712664000">- Update to 24.02.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.2/
- Changes since 24.02.1:
  * Fix translated shortcut
  * Fix 483737:  akregator icon, in systray does not follow dark breeze theme. (kde#483737)</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1714737600">- Update to 24.04.80
  * New feature release
- Changes since 24.02.2:
  * appdata: Fix typo in launchable desktop-id
  * Remove unused include
  * Add comment
  * We already use "using namespace Akregator"
  * const'ify
  * It's enabled by default
  * Coding style
  * Coding style + add missing [[nodiscard]]
  * Remove unused include
  * Prepare for the future support for Activities
  * Update org.kde.akregator.appdata.xml - Drop .desktop from ID.
  * New article theme
  * Use desktop-application
  * We use namespace directly
  * Fix 483737:  akregator icon, in systray does not follow dark breeze theme. (kde#483737)
  * Drop support for KF5's deprecated KToolInvocation
  * Fix appstream developer tag id
  * Remove some KIO/Global
  * Fix homepage
  * Fix appstream file
  * Improve appstream metadata
  * Remove unused code
  * Use local include</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1716120000">- Update to 24.05.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.0/
- No code change since 24.04.80</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1718193600">- Update to 24.05.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.1/
- No code change since 24.05.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1719921600">- Update to 24.05.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.2/
- No code change since 24.05.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1724068800">- Update to 24.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.0/
- Too many changes since 24.05.2, only listing bugfixes:
  * Bug: implement filter bar similar like in Thunderbird (kde#293655)
  * Add dark mode support for article view (kde#383404)</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1725969600">- Update to 24.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.1/
- No code change since 24.08.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1728388800">- Update to 24.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.2/
- No code change since 24.08.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1730808000">- Update to 24.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.3/
- No code change since 24.08.2</changelog>
</package>
<package pkgid="141bca56b670ce94b1070a2c6f09cdb5d91a030c29a2dc42e40a84a976351aafbfa7cc784ba788fef351484ac58a12213360f851a2dee1a6710660b5cc93f665" name="akregator-debugsource" arch="x86_64">
  <version epoch="0" ver="24.08.3" rel="1.1"/>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1688472000">- Update to 23.04.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.04.3/
- No code change since 23.04.2</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1690891200">- Update to 23.07.80
  * New feature release
- Changes since 23.04.3:
  * Remove CI 6 job. We will use kf6 branch for kf6 works
  * Port to Qt6
  * Adapt to new api
  * Comment print code Qt6 for the moment
  * Adapt to new api
  * Add separator
  * Show header in qtc6</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1692014400">- Update to 23.07.90
  * New feature release
- No code change since 23.07.80</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1692532800">- Update to 23.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.0/
- No code change since 23.07.90</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1694520000">- Update to 23.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.1/
- Changes since 23.08.0:
  * Add project_license to appstream metadata</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1696939200">- Update to 23.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.2/
- No code change since 23.08.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1699358400">- Update to 23.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.3/
- No code change since 23.08.2</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1701777600">- Update to 23.08.4
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.4/
- No code change since 23.08.3</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1707480000">- Update to 24.01.95
  * https://kde.org/announcements/megarelease/6/rc2/</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1708689600">- Update to 24.02.0
  * New feature release
- Changes since 24.01.95:
  * Fix bug 481593: New Feed and Add Feed Buttons Do the Same Thing (kde#481593)
  * Fix mem leak</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1710849600">- Update to 24.02.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.1/
- Changes since 24.02.0:
  * Fix appstream developer tag id
  * Fix appstream file
  * Improve appstream metadata</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1712664000">- Update to 24.02.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.2/
- Changes since 24.02.1:
  * Fix translated shortcut
  * Fix 483737:  akregator icon, in systray does not follow dark breeze theme. (kde#483737)</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1714737600">- Update to 24.04.80
  * New feature release
- Changes since 24.02.2:
  * appdata: Fix typo in launchable desktop-id
  * Remove unused include
  * Add comment
  * We already use "using namespace Akregator"
  * const'ify
  * It's enabled by default
  * Coding style
  * Coding style + add missing [[nodiscard]]
  * Remove unused include
  * Prepare for the future support for Activities
  * Update org.kde.akregator.appdata.xml - Drop .desktop from ID.
  * New article theme
  * Use desktop-application
  * We use namespace directly
  * Fix 483737:  akregator icon, in systray does not follow dark breeze theme. (kde#483737)
  * Drop support for KF5's deprecated KToolInvocation
  * Fix appstream developer tag id
  * Remove some KIO/Global
  * Fix homepage
  * Fix appstream file
  * Improve appstream metadata
  * Remove unused code
  * Use local include</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1716120000">- Update to 24.05.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.0/
- No code change since 24.04.80</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1718193600">- Update to 24.05.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.1/
- No code change since 24.05.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1719921600">- Update to 24.05.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.2/
- No code change since 24.05.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1724068800">- Update to 24.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.0/
- Too many changes since 24.05.2, only listing bugfixes:
  * Bug: implement filter bar similar like in Thunderbird (kde#293655)
  * Add dark mode support for article view (kde#383404)</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1725969600">- Update to 24.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.1/
- No code change since 24.08.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1728388800">- Update to 24.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.2/
- No code change since 24.08.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1730808000">- Update to 24.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.3/
- No code change since 24.08.2</changelog>
</package>
<package pkgid="db14428b176bffd4377b68d529350835960efc6c7cedbd5f754bc5a0ffa2f4c84d2ec3419d9c0492ae4d54a83262da998d395a492132f1bae2660af25a3a71d8" name="akregator-lang" arch="noarch">
  <version epoch="0" ver="24.08.3" rel="1.1"/>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1688472000">- Update to 23.04.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.04.3/
- No code change since 23.04.2</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1690891200">- Update to 23.07.80
  * New feature release
- Changes since 23.04.3:
  * Remove CI 6 job. We will use kf6 branch for kf6 works
  * Port to Qt6
  * Adapt to new api
  * Comment print code Qt6 for the moment
  * Adapt to new api
  * Add separator
  * Show header in qtc6</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1692014400">- Update to 23.07.90
  * New feature release
- No code change since 23.07.80</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1692532800">- Update to 23.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.0/
- No code change since 23.07.90</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1694520000">- Update to 23.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.1/
- Changes since 23.08.0:
  * Add project_license to appstream metadata</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1696939200">- Update to 23.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.2/
- No code change since 23.08.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1699358400">- Update to 23.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.3/
- No code change since 23.08.2</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1701777600">- Update to 23.08.4
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.4/
- No code change since 23.08.3</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1707480000">- Update to 24.01.95
  * https://kde.org/announcements/megarelease/6/rc2/</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1708689600">- Update to 24.02.0
  * New feature release
- Changes since 24.01.95:
  * Fix bug 481593: New Feed and Add Feed Buttons Do the Same Thing (kde#481593)
  * Fix mem leak</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1710849600">- Update to 24.02.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.1/
- Changes since 24.02.0:
  * Fix appstream developer tag id
  * Fix appstream file
  * Improve appstream metadata</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1712664000">- Update to 24.02.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.2/
- Changes since 24.02.1:
  * Fix translated shortcut
  * Fix 483737:  akregator icon, in systray does not follow dark breeze theme. (kde#483737)</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1714737600">- Update to 24.04.80
  * New feature release
- Changes since 24.02.2:
  * appdata: Fix typo in launchable desktop-id
  * Remove unused include
  * Add comment
  * We already use "using namespace Akregator"
  * const'ify
  * It's enabled by default
  * Coding style
  * Coding style + add missing [[nodiscard]]
  * Remove unused include
  * Prepare for the future support for Activities
  * Update org.kde.akregator.appdata.xml - Drop .desktop from ID.
  * New article theme
  * Use desktop-application
  * We use namespace directly
  * Fix 483737:  akregator icon, in systray does not follow dark breeze theme. (kde#483737)
  * Drop support for KF5's deprecated KToolInvocation
  * Fix appstream developer tag id
  * Remove some KIO/Global
  * Fix homepage
  * Fix appstream file
  * Improve appstream metadata
  * Remove unused code
  * Use local include</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1716120000">- Update to 24.05.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.0/
- No code change since 24.04.80</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1718193600">- Update to 24.05.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.1/
- No code change since 24.05.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1719921600">- Update to 24.05.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.2/
- No code change since 24.05.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1724068800">- Update to 24.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.0/
- Too many changes since 24.05.2, only listing bugfixes:
  * Bug: implement filter bar similar like in Thunderbird (kde#293655)
  * Add dark mode support for article view (kde#383404)</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1725969600">- Update to 24.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.1/
- No code change since 24.08.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1728388800">- Update to 24.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.2/
- No code change since 24.08.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1730808000">- Update to 24.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.3/
- No code change since 24.08.2</changelog>
</package>
<package pkgid="309bbe4992b32e9e5d573c1d8497cd86b26a5a0fe767d856850755080476df2d85c89f9c144e6061984b6d7cc1a3956ab01abc186f6eeeebb7614d8b28f23dde" name="allegro44" arch="i586">
  <version epoch="0" ver="4.4.3.1" rel="1.1.sr20241103"/>
  <changelog author="reddwarf@opensuse.org" date="1348315200">- Add texinfo BuildRequires</changelog>
  <changelog author="bwiedemann@suse.com" date="1399032000">- Add 32bit modules.lst via baselibs.conf</changelog>
  <changelog author="mailaender@opensuse.org" date="1417953600">- fixed rpmlint warnings</changelog>
  <changelog author="nemysis@gmx.ch" date="1418904000">- Rename allegro4 to allegro
- Change Summary
- Change URL for The giftware licence
- Use for patches %{name}-%{version} instead of liballeg4_4 or
  allegro-4.4.2 and add descriptions for patches
- Add patch allegro4-4.4.2-src_x_xkeyboard.c.patch
- Use check for openSUSE %if 0%{?suse_version}
- Change Description
- Add sed, fix include xf86dga.h</changelog>
  <changelog author="nemysis@gmx.ch" date="1418990400">- Use SED-FIX-OPENSUSE for sed</changelog>
  <changelog author="nemysis@gmx.ch" date="1419249600">- Use for patch(es) %{name}-version instead of %{name}-%{version}</changelog>
  <changelog author="meissner@suse.com" date="1431864000">- info deinstall needs to be in preun section</changelog>
  <changelog author="rpm@fthiessen.de" date="1505995200">- Renamed to allegro44</changelog>
  <changelog author="munix9@googlemail.com" date="1574510400">- update to version 4.4.3.1
  * Fix a regression with the dat tool not working with plugins
    (SiegeLord).
- update to version 4.4.3
  * Allow building the dependencies as shared libraries.
    (Michał Cichoń, Edgar Reynaldo)
  * Fix typo preventing get_executable_name from using System V
    procfs correctly. (Peter Wang)
  * Relicense loadpng under ZLib license.
  * Fix spelling of endianness in textconv (Andreas Rönnquist).
  * Fix format string warnings (Andreas Rönnquist).
  * Add Linux console tslib mouse "touch screen" driver.
    (Tobi Vollebregt)
  * Don't define a duplicate DLLMain. (SiegeLord)
  * Fix Allegro crashes/compilation under 64 bit Windows.
    (Sven Eden, David Capello)
  * Fix possible random crashes on Windows restoring DirectDraw
    surfaces. (David Capello)
  * Make internal function get_value in jpgalleg static.
    (Trent Gamblin)
  * Implemented load_midi_pf, play_fli_pf, open_fli_pf.
    (Ivan Mogilko)
  * Make use of in MSVS 2010 and higher. (Ivan Mogilko)
  * Fixes several issues related to fullscreen mode in Windows.
    (Etienne Vouga)
  * Windows: fixed TAB key getting stuck in key buffer when held
    before ALT. (Ivan Mogilko)
  * Fix building with Mesa 18.2.5 and later. (Andreas Rönnquist)
  * Remove f* variants of fixed math functions. (Andreas Rönnquist)
  * Fix complilation of datedit. (rofl0r)
  * Modernize and fix release zipup script. (rofl0r)
- clean up spec file
- remove allegro-4.4.2-shared_plugins.patch (fixed upstream)
- add allegro-4.4.3-texinfo-non-utf8-input-fix.patch</changelog>
  <changelog author="munix9@googlemail.com" date="1574596800">- remove extra CFLAGS for gcc9</changelog>
</package>
<package pkgid="e7caf13a7b2417e4b38962a217c63d29a37ecea68b24b2710822f91ba117a1613660701742d5acaf86933fa27f00e48fd594d5dcd0d8dff57748821b3219c34e" name="allegro44" arch="src">
  <version epoch="0" ver="4.4.3.1" rel="1.1.sr20241103"/>
  <changelog author="reddwarf@opensuse.org" date="1269777600">- First release 4.4.1.1</changelog>
  <changelog author="uli@suse.de" date="1279108800">- build baselibs</changelog>
  <changelog author="reddwarf@opensuse.org" date="1305288000">- Fix module loading</changelog>
  <changelog author="reddwarf@opensuse.org" date="1305460800">- Fix main pkg-config, requiring X11 related packages.
  Through RPM magic automatically fixes the package dependencies.</changelog>
  <changelog author="reddwarf@opensuse.org" date="1334836800">- Update to 4.4.2</changelog>
  <changelog author="reddwarf@opensuse.org" date="1348315200">- Add texinfo BuildRequires</changelog>
  <changelog author="bwiedemann@suse.com" date="1399032000">- Add 32bit modules.lst via baselibs.conf</changelog>
  <changelog author="mailaender@opensuse.org" date="1417953600">- fixed rpmlint warnings</changelog>
  <changelog author="nemysis@gmx.ch" date="1418904000">- Rename allegro4 to allegro
- Change Summary
- Change URL for The giftware licence
- Use for patches %{name}-%{version} instead of liballeg4_4 or
  allegro-4.4.2 and add descriptions for patches
- Add patch allegro4-4.4.2-src_x_xkeyboard.c.patch
- Use check for openSUSE %if 0%{?suse_version}
- Change Description
- Add sed, fix include xf86dga.h</changelog>
  <changelog author="nemysis@gmx.ch" date="1418990400">- Use SED-FIX-OPENSUSE for sed</changelog>
  <changelog author="nemysis@gmx.ch" date="1419249600">- Use for patch(es) %{name}-version instead of %{name}-%{version}</changelog>
  <changelog author="meissner@suse.com" date="1431864000">- info deinstall needs to be in preun section</changelog>
  <changelog author="rpm@fthiessen.de" date="1505995200">- Renamed to allegro44</changelog>
  <changelog author="munix9@googlemail.com" date="1574510400">- update to version 4.4.3.1
  * Fix a regression with the dat tool not working with plugins
    (SiegeLord).
- update to version 4.4.3
  * Allow building the dependencies as shared libraries.
    (Michał Cichoń, Edgar Reynaldo)
  * Fix typo preventing get_executable_name from using System V
    procfs correctly. (Peter Wang)
  * Relicense loadpng under ZLib license.
  * Fix spelling of endianness in textconv (Andreas Rönnquist).
  * Fix format string warnings (Andreas Rönnquist).
  * Add Linux console tslib mouse "touch screen" driver.
    (Tobi Vollebregt)
  * Don't define a duplicate DLLMain. (SiegeLord)
  * Fix Allegro crashes/compilation under 64 bit Windows.
    (Sven Eden, David Capello)
  * Fix possible random crashes on Windows restoring DirectDraw
    surfaces. (David Capello)
  * Make internal function get_value in jpgalleg static.
    (Trent Gamblin)
  * Implemented load_midi_pf, play_fli_pf, open_fli_pf.
    (Ivan Mogilko)
  * Make use of in MSVS 2010 and higher. (Ivan Mogilko)
  * Fixes several issues related to fullscreen mode in Windows.
    (Etienne Vouga)
  * Windows: fixed TAB key getting stuck in key buffer when held
    before ALT. (Ivan Mogilko)
  * Fix building with Mesa 18.2.5 and later. (Andreas Rönnquist)
  * Remove f* variants of fixed math functions. (Andreas Rönnquist)
  * Fix complilation of datedit. (rofl0r)
  * Modernize and fix release zipup script. (rofl0r)
- clean up spec file
- remove allegro-4.4.2-shared_plugins.patch (fixed upstream)
- add allegro-4.4.3-texinfo-non-utf8-input-fix.patch</changelog>
  <changelog author="munix9@googlemail.com" date="1574596800">- remove extra CFLAGS for gcc9</changelog>
</package>
<package pkgid="524a6100cd3b83760b0d88dc710accfbd3bcffce4fff04f4c8608a950b26a31f93baf42288edffecbe444d79c92c39c03401543100cfecb80f097fbe37a8908a" name="allegro44" arch="x86_64">
  <version epoch="0" ver="4.4.3.1" rel="1.1.sr20241103"/>
  <changelog author="reddwarf@opensuse.org" date="1348315200">- Add texinfo BuildRequires</changelog>
  <changelog author="bwiedemann@suse.com" date="1399032000">- Add 32bit modules.lst via baselibs.conf</changelog>
  <changelog author="mailaender@opensuse.org" date="1417953600">- fixed rpmlint warnings</changelog>
  <changelog author="nemysis@gmx.ch" date="1418904000">- Rename allegro4 to allegro
- Change Summary
- Change URL for The giftware licence
- Use for patches %{name}-%{version} instead of liballeg4_4 or
  allegro-4.4.2 and add descriptions for patches
- Add patch allegro4-4.4.2-src_x_xkeyboard.c.patch
- Use check for openSUSE %if 0%{?suse_version}
- Change Description
- Add sed, fix include xf86dga.h</changelog>
  <changelog author="nemysis@gmx.ch" date="1418990400">- Use SED-FIX-OPENSUSE for sed</changelog>
  <changelog author="nemysis@gmx.ch" date="1419249600">- Use for patch(es) %{name}-version instead of %{name}-%{version}</changelog>
  <changelog author="meissner@suse.com" date="1431864000">- info deinstall needs to be in preun section</changelog>
  <changelog author="rpm@fthiessen.de" date="1505995200">- Renamed to allegro44</changelog>
  <changelog author="munix9@googlemail.com" date="1574510400">- update to version 4.4.3.1
  * Fix a regression with the dat tool not working with plugins
    (SiegeLord).
- update to version 4.4.3
  * Allow building the dependencies as shared libraries.
    (Michał Cichoń, Edgar Reynaldo)
  * Fix typo preventing get_executable_name from using System V
    procfs correctly. (Peter Wang)
  * Relicense loadpng under ZLib license.
  * Fix spelling of endianness in textconv (Andreas Rönnquist).
  * Fix format string warnings (Andreas Rönnquist).
  * Add Linux console tslib mouse "touch screen" driver.
    (Tobi Vollebregt)
  * Don't define a duplicate DLLMain. (SiegeLord)
  * Fix Allegro crashes/compilation under 64 bit Windows.
    (Sven Eden, David Capello)
  * Fix possible random crashes on Windows restoring DirectDraw
    surfaces. (David Capello)
  * Make internal function get_value in jpgalleg static.
    (Trent Gamblin)
  * Implemented load_midi_pf, play_fli_pf, open_fli_pf.
    (Ivan Mogilko)
  * Make use of in MSVS 2010 and higher. (Ivan Mogilko)
  * Fixes several issues related to fullscreen mode in Windows.
    (Etienne Vouga)
  * Windows: fixed TAB key getting stuck in key buffer when held
    before ALT. (Ivan Mogilko)
  * Fix building with Mesa 18.2.5 and later. (Andreas Rönnquist)
  * Remove f* variants of fixed math functions. (Andreas Rönnquist)
  * Fix complilation of datedit. (rofl0r)
  * Modernize and fix release zipup script. (rofl0r)
- clean up spec file
- remove allegro-4.4.2-shared_plugins.patch (fixed upstream)
- add allegro-4.4.3-texinfo-non-utf8-input-fix.patch</changelog>
  <changelog author="munix9@googlemail.com" date="1574596800">- remove extra CFLAGS for gcc9</changelog>
</package>
<package pkgid="5329428df526f7df08836d4da8a85dcb16cad2091562fe2dbe2b2ab167a6c26984dc4b1e1f409301d0d6b2a2a404807d6196b29de5a07aa6e74133991172f7a4" name="allegro44-debuginfo" arch="i586">
  <version epoch="0" ver="4.4.3.1" rel="1.1.sr20241103"/>
  <changelog author="reddwarf@opensuse.org" date="1348315200">- Add texinfo BuildRequires</changelog>
  <changelog author="bwiedemann@suse.com" date="1399032000">- Add 32bit modules.lst via baselibs.conf</changelog>
  <changelog author="mailaender@opensuse.org" date="1417953600">- fixed rpmlint warnings</changelog>
  <changelog author="nemysis@gmx.ch" date="1418904000">- Rename allegro4 to allegro
- Change Summary
- Change URL for The giftware licence
- Use for patches %{name}-%{version} instead of liballeg4_4 or
  allegro-4.4.2 and add descriptions for patches
- Add patch allegro4-4.4.2-src_x_xkeyboard.c.patch
- Use check for openSUSE %if 0%{?suse_version}
- Change Description
- Add sed, fix include xf86dga.h</changelog>
  <changelog author="nemysis@gmx.ch" date="1418990400">- Use SED-FIX-OPENSUSE for sed</changelog>
  <changelog author="nemysis@gmx.ch" date="1419249600">- Use for patch(es) %{name}-version instead of %{name}-%{version}</changelog>
  <changelog author="meissner@suse.com" date="1431864000">- info deinstall needs to be in preun section</changelog>
  <changelog author="rpm@fthiessen.de" date="1505995200">- Renamed to allegro44</changelog>
  <changelog author="munix9@googlemail.com" date="1574510400">- update to version 4.4.3.1
  * Fix a regression with the dat tool not working with plugins
    (SiegeLord).
- update to version 4.4.3
  * Allow building the dependencies as shared libraries.
    (Michał Cichoń, Edgar Reynaldo)
  * Fix typo preventing get_executable_name from using System V
    procfs correctly. (Peter Wang)
  * Relicense loadpng under ZLib license.
  * Fix spelling of endianness in textconv (Andreas Rönnquist).
  * Fix format string warnings (Andreas Rönnquist).
  * Add Linux console tslib mouse "touch screen" driver.
    (Tobi Vollebregt)
  * Don't define a duplicate DLLMain. (SiegeLord)
  * Fix Allegro crashes/compilation under 64 bit Windows.
    (Sven Eden, David Capello)
  * Fix possible random crashes on Windows restoring DirectDraw
    surfaces. (David Capello)
  * Make internal function get_value in jpgalleg static.
    (Trent Gamblin)
  * Implemented load_midi_pf, play_fli_pf, open_fli_pf.
    (Ivan Mogilko)
  * Make use of in MSVS 2010 and higher. (Ivan Mogilko)
  * Fixes several issues related to fullscreen mode in Windows.
    (Etienne Vouga)
  * Windows: fixed TAB key getting stuck in key buffer when held
    before ALT. (Ivan Mogilko)
  * Fix building with Mesa 18.2.5 and later. (Andreas Rönnquist)
  * Remove f* variants of fixed math functions. (Andreas Rönnquist)
  * Fix complilation of datedit. (rofl0r)
  * Modernize and fix release zipup script. (rofl0r)
- clean up spec file
- remove allegro-4.4.2-shared_plugins.patch (fixed upstream)
- add allegro-4.4.3-texinfo-non-utf8-input-fix.patch</changelog>
  <changelog author="munix9@googlemail.com" date="1574596800">- remove extra CFLAGS for gcc9</changelog>
</package>
<package pkgid="0b2fb7dcdac3790493787eb7504da893600cba21fadea9e2be809f96b17eaf53c6bde71f3bb3cc995a90af084a69a68e632af21a3c38873ea020deff54d7d696" name="allegro44-debuginfo" arch="x86_64">
  <version epoch="0" ver="4.4.3.1" rel="1.1.sr20241103"/>
  <changelog author="reddwarf@opensuse.org" date="1348315200">- Add texinfo BuildRequires</changelog>
  <changelog author="bwiedemann@suse.com" date="1399032000">- Add 32bit modules.lst via baselibs.conf</changelog>
  <changelog author="mailaender@opensuse.org" date="1417953600">- fixed rpmlint warnings</changelog>
  <changelog author="nemysis@gmx.ch" date="1418904000">- Rename allegro4 to allegro
- Change Summary
- Change URL for The giftware licence
- Use for patches %{name}-%{version} instead of liballeg4_4 or
  allegro-4.4.2 and add descriptions for patches
- Add patch allegro4-4.4.2-src_x_xkeyboard.c.patch
- Use check for openSUSE %if 0%{?suse_version}
- Change Description
- Add sed, fix include xf86dga.h</changelog>
  <changelog author="nemysis@gmx.ch" date="1418990400">- Use SED-FIX-OPENSUSE for sed</changelog>
  <changelog author="nemysis@gmx.ch" date="1419249600">- Use for patch(es) %{name}-version instead of %{name}-%{version}</changelog>
  <changelog author="meissner@suse.com" date="1431864000">- info deinstall needs to be in preun section</changelog>
  <changelog author="rpm@fthiessen.de" date="1505995200">- Renamed to allegro44</changelog>
  <changelog author="munix9@googlemail.com" date="1574510400">- update to version 4.4.3.1
  * Fix a regression with the dat tool not working with plugins
    (SiegeLord).
- update to version 4.4.3
  * Allow building the dependencies as shared libraries.
    (Michał Cichoń, Edgar Reynaldo)
  * Fix typo preventing get_executable_name from using System V
    procfs correctly. (Peter Wang)
  * Relicense loadpng under ZLib license.
  * Fix spelling of endianness in textconv (Andreas Rönnquist).
  * Fix format string warnings (Andreas Rönnquist).
  * Add Linux console tslib mouse "touch screen" driver.
    (Tobi Vollebregt)
  * Don't define a duplicate DLLMain. (SiegeLord)
  * Fix Allegro crashes/compilation under 64 bit Windows.
    (Sven Eden, David Capello)
  * Fix possible random crashes on Windows restoring DirectDraw
    surfaces. (David Capello)
  * Make internal function get_value in jpgalleg static.
    (Trent Gamblin)
  * Implemented load_midi_pf, play_fli_pf, open_fli_pf.
    (Ivan Mogilko)
  * Make use of in MSVS 2010 and higher. (Ivan Mogilko)
  * Fixes several issues related to fullscreen mode in Windows.
    (Etienne Vouga)
  * Windows: fixed TAB key getting stuck in key buffer when held
    before ALT. (Ivan Mogilko)
  * Fix building with Mesa 18.2.5 and later. (Andreas Rönnquist)
  * Remove f* variants of fixed math functions. (Andreas Rönnquist)
  * Fix complilation of datedit. (rofl0r)
  * Modernize and fix release zipup script. (rofl0r)
- clean up spec file
- remove allegro-4.4.2-shared_plugins.patch (fixed upstream)
- add allegro-4.4.3-texinfo-non-utf8-input-fix.patch</changelog>
  <changelog author="munix9@googlemail.com" date="1574596800">- remove extra CFLAGS for gcc9</changelog>
</package>
<package pkgid="a7cfcfd25f1b79bed61b3c399d0d51cecd52bc581390acd0f567884fa34243ffbb5f66b895b2dd6531ae8e0d94b15f8d7efbca5ea0bd7ce6b88e8934b92c0f83" name="allegro44-debugsource" arch="i586">
  <version epoch="0" ver="4.4.3.1" rel="1.1.sr20241103"/>
  <changelog author="reddwarf@opensuse.org" date="1348315200">- Add texinfo BuildRequires</changelog>
  <changelog author="bwiedemann@suse.com" date="1399032000">- Add 32bit modules.lst via baselibs.conf</changelog>
  <changelog author="mailaender@opensuse.org" date="1417953600">- fixed rpmlint warnings</changelog>
  <changelog author="nemysis@gmx.ch" date="1418904000">- Rename allegro4 to allegro
- Change Summary
- Change URL for The giftware licence
- Use for patches %{name}-%{version} instead of liballeg4_4 or
  allegro-4.4.2 and add descriptions for patches
- Add patch allegro4-4.4.2-src_x_xkeyboard.c.patch
- Use check for openSUSE %if 0%{?suse_version}
- Change Description
- Add sed, fix include xf86dga.h</changelog>
  <changelog author="nemysis@gmx.ch" date="1418990400">- Use SED-FIX-OPENSUSE for sed</changelog>
  <changelog author="nemysis@gmx.ch" date="1419249600">- Use for patch(es) %{name}-version instead of %{name}-%{version}</changelog>
  <changelog author="meissner@suse.com" date="1431864000">- info deinstall needs to be in preun section</changelog>
  <changelog author="rpm@fthiessen.de" date="1505995200">- Renamed to allegro44</changelog>
  <changelog author="munix9@googlemail.com" date="1574510400">- update to version 4.4.3.1
  * Fix a regression with the dat tool not working with plugins
    (SiegeLord).
- update to version 4.4.3
  * Allow building the dependencies as shared libraries.
    (Michał Cichoń, Edgar Reynaldo)
  * Fix typo preventing get_executable_name from using System V
    procfs correctly. (Peter Wang)
  * Relicense loadpng under ZLib license.
  * Fix spelling of endianness in textconv (Andreas Rönnquist).
  * Fix format string warnings (Andreas Rönnquist).
  * Add Linux console tslib mouse "touch screen" driver.
    (Tobi Vollebregt)
  * Don't define a duplicate DLLMain. (SiegeLord)
  * Fix Allegro crashes/compilation under 64 bit Windows.
    (Sven Eden, David Capello)
  * Fix possible random crashes on Windows restoring DirectDraw
    surfaces. (David Capello)
  * Make internal function get_value in jpgalleg static.
    (Trent Gamblin)
  * Implemented load_midi_pf, play_fli_pf, open_fli_pf.
    (Ivan Mogilko)
  * Make use of in MSVS 2010 and higher. (Ivan Mogilko)
  * Fixes several issues related to fullscreen mode in Windows.
    (Etienne Vouga)
  * Windows: fixed TAB key getting stuck in key buffer when held
    before ALT. (Ivan Mogilko)
  * Fix building with Mesa 18.2.5 and later. (Andreas Rönnquist)
  * Remove f* variants of fixed math functions. (Andreas Rönnquist)
  * Fix complilation of datedit. (rofl0r)
  * Modernize and fix release zipup script. (rofl0r)
- clean up spec file
- remove allegro-4.4.2-shared_plugins.patch (fixed upstream)
- add allegro-4.4.3-texinfo-non-utf8-input-fix.patch</changelog>
  <changelog author="munix9@googlemail.com" date="1574596800">- remove extra CFLAGS for gcc9</changelog>
</package>
<package pkgid="9c6c62ce6e2ab214f3d794d46bbbf94ea11ee660bfd653aabfb0ae680680679f0adb6251bf36ccbccdcb6d639a8ae2f0ea423726d6a8e7217f344d738a406385" name="allegro44-debugsource" arch="x86_64">
  <version epoch="0" ver="4.4.3.1" rel="1.1.sr20241103"/>
  <changelog author="reddwarf@opensuse.org" date="1348315200">- Add texinfo BuildRequires</changelog>
  <changelog author="bwiedemann@suse.com" date="1399032000">- Add 32bit modules.lst via baselibs.conf</changelog>
  <changelog author="mailaender@opensuse.org" date="1417953600">- fixed rpmlint warnings</changelog>
  <changelog author="nemysis@gmx.ch" date="1418904000">- Rename allegro4 to allegro
- Change Summary
- Change URL for The giftware licence
- Use for patches %{name}-%{version} instead of liballeg4_4 or
  allegro-4.4.2 and add descriptions for patches
- Add patch allegro4-4.4.2-src_x_xkeyboard.c.patch
- Use check for openSUSE %if 0%{?suse_version}
- Change Description
- Add sed, fix include xf86dga.h</changelog>
  <changelog author="nemysis@gmx.ch" date="1418990400">- Use SED-FIX-OPENSUSE for sed</changelog>
  <changelog author="nemysis@gmx.ch" date="1419249600">- Use for patch(es) %{name}-version instead of %{name}-%{version}</changelog>
  <changelog author="meissner@suse.com" date="1431864000">- info deinstall needs to be in preun section</changelog>
  <changelog author="rpm@fthiessen.de" date="1505995200">- Renamed to allegro44</changelog>
  <changelog author="munix9@googlemail.com" date="1574510400">- update to version 4.4.3.1
  * Fix a regression with the dat tool not working with plugins
    (SiegeLord).
- update to version 4.4.3
  * Allow building the dependencies as shared libraries.
    (Michał Cichoń, Edgar Reynaldo)
  * Fix typo preventing get_executable_name from using System V
    procfs correctly. (Peter Wang)
  * Relicense loadpng under ZLib license.
  * Fix spelling of endianness in textconv (Andreas Rönnquist).
  * Fix format string warnings (Andreas Rönnquist).
  * Add Linux console tslib mouse "touch screen" driver.
    (Tobi Vollebregt)
  * Don't define a duplicate DLLMain. (SiegeLord)
  * Fix Allegro crashes/compilation under 64 bit Windows.
    (Sven Eden, David Capello)
  * Fix possible random crashes on Windows restoring DirectDraw
    surfaces. (David Capello)
  * Make internal function get_value in jpgalleg static.
    (Trent Gamblin)
  * Implemented load_midi_pf, play_fli_pf, open_fli_pf.
    (Ivan Mogilko)
  * Make use of in MSVS 2010 and higher. (Ivan Mogilko)
  * Fixes several issues related to fullscreen mode in Windows.
    (Etienne Vouga)
  * Windows: fixed TAB key getting stuck in key buffer when held
    before ALT. (Ivan Mogilko)
  * Fix building with Mesa 18.2.5 and later. (Andreas Rönnquist)
  * Remove f* variants of fixed math functions. (Andreas Rönnquist)
  * Fix complilation of datedit. (rofl0r)
  * Modernize and fix release zipup script. (rofl0r)
- clean up spec file
- remove allegro-4.4.2-shared_plugins.patch (fixed upstream)
- add allegro-4.4.3-texinfo-non-utf8-input-fix.patch</changelog>
  <changelog author="munix9@googlemail.com" date="1574596800">- remove extra CFLAGS for gcc9</changelog>
</package>
<package pkgid="470ee80bb8759226cbf988b472338ed922c30d2ca2d1c8a24e6b20e4d0cac73953f96fabf8649b47f05eb652482c584d73553ac66c594607f5c8f4bca147c4bf" name="allegro44-dga2-plugin-32bit" arch="x86_64">
  <version epoch="0" ver="4.4.3.1" rel="1.1.sr20241103"/>
  <changelog author="reddwarf@opensuse.org" date="1348315200">- Add texinfo BuildRequires</changelog>
  <changelog author="bwiedemann@suse.com" date="1399032000">- Add 32bit modules.lst via baselibs.conf</changelog>
  <changelog author="mailaender@opensuse.org" date="1417953600">- fixed rpmlint warnings</changelog>
  <changelog author="nemysis@gmx.ch" date="1418904000">- Rename allegro4 to allegro
- Change Summary
- Change URL for The giftware licence
- Use for patches %{name}-%{version} instead of liballeg4_4 or
  allegro-4.4.2 and add descriptions for patches
- Add patch allegro4-4.4.2-src_x_xkeyboard.c.patch
- Use check for openSUSE %if 0%{?suse_version}
- Change Description
- Add sed, fix include xf86dga.h</changelog>
  <changelog author="nemysis@gmx.ch" date="1418990400">- Use SED-FIX-OPENSUSE for sed</changelog>
  <changelog author="nemysis@gmx.ch" date="1419249600">- Use for patch(es) %{name}-version instead of %{name}-%{version}</changelog>
  <changelog author="meissner@suse.com" date="1431864000">- info deinstall needs to be in preun section</changelog>
  <changelog author="rpm@fthiessen.de" date="1505995200">- Renamed to allegro44</changelog>
  <changelog author="munix9@googlemail.com" date="1574510400">- update to version 4.4.3.1
  * Fix a regression with the dat tool not working with plugins
    (SiegeLord).
- update to version 4.4.3
  * Allow building the dependencies as shared libraries.
    (Michał Cichoń, Edgar Reynaldo)
  * Fix typo preventing get_executable_name from using System V
    procfs correctly. (Peter Wang)
  * Relicense loadpng under ZLib license.
  * Fix spelling of endianness in textconv (Andreas Rönnquist).
  * Fix format string warnings (Andreas Rönnquist).
  * Add Linux console tslib mouse "touch screen" driver.
    (Tobi Vollebregt)
  * Don't define a duplicate DLLMain. (SiegeLord)
  * Fix Allegro crashes/compilation under 64 bit Windows.
    (Sven Eden, David Capello)
  * Fix possible random crashes on Windows restoring DirectDraw
    surfaces. (David Capello)
  * Make internal function get_value in jpgalleg static.
    (Trent Gamblin)
  * Implemented load_midi_pf, play_fli_pf, open_fli_pf.
    (Ivan Mogilko)
  * Make use of in MSVS 2010 and higher. (Ivan Mogilko)
  * Fixes several issues related to fullscreen mode in Windows.
    (Etienne Vouga)
  * Windows: fixed TAB key getting stuck in key buffer when held
    before ALT. (Ivan Mogilko)
  * Fix building with Mesa 18.2.5 and later. (Andreas Rönnquist)
  * Remove f* variants of fixed math functions. (Andreas Rönnquist)
  * Fix complilation of datedit. (rofl0r)
  * Modernize and fix release zipup script. (rofl0r)
- clean up spec file
- remove allegro-4.4.2-shared_plugins.patch (fixed upstream)
- add allegro-4.4.3-texinfo-non-utf8-input-fix.patch</changelog>
  <changelog author="munix9@googlemail.com" date="1574596800">- remove extra CFLAGS for gcc9</changelog>
</package>
<package pkgid="ba30dc6e0354dad768971b7908107b2e569baa601aaa52614e000a337ad805cda8a779749a32e33308b0bf593848d73224ddd4e49ca5763e67fc38b75c9a6fc6" name="allegro44-dga2-plugin-32bit-debuginfo" arch="x86_64">
  <version epoch="0" ver="4.4.3.1" rel="1.1.sr20241103"/>
  <changelog author="reddwarf@opensuse.org" date="1348315200">- Add texinfo BuildRequires</changelog>
  <changelog author="bwiedemann@suse.com" date="1399032000">- Add 32bit modules.lst via baselibs.conf</changelog>
  <changelog author="mailaender@opensuse.org" date="1417953600">- fixed rpmlint warnings</changelog>
  <changelog author="nemysis@gmx.ch" date="1418904000">- Rename allegro4 to allegro
- Change Summary
- Change URL for The giftware licence
- Use for patches %{name}-%{version} instead of liballeg4_4 or
  allegro-4.4.2 and add descriptions for patches
- Add patch allegro4-4.4.2-src_x_xkeyboard.c.patch
- Use check for openSUSE %if 0%{?suse_version}
- Change Description
- Add sed, fix include xf86dga.h</changelog>
  <changelog author="nemysis@gmx.ch" date="1418990400">- Use SED-FIX-OPENSUSE for sed</changelog>
  <changelog author="nemysis@gmx.ch" date="1419249600">- Use for patch(es) %{name}-version instead of %{name}-%{version}</changelog>
  <changelog author="meissner@suse.com" date="1431864000">- info deinstall needs to be in preun section</changelog>
  <changelog author="rpm@fthiessen.de" date="1505995200">- Renamed to allegro44</changelog>
  <changelog author="munix9@googlemail.com" date="1574510400">- update to version 4.4.3.1
  * Fix a regression with the dat tool not working with plugins
    (SiegeLord).
- update to version 4.4.3
  * Allow building the dependencies as shared libraries.
    (Michał Cichoń, Edgar Reynaldo)
  * Fix typo preventing get_executable_name from using System V
    procfs correctly. (Peter Wang)
  * Relicense loadpng under ZLib license.
  * Fix spelling of endianness in textconv (Andreas Rönnquist).
  * Fix format string warnings (Andreas Rönnquist).
  * Add Linux console tslib mouse "touch screen" driver.
    (Tobi Vollebregt)
  * Don't define a duplicate DLLMain. (SiegeLord)
  * Fix Allegro crashes/compilation under 64 bit Windows.
    (Sven Eden, David Capello)
  * Fix possible random crashes on Windows restoring DirectDraw
    surfaces. (David Capello)
  * Make internal function get_value in jpgalleg static.
    (Trent Gamblin)
  * Implemented load_midi_pf, play_fli_pf, open_fli_pf.
    (Ivan Mogilko)
  * Make use of in MSVS 2010 and higher. (Ivan Mogilko)
  * Fixes several issues related to fullscreen mode in Windows.
    (Etienne Vouga)
  * Windows: fixed TAB key getting stuck in key buffer when held
    before ALT. (Ivan Mogilko)
  * Fix building with Mesa 18.2.5 and later. (Andreas Rönnquist)
  * Remove f* variants of fixed math functions. (Andreas Rönnquist)
  * Fix complilation of datedit. (rofl0r)
  * Modernize and fix release zipup script. (rofl0r)
- clean up spec file
- remove allegro-4.4.2-shared_plugins.patch (fixed upstream)
- add allegro-4.4.3-texinfo-non-utf8-input-fix.patch</changelog>
  <changelog author="munix9@googlemail.com" date="1574596800">- remove extra CFLAGS for gcc9</changelog>
</package>
<package pkgid="05020b26a31d50425cc272afa15ec68ddc818e11b80b6b9b73b0342265af20f95a2888196b4e0b96c9febcb241de2c45be540ee60c37b94a6a62707daef4f8a1" name="allegro44-dga2-plugin" arch="i586">
  <version epoch="0" ver="4.4.3.1" rel="1.1.sr20241103"/>
  <changelog author="reddwarf@opensuse.org" date="1348315200">- Add texinfo BuildRequires</changelog>
  <changelog author="bwiedemann@suse.com" date="1399032000">- Add 32bit modules.lst via baselibs.conf</changelog>
  <changelog author="mailaender@opensuse.org" date="1417953600">- fixed rpmlint warnings</changelog>
  <changelog author="nemysis@gmx.ch" date="1418904000">- Rename allegro4 to allegro
- Change Summary
- Change URL for The giftware licence
- Use for patches %{name}-%{version} instead of liballeg4_4 or
  allegro-4.4.2 and add descriptions for patches
- Add patch allegro4-4.4.2-src_x_xkeyboard.c.patch
- Use check for openSUSE %if 0%{?suse_version}
- Change Description
- Add sed, fix include xf86dga.h</changelog>
  <changelog author="nemysis@gmx.ch" date="1418990400">- Use SED-FIX-OPENSUSE for sed</changelog>
  <changelog author="nemysis@gmx.ch" date="1419249600">- Use for patch(es) %{name}-version instead of %{name}-%{version}</changelog>
  <changelog author="meissner@suse.com" date="1431864000">- info deinstall needs to be in preun section</changelog>
  <changelog author="rpm@fthiessen.de" date="1505995200">- Renamed to allegro44</changelog>
  <changelog author="munix9@googlemail.com" date="1574510400">- update to version 4.4.3.1
  * Fix a regression with the dat tool not working with plugins
    (SiegeLord).
- update to version 4.4.3
  * Allow building the dependencies as shared libraries.
    (Michał Cichoń, Edgar Reynaldo)
  * Fix typo preventing get_executable_name from using System V
    procfs correctly. (Peter Wang)
  * Relicense loadpng under ZLib license.
  * Fix spelling of endianness in textconv (Andreas Rönnquist).
  * Fix format string warnings (Andreas Rönnquist).
  * Add Linux console tslib mouse "touch screen" driver.
    (Tobi Vollebregt)
  * Don't define a duplicate DLLMain. (SiegeLord)
  * Fix Allegro crashes/compilation under 64 bit Windows.
    (Sven Eden, David Capello)
  * Fix possible random crashes on Windows restoring DirectDraw
    surfaces. (David Capello)
  * Make internal function get_value in jpgalleg static.
    (Trent Gamblin)
  * Implemented load_midi_pf, play_fli_pf, open_fli_pf.
    (Ivan Mogilko)
  * Make use of in MSVS 2010 and higher. (Ivan Mogilko)
  * Fixes several issues related to fullscreen mode in Windows.
    (Etienne Vouga)
  * Windows: fixed TAB key getting stuck in key buffer when held
    before ALT. (Ivan Mogilko)
  * Fix building with Mesa 18.2.5 and later. (Andreas Rönnquist)
  * Remove f* variants of fixed math functions. (Andreas Rönnquist)
  * Fix complilation of datedit. (rofl0r)
  * Modernize and fix release zipup script. (rofl0r)
- clean up spec file
- remove allegro-4.4.2-shared_plugins.patch (fixed upstream)
- add allegro-4.4.3-texinfo-non-utf8-input-fix.patch</changelog>
  <changelog author="munix9@googlemail.com" date="1574596800">- remove extra CFLAGS for gcc9</changelog>
</package>
<package pkgid="8b61723f9f4fd862b114275c329dc335c95bd8fc5a4e7e71b05339a1974d2feb26d61bbef4c52ee5dbee2c665ac3546dc8cd1e888b0cfef37856945f4b77a11b" name="allegro44-dga2-plugin" arch="x86_64">
  <version epoch="0" ver="4.4.3.1" rel="1.1.sr20241103"/>
  <changelog author="reddwarf@opensuse.org" date="1348315200">- Add texinfo BuildRequires</changelog>
  <changelog author="bwiedemann@suse.com" date="1399032000">- Add 32bit modules.lst via baselibs.conf</changelog>
  <changelog author="mailaender@opensuse.org" date="1417953600">- fixed rpmlint warnings</changelog>
  <changelog author="nemysis@gmx.ch" date="1418904000">- Rename allegro4 to allegro
- Change Summary
- Change URL for The giftware licence
- Use for patches %{name}-%{version} instead of liballeg4_4 or
  allegro-4.4.2 and add descriptions for patches
- Add patch allegro4-4.4.2-src_x_xkeyboard.c.patch
- Use check for openSUSE %if 0%{?suse_version}
- Change Description
- Add sed, fix include xf86dga.h</changelog>
  <changelog author="nemysis@gmx.ch" date="1418990400">- Use SED-FIX-OPENSUSE for sed</changelog>
  <changelog author="nemysis@gmx.ch" date="1419249600">- Use for patch(es) %{name}-version instead of %{name}-%{version}</changelog>
  <changelog author="meissner@suse.com" date="1431864000">- info deinstall needs to be in preun section</changelog>
  <changelog author="rpm@fthiessen.de" date="1505995200">- Renamed to allegro44</changelog>
  <changelog author="munix9@googlemail.com" date="1574510400">- update to version 4.4.3.1
  * Fix a regression with the dat tool not working with plugins
    (SiegeLord).
- update to version 4.4.3
  * Allow building the dependencies as shared libraries.
    (Michał Cichoń, Edgar Reynaldo)
  * Fix typo preventing get_executable_name from using System V
    procfs correctly. (Peter Wang)
  * Relicense loadpng under ZLib license.
  * Fix spelling of endianness in textconv (Andreas Rönnquist).
  * Fix format string warnings (Andreas Rönnquist).
  * Add Linux console tslib mouse "touch screen" driver.
    (Tobi Vollebregt)
  * Don't define a duplicate DLLMain. (SiegeLord)
  * Fix Allegro crashes/compilation under 64 bit Windows.
    (Sven Eden, David Capello)
  * Fix possible random crashes on Windows restoring DirectDraw
    surfaces. (David Capello)
  * Make internal function get_value in jpgalleg static.
    (Trent Gamblin)
  * Implemented load_midi_pf, play_fli_pf, open_fli_pf.
    (Ivan Mogilko)
  * Make use of in MSVS 2010 and higher. (Ivan Mogilko)
  * Fixes several issues related to fullscreen mode in Windows.
    (Etienne Vouga)
  * Windows: fixed TAB key getting stuck in key buffer when held
    before ALT. (Ivan Mogilko)
  * Fix building with Mesa 18.2.5 and later. (Andreas Rönnquist)
  * Remove f* variants of fixed math functions. (Andreas Rönnquist)
  * Fix complilation of datedit. (rofl0r)
  * Modernize and fix release zipup script. (rofl0r)
- clean up spec file
- remove allegro-4.4.2-shared_plugins.patch (fixed upstream)
- add allegro-4.4.3-texinfo-non-utf8-input-fix.patch</changelog>
  <changelog author="munix9@googlemail.com" date="1574596800">- remove extra CFLAGS for gcc9</changelog>
</package>
<package pkgid="ac4a204ef85fa36c4b2a8cf00cc7ca722b28795a92d4cfb381e72a13b3f38a56b6d685051895abc466b429686f97200f2a0f2cd771d920747e9ea12985607b6b" name="allegro44-dga2-plugin-debuginfo" arch="i586">
  <version epoch="0" ver="4.4.3.1" rel="1.1.sr20241103"/>
  <changelog author="reddwarf@opensuse.org" date="1348315200">- Add texinfo BuildRequires</changelog>
  <changelog author="bwiedemann@suse.com" date="1399032000">- Add 32bit modules.lst via baselibs.conf</changelog>
  <changelog author="mailaender@opensuse.org" date="1417953600">- fixed rpmlint warnings</changelog>
  <changelog author="nemysis@gmx.ch" date="1418904000">- Rename allegro4 to allegro
- Change Summary
- Change URL for The giftware licence
- Use for patches %{name}-%{version} instead of liballeg4_4 or
  allegro-4.4.2 and add descriptions for patches
- Add patch allegro4-4.4.2-src_x_xkeyboard.c.patch
- Use check for openSUSE %if 0%{?suse_version}
- Change Description
- Add sed, fix include xf86dga.h</changelog>
  <changelog author="nemysis@gmx.ch" date="1418990400">- Use SED-FIX-OPENSUSE for sed</changelog>
  <changelog author="nemysis@gmx.ch" date="1419249600">- Use for patch(es) %{name}-version instead of %{name}-%{version}</changelog>
  <changelog author="meissner@suse.com" date="1431864000">- info deinstall needs to be in preun section</changelog>
  <changelog author="rpm@fthiessen.de" date="1505995200">- Renamed to allegro44</changelog>
  <changelog author="munix9@googlemail.com" date="1574510400">- update to version 4.4.3.1
  * Fix a regression with the dat tool not working with plugins
    (SiegeLord).
- update to version 4.4.3
  * Allow building the dependencies as shared libraries.
    (Michał Cichoń, Edgar Reynaldo)
  * Fix typo preventing get_executable_name from using System V
    procfs correctly. (Peter Wang)
  * Relicense loadpng under ZLib license.
  * Fix spelling of endianness in textconv (Andreas Rönnquist).
  * Fix format string warnings (Andreas Rönnquist).
  * Add Linux console tslib mouse "touch screen" driver.
    (Tobi Vollebregt)
  * Don't define a duplicate DLLMain. (SiegeLord)
  * Fix Allegro crashes/compilation under 64 bit Windows.
    (Sven Eden, David Capello)
  * Fix possible random crashes on Windows restoring DirectDraw
    surfaces. (David Capello)
  * Make internal function get_value in jpgalleg static.
    (Trent Gamblin)
  * Implemented load_midi_pf, play_fli_pf, open_fli_pf.
    (Ivan Mogilko)
  * Make use of in MSVS 2010 and higher. (Ivan Mogilko)
  * Fixes several issues related to fullscreen mode in Windows.
    (Etienne Vouga)
  * Windows: fixed TAB key getting stuck in key buffer when held
    before ALT. (Ivan Mogilko)
  * Fix building with Mesa 18.2.5 and later. (Andreas Rönnquist)
  * Remove f* variants of fixed math functions. (Andreas Rönnquist)
  * Fix complilation of datedit. (rofl0r)
  * Modernize and fix release zipup script. (rofl0r)
- clean up spec file
- remove allegro-4.4.2-shared_plugins.patch (fixed upstream)
- add allegro-4.4.3-texinfo-non-utf8-input-fix.patch</changelog>
  <changelog author="munix9@googlemail.com" date="1574596800">- remove extra CFLAGS for gcc9</changelog>
</package>
<package pkgid="1f6cc65e1f7706970879ea56b1dce1a88395a99110cfa3eeaef30646be7cac8a58ecf36acbfcc0ba02857ab1086d328d775951a3ae65170dd6e9bd5e5e6b8ae1" name="allegro44-dga2-plugin-debuginfo" arch="x86_64">
  <version epoch="0" ver="4.4.3.1" rel="1.1.sr20241103"/>
  <changelog author="reddwarf@opensuse.org" date="1348315200">- Add texinfo BuildRequires</changelog>
  <changelog author="bwiedemann@suse.com" date="1399032000">- Add 32bit modules.lst via baselibs.conf</changelog>
  <changelog author="mailaender@opensuse.org" date="1417953600">- fixed rpmlint warnings</changelog>
  <changelog author="nemysis@gmx.ch" date="1418904000">- Rename allegro4 to allegro
- Change Summary
- Change URL for The giftware licence
- Use for patches %{name}-%{version} instead of liballeg4_4 or
  allegro-4.4.2 and add descriptions for patches
- Add patch allegro4-4.4.2-src_x_xkeyboard.c.patch
- Use check for openSUSE %if 0%{?suse_version}
- Change Description
- Add sed, fix include xf86dga.h</changelog>
  <changelog author="nemysis@gmx.ch" date="1418990400">- Use SED-FIX-OPENSUSE for sed</changelog>
  <changelog author="nemysis@gmx.ch" date="1419249600">- Use for patch(es) %{name}-version instead of %{name}-%{version}</changelog>
  <changelog author="meissner@suse.com" date="1431864000">- info deinstall needs to be in preun section</changelog>
  <changelog author="rpm@fthiessen.de" date="1505995200">- Renamed to allegro44</changelog>
  <changelog author="munix9@googlemail.com" date="1574510400">- update to version 4.4.3.1
  * Fix a regression with the dat tool not working with plugins
    (SiegeLord).
- update to version 4.4.3
  * Allow building the dependencies as shared libraries.
    (Michał Cichoń, Edgar Reynaldo)
  * Fix typo preventing get_executable_name from using System V
    procfs correctly. (Peter Wang)
  * Relicense loadpng under ZLib license.
  * Fix spelling of endianness in textconv (Andreas Rönnquist).
  * Fix format string warnings (Andreas Rönnquist).
  * Add Linux console tslib mouse "touch screen" driver.
    (Tobi Vollebregt)
  * Don't define a duplicate DLLMain. (SiegeLord)
  * Fix Allegro crashes/compilation under 64 bit Windows.
    (Sven Eden, David Capello)
  * Fix possible random crashes on Windows restoring DirectDraw
    surfaces. (David Capello)
  * Make internal function get_value in jpgalleg static.
    (Trent Gamblin)
  * Implemented load_midi_pf, play_fli_pf, open_fli_pf.
    (Ivan Mogilko)
  * Make use of in MSVS 2010 and higher. (Ivan Mogilko)
  * Fixes several issues related to fullscreen mode in Windows.
    (Etienne Vouga)
  * Windows: fixed TAB key getting stuck in key buffer when held
    before ALT. (Ivan Mogilko)
  * Fix building with Mesa 18.2.5 and later. (Andreas Rönnquist)
  * Remove f* variants of fixed math functions. (Andreas Rönnquist)
  * Fix complilation of datedit. (rofl0r)
  * Modernize and fix release zipup script. (rofl0r)
- clean up spec file
- remove allegro-4.4.2-shared_plugins.patch (fixed upstream)
- add allegro-4.4.3-texinfo-non-utf8-input-fix.patch</changelog>
  <changelog author="munix9@googlemail.com" date="1574596800">- remove extra CFLAGS for gcc9</changelog>
</package>
<package pkgid="bbf21c59fb6800e1b7cc67938cb076b8f46f5923f2bb793af74df277c8be81ffb636ff2465f65351c3f2adc0a855986f2b9e22882fd75635e9255fd0eeebb0a6" name="allegro44-jack-plugin-32bit" arch="x86_64">
  <version epoch="0" ver="4.4.3.1" rel="1.1.sr20241103"/>
  <changelog author="reddwarf@opensuse.org" date="1348315200">- Add texinfo BuildRequires</changelog>
  <changelog author="bwiedemann@suse.com" date="1399032000">- Add 32bit modules.lst via baselibs.conf</changelog>
  <changelog author="mailaender@opensuse.org" date="1417953600">- fixed rpmlint warnings</changelog>
  <changelog author="nemysis@gmx.ch" date="1418904000">- Rename allegro4 to allegro
- Change Summary
- Change URL for The giftware licence
- Use for patches %{name}-%{version} instead of liballeg4_4 or
  allegro-4.4.2 and add descriptions for patches
- Add patch allegro4-4.4.2-src_x_xkeyboard.c.patch
- Use check for openSUSE %if 0%{?suse_version}
- Change Description
- Add sed, fix include xf86dga.h</changelog>
  <changelog author="nemysis@gmx.ch" date="1418990400">- Use SED-FIX-OPENSUSE for sed</changelog>
  <changelog author="nemysis@gmx.ch" date="1419249600">- Use for patch(es) %{name}-version instead of %{name}-%{version}</changelog>
  <changelog author="meissner@suse.com" date="1431864000">- info deinstall needs to be in preun section</changelog>
  <changelog author="rpm@fthiessen.de" date="1505995200">- Renamed to allegro44</changelog>
  <changelog author="munix9@googlemail.com" date="1574510400">- update to version 4.4.3.1
  * Fix a regression with the dat tool not working with plugins
    (SiegeLord).
- update to version 4.4.3
  * Allow building the dependencies as shared libraries.
    (Michał Cichoń, Edgar Reynaldo)
  * Fix typo preventing get_executable_name from using System V
    procfs correctly. (Peter Wang)
  * Relicense loadpng under ZLib license.
  * Fix spelling of endianness in textconv (Andreas Rönnquist).
  * Fix format string warnings (Andreas Rönnquist).
  * Add Linux console tslib mouse "touch screen" driver.
    (Tobi Vollebregt)
  * Don't define a duplicate DLLMain. (SiegeLord)
  * Fix Allegro crashes/compilation under 64 bit Windows.
    (Sven Eden, David Capello)
  * Fix possible random crashes on Windows restoring DirectDraw
    surfaces. (David Capello)
  * Make internal function get_value in jpgalleg static.
    (Trent Gamblin)
  * Implemented load_midi_pf, play_fli_pf, open_fli_pf.
    (Ivan Mogilko)
  * Make use of in MSVS 2010 and higher. (Ivan Mogilko)
  * Fixes several issues related to fullscreen mode in Windows.
    (Etienne Vouga)
  * Windows: fixed TAB key getting stuck in key buffer when held
    before ALT. (Ivan Mogilko)
  * Fix building with Mesa 18.2.5 and later. (Andreas Rönnquist)
  * Remove f* variants of fixed math functions. (Andreas Rönnquist)
  * Fix complilation of datedit. (rofl0r)
  * Modernize and fix release zipup script. (rofl0r)
- clean up spec file
- remove allegro-4.4.2-shared_plugins.patch (fixed upstream)
- add allegro-4.4.3-texinfo-non-utf8-input-fix.patch</changelog>
  <changelog author="munix9@googlemail.com" date="1574596800">- remove extra CFLAGS for gcc9</changelog>
</package>
<package pkgid="8d3aa3e1300a3f68c1f17da28f64cffb14528337a8fcb4f4d143893c621e3a61d5787acc6ee066debc49683467034b7b8c32a8c66d0a5999d4338d7df58d24e6" name="allegro44-jack-plugin-32bit-debuginfo" arch="x86_64">
  <version epoch="0" ver="4.4.3.1" rel="1.1.sr20241103"/>
  <changelog author="reddwarf@opensuse.org" date="1348315200">- Add texinfo BuildRequires</changelog>
  <changelog author="bwiedemann@suse.com" date="1399032000">- Add 32bit modules.lst via baselibs.conf</changelog>
  <changelog author="mailaender@opensuse.org" date="1417953600">- fixed rpmlint warnings</changelog>
  <changelog author="nemysis@gmx.ch" date="1418904000">- Rename allegro4 to allegro
- Change Summary
- Change URL for The giftware licence
- Use for patches %{name}-%{version} instead of liballeg4_4 or
  allegro-4.4.2 and add descriptions for patches
- Add patch allegro4-4.4.2-src_x_xkeyboard.c.patch
- Use check for openSUSE %if 0%{?suse_version}
- Change Description
- Add sed, fix include xf86dga.h</changelog>
  <changelog author="nemysis@gmx.ch" date="1418990400">- Use SED-FIX-OPENSUSE for sed</changelog>
  <changelog author="nemysis@gmx.ch" date="1419249600">- Use for patch(es) %{name}-version instead of %{name}-%{version}</changelog>
  <changelog author="meissner@suse.com" date="1431864000">- info deinstall needs to be in preun section</changelog>
  <changelog author="rpm@fthiessen.de" date="1505995200">- Renamed to allegro44</changelog>
  <changelog author="munix9@googlemail.com" date="1574510400">- update to version 4.4.3.1
  * Fix a regression with the dat tool not working with plugins
    (SiegeLord).
- update to version 4.4.3
  * Allow building the dependencies as shared libraries.
    (Michał Cichoń, Edgar Reynaldo)
  * Fix typo preventing get_executable_name from using System V
    procfs correctly. (Peter Wang)
  * Relicense loadpng under ZLib license.
  * Fix spelling of endianness in textconv (Andreas Rönnquist).
  * Fix format string warnings (Andreas Rönnquist).
  * Add Linux console tslib mouse "touch screen" driver.
    (Tobi Vollebregt)
  * Don't define a duplicate DLLMain. (SiegeLord)
  * Fix Allegro crashes/compilation under 64 bit Windows.
    (Sven Eden, David Capello)
  * Fix possible random crashes on Windows restoring DirectDraw
    surfaces. (David Capello)
  * Make internal function get_value in jpgalleg static.
    (Trent Gamblin)
  * Implemented load_midi_pf, play_fli_pf, open_fli_pf.
    (Ivan Mogilko)
  * Make use of in MSVS 2010 and higher. (Ivan Mogilko)
  * Fixes several issues related to fullscreen mode in Windows.
    (Etienne Vouga)
  * Windows: fixed TAB key getting stuck in key buffer when held
    before ALT. (Ivan Mogilko)
  * Fix building with Mesa 18.2.5 and later. (Andreas Rönnquist)
  * Remove f* variants of fixed math functions. (Andreas Rönnquist)
  * Fix complilation of datedit. (rofl0r)
  * Modernize and fix release zipup script. (rofl0r)
- clean up spec file
- remove allegro-4.4.2-shared_plugins.patch (fixed upstream)
- add allegro-4.4.3-texinfo-non-utf8-input-fix.patch</changelog>
  <changelog author="munix9@googlemail.com" date="1574596800">- remove extra CFLAGS for gcc9</changelog>
</package>
<package pkgid="b9aa1c8ad4e39ab6c648cc8a0bdbe2d0f3d3e214061e9c13f3d5a0366cce6569408dffe722eada46494ab3a36885441b1d7930e33718671efb7b0f50175d7aa2" name="allegro44-jack-plugin" arch="i586">
  <version epoch="0" ver="4.4.3.1" rel="1.1.sr20241103"/>
  <changelog author="reddwarf@opensuse.org" date="1348315200">- Add texinfo BuildRequires</changelog>
  <changelog author="bwiedemann@suse.com" date="1399032000">- Add 32bit modules.lst via baselibs.conf</changelog>
  <changelog author="mailaender@opensuse.org" date="1417953600">- fixed rpmlint warnings</changelog>
  <changelog author="nemysis@gmx.ch" date="1418904000">- Rename allegro4 to allegro
- Change Summary
- Change URL for The giftware licence
- Use for patches %{name}-%{version} instead of liballeg4_4 or
  allegro-4.4.2 and add descriptions for patches
- Add patch allegro4-4.4.2-src_x_xkeyboard.c.patch
- Use check for openSUSE %if 0%{?suse_version}
- Change Description
- Add sed, fix include xf86dga.h</changelog>
  <changelog author="nemysis@gmx.ch" date="1418990400">- Use SED-FIX-OPENSUSE for sed</changelog>
  <changelog author="nemysis@gmx.ch" date="1419249600">- Use for patch(es) %{name}-version instead of %{name}-%{version}</changelog>
  <changelog author="meissner@suse.com" date="1431864000">- info deinstall needs to be in preun section</changelog>
  <changelog author="rpm@fthiessen.de" date="1505995200">- Renamed to allegro44</changelog>
  <changelog author="munix9@googlemail.com" date="1574510400">- update to version 4.4.3.1
  * Fix a regression with the dat tool not working with plugins
    (SiegeLord).
- update to version 4.4.3
  * Allow building the dependencies as shared libraries.
    (Michał Cichoń, Edgar Reynaldo)
  * Fix typo preventing get_executable_name from using System V
    procfs correctly. (Peter Wang)
  * Relicense loadpng under ZLib license.
  * Fix spelling of endianness in textconv (Andreas Rönnquist).
  * Fix format string warnings (Andreas Rönnquist).
  * Add Linux console tslib mouse "touch screen" driver.
    (Tobi Vollebregt)
  * Don't define a duplicate DLLMain. (SiegeLord)
  * Fix Allegro crashes/compilation under 64 bit Windows.
    (Sven Eden, David Capello)
  * Fix possible random crashes on Windows restoring DirectDraw
    surfaces. (David Capello)
  * Make internal function get_value in jpgalleg static.
    (Trent Gamblin)
  * Implemented load_midi_pf, play_fli_pf, open_fli_pf.
    (Ivan Mogilko)
  * Make use of in MSVS 2010 and higher. (Ivan Mogilko)
  * Fixes several issues related to fullscreen mode in Windows.
    (Etienne Vouga)
  * Windows: fixed TAB key getting stuck in key buffer when held
    before ALT. (Ivan Mogilko)
  * Fix building with Mesa 18.2.5 and later. (Andreas Rönnquist)
  * Remove f* variants of fixed math functions. (Andreas Rönnquist)
  * Fix complilation of datedit. (rofl0r)
  * Modernize and fix release zipup script. (rofl0r)
- clean up spec file
- remove allegro-4.4.2-shared_plugins.patch (fixed upstream)
- add allegro-4.4.3-texinfo-non-utf8-input-fix.patch</changelog>
  <changelog author="munix9@googlemail.com" date="1574596800">- remove extra CFLAGS for gcc9</changelog>
</package>
<package pkgid="cd805a1a1f58d15c40165705a2f024cf876926bb34674b5bbd1ea345a286ef84b73e3de616a2719cdb283fe29b21678145a113aa64ad23519a088f18008e7949" name="allegro44-jack-plugin" arch="x86_64">
  <version epoch="0" ver="4.4.3.1" rel="1.1.sr20241103"/>
  <changelog author="reddwarf@opensuse.org" date="1348315200">- Add texinfo BuildRequires</changelog>
  <changelog author="bwiedemann@suse.com" date="1399032000">- Add 32bit modules.lst via baselibs.conf</changelog>
  <changelog author="mailaender@opensuse.org" date="1417953600">- fixed rpmlint warnings</changelog>
  <changelog author="nemysis@gmx.ch" date="1418904000">- Rename allegro4 to allegro
- Change Summary
- Change URL for The giftware licence
- Use for patches %{name}-%{version} instead of liballeg4_4 or
  allegro-4.4.2 and add descriptions for patches
- Add patch allegro4-4.4.2-src_x_xkeyboard.c.patch
- Use check for openSUSE %if 0%{?suse_version}
- Change Description
- Add sed, fix include xf86dga.h</changelog>
  <changelog author="nemysis@gmx.ch" date="1418990400">- Use SED-FIX-OPENSUSE for sed</changelog>
  <changelog author="nemysis@gmx.ch" date="1419249600">- Use for patch(es) %{name}-version instead of %{name}-%{version}</changelog>
  <changelog author="meissner@suse.com" date="1431864000">- info deinstall needs to be in preun section</changelog>
  <changelog author="rpm@fthiessen.de" date="1505995200">- Renamed to allegro44</changelog>
  <changelog author="munix9@googlemail.com" date="1574510400">- update to version 4.4.3.1
  * Fix a regression with the dat tool not working with plugins
    (SiegeLord).
- update to version 4.4.3
  * Allow building the dependencies as shared libraries.
    (Michał Cichoń, Edgar Reynaldo)
  * Fix typo preventing get_executable_name from using System V
    procfs correctly. (Peter Wang)
  * Relicense loadpng under ZLib license.
  * Fix spelling of endianness in textconv (Andreas Rönnquist).
  * Fix format string warnings (Andreas Rönnquist).
  * Add Linux console tslib mouse "touch screen" driver.
    (Tobi Vollebregt)
  * Don't define a duplicate DLLMain. (SiegeLord)
  * Fix Allegro crashes/compilation under 64 bit Windows.
    (Sven Eden, David Capello)
  * Fix possible random crashes on Windows restoring DirectDraw
    surfaces. (David Capello)
  * Make internal function get_value in jpgalleg static.
    (Trent Gamblin)
  * Implemented load_midi_pf, play_fli_pf, open_fli_pf.
    (Ivan Mogilko)
  * Make use of in MSVS 2010 and higher. (Ivan Mogilko)
  * Fixes several issues related to fullscreen mode in Windows.
    (Etienne Vouga)
  * Windows: fixed TAB key getting stuck in key buffer when held
    before ALT. (Ivan Mogilko)
  * Fix building with Mesa 18.2.5 and later. (Andreas Rönnquist)
  * Remove f* variants of fixed math functions. (Andreas Rönnquist)
  * Fix complilation of datedit. (rofl0r)
  * Modernize and fix release zipup script. (rofl0r)
- clean up spec file
- remove allegro-4.4.2-shared_plugins.patch (fixed upstream)
- add allegro-4.4.3-texinfo-non-utf8-input-fix.patch</changelog>
  <changelog author="munix9@googlemail.com" date="1574596800">- remove extra CFLAGS for gcc9</changelog>
</package>
<package pkgid="1da3c182ac381582e12510385cf947b7034643356b5dd48f8ac92f872fa97ee57f18d4a7488128b1dc3692abfaf07febb4587e34cf5cbe57c70ac596342cac73" name="allegro44-jack-plugin-debuginfo" arch="i586">
  <version epoch="0" ver="4.4.3.1" rel="1.1.sr20241103"/>
  <changelog author="reddwarf@opensuse.org" date="1348315200">- Add texinfo BuildRequires</changelog>
  <changelog author="bwiedemann@suse.com" date="1399032000">- Add 32bit modules.lst via baselibs.conf</changelog>
  <changelog author="mailaender@opensuse.org" date="1417953600">- fixed rpmlint warnings</changelog>
  <changelog author="nemysis@gmx.ch" date="1418904000">- Rename allegro4 to allegro
- Change Summary
- Change URL for The giftware licence
- Use for patches %{name}-%{version} instead of liballeg4_4 or
  allegro-4.4.2 and add descriptions for patches
- Add patch allegro4-4.4.2-src_x_xkeyboard.c.patch
- Use check for openSUSE %if 0%{?suse_version}
- Change Description
- Add sed, fix include xf86dga.h</changelog>
  <changelog author="nemysis@gmx.ch" date="1418990400">- Use SED-FIX-OPENSUSE for sed</changelog>
  <changelog author="nemysis@gmx.ch" date="1419249600">- Use for patch(es) %{name}-version instead of %{name}-%{version}</changelog>
  <changelog author="meissner@suse.com" date="1431864000">- info deinstall needs to be in preun section</changelog>
  <changelog author="rpm@fthiessen.de" date="1505995200">- Renamed to allegro44</changelog>
  <changelog author="munix9@googlemail.com" date="1574510400">- update to version 4.4.3.1
  * Fix a regression with the dat tool not working with plugins
    (SiegeLord).
- update to version 4.4.3
  * Allow building the dependencies as shared libraries.
    (Michał Cichoń, Edgar Reynaldo)
  * Fix typo preventing get_executable_name from using System V
    procfs correctly. (Peter Wang)
  * Relicense loadpng under ZLib license.
  * Fix spelling of endianness in textconv (Andreas Rönnquist).
  * Fix format string warnings (Andreas Rönnquist).
  * Add Linux console tslib mouse "touch screen" driver.
    (Tobi Vollebregt)
  * Don't define a duplicate DLLMain. (SiegeLord)
  * Fix Allegro crashes/compilation under 64 bit Windows.
    (Sven Eden, David Capello)
  * Fix possible random crashes on Windows restoring DirectDraw
    surfaces. (David Capello)
  * Make internal function get_value in jpgalleg static.
    (Trent Gamblin)
  * Implemented load_midi_pf, play_fli_pf, open_fli_pf.
    (Ivan Mogilko)
  * Make use of in MSVS 2010 and higher. (Ivan Mogilko)
  * Fixes several issues related to fullscreen mode in Windows.
    (Etienne Vouga)
  * Windows: fixed TAB key getting stuck in key buffer when held
    before ALT. (Ivan Mogilko)
  * Fix building with Mesa 18.2.5 and later. (Andreas Rönnquist)
  * Remove f* variants of fixed math functions. (Andreas Rönnquist)
  * Fix complilation of datedit. (rofl0r)
  * Modernize and fix release zipup script. (rofl0r)
- clean up spec file
- remove allegro-4.4.2-shared_plugins.patch (fixed upstream)
- add allegro-4.4.3-texinfo-non-utf8-input-fix.patch</changelog>
  <changelog author="munix9@googlemail.com" date="1574596800">- remove extra CFLAGS for gcc9</changelog>
</package>
<package pkgid="eacdc2f8ecc35e6e21f1222da770a059bb366553d900f86f013363f12389f7bc2dd8b36fc517cbea728511f3b63e9947a644a1da65d354e6412f2a1123f485ab" name="allegro44-jack-plugin-debuginfo" arch="x86_64">
  <version epoch="0" ver="4.4.3.1" rel="1.1.sr20241103"/>
  <changelog author="reddwarf@opensuse.org" date="1348315200">- Add texinfo BuildRequires</changelog>
  <changelog author="bwiedemann@suse.com" date="1399032000">- Add 32bit modules.lst via baselibs.conf</changelog>
  <changelog author="mailaender@opensuse.org" date="1417953600">- fixed rpmlint warnings</changelog>
  <changelog author="nemysis@gmx.ch" date="1418904000">- Rename allegro4 to allegro
- Change Summary
- Change URL for The giftware licence
- Use for patches %{name}-%{version} instead of liballeg4_4 or
  allegro-4.4.2 and add descriptions for patches
- Add patch allegro4-4.4.2-src_x_xkeyboard.c.patch
- Use check for openSUSE %if 0%{?suse_version}
- Change Description
- Add sed, fix include xf86dga.h</changelog>
  <changelog author="nemysis@gmx.ch" date="1418990400">- Use SED-FIX-OPENSUSE for sed</changelog>
  <changelog author="nemysis@gmx.ch" date="1419249600">- Use for patch(es) %{name}-version instead of %{name}-%{version}</changelog>
  <changelog author="meissner@suse.com" date="1431864000">- info deinstall needs to be in preun section</changelog>
  <changelog author="rpm@fthiessen.de" date="1505995200">- Renamed to allegro44</changelog>
  <changelog author="munix9@googlemail.com" date="1574510400">- update to version 4.4.3.1
  * Fix a regression with the dat tool not working with plugins
    (SiegeLord).
- update to version 4.4.3
  * Allow building the dependencies as shared libraries.
    (Michał Cichoń, Edgar Reynaldo)
  * Fix typo preventing get_executable_name from using System V
    procfs correctly. (Peter Wang)
  * Relicense loadpng under ZLib license.
  * Fix spelling of endianness in textconv (Andreas Rönnquist).
  * Fix format string warnings (Andreas Rönnquist).
  * Add Linux console tslib mouse "touch screen" driver.
    (Tobi Vollebregt)
  * Don't define a duplicate DLLMain. (SiegeLord)
  * Fix Allegro crashes/compilation under 64 bit Windows.
    (Sven Eden, David Capello)
  * Fix possible random crashes on Windows restoring DirectDraw
    surfaces. (David Capello)
  * Make internal function get_value in jpgalleg static.
    (Trent Gamblin)
  * Implemented load_midi_pf, play_fli_pf, open_fli_pf.
    (Ivan Mogilko)
  * Make use of in MSVS 2010 and higher. (Ivan Mogilko)
  * Fixes several issues related to fullscreen mode in Windows.
    (Etienne Vouga)
  * Windows: fixed TAB key getting stuck in key buffer when held
    before ALT. (Ivan Mogilko)
  * Fix building with Mesa 18.2.5 and later. (Andreas Rönnquist)
  * Remove f* variants of fixed math functions. (Andreas Rönnquist)
  * Fix complilation of datedit. (rofl0r)
  * Modernize and fix release zipup script. (rofl0r)
- clean up spec file
- remove allegro-4.4.2-shared_plugins.patch (fixed upstream)
- add allegro-4.4.3-texinfo-non-utf8-input-fix.patch</changelog>
  <changelog author="munix9@googlemail.com" date="1574596800">- remove extra CFLAGS for gcc9</changelog>
</package>
<package pkgid="cbb3c4d11a3647ae458d0202d3e85a8cd15a0bd3083258d254c7765b0f4943c0f9396c4fc7798f97dc5bd0fe6eed6020b1238a9927f7baeb054db6cbd5499840" name="allegro44-tools" arch="i586">
  <version epoch="0" ver="4.4.3.1" rel="1.1.sr20241103"/>
  <changelog author="reddwarf@opensuse.org" date="1348315200">- Add texinfo BuildRequires</changelog>
  <changelog author="bwiedemann@suse.com" date="1399032000">- Add 32bit modules.lst via baselibs.conf</changelog>
  <changelog author="mailaender@opensuse.org" date="1417953600">- fixed rpmlint warnings</changelog>
  <changelog author="nemysis@gmx.ch" date="1418904000">- Rename allegro4 to allegro
- Change Summary
- Change URL for The giftware licence
- Use for patches %{name}-%{version} instead of liballeg4_4 or
  allegro-4.4.2 and add descriptions for patches
- Add patch allegro4-4.4.2-src_x_xkeyboard.c.patch
- Use check for openSUSE %if 0%{?suse_version}
- Change Description
- Add sed, fix include xf86dga.h</changelog>
  <changelog author="nemysis@gmx.ch" date="1418990400">- Use SED-FIX-OPENSUSE for sed</changelog>
  <changelog author="nemysis@gmx.ch" date="1419249600">- Use for patch(es) %{name}-version instead of %{name}-%{version}</changelog>
  <changelog author="meissner@suse.com" date="1431864000">- info deinstall needs to be in preun section</changelog>
  <changelog author="rpm@fthiessen.de" date="1505995200">- Renamed to allegro44</changelog>
  <changelog author="munix9@googlemail.com" date="1574510400">- update to version 4.4.3.1
  * Fix a regression with the dat tool not working with plugins
    (SiegeLord).
- update to version 4.4.3
  * Allow building the dependencies as shared libraries.
    (Michał Cichoń, Edgar Reynaldo)
  * Fix typo preventing get_executable_name from using System V
    procfs correctly. (Peter Wang)
  * Relicense loadpng under ZLib license.
  * Fix spelling of endianness in textconv (Andreas Rönnquist).
  * Fix format string warnings (Andreas Rönnquist).
  * Add Linux console tslib mouse "touch screen" driver.
    (Tobi Vollebregt)
  * Don't define a duplicate DLLMain. (SiegeLord)
  * Fix Allegro crashes/compilation under 64 bit Windows.
    (Sven Eden, David Capello)
  * Fix possible random crashes on Windows restoring DirectDraw
    surfaces. (David Capello)
  * Make internal function get_value in jpgalleg static.
    (Trent Gamblin)
  * Implemented load_midi_pf, play_fli_pf, open_fli_pf.
    (Ivan Mogilko)
  * Make use of in MSVS 2010 and higher. (Ivan Mogilko)
  * Fixes several issues related to fullscreen mode in Windows.
    (Etienne Vouga)
  * Windows: fixed TAB key getting stuck in key buffer when held
    before ALT. (Ivan Mogilko)
  * Fix building with Mesa 18.2.5 and later. (Andreas Rönnquist)
  * Remove f* variants of fixed math functions. (Andreas Rönnquist)
  * Fix complilation of datedit. (rofl0r)
  * Modernize and fix release zipup script. (rofl0r)
- clean up spec file
- remove allegro-4.4.2-shared_plugins.patch (fixed upstream)
- add allegro-4.4.3-texinfo-non-utf8-input-fix.patch</changelog>
  <changelog author="munix9@googlemail.com" date="1574596800">- remove extra CFLAGS for gcc9</changelog>
</package>
<package pkgid="7952474ad027d40c48400dc3481e748aa130b765b1ebf5f5c7d152bbd81bce40f333d94ec07472bbf95274abc7033e3f4127cb90d0f9f66f320a7aaa77943256" name="allegro44-tools" arch="x86_64">
  <version epoch="0" ver="4.4.3.1" rel="1.1.sr20241103"/>
  <changelog author="reddwarf@opensuse.org" date="1348315200">- Add texinfo BuildRequires</changelog>
  <changelog author="bwiedemann@suse.com" date="1399032000">- Add 32bit modules.lst via baselibs.conf</changelog>
  <changelog author="mailaender@opensuse.org" date="1417953600">- fixed rpmlint warnings</changelog>
  <changelog author="nemysis@gmx.ch" date="1418904000">- Rename allegro4 to allegro
- Change Summary
- Change URL for The giftware licence
- Use for patches %{name}-%{version} instead of liballeg4_4 or
  allegro-4.4.2 and add descriptions for patches
- Add patch allegro4-4.4.2-src_x_xkeyboard.c.patch
- Use check for openSUSE %if 0%{?suse_version}
- Change Description
- Add sed, fix include xf86dga.h</changelog>
  <changelog author="nemysis@gmx.ch" date="1418990400">- Use SED-FIX-OPENSUSE for sed</changelog>
  <changelog author="nemysis@gmx.ch" date="1419249600">- Use for patch(es) %{name}-version instead of %{name}-%{version}</changelog>
  <changelog author="meissner@suse.com" date="1431864000">- info deinstall needs to be in preun section</changelog>
  <changelog author="rpm@fthiessen.de" date="1505995200">- Renamed to allegro44</changelog>
  <changelog author="munix9@googlemail.com" date="1574510400">- update to version 4.4.3.1
  * Fix a regression with the dat tool not working with plugins
    (SiegeLord).
- update to version 4.4.3
  * Allow building the dependencies as shared libraries.
    (Michał Cichoń, Edgar Reynaldo)
  * Fix typo preventing get_executable_name from using System V
    procfs correctly. (Peter Wang)
  * Relicense loadpng under ZLib license.
  * Fix spelling of endianness in textconv (Andreas Rönnquist).
  * Fix format string warnings (Andreas Rönnquist).
  * Add Linux console tslib mouse "touch screen" driver.
    (Tobi Vollebregt)
  * Don't define a duplicate DLLMain. (SiegeLord)
  * Fix Allegro crashes/compilation under 64 bit Windows.
    (Sven Eden, David Capello)
  * Fix possible random crashes on Windows restoring DirectDraw
    surfaces. (David Capello)
  * Make internal function get_value in jpgalleg static.
    (Trent Gamblin)
  * Implemented load_midi_pf, play_fli_pf, open_fli_pf.
    (Ivan Mogilko)
  * Make use of in MSVS 2010 and higher. (Ivan Mogilko)
  * Fixes several issues related to fullscreen mode in Windows.
    (Etienne Vouga)
  * Windows: fixed TAB key getting stuck in key buffer when held
    before ALT. (Ivan Mogilko)
  * Fix building with Mesa 18.2.5 and later. (Andreas Rönnquist)
  * Remove f* variants of fixed math functions. (Andreas Rönnquist)
  * Fix complilation of datedit. (rofl0r)
  * Modernize and fix release zipup script. (rofl0r)
- clean up spec file
- remove allegro-4.4.2-shared_plugins.patch (fixed upstream)
- add allegro-4.4.3-texinfo-non-utf8-input-fix.patch</changelog>
  <changelog author="munix9@googlemail.com" date="1574596800">- remove extra CFLAGS for gcc9</changelog>
</package>
<package pkgid="d3f9c350b56bba5852b1cbd432989cdf25c2f2472cbb4c85a2dff7c67793afa8aadc7f1c30462e8fd1705d5817b3c4317865757bbf4d9455b6efc562d78298ca" name="allegro44-tools-debuginfo" arch="i586">
  <version epoch="0" ver="4.4.3.1" rel="1.1.sr20241103"/>
  <changelog author="reddwarf@opensuse.org" date="1348315200">- Add texinfo BuildRequires</changelog>
  <changelog author="bwiedemann@suse.com" date="1399032000">- Add 32bit modules.lst via baselibs.conf</changelog>
  <changelog author="mailaender@opensuse.org" date="1417953600">- fixed rpmlint warnings</changelog>
  <changelog author="nemysis@gmx.ch" date="1418904000">- Rename allegro4 to allegro
- Change Summary
- Change URL for The giftware licence
- Use for patches %{name}-%{version} instead of liballeg4_4 or
  allegro-4.4.2 and add descriptions for patches
- Add patch allegro4-4.4.2-src_x_xkeyboard.c.patch
- Use check for openSUSE %if 0%{?suse_version}
- Change Description
- Add sed, fix include xf86dga.h</changelog>
  <changelog author="nemysis@gmx.ch" date="1418990400">- Use SED-FIX-OPENSUSE for sed</changelog>
  <changelog author="nemysis@gmx.ch" date="1419249600">- Use for patch(es) %{name}-version instead of %{name}-%{version}</changelog>
  <changelog author="meissner@suse.com" date="1431864000">- info deinstall needs to be in preun section</changelog>
  <changelog author="rpm@fthiessen.de" date="1505995200">- Renamed to allegro44</changelog>
  <changelog author="munix9@googlemail.com" date="1574510400">- update to version 4.4.3.1
  * Fix a regression with the dat tool not working with plugins
    (SiegeLord).
- update to version 4.4.3
  * Allow building the dependencies as shared libraries.
    (Michał Cichoń, Edgar Reynaldo)
  * Fix typo preventing get_executable_name from using System V
    procfs correctly. (Peter Wang)
  * Relicense loadpng under ZLib license.
  * Fix spelling of endianness in textconv (Andreas Rönnquist).
  * Fix format string warnings (Andreas Rönnquist).
  * Add Linux console tslib mouse "touch screen" driver.
    (Tobi Vollebregt)
  * Don't define a duplicate DLLMain. (SiegeLord)
  * Fix Allegro crashes/compilation under 64 bit Windows.
    (Sven Eden, David Capello)
  * Fix possible random crashes on Windows restoring DirectDraw
    surfaces. (David Capello)
  * Make internal function get_value in jpgalleg static.
    (Trent Gamblin)
  * Implemented load_midi_pf, play_fli_pf, open_fli_pf.
    (Ivan Mogilko)
  * Make use of in MSVS 2010 and higher. (Ivan Mogilko)
  * Fixes several issues related to fullscreen mode in Windows.
    (Etienne Vouga)
  * Windows: fixed TAB key getting stuck in key buffer when held
    before ALT. (Ivan Mogilko)
  * Fix building with Mesa 18.2.5 and later. (Andreas Rönnquist)
  * Remove f* variants of fixed math functions. (Andreas Rönnquist)
  * Fix complilation of datedit. (rofl0r)
  * Modernize and fix release zipup script. (rofl0r)
- clean up spec file
- remove allegro-4.4.2-shared_plugins.patch (fixed upstream)
- add allegro-4.4.3-texinfo-non-utf8-input-fix.patch</changelog>
  <changelog author="munix9@googlemail.com" date="1574596800">- remove extra CFLAGS for gcc9</changelog>
</package>
<package pkgid="96bc34c1e4e9b7bb6b93b7f53f427498eee71ce1e823f4965c10cb503210f68077f4c48b7ec790ee689ebda251ac888a59beaf03ef9303ca554d794ab3cbd0cc" name="allegro44-tools-debuginfo" arch="x86_64">
  <version epoch="0" ver="4.4.3.1" rel="1.1.sr20241103"/>
  <changelog author="reddwarf@opensuse.org" date="1348315200">- Add texinfo BuildRequires</changelog>
  <changelog author="bwiedemann@suse.com" date="1399032000">- Add 32bit modules.lst via baselibs.conf</changelog>
  <changelog author="mailaender@opensuse.org" date="1417953600">- fixed rpmlint warnings</changelog>
  <changelog author="nemysis@gmx.ch" date="1418904000">- Rename allegro4 to allegro
- Change Summary
- Change URL for The giftware licence
- Use for patches %{name}-%{version} instead of liballeg4_4 or
  allegro-4.4.2 and add descriptions for patches
- Add patch allegro4-4.4.2-src_x_xkeyboard.c.patch
- Use check for openSUSE %if 0%{?suse_version}
- Change Description
- Add sed, fix include xf86dga.h</changelog>
  <changelog author="nemysis@gmx.ch" date="1418990400">- Use SED-FIX-OPENSUSE for sed</changelog>
  <changelog author="nemysis@gmx.ch" date="1419249600">- Use for patch(es) %{name}-version instead of %{name}-%{version}</changelog>
  <changelog author="meissner@suse.com" date="1431864000">- info deinstall needs to be in preun section</changelog>
  <changelog author="rpm@fthiessen.de" date="1505995200">- Renamed to allegro44</changelog>
  <changelog author="munix9@googlemail.com" date="1574510400">- update to version 4.4.3.1
  * Fix a regression with the dat tool not working with plugins
    (SiegeLord).
- update to version 4.4.3
  * Allow building the dependencies as shared libraries.
    (Michał Cichoń, Edgar Reynaldo)
  * Fix typo preventing get_executable_name from using System V
    procfs correctly. (Peter Wang)
  * Relicense loadpng under ZLib license.
  * Fix spelling of endianness in textconv (Andreas Rönnquist).
  * Fix format string warnings (Andreas Rönnquist).
  * Add Linux console tslib mouse "touch screen" driver.
    (Tobi Vollebregt)
  * Don't define a duplicate DLLMain. (SiegeLord)
  * Fix Allegro crashes/compilation under 64 bit Windows.
    (Sven Eden, David Capello)
  * Fix possible random crashes on Windows restoring DirectDraw
    surfaces. (David Capello)
  * Make internal function get_value in jpgalleg static.
    (Trent Gamblin)
  * Implemented load_midi_pf, play_fli_pf, open_fli_pf.
    (Ivan Mogilko)
  * Make use of in MSVS 2010 and higher. (Ivan Mogilko)
  * Fixes several issues related to fullscreen mode in Windows.
    (Etienne Vouga)
  * Windows: fixed TAB key getting stuck in key buffer when held
    before ALT. (Ivan Mogilko)
  * Fix building with Mesa 18.2.5 and later. (Andreas Rönnquist)
  * Remove f* variants of fixed math functions. (Andreas Rönnquist)
  * Fix complilation of datedit. (rofl0r)
  * Modernize and fix release zipup script. (rofl0r)
- clean up spec file
- remove allegro-4.4.2-shared_plugins.patch (fixed upstream)
- add allegro-4.4.3-texinfo-non-utf8-input-fix.patch</changelog>
  <changelog author="munix9@googlemail.com" date="1574596800">- remove extra CFLAGS for gcc9</changelog>
</package>
<package pkgid="84341831aaca6ea0c19a0904431edf619f92ab135b5f4c48b66d17fc74ea118c35bc557ac9d2b20313e2747285376a3828aba1cdb66ff29760311c1667d2e329" name="alligator" arch="src">
  <version epoch="0" ver="24.08.3" rel="1.1"/>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1688472000">- Update to 23.04.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.04.3/
- No code change since 23.04.2</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1690891200">- Update to 23.07.80
  * New feature release
- Changes since 23.04.3:
  * Fix binary stripping of APKs with Qt 5.15.10
  * [CI] Reenable Android Qt6</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1692014400">- Update to 23.07.90
  * New feature release
- Changes since 23.07.80:
  * flatpak: update runtime to 22.08</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1692532800">- Update to 23.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.0/
- No code change since 23.07.90</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1694520000">- Update to 23.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.1/
- No code change since 23.08.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1696939200">- Update to 23.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.2/
- Changes since 23.08.1:
  * snapcraft: new content pack
  * Add snapcraft files to reuse
  * Add snapcraft files</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1699358400">- Update to 23.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.3/
- Changes since 23.08.2:
  * CI: Comment out flatpak as it uses some KF6 dependencies
  * snapcraft: Bump content pack version.</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1701777600">- Update to 23.08.4
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.4/
- No code change since 23.08.3</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1707480000">- Update to 24.01.95
  * https://kde.org/announcements/megarelease/6/rc2/</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1708689600">- Update to 24.02.0
  * New feature release
- No code change since 24.01.95</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1710849600">- Update to 24.02.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.1/
- Changes since 24.02.0:
  * Fix crash on shutdown
  * flatpak: Switch to non-preview runtime</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1712664000">- Update to 24.02.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.2/
- Changes since 24.02.1:
  * Set width on list section header</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1714737600">- Update to 24.04.80
  * New feature release
- Changes since 24.02.2:
  * Set width on list section header
  * Fix Sidebar Text Being Inappropriately Shown on Startup when Sidebar is Collapsed
  * Set compilersettings level to 6.0
  * Remove Qt5 dependencies
  * Add monochrome icon for Android
  * Fix crash on shutdown</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1716120000">- Update to 24.05.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.0/
- No code change since 24.04.80</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1718193600">- Update to 24.05.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.1/
- No code change since 24.05.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1719921600">- Update to 24.05.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.2/
- No code change since 24.05.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1724068800">- Update to 24.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.0/
- Changes since 24.05.2:
  * Snapcraft: Cleanup plugs now in extension, snapd.
  * snapcraft: Initial import for qt6.
  * Close sidebar when tapping on an item (kde#465221)
  * Fix "Cannot read property 'displayName' of null"
  * Build APKs against released dependencies
  * Update year
  * Remove unused include
  * AlligatorGlobalDrawer.qml import org.kde.alligator.config
  * Register Feed as a QML type
  * Run qmlformat
  * Qualify property access
  * Read sidebarCollapsed from settings directly
  * Add dependency declaration to QML module
  * Make settings a singleton
  * Rename Config to AlligatorSettings
  * Port to ecm_add_qml_module
  * Fix EntryPage background color
  * Ensure tooltip shows when collapsed
  * Complement org.kde.alligator.appdata.xml</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1725969600">- Update to 24.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.1/
- No code change since 24.08.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1728388800">- Update to 24.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.2/
- No code change since 24.08.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1730808000">- Update to 24.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.3/
- No code change since 24.08.2</changelog>
</package>
<package pkgid="2fd7d55bb659bbdb7d9effce01be60b596b9462537b6a6a7fb93aee3339c375d97f0adba919d0772485a0b5ad7a0d1359fb2c94a7ee9160317cde9f1f7241e40" name="alligator" arch="x86_64">
  <version epoch="0" ver="24.08.3" rel="1.1"/>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1688472000">- Update to 23.04.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.04.3/
- No code change since 23.04.2</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1690891200">- Update to 23.07.80
  * New feature release
- Changes since 23.04.3:
  * Fix binary stripping of APKs with Qt 5.15.10
  * [CI] Reenable Android Qt6</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1692014400">- Update to 23.07.90
  * New feature release
- Changes since 23.07.80:
  * flatpak: update runtime to 22.08</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1692532800">- Update to 23.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.0/
- No code change since 23.07.90</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1694520000">- Update to 23.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.1/
- No code change since 23.08.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1696939200">- Update to 23.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.2/
- Changes since 23.08.1:
  * snapcraft: new content pack
  * Add snapcraft files to reuse
  * Add snapcraft files</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1699358400">- Update to 23.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.3/
- Changes since 23.08.2:
  * CI: Comment out flatpak as it uses some KF6 dependencies
  * snapcraft: Bump content pack version.</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1701777600">- Update to 23.08.4
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.4/
- No code change since 23.08.3</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1707480000">- Update to 24.01.95
  * https://kde.org/announcements/megarelease/6/rc2/</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1708689600">- Update to 24.02.0
  * New feature release
- No code change since 24.01.95</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1710849600">- Update to 24.02.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.1/
- Changes since 24.02.0:
  * Fix crash on shutdown
  * flatpak: Switch to non-preview runtime</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1712664000">- Update to 24.02.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.2/
- Changes since 24.02.1:
  * Set width on list section header</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1714737600">- Update to 24.04.80
  * New feature release
- Changes since 24.02.2:
  * Set width on list section header
  * Fix Sidebar Text Being Inappropriately Shown on Startup when Sidebar is Collapsed
  * Set compilersettings level to 6.0
  * Remove Qt5 dependencies
  * Add monochrome icon for Android
  * Fix crash on shutdown</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1716120000">- Update to 24.05.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.0/
- No code change since 24.04.80</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1718193600">- Update to 24.05.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.1/
- No code change since 24.05.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1719921600">- Update to 24.05.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.2/
- No code change since 24.05.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1724068800">- Update to 24.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.0/
- Changes since 24.05.2:
  * Snapcraft: Cleanup plugs now in extension, snapd.
  * snapcraft: Initial import for qt6.
  * Close sidebar when tapping on an item (kde#465221)
  * Fix "Cannot read property 'displayName' of null"
  * Build APKs against released dependencies
  * Update year
  * Remove unused include
  * AlligatorGlobalDrawer.qml import org.kde.alligator.config
  * Register Feed as a QML type
  * Run qmlformat
  * Qualify property access
  * Read sidebarCollapsed from settings directly
  * Add dependency declaration to QML module
  * Make settings a singleton
  * Rename Config to AlligatorSettings
  * Port to ecm_add_qml_module
  * Fix EntryPage background color
  * Ensure tooltip shows when collapsed
  * Complement org.kde.alligator.appdata.xml</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1725969600">- Update to 24.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.1/
- No code change since 24.08.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1728388800">- Update to 24.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.2/
- No code change since 24.08.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1730808000">- Update to 24.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.3/
- No code change since 24.08.2</changelog>
</package>
<package pkgid="009faca401393dd495ec3a80113518da9500133f15afeb02d42fab02446c9198a6bd93b1fbf58ab9de6ca1855f61aef5df7ba6c20381bdb95986bfff12e479bd" name="alligator-debuginfo" arch="x86_64">
  <version epoch="0" ver="24.08.3" rel="1.1"/>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1688472000">- Update to 23.04.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.04.3/
- No code change since 23.04.2</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1690891200">- Update to 23.07.80
  * New feature release
- Changes since 23.04.3:
  * Fix binary stripping of APKs with Qt 5.15.10
  * [CI] Reenable Android Qt6</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1692014400">- Update to 23.07.90
  * New feature release
- Changes since 23.07.80:
  * flatpak: update runtime to 22.08</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1692532800">- Update to 23.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.0/
- No code change since 23.07.90</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1694520000">- Update to 23.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.1/
- No code change since 23.08.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1696939200">- Update to 23.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.2/
- Changes since 23.08.1:
  * snapcraft: new content pack
  * Add snapcraft files to reuse
  * Add snapcraft files</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1699358400">- Update to 23.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.3/
- Changes since 23.08.2:
  * CI: Comment out flatpak as it uses some KF6 dependencies
  * snapcraft: Bump content pack version.</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1701777600">- Update to 23.08.4
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.4/
- No code change since 23.08.3</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1707480000">- Update to 24.01.95
  * https://kde.org/announcements/megarelease/6/rc2/</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1708689600">- Update to 24.02.0
  * New feature release
- No code change since 24.01.95</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1710849600">- Update to 24.02.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.1/
- Changes since 24.02.0:
  * Fix crash on shutdown
  * flatpak: Switch to non-preview runtime</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1712664000">- Update to 24.02.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.2/
- Changes since 24.02.1:
  * Set width on list section header</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1714737600">- Update to 24.04.80
  * New feature release
- Changes since 24.02.2:
  * Set width on list section header
  * Fix Sidebar Text Being Inappropriately Shown on Startup when Sidebar is Collapsed
  * Set compilersettings level to 6.0
  * Remove Qt5 dependencies
  * Add monochrome icon for Android
  * Fix crash on shutdown</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1716120000">- Update to 24.05.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.0/
- No code change since 24.04.80</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1718193600">- Update to 24.05.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.1/
- No code change since 24.05.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1719921600">- Update to 24.05.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.2/
- No code change since 24.05.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1724068800">- Update to 24.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.0/
- Changes since 24.05.2:
  * Snapcraft: Cleanup plugs now in extension, snapd.
  * snapcraft: Initial import for qt6.
  * Close sidebar when tapping on an item (kde#465221)
  * Fix "Cannot read property 'displayName' of null"
  * Build APKs against released dependencies
  * Update year
  * Remove unused include
  * AlligatorGlobalDrawer.qml import org.kde.alligator.config
  * Register Feed as a QML type
  * Run qmlformat
  * Qualify property access
  * Read sidebarCollapsed from settings directly
  * Add dependency declaration to QML module
  * Make settings a singleton
  * Rename Config to AlligatorSettings
  * Port to ecm_add_qml_module
  * Fix EntryPage background color
  * Ensure tooltip shows when collapsed
  * Complement org.kde.alligator.appdata.xml</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1725969600">- Update to 24.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.1/
- No code change since 24.08.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1728388800">- Update to 24.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.2/
- No code change since 24.08.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1730808000">- Update to 24.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.3/
- No code change since 24.08.2</changelog>
</package>
<package pkgid="0064188c3cf0006ad3c6fc7233faf816a56c17210ac4f4e5379f36be43bf357c860a84f8841b1f53247554f0fc05b49a020fec2df0bf85b689f32c95361ff2e4" name="alligator-debugsource" arch="x86_64">
  <version epoch="0" ver="24.08.3" rel="1.1"/>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1688472000">- Update to 23.04.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.04.3/
- No code change since 23.04.2</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1690891200">- Update to 23.07.80
  * New feature release
- Changes since 23.04.3:
  * Fix binary stripping of APKs with Qt 5.15.10
  * [CI] Reenable Android Qt6</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1692014400">- Update to 23.07.90
  * New feature release
- Changes since 23.07.80:
  * flatpak: update runtime to 22.08</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1692532800">- Update to 23.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.0/
- No code change since 23.07.90</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1694520000">- Update to 23.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.1/
- No code change since 23.08.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1696939200">- Update to 23.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.2/
- Changes since 23.08.1:
  * snapcraft: new content pack
  * Add snapcraft files to reuse
  * Add snapcraft files</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1699358400">- Update to 23.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.3/
- Changes since 23.08.2:
  * CI: Comment out flatpak as it uses some KF6 dependencies
  * snapcraft: Bump content pack version.</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1701777600">- Update to 23.08.4
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.4/
- No code change since 23.08.3</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1707480000">- Update to 24.01.95
  * https://kde.org/announcements/megarelease/6/rc2/</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1708689600">- Update to 24.02.0
  * New feature release
- No code change since 24.01.95</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1710849600">- Update to 24.02.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.1/
- Changes since 24.02.0:
  * Fix crash on shutdown
  * flatpak: Switch to non-preview runtime</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1712664000">- Update to 24.02.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.2/
- Changes since 24.02.1:
  * Set width on list section header</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1714737600">- Update to 24.04.80
  * New feature release
- Changes since 24.02.2:
  * Set width on list section header
  * Fix Sidebar Text Being Inappropriately Shown on Startup when Sidebar is Collapsed
  * Set compilersettings level to 6.0
  * Remove Qt5 dependencies
  * Add monochrome icon for Android
  * Fix crash on shutdown</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1716120000">- Update to 24.05.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.0/
- No code change since 24.04.80</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1718193600">- Update to 24.05.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.1/
- No code change since 24.05.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1719921600">- Update to 24.05.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.2/
- No code change since 24.05.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1724068800">- Update to 24.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.0/
- Changes since 24.05.2:
  * Snapcraft: Cleanup plugs now in extension, snapd.
  * snapcraft: Initial import for qt6.
  * Close sidebar when tapping on an item (kde#465221)
  * Fix "Cannot read property 'displayName' of null"
  * Build APKs against released dependencies
  * Update year
  * Remove unused include
  * AlligatorGlobalDrawer.qml import org.kde.alligator.config
  * Register Feed as a QML type
  * Run qmlformat
  * Qualify property access
  * Read sidebarCollapsed from settings directly
  * Add dependency declaration to QML module
  * Make settings a singleton
  * Rename Config to AlligatorSettings
  * Port to ecm_add_qml_module
  * Fix EntryPage background color
  * Ensure tooltip shows when collapsed
  * Complement org.kde.alligator.appdata.xml</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1725969600">- Update to 24.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.1/
- No code change since 24.08.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1728388800">- Update to 24.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.2/
- No code change since 24.08.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1730808000">- Update to 24.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.3/
- No code change since 24.08.2</changelog>
</package>
<package pkgid="e3b77a146ef6bef307b406da39a9ebdded43b2e09f410aab65fab524a24b432a5cb4de132148236fed1f4669c3565f9e79848ea708d947cc94b24ca9079dfc09" name="alligator-lang" arch="noarch">
  <version epoch="0" ver="24.08.3" rel="1.1"/>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1688472000">- Update to 23.04.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.04.3/
- No code change since 23.04.2</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1690891200">- Update to 23.07.80
  * New feature release
- Changes since 23.04.3:
  * Fix binary stripping of APKs with Qt 5.15.10
  * [CI] Reenable Android Qt6</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1692014400">- Update to 23.07.90
  * New feature release
- Changes since 23.07.80:
  * flatpak: update runtime to 22.08</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1692532800">- Update to 23.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.0/
- No code change since 23.07.90</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1694520000">- Update to 23.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.1/
- No code change since 23.08.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1696939200">- Update to 23.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.2/
- Changes since 23.08.1:
  * snapcraft: new content pack
  * Add snapcraft files to reuse
  * Add snapcraft files</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1699358400">- Update to 23.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.3/
- Changes since 23.08.2:
  * CI: Comment out flatpak as it uses some KF6 dependencies
  * snapcraft: Bump content pack version.</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1701777600">- Update to 23.08.4
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.4/
- No code change since 23.08.3</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1707480000">- Update to 24.01.95
  * https://kde.org/announcements/megarelease/6/rc2/</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1708689600">- Update to 24.02.0
  * New feature release
- No code change since 24.01.95</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1710849600">- Update to 24.02.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.1/
- Changes since 24.02.0:
  * Fix crash on shutdown
  * flatpak: Switch to non-preview runtime</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1712664000">- Update to 24.02.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.2/
- Changes since 24.02.1:
  * Set width on list section header</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1714737600">- Update to 24.04.80
  * New feature release
- Changes since 24.02.2:
  * Set width on list section header
  * Fix Sidebar Text Being Inappropriately Shown on Startup when Sidebar is Collapsed
  * Set compilersettings level to 6.0
  * Remove Qt5 dependencies
  * Add monochrome icon for Android
  * Fix crash on shutdown</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1716120000">- Update to 24.05.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.0/
- No code change since 24.04.80</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1718193600">- Update to 24.05.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.1/
- No code change since 24.05.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1719921600">- Update to 24.05.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.2/
- No code change since 24.05.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1724068800">- Update to 24.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.0/
- Changes since 24.05.2:
  * Snapcraft: Cleanup plugs now in extension, snapd.
  * snapcraft: Initial import for qt6.
  * Close sidebar when tapping on an item (kde#465221)
  * Fix "Cannot read property 'displayName' of null"
  * Build APKs against released dependencies
  * Update year
  * Remove unused include
  * AlligatorGlobalDrawer.qml import org.kde.alligator.config
  * Register Feed as a QML type
  * Run qmlformat
  * Qualify property access
  * Read sidebarCollapsed from settings directly
  * Add dependency declaration to QML module
  * Make settings a singleton
  * Rename Config to AlligatorSettings
  * Port to ecm_add_qml_module
  * Fix EntryPage background color
  * Ensure tooltip shows when collapsed
  * Complement org.kde.alligator.appdata.xml</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1725969600">- Update to 24.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.1/
- No code change since 24.08.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1728388800">- Update to 24.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.2/
- No code change since 24.08.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1730808000">- Update to 24.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.3/
- No code change since 24.08.2</changelog>
</package>
<package pkgid="aa6c38610a7301b19389c370b1621ce55a606951266d4566d9c134eaccd9e1e8905643529ed726a22e7ee18b2fa54d9c4bf9cbb8d00aef5b401258bdbb665a2e" name="alsa" arch="i586">
  <version epoch="0" ver="1.2.13" rel="2.0.2.1.sr20241103"/>
  <changelog author="Ferdinand Thiessen &lt;rpm@fthiessen.de&gt;" date="1622462400">- Update to version 1.2.5
  * https://www.alsa-project.org/wiki/Changes_v1.2.4_v1.2.5#alsa-lib
- Drop upstream fixed patches
  * 0001-dlmisc-the-snd_plugin_dir_set-snd_plugin_dir-must-be.patch
  * 0002-dlmisc-fix-snd_plugin_dir-locking-for-not-DL_ORIGIN_.patch
  * 0003-pcm-snd_pcm_mmap_readi-fix-typo-in-comment.patch
  * 0004-topology-use-inclusive-language-for-bclk.patch
  * 0005-topology-use-inclusive-language-for-fsync.patch
  * 0006-topology-use-inclusive-language-in-documentation.patch
  * 0007-pcm-set-the-snd_pcm_ioplug_status-tstamp-field.patch
  * 0009-pcm-Add-snd_pcm_audio_tstamp_type_t-constants.patch
  * 0045-pcm-direct-Fix-the-missing-appl_ptr-update.patch
  * 0019-pcm-fix-__snd_pcm_state-return-value.patch
  * 0025-pcm-plugin-optimize-sync-in-snd_pcm_plugin_status.patch
  * 0026-Revert-pcm_plugin-fix-delay.patch
  * 0014-rawmidi-fix-memory-leak-in-snd_rawmidi_virtual_open.patch
  * 0037-topology-tplg_decode_pcm-add-missing-log-argument-co.patch
  * 0040-topology-sort_config-cleanups-use-goto-for-the-error.patch
  * 0028-pcm-rate-tidy-up-snd_pcm_rate_avail_update.patch
  * 0046-pcm-ioplug-Pass-appl_ptr-and-hw_ptr-in-snd_pcm_statu.patch
  * 0030-pcm-rate-use-pcm_frame_diff-in-snd_pcm_rate_playback.patch
  * 0047-pcm-null-Pass-appl_ptr-and-hw_ptr-in-snd_pcm_status.patch
  * 0043-pcm-dmix-dshare-delay-calculation-fixes-and-cleanups.patch
  * 0042-pcm_plugin-set-the-initial-hw_ptr-appl_ptr-from-the-.patch
  * 0011-pcm-Fix-a-typo-in-SND_PCM_AUDIO_TSTAMP_TYPE_LAST-def.patch
  * 0017-pcm_multi-remove-dead-assignment-from-_snd_pcm_multi.patch
  * 0027-pcm-ioplug-fix-the-delay-calculation-in-the-status-c.patch
  * 0041-conf-USB-add-Xonar-U7-MKII-to-USB-Audio.pcm.iec958_d.patch
  * 0016-pcm-remove-dead-assignments-from-snd_pcm_rate_-commi.patch
  * 0035-topology-tplg_pprint_integer-fix-coverity-uninitaliz.patch
  * 0034-ucm-fix-possible-memory-leak-in-parse_verb_file.patch
  * 0021-conf-fix-return-code-in-_snd_config_load_with_includ.patch
  * 0023-pcm-plugin-status-revert-the-recent-changes.patch
  * 0020-confmisc-fix-memory-leak-in-snd_func_concat.patch
  * 0029-pcm-ioplug-fix-the-delay-calculation-for-old-plugins.patch
  * 0039-ucm-uc_mgr_substitute_tree-fix-use-after-free.patch
  * 0024-pcm-plugin-tidy-snd_pcm_plugin_avail_update.patch
  * 0010-test-audio_time-Make-use-of-SND_PCM_AUDIO_TSTAMP_TYP.patch
  * 0033-pcm-rate-fix-the-capture-delay-values.patch
  * 0015-timer-fix-sizeof-operator-mismatch-in-snd_timer_quer.patch
  * 0036-topology-tplg_add_widget_object-do-not-use-invalid-e.patch
  * 0044-topology-fix-parse_tuple_set-remove-dead-condition-c.patch
  * 0038-topology-parse_tuple_set-remove-dead-condition-code.patch
  * 0018-conf-fix-get_hexachar-return-value.patch
  * 0013-ucm-fix-bad-frees-in-get_list0-and-get_list20.patch
  * 0012-conf-fix-use-after-free-in-_snd_config_load_with_inc.patch
  * 0031-pcm-plugin-fix-status-code-for-capture.patch
  * 0048-pcm-share-Pass-appl_ptr-and-hw_ptr-in-snd_pcm_status.patch
  * 0032-pcm-rate-use-pcm_frame_diff-on-related-places.patch
  * 0022-pcm-plugin-status-fix-the-return-value-regression.patch</changelog>
  <changelog author="tiwai@suse.de" date="1623240000">- Fix regression in config read and UCM handling on pipewire and
  pulseaudio (boo#1187079, boo#1187033):
  0001-conf-fix-load_for_all_cards.patch
  0002-ucm-add-_alibpref-to-get-the-private-device-prefix.patch
  0003-ucm-fix-_alibpref-string-add-.-delimiter-to-the-end.patch</changelog>
  <changelog author="tiwai@suse.de" date="1623672000">- Update to version 1.2.5.1:
  a bug fix release, including previous patches:
  https://www.alsa-project.org/wiki/Changes_v1.2.5_v1.2.5.1
- Drop obsoleted patches:
  0001-conf-fix-load_for_all_cards.patch
  0002-ucm-add-_alibpref-to-get-the-private-device-prefix.patch
  0003-ucm-fix-_alibpref-string-add-.-delimiter-to-the-end.patch</changelog>
  <changelog author="tiwai@suse.de" date="1638792000">- Update to version 1.2.6:
  lots of changes, including UCM and config updates and rawmidi
  framing mode support: for details, see below
  https://www.alsa-project.org/wiki/Changes_v1.2.5.1_v1.2.6#alsa-lib
- Add *.sig file for the source tarball</changelog>
  <changelog author="tiwai@suse.de" date="1639137600">- Update to version 1.2.6.1:
  a minor fix release:
  * conf: fix the device parsing when arguments has no defaults
  * conf: accept '_' character in the variable name</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1654084800">- Update to version 1.2.7:
  more extended UCM API, PCM rate,multi,direct plugin fixes and
  enhancements, compilation fixes, etc.  For details see:
  https://www.alsa-project.org/wiki/Changes_v1.2.6.3_v1.2.7#alsa-lib</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1654516800">- Backport upstream fixes for 32bit inode and ELD parsing:
  0001-conf-Use-ino64_t-to-save-and-compare-inode-numbers.patch
  0002-control-eld-fix-the-decoding-for-older-hw.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1655726400">- Update to version 1.2.7.1: minor bug fixes, including the previous
  patches.  For details, see
    https://www.alsa-project.org/wiki/Changes_v1.2.7_v1.2.7.1#alsa-lib
- Drop obsoleted patches:
  0001-conf-Use-ino64_t-to-save-and-compare-inode-numbers.patch
  0002-control-eld-fix-the-decoding-for-older-hw.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1658145600">- Update to version 1.2.7.2: minor updates, including fixes for PCM
  share plugin, rawmidi and UCM</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1666699200">- Update to version 1.2.8 (jsc#PED-850):
  add FreeBSD/NetBD/OpenBSD build support, fixes in control namehint,
  various PCM plugins and UCM.  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.7.2_v1.2.8
- Add keyring</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1683547200">- Update to version 1.2.9:
  * Versioned symbol updates
  * Various fixes for building on *BSD and Android
  * Fixes and enhancements of auto silencing and playback drain
  * Add SND_CTL_EINTR open mode at PCM
  * Avoid endless loop in snd_pcm_sw_params_default()
  * Fixes in PCM rate, route/softvol plugins
  * Fixes in topology API parser, cleanups
  * Enhancements in latency test program
  * Minor code cleanup and memory leak fixes in UCM API
  * emu10k1 config cleanup
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.8_v1.2.9#alsa-lib</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1693828800">- Update to version 1.2.10 (jsc#PED-6566):
  * MIDI 2.0 feature support
  * build fixes for various platforms
  * various documentation fixes
  * misc topology fixes
  * ucm fixes and cleanups
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.9_v1.2.10#alsa-lib
- Took upstream fix for possible build errors:
  0001-control.h-Fix-ump-header-file-detection.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1694260800">- Upstream fix backport:
  0002-global.h-move-__STRING-macro-outside-PIC-ifdef-block.patch
- Upstream fix for PCM segfault regression (bsc#1215167):
  0003-pcm-Fix-segfault-with-32bit-libs.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1695038400">- More upstream fix for incosistent compile conditions:
  0004-reshuffle-included-files-to-include-config.h-as-firs.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1696939200">- Fix symbol version:
  0005-seq-Fix-typos-in-symbol-version-definitions.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1699358400">- Backport upstream fixes for sequencer and mixer:
  0006-seq-Fix-invalid-sanity-check-in-snd_seq_set_input_bu.patch
  0007-mixer-simple-Support-dB-TLVs-for-CTL_SINGLE-controls.patch
  0008-seq-Clear-UMP-event-flag-for-legacy-apps.patch
  0009-seq-Simplify-snd_seq_extract_output.patch
  0010-seq-Check-protocol-compatibility-with-the-current-ve.patch
- Clean up spec file</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1706875200">- Updated to alsa-lib 1.2.11:
  * auto-tools fixes, versioned symbol fixes
  * support dB TLVs for single controls
  * various PCM updates, including subformat extensions
  * UMP and sequencer API fixes
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.10_v1.2.11#alsa-lib
- Dropped obsoleted patches:
  0001-control.h-Fix-ump-header-file-detection.patch
  0002-global.h-move-__STRING-macro-outside-PIC-ifdef-block.patch
  0003-pcm-Fix-segfault-with-32bit-libs.patch
  0004-reshuffle-included-files-to-include-config.h-as-firs.patch
  0005-seq-Fix-typos-in-symbol-version-definitions.patch
  0006-seq-Fix-invalid-sanity-check-in-snd_seq_set_input_bu.patch
  0007-mixer-simple-Support-dB-TLVs-for-CTL_SINGLE-controls.patch
  0008-seq-Clear-UMP-event-flag-for-legacy-apps.patch
  0009-seq-Simplify-snd_seq_extract_output.patch
  0010-seq-Check-protocol-compatibility-with-the-current-ve.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1718280000">- Update to alsa-lib 1.2.12:
  * pcm: plug support for iec958 subframe samples
  * pcm: ladspa - Skip missing ladspa directories
  * topology: correct version script path
  * ucm: define and describe Syntax 7
  * async handler cleanup fix
  * conf updates
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.11_v1.2.12#alsa-lib</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1731412800">- Update to alsa-lib 1.2.13:
  * static build fixes
  * documentation update for control remap API
  * PCM dmix fixes
  * pcm: implement snd_pcm_hw_params_get_sync() and obsolete snd_pcm_info_get_sync()
  * ump: Add a function to provide the packet word length of a UMP type
  * seq: Add snd_seq_{get|set}_ump_is_midi1() API functions
  * seq: Add API functions to set different tempo base values
  * seq: Add API helper functions for creating UMP Endpoint and Blocks
  * documentation fixes for UMP and sequencer API
  * test: Add an example programs for UMP
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.12_v1.2.13#alsa-lib
- Conditionally take libtool</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1731672000">- Fix incorrect versioned symbol for snd_seq_has_queue_tempo_base:
  0001-src-Versions.in.in-Update-_tempo_base-name.patch</changelog>
</package>
<package pkgid="06b623e2feafb11bbea672efe0552245df2b3167f150e1fc2cf5ea2b79aced02fe441bd54e8ae7956f8e61247b1af4c806507dfefced817bb9265b8570edfa70" name="alsa" arch="src">
  <version epoch="0" ver="1.2.13" rel="2.0.2.1.sr20241103"/>
  <changelog author="Ferdinand Thiessen &lt;rpm@fthiessen.de&gt;" date="1622462400">- Update to version 1.2.5
  * https://www.alsa-project.org/wiki/Changes_v1.2.4_v1.2.5#alsa-lib
- Drop upstream fixed patches
  * 0001-dlmisc-the-snd_plugin_dir_set-snd_plugin_dir-must-be.patch
  * 0002-dlmisc-fix-snd_plugin_dir-locking-for-not-DL_ORIGIN_.patch
  * 0003-pcm-snd_pcm_mmap_readi-fix-typo-in-comment.patch
  * 0004-topology-use-inclusive-language-for-bclk.patch
  * 0005-topology-use-inclusive-language-for-fsync.patch
  * 0006-topology-use-inclusive-language-in-documentation.patch
  * 0007-pcm-set-the-snd_pcm_ioplug_status-tstamp-field.patch
  * 0009-pcm-Add-snd_pcm_audio_tstamp_type_t-constants.patch
  * 0045-pcm-direct-Fix-the-missing-appl_ptr-update.patch
  * 0019-pcm-fix-__snd_pcm_state-return-value.patch
  * 0025-pcm-plugin-optimize-sync-in-snd_pcm_plugin_status.patch
  * 0026-Revert-pcm_plugin-fix-delay.patch
  * 0014-rawmidi-fix-memory-leak-in-snd_rawmidi_virtual_open.patch
  * 0037-topology-tplg_decode_pcm-add-missing-log-argument-co.patch
  * 0040-topology-sort_config-cleanups-use-goto-for-the-error.patch
  * 0028-pcm-rate-tidy-up-snd_pcm_rate_avail_update.patch
  * 0046-pcm-ioplug-Pass-appl_ptr-and-hw_ptr-in-snd_pcm_statu.patch
  * 0030-pcm-rate-use-pcm_frame_diff-in-snd_pcm_rate_playback.patch
  * 0047-pcm-null-Pass-appl_ptr-and-hw_ptr-in-snd_pcm_status.patch
  * 0043-pcm-dmix-dshare-delay-calculation-fixes-and-cleanups.patch
  * 0042-pcm_plugin-set-the-initial-hw_ptr-appl_ptr-from-the-.patch
  * 0011-pcm-Fix-a-typo-in-SND_PCM_AUDIO_TSTAMP_TYPE_LAST-def.patch
  * 0017-pcm_multi-remove-dead-assignment-from-_snd_pcm_multi.patch
  * 0027-pcm-ioplug-fix-the-delay-calculation-in-the-status-c.patch
  * 0041-conf-USB-add-Xonar-U7-MKII-to-USB-Audio.pcm.iec958_d.patch
  * 0016-pcm-remove-dead-assignments-from-snd_pcm_rate_-commi.patch
  * 0035-topology-tplg_pprint_integer-fix-coverity-uninitaliz.patch
  * 0034-ucm-fix-possible-memory-leak-in-parse_verb_file.patch
  * 0021-conf-fix-return-code-in-_snd_config_load_with_includ.patch
  * 0023-pcm-plugin-status-revert-the-recent-changes.patch
  * 0020-confmisc-fix-memory-leak-in-snd_func_concat.patch
  * 0029-pcm-ioplug-fix-the-delay-calculation-for-old-plugins.patch
  * 0039-ucm-uc_mgr_substitute_tree-fix-use-after-free.patch
  * 0024-pcm-plugin-tidy-snd_pcm_plugin_avail_update.patch
  * 0010-test-audio_time-Make-use-of-SND_PCM_AUDIO_TSTAMP_TYP.patch
  * 0033-pcm-rate-fix-the-capture-delay-values.patch
  * 0015-timer-fix-sizeof-operator-mismatch-in-snd_timer_quer.patch
  * 0036-topology-tplg_add_widget_object-do-not-use-invalid-e.patch
  * 0044-topology-fix-parse_tuple_set-remove-dead-condition-c.patch
  * 0038-topology-parse_tuple_set-remove-dead-condition-code.patch
  * 0018-conf-fix-get_hexachar-return-value.patch
  * 0013-ucm-fix-bad-frees-in-get_list0-and-get_list20.patch
  * 0012-conf-fix-use-after-free-in-_snd_config_load_with_inc.patch
  * 0031-pcm-plugin-fix-status-code-for-capture.patch
  * 0048-pcm-share-Pass-appl_ptr-and-hw_ptr-in-snd_pcm_status.patch
  * 0032-pcm-rate-use-pcm_frame_diff-on-related-places.patch
  * 0022-pcm-plugin-status-fix-the-return-value-regression.patch</changelog>
  <changelog author="tiwai@suse.de" date="1623240000">- Fix regression in config read and UCM handling on pipewire and
  pulseaudio (boo#1187079, boo#1187033):
  0001-conf-fix-load_for_all_cards.patch
  0002-ucm-add-_alibpref-to-get-the-private-device-prefix.patch
  0003-ucm-fix-_alibpref-string-add-.-delimiter-to-the-end.patch</changelog>
  <changelog author="tiwai@suse.de" date="1623672000">- Update to version 1.2.5.1:
  a bug fix release, including previous patches:
  https://www.alsa-project.org/wiki/Changes_v1.2.5_v1.2.5.1
- Drop obsoleted patches:
  0001-conf-fix-load_for_all_cards.patch
  0002-ucm-add-_alibpref-to-get-the-private-device-prefix.patch
  0003-ucm-fix-_alibpref-string-add-.-delimiter-to-the-end.patch</changelog>
  <changelog author="tiwai@suse.de" date="1638792000">- Update to version 1.2.6:
  lots of changes, including UCM and config updates and rawmidi
  framing mode support: for details, see below
  https://www.alsa-project.org/wiki/Changes_v1.2.5.1_v1.2.6#alsa-lib
- Add *.sig file for the source tarball</changelog>
  <changelog author="tiwai@suse.de" date="1639137600">- Update to version 1.2.6.1:
  a minor fix release:
  * conf: fix the device parsing when arguments has no defaults
  * conf: accept '_' character in the variable name</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1654084800">- Update to version 1.2.7:
  more extended UCM API, PCM rate,multi,direct plugin fixes and
  enhancements, compilation fixes, etc.  For details see:
  https://www.alsa-project.org/wiki/Changes_v1.2.6.3_v1.2.7#alsa-lib</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1654516800">- Backport upstream fixes for 32bit inode and ELD parsing:
  0001-conf-Use-ino64_t-to-save-and-compare-inode-numbers.patch
  0002-control-eld-fix-the-decoding-for-older-hw.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1655726400">- Update to version 1.2.7.1: minor bug fixes, including the previous
  patches.  For details, see
    https://www.alsa-project.org/wiki/Changes_v1.2.7_v1.2.7.1#alsa-lib
- Drop obsoleted patches:
  0001-conf-Use-ino64_t-to-save-and-compare-inode-numbers.patch
  0002-control-eld-fix-the-decoding-for-older-hw.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1658145600">- Update to version 1.2.7.2: minor updates, including fixes for PCM
  share plugin, rawmidi and UCM</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1666699200">- Update to version 1.2.8 (jsc#PED-850):
  add FreeBSD/NetBD/OpenBSD build support, fixes in control namehint,
  various PCM plugins and UCM.  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.7.2_v1.2.8
- Add keyring</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1683547200">- Update to version 1.2.9:
  * Versioned symbol updates
  * Various fixes for building on *BSD and Android
  * Fixes and enhancements of auto silencing and playback drain
  * Add SND_CTL_EINTR open mode at PCM
  * Avoid endless loop in snd_pcm_sw_params_default()
  * Fixes in PCM rate, route/softvol plugins
  * Fixes in topology API parser, cleanups
  * Enhancements in latency test program
  * Minor code cleanup and memory leak fixes in UCM API
  * emu10k1 config cleanup
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.8_v1.2.9#alsa-lib</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1693828800">- Update to version 1.2.10 (jsc#PED-6566):
  * MIDI 2.0 feature support
  * build fixes for various platforms
  * various documentation fixes
  * misc topology fixes
  * ucm fixes and cleanups
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.9_v1.2.10#alsa-lib
- Took upstream fix for possible build errors:
  0001-control.h-Fix-ump-header-file-detection.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1694260800">- Upstream fix backport:
  0002-global.h-move-__STRING-macro-outside-PIC-ifdef-block.patch
- Upstream fix for PCM segfault regression (bsc#1215167):
  0003-pcm-Fix-segfault-with-32bit-libs.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1695038400">- More upstream fix for incosistent compile conditions:
  0004-reshuffle-included-files-to-include-config.h-as-firs.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1696939200">- Fix symbol version:
  0005-seq-Fix-typos-in-symbol-version-definitions.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1699358400">- Backport upstream fixes for sequencer and mixer:
  0006-seq-Fix-invalid-sanity-check-in-snd_seq_set_input_bu.patch
  0007-mixer-simple-Support-dB-TLVs-for-CTL_SINGLE-controls.patch
  0008-seq-Clear-UMP-event-flag-for-legacy-apps.patch
  0009-seq-Simplify-snd_seq_extract_output.patch
  0010-seq-Check-protocol-compatibility-with-the-current-ve.patch
- Clean up spec file</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1706875200">- Updated to alsa-lib 1.2.11:
  * auto-tools fixes, versioned symbol fixes
  * support dB TLVs for single controls
  * various PCM updates, including subformat extensions
  * UMP and sequencer API fixes
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.10_v1.2.11#alsa-lib
- Dropped obsoleted patches:
  0001-control.h-Fix-ump-header-file-detection.patch
  0002-global.h-move-__STRING-macro-outside-PIC-ifdef-block.patch
  0003-pcm-Fix-segfault-with-32bit-libs.patch
  0004-reshuffle-included-files-to-include-config.h-as-firs.patch
  0005-seq-Fix-typos-in-symbol-version-definitions.patch
  0006-seq-Fix-invalid-sanity-check-in-snd_seq_set_input_bu.patch
  0007-mixer-simple-Support-dB-TLVs-for-CTL_SINGLE-controls.patch
  0008-seq-Clear-UMP-event-flag-for-legacy-apps.patch
  0009-seq-Simplify-snd_seq_extract_output.patch
  0010-seq-Check-protocol-compatibility-with-the-current-ve.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1718280000">- Update to alsa-lib 1.2.12:
  * pcm: plug support for iec958 subframe samples
  * pcm: ladspa - Skip missing ladspa directories
  * topology: correct version script path
  * ucm: define and describe Syntax 7
  * async handler cleanup fix
  * conf updates
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.11_v1.2.12#alsa-lib</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1731412800">- Update to alsa-lib 1.2.13:
  * static build fixes
  * documentation update for control remap API
  * PCM dmix fixes
  * pcm: implement snd_pcm_hw_params_get_sync() and obsolete snd_pcm_info_get_sync()
  * ump: Add a function to provide the packet word length of a UMP type
  * seq: Add snd_seq_{get|set}_ump_is_midi1() API functions
  * seq: Add API functions to set different tempo base values
  * seq: Add API helper functions for creating UMP Endpoint and Blocks
  * documentation fixes for UMP and sequencer API
  * test: Add an example programs for UMP
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.12_v1.2.13#alsa-lib
- Conditionally take libtool</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1731672000">- Fix incorrect versioned symbol for snd_seq_has_queue_tempo_base:
  0001-src-Versions.in.in-Update-_tempo_base-name.patch</changelog>
</package>
<package pkgid="050ee68c4c43b133b86ed118a8e34d8a534a158594f3c4e42c85425428a8deb1eafd8cfe21d6b66a62c0655e95b5f9cc6a46e2ccbad8950bbdb146d44dd96f2a" name="alsa" arch="x86_64">
  <version epoch="0" ver="1.2.13" rel="2.0.2.1.sr20241103"/>
  <changelog author="Ferdinand Thiessen &lt;rpm@fthiessen.de&gt;" date="1622462400">- Update to version 1.2.5
  * https://www.alsa-project.org/wiki/Changes_v1.2.4_v1.2.5#alsa-lib
- Drop upstream fixed patches
  * 0001-dlmisc-the-snd_plugin_dir_set-snd_plugin_dir-must-be.patch
  * 0002-dlmisc-fix-snd_plugin_dir-locking-for-not-DL_ORIGIN_.patch
  * 0003-pcm-snd_pcm_mmap_readi-fix-typo-in-comment.patch
  * 0004-topology-use-inclusive-language-for-bclk.patch
  * 0005-topology-use-inclusive-language-for-fsync.patch
  * 0006-topology-use-inclusive-language-in-documentation.patch
  * 0007-pcm-set-the-snd_pcm_ioplug_status-tstamp-field.patch
  * 0009-pcm-Add-snd_pcm_audio_tstamp_type_t-constants.patch
  * 0045-pcm-direct-Fix-the-missing-appl_ptr-update.patch
  * 0019-pcm-fix-__snd_pcm_state-return-value.patch
  * 0025-pcm-plugin-optimize-sync-in-snd_pcm_plugin_status.patch
  * 0026-Revert-pcm_plugin-fix-delay.patch
  * 0014-rawmidi-fix-memory-leak-in-snd_rawmidi_virtual_open.patch
  * 0037-topology-tplg_decode_pcm-add-missing-log-argument-co.patch
  * 0040-topology-sort_config-cleanups-use-goto-for-the-error.patch
  * 0028-pcm-rate-tidy-up-snd_pcm_rate_avail_update.patch
  * 0046-pcm-ioplug-Pass-appl_ptr-and-hw_ptr-in-snd_pcm_statu.patch
  * 0030-pcm-rate-use-pcm_frame_diff-in-snd_pcm_rate_playback.patch
  * 0047-pcm-null-Pass-appl_ptr-and-hw_ptr-in-snd_pcm_status.patch
  * 0043-pcm-dmix-dshare-delay-calculation-fixes-and-cleanups.patch
  * 0042-pcm_plugin-set-the-initial-hw_ptr-appl_ptr-from-the-.patch
  * 0011-pcm-Fix-a-typo-in-SND_PCM_AUDIO_TSTAMP_TYPE_LAST-def.patch
  * 0017-pcm_multi-remove-dead-assignment-from-_snd_pcm_multi.patch
  * 0027-pcm-ioplug-fix-the-delay-calculation-in-the-status-c.patch
  * 0041-conf-USB-add-Xonar-U7-MKII-to-USB-Audio.pcm.iec958_d.patch
  * 0016-pcm-remove-dead-assignments-from-snd_pcm_rate_-commi.patch
  * 0035-topology-tplg_pprint_integer-fix-coverity-uninitaliz.patch
  * 0034-ucm-fix-possible-memory-leak-in-parse_verb_file.patch
  * 0021-conf-fix-return-code-in-_snd_config_load_with_includ.patch
  * 0023-pcm-plugin-status-revert-the-recent-changes.patch
  * 0020-confmisc-fix-memory-leak-in-snd_func_concat.patch
  * 0029-pcm-ioplug-fix-the-delay-calculation-for-old-plugins.patch
  * 0039-ucm-uc_mgr_substitute_tree-fix-use-after-free.patch
  * 0024-pcm-plugin-tidy-snd_pcm_plugin_avail_update.patch
  * 0010-test-audio_time-Make-use-of-SND_PCM_AUDIO_TSTAMP_TYP.patch
  * 0033-pcm-rate-fix-the-capture-delay-values.patch
  * 0015-timer-fix-sizeof-operator-mismatch-in-snd_timer_quer.patch
  * 0036-topology-tplg_add_widget_object-do-not-use-invalid-e.patch
  * 0044-topology-fix-parse_tuple_set-remove-dead-condition-c.patch
  * 0038-topology-parse_tuple_set-remove-dead-condition-code.patch
  * 0018-conf-fix-get_hexachar-return-value.patch
  * 0013-ucm-fix-bad-frees-in-get_list0-and-get_list20.patch
  * 0012-conf-fix-use-after-free-in-_snd_config_load_with_inc.patch
  * 0031-pcm-plugin-fix-status-code-for-capture.patch
  * 0048-pcm-share-Pass-appl_ptr-and-hw_ptr-in-snd_pcm_status.patch
  * 0032-pcm-rate-use-pcm_frame_diff-on-related-places.patch
  * 0022-pcm-plugin-status-fix-the-return-value-regression.patch</changelog>
  <changelog author="tiwai@suse.de" date="1623240000">- Fix regression in config read and UCM handling on pipewire and
  pulseaudio (boo#1187079, boo#1187033):
  0001-conf-fix-load_for_all_cards.patch
  0002-ucm-add-_alibpref-to-get-the-private-device-prefix.patch
  0003-ucm-fix-_alibpref-string-add-.-delimiter-to-the-end.patch</changelog>
  <changelog author="tiwai@suse.de" date="1623672000">- Update to version 1.2.5.1:
  a bug fix release, including previous patches:
  https://www.alsa-project.org/wiki/Changes_v1.2.5_v1.2.5.1
- Drop obsoleted patches:
  0001-conf-fix-load_for_all_cards.patch
  0002-ucm-add-_alibpref-to-get-the-private-device-prefix.patch
  0003-ucm-fix-_alibpref-string-add-.-delimiter-to-the-end.patch</changelog>
  <changelog author="tiwai@suse.de" date="1638792000">- Update to version 1.2.6:
  lots of changes, including UCM and config updates and rawmidi
  framing mode support: for details, see below
  https://www.alsa-project.org/wiki/Changes_v1.2.5.1_v1.2.6#alsa-lib
- Add *.sig file for the source tarball</changelog>
  <changelog author="tiwai@suse.de" date="1639137600">- Update to version 1.2.6.1:
  a minor fix release:
  * conf: fix the device parsing when arguments has no defaults
  * conf: accept '_' character in the variable name</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1654084800">- Update to version 1.2.7:
  more extended UCM API, PCM rate,multi,direct plugin fixes and
  enhancements, compilation fixes, etc.  For details see:
  https://www.alsa-project.org/wiki/Changes_v1.2.6.3_v1.2.7#alsa-lib</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1654516800">- Backport upstream fixes for 32bit inode and ELD parsing:
  0001-conf-Use-ino64_t-to-save-and-compare-inode-numbers.patch
  0002-control-eld-fix-the-decoding-for-older-hw.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1655726400">- Update to version 1.2.7.1: minor bug fixes, including the previous
  patches.  For details, see
    https://www.alsa-project.org/wiki/Changes_v1.2.7_v1.2.7.1#alsa-lib
- Drop obsoleted patches:
  0001-conf-Use-ino64_t-to-save-and-compare-inode-numbers.patch
  0002-control-eld-fix-the-decoding-for-older-hw.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1658145600">- Update to version 1.2.7.2: minor updates, including fixes for PCM
  share plugin, rawmidi and UCM</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1666699200">- Update to version 1.2.8 (jsc#PED-850):
  add FreeBSD/NetBD/OpenBSD build support, fixes in control namehint,
  various PCM plugins and UCM.  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.7.2_v1.2.8
- Add keyring</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1683547200">- Update to version 1.2.9:
  * Versioned symbol updates
  * Various fixes for building on *BSD and Android
  * Fixes and enhancements of auto silencing and playback drain
  * Add SND_CTL_EINTR open mode at PCM
  * Avoid endless loop in snd_pcm_sw_params_default()
  * Fixes in PCM rate, route/softvol plugins
  * Fixes in topology API parser, cleanups
  * Enhancements in latency test program
  * Minor code cleanup and memory leak fixes in UCM API
  * emu10k1 config cleanup
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.8_v1.2.9#alsa-lib</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1693828800">- Update to version 1.2.10 (jsc#PED-6566):
  * MIDI 2.0 feature support
  * build fixes for various platforms
  * various documentation fixes
  * misc topology fixes
  * ucm fixes and cleanups
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.9_v1.2.10#alsa-lib
- Took upstream fix for possible build errors:
  0001-control.h-Fix-ump-header-file-detection.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1694260800">- Upstream fix backport:
  0002-global.h-move-__STRING-macro-outside-PIC-ifdef-block.patch
- Upstream fix for PCM segfault regression (bsc#1215167):
  0003-pcm-Fix-segfault-with-32bit-libs.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1695038400">- More upstream fix for incosistent compile conditions:
  0004-reshuffle-included-files-to-include-config.h-as-firs.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1696939200">- Fix symbol version:
  0005-seq-Fix-typos-in-symbol-version-definitions.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1699358400">- Backport upstream fixes for sequencer and mixer:
  0006-seq-Fix-invalid-sanity-check-in-snd_seq_set_input_bu.patch
  0007-mixer-simple-Support-dB-TLVs-for-CTL_SINGLE-controls.patch
  0008-seq-Clear-UMP-event-flag-for-legacy-apps.patch
  0009-seq-Simplify-snd_seq_extract_output.patch
  0010-seq-Check-protocol-compatibility-with-the-current-ve.patch
- Clean up spec file</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1706875200">- Updated to alsa-lib 1.2.11:
  * auto-tools fixes, versioned symbol fixes
  * support dB TLVs for single controls
  * various PCM updates, including subformat extensions
  * UMP and sequencer API fixes
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.10_v1.2.11#alsa-lib
- Dropped obsoleted patches:
  0001-control.h-Fix-ump-header-file-detection.patch
  0002-global.h-move-__STRING-macro-outside-PIC-ifdef-block.patch
  0003-pcm-Fix-segfault-with-32bit-libs.patch
  0004-reshuffle-included-files-to-include-config.h-as-firs.patch
  0005-seq-Fix-typos-in-symbol-version-definitions.patch
  0006-seq-Fix-invalid-sanity-check-in-snd_seq_set_input_bu.patch
  0007-mixer-simple-Support-dB-TLVs-for-CTL_SINGLE-controls.patch
  0008-seq-Clear-UMP-event-flag-for-legacy-apps.patch
  0009-seq-Simplify-snd_seq_extract_output.patch
  0010-seq-Check-protocol-compatibility-with-the-current-ve.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1718280000">- Update to alsa-lib 1.2.12:
  * pcm: plug support for iec958 subframe samples
  * pcm: ladspa - Skip missing ladspa directories
  * topology: correct version script path
  * ucm: define and describe Syntax 7
  * async handler cleanup fix
  * conf updates
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.11_v1.2.12#alsa-lib</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1731412800">- Update to alsa-lib 1.2.13:
  * static build fixes
  * documentation update for control remap API
  * PCM dmix fixes
  * pcm: implement snd_pcm_hw_params_get_sync() and obsolete snd_pcm_info_get_sync()
  * ump: Add a function to provide the packet word length of a UMP type
  * seq: Add snd_seq_{get|set}_ump_is_midi1() API functions
  * seq: Add API functions to set different tempo base values
  * seq: Add API helper functions for creating UMP Endpoint and Blocks
  * documentation fixes for UMP and sequencer API
  * test: Add an example programs for UMP
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.12_v1.2.13#alsa-lib
- Conditionally take libtool</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1731672000">- Fix incorrect versioned symbol for snd_seq_has_queue_tempo_base:
  0001-src-Versions.in.in-Update-_tempo_base-name.patch</changelog>
</package>
<package pkgid="07bd6291cb580da1f54b03560788baaeadeab5dd6980b3b449a54300395c67972fa82346d31e592207e140bfcc58a33d4da3cf05bceab803276319fa5c00dc38" name="alsa" arch="i586">
  <version epoch="0" ver="1.2.13" rel="3.1"/>
  <changelog author="tiwai@suse.de" date="1623240000">- Fix regression in config read and UCM handling on pipewire and
  pulseaudio (boo#1187079, boo#1187033):
  0001-conf-fix-load_for_all_cards.patch
  0002-ucm-add-_alibpref-to-get-the-private-device-prefix.patch
  0003-ucm-fix-_alibpref-string-add-.-delimiter-to-the-end.patch</changelog>
  <changelog author="tiwai@suse.de" date="1623672000">- Update to version 1.2.5.1:
  a bug fix release, including previous patches:
  https://www.alsa-project.org/wiki/Changes_v1.2.5_v1.2.5.1
- Drop obsoleted patches:
  0001-conf-fix-load_for_all_cards.patch
  0002-ucm-add-_alibpref-to-get-the-private-device-prefix.patch
  0003-ucm-fix-_alibpref-string-add-.-delimiter-to-the-end.patch</changelog>
  <changelog author="tiwai@suse.de" date="1638792000">- Update to version 1.2.6:
  lots of changes, including UCM and config updates and rawmidi
  framing mode support: for details, see below
  https://www.alsa-project.org/wiki/Changes_v1.2.5.1_v1.2.6#alsa-lib
- Add *.sig file for the source tarball</changelog>
  <changelog author="tiwai@suse.de" date="1639137600">- Update to version 1.2.6.1:
  a minor fix release:
  * conf: fix the device parsing when arguments has no defaults
  * conf: accept '_' character in the variable name</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1654084800">- Update to version 1.2.7:
  more extended UCM API, PCM rate,multi,direct plugin fixes and
  enhancements, compilation fixes, etc.  For details see:
  https://www.alsa-project.org/wiki/Changes_v1.2.6.3_v1.2.7#alsa-lib</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1654516800">- Backport upstream fixes for 32bit inode and ELD parsing:
  0001-conf-Use-ino64_t-to-save-and-compare-inode-numbers.patch
  0002-control-eld-fix-the-decoding-for-older-hw.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1655726400">- Update to version 1.2.7.1: minor bug fixes, including the previous
  patches.  For details, see
    https://www.alsa-project.org/wiki/Changes_v1.2.7_v1.2.7.1#alsa-lib
- Drop obsoleted patches:
  0001-conf-Use-ino64_t-to-save-and-compare-inode-numbers.patch
  0002-control-eld-fix-the-decoding-for-older-hw.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1658145600">- Update to version 1.2.7.2: minor updates, including fixes for PCM
  share plugin, rawmidi and UCM</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1666699200">- Update to version 1.2.8 (jsc#PED-850):
  add FreeBSD/NetBD/OpenBSD build support, fixes in control namehint,
  various PCM plugins and UCM.  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.7.2_v1.2.8
- Add keyring</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1683547200">- Update to version 1.2.9:
  * Versioned symbol updates
  * Various fixes for building on *BSD and Android
  * Fixes and enhancements of auto silencing and playback drain
  * Add SND_CTL_EINTR open mode at PCM
  * Avoid endless loop in snd_pcm_sw_params_default()
  * Fixes in PCM rate, route/softvol plugins
  * Fixes in topology API parser, cleanups
  * Enhancements in latency test program
  * Minor code cleanup and memory leak fixes in UCM API
  * emu10k1 config cleanup
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.8_v1.2.9#alsa-lib</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1693828800">- Update to version 1.2.10 (jsc#PED-6566):
  * MIDI 2.0 feature support
  * build fixes for various platforms
  * various documentation fixes
  * misc topology fixes
  * ucm fixes and cleanups
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.9_v1.2.10#alsa-lib
- Took upstream fix for possible build errors:
  0001-control.h-Fix-ump-header-file-detection.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1694260800">- Upstream fix backport:
  0002-global.h-move-__STRING-macro-outside-PIC-ifdef-block.patch
- Upstream fix for PCM segfault regression (bsc#1215167):
  0003-pcm-Fix-segfault-with-32bit-libs.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1695038400">- More upstream fix for incosistent compile conditions:
  0004-reshuffle-included-files-to-include-config.h-as-firs.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1696939200">- Fix symbol version:
  0005-seq-Fix-typos-in-symbol-version-definitions.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1699358400">- Backport upstream fixes for sequencer and mixer:
  0006-seq-Fix-invalid-sanity-check-in-snd_seq_set_input_bu.patch
  0007-mixer-simple-Support-dB-TLVs-for-CTL_SINGLE-controls.patch
  0008-seq-Clear-UMP-event-flag-for-legacy-apps.patch
  0009-seq-Simplify-snd_seq_extract_output.patch
  0010-seq-Check-protocol-compatibility-with-the-current-ve.patch
- Clean up spec file</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1706875200">- Updated to alsa-lib 1.2.11:
  * auto-tools fixes, versioned symbol fixes
  * support dB TLVs for single controls
  * various PCM updates, including subformat extensions
  * UMP and sequencer API fixes
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.10_v1.2.11#alsa-lib
- Dropped obsoleted patches:
  0001-control.h-Fix-ump-header-file-detection.patch
  0002-global.h-move-__STRING-macro-outside-PIC-ifdef-block.patch
  0003-pcm-Fix-segfault-with-32bit-libs.patch
  0004-reshuffle-included-files-to-include-config.h-as-firs.patch
  0005-seq-Fix-typos-in-symbol-version-definitions.patch
  0006-seq-Fix-invalid-sanity-check-in-snd_seq_set_input_bu.patch
  0007-mixer-simple-Support-dB-TLVs-for-CTL_SINGLE-controls.patch
  0008-seq-Clear-UMP-event-flag-for-legacy-apps.patch
  0009-seq-Simplify-snd_seq_extract_output.patch
  0010-seq-Check-protocol-compatibility-with-the-current-ve.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1718280000">- Update to alsa-lib 1.2.12:
  * pcm: plug support for iec958 subframe samples
  * pcm: ladspa - Skip missing ladspa directories
  * topology: correct version script path
  * ucm: define and describe Syntax 7
  * async handler cleanup fix
  * conf updates
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.11_v1.2.12#alsa-lib</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1731412800">- Update to alsa-lib 1.2.13:
  * static build fixes
  * documentation update for control remap API
  * PCM dmix fixes
  * pcm: implement snd_pcm_hw_params_get_sync() and obsolete snd_pcm_info_get_sync()
  * ump: Add a function to provide the packet word length of a UMP type
  * seq: Add snd_seq_{get|set}_ump_is_midi1() API functions
  * seq: Add API functions to set different tempo base values
  * seq: Add API helper functions for creating UMP Endpoint and Blocks
  * documentation fixes for UMP and sequencer API
  * test: Add an example programs for UMP
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.12_v1.2.13#alsa-lib
- Conditionally take libtool</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1731672000">- Fix incorrect versioned symbol for snd_seq_has_queue_tempo_base:
  0001-src-Versions.in.in-Update-_tempo_base-name.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1732449600">- Fix header inclusions for implicit dependnecies (bsc#1233682)
  0002-configure-Make-sequencer-dependent-on-rawmidi.patch
  0003-seq-include-UMP-headers.patch</changelog>
</package>
<package pkgid="ce464dda9c71cb975a8f9f1bf87f4c3bc661a0884666422d5d53ddbc00752679ea3c0abcc1d999ac35838e8449da817b7f8d1c60cd0bf6285d576dddea90cc71" name="alsa" arch="src">
  <version epoch="0" ver="1.2.13" rel="3.1"/>
  <changelog author="tiwai@suse.de" date="1623240000">- Fix regression in config read and UCM handling on pipewire and
  pulseaudio (boo#1187079, boo#1187033):
  0001-conf-fix-load_for_all_cards.patch
  0002-ucm-add-_alibpref-to-get-the-private-device-prefix.patch
  0003-ucm-fix-_alibpref-string-add-.-delimiter-to-the-end.patch</changelog>
  <changelog author="tiwai@suse.de" date="1623672000">- Update to version 1.2.5.1:
  a bug fix release, including previous patches:
  https://www.alsa-project.org/wiki/Changes_v1.2.5_v1.2.5.1
- Drop obsoleted patches:
  0001-conf-fix-load_for_all_cards.patch
  0002-ucm-add-_alibpref-to-get-the-private-device-prefix.patch
  0003-ucm-fix-_alibpref-string-add-.-delimiter-to-the-end.patch</changelog>
  <changelog author="tiwai@suse.de" date="1638792000">- Update to version 1.2.6:
  lots of changes, including UCM and config updates and rawmidi
  framing mode support: for details, see below
  https://www.alsa-project.org/wiki/Changes_v1.2.5.1_v1.2.6#alsa-lib
- Add *.sig file for the source tarball</changelog>
  <changelog author="tiwai@suse.de" date="1639137600">- Update to version 1.2.6.1:
  a minor fix release:
  * conf: fix the device parsing when arguments has no defaults
  * conf: accept '_' character in the variable name</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1654084800">- Update to version 1.2.7:
  more extended UCM API, PCM rate,multi,direct plugin fixes and
  enhancements, compilation fixes, etc.  For details see:
  https://www.alsa-project.org/wiki/Changes_v1.2.6.3_v1.2.7#alsa-lib</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1654516800">- Backport upstream fixes for 32bit inode and ELD parsing:
  0001-conf-Use-ino64_t-to-save-and-compare-inode-numbers.patch
  0002-control-eld-fix-the-decoding-for-older-hw.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1655726400">- Update to version 1.2.7.1: minor bug fixes, including the previous
  patches.  For details, see
    https://www.alsa-project.org/wiki/Changes_v1.2.7_v1.2.7.1#alsa-lib
- Drop obsoleted patches:
  0001-conf-Use-ino64_t-to-save-and-compare-inode-numbers.patch
  0002-control-eld-fix-the-decoding-for-older-hw.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1658145600">- Update to version 1.2.7.2: minor updates, including fixes for PCM
  share plugin, rawmidi and UCM</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1666699200">- Update to version 1.2.8 (jsc#PED-850):
  add FreeBSD/NetBD/OpenBSD build support, fixes in control namehint,
  various PCM plugins and UCM.  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.7.2_v1.2.8
- Add keyring</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1683547200">- Update to version 1.2.9:
  * Versioned symbol updates
  * Various fixes for building on *BSD and Android
  * Fixes and enhancements of auto silencing and playback drain
  * Add SND_CTL_EINTR open mode at PCM
  * Avoid endless loop in snd_pcm_sw_params_default()
  * Fixes in PCM rate, route/softvol plugins
  * Fixes in topology API parser, cleanups
  * Enhancements in latency test program
  * Minor code cleanup and memory leak fixes in UCM API
  * emu10k1 config cleanup
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.8_v1.2.9#alsa-lib</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1693828800">- Update to version 1.2.10 (jsc#PED-6566):
  * MIDI 2.0 feature support
  * build fixes for various platforms
  * various documentation fixes
  * misc topology fixes
  * ucm fixes and cleanups
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.9_v1.2.10#alsa-lib
- Took upstream fix for possible build errors:
  0001-control.h-Fix-ump-header-file-detection.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1694260800">- Upstream fix backport:
  0002-global.h-move-__STRING-macro-outside-PIC-ifdef-block.patch
- Upstream fix for PCM segfault regression (bsc#1215167):
  0003-pcm-Fix-segfault-with-32bit-libs.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1695038400">- More upstream fix for incosistent compile conditions:
  0004-reshuffle-included-files-to-include-config.h-as-firs.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1696939200">- Fix symbol version:
  0005-seq-Fix-typos-in-symbol-version-definitions.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1699358400">- Backport upstream fixes for sequencer and mixer:
  0006-seq-Fix-invalid-sanity-check-in-snd_seq_set_input_bu.patch
  0007-mixer-simple-Support-dB-TLVs-for-CTL_SINGLE-controls.patch
  0008-seq-Clear-UMP-event-flag-for-legacy-apps.patch
  0009-seq-Simplify-snd_seq_extract_output.patch
  0010-seq-Check-protocol-compatibility-with-the-current-ve.patch
- Clean up spec file</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1706875200">- Updated to alsa-lib 1.2.11:
  * auto-tools fixes, versioned symbol fixes
  * support dB TLVs for single controls
  * various PCM updates, including subformat extensions
  * UMP and sequencer API fixes
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.10_v1.2.11#alsa-lib
- Dropped obsoleted patches:
  0001-control.h-Fix-ump-header-file-detection.patch
  0002-global.h-move-__STRING-macro-outside-PIC-ifdef-block.patch
  0003-pcm-Fix-segfault-with-32bit-libs.patch
  0004-reshuffle-included-files-to-include-config.h-as-firs.patch
  0005-seq-Fix-typos-in-symbol-version-definitions.patch
  0006-seq-Fix-invalid-sanity-check-in-snd_seq_set_input_bu.patch
  0007-mixer-simple-Support-dB-TLVs-for-CTL_SINGLE-controls.patch
  0008-seq-Clear-UMP-event-flag-for-legacy-apps.patch
  0009-seq-Simplify-snd_seq_extract_output.patch
  0010-seq-Check-protocol-compatibility-with-the-current-ve.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1718280000">- Update to alsa-lib 1.2.12:
  * pcm: plug support for iec958 subframe samples
  * pcm: ladspa - Skip missing ladspa directories
  * topology: correct version script path
  * ucm: define and describe Syntax 7
  * async handler cleanup fix
  * conf updates
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.11_v1.2.12#alsa-lib</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1731412800">- Update to alsa-lib 1.2.13:
  * static build fixes
  * documentation update for control remap API
  * PCM dmix fixes
  * pcm: implement snd_pcm_hw_params_get_sync() and obsolete snd_pcm_info_get_sync()
  * ump: Add a function to provide the packet word length of a UMP type
  * seq: Add snd_seq_{get|set}_ump_is_midi1() API functions
  * seq: Add API functions to set different tempo base values
  * seq: Add API helper functions for creating UMP Endpoint and Blocks
  * documentation fixes for UMP and sequencer API
  * test: Add an example programs for UMP
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.12_v1.2.13#alsa-lib
- Conditionally take libtool</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1731672000">- Fix incorrect versioned symbol for snd_seq_has_queue_tempo_base:
  0001-src-Versions.in.in-Update-_tempo_base-name.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1732449600">- Fix header inclusions for implicit dependnecies (bsc#1233682)
  0002-configure-Make-sequencer-dependent-on-rawmidi.patch
  0003-seq-include-UMP-headers.patch</changelog>
</package>
<package pkgid="2e9e961b8a283824a1c05ec402b8f6ed00218e144229b6d81b496203e89c99fcbb34a367b40dca35a804f0dd13d90dbb6c8e23ece0d28983758535ec100c0600" name="alsa" arch="x86_64">
  <version epoch="0" ver="1.2.13" rel="3.1"/>
  <changelog author="tiwai@suse.de" date="1623240000">- Fix regression in config read and UCM handling on pipewire and
  pulseaudio (boo#1187079, boo#1187033):
  0001-conf-fix-load_for_all_cards.patch
  0002-ucm-add-_alibpref-to-get-the-private-device-prefix.patch
  0003-ucm-fix-_alibpref-string-add-.-delimiter-to-the-end.patch</changelog>
  <changelog author="tiwai@suse.de" date="1623672000">- Update to version 1.2.5.1:
  a bug fix release, including previous patches:
  https://www.alsa-project.org/wiki/Changes_v1.2.5_v1.2.5.1
- Drop obsoleted patches:
  0001-conf-fix-load_for_all_cards.patch
  0002-ucm-add-_alibpref-to-get-the-private-device-prefix.patch
  0003-ucm-fix-_alibpref-string-add-.-delimiter-to-the-end.patch</changelog>
  <changelog author="tiwai@suse.de" date="1638792000">- Update to version 1.2.6:
  lots of changes, including UCM and config updates and rawmidi
  framing mode support: for details, see below
  https://www.alsa-project.org/wiki/Changes_v1.2.5.1_v1.2.6#alsa-lib
- Add *.sig file for the source tarball</changelog>
  <changelog author="tiwai@suse.de" date="1639137600">- Update to version 1.2.6.1:
  a minor fix release:
  * conf: fix the device parsing when arguments has no defaults
  * conf: accept '_' character in the variable name</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1654084800">- Update to version 1.2.7:
  more extended UCM API, PCM rate,multi,direct plugin fixes and
  enhancements, compilation fixes, etc.  For details see:
  https://www.alsa-project.org/wiki/Changes_v1.2.6.3_v1.2.7#alsa-lib</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1654516800">- Backport upstream fixes for 32bit inode and ELD parsing:
  0001-conf-Use-ino64_t-to-save-and-compare-inode-numbers.patch
  0002-control-eld-fix-the-decoding-for-older-hw.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1655726400">- Update to version 1.2.7.1: minor bug fixes, including the previous
  patches.  For details, see
    https://www.alsa-project.org/wiki/Changes_v1.2.7_v1.2.7.1#alsa-lib
- Drop obsoleted patches:
  0001-conf-Use-ino64_t-to-save-and-compare-inode-numbers.patch
  0002-control-eld-fix-the-decoding-for-older-hw.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1658145600">- Update to version 1.2.7.2: minor updates, including fixes for PCM
  share plugin, rawmidi and UCM</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1666699200">- Update to version 1.2.8 (jsc#PED-850):
  add FreeBSD/NetBD/OpenBSD build support, fixes in control namehint,
  various PCM plugins and UCM.  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.7.2_v1.2.8
- Add keyring</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1683547200">- Update to version 1.2.9:
  * Versioned symbol updates
  * Various fixes for building on *BSD and Android
  * Fixes and enhancements of auto silencing and playback drain
  * Add SND_CTL_EINTR open mode at PCM
  * Avoid endless loop in snd_pcm_sw_params_default()
  * Fixes in PCM rate, route/softvol plugins
  * Fixes in topology API parser, cleanups
  * Enhancements in latency test program
  * Minor code cleanup and memory leak fixes in UCM API
  * emu10k1 config cleanup
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.8_v1.2.9#alsa-lib</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1693828800">- Update to version 1.2.10 (jsc#PED-6566):
  * MIDI 2.0 feature support
  * build fixes for various platforms
  * various documentation fixes
  * misc topology fixes
  * ucm fixes and cleanups
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.9_v1.2.10#alsa-lib
- Took upstream fix for possible build errors:
  0001-control.h-Fix-ump-header-file-detection.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1694260800">- Upstream fix backport:
  0002-global.h-move-__STRING-macro-outside-PIC-ifdef-block.patch
- Upstream fix for PCM segfault regression (bsc#1215167):
  0003-pcm-Fix-segfault-with-32bit-libs.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1695038400">- More upstream fix for incosistent compile conditions:
  0004-reshuffle-included-files-to-include-config.h-as-firs.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1696939200">- Fix symbol version:
  0005-seq-Fix-typos-in-symbol-version-definitions.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1699358400">- Backport upstream fixes for sequencer and mixer:
  0006-seq-Fix-invalid-sanity-check-in-snd_seq_set_input_bu.patch
  0007-mixer-simple-Support-dB-TLVs-for-CTL_SINGLE-controls.patch
  0008-seq-Clear-UMP-event-flag-for-legacy-apps.patch
  0009-seq-Simplify-snd_seq_extract_output.patch
  0010-seq-Check-protocol-compatibility-with-the-current-ve.patch
- Clean up spec file</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1706875200">- Updated to alsa-lib 1.2.11:
  * auto-tools fixes, versioned symbol fixes
  * support dB TLVs for single controls
  * various PCM updates, including subformat extensions
  * UMP and sequencer API fixes
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.10_v1.2.11#alsa-lib
- Dropped obsoleted patches:
  0001-control.h-Fix-ump-header-file-detection.patch
  0002-global.h-move-__STRING-macro-outside-PIC-ifdef-block.patch
  0003-pcm-Fix-segfault-with-32bit-libs.patch
  0004-reshuffle-included-files-to-include-config.h-as-firs.patch
  0005-seq-Fix-typos-in-symbol-version-definitions.patch
  0006-seq-Fix-invalid-sanity-check-in-snd_seq_set_input_bu.patch
  0007-mixer-simple-Support-dB-TLVs-for-CTL_SINGLE-controls.patch
  0008-seq-Clear-UMP-event-flag-for-legacy-apps.patch
  0009-seq-Simplify-snd_seq_extract_output.patch
  0010-seq-Check-protocol-compatibility-with-the-current-ve.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1718280000">- Update to alsa-lib 1.2.12:
  * pcm: plug support for iec958 subframe samples
  * pcm: ladspa - Skip missing ladspa directories
  * topology: correct version script path
  * ucm: define and describe Syntax 7
  * async handler cleanup fix
  * conf updates
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.11_v1.2.12#alsa-lib</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1731412800">- Update to alsa-lib 1.2.13:
  * static build fixes
  * documentation update for control remap API
  * PCM dmix fixes
  * pcm: implement snd_pcm_hw_params_get_sync() and obsolete snd_pcm_info_get_sync()
  * ump: Add a function to provide the packet word length of a UMP type
  * seq: Add snd_seq_{get|set}_ump_is_midi1() API functions
  * seq: Add API functions to set different tempo base values
  * seq: Add API helper functions for creating UMP Endpoint and Blocks
  * documentation fixes for UMP and sequencer API
  * test: Add an example programs for UMP
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.12_v1.2.13#alsa-lib
- Conditionally take libtool</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1731672000">- Fix incorrect versioned symbol for snd_seq_has_queue_tempo_base:
  0001-src-Versions.in.in-Update-_tempo_base-name.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1732449600">- Fix header inclusions for implicit dependnecies (bsc#1233682)
  0002-configure-Make-sequencer-dependent-on-rawmidi.patch
  0003-seq-include-UMP-headers.patch</changelog>
</package>
<package pkgid="efe8d057164a2c8190a8ae4e25fd67c0e50effa95c153f617d315443d344c25859e379bade0ba92892b7ffea0ff760e25ea478c892c3e7b335ece72cf69e1f0c" name="alsa-debugsource" arch="i586">
  <version epoch="0" ver="1.2.13" rel="2.0.2.1.sr20241103"/>
  <changelog author="Ferdinand Thiessen &lt;rpm@fthiessen.de&gt;" date="1622462400">- Update to version 1.2.5
  * https://www.alsa-project.org/wiki/Changes_v1.2.4_v1.2.5#alsa-lib
- Drop upstream fixed patches
  * 0001-dlmisc-the-snd_plugin_dir_set-snd_plugin_dir-must-be.patch
  * 0002-dlmisc-fix-snd_plugin_dir-locking-for-not-DL_ORIGIN_.patch
  * 0003-pcm-snd_pcm_mmap_readi-fix-typo-in-comment.patch
  * 0004-topology-use-inclusive-language-for-bclk.patch
  * 0005-topology-use-inclusive-language-for-fsync.patch
  * 0006-topology-use-inclusive-language-in-documentation.patch
  * 0007-pcm-set-the-snd_pcm_ioplug_status-tstamp-field.patch
  * 0009-pcm-Add-snd_pcm_audio_tstamp_type_t-constants.patch
  * 0045-pcm-direct-Fix-the-missing-appl_ptr-update.patch
  * 0019-pcm-fix-__snd_pcm_state-return-value.patch
  * 0025-pcm-plugin-optimize-sync-in-snd_pcm_plugin_status.patch
  * 0026-Revert-pcm_plugin-fix-delay.patch
  * 0014-rawmidi-fix-memory-leak-in-snd_rawmidi_virtual_open.patch
  * 0037-topology-tplg_decode_pcm-add-missing-log-argument-co.patch
  * 0040-topology-sort_config-cleanups-use-goto-for-the-error.patch
  * 0028-pcm-rate-tidy-up-snd_pcm_rate_avail_update.patch
  * 0046-pcm-ioplug-Pass-appl_ptr-and-hw_ptr-in-snd_pcm_statu.patch
  * 0030-pcm-rate-use-pcm_frame_diff-in-snd_pcm_rate_playback.patch
  * 0047-pcm-null-Pass-appl_ptr-and-hw_ptr-in-snd_pcm_status.patch
  * 0043-pcm-dmix-dshare-delay-calculation-fixes-and-cleanups.patch
  * 0042-pcm_plugin-set-the-initial-hw_ptr-appl_ptr-from-the-.patch
  * 0011-pcm-Fix-a-typo-in-SND_PCM_AUDIO_TSTAMP_TYPE_LAST-def.patch
  * 0017-pcm_multi-remove-dead-assignment-from-_snd_pcm_multi.patch
  * 0027-pcm-ioplug-fix-the-delay-calculation-in-the-status-c.patch
  * 0041-conf-USB-add-Xonar-U7-MKII-to-USB-Audio.pcm.iec958_d.patch
  * 0016-pcm-remove-dead-assignments-from-snd_pcm_rate_-commi.patch
  * 0035-topology-tplg_pprint_integer-fix-coverity-uninitaliz.patch
  * 0034-ucm-fix-possible-memory-leak-in-parse_verb_file.patch
  * 0021-conf-fix-return-code-in-_snd_config_load_with_includ.patch
  * 0023-pcm-plugin-status-revert-the-recent-changes.patch
  * 0020-confmisc-fix-memory-leak-in-snd_func_concat.patch
  * 0029-pcm-ioplug-fix-the-delay-calculation-for-old-plugins.patch
  * 0039-ucm-uc_mgr_substitute_tree-fix-use-after-free.patch
  * 0024-pcm-plugin-tidy-snd_pcm_plugin_avail_update.patch
  * 0010-test-audio_time-Make-use-of-SND_PCM_AUDIO_TSTAMP_TYP.patch
  * 0033-pcm-rate-fix-the-capture-delay-values.patch
  * 0015-timer-fix-sizeof-operator-mismatch-in-snd_timer_quer.patch
  * 0036-topology-tplg_add_widget_object-do-not-use-invalid-e.patch
  * 0044-topology-fix-parse_tuple_set-remove-dead-condition-c.patch
  * 0038-topology-parse_tuple_set-remove-dead-condition-code.patch
  * 0018-conf-fix-get_hexachar-return-value.patch
  * 0013-ucm-fix-bad-frees-in-get_list0-and-get_list20.patch
  * 0012-conf-fix-use-after-free-in-_snd_config_load_with_inc.patch
  * 0031-pcm-plugin-fix-status-code-for-capture.patch
  * 0048-pcm-share-Pass-appl_ptr-and-hw_ptr-in-snd_pcm_status.patch
  * 0032-pcm-rate-use-pcm_frame_diff-on-related-places.patch
  * 0022-pcm-plugin-status-fix-the-return-value-regression.patch</changelog>
  <changelog author="tiwai@suse.de" date="1623240000">- Fix regression in config read and UCM handling on pipewire and
  pulseaudio (boo#1187079, boo#1187033):
  0001-conf-fix-load_for_all_cards.patch
  0002-ucm-add-_alibpref-to-get-the-private-device-prefix.patch
  0003-ucm-fix-_alibpref-string-add-.-delimiter-to-the-end.patch</changelog>
  <changelog author="tiwai@suse.de" date="1623672000">- Update to version 1.2.5.1:
  a bug fix release, including previous patches:
  https://www.alsa-project.org/wiki/Changes_v1.2.5_v1.2.5.1
- Drop obsoleted patches:
  0001-conf-fix-load_for_all_cards.patch
  0002-ucm-add-_alibpref-to-get-the-private-device-prefix.patch
  0003-ucm-fix-_alibpref-string-add-.-delimiter-to-the-end.patch</changelog>
  <changelog author="tiwai@suse.de" date="1638792000">- Update to version 1.2.6:
  lots of changes, including UCM and config updates and rawmidi
  framing mode support: for details, see below
  https://www.alsa-project.org/wiki/Changes_v1.2.5.1_v1.2.6#alsa-lib
- Add *.sig file for the source tarball</changelog>
  <changelog author="tiwai@suse.de" date="1639137600">- Update to version 1.2.6.1:
  a minor fix release:
  * conf: fix the device parsing when arguments has no defaults
  * conf: accept '_' character in the variable name</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1654084800">- Update to version 1.2.7:
  more extended UCM API, PCM rate,multi,direct plugin fixes and
  enhancements, compilation fixes, etc.  For details see:
  https://www.alsa-project.org/wiki/Changes_v1.2.6.3_v1.2.7#alsa-lib</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1654516800">- Backport upstream fixes for 32bit inode and ELD parsing:
  0001-conf-Use-ino64_t-to-save-and-compare-inode-numbers.patch
  0002-control-eld-fix-the-decoding-for-older-hw.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1655726400">- Update to version 1.2.7.1: minor bug fixes, including the previous
  patches.  For details, see
    https://www.alsa-project.org/wiki/Changes_v1.2.7_v1.2.7.1#alsa-lib
- Drop obsoleted patches:
  0001-conf-Use-ino64_t-to-save-and-compare-inode-numbers.patch
  0002-control-eld-fix-the-decoding-for-older-hw.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1658145600">- Update to version 1.2.7.2: minor updates, including fixes for PCM
  share plugin, rawmidi and UCM</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1666699200">- Update to version 1.2.8 (jsc#PED-850):
  add FreeBSD/NetBD/OpenBSD build support, fixes in control namehint,
  various PCM plugins and UCM.  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.7.2_v1.2.8
- Add keyring</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1683547200">- Update to version 1.2.9:
  * Versioned symbol updates
  * Various fixes for building on *BSD and Android
  * Fixes and enhancements of auto silencing and playback drain
  * Add SND_CTL_EINTR open mode at PCM
  * Avoid endless loop in snd_pcm_sw_params_default()
  * Fixes in PCM rate, route/softvol plugins
  * Fixes in topology API parser, cleanups
  * Enhancements in latency test program
  * Minor code cleanup and memory leak fixes in UCM API
  * emu10k1 config cleanup
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.8_v1.2.9#alsa-lib</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1693828800">- Update to version 1.2.10 (jsc#PED-6566):
  * MIDI 2.0 feature support
  * build fixes for various platforms
  * various documentation fixes
  * misc topology fixes
  * ucm fixes and cleanups
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.9_v1.2.10#alsa-lib
- Took upstream fix for possible build errors:
  0001-control.h-Fix-ump-header-file-detection.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1694260800">- Upstream fix backport:
  0002-global.h-move-__STRING-macro-outside-PIC-ifdef-block.patch
- Upstream fix for PCM segfault regression (bsc#1215167):
  0003-pcm-Fix-segfault-with-32bit-libs.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1695038400">- More upstream fix for incosistent compile conditions:
  0004-reshuffle-included-files-to-include-config.h-as-firs.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1696939200">- Fix symbol version:
  0005-seq-Fix-typos-in-symbol-version-definitions.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1699358400">- Backport upstream fixes for sequencer and mixer:
  0006-seq-Fix-invalid-sanity-check-in-snd_seq_set_input_bu.patch
  0007-mixer-simple-Support-dB-TLVs-for-CTL_SINGLE-controls.patch
  0008-seq-Clear-UMP-event-flag-for-legacy-apps.patch
  0009-seq-Simplify-snd_seq_extract_output.patch
  0010-seq-Check-protocol-compatibility-with-the-current-ve.patch
- Clean up spec file</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1706875200">- Updated to alsa-lib 1.2.11:
  * auto-tools fixes, versioned symbol fixes
  * support dB TLVs for single controls
  * various PCM updates, including subformat extensions
  * UMP and sequencer API fixes
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.10_v1.2.11#alsa-lib
- Dropped obsoleted patches:
  0001-control.h-Fix-ump-header-file-detection.patch
  0002-global.h-move-__STRING-macro-outside-PIC-ifdef-block.patch
  0003-pcm-Fix-segfault-with-32bit-libs.patch
  0004-reshuffle-included-files-to-include-config.h-as-firs.patch
  0005-seq-Fix-typos-in-symbol-version-definitions.patch
  0006-seq-Fix-invalid-sanity-check-in-snd_seq_set_input_bu.patch
  0007-mixer-simple-Support-dB-TLVs-for-CTL_SINGLE-controls.patch
  0008-seq-Clear-UMP-event-flag-for-legacy-apps.patch
  0009-seq-Simplify-snd_seq_extract_output.patch
  0010-seq-Check-protocol-compatibility-with-the-current-ve.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1718280000">- Update to alsa-lib 1.2.12:
  * pcm: plug support for iec958 subframe samples
  * pcm: ladspa - Skip missing ladspa directories
  * topology: correct version script path
  * ucm: define and describe Syntax 7
  * async handler cleanup fix
  * conf updates
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.11_v1.2.12#alsa-lib</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1731412800">- Update to alsa-lib 1.2.13:
  * static build fixes
  * documentation update for control remap API
  * PCM dmix fixes
  * pcm: implement snd_pcm_hw_params_get_sync() and obsolete snd_pcm_info_get_sync()
  * ump: Add a function to provide the packet word length of a UMP type
  * seq: Add snd_seq_{get|set}_ump_is_midi1() API functions
  * seq: Add API functions to set different tempo base values
  * seq: Add API helper functions for creating UMP Endpoint and Blocks
  * documentation fixes for UMP and sequencer API
  * test: Add an example programs for UMP
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.12_v1.2.13#alsa-lib
- Conditionally take libtool</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1731672000">- Fix incorrect versioned symbol for snd_seq_has_queue_tempo_base:
  0001-src-Versions.in.in-Update-_tempo_base-name.patch</changelog>
</package>
<package pkgid="db7351a140eb9d18b848ac605e60cb01440bccadce4fcf90bae2cd01599ff466ec85ff49d74fc48ab523b16d96a06a2396e2fe351c3715047041e3d140da9cc1" name="alsa-debugsource" arch="x86_64">
  <version epoch="0" ver="1.2.13" rel="2.0.2.1.sr20241103"/>
  <changelog author="Ferdinand Thiessen &lt;rpm@fthiessen.de&gt;" date="1622462400">- Update to version 1.2.5
  * https://www.alsa-project.org/wiki/Changes_v1.2.4_v1.2.5#alsa-lib
- Drop upstream fixed patches
  * 0001-dlmisc-the-snd_plugin_dir_set-snd_plugin_dir-must-be.patch
  * 0002-dlmisc-fix-snd_plugin_dir-locking-for-not-DL_ORIGIN_.patch
  * 0003-pcm-snd_pcm_mmap_readi-fix-typo-in-comment.patch
  * 0004-topology-use-inclusive-language-for-bclk.patch
  * 0005-topology-use-inclusive-language-for-fsync.patch
  * 0006-topology-use-inclusive-language-in-documentation.patch
  * 0007-pcm-set-the-snd_pcm_ioplug_status-tstamp-field.patch
  * 0009-pcm-Add-snd_pcm_audio_tstamp_type_t-constants.patch
  * 0045-pcm-direct-Fix-the-missing-appl_ptr-update.patch
  * 0019-pcm-fix-__snd_pcm_state-return-value.patch
  * 0025-pcm-plugin-optimize-sync-in-snd_pcm_plugin_status.patch
  * 0026-Revert-pcm_plugin-fix-delay.patch
  * 0014-rawmidi-fix-memory-leak-in-snd_rawmidi_virtual_open.patch
  * 0037-topology-tplg_decode_pcm-add-missing-log-argument-co.patch
  * 0040-topology-sort_config-cleanups-use-goto-for-the-error.patch
  * 0028-pcm-rate-tidy-up-snd_pcm_rate_avail_update.patch
  * 0046-pcm-ioplug-Pass-appl_ptr-and-hw_ptr-in-snd_pcm_statu.patch
  * 0030-pcm-rate-use-pcm_frame_diff-in-snd_pcm_rate_playback.patch
  * 0047-pcm-null-Pass-appl_ptr-and-hw_ptr-in-snd_pcm_status.patch
  * 0043-pcm-dmix-dshare-delay-calculation-fixes-and-cleanups.patch
  * 0042-pcm_plugin-set-the-initial-hw_ptr-appl_ptr-from-the-.patch
  * 0011-pcm-Fix-a-typo-in-SND_PCM_AUDIO_TSTAMP_TYPE_LAST-def.patch
  * 0017-pcm_multi-remove-dead-assignment-from-_snd_pcm_multi.patch
  * 0027-pcm-ioplug-fix-the-delay-calculation-in-the-status-c.patch
  * 0041-conf-USB-add-Xonar-U7-MKII-to-USB-Audio.pcm.iec958_d.patch
  * 0016-pcm-remove-dead-assignments-from-snd_pcm_rate_-commi.patch
  * 0035-topology-tplg_pprint_integer-fix-coverity-uninitaliz.patch
  * 0034-ucm-fix-possible-memory-leak-in-parse_verb_file.patch
  * 0021-conf-fix-return-code-in-_snd_config_load_with_includ.patch
  * 0023-pcm-plugin-status-revert-the-recent-changes.patch
  * 0020-confmisc-fix-memory-leak-in-snd_func_concat.patch
  * 0029-pcm-ioplug-fix-the-delay-calculation-for-old-plugins.patch
  * 0039-ucm-uc_mgr_substitute_tree-fix-use-after-free.patch
  * 0024-pcm-plugin-tidy-snd_pcm_plugin_avail_update.patch
  * 0010-test-audio_time-Make-use-of-SND_PCM_AUDIO_TSTAMP_TYP.patch
  * 0033-pcm-rate-fix-the-capture-delay-values.patch
  * 0015-timer-fix-sizeof-operator-mismatch-in-snd_timer_quer.patch
  * 0036-topology-tplg_add_widget_object-do-not-use-invalid-e.patch
  * 0044-topology-fix-parse_tuple_set-remove-dead-condition-c.patch
  * 0038-topology-parse_tuple_set-remove-dead-condition-code.patch
  * 0018-conf-fix-get_hexachar-return-value.patch
  * 0013-ucm-fix-bad-frees-in-get_list0-and-get_list20.patch
  * 0012-conf-fix-use-after-free-in-_snd_config_load_with_inc.patch
  * 0031-pcm-plugin-fix-status-code-for-capture.patch
  * 0048-pcm-share-Pass-appl_ptr-and-hw_ptr-in-snd_pcm_status.patch
  * 0032-pcm-rate-use-pcm_frame_diff-on-related-places.patch
  * 0022-pcm-plugin-status-fix-the-return-value-regression.patch</changelog>
  <changelog author="tiwai@suse.de" date="1623240000">- Fix regression in config read and UCM handling on pipewire and
  pulseaudio (boo#1187079, boo#1187033):
  0001-conf-fix-load_for_all_cards.patch
  0002-ucm-add-_alibpref-to-get-the-private-device-prefix.patch
  0003-ucm-fix-_alibpref-string-add-.-delimiter-to-the-end.patch</changelog>
  <changelog author="tiwai@suse.de" date="1623672000">- Update to version 1.2.5.1:
  a bug fix release, including previous patches:
  https://www.alsa-project.org/wiki/Changes_v1.2.5_v1.2.5.1
- Drop obsoleted patches:
  0001-conf-fix-load_for_all_cards.patch
  0002-ucm-add-_alibpref-to-get-the-private-device-prefix.patch
  0003-ucm-fix-_alibpref-string-add-.-delimiter-to-the-end.patch</changelog>
  <changelog author="tiwai@suse.de" date="1638792000">- Update to version 1.2.6:
  lots of changes, including UCM and config updates and rawmidi
  framing mode support: for details, see below
  https://www.alsa-project.org/wiki/Changes_v1.2.5.1_v1.2.6#alsa-lib
- Add *.sig file for the source tarball</changelog>
  <changelog author="tiwai@suse.de" date="1639137600">- Update to version 1.2.6.1:
  a minor fix release:
  * conf: fix the device parsing when arguments has no defaults
  * conf: accept '_' character in the variable name</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1654084800">- Update to version 1.2.7:
  more extended UCM API, PCM rate,multi,direct plugin fixes and
  enhancements, compilation fixes, etc.  For details see:
  https://www.alsa-project.org/wiki/Changes_v1.2.6.3_v1.2.7#alsa-lib</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1654516800">- Backport upstream fixes for 32bit inode and ELD parsing:
  0001-conf-Use-ino64_t-to-save-and-compare-inode-numbers.patch
  0002-control-eld-fix-the-decoding-for-older-hw.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1655726400">- Update to version 1.2.7.1: minor bug fixes, including the previous
  patches.  For details, see
    https://www.alsa-project.org/wiki/Changes_v1.2.7_v1.2.7.1#alsa-lib
- Drop obsoleted patches:
  0001-conf-Use-ino64_t-to-save-and-compare-inode-numbers.patch
  0002-control-eld-fix-the-decoding-for-older-hw.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1658145600">- Update to version 1.2.7.2: minor updates, including fixes for PCM
  share plugin, rawmidi and UCM</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1666699200">- Update to version 1.2.8 (jsc#PED-850):
  add FreeBSD/NetBD/OpenBSD build support, fixes in control namehint,
  various PCM plugins and UCM.  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.7.2_v1.2.8
- Add keyring</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1683547200">- Update to version 1.2.9:
  * Versioned symbol updates
  * Various fixes for building on *BSD and Android
  * Fixes and enhancements of auto silencing and playback drain
  * Add SND_CTL_EINTR open mode at PCM
  * Avoid endless loop in snd_pcm_sw_params_default()
  * Fixes in PCM rate, route/softvol plugins
  * Fixes in topology API parser, cleanups
  * Enhancements in latency test program
  * Minor code cleanup and memory leak fixes in UCM API
  * emu10k1 config cleanup
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.8_v1.2.9#alsa-lib</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1693828800">- Update to version 1.2.10 (jsc#PED-6566):
  * MIDI 2.0 feature support
  * build fixes for various platforms
  * various documentation fixes
  * misc topology fixes
  * ucm fixes and cleanups
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.9_v1.2.10#alsa-lib
- Took upstream fix for possible build errors:
  0001-control.h-Fix-ump-header-file-detection.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1694260800">- Upstream fix backport:
  0002-global.h-move-__STRING-macro-outside-PIC-ifdef-block.patch
- Upstream fix for PCM segfault regression (bsc#1215167):
  0003-pcm-Fix-segfault-with-32bit-libs.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1695038400">- More upstream fix for incosistent compile conditions:
  0004-reshuffle-included-files-to-include-config.h-as-firs.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1696939200">- Fix symbol version:
  0005-seq-Fix-typos-in-symbol-version-definitions.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1699358400">- Backport upstream fixes for sequencer and mixer:
  0006-seq-Fix-invalid-sanity-check-in-snd_seq_set_input_bu.patch
  0007-mixer-simple-Support-dB-TLVs-for-CTL_SINGLE-controls.patch
  0008-seq-Clear-UMP-event-flag-for-legacy-apps.patch
  0009-seq-Simplify-snd_seq_extract_output.patch
  0010-seq-Check-protocol-compatibility-with-the-current-ve.patch
- Clean up spec file</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1706875200">- Updated to alsa-lib 1.2.11:
  * auto-tools fixes, versioned symbol fixes
  * support dB TLVs for single controls
  * various PCM updates, including subformat extensions
  * UMP and sequencer API fixes
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.10_v1.2.11#alsa-lib
- Dropped obsoleted patches:
  0001-control.h-Fix-ump-header-file-detection.patch
  0002-global.h-move-__STRING-macro-outside-PIC-ifdef-block.patch
  0003-pcm-Fix-segfault-with-32bit-libs.patch
  0004-reshuffle-included-files-to-include-config.h-as-firs.patch
  0005-seq-Fix-typos-in-symbol-version-definitions.patch
  0006-seq-Fix-invalid-sanity-check-in-snd_seq_set_input_bu.patch
  0007-mixer-simple-Support-dB-TLVs-for-CTL_SINGLE-controls.patch
  0008-seq-Clear-UMP-event-flag-for-legacy-apps.patch
  0009-seq-Simplify-snd_seq_extract_output.patch
  0010-seq-Check-protocol-compatibility-with-the-current-ve.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1718280000">- Update to alsa-lib 1.2.12:
  * pcm: plug support for iec958 subframe samples
  * pcm: ladspa - Skip missing ladspa directories
  * topology: correct version script path
  * ucm: define and describe Syntax 7
  * async handler cleanup fix
  * conf updates
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.11_v1.2.12#alsa-lib</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1731412800">- Update to alsa-lib 1.2.13:
  * static build fixes
  * documentation update for control remap API
  * PCM dmix fixes
  * pcm: implement snd_pcm_hw_params_get_sync() and obsolete snd_pcm_info_get_sync()
  * ump: Add a function to provide the packet word length of a UMP type
  * seq: Add snd_seq_{get|set}_ump_is_midi1() API functions
  * seq: Add API functions to set different tempo base values
  * seq: Add API helper functions for creating UMP Endpoint and Blocks
  * documentation fixes for UMP and sequencer API
  * test: Add an example programs for UMP
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.12_v1.2.13#alsa-lib
- Conditionally take libtool</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1731672000">- Fix incorrect versioned symbol for snd_seq_has_queue_tempo_base:
  0001-src-Versions.in.in-Update-_tempo_base-name.patch</changelog>
</package>
<package pkgid="a173b9fb033283233b32e9dfa91d81ced30e68b9517b0e4b008e2172a14e8eae3a82e48dca41715a3c0c0cefb9132719fe84f59dd8e6a648a53260295588aa84" name="alsa-debugsource" arch="i586">
  <version epoch="0" ver="1.2.13" rel="3.1"/>
  <changelog author="tiwai@suse.de" date="1623240000">- Fix regression in config read and UCM handling on pipewire and
  pulseaudio (boo#1187079, boo#1187033):
  0001-conf-fix-load_for_all_cards.patch
  0002-ucm-add-_alibpref-to-get-the-private-device-prefix.patch
  0003-ucm-fix-_alibpref-string-add-.-delimiter-to-the-end.patch</changelog>
  <changelog author="tiwai@suse.de" date="1623672000">- Update to version 1.2.5.1:
  a bug fix release, including previous patches:
  https://www.alsa-project.org/wiki/Changes_v1.2.5_v1.2.5.1
- Drop obsoleted patches:
  0001-conf-fix-load_for_all_cards.patch
  0002-ucm-add-_alibpref-to-get-the-private-device-prefix.patch
  0003-ucm-fix-_alibpref-string-add-.-delimiter-to-the-end.patch</changelog>
  <changelog author="tiwai@suse.de" date="1638792000">- Update to version 1.2.6:
  lots of changes, including UCM and config updates and rawmidi
  framing mode support: for details, see below
  https://www.alsa-project.org/wiki/Changes_v1.2.5.1_v1.2.6#alsa-lib
- Add *.sig file for the source tarball</changelog>
  <changelog author="tiwai@suse.de" date="1639137600">- Update to version 1.2.6.1:
  a minor fix release:
  * conf: fix the device parsing when arguments has no defaults
  * conf: accept '_' character in the variable name</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1654084800">- Update to version 1.2.7:
  more extended UCM API, PCM rate,multi,direct plugin fixes and
  enhancements, compilation fixes, etc.  For details see:
  https://www.alsa-project.org/wiki/Changes_v1.2.6.3_v1.2.7#alsa-lib</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1654516800">- Backport upstream fixes for 32bit inode and ELD parsing:
  0001-conf-Use-ino64_t-to-save-and-compare-inode-numbers.patch
  0002-control-eld-fix-the-decoding-for-older-hw.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1655726400">- Update to version 1.2.7.1: minor bug fixes, including the previous
  patches.  For details, see
    https://www.alsa-project.org/wiki/Changes_v1.2.7_v1.2.7.1#alsa-lib
- Drop obsoleted patches:
  0001-conf-Use-ino64_t-to-save-and-compare-inode-numbers.patch
  0002-control-eld-fix-the-decoding-for-older-hw.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1658145600">- Update to version 1.2.7.2: minor updates, including fixes for PCM
  share plugin, rawmidi and UCM</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1666699200">- Update to version 1.2.8 (jsc#PED-850):
  add FreeBSD/NetBD/OpenBSD build support, fixes in control namehint,
  various PCM plugins and UCM.  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.7.2_v1.2.8
- Add keyring</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1683547200">- Update to version 1.2.9:
  * Versioned symbol updates
  * Various fixes for building on *BSD and Android
  * Fixes and enhancements of auto silencing and playback drain
  * Add SND_CTL_EINTR open mode at PCM
  * Avoid endless loop in snd_pcm_sw_params_default()
  * Fixes in PCM rate, route/softvol plugins
  * Fixes in topology API parser, cleanups
  * Enhancements in latency test program
  * Minor code cleanup and memory leak fixes in UCM API
  * emu10k1 config cleanup
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.8_v1.2.9#alsa-lib</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1693828800">- Update to version 1.2.10 (jsc#PED-6566):
  * MIDI 2.0 feature support
  * build fixes for various platforms
  * various documentation fixes
  * misc topology fixes
  * ucm fixes and cleanups
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.9_v1.2.10#alsa-lib
- Took upstream fix for possible build errors:
  0001-control.h-Fix-ump-header-file-detection.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1694260800">- Upstream fix backport:
  0002-global.h-move-__STRING-macro-outside-PIC-ifdef-block.patch
- Upstream fix for PCM segfault regression (bsc#1215167):
  0003-pcm-Fix-segfault-with-32bit-libs.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1695038400">- More upstream fix for incosistent compile conditions:
  0004-reshuffle-included-files-to-include-config.h-as-firs.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1696939200">- Fix symbol version:
  0005-seq-Fix-typos-in-symbol-version-definitions.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1699358400">- Backport upstream fixes for sequencer and mixer:
  0006-seq-Fix-invalid-sanity-check-in-snd_seq_set_input_bu.patch
  0007-mixer-simple-Support-dB-TLVs-for-CTL_SINGLE-controls.patch
  0008-seq-Clear-UMP-event-flag-for-legacy-apps.patch
  0009-seq-Simplify-snd_seq_extract_output.patch
  0010-seq-Check-protocol-compatibility-with-the-current-ve.patch
- Clean up spec file</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1706875200">- Updated to alsa-lib 1.2.11:
  * auto-tools fixes, versioned symbol fixes
  * support dB TLVs for single controls
  * various PCM updates, including subformat extensions
  * UMP and sequencer API fixes
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.10_v1.2.11#alsa-lib
- Dropped obsoleted patches:
  0001-control.h-Fix-ump-header-file-detection.patch
  0002-global.h-move-__STRING-macro-outside-PIC-ifdef-block.patch
  0003-pcm-Fix-segfault-with-32bit-libs.patch
  0004-reshuffle-included-files-to-include-config.h-as-firs.patch
  0005-seq-Fix-typos-in-symbol-version-definitions.patch
  0006-seq-Fix-invalid-sanity-check-in-snd_seq_set_input_bu.patch
  0007-mixer-simple-Support-dB-TLVs-for-CTL_SINGLE-controls.patch
  0008-seq-Clear-UMP-event-flag-for-legacy-apps.patch
  0009-seq-Simplify-snd_seq_extract_output.patch
  0010-seq-Check-protocol-compatibility-with-the-current-ve.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1718280000">- Update to alsa-lib 1.2.12:
  * pcm: plug support for iec958 subframe samples
  * pcm: ladspa - Skip missing ladspa directories
  * topology: correct version script path
  * ucm: define and describe Syntax 7
  * async handler cleanup fix
  * conf updates
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.11_v1.2.12#alsa-lib</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1731412800">- Update to alsa-lib 1.2.13:
  * static build fixes
  * documentation update for control remap API
  * PCM dmix fixes
  * pcm: implement snd_pcm_hw_params_get_sync() and obsolete snd_pcm_info_get_sync()
  * ump: Add a function to provide the packet word length of a UMP type
  * seq: Add snd_seq_{get|set}_ump_is_midi1() API functions
  * seq: Add API functions to set different tempo base values
  * seq: Add API helper functions for creating UMP Endpoint and Blocks
  * documentation fixes for UMP and sequencer API
  * test: Add an example programs for UMP
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.12_v1.2.13#alsa-lib
- Conditionally take libtool</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1731672000">- Fix incorrect versioned symbol for snd_seq_has_queue_tempo_base:
  0001-src-Versions.in.in-Update-_tempo_base-name.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1732449600">- Fix header inclusions for implicit dependnecies (bsc#1233682)
  0002-configure-Make-sequencer-dependent-on-rawmidi.patch
  0003-seq-include-UMP-headers.patch</changelog>
</package>
<package pkgid="fb6bf136af230b646cf45193c012c67c64b99e55e8e9491e6ec70e9113cebd34da84933ac01b39cac156366a7afaa33f4cae04247ea3f2f807a23cd38029367c" name="alsa-debugsource" arch="x86_64">
  <version epoch="0" ver="1.2.13" rel="3.1"/>
  <changelog author="tiwai@suse.de" date="1623240000">- Fix regression in config read and UCM handling on pipewire and
  pulseaudio (boo#1187079, boo#1187033):
  0001-conf-fix-load_for_all_cards.patch
  0002-ucm-add-_alibpref-to-get-the-private-device-prefix.patch
  0003-ucm-fix-_alibpref-string-add-.-delimiter-to-the-end.patch</changelog>
  <changelog author="tiwai@suse.de" date="1623672000">- Update to version 1.2.5.1:
  a bug fix release, including previous patches:
  https://www.alsa-project.org/wiki/Changes_v1.2.5_v1.2.5.1
- Drop obsoleted patches:
  0001-conf-fix-load_for_all_cards.patch
  0002-ucm-add-_alibpref-to-get-the-private-device-prefix.patch
  0003-ucm-fix-_alibpref-string-add-.-delimiter-to-the-end.patch</changelog>
  <changelog author="tiwai@suse.de" date="1638792000">- Update to version 1.2.6:
  lots of changes, including UCM and config updates and rawmidi
  framing mode support: for details, see below
  https://www.alsa-project.org/wiki/Changes_v1.2.5.1_v1.2.6#alsa-lib
- Add *.sig file for the source tarball</changelog>
  <changelog author="tiwai@suse.de" date="1639137600">- Update to version 1.2.6.1:
  a minor fix release:
  * conf: fix the device parsing when arguments has no defaults
  * conf: accept '_' character in the variable name</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1654084800">- Update to version 1.2.7:
  more extended UCM API, PCM rate,multi,direct plugin fixes and
  enhancements, compilation fixes, etc.  For details see:
  https://www.alsa-project.org/wiki/Changes_v1.2.6.3_v1.2.7#alsa-lib</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1654516800">- Backport upstream fixes for 32bit inode and ELD parsing:
  0001-conf-Use-ino64_t-to-save-and-compare-inode-numbers.patch
  0002-control-eld-fix-the-decoding-for-older-hw.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1655726400">- Update to version 1.2.7.1: minor bug fixes, including the previous
  patches.  For details, see
    https://www.alsa-project.org/wiki/Changes_v1.2.7_v1.2.7.1#alsa-lib
- Drop obsoleted patches:
  0001-conf-Use-ino64_t-to-save-and-compare-inode-numbers.patch
  0002-control-eld-fix-the-decoding-for-older-hw.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1658145600">- Update to version 1.2.7.2: minor updates, including fixes for PCM
  share plugin, rawmidi and UCM</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1666699200">- Update to version 1.2.8 (jsc#PED-850):
  add FreeBSD/NetBD/OpenBSD build support, fixes in control namehint,
  various PCM plugins and UCM.  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.7.2_v1.2.8
- Add keyring</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1683547200">- Update to version 1.2.9:
  * Versioned symbol updates
  * Various fixes for building on *BSD and Android
  * Fixes and enhancements of auto silencing and playback drain
  * Add SND_CTL_EINTR open mode at PCM
  * Avoid endless loop in snd_pcm_sw_params_default()
  * Fixes in PCM rate, route/softvol plugins
  * Fixes in topology API parser, cleanups
  * Enhancements in latency test program
  * Minor code cleanup and memory leak fixes in UCM API
  * emu10k1 config cleanup
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.8_v1.2.9#alsa-lib</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1693828800">- Update to version 1.2.10 (jsc#PED-6566):
  * MIDI 2.0 feature support
  * build fixes for various platforms
  * various documentation fixes
  * misc topology fixes
  * ucm fixes and cleanups
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.9_v1.2.10#alsa-lib
- Took upstream fix for possible build errors:
  0001-control.h-Fix-ump-header-file-detection.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1694260800">- Upstream fix backport:
  0002-global.h-move-__STRING-macro-outside-PIC-ifdef-block.patch
- Upstream fix for PCM segfault regression (bsc#1215167):
  0003-pcm-Fix-segfault-with-32bit-libs.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1695038400">- More upstream fix for incosistent compile conditions:
  0004-reshuffle-included-files-to-include-config.h-as-firs.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1696939200">- Fix symbol version:
  0005-seq-Fix-typos-in-symbol-version-definitions.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1699358400">- Backport upstream fixes for sequencer and mixer:
  0006-seq-Fix-invalid-sanity-check-in-snd_seq_set_input_bu.patch
  0007-mixer-simple-Support-dB-TLVs-for-CTL_SINGLE-controls.patch
  0008-seq-Clear-UMP-event-flag-for-legacy-apps.patch
  0009-seq-Simplify-snd_seq_extract_output.patch
  0010-seq-Check-protocol-compatibility-with-the-current-ve.patch
- Clean up spec file</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1706875200">- Updated to alsa-lib 1.2.11:
  * auto-tools fixes, versioned symbol fixes
  * support dB TLVs for single controls
  * various PCM updates, including subformat extensions
  * UMP and sequencer API fixes
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.10_v1.2.11#alsa-lib
- Dropped obsoleted patches:
  0001-control.h-Fix-ump-header-file-detection.patch
  0002-global.h-move-__STRING-macro-outside-PIC-ifdef-block.patch
  0003-pcm-Fix-segfault-with-32bit-libs.patch
  0004-reshuffle-included-files-to-include-config.h-as-firs.patch
  0005-seq-Fix-typos-in-symbol-version-definitions.patch
  0006-seq-Fix-invalid-sanity-check-in-snd_seq_set_input_bu.patch
  0007-mixer-simple-Support-dB-TLVs-for-CTL_SINGLE-controls.patch
  0008-seq-Clear-UMP-event-flag-for-legacy-apps.patch
  0009-seq-Simplify-snd_seq_extract_output.patch
  0010-seq-Check-protocol-compatibility-with-the-current-ve.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1718280000">- Update to alsa-lib 1.2.12:
  * pcm: plug support for iec958 subframe samples
  * pcm: ladspa - Skip missing ladspa directories
  * topology: correct version script path
  * ucm: define and describe Syntax 7
  * async handler cleanup fix
  * conf updates
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.11_v1.2.12#alsa-lib</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1731412800">- Update to alsa-lib 1.2.13:
  * static build fixes
  * documentation update for control remap API
  * PCM dmix fixes
  * pcm: implement snd_pcm_hw_params_get_sync() and obsolete snd_pcm_info_get_sync()
  * ump: Add a function to provide the packet word length of a UMP type
  * seq: Add snd_seq_{get|set}_ump_is_midi1() API functions
  * seq: Add API functions to set different tempo base values
  * seq: Add API helper functions for creating UMP Endpoint and Blocks
  * documentation fixes for UMP and sequencer API
  * test: Add an example programs for UMP
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.12_v1.2.13#alsa-lib
- Conditionally take libtool</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1731672000">- Fix incorrect versioned symbol for snd_seq_has_queue_tempo_base:
  0001-src-Versions.in.in-Update-_tempo_base-name.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1732449600">- Fix header inclusions for implicit dependnecies (bsc#1233682)
  0002-configure-Make-sequencer-dependent-on-rawmidi.patch
  0003-seq-include-UMP-headers.patch</changelog>
</package>
<package pkgid="831506cb42ee0a30e075f9034fe94cdb5dc917bbf2090e7c0c810d22083fb952be5ac9a0d5efa85cc4648c23fdabed0e1568dfeb7bd81b6b6be582adc537bc7b" name="alsa-devel" arch="i586">
  <version epoch="0" ver="1.2.13" rel="2.0.2.1.sr20241103"/>
  <changelog author="Ferdinand Thiessen &lt;rpm@fthiessen.de&gt;" date="1622462400">- Update to version 1.2.5
  * https://www.alsa-project.org/wiki/Changes_v1.2.4_v1.2.5#alsa-lib
- Drop upstream fixed patches
  * 0001-dlmisc-the-snd_plugin_dir_set-snd_plugin_dir-must-be.patch
  * 0002-dlmisc-fix-snd_plugin_dir-locking-for-not-DL_ORIGIN_.patch
  * 0003-pcm-snd_pcm_mmap_readi-fix-typo-in-comment.patch
  * 0004-topology-use-inclusive-language-for-bclk.patch
  * 0005-topology-use-inclusive-language-for-fsync.patch
  * 0006-topology-use-inclusive-language-in-documentation.patch
  * 0007-pcm-set-the-snd_pcm_ioplug_status-tstamp-field.patch
  * 0009-pcm-Add-snd_pcm_audio_tstamp_type_t-constants.patch
  * 0045-pcm-direct-Fix-the-missing-appl_ptr-update.patch
  * 0019-pcm-fix-__snd_pcm_state-return-value.patch
  * 0025-pcm-plugin-optimize-sync-in-snd_pcm_plugin_status.patch
  * 0026-Revert-pcm_plugin-fix-delay.patch
  * 0014-rawmidi-fix-memory-leak-in-snd_rawmidi_virtual_open.patch
  * 0037-topology-tplg_decode_pcm-add-missing-log-argument-co.patch
  * 0040-topology-sort_config-cleanups-use-goto-for-the-error.patch
  * 0028-pcm-rate-tidy-up-snd_pcm_rate_avail_update.patch
  * 0046-pcm-ioplug-Pass-appl_ptr-and-hw_ptr-in-snd_pcm_statu.patch
  * 0030-pcm-rate-use-pcm_frame_diff-in-snd_pcm_rate_playback.patch
  * 0047-pcm-null-Pass-appl_ptr-and-hw_ptr-in-snd_pcm_status.patch
  * 0043-pcm-dmix-dshare-delay-calculation-fixes-and-cleanups.patch
  * 0042-pcm_plugin-set-the-initial-hw_ptr-appl_ptr-from-the-.patch
  * 0011-pcm-Fix-a-typo-in-SND_PCM_AUDIO_TSTAMP_TYPE_LAST-def.patch
  * 0017-pcm_multi-remove-dead-assignment-from-_snd_pcm_multi.patch
  * 0027-pcm-ioplug-fix-the-delay-calculation-in-the-status-c.patch
  * 0041-conf-USB-add-Xonar-U7-MKII-to-USB-Audio.pcm.iec958_d.patch
  * 0016-pcm-remove-dead-assignments-from-snd_pcm_rate_-commi.patch
  * 0035-topology-tplg_pprint_integer-fix-coverity-uninitaliz.patch
  * 0034-ucm-fix-possible-memory-leak-in-parse_verb_file.patch
  * 0021-conf-fix-return-code-in-_snd_config_load_with_includ.patch
  * 0023-pcm-plugin-status-revert-the-recent-changes.patch
  * 0020-confmisc-fix-memory-leak-in-snd_func_concat.patch
  * 0029-pcm-ioplug-fix-the-delay-calculation-for-old-plugins.patch
  * 0039-ucm-uc_mgr_substitute_tree-fix-use-after-free.patch
  * 0024-pcm-plugin-tidy-snd_pcm_plugin_avail_update.patch
  * 0010-test-audio_time-Make-use-of-SND_PCM_AUDIO_TSTAMP_TYP.patch
  * 0033-pcm-rate-fix-the-capture-delay-values.patch
  * 0015-timer-fix-sizeof-operator-mismatch-in-snd_timer_quer.patch
  * 0036-topology-tplg_add_widget_object-do-not-use-invalid-e.patch
  * 0044-topology-fix-parse_tuple_set-remove-dead-condition-c.patch
  * 0038-topology-parse_tuple_set-remove-dead-condition-code.patch
  * 0018-conf-fix-get_hexachar-return-value.patch
  * 0013-ucm-fix-bad-frees-in-get_list0-and-get_list20.patch
  * 0012-conf-fix-use-after-free-in-_snd_config_load_with_inc.patch
  * 0031-pcm-plugin-fix-status-code-for-capture.patch
  * 0048-pcm-share-Pass-appl_ptr-and-hw_ptr-in-snd_pcm_status.patch
  * 0032-pcm-rate-use-pcm_frame_diff-on-related-places.patch
  * 0022-pcm-plugin-status-fix-the-return-value-regression.patch</changelog>
  <changelog author="tiwai@suse.de" date="1623240000">- Fix regression in config read and UCM handling on pipewire and
  pulseaudio (boo#1187079, boo#1187033):
  0001-conf-fix-load_for_all_cards.patch
  0002-ucm-add-_alibpref-to-get-the-private-device-prefix.patch
  0003-ucm-fix-_alibpref-string-add-.-delimiter-to-the-end.patch</changelog>
  <changelog author="tiwai@suse.de" date="1623672000">- Update to version 1.2.5.1:
  a bug fix release, including previous patches:
  https://www.alsa-project.org/wiki/Changes_v1.2.5_v1.2.5.1
- Drop obsoleted patches:
  0001-conf-fix-load_for_all_cards.patch
  0002-ucm-add-_alibpref-to-get-the-private-device-prefix.patch
  0003-ucm-fix-_alibpref-string-add-.-delimiter-to-the-end.patch</changelog>
  <changelog author="tiwai@suse.de" date="1638792000">- Update to version 1.2.6:
  lots of changes, including UCM and config updates and rawmidi
  framing mode support: for details, see below
  https://www.alsa-project.org/wiki/Changes_v1.2.5.1_v1.2.6#alsa-lib
- Add *.sig file for the source tarball</changelog>
  <changelog author="tiwai@suse.de" date="1639137600">- Update to version 1.2.6.1:
  a minor fix release:
  * conf: fix the device parsing when arguments has no defaults
  * conf: accept '_' character in the variable name</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1654084800">- Update to version 1.2.7:
  more extended UCM API, PCM rate,multi,direct plugin fixes and
  enhancements, compilation fixes, etc.  For details see:
  https://www.alsa-project.org/wiki/Changes_v1.2.6.3_v1.2.7#alsa-lib</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1654516800">- Backport upstream fixes for 32bit inode and ELD parsing:
  0001-conf-Use-ino64_t-to-save-and-compare-inode-numbers.patch
  0002-control-eld-fix-the-decoding-for-older-hw.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1655726400">- Update to version 1.2.7.1: minor bug fixes, including the previous
  patches.  For details, see
    https://www.alsa-project.org/wiki/Changes_v1.2.7_v1.2.7.1#alsa-lib
- Drop obsoleted patches:
  0001-conf-Use-ino64_t-to-save-and-compare-inode-numbers.patch
  0002-control-eld-fix-the-decoding-for-older-hw.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1658145600">- Update to version 1.2.7.2: minor updates, including fixes for PCM
  share plugin, rawmidi and UCM</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1666699200">- Update to version 1.2.8 (jsc#PED-850):
  add FreeBSD/NetBD/OpenBSD build support, fixes in control namehint,
  various PCM plugins and UCM.  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.7.2_v1.2.8
- Add keyring</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1683547200">- Update to version 1.2.9:
  * Versioned symbol updates
  * Various fixes for building on *BSD and Android
  * Fixes and enhancements of auto silencing and playback drain
  * Add SND_CTL_EINTR open mode at PCM
  * Avoid endless loop in snd_pcm_sw_params_default()
  * Fixes in PCM rate, route/softvol plugins
  * Fixes in topology API parser, cleanups
  * Enhancements in latency test program
  * Minor code cleanup and memory leak fixes in UCM API
  * emu10k1 config cleanup
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.8_v1.2.9#alsa-lib</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1693828800">- Update to version 1.2.10 (jsc#PED-6566):
  * MIDI 2.0 feature support
  * build fixes for various platforms
  * various documentation fixes
  * misc topology fixes
  * ucm fixes and cleanups
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.9_v1.2.10#alsa-lib
- Took upstream fix for possible build errors:
  0001-control.h-Fix-ump-header-file-detection.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1694260800">- Upstream fix backport:
  0002-global.h-move-__STRING-macro-outside-PIC-ifdef-block.patch
- Upstream fix for PCM segfault regression (bsc#1215167):
  0003-pcm-Fix-segfault-with-32bit-libs.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1695038400">- More upstream fix for incosistent compile conditions:
  0004-reshuffle-included-files-to-include-config.h-as-firs.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1696939200">- Fix symbol version:
  0005-seq-Fix-typos-in-symbol-version-definitions.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1699358400">- Backport upstream fixes for sequencer and mixer:
  0006-seq-Fix-invalid-sanity-check-in-snd_seq_set_input_bu.patch
  0007-mixer-simple-Support-dB-TLVs-for-CTL_SINGLE-controls.patch
  0008-seq-Clear-UMP-event-flag-for-legacy-apps.patch
  0009-seq-Simplify-snd_seq_extract_output.patch
  0010-seq-Check-protocol-compatibility-with-the-current-ve.patch
- Clean up spec file</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1706875200">- Updated to alsa-lib 1.2.11:
  * auto-tools fixes, versioned symbol fixes
  * support dB TLVs for single controls
  * various PCM updates, including subformat extensions
  * UMP and sequencer API fixes
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.10_v1.2.11#alsa-lib
- Dropped obsoleted patches:
  0001-control.h-Fix-ump-header-file-detection.patch
  0002-global.h-move-__STRING-macro-outside-PIC-ifdef-block.patch
  0003-pcm-Fix-segfault-with-32bit-libs.patch
  0004-reshuffle-included-files-to-include-config.h-as-firs.patch
  0005-seq-Fix-typos-in-symbol-version-definitions.patch
  0006-seq-Fix-invalid-sanity-check-in-snd_seq_set_input_bu.patch
  0007-mixer-simple-Support-dB-TLVs-for-CTL_SINGLE-controls.patch
  0008-seq-Clear-UMP-event-flag-for-legacy-apps.patch
  0009-seq-Simplify-snd_seq_extract_output.patch
  0010-seq-Check-protocol-compatibility-with-the-current-ve.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1718280000">- Update to alsa-lib 1.2.12:
  * pcm: plug support for iec958 subframe samples
  * pcm: ladspa - Skip missing ladspa directories
  * topology: correct version script path
  * ucm: define and describe Syntax 7
  * async handler cleanup fix
  * conf updates
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.11_v1.2.12#alsa-lib</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1731412800">- Update to alsa-lib 1.2.13:
  * static build fixes
  * documentation update for control remap API
  * PCM dmix fixes
  * pcm: implement snd_pcm_hw_params_get_sync() and obsolete snd_pcm_info_get_sync()
  * ump: Add a function to provide the packet word length of a UMP type
  * seq: Add snd_seq_{get|set}_ump_is_midi1() API functions
  * seq: Add API functions to set different tempo base values
  * seq: Add API helper functions for creating UMP Endpoint and Blocks
  * documentation fixes for UMP and sequencer API
  * test: Add an example programs for UMP
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.12_v1.2.13#alsa-lib
- Conditionally take libtool</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1731672000">- Fix incorrect versioned symbol for snd_seq_has_queue_tempo_base:
  0001-src-Versions.in.in-Update-_tempo_base-name.patch</changelog>
</package>
<package pkgid="ab3b53dd5d6289f0e1c894bf8c6c5f09cea45cd81edfab7eceb9ada6aa19ff9c483581463ba2cf6ed9905d7abebcd1a1d28c09d53a9a05e2557566a869c6f136" name="alsa-devel" arch="x86_64">
  <version epoch="0" ver="1.2.13" rel="2.0.2.1.sr20241103"/>
  <changelog author="Ferdinand Thiessen &lt;rpm@fthiessen.de&gt;" date="1622462400">- Update to version 1.2.5
  * https://www.alsa-project.org/wiki/Changes_v1.2.4_v1.2.5#alsa-lib
- Drop upstream fixed patches
  * 0001-dlmisc-the-snd_plugin_dir_set-snd_plugin_dir-must-be.patch
  * 0002-dlmisc-fix-snd_plugin_dir-locking-for-not-DL_ORIGIN_.patch
  * 0003-pcm-snd_pcm_mmap_readi-fix-typo-in-comment.patch
  * 0004-topology-use-inclusive-language-for-bclk.patch
  * 0005-topology-use-inclusive-language-for-fsync.patch
  * 0006-topology-use-inclusive-language-in-documentation.patch
  * 0007-pcm-set-the-snd_pcm_ioplug_status-tstamp-field.patch
  * 0009-pcm-Add-snd_pcm_audio_tstamp_type_t-constants.patch
  * 0045-pcm-direct-Fix-the-missing-appl_ptr-update.patch
  * 0019-pcm-fix-__snd_pcm_state-return-value.patch
  * 0025-pcm-plugin-optimize-sync-in-snd_pcm_plugin_status.patch
  * 0026-Revert-pcm_plugin-fix-delay.patch
  * 0014-rawmidi-fix-memory-leak-in-snd_rawmidi_virtual_open.patch
  * 0037-topology-tplg_decode_pcm-add-missing-log-argument-co.patch
  * 0040-topology-sort_config-cleanups-use-goto-for-the-error.patch
  * 0028-pcm-rate-tidy-up-snd_pcm_rate_avail_update.patch
  * 0046-pcm-ioplug-Pass-appl_ptr-and-hw_ptr-in-snd_pcm_statu.patch
  * 0030-pcm-rate-use-pcm_frame_diff-in-snd_pcm_rate_playback.patch
  * 0047-pcm-null-Pass-appl_ptr-and-hw_ptr-in-snd_pcm_status.patch
  * 0043-pcm-dmix-dshare-delay-calculation-fixes-and-cleanups.patch
  * 0042-pcm_plugin-set-the-initial-hw_ptr-appl_ptr-from-the-.patch
  * 0011-pcm-Fix-a-typo-in-SND_PCM_AUDIO_TSTAMP_TYPE_LAST-def.patch
  * 0017-pcm_multi-remove-dead-assignment-from-_snd_pcm_multi.patch
  * 0027-pcm-ioplug-fix-the-delay-calculation-in-the-status-c.patch
  * 0041-conf-USB-add-Xonar-U7-MKII-to-USB-Audio.pcm.iec958_d.patch
  * 0016-pcm-remove-dead-assignments-from-snd_pcm_rate_-commi.patch
  * 0035-topology-tplg_pprint_integer-fix-coverity-uninitaliz.patch
  * 0034-ucm-fix-possible-memory-leak-in-parse_verb_file.patch
  * 0021-conf-fix-return-code-in-_snd_config_load_with_includ.patch
  * 0023-pcm-plugin-status-revert-the-recent-changes.patch
  * 0020-confmisc-fix-memory-leak-in-snd_func_concat.patch
  * 0029-pcm-ioplug-fix-the-delay-calculation-for-old-plugins.patch
  * 0039-ucm-uc_mgr_substitute_tree-fix-use-after-free.patch
  * 0024-pcm-plugin-tidy-snd_pcm_plugin_avail_update.patch
  * 0010-test-audio_time-Make-use-of-SND_PCM_AUDIO_TSTAMP_TYP.patch
  * 0033-pcm-rate-fix-the-capture-delay-values.patch
  * 0015-timer-fix-sizeof-operator-mismatch-in-snd_timer_quer.patch
  * 0036-topology-tplg_add_widget_object-do-not-use-invalid-e.patch
  * 0044-topology-fix-parse_tuple_set-remove-dead-condition-c.patch
  * 0038-topology-parse_tuple_set-remove-dead-condition-code.patch
  * 0018-conf-fix-get_hexachar-return-value.patch
  * 0013-ucm-fix-bad-frees-in-get_list0-and-get_list20.patch
  * 0012-conf-fix-use-after-free-in-_snd_config_load_with_inc.patch
  * 0031-pcm-plugin-fix-status-code-for-capture.patch
  * 0048-pcm-share-Pass-appl_ptr-and-hw_ptr-in-snd_pcm_status.patch
  * 0032-pcm-rate-use-pcm_frame_diff-on-related-places.patch
  * 0022-pcm-plugin-status-fix-the-return-value-regression.patch</changelog>
  <changelog author="tiwai@suse.de" date="1623240000">- Fix regression in config read and UCM handling on pipewire and
  pulseaudio (boo#1187079, boo#1187033):
  0001-conf-fix-load_for_all_cards.patch
  0002-ucm-add-_alibpref-to-get-the-private-device-prefix.patch
  0003-ucm-fix-_alibpref-string-add-.-delimiter-to-the-end.patch</changelog>
  <changelog author="tiwai@suse.de" date="1623672000">- Update to version 1.2.5.1:
  a bug fix release, including previous patches:
  https://www.alsa-project.org/wiki/Changes_v1.2.5_v1.2.5.1
- Drop obsoleted patches:
  0001-conf-fix-load_for_all_cards.patch
  0002-ucm-add-_alibpref-to-get-the-private-device-prefix.patch
  0003-ucm-fix-_alibpref-string-add-.-delimiter-to-the-end.patch</changelog>
  <changelog author="tiwai@suse.de" date="1638792000">- Update to version 1.2.6:
  lots of changes, including UCM and config updates and rawmidi
  framing mode support: for details, see below
  https://www.alsa-project.org/wiki/Changes_v1.2.5.1_v1.2.6#alsa-lib
- Add *.sig file for the source tarball</changelog>
  <changelog author="tiwai@suse.de" date="1639137600">- Update to version 1.2.6.1:
  a minor fix release:
  * conf: fix the device parsing when arguments has no defaults
  * conf: accept '_' character in the variable name</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1654084800">- Update to version 1.2.7:
  more extended UCM API, PCM rate,multi,direct plugin fixes and
  enhancements, compilation fixes, etc.  For details see:
  https://www.alsa-project.org/wiki/Changes_v1.2.6.3_v1.2.7#alsa-lib</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1654516800">- Backport upstream fixes for 32bit inode and ELD parsing:
  0001-conf-Use-ino64_t-to-save-and-compare-inode-numbers.patch
  0002-control-eld-fix-the-decoding-for-older-hw.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1655726400">- Update to version 1.2.7.1: minor bug fixes, including the previous
  patches.  For details, see
    https://www.alsa-project.org/wiki/Changes_v1.2.7_v1.2.7.1#alsa-lib
- Drop obsoleted patches:
  0001-conf-Use-ino64_t-to-save-and-compare-inode-numbers.patch
  0002-control-eld-fix-the-decoding-for-older-hw.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1658145600">- Update to version 1.2.7.2: minor updates, including fixes for PCM
  share plugin, rawmidi and UCM</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1666699200">- Update to version 1.2.8 (jsc#PED-850):
  add FreeBSD/NetBD/OpenBSD build support, fixes in control namehint,
  various PCM plugins and UCM.  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.7.2_v1.2.8
- Add keyring</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1683547200">- Update to version 1.2.9:
  * Versioned symbol updates
  * Various fixes for building on *BSD and Android
  * Fixes and enhancements of auto silencing and playback drain
  * Add SND_CTL_EINTR open mode at PCM
  * Avoid endless loop in snd_pcm_sw_params_default()
  * Fixes in PCM rate, route/softvol plugins
  * Fixes in topology API parser, cleanups
  * Enhancements in latency test program
  * Minor code cleanup and memory leak fixes in UCM API
  * emu10k1 config cleanup
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.8_v1.2.9#alsa-lib</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1693828800">- Update to version 1.2.10 (jsc#PED-6566):
  * MIDI 2.0 feature support
  * build fixes for various platforms
  * various documentation fixes
  * misc topology fixes
  * ucm fixes and cleanups
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.9_v1.2.10#alsa-lib
- Took upstream fix for possible build errors:
  0001-control.h-Fix-ump-header-file-detection.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1694260800">- Upstream fix backport:
  0002-global.h-move-__STRING-macro-outside-PIC-ifdef-block.patch
- Upstream fix for PCM segfault regression (bsc#1215167):
  0003-pcm-Fix-segfault-with-32bit-libs.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1695038400">- More upstream fix for incosistent compile conditions:
  0004-reshuffle-included-files-to-include-config.h-as-firs.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1696939200">- Fix symbol version:
  0005-seq-Fix-typos-in-symbol-version-definitions.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1699358400">- Backport upstream fixes for sequencer and mixer:
  0006-seq-Fix-invalid-sanity-check-in-snd_seq_set_input_bu.patch
  0007-mixer-simple-Support-dB-TLVs-for-CTL_SINGLE-controls.patch
  0008-seq-Clear-UMP-event-flag-for-legacy-apps.patch
  0009-seq-Simplify-snd_seq_extract_output.patch
  0010-seq-Check-protocol-compatibility-with-the-current-ve.patch
- Clean up spec file</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1706875200">- Updated to alsa-lib 1.2.11:
  * auto-tools fixes, versioned symbol fixes
  * support dB TLVs for single controls
  * various PCM updates, including subformat extensions
  * UMP and sequencer API fixes
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.10_v1.2.11#alsa-lib
- Dropped obsoleted patches:
  0001-control.h-Fix-ump-header-file-detection.patch
  0002-global.h-move-__STRING-macro-outside-PIC-ifdef-block.patch
  0003-pcm-Fix-segfault-with-32bit-libs.patch
  0004-reshuffle-included-files-to-include-config.h-as-firs.patch
  0005-seq-Fix-typos-in-symbol-version-definitions.patch
  0006-seq-Fix-invalid-sanity-check-in-snd_seq_set_input_bu.patch
  0007-mixer-simple-Support-dB-TLVs-for-CTL_SINGLE-controls.patch
  0008-seq-Clear-UMP-event-flag-for-legacy-apps.patch
  0009-seq-Simplify-snd_seq_extract_output.patch
  0010-seq-Check-protocol-compatibility-with-the-current-ve.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1718280000">- Update to alsa-lib 1.2.12:
  * pcm: plug support for iec958 subframe samples
  * pcm: ladspa - Skip missing ladspa directories
  * topology: correct version script path
  * ucm: define and describe Syntax 7
  * async handler cleanup fix
  * conf updates
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.11_v1.2.12#alsa-lib</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1731412800">- Update to alsa-lib 1.2.13:
  * static build fixes
  * documentation update for control remap API
  * PCM dmix fixes
  * pcm: implement snd_pcm_hw_params_get_sync() and obsolete snd_pcm_info_get_sync()
  * ump: Add a function to provide the packet word length of a UMP type
  * seq: Add snd_seq_{get|set}_ump_is_midi1() API functions
  * seq: Add API functions to set different tempo base values
  * seq: Add API helper functions for creating UMP Endpoint and Blocks
  * documentation fixes for UMP and sequencer API
  * test: Add an example programs for UMP
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.12_v1.2.13#alsa-lib
- Conditionally take libtool</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1731672000">- Fix incorrect versioned symbol for snd_seq_has_queue_tempo_base:
  0001-src-Versions.in.in-Update-_tempo_base-name.patch</changelog>
</package>
<package pkgid="3e87c5503c9b4d2d3f7bbd1a49b137b824678e4164858f28c316377fbf5380db555036a4e4dda163826b7b0f3f84a06ecb86cd0d66b54bd299ad9831d69a25f3" name="alsa-devel" arch="i586">
  <version epoch="0" ver="1.2.13" rel="3.1"/>
  <changelog author="tiwai@suse.de" date="1623240000">- Fix regression in config read and UCM handling on pipewire and
  pulseaudio (boo#1187079, boo#1187033):
  0001-conf-fix-load_for_all_cards.patch
  0002-ucm-add-_alibpref-to-get-the-private-device-prefix.patch
  0003-ucm-fix-_alibpref-string-add-.-delimiter-to-the-end.patch</changelog>
  <changelog author="tiwai@suse.de" date="1623672000">- Update to version 1.2.5.1:
  a bug fix release, including previous patches:
  https://www.alsa-project.org/wiki/Changes_v1.2.5_v1.2.5.1
- Drop obsoleted patches:
  0001-conf-fix-load_for_all_cards.patch
  0002-ucm-add-_alibpref-to-get-the-private-device-prefix.patch
  0003-ucm-fix-_alibpref-string-add-.-delimiter-to-the-end.patch</changelog>
  <changelog author="tiwai@suse.de" date="1638792000">- Update to version 1.2.6:
  lots of changes, including UCM and config updates and rawmidi
  framing mode support: for details, see below
  https://www.alsa-project.org/wiki/Changes_v1.2.5.1_v1.2.6#alsa-lib
- Add *.sig file for the source tarball</changelog>
  <changelog author="tiwai@suse.de" date="1639137600">- Update to version 1.2.6.1:
  a minor fix release:
  * conf: fix the device parsing when arguments has no defaults
  * conf: accept '_' character in the variable name</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1654084800">- Update to version 1.2.7:
  more extended UCM API, PCM rate,multi,direct plugin fixes and
  enhancements, compilation fixes, etc.  For details see:
  https://www.alsa-project.org/wiki/Changes_v1.2.6.3_v1.2.7#alsa-lib</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1654516800">- Backport upstream fixes for 32bit inode and ELD parsing:
  0001-conf-Use-ino64_t-to-save-and-compare-inode-numbers.patch
  0002-control-eld-fix-the-decoding-for-older-hw.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1655726400">- Update to version 1.2.7.1: minor bug fixes, including the previous
  patches.  For details, see
    https://www.alsa-project.org/wiki/Changes_v1.2.7_v1.2.7.1#alsa-lib
- Drop obsoleted patches:
  0001-conf-Use-ino64_t-to-save-and-compare-inode-numbers.patch
  0002-control-eld-fix-the-decoding-for-older-hw.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1658145600">- Update to version 1.2.7.2: minor updates, including fixes for PCM
  share plugin, rawmidi and UCM</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1666699200">- Update to version 1.2.8 (jsc#PED-850):
  add FreeBSD/NetBD/OpenBSD build support, fixes in control namehint,
  various PCM plugins and UCM.  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.7.2_v1.2.8
- Add keyring</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1683547200">- Update to version 1.2.9:
  * Versioned symbol updates
  * Various fixes for building on *BSD and Android
  * Fixes and enhancements of auto silencing and playback drain
  * Add SND_CTL_EINTR open mode at PCM
  * Avoid endless loop in snd_pcm_sw_params_default()
  * Fixes in PCM rate, route/softvol plugins
  * Fixes in topology API parser, cleanups
  * Enhancements in latency test program
  * Minor code cleanup and memory leak fixes in UCM API
  * emu10k1 config cleanup
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.8_v1.2.9#alsa-lib</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1693828800">- Update to version 1.2.10 (jsc#PED-6566):
  * MIDI 2.0 feature support
  * build fixes for various platforms
  * various documentation fixes
  * misc topology fixes
  * ucm fixes and cleanups
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.9_v1.2.10#alsa-lib
- Took upstream fix for possible build errors:
  0001-control.h-Fix-ump-header-file-detection.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1694260800">- Upstream fix backport:
  0002-global.h-move-__STRING-macro-outside-PIC-ifdef-block.patch
- Upstream fix for PCM segfault regression (bsc#1215167):
  0003-pcm-Fix-segfault-with-32bit-libs.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1695038400">- More upstream fix for incosistent compile conditions:
  0004-reshuffle-included-files-to-include-config.h-as-firs.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1696939200">- Fix symbol version:
  0005-seq-Fix-typos-in-symbol-version-definitions.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1699358400">- Backport upstream fixes for sequencer and mixer:
  0006-seq-Fix-invalid-sanity-check-in-snd_seq_set_input_bu.patch
  0007-mixer-simple-Support-dB-TLVs-for-CTL_SINGLE-controls.patch
  0008-seq-Clear-UMP-event-flag-for-legacy-apps.patch
  0009-seq-Simplify-snd_seq_extract_output.patch
  0010-seq-Check-protocol-compatibility-with-the-current-ve.patch
- Clean up spec file</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1706875200">- Updated to alsa-lib 1.2.11:
  * auto-tools fixes, versioned symbol fixes
  * support dB TLVs for single controls
  * various PCM updates, including subformat extensions
  * UMP and sequencer API fixes
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.10_v1.2.11#alsa-lib
- Dropped obsoleted patches:
  0001-control.h-Fix-ump-header-file-detection.patch
  0002-global.h-move-__STRING-macro-outside-PIC-ifdef-block.patch
  0003-pcm-Fix-segfault-with-32bit-libs.patch
  0004-reshuffle-included-files-to-include-config.h-as-firs.patch
  0005-seq-Fix-typos-in-symbol-version-definitions.patch
  0006-seq-Fix-invalid-sanity-check-in-snd_seq_set_input_bu.patch
  0007-mixer-simple-Support-dB-TLVs-for-CTL_SINGLE-controls.patch
  0008-seq-Clear-UMP-event-flag-for-legacy-apps.patch
  0009-seq-Simplify-snd_seq_extract_output.patch
  0010-seq-Check-protocol-compatibility-with-the-current-ve.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1718280000">- Update to alsa-lib 1.2.12:
  * pcm: plug support for iec958 subframe samples
  * pcm: ladspa - Skip missing ladspa directories
  * topology: correct version script path
  * ucm: define and describe Syntax 7
  * async handler cleanup fix
  * conf updates
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.11_v1.2.12#alsa-lib</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1731412800">- Update to alsa-lib 1.2.13:
  * static build fixes
  * documentation update for control remap API
  * PCM dmix fixes
  * pcm: implement snd_pcm_hw_params_get_sync() and obsolete snd_pcm_info_get_sync()
  * ump: Add a function to provide the packet word length of a UMP type
  * seq: Add snd_seq_{get|set}_ump_is_midi1() API functions
  * seq: Add API functions to set different tempo base values
  * seq: Add API helper functions for creating UMP Endpoint and Blocks
  * documentation fixes for UMP and sequencer API
  * test: Add an example programs for UMP
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.12_v1.2.13#alsa-lib
- Conditionally take libtool</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1731672000">- Fix incorrect versioned symbol for snd_seq_has_queue_tempo_base:
  0001-src-Versions.in.in-Update-_tempo_base-name.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1732449600">- Fix header inclusions for implicit dependnecies (bsc#1233682)
  0002-configure-Make-sequencer-dependent-on-rawmidi.patch
  0003-seq-include-UMP-headers.patch</changelog>
</package>
<package pkgid="f638c4ec9ba86b1b37f5936b41e5500da1b3d3299705189936a6190bc96292ead179261adcc7f0ddcf03c3ccbbebc4bf92af16e6956f7c9b7c2df44cc25474b0" name="alsa-devel" arch="x86_64">
  <version epoch="0" ver="1.2.13" rel="3.1"/>
  <changelog author="tiwai@suse.de" date="1623240000">- Fix regression in config read and UCM handling on pipewire and
  pulseaudio (boo#1187079, boo#1187033):
  0001-conf-fix-load_for_all_cards.patch
  0002-ucm-add-_alibpref-to-get-the-private-device-prefix.patch
  0003-ucm-fix-_alibpref-string-add-.-delimiter-to-the-end.patch</changelog>
  <changelog author="tiwai@suse.de" date="1623672000">- Update to version 1.2.5.1:
  a bug fix release, including previous patches:
  https://www.alsa-project.org/wiki/Changes_v1.2.5_v1.2.5.1
- Drop obsoleted patches:
  0001-conf-fix-load_for_all_cards.patch
  0002-ucm-add-_alibpref-to-get-the-private-device-prefix.patch
  0003-ucm-fix-_alibpref-string-add-.-delimiter-to-the-end.patch</changelog>
  <changelog author="tiwai@suse.de" date="1638792000">- Update to version 1.2.6:
  lots of changes, including UCM and config updates and rawmidi
  framing mode support: for details, see below
  https://www.alsa-project.org/wiki/Changes_v1.2.5.1_v1.2.6#alsa-lib
- Add *.sig file for the source tarball</changelog>
  <changelog author="tiwai@suse.de" date="1639137600">- Update to version 1.2.6.1:
  a minor fix release:
  * conf: fix the device parsing when arguments has no defaults
  * conf: accept '_' character in the variable name</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1654084800">- Update to version 1.2.7:
  more extended UCM API, PCM rate,multi,direct plugin fixes and
  enhancements, compilation fixes, etc.  For details see:
  https://www.alsa-project.org/wiki/Changes_v1.2.6.3_v1.2.7#alsa-lib</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1654516800">- Backport upstream fixes for 32bit inode and ELD parsing:
  0001-conf-Use-ino64_t-to-save-and-compare-inode-numbers.patch
  0002-control-eld-fix-the-decoding-for-older-hw.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1655726400">- Update to version 1.2.7.1: minor bug fixes, including the previous
  patches.  For details, see
    https://www.alsa-project.org/wiki/Changes_v1.2.7_v1.2.7.1#alsa-lib
- Drop obsoleted patches:
  0001-conf-Use-ino64_t-to-save-and-compare-inode-numbers.patch
  0002-control-eld-fix-the-decoding-for-older-hw.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1658145600">- Update to version 1.2.7.2: minor updates, including fixes for PCM
  share plugin, rawmidi and UCM</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1666699200">- Update to version 1.2.8 (jsc#PED-850):
  add FreeBSD/NetBD/OpenBSD build support, fixes in control namehint,
  various PCM plugins and UCM.  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.7.2_v1.2.8
- Add keyring</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1683547200">- Update to version 1.2.9:
  * Versioned symbol updates
  * Various fixes for building on *BSD and Android
  * Fixes and enhancements of auto silencing and playback drain
  * Add SND_CTL_EINTR open mode at PCM
  * Avoid endless loop in snd_pcm_sw_params_default()
  * Fixes in PCM rate, route/softvol plugins
  * Fixes in topology API parser, cleanups
  * Enhancements in latency test program
  * Minor code cleanup and memory leak fixes in UCM API
  * emu10k1 config cleanup
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.8_v1.2.9#alsa-lib</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1693828800">- Update to version 1.2.10 (jsc#PED-6566):
  * MIDI 2.0 feature support
  * build fixes for various platforms
  * various documentation fixes
  * misc topology fixes
  * ucm fixes and cleanups
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.9_v1.2.10#alsa-lib
- Took upstream fix for possible build errors:
  0001-control.h-Fix-ump-header-file-detection.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1694260800">- Upstream fix backport:
  0002-global.h-move-__STRING-macro-outside-PIC-ifdef-block.patch
- Upstream fix for PCM segfault regression (bsc#1215167):
  0003-pcm-Fix-segfault-with-32bit-libs.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1695038400">- More upstream fix for incosistent compile conditions:
  0004-reshuffle-included-files-to-include-config.h-as-firs.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1696939200">- Fix symbol version:
  0005-seq-Fix-typos-in-symbol-version-definitions.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1699358400">- Backport upstream fixes for sequencer and mixer:
  0006-seq-Fix-invalid-sanity-check-in-snd_seq_set_input_bu.patch
  0007-mixer-simple-Support-dB-TLVs-for-CTL_SINGLE-controls.patch
  0008-seq-Clear-UMP-event-flag-for-legacy-apps.patch
  0009-seq-Simplify-snd_seq_extract_output.patch
  0010-seq-Check-protocol-compatibility-with-the-current-ve.patch
- Clean up spec file</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1706875200">- Updated to alsa-lib 1.2.11:
  * auto-tools fixes, versioned symbol fixes
  * support dB TLVs for single controls
  * various PCM updates, including subformat extensions
  * UMP and sequencer API fixes
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.10_v1.2.11#alsa-lib
- Dropped obsoleted patches:
  0001-control.h-Fix-ump-header-file-detection.patch
  0002-global.h-move-__STRING-macro-outside-PIC-ifdef-block.patch
  0003-pcm-Fix-segfault-with-32bit-libs.patch
  0004-reshuffle-included-files-to-include-config.h-as-firs.patch
  0005-seq-Fix-typos-in-symbol-version-definitions.patch
  0006-seq-Fix-invalid-sanity-check-in-snd_seq_set_input_bu.patch
  0007-mixer-simple-Support-dB-TLVs-for-CTL_SINGLE-controls.patch
  0008-seq-Clear-UMP-event-flag-for-legacy-apps.patch
  0009-seq-Simplify-snd_seq_extract_output.patch
  0010-seq-Check-protocol-compatibility-with-the-current-ve.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1718280000">- Update to alsa-lib 1.2.12:
  * pcm: plug support for iec958 subframe samples
  * pcm: ladspa - Skip missing ladspa directories
  * topology: correct version script path
  * ucm: define and describe Syntax 7
  * async handler cleanup fix
  * conf updates
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.11_v1.2.12#alsa-lib</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1731412800">- Update to alsa-lib 1.2.13:
  * static build fixes
  * documentation update for control remap API
  * PCM dmix fixes
  * pcm: implement snd_pcm_hw_params_get_sync() and obsolete snd_pcm_info_get_sync()
  * ump: Add a function to provide the packet word length of a UMP type
  * seq: Add snd_seq_{get|set}_ump_is_midi1() API functions
  * seq: Add API functions to set different tempo base values
  * seq: Add API helper functions for creating UMP Endpoint and Blocks
  * documentation fixes for UMP and sequencer API
  * test: Add an example programs for UMP
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.12_v1.2.13#alsa-lib
- Conditionally take libtool</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1731672000">- Fix incorrect versioned symbol for snd_seq_has_queue_tempo_base:
  0001-src-Versions.in.in-Update-_tempo_base-name.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1732449600">- Fix header inclusions for implicit dependnecies (bsc#1233682)
  0002-configure-Make-sequencer-dependent-on-rawmidi.patch
  0003-seq-include-UMP-headers.patch</changelog>
</package>
<package pkgid="8c6a63ab6d3d507b5524a635fcec38cce784daab6ea939efa85da2e4129734559a6339bd51f221fa4ad0754203d5e42282acd2391b5d88aacc1369708749c4b9" name="alsa-devel-32bit" arch="x86_64">
  <version epoch="0" ver="1.2.13" rel="2.0.2.1.sr20241103"/>
  <changelog author="Ferdinand Thiessen &lt;rpm@fthiessen.de&gt;" date="1622462400">- Update to version 1.2.5
  * https://www.alsa-project.org/wiki/Changes_v1.2.4_v1.2.5#alsa-lib
- Drop upstream fixed patches
  * 0001-dlmisc-the-snd_plugin_dir_set-snd_plugin_dir-must-be.patch
  * 0002-dlmisc-fix-snd_plugin_dir-locking-for-not-DL_ORIGIN_.patch
  * 0003-pcm-snd_pcm_mmap_readi-fix-typo-in-comment.patch
  * 0004-topology-use-inclusive-language-for-bclk.patch
  * 0005-topology-use-inclusive-language-for-fsync.patch
  * 0006-topology-use-inclusive-language-in-documentation.patch
  * 0007-pcm-set-the-snd_pcm_ioplug_status-tstamp-field.patch
  * 0009-pcm-Add-snd_pcm_audio_tstamp_type_t-constants.patch
  * 0045-pcm-direct-Fix-the-missing-appl_ptr-update.patch
  * 0019-pcm-fix-__snd_pcm_state-return-value.patch
  * 0025-pcm-plugin-optimize-sync-in-snd_pcm_plugin_status.patch
  * 0026-Revert-pcm_plugin-fix-delay.patch
  * 0014-rawmidi-fix-memory-leak-in-snd_rawmidi_virtual_open.patch
  * 0037-topology-tplg_decode_pcm-add-missing-log-argument-co.patch
  * 0040-topology-sort_config-cleanups-use-goto-for-the-error.patch
  * 0028-pcm-rate-tidy-up-snd_pcm_rate_avail_update.patch
  * 0046-pcm-ioplug-Pass-appl_ptr-and-hw_ptr-in-snd_pcm_statu.patch
  * 0030-pcm-rate-use-pcm_frame_diff-in-snd_pcm_rate_playback.patch
  * 0047-pcm-null-Pass-appl_ptr-and-hw_ptr-in-snd_pcm_status.patch
  * 0043-pcm-dmix-dshare-delay-calculation-fixes-and-cleanups.patch
  * 0042-pcm_plugin-set-the-initial-hw_ptr-appl_ptr-from-the-.patch
  * 0011-pcm-Fix-a-typo-in-SND_PCM_AUDIO_TSTAMP_TYPE_LAST-def.patch
  * 0017-pcm_multi-remove-dead-assignment-from-_snd_pcm_multi.patch
  * 0027-pcm-ioplug-fix-the-delay-calculation-in-the-status-c.patch
  * 0041-conf-USB-add-Xonar-U7-MKII-to-USB-Audio.pcm.iec958_d.patch
  * 0016-pcm-remove-dead-assignments-from-snd_pcm_rate_-commi.patch
  * 0035-topology-tplg_pprint_integer-fix-coverity-uninitaliz.patch
  * 0034-ucm-fix-possible-memory-leak-in-parse_verb_file.patch
  * 0021-conf-fix-return-code-in-_snd_config_load_with_includ.patch
  * 0023-pcm-plugin-status-revert-the-recent-changes.patch
  * 0020-confmisc-fix-memory-leak-in-snd_func_concat.patch
  * 0029-pcm-ioplug-fix-the-delay-calculation-for-old-plugins.patch
  * 0039-ucm-uc_mgr_substitute_tree-fix-use-after-free.patch
  * 0024-pcm-plugin-tidy-snd_pcm_plugin_avail_update.patch
  * 0010-test-audio_time-Make-use-of-SND_PCM_AUDIO_TSTAMP_TYP.patch
  * 0033-pcm-rate-fix-the-capture-delay-values.patch
  * 0015-timer-fix-sizeof-operator-mismatch-in-snd_timer_quer.patch
  * 0036-topology-tplg_add_widget_object-do-not-use-invalid-e.patch
  * 0044-topology-fix-parse_tuple_set-remove-dead-condition-c.patch
  * 0038-topology-parse_tuple_set-remove-dead-condition-code.patch
  * 0018-conf-fix-get_hexachar-return-value.patch
  * 0013-ucm-fix-bad-frees-in-get_list0-and-get_list20.patch
  * 0012-conf-fix-use-after-free-in-_snd_config_load_with_inc.patch
  * 0031-pcm-plugin-fix-status-code-for-capture.patch
  * 0048-pcm-share-Pass-appl_ptr-and-hw_ptr-in-snd_pcm_status.patch
  * 0032-pcm-rate-use-pcm_frame_diff-on-related-places.patch
  * 0022-pcm-plugin-status-fix-the-return-value-regression.patch</changelog>
  <changelog author="tiwai@suse.de" date="1623240000">- Fix regression in config read and UCM handling on pipewire and
  pulseaudio (boo#1187079, boo#1187033):
  0001-conf-fix-load_for_all_cards.patch
  0002-ucm-add-_alibpref-to-get-the-private-device-prefix.patch
  0003-ucm-fix-_alibpref-string-add-.-delimiter-to-the-end.patch</changelog>
  <changelog author="tiwai@suse.de" date="1623672000">- Update to version 1.2.5.1:
  a bug fix release, including previous patches:
  https://www.alsa-project.org/wiki/Changes_v1.2.5_v1.2.5.1
- Drop obsoleted patches:
  0001-conf-fix-load_for_all_cards.patch
  0002-ucm-add-_alibpref-to-get-the-private-device-prefix.patch
  0003-ucm-fix-_alibpref-string-add-.-delimiter-to-the-end.patch</changelog>
  <changelog author="tiwai@suse.de" date="1638792000">- Update to version 1.2.6:
  lots of changes, including UCM and config updates and rawmidi
  framing mode support: for details, see below
  https://www.alsa-project.org/wiki/Changes_v1.2.5.1_v1.2.6#alsa-lib
- Add *.sig file for the source tarball</changelog>
  <changelog author="tiwai@suse.de" date="1639137600">- Update to version 1.2.6.1:
  a minor fix release:
  * conf: fix the device parsing when arguments has no defaults
  * conf: accept '_' character in the variable name</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1654084800">- Update to version 1.2.7:
  more extended UCM API, PCM rate,multi,direct plugin fixes and
  enhancements, compilation fixes, etc.  For details see:
  https://www.alsa-project.org/wiki/Changes_v1.2.6.3_v1.2.7#alsa-lib</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1654516800">- Backport upstream fixes for 32bit inode and ELD parsing:
  0001-conf-Use-ino64_t-to-save-and-compare-inode-numbers.patch
  0002-control-eld-fix-the-decoding-for-older-hw.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1655726400">- Update to version 1.2.7.1: minor bug fixes, including the previous
  patches.  For details, see
    https://www.alsa-project.org/wiki/Changes_v1.2.7_v1.2.7.1#alsa-lib
- Drop obsoleted patches:
  0001-conf-Use-ino64_t-to-save-and-compare-inode-numbers.patch
  0002-control-eld-fix-the-decoding-for-older-hw.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1658145600">- Update to version 1.2.7.2: minor updates, including fixes for PCM
  share plugin, rawmidi and UCM</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1666699200">- Update to version 1.2.8 (jsc#PED-850):
  add FreeBSD/NetBD/OpenBSD build support, fixes in control namehint,
  various PCM plugins and UCM.  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.7.2_v1.2.8
- Add keyring</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1683547200">- Update to version 1.2.9:
  * Versioned symbol updates
  * Various fixes for building on *BSD and Android
  * Fixes and enhancements of auto silencing and playback drain
  * Add SND_CTL_EINTR open mode at PCM
  * Avoid endless loop in snd_pcm_sw_params_default()
  * Fixes in PCM rate, route/softvol plugins
  * Fixes in topology API parser, cleanups
  * Enhancements in latency test program
  * Minor code cleanup and memory leak fixes in UCM API
  * emu10k1 config cleanup
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.8_v1.2.9#alsa-lib</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1693828800">- Update to version 1.2.10 (jsc#PED-6566):
  * MIDI 2.0 feature support
  * build fixes for various platforms
  * various documentation fixes
  * misc topology fixes
  * ucm fixes and cleanups
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.9_v1.2.10#alsa-lib
- Took upstream fix for possible build errors:
  0001-control.h-Fix-ump-header-file-detection.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1694260800">- Upstream fix backport:
  0002-global.h-move-__STRING-macro-outside-PIC-ifdef-block.patch
- Upstream fix for PCM segfault regression (bsc#1215167):
  0003-pcm-Fix-segfault-with-32bit-libs.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1695038400">- More upstream fix for incosistent compile conditions:
  0004-reshuffle-included-files-to-include-config.h-as-firs.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1696939200">- Fix symbol version:
  0005-seq-Fix-typos-in-symbol-version-definitions.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1699358400">- Backport upstream fixes for sequencer and mixer:
  0006-seq-Fix-invalid-sanity-check-in-snd_seq_set_input_bu.patch
  0007-mixer-simple-Support-dB-TLVs-for-CTL_SINGLE-controls.patch
  0008-seq-Clear-UMP-event-flag-for-legacy-apps.patch
  0009-seq-Simplify-snd_seq_extract_output.patch
  0010-seq-Check-protocol-compatibility-with-the-current-ve.patch
- Clean up spec file</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1706875200">- Updated to alsa-lib 1.2.11:
  * auto-tools fixes, versioned symbol fixes
  * support dB TLVs for single controls
  * various PCM updates, including subformat extensions
  * UMP and sequencer API fixes
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.10_v1.2.11#alsa-lib
- Dropped obsoleted patches:
  0001-control.h-Fix-ump-header-file-detection.patch
  0002-global.h-move-__STRING-macro-outside-PIC-ifdef-block.patch
  0003-pcm-Fix-segfault-with-32bit-libs.patch
  0004-reshuffle-included-files-to-include-config.h-as-firs.patch
  0005-seq-Fix-typos-in-symbol-version-definitions.patch
  0006-seq-Fix-invalid-sanity-check-in-snd_seq_set_input_bu.patch
  0007-mixer-simple-Support-dB-TLVs-for-CTL_SINGLE-controls.patch
  0008-seq-Clear-UMP-event-flag-for-legacy-apps.patch
  0009-seq-Simplify-snd_seq_extract_output.patch
  0010-seq-Check-protocol-compatibility-with-the-current-ve.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1718280000">- Update to alsa-lib 1.2.12:
  * pcm: plug support for iec958 subframe samples
  * pcm: ladspa - Skip missing ladspa directories
  * topology: correct version script path
  * ucm: define and describe Syntax 7
  * async handler cleanup fix
  * conf updates
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.11_v1.2.12#alsa-lib</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1731412800">- Update to alsa-lib 1.2.13:
  * static build fixes
  * documentation update for control remap API
  * PCM dmix fixes
  * pcm: implement snd_pcm_hw_params_get_sync() and obsolete snd_pcm_info_get_sync()
  * ump: Add a function to provide the packet word length of a UMP type
  * seq: Add snd_seq_{get|set}_ump_is_midi1() API functions
  * seq: Add API functions to set different tempo base values
  * seq: Add API helper functions for creating UMP Endpoint and Blocks
  * documentation fixes for UMP and sequencer API
  * test: Add an example programs for UMP
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.12_v1.2.13#alsa-lib
- Conditionally take libtool</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1731672000">- Fix incorrect versioned symbol for snd_seq_has_queue_tempo_base:
  0001-src-Versions.in.in-Update-_tempo_base-name.patch</changelog>
</package>
<package pkgid="f91cb538426d2e6c3a620d6722108156f8a6fdc30d450ac7b12968ee05bd3fbb02d7d88e3804542822cc8233cf24b02bee7c4654eb1f9000453490733f5cd44f" name="alsa-devel-32bit" arch="x86_64">
  <version epoch="0" ver="1.2.13" rel="3.1"/>
  <changelog author="tiwai@suse.de" date="1623240000">- Fix regression in config read and UCM handling on pipewire and
  pulseaudio (boo#1187079, boo#1187033):
  0001-conf-fix-load_for_all_cards.patch
  0002-ucm-add-_alibpref-to-get-the-private-device-prefix.patch
  0003-ucm-fix-_alibpref-string-add-.-delimiter-to-the-end.patch</changelog>
  <changelog author="tiwai@suse.de" date="1623672000">- Update to version 1.2.5.1:
  a bug fix release, including previous patches:
  https://www.alsa-project.org/wiki/Changes_v1.2.5_v1.2.5.1
- Drop obsoleted patches:
  0001-conf-fix-load_for_all_cards.patch
  0002-ucm-add-_alibpref-to-get-the-private-device-prefix.patch
  0003-ucm-fix-_alibpref-string-add-.-delimiter-to-the-end.patch</changelog>
  <changelog author="tiwai@suse.de" date="1638792000">- Update to version 1.2.6:
  lots of changes, including UCM and config updates and rawmidi
  framing mode support: for details, see below
  https://www.alsa-project.org/wiki/Changes_v1.2.5.1_v1.2.6#alsa-lib
- Add *.sig file for the source tarball</changelog>
  <changelog author="tiwai@suse.de" date="1639137600">- Update to version 1.2.6.1:
  a minor fix release:
  * conf: fix the device parsing when arguments has no defaults
  * conf: accept '_' character in the variable name</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1654084800">- Update to version 1.2.7:
  more extended UCM API, PCM rate,multi,direct plugin fixes and
  enhancements, compilation fixes, etc.  For details see:
  https://www.alsa-project.org/wiki/Changes_v1.2.6.3_v1.2.7#alsa-lib</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1654516800">- Backport upstream fixes for 32bit inode and ELD parsing:
  0001-conf-Use-ino64_t-to-save-and-compare-inode-numbers.patch
  0002-control-eld-fix-the-decoding-for-older-hw.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1655726400">- Update to version 1.2.7.1: minor bug fixes, including the previous
  patches.  For details, see
    https://www.alsa-project.org/wiki/Changes_v1.2.7_v1.2.7.1#alsa-lib
- Drop obsoleted patches:
  0001-conf-Use-ino64_t-to-save-and-compare-inode-numbers.patch
  0002-control-eld-fix-the-decoding-for-older-hw.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1658145600">- Update to version 1.2.7.2: minor updates, including fixes for PCM
  share plugin, rawmidi and UCM</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1666699200">- Update to version 1.2.8 (jsc#PED-850):
  add FreeBSD/NetBD/OpenBSD build support, fixes in control namehint,
  various PCM plugins and UCM.  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.7.2_v1.2.8
- Add keyring</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1683547200">- Update to version 1.2.9:
  * Versioned symbol updates
  * Various fixes for building on *BSD and Android
  * Fixes and enhancements of auto silencing and playback drain
  * Add SND_CTL_EINTR open mode at PCM
  * Avoid endless loop in snd_pcm_sw_params_default()
  * Fixes in PCM rate, route/softvol plugins
  * Fixes in topology API parser, cleanups
  * Enhancements in latency test program
  * Minor code cleanup and memory leak fixes in UCM API
  * emu10k1 config cleanup
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.8_v1.2.9#alsa-lib</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1693828800">- Update to version 1.2.10 (jsc#PED-6566):
  * MIDI 2.0 feature support
  * build fixes for various platforms
  * various documentation fixes
  * misc topology fixes
  * ucm fixes and cleanups
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.9_v1.2.10#alsa-lib
- Took upstream fix for possible build errors:
  0001-control.h-Fix-ump-header-file-detection.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1694260800">- Upstream fix backport:
  0002-global.h-move-__STRING-macro-outside-PIC-ifdef-block.patch
- Upstream fix for PCM segfault regression (bsc#1215167):
  0003-pcm-Fix-segfault-with-32bit-libs.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1695038400">- More upstream fix for incosistent compile conditions:
  0004-reshuffle-included-files-to-include-config.h-as-firs.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1696939200">- Fix symbol version:
  0005-seq-Fix-typos-in-symbol-version-definitions.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1699358400">- Backport upstream fixes for sequencer and mixer:
  0006-seq-Fix-invalid-sanity-check-in-snd_seq_set_input_bu.patch
  0007-mixer-simple-Support-dB-TLVs-for-CTL_SINGLE-controls.patch
  0008-seq-Clear-UMP-event-flag-for-legacy-apps.patch
  0009-seq-Simplify-snd_seq_extract_output.patch
  0010-seq-Check-protocol-compatibility-with-the-current-ve.patch
- Clean up spec file</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1706875200">- Updated to alsa-lib 1.2.11:
  * auto-tools fixes, versioned symbol fixes
  * support dB TLVs for single controls
  * various PCM updates, including subformat extensions
  * UMP and sequencer API fixes
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.10_v1.2.11#alsa-lib
- Dropped obsoleted patches:
  0001-control.h-Fix-ump-header-file-detection.patch
  0002-global.h-move-__STRING-macro-outside-PIC-ifdef-block.patch
  0003-pcm-Fix-segfault-with-32bit-libs.patch
  0004-reshuffle-included-files-to-include-config.h-as-firs.patch
  0005-seq-Fix-typos-in-symbol-version-definitions.patch
  0006-seq-Fix-invalid-sanity-check-in-snd_seq_set_input_bu.patch
  0007-mixer-simple-Support-dB-TLVs-for-CTL_SINGLE-controls.patch
  0008-seq-Clear-UMP-event-flag-for-legacy-apps.patch
  0009-seq-Simplify-snd_seq_extract_output.patch
  0010-seq-Check-protocol-compatibility-with-the-current-ve.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1718280000">- Update to alsa-lib 1.2.12:
  * pcm: plug support for iec958 subframe samples
  * pcm: ladspa - Skip missing ladspa directories
  * topology: correct version script path
  * ucm: define and describe Syntax 7
  * async handler cleanup fix
  * conf updates
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.11_v1.2.12#alsa-lib</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1731412800">- Update to alsa-lib 1.2.13:
  * static build fixes
  * documentation update for control remap API
  * PCM dmix fixes
  * pcm: implement snd_pcm_hw_params_get_sync() and obsolete snd_pcm_info_get_sync()
  * ump: Add a function to provide the packet word length of a UMP type
  * seq: Add snd_seq_{get|set}_ump_is_midi1() API functions
  * seq: Add API functions to set different tempo base values
  * seq: Add API helper functions for creating UMP Endpoint and Blocks
  * documentation fixes for UMP and sequencer API
  * test: Add an example programs for UMP
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.12_v1.2.13#alsa-lib
- Conditionally take libtool</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1731672000">- Fix incorrect versioned symbol for snd_seq_has_queue_tempo_base:
  0001-src-Versions.in.in-Update-_tempo_base-name.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1732449600">- Fix header inclusions for implicit dependnecies (bsc#1233682)
  0002-configure-Make-sequencer-dependent-on-rawmidi.patch
  0003-seq-include-UMP-headers.patch</changelog>
</package>
<package pkgid="0cd52e5a8a2a9686880809766ff6048d26c4f9a50636527a0606fabc686e55522e8176532110e87f70be18026c65329d856a2ab91715631260cdbe45f251c4a9" name="alsa-docs" arch="noarch">
  <version epoch="0" ver="1.2.13" rel="2.0.2.1.sr20241103"/>
  <changelog author="Ferdinand Thiessen &lt;rpm@fthiessen.de&gt;" date="1622462400">- Update to version 1.2.5
  * https://www.alsa-project.org/wiki/Changes_v1.2.4_v1.2.5#alsa-lib
- Drop upstream fixed patches
  * 0001-dlmisc-the-snd_plugin_dir_set-snd_plugin_dir-must-be.patch
  * 0002-dlmisc-fix-snd_plugin_dir-locking-for-not-DL_ORIGIN_.patch
  * 0003-pcm-snd_pcm_mmap_readi-fix-typo-in-comment.patch
  * 0004-topology-use-inclusive-language-for-bclk.patch
  * 0005-topology-use-inclusive-language-for-fsync.patch
  * 0006-topology-use-inclusive-language-in-documentation.patch
  * 0007-pcm-set-the-snd_pcm_ioplug_status-tstamp-field.patch
  * 0009-pcm-Add-snd_pcm_audio_tstamp_type_t-constants.patch
  * 0045-pcm-direct-Fix-the-missing-appl_ptr-update.patch
  * 0019-pcm-fix-__snd_pcm_state-return-value.patch
  * 0025-pcm-plugin-optimize-sync-in-snd_pcm_plugin_status.patch
  * 0026-Revert-pcm_plugin-fix-delay.patch
  * 0014-rawmidi-fix-memory-leak-in-snd_rawmidi_virtual_open.patch
  * 0037-topology-tplg_decode_pcm-add-missing-log-argument-co.patch
  * 0040-topology-sort_config-cleanups-use-goto-for-the-error.patch
  * 0028-pcm-rate-tidy-up-snd_pcm_rate_avail_update.patch
  * 0046-pcm-ioplug-Pass-appl_ptr-and-hw_ptr-in-snd_pcm_statu.patch
  * 0030-pcm-rate-use-pcm_frame_diff-in-snd_pcm_rate_playback.patch
  * 0047-pcm-null-Pass-appl_ptr-and-hw_ptr-in-snd_pcm_status.patch
  * 0043-pcm-dmix-dshare-delay-calculation-fixes-and-cleanups.patch
  * 0042-pcm_plugin-set-the-initial-hw_ptr-appl_ptr-from-the-.patch
  * 0011-pcm-Fix-a-typo-in-SND_PCM_AUDIO_TSTAMP_TYPE_LAST-def.patch
  * 0017-pcm_multi-remove-dead-assignment-from-_snd_pcm_multi.patch
  * 0027-pcm-ioplug-fix-the-delay-calculation-in-the-status-c.patch
  * 0041-conf-USB-add-Xonar-U7-MKII-to-USB-Audio.pcm.iec958_d.patch
  * 0016-pcm-remove-dead-assignments-from-snd_pcm_rate_-commi.patch
  * 0035-topology-tplg_pprint_integer-fix-coverity-uninitaliz.patch
  * 0034-ucm-fix-possible-memory-leak-in-parse_verb_file.patch
  * 0021-conf-fix-return-code-in-_snd_config_load_with_includ.patch
  * 0023-pcm-plugin-status-revert-the-recent-changes.patch
  * 0020-confmisc-fix-memory-leak-in-snd_func_concat.patch
  * 0029-pcm-ioplug-fix-the-delay-calculation-for-old-plugins.patch
  * 0039-ucm-uc_mgr_substitute_tree-fix-use-after-free.patch
  * 0024-pcm-plugin-tidy-snd_pcm_plugin_avail_update.patch
  * 0010-test-audio_time-Make-use-of-SND_PCM_AUDIO_TSTAMP_TYP.patch
  * 0033-pcm-rate-fix-the-capture-delay-values.patch
  * 0015-timer-fix-sizeof-operator-mismatch-in-snd_timer_quer.patch
  * 0036-topology-tplg_add_widget_object-do-not-use-invalid-e.patch
  * 0044-topology-fix-parse_tuple_set-remove-dead-condition-c.patch
  * 0038-topology-parse_tuple_set-remove-dead-condition-code.patch
  * 0018-conf-fix-get_hexachar-return-value.patch
  * 0013-ucm-fix-bad-frees-in-get_list0-and-get_list20.patch
  * 0012-conf-fix-use-after-free-in-_snd_config_load_with_inc.patch
  * 0031-pcm-plugin-fix-status-code-for-capture.patch
  * 0048-pcm-share-Pass-appl_ptr-and-hw_ptr-in-snd_pcm_status.patch
  * 0032-pcm-rate-use-pcm_frame_diff-on-related-places.patch
  * 0022-pcm-plugin-status-fix-the-return-value-regression.patch</changelog>
  <changelog author="tiwai@suse.de" date="1623240000">- Fix regression in config read and UCM handling on pipewire and
  pulseaudio (boo#1187079, boo#1187033):
  0001-conf-fix-load_for_all_cards.patch
  0002-ucm-add-_alibpref-to-get-the-private-device-prefix.patch
  0003-ucm-fix-_alibpref-string-add-.-delimiter-to-the-end.patch</changelog>
  <changelog author="tiwai@suse.de" date="1623672000">- Update to version 1.2.5.1:
  a bug fix release, including previous patches:
  https://www.alsa-project.org/wiki/Changes_v1.2.5_v1.2.5.1
- Drop obsoleted patches:
  0001-conf-fix-load_for_all_cards.patch
  0002-ucm-add-_alibpref-to-get-the-private-device-prefix.patch
  0003-ucm-fix-_alibpref-string-add-.-delimiter-to-the-end.patch</changelog>
  <changelog author="tiwai@suse.de" date="1638792000">- Update to version 1.2.6:
  lots of changes, including UCM and config updates and rawmidi
  framing mode support: for details, see below
  https://www.alsa-project.org/wiki/Changes_v1.2.5.1_v1.2.6#alsa-lib
- Add *.sig file for the source tarball</changelog>
  <changelog author="tiwai@suse.de" date="1639137600">- Update to version 1.2.6.1:
  a minor fix release:
  * conf: fix the device parsing when arguments has no defaults
  * conf: accept '_' character in the variable name</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1654084800">- Update to version 1.2.7:
  more extended UCM API, PCM rate,multi,direct plugin fixes and
  enhancements, compilation fixes, etc.  For details see:
  https://www.alsa-project.org/wiki/Changes_v1.2.6.3_v1.2.7#alsa-lib</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1654516800">- Backport upstream fixes for 32bit inode and ELD parsing:
  0001-conf-Use-ino64_t-to-save-and-compare-inode-numbers.patch
  0002-control-eld-fix-the-decoding-for-older-hw.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1655726400">- Update to version 1.2.7.1: minor bug fixes, including the previous
  patches.  For details, see
    https://www.alsa-project.org/wiki/Changes_v1.2.7_v1.2.7.1#alsa-lib
- Drop obsoleted patches:
  0001-conf-Use-ino64_t-to-save-and-compare-inode-numbers.patch
  0002-control-eld-fix-the-decoding-for-older-hw.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1658145600">- Update to version 1.2.7.2: minor updates, including fixes for PCM
  share plugin, rawmidi and UCM</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1666699200">- Update to version 1.2.8 (jsc#PED-850):
  add FreeBSD/NetBD/OpenBSD build support, fixes in control namehint,
  various PCM plugins and UCM.  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.7.2_v1.2.8
- Add keyring</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1683547200">- Update to version 1.2.9:
  * Versioned symbol updates
  * Various fixes for building on *BSD and Android
  * Fixes and enhancements of auto silencing and playback drain
  * Add SND_CTL_EINTR open mode at PCM
  * Avoid endless loop in snd_pcm_sw_params_default()
  * Fixes in PCM rate, route/softvol plugins
  * Fixes in topology API parser, cleanups
  * Enhancements in latency test program
  * Minor code cleanup and memory leak fixes in UCM API
  * emu10k1 config cleanup
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.8_v1.2.9#alsa-lib</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1693828800">- Update to version 1.2.10 (jsc#PED-6566):
  * MIDI 2.0 feature support
  * build fixes for various platforms
  * various documentation fixes
  * misc topology fixes
  * ucm fixes and cleanups
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.9_v1.2.10#alsa-lib
- Took upstream fix for possible build errors:
  0001-control.h-Fix-ump-header-file-detection.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1694260800">- Upstream fix backport:
  0002-global.h-move-__STRING-macro-outside-PIC-ifdef-block.patch
- Upstream fix for PCM segfault regression (bsc#1215167):
  0003-pcm-Fix-segfault-with-32bit-libs.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1695038400">- More upstream fix for incosistent compile conditions:
  0004-reshuffle-included-files-to-include-config.h-as-firs.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1696939200">- Fix symbol version:
  0005-seq-Fix-typos-in-symbol-version-definitions.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1699358400">- Backport upstream fixes for sequencer and mixer:
  0006-seq-Fix-invalid-sanity-check-in-snd_seq_set_input_bu.patch
  0007-mixer-simple-Support-dB-TLVs-for-CTL_SINGLE-controls.patch
  0008-seq-Clear-UMP-event-flag-for-legacy-apps.patch
  0009-seq-Simplify-snd_seq_extract_output.patch
  0010-seq-Check-protocol-compatibility-with-the-current-ve.patch
- Clean up spec file</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1706875200">- Updated to alsa-lib 1.2.11:
  * auto-tools fixes, versioned symbol fixes
  * support dB TLVs for single controls
  * various PCM updates, including subformat extensions
  * UMP and sequencer API fixes
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.10_v1.2.11#alsa-lib
- Dropped obsoleted patches:
  0001-control.h-Fix-ump-header-file-detection.patch
  0002-global.h-move-__STRING-macro-outside-PIC-ifdef-block.patch
  0003-pcm-Fix-segfault-with-32bit-libs.patch
  0004-reshuffle-included-files-to-include-config.h-as-firs.patch
  0005-seq-Fix-typos-in-symbol-version-definitions.patch
  0006-seq-Fix-invalid-sanity-check-in-snd_seq_set_input_bu.patch
  0007-mixer-simple-Support-dB-TLVs-for-CTL_SINGLE-controls.patch
  0008-seq-Clear-UMP-event-flag-for-legacy-apps.patch
  0009-seq-Simplify-snd_seq_extract_output.patch
  0010-seq-Check-protocol-compatibility-with-the-current-ve.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1718280000">- Update to alsa-lib 1.2.12:
  * pcm: plug support for iec958 subframe samples
  * pcm: ladspa - Skip missing ladspa directories
  * topology: correct version script path
  * ucm: define and describe Syntax 7
  * async handler cleanup fix
  * conf updates
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.11_v1.2.12#alsa-lib</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1731412800">- Update to alsa-lib 1.2.13:
  * static build fixes
  * documentation update for control remap API
  * PCM dmix fixes
  * pcm: implement snd_pcm_hw_params_get_sync() and obsolete snd_pcm_info_get_sync()
  * ump: Add a function to provide the packet word length of a UMP type
  * seq: Add snd_seq_{get|set}_ump_is_midi1() API functions
  * seq: Add API functions to set different tempo base values
  * seq: Add API helper functions for creating UMP Endpoint and Blocks
  * documentation fixes for UMP and sequencer API
  * test: Add an example programs for UMP
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.12_v1.2.13#alsa-lib
- Conditionally take libtool</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1731672000">- Fix incorrect versioned symbol for snd_seq_has_queue_tempo_base:
  0001-src-Versions.in.in-Update-_tempo_base-name.patch</changelog>
</package>
<package pkgid="8b9816659c706c9213de3aabfc8b843502ceeba5617678be60ed6af831ad388aebd4f9ce26b2f89e0de78c9bb506b83b16ad308cc120f36b8edbfac77f8b1ca3" name="alsa-docs" arch="noarch">
  <version epoch="0" ver="1.2.13" rel="3.1"/>
  <changelog author="tiwai@suse.de" date="1623240000">- Fix regression in config read and UCM handling on pipewire and
  pulseaudio (boo#1187079, boo#1187033):
  0001-conf-fix-load_for_all_cards.patch
  0002-ucm-add-_alibpref-to-get-the-private-device-prefix.patch
  0003-ucm-fix-_alibpref-string-add-.-delimiter-to-the-end.patch</changelog>
  <changelog author="tiwai@suse.de" date="1623672000">- Update to version 1.2.5.1:
  a bug fix release, including previous patches:
  https://www.alsa-project.org/wiki/Changes_v1.2.5_v1.2.5.1
- Drop obsoleted patches:
  0001-conf-fix-load_for_all_cards.patch
  0002-ucm-add-_alibpref-to-get-the-private-device-prefix.patch
  0003-ucm-fix-_alibpref-string-add-.-delimiter-to-the-end.patch</changelog>
  <changelog author="tiwai@suse.de" date="1638792000">- Update to version 1.2.6:
  lots of changes, including UCM and config updates and rawmidi
  framing mode support: for details, see below
  https://www.alsa-project.org/wiki/Changes_v1.2.5.1_v1.2.6#alsa-lib
- Add *.sig file for the source tarball</changelog>
  <changelog author="tiwai@suse.de" date="1639137600">- Update to version 1.2.6.1:
  a minor fix release:
  * conf: fix the device parsing when arguments has no defaults
  * conf: accept '_' character in the variable name</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1654084800">- Update to version 1.2.7:
  more extended UCM API, PCM rate,multi,direct plugin fixes and
  enhancements, compilation fixes, etc.  For details see:
  https://www.alsa-project.org/wiki/Changes_v1.2.6.3_v1.2.7#alsa-lib</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1654516800">- Backport upstream fixes for 32bit inode and ELD parsing:
  0001-conf-Use-ino64_t-to-save-and-compare-inode-numbers.patch
  0002-control-eld-fix-the-decoding-for-older-hw.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1655726400">- Update to version 1.2.7.1: minor bug fixes, including the previous
  patches.  For details, see
    https://www.alsa-project.org/wiki/Changes_v1.2.7_v1.2.7.1#alsa-lib
- Drop obsoleted patches:
  0001-conf-Use-ino64_t-to-save-and-compare-inode-numbers.patch
  0002-control-eld-fix-the-decoding-for-older-hw.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1658145600">- Update to version 1.2.7.2: minor updates, including fixes for PCM
  share plugin, rawmidi and UCM</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1666699200">- Update to version 1.2.8 (jsc#PED-850):
  add FreeBSD/NetBD/OpenBSD build support, fixes in control namehint,
  various PCM plugins and UCM.  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.7.2_v1.2.8
- Add keyring</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1683547200">- Update to version 1.2.9:
  * Versioned symbol updates
  * Various fixes for building on *BSD and Android
  * Fixes and enhancements of auto silencing and playback drain
  * Add SND_CTL_EINTR open mode at PCM
  * Avoid endless loop in snd_pcm_sw_params_default()
  * Fixes in PCM rate, route/softvol plugins
  * Fixes in topology API parser, cleanups
  * Enhancements in latency test program
  * Minor code cleanup and memory leak fixes in UCM API
  * emu10k1 config cleanup
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.8_v1.2.9#alsa-lib</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1693828800">- Update to version 1.2.10 (jsc#PED-6566):
  * MIDI 2.0 feature support
  * build fixes for various platforms
  * various documentation fixes
  * misc topology fixes
  * ucm fixes and cleanups
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.9_v1.2.10#alsa-lib
- Took upstream fix for possible build errors:
  0001-control.h-Fix-ump-header-file-detection.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1694260800">- Upstream fix backport:
  0002-global.h-move-__STRING-macro-outside-PIC-ifdef-block.patch
- Upstream fix for PCM segfault regression (bsc#1215167):
  0003-pcm-Fix-segfault-with-32bit-libs.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1695038400">- More upstream fix for incosistent compile conditions:
  0004-reshuffle-included-files-to-include-config.h-as-firs.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1696939200">- Fix symbol version:
  0005-seq-Fix-typos-in-symbol-version-definitions.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1699358400">- Backport upstream fixes for sequencer and mixer:
  0006-seq-Fix-invalid-sanity-check-in-snd_seq_set_input_bu.patch
  0007-mixer-simple-Support-dB-TLVs-for-CTL_SINGLE-controls.patch
  0008-seq-Clear-UMP-event-flag-for-legacy-apps.patch
  0009-seq-Simplify-snd_seq_extract_output.patch
  0010-seq-Check-protocol-compatibility-with-the-current-ve.patch
- Clean up spec file</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1706875200">- Updated to alsa-lib 1.2.11:
  * auto-tools fixes, versioned symbol fixes
  * support dB TLVs for single controls
  * various PCM updates, including subformat extensions
  * UMP and sequencer API fixes
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.10_v1.2.11#alsa-lib
- Dropped obsoleted patches:
  0001-control.h-Fix-ump-header-file-detection.patch
  0002-global.h-move-__STRING-macro-outside-PIC-ifdef-block.patch
  0003-pcm-Fix-segfault-with-32bit-libs.patch
  0004-reshuffle-included-files-to-include-config.h-as-firs.patch
  0005-seq-Fix-typos-in-symbol-version-definitions.patch
  0006-seq-Fix-invalid-sanity-check-in-snd_seq_set_input_bu.patch
  0007-mixer-simple-Support-dB-TLVs-for-CTL_SINGLE-controls.patch
  0008-seq-Clear-UMP-event-flag-for-legacy-apps.patch
  0009-seq-Simplify-snd_seq_extract_output.patch
  0010-seq-Check-protocol-compatibility-with-the-current-ve.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1718280000">- Update to alsa-lib 1.2.12:
  * pcm: plug support for iec958 subframe samples
  * pcm: ladspa - Skip missing ladspa directories
  * topology: correct version script path
  * ucm: define and describe Syntax 7
  * async handler cleanup fix
  * conf updates
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.11_v1.2.12#alsa-lib</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1731412800">- Update to alsa-lib 1.2.13:
  * static build fixes
  * documentation update for control remap API
  * PCM dmix fixes
  * pcm: implement snd_pcm_hw_params_get_sync() and obsolete snd_pcm_info_get_sync()
  * ump: Add a function to provide the packet word length of a UMP type
  * seq: Add snd_seq_{get|set}_ump_is_midi1() API functions
  * seq: Add API functions to set different tempo base values
  * seq: Add API helper functions for creating UMP Endpoint and Blocks
  * documentation fixes for UMP and sequencer API
  * test: Add an example programs for UMP
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.12_v1.2.13#alsa-lib
- Conditionally take libtool</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1731672000">- Fix incorrect versioned symbol for snd_seq_has_queue_tempo_base:
  0001-src-Versions.in.in-Update-_tempo_base-name.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1732449600">- Fix header inclusions for implicit dependnecies (bsc#1233682)
  0002-configure-Make-sequencer-dependent-on-rawmidi.patch
  0003-seq-include-UMP-headers.patch</changelog>
</package>
<package pkgid="f58b84400b749073b7b0b386649fab4f65cbcc2c244a303e3f8dccfe8bb2d6017d5ceb0f781efea90306085f024b6a73290781d61008b19b2a884ae2dcbe9866" name="alsa-topology-devel" arch="i586">
  <version epoch="0" ver="1.2.13" rel="2.0.2.1.sr20241103"/>
  <changelog author="Ferdinand Thiessen &lt;rpm@fthiessen.de&gt;" date="1622462400">- Update to version 1.2.5
  * https://www.alsa-project.org/wiki/Changes_v1.2.4_v1.2.5#alsa-lib
- Drop upstream fixed patches
  * 0001-dlmisc-the-snd_plugin_dir_set-snd_plugin_dir-must-be.patch
  * 0002-dlmisc-fix-snd_plugin_dir-locking-for-not-DL_ORIGIN_.patch
  * 0003-pcm-snd_pcm_mmap_readi-fix-typo-in-comment.patch
  * 0004-topology-use-inclusive-language-for-bclk.patch
  * 0005-topology-use-inclusive-language-for-fsync.patch
  * 0006-topology-use-inclusive-language-in-documentation.patch
  * 0007-pcm-set-the-snd_pcm_ioplug_status-tstamp-field.patch
  * 0009-pcm-Add-snd_pcm_audio_tstamp_type_t-constants.patch
  * 0045-pcm-direct-Fix-the-missing-appl_ptr-update.patch
  * 0019-pcm-fix-__snd_pcm_state-return-value.patch
  * 0025-pcm-plugin-optimize-sync-in-snd_pcm_plugin_status.patch
  * 0026-Revert-pcm_plugin-fix-delay.patch
  * 0014-rawmidi-fix-memory-leak-in-snd_rawmidi_virtual_open.patch
  * 0037-topology-tplg_decode_pcm-add-missing-log-argument-co.patch
  * 0040-topology-sort_config-cleanups-use-goto-for-the-error.patch
  * 0028-pcm-rate-tidy-up-snd_pcm_rate_avail_update.patch
  * 0046-pcm-ioplug-Pass-appl_ptr-and-hw_ptr-in-snd_pcm_statu.patch
  * 0030-pcm-rate-use-pcm_frame_diff-in-snd_pcm_rate_playback.patch
  * 0047-pcm-null-Pass-appl_ptr-and-hw_ptr-in-snd_pcm_status.patch
  * 0043-pcm-dmix-dshare-delay-calculation-fixes-and-cleanups.patch
  * 0042-pcm_plugin-set-the-initial-hw_ptr-appl_ptr-from-the-.patch
  * 0011-pcm-Fix-a-typo-in-SND_PCM_AUDIO_TSTAMP_TYPE_LAST-def.patch
  * 0017-pcm_multi-remove-dead-assignment-from-_snd_pcm_multi.patch
  * 0027-pcm-ioplug-fix-the-delay-calculation-in-the-status-c.patch
  * 0041-conf-USB-add-Xonar-U7-MKII-to-USB-Audio.pcm.iec958_d.patch
  * 0016-pcm-remove-dead-assignments-from-snd_pcm_rate_-commi.patch
  * 0035-topology-tplg_pprint_integer-fix-coverity-uninitaliz.patch
  * 0034-ucm-fix-possible-memory-leak-in-parse_verb_file.patch
  * 0021-conf-fix-return-code-in-_snd_config_load_with_includ.patch
  * 0023-pcm-plugin-status-revert-the-recent-changes.patch
  * 0020-confmisc-fix-memory-leak-in-snd_func_concat.patch
  * 0029-pcm-ioplug-fix-the-delay-calculation-for-old-plugins.patch
  * 0039-ucm-uc_mgr_substitute_tree-fix-use-after-free.patch
  * 0024-pcm-plugin-tidy-snd_pcm_plugin_avail_update.patch
  * 0010-test-audio_time-Make-use-of-SND_PCM_AUDIO_TSTAMP_TYP.patch
  * 0033-pcm-rate-fix-the-capture-delay-values.patch
  * 0015-timer-fix-sizeof-operator-mismatch-in-snd_timer_quer.patch
  * 0036-topology-tplg_add_widget_object-do-not-use-invalid-e.patch
  * 0044-topology-fix-parse_tuple_set-remove-dead-condition-c.patch
  * 0038-topology-parse_tuple_set-remove-dead-condition-code.patch
  * 0018-conf-fix-get_hexachar-return-value.patch
  * 0013-ucm-fix-bad-frees-in-get_list0-and-get_list20.patch
  * 0012-conf-fix-use-after-free-in-_snd_config_load_with_inc.patch
  * 0031-pcm-plugin-fix-status-code-for-capture.patch
  * 0048-pcm-share-Pass-appl_ptr-and-hw_ptr-in-snd_pcm_status.patch
  * 0032-pcm-rate-use-pcm_frame_diff-on-related-places.patch
  * 0022-pcm-plugin-status-fix-the-return-value-regression.patch</changelog>
  <changelog author="tiwai@suse.de" date="1623240000">- Fix regression in config read and UCM handling on pipewire and
  pulseaudio (boo#1187079, boo#1187033):
  0001-conf-fix-load_for_all_cards.patch
  0002-ucm-add-_alibpref-to-get-the-private-device-prefix.patch
  0003-ucm-fix-_alibpref-string-add-.-delimiter-to-the-end.patch</changelog>
  <changelog author="tiwai@suse.de" date="1623672000">- Update to version 1.2.5.1:
  a bug fix release, including previous patches:
  https://www.alsa-project.org/wiki/Changes_v1.2.5_v1.2.5.1
- Drop obsoleted patches:
  0001-conf-fix-load_for_all_cards.patch
  0002-ucm-add-_alibpref-to-get-the-private-device-prefix.patch
  0003-ucm-fix-_alibpref-string-add-.-delimiter-to-the-end.patch</changelog>
  <changelog author="tiwai@suse.de" date="1638792000">- Update to version 1.2.6:
  lots of changes, including UCM and config updates and rawmidi
  framing mode support: for details, see below
  https://www.alsa-project.org/wiki/Changes_v1.2.5.1_v1.2.6#alsa-lib
- Add *.sig file for the source tarball</changelog>
  <changelog author="tiwai@suse.de" date="1639137600">- Update to version 1.2.6.1:
  a minor fix release:
  * conf: fix the device parsing when arguments has no defaults
  * conf: accept '_' character in the variable name</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1654084800">- Update to version 1.2.7:
  more extended UCM API, PCM rate,multi,direct plugin fixes and
  enhancements, compilation fixes, etc.  For details see:
  https://www.alsa-project.org/wiki/Changes_v1.2.6.3_v1.2.7#alsa-lib</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1654516800">- Backport upstream fixes for 32bit inode and ELD parsing:
  0001-conf-Use-ino64_t-to-save-and-compare-inode-numbers.patch
  0002-control-eld-fix-the-decoding-for-older-hw.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1655726400">- Update to version 1.2.7.1: minor bug fixes, including the previous
  patches.  For details, see
    https://www.alsa-project.org/wiki/Changes_v1.2.7_v1.2.7.1#alsa-lib
- Drop obsoleted patches:
  0001-conf-Use-ino64_t-to-save-and-compare-inode-numbers.patch
  0002-control-eld-fix-the-decoding-for-older-hw.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1658145600">- Update to version 1.2.7.2: minor updates, including fixes for PCM
  share plugin, rawmidi and UCM</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1666699200">- Update to version 1.2.8 (jsc#PED-850):
  add FreeBSD/NetBD/OpenBSD build support, fixes in control namehint,
  various PCM plugins and UCM.  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.7.2_v1.2.8
- Add keyring</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1683547200">- Update to version 1.2.9:
  * Versioned symbol updates
  * Various fixes for building on *BSD and Android
  * Fixes and enhancements of auto silencing and playback drain
  * Add SND_CTL_EINTR open mode at PCM
  * Avoid endless loop in snd_pcm_sw_params_default()
  * Fixes in PCM rate, route/softvol plugins
  * Fixes in topology API parser, cleanups
  * Enhancements in latency test program
  * Minor code cleanup and memory leak fixes in UCM API
  * emu10k1 config cleanup
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.8_v1.2.9#alsa-lib</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1693828800">- Update to version 1.2.10 (jsc#PED-6566):
  * MIDI 2.0 feature support
  * build fixes for various platforms
  * various documentation fixes
  * misc topology fixes
  * ucm fixes and cleanups
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.9_v1.2.10#alsa-lib
- Took upstream fix for possible build errors:
  0001-control.h-Fix-ump-header-file-detection.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1694260800">- Upstream fix backport:
  0002-global.h-move-__STRING-macro-outside-PIC-ifdef-block.patch
- Upstream fix for PCM segfault regression (bsc#1215167):
  0003-pcm-Fix-segfault-with-32bit-libs.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1695038400">- More upstream fix for incosistent compile conditions:
  0004-reshuffle-included-files-to-include-config.h-as-firs.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1696939200">- Fix symbol version:
  0005-seq-Fix-typos-in-symbol-version-definitions.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1699358400">- Backport upstream fixes for sequencer and mixer:
  0006-seq-Fix-invalid-sanity-check-in-snd_seq_set_input_bu.patch
  0007-mixer-simple-Support-dB-TLVs-for-CTL_SINGLE-controls.patch
  0008-seq-Clear-UMP-event-flag-for-legacy-apps.patch
  0009-seq-Simplify-snd_seq_extract_output.patch
  0010-seq-Check-protocol-compatibility-with-the-current-ve.patch
- Clean up spec file</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1706875200">- Updated to alsa-lib 1.2.11:
  * auto-tools fixes, versioned symbol fixes
  * support dB TLVs for single controls
  * various PCM updates, including subformat extensions
  * UMP and sequencer API fixes
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.10_v1.2.11#alsa-lib
- Dropped obsoleted patches:
  0001-control.h-Fix-ump-header-file-detection.patch
  0002-global.h-move-__STRING-macro-outside-PIC-ifdef-block.patch
  0003-pcm-Fix-segfault-with-32bit-libs.patch
  0004-reshuffle-included-files-to-include-config.h-as-firs.patch
  0005-seq-Fix-typos-in-symbol-version-definitions.patch
  0006-seq-Fix-invalid-sanity-check-in-snd_seq_set_input_bu.patch
  0007-mixer-simple-Support-dB-TLVs-for-CTL_SINGLE-controls.patch
  0008-seq-Clear-UMP-event-flag-for-legacy-apps.patch
  0009-seq-Simplify-snd_seq_extract_output.patch
  0010-seq-Check-protocol-compatibility-with-the-current-ve.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1718280000">- Update to alsa-lib 1.2.12:
  * pcm: plug support for iec958 subframe samples
  * pcm: ladspa - Skip missing ladspa directories
  * topology: correct version script path
  * ucm: define and describe Syntax 7
  * async handler cleanup fix
  * conf updates
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.11_v1.2.12#alsa-lib</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1731412800">- Update to alsa-lib 1.2.13:
  * static build fixes
  * documentation update for control remap API
  * PCM dmix fixes
  * pcm: implement snd_pcm_hw_params_get_sync() and obsolete snd_pcm_info_get_sync()
  * ump: Add a function to provide the packet word length of a UMP type
  * seq: Add snd_seq_{get|set}_ump_is_midi1() API functions
  * seq: Add API functions to set different tempo base values
  * seq: Add API helper functions for creating UMP Endpoint and Blocks
  * documentation fixes for UMP and sequencer API
  * test: Add an example programs for UMP
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.12_v1.2.13#alsa-lib
- Conditionally take libtool</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1731672000">- Fix incorrect versioned symbol for snd_seq_has_queue_tempo_base:
  0001-src-Versions.in.in-Update-_tempo_base-name.patch</changelog>
</package>
<package pkgid="78f15548e669cd4b23dd9dea68d00e3ec1442904aa2ee06ef1cfd4a9b92351dbc0118cec7a152642b3afe2fd47ab17869d308eb7962883a017654c531c4982c8" name="alsa-topology-devel" arch="x86_64">
  <version epoch="0" ver="1.2.13" rel="2.0.2.1.sr20241103"/>
  <changelog author="Ferdinand Thiessen &lt;rpm@fthiessen.de&gt;" date="1622462400">- Update to version 1.2.5
  * https://www.alsa-project.org/wiki/Changes_v1.2.4_v1.2.5#alsa-lib
- Drop upstream fixed patches
  * 0001-dlmisc-the-snd_plugin_dir_set-snd_plugin_dir-must-be.patch
  * 0002-dlmisc-fix-snd_plugin_dir-locking-for-not-DL_ORIGIN_.patch
  * 0003-pcm-snd_pcm_mmap_readi-fix-typo-in-comment.patch
  * 0004-topology-use-inclusive-language-for-bclk.patch
  * 0005-topology-use-inclusive-language-for-fsync.patch
  * 0006-topology-use-inclusive-language-in-documentation.patch
  * 0007-pcm-set-the-snd_pcm_ioplug_status-tstamp-field.patch
  * 0009-pcm-Add-snd_pcm_audio_tstamp_type_t-constants.patch
  * 0045-pcm-direct-Fix-the-missing-appl_ptr-update.patch
  * 0019-pcm-fix-__snd_pcm_state-return-value.patch
  * 0025-pcm-plugin-optimize-sync-in-snd_pcm_plugin_status.patch
  * 0026-Revert-pcm_plugin-fix-delay.patch
  * 0014-rawmidi-fix-memory-leak-in-snd_rawmidi_virtual_open.patch
  * 0037-topology-tplg_decode_pcm-add-missing-log-argument-co.patch
  * 0040-topology-sort_config-cleanups-use-goto-for-the-error.patch
  * 0028-pcm-rate-tidy-up-snd_pcm_rate_avail_update.patch
  * 0046-pcm-ioplug-Pass-appl_ptr-and-hw_ptr-in-snd_pcm_statu.patch
  * 0030-pcm-rate-use-pcm_frame_diff-in-snd_pcm_rate_playback.patch
  * 0047-pcm-null-Pass-appl_ptr-and-hw_ptr-in-snd_pcm_status.patch
  * 0043-pcm-dmix-dshare-delay-calculation-fixes-and-cleanups.patch
  * 0042-pcm_plugin-set-the-initial-hw_ptr-appl_ptr-from-the-.patch
  * 0011-pcm-Fix-a-typo-in-SND_PCM_AUDIO_TSTAMP_TYPE_LAST-def.patch
  * 0017-pcm_multi-remove-dead-assignment-from-_snd_pcm_multi.patch
  * 0027-pcm-ioplug-fix-the-delay-calculation-in-the-status-c.patch
  * 0041-conf-USB-add-Xonar-U7-MKII-to-USB-Audio.pcm.iec958_d.patch
  * 0016-pcm-remove-dead-assignments-from-snd_pcm_rate_-commi.patch
  * 0035-topology-tplg_pprint_integer-fix-coverity-uninitaliz.patch
  * 0034-ucm-fix-possible-memory-leak-in-parse_verb_file.patch
  * 0021-conf-fix-return-code-in-_snd_config_load_with_includ.patch
  * 0023-pcm-plugin-status-revert-the-recent-changes.patch
  * 0020-confmisc-fix-memory-leak-in-snd_func_concat.patch
  * 0029-pcm-ioplug-fix-the-delay-calculation-for-old-plugins.patch
  * 0039-ucm-uc_mgr_substitute_tree-fix-use-after-free.patch
  * 0024-pcm-plugin-tidy-snd_pcm_plugin_avail_update.patch
  * 0010-test-audio_time-Make-use-of-SND_PCM_AUDIO_TSTAMP_TYP.patch
  * 0033-pcm-rate-fix-the-capture-delay-values.patch
  * 0015-timer-fix-sizeof-operator-mismatch-in-snd_timer_quer.patch
  * 0036-topology-tplg_add_widget_object-do-not-use-invalid-e.patch
  * 0044-topology-fix-parse_tuple_set-remove-dead-condition-c.patch
  * 0038-topology-parse_tuple_set-remove-dead-condition-code.patch
  * 0018-conf-fix-get_hexachar-return-value.patch
  * 0013-ucm-fix-bad-frees-in-get_list0-and-get_list20.patch
  * 0012-conf-fix-use-after-free-in-_snd_config_load_with_inc.patch
  * 0031-pcm-plugin-fix-status-code-for-capture.patch
  * 0048-pcm-share-Pass-appl_ptr-and-hw_ptr-in-snd_pcm_status.patch
  * 0032-pcm-rate-use-pcm_frame_diff-on-related-places.patch
  * 0022-pcm-plugin-status-fix-the-return-value-regression.patch</changelog>
  <changelog author="tiwai@suse.de" date="1623240000">- Fix regression in config read and UCM handling on pipewire and
  pulseaudio (boo#1187079, boo#1187033):
  0001-conf-fix-load_for_all_cards.patch
  0002-ucm-add-_alibpref-to-get-the-private-device-prefix.patch
  0003-ucm-fix-_alibpref-string-add-.-delimiter-to-the-end.patch</changelog>
  <changelog author="tiwai@suse.de" date="1623672000">- Update to version 1.2.5.1:
  a bug fix release, including previous patches:
  https://www.alsa-project.org/wiki/Changes_v1.2.5_v1.2.5.1
- Drop obsoleted patches:
  0001-conf-fix-load_for_all_cards.patch
  0002-ucm-add-_alibpref-to-get-the-private-device-prefix.patch
  0003-ucm-fix-_alibpref-string-add-.-delimiter-to-the-end.patch</changelog>
  <changelog author="tiwai@suse.de" date="1638792000">- Update to version 1.2.6:
  lots of changes, including UCM and config updates and rawmidi
  framing mode support: for details, see below
  https://www.alsa-project.org/wiki/Changes_v1.2.5.1_v1.2.6#alsa-lib
- Add *.sig file for the source tarball</changelog>
  <changelog author="tiwai@suse.de" date="1639137600">- Update to version 1.2.6.1:
  a minor fix release:
  * conf: fix the device parsing when arguments has no defaults
  * conf: accept '_' character in the variable name</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1654084800">- Update to version 1.2.7:
  more extended UCM API, PCM rate,multi,direct plugin fixes and
  enhancements, compilation fixes, etc.  For details see:
  https://www.alsa-project.org/wiki/Changes_v1.2.6.3_v1.2.7#alsa-lib</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1654516800">- Backport upstream fixes for 32bit inode and ELD parsing:
  0001-conf-Use-ino64_t-to-save-and-compare-inode-numbers.patch
  0002-control-eld-fix-the-decoding-for-older-hw.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1655726400">- Update to version 1.2.7.1: minor bug fixes, including the previous
  patches.  For details, see
    https://www.alsa-project.org/wiki/Changes_v1.2.7_v1.2.7.1#alsa-lib
- Drop obsoleted patches:
  0001-conf-Use-ino64_t-to-save-and-compare-inode-numbers.patch
  0002-control-eld-fix-the-decoding-for-older-hw.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1658145600">- Update to version 1.2.7.2: minor updates, including fixes for PCM
  share plugin, rawmidi and UCM</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1666699200">- Update to version 1.2.8 (jsc#PED-850):
  add FreeBSD/NetBD/OpenBSD build support, fixes in control namehint,
  various PCM plugins and UCM.  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.7.2_v1.2.8
- Add keyring</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1683547200">- Update to version 1.2.9:
  * Versioned symbol updates
  * Various fixes for building on *BSD and Android
  * Fixes and enhancements of auto silencing and playback drain
  * Add SND_CTL_EINTR open mode at PCM
  * Avoid endless loop in snd_pcm_sw_params_default()
  * Fixes in PCM rate, route/softvol plugins
  * Fixes in topology API parser, cleanups
  * Enhancements in latency test program
  * Minor code cleanup and memory leak fixes in UCM API
  * emu10k1 config cleanup
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.8_v1.2.9#alsa-lib</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1693828800">- Update to version 1.2.10 (jsc#PED-6566):
  * MIDI 2.0 feature support
  * build fixes for various platforms
  * various documentation fixes
  * misc topology fixes
  * ucm fixes and cleanups
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.9_v1.2.10#alsa-lib
- Took upstream fix for possible build errors:
  0001-control.h-Fix-ump-header-file-detection.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1694260800">- Upstream fix backport:
  0002-global.h-move-__STRING-macro-outside-PIC-ifdef-block.patch
- Upstream fix for PCM segfault regression (bsc#1215167):
  0003-pcm-Fix-segfault-with-32bit-libs.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1695038400">- More upstream fix for incosistent compile conditions:
  0004-reshuffle-included-files-to-include-config.h-as-firs.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1696939200">- Fix symbol version:
  0005-seq-Fix-typos-in-symbol-version-definitions.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1699358400">- Backport upstream fixes for sequencer and mixer:
  0006-seq-Fix-invalid-sanity-check-in-snd_seq_set_input_bu.patch
  0007-mixer-simple-Support-dB-TLVs-for-CTL_SINGLE-controls.patch
  0008-seq-Clear-UMP-event-flag-for-legacy-apps.patch
  0009-seq-Simplify-snd_seq_extract_output.patch
  0010-seq-Check-protocol-compatibility-with-the-current-ve.patch
- Clean up spec file</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1706875200">- Updated to alsa-lib 1.2.11:
  * auto-tools fixes, versioned symbol fixes
  * support dB TLVs for single controls
  * various PCM updates, including subformat extensions
  * UMP and sequencer API fixes
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.10_v1.2.11#alsa-lib
- Dropped obsoleted patches:
  0001-control.h-Fix-ump-header-file-detection.patch
  0002-global.h-move-__STRING-macro-outside-PIC-ifdef-block.patch
  0003-pcm-Fix-segfault-with-32bit-libs.patch
  0004-reshuffle-included-files-to-include-config.h-as-firs.patch
  0005-seq-Fix-typos-in-symbol-version-definitions.patch
  0006-seq-Fix-invalid-sanity-check-in-snd_seq_set_input_bu.patch
  0007-mixer-simple-Support-dB-TLVs-for-CTL_SINGLE-controls.patch
  0008-seq-Clear-UMP-event-flag-for-legacy-apps.patch
  0009-seq-Simplify-snd_seq_extract_output.patch
  0010-seq-Check-protocol-compatibility-with-the-current-ve.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1718280000">- Update to alsa-lib 1.2.12:
  * pcm: plug support for iec958 subframe samples
  * pcm: ladspa - Skip missing ladspa directories
  * topology: correct version script path
  * ucm: define and describe Syntax 7
  * async handler cleanup fix
  * conf updates
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.11_v1.2.12#alsa-lib</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1731412800">- Update to alsa-lib 1.2.13:
  * static build fixes
  * documentation update for control remap API
  * PCM dmix fixes
  * pcm: implement snd_pcm_hw_params_get_sync() and obsolete snd_pcm_info_get_sync()
  * ump: Add a function to provide the packet word length of a UMP type
  * seq: Add snd_seq_{get|set}_ump_is_midi1() API functions
  * seq: Add API functions to set different tempo base values
  * seq: Add API helper functions for creating UMP Endpoint and Blocks
  * documentation fixes for UMP and sequencer API
  * test: Add an example programs for UMP
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.12_v1.2.13#alsa-lib
- Conditionally take libtool</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1731672000">- Fix incorrect versioned symbol for snd_seq_has_queue_tempo_base:
  0001-src-Versions.in.in-Update-_tempo_base-name.patch</changelog>
</package>
<package pkgid="f19095ce141ee5b6009667258a8ac14dc7e000b999e9e22cd25dedb129c52e356bb6a472529f3c2c5c15ea9d09fddf70847c1cc9d08ae45588629f7c55dd8343" name="alsa-topology-devel" arch="i586">
  <version epoch="0" ver="1.2.13" rel="3.1"/>
  <changelog author="tiwai@suse.de" date="1623240000">- Fix regression in config read and UCM handling on pipewire and
  pulseaudio (boo#1187079, boo#1187033):
  0001-conf-fix-load_for_all_cards.patch
  0002-ucm-add-_alibpref-to-get-the-private-device-prefix.patch
  0003-ucm-fix-_alibpref-string-add-.-delimiter-to-the-end.patch</changelog>
  <changelog author="tiwai@suse.de" date="1623672000">- Update to version 1.2.5.1:
  a bug fix release, including previous patches:
  https://www.alsa-project.org/wiki/Changes_v1.2.5_v1.2.5.1
- Drop obsoleted patches:
  0001-conf-fix-load_for_all_cards.patch
  0002-ucm-add-_alibpref-to-get-the-private-device-prefix.patch
  0003-ucm-fix-_alibpref-string-add-.-delimiter-to-the-end.patch</changelog>
  <changelog author="tiwai@suse.de" date="1638792000">- Update to version 1.2.6:
  lots of changes, including UCM and config updates and rawmidi
  framing mode support: for details, see below
  https://www.alsa-project.org/wiki/Changes_v1.2.5.1_v1.2.6#alsa-lib
- Add *.sig file for the source tarball</changelog>
  <changelog author="tiwai@suse.de" date="1639137600">- Update to version 1.2.6.1:
  a minor fix release:
  * conf: fix the device parsing when arguments has no defaults
  * conf: accept '_' character in the variable name</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1654084800">- Update to version 1.2.7:
  more extended UCM API, PCM rate,multi,direct plugin fixes and
  enhancements, compilation fixes, etc.  For details see:
  https://www.alsa-project.org/wiki/Changes_v1.2.6.3_v1.2.7#alsa-lib</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1654516800">- Backport upstream fixes for 32bit inode and ELD parsing:
  0001-conf-Use-ino64_t-to-save-and-compare-inode-numbers.patch
  0002-control-eld-fix-the-decoding-for-older-hw.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1655726400">- Update to version 1.2.7.1: minor bug fixes, including the previous
  patches.  For details, see
    https://www.alsa-project.org/wiki/Changes_v1.2.7_v1.2.7.1#alsa-lib
- Drop obsoleted patches:
  0001-conf-Use-ino64_t-to-save-and-compare-inode-numbers.patch
  0002-control-eld-fix-the-decoding-for-older-hw.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1658145600">- Update to version 1.2.7.2: minor updates, including fixes for PCM
  share plugin, rawmidi and UCM</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1666699200">- Update to version 1.2.8 (jsc#PED-850):
  add FreeBSD/NetBD/OpenBSD build support, fixes in control namehint,
  various PCM plugins and UCM.  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.7.2_v1.2.8
- Add keyring</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1683547200">- Update to version 1.2.9:
  * Versioned symbol updates
  * Various fixes for building on *BSD and Android
  * Fixes and enhancements of auto silencing and playback drain
  * Add SND_CTL_EINTR open mode at PCM
  * Avoid endless loop in snd_pcm_sw_params_default()
  * Fixes in PCM rate, route/softvol plugins
  * Fixes in topology API parser, cleanups
  * Enhancements in latency test program
  * Minor code cleanup and memory leak fixes in UCM API
  * emu10k1 config cleanup
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.8_v1.2.9#alsa-lib</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1693828800">- Update to version 1.2.10 (jsc#PED-6566):
  * MIDI 2.0 feature support
  * build fixes for various platforms
  * various documentation fixes
  * misc topology fixes
  * ucm fixes and cleanups
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.9_v1.2.10#alsa-lib
- Took upstream fix for possible build errors:
  0001-control.h-Fix-ump-header-file-detection.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1694260800">- Upstream fix backport:
  0002-global.h-move-__STRING-macro-outside-PIC-ifdef-block.patch
- Upstream fix for PCM segfault regression (bsc#1215167):
  0003-pcm-Fix-segfault-with-32bit-libs.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1695038400">- More upstream fix for incosistent compile conditions:
  0004-reshuffle-included-files-to-include-config.h-as-firs.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1696939200">- Fix symbol version:
  0005-seq-Fix-typos-in-symbol-version-definitions.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1699358400">- Backport upstream fixes for sequencer and mixer:
  0006-seq-Fix-invalid-sanity-check-in-snd_seq_set_input_bu.patch
  0007-mixer-simple-Support-dB-TLVs-for-CTL_SINGLE-controls.patch
  0008-seq-Clear-UMP-event-flag-for-legacy-apps.patch
  0009-seq-Simplify-snd_seq_extract_output.patch
  0010-seq-Check-protocol-compatibility-with-the-current-ve.patch
- Clean up spec file</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1706875200">- Updated to alsa-lib 1.2.11:
  * auto-tools fixes, versioned symbol fixes
  * support dB TLVs for single controls
  * various PCM updates, including subformat extensions
  * UMP and sequencer API fixes
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.10_v1.2.11#alsa-lib
- Dropped obsoleted patches:
  0001-control.h-Fix-ump-header-file-detection.patch
  0002-global.h-move-__STRING-macro-outside-PIC-ifdef-block.patch
  0003-pcm-Fix-segfault-with-32bit-libs.patch
  0004-reshuffle-included-files-to-include-config.h-as-firs.patch
  0005-seq-Fix-typos-in-symbol-version-definitions.patch
  0006-seq-Fix-invalid-sanity-check-in-snd_seq_set_input_bu.patch
  0007-mixer-simple-Support-dB-TLVs-for-CTL_SINGLE-controls.patch
  0008-seq-Clear-UMP-event-flag-for-legacy-apps.patch
  0009-seq-Simplify-snd_seq_extract_output.patch
  0010-seq-Check-protocol-compatibility-with-the-current-ve.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1718280000">- Update to alsa-lib 1.2.12:
  * pcm: plug support for iec958 subframe samples
  * pcm: ladspa - Skip missing ladspa directories
  * topology: correct version script path
  * ucm: define and describe Syntax 7
  * async handler cleanup fix
  * conf updates
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.11_v1.2.12#alsa-lib</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1731412800">- Update to alsa-lib 1.2.13:
  * static build fixes
  * documentation update for control remap API
  * PCM dmix fixes
  * pcm: implement snd_pcm_hw_params_get_sync() and obsolete snd_pcm_info_get_sync()
  * ump: Add a function to provide the packet word length of a UMP type
  * seq: Add snd_seq_{get|set}_ump_is_midi1() API functions
  * seq: Add API functions to set different tempo base values
  * seq: Add API helper functions for creating UMP Endpoint and Blocks
  * documentation fixes for UMP and sequencer API
  * test: Add an example programs for UMP
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.12_v1.2.13#alsa-lib
- Conditionally take libtool</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1731672000">- Fix incorrect versioned symbol for snd_seq_has_queue_tempo_base:
  0001-src-Versions.in.in-Update-_tempo_base-name.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1732449600">- Fix header inclusions for implicit dependnecies (bsc#1233682)
  0002-configure-Make-sequencer-dependent-on-rawmidi.patch
  0003-seq-include-UMP-headers.patch</changelog>
</package>
<package pkgid="66cb9f8eff9db8f01285af90e107c97b7244a2c4b39a9a19f2c7aff24e0d72e8c6c05bf8223d415109ba98c8b54ac31b896a1e223b803d40005bc04a1b691a11" name="alsa-topology-devel" arch="x86_64">
  <version epoch="0" ver="1.2.13" rel="3.1"/>
  <changelog author="tiwai@suse.de" date="1623240000">- Fix regression in config read and UCM handling on pipewire and
  pulseaudio (boo#1187079, boo#1187033):
  0001-conf-fix-load_for_all_cards.patch
  0002-ucm-add-_alibpref-to-get-the-private-device-prefix.patch
  0003-ucm-fix-_alibpref-string-add-.-delimiter-to-the-end.patch</changelog>
  <changelog author="tiwai@suse.de" date="1623672000">- Update to version 1.2.5.1:
  a bug fix release, including previous patches:
  https://www.alsa-project.org/wiki/Changes_v1.2.5_v1.2.5.1
- Drop obsoleted patches:
  0001-conf-fix-load_for_all_cards.patch
  0002-ucm-add-_alibpref-to-get-the-private-device-prefix.patch
  0003-ucm-fix-_alibpref-string-add-.-delimiter-to-the-end.patch</changelog>
  <changelog author="tiwai@suse.de" date="1638792000">- Update to version 1.2.6:
  lots of changes, including UCM and config updates and rawmidi
  framing mode support: for details, see below
  https://www.alsa-project.org/wiki/Changes_v1.2.5.1_v1.2.6#alsa-lib
- Add *.sig file for the source tarball</changelog>
  <changelog author="tiwai@suse.de" date="1639137600">- Update to version 1.2.6.1:
  a minor fix release:
  * conf: fix the device parsing when arguments has no defaults
  * conf: accept '_' character in the variable name</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1654084800">- Update to version 1.2.7:
  more extended UCM API, PCM rate,multi,direct plugin fixes and
  enhancements, compilation fixes, etc.  For details see:
  https://www.alsa-project.org/wiki/Changes_v1.2.6.3_v1.2.7#alsa-lib</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1654516800">- Backport upstream fixes for 32bit inode and ELD parsing:
  0001-conf-Use-ino64_t-to-save-and-compare-inode-numbers.patch
  0002-control-eld-fix-the-decoding-for-older-hw.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1655726400">- Update to version 1.2.7.1: minor bug fixes, including the previous
  patches.  For details, see
    https://www.alsa-project.org/wiki/Changes_v1.2.7_v1.2.7.1#alsa-lib
- Drop obsoleted patches:
  0001-conf-Use-ino64_t-to-save-and-compare-inode-numbers.patch
  0002-control-eld-fix-the-decoding-for-older-hw.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1658145600">- Update to version 1.2.7.2: minor updates, including fixes for PCM
  share plugin, rawmidi and UCM</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1666699200">- Update to version 1.2.8 (jsc#PED-850):
  add FreeBSD/NetBD/OpenBSD build support, fixes in control namehint,
  various PCM plugins and UCM.  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.7.2_v1.2.8
- Add keyring</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1683547200">- Update to version 1.2.9:
  * Versioned symbol updates
  * Various fixes for building on *BSD and Android
  * Fixes and enhancements of auto silencing and playback drain
  * Add SND_CTL_EINTR open mode at PCM
  * Avoid endless loop in snd_pcm_sw_params_default()
  * Fixes in PCM rate, route/softvol plugins
  * Fixes in topology API parser, cleanups
  * Enhancements in latency test program
  * Minor code cleanup and memory leak fixes in UCM API
  * emu10k1 config cleanup
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.8_v1.2.9#alsa-lib</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1693828800">- Update to version 1.2.10 (jsc#PED-6566):
  * MIDI 2.0 feature support
  * build fixes for various platforms
  * various documentation fixes
  * misc topology fixes
  * ucm fixes and cleanups
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.9_v1.2.10#alsa-lib
- Took upstream fix for possible build errors:
  0001-control.h-Fix-ump-header-file-detection.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1694260800">- Upstream fix backport:
  0002-global.h-move-__STRING-macro-outside-PIC-ifdef-block.patch
- Upstream fix for PCM segfault regression (bsc#1215167):
  0003-pcm-Fix-segfault-with-32bit-libs.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1695038400">- More upstream fix for incosistent compile conditions:
  0004-reshuffle-included-files-to-include-config.h-as-firs.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1696939200">- Fix symbol version:
  0005-seq-Fix-typos-in-symbol-version-definitions.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1699358400">- Backport upstream fixes for sequencer and mixer:
  0006-seq-Fix-invalid-sanity-check-in-snd_seq_set_input_bu.patch
  0007-mixer-simple-Support-dB-TLVs-for-CTL_SINGLE-controls.patch
  0008-seq-Clear-UMP-event-flag-for-legacy-apps.patch
  0009-seq-Simplify-snd_seq_extract_output.patch
  0010-seq-Check-protocol-compatibility-with-the-current-ve.patch
- Clean up spec file</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1706875200">- Updated to alsa-lib 1.2.11:
  * auto-tools fixes, versioned symbol fixes
  * support dB TLVs for single controls
  * various PCM updates, including subformat extensions
  * UMP and sequencer API fixes
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.10_v1.2.11#alsa-lib
- Dropped obsoleted patches:
  0001-control.h-Fix-ump-header-file-detection.patch
  0002-global.h-move-__STRING-macro-outside-PIC-ifdef-block.patch
  0003-pcm-Fix-segfault-with-32bit-libs.patch
  0004-reshuffle-included-files-to-include-config.h-as-firs.patch
  0005-seq-Fix-typos-in-symbol-version-definitions.patch
  0006-seq-Fix-invalid-sanity-check-in-snd_seq_set_input_bu.patch
  0007-mixer-simple-Support-dB-TLVs-for-CTL_SINGLE-controls.patch
  0008-seq-Clear-UMP-event-flag-for-legacy-apps.patch
  0009-seq-Simplify-snd_seq_extract_output.patch
  0010-seq-Check-protocol-compatibility-with-the-current-ve.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1718280000">- Update to alsa-lib 1.2.12:
  * pcm: plug support for iec958 subframe samples
  * pcm: ladspa - Skip missing ladspa directories
  * topology: correct version script path
  * ucm: define and describe Syntax 7
  * async handler cleanup fix
  * conf updates
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.11_v1.2.12#alsa-lib</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1731412800">- Update to alsa-lib 1.2.13:
  * static build fixes
  * documentation update for control remap API
  * PCM dmix fixes
  * pcm: implement snd_pcm_hw_params_get_sync() and obsolete snd_pcm_info_get_sync()
  * ump: Add a function to provide the packet word length of a UMP type
  * seq: Add snd_seq_{get|set}_ump_is_midi1() API functions
  * seq: Add API functions to set different tempo base values
  * seq: Add API helper functions for creating UMP Endpoint and Blocks
  * documentation fixes for UMP and sequencer API
  * test: Add an example programs for UMP
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.12_v1.2.13#alsa-lib
- Conditionally take libtool</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1731672000">- Fix incorrect versioned symbol for snd_seq_has_queue_tempo_base:
  0001-src-Versions.in.in-Update-_tempo_base-name.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1732449600">- Fix header inclusions for implicit dependnecies (bsc#1233682)
  0002-configure-Make-sequencer-dependent-on-rawmidi.patch
  0003-seq-include-UMP-headers.patch</changelog>
</package>
<package pkgid="07d973d522b2edf0bf0db70898e530bdee2053567ca5a706c870604e9579b3861d74ed3c69691b680b800fe259a25ea1982bad946a09ee8dda4ce242e8ede02a" name="alsa-topology-devel-32bit" arch="x86_64">
  <version epoch="0" ver="1.2.13" rel="2.0.2.1.sr20241103"/>
  <changelog author="Ferdinand Thiessen &lt;rpm@fthiessen.de&gt;" date="1622462400">- Update to version 1.2.5
  * https://www.alsa-project.org/wiki/Changes_v1.2.4_v1.2.5#alsa-lib
- Drop upstream fixed patches
  * 0001-dlmisc-the-snd_plugin_dir_set-snd_plugin_dir-must-be.patch
  * 0002-dlmisc-fix-snd_plugin_dir-locking-for-not-DL_ORIGIN_.patch
  * 0003-pcm-snd_pcm_mmap_readi-fix-typo-in-comment.patch
  * 0004-topology-use-inclusive-language-for-bclk.patch
  * 0005-topology-use-inclusive-language-for-fsync.patch
  * 0006-topology-use-inclusive-language-in-documentation.patch
  * 0007-pcm-set-the-snd_pcm_ioplug_status-tstamp-field.patch
  * 0009-pcm-Add-snd_pcm_audio_tstamp_type_t-constants.patch
  * 0045-pcm-direct-Fix-the-missing-appl_ptr-update.patch
  * 0019-pcm-fix-__snd_pcm_state-return-value.patch
  * 0025-pcm-plugin-optimize-sync-in-snd_pcm_plugin_status.patch
  * 0026-Revert-pcm_plugin-fix-delay.patch
  * 0014-rawmidi-fix-memory-leak-in-snd_rawmidi_virtual_open.patch
  * 0037-topology-tplg_decode_pcm-add-missing-log-argument-co.patch
  * 0040-topology-sort_config-cleanups-use-goto-for-the-error.patch
  * 0028-pcm-rate-tidy-up-snd_pcm_rate_avail_update.patch
  * 0046-pcm-ioplug-Pass-appl_ptr-and-hw_ptr-in-snd_pcm_statu.patch
  * 0030-pcm-rate-use-pcm_frame_diff-in-snd_pcm_rate_playback.patch
  * 0047-pcm-null-Pass-appl_ptr-and-hw_ptr-in-snd_pcm_status.patch
  * 0043-pcm-dmix-dshare-delay-calculation-fixes-and-cleanups.patch
  * 0042-pcm_plugin-set-the-initial-hw_ptr-appl_ptr-from-the-.patch
  * 0011-pcm-Fix-a-typo-in-SND_PCM_AUDIO_TSTAMP_TYPE_LAST-def.patch
  * 0017-pcm_multi-remove-dead-assignment-from-_snd_pcm_multi.patch
  * 0027-pcm-ioplug-fix-the-delay-calculation-in-the-status-c.patch
  * 0041-conf-USB-add-Xonar-U7-MKII-to-USB-Audio.pcm.iec958_d.patch
  * 0016-pcm-remove-dead-assignments-from-snd_pcm_rate_-commi.patch
  * 0035-topology-tplg_pprint_integer-fix-coverity-uninitaliz.patch
  * 0034-ucm-fix-possible-memory-leak-in-parse_verb_file.patch
  * 0021-conf-fix-return-code-in-_snd_config_load_with_includ.patch
  * 0023-pcm-plugin-status-revert-the-recent-changes.patch
  * 0020-confmisc-fix-memory-leak-in-snd_func_concat.patch
  * 0029-pcm-ioplug-fix-the-delay-calculation-for-old-plugins.patch
  * 0039-ucm-uc_mgr_substitute_tree-fix-use-after-free.patch
  * 0024-pcm-plugin-tidy-snd_pcm_plugin_avail_update.patch
  * 0010-test-audio_time-Make-use-of-SND_PCM_AUDIO_TSTAMP_TYP.patch
  * 0033-pcm-rate-fix-the-capture-delay-values.patch
  * 0015-timer-fix-sizeof-operator-mismatch-in-snd_timer_quer.patch
  * 0036-topology-tplg_add_widget_object-do-not-use-invalid-e.patch
  * 0044-topology-fix-parse_tuple_set-remove-dead-condition-c.patch
  * 0038-topology-parse_tuple_set-remove-dead-condition-code.patch
  * 0018-conf-fix-get_hexachar-return-value.patch
  * 0013-ucm-fix-bad-frees-in-get_list0-and-get_list20.patch
  * 0012-conf-fix-use-after-free-in-_snd_config_load_with_inc.patch
  * 0031-pcm-plugin-fix-status-code-for-capture.patch
  * 0048-pcm-share-Pass-appl_ptr-and-hw_ptr-in-snd_pcm_status.patch
  * 0032-pcm-rate-use-pcm_frame_diff-on-related-places.patch
  * 0022-pcm-plugin-status-fix-the-return-value-regression.patch</changelog>
  <changelog author="tiwai@suse.de" date="1623240000">- Fix regression in config read and UCM handling on pipewire and
  pulseaudio (boo#1187079, boo#1187033):
  0001-conf-fix-load_for_all_cards.patch
  0002-ucm-add-_alibpref-to-get-the-private-device-prefix.patch
  0003-ucm-fix-_alibpref-string-add-.-delimiter-to-the-end.patch</changelog>
  <changelog author="tiwai@suse.de" date="1623672000">- Update to version 1.2.5.1:
  a bug fix release, including previous patches:
  https://www.alsa-project.org/wiki/Changes_v1.2.5_v1.2.5.1
- Drop obsoleted patches:
  0001-conf-fix-load_for_all_cards.patch
  0002-ucm-add-_alibpref-to-get-the-private-device-prefix.patch
  0003-ucm-fix-_alibpref-string-add-.-delimiter-to-the-end.patch</changelog>
  <changelog author="tiwai@suse.de" date="1638792000">- Update to version 1.2.6:
  lots of changes, including UCM and config updates and rawmidi
  framing mode support: for details, see below
  https://www.alsa-project.org/wiki/Changes_v1.2.5.1_v1.2.6#alsa-lib
- Add *.sig file for the source tarball</changelog>
  <changelog author="tiwai@suse.de" date="1639137600">- Update to version 1.2.6.1:
  a minor fix release:
  * conf: fix the device parsing when arguments has no defaults
  * conf: accept '_' character in the variable name</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1654084800">- Update to version 1.2.7:
  more extended UCM API, PCM rate,multi,direct plugin fixes and
  enhancements, compilation fixes, etc.  For details see:
  https://www.alsa-project.org/wiki/Changes_v1.2.6.3_v1.2.7#alsa-lib</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1654516800">- Backport upstream fixes for 32bit inode and ELD parsing:
  0001-conf-Use-ino64_t-to-save-and-compare-inode-numbers.patch
  0002-control-eld-fix-the-decoding-for-older-hw.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1655726400">- Update to version 1.2.7.1: minor bug fixes, including the previous
  patches.  For details, see
    https://www.alsa-project.org/wiki/Changes_v1.2.7_v1.2.7.1#alsa-lib
- Drop obsoleted patches:
  0001-conf-Use-ino64_t-to-save-and-compare-inode-numbers.patch
  0002-control-eld-fix-the-decoding-for-older-hw.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1658145600">- Update to version 1.2.7.2: minor updates, including fixes for PCM
  share plugin, rawmidi and UCM</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1666699200">- Update to version 1.2.8 (jsc#PED-850):
  add FreeBSD/NetBD/OpenBSD build support, fixes in control namehint,
  various PCM plugins and UCM.  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.7.2_v1.2.8
- Add keyring</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1683547200">- Update to version 1.2.9:
  * Versioned symbol updates
  * Various fixes for building on *BSD and Android
  * Fixes and enhancements of auto silencing and playback drain
  * Add SND_CTL_EINTR open mode at PCM
  * Avoid endless loop in snd_pcm_sw_params_default()
  * Fixes in PCM rate, route/softvol plugins
  * Fixes in topology API parser, cleanups
  * Enhancements in latency test program
  * Minor code cleanup and memory leak fixes in UCM API
  * emu10k1 config cleanup
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.8_v1.2.9#alsa-lib</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1693828800">- Update to version 1.2.10 (jsc#PED-6566):
  * MIDI 2.0 feature support
  * build fixes for various platforms
  * various documentation fixes
  * misc topology fixes
  * ucm fixes and cleanups
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.9_v1.2.10#alsa-lib
- Took upstream fix for possible build errors:
  0001-control.h-Fix-ump-header-file-detection.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1694260800">- Upstream fix backport:
  0002-global.h-move-__STRING-macro-outside-PIC-ifdef-block.patch
- Upstream fix for PCM segfault regression (bsc#1215167):
  0003-pcm-Fix-segfault-with-32bit-libs.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1695038400">- More upstream fix for incosistent compile conditions:
  0004-reshuffle-included-files-to-include-config.h-as-firs.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1696939200">- Fix symbol version:
  0005-seq-Fix-typos-in-symbol-version-definitions.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1699358400">- Backport upstream fixes for sequencer and mixer:
  0006-seq-Fix-invalid-sanity-check-in-snd_seq_set_input_bu.patch
  0007-mixer-simple-Support-dB-TLVs-for-CTL_SINGLE-controls.patch
  0008-seq-Clear-UMP-event-flag-for-legacy-apps.patch
  0009-seq-Simplify-snd_seq_extract_output.patch
  0010-seq-Check-protocol-compatibility-with-the-current-ve.patch
- Clean up spec file</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1706875200">- Updated to alsa-lib 1.2.11:
  * auto-tools fixes, versioned symbol fixes
  * support dB TLVs for single controls
  * various PCM updates, including subformat extensions
  * UMP and sequencer API fixes
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.10_v1.2.11#alsa-lib
- Dropped obsoleted patches:
  0001-control.h-Fix-ump-header-file-detection.patch
  0002-global.h-move-__STRING-macro-outside-PIC-ifdef-block.patch
  0003-pcm-Fix-segfault-with-32bit-libs.patch
  0004-reshuffle-included-files-to-include-config.h-as-firs.patch
  0005-seq-Fix-typos-in-symbol-version-definitions.patch
  0006-seq-Fix-invalid-sanity-check-in-snd_seq_set_input_bu.patch
  0007-mixer-simple-Support-dB-TLVs-for-CTL_SINGLE-controls.patch
  0008-seq-Clear-UMP-event-flag-for-legacy-apps.patch
  0009-seq-Simplify-snd_seq_extract_output.patch
  0010-seq-Check-protocol-compatibility-with-the-current-ve.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1718280000">- Update to alsa-lib 1.2.12:
  * pcm: plug support for iec958 subframe samples
  * pcm: ladspa - Skip missing ladspa directories
  * topology: correct version script path
  * ucm: define and describe Syntax 7
  * async handler cleanup fix
  * conf updates
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.11_v1.2.12#alsa-lib</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1731412800">- Update to alsa-lib 1.2.13:
  * static build fixes
  * documentation update for control remap API
  * PCM dmix fixes
  * pcm: implement snd_pcm_hw_params_get_sync() and obsolete snd_pcm_info_get_sync()
  * ump: Add a function to provide the packet word length of a UMP type
  * seq: Add snd_seq_{get|set}_ump_is_midi1() API functions
  * seq: Add API functions to set different tempo base values
  * seq: Add API helper functions for creating UMP Endpoint and Blocks
  * documentation fixes for UMP and sequencer API
  * test: Add an example programs for UMP
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.12_v1.2.13#alsa-lib
- Conditionally take libtool</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1731672000">- Fix incorrect versioned symbol for snd_seq_has_queue_tempo_base:
  0001-src-Versions.in.in-Update-_tempo_base-name.patch</changelog>
</package>
<package pkgid="88bd140d51ffe27585670ffe0ea47be314abbeb974fa282ac28d0ce40fb46fea678c8ce885466cc357f1f8f40445aa7bba9659332d802bf60d9f8b7a02c5559b" name="alsa-topology-devel-32bit" arch="x86_64">
  <version epoch="0" ver="1.2.13" rel="3.1"/>
  <changelog author="tiwai@suse.de" date="1623240000">- Fix regression in config read and UCM handling on pipewire and
  pulseaudio (boo#1187079, boo#1187033):
  0001-conf-fix-load_for_all_cards.patch
  0002-ucm-add-_alibpref-to-get-the-private-device-prefix.patch
  0003-ucm-fix-_alibpref-string-add-.-delimiter-to-the-end.patch</changelog>
  <changelog author="tiwai@suse.de" date="1623672000">- Update to version 1.2.5.1:
  a bug fix release, including previous patches:
  https://www.alsa-project.org/wiki/Changes_v1.2.5_v1.2.5.1
- Drop obsoleted patches:
  0001-conf-fix-load_for_all_cards.patch
  0002-ucm-add-_alibpref-to-get-the-private-device-prefix.patch
  0003-ucm-fix-_alibpref-string-add-.-delimiter-to-the-end.patch</changelog>
  <changelog author="tiwai@suse.de" date="1638792000">- Update to version 1.2.6:
  lots of changes, including UCM and config updates and rawmidi
  framing mode support: for details, see below
  https://www.alsa-project.org/wiki/Changes_v1.2.5.1_v1.2.6#alsa-lib
- Add *.sig file for the source tarball</changelog>
  <changelog author="tiwai@suse.de" date="1639137600">- Update to version 1.2.6.1:
  a minor fix release:
  * conf: fix the device parsing when arguments has no defaults
  * conf: accept '_' character in the variable name</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1654084800">- Update to version 1.2.7:
  more extended UCM API, PCM rate,multi,direct plugin fixes and
  enhancements, compilation fixes, etc.  For details see:
  https://www.alsa-project.org/wiki/Changes_v1.2.6.3_v1.2.7#alsa-lib</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1654516800">- Backport upstream fixes for 32bit inode and ELD parsing:
  0001-conf-Use-ino64_t-to-save-and-compare-inode-numbers.patch
  0002-control-eld-fix-the-decoding-for-older-hw.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1655726400">- Update to version 1.2.7.1: minor bug fixes, including the previous
  patches.  For details, see
    https://www.alsa-project.org/wiki/Changes_v1.2.7_v1.2.7.1#alsa-lib
- Drop obsoleted patches:
  0001-conf-Use-ino64_t-to-save-and-compare-inode-numbers.patch
  0002-control-eld-fix-the-decoding-for-older-hw.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1658145600">- Update to version 1.2.7.2: minor updates, including fixes for PCM
  share plugin, rawmidi and UCM</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1666699200">- Update to version 1.2.8 (jsc#PED-850):
  add FreeBSD/NetBD/OpenBSD build support, fixes in control namehint,
  various PCM plugins and UCM.  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.7.2_v1.2.8
- Add keyring</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1683547200">- Update to version 1.2.9:
  * Versioned symbol updates
  * Various fixes for building on *BSD and Android
  * Fixes and enhancements of auto silencing and playback drain
  * Add SND_CTL_EINTR open mode at PCM
  * Avoid endless loop in snd_pcm_sw_params_default()
  * Fixes in PCM rate, route/softvol plugins
  * Fixes in topology API parser, cleanups
  * Enhancements in latency test program
  * Minor code cleanup and memory leak fixes in UCM API
  * emu10k1 config cleanup
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.8_v1.2.9#alsa-lib</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1693828800">- Update to version 1.2.10 (jsc#PED-6566):
  * MIDI 2.0 feature support
  * build fixes for various platforms
  * various documentation fixes
  * misc topology fixes
  * ucm fixes and cleanups
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.9_v1.2.10#alsa-lib
- Took upstream fix for possible build errors:
  0001-control.h-Fix-ump-header-file-detection.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1694260800">- Upstream fix backport:
  0002-global.h-move-__STRING-macro-outside-PIC-ifdef-block.patch
- Upstream fix for PCM segfault regression (bsc#1215167):
  0003-pcm-Fix-segfault-with-32bit-libs.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1695038400">- More upstream fix for incosistent compile conditions:
  0004-reshuffle-included-files-to-include-config.h-as-firs.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1696939200">- Fix symbol version:
  0005-seq-Fix-typos-in-symbol-version-definitions.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1699358400">- Backport upstream fixes for sequencer and mixer:
  0006-seq-Fix-invalid-sanity-check-in-snd_seq_set_input_bu.patch
  0007-mixer-simple-Support-dB-TLVs-for-CTL_SINGLE-controls.patch
  0008-seq-Clear-UMP-event-flag-for-legacy-apps.patch
  0009-seq-Simplify-snd_seq_extract_output.patch
  0010-seq-Check-protocol-compatibility-with-the-current-ve.patch
- Clean up spec file</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1706875200">- Updated to alsa-lib 1.2.11:
  * auto-tools fixes, versioned symbol fixes
  * support dB TLVs for single controls
  * various PCM updates, including subformat extensions
  * UMP and sequencer API fixes
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.10_v1.2.11#alsa-lib
- Dropped obsoleted patches:
  0001-control.h-Fix-ump-header-file-detection.patch
  0002-global.h-move-__STRING-macro-outside-PIC-ifdef-block.patch
  0003-pcm-Fix-segfault-with-32bit-libs.patch
  0004-reshuffle-included-files-to-include-config.h-as-firs.patch
  0005-seq-Fix-typos-in-symbol-version-definitions.patch
  0006-seq-Fix-invalid-sanity-check-in-snd_seq_set_input_bu.patch
  0007-mixer-simple-Support-dB-TLVs-for-CTL_SINGLE-controls.patch
  0008-seq-Clear-UMP-event-flag-for-legacy-apps.patch
  0009-seq-Simplify-snd_seq_extract_output.patch
  0010-seq-Check-protocol-compatibility-with-the-current-ve.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1718280000">- Update to alsa-lib 1.2.12:
  * pcm: plug support for iec958 subframe samples
  * pcm: ladspa - Skip missing ladspa directories
  * topology: correct version script path
  * ucm: define and describe Syntax 7
  * async handler cleanup fix
  * conf updates
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.11_v1.2.12#alsa-lib</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1731412800">- Update to alsa-lib 1.2.13:
  * static build fixes
  * documentation update for control remap API
  * PCM dmix fixes
  * pcm: implement snd_pcm_hw_params_get_sync() and obsolete snd_pcm_info_get_sync()
  * ump: Add a function to provide the packet word length of a UMP type
  * seq: Add snd_seq_{get|set}_ump_is_midi1() API functions
  * seq: Add API functions to set different tempo base values
  * seq: Add API helper functions for creating UMP Endpoint and Blocks
  * documentation fixes for UMP and sequencer API
  * test: Add an example programs for UMP
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.12_v1.2.13#alsa-lib
- Conditionally take libtool</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1731672000">- Fix incorrect versioned symbol for snd_seq_has_queue_tempo_base:
  0001-src-Versions.in.in-Update-_tempo_base-name.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1732449600">- Fix header inclusions for implicit dependnecies (bsc#1233682)
  0002-configure-Make-sequencer-dependent-on-rawmidi.patch
  0003-seq-include-UMP-headers.patch</changelog>
</package>
<package pkgid="80cae3b045592ea6d2e30b42cde434d58f0978792b4dc7b9eefcdc365c727a4cb3a23d4244415c24c566efb8b19934368b812e71fa33ae258477a0aed41071be" name="alsa-ucm-conf" arch="noarch">
  <version epoch="0" ver="1.2.13" rel="2.1"/>
  <changelog author="Ferdinand Thiessen &lt;rpm@fthiessen.de&gt;" date="1622462400">- Update to version 1.2.5
  * tegra: Add UCM for more devices
  * codecs/rt5640: Make headset optional
  * rt715: add mic led support
  * bytcr-rt5640: Add support for controlling a speaker-mute LED
  * cht-bsw-rt5672: Add support for controlling speaker- and
    mic-mute LEDs, Add support for the components string
  * ucm2: add support to for Qualcomm RB5 Platform
  * codecs/rt5672: Add hardware volume-control support
  * codecs/rt5640: Add hardware volume-control support
  * bytcr-wm5102: Add new UCM profile for BYT boards with a WM5102 codec
  * bytcr-rt5640: Add support for devices without speakers and/or
    an internal mic
  * chtrt5645: Enable Internal MIC of ECS EF20EA
  * chtnau8824: Add support for laptops using stereo DMICs and fix
    mono speaker config not working
  * Full changes:
    https://www.alsa-project.org/wiki/Changes_v1.2.4_v1.2.5#alsa-ucm-conf
- Drop upstream fixes
  * 0001-fix-the-ucm2-codecs-hda-hdmi.conf-use.patch
  * 0002-codecs-hda-hdmi.conf-add-DisplayPort-to-the-device-d.patch
  * 0003-sof-soundwire-use-the-codecs-hda-hdmi.conf-macro.patch
  * 0004-Revert-ucm2-HDA-acp-add-Capture-simple-mixer-element.patch
  * 0005-chtnau8824-Fix-mono-speaker-config-not-working.patch
  * 0006-chtnau8824-Add-support-for-laptops-using-stereo-DMIC.patch
  * 0007-chtnau8824-Boost-analog-mic-volumes-a-bit.patch
  * 0008-rt715-init-setup-ADC07-to-a-proper-volume.patch
  * 0009-sof-hda-dsp-Set-Master-Playback-Switch-on-in-the-Boo.patch
  * 0010-HDA-Intel-HiFi-dual-Add-EnableSequence-and-DisableSe.patch
  * 0011-HDA-Intel-HiFi-dual-Add-BootSequence-and-disable-pla.patch
  * 0012-chtrt5645-Enable-Internal-MIC-of-ECS-EF20EA.patch
  * 0013-bytcr-rt5640-Add-support-for-devices-without-speaker.patch
  * 0014-rt5640-Move-standard-DAC-setup-to-EnableSeq.conf.patch
  * 0015-bytcr-rt5640-fix-the-execution-order.patch
  * 0016-ucm2-add-initial-configuration-for-TRX40-Gigabyte-Ao.patch
  * 0017-USB-Audio-ALC1220-Bump-analog-Speaker-priority-over-.patch
  * 0018-USB-Audio-ALC1220-fix-indentation-for-Speaker-device.patch
  * 0019-USB-Audio-fix-indentation-in-Gigabyte-Aorus-Master-M.patch
  * 0020-chtnau8824-Add-a-SST-define-variable.patch
  * 0021-kblrt5660-Fix-file-permissions.patch</changelog>
  <changelog author="tiwai@suse.de" date="1623240000">- Fix for HDA config lookup (boo#1187079):
  0001-HDA-Intel-the-lookups-are-supported-from-syntax-4.patch</changelog>
  <changelog author="tiwai@suse.de" date="1623672000">- Update to version 1.2.5.1:
  a small bugfix release, including the previous patch
  https://www.alsa-project.org/wiki/Changes_v1.2.5_v1.2.5.1
- Drop the obsoleted patch:
  0001-HDA-Intel-the-lookups-are-supported-from-syntax-4.patch</changelog>
  <changelog author="tiwai@suse.de" date="1638792000">- Update to version 1.2.6:
  various profile updates.  See URL below for details:
    https://alsa-project.org/wiki/Changes_v1.2.5.1_v1.2.6#alsa-ucm-conf
- Add *.sig file for the tarball
- Explicit Requires for the libasound2 with the same or newer
  version</changelog>
  <changelog author="tiwai@suse.de" date="1639137600">- Update to version 1.2.6.1:
  a minor fix release:
  * acp: fix linked configuration
  * ucm2: Add support for SC7180 Trogdor Lazor Chromebooks
  * USB-Audio: fix the wrong condition type for If.realtek-alc1220-vb
- More a couple of upstream fixes for forgotten conversions:
  0001-sof-hda-dsp-fix-path-to-Hdmi.conf.patch
  0002-bytcht-es8316-fix-Include-paths-in-HiFi.conf.patch</changelog>
  <changelog author="tiwai@suse.de" date="1639137601">- Update to version 1.2.6.2:
  a minor fix release, just includnig ther previous fixes
- Drop obsoleted patches
  0001-sof-hda-dsp-fix-path-to-Hdmi.conf.patch
  0002-bytcht-es8316-fix-Include-paths-in-HiFi.conf.patch</changelog>
  <changelog author="tiwai@suse.de" date="1640520000">- Update to version 1.2.6.3:
  * ucm2/Qualcomm/apq8096: Change plughw to hw to access card
  * ucm2/Qualcomm/apq8016-sbc: Change plughw to hw to access card
  * ucm2: Add support for RT5650 on MediaTek SoCs
  * sof-soundwire: use absolute path in SectionUseCase</changelog>
  <changelog author="tiwai@suse.de" date="1640865600">- Fix a regression in HDA-DualCodecs:
  0001-HDA-DualCodecs-fix-typo-in-Speaker-condition.patch</changelog>
  <changelog author="tiwai@suse.de" date="1642766400">- Fix regression for AMD ACP LED control:
  0002-HDA-acp-avoid-to-create-Mic-ACP-LED-control-for-the-.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1654084800">- Update to version 1.2.7:
  Various profile updates for USB-audio, HD-audio, etc.
  For details, see:
  https://www.alsa-project.org/wiki/Changes_v1.2.6.3_v1.2.7#alsa-ucm-conf
- Drop obsoleted patches:
  0001-HDA-DualCodecs-fix-typo-in-Speaker-condition.patch
  0002-HDA-acp-avoid-to-create-Mic-ACP-LED-control-for-the-.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1654516800">- Backport upstream fixes for Steinberg UR44:
  0001-Steinberg-UR44-fix-the-Line2-channel-mapping.patch
  0002-Steinberg-UR44-fix-the-Line2-channel-mapping-2nd.patch
  0003-Steinberg-UR44-fix-the-direction-for-steinberg_ur44_.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1655726400">- Update to version 1.2.7.1:
  updates of various device-specific profiles.  For details, see
  https://www.alsa-project.org/wiki/Changes_v1.2.7_v1.2.7.1#alsa-ucm-conf
- Drop obsoleted patches:
  0001-Steinberg-UR44-fix-the-Line2-channel-mapping.patch
  0002-Steinberg-UR44-fix-the-Line2-channel-mapping-2nd.patch
  0003-Steinberg-UR44-fix-the-direction-for-steinberg_ur44_.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1658145600">- Update to version 1.2.7.2:
    updates of various device-specific profiles.  For details, see
  https://www.alsa-project.org/wiki/Changes_v1.2.7.1_v1.2.7.2#alsa-ucm-conf</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1666699200">- Update to version 1.2.8 (jsc#PED-850):
  lots of new profiles for USB-audio, SOF and others:
  https://www.alsa-project.org/wiki/Changes_v1.2.7.2_v1.2.8
- Add keyring</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1683547200">- Update to version 1.2.9:
  various profile updates for USB-audio, SOF and others.
  For details, see:
  https://www.alsa-project.org/wiki/Changes_v1.2.8_v1.2.9#alsa-ucm-conf</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1693828800">- Update to version 1.2.10 (jsc#PED-6566):
  * updates / fixes for various devices: mtk-rt5650, usb-audio, tegra
    es8316, sof-essx8336, pinephone, Steinberg UR44C, AMD ACP RPL,
    ACP63, sof-hda-dsp, etc
  For details, see:
  https://www.alsa-project.org/wiki/Changes_v1.2.9_v1.2.10#alsa-ucm-conf
- Upstream regression fix:
  0001-SplitPCM-Device-argument-may-not-be-set.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1706875200">- Update to version 1.2.11:
  * Qualcomm, Mediatek, SOF soundwire, and various USB-audio profiles
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.10_v1.2.11#alsa-ucm-conf
- Drop obsoleted patch:
  0001-SplitPCM-Device-argument-may-not-be-set.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1718280000">- Update to version 1.2.12:
  * Various updates for codecs, soundwire and SOF devices
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.11_v1.2.12#alsa-ucm-conf</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1731412800">- Update to version 1.2.13:
  * Updates for USB-audio, Mediatek, Qualcomm, ACP, SoundWire,
    wsa884x, wcd938x, Intel AVS, SOF HDA, etc
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.12_v1.2.13#alsa-ucm-conf</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1731499200">- Backport upstream fixes for sof-hda-dsp:
  0001-UCM2-Intel-sof-hda-dsp-Fix-handling-of-empty-sys_ven.patch
  0002-sof-hda-dsp-Fix-the-case-where-sysfs-dmi-product_nam.patch</changelog>
</package>
<package pkgid="5f74bc071596cff0eaaefe9c7aa213e1029e45ab9f817e639dd4f43c87eae73aa606a16c68e83ea6e4f526b216a52a14f38bd6e444f2f7f74b3c4e36017bdca6" name="alsa-ucm-conf" arch="src">
  <version epoch="0" ver="1.2.13" rel="2.1"/>
  <changelog author="Ferdinand Thiessen &lt;rpm@fthiessen.de&gt;" date="1622462400">- Update to version 1.2.5
  * tegra: Add UCM for more devices
  * codecs/rt5640: Make headset optional
  * rt715: add mic led support
  * bytcr-rt5640: Add support for controlling a speaker-mute LED
  * cht-bsw-rt5672: Add support for controlling speaker- and
    mic-mute LEDs, Add support for the components string
  * ucm2: add support to for Qualcomm RB5 Platform
  * codecs/rt5672: Add hardware volume-control support
  * codecs/rt5640: Add hardware volume-control support
  * bytcr-wm5102: Add new UCM profile for BYT boards with a WM5102 codec
  * bytcr-rt5640: Add support for devices without speakers and/or
    an internal mic
  * chtrt5645: Enable Internal MIC of ECS EF20EA
  * chtnau8824: Add support for laptops using stereo DMICs and fix
    mono speaker config not working
  * Full changes:
    https://www.alsa-project.org/wiki/Changes_v1.2.4_v1.2.5#alsa-ucm-conf
- Drop upstream fixes
  * 0001-fix-the-ucm2-codecs-hda-hdmi.conf-use.patch
  * 0002-codecs-hda-hdmi.conf-add-DisplayPort-to-the-device-d.patch
  * 0003-sof-soundwire-use-the-codecs-hda-hdmi.conf-macro.patch
  * 0004-Revert-ucm2-HDA-acp-add-Capture-simple-mixer-element.patch
  * 0005-chtnau8824-Fix-mono-speaker-config-not-working.patch
  * 0006-chtnau8824-Add-support-for-laptops-using-stereo-DMIC.patch
  * 0007-chtnau8824-Boost-analog-mic-volumes-a-bit.patch
  * 0008-rt715-init-setup-ADC07-to-a-proper-volume.patch
  * 0009-sof-hda-dsp-Set-Master-Playback-Switch-on-in-the-Boo.patch
  * 0010-HDA-Intel-HiFi-dual-Add-EnableSequence-and-DisableSe.patch
  * 0011-HDA-Intel-HiFi-dual-Add-BootSequence-and-disable-pla.patch
  * 0012-chtrt5645-Enable-Internal-MIC-of-ECS-EF20EA.patch
  * 0013-bytcr-rt5640-Add-support-for-devices-without-speaker.patch
  * 0014-rt5640-Move-standard-DAC-setup-to-EnableSeq.conf.patch
  * 0015-bytcr-rt5640-fix-the-execution-order.patch
  * 0016-ucm2-add-initial-configuration-for-TRX40-Gigabyte-Ao.patch
  * 0017-USB-Audio-ALC1220-Bump-analog-Speaker-priority-over-.patch
  * 0018-USB-Audio-ALC1220-fix-indentation-for-Speaker-device.patch
  * 0019-USB-Audio-fix-indentation-in-Gigabyte-Aorus-Master-M.patch
  * 0020-chtnau8824-Add-a-SST-define-variable.patch
  * 0021-kblrt5660-Fix-file-permissions.patch</changelog>
  <changelog author="tiwai@suse.de" date="1623240000">- Fix for HDA config lookup (boo#1187079):
  0001-HDA-Intel-the-lookups-are-supported-from-syntax-4.patch</changelog>
  <changelog author="tiwai@suse.de" date="1623672000">- Update to version 1.2.5.1:
  a small bugfix release, including the previous patch
  https://www.alsa-project.org/wiki/Changes_v1.2.5_v1.2.5.1
- Drop the obsoleted patch:
  0001-HDA-Intel-the-lookups-are-supported-from-syntax-4.patch</changelog>
  <changelog author="tiwai@suse.de" date="1638792000">- Update to version 1.2.6:
  various profile updates.  See URL below for details:
    https://alsa-project.org/wiki/Changes_v1.2.5.1_v1.2.6#alsa-ucm-conf
- Add *.sig file for the tarball
- Explicit Requires for the libasound2 with the same or newer
  version</changelog>
  <changelog author="tiwai@suse.de" date="1639137600">- Update to version 1.2.6.1:
  a minor fix release:
  * acp: fix linked configuration
  * ucm2: Add support for SC7180 Trogdor Lazor Chromebooks
  * USB-Audio: fix the wrong condition type for If.realtek-alc1220-vb
- More a couple of upstream fixes for forgotten conversions:
  0001-sof-hda-dsp-fix-path-to-Hdmi.conf.patch
  0002-bytcht-es8316-fix-Include-paths-in-HiFi.conf.patch</changelog>
  <changelog author="tiwai@suse.de" date="1639137601">- Update to version 1.2.6.2:
  a minor fix release, just includnig ther previous fixes
- Drop obsoleted patches
  0001-sof-hda-dsp-fix-path-to-Hdmi.conf.patch
  0002-bytcht-es8316-fix-Include-paths-in-HiFi.conf.patch</changelog>
  <changelog author="tiwai@suse.de" date="1640520000">- Update to version 1.2.6.3:
  * ucm2/Qualcomm/apq8096: Change plughw to hw to access card
  * ucm2/Qualcomm/apq8016-sbc: Change plughw to hw to access card
  * ucm2: Add support for RT5650 on MediaTek SoCs
  * sof-soundwire: use absolute path in SectionUseCase</changelog>
  <changelog author="tiwai@suse.de" date="1640865600">- Fix a regression in HDA-DualCodecs:
  0001-HDA-DualCodecs-fix-typo-in-Speaker-condition.patch</changelog>
  <changelog author="tiwai@suse.de" date="1642766400">- Fix regression for AMD ACP LED control:
  0002-HDA-acp-avoid-to-create-Mic-ACP-LED-control-for-the-.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1654084800">- Update to version 1.2.7:
  Various profile updates for USB-audio, HD-audio, etc.
  For details, see:
  https://www.alsa-project.org/wiki/Changes_v1.2.6.3_v1.2.7#alsa-ucm-conf
- Drop obsoleted patches:
  0001-HDA-DualCodecs-fix-typo-in-Speaker-condition.patch
  0002-HDA-acp-avoid-to-create-Mic-ACP-LED-control-for-the-.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1654516800">- Backport upstream fixes for Steinberg UR44:
  0001-Steinberg-UR44-fix-the-Line2-channel-mapping.patch
  0002-Steinberg-UR44-fix-the-Line2-channel-mapping-2nd.patch
  0003-Steinberg-UR44-fix-the-direction-for-steinberg_ur44_.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1655726400">- Update to version 1.2.7.1:
  updates of various device-specific profiles.  For details, see
  https://www.alsa-project.org/wiki/Changes_v1.2.7_v1.2.7.1#alsa-ucm-conf
- Drop obsoleted patches:
  0001-Steinberg-UR44-fix-the-Line2-channel-mapping.patch
  0002-Steinberg-UR44-fix-the-Line2-channel-mapping-2nd.patch
  0003-Steinberg-UR44-fix-the-direction-for-steinberg_ur44_.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1658145600">- Update to version 1.2.7.2:
    updates of various device-specific profiles.  For details, see
  https://www.alsa-project.org/wiki/Changes_v1.2.7.1_v1.2.7.2#alsa-ucm-conf</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1666699200">- Update to version 1.2.8 (jsc#PED-850):
  lots of new profiles for USB-audio, SOF and others:
  https://www.alsa-project.org/wiki/Changes_v1.2.7.2_v1.2.8
- Add keyring</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1683547200">- Update to version 1.2.9:
  various profile updates for USB-audio, SOF and others.
  For details, see:
  https://www.alsa-project.org/wiki/Changes_v1.2.8_v1.2.9#alsa-ucm-conf</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1693828800">- Update to version 1.2.10 (jsc#PED-6566):
  * updates / fixes for various devices: mtk-rt5650, usb-audio, tegra
    es8316, sof-essx8336, pinephone, Steinberg UR44C, AMD ACP RPL,
    ACP63, sof-hda-dsp, etc
  For details, see:
  https://www.alsa-project.org/wiki/Changes_v1.2.9_v1.2.10#alsa-ucm-conf
- Upstream regression fix:
  0001-SplitPCM-Device-argument-may-not-be-set.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1706875200">- Update to version 1.2.11:
  * Qualcomm, Mediatek, SOF soundwire, and various USB-audio profiles
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.10_v1.2.11#alsa-ucm-conf
- Drop obsoleted patch:
  0001-SplitPCM-Device-argument-may-not-be-set.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1718280000">- Update to version 1.2.12:
  * Various updates for codecs, soundwire and SOF devices
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.11_v1.2.12#alsa-ucm-conf</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1731412800">- Update to version 1.2.13:
  * Updates for USB-audio, Mediatek, Qualcomm, ACP, SoundWire,
    wsa884x, wcd938x, Intel AVS, SOF HDA, etc
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.12_v1.2.13#alsa-ucm-conf</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1731499200">- Backport upstream fixes for sof-hda-dsp:
  0001-UCM2-Intel-sof-hda-dsp-Fix-handling-of-empty-sys_ven.patch
  0002-sof-hda-dsp-Fix-the-case-where-sysfs-dmi-product_nam.patch</changelog>
</package>
<package pkgid="53805e3002e4c38e0e06c7fe985a9478fe8bd6ad705f067b2788037c71b6b91518eb913f840c751e12385c4514339bd09e404d4c630a6cb59721ce98c851d2cd" name="alsa-utils" arch="i586">
  <version epoch="0" ver="1.2.13" rel="2.0.2.1.sr20241103"/>
  <changelog author="tiwai@suse.de" date="1611230400">- Backport upstream fixes:
  various fixes in aplay, alsamixer, alsactl and alsaloop, updated
  translations, etc:
  0001-aplay-try-to-use-16-bit-format-to-increase-capture-q.patch
  0002-alsamixer-Fix-the-mixer-views-description-in-man-pag.patch
  0003-Add-Slovak-translation.patch
  0004-Add-Basque-translation.patch
  0006-aplay-cosmetic-code-fix-in-xrun.patch
  0007-aplay-fix-the-CPU-busy-loop-in-the-pause-handler.patch
  0008-alsa-info-Add-lsusb-and-stream-outputs.patch
  0013-aplay-add-test-code-for-snd_pcm_status-to-test-posit.patch
  0014-ucm-fix-typo-in-docs.patch
  0015-aplay-add-avail-delay-checks-to-test-position.patch
  0016-alsactl-daemon-read_pid_file-fix-the-returned-code-o.patch
  0017-alsactl-init-set_ctl_value-fix-bytes-parsing.patch
  0018-alsactl-init-parse-fix-possible-double-free.patch
  0019-alsaloop-fix-possible-memory-leak-in-create_loopback.patch
  0020-alsaloop-get_queued_playback_samples-simplify-code.patch
  0021-topology-fix-possible-double-free-in-load.patch
  0022-alsamixer-remove-dead-fcn-widget_handle_key-in-widge.patch
  0023-alsamixer-remove-unused-variable-y-in-display_scroll.patch
  0024-alsamixer-fix-shift-in-parse_words.patch
  0025-aplay-fix-the-test-position-test-for-playback-avail-.patch</changelog>
  <changelog author="tiwai@suse.de" date="1616068800">- Fix superfluous asound.state migration (bsc#1183672)</changelog>
  <changelog author="tiwai@suse.de" date="1619438400">- Suppress automatic update of alsa-info.sh (bsc#1185280):
  alsa-info-no-update-for-distro-script.patch</changelog>
  <changelog author="tiwai@suse.de" date="1623672000">- Update to alsa-utils 1.2.5:
  a major version up, including previous patches
  https://www.alsa-project.org/wiki/Changes_v1.2.4_v1.2.5
- Update to alsa-utils 1.2.5.1:
  a small bugfix release
  https://www.alsa-project.org/wiki/Changes_v1.2.5_v1.2.5.1
- Drop the obsoleted patches:
  0001-aplay-try-to-use-16-bit-format-to-increase-capture-q.patch
  0002-alsamixer-Fix-the-mixer-views-description-in-man-pag.patch
  0003-Add-Slovak-translation.patch
  0004-Add-Basque-translation.patch
  0006-aplay-cosmetic-code-fix-in-xrun.patch
  0007-aplay-fix-the-CPU-busy-loop-in-the-pause-handler.patch
  0008-alsa-info-Add-lsusb-and-stream-outputs.patch
  0010-alsactl-Fix-double-decrease-of-lock-timeout.patch
  0011-alsactl-Fix-race-at-creating-a-lock-file.patch
  0012-alsactl-Remove-asound.state-file-check-from-alsa-res.patch
  0013-aplay-add-test-code-for-snd_pcm_status-to-test-posit.patch
  0014-ucm-fix-typo-in-docs.patch
  0015-aplay-add-avail-delay-checks-to-test-position.patch
  0016-alsactl-daemon-read_pid_file-fix-the-returned-code-o.patch
  0017-alsactl-init-set_ctl_value-fix-bytes-parsing.patch
  0018-alsactl-init-parse-fix-possible-double-free.patch
  0019-alsaloop-fix-possible-memory-leak-in-create_loopback.patch
  0020-alsaloop-get_queued_playback_samples-simplify-code.patch
  0021-topology-fix-possible-double-free-in-load.patch
  0022-alsamixer-remove-dead-fcn-widget_handle_key-in-widge.patch
  0023-alsamixer-remove-unused-variable-y-in-display_scroll.patch
  0024-alsamixer-fix-shift-in-parse_words.patch
  0025-aplay-fix-the-test-position-test-for-playback-avail-.patch</changelog>
  <changelog author="Johannes Segitz &lt;jsegitz@suse.com&gt;" date="1627473600">- Added hardening to systemd service(s). Modified:
  * sound-extra.service</changelog>
  <changelog author="Johannes Segitz &lt;jsegitz@suse.com&gt;" date="1634299200">- Drop ProtectClock hardening, can cause issues if other device acceess is needed</changelog>
  <changelog author="tiwai@suse.de" date="1638792000">- Update to alsa-utils 1.2.6:
  various updates / fixes for alsactl, amidi, alsaloop, alsamixer,
  alsatplg, amixer, aplay and aseqnet.  Details are found in
    https://alsa-project.org/wiki/Changes_v1.2.5.1_v1.2.6#alsa-utils
- Update the download URL
- Add *.sig file for the tarball</changelog>
  <changelog author="tiwai@suse.de" date="1642766400">- Fix alsamixer color config regression:
  0001-alsamixer-Fix-regression-in-color-setup.patch</changelog>
  <changelog author="tiwai@suse.de" date="1643371200">- Fix the broken mouse support on alsamixer:
  0002-alsamixer-Revert-has_mouse-check.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1654084800">- Update to alsa-utils 1.2.7:
  Enhancement and fixes of alsactl, speaker-test cleanup,
  alsatplg enhancements, arecord ghost data fix, etc.
  For details see:
  https://www.alsa-project.org/wiki/Changes_v1.2.6.3_v1.2.7#alsa-utils
- Drop obsoleted patches:
  0001-alsamixer-Fix-regression-in-color-setup.patch
  0002-alsamixer-Revert-has_mouse-check.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1666699200">- Update to alsa-utils 1.2.8 (jsc#PED-850):
  automake update, minor alsactl, amixer and aplay fixes.
  https://www.alsa-project.org/wiki/Changes_v1.2.7.2_v1.2.8
- Add keyring</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1683547200">- Update to alsa-utils 1.2.9:
  BSD build fix, and various updates for alsactl, amidi, axfer,
  alsa-info.sh, alsaloop, alsatplg, alsaucm, aplay, abat.
  For details, see:
  https://www.alsa-project.org/wiki/Changes_v1.2.8_v1.2.9#alsa-utils</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1693828800">- Update to alsa-utils 1.2.10 (jsc#PED-6566):
  * MIDI 2.0 / UMP support for sequencer programs
  * nhlt: add nhlt-dmic-info utility
  * Build fixes and cleanups
  * speaker-test: allow large buffer and period time setup - up to 100 seconds
  * various topology fixes
  For details, see:
  https://www.alsa-project.org/wiki/Changes_v1.2.9_v1.2.10#alsa-utils
- Fix the builds with old gcc:
  0001-axfer-use-ATTRIBUTE_UNUSED-instead-remove-argument-n.patch
  0002-amidi-use-ATTRIBUTE_UNUSED-instead-remove-argument-n.patch
  0003-alsaloop-use-ATTRIBUTE_UNUSED-instead-remove-argumen.patch
  0004-bat-use-ATTRIBUTE_UNUSED-instead-remove-argument-nam.patch
  0005-seq-use-ATTRIBUTE_UNUSED-instead-remove-argument-nam.patch
  0006-alsaucm-use-ATTRIBUTE_UNUSED-instead-remove-argument.patch
  0007-topology-use-ATTRIBUTE_UNUSED-instead-remove-argumen.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1704715200">- Backport upstream fixes:
  buffer overflow fixes in aplay, segfault in aplaymidi, etc:
  0008-topology-include-locale.h.patch
  0009-nhlt-dmic-info.c-include-sys-types.h.patch
  0010-topology-pre-processor-Add-support-for-enum-controls.patch
  0011-configure.ac-fix-UMP-support-detection.patch
  0012-bat-really-skip-analysis-of-the-first-period-and-upd.patch
  0013-topology-add-include-for-ENABLE_NLS-on-musl.patch
  0014-nhlt-use-stdint.h-types.patch
  0015-Revert-nhlt-dmic-info.c-include-sys-types.h.patch
  0016-aplay-use-stdint.h-types-instead-u_int-u_short-u_cha.patch
  0017-alsa-restore.rules-use-devnode-instead-number-atribu.patch
  0018-nhlt-Revert-SSP_ANALOG-device_type-field.patch
  0019-alsactl-fix-potential-buffer-overwrite.patch
  0020-aplay-fix-buffer-overflow-and-tainted-format-string.patch
  0021-misc-fix-incorrect-usages-of-strerror.patch
  0022-aplay-Add-option-for-specifying-subformat.patch
  0023-aplay-allow-to-compile-with-older-alsa-lib-subformat.patch
  0024-aplay-log-pcm-status-before-reporting-a-fatal-error.patch
  0025-aplay-enable-timestamps-by-default.patch
  0026-aplay-status-dumps-are-called-only-in-verbose-mode.patch
  0027-aplaymidi-Set-event-completely-for-tempo-event.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1706875200">- Update to alsa-utils 1.2.11:
  * alsactl buffer overflow fix
  * alsatplg updates, NHLT ACPI parser updates
  * use smaller periods for speaker-test
  * add bandwidth-limited pink noise for speaker-test
  * aplay updates, including subformat extensions
  * compile warning fixes
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.10_v1.2.11#alsa-utils
- Drop obsoleted patches:
  0001-axfer-use-ATTRIBUTE_UNUSED-instead-remove-argument-n.patch
  0002-amidi-use-ATTRIBUTE_UNUSED-instead-remove-argument-n.patch
  0003-alsaloop-use-ATTRIBUTE_UNUSED-instead-remove-argumen.patch
  0004-bat-use-ATTRIBUTE_UNUSED-instead-remove-argument-nam.patch
  0005-seq-use-ATTRIBUTE_UNUSED-instead-remove-argument-nam.patch
  0006-alsaucm-use-ATTRIBUTE_UNUSED-instead-remove-argument.patch
  0007-topology-use-ATTRIBUTE_UNUSED-instead-remove-argumen.patch
  0008-topology-include-locale.h.patch
  0009-nhlt-dmic-info.c-include-sys-types.h.patch
  0010-topology-pre-processor-Add-support-for-enum-controls.patch
  0011-configure.ac-fix-UMP-support-detection.patch
  0012-bat-really-skip-analysis-of-the-first-period-and-upd.patch
  0013-topology-add-include-for-ENABLE_NLS-on-musl.patch
  0014-nhlt-use-stdint.h-types.patch
  0015-Revert-nhlt-dmic-info.c-include-sys-types.h.patch
  0016-aplay-use-stdint.h-types-instead-u_int-u_short-u_cha.patch
  0017-alsa-restore.rules-use-devnode-instead-number-atribu.patch
  0018-nhlt-Revert-SSP_ANALOG-device_type-field.patch
  0019-alsactl-fix-potential-buffer-overwrite.patch
  0020-aplay-fix-buffer-overflow-and-tainted-format-string.patch
  0021-misc-fix-incorrect-usages-of-strerror.patch
  0022-aplay-Add-option-for-specifying-subformat.patch
  0023-aplay-allow-to-compile-with-older-alsa-lib-subformat.patch
  0024-aplay-log-pcm-status-before-reporting-a-fatal-error.patch
  0025-aplay-enable-timestamps-by-default.patch
  0026-aplay-status-dumps-are-called-only-in-verbose-mode.patch
  0027-aplaymidi-Set-event-completely-for-tempo-event.patch</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1708430400">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Antonio Larrosa &lt;alarrosa@suse.com&gt;" date="1717070400">- Require tree which is used by alsa-info.sh (bsc#1225665)</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1718280000">- Update to alsa-utils 1.2.12:
  * alsactl: NULL pointer fix
  * alsa-info.sh: log SoundWire devices reported in ACPI
  * alsamixer: fix calculation in set_normalized_volume (overflow)
  * topology: nhlt fixes
  * aplay: fix S24_LE wav header
  * aseqdump: Add dump for UMP Utility and System messages
  * Addition of aseqsend
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.11_v1.2.12#alsa-utils</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1731412800">- Update to alsa-utils 1.2.13:
  * alsactl: add support for AMD ACP digital microphone
  * aplay: Print '=== PAUSE ===' only if it is supported
  * aplaymidi/arecordmidi: Allow to pass 0 to -u option, too
  * new aplaymidi2/arecordmidi2 for MIDI v2.0
  * aseqdump: improved UMP supports
  * various topology updates
  * aseqsend: improvement and UMP supports
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.12_v1.2.13#alsa-utils</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1731585600">- Fix alsactl restore error (bsc#1233353):
  0001-alsactl-90-alsa-restore.rules-fix-alsa_restore_go-st.patch</changelog>
</package>
<package pkgid="ad8a977ce61650a42a2ba1ea2a0c39ecedda75b388f2faf9659e3f5360ce1a66036770ccca284aec1c4ab1c3677bae2bbef79707e7b8d6e85f403b5f7cadd07d" name="alsa-utils" arch="src">
  <version epoch="0" ver="1.2.13" rel="2.0.2.1.sr20241103"/>
  <changelog author="tiwai@suse.de" date="1611230400">- Backport upstream fixes:
  various fixes in aplay, alsamixer, alsactl and alsaloop, updated
  translations, etc:
  0001-aplay-try-to-use-16-bit-format-to-increase-capture-q.patch
  0002-alsamixer-Fix-the-mixer-views-description-in-man-pag.patch
  0003-Add-Slovak-translation.patch
  0004-Add-Basque-translation.patch
  0006-aplay-cosmetic-code-fix-in-xrun.patch
  0007-aplay-fix-the-CPU-busy-loop-in-the-pause-handler.patch
  0008-alsa-info-Add-lsusb-and-stream-outputs.patch
  0013-aplay-add-test-code-for-snd_pcm_status-to-test-posit.patch
  0014-ucm-fix-typo-in-docs.patch
  0015-aplay-add-avail-delay-checks-to-test-position.patch
  0016-alsactl-daemon-read_pid_file-fix-the-returned-code-o.patch
  0017-alsactl-init-set_ctl_value-fix-bytes-parsing.patch
  0018-alsactl-init-parse-fix-possible-double-free.patch
  0019-alsaloop-fix-possible-memory-leak-in-create_loopback.patch
  0020-alsaloop-get_queued_playback_samples-simplify-code.patch
  0021-topology-fix-possible-double-free-in-load.patch
  0022-alsamixer-remove-dead-fcn-widget_handle_key-in-widge.patch
  0023-alsamixer-remove-unused-variable-y-in-display_scroll.patch
  0024-alsamixer-fix-shift-in-parse_words.patch
  0025-aplay-fix-the-test-position-test-for-playback-avail-.patch</changelog>
  <changelog author="tiwai@suse.de" date="1616068800">- Fix superfluous asound.state migration (bsc#1183672)</changelog>
  <changelog author="tiwai@suse.de" date="1619438400">- Suppress automatic update of alsa-info.sh (bsc#1185280):
  alsa-info-no-update-for-distro-script.patch</changelog>
  <changelog author="tiwai@suse.de" date="1623672000">- Update to alsa-utils 1.2.5:
  a major version up, including previous patches
  https://www.alsa-project.org/wiki/Changes_v1.2.4_v1.2.5
- Update to alsa-utils 1.2.5.1:
  a small bugfix release
  https://www.alsa-project.org/wiki/Changes_v1.2.5_v1.2.5.1
- Drop the obsoleted patches:
  0001-aplay-try-to-use-16-bit-format-to-increase-capture-q.patch
  0002-alsamixer-Fix-the-mixer-views-description-in-man-pag.patch
  0003-Add-Slovak-translation.patch
  0004-Add-Basque-translation.patch
  0006-aplay-cosmetic-code-fix-in-xrun.patch
  0007-aplay-fix-the-CPU-busy-loop-in-the-pause-handler.patch
  0008-alsa-info-Add-lsusb-and-stream-outputs.patch
  0010-alsactl-Fix-double-decrease-of-lock-timeout.patch
  0011-alsactl-Fix-race-at-creating-a-lock-file.patch
  0012-alsactl-Remove-asound.state-file-check-from-alsa-res.patch
  0013-aplay-add-test-code-for-snd_pcm_status-to-test-posit.patch
  0014-ucm-fix-typo-in-docs.patch
  0015-aplay-add-avail-delay-checks-to-test-position.patch
  0016-alsactl-daemon-read_pid_file-fix-the-returned-code-o.patch
  0017-alsactl-init-set_ctl_value-fix-bytes-parsing.patch
  0018-alsactl-init-parse-fix-possible-double-free.patch
  0019-alsaloop-fix-possible-memory-leak-in-create_loopback.patch
  0020-alsaloop-get_queued_playback_samples-simplify-code.patch
  0021-topology-fix-possible-double-free-in-load.patch
  0022-alsamixer-remove-dead-fcn-widget_handle_key-in-widge.patch
  0023-alsamixer-remove-unused-variable-y-in-display_scroll.patch
  0024-alsamixer-fix-shift-in-parse_words.patch
  0025-aplay-fix-the-test-position-test-for-playback-avail-.patch</changelog>
  <changelog author="Johannes Segitz &lt;jsegitz@suse.com&gt;" date="1627473600">- Added hardening to systemd service(s). Modified:
  * sound-extra.service</changelog>
  <changelog author="Johannes Segitz &lt;jsegitz@suse.com&gt;" date="1634299200">- Drop ProtectClock hardening, can cause issues if other device acceess is needed</changelog>
  <changelog author="tiwai@suse.de" date="1638792000">- Update to alsa-utils 1.2.6:
  various updates / fixes for alsactl, amidi, alsaloop, alsamixer,
  alsatplg, amixer, aplay and aseqnet.  Details are found in
    https://alsa-project.org/wiki/Changes_v1.2.5.1_v1.2.6#alsa-utils
- Update the download URL
- Add *.sig file for the tarball</changelog>
  <changelog author="tiwai@suse.de" date="1642766400">- Fix alsamixer color config regression:
  0001-alsamixer-Fix-regression-in-color-setup.patch</changelog>
  <changelog author="tiwai@suse.de" date="1643371200">- Fix the broken mouse support on alsamixer:
  0002-alsamixer-Revert-has_mouse-check.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1654084800">- Update to alsa-utils 1.2.7:
  Enhancement and fixes of alsactl, speaker-test cleanup,
  alsatplg enhancements, arecord ghost data fix, etc.
  For details see:
  https://www.alsa-project.org/wiki/Changes_v1.2.6.3_v1.2.7#alsa-utils
- Drop obsoleted patches:
  0001-alsamixer-Fix-regression-in-color-setup.patch
  0002-alsamixer-Revert-has_mouse-check.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1666699200">- Update to alsa-utils 1.2.8 (jsc#PED-850):
  automake update, minor alsactl, amixer and aplay fixes.
  https://www.alsa-project.org/wiki/Changes_v1.2.7.2_v1.2.8
- Add keyring</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1683547200">- Update to alsa-utils 1.2.9:
  BSD build fix, and various updates for alsactl, amidi, axfer,
  alsa-info.sh, alsaloop, alsatplg, alsaucm, aplay, abat.
  For details, see:
  https://www.alsa-project.org/wiki/Changes_v1.2.8_v1.2.9#alsa-utils</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1693828800">- Update to alsa-utils 1.2.10 (jsc#PED-6566):
  * MIDI 2.0 / UMP support for sequencer programs
  * nhlt: add nhlt-dmic-info utility
  * Build fixes and cleanups
  * speaker-test: allow large buffer and period time setup - up to 100 seconds
  * various topology fixes
  For details, see:
  https://www.alsa-project.org/wiki/Changes_v1.2.9_v1.2.10#alsa-utils
- Fix the builds with old gcc:
  0001-axfer-use-ATTRIBUTE_UNUSED-instead-remove-argument-n.patch
  0002-amidi-use-ATTRIBUTE_UNUSED-instead-remove-argument-n.patch
  0003-alsaloop-use-ATTRIBUTE_UNUSED-instead-remove-argumen.patch
  0004-bat-use-ATTRIBUTE_UNUSED-instead-remove-argument-nam.patch
  0005-seq-use-ATTRIBUTE_UNUSED-instead-remove-argument-nam.patch
  0006-alsaucm-use-ATTRIBUTE_UNUSED-instead-remove-argument.patch
  0007-topology-use-ATTRIBUTE_UNUSED-instead-remove-argumen.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1704715200">- Backport upstream fixes:
  buffer overflow fixes in aplay, segfault in aplaymidi, etc:
  0008-topology-include-locale.h.patch
  0009-nhlt-dmic-info.c-include-sys-types.h.patch
  0010-topology-pre-processor-Add-support-for-enum-controls.patch
  0011-configure.ac-fix-UMP-support-detection.patch
  0012-bat-really-skip-analysis-of-the-first-period-and-upd.patch
  0013-topology-add-include-for-ENABLE_NLS-on-musl.patch
  0014-nhlt-use-stdint.h-types.patch
  0015-Revert-nhlt-dmic-info.c-include-sys-types.h.patch
  0016-aplay-use-stdint.h-types-instead-u_int-u_short-u_cha.patch
  0017-alsa-restore.rules-use-devnode-instead-number-atribu.patch
  0018-nhlt-Revert-SSP_ANALOG-device_type-field.patch
  0019-alsactl-fix-potential-buffer-overwrite.patch
  0020-aplay-fix-buffer-overflow-and-tainted-format-string.patch
  0021-misc-fix-incorrect-usages-of-strerror.patch
  0022-aplay-Add-option-for-specifying-subformat.patch
  0023-aplay-allow-to-compile-with-older-alsa-lib-subformat.patch
  0024-aplay-log-pcm-status-before-reporting-a-fatal-error.patch
  0025-aplay-enable-timestamps-by-default.patch
  0026-aplay-status-dumps-are-called-only-in-verbose-mode.patch
  0027-aplaymidi-Set-event-completely-for-tempo-event.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1706875200">- Update to alsa-utils 1.2.11:
  * alsactl buffer overflow fix
  * alsatplg updates, NHLT ACPI parser updates
  * use smaller periods for speaker-test
  * add bandwidth-limited pink noise for speaker-test
  * aplay updates, including subformat extensions
  * compile warning fixes
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.10_v1.2.11#alsa-utils
- Drop obsoleted patches:
  0001-axfer-use-ATTRIBUTE_UNUSED-instead-remove-argument-n.patch
  0002-amidi-use-ATTRIBUTE_UNUSED-instead-remove-argument-n.patch
  0003-alsaloop-use-ATTRIBUTE_UNUSED-instead-remove-argumen.patch
  0004-bat-use-ATTRIBUTE_UNUSED-instead-remove-argument-nam.patch
  0005-seq-use-ATTRIBUTE_UNUSED-instead-remove-argument-nam.patch
  0006-alsaucm-use-ATTRIBUTE_UNUSED-instead-remove-argument.patch
  0007-topology-use-ATTRIBUTE_UNUSED-instead-remove-argumen.patch
  0008-topology-include-locale.h.patch
  0009-nhlt-dmic-info.c-include-sys-types.h.patch
  0010-topology-pre-processor-Add-support-for-enum-controls.patch
  0011-configure.ac-fix-UMP-support-detection.patch
  0012-bat-really-skip-analysis-of-the-first-period-and-upd.patch
  0013-topology-add-include-for-ENABLE_NLS-on-musl.patch
  0014-nhlt-use-stdint.h-types.patch
  0015-Revert-nhlt-dmic-info.c-include-sys-types.h.patch
  0016-aplay-use-stdint.h-types-instead-u_int-u_short-u_cha.patch
  0017-alsa-restore.rules-use-devnode-instead-number-atribu.patch
  0018-nhlt-Revert-SSP_ANALOG-device_type-field.patch
  0019-alsactl-fix-potential-buffer-overwrite.patch
  0020-aplay-fix-buffer-overflow-and-tainted-format-string.patch
  0021-misc-fix-incorrect-usages-of-strerror.patch
  0022-aplay-Add-option-for-specifying-subformat.patch
  0023-aplay-allow-to-compile-with-older-alsa-lib-subformat.patch
  0024-aplay-log-pcm-status-before-reporting-a-fatal-error.patch
  0025-aplay-enable-timestamps-by-default.patch
  0026-aplay-status-dumps-are-called-only-in-verbose-mode.patch
  0027-aplaymidi-Set-event-completely-for-tempo-event.patch</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1708430400">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Antonio Larrosa &lt;alarrosa@suse.com&gt;" date="1717070400">- Require tree which is used by alsa-info.sh (bsc#1225665)</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1718280000">- Update to alsa-utils 1.2.12:
  * alsactl: NULL pointer fix
  * alsa-info.sh: log SoundWire devices reported in ACPI
  * alsamixer: fix calculation in set_normalized_volume (overflow)
  * topology: nhlt fixes
  * aplay: fix S24_LE wav header
  * aseqdump: Add dump for UMP Utility and System messages
  * Addition of aseqsend
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.11_v1.2.12#alsa-utils</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1731412800">- Update to alsa-utils 1.2.13:
  * alsactl: add support for AMD ACP digital microphone
  * aplay: Print '=== PAUSE ===' only if it is supported
  * aplaymidi/arecordmidi: Allow to pass 0 to -u option, too
  * new aplaymidi2/arecordmidi2 for MIDI v2.0
  * aseqdump: improved UMP supports
  * various topology updates
  * aseqsend: improvement and UMP supports
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.12_v1.2.13#alsa-utils</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1731585600">- Fix alsactl restore error (bsc#1233353):
  0001-alsactl-90-alsa-restore.rules-fix-alsa_restore_go-st.patch</changelog>
</package>
<package pkgid="02df06a3ad553abdcefd017d96f1c07515e441ab12b0fc47275dbdf3aa2a7da9888e9b0663823bc7900a4b1430e459d565f587a9aace094b053617988e1cf40b" name="alsa-utils" arch="x86_64">
  <version epoch="0" ver="1.2.13" rel="2.0.2.1.sr20241103"/>
  <changelog author="tiwai@suse.de" date="1611230400">- Backport upstream fixes:
  various fixes in aplay, alsamixer, alsactl and alsaloop, updated
  translations, etc:
  0001-aplay-try-to-use-16-bit-format-to-increase-capture-q.patch
  0002-alsamixer-Fix-the-mixer-views-description-in-man-pag.patch
  0003-Add-Slovak-translation.patch
  0004-Add-Basque-translation.patch
  0006-aplay-cosmetic-code-fix-in-xrun.patch
  0007-aplay-fix-the-CPU-busy-loop-in-the-pause-handler.patch
  0008-alsa-info-Add-lsusb-and-stream-outputs.patch
  0013-aplay-add-test-code-for-snd_pcm_status-to-test-posit.patch
  0014-ucm-fix-typo-in-docs.patch
  0015-aplay-add-avail-delay-checks-to-test-position.patch
  0016-alsactl-daemon-read_pid_file-fix-the-returned-code-o.patch
  0017-alsactl-init-set_ctl_value-fix-bytes-parsing.patch
  0018-alsactl-init-parse-fix-possible-double-free.patch
  0019-alsaloop-fix-possible-memory-leak-in-create_loopback.patch
  0020-alsaloop-get_queued_playback_samples-simplify-code.patch
  0021-topology-fix-possible-double-free-in-load.patch
  0022-alsamixer-remove-dead-fcn-widget_handle_key-in-widge.patch
  0023-alsamixer-remove-unused-variable-y-in-display_scroll.patch
  0024-alsamixer-fix-shift-in-parse_words.patch
  0025-aplay-fix-the-test-position-test-for-playback-avail-.patch</changelog>
  <changelog author="tiwai@suse.de" date="1616068800">- Fix superfluous asound.state migration (bsc#1183672)</changelog>
  <changelog author="tiwai@suse.de" date="1619438400">- Suppress automatic update of alsa-info.sh (bsc#1185280):
  alsa-info-no-update-for-distro-script.patch</changelog>
  <changelog author="tiwai@suse.de" date="1623672000">- Update to alsa-utils 1.2.5:
  a major version up, including previous patches
  https://www.alsa-project.org/wiki/Changes_v1.2.4_v1.2.5
- Update to alsa-utils 1.2.5.1:
  a small bugfix release
  https://www.alsa-project.org/wiki/Changes_v1.2.5_v1.2.5.1
- Drop the obsoleted patches:
  0001-aplay-try-to-use-16-bit-format-to-increase-capture-q.patch
  0002-alsamixer-Fix-the-mixer-views-description-in-man-pag.patch
  0003-Add-Slovak-translation.patch
  0004-Add-Basque-translation.patch
  0006-aplay-cosmetic-code-fix-in-xrun.patch
  0007-aplay-fix-the-CPU-busy-loop-in-the-pause-handler.patch
  0008-alsa-info-Add-lsusb-and-stream-outputs.patch
  0010-alsactl-Fix-double-decrease-of-lock-timeout.patch
  0011-alsactl-Fix-race-at-creating-a-lock-file.patch
  0012-alsactl-Remove-asound.state-file-check-from-alsa-res.patch
  0013-aplay-add-test-code-for-snd_pcm_status-to-test-posit.patch
  0014-ucm-fix-typo-in-docs.patch
  0015-aplay-add-avail-delay-checks-to-test-position.patch
  0016-alsactl-daemon-read_pid_file-fix-the-returned-code-o.patch
  0017-alsactl-init-set_ctl_value-fix-bytes-parsing.patch
  0018-alsactl-init-parse-fix-possible-double-free.patch
  0019-alsaloop-fix-possible-memory-leak-in-create_loopback.patch
  0020-alsaloop-get_queued_playback_samples-simplify-code.patch
  0021-topology-fix-possible-double-free-in-load.patch
  0022-alsamixer-remove-dead-fcn-widget_handle_key-in-widge.patch
  0023-alsamixer-remove-unused-variable-y-in-display_scroll.patch
  0024-alsamixer-fix-shift-in-parse_words.patch
  0025-aplay-fix-the-test-position-test-for-playback-avail-.patch</changelog>
  <changelog author="Johannes Segitz &lt;jsegitz@suse.com&gt;" date="1627473600">- Added hardening to systemd service(s). Modified:
  * sound-extra.service</changelog>
  <changelog author="Johannes Segitz &lt;jsegitz@suse.com&gt;" date="1634299200">- Drop ProtectClock hardening, can cause issues if other device acceess is needed</changelog>
  <changelog author="tiwai@suse.de" date="1638792000">- Update to alsa-utils 1.2.6:
  various updates / fixes for alsactl, amidi, alsaloop, alsamixer,
  alsatplg, amixer, aplay and aseqnet.  Details are found in
    https://alsa-project.org/wiki/Changes_v1.2.5.1_v1.2.6#alsa-utils
- Update the download URL
- Add *.sig file for the tarball</changelog>
  <changelog author="tiwai@suse.de" date="1642766400">- Fix alsamixer color config regression:
  0001-alsamixer-Fix-regression-in-color-setup.patch</changelog>
  <changelog author="tiwai@suse.de" date="1643371200">- Fix the broken mouse support on alsamixer:
  0002-alsamixer-Revert-has_mouse-check.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1654084800">- Update to alsa-utils 1.2.7:
  Enhancement and fixes of alsactl, speaker-test cleanup,
  alsatplg enhancements, arecord ghost data fix, etc.
  For details see:
  https://www.alsa-project.org/wiki/Changes_v1.2.6.3_v1.2.7#alsa-utils
- Drop obsoleted patches:
  0001-alsamixer-Fix-regression-in-color-setup.patch
  0002-alsamixer-Revert-has_mouse-check.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1666699200">- Update to alsa-utils 1.2.8 (jsc#PED-850):
  automake update, minor alsactl, amixer and aplay fixes.
  https://www.alsa-project.org/wiki/Changes_v1.2.7.2_v1.2.8
- Add keyring</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1683547200">- Update to alsa-utils 1.2.9:
  BSD build fix, and various updates for alsactl, amidi, axfer,
  alsa-info.sh, alsaloop, alsatplg, alsaucm, aplay, abat.
  For details, see:
  https://www.alsa-project.org/wiki/Changes_v1.2.8_v1.2.9#alsa-utils</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1693828800">- Update to alsa-utils 1.2.10 (jsc#PED-6566):
  * MIDI 2.0 / UMP support for sequencer programs
  * nhlt: add nhlt-dmic-info utility
  * Build fixes and cleanups
  * speaker-test: allow large buffer and period time setup - up to 100 seconds
  * various topology fixes
  For details, see:
  https://www.alsa-project.org/wiki/Changes_v1.2.9_v1.2.10#alsa-utils
- Fix the builds with old gcc:
  0001-axfer-use-ATTRIBUTE_UNUSED-instead-remove-argument-n.patch
  0002-amidi-use-ATTRIBUTE_UNUSED-instead-remove-argument-n.patch
  0003-alsaloop-use-ATTRIBUTE_UNUSED-instead-remove-argumen.patch
  0004-bat-use-ATTRIBUTE_UNUSED-instead-remove-argument-nam.patch
  0005-seq-use-ATTRIBUTE_UNUSED-instead-remove-argument-nam.patch
  0006-alsaucm-use-ATTRIBUTE_UNUSED-instead-remove-argument.patch
  0007-topology-use-ATTRIBUTE_UNUSED-instead-remove-argumen.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1704715200">- Backport upstream fixes:
  buffer overflow fixes in aplay, segfault in aplaymidi, etc:
  0008-topology-include-locale.h.patch
  0009-nhlt-dmic-info.c-include-sys-types.h.patch
  0010-topology-pre-processor-Add-support-for-enum-controls.patch
  0011-configure.ac-fix-UMP-support-detection.patch
  0012-bat-really-skip-analysis-of-the-first-period-and-upd.patch
  0013-topology-add-include-for-ENABLE_NLS-on-musl.patch
  0014-nhlt-use-stdint.h-types.patch
  0015-Revert-nhlt-dmic-info.c-include-sys-types.h.patch
  0016-aplay-use-stdint.h-types-instead-u_int-u_short-u_cha.patch
  0017-alsa-restore.rules-use-devnode-instead-number-atribu.patch
  0018-nhlt-Revert-SSP_ANALOG-device_type-field.patch
  0019-alsactl-fix-potential-buffer-overwrite.patch
  0020-aplay-fix-buffer-overflow-and-tainted-format-string.patch
  0021-misc-fix-incorrect-usages-of-strerror.patch
  0022-aplay-Add-option-for-specifying-subformat.patch
  0023-aplay-allow-to-compile-with-older-alsa-lib-subformat.patch
  0024-aplay-log-pcm-status-before-reporting-a-fatal-error.patch
  0025-aplay-enable-timestamps-by-default.patch
  0026-aplay-status-dumps-are-called-only-in-verbose-mode.patch
  0027-aplaymidi-Set-event-completely-for-tempo-event.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1706875200">- Update to alsa-utils 1.2.11:
  * alsactl buffer overflow fix
  * alsatplg updates, NHLT ACPI parser updates
  * use smaller periods for speaker-test
  * add bandwidth-limited pink noise for speaker-test
  * aplay updates, including subformat extensions
  * compile warning fixes
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.10_v1.2.11#alsa-utils
- Drop obsoleted patches:
  0001-axfer-use-ATTRIBUTE_UNUSED-instead-remove-argument-n.patch
  0002-amidi-use-ATTRIBUTE_UNUSED-instead-remove-argument-n.patch
  0003-alsaloop-use-ATTRIBUTE_UNUSED-instead-remove-argumen.patch
  0004-bat-use-ATTRIBUTE_UNUSED-instead-remove-argument-nam.patch
  0005-seq-use-ATTRIBUTE_UNUSED-instead-remove-argument-nam.patch
  0006-alsaucm-use-ATTRIBUTE_UNUSED-instead-remove-argument.patch
  0007-topology-use-ATTRIBUTE_UNUSED-instead-remove-argumen.patch
  0008-topology-include-locale.h.patch
  0009-nhlt-dmic-info.c-include-sys-types.h.patch
  0010-topology-pre-processor-Add-support-for-enum-controls.patch
  0011-configure.ac-fix-UMP-support-detection.patch
  0012-bat-really-skip-analysis-of-the-first-period-and-upd.patch
  0013-topology-add-include-for-ENABLE_NLS-on-musl.patch
  0014-nhlt-use-stdint.h-types.patch
  0015-Revert-nhlt-dmic-info.c-include-sys-types.h.patch
  0016-aplay-use-stdint.h-types-instead-u_int-u_short-u_cha.patch
  0017-alsa-restore.rules-use-devnode-instead-number-atribu.patch
  0018-nhlt-Revert-SSP_ANALOG-device_type-field.patch
  0019-alsactl-fix-potential-buffer-overwrite.patch
  0020-aplay-fix-buffer-overflow-and-tainted-format-string.patch
  0021-misc-fix-incorrect-usages-of-strerror.patch
  0022-aplay-Add-option-for-specifying-subformat.patch
  0023-aplay-allow-to-compile-with-older-alsa-lib-subformat.patch
  0024-aplay-log-pcm-status-before-reporting-a-fatal-error.patch
  0025-aplay-enable-timestamps-by-default.patch
  0026-aplay-status-dumps-are-called-only-in-verbose-mode.patch
  0027-aplaymidi-Set-event-completely-for-tempo-event.patch</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1708430400">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Antonio Larrosa &lt;alarrosa@suse.com&gt;" date="1717070400">- Require tree which is used by alsa-info.sh (bsc#1225665)</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1718280000">- Update to alsa-utils 1.2.12:
  * alsactl: NULL pointer fix
  * alsa-info.sh: log SoundWire devices reported in ACPI
  * alsamixer: fix calculation in set_normalized_volume (overflow)
  * topology: nhlt fixes
  * aplay: fix S24_LE wav header
  * aseqdump: Add dump for UMP Utility and System messages
  * Addition of aseqsend
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.11_v1.2.12#alsa-utils</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1731412800">- Update to alsa-utils 1.2.13:
  * alsactl: add support for AMD ACP digital microphone
  * aplay: Print '=== PAUSE ===' only if it is supported
  * aplaymidi/arecordmidi: Allow to pass 0 to -u option, too
  * new aplaymidi2/arecordmidi2 for MIDI v2.0
  * aseqdump: improved UMP supports
  * various topology updates
  * aseqsend: improvement and UMP supports
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.12_v1.2.13#alsa-utils</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1731585600">- Fix alsactl restore error (bsc#1233353):
  0001-alsactl-90-alsa-restore.rules-fix-alsa_restore_go-st.patch</changelog>
</package>
<package pkgid="16e43a874da9fe6963b6673ab4a8c65d66035e99a29dad35c52fad755cd5d5778b3c4a9f2520ea36bb3105990a3e7d763e313a3f6f0ac7dad4f1ae854404b564" name="alsa-utils" arch="i586">
  <version epoch="0" ver="1.2.13" rel="3.0.4.1.sr20241103"/>
  <changelog author="tiwai@suse.de" date="1616068800">- Fix superfluous asound.state migration (bsc#1183672)</changelog>
  <changelog author="tiwai@suse.de" date="1619438400">- Suppress automatic update of alsa-info.sh (bsc#1185280):
  alsa-info-no-update-for-distro-script.patch</changelog>
  <changelog author="tiwai@suse.de" date="1623672000">- Update to alsa-utils 1.2.5:
  a major version up, including previous patches
  https://www.alsa-project.org/wiki/Changes_v1.2.4_v1.2.5
- Update to alsa-utils 1.2.5.1:
  a small bugfix release
  https://www.alsa-project.org/wiki/Changes_v1.2.5_v1.2.5.1
- Drop the obsoleted patches:
  0001-aplay-try-to-use-16-bit-format-to-increase-capture-q.patch
  0002-alsamixer-Fix-the-mixer-views-description-in-man-pag.patch
  0003-Add-Slovak-translation.patch
  0004-Add-Basque-translation.patch
  0006-aplay-cosmetic-code-fix-in-xrun.patch
  0007-aplay-fix-the-CPU-busy-loop-in-the-pause-handler.patch
  0008-alsa-info-Add-lsusb-and-stream-outputs.patch
  0010-alsactl-Fix-double-decrease-of-lock-timeout.patch
  0011-alsactl-Fix-race-at-creating-a-lock-file.patch
  0012-alsactl-Remove-asound.state-file-check-from-alsa-res.patch
  0013-aplay-add-test-code-for-snd_pcm_status-to-test-posit.patch
  0014-ucm-fix-typo-in-docs.patch
  0015-aplay-add-avail-delay-checks-to-test-position.patch
  0016-alsactl-daemon-read_pid_file-fix-the-returned-code-o.patch
  0017-alsactl-init-set_ctl_value-fix-bytes-parsing.patch
  0018-alsactl-init-parse-fix-possible-double-free.patch
  0019-alsaloop-fix-possible-memory-leak-in-create_loopback.patch
  0020-alsaloop-get_queued_playback_samples-simplify-code.patch
  0021-topology-fix-possible-double-free-in-load.patch
  0022-alsamixer-remove-dead-fcn-widget_handle_key-in-widge.patch
  0023-alsamixer-remove-unused-variable-y-in-display_scroll.patch
  0024-alsamixer-fix-shift-in-parse_words.patch
  0025-aplay-fix-the-test-position-test-for-playback-avail-.patch</changelog>
  <changelog author="Johannes Segitz &lt;jsegitz@suse.com&gt;" date="1627473600">- Added hardening to systemd service(s). Modified:
  * sound-extra.service</changelog>
  <changelog author="Johannes Segitz &lt;jsegitz@suse.com&gt;" date="1634299200">- Drop ProtectClock hardening, can cause issues if other device acceess is needed</changelog>
  <changelog author="tiwai@suse.de" date="1638792000">- Update to alsa-utils 1.2.6:
  various updates / fixes for alsactl, amidi, alsaloop, alsamixer,
  alsatplg, amixer, aplay and aseqnet.  Details are found in
    https://alsa-project.org/wiki/Changes_v1.2.5.1_v1.2.6#alsa-utils
- Update the download URL
- Add *.sig file for the tarball</changelog>
  <changelog author="tiwai@suse.de" date="1642766400">- Fix alsamixer color config regression:
  0001-alsamixer-Fix-regression-in-color-setup.patch</changelog>
  <changelog author="tiwai@suse.de" date="1643371200">- Fix the broken mouse support on alsamixer:
  0002-alsamixer-Revert-has_mouse-check.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1654084800">- Update to alsa-utils 1.2.7:
  Enhancement and fixes of alsactl, speaker-test cleanup,
  alsatplg enhancements, arecord ghost data fix, etc.
  For details see:
  https://www.alsa-project.org/wiki/Changes_v1.2.6.3_v1.2.7#alsa-utils
- Drop obsoleted patches:
  0001-alsamixer-Fix-regression-in-color-setup.patch
  0002-alsamixer-Revert-has_mouse-check.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1666699200">- Update to alsa-utils 1.2.8 (jsc#PED-850):
  automake update, minor alsactl, amixer and aplay fixes.
  https://www.alsa-project.org/wiki/Changes_v1.2.7.2_v1.2.8
- Add keyring</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1683547200">- Update to alsa-utils 1.2.9:
  BSD build fix, and various updates for alsactl, amidi, axfer,
  alsa-info.sh, alsaloop, alsatplg, alsaucm, aplay, abat.
  For details, see:
  https://www.alsa-project.org/wiki/Changes_v1.2.8_v1.2.9#alsa-utils</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1693828800">- Update to alsa-utils 1.2.10 (jsc#PED-6566):
  * MIDI 2.0 / UMP support for sequencer programs
  * nhlt: add nhlt-dmic-info utility
  * Build fixes and cleanups
  * speaker-test: allow large buffer and period time setup - up to 100 seconds
  * various topology fixes
  For details, see:
  https://www.alsa-project.org/wiki/Changes_v1.2.9_v1.2.10#alsa-utils
- Fix the builds with old gcc:
  0001-axfer-use-ATTRIBUTE_UNUSED-instead-remove-argument-n.patch
  0002-amidi-use-ATTRIBUTE_UNUSED-instead-remove-argument-n.patch
  0003-alsaloop-use-ATTRIBUTE_UNUSED-instead-remove-argumen.patch
  0004-bat-use-ATTRIBUTE_UNUSED-instead-remove-argument-nam.patch
  0005-seq-use-ATTRIBUTE_UNUSED-instead-remove-argument-nam.patch
  0006-alsaucm-use-ATTRIBUTE_UNUSED-instead-remove-argument.patch
  0007-topology-use-ATTRIBUTE_UNUSED-instead-remove-argumen.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1704715200">- Backport upstream fixes:
  buffer overflow fixes in aplay, segfault in aplaymidi, etc:
  0008-topology-include-locale.h.patch
  0009-nhlt-dmic-info.c-include-sys-types.h.patch
  0010-topology-pre-processor-Add-support-for-enum-controls.patch
  0011-configure.ac-fix-UMP-support-detection.patch
  0012-bat-really-skip-analysis-of-the-first-period-and-upd.patch
  0013-topology-add-include-for-ENABLE_NLS-on-musl.patch
  0014-nhlt-use-stdint.h-types.patch
  0015-Revert-nhlt-dmic-info.c-include-sys-types.h.patch
  0016-aplay-use-stdint.h-types-instead-u_int-u_short-u_cha.patch
  0017-alsa-restore.rules-use-devnode-instead-number-atribu.patch
  0018-nhlt-Revert-SSP_ANALOG-device_type-field.patch
  0019-alsactl-fix-potential-buffer-overwrite.patch
  0020-aplay-fix-buffer-overflow-and-tainted-format-string.patch
  0021-misc-fix-incorrect-usages-of-strerror.patch
  0022-aplay-Add-option-for-specifying-subformat.patch
  0023-aplay-allow-to-compile-with-older-alsa-lib-subformat.patch
  0024-aplay-log-pcm-status-before-reporting-a-fatal-error.patch
  0025-aplay-enable-timestamps-by-default.patch
  0026-aplay-status-dumps-are-called-only-in-verbose-mode.patch
  0027-aplaymidi-Set-event-completely-for-tempo-event.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1706875200">- Update to alsa-utils 1.2.11:
  * alsactl buffer overflow fix
  * alsatplg updates, NHLT ACPI parser updates
  * use smaller periods for speaker-test
  * add bandwidth-limited pink noise for speaker-test
  * aplay updates, including subformat extensions
  * compile warning fixes
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.10_v1.2.11#alsa-utils
- Drop obsoleted patches:
  0001-axfer-use-ATTRIBUTE_UNUSED-instead-remove-argument-n.patch
  0002-amidi-use-ATTRIBUTE_UNUSED-instead-remove-argument-n.patch
  0003-alsaloop-use-ATTRIBUTE_UNUSED-instead-remove-argumen.patch
  0004-bat-use-ATTRIBUTE_UNUSED-instead-remove-argument-nam.patch
  0005-seq-use-ATTRIBUTE_UNUSED-instead-remove-argument-nam.patch
  0006-alsaucm-use-ATTRIBUTE_UNUSED-instead-remove-argument.patch
  0007-topology-use-ATTRIBUTE_UNUSED-instead-remove-argumen.patch
  0008-topology-include-locale.h.patch
  0009-nhlt-dmic-info.c-include-sys-types.h.patch
  0010-topology-pre-processor-Add-support-for-enum-controls.patch
  0011-configure.ac-fix-UMP-support-detection.patch
  0012-bat-really-skip-analysis-of-the-first-period-and-upd.patch
  0013-topology-add-include-for-ENABLE_NLS-on-musl.patch
  0014-nhlt-use-stdint.h-types.patch
  0015-Revert-nhlt-dmic-info.c-include-sys-types.h.patch
  0016-aplay-use-stdint.h-types-instead-u_int-u_short-u_cha.patch
  0017-alsa-restore.rules-use-devnode-instead-number-atribu.patch
  0018-nhlt-Revert-SSP_ANALOG-device_type-field.patch
  0019-alsactl-fix-potential-buffer-overwrite.patch
  0020-aplay-fix-buffer-overflow-and-tainted-format-string.patch
  0021-misc-fix-incorrect-usages-of-strerror.patch
  0022-aplay-Add-option-for-specifying-subformat.patch
  0023-aplay-allow-to-compile-with-older-alsa-lib-subformat.patch
  0024-aplay-log-pcm-status-before-reporting-a-fatal-error.patch
  0025-aplay-enable-timestamps-by-default.patch
  0026-aplay-status-dumps-are-called-only-in-verbose-mode.patch
  0027-aplaymidi-Set-event-completely-for-tempo-event.patch</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1708430400">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Antonio Larrosa &lt;alarrosa@suse.com&gt;" date="1717070400">- Require tree which is used by alsa-info.sh (bsc#1225665)</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1718280000">- Update to alsa-utils 1.2.12:
  * alsactl: NULL pointer fix
  * alsa-info.sh: log SoundWire devices reported in ACPI
  * alsamixer: fix calculation in set_normalized_volume (overflow)
  * topology: nhlt fixes
  * aplay: fix S24_LE wav header
  * aseqdump: Add dump for UMP Utility and System messages
  * Addition of aseqsend
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.11_v1.2.12#alsa-utils</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1731412800">- Update to alsa-utils 1.2.13:
  * alsactl: add support for AMD ACP digital microphone
  * aplay: Print '=== PAUSE ===' only if it is supported
  * aplaymidi/arecordmidi: Allow to pass 0 to -u option, too
  * new aplaymidi2/arecordmidi2 for MIDI v2.0
  * aseqdump: improved UMP supports
  * various topology updates
  * aseqsend: improvement and UMP supports
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.12_v1.2.13#alsa-utils</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1731585600">- Fix alsactl restore error (bsc#1233353):
  0001-alsactl-90-alsa-restore.rules-fix-alsa_restore_go-st.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1732104000">- Yet another fix for alsactl for AMD acp dmic:
  0002-alsactl-90-alsa-restore.rules-fix-AMD-acp-pdm-mach-l.patch</changelog>
</package>
<package pkgid="46f87a1f594eaf04252a7d1406a1fe0933750ad150df4cea90ebd6e77c2e49ccf4aa3a2d9ff584ec1831601923c2ff871433529aac3c8dd761e96bf35f582f7d" name="alsa-utils" arch="src">
  <version epoch="0" ver="1.2.13" rel="3.0.4.1.sr20241103"/>
  <changelog author="tiwai@suse.de" date="1616068800">- Fix superfluous asound.state migration (bsc#1183672)</changelog>
  <changelog author="tiwai@suse.de" date="1619438400">- Suppress automatic update of alsa-info.sh (bsc#1185280):
  alsa-info-no-update-for-distro-script.patch</changelog>
  <changelog author="tiwai@suse.de" date="1623672000">- Update to alsa-utils 1.2.5:
  a major version up, including previous patches
  https://www.alsa-project.org/wiki/Changes_v1.2.4_v1.2.5
- Update to alsa-utils 1.2.5.1:
  a small bugfix release
  https://www.alsa-project.org/wiki/Changes_v1.2.5_v1.2.5.1
- Drop the obsoleted patches:
  0001-aplay-try-to-use-16-bit-format-to-increase-capture-q.patch
  0002-alsamixer-Fix-the-mixer-views-description-in-man-pag.patch
  0003-Add-Slovak-translation.patch
  0004-Add-Basque-translation.patch
  0006-aplay-cosmetic-code-fix-in-xrun.patch
  0007-aplay-fix-the-CPU-busy-loop-in-the-pause-handler.patch
  0008-alsa-info-Add-lsusb-and-stream-outputs.patch
  0010-alsactl-Fix-double-decrease-of-lock-timeout.patch
  0011-alsactl-Fix-race-at-creating-a-lock-file.patch
  0012-alsactl-Remove-asound.state-file-check-from-alsa-res.patch
  0013-aplay-add-test-code-for-snd_pcm_status-to-test-posit.patch
  0014-ucm-fix-typo-in-docs.patch
  0015-aplay-add-avail-delay-checks-to-test-position.patch
  0016-alsactl-daemon-read_pid_file-fix-the-returned-code-o.patch
  0017-alsactl-init-set_ctl_value-fix-bytes-parsing.patch
  0018-alsactl-init-parse-fix-possible-double-free.patch
  0019-alsaloop-fix-possible-memory-leak-in-create_loopback.patch
  0020-alsaloop-get_queued_playback_samples-simplify-code.patch
  0021-topology-fix-possible-double-free-in-load.patch
  0022-alsamixer-remove-dead-fcn-widget_handle_key-in-widge.patch
  0023-alsamixer-remove-unused-variable-y-in-display_scroll.patch
  0024-alsamixer-fix-shift-in-parse_words.patch
  0025-aplay-fix-the-test-position-test-for-playback-avail-.patch</changelog>
  <changelog author="Johannes Segitz &lt;jsegitz@suse.com&gt;" date="1627473600">- Added hardening to systemd service(s). Modified:
  * sound-extra.service</changelog>
  <changelog author="Johannes Segitz &lt;jsegitz@suse.com&gt;" date="1634299200">- Drop ProtectClock hardening, can cause issues if other device acceess is needed</changelog>
  <changelog author="tiwai@suse.de" date="1638792000">- Update to alsa-utils 1.2.6:
  various updates / fixes for alsactl, amidi, alsaloop, alsamixer,
  alsatplg, amixer, aplay and aseqnet.  Details are found in
    https://alsa-project.org/wiki/Changes_v1.2.5.1_v1.2.6#alsa-utils
- Update the download URL
- Add *.sig file for the tarball</changelog>
  <changelog author="tiwai@suse.de" date="1642766400">- Fix alsamixer color config regression:
  0001-alsamixer-Fix-regression-in-color-setup.patch</changelog>
  <changelog author="tiwai@suse.de" date="1643371200">- Fix the broken mouse support on alsamixer:
  0002-alsamixer-Revert-has_mouse-check.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1654084800">- Update to alsa-utils 1.2.7:
  Enhancement and fixes of alsactl, speaker-test cleanup,
  alsatplg enhancements, arecord ghost data fix, etc.
  For details see:
  https://www.alsa-project.org/wiki/Changes_v1.2.6.3_v1.2.7#alsa-utils
- Drop obsoleted patches:
  0001-alsamixer-Fix-regression-in-color-setup.patch
  0002-alsamixer-Revert-has_mouse-check.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1666699200">- Update to alsa-utils 1.2.8 (jsc#PED-850):
  automake update, minor alsactl, amixer and aplay fixes.
  https://www.alsa-project.org/wiki/Changes_v1.2.7.2_v1.2.8
- Add keyring</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1683547200">- Update to alsa-utils 1.2.9:
  BSD build fix, and various updates for alsactl, amidi, axfer,
  alsa-info.sh, alsaloop, alsatplg, alsaucm, aplay, abat.
  For details, see:
  https://www.alsa-project.org/wiki/Changes_v1.2.8_v1.2.9#alsa-utils</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1693828800">- Update to alsa-utils 1.2.10 (jsc#PED-6566):
  * MIDI 2.0 / UMP support for sequencer programs
  * nhlt: add nhlt-dmic-info utility
  * Build fixes and cleanups
  * speaker-test: allow large buffer and period time setup - up to 100 seconds
  * various topology fixes
  For details, see:
  https://www.alsa-project.org/wiki/Changes_v1.2.9_v1.2.10#alsa-utils
- Fix the builds with old gcc:
  0001-axfer-use-ATTRIBUTE_UNUSED-instead-remove-argument-n.patch
  0002-amidi-use-ATTRIBUTE_UNUSED-instead-remove-argument-n.patch
  0003-alsaloop-use-ATTRIBUTE_UNUSED-instead-remove-argumen.patch
  0004-bat-use-ATTRIBUTE_UNUSED-instead-remove-argument-nam.patch
  0005-seq-use-ATTRIBUTE_UNUSED-instead-remove-argument-nam.patch
  0006-alsaucm-use-ATTRIBUTE_UNUSED-instead-remove-argument.patch
  0007-topology-use-ATTRIBUTE_UNUSED-instead-remove-argumen.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1704715200">- Backport upstream fixes:
  buffer overflow fixes in aplay, segfault in aplaymidi, etc:
  0008-topology-include-locale.h.patch
  0009-nhlt-dmic-info.c-include-sys-types.h.patch
  0010-topology-pre-processor-Add-support-for-enum-controls.patch
  0011-configure.ac-fix-UMP-support-detection.patch
  0012-bat-really-skip-analysis-of-the-first-period-and-upd.patch
  0013-topology-add-include-for-ENABLE_NLS-on-musl.patch
  0014-nhlt-use-stdint.h-types.patch
  0015-Revert-nhlt-dmic-info.c-include-sys-types.h.patch
  0016-aplay-use-stdint.h-types-instead-u_int-u_short-u_cha.patch
  0017-alsa-restore.rules-use-devnode-instead-number-atribu.patch
  0018-nhlt-Revert-SSP_ANALOG-device_type-field.patch
  0019-alsactl-fix-potential-buffer-overwrite.patch
  0020-aplay-fix-buffer-overflow-and-tainted-format-string.patch
  0021-misc-fix-incorrect-usages-of-strerror.patch
  0022-aplay-Add-option-for-specifying-subformat.patch
  0023-aplay-allow-to-compile-with-older-alsa-lib-subformat.patch
  0024-aplay-log-pcm-status-before-reporting-a-fatal-error.patch
  0025-aplay-enable-timestamps-by-default.patch
  0026-aplay-status-dumps-are-called-only-in-verbose-mode.patch
  0027-aplaymidi-Set-event-completely-for-tempo-event.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1706875200">- Update to alsa-utils 1.2.11:
  * alsactl buffer overflow fix
  * alsatplg updates, NHLT ACPI parser updates
  * use smaller periods for speaker-test
  * add bandwidth-limited pink noise for speaker-test
  * aplay updates, including subformat extensions
  * compile warning fixes
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.10_v1.2.11#alsa-utils
- Drop obsoleted patches:
  0001-axfer-use-ATTRIBUTE_UNUSED-instead-remove-argument-n.patch
  0002-amidi-use-ATTRIBUTE_UNUSED-instead-remove-argument-n.patch
  0003-alsaloop-use-ATTRIBUTE_UNUSED-instead-remove-argumen.patch
  0004-bat-use-ATTRIBUTE_UNUSED-instead-remove-argument-nam.patch
  0005-seq-use-ATTRIBUTE_UNUSED-instead-remove-argument-nam.patch
  0006-alsaucm-use-ATTRIBUTE_UNUSED-instead-remove-argument.patch
  0007-topology-use-ATTRIBUTE_UNUSED-instead-remove-argumen.patch
  0008-topology-include-locale.h.patch
  0009-nhlt-dmic-info.c-include-sys-types.h.patch
  0010-topology-pre-processor-Add-support-for-enum-controls.patch
  0011-configure.ac-fix-UMP-support-detection.patch
  0012-bat-really-skip-analysis-of-the-first-period-and-upd.patch
  0013-topology-add-include-for-ENABLE_NLS-on-musl.patch
  0014-nhlt-use-stdint.h-types.patch
  0015-Revert-nhlt-dmic-info.c-include-sys-types.h.patch
  0016-aplay-use-stdint.h-types-instead-u_int-u_short-u_cha.patch
  0017-alsa-restore.rules-use-devnode-instead-number-atribu.patch
  0018-nhlt-Revert-SSP_ANALOG-device_type-field.patch
  0019-alsactl-fix-potential-buffer-overwrite.patch
  0020-aplay-fix-buffer-overflow-and-tainted-format-string.patch
  0021-misc-fix-incorrect-usages-of-strerror.patch
  0022-aplay-Add-option-for-specifying-subformat.patch
  0023-aplay-allow-to-compile-with-older-alsa-lib-subformat.patch
  0024-aplay-log-pcm-status-before-reporting-a-fatal-error.patch
  0025-aplay-enable-timestamps-by-default.patch
  0026-aplay-status-dumps-are-called-only-in-verbose-mode.patch
  0027-aplaymidi-Set-event-completely-for-tempo-event.patch</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1708430400">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Antonio Larrosa &lt;alarrosa@suse.com&gt;" date="1717070400">- Require tree which is used by alsa-info.sh (bsc#1225665)</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1718280000">- Update to alsa-utils 1.2.12:
  * alsactl: NULL pointer fix
  * alsa-info.sh: log SoundWire devices reported in ACPI
  * alsamixer: fix calculation in set_normalized_volume (overflow)
  * topology: nhlt fixes
  * aplay: fix S24_LE wav header
  * aseqdump: Add dump for UMP Utility and System messages
  * Addition of aseqsend
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.11_v1.2.12#alsa-utils</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1731412800">- Update to alsa-utils 1.2.13:
  * alsactl: add support for AMD ACP digital microphone
  * aplay: Print '=== PAUSE ===' only if it is supported
  * aplaymidi/arecordmidi: Allow to pass 0 to -u option, too
  * new aplaymidi2/arecordmidi2 for MIDI v2.0
  * aseqdump: improved UMP supports
  * various topology updates
  * aseqsend: improvement and UMP supports
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.12_v1.2.13#alsa-utils</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1731585600">- Fix alsactl restore error (bsc#1233353):
  0001-alsactl-90-alsa-restore.rules-fix-alsa_restore_go-st.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1732104000">- Yet another fix for alsactl for AMD acp dmic:
  0002-alsactl-90-alsa-restore.rules-fix-AMD-acp-pdm-mach-l.patch</changelog>
</package>
<package pkgid="a6152fff547829083f80ebe8e95dea60384269a45c02ccc617fa09112f77b230d69633d83d5290457c4b8a9937658761f133bd06838d1dfdcf1d67437bdd1d79" name="alsa-utils" arch="x86_64">
  <version epoch="0" ver="1.2.13" rel="3.0.4.1.sr20241103"/>
  <changelog author="tiwai@suse.de" date="1616068800">- Fix superfluous asound.state migration (bsc#1183672)</changelog>
  <changelog author="tiwai@suse.de" date="1619438400">- Suppress automatic update of alsa-info.sh (bsc#1185280):
  alsa-info-no-update-for-distro-script.patch</changelog>
  <changelog author="tiwai@suse.de" date="1623672000">- Update to alsa-utils 1.2.5:
  a major version up, including previous patches
  https://www.alsa-project.org/wiki/Changes_v1.2.4_v1.2.5
- Update to alsa-utils 1.2.5.1:
  a small bugfix release
  https://www.alsa-project.org/wiki/Changes_v1.2.5_v1.2.5.1
- Drop the obsoleted patches:
  0001-aplay-try-to-use-16-bit-format-to-increase-capture-q.patch
  0002-alsamixer-Fix-the-mixer-views-description-in-man-pag.patch
  0003-Add-Slovak-translation.patch
  0004-Add-Basque-translation.patch
  0006-aplay-cosmetic-code-fix-in-xrun.patch
  0007-aplay-fix-the-CPU-busy-loop-in-the-pause-handler.patch
  0008-alsa-info-Add-lsusb-and-stream-outputs.patch
  0010-alsactl-Fix-double-decrease-of-lock-timeout.patch
  0011-alsactl-Fix-race-at-creating-a-lock-file.patch
  0012-alsactl-Remove-asound.state-file-check-from-alsa-res.patch
  0013-aplay-add-test-code-for-snd_pcm_status-to-test-posit.patch
  0014-ucm-fix-typo-in-docs.patch
  0015-aplay-add-avail-delay-checks-to-test-position.patch
  0016-alsactl-daemon-read_pid_file-fix-the-returned-code-o.patch
  0017-alsactl-init-set_ctl_value-fix-bytes-parsing.patch
  0018-alsactl-init-parse-fix-possible-double-free.patch
  0019-alsaloop-fix-possible-memory-leak-in-create_loopback.patch
  0020-alsaloop-get_queued_playback_samples-simplify-code.patch
  0021-topology-fix-possible-double-free-in-load.patch
  0022-alsamixer-remove-dead-fcn-widget_handle_key-in-widge.patch
  0023-alsamixer-remove-unused-variable-y-in-display_scroll.patch
  0024-alsamixer-fix-shift-in-parse_words.patch
  0025-aplay-fix-the-test-position-test-for-playback-avail-.patch</changelog>
  <changelog author="Johannes Segitz &lt;jsegitz@suse.com&gt;" date="1627473600">- Added hardening to systemd service(s). Modified:
  * sound-extra.service</changelog>
  <changelog author="Johannes Segitz &lt;jsegitz@suse.com&gt;" date="1634299200">- Drop ProtectClock hardening, can cause issues if other device acceess is needed</changelog>
  <changelog author="tiwai@suse.de" date="1638792000">- Update to alsa-utils 1.2.6:
  various updates / fixes for alsactl, amidi, alsaloop, alsamixer,
  alsatplg, amixer, aplay and aseqnet.  Details are found in
    https://alsa-project.org/wiki/Changes_v1.2.5.1_v1.2.6#alsa-utils
- Update the download URL
- Add *.sig file for the tarball</changelog>
  <changelog author="tiwai@suse.de" date="1642766400">- Fix alsamixer color config regression:
  0001-alsamixer-Fix-regression-in-color-setup.patch</changelog>
  <changelog author="tiwai@suse.de" date="1643371200">- Fix the broken mouse support on alsamixer:
  0002-alsamixer-Revert-has_mouse-check.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1654084800">- Update to alsa-utils 1.2.7:
  Enhancement and fixes of alsactl, speaker-test cleanup,
  alsatplg enhancements, arecord ghost data fix, etc.
  For details see:
  https://www.alsa-project.org/wiki/Changes_v1.2.6.3_v1.2.7#alsa-utils
- Drop obsoleted patches:
  0001-alsamixer-Fix-regression-in-color-setup.patch
  0002-alsamixer-Revert-has_mouse-check.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1666699200">- Update to alsa-utils 1.2.8 (jsc#PED-850):
  automake update, minor alsactl, amixer and aplay fixes.
  https://www.alsa-project.org/wiki/Changes_v1.2.7.2_v1.2.8
- Add keyring</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1683547200">- Update to alsa-utils 1.2.9:
  BSD build fix, and various updates for alsactl, amidi, axfer,
  alsa-info.sh, alsaloop, alsatplg, alsaucm, aplay, abat.
  For details, see:
  https://www.alsa-project.org/wiki/Changes_v1.2.8_v1.2.9#alsa-utils</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1693828800">- Update to alsa-utils 1.2.10 (jsc#PED-6566):
  * MIDI 2.0 / UMP support for sequencer programs
  * nhlt: add nhlt-dmic-info utility
  * Build fixes and cleanups
  * speaker-test: allow large buffer and period time setup - up to 100 seconds
  * various topology fixes
  For details, see:
  https://www.alsa-project.org/wiki/Changes_v1.2.9_v1.2.10#alsa-utils
- Fix the builds with old gcc:
  0001-axfer-use-ATTRIBUTE_UNUSED-instead-remove-argument-n.patch
  0002-amidi-use-ATTRIBUTE_UNUSED-instead-remove-argument-n.patch
  0003-alsaloop-use-ATTRIBUTE_UNUSED-instead-remove-argumen.patch
  0004-bat-use-ATTRIBUTE_UNUSED-instead-remove-argument-nam.patch
  0005-seq-use-ATTRIBUTE_UNUSED-instead-remove-argument-nam.patch
  0006-alsaucm-use-ATTRIBUTE_UNUSED-instead-remove-argument.patch
  0007-topology-use-ATTRIBUTE_UNUSED-instead-remove-argumen.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1704715200">- Backport upstream fixes:
  buffer overflow fixes in aplay, segfault in aplaymidi, etc:
  0008-topology-include-locale.h.patch
  0009-nhlt-dmic-info.c-include-sys-types.h.patch
  0010-topology-pre-processor-Add-support-for-enum-controls.patch
  0011-configure.ac-fix-UMP-support-detection.patch
  0012-bat-really-skip-analysis-of-the-first-period-and-upd.patch
  0013-topology-add-include-for-ENABLE_NLS-on-musl.patch
  0014-nhlt-use-stdint.h-types.patch
  0015-Revert-nhlt-dmic-info.c-include-sys-types.h.patch
  0016-aplay-use-stdint.h-types-instead-u_int-u_short-u_cha.patch
  0017-alsa-restore.rules-use-devnode-instead-number-atribu.patch
  0018-nhlt-Revert-SSP_ANALOG-device_type-field.patch
  0019-alsactl-fix-potential-buffer-overwrite.patch
  0020-aplay-fix-buffer-overflow-and-tainted-format-string.patch
  0021-misc-fix-incorrect-usages-of-strerror.patch
  0022-aplay-Add-option-for-specifying-subformat.patch
  0023-aplay-allow-to-compile-with-older-alsa-lib-subformat.patch
  0024-aplay-log-pcm-status-before-reporting-a-fatal-error.patch
  0025-aplay-enable-timestamps-by-default.patch
  0026-aplay-status-dumps-are-called-only-in-verbose-mode.patch
  0027-aplaymidi-Set-event-completely-for-tempo-event.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1706875200">- Update to alsa-utils 1.2.11:
  * alsactl buffer overflow fix
  * alsatplg updates, NHLT ACPI parser updates
  * use smaller periods for speaker-test
  * add bandwidth-limited pink noise for speaker-test
  * aplay updates, including subformat extensions
  * compile warning fixes
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.10_v1.2.11#alsa-utils
- Drop obsoleted patches:
  0001-axfer-use-ATTRIBUTE_UNUSED-instead-remove-argument-n.patch
  0002-amidi-use-ATTRIBUTE_UNUSED-instead-remove-argument-n.patch
  0003-alsaloop-use-ATTRIBUTE_UNUSED-instead-remove-argumen.patch
  0004-bat-use-ATTRIBUTE_UNUSED-instead-remove-argument-nam.patch
  0005-seq-use-ATTRIBUTE_UNUSED-instead-remove-argument-nam.patch
  0006-alsaucm-use-ATTRIBUTE_UNUSED-instead-remove-argument.patch
  0007-topology-use-ATTRIBUTE_UNUSED-instead-remove-argumen.patch
  0008-topology-include-locale.h.patch
  0009-nhlt-dmic-info.c-include-sys-types.h.patch
  0010-topology-pre-processor-Add-support-for-enum-controls.patch
  0011-configure.ac-fix-UMP-support-detection.patch
  0012-bat-really-skip-analysis-of-the-first-period-and-upd.patch
  0013-topology-add-include-for-ENABLE_NLS-on-musl.patch
  0014-nhlt-use-stdint.h-types.patch
  0015-Revert-nhlt-dmic-info.c-include-sys-types.h.patch
  0016-aplay-use-stdint.h-types-instead-u_int-u_short-u_cha.patch
  0017-alsa-restore.rules-use-devnode-instead-number-atribu.patch
  0018-nhlt-Revert-SSP_ANALOG-device_type-field.patch
  0019-alsactl-fix-potential-buffer-overwrite.patch
  0020-aplay-fix-buffer-overflow-and-tainted-format-string.patch
  0021-misc-fix-incorrect-usages-of-strerror.patch
  0022-aplay-Add-option-for-specifying-subformat.patch
  0023-aplay-allow-to-compile-with-older-alsa-lib-subformat.patch
  0024-aplay-log-pcm-status-before-reporting-a-fatal-error.patch
  0025-aplay-enable-timestamps-by-default.patch
  0026-aplay-status-dumps-are-called-only-in-verbose-mode.patch
  0027-aplaymidi-Set-event-completely-for-tempo-event.patch</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1708430400">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Antonio Larrosa &lt;alarrosa@suse.com&gt;" date="1717070400">- Require tree which is used by alsa-info.sh (bsc#1225665)</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1718280000">- Update to alsa-utils 1.2.12:
  * alsactl: NULL pointer fix
  * alsa-info.sh: log SoundWire devices reported in ACPI
  * alsamixer: fix calculation in set_normalized_volume (overflow)
  * topology: nhlt fixes
  * aplay: fix S24_LE wav header
  * aseqdump: Add dump for UMP Utility and System messages
  * Addition of aseqsend
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.11_v1.2.12#alsa-utils</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1731412800">- Update to alsa-utils 1.2.13:
  * alsactl: add support for AMD ACP digital microphone
  * aplay: Print '=== PAUSE ===' only if it is supported
  * aplaymidi/arecordmidi: Allow to pass 0 to -u option, too
  * new aplaymidi2/arecordmidi2 for MIDI v2.0
  * aseqdump: improved UMP supports
  * various topology updates
  * aseqsend: improvement and UMP supports
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.12_v1.2.13#alsa-utils</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1731585600">- Fix alsactl restore error (bsc#1233353):
  0001-alsactl-90-alsa-restore.rules-fix-alsa_restore_go-st.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1732104000">- Yet another fix for alsactl for AMD acp dmic:
  0002-alsactl-90-alsa-restore.rules-fix-AMD-acp-pdm-mach-l.patch</changelog>
</package>
<package pkgid="5911fcdfef32d753d0649ee6b383b22267f19bd0fbbf0f3af546e05325a297f8912de561e947b7547f4bcf641d44b65af58821c1301a98ecf9df0b74c066081c" name="alsa-utils-debuginfo" arch="i586">
  <version epoch="0" ver="1.2.13" rel="2.0.2.1.sr20241103"/>
  <changelog author="tiwai@suse.de" date="1611230400">- Backport upstream fixes:
  various fixes in aplay, alsamixer, alsactl and alsaloop, updated
  translations, etc:
  0001-aplay-try-to-use-16-bit-format-to-increase-capture-q.patch
  0002-alsamixer-Fix-the-mixer-views-description-in-man-pag.patch
  0003-Add-Slovak-translation.patch
  0004-Add-Basque-translation.patch
  0006-aplay-cosmetic-code-fix-in-xrun.patch
  0007-aplay-fix-the-CPU-busy-loop-in-the-pause-handler.patch
  0008-alsa-info-Add-lsusb-and-stream-outputs.patch
  0013-aplay-add-test-code-for-snd_pcm_status-to-test-posit.patch
  0014-ucm-fix-typo-in-docs.patch
  0015-aplay-add-avail-delay-checks-to-test-position.patch
  0016-alsactl-daemon-read_pid_file-fix-the-returned-code-o.patch
  0017-alsactl-init-set_ctl_value-fix-bytes-parsing.patch
  0018-alsactl-init-parse-fix-possible-double-free.patch
  0019-alsaloop-fix-possible-memory-leak-in-create_loopback.patch
  0020-alsaloop-get_queued_playback_samples-simplify-code.patch
  0021-topology-fix-possible-double-free-in-load.patch
  0022-alsamixer-remove-dead-fcn-widget_handle_key-in-widge.patch
  0023-alsamixer-remove-unused-variable-y-in-display_scroll.patch
  0024-alsamixer-fix-shift-in-parse_words.patch
  0025-aplay-fix-the-test-position-test-for-playback-avail-.patch</changelog>
  <changelog author="tiwai@suse.de" date="1616068800">- Fix superfluous asound.state migration (bsc#1183672)</changelog>
  <changelog author="tiwai@suse.de" date="1619438400">- Suppress automatic update of alsa-info.sh (bsc#1185280):
  alsa-info-no-update-for-distro-script.patch</changelog>
  <changelog author="tiwai@suse.de" date="1623672000">- Update to alsa-utils 1.2.5:
  a major version up, including previous patches
  https://www.alsa-project.org/wiki/Changes_v1.2.4_v1.2.5
- Update to alsa-utils 1.2.5.1:
  a small bugfix release
  https://www.alsa-project.org/wiki/Changes_v1.2.5_v1.2.5.1
- Drop the obsoleted patches:
  0001-aplay-try-to-use-16-bit-format-to-increase-capture-q.patch
  0002-alsamixer-Fix-the-mixer-views-description-in-man-pag.patch
  0003-Add-Slovak-translation.patch
  0004-Add-Basque-translation.patch
  0006-aplay-cosmetic-code-fix-in-xrun.patch
  0007-aplay-fix-the-CPU-busy-loop-in-the-pause-handler.patch
  0008-alsa-info-Add-lsusb-and-stream-outputs.patch
  0010-alsactl-Fix-double-decrease-of-lock-timeout.patch
  0011-alsactl-Fix-race-at-creating-a-lock-file.patch
  0012-alsactl-Remove-asound.state-file-check-from-alsa-res.patch
  0013-aplay-add-test-code-for-snd_pcm_status-to-test-posit.patch
  0014-ucm-fix-typo-in-docs.patch
  0015-aplay-add-avail-delay-checks-to-test-position.patch
  0016-alsactl-daemon-read_pid_file-fix-the-returned-code-o.patch
  0017-alsactl-init-set_ctl_value-fix-bytes-parsing.patch
  0018-alsactl-init-parse-fix-possible-double-free.patch
  0019-alsaloop-fix-possible-memory-leak-in-create_loopback.patch
  0020-alsaloop-get_queued_playback_samples-simplify-code.patch
  0021-topology-fix-possible-double-free-in-load.patch
  0022-alsamixer-remove-dead-fcn-widget_handle_key-in-widge.patch
  0023-alsamixer-remove-unused-variable-y-in-display_scroll.patch
  0024-alsamixer-fix-shift-in-parse_words.patch
  0025-aplay-fix-the-test-position-test-for-playback-avail-.patch</changelog>
  <changelog author="Johannes Segitz &lt;jsegitz@suse.com&gt;" date="1627473600">- Added hardening to systemd service(s). Modified:
  * sound-extra.service</changelog>
  <changelog author="Johannes Segitz &lt;jsegitz@suse.com&gt;" date="1634299200">- Drop ProtectClock hardening, can cause issues if other device acceess is needed</changelog>
  <changelog author="tiwai@suse.de" date="1638792000">- Update to alsa-utils 1.2.6:
  various updates / fixes for alsactl, amidi, alsaloop, alsamixer,
  alsatplg, amixer, aplay and aseqnet.  Details are found in
    https://alsa-project.org/wiki/Changes_v1.2.5.1_v1.2.6#alsa-utils
- Update the download URL
- Add *.sig file for the tarball</changelog>
  <changelog author="tiwai@suse.de" date="1642766400">- Fix alsamixer color config regression:
  0001-alsamixer-Fix-regression-in-color-setup.patch</changelog>
  <changelog author="tiwai@suse.de" date="1643371200">- Fix the broken mouse support on alsamixer:
  0002-alsamixer-Revert-has_mouse-check.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1654084800">- Update to alsa-utils 1.2.7:
  Enhancement and fixes of alsactl, speaker-test cleanup,
  alsatplg enhancements, arecord ghost data fix, etc.
  For details see:
  https://www.alsa-project.org/wiki/Changes_v1.2.6.3_v1.2.7#alsa-utils
- Drop obsoleted patches:
  0001-alsamixer-Fix-regression-in-color-setup.patch
  0002-alsamixer-Revert-has_mouse-check.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1666699200">- Update to alsa-utils 1.2.8 (jsc#PED-850):
  automake update, minor alsactl, amixer and aplay fixes.
  https://www.alsa-project.org/wiki/Changes_v1.2.7.2_v1.2.8
- Add keyring</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1683547200">- Update to alsa-utils 1.2.9:
  BSD build fix, and various updates for alsactl, amidi, axfer,
  alsa-info.sh, alsaloop, alsatplg, alsaucm, aplay, abat.
  For details, see:
  https://www.alsa-project.org/wiki/Changes_v1.2.8_v1.2.9#alsa-utils</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1693828800">- Update to alsa-utils 1.2.10 (jsc#PED-6566):
  * MIDI 2.0 / UMP support for sequencer programs
  * nhlt: add nhlt-dmic-info utility
  * Build fixes and cleanups
  * speaker-test: allow large buffer and period time setup - up to 100 seconds
  * various topology fixes
  For details, see:
  https://www.alsa-project.org/wiki/Changes_v1.2.9_v1.2.10#alsa-utils
- Fix the builds with old gcc:
  0001-axfer-use-ATTRIBUTE_UNUSED-instead-remove-argument-n.patch
  0002-amidi-use-ATTRIBUTE_UNUSED-instead-remove-argument-n.patch
  0003-alsaloop-use-ATTRIBUTE_UNUSED-instead-remove-argumen.patch
  0004-bat-use-ATTRIBUTE_UNUSED-instead-remove-argument-nam.patch
  0005-seq-use-ATTRIBUTE_UNUSED-instead-remove-argument-nam.patch
  0006-alsaucm-use-ATTRIBUTE_UNUSED-instead-remove-argument.patch
  0007-topology-use-ATTRIBUTE_UNUSED-instead-remove-argumen.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1704715200">- Backport upstream fixes:
  buffer overflow fixes in aplay, segfault in aplaymidi, etc:
  0008-topology-include-locale.h.patch
  0009-nhlt-dmic-info.c-include-sys-types.h.patch
  0010-topology-pre-processor-Add-support-for-enum-controls.patch
  0011-configure.ac-fix-UMP-support-detection.patch
  0012-bat-really-skip-analysis-of-the-first-period-and-upd.patch
  0013-topology-add-include-for-ENABLE_NLS-on-musl.patch
  0014-nhlt-use-stdint.h-types.patch
  0015-Revert-nhlt-dmic-info.c-include-sys-types.h.patch
  0016-aplay-use-stdint.h-types-instead-u_int-u_short-u_cha.patch
  0017-alsa-restore.rules-use-devnode-instead-number-atribu.patch
  0018-nhlt-Revert-SSP_ANALOG-device_type-field.patch
  0019-alsactl-fix-potential-buffer-overwrite.patch
  0020-aplay-fix-buffer-overflow-and-tainted-format-string.patch
  0021-misc-fix-incorrect-usages-of-strerror.patch
  0022-aplay-Add-option-for-specifying-subformat.patch
  0023-aplay-allow-to-compile-with-older-alsa-lib-subformat.patch
  0024-aplay-log-pcm-status-before-reporting-a-fatal-error.patch
  0025-aplay-enable-timestamps-by-default.patch
  0026-aplay-status-dumps-are-called-only-in-verbose-mode.patch
  0027-aplaymidi-Set-event-completely-for-tempo-event.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1706875200">- Update to alsa-utils 1.2.11:
  * alsactl buffer overflow fix
  * alsatplg updates, NHLT ACPI parser updates
  * use smaller periods for speaker-test
  * add bandwidth-limited pink noise for speaker-test
  * aplay updates, including subformat extensions
  * compile warning fixes
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.10_v1.2.11#alsa-utils
- Drop obsoleted patches:
  0001-axfer-use-ATTRIBUTE_UNUSED-instead-remove-argument-n.patch
  0002-amidi-use-ATTRIBUTE_UNUSED-instead-remove-argument-n.patch
  0003-alsaloop-use-ATTRIBUTE_UNUSED-instead-remove-argumen.patch
  0004-bat-use-ATTRIBUTE_UNUSED-instead-remove-argument-nam.patch
  0005-seq-use-ATTRIBUTE_UNUSED-instead-remove-argument-nam.patch
  0006-alsaucm-use-ATTRIBUTE_UNUSED-instead-remove-argument.patch
  0007-topology-use-ATTRIBUTE_UNUSED-instead-remove-argumen.patch
  0008-topology-include-locale.h.patch
  0009-nhlt-dmic-info.c-include-sys-types.h.patch
  0010-topology-pre-processor-Add-support-for-enum-controls.patch
  0011-configure.ac-fix-UMP-support-detection.patch
  0012-bat-really-skip-analysis-of-the-first-period-and-upd.patch
  0013-topology-add-include-for-ENABLE_NLS-on-musl.patch
  0014-nhlt-use-stdint.h-types.patch
  0015-Revert-nhlt-dmic-info.c-include-sys-types.h.patch
  0016-aplay-use-stdint.h-types-instead-u_int-u_short-u_cha.patch
  0017-alsa-restore.rules-use-devnode-instead-number-atribu.patch
  0018-nhlt-Revert-SSP_ANALOG-device_type-field.patch
  0019-alsactl-fix-potential-buffer-overwrite.patch
  0020-aplay-fix-buffer-overflow-and-tainted-format-string.patch
  0021-misc-fix-incorrect-usages-of-strerror.patch
  0022-aplay-Add-option-for-specifying-subformat.patch
  0023-aplay-allow-to-compile-with-older-alsa-lib-subformat.patch
  0024-aplay-log-pcm-status-before-reporting-a-fatal-error.patch
  0025-aplay-enable-timestamps-by-default.patch
  0026-aplay-status-dumps-are-called-only-in-verbose-mode.patch
  0027-aplaymidi-Set-event-completely-for-tempo-event.patch</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1708430400">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Antonio Larrosa &lt;alarrosa@suse.com&gt;" date="1717070400">- Require tree which is used by alsa-info.sh (bsc#1225665)</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1718280000">- Update to alsa-utils 1.2.12:
  * alsactl: NULL pointer fix
  * alsa-info.sh: log SoundWire devices reported in ACPI
  * alsamixer: fix calculation in set_normalized_volume (overflow)
  * topology: nhlt fixes
  * aplay: fix S24_LE wav header
  * aseqdump: Add dump for UMP Utility and System messages
  * Addition of aseqsend
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.11_v1.2.12#alsa-utils</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1731412800">- Update to alsa-utils 1.2.13:
  * alsactl: add support for AMD ACP digital microphone
  * aplay: Print '=== PAUSE ===' only if it is supported
  * aplaymidi/arecordmidi: Allow to pass 0 to -u option, too
  * new aplaymidi2/arecordmidi2 for MIDI v2.0
  * aseqdump: improved UMP supports
  * various topology updates
  * aseqsend: improvement and UMP supports
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.12_v1.2.13#alsa-utils</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1731585600">- Fix alsactl restore error (bsc#1233353):
  0001-alsactl-90-alsa-restore.rules-fix-alsa_restore_go-st.patch</changelog>
</package>
<package pkgid="d6c410787ca5f26bd708646c9a12b541fdc68a7d3a9aff5790de76f2b97194fe0acfef5c956e8c358fb4c2201bc49fbbe0335b5ce9388dc239fb2c18f6903be8" name="alsa-utils-debuginfo" arch="x86_64">
  <version epoch="0" ver="1.2.13" rel="2.0.2.1.sr20241103"/>
  <changelog author="tiwai@suse.de" date="1611230400">- Backport upstream fixes:
  various fixes in aplay, alsamixer, alsactl and alsaloop, updated
  translations, etc:
  0001-aplay-try-to-use-16-bit-format-to-increase-capture-q.patch
  0002-alsamixer-Fix-the-mixer-views-description-in-man-pag.patch
  0003-Add-Slovak-translation.patch
  0004-Add-Basque-translation.patch
  0006-aplay-cosmetic-code-fix-in-xrun.patch
  0007-aplay-fix-the-CPU-busy-loop-in-the-pause-handler.patch
  0008-alsa-info-Add-lsusb-and-stream-outputs.patch
  0013-aplay-add-test-code-for-snd_pcm_status-to-test-posit.patch
  0014-ucm-fix-typo-in-docs.patch
  0015-aplay-add-avail-delay-checks-to-test-position.patch
  0016-alsactl-daemon-read_pid_file-fix-the-returned-code-o.patch
  0017-alsactl-init-set_ctl_value-fix-bytes-parsing.patch
  0018-alsactl-init-parse-fix-possible-double-free.patch
  0019-alsaloop-fix-possible-memory-leak-in-create_loopback.patch
  0020-alsaloop-get_queued_playback_samples-simplify-code.patch
  0021-topology-fix-possible-double-free-in-load.patch
  0022-alsamixer-remove-dead-fcn-widget_handle_key-in-widge.patch
  0023-alsamixer-remove-unused-variable-y-in-display_scroll.patch
  0024-alsamixer-fix-shift-in-parse_words.patch
  0025-aplay-fix-the-test-position-test-for-playback-avail-.patch</changelog>
  <changelog author="tiwai@suse.de" date="1616068800">- Fix superfluous asound.state migration (bsc#1183672)</changelog>
  <changelog author="tiwai@suse.de" date="1619438400">- Suppress automatic update of alsa-info.sh (bsc#1185280):
  alsa-info-no-update-for-distro-script.patch</changelog>
  <changelog author="tiwai@suse.de" date="1623672000">- Update to alsa-utils 1.2.5:
  a major version up, including previous patches
  https://www.alsa-project.org/wiki/Changes_v1.2.4_v1.2.5
- Update to alsa-utils 1.2.5.1:
  a small bugfix release
  https://www.alsa-project.org/wiki/Changes_v1.2.5_v1.2.5.1
- Drop the obsoleted patches:
  0001-aplay-try-to-use-16-bit-format-to-increase-capture-q.patch
  0002-alsamixer-Fix-the-mixer-views-description-in-man-pag.patch
  0003-Add-Slovak-translation.patch
  0004-Add-Basque-translation.patch
  0006-aplay-cosmetic-code-fix-in-xrun.patch
  0007-aplay-fix-the-CPU-busy-loop-in-the-pause-handler.patch
  0008-alsa-info-Add-lsusb-and-stream-outputs.patch
  0010-alsactl-Fix-double-decrease-of-lock-timeout.patch
  0011-alsactl-Fix-race-at-creating-a-lock-file.patch
  0012-alsactl-Remove-asound.state-file-check-from-alsa-res.patch
  0013-aplay-add-test-code-for-snd_pcm_status-to-test-posit.patch
  0014-ucm-fix-typo-in-docs.patch
  0015-aplay-add-avail-delay-checks-to-test-position.patch
  0016-alsactl-daemon-read_pid_file-fix-the-returned-code-o.patch
  0017-alsactl-init-set_ctl_value-fix-bytes-parsing.patch
  0018-alsactl-init-parse-fix-possible-double-free.patch
  0019-alsaloop-fix-possible-memory-leak-in-create_loopback.patch
  0020-alsaloop-get_queued_playback_samples-simplify-code.patch
  0021-topology-fix-possible-double-free-in-load.patch
  0022-alsamixer-remove-dead-fcn-widget_handle_key-in-widge.patch
  0023-alsamixer-remove-unused-variable-y-in-display_scroll.patch
  0024-alsamixer-fix-shift-in-parse_words.patch
  0025-aplay-fix-the-test-position-test-for-playback-avail-.patch</changelog>
  <changelog author="Johannes Segitz &lt;jsegitz@suse.com&gt;" date="1627473600">- Added hardening to systemd service(s). Modified:
  * sound-extra.service</changelog>
  <changelog author="Johannes Segitz &lt;jsegitz@suse.com&gt;" date="1634299200">- Drop ProtectClock hardening, can cause issues if other device acceess is needed</changelog>
  <changelog author="tiwai@suse.de" date="1638792000">- Update to alsa-utils 1.2.6:
  various updates / fixes for alsactl, amidi, alsaloop, alsamixer,
  alsatplg, amixer, aplay and aseqnet.  Details are found in
    https://alsa-project.org/wiki/Changes_v1.2.5.1_v1.2.6#alsa-utils
- Update the download URL
- Add *.sig file for the tarball</changelog>
  <changelog author="tiwai@suse.de" date="1642766400">- Fix alsamixer color config regression:
  0001-alsamixer-Fix-regression-in-color-setup.patch</changelog>
  <changelog author="tiwai@suse.de" date="1643371200">- Fix the broken mouse support on alsamixer:
  0002-alsamixer-Revert-has_mouse-check.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1654084800">- Update to alsa-utils 1.2.7:
  Enhancement and fixes of alsactl, speaker-test cleanup,
  alsatplg enhancements, arecord ghost data fix, etc.
  For details see:
  https://www.alsa-project.org/wiki/Changes_v1.2.6.3_v1.2.7#alsa-utils
- Drop obsoleted patches:
  0001-alsamixer-Fix-regression-in-color-setup.patch
  0002-alsamixer-Revert-has_mouse-check.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1666699200">- Update to alsa-utils 1.2.8 (jsc#PED-850):
  automake update, minor alsactl, amixer and aplay fixes.
  https://www.alsa-project.org/wiki/Changes_v1.2.7.2_v1.2.8
- Add keyring</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1683547200">- Update to alsa-utils 1.2.9:
  BSD build fix, and various updates for alsactl, amidi, axfer,
  alsa-info.sh, alsaloop, alsatplg, alsaucm, aplay, abat.
  For details, see:
  https://www.alsa-project.org/wiki/Changes_v1.2.8_v1.2.9#alsa-utils</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1693828800">- Update to alsa-utils 1.2.10 (jsc#PED-6566):
  * MIDI 2.0 / UMP support for sequencer programs
  * nhlt: add nhlt-dmic-info utility
  * Build fixes and cleanups
  * speaker-test: allow large buffer and period time setup - up to 100 seconds
  * various topology fixes
  For details, see:
  https://www.alsa-project.org/wiki/Changes_v1.2.9_v1.2.10#alsa-utils
- Fix the builds with old gcc:
  0001-axfer-use-ATTRIBUTE_UNUSED-instead-remove-argument-n.patch
  0002-amidi-use-ATTRIBUTE_UNUSED-instead-remove-argument-n.patch
  0003-alsaloop-use-ATTRIBUTE_UNUSED-instead-remove-argumen.patch
  0004-bat-use-ATTRIBUTE_UNUSED-instead-remove-argument-nam.patch
  0005-seq-use-ATTRIBUTE_UNUSED-instead-remove-argument-nam.patch
  0006-alsaucm-use-ATTRIBUTE_UNUSED-instead-remove-argument.patch
  0007-topology-use-ATTRIBUTE_UNUSED-instead-remove-argumen.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1704715200">- Backport upstream fixes:
  buffer overflow fixes in aplay, segfault in aplaymidi, etc:
  0008-topology-include-locale.h.patch
  0009-nhlt-dmic-info.c-include-sys-types.h.patch
  0010-topology-pre-processor-Add-support-for-enum-controls.patch
  0011-configure.ac-fix-UMP-support-detection.patch
  0012-bat-really-skip-analysis-of-the-first-period-and-upd.patch
  0013-topology-add-include-for-ENABLE_NLS-on-musl.patch
  0014-nhlt-use-stdint.h-types.patch
  0015-Revert-nhlt-dmic-info.c-include-sys-types.h.patch
  0016-aplay-use-stdint.h-types-instead-u_int-u_short-u_cha.patch
  0017-alsa-restore.rules-use-devnode-instead-number-atribu.patch
  0018-nhlt-Revert-SSP_ANALOG-device_type-field.patch
  0019-alsactl-fix-potential-buffer-overwrite.patch
  0020-aplay-fix-buffer-overflow-and-tainted-format-string.patch
  0021-misc-fix-incorrect-usages-of-strerror.patch
  0022-aplay-Add-option-for-specifying-subformat.patch
  0023-aplay-allow-to-compile-with-older-alsa-lib-subformat.patch
  0024-aplay-log-pcm-status-before-reporting-a-fatal-error.patch
  0025-aplay-enable-timestamps-by-default.patch
  0026-aplay-status-dumps-are-called-only-in-verbose-mode.patch
  0027-aplaymidi-Set-event-completely-for-tempo-event.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1706875200">- Update to alsa-utils 1.2.11:
  * alsactl buffer overflow fix
  * alsatplg updates, NHLT ACPI parser updates
  * use smaller periods for speaker-test
  * add bandwidth-limited pink noise for speaker-test
  * aplay updates, including subformat extensions
  * compile warning fixes
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.10_v1.2.11#alsa-utils
- Drop obsoleted patches:
  0001-axfer-use-ATTRIBUTE_UNUSED-instead-remove-argument-n.patch
  0002-amidi-use-ATTRIBUTE_UNUSED-instead-remove-argument-n.patch
  0003-alsaloop-use-ATTRIBUTE_UNUSED-instead-remove-argumen.patch
  0004-bat-use-ATTRIBUTE_UNUSED-instead-remove-argument-nam.patch
  0005-seq-use-ATTRIBUTE_UNUSED-instead-remove-argument-nam.patch
  0006-alsaucm-use-ATTRIBUTE_UNUSED-instead-remove-argument.patch
  0007-topology-use-ATTRIBUTE_UNUSED-instead-remove-argumen.patch
  0008-topology-include-locale.h.patch
  0009-nhlt-dmic-info.c-include-sys-types.h.patch
  0010-topology-pre-processor-Add-support-for-enum-controls.patch
  0011-configure.ac-fix-UMP-support-detection.patch
  0012-bat-really-skip-analysis-of-the-first-period-and-upd.patch
  0013-topology-add-include-for-ENABLE_NLS-on-musl.patch
  0014-nhlt-use-stdint.h-types.patch
  0015-Revert-nhlt-dmic-info.c-include-sys-types.h.patch
  0016-aplay-use-stdint.h-types-instead-u_int-u_short-u_cha.patch
  0017-alsa-restore.rules-use-devnode-instead-number-atribu.patch
  0018-nhlt-Revert-SSP_ANALOG-device_type-field.patch
  0019-alsactl-fix-potential-buffer-overwrite.patch
  0020-aplay-fix-buffer-overflow-and-tainted-format-string.patch
  0021-misc-fix-incorrect-usages-of-strerror.patch
  0022-aplay-Add-option-for-specifying-subformat.patch
  0023-aplay-allow-to-compile-with-older-alsa-lib-subformat.patch
  0024-aplay-log-pcm-status-before-reporting-a-fatal-error.patch
  0025-aplay-enable-timestamps-by-default.patch
  0026-aplay-status-dumps-are-called-only-in-verbose-mode.patch
  0027-aplaymidi-Set-event-completely-for-tempo-event.patch</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1708430400">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Antonio Larrosa &lt;alarrosa@suse.com&gt;" date="1717070400">- Require tree which is used by alsa-info.sh (bsc#1225665)</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1718280000">- Update to alsa-utils 1.2.12:
  * alsactl: NULL pointer fix
  * alsa-info.sh: log SoundWire devices reported in ACPI
  * alsamixer: fix calculation in set_normalized_volume (overflow)
  * topology: nhlt fixes
  * aplay: fix S24_LE wav header
  * aseqdump: Add dump for UMP Utility and System messages
  * Addition of aseqsend
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.11_v1.2.12#alsa-utils</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1731412800">- Update to alsa-utils 1.2.13:
  * alsactl: add support for AMD ACP digital microphone
  * aplay: Print '=== PAUSE ===' only if it is supported
  * aplaymidi/arecordmidi: Allow to pass 0 to -u option, too
  * new aplaymidi2/arecordmidi2 for MIDI v2.0
  * aseqdump: improved UMP supports
  * various topology updates
  * aseqsend: improvement and UMP supports
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.12_v1.2.13#alsa-utils</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1731585600">- Fix alsactl restore error (bsc#1233353):
  0001-alsactl-90-alsa-restore.rules-fix-alsa_restore_go-st.patch</changelog>
</package>
<package pkgid="30ca51a97abc422ac266a48ac5ba625e506469deef3e621b53a9aba9121edc0416d1bd8b3e4486f67d4730c8ae55e0ba7dd84cab48dda8705ff56f675d959d9d" name="alsa-utils-debuginfo" arch="i586">
  <version epoch="0" ver="1.2.13" rel="3.0.4.1.sr20241103"/>
  <changelog author="tiwai@suse.de" date="1616068800">- Fix superfluous asound.state migration (bsc#1183672)</changelog>
  <changelog author="tiwai@suse.de" date="1619438400">- Suppress automatic update of alsa-info.sh (bsc#1185280):
  alsa-info-no-update-for-distro-script.patch</changelog>
  <changelog author="tiwai@suse.de" date="1623672000">- Update to alsa-utils 1.2.5:
  a major version up, including previous patches
  https://www.alsa-project.org/wiki/Changes_v1.2.4_v1.2.5
- Update to alsa-utils 1.2.5.1:
  a small bugfix release
  https://www.alsa-project.org/wiki/Changes_v1.2.5_v1.2.5.1
- Drop the obsoleted patches:
  0001-aplay-try-to-use-16-bit-format-to-increase-capture-q.patch
  0002-alsamixer-Fix-the-mixer-views-description-in-man-pag.patch
  0003-Add-Slovak-translation.patch
  0004-Add-Basque-translation.patch
  0006-aplay-cosmetic-code-fix-in-xrun.patch
  0007-aplay-fix-the-CPU-busy-loop-in-the-pause-handler.patch
  0008-alsa-info-Add-lsusb-and-stream-outputs.patch
  0010-alsactl-Fix-double-decrease-of-lock-timeout.patch
  0011-alsactl-Fix-race-at-creating-a-lock-file.patch
  0012-alsactl-Remove-asound.state-file-check-from-alsa-res.patch
  0013-aplay-add-test-code-for-snd_pcm_status-to-test-posit.patch
  0014-ucm-fix-typo-in-docs.patch
  0015-aplay-add-avail-delay-checks-to-test-position.patch
  0016-alsactl-daemon-read_pid_file-fix-the-returned-code-o.patch
  0017-alsactl-init-set_ctl_value-fix-bytes-parsing.patch
  0018-alsactl-init-parse-fix-possible-double-free.patch
  0019-alsaloop-fix-possible-memory-leak-in-create_loopback.patch
  0020-alsaloop-get_queued_playback_samples-simplify-code.patch
  0021-topology-fix-possible-double-free-in-load.patch
  0022-alsamixer-remove-dead-fcn-widget_handle_key-in-widge.patch
  0023-alsamixer-remove-unused-variable-y-in-display_scroll.patch
  0024-alsamixer-fix-shift-in-parse_words.patch
  0025-aplay-fix-the-test-position-test-for-playback-avail-.patch</changelog>
  <changelog author="Johannes Segitz &lt;jsegitz@suse.com&gt;" date="1627473600">- Added hardening to systemd service(s). Modified:
  * sound-extra.service</changelog>
  <changelog author="Johannes Segitz &lt;jsegitz@suse.com&gt;" date="1634299200">- Drop ProtectClock hardening, can cause issues if other device acceess is needed</changelog>
  <changelog author="tiwai@suse.de" date="1638792000">- Update to alsa-utils 1.2.6:
  various updates / fixes for alsactl, amidi, alsaloop, alsamixer,
  alsatplg, amixer, aplay and aseqnet.  Details are found in
    https://alsa-project.org/wiki/Changes_v1.2.5.1_v1.2.6#alsa-utils
- Update the download URL
- Add *.sig file for the tarball</changelog>
  <changelog author="tiwai@suse.de" date="1642766400">- Fix alsamixer color config regression:
  0001-alsamixer-Fix-regression-in-color-setup.patch</changelog>
  <changelog author="tiwai@suse.de" date="1643371200">- Fix the broken mouse support on alsamixer:
  0002-alsamixer-Revert-has_mouse-check.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1654084800">- Update to alsa-utils 1.2.7:
  Enhancement and fixes of alsactl, speaker-test cleanup,
  alsatplg enhancements, arecord ghost data fix, etc.
  For details see:
  https://www.alsa-project.org/wiki/Changes_v1.2.6.3_v1.2.7#alsa-utils
- Drop obsoleted patches:
  0001-alsamixer-Fix-regression-in-color-setup.patch
  0002-alsamixer-Revert-has_mouse-check.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1666699200">- Update to alsa-utils 1.2.8 (jsc#PED-850):
  automake update, minor alsactl, amixer and aplay fixes.
  https://www.alsa-project.org/wiki/Changes_v1.2.7.2_v1.2.8
- Add keyring</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1683547200">- Update to alsa-utils 1.2.9:
  BSD build fix, and various updates for alsactl, amidi, axfer,
  alsa-info.sh, alsaloop, alsatplg, alsaucm, aplay, abat.
  For details, see:
  https://www.alsa-project.org/wiki/Changes_v1.2.8_v1.2.9#alsa-utils</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1693828800">- Update to alsa-utils 1.2.10 (jsc#PED-6566):
  * MIDI 2.0 / UMP support for sequencer programs
  * nhlt: add nhlt-dmic-info utility
  * Build fixes and cleanups
  * speaker-test: allow large buffer and period time setup - up to 100 seconds
  * various topology fixes
  For details, see:
  https://www.alsa-project.org/wiki/Changes_v1.2.9_v1.2.10#alsa-utils
- Fix the builds with old gcc:
  0001-axfer-use-ATTRIBUTE_UNUSED-instead-remove-argument-n.patch
  0002-amidi-use-ATTRIBUTE_UNUSED-instead-remove-argument-n.patch
  0003-alsaloop-use-ATTRIBUTE_UNUSED-instead-remove-argumen.patch
  0004-bat-use-ATTRIBUTE_UNUSED-instead-remove-argument-nam.patch
  0005-seq-use-ATTRIBUTE_UNUSED-instead-remove-argument-nam.patch
  0006-alsaucm-use-ATTRIBUTE_UNUSED-instead-remove-argument.patch
  0007-topology-use-ATTRIBUTE_UNUSED-instead-remove-argumen.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1704715200">- Backport upstream fixes:
  buffer overflow fixes in aplay, segfault in aplaymidi, etc:
  0008-topology-include-locale.h.patch
  0009-nhlt-dmic-info.c-include-sys-types.h.patch
  0010-topology-pre-processor-Add-support-for-enum-controls.patch
  0011-configure.ac-fix-UMP-support-detection.patch
  0012-bat-really-skip-analysis-of-the-first-period-and-upd.patch
  0013-topology-add-include-for-ENABLE_NLS-on-musl.patch
  0014-nhlt-use-stdint.h-types.patch
  0015-Revert-nhlt-dmic-info.c-include-sys-types.h.patch
  0016-aplay-use-stdint.h-types-instead-u_int-u_short-u_cha.patch
  0017-alsa-restore.rules-use-devnode-instead-number-atribu.patch
  0018-nhlt-Revert-SSP_ANALOG-device_type-field.patch
  0019-alsactl-fix-potential-buffer-overwrite.patch
  0020-aplay-fix-buffer-overflow-and-tainted-format-string.patch
  0021-misc-fix-incorrect-usages-of-strerror.patch
  0022-aplay-Add-option-for-specifying-subformat.patch
  0023-aplay-allow-to-compile-with-older-alsa-lib-subformat.patch
  0024-aplay-log-pcm-status-before-reporting-a-fatal-error.patch
  0025-aplay-enable-timestamps-by-default.patch
  0026-aplay-status-dumps-are-called-only-in-verbose-mode.patch
  0027-aplaymidi-Set-event-completely-for-tempo-event.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1706875200">- Update to alsa-utils 1.2.11:
  * alsactl buffer overflow fix
  * alsatplg updates, NHLT ACPI parser updates
  * use smaller periods for speaker-test
  * add bandwidth-limited pink noise for speaker-test
  * aplay updates, including subformat extensions
  * compile warning fixes
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.10_v1.2.11#alsa-utils
- Drop obsoleted patches:
  0001-axfer-use-ATTRIBUTE_UNUSED-instead-remove-argument-n.patch
  0002-amidi-use-ATTRIBUTE_UNUSED-instead-remove-argument-n.patch
  0003-alsaloop-use-ATTRIBUTE_UNUSED-instead-remove-argumen.patch
  0004-bat-use-ATTRIBUTE_UNUSED-instead-remove-argument-nam.patch
  0005-seq-use-ATTRIBUTE_UNUSED-instead-remove-argument-nam.patch
  0006-alsaucm-use-ATTRIBUTE_UNUSED-instead-remove-argument.patch
  0007-topology-use-ATTRIBUTE_UNUSED-instead-remove-argumen.patch
  0008-topology-include-locale.h.patch
  0009-nhlt-dmic-info.c-include-sys-types.h.patch
  0010-topology-pre-processor-Add-support-for-enum-controls.patch
  0011-configure.ac-fix-UMP-support-detection.patch
  0012-bat-really-skip-analysis-of-the-first-period-and-upd.patch
  0013-topology-add-include-for-ENABLE_NLS-on-musl.patch
  0014-nhlt-use-stdint.h-types.patch
  0015-Revert-nhlt-dmic-info.c-include-sys-types.h.patch
  0016-aplay-use-stdint.h-types-instead-u_int-u_short-u_cha.patch
  0017-alsa-restore.rules-use-devnode-instead-number-atribu.patch
  0018-nhlt-Revert-SSP_ANALOG-device_type-field.patch
  0019-alsactl-fix-potential-buffer-overwrite.patch
  0020-aplay-fix-buffer-overflow-and-tainted-format-string.patch
  0021-misc-fix-incorrect-usages-of-strerror.patch
  0022-aplay-Add-option-for-specifying-subformat.patch
  0023-aplay-allow-to-compile-with-older-alsa-lib-subformat.patch
  0024-aplay-log-pcm-status-before-reporting-a-fatal-error.patch
  0025-aplay-enable-timestamps-by-default.patch
  0026-aplay-status-dumps-are-called-only-in-verbose-mode.patch
  0027-aplaymidi-Set-event-completely-for-tempo-event.patch</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1708430400">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Antonio Larrosa &lt;alarrosa@suse.com&gt;" date="1717070400">- Require tree which is used by alsa-info.sh (bsc#1225665)</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1718280000">- Update to alsa-utils 1.2.12:
  * alsactl: NULL pointer fix
  * alsa-info.sh: log SoundWire devices reported in ACPI
  * alsamixer: fix calculation in set_normalized_volume (overflow)
  * topology: nhlt fixes
  * aplay: fix S24_LE wav header
  * aseqdump: Add dump for UMP Utility and System messages
  * Addition of aseqsend
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.11_v1.2.12#alsa-utils</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1731412800">- Update to alsa-utils 1.2.13:
  * alsactl: add support for AMD ACP digital microphone
  * aplay: Print '=== PAUSE ===' only if it is supported
  * aplaymidi/arecordmidi: Allow to pass 0 to -u option, too
  * new aplaymidi2/arecordmidi2 for MIDI v2.0
  * aseqdump: improved UMP supports
  * various topology updates
  * aseqsend: improvement and UMP supports
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.12_v1.2.13#alsa-utils</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1731585600">- Fix alsactl restore error (bsc#1233353):
  0001-alsactl-90-alsa-restore.rules-fix-alsa_restore_go-st.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1732104000">- Yet another fix for alsactl for AMD acp dmic:
  0002-alsactl-90-alsa-restore.rules-fix-AMD-acp-pdm-mach-l.patch</changelog>
</package>
<package pkgid="07b51be914dd1870df56a18b48dd675321b3a247698f3b7c7d03de016594105d0a399b7f7b033afac0ac85c14ea65a11dc540ba754cacfa5d5bfdf02c3fdaaf3" name="alsa-utils-debuginfo" arch="x86_64">
  <version epoch="0" ver="1.2.13" rel="3.0.4.1.sr20241103"/>
  <changelog author="tiwai@suse.de" date="1616068800">- Fix superfluous asound.state migration (bsc#1183672)</changelog>
  <changelog author="tiwai@suse.de" date="1619438400">- Suppress automatic update of alsa-info.sh (bsc#1185280):
  alsa-info-no-update-for-distro-script.patch</changelog>
  <changelog author="tiwai@suse.de" date="1623672000">- Update to alsa-utils 1.2.5:
  a major version up, including previous patches
  https://www.alsa-project.org/wiki/Changes_v1.2.4_v1.2.5
- Update to alsa-utils 1.2.5.1:
  a small bugfix release
  https://www.alsa-project.org/wiki/Changes_v1.2.5_v1.2.5.1
- Drop the obsoleted patches:
  0001-aplay-try-to-use-16-bit-format-to-increase-capture-q.patch
  0002-alsamixer-Fix-the-mixer-views-description-in-man-pag.patch
  0003-Add-Slovak-translation.patch
  0004-Add-Basque-translation.patch
  0006-aplay-cosmetic-code-fix-in-xrun.patch
  0007-aplay-fix-the-CPU-busy-loop-in-the-pause-handler.patch
  0008-alsa-info-Add-lsusb-and-stream-outputs.patch
  0010-alsactl-Fix-double-decrease-of-lock-timeout.patch
  0011-alsactl-Fix-race-at-creating-a-lock-file.patch
  0012-alsactl-Remove-asound.state-file-check-from-alsa-res.patch
  0013-aplay-add-test-code-for-snd_pcm_status-to-test-posit.patch
  0014-ucm-fix-typo-in-docs.patch
  0015-aplay-add-avail-delay-checks-to-test-position.patch
  0016-alsactl-daemon-read_pid_file-fix-the-returned-code-o.patch
  0017-alsactl-init-set_ctl_value-fix-bytes-parsing.patch
  0018-alsactl-init-parse-fix-possible-double-free.patch
  0019-alsaloop-fix-possible-memory-leak-in-create_loopback.patch
  0020-alsaloop-get_queued_playback_samples-simplify-code.patch
  0021-topology-fix-possible-double-free-in-load.patch
  0022-alsamixer-remove-dead-fcn-widget_handle_key-in-widge.patch
  0023-alsamixer-remove-unused-variable-y-in-display_scroll.patch
  0024-alsamixer-fix-shift-in-parse_words.patch
  0025-aplay-fix-the-test-position-test-for-playback-avail-.patch</changelog>
  <changelog author="Johannes Segitz &lt;jsegitz@suse.com&gt;" date="1627473600">- Added hardening to systemd service(s). Modified:
  * sound-extra.service</changelog>
  <changelog author="Johannes Segitz &lt;jsegitz@suse.com&gt;" date="1634299200">- Drop ProtectClock hardening, can cause issues if other device acceess is needed</changelog>
  <changelog author="tiwai@suse.de" date="1638792000">- Update to alsa-utils 1.2.6:
  various updates / fixes for alsactl, amidi, alsaloop, alsamixer,
  alsatplg, amixer, aplay and aseqnet.  Details are found in
    https://alsa-project.org/wiki/Changes_v1.2.5.1_v1.2.6#alsa-utils
- Update the download URL
- Add *.sig file for the tarball</changelog>
  <changelog author="tiwai@suse.de" date="1642766400">- Fix alsamixer color config regression:
  0001-alsamixer-Fix-regression-in-color-setup.patch</changelog>
  <changelog author="tiwai@suse.de" date="1643371200">- Fix the broken mouse support on alsamixer:
  0002-alsamixer-Revert-has_mouse-check.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1654084800">- Update to alsa-utils 1.2.7:
  Enhancement and fixes of alsactl, speaker-test cleanup,
  alsatplg enhancements, arecord ghost data fix, etc.
  For details see:
  https://www.alsa-project.org/wiki/Changes_v1.2.6.3_v1.2.7#alsa-utils
- Drop obsoleted patches:
  0001-alsamixer-Fix-regression-in-color-setup.patch
  0002-alsamixer-Revert-has_mouse-check.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1666699200">- Update to alsa-utils 1.2.8 (jsc#PED-850):
  automake update, minor alsactl, amixer and aplay fixes.
  https://www.alsa-project.org/wiki/Changes_v1.2.7.2_v1.2.8
- Add keyring</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1683547200">- Update to alsa-utils 1.2.9:
  BSD build fix, and various updates for alsactl, amidi, axfer,
  alsa-info.sh, alsaloop, alsatplg, alsaucm, aplay, abat.
  For details, see:
  https://www.alsa-project.org/wiki/Changes_v1.2.8_v1.2.9#alsa-utils</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1693828800">- Update to alsa-utils 1.2.10 (jsc#PED-6566):
  * MIDI 2.0 / UMP support for sequencer programs
  * nhlt: add nhlt-dmic-info utility
  * Build fixes and cleanups
  * speaker-test: allow large buffer and period time setup - up to 100 seconds
  * various topology fixes
  For details, see:
  https://www.alsa-project.org/wiki/Changes_v1.2.9_v1.2.10#alsa-utils
- Fix the builds with old gcc:
  0001-axfer-use-ATTRIBUTE_UNUSED-instead-remove-argument-n.patch
  0002-amidi-use-ATTRIBUTE_UNUSED-instead-remove-argument-n.patch
  0003-alsaloop-use-ATTRIBUTE_UNUSED-instead-remove-argumen.patch
  0004-bat-use-ATTRIBUTE_UNUSED-instead-remove-argument-nam.patch
  0005-seq-use-ATTRIBUTE_UNUSED-instead-remove-argument-nam.patch
  0006-alsaucm-use-ATTRIBUTE_UNUSED-instead-remove-argument.patch
  0007-topology-use-ATTRIBUTE_UNUSED-instead-remove-argumen.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1704715200">- Backport upstream fixes:
  buffer overflow fixes in aplay, segfault in aplaymidi, etc:
  0008-topology-include-locale.h.patch
  0009-nhlt-dmic-info.c-include-sys-types.h.patch
  0010-topology-pre-processor-Add-support-for-enum-controls.patch
  0011-configure.ac-fix-UMP-support-detection.patch
  0012-bat-really-skip-analysis-of-the-first-period-and-upd.patch
  0013-topology-add-include-for-ENABLE_NLS-on-musl.patch
  0014-nhlt-use-stdint.h-types.patch
  0015-Revert-nhlt-dmic-info.c-include-sys-types.h.patch
  0016-aplay-use-stdint.h-types-instead-u_int-u_short-u_cha.patch
  0017-alsa-restore.rules-use-devnode-instead-number-atribu.patch
  0018-nhlt-Revert-SSP_ANALOG-device_type-field.patch
  0019-alsactl-fix-potential-buffer-overwrite.patch
  0020-aplay-fix-buffer-overflow-and-tainted-format-string.patch
  0021-misc-fix-incorrect-usages-of-strerror.patch
  0022-aplay-Add-option-for-specifying-subformat.patch
  0023-aplay-allow-to-compile-with-older-alsa-lib-subformat.patch
  0024-aplay-log-pcm-status-before-reporting-a-fatal-error.patch
  0025-aplay-enable-timestamps-by-default.patch
  0026-aplay-status-dumps-are-called-only-in-verbose-mode.patch
  0027-aplaymidi-Set-event-completely-for-tempo-event.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1706875200">- Update to alsa-utils 1.2.11:
  * alsactl buffer overflow fix
  * alsatplg updates, NHLT ACPI parser updates
  * use smaller periods for speaker-test
  * add bandwidth-limited pink noise for speaker-test
  * aplay updates, including subformat extensions
  * compile warning fixes
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.10_v1.2.11#alsa-utils
- Drop obsoleted patches:
  0001-axfer-use-ATTRIBUTE_UNUSED-instead-remove-argument-n.patch
  0002-amidi-use-ATTRIBUTE_UNUSED-instead-remove-argument-n.patch
  0003-alsaloop-use-ATTRIBUTE_UNUSED-instead-remove-argumen.patch
  0004-bat-use-ATTRIBUTE_UNUSED-instead-remove-argument-nam.patch
  0005-seq-use-ATTRIBUTE_UNUSED-instead-remove-argument-nam.patch
  0006-alsaucm-use-ATTRIBUTE_UNUSED-instead-remove-argument.patch
  0007-topology-use-ATTRIBUTE_UNUSED-instead-remove-argumen.patch
  0008-topology-include-locale.h.patch
  0009-nhlt-dmic-info.c-include-sys-types.h.patch
  0010-topology-pre-processor-Add-support-for-enum-controls.patch
  0011-configure.ac-fix-UMP-support-detection.patch
  0012-bat-really-skip-analysis-of-the-first-period-and-upd.patch
  0013-topology-add-include-for-ENABLE_NLS-on-musl.patch
  0014-nhlt-use-stdint.h-types.patch
  0015-Revert-nhlt-dmic-info.c-include-sys-types.h.patch
  0016-aplay-use-stdint.h-types-instead-u_int-u_short-u_cha.patch
  0017-alsa-restore.rules-use-devnode-instead-number-atribu.patch
  0018-nhlt-Revert-SSP_ANALOG-device_type-field.patch
  0019-alsactl-fix-potential-buffer-overwrite.patch
  0020-aplay-fix-buffer-overflow-and-tainted-format-string.patch
  0021-misc-fix-incorrect-usages-of-strerror.patch
  0022-aplay-Add-option-for-specifying-subformat.patch
  0023-aplay-allow-to-compile-with-older-alsa-lib-subformat.patch
  0024-aplay-log-pcm-status-before-reporting-a-fatal-error.patch
  0025-aplay-enable-timestamps-by-default.patch
  0026-aplay-status-dumps-are-called-only-in-verbose-mode.patch
  0027-aplaymidi-Set-event-completely-for-tempo-event.patch</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1708430400">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Antonio Larrosa &lt;alarrosa@suse.com&gt;" date="1717070400">- Require tree which is used by alsa-info.sh (bsc#1225665)</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1718280000">- Update to alsa-utils 1.2.12:
  * alsactl: NULL pointer fix
  * alsa-info.sh: log SoundWire devices reported in ACPI
  * alsamixer: fix calculation in set_normalized_volume (overflow)
  * topology: nhlt fixes
  * aplay: fix S24_LE wav header
  * aseqdump: Add dump for UMP Utility and System messages
  * Addition of aseqsend
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.11_v1.2.12#alsa-utils</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1731412800">- Update to alsa-utils 1.2.13:
  * alsactl: add support for AMD ACP digital microphone
  * aplay: Print '=== PAUSE ===' only if it is supported
  * aplaymidi/arecordmidi: Allow to pass 0 to -u option, too
  * new aplaymidi2/arecordmidi2 for MIDI v2.0
  * aseqdump: improved UMP supports
  * various topology updates
  * aseqsend: improvement and UMP supports
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.12_v1.2.13#alsa-utils</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1731585600">- Fix alsactl restore error (bsc#1233353):
  0001-alsactl-90-alsa-restore.rules-fix-alsa_restore_go-st.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1732104000">- Yet another fix for alsactl for AMD acp dmic:
  0002-alsactl-90-alsa-restore.rules-fix-AMD-acp-pdm-mach-l.patch</changelog>
</package>
<package pkgid="24c8c989afa0a1c38280a466761f1d179cdcc072a1586a98cc8d0b276156b591fc08557c17be780b5f3048a2c4b1442cb6d91cf5f5674a16d5f3f08e3c737a99" name="alsa-utils-debugsource" arch="i586">
  <version epoch="0" ver="1.2.13" rel="2.0.2.1.sr20241103"/>
  <changelog author="tiwai@suse.de" date="1611230400">- Backport upstream fixes:
  various fixes in aplay, alsamixer, alsactl and alsaloop, updated
  translations, etc:
  0001-aplay-try-to-use-16-bit-format-to-increase-capture-q.patch
  0002-alsamixer-Fix-the-mixer-views-description-in-man-pag.patch
  0003-Add-Slovak-translation.patch
  0004-Add-Basque-translation.patch
  0006-aplay-cosmetic-code-fix-in-xrun.patch
  0007-aplay-fix-the-CPU-busy-loop-in-the-pause-handler.patch
  0008-alsa-info-Add-lsusb-and-stream-outputs.patch
  0013-aplay-add-test-code-for-snd_pcm_status-to-test-posit.patch
  0014-ucm-fix-typo-in-docs.patch
  0015-aplay-add-avail-delay-checks-to-test-position.patch
  0016-alsactl-daemon-read_pid_file-fix-the-returned-code-o.patch
  0017-alsactl-init-set_ctl_value-fix-bytes-parsing.patch
  0018-alsactl-init-parse-fix-possible-double-free.patch
  0019-alsaloop-fix-possible-memory-leak-in-create_loopback.patch
  0020-alsaloop-get_queued_playback_samples-simplify-code.patch
  0021-topology-fix-possible-double-free-in-load.patch
  0022-alsamixer-remove-dead-fcn-widget_handle_key-in-widge.patch
  0023-alsamixer-remove-unused-variable-y-in-display_scroll.patch
  0024-alsamixer-fix-shift-in-parse_words.patch
  0025-aplay-fix-the-test-position-test-for-playback-avail-.patch</changelog>
  <changelog author="tiwai@suse.de" date="1616068800">- Fix superfluous asound.state migration (bsc#1183672)</changelog>
  <changelog author="tiwai@suse.de" date="1619438400">- Suppress automatic update of alsa-info.sh (bsc#1185280):
  alsa-info-no-update-for-distro-script.patch</changelog>
  <changelog author="tiwai@suse.de" date="1623672000">- Update to alsa-utils 1.2.5:
  a major version up, including previous patches
  https://www.alsa-project.org/wiki/Changes_v1.2.4_v1.2.5
- Update to alsa-utils 1.2.5.1:
  a small bugfix release
  https://www.alsa-project.org/wiki/Changes_v1.2.5_v1.2.5.1
- Drop the obsoleted patches:
  0001-aplay-try-to-use-16-bit-format-to-increase-capture-q.patch
  0002-alsamixer-Fix-the-mixer-views-description-in-man-pag.patch
  0003-Add-Slovak-translation.patch
  0004-Add-Basque-translation.patch
  0006-aplay-cosmetic-code-fix-in-xrun.patch
  0007-aplay-fix-the-CPU-busy-loop-in-the-pause-handler.patch
  0008-alsa-info-Add-lsusb-and-stream-outputs.patch
  0010-alsactl-Fix-double-decrease-of-lock-timeout.patch
  0011-alsactl-Fix-race-at-creating-a-lock-file.patch
  0012-alsactl-Remove-asound.state-file-check-from-alsa-res.patch
  0013-aplay-add-test-code-for-snd_pcm_status-to-test-posit.patch
  0014-ucm-fix-typo-in-docs.patch
  0015-aplay-add-avail-delay-checks-to-test-position.patch
  0016-alsactl-daemon-read_pid_file-fix-the-returned-code-o.patch
  0017-alsactl-init-set_ctl_value-fix-bytes-parsing.patch
  0018-alsactl-init-parse-fix-possible-double-free.patch
  0019-alsaloop-fix-possible-memory-leak-in-create_loopback.patch
  0020-alsaloop-get_queued_playback_samples-simplify-code.patch
  0021-topology-fix-possible-double-free-in-load.patch
  0022-alsamixer-remove-dead-fcn-widget_handle_key-in-widge.patch
  0023-alsamixer-remove-unused-variable-y-in-display_scroll.patch
  0024-alsamixer-fix-shift-in-parse_words.patch
  0025-aplay-fix-the-test-position-test-for-playback-avail-.patch</changelog>
  <changelog author="Johannes Segitz &lt;jsegitz@suse.com&gt;" date="1627473600">- Added hardening to systemd service(s). Modified:
  * sound-extra.service</changelog>
  <changelog author="Johannes Segitz &lt;jsegitz@suse.com&gt;" date="1634299200">- Drop ProtectClock hardening, can cause issues if other device acceess is needed</changelog>
  <changelog author="tiwai@suse.de" date="1638792000">- Update to alsa-utils 1.2.6:
  various updates / fixes for alsactl, amidi, alsaloop, alsamixer,
  alsatplg, amixer, aplay and aseqnet.  Details are found in
    https://alsa-project.org/wiki/Changes_v1.2.5.1_v1.2.6#alsa-utils
- Update the download URL
- Add *.sig file for the tarball</changelog>
  <changelog author="tiwai@suse.de" date="1642766400">- Fix alsamixer color config regression:
  0001-alsamixer-Fix-regression-in-color-setup.patch</changelog>
  <changelog author="tiwai@suse.de" date="1643371200">- Fix the broken mouse support on alsamixer:
  0002-alsamixer-Revert-has_mouse-check.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1654084800">- Update to alsa-utils 1.2.7:
  Enhancement and fixes of alsactl, speaker-test cleanup,
  alsatplg enhancements, arecord ghost data fix, etc.
  For details see:
  https://www.alsa-project.org/wiki/Changes_v1.2.6.3_v1.2.7#alsa-utils
- Drop obsoleted patches:
  0001-alsamixer-Fix-regression-in-color-setup.patch
  0002-alsamixer-Revert-has_mouse-check.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1666699200">- Update to alsa-utils 1.2.8 (jsc#PED-850):
  automake update, minor alsactl, amixer and aplay fixes.
  https://www.alsa-project.org/wiki/Changes_v1.2.7.2_v1.2.8
- Add keyring</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1683547200">- Update to alsa-utils 1.2.9:
  BSD build fix, and various updates for alsactl, amidi, axfer,
  alsa-info.sh, alsaloop, alsatplg, alsaucm, aplay, abat.
  For details, see:
  https://www.alsa-project.org/wiki/Changes_v1.2.8_v1.2.9#alsa-utils</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1693828800">- Update to alsa-utils 1.2.10 (jsc#PED-6566):
  * MIDI 2.0 / UMP support for sequencer programs
  * nhlt: add nhlt-dmic-info utility
  * Build fixes and cleanups
  * speaker-test: allow large buffer and period time setup - up to 100 seconds
  * various topology fixes
  For details, see:
  https://www.alsa-project.org/wiki/Changes_v1.2.9_v1.2.10#alsa-utils
- Fix the builds with old gcc:
  0001-axfer-use-ATTRIBUTE_UNUSED-instead-remove-argument-n.patch
  0002-amidi-use-ATTRIBUTE_UNUSED-instead-remove-argument-n.patch
  0003-alsaloop-use-ATTRIBUTE_UNUSED-instead-remove-argumen.patch
  0004-bat-use-ATTRIBUTE_UNUSED-instead-remove-argument-nam.patch
  0005-seq-use-ATTRIBUTE_UNUSED-instead-remove-argument-nam.patch
  0006-alsaucm-use-ATTRIBUTE_UNUSED-instead-remove-argument.patch
  0007-topology-use-ATTRIBUTE_UNUSED-instead-remove-argumen.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1704715200">- Backport upstream fixes:
  buffer overflow fixes in aplay, segfault in aplaymidi, etc:
  0008-topology-include-locale.h.patch
  0009-nhlt-dmic-info.c-include-sys-types.h.patch
  0010-topology-pre-processor-Add-support-for-enum-controls.patch
  0011-configure.ac-fix-UMP-support-detection.patch
  0012-bat-really-skip-analysis-of-the-first-period-and-upd.patch
  0013-topology-add-include-for-ENABLE_NLS-on-musl.patch
  0014-nhlt-use-stdint.h-types.patch
  0015-Revert-nhlt-dmic-info.c-include-sys-types.h.patch
  0016-aplay-use-stdint.h-types-instead-u_int-u_short-u_cha.patch
  0017-alsa-restore.rules-use-devnode-instead-number-atribu.patch
  0018-nhlt-Revert-SSP_ANALOG-device_type-field.patch
  0019-alsactl-fix-potential-buffer-overwrite.patch
  0020-aplay-fix-buffer-overflow-and-tainted-format-string.patch
  0021-misc-fix-incorrect-usages-of-strerror.patch
  0022-aplay-Add-option-for-specifying-subformat.patch
  0023-aplay-allow-to-compile-with-older-alsa-lib-subformat.patch
  0024-aplay-log-pcm-status-before-reporting-a-fatal-error.patch
  0025-aplay-enable-timestamps-by-default.patch
  0026-aplay-status-dumps-are-called-only-in-verbose-mode.patch
  0027-aplaymidi-Set-event-completely-for-tempo-event.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1706875200">- Update to alsa-utils 1.2.11:
  * alsactl buffer overflow fix
  * alsatplg updates, NHLT ACPI parser updates
  * use smaller periods for speaker-test
  * add bandwidth-limited pink noise for speaker-test
  * aplay updates, including subformat extensions
  * compile warning fixes
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.10_v1.2.11#alsa-utils
- Drop obsoleted patches:
  0001-axfer-use-ATTRIBUTE_UNUSED-instead-remove-argument-n.patch
  0002-amidi-use-ATTRIBUTE_UNUSED-instead-remove-argument-n.patch
  0003-alsaloop-use-ATTRIBUTE_UNUSED-instead-remove-argumen.patch
  0004-bat-use-ATTRIBUTE_UNUSED-instead-remove-argument-nam.patch
  0005-seq-use-ATTRIBUTE_UNUSED-instead-remove-argument-nam.patch
  0006-alsaucm-use-ATTRIBUTE_UNUSED-instead-remove-argument.patch
  0007-topology-use-ATTRIBUTE_UNUSED-instead-remove-argumen.patch
  0008-topology-include-locale.h.patch
  0009-nhlt-dmic-info.c-include-sys-types.h.patch
  0010-topology-pre-processor-Add-support-for-enum-controls.patch
  0011-configure.ac-fix-UMP-support-detection.patch
  0012-bat-really-skip-analysis-of-the-first-period-and-upd.patch
  0013-topology-add-include-for-ENABLE_NLS-on-musl.patch
  0014-nhlt-use-stdint.h-types.patch
  0015-Revert-nhlt-dmic-info.c-include-sys-types.h.patch
  0016-aplay-use-stdint.h-types-instead-u_int-u_short-u_cha.patch
  0017-alsa-restore.rules-use-devnode-instead-number-atribu.patch
  0018-nhlt-Revert-SSP_ANALOG-device_type-field.patch
  0019-alsactl-fix-potential-buffer-overwrite.patch
  0020-aplay-fix-buffer-overflow-and-tainted-format-string.patch
  0021-misc-fix-incorrect-usages-of-strerror.patch
  0022-aplay-Add-option-for-specifying-subformat.patch
  0023-aplay-allow-to-compile-with-older-alsa-lib-subformat.patch
  0024-aplay-log-pcm-status-before-reporting-a-fatal-error.patch
  0025-aplay-enable-timestamps-by-default.patch
  0026-aplay-status-dumps-are-called-only-in-verbose-mode.patch
  0027-aplaymidi-Set-event-completely-for-tempo-event.patch</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1708430400">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Antonio Larrosa &lt;alarrosa@suse.com&gt;" date="1717070400">- Require tree which is used by alsa-info.sh (bsc#1225665)</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1718280000">- Update to alsa-utils 1.2.12:
  * alsactl: NULL pointer fix
  * alsa-info.sh: log SoundWire devices reported in ACPI
  * alsamixer: fix calculation in set_normalized_volume (overflow)
  * topology: nhlt fixes
  * aplay: fix S24_LE wav header
  * aseqdump: Add dump for UMP Utility and System messages
  * Addition of aseqsend
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.11_v1.2.12#alsa-utils</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1731412800">- Update to alsa-utils 1.2.13:
  * alsactl: add support for AMD ACP digital microphone
  * aplay: Print '=== PAUSE ===' only if it is supported
  * aplaymidi/arecordmidi: Allow to pass 0 to -u option, too
  * new aplaymidi2/arecordmidi2 for MIDI v2.0
  * aseqdump: improved UMP supports
  * various topology updates
  * aseqsend: improvement and UMP supports
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.12_v1.2.13#alsa-utils</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1731585600">- Fix alsactl restore error (bsc#1233353):
  0001-alsactl-90-alsa-restore.rules-fix-alsa_restore_go-st.patch</changelog>
</package>
<package pkgid="e3f829b882d74d59b5272ce170311b94261ed11e72fc3598c8bc98545f8fbcf8863fb652492d5e0ec104ccdf4ac4ac893a9d9c6ff9c9f8bb9728626b3e617f3c" name="alsa-utils-debugsource" arch="x86_64">
  <version epoch="0" ver="1.2.13" rel="2.0.2.1.sr20241103"/>
  <changelog author="tiwai@suse.de" date="1611230400">- Backport upstream fixes:
  various fixes in aplay, alsamixer, alsactl and alsaloop, updated
  translations, etc:
  0001-aplay-try-to-use-16-bit-format-to-increase-capture-q.patch
  0002-alsamixer-Fix-the-mixer-views-description-in-man-pag.patch
  0003-Add-Slovak-translation.patch
  0004-Add-Basque-translation.patch
  0006-aplay-cosmetic-code-fix-in-xrun.patch
  0007-aplay-fix-the-CPU-busy-loop-in-the-pause-handler.patch
  0008-alsa-info-Add-lsusb-and-stream-outputs.patch
  0013-aplay-add-test-code-for-snd_pcm_status-to-test-posit.patch
  0014-ucm-fix-typo-in-docs.patch
  0015-aplay-add-avail-delay-checks-to-test-position.patch
  0016-alsactl-daemon-read_pid_file-fix-the-returned-code-o.patch
  0017-alsactl-init-set_ctl_value-fix-bytes-parsing.patch
  0018-alsactl-init-parse-fix-possible-double-free.patch
  0019-alsaloop-fix-possible-memory-leak-in-create_loopback.patch
  0020-alsaloop-get_queued_playback_samples-simplify-code.patch
  0021-topology-fix-possible-double-free-in-load.patch
  0022-alsamixer-remove-dead-fcn-widget_handle_key-in-widge.patch
  0023-alsamixer-remove-unused-variable-y-in-display_scroll.patch
  0024-alsamixer-fix-shift-in-parse_words.patch
  0025-aplay-fix-the-test-position-test-for-playback-avail-.patch</changelog>
  <changelog author="tiwai@suse.de" date="1616068800">- Fix superfluous asound.state migration (bsc#1183672)</changelog>
  <changelog author="tiwai@suse.de" date="1619438400">- Suppress automatic update of alsa-info.sh (bsc#1185280):
  alsa-info-no-update-for-distro-script.patch</changelog>
  <changelog author="tiwai@suse.de" date="1623672000">- Update to alsa-utils 1.2.5:
  a major version up, including previous patches
  https://www.alsa-project.org/wiki/Changes_v1.2.4_v1.2.5
- Update to alsa-utils 1.2.5.1:
  a small bugfix release
  https://www.alsa-project.org/wiki/Changes_v1.2.5_v1.2.5.1
- Drop the obsoleted patches:
  0001-aplay-try-to-use-16-bit-format-to-increase-capture-q.patch
  0002-alsamixer-Fix-the-mixer-views-description-in-man-pag.patch
  0003-Add-Slovak-translation.patch
  0004-Add-Basque-translation.patch
  0006-aplay-cosmetic-code-fix-in-xrun.patch
  0007-aplay-fix-the-CPU-busy-loop-in-the-pause-handler.patch
  0008-alsa-info-Add-lsusb-and-stream-outputs.patch
  0010-alsactl-Fix-double-decrease-of-lock-timeout.patch
  0011-alsactl-Fix-race-at-creating-a-lock-file.patch
  0012-alsactl-Remove-asound.state-file-check-from-alsa-res.patch
  0013-aplay-add-test-code-for-snd_pcm_status-to-test-posit.patch
  0014-ucm-fix-typo-in-docs.patch
  0015-aplay-add-avail-delay-checks-to-test-position.patch
  0016-alsactl-daemon-read_pid_file-fix-the-returned-code-o.patch
  0017-alsactl-init-set_ctl_value-fix-bytes-parsing.patch
  0018-alsactl-init-parse-fix-possible-double-free.patch
  0019-alsaloop-fix-possible-memory-leak-in-create_loopback.patch
  0020-alsaloop-get_queued_playback_samples-simplify-code.patch
  0021-topology-fix-possible-double-free-in-load.patch
  0022-alsamixer-remove-dead-fcn-widget_handle_key-in-widge.patch
  0023-alsamixer-remove-unused-variable-y-in-display_scroll.patch
  0024-alsamixer-fix-shift-in-parse_words.patch
  0025-aplay-fix-the-test-position-test-for-playback-avail-.patch</changelog>
  <changelog author="Johannes Segitz &lt;jsegitz@suse.com&gt;" date="1627473600">- Added hardening to systemd service(s). Modified:
  * sound-extra.service</changelog>
  <changelog author="Johannes Segitz &lt;jsegitz@suse.com&gt;" date="1634299200">- Drop ProtectClock hardening, can cause issues if other device acceess is needed</changelog>
  <changelog author="tiwai@suse.de" date="1638792000">- Update to alsa-utils 1.2.6:
  various updates / fixes for alsactl, amidi, alsaloop, alsamixer,
  alsatplg, amixer, aplay and aseqnet.  Details are found in
    https://alsa-project.org/wiki/Changes_v1.2.5.1_v1.2.6#alsa-utils
- Update the download URL
- Add *.sig file for the tarball</changelog>
  <changelog author="tiwai@suse.de" date="1642766400">- Fix alsamixer color config regression:
  0001-alsamixer-Fix-regression-in-color-setup.patch</changelog>
  <changelog author="tiwai@suse.de" date="1643371200">- Fix the broken mouse support on alsamixer:
  0002-alsamixer-Revert-has_mouse-check.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1654084800">- Update to alsa-utils 1.2.7:
  Enhancement and fixes of alsactl, speaker-test cleanup,
  alsatplg enhancements, arecord ghost data fix, etc.
  For details see:
  https://www.alsa-project.org/wiki/Changes_v1.2.6.3_v1.2.7#alsa-utils
- Drop obsoleted patches:
  0001-alsamixer-Fix-regression-in-color-setup.patch
  0002-alsamixer-Revert-has_mouse-check.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1666699200">- Update to alsa-utils 1.2.8 (jsc#PED-850):
  automake update, minor alsactl, amixer and aplay fixes.
  https://www.alsa-project.org/wiki/Changes_v1.2.7.2_v1.2.8
- Add keyring</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1683547200">- Update to alsa-utils 1.2.9:
  BSD build fix, and various updates for alsactl, amidi, axfer,
  alsa-info.sh, alsaloop, alsatplg, alsaucm, aplay, abat.
  For details, see:
  https://www.alsa-project.org/wiki/Changes_v1.2.8_v1.2.9#alsa-utils</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1693828800">- Update to alsa-utils 1.2.10 (jsc#PED-6566):
  * MIDI 2.0 / UMP support for sequencer programs
  * nhlt: add nhlt-dmic-info utility
  * Build fixes and cleanups
  * speaker-test: allow large buffer and period time setup - up to 100 seconds
  * various topology fixes
  For details, see:
  https://www.alsa-project.org/wiki/Changes_v1.2.9_v1.2.10#alsa-utils
- Fix the builds with old gcc:
  0001-axfer-use-ATTRIBUTE_UNUSED-instead-remove-argument-n.patch
  0002-amidi-use-ATTRIBUTE_UNUSED-instead-remove-argument-n.patch
  0003-alsaloop-use-ATTRIBUTE_UNUSED-instead-remove-argumen.patch
  0004-bat-use-ATTRIBUTE_UNUSED-instead-remove-argument-nam.patch
  0005-seq-use-ATTRIBUTE_UNUSED-instead-remove-argument-nam.patch
  0006-alsaucm-use-ATTRIBUTE_UNUSED-instead-remove-argument.patch
  0007-topology-use-ATTRIBUTE_UNUSED-instead-remove-argumen.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1704715200">- Backport upstream fixes:
  buffer overflow fixes in aplay, segfault in aplaymidi, etc:
  0008-topology-include-locale.h.patch
  0009-nhlt-dmic-info.c-include-sys-types.h.patch
  0010-topology-pre-processor-Add-support-for-enum-controls.patch
  0011-configure.ac-fix-UMP-support-detection.patch
  0012-bat-really-skip-analysis-of-the-first-period-and-upd.patch
  0013-topology-add-include-for-ENABLE_NLS-on-musl.patch
  0014-nhlt-use-stdint.h-types.patch
  0015-Revert-nhlt-dmic-info.c-include-sys-types.h.patch
  0016-aplay-use-stdint.h-types-instead-u_int-u_short-u_cha.patch
  0017-alsa-restore.rules-use-devnode-instead-number-atribu.patch
  0018-nhlt-Revert-SSP_ANALOG-device_type-field.patch
  0019-alsactl-fix-potential-buffer-overwrite.patch
  0020-aplay-fix-buffer-overflow-and-tainted-format-string.patch
  0021-misc-fix-incorrect-usages-of-strerror.patch
  0022-aplay-Add-option-for-specifying-subformat.patch
  0023-aplay-allow-to-compile-with-older-alsa-lib-subformat.patch
  0024-aplay-log-pcm-status-before-reporting-a-fatal-error.patch
  0025-aplay-enable-timestamps-by-default.patch
  0026-aplay-status-dumps-are-called-only-in-verbose-mode.patch
  0027-aplaymidi-Set-event-completely-for-tempo-event.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1706875200">- Update to alsa-utils 1.2.11:
  * alsactl buffer overflow fix
  * alsatplg updates, NHLT ACPI parser updates
  * use smaller periods for speaker-test
  * add bandwidth-limited pink noise for speaker-test
  * aplay updates, including subformat extensions
  * compile warning fixes
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.10_v1.2.11#alsa-utils
- Drop obsoleted patches:
  0001-axfer-use-ATTRIBUTE_UNUSED-instead-remove-argument-n.patch
  0002-amidi-use-ATTRIBUTE_UNUSED-instead-remove-argument-n.patch
  0003-alsaloop-use-ATTRIBUTE_UNUSED-instead-remove-argumen.patch
  0004-bat-use-ATTRIBUTE_UNUSED-instead-remove-argument-nam.patch
  0005-seq-use-ATTRIBUTE_UNUSED-instead-remove-argument-nam.patch
  0006-alsaucm-use-ATTRIBUTE_UNUSED-instead-remove-argument.patch
  0007-topology-use-ATTRIBUTE_UNUSED-instead-remove-argumen.patch
  0008-topology-include-locale.h.patch
  0009-nhlt-dmic-info.c-include-sys-types.h.patch
  0010-topology-pre-processor-Add-support-for-enum-controls.patch
  0011-configure.ac-fix-UMP-support-detection.patch
  0012-bat-really-skip-analysis-of-the-first-period-and-upd.patch
  0013-topology-add-include-for-ENABLE_NLS-on-musl.patch
  0014-nhlt-use-stdint.h-types.patch
  0015-Revert-nhlt-dmic-info.c-include-sys-types.h.patch
  0016-aplay-use-stdint.h-types-instead-u_int-u_short-u_cha.patch
  0017-alsa-restore.rules-use-devnode-instead-number-atribu.patch
  0018-nhlt-Revert-SSP_ANALOG-device_type-field.patch
  0019-alsactl-fix-potential-buffer-overwrite.patch
  0020-aplay-fix-buffer-overflow-and-tainted-format-string.patch
  0021-misc-fix-incorrect-usages-of-strerror.patch
  0022-aplay-Add-option-for-specifying-subformat.patch
  0023-aplay-allow-to-compile-with-older-alsa-lib-subformat.patch
  0024-aplay-log-pcm-status-before-reporting-a-fatal-error.patch
  0025-aplay-enable-timestamps-by-default.patch
  0026-aplay-status-dumps-are-called-only-in-verbose-mode.patch
  0027-aplaymidi-Set-event-completely-for-tempo-event.patch</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1708430400">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Antonio Larrosa &lt;alarrosa@suse.com&gt;" date="1717070400">- Require tree which is used by alsa-info.sh (bsc#1225665)</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1718280000">- Update to alsa-utils 1.2.12:
  * alsactl: NULL pointer fix
  * alsa-info.sh: log SoundWire devices reported in ACPI
  * alsamixer: fix calculation in set_normalized_volume (overflow)
  * topology: nhlt fixes
  * aplay: fix S24_LE wav header
  * aseqdump: Add dump for UMP Utility and System messages
  * Addition of aseqsend
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.11_v1.2.12#alsa-utils</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1731412800">- Update to alsa-utils 1.2.13:
  * alsactl: add support for AMD ACP digital microphone
  * aplay: Print '=== PAUSE ===' only if it is supported
  * aplaymidi/arecordmidi: Allow to pass 0 to -u option, too
  * new aplaymidi2/arecordmidi2 for MIDI v2.0
  * aseqdump: improved UMP supports
  * various topology updates
  * aseqsend: improvement and UMP supports
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.12_v1.2.13#alsa-utils</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1731585600">- Fix alsactl restore error (bsc#1233353):
  0001-alsactl-90-alsa-restore.rules-fix-alsa_restore_go-st.patch</changelog>
</package>
<package pkgid="438861420bdd88709f0ee2dfe8eb76fe0b1101915654724b3f4ba2e143b683f698e19a0912d3db2422e19fd05c2b38960fe61bca9a2733fabe90bfc11a0a5ce4" name="alsa-utils-debugsource" arch="i586">
  <version epoch="0" ver="1.2.13" rel="3.0.4.1.sr20241103"/>
  <changelog author="tiwai@suse.de" date="1616068800">- Fix superfluous asound.state migration (bsc#1183672)</changelog>
  <changelog author="tiwai@suse.de" date="1619438400">- Suppress automatic update of alsa-info.sh (bsc#1185280):
  alsa-info-no-update-for-distro-script.patch</changelog>
  <changelog author="tiwai@suse.de" date="1623672000">- Update to alsa-utils 1.2.5:
  a major version up, including previous patches
  https://www.alsa-project.org/wiki/Changes_v1.2.4_v1.2.5
- Update to alsa-utils 1.2.5.1:
  a small bugfix release
  https://www.alsa-project.org/wiki/Changes_v1.2.5_v1.2.5.1
- Drop the obsoleted patches:
  0001-aplay-try-to-use-16-bit-format-to-increase-capture-q.patch
  0002-alsamixer-Fix-the-mixer-views-description-in-man-pag.patch
  0003-Add-Slovak-translation.patch
  0004-Add-Basque-translation.patch
  0006-aplay-cosmetic-code-fix-in-xrun.patch
  0007-aplay-fix-the-CPU-busy-loop-in-the-pause-handler.patch
  0008-alsa-info-Add-lsusb-and-stream-outputs.patch
  0010-alsactl-Fix-double-decrease-of-lock-timeout.patch
  0011-alsactl-Fix-race-at-creating-a-lock-file.patch
  0012-alsactl-Remove-asound.state-file-check-from-alsa-res.patch
  0013-aplay-add-test-code-for-snd_pcm_status-to-test-posit.patch
  0014-ucm-fix-typo-in-docs.patch
  0015-aplay-add-avail-delay-checks-to-test-position.patch
  0016-alsactl-daemon-read_pid_file-fix-the-returned-code-o.patch
  0017-alsactl-init-set_ctl_value-fix-bytes-parsing.patch
  0018-alsactl-init-parse-fix-possible-double-free.patch
  0019-alsaloop-fix-possible-memory-leak-in-create_loopback.patch
  0020-alsaloop-get_queued_playback_samples-simplify-code.patch
  0021-topology-fix-possible-double-free-in-load.patch
  0022-alsamixer-remove-dead-fcn-widget_handle_key-in-widge.patch
  0023-alsamixer-remove-unused-variable-y-in-display_scroll.patch
  0024-alsamixer-fix-shift-in-parse_words.patch
  0025-aplay-fix-the-test-position-test-for-playback-avail-.patch</changelog>
  <changelog author="Johannes Segitz &lt;jsegitz@suse.com&gt;" date="1627473600">- Added hardening to systemd service(s). Modified:
  * sound-extra.service</changelog>
  <changelog author="Johannes Segitz &lt;jsegitz@suse.com&gt;" date="1634299200">- Drop ProtectClock hardening, can cause issues if other device acceess is needed</changelog>
  <changelog author="tiwai@suse.de" date="1638792000">- Update to alsa-utils 1.2.6:
  various updates / fixes for alsactl, amidi, alsaloop, alsamixer,
  alsatplg, amixer, aplay and aseqnet.  Details are found in
    https://alsa-project.org/wiki/Changes_v1.2.5.1_v1.2.6#alsa-utils
- Update the download URL
- Add *.sig file for the tarball</changelog>
  <changelog author="tiwai@suse.de" date="1642766400">- Fix alsamixer color config regression:
  0001-alsamixer-Fix-regression-in-color-setup.patch</changelog>
  <changelog author="tiwai@suse.de" date="1643371200">- Fix the broken mouse support on alsamixer:
  0002-alsamixer-Revert-has_mouse-check.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1654084800">- Update to alsa-utils 1.2.7:
  Enhancement and fixes of alsactl, speaker-test cleanup,
  alsatplg enhancements, arecord ghost data fix, etc.
  For details see:
  https://www.alsa-project.org/wiki/Changes_v1.2.6.3_v1.2.7#alsa-utils
- Drop obsoleted patches:
  0001-alsamixer-Fix-regression-in-color-setup.patch
  0002-alsamixer-Revert-has_mouse-check.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1666699200">- Update to alsa-utils 1.2.8 (jsc#PED-850):
  automake update, minor alsactl, amixer and aplay fixes.
  https://www.alsa-project.org/wiki/Changes_v1.2.7.2_v1.2.8
- Add keyring</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1683547200">- Update to alsa-utils 1.2.9:
  BSD build fix, and various updates for alsactl, amidi, axfer,
  alsa-info.sh, alsaloop, alsatplg, alsaucm, aplay, abat.
  For details, see:
  https://www.alsa-project.org/wiki/Changes_v1.2.8_v1.2.9#alsa-utils</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1693828800">- Update to alsa-utils 1.2.10 (jsc#PED-6566):
  * MIDI 2.0 / UMP support for sequencer programs
  * nhlt: add nhlt-dmic-info utility
  * Build fixes and cleanups
  * speaker-test: allow large buffer and period time setup - up to 100 seconds
  * various topology fixes
  For details, see:
  https://www.alsa-project.org/wiki/Changes_v1.2.9_v1.2.10#alsa-utils
- Fix the builds with old gcc:
  0001-axfer-use-ATTRIBUTE_UNUSED-instead-remove-argument-n.patch
  0002-amidi-use-ATTRIBUTE_UNUSED-instead-remove-argument-n.patch
  0003-alsaloop-use-ATTRIBUTE_UNUSED-instead-remove-argumen.patch
  0004-bat-use-ATTRIBUTE_UNUSED-instead-remove-argument-nam.patch
  0005-seq-use-ATTRIBUTE_UNUSED-instead-remove-argument-nam.patch
  0006-alsaucm-use-ATTRIBUTE_UNUSED-instead-remove-argument.patch
  0007-topology-use-ATTRIBUTE_UNUSED-instead-remove-argumen.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1704715200">- Backport upstream fixes:
  buffer overflow fixes in aplay, segfault in aplaymidi, etc:
  0008-topology-include-locale.h.patch
  0009-nhlt-dmic-info.c-include-sys-types.h.patch
  0010-topology-pre-processor-Add-support-for-enum-controls.patch
  0011-configure.ac-fix-UMP-support-detection.patch
  0012-bat-really-skip-analysis-of-the-first-period-and-upd.patch
  0013-topology-add-include-for-ENABLE_NLS-on-musl.patch
  0014-nhlt-use-stdint.h-types.patch
  0015-Revert-nhlt-dmic-info.c-include-sys-types.h.patch
  0016-aplay-use-stdint.h-types-instead-u_int-u_short-u_cha.patch
  0017-alsa-restore.rules-use-devnode-instead-number-atribu.patch
  0018-nhlt-Revert-SSP_ANALOG-device_type-field.patch
  0019-alsactl-fix-potential-buffer-overwrite.patch
  0020-aplay-fix-buffer-overflow-and-tainted-format-string.patch
  0021-misc-fix-incorrect-usages-of-strerror.patch
  0022-aplay-Add-option-for-specifying-subformat.patch
  0023-aplay-allow-to-compile-with-older-alsa-lib-subformat.patch
  0024-aplay-log-pcm-status-before-reporting-a-fatal-error.patch
  0025-aplay-enable-timestamps-by-default.patch
  0026-aplay-status-dumps-are-called-only-in-verbose-mode.patch
  0027-aplaymidi-Set-event-completely-for-tempo-event.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1706875200">- Update to alsa-utils 1.2.11:
  * alsactl buffer overflow fix
  * alsatplg updates, NHLT ACPI parser updates
  * use smaller periods for speaker-test
  * add bandwidth-limited pink noise for speaker-test
  * aplay updates, including subformat extensions
  * compile warning fixes
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.10_v1.2.11#alsa-utils
- Drop obsoleted patches:
  0001-axfer-use-ATTRIBUTE_UNUSED-instead-remove-argument-n.patch
  0002-amidi-use-ATTRIBUTE_UNUSED-instead-remove-argument-n.patch
  0003-alsaloop-use-ATTRIBUTE_UNUSED-instead-remove-argumen.patch
  0004-bat-use-ATTRIBUTE_UNUSED-instead-remove-argument-nam.patch
  0005-seq-use-ATTRIBUTE_UNUSED-instead-remove-argument-nam.patch
  0006-alsaucm-use-ATTRIBUTE_UNUSED-instead-remove-argument.patch
  0007-topology-use-ATTRIBUTE_UNUSED-instead-remove-argumen.patch
  0008-topology-include-locale.h.patch
  0009-nhlt-dmic-info.c-include-sys-types.h.patch
  0010-topology-pre-processor-Add-support-for-enum-controls.patch
  0011-configure.ac-fix-UMP-support-detection.patch
  0012-bat-really-skip-analysis-of-the-first-period-and-upd.patch
  0013-topology-add-include-for-ENABLE_NLS-on-musl.patch
  0014-nhlt-use-stdint.h-types.patch
  0015-Revert-nhlt-dmic-info.c-include-sys-types.h.patch
  0016-aplay-use-stdint.h-types-instead-u_int-u_short-u_cha.patch
  0017-alsa-restore.rules-use-devnode-instead-number-atribu.patch
  0018-nhlt-Revert-SSP_ANALOG-device_type-field.patch
  0019-alsactl-fix-potential-buffer-overwrite.patch
  0020-aplay-fix-buffer-overflow-and-tainted-format-string.patch
  0021-misc-fix-incorrect-usages-of-strerror.patch
  0022-aplay-Add-option-for-specifying-subformat.patch
  0023-aplay-allow-to-compile-with-older-alsa-lib-subformat.patch
  0024-aplay-log-pcm-status-before-reporting-a-fatal-error.patch
  0025-aplay-enable-timestamps-by-default.patch
  0026-aplay-status-dumps-are-called-only-in-verbose-mode.patch
  0027-aplaymidi-Set-event-completely-for-tempo-event.patch</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1708430400">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Antonio Larrosa &lt;alarrosa@suse.com&gt;" date="1717070400">- Require tree which is used by alsa-info.sh (bsc#1225665)</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1718280000">- Update to alsa-utils 1.2.12:
  * alsactl: NULL pointer fix
  * alsa-info.sh: log SoundWire devices reported in ACPI
  * alsamixer: fix calculation in set_normalized_volume (overflow)
  * topology: nhlt fixes
  * aplay: fix S24_LE wav header
  * aseqdump: Add dump for UMP Utility and System messages
  * Addition of aseqsend
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.11_v1.2.12#alsa-utils</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1731412800">- Update to alsa-utils 1.2.13:
  * alsactl: add support for AMD ACP digital microphone
  * aplay: Print '=== PAUSE ===' only if it is supported
  * aplaymidi/arecordmidi: Allow to pass 0 to -u option, too
  * new aplaymidi2/arecordmidi2 for MIDI v2.0
  * aseqdump: improved UMP supports
  * various topology updates
  * aseqsend: improvement and UMP supports
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.12_v1.2.13#alsa-utils</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1731585600">- Fix alsactl restore error (bsc#1233353):
  0001-alsactl-90-alsa-restore.rules-fix-alsa_restore_go-st.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1732104000">- Yet another fix for alsactl for AMD acp dmic:
  0002-alsactl-90-alsa-restore.rules-fix-AMD-acp-pdm-mach-l.patch</changelog>
</package>
<package pkgid="f46fce2fdc951ec15037f11ee85a9958371c8abc6d30f59b177eb670cd7d3892669dae3fa68e410f49d29a85449bae31a018a5491e4d8a2b99197edb640a0b2a" name="alsa-utils-debugsource" arch="x86_64">
  <version epoch="0" ver="1.2.13" rel="3.0.4.1.sr20241103"/>
  <changelog author="tiwai@suse.de" date="1616068800">- Fix superfluous asound.state migration (bsc#1183672)</changelog>
  <changelog author="tiwai@suse.de" date="1619438400">- Suppress automatic update of alsa-info.sh (bsc#1185280):
  alsa-info-no-update-for-distro-script.patch</changelog>
  <changelog author="tiwai@suse.de" date="1623672000">- Update to alsa-utils 1.2.5:
  a major version up, including previous patches
  https://www.alsa-project.org/wiki/Changes_v1.2.4_v1.2.5
- Update to alsa-utils 1.2.5.1:
  a small bugfix release
  https://www.alsa-project.org/wiki/Changes_v1.2.5_v1.2.5.1
- Drop the obsoleted patches:
  0001-aplay-try-to-use-16-bit-format-to-increase-capture-q.patch
  0002-alsamixer-Fix-the-mixer-views-description-in-man-pag.patch
  0003-Add-Slovak-translation.patch
  0004-Add-Basque-translation.patch
  0006-aplay-cosmetic-code-fix-in-xrun.patch
  0007-aplay-fix-the-CPU-busy-loop-in-the-pause-handler.patch
  0008-alsa-info-Add-lsusb-and-stream-outputs.patch
  0010-alsactl-Fix-double-decrease-of-lock-timeout.patch
  0011-alsactl-Fix-race-at-creating-a-lock-file.patch
  0012-alsactl-Remove-asound.state-file-check-from-alsa-res.patch
  0013-aplay-add-test-code-for-snd_pcm_status-to-test-posit.patch
  0014-ucm-fix-typo-in-docs.patch
  0015-aplay-add-avail-delay-checks-to-test-position.patch
  0016-alsactl-daemon-read_pid_file-fix-the-returned-code-o.patch
  0017-alsactl-init-set_ctl_value-fix-bytes-parsing.patch
  0018-alsactl-init-parse-fix-possible-double-free.patch
  0019-alsaloop-fix-possible-memory-leak-in-create_loopback.patch
  0020-alsaloop-get_queued_playback_samples-simplify-code.patch
  0021-topology-fix-possible-double-free-in-load.patch
  0022-alsamixer-remove-dead-fcn-widget_handle_key-in-widge.patch
  0023-alsamixer-remove-unused-variable-y-in-display_scroll.patch
  0024-alsamixer-fix-shift-in-parse_words.patch
  0025-aplay-fix-the-test-position-test-for-playback-avail-.patch</changelog>
  <changelog author="Johannes Segitz &lt;jsegitz@suse.com&gt;" date="1627473600">- Added hardening to systemd service(s). Modified:
  * sound-extra.service</changelog>
  <changelog author="Johannes Segitz &lt;jsegitz@suse.com&gt;" date="1634299200">- Drop ProtectClock hardening, can cause issues if other device acceess is needed</changelog>
  <changelog author="tiwai@suse.de" date="1638792000">- Update to alsa-utils 1.2.6:
  various updates / fixes for alsactl, amidi, alsaloop, alsamixer,
  alsatplg, amixer, aplay and aseqnet.  Details are found in
    https://alsa-project.org/wiki/Changes_v1.2.5.1_v1.2.6#alsa-utils
- Update the download URL
- Add *.sig file for the tarball</changelog>
  <changelog author="tiwai@suse.de" date="1642766400">- Fix alsamixer color config regression:
  0001-alsamixer-Fix-regression-in-color-setup.patch</changelog>
  <changelog author="tiwai@suse.de" date="1643371200">- Fix the broken mouse support on alsamixer:
  0002-alsamixer-Revert-has_mouse-check.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1654084800">- Update to alsa-utils 1.2.7:
  Enhancement and fixes of alsactl, speaker-test cleanup,
  alsatplg enhancements, arecord ghost data fix, etc.
  For details see:
  https://www.alsa-project.org/wiki/Changes_v1.2.6.3_v1.2.7#alsa-utils
- Drop obsoleted patches:
  0001-alsamixer-Fix-regression-in-color-setup.patch
  0002-alsamixer-Revert-has_mouse-check.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1666699200">- Update to alsa-utils 1.2.8 (jsc#PED-850):
  automake update, minor alsactl, amixer and aplay fixes.
  https://www.alsa-project.org/wiki/Changes_v1.2.7.2_v1.2.8
- Add keyring</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1683547200">- Update to alsa-utils 1.2.9:
  BSD build fix, and various updates for alsactl, amidi, axfer,
  alsa-info.sh, alsaloop, alsatplg, alsaucm, aplay, abat.
  For details, see:
  https://www.alsa-project.org/wiki/Changes_v1.2.8_v1.2.9#alsa-utils</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1693828800">- Update to alsa-utils 1.2.10 (jsc#PED-6566):
  * MIDI 2.0 / UMP support for sequencer programs
  * nhlt: add nhlt-dmic-info utility
  * Build fixes and cleanups
  * speaker-test: allow large buffer and period time setup - up to 100 seconds
  * various topology fixes
  For details, see:
  https://www.alsa-project.org/wiki/Changes_v1.2.9_v1.2.10#alsa-utils
- Fix the builds with old gcc:
  0001-axfer-use-ATTRIBUTE_UNUSED-instead-remove-argument-n.patch
  0002-amidi-use-ATTRIBUTE_UNUSED-instead-remove-argument-n.patch
  0003-alsaloop-use-ATTRIBUTE_UNUSED-instead-remove-argumen.patch
  0004-bat-use-ATTRIBUTE_UNUSED-instead-remove-argument-nam.patch
  0005-seq-use-ATTRIBUTE_UNUSED-instead-remove-argument-nam.patch
  0006-alsaucm-use-ATTRIBUTE_UNUSED-instead-remove-argument.patch
  0007-topology-use-ATTRIBUTE_UNUSED-instead-remove-argumen.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1704715200">- Backport upstream fixes:
  buffer overflow fixes in aplay, segfault in aplaymidi, etc:
  0008-topology-include-locale.h.patch
  0009-nhlt-dmic-info.c-include-sys-types.h.patch
  0010-topology-pre-processor-Add-support-for-enum-controls.patch
  0011-configure.ac-fix-UMP-support-detection.patch
  0012-bat-really-skip-analysis-of-the-first-period-and-upd.patch
  0013-topology-add-include-for-ENABLE_NLS-on-musl.patch
  0014-nhlt-use-stdint.h-types.patch
  0015-Revert-nhlt-dmic-info.c-include-sys-types.h.patch
  0016-aplay-use-stdint.h-types-instead-u_int-u_short-u_cha.patch
  0017-alsa-restore.rules-use-devnode-instead-number-atribu.patch
  0018-nhlt-Revert-SSP_ANALOG-device_type-field.patch
  0019-alsactl-fix-potential-buffer-overwrite.patch
  0020-aplay-fix-buffer-overflow-and-tainted-format-string.patch
  0021-misc-fix-incorrect-usages-of-strerror.patch
  0022-aplay-Add-option-for-specifying-subformat.patch
  0023-aplay-allow-to-compile-with-older-alsa-lib-subformat.patch
  0024-aplay-log-pcm-status-before-reporting-a-fatal-error.patch
  0025-aplay-enable-timestamps-by-default.patch
  0026-aplay-status-dumps-are-called-only-in-verbose-mode.patch
  0027-aplaymidi-Set-event-completely-for-tempo-event.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1706875200">- Update to alsa-utils 1.2.11:
  * alsactl buffer overflow fix
  * alsatplg updates, NHLT ACPI parser updates
  * use smaller periods for speaker-test
  * add bandwidth-limited pink noise for speaker-test
  * aplay updates, including subformat extensions
  * compile warning fixes
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.10_v1.2.11#alsa-utils
- Drop obsoleted patches:
  0001-axfer-use-ATTRIBUTE_UNUSED-instead-remove-argument-n.patch
  0002-amidi-use-ATTRIBUTE_UNUSED-instead-remove-argument-n.patch
  0003-alsaloop-use-ATTRIBUTE_UNUSED-instead-remove-argumen.patch
  0004-bat-use-ATTRIBUTE_UNUSED-instead-remove-argument-nam.patch
  0005-seq-use-ATTRIBUTE_UNUSED-instead-remove-argument-nam.patch
  0006-alsaucm-use-ATTRIBUTE_UNUSED-instead-remove-argument.patch
  0007-topology-use-ATTRIBUTE_UNUSED-instead-remove-argumen.patch
  0008-topology-include-locale.h.patch
  0009-nhlt-dmic-info.c-include-sys-types.h.patch
  0010-topology-pre-processor-Add-support-for-enum-controls.patch
  0011-configure.ac-fix-UMP-support-detection.patch
  0012-bat-really-skip-analysis-of-the-first-period-and-upd.patch
  0013-topology-add-include-for-ENABLE_NLS-on-musl.patch
  0014-nhlt-use-stdint.h-types.patch
  0015-Revert-nhlt-dmic-info.c-include-sys-types.h.patch
  0016-aplay-use-stdint.h-types-instead-u_int-u_short-u_cha.patch
  0017-alsa-restore.rules-use-devnode-instead-number-atribu.patch
  0018-nhlt-Revert-SSP_ANALOG-device_type-field.patch
  0019-alsactl-fix-potential-buffer-overwrite.patch
  0020-aplay-fix-buffer-overflow-and-tainted-format-string.patch
  0021-misc-fix-incorrect-usages-of-strerror.patch
  0022-aplay-Add-option-for-specifying-subformat.patch
  0023-aplay-allow-to-compile-with-older-alsa-lib-subformat.patch
  0024-aplay-log-pcm-status-before-reporting-a-fatal-error.patch
  0025-aplay-enable-timestamps-by-default.patch
  0026-aplay-status-dumps-are-called-only-in-verbose-mode.patch
  0027-aplaymidi-Set-event-completely-for-tempo-event.patch</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1708430400">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Antonio Larrosa &lt;alarrosa@suse.com&gt;" date="1717070400">- Require tree which is used by alsa-info.sh (bsc#1225665)</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1718280000">- Update to alsa-utils 1.2.12:
  * alsactl: NULL pointer fix
  * alsa-info.sh: log SoundWire devices reported in ACPI
  * alsamixer: fix calculation in set_normalized_volume (overflow)
  * topology: nhlt fixes
  * aplay: fix S24_LE wav header
  * aseqdump: Add dump for UMP Utility and System messages
  * Addition of aseqsend
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.11_v1.2.12#alsa-utils</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1731412800">- Update to alsa-utils 1.2.13:
  * alsactl: add support for AMD ACP digital microphone
  * aplay: Print '=== PAUSE ===' only if it is supported
  * aplaymidi/arecordmidi: Allow to pass 0 to -u option, too
  * new aplaymidi2/arecordmidi2 for MIDI v2.0
  * aseqdump: improved UMP supports
  * various topology updates
  * aseqsend: improvement and UMP supports
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.12_v1.2.13#alsa-utils</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1731585600">- Fix alsactl restore error (bsc#1233353):
  0001-alsactl-90-alsa-restore.rules-fix-alsa_restore_go-st.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1732104000">- Yet another fix for alsactl for AMD acp dmic:
  0002-alsactl-90-alsa-restore.rules-fix-AMD-acp-pdm-mach-l.patch</changelog>
</package>
<package pkgid="f9e40347c0021efab636d03c9320dd617719c4f0cbd7059d4de3556d923711203180e034d0629105add0ab024432a8f66773370f423fbb19b216804039860e3f" name="alsabat" arch="i586">
  <version epoch="0" ver="1.2.13" rel="2.0.2.1.sr20241103"/>
  <changelog author="tiwai@suse.de" date="1611230400">- Backport upstream fixes:
  various fixes in aplay, alsamixer, alsactl and alsaloop, updated
  translations, etc:
  0001-aplay-try-to-use-16-bit-format-to-increase-capture-q.patch
  0002-alsamixer-Fix-the-mixer-views-description-in-man-pag.patch
  0003-Add-Slovak-translation.patch
  0004-Add-Basque-translation.patch
  0006-aplay-cosmetic-code-fix-in-xrun.patch
  0007-aplay-fix-the-CPU-busy-loop-in-the-pause-handler.patch
  0008-alsa-info-Add-lsusb-and-stream-outputs.patch
  0013-aplay-add-test-code-for-snd_pcm_status-to-test-posit.patch
  0014-ucm-fix-typo-in-docs.patch
  0015-aplay-add-avail-delay-checks-to-test-position.patch
  0016-alsactl-daemon-read_pid_file-fix-the-returned-code-o.patch
  0017-alsactl-init-set_ctl_value-fix-bytes-parsing.patch
  0018-alsactl-init-parse-fix-possible-double-free.patch
  0019-alsaloop-fix-possible-memory-leak-in-create_loopback.patch
  0020-alsaloop-get_queued_playback_samples-simplify-code.patch
  0021-topology-fix-possible-double-free-in-load.patch
  0022-alsamixer-remove-dead-fcn-widget_handle_key-in-widge.patch
  0023-alsamixer-remove-unused-variable-y-in-display_scroll.patch
  0024-alsamixer-fix-shift-in-parse_words.patch
  0025-aplay-fix-the-test-position-test-for-playback-avail-.patch</changelog>
  <changelog author="tiwai@suse.de" date="1616068800">- Fix superfluous asound.state migration (bsc#1183672)</changelog>
  <changelog author="tiwai@suse.de" date="1619438400">- Suppress automatic update of alsa-info.sh (bsc#1185280):
  alsa-info-no-update-for-distro-script.patch</changelog>
  <changelog author="tiwai@suse.de" date="1623672000">- Update to alsa-utils 1.2.5:
  a major version up, including previous patches
  https://www.alsa-project.org/wiki/Changes_v1.2.4_v1.2.5
- Update to alsa-utils 1.2.5.1:
  a small bugfix release
  https://www.alsa-project.org/wiki/Changes_v1.2.5_v1.2.5.1
- Drop the obsoleted patches:
  0001-aplay-try-to-use-16-bit-format-to-increase-capture-q.patch
  0002-alsamixer-Fix-the-mixer-views-description-in-man-pag.patch
  0003-Add-Slovak-translation.patch
  0004-Add-Basque-translation.patch
  0006-aplay-cosmetic-code-fix-in-xrun.patch
  0007-aplay-fix-the-CPU-busy-loop-in-the-pause-handler.patch
  0008-alsa-info-Add-lsusb-and-stream-outputs.patch
  0010-alsactl-Fix-double-decrease-of-lock-timeout.patch
  0011-alsactl-Fix-race-at-creating-a-lock-file.patch
  0012-alsactl-Remove-asound.state-file-check-from-alsa-res.patch
  0013-aplay-add-test-code-for-snd_pcm_status-to-test-posit.patch
  0014-ucm-fix-typo-in-docs.patch
  0015-aplay-add-avail-delay-checks-to-test-position.patch
  0016-alsactl-daemon-read_pid_file-fix-the-returned-code-o.patch
  0017-alsactl-init-set_ctl_value-fix-bytes-parsing.patch
  0018-alsactl-init-parse-fix-possible-double-free.patch
  0019-alsaloop-fix-possible-memory-leak-in-create_loopback.patch
  0020-alsaloop-get_queued_playback_samples-simplify-code.patch
  0021-topology-fix-possible-double-free-in-load.patch
  0022-alsamixer-remove-dead-fcn-widget_handle_key-in-widge.patch
  0023-alsamixer-remove-unused-variable-y-in-display_scroll.patch
  0024-alsamixer-fix-shift-in-parse_words.patch
  0025-aplay-fix-the-test-position-test-for-playback-avail-.patch</changelog>
  <changelog author="Johannes Segitz &lt;jsegitz@suse.com&gt;" date="1627473600">- Added hardening to systemd service(s). Modified:
  * sound-extra.service</changelog>
  <changelog author="Johannes Segitz &lt;jsegitz@suse.com&gt;" date="1634299200">- Drop ProtectClock hardening, can cause issues if other device acceess is needed</changelog>
  <changelog author="tiwai@suse.de" date="1638792000">- Update to alsa-utils 1.2.6:
  various updates / fixes for alsactl, amidi, alsaloop, alsamixer,
  alsatplg, amixer, aplay and aseqnet.  Details are found in
    https://alsa-project.org/wiki/Changes_v1.2.5.1_v1.2.6#alsa-utils
- Update the download URL
- Add *.sig file for the tarball</changelog>
  <changelog author="tiwai@suse.de" date="1642766400">- Fix alsamixer color config regression:
  0001-alsamixer-Fix-regression-in-color-setup.patch</changelog>
  <changelog author="tiwai@suse.de" date="1643371200">- Fix the broken mouse support on alsamixer:
  0002-alsamixer-Revert-has_mouse-check.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1654084800">- Update to alsa-utils 1.2.7:
  Enhancement and fixes of alsactl, speaker-test cleanup,
  alsatplg enhancements, arecord ghost data fix, etc.
  For details see:
  https://www.alsa-project.org/wiki/Changes_v1.2.6.3_v1.2.7#alsa-utils
- Drop obsoleted patches:
  0001-alsamixer-Fix-regression-in-color-setup.patch
  0002-alsamixer-Revert-has_mouse-check.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1666699200">- Update to alsa-utils 1.2.8 (jsc#PED-850):
  automake update, minor alsactl, amixer and aplay fixes.
  https://www.alsa-project.org/wiki/Changes_v1.2.7.2_v1.2.8
- Add keyring</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1683547200">- Update to alsa-utils 1.2.9:
  BSD build fix, and various updates for alsactl, amidi, axfer,
  alsa-info.sh, alsaloop, alsatplg, alsaucm, aplay, abat.
  For details, see:
  https://www.alsa-project.org/wiki/Changes_v1.2.8_v1.2.9#alsa-utils</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1693828800">- Update to alsa-utils 1.2.10 (jsc#PED-6566):
  * MIDI 2.0 / UMP support for sequencer programs
  * nhlt: add nhlt-dmic-info utility
  * Build fixes and cleanups
  * speaker-test: allow large buffer and period time setup - up to 100 seconds
  * various topology fixes
  For details, see:
  https://www.alsa-project.org/wiki/Changes_v1.2.9_v1.2.10#alsa-utils
- Fix the builds with old gcc:
  0001-axfer-use-ATTRIBUTE_UNUSED-instead-remove-argument-n.patch
  0002-amidi-use-ATTRIBUTE_UNUSED-instead-remove-argument-n.patch
  0003-alsaloop-use-ATTRIBUTE_UNUSED-instead-remove-argumen.patch
  0004-bat-use-ATTRIBUTE_UNUSED-instead-remove-argument-nam.patch
  0005-seq-use-ATTRIBUTE_UNUSED-instead-remove-argument-nam.patch
  0006-alsaucm-use-ATTRIBUTE_UNUSED-instead-remove-argument.patch
  0007-topology-use-ATTRIBUTE_UNUSED-instead-remove-argumen.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1704715200">- Backport upstream fixes:
  buffer overflow fixes in aplay, segfault in aplaymidi, etc:
  0008-topology-include-locale.h.patch
  0009-nhlt-dmic-info.c-include-sys-types.h.patch
  0010-topology-pre-processor-Add-support-for-enum-controls.patch
  0011-configure.ac-fix-UMP-support-detection.patch
  0012-bat-really-skip-analysis-of-the-first-period-and-upd.patch
  0013-topology-add-include-for-ENABLE_NLS-on-musl.patch
  0014-nhlt-use-stdint.h-types.patch
  0015-Revert-nhlt-dmic-info.c-include-sys-types.h.patch
  0016-aplay-use-stdint.h-types-instead-u_int-u_short-u_cha.patch
  0017-alsa-restore.rules-use-devnode-instead-number-atribu.patch
  0018-nhlt-Revert-SSP_ANALOG-device_type-field.patch
  0019-alsactl-fix-potential-buffer-overwrite.patch
  0020-aplay-fix-buffer-overflow-and-tainted-format-string.patch
  0021-misc-fix-incorrect-usages-of-strerror.patch
  0022-aplay-Add-option-for-specifying-subformat.patch
  0023-aplay-allow-to-compile-with-older-alsa-lib-subformat.patch
  0024-aplay-log-pcm-status-before-reporting-a-fatal-error.patch
  0025-aplay-enable-timestamps-by-default.patch
  0026-aplay-status-dumps-are-called-only-in-verbose-mode.patch
  0027-aplaymidi-Set-event-completely-for-tempo-event.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1706875200">- Update to alsa-utils 1.2.11:
  * alsactl buffer overflow fix
  * alsatplg updates, NHLT ACPI parser updates
  * use smaller periods for speaker-test
  * add bandwidth-limited pink noise for speaker-test
  * aplay updates, including subformat extensions
  * compile warning fixes
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.10_v1.2.11#alsa-utils
- Drop obsoleted patches:
  0001-axfer-use-ATTRIBUTE_UNUSED-instead-remove-argument-n.patch
  0002-amidi-use-ATTRIBUTE_UNUSED-instead-remove-argument-n.patch
  0003-alsaloop-use-ATTRIBUTE_UNUSED-instead-remove-argumen.patch
  0004-bat-use-ATTRIBUTE_UNUSED-instead-remove-argument-nam.patch
  0005-seq-use-ATTRIBUTE_UNUSED-instead-remove-argument-nam.patch
  0006-alsaucm-use-ATTRIBUTE_UNUSED-instead-remove-argument.patch
  0007-topology-use-ATTRIBUTE_UNUSED-instead-remove-argumen.patch
  0008-topology-include-locale.h.patch
  0009-nhlt-dmic-info.c-include-sys-types.h.patch
  0010-topology-pre-processor-Add-support-for-enum-controls.patch
  0011-configure.ac-fix-UMP-support-detection.patch
  0012-bat-really-skip-analysis-of-the-first-period-and-upd.patch
  0013-topology-add-include-for-ENABLE_NLS-on-musl.patch
  0014-nhlt-use-stdint.h-types.patch
  0015-Revert-nhlt-dmic-info.c-include-sys-types.h.patch
  0016-aplay-use-stdint.h-types-instead-u_int-u_short-u_cha.patch
  0017-alsa-restore.rules-use-devnode-instead-number-atribu.patch
  0018-nhlt-Revert-SSP_ANALOG-device_type-field.patch
  0019-alsactl-fix-potential-buffer-overwrite.patch
  0020-aplay-fix-buffer-overflow-and-tainted-format-string.patch
  0021-misc-fix-incorrect-usages-of-strerror.patch
  0022-aplay-Add-option-for-specifying-subformat.patch
  0023-aplay-allow-to-compile-with-older-alsa-lib-subformat.patch
  0024-aplay-log-pcm-status-before-reporting-a-fatal-error.patch
  0025-aplay-enable-timestamps-by-default.patch
  0026-aplay-status-dumps-are-called-only-in-verbose-mode.patch
  0027-aplaymidi-Set-event-completely-for-tempo-event.patch</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1708430400">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Antonio Larrosa &lt;alarrosa@suse.com&gt;" date="1717070400">- Require tree which is used by alsa-info.sh (bsc#1225665)</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1718280000">- Update to alsa-utils 1.2.12:
  * alsactl: NULL pointer fix
  * alsa-info.sh: log SoundWire devices reported in ACPI
  * alsamixer: fix calculation in set_normalized_volume (overflow)
  * topology: nhlt fixes
  * aplay: fix S24_LE wav header
  * aseqdump: Add dump for UMP Utility and System messages
  * Addition of aseqsend
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.11_v1.2.12#alsa-utils</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1731412800">- Update to alsa-utils 1.2.13:
  * alsactl: add support for AMD ACP digital microphone
  * aplay: Print '=== PAUSE ===' only if it is supported
  * aplaymidi/arecordmidi: Allow to pass 0 to -u option, too
  * new aplaymidi2/arecordmidi2 for MIDI v2.0
  * aseqdump: improved UMP supports
  * various topology updates
  * aseqsend: improvement and UMP supports
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.12_v1.2.13#alsa-utils</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1731585600">- Fix alsactl restore error (bsc#1233353):
  0001-alsactl-90-alsa-restore.rules-fix-alsa_restore_go-st.patch</changelog>
</package>
<package pkgid="aebdf9acde51d41bfe176952e9e1ec7f7e0fab1965fde359890b090d394ed07e9383b95fec6f06e09709becd0ccc08f3650d4f8ac3db1d708a871408fe54161d" name="alsabat" arch="x86_64">
  <version epoch="0" ver="1.2.13" rel="2.0.2.1.sr20241103"/>
  <changelog author="tiwai@suse.de" date="1611230400">- Backport upstream fixes:
  various fixes in aplay, alsamixer, alsactl and alsaloop, updated
  translations, etc:
  0001-aplay-try-to-use-16-bit-format-to-increase-capture-q.patch
  0002-alsamixer-Fix-the-mixer-views-description-in-man-pag.patch
  0003-Add-Slovak-translation.patch
  0004-Add-Basque-translation.patch
  0006-aplay-cosmetic-code-fix-in-xrun.patch
  0007-aplay-fix-the-CPU-busy-loop-in-the-pause-handler.patch
  0008-alsa-info-Add-lsusb-and-stream-outputs.patch
  0013-aplay-add-test-code-for-snd_pcm_status-to-test-posit.patch
  0014-ucm-fix-typo-in-docs.patch
  0015-aplay-add-avail-delay-checks-to-test-position.patch
  0016-alsactl-daemon-read_pid_file-fix-the-returned-code-o.patch
  0017-alsactl-init-set_ctl_value-fix-bytes-parsing.patch
  0018-alsactl-init-parse-fix-possible-double-free.patch
  0019-alsaloop-fix-possible-memory-leak-in-create_loopback.patch
  0020-alsaloop-get_queued_playback_samples-simplify-code.patch
  0021-topology-fix-possible-double-free-in-load.patch
  0022-alsamixer-remove-dead-fcn-widget_handle_key-in-widge.patch
  0023-alsamixer-remove-unused-variable-y-in-display_scroll.patch
  0024-alsamixer-fix-shift-in-parse_words.patch
  0025-aplay-fix-the-test-position-test-for-playback-avail-.patch</changelog>
  <changelog author="tiwai@suse.de" date="1616068800">- Fix superfluous asound.state migration (bsc#1183672)</changelog>
  <changelog author="tiwai@suse.de" date="1619438400">- Suppress automatic update of alsa-info.sh (bsc#1185280):
  alsa-info-no-update-for-distro-script.patch</changelog>
  <changelog author="tiwai@suse.de" date="1623672000">- Update to alsa-utils 1.2.5:
  a major version up, including previous patches
  https://www.alsa-project.org/wiki/Changes_v1.2.4_v1.2.5
- Update to alsa-utils 1.2.5.1:
  a small bugfix release
  https://www.alsa-project.org/wiki/Changes_v1.2.5_v1.2.5.1
- Drop the obsoleted patches:
  0001-aplay-try-to-use-16-bit-format-to-increase-capture-q.patch
  0002-alsamixer-Fix-the-mixer-views-description-in-man-pag.patch
  0003-Add-Slovak-translation.patch
  0004-Add-Basque-translation.patch
  0006-aplay-cosmetic-code-fix-in-xrun.patch
  0007-aplay-fix-the-CPU-busy-loop-in-the-pause-handler.patch
  0008-alsa-info-Add-lsusb-and-stream-outputs.patch
  0010-alsactl-Fix-double-decrease-of-lock-timeout.patch
  0011-alsactl-Fix-race-at-creating-a-lock-file.patch
  0012-alsactl-Remove-asound.state-file-check-from-alsa-res.patch
  0013-aplay-add-test-code-for-snd_pcm_status-to-test-posit.patch
  0014-ucm-fix-typo-in-docs.patch
  0015-aplay-add-avail-delay-checks-to-test-position.patch
  0016-alsactl-daemon-read_pid_file-fix-the-returned-code-o.patch
  0017-alsactl-init-set_ctl_value-fix-bytes-parsing.patch
  0018-alsactl-init-parse-fix-possible-double-free.patch
  0019-alsaloop-fix-possible-memory-leak-in-create_loopback.patch
  0020-alsaloop-get_queued_playback_samples-simplify-code.patch
  0021-topology-fix-possible-double-free-in-load.patch
  0022-alsamixer-remove-dead-fcn-widget_handle_key-in-widge.patch
  0023-alsamixer-remove-unused-variable-y-in-display_scroll.patch
  0024-alsamixer-fix-shift-in-parse_words.patch
  0025-aplay-fix-the-test-position-test-for-playback-avail-.patch</changelog>
  <changelog author="Johannes Segitz &lt;jsegitz@suse.com&gt;" date="1627473600">- Added hardening to systemd service(s). Modified:
  * sound-extra.service</changelog>
  <changelog author="Johannes Segitz &lt;jsegitz@suse.com&gt;" date="1634299200">- Drop ProtectClock hardening, can cause issues if other device acceess is needed</changelog>
  <changelog author="tiwai@suse.de" date="1638792000">- Update to alsa-utils 1.2.6:
  various updates / fixes for alsactl, amidi, alsaloop, alsamixer,
  alsatplg, amixer, aplay and aseqnet.  Details are found in
    https://alsa-project.org/wiki/Changes_v1.2.5.1_v1.2.6#alsa-utils
- Update the download URL
- Add *.sig file for the tarball</changelog>
  <changelog author="tiwai@suse.de" date="1642766400">- Fix alsamixer color config regression:
  0001-alsamixer-Fix-regression-in-color-setup.patch</changelog>
  <changelog author="tiwai@suse.de" date="1643371200">- Fix the broken mouse support on alsamixer:
  0002-alsamixer-Revert-has_mouse-check.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1654084800">- Update to alsa-utils 1.2.7:
  Enhancement and fixes of alsactl, speaker-test cleanup,
  alsatplg enhancements, arecord ghost data fix, etc.
  For details see:
  https://www.alsa-project.org/wiki/Changes_v1.2.6.3_v1.2.7#alsa-utils
- Drop obsoleted patches:
  0001-alsamixer-Fix-regression-in-color-setup.patch
  0002-alsamixer-Revert-has_mouse-check.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1666699200">- Update to alsa-utils 1.2.8 (jsc#PED-850):
  automake update, minor alsactl, amixer and aplay fixes.
  https://www.alsa-project.org/wiki/Changes_v1.2.7.2_v1.2.8
- Add keyring</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1683547200">- Update to alsa-utils 1.2.9:
  BSD build fix, and various updates for alsactl, amidi, axfer,
  alsa-info.sh, alsaloop, alsatplg, alsaucm, aplay, abat.
  For details, see:
  https://www.alsa-project.org/wiki/Changes_v1.2.8_v1.2.9#alsa-utils</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1693828800">- Update to alsa-utils 1.2.10 (jsc#PED-6566):
  * MIDI 2.0 / UMP support for sequencer programs
  * nhlt: add nhlt-dmic-info utility
  * Build fixes and cleanups
  * speaker-test: allow large buffer and period time setup - up to 100 seconds
  * various topology fixes
  For details, see:
  https://www.alsa-project.org/wiki/Changes_v1.2.9_v1.2.10#alsa-utils
- Fix the builds with old gcc:
  0001-axfer-use-ATTRIBUTE_UNUSED-instead-remove-argument-n.patch
  0002-amidi-use-ATTRIBUTE_UNUSED-instead-remove-argument-n.patch
  0003-alsaloop-use-ATTRIBUTE_UNUSED-instead-remove-argumen.patch
  0004-bat-use-ATTRIBUTE_UNUSED-instead-remove-argument-nam.patch
  0005-seq-use-ATTRIBUTE_UNUSED-instead-remove-argument-nam.patch
  0006-alsaucm-use-ATTRIBUTE_UNUSED-instead-remove-argument.patch
  0007-topology-use-ATTRIBUTE_UNUSED-instead-remove-argumen.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1704715200">- Backport upstream fixes:
  buffer overflow fixes in aplay, segfault in aplaymidi, etc:
  0008-topology-include-locale.h.patch
  0009-nhlt-dmic-info.c-include-sys-types.h.patch
  0010-topology-pre-processor-Add-support-for-enum-controls.patch
  0011-configure.ac-fix-UMP-support-detection.patch
  0012-bat-really-skip-analysis-of-the-first-period-and-upd.patch
  0013-topology-add-include-for-ENABLE_NLS-on-musl.patch
  0014-nhlt-use-stdint.h-types.patch
  0015-Revert-nhlt-dmic-info.c-include-sys-types.h.patch
  0016-aplay-use-stdint.h-types-instead-u_int-u_short-u_cha.patch
  0017-alsa-restore.rules-use-devnode-instead-number-atribu.patch
  0018-nhlt-Revert-SSP_ANALOG-device_type-field.patch
  0019-alsactl-fix-potential-buffer-overwrite.patch
  0020-aplay-fix-buffer-overflow-and-tainted-format-string.patch
  0021-misc-fix-incorrect-usages-of-strerror.patch
  0022-aplay-Add-option-for-specifying-subformat.patch
  0023-aplay-allow-to-compile-with-older-alsa-lib-subformat.patch
  0024-aplay-log-pcm-status-before-reporting-a-fatal-error.patch
  0025-aplay-enable-timestamps-by-default.patch
  0026-aplay-status-dumps-are-called-only-in-verbose-mode.patch
  0027-aplaymidi-Set-event-completely-for-tempo-event.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1706875200">- Update to alsa-utils 1.2.11:
  * alsactl buffer overflow fix
  * alsatplg updates, NHLT ACPI parser updates
  * use smaller periods for speaker-test
  * add bandwidth-limited pink noise for speaker-test
  * aplay updates, including subformat extensions
  * compile warning fixes
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.10_v1.2.11#alsa-utils
- Drop obsoleted patches:
  0001-axfer-use-ATTRIBUTE_UNUSED-instead-remove-argument-n.patch
  0002-amidi-use-ATTRIBUTE_UNUSED-instead-remove-argument-n.patch
  0003-alsaloop-use-ATTRIBUTE_UNUSED-instead-remove-argumen.patch
  0004-bat-use-ATTRIBUTE_UNUSED-instead-remove-argument-nam.patch
  0005-seq-use-ATTRIBUTE_UNUSED-instead-remove-argument-nam.patch
  0006-alsaucm-use-ATTRIBUTE_UNUSED-instead-remove-argument.patch
  0007-topology-use-ATTRIBUTE_UNUSED-instead-remove-argumen.patch
  0008-topology-include-locale.h.patch
  0009-nhlt-dmic-info.c-include-sys-types.h.patch
  0010-topology-pre-processor-Add-support-for-enum-controls.patch
  0011-configure.ac-fix-UMP-support-detection.patch
  0012-bat-really-skip-analysis-of-the-first-period-and-upd.patch
  0013-topology-add-include-for-ENABLE_NLS-on-musl.patch
  0014-nhlt-use-stdint.h-types.patch
  0015-Revert-nhlt-dmic-info.c-include-sys-types.h.patch
  0016-aplay-use-stdint.h-types-instead-u_int-u_short-u_cha.patch
  0017-alsa-restore.rules-use-devnode-instead-number-atribu.patch
  0018-nhlt-Revert-SSP_ANALOG-device_type-field.patch
  0019-alsactl-fix-potential-buffer-overwrite.patch
  0020-aplay-fix-buffer-overflow-and-tainted-format-string.patch
  0021-misc-fix-incorrect-usages-of-strerror.patch
  0022-aplay-Add-option-for-specifying-subformat.patch
  0023-aplay-allow-to-compile-with-older-alsa-lib-subformat.patch
  0024-aplay-log-pcm-status-before-reporting-a-fatal-error.patch
  0025-aplay-enable-timestamps-by-default.patch
  0026-aplay-status-dumps-are-called-only-in-verbose-mode.patch
  0027-aplaymidi-Set-event-completely-for-tempo-event.patch</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1708430400">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Antonio Larrosa &lt;alarrosa@suse.com&gt;" date="1717070400">- Require tree which is used by alsa-info.sh (bsc#1225665)</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1718280000">- Update to alsa-utils 1.2.12:
  * alsactl: NULL pointer fix
  * alsa-info.sh: log SoundWire devices reported in ACPI
  * alsamixer: fix calculation in set_normalized_volume (overflow)
  * topology: nhlt fixes
  * aplay: fix S24_LE wav header
  * aseqdump: Add dump for UMP Utility and System messages
  * Addition of aseqsend
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.11_v1.2.12#alsa-utils</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1731412800">- Update to alsa-utils 1.2.13:
  * alsactl: add support for AMD ACP digital microphone
  * aplay: Print '=== PAUSE ===' only if it is supported
  * aplaymidi/arecordmidi: Allow to pass 0 to -u option, too
  * new aplaymidi2/arecordmidi2 for MIDI v2.0
  * aseqdump: improved UMP supports
  * various topology updates
  * aseqsend: improvement and UMP supports
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.12_v1.2.13#alsa-utils</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1731585600">- Fix alsactl restore error (bsc#1233353):
  0001-alsactl-90-alsa-restore.rules-fix-alsa_restore_go-st.patch</changelog>
</package>
<package pkgid="a173c4cb55afacc2fe50f877ebd2df44f2f1bb04bebfe2dcda780405470902ae7b46283a27efe9965d005bd31b1277e86b2bc9efcf240d893cc192afb6f9d27e" name="alsabat" arch="i586">
  <version epoch="0" ver="1.2.13" rel="3.0.4.1.sr20241103"/>
  <changelog author="tiwai@suse.de" date="1616068800">- Fix superfluous asound.state migration (bsc#1183672)</changelog>
  <changelog author="tiwai@suse.de" date="1619438400">- Suppress automatic update of alsa-info.sh (bsc#1185280):
  alsa-info-no-update-for-distro-script.patch</changelog>
  <changelog author="tiwai@suse.de" date="1623672000">- Update to alsa-utils 1.2.5:
  a major version up, including previous patches
  https://www.alsa-project.org/wiki/Changes_v1.2.4_v1.2.5
- Update to alsa-utils 1.2.5.1:
  a small bugfix release
  https://www.alsa-project.org/wiki/Changes_v1.2.5_v1.2.5.1
- Drop the obsoleted patches:
  0001-aplay-try-to-use-16-bit-format-to-increase-capture-q.patch
  0002-alsamixer-Fix-the-mixer-views-description-in-man-pag.patch
  0003-Add-Slovak-translation.patch
  0004-Add-Basque-translation.patch
  0006-aplay-cosmetic-code-fix-in-xrun.patch
  0007-aplay-fix-the-CPU-busy-loop-in-the-pause-handler.patch
  0008-alsa-info-Add-lsusb-and-stream-outputs.patch
  0010-alsactl-Fix-double-decrease-of-lock-timeout.patch
  0011-alsactl-Fix-race-at-creating-a-lock-file.patch
  0012-alsactl-Remove-asound.state-file-check-from-alsa-res.patch
  0013-aplay-add-test-code-for-snd_pcm_status-to-test-posit.patch
  0014-ucm-fix-typo-in-docs.patch
  0015-aplay-add-avail-delay-checks-to-test-position.patch
  0016-alsactl-daemon-read_pid_file-fix-the-returned-code-o.patch
  0017-alsactl-init-set_ctl_value-fix-bytes-parsing.patch
  0018-alsactl-init-parse-fix-possible-double-free.patch
  0019-alsaloop-fix-possible-memory-leak-in-create_loopback.patch
  0020-alsaloop-get_queued_playback_samples-simplify-code.patch
  0021-topology-fix-possible-double-free-in-load.patch
  0022-alsamixer-remove-dead-fcn-widget_handle_key-in-widge.patch
  0023-alsamixer-remove-unused-variable-y-in-display_scroll.patch
  0024-alsamixer-fix-shift-in-parse_words.patch
  0025-aplay-fix-the-test-position-test-for-playback-avail-.patch</changelog>
  <changelog author="Johannes Segitz &lt;jsegitz@suse.com&gt;" date="1627473600">- Added hardening to systemd service(s). Modified:
  * sound-extra.service</changelog>
  <changelog author="Johannes Segitz &lt;jsegitz@suse.com&gt;" date="1634299200">- Drop ProtectClock hardening, can cause issues if other device acceess is needed</changelog>
  <changelog author="tiwai@suse.de" date="1638792000">- Update to alsa-utils 1.2.6:
  various updates / fixes for alsactl, amidi, alsaloop, alsamixer,
  alsatplg, amixer, aplay and aseqnet.  Details are found in
    https://alsa-project.org/wiki/Changes_v1.2.5.1_v1.2.6#alsa-utils
- Update the download URL
- Add *.sig file for the tarball</changelog>
  <changelog author="tiwai@suse.de" date="1642766400">- Fix alsamixer color config regression:
  0001-alsamixer-Fix-regression-in-color-setup.patch</changelog>
  <changelog author="tiwai@suse.de" date="1643371200">- Fix the broken mouse support on alsamixer:
  0002-alsamixer-Revert-has_mouse-check.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1654084800">- Update to alsa-utils 1.2.7:
  Enhancement and fixes of alsactl, speaker-test cleanup,
  alsatplg enhancements, arecord ghost data fix, etc.
  For details see:
  https://www.alsa-project.org/wiki/Changes_v1.2.6.3_v1.2.7#alsa-utils
- Drop obsoleted patches:
  0001-alsamixer-Fix-regression-in-color-setup.patch
  0002-alsamixer-Revert-has_mouse-check.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1666699200">- Update to alsa-utils 1.2.8 (jsc#PED-850):
  automake update, minor alsactl, amixer and aplay fixes.
  https://www.alsa-project.org/wiki/Changes_v1.2.7.2_v1.2.8
- Add keyring</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1683547200">- Update to alsa-utils 1.2.9:
  BSD build fix, and various updates for alsactl, amidi, axfer,
  alsa-info.sh, alsaloop, alsatplg, alsaucm, aplay, abat.
  For details, see:
  https://www.alsa-project.org/wiki/Changes_v1.2.8_v1.2.9#alsa-utils</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1693828800">- Update to alsa-utils 1.2.10 (jsc#PED-6566):
  * MIDI 2.0 / UMP support for sequencer programs
  * nhlt: add nhlt-dmic-info utility
  * Build fixes and cleanups
  * speaker-test: allow large buffer and period time setup - up to 100 seconds
  * various topology fixes
  For details, see:
  https://www.alsa-project.org/wiki/Changes_v1.2.9_v1.2.10#alsa-utils
- Fix the builds with old gcc:
  0001-axfer-use-ATTRIBUTE_UNUSED-instead-remove-argument-n.patch
  0002-amidi-use-ATTRIBUTE_UNUSED-instead-remove-argument-n.patch
  0003-alsaloop-use-ATTRIBUTE_UNUSED-instead-remove-argumen.patch
  0004-bat-use-ATTRIBUTE_UNUSED-instead-remove-argument-nam.patch
  0005-seq-use-ATTRIBUTE_UNUSED-instead-remove-argument-nam.patch
  0006-alsaucm-use-ATTRIBUTE_UNUSED-instead-remove-argument.patch
  0007-topology-use-ATTRIBUTE_UNUSED-instead-remove-argumen.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1704715200">- Backport upstream fixes:
  buffer overflow fixes in aplay, segfault in aplaymidi, etc:
  0008-topology-include-locale.h.patch
  0009-nhlt-dmic-info.c-include-sys-types.h.patch
  0010-topology-pre-processor-Add-support-for-enum-controls.patch
  0011-configure.ac-fix-UMP-support-detection.patch
  0012-bat-really-skip-analysis-of-the-first-period-and-upd.patch
  0013-topology-add-include-for-ENABLE_NLS-on-musl.patch
  0014-nhlt-use-stdint.h-types.patch
  0015-Revert-nhlt-dmic-info.c-include-sys-types.h.patch
  0016-aplay-use-stdint.h-types-instead-u_int-u_short-u_cha.patch
  0017-alsa-restore.rules-use-devnode-instead-number-atribu.patch
  0018-nhlt-Revert-SSP_ANALOG-device_type-field.patch
  0019-alsactl-fix-potential-buffer-overwrite.patch
  0020-aplay-fix-buffer-overflow-and-tainted-format-string.patch
  0021-misc-fix-incorrect-usages-of-strerror.patch
  0022-aplay-Add-option-for-specifying-subformat.patch
  0023-aplay-allow-to-compile-with-older-alsa-lib-subformat.patch
  0024-aplay-log-pcm-status-before-reporting-a-fatal-error.patch
  0025-aplay-enable-timestamps-by-default.patch
  0026-aplay-status-dumps-are-called-only-in-verbose-mode.patch
  0027-aplaymidi-Set-event-completely-for-tempo-event.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1706875200">- Update to alsa-utils 1.2.11:
  * alsactl buffer overflow fix
  * alsatplg updates, NHLT ACPI parser updates
  * use smaller periods for speaker-test
  * add bandwidth-limited pink noise for speaker-test
  * aplay updates, including subformat extensions
  * compile warning fixes
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.10_v1.2.11#alsa-utils
- Drop obsoleted patches:
  0001-axfer-use-ATTRIBUTE_UNUSED-instead-remove-argument-n.patch
  0002-amidi-use-ATTRIBUTE_UNUSED-instead-remove-argument-n.patch
  0003-alsaloop-use-ATTRIBUTE_UNUSED-instead-remove-argumen.patch
  0004-bat-use-ATTRIBUTE_UNUSED-instead-remove-argument-nam.patch
  0005-seq-use-ATTRIBUTE_UNUSED-instead-remove-argument-nam.patch
  0006-alsaucm-use-ATTRIBUTE_UNUSED-instead-remove-argument.patch
  0007-topology-use-ATTRIBUTE_UNUSED-instead-remove-argumen.patch
  0008-topology-include-locale.h.patch
  0009-nhlt-dmic-info.c-include-sys-types.h.patch
  0010-topology-pre-processor-Add-support-for-enum-controls.patch
  0011-configure.ac-fix-UMP-support-detection.patch
  0012-bat-really-skip-analysis-of-the-first-period-and-upd.patch
  0013-topology-add-include-for-ENABLE_NLS-on-musl.patch
  0014-nhlt-use-stdint.h-types.patch
  0015-Revert-nhlt-dmic-info.c-include-sys-types.h.patch
  0016-aplay-use-stdint.h-types-instead-u_int-u_short-u_cha.patch
  0017-alsa-restore.rules-use-devnode-instead-number-atribu.patch
  0018-nhlt-Revert-SSP_ANALOG-device_type-field.patch
  0019-alsactl-fix-potential-buffer-overwrite.patch
  0020-aplay-fix-buffer-overflow-and-tainted-format-string.patch
  0021-misc-fix-incorrect-usages-of-strerror.patch
  0022-aplay-Add-option-for-specifying-subformat.patch
  0023-aplay-allow-to-compile-with-older-alsa-lib-subformat.patch
  0024-aplay-log-pcm-status-before-reporting-a-fatal-error.patch
  0025-aplay-enable-timestamps-by-default.patch
  0026-aplay-status-dumps-are-called-only-in-verbose-mode.patch
  0027-aplaymidi-Set-event-completely-for-tempo-event.patch</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1708430400">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Antonio Larrosa &lt;alarrosa@suse.com&gt;" date="1717070400">- Require tree which is used by alsa-info.sh (bsc#1225665)</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1718280000">- Update to alsa-utils 1.2.12:
  * alsactl: NULL pointer fix
  * alsa-info.sh: log SoundWire devices reported in ACPI
  * alsamixer: fix calculation in set_normalized_volume (overflow)
  * topology: nhlt fixes
  * aplay: fix S24_LE wav header
  * aseqdump: Add dump for UMP Utility and System messages
  * Addition of aseqsend
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.11_v1.2.12#alsa-utils</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1731412800">- Update to alsa-utils 1.2.13:
  * alsactl: add support for AMD ACP digital microphone
  * aplay: Print '=== PAUSE ===' only if it is supported
  * aplaymidi/arecordmidi: Allow to pass 0 to -u option, too
  * new aplaymidi2/arecordmidi2 for MIDI v2.0
  * aseqdump: improved UMP supports
  * various topology updates
  * aseqsend: improvement and UMP supports
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.12_v1.2.13#alsa-utils</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1731585600">- Fix alsactl restore error (bsc#1233353):
  0001-alsactl-90-alsa-restore.rules-fix-alsa_restore_go-st.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1732104000">- Yet another fix for alsactl for AMD acp dmic:
  0002-alsactl-90-alsa-restore.rules-fix-AMD-acp-pdm-mach-l.patch</changelog>
</package>
<package pkgid="c7123af1397c49e2197ed2e739588226ad17df85132d734720e7b043108444fc99a61a01c7a334b9dc93926557bb78f5e31ff0227e67f954ee65b351b97919f7" name="alsabat" arch="x86_64">
  <version epoch="0" ver="1.2.13" rel="3.0.4.1.sr20241103"/>
  <changelog author="tiwai@suse.de" date="1616068800">- Fix superfluous asound.state migration (bsc#1183672)</changelog>
  <changelog author="tiwai@suse.de" date="1619438400">- Suppress automatic update of alsa-info.sh (bsc#1185280):
  alsa-info-no-update-for-distro-script.patch</changelog>
  <changelog author="tiwai@suse.de" date="1623672000">- Update to alsa-utils 1.2.5:
  a major version up, including previous patches
  https://www.alsa-project.org/wiki/Changes_v1.2.4_v1.2.5
- Update to alsa-utils 1.2.5.1:
  a small bugfix release
  https://www.alsa-project.org/wiki/Changes_v1.2.5_v1.2.5.1
- Drop the obsoleted patches:
  0001-aplay-try-to-use-16-bit-format-to-increase-capture-q.patch
  0002-alsamixer-Fix-the-mixer-views-description-in-man-pag.patch
  0003-Add-Slovak-translation.patch
  0004-Add-Basque-translation.patch
  0006-aplay-cosmetic-code-fix-in-xrun.patch
  0007-aplay-fix-the-CPU-busy-loop-in-the-pause-handler.patch
  0008-alsa-info-Add-lsusb-and-stream-outputs.patch
  0010-alsactl-Fix-double-decrease-of-lock-timeout.patch
  0011-alsactl-Fix-race-at-creating-a-lock-file.patch
  0012-alsactl-Remove-asound.state-file-check-from-alsa-res.patch
  0013-aplay-add-test-code-for-snd_pcm_status-to-test-posit.patch
  0014-ucm-fix-typo-in-docs.patch
  0015-aplay-add-avail-delay-checks-to-test-position.patch
  0016-alsactl-daemon-read_pid_file-fix-the-returned-code-o.patch
  0017-alsactl-init-set_ctl_value-fix-bytes-parsing.patch
  0018-alsactl-init-parse-fix-possible-double-free.patch
  0019-alsaloop-fix-possible-memory-leak-in-create_loopback.patch
  0020-alsaloop-get_queued_playback_samples-simplify-code.patch
  0021-topology-fix-possible-double-free-in-load.patch
  0022-alsamixer-remove-dead-fcn-widget_handle_key-in-widge.patch
  0023-alsamixer-remove-unused-variable-y-in-display_scroll.patch
  0024-alsamixer-fix-shift-in-parse_words.patch
  0025-aplay-fix-the-test-position-test-for-playback-avail-.patch</changelog>
  <changelog author="Johannes Segitz &lt;jsegitz@suse.com&gt;" date="1627473600">- Added hardening to systemd service(s). Modified:
  * sound-extra.service</changelog>
  <changelog author="Johannes Segitz &lt;jsegitz@suse.com&gt;" date="1634299200">- Drop ProtectClock hardening, can cause issues if other device acceess is needed</changelog>
  <changelog author="tiwai@suse.de" date="1638792000">- Update to alsa-utils 1.2.6:
  various updates / fixes for alsactl, amidi, alsaloop, alsamixer,
  alsatplg, amixer, aplay and aseqnet.  Details are found in
    https://alsa-project.org/wiki/Changes_v1.2.5.1_v1.2.6#alsa-utils
- Update the download URL
- Add *.sig file for the tarball</changelog>
  <changelog author="tiwai@suse.de" date="1642766400">- Fix alsamixer color config regression:
  0001-alsamixer-Fix-regression-in-color-setup.patch</changelog>
  <changelog author="tiwai@suse.de" date="1643371200">- Fix the broken mouse support on alsamixer:
  0002-alsamixer-Revert-has_mouse-check.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1654084800">- Update to alsa-utils 1.2.7:
  Enhancement and fixes of alsactl, speaker-test cleanup,
  alsatplg enhancements, arecord ghost data fix, etc.
  For details see:
  https://www.alsa-project.org/wiki/Changes_v1.2.6.3_v1.2.7#alsa-utils
- Drop obsoleted patches:
  0001-alsamixer-Fix-regression-in-color-setup.patch
  0002-alsamixer-Revert-has_mouse-check.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1666699200">- Update to alsa-utils 1.2.8 (jsc#PED-850):
  automake update, minor alsactl, amixer and aplay fixes.
  https://www.alsa-project.org/wiki/Changes_v1.2.7.2_v1.2.8
- Add keyring</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1683547200">- Update to alsa-utils 1.2.9:
  BSD build fix, and various updates for alsactl, amidi, axfer,
  alsa-info.sh, alsaloop, alsatplg, alsaucm, aplay, abat.
  For details, see:
  https://www.alsa-project.org/wiki/Changes_v1.2.8_v1.2.9#alsa-utils</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1693828800">- Update to alsa-utils 1.2.10 (jsc#PED-6566):
  * MIDI 2.0 / UMP support for sequencer programs
  * nhlt: add nhlt-dmic-info utility
  * Build fixes and cleanups
  * speaker-test: allow large buffer and period time setup - up to 100 seconds
  * various topology fixes
  For details, see:
  https://www.alsa-project.org/wiki/Changes_v1.2.9_v1.2.10#alsa-utils
- Fix the builds with old gcc:
  0001-axfer-use-ATTRIBUTE_UNUSED-instead-remove-argument-n.patch
  0002-amidi-use-ATTRIBUTE_UNUSED-instead-remove-argument-n.patch
  0003-alsaloop-use-ATTRIBUTE_UNUSED-instead-remove-argumen.patch
  0004-bat-use-ATTRIBUTE_UNUSED-instead-remove-argument-nam.patch
  0005-seq-use-ATTRIBUTE_UNUSED-instead-remove-argument-nam.patch
  0006-alsaucm-use-ATTRIBUTE_UNUSED-instead-remove-argument.patch
  0007-topology-use-ATTRIBUTE_UNUSED-instead-remove-argumen.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1704715200">- Backport upstream fixes:
  buffer overflow fixes in aplay, segfault in aplaymidi, etc:
  0008-topology-include-locale.h.patch
  0009-nhlt-dmic-info.c-include-sys-types.h.patch
  0010-topology-pre-processor-Add-support-for-enum-controls.patch
  0011-configure.ac-fix-UMP-support-detection.patch
  0012-bat-really-skip-analysis-of-the-first-period-and-upd.patch
  0013-topology-add-include-for-ENABLE_NLS-on-musl.patch
  0014-nhlt-use-stdint.h-types.patch
  0015-Revert-nhlt-dmic-info.c-include-sys-types.h.patch
  0016-aplay-use-stdint.h-types-instead-u_int-u_short-u_cha.patch
  0017-alsa-restore.rules-use-devnode-instead-number-atribu.patch
  0018-nhlt-Revert-SSP_ANALOG-device_type-field.patch
  0019-alsactl-fix-potential-buffer-overwrite.patch
  0020-aplay-fix-buffer-overflow-and-tainted-format-string.patch
  0021-misc-fix-incorrect-usages-of-strerror.patch
  0022-aplay-Add-option-for-specifying-subformat.patch
  0023-aplay-allow-to-compile-with-older-alsa-lib-subformat.patch
  0024-aplay-log-pcm-status-before-reporting-a-fatal-error.patch
  0025-aplay-enable-timestamps-by-default.patch
  0026-aplay-status-dumps-are-called-only-in-verbose-mode.patch
  0027-aplaymidi-Set-event-completely-for-tempo-event.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1706875200">- Update to alsa-utils 1.2.11:
  * alsactl buffer overflow fix
  * alsatplg updates, NHLT ACPI parser updates
  * use smaller periods for speaker-test
  * add bandwidth-limited pink noise for speaker-test
  * aplay updates, including subformat extensions
  * compile warning fixes
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.10_v1.2.11#alsa-utils
- Drop obsoleted patches:
  0001-axfer-use-ATTRIBUTE_UNUSED-instead-remove-argument-n.patch
  0002-amidi-use-ATTRIBUTE_UNUSED-instead-remove-argument-n.patch
  0003-alsaloop-use-ATTRIBUTE_UNUSED-instead-remove-argumen.patch
  0004-bat-use-ATTRIBUTE_UNUSED-instead-remove-argument-nam.patch
  0005-seq-use-ATTRIBUTE_UNUSED-instead-remove-argument-nam.patch
  0006-alsaucm-use-ATTRIBUTE_UNUSED-instead-remove-argument.patch
  0007-topology-use-ATTRIBUTE_UNUSED-instead-remove-argumen.patch
  0008-topology-include-locale.h.patch
  0009-nhlt-dmic-info.c-include-sys-types.h.patch
  0010-topology-pre-processor-Add-support-for-enum-controls.patch
  0011-configure.ac-fix-UMP-support-detection.patch
  0012-bat-really-skip-analysis-of-the-first-period-and-upd.patch
  0013-topology-add-include-for-ENABLE_NLS-on-musl.patch
  0014-nhlt-use-stdint.h-types.patch
  0015-Revert-nhlt-dmic-info.c-include-sys-types.h.patch
  0016-aplay-use-stdint.h-types-instead-u_int-u_short-u_cha.patch
  0017-alsa-restore.rules-use-devnode-instead-number-atribu.patch
  0018-nhlt-Revert-SSP_ANALOG-device_type-field.patch
  0019-alsactl-fix-potential-buffer-overwrite.patch
  0020-aplay-fix-buffer-overflow-and-tainted-format-string.patch
  0021-misc-fix-incorrect-usages-of-strerror.patch
  0022-aplay-Add-option-for-specifying-subformat.patch
  0023-aplay-allow-to-compile-with-older-alsa-lib-subformat.patch
  0024-aplay-log-pcm-status-before-reporting-a-fatal-error.patch
  0025-aplay-enable-timestamps-by-default.patch
  0026-aplay-status-dumps-are-called-only-in-verbose-mode.patch
  0027-aplaymidi-Set-event-completely-for-tempo-event.patch</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1708430400">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Antonio Larrosa &lt;alarrosa@suse.com&gt;" date="1717070400">- Require tree which is used by alsa-info.sh (bsc#1225665)</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1718280000">- Update to alsa-utils 1.2.12:
  * alsactl: NULL pointer fix
  * alsa-info.sh: log SoundWire devices reported in ACPI
  * alsamixer: fix calculation in set_normalized_volume (overflow)
  * topology: nhlt fixes
  * aplay: fix S24_LE wav header
  * aseqdump: Add dump for UMP Utility and System messages
  * Addition of aseqsend
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.11_v1.2.12#alsa-utils</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1731412800">- Update to alsa-utils 1.2.13:
  * alsactl: add support for AMD ACP digital microphone
  * aplay: Print '=== PAUSE ===' only if it is supported
  * aplaymidi/arecordmidi: Allow to pass 0 to -u option, too
  * new aplaymidi2/arecordmidi2 for MIDI v2.0
  * aseqdump: improved UMP supports
  * various topology updates
  * aseqsend: improvement and UMP supports
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.12_v1.2.13#alsa-utils</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1731585600">- Fix alsactl restore error (bsc#1233353):
  0001-alsactl-90-alsa-restore.rules-fix-alsa_restore_go-st.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1732104000">- Yet another fix for alsactl for AMD acp dmic:
  0002-alsactl-90-alsa-restore.rules-fix-AMD-acp-pdm-mach-l.patch</changelog>
</package>
<package pkgid="8d915c26bceb1c536341bd0112de4fcb09e186f7e95c6fbcea6365a660e0279976c6b975d01de62dbacd513d68b41d73a183908e4a97cf712c199ba334f91ab2" name="alsabat-debuginfo" arch="i586">
  <version epoch="0" ver="1.2.13" rel="2.0.2.1.sr20241103"/>
  <changelog author="tiwai@suse.de" date="1611230400">- Backport upstream fixes:
  various fixes in aplay, alsamixer, alsactl and alsaloop, updated
  translations, etc:
  0001-aplay-try-to-use-16-bit-format-to-increase-capture-q.patch
  0002-alsamixer-Fix-the-mixer-views-description-in-man-pag.patch
  0003-Add-Slovak-translation.patch
  0004-Add-Basque-translation.patch
  0006-aplay-cosmetic-code-fix-in-xrun.patch
  0007-aplay-fix-the-CPU-busy-loop-in-the-pause-handler.patch
  0008-alsa-info-Add-lsusb-and-stream-outputs.patch
  0013-aplay-add-test-code-for-snd_pcm_status-to-test-posit.patch
  0014-ucm-fix-typo-in-docs.patch
  0015-aplay-add-avail-delay-checks-to-test-position.patch
  0016-alsactl-daemon-read_pid_file-fix-the-returned-code-o.patch
  0017-alsactl-init-set_ctl_value-fix-bytes-parsing.patch
  0018-alsactl-init-parse-fix-possible-double-free.patch
  0019-alsaloop-fix-possible-memory-leak-in-create_loopback.patch
  0020-alsaloop-get_queued_playback_samples-simplify-code.patch
  0021-topology-fix-possible-double-free-in-load.patch
  0022-alsamixer-remove-dead-fcn-widget_handle_key-in-widge.patch
  0023-alsamixer-remove-unused-variable-y-in-display_scroll.patch
  0024-alsamixer-fix-shift-in-parse_words.patch
  0025-aplay-fix-the-test-position-test-for-playback-avail-.patch</changelog>
  <changelog author="tiwai@suse.de" date="1616068800">- Fix superfluous asound.state migration (bsc#1183672)</changelog>
  <changelog author="tiwai@suse.de" date="1619438400">- Suppress automatic update of alsa-info.sh (bsc#1185280):
  alsa-info-no-update-for-distro-script.patch</changelog>
  <changelog author="tiwai@suse.de" date="1623672000">- Update to alsa-utils 1.2.5:
  a major version up, including previous patches
  https://www.alsa-project.org/wiki/Changes_v1.2.4_v1.2.5
- Update to alsa-utils 1.2.5.1:
  a small bugfix release
  https://www.alsa-project.org/wiki/Changes_v1.2.5_v1.2.5.1
- Drop the obsoleted patches:
  0001-aplay-try-to-use-16-bit-format-to-increase-capture-q.patch
  0002-alsamixer-Fix-the-mixer-views-description-in-man-pag.patch
  0003-Add-Slovak-translation.patch
  0004-Add-Basque-translation.patch
  0006-aplay-cosmetic-code-fix-in-xrun.patch
  0007-aplay-fix-the-CPU-busy-loop-in-the-pause-handler.patch
  0008-alsa-info-Add-lsusb-and-stream-outputs.patch
  0010-alsactl-Fix-double-decrease-of-lock-timeout.patch
  0011-alsactl-Fix-race-at-creating-a-lock-file.patch
  0012-alsactl-Remove-asound.state-file-check-from-alsa-res.patch
  0013-aplay-add-test-code-for-snd_pcm_status-to-test-posit.patch
  0014-ucm-fix-typo-in-docs.patch
  0015-aplay-add-avail-delay-checks-to-test-position.patch
  0016-alsactl-daemon-read_pid_file-fix-the-returned-code-o.patch
  0017-alsactl-init-set_ctl_value-fix-bytes-parsing.patch
  0018-alsactl-init-parse-fix-possible-double-free.patch
  0019-alsaloop-fix-possible-memory-leak-in-create_loopback.patch
  0020-alsaloop-get_queued_playback_samples-simplify-code.patch
  0021-topology-fix-possible-double-free-in-load.patch
  0022-alsamixer-remove-dead-fcn-widget_handle_key-in-widge.patch
  0023-alsamixer-remove-unused-variable-y-in-display_scroll.patch
  0024-alsamixer-fix-shift-in-parse_words.patch
  0025-aplay-fix-the-test-position-test-for-playback-avail-.patch</changelog>
  <changelog author="Johannes Segitz &lt;jsegitz@suse.com&gt;" date="1627473600">- Added hardening to systemd service(s). Modified:
  * sound-extra.service</changelog>
  <changelog author="Johannes Segitz &lt;jsegitz@suse.com&gt;" date="1634299200">- Drop ProtectClock hardening, can cause issues if other device acceess is needed</changelog>
  <changelog author="tiwai@suse.de" date="1638792000">- Update to alsa-utils 1.2.6:
  various updates / fixes for alsactl, amidi, alsaloop, alsamixer,
  alsatplg, amixer, aplay and aseqnet.  Details are found in
    https://alsa-project.org/wiki/Changes_v1.2.5.1_v1.2.6#alsa-utils
- Update the download URL
- Add *.sig file for the tarball</changelog>
  <changelog author="tiwai@suse.de" date="1642766400">- Fix alsamixer color config regression:
  0001-alsamixer-Fix-regression-in-color-setup.patch</changelog>
  <changelog author="tiwai@suse.de" date="1643371200">- Fix the broken mouse support on alsamixer:
  0002-alsamixer-Revert-has_mouse-check.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1654084800">- Update to alsa-utils 1.2.7:
  Enhancement and fixes of alsactl, speaker-test cleanup,
  alsatplg enhancements, arecord ghost data fix, etc.
  For details see:
  https://www.alsa-project.org/wiki/Changes_v1.2.6.3_v1.2.7#alsa-utils
- Drop obsoleted patches:
  0001-alsamixer-Fix-regression-in-color-setup.patch
  0002-alsamixer-Revert-has_mouse-check.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1666699200">- Update to alsa-utils 1.2.8 (jsc#PED-850):
  automake update, minor alsactl, amixer and aplay fixes.
  https://www.alsa-project.org/wiki/Changes_v1.2.7.2_v1.2.8
- Add keyring</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1683547200">- Update to alsa-utils 1.2.9:
  BSD build fix, and various updates for alsactl, amidi, axfer,
  alsa-info.sh, alsaloop, alsatplg, alsaucm, aplay, abat.
  For details, see:
  https://www.alsa-project.org/wiki/Changes_v1.2.8_v1.2.9#alsa-utils</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1693828800">- Update to alsa-utils 1.2.10 (jsc#PED-6566):
  * MIDI 2.0 / UMP support for sequencer programs
  * nhlt: add nhlt-dmic-info utility
  * Build fixes and cleanups
  * speaker-test: allow large buffer and period time setup - up to 100 seconds
  * various topology fixes
  For details, see:
  https://www.alsa-project.org/wiki/Changes_v1.2.9_v1.2.10#alsa-utils
- Fix the builds with old gcc:
  0001-axfer-use-ATTRIBUTE_UNUSED-instead-remove-argument-n.patch
  0002-amidi-use-ATTRIBUTE_UNUSED-instead-remove-argument-n.patch
  0003-alsaloop-use-ATTRIBUTE_UNUSED-instead-remove-argumen.patch
  0004-bat-use-ATTRIBUTE_UNUSED-instead-remove-argument-nam.patch
  0005-seq-use-ATTRIBUTE_UNUSED-instead-remove-argument-nam.patch
  0006-alsaucm-use-ATTRIBUTE_UNUSED-instead-remove-argument.patch
  0007-topology-use-ATTRIBUTE_UNUSED-instead-remove-argumen.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1704715200">- Backport upstream fixes:
  buffer overflow fixes in aplay, segfault in aplaymidi, etc:
  0008-topology-include-locale.h.patch
  0009-nhlt-dmic-info.c-include-sys-types.h.patch
  0010-topology-pre-processor-Add-support-for-enum-controls.patch
  0011-configure.ac-fix-UMP-support-detection.patch
  0012-bat-really-skip-analysis-of-the-first-period-and-upd.patch
  0013-topology-add-include-for-ENABLE_NLS-on-musl.patch
  0014-nhlt-use-stdint.h-types.patch
  0015-Revert-nhlt-dmic-info.c-include-sys-types.h.patch
  0016-aplay-use-stdint.h-types-instead-u_int-u_short-u_cha.patch
  0017-alsa-restore.rules-use-devnode-instead-number-atribu.patch
  0018-nhlt-Revert-SSP_ANALOG-device_type-field.patch
  0019-alsactl-fix-potential-buffer-overwrite.patch
  0020-aplay-fix-buffer-overflow-and-tainted-format-string.patch
  0021-misc-fix-incorrect-usages-of-strerror.patch
  0022-aplay-Add-option-for-specifying-subformat.patch
  0023-aplay-allow-to-compile-with-older-alsa-lib-subformat.patch
  0024-aplay-log-pcm-status-before-reporting-a-fatal-error.patch
  0025-aplay-enable-timestamps-by-default.patch
  0026-aplay-status-dumps-are-called-only-in-verbose-mode.patch
  0027-aplaymidi-Set-event-completely-for-tempo-event.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1706875200">- Update to alsa-utils 1.2.11:
  * alsactl buffer overflow fix
  * alsatplg updates, NHLT ACPI parser updates
  * use smaller periods for speaker-test
  * add bandwidth-limited pink noise for speaker-test
  * aplay updates, including subformat extensions
  * compile warning fixes
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.10_v1.2.11#alsa-utils
- Drop obsoleted patches:
  0001-axfer-use-ATTRIBUTE_UNUSED-instead-remove-argument-n.patch
  0002-amidi-use-ATTRIBUTE_UNUSED-instead-remove-argument-n.patch
  0003-alsaloop-use-ATTRIBUTE_UNUSED-instead-remove-argumen.patch
  0004-bat-use-ATTRIBUTE_UNUSED-instead-remove-argument-nam.patch
  0005-seq-use-ATTRIBUTE_UNUSED-instead-remove-argument-nam.patch
  0006-alsaucm-use-ATTRIBUTE_UNUSED-instead-remove-argument.patch
  0007-topology-use-ATTRIBUTE_UNUSED-instead-remove-argumen.patch
  0008-topology-include-locale.h.patch
  0009-nhlt-dmic-info.c-include-sys-types.h.patch
  0010-topology-pre-processor-Add-support-for-enum-controls.patch
  0011-configure.ac-fix-UMP-support-detection.patch
  0012-bat-really-skip-analysis-of-the-first-period-and-upd.patch
  0013-topology-add-include-for-ENABLE_NLS-on-musl.patch
  0014-nhlt-use-stdint.h-types.patch
  0015-Revert-nhlt-dmic-info.c-include-sys-types.h.patch
  0016-aplay-use-stdint.h-types-instead-u_int-u_short-u_cha.patch
  0017-alsa-restore.rules-use-devnode-instead-number-atribu.patch
  0018-nhlt-Revert-SSP_ANALOG-device_type-field.patch
  0019-alsactl-fix-potential-buffer-overwrite.patch
  0020-aplay-fix-buffer-overflow-and-tainted-format-string.patch
  0021-misc-fix-incorrect-usages-of-strerror.patch
  0022-aplay-Add-option-for-specifying-subformat.patch
  0023-aplay-allow-to-compile-with-older-alsa-lib-subformat.patch
  0024-aplay-log-pcm-status-before-reporting-a-fatal-error.patch
  0025-aplay-enable-timestamps-by-default.patch
  0026-aplay-status-dumps-are-called-only-in-verbose-mode.patch
  0027-aplaymidi-Set-event-completely-for-tempo-event.patch</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1708430400">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Antonio Larrosa &lt;alarrosa@suse.com&gt;" date="1717070400">- Require tree which is used by alsa-info.sh (bsc#1225665)</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1718280000">- Update to alsa-utils 1.2.12:
  * alsactl: NULL pointer fix
  * alsa-info.sh: log SoundWire devices reported in ACPI
  * alsamixer: fix calculation in set_normalized_volume (overflow)
  * topology: nhlt fixes
  * aplay: fix S24_LE wav header
  * aseqdump: Add dump for UMP Utility and System messages
  * Addition of aseqsend
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.11_v1.2.12#alsa-utils</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1731412800">- Update to alsa-utils 1.2.13:
  * alsactl: add support for AMD ACP digital microphone
  * aplay: Print '=== PAUSE ===' only if it is supported
  * aplaymidi/arecordmidi: Allow to pass 0 to -u option, too
  * new aplaymidi2/arecordmidi2 for MIDI v2.0
  * aseqdump: improved UMP supports
  * various topology updates
  * aseqsend: improvement and UMP supports
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.12_v1.2.13#alsa-utils</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1731585600">- Fix alsactl restore error (bsc#1233353):
  0001-alsactl-90-alsa-restore.rules-fix-alsa_restore_go-st.patch</changelog>
</package>
<package pkgid="1467ebde8ab6772540aae333da8d6e9db4561d599b42a2416422abe9ea2aad74b0a2334ffac17fc2d1282a3e2eda73c387718c63844a4f2bebf941a8e07ba41f" name="alsabat-debuginfo" arch="x86_64">
  <version epoch="0" ver="1.2.13" rel="2.0.2.1.sr20241103"/>
  <changelog author="tiwai@suse.de" date="1611230400">- Backport upstream fixes:
  various fixes in aplay, alsamixer, alsactl and alsaloop, updated
  translations, etc:
  0001-aplay-try-to-use-16-bit-format-to-increase-capture-q.patch
  0002-alsamixer-Fix-the-mixer-views-description-in-man-pag.patch
  0003-Add-Slovak-translation.patch
  0004-Add-Basque-translation.patch
  0006-aplay-cosmetic-code-fix-in-xrun.patch
  0007-aplay-fix-the-CPU-busy-loop-in-the-pause-handler.patch
  0008-alsa-info-Add-lsusb-and-stream-outputs.patch
  0013-aplay-add-test-code-for-snd_pcm_status-to-test-posit.patch
  0014-ucm-fix-typo-in-docs.patch
  0015-aplay-add-avail-delay-checks-to-test-position.patch
  0016-alsactl-daemon-read_pid_file-fix-the-returned-code-o.patch
  0017-alsactl-init-set_ctl_value-fix-bytes-parsing.patch
  0018-alsactl-init-parse-fix-possible-double-free.patch
  0019-alsaloop-fix-possible-memory-leak-in-create_loopback.patch
  0020-alsaloop-get_queued_playback_samples-simplify-code.patch
  0021-topology-fix-possible-double-free-in-load.patch
  0022-alsamixer-remove-dead-fcn-widget_handle_key-in-widge.patch
  0023-alsamixer-remove-unused-variable-y-in-display_scroll.patch
  0024-alsamixer-fix-shift-in-parse_words.patch
  0025-aplay-fix-the-test-position-test-for-playback-avail-.patch</changelog>
  <changelog author="tiwai@suse.de" date="1616068800">- Fix superfluous asound.state migration (bsc#1183672)</changelog>
  <changelog author="tiwai@suse.de" date="1619438400">- Suppress automatic update of alsa-info.sh (bsc#1185280):
  alsa-info-no-update-for-distro-script.patch</changelog>
  <changelog author="tiwai@suse.de" date="1623672000">- Update to alsa-utils 1.2.5:
  a major version up, including previous patches
  https://www.alsa-project.org/wiki/Changes_v1.2.4_v1.2.5
- Update to alsa-utils 1.2.5.1:
  a small bugfix release
  https://www.alsa-project.org/wiki/Changes_v1.2.5_v1.2.5.1
- Drop the obsoleted patches:
  0001-aplay-try-to-use-16-bit-format-to-increase-capture-q.patch
  0002-alsamixer-Fix-the-mixer-views-description-in-man-pag.patch
  0003-Add-Slovak-translation.patch
  0004-Add-Basque-translation.patch
  0006-aplay-cosmetic-code-fix-in-xrun.patch
  0007-aplay-fix-the-CPU-busy-loop-in-the-pause-handler.patch
  0008-alsa-info-Add-lsusb-and-stream-outputs.patch
  0010-alsactl-Fix-double-decrease-of-lock-timeout.patch
  0011-alsactl-Fix-race-at-creating-a-lock-file.patch
  0012-alsactl-Remove-asound.state-file-check-from-alsa-res.patch
  0013-aplay-add-test-code-for-snd_pcm_status-to-test-posit.patch
  0014-ucm-fix-typo-in-docs.patch
  0015-aplay-add-avail-delay-checks-to-test-position.patch
  0016-alsactl-daemon-read_pid_file-fix-the-returned-code-o.patch
  0017-alsactl-init-set_ctl_value-fix-bytes-parsing.patch
  0018-alsactl-init-parse-fix-possible-double-free.patch
  0019-alsaloop-fix-possible-memory-leak-in-create_loopback.patch
  0020-alsaloop-get_queued_playback_samples-simplify-code.patch
  0021-topology-fix-possible-double-free-in-load.patch
  0022-alsamixer-remove-dead-fcn-widget_handle_key-in-widge.patch
  0023-alsamixer-remove-unused-variable-y-in-display_scroll.patch
  0024-alsamixer-fix-shift-in-parse_words.patch
  0025-aplay-fix-the-test-position-test-for-playback-avail-.patch</changelog>
  <changelog author="Johannes Segitz &lt;jsegitz@suse.com&gt;" date="1627473600">- Added hardening to systemd service(s). Modified:
  * sound-extra.service</changelog>
  <changelog author="Johannes Segitz &lt;jsegitz@suse.com&gt;" date="1634299200">- Drop ProtectClock hardening, can cause issues if other device acceess is needed</changelog>
  <changelog author="tiwai@suse.de" date="1638792000">- Update to alsa-utils 1.2.6:
  various updates / fixes for alsactl, amidi, alsaloop, alsamixer,
  alsatplg, amixer, aplay and aseqnet.  Details are found in
    https://alsa-project.org/wiki/Changes_v1.2.5.1_v1.2.6#alsa-utils
- Update the download URL
- Add *.sig file for the tarball</changelog>
  <changelog author="tiwai@suse.de" date="1642766400">- Fix alsamixer color config regression:
  0001-alsamixer-Fix-regression-in-color-setup.patch</changelog>
  <changelog author="tiwai@suse.de" date="1643371200">- Fix the broken mouse support on alsamixer:
  0002-alsamixer-Revert-has_mouse-check.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1654084800">- Update to alsa-utils 1.2.7:
  Enhancement and fixes of alsactl, speaker-test cleanup,
  alsatplg enhancements, arecord ghost data fix, etc.
  For details see:
  https://www.alsa-project.org/wiki/Changes_v1.2.6.3_v1.2.7#alsa-utils
- Drop obsoleted patches:
  0001-alsamixer-Fix-regression-in-color-setup.patch
  0002-alsamixer-Revert-has_mouse-check.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1666699200">- Update to alsa-utils 1.2.8 (jsc#PED-850):
  automake update, minor alsactl, amixer and aplay fixes.
  https://www.alsa-project.org/wiki/Changes_v1.2.7.2_v1.2.8
- Add keyring</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1683547200">- Update to alsa-utils 1.2.9:
  BSD build fix, and various updates for alsactl, amidi, axfer,
  alsa-info.sh, alsaloop, alsatplg, alsaucm, aplay, abat.
  For details, see:
  https://www.alsa-project.org/wiki/Changes_v1.2.8_v1.2.9#alsa-utils</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1693828800">- Update to alsa-utils 1.2.10 (jsc#PED-6566):
  * MIDI 2.0 / UMP support for sequencer programs
  * nhlt: add nhlt-dmic-info utility
  * Build fixes and cleanups
  * speaker-test: allow large buffer and period time setup - up to 100 seconds
  * various topology fixes
  For details, see:
  https://www.alsa-project.org/wiki/Changes_v1.2.9_v1.2.10#alsa-utils
- Fix the builds with old gcc:
  0001-axfer-use-ATTRIBUTE_UNUSED-instead-remove-argument-n.patch
  0002-amidi-use-ATTRIBUTE_UNUSED-instead-remove-argument-n.patch
  0003-alsaloop-use-ATTRIBUTE_UNUSED-instead-remove-argumen.patch
  0004-bat-use-ATTRIBUTE_UNUSED-instead-remove-argument-nam.patch
  0005-seq-use-ATTRIBUTE_UNUSED-instead-remove-argument-nam.patch
  0006-alsaucm-use-ATTRIBUTE_UNUSED-instead-remove-argument.patch
  0007-topology-use-ATTRIBUTE_UNUSED-instead-remove-argumen.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1704715200">- Backport upstream fixes:
  buffer overflow fixes in aplay, segfault in aplaymidi, etc:
  0008-topology-include-locale.h.patch
  0009-nhlt-dmic-info.c-include-sys-types.h.patch
  0010-topology-pre-processor-Add-support-for-enum-controls.patch
  0011-configure.ac-fix-UMP-support-detection.patch
  0012-bat-really-skip-analysis-of-the-first-period-and-upd.patch
  0013-topology-add-include-for-ENABLE_NLS-on-musl.patch
  0014-nhlt-use-stdint.h-types.patch
  0015-Revert-nhlt-dmic-info.c-include-sys-types.h.patch
  0016-aplay-use-stdint.h-types-instead-u_int-u_short-u_cha.patch
  0017-alsa-restore.rules-use-devnode-instead-number-atribu.patch
  0018-nhlt-Revert-SSP_ANALOG-device_type-field.patch
  0019-alsactl-fix-potential-buffer-overwrite.patch
  0020-aplay-fix-buffer-overflow-and-tainted-format-string.patch
  0021-misc-fix-incorrect-usages-of-strerror.patch
  0022-aplay-Add-option-for-specifying-subformat.patch
  0023-aplay-allow-to-compile-with-older-alsa-lib-subformat.patch
  0024-aplay-log-pcm-status-before-reporting-a-fatal-error.patch
  0025-aplay-enable-timestamps-by-default.patch
  0026-aplay-status-dumps-are-called-only-in-verbose-mode.patch
  0027-aplaymidi-Set-event-completely-for-tempo-event.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1706875200">- Update to alsa-utils 1.2.11:
  * alsactl buffer overflow fix
  * alsatplg updates, NHLT ACPI parser updates
  * use smaller periods for speaker-test
  * add bandwidth-limited pink noise for speaker-test
  * aplay updates, including subformat extensions
  * compile warning fixes
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.10_v1.2.11#alsa-utils
- Drop obsoleted patches:
  0001-axfer-use-ATTRIBUTE_UNUSED-instead-remove-argument-n.patch
  0002-amidi-use-ATTRIBUTE_UNUSED-instead-remove-argument-n.patch
  0003-alsaloop-use-ATTRIBUTE_UNUSED-instead-remove-argumen.patch
  0004-bat-use-ATTRIBUTE_UNUSED-instead-remove-argument-nam.patch
  0005-seq-use-ATTRIBUTE_UNUSED-instead-remove-argument-nam.patch
  0006-alsaucm-use-ATTRIBUTE_UNUSED-instead-remove-argument.patch
  0007-topology-use-ATTRIBUTE_UNUSED-instead-remove-argumen.patch
  0008-topology-include-locale.h.patch
  0009-nhlt-dmic-info.c-include-sys-types.h.patch
  0010-topology-pre-processor-Add-support-for-enum-controls.patch
  0011-configure.ac-fix-UMP-support-detection.patch
  0012-bat-really-skip-analysis-of-the-first-period-and-upd.patch
  0013-topology-add-include-for-ENABLE_NLS-on-musl.patch
  0014-nhlt-use-stdint.h-types.patch
  0015-Revert-nhlt-dmic-info.c-include-sys-types.h.patch
  0016-aplay-use-stdint.h-types-instead-u_int-u_short-u_cha.patch
  0017-alsa-restore.rules-use-devnode-instead-number-atribu.patch
  0018-nhlt-Revert-SSP_ANALOG-device_type-field.patch
  0019-alsactl-fix-potential-buffer-overwrite.patch
  0020-aplay-fix-buffer-overflow-and-tainted-format-string.patch
  0021-misc-fix-incorrect-usages-of-strerror.patch
  0022-aplay-Add-option-for-specifying-subformat.patch
  0023-aplay-allow-to-compile-with-older-alsa-lib-subformat.patch
  0024-aplay-log-pcm-status-before-reporting-a-fatal-error.patch
  0025-aplay-enable-timestamps-by-default.patch
  0026-aplay-status-dumps-are-called-only-in-verbose-mode.patch
  0027-aplaymidi-Set-event-completely-for-tempo-event.patch</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1708430400">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Antonio Larrosa &lt;alarrosa@suse.com&gt;" date="1717070400">- Require tree which is used by alsa-info.sh (bsc#1225665)</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1718280000">- Update to alsa-utils 1.2.12:
  * alsactl: NULL pointer fix
  * alsa-info.sh: log SoundWire devices reported in ACPI
  * alsamixer: fix calculation in set_normalized_volume (overflow)
  * topology: nhlt fixes
  * aplay: fix S24_LE wav header
  * aseqdump: Add dump for UMP Utility and System messages
  * Addition of aseqsend
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.11_v1.2.12#alsa-utils</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1731412800">- Update to alsa-utils 1.2.13:
  * alsactl: add support for AMD ACP digital microphone
  * aplay: Print '=== PAUSE ===' only if it is supported
  * aplaymidi/arecordmidi: Allow to pass 0 to -u option, too
  * new aplaymidi2/arecordmidi2 for MIDI v2.0
  * aseqdump: improved UMP supports
  * various topology updates
  * aseqsend: improvement and UMP supports
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.12_v1.2.13#alsa-utils</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1731585600">- Fix alsactl restore error (bsc#1233353):
  0001-alsactl-90-alsa-restore.rules-fix-alsa_restore_go-st.patch</changelog>
</package>
<package pkgid="7b798a42a7e9483d54ece66b30f64ee3ffe47b7c2811451cbec2ec6dfa6640dd09ab961f610d9e0cb3989ffd80284f618dc9c1511329456b667ced89aac15b25" name="alsabat-debuginfo" arch="i586">
  <version epoch="0" ver="1.2.13" rel="3.0.4.1.sr20241103"/>
  <changelog author="tiwai@suse.de" date="1616068800">- Fix superfluous asound.state migration (bsc#1183672)</changelog>
  <changelog author="tiwai@suse.de" date="1619438400">- Suppress automatic update of alsa-info.sh (bsc#1185280):
  alsa-info-no-update-for-distro-script.patch</changelog>
  <changelog author="tiwai@suse.de" date="1623672000">- Update to alsa-utils 1.2.5:
  a major version up, including previous patches
  https://www.alsa-project.org/wiki/Changes_v1.2.4_v1.2.5
- Update to alsa-utils 1.2.5.1:
  a small bugfix release
  https://www.alsa-project.org/wiki/Changes_v1.2.5_v1.2.5.1
- Drop the obsoleted patches:
  0001-aplay-try-to-use-16-bit-format-to-increase-capture-q.patch
  0002-alsamixer-Fix-the-mixer-views-description-in-man-pag.patch
  0003-Add-Slovak-translation.patch
  0004-Add-Basque-translation.patch
  0006-aplay-cosmetic-code-fix-in-xrun.patch
  0007-aplay-fix-the-CPU-busy-loop-in-the-pause-handler.patch
  0008-alsa-info-Add-lsusb-and-stream-outputs.patch
  0010-alsactl-Fix-double-decrease-of-lock-timeout.patch
  0011-alsactl-Fix-race-at-creating-a-lock-file.patch
  0012-alsactl-Remove-asound.state-file-check-from-alsa-res.patch
  0013-aplay-add-test-code-for-snd_pcm_status-to-test-posit.patch
  0014-ucm-fix-typo-in-docs.patch
  0015-aplay-add-avail-delay-checks-to-test-position.patch
  0016-alsactl-daemon-read_pid_file-fix-the-returned-code-o.patch
  0017-alsactl-init-set_ctl_value-fix-bytes-parsing.patch
  0018-alsactl-init-parse-fix-possible-double-free.patch
  0019-alsaloop-fix-possible-memory-leak-in-create_loopback.patch
  0020-alsaloop-get_queued_playback_samples-simplify-code.patch
  0021-topology-fix-possible-double-free-in-load.patch
  0022-alsamixer-remove-dead-fcn-widget_handle_key-in-widge.patch
  0023-alsamixer-remove-unused-variable-y-in-display_scroll.patch
  0024-alsamixer-fix-shift-in-parse_words.patch
  0025-aplay-fix-the-test-position-test-for-playback-avail-.patch</changelog>
  <changelog author="Johannes Segitz &lt;jsegitz@suse.com&gt;" date="1627473600">- Added hardening to systemd service(s). Modified:
  * sound-extra.service</changelog>
  <changelog author="Johannes Segitz &lt;jsegitz@suse.com&gt;" date="1634299200">- Drop ProtectClock hardening, can cause issues if other device acceess is needed</changelog>
  <changelog author="tiwai@suse.de" date="1638792000">- Update to alsa-utils 1.2.6:
  various updates / fixes for alsactl, amidi, alsaloop, alsamixer,
  alsatplg, amixer, aplay and aseqnet.  Details are found in
    https://alsa-project.org/wiki/Changes_v1.2.5.1_v1.2.6#alsa-utils
- Update the download URL
- Add *.sig file for the tarball</changelog>
  <changelog author="tiwai@suse.de" date="1642766400">- Fix alsamixer color config regression:
  0001-alsamixer-Fix-regression-in-color-setup.patch</changelog>
  <changelog author="tiwai@suse.de" date="1643371200">- Fix the broken mouse support on alsamixer:
  0002-alsamixer-Revert-has_mouse-check.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1654084800">- Update to alsa-utils 1.2.7:
  Enhancement and fixes of alsactl, speaker-test cleanup,
  alsatplg enhancements, arecord ghost data fix, etc.
  For details see:
  https://www.alsa-project.org/wiki/Changes_v1.2.6.3_v1.2.7#alsa-utils
- Drop obsoleted patches:
  0001-alsamixer-Fix-regression-in-color-setup.patch
  0002-alsamixer-Revert-has_mouse-check.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1666699200">- Update to alsa-utils 1.2.8 (jsc#PED-850):
  automake update, minor alsactl, amixer and aplay fixes.
  https://www.alsa-project.org/wiki/Changes_v1.2.7.2_v1.2.8
- Add keyring</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1683547200">- Update to alsa-utils 1.2.9:
  BSD build fix, and various updates for alsactl, amidi, axfer,
  alsa-info.sh, alsaloop, alsatplg, alsaucm, aplay, abat.
  For details, see:
  https://www.alsa-project.org/wiki/Changes_v1.2.8_v1.2.9#alsa-utils</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1693828800">- Update to alsa-utils 1.2.10 (jsc#PED-6566):
  * MIDI 2.0 / UMP support for sequencer programs
  * nhlt: add nhlt-dmic-info utility
  * Build fixes and cleanups
  * speaker-test: allow large buffer and period time setup - up to 100 seconds
  * various topology fixes
  For details, see:
  https://www.alsa-project.org/wiki/Changes_v1.2.9_v1.2.10#alsa-utils
- Fix the builds with old gcc:
  0001-axfer-use-ATTRIBUTE_UNUSED-instead-remove-argument-n.patch
  0002-amidi-use-ATTRIBUTE_UNUSED-instead-remove-argument-n.patch
  0003-alsaloop-use-ATTRIBUTE_UNUSED-instead-remove-argumen.patch
  0004-bat-use-ATTRIBUTE_UNUSED-instead-remove-argument-nam.patch
  0005-seq-use-ATTRIBUTE_UNUSED-instead-remove-argument-nam.patch
  0006-alsaucm-use-ATTRIBUTE_UNUSED-instead-remove-argument.patch
  0007-topology-use-ATTRIBUTE_UNUSED-instead-remove-argumen.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1704715200">- Backport upstream fixes:
  buffer overflow fixes in aplay, segfault in aplaymidi, etc:
  0008-topology-include-locale.h.patch
  0009-nhlt-dmic-info.c-include-sys-types.h.patch
  0010-topology-pre-processor-Add-support-for-enum-controls.patch
  0011-configure.ac-fix-UMP-support-detection.patch
  0012-bat-really-skip-analysis-of-the-first-period-and-upd.patch
  0013-topology-add-include-for-ENABLE_NLS-on-musl.patch
  0014-nhlt-use-stdint.h-types.patch
  0015-Revert-nhlt-dmic-info.c-include-sys-types.h.patch
  0016-aplay-use-stdint.h-types-instead-u_int-u_short-u_cha.patch
  0017-alsa-restore.rules-use-devnode-instead-number-atribu.patch
  0018-nhlt-Revert-SSP_ANALOG-device_type-field.patch
  0019-alsactl-fix-potential-buffer-overwrite.patch
  0020-aplay-fix-buffer-overflow-and-tainted-format-string.patch
  0021-misc-fix-incorrect-usages-of-strerror.patch
  0022-aplay-Add-option-for-specifying-subformat.patch
  0023-aplay-allow-to-compile-with-older-alsa-lib-subformat.patch
  0024-aplay-log-pcm-status-before-reporting-a-fatal-error.patch
  0025-aplay-enable-timestamps-by-default.patch
  0026-aplay-status-dumps-are-called-only-in-verbose-mode.patch
  0027-aplaymidi-Set-event-completely-for-tempo-event.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1706875200">- Update to alsa-utils 1.2.11:
  * alsactl buffer overflow fix
  * alsatplg updates, NHLT ACPI parser updates
  * use smaller periods for speaker-test
  * add bandwidth-limited pink noise for speaker-test
  * aplay updates, including subformat extensions
  * compile warning fixes
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.10_v1.2.11#alsa-utils
- Drop obsoleted patches:
  0001-axfer-use-ATTRIBUTE_UNUSED-instead-remove-argument-n.patch
  0002-amidi-use-ATTRIBUTE_UNUSED-instead-remove-argument-n.patch
  0003-alsaloop-use-ATTRIBUTE_UNUSED-instead-remove-argumen.patch
  0004-bat-use-ATTRIBUTE_UNUSED-instead-remove-argument-nam.patch
  0005-seq-use-ATTRIBUTE_UNUSED-instead-remove-argument-nam.patch
  0006-alsaucm-use-ATTRIBUTE_UNUSED-instead-remove-argument.patch
  0007-topology-use-ATTRIBUTE_UNUSED-instead-remove-argumen.patch
  0008-topology-include-locale.h.patch
  0009-nhlt-dmic-info.c-include-sys-types.h.patch
  0010-topology-pre-processor-Add-support-for-enum-controls.patch
  0011-configure.ac-fix-UMP-support-detection.patch
  0012-bat-really-skip-analysis-of-the-first-period-and-upd.patch
  0013-topology-add-include-for-ENABLE_NLS-on-musl.patch
  0014-nhlt-use-stdint.h-types.patch
  0015-Revert-nhlt-dmic-info.c-include-sys-types.h.patch
  0016-aplay-use-stdint.h-types-instead-u_int-u_short-u_cha.patch
  0017-alsa-restore.rules-use-devnode-instead-number-atribu.patch
  0018-nhlt-Revert-SSP_ANALOG-device_type-field.patch
  0019-alsactl-fix-potential-buffer-overwrite.patch
  0020-aplay-fix-buffer-overflow-and-tainted-format-string.patch
  0021-misc-fix-incorrect-usages-of-strerror.patch
  0022-aplay-Add-option-for-specifying-subformat.patch
  0023-aplay-allow-to-compile-with-older-alsa-lib-subformat.patch
  0024-aplay-log-pcm-status-before-reporting-a-fatal-error.patch
  0025-aplay-enable-timestamps-by-default.patch
  0026-aplay-status-dumps-are-called-only-in-verbose-mode.patch
  0027-aplaymidi-Set-event-completely-for-tempo-event.patch</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1708430400">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Antonio Larrosa &lt;alarrosa@suse.com&gt;" date="1717070400">- Require tree which is used by alsa-info.sh (bsc#1225665)</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1718280000">- Update to alsa-utils 1.2.12:
  * alsactl: NULL pointer fix
  * alsa-info.sh: log SoundWire devices reported in ACPI
  * alsamixer: fix calculation in set_normalized_volume (overflow)
  * topology: nhlt fixes
  * aplay: fix S24_LE wav header
  * aseqdump: Add dump for UMP Utility and System messages
  * Addition of aseqsend
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.11_v1.2.12#alsa-utils</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1731412800">- Update to alsa-utils 1.2.13:
  * alsactl: add support for AMD ACP digital microphone
  * aplay: Print '=== PAUSE ===' only if it is supported
  * aplaymidi/arecordmidi: Allow to pass 0 to -u option, too
  * new aplaymidi2/arecordmidi2 for MIDI v2.0
  * aseqdump: improved UMP supports
  * various topology updates
  * aseqsend: improvement and UMP supports
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.12_v1.2.13#alsa-utils</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1731585600">- Fix alsactl restore error (bsc#1233353):
  0001-alsactl-90-alsa-restore.rules-fix-alsa_restore_go-st.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1732104000">- Yet another fix for alsactl for AMD acp dmic:
  0002-alsactl-90-alsa-restore.rules-fix-AMD-acp-pdm-mach-l.patch</changelog>
</package>
<package pkgid="b453f18ebab8cc2a1e7d2b5c1df9d8f6330a12e56416cc7eb68ca279ba3c0596c35e5e5758cbc6e5f133cce55725a6a1b666fbb907da334efbad3e673bea0f58" name="alsabat-debuginfo" arch="x86_64">
  <version epoch="0" ver="1.2.13" rel="3.0.4.1.sr20241103"/>
  <changelog author="tiwai@suse.de" date="1616068800">- Fix superfluous asound.state migration (bsc#1183672)</changelog>
  <changelog author="tiwai@suse.de" date="1619438400">- Suppress automatic update of alsa-info.sh (bsc#1185280):
  alsa-info-no-update-for-distro-script.patch</changelog>
  <changelog author="tiwai@suse.de" date="1623672000">- Update to alsa-utils 1.2.5:
  a major version up, including previous patches
  https://www.alsa-project.org/wiki/Changes_v1.2.4_v1.2.5
- Update to alsa-utils 1.2.5.1:
  a small bugfix release
  https://www.alsa-project.org/wiki/Changes_v1.2.5_v1.2.5.1
- Drop the obsoleted patches:
  0001-aplay-try-to-use-16-bit-format-to-increase-capture-q.patch
  0002-alsamixer-Fix-the-mixer-views-description-in-man-pag.patch
  0003-Add-Slovak-translation.patch
  0004-Add-Basque-translation.patch
  0006-aplay-cosmetic-code-fix-in-xrun.patch
  0007-aplay-fix-the-CPU-busy-loop-in-the-pause-handler.patch
  0008-alsa-info-Add-lsusb-and-stream-outputs.patch
  0010-alsactl-Fix-double-decrease-of-lock-timeout.patch
  0011-alsactl-Fix-race-at-creating-a-lock-file.patch
  0012-alsactl-Remove-asound.state-file-check-from-alsa-res.patch
  0013-aplay-add-test-code-for-snd_pcm_status-to-test-posit.patch
  0014-ucm-fix-typo-in-docs.patch
  0015-aplay-add-avail-delay-checks-to-test-position.patch
  0016-alsactl-daemon-read_pid_file-fix-the-returned-code-o.patch
  0017-alsactl-init-set_ctl_value-fix-bytes-parsing.patch
  0018-alsactl-init-parse-fix-possible-double-free.patch
  0019-alsaloop-fix-possible-memory-leak-in-create_loopback.patch
  0020-alsaloop-get_queued_playback_samples-simplify-code.patch
  0021-topology-fix-possible-double-free-in-load.patch
  0022-alsamixer-remove-dead-fcn-widget_handle_key-in-widge.patch
  0023-alsamixer-remove-unused-variable-y-in-display_scroll.patch
  0024-alsamixer-fix-shift-in-parse_words.patch
  0025-aplay-fix-the-test-position-test-for-playback-avail-.patch</changelog>
  <changelog author="Johannes Segitz &lt;jsegitz@suse.com&gt;" date="1627473600">- Added hardening to systemd service(s). Modified:
  * sound-extra.service</changelog>
  <changelog author="Johannes Segitz &lt;jsegitz@suse.com&gt;" date="1634299200">- Drop ProtectClock hardening, can cause issues if other device acceess is needed</changelog>
  <changelog author="tiwai@suse.de" date="1638792000">- Update to alsa-utils 1.2.6:
  various updates / fixes for alsactl, amidi, alsaloop, alsamixer,
  alsatplg, amixer, aplay and aseqnet.  Details are found in
    https://alsa-project.org/wiki/Changes_v1.2.5.1_v1.2.6#alsa-utils
- Update the download URL
- Add *.sig file for the tarball</changelog>
  <changelog author="tiwai@suse.de" date="1642766400">- Fix alsamixer color config regression:
  0001-alsamixer-Fix-regression-in-color-setup.patch</changelog>
  <changelog author="tiwai@suse.de" date="1643371200">- Fix the broken mouse support on alsamixer:
  0002-alsamixer-Revert-has_mouse-check.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1654084800">- Update to alsa-utils 1.2.7:
  Enhancement and fixes of alsactl, speaker-test cleanup,
  alsatplg enhancements, arecord ghost data fix, etc.
  For details see:
  https://www.alsa-project.org/wiki/Changes_v1.2.6.3_v1.2.7#alsa-utils
- Drop obsoleted patches:
  0001-alsamixer-Fix-regression-in-color-setup.patch
  0002-alsamixer-Revert-has_mouse-check.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1666699200">- Update to alsa-utils 1.2.8 (jsc#PED-850):
  automake update, minor alsactl, amixer and aplay fixes.
  https://www.alsa-project.org/wiki/Changes_v1.2.7.2_v1.2.8
- Add keyring</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1683547200">- Update to alsa-utils 1.2.9:
  BSD build fix, and various updates for alsactl, amidi, axfer,
  alsa-info.sh, alsaloop, alsatplg, alsaucm, aplay, abat.
  For details, see:
  https://www.alsa-project.org/wiki/Changes_v1.2.8_v1.2.9#alsa-utils</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1693828800">- Update to alsa-utils 1.2.10 (jsc#PED-6566):
  * MIDI 2.0 / UMP support for sequencer programs
  * nhlt: add nhlt-dmic-info utility
  * Build fixes and cleanups
  * speaker-test: allow large buffer and period time setup - up to 100 seconds
  * various topology fixes
  For details, see:
  https://www.alsa-project.org/wiki/Changes_v1.2.9_v1.2.10#alsa-utils
- Fix the builds with old gcc:
  0001-axfer-use-ATTRIBUTE_UNUSED-instead-remove-argument-n.patch
  0002-amidi-use-ATTRIBUTE_UNUSED-instead-remove-argument-n.patch
  0003-alsaloop-use-ATTRIBUTE_UNUSED-instead-remove-argumen.patch
  0004-bat-use-ATTRIBUTE_UNUSED-instead-remove-argument-nam.patch
  0005-seq-use-ATTRIBUTE_UNUSED-instead-remove-argument-nam.patch
  0006-alsaucm-use-ATTRIBUTE_UNUSED-instead-remove-argument.patch
  0007-topology-use-ATTRIBUTE_UNUSED-instead-remove-argumen.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1704715200">- Backport upstream fixes:
  buffer overflow fixes in aplay, segfault in aplaymidi, etc:
  0008-topology-include-locale.h.patch
  0009-nhlt-dmic-info.c-include-sys-types.h.patch
  0010-topology-pre-processor-Add-support-for-enum-controls.patch
  0011-configure.ac-fix-UMP-support-detection.patch
  0012-bat-really-skip-analysis-of-the-first-period-and-upd.patch
  0013-topology-add-include-for-ENABLE_NLS-on-musl.patch
  0014-nhlt-use-stdint.h-types.patch
  0015-Revert-nhlt-dmic-info.c-include-sys-types.h.patch
  0016-aplay-use-stdint.h-types-instead-u_int-u_short-u_cha.patch
  0017-alsa-restore.rules-use-devnode-instead-number-atribu.patch
  0018-nhlt-Revert-SSP_ANALOG-device_type-field.patch
  0019-alsactl-fix-potential-buffer-overwrite.patch
  0020-aplay-fix-buffer-overflow-and-tainted-format-string.patch
  0021-misc-fix-incorrect-usages-of-strerror.patch
  0022-aplay-Add-option-for-specifying-subformat.patch
  0023-aplay-allow-to-compile-with-older-alsa-lib-subformat.patch
  0024-aplay-log-pcm-status-before-reporting-a-fatal-error.patch
  0025-aplay-enable-timestamps-by-default.patch
  0026-aplay-status-dumps-are-called-only-in-verbose-mode.patch
  0027-aplaymidi-Set-event-completely-for-tempo-event.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1706875200">- Update to alsa-utils 1.2.11:
  * alsactl buffer overflow fix
  * alsatplg updates, NHLT ACPI parser updates
  * use smaller periods for speaker-test
  * add bandwidth-limited pink noise for speaker-test
  * aplay updates, including subformat extensions
  * compile warning fixes
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.10_v1.2.11#alsa-utils
- Drop obsoleted patches:
  0001-axfer-use-ATTRIBUTE_UNUSED-instead-remove-argument-n.patch
  0002-amidi-use-ATTRIBUTE_UNUSED-instead-remove-argument-n.patch
  0003-alsaloop-use-ATTRIBUTE_UNUSED-instead-remove-argumen.patch
  0004-bat-use-ATTRIBUTE_UNUSED-instead-remove-argument-nam.patch
  0005-seq-use-ATTRIBUTE_UNUSED-instead-remove-argument-nam.patch
  0006-alsaucm-use-ATTRIBUTE_UNUSED-instead-remove-argument.patch
  0007-topology-use-ATTRIBUTE_UNUSED-instead-remove-argumen.patch
  0008-topology-include-locale.h.patch
  0009-nhlt-dmic-info.c-include-sys-types.h.patch
  0010-topology-pre-processor-Add-support-for-enum-controls.patch
  0011-configure.ac-fix-UMP-support-detection.patch
  0012-bat-really-skip-analysis-of-the-first-period-and-upd.patch
  0013-topology-add-include-for-ENABLE_NLS-on-musl.patch
  0014-nhlt-use-stdint.h-types.patch
  0015-Revert-nhlt-dmic-info.c-include-sys-types.h.patch
  0016-aplay-use-stdint.h-types-instead-u_int-u_short-u_cha.patch
  0017-alsa-restore.rules-use-devnode-instead-number-atribu.patch
  0018-nhlt-Revert-SSP_ANALOG-device_type-field.patch
  0019-alsactl-fix-potential-buffer-overwrite.patch
  0020-aplay-fix-buffer-overflow-and-tainted-format-string.patch
  0021-misc-fix-incorrect-usages-of-strerror.patch
  0022-aplay-Add-option-for-specifying-subformat.patch
  0023-aplay-allow-to-compile-with-older-alsa-lib-subformat.patch
  0024-aplay-log-pcm-status-before-reporting-a-fatal-error.patch
  0025-aplay-enable-timestamps-by-default.patch
  0026-aplay-status-dumps-are-called-only-in-verbose-mode.patch
  0027-aplaymidi-Set-event-completely-for-tempo-event.patch</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1708430400">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Antonio Larrosa &lt;alarrosa@suse.com&gt;" date="1717070400">- Require tree which is used by alsa-info.sh (bsc#1225665)</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1718280000">- Update to alsa-utils 1.2.12:
  * alsactl: NULL pointer fix
  * alsa-info.sh: log SoundWire devices reported in ACPI
  * alsamixer: fix calculation in set_normalized_volume (overflow)
  * topology: nhlt fixes
  * aplay: fix S24_LE wav header
  * aseqdump: Add dump for UMP Utility and System messages
  * Addition of aseqsend
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.11_v1.2.12#alsa-utils</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1731412800">- Update to alsa-utils 1.2.13:
  * alsactl: add support for AMD ACP digital microphone
  * aplay: Print '=== PAUSE ===' only if it is supported
  * aplaymidi/arecordmidi: Allow to pass 0 to -u option, too
  * new aplaymidi2/arecordmidi2 for MIDI v2.0
  * aseqdump: improved UMP supports
  * various topology updates
  * aseqsend: improvement and UMP supports
  For details, see:
    https://www.alsa-project.org/wiki/Changes_v1.2.12_v1.2.13#alsa-utils</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1731585600">- Fix alsactl restore error (bsc#1233353):
  0001-alsactl-90-alsa-restore.rules-fix-alsa_restore_go-st.patch</changelog>
  <changelog author="Takashi Iwai &lt;tiwai@suse.com&gt;" date="1732104000">- Yet another fix for alsactl for AMD acp dmic:
  0002-alsactl-90-alsa-restore.rules-fix-AMD-acp-pdm-mach-l.patch</changelog>
</package>
<package pkgid="fcf5bbaff9ecf574071ee4099104318e8da73c82ec3b470bfd4cca0299d4ecc4243894566a5ba10d5be82560c242f8aca5386f0ad49c6c65850362b3a4ab8ae4" name="analitza" arch="src">
  <version epoch="0" ver="24.08.3" rel="1.1"/>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1688472000">- Update to 23.04.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.04.3/
- No code change since 23.04.2</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1690891200">- Update to 23.07.80
  * New feature release
- No code change since 23.04.3</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1692014400">- Update to 23.07.90
  * New feature release
- No code change since 23.07.80</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1692532800">- Update to 23.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.0/
- No code change since 23.07.90</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1694520000">- Update to 23.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.1/
- No code change since 23.08.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1696939200">- Update to 23.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.2/
- No code change since 23.08.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1699358400">- Update to 23.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.3/
- No code change since 23.08.2</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1701777600">- Update to 23.08.4
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.4/
- No code change since 23.08.3</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1707480000">- Update to 24.01.95
  * https://kde.org/announcements/megarelease/6/rc2/</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1708689600">- Update to 24.02.0
  * New feature release
- No code change since 24.01.95</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1710849600">- Update to 24.02.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.1/
- Changes since 24.02.0:
  * Analitza6Config: Add Qt6Core5Compat to dependencies</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1712664000">- Update to 24.02.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.2/
- No code change since 24.02.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1714737600">- Update to 24.04.80
  * New feature release
- Changes since 24.02.2:
  * Bump soversion for the Qt6-based version (kde#484823)
  * Port away from QRegExp
  * Analitza6Config: Add Qt6Core5Compat to dependencies</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1716120000">- Update to 24.05.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.0/
- No code change since 24.04.80</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1718193600">- Update to 24.05.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.1/
- No code change since 24.05.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1719921600">- Update to 24.05.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.2/
- No code change since 24.05.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1724068800">- Update to 24.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.0/
- No code change since 24.05.2</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1725969600">- Update to 24.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.1/
- Changes since 24.08.0:
  * Switch to the CMake target for GLEW as it appears that GLEW_LIBRARY
    is no longer being set as a variable</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1728388800">- Update to 24.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.2/
- No code change since 24.08.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1730808000">- Update to 24.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.3/
- Changes since 24.08.2:
  * Fix QML issue in ExpressionInput of Kalgebra</changelog>
</package>
<package pkgid="a5d5c4bd449eef04c8bcb7885279c51f8bd93e9cdb0c8d831112a272c2c63be025eb348fe38e010cd43646811e69596d0b406d5daf8e501edf3fa6af028822d5" name="analitza" arch="x86_64">
  <version epoch="0" ver="24.08.3" rel="1.1"/>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1688472000">- Update to 23.04.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.04.3/
- No code change since 23.04.2</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1690891200">- Update to 23.07.80
  * New feature release
- No code change since 23.04.3</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1692014400">- Update to 23.07.90
  * New feature release
- No code change since 23.07.80</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1692532800">- Update to 23.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.0/
- No code change since 23.07.90</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1694520000">- Update to 23.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.1/
- No code change since 23.08.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1696939200">- Update to 23.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.2/
- No code change since 23.08.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1699358400">- Update to 23.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.3/
- No code change since 23.08.2</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1701777600">- Update to 23.08.4
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.4/
- No code change since 23.08.3</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1707480000">- Update to 24.01.95
  * https://kde.org/announcements/megarelease/6/rc2/</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1708689600">- Update to 24.02.0
  * New feature release
- No code change since 24.01.95</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1710849600">- Update to 24.02.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.1/
- Changes since 24.02.0:
  * Analitza6Config: Add Qt6Core5Compat to dependencies</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1712664000">- Update to 24.02.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.2/
- No code change since 24.02.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1714737600">- Update to 24.04.80
  * New feature release
- Changes since 24.02.2:
  * Bump soversion for the Qt6-based version (kde#484823)
  * Port away from QRegExp
  * Analitza6Config: Add Qt6Core5Compat to dependencies</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1716120000">- Update to 24.05.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.0/
- No code change since 24.04.80</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1718193600">- Update to 24.05.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.1/
- No code change since 24.05.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1719921600">- Update to 24.05.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.2/
- No code change since 24.05.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1724068800">- Update to 24.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.0/
- No code change since 24.05.2</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1725969600">- Update to 24.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.1/
- Changes since 24.08.0:
  * Switch to the CMake target for GLEW as it appears that GLEW_LIBRARY
    is no longer being set as a variable</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1728388800">- Update to 24.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.2/
- No code change since 24.08.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1730808000">- Update to 24.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.3/
- Changes since 24.08.2:
  * Fix QML issue in ExpressionInput of Kalgebra</changelog>
</package>
<package pkgid="9dafd4e3da2a9ac936985df82b5c698c4c08402e97786364490380d938e9afb287217903716fcfd9d054918f20e37ab0565bcad49bece70f4b899df78c9c66b4" name="analitza-debuginfo" arch="x86_64">
  <version epoch="0" ver="24.08.3" rel="1.1"/>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1688472000">- Update to 23.04.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.04.3/
- No code change since 23.04.2</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1690891200">- Update to 23.07.80
  * New feature release
- No code change since 23.04.3</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1692014400">- Update to 23.07.90
  * New feature release
- No code change since 23.07.80</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1692532800">- Update to 23.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.0/
- No code change since 23.07.90</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1694520000">- Update to 23.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.1/
- No code change since 23.08.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1696939200">- Update to 23.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.2/
- No code change since 23.08.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1699358400">- Update to 23.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.3/
- No code change since 23.08.2</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1701777600">- Update to 23.08.4
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.4/
- No code change since 23.08.3</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1707480000">- Update to 24.01.95
  * https://kde.org/announcements/megarelease/6/rc2/</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1708689600">- Update to 24.02.0
  * New feature release
- No code change since 24.01.95</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1710849600">- Update to 24.02.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.1/
- Changes since 24.02.0:
  * Analitza6Config: Add Qt6Core5Compat to dependencies</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1712664000">- Update to 24.02.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.2/
- No code change since 24.02.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1714737600">- Update to 24.04.80
  * New feature release
- Changes since 24.02.2:
  * Bump soversion for the Qt6-based version (kde#484823)
  * Port away from QRegExp
  * Analitza6Config: Add Qt6Core5Compat to dependencies</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1716120000">- Update to 24.05.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.0/
- No code change since 24.04.80</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1718193600">- Update to 24.05.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.1/
- No code change since 24.05.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1719921600">- Update to 24.05.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.2/
- No code change since 24.05.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1724068800">- Update to 24.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.0/
- No code change since 24.05.2</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1725969600">- Update to 24.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.1/
- Changes since 24.08.0:
  * Switch to the CMake target for GLEW as it appears that GLEW_LIBRARY
    is no longer being set as a variable</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1728388800">- Update to 24.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.2/
- No code change since 24.08.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1730808000">- Update to 24.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.3/
- Changes since 24.08.2:
  * Fix QML issue in ExpressionInput of Kalgebra</changelog>
</package>
<package pkgid="6baabbff7368da54348ade09306903e06114fd794c7b8040bcbfdc6fc1af53b33d91ad28399e05e7121b16b87b2bf54b2be03c6ea9a05c1d5a313a6e8ea272f4" name="analitza-debugsource" arch="x86_64">
  <version epoch="0" ver="24.08.3" rel="1.1"/>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1688472000">- Update to 23.04.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.04.3/
- No code change since 23.04.2</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1690891200">- Update to 23.07.80
  * New feature release
- No code change since 23.04.3</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1692014400">- Update to 23.07.90
  * New feature release
- No code change since 23.07.80</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1692532800">- Update to 23.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.0/
- No code change since 23.07.90</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1694520000">- Update to 23.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.1/
- No code change since 23.08.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1696939200">- Update to 23.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.2/
- No code change since 23.08.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1699358400">- Update to 23.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.3/
- No code change since 23.08.2</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1701777600">- Update to 23.08.4
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.4/
- No code change since 23.08.3</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1707480000">- Update to 24.01.95
  * https://kde.org/announcements/megarelease/6/rc2/</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1708689600">- Update to 24.02.0
  * New feature release
- No code change since 24.01.95</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1710849600">- Update to 24.02.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.1/
- Changes since 24.02.0:
  * Analitza6Config: Add Qt6Core5Compat to dependencies</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1712664000">- Update to 24.02.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.2/
- No code change since 24.02.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1714737600">- Update to 24.04.80
  * New feature release
- Changes since 24.02.2:
  * Bump soversion for the Qt6-based version (kde#484823)
  * Port away from QRegExp
  * Analitza6Config: Add Qt6Core5Compat to dependencies</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1716120000">- Update to 24.05.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.0/
- No code change since 24.04.80</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1718193600">- Update to 24.05.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.1/
- No code change since 24.05.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1719921600">- Update to 24.05.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.2/
- No code change since 24.05.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1724068800">- Update to 24.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.0/
- No code change since 24.05.2</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1725969600">- Update to 24.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.1/
- Changes since 24.08.0:
  * Switch to the CMake target for GLEW as it appears that GLEW_LIBRARY
    is no longer being set as a variable</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1728388800">- Update to 24.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.2/
- No code change since 24.08.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1730808000">- Update to 24.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.3/
- Changes since 24.08.2:
  * Fix QML issue in ExpressionInput of Kalgebra</changelog>
</package>
<package pkgid="b1efe80f1b776cb0cbd6fcbf56986faf05e9555de24344df2a359ef593852295732bc609519e16473b803717daceb2c4eb206f01462cc0ab5b812e9d6d7580c8" name="analitza-devel" arch="x86_64">
  <version epoch="0" ver="24.08.3" rel="1.1"/>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1688472000">- Update to 23.04.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.04.3/
- No code change since 23.04.2</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1690891200">- Update to 23.07.80
  * New feature release
- No code change since 23.04.3</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1692014400">- Update to 23.07.90
  * New feature release
- No code change since 23.07.80</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1692532800">- Update to 23.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.0/
- No code change since 23.07.90</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1694520000">- Update to 23.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.1/
- No code change since 23.08.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1696939200">- Update to 23.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.2/
- No code change since 23.08.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1699358400">- Update to 23.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.3/
- No code change since 23.08.2</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1701777600">- Update to 23.08.4
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.4/
- No code change since 23.08.3</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1707480000">- Update to 24.01.95
  * https://kde.org/announcements/megarelease/6/rc2/</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1708689600">- Update to 24.02.0
  * New feature release
- No code change since 24.01.95</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1710849600">- Update to 24.02.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.1/
- Changes since 24.02.0:
  * Analitza6Config: Add Qt6Core5Compat to dependencies</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1712664000">- Update to 24.02.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.2/
- No code change since 24.02.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1714737600">- Update to 24.04.80
  * New feature release
- Changes since 24.02.2:
  * Bump soversion for the Qt6-based version (kde#484823)
  * Port away from QRegExp
  * Analitza6Config: Add Qt6Core5Compat to dependencies</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1716120000">- Update to 24.05.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.0/
- No code change since 24.04.80</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1718193600">- Update to 24.05.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.1/
- No code change since 24.05.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1719921600">- Update to 24.05.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.2/
- No code change since 24.05.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1724068800">- Update to 24.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.0/
- No code change since 24.05.2</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1725969600">- Update to 24.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.1/
- Changes since 24.08.0:
  * Switch to the CMake target for GLEW as it appears that GLEW_LIBRARY
    is no longer being set as a variable</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1728388800">- Update to 24.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.2/
- No code change since 24.08.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1730808000">- Update to 24.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.3/
- Changes since 24.08.2:
  * Fix QML issue in ExpressionInput of Kalgebra</changelog>
</package>
<package pkgid="a856de6f2a12e61ba8db61fcde4506bd09bfae333ab4bddcf5e4c29be7307eca802ff2d77c7983db259f5e8889bbaf836f5d06661228a99d934577627915f589" name="analitza-lang" arch="noarch">
  <version epoch="0" ver="24.08.3" rel="1.1"/>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1688472000">- Update to 23.04.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.04.3/
- No code change since 23.04.2</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1690891200">- Update to 23.07.80
  * New feature release
- No code change since 23.04.3</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1692014400">- Update to 23.07.90
  * New feature release
- No code change since 23.07.80</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1692532800">- Update to 23.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.0/
- No code change since 23.07.90</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1694520000">- Update to 23.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.1/
- No code change since 23.08.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1696939200">- Update to 23.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.2/
- No code change since 23.08.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1699358400">- Update to 23.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.3/
- No code change since 23.08.2</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1701777600">- Update to 23.08.4
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.4/
- No code change since 23.08.3</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1707480000">- Update to 24.01.95
  * https://kde.org/announcements/megarelease/6/rc2/</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1708689600">- Update to 24.02.0
  * New feature release
- No code change since 24.01.95</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1710849600">- Update to 24.02.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.1/
- Changes since 24.02.0:
  * Analitza6Config: Add Qt6Core5Compat to dependencies</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1712664000">- Update to 24.02.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.2/
- No code change since 24.02.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1714737600">- Update to 24.04.80
  * New feature release
- Changes since 24.02.2:
  * Bump soversion for the Qt6-based version (kde#484823)
  * Port away from QRegExp
  * Analitza6Config: Add Qt6Core5Compat to dependencies</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1716120000">- Update to 24.05.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.0/
- No code change since 24.04.80</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1718193600">- Update to 24.05.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.1/
- No code change since 24.05.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1719921600">- Update to 24.05.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.2/
- No code change since 24.05.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1724068800">- Update to 24.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.0/
- No code change since 24.05.2</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1725969600">- Update to 24.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.1/
- Changes since 24.08.0:
  * Switch to the CMake target for GLEW as it appears that GLEW_LIBRARY
    is no longer being set as a variable</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1728388800">- Update to 24.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.2/
- No code change since 24.08.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1730808000">- Update to 24.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.3/
- Changes since 24.08.2:
  * Fix QML issue in ExpressionInput of Kalgebra</changelog>
</package>
<package pkgid="5d2ebae95545ca3995ad783d2837b62df8c174e886fbe2c9d9924c1d58b7007023e4619a13962ff2a933f6ed7dedea7d1a42a51b2c7ab49ce25dde38b8bbd828" name="android-tools" arch="src">
  <version epoch="0" ver="35.0.2" rel="3.0.2.1.sr20241103"/>
  <changelog author="Andreas Schwab &lt;schwab@linux-m68k.org&gt;" date="1665921600">- Use python3.10 for 15.4</changelog>
  <changelog author="munix9@googlemail.com" date="1667649600">- Update to version 33.0.3p1
  * Fixed mkbootimg (see #78)
  * Added avbtool (see #79)
  * Fix for compatibility with Linux &gt;= 6.0 (see #74)
  * Removal of several obsolete patches
- Remove fix-mkbootimg-gki-path.patch (fixed upstream)
- Remove fix-lpmake-help-segfault.patch (fixed upstream)</changelog>
  <changelog author="munix9@googlemail.com" date="1670932800">- Update to version 33.0.3p2
  * Actually update submodules to 33.0.3 (see #100)
  * Initial support for MacOS (see #95 and #97)</changelog>
  <changelog author="munix9@googlemail.com" date="1677844800">- Update to version 34.0.0
  * Upgrade to platform-tools-34.0.0 (see #106)
  * adb
  - Fixed zero length packet sends for macOS
    (issuetracker: 208675141).
  - Addressed unstable connectivity (MacBook high speed cable):
    frequent adb disconnects.
  - Improved error message for adb push with insufficient number
    of arguments.
  * fastboot
  - Improved flashing: flashall will now skip reboots to
    userspace if it can.
  - Fixed zero length packet sends for macOS
    (issuetracker: 208675141).
  - Fixed flashing recovery.img resulting in wrong AVB footer.</changelog>
  <changelog author="munix9@googlemail.com" date="1684152000">- Update to version 34.0.1
  * Upgrade to platform-tools-34.0.1 (see #111)</changelog>
  <changelog author="munix9@googlemail.com" date="1688385600">- Fix for Factory/TW: Use protobuf &lt; 22.5
- Add f2fs-tools as a requirement: Required for 'fastboot format:f2fs ...'
  (link /usr/bin/make_f2fs to /usr/sbin/mkfs.f2fs)</changelog>
  <changelog author="olaf@aepfle.de" date="1690372800">- Use specific python versions for 15.4 and 15.5,
  otherwise stick with plain python3
- Remove Requires for a specific python version, the interpreter
  already creates a matching Requires</changelog>
  <changelog author="munix9@googlemail.com" date="1693915200">- Update to version 34.0.4
  * adb
  - Propagate -a (gListenAll) when adb forks an adb host server
    (previously, the flag only worked for adb -a server nodaemon)
  - Faster root and unroot
  - Reland Flag(env) guarding clear endpoint (device) feature
    for OSX usb start. (issue #270205252).
  * fastboot
  - Mac: remove retries on invalid IO iterator (flashing failure
    with LIBUSB_TRANSFER_CANCELLED)
  - Windows: fix "Sparse file is too large or invalid" when using
    "flashall"
  - All platforms: fix "ANDROID_PRODUCT_OUT not set" when using
    "update"
- Remove the files vendor.tar.gz and _service and strip
  "-mod=vendor" from GOFLAGS env var (currently superfluous)
- Remove protobuf version requirement</changelog>
  <changelog author="munix9@googlemail.com" date="1696075200">- Add upstream patch fix-add-make_f2fs-tool-for-fastboot.patch
  (gh#nmeum/android-tools#109)
- Remove the requirement for f2fs-tools</changelog>
  <changelog author="munix9@googlemail.com" date="1710504000">- Add upstream patch fix-add-sload_f2fs-tool.patch
  (gh#nmeum/android-tools#127) for the missing tool sload_f2fs
- Rework python3 dependencies (use %python3_fix_shebang for
  Factory)</changelog>
  <changelog author="munix9@googlemail.com" date="1710590400">- Use custom %python3_fix_shebang_path macro for Leap</changelog>
  <changelog author="munix9@googlemail.com" date="1711108800">- Update to version 34.0.5
  * adb
  - Previously, adb responded with a successful code when wireless
    pairing fails. Resolved this by returning a failure code (1) and
    user-facing error (error: protocol fault (couldn't read status
    message...)). echo $? now reports 1.
  - adb wait-for-disconnect is now operational for non-USB
    (wireless debugging).
  - Added new DbC interface for future support of ChromeOS over adb.
  * fastboot
  - Fixed flashall on Pixel 3 devices.
- Remove fix-add-make_f2fs-tool-for-fastboot.patch and
  fix-add-sload_f2fs-tool.patch (merged upstream)</changelog>
  <changelog author="munix9@googlemail.com" date="1714305600">- Update to version 35.0.1
  * adb
  - Switch to libusb as the default on Linux issue #270205252.
  - Fix adb startup on hosts without USB.
  - Fix adb hangs caused by USB devices incorrectly reporting
    zero-length descriptors issue #302212871.
  - Fix return code of adb shell when device disconnects
    issue #321787891.
  * fastboot
  - Limit the maximum size of the incoming packet queue.
  - Remove bottlenecks that previously limited download speeds
    to around 120MB/s. Now fastboot can saturate a SuperSpeed+
    bus and achieve speeds up to 980MB/s, depending on the device.</changelog>
  <changelog author="olaf@aepfle.de" date="1719662400">- Use clang15 to fix build in SLE15</changelog>
  <changelog author="munix9@googlemail.com" date="1723896000">- Fix for Factory/TW: Add 'BuildRequires: pkgconfig(zlib)'</changelog>
  <changelog author="munix9@googlemail.com" date="1724932800">- Update to version 35.0.2
  * adb
  - Fix openscreen mDNS backend bug bringing down server on
    truncated query issue #294120933.
  - Make openscreen mDNS backend work on macOS.
  - Make openscreen mDNS backend default on all platforms.
  - Support to detect USB SuperSpeed+ (current and negotiated
    speeds) for diagnostic purposes.
  - Graceful shutdown: Release all USB interfaces on shutdown
    (all OSes).
  * CMake: Add option to link libusb with libudev
  * patches/adb: Combine similar patch to workaround nullability
    specifier
  * CMake: Add option to use bundled libusb library
  * CMake: Add option to use system fmt library
  * vendor: Don't use absolute dir for mkbootimg symlink
  * vendor: mkbootimg: Use builtin ${CMAKE_INSTALL_BINDIR} instead
    of relative bin
  * vendor: Remove unused native submodule
  * vendor: Remove unused incremental_delivery submodule
  * CMake: Remove leftovers after base submodule removal
  * Remove unused patch for libandroidfw
  * Remove libandroidfw: it was never used
  * CMake: Install adb man page
  * boringssl: Workaround compiler error with gcc-14 and _Generic
- Remove man-pages.tar.gz, use upstream man pages</changelog>
  <changelog author="munix9@googlemail.com" date="1724932801">- Fix build on i586.</changelog>
  <changelog author="olaf@aepfle.de" date="1727006400">- remove adb from bash-completion package for SLE15 because it is
  still part of bash-completion itself
- Use specific python versions for all SLE15 variants
- Require protobuf &gt;= 21 until earlier variants are supported again</changelog>
  <changelog author="munix9@googlemail.com" date="1729425600">- Fix build for Leap 16.0
- Add 'Provides: bundled(...)' where appropriate
- Clean up spec file</changelog>
  <changelog author="munix9@googlemail.com" date="1730808000">- Exclude ppc ppc64 and ppc64le: Bundled boringssl doesn't support
  the big endian architectures and dropped ppc64le support
- Simplify python3 requirements
- Simplify fix-install-completion.patch</changelog>
</package>
<package pkgid="143ffd7b4d8d4aac842153f68f18ae237931b00b95e1644ddbd47931e982bd8deb38622a6961c699b43d3f91ec8e566831d121141fdcc3fed9bce9f7cb3c52e6" name="android-tools" arch="x86_64">
  <version epoch="0" ver="35.0.2" rel="3.0.2.1.sr20241103"/>
  <changelog author="Andreas Schwab &lt;schwab@linux-m68k.org&gt;" date="1665921600">- Use python3.10 for 15.4</changelog>
  <changelog author="munix9@googlemail.com" date="1667649600">- Update to version 33.0.3p1
  * Fixed mkbootimg (see #78)
  * Added avbtool (see #79)
  * Fix for compatibility with Linux &gt;= 6.0 (see #74)
  * Removal of several obsolete patches
- Remove fix-mkbootimg-gki-path.patch (fixed upstream)
- Remove fix-lpmake-help-segfault.patch (fixed upstream)</changelog>
  <changelog author="munix9@googlemail.com" date="1670932800">- Update to version 33.0.3p2
  * Actually update submodules to 33.0.3 (see #100)
  * Initial support for MacOS (see #95 and #97)</changelog>
  <changelog author="munix9@googlemail.com" date="1677844800">- Update to version 34.0.0
  * Upgrade to platform-tools-34.0.0 (see #106)
  * adb
  - Fixed zero length packet sends for macOS
    (issuetracker: 208675141).
  - Addressed unstable connectivity (MacBook high speed cable):
    frequent adb disconnects.
  - Improved error message for adb push with insufficient number
    of arguments.
  * fastboot
  - Improved flashing: flashall will now skip reboots to
    userspace if it can.
  - Fixed zero length packet sends for macOS
    (issuetracker: 208675141).
  - Fixed flashing recovery.img resulting in wrong AVB footer.</changelog>
  <changelog author="munix9@googlemail.com" date="1684152000">- Update to version 34.0.1
  * Upgrade to platform-tools-34.0.1 (see #111)</changelog>
  <changelog author="munix9@googlemail.com" date="1688385600">- Fix for Factory/TW: Use protobuf &lt; 22.5
- Add f2fs-tools as a requirement: Required for 'fastboot format:f2fs ...'
  (link /usr/bin/make_f2fs to /usr/sbin/mkfs.f2fs)</changelog>
  <changelog author="olaf@aepfle.de" date="1690372800">- Use specific python versions for 15.4 and 15.5,
  otherwise stick with plain python3
- Remove Requires for a specific python version, the interpreter
  already creates a matching Requires</changelog>
  <changelog author="munix9@googlemail.com" date="1693915200">- Update to version 34.0.4
  * adb
  - Propagate -a (gListenAll) when adb forks an adb host server
    (previously, the flag only worked for adb -a server nodaemon)
  - Faster root and unroot
  - Reland Flag(env) guarding clear endpoint (device) feature
    for OSX usb start. (issue #270205252).
  * fastboot
  - Mac: remove retries on invalid IO iterator (flashing failure
    with LIBUSB_TRANSFER_CANCELLED)
  - Windows: fix "Sparse file is too large or invalid" when using
    "flashall"
  - All platforms: fix "ANDROID_PRODUCT_OUT not set" when using
    "update"
- Remove the files vendor.tar.gz and _service and strip
  "-mod=vendor" from GOFLAGS env var (currently superfluous)
- Remove protobuf version requirement</changelog>
  <changelog author="munix9@googlemail.com" date="1696075200">- Add upstream patch fix-add-make_f2fs-tool-for-fastboot.patch
  (gh#nmeum/android-tools#109)
- Remove the requirement for f2fs-tools</changelog>
  <changelog author="munix9@googlemail.com" date="1710504000">- Add upstream patch fix-add-sload_f2fs-tool.patch
  (gh#nmeum/android-tools#127) for the missing tool sload_f2fs
- Rework python3 dependencies (use %python3_fix_shebang for
  Factory)</changelog>
  <changelog author="munix9@googlemail.com" date="1710590400">- Use custom %python3_fix_shebang_path macro for Leap</changelog>
  <changelog author="munix9@googlemail.com" date="1711108800">- Update to version 34.0.5
  * adb
  - Previously, adb responded with a successful code when wireless
    pairing fails. Resolved this by returning a failure code (1) and
    user-facing error (error: protocol fault (couldn't read status
    message...)). echo $? now reports 1.
  - adb wait-for-disconnect is now operational for non-USB
    (wireless debugging).
  - Added new DbC interface for future support of ChromeOS over adb.
  * fastboot
  - Fixed flashall on Pixel 3 devices.
- Remove fix-add-make_f2fs-tool-for-fastboot.patch and
  fix-add-sload_f2fs-tool.patch (merged upstream)</changelog>
  <changelog author="munix9@googlemail.com" date="1714305600">- Update to version 35.0.1
  * adb
  - Switch to libusb as the default on Linux issue #270205252.
  - Fix adb startup on hosts without USB.
  - Fix adb hangs caused by USB devices incorrectly reporting
    zero-length descriptors issue #302212871.
  - Fix return code of adb shell when device disconnects
    issue #321787891.
  * fastboot
  - Limit the maximum size of the incoming packet queue.
  - Remove bottlenecks that previously limited download speeds
    to around 120MB/s. Now fastboot can saturate a SuperSpeed+
    bus and achieve speeds up to 980MB/s, depending on the device.</changelog>
  <changelog author="olaf@aepfle.de" date="1719662400">- Use clang15 to fix build in SLE15</changelog>
  <changelog author="munix9@googlemail.com" date="1723896000">- Fix for Factory/TW: Add 'BuildRequires: pkgconfig(zlib)'</changelog>
  <changelog author="munix9@googlemail.com" date="1724932800">- Update to version 35.0.2
  * adb
  - Fix openscreen mDNS backend bug bringing down server on
    truncated query issue #294120933.
  - Make openscreen mDNS backend work on macOS.
  - Make openscreen mDNS backend default on all platforms.
  - Support to detect USB SuperSpeed+ (current and negotiated
    speeds) for diagnostic purposes.
  - Graceful shutdown: Release all USB interfaces on shutdown
    (all OSes).
  * CMake: Add option to link libusb with libudev
  * patches/adb: Combine similar patch to workaround nullability
    specifier
  * CMake: Add option to use bundled libusb library
  * CMake: Add option to use system fmt library
  * vendor: Don't use absolute dir for mkbootimg symlink
  * vendor: mkbootimg: Use builtin ${CMAKE_INSTALL_BINDIR} instead
    of relative bin
  * vendor: Remove unused native submodule
  * vendor: Remove unused incremental_delivery submodule
  * CMake: Remove leftovers after base submodule removal
  * Remove unused patch for libandroidfw
  * Remove libandroidfw: it was never used
  * CMake: Install adb man page
  * boringssl: Workaround compiler error with gcc-14 and _Generic
- Remove man-pages.tar.gz, use upstream man pages</changelog>
  <changelog author="munix9@googlemail.com" date="1724932801">- Fix build on i586.</changelog>
  <changelog author="olaf@aepfle.de" date="1727006400">- remove adb from bash-completion package for SLE15 because it is
  still part of bash-completion itself
- Use specific python versions for all SLE15 variants
- Require protobuf &gt;= 21 until earlier variants are supported again</changelog>
  <changelog author="munix9@googlemail.com" date="1729425600">- Fix build for Leap 16.0
- Add 'Provides: bundled(...)' where appropriate
- Clean up spec file</changelog>
  <changelog author="munix9@googlemail.com" date="1730808000">- Exclude ppc ppc64 and ppc64le: Bundled boringssl doesn't support
  the big endian architectures and dropped ppc64le support
- Simplify python3 requirements
- Simplify fix-install-completion.patch</changelog>
</package>
<package pkgid="581831ee99fd4459ff52beb0956c707e873c37e97649bcdd0f61052531c0154cabcf77a7083cb865324d24ae106e4b989f203890c4a1dd81023019da284a145b" name="android-tools-bash-completion" arch="noarch">
  <version epoch="0" ver="35.0.2" rel="3.0.2.1.sr20241103"/>
  <changelog author="Andreas Schwab &lt;schwab@linux-m68k.org&gt;" date="1665921600">- Use python3.10 for 15.4</changelog>
  <changelog author="munix9@googlemail.com" date="1667649600">- Update to version 33.0.3p1
  * Fixed mkbootimg (see #78)
  * Added avbtool (see #79)
  * Fix for compatibility with Linux &gt;= 6.0 (see #74)
  * Removal of several obsolete patches
- Remove fix-mkbootimg-gki-path.patch (fixed upstream)
- Remove fix-lpmake-help-segfault.patch (fixed upstream)</changelog>
  <changelog author="munix9@googlemail.com" date="1670932800">- Update to version 33.0.3p2
  * Actually update submodules to 33.0.3 (see #100)
  * Initial support for MacOS (see #95 and #97)</changelog>
  <changelog author="munix9@googlemail.com" date="1677844800">- Update to version 34.0.0
  * Upgrade to platform-tools-34.0.0 (see #106)
  * adb
  - Fixed zero length packet sends for macOS
    (issuetracker: 208675141).
  - Addressed unstable connectivity (MacBook high speed cable):
    frequent adb disconnects.
  - Improved error message for adb push with insufficient number
    of arguments.
  * fastboot
  - Improved flashing: flashall will now skip reboots to
    userspace if it can.
  - Fixed zero length packet sends for macOS
    (issuetracker: 208675141).
  - Fixed flashing recovery.img resulting in wrong AVB footer.</changelog>
  <changelog author="munix9@googlemail.com" date="1684152000">- Update to version 34.0.1
  * Upgrade to platform-tools-34.0.1 (see #111)</changelog>
  <changelog author="munix9@googlemail.com" date="1688385600">- Fix for Factory/TW: Use protobuf &lt; 22.5
- Add f2fs-tools as a requirement: Required for 'fastboot format:f2fs ...'
  (link /usr/bin/make_f2fs to /usr/sbin/mkfs.f2fs)</changelog>
  <changelog author="olaf@aepfle.de" date="1690372800">- Use specific python versions for 15.4 and 15.5,
  otherwise stick with plain python3
- Remove Requires for a specific python version, the interpreter
  already creates a matching Requires</changelog>
  <changelog author="munix9@googlemail.com" date="1693915200">- Update to version 34.0.4
  * adb
  - Propagate -a (gListenAll) when adb forks an adb host server
    (previously, the flag only worked for adb -a server nodaemon)
  - Faster root and unroot
  - Reland Flag(env) guarding clear endpoint (device) feature
    for OSX usb start. (issue #270205252).
  * fastboot
  - Mac: remove retries on invalid IO iterator (flashing failure
    with LIBUSB_TRANSFER_CANCELLED)
  - Windows: fix "Sparse file is too large or invalid" when using
    "flashall"
  - All platforms: fix "ANDROID_PRODUCT_OUT not set" when using
    "update"
- Remove the files vendor.tar.gz and _service and strip
  "-mod=vendor" from GOFLAGS env var (currently superfluous)
- Remove protobuf version requirement</changelog>
  <changelog author="munix9@googlemail.com" date="1696075200">- Add upstream patch fix-add-make_f2fs-tool-for-fastboot.patch
  (gh#nmeum/android-tools#109)
- Remove the requirement for f2fs-tools</changelog>
  <changelog author="munix9@googlemail.com" date="1710504000">- Add upstream patch fix-add-sload_f2fs-tool.patch
  (gh#nmeum/android-tools#127) for the missing tool sload_f2fs
- Rework python3 dependencies (use %python3_fix_shebang for
  Factory)</changelog>
  <changelog author="munix9@googlemail.com" date="1710590400">- Use custom %python3_fix_shebang_path macro for Leap</changelog>
  <changelog author="munix9@googlemail.com" date="1711108800">- Update to version 34.0.5
  * adb
  - Previously, adb responded with a successful code when wireless
    pairing fails. Resolved this by returning a failure code (1) and
    user-facing error (error: protocol fault (couldn't read status
    message...)). echo $? now reports 1.
  - adb wait-for-disconnect is now operational for non-USB
    (wireless debugging).
  - Added new DbC interface for future support of ChromeOS over adb.
  * fastboot
  - Fixed flashall on Pixel 3 devices.
- Remove fix-add-make_f2fs-tool-for-fastboot.patch and
  fix-add-sload_f2fs-tool.patch (merged upstream)</changelog>
  <changelog author="munix9@googlemail.com" date="1714305600">- Update to version 35.0.1
  * adb
  - Switch to libusb as the default on Linux issue #270205252.
  - Fix adb startup on hosts without USB.
  - Fix adb hangs caused by USB devices incorrectly reporting
    zero-length descriptors issue #302212871.
  - Fix return code of adb shell when device disconnects
    issue #321787891.
  * fastboot
  - Limit the maximum size of the incoming packet queue.
  - Remove bottlenecks that previously limited download speeds
    to around 120MB/s. Now fastboot can saturate a SuperSpeed+
    bus and achieve speeds up to 980MB/s, depending on the device.</changelog>
  <changelog author="olaf@aepfle.de" date="1719662400">- Use clang15 to fix build in SLE15</changelog>
  <changelog author="munix9@googlemail.com" date="1723896000">- Fix for Factory/TW: Add 'BuildRequires: pkgconfig(zlib)'</changelog>
  <changelog author="munix9@googlemail.com" date="1724932800">- Update to version 35.0.2
  * adb
  - Fix openscreen mDNS backend bug bringing down server on
    truncated query issue #294120933.
  - Make openscreen mDNS backend work on macOS.
  - Make openscreen mDNS backend default on all platforms.
  - Support to detect USB SuperSpeed+ (current and negotiated
    speeds) for diagnostic purposes.
  - Graceful shutdown: Release all USB interfaces on shutdown
    (all OSes).
  * CMake: Add option to link libusb with libudev
  * patches/adb: Combine similar patch to workaround nullability
    specifier
  * CMake: Add option to use bundled libusb library
  * CMake: Add option to use system fmt library
  * vendor: Don't use absolute dir for mkbootimg symlink
  * vendor: mkbootimg: Use builtin ${CMAKE_INSTALL_BINDIR} instead
    of relative bin
  * vendor: Remove unused native submodule
  * vendor: Remove unused incremental_delivery submodule
  * CMake: Remove leftovers after base submodule removal
  * Remove unused patch for libandroidfw
  * Remove libandroidfw: it was never used
  * CMake: Install adb man page
  * boringssl: Workaround compiler error with gcc-14 and _Generic
- Remove man-pages.tar.gz, use upstream man pages</changelog>
  <changelog author="munix9@googlemail.com" date="1724932801">- Fix build on i586.</changelog>
  <changelog author="olaf@aepfle.de" date="1727006400">- remove adb from bash-completion package for SLE15 because it is
  still part of bash-completion itself
- Use specific python versions for all SLE15 variants
- Require protobuf &gt;= 21 until earlier variants are supported again</changelog>
  <changelog author="munix9@googlemail.com" date="1729425600">- Fix build for Leap 16.0
- Add 'Provides: bundled(...)' where appropriate
- Clean up spec file</changelog>
  <changelog author="munix9@googlemail.com" date="1730808000">- Exclude ppc ppc64 and ppc64le: Bundled boringssl doesn't support
  the big endian architectures and dropped ppc64le support
- Simplify python3 requirements
- Simplify fix-install-completion.patch</changelog>
</package>
<package pkgid="49f5fc603f6f6e1d08a7eb402cd8cd0d9aa0a4ff7b85cb67f467cd458c9d07056457e4926dd53afb1ad3a92512f87084f715b8dd758866577ad961c6886cc937" name="android-tools-debuginfo" arch="x86_64">
  <version epoch="0" ver="35.0.2" rel="3.0.2.1.sr20241103"/>
  <changelog author="Andreas Schwab &lt;schwab@linux-m68k.org&gt;" date="1665921600">- Use python3.10 for 15.4</changelog>
  <changelog author="munix9@googlemail.com" date="1667649600">- Update to version 33.0.3p1
  * Fixed mkbootimg (see #78)
  * Added avbtool (see #79)
  * Fix for compatibility with Linux &gt;= 6.0 (see #74)
  * Removal of several obsolete patches
- Remove fix-mkbootimg-gki-path.patch (fixed upstream)
- Remove fix-lpmake-help-segfault.patch (fixed upstream)</changelog>
  <changelog author="munix9@googlemail.com" date="1670932800">- Update to version 33.0.3p2
  * Actually update submodules to 33.0.3 (see #100)
  * Initial support for MacOS (see #95 and #97)</changelog>
  <changelog author="munix9@googlemail.com" date="1677844800">- Update to version 34.0.0
  * Upgrade to platform-tools-34.0.0 (see #106)
  * adb
  - Fixed zero length packet sends for macOS
    (issuetracker: 208675141).
  - Addressed unstable connectivity (MacBook high speed cable):
    frequent adb disconnects.
  - Improved error message for adb push with insufficient number
    of arguments.
  * fastboot
  - Improved flashing: flashall will now skip reboots to
    userspace if it can.
  - Fixed zero length packet sends for macOS
    (issuetracker: 208675141).
  - Fixed flashing recovery.img resulting in wrong AVB footer.</changelog>
  <changelog author="munix9@googlemail.com" date="1684152000">- Update to version 34.0.1
  * Upgrade to platform-tools-34.0.1 (see #111)</changelog>
  <changelog author="munix9@googlemail.com" date="1688385600">- Fix for Factory/TW: Use protobuf &lt; 22.5
- Add f2fs-tools as a requirement: Required for 'fastboot format:f2fs ...'
  (link /usr/bin/make_f2fs to /usr/sbin/mkfs.f2fs)</changelog>
  <changelog author="olaf@aepfle.de" date="1690372800">- Use specific python versions for 15.4 and 15.5,
  otherwise stick with plain python3
- Remove Requires for a specific python version, the interpreter
  already creates a matching Requires</changelog>
  <changelog author="munix9@googlemail.com" date="1693915200">- Update to version 34.0.4
  * adb
  - Propagate -a (gListenAll) when adb forks an adb host server
    (previously, the flag only worked for adb -a server nodaemon)
  - Faster root and unroot
  - Reland Flag(env) guarding clear endpoint (device) feature
    for OSX usb start. (issue #270205252).
  * fastboot
  - Mac: remove retries on invalid IO iterator (flashing failure
    with LIBUSB_TRANSFER_CANCELLED)
  - Windows: fix "Sparse file is too large or invalid" when using
    "flashall"
  - All platforms: fix "ANDROID_PRODUCT_OUT not set" when using
    "update"
- Remove the files vendor.tar.gz and _service and strip
  "-mod=vendor" from GOFLAGS env var (currently superfluous)
- Remove protobuf version requirement</changelog>
  <changelog author="munix9@googlemail.com" date="1696075200">- Add upstream patch fix-add-make_f2fs-tool-for-fastboot.patch
  (gh#nmeum/android-tools#109)
- Remove the requirement for f2fs-tools</changelog>
  <changelog author="munix9@googlemail.com" date="1710504000">- Add upstream patch fix-add-sload_f2fs-tool.patch
  (gh#nmeum/android-tools#127) for the missing tool sload_f2fs
- Rework python3 dependencies (use %python3_fix_shebang for
  Factory)</changelog>
  <changelog author="munix9@googlemail.com" date="1710590400">- Use custom %python3_fix_shebang_path macro for Leap</changelog>
  <changelog author="munix9@googlemail.com" date="1711108800">- Update to version 34.0.5
  * adb
  - Previously, adb responded with a successful code when wireless
    pairing fails. Resolved this by returning a failure code (1) and
    user-facing error (error: protocol fault (couldn't read status
    message...)). echo $? now reports 1.
  - adb wait-for-disconnect is now operational for non-USB
    (wireless debugging).
  - Added new DbC interface for future support of ChromeOS over adb.
  * fastboot
  - Fixed flashall on Pixel 3 devices.
- Remove fix-add-make_f2fs-tool-for-fastboot.patch and
  fix-add-sload_f2fs-tool.patch (merged upstream)</changelog>
  <changelog author="munix9@googlemail.com" date="1714305600">- Update to version 35.0.1
  * adb
  - Switch to libusb as the default on Linux issue #270205252.
  - Fix adb startup on hosts without USB.
  - Fix adb hangs caused by USB devices incorrectly reporting
    zero-length descriptors issue #302212871.
  - Fix return code of adb shell when device disconnects
    issue #321787891.
  * fastboot
  - Limit the maximum size of the incoming packet queue.
  - Remove bottlenecks that previously limited download speeds
    to around 120MB/s. Now fastboot can saturate a SuperSpeed+
    bus and achieve speeds up to 980MB/s, depending on the device.</changelog>
  <changelog author="olaf@aepfle.de" date="1719662400">- Use clang15 to fix build in SLE15</changelog>
  <changelog author="munix9@googlemail.com" date="1723896000">- Fix for Factory/TW: Add 'BuildRequires: pkgconfig(zlib)'</changelog>
  <changelog author="munix9@googlemail.com" date="1724932800">- Update to version 35.0.2
  * adb
  - Fix openscreen mDNS backend bug bringing down server on
    truncated query issue #294120933.
  - Make openscreen mDNS backend work on macOS.
  - Make openscreen mDNS backend default on all platforms.
  - Support to detect USB SuperSpeed+ (current and negotiated
    speeds) for diagnostic purposes.
  - Graceful shutdown: Release all USB interfaces on shutdown
    (all OSes).
  * CMake: Add option to link libusb with libudev
  * patches/adb: Combine similar patch to workaround nullability
    specifier
  * CMake: Add option to use bundled libusb library
  * CMake: Add option to use system fmt library
  * vendor: Don't use absolute dir for mkbootimg symlink
  * vendor: mkbootimg: Use builtin ${CMAKE_INSTALL_BINDIR} instead
    of relative bin
  * vendor: Remove unused native submodule
  * vendor: Remove unused incremental_delivery submodule
  * CMake: Remove leftovers after base submodule removal
  * Remove unused patch for libandroidfw
  * Remove libandroidfw: it was never used
  * CMake: Install adb man page
  * boringssl: Workaround compiler error with gcc-14 and _Generic
- Remove man-pages.tar.gz, use upstream man pages</changelog>
  <changelog author="munix9@googlemail.com" date="1724932801">- Fix build on i586.</changelog>
  <changelog author="olaf@aepfle.de" date="1727006400">- remove adb from bash-completion package for SLE15 because it is
  still part of bash-completion itself
- Use specific python versions for all SLE15 variants
- Require protobuf &gt;= 21 until earlier variants are supported again</changelog>
  <changelog author="munix9@googlemail.com" date="1729425600">- Fix build for Leap 16.0
- Add 'Provides: bundled(...)' where appropriate
- Clean up spec file</changelog>
  <changelog author="munix9@googlemail.com" date="1730808000">- Exclude ppc ppc64 and ppc64le: Bundled boringssl doesn't support
  the big endian architectures and dropped ppc64le support
- Simplify python3 requirements
- Simplify fix-install-completion.patch</changelog>
</package>
<package pkgid="81b89a5ad7d7f0753eb2e153ba4dce55ebfbc825054b62b5e4e6f1fc4c88d65046157ef509c3840c3ad948402b1a753ddddbb83bab1ffe4c00d9dc053b2f1ccf" name="android-tools-mkbootimg" arch="noarch">
  <version epoch="0" ver="35.0.2" rel="3.0.2.1.sr20241103"/>
  <changelog author="Andreas Schwab &lt;schwab@linux-m68k.org&gt;" date="1665921600">- Use python3.10 for 15.4</changelog>
  <changelog author="munix9@googlemail.com" date="1667649600">- Update to version 33.0.3p1
  * Fixed mkbootimg (see #78)
  * Added avbtool (see #79)
  * Fix for compatibility with Linux &gt;= 6.0 (see #74)
  * Removal of several obsolete patches
- Remove fix-mkbootimg-gki-path.patch (fixed upstream)
- Remove fix-lpmake-help-segfault.patch (fixed upstream)</changelog>
  <changelog author="munix9@googlemail.com" date="1670932800">- Update to version 33.0.3p2
  * Actually update submodules to 33.0.3 (see #100)
  * Initial support for MacOS (see #95 and #97)</changelog>
  <changelog author="munix9@googlemail.com" date="1677844800">- Update to version 34.0.0
  * Upgrade to platform-tools-34.0.0 (see #106)
  * adb
  - Fixed zero length packet sends for macOS
    (issuetracker: 208675141).
  - Addressed unstable connectivity (MacBook high speed cable):
    frequent adb disconnects.
  - Improved error message for adb push with insufficient number
    of arguments.
  * fastboot
  - Improved flashing: flashall will now skip reboots to
    userspace if it can.
  - Fixed zero length packet sends for macOS
    (issuetracker: 208675141).
  - Fixed flashing recovery.img resulting in wrong AVB footer.</changelog>
  <changelog author="munix9@googlemail.com" date="1684152000">- Update to version 34.0.1
  * Upgrade to platform-tools-34.0.1 (see #111)</changelog>
  <changelog author="munix9@googlemail.com" date="1688385600">- Fix for Factory/TW: Use protobuf &lt; 22.5
- Add f2fs-tools as a requirement: Required for 'fastboot format:f2fs ...'
  (link /usr/bin/make_f2fs to /usr/sbin/mkfs.f2fs)</changelog>
  <changelog author="olaf@aepfle.de" date="1690372800">- Use specific python versions for 15.4 and 15.5,
  otherwise stick with plain python3
- Remove Requires for a specific python version, the interpreter
  already creates a matching Requires</changelog>
  <changelog author="munix9@googlemail.com" date="1693915200">- Update to version 34.0.4
  * adb
  - Propagate -a (gListenAll) when adb forks an adb host server
    (previously, the flag only worked for adb -a server nodaemon)
  - Faster root and unroot
  - Reland Flag(env) guarding clear endpoint (device) feature
    for OSX usb start. (issue #270205252).
  * fastboot
  - Mac: remove retries on invalid IO iterator (flashing failure
    with LIBUSB_TRANSFER_CANCELLED)
  - Windows: fix "Sparse file is too large or invalid" when using
    "flashall"
  - All platforms: fix "ANDROID_PRODUCT_OUT not set" when using
    "update"
- Remove the files vendor.tar.gz and _service and strip
  "-mod=vendor" from GOFLAGS env var (currently superfluous)
- Remove protobuf version requirement</changelog>
  <changelog author="munix9@googlemail.com" date="1696075200">- Add upstream patch fix-add-make_f2fs-tool-for-fastboot.patch
  (gh#nmeum/android-tools#109)
- Remove the requirement for f2fs-tools</changelog>
  <changelog author="munix9@googlemail.com" date="1710504000">- Add upstream patch fix-add-sload_f2fs-tool.patch
  (gh#nmeum/android-tools#127) for the missing tool sload_f2fs
- Rework python3 dependencies (use %python3_fix_shebang for
  Factory)</changelog>
  <changelog author="munix9@googlemail.com" date="1710590400">- Use custom %python3_fix_shebang_path macro for Leap</changelog>
  <changelog author="munix9@googlemail.com" date="1711108800">- Update to version 34.0.5
  * adb
  - Previously, adb responded with a successful code when wireless
    pairing fails. Resolved this by returning a failure code (1) and
    user-facing error (error: protocol fault (couldn't read status
    message...)). echo $? now reports 1.
  - adb wait-for-disconnect is now operational for non-USB
    (wireless debugging).
  - Added new DbC interface for future support of ChromeOS over adb.
  * fastboot
  - Fixed flashall on Pixel 3 devices.
- Remove fix-add-make_f2fs-tool-for-fastboot.patch and
  fix-add-sload_f2fs-tool.patch (merged upstream)</changelog>
  <changelog author="munix9@googlemail.com" date="1714305600">- Update to version 35.0.1
  * adb
  - Switch to libusb as the default on Linux issue #270205252.
  - Fix adb startup on hosts without USB.
  - Fix adb hangs caused by USB devices incorrectly reporting
    zero-length descriptors issue #302212871.
  - Fix return code of adb shell when device disconnects
    issue #321787891.
  * fastboot
  - Limit the maximum size of the incoming packet queue.
  - Remove bottlenecks that previously limited download speeds
    to around 120MB/s. Now fastboot can saturate a SuperSpeed+
    bus and achieve speeds up to 980MB/s, depending on the device.</changelog>
  <changelog author="olaf@aepfle.de" date="1719662400">- Use clang15 to fix build in SLE15</changelog>
  <changelog author="munix9@googlemail.com" date="1723896000">- Fix for Factory/TW: Add 'BuildRequires: pkgconfig(zlib)'</changelog>
  <changelog author="munix9@googlemail.com" date="1724932800">- Update to version 35.0.2
  * adb
  - Fix openscreen mDNS backend bug bringing down server on
    truncated query issue #294120933.
  - Make openscreen mDNS backend work on macOS.
  - Make openscreen mDNS backend default on all platforms.
  - Support to detect USB SuperSpeed+ (current and negotiated
    speeds) for diagnostic purposes.
  - Graceful shutdown: Release all USB interfaces on shutdown
    (all OSes).
  * CMake: Add option to link libusb with libudev
  * patches/adb: Combine similar patch to workaround nullability
    specifier
  * CMake: Add option to use bundled libusb library
  * CMake: Add option to use system fmt library
  * vendor: Don't use absolute dir for mkbootimg symlink
  * vendor: mkbootimg: Use builtin ${CMAKE_INSTALL_BINDIR} instead
    of relative bin
  * vendor: Remove unused native submodule
  * vendor: Remove unused incremental_delivery submodule
  * CMake: Remove leftovers after base submodule removal
  * Remove unused patch for libandroidfw
  * Remove libandroidfw: it was never used
  * CMake: Install adb man page
  * boringssl: Workaround compiler error with gcc-14 and _Generic
- Remove man-pages.tar.gz, use upstream man pages</changelog>
  <changelog author="munix9@googlemail.com" date="1724932801">- Fix build on i586.</changelog>
  <changelog author="olaf@aepfle.de" date="1727006400">- remove adb from bash-completion package for SLE15 because it is
  still part of bash-completion itself
- Use specific python versions for all SLE15 variants
- Require protobuf &gt;= 21 until earlier variants are supported again</changelog>
  <changelog author="munix9@googlemail.com" date="1729425600">- Fix build for Leap 16.0
- Add 'Provides: bundled(...)' where appropriate
- Clean up spec file</changelog>
  <changelog author="munix9@googlemail.com" date="1730808000">- Exclude ppc ppc64 and ppc64le: Bundled boringssl doesn't support
  the big endian architectures and dropped ppc64le support
- Simplify python3 requirements
- Simplify fix-install-completion.patch</changelog>
</package>
<package pkgid="e9fea2654dac329bf0b237d33a258477c01dd31e76096163ef7fbd1c853b5e4ac0acd7967e18998d9b4a8172b609c6e4c8df277ec1882b83a1d3f0745a667858" name="android-tools-partition" arch="x86_64">
  <version epoch="0" ver="35.0.2" rel="3.0.2.1.sr20241103"/>
  <changelog author="Andreas Schwab &lt;schwab@linux-m68k.org&gt;" date="1665921600">- Use python3.10 for 15.4</changelog>
  <changelog author="munix9@googlemail.com" date="1667649600">- Update to version 33.0.3p1
  * Fixed mkbootimg (see #78)
  * Added avbtool (see #79)
  * Fix for compatibility with Linux &gt;= 6.0 (see #74)
  * Removal of several obsolete patches
- Remove fix-mkbootimg-gki-path.patch (fixed upstream)
- Remove fix-lpmake-help-segfault.patch (fixed upstream)</changelog>
  <changelog author="munix9@googlemail.com" date="1670932800">- Update to version 33.0.3p2
  * Actually update submodules to 33.0.3 (see #100)
  * Initial support for MacOS (see #95 and #97)</changelog>
  <changelog author="munix9@googlemail.com" date="1677844800">- Update to version 34.0.0
  * Upgrade to platform-tools-34.0.0 (see #106)
  * adb
  - Fixed zero length packet sends for macOS
    (issuetracker: 208675141).
  - Addressed unstable connectivity (MacBook high speed cable):
    frequent adb disconnects.
  - Improved error message for adb push with insufficient number
    of arguments.
  * fastboot
  - Improved flashing: flashall will now skip reboots to
    userspace if it can.
  - Fixed zero length packet sends for macOS
    (issuetracker: 208675141).
  - Fixed flashing recovery.img resulting in wrong AVB footer.</changelog>
  <changelog author="munix9@googlemail.com" date="1684152000">- Update to version 34.0.1
  * Upgrade to platform-tools-34.0.1 (see #111)</changelog>
  <changelog author="munix9@googlemail.com" date="1688385600">- Fix for Factory/TW: Use protobuf &lt; 22.5
- Add f2fs-tools as a requirement: Required for 'fastboot format:f2fs ...'
  (link /usr/bin/make_f2fs to /usr/sbin/mkfs.f2fs)</changelog>
  <changelog author="olaf@aepfle.de" date="1690372800">- Use specific python versions for 15.4 and 15.5,
  otherwise stick with plain python3
- Remove Requires for a specific python version, the interpreter
  already creates a matching Requires</changelog>
  <changelog author="munix9@googlemail.com" date="1693915200">- Update to version 34.0.4
  * adb
  - Propagate -a (gListenAll) when adb forks an adb host server
    (previously, the flag only worked for adb -a server nodaemon)
  - Faster root and unroot
  - Reland Flag(env) guarding clear endpoint (device) feature
    for OSX usb start. (issue #270205252).
  * fastboot
  - Mac: remove retries on invalid IO iterator (flashing failure
    with LIBUSB_TRANSFER_CANCELLED)
  - Windows: fix "Sparse file is too large or invalid" when using
    "flashall"
  - All platforms: fix "ANDROID_PRODUCT_OUT not set" when using
    "update"
- Remove the files vendor.tar.gz and _service and strip
  "-mod=vendor" from GOFLAGS env var (currently superfluous)
- Remove protobuf version requirement</changelog>
  <changelog author="munix9@googlemail.com" date="1696075200">- Add upstream patch fix-add-make_f2fs-tool-for-fastboot.patch
  (gh#nmeum/android-tools#109)
- Remove the requirement for f2fs-tools</changelog>
  <changelog author="munix9@googlemail.com" date="1710504000">- Add upstream patch fix-add-sload_f2fs-tool.patch
  (gh#nmeum/android-tools#127) for the missing tool sload_f2fs
- Rework python3 dependencies (use %python3_fix_shebang for
  Factory)</changelog>
  <changelog author="munix9@googlemail.com" date="1710590400">- Use custom %python3_fix_shebang_path macro for Leap</changelog>
  <changelog author="munix9@googlemail.com" date="1711108800">- Update to version 34.0.5
  * adb
  - Previously, adb responded with a successful code when wireless
    pairing fails. Resolved this by returning a failure code (1) and
    user-facing error (error: protocol fault (couldn't read status
    message...)). echo $? now reports 1.
  - adb wait-for-disconnect is now operational for non-USB
    (wireless debugging).
  - Added new DbC interface for future support of ChromeOS over adb.
  * fastboot
  - Fixed flashall on Pixel 3 devices.
- Remove fix-add-make_f2fs-tool-for-fastboot.patch and
  fix-add-sload_f2fs-tool.patch (merged upstream)</changelog>
  <changelog author="munix9@googlemail.com" date="1714305600">- Update to version 35.0.1
  * adb
  - Switch to libusb as the default on Linux issue #270205252.
  - Fix adb startup on hosts without USB.
  - Fix adb hangs caused by USB devices incorrectly reporting
    zero-length descriptors issue #302212871.
  - Fix return code of adb shell when device disconnects
    issue #321787891.
  * fastboot
  - Limit the maximum size of the incoming packet queue.
  - Remove bottlenecks that previously limited download speeds
    to around 120MB/s. Now fastboot can saturate a SuperSpeed+
    bus and achieve speeds up to 980MB/s, depending on the device.</changelog>
  <changelog author="olaf@aepfle.de" date="1719662400">- Use clang15 to fix build in SLE15</changelog>
  <changelog author="munix9@googlemail.com" date="1723896000">- Fix for Factory/TW: Add 'BuildRequires: pkgconfig(zlib)'</changelog>
  <changelog author="munix9@googlemail.com" date="1724932800">- Update to version 35.0.2
  * adb
  - Fix openscreen mDNS backend bug bringing down server on
    truncated query issue #294120933.
  - Make openscreen mDNS backend work on macOS.
  - Make openscreen mDNS backend default on all platforms.
  - Support to detect USB SuperSpeed+ (current and negotiated
    speeds) for diagnostic purposes.
  - Graceful shutdown: Release all USB interfaces on shutdown
    (all OSes).
  * CMake: Add option to link libusb with libudev
  * patches/adb: Combine similar patch to workaround nullability
    specifier
  * CMake: Add option to use bundled libusb library
  * CMake: Add option to use system fmt library
  * vendor: Don't use absolute dir for mkbootimg symlink
  * vendor: mkbootimg: Use builtin ${CMAKE_INSTALL_BINDIR} instead
    of relative bin
  * vendor: Remove unused native submodule
  * vendor: Remove unused incremental_delivery submodule
  * CMake: Remove leftovers after base submodule removal
  * Remove unused patch for libandroidfw
  * Remove libandroidfw: it was never used
  * CMake: Install adb man page
  * boringssl: Workaround compiler error with gcc-14 and _Generic
- Remove man-pages.tar.gz, use upstream man pages</changelog>
  <changelog author="munix9@googlemail.com" date="1724932801">- Fix build on i586.</changelog>
  <changelog author="olaf@aepfle.de" date="1727006400">- remove adb from bash-completion package for SLE15 because it is
  still part of bash-completion itself
- Use specific python versions for all SLE15 variants
- Require protobuf &gt;= 21 until earlier variants are supported again</changelog>
  <changelog author="munix9@googlemail.com" date="1729425600">- Fix build for Leap 16.0
- Add 'Provides: bundled(...)' where appropriate
- Clean up spec file</changelog>
  <changelog author="munix9@googlemail.com" date="1730808000">- Exclude ppc ppc64 and ppc64le: Bundled boringssl doesn't support
  the big endian architectures and dropped ppc64le support
- Simplify python3 requirements
- Simplify fix-install-completion.patch</changelog>
</package>
<package pkgid="9a906fa621a01bf97199c77542d17bf6a5ffdb7e71ec54a7ed2d7c4e34fcece89b2a7d1f9598442ddc70821f15c6d0a96e8613a93cd2ca5379137586ee9ad891" name="android-tools-partition-debuginfo" arch="x86_64">
  <version epoch="0" ver="35.0.2" rel="3.0.2.1.sr20241103"/>
  <changelog author="Andreas Schwab &lt;schwab@linux-m68k.org&gt;" date="1665921600">- Use python3.10 for 15.4</changelog>
  <changelog author="munix9@googlemail.com" date="1667649600">- Update to version 33.0.3p1
  * Fixed mkbootimg (see #78)
  * Added avbtool (see #79)
  * Fix for compatibility with Linux &gt;= 6.0 (see #74)
  * Removal of several obsolete patches
- Remove fix-mkbootimg-gki-path.patch (fixed upstream)
- Remove fix-lpmake-help-segfault.patch (fixed upstream)</changelog>
  <changelog author="munix9@googlemail.com" date="1670932800">- Update to version 33.0.3p2
  * Actually update submodules to 33.0.3 (see #100)
  * Initial support for MacOS (see #95 and #97)</changelog>
  <changelog author="munix9@googlemail.com" date="1677844800">- Update to version 34.0.0
  * Upgrade to platform-tools-34.0.0 (see #106)
  * adb
  - Fixed zero length packet sends for macOS
    (issuetracker: 208675141).
  - Addressed unstable connectivity (MacBook high speed cable):
    frequent adb disconnects.
  - Improved error message for adb push with insufficient number
    of arguments.
  * fastboot
  - Improved flashing: flashall will now skip reboots to
    userspace if it can.
  - Fixed zero length packet sends for macOS
    (issuetracker: 208675141).
  - Fixed flashing recovery.img resulting in wrong AVB footer.</changelog>
  <changelog author="munix9@googlemail.com" date="1684152000">- Update to version 34.0.1
  * Upgrade to platform-tools-34.0.1 (see #111)</changelog>
  <changelog author="munix9@googlemail.com" date="1688385600">- Fix for Factory/TW: Use protobuf &lt; 22.5
- Add f2fs-tools as a requirement: Required for 'fastboot format:f2fs ...'
  (link /usr/bin/make_f2fs to /usr/sbin/mkfs.f2fs)</changelog>
  <changelog author="olaf@aepfle.de" date="1690372800">- Use specific python versions for 15.4 and 15.5,
  otherwise stick with plain python3
- Remove Requires for a specific python version, the interpreter
  already creates a matching Requires</changelog>
  <changelog author="munix9@googlemail.com" date="1693915200">- Update to version 34.0.4
  * adb
  - Propagate -a (gListenAll) when adb forks an adb host server
    (previously, the flag only worked for adb -a server nodaemon)
  - Faster root and unroot
  - Reland Flag(env) guarding clear endpoint (device) feature
    for OSX usb start. (issue #270205252).
  * fastboot
  - Mac: remove retries on invalid IO iterator (flashing failure
    with LIBUSB_TRANSFER_CANCELLED)
  - Windows: fix "Sparse file is too large or invalid" when using
    "flashall"
  - All platforms: fix "ANDROID_PRODUCT_OUT not set" when using
    "update"
- Remove the files vendor.tar.gz and _service and strip
  "-mod=vendor" from GOFLAGS env var (currently superfluous)
- Remove protobuf version requirement</changelog>
  <changelog author="munix9@googlemail.com" date="1696075200">- Add upstream patch fix-add-make_f2fs-tool-for-fastboot.patch
  (gh#nmeum/android-tools#109)
- Remove the requirement for f2fs-tools</changelog>
  <changelog author="munix9@googlemail.com" date="1710504000">- Add upstream patch fix-add-sload_f2fs-tool.patch
  (gh#nmeum/android-tools#127) for the missing tool sload_f2fs
- Rework python3 dependencies (use %python3_fix_shebang for
  Factory)</changelog>
  <changelog author="munix9@googlemail.com" date="1710590400">- Use custom %python3_fix_shebang_path macro for Leap</changelog>
  <changelog author="munix9@googlemail.com" date="1711108800">- Update to version 34.0.5
  * adb
  - Previously, adb responded with a successful code when wireless
    pairing fails. Resolved this by returning a failure code (1) and
    user-facing error (error: protocol fault (couldn't read status
    message...)). echo $? now reports 1.
  - adb wait-for-disconnect is now operational for non-USB
    (wireless debugging).
  - Added new DbC interface for future support of ChromeOS over adb.
  * fastboot
  - Fixed flashall on Pixel 3 devices.
- Remove fix-add-make_f2fs-tool-for-fastboot.patch and
  fix-add-sload_f2fs-tool.patch (merged upstream)</changelog>
  <changelog author="munix9@googlemail.com" date="1714305600">- Update to version 35.0.1
  * adb
  - Switch to libusb as the default on Linux issue #270205252.
  - Fix adb startup on hosts without USB.
  - Fix adb hangs caused by USB devices incorrectly reporting
    zero-length descriptors issue #302212871.
  - Fix return code of adb shell when device disconnects
    issue #321787891.
  * fastboot
  - Limit the maximum size of the incoming packet queue.
  - Remove bottlenecks that previously limited download speeds
    to around 120MB/s. Now fastboot can saturate a SuperSpeed+
    bus and achieve speeds up to 980MB/s, depending on the device.</changelog>
  <changelog author="olaf@aepfle.de" date="1719662400">- Use clang15 to fix build in SLE15</changelog>
  <changelog author="munix9@googlemail.com" date="1723896000">- Fix for Factory/TW: Add 'BuildRequires: pkgconfig(zlib)'</changelog>
  <changelog author="munix9@googlemail.com" date="1724932800">- Update to version 35.0.2
  * adb
  - Fix openscreen mDNS backend bug bringing down server on
    truncated query issue #294120933.
  - Make openscreen mDNS backend work on macOS.
  - Make openscreen mDNS backend default on all platforms.
  - Support to detect USB SuperSpeed+ (current and negotiated
    speeds) for diagnostic purposes.
  - Graceful shutdown: Release all USB interfaces on shutdown
    (all OSes).
  * CMake: Add option to link libusb with libudev
  * patches/adb: Combine similar patch to workaround nullability
    specifier
  * CMake: Add option to use bundled libusb library
  * CMake: Add option to use system fmt library
  * vendor: Don't use absolute dir for mkbootimg symlink
  * vendor: mkbootimg: Use builtin ${CMAKE_INSTALL_BINDIR} instead
    of relative bin
  * vendor: Remove unused native submodule
  * vendor: Remove unused incremental_delivery submodule
  * CMake: Remove leftovers after base submodule removal
  * Remove unused patch for libandroidfw
  * Remove libandroidfw: it was never used
  * CMake: Install adb man page
  * boringssl: Workaround compiler error with gcc-14 and _Generic
- Remove man-pages.tar.gz, use upstream man pages</changelog>
  <changelog author="munix9@googlemail.com" date="1724932801">- Fix build on i586.</changelog>
  <changelog author="olaf@aepfle.de" date="1727006400">- remove adb from bash-completion package for SLE15 because it is
  still part of bash-completion itself
- Use specific python versions for all SLE15 variants
- Require protobuf &gt;= 21 until earlier variants are supported again</changelog>
  <changelog author="munix9@googlemail.com" date="1729425600">- Fix build for Leap 16.0
- Add 'Provides: bundled(...)' where appropriate
- Clean up spec file</changelog>
  <changelog author="munix9@googlemail.com" date="1730808000">- Exclude ppc ppc64 and ppc64le: Bundled boringssl doesn't support
  the big endian architectures and dropped ppc64le support
- Simplify python3 requirements
- Simplify fix-install-completion.patch</changelog>
</package>
<package pkgid="57abf83404f589a03ad1b14425dd99f21f81041c7b85f6f3619d02f62c3b32c178aa7b1b6eae56d3fd751e31353b82c8497bc3bd3fb582411ccc8b8e3c708bc5" name="angelfish" arch="src">
  <version epoch="0" ver="24.08.3" rel="1.1"/>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1688472000">- Update to 23.04.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.04.3/
- No code change since 23.04.2</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1690891200">- Update to 23.07.80
  * New feature release
- Changes since 23.04.3:
  * Revert "Add dropdown dialog implementation"
  * Revert "Add appropriate licensing, and change app license to GPLv3"
  * Revert "desktop: Fix dropdown override dialog"
  * Revert SelectDropdownOverrideDialog.qml parts of "Port from OverlaySheet to Dialog"
  * Use work branch for dependabot
  * Add dependabot config
  * flatpak: Update qcoro and futuresql
  * flatpak: Regenerate sources
  * Update rust dependencies
  * Port database operations to FutureSQL
  * Make the desktop style an optional dependency
  * flatpak: Update kirigami-addons
  * flatpak: Update corrosion
  * change Drawer style
  * Regenerate flatpak sources
  * Update rust crates
  * flatpak: Update ffmpeg extension</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1692014400">- Update to 23.07.90
  * New feature release
- No code change since 23.07.80</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1692532800">- Update to 23.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.0/
- No code change since 23.07.90</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1694520000">- Update to 23.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.1/
- No code change since 23.08.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1696939200">- Update to 23.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.2/
- Changes since 23.08.1:
  * snapcraft: Fix qcoroquick dependency, we are still qt5 in release branch.
  * snapcraft: add missing runtime lib.
  * Add snapcraft files</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1699358400">- Update to 23.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.3/
- Changes since 23.08.2:
  * snapcraft: bump content pack version, remove deps now in content pack.</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1701777600">- Update to 23.08.4
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.4/
- No code change since 23.08.3</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1707480000">- Update to 24.01.95
  * https://kde.org/announcements/megarelease/6/rc2/</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1708689600">- Update to 24.02.0
  * New feature release
- Changes since 24.01.95:
  * WebApp: Fix not launching on Qt6
  * desktop: Fix switching tabs</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1710849600">- Update to 24.02.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.1/
- Changes since 24.02.0:
  * Fix download list page having uninteractable action buttons
  * Fix downloads not being prompted and starting
  * Fix history clearing not working CCBUG: 478890
  * Fix desktop tabs
  * UrlDelegate: Fix deleting entries
  * Fix remove button
  * Fix bookmarks and history page not working on mobile It appears changes were done on the desktop UI, and they were not tested on the mobile UI.
  * appstream: Update developer name</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1712664000">- Update to 24.02.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.2/
- No code change since 24.02.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1714737600">- Update to 24.04.80
  * New feature release
- Changes since 24.02.2:
  * Fix download list page having uninteractable action buttons
  * Fix downloads not being prompted and starting
  * Fix history clearing not working
  * Fix desktop tabs
  * UrlDelegate: Fix deleting entries
  * Fix remove button
  * Fix bookmarks and history page not working on mobile
  * appstream: Update developer name
  * Update rust crates
  * WebApp: Fix not launching on Qt6
  * desktop: Fix switching tabs
  * metainfo: Change name to just Angelfish</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1716120000">- Update to 24.05.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.0/
- Changes since 24.04.80:
  * Fix build with corrosion 0.5</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1718193600">- Update to 24.05.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.1/
- Changes since 24.05.0:
  * flatpak: Update kirigami-addons
  * flatpak: Update to 6.7 Sdk</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1719921600">- Update to 24.05.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.2/
- Changes since 24.05.1:
  * Fix icon caching</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1724068800">- Update to 24.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.0/
- Too many changes since 24.05.2, only listing bugfixes:
  * Default to not switching to new tabs (kde#486463)
  * Don't display error handler for HTTP status codes (kde#486463)</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1725969600">- Update to 24.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.1/
- No code change since 24.08.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1728388800">- Update to 24.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.2/
- No code change since 24.08.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1730808000">- Update to 24.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.3/
- No code change since 24.08.2</changelog>
</package>
<package pkgid="050e690e27db1970ac5bacda6d3b0acad8da7f33b4335ea1b16a4f8f0e9da1705437e3d9e0574b2261b6c8d19e8a8638827549144fe4443e7f46414db593ce77" name="angelfish" arch="x86_64">
  <version epoch="0" ver="24.08.3" rel="1.1"/>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1688472000">- Update to 23.04.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.04.3/
- No code change since 23.04.2</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1690891200">- Update to 23.07.80
  * New feature release
- Changes since 23.04.3:
  * Revert "Add dropdown dialog implementation"
  * Revert "Add appropriate licensing, and change app license to GPLv3"
  * Revert "desktop: Fix dropdown override dialog"
  * Revert SelectDropdownOverrideDialog.qml parts of "Port from OverlaySheet to Dialog"
  * Use work branch for dependabot
  * Add dependabot config
  * flatpak: Update qcoro and futuresql
  * flatpak: Regenerate sources
  * Update rust dependencies
  * Port database operations to FutureSQL
  * Make the desktop style an optional dependency
  * flatpak: Update kirigami-addons
  * flatpak: Update corrosion
  * change Drawer style
  * Regenerate flatpak sources
  * Update rust crates
  * flatpak: Update ffmpeg extension</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1692014400">- Update to 23.07.90
  * New feature release
- No code change since 23.07.80</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1692532800">- Update to 23.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.0/
- No code change since 23.07.90</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1694520000">- Update to 23.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.1/
- No code change since 23.08.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1696939200">- Update to 23.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.2/
- Changes since 23.08.1:
  * snapcraft: Fix qcoroquick dependency, we are still qt5 in release branch.
  * snapcraft: add missing runtime lib.
  * Add snapcraft files</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1699358400">- Update to 23.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.3/
- Changes since 23.08.2:
  * snapcraft: bump content pack version, remove deps now in content pack.</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1701777600">- Update to 23.08.4
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.4/
- No code change since 23.08.3</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1707480000">- Update to 24.01.95
  * https://kde.org/announcements/megarelease/6/rc2/</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1708689600">- Update to 24.02.0
  * New feature release
- Changes since 24.01.95:
  * WebApp: Fix not launching on Qt6
  * desktop: Fix switching tabs</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1710849600">- Update to 24.02.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.1/
- Changes since 24.02.0:
  * Fix download list page having uninteractable action buttons
  * Fix downloads not being prompted and starting
  * Fix history clearing not working CCBUG: 478890
  * Fix desktop tabs
  * UrlDelegate: Fix deleting entries
  * Fix remove button
  * Fix bookmarks and history page not working on mobile It appears changes were done on the desktop UI, and they were not tested on the mobile UI.
  * appstream: Update developer name</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1712664000">- Update to 24.02.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.2/
- No code change since 24.02.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1714737600">- Update to 24.04.80
  * New feature release
- Changes since 24.02.2:
  * Fix download list page having uninteractable action buttons
  * Fix downloads not being prompted and starting
  * Fix history clearing not working
  * Fix desktop tabs
  * UrlDelegate: Fix deleting entries
  * Fix remove button
  * Fix bookmarks and history page not working on mobile
  * appstream: Update developer name
  * Update rust crates
  * WebApp: Fix not launching on Qt6
  * desktop: Fix switching tabs
  * metainfo: Change name to just Angelfish</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1716120000">- Update to 24.05.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.0/
- Changes since 24.04.80:
  * Fix build with corrosion 0.5</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1718193600">- Update to 24.05.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.1/
- Changes since 24.05.0:
  * flatpak: Update kirigami-addons
  * flatpak: Update to 6.7 Sdk</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1719921600">- Update to 24.05.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.2/
- Changes since 24.05.1:
  * Fix icon caching</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1724068800">- Update to 24.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.0/
- Too many changes since 24.05.2, only listing bugfixes:
  * Default to not switching to new tabs (kde#486463)
  * Don't display error handler for HTTP status codes (kde#486463)</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1725969600">- Update to 24.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.1/
- No code change since 24.08.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1728388800">- Update to 24.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.2/
- No code change since 24.08.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1730808000">- Update to 24.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.3/
- No code change since 24.08.2</changelog>
</package>
<package pkgid="5c8abf52e4857039d7640493c028b765369ae2ebef78761c29153606e57bb7cc4acbad2ffb734947f0e3b992021c795c5d39db35ebf1d74827ca69c784301f49" name="angelfish-debuginfo" arch="x86_64">
  <version epoch="0" ver="24.08.3" rel="1.1"/>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1688472000">- Update to 23.04.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.04.3/
- No code change since 23.04.2</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1690891200">- Update to 23.07.80
  * New feature release
- Changes since 23.04.3:
  * Revert "Add dropdown dialog implementation"
  * Revert "Add appropriate licensing, and change app license to GPLv3"
  * Revert "desktop: Fix dropdown override dialog"
  * Revert SelectDropdownOverrideDialog.qml parts of "Port from OverlaySheet to Dialog"
  * Use work branch for dependabot
  * Add dependabot config
  * flatpak: Update qcoro and futuresql
  * flatpak: Regenerate sources
  * Update rust dependencies
  * Port database operations to FutureSQL
  * Make the desktop style an optional dependency
  * flatpak: Update kirigami-addons
  * flatpak: Update corrosion
  * change Drawer style
  * Regenerate flatpak sources
  * Update rust crates
  * flatpak: Update ffmpeg extension</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1692014400">- Update to 23.07.90
  * New feature release
- No code change since 23.07.80</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1692532800">- Update to 23.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.0/
- No code change since 23.07.90</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1694520000">- Update to 23.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.1/
- No code change since 23.08.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1696939200">- Update to 23.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.2/
- Changes since 23.08.1:
  * snapcraft: Fix qcoroquick dependency, we are still qt5 in release branch.
  * snapcraft: add missing runtime lib.
  * Add snapcraft files</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1699358400">- Update to 23.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.3/
- Changes since 23.08.2:
  * snapcraft: bump content pack version, remove deps now in content pack.</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1701777600">- Update to 23.08.4
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.4/
- No code change since 23.08.3</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1707480000">- Update to 24.01.95
  * https://kde.org/announcements/megarelease/6/rc2/</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1708689600">- Update to 24.02.0
  * New feature release
- Changes since 24.01.95:
  * WebApp: Fix not launching on Qt6
  * desktop: Fix switching tabs</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1710849600">- Update to 24.02.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.1/
- Changes since 24.02.0:
  * Fix download list page having uninteractable action buttons
  * Fix downloads not being prompted and starting
  * Fix history clearing not working CCBUG: 478890
  * Fix desktop tabs
  * UrlDelegate: Fix deleting entries
  * Fix remove button
  * Fix bookmarks and history page not working on mobile It appears changes were done on the desktop UI, and they were not tested on the mobile UI.
  * appstream: Update developer name</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1712664000">- Update to 24.02.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.2/
- No code change since 24.02.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1714737600">- Update to 24.04.80
  * New feature release
- Changes since 24.02.2:
  * Fix download list page having uninteractable action buttons
  * Fix downloads not being prompted and starting
  * Fix history clearing not working
  * Fix desktop tabs
  * UrlDelegate: Fix deleting entries
  * Fix remove button
  * Fix bookmarks and history page not working on mobile
  * appstream: Update developer name
  * Update rust crates
  * WebApp: Fix not launching on Qt6
  * desktop: Fix switching tabs
  * metainfo: Change name to just Angelfish</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1716120000">- Update to 24.05.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.0/
- Changes since 24.04.80:
  * Fix build with corrosion 0.5</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1718193600">- Update to 24.05.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.1/
- Changes since 24.05.0:
  * flatpak: Update kirigami-addons
  * flatpak: Update to 6.7 Sdk</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1719921600">- Update to 24.05.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.2/
- Changes since 24.05.1:
  * Fix icon caching</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1724068800">- Update to 24.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.0/
- Too many changes since 24.05.2, only listing bugfixes:
  * Default to not switching to new tabs (kde#486463)
  * Don't display error handler for HTTP status codes (kde#486463)</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1725969600">- Update to 24.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.1/
- No code change since 24.08.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1728388800">- Update to 24.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.2/
- No code change since 24.08.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1730808000">- Update to 24.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.3/
- No code change since 24.08.2</changelog>
</package>
<package pkgid="a81b10d1f99c4cd6f7a68d0882839a7a20080ad6aef466b2e86008bc091c1de345da8802dd318ff75a50ef261d400c16a61d47539e5a721a1a6b8afcd86e412d" name="angelfish-debugsource" arch="x86_64">
  <version epoch="0" ver="24.08.3" rel="1.1"/>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1688472000">- Update to 23.04.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.04.3/
- No code change since 23.04.2</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1690891200">- Update to 23.07.80
  * New feature release
- Changes since 23.04.3:
  * Revert "Add dropdown dialog implementation"
  * Revert "Add appropriate licensing, and change app license to GPLv3"
  * Revert "desktop: Fix dropdown override dialog"
  * Revert SelectDropdownOverrideDialog.qml parts of "Port from OverlaySheet to Dialog"
  * Use work branch for dependabot
  * Add dependabot config
  * flatpak: Update qcoro and futuresql
  * flatpak: Regenerate sources
  * Update rust dependencies
  * Port database operations to FutureSQL
  * Make the desktop style an optional dependency
  * flatpak: Update kirigami-addons
  * flatpak: Update corrosion
  * change Drawer style
  * Regenerate flatpak sources
  * Update rust crates
  * flatpak: Update ffmpeg extension</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1692014400">- Update to 23.07.90
  * New feature release
- No code change since 23.07.80</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1692532800">- Update to 23.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.0/
- No code change since 23.07.90</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1694520000">- Update to 23.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.1/
- No code change since 23.08.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1696939200">- Update to 23.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.2/
- Changes since 23.08.1:
  * snapcraft: Fix qcoroquick dependency, we are still qt5 in release branch.
  * snapcraft: add missing runtime lib.
  * Add snapcraft files</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1699358400">- Update to 23.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.3/
- Changes since 23.08.2:
  * snapcraft: bump content pack version, remove deps now in content pack.</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1701777600">- Update to 23.08.4
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.4/
- No code change since 23.08.3</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1707480000">- Update to 24.01.95
  * https://kde.org/announcements/megarelease/6/rc2/</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1708689600">- Update to 24.02.0
  * New feature release
- Changes since 24.01.95:
  * WebApp: Fix not launching on Qt6
  * desktop: Fix switching tabs</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1710849600">- Update to 24.02.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.1/
- Changes since 24.02.0:
  * Fix download list page having uninteractable action buttons
  * Fix downloads not being prompted and starting
  * Fix history clearing not working CCBUG: 478890
  * Fix desktop tabs
  * UrlDelegate: Fix deleting entries
  * Fix remove button
  * Fix bookmarks and history page not working on mobile It appears changes were done on the desktop UI, and they were not tested on the mobile UI.
  * appstream: Update developer name</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1712664000">- Update to 24.02.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.2/
- No code change since 24.02.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1714737600">- Update to 24.04.80
  * New feature release
- Changes since 24.02.2:
  * Fix download list page having uninteractable action buttons
  * Fix downloads not being prompted and starting
  * Fix history clearing not working
  * Fix desktop tabs
  * UrlDelegate: Fix deleting entries
  * Fix remove button
  * Fix bookmarks and history page not working on mobile
  * appstream: Update developer name
  * Update rust crates
  * WebApp: Fix not launching on Qt6
  * desktop: Fix switching tabs
  * metainfo: Change name to just Angelfish</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1716120000">- Update to 24.05.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.0/
- Changes since 24.04.80:
  * Fix build with corrosion 0.5</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1718193600">- Update to 24.05.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.1/
- Changes since 24.05.0:
  * flatpak: Update kirigami-addons
  * flatpak: Update to 6.7 Sdk</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1719921600">- Update to 24.05.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.2/
- Changes since 24.05.1:
  * Fix icon caching</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1724068800">- Update to 24.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.0/
- Too many changes since 24.05.2, only listing bugfixes:
  * Default to not switching to new tabs (kde#486463)
  * Don't display error handler for HTTP status codes (kde#486463)</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1725969600">- Update to 24.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.1/
- No code change since 24.08.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1728388800">- Update to 24.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.2/
- No code change since 24.08.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1730808000">- Update to 24.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.3/
- No code change since 24.08.2</changelog>
</package>
<package pkgid="8a8f551be13869c51ab206f4c7e334abea0c2e9a765a4fdb2c8c77636645e48cf782d809ef2b742977d1e58c52ffb0fa08594e0de358554d2b7a004ec50a018a" name="angelfish-lang" arch="noarch">
  <version epoch="0" ver="24.08.3" rel="1.1"/>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1688472000">- Update to 23.04.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.04.3/
- No code change since 23.04.2</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1690891200">- Update to 23.07.80
  * New feature release
- Changes since 23.04.3:
  * Revert "Add dropdown dialog implementation"
  * Revert "Add appropriate licensing, and change app license to GPLv3"
  * Revert "desktop: Fix dropdown override dialog"
  * Revert SelectDropdownOverrideDialog.qml parts of "Port from OverlaySheet to Dialog"
  * Use work branch for dependabot
  * Add dependabot config
  * flatpak: Update qcoro and futuresql
  * flatpak: Regenerate sources
  * Update rust dependencies
  * Port database operations to FutureSQL
  * Make the desktop style an optional dependency
  * flatpak: Update kirigami-addons
  * flatpak: Update corrosion
  * change Drawer style
  * Regenerate flatpak sources
  * Update rust crates
  * flatpak: Update ffmpeg extension</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1692014400">- Update to 23.07.90
  * New feature release
- No code change since 23.07.80</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1692532800">- Update to 23.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.0/
- No code change since 23.07.90</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1694520000">- Update to 23.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.1/
- No code change since 23.08.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1696939200">- Update to 23.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.2/
- Changes since 23.08.1:
  * snapcraft: Fix qcoroquick dependency, we are still qt5 in release branch.
  * snapcraft: add missing runtime lib.
  * Add snapcraft files</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1699358400">- Update to 23.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.3/
- Changes since 23.08.2:
  * snapcraft: bump content pack version, remove deps now in content pack.</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1701777600">- Update to 23.08.4
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/23.08.4/
- No code change since 23.08.3</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1707480000">- Update to 24.01.95
  * https://kde.org/announcements/megarelease/6/rc2/</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1708689600">- Update to 24.02.0
  * New feature release
- Changes since 24.01.95:
  * WebApp: Fix not launching on Qt6
  * desktop: Fix switching tabs</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1710849600">- Update to 24.02.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.1/
- Changes since 24.02.0:
  * Fix download list page having uninteractable action buttons
  * Fix downloads not being prompted and starting
  * Fix history clearing not working CCBUG: 478890
  * Fix desktop tabs
  * UrlDelegate: Fix deleting entries
  * Fix remove button
  * Fix bookmarks and history page not working on mobile It appears changes were done on the desktop UI, and they were not tested on the mobile UI.
  * appstream: Update developer name</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1712664000">- Update to 24.02.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.02.2/
- No code change since 24.02.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1714737600">- Update to 24.04.80
  * New feature release
- Changes since 24.02.2:
  * Fix download list page having uninteractable action buttons
  * Fix downloads not being prompted and starting
  * Fix history clearing not working
  * Fix desktop tabs
  * UrlDelegate: Fix deleting entries
  * Fix remove button
  * Fix bookmarks and history page not working on mobile
  * appstream: Update developer name
  * Update rust crates
  * WebApp: Fix not launching on Qt6
  * desktop: Fix switching tabs
  * metainfo: Change name to just Angelfish</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1716120000">- Update to 24.05.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.0/
- Changes since 24.04.80:
  * Fix build with corrosion 0.5</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1718193600">- Update to 24.05.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.1/
- Changes since 24.05.0:
  * flatpak: Update kirigami-addons
  * flatpak: Update to 6.7 Sdk</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1719921600">- Update to 24.05.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.05.2/
- Changes since 24.05.1:
  * Fix icon caching</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1724068800">- Update to 24.08.0
  * New feature release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.0/
- Too many changes since 24.05.2, only listing bugfixes:
  * Default to not switching to new tabs (kde#486463)
  * Don't display error handler for HTTP status codes (kde#486463)</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1725969600">- Update to 24.08.1
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.1/
- No code change since 24.08.0</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1728388800">- Update to 24.08.2
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.2/
- No code change since 24.08.1</changelog>
  <changelog author="Christophe Marin &lt;christophe@krop.fr&gt;" date="1730808000">- Update to 24.08.3
  * New bugfix release
  * For more details please see:
  * https://kde.org/announcements/gear/24.08.3/
- No code change since 24.08.2</changelog>
</package>
<package pkgid="7ea674fb6565796f0871f7e1f0893a2a074b95352bb48119753ad2a5bb3f5628ec1bd44e210293ccd603fa8b4d3924377311bdac6e0a9b24a2f92d8a292b72a5" name="ansible-core-2.16" arch="noarch">
  <version epoch="0" ver="2.16.13" rel="1.0.2.1.sr20241103"/>
  <changelog author="Johannes Kastl &lt;kastl@b1-systems.de&gt;" date="1696939200">- update to 2.15.5:
  * Minor Changes
  - ansible-galaxy dependency resolution messages have changed
    the unexplained 'virtual' collection for the specific type
    ('scm', 'dir', etc) that is more user friendly
  * Security Fixes
  - ansible-galaxy - Prevent roles from using symlinks to
    overwrite files outside of the installation directory
    (CVE-2023-5115)
  * Bugfixes
  - Allow for searching handler subdir for included task via
    include_role (#81722)
  - PluginLoader - fix Jinja plugin performance issues (#79652)
  - ansible.module_utils.service - ensure binary data
    transmission in daemonize()
  - ansible.module_utils.service - fix inter-process
    communication in daemonize()
  - ansible-galaxy - started allowing the use of pre-releases for
    collections that do not have any stable versions published.
    (#81606)
  - ansible-galaxy - started allowing the use of pre-releases for
    dependencies on any level of the dependency tree that
    specifically demand exact pre-release versions of collections
    and not version ranges. (#81606)
  - ansible-galaxy error on dependency resolution will not error
    itself due to 'virtual' collections not having a
    name/namespace.
  - ansible-galaxy info - fix reporting no role found when
    lookup_role_by_name returns None.
  - role deduplication - don't deduplicate before a role has had
    a task run for that particular host (#81486).
  - uri/urls - Add compat function to handle the ability to parse
    the filename from a Content-Disposition header (#81806)
  - winrm - Better handle send input failures when communicating
    with hosts under load</changelog>
  <changelog author="Johannes Kastl &lt;kastl@b1-systems.de&gt;" date="1699358400">- update to 2.15.6:
  * Minor Changes
  - ansible-test - Windows 2012 and 2012-R2 instances are now
    requested from Azure instead of AWS.
  * Bugfixes
  - Fix run_once being incorrectly interpreted on handlers
    (#81666)
  - Plugin loader does not dedupe nor cache filter/test plugins
    by file basename, but full path name.
  - Properly template tags in parent blocks (#81053)
  - Restoring the ability of filters/tests can have same file
    base name but different tests/filters defined inside.
  - import_role reverts to previous behavior of exporting vars at
    compile time.
  - ansible-galaxy - Provide a better error message when using a
    requirements file with an invalid format - #81901
  - ansible-inventory - index available_hosts for major
    performance boost when dumping large inventories
  - ansible-test - Fix parsing of cgroup entries which contain a
    : in the path (#81977).</changelog>
  <changelog author="Johannes Kastl &lt;kastl@b1-systems.de&gt;" date="1701777600">- update to 2.15.7:
  This release includes a fix for CVE-2023-5764, where internal
  templating actions could result in unsafe data losing its unsafe
  designation.
  * Breaking Changes / Porting Guide
  - assert - Nested templating may result in an inability for the
    conditional to be evaluated. See the porting guide for more
    information.
  * Security Fixes
  - templating - Address issues where internal templating can
    cause unsafe variables to lose their unsafe designation
    (CVE-2023-5764)
  * Bugfixes
  - ansible-pull now will expand relative paths for the
  - d|--directory option is now expanded before use.
  - flush_handlers - properly handle a handler failure in a
    nested block when force_handlers is set
    (http://github.com/ansible/ansible/issues/81532)
  - module no_log will no longer affect top level booleans, for
    example no_log_module_parameter='a' will no longer hide
    changed=False as a 'no log value' (matches 'a').
  - modules/user.py - Add check for valid directory when creating
    new user homedir (allows /dev/null as skeleton) (#75063)
  - role params now have higher precedence than host facts again,
    matching documentation, this had unintentionally changed in
    2.15.
  - wait_for should not handle 'non mmapable files' again.</changelog>
  <changelog author="Johannes Kastl &lt;kastl@b1-systems.de&gt;" date="1702382400">- update to 2.15.8:
  * Minor Changes
  - ansible-test - Add FreeBSD 13.2 remote.
  - ansible-test - Removed freebsd/13.1 remote.
  * Bugfixes
  - unsafe data - Address an incompatibility when iterating or
    getting a single index from AnsibleUnsafeBytes
  - unsafe data - Address an incompatibility with
    AnsibleUnsafeText and AnsibleUnsafeBytes when pickling with
    protocol=0</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1705838400">- update to 2.16.0:
  https://github.com/ansible/ansible/blob/v2.16.0/changelogs/CHANGELOG-v2.16.rst
  * Bugfixes and Minor changes omitted for brevity, see full
    changelog
  * Breaking Changes / Porting Guide
  - Any plugin using the config system and the cli entry to use
    the timeout from the command line, will see the value change
    if the use had configured it in any of the lower precedence
    methods. If relying on this behaviour to consume the
    global/generic timeout from the DEFAULT_TIMEOUT constant,
    please consult the documentation on plugin configuration to
    add the overlaping entries.
  - ansible-test - Test plugins that rely on containers no longer
    support reusing running containers. The previous behavior was
    an undocumented, untested feature.
  - service module will not permanently configure variables/flags
    for openbsd when doing enable/disable operation anymore, this
    module was never meant to do this type of work, just to
    manage the service state itself. A rcctl_config or similar
    module should be created and used instead.
  * Deprecated Features
  - Deprecated ini config option collections_paths, use the
    singular form collections_path instead
  - Deprecated the env var ANSIBLE_COLLECTIONS_PATHS, use the
    singular form ANSIBLE_COLLECTIONS_PATH instead
  - Old style vars plugins which use the entrypoints
    get_host_vars or get_group_vars are deprecated. The plugin
    should be updated to inherit from BaseVarsPlugin and define a
    get_vars method as the entrypoint.
  - Support for Windows Server 2012 and 2012 R2 has been removed
    as the support end of life from Microsoft is October 10th
    2023. These versions of Windows will no longer be tested in
    this Ansible release and it cannot be guaranteed that they
    will continue to work going forward.
  - STRING_CONVERSION_ACTION config option is deprecated as it is
    no longer used in the Ansible Core code base.
  - the 'smart' option for setting a connection plugin is being
    removed as it's main purpose (choosing between ssh and
    paramiko) is now irrelevant.
  - vault and unfault filters - the undocumented vaultid
    parameter is deprecated and will be removed in ansible-core
    2.20. Use vault_id instead.
  - yum_repository - deprecated parameter 'keepcache' (#78693).
  * Removed Features (previously deprecated)
  - ActionBase - remove deprecated _remote_checksum method
  - PlayIterator - remove deprecated cache_block_tasks and
    get_original_task methods
  - Remove deprecated FileLock class
  - Removed Python 3.9 as a supported version on the controller.
    Python 3.10 or newer is required.
  - Removed include which has been deprecated in Ansible 2.12.
    Use include_tasks or import_tasks instead.
  - Templar - remove deprecated shared_loader_obj parameter of
    __init__
  - fetch_url - remove auto disabling decompress when gzip is not
    available
  - get_action_args_with_defaults - remove deprecated
    redirected_names method parameter
  - ansible-test - Removed support for the remote Windows targets
    2012 and 2012-R2
  - inventory_cache - remove deprecated
    default.fact_caching_prefix ini configuration option, use
    defaults.fact_caching_prefix instead.
  - module_utils/basic.py - Removed Python 3.5 as a supported
    remote version. Python 2.7 or Python 3.6+ is now required.
  - stat - removed unused get_md5 parameter.
  * Security Fixes
  - ansible-galaxy - Prevent roles from using symlinks to
    overwrite files outside of the installation directory
    (CVE-2023-5115)
  * Known issues
  - ansible-galaxy - dies in the middle of installing a role when
    that role contains Java inner classes (files with $ in the
    file name). This is by design, to exclude temporary or backup
    files. (#81553).
  - ansible-test - The pep8 sanity test is unable to detect
    f-string spacing issues (E201, E202) on Python 3.10 and 3.11.
    They are correctly detected under Python 3.12. See
    (PyCQA/pycodestyle#1190).</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1705838401">- update to 2.16.1:
  https://github.com/ansible/ansible/blob/v2.16.1/changelogs/CHANGELOG-v2.16.rst
  * Breaking Changes / Porting Guide
  - assert - Nested templating may result in an inability for the
    conditional to be evaluated. See the porting guide for more
    information.
  * Security Fixes
  - templating - Address issues where internal templating can
    cause unsafe variables to lose their unsafe designation
    (CVE-2023-5764)
  * Bugfixes
  - Fix issue where an include_tasks handler in a role was not
    able to locate a file in tasks/ when tasks_from was used as a
    role entry point and main.yml was not present (#82241)
  - Plugin loader does not dedupe nor cache filter/test plugins
    by file basename, but full path name.
  - Restoring the ability of filters/tests can have same file
    base name but different tests/filters defined inside.
  - ansible-pull now will expand relative paths for the
  - d|--directory option is now expanded before use.
  - ansible-pull will now correctly handle become and connection
    password file options for ansible-playbook.
  - flush_handlers - properly handle a handler failure in a
    nested block when force_handlers is set
    (http://github.com/ansible/ansible/issues/81532)
  - module no_log will no longer affect top level booleans, for
    example no_log_module_parameter='a' will no longer hide
    changed=False as a 'no log value' (matches 'a').
  - role params now have higher precedence than host facts again,
    matching documentation, this had unintentionally changed in
    2.15.
  - wait_for should not handle 'non mmapable files' again.</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1705838402">- update to 2.16.2:
  https://github.com/ansible/ansible/blob/v2.16.2/changelogs/CHANGELOG-v2.16.rst
  * Bugfixes
  - unsafe data - Address an incompatibility when iterating or
    getting a single index from AnsibleUnsafeBytes
  - unsafe data - Address an incompatibility with
    AnsibleUnsafeText and AnsibleUnsafeBytes when pickling with
    protocol=0</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1706616000">- update to 2.16.3:
  https://github.com/ansible/ansible/blob/v2.16.3/changelogs/CHANGELOG-v2.16.rst
  * Security Fixes
  - ANSIBLE_NO_LOG - Address issue where ANSIBLE_NO_LOG was
    ignored (CVE-2024-0690)
  * Bugfixes
  - Run all handlers with the same listen topic, even when
    notified from another handler (#82363).
  - ansible-galaxy role import - fix using the role_name in a
    standalone role's galaxy_info metadata by disabling automatic
    removal of the ansible-role- prefix. This matches the
    behavior of the Galaxy UI which also no longer implicitly
    removes the ansible-role- prefix. Use the --role-name option
    or add a role_name to the galaxy_info dictionary in the
    role's meta/main.yml to use an alternate role name.
  - ansible-test sanity --test runtime-metadata - add
    action_plugin as a valid field for modules in the schema
    (#82562).
  - ansible-config init will now dedupe ini entries from plugins.
  - ansible-galaxy role import - exit with 1 when the import
    fails (#82175).
  - ansible-galaxy role install - normalize tarfile paths and
    symlinks using ansible.utils.path.unfrackpath and consider
    them valid as long as the realpath is in the tarfile's role
    directory (#81965).
  - delegate_to when set to an empty or undefined variable will
    now give a proper error.
  - dwim functions for lookups should be better at detectging
    role context even in abscense of tasks/main.
  - roles, code cleanup and performance optimization of
    dependencies, now cached, and public setting is now
    determined once, at role instantiation.
  - roles, the static property is now correctly set, this will
    fix issues with public and DEFAULT_PRIVATE_ROLE_VARS controls
    on exporting vars.
  - unsafe data - Enable directly using AnsibleUnsafeText with
    Python pathlib (#82414)</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1710590400">- update to 2.16.4:
  https://github.com/ansible/ansible/blob/v2.16.4/changelogs/CHANGELOG-v2.16.rst
  * Bugfixes
  - Fix loading vars_plugins in roles (#82239).
  - expect - fix argument spec error using timeout=null (#80982).
  - include_vars - fix calculating depth relative to the root and
    ensure all files are included (#80987).
  - templating - ensure syntax errors originating from a template
    being compiled into Python code object result in a failure
    (#82606)</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1711540800">- update to 2.16.5:
  https://github.com/ansible/ansible/blob/v2.16.5/changelogs/CHANGELOG-v2.16.rst
  * Minor Changes
  - ansible-test - Add a work-around for permission denied errors
    when using pytest &gt;= 8 on multi-user systems with an
    installed version of ansible-test.
  * Bugfixes
  - Fix an issue when setting a plugin name from an unsafe source
    resulted in ValueError: unmarshallable object (#82708)
  - Harden python templates for respawn and ansiballz around str
    literal quoting
  - ansible-test - The libexpat package is automatically upgraded
    during remote bootstrapping to maintain compatibility with
    newer Python packages.
  - template - Fix error when templating an unsafe string which
    corresponds to an invalid type in Python (#82600).
  - winrm - does not hang when attempting to get process output
    when stdin write failed</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1713268800">- adjust spec to new name for PyPI file name (underscore instead of
  hyphen: ansible_core-2.16.6.tar.gz)
- update to 2.16.6:
  https://github.com/ansible/ansible/blob/v2.16.6/changelogs/CHANGELOG-v2.16.rst
  * Bugfixes
  - Consolidated the list of internal static vars, centralized
    them as constant and completed from some missing entries.
  - Fix check for missing `_sub_plugin` attribute in older
    connection plugins (#82954)
  - Fixes permission for cache json file from 600 to 644
    (#82683).
  - Slight optimization to hostvars (instantiate template only
    once per host, vs per call to var).
  - allow_duplicates - fix evaluating if the current role allows
    duplicates instead of using the initial value from the
    duplicate's cached role.
  - ansible-config will now properly template defaults before
    dumping them.
  - ansible-test ansible-doc sanity test - do not remove
    underscores from plugin names in collections before calling
    ansible-doc (#82574).
  - async - Fix bug that stopped running async task in --check
    when check_mode: False was set as a task attribute - #82811
  - blockinfile - when create=true is used with a filename
    without path, the module crashed (#81638).
  - dnf - fix an issue when cached RPMs were left in the cache
    directory even when the keepcache setting was unset (#81954)
  - dnf5 - replace removed API calls
  - facts - add a generic detection for VMware in product name.
  - fetch - add error message when using dest with a trailing
    slash that becomes a local directory - #82878
  - find - do not fail on Permission errors (#82027).
  - unarchive modules now uses zipinfo options without relying on
    implementation defaults, making it more compatible with all
    OS/distributions.
  - winrm - Do not raise another exception during cleanup when a
    task is timed out - #81095</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1716465600">- update to 2.16.7:
  https://github.com/ansible/ansible/blob/v2.16.7/changelogs/CHANGELOG-v2.16.rst
  * Minor Changes
  - ansible.builtin.user - Remove user not found warning (#80267)
  * Bugfixes
  - Add a version ceiling constraint for pypsrp to avoid
    potential breaking changes in the 1.0.0 release.
  - Fix NEVRA parsing of package names that include digit(s) in
    them (#76463, #81018)
  - Fix handlers not being executed in lockstep using the linear
    strategy in some cases (#82307)
  - Give the tombstone error for include pre-fork like other
    tombstoned action/module plugins.
  - Include the task location when a module or action plugin is
    deprecated (#82450).
  - Mirror the behavior of dnf on the command line when handling
    NEVRAs with omitted epoch (#71808)
  - ansible-test - Automatically enable the PyPI proxy for the
    centos7 container to restore the ability to use pip in that
    container.
  - ansible_managed restored it's 'templatability' by ensuring
    the possible injection routes are cut off earlier in the
    process.
  - assemble - fixed missing parameter 'content' in
    `_get_diff_data` API (#82359).
  - dnf - fix an issue when installing a package by specifying a
    file it provides could result in installing a different
    package providing the same file than the package already
    installed resulting in resolution failure (#82461)
  - uri - update the documentation for follow_redirects.</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1718798400">- update to 2.16.8:
  https://github.com/ansible/ansible/blob/v2.16.8/changelogs/CHANGELOG-v2.16.rst
  * Minor Changes
  - ansible-test - Update pypi-test-container to version 3.1.0.
  * Bugfixes
  - Fix the task attribute resolved_action to show the FQCN
    instead of None when action or local_action is used in the
    playbook.
  - Fix using module_defaults with local_action/action (#81905).
  - fixed unit test test_borken_cowsay to address mock not been
    properly applied when existing unix system already have
    cowsay installed.
  - powershell - Implement more robust deletion mechanism for C#
    code compilation temporary files. This should avoid scenarios
    where the underlying temporary directory may be temporarily
    locked by antivirus tools or other IO problems. A failure to
    delete one of these temporary directories will result in a
    warning rather than an outright failure.</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1723032000">- new package ansible-core-2.16 for the 2.16.x version of ansible-core</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1723032001">- update to 2.16.9:
  https://github.com/ansible/ansible/blob/v2.16.9/changelogs/CHANGELOG-v2.16.rst
  * Bugfixes
  - dnf, dnf5 - fix for installing a set of packages by
    specifying them using a wildcard character (#83373)
  - linear strategy now provides a properly templated task name
    to the v2_runner_on_started callback event.
  - templating hostvars under native jinja will not cause
    serialization errors anymore.</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1723118400">- also make ansible-test a versioned subpackage</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1723550400">- update to 2.16.10:
  https://github.com/ansible/ansible/blob/v2.16.10/changelogs/CHANGELOG-v2.16.rst
  * Minor Changes
  - ansible-test - Improve the error message shown when an
    unknown --remote or --docker option is given.
  - ansible-test - Removed the vyos/1.1.8 network remote as it is
    no longer functional.
  * Bugfixes
  - config, restored the ability to set module compression via a
    variable
  - linear strategy: fix handlers included via include_tasks
    handler to be executed in lockstep (#83019)</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1726056000">- update to 2.16.11:
  https://github.com/ansible/ansible/blob/v2.16.11/changelogs/CHANGELOG-v2.16.rst
  * Bugfixes
  - Fix SemanticVersion.parse() to store the version string so
    that __repr__ reports it instead of None (#83831).
  - Fix an issue where registered variable was not available for
    templating in loop_control.label on skipped looped tasks
    (#83619)
  - Fix for meta tasks breaking host/fork affinity with
    host_pinned strategy (#83294)
  - Fix using the current task's directory for looking up
    relative paths within roles (#82695).
  - atomic_move - fix using the setgid bit on the parent
    directory when creating files (#46742, #67177).
  - connection plugins using the 'extras' option feature would
    need variables to match the plugin's loaded name, sometimes
    requiring fqcn, which is not the same as the
    documented/declared/expected variables. Now we fall back to
    the 'basename' of the fqcn, but plugin authors can still set
    the expected value directly.
  - csvfile lookup - give an error when no search term is
    provided using modern config syntax (#83689).
  - include_tasks - Display location when attempting to load a
    task list where include_* did not specify any value - #83874
  - module respawn - Address an issue with Python 2 where a
    respawned module could not parse module args (#83812)
  - powershell - Improve CLIXML decoding to decode all control
    characters and unicode characters that are encoded as
    surrogate pairs.
  - psrp - Fix bug when attempting to fetch a file path that
    contains special glob characters like []
  - runtime-metadata sanity test - do not crash on deprecations
    if galaxy.yml contains an empty version field (#83831).
  - ssh - Fix bug when attempting to fetch a file path with
    characters that should be quoted when using the piped
    transfer method</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1728648000">- update to 2.16.12:
  https://github.com/ansible/ansible/blob/v2.16.12/changelogs/CHANGELOG-v2.16.rst
  * Bugfixes
  - Add descriptions for ansible-galaxy install --help` and
    `ansible-galaxy role|collection install --help`.
  - ansible-galaxy install --help - Fix the usage text and
    document that the requirements file passed to -r can include
    collections and roles.
  - dnf5 - re-introduce the state: installed alias to state:
    present (#83960)</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1731585600">- update to 2.16.13:
  https://github.com/ansible/ansible/blob/v2.16.13/changelogs/CHANGELOG-v2.16.rst
  * Minor Changes
  - ansible-test - Improve container runtime probe error
    handling. When unexpected probe output is encountered, an
    error with more useful debugging information is provided.
  * Security Fixes
  - include_vars action - Ensure that result masking is correctly
    requested when vault-encrypted files are read.
    (CVE-2024-8775)
  - task result processing - Ensure that action-sourced result
    masking (_ansible_no_log=True) is preserved. (CVE-2024-8775)
  - user action won't allow ssh-keygen, chown and chmod to run on
    existing ssh public key file, avoiding traversal on existing
    symlinks (CVE-2024-9902).
  * Bugfixes
  - Improve performance on large inventories by reducing the
    number of implicit meta tasks.
  - ansible-test - Enable the sys.unraisablehook work-around for
    the pylint sanity test on Python 3.11. Previously the
    work-around was only enabled for Python 3.12 and later.
    However, the same issue has been discovered on Python 3.11.</changelog>
</package>
<package pkgid="60da615c9a4443e5b8759f7a67c01a153fb30dca496c980070474fcc79154c6ec0e2ff98c29b974530d455a8f1c5e25fa61dcc7a3863e11585f76835644985e2" name="ansible-core-2.16" arch="src">
  <version epoch="0" ver="2.16.13" rel="1.0.2.1.sr20241103"/>
  <changelog author="Johannes Kastl &lt;kastl@b1-systems.de&gt;" date="1696939200">- update to 2.15.5:
  * Minor Changes
  - ansible-galaxy dependency resolution messages have changed
    the unexplained 'virtual' collection for the specific type
    ('scm', 'dir', etc) that is more user friendly
  * Security Fixes
  - ansible-galaxy - Prevent roles from using symlinks to
    overwrite files outside of the installation directory
    (CVE-2023-5115)
  * Bugfixes
  - Allow for searching handler subdir for included task via
    include_role (#81722)
  - PluginLoader - fix Jinja plugin performance issues (#79652)
  - ansible.module_utils.service - ensure binary data
    transmission in daemonize()
  - ansible.module_utils.service - fix inter-process
    communication in daemonize()
  - ansible-galaxy - started allowing the use of pre-releases for
    collections that do not have any stable versions published.
    (#81606)
  - ansible-galaxy - started allowing the use of pre-releases for
    dependencies on any level of the dependency tree that
    specifically demand exact pre-release versions of collections
    and not version ranges. (#81606)
  - ansible-galaxy error on dependency resolution will not error
    itself due to 'virtual' collections not having a
    name/namespace.
  - ansible-galaxy info - fix reporting no role found when
    lookup_role_by_name returns None.
  - role deduplication - don't deduplicate before a role has had
    a task run for that particular host (#81486).
  - uri/urls - Add compat function to handle the ability to parse
    the filename from a Content-Disposition header (#81806)
  - winrm - Better handle send input failures when communicating
    with hosts under load</changelog>
  <changelog author="Johannes Kastl &lt;kastl@b1-systems.de&gt;" date="1699358400">- update to 2.15.6:
  * Minor Changes
  - ansible-test - Windows 2012 and 2012-R2 instances are now
    requested from Azure instead of AWS.
  * Bugfixes
  - Fix run_once being incorrectly interpreted on handlers
    (#81666)
  - Plugin loader does not dedupe nor cache filter/test plugins
    by file basename, but full path name.
  - Properly template tags in parent blocks (#81053)
  - Restoring the ability of filters/tests can have same file
    base name but different tests/filters defined inside.
  - import_role reverts to previous behavior of exporting vars at
    compile time.
  - ansible-galaxy - Provide a better error message when using a
    requirements file with an invalid format - #81901
  - ansible-inventory - index available_hosts for major
    performance boost when dumping large inventories
  - ansible-test - Fix parsing of cgroup entries which contain a
    : in the path (#81977).</changelog>
  <changelog author="Johannes Kastl &lt;kastl@b1-systems.de&gt;" date="1701777600">- update to 2.15.7:
  This release includes a fix for CVE-2023-5764, where internal
  templating actions could result in unsafe data losing its unsafe
  designation.
  * Breaking Changes / Porting Guide
  - assert - Nested templating may result in an inability for the
    conditional to be evaluated. See the porting guide for more
    information.
  * Security Fixes
  - templating - Address issues where internal templating can
    cause unsafe variables to lose their unsafe designation
    (CVE-2023-5764)
  * Bugfixes
  - ansible-pull now will expand relative paths for the
  - d|--directory option is now expanded before use.
  - flush_handlers - properly handle a handler failure in a
    nested block when force_handlers is set
    (http://github.com/ansible/ansible/issues/81532)
  - module no_log will no longer affect top level booleans, for
    example no_log_module_parameter='a' will no longer hide
    changed=False as a 'no log value' (matches 'a').
  - modules/user.py - Add check for valid directory when creating
    new user homedir (allows /dev/null as skeleton) (#75063)
  - role params now have higher precedence than host facts again,
    matching documentation, this had unintentionally changed in
    2.15.
  - wait_for should not handle 'non mmapable files' again.</changelog>
  <changelog author="Johannes Kastl &lt;kastl@b1-systems.de&gt;" date="1702382400">- update to 2.15.8:
  * Minor Changes
  - ansible-test - Add FreeBSD 13.2 remote.
  - ansible-test - Removed freebsd/13.1 remote.
  * Bugfixes
  - unsafe data - Address an incompatibility when iterating or
    getting a single index from AnsibleUnsafeBytes
  - unsafe data - Address an incompatibility with
    AnsibleUnsafeText and AnsibleUnsafeBytes when pickling with
    protocol=0</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1705838400">- update to 2.16.0:
  https://github.com/ansible/ansible/blob/v2.16.0/changelogs/CHANGELOG-v2.16.rst
  * Bugfixes and Minor changes omitted for brevity, see full
    changelog
  * Breaking Changes / Porting Guide
  - Any plugin using the config system and the cli entry to use
    the timeout from the command line, will see the value change
    if the use had configured it in any of the lower precedence
    methods. If relying on this behaviour to consume the
    global/generic timeout from the DEFAULT_TIMEOUT constant,
    please consult the documentation on plugin configuration to
    add the overlaping entries.
  - ansible-test - Test plugins that rely on containers no longer
    support reusing running containers. The previous behavior was
    an undocumented, untested feature.
  - service module will not permanently configure variables/flags
    for openbsd when doing enable/disable operation anymore, this
    module was never meant to do this type of work, just to
    manage the service state itself. A rcctl_config or similar
    module should be created and used instead.
  * Deprecated Features
  - Deprecated ini config option collections_paths, use the
    singular form collections_path instead
  - Deprecated the env var ANSIBLE_COLLECTIONS_PATHS, use the
    singular form ANSIBLE_COLLECTIONS_PATH instead
  - Old style vars plugins which use the entrypoints
    get_host_vars or get_group_vars are deprecated. The plugin
    should be updated to inherit from BaseVarsPlugin and define a
    get_vars method as the entrypoint.
  - Support for Windows Server 2012 and 2012 R2 has been removed
    as the support end of life from Microsoft is October 10th
    2023. These versions of Windows will no longer be tested in
    this Ansible release and it cannot be guaranteed that they
    will continue to work going forward.
  - STRING_CONVERSION_ACTION config option is deprecated as it is
    no longer used in the Ansible Core code base.
  - the 'smart' option for setting a connection plugin is being
    removed as it's main purpose (choosing between ssh and
    paramiko) is now irrelevant.
  - vault and unfault filters - the undocumented vaultid
    parameter is deprecated and will be removed in ansible-core
    2.20. Use vault_id instead.
  - yum_repository - deprecated parameter 'keepcache' (#78693).
  * Removed Features (previously deprecated)
  - ActionBase - remove deprecated _remote_checksum method
  - PlayIterator - remove deprecated cache_block_tasks and
    get_original_task methods
  - Remove deprecated FileLock class
  - Removed Python 3.9 as a supported version on the controller.
    Python 3.10 or newer is required.
  - Removed include which has been deprecated in Ansible 2.12.
    Use include_tasks or import_tasks instead.
  - Templar - remove deprecated shared_loader_obj parameter of
    __init__
  - fetch_url - remove auto disabling decompress when gzip is not
    available
  - get_action_args_with_defaults - remove deprecated
    redirected_names method parameter
  - ansible-test - Removed support for the remote Windows targets
    2012 and 2012-R2
  - inventory_cache - remove deprecated
    default.fact_caching_prefix ini configuration option, use
    defaults.fact_caching_prefix instead.
  - module_utils/basic.py - Removed Python 3.5 as a supported
    remote version. Python 2.7 or Python 3.6+ is now required.
  - stat - removed unused get_md5 parameter.
  * Security Fixes
  - ansible-galaxy - Prevent roles from using symlinks to
    overwrite files outside of the installation directory
    (CVE-2023-5115)
  * Known issues
  - ansible-galaxy - dies in the middle of installing a role when
    that role contains Java inner classes (files with $ in the
    file name). This is by design, to exclude temporary or backup
    files. (#81553).
  - ansible-test - The pep8 sanity test is unable to detect
    f-string spacing issues (E201, E202) on Python 3.10 and 3.11.
    They are correctly detected under Python 3.12. See
    (PyCQA/pycodestyle#1190).</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1705838401">- update to 2.16.1:
  https://github.com/ansible/ansible/blob/v2.16.1/changelogs/CHANGELOG-v2.16.rst
  * Breaking Changes / Porting Guide
  - assert - Nested templating may result in an inability for the
    conditional to be evaluated. See the porting guide for more
    information.
  * Security Fixes
  - templating - Address issues where internal templating can
    cause unsafe variables to lose their unsafe designation
    (CVE-2023-5764)
  * Bugfixes
  - Fix issue where an include_tasks handler in a role was not
    able to locate a file in tasks/ when tasks_from was used as a
    role entry point and main.yml was not present (#82241)
  - Plugin loader does not dedupe nor cache filter/test plugins
    by file basename, but full path name.
  - Restoring the ability of filters/tests can have same file
    base name but different tests/filters defined inside.
  - ansible-pull now will expand relative paths for the
  - d|--directory option is now expanded before use.
  - ansible-pull will now correctly handle become and connection
    password file options for ansible-playbook.
  - flush_handlers - properly handle a handler failure in a
    nested block when force_handlers is set
    (http://github.com/ansible/ansible/issues/81532)
  - module no_log will no longer affect top level booleans, for
    example no_log_module_parameter='a' will no longer hide
    changed=False as a 'no log value' (matches 'a').
  - role params now have higher precedence than host facts again,
    matching documentation, this had unintentionally changed in
    2.15.
  - wait_for should not handle 'non mmapable files' again.</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1705838402">- update to 2.16.2:
  https://github.com/ansible/ansible/blob/v2.16.2/changelogs/CHANGELOG-v2.16.rst
  * Bugfixes
  - unsafe data - Address an incompatibility when iterating or
    getting a single index from AnsibleUnsafeBytes
  - unsafe data - Address an incompatibility with
    AnsibleUnsafeText and AnsibleUnsafeBytes when pickling with
    protocol=0</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1706616000">- update to 2.16.3:
  https://github.com/ansible/ansible/blob/v2.16.3/changelogs/CHANGELOG-v2.16.rst
  * Security Fixes
  - ANSIBLE_NO_LOG - Address issue where ANSIBLE_NO_LOG was
    ignored (CVE-2024-0690)
  * Bugfixes
  - Run all handlers with the same listen topic, even when
    notified from another handler (#82363).
  - ansible-galaxy role import - fix using the role_name in a
    standalone role's galaxy_info metadata by disabling automatic
    removal of the ansible-role- prefix. This matches the
    behavior of the Galaxy UI which also no longer implicitly
    removes the ansible-role- prefix. Use the --role-name option
    or add a role_name to the galaxy_info dictionary in the
    role's meta/main.yml to use an alternate role name.
  - ansible-test sanity --test runtime-metadata - add
    action_plugin as a valid field for modules in the schema
    (#82562).
  - ansible-config init will now dedupe ini entries from plugins.
  - ansible-galaxy role import - exit with 1 when the import
    fails (#82175).
  - ansible-galaxy role install - normalize tarfile paths and
    symlinks using ansible.utils.path.unfrackpath and consider
    them valid as long as the realpath is in the tarfile's role
    directory (#81965).
  - delegate_to when set to an empty or undefined variable will
    now give a proper error.
  - dwim functions for lookups should be better at detectging
    role context even in abscense of tasks/main.
  - roles, code cleanup and performance optimization of
    dependencies, now cached, and public setting is now
    determined once, at role instantiation.
  - roles, the static property is now correctly set, this will
    fix issues with public and DEFAULT_PRIVATE_ROLE_VARS controls
    on exporting vars.
  - unsafe data - Enable directly using AnsibleUnsafeText with
    Python pathlib (#82414)</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1710590400">- update to 2.16.4:
  https://github.com/ansible/ansible/blob/v2.16.4/changelogs/CHANGELOG-v2.16.rst
  * Bugfixes
  - Fix loading vars_plugins in roles (#82239).
  - expect - fix argument spec error using timeout=null (#80982).
  - include_vars - fix calculating depth relative to the root and
    ensure all files are included (#80987).
  - templating - ensure syntax errors originating from a template
    being compiled into Python code object result in a failure
    (#82606)</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1711540800">- update to 2.16.5:
  https://github.com/ansible/ansible/blob/v2.16.5/changelogs/CHANGELOG-v2.16.rst
  * Minor Changes
  - ansible-test - Add a work-around for permission denied errors
    when using pytest &gt;= 8 on multi-user systems with an
    installed version of ansible-test.
  * Bugfixes
  - Fix an issue when setting a plugin name from an unsafe source
    resulted in ValueError: unmarshallable object (#82708)
  - Harden python templates for respawn and ansiballz around str
    literal quoting
  - ansible-test - The libexpat package is automatically upgraded
    during remote bootstrapping to maintain compatibility with
    newer Python packages.
  - template - Fix error when templating an unsafe string which
    corresponds to an invalid type in Python (#82600).
  - winrm - does not hang when attempting to get process output
    when stdin write failed</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1713268800">- adjust spec to new name for PyPI file name (underscore instead of
  hyphen: ansible_core-2.16.6.tar.gz)
- update to 2.16.6:
  https://github.com/ansible/ansible/blob/v2.16.6/changelogs/CHANGELOG-v2.16.rst
  * Bugfixes
  - Consolidated the list of internal static vars, centralized
    them as constant and completed from some missing entries.
  - Fix check for missing `_sub_plugin` attribute in older
    connection plugins (#82954)
  - Fixes permission for cache json file from 600 to 644
    (#82683).
  - Slight optimization to hostvars (instantiate template only
    once per host, vs per call to var).
  - allow_duplicates - fix evaluating if the current role allows
    duplicates instead of using the initial value from the
    duplicate's cached role.
  - ansible-config will now properly template defaults before
    dumping them.
  - ansible-test ansible-doc sanity test - do not remove
    underscores from plugin names in collections before calling
    ansible-doc (#82574).
  - async - Fix bug that stopped running async task in --check
    when check_mode: False was set as a task attribute - #82811
  - blockinfile - when create=true is used with a filename
    without path, the module crashed (#81638).
  - dnf - fix an issue when cached RPMs were left in the cache
    directory even when the keepcache setting was unset (#81954)
  - dnf5 - replace removed API calls
  - facts - add a generic detection for VMware in product name.
  - fetch - add error message when using dest with a trailing
    slash that becomes a local directory - #82878
  - find - do not fail on Permission errors (#82027).
  - unarchive modules now uses zipinfo options without relying on
    implementation defaults, making it more compatible with all
    OS/distributions.
  - winrm - Do not raise another exception during cleanup when a
    task is timed out - #81095</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1716465600">- update to 2.16.7:
  https://github.com/ansible/ansible/blob/v2.16.7/changelogs/CHANGELOG-v2.16.rst
  * Minor Changes
  - ansible.builtin.user - Remove user not found warning (#80267)
  * Bugfixes
  - Add a version ceiling constraint for pypsrp to avoid
    potential breaking changes in the 1.0.0 release.
  - Fix NEVRA parsing of package names that include digit(s) in
    them (#76463, #81018)
  - Fix handlers not being executed in lockstep using the linear
    strategy in some cases (#82307)
  - Give the tombstone error for include pre-fork like other
    tombstoned action/module plugins.
  - Include the task location when a module or action plugin is
    deprecated (#82450).
  - Mirror the behavior of dnf on the command line when handling
    NEVRAs with omitted epoch (#71808)
  - ansible-test - Automatically enable the PyPI proxy for the
    centos7 container to restore the ability to use pip in that
    container.
  - ansible_managed restored it's 'templatability' by ensuring
    the possible injection routes are cut off earlier in the
    process.
  - assemble - fixed missing parameter 'content' in
    `_get_diff_data` API (#82359).
  - dnf - fix an issue when installing a package by specifying a
    file it provides could result in installing a different
    package providing the same file than the package already
    installed resulting in resolution failure (#82461)
  - uri - update the documentation for follow_redirects.</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1718798400">- update to 2.16.8:
  https://github.com/ansible/ansible/blob/v2.16.8/changelogs/CHANGELOG-v2.16.rst
  * Minor Changes
  - ansible-test - Update pypi-test-container to version 3.1.0.
  * Bugfixes
  - Fix the task attribute resolved_action to show the FQCN
    instead of None when action or local_action is used in the
    playbook.
  - Fix using module_defaults with local_action/action (#81905).
  - fixed unit test test_borken_cowsay to address mock not been
    properly applied when existing unix system already have
    cowsay installed.
  - powershell - Implement more robust deletion mechanism for C#
    code compilation temporary files. This should avoid scenarios
    where the underlying temporary directory may be temporarily
    locked by antivirus tools or other IO problems. A failure to
    delete one of these temporary directories will result in a
    warning rather than an outright failure.</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1723032000">- new package ansible-core-2.16 for the 2.16.x version of ansible-core</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1723032001">- update to 2.16.9:
  https://github.com/ansible/ansible/blob/v2.16.9/changelogs/CHANGELOG-v2.16.rst
  * Bugfixes
  - dnf, dnf5 - fix for installing a set of packages by
    specifying them using a wildcard character (#83373)
  - linear strategy now provides a properly templated task name
    to the v2_runner_on_started callback event.
  - templating hostvars under native jinja will not cause
    serialization errors anymore.</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1723118400">- also make ansible-test a versioned subpackage</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1723550400">- update to 2.16.10:
  https://github.com/ansible/ansible/blob/v2.16.10/changelogs/CHANGELOG-v2.16.rst
  * Minor Changes
  - ansible-test - Improve the error message shown when an
    unknown --remote or --docker option is given.
  - ansible-test - Removed the vyos/1.1.8 network remote as it is
    no longer functional.
  * Bugfixes
  - config, restored the ability to set module compression via a
    variable
  - linear strategy: fix handlers included via include_tasks
    handler to be executed in lockstep (#83019)</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1726056000">- update to 2.16.11:
  https://github.com/ansible/ansible/blob/v2.16.11/changelogs/CHANGELOG-v2.16.rst
  * Bugfixes
  - Fix SemanticVersion.parse() to store the version string so
    that __repr__ reports it instead of None (#83831).
  - Fix an issue where registered variable was not available for
    templating in loop_control.label on skipped looped tasks
    (#83619)
  - Fix for meta tasks breaking host/fork affinity with
    host_pinned strategy (#83294)
  - Fix using the current task's directory for looking up
    relative paths within roles (#82695).
  - atomic_move - fix using the setgid bit on the parent
    directory when creating files (#46742, #67177).
  - connection plugins using the 'extras' option feature would
    need variables to match the plugin's loaded name, sometimes
    requiring fqcn, which is not the same as the
    documented/declared/expected variables. Now we fall back to
    the 'basename' of the fqcn, but plugin authors can still set
    the expected value directly.
  - csvfile lookup - give an error when no search term is
    provided using modern config syntax (#83689).
  - include_tasks - Display location when attempting to load a
    task list where include_* did not specify any value - #83874
  - module respawn - Address an issue with Python 2 where a
    respawned module could not parse module args (#83812)
  - powershell - Improve CLIXML decoding to decode all control
    characters and unicode characters that are encoded as
    surrogate pairs.
  - psrp - Fix bug when attempting to fetch a file path that
    contains special glob characters like []
  - runtime-metadata sanity test - do not crash on deprecations
    if galaxy.yml contains an empty version field (#83831).
  - ssh - Fix bug when attempting to fetch a file path with
    characters that should be quoted when using the piped
    transfer method</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1728648000">- update to 2.16.12:
  https://github.com/ansible/ansible/blob/v2.16.12/changelogs/CHANGELOG-v2.16.rst
  * Bugfixes
  - Add descriptions for ansible-galaxy install --help` and
    `ansible-galaxy role|collection install --help`.
  - ansible-galaxy install --help - Fix the usage text and
    document that the requirements file passed to -r can include
    collections and roles.
  - dnf5 - re-introduce the state: installed alias to state:
    present (#83960)</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1731585600">- update to 2.16.13:
  https://github.com/ansible/ansible/blob/v2.16.13/changelogs/CHANGELOG-v2.16.rst
  * Minor Changes
  - ansible-test - Improve container runtime probe error
    handling. When unexpected probe output is encountered, an
    error with more useful debugging information is provided.
  * Security Fixes
  - include_vars action - Ensure that result masking is correctly
    requested when vault-encrypted files are read.
    (CVE-2024-8775)
  - task result processing - Ensure that action-sourced result
    masking (_ansible_no_log=True) is preserved. (CVE-2024-8775)
  - user action won't allow ssh-keygen, chown and chmod to run on
    existing ssh public key file, avoiding traversal on existing
    symlinks (CVE-2024-9902).
  * Bugfixes
  - Improve performance on large inventories by reducing the
    number of implicit meta tasks.
  - ansible-test - Enable the sys.unraisablehook work-around for
    the pylint sanity test on Python 3.11. Previously the
    work-around was only enabled for Python 3.12 and later.
    However, the same issue has been discovered on Python 3.11.</changelog>
</package>
<package pkgid="77ae2c23f972ca159c23d7f544f4623becd4bdd143f8e07a1d197f3e69511dcc839a2978936739f504d1608b69369451ae304d4f03672fe9b27f9381bbc5b832" name="ansible-core-2.16" arch="noarch">
  <version epoch="0" ver="2.16.13" rel="2.0.4.1.sr20241103"/>
  <changelog author="Johannes Kastl &lt;kastl@b1-systems.de&gt;" date="1699358400">- update to 2.15.6:
  * Minor Changes
  - ansible-test - Windows 2012 and 2012-R2 instances are now
    requested from Azure instead of AWS.
  * Bugfixes
  - Fix run_once being incorrectly interpreted on handlers
    (#81666)
  - Plugin loader does not dedupe nor cache filter/test plugins
    by file basename, but full path name.
  - Properly template tags in parent blocks (#81053)
  - Restoring the ability of filters/tests can have same file
    base name but different tests/filters defined inside.
  - import_role reverts to previous behavior of exporting vars at
    compile time.
  - ansible-galaxy - Provide a better error message when using a
    requirements file with an invalid format - #81901
  - ansible-inventory - index available_hosts for major
    performance boost when dumping large inventories
  - ansible-test - Fix parsing of cgroup entries which contain a
    : in the path (#81977).</changelog>
  <changelog author="Johannes Kastl &lt;kastl@b1-systems.de&gt;" date="1701777600">- update to 2.15.7:
  This release includes a fix for CVE-2023-5764, where internal
  templating actions could result in unsafe data losing its unsafe
  designation.
  * Breaking Changes / Porting Guide
  - assert - Nested templating may result in an inability for the
    conditional to be evaluated. See the porting guide for more
    information.
  * Security Fixes
  - templating - Address issues where internal templating can
    cause unsafe variables to lose their unsafe designation
    (CVE-2023-5764)
  * Bugfixes
  - ansible-pull now will expand relative paths for the
  - d|--directory option is now expanded before use.
  - flush_handlers - properly handle a handler failure in a
    nested block when force_handlers is set
    (http://github.com/ansible/ansible/issues/81532)
  - module no_log will no longer affect top level booleans, for
    example no_log_module_parameter='a' will no longer hide
    changed=False as a 'no log value' (matches 'a').
  - modules/user.py - Add check for valid directory when creating
    new user homedir (allows /dev/null as skeleton) (#75063)
  - role params now have higher precedence than host facts again,
    matching documentation, this had unintentionally changed in
    2.15.
  - wait_for should not handle 'non mmapable files' again.</changelog>
  <changelog author="Johannes Kastl &lt;kastl@b1-systems.de&gt;" date="1702382400">- update to 2.15.8:
  * Minor Changes
  - ansible-test - Add FreeBSD 13.2 remote.
  - ansible-test - Removed freebsd/13.1 remote.
  * Bugfixes
  - unsafe data - Address an incompatibility when iterating or
    getting a single index from AnsibleUnsafeBytes
  - unsafe data - Address an incompatibility with
    AnsibleUnsafeText and AnsibleUnsafeBytes when pickling with
    protocol=0</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1705838400">- update to 2.16.0:
  https://github.com/ansible/ansible/blob/v2.16.0/changelogs/CHANGELOG-v2.16.rst
  * Bugfixes and Minor changes omitted for brevity, see full
    changelog
  * Breaking Changes / Porting Guide
  - Any plugin using the config system and the cli entry to use
    the timeout from the command line, will see the value change
    if the use had configured it in any of the lower precedence
    methods. If relying on this behaviour to consume the
    global/generic timeout from the DEFAULT_TIMEOUT constant,
    please consult the documentation on plugin configuration to
    add the overlaping entries.
  - ansible-test - Test plugins that rely on containers no longer
    support reusing running containers. The previous behavior was
    an undocumented, untested feature.
  - service module will not permanently configure variables/flags
    for openbsd when doing enable/disable operation anymore, this
    module was never meant to do this type of work, just to
    manage the service state itself. A rcctl_config or similar
    module should be created and used instead.
  * Deprecated Features
  - Deprecated ini config option collections_paths, use the
    singular form collections_path instead
  - Deprecated the env var ANSIBLE_COLLECTIONS_PATHS, use the
    singular form ANSIBLE_COLLECTIONS_PATH instead
  - Old style vars plugins which use the entrypoints
    get_host_vars or get_group_vars are deprecated. The plugin
    should be updated to inherit from BaseVarsPlugin and define a
    get_vars method as the entrypoint.
  - Support for Windows Server 2012 and 2012 R2 has been removed
    as the support end of life from Microsoft is October 10th
    2023. These versions of Windows will no longer be tested in
    this Ansible release and it cannot be guaranteed that they
    will continue to work going forward.
  - STRING_CONVERSION_ACTION config option is deprecated as it is
    no longer used in the Ansible Core code base.
  - the 'smart' option for setting a connection plugin is being
    removed as it's main purpose (choosing between ssh and
    paramiko) is now irrelevant.
  - vault and unfault filters - the undocumented vaultid
    parameter is deprecated and will be removed in ansible-core
    2.20. Use vault_id instead.
  - yum_repository - deprecated parameter 'keepcache' (#78693).
  * Removed Features (previously deprecated)
  - ActionBase - remove deprecated _remote_checksum method
  - PlayIterator - remove deprecated cache_block_tasks and
    get_original_task methods
  - Remove deprecated FileLock class
  - Removed Python 3.9 as a supported version on the controller.
    Python 3.10 or newer is required.
  - Removed include which has been deprecated in Ansible 2.12.
    Use include_tasks or import_tasks instead.
  - Templar - remove deprecated shared_loader_obj parameter of
    __init__
  - fetch_url - remove auto disabling decompress when gzip is not
    available
  - get_action_args_with_defaults - remove deprecated
    redirected_names method parameter
  - ansible-test - Removed support for the remote Windows targets
    2012 and 2012-R2
  - inventory_cache - remove deprecated
    default.fact_caching_prefix ini configuration option, use
    defaults.fact_caching_prefix instead.
  - module_utils/basic.py - Removed Python 3.5 as a supported
    remote version. Python 2.7 or Python 3.6+ is now required.
  - stat - removed unused get_md5 parameter.
  * Security Fixes
  - ansible-galaxy - Prevent roles from using symlinks to
    overwrite files outside of the installation directory
    (CVE-2023-5115)
  * Known issues
  - ansible-galaxy - dies in the middle of installing a role when
    that role contains Java inner classes (files with $ in the
    file name). This is by design, to exclude temporary or backup
    files. (#81553).
  - ansible-test - The pep8 sanity test is unable to detect
    f-string spacing issues (E201, E202) on Python 3.10 and 3.11.
    They are correctly detected under Python 3.12. See
    (PyCQA/pycodestyle#1190).</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1705838401">- update to 2.16.1:
  https://github.com/ansible/ansible/blob/v2.16.1/changelogs/CHANGELOG-v2.16.rst
  * Breaking Changes / Porting Guide
  - assert - Nested templating may result in an inability for the
    conditional to be evaluated. See the porting guide for more
    information.
  * Security Fixes
  - templating - Address issues where internal templating can
    cause unsafe variables to lose their unsafe designation
    (CVE-2023-5764)
  * Bugfixes
  - Fix issue where an include_tasks handler in a role was not
    able to locate a file in tasks/ when tasks_from was used as a
    role entry point and main.yml was not present (#82241)
  - Plugin loader does not dedupe nor cache filter/test plugins
    by file basename, but full path name.
  - Restoring the ability of filters/tests can have same file
    base name but different tests/filters defined inside.
  - ansible-pull now will expand relative paths for the
  - d|--directory option is now expanded before use.
  - ansible-pull will now correctly handle become and connection
    password file options for ansible-playbook.
  - flush_handlers - properly handle a handler failure in a
    nested block when force_handlers is set
    (http://github.com/ansible/ansible/issues/81532)
  - module no_log will no longer affect top level booleans, for
    example no_log_module_parameter='a' will no longer hide
    changed=False as a 'no log value' (matches 'a').
  - role params now have higher precedence than host facts again,
    matching documentation, this had unintentionally changed in
    2.15.
  - wait_for should not handle 'non mmapable files' again.</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1705838402">- update to 2.16.2:
  https://github.com/ansible/ansible/blob/v2.16.2/changelogs/CHANGELOG-v2.16.rst
  * Bugfixes
  - unsafe data - Address an incompatibility when iterating or
    getting a single index from AnsibleUnsafeBytes
  - unsafe data - Address an incompatibility with
    AnsibleUnsafeText and AnsibleUnsafeBytes when pickling with
    protocol=0</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1706616000">- update to 2.16.3:
  https://github.com/ansible/ansible/blob/v2.16.3/changelogs/CHANGELOG-v2.16.rst
  * Security Fixes
  - ANSIBLE_NO_LOG - Address issue where ANSIBLE_NO_LOG was
    ignored (CVE-2024-0690)
  * Bugfixes
  - Run all handlers with the same listen topic, even when
    notified from another handler (#82363).
  - ansible-galaxy role import - fix using the role_name in a
    standalone role's galaxy_info metadata by disabling automatic
    removal of the ansible-role- prefix. This matches the
    behavior of the Galaxy UI which also no longer implicitly
    removes the ansible-role- prefix. Use the --role-name option
    or add a role_name to the galaxy_info dictionary in the
    role's meta/main.yml to use an alternate role name.
  - ansible-test sanity --test runtime-metadata - add
    action_plugin as a valid field for modules in the schema
    (#82562).
  - ansible-config init will now dedupe ini entries from plugins.
  - ansible-galaxy role import - exit with 1 when the import
    fails (#82175).
  - ansible-galaxy role install - normalize tarfile paths and
    symlinks using ansible.utils.path.unfrackpath and consider
    them valid as long as the realpath is in the tarfile's role
    directory (#81965).
  - delegate_to when set to an empty or undefined variable will
    now give a proper error.
  - dwim functions for lookups should be better at detectging
    role context even in abscense of tasks/main.
  - roles, code cleanup and performance optimization of
    dependencies, now cached, and public setting is now
    determined once, at role instantiation.
  - roles, the static property is now correctly set, this will
    fix issues with public and DEFAULT_PRIVATE_ROLE_VARS controls
    on exporting vars.
  - unsafe data - Enable directly using AnsibleUnsafeText with
    Python pathlib (#82414)</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1710590400">- update to 2.16.4:
  https://github.com/ansible/ansible/blob/v2.16.4/changelogs/CHANGELOG-v2.16.rst
  * Bugfixes
  - Fix loading vars_plugins in roles (#82239).
  - expect - fix argument spec error using timeout=null (#80982).
  - include_vars - fix calculating depth relative to the root and
    ensure all files are included (#80987).
  - templating - ensure syntax errors originating from a template
    being compiled into Python code object result in a failure
    (#82606)</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1711540800">- update to 2.16.5:
  https://github.com/ansible/ansible/blob/v2.16.5/changelogs/CHANGELOG-v2.16.rst
  * Minor Changes
  - ansible-test - Add a work-around for permission denied errors
    when using pytest &gt;= 8 on multi-user systems with an
    installed version of ansible-test.
  * Bugfixes
  - Fix an issue when setting a plugin name from an unsafe source
    resulted in ValueError: unmarshallable object (#82708)
  - Harden python templates for respawn and ansiballz around str
    literal quoting
  - ansible-test - The libexpat package is automatically upgraded
    during remote bootstrapping to maintain compatibility with
    newer Python packages.
  - template - Fix error when templating an unsafe string which
    corresponds to an invalid type in Python (#82600).
  - winrm - does not hang when attempting to get process output
    when stdin write failed</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1713268800">- adjust spec to new name for PyPI file name (underscore instead of
  hyphen: ansible_core-2.16.6.tar.gz)
- update to 2.16.6:
  https://github.com/ansible/ansible/blob/v2.16.6/changelogs/CHANGELOG-v2.16.rst
  * Bugfixes
  - Consolidated the list of internal static vars, centralized
    them as constant and completed from some missing entries.
  - Fix check for missing `_sub_plugin` attribute in older
    connection plugins (#82954)
  - Fixes permission for cache json file from 600 to 644
    (#82683).
  - Slight optimization to hostvars (instantiate template only
    once per host, vs per call to var).
  - allow_duplicates - fix evaluating if the current role allows
    duplicates instead of using the initial value from the
    duplicate's cached role.
  - ansible-config will now properly template defaults before
    dumping them.
  - ansible-test ansible-doc sanity test - do not remove
    underscores from plugin names in collections before calling
    ansible-doc (#82574).
  - async - Fix bug that stopped running async task in --check
    when check_mode: False was set as a task attribute - #82811
  - blockinfile - when create=true is used with a filename
    without path, the module crashed (#81638).
  - dnf - fix an issue when cached RPMs were left in the cache
    directory even when the keepcache setting was unset (#81954)
  - dnf5 - replace removed API calls
  - facts - add a generic detection for VMware in product name.
  - fetch - add error message when using dest with a trailing
    slash that becomes a local directory - #82878
  - find - do not fail on Permission errors (#82027).
  - unarchive modules now uses zipinfo options without relying on
    implementation defaults, making it more compatible with all
    OS/distributions.
  - winrm - Do not raise another exception during cleanup when a
    task is timed out - #81095</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1716465600">- update to 2.16.7:
  https://github.com/ansible/ansible/blob/v2.16.7/changelogs/CHANGELOG-v2.16.rst
  * Minor Changes
  - ansible.builtin.user - Remove user not found warning (#80267)
  * Bugfixes
  - Add a version ceiling constraint for pypsrp to avoid
    potential breaking changes in the 1.0.0 release.
  - Fix NEVRA parsing of package names that include digit(s) in
    them (#76463, #81018)
  - Fix handlers not being executed in lockstep using the linear
    strategy in some cases (#82307)
  - Give the tombstone error for include pre-fork like other
    tombstoned action/module plugins.
  - Include the task location when a module or action plugin is
    deprecated (#82450).
  - Mirror the behavior of dnf on the command line when handling
    NEVRAs with omitted epoch (#71808)
  - ansible-test - Automatically enable the PyPI proxy for the
    centos7 container to restore the ability to use pip in that
    container.
  - ansible_managed restored it's 'templatability' by ensuring
    the possible injection routes are cut off earlier in the
    process.
  - assemble - fixed missing parameter 'content' in
    `_get_diff_data` API (#82359).
  - dnf - fix an issue when installing a package by specifying a
    file it provides could result in installing a different
    package providing the same file than the package already
    installed resulting in resolution failure (#82461)
  - uri - update the documentation for follow_redirects.</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1718798400">- update to 2.16.8:
  https://github.com/ansible/ansible/blob/v2.16.8/changelogs/CHANGELOG-v2.16.rst
  * Minor Changes
  - ansible-test - Update pypi-test-container to version 3.1.0.
  * Bugfixes
  - Fix the task attribute resolved_action to show the FQCN
    instead of None when action or local_action is used in the
    playbook.
  - Fix using module_defaults with local_action/action (#81905).
  - fixed unit test test_borken_cowsay to address mock not been
    properly applied when existing unix system already have
    cowsay installed.
  - powershell - Implement more robust deletion mechanism for C#
    code compilation temporary files. This should avoid scenarios
    where the underlying temporary directory may be temporarily
    locked by antivirus tools or other IO problems. A failure to
    delete one of these temporary directories will result in a
    warning rather than an outright failure.</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1723032000">- new package ansible-core-2.16 for the 2.16.x version of ansible-core</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1723032001">- update to 2.16.9:
  https://github.com/ansible/ansible/blob/v2.16.9/changelogs/CHANGELOG-v2.16.rst
  * Bugfixes
  - dnf, dnf5 - fix for installing a set of packages by
    specifying them using a wildcard character (#83373)
  - linear strategy now provides a properly templated task name
    to the v2_runner_on_started callback event.
  - templating hostvars under native jinja will not cause
    serialization errors anymore.</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1723118400">- also make ansible-test a versioned subpackage</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1723550400">- update to 2.16.10:
  https://github.com/ansible/ansible/blob/v2.16.10/changelogs/CHANGELOG-v2.16.rst
  * Minor Changes
  - ansible-test - Improve the error message shown when an
    unknown --remote or --docker option is given.
  - ansible-test - Removed the vyos/1.1.8 network remote as it is
    no longer functional.
  * Bugfixes
  - config, restored the ability to set module compression via a
    variable
  - linear strategy: fix handlers included via include_tasks
    handler to be executed in lockstep (#83019)</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1726056000">- update to 2.16.11:
  https://github.com/ansible/ansible/blob/v2.16.11/changelogs/CHANGELOG-v2.16.rst
  * Bugfixes
  - Fix SemanticVersion.parse() to store the version string so
    that __repr__ reports it instead of None (#83831).
  - Fix an issue where registered variable was not available for
    templating in loop_control.label on skipped looped tasks
    (#83619)
  - Fix for meta tasks breaking host/fork affinity with
    host_pinned strategy (#83294)
  - Fix using the current task's directory for looking up
    relative paths within roles (#82695).
  - atomic_move - fix using the setgid bit on the parent
    directory when creating files (#46742, #67177).
  - connection plugins using the 'extras' option feature would
    need variables to match the plugin's loaded name, sometimes
    requiring fqcn, which is not the same as the
    documented/declared/expected variables. Now we fall back to
    the 'basename' of the fqcn, but plugin authors can still set
    the expected value directly.
  - csvfile lookup - give an error when no search term is
    provided using modern config syntax (#83689).
  - include_tasks - Display location when attempting to load a
    task list where include_* did not specify any value - #83874
  - module respawn - Address an issue with Python 2 where a
    respawned module could not parse module args (#83812)
  - powershell - Improve CLIXML decoding to decode all control
    characters and unicode characters that are encoded as
    surrogate pairs.
  - psrp - Fix bug when attempting to fetch a file path that
    contains special glob characters like []
  - runtime-metadata sanity test - do not crash on deprecations
    if galaxy.yml contains an empty version field (#83831).
  - ssh - Fix bug when attempting to fetch a file path with
    characters that should be quoted when using the piped
    transfer method</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1728648000">- update to 2.16.12:
  https://github.com/ansible/ansible/blob/v2.16.12/changelogs/CHANGELOG-v2.16.rst
  * Bugfixes
  - Add descriptions for ansible-galaxy install --help` and
    `ansible-galaxy role|collection install --help`.
  - ansible-galaxy install --help - Fix the usage text and
    document that the requirements file passed to -r can include
    collections and roles.
  - dnf5 - re-introduce the state: installed alias to state:
    present (#83960)</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1731585600">- update to 2.16.13:
  https://github.com/ansible/ansible/blob/v2.16.13/changelogs/CHANGELOG-v2.16.rst
  * Minor Changes
  - ansible-test - Improve container runtime probe error
    handling. When unexpected probe output is encountered, an
    error with more useful debugging information is provided.
  * Security Fixes
  - include_vars action - Ensure that result masking is correctly
    requested when vault-encrypted files are read.
    (CVE-2024-8775)
  - task result processing - Ensure that action-sourced result
    masking (_ansible_no_log=True) is preserved. (CVE-2024-8775)
  - user action won't allow ssh-keygen, chown and chmod to run on
    existing ssh public key file, avoiding traversal on existing
    symlinks (CVE-2024-9902).
  * Bugfixes
  - Improve performance on large inventories by reducing the
    number of implicit meta tasks.
  - ansible-test - Enable the sys.unraisablehook work-around for
    the pylint sanity test on Python 3.11. Previously the
    work-around was only enabled for Python 3.12 and later.
    However, the same issue has been discovered on Python 3.11.</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1732276800">- Backport patch to relax resolvelib dependency:
  771f7ad29ca4d259761eaa88673c2e32f6412bbe.patch
- Added necessary test dependencies: pytest-xdist, pytest-mock,
  pytz, passlib, git-core, and openssh to ensure proper test
  execution.
- Introduced the `ansible_python_version` variable and updated the
  test command.</changelog>
</package>
<package pkgid="d9dab4335be70348553453f3beeb95fca6fdf68709f64544455c5e305044a53345ea1954eeb03bbb3658f2b38cab2dbade86b152d16d1505f2490ffba992a482" name="ansible-core-2.16" arch="src">
  <version epoch="0" ver="2.16.13" rel="2.0.4.1.sr20241103"/>
  <changelog author="Johannes Kastl &lt;kastl@b1-systems.de&gt;" date="1699358400">- update to 2.15.6:
  * Minor Changes
  - ansible-test - Windows 2012 and 2012-R2 instances are now
    requested from Azure instead of AWS.
  * Bugfixes
  - Fix run_once being incorrectly interpreted on handlers
    (#81666)
  - Plugin loader does not dedupe nor cache filter/test plugins
    by file basename, but full path name.
  - Properly template tags in parent blocks (#81053)
  - Restoring the ability of filters/tests can have same file
    base name but different tests/filters defined inside.
  - import_role reverts to previous behavior of exporting vars at
    compile time.
  - ansible-galaxy - Provide a better error message when using a
    requirements file with an invalid format - #81901
  - ansible-inventory - index available_hosts for major
    performance boost when dumping large inventories
  - ansible-test - Fix parsing of cgroup entries which contain a
    : in the path (#81977).</changelog>
  <changelog author="Johannes Kastl &lt;kastl@b1-systems.de&gt;" date="1701777600">- update to 2.15.7:
  This release includes a fix for CVE-2023-5764, where internal
  templating actions could result in unsafe data losing its unsafe
  designation.
  * Breaking Changes / Porting Guide
  - assert - Nested templating may result in an inability for the
    conditional to be evaluated. See the porting guide for more
    information.
  * Security Fixes
  - templating - Address issues where internal templating can
    cause unsafe variables to lose their unsafe designation
    (CVE-2023-5764)
  * Bugfixes
  - ansible-pull now will expand relative paths for the
  - d|--directory option is now expanded before use.
  - flush_handlers - properly handle a handler failure in a
    nested block when force_handlers is set
    (http://github.com/ansible/ansible/issues/81532)
  - module no_log will no longer affect top level booleans, for
    example no_log_module_parameter='a' will no longer hide
    changed=False as a 'no log value' (matches 'a').
  - modules/user.py - Add check for valid directory when creating
    new user homedir (allows /dev/null as skeleton) (#75063)
  - role params now have higher precedence than host facts again,
    matching documentation, this had unintentionally changed in
    2.15.
  - wait_for should not handle 'non mmapable files' again.</changelog>
  <changelog author="Johannes Kastl &lt;kastl@b1-systems.de&gt;" date="1702382400">- update to 2.15.8:
  * Minor Changes
  - ansible-test - Add FreeBSD 13.2 remote.
  - ansible-test - Removed freebsd/13.1 remote.
  * Bugfixes
  - unsafe data - Address an incompatibility when iterating or
    getting a single index from AnsibleUnsafeBytes
  - unsafe data - Address an incompatibility with
    AnsibleUnsafeText and AnsibleUnsafeBytes when pickling with
    protocol=0</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1705838400">- update to 2.16.0:
  https://github.com/ansible/ansible/blob/v2.16.0/changelogs/CHANGELOG-v2.16.rst
  * Bugfixes and Minor changes omitted for brevity, see full
    changelog
  * Breaking Changes / Porting Guide
  - Any plugin using the config system and the cli entry to use
    the timeout from the command line, will see the value change
    if the use had configured it in any of the lower precedence
    methods. If relying on this behaviour to consume the
    global/generic timeout from the DEFAULT_TIMEOUT constant,
    please consult the documentation on plugin configuration to
    add the overlaping entries.
  - ansible-test - Test plugins that rely on containers no longer
    support reusing running containers. The previous behavior was
    an undocumented, untested feature.
  - service module will not permanently configure variables/flags
    for openbsd when doing enable/disable operation anymore, this
    module was never meant to do this type of work, just to
    manage the service state itself. A rcctl_config or similar
    module should be created and used instead.
  * Deprecated Features
  - Deprecated ini config option collections_paths, use the
    singular form collections_path instead
  - Deprecated the env var ANSIBLE_COLLECTIONS_PATHS, use the
    singular form ANSIBLE_COLLECTIONS_PATH instead
  - Old style vars plugins which use the entrypoints
    get_host_vars or get_group_vars are deprecated. The plugin
    should be updated to inherit from BaseVarsPlugin and define a
    get_vars method as the entrypoint.
  - Support for Windows Server 2012 and 2012 R2 has been removed
    as the support end of life from Microsoft is October 10th
    2023. These versions of Windows will no longer be tested in
    this Ansible release and it cannot be guaranteed that they
    will continue to work going forward.
  - STRING_CONVERSION_ACTION config option is deprecated as it is
    no longer used in the Ansible Core code base.
  - the 'smart' option for setting a connection plugin is being
    removed as it's main purpose (choosing between ssh and
    paramiko) is now irrelevant.
  - vault and unfault filters - the undocumented vaultid
    parameter is deprecated and will be removed in ansible-core
    2.20. Use vault_id instead.
  - yum_repository - deprecated parameter 'keepcache' (#78693).
  * Removed Features (previously deprecated)
  - ActionBase - remove deprecated _remote_checksum method
  - PlayIterator - remove deprecated cache_block_tasks and
    get_original_task methods
  - Remove deprecated FileLock class
  - Removed Python 3.9 as a supported version on the controller.
    Python 3.10 or newer is required.
  - Removed include which has been deprecated in Ansible 2.12.
    Use include_tasks or import_tasks instead.
  - Templar - remove deprecated shared_loader_obj parameter of
    __init__
  - fetch_url - remove auto disabling decompress when gzip is not
    available
  - get_action_args_with_defaults - remove deprecated
    redirected_names method parameter
  - ansible-test - Removed support for the remote Windows targets
    2012 and 2012-R2
  - inventory_cache - remove deprecated
    default.fact_caching_prefix ini configuration option, use
    defaults.fact_caching_prefix instead.
  - module_utils/basic.py - Removed Python 3.5 as a supported
    remote version. Python 2.7 or Python 3.6+ is now required.
  - stat - removed unused get_md5 parameter.
  * Security Fixes
  - ansible-galaxy - Prevent roles from using symlinks to
    overwrite files outside of the installation directory
    (CVE-2023-5115)
  * Known issues
  - ansible-galaxy - dies in the middle of installing a role when
    that role contains Java inner classes (files with $ in the
    file name). This is by design, to exclude temporary or backup
    files. (#81553).
  - ansible-test - The pep8 sanity test is unable to detect
    f-string spacing issues (E201, E202) on Python 3.10 and 3.11.
    They are correctly detected under Python 3.12. See
    (PyCQA/pycodestyle#1190).</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1705838401">- update to 2.16.1:
  https://github.com/ansible/ansible/blob/v2.16.1/changelogs/CHANGELOG-v2.16.rst
  * Breaking Changes / Porting Guide
  - assert - Nested templating may result in an inability for the
    conditional to be evaluated. See the porting guide for more
    information.
  * Security Fixes
  - templating - Address issues where internal templating can
    cause unsafe variables to lose their unsafe designation
    (CVE-2023-5764)
  * Bugfixes
  - Fix issue where an include_tasks handler in a role was not
    able to locate a file in tasks/ when tasks_from was used as a
    role entry point and main.yml was not present (#82241)
  - Plugin loader does not dedupe nor cache filter/test plugins
    by file basename, but full path name.
  - Restoring the ability of filters/tests can have same file
    base name but different tests/filters defined inside.
  - ansible-pull now will expand relative paths for the
  - d|--directory option is now expanded before use.
  - ansible-pull will now correctly handle become and connection
    password file options for ansible-playbook.
  - flush_handlers - properly handle a handler failure in a
    nested block when force_handlers is set
    (http://github.com/ansible/ansible/issues/81532)
  - module no_log will no longer affect top level booleans, for
    example no_log_module_parameter='a' will no longer hide
    changed=False as a 'no log value' (matches 'a').
  - role params now have higher precedence than host facts again,
    matching documentation, this had unintentionally changed in
    2.15.
  - wait_for should not handle 'non mmapable files' again.</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1705838402">- update to 2.16.2:
  https://github.com/ansible/ansible/blob/v2.16.2/changelogs/CHANGELOG-v2.16.rst
  * Bugfixes
  - unsafe data - Address an incompatibility when iterating or
    getting a single index from AnsibleUnsafeBytes
  - unsafe data - Address an incompatibility with
    AnsibleUnsafeText and AnsibleUnsafeBytes when pickling with
    protocol=0</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1706616000">- update to 2.16.3:
  https://github.com/ansible/ansible/blob/v2.16.3/changelogs/CHANGELOG-v2.16.rst
  * Security Fixes
  - ANSIBLE_NO_LOG - Address issue where ANSIBLE_NO_LOG was
    ignored (CVE-2024-0690)
  * Bugfixes
  - Run all handlers with the same listen topic, even when
    notified from another handler (#82363).
  - ansible-galaxy role import - fix using the role_name in a
    standalone role's galaxy_info metadata by disabling automatic
    removal of the ansible-role- prefix. This matches the
    behavior of the Galaxy UI which also no longer implicitly
    removes the ansible-role- prefix. Use the --role-name option
    or add a role_name to the galaxy_info dictionary in the
    role's meta/main.yml to use an alternate role name.
  - ansible-test sanity --test runtime-metadata - add
    action_plugin as a valid field for modules in the schema
    (#82562).
  - ansible-config init will now dedupe ini entries from plugins.
  - ansible-galaxy role import - exit with 1 when the import
    fails (#82175).
  - ansible-galaxy role install - normalize tarfile paths and
    symlinks using ansible.utils.path.unfrackpath and consider
    them valid as long as the realpath is in the tarfile's role
    directory (#81965).
  - delegate_to when set to an empty or undefined variable will
    now give a proper error.
  - dwim functions for lookups should be better at detectging
    role context even in abscense of tasks/main.
  - roles, code cleanup and performance optimization of
    dependencies, now cached, and public setting is now
    determined once, at role instantiation.
  - roles, the static property is now correctly set, this will
    fix issues with public and DEFAULT_PRIVATE_ROLE_VARS controls
    on exporting vars.
  - unsafe data - Enable directly using AnsibleUnsafeText with
    Python pathlib (#82414)</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1710590400">- update to 2.16.4:
  https://github.com/ansible/ansible/blob/v2.16.4/changelogs/CHANGELOG-v2.16.rst
  * Bugfixes
  - Fix loading vars_plugins in roles (#82239).
  - expect - fix argument spec error using timeout=null (#80982).
  - include_vars - fix calculating depth relative to the root and
    ensure all files are included (#80987).
  - templating - ensure syntax errors originating from a template
    being compiled into Python code object result in a failure
    (#82606)</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1711540800">- update to 2.16.5:
  https://github.com/ansible/ansible/blob/v2.16.5/changelogs/CHANGELOG-v2.16.rst
  * Minor Changes
  - ansible-test - Add a work-around for permission denied errors
    when using pytest &gt;= 8 on multi-user systems with an
    installed version of ansible-test.
  * Bugfixes
  - Fix an issue when setting a plugin name from an unsafe source
    resulted in ValueError: unmarshallable object (#82708)
  - Harden python templates for respawn and ansiballz around str
    literal quoting
  - ansible-test - The libexpat package is automatically upgraded
    during remote bootstrapping to maintain compatibility with
    newer Python packages.
  - template - Fix error when templating an unsafe string which
    corresponds to an invalid type in Python (#82600).
  - winrm - does not hang when attempting to get process output
    when stdin write failed</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1713268800">- adjust spec to new name for PyPI file name (underscore instead of
  hyphen: ansible_core-2.16.6.tar.gz)
- update to 2.16.6:
  https://github.com/ansible/ansible/blob/v2.16.6/changelogs/CHANGELOG-v2.16.rst
  * Bugfixes
  - Consolidated the list of internal static vars, centralized
    them as constant and completed from some missing entries.
  - Fix check for missing `_sub_plugin` attribute in older
    connection plugins (#82954)
  - Fixes permission for cache json file from 600 to 644
    (#82683).
  - Slight optimization to hostvars (instantiate template only
    once per host, vs per call to var).
  - allow_duplicates - fix evaluating if the current role allows
    duplicates instead of using the initial value from the
    duplicate's cached role.
  - ansible-config will now properly template defaults before
    dumping them.
  - ansible-test ansible-doc sanity test - do not remove
    underscores from plugin names in collections before calling
    ansible-doc (#82574).
  - async - Fix bug that stopped running async task in --check
    when check_mode: False was set as a task attribute - #82811
  - blockinfile - when create=true is used with a filename
    without path, the module crashed (#81638).
  - dnf - fix an issue when cached RPMs were left in the cache
    directory even when the keepcache setting was unset (#81954)
  - dnf5 - replace removed API calls
  - facts - add a generic detection for VMware in product name.
  - fetch - add error message when using dest with a trailing
    slash that becomes a local directory - #82878
  - find - do not fail on Permission errors (#82027).
  - unarchive modules now uses zipinfo options without relying on
    implementation defaults, making it more compatible with all
    OS/distributions.
  - winrm - Do not raise another exception during cleanup when a
    task is timed out - #81095</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1716465600">- update to 2.16.7:
  https://github.com/ansible/ansible/blob/v2.16.7/changelogs/CHANGELOG-v2.16.rst
  * Minor Changes
  - ansible.builtin.user - Remove user not found warning (#80267)
  * Bugfixes
  - Add a version ceiling constraint for pypsrp to avoid
    potential breaking changes in the 1.0.0 release.
  - Fix NEVRA parsing of package names that include digit(s) in
    them (#76463, #81018)
  - Fix handlers not being executed in lockstep using the linear
    strategy in some cases (#82307)
  - Give the tombstone error for include pre-fork like other
    tombstoned action/module plugins.
  - Include the task location when a module or action plugin is
    deprecated (#82450).
  - Mirror the behavior of dnf on the command line when handling
    NEVRAs with omitted epoch (#71808)
  - ansible-test - Automatically enable the PyPI proxy for the
    centos7 container to restore the ability to use pip in that
    container.
  - ansible_managed restored it's 'templatability' by ensuring
    the possible injection routes are cut off earlier in the
    process.
  - assemble - fixed missing parameter 'content' in
    `_get_diff_data` API (#82359).
  - dnf - fix an issue when installing a package by specifying a
    file it provides could result in installing a different
    package providing the same file than the package already
    installed resulting in resolution failure (#82461)
  - uri - update the documentation for follow_redirects.</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1718798400">- update to 2.16.8:
  https://github.com/ansible/ansible/blob/v2.16.8/changelogs/CHANGELOG-v2.16.rst
  * Minor Changes
  - ansible-test - Update pypi-test-container to version 3.1.0.
  * Bugfixes
  - Fix the task attribute resolved_action to show the FQCN
    instead of None when action or local_action is used in the
    playbook.
  - Fix using module_defaults with local_action/action (#81905).
  - fixed unit test test_borken_cowsay to address mock not been
    properly applied when existing unix system already have
    cowsay installed.
  - powershell - Implement more robust deletion mechanism for C#
    code compilation temporary files. This should avoid scenarios
    where the underlying temporary directory may be temporarily
    locked by antivirus tools or other IO problems. A failure to
    delete one of these temporary directories will result in a
    warning rather than an outright failure.</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1723032000">- new package ansible-core-2.16 for the 2.16.x version of ansible-core</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1723032001">- update to 2.16.9:
  https://github.com/ansible/ansible/blob/v2.16.9/changelogs/CHANGELOG-v2.16.rst
  * Bugfixes
  - dnf, dnf5 - fix for installing a set of packages by
    specifying them using a wildcard character (#83373)
  - linear strategy now provides a properly templated task name
    to the v2_runner_on_started callback event.
  - templating hostvars under native jinja will not cause
    serialization errors anymore.</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1723118400">- also make ansible-test a versioned subpackage</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1723550400">- update to 2.16.10:
  https://github.com/ansible/ansible/blob/v2.16.10/changelogs/CHANGELOG-v2.16.rst
  * Minor Changes
  - ansible-test - Improve the error message shown when an
    unknown --remote or --docker option is given.
  - ansible-test - Removed the vyos/1.1.8 network remote as it is
    no longer functional.
  * Bugfixes
  - config, restored the ability to set module compression via a
    variable
  - linear strategy: fix handlers included via include_tasks
    handler to be executed in lockstep (#83019)</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1726056000">- update to 2.16.11:
  https://github.com/ansible/ansible/blob/v2.16.11/changelogs/CHANGELOG-v2.16.rst
  * Bugfixes
  - Fix SemanticVersion.parse() to store the version string so
    that __repr__ reports it instead of None (#83831).
  - Fix an issue where registered variable was not available for
    templating in loop_control.label on skipped looped tasks
    (#83619)
  - Fix for meta tasks breaking host/fork affinity with
    host_pinned strategy (#83294)
  - Fix using the current task's directory for looking up
    relative paths within roles (#82695).
  - atomic_move - fix using the setgid bit on the parent
    directory when creating files (#46742, #67177).
  - connection plugins using the 'extras' option feature would
    need variables to match the plugin's loaded name, sometimes
    requiring fqcn, which is not the same as the
    documented/declared/expected variables. Now we fall back to
    the 'basename' of the fqcn, but plugin authors can still set
    the expected value directly.
  - csvfile lookup - give an error when no search term is
    provided using modern config syntax (#83689).
  - include_tasks - Display location when attempting to load a
    task list where include_* did not specify any value - #83874
  - module respawn - Address an issue with Python 2 where a
    respawned module could not parse module args (#83812)
  - powershell - Improve CLIXML decoding to decode all control
    characters and unicode characters that are encoded as
    surrogate pairs.
  - psrp - Fix bug when attempting to fetch a file path that
    contains special glob characters like []
  - runtime-metadata sanity test - do not crash on deprecations
    if galaxy.yml contains an empty version field (#83831).
  - ssh - Fix bug when attempting to fetch a file path with
    characters that should be quoted when using the piped
    transfer method</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1728648000">- update to 2.16.12:
  https://github.com/ansible/ansible/blob/v2.16.12/changelogs/CHANGELOG-v2.16.rst
  * Bugfixes
  - Add descriptions for ansible-galaxy install --help` and
    `ansible-galaxy role|collection install --help`.
  - ansible-galaxy install --help - Fix the usage text and
    document that the requirements file passed to -r can include
    collections and roles.
  - dnf5 - re-introduce the state: installed alias to state:
    present (#83960)</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1731585600">- update to 2.16.13:
  https://github.com/ansible/ansible/blob/v2.16.13/changelogs/CHANGELOG-v2.16.rst
  * Minor Changes
  - ansible-test - Improve container runtime probe error
    handling. When unexpected probe output is encountered, an
    error with more useful debugging information is provided.
  * Security Fixes
  - include_vars action - Ensure that result masking is correctly
    requested when vault-encrypted files are read.
    (CVE-2024-8775)
  - task result processing - Ensure that action-sourced result
    masking (_ansible_no_log=True) is preserved. (CVE-2024-8775)
  - user action won't allow ssh-keygen, chown and chmod to run on
    existing ssh public key file, avoiding traversal on existing
    symlinks (CVE-2024-9902).
  * Bugfixes
  - Improve performance on large inventories by reducing the
    number of implicit meta tasks.
  - ansible-test - Enable the sys.unraisablehook work-around for
    the pylint sanity test on Python 3.11. Previously the
    work-around was only enabled for Python 3.12 and later.
    However, the same issue has been discovered on Python 3.11.</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1732276800">- Backport patch to relax resolvelib dependency:
  771f7ad29ca4d259761eaa88673c2e32f6412bbe.patch
- Added necessary test dependencies: pytest-xdist, pytest-mock,
  pytz, passlib, git-core, and openssh to ensure proper test
  execution.
- Introduced the `ansible_python_version` variable and updated the
  test command.</changelog>
</package>
<package pkgid="32ecb71419912c7553d2afac153c36c5a61d7a8eb173e11915d272519d604b70112188e1df209fca5d5810e3127e5a713cd8f7140ef75f738a6dff0948bae8e6" name="ansible-core-2.16" arch="noarch">
  <version epoch="0" ver="2.16.14" rel="1.0.6.1.sr20241103"/>
  <changelog author="Johannes Kastl &lt;kastl@b1-systems.de&gt;" date="1702382400">- update to 2.15.8:
  * Minor Changes
  - ansible-test - Add FreeBSD 13.2 remote.
  - ansible-test - Removed freebsd/13.1 remote.
  * Bugfixes
  - unsafe data - Address an incompatibility when iterating or
    getting a single index from AnsibleUnsafeBytes
  - unsafe data - Address an incompatibility with
    AnsibleUnsafeText and AnsibleUnsafeBytes when pickling with
    protocol=0</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1705838400">- update to 2.16.0:
  https://github.com/ansible/ansible/blob/v2.16.0/changelogs/CHANGELOG-v2.16.rst
  * Bugfixes and Minor changes omitted for brevity, see full
    changelog
  * Breaking Changes / Porting Guide
  - Any plugin using the config system and the cli entry to use
    the timeout from the command line, will see the value change
    if the use had configured it in any of the lower precedence
    methods. If relying on this behaviour to consume the
    global/generic timeout from the DEFAULT_TIMEOUT constant,
    please consult the documentation on plugin configuration to
    add the overlaping entries.
  - ansible-test - Test plugins that rely on containers no longer
    support reusing running containers. The previous behavior was
    an undocumented, untested feature.
  - service module will not permanently configure variables/flags
    for openbsd when doing enable/disable operation anymore, this
    module was never meant to do this type of work, just to
    manage the service state itself. A rcctl_config or similar
    module should be created and used instead.
  * Deprecated Features
  - Deprecated ini config option collections_paths, use the
    singular form collections_path instead
  - Deprecated the env var ANSIBLE_COLLECTIONS_PATHS, use the
    singular form ANSIBLE_COLLECTIONS_PATH instead
  - Old style vars plugins which use the entrypoints
    get_host_vars or get_group_vars are deprecated. The plugin
    should be updated to inherit from BaseVarsPlugin and define a
    get_vars method as the entrypoint.
  - Support for Windows Server 2012 and 2012 R2 has been removed
    as the support end of life from Microsoft is October 10th
    2023. These versions of Windows will no longer be tested in
    this Ansible release and it cannot be guaranteed that they
    will continue to work going forward.
  - STRING_CONVERSION_ACTION config option is deprecated as it is
    no longer used in the Ansible Core code base.
  - the 'smart' option for setting a connection plugin is being
    removed as it's main purpose (choosing between ssh and
    paramiko) is now irrelevant.
  - vault and unfault filters - the undocumented vaultid
    parameter is deprecated and will be removed in ansible-core
    2.20. Use vault_id instead.
  - yum_repository - deprecated parameter 'keepcache' (#78693).
  * Removed Features (previously deprecated)
  - ActionBase - remove deprecated _remote_checksum method
  - PlayIterator - remove deprecated cache_block_tasks and
    get_original_task methods
  - Remove deprecated FileLock class
  - Removed Python 3.9 as a supported version on the controller.
    Python 3.10 or newer is required.
  - Removed include which has been deprecated in Ansible 2.12.
    Use include_tasks or import_tasks instead.
  - Templar - remove deprecated shared_loader_obj parameter of
    __init__
  - fetch_url - remove auto disabling decompress when gzip is not
    available
  - get_action_args_with_defaults - remove deprecated
    redirected_names method parameter
  - ansible-test - Removed support for the remote Windows targets
    2012 and 2012-R2
  - inventory_cache - remove deprecated
    default.fact_caching_prefix ini configuration option, use
    defaults.fact_caching_prefix instead.
  - module_utils/basic.py - Removed Python 3.5 as a supported
    remote version. Python 2.7 or Python 3.6+ is now required.
  - stat - removed unused get_md5 parameter.
  * Security Fixes
  - ansible-galaxy - Prevent roles from using symlinks to
    overwrite files outside of the installation directory
    (CVE-2023-5115)
  * Known issues
  - ansible-galaxy - dies in the middle of installing a role when
    that role contains Java inner classes (files with $ in the
    file name). This is by design, to exclude temporary or backup
    files. (#81553).
  - ansible-test - The pep8 sanity test is unable to detect
    f-string spacing issues (E201, E202) on Python 3.10 and 3.11.
    They are correctly detected under Python 3.12. See
    (PyCQA/pycodestyle#1190).</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1705838401">- update to 2.16.1:
  https://github.com/ansible/ansible/blob/v2.16.1/changelogs/CHANGELOG-v2.16.rst
  * Breaking Changes / Porting Guide
  - assert - Nested templating may result in an inability for the
    conditional to be evaluated. See the porting guide for more
    information.
  * Security Fixes
  - templating - Address issues where internal templating can
    cause unsafe variables to lose their unsafe designation
    (CVE-2023-5764)
  * Bugfixes
  - Fix issue where an include_tasks handler in a role was not
    able to locate a file in tasks/ when tasks_from was used as a
    role entry point and main.yml was not present (#82241)
  - Plugin loader does not dedupe nor cache filter/test plugins
    by file basename, but full path name.
  - Restoring the ability of filters/tests can have same file
    base name but different tests/filters defined inside.
  - ansible-pull now will expand relative paths for the
  - d|--directory option is now expanded before use.
  - ansible-pull will now correctly handle become and connection
    password file options for ansible-playbook.
  - flush_handlers - properly handle a handler failure in a
    nested block when force_handlers is set
    (http://github.com/ansible/ansible/issues/81532)
  - module no_log will no longer affect top level booleans, for
    example no_log_module_parameter='a' will no longer hide
    changed=False as a 'no log value' (matches 'a').
  - role params now have higher precedence than host facts again,
    matching documentation, this had unintentionally changed in
    2.15.
  - wait_for should not handle 'non mmapable files' again.</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1705838402">- update to 2.16.2:
  https://github.com/ansible/ansible/blob/v2.16.2/changelogs/CHANGELOG-v2.16.rst
  * Bugfixes
  - unsafe data - Address an incompatibility when iterating or
    getting a single index from AnsibleUnsafeBytes
  - unsafe data - Address an incompatibility with
    AnsibleUnsafeText and AnsibleUnsafeBytes when pickling with
    protocol=0</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1706616000">- update to 2.16.3:
  https://github.com/ansible/ansible/blob/v2.16.3/changelogs/CHANGELOG-v2.16.rst
  * Security Fixes
  - ANSIBLE_NO_LOG - Address issue where ANSIBLE_NO_LOG was
    ignored (CVE-2024-0690)
  * Bugfixes
  - Run all handlers with the same listen topic, even when
    notified from another handler (#82363).
  - ansible-galaxy role import - fix using the role_name in a
    standalone role's galaxy_info metadata by disabling automatic
    removal of the ansible-role- prefix. This matches the
    behavior of the Galaxy UI which also no longer implicitly
    removes the ansible-role- prefix. Use the --role-name option
    or add a role_name to the galaxy_info dictionary in the
    role's meta/main.yml to use an alternate role name.
  - ansible-test sanity --test runtime-metadata - add
    action_plugin as a valid field for modules in the schema
    (#82562).
  - ansible-config init will now dedupe ini entries from plugins.
  - ansible-galaxy role import - exit with 1 when the import
    fails (#82175).
  - ansible-galaxy role install - normalize tarfile paths and
    symlinks using ansible.utils.path.unfrackpath and consider
    them valid as long as the realpath is in the tarfile's role
    directory (#81965).
  - delegate_to when set to an empty or undefined variable will
    now give a proper error.
  - dwim functions for lookups should be better at detectging
    role context even in abscense of tasks/main.
  - roles, code cleanup and performance optimization of
    dependencies, now cached, and public setting is now
    determined once, at role instantiation.
  - roles, the static property is now correctly set, this will
    fix issues with public and DEFAULT_PRIVATE_ROLE_VARS controls
    on exporting vars.
  - unsafe data - Enable directly using AnsibleUnsafeText with
    Python pathlib (#82414)</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1710590400">- update to 2.16.4:
  https://github.com/ansible/ansible/blob/v2.16.4/changelogs/CHANGELOG-v2.16.rst
  * Bugfixes
  - Fix loading vars_plugins in roles (#82239).
  - expect - fix argument spec error using timeout=null (#80982).
  - include_vars - fix calculating depth relative to the root and
    ensure all files are included (#80987).
  - templating - ensure syntax errors originating from a template
    being compiled into Python code object result in a failure
    (#82606)</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1711540800">- update to 2.16.5:
  https://github.com/ansible/ansible/blob/v2.16.5/changelogs/CHANGELOG-v2.16.rst
  * Minor Changes
  - ansible-test - Add a work-around for permission denied errors
    when using pytest &gt;= 8 on multi-user systems with an
    installed version of ansible-test.
  * Bugfixes
  - Fix an issue when setting a plugin name from an unsafe source
    resulted in ValueError: unmarshallable object (#82708)
  - Harden python templates for respawn and ansiballz around str
    literal quoting
  - ansible-test - The libexpat package is automatically upgraded
    during remote bootstrapping to maintain compatibility with
    newer Python packages.
  - template - Fix error when templating an unsafe string which
    corresponds to an invalid type in Python (#82600).
  - winrm - does not hang when attempting to get process output
    when stdin write failed</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1713268800">- adjust spec to new name for PyPI file name (underscore instead of
  hyphen: ansible_core-2.16.6.tar.gz)
- update to 2.16.6:
  https://github.com/ansible/ansible/blob/v2.16.6/changelogs/CHANGELOG-v2.16.rst
  * Bugfixes
  - Consolidated the list of internal static vars, centralized
    them as constant and completed from some missing entries.
  - Fix check for missing `_sub_plugin` attribute in older
    connection plugins (#82954)
  - Fixes permission for cache json file from 600 to 644
    (#82683).
  - Slight optimization to hostvars (instantiate template only
    once per host, vs per call to var).
  - allow_duplicates - fix evaluating if the current role allows
    duplicates instead of using the initial value from the
    duplicate's cached role.
  - ansible-config will now properly template defaults before
    dumping them.
  - ansible-test ansible-doc sanity test - do not remove
    underscores from plugin names in collections before calling
    ansible-doc (#82574).
  - async - Fix bug that stopped running async task in --check
    when check_mode: False was set as a task attribute - #82811
  - blockinfile - when create=true is used with a filename
    without path, the module crashed (#81638).
  - dnf - fix an issue when cached RPMs were left in the cache
    directory even when the keepcache setting was unset (#81954)
  - dnf5 - replace removed API calls
  - facts - add a generic detection for VMware in product name.
  - fetch - add error message when using dest with a trailing
    slash that becomes a local directory - #82878
  - find - do not fail on Permission errors (#82027).
  - unarchive modules now uses zipinfo options without relying on
    implementation defaults, making it more compatible with all
    OS/distributions.
  - winrm - Do not raise another exception during cleanup when a
    task is timed out - #81095</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1716465600">- update to 2.16.7:
  https://github.com/ansible/ansible/blob/v2.16.7/changelogs/CHANGELOG-v2.16.rst
  * Minor Changes
  - ansible.builtin.user - Remove user not found warning (#80267)
  * Bugfixes
  - Add a version ceiling constraint for pypsrp to avoid
    potential breaking changes in the 1.0.0 release.
  - Fix NEVRA parsing of package names that include digit(s) in
    them (#76463, #81018)
  - Fix handlers not being executed in lockstep using the linear
    strategy in some cases (#82307)
  - Give the tombstone error for include pre-fork like other
    tombstoned action/module plugins.
  - Include the task location when a module or action plugin is
    deprecated (#82450).
  - Mirror the behavior of dnf on the command line when handling
    NEVRAs with omitted epoch (#71808)
  - ansible-test - Automatically enable the PyPI proxy for the
    centos7 container to restore the ability to use pip in that
    container.
  - ansible_managed restored it's 'templatability' by ensuring
    the possible injection routes are cut off earlier in the
    process.
  - assemble - fixed missing parameter 'content' in
    `_get_diff_data` API (#82359).
  - dnf - fix an issue when installing a package by specifying a
    file it provides could result in installing a different
    package providing the same file than the package already
    installed resulting in resolution failure (#82461)
  - uri - update the documentation for follow_redirects.</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1718798400">- update to 2.16.8:
  https://github.com/ansible/ansible/blob/v2.16.8/changelogs/CHANGELOG-v2.16.rst
  * Minor Changes
  - ansible-test - Update pypi-test-container to version 3.1.0.
  * Bugfixes
  - Fix the task attribute resolved_action to show the FQCN
    instead of None when action or local_action is used in the
    playbook.
  - Fix using module_defaults with local_action/action (#81905).
  - fixed unit test test_borken_cowsay to address mock not been
    properly applied when existing unix system already have
    cowsay installed.
  - powershell - Implement more robust deletion mechanism for C#
    code compilation temporary files. This should avoid scenarios
    where the underlying temporary directory may be temporarily
    locked by antivirus tools or other IO problems. A failure to
    delete one of these temporary directories will result in a
    warning rather than an outright failure.</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1723032000">- new package ansible-core-2.16 for the 2.16.x version of ansible-core</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1723032001">- update to 2.16.9:
  https://github.com/ansible/ansible/blob/v2.16.9/changelogs/CHANGELOG-v2.16.rst
  * Bugfixes
  - dnf, dnf5 - fix for installing a set of packages by
    specifying them using a wildcard character (#83373)
  - linear strategy now provides a properly templated task name
    to the v2_runner_on_started callback event.
  - templating hostvars under native jinja will not cause
    serialization errors anymore.</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1723118400">- also make ansible-test a versioned subpackage</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1723550400">- update to 2.16.10:
  https://github.com/ansible/ansible/blob/v2.16.10/changelogs/CHANGELOG-v2.16.rst
  * Minor Changes
  - ansible-test - Improve the error message shown when an
    unknown --remote or --docker option is given.
  - ansible-test - Removed the vyos/1.1.8 network remote as it is
    no longer functional.
  * Bugfixes
  - config, restored the ability to set module compression via a
    variable
  - linear strategy: fix handlers included via include_tasks
    handler to be executed in lockstep (#83019)</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1726056000">- update to 2.16.11:
  https://github.com/ansible/ansible/blob/v2.16.11/changelogs/CHANGELOG-v2.16.rst
  * Bugfixes
  - Fix SemanticVersion.parse() to store the version string so
    that __repr__ reports it instead of None (#83831).
  - Fix an issue where registered variable was not available for
    templating in loop_control.label on skipped looped tasks
    (#83619)
  - Fix for meta tasks breaking host/fork affinity with
    host_pinned strategy (#83294)
  - Fix using the current task's directory for looking up
    relative paths within roles (#82695).
  - atomic_move - fix using the setgid bit on the parent
    directory when creating files (#46742, #67177).
  - connection plugins using the 'extras' option feature would
    need variables to match the plugin's loaded name, sometimes
    requiring fqcn, which is not the same as the
    documented/declared/expected variables. Now we fall back to
    the 'basename' of the fqcn, but plugin authors can still set
    the expected value directly.
  - csvfile lookup - give an error when no search term is
    provided using modern config syntax (#83689).
  - include_tasks - Display location when attempting to load a
    task list where include_* did not specify any value - #83874
  - module respawn - Address an issue with Python 2 where a
    respawned module could not parse module args (#83812)
  - powershell - Improve CLIXML decoding to decode all control
    characters and unicode characters that are encoded as
    surrogate pairs.
  - psrp - Fix bug when attempting to fetch a file path that
    contains special glob characters like []
  - runtime-metadata sanity test - do not crash on deprecations
    if galaxy.yml contains an empty version field (#83831).
  - ssh - Fix bug when attempting to fetch a file path with
    characters that should be quoted when using the piped
    transfer method</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1728648000">- update to 2.16.12:
  https://github.com/ansible/ansible/blob/v2.16.12/changelogs/CHANGELOG-v2.16.rst
  * Bugfixes
  - Add descriptions for ansible-galaxy install --help` and
    `ansible-galaxy role|collection install --help`.
  - ansible-galaxy install --help - Fix the usage text and
    document that the requirements file passed to -r can include
    collections and roles.
  - dnf5 - re-introduce the state: installed alias to state:
    present (#83960)</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1731585600">- update to 2.16.13:
  https://github.com/ansible/ansible/blob/v2.16.13/changelogs/CHANGELOG-v2.16.rst
  * Minor Changes
  - ansible-test - Improve container runtime probe error
    handling. When unexpected probe output is encountered, an
    error with more useful debugging information is provided.
  * Security Fixes
  - include_vars action - Ensure that result masking is correctly
    requested when vault-encrypted files are read.
    (CVE-2024-8775)
  - task result processing - Ensure that action-sourced result
    masking (_ansible_no_log=True) is preserved. (CVE-2024-8775)
  - user action won't allow ssh-keygen, chown and chmod to run on
    existing ssh public key file, avoiding traversal on existing
    symlinks (CVE-2024-9902).
  * Bugfixes
  - Improve performance on large inventories by reducing the
    number of implicit meta tasks.
  - ansible-test - Enable the sys.unraisablehook work-around for
    the pylint sanity test on Python 3.11. Previously the
    work-around was only enabled for Python 3.12 and later.
    However, the same issue has been discovered on Python 3.11.</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1732276800">- Backport patch to relax resolvelib dependency:
  771f7ad29ca4d259761eaa88673c2e32f6412bbe.patch
- Added necessary test dependencies: pytest-xdist, pytest-mock,
  pytz, passlib, git-core, and openssh to ensure proper test
  execution.
- Introduced the `ansible_python_version` variable and updated the
  test command.</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1732276801">- introduce ansible_core_major_minor_version macro to make the spec
  easier to manage</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1733227200">- update to 2.16.14:
  https://github.com/ansible/ansible/blob/v2.16.14/changelogs/CHANGELOG-v2.16.rst
  * Security Fixes
  - Templating will not prefer AnsibleUnsafe when a variable is
    referenced via hostvars - CVE-2024-11079
  * Bugfixes
  - ansible-test - Fix traceback that occurs after an interactive
    command fails.</changelog>
</package>
<package pkgid="3f154385b9fe80a4b09381f821015056b09fd5b2a2d1a79b47e06605571c3d7a343eb2ff43f87bf061be07b3d4d94c265ab6546b89ca193dd4576d6f7a1ecefd" name="ansible-core-2.16" arch="src">
  <version epoch="0" ver="2.16.14" rel="1.0.6.1.sr20241103"/>
  <changelog author="Johannes Kastl &lt;kastl@b1-systems.de&gt;" date="1702382400">- update to 2.15.8:
  * Minor Changes
  - ansible-test - Add FreeBSD 13.2 remote.
  - ansible-test - Removed freebsd/13.1 remote.
  * Bugfixes
  - unsafe data - Address an incompatibility when iterating or
    getting a single index from AnsibleUnsafeBytes
  - unsafe data - Address an incompatibility with
    AnsibleUnsafeText and AnsibleUnsafeBytes when pickling with
    protocol=0</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1705838400">- update to 2.16.0:
  https://github.com/ansible/ansible/blob/v2.16.0/changelogs/CHANGELOG-v2.16.rst
  * Bugfixes and Minor changes omitted for brevity, see full
    changelog
  * Breaking Changes / Porting Guide
  - Any plugin using the config system and the cli entry to use
    the timeout from the command line, will see the value change
    if the use had configured it in any of the lower precedence
    methods. If relying on this behaviour to consume the
    global/generic timeout from the DEFAULT_TIMEOUT constant,
    please consult the documentation on plugin configuration to
    add the overlaping entries.
  - ansible-test - Test plugins that rely on containers no longer
    support reusing running containers. The previous behavior was
    an undocumented, untested feature.
  - service module will not permanently configure variables/flags
    for openbsd when doing enable/disable operation anymore, this
    module was never meant to do this type of work, just to
    manage the service state itself. A rcctl_config or similar
    module should be created and used instead.
  * Deprecated Features
  - Deprecated ini config option collections_paths, use the
    singular form collections_path instead
  - Deprecated the env var ANSIBLE_COLLECTIONS_PATHS, use the
    singular form ANSIBLE_COLLECTIONS_PATH instead
  - Old style vars plugins which use the entrypoints
    get_host_vars or get_group_vars are deprecated. The plugin
    should be updated to inherit from BaseVarsPlugin and define a
    get_vars method as the entrypoint.
  - Support for Windows Server 2012 and 2012 R2 has been removed
    as the support end of life from Microsoft is October 10th
    2023. These versions of Windows will no longer be tested in
    this Ansible release and it cannot be guaranteed that they
    will continue to work going forward.
  - STRING_CONVERSION_ACTION config option is deprecated as it is
    no longer used in the Ansible Core code base.
  - the 'smart' option for setting a connection plugin is being
    removed as it's main purpose (choosing between ssh and
    paramiko) is now irrelevant.
  - vault and unfault filters - the undocumented vaultid
    parameter is deprecated and will be removed in ansible-core
    2.20. Use vault_id instead.
  - yum_repository - deprecated parameter 'keepcache' (#78693).
  * Removed Features (previously deprecated)
  - ActionBase - remove deprecated _remote_checksum method
  - PlayIterator - remove deprecated cache_block_tasks and
    get_original_task methods
  - Remove deprecated FileLock class
  - Removed Python 3.9 as a supported version on the controller.
    Python 3.10 or newer is required.
  - Removed include which has been deprecated in Ansible 2.12.
    Use include_tasks or import_tasks instead.
  - Templar - remove deprecated shared_loader_obj parameter of
    __init__
  - fetch_url - remove auto disabling decompress when gzip is not
    available
  - get_action_args_with_defaults - remove deprecated
    redirected_names method parameter
  - ansible-test - Removed support for the remote Windows targets
    2012 and 2012-R2
  - inventory_cache - remove deprecated
    default.fact_caching_prefix ini configuration option, use
    defaults.fact_caching_prefix instead.
  - module_utils/basic.py - Removed Python 3.5 as a supported
    remote version. Python 2.7 or Python 3.6+ is now required.
  - stat - removed unused get_md5 parameter.
  * Security Fixes
  - ansible-galaxy - Prevent roles from using symlinks to
    overwrite files outside of the installation directory
    (CVE-2023-5115)
  * Known issues
  - ansible-galaxy - dies in the middle of installing a role when
    that role contains Java inner classes (files with $ in the
    file name). This is by design, to exclude temporary or backup
    files. (#81553).
  - ansible-test - The pep8 sanity test is unable to detect
    f-string spacing issues (E201, E202) on Python 3.10 and 3.11.
    They are correctly detected under Python 3.12. See
    (PyCQA/pycodestyle#1190).</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1705838401">- update to 2.16.1:
  https://github.com/ansible/ansible/blob/v2.16.1/changelogs/CHANGELOG-v2.16.rst
  * Breaking Changes / Porting Guide
  - assert - Nested templating may result in an inability for the
    conditional to be evaluated. See the porting guide for more
    information.
  * Security Fixes
  - templating - Address issues where internal templating can
    cause unsafe variables to lose their unsafe designation
    (CVE-2023-5764)
  * Bugfixes
  - Fix issue where an include_tasks handler in a role was not
    able to locate a file in tasks/ when tasks_from was used as a
    role entry point and main.yml was not present (#82241)
  - Plugin loader does not dedupe nor cache filter/test plugins
    by file basename, but full path name.
  - Restoring the ability of filters/tests can have same file
    base name but different tests/filters defined inside.
  - ansible-pull now will expand relative paths for the
  - d|--directory option is now expanded before use.
  - ansible-pull will now correctly handle become and connection
    password file options for ansible-playbook.
  - flush_handlers - properly handle a handler failure in a
    nested block when force_handlers is set
    (http://github.com/ansible/ansible/issues/81532)
  - module no_log will no longer affect top level booleans, for
    example no_log_module_parameter='a' will no longer hide
    changed=False as a 'no log value' (matches 'a').
  - role params now have higher precedence than host facts again,
    matching documentation, this had unintentionally changed in
    2.15.
  - wait_for should not handle 'non mmapable files' again.</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1705838402">- update to 2.16.2:
  https://github.com/ansible/ansible/blob/v2.16.2/changelogs/CHANGELOG-v2.16.rst
  * Bugfixes
  - unsafe data - Address an incompatibility when iterating or
    getting a single index from AnsibleUnsafeBytes
  - unsafe data - Address an incompatibility with
    AnsibleUnsafeText and AnsibleUnsafeBytes when pickling with
    protocol=0</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1706616000">- update to 2.16.3:
  https://github.com/ansible/ansible/blob/v2.16.3/changelogs/CHANGELOG-v2.16.rst
  * Security Fixes
  - ANSIBLE_NO_LOG - Address issue where ANSIBLE_NO_LOG was
    ignored (CVE-2024-0690)
  * Bugfixes
  - Run all handlers with the same listen topic, even when
    notified from another handler (#82363).
  - ansible-galaxy role import - fix using the role_name in a
    standalone role's galaxy_info metadata by disabling automatic
    removal of the ansible-role- prefix. This matches the
    behavior of the Galaxy UI which also no longer implicitly
    removes the ansible-role- prefix. Use the --role-name option
    or add a role_name to the galaxy_info dictionary in the
    role's meta/main.yml to use an alternate role name.
  - ansible-test sanity --test runtime-metadata - add
    action_plugin as a valid field for modules in the schema
    (#82562).
  - ansible-config init will now dedupe ini entries from plugins.
  - ansible-galaxy role import - exit with 1 when the import
    fails (#82175).
  - ansible-galaxy role install - normalize tarfile paths and
    symlinks using ansible.utils.path.unfrackpath and consider
    them valid as long as the realpath is in the tarfile's role
    directory (#81965).
  - delegate_to when set to an empty or undefined variable will
    now give a proper error.
  - dwim functions for lookups should be better at detectging
    role context even in abscense of tasks/main.
  - roles, code cleanup and performance optimization of
    dependencies, now cached, and public setting is now
    determined once, at role instantiation.
  - roles, the static property is now correctly set, this will
    fix issues with public and DEFAULT_PRIVATE_ROLE_VARS controls
    on exporting vars.
  - unsafe data - Enable directly using AnsibleUnsafeText with
    Python pathlib (#82414)</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1710590400">- update to 2.16.4:
  https://github.com/ansible/ansible/blob/v2.16.4/changelogs/CHANGELOG-v2.16.rst
  * Bugfixes
  - Fix loading vars_plugins in roles (#82239).
  - expect - fix argument spec error using timeout=null (#80982).
  - include_vars - fix calculating depth relative to the root and
    ensure all files are included (#80987).
  - templating - ensure syntax errors originating from a template
    being compiled into Python code object result in a failure
    (#82606)</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1711540800">- update to 2.16.5:
  https://github.com/ansible/ansible/blob/v2.16.5/changelogs/CHANGELOG-v2.16.rst
  * Minor Changes
  - ansible-test - Add a work-around for permission denied errors
    when using pytest &gt;= 8 on multi-user systems with an
    installed version of ansible-test.
  * Bugfixes
  - Fix an issue when setting a plugin name from an unsafe source
    resulted in ValueError: unmarshallable object (#82708)
  - Harden python templates for respawn and ansiballz around str
    literal quoting
  - ansible-test - The libexpat package is automatically upgraded
    during remote bootstrapping to maintain compatibility with
    newer Python packages.
  - template - Fix error when templating an unsafe string which
    corresponds to an invalid type in Python (#82600).
  - winrm - does not hang when attempting to get process output
    when stdin write failed</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1713268800">- adjust spec to new name for PyPI file name (underscore instead of
  hyphen: ansible_core-2.16.6.tar.gz)
- update to 2.16.6:
  https://github.com/ansible/ansible/blob/v2.16.6/changelogs/CHANGELOG-v2.16.rst
  * Bugfixes
  - Consolidated the list of internal static vars, centralized
    them as constant and completed from some missing entries.
  - Fix check for missing `_sub_plugin` attribute in older
    connection plugins (#82954)
  - Fixes permission for cache json file from 600 to 644
    (#82683).
  - Slight optimization to hostvars (instantiate template only
    once per host, vs per call to var).
  - allow_duplicates - fix evaluating if the current role allows
    duplicates instead of using the initial value from the
    duplicate's cached role.
  - ansible-config will now properly template defaults before
    dumping them.
  - ansible-test ansible-doc sanity test - do not remove
    underscores from plugin names in collections before calling
    ansible-doc (#82574).
  - async - Fix bug that stopped running async task in --check
    when check_mode: False was set as a task attribute - #82811
  - blockinfile - when create=true is used with a filename
    without path, the module crashed (#81638).
  - dnf - fix an issue when cached RPMs were left in the cache
    directory even when the keepcache setting was unset (#81954)
  - dnf5 - replace removed API calls
  - facts - add a generic detection for VMware in product name.
  - fetch - add error message when using dest with a trailing
    slash that becomes a local directory - #82878
  - find - do not fail on Permission errors (#82027).
  - unarchive modules now uses zipinfo options without relying on
    implementation defaults, making it more compatible with all
    OS/distributions.
  - winrm - Do not raise another exception during cleanup when a
    task is timed out - #81095</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1716465600">- update to 2.16.7:
  https://github.com/ansible/ansible/blob/v2.16.7/changelogs/CHANGELOG-v2.16.rst
  * Minor Changes
  - ansible.builtin.user - Remove user not found warning (#80267)
  * Bugfixes
  - Add a version ceiling constraint for pypsrp to avoid
    potential breaking changes in the 1.0.0 release.
  - Fix NEVRA parsing of package names that include digit(s) in
    them (#76463, #81018)
  - Fix handlers not being executed in lockstep using the linear
    strategy in some cases (#82307)
  - Give the tombstone error for include pre-fork like other
    tombstoned action/module plugins.
  - Include the task location when a module or action plugin is
    deprecated (#82450).
  - Mirror the behavior of dnf on the command line when handling
    NEVRAs with omitted epoch (#71808)
  - ansible-test - Automatically enable the PyPI proxy for the
    centos7 container to restore the ability to use pip in that
    container.
  - ansible_managed restored it's 'templatability' by ensuring
    the possible injection routes are cut off earlier in the
    process.
  - assemble - fixed missing parameter 'content' in
    `_get_diff_data` API (#82359).
  - dnf - fix an issue when installing a package by specifying a
    file it provides could result in installing a different
    package providing the same file than the package already
    installed resulting in resolution failure (#82461)
  - uri - update the documentation for follow_redirects.</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1718798400">- update to 2.16.8:
  https://github.com/ansible/ansible/blob/v2.16.8/changelogs/CHANGELOG-v2.16.rst
  * Minor Changes
  - ansible-test - Update pypi-test-container to version 3.1.0.
  * Bugfixes
  - Fix the task attribute resolved_action to show the FQCN
    instead of None when action or local_action is used in the
    playbook.
  - Fix using module_defaults with local_action/action (#81905).
  - fixed unit test test_borken_cowsay to address mock not been
    properly applied when existing unix system already have
    cowsay installed.
  - powershell - Implement more robust deletion mechanism for C#
    code compilation temporary files. This should avoid scenarios
    where the underlying temporary directory may be temporarily
    locked by antivirus tools or other IO problems. A failure to
    delete one of these temporary directories will result in a
    warning rather than an outright failure.</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1723032000">- new package ansible-core-2.16 for the 2.16.x version of ansible-core</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1723032001">- update to 2.16.9:
  https://github.com/ansible/ansible/blob/v2.16.9/changelogs/CHANGELOG-v2.16.rst
  * Bugfixes
  - dnf, dnf5 - fix for installing a set of packages by
    specifying them using a wildcard character (#83373)
  - linear strategy now provides a properly templated task name
    to the v2_runner_on_started callback event.
  - templating hostvars under native jinja will not cause
    serialization errors anymore.</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1723118400">- also make ansible-test a versioned subpackage</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1723550400">- update to 2.16.10:
  https://github.com/ansible/ansible/blob/v2.16.10/changelogs/CHANGELOG-v2.16.rst
  * Minor Changes
  - ansible-test - Improve the error message shown when an
    unknown --remote or --docker option is given.
  - ansible-test - Removed the vyos/1.1.8 network remote as it is
    no longer functional.
  * Bugfixes
  - config, restored the ability to set module compression via a
    variable
  - linear strategy: fix handlers included via include_tasks
    handler to be executed in lockstep (#83019)</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1726056000">- update to 2.16.11:
  https://github.com/ansible/ansible/blob/v2.16.11/changelogs/CHANGELOG-v2.16.rst
  * Bugfixes
  - Fix SemanticVersion.parse() to store the version string so
    that __repr__ reports it instead of None (#83831).
  - Fix an issue where registered variable was not available for
    templating in loop_control.label on skipped looped tasks
    (#83619)
  - Fix for meta tasks breaking host/fork affinity with
    host_pinned strategy (#83294)
  - Fix using the current task's directory for looking up
    relative paths within roles (#82695).
  - atomic_move - fix using the setgid bit on the parent
    directory when creating files (#46742, #67177).
  - connection plugins using the 'extras' option feature would
    need variables to match the plugin's loaded name, sometimes
    requiring fqcn, which is not the same as the
    documented/declared/expected variables. Now we fall back to
    the 'basename' of the fqcn, but plugin authors can still set
    the expected value directly.
  - csvfile lookup - give an error when no search term is
    provided using modern config syntax (#83689).
  - include_tasks - Display location when attempting to load a
    task list where include_* did not specify any value - #83874
  - module respawn - Address an issue with Python 2 where a
    respawned module could not parse module args (#83812)
  - powershell - Improve CLIXML decoding to decode all control
    characters and unicode characters that are encoded as
    surrogate pairs.
  - psrp - Fix bug when attempting to fetch a file path that
    contains special glob characters like []
  - runtime-metadata sanity test - do not crash on deprecations
    if galaxy.yml contains an empty version field (#83831).
  - ssh - Fix bug when attempting to fetch a file path with
    characters that should be quoted when using the piped
    transfer method</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1728648000">- update to 2.16.12:
  https://github.com/ansible/ansible/blob/v2.16.12/changelogs/CHANGELOG-v2.16.rst
  * Bugfixes
  - Add descriptions for ansible-galaxy install --help` and
    `ansible-galaxy role|collection install --help`.
  - ansible-galaxy install --help - Fix the usage text and
    document that the requirements file passed to -r can include
    collections and roles.
  - dnf5 - re-introduce the state: installed alias to state:
    present (#83960)</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1731585600">- update to 2.16.13:
  https://github.com/ansible/ansible/blob/v2.16.13/changelogs/CHANGELOG-v2.16.rst
  * Minor Changes
  - ansible-test - Improve container runtime probe error
    handling. When unexpected probe output is encountered, an
    error with more useful debugging information is provided.
  * Security Fixes
  - include_vars action - Ensure that result masking is correctly
    requested when vault-encrypted files are read.
    (CVE-2024-8775)
  - task result processing - Ensure that action-sourced result
    masking (_ansible_no_log=True) is preserved. (CVE-2024-8775)
  - user action won't allow ssh-keygen, chown and chmod to run on
    existing ssh public key file, avoiding traversal on existing
    symlinks (CVE-2024-9902).
  * Bugfixes
  - Improve performance on large inventories by reducing the
    number of implicit meta tasks.
  - ansible-test - Enable the sys.unraisablehook work-around for
    the pylint sanity test on Python 3.11. Previously the
    work-around was only enabled for Python 3.12 and later.
    However, the same issue has been discovered on Python 3.11.</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1732276800">- Backport patch to relax resolvelib dependency:
  771f7ad29ca4d259761eaa88673c2e32f6412bbe.patch
- Added necessary test dependencies: pytest-xdist, pytest-mock,
  pytz, passlib, git-core, and openssh to ensure proper test
  execution.
- Introduced the `ansible_python_version` variable and updated the
  test command.</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1732276801">- introduce ansible_core_major_minor_version macro to make the spec
  easier to manage</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1733227200">- update to 2.16.14:
  https://github.com/ansible/ansible/blob/v2.16.14/changelogs/CHANGELOG-v2.16.rst
  * Security Fixes
  - Templating will not prefer AnsibleUnsafe when a variable is
    referenced via hostvars - CVE-2024-11079
  * Bugfixes
  - ansible-test - Fix traceback that occurs after an interactive
    command fails.</changelog>
</package>
<package pkgid="5852b1e9739ae0ca1783587d01db844b39b26b3b351dd13cb68eec5f8c49c4246359661623a12fe6f17177f5716492d027ae227ceaf920bb23d8e8c1ec4921bc" name="ansible-core" arch="noarch">
  <version epoch="0" ver="2.17.6" rel="1.0.2.1.sr20241103"/>
  <changelog author="Johannes Kastl &lt;kastl@b1-systems.de&gt;" date="1696939200">- update to 2.15.5:
  * Minor Changes
  - ansible-galaxy dependency resolution messages have changed
    the unexplained 'virtual' collection for the specific type
    ('scm', 'dir', etc) that is more user friendly
  * Security Fixes
  - ansible-galaxy - Prevent roles from using symlinks to
    overwrite files outside of the installation directory
    (CVE-2023-5115)
  * Bugfixes
  - Allow for searching handler subdir for included task via
    include_role (#81722)
  - PluginLoader - fix Jinja plugin performance issues (#79652)
  - ansible.module_utils.service - ensure binary data
    transmission in daemonize()
  - ansible.module_utils.service - fix inter-process
    communication in daemonize()
  - ansible-galaxy - started allowing the use of pre-releases for
    collections that do not have any stable versions published.
    (#81606)
  - ansible-galaxy - started allowing the use of pre-releases for
    dependencies on any level of the dependency tree that
    specifically demand exact pre-release versions of collections
    and not version ranges. (#81606)
  - ansible-galaxy error on dependency resolution will not error
    itself due to 'virtual' collections not having a
    name/namespace.
  - ansible-galaxy info - fix reporting no role found when
    lookup_role_by_name returns None.
  - role deduplication - don't deduplicate before a role has had
    a task run for that particular host (#81486).
  - uri/urls - Add compat function to handle the ability to parse
    the filename from a Content-Disposition header (#81806)
  - winrm - Better handle send input failures when communicating
    with hosts under load</changelog>
  <changelog author="Johannes Kastl &lt;kastl@b1-systems.de&gt;" date="1699358400">- update to 2.15.6:
  * Minor Changes
  - ansible-test - Windows 2012 and 2012-R2 instances are now
    requested from Azure instead of AWS.
  * Bugfixes
  - Fix run_once being incorrectly interpreted on handlers
    (#81666)
  - Plugin loader does not dedupe nor cache filter/test plugins
    by file basename, but full path name.
  - Properly template tags in parent blocks (#81053)
  - Restoring the ability of filters/tests can have same file
    base name but different tests/filters defined inside.
  - import_role reverts to previous behavior of exporting vars at
    compile time.
  - ansible-galaxy - Provide a better error message when using a
    requirements file with an invalid format - #81901
  - ansible-inventory - index available_hosts for major
    performance boost when dumping large inventories
  - ansible-test - Fix parsing of cgroup entries which contain a
    : in the path (#81977).</changelog>
  <changelog author="Johannes Kastl &lt;kastl@b1-systems.de&gt;" date="1701777600">- update to 2.15.7:
  This release includes a fix for CVE-2023-5764, where internal
  templating actions could result in unsafe data losing its unsafe
  designation.
  * Breaking Changes / Porting Guide
  - assert - Nested templating may result in an inability for the
    conditional to be evaluated. See the porting guide for more
    information.
  * Security Fixes
  - templating - Address issues where internal templating can
    cause unsafe variables to lose their unsafe designation
    (CVE-2023-5764)
  * Bugfixes
  - ansible-pull now will expand relative paths for the
  - d|--directory option is now expanded before use.
  - flush_handlers - properly handle a handler failure in a
    nested block when force_handlers is set
    (http://github.com/ansible/ansible/issues/81532)
  - module no_log will no longer affect top level booleans, for
    example no_log_module_parameter='a' will no longer hide
    changed=False as a 'no log value' (matches 'a').
  - modules/user.py - Add check for valid directory when creating
    new user homedir (allows /dev/null as skeleton) (#75063)
  - role params now have higher precedence than host facts again,
    matching documentation, this had unintentionally changed in
    2.15.
  - wait_for should not handle 'non mmapable files' again.</changelog>
  <changelog author="Johannes Kastl &lt;kastl@b1-systems.de&gt;" date="1702382400">- update to 2.15.8:
  * Minor Changes
  - ansible-test - Add FreeBSD 13.2 remote.
  - ansible-test - Removed freebsd/13.1 remote.
  * Bugfixes
  - unsafe data - Address an incompatibility when iterating or
    getting a single index from AnsibleUnsafeBytes
  - unsafe data - Address an incompatibility with
    AnsibleUnsafeText and AnsibleUnsafeBytes when pickling with
    protocol=0</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1705838400">- update to 2.16.0:
  https://github.com/ansible/ansible/blob/v2.16.0/changelogs/CHANGELOG-v2.16.rst
  * Bugfixes and Minor changes omitted for brevity, see full
    changelog
  * Breaking Changes / Porting Guide
  - Any plugin using the config system and the cli entry to use
    the timeout from the command line, will see the value change
    if the use had configured it in any of the lower precedence
    methods. If relying on this behaviour to consume the
    global/generic timeout from the DEFAULT_TIMEOUT constant,
    please consult the documentation on plugin configuration to
    add the overlaping entries.
  - ansible-test - Test plugins that rely on containers no longer
    support reusing running containers. The previous behavior was
    an undocumented, untested feature.
  - service module will not permanently configure variables/flags
    for openbsd when doing enable/disable operation anymore, this
    module was never meant to do this type of work, just to
    manage the service state itself. A rcctl_config or similar
    module should be created and used instead.
  * Deprecated Features
  - Deprecated ini config option collections_paths, use the
    singular form collections_path instead
  - Deprecated the env var ANSIBLE_COLLECTIONS_PATHS, use the
    singular form ANSIBLE_COLLECTIONS_PATH instead
  - Old style vars plugins which use the entrypoints
    get_host_vars or get_group_vars are deprecated. The plugin
    should be updated to inherit from BaseVarsPlugin and define a
    get_vars method as the entrypoint.
  - Support for Windows Server 2012 and 2012 R2 has been removed
    as the support end of life from Microsoft is October 10th
    2023. These versions of Windows will no longer be tested in
    this Ansible release and it cannot be guaranteed that they
    will continue to work going forward.
  - STRING_CONVERSION_ACTION config option is deprecated as it is
    no longer used in the Ansible Core code base.
  - the 'smart' option for setting a connection plugin is being
    removed as it's main purpose (choosing between ssh and
    paramiko) is now irrelevant.
  - vault and unfault filters - the undocumented vaultid
    parameter is deprecated and will be removed in ansible-core
    2.20. Use vault_id instead.
  - yum_repository - deprecated parameter 'keepcache' (#78693).
  * Removed Features (previously deprecated)
  - ActionBase - remove deprecated _remote_checksum method
  - PlayIterator - remove deprecated cache_block_tasks and
    get_original_task methods
  - Remove deprecated FileLock class
  - Removed Python 3.9 as a supported version on the controller.
    Python 3.10 or newer is required.
  - Removed include which has been deprecated in Ansible 2.12.
    Use include_tasks or import_tasks instead.
  - Templar - remove deprecated shared_loader_obj parameter of
    __init__
  - fetch_url - remove auto disabling decompress when gzip is not
    available
  - get_action_args_with_defaults - remove deprecated
    redirected_names method parameter
  - ansible-test - Removed support for the remote Windows targets
    2012 and 2012-R2
  - inventory_cache - remove deprecated
    default.fact_caching_prefix ini configuration option, use
    defaults.fact_caching_prefix instead.
  - module_utils/basic.py - Removed Python 3.5 as a supported
    remote version. Python 2.7 or Python 3.6+ is now required.
  - stat - removed unused get_md5 parameter.
  * Security Fixes
  - ansible-galaxy - Prevent roles from using symlinks to
    overwrite files outside of the installation directory
    (CVE-2023-5115)
  * Known issues
  - ansible-galaxy - dies in the middle of installing a role when
    that role contains Java inner classes (files with $ in the
    file name). This is by design, to exclude temporary or backup
    files. (#81553).
  - ansible-test - The pep8 sanity test is unable to detect
    f-string spacing issues (E201, E202) on Python 3.10 and 3.11.
    They are correctly detected under Python 3.12. See
    (PyCQA/pycodestyle#1190).</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1705838401">- update to 2.16.1:
  https://github.com/ansible/ansible/blob/v2.16.1/changelogs/CHANGELOG-v2.16.rst
  * Breaking Changes / Porting Guide
  - assert - Nested templating may result in an inability for the
    conditional to be evaluated. See the porting guide for more
    information.
  * Security Fixes
  - templating - Address issues where internal templating can
    cause unsafe variables to lose their unsafe designation
    (CVE-2023-5764)
  * Bugfixes
  - Fix issue where an include_tasks handler in a role was not
    able to locate a file in tasks/ when tasks_from was used as a
    role entry point and main.yml was not present (#82241)
  - Plugin loader does not dedupe nor cache filter/test plugins
    by file basename, but full path name.
  - Restoring the ability of filters/tests can have same file
    base name but different tests/filters defined inside.
  - ansible-pull now will expand relative paths for the
  - d|--directory option is now expanded before use.
  - ansible-pull will now correctly handle become and connection
    password file options for ansible-playbook.
  - flush_handlers - properly handle a handler failure in a
    nested block when force_handlers is set
    (http://github.com/ansible/ansible/issues/81532)
  - module no_log will no longer affect top level booleans, for
    example no_log_module_parameter='a' will no longer hide
    changed=False as a 'no log value' (matches 'a').
  - role params now have higher precedence than host facts again,
    matching documentation, this had unintentionally changed in
    2.15.
  - wait_for should not handle 'non mmapable files' again.</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1705838402">- update to 2.16.2:
  https://github.com/ansible/ansible/blob/v2.16.2/changelogs/CHANGELOG-v2.16.rst
  * Bugfixes
  - unsafe data - Address an incompatibility when iterating or
    getting a single index from AnsibleUnsafeBytes
  - unsafe data - Address an incompatibility with
    AnsibleUnsafeText and AnsibleUnsafeBytes when pickling with
    protocol=0</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1706616000">- update to 2.16.3:
  https://github.com/ansible/ansible/blob/v2.16.3/changelogs/CHANGELOG-v2.16.rst
  * Security Fixes
  - ANSIBLE_NO_LOG - Address issue where ANSIBLE_NO_LOG was
    ignored (CVE-2024-0690)
  * Bugfixes
  - Run all handlers with the same listen topic, even when
    notified from another handler (#82363).
  - ansible-galaxy role import - fix using the role_name in a
    standalone role's galaxy_info metadata by disabling automatic
    removal of the ansible-role- prefix. This matches the
    behavior of the Galaxy UI which also no longer implicitly
    removes the ansible-role- prefix. Use the --role-name option
    or add a role_name to the galaxy_info dictionary in the
    role's meta/main.yml to use an alternate role name.
  - ansible-test sanity --test runtime-metadata - add
    action_plugin as a valid field for modules in the schema
    (#82562).
  - ansible-config init will now dedupe ini entries from plugins.
  - ansible-galaxy role import - exit with 1 when the import
    fails (#82175).
  - ansible-galaxy role install - normalize tarfile paths and
    symlinks using ansible.utils.path.unfrackpath and consider
    them valid as long as the realpath is in the tarfile's role
    directory (#81965).
  - delegate_to when set to an empty or undefined variable will
    now give a proper error.
  - dwim functions for lookups should be better at detectging
    role context even in abscense of tasks/main.
  - roles, code cleanup and performance optimization of
    dependencies, now cached, and public setting is now
    determined once, at role instantiation.
  - roles, the static property is now correctly set, this will
    fix issues with public and DEFAULT_PRIVATE_ROLE_VARS controls
    on exporting vars.
  - unsafe data - Enable directly using AnsibleUnsafeText with
    Python pathlib (#82414)</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1710590400">- update to 2.16.4:
  https://github.com/ansible/ansible/blob/v2.16.4/changelogs/CHANGELOG-v2.16.rst
  * Bugfixes
  - Fix loading vars_plugins in roles (#82239).
  - expect - fix argument spec error using timeout=null (#80982).
  - include_vars - fix calculating depth relative to the root and
    ensure all files are included (#80987).
  - templating - ensure syntax errors originating from a template
    being compiled into Python code object result in a failure
    (#82606)</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1711540800">- update to 2.16.5:
  https://github.com/ansible/ansible/blob/v2.16.5/changelogs/CHANGELOG-v2.16.rst
  * Minor Changes
  - ansible-test - Add a work-around for permission denied errors
    when using pytest &gt;= 8 on multi-user systems with an
    installed version of ansible-test.
  * Bugfixes
  - Fix an issue when setting a plugin name from an unsafe source
    resulted in ValueError: unmarshallable object (#82708)
  - Harden python templates for respawn and ansiballz around str
    literal quoting
  - ansible-test - The libexpat package is automatically upgraded
    during remote bootstrapping to maintain compatibility with
    newer Python packages.
  - template - Fix error when templating an unsafe string which
    corresponds to an invalid type in Python (#82600).
  - winrm - does not hang when attempting to get process output
    when stdin write failed</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1713268800">- adjust spec to new name for PyPI file name (underscore instead of
  hyphen: ansible_core-2.16.6.tar.gz)
- update to 2.16.6:
  https://github.com/ansible/ansible/blob/v2.16.6/changelogs/CHANGELOG-v2.16.rst
  * Bugfixes
  - Consolidated the list of internal static vars, centralized
    them as constant and completed from some missing entries.
  - Fix check for missing `_sub_plugin` attribute in older
    connection plugins (#82954)
  - Fixes permission for cache json file from 600 to 644
    (#82683).
  - Slight optimization to hostvars (instantiate template only
    once per host, vs per call to var).
  - allow_duplicates - fix evaluating if the current role allows
    duplicates instead of using the initial value from the
    duplicate's cached role.
  - ansible-config will now properly template defaults before
    dumping them.
  - ansible-test ansible-doc sanity test - do not remove
    underscores from plugin names in collections before calling
    ansible-doc (#82574).
  - async - Fix bug that stopped running async task in --check
    when check_mode: False was set as a task attribute - #82811
  - blockinfile - when create=true is used with a filename
    without path, the module crashed (#81638).
  - dnf - fix an issue when cached RPMs were left in the cache
    directory even when the keepcache setting was unset (#81954)
  - dnf5 - replace removed API calls
  - facts - add a generic detection for VMware in product name.
  - fetch - add error message when using dest with a trailing
    slash that becomes a local directory - #82878
  - find - do not fail on Permission errors (#82027).
  - unarchive modules now uses zipinfo options without relying on
    implementation defaults, making it more compatible with all
    OS/distributions.
  - winrm - Do not raise another exception during cleanup when a
    task is timed out - #81095</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1716465600">- update to 2.16.7:
  https://github.com/ansible/ansible/blob/v2.16.7/changelogs/CHANGELOG-v2.16.rst
  * Minor Changes
  - ansible.builtin.user - Remove user not found warning (#80267)
  * Bugfixes
  - Add a version ceiling constraint for pypsrp to avoid
    potential breaking changes in the 1.0.0 release.
  - Fix NEVRA parsing of package names that include digit(s) in
    them (#76463, #81018)
  - Fix handlers not being executed in lockstep using the linear
    strategy in some cases (#82307)
  - Give the tombstone error for include pre-fork like other
    tombstoned action/module plugins.
  - Include the task location when a module or action plugin is
    deprecated (#82450).
  - Mirror the behavior of dnf on the command line when handling
    NEVRAs with omitted epoch (#71808)
  - ansible-test - Automatically enable the PyPI proxy for the
    centos7 container to restore the ability to use pip in that
    container.
  - ansible_managed restored it's 'templatability' by ensuring
    the possible injection routes are cut off earlier in the
    process.
  - assemble - fixed missing parameter 'content' in
    `_get_diff_data` API (#82359).
  - dnf - fix an issue when installing a package by specifying a
    file it provides could result in installing a different
    package providing the same file than the package already
    installed resulting in resolution failure (#82461)
  - uri - update the documentation for follow_redirects.</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1718798400">- update to 2.16.8:
  https://github.com/ansible/ansible/blob/v2.16.8/changelogs/CHANGELOG-v2.16.rst
  * Minor Changes
  - ansible-test - Update pypi-test-container to version 3.1.0.
  * Bugfixes
  - Fix the task attribute resolved_action to show the FQCN
    instead of None when action or local_action is used in the
    playbook.
  - Fix using module_defaults with local_action/action (#81905).
  - fixed unit test test_borken_cowsay to address mock not been
    properly applied when existing unix system already have
    cowsay installed.
  - powershell - Implement more robust deletion mechanism for C#
    code compilation temporary files. This should avoid scenarios
    where the underlying temporary directory may be temporarily
    locked by antivirus tools or other IO problems. A failure to
    delete one of these temporary directories will result in a
    warning rather than an outright failure.</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1720958400">- update to 2.17.0:
  https://github.com/ansible/ansible/blob/v2.17.0/changelogs/CHANGELOG-v2.17.rst
  * Major Changes
  - urls.py - Removed support for Python 2
  * Minor Changes
  - Add dump and passno mount information to facts component
    (#80478)
  - Added MIRACLE LINUX 9.2 in RedHat OS Family.
  - Interpreter Discovery - Remove hardcoded references to
    specific python interpreters to use for certain distro
    versions, and modify logic for python3 to become the default.
  - Use Python's built-in functools.update_wrapper instead an
    inline copy from Python 3.7.
  - User can now set ansible.log to record higher verbosity than
    what is specified for display via new configuration item
    LOG_VERBOSITY.
  - DEFAULT_PRIVATE_ROLE_VARS is now overridden by explicit
    setting of public for include_roles and import_roles.
  - ansible-galaxy role|collection init - accept --extra-vars to
    supplement/override the variables ansible-galaxy injects for
    templating .j2 files in the skeleton.
  - import_role action now also gets a public option that
    controls variable exports, default depending on
    DEFAULT_PRIVATE_ROLE_VARS (if using defaults equates to
    public=True).
  - added configuration item TARGET_LOG_INFO that allows the
    user/author to add an information string to the log output on
    targets.
  - ansible-doc - treat double newlines in documentation strings
    as paragraph breaks. This is useful to create multi-paragraph
    notes in module/plugin documentation (#82465).
  - ansible-doc output has been revamped to make it more visually
    pleasing when going to a terminal, also more concise, use -v
    to show extra information.
  - ansible-galaxy - Started normalizing build directory with a
    trailing separator when building collections, internally.
    (#81619).
  - ansible-galaxy dependency resolution messages have changed
    the unexplained 'virtual' collection for the specific type
    ('scm', 'dir', etc) that is more user friendly
  - ansible-test - Add Alpine 3.19 container.
  - ansible-test - Add Alpine 3.19 to remotes.
  - ansible-test - Add Fedora 39 container.
  - ansible-test - Add Fedora 39 remote.
  - ansible-test - Add a work-around for permission denied errors
    when using pytest &gt;= 8 on multi-user systems with an
    installed version of ansible-test.
  - ansible-test - Add support for RHEL 9.3 remotes.
  - ansible-test - Added a macOS 14.3 remote VM.
  - ansible-test - Bump the nios-test-container from version
    2.0.0 to version 3.0.0.
  - ansible-test - Containers and remotes managed by ansible-test
    will have their Python EXTERNALLY-MANAGED marker (PEP668)
    removed. This provides backwards compatibility for existing
    tests running in newer environments which mark their Python
    as externally managed. A future version of ansible-test may
    change this behavior, requiring tests to be adapted to such
    environments.
  - ansible-test - Make Python 3.12 the default version used in
    the base and default containers.
  - ansible-test - Remove Alpine 3(.18) container.
  - ansible-test - Remove Alpine 3.18 from remotes.
  - ansible-test - Remove Fedora 38 remote support.
  - ansible-test - Remove Fedora 38 test container.
  - ansible-test - Remove rhel/9.2 test remote
  - ansible-test - Remove the FreeBSD 13.2 remote.
  - ansible-test - Removed fallback to virtualenv when -m venv is
    non-functional.
  - ansible-test - Removed test remotes: macos/13.2
  - ansible-test - Removed the no-basestring sanity test. The
    test is no longer necessary now that Python 3 is required.
  - ansible-test - Removed the no-dict-iteritems,
    no-dict-iterkeys and no-dict-itervalues sanity tests. The
    tests are no longer necessary since Python 3 is required.
  - ansible-test - Removed the no-main-display sanity test. The
    unwanted pattern is unlikely to occur, since the test has
    existed since Ansible 2.8.
  - ansible-test - Removed the no-unicode-literals sanity test.
    The test is unnecessary now that Python 3 is required and the
    unicode_literals feature has no effect.
  - ansible-test - Special handling for installation of
    cryptography has been removed, as it is no longer necessary.
  - ansible-test - The shellcheck sanity test no longer disables
    the SC2164 check. In most cases, seeing this error means the
    script is missing set -e.
  - ansible-test - The unidiomatic-typecheck rule has been
    enabled in the pylint sanity test.
  - ansible-test - The unidiomatic-typecheck rule has been
    removed from the validate-modules sanity test.
  - ansible-test - Update the base and default containers to use
    Ubuntu 22.04 for the base image. This also updates PowerShell
    to version 7.4.0 with .NET 8.0.0 and ShellCheck to version
    0.8.0.
  - ansible-test - Updated the CloudStack test container to
    version 1.7.0.
  - ansible-test - Updated the distro test containers to version
    6.3.0 to include coverage 7.3.2 for Python 3.8+. The alpine3
    container is now based on 3.18 instead of 3.17 and includes
    Python 3.11 instead of Python 3.10.
  - ansible-test - Updated the distro test containers to version
    7.1.0.
  - ansible-test - When ansible-test installs requirements, it
    now instructs pip to allow installs on externally managed
    environments as defined by PEP 668. This only occurs in
    ephemeral environments managed by ansible-test, such as
    containers, or when the --requirements option is used.
  - ansible-test - When invoking sleep in containers during
    container setup, the env command is used to avoid invoking
    the shell builtin, if present.
  - ansible-test - document block name now included in error
    message for YAML parsing errors (#82353).
  - ansible-test - sanity test allows EXAMPLES to be
    multi-document YAML (#82353).
  - ansible-test now has FreeBSD 13.3 and 14.0 support
  - ansible.builtin.user - Remove user not found warning (#80267)
  - apt_repository.py - use api.launchpad.net endpoint instead of
    launchpad.net/api
  - async tasks can now also support check mode at the same time.
  - async_status now supports check mode.
  - constructed inventory plugin - Adding a note that only
    group_vars of explicit groups are loaded (#82580).
  - csvfile - add a keycol parameter to specify in which column
    to search.
  - dnf - add the best option
  - dnf5 - add the best option
  - filter plugin - Add the count and mandatory_count parameters
    in the regex_replace filter
  - find - add a encoding parameter to specify which encoding of
    the files to be searched.
  - git module - gpg_allowlist name was added in 2.17 and we will
    eventually deprecate the gpg_whitelist alias.
  - import_role - allow subdirectories with `_from` options for
    parity with include_role (#82584).
  - module argument spec - Allow module authors to include
    arbitrary additional context in the argument spec, by making
    use of a new top level key called context. This key should be
    a dict type. This allows for users to customize what they
    place in the argument spec, without having to ignore sanity
    tests that validate the schema.
  - modules - Add the ability for an action plugin to call
    self._execute_module(*, ignore_unknown_opts=True) to execute
    a module with options that may not be supported for the
    version being called. This tells the module basic wrapper to
    ignore validating the options provided match the arg spec.
  - package action now has a configuration that overrides the
    detected package manager, it is still overridden itself by
    the use option.
  - py3compat - Remove ansible.utils.py3compat as it is no longer
    necessary
  - removed the unused argument create_new_password from
    CLI.build_vault_ids (#82066).
  - urls - Add support for TLS 1.3 post handshake certificate
    authentication - #81782
  - urls - reduce complexity of Request.open
  - user - accept yescrypt hash as user password
  - validate-modules tests now correctly handles choices in
    dictionary format.
  * Breaking Changes / Porting Guide
  - assert - Nested templating may result in an inability for the
    conditional to be evaluated. See the porting guide for more
    information.
  * Deprecated Features
  - Old style vars plugins which use the entrypoints
    get_host_vars or get_group_vars are deprecated. The plugin
    should be updated to inherit from BaseVarsPlugin and define a
    get_vars method as the entrypoint.
  - The 'required' parameter in
    'ansible.module_utils.common.process.get_bin_path' API is
    deprecated (#82464).
  - module_utils - importing the following convenience helpers
    from ansible.module_utils.basic has been deprecated:
    get_exception, literal_eval, _literal_eval, datetime, signal,
    types, chain, repeat, PY2, PY3, b, binary_type,
    integer_types, iteritems, string_types, test_type, map and
    shlex_quote.
  - ansible-doc - role entrypoint attributes are deprecated and
    eventually will no longer be shown in ansible-doc from
    ansible-core 2.20 on (#82639, #82678).
  - paramiko connection plugin, configuration items in the global
    scope are being deprecated and will be removed in favor or
    the existing same options in the plugin itself. Users should
    not need to change anything (how to configure them are the
    same) but plugin authors using the global constants should
    move to using the plugin's get_option().
  * Removed Features (previously deprecated)
  - Remove deprecated APIs from ansible-docs (#81716).
  - Remove deprecated JINJA2_NATIVE_WARNING environment variable
    (#81714)
  - Remove deprecated scp_if_ssh from ssh connection plugin
    (#81715).
  - Remove deprecated crypt support from ansible.utils.encrypt
    (#81717)
  - Removed Python 2.7 and Python 3.6 as a supported remote
    version. Python 3.7+ is now required for target execution.
  - With the removal of Python 2 support, the yum module and yum
    action plugin are removed and redirected to dnf.
  * Security Fixes
  - ANSIBLE_NO_LOG - Address issue where ANSIBLE_NO_LOG was
    ignored (CVE-2024-0690)
  - ansible-galaxy - Prevent roles from using symlinks to
    overwrite files outside of the installation directory
    (CVE-2023-5115)
  - templating - Address issues where internal templating can
    cause unsafe variables to lose their unsafe designation
    (CVE-2023-5764)
  * Bugfixes
  - Add a version ceiling constraint for pypsrp to avoid
    potential breaking changes in the 1.0.0 release.
  - All core lookups now use set_option(s) even when doing their
    own custom parsing. This ensures that the options are always
    the proper type.
  - Allow for searching handler subdir for included task via
    include_role (#81722)
  - AnsibleModule.atomic_move - fix preserving extended ACLs of
    the destination when it exists (#72929).
  - Cache host_group_vars after instantiating it once and limit
    the amount of repetitive work it needs to do every time it
    runs.
  - Call PluginLoader.all() once for vars plugins, and load vars
    plugins that run automatically or are enabled specifically by
    name subsequently.
  - Consolidate systemd detection logic into one place (#80975).
  - Consolidated the list of internal static vars, centralized
    them as constant and completed from some missing entries.
  - Do not print undefined error message twice (#78703).
  - Enable file cache for vaulted files during vars lookup to fix
    a strong performance penalty in huge and complex playbboks.
  - Fix NEVRA parsing of package names that include digit(s) in
    them (#76463, #81018)
  - Fix force_handlers not working with any_errors_fatal (#36308)
  - Fix run_once being incorrectly interpreted on handlers
    (#81666)
  - Fix an issue when setting a plugin name from an unsafe source
    resulted in ValueError: unmarshallable object (#82708)
  - Fix check for missing _sub_plugin attribute in older
    connection plugins (#82954)
  - Fix condition for unquoting configuration strings from ini
    files (#82387).
  - Fix for when any_errors_fatal was ignored if error occurred
    in a block with always (#31543)
  - Fix handlers not being executed in lockstep using the linear
    strategy in some cases (#82307)
  - Fix handling missing urls in
    ansible.module_utils.urls.fetch_file for Python 3.
  - Fix issue where an include_tasks handler in a role was not
    able to locate a file in tasks/ when tasks_from was used as a
    role entry point and main.yml was not present (#82241)
  - Fix issues when tasks withing nested blocks wouldn't run when
    force_handlers is set (#81533)
  - Fix loading vars_plugins in roles (#82239).
  - Fix notifying role handlers by listen keyword topics with the
    "role_name : " prefix (#82849).
  - Fix setting proper locale for git executable when running on
    non english systems, ensuring git output can always be
    parsed.
  - Fix tasks in always section not being executed for nested
    blocks with any_errors_fatal (#73246)
  - Fixes permission for cache json file from 600 to 644
    (#82683).
  - Give the tombstone error for include pre-fork like other
    tombstoned action/module plugins.
  - Harden python templates for respawn and ansiballz around str
    literal quoting
  - Include the task location when a module or action plugin is
    deprecated (#82450).
  - Interpreter discovery - Add Amzn to OS_FAMILY_MAP for correct
    family fallback for interpreter discovery (#80882).
  - Mirror the behavior of dnf on the command line when handling
    NEVRAs with omitted epoch (#71808)
  - Plugin loader does not dedupe nor cache filter/test plugins
    by file basename, but full path name.
  - Properly template tags in parent blocks (#81053)
  - Provide additional information about the alternative plugin
    in the deprecation message (#80561).
  - Remove the galaxy_info field platforms from the role
    templates (#82453).
  - Restoring the ability of filters/tests can have same file
    base name but different tests/filters defined inside.
  - Reword the error message when the module fails to parse
    parameters in JSON format (#81188).
  - Reword warning if the reserved keyword _ansible_ used as a
    module parameter (#82514).
  - Run all handlers with the same listen topic, even when
    notified from another handler (#82363).
  - Slight optimization to hostvars (instantiate template only
    once per host, vs per call to var).
  - Stopped misleadingly advertising async mode support in the
    reboot module (#71517).
  - ansible-galaxy role import - fix using the role_name in a
    standalone role's galaxy_info metadata by disabling automatic
    removal of the ansible-role- prefix. This matches the
    behavior of the Galaxy UI which also no longer implicitly
    removes the ansible-role- prefix. Use the --role-name option
    or add a role_name to the galaxy_info dictionary in the
    role's meta/main.yml to use an alternate role name.
  - ansible-test sanity --test runtime-metadata - add
    action_plugin as a valid field for modules in the schema
    (#82562).
  - ansible.module_utils.service - ensure binary data
    transmission in daemonize()
  - any_errors_fatal should fail all hosts and rescue all of them
    when a rescue section is specified (#80981)
  - include_role - properly execute v2_playbook_on_include and
    v2_runner_on_failed callbacks as well as increase ok and
    failed stats in the play recap, when appropriate (#77336)
  - allow_duplicates - fix evaluating if the current role allows
    duplicates instead of using the initial value from the
    duplicate's cached role.
  - ansible-config init will now dedupe ini entries from plugins.
  - ansible-config will now properly template defaults before
    dumping them.
  - ansible-doc - fixed "inicates" typo in output
  - ansible-doc - format top-level descriptions with multiple
    paragraphs as multiple paragraphs, instead of concatenating
    them (#83155).
  - ansible-galaxy - Deprecate use of the Galaxy v2 API (#81781)
  - ansible-galaxy - Provide a better error message when using a
    requirements file with an invalid format - #81901
  - ansible-galaxy - Resolve issue with the dataclass used for
    galaxy.yml manifest caused by using future annotations
  - ansible-galaxy - ensure path to ansible collection when
    installing or downloading doesn't have a backslash (#79705).
  - ansible-galaxy - started allowing the use of pre-releases for
    collections that do not have any stable versions published.
    (#81606)
  - ansible-galaxy - started allowing the use of pre-releases for
    dependencies on any level of the dependency tree that
    specifically demand exact pre-release versions of collections
    and not version ranges. (#81606)
  - ansible-galaxy error on dependency resolution will not error
    itself due to 'virtual' collections not having a
    name/namespace.
  - ansible-galaxy info - fix reporting no role found when
    lookup_role_by_name returns None.
  - ansible-galaxy role import - exit with 1 when the import
    fails (#82175).
  - ansible-galaxy role install - fix installing roles from
    Galaxy that have version None (#81832).
  - ansible-galaxy role install - fix symlinks (#82702, #81965).
  - ansible-galaxy role install - normalize tarfile paths and
    symlinks using ansible.utils.path.unfrackpath and consider
    them valid as long as the realpath is in the tarfile's role
    directory (#81965).
  - ansible-inventory - index available_hosts for major
    performance boost when dumping large inventories
  - ansible-pull now will expand relative paths for the
  - d|--directory option is now expanded before use.
  - ansible-pull will now correctly handle become and connection
    password file options for ansible-playbook.
  - ansible-test - Add a pylint plugin to work around a known
    issue on Python 3.12.
  - ansible-test - Explicitly supply ControlPath=none when
    setting up port forwarding over SSH to address the scenario
    where the local ssh configuration uses ControlPath for all
    hosts, and would prevent ports to be forwarded after the
    initial connection to the host.
  - ansible-test - Fix parsing of cgroup entries which contain a
    : in the path (#81977).
  - ansible-test - Include missing pylint requirements for Python
    3.10.
  - ansible-test - Properly detect docker host when using ssh://
    protocol for connecting to the docker daemon.
  - ansible-test - The libexpat package is automatically upgraded
    during remote bootstrapping to maintain compatibility with
    newer Python packages.
  - ansible-test - The validate-modules sanity test no longer
    attempts to process files with unrecognized extensions as
    Python (resolves #82604).
  - ansible-test - Update pylint to version 3.0.1.
  - ansible-test ansible-doc sanity test - do not remove
    underscores from plugin names in collections before calling
    ansible-doc (#82574).
  - ansible-test validate-modules sanity test - do not treat
    leading underscores for plugin names in collections as an
    attempted deprecation (#82575).
  - ansible-test — Python 3.8–3.12 will use coverage v7.3.2.
  - ansible.builtin.apt - calling clean = true does not properly
    clean certain cache files such as /var/cache/apt/pkgcache.bin
    and /var/cache/apt/pkgcache.bin (#82611)
  - ansible.builtin.uri - the module was ignoring the force
    parameter and always requesting a cached copy (via the
    If-Modified-Since header) when downloading to an existing
    local file. Disable caching when force is true, as documented
    (#82166).
  - ansible_managed restored it's 'templatability' by ensuring
    the possible injection routes are cut off earlier in the
    process.
  - apt - honor install_recommends and dpkg_options while
    installing python3-apt library (#40608).
  - apt - install recommended packages when installing package
    via deb file (#29726).
  - apt_repository - do not modify repo files if the file is a
    symlink (#49809).
  - apt_repository - update PPA URL to point to https URL
    (#82463).
  - assemble - fixed missing parameter 'content' in
    `_get_diff_data` API (#82359).
  - async - Fix bug that stopped running async task in --check
    when check_mode: False was set as a task attribute - #82811
  - blockinfile - when create=true is used with a filename
    without path, the module crashed (#81638).
  - check if there are attributes to set before attempting to set
    them (#76727)
  - copy action now also generates temprary files as hidden ('.'
    prefixed) to avoid accidental pickup by running services that
    glob by extension.
  - copy action now ensures that tempfiles use the same suffix as
    destination, to allow for validate to work with utilities
    that check extensions.
  - deb822_repository - handle idempotency if the order of
    parameters is changed (#82454).
  - debconf - allow user to specify a list for value when vtype
    is multiselect (#81345).
  - delegate_to when set to an empty or undefined variable will
    now give a proper error.
  - distribution.py - Recognize ALP-Dolomite as part of the SUSE
    OS family in Ansible, fixing its previous misidentification
    (#82496).
  - distro - bump bundled distro version from 1.6.0 to 1.8.0
    (#81713).
  - dnf - fix an issue when cached RPMs were left in the cache
    directory even when the keepcache setting was unset (#81954)
  - dnf - fix an issue when installing a package by specifying a
    file it provides could result in installing a different
    package providing the same file than the package already
    installed resulting in resolution failure (#82461)
  - dnf - properly set gpg check options on enabled repositories
    according to the disable_gpg_check option (#80110)
  - dnf - properly skip unavailable packages when skip_broken is
    enabled (#80590)
  - dnf - the nobest option only overrides the distribution
    default when explicitly used, and is used for all supported
    operations (#82616)
  - dnf5 - replace removed API calls
  - dnf5 - respect allow_downgrade when installing packages
    directly from rpm files
  - dnf5 - the nobest option only overrides the distribution
    default when used
  - dwim functions for lookups should be better at detectging
    role context even in abscense of tasks/main.
  - ensure we have logger before we log when we have increased
    verbosity.
  - expect - fix argument spec error using timeout=null (#80982).
  - fact gathering on linux now handles thread count by using
    rounding vs dropping decimals, it should give slightly more
    accurate numbers.
  - facts - add a generic detection for VMware in product name.
  - facts - detect VMware ESXi 8.0 virtualization by product name
    VMware20,1
  - fetch - Do not calculate the file size for Windows fetch
    targets to improve performance.
  - fetch - add error message when using dest with a trailing
    slash that becomes a local directory - #82878
  - find - do not fail on Permission errors (#82027).
  - first_found lookup now always returns a full (absolute) and
    normalized path
  - first_found lookup now always takes into account k=v options
  - flush_handlers - properly handle a handler failure in a
    nested block when force_handlers is set
    (http://github.com/ansible/ansible/issues/81532)
  - galaxy - skip verification for unwanted Python compiled
    bytecode files (#81628).
  - handle exception raised while validating with elements='int'
    and value is not within choices (#82776).
  - include_tasks - include ansible_loop_var and
    ansible_index_var in a loop (#82655).
  - include_vars - fix calculating depth relative to the root and
    ensure all files are included (#80987).
  - interpreter_discovery - handle AnsibleError exception raised
    while interpreter discovery (#78264).
  - iptables - add option choices 'src,src' and 'dst,dst' in
    match_set_flags (#81281).
  - iptables - set jump to DSCP when set_dscp_mark or
    set_dscp_mark_class is set (#77077).
  - known_hosts - Fix issue with @cert-authority entries in
    known_hosts incorrectly being removed.
  - module no_log will no longer affect top level booleans, for
    example no_log_module_parameter='a' will no longer hide
    changed=False as a 'no log value' (matches 'a').
  - moved assemble, raw, copy, fetch, reboot, script and
    wait_for_connection to query task instead of play_context
    ensuring they get the lastest and most correct data.
  - reboot action now handles connections with 'timeout' vs only
    'connection_timeout' settings.
  - role params now have higher precedence than host facts again,
    matching documentation, this had unintentionally changed in
    2.15.
  - roles, code cleanup and performance optimization of
    dependencies, now cached, and public setting is now
    determined once, at role instantiation.
  - roles, the static property is now correctly set, this will
    fix issues with public and DEFAULT_PRIVATE_ROLE_VARS controls
    on exporting vars.
  - set_option method for plugins to update config now properly
    passes through type casting and validation.
  - ssh - add tests for the SSH connection plugin.
  - support url-encoded credentials in URLs like
    http://x%40:%40@example.com (#82552)
  - syslog - Handle ValueError exception raised when sending Null
    Characters to syslog with Python 3.12.
  - systemd_services - update documentation regarding
    required_one_of and required_by parameters (#82914).
  - template - Fix error when templating an unsafe string which
    corresponds to an invalid type in Python (#82600).
  - template action will also inherit the behavior from copy (as
    it uses it internally).
  - templating - ensure syntax errors originating from a template
    being compiled into Python code object result in a failure
    (#82606)
  - unarchive - add support for 8 character permission strings
    for zip archives (#81705).
  - unarchive - force unarchive if symlink target changes
    (#30420).
  - unarchive modules now uses zipinfo options without relying on
    implementation defaults, making it more compatible with all
    OS/distributions.
  - unsafe data - Address an incompatibility when iterating or
    getting a single index from AnsibleUnsafeBytes
  - unsafe data - Address an incompatibility with
    AnsibleUnsafeText and AnsibleUnsafeBytes when pickling with
    protocol=0
  - unsafe data - Enable directly using AnsibleUnsafeText with
    Python pathlib (#82414)
  - uri - update the documentation for follow_redirects.
  - uri action plugin now skipped during check mode (not
    supported) instead of even trying to execute the module,
    which already skipped, this does not really change the
    result, but returns much faster.
  - vars - handle exception while combining VarsWithSources and
    dict (#81659).
  - wait_for should not handle 'non mmapable files' again.
  - winrm - Better handle send input failures when communicating
    with hosts under load
  - winrm - Do not raise another exception during cleanup when a
    task is timed out - #81095
  - winrm - does not hang when attempting to get process output
    when stdin write failed</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1720958401">- update to 2.17.1:
  https://github.com/ansible/ansible/blob/v2.17.1/changelogs/CHANGELOG-v2.17.rst
  * Minor Changes
  - ansible-test - Update pypi-test-container to version 3.1.0.
  * Bugfixes
  - Fix rapid memory usage growth when notifying handlers using
    the listen keyword (#83392)
  - Fix the task attribute resolved_action to show the FQCN
    instead of None when action or local_action is used in the
    playbook.
  - Fix using module_defaults with local_action/action (#81905).
  - fixed unit test test_borken_cowsay to address mock not been
    properly applied when existing unix system already have
    cowsay installed.
  - powershell - Implement more robust deletion mechanism for C#
    code compilation temporary files. This should avoid scenarios
    where the underlying temporary directory may be temporarily
    locked by antivirus tools or other IO problems. A failure to
    delete one of these temporary directories will result in a
    warning rather than an outright failure.
  - shell plugin - properly quote all needed components of shell
    commands (#82535)</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1721131200">- update to 2.17.2:
  https://github.com/ansible/ansible/blob/v2.17.2/changelogs/CHANGELOG-v2.17.rst
  * Bugfixes
  - Fix a traceback when an environment variable contains certain
    special characters (#83498)
  - dnf - reverted incomplete fix from 2.17.2rc1 (#83504)
  - dnf, dnf5 - fix for installing a set of packages by
    specifying them using a wildcard character (#83373)
  - linear strategy now provides a properly templated task name
    to the v2_runner_on_started callback event.
  - package_facts - ignore warnings sent by apk on stderr
    (#83501).
  - replace - Updated before/after example (#83390).
  - templating hostvars under native jinja will not cause
    serialization errors anymore.</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1723550400">- update to 2.17.3:
  https://github.com/ansible/ansible/blob/v2.17.3/changelogs/CHANGELOG-v2.17.rst
  * Minor Changes
  - ansible-test - Improve the error message shown when an
    unknown --remote or --docker option is given.
  - ansible-test - Removed the vyos/1.1.8 network remote as it is
    no longer functional.
  * Bugfixes
  - Warning now includes filename and line number of variable
    when specifying a list of dictionaries for vars (#82528).
  - config, restored the ability to set module compression via a
    variable
  - debconf - fix normalization of value representation for
    boolean vtypes in new packages (#83594)
  - linear strategy: fix handlers included via include_tasks
    handler to be executed in lockstep (#83019)</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1726056000">- update to 2.17.4:
  https://github.com/ansible/ansible/blob/v2.17.4/changelogs/CHANGELOG-v2.17.rst
  * Bugfixes
  - Fix SemanticVersion.parse() to store the version string so
    that __repr__ reports it instead of None (#83831).
  - Fix an issue where registered variable was not available for
    templating in loop_control.label on skipped looped tasks
    (#83619)
  - Fix for meta tasks breaking host/fork affinity with
    host_pinned strategy (#83294)
  - Fix using the current task's directory for looking up
    relative paths within roles (#82695).
  - atomic_move - fix using the setgid bit on the parent
    directory when creating files (#46742, #67177).
  - connection plugins using the 'extras' option feature would
    need variables to match the plugin's loaded name, sometimes
    requiring fqcn, which is not the same as the
    documented/declared/expected variables. Now we fall back to
    the 'basename' of the fqcn, but plugin authors can still set
    the expected value directly.
  - csvfile lookup - give an error when no search term is
    provided using modern config syntax (#83689).
  - include_tasks - Display location when attempting to load a
    task list where include_* did not specify any value - #83874
  - powershell - Improve CLIXML decoding to decode all control
    characters and unicode characters that are encoded as
    surrogate pairs.
  - psrp - Fix bug when attempting to fetch a file path that
    contains special glob characters like []
  - runtime-metadata sanity test - do not crash on deprecations
    if galaxy.yml contains an empty version field (#83831).
  - ssh - Fix bug when attempting to fetch a file path with
    characters that should be quoted when using the piped
    transfer method</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1728648000">- update to 2.17.5:
  https://github.com/ansible/ansible/blob/v2.17.5/changelogs/CHANGELOG-v2.17.rst
  * Bugfixes
  - Add descriptions for ansible-galaxy install --help` and
    ``ansible-galaxy role|collection install --help.
  - Errors now preserve stacked error messages even when YAML is
    involved.
  - ansible-galaxy install --help - Fix the usage text and
    document that the requirements file passed to -r can include
    collections and roles.
  - copy - mtime/atime not updated. Fix now update
    mtime/atime(#83013)
  - delay keyword is now a float, matching the underlying 'time'
    API and user expectations.
  - dnf5 - re-introduce the state: installed alias to state:
    present (#83960)
  - module_utils atomic_move (used by most file based modules),
    now correctly handles permission copy and setting mtime
    correctly across all paths</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1731585600">- update to 2.17.6:
  https://github.com/ansible/ansible/blob/v2.17.6/changelogs/CHANGELOG-v2.17.rst
  * Minor Changes
  - ansible-test - Improve container runtime probe error
    handling. When unexpected probe output is encountered, an
    error with more useful debugging information is provided.
  * Security Fixes
  - include_vars action - Ensure that result masking is correctly
    requested when vault-encrypted files are read.
    (CVE-2024-8775)
  - task result processing - Ensure that action-sourced result
    masking (_ansible_no_log=True) is preserved. (CVE-2024-8775)
  - user action won't allow ssh-keygen, chown and chmod to run on
    existing ssh public key file, avoiding traversal on existing
    symlinks (CVE-2024-9902).
  * Bugfixes
  - Fix disabling SSL verification when installing collections
    and roles from git repositories. If --ignore-certs isn't
    provided, the value for the GALAXY_IGNORE_CERTS configuration
    option will be used (#83326).
  - Improve performance on large inventories by reducing the
    number of implicit meta tasks.
  - Use the requested error message in the
    ansible.module_utils.facts.timeout timeout function instead
    of hardcoding one.
  - ansible-test - Enable the sys.unraisablehook work-around for
    the pylint sanity test on Python 3.11. Previously the
    work-around was only enabled for Python 3.12 and later.
    However, the same issue has been discovered on Python 3.11.
  - debconf - set empty password values (#83214).
  - facts - skip if distribution file path is directory, instead
    of raising error (#84006).
  - user action will now require O(force) to overwrite the public
    part of an ssh key when generating ssh keys, as was already
    the case for the private part.
  - user module now avoids changing ownership of files symlinked
    in provided home dir skeleton</changelog>
</package>
<package pkgid="486b328ecf838511ef7b4bd95d4a9290f6569d24f995b03c88ace45c30a7c32a211fbe9acd0738421fcab5dcc963afde14b12d9ba5e666dfad4aa7654391a7ef" name="ansible-core" arch="src">
  <version epoch="0" ver="2.17.6" rel="1.0.2.1.sr20241103"/>
  <changelog author="Johannes Kastl &lt;kastl@b1-systems.de&gt;" date="1696939200">- update to 2.15.5:
  * Minor Changes
  - ansible-galaxy dependency resolution messages have changed
    the unexplained 'virtual' collection for the specific type
    ('scm', 'dir', etc) that is more user friendly
  * Security Fixes
  - ansible-galaxy - Prevent roles from using symlinks to
    overwrite files outside of the installation directory
    (CVE-2023-5115)
  * Bugfixes
  - Allow for searching handler subdir for included task via
    include_role (#81722)
  - PluginLoader - fix Jinja plugin performance issues (#79652)
  - ansible.module_utils.service - ensure binary data
    transmission in daemonize()
  - ansible.module_utils.service - fix inter-process
    communication in daemonize()
  - ansible-galaxy - started allowing the use of pre-releases for
    collections that do not have any stable versions published.
    (#81606)
  - ansible-galaxy - started allowing the use of pre-releases for
    dependencies on any level of the dependency tree that
    specifically demand exact pre-release versions of collections
    and not version ranges. (#81606)
  - ansible-galaxy error on dependency resolution will not error
    itself due to 'virtual' collections not having a
    name/namespace.
  - ansible-galaxy info - fix reporting no role found when
    lookup_role_by_name returns None.
  - role deduplication - don't deduplicate before a role has had
    a task run for that particular host (#81486).
  - uri/urls - Add compat function to handle the ability to parse
    the filename from a Content-Disposition header (#81806)
  - winrm - Better handle send input failures when communicating
    with hosts under load</changelog>
  <changelog author="Johannes Kastl &lt;kastl@b1-systems.de&gt;" date="1699358400">- update to 2.15.6:
  * Minor Changes
  - ansible-test - Windows 2012 and 2012-R2 instances are now
    requested from Azure instead of AWS.
  * Bugfixes
  - Fix run_once being incorrectly interpreted on handlers
    (#81666)
  - Plugin loader does not dedupe nor cache filter/test plugins
    by file basename, but full path name.
  - Properly template tags in parent blocks (#81053)
  - Restoring the ability of filters/tests can have same file
    base name but different tests/filters defined inside.
  - import_role reverts to previous behavior of exporting vars at
    compile time.
  - ansible-galaxy - Provide a better error message when using a
    requirements file with an invalid format - #81901
  - ansible-inventory - index available_hosts for major
    performance boost when dumping large inventories
  - ansible-test - Fix parsing of cgroup entries which contain a
    : in the path (#81977).</changelog>
  <changelog author="Johannes Kastl &lt;kastl@b1-systems.de&gt;" date="1701777600">- update to 2.15.7:
  This release includes a fix for CVE-2023-5764, where internal
  templating actions could result in unsafe data losing its unsafe
  designation.
  * Breaking Changes / Porting Guide
  - assert - Nested templating may result in an inability for the
    conditional to be evaluated. See the porting guide for more
    information.
  * Security Fixes
  - templating - Address issues where internal templating can
    cause unsafe variables to lose their unsafe designation
    (CVE-2023-5764)
  * Bugfixes
  - ansible-pull now will expand relative paths for the
  - d|--directory option is now expanded before use.
  - flush_handlers - properly handle a handler failure in a
    nested block when force_handlers is set
    (http://github.com/ansible/ansible/issues/81532)
  - module no_log will no longer affect top level booleans, for
    example no_log_module_parameter='a' will no longer hide
    changed=False as a 'no log value' (matches 'a').
  - modules/user.py - Add check for valid directory when creating
    new user homedir (allows /dev/null as skeleton) (#75063)
  - role params now have higher precedence than host facts again,
    matching documentation, this had unintentionally changed in
    2.15.
  - wait_for should not handle 'non mmapable files' again.</changelog>
  <changelog author="Johannes Kastl &lt;kastl@b1-systems.de&gt;" date="1702382400">- update to 2.15.8:
  * Minor Changes
  - ansible-test - Add FreeBSD 13.2 remote.
  - ansible-test - Removed freebsd/13.1 remote.
  * Bugfixes
  - unsafe data - Address an incompatibility when iterating or
    getting a single index from AnsibleUnsafeBytes
  - unsafe data - Address an incompatibility with
    AnsibleUnsafeText and AnsibleUnsafeBytes when pickling with
    protocol=0</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1705838400">- update to 2.16.0:
  https://github.com/ansible/ansible/blob/v2.16.0/changelogs/CHANGELOG-v2.16.rst
  * Bugfixes and Minor changes omitted for brevity, see full
    changelog
  * Breaking Changes / Porting Guide
  - Any plugin using the config system and the cli entry to use
    the timeout from the command line, will see the value change
    if the use had configured it in any of the lower precedence
    methods. If relying on this behaviour to consume the
    global/generic timeout from the DEFAULT_TIMEOUT constant,
    please consult the documentation on plugin configuration to
    add the overlaping entries.
  - ansible-test - Test plugins that rely on containers no longer
    support reusing running containers. The previous behavior was
    an undocumented, untested feature.
  - service module will not permanently configure variables/flags
    for openbsd when doing enable/disable operation anymore, this
    module was never meant to do this type of work, just to
    manage the service state itself. A rcctl_config or similar
    module should be created and used instead.
  * Deprecated Features
  - Deprecated ini config option collections_paths, use the
    singular form collections_path instead
  - Deprecated the env var ANSIBLE_COLLECTIONS_PATHS, use the
    singular form ANSIBLE_COLLECTIONS_PATH instead
  - Old style vars plugins which use the entrypoints
    get_host_vars or get_group_vars are deprecated. The plugin
    should be updated to inherit from BaseVarsPlugin and define a
    get_vars method as the entrypoint.
  - Support for Windows Server 2012 and 2012 R2 has been removed
    as the support end of life from Microsoft is October 10th
    2023. These versions of Windows will no longer be tested in
    this Ansible release and it cannot be guaranteed that they
    will continue to work going forward.
  - STRING_CONVERSION_ACTION config option is deprecated as it is
    no longer used in the Ansible Core code base.
  - the 'smart' option for setting a connection plugin is being
    removed as it's main purpose (choosing between ssh and
    paramiko) is now irrelevant.
  - vault and unfault filters - the undocumented vaultid
    parameter is deprecated and will be removed in ansible-core
    2.20. Use vault_id instead.
  - yum_repository - deprecated parameter 'keepcache' (#78693).
  * Removed Features (previously deprecated)
  - ActionBase - remove deprecated _remote_checksum method
  - PlayIterator - remove deprecated cache_block_tasks and
    get_original_task methods
  - Remove deprecated FileLock class
  - Removed Python 3.9 as a supported version on the controller.
    Python 3.10 or newer is required.
  - Removed include which has been deprecated in Ansible 2.12.
    Use include_tasks or import_tasks instead.
  - Templar - remove deprecated shared_loader_obj parameter of
    __init__
  - fetch_url - remove auto disabling decompress when gzip is not
    available
  - get_action_args_with_defaults - remove deprecated
    redirected_names method parameter
  - ansible-test - Removed support for the remote Windows targets
    2012 and 2012-R2
  - inventory_cache - remove deprecated
    default.fact_caching_prefix ini configuration option, use
    defaults.fact_caching_prefix instead.
  - module_utils/basic.py - Removed Python 3.5 as a supported
    remote version. Python 2.7 or Python 3.6+ is now required.
  - stat - removed unused get_md5 parameter.
  * Security Fixes
  - ansible-galaxy - Prevent roles from using symlinks to
    overwrite files outside of the installation directory
    (CVE-2023-5115)
  * Known issues
  - ansible-galaxy - dies in the middle of installing a role when
    that role contains Java inner classes (files with $ in the
    file name). This is by design, to exclude temporary or backup
    files. (#81553).
  - ansible-test - The pep8 sanity test is unable to detect
    f-string spacing issues (E201, E202) on Python 3.10 and 3.11.
    They are correctly detected under Python 3.12. See
    (PyCQA/pycodestyle#1190).</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1705838401">- update to 2.16.1:
  https://github.com/ansible/ansible/blob/v2.16.1/changelogs/CHANGELOG-v2.16.rst
  * Breaking Changes / Porting Guide
  - assert - Nested templating may result in an inability for the
    conditional to be evaluated. See the porting guide for more
    information.
  * Security Fixes
  - templating - Address issues where internal templating can
    cause unsafe variables to lose their unsafe designation
    (CVE-2023-5764)
  * Bugfixes
  - Fix issue where an include_tasks handler in a role was not
    able to locate a file in tasks/ when tasks_from was used as a
    role entry point and main.yml was not present (#82241)
  - Plugin loader does not dedupe nor cache filter/test plugins
    by file basename, but full path name.
  - Restoring the ability of filters/tests can have same file
    base name but different tests/filters defined inside.
  - ansible-pull now will expand relative paths for the
  - d|--directory option is now expanded before use.
  - ansible-pull will now correctly handle become and connection
    password file options for ansible-playbook.
  - flush_handlers - properly handle a handler failure in a
    nested block when force_handlers is set
    (http://github.com/ansible/ansible/issues/81532)
  - module no_log will no longer affect top level booleans, for
    example no_log_module_parameter='a' will no longer hide
    changed=False as a 'no log value' (matches 'a').
  - role params now have higher precedence than host facts again,
    matching documentation, this had unintentionally changed in
    2.15.
  - wait_for should not handle 'non mmapable files' again.</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1705838402">- update to 2.16.2:
  https://github.com/ansible/ansible/blob/v2.16.2/changelogs/CHANGELOG-v2.16.rst
  * Bugfixes
  - unsafe data - Address an incompatibility when iterating or
    getting a single index from AnsibleUnsafeBytes
  - unsafe data - Address an incompatibility with
    AnsibleUnsafeText and AnsibleUnsafeBytes when pickling with
    protocol=0</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1706616000">- update to 2.16.3:
  https://github.com/ansible/ansible/blob/v2.16.3/changelogs/CHANGELOG-v2.16.rst
  * Security Fixes
  - ANSIBLE_NO_LOG - Address issue where ANSIBLE_NO_LOG was
    ignored (CVE-2024-0690)
  * Bugfixes
  - Run all handlers with the same listen topic, even when
    notified from another handler (#82363).
  - ansible-galaxy role import - fix using the role_name in a
    standalone role's galaxy_info metadata by disabling automatic
    removal of the ansible-role- prefix. This matches the
    behavior of the Galaxy UI which also no longer implicitly
    removes the ansible-role- prefix. Use the --role-name option
    or add a role_name to the galaxy_info dictionary in the
    role's meta/main.yml to use an alternate role name.
  - ansible-test sanity --test runtime-metadata - add
    action_plugin as a valid field for modules in the schema
    (#82562).
  - ansible-config init will now dedupe ini entries from plugins.
  - ansible-galaxy role import - exit with 1 when the import
    fails (#82175).
  - ansible-galaxy role install - normalize tarfile paths and
    symlinks using ansible.utils.path.unfrackpath and consider
    them valid as long as the realpath is in the tarfile's role
    directory (#81965).
  - delegate_to when set to an empty or undefined variable will
    now give a proper error.
  - dwim functions for lookups should be better at detectging
    role context even in abscense of tasks/main.
  - roles, code cleanup and performance optimization of
    dependencies, now cached, and public setting is now
    determined once, at role instantiation.
  - roles, the static property is now correctly set, this will
    fix issues with public and DEFAULT_PRIVATE_ROLE_VARS controls
    on exporting vars.
  - unsafe data - Enable directly using AnsibleUnsafeText with
    Python pathlib (#82414)</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1710590400">- update to 2.16.4:
  https://github.com/ansible/ansible/blob/v2.16.4/changelogs/CHANGELOG-v2.16.rst
  * Bugfixes
  - Fix loading vars_plugins in roles (#82239).
  - expect - fix argument spec error using timeout=null (#80982).
  - include_vars - fix calculating depth relative to the root and
    ensure all files are included (#80987).
  - templating - ensure syntax errors originating from a template
    being compiled into Python code object result in a failure
    (#82606)</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1711540800">- update to 2.16.5:
  https://github.com/ansible/ansible/blob/v2.16.5/changelogs/CHANGELOG-v2.16.rst
  * Minor Changes
  - ansible-test - Add a work-around for permission denied errors
    when using pytest &gt;= 8 on multi-user systems with an
    installed version of ansible-test.
  * Bugfixes
  - Fix an issue when setting a plugin name from an unsafe source
    resulted in ValueError: unmarshallable object (#82708)
  - Harden python templates for respawn and ansiballz around str
    literal quoting
  - ansible-test - The libexpat package is automatically upgraded
    during remote bootstrapping to maintain compatibility with
    newer Python packages.
  - template - Fix error when templating an unsafe string which
    corresponds to an invalid type in Python (#82600).
  - winrm - does not hang when attempting to get process output
    when stdin write failed</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1713268800">- adjust spec to new name for PyPI file name (underscore instead of
  hyphen: ansible_core-2.16.6.tar.gz)
- update to 2.16.6:
  https://github.com/ansible/ansible/blob/v2.16.6/changelogs/CHANGELOG-v2.16.rst
  * Bugfixes
  - Consolidated the list of internal static vars, centralized
    them as constant and completed from some missing entries.
  - Fix check for missing `_sub_plugin` attribute in older
    connection plugins (#82954)
  - Fixes permission for cache json file from 600 to 644
    (#82683).
  - Slight optimization to hostvars (instantiate template only
    once per host, vs per call to var).
  - allow_duplicates - fix evaluating if the current role allows
    duplicates instead of using the initial value from the
    duplicate's cached role.
  - ansible-config will now properly template defaults before
    dumping them.
  - ansible-test ansible-doc sanity test - do not remove
    underscores from plugin names in collections before calling
    ansible-doc (#82574).
  - async - Fix bug that stopped running async task in --check
    when check_mode: False was set as a task attribute - #82811
  - blockinfile - when create=true is used with a filename
    without path, the module crashed (#81638).
  - dnf - fix an issue when cached RPMs were left in the cache
    directory even when the keepcache setting was unset (#81954)
  - dnf5 - replace removed API calls
  - facts - add a generic detection for VMware in product name.
  - fetch - add error message when using dest with a trailing
    slash that becomes a local directory - #82878
  - find - do not fail on Permission errors (#82027).
  - unarchive modules now uses zipinfo options without relying on
    implementation defaults, making it more compatible with all
    OS/distributions.
  - winrm - Do not raise another exception during cleanup when a
    task is timed out - #81095</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1716465600">- update to 2.16.7:
  https://github.com/ansible/ansible/blob/v2.16.7/changelogs/CHANGELOG-v2.16.rst
  * Minor Changes
  - ansible.builtin.user - Remove user not found warning (#80267)
  * Bugfixes
  - Add a version ceiling constraint for pypsrp to avoid
    potential breaking changes in the 1.0.0 release.
  - Fix NEVRA parsing of package names that include digit(s) in
    them (#76463, #81018)
  - Fix handlers not being executed in lockstep using the linear
    strategy in some cases (#82307)
  - Give the tombstone error for include pre-fork like other
    tombstoned action/module plugins.
  - Include the task location when a module or action plugin is
    deprecated (#82450).
  - Mirror the behavior of dnf on the command line when handling
    NEVRAs with omitted epoch (#71808)
  - ansible-test - Automatically enable the PyPI proxy for the
    centos7 container to restore the ability to use pip in that
    container.
  - ansible_managed restored it's 'templatability' by ensuring
    the possible injection routes are cut off earlier in the
    process.
  - assemble - fixed missing parameter 'content' in
    `_get_diff_data` API (#82359).
  - dnf - fix an issue when installing a package by specifying a
    file it provides could result in installing a different
    package providing the same file than the package already
    installed resulting in resolution failure (#82461)
  - uri - update the documentation for follow_redirects.</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1718798400">- update to 2.16.8:
  https://github.com/ansible/ansible/blob/v2.16.8/changelogs/CHANGELOG-v2.16.rst
  * Minor Changes
  - ansible-test - Update pypi-test-container to version 3.1.0.
  * Bugfixes
  - Fix the task attribute resolved_action to show the FQCN
    instead of None when action or local_action is used in the
    playbook.
  - Fix using module_defaults with local_action/action (#81905).
  - fixed unit test test_borken_cowsay to address mock not been
    properly applied when existing unix system already have
    cowsay installed.
  - powershell - Implement more robust deletion mechanism for C#
    code compilation temporary files. This should avoid scenarios
    where the underlying temporary directory may be temporarily
    locked by antivirus tools or other IO problems. A failure to
    delete one of these temporary directories will result in a
    warning rather than an outright failure.</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1720958400">- update to 2.17.0:
  https://github.com/ansible/ansible/blob/v2.17.0/changelogs/CHANGELOG-v2.17.rst
  * Major Changes
  - urls.py - Removed support for Python 2
  * Minor Changes
  - Add dump and passno mount information to facts component
    (#80478)
  - Added MIRACLE LINUX 9.2 in RedHat OS Family.
  - Interpreter Discovery - Remove hardcoded references to
    specific python interpreters to use for certain distro
    versions, and modify logic for python3 to become the default.
  - Use Python's built-in functools.update_wrapper instead an
    inline copy from Python 3.7.
  - User can now set ansible.log to record higher verbosity than
    what is specified for display via new configuration item
    LOG_VERBOSITY.
  - DEFAULT_PRIVATE_ROLE_VARS is now overridden by explicit
    setting of public for include_roles and import_roles.
  - ansible-galaxy role|collection init - accept --extra-vars to
    supplement/override the variables ansible-galaxy injects for
    templating .j2 files in the skeleton.
  - import_role action now also gets a public option that
    controls variable exports, default depending on
    DEFAULT_PRIVATE_ROLE_VARS (if using defaults equates to
    public=True).
  - added configuration item TARGET_LOG_INFO that allows the
    user/author to add an information string to the log output on
    targets.
  - ansible-doc - treat double newlines in documentation strings
    as paragraph breaks. This is useful to create multi-paragraph
    notes in module/plugin documentation (#82465).
  - ansible-doc output has been revamped to make it more visually
    pleasing when going to a terminal, also more concise, use -v
    to show extra information.
  - ansible-galaxy - Started normalizing build directory with a
    trailing separator when building collections, internally.
    (#81619).
  - ansible-galaxy dependency resolution messages have changed
    the unexplained 'virtual' collection for the specific type
    ('scm', 'dir', etc) that is more user friendly
  - ansible-test - Add Alpine 3.19 container.
  - ansible-test - Add Alpine 3.19 to remotes.
  - ansible-test - Add Fedora 39 container.
  - ansible-test - Add Fedora 39 remote.
  - ansible-test - Add a work-around for permission denied errors
    when using pytest &gt;= 8 on multi-user systems with an
    installed version of ansible-test.
  - ansible-test - Add support for RHEL 9.3 remotes.
  - ansible-test - Added a macOS 14.3 remote VM.
  - ansible-test - Bump the nios-test-container from version
    2.0.0 to version 3.0.0.
  - ansible-test - Containers and remotes managed by ansible-test
    will have their Python EXTERNALLY-MANAGED marker (PEP668)
    removed. This provides backwards compatibility for existing
    tests running in newer environments which mark their Python
    as externally managed. A future version of ansible-test may
    change this behavior, requiring tests to be adapted to such
    environments.
  - ansible-test - Make Python 3.12 the default version used in
    the base and default containers.
  - ansible-test - Remove Alpine 3(.18) container.
  - ansible-test - Remove Alpine 3.18 from remotes.
  - ansible-test - Remove Fedora 38 remote support.
  - ansible-test - Remove Fedora 38 test container.
  - ansible-test - Remove rhel/9.2 test remote
  - ansible-test - Remove the FreeBSD 13.2 remote.
  - ansible-test - Removed fallback to virtualenv when -m venv is
    non-functional.
  - ansible-test - Removed test remotes: macos/13.2
  - ansible-test - Removed the no-basestring sanity test. The
    test is no longer necessary now that Python 3 is required.
  - ansible-test - Removed the no-dict-iteritems,
    no-dict-iterkeys and no-dict-itervalues sanity tests. The
    tests are no longer necessary since Python 3 is required.
  - ansible-test - Removed the no-main-display sanity test. The
    unwanted pattern is unlikely to occur, since the test has
    existed since Ansible 2.8.
  - ansible-test - Removed the no-unicode-literals sanity test.
    The test is unnecessary now that Python 3 is required and the
    unicode_literals feature has no effect.
  - ansible-test - Special handling for installation of
    cryptography has been removed, as it is no longer necessary.
  - ansible-test - The shellcheck sanity test no longer disables
    the SC2164 check. In most cases, seeing this error means the
    script is missing set -e.
  - ansible-test - The unidiomatic-typecheck rule has been
    enabled in the pylint sanity test.
  - ansible-test - The unidiomatic-typecheck rule has been
    removed from the validate-modules sanity test.
  - ansible-test - Update the base and default containers to use
    Ubuntu 22.04 for the base image. This also updates PowerShell
    to version 7.4.0 with .NET 8.0.0 and ShellCheck to version
    0.8.0.
  - ansible-test - Updated the CloudStack test container to
    version 1.7.0.
  - ansible-test - Updated the distro test containers to version
    6.3.0 to include coverage 7.3.2 for Python 3.8+. The alpine3
    container is now based on 3.18 instead of 3.17 and includes
    Python 3.11 instead of Python 3.10.
  - ansible-test - Updated the distro test containers to version
    7.1.0.
  - ansible-test - When ansible-test installs requirements, it
    now instructs pip to allow installs on externally managed
    environments as defined by PEP 668. This only occurs in
    ephemeral environments managed by ansible-test, such as
    containers, or when the --requirements option is used.
  - ansible-test - When invoking sleep in containers during
    container setup, the env command is used to avoid invoking
    the shell builtin, if present.
  - ansible-test - document block name now included in error
    message for YAML parsing errors (#82353).
  - ansible-test - sanity test allows EXAMPLES to be
    multi-document YAML (#82353).
  - ansible-test now has FreeBSD 13.3 and 14.0 support
  - ansible.builtin.user - Remove user not found warning (#80267)
  - apt_repository.py - use api.launchpad.net endpoint instead of
    launchpad.net/api
  - async tasks can now also support check mode at the same time.
  - async_status now supports check mode.
  - constructed inventory plugin - Adding a note that only
    group_vars of explicit groups are loaded (#82580).
  - csvfile - add a keycol parameter to specify in which column
    to search.
  - dnf - add the best option
  - dnf5 - add the best option
  - filter plugin - Add the count and mandatory_count parameters
    in the regex_replace filter
  - find - add a encoding parameter to specify which encoding of
    the files to be searched.
  - git module - gpg_allowlist name was added in 2.17 and we will
    eventually deprecate the gpg_whitelist alias.
  - import_role - allow subdirectories with `_from` options for
    parity with include_role (#82584).
  - module argument spec - Allow module authors to include
    arbitrary additional context in the argument spec, by making
    use of a new top level key called context. This key should be
    a dict type. This allows for users to customize what they
    place in the argument spec, without having to ignore sanity
    tests that validate the schema.
  - modules - Add the ability for an action plugin to call
    self._execute_module(*, ignore_unknown_opts=True) to execute
    a module with options that may not be supported for the
    version being called. This tells the module basic wrapper to
    ignore validating the options provided match the arg spec.
  - package action now has a configuration that overrides the
    detected package manager, it is still overridden itself by
    the use option.
  - py3compat - Remove ansible.utils.py3compat as it is no longer
    necessary
  - removed the unused argument create_new_password from
    CLI.build_vault_ids (#82066).
  - urls - Add support for TLS 1.3 post handshake certificate
    authentication - #81782
  - urls - reduce complexity of Request.open
  - user - accept yescrypt hash as user password
  - validate-modules tests now correctly handles choices in
    dictionary format.
  * Breaking Changes / Porting Guide
  - assert - Nested templating may result in an inability for the
    conditional to be evaluated. See the porting guide for more
    information.
  * Deprecated Features
  - Old style vars plugins which use the entrypoints
    get_host_vars or get_group_vars are deprecated. The plugin
    should be updated to inherit from BaseVarsPlugin and define a
    get_vars method as the entrypoint.
  - The 'required' parameter in
    'ansible.module_utils.common.process.get_bin_path' API is
    deprecated (#82464).
  - module_utils - importing the following convenience helpers
    from ansible.module_utils.basic has been deprecated:
    get_exception, literal_eval, _literal_eval, datetime, signal,
    types, chain, repeat, PY2, PY3, b, binary_type,
    integer_types, iteritems, string_types, test_type, map and
    shlex_quote.
  - ansible-doc - role entrypoint attributes are deprecated and
    eventually will no longer be shown in ansible-doc from
    ansible-core 2.20 on (#82639, #82678).
  - paramiko connection plugin, configuration items in the global
    scope are being deprecated and will be removed in favor or
    the existing same options in the plugin itself. Users should
    not need to change anything (how to configure them are the
    same) but plugin authors using the global constants should
    move to using the plugin's get_option().
  * Removed Features (previously deprecated)
  - Remove deprecated APIs from ansible-docs (#81716).
  - Remove deprecated JINJA2_NATIVE_WARNING environment variable
    (#81714)
  - Remove deprecated scp_if_ssh from ssh connection plugin
    (#81715).
  - Remove deprecated crypt support from ansible.utils.encrypt
    (#81717)
  - Removed Python 2.7 and Python 3.6 as a supported remote
    version. Python 3.7+ is now required for target execution.
  - With the removal of Python 2 support, the yum module and yum
    action plugin are removed and redirected to dnf.
  * Security Fixes
  - ANSIBLE_NO_LOG - Address issue where ANSIBLE_NO_LOG was
    ignored (CVE-2024-0690)
  - ansible-galaxy - Prevent roles from using symlinks to
    overwrite files outside of the installation directory
    (CVE-2023-5115)
  - templating - Address issues where internal templating can
    cause unsafe variables to lose their unsafe designation
    (CVE-2023-5764)
  * Bugfixes
  - Add a version ceiling constraint for pypsrp to avoid
    potential breaking changes in the 1.0.0 release.
  - All core lookups now use set_option(s) even when doing their
    own custom parsing. This ensures that the options are always
    the proper type.
  - Allow for searching handler subdir for included task via
    include_role (#81722)
  - AnsibleModule.atomic_move - fix preserving extended ACLs of
    the destination when it exists (#72929).
  - Cache host_group_vars after instantiating it once and limit
    the amount of repetitive work it needs to do every time it
    runs.
  - Call PluginLoader.all() once for vars plugins, and load vars
    plugins that run automatically or are enabled specifically by
    name subsequently.
  - Consolidate systemd detection logic into one place (#80975).
  - Consolidated the list of internal static vars, centralized
    them as constant and completed from some missing entries.
  - Do not print undefined error message twice (#78703).
  - Enable file cache for vaulted files during vars lookup to fix
    a strong performance penalty in huge and complex playbboks.
  - Fix NEVRA parsing of package names that include digit(s) in
    them (#76463, #81018)
  - Fix force_handlers not working with any_errors_fatal (#36308)
  - Fix run_once being incorrectly interpreted on handlers
    (#81666)
  - Fix an issue when setting a plugin name from an unsafe source
    resulted in ValueError: unmarshallable object (#82708)
  - Fix check for missing _sub_plugin attribute in older
    connection plugins (#82954)
  - Fix condition for unquoting configuration strings from ini
    files (#82387).
  - Fix for when any_errors_fatal was ignored if error occurred
    in a block with always (#31543)
  - Fix handlers not being executed in lockstep using the linear
    strategy in some cases (#82307)
  - Fix handling missing urls in
    ansible.module_utils.urls.fetch_file for Python 3.
  - Fix issue where an include_tasks handler in a role was not
    able to locate a file in tasks/ when tasks_from was used as a
    role entry point and main.yml was not present (#82241)
  - Fix issues when tasks withing nested blocks wouldn't run when
    force_handlers is set (#81533)
  - Fix loading vars_plugins in roles (#82239).
  - Fix notifying role handlers by listen keyword topics with the
    "role_name : " prefix (#82849).
  - Fix setting proper locale for git executable when running on
    non english systems, ensuring git output can always be
    parsed.
  - Fix tasks in always section not being executed for nested
    blocks with any_errors_fatal (#73246)
  - Fixes permission for cache json file from 600 to 644
    (#82683).
  - Give the tombstone error for include pre-fork like other
    tombstoned action/module plugins.
  - Harden python templates for respawn and ansiballz around str
    literal quoting
  - Include the task location when a module or action plugin is
    deprecated (#82450).
  - Interpreter discovery - Add Amzn to OS_FAMILY_MAP for correct
    family fallback for interpreter discovery (#80882).
  - Mirror the behavior of dnf on the command line when handling
    NEVRAs with omitted epoch (#71808)
  - Plugin loader does not dedupe nor cache filter/test plugins
    by file basename, but full path name.
  - Properly template tags in parent blocks (#81053)
  - Provide additional information about the alternative plugin
    in the deprecation message (#80561).
  - Remove the galaxy_info field platforms from the role
    templates (#82453).
  - Restoring the ability of filters/tests can have same file
    base name but different tests/filters defined inside.
  - Reword the error message when the module fails to parse
    parameters in JSON format (#81188).
  - Reword warning if the reserved keyword _ansible_ used as a
    module parameter (#82514).
  - Run all handlers with the same listen topic, even when
    notified from another handler (#82363).
  - Slight optimization to hostvars (instantiate template only
    once per host, vs per call to var).
  - Stopped misleadingly advertising async mode support in the
    reboot module (#71517).
  - ansible-galaxy role import - fix using the role_name in a
    standalone role's galaxy_info metadata by disabling automatic
    removal of the ansible-role- prefix. This matches the
    behavior of the Galaxy UI which also no longer implicitly
    removes the ansible-role- prefix. Use the --role-name option
    or add a role_name to the galaxy_info dictionary in the
    role's meta/main.yml to use an alternate role name.
  - ansible-test sanity --test runtime-metadata - add
    action_plugin as a valid field for modules in the schema
    (#82562).
  - ansible.module_utils.service - ensure binary data
    transmission in daemonize()
  - any_errors_fatal should fail all hosts and rescue all of them
    when a rescue section is specified (#80981)
  - include_role - properly execute v2_playbook_on_include and
    v2_runner_on_failed callbacks as well as increase ok and
    failed stats in the play recap, when appropriate (#77336)
  - allow_duplicates - fix evaluating if the current role allows
    duplicates instead of using the initial value from the
    duplicate's cached role.
  - ansible-config init will now dedupe ini entries from plugins.
  - ansible-config will now properly template defaults before
    dumping them.
  - ansible-doc - fixed "inicates" typo in output
  - ansible-doc - format top-level descriptions with multiple
    paragraphs as multiple paragraphs, instead of concatenating
    them (#83155).
  - ansible-galaxy - Deprecate use of the Galaxy v2 API (#81781)
  - ansible-galaxy - Provide a better error message when using a
    requirements file with an invalid format - #81901
  - ansible-galaxy - Resolve issue with the dataclass used for
    galaxy.yml manifest caused by using future annotations
  - ansible-galaxy - ensure path to ansible collection when
    installing or downloading doesn't have a backslash (#79705).
  - ansible-galaxy - started allowing the use of pre-releases for
    collections that do not have any stable versions published.
    (#81606)
  - ansible-galaxy - started allowing the use of pre-releases for
    dependencies on any level of the dependency tree that
    specifically demand exact pre-release versions of collections
    and not version ranges. (#81606)
  - ansible-galaxy error on dependency resolution will not error
    itself due to 'virtual' collections not having a
    name/namespace.
  - ansible-galaxy info - fix reporting no role found when
    lookup_role_by_name returns None.
  - ansible-galaxy role import - exit with 1 when the import
    fails (#82175).
  - ansible-galaxy role install - fix installing roles from
    Galaxy that have version None (#81832).
  - ansible-galaxy role install - fix symlinks (#82702, #81965).
  - ansible-galaxy role install - normalize tarfile paths and
    symlinks using ansible.utils.path.unfrackpath and consider
    them valid as long as the realpath is in the tarfile's role
    directory (#81965).
  - ansible-inventory - index available_hosts for major
    performance boost when dumping large inventories
  - ansible-pull now will expand relative paths for the
  - d|--directory option is now expanded before use.
  - ansible-pull will now correctly handle become and connection
    password file options for ansible-playbook.
  - ansible-test - Add a pylint plugin to work around a known
    issue on Python 3.12.
  - ansible-test - Explicitly supply ControlPath=none when
    setting up port forwarding over SSH to address the scenario
    where the local ssh configuration uses ControlPath for all
    hosts, and would prevent ports to be forwarded after the
    initial connection to the host.
  - ansible-test - Fix parsing of cgroup entries which contain a
    : in the path (#81977).
  - ansible-test - Include missing pylint requirements for Python
    3.10.
  - ansible-test - Properly detect docker host when using ssh://
    protocol for connecting to the docker daemon.
  - ansible-test - The libexpat package is automatically upgraded
    during remote bootstrapping to maintain compatibility with
    newer Python packages.
  - ansible-test - The validate-modules sanity test no longer
    attempts to process files with unrecognized extensions as
    Python (resolves #82604).
  - ansible-test - Update pylint to version 3.0.1.
  - ansible-test ansible-doc sanity test - do not remove
    underscores from plugin names in collections before calling
    ansible-doc (#82574).
  - ansible-test validate-modules sanity test - do not treat
    leading underscores for plugin names in collections as an
    attempted deprecation (#82575).
  - ansible-test — Python 3.8–3.12 will use coverage v7.3.2.
  - ansible.builtin.apt - calling clean = true does not properly
    clean certain cache files such as /var/cache/apt/pkgcache.bin
    and /var/cache/apt/pkgcache.bin (#82611)
  - ansible.builtin.uri - the module was ignoring the force
    parameter and always requesting a cached copy (via the
    If-Modified-Since header) when downloading to an existing
    local file. Disable caching when force is true, as documented
    (#82166).
  - ansible_managed restored it's 'templatability' by ensuring
    the possible injection routes are cut off earlier in the
    process.
  - apt - honor install_recommends and dpkg_options while
    installing python3-apt library (#40608).
  - apt - install recommended packages when installing package
    via deb file (#29726).
  - apt_repository - do not modify repo files if the file is a
    symlink (#49809).
  - apt_repository - update PPA URL to point to https URL
    (#82463).
  - assemble - fixed missing parameter 'content' in
    `_get_diff_data` API (#82359).
  - async - Fix bug that stopped running async task in --check
    when check_mode: False was set as a task attribute - #82811
  - blockinfile - when create=true is used with a filename
    without path, the module crashed (#81638).
  - check if there are attributes to set before attempting to set
    them (#76727)
  - copy action now also generates temprary files as hidden ('.'
    prefixed) to avoid accidental pickup by running services that
    glob by extension.
  - copy action now ensures that tempfiles use the same suffix as
    destination, to allow for validate to work with utilities
    that check extensions.
  - deb822_repository - handle idempotency if the order of
    parameters is changed (#82454).
  - debconf - allow user to specify a list for value when vtype
    is multiselect (#81345).
  - delegate_to when set to an empty or undefined variable will
    now give a proper error.
  - distribution.py - Recognize ALP-Dolomite as part of the SUSE
    OS family in Ansible, fixing its previous misidentification
    (#82496).
  - distro - bump bundled distro version from 1.6.0 to 1.8.0
    (#81713).
  - dnf - fix an issue when cached RPMs were left in the cache
    directory even when the keepcache setting was unset (#81954)
  - dnf - fix an issue when installing a package by specifying a
    file it provides could result in installing a different
    package providing the same file than the package already
    installed resulting in resolution failure (#82461)
  - dnf - properly set gpg check options on enabled repositories
    according to the disable_gpg_check option (#80110)
  - dnf - properly skip unavailable packages when skip_broken is
    enabled (#80590)
  - dnf - the nobest option only overrides the distribution
    default when explicitly used, and is used for all supported
    operations (#82616)
  - dnf5 - replace removed API calls
  - dnf5 - respect allow_downgrade when installing packages
    directly from rpm files
  - dnf5 - the nobest option only overrides the distribution
    default when used
  - dwim functions for lookups should be better at detectging
    role context even in abscense of tasks/main.
  - ensure we have logger before we log when we have increased
    verbosity.
  - expect - fix argument spec error using timeout=null (#80982).
  - fact gathering on linux now handles thread count by using
    rounding vs dropping decimals, it should give slightly more
    accurate numbers.
  - facts - add a generic detection for VMware in product name.
  - facts - detect VMware ESXi 8.0 virtualization by product name
    VMware20,1
  - fetch - Do not calculate the file size for Windows fetch
    targets to improve performance.
  - fetch - add error message when using dest with a trailing
    slash that becomes a local directory - #82878
  - find - do not fail on Permission errors (#82027).
  - first_found lookup now always returns a full (absolute) and
    normalized path
  - first_found lookup now always takes into account k=v options
  - flush_handlers - properly handle a handler failure in a
    nested block when force_handlers is set
    (http://github.com/ansible/ansible/issues/81532)
  - galaxy - skip verification for unwanted Python compiled
    bytecode files (#81628).
  - handle exception raised while validating with elements='int'
    and value is not within choices (#82776).
  - include_tasks - include ansible_loop_var and
    ansible_index_var in a loop (#82655).
  - include_vars - fix calculating depth relative to the root and
    ensure all files are included (#80987).
  - interpreter_discovery - handle AnsibleError exception raised
    while interpreter discovery (#78264).
  - iptables - add option choices 'src,src' and 'dst,dst' in
    match_set_flags (#81281).
  - iptables - set jump to DSCP when set_dscp_mark or
    set_dscp_mark_class is set (#77077).
  - known_hosts - Fix issue with @cert-authority entries in
    known_hosts incorrectly being removed.
  - module no_log will no longer affect top level booleans, for
    example no_log_module_parameter='a' will no longer hide
    changed=False as a 'no log value' (matches 'a').
  - moved assemble, raw, copy, fetch, reboot, script and
    wait_for_connection to query task instead of play_context
    ensuring they get the lastest and most correct data.
  - reboot action now handles connections with 'timeout' vs only
    'connection_timeout' settings.
  - role params now have higher precedence than host facts again,
    matching documentation, this had unintentionally changed in
    2.15.
  - roles, code cleanup and performance optimization of
    dependencies, now cached, and public setting is now
    determined once, at role instantiation.
  - roles, the static property is now correctly set, this will
    fix issues with public and DEFAULT_PRIVATE_ROLE_VARS controls
    on exporting vars.
  - set_option method for plugins to update config now properly
    passes through type casting and validation.
  - ssh - add tests for the SSH connection plugin.
  - support url-encoded credentials in URLs like
    http://x%40:%40@example.com (#82552)
  - syslog - Handle ValueError exception raised when sending Null
    Characters to syslog with Python 3.12.
  - systemd_services - update documentation regarding
    required_one_of and required_by parameters (#82914).
  - template - Fix error when templating an unsafe string which
    corresponds to an invalid type in Python (#82600).
  - template action will also inherit the behavior from copy (as
    it uses it internally).
  - templating - ensure syntax errors originating from a template
    being compiled into Python code object result in a failure
    (#82606)
  - unarchive - add support for 8 character permission strings
    for zip archives (#81705).
  - unarchive - force unarchive if symlink target changes
    (#30420).
  - unarchive modules now uses zipinfo options without relying on
    implementation defaults, making it more compatible with all
    OS/distributions.
  - unsafe data - Address an incompatibility when iterating or
    getting a single index from AnsibleUnsafeBytes
  - unsafe data - Address an incompatibility with
    AnsibleUnsafeText and AnsibleUnsafeBytes when pickling with
    protocol=0
  - unsafe data - Enable directly using AnsibleUnsafeText with
    Python pathlib (#82414)
  - uri - update the documentation for follow_redirects.
  - uri action plugin now skipped during check mode (not
    supported) instead of even trying to execute the module,
    which already skipped, this does not really change the
    result, but returns much faster.
  - vars - handle exception while combining VarsWithSources and
    dict (#81659).
  - wait_for should not handle 'non mmapable files' again.
  - winrm - Better handle send input failures when communicating
    with hosts under load
  - winrm - Do not raise another exception during cleanup when a
    task is timed out - #81095
  - winrm - does not hang when attempting to get process output
    when stdin write failed</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1720958401">- update to 2.17.1:
  https://github.com/ansible/ansible/blob/v2.17.1/changelogs/CHANGELOG-v2.17.rst
  * Minor Changes
  - ansible-test - Update pypi-test-container to version 3.1.0.
  * Bugfixes
  - Fix rapid memory usage growth when notifying handlers using
    the listen keyword (#83392)
  - Fix the task attribute resolved_action to show the FQCN
    instead of None when action or local_action is used in the
    playbook.
  - Fix using module_defaults with local_action/action (#81905).
  - fixed unit test test_borken_cowsay to address mock not been
    properly applied when existing unix system already have
    cowsay installed.
  - powershell - Implement more robust deletion mechanism for C#
    code compilation temporary files. This should avoid scenarios
    where the underlying temporary directory may be temporarily
    locked by antivirus tools or other IO problems. A failure to
    delete one of these temporary directories will result in a
    warning rather than an outright failure.
  - shell plugin - properly quote all needed components of shell
    commands (#82535)</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1721131200">- update to 2.17.2:
  https://github.com/ansible/ansible/blob/v2.17.2/changelogs/CHANGELOG-v2.17.rst
  * Bugfixes
  - Fix a traceback when an environment variable contains certain
    special characters (#83498)
  - dnf - reverted incomplete fix from 2.17.2rc1 (#83504)
  - dnf, dnf5 - fix for installing a set of packages by
    specifying them using a wildcard character (#83373)
  - linear strategy now provides a properly templated task name
    to the v2_runner_on_started callback event.
  - package_facts - ignore warnings sent by apk on stderr
    (#83501).
  - replace - Updated before/after example (#83390).
  - templating hostvars under native jinja will not cause
    serialization errors anymore.</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1723550400">- update to 2.17.3:
  https://github.com/ansible/ansible/blob/v2.17.3/changelogs/CHANGELOG-v2.17.rst
  * Minor Changes
  - ansible-test - Improve the error message shown when an
    unknown --remote or --docker option is given.
  - ansible-test - Removed the vyos/1.1.8 network remote as it is
    no longer functional.
  * Bugfixes
  - Warning now includes filename and line number of variable
    when specifying a list of dictionaries for vars (#82528).
  - config, restored the ability to set module compression via a
    variable
  - debconf - fix normalization of value representation for
    boolean vtypes in new packages (#83594)
  - linear strategy: fix handlers included via include_tasks
    handler to be executed in lockstep (#83019)</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1726056000">- update to 2.17.4:
  https://github.com/ansible/ansible/blob/v2.17.4/changelogs/CHANGELOG-v2.17.rst
  * Bugfixes
  - Fix SemanticVersion.parse() to store the version string so
    that __repr__ reports it instead of None (#83831).
  - Fix an issue where registered variable was not available for
    templating in loop_control.label on skipped looped tasks
    (#83619)
  - Fix for meta tasks breaking host/fork affinity with
    host_pinned strategy (#83294)
  - Fix using the current task's directory for looking up
    relative paths within roles (#82695).
  - atomic_move - fix using the setgid bit on the parent
    directory when creating files (#46742, #67177).
  - connection plugins using the 'extras' option feature would
    need variables to match the plugin's loaded name, sometimes
    requiring fqcn, which is not the same as the
    documented/declared/expected variables. Now we fall back to
    the 'basename' of the fqcn, but plugin authors can still set
    the expected value directly.
  - csvfile lookup - give an error when no search term is
    provided using modern config syntax (#83689).
  - include_tasks - Display location when attempting to load a
    task list where include_* did not specify any value - #83874
  - powershell - Improve CLIXML decoding to decode all control
    characters and unicode characters that are encoded as
    surrogate pairs.
  - psrp - Fix bug when attempting to fetch a file path that
    contains special glob characters like []
  - runtime-metadata sanity test - do not crash on deprecations
    if galaxy.yml contains an empty version field (#83831).
  - ssh - Fix bug when attempting to fetch a file path with
    characters that should be quoted when using the piped
    transfer method</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1728648000">- update to 2.17.5:
  https://github.com/ansible/ansible/blob/v2.17.5/changelogs/CHANGELOG-v2.17.rst
  * Bugfixes
  - Add descriptions for ansible-galaxy install --help` and
    ``ansible-galaxy role|collection install --help.
  - Errors now preserve stacked error messages even when YAML is
    involved.
  - ansible-galaxy install --help - Fix the usage text and
    document that the requirements file passed to -r can include
    collections and roles.
  - copy - mtime/atime not updated. Fix now update
    mtime/atime(#83013)
  - delay keyword is now a float, matching the underlying 'time'
    API and user expectations.
  - dnf5 - re-introduce the state: installed alias to state:
    present (#83960)
  - module_utils atomic_move (used by most file based modules),
    now correctly handles permission copy and setting mtime
    correctly across all paths</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1731585600">- update to 2.17.6:
  https://github.com/ansible/ansible/blob/v2.17.6/changelogs/CHANGELOG-v2.17.rst
  * Minor Changes
  - ansible-test - Improve container runtime probe error
    handling. When unexpected probe output is encountered, an
    error with more useful debugging information is provided.
  * Security Fixes
  - include_vars action - Ensure that result masking is correctly
    requested when vault-encrypted files are read.
    (CVE-2024-8775)
  - task result processing - Ensure that action-sourced result
    masking (_ansible_no_log=True) is preserved. (CVE-2024-8775)
  - user action won't allow ssh-keygen, chown and chmod to run on
    existing ssh public key file, avoiding traversal on existing
    symlinks (CVE-2024-9902).
  * Bugfixes
  - Fix disabling SSL verification when installing collections
    and roles from git repositories. If --ignore-certs isn't
    provided, the value for the GALAXY_IGNORE_CERTS configuration
    option will be used (#83326).
  - Improve performance on large inventories by reducing the
    number of implicit meta tasks.
  - Use the requested error message in the
    ansible.module_utils.facts.timeout timeout function instead
    of hardcoding one.
  - ansible-test - Enable the sys.unraisablehook work-around for
    the pylint sanity test on Python 3.11. Previously the
    work-around was only enabled for Python 3.12 and later.
    However, the same issue has been discovered on Python 3.11.
  - debconf - set empty password values (#83214).
  - facts - skip if distribution file path is directory, instead
    of raising error (#84006).
  - user action will now require O(force) to overwrite the public
    part of an ssh key when generating ssh keys, as was already
    the case for the private part.
  - user module now avoids changing ownership of files symlinked
    in provided home dir skeleton</changelog>
</package>
<package pkgid="2c5333f09bf1f85885f1cef8796ab578d2032aa3de7ee0eab52d8e36a8ece7251f7cefc633e37cc43afcb5457c064bac6d832d0351fa0934a7b9a8cc1fb660ff" name="ansible-core" arch="noarch">
  <version epoch="0" ver="2.17.6" rel="2.0.4.1.sr20241103"/>
  <changelog author="Johannes Kastl &lt;kastl@b1-systems.de&gt;" date="1701777600">- update to 2.15.7:
  This release includes a fix for CVE-2023-5764, where internal
  templating actions could result in unsafe data losing its unsafe
  designation.
  * Breaking Changes / Porting Guide
  - assert - Nested templating may result in an inability for the
    conditional to be evaluated. See the porting guide for more
    information.
  * Security Fixes
  - templating - Address issues where internal templating can
    cause unsafe variables to lose their unsafe designation
    (CVE-2023-5764)
  * Bugfixes
  - ansible-pull now will expand relative paths for the
  - d|--directory option is now expanded before use.
  - flush_handlers - properly handle a handler failure in a
    nested block when force_handlers is set
    (http://github.com/ansible/ansible/issues/81532)
  - module no_log will no longer affect top level booleans, for
    example no_log_module_parameter='a' will no longer hide
    changed=False as a 'no log value' (matches 'a').
  - modules/user.py - Add check for valid directory when creating
    new user homedir (allows /dev/null as skeleton) (#75063)
  - role params now have higher precedence than host facts again,
    matching documentation, this had unintentionally changed in
    2.15.
  - wait_for should not handle 'non mmapable files' again.</changelog>
  <changelog author="Johannes Kastl &lt;kastl@b1-systems.de&gt;" date="1702382400">- update to 2.15.8:
  * Minor Changes
  - ansible-test - Add FreeBSD 13.2 remote.
  - ansible-test - Removed freebsd/13.1 remote.
  * Bugfixes
  - unsafe data - Address an incompatibility when iterating or
    getting a single index from AnsibleUnsafeBytes
  - unsafe data - Address an incompatibility with
    AnsibleUnsafeText and AnsibleUnsafeBytes when pickling with
    protocol=0</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1705838400">- update to 2.16.0:
  https://github.com/ansible/ansible/blob/v2.16.0/changelogs/CHANGELOG-v2.16.rst
  * Bugfixes and Minor changes omitted for brevity, see full
    changelog
  * Breaking Changes / Porting Guide
  - Any plugin using the config system and the cli entry to use
    the timeout from the command line, will see the value change
    if the use had configured it in any of the lower precedence
    methods. If relying on this behaviour to consume the
    global/generic timeout from the DEFAULT_TIMEOUT constant,
    please consult the documentation on plugin configuration to
    add the overlaping entries.
  - ansible-test - Test plugins that rely on containers no longer
    support reusing running containers. The previous behavior was
    an undocumented, untested feature.
  - service module will not permanently configure variables/flags
    for openbsd when doing enable/disable operation anymore, this
    module was never meant to do this type of work, just to
    manage the service state itself. A rcctl_config or similar
    module should be created and used instead.
  * Deprecated Features
  - Deprecated ini config option collections_paths, use the
    singular form collections_path instead
  - Deprecated the env var ANSIBLE_COLLECTIONS_PATHS, use the
    singular form ANSIBLE_COLLECTIONS_PATH instead
  - Old style vars plugins which use the entrypoints
    get_host_vars or get_group_vars are deprecated. The plugin
    should be updated to inherit from BaseVarsPlugin and define a
    get_vars method as the entrypoint.
  - Support for Windows Server 2012 and 2012 R2 has been removed
    as the support end of life from Microsoft is October 10th
    2023. These versions of Windows will no longer be tested in
    this Ansible release and it cannot be guaranteed that they
    will continue to work going forward.
  - STRING_CONVERSION_ACTION config option is deprecated as it is
    no longer used in the Ansible Core code base.
  - the 'smart' option for setting a connection plugin is being
    removed as it's main purpose (choosing between ssh and
    paramiko) is now irrelevant.
  - vault and unfault filters - the undocumented vaultid
    parameter is deprecated and will be removed in ansible-core
    2.20. Use vault_id instead.
  - yum_repository - deprecated parameter 'keepcache' (#78693).
  * Removed Features (previously deprecated)
  - ActionBase - remove deprecated _remote_checksum method
  - PlayIterator - remove deprecated cache_block_tasks and
    get_original_task methods
  - Remove deprecated FileLock class
  - Removed Python 3.9 as a supported version on the controller.
    Python 3.10 or newer is required.
  - Removed include which has been deprecated in Ansible 2.12.
    Use include_tasks or import_tasks instead.
  - Templar - remove deprecated shared_loader_obj parameter of
    __init__
  - fetch_url - remove auto disabling decompress when gzip is not
    available
  - get_action_args_with_defaults - remove deprecated
    redirected_names method parameter
  - ansible-test - Removed support for the remote Windows targets
    2012 and 2012-R2
  - inventory_cache - remove deprecated
    default.fact_caching_prefix ini configuration option, use
    defaults.fact_caching_prefix instead.
  - module_utils/basic.py - Removed Python 3.5 as a supported
    remote version. Python 2.7 or Python 3.6+ is now required.
  - stat - removed unused get_md5 parameter.
  * Security Fixes
  - ansible-galaxy - Prevent roles from using symlinks to
    overwrite files outside of the installation directory
    (CVE-2023-5115)
  * Known issues
  - ansible-galaxy - dies in the middle of installing a role when
    that role contains Java inner classes (files with $ in the
    file name). This is by design, to exclude temporary or backup
    files. (#81553).
  - ansible-test - The pep8 sanity test is unable to detect
    f-string spacing issues (E201, E202) on Python 3.10 and 3.11.
    They are correctly detected under Python 3.12. See
    (PyCQA/pycodestyle#1190).</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1705838401">- update to 2.16.1:
  https://github.com/ansible/ansible/blob/v2.16.1/changelogs/CHANGELOG-v2.16.rst
  * Breaking Changes / Porting Guide
  - assert - Nested templating may result in an inability for the
    conditional to be evaluated. See the porting guide for more
    information.
  * Security Fixes
  - templating - Address issues where internal templating can
    cause unsafe variables to lose their unsafe designation
    (CVE-2023-5764)
  * Bugfixes
  - Fix issue where an include_tasks handler in a role was not
    able to locate a file in tasks/ when tasks_from was used as a
    role entry point and main.yml was not present (#82241)
  - Plugin loader does not dedupe nor cache filter/test plugins
    by file basename, but full path name.
  - Restoring the ability of filters/tests can have same file
    base name but different tests/filters defined inside.
  - ansible-pull now will expand relative paths for the
  - d|--directory option is now expanded before use.
  - ansible-pull will now correctly handle become and connection
    password file options for ansible-playbook.
  - flush_handlers - properly handle a handler failure in a
    nested block when force_handlers is set
    (http://github.com/ansible/ansible/issues/81532)
  - module no_log will no longer affect top level booleans, for
    example no_log_module_parameter='a' will no longer hide
    changed=False as a 'no log value' (matches 'a').
  - role params now have higher precedence than host facts again,
    matching documentation, this had unintentionally changed in
    2.15.
  - wait_for should not handle 'non mmapable files' again.</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1705838402">- update to 2.16.2:
  https://github.com/ansible/ansible/blob/v2.16.2/changelogs/CHANGELOG-v2.16.rst
  * Bugfixes
  - unsafe data - Address an incompatibility when iterating or
    getting a single index from AnsibleUnsafeBytes
  - unsafe data - Address an incompatibility with
    AnsibleUnsafeText and AnsibleUnsafeBytes when pickling with
    protocol=0</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1706616000">- update to 2.16.3:
  https://github.com/ansible/ansible/blob/v2.16.3/changelogs/CHANGELOG-v2.16.rst
  * Security Fixes
  - ANSIBLE_NO_LOG - Address issue where ANSIBLE_NO_LOG was
    ignored (CVE-2024-0690)
  * Bugfixes
  - Run all handlers with the same listen topic, even when
    notified from another handler (#82363).
  - ansible-galaxy role import - fix using the role_name in a
    standalone role's galaxy_info metadata by disabling automatic
    removal of the ansible-role- prefix. This matches the
    behavior of the Galaxy UI which also no longer implicitly
    removes the ansible-role- prefix. Use the --role-name option
    or add a role_name to the galaxy_info dictionary in the
    role's meta/main.yml to use an alternate role name.
  - ansible-test sanity --test runtime-metadata - add
    action_plugin as a valid field for modules in the schema
    (#82562).
  - ansible-config init will now dedupe ini entries from plugins.
  - ansible-galaxy role import - exit with 1 when the import
    fails (#82175).
  - ansible-galaxy role install - normalize tarfile paths and
    symlinks using ansible.utils.path.unfrackpath and consider
    them valid as long as the realpath is in the tarfile's role
    directory (#81965).
  - delegate_to when set to an empty or undefined variable will
    now give a proper error.
  - dwim functions for lookups should be better at detectging
    role context even in abscense of tasks/main.
  - roles, code cleanup and performance optimization of
    dependencies, now cached, and public setting is now
    determined once, at role instantiation.
  - roles, the static property is now correctly set, this will
    fix issues with public and DEFAULT_PRIVATE_ROLE_VARS controls
    on exporting vars.
  - unsafe data - Enable directly using AnsibleUnsafeText with
    Python pathlib (#82414)</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1710590400">- update to 2.16.4:
  https://github.com/ansible/ansible/blob/v2.16.4/changelogs/CHANGELOG-v2.16.rst
  * Bugfixes
  - Fix loading vars_plugins in roles (#82239).
  - expect - fix argument spec error using timeout=null (#80982).
  - include_vars - fix calculating depth relative to the root and
    ensure all files are included (#80987).
  - templating - ensure syntax errors originating from a template
    being compiled into Python code object result in a failure
    (#82606)</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1711540800">- update to 2.16.5:
  https://github.com/ansible/ansible/blob/v2.16.5/changelogs/CHANGELOG-v2.16.rst
  * Minor Changes
  - ansible-test - Add a work-around for permission denied errors
    when using pytest &gt;= 8 on multi-user systems with an
    installed version of ansible-test.
  * Bugfixes
  - Fix an issue when setting a plugin name from an unsafe source
    resulted in ValueError: unmarshallable object (#82708)
  - Harden python templates for respawn and ansiballz around str
    literal quoting
  - ansible-test - The libexpat package is automatically upgraded
    during remote bootstrapping to maintain compatibility with
    newer Python packages.
  - template - Fix error when templating an unsafe string which
    corresponds to an invalid type in Python (#82600).
  - winrm - does not hang when attempting to get process output
    when stdin write failed</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1713268800">- adjust spec to new name for PyPI file name (underscore instead of
  hyphen: ansible_core-2.16.6.tar.gz)
- update to 2.16.6:
  https://github.com/ansible/ansible/blob/v2.16.6/changelogs/CHANGELOG-v2.16.rst
  * Bugfixes
  - Consolidated the list of internal static vars, centralized
    them as constant and completed from some missing entries.
  - Fix check for missing `_sub_plugin` attribute in older
    connection plugins (#82954)
  - Fixes permission for cache json file from 600 to 644
    (#82683).
  - Slight optimization to hostvars (instantiate template only
    once per host, vs per call to var).
  - allow_duplicates - fix evaluating if the current role allows
    duplicates instead of using the initial value from the
    duplicate's cached role.
  - ansible-config will now properly template defaults before
    dumping them.
  - ansible-test ansible-doc sanity test - do not remove
    underscores from plugin names in collections before calling
    ansible-doc (#82574).
  - async - Fix bug that stopped running async task in --check
    when check_mode: False was set as a task attribute - #82811
  - blockinfile - when create=true is used with a filename
    without path, the module crashed (#81638).
  - dnf - fix an issue when cached RPMs were left in the cache
    directory even when the keepcache setting was unset (#81954)
  - dnf5 - replace removed API calls
  - facts - add a generic detection for VMware in product name.
  - fetch - add error message when using dest with a trailing
    slash that becomes a local directory - #82878
  - find - do not fail on Permission errors (#82027).
  - unarchive modules now uses zipinfo options without relying on
    implementation defaults, making it more compatible with all
    OS/distributions.
  - winrm - Do not raise another exception during cleanup when a
    task is timed out - #81095</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1716465600">- update to 2.16.7:
  https://github.com/ansible/ansible/blob/v2.16.7/changelogs/CHANGELOG-v2.16.rst
  * Minor Changes
  - ansible.builtin.user - Remove user not found warning (#80267)
  * Bugfixes
  - Add a version ceiling constraint for pypsrp to avoid
    potential breaking changes in the 1.0.0 release.
  - Fix NEVRA parsing of package names that include digit(s) in
    them (#76463, #81018)
  - Fix handlers not being executed in lockstep using the linear
    strategy in some cases (#82307)
  - Give the tombstone error for include pre-fork like other
    tombstoned action/module plugins.
  - Include the task location when a module or action plugin is
    deprecated (#82450).
  - Mirror the behavior of dnf on the command line when handling
    NEVRAs with omitted epoch (#71808)
  - ansible-test - Automatically enable the PyPI proxy for the
    centos7 container to restore the ability to use pip in that
    container.
  - ansible_managed restored it's 'templatability' by ensuring
    the possible injection routes are cut off earlier in the
    process.
  - assemble - fixed missing parameter 'content' in
    `_get_diff_data` API (#82359).
  - dnf - fix an issue when installing a package by specifying a
    file it provides could result in installing a different
    package providing the same file than the package already
    installed resulting in resolution failure (#82461)
  - uri - update the documentation for follow_redirects.</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1718798400">- update to 2.16.8:
  https://github.com/ansible/ansible/blob/v2.16.8/changelogs/CHANGELOG-v2.16.rst
  * Minor Changes
  - ansible-test - Update pypi-test-container to version 3.1.0.
  * Bugfixes
  - Fix the task attribute resolved_action to show the FQCN
    instead of None when action or local_action is used in the
    playbook.
  - Fix using module_defaults with local_action/action (#81905).
  - fixed unit test test_borken_cowsay to address mock not been
    properly applied when existing unix system already have
    cowsay installed.
  - powershell - Implement more robust deletion mechanism for C#
    code compilation temporary files. This should avoid scenarios
    where the underlying temporary directory may be temporarily
    locked by antivirus tools or other IO problems. A failure to
    delete one of these temporary directories will result in a
    warning rather than an outright failure.</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1720958400">- update to 2.17.0:
  https://github.com/ansible/ansible/blob/v2.17.0/changelogs/CHANGELOG-v2.17.rst
  * Major Changes
  - urls.py - Removed support for Python 2
  * Minor Changes
  - Add dump and passno mount information to facts component
    (#80478)
  - Added MIRACLE LINUX 9.2 in RedHat OS Family.
  - Interpreter Discovery - Remove hardcoded references to
    specific python interpreters to use for certain distro
    versions, and modify logic for python3 to become the default.
  - Use Python's built-in functools.update_wrapper instead an
    inline copy from Python 3.7.
  - User can now set ansible.log to record higher verbosity than
    what is specified for display via new configuration item
    LOG_VERBOSITY.
  - DEFAULT_PRIVATE_ROLE_VARS is now overridden by explicit
    setting of public for include_roles and import_roles.
  - ansible-galaxy role|collection init - accept --extra-vars to
    supplement/override the variables ansible-galaxy injects for
    templating .j2 files in the skeleton.
  - import_role action now also gets a public option that
    controls variable exports, default depending on
    DEFAULT_PRIVATE_ROLE_VARS (if using defaults equates to
    public=True).
  - added configuration item TARGET_LOG_INFO that allows the
    user/author to add an information string to the log output on
    targets.
  - ansible-doc - treat double newlines in documentation strings
    as paragraph breaks. This is useful to create multi-paragraph
    notes in module/plugin documentation (#82465).
  - ansible-doc output has been revamped to make it more visually
    pleasing when going to a terminal, also more concise, use -v
    to show extra information.
  - ansible-galaxy - Started normalizing build directory with a
    trailing separator when building collections, internally.
    (#81619).
  - ansible-galaxy dependency resolution messages have changed
    the unexplained 'virtual' collection for the specific type
    ('scm', 'dir', etc) that is more user friendly
  - ansible-test - Add Alpine 3.19 container.
  - ansible-test - Add Alpine 3.19 to remotes.
  - ansible-test - Add Fedora 39 container.
  - ansible-test - Add Fedora 39 remote.
  - ansible-test - Add a work-around for permission denied errors
    when using pytest &gt;= 8 on multi-user systems with an
    installed version of ansible-test.
  - ansible-test - Add support for RHEL 9.3 remotes.
  - ansible-test - Added a macOS 14.3 remote VM.
  - ansible-test - Bump the nios-test-container from version
    2.0.0 to version 3.0.0.
  - ansible-test - Containers and remotes managed by ansible-test
    will have their Python EXTERNALLY-MANAGED marker (PEP668)
    removed. This provides backwards compatibility for existing
    tests running in newer environments which mark their Python
    as externally managed. A future version of ansible-test may
    change this behavior, requiring tests to be adapted to such
    environments.
  - ansible-test - Make Python 3.12 the default version used in
    the base and default containers.
  - ansible-test - Remove Alpine 3(.18) container.
  - ansible-test - Remove Alpine 3.18 from remotes.
  - ansible-test - Remove Fedora 38 remote support.
  - ansible-test - Remove Fedora 38 test container.
  - ansible-test - Remove rhel/9.2 test remote
  - ansible-test - Remove the FreeBSD 13.2 remote.
  - ansible-test - Removed fallback to virtualenv when -m venv is
    non-functional.
  - ansible-test - Removed test remotes: macos/13.2
  - ansible-test - Removed the no-basestring sanity test. The
    test is no longer necessary now that Python 3 is required.
  - ansible-test - Removed the no-dict-iteritems,
    no-dict-iterkeys and no-dict-itervalues sanity tests. The
    tests are no longer necessary since Python 3 is required.
  - ansible-test - Removed the no-main-display sanity test. The
    unwanted pattern is unlikely to occur, since the test has
    existed since Ansible 2.8.
  - ansible-test - Removed the no-unicode-literals sanity test.
    The test is unnecessary now that Python 3 is required and the
    unicode_literals feature has no effect.
  - ansible-test - Special handling for installation of
    cryptography has been removed, as it is no longer necessary.
  - ansible-test - The shellcheck sanity test no longer disables
    the SC2164 check. In most cases, seeing this error means the
    script is missing set -e.
  - ansible-test - The unidiomatic-typecheck rule has been
    enabled in the pylint sanity test.
  - ansible-test - The unidiomatic-typecheck rule has been
    removed from the validate-modules sanity test.
  - ansible-test - Update the base and default containers to use
    Ubuntu 22.04 for the base image. This also updates PowerShell
    to version 7.4.0 with .NET 8.0.0 and ShellCheck to version
    0.8.0.
  - ansible-test - Updated the CloudStack test container to
    version 1.7.0.
  - ansible-test - Updated the distro test containers to version
    6.3.0 to include coverage 7.3.2 for Python 3.8+. The alpine3
    container is now based on 3.18 instead of 3.17 and includes
    Python 3.11 instead of Python 3.10.
  - ansible-test - Updated the distro test containers to version
    7.1.0.
  - ansible-test - When ansible-test installs requirements, it
    now instructs pip to allow installs on externally managed
    environments as defined by PEP 668. This only occurs in
    ephemeral environments managed by ansible-test, such as
    containers, or when the --requirements option is used.
  - ansible-test - When invoking sleep in containers during
    container setup, the env command is used to avoid invoking
    the shell builtin, if present.
  - ansible-test - document block name now included in error
    message for YAML parsing errors (#82353).
  - ansible-test - sanity test allows EXAMPLES to be
    multi-document YAML (#82353).
  - ansible-test now has FreeBSD 13.3 and 14.0 support
  - ansible.builtin.user - Remove user not found warning (#80267)
  - apt_repository.py - use api.launchpad.net endpoint instead of
    launchpad.net/api
  - async tasks can now also support check mode at the same time.
  - async_status now supports check mode.
  - constructed inventory plugin - Adding a note that only
    group_vars of explicit groups are loaded (#82580).
  - csvfile - add a keycol parameter to specify in which column
    to search.
  - dnf - add the best option
  - dnf5 - add the best option
  - filter plugin - Add the count and mandatory_count parameters
    in the regex_replace filter
  - find - add a encoding parameter to specify which encoding of
    the files to be searched.
  - git module - gpg_allowlist name was added in 2.17 and we will
    eventually deprecate the gpg_whitelist alias.
  - import_role - allow subdirectories with `_from` options for
    parity with include_role (#82584).
  - module argument spec - Allow module authors to include
    arbitrary additional context in the argument spec, by making
    use of a new top level key called context. This key should be
    a dict type. This allows for users to customize what they
    place in the argument spec, without having to ignore sanity
    tests that validate the schema.
  - modules - Add the ability for an action plugin to call
    self._execute_module(*, ignore_unknown_opts=True) to execute
    a module with options that may not be supported for the
    version being called. This tells the module basic wrapper to
    ignore validating the options provided match the arg spec.
  - package action now has a configuration that overrides the
    detected package manager, it is still overridden itself by
    the use option.
  - py3compat - Remove ansible.utils.py3compat as it is no longer
    necessary
  - removed the unused argument create_new_password from
    CLI.build_vault_ids (#82066).
  - urls - Add support for TLS 1.3 post handshake certificate
    authentication - #81782
  - urls - reduce complexity of Request.open
  - user - accept yescrypt hash as user password
  - validate-modules tests now correctly handles choices in
    dictionary format.
  * Breaking Changes / Porting Guide
  - assert - Nested templating may result in an inability for the
    conditional to be evaluated. See the porting guide for more
    information.
  * Deprecated Features
  - Old style vars plugins which use the entrypoints
    get_host_vars or get_group_vars are deprecated. The plugin
    should be updated to inherit from BaseVarsPlugin and define a
    get_vars method as the entrypoint.
  - The 'required' parameter in
    'ansible.module_utils.common.process.get_bin_path' API is
    deprecated (#82464).
  - module_utils - importing the following convenience helpers
    from ansible.module_utils.basic has been deprecated:
    get_exception, literal_eval, _literal_eval, datetime, signal,
    types, chain, repeat, PY2, PY3, b, binary_type,
    integer_types, iteritems, string_types, test_type, map and
    shlex_quote.
  - ansible-doc - role entrypoint attributes are deprecated and
    eventually will no longer be shown in ansible-doc from
    ansible-core 2.20 on (#82639, #82678).
  - paramiko connection plugin, configuration items in the global
    scope are being deprecated and will be removed in favor or
    the existing same options in the plugin itself. Users should
    not need to change anything (how to configure them are the
    same) but plugin authors using the global constants should
    move to using the plugin's get_option().
  * Removed Features (previously deprecated)
  - Remove deprecated APIs from ansible-docs (#81716).
  - Remove deprecated JINJA2_NATIVE_WARNING environment variable
    (#81714)
  - Remove deprecated scp_if_ssh from ssh connection plugin
    (#81715).
  - Remove deprecated crypt support from ansible.utils.encrypt
    (#81717)
  - Removed Python 2.7 and Python 3.6 as a supported remote
    version. Python 3.7+ is now required for target execution.
  - With the removal of Python 2 support, the yum module and yum
    action plugin are removed and redirected to dnf.
  * Security Fixes
  - ANSIBLE_NO_LOG - Address issue where ANSIBLE_NO_LOG was
    ignored (CVE-2024-0690)
  - ansible-galaxy - Prevent roles from using symlinks to
    overwrite files outside of the installation directory
    (CVE-2023-5115)
  - templating - Address issues where internal templating can
    cause unsafe variables to lose their unsafe designation
    (CVE-2023-5764)
  * Bugfixes
  - Add a version ceiling constraint for pypsrp to avoid
    potential breaking changes in the 1.0.0 release.
  - All core lookups now use set_option(s) even when doing their
    own custom parsing. This ensures that the options are always
    the proper type.
  - Allow for searching handler subdir for included task via
    include_role (#81722)
  - AnsibleModule.atomic_move - fix preserving extended ACLs of
    the destination when it exists (#72929).
  - Cache host_group_vars after instantiating it once and limit
    the amount of repetitive work it needs to do every time it
    runs.
  - Call PluginLoader.all() once for vars plugins, and load vars
    plugins that run automatically or are enabled specifically by
    name subsequently.
  - Consolidate systemd detection logic into one place (#80975).
  - Consolidated the list of internal static vars, centralized
    them as constant and completed from some missing entries.
  - Do not print undefined error message twice (#78703).
  - Enable file cache for vaulted files during vars lookup to fix
    a strong performance penalty in huge and complex playbboks.
  - Fix NEVRA parsing of package names that include digit(s) in
    them (#76463, #81018)
  - Fix force_handlers not working with any_errors_fatal (#36308)
  - Fix run_once being incorrectly interpreted on handlers
    (#81666)
  - Fix an issue when setting a plugin name from an unsafe source
    resulted in ValueError: unmarshallable object (#82708)
  - Fix check for missing _sub_plugin attribute in older
    connection plugins (#82954)
  - Fix condition for unquoting configuration strings from ini
    files (#82387).
  - Fix for when any_errors_fatal was ignored if error occurred
    in a block with always (#31543)
  - Fix handlers not being executed in lockstep using the linear
    strategy in some cases (#82307)
  - Fix handling missing urls in
    ansible.module_utils.urls.fetch_file for Python 3.
  - Fix issue where an include_tasks handler in a role was not
    able to locate a file in tasks/ when tasks_from was used as a
    role entry point and main.yml was not present (#82241)
  - Fix issues when tasks withing nested blocks wouldn't run when
    force_handlers is set (#81533)
  - Fix loading vars_plugins in roles (#82239).
  - Fix notifying role handlers by listen keyword topics with the
    "role_name : " prefix (#82849).
  - Fix setting proper locale for git executable when running on
    non english systems, ensuring git output can always be
    parsed.
  - Fix tasks in always section not being executed for nested
    blocks with any_errors_fatal (#73246)
  - Fixes permission for cache json file from 600 to 644
    (#82683).
  - Give the tombstone error for include pre-fork like other
    tombstoned action/module plugins.
  - Harden python templates for respawn and ansiballz around str
    literal quoting
  - Include the task location when a module or action plugin is
    deprecated (#82450).
  - Interpreter discovery - Add Amzn to OS_FAMILY_MAP for correct
    family fallback for interpreter discovery (#80882).
  - Mirror the behavior of dnf on the command line when handling
    NEVRAs with omitted epoch (#71808)
  - Plugin loader does not dedupe nor cache filter/test plugins
    by file basename, but full path name.
  - Properly template tags in parent blocks (#81053)
  - Provide additional information about the alternative plugin
    in the deprecation message (#80561).
  - Remove the galaxy_info field platforms from the role
    templates (#82453).
  - Restoring the ability of filters/tests can have same file
    base name but different tests/filters defined inside.
  - Reword the error message when the module fails to parse
    parameters in JSON format (#81188).
  - Reword warning if the reserved keyword _ansible_ used as a
    module parameter (#82514).
  - Run all handlers with the same listen topic, even when
    notified from another handler (#82363).
  - Slight optimization to hostvars (instantiate template only
    once per host, vs per call to var).
  - Stopped misleadingly advertising async mode support in the
    reboot module (#71517).
  - ansible-galaxy role import - fix using the role_name in a
    standalone role's galaxy_info metadata by disabling automatic
    removal of the ansible-role- prefix. This matches the
    behavior of the Galaxy UI which also no longer implicitly
    removes the ansible-role- prefix. Use the --role-name option
    or add a role_name to the galaxy_info dictionary in the
    role's meta/main.yml to use an alternate role name.
  - ansible-test sanity --test runtime-metadata - add
    action_plugin as a valid field for modules in the schema
    (#82562).
  - ansible.module_utils.service - ensure binary data
    transmission in daemonize()
  - any_errors_fatal should fail all hosts and rescue all of them
    when a rescue section is specified (#80981)
  - include_role - properly execute v2_playbook_on_include and
    v2_runner_on_failed callbacks as well as increase ok and
    failed stats in the play recap, when appropriate (#77336)
  - allow_duplicates - fix evaluating if the current role allows
    duplicates instead of using the initial value from the
    duplicate's cached role.
  - ansible-config init will now dedupe ini entries from plugins.
  - ansible-config will now properly template defaults before
    dumping them.
  - ansible-doc - fixed "inicates" typo in output
  - ansible-doc - format top-level descriptions with multiple
    paragraphs as multiple paragraphs, instead of concatenating
    them (#83155).
  - ansible-galaxy - Deprecate use of the Galaxy v2 API (#81781)
  - ansible-galaxy - Provide a better error message when using a
    requirements file with an invalid format - #81901
  - ansible-galaxy - Resolve issue with the dataclass used for
    galaxy.yml manifest caused by using future annotations
  - ansible-galaxy - ensure path to ansible collection when
    installing or downloading doesn't have a backslash (#79705).
  - ansible-galaxy - started allowing the use of pre-releases for
    collections that do not have any stable versions published.
    (#81606)
  - ansible-galaxy - started allowing the use of pre-releases for
    dependencies on any level of the dependency tree that
    specifically demand exact pre-release versions of collections
    and not version ranges. (#81606)
  - ansible-galaxy error on dependency resolution will not error
    itself due to 'virtual' collections not having a
    name/namespace.
  - ansible-galaxy info - fix reporting no role found when
    lookup_role_by_name returns None.
  - ansible-galaxy role import - exit with 1 when the import
    fails (#82175).
  - ansible-galaxy role install - fix installing roles from
    Galaxy that have version None (#81832).
  - ansible-galaxy role install - fix symlinks (#82702, #81965).
  - ansible-galaxy role install - normalize tarfile paths and
    symlinks using ansible.utils.path.unfrackpath and consider
    them valid as long as the realpath is in the tarfile's role
    directory (#81965).
  - ansible-inventory - index available_hosts for major
    performance boost when dumping large inventories
  - ansible-pull now will expand relative paths for the
  - d|--directory option is now expanded before use.
  - ansible-pull will now correctly handle become and connection
    password file options for ansible-playbook.
  - ansible-test - Add a pylint plugin to work around a known
    issue on Python 3.12.
  - ansible-test - Explicitly supply ControlPath=none when
    setting up port forwarding over SSH to address the scenario
    where the local ssh configuration uses ControlPath for all
    hosts, and would prevent ports to be forwarded after the
    initial connection to the host.
  - ansible-test - Fix parsing of cgroup entries which contain a
    : in the path (#81977).
  - ansible-test - Include missing pylint requirements for Python
    3.10.
  - ansible-test - Properly detect docker host when using ssh://
    protocol for connecting to the docker daemon.
  - ansible-test - The libexpat package is automatically upgraded
    during remote bootstrapping to maintain compatibility with
    newer Python packages.
  - ansible-test - The validate-modules sanity test no longer
    attempts to process files with unrecognized extensions as
    Python (resolves #82604).
  - ansible-test - Update pylint to version 3.0.1.
  - ansible-test ansible-doc sanity test - do not remove
    underscores from plugin names in collections before calling
    ansible-doc (#82574).
  - ansible-test validate-modules sanity test - do not treat
    leading underscores for plugin names in collections as an
    attempted deprecation (#82575).
  - ansible-test — Python 3.8–3.12 will use coverage v7.3.2.
  - ansible.builtin.apt - calling clean = true does not properly
    clean certain cache files such as /var/cache/apt/pkgcache.bin
    and /var/cache/apt/pkgcache.bin (#82611)
  - ansible.builtin.uri - the module was ignoring the force
    parameter and always requesting a cached copy (via the
    If-Modified-Since header) when downloading to an existing
    local file. Disable caching when force is true, as documented
    (#82166).
  - ansible_managed restored it's 'templatability' by ensuring
    the possible injection routes are cut off earlier in the
    process.
  - apt - honor install_recommends and dpkg_options while
    installing python3-apt library (#40608).
  - apt - install recommended packages when installing package
    via deb file (#29726).
  - apt_repository - do not modify repo files if the file is a
    symlink (#49809).
  - apt_repository - update PPA URL to point to https URL
    (#82463).
  - assemble - fixed missing parameter 'content' in
    `_get_diff_data` API (#82359).
  - async - Fix bug that stopped running async task in --check
    when check_mode: False was set as a task attribute - #82811
  - blockinfile - when create=true is used with a filename
    without path, the module crashed (#81638).
  - check if there are attributes to set before attempting to set
    them (#76727)
  - copy action now also generates temprary files as hidden ('.'
    prefixed) to avoid accidental pickup by running services that
    glob by extension.
  - copy action now ensures that tempfiles use the same suffix as
    destination, to allow for validate to work with utilities
    that check extensions.
  - deb822_repository - handle idempotency if the order of
    parameters is changed (#82454).
  - debconf - allow user to specify a list for value when vtype
    is multiselect (#81345).
  - delegate_to when set to an empty or undefined variable will
    now give a proper error.
  - distribution.py - Recognize ALP-Dolomite as part of the SUSE
    OS family in Ansible, fixing its previous misidentification
    (#82496).
  - distro - bump bundled distro version from 1.6.0 to 1.8.0
    (#81713).
  - dnf - fix an issue when cached RPMs were left in the cache
    directory even when the keepcache setting was unset (#81954)
  - dnf - fix an issue when installing a package by specifying a
    file it provides could result in installing a different
    package providing the same file than the package already
    installed resulting in resolution failure (#82461)
  - dnf - properly set gpg check options on enabled repositories
    according to the disable_gpg_check option (#80110)
  - dnf - properly skip unavailable packages when skip_broken is
    enabled (#80590)
  - dnf - the nobest option only overrides the distribution
    default when explicitly used, and is used for all supported
    operations (#82616)
  - dnf5 - replace removed API calls
  - dnf5 - respect allow_downgrade when installing packages
    directly from rpm files
  - dnf5 - the nobest option only overrides the distribution
    default when used
  - dwim functions for lookups should be better at detectging
    role context even in abscense of tasks/main.
  - ensure we have logger before we log when we have increased
    verbosity.
  - expect - fix argument spec error using timeout=null (#80982).
  - fact gathering on linux now handles thread count by using
    rounding vs dropping decimals, it should give slightly more
    accurate numbers.
  - facts - add a generic detection for VMware in product name.
  - facts - detect VMware ESXi 8.0 virtualization by product name
    VMware20,1
  - fetch - Do not calculate the file size for Windows fetch
    targets to improve performance.
  - fetch - add error message when using dest with a trailing
    slash that becomes a local directory - #82878
  - find - do not fail on Permission errors (#82027).
  - first_found lookup now always returns a full (absolute) and
    normalized path
  - first_found lookup now always takes into account k=v options
  - flush_handlers - properly handle a handler failure in a
    nested block when force_handlers is set
    (http://github.com/ansible/ansible/issues/81532)
  - galaxy - skip verification for unwanted Python compiled
    bytecode files (#81628).
  - handle exception raised while validating with elements='int'
    and value is not within choices (#82776).
  - include_tasks - include ansible_loop_var and
    ansible_index_var in a loop (#82655).
  - include_vars - fix calculating depth relative to the root and
    ensure all files are included (#80987).
  - interpreter_discovery - handle AnsibleError exception raised
    while interpreter discovery (#78264).
  - iptables - add option choices 'src,src' and 'dst,dst' in
    match_set_flags (#81281).
  - iptables - set jump to DSCP when set_dscp_mark or
    set_dscp_mark_class is set (#77077).
  - known_hosts - Fix issue with @cert-authority entries in
    known_hosts incorrectly being removed.
  - module no_log will no longer affect top level booleans, for
    example no_log_module_parameter='a' will no longer hide
    changed=False as a 'no log value' (matches 'a').
  - moved assemble, raw, copy, fetch, reboot, script and
    wait_for_connection to query task instead of play_context
    ensuring they get the lastest and most correct data.
  - reboot action now handles connections with 'timeout' vs only
    'connection_timeout' settings.
  - role params now have higher precedence than host facts again,
    matching documentation, this had unintentionally changed in
    2.15.
  - roles, code cleanup and performance optimization of
    dependencies, now cached, and public setting is now
    determined once, at role instantiation.
  - roles, the static property is now correctly set, this will
    fix issues with public and DEFAULT_PRIVATE_ROLE_VARS controls
    on exporting vars.
  - set_option method for plugins to update config now properly
    passes through type casting and validation.
  - ssh - add tests for the SSH connection plugin.
  - support url-encoded credentials in URLs like
    http://x%40:%40@example.com (#82552)
  - syslog - Handle ValueError exception raised when sending Null
    Characters to syslog with Python 3.12.
  - systemd_services - update documentation regarding
    required_one_of and required_by parameters (#82914).
  - template - Fix error when templating an unsafe string which
    corresponds to an invalid type in Python (#82600).
  - template action will also inherit the behavior from copy (as
    it uses it internally).
  - templating - ensure syntax errors originating from a template
    being compiled into Python code object result in a failure
    (#82606)
  - unarchive - add support for 8 character permission strings
    for zip archives (#81705).
  - unarchive - force unarchive if symlink target changes
    (#30420).
  - unarchive modules now uses zipinfo options without relying on
    implementation defaults, making it more compatible with all
    OS/distributions.
  - unsafe data - Address an incompatibility when iterating or
    getting a single index from AnsibleUnsafeBytes
  - unsafe data - Address an incompatibility with
    AnsibleUnsafeText and AnsibleUnsafeBytes when pickling with
    protocol=0
  - unsafe data - Enable directly using AnsibleUnsafeText with
    Python pathlib (#82414)
  - uri - update the documentation for follow_redirects.
  - uri action plugin now skipped during check mode (not
    supported) instead of even trying to execute the module,
    which already skipped, this does not really change the
    result, but returns much faster.
  - vars - handle exception while combining VarsWithSources and
    dict (#81659).
  - wait_for should not handle 'non mmapable files' again.
  - winrm - Better handle send input failures when communicating
    with hosts under load
  - winrm - Do not raise another exception during cleanup when a
    task is timed out - #81095
  - winrm - does not hang when attempting to get process output
    when stdin write failed</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1720958401">- update to 2.17.1:
  https://github.com/ansible/ansible/blob/v2.17.1/changelogs/CHANGELOG-v2.17.rst
  * Minor Changes
  - ansible-test - Update pypi-test-container to version 3.1.0.
  * Bugfixes
  - Fix rapid memory usage growth when notifying handlers using
    the listen keyword (#83392)
  - Fix the task attribute resolved_action to show the FQCN
    instead of None when action or local_action is used in the
    playbook.
  - Fix using module_defaults with local_action/action (#81905).
  - fixed unit test test_borken_cowsay to address mock not been
    properly applied when existing unix system already have
    cowsay installed.
  - powershell - Implement more robust deletion mechanism for C#
    code compilation temporary files. This should avoid scenarios
    where the underlying temporary directory may be temporarily
    locked by antivirus tools or other IO problems. A failure to
    delete one of these temporary directories will result in a
    warning rather than an outright failure.
  - shell plugin - properly quote all needed components of shell
    commands (#82535)</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1721131200">- update to 2.17.2:
  https://github.com/ansible/ansible/blob/v2.17.2/changelogs/CHANGELOG-v2.17.rst
  * Bugfixes
  - Fix a traceback when an environment variable contains certain
    special characters (#83498)
  - dnf - reverted incomplete fix from 2.17.2rc1 (#83504)
  - dnf, dnf5 - fix for installing a set of packages by
    specifying them using a wildcard character (#83373)
  - linear strategy now provides a properly templated task name
    to the v2_runner_on_started callback event.
  - package_facts - ignore warnings sent by apk on stderr
    (#83501).
  - replace - Updated before/after example (#83390).
  - templating hostvars under native jinja will not cause
    serialization errors anymore.</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1723550400">- update to 2.17.3:
  https://github.com/ansible/ansible/blob/v2.17.3/changelogs/CHANGELOG-v2.17.rst
  * Minor Changes
  - ansible-test - Improve the error message shown when an
    unknown --remote or --docker option is given.
  - ansible-test - Removed the vyos/1.1.8 network remote as it is
    no longer functional.
  * Bugfixes
  - Warning now includes filename and line number of variable
    when specifying a list of dictionaries for vars (#82528).
  - config, restored the ability to set module compression via a
    variable
  - debconf - fix normalization of value representation for
    boolean vtypes in new packages (#83594)
  - linear strategy: fix handlers included via include_tasks
    handler to be executed in lockstep (#83019)</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1726056000">- update to 2.17.4:
  https://github.com/ansible/ansible/blob/v2.17.4/changelogs/CHANGELOG-v2.17.rst
  * Bugfixes
  - Fix SemanticVersion.parse() to store the version string so
    that __repr__ reports it instead of None (#83831).
  - Fix an issue where registered variable was not available for
    templating in loop_control.label on skipped looped tasks
    (#83619)
  - Fix for meta tasks breaking host/fork affinity with
    host_pinned strategy (#83294)
  - Fix using the current task's directory for looking up
    relative paths within roles (#82695).
  - atomic_move - fix using the setgid bit on the parent
    directory when creating files (#46742, #67177).
  - connection plugins using the 'extras' option feature would
    need variables to match the plugin's loaded name, sometimes
    requiring fqcn, which is not the same as the
    documented/declared/expected variables. Now we fall back to
    the 'basename' of the fqcn, but plugin authors can still set
    the expected value directly.
  - csvfile lookup - give an error when no search term is
    provided using modern config syntax (#83689).
  - include_tasks - Display location when attempting to load a
    task list where include_* did not specify any value - #83874
  - powershell - Improve CLIXML decoding to decode all control
    characters and unicode characters that are encoded as
    surrogate pairs.
  - psrp - Fix bug when attempting to fetch a file path that
    contains special glob characters like []
  - runtime-metadata sanity test - do not crash on deprecations
    if galaxy.yml contains an empty version field (#83831).
  - ssh - Fix bug when attempting to fetch a file path with
    characters that should be quoted when using the piped
    transfer method</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1728648000">- update to 2.17.5:
  https://github.com/ansible/ansible/blob/v2.17.5/changelogs/CHANGELOG-v2.17.rst
  * Bugfixes
  - Add descriptions for ansible-galaxy install --help` and
    ``ansible-galaxy role|collection install --help.
  - Errors now preserve stacked error messages even when YAML is
    involved.
  - ansible-galaxy install --help - Fix the usage text and
    document that the requirements file passed to -r can include
    collections and roles.
  - copy - mtime/atime not updated. Fix now update
    mtime/atime(#83013)
  - delay keyword is now a float, matching the underlying 'time'
    API and user expectations.
  - dnf5 - re-introduce the state: installed alias to state:
    present (#83960)
  - module_utils atomic_move (used by most file based modules),
    now correctly handles permission copy and setting mtime
    correctly across all paths</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1731585600">- update to 2.17.6:
  https://github.com/ansible/ansible/blob/v2.17.6/changelogs/CHANGELOG-v2.17.rst
  * Minor Changes
  - ansible-test - Improve container runtime probe error
    handling. When unexpected probe output is encountered, an
    error with more useful debugging information is provided.
  * Security Fixes
  - include_vars action - Ensure that result masking is correctly
    requested when vault-encrypted files are read.
    (CVE-2024-8775)
  - task result processing - Ensure that action-sourced result
    masking (_ansible_no_log=True) is preserved. (CVE-2024-8775)
  - user action won't allow ssh-keygen, chown and chmod to run on
    existing ssh public key file, avoiding traversal on existing
    symlinks (CVE-2024-9902).
  * Bugfixes
  - Fix disabling SSL verification when installing collections
    and roles from git repositories. If --ignore-certs isn't
    provided, the value for the GALAXY_IGNORE_CERTS configuration
    option will be used (#83326).
  - Improve performance on large inventories by reducing the
    number of implicit meta tasks.
  - Use the requested error message in the
    ansible.module_utils.facts.timeout timeout function instead
    of hardcoding one.
  - ansible-test - Enable the sys.unraisablehook work-around for
    the pylint sanity test on Python 3.11. Previously the
    work-around was only enabled for Python 3.12 and later.
    However, the same issue has been discovered on Python 3.11.
  - debconf - set empty password values (#83214).
  - facts - skip if distribution file path is directory, instead
    of raising error (#84006).
  - user action will now require O(force) to overwrite the public
    part of an ssh key when generating ssh keys, as was already
    the case for the private part.
  - user module now avoids changing ownership of files symlinked
    in provided home dir skeleton</changelog>
  <changelog author="Harshvardhan Sharma &lt;harshvardhan.sharma@suse.com&gt;" date="1732190400">- Added necessary test dependencies: pytest-xdist, pytest-mock,
  pytz, passlib, git-core, and openssh to ensure proper test
  execution.
- Introduced the `ansible_python_version` variable and updated the
  test command.</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1732276800">- Backport patch to relax resolvelib dependency:
  771f7ad29ca4d259761eaa88673c2e32f6412bbe.patch</changelog>
</package>
<package pkgid="1e13c0e9a6bc7902387e7b9a3223f232873d27733fb583297b2e53670d58fe52a23512953b89163c9493688de47865433f19bad0091c61ce4998571a8f3dafdf" name="ansible-core" arch="src">
  <version epoch="0" ver="2.17.6" rel="2.0.4.1.sr20241103"/>
  <changelog author="Johannes Kastl &lt;kastl@b1-systems.de&gt;" date="1701777600">- update to 2.15.7:
  This release includes a fix for CVE-2023-5764, where internal
  templating actions could result in unsafe data losing its unsafe
  designation.
  * Breaking Changes / Porting Guide
  - assert - Nested templating may result in an inability for the
    conditional to be evaluated. See the porting guide for more
    information.
  * Security Fixes
  - templating - Address issues where internal templating can
    cause unsafe variables to lose their unsafe designation
    (CVE-2023-5764)
  * Bugfixes
  - ansible-pull now will expand relative paths for the
  - d|--directory option is now expanded before use.
  - flush_handlers - properly handle a handler failure in a
    nested block when force_handlers is set
    (http://github.com/ansible/ansible/issues/81532)
  - module no_log will no longer affect top level booleans, for
    example no_log_module_parameter='a' will no longer hide
    changed=False as a 'no log value' (matches 'a').
  - modules/user.py - Add check for valid directory when creating
    new user homedir (allows /dev/null as skeleton) (#75063)
  - role params now have higher precedence than host facts again,
    matching documentation, this had unintentionally changed in
    2.15.
  - wait_for should not handle 'non mmapable files' again.</changelog>
  <changelog author="Johannes Kastl &lt;kastl@b1-systems.de&gt;" date="1702382400">- update to 2.15.8:
  * Minor Changes
  - ansible-test - Add FreeBSD 13.2 remote.
  - ansible-test - Removed freebsd/13.1 remote.
  * Bugfixes
  - unsafe data - Address an incompatibility when iterating or
    getting a single index from AnsibleUnsafeBytes
  - unsafe data - Address an incompatibility with
    AnsibleUnsafeText and AnsibleUnsafeBytes when pickling with
    protocol=0</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1705838400">- update to 2.16.0:
  https://github.com/ansible/ansible/blob/v2.16.0/changelogs/CHANGELOG-v2.16.rst
  * Bugfixes and Minor changes omitted for brevity, see full
    changelog
  * Breaking Changes / Porting Guide
  - Any plugin using the config system and the cli entry to use
    the timeout from the command line, will see the value change
    if the use had configured it in any of the lower precedence
    methods. If relying on this behaviour to consume the
    global/generic timeout from the DEFAULT_TIMEOUT constant,
    please consult the documentation on plugin configuration to
    add the overlaping entries.
  - ansible-test - Test plugins that rely on containers no longer
    support reusing running containers. The previous behavior was
    an undocumented, untested feature.
  - service module will not permanently configure variables/flags
    for openbsd when doing enable/disable operation anymore, this
    module was never meant to do this type of work, just to
    manage the service state itself. A rcctl_config or similar
    module should be created and used instead.
  * Deprecated Features
  - Deprecated ini config option collections_paths, use the
    singular form collections_path instead
  - Deprecated the env var ANSIBLE_COLLECTIONS_PATHS, use the
    singular form ANSIBLE_COLLECTIONS_PATH instead
  - Old style vars plugins which use the entrypoints
    get_host_vars or get_group_vars are deprecated. The plugin
    should be updated to inherit from BaseVarsPlugin and define a
    get_vars method as the entrypoint.
  - Support for Windows Server 2012 and 2012 R2 has been removed
    as the support end of life from Microsoft is October 10th
    2023. These versions of Windows will no longer be tested in
    this Ansible release and it cannot be guaranteed that they
    will continue to work going forward.
  - STRING_CONVERSION_ACTION config option is deprecated as it is
    no longer used in the Ansible Core code base.
  - the 'smart' option for setting a connection plugin is being
    removed as it's main purpose (choosing between ssh and
    paramiko) is now irrelevant.
  - vault and unfault filters - the undocumented vaultid
    parameter is deprecated and will be removed in ansible-core
    2.20. Use vault_id instead.
  - yum_repository - deprecated parameter 'keepcache' (#78693).
  * Removed Features (previously deprecated)
  - ActionBase - remove deprecated _remote_checksum method
  - PlayIterator - remove deprecated cache_block_tasks and
    get_original_task methods
  - Remove deprecated FileLock class
  - Removed Python 3.9 as a supported version on the controller.
    Python 3.10 or newer is required.
  - Removed include which has been deprecated in Ansible 2.12.
    Use include_tasks or import_tasks instead.
  - Templar - remove deprecated shared_loader_obj parameter of
    __init__
  - fetch_url - remove auto disabling decompress when gzip is not
    available
  - get_action_args_with_defaults - remove deprecated
    redirected_names method parameter
  - ansible-test - Removed support for the remote Windows targets
    2012 and 2012-R2
  - inventory_cache - remove deprecated
    default.fact_caching_prefix ini configuration option, use
    defaults.fact_caching_prefix instead.
  - module_utils/basic.py - Removed Python 3.5 as a supported
    remote version. Python 2.7 or Python 3.6+ is now required.
  - stat - removed unused get_md5 parameter.
  * Security Fixes
  - ansible-galaxy - Prevent roles from using symlinks to
    overwrite files outside of the installation directory
    (CVE-2023-5115)
  * Known issues
  - ansible-galaxy - dies in the middle of installing a role when
    that role contains Java inner classes (files with $ in the
    file name). This is by design, to exclude temporary or backup
    files. (#81553).
  - ansible-test - The pep8 sanity test is unable to detect
    f-string spacing issues (E201, E202) on Python 3.10 and 3.11.
    They are correctly detected under Python 3.12. See
    (PyCQA/pycodestyle#1190).</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1705838401">- update to 2.16.1:
  https://github.com/ansible/ansible/blob/v2.16.1/changelogs/CHANGELOG-v2.16.rst
  * Breaking Changes / Porting Guide
  - assert - Nested templating may result in an inability for the
    conditional to be evaluated. See the porting guide for more
    information.
  * Security Fixes
  - templating - Address issues where internal templating can
    cause unsafe variables to lose their unsafe designation
    (CVE-2023-5764)
  * Bugfixes
  - Fix issue where an include_tasks handler in a role was not
    able to locate a file in tasks/ when tasks_from was used as a
    role entry point and main.yml was not present (#82241)
  - Plugin loader does not dedupe nor cache filter/test plugins
    by file basename, but full path name.
  - Restoring the ability of filters/tests can have same file
    base name but different tests/filters defined inside.
  - ansible-pull now will expand relative paths for the
  - d|--directory option is now expanded before use.
  - ansible-pull will now correctly handle become and connection
    password file options for ansible-playbook.
  - flush_handlers - properly handle a handler failure in a
    nested block when force_handlers is set
    (http://github.com/ansible/ansible/issues/81532)
  - module no_log will no longer affect top level booleans, for
    example no_log_module_parameter='a' will no longer hide
    changed=False as a 'no log value' (matches 'a').
  - role params now have higher precedence than host facts again,
    matching documentation, this had unintentionally changed in
    2.15.
  - wait_for should not handle 'non mmapable files' again.</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1705838402">- update to 2.16.2:
  https://github.com/ansible/ansible/blob/v2.16.2/changelogs/CHANGELOG-v2.16.rst
  * Bugfixes
  - unsafe data - Address an incompatibility when iterating or
    getting a single index from AnsibleUnsafeBytes
  - unsafe data - Address an incompatibility with
    AnsibleUnsafeText and AnsibleUnsafeBytes when pickling with
    protocol=0</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1706616000">- update to 2.16.3:
  https://github.com/ansible/ansible/blob/v2.16.3/changelogs/CHANGELOG-v2.16.rst
  * Security Fixes
  - ANSIBLE_NO_LOG - Address issue where ANSIBLE_NO_LOG was
    ignored (CVE-2024-0690)
  * Bugfixes
  - Run all handlers with the same listen topic, even when
    notified from another handler (#82363).
  - ansible-galaxy role import - fix using the role_name in a
    standalone role's galaxy_info metadata by disabling automatic
    removal of the ansible-role- prefix. This matches the
    behavior of the Galaxy UI which also no longer implicitly
    removes the ansible-role- prefix. Use the --role-name option
    or add a role_name to the galaxy_info dictionary in the
    role's meta/main.yml to use an alternate role name.
  - ansible-test sanity --test runtime-metadata - add
    action_plugin as a valid field for modules in the schema
    (#82562).
  - ansible-config init will now dedupe ini entries from plugins.
  - ansible-galaxy role import - exit with 1 when the import
    fails (#82175).
  - ansible-galaxy role install - normalize tarfile paths and
    symlinks using ansible.utils.path.unfrackpath and consider
    them valid as long as the realpath is in the tarfile's role
    directory (#81965).
  - delegate_to when set to an empty or undefined variable will
    now give a proper error.
  - dwim functions for lookups should be better at detectging
    role context even in abscense of tasks/main.
  - roles, code cleanup and performance optimization of
    dependencies, now cached, and public setting is now
    determined once, at role instantiation.
  - roles, the static property is now correctly set, this will
    fix issues with public and DEFAULT_PRIVATE_ROLE_VARS controls
    on exporting vars.
  - unsafe data - Enable directly using AnsibleUnsafeText with
    Python pathlib (#82414)</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1710590400">- update to 2.16.4:
  https://github.com/ansible/ansible/blob/v2.16.4/changelogs/CHANGELOG-v2.16.rst
  * Bugfixes
  - Fix loading vars_plugins in roles (#82239).
  - expect - fix argument spec error using timeout=null (#80982).
  - include_vars - fix calculating depth relative to the root and
    ensure all files are included (#80987).
  - templating - ensure syntax errors originating from a template
    being compiled into Python code object result in a failure
    (#82606)</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1711540800">- update to 2.16.5:
  https://github.com/ansible/ansible/blob/v2.16.5/changelogs/CHANGELOG-v2.16.rst
  * Minor Changes
  - ansible-test - Add a work-around for permission denied errors
    when using pytest &gt;= 8 on multi-user systems with an
    installed version of ansible-test.
  * Bugfixes
  - Fix an issue when setting a plugin name from an unsafe source
    resulted in ValueError: unmarshallable object (#82708)
  - Harden python templates for respawn and ansiballz around str
    literal quoting
  - ansible-test - The libexpat package is automatically upgraded
    during remote bootstrapping to maintain compatibility with
    newer Python packages.
  - template - Fix error when templating an unsafe string which
    corresponds to an invalid type in Python (#82600).
  - winrm - does not hang when attempting to get process output
    when stdin write failed</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1713268800">- adjust spec to new name for PyPI file name (underscore instead of
  hyphen: ansible_core-2.16.6.tar.gz)
- update to 2.16.6:
  https://github.com/ansible/ansible/blob/v2.16.6/changelogs/CHANGELOG-v2.16.rst
  * Bugfixes
  - Consolidated the list of internal static vars, centralized
    them as constant and completed from some missing entries.
  - Fix check for missing `_sub_plugin` attribute in older
    connection plugins (#82954)
  - Fixes permission for cache json file from 600 to 644
    (#82683).
  - Slight optimization to hostvars (instantiate template only
    once per host, vs per call to var).
  - allow_duplicates - fix evaluating if the current role allows
    duplicates instead of using the initial value from the
    duplicate's cached role.
  - ansible-config will now properly template defaults before
    dumping them.
  - ansible-test ansible-doc sanity test - do not remove
    underscores from plugin names in collections before calling
    ansible-doc (#82574).
  - async - Fix bug that stopped running async task in --check
    when check_mode: False was set as a task attribute - #82811
  - blockinfile - when create=true is used with a filename
    without path, the module crashed (#81638).
  - dnf - fix an issue when cached RPMs were left in the cache
    directory even when the keepcache setting was unset (#81954)
  - dnf5 - replace removed API calls
  - facts - add a generic detection for VMware in product name.
  - fetch - add error message when using dest with a trailing
    slash that becomes a local directory - #82878
  - find - do not fail on Permission errors (#82027).
  - unarchive modules now uses zipinfo options without relying on
    implementation defaults, making it more compatible with all
    OS/distributions.
  - winrm - Do not raise another exception during cleanup when a
    task is timed out - #81095</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1716465600">- update to 2.16.7:
  https://github.com/ansible/ansible/blob/v2.16.7/changelogs/CHANGELOG-v2.16.rst
  * Minor Changes
  - ansible.builtin.user - Remove user not found warning (#80267)
  * Bugfixes
  - Add a version ceiling constraint for pypsrp to avoid
    potential breaking changes in the 1.0.0 release.
  - Fix NEVRA parsing of package names that include digit(s) in
    them (#76463, #81018)
  - Fix handlers not being executed in lockstep using the linear
    strategy in some cases (#82307)
  - Give the tombstone error for include pre-fork like other
    tombstoned action/module plugins.
  - Include the task location when a module or action plugin is
    deprecated (#82450).
  - Mirror the behavior of dnf on the command line when handling
    NEVRAs with omitted epoch (#71808)
  - ansible-test - Automatically enable the PyPI proxy for the
    centos7 container to restore the ability to use pip in that
    container.
  - ansible_managed restored it's 'templatability' by ensuring
    the possible injection routes are cut off earlier in the
    process.
  - assemble - fixed missing parameter 'content' in
    `_get_diff_data` API (#82359).
  - dnf - fix an issue when installing a package by specifying a
    file it provides could result in installing a different
    package providing the same file than the package already
    installed resulting in resolution failure (#82461)
  - uri - update the documentation for follow_redirects.</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1718798400">- update to 2.16.8:
  https://github.com/ansible/ansible/blob/v2.16.8/changelogs/CHANGELOG-v2.16.rst
  * Minor Changes
  - ansible-test - Update pypi-test-container to version 3.1.0.
  * Bugfixes
  - Fix the task attribute resolved_action to show the FQCN
    instead of None when action or local_action is used in the
    playbook.
  - Fix using module_defaults with local_action/action (#81905).
  - fixed unit test test_borken_cowsay to address mock not been
    properly applied when existing unix system already have
    cowsay installed.
  - powershell - Implement more robust deletion mechanism for C#
    code compilation temporary files. This should avoid scenarios
    where the underlying temporary directory may be temporarily
    locked by antivirus tools or other IO problems. A failure to
    delete one of these temporary directories will result in a
    warning rather than an outright failure.</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1720958400">- update to 2.17.0:
  https://github.com/ansible/ansible/blob/v2.17.0/changelogs/CHANGELOG-v2.17.rst
  * Major Changes
  - urls.py - Removed support for Python 2
  * Minor Changes
  - Add dump and passno mount information to facts component
    (#80478)
  - Added MIRACLE LINUX 9.2 in RedHat OS Family.
  - Interpreter Discovery - Remove hardcoded references to
    specific python interpreters to use for certain distro
    versions, and modify logic for python3 to become the default.
  - Use Python's built-in functools.update_wrapper instead an
    inline copy from Python 3.7.
  - User can now set ansible.log to record higher verbosity than
    what is specified for display via new configuration item
    LOG_VERBOSITY.
  - DEFAULT_PRIVATE_ROLE_VARS is now overridden by explicit
    setting of public for include_roles and import_roles.
  - ansible-galaxy role|collection init - accept --extra-vars to
    supplement/override the variables ansible-galaxy injects for
    templating .j2 files in the skeleton.
  - import_role action now also gets a public option that
    controls variable exports, default depending on
    DEFAULT_PRIVATE_ROLE_VARS (if using defaults equates to
    public=True).
  - added configuration item TARGET_LOG_INFO that allows the
    user/author to add an information string to the log output on
    targets.
  - ansible-doc - treat double newlines in documentation strings
    as paragraph breaks. This is useful to create multi-paragraph
    notes in module/plugin documentation (#82465).
  - ansible-doc output has been revamped to make it more visually
    pleasing when going to a terminal, also more concise, use -v
    to show extra information.
  - ansible-galaxy - Started normalizing build directory with a
    trailing separator when building collections, internally.
    (#81619).
  - ansible-galaxy dependency resolution messages have changed
    the unexplained 'virtual' collection for the specific type
    ('scm', 'dir', etc) that is more user friendly
  - ansible-test - Add Alpine 3.19 container.
  - ansible-test - Add Alpine 3.19 to remotes.
  - ansible-test - Add Fedora 39 container.
  - ansible-test - Add Fedora 39 remote.
  - ansible-test - Add a work-around for permission denied errors
    when using pytest &gt;= 8 on multi-user systems with an
    installed version of ansible-test.
  - ansible-test - Add support for RHEL 9.3 remotes.
  - ansible-test - Added a macOS 14.3 remote VM.
  - ansible-test - Bump the nios-test-container from version
    2.0.0 to version 3.0.0.
  - ansible-test - Containers and remotes managed by ansible-test
    will have their Python EXTERNALLY-MANAGED marker (PEP668)
    removed. This provides backwards compatibility for existing
    tests running in newer environments which mark their Python
    as externally managed. A future version of ansible-test may
    change this behavior, requiring tests to be adapted to such
    environments.
  - ansible-test - Make Python 3.12 the default version used in
    the base and default containers.
  - ansible-test - Remove Alpine 3(.18) container.
  - ansible-test - Remove Alpine 3.18 from remotes.
  - ansible-test - Remove Fedora 38 remote support.
  - ansible-test - Remove Fedora 38 test container.
  - ansible-test - Remove rhel/9.2 test remote
  - ansible-test - Remove the FreeBSD 13.2 remote.
  - ansible-test - Removed fallback to virtualenv when -m venv is
    non-functional.
  - ansible-test - Removed test remotes: macos/13.2
  - ansible-test - Removed the no-basestring sanity test. The
    test is no longer necessary now that Python 3 is required.
  - ansible-test - Removed the no-dict-iteritems,
    no-dict-iterkeys and no-dict-itervalues sanity tests. The
    tests are no longer necessary since Python 3 is required.
  - ansible-test - Removed the no-main-display sanity test. The
    unwanted pattern is unlikely to occur, since the test has
    existed since Ansible 2.8.
  - ansible-test - Removed the no-unicode-literals sanity test.
    The test is unnecessary now that Python 3 is required and the
    unicode_literals feature has no effect.
  - ansible-test - Special handling for installation of
    cryptography has been removed, as it is no longer necessary.
  - ansible-test - The shellcheck sanity test no longer disables
    the SC2164 check. In most cases, seeing this error means the
    script is missing set -e.
  - ansible-test - The unidiomatic-typecheck rule has been
    enabled in the pylint sanity test.
  - ansible-test - The unidiomatic-typecheck rule has been
    removed from the validate-modules sanity test.
  - ansible-test - Update the base and default containers to use
    Ubuntu 22.04 for the base image. This also updates PowerShell
    to version 7.4.0 with .NET 8.0.0 and ShellCheck to version
    0.8.0.
  - ansible-test - Updated the CloudStack test container to
    version 1.7.0.
  - ansible-test - Updated the distro test containers to version
    6.3.0 to include coverage 7.3.2 for Python 3.8+. The alpine3
    container is now based on 3.18 instead of 3.17 and includes
    Python 3.11 instead of Python 3.10.
  - ansible-test - Updated the distro test containers to version
    7.1.0.
  - ansible-test - When ansible-test installs requirements, it
    now instructs pip to allow installs on externally managed
    environments as defined by PEP 668. This only occurs in
    ephemeral environments managed by ansible-test, such as
    containers, or when the --requirements option is used.
  - ansible-test - When invoking sleep in containers during
    container setup, the env command is used to avoid invoking
    the shell builtin, if present.
  - ansible-test - document block name now included in error
    message for YAML parsing errors (#82353).
  - ansible-test - sanity test allows EXAMPLES to be
    multi-document YAML (#82353).
  - ansible-test now has FreeBSD 13.3 and 14.0 support
  - ansible.builtin.user - Remove user not found warning (#80267)
  - apt_repository.py - use api.launchpad.net endpoint instead of
    launchpad.net/api
  - async tasks can now also support check mode at the same time.
  - async_status now supports check mode.
  - constructed inventory plugin - Adding a note that only
    group_vars of explicit groups are loaded (#82580).
  - csvfile - add a keycol parameter to specify in which column
    to search.
  - dnf - add the best option
  - dnf5 - add the best option
  - filter plugin - Add the count and mandatory_count parameters
    in the regex_replace filter
  - find - add a encoding parameter to specify which encoding of
    the files to be searched.
  - git module - gpg_allowlist name was added in 2.17 and we will
    eventually deprecate the gpg_whitelist alias.
  - import_role - allow subdirectories with `_from` options for
    parity with include_role (#82584).
  - module argument spec - Allow module authors to include
    arbitrary additional context in the argument spec, by making
    use of a new top level key called context. This key should be
    a dict type. This allows for users to customize what they
    place in the argument spec, without having to ignore sanity
    tests that validate the schema.
  - modules - Add the ability for an action plugin to call
    self._execute_module(*, ignore_unknown_opts=True) to execute
    a module with options that may not be supported for the
    version being called. This tells the module basic wrapper to
    ignore validating the options provided match the arg spec.
  - package action now has a configuration that overrides the
    detected package manager, it is still overridden itself by
    the use option.
  - py3compat - Remove ansible.utils.py3compat as it is no longer
    necessary
  - removed the unused argument create_new_password from
    CLI.build_vault_ids (#82066).
  - urls - Add support for TLS 1.3 post handshake certificate
    authentication - #81782
  - urls - reduce complexity of Request.open
  - user - accept yescrypt hash as user password
  - validate-modules tests now correctly handles choices in
    dictionary format.
  * Breaking Changes / Porting Guide
  - assert - Nested templating may result in an inability for the
    conditional to be evaluated. See the porting guide for more
    information.
  * Deprecated Features
  - Old style vars plugins which use the entrypoints
    get_host_vars or get_group_vars are deprecated. The plugin
    should be updated to inherit from BaseVarsPlugin and define a
    get_vars method as the entrypoint.
  - The 'required' parameter in
    'ansible.module_utils.common.process.get_bin_path' API is
    deprecated (#82464).
  - module_utils - importing the following convenience helpers
    from ansible.module_utils.basic has been deprecated:
    get_exception, literal_eval, _literal_eval, datetime, signal,
    types, chain, repeat, PY2, PY3, b, binary_type,
    integer_types, iteritems, string_types, test_type, map and
    shlex_quote.
  - ansible-doc - role entrypoint attributes are deprecated and
    eventually will no longer be shown in ansible-doc from
    ansible-core 2.20 on (#82639, #82678).
  - paramiko connection plugin, configuration items in the global
    scope are being deprecated and will be removed in favor or
    the existing same options in the plugin itself. Users should
    not need to change anything (how to configure them are the
    same) but plugin authors using the global constants should
    move to using the plugin's get_option().
  * Removed Features (previously deprecated)
  - Remove deprecated APIs from ansible-docs (#81716).
  - Remove deprecated JINJA2_NATIVE_WARNING environment variable
    (#81714)
  - Remove deprecated scp_if_ssh from ssh connection plugin
    (#81715).
  - Remove deprecated crypt support from ansible.utils.encrypt
    (#81717)
  - Removed Python 2.7 and Python 3.6 as a supported remote
    version. Python 3.7+ is now required for target execution.
  - With the removal of Python 2 support, the yum module and yum
    action plugin are removed and redirected to dnf.
  * Security Fixes
  - ANSIBLE_NO_LOG - Address issue where ANSIBLE_NO_LOG was
    ignored (CVE-2024-0690)
  - ansible-galaxy - Prevent roles from using symlinks to
    overwrite files outside of the installation directory
    (CVE-2023-5115)
  - templating - Address issues where internal templating can
    cause unsafe variables to lose their unsafe designation
    (CVE-2023-5764)
  * Bugfixes
  - Add a version ceiling constraint for pypsrp to avoid
    potential breaking changes in the 1.0.0 release.
  - All core lookups now use set_option(s) even when doing their
    own custom parsing. This ensures that the options are always
    the proper type.
  - Allow for searching handler subdir for included task via
    include_role (#81722)
  - AnsibleModule.atomic_move - fix preserving extended ACLs of
    the destination when it exists (#72929).
  - Cache host_group_vars after instantiating it once and limit
    the amount of repetitive work it needs to do every time it
    runs.
  - Call PluginLoader.all() once for vars plugins, and load vars
    plugins that run automatically or are enabled specifically by
    name subsequently.
  - Consolidate systemd detection logic into one place (#80975).
  - Consolidated the list of internal static vars, centralized
    them as constant and completed from some missing entries.
  - Do not print undefined error message twice (#78703).
  - Enable file cache for vaulted files during vars lookup to fix
    a strong performance penalty in huge and complex playbboks.
  - Fix NEVRA parsing of package names that include digit(s) in
    them (#76463, #81018)
  - Fix force_handlers not working with any_errors_fatal (#36308)
  - Fix run_once being incorrectly interpreted on handlers
    (#81666)
  - Fix an issue when setting a plugin name from an unsafe source
    resulted in ValueError: unmarshallable object (#82708)
  - Fix check for missing _sub_plugin attribute in older
    connection plugins (#82954)
  - Fix condition for unquoting configuration strings from ini
    files (#82387).
  - Fix for when any_errors_fatal was ignored if error occurred
    in a block with always (#31543)
  - Fix handlers not being executed in lockstep using the linear
    strategy in some cases (#82307)
  - Fix handling missing urls in
    ansible.module_utils.urls.fetch_file for Python 3.
  - Fix issue where an include_tasks handler in a role was not
    able to locate a file in tasks/ when tasks_from was used as a
    role entry point and main.yml was not present (#82241)
  - Fix issues when tasks withing nested blocks wouldn't run when
    force_handlers is set (#81533)
  - Fix loading vars_plugins in roles (#82239).
  - Fix notifying role handlers by listen keyword topics with the
    "role_name : " prefix (#82849).
  - Fix setting proper locale for git executable when running on
    non english systems, ensuring git output can always be
    parsed.
  - Fix tasks in always section not being executed for nested
    blocks with any_errors_fatal (#73246)
  - Fixes permission for cache json file from 600 to 644
    (#82683).
  - Give the tombstone error for include pre-fork like other
    tombstoned action/module plugins.
  - Harden python templates for respawn and ansiballz around str
    literal quoting
  - Include the task location when a module or action plugin is
    deprecated (#82450).
  - Interpreter discovery - Add Amzn to OS_FAMILY_MAP for correct
    family fallback for interpreter discovery (#80882).
  - Mirror the behavior of dnf on the command line when handling
    NEVRAs with omitted epoch (#71808)
  - Plugin loader does not dedupe nor cache filter/test plugins
    by file basename, but full path name.
  - Properly template tags in parent blocks (#81053)
  - Provide additional information about the alternative plugin
    in the deprecation message (#80561).
  - Remove the galaxy_info field platforms from the role
    templates (#82453).
  - Restoring the ability of filters/tests can have same file
    base name but different tests/filters defined inside.
  - Reword the error message when the module fails to parse
    parameters in JSON format (#81188).
  - Reword warning if the reserved keyword _ansible_ used as a
    module parameter (#82514).
  - Run all handlers with the same listen topic, even when
    notified from another handler (#82363).
  - Slight optimization to hostvars (instantiate template only
    once per host, vs per call to var).
  - Stopped misleadingly advertising async mode support in the
    reboot module (#71517).
  - ansible-galaxy role import - fix using the role_name in a
    standalone role's galaxy_info metadata by disabling automatic
    removal of the ansible-role- prefix. This matches the
    behavior of the Galaxy UI which also no longer implicitly
    removes the ansible-role- prefix. Use the --role-name option
    or add a role_name to the galaxy_info dictionary in the
    role's meta/main.yml to use an alternate role name.
  - ansible-test sanity --test runtime-metadata - add
    action_plugin as a valid field for modules in the schema
    (#82562).
  - ansible.module_utils.service - ensure binary data
    transmission in daemonize()
  - any_errors_fatal should fail all hosts and rescue all of them
    when a rescue section is specified (#80981)
  - include_role - properly execute v2_playbook_on_include and
    v2_runner_on_failed callbacks as well as increase ok and
    failed stats in the play recap, when appropriate (#77336)
  - allow_duplicates - fix evaluating if the current role allows
    duplicates instead of using the initial value from the
    duplicate's cached role.
  - ansible-config init will now dedupe ini entries from plugins.
  - ansible-config will now properly template defaults before
    dumping them.
  - ansible-doc - fixed "inicates" typo in output
  - ansible-doc - format top-level descriptions with multiple
    paragraphs as multiple paragraphs, instead of concatenating
    them (#83155).
  - ansible-galaxy - Deprecate use of the Galaxy v2 API (#81781)
  - ansible-galaxy - Provide a better error message when using a
    requirements file with an invalid format - #81901
  - ansible-galaxy - Resolve issue with the dataclass used for
    galaxy.yml manifest caused by using future annotations
  - ansible-galaxy - ensure path to ansible collection when
    installing or downloading doesn't have a backslash (#79705).
  - ansible-galaxy - started allowing the use of pre-releases for
    collections that do not have any stable versions published.
    (#81606)
  - ansible-galaxy - started allowing the use of pre-releases for
    dependencies on any level of the dependency tree that
    specifically demand exact pre-release versions of collections
    and not version ranges. (#81606)
  - ansible-galaxy error on dependency resolution will not error
    itself due to 'virtual' collections not having a
    name/namespace.
  - ansible-galaxy info - fix reporting no role found when
    lookup_role_by_name returns None.
  - ansible-galaxy role import - exit with 1 when the import
    fails (#82175).
  - ansible-galaxy role install - fix installing roles from
    Galaxy that have version None (#81832).
  - ansible-galaxy role install - fix symlinks (#82702, #81965).
  - ansible-galaxy role install - normalize tarfile paths and
    symlinks using ansible.utils.path.unfrackpath and consider
    them valid as long as the realpath is in the tarfile's role
    directory (#81965).
  - ansible-inventory - index available_hosts for major
    performance boost when dumping large inventories
  - ansible-pull now will expand relative paths for the
  - d|--directory option is now expanded before use.
  - ansible-pull will now correctly handle become and connection
    password file options for ansible-playbook.
  - ansible-test - Add a pylint plugin to work around a known
    issue on Python 3.12.
  - ansible-test - Explicitly supply ControlPath=none when
    setting up port forwarding over SSH to address the scenario
    where the local ssh configuration uses ControlPath for all
    hosts, and would prevent ports to be forwarded after the
    initial connection to the host.
  - ansible-test - Fix parsing of cgroup entries which contain a
    : in the path (#81977).
  - ansible-test - Include missing pylint requirements for Python
    3.10.
  - ansible-test - Properly detect docker host when using ssh://
    protocol for connecting to the docker daemon.
  - ansible-test - The libexpat package is automatically upgraded
    during remote bootstrapping to maintain compatibility with
    newer Python packages.
  - ansible-test - The validate-modules sanity test no longer
    attempts to process files with unrecognized extensions as
    Python (resolves #82604).
  - ansible-test - Update pylint to version 3.0.1.
  - ansible-test ansible-doc sanity test - do not remove
    underscores from plugin names in collections before calling
    ansible-doc (#82574).
  - ansible-test validate-modules sanity test - do not treat
    leading underscores for plugin names in collections as an
    attempted deprecation (#82575).
  - ansible-test — Python 3.8–3.12 will use coverage v7.3.2.
  - ansible.builtin.apt - calling clean = true does not properly
    clean certain cache files such as /var/cache/apt/pkgcache.bin
    and /var/cache/apt/pkgcache.bin (#82611)
  - ansible.builtin.uri - the module was ignoring the force
    parameter and always requesting a cached copy (via the
    If-Modified-Since header) when downloading to an existing
    local file. Disable caching when force is true, as documented
    (#82166).
  - ansible_managed restored it's 'templatability' by ensuring
    the possible injection routes are cut off earlier in the
    process.
  - apt - honor install_recommends and dpkg_options while
    installing python3-apt library (#40608).
  - apt - install recommended packages when installing package
    via deb file (#29726).
  - apt_repository - do not modify repo files if the file is a
    symlink (#49809).
  - apt_repository - update PPA URL to point to https URL
    (#82463).
  - assemble - fixed missing parameter 'content' in
    `_get_diff_data` API (#82359).
  - async - Fix bug that stopped running async task in --check
    when check_mode: False was set as a task attribute - #82811
  - blockinfile - when create=true is used with a filename
    without path, the module crashed (#81638).
  - check if there are attributes to set before attempting to set
    them (#76727)
  - copy action now also generates temprary files as hidden ('.'
    prefixed) to avoid accidental pickup by running services that
    glob by extension.
  - copy action now ensures that tempfiles use the same suffix as
    destination, to allow for validate to work with utilities
    that check extensions.
  - deb822_repository - handle idempotency if the order of
    parameters is changed (#82454).
  - debconf - allow user to specify a list for value when vtype
    is multiselect (#81345).
  - delegate_to when set to an empty or undefined variable will
    now give a proper error.
  - distribution.py - Recognize ALP-Dolomite as part of the SUSE
    OS family in Ansible, fixing its previous misidentification
    (#82496).
  - distro - bump bundled distro version from 1.6.0 to 1.8.0
    (#81713).
  - dnf - fix an issue when cached RPMs were left in the cache
    directory even when the keepcache setting was unset (#81954)
  - dnf - fix an issue when installing a package by specifying a
    file it provides could result in installing a different
    package providing the same file than the package already
    installed resulting in resolution failure (#82461)
  - dnf - properly set gpg check options on enabled repositories
    according to the disable_gpg_check option (#80110)
  - dnf - properly skip unavailable packages when skip_broken is
    enabled (#80590)
  - dnf - the nobest option only overrides the distribution
    default when explicitly used, and is used for all supported
    operations (#82616)
  - dnf5 - replace removed API calls
  - dnf5 - respect allow_downgrade when installing packages
    directly from rpm files
  - dnf5 - the nobest option only overrides the distribution
    default when used
  - dwim functions for lookups should be better at detectging
    role context even in abscense of tasks/main.
  - ensure we have logger before we log when we have increased
    verbosity.
  - expect - fix argument spec error using timeout=null (#80982).
  - fact gathering on linux now handles thread count by using
    rounding vs dropping decimals, it should give slightly more
    accurate numbers.
  - facts - add a generic detection for VMware in product name.
  - facts - detect VMware ESXi 8.0 virtualization by product name
    VMware20,1
  - fetch - Do not calculate the file size for Windows fetch
    targets to improve performance.
  - fetch - add error message when using dest with a trailing
    slash that becomes a local directory - #82878
  - find - do not fail on Permission errors (#82027).
  - first_found lookup now always returns a full (absolute) and
    normalized path
  - first_found lookup now always takes into account k=v options
  - flush_handlers - properly handle a handler failure in a
    nested block when force_handlers is set
    (http://github.com/ansible/ansible/issues/81532)
  - galaxy - skip verification for unwanted Python compiled
    bytecode files (#81628).
  - handle exception raised while validating with elements='int'
    and value is not within choices (#82776).
  - include_tasks - include ansible_loop_var and
    ansible_index_var in a loop (#82655).
  - include_vars - fix calculating depth relative to the root and
    ensure all files are included (#80987).
  - interpreter_discovery - handle AnsibleError exception raised
    while interpreter discovery (#78264).
  - iptables - add option choices 'src,src' and 'dst,dst' in
    match_set_flags (#81281).
  - iptables - set jump to DSCP when set_dscp_mark or
    set_dscp_mark_class is set (#77077).
  - known_hosts - Fix issue with @cert-authority entries in
    known_hosts incorrectly being removed.
  - module no_log will no longer affect top level booleans, for
    example no_log_module_parameter='a' will no longer hide
    changed=False as a 'no log value' (matches 'a').
  - moved assemble, raw, copy, fetch, reboot, script and
    wait_for_connection to query task instead of play_context
    ensuring they get the lastest and most correct data.
  - reboot action now handles connections with 'timeout' vs only
    'connection_timeout' settings.
  - role params now have higher precedence than host facts again,
    matching documentation, this had unintentionally changed in
    2.15.
  - roles, code cleanup and performance optimization of
    dependencies, now cached, and public setting is now
    determined once, at role instantiation.
  - roles, the static property is now correctly set, this will
    fix issues with public and DEFAULT_PRIVATE_ROLE_VARS controls
    on exporting vars.
  - set_option method for plugins to update config now properly
    passes through type casting and validation.
  - ssh - add tests for the SSH connection plugin.
  - support url-encoded credentials in URLs like
    http://x%40:%40@example.com (#82552)
  - syslog - Handle ValueError exception raised when sending Null
    Characters to syslog with Python 3.12.
  - systemd_services - update documentation regarding
    required_one_of and required_by parameters (#82914).
  - template - Fix error when templating an unsafe string which
    corresponds to an invalid type in Python (#82600).
  - template action will also inherit the behavior from copy (as
    it uses it internally).
  - templating - ensure syntax errors originating from a template
    being compiled into Python code object result in a failure
    (#82606)
  - unarchive - add support for 8 character permission strings
    for zip archives (#81705).
  - unarchive - force unarchive if symlink target changes
    (#30420).
  - unarchive modules now uses zipinfo options without relying on
    implementation defaults, making it more compatible with all
    OS/distributions.
  - unsafe data - Address an incompatibility when iterating or
    getting a single index from AnsibleUnsafeBytes
  - unsafe data - Address an incompatibility with
    AnsibleUnsafeText and AnsibleUnsafeBytes when pickling with
    protocol=0
  - unsafe data - Enable directly using AnsibleUnsafeText with
    Python pathlib (#82414)
  - uri - update the documentation for follow_redirects.
  - uri action plugin now skipped during check mode (not
    supported) instead of even trying to execute the module,
    which already skipped, this does not really change the
    result, but returns much faster.
  - vars - handle exception while combining VarsWithSources and
    dict (#81659).
  - wait_for should not handle 'non mmapable files' again.
  - winrm - Better handle send input failures when communicating
    with hosts under load
  - winrm - Do not raise another exception during cleanup when a
    task is timed out - #81095
  - winrm - does not hang when attempting to get process output
    when stdin write failed</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1720958401">- update to 2.17.1:
  https://github.com/ansible/ansible/blob/v2.17.1/changelogs/CHANGELOG-v2.17.rst
  * Minor Changes
  - ansible-test - Update pypi-test-container to version 3.1.0.
  * Bugfixes
  - Fix rapid memory usage growth when notifying handlers using
    the listen keyword (#83392)
  - Fix the task attribute resolved_action to show the FQCN
    instead of None when action or local_action is used in the
    playbook.
  - Fix using module_defaults with local_action/action (#81905).
  - fixed unit test test_borken_cowsay to address mock not been
    properly applied when existing unix system already have
    cowsay installed.
  - powershell - Implement more robust deletion mechanism for C#
    code compilation temporary files. This should avoid scenarios
    where the underlying temporary directory may be temporarily
    locked by antivirus tools or other IO problems. A failure to
    delete one of these temporary directories will result in a
    warning rather than an outright failure.
  - shell plugin - properly quote all needed components of shell
    commands (#82535)</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1721131200">- update to 2.17.2:
  https://github.com/ansible/ansible/blob/v2.17.2/changelogs/CHANGELOG-v2.17.rst
  * Bugfixes
  - Fix a traceback when an environment variable contains certain
    special characters (#83498)
  - dnf - reverted incomplete fix from 2.17.2rc1 (#83504)
  - dnf, dnf5 - fix for installing a set of packages by
    specifying them using a wildcard character (#83373)
  - linear strategy now provides a properly templated task name
    to the v2_runner_on_started callback event.
  - package_facts - ignore warnings sent by apk on stderr
    (#83501).
  - replace - Updated before/after example (#83390).
  - templating hostvars under native jinja will not cause
    serialization errors anymore.</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1723550400">- update to 2.17.3:
  https://github.com/ansible/ansible/blob/v2.17.3/changelogs/CHANGELOG-v2.17.rst
  * Minor Changes
  - ansible-test - Improve the error message shown when an
    unknown --remote or --docker option is given.
  - ansible-test - Removed the vyos/1.1.8 network remote as it is
    no longer functional.
  * Bugfixes
  - Warning now includes filename and line number of variable
    when specifying a list of dictionaries for vars (#82528).
  - config, restored the ability to set module compression via a
    variable
  - debconf - fix normalization of value representation for
    boolean vtypes in new packages (#83594)
  - linear strategy: fix handlers included via include_tasks
    handler to be executed in lockstep (#83019)</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1726056000">- update to 2.17.4:
  https://github.com/ansible/ansible/blob/v2.17.4/changelogs/CHANGELOG-v2.17.rst
  * Bugfixes
  - Fix SemanticVersion.parse() to store the version string so
    that __repr__ reports it instead of None (#83831).
  - Fix an issue where registered variable was not available for
    templating in loop_control.label on skipped looped tasks
    (#83619)
  - Fix for meta tasks breaking host/fork affinity with
    host_pinned strategy (#83294)
  - Fix using the current task's directory for looking up
    relative paths within roles (#82695).
  - atomic_move - fix using the setgid bit on the parent
    directory when creating files (#46742, #67177).
  - connection plugins using the 'extras' option feature would
    need variables to match the plugin's loaded name, sometimes
    requiring fqcn, which is not the same as the
    documented/declared/expected variables. Now we fall back to
    the 'basename' of the fqcn, but plugin authors can still set
    the expected value directly.
  - csvfile lookup - give an error when no search term is
    provided using modern config syntax (#83689).
  - include_tasks - Display location when attempting to load a
    task list where include_* did not specify any value - #83874
  - powershell - Improve CLIXML decoding to decode all control
    characters and unicode characters that are encoded as
    surrogate pairs.
  - psrp - Fix bug when attempting to fetch a file path that
    contains special glob characters like []
  - runtime-metadata sanity test - do not crash on deprecations
    if galaxy.yml contains an empty version field (#83831).
  - ssh - Fix bug when attempting to fetch a file path with
    characters that should be quoted when using the piped
    transfer method</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1728648000">- update to 2.17.5:
  https://github.com/ansible/ansible/blob/v2.17.5/changelogs/CHANGELOG-v2.17.rst
  * Bugfixes
  - Add descriptions for ansible-galaxy install --help` and
    ``ansible-galaxy role|collection install --help.
  - Errors now preserve stacked error messages even when YAML is
    involved.
  - ansible-galaxy install --help - Fix the usage text and
    document that the requirements file passed to -r can include
    collections and roles.
  - copy - mtime/atime not updated. Fix now update
    mtime/atime(#83013)
  - delay keyword is now a float, matching the underlying 'time'
    API and user expectations.
  - dnf5 - re-introduce the state: installed alias to state:
    present (#83960)
  - module_utils atomic_move (used by most file based modules),
    now correctly handles permission copy and setting mtime
    correctly across all paths</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1731585600">- update to 2.17.6:
  https://github.com/ansible/ansible/blob/v2.17.6/changelogs/CHANGELOG-v2.17.rst
  * Minor Changes
  - ansible-test - Improve container runtime probe error
    handling. When unexpected probe output is encountered, an
    error with more useful debugging information is provided.
  * Security Fixes
  - include_vars action - Ensure that result masking is correctly
    requested when vault-encrypted files are read.
    (CVE-2024-8775)
  - task result processing - Ensure that action-sourced result
    masking (_ansible_no_log=True) is preserved. (CVE-2024-8775)
  - user action won't allow ssh-keygen, chown and chmod to run on
    existing ssh public key file, avoiding traversal on existing
    symlinks (CVE-2024-9902).
  * Bugfixes
  - Fix disabling SSL verification when installing collections
    and roles from git repositories. If --ignore-certs isn't
    provided, the value for the GALAXY_IGNORE_CERTS configuration
    option will be used (#83326).
  - Improve performance on large inventories by reducing the
    number of implicit meta tasks.
  - Use the requested error message in the
    ansible.module_utils.facts.timeout timeout function instead
    of hardcoding one.
  - ansible-test - Enable the sys.unraisablehook work-around for
    the pylint sanity test on Python 3.11. Previously the
    work-around was only enabled for Python 3.12 and later.
    However, the same issue has been discovered on Python 3.11.
  - debconf - set empty password values (#83214).
  - facts - skip if distribution file path is directory, instead
    of raising error (#84006).
  - user action will now require O(force) to overwrite the public
    part of an ssh key when generating ssh keys, as was already
    the case for the private part.
  - user module now avoids changing ownership of files symlinked
    in provided home dir skeleton</changelog>
  <changelog author="Harshvardhan Sharma &lt;harshvardhan.sharma@suse.com&gt;" date="1732190400">- Added necessary test dependencies: pytest-xdist, pytest-mock,
  pytz, passlib, git-core, and openssh to ensure proper test
  execution.
- Introduced the `ansible_python_version` variable and updated the
  test command.</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1732276800">- Backport patch to relax resolvelib dependency:
  771f7ad29ca4d259761eaa88673c2e32f6412bbe.patch</changelog>
</package>
<package pkgid="ad6e562d78c2c62df795a4cd7cc60605222f6b4c09d39424f8bbe8f6bfed78734a9e0449cff8134b87074b30a90eef6f6ac9e3866a54f9a764f0b540a8de41c4" name="ansible-documentation" arch="noarch">
  <version epoch="0" ver="2.17.6" rel="1.1"/>
  <changelog author="Johannes Kastl &lt;kastl@b1-systems.de&gt;" date="1699358400">- update to 2.15.6:
  This tag contains a snapshot of the ansible-documentation
  stable-2.15 branch at the time of the ansible-core 2.15.6
  release.</changelog>
  <changelog author="kastl@b1-systems.de" date="1699358401">- Update to version 2.15.6:
  * ci: refresh dev dependencies (#770)
  * Fixed equalto test filter (#758) (#759)
  * ci: refresh dev dependencies (#741)
  * nox and README: log PIP_CONSTRAINT value and add Dependency file docs (#730) (#737)
  * [stable-2.15] installation_guide/intro_configuration.rst: improve readability
  * Proof reading (#616) (#729)
  * [PR #668/8d847046 backport] Integrate docs checkers into the noxfile (#727)
  * ci: refresh dev dependencies (#721) (#722)
  * Update JSON queries examples (#690) (#704)
  * communication.rst: other forum-related tweaks (#669) (#698)
  * documentation_contributions: use tests/checkers.py (#706) (#712)
  * Update slicing in inventory pattern (#541) (#693)
  * [stable-2.15] Unify the Sphinx's `conf.py` files (#431) (#627)
  * Update shebang sanity test docs to match test (#677) (#687)
  * Update example using special variables in resuce section of blocks (#671) (#680)
  * ci: refresh dev dependencies (#682)
  * ci: refresh dev dependencies (#672)
  * Use a working exponential backoff example (#607) (#660)
  * Rename tests/sanity.py to tests/checkers.py (#563) (#663)
  * Added delegation info to special vars (#629) (#659)
  * Add forum info to collection maintainer guidelines (#549) (#655)
  * Fix#129 (#201) (#613)
  * Update PowerShell Codeblock (#489) (#603)
  * Changed it's to it is in all .rst files (#491)
  * Clarify that two releases will happen on two separate days, and clarify which one will happen first (#39)
  * pr_labeler: stop adding needs_triage labels to new PRs (#643) (#645)
  * ci: refresh dev dependencies (#638) (#641)
  * [stable-2.15] Add RST spellcheck (#524) (#623)
  * corrected cli for help (#599) (#600)
  * communication.rst: Add a link to the forum group list (#571) (#594)
  * developing_collections_structure.rs: Fix link formatting (#570) (#591)
  * Testing collections guide: add GHA info and link to sample matrix (#569) (#588)
  * issue #560 fix broken url in script (#568) (#585)
  * Document how to bump dependencies (#446) (#614)
  * ci: refresh dev dependencies (#608) (#609)
  * Merge pull request #27 from oraNod/issue-26/add-intro-getting-started (#526)
  * Spellingfix (#494) (#583)
  * communication.rst: fix link (#495) (#580)
  * More info on delegation behaviours (#527) (#582)
  * Replace i.e with that is  (#490) (#565)
  * Fix for : Replace all occurrences of via to with #459 (#479) (#578)
  * issue-457: Update all occurrences of Ansible core to Ansible Core (#471) (#575)
  * communication.rst: Add Release Management WG info (#438) (#574)
  * Update collections_installing.rst (#412) (#573)
  * communication.rst: add forum info (#392) (#572)
  * Integrate `docs/bin/*.py` files into the nox config (#529) (#562)
  * Add Ansible community 8.5.0 porting guide (#556) (#557)
  * fix molecule link in contributor path page (#538) (#551)
  * Add Arch installation instructions in the installation_distros documentation (#522) (#545)
  * ci: refresh dev dependencies (#548)</changelog>
  <changelog author="kastl@b1-systems.de" date="1701777600">- Update to version 2.15.7:
  * nox pip-compile: allow passing --no-upgrade flag (#883) (#919)
  * add nox make session and revamp contribution docs (#707) (#916)
  * installation_guide/intro: update seealso with respect to
    communication (#869) (#909)
  * Update links in plugin documentation (#859) (#906)
  * installation_distros.rst: fix RST hyperlink syntax (#857)
    (#903)
  * Updated loop docs (#838) (#899)
  * intro_installation: add EE info (#870) (#893)
  * Fix Edit on GitHub for templated pages, remove superfluous
    template, fix broken link (#865) (#891)
  * developing_collections_structure.rst: Add EE collection-level
    metadata link to meta directory subsection (#855) (#889)
  * Add the mission statement to the community guide (#854) (#888)
  * update python versions in installation guide (#836) (#886)
  * add ansible-galaxy to command cheatsheet (#826) (#884)
  * Refs #340: Swap old 'CLA' for the DCO (#598) (#874)
  * ci: refresh dev dependencies (#839) (#861)
  * Add porting guide for CVE-2023-5764 (#867)
  * Update the information on RouterOS network connections. (#841)
    (#864)
  * update backport instructions to match 2.16 (#799) (#847)
  * Fix delegate_to details about inheriting vars from 'all' (#825)
    (#834)
  * communication.rst: Make WG a top-level section (#750) (#806)
  * EOL 2.13 in release table (#798) (#808)
  * ci: refresh dev dependencies (#813) (#814)
  * Update developing_program_flow_modules.rst (#819) (#820)
  * update galaxy urls for networking docs' (#822) (#823)
  * communication.rst: remove inactive security WG (#828) (#830)
  * communication.rst: update MySQL WG to point to the forum group
    page (#795) (#803)
  * communication.rst: update Docs WG reference (#785) (#800)
  * Update the Note for certificate authentication with a TLS 1.3
    connection in windows_winrm.rst  (#757) (#780)
  * [2.15] Add Ansible community 8.6.0 porting guide (#788) (#792)
  * update versioning for 2.16 (#755) (#779)
  * intro_installation: pass --include-injected in pipx upgrade
    example (#745) (#767)
  * Replaced the AWX mailing list with the AWX Forum page. (#769)
    (#776)</changelog>
  <changelog author="kastl@b1-systems.de" date="1702382400">- Update to version 2.15.8:
  * Retroactivelly add a 2.15 porting guide note about handlers
    (#882)
  * bump approved antsibull-docs version to 2.6.0
  * documentation_contributions: show how to set up a venv and
    remove outdated notes (#911) (#949)
  * Update windows_winrm.rst (#910) (#952)
  * handlers notify example indentation fix (#915) (#948)
  * Merge pull request #937 from Andersson007/add_pr_link (#945)
  * Add Ansible community 8.7.0 porting guide (#938)
  * Add porting guide for CVE-2023-5764 (#933)
  * ci: refresh dev dependencies (#914)
  * README: consistently use `nox -s` over `nox -e` (#923)</changelog>
  <changelog author="opensuse_buildservice@ojkastl.de" date="1705838400">- Update to version 2.16.0:
  This tag contains a snapshot of the ansible-documentation
  stable-2.16 branch at the time of the ansible-core 2.16.0
  release.</changelog>
  <changelog author="opensuse_buildservice@ojkastl.de" date="1705838401">- Update to version 2.16.1:
  * nox pip-compile: allow passing --no-upgrade flag (#883) (#920)
  * add nox make session and revamp contribution docs (#707) (#917)
  * installation_guide/intro: update seealso with respect to
    communication (#869) (#908)
  * Update links in plugin documentation (#859) (#907)
  * installation_distros.rst: fix RST hyperlink syntax (#857)
    (#904)
  * developing_collections_path.rst: fix formatting (#842) (#901)
  * Add the mission statement to the community guide (#854) (#902)
  * Fix Edit on GitHub for templated pages, remove superfluous
    template, fix broken link (#865) (#892)
  * add ansible-galaxy to command cheatsheet (#826) (#898)
  * Fix delegate_to details about inheriting vars from 'all' (#825)
    (#897)
  * Update developing_program_flow_modules.rst (#819) (#895)
  * intro_installation: add EE info (#870) (#894)
  * developing_collections_structure.rst: Add EE collection-level
    metadata link to meta directory subsection (#855) (#890)
  * update python versions in installation guide (#836) (#887)
  * add support for Ansible 9 intersphinx links (#878) (#879)
  * Refs #340: Swap old 'CLA' for the DCO (#598) (#875)
  * Add porting guide for CVE-2023-5764 (#866)
  * Update the information on RouterOS network connections. (#841)
    (#863)
  * update galaxy urls for networking docs' (#822) (#862)
  * ci: refresh dev dependencies (#839)
  * ci: refresh dev dependencies (#813)
  * sphinx: remove usage of deprecated notfound-page options (#827)
  * update logic to make it easier to patch for core vs ansible
    release (#849) (#850)
  * downgrade sphinx to 7.1.2 to fix 404 pages
  * add Ansible 9 changelogs (#831) (#848)
  * update backport instructions to match 2.16 (#799) (#846)
  * Set release version to 9 (#832) (#845)
  * Add Ansible community 9.0.0 porting guide (#843) (#844)
  * developing_collections.rst: add collection creator path (#775)
    (#835)
  * EOL 2.13 in release table (#798) (#810)
  * communication.rst: remove inactive security WG (#828) (#833)
  * communication.rst: update Docs WG reference (#785) (#802)
  * communication.rst: update MySQL WG to point to the forum group
    page (#795) (#805)
  * Update the Note for certificate authentication with a TLS 1.3
    connection in windows_winrm.rst  (#757) (#781)
  * [PR #788/2a485247 backport][stable-2.16] Add Ansible community
    8.6.0 porting guide (#791)
  * Porting guide for 9.0.0b1. (#787) (#790)
  * update versioning for 2.16 (#755) (#783)
  * communication.rst: Make WG a top-level section (#750) (#764)
  * intro_installation: pass --include-injected in pipx upgrade
    example (#745) (#768)
  * Replaced the AWX mailing list with the AWX Forum page. (#769)
    (#777)
  * set release version to 2.16 (#756)</changelog>
  <changelog author="opensuse_buildservice@ojkastl.de" date="1705838402">- Update to version 2.16.2:
  * Retroactivelly add a 2.15 porting guide note about handlers
    (#882)
  * bump approved antsibull-docs version to 2.6.0
  * Update windows_winrm.rst (#910) (#951)
  * documentation_contributions: show how to set up a venv and
    remove outdated notes (#911) (#950)
  * handlers notify example indentation fix (#915) (#947)
  * Improve module developing documenation for deprecation and
    linking (#943) (#946)
  * Merge pull request #937 from Andersson007/add_pr_link (#944)
  * Add Ansible community 8.7.0 porting guide (#938)
  * Add 2.14 and 2.15 CVE porting guide to 2.16 (#932)
  * Merge pull request #929 from anweshadas/pr_porting_guide_9.1.0
    (#936)
  * Ansible 9: Follow ansible-core more closely (#856) (#934)
  * README: consistently use `nox -s` over `nox -e` (#923)</changelog>
  <changelog author="opensuse_buildservice@ojkastl.de" date="1706616000">- Update to version 2.16.3:
  * convert core docs to use Ansible sphinx theme (#922) (#1067)
  * fix internal links for ansible forum (#1052) (#1062)
  * added `gather_facts/(yes/no)` (#1003) (#1043)
  * [backport][2.16] Add how to request a working group (#912)
    (#1041)
  * collection_requirements: add meta/execution-environments.yml
    (#871) (#1048)
  * collection requirements/steering committee inclusion policy:
    change (#995) (#1047)
  * Proof reading II (#733) (#1039)
  * fix intersphinx  tuples (#880) (#1038)
  * Update task definition in playbook getting started doc (#1029)
    (#1032)
  * Update Arch Linux bugtracker link (#1027) (#1033)
  * ci: refresh dev dependencies (#1022)
  * corrected `test/` folder to `tests/` (#993) (#1017)
  * docs: Document removal of ConfigureRemotingForAnsible.ps1 #794
    (#984) (#1010)
  * Add documentation about --exclude flag (#978) (#1016)
  * Merge pull request #957 from akira6592/fix-exapmle-role-name
    (#1011)
  * Fixed DCO file link (#1005) (#1007)
  * Update windows_setup.rst to fix link (#766) (#1009)
  * Adds note for more details about variable precedence (#930)
  * Document collection naming (#987)
  * Collection requirements: add seealso with link to Collection
    creator path (#976) (#985)
  * Fix argument_specs.yml example (#956) (#988)
  * Add documentation for the custom Jinja2 global function `undef`
    (#953)
  * clone-core.py: allow specifying custom branch and repo (#954)
  * get_bot_user: use correct username in committer email
  * ci pr_labeler: also use the app token for issues (#636)
  * ci pip-compile: remove duplicate environment key (#633)
  * ci: use Github App token to authenticate (#621)</changelog>
  <changelog author="opensuse_buildservice@ojkastl.de" date="1710590400">- Update to version 2.16.4:
  * ci: refresh dev dependencies (#1162)
  * Fix problems with example inventory in the intro_patterns doc
    (#1138) (#1158)
  * Update playbooks_templating_now.rst (#1099) (#1156)
  * Merge pull request #1114 from akira6592/fix-ellipsis
  * Merge pull request #1115 from h3xx/fix-syntax-error
  * Merge pull request #1119 from tomkivlin/tomkivlin-patch-1
  * Remove/update incorrect docs building documentation (#1128)
  * steering committee: update members / past members lists (#1143)
    (#1144)
  * Fix core deprecation cycle example to match reality (#1113)
  * Add example around ansible-galaxy command (#1053)
  * ci: refresh dev dependencies (#1131)
  * Improve role argspec documentation (#1126)
  * Update Ansible 9 porting guide. (#1124) (#1125)
  * Merge pull request #1111 from bcoca/fix_typo
  * ci: refresh dev dependencies (#1091)
  * fix version switcher problem` (#1112)
  * Fix doc prompts (#1074) (#1107)
  * nox: run clone-core session in a venv as well (#1055) (#1060)
  * [network] update note about `gather_network_resources` (#1096)
    (#1104)
  * Add network differences explanation (#1051) (#1072)
  * remove outdated ansible/community links (#913)
  * Collection requirements: undocumented-parameter must only be
    used for deprecated parameters or internal parameters (#989)
    (#1100)
  * Extend Ansible 9 lifecycle to November 2024 (#1023) (#1098)
  * Ansible 10 roadmap (#994) (#1097)
  * Add Ansible community 9.2.0 porting guide (#1087)
  * Bump antsibull-docs to 2.7.0. (#1090)
  * community_steering_committee.rst: update with respect to forum
    and collection requirements (#997)
  * ci: refresh dev dependencies (#1049) (#1061)
  * ci: refresh dev dependencies (#1065) (#1077)
  * Remove 2.10 from build (#1046)</changelog>
  <changelog author="opensuse_buildservice@ojkastl.de" date="1711540800">- Update to version 2.16.5:
  * Merge pull request #1189 from ericzolf/ericzolf-fix-ipaddr
  * Unintended or undocumented functionality may be removed without
    deprecation (#1209) (#1223)
  * Document attributes (#1130) (#1230)
  * Cheat sheet instructions for ansible ad-hoc commands (#1171)
    (#1228)
  * Update playbooks_advanced_syntax.rst (#1208) (#1224)
  * Update testing_units_modules.rst (#1210) (#1220)
  * Add link to antsibull-docs docsite (#1198) (#1207)
  * Trim down the docs banners (#1188) (#1204)
  * Merge pull request #1201 from samccann/fix-nit (#1203)
  * Merge pull request #1172 from ansible/pip-compile/devel/dev
  * Merge pull request #1191 from oraNod/fix-ruff-path
  * Update documentation about vars: in roles: since they're no
    longer added to the play's variables (#1181) (#1186)
  * Fix typo (#1175) (#1184)
  * Data Tagging Delayed to 2.18 (#1182) (#1183)
  * [Needs SC vote] Steering Committee: votes on new members to be
    conducted on the forum; change the chairperson election
    procedure (#1085) (#1170)
  * Merge pull request #1174 from
    ansible/dependabot/github_actions/wntrblm/nox-2024.03.02
  * Add Ansible community 9.3.0 porting guide (#1168)</changelog>
  <changelog author="opensuse_buildservice@ojkastl.de" date="1713268800">- Update to version 2.16.6:
  * Add Ansible 9.4.0 porting guide. (#1238)
  * ci: refresh dev dependencies (#1214)</changelog>
  <changelog author="opensuse_buildservice@ojkastl.de" date="1716465600">- Update to version 2.16.7:
  * Merge pull request #1479 from felixfontein/fix
  * Merge pull request #1416 from sourn00dl/feature#881
  * Merge pull request #1248 from BhattacharjeeSutapa/ansible-doc
  * Update community topics links (#1451) (#1469)
  * community_topics_workflow: fix formatting (#1270) (#1467)
  * SC: move community_topics_workflow.md to docs.ansible.com
    (#1257) (#1466)
  * Merge pull request #1408 from ansible/pip-compile/devel/dev
  * Update playbooks_reuse_roles.rst (#1415) (#1429)
  * clarify backup_file (#1391) (#1441)
  * Document the possibility of vars/main and defaults/main being
    directories (#1320) (#1443)
  * how_can_i_help page: rephrase the paragraph mentioning forums
    (#1410) (#1433)
  * Restore the umask note for building docs (#1400) (#1437)
  * intro_installation.rst: shells -&gt; shell's to make possessive
    (#1420) (#1424)
  * Bump antsibull-docs to 2.11.0. (#1417) (#1419)
  * Adding explanation for combining until with loop (#1367)
  * update codespell ignore lines (#1366) (#1406)
  * Integrate ansible-creator and devtools into the developing
    collections guide (#1302) (#1401)
  * follows up on #1042 to remove smart from uptime script (#1340)
    (#1397)
  * New section on combining variables added (#1383) (#1389)
  * CONTRIBUTING: document backport labels and PR Merging (#1364)
    (#1393)
  * Fix typos in style guide (#1368)
  * MUNI_TECH_WRITERS: Better documented local collections for
    playbooks #1129 (#1315)
  * ci: refresh dev dependencies
  * Add examples to clarify inventory plugin usage (#1347)
  * Merge pull request #1311 from
    TarzanOfJungle/defining-changed-issue
  * Merge pull request #1296 from terezahelanova/feature/#793
  * Merge pull request #1303 from terezahelanova/feature/#96
  * Merge pull request #1283 from Devids10/clarify_example_module
  * Merge pull request #1258 from Devids10/paramiko_contradictions
  * Merge pull request #1275 from ansible/bcoca-patch-2
  * Merge pull request #1293 from terezahelanova/fix/#1199
  * Bump wntrblm/nox from 2024.03.02 to 2024.04.15
  * Add Ansible 9.5.1 porting guide. (#1312)
  * Merge pull request #1300 from ansible/pip-compile/devel/dev
  * Update playbooks_blocks.rst (#1190)
  * Merge pull request #1233 from meizhaohui/patch-1
  * Merge pull request #1277 from ansible/pip-compile/devel/dev
  * Avoid using sh.
  * Bump antsibull-docs to 2.10.0.</changelog>
  <changelog author="opensuse_buildservice@ojkastl.de" date="1718798400">- Update to version 2.16.8:
  * ci: refresh dev dependencies
  * clarify how to verify collection-level docs (#1589) (#1594)
  * cause people keep doing this (#1567) (#1583)
  * Update uptime.py (#1524) (#1580)
  * Update playbooks_loops.rst (#1569) (#1577)
  * Merge pull request #1568 from samccann/bullhorn-edit
  * Merge pull request #1566 from samccann/intersphinx
  * Merge pull request #1562 from M15terHyde/patch-1
  * update conf.py for Ansible 10 (#1544) (#1560)
  * Update release table for Ansible 10 and 9 (#1543) (#1557)
  * Update playbooks_blocks.rst (#1546) (#1553)
  * Merge pull request #1527 from ansible/pip-compile/devel/dev
  * Python collection requirements: restructure (#1459) (#1541)
  * Merge pull request #1529 from
    Andersson007/update_overview_links
  * Merge pull request #1530 from oraNod/fix-spelling
  * release_and_maintenance: mark 8.x unmaintained as 8.7.0
    released (#1522) (#1525)
  * mark 2.14 EOL in the release table (#1502) (#1520)
  * update backport instructions for 2.17 (#1504) (#1516)
  * Merge pull request #1321 from vojtam/feature/#357
  * Update collection_checklist.md links to point to new location
    (#1505) (#1507)
  * Move Ansible package collection removal process to
    docs.ansible.com (#1492) (#1509)
  * Add Ansible community 9.6.0 porting guide (#1493)
  * ci: refresh dev dependencies
  * update version switcher to suppor 2.17 (#1464) (#1485)
  * collection_requirements: update community topic links (#1421)
    (#1483)</changelog>
  <changelog author="opensuse_buildservice@ojkastl.de" date="1720958400">- Update to version 2.17.0:
  major update to 2.17.0, no changelog.
  Full list of commits/changes see
  https://github.com/ansible/ansible-documentation/compare/v2.16.8...v2.17.0</changelog>
  <changelog author="opensuse_buildservice@ojkastl.de" date="1720958401">- Update to version 2.17.1:
  * Merge pull request #1585 from ansible/pip-compile/devel/dev
  * clarify how to verify collection-level docs (#1589) (#1595)
  * Fix up PowerShell and Windows support lifecycle (#1587) (#1588)
  * cause people keep doing this (#1567) (#1584)
  * Update uptime.py (#1524) (#1581)
  * Update playbooks_loops.rst (#1569) (#1578)
  * Merge pull request #1568 from samccann/bullhorn-edit
  * Merge pull request #1566 from samccann/intersphinx
  * Update the Ansible 10 porting guide. (#1570)
  * Merge pull request #1562 from M15terHyde/patch-1
  * Merge pull request #1523 from
    oraNod/issue-1491/porting-guide-217
  * Update release table for Ansible 10 and 9 (#1543) (#1558)
  * update conf.py for Ansible 10 (#1544) (#1559)
  * Update playbooks_blocks.rst (#1546) (#1554)
  * Add Ansible community 10.0.0 porting guide (#1555) (#1556)
  * update to version 10 (#1551)
  * Merge pull request #1527 from ansible/pip-compile/devel/dev
  * Python collection requirements: restructure (#1459) (#1542)
  * Merge pull request #1529 from
    Andersson007/update_overview_links
  * Merge pull request #1530 from oraNod/fix-spelling
  * release_and_maintenance: mark 8.x unmaintained as 8.7.0
    released (#1522) (#1526)
  * mark 2.14 EOL in the release table (#1502) (#1521)
  * update backport instructions for 2.17 (#1504) (#1518)
  * Merge pull request #1321 from vojtam/feature/#357
  * Update collection_checklist.md links to point to new location
    (#1505) (#1506)
  * Move Ansible package collection removal process to
    docs.ansible.com (#1492) (#1508)
  * Add Ansible community 10.0.0b1 porting guide (#1494)
  * Add Ansible community 9.6.0 porting guide (#1493)
  * Merge pull request #1477 from ansible/pip-compile/devel/dev
  * update version switcher to suppor 2.17 (#1464) (#1486)
  * collection_requirements: update community topic links (#1421)
    (#1484)</changelog>
  <changelog author="opensuse_buildservice@ojkastl.de" date="1721131200">- Update to version 2.17.2:
  * restore anchor in communication guide (#1692) (#1694)
  * collection_requirements: fix typo (#1684) (#1687)
  * [WIP, needs vote before merging] collection_requirements.rst:
    update (#1422) (#1664)
  * ci: refresh dev dependencies (#1675) (#1680)
  * ci: refresh dev dependencies (#1671)
  * communication guide: overhaul (#1667) (#1668)
  * docs/docsite/rst/dev_guide/developing_program_flow_modules.rst:
    avoid using aliases (#1539) (#1660)
  * Remove references to archived ansible/ansible-examples
    repository (#1653) (#1656)
  * Remove reference of scp_if_ssh option (#1346) (#1652)
  * Integrate the `alls-green` action into the main GHA CI workflow
    (#1639) (#1647)
  * fix Ansible architecture docs (#1637) (#1646)
  * fix Validate data against set criteria with Ansible doc (#1636)
    (#1642)
  * Revert "Add example /usr/bin/env python as Python interpreter
    (#280)" (#1629) (#1631)
  * Replace WG list with a pointer to the forum groups . (#1596)
    (#1625)
  * developing_collections_migrating.rst: update (#1605) (#1628)
  * Update unit test document (#1597) (#1624)
  * Update playbooks_loops.rst (#1617) (#1620)
  * Add porting guide for 9.7.0. (#1609) (#1613)
  * Add porting guide for Ansible 10.1.0. (#1610) (#1612)
  * Fix typo in communication.rst (#1598) (#1608)</changelog>
  <changelog author="opensuse_buildservice@ojkastl.de" date="1723550400">- Update to version 2.17.3:
  * Update integration test guide docker flag usage (#1731) (#1737)
  * ci: refresh dev dependencies (#1730) (#1735)
  * ci: refresh dev dependencies (#1722) (#1726)
  * add vault password file example (#1696) (#1721)
  * Be more explicit about registering with a loop (#1709) (#1717)
  * [PR #1707/141ca118 backport][stable-2.17] ci: refresh dev
    dependencies (#1711)
  * Move community_topics_workflow to docs.ansible.com (#1028)
    (#1704)
  * Add porting guide for Ansible 9.8.0. (#1698) (#1701)
  * Add porting guide for Ansible 10.2.0. (#1697) (#1699)</changelog>
  <changelog author="opensuse_buildservice@ojkastl.de" date="1726056000">- Update to version 2.17.4:
  * community_steering_committee.rst: fix collection requirements
    link (#1828) (#1840)
  * ci: refresh dev dependencies (#1832)
  * ci: refresh dev dependencies (#1824)
  * steering_committee_membership: clarify guidelines about team
    representatives (#1806) (#1817)
  * Clarify any_errors_fatal behavior change in 2.17 porting guide
    (#1815) (#1816)
  * steering_committee_membership: fix rst link syntax error
    (#1805) (#1813)
  * nox: support nox uv backend (#1757) (#1810)
  * [Needs SC vote before merging] Steering Committee: team
    membership (#1237) (#1811)
  * Bump antsibull-docs and antsibull-docs-parser versions (#1799)
    (#1802)
  * [stable-2.17] ci: refresh dev dependencies (#1795)
  * tests: update pydantic version in lockfile (#1788)
  * Fix broken list markup in the "Installing collections"
    documentation. (#1798) (#1800)
  * Fix links in collection requirements. (#1785) (#1787)
  * ci: ensure ansible-core files exist before running docs build
    (#1756) (#1780)
  * fix indents network documents (#1776) (#1779)
  * add note about arguments in shebang in modules (#1718) (#1773)
  * ci: refresh dev dependencies (#1768)
  * ci: refresh dev dependencies (#1753)
  * [Needs SC vote before merging] Collection requirements: add
    Forum-related reqs (#1703) (#1761)
  * Add porting guide for Ansible 10.3.0. (#1746) (#1750)
  * Add porting guide for Ansible 9.9.0. (#1745) (#1749)
  * Added 'direct' to general precedence (#1740) (#1743)</changelog>
  <changelog author="opensuse_buildservice@ojkastl.de" date="1728648000">- Update to version 2.17.5:
  * add project survey 2024 banner (#1979) (#1980)
  * Remove tagger script from stable (#1934)
  * issue #1925 ee getting started missing content (#1975) (#1977)
  * Remove no longer applicable part. (#1970) (#1973)
  * Moved when condition after task name for block example (#1961)
    (#1968)
  * Update introduction.rst (#1960) (#1964)
  * playbooks_filters: Mention the usage of the
    ansible.builtin.split filter (#1929) (#1958)
  * many: Fix title case of Git references (#1938) (#1941)
  * getting_started_ee/build_execution_environment.rst: temporary
    sample fix (#1924) (#1927)
  * nox: add actionlint to lint Github Actions workflows (#1848)
    (#1910)
  * pr_labeler: re-architect triager script (#1882) (#1908)
  * Add caveat about installing collections from git (#1894)
    (#1898)
  * ci: refresh dev dependencies (#1890)
  * Change Getting started EE guide reference to point to the
    relevant location (#1877) (#1880)
  * Replace communication links with a link to communication guide,
    part 2 (#1864) (#1874)
  * Correct information about plugin enabling (#1760) (#1871)
  * Replace communication links with a link to communication guide,
    part 1 (#1851) (#1862)
  * Restore community ee content (#1852) (#1859)
  * Add porting guide for Ansible 9.10.0 (#1854) (#1857)
  * Add porting guide for Ansible 10.4.0 (#1853) (#1855)
  * Bump antsibull-docs to 2.14.0; add antsibull-docutils and
    antsibull-fileutils. (#1837) (#1846)
  * ci: refresh dev dependencies (#1842)</changelog>
  <changelog author="opensuse_buildservice@ojkastl.de" date="1731585600">- Update to version 2.17.6:
  * Update module default groups documentation (#1893) (#2073)
  * fix: correct typos (#2062) (#2070)
  * nox pip-compile: temporarily pin pip version (#2085) (#2087)
  * Add details of interactions between notifications and loops
    (#597) (#2066)
  * Remove ansible-test sanity from local module development
    (#2034) (#2060)
  * add example of extending ansible_facts (#2040) (#2054)
  * Add rules on moving content to collections outside of Ansible
    (#1971) (#2051)
  * make survey more prominent (#2037) (#2045)
  * Bump wntrblm/nox from 2024.04.15 to 2024.10.09 (#2006) (#2042)
  * fix network_best_practices_2.5.rst (#2036) (#2038)
  * docs typo, missing a space (#2004) (#2030)
  * use standard indentation (#2005) (#2027)
  * Tagging nuance (#1900) (#2020)
  * keep lockfiles in sync for stable-2.17 (#2023)
  * Update docs build to support the new antsibull-docs 2.15.0
    features (#2001) (#2017)
  * Add ecosystem_project_resources.rst document (#2007) (#2010)
  * [stable-2.17] support pip-compile check mode and remove
    pip-compile workflows from stable branch (#1947)
  * Upgrade antsibull-docs to 2.15.0 and antsibull-core to 3.3.0.
    (#1994) (#2002)
  * [PR #1996/d6984678 backport][stable-2.17] update docs team info
    page (#1998)
  * Add porting guide for Ansible 10.5.0. (#1987) (#1991)
  * Add porting guide for Ansible 9.11.0. (#1988) (#1990)
  * Update playbooks_error_handling.rst (#1982) (#1985)</changelog>
</package>
<package pkgid="47bf23cbaa498f099e1c129814cf1a18eec5a95f576d06ada2222dbe5ce1edb28fb0aa12111d1dae01b6243a138d10c5636a3dbf0253a2be250b171b4b2d8231" name="ansible-documentation" arch="src">
  <version epoch="0" ver="2.17.6" rel="1.1"/>
  <changelog author="Johannes Kastl &lt;kastl@b1-systems.de&gt;" date="1699358400">- update to 2.15.6:
  This tag contains a snapshot of the ansible-documentation
  stable-2.15 branch at the time of the ansible-core 2.15.6
  release.</changelog>
  <changelog author="kastl@b1-systems.de" date="1699358401">- Update to version 2.15.6:
  * ci: refresh dev dependencies (#770)
  * Fixed equalto test filter (#758) (#759)
  * ci: refresh dev dependencies (#741)
  * nox and README: log PIP_CONSTRAINT value and add Dependency file docs (#730) (#737)
  * [stable-2.15] installation_guide/intro_configuration.rst: improve readability
  * Proof reading (#616) (#729)
  * [PR #668/8d847046 backport] Integrate docs checkers into the noxfile (#727)
  * ci: refresh dev dependencies (#721) (#722)
  * Update JSON queries examples (#690) (#704)
  * communication.rst: other forum-related tweaks (#669) (#698)
  * documentation_contributions: use tests/checkers.py (#706) (#712)
  * Update slicing in inventory pattern (#541) (#693)
  * [stable-2.15] Unify the Sphinx's `conf.py` files (#431) (#627)
  * Update shebang sanity test docs to match test (#677) (#687)
  * Update example using special variables in resuce section of blocks (#671) (#680)
  * ci: refresh dev dependencies (#682)
  * ci: refresh dev dependencies (#672)
  * Use a working exponential backoff example (#607) (#660)
  * Rename tests/sanity.py to tests/checkers.py (#563) (#663)
  * Added delegation info to special vars (#629) (#659)
  * Add forum info to collection maintainer guidelines (#549) (#655)
  * Fix#129 (#201) (#613)
  * Update PowerShell Codeblock (#489) (#603)
  * Changed it's to it is in all .rst files (#491)
  * Clarify that two releases will happen on two separate days, and clarify which one will happen first (#39)
  * pr_labeler: stop adding needs_triage labels to new PRs (#643) (#645)
  * ci: refresh dev dependencies (#638) (#641)
  * [stable-2.15] Add RST spellcheck (#524) (#623)
  * corrected cli for help (#599) (#600)
  * communication.rst: Add a link to the forum group list (#571) (#594)
  * developing_collections_structure.rs: Fix link formatting (#570) (#591)
  * Testing collections guide: add GHA info and link to sample matrix (#569) (#588)
  * issue #560 fix broken url in script (#568) (#585)
  * Document how to bump dependencies (#446) (#614)
  * ci: refresh dev dependencies (#608) (#609)
  * Merge pull request #27 from oraNod/issue-26/add-intro-getting-started (#526)
  * Spellingfix (#494) (#583)
  * communication.rst: fix link (#495) (#580)
  * More info on delegation behaviours (#527) (#582)
  * Replace i.e with that is  (#490) (#565)
  * Fix for : Replace all occurrences of via to with #459 (#479) (#578)
  * issue-457: Update all occurrences of Ansible core to Ansible Core (#471) (#575)
  * communication.rst: Add Release Management WG info (#438) (#574)
  * Update collections_installing.rst (#412) (#573)
  * communication.rst: add forum info (#392) (#572)
  * Integrate `docs/bin/*.py` files into the nox config (#529) (#562)
  * Add Ansible community 8.5.0 porting guide (#556) (#557)
  * fix molecule link in contributor path page (#538) (#551)
  * Add Arch installation instructions in the installation_distros documentation (#522) (#545)
  * ci: refresh dev dependencies (#548)</changelog>
  <changelog author="kastl@b1-systems.de" date="1701777600">- Update to version 2.15.7:
  * nox pip-compile: allow passing --no-upgrade flag (#883) (#919)
  * add nox make session and revamp contribution docs (#707) (#916)
  * installation_guide/intro: update seealso with respect to
    communication (#869) (#909)
  * Update links in plugin documentation (#859) (#906)
  * installation_distros.rst: fix RST hyperlink syntax (#857)
    (#903)
  * Updated loop docs (#838) (#899)
  * intro_installation: add EE info (#870) (#893)
  * Fix Edit on GitHub for templated pages, remove superfluous
    template, fix broken link (#865) (#891)
  * developing_collections_structure.rst: Add EE collection-level
    metadata link to meta directory subsection (#855) (#889)
  * Add the mission statement to the community guide (#854) (#888)
  * update python versions in installation guide (#836) (#886)
  * add ansible-galaxy to command cheatsheet (#826) (#884)
  * Refs #340: Swap old 'CLA' for the DCO (#598) (#874)
  * ci: refresh dev dependencies (#839) (#861)
  * Add porting guide for CVE-2023-5764 (#867)
  * Update the information on RouterOS network connections. (#841)
    (#864)
  * update backport instructions to match 2.16 (#799) (#847)
  * Fix delegate_to details about inheriting vars from 'all' (#825)
    (#834)
  * communication.rst: Make WG a top-level section (#750) (#806)
  * EOL 2.13 in release table (#798) (#808)
  * ci: refresh dev dependencies (#813) (#814)
  * Update developing_program_flow_modules.rst (#819) (#820)
  * update galaxy urls for networking docs' (#822) (#823)
  * communication.rst: remove inactive security WG (#828) (#830)
  * communication.rst: update MySQL WG to point to the forum group
    page (#795) (#803)
  * communication.rst: update Docs WG reference (#785) (#800)
  * Update the Note for certificate authentication with a TLS 1.3
    connection in windows_winrm.rst  (#757) (#780)
  * [2.15] Add Ansible community 8.6.0 porting guide (#788) (#792)
  * update versioning for 2.16 (#755) (#779)
  * intro_installation: pass --include-injected in pipx upgrade
    example (#745) (#767)
  * Replaced the AWX mailing list with the AWX Forum page. (#769)
    (#776)</changelog>
  <changelog author="kastl@b1-systems.de" date="1702382400">- Update to version 2.15.8:
  * Retroactivelly add a 2.15 porting guide note about handlers
    (#882)
  * bump approved antsibull-docs version to 2.6.0
  * documentation_contributions: show how to set up a venv and
    remove outdated notes (#911) (#949)
  * Update windows_winrm.rst (#910) (#952)
  * handlers notify example indentation fix (#915) (#948)
  * Merge pull request #937 from Andersson007/add_pr_link (#945)
  * Add Ansible community 8.7.0 porting guide (#938)
  * Add porting guide for CVE-2023-5764 (#933)
  * ci: refresh dev dependencies (#914)
  * README: consistently use `nox -s` over `nox -e` (#923)</changelog>
  <changelog author="opensuse_buildservice@ojkastl.de" date="1705838400">- Update to version 2.16.0:
  This tag contains a snapshot of the ansible-documentation
  stable-2.16 branch at the time of the ansible-core 2.16.0
  release.</changelog>
  <changelog author="opensuse_buildservice@ojkastl.de" date="1705838401">- Update to version 2.16.1:
  * nox pip-compile: allow passing --no-upgrade flag (#883) (#920)
  * add nox make session and revamp contribution docs (#707) (#917)
  * installation_guide/intro: update seealso with respect to
    communication (#869) (#908)
  * Update links in plugin documentation (#859) (#907)
  * installation_distros.rst: fix RST hyperlink syntax (#857)
    (#904)
  * developing_collections_path.rst: fix formatting (#842) (#901)
  * Add the mission statement to the community guide (#854) (#902)
  * Fix Edit on GitHub for templated pages, remove superfluous
    template, fix broken link (#865) (#892)
  * add ansible-galaxy to command cheatsheet (#826) (#898)
  * Fix delegate_to details about inheriting vars from 'all' (#825)
    (#897)
  * Update developing_program_flow_modules.rst (#819) (#895)
  * intro_installation: add EE info (#870) (#894)
  * developing_collections_structure.rst: Add EE collection-level
    metadata link to meta directory subsection (#855) (#890)
  * update python versions in installation guide (#836) (#887)
  * add support for Ansible 9 intersphinx links (#878) (#879)
  * Refs #340: Swap old 'CLA' for the DCO (#598) (#875)
  * Add porting guide for CVE-2023-5764 (#866)
  * Update the information on RouterOS network connections. (#841)
    (#863)
  * update galaxy urls for networking docs' (#822) (#862)
  * ci: refresh dev dependencies (#839)
  * ci: refresh dev dependencies (#813)
  * sphinx: remove usage of deprecated notfound-page options (#827)
  * update logic to make it easier to patch for core vs ansible
    release (#849) (#850)
  * downgrade sphinx to 7.1.2 to fix 404 pages
  * add Ansible 9 changelogs (#831) (#848)
  * update backport instructions to match 2.16 (#799) (#846)
  * Set release version to 9 (#832) (#845)
  * Add Ansible community 9.0.0 porting guide (#843) (#844)
  * developing_collections.rst: add collection creator path (#775)
    (#835)
  * EOL 2.13 in release table (#798) (#810)
  * communication.rst: remove inactive security WG (#828) (#833)
  * communication.rst: update Docs WG reference (#785) (#802)
  * communication.rst: update MySQL WG to point to the forum group
    page (#795) (#805)
  * Update the Note for certificate authentication with a TLS 1.3
    connection in windows_winrm.rst  (#757) (#781)
  * [PR #788/2a485247 backport][stable-2.16] Add Ansible community
    8.6.0 porting guide (#791)
  * Porting guide for 9.0.0b1. (#787) (#790)
  * update versioning for 2.16 (#755) (#783)
  * communication.rst: Make WG a top-level section (#750) (#764)
  * intro_installation: pass --include-injected in pipx upgrade
    example (#745) (#768)
  * Replaced the AWX mailing list with the AWX Forum page. (#769)
    (#777)
  * set release version to 2.16 (#756)</changelog>
  <changelog author="opensuse_buildservice@ojkastl.de" date="1705838402">- Update to version 2.16.2:
  * Retroactivelly add a 2.15 porting guide note about handlers
    (#882)
  * bump approved antsibull-docs version to 2.6.0
  * Update windows_winrm.rst (#910) (#951)
  * documentation_contributions: show how to set up a venv and
    remove outdated notes (#911) (#950)
  * handlers notify example indentation fix (#915) (#947)
  * Improve module developing documenation for deprecation and
    linking (#943) (#946)
  * Merge pull request #937 from Andersson007/add_pr_link (#944)
  * Add Ansible community 8.7.0 porting guide (#938)
  * Add 2.14 and 2.15 CVE porting guide to 2.16 (#932)
  * Merge pull request #929 from anweshadas/pr_porting_guide_9.1.0
    (#936)
  * Ansible 9: Follow ansible-core more closely (#856) (#934)
  * README: consistently use `nox -s` over `nox -e` (#923)</changelog>
  <changelog author="opensuse_buildservice@ojkastl.de" date="1706616000">- Update to version 2.16.3:
  * convert core docs to use Ansible sphinx theme (#922) (#1067)
  * fix internal links for ansible forum (#1052) (#1062)
  * added `gather_facts/(yes/no)` (#1003) (#1043)
  * [backport][2.16] Add how to request a working group (#912)
    (#1041)
  * collection_requirements: add meta/execution-environments.yml
    (#871) (#1048)
  * collection requirements/steering committee inclusion policy:
    change (#995) (#1047)
  * Proof reading II (#733) (#1039)
  * fix intersphinx  tuples (#880) (#1038)
  * Update task definition in playbook getting started doc (#1029)
    (#1032)
  * Update Arch Linux bugtracker link (#1027) (#1033)
  * ci: refresh dev dependencies (#1022)
  * corrected `test/` folder to `tests/` (#993) (#1017)
  * docs: Document removal of ConfigureRemotingForAnsible.ps1 #794
    (#984) (#1010)
  * Add documentation about --exclude flag (#978) (#1016)
  * Merge pull request #957 from akira6592/fix-exapmle-role-name
    (#1011)
  * Fixed DCO file link (#1005) (#1007)
  * Update windows_setup.rst to fix link (#766) (#1009)
  * Adds note for more details about variable precedence (#930)
  * Document collection naming (#987)
  * Collection requirements: add seealso with link to Collection
    creator path (#976) (#985)
  * Fix argument_specs.yml example (#956) (#988)
  * Add documentation for the custom Jinja2 global function `undef`
    (#953)
  * clone-core.py: allow specifying custom branch and repo (#954)
  * get_bot_user: use correct username in committer email
  * ci pr_labeler: also use the app token for issues (#636)
  * ci pip-compile: remove duplicate environment key (#633)
  * ci: use Github App token to authenticate (#621)</changelog>
  <changelog author="opensuse_buildservice@ojkastl.de" date="1710590400">- Update to version 2.16.4:
  * ci: refresh dev dependencies (#1162)
  * Fix problems with example inventory in the intro_patterns doc
    (#1138) (#1158)
  * Update playbooks_templating_now.rst (#1099) (#1156)
  * Merge pull request #1114 from akira6592/fix-ellipsis
  * Merge pull request #1115 from h3xx/fix-syntax-error
  * Merge pull request #1119 from tomkivlin/tomkivlin-patch-1
  * Remove/update incorrect docs building documentation (#1128)
  * steering committee: update members / past members lists (#1143)
    (#1144)
  * Fix core deprecation cycle example to match reality (#1113)
  * Add example around ansible-galaxy command (#1053)
  * ci: refresh dev dependencies (#1131)
  * Improve role argspec documentation (#1126)
  * Update Ansible 9 porting guide. (#1124) (#1125)
  * Merge pull request #1111 from bcoca/fix_typo
  * ci: refresh dev dependencies (#1091)
  * fix version switcher problem` (#1112)
  * Fix doc prompts (#1074) (#1107)
  * nox: run clone-core session in a venv as well (#1055) (#1060)
  * [network] update note about `gather_network_resources` (#1096)
    (#1104)
  * Add network differences explanation (#1051) (#1072)
  * remove outdated ansible/community links (#913)
  * Collection requirements: undocumented-parameter must only be
    used for deprecated parameters or internal parameters (#989)
    (#1100)
  * Extend Ansible 9 lifecycle to November 2024 (#1023) (#1098)
  * Ansible 10 roadmap (#994) (#1097)
  * Add Ansible community 9.2.0 porting guide (#1087)
  * Bump antsibull-docs to 2.7.0. (#1090)
  * community_steering_committee.rst: update with respect to forum
    and collection requirements (#997)
  * ci: refresh dev dependencies (#1049) (#1061)
  * ci: refresh dev dependencies (#1065) (#1077)
  * Remove 2.10 from build (#1046)</changelog>
  <changelog author="opensuse_buildservice@ojkastl.de" date="1711540800">- Update to version 2.16.5:
  * Merge pull request #1189 from ericzolf/ericzolf-fix-ipaddr
  * Unintended or undocumented functionality may be removed without
    deprecation (#1209) (#1223)
  * Document attributes (#1130) (#1230)
  * Cheat sheet instructions for ansible ad-hoc commands (#1171)
    (#1228)
  * Update playbooks_advanced_syntax.rst (#1208) (#1224)
  * Update testing_units_modules.rst (#1210) (#1220)
  * Add link to antsibull-docs docsite (#1198) (#1207)
  * Trim down the docs banners (#1188) (#1204)
  * Merge pull request #1201 from samccann/fix-nit (#1203)
  * Merge pull request #1172 from ansible/pip-compile/devel/dev
  * Merge pull request #1191 from oraNod/fix-ruff-path
  * Update documentation about vars: in roles: since they're no
    longer added to the play's variables (#1181) (#1186)
  * Fix typo (#1175) (#1184)
  * Data Tagging Delayed to 2.18 (#1182) (#1183)
  * [Needs SC vote] Steering Committee: votes on new members to be
    conducted on the forum; change the chairperson election
    procedure (#1085) (#1170)
  * Merge pull request #1174 from
    ansible/dependabot/github_actions/wntrblm/nox-2024.03.02
  * Add Ansible community 9.3.0 porting guide (#1168)</changelog>
  <changelog author="opensuse_buildservice@ojkastl.de" date="1713268800">- Update to version 2.16.6:
  * Add Ansible 9.4.0 porting guide. (#1238)
  * ci: refresh dev dependencies (#1214)</changelog>
  <changelog author="opensuse_buildservice@ojkastl.de" date="1716465600">- Update to version 2.16.7:
  * Merge pull request #1479 from felixfontein/fix
  * Merge pull request #1416 from sourn00dl/feature#881
  * Merge pull request #1248 from BhattacharjeeSutapa/ansible-doc
  * Update community topics links (#1451) (#1469)
  * community_topics_workflow: fix formatting (#1270) (#1467)
  * SC: move community_topics_workflow.md to docs.ansible.com
    (#1257) (#1466)
  * Merge pull request #1408 from ansible/pip-compile/devel/dev
  * Update playbooks_reuse_roles.rst (#1415) (#1429)
  * clarify backup_file (#1391) (#1441)
  * Document the possibility of vars/main and defaults/main being
    directories (#1320) (#1443)
  * how_can_i_help page: rephrase the paragraph mentioning forums
    (#1410) (#1433)
  * Restore the umask note for building docs (#1400) (#1437)
  * intro_installation.rst: shells -&gt; shell's to make possessive
    (#1420) (#1424)
  * Bump antsibull-docs to 2.11.0. (#1417) (#1419)
  * Adding explanation for combining until with loop (#1367)
  * update codespell ignore lines (#1366) (#1406)
  * Integrate ansible-creator and devtools into the developing
    collections guide (#1302) (#1401)
  * follows up on #1042 to remove smart from uptime script (#1340)
    (#1397)
  * New section on combining variables added (#1383) (#1389)
  * CONTRIBUTING: document backport labels and PR Merging (#1364)
    (#1393)
  * Fix typos in style guide (#1368)
  * MUNI_TECH_WRITERS: Better documented local collections for
    playbooks #1129 (#1315)
  * ci: refresh dev dependencies
  * Add examples to clarify inventory plugin usage (#1347)
  * Merge pull request #1311 from
    TarzanOfJungle/defining-changed-issue
  * Merge pull request #1296 from terezahelanova/feature/#793
  * Merge pull request #1303 from terezahelanova/feature/#96
  * Merge pull request #1283 from Devids10/clarify_example_module
  * Merge pull request #1258 from Devids10/paramiko_contradictions
  * Merge pull request #1275 from ansible/bcoca-patch-2
  * Merge pull request #1293 from terezahelanova/fix/#1199
  * Bump wntrblm/nox from 2024.03.02 to 2024.04.15
  * Add Ansible 9.5.1 porting guide. (#1312)
  * Merge pull request #1300 from ansible/pip-compile/devel/dev
  * Update playbooks_blocks.rst (#1190)
  * Merge pull request #1233 from meizhaohui/patch-1
  * Merge pull request #1277 from ansible/pip-compile/devel/dev
  * Avoid using sh.
  * Bump antsibull-docs to 2.10.0.</changelog>
  <changelog author="opensuse_buildservice@ojkastl.de" date="1718798400">- Update to version 2.16.8:
  * ci: refresh dev dependencies
  * clarify how to verify collection-level docs (#1589) (#1594)
  * cause people keep doing this (#1567) (#1583)
  * Update uptime.py (#1524) (#1580)
  * Update playbooks_loops.rst (#1569) (#1577)
  * Merge pull request #1568 from samccann/bullhorn-edit
  * Merge pull request #1566 from samccann/intersphinx
  * Merge pull request #1562 from M15terHyde/patch-1
  * update conf.py for Ansible 10 (#1544) (#1560)
  * Update release table for Ansible 10 and 9 (#1543) (#1557)
  * Update playbooks_blocks.rst (#1546) (#1553)
  * Merge pull request #1527 from ansible/pip-compile/devel/dev
  * Python collection requirements: restructure (#1459) (#1541)
  * Merge pull request #1529 from
    Andersson007/update_overview_links
  * Merge pull request #1530 from oraNod/fix-spelling
  * release_and_maintenance: mark 8.x unmaintained as 8.7.0
    released (#1522) (#1525)
  * mark 2.14 EOL in the release table (#1502) (#1520)
  * update backport instructions for 2.17 (#1504) (#1516)
  * Merge pull request #1321 from vojtam/feature/#357
  * Update collection_checklist.md links to point to new location
    (#1505) (#1507)
  * Move Ansible package collection removal process to
    docs.ansible.com (#1492) (#1509)
  * Add Ansible community 9.6.0 porting guide (#1493)
  * ci: refresh dev dependencies
  * update version switcher to suppor 2.17 (#1464) (#1485)
  * collection_requirements: update community topic links (#1421)
    (#1483)</changelog>
  <changelog author="opensuse_buildservice@ojkastl.de" date="1720958400">- Update to version 2.17.0:
  major update to 2.17.0, no changelog.
  Full list of commits/changes see
  https://github.com/ansible/ansible-documentation/compare/v2.16.8...v2.17.0</changelog>
  <changelog author="opensuse_buildservice@ojkastl.de" date="1720958401">- Update to version 2.17.1:
  * Merge pull request #1585 from ansible/pip-compile/devel/dev
  * clarify how to verify collection-level docs (#1589) (#1595)
  * Fix up PowerShell and Windows support lifecycle (#1587) (#1588)
  * cause people keep doing this (#1567) (#1584)
  * Update uptime.py (#1524) (#1581)
  * Update playbooks_loops.rst (#1569) (#1578)
  * Merge pull request #1568 from samccann/bullhorn-edit
  * Merge pull request #1566 from samccann/intersphinx
  * Update the Ansible 10 porting guide. (#1570)
  * Merge pull request #1562 from M15terHyde/patch-1
  * Merge pull request #1523 from
    oraNod/issue-1491/porting-guide-217
  * Update release table for Ansible 10 and 9 (#1543) (#1558)
  * update conf.py for Ansible 10 (#1544) (#1559)
  * Update playbooks_blocks.rst (#1546) (#1554)
  * Add Ansible community 10.0.0 porting guide (#1555) (#1556)
  * update to version 10 (#1551)
  * Merge pull request #1527 from ansible/pip-compile/devel/dev
  * Python collection requirements: restructure (#1459) (#1542)
  * Merge pull request #1529 from
    Andersson007/update_overview_links
  * Merge pull request #1530 from oraNod/fix-spelling
  * release_and_maintenance: mark 8.x unmaintained as 8.7.0
    released (#1522) (#1526)
  * mark 2.14 EOL in the release table (#1502) (#1521)
  * update backport instructions for 2.17 (#1504) (#1518)
  * Merge pull request #1321 from vojtam/feature/#357
  * Update collection_checklist.md links to point to new location
    (#1505) (#1506)
  * Move Ansible package collection removal process to
    docs.ansible.com (#1492) (#1508)
  * Add Ansible community 10.0.0b1 porting guide (#1494)
  * Add Ansible community 9.6.0 porting guide (#1493)
  * Merge pull request #1477 from ansible/pip-compile/devel/dev
  * update version switcher to suppor 2.17 (#1464) (#1486)
  * collection_requirements: update community topic links (#1421)
    (#1484)</changelog>
  <changelog author="opensuse_buildservice@ojkastl.de" date="1721131200">- Update to version 2.17.2:
  * restore anchor in communication guide (#1692) (#1694)
  * collection_requirements: fix typo (#1684) (#1687)
  * [WIP, needs vote before merging] collection_requirements.rst:
    update (#1422) (#1664)
  * ci: refresh dev dependencies (#1675) (#1680)
  * ci: refresh dev dependencies (#1671)
  * communication guide: overhaul (#1667) (#1668)
  * docs/docsite/rst/dev_guide/developing_program_flow_modules.rst:
    avoid using aliases (#1539) (#1660)
  * Remove references to archived ansible/ansible-examples
    repository (#1653) (#1656)
  * Remove reference of scp_if_ssh option (#1346) (#1652)
  * Integrate the `alls-green` action into the main GHA CI workflow
    (#1639) (#1647)
  * fix Ansible architecture docs (#1637) (#1646)
  * fix Validate data against set criteria with Ansible doc (#1636)
    (#1642)
  * Revert "Add example /usr/bin/env python as Python interpreter
    (#280)" (#1629) (#1631)
  * Replace WG list with a pointer to the forum groups . (#1596)
    (#1625)
  * developing_collections_migrating.rst: update (#1605) (#1628)
  * Update unit test document (#1597) (#1624)
  * Update playbooks_loops.rst (#1617) (#1620)
  * Add porting guide for 9.7.0. (#1609) (#1613)
  * Add porting guide for Ansible 10.1.0. (#1610) (#1612)
  * Fix typo in communication.rst (#1598) (#1608)</changelog>
  <changelog author="opensuse_buildservice@ojkastl.de" date="1723550400">- Update to version 2.17.3:
  * Update integration test guide docker flag usage (#1731) (#1737)
  * ci: refresh dev dependencies (#1730) (#1735)
  * ci: refresh dev dependencies (#1722) (#1726)
  * add vault password file example (#1696) (#1721)
  * Be more explicit about registering with a loop (#1709) (#1717)
  * [PR #1707/141ca118 backport][stable-2.17] ci: refresh dev
    dependencies (#1711)
  * Move community_topics_workflow to docs.ansible.com (#1028)
    (#1704)
  * Add porting guide for Ansible 9.8.0. (#1698) (#1701)
  * Add porting guide for Ansible 10.2.0. (#1697) (#1699)</changelog>
  <changelog author="opensuse_buildservice@ojkastl.de" date="1726056000">- Update to version 2.17.4:
  * community_steering_committee.rst: fix collection requirements
    link (#1828) (#1840)
  * ci: refresh dev dependencies (#1832)
  * ci: refresh dev dependencies (#1824)
  * steering_committee_membership: clarify guidelines about team
    representatives (#1806) (#1817)
  * Clarify any_errors_fatal behavior change in 2.17 porting guide
    (#1815) (#1816)
  * steering_committee_membership: fix rst link syntax error
    (#1805) (#1813)
  * nox: support nox uv backend (#1757) (#1810)
  * [Needs SC vote before merging] Steering Committee: team
    membership (#1237) (#1811)
  * Bump antsibull-docs and antsibull-docs-parser versions (#1799)
    (#1802)
  * [stable-2.17] ci: refresh dev dependencies (#1795)
  * tests: update pydantic version in lockfile (#1788)
  * Fix broken list markup in the "Installing collections"
    documentation. (#1798) (#1800)
  * Fix links in collection requirements. (#1785) (#1787)
  * ci: ensure ansible-core files exist before running docs build
    (#1756) (#1780)
  * fix indents network documents (#1776) (#1779)
  * add note about arguments in shebang in modules (#1718) (#1773)
  * ci: refresh dev dependencies (#1768)
  * ci: refresh dev dependencies (#1753)
  * [Needs SC vote before merging] Collection requirements: add
    Forum-related reqs (#1703) (#1761)
  * Add porting guide for Ansible 10.3.0. (#1746) (#1750)
  * Add porting guide for Ansible 9.9.0. (#1745) (#1749)
  * Added 'direct' to general precedence (#1740) (#1743)</changelog>
  <changelog author="opensuse_buildservice@ojkastl.de" date="1728648000">- Update to version 2.17.5:
  * add project survey 2024 banner (#1979) (#1980)
  * Remove tagger script from stable (#1934)
  * issue #1925 ee getting started missing content (#1975) (#1977)
  * Remove no longer applicable part. (#1970) (#1973)
  * Moved when condition after task name for block example (#1961)
    (#1968)
  * Update introduction.rst (#1960) (#1964)
  * playbooks_filters: Mention the usage of the
    ansible.builtin.split filter (#1929) (#1958)
  * many: Fix title case of Git references (#1938) (#1941)
  * getting_started_ee/build_execution_environment.rst: temporary
    sample fix (#1924) (#1927)
  * nox: add actionlint to lint Github Actions workflows (#1848)
    (#1910)
  * pr_labeler: re-architect triager script (#1882) (#1908)
  * Add caveat about installing collections from git (#1894)
    (#1898)
  * ci: refresh dev dependencies (#1890)
  * Change Getting started EE guide reference to point to the
    relevant location (#1877) (#1880)
  * Replace communication links with a link to communication guide,
    part 2 (#1864) (#1874)
  * Correct information about plugin enabling (#1760) (#1871)
  * Replace communication links with a link to communication guide,
    part 1 (#1851) (#1862)
  * Restore community ee content (#1852) (#1859)
  * Add porting guide for Ansible 9.10.0 (#1854) (#1857)
  * Add porting guide for Ansible 10.4.0 (#1853) (#1855)
  * Bump antsibull-docs to 2.14.0; add antsibull-docutils and
    antsibull-fileutils. (#1837) (#1846)
  * ci: refresh dev dependencies (#1842)</changelog>
  <changelog author="opensuse_buildservice@ojkastl.de" date="1731585600">- Update to version 2.17.6:
  * Update module default groups documentation (#1893) (#2073)
  * fix: correct typos (#2062) (#2070)
  * nox pip-compile: temporarily pin pip version (#2085) (#2087)
  * Add details of interactions between notifications and loops
    (#597) (#2066)
  * Remove ansible-test sanity from local module development
    (#2034) (#2060)
  * add example of extending ansible_facts (#2040) (#2054)
  * Add rules on moving content to collections outside of Ansible
    (#1971) (#2051)
  * make survey more prominent (#2037) (#2045)
  * Bump wntrblm/nox from 2024.04.15 to 2024.10.09 (#2006) (#2042)
  * fix network_best_practices_2.5.rst (#2036) (#2038)
  * docs typo, missing a space (#2004) (#2030)
  * use standard indentation (#2005) (#2027)
  * Tagging nuance (#1900) (#2020)
  * keep lockfiles in sync for stable-2.17 (#2023)
  * Update docs build to support the new antsibull-docs 2.15.0
    features (#2001) (#2017)
  * Add ecosystem_project_resources.rst document (#2007) (#2010)
  * [stable-2.17] support pip-compile check mode and remove
    pip-compile workflows from stable branch (#1947)
  * Upgrade antsibull-docs to 2.15.0 and antsibull-core to 3.3.0.
    (#1994) (#2002)
  * [PR #1996/d6984678 backport][stable-2.17] update docs team info
    page (#1998)
  * Add porting guide for Ansible 10.5.0. (#1987) (#1991)
  * Add porting guide for Ansible 9.11.0. (#1988) (#1990)
  * Update playbooks_error_handling.rst (#1982) (#1985)</changelog>
</package>
<package pkgid="0bde523e934b2e8e7b99f41bd1b6d9695997cc9889dc95b4300fe352a3e3d508c49c64325bc72b8a7084d25e2a3a6f938ca50c1456dd2101d9fa2c822d06e94f" name="ansible-test-2.16" arch="noarch">
  <version epoch="0" ver="2.16.13" rel="1.0.2.1.sr20241103"/>
  <changelog author="Johannes Kastl &lt;kastl@b1-systems.de&gt;" date="1696939200">- update to 2.15.5:
  * Minor Changes
  - ansible-galaxy dependency resolution messages have changed
    the unexplained 'virtual' collection for the specific type
    ('scm', 'dir', etc) that is more user friendly
  * Security Fixes
  - ansible-galaxy - Prevent roles from using symlinks to
    overwrite files outside of the installation directory
    (CVE-2023-5115)
  * Bugfixes
  - Allow for searching handler subdir for included task via
    include_role (#81722)
  - PluginLoader - fix Jinja plugin performance issues (#79652)
  - ansible.module_utils.service - ensure binary data
    transmission in daemonize()
  - ansible.module_utils.service - fix inter-process
    communication in daemonize()
  - ansible-galaxy - started allowing the use of pre-releases for
    collections that do not have any stable versions published.
    (#81606)
  - ansible-galaxy - started allowing the use of pre-releases for
    dependencies on any level of the dependency tree that
    specifically demand exact pre-release versions of collections
    and not version ranges. (#81606)
  - ansible-galaxy error on dependency resolution will not error
    itself due to 'virtual' collections not having a
    name/namespace.
  - ansible-galaxy info - fix reporting no role found when
    lookup_role_by_name returns None.
  - role deduplication - don't deduplicate before a role has had
    a task run for that particular host (#81486).
  - uri/urls - Add compat function to handle the ability to parse
    the filename from a Content-Disposition header (#81806)
  - winrm - Better handle send input failures when communicating
    with hosts under load</changelog>
  <changelog author="Johannes Kastl &lt;kastl@b1-systems.de&gt;" date="1699358400">- update to 2.15.6:
  * Minor Changes
  - ansible-test - Windows 2012 and 2012-R2 instances are now
    requested from Azure instead of AWS.
  * Bugfixes
  - Fix run_once being incorrectly interpreted on handlers
    (#81666)
  - Plugin loader does not dedupe nor cache filter/test plugins
    by file basename, but full path name.
  - Properly template tags in parent blocks (#81053)
  - Restoring the ability of filters/tests can have same file
    base name but different tests/filters defined inside.
  - import_role reverts to previous behavior of exporting vars at
    compile time.
  - ansible-galaxy - Provide a better error message when using a
    requirements file with an invalid format - #81901
  - ansible-inventory - index available_hosts for major
    performance boost when dumping large inventories
  - ansible-test - Fix parsing of cgroup entries which contain a
    : in the path (#81977).</changelog>
  <changelog author="Johannes Kastl &lt;kastl@b1-systems.de&gt;" date="1701777600">- update to 2.15.7:
  This release includes a fix for CVE-2023-5764, where internal
  templating actions could result in unsafe data losing its unsafe
  designation.
  * Breaking Changes / Porting Guide
  - assert - Nested templating may result in an inability for the
    conditional to be evaluated. See the porting guide for more
    information.
  * Security Fixes
  - templating - Address issues where internal templating can
    cause unsafe variables to lose their unsafe designation
    (CVE-2023-5764)
  * Bugfixes
  - ansible-pull now will expand relative paths for the
  - d|--directory option is now expanded before use.
  - flush_handlers - properly handle a handler failure in a
    nested block when force_handlers is set
    (http://github.com/ansible/ansible/issues/81532)
  - module no_log will no longer affect top level booleans, for
    example no_log_module_parameter='a' will no longer hide
    changed=False as a 'no log value' (matches 'a').
  - modules/user.py - Add check for valid directory when creating
    new user homedir (allows /dev/null as skeleton) (#75063)
  - role params now have higher precedence than host facts again,
    matching documentation, this had unintentionally changed in
    2.15.
  - wait_for should not handle 'non mmapable files' again.</changelog>
  <changelog author="Johannes Kastl &lt;kastl@b1-systems.de&gt;" date="1702382400">- update to 2.15.8:
  * Minor Changes
  - ansible-test - Add FreeBSD 13.2 remote.
  - ansible-test - Removed freebsd/13.1 remote.
  * Bugfixes
  - unsafe data - Address an incompatibility when iterating or
    getting a single index from AnsibleUnsafeBytes
  - unsafe data - Address an incompatibility with
    AnsibleUnsafeText and AnsibleUnsafeBytes when pickling with
    protocol=0</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1705838400">- update to 2.16.0:
  https://github.com/ansible/ansible/blob/v2.16.0/changelogs/CHANGELOG-v2.16.rst
  * Bugfixes and Minor changes omitted for brevity, see full
    changelog
  * Breaking Changes / Porting Guide
  - Any plugin using the config system and the cli entry to use
    the timeout from the command line, will see the value change
    if the use had configured it in any of the lower precedence
    methods. If relying on this behaviour to consume the
    global/generic timeout from the DEFAULT_TIMEOUT constant,
    please consult the documentation on plugin configuration to
    add the overlaping entries.
  - ansible-test - Test plugins that rely on containers no longer
    support reusing running containers. The previous behavior was
    an undocumented, untested feature.
  - service module will not permanently configure variables/flags
    for openbsd when doing enable/disable operation anymore, this
    module was never meant to do this type of work, just to
    manage the service state itself. A rcctl_config or similar
    module should be created and used instead.
  * Deprecated Features
  - Deprecated ini config option collections_paths, use the
    singular form collections_path instead
  - Deprecated the env var ANSIBLE_COLLECTIONS_PATHS, use the
    singular form ANSIBLE_COLLECTIONS_PATH instead
  - Old style vars plugins which use the entrypoints
    get_host_vars or get_group_vars are deprecated. The plugin
    should be updated to inherit from BaseVarsPlugin and define a
    get_vars method as the entrypoint.
  - Support for Windows Server 2012 and 2012 R2 has been removed
    as the support end of life from Microsoft is October 10th
    2023. These versions of Windows will no longer be tested in
    this Ansible release and it cannot be guaranteed that they
    will continue to work going forward.
  - STRING_CONVERSION_ACTION config option is deprecated as it is
    no longer used in the Ansible Core code base.
  - the 'smart' option for setting a connection plugin is being
    removed as it's main purpose (choosing between ssh and
    paramiko) is now irrelevant.
  - vault and unfault filters - the undocumented vaultid
    parameter is deprecated and will be removed in ansible-core
    2.20. Use vault_id instead.
  - yum_repository - deprecated parameter 'keepcache' (#78693).
  * Removed Features (previously deprecated)
  - ActionBase - remove deprecated _remote_checksum method
  - PlayIterator - remove deprecated cache_block_tasks and
    get_original_task methods
  - Remove deprecated FileLock class
  - Removed Python 3.9 as a supported version on the controller.
    Python 3.10 or newer is required.
  - Removed include which has been deprecated in Ansible 2.12.
    Use include_tasks or import_tasks instead.
  - Templar - remove deprecated shared_loader_obj parameter of
    __init__
  - fetch_url - remove auto disabling decompress when gzip is not
    available
  - get_action_args_with_defaults - remove deprecated
    redirected_names method parameter
  - ansible-test - Removed support for the remote Windows targets
    2012 and 2012-R2
  - inventory_cache - remove deprecated
    default.fact_caching_prefix ini configuration option, use
    defaults.fact_caching_prefix instead.
  - module_utils/basic.py - Removed Python 3.5 as a supported
    remote version. Python 2.7 or Python 3.6+ is now required.
  - stat - removed unused get_md5 parameter.
  * Security Fixes
  - ansible-galaxy - Prevent roles from using symlinks to
    overwrite files outside of the installation directory
    (CVE-2023-5115)
  * Known issues
  - ansible-galaxy - dies in the middle of installing a role when
    that role contains Java inner classes (files with $ in the
    file name). This is by design, to exclude temporary or backup
    files. (#81553).
  - ansible-test - The pep8 sanity test is unable to detect
    f-string spacing issues (E201, E202) on Python 3.10 and 3.11.
    They are correctly detected under Python 3.12. See
    (PyCQA/pycodestyle#1190).</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1705838401">- update to 2.16.1:
  https://github.com/ansible/ansible/blob/v2.16.1/changelogs/CHANGELOG-v2.16.rst
  * Breaking Changes / Porting Guide
  - assert - Nested templating may result in an inability for the
    conditional to be evaluated. See the porting guide for more
    information.
  * Security Fixes
  - templating - Address issues where internal templating can
    cause unsafe variables to lose their unsafe designation
    (CVE-2023-5764)
  * Bugfixes
  - Fix issue where an include_tasks handler in a role was not
    able to locate a file in tasks/ when tasks_from was used as a
    role entry point and main.yml was not present (#82241)
  - Plugin loader does not dedupe nor cache filter/test plugins
    by file basename, but full path name.
  - Restoring the ability of filters/tests can have same file
    base name but different tests/filters defined inside.
  - ansible-pull now will expand relative paths for the
  - d|--directory option is now expanded before use.
  - ansible-pull will now correctly handle become and connection
    password file options for ansible-playbook.
  - flush_handlers - properly handle a handler failure in a
    nested block when force_handlers is set
    (http://github.com/ansible/ansible/issues/81532)
  - module no_log will no longer affect top level booleans, for
    example no_log_module_parameter='a' will no longer hide
    changed=False as a 'no log value' (matches 'a').
  - role params now have higher precedence than host facts again,
    matching documentation, this had unintentionally changed in
    2.15.
  - wait_for should not handle 'non mmapable files' again.</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1705838402">- update to 2.16.2:
  https://github.com/ansible/ansible/blob/v2.16.2/changelogs/CHANGELOG-v2.16.rst
  * Bugfixes
  - unsafe data - Address an incompatibility when iterating or
    getting a single index from AnsibleUnsafeBytes
  - unsafe data - Address an incompatibility with
    AnsibleUnsafeText and AnsibleUnsafeBytes when pickling with
    protocol=0</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1706616000">- update to 2.16.3:
  https://github.com/ansible/ansible/blob/v2.16.3/changelogs/CHANGELOG-v2.16.rst
  * Security Fixes
  - ANSIBLE_NO_LOG - Address issue where ANSIBLE_NO_LOG was
    ignored (CVE-2024-0690)
  * Bugfixes
  - Run all handlers with the same listen topic, even when
    notified from another handler (#82363).
  - ansible-galaxy role import - fix using the role_name in a
    standalone role's galaxy_info metadata by disabling automatic
    removal of the ansible-role- prefix. This matches the
    behavior of the Galaxy UI which also no longer implicitly
    removes the ansible-role- prefix. Use the --role-name option
    or add a role_name to the galaxy_info dictionary in the
    role's meta/main.yml to use an alternate role name.
  - ansible-test sanity --test runtime-metadata - add
    action_plugin as a valid field for modules in the schema
    (#82562).
  - ansible-config init will now dedupe ini entries from plugins.
  - ansible-galaxy role import - exit with 1 when the import
    fails (#82175).
  - ansible-galaxy role install - normalize tarfile paths and
    symlinks using ansible.utils.path.unfrackpath and consider
    them valid as long as the realpath is in the tarfile's role
    directory (#81965).
  - delegate_to when set to an empty or undefined variable will
    now give a proper error.
  - dwim functions for lookups should be better at detectging
    role context even in abscense of tasks/main.
  - roles, code cleanup and performance optimization of
    dependencies, now cached, and public setting is now
    determined once, at role instantiation.
  - roles, the static property is now correctly set, this will
    fix issues with public and DEFAULT_PRIVATE_ROLE_VARS controls
    on exporting vars.
  - unsafe data - Enable directly using AnsibleUnsafeText with
    Python pathlib (#82414)</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1710590400">- update to 2.16.4:
  https://github.com/ansible/ansible/blob/v2.16.4/changelogs/CHANGELOG-v2.16.rst
  * Bugfixes
  - Fix loading vars_plugins in roles (#82239).
  - expect - fix argument spec error using timeout=null (#80982).
  - include_vars - fix calculating depth relative to the root and
    ensure all files are included (#80987).
  - templating - ensure syntax errors originating from a template
    being compiled into Python code object result in a failure
    (#82606)</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1711540800">- update to 2.16.5:
  https://github.com/ansible/ansible/blob/v2.16.5/changelogs/CHANGELOG-v2.16.rst
  * Minor Changes
  - ansible-test - Add a work-around for permission denied errors
    when using pytest &gt;= 8 on multi-user systems with an
    installed version of ansible-test.
  * Bugfixes
  - Fix an issue when setting a plugin name from an unsafe source
    resulted in ValueError: unmarshallable object (#82708)
  - Harden python templates for respawn and ansiballz around str
    literal quoting
  - ansible-test - The libexpat package is automatically upgraded
    during remote bootstrapping to maintain compatibility with
    newer Python packages.
  - template - Fix error when templating an unsafe string which
    corresponds to an invalid type in Python (#82600).
  - winrm - does not hang when attempting to get process output
    when stdin write failed</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1713268800">- adjust spec to new name for PyPI file name (underscore instead of
  hyphen: ansible_core-2.16.6.tar.gz)
- update to 2.16.6:
  https://github.com/ansible/ansible/blob/v2.16.6/changelogs/CHANGELOG-v2.16.rst
  * Bugfixes
  - Consolidated the list of internal static vars, centralized
    them as constant and completed from some missing entries.
  - Fix check for missing `_sub_plugin` attribute in older
    connection plugins (#82954)
  - Fixes permission for cache json file from 600 to 644
    (#82683).
  - Slight optimization to hostvars (instantiate template only
    once per host, vs per call to var).
  - allow_duplicates - fix evaluating if the current role allows
    duplicates instead of using the initial value from the
    duplicate's cached role.
  - ansible-config will now properly template defaults before
    dumping them.
  - ansible-test ansible-doc sanity test - do not remove
    underscores from plugin names in collections before calling
    ansible-doc (#82574).
  - async - Fix bug that stopped running async task in --check
    when check_mode: False was set as a task attribute - #82811
  - blockinfile - when create=true is used with a filename
    without path, the module crashed (#81638).
  - dnf - fix an issue when cached RPMs were left in the cache
    directory even when the keepcache setting was unset (#81954)
  - dnf5 - replace removed API calls
  - facts - add a generic detection for VMware in product name.
  - fetch - add error message when using dest with a trailing
    slash that becomes a local directory - #82878
  - find - do not fail on Permission errors (#82027).
  - unarchive modules now uses zipinfo options without relying on
    implementation defaults, making it more compatible with all
    OS/distributions.
  - winrm - Do not raise another exception during cleanup when a
    task is timed out - #81095</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1716465600">- update to 2.16.7:
  https://github.com/ansible/ansible/blob/v2.16.7/changelogs/CHANGELOG-v2.16.rst
  * Minor Changes
  - ansible.builtin.user - Remove user not found warning (#80267)
  * Bugfixes
  - Add a version ceiling constraint for pypsrp to avoid
    potential breaking changes in the 1.0.0 release.
  - Fix NEVRA parsing of package names that include digit(s) in
    them (#76463, #81018)
  - Fix handlers not being executed in lockstep using the linear
    strategy in some cases (#82307)
  - Give the tombstone error for include pre-fork like other
    tombstoned action/module plugins.
  - Include the task location when a module or action plugin is
    deprecated (#82450).
  - Mirror the behavior of dnf on the command line when handling
    NEVRAs with omitted epoch (#71808)
  - ansible-test - Automatically enable the PyPI proxy for the
    centos7 container to restore the ability to use pip in that
    container.
  - ansible_managed restored it's 'templatability' by ensuring
    the possible injection routes are cut off earlier in the
    process.
  - assemble - fixed missing parameter 'content' in
    `_get_diff_data` API (#82359).
  - dnf - fix an issue when installing a package by specifying a
    file it provides could result in installing a different
    package providing the same file than the package already
    installed resulting in resolution failure (#82461)
  - uri - update the documentation for follow_redirects.</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1718798400">- update to 2.16.8:
  https://github.com/ansible/ansible/blob/v2.16.8/changelogs/CHANGELOG-v2.16.rst
  * Minor Changes
  - ansible-test - Update pypi-test-container to version 3.1.0.
  * Bugfixes
  - Fix the task attribute resolved_action to show the FQCN
    instead of None when action or local_action is used in the
    playbook.
  - Fix using module_defaults with local_action/action (#81905).
  - fixed unit test test_borken_cowsay to address mock not been
    properly applied when existing unix system already have
    cowsay installed.
  - powershell - Implement more robust deletion mechanism for C#
    code compilation temporary files. This should avoid scenarios
    where the underlying temporary directory may be temporarily
    locked by antivirus tools or other IO problems. A failure to
    delete one of these temporary directories will result in a
    warning rather than an outright failure.</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1723032000">- new package ansible-core-2.16 for the 2.16.x version of ansible-core</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1723032001">- update to 2.16.9:
  https://github.com/ansible/ansible/blob/v2.16.9/changelogs/CHANGELOG-v2.16.rst
  * Bugfixes
  - dnf, dnf5 - fix for installing a set of packages by
    specifying them using a wildcard character (#83373)
  - linear strategy now provides a properly templated task name
    to the v2_runner_on_started callback event.
  - templating hostvars under native jinja will not cause
    serialization errors anymore.</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1723118400">- also make ansible-test a versioned subpackage</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1723550400">- update to 2.16.10:
  https://github.com/ansible/ansible/blob/v2.16.10/changelogs/CHANGELOG-v2.16.rst
  * Minor Changes
  - ansible-test - Improve the error message shown when an
    unknown --remote or --docker option is given.
  - ansible-test - Removed the vyos/1.1.8 network remote as it is
    no longer functional.
  * Bugfixes
  - config, restored the ability to set module compression via a
    variable
  - linear strategy: fix handlers included via include_tasks
    handler to be executed in lockstep (#83019)</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1726056000">- update to 2.16.11:
  https://github.com/ansible/ansible/blob/v2.16.11/changelogs/CHANGELOG-v2.16.rst
  * Bugfixes
  - Fix SemanticVersion.parse() to store the version string so
    that __repr__ reports it instead of None (#83831).
  - Fix an issue where registered variable was not available for
    templating in loop_control.label on skipped looped tasks
    (#83619)
  - Fix for meta tasks breaking host/fork affinity with
    host_pinned strategy (#83294)
  - Fix using the current task's directory for looking up
    relative paths within roles (#82695).
  - atomic_move - fix using the setgid bit on the parent
    directory when creating files (#46742, #67177).
  - connection plugins using the 'extras' option feature would
    need variables to match the plugin's loaded name, sometimes
    requiring fqcn, which is not the same as the
    documented/declared/expected variables. Now we fall back to
    the 'basename' of the fqcn, but plugin authors can still set
    the expected value directly.
  - csvfile lookup - give an error when no search term is
    provided using modern config syntax (#83689).
  - include_tasks - Display location when attempting to load a
    task list where include_* did not specify any value - #83874
  - module respawn - Address an issue with Python 2 where a
    respawned module could not parse module args (#83812)
  - powershell - Improve CLIXML decoding to decode all control
    characters and unicode characters that are encoded as
    surrogate pairs.
  - psrp - Fix bug when attempting to fetch a file path that
    contains special glob characters like []
  - runtime-metadata sanity test - do not crash on deprecations
    if galaxy.yml contains an empty version field (#83831).
  - ssh - Fix bug when attempting to fetch a file path with
    characters that should be quoted when using the piped
    transfer method</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1728648000">- update to 2.16.12:
  https://github.com/ansible/ansible/blob/v2.16.12/changelogs/CHANGELOG-v2.16.rst
  * Bugfixes
  - Add descriptions for ansible-galaxy install --help` and
    `ansible-galaxy role|collection install --help`.
  - ansible-galaxy install --help - Fix the usage text and
    document that the requirements file passed to -r can include
    collections and roles.
  - dnf5 - re-introduce the state: installed alias to state:
    present (#83960)</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1731585600">- update to 2.16.13:
  https://github.com/ansible/ansible/blob/v2.16.13/changelogs/CHANGELOG-v2.16.rst
  * Minor Changes
  - ansible-test - Improve container runtime probe error
    handling. When unexpected probe output is encountered, an
    error with more useful debugging information is provided.
  * Security Fixes
  - include_vars action - Ensure that result masking is correctly
    requested when vault-encrypted files are read.
    (CVE-2024-8775)
  - task result processing - Ensure that action-sourced result
    masking (_ansible_no_log=True) is preserved. (CVE-2024-8775)
  - user action won't allow ssh-keygen, chown and chmod to run on
    existing ssh public key file, avoiding traversal on existing
    symlinks (CVE-2024-9902).
  * Bugfixes
  - Improve performance on large inventories by reducing the
    number of implicit meta tasks.
  - ansible-test - Enable the sys.unraisablehook work-around for
    the pylint sanity test on Python 3.11. Previously the
    work-around was only enabled for Python 3.12 and later.
    However, the same issue has been discovered on Python 3.11.</changelog>
</package>
<package pkgid="dd983827de80e0ab615ab6df443a6366c10c63e6a463982c1d16d098abf3fc9f307a8d6382e8ff2c4f28a22363c657be387044ab92aaef9854d241ad848447a7" name="ansible-test-2.16" arch="noarch">
  <version epoch="0" ver="2.16.13" rel="2.0.4.1.sr20241103"/>
  <changelog author="Johannes Kastl &lt;kastl@b1-systems.de&gt;" date="1699358400">- update to 2.15.6:
  * Minor Changes
  - ansible-test - Windows 2012 and 2012-R2 instances are now
    requested from Azure instead of AWS.
  * Bugfixes
  - Fix run_once being incorrectly interpreted on handlers
    (#81666)
  - Plugin loader does not dedupe nor cache filter/test plugins
    by file basename, but full path name.
  - Properly template tags in parent blocks (#81053)
  - Restoring the ability of filters/tests can have same file
    base name but different tests/filters defined inside.
  - import_role reverts to previous behavior of exporting vars at
    compile time.
  - ansible-galaxy - Provide a better error message when using a
    requirements file with an invalid format - #81901
  - ansible-inventory - index available_hosts for major
    performance boost when dumping large inventories
  - ansible-test - Fix parsing of cgroup entries which contain a
    : in the path (#81977).</changelog>
  <changelog author="Johannes Kastl &lt;kastl@b1-systems.de&gt;" date="1701777600">- update to 2.15.7:
  This release includes a fix for CVE-2023-5764, where internal
  templating actions could result in unsafe data losing its unsafe
  designation.
  * Breaking Changes / Porting Guide
  - assert - Nested templating may result in an inability for the
    conditional to be evaluated. See the porting guide for more
    information.
  * Security Fixes
  - templating - Address issues where internal templating can
    cause unsafe variables to lose their unsafe designation
    (CVE-2023-5764)
  * Bugfixes
  - ansible-pull now will expand relative paths for the
  - d|--directory option is now expanded before use.
  - flush_handlers - properly handle a handler failure in a
    nested block when force_handlers is set
    (http://github.com/ansible/ansible/issues/81532)
  - module no_log will no longer affect top level booleans, for
    example no_log_module_parameter='a' will no longer hide
    changed=False as a 'no log value' (matches 'a').
  - modules/user.py - Add check for valid directory when creating
    new user homedir (allows /dev/null as skeleton) (#75063)
  - role params now have higher precedence than host facts again,
    matching documentation, this had unintentionally changed in
    2.15.
  - wait_for should not handle 'non mmapable files' again.</changelog>
  <changelog author="Johannes Kastl &lt;kastl@b1-systems.de&gt;" date="1702382400">- update to 2.15.8:
  * Minor Changes
  - ansible-test - Add FreeBSD 13.2 remote.
  - ansible-test - Removed freebsd/13.1 remote.
  * Bugfixes
  - unsafe data - Address an incompatibility when iterating or
    getting a single index from AnsibleUnsafeBytes
  - unsafe data - Address an incompatibility with
    AnsibleUnsafeText and AnsibleUnsafeBytes when pickling with
    protocol=0</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1705838400">- update to 2.16.0:
  https://github.com/ansible/ansible/blob/v2.16.0/changelogs/CHANGELOG-v2.16.rst
  * Bugfixes and Minor changes omitted for brevity, see full
    changelog
  * Breaking Changes / Porting Guide
  - Any plugin using the config system and the cli entry to use
    the timeout from the command line, will see the value change
    if the use had configured it in any of the lower precedence
    methods. If relying on this behaviour to consume the
    global/generic timeout from the DEFAULT_TIMEOUT constant,
    please consult the documentation on plugin configuration to
    add the overlaping entries.
  - ansible-test - Test plugins that rely on containers no longer
    support reusing running containers. The previous behavior was
    an undocumented, untested feature.
  - service module will not permanently configure variables/flags
    for openbsd when doing enable/disable operation anymore, this
    module was never meant to do this type of work, just to
    manage the service state itself. A rcctl_config or similar
    module should be created and used instead.
  * Deprecated Features
  - Deprecated ini config option collections_paths, use the
    singular form collections_path instead
  - Deprecated the env var ANSIBLE_COLLECTIONS_PATHS, use the
    singular form ANSIBLE_COLLECTIONS_PATH instead
  - Old style vars plugins which use the entrypoints
    get_host_vars or get_group_vars are deprecated. The plugin
    should be updated to inherit from BaseVarsPlugin and define a
    get_vars method as the entrypoint.
  - Support for Windows Server 2012 and 2012 R2 has been removed
    as the support end of life from Microsoft is October 10th
    2023. These versions of Windows will no longer be tested in
    this Ansible release and it cannot be guaranteed that they
    will continue to work going forward.
  - STRING_CONVERSION_ACTION config option is deprecated as it is
    no longer used in the Ansible Core code base.
  - the 'smart' option for setting a connection plugin is being
    removed as it's main purpose (choosing between ssh and
    paramiko) is now irrelevant.
  - vault and unfault filters - the undocumented vaultid
    parameter is deprecated and will be removed in ansible-core
    2.20. Use vault_id instead.
  - yum_repository - deprecated parameter 'keepcache' (#78693).
  * Removed Features (previously deprecated)
  - ActionBase - remove deprecated _remote_checksum method
  - PlayIterator - remove deprecated cache_block_tasks and
    get_original_task methods
  - Remove deprecated FileLock class
  - Removed Python 3.9 as a supported version on the controller.
    Python 3.10 or newer is required.
  - Removed include which has been deprecated in Ansible 2.12.
    Use include_tasks or import_tasks instead.
  - Templar - remove deprecated shared_loader_obj parameter of
    __init__
  - fetch_url - remove auto disabling decompress when gzip is not
    available
  - get_action_args_with_defaults - remove deprecated
    redirected_names method parameter
  - ansible-test - Removed support for the remote Windows targets
    2012 and 2012-R2
  - inventory_cache - remove deprecated
    default.fact_caching_prefix ini configuration option, use
    defaults.fact_caching_prefix instead.
  - module_utils/basic.py - Removed Python 3.5 as a supported
    remote version. Python 2.7 or Python 3.6+ is now required.
  - stat - removed unused get_md5 parameter.
  * Security Fixes
  - ansible-galaxy - Prevent roles from using symlinks to
    overwrite files outside of the installation directory
    (CVE-2023-5115)
  * Known issues
  - ansible-galaxy - dies in the middle of installing a role when
    that role contains Java inner classes (files with $ in the
    file name). This is by design, to exclude temporary or backup
    files. (#81553).
  - ansible-test - The pep8 sanity test is unable to detect
    f-string spacing issues (E201, E202) on Python 3.10 and 3.11.
    They are correctly detected under Python 3.12. See
    (PyCQA/pycodestyle#1190).</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1705838401">- update to 2.16.1:
  https://github.com/ansible/ansible/blob/v2.16.1/changelogs/CHANGELOG-v2.16.rst
  * Breaking Changes / Porting Guide
  - assert - Nested templating may result in an inability for the
    conditional to be evaluated. See the porting guide for more
    information.
  * Security Fixes
  - templating - Address issues where internal templating can
    cause unsafe variables to lose their unsafe designation
    (CVE-2023-5764)
  * Bugfixes
  - Fix issue where an include_tasks handler in a role was not
    able to locate a file in tasks/ when tasks_from was used as a
    role entry point and main.yml was not present (#82241)
  - Plugin loader does not dedupe nor cache filter/test plugins
    by file basename, but full path name.
  - Restoring the ability of filters/tests can have same file
    base name but different tests/filters defined inside.
  - ansible-pull now will expand relative paths for the
  - d|--directory option is now expanded before use.
  - ansible-pull will now correctly handle become and connection
    password file options for ansible-playbook.
  - flush_handlers - properly handle a handler failure in a
    nested block when force_handlers is set
    (http://github.com/ansible/ansible/issues/81532)
  - module no_log will no longer affect top level booleans, for
    example no_log_module_parameter='a' will no longer hide
    changed=False as a 'no log value' (matches 'a').
  - role params now have higher precedence than host facts again,
    matching documentation, this had unintentionally changed in
    2.15.
  - wait_for should not handle 'non mmapable files' again.</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1705838402">- update to 2.16.2:
  https://github.com/ansible/ansible/blob/v2.16.2/changelogs/CHANGELOG-v2.16.rst
  * Bugfixes
  - unsafe data - Address an incompatibility when iterating or
    getting a single index from AnsibleUnsafeBytes
  - unsafe data - Address an incompatibility with
    AnsibleUnsafeText and AnsibleUnsafeBytes when pickling with
    protocol=0</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1706616000">- update to 2.16.3:
  https://github.com/ansible/ansible/blob/v2.16.3/changelogs/CHANGELOG-v2.16.rst
  * Security Fixes
  - ANSIBLE_NO_LOG - Address issue where ANSIBLE_NO_LOG was
    ignored (CVE-2024-0690)
  * Bugfixes
  - Run all handlers with the same listen topic, even when
    notified from another handler (#82363).
  - ansible-galaxy role import - fix using the role_name in a
    standalone role's galaxy_info metadata by disabling automatic
    removal of the ansible-role- prefix. This matches the
    behavior of the Galaxy UI which also no longer implicitly
    removes the ansible-role- prefix. Use the --role-name option
    or add a role_name to the galaxy_info dictionary in the
    role's meta/main.yml to use an alternate role name.
  - ansible-test sanity --test runtime-metadata - add
    action_plugin as a valid field for modules in the schema
    (#82562).
  - ansible-config init will now dedupe ini entries from plugins.
  - ansible-galaxy role import - exit with 1 when the import
    fails (#82175).
  - ansible-galaxy role install - normalize tarfile paths and
    symlinks using ansible.utils.path.unfrackpath and consider
    them valid as long as the realpath is in the tarfile's role
    directory (#81965).
  - delegate_to when set to an empty or undefined variable will
    now give a proper error.
  - dwim functions for lookups should be better at detectging
    role context even in abscense of tasks/main.
  - roles, code cleanup and performance optimization of
    dependencies, now cached, and public setting is now
    determined once, at role instantiation.
  - roles, the static property is now correctly set, this will
    fix issues with public and DEFAULT_PRIVATE_ROLE_VARS controls
    on exporting vars.
  - unsafe data - Enable directly using AnsibleUnsafeText with
    Python pathlib (#82414)</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1710590400">- update to 2.16.4:
  https://github.com/ansible/ansible/blob/v2.16.4/changelogs/CHANGELOG-v2.16.rst
  * Bugfixes
  - Fix loading vars_plugins in roles (#82239).
  - expect - fix argument spec error using timeout=null (#80982).
  - include_vars - fix calculating depth relative to the root and
    ensure all files are included (#80987).
  - templating - ensure syntax errors originating from a template
    being compiled into Python code object result in a failure
    (#82606)</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1711540800">- update to 2.16.5:
  https://github.com/ansible/ansible/blob/v2.16.5/changelogs/CHANGELOG-v2.16.rst
  * Minor Changes
  - ansible-test - Add a work-around for permission denied errors
    when using pytest &gt;= 8 on multi-user systems with an
    installed version of ansible-test.
  * Bugfixes
  - Fix an issue when setting a plugin name from an unsafe source
    resulted in ValueError: unmarshallable object (#82708)
  - Harden python templates for respawn and ansiballz around str
    literal quoting
  - ansible-test - The libexpat package is automatically upgraded
    during remote bootstrapping to maintain compatibility with
    newer Python packages.
  - template - Fix error when templating an unsafe string which
    corresponds to an invalid type in Python (#82600).
  - winrm - does not hang when attempting to get process output
    when stdin write failed</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1713268800">- adjust spec to new name for PyPI file name (underscore instead of
  hyphen: ansible_core-2.16.6.tar.gz)
- update to 2.16.6:
  https://github.com/ansible/ansible/blob/v2.16.6/changelogs/CHANGELOG-v2.16.rst
  * Bugfixes
  - Consolidated the list of internal static vars, centralized
    them as constant and completed from some missing entries.
  - Fix check for missing `_sub_plugin` attribute in older
    connection plugins (#82954)
  - Fixes permission for cache json file from 600 to 644
    (#82683).
  - Slight optimization to hostvars (instantiate template only
    once per host, vs per call to var).
  - allow_duplicates - fix evaluating if the current role allows
    duplicates instead of using the initial value from the
    duplicate's cached role.
  - ansible-config will now properly template defaults before
    dumping them.
  - ansible-test ansible-doc sanity test - do not remove
    underscores from plugin names in collections before calling
    ansible-doc (#82574).
  - async - Fix bug that stopped running async task in --check
    when check_mode: False was set as a task attribute - #82811
  - blockinfile - when create=true is used with a filename
    without path, the module crashed (#81638).
  - dnf - fix an issue when cached RPMs were left in the cache
    directory even when the keepcache setting was unset (#81954)
  - dnf5 - replace removed API calls
  - facts - add a generic detection for VMware in product name.
  - fetch - add error message when using dest with a trailing
    slash that becomes a local directory - #82878
  - find - do not fail on Permission errors (#82027).
  - unarchive modules now uses zipinfo options without relying on
    implementation defaults, making it more compatible with all
    OS/distributions.
  - winrm - Do not raise another exception during cleanup when a
    task is timed out - #81095</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1716465600">- update to 2.16.7:
  https://github.com/ansible/ansible/blob/v2.16.7/changelogs/CHANGELOG-v2.16.rst
  * Minor Changes
  - ansible.builtin.user - Remove user not found warning (#80267)
  * Bugfixes
  - Add a version ceiling constraint for pypsrp to avoid
    potential breaking changes in the 1.0.0 release.
  - Fix NEVRA parsing of package names that include digit(s) in
    them (#76463, #81018)
  - Fix handlers not being executed in lockstep using the linear
    strategy in some cases (#82307)
  - Give the tombstone error for include pre-fork like other
    tombstoned action/module plugins.
  - Include the task location when a module or action plugin is
    deprecated (#82450).
  - Mirror the behavior of dnf on the command line when handling
    NEVRAs with omitted epoch (#71808)
  - ansible-test - Automatically enable the PyPI proxy for the
    centos7 container to restore the ability to use pip in that
    container.
  - ansible_managed restored it's 'templatability' by ensuring
    the possible injection routes are cut off earlier in the
    process.
  - assemble - fixed missing parameter 'content' in
    `_get_diff_data` API (#82359).
  - dnf - fix an issue when installing a package by specifying a
    file it provides could result in installing a different
    package providing the same file than the package already
    installed resulting in resolution failure (#82461)
  - uri - update the documentation for follow_redirects.</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1718798400">- update to 2.16.8:
  https://github.com/ansible/ansible/blob/v2.16.8/changelogs/CHANGELOG-v2.16.rst
  * Minor Changes
  - ansible-test - Update pypi-test-container to version 3.1.0.
  * Bugfixes
  - Fix the task attribute resolved_action to show the FQCN
    instead of None when action or local_action is used in the
    playbook.
  - Fix using module_defaults with local_action/action (#81905).
  - fixed unit test test_borken_cowsay to address mock not been
    properly applied when existing unix system already have
    cowsay installed.
  - powershell - Implement more robust deletion mechanism for C#
    code compilation temporary files. This should avoid scenarios
    where the underlying temporary directory may be temporarily
    locked by antivirus tools or other IO problems. A failure to
    delete one of these temporary directories will result in a
    warning rather than an outright failure.</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1723032000">- new package ansible-core-2.16 for the 2.16.x version of ansible-core</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1723032001">- update to 2.16.9:
  https://github.com/ansible/ansible/blob/v2.16.9/changelogs/CHANGELOG-v2.16.rst
  * Bugfixes
  - dnf, dnf5 - fix for installing a set of packages by
    specifying them using a wildcard character (#83373)
  - linear strategy now provides a properly templated task name
    to the v2_runner_on_started callback event.
  - templating hostvars under native jinja will not cause
    serialization errors anymore.</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1723118400">- also make ansible-test a versioned subpackage</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1723550400">- update to 2.16.10:
  https://github.com/ansible/ansible/blob/v2.16.10/changelogs/CHANGELOG-v2.16.rst
  * Minor Changes
  - ansible-test - Improve the error message shown when an
    unknown --remote or --docker option is given.
  - ansible-test - Removed the vyos/1.1.8 network remote as it is
    no longer functional.
  * Bugfixes
  - config, restored the ability to set module compression via a
    variable
  - linear strategy: fix handlers included via include_tasks
    handler to be executed in lockstep (#83019)</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1726056000">- update to 2.16.11:
  https://github.com/ansible/ansible/blob/v2.16.11/changelogs/CHANGELOG-v2.16.rst
  * Bugfixes
  - Fix SemanticVersion.parse() to store the version string so
    that __repr__ reports it instead of None (#83831).
  - Fix an issue where registered variable was not available for
    templating in loop_control.label on skipped looped tasks
    (#83619)
  - Fix for meta tasks breaking host/fork affinity with
    host_pinned strategy (#83294)
  - Fix using the current task's directory for looking up
    relative paths within roles (#82695).
  - atomic_move - fix using the setgid bit on the parent
    directory when creating files (#46742, #67177).
  - connection plugins using the 'extras' option feature would
    need variables to match the plugin's loaded name, sometimes
    requiring fqcn, which is not the same as the
    documented/declared/expected variables. Now we fall back to
    the 'basename' of the fqcn, but plugin authors can still set
    the expected value directly.
  - csvfile lookup - give an error when no search term is
    provided using modern config syntax (#83689).
  - include_tasks - Display location when attempting to load a
    task list where include_* did not specify any value - #83874
  - module respawn - Address an issue with Python 2 where a
    respawned module could not parse module args (#83812)
  - powershell - Improve CLIXML decoding to decode all control
    characters and unicode characters that are encoded as
    surrogate pairs.
  - psrp - Fix bug when attempting to fetch a file path that
    contains special glob characters like []
  - runtime-metadata sanity test - do not crash on deprecations
    if galaxy.yml contains an empty version field (#83831).
  - ssh - Fix bug when attempting to fetch a file path with
    characters that should be quoted when using the piped
    transfer method</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1728648000">- update to 2.16.12:
  https://github.com/ansible/ansible/blob/v2.16.12/changelogs/CHANGELOG-v2.16.rst
  * Bugfixes
  - Add descriptions for ansible-galaxy install --help` and
    `ansible-galaxy role|collection install --help`.
  - ansible-galaxy install --help - Fix the usage text and
    document that the requirements file passed to -r can include
    collections and roles.
  - dnf5 - re-introduce the state: installed alias to state:
    present (#83960)</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1731585600">- update to 2.16.13:
  https://github.com/ansible/ansible/blob/v2.16.13/changelogs/CHANGELOG-v2.16.rst
  * Minor Changes
  - ansible-test - Improve container runtime probe error
    handling. When unexpected probe output is encountered, an
    error with more useful debugging information is provided.
  * Security Fixes
  - include_vars action - Ensure that result masking is correctly
    requested when vault-encrypted files are read.
    (CVE-2024-8775)
  - task result processing - Ensure that action-sourced result
    masking (_ansible_no_log=True) is preserved. (CVE-2024-8775)
  - user action won't allow ssh-keygen, chown and chmod to run on
    existing ssh public key file, avoiding traversal on existing
    symlinks (CVE-2024-9902).
  * Bugfixes
  - Improve performance on large inventories by reducing the
    number of implicit meta tasks.
  - ansible-test - Enable the sys.unraisablehook work-around for
    the pylint sanity test on Python 3.11. Previously the
    work-around was only enabled for Python 3.12 and later.
    However, the same issue has been discovered on Python 3.11.</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1732276800">- Backport patch to relax resolvelib dependency:
  771f7ad29ca4d259761eaa88673c2e32f6412bbe.patch
- Added necessary test dependencies: pytest-xdist, pytest-mock,
  pytz, passlib, git-core, and openssh to ensure proper test
  execution.
- Introduced the `ansible_python_version` variable and updated the
  test command.</changelog>
</package>
<package pkgid="f01c27f21f548faf021056ec05d863abfb41dcfaf7782cbca2b7824dd72c65ddddf14d1589ec06e1efcf7c45b28a2e8e47a8e4e7294c694f9f245f57b2c331bb" name="ansible-test-2.16" arch="noarch">
  <version epoch="0" ver="2.16.14" rel="1.0.6.1.sr20241103"/>
  <changelog author="Johannes Kastl &lt;kastl@b1-systems.de&gt;" date="1702382400">- update to 2.15.8:
  * Minor Changes
  - ansible-test - Add FreeBSD 13.2 remote.
  - ansible-test - Removed freebsd/13.1 remote.
  * Bugfixes
  - unsafe data - Address an incompatibility when iterating or
    getting a single index from AnsibleUnsafeBytes
  - unsafe data - Address an incompatibility with
    AnsibleUnsafeText and AnsibleUnsafeBytes when pickling with
    protocol=0</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1705838400">- update to 2.16.0:
  https://github.com/ansible/ansible/blob/v2.16.0/changelogs/CHANGELOG-v2.16.rst
  * Bugfixes and Minor changes omitted for brevity, see full
    changelog
  * Breaking Changes / Porting Guide
  - Any plugin using the config system and the cli entry to use
    the timeout from the command line, will see the value change
    if the use had configured it in any of the lower precedence
    methods. If relying on this behaviour to consume the
    global/generic timeout from the DEFAULT_TIMEOUT constant,
    please consult the documentation on plugin configuration to
    add the overlaping entries.
  - ansible-test - Test plugins that rely on containers no longer
    support reusing running containers. The previous behavior was
    an undocumented, untested feature.
  - service module will not permanently configure variables/flags
    for openbsd when doing enable/disable operation anymore, this
    module was never meant to do this type of work, just to
    manage the service state itself. A rcctl_config or similar
    module should be created and used instead.
  * Deprecated Features
  - Deprecated ini config option collections_paths, use the
    singular form collections_path instead
  - Deprecated the env var ANSIBLE_COLLECTIONS_PATHS, use the
    singular form ANSIBLE_COLLECTIONS_PATH instead
  - Old style vars plugins which use the entrypoints
    get_host_vars or get_group_vars are deprecated. The plugin
    should be updated to inherit from BaseVarsPlugin and define a
    get_vars method as the entrypoint.
  - Support for Windows Server 2012 and 2012 R2 has been removed
    as the support end of life from Microsoft is October 10th
    2023. These versions of Windows will no longer be tested in
    this Ansible release and it cannot be guaranteed that they
    will continue to work going forward.
  - STRING_CONVERSION_ACTION config option is deprecated as it is
    no longer used in the Ansible Core code base.
  - the 'smart' option for setting a connection plugin is being
    removed as it's main purpose (choosing between ssh and
    paramiko) is now irrelevant.
  - vault and unfault filters - the undocumented vaultid
    parameter is deprecated and will be removed in ansible-core
    2.20. Use vault_id instead.
  - yum_repository - deprecated parameter 'keepcache' (#78693).
  * Removed Features (previously deprecated)
  - ActionBase - remove deprecated _remote_checksum method
  - PlayIterator - remove deprecated cache_block_tasks and
    get_original_task methods
  - Remove deprecated FileLock class
  - Removed Python 3.9 as a supported version on the controller.
    Python 3.10 or newer is required.
  - Removed include which has been deprecated in Ansible 2.12.
    Use include_tasks or import_tasks instead.
  - Templar - remove deprecated shared_loader_obj parameter of
    __init__
  - fetch_url - remove auto disabling decompress when gzip is not
    available
  - get_action_args_with_defaults - remove deprecated
    redirected_names method parameter
  - ansible-test - Removed support for the remote Windows targets
    2012 and 2012-R2
  - inventory_cache - remove deprecated
    default.fact_caching_prefix ini configuration option, use
    defaults.fact_caching_prefix instead.
  - module_utils/basic.py - Removed Python 3.5 as a supported
    remote version. Python 2.7 or Python 3.6+ is now required.
  - stat - removed unused get_md5 parameter.
  * Security Fixes
  - ansible-galaxy - Prevent roles from using symlinks to
    overwrite files outside of the installation directory
    (CVE-2023-5115)
  * Known issues
  - ansible-galaxy - dies in the middle of installing a role when
    that role contains Java inner classes (files with $ in the
    file name). This is by design, to exclude temporary or backup
    files. (#81553).
  - ansible-test - The pep8 sanity test is unable to detect
    f-string spacing issues (E201, E202) on Python 3.10 and 3.11.
    They are correctly detected under Python 3.12. See
    (PyCQA/pycodestyle#1190).</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1705838401">- update to 2.16.1:
  https://github.com/ansible/ansible/blob/v2.16.1/changelogs/CHANGELOG-v2.16.rst
  * Breaking Changes / Porting Guide
  - assert - Nested templating may result in an inability for the
    conditional to be evaluated. See the porting guide for more
    information.
  * Security Fixes
  - templating - Address issues where internal templating can
    cause unsafe variables to lose their unsafe designation
    (CVE-2023-5764)
  * Bugfixes
  - Fix issue where an include_tasks handler in a role was not
    able to locate a file in tasks/ when tasks_from was used as a
    role entry point and main.yml was not present (#82241)
  - Plugin loader does not dedupe nor cache filter/test plugins
    by file basename, but full path name.
  - Restoring the ability of filters/tests can have same file
    base name but different tests/filters defined inside.
  - ansible-pull now will expand relative paths for the
  - d|--directory option is now expanded before use.
  - ansible-pull will now correctly handle become and connection
    password file options for ansible-playbook.
  - flush_handlers - properly handle a handler failure in a
    nested block when force_handlers is set
    (http://github.com/ansible/ansible/issues/81532)
  - module no_log will no longer affect top level booleans, for
    example no_log_module_parameter='a' will no longer hide
    changed=False as a 'no log value' (matches 'a').
  - role params now have higher precedence than host facts again,
    matching documentation, this had unintentionally changed in
    2.15.
  - wait_for should not handle 'non mmapable files' again.</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1705838402">- update to 2.16.2:
  https://github.com/ansible/ansible/blob/v2.16.2/changelogs/CHANGELOG-v2.16.rst
  * Bugfixes
  - unsafe data - Address an incompatibility when iterating or
    getting a single index from AnsibleUnsafeBytes
  - unsafe data - Address an incompatibility with
    AnsibleUnsafeText and AnsibleUnsafeBytes when pickling with
    protocol=0</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1706616000">- update to 2.16.3:
  https://github.com/ansible/ansible/blob/v2.16.3/changelogs/CHANGELOG-v2.16.rst
  * Security Fixes
  - ANSIBLE_NO_LOG - Address issue where ANSIBLE_NO_LOG was
    ignored (CVE-2024-0690)
  * Bugfixes
  - Run all handlers with the same listen topic, even when
    notified from another handler (#82363).
  - ansible-galaxy role import - fix using the role_name in a
    standalone role's galaxy_info metadata by disabling automatic
    removal of the ansible-role- prefix. This matches the
    behavior of the Galaxy UI which also no longer implicitly
    removes the ansible-role- prefix. Use the --role-name option
    or add a role_name to the galaxy_info dictionary in the
    role's meta/main.yml to use an alternate role name.
  - ansible-test sanity --test runtime-metadata - add
    action_plugin as a valid field for modules in the schema
    (#82562).
  - ansible-config init will now dedupe ini entries from plugins.
  - ansible-galaxy role import - exit with 1 when the import
    fails (#82175).
  - ansible-galaxy role install - normalize tarfile paths and
    symlinks using ansible.utils.path.unfrackpath and consider
    them valid as long as the realpath is in the tarfile's role
    directory (#81965).
  - delegate_to when set to an empty or undefined variable will
    now give a proper error.
  - dwim functions for lookups should be better at detectging
    role context even in abscense of tasks/main.
  - roles, code cleanup and performance optimization of
    dependencies, now cached, and public setting is now
    determined once, at role instantiation.
  - roles, the static property is now correctly set, this will
    fix issues with public and DEFAULT_PRIVATE_ROLE_VARS controls
    on exporting vars.
  - unsafe data - Enable directly using AnsibleUnsafeText with
    Python pathlib (#82414)</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1710590400">- update to 2.16.4:
  https://github.com/ansible/ansible/blob/v2.16.4/changelogs/CHANGELOG-v2.16.rst
  * Bugfixes
  - Fix loading vars_plugins in roles (#82239).
  - expect - fix argument spec error using timeout=null (#80982).
  - include_vars - fix calculating depth relative to the root and
    ensure all files are included (#80987).
  - templating - ensure syntax errors originating from a template
    being compiled into Python code object result in a failure
    (#82606)</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1711540800">- update to 2.16.5:
  https://github.com/ansible/ansible/blob/v2.16.5/changelogs/CHANGELOG-v2.16.rst
  * Minor Changes
  - ansible-test - Add a work-around for permission denied errors
    when using pytest &gt;= 8 on multi-user systems with an
    installed version of ansible-test.
  * Bugfixes
  - Fix an issue when setting a plugin name from an unsafe source
    resulted in ValueError: unmarshallable object (#82708)
  - Harden python templates for respawn and ansiballz around str
    literal quoting
  - ansible-test - The libexpat package is automatically upgraded
    during remote bootstrapping to maintain compatibility with
    newer Python packages.
  - template - Fix error when templating an unsafe string which
    corresponds to an invalid type in Python (#82600).
  - winrm - does not hang when attempting to get process output
    when stdin write failed</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1713268800">- adjust spec to new name for PyPI file name (underscore instead of
  hyphen: ansible_core-2.16.6.tar.gz)
- update to 2.16.6:
  https://github.com/ansible/ansible/blob/v2.16.6/changelogs/CHANGELOG-v2.16.rst
  * Bugfixes
  - Consolidated the list of internal static vars, centralized
    them as constant and completed from some missing entries.
  - Fix check for missing `_sub_plugin` attribute in older
    connection plugins (#82954)
  - Fixes permission for cache json file from 600 to 644
    (#82683).
  - Slight optimization to hostvars (instantiate template only
    once per host, vs per call to var).
  - allow_duplicates - fix evaluating if the current role allows
    duplicates instead of using the initial value from the
    duplicate's cached role.
  - ansible-config will now properly template defaults before
    dumping them.
  - ansible-test ansible-doc sanity test - do not remove
    underscores from plugin names in collections before calling
    ansible-doc (#82574).
  - async - Fix bug that stopped running async task in --check
    when check_mode: False was set as a task attribute - #82811
  - blockinfile - when create=true is used with a filename
    without path, the module crashed (#81638).
  - dnf - fix an issue when cached RPMs were left in the cache
    directory even when the keepcache setting was unset (#81954)
  - dnf5 - replace removed API calls
  - facts - add a generic detection for VMware in product name.
  - fetch - add error message when using dest with a trailing
    slash that becomes a local directory - #82878
  - find - do not fail on Permission errors (#82027).
  - unarchive modules now uses zipinfo options without relying on
    implementation defaults, making it more compatible with all
    OS/distributions.
  - winrm - Do not raise another exception during cleanup when a
    task is timed out - #81095</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1716465600">- update to 2.16.7:
  https://github.com/ansible/ansible/blob/v2.16.7/changelogs/CHANGELOG-v2.16.rst
  * Minor Changes
  - ansible.builtin.user - Remove user not found warning (#80267)
  * Bugfixes
  - Add a version ceiling constraint for pypsrp to avoid
    potential breaking changes in the 1.0.0 release.
  - Fix NEVRA parsing of package names that include digit(s) in
    them (#76463, #81018)
  - Fix handlers not being executed in lockstep using the linear
    strategy in some cases (#82307)
  - Give the tombstone error for include pre-fork like other
    tombstoned action/module plugins.
  - Include the task location when a module or action plugin is
    deprecated (#82450).
  - Mirror the behavior of dnf on the command line when handling
    NEVRAs with omitted epoch (#71808)
  - ansible-test - Automatically enable the PyPI proxy for the
    centos7 container to restore the ability to use pip in that
    container.
  - ansible_managed restored it's 'templatability' by ensuring
    the possible injection routes are cut off earlier in the
    process.
  - assemble - fixed missing parameter 'content' in
    `_get_diff_data` API (#82359).
  - dnf - fix an issue when installing a package by specifying a
    file it provides could result in installing a different
    package providing the same file than the package already
    installed resulting in resolution failure (#82461)
  - uri - update the documentation for follow_redirects.</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1718798400">- update to 2.16.8:
  https://github.com/ansible/ansible/blob/v2.16.8/changelogs/CHANGELOG-v2.16.rst
  * Minor Changes
  - ansible-test - Update pypi-test-container to version 3.1.0.
  * Bugfixes
  - Fix the task attribute resolved_action to show the FQCN
    instead of None when action or local_action is used in the
    playbook.
  - Fix using module_defaults with local_action/action (#81905).
  - fixed unit test test_borken_cowsay to address mock not been
    properly applied when existing unix system already have
    cowsay installed.
  - powershell - Implement more robust deletion mechanism for C#
    code compilation temporary files. This should avoid scenarios
    where the underlying temporary directory may be temporarily
    locked by antivirus tools or other IO problems. A failure to
    delete one of these temporary directories will result in a
    warning rather than an outright failure.</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1723032000">- new package ansible-core-2.16 for the 2.16.x version of ansible-core</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1723032001">- update to 2.16.9:
  https://github.com/ansible/ansible/blob/v2.16.9/changelogs/CHANGELOG-v2.16.rst
  * Bugfixes
  - dnf, dnf5 - fix for installing a set of packages by
    specifying them using a wildcard character (#83373)
  - linear strategy now provides a properly templated task name
    to the v2_runner_on_started callback event.
  - templating hostvars under native jinja will not cause
    serialization errors anymore.</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1723118400">- also make ansible-test a versioned subpackage</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1723550400">- update to 2.16.10:
  https://github.com/ansible/ansible/blob/v2.16.10/changelogs/CHANGELOG-v2.16.rst
  * Minor Changes
  - ansible-test - Improve the error message shown when an
    unknown --remote or --docker option is given.
  - ansible-test - Removed the vyos/1.1.8 network remote as it is
    no longer functional.
  * Bugfixes
  - config, restored the ability to set module compression via a
    variable
  - linear strategy: fix handlers included via include_tasks
    handler to be executed in lockstep (#83019)</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1726056000">- update to 2.16.11:
  https://github.com/ansible/ansible/blob/v2.16.11/changelogs/CHANGELOG-v2.16.rst
  * Bugfixes
  - Fix SemanticVersion.parse() to store the version string so
    that __repr__ reports it instead of None (#83831).
  - Fix an issue where registered variable was not available for
    templating in loop_control.label on skipped looped tasks
    (#83619)
  - Fix for meta tasks breaking host/fork affinity with
    host_pinned strategy (#83294)
  - Fix using the current task's directory for looking up
    relative paths within roles (#82695).
  - atomic_move - fix using the setgid bit on the parent
    directory when creating files (#46742, #67177).
  - connection plugins using the 'extras' option feature would
    need variables to match the plugin's loaded name, sometimes
    requiring fqcn, which is not the same as the
    documented/declared/expected variables. Now we fall back to
    the 'basename' of the fqcn, but plugin authors can still set
    the expected value directly.
  - csvfile lookup - give an error when no search term is
    provided using modern config syntax (#83689).
  - include_tasks - Display location when attempting to load a
    task list where include_* did not specify any value - #83874
  - module respawn - Address an issue with Python 2 where a
    respawned module could not parse module args (#83812)
  - powershell - Improve CLIXML decoding to decode all control
    characters and unicode characters that are encoded as
    surrogate pairs.
  - psrp - Fix bug when attempting to fetch a file path that
    contains special glob characters like []
  - runtime-metadata sanity test - do not crash on deprecations
    if galaxy.yml contains an empty version field (#83831).
  - ssh - Fix bug when attempting to fetch a file path with
    characters that should be quoted when using the piped
    transfer method</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1728648000">- update to 2.16.12:
  https://github.com/ansible/ansible/blob/v2.16.12/changelogs/CHANGELOG-v2.16.rst
  * Bugfixes
  - Add descriptions for ansible-galaxy install --help` and
    `ansible-galaxy role|collection install --help`.
  - ansible-galaxy install --help - Fix the usage text and
    document that the requirements file passed to -r can include
    collections and roles.
  - dnf5 - re-introduce the state: installed alias to state:
    present (#83960)</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1731585600">- update to 2.16.13:
  https://github.com/ansible/ansible/blob/v2.16.13/changelogs/CHANGELOG-v2.16.rst
  * Minor Changes
  - ansible-test - Improve container runtime probe error
    handling. When unexpected probe output is encountered, an
    error with more useful debugging information is provided.
  * Security Fixes
  - include_vars action - Ensure that result masking is correctly
    requested when vault-encrypted files are read.
    (CVE-2024-8775)
  - task result processing - Ensure that action-sourced result
    masking (_ansible_no_log=True) is preserved. (CVE-2024-8775)
  - user action won't allow ssh-keygen, chown and chmod to run on
    existing ssh public key file, avoiding traversal on existing
    symlinks (CVE-2024-9902).
  * Bugfixes
  - Improve performance on large inventories by reducing the
    number of implicit meta tasks.
  - ansible-test - Enable the sys.unraisablehook work-around for
    the pylint sanity test on Python 3.11. Previously the
    work-around was only enabled for Python 3.12 and later.
    However, the same issue has been discovered on Python 3.11.</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1732276800">- Backport patch to relax resolvelib dependency:
  771f7ad29ca4d259761eaa88673c2e32f6412bbe.patch
- Added necessary test dependencies: pytest-xdist, pytest-mock,
  pytz, passlib, git-core, and openssh to ensure proper test
  execution.
- Introduced the `ansible_python_version` variable and updated the
  test command.</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1732276801">- introduce ansible_core_major_minor_version macro to make the spec
  easier to manage</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1733227200">- update to 2.16.14:
  https://github.com/ansible/ansible/blob/v2.16.14/changelogs/CHANGELOG-v2.16.rst
  * Security Fixes
  - Templating will not prefer AnsibleUnsafe when a variable is
    referenced via hostvars - CVE-2024-11079
  * Bugfixes
  - ansible-test - Fix traceback that occurs after an interactive
    command fails.</changelog>
</package>
<package pkgid="89b61c1c41c93287496fd60b301b4a8fc521679ed757476d7e49e76377b3708a235ee76414af130927c066e054d1114af292308d52d77a59d9fd419d5073b70e" name="ansible-test" arch="noarch">
  <version epoch="0" ver="2.17.6" rel="1.0.2.1.sr20241103"/>
  <changelog author="Johannes Kastl &lt;kastl@b1-systems.de&gt;" date="1696939200">- update to 2.15.5:
  * Minor Changes
  - ansible-galaxy dependency resolution messages have changed
    the unexplained 'virtual' collection for the specific type
    ('scm', 'dir', etc) that is more user friendly
  * Security Fixes
  - ansible-galaxy - Prevent roles from using symlinks to
    overwrite files outside of the installation directory
    (CVE-2023-5115)
  * Bugfixes
  - Allow for searching handler subdir for included task via
    include_role (#81722)
  - PluginLoader - fix Jinja plugin performance issues (#79652)
  - ansible.module_utils.service - ensure binary data
    transmission in daemonize()
  - ansible.module_utils.service - fix inter-process
    communication in daemonize()
  - ansible-galaxy - started allowing the use of pre-releases for
    collections that do not have any stable versions published.
    (#81606)
  - ansible-galaxy - started allowing the use of pre-releases for
    dependencies on any level of the dependency tree that
    specifically demand exact pre-release versions of collections
    and not version ranges. (#81606)
  - ansible-galaxy error on dependency resolution will not error
    itself due to 'virtual' collections not having a
    name/namespace.
  - ansible-galaxy info - fix reporting no role found when
    lookup_role_by_name returns None.
  - role deduplication - don't deduplicate before a role has had
    a task run for that particular host (#81486).
  - uri/urls - Add compat function to handle the ability to parse
    the filename from a Content-Disposition header (#81806)
  - winrm - Better handle send input failures when communicating
    with hosts under load</changelog>
  <changelog author="Johannes Kastl &lt;kastl@b1-systems.de&gt;" date="1699358400">- update to 2.15.6:
  * Minor Changes
  - ansible-test - Windows 2012 and 2012-R2 instances are now
    requested from Azure instead of AWS.
  * Bugfixes
  - Fix run_once being incorrectly interpreted on handlers
    (#81666)
  - Plugin loader does not dedupe nor cache filter/test plugins
    by file basename, but full path name.
  - Properly template tags in parent blocks (#81053)
  - Restoring the ability of filters/tests can have same file
    base name but different tests/filters defined inside.
  - import_role reverts to previous behavior of exporting vars at
    compile time.
  - ansible-galaxy - Provide a better error message when using a
    requirements file with an invalid format - #81901
  - ansible-inventory - index available_hosts for major
    performance boost when dumping large inventories
  - ansible-test - Fix parsing of cgroup entries which contain a
    : in the path (#81977).</changelog>
  <changelog author="Johannes Kastl &lt;kastl@b1-systems.de&gt;" date="1701777600">- update to 2.15.7:
  This release includes a fix for CVE-2023-5764, where internal
  templating actions could result in unsafe data losing its unsafe
  designation.
  * Breaking Changes / Porting Guide
  - assert - Nested templating may result in an inability for the
    conditional to be evaluated. See the porting guide for more
    information.
  * Security Fixes
  - templating - Address issues where internal templating can
    cause unsafe variables to lose their unsafe designation
    (CVE-2023-5764)
  * Bugfixes
  - ansible-pull now will expand relative paths for the
  - d|--directory option is now expanded before use.
  - flush_handlers - properly handle a handler failure in a
    nested block when force_handlers is set
    (http://github.com/ansible/ansible/issues/81532)
  - module no_log will no longer affect top level booleans, for
    example no_log_module_parameter='a' will no longer hide
    changed=False as a 'no log value' (matches 'a').
  - modules/user.py - Add check for valid directory when creating
    new user homedir (allows /dev/null as skeleton) (#75063)
  - role params now have higher precedence than host facts again,
    matching documentation, this had unintentionally changed in
    2.15.
  - wait_for should not handle 'non mmapable files' again.</changelog>
  <changelog author="Johannes Kastl &lt;kastl@b1-systems.de&gt;" date="1702382400">- update to 2.15.8:
  * Minor Changes
  - ansible-test - Add FreeBSD 13.2 remote.
  - ansible-test - Removed freebsd/13.1 remote.
  * Bugfixes
  - unsafe data - Address an incompatibility when iterating or
    getting a single index from AnsibleUnsafeBytes
  - unsafe data - Address an incompatibility with
    AnsibleUnsafeText and AnsibleUnsafeBytes when pickling with
    protocol=0</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1705838400">- update to 2.16.0:
  https://github.com/ansible/ansible/blob/v2.16.0/changelogs/CHANGELOG-v2.16.rst
  * Bugfixes and Minor changes omitted for brevity, see full
    changelog
  * Breaking Changes / Porting Guide
  - Any plugin using the config system and the cli entry to use
    the timeout from the command line, will see the value change
    if the use had configured it in any of the lower precedence
    methods. If relying on this behaviour to consume the
    global/generic timeout from the DEFAULT_TIMEOUT constant,
    please consult the documentation on plugin configuration to
    add the overlaping entries.
  - ansible-test - Test plugins that rely on containers no longer
    support reusing running containers. The previous behavior was
    an undocumented, untested feature.
  - service module will not permanently configure variables/flags
    for openbsd when doing enable/disable operation anymore, this
    module was never meant to do this type of work, just to
    manage the service state itself. A rcctl_config or similar
    module should be created and used instead.
  * Deprecated Features
  - Deprecated ini config option collections_paths, use the
    singular form collections_path instead
  - Deprecated the env var ANSIBLE_COLLECTIONS_PATHS, use the
    singular form ANSIBLE_COLLECTIONS_PATH instead
  - Old style vars plugins which use the entrypoints
    get_host_vars or get_group_vars are deprecated. The plugin
    should be updated to inherit from BaseVarsPlugin and define a
    get_vars method as the entrypoint.
  - Support for Windows Server 2012 and 2012 R2 has been removed
    as the support end of life from Microsoft is October 10th
    2023. These versions of Windows will no longer be tested in
    this Ansible release and it cannot be guaranteed that they
    will continue to work going forward.
  - STRING_CONVERSION_ACTION config option is deprecated as it is
    no longer used in the Ansible Core code base.
  - the 'smart' option for setting a connection plugin is being
    removed as it's main purpose (choosing between ssh and
    paramiko) is now irrelevant.
  - vault and unfault filters - the undocumented vaultid
    parameter is deprecated and will be removed in ansible-core
    2.20. Use vault_id instead.
  - yum_repository - deprecated parameter 'keepcache' (#78693).
  * Removed Features (previously deprecated)
  - ActionBase - remove deprecated _remote_checksum method
  - PlayIterator - remove deprecated cache_block_tasks and
    get_original_task methods
  - Remove deprecated FileLock class
  - Removed Python 3.9 as a supported version on the controller.
    Python 3.10 or newer is required.
  - Removed include which has been deprecated in Ansible 2.12.
    Use include_tasks or import_tasks instead.
  - Templar - remove deprecated shared_loader_obj parameter of
    __init__
  - fetch_url - remove auto disabling decompress when gzip is not
    available
  - get_action_args_with_defaults - remove deprecated
    redirected_names method parameter
  - ansible-test - Removed support for the remote Windows targets
    2012 and 2012-R2
  - inventory_cache - remove deprecated
    default.fact_caching_prefix ini configuration option, use
    defaults.fact_caching_prefix instead.
  - module_utils/basic.py - Removed Python 3.5 as a supported
    remote version. Python 2.7 or Python 3.6+ is now required.
  - stat - removed unused get_md5 parameter.
  * Security Fixes
  - ansible-galaxy - Prevent roles from using symlinks to
    overwrite files outside of the installation directory
    (CVE-2023-5115)
  * Known issues
  - ansible-galaxy - dies in the middle of installing a role when
    that role contains Java inner classes (files with $ in the
    file name). This is by design, to exclude temporary or backup
    files. (#81553).
  - ansible-test - The pep8 sanity test is unable to detect
    f-string spacing issues (E201, E202) on Python 3.10 and 3.11.
    They are correctly detected under Python 3.12. See
    (PyCQA/pycodestyle#1190).</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1705838401">- update to 2.16.1:
  https://github.com/ansible/ansible/blob/v2.16.1/changelogs/CHANGELOG-v2.16.rst
  * Breaking Changes / Porting Guide
  - assert - Nested templating may result in an inability for the
    conditional to be evaluated. See the porting guide for more
    information.
  * Security Fixes
  - templating - Address issues where internal templating can
    cause unsafe variables to lose their unsafe designation
    (CVE-2023-5764)
  * Bugfixes
  - Fix issue where an include_tasks handler in a role was not
    able to locate a file in tasks/ when tasks_from was used as a
    role entry point and main.yml was not present (#82241)
  - Plugin loader does not dedupe nor cache filter/test plugins
    by file basename, but full path name.
  - Restoring the ability of filters/tests can have same file
    base name but different tests/filters defined inside.
  - ansible-pull now will expand relative paths for the
  - d|--directory option is now expanded before use.
  - ansible-pull will now correctly handle become and connection
    password file options for ansible-playbook.
  - flush_handlers - properly handle a handler failure in a
    nested block when force_handlers is set
    (http://github.com/ansible/ansible/issues/81532)
  - module no_log will no longer affect top level booleans, for
    example no_log_module_parameter='a' will no longer hide
    changed=False as a 'no log value' (matches 'a').
  - role params now have higher precedence than host facts again,
    matching documentation, this had unintentionally changed in
    2.15.
  - wait_for should not handle 'non mmapable files' again.</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1705838402">- update to 2.16.2:
  https://github.com/ansible/ansible/blob/v2.16.2/changelogs/CHANGELOG-v2.16.rst
  * Bugfixes
  - unsafe data - Address an incompatibility when iterating or
    getting a single index from AnsibleUnsafeBytes
  - unsafe data - Address an incompatibility with
    AnsibleUnsafeText and AnsibleUnsafeBytes when pickling with
    protocol=0</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1706616000">- update to 2.16.3:
  https://github.com/ansible/ansible/blob/v2.16.3/changelogs/CHANGELOG-v2.16.rst
  * Security Fixes
  - ANSIBLE_NO_LOG - Address issue where ANSIBLE_NO_LOG was
    ignored (CVE-2024-0690)
  * Bugfixes
  - Run all handlers with the same listen topic, even when
    notified from another handler (#82363).
  - ansible-galaxy role import - fix using the role_name in a
    standalone role's galaxy_info metadata by disabling automatic
    removal of the ansible-role- prefix. This matches the
    behavior of the Galaxy UI which also no longer implicitly
    removes the ansible-role- prefix. Use the --role-name option
    or add a role_name to the galaxy_info dictionary in the
    role's meta/main.yml to use an alternate role name.
  - ansible-test sanity --test runtime-metadata - add
    action_plugin as a valid field for modules in the schema
    (#82562).
  - ansible-config init will now dedupe ini entries from plugins.
  - ansible-galaxy role import - exit with 1 when the import
    fails (#82175).
  - ansible-galaxy role install - normalize tarfile paths and
    symlinks using ansible.utils.path.unfrackpath and consider
    them valid as long as the realpath is in the tarfile's role
    directory (#81965).
  - delegate_to when set to an empty or undefined variable will
    now give a proper error.
  - dwim functions for lookups should be better at detectging
    role context even in abscense of tasks/main.
  - roles, code cleanup and performance optimization of
    dependencies, now cached, and public setting is now
    determined once, at role instantiation.
  - roles, the static property is now correctly set, this will
    fix issues with public and DEFAULT_PRIVATE_ROLE_VARS controls
    on exporting vars.
  - unsafe data - Enable directly using AnsibleUnsafeText with
    Python pathlib (#82414)</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1710590400">- update to 2.16.4:
  https://github.com/ansible/ansible/blob/v2.16.4/changelogs/CHANGELOG-v2.16.rst
  * Bugfixes
  - Fix loading vars_plugins in roles (#82239).
  - expect - fix argument spec error using timeout=null (#80982).
  - include_vars - fix calculating depth relative to the root and
    ensure all files are included (#80987).
  - templating - ensure syntax errors originating from a template
    being compiled into Python code object result in a failure
    (#82606)</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1711540800">- update to 2.16.5:
  https://github.com/ansible/ansible/blob/v2.16.5/changelogs/CHANGELOG-v2.16.rst
  * Minor Changes
  - ansible-test - Add a work-around for permission denied errors
    when using pytest &gt;= 8 on multi-user systems with an
    installed version of ansible-test.
  * Bugfixes
  - Fix an issue when setting a plugin name from an unsafe source
    resulted in ValueError: unmarshallable object (#82708)
  - Harden python templates for respawn and ansiballz around str
    literal quoting
  - ansible-test - The libexpat package is automatically upgraded
    during remote bootstrapping to maintain compatibility with
    newer Python packages.
  - template - Fix error when templating an unsafe string which
    corresponds to an invalid type in Python (#82600).
  - winrm - does not hang when attempting to get process output
    when stdin write failed</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1713268800">- adjust spec to new name for PyPI file name (underscore instead of
  hyphen: ansible_core-2.16.6.tar.gz)
- update to 2.16.6:
  https://github.com/ansible/ansible/blob/v2.16.6/changelogs/CHANGELOG-v2.16.rst
  * Bugfixes
  - Consolidated the list of internal static vars, centralized
    them as constant and completed from some missing entries.
  - Fix check for missing `_sub_plugin` attribute in older
    connection plugins (#82954)
  - Fixes permission for cache json file from 600 to 644
    (#82683).
  - Slight optimization to hostvars (instantiate template only
    once per host, vs per call to var).
  - allow_duplicates - fix evaluating if the current role allows
    duplicates instead of using the initial value from the
    duplicate's cached role.
  - ansible-config will now properly template defaults before
    dumping them.
  - ansible-test ansible-doc sanity test - do not remove
    underscores from plugin names in collections before calling
    ansible-doc (#82574).
  - async - Fix bug that stopped running async task in --check
    when check_mode: False was set as a task attribute - #82811
  - blockinfile - when create=true is used with a filename
    without path, the module crashed (#81638).
  - dnf - fix an issue when cached RPMs were left in the cache
    directory even when the keepcache setting was unset (#81954)
  - dnf5 - replace removed API calls
  - facts - add a generic detection for VMware in product name.
  - fetch - add error message when using dest with a trailing
    slash that becomes a local directory - #82878
  - find - do not fail on Permission errors (#82027).
  - unarchive modules now uses zipinfo options without relying on
    implementation defaults, making it more compatible with all
    OS/distributions.
  - winrm - Do not raise another exception during cleanup when a
    task is timed out - #81095</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1716465600">- update to 2.16.7:
  https://github.com/ansible/ansible/blob/v2.16.7/changelogs/CHANGELOG-v2.16.rst
  * Minor Changes
  - ansible.builtin.user - Remove user not found warning (#80267)
  * Bugfixes
  - Add a version ceiling constraint for pypsrp to avoid
    potential breaking changes in the 1.0.0 release.
  - Fix NEVRA parsing of package names that include digit(s) in
    them (#76463, #81018)
  - Fix handlers not being executed in lockstep using the linear
    strategy in some cases (#82307)
  - Give the tombstone error for include pre-fork like other
    tombstoned action/module plugins.
  - Include the task location when a module or action plugin is
    deprecated (#82450).
  - Mirror the behavior of dnf on the command line when handling
    NEVRAs with omitted epoch (#71808)
  - ansible-test - Automatically enable the PyPI proxy for the
    centos7 container to restore the ability to use pip in that
    container.
  - ansible_managed restored it's 'templatability' by ensuring
    the possible injection routes are cut off earlier in the
    process.
  - assemble - fixed missing parameter 'content' in
    `_get_diff_data` API (#82359).
  - dnf - fix an issue when installing a package by specifying a
    file it provides could result in installing a different
    package providing the same file than the package already
    installed resulting in resolution failure (#82461)
  - uri - update the documentation for follow_redirects.</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1718798400">- update to 2.16.8:
  https://github.com/ansible/ansible/blob/v2.16.8/changelogs/CHANGELOG-v2.16.rst
  * Minor Changes
  - ansible-test - Update pypi-test-container to version 3.1.0.
  * Bugfixes
  - Fix the task attribute resolved_action to show the FQCN
    instead of None when action or local_action is used in the
    playbook.
  - Fix using module_defaults with local_action/action (#81905).
  - fixed unit test test_borken_cowsay to address mock not been
    properly applied when existing unix system already have
    cowsay installed.
  - powershell - Implement more robust deletion mechanism for C#
    code compilation temporary files. This should avoid scenarios
    where the underlying temporary directory may be temporarily
    locked by antivirus tools or other IO problems. A failure to
    delete one of these temporary directories will result in a
    warning rather than an outright failure.</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1720958400">- update to 2.17.0:
  https://github.com/ansible/ansible/blob/v2.17.0/changelogs/CHANGELOG-v2.17.rst
  * Major Changes
  - urls.py - Removed support for Python 2
  * Minor Changes
  - Add dump and passno mount information to facts component
    (#80478)
  - Added MIRACLE LINUX 9.2 in RedHat OS Family.
  - Interpreter Discovery - Remove hardcoded references to
    specific python interpreters to use for certain distro
    versions, and modify logic for python3 to become the default.
  - Use Python's built-in functools.update_wrapper instead an
    inline copy from Python 3.7.
  - User can now set ansible.log to record higher verbosity than
    what is specified for display via new configuration item
    LOG_VERBOSITY.
  - DEFAULT_PRIVATE_ROLE_VARS is now overridden by explicit
    setting of public for include_roles and import_roles.
  - ansible-galaxy role|collection init - accept --extra-vars to
    supplement/override the variables ansible-galaxy injects for
    templating .j2 files in the skeleton.
  - import_role action now also gets a public option that
    controls variable exports, default depending on
    DEFAULT_PRIVATE_ROLE_VARS (if using defaults equates to
    public=True).
  - added configuration item TARGET_LOG_INFO that allows the
    user/author to add an information string to the log output on
    targets.
  - ansible-doc - treat double newlines in documentation strings
    as paragraph breaks. This is useful to create multi-paragraph
    notes in module/plugin documentation (#82465).
  - ansible-doc output has been revamped to make it more visually
    pleasing when going to a terminal, also more concise, use -v
    to show extra information.
  - ansible-galaxy - Started normalizing build directory with a
    trailing separator when building collections, internally.
    (#81619).
  - ansible-galaxy dependency resolution messages have changed
    the unexplained 'virtual' collection for the specific type
    ('scm', 'dir', etc) that is more user friendly
  - ansible-test - Add Alpine 3.19 container.
  - ansible-test - Add Alpine 3.19 to remotes.
  - ansible-test - Add Fedora 39 container.
  - ansible-test - Add Fedora 39 remote.
  - ansible-test - Add a work-around for permission denied errors
    when using pytest &gt;= 8 on multi-user systems with an
    installed version of ansible-test.
  - ansible-test - Add support for RHEL 9.3 remotes.
  - ansible-test - Added a macOS 14.3 remote VM.
  - ansible-test - Bump the nios-test-container from version
    2.0.0 to version 3.0.0.
  - ansible-test - Containers and remotes managed by ansible-test
    will have their Python EXTERNALLY-MANAGED marker (PEP668)
    removed. This provides backwards compatibility for existing
    tests running in newer environments which mark their Python
    as externally managed. A future version of ansible-test may
    change this behavior, requiring tests to be adapted to such
    environments.
  - ansible-test - Make Python 3.12 the default version used in
    the base and default containers.
  - ansible-test - Remove Alpine 3(.18) container.
  - ansible-test - Remove Alpine 3.18 from remotes.
  - ansible-test - Remove Fedora 38 remote support.
  - ansible-test - Remove Fedora 38 test container.
  - ansible-test - Remove rhel/9.2 test remote
  - ansible-test - Remove the FreeBSD 13.2 remote.
  - ansible-test - Removed fallback to virtualenv when -m venv is
    non-functional.
  - ansible-test - Removed test remotes: macos/13.2
  - ansible-test - Removed the no-basestring sanity test. The
    test is no longer necessary now that Python 3 is required.
  - ansible-test - Removed the no-dict-iteritems,
    no-dict-iterkeys and no-dict-itervalues sanity tests. The
    tests are no longer necessary since Python 3 is required.
  - ansible-test - Removed the no-main-display sanity test. The
    unwanted pattern is unlikely to occur, since the test has
    existed since Ansible 2.8.
  - ansible-test - Removed the no-unicode-literals sanity test.
    The test is unnecessary now that Python 3 is required and the
    unicode_literals feature has no effect.
  - ansible-test - Special handling for installation of
    cryptography has been removed, as it is no longer necessary.
  - ansible-test - The shellcheck sanity test no longer disables
    the SC2164 check. In most cases, seeing this error means the
    script is missing set -e.
  - ansible-test - The unidiomatic-typecheck rule has been
    enabled in the pylint sanity test.
  - ansible-test - The unidiomatic-typecheck rule has been
    removed from the validate-modules sanity test.
  - ansible-test - Update the base and default containers to use
    Ubuntu 22.04 for the base image. This also updates PowerShell
    to version 7.4.0 with .NET 8.0.0 and ShellCheck to version
    0.8.0.
  - ansible-test - Updated the CloudStack test container to
    version 1.7.0.
  - ansible-test - Updated the distro test containers to version
    6.3.0 to include coverage 7.3.2 for Python 3.8+. The alpine3
    container is now based on 3.18 instead of 3.17 and includes
    Python 3.11 instead of Python 3.10.
  - ansible-test - Updated the distro test containers to version
    7.1.0.
  - ansible-test - When ansible-test installs requirements, it
    now instructs pip to allow installs on externally managed
    environments as defined by PEP 668. This only occurs in
    ephemeral environments managed by ansible-test, such as
    containers, or when the --requirements option is used.
  - ansible-test - When invoking sleep in containers during
    container setup, the env command is used to avoid invoking
    the shell builtin, if present.
  - ansible-test - document block name now included in error
    message for YAML parsing errors (#82353).
  - ansible-test - sanity test allows EXAMPLES to be
    multi-document YAML (#82353).
  - ansible-test now has FreeBSD 13.3 and 14.0 support
  - ansible.builtin.user - Remove user not found warning (#80267)
  - apt_repository.py - use api.launchpad.net endpoint instead of
    launchpad.net/api
  - async tasks can now also support check mode at the same time.
  - async_status now supports check mode.
  - constructed inventory plugin - Adding a note that only
    group_vars of explicit groups are loaded (#82580).
  - csvfile - add a keycol parameter to specify in which column
    to search.
  - dnf - add the best option
  - dnf5 - add the best option
  - filter plugin - Add the count and mandatory_count parameters
    in the regex_replace filter
  - find - add a encoding parameter to specify which encoding of
    the files to be searched.
  - git module - gpg_allowlist name was added in 2.17 and we will
    eventually deprecate the gpg_whitelist alias.
  - import_role - allow subdirectories with `_from` options for
    parity with include_role (#82584).
  - module argument spec - Allow module authors to include
    arbitrary additional context in the argument spec, by making
    use of a new top level key called context. This key should be
    a dict type. This allows for users to customize what they
    place in the argument spec, without having to ignore sanity
    tests that validate the schema.
  - modules - Add the ability for an action plugin to call
    self._execute_module(*, ignore_unknown_opts=True) to execute
    a module with options that may not be supported for the
    version being called. This tells the module basic wrapper to
    ignore validating the options provided match the arg spec.
  - package action now has a configuration that overrides the
    detected package manager, it is still overridden itself by
    the use option.
  - py3compat - Remove ansible.utils.py3compat as it is no longer
    necessary
  - removed the unused argument create_new_password from
    CLI.build_vault_ids (#82066).
  - urls - Add support for TLS 1.3 post handshake certificate
    authentication - #81782
  - urls - reduce complexity of Request.open
  - user - accept yescrypt hash as user password
  - validate-modules tests now correctly handles choices in
    dictionary format.
  * Breaking Changes / Porting Guide
  - assert - Nested templating may result in an inability for the
    conditional to be evaluated. See the porting guide for more
    information.
  * Deprecated Features
  - Old style vars plugins which use the entrypoints
    get_host_vars or get_group_vars are deprecated. The plugin
    should be updated to inherit from BaseVarsPlugin and define a
    get_vars method as the entrypoint.
  - The 'required' parameter in
    'ansible.module_utils.common.process.get_bin_path' API is
    deprecated (#82464).
  - module_utils - importing the following convenience helpers
    from ansible.module_utils.basic has been deprecated:
    get_exception, literal_eval, _literal_eval, datetime, signal,
    types, chain, repeat, PY2, PY3, b, binary_type,
    integer_types, iteritems, string_types, test_type, map and
    shlex_quote.
  - ansible-doc - role entrypoint attributes are deprecated and
    eventually will no longer be shown in ansible-doc from
    ansible-core 2.20 on (#82639, #82678).
  - paramiko connection plugin, configuration items in the global
    scope are being deprecated and will be removed in favor or
    the existing same options in the plugin itself. Users should
    not need to change anything (how to configure them are the
    same) but plugin authors using the global constants should
    move to using the plugin's get_option().
  * Removed Features (previously deprecated)
  - Remove deprecated APIs from ansible-docs (#81716).
  - Remove deprecated JINJA2_NATIVE_WARNING environment variable
    (#81714)
  - Remove deprecated scp_if_ssh from ssh connection plugin
    (#81715).
  - Remove deprecated crypt support from ansible.utils.encrypt
    (#81717)
  - Removed Python 2.7 and Python 3.6 as a supported remote
    version. Python 3.7+ is now required for target execution.
  - With the removal of Python 2 support, the yum module and yum
    action plugin are removed and redirected to dnf.
  * Security Fixes
  - ANSIBLE_NO_LOG - Address issue where ANSIBLE_NO_LOG was
    ignored (CVE-2024-0690)
  - ansible-galaxy - Prevent roles from using symlinks to
    overwrite files outside of the installation directory
    (CVE-2023-5115)
  - templating - Address issues where internal templating can
    cause unsafe variables to lose their unsafe designation
    (CVE-2023-5764)
  * Bugfixes
  - Add a version ceiling constraint for pypsrp to avoid
    potential breaking changes in the 1.0.0 release.
  - All core lookups now use set_option(s) even when doing their
    own custom parsing. This ensures that the options are always
    the proper type.
  - Allow for searching handler subdir for included task via
    include_role (#81722)
  - AnsibleModule.atomic_move - fix preserving extended ACLs of
    the destination when it exists (#72929).
  - Cache host_group_vars after instantiating it once and limit
    the amount of repetitive work it needs to do every time it
    runs.
  - Call PluginLoader.all() once for vars plugins, and load vars
    plugins that run automatically or are enabled specifically by
    name subsequently.
  - Consolidate systemd detection logic into one place (#80975).
  - Consolidated the list of internal static vars, centralized
    them as constant and completed from some missing entries.
  - Do not print undefined error message twice (#78703).
  - Enable file cache for vaulted files during vars lookup to fix
    a strong performance penalty in huge and complex playbboks.
  - Fix NEVRA parsing of package names that include digit(s) in
    them (#76463, #81018)
  - Fix force_handlers not working with any_errors_fatal (#36308)
  - Fix run_once being incorrectly interpreted on handlers
    (#81666)
  - Fix an issue when setting a plugin name from an unsafe source
    resulted in ValueError: unmarshallable object (#82708)
  - Fix check for missing _sub_plugin attribute in older
    connection plugins (#82954)
  - Fix condition for unquoting configuration strings from ini
    files (#82387).
  - Fix for when any_errors_fatal was ignored if error occurred
    in a block with always (#31543)
  - Fix handlers not being executed in lockstep using the linear
    strategy in some cases (#82307)
  - Fix handling missing urls in
    ansible.module_utils.urls.fetch_file for Python 3.
  - Fix issue where an include_tasks handler in a role was not
    able to locate a file in tasks/ when tasks_from was used as a
    role entry point and main.yml was not present (#82241)
  - Fix issues when tasks withing nested blocks wouldn't run when
    force_handlers is set (#81533)
  - Fix loading vars_plugins in roles (#82239).
  - Fix notifying role handlers by listen keyword topics with the
    "role_name : " prefix (#82849).
  - Fix setting proper locale for git executable when running on
    non english systems, ensuring git output can always be
    parsed.
  - Fix tasks in always section not being executed for nested
    blocks with any_errors_fatal (#73246)
  - Fixes permission for cache json file from 600 to 644
    (#82683).
  - Give the tombstone error for include pre-fork like other
    tombstoned action/module plugins.
  - Harden python templates for respawn and ansiballz around str
    literal quoting
  - Include the task location when a module or action plugin is
    deprecated (#82450).
  - Interpreter discovery - Add Amzn to OS_FAMILY_MAP for correct
    family fallback for interpreter discovery (#80882).
  - Mirror the behavior of dnf on the command line when handling
    NEVRAs with omitted epoch (#71808)
  - Plugin loader does not dedupe nor cache filter/test plugins
    by file basename, but full path name.
  - Properly template tags in parent blocks (#81053)
  - Provide additional information about the alternative plugin
    in the deprecation message (#80561).
  - Remove the galaxy_info field platforms from the role
    templates (#82453).
  - Restoring the ability of filters/tests can have same file
    base name but different tests/filters defined inside.
  - Reword the error message when the module fails to parse
    parameters in JSON format (#81188).
  - Reword warning if the reserved keyword _ansible_ used as a
    module parameter (#82514).
  - Run all handlers with the same listen topic, even when
    notified from another handler (#82363).
  - Slight optimization to hostvars (instantiate template only
    once per host, vs per call to var).
  - Stopped misleadingly advertising async mode support in the
    reboot module (#71517).
  - ansible-galaxy role import - fix using the role_name in a
    standalone role's galaxy_info metadata by disabling automatic
    removal of the ansible-role- prefix. This matches the
    behavior of the Galaxy UI which also no longer implicitly
    removes the ansible-role- prefix. Use the --role-name option
    or add a role_name to the galaxy_info dictionary in the
    role's meta/main.yml to use an alternate role name.
  - ansible-test sanity --test runtime-metadata - add
    action_plugin as a valid field for modules in the schema
    (#82562).
  - ansible.module_utils.service - ensure binary data
    transmission in daemonize()
  - any_errors_fatal should fail all hosts and rescue all of them
    when a rescue section is specified (#80981)
  - include_role - properly execute v2_playbook_on_include and
    v2_runner_on_failed callbacks as well as increase ok and
    failed stats in the play recap, when appropriate (#77336)
  - allow_duplicates - fix evaluating if the current role allows
    duplicates instead of using the initial value from the
    duplicate's cached role.
  - ansible-config init will now dedupe ini entries from plugins.
  - ansible-config will now properly template defaults before
    dumping them.
  - ansible-doc - fixed "inicates" typo in output
  - ansible-doc - format top-level descriptions with multiple
    paragraphs as multiple paragraphs, instead of concatenating
    them (#83155).
  - ansible-galaxy - Deprecate use of the Galaxy v2 API (#81781)
  - ansible-galaxy - Provide a better error message when using a
    requirements file with an invalid format - #81901
  - ansible-galaxy - Resolve issue with the dataclass used for
    galaxy.yml manifest caused by using future annotations
  - ansible-galaxy - ensure path to ansible collection when
    installing or downloading doesn't have a backslash (#79705).
  - ansible-galaxy - started allowing the use of pre-releases for
    collections that do not have any stable versions published.
    (#81606)
  - ansible-galaxy - started allowing the use of pre-releases for
    dependencies on any level of the dependency tree that
    specifically demand exact pre-release versions of collections
    and not version ranges. (#81606)
  - ansible-galaxy error on dependency resolution will not error
    itself due to 'virtual' collections not having a
    name/namespace.
  - ansible-galaxy info - fix reporting no role found when
    lookup_role_by_name returns None.
  - ansible-galaxy role import - exit with 1 when the import
    fails (#82175).
  - ansible-galaxy role install - fix installing roles from
    Galaxy that have version None (#81832).
  - ansible-galaxy role install - fix symlinks (#82702, #81965).
  - ansible-galaxy role install - normalize tarfile paths and
    symlinks using ansible.utils.path.unfrackpath and consider
    them valid as long as the realpath is in the tarfile's role
    directory (#81965).
  - ansible-inventory - index available_hosts for major
    performance boost when dumping large inventories
  - ansible-pull now will expand relative paths for the
  - d|--directory option is now expanded before use.
  - ansible-pull will now correctly handle become and connection
    password file options for ansible-playbook.
  - ansible-test - Add a pylint plugin to work around a known
    issue on Python 3.12.
  - ansible-test - Explicitly supply ControlPath=none when
    setting up port forwarding over SSH to address the scenario
    where the local ssh configuration uses ControlPath for all
    hosts, and would prevent ports to be forwarded after the
    initial connection to the host.
  - ansible-test - Fix parsing of cgroup entries which contain a
    : in the path (#81977).
  - ansible-test - Include missing pylint requirements for Python
    3.10.
  - ansible-test - Properly detect docker host when using ssh://
    protocol for connecting to the docker daemon.
  - ansible-test - The libexpat package is automatically upgraded
    during remote bootstrapping to maintain compatibility with
    newer Python packages.
  - ansible-test - The validate-modules sanity test no longer
    attempts to process files with unrecognized extensions as
    Python (resolves #82604).
  - ansible-test - Update pylint to version 3.0.1.
  - ansible-test ansible-doc sanity test - do not remove
    underscores from plugin names in collections before calling
    ansible-doc (#82574).
  - ansible-test validate-modules sanity test - do not treat
    leading underscores for plugin names in collections as an
    attempted deprecation (#82575).
  - ansible-test — Python 3.8–3.12 will use coverage v7.3.2.
  - ansible.builtin.apt - calling clean = true does not properly
    clean certain cache files such as /var/cache/apt/pkgcache.bin
    and /var/cache/apt/pkgcache.bin (#82611)
  - ansible.builtin.uri - the module was ignoring the force
    parameter and always requesting a cached copy (via the
    If-Modified-Since header) when downloading to an existing
    local file. Disable caching when force is true, as documented
    (#82166).
  - ansible_managed restored it's 'templatability' by ensuring
    the possible injection routes are cut off earlier in the
    process.
  - apt - honor install_recommends and dpkg_options while
    installing python3-apt library (#40608).
  - apt - install recommended packages when installing package
    via deb file (#29726).
  - apt_repository - do not modify repo files if the file is a
    symlink (#49809).
  - apt_repository - update PPA URL to point to https URL
    (#82463).
  - assemble - fixed missing parameter 'content' in
    `_get_diff_data` API (#82359).
  - async - Fix bug that stopped running async task in --check
    when check_mode: False was set as a task attribute - #82811
  - blockinfile - when create=true is used with a filename
    without path, the module crashed (#81638).
  - check if there are attributes to set before attempting to set
    them (#76727)
  - copy action now also generates temprary files as hidden ('.'
    prefixed) to avoid accidental pickup by running services that
    glob by extension.
  - copy action now ensures that tempfiles use the same suffix as
    destination, to allow for validate to work with utilities
    that check extensions.
  - deb822_repository - handle idempotency if the order of
    parameters is changed (#82454).
  - debconf - allow user to specify a list for value when vtype
    is multiselect (#81345).
  - delegate_to when set to an empty or undefined variable will
    now give a proper error.
  - distribution.py - Recognize ALP-Dolomite as part of the SUSE
    OS family in Ansible, fixing its previous misidentification
    (#82496).
  - distro - bump bundled distro version from 1.6.0 to 1.8.0
    (#81713).
  - dnf - fix an issue when cached RPMs were left in the cache
    directory even when the keepcache setting was unset (#81954)
  - dnf - fix an issue when installing a package by specifying a
    file it provides could result in installing a different
    package providing the same file than the package already
    installed resulting in resolution failure (#82461)
  - dnf - properly set gpg check options on enabled repositories
    according to the disable_gpg_check option (#80110)
  - dnf - properly skip unavailable packages when skip_broken is
    enabled (#80590)
  - dnf - the nobest option only overrides the distribution
    default when explicitly used, and is used for all supported
    operations (#82616)
  - dnf5 - replace removed API calls
  - dnf5 - respect allow_downgrade when installing packages
    directly from rpm files
  - dnf5 - the nobest option only overrides the distribution
    default when used
  - dwim functions for lookups should be better at detectging
    role context even in abscense of tasks/main.
  - ensure we have logger before we log when we have increased
    verbosity.
  - expect - fix argument spec error using timeout=null (#80982).
  - fact gathering on linux now handles thread count by using
    rounding vs dropping decimals, it should give slightly more
    accurate numbers.
  - facts - add a generic detection for VMware in product name.
  - facts - detect VMware ESXi 8.0 virtualization by product name
    VMware20,1
  - fetch - Do not calculate the file size for Windows fetch
    targets to improve performance.
  - fetch - add error message when using dest with a trailing
    slash that becomes a local directory - #82878
  - find - do not fail on Permission errors (#82027).
  - first_found lookup now always returns a full (absolute) and
    normalized path
  - first_found lookup now always takes into account k=v options
  - flush_handlers - properly handle a handler failure in a
    nested block when force_handlers is set
    (http://github.com/ansible/ansible/issues/81532)
  - galaxy - skip verification for unwanted Python compiled
    bytecode files (#81628).
  - handle exception raised while validating with elements='int'
    and value is not within choices (#82776).
  - include_tasks - include ansible_loop_var and
    ansible_index_var in a loop (#82655).
  - include_vars - fix calculating depth relative to the root and
    ensure all files are included (#80987).
  - interpreter_discovery - handle AnsibleError exception raised
    while interpreter discovery (#78264).
  - iptables - add option choices 'src,src' and 'dst,dst' in
    match_set_flags (#81281).
  - iptables - set jump to DSCP when set_dscp_mark or
    set_dscp_mark_class is set (#77077).
  - known_hosts - Fix issue with @cert-authority entries in
    known_hosts incorrectly being removed.
  - module no_log will no longer affect top level booleans, for
    example no_log_module_parameter='a' will no longer hide
    changed=False as a 'no log value' (matches 'a').
  - moved assemble, raw, copy, fetch, reboot, script and
    wait_for_connection to query task instead of play_context
    ensuring they get the lastest and most correct data.
  - reboot action now handles connections with 'timeout' vs only
    'connection_timeout' settings.
  - role params now have higher precedence than host facts again,
    matching documentation, this had unintentionally changed in
    2.15.
  - roles, code cleanup and performance optimization of
    dependencies, now cached, and public setting is now
    determined once, at role instantiation.
  - roles, the static property is now correctly set, this will
    fix issues with public and DEFAULT_PRIVATE_ROLE_VARS controls
    on exporting vars.
  - set_option method for plugins to update config now properly
    passes through type casting and validation.
  - ssh - add tests for the SSH connection plugin.
  - support url-encoded credentials in URLs like
    http://x%40:%40@example.com (#82552)
  - syslog - Handle ValueError exception raised when sending Null
    Characters to syslog with Python 3.12.
  - systemd_services - update documentation regarding
    required_one_of and required_by parameters (#82914).
  - template - Fix error when templating an unsafe string which
    corresponds to an invalid type in Python (#82600).
  - template action will also inherit the behavior from copy (as
    it uses it internally).
  - templating - ensure syntax errors originating from a template
    being compiled into Python code object result in a failure
    (#82606)
  - unarchive - add support for 8 character permission strings
    for zip archives (#81705).
  - unarchive - force unarchive if symlink target changes
    (#30420).
  - unarchive modules now uses zipinfo options without relying on
    implementation defaults, making it more compatible with all
    OS/distributions.
  - unsafe data - Address an incompatibility when iterating or
    getting a single index from AnsibleUnsafeBytes
  - unsafe data - Address an incompatibility with
    AnsibleUnsafeText and AnsibleUnsafeBytes when pickling with
    protocol=0
  - unsafe data - Enable directly using AnsibleUnsafeText with
    Python pathlib (#82414)
  - uri - update the documentation for follow_redirects.
  - uri action plugin now skipped during check mode (not
    supported) instead of even trying to execute the module,
    which already skipped, this does not really change the
    result, but returns much faster.
  - vars - handle exception while combining VarsWithSources and
    dict (#81659).
  - wait_for should not handle 'non mmapable files' again.
  - winrm - Better handle send input failures when communicating
    with hosts under load
  - winrm - Do not raise another exception during cleanup when a
    task is timed out - #81095
  - winrm - does not hang when attempting to get process output
    when stdin write failed</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1720958401">- update to 2.17.1:
  https://github.com/ansible/ansible/blob/v2.17.1/changelogs/CHANGELOG-v2.17.rst
  * Minor Changes
  - ansible-test - Update pypi-test-container to version 3.1.0.
  * Bugfixes
  - Fix rapid memory usage growth when notifying handlers using
    the listen keyword (#83392)
  - Fix the task attribute resolved_action to show the FQCN
    instead of None when action or local_action is used in the
    playbook.
  - Fix using module_defaults with local_action/action (#81905).
  - fixed unit test test_borken_cowsay to address mock not been
    properly applied when existing unix system already have
    cowsay installed.
  - powershell - Implement more robust deletion mechanism for C#
    code compilation temporary files. This should avoid scenarios
    where the underlying temporary directory may be temporarily
    locked by antivirus tools or other IO problems. A failure to
    delete one of these temporary directories will result in a
    warning rather than an outright failure.
  - shell plugin - properly quote all needed components of shell
    commands (#82535)</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1721131200">- update to 2.17.2:
  https://github.com/ansible/ansible/blob/v2.17.2/changelogs/CHANGELOG-v2.17.rst
  * Bugfixes
  - Fix a traceback when an environment variable contains certain
    special characters (#83498)
  - dnf - reverted incomplete fix from 2.17.2rc1 (#83504)
  - dnf, dnf5 - fix for installing a set of packages by
    specifying them using a wildcard character (#83373)
  - linear strategy now provides a properly templated task name
    to the v2_runner_on_started callback event.
  - package_facts - ignore warnings sent by apk on stderr
    (#83501).
  - replace - Updated before/after example (#83390).
  - templating hostvars under native jinja will not cause
    serialization errors anymore.</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1723550400">- update to 2.17.3:
  https://github.com/ansible/ansible/blob/v2.17.3/changelogs/CHANGELOG-v2.17.rst
  * Minor Changes
  - ansible-test - Improve the error message shown when an
    unknown --remote or --docker option is given.
  - ansible-test - Removed the vyos/1.1.8 network remote as it is
    no longer functional.
  * Bugfixes
  - Warning now includes filename and line number of variable
    when specifying a list of dictionaries for vars (#82528).
  - config, restored the ability to set module compression via a
    variable
  - debconf - fix normalization of value representation for
    boolean vtypes in new packages (#83594)
  - linear strategy: fix handlers included via include_tasks
    handler to be executed in lockstep (#83019)</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1726056000">- update to 2.17.4:
  https://github.com/ansible/ansible/blob/v2.17.4/changelogs/CHANGELOG-v2.17.rst
  * Bugfixes
  - Fix SemanticVersion.parse() to store the version string so
    that __repr__ reports it instead of None (#83831).
  - Fix an issue where registered variable was not available for
    templating in loop_control.label on skipped looped tasks
    (#83619)
  - Fix for meta tasks breaking host/fork affinity with
    host_pinned strategy (#83294)
  - Fix using the current task's directory for looking up
    relative paths within roles (#82695).
  - atomic_move - fix using the setgid bit on the parent
    directory when creating files (#46742, #67177).
  - connection plugins using the 'extras' option feature would
    need variables to match the plugin's loaded name, sometimes
    requiring fqcn, which is not the same as the
    documented/declared/expected variables. Now we fall back to
    the 'basename' of the fqcn, but plugin authors can still set
    the expected value directly.
  - csvfile lookup - give an error when no search term is
    provided using modern config syntax (#83689).
  - include_tasks - Display location when attempting to load a
    task list where include_* did not specify any value - #83874
  - powershell - Improve CLIXML decoding to decode all control
    characters and unicode characters that are encoded as
    surrogate pairs.
  - psrp - Fix bug when attempting to fetch a file path that
    contains special glob characters like []
  - runtime-metadata sanity test - do not crash on deprecations
    if galaxy.yml contains an empty version field (#83831).
  - ssh - Fix bug when attempting to fetch a file path with
    characters that should be quoted when using the piped
    transfer method</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1728648000">- update to 2.17.5:
  https://github.com/ansible/ansible/blob/v2.17.5/changelogs/CHANGELOG-v2.17.rst
  * Bugfixes
  - Add descriptions for ansible-galaxy install --help` and
    ``ansible-galaxy role|collection install --help.
  - Errors now preserve stacked error messages even when YAML is
    involved.
  - ansible-galaxy install --help - Fix the usage text and
    document that the requirements file passed to -r can include
    collections and roles.
  - copy - mtime/atime not updated. Fix now update
    mtime/atime(#83013)
  - delay keyword is now a float, matching the underlying 'time'
    API and user expectations.
  - dnf5 - re-introduce the state: installed alias to state:
    present (#83960)
  - module_utils atomic_move (used by most file based modules),
    now correctly handles permission copy and setting mtime
    correctly across all paths</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1731585600">- update to 2.17.6:
  https://github.com/ansible/ansible/blob/v2.17.6/changelogs/CHANGELOG-v2.17.rst
  * Minor Changes
  - ansible-test - Improve container runtime probe error
    handling. When unexpected probe output is encountered, an
    error with more useful debugging information is provided.
  * Security Fixes
  - include_vars action - Ensure that result masking is correctly
    requested when vault-encrypted files are read.
    (CVE-2024-8775)
  - task result processing - Ensure that action-sourced result
    masking (_ansible_no_log=True) is preserved. (CVE-2024-8775)
  - user action won't allow ssh-keygen, chown and chmod to run on
    existing ssh public key file, avoiding traversal on existing
    symlinks (CVE-2024-9902).
  * Bugfixes
  - Fix disabling SSL verification when installing collections
    and roles from git repositories. If --ignore-certs isn't
    provided, the value for the GALAXY_IGNORE_CERTS configuration
    option will be used (#83326).
  - Improve performance on large inventories by reducing the
    number of implicit meta tasks.
  - Use the requested error message in the
    ansible.module_utils.facts.timeout timeout function instead
    of hardcoding one.
  - ansible-test - Enable the sys.unraisablehook work-around for
    the pylint sanity test on Python 3.11. Previously the
    work-around was only enabled for Python 3.12 and later.
    However, the same issue has been discovered on Python 3.11.
  - debconf - set empty password values (#83214).
  - facts - skip if distribution file path is directory, instead
    of raising error (#84006).
  - user action will now require O(force) to overwrite the public
    part of an ssh key when generating ssh keys, as was already
    the case for the private part.
  - user module now avoids changing ownership of files symlinked
    in provided home dir skeleton</changelog>
</package>
<package pkgid="b4afdb1dae6ebcf4f33e149bd1245fa2a4755c231d049b018eb71b339a1e0cd2a5d6bb6336b177925dec0ee656ede597e595300ac6c485b146a35b30a8188851" name="ansible-test" arch="noarch">
  <version epoch="0" ver="2.17.6" rel="2.0.4.1.sr20241103"/>
  <changelog author="Johannes Kastl &lt;kastl@b1-systems.de&gt;" date="1701777600">- update to 2.15.7:
  This release includes a fix for CVE-2023-5764, where internal
  templating actions could result in unsafe data losing its unsafe
  designation.
  * Breaking Changes / Porting Guide
  - assert - Nested templating may result in an inability for the
    conditional to be evaluated. See the porting guide for more
    information.
  * Security Fixes
  - templating - Address issues where internal templating can
    cause unsafe variables to lose their unsafe designation
    (CVE-2023-5764)
  * Bugfixes
  - ansible-pull now will expand relative paths for the
  - d|--directory option is now expanded before use.
  - flush_handlers - properly handle a handler failure in a
    nested block when force_handlers is set
    (http://github.com/ansible/ansible/issues/81532)
  - module no_log will no longer affect top level booleans, for
    example no_log_module_parameter='a' will no longer hide
    changed=False as a 'no log value' (matches 'a').
  - modules/user.py - Add check for valid directory when creating
    new user homedir (allows /dev/null as skeleton) (#75063)
  - role params now have higher precedence than host facts again,
    matching documentation, this had unintentionally changed in
    2.15.
  - wait_for should not handle 'non mmapable files' again.</changelog>
  <changelog author="Johannes Kastl &lt;kastl@b1-systems.de&gt;" date="1702382400">- update to 2.15.8:
  * Minor Changes
  - ansible-test - Add FreeBSD 13.2 remote.
  - ansible-test - Removed freebsd/13.1 remote.
  * Bugfixes
  - unsafe data - Address an incompatibility when iterating or
    getting a single index from AnsibleUnsafeBytes
  - unsafe data - Address an incompatibility with
    AnsibleUnsafeText and AnsibleUnsafeBytes when pickling with
    protocol=0</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1705838400">- update to 2.16.0:
  https://github.com/ansible/ansible/blob/v2.16.0/changelogs/CHANGELOG-v2.16.rst
  * Bugfixes and Minor changes omitted for brevity, see full
    changelog
  * Breaking Changes / Porting Guide
  - Any plugin using the config system and the cli entry to use
    the timeout from the command line, will see the value change
    if the use had configured it in any of the lower precedence
    methods. If relying on this behaviour to consume the
    global/generic timeout from the DEFAULT_TIMEOUT constant,
    please consult the documentation on plugin configuration to
    add the overlaping entries.
  - ansible-test - Test plugins that rely on containers no longer
    support reusing running containers. The previous behavior was
    an undocumented, untested feature.
  - service module will not permanently configure variables/flags
    for openbsd when doing enable/disable operation anymore, this
    module was never meant to do this type of work, just to
    manage the service state itself. A rcctl_config or similar
    module should be created and used instead.
  * Deprecated Features
  - Deprecated ini config option collections_paths, use the
    singular form collections_path instead
  - Deprecated the env var ANSIBLE_COLLECTIONS_PATHS, use the
    singular form ANSIBLE_COLLECTIONS_PATH instead
  - Old style vars plugins which use the entrypoints
    get_host_vars or get_group_vars are deprecated. The plugin
    should be updated to inherit from BaseVarsPlugin and define a
    get_vars method as the entrypoint.
  - Support for Windows Server 2012 and 2012 R2 has been removed
    as the support end of life from Microsoft is October 10th
    2023. These versions of Windows will no longer be tested in
    this Ansible release and it cannot be guaranteed that they
    will continue to work going forward.
  - STRING_CONVERSION_ACTION config option is deprecated as it is
    no longer used in the Ansible Core code base.
  - the 'smart' option for setting a connection plugin is being
    removed as it's main purpose (choosing between ssh and
    paramiko) is now irrelevant.
  - vault and unfault filters - the undocumented vaultid
    parameter is deprecated and will be removed in ansible-core
    2.20. Use vault_id instead.
  - yum_repository - deprecated parameter 'keepcache' (#78693).
  * Removed Features (previously deprecated)
  - ActionBase - remove deprecated _remote_checksum method
  - PlayIterator - remove deprecated cache_block_tasks and
    get_original_task methods
  - Remove deprecated FileLock class
  - Removed Python 3.9 as a supported version on the controller.
    Python 3.10 or newer is required.
  - Removed include which has been deprecated in Ansible 2.12.
    Use include_tasks or import_tasks instead.
  - Templar - remove deprecated shared_loader_obj parameter of
    __init__
  - fetch_url - remove auto disabling decompress when gzip is not
    available
  - get_action_args_with_defaults - remove deprecated
    redirected_names method parameter
  - ansible-test - Removed support for the remote Windows targets
    2012 and 2012-R2
  - inventory_cache - remove deprecated
    default.fact_caching_prefix ini configuration option, use
    defaults.fact_caching_prefix instead.
  - module_utils/basic.py - Removed Python 3.5 as a supported
    remote version. Python 2.7 or Python 3.6+ is now required.
  - stat - removed unused get_md5 parameter.
  * Security Fixes
  - ansible-galaxy - Prevent roles from using symlinks to
    overwrite files outside of the installation directory
    (CVE-2023-5115)
  * Known issues
  - ansible-galaxy - dies in the middle of installing a role when
    that role contains Java inner classes (files with $ in the
    file name). This is by design, to exclude temporary or backup
    files. (#81553).
  - ansible-test - The pep8 sanity test is unable to detect
    f-string spacing issues (E201, E202) on Python 3.10 and 3.11.
    They are correctly detected under Python 3.12. See
    (PyCQA/pycodestyle#1190).</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1705838401">- update to 2.16.1:
  https://github.com/ansible/ansible/blob/v2.16.1/changelogs/CHANGELOG-v2.16.rst
  * Breaking Changes / Porting Guide
  - assert - Nested templating may result in an inability for the
    conditional to be evaluated. See the porting guide for more
    information.
  * Security Fixes
  - templating - Address issues where internal templating can
    cause unsafe variables to lose their unsafe designation
    (CVE-2023-5764)
  * Bugfixes
  - Fix issue where an include_tasks handler in a role was not
    able to locate a file in tasks/ when tasks_from was used as a
    role entry point and main.yml was not present (#82241)
  - Plugin loader does not dedupe nor cache filter/test plugins
    by file basename, but full path name.
  - Restoring the ability of filters/tests can have same file
    base name but different tests/filters defined inside.
  - ansible-pull now will expand relative paths for the
  - d|--directory option is now expanded before use.
  - ansible-pull will now correctly handle become and connection
    password file options for ansible-playbook.
  - flush_handlers - properly handle a handler failure in a
    nested block when force_handlers is set
    (http://github.com/ansible/ansible/issues/81532)
  - module no_log will no longer affect top level booleans, for
    example no_log_module_parameter='a' will no longer hide
    changed=False as a 'no log value' (matches 'a').
  - role params now have higher precedence than host facts again,
    matching documentation, this had unintentionally changed in
    2.15.
  - wait_for should not handle 'non mmapable files' again.</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1705838402">- update to 2.16.2:
  https://github.com/ansible/ansible/blob/v2.16.2/changelogs/CHANGELOG-v2.16.rst
  * Bugfixes
  - unsafe data - Address an incompatibility when iterating or
    getting a single index from AnsibleUnsafeBytes
  - unsafe data - Address an incompatibility with
    AnsibleUnsafeText and AnsibleUnsafeBytes when pickling with
    protocol=0</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1706616000">- update to 2.16.3:
  https://github.com/ansible/ansible/blob/v2.16.3/changelogs/CHANGELOG-v2.16.rst
  * Security Fixes
  - ANSIBLE_NO_LOG - Address issue where ANSIBLE_NO_LOG was
    ignored (CVE-2024-0690)
  * Bugfixes
  - Run all handlers with the same listen topic, even when
    notified from another handler (#82363).
  - ansible-galaxy role import - fix using the role_name in a
    standalone role's galaxy_info metadata by disabling automatic
    removal of the ansible-role- prefix. This matches the
    behavior of the Galaxy UI which also no longer implicitly
    removes the ansible-role- prefix. Use the --role-name option
    or add a role_name to the galaxy_info dictionary in the
    role's meta/main.yml to use an alternate role name.
  - ansible-test sanity --test runtime-metadata - add
    action_plugin as a valid field for modules in the schema
    (#82562).
  - ansible-config init will now dedupe ini entries from plugins.
  - ansible-galaxy role import - exit with 1 when the import
    fails (#82175).
  - ansible-galaxy role install - normalize tarfile paths and
    symlinks using ansible.utils.path.unfrackpath and consider
    them valid as long as the realpath is in the tarfile's role
    directory (#81965).
  - delegate_to when set to an empty or undefined variable will
    now give a proper error.
  - dwim functions for lookups should be better at detectging
    role context even in abscense of tasks/main.
  - roles, code cleanup and performance optimization of
    dependencies, now cached, and public setting is now
    determined once, at role instantiation.
  - roles, the static property is now correctly set, this will
    fix issues with public and DEFAULT_PRIVATE_ROLE_VARS controls
    on exporting vars.
  - unsafe data - Enable directly using AnsibleUnsafeText with
    Python pathlib (#82414)</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1710590400">- update to 2.16.4:
  https://github.com/ansible/ansible/blob/v2.16.4/changelogs/CHANGELOG-v2.16.rst
  * Bugfixes
  - Fix loading vars_plugins in roles (#82239).
  - expect - fix argument spec error using timeout=null (#80982).
  - include_vars - fix calculating depth relative to the root and
    ensure all files are included (#80987).
  - templating - ensure syntax errors originating from a template
    being compiled into Python code object result in a failure
    (#82606)</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1711540800">- update to 2.16.5:
  https://github.com/ansible/ansible/blob/v2.16.5/changelogs/CHANGELOG-v2.16.rst
  * Minor Changes
  - ansible-test - Add a work-around for permission denied errors
    when using pytest &gt;= 8 on multi-user systems with an
    installed version of ansible-test.
  * Bugfixes
  - Fix an issue when setting a plugin name from an unsafe source
    resulted in ValueError: unmarshallable object (#82708)
  - Harden python templates for respawn and ansiballz around str
    literal quoting
  - ansible-test - The libexpat package is automatically upgraded
    during remote bootstrapping to maintain compatibility with
    newer Python packages.
  - template - Fix error when templating an unsafe string which
    corresponds to an invalid type in Python (#82600).
  - winrm - does not hang when attempting to get process output
    when stdin write failed</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1713268800">- adjust spec to new name for PyPI file name (underscore instead of
  hyphen: ansible_core-2.16.6.tar.gz)
- update to 2.16.6:
  https://github.com/ansible/ansible/blob/v2.16.6/changelogs/CHANGELOG-v2.16.rst
  * Bugfixes
  - Consolidated the list of internal static vars, centralized
    them as constant and completed from some missing entries.
  - Fix check for missing `_sub_plugin` attribute in older
    connection plugins (#82954)
  - Fixes permission for cache json file from 600 to 644
    (#82683).
  - Slight optimization to hostvars (instantiate template only
    once per host, vs per call to var).
  - allow_duplicates - fix evaluating if the current role allows
    duplicates instead of using the initial value from the
    duplicate's cached role.
  - ansible-config will now properly template defaults before
    dumping them.
  - ansible-test ansible-doc sanity test - do not remove
    underscores from plugin names in collections before calling
    ansible-doc (#82574).
  - async - Fix bug that stopped running async task in --check
    when check_mode: False was set as a task attribute - #82811
  - blockinfile - when create=true is used with a filename
    without path, the module crashed (#81638).
  - dnf - fix an issue when cached RPMs were left in the cache
    directory even when the keepcache setting was unset (#81954)
  - dnf5 - replace removed API calls
  - facts - add a generic detection for VMware in product name.
  - fetch - add error message when using dest with a trailing
    slash that becomes a local directory - #82878
  - find - do not fail on Permission errors (#82027).
  - unarchive modules now uses zipinfo options without relying on
    implementation defaults, making it more compatible with all
    OS/distributions.
  - winrm - Do not raise another exception during cleanup when a
    task is timed out - #81095</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1716465600">- update to 2.16.7:
  https://github.com/ansible/ansible/blob/v2.16.7/changelogs/CHANGELOG-v2.16.rst
  * Minor Changes
  - ansible.builtin.user - Remove user not found warning (#80267)
  * Bugfixes
  - Add a version ceiling constraint for pypsrp to avoid
    potential breaking changes in the 1.0.0 release.
  - Fix NEVRA parsing of package names that include digit(s) in
    them (#76463, #81018)
  - Fix handlers not being executed in lockstep using the linear
    strategy in some cases (#82307)
  - Give the tombstone error for include pre-fork like other
    tombstoned action/module plugins.
  - Include the task location when a module or action plugin is
    deprecated (#82450).
  - Mirror the behavior of dnf on the command line when handling
    NEVRAs with omitted epoch (#71808)
  - ansible-test - Automatically enable the PyPI proxy for the
    centos7 container to restore the ability to use pip in that
    container.
  - ansible_managed restored it's 'templatability' by ensuring
    the possible injection routes are cut off earlier in the
    process.
  - assemble - fixed missing parameter 'content' in
    `_get_diff_data` API (#82359).
  - dnf - fix an issue when installing a package by specifying a
    file it provides could result in installing a different
    package providing the same file than the package already
    installed resulting in resolution failure (#82461)
  - uri - update the documentation for follow_redirects.</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1718798400">- update to 2.16.8:
  https://github.com/ansible/ansible/blob/v2.16.8/changelogs/CHANGELOG-v2.16.rst
  * Minor Changes
  - ansible-test - Update pypi-test-container to version 3.1.0.
  * Bugfixes
  - Fix the task attribute resolved_action to show the FQCN
    instead of None when action or local_action is used in the
    playbook.
  - Fix using module_defaults with local_action/action (#81905).
  - fixed unit test test_borken_cowsay to address mock not been
    properly applied when existing unix system already have
    cowsay installed.
  - powershell - Implement more robust deletion mechanism for C#
    code compilation temporary files. This should avoid scenarios
    where the underlying temporary directory may be temporarily
    locked by antivirus tools or other IO problems. A failure to
    delete one of these temporary directories will result in a
    warning rather than an outright failure.</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1720958400">- update to 2.17.0:
  https://github.com/ansible/ansible/blob/v2.17.0/changelogs/CHANGELOG-v2.17.rst
  * Major Changes
  - urls.py - Removed support for Python 2
  * Minor Changes
  - Add dump and passno mount information to facts component
    (#80478)
  - Added MIRACLE LINUX 9.2 in RedHat OS Family.
  - Interpreter Discovery - Remove hardcoded references to
    specific python interpreters to use for certain distro
    versions, and modify logic for python3 to become the default.
  - Use Python's built-in functools.update_wrapper instead an
    inline copy from Python 3.7.
  - User can now set ansible.log to record higher verbosity than
    what is specified for display via new configuration item
    LOG_VERBOSITY.
  - DEFAULT_PRIVATE_ROLE_VARS is now overridden by explicit
    setting of public for include_roles and import_roles.
  - ansible-galaxy role|collection init - accept --extra-vars to
    supplement/override the variables ansible-galaxy injects for
    templating .j2 files in the skeleton.
  - import_role action now also gets a public option that
    controls variable exports, default depending on
    DEFAULT_PRIVATE_ROLE_VARS (if using defaults equates to
    public=True).
  - added configuration item TARGET_LOG_INFO that allows the
    user/author to add an information string to the log output on
    targets.
  - ansible-doc - treat double newlines in documentation strings
    as paragraph breaks. This is useful to create multi-paragraph
    notes in module/plugin documentation (#82465).
  - ansible-doc output has been revamped to make it more visually
    pleasing when going to a terminal, also more concise, use -v
    to show extra information.
  - ansible-galaxy - Started normalizing build directory with a
    trailing separator when building collections, internally.
    (#81619).
  - ansible-galaxy dependency resolution messages have changed
    the unexplained 'virtual' collection for the specific type
    ('scm', 'dir', etc) that is more user friendly
  - ansible-test - Add Alpine 3.19 container.
  - ansible-test - Add Alpine 3.19 to remotes.
  - ansible-test - Add Fedora 39 container.
  - ansible-test - Add Fedora 39 remote.
  - ansible-test - Add a work-around for permission denied errors
    when using pytest &gt;= 8 on multi-user systems with an
    installed version of ansible-test.
  - ansible-test - Add support for RHEL 9.3 remotes.
  - ansible-test - Added a macOS 14.3 remote VM.
  - ansible-test - Bump the nios-test-container from version
    2.0.0 to version 3.0.0.
  - ansible-test - Containers and remotes managed by ansible-test
    will have their Python EXTERNALLY-MANAGED marker (PEP668)
    removed. This provides backwards compatibility for existing
    tests running in newer environments which mark their Python
    as externally managed. A future version of ansible-test may
    change this behavior, requiring tests to be adapted to such
    environments.
  - ansible-test - Make Python 3.12 the default version used in
    the base and default containers.
  - ansible-test - Remove Alpine 3(.18) container.
  - ansible-test - Remove Alpine 3.18 from remotes.
  - ansible-test - Remove Fedora 38 remote support.
  - ansible-test - Remove Fedora 38 test container.
  - ansible-test - Remove rhel/9.2 test remote
  - ansible-test - Remove the FreeBSD 13.2 remote.
  - ansible-test - Removed fallback to virtualenv when -m venv is
    non-functional.
  - ansible-test - Removed test remotes: macos/13.2
  - ansible-test - Removed the no-basestring sanity test. The
    test is no longer necessary now that Python 3 is required.
  - ansible-test - Removed the no-dict-iteritems,
    no-dict-iterkeys and no-dict-itervalues sanity tests. The
    tests are no longer necessary since Python 3 is required.
  - ansible-test - Removed the no-main-display sanity test. The
    unwanted pattern is unlikely to occur, since the test has
    existed since Ansible 2.8.
  - ansible-test - Removed the no-unicode-literals sanity test.
    The test is unnecessary now that Python 3 is required and the
    unicode_literals feature has no effect.
  - ansible-test - Special handling for installation of
    cryptography has been removed, as it is no longer necessary.
  - ansible-test - The shellcheck sanity test no longer disables
    the SC2164 check. In most cases, seeing this error means the
    script is missing set -e.
  - ansible-test - The unidiomatic-typecheck rule has been
    enabled in the pylint sanity test.
  - ansible-test - The unidiomatic-typecheck rule has been
    removed from the validate-modules sanity test.
  - ansible-test - Update the base and default containers to use
    Ubuntu 22.04 for the base image. This also updates PowerShell
    to version 7.4.0 with .NET 8.0.0 and ShellCheck to version
    0.8.0.
  - ansible-test - Updated the CloudStack test container to
    version 1.7.0.
  - ansible-test - Updated the distro test containers to version
    6.3.0 to include coverage 7.3.2 for Python 3.8+. The alpine3
    container is now based on 3.18 instead of 3.17 and includes
    Python 3.11 instead of Python 3.10.
  - ansible-test - Updated the distro test containers to version
    7.1.0.
  - ansible-test - When ansible-test installs requirements, it
    now instructs pip to allow installs on externally managed
    environments as defined by PEP 668. This only occurs in
    ephemeral environments managed by ansible-test, such as
    containers, or when the --requirements option is used.
  - ansible-test - When invoking sleep in containers during
    container setup, the env command is used to avoid invoking
    the shell builtin, if present.
  - ansible-test - document block name now included in error
    message for YAML parsing errors (#82353).
  - ansible-test - sanity test allows EXAMPLES to be
    multi-document YAML (#82353).
  - ansible-test now has FreeBSD 13.3 and 14.0 support
  - ansible.builtin.user - Remove user not found warning (#80267)
  - apt_repository.py - use api.launchpad.net endpoint instead of
    launchpad.net/api
  - async tasks can now also support check mode at the same time.
  - async_status now supports check mode.
  - constructed inventory plugin - Adding a note that only
    group_vars of explicit groups are loaded (#82580).
  - csvfile - add a keycol parameter to specify in which column
    to search.
  - dnf - add the best option
  - dnf5 - add the best option
  - filter plugin - Add the count and mandatory_count parameters
    in the regex_replace filter
  - find - add a encoding parameter to specify which encoding of
    the files to be searched.
  - git module - gpg_allowlist name was added in 2.17 and we will
    eventually deprecate the gpg_whitelist alias.
  - import_role - allow subdirectories with `_from` options for
    parity with include_role (#82584).
  - module argument spec - Allow module authors to include
    arbitrary additional context in the argument spec, by making
    use of a new top level key called context. This key should be
    a dict type. This allows for users to customize what they
    place in the argument spec, without having to ignore sanity
    tests that validate the schema.
  - modules - Add the ability for an action plugin to call
    self._execute_module(*, ignore_unknown_opts=True) to execute
    a module with options that may not be supported for the
    version being called. This tells the module basic wrapper to
    ignore validating the options provided match the arg spec.
  - package action now has a configuration that overrides the
    detected package manager, it is still overridden itself by
    the use option.
  - py3compat - Remove ansible.utils.py3compat as it is no longer
    necessary
  - removed the unused argument create_new_password from
    CLI.build_vault_ids (#82066).
  - urls - Add support for TLS 1.3 post handshake certificate
    authentication - #81782
  - urls - reduce complexity of Request.open
  - user - accept yescrypt hash as user password
  - validate-modules tests now correctly handles choices in
    dictionary format.
  * Breaking Changes / Porting Guide
  - assert - Nested templating may result in an inability for the
    conditional to be evaluated. See the porting guide for more
    information.
  * Deprecated Features
  - Old style vars plugins which use the entrypoints
    get_host_vars or get_group_vars are deprecated. The plugin
    should be updated to inherit from BaseVarsPlugin and define a
    get_vars method as the entrypoint.
  - The 'required' parameter in
    'ansible.module_utils.common.process.get_bin_path' API is
    deprecated (#82464).
  - module_utils - importing the following convenience helpers
    from ansible.module_utils.basic has been deprecated:
    get_exception, literal_eval, _literal_eval, datetime, signal,
    types, chain, repeat, PY2, PY3, b, binary_type,
    integer_types, iteritems, string_types, test_type, map and
    shlex_quote.
  - ansible-doc - role entrypoint attributes are deprecated and
    eventually will no longer be shown in ansible-doc from
    ansible-core 2.20 on (#82639, #82678).
  - paramiko connection plugin, configuration items in the global
    scope are being deprecated and will be removed in favor or
    the existing same options in the plugin itself. Users should
    not need to change anything (how to configure them are the
    same) but plugin authors using the global constants should
    move to using the plugin's get_option().
  * Removed Features (previously deprecated)
  - Remove deprecated APIs from ansible-docs (#81716).
  - Remove deprecated JINJA2_NATIVE_WARNING environment variable
    (#81714)
  - Remove deprecated scp_if_ssh from ssh connection plugin
    (#81715).
  - Remove deprecated crypt support from ansible.utils.encrypt
    (#81717)
  - Removed Python 2.7 and Python 3.6 as a supported remote
    version. Python 3.7+ is now required for target execution.
  - With the removal of Python 2 support, the yum module and yum
    action plugin are removed and redirected to dnf.
  * Security Fixes
  - ANSIBLE_NO_LOG - Address issue where ANSIBLE_NO_LOG was
    ignored (CVE-2024-0690)
  - ansible-galaxy - Prevent roles from using symlinks to
    overwrite files outside of the installation directory
    (CVE-2023-5115)
  - templating - Address issues where internal templating can
    cause unsafe variables to lose their unsafe designation
    (CVE-2023-5764)
  * Bugfixes
  - Add a version ceiling constraint for pypsrp to avoid
    potential breaking changes in the 1.0.0 release.
  - All core lookups now use set_option(s) even when doing their
    own custom parsing. This ensures that the options are always
    the proper type.
  - Allow for searching handler subdir for included task via
    include_role (#81722)
  - AnsibleModule.atomic_move - fix preserving extended ACLs of
    the destination when it exists (#72929).
  - Cache host_group_vars after instantiating it once and limit
    the amount of repetitive work it needs to do every time it
    runs.
  - Call PluginLoader.all() once for vars plugins, and load vars
    plugins that run automatically or are enabled specifically by
    name subsequently.
  - Consolidate systemd detection logic into one place (#80975).
  - Consolidated the list of internal static vars, centralized
    them as constant and completed from some missing entries.
  - Do not print undefined error message twice (#78703).
  - Enable file cache for vaulted files during vars lookup to fix
    a strong performance penalty in huge and complex playbboks.
  - Fix NEVRA parsing of package names that include digit(s) in
    them (#76463, #81018)
  - Fix force_handlers not working with any_errors_fatal (#36308)
  - Fix run_once being incorrectly interpreted on handlers
    (#81666)
  - Fix an issue when setting a plugin name from an unsafe source
    resulted in ValueError: unmarshallable object (#82708)
  - Fix check for missing _sub_plugin attribute in older
    connection plugins (#82954)
  - Fix condition for unquoting configuration strings from ini
    files (#82387).
  - Fix for when any_errors_fatal was ignored if error occurred
    in a block with always (#31543)
  - Fix handlers not being executed in lockstep using the linear
    strategy in some cases (#82307)
  - Fix handling missing urls in
    ansible.module_utils.urls.fetch_file for Python 3.
  - Fix issue where an include_tasks handler in a role was not
    able to locate a file in tasks/ when tasks_from was used as a
    role entry point and main.yml was not present (#82241)
  - Fix issues when tasks withing nested blocks wouldn't run when
    force_handlers is set (#81533)
  - Fix loading vars_plugins in roles (#82239).
  - Fix notifying role handlers by listen keyword topics with the
    "role_name : " prefix (#82849).
  - Fix setting proper locale for git executable when running on
    non english systems, ensuring git output can always be
    parsed.
  - Fix tasks in always section not being executed for nested
    blocks with any_errors_fatal (#73246)
  - Fixes permission for cache json file from 600 to 644
    (#82683).
  - Give the tombstone error for include pre-fork like other
    tombstoned action/module plugins.
  - Harden python templates for respawn and ansiballz around str
    literal quoting
  - Include the task location when a module or action plugin is
    deprecated (#82450).
  - Interpreter discovery - Add Amzn to OS_FAMILY_MAP for correct
    family fallback for interpreter discovery (#80882).
  - Mirror the behavior of dnf on the command line when handling
    NEVRAs with omitted epoch (#71808)
  - Plugin loader does not dedupe nor cache filter/test plugins
    by file basename, but full path name.
  - Properly template tags in parent blocks (#81053)
  - Provide additional information about the alternative plugin
    in the deprecation message (#80561).
  - Remove the galaxy_info field platforms from the role
    templates (#82453).
  - Restoring the ability of filters/tests can have same file
    base name but different tests/filters defined inside.
  - Reword the error message when the module fails to parse
    parameters in JSON format (#81188).
  - Reword warning if the reserved keyword _ansible_ used as a
    module parameter (#82514).
  - Run all handlers with the same listen topic, even when
    notified from another handler (#82363).
  - Slight optimization to hostvars (instantiate template only
    once per host, vs per call to var).
  - Stopped misleadingly advertising async mode support in the
    reboot module (#71517).
  - ansible-galaxy role import - fix using the role_name in a
    standalone role's galaxy_info metadata by disabling automatic
    removal of the ansible-role- prefix. This matches the
    behavior of the Galaxy UI which also no longer implicitly
    removes the ansible-role- prefix. Use the --role-name option
    or add a role_name to the galaxy_info dictionary in the
    role's meta/main.yml to use an alternate role name.
  - ansible-test sanity --test runtime-metadata - add
    action_plugin as a valid field for modules in the schema
    (#82562).
  - ansible.module_utils.service - ensure binary data
    transmission in daemonize()
  - any_errors_fatal should fail all hosts and rescue all of them
    when a rescue section is specified (#80981)
  - include_role - properly execute v2_playbook_on_include and
    v2_runner_on_failed callbacks as well as increase ok and
    failed stats in the play recap, when appropriate (#77336)
  - allow_duplicates - fix evaluating if the current role allows
    duplicates instead of using the initial value from the
    duplicate's cached role.
  - ansible-config init will now dedupe ini entries from plugins.
  - ansible-config will now properly template defaults before
    dumping them.
  - ansible-doc - fixed "inicates" typo in output
  - ansible-doc - format top-level descriptions with multiple
    paragraphs as multiple paragraphs, instead of concatenating
    them (#83155).
  - ansible-galaxy - Deprecate use of the Galaxy v2 API (#81781)
  - ansible-galaxy - Provide a better error message when using a
    requirements file with an invalid format - #81901
  - ansible-galaxy - Resolve issue with the dataclass used for
    galaxy.yml manifest caused by using future annotations
  - ansible-galaxy - ensure path to ansible collection when
    installing or downloading doesn't have a backslash (#79705).
  - ansible-galaxy - started allowing the use of pre-releases for
    collections that do not have any stable versions published.
    (#81606)
  - ansible-galaxy - started allowing the use of pre-releases for
    dependencies on any level of the dependency tree that
    specifically demand exact pre-release versions of collections
    and not version ranges. (#81606)
  - ansible-galaxy error on dependency resolution will not error
    itself due to 'virtual' collections not having a
    name/namespace.
  - ansible-galaxy info - fix reporting no role found when
    lookup_role_by_name returns None.
  - ansible-galaxy role import - exit with 1 when the import
    fails (#82175).
  - ansible-galaxy role install - fix installing roles from
    Galaxy that have version None (#81832).
  - ansible-galaxy role install - fix symlinks (#82702, #81965).
  - ansible-galaxy role install - normalize tarfile paths and
    symlinks using ansible.utils.path.unfrackpath and consider
    them valid as long as the realpath is in the tarfile's role
    directory (#81965).
  - ansible-inventory - index available_hosts for major
    performance boost when dumping large inventories
  - ansible-pull now will expand relative paths for the
  - d|--directory option is now expanded before use.
  - ansible-pull will now correctly handle become and connection
    password file options for ansible-playbook.
  - ansible-test - Add a pylint plugin to work around a known
    issue on Python 3.12.
  - ansible-test - Explicitly supply ControlPath=none when
    setting up port forwarding over SSH to address the scenario
    where the local ssh configuration uses ControlPath for all
    hosts, and would prevent ports to be forwarded after the
    initial connection to the host.
  - ansible-test - Fix parsing of cgroup entries which contain a
    : in the path (#81977).
  - ansible-test - Include missing pylint requirements for Python
    3.10.
  - ansible-test - Properly detect docker host when using ssh://
    protocol for connecting to the docker daemon.
  - ansible-test - The libexpat package is automatically upgraded
    during remote bootstrapping to maintain compatibility with
    newer Python packages.
  - ansible-test - The validate-modules sanity test no longer
    attempts to process files with unrecognized extensions as
    Python (resolves #82604).
  - ansible-test - Update pylint to version 3.0.1.
  - ansible-test ansible-doc sanity test - do not remove
    underscores from plugin names in collections before calling
    ansible-doc (#82574).
  - ansible-test validate-modules sanity test - do not treat
    leading underscores for plugin names in collections as an
    attempted deprecation (#82575).
  - ansible-test — Python 3.8–3.12 will use coverage v7.3.2.
  - ansible.builtin.apt - calling clean = true does not properly
    clean certain cache files such as /var/cache/apt/pkgcache.bin
    and /var/cache/apt/pkgcache.bin (#82611)
  - ansible.builtin.uri - the module was ignoring the force
    parameter and always requesting a cached copy (via the
    If-Modified-Since header) when downloading to an existing
    local file. Disable caching when force is true, as documented
    (#82166).
  - ansible_managed restored it's 'templatability' by ensuring
    the possible injection routes are cut off earlier in the
    process.
  - apt - honor install_recommends and dpkg_options while
    installing python3-apt library (#40608).
  - apt - install recommended packages when installing package
    via deb file (#29726).
  - apt_repository - do not modify repo files if the file is a
    symlink (#49809).
  - apt_repository - update PPA URL to point to https URL
    (#82463).
  - assemble - fixed missing parameter 'content' in
    `_get_diff_data` API (#82359).
  - async - Fix bug that stopped running async task in --check
    when check_mode: False was set as a task attribute - #82811
  - blockinfile - when create=true is used with a filename
    without path, the module crashed (#81638).
  - check if there are attributes to set before attempting to set
    them (#76727)
  - copy action now also generates temprary files as hidden ('.'
    prefixed) to avoid accidental pickup by running services that
    glob by extension.
  - copy action now ensures that tempfiles use the same suffix as
    destination, to allow for validate to work with utilities
    that check extensions.
  - deb822_repository - handle idempotency if the order of
    parameters is changed (#82454).
  - debconf - allow user to specify a list for value when vtype
    is multiselect (#81345).
  - delegate_to when set to an empty or undefined variable will
    now give a proper error.
  - distribution.py - Recognize ALP-Dolomite as part of the SUSE
    OS family in Ansible, fixing its previous misidentification
    (#82496).
  - distro - bump bundled distro version from 1.6.0 to 1.8.0
    (#81713).
  - dnf - fix an issue when cached RPMs were left in the cache
    directory even when the keepcache setting was unset (#81954)
  - dnf - fix an issue when installing a package by specifying a
    file it provides could result in installing a different
    package providing the same file than the package already
    installed resulting in resolution failure (#82461)
  - dnf - properly set gpg check options on enabled repositories
    according to the disable_gpg_check option (#80110)
  - dnf - properly skip unavailable packages when skip_broken is
    enabled (#80590)
  - dnf - the nobest option only overrides the distribution
    default when explicitly used, and is used for all supported
    operations (#82616)
  - dnf5 - replace removed API calls
  - dnf5 - respect allow_downgrade when installing packages
    directly from rpm files
  - dnf5 - the nobest option only overrides the distribution
    default when used
  - dwim functions for lookups should be better at detectging
    role context even in abscense of tasks/main.
  - ensure we have logger before we log when we have increased
    verbosity.
  - expect - fix argument spec error using timeout=null (#80982).
  - fact gathering on linux now handles thread count by using
    rounding vs dropping decimals, it should give slightly more
    accurate numbers.
  - facts - add a generic detection for VMware in product name.
  - facts - detect VMware ESXi 8.0 virtualization by product name
    VMware20,1
  - fetch - Do not calculate the file size for Windows fetch
    targets to improve performance.
  - fetch - add error message when using dest with a trailing
    slash that becomes a local directory - #82878
  - find - do not fail on Permission errors (#82027).
  - first_found lookup now always returns a full (absolute) and
    normalized path
  - first_found lookup now always takes into account k=v options
  - flush_handlers - properly handle a handler failure in a
    nested block when force_handlers is set
    (http://github.com/ansible/ansible/issues/81532)
  - galaxy - skip verification for unwanted Python compiled
    bytecode files (#81628).
  - handle exception raised while validating with elements='int'
    and value is not within choices (#82776).
  - include_tasks - include ansible_loop_var and
    ansible_index_var in a loop (#82655).
  - include_vars - fix calculating depth relative to the root and
    ensure all files are included (#80987).
  - interpreter_discovery - handle AnsibleError exception raised
    while interpreter discovery (#78264).
  - iptables - add option choices 'src,src' and 'dst,dst' in
    match_set_flags (#81281).
  - iptables - set jump to DSCP when set_dscp_mark or
    set_dscp_mark_class is set (#77077).
  - known_hosts - Fix issue with @cert-authority entries in
    known_hosts incorrectly being removed.
  - module no_log will no longer affect top level booleans, for
    example no_log_module_parameter='a' will no longer hide
    changed=False as a 'no log value' (matches 'a').
  - moved assemble, raw, copy, fetch, reboot, script and
    wait_for_connection to query task instead of play_context
    ensuring they get the lastest and most correct data.
  - reboot action now handles connections with 'timeout' vs only
    'connection_timeout' settings.
  - role params now have higher precedence than host facts again,
    matching documentation, this had unintentionally changed in
    2.15.
  - roles, code cleanup and performance optimization of
    dependencies, now cached, and public setting is now
    determined once, at role instantiation.
  - roles, the static property is now correctly set, this will
    fix issues with public and DEFAULT_PRIVATE_ROLE_VARS controls
    on exporting vars.
  - set_option method for plugins to update config now properly
    passes through type casting and validation.
  - ssh - add tests for the SSH connection plugin.
  - support url-encoded credentials in URLs like
    http://x%40:%40@example.com (#82552)
  - syslog - Handle ValueError exception raised when sending Null
    Characters to syslog with Python 3.12.
  - systemd_services - update documentation regarding
    required_one_of and required_by parameters (#82914).
  - template - Fix error when templating an unsafe string which
    corresponds to an invalid type in Python (#82600).
  - template action will also inherit the behavior from copy (as
    it uses it internally).
  - templating - ensure syntax errors originating from a template
    being compiled into Python code object result in a failure
    (#82606)
  - unarchive - add support for 8 character permission strings
    for zip archives (#81705).
  - unarchive - force unarchive if symlink target changes
    (#30420).
  - unarchive modules now uses zipinfo options without relying on
    implementation defaults, making it more compatible with all
    OS/distributions.
  - unsafe data - Address an incompatibility when iterating or
    getting a single index from AnsibleUnsafeBytes
  - unsafe data - Address an incompatibility with
    AnsibleUnsafeText and AnsibleUnsafeBytes when pickling with
    protocol=0
  - unsafe data - Enable directly using AnsibleUnsafeText with
    Python pathlib (#82414)
  - uri - update the documentation for follow_redirects.
  - uri action plugin now skipped during check mode (not
    supported) instead of even trying to execute the module,
    which already skipped, this does not really change the
    result, but returns much faster.
  - vars - handle exception while combining VarsWithSources and
    dict (#81659).
  - wait_for should not handle 'non mmapable files' again.
  - winrm - Better handle send input failures when communicating
    with hosts under load
  - winrm - Do not raise another exception during cleanup when a
    task is timed out - #81095
  - winrm - does not hang when attempting to get process output
    when stdin write failed</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1720958401">- update to 2.17.1:
  https://github.com/ansible/ansible/blob/v2.17.1/changelogs/CHANGELOG-v2.17.rst
  * Minor Changes
  - ansible-test - Update pypi-test-container to version 3.1.0.
  * Bugfixes
  - Fix rapid memory usage growth when notifying handlers using
    the listen keyword (#83392)
  - Fix the task attribute resolved_action to show the FQCN
    instead of None when action or local_action is used in the
    playbook.
  - Fix using module_defaults with local_action/action (#81905).
  - fixed unit test test_borken_cowsay to address mock not been
    properly applied when existing unix system already have
    cowsay installed.
  - powershell - Implement more robust deletion mechanism for C#
    code compilation temporary files. This should avoid scenarios
    where the underlying temporary directory may be temporarily
    locked by antivirus tools or other IO problems. A failure to
    delete one of these temporary directories will result in a
    warning rather than an outright failure.
  - shell plugin - properly quote all needed components of shell
    commands (#82535)</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1721131200">- update to 2.17.2:
  https://github.com/ansible/ansible/blob/v2.17.2/changelogs/CHANGELOG-v2.17.rst
  * Bugfixes
  - Fix a traceback when an environment variable contains certain
    special characters (#83498)
  - dnf - reverted incomplete fix from 2.17.2rc1 (#83504)
  - dnf, dnf5 - fix for installing a set of packages by
    specifying them using a wildcard character (#83373)
  - linear strategy now provides a properly templated task name
    to the v2_runner_on_started callback event.
  - package_facts - ignore warnings sent by apk on stderr
    (#83501).
  - replace - Updated before/after example (#83390).
  - templating hostvars under native jinja will not cause
    serialization errors anymore.</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1723550400">- update to 2.17.3:
  https://github.com/ansible/ansible/blob/v2.17.3/changelogs/CHANGELOG-v2.17.rst
  * Minor Changes
  - ansible-test - Improve the error message shown when an
    unknown --remote or --docker option is given.
  - ansible-test - Removed the vyos/1.1.8 network remote as it is
    no longer functional.
  * Bugfixes
  - Warning now includes filename and line number of variable
    when specifying a list of dictionaries for vars (#82528).
  - config, restored the ability to set module compression via a
    variable
  - debconf - fix normalization of value representation for
    boolean vtypes in new packages (#83594)
  - linear strategy: fix handlers included via include_tasks
    handler to be executed in lockstep (#83019)</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1726056000">- update to 2.17.4:
  https://github.com/ansible/ansible/blob/v2.17.4/changelogs/CHANGELOG-v2.17.rst
  * Bugfixes
  - Fix SemanticVersion.parse() to store the version string so
    that __repr__ reports it instead of None (#83831).
  - Fix an issue where registered variable was not available for
    templating in loop_control.label on skipped looped tasks
    (#83619)
  - Fix for meta tasks breaking host/fork affinity with
    host_pinned strategy (#83294)
  - Fix using the current task's directory for looking up
    relative paths within roles (#82695).
  - atomic_move - fix using the setgid bit on the parent
    directory when creating files (#46742, #67177).
  - connection plugins using the 'extras' option feature would
    need variables to match the plugin's loaded name, sometimes
    requiring fqcn, which is not the same as the
    documented/declared/expected variables. Now we fall back to
    the 'basename' of the fqcn, but plugin authors can still set
    the expected value directly.
  - csvfile lookup - give an error when no search term is
    provided using modern config syntax (#83689).
  - include_tasks - Display location when attempting to load a
    task list where include_* did not specify any value - #83874
  - powershell - Improve CLIXML decoding to decode all control
    characters and unicode characters that are encoded as
    surrogate pairs.
  - psrp - Fix bug when attempting to fetch a file path that
    contains special glob characters like []
  - runtime-metadata sanity test - do not crash on deprecations
    if galaxy.yml contains an empty version field (#83831).
  - ssh - Fix bug when attempting to fetch a file path with
    characters that should be quoted when using the piped
    transfer method</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1728648000">- update to 2.17.5:
  https://github.com/ansible/ansible/blob/v2.17.5/changelogs/CHANGELOG-v2.17.rst
  * Bugfixes
  - Add descriptions for ansible-galaxy install --help` and
    ``ansible-galaxy role|collection install --help.
  - Errors now preserve stacked error messages even when YAML is
    involved.
  - ansible-galaxy install --help - Fix the usage text and
    document that the requirements file passed to -r can include
    collections and roles.
  - copy - mtime/atime not updated. Fix now update
    mtime/atime(#83013)
  - delay keyword is now a float, matching the underlying 'time'
    API and user expectations.
  - dnf5 - re-introduce the state: installed alias to state:
    present (#83960)
  - module_utils atomic_move (used by most file based modules),
    now correctly handles permission copy and setting mtime
    correctly across all paths</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1731585600">- update to 2.17.6:
  https://github.com/ansible/ansible/blob/v2.17.6/changelogs/CHANGELOG-v2.17.rst
  * Minor Changes
  - ansible-test - Improve container runtime probe error
    handling. When unexpected probe output is encountered, an
    error with more useful debugging information is provided.
  * Security Fixes
  - include_vars action - Ensure that result masking is correctly
    requested when vault-encrypted files are read.
    (CVE-2024-8775)
  - task result processing - Ensure that action-sourced result
    masking (_ansible_no_log=True) is preserved. (CVE-2024-8775)
  - user action won't allow ssh-keygen, chown and chmod to run on
    existing ssh public key file, avoiding traversal on existing
    symlinks (CVE-2024-9902).
  * Bugfixes
  - Fix disabling SSL verification when installing collections
    and roles from git repositories. If --ignore-certs isn't
    provided, the value for the GALAXY_IGNORE_CERTS configuration
    option will be used (#83326).
  - Improve performance on large inventories by reducing the
    number of implicit meta tasks.
  - Use the requested error message in the
    ansible.module_utils.facts.timeout timeout function instead
    of hardcoding one.
  - ansible-test - Enable the sys.unraisablehook work-around for
    the pylint sanity test on Python 3.11. Previously the
    work-around was only enabled for Python 3.12 and later.
    However, the same issue has been discovered on Python 3.11.
  - debconf - set empty password values (#83214).
  - facts - skip if distribution file path is directory, instead
    of raising error (#84006).
  - user action will now require O(force) to overwrite the public
    part of an ssh key when generating ssh keys, as was already
    the case for the private part.
  - user module now avoids changing ownership of files symlinked
    in provided home dir skeleton</changelog>
  <changelog author="Harshvardhan Sharma &lt;harshvardhan.sharma@suse.com&gt;" date="1732190400">- Added necessary test dependencies: pytest-xdist, pytest-mock,
  pytz, passlib, git-core, and openssh to ensure proper test
  execution.
- Introduced the `ansible_python_version` variable and updated the
  test command.</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1732276800">- Backport patch to relax resolvelib dependency:
  771f7ad29ca4d259761eaa88673c2e32f6412bbe.patch</changelog>
</package>
<package pkgid="872dfc85e3fdbce7d7c95f255c235cdd1ef833e3e52fdc77853b922aa269bac89ba6509cd12134d624dd000badc3978a78c7a10db01ac27440541661a8d4b90d" name="ansible-variables" arch="noarch">
  <version epoch="0" ver="0.8.1" rel="1.1"/>
  <changelog author="Johannes Kastl &lt;kastl@b1-systems.de&gt;" date="1684756800">- new package ansible-variables: Keep track of Ansible host context
  variables</changelog>
  <changelog author="Johannes Kastl &lt;kastl@b1-systems.de&gt;" date="1684756801">- remove python_subpackages macro</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1684929600">- Use noun phrase for descriptions; update descriptions altogether
  to point out this is a tool (not a library or something else).</changelog>
  <changelog author="Johannes Kastl &lt;kastl@b1-systems.de&gt;" date="1694174400">- update to 0.5.1:
  Bug Fixes
  * passing undefined variable to --var will lead to Exception
    ([#30](https://github.com/hille721/ansible-variables/issues/30))</changelog>
  <changelog author="Johannes Kastl &lt;kastl@b1-systems.de&gt;" date="1700740800">- update to 0.6.0:
  Features:
  * support for Python 3.12 and Ansible 2.16</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1710504000">- update to 0.6.1:
  * dependency updates</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1717156800">- update to 0.7.0:
  Features
  * support for ansible-core 2.17</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1726920000">- update to 0.7.3:
  * usage of uv for development and packaging(#81) (eca13a3)
- update to 0.7.2:
  * migrate to release please v4 (#78) (e14c7b3)
- update to 0.7.1:
  * deps: bump pypa/gh-action-pypi-publish from 1.8.14 to 1.10.1 (#75) (7f3c4ee)</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1727870400">- update to 0.8.0:
  * ansible-core 2.18 (#97) (1ab8f5e)</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1730635200">- update to 0.8.1:
  * deps: bump coactions/dynamic-matrix from 3 to 4 (#104)
    (f7e5124)</changelog>
</package>
<package pkgid="59a639cfa3afe81a3976e7d6680a30008b527eccf35c89cc41e081a0731fe2b0d90720bbcba5c6d930a51e96387c27c0456cf84aed2741f55d29d04bfcfe3afb" name="ansible-variables" arch="src">
  <version epoch="0" ver="0.8.1" rel="1.1"/>
  <changelog author="Johannes Kastl &lt;kastl@b1-systems.de&gt;" date="1684756800">- new package ansible-variables: Keep track of Ansible host context
  variables</changelog>
  <changelog author="Johannes Kastl &lt;kastl@b1-systems.de&gt;" date="1684756801">- remove python_subpackages macro</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1684929600">- Use noun phrase for descriptions; update descriptions altogether
  to point out this is a tool (not a library or something else).</changelog>
  <changelog author="Johannes Kastl &lt;kastl@b1-systems.de&gt;" date="1694174400">- update to 0.5.1:
  Bug Fixes
  * passing undefined variable to --var will lead to Exception
    ([#30](https://github.com/hille721/ansible-variables/issues/30))</changelog>
  <changelog author="Johannes Kastl &lt;kastl@b1-systems.de&gt;" date="1700740800">- update to 0.6.0:
  Features:
  * support for Python 3.12 and Ansible 2.16</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1710504000">- update to 0.6.1:
  * dependency updates</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1717156800">- update to 0.7.0:
  Features
  * support for ansible-core 2.17</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1726920000">- update to 0.7.3:
  * usage of uv for development and packaging(#81) (eca13a3)
- update to 0.7.2:
  * migrate to release please v4 (#78) (e14c7b3)
- update to 0.7.1:
  * deps: bump pypa/gh-action-pypi-publish from 1.8.14 to 1.10.1 (#75) (7f3c4ee)</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1727870400">- update to 0.8.0:
  * ansible-core 2.18 (#97) (1ab8f5e)</changelog>
  <changelog author="Johannes Kastl &lt;opensuse_buildservice@ojkastl.de&gt;" date="1730635200">- update to 0.8.1:
  * deps: bump coactions/dynamic-matrix from 3 to 4 (#104)
    (f7e5124)</changelog>
</package>
<package pkgid="fb4f90e618823c3ea205d1d711a117f2093be076f01c243ae63057ea0df6b1698292014872ef6dd2084737782c3db0be807756ac0a37183caaa5efcd34306b65" name="ant" arch="noarch">
  <version epoch="0" ver="1.10.15" rel="1.1"/>
  <changelog author="Pedro Monreal &lt;pmonreal@suse.com&gt;" date="1622721600">- Update to 1.10.10
  * SCP (with sftp=true) task would fail if fetching file located
    in root directory.
  * Fixed: javac task would fail if the arguments file it
    (internally) created didn't quote the # character.
  * Make sure LegacyXmlResultFormatter encodes characters illegal
    in XML the same way JUnit5's built-in formatter would.
  * LegacyXmlResultFormatter no longer double-encodes &lt;&gt;&amp; in
    system-err and system-out.
  * Fixes a bug in junitlauncher task's legacy-xml formatter,
    where the testcase representing a @Parameterized JUnit4 test
    wasn't being reported in the XML.
  * Fixes a bug where the ant-testutil-sources.jar that gets
    published to Maven central repository didn't contain any
    source files.
  * The &lt;http&gt; condition didn't follow redirects from http to https.
  * ZipOutputStream now overrides write(int) in order to make sure
    single byte writes get the same treatment as array writes.
  * Fixes a potential deadlock in junitlauncher task when using
    legacy-xml reporter.
  * javaversion condition now has a new "atmost" attribute. See
    the javaversion manual for more details
  * The "listener" nested element of the "junitlauncher" task now
    has a new "useLegacyReportingName" attribute which can be used
    to control the test identifiers names that get reported by the
    listener. See the junitlauncher manual for more details. Note that
    this change also introduces a new "setUseLegacyReportingName" method
    on the org.apache.tools.ant.taskdefs.optional.junitlauncher.TestResultFormatter
    interface. This will break backward compatibility with any of your custom
    result formatters which implemented this interface and such implementations
    are now expected to implement this new method.
  * A new attribute preserveduplicates allows &lt;resourcelist&gt; to
    return the same resource multiple times when set to true.
  * A new attribute filterbeforeconcat in &lt;concat&gt; can be used to
    decide whether the filterchain should be applied to the
    concatenated content (the default) or each nested resource
    individually before concatenating them.
  * The ssh tasks now share a new nested element additionalConfig that can
    be used to set config values for the jsch Session used by the task.
  * Added new discardOutput and discardError properties to redirector
    and the exec, apply and java tasks which can be used to completely
    discard any (error) output. This is a platform independent
    alternative to directiong output to any kind of null device.
  * junitlauncher now prints a more useful and instantaneous summary of
    tests being run, closely matching the junit task's summary.</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1639569600">- Update to 1.10.12:
  * The update includes fixes for the following CVEs:
  CVE-2021-36374, bsc#1188469
    Excessive memory allocation when reading a specially
    crafted ZIP archive or a derived formats.
  CVE-2021-36373, bsc#1188468
    Excessive memory allocation when reading a specially
    crafted TAR archive.
  * The http condition would follow redirects even when "followRedirects" attribute
  was set to "false". This has now been fixed. Bugzilla Report 65489
  * Made sure setting build.compiler to the fully qualified classname
  that corresponds to extJavac or modern has the same effect as using
  the shorter alias names. Bugzilla Report 65539
  * Prevent potential deadlocks in org.apache.tools.ant.IntrospectionHelper.
  Bugzilla Report 65424
  * The implementation of AntClassLoader#findResources() has been changed to optimize
  it for potential performance issues, as those noted at https://issues.jenkins.io/browse/JENKINS-22310?focusedCommentId=197405&amp;page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-197405
  Github Pull Request #151
  * AntClassLoader now implements the ClassLoader#findResource(String) method.
  Github Pull Request #150
  * Ant tries to avoid file name canonicalization when possible.
  Bugzilla Report 65499
  * javadoc task will now look for warning messages in the STDERR stream too
  when "failonwarning" is set to true to account for changes in JDK 17+
  * The tar task now preserves symlinks of nested tarfilesets.
  Github Pull Request #142
- Changes from 1.10.11:
  * a race condition could lead to NullPointerExceptions when running
  tasks in parallel.
  Bugzilla Report 65316
  * fixed potential OutOfMemory errors when reading broken archives
  using the tar or zip formats or formats derived from zip.
  * org.apache.tools.ant.taskdefs.optional.junitlauncher.confined.JUnitLauncherTask now
  has a new protected createExecuteWatchdog() method for allowing it to be overriden.
  Github Pull Request #147
  * Upgraded AntUnit to 1.4.1.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1645531200">- Do not build against the log4j12 packages, use the new reload4j</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1652097600">- Disable a test failing to compile with junit5 5.8.x</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1674043200">- Update ant keyring with new developer keys.
- Update to 1.10.13:
  * Breaking changes:
  - &lt;get&gt; has a new attribute authenticateOnRedirect that can be
    used to prevent Ant from sending the configured credentials
    when following a redirect. It is false by default, which means
    builds that rely on credentials being used on the redirected
    URI may break.
  * Fixed bugs:
  - the PropertyEnumerator change introduced in 1.10.9 proved to
    be not fully backwards compatible when combined with certain
    custom PropertyHelper implementations - for example when using
    AntXtras.
  - legacy-xml reporter of the junitlauncher task now escapes ]]&gt;
    when writing CDATA.
  - &lt;scp&gt; may leak connections when trying to preserve the last
    modified timestamps of files transferred recursively from a
    server.
  - tstamp task would in certain cases parse the SOURCE_DATE_EPOCH
    environment variable value to an incorrect date. This has now
    been fixed.
  - fetch.xml didn't set up non-default repositories propery and
    thus failed to download JAI.
  - When building and installing Ant distribution from source, the
    build script would change permissions on unrelated files in
    the destination directory. This is now fixed and such
    unrelated files in the destination directory will be left
    untouched.
  - parsing tar entries with multiple NUL bytes in their name
    would include garbage bytes as the name included all bytes up
    to the last NUL rather than the first.
  - loadresource might log warnings even though quiet was set to
    true
  - javac task would add paths constructs containing wildcards to
    the internally created argument file where wildcards are not
    allowed
  * Other changes:
  - added an implementation of the MIME Mail sender based on the
    repackaged Jakarta Mail package rather than javax Mail.
  - The "listener" element in the junitlauncher task now supports
    an "extension" attribute to control the filename extension
    of the generated output file from the listener.
  - &lt;ftp&gt; now supports FTPs.
  - DirectoryScanner avoids listing directory contents when it
    known it will never use the information retrieved. This may
    improve performance in some special cases.
  - &lt;manifest&gt; will now create the parent directory of the
    manifestFile attribute if it doesn't exist.
  - org.apache.tools.ant.BuildLogger now has a new method
    getMessageOutputLevel() which returns the currently set
    message output level.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1674734400">- Package and distribute the new ant-jakartamail</changelog>
  <changelog author="Frederic Crozat &lt;fcrozat@suse.com&gt;" date="1683201600">- Add _multibuild to define additional spec files as additional
  flavors.
  Eliminates the need for source package links in OBS.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1693483200">- Update to 1.10.14:
  * Changes that could break older environments:
    + Resource#compareTo now invokes getName rather than toString as
    the later may be costly (for example in the case of a
    StringResource).
    + When using Java 18 or higher, Ant will no longer use Java
    SecurityManager because it has been deprecated for removal and
    by default is disallowed to be set at runtime
    https://openjdk.org/jeps/411.
    This will mean that the "&lt;permissions&gt;" type is no longer
    functional when using Java 18 or higher.
    Furthermore, when using Java 18 or higher, if the build
    executes tasks that call "java.lang.System.exit()" and if
    those tasks aren't running in a forked VM of their own, then
    such tasks will now kill the entire Ant build process. It is
    recommended that such tasks be updated to launch in a forked
    VM so that the System.exit() call will not impact the JVM in
    which Ant process runs.
  * Fixed bugs:
    + log only the stylesheet name in the xslt task.
    + junitlauncher task's "test" and "listener" elements which take
    a "outputDir" property were incorrectly resolving the
    outputDir against the current working directory instead of the
    project's basedir.
    + regexmapper would, in some cases, incorrectly consume
    backslash characters from the "to" attribute, resulting in
    missing backslashes in the output.
    + &lt;fixcrlf&gt;, &lt;replace&gt; and &lt;replaceregexp&gt; now try to preserve
    the file permissions of the files they modify.
    + junitlauncher task would fail if a forked test timed out even
    if haltOnFailure was set to false.
    + fixes a bug in org.apache.tools.zip.ZipOutputStream where,
    even when "zip64Mode" is set to "always", ZipOutputStream may
    not create a CEN extra field data for the entry.
    + legacy-xml listener of junitlauncher task wouldn't report
    certain failures involving junit jupiter dynamic tests.
    + allow.class which was introduced in Ant 1.10.13 release, has
    been removed from this 1.10.14 release. This class was
    introduced in context of the SecurityManager changes in
    Ant 1.10.13, which have now been reverted in Ant 1.10.14,
    since they caused several regressions.
  * Other changes:
    + &lt;fork&gt; element of the junitlauncher task now has a new
    optional "java" attribute which can be used to point to a
    different Java installation for runnning the forked tests.
    + made sure &lt;echoproperties&gt; sorts the echoed properties on
    JDK9+ as well.
    + org.apache.tools.ant.taskdefs.Recorder class now introduces a
    setLogLevel(LogLevel level) method.
    + The &lt;fork&gt; element of junitlaunchertask now allows a
    "forkMode" attribute. forkMode=perTestClass can now be used to
    launch each test class in a separate forked JVM.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1694433600">- Added patch:
  * reproducible-propertyfile-task.patch
    + Debian patch to improve propertyfile task in RPM builds by
    using the date specified by the SOURCE_DATE_EPOCH variable
    in the header of the .properties file generated</changelog>
  <changelog author="Anton Shvetz &lt;shvetz.anton@gmail.com&gt;" date="1706270400">- Add forgotten univocity-parsers to
  %{_sysconfdir}/ant.d/junitlauncher (needed to run unit tests
  annotated with @CsvSource and @CsvFileSource)</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1708430400">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1714219200">- Put hamcrest on the classpath of ant-junit module</changelog>
  <changelog author="Anton Shvetz &lt;shvetz.anton@gmail.com&gt;" date="1714824000">- Add forgotten open-test-reporting/events to
  %{_sysconfdir}/ant.d/junitlauncher</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1721304000">- Added patches:
  * reproducible-jar-mtime.patch
    + make the modification times of files in a jar file
    reproducible
  * reproducible-javadoc.patch
    + make javadoc generation reproducible: don't generate
    timestamps, and normalize locale and encoding</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1723550400">- Modified patches:
  * reproducible-jar-mtime.patch
    + attempt more normalization of mtimes in jar files
  * reproducible-javadoc.patch
    + fix the patch to work with custom doclets too</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1726574400">- Modified patch:
  * reproducible-jar-mtime.patch
    + try different approach to get bit-reproducible builds</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1727611200">- Fix build after removal of the default %%{java_home} define</changelog>
  <changelog author="Gus Kenion &lt;gus.kenion@suse.com&gt;" date="1730721600">- Upgrade to version 1.10.15
  * Bug fixes:
    + Fixes an regression, introduced in Ant 1.10.13, where
    pathconvert would unintentionally trim the string output.
    Bugzilla Report 67082
    + Fixes a bug in &lt;depend&gt; task which would throw a
    ClassFormatError if it encountered constant pool entry type
    17.  Bugzilla Report 66552
    + Launching ant.bat from within a Java program using
    java.lang.Runtime.exec() could result in an unexpected
    failure. This has now been fixed.  Bugzilla Report 67417
    + Fixes an issue in bootstrap.bat when trying to detect if the
    "javac" command in the JDK supports the "--release" option.
    Github Pull Request #205
    + Fixes a bug in
    org.apache.tools.ant.taskdefs.email.EmailAddress which would
    throw a java.lang.StringIndexOutOfBoundsException if the
    email address passed to its constructor was an empty String.
    Bugzilla Report 68462
    + legacy-xml reporter of junitlauncher task was using a
    non-buffered outputstream when generating the report. This
    introduces severe performance penalties since the writes
    translate to native write system calls. This has been fixed
    to use a BufferedOutputStream.  Github Pull Request #207
  * Other changes:
    + exec task now logs the process' non-zero exit code at INFO
    level instead of the previous ERROR level. The following
    message from exec task is the one who's level has been
    changed:
    Result: 1
    Bugzilla Report 26453
    + Removes direct references to
    com.sun.net.ssl.internal.ssl.Provider class from the mail
    task, since that internal JDK class is no longer available in
    recent versions of Java.  Bugzilla Report 68460
    + &lt;replaceregexp&gt; has a new failOnError attribute which, when
    enabled, makes the task throw a BuildException for certain
    error cases that will only be logged otherwise.  Github Pull
    Request #206
    + &lt;ftp&gt; task now has a new "useSecureDataChannel" attribute
    which can be set to true, when ftps is enabled, to enable
    secure data channel.  Bugzilla Report 68773
- Unify .spec files
  * remove ant-antlr.changes
  * remove ant-antlr.spec
  * remove ant-junit.changes
  * remove ant-junit.spec
  * remove ant-junit5.changes
  * remove ant-junit5.spec</changelog>
</package>
<package pkgid="f42fd15c775435a3c36e74871c7cab0f838399862aa90c7ea318a6f9321335e3cad3a54cf3356a645ebd713f1aa8a3062b7ce5fbbc6ce51c0158701dab036300" name="ant" arch="src">
  <version epoch="0" ver="1.10.15" rel="1.1"/>
  <changelog author="Pedro Monreal Gonzalez &lt;pmonrealgonzalez@suse.com&gt;" date="1589457600">- Update to 1.10.8
  * Security fix: [CVE-2020-1945, bsc#1171696]
  - A new property ant.tmpdir provides improved control over the
    location Ant uses to create temporary files
  * sshexec failed to write output to a file if the file didn't exist
  * Fixes a regression in javac task involving command line argument files.
  * sshexec, sshsession and scp now support a new sshConfig parameter.
  It specified the SSH configuration file (typically ${user.home}/.ssh/config)
  defining the username and keyfile to be used per host.
  * "legacy-xml" formatter of junitlauncher task wasn't writing out
  exceptions that happen in @BeforeAll method of a test.
  * Fixes a potential ConcurrentModificationException in XMLLogger.
  * Fixes a bug in junitlauncher task in forked mode, where if a listener element
  was used as a sibling element for either the test or testclasses element,
  then the forked mode launch would fail.
  * Fixes an issue in AntStructure where an incorrect DTD was being generated.
  * Fixes an incorrect variable name usage in junit-frames-xalan1.xsl.
  * The runant.py script should now work with Python 3.
  * rmic has been removed from Java 15. The task will now throw an
  exception if you try to use it while running Java 15 or newer.
- Remove ant-python3.patch fixed upstream</changelog>
  <changelog author="Pedro Monreal &lt;pmonreal@suse.com&gt;" date="1601553600">- Update to 1.10.9
  * Security fix: [bsc#1177180, CVE-2020-11979]
  - Insecure temporary file vulnerability
  * Fixed bugs:
  - The ftp task could throw a NullPointerException if an
    error occured.
  - Propertyset now also sees in-scope local properties.
  - Replaced ReaderInputStream with the version of Apache
    Commons IO due to problems with surrogate pairs.
  - &lt;fixcrlf&gt; will no longer remove the temporary file it
    just created before writing to it.
  - &lt;sshexec&gt; and &lt;scp&gt; didn't deal with wildcard hostnames
    in shs config files properly.
  * Other changes:
  - Ant will no longer log a warning if it doesn't find tools.jar.
  - The &lt;jar&gt; task accepts now a nested &lt;indexjarsmapper&gt;
    element that can be used to perform custom filename
    transformations for the &lt;indexjars&gt; archives.
  - Added a new PropertyEnumerator interface that extensions can
    provide if they are managing properties unknown to the Ant project.
  - Added some special code to support GraalVM JavaScript as
    javax.script scripting engine for JavaScript. In particular we
    relax some security settings of GraalVM so that scripts can access
    Ant objects.
  - Also Ant enables Nashorn compatibility mode by default, you can
    disable that by setting the magic Ant property
    ant.disable.graal.nashorn.compat to true.
  - If the magic property ant.tmpdir hasn't been set and Ant can
    control the permissions of directories it creates it will create an
    owner-owned temporary directory unaccessible to others as default
    tempdir as soon as a temporary file is created for the first time.</changelog>
  <changelog author="Pedro Monreal &lt;pmonreal@suse.com&gt;" date="1622721600">- Update to 1.10.10
  * SCP (with sftp=true) task would fail if fetching file located
    in root directory.
  * Fixed: javac task would fail if the arguments file it
    (internally) created didn't quote the # character.
  * Make sure LegacyXmlResultFormatter encodes characters illegal
    in XML the same way JUnit5's built-in formatter would.
  * LegacyXmlResultFormatter no longer double-encodes &lt;&gt;&amp; in
    system-err and system-out.
  * Fixes a bug in junitlauncher task's legacy-xml formatter,
    where the testcase representing a @Parameterized JUnit4 test
    wasn't being reported in the XML.
  * Fixes a bug where the ant-testutil-sources.jar that gets
    published to Maven central repository didn't contain any
    source files.
  * The &lt;http&gt; condition didn't follow redirects from http to https.
  * ZipOutputStream now overrides write(int) in order to make sure
    single byte writes get the same treatment as array writes.
  * Fixes a potential deadlock in junitlauncher task when using
    legacy-xml reporter.
  * javaversion condition now has a new "atmost" attribute. See
    the javaversion manual for more details
  * The "listener" nested element of the "junitlauncher" task now
    has a new "useLegacyReportingName" attribute which can be used
    to control the test identifiers names that get reported by the
    listener. See the junitlauncher manual for more details. Note that
    this change also introduces a new "setUseLegacyReportingName" method
    on the org.apache.tools.ant.taskdefs.optional.junitlauncher.TestResultFormatter
    interface. This will break backward compatibility with any of your custom
    result formatters which implemented this interface and such implementations
    are now expected to implement this new method.
  * A new attribute preserveduplicates allows &lt;resourcelist&gt; to
    return the same resource multiple times when set to true.
  * A new attribute filterbeforeconcat in &lt;concat&gt; can be used to
    decide whether the filterchain should be applied to the
    concatenated content (the default) or each nested resource
    individually before concatenating them.
  * The ssh tasks now share a new nested element additionalConfig that can
    be used to set config values for the jsch Session used by the task.
  * Added new discardOutput and discardError properties to redirector
    and the exec, apply and java tasks which can be used to completely
    discard any (error) output. This is a platform independent
    alternative to directiong output to any kind of null device.
  * junitlauncher now prints a more useful and instantaneous summary of
    tests being run, closely matching the junit task's summary.</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1639569600">- Update to 1.10.12:
  * The update includes fixes for the following CVEs:
  CVE-2021-36374, bsc#1188469
    Excessive memory allocation when reading a specially
    crafted ZIP archive or a derived formats.
  CVE-2021-36373, bsc#1188468
    Excessive memory allocation when reading a specially
    crafted TAR archive.
  * The http condition would follow redirects even when "followRedirects" attribute
  was set to "false". This has now been fixed. Bugzilla Report 65489
  * Made sure setting build.compiler to the fully qualified classname
  that corresponds to extJavac or modern has the same effect as using
  the shorter alias names. Bugzilla Report 65539
  * Prevent potential deadlocks in org.apache.tools.ant.IntrospectionHelper.
  Bugzilla Report 65424
  * The implementation of AntClassLoader#findResources() has been changed to optimize
  it for potential performance issues, as those noted at https://issues.jenkins.io/browse/JENKINS-22310?focusedCommentId=197405&amp;page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-197405
  Github Pull Request #151
  * AntClassLoader now implements the ClassLoader#findResource(String) method.
  Github Pull Request #150
  * Ant tries to avoid file name canonicalization when possible.
  Bugzilla Report 65499
  * javadoc task will now look for warning messages in the STDERR stream too
  when "failonwarning" is set to true to account for changes in JDK 17+
  * The tar task now preserves symlinks of nested tarfilesets.
  Github Pull Request #142
- Changes from 1.10.11:
  * a race condition could lead to NullPointerExceptions when running
  tasks in parallel.
  Bugzilla Report 65316
  * fixed potential OutOfMemory errors when reading broken archives
  using the tar or zip formats or formats derived from zip.
  * org.apache.tools.ant.taskdefs.optional.junitlauncher.confined.JUnitLauncherTask now
  has a new protected createExecuteWatchdog() method for allowing it to be overriden.
  Github Pull Request #147
  * Upgraded AntUnit to 1.4.1.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1645531200">- Do not build against the log4j12 packages, use the new reload4j</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1652097600">- Disable a test failing to compile with junit5 5.8.x</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1674043200">- Update ant keyring with new developer keys.
- Update to 1.10.13:
  * Breaking changes:
  - &lt;get&gt; has a new attribute authenticateOnRedirect that can be
    used to prevent Ant from sending the configured credentials
    when following a redirect. It is false by default, which means
    builds that rely on credentials being used on the redirected
    URI may break.
  * Fixed bugs:
  - the PropertyEnumerator change introduced in 1.10.9 proved to
    be not fully backwards compatible when combined with certain
    custom PropertyHelper implementations - for example when using
    AntXtras.
  - legacy-xml reporter of the junitlauncher task now escapes ]]&gt;
    when writing CDATA.
  - &lt;scp&gt; may leak connections when trying to preserve the last
    modified timestamps of files transferred recursively from a
    server.
  - tstamp task would in certain cases parse the SOURCE_DATE_EPOCH
    environment variable value to an incorrect date. This has now
    been fixed.
  - fetch.xml didn't set up non-default repositories propery and
    thus failed to download JAI.
  - When building and installing Ant distribution from source, the
    build script would change permissions on unrelated files in
    the destination directory. This is now fixed and such
    unrelated files in the destination directory will be left
    untouched.
  - parsing tar entries with multiple NUL bytes in their name
    would include garbage bytes as the name included all bytes up
    to the last NUL rather than the first.
  - loadresource might log warnings even though quiet was set to
    true
  - javac task would add paths constructs containing wildcards to
    the internally created argument file where wildcards are not
    allowed
  * Other changes:
  - added an implementation of the MIME Mail sender based on the
    repackaged Jakarta Mail package rather than javax Mail.
  - The "listener" element in the junitlauncher task now supports
    an "extension" attribute to control the filename extension
    of the generated output file from the listener.
  - &lt;ftp&gt; now supports FTPs.
  - DirectoryScanner avoids listing directory contents when it
    known it will never use the information retrieved. This may
    improve performance in some special cases.
  - &lt;manifest&gt; will now create the parent directory of the
    manifestFile attribute if it doesn't exist.
  - org.apache.tools.ant.BuildLogger now has a new method
    getMessageOutputLevel() which returns the currently set
    message output level.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1674734400">- Package and distribute the new ant-jakartamail</changelog>
  <changelog author="Frederic Crozat &lt;fcrozat@suse.com&gt;" date="1683201600">- Add _multibuild to define additional spec files as additional
  flavors.
  Eliminates the need for source package links in OBS.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1693483200">- Update to 1.10.14:
  * Changes that could break older environments:
    + Resource#compareTo now invokes getName rather than toString as
    the later may be costly (for example in the case of a
    StringResource).
    + When using Java 18 or higher, Ant will no longer use Java
    SecurityManager because it has been deprecated for removal and
    by default is disallowed to be set at runtime
    https://openjdk.org/jeps/411.
    This will mean that the "&lt;permissions&gt;" type is no longer
    functional when using Java 18 or higher.
    Furthermore, when using Java 18 or higher, if the build
    executes tasks that call "java.lang.System.exit()" and if
    those tasks aren't running in a forked VM of their own, then
    such tasks will now kill the entire Ant build process. It is
    recommended that such tasks be updated to launch in a forked
    VM so that the System.exit() call will not impact the JVM in
    which Ant process runs.
  * Fixed bugs:
    + log only the stylesheet name in the xslt task.
    + junitlauncher task's "test" and "listener" elements which take
    a "outputDir" property were incorrectly resolving the
    outputDir against the current working directory instead of the
    project's basedir.
    + regexmapper would, in some cases, incorrectly consume
    backslash characters from the "to" attribute, resulting in
    missing backslashes in the output.
    + &lt;fixcrlf&gt;, &lt;replace&gt; and &lt;replaceregexp&gt; now try to preserve
    the file permissions of the files they modify.
    + junitlauncher task would fail if a forked test timed out even
    if haltOnFailure was set to false.
    + fixes a bug in org.apache.tools.zip.ZipOutputStream where,
    even when "zip64Mode" is set to "always", ZipOutputStream may
    not create a CEN extra field data for the entry.
    + legacy-xml listener of junitlauncher task wouldn't report
    certain failures involving junit jupiter dynamic tests.
    + allow.class which was introduced in Ant 1.10.13 release, has
    been removed from this 1.10.14 release. This class was
    introduced in context of the SecurityManager changes in
    Ant 1.10.13, which have now been reverted in Ant 1.10.14,
    since they caused several regressions.
  * Other changes:
    + &lt;fork&gt; element of the junitlauncher task now has a new
    optional "java" attribute which can be used to point to a
    different Java installation for runnning the forked tests.
    + made sure &lt;echoproperties&gt; sorts the echoed properties on
    JDK9+ as well.
    + org.apache.tools.ant.taskdefs.Recorder class now introduces a
    setLogLevel(LogLevel level) method.
    + The &lt;fork&gt; element of junitlaunchertask now allows a
    "forkMode" attribute. forkMode=perTestClass can now be used to
    launch each test class in a separate forked JVM.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1694433600">- Added patch:
  * reproducible-propertyfile-task.patch
    + Debian patch to improve propertyfile task in RPM builds by
    using the date specified by the SOURCE_DATE_EPOCH variable
    in the header of the .properties file generated</changelog>
  <changelog author="Anton Shvetz &lt;shvetz.anton@gmail.com&gt;" date="1706270400">- Add forgotten univocity-parsers to
  %{_sysconfdir}/ant.d/junitlauncher (needed to run unit tests
  annotated with @CsvSource and @CsvFileSource)</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1708430400">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1714219200">- Put hamcrest on the classpath of ant-junit module</changelog>
  <changelog author="Anton Shvetz &lt;shvetz.anton@gmail.com&gt;" date="1714824000">- Add forgotten open-test-reporting/events to
  %{_sysconfdir}/ant.d/junitlauncher</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1721304000">- Added patches:
  * reproducible-jar-mtime.patch
    + make the modification times of files in a jar file
    reproducible
  * reproducible-javadoc.patch
    + make javadoc generation reproducible: don't generate
    timestamps, and normalize locale and encoding</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1723550400">- Modified patches:
  * reproducible-jar-mtime.patch
    + attempt more normalization of mtimes in jar files
  * reproducible-javadoc.patch
    + fix the patch to work with custom doclets too</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1726574400">- Modified patch:
  * reproducible-jar-mtime.patch
    + try different approach to get bit-reproducible builds</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1727611200">- Fix build after removal of the default %%{java_home} define</changelog>
  <changelog author="Gus Kenion &lt;gus.kenion@suse.com&gt;" date="1730721600">- Upgrade to version 1.10.15
  * Bug fixes:
    + Fixes an regression, introduced in Ant 1.10.13, where
    pathconvert would unintentionally trim the string output.
    Bugzilla Report 67082
    + Fixes a bug in &lt;depend&gt; task which would throw a
    ClassFormatError if it encountered constant pool entry type
    17.  Bugzilla Report 66552
    + Launching ant.bat from within a Java program using
    java.lang.Runtime.exec() could result in an unexpected
    failure. This has now been fixed.  Bugzilla Report 67417
    + Fixes an issue in bootstrap.bat when trying to detect if the
    "javac" command in the JDK supports the "--release" option.
    Github Pull Request #205
    + Fixes a bug in
    org.apache.tools.ant.taskdefs.email.EmailAddress which would
    throw a java.lang.StringIndexOutOfBoundsException if the
    email address passed to its constructor was an empty String.
    Bugzilla Report 68462
    + legacy-xml reporter of junitlauncher task was using a
    non-buffered outputstream when generating the report. This
    introduces severe performance penalties since the writes
    translate to native write system calls. This has been fixed
    to use a BufferedOutputStream.  Github Pull Request #207
  * Other changes:
    + exec task now logs the process' non-zero exit code at INFO
    level instead of the previous ERROR level. The following
    message from exec task is the one who's level has been
    changed:
    Result: 1
    Bugzilla Report 26453
    + Removes direct references to
    com.sun.net.ssl.internal.ssl.Provider class from the mail
    task, since that internal JDK class is no longer available in
    recent versions of Java.  Bugzilla Report 68460
    + &lt;replaceregexp&gt; has a new failOnError attribute which, when
    enabled, makes the task throw a BuildException for certain
    error cases that will only be logged otherwise.  Github Pull
    Request #206
    + &lt;ftp&gt; task now has a new "useSecureDataChannel" attribute
    which can be set to true, when ftps is enabled, to enable
    secure data channel.  Bugzilla Report 68773
- Unify .spec files
  * remove ant-antlr.changes
  * remove ant-antlr.spec
  * remove ant-junit.changes
  * remove ant-junit.spec
  * remove ant-junit5.changes
  * remove ant-junit5.spec</changelog>
</package>
<package pkgid="8a5a8c7ec5881a1f15bea444e1e5bf36148d25f8b36190f9b7b96d60e75531f44e14f72b027cdb4a2e6d13d6f258634079ca8959b3ade1a2204d5badd2cce1c0" name="ant-antlr" arch="noarch">
  <version epoch="0" ver="1.10.15" rel="1.1"/>
  <changelog author="Pedro Monreal &lt;pmonreal@suse.com&gt;" date="1622721600">- Update to 1.10.10
  * SCP (with sftp=true) task would fail if fetching file located
    in root directory.
  * Fixed: javac task would fail if the arguments file it
    (internally) created didn't quote the # character.
  * Make sure LegacyXmlResultFormatter encodes characters illegal
    in XML the same way JUnit5's built-in formatter would.
  * LegacyXmlResultFormatter no longer double-encodes &lt;&gt;&amp; in
    system-err and system-out.
  * Fixes a bug in junitlauncher task's legacy-xml formatter,
    where the testcase representing a @Parameterized JUnit4 test
    wasn't being reported in the XML.
  * Fixes a bug where the ant-testutil-sources.jar that gets
    published to Maven central repository didn't contain any
    source files.
  * The &lt;http&gt; condition didn't follow redirects from http to https.
  * ZipOutputStream now overrides write(int) in order to make sure
    single byte writes get the same treatment as array writes.
  * Fixes a potential deadlock in junitlauncher task when using
    legacy-xml reporter.
  * javaversion condition now has a new "atmost" attribute. See
    the javaversion manual for more details
  * The "listener" nested element of the "junitlauncher" task now
    has a new "useLegacyReportingName" attribute which can be used
    to control the test identifiers names that get reported by the
    listener. See the junitlauncher manual for more details. Note that
    this change also introduces a new "setUseLegacyReportingName" method
    on the org.apache.tools.ant.taskdefs.optional.junitlauncher.TestResultFormatter
    interface. This will break backward compatibility with any of your custom
    result formatters which implemented this interface and such implementations
    are now expected to implement this new method.
  * A new attribute preserveduplicates allows &lt;resourcelist&gt; to
    return the same resource multiple times when set to true.
  * A new attribute filterbeforeconcat in &lt;concat&gt; can be used to
    decide whether the filterchain should be applied to the
    concatenated content (the default) or each nested resource
    individually before concatenating them.
  * The ssh tasks now share a new nested element additionalConfig that can
    be used to set config values for the jsch Session used by the task.
  * Added new discardOutput and discardError properties to redirector
    and the exec, apply and java tasks which can be used to completely
    discard any (error) output. This is a platform independent
    alternative to directiong output to any kind of null device.
  * junitlauncher now prints a more useful and instantaneous summary of
    tests being run, closely matching the junit task's summary.</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1639569600">- Update to 1.10.12:
  * The update includes fixes for the following CVEs:
  CVE-2021-36374, bsc#1188469
    Excessive memory allocation when reading a specially
    crafted ZIP archive or a derived formats.
  CVE-2021-36373, bsc#1188468
    Excessive memory allocation when reading a specially
    crafted TAR archive.
  * The http condition would follow redirects even when "followRedirects" attribute
  was set to "false". This has now been fixed. Bugzilla Report 65489
  * Made sure setting build.compiler to the fully qualified classname
  that corresponds to extJavac or modern has the same effect as using
  the shorter alias names. Bugzilla Report 65539
  * Prevent potential deadlocks in org.apache.tools.ant.IntrospectionHelper.
  Bugzilla Report 65424
  * The implementation of AntClassLoader#findResources() has been changed to optimize
  it for potential performance issues, as those noted at https://issues.jenkins.io/browse/JENKINS-22310?focusedCommentId=197405&amp;page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-197405
  Github Pull Request #151
  * AntClassLoader now implements the ClassLoader#findResource(String) method.
  Github Pull Request #150
  * Ant tries to avoid file name canonicalization when possible.
  Bugzilla Report 65499
  * javadoc task will now look for warning messages in the STDERR stream too
  when "failonwarning" is set to true to account for changes in JDK 17+
  * The tar task now preserves symlinks of nested tarfilesets.
  Github Pull Request #142
- Changes from 1.10.11:
  * a race condition could lead to NullPointerExceptions when running
  tasks in parallel.
  Bugzilla Report 65316
  * fixed potential OutOfMemory errors when reading broken archives
  using the tar or zip formats or formats derived from zip.
  * org.apache.tools.ant.taskdefs.optional.junitlauncher.confined.JUnitLauncherTask now
  has a new protected createExecuteWatchdog() method for allowing it to be overriden.
  Github Pull Request #147
  * Upgraded AntUnit to 1.4.1.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1645531200">- Do not build against the log4j12 packages, use the new reload4j</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1652097600">- Disable a test failing to compile with junit5 5.8.x</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1674043200">- Update ant keyring with new developer keys.
- Update to 1.10.13:
  * Breaking changes:
  - &lt;get&gt; has a new attribute authenticateOnRedirect that can be
    used to prevent Ant from sending the configured credentials
    when following a redirect. It is false by default, which means
    builds that rely on credentials being used on the redirected
    URI may break.
  * Fixed bugs:
  - the PropertyEnumerator change introduced in 1.10.9 proved to
    be not fully backwards compatible when combined with certain
    custom PropertyHelper implementations - for example when using
    AntXtras.
  - legacy-xml reporter of the junitlauncher task now escapes ]]&gt;
    when writing CDATA.
  - &lt;scp&gt; may leak connections when trying to preserve the last
    modified timestamps of files transferred recursively from a
    server.
  - tstamp task would in certain cases parse the SOURCE_DATE_EPOCH
    environment variable value to an incorrect date. This has now
    been fixed.
  - fetch.xml didn't set up non-default repositories propery and
    thus failed to download JAI.
  - When building and installing Ant distribution from source, the
    build script would change permissions on unrelated files in
    the destination directory. This is now fixed and such
    unrelated files in the destination directory will be left
    untouched.
  - parsing tar entries with multiple NUL bytes in their name
    would include garbage bytes as the name included all bytes up
    to the last NUL rather than the first.
  - loadresource might log warnings even though quiet was set to
    true
  - javac task would add paths constructs containing wildcards to
    the internally created argument file where wildcards are not
    allowed
  * Other changes:
  - added an implementation of the MIME Mail sender based on the
    repackaged Jakarta Mail package rather than javax Mail.
  - The "listener" element in the junitlauncher task now supports
    an "extension" attribute to control the filename extension
    of the generated output file from the listener.
  - &lt;ftp&gt; now supports FTPs.
  - DirectoryScanner avoids listing directory contents when it
    known it will never use the information retrieved. This may
    improve performance in some special cases.
  - &lt;manifest&gt; will now create the parent directory of the
    manifestFile attribute if it doesn't exist.
  - org.apache.tools.ant.BuildLogger now has a new method
    getMessageOutputLevel() which returns the currently set
    message output level.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1674734400">- Package and distribute the new ant-jakartamail</changelog>
  <changelog author="Frederic Crozat &lt;fcrozat@suse.com&gt;" date="1683201600">- Add _multibuild to define additional spec files as additional
  flavors.
  Eliminates the need for source package links in OBS.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1693483200">- Update to 1.10.14:
  * Changes that could break older environments:
    + Resource#compareTo now invokes getName rather than toString as
    the later may be costly (for example in the case of a
    StringResource).
    + When using Java 18 or higher, Ant will no longer use Java
    SecurityManager because it has been deprecated for removal and
    by default is disallowed to be set at runtime
    https://openjdk.org/jeps/411.
    This will mean that the "&lt;permissions&gt;" type is no longer
    functional when using Java 18 or higher.
    Furthermore, when using Java 18 or higher, if the build
    executes tasks that call "java.lang.System.exit()" and if
    those tasks aren't running in a forked VM of their own, then
    such tasks will now kill the entire Ant build process. It is
    recommended that such tasks be updated to launch in a forked
    VM so that the System.exit() call will not impact the JVM in
    which Ant process runs.
  * Fixed bugs:
    + log only the stylesheet name in the xslt task.
    + junitlauncher task's "test" and "listener" elements which take
    a "outputDir" property were incorrectly resolving the
    outputDir against the current working directory instead of the
    project's basedir.
    + regexmapper would, in some cases, incorrectly consume
    backslash characters from the "to" attribute, resulting in
    missing backslashes in the output.
    + &lt;fixcrlf&gt;, &lt;replace&gt; and &lt;replaceregexp&gt; now try to preserve
    the file permissions of the files they modify.
    + junitlauncher task would fail if a forked test timed out even
    if haltOnFailure was set to false.
    + fixes a bug in org.apache.tools.zip.ZipOutputStream where,
    even when "zip64Mode" is set to "always", ZipOutputStream may
    not create a CEN extra field data for the entry.
    + legacy-xml listener of junitlauncher task wouldn't report
    certain failures involving junit jupiter dynamic tests.
    + allow.class which was introduced in Ant 1.10.13 release, has
    been removed from this 1.10.14 release. This class was
    introduced in context of the SecurityManager changes in
    Ant 1.10.13, which have now been reverted in Ant 1.10.14,
    since they caused several regressions.
  * Other changes:
    + &lt;fork&gt; element of the junitlauncher task now has a new
    optional "java" attribute which can be used to point to a
    different Java installation for runnning the forked tests.
    + made sure &lt;echoproperties&gt; sorts the echoed properties on
    JDK9+ as well.
    + org.apache.tools.ant.taskdefs.Recorder class now introduces a
    setLogLevel(LogLevel level) method.
    + The &lt;fork&gt; element of junitlaunchertask now allows a
    "forkMode" attribute. forkMode=perTestClass can now be used to
    launch each test class in a separate forked JVM.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1694433600">- Added patch:
  * reproducible-propertyfile-task.patch
    + Debian patch to improve propertyfile task in RPM builds by
    using the date specified by the SOURCE_DATE_EPOCH variable
    in the header of the .properties file generated</changelog>
  <changelog author="Anton Shvetz &lt;shvetz.anton@gmail.com&gt;" date="1706270400">- Add forgotten univocity-parsers to
  %{_sysconfdir}/ant.d/junitlauncher (needed to run unit tests
  annotated with @CsvSource and @CsvFileSource)</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1708430400">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1714219200">- Put hamcrest on the classpath of ant-junit module</changelog>
  <changelog author="Anton Shvetz &lt;shvetz.anton@gmail.com&gt;" date="1714824000">- Add forgotten open-test-reporting/events to
  %{_sysconfdir}/ant.d/junitlauncher</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1721304000">- Added patches:
  * reproducible-jar-mtime.patch
    + make the modification times of files in a jar file
    reproducible
  * reproducible-javadoc.patch
    + make javadoc generation reproducible: don't generate
    timestamps, and normalize locale and encoding</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1723550400">- Modified patches:
  * reproducible-jar-mtime.patch
    + attempt more normalization of mtimes in jar files
  * reproducible-javadoc.patch
    + fix the patch to work with custom doclets too</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1726574400">- Modified patch:
  * reproducible-jar-mtime.patch
    + try different approach to get bit-reproducible builds</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1727611200">- Fix build after removal of the default %%{java_home} define</changelog>
  <changelog author="Gus Kenion &lt;gus.kenion@suse.com&gt;" date="1730721600">- Upgrade to version 1.10.15
  * Bug fixes:
    + Fixes an regression, introduced in Ant 1.10.13, where
    pathconvert would unintentionally trim the string output.
    Bugzilla Report 67082
    + Fixes a bug in &lt;depend&gt; task which would throw a
    ClassFormatError if it encountered constant pool entry type
    17.  Bugzilla Report 66552
    + Launching ant.bat from within a Java program using
    java.lang.Runtime.exec() could result in an unexpected
    failure. This has now been fixed.  Bugzilla Report 67417
    + Fixes an issue in bootstrap.bat when trying to detect if the
    "javac" command in the JDK supports the "--release" option.
    Github Pull Request #205
    + Fixes a bug in
    org.apache.tools.ant.taskdefs.email.EmailAddress which would
    throw a java.lang.StringIndexOutOfBoundsException if the
    email address passed to its constructor was an empty String.
    Bugzilla Report 68462
    + legacy-xml reporter of junitlauncher task was using a
    non-buffered outputstream when generating the report. This
    introduces severe performance penalties since the writes
    translate to native write system calls. This has been fixed
    to use a BufferedOutputStream.  Github Pull Request #207
  * Other changes:
    + exec task now logs the process' non-zero exit code at INFO
    level instead of the previous ERROR level. The following
    message from exec task is the one who's level has been
    changed:
    Result: 1
    Bugzilla Report 26453
    + Removes direct references to
    com.sun.net.ssl.internal.ssl.Provider class from the mail
    task, since that internal JDK class is no longer available in
    recent versions of Java.  Bugzilla Report 68460
    + &lt;replaceregexp&gt; has a new failOnError attribute which, when
    enabled, makes the task throw a BuildException for certain
    error cases that will only be logged otherwise.  Github Pull
    Request #206
    + &lt;ftp&gt; task now has a new "useSecureDataChannel" attribute
    which can be set to true, when ftps is enabled, to enable
    secure data channel.  Bugzilla Report 68773
- Unify .spec files
  * remove ant-antlr.changes
  * remove ant-antlr.spec
  * remove ant-junit.changes
  * remove ant-junit.spec
  * remove ant-junit5.changes
  * remove ant-junit5.spec</changelog>
</package>
<package pkgid="0cea5834b664df20be578858cdb5a013b8a896ce1a5d85a6fff5cac2e641a931faaf1594322bb491bef107bb10c05d78daf4ddd8fd937d06f02be20b121eef31" name="ant-antlr" arch="src">
  <version epoch="0" ver="1.10.15" rel="1.1"/>
  <changelog author="Pedro Monreal Gonzalez &lt;pmonrealgonzalez@suse.com&gt;" date="1589457600">- Update to 1.10.8
  * Security fix: [CVE-2020-1945, bsc#1171696]
  - A new property ant.tmpdir provides improved control over the
    location Ant uses to create temporary files
  * sshexec failed to write output to a file if the file didn't exist
  * Fixes a regression in javac task involving command line argument files.
  * sshexec, sshsession and scp now support a new sshConfig parameter.
  It specified the SSH configuration file (typically ${user.home}/.ssh/config)
  defining the username and keyfile to be used per host.
  * "legacy-xml" formatter of junitlauncher task wasn't writing out
  exceptions that happen in @BeforeAll method of a test.
  * Fixes a potential ConcurrentModificationException in XMLLogger.
  * Fixes a bug in junitlauncher task in forked mode, where if a listener element
  was used as a sibling element for either the test or testclasses element,
  then the forked mode launch would fail.
  * Fixes an issue in AntStructure where an incorrect DTD was being generated.
  * Fixes an incorrect variable name usage in junit-frames-xalan1.xsl.
  * The runant.py script should now work with Python 3.
  * rmic has been removed from Java 15. The task will now throw an
  exception if you try to use it while running Java 15 or newer.
- Remove ant-python3.patch fixed upstream</changelog>
  <changelog author="Pedro Monreal &lt;pmonreal@suse.com&gt;" date="1601553600">- Update to 1.10.9
  * Security fix: [bsc#1177180, CVE-2020-11979]
  - Insecure temporary file vulnerability
  * Fixed bugs:
  - The ftp task could throw a NullPointerException if an
    error occured.
  - Propertyset now also sees in-scope local properties.
  - Replaced ReaderInputStream with the version of Apache
    Commons IO due to problems with surrogate pairs.
  - &lt;fixcrlf&gt; will no longer remove the temporary file it
    just created before writing to it.
  - &lt;sshexec&gt; and &lt;scp&gt; didn't deal with wildcard hostnames
    in shs config files properly.
  * Other changes:
  - Ant will no longer log a warning if it doesn't find tools.jar.
  - The &lt;jar&gt; task accepts now a nested &lt;indexjarsmapper&gt;
    element that can be used to perform custom filename
    transformations for the &lt;indexjars&gt; archives.
  - Added a new PropertyEnumerator interface that extensions can
    provide if they are managing properties unknown to the Ant project.
  - Added some special code to support GraalVM JavaScript as
    javax.script scripting engine for JavaScript. In particular we
    relax some security settings of GraalVM so that scripts can access
    Ant objects.
  - Also Ant enables Nashorn compatibility mode by default, you can
    disable that by setting the magic Ant property
    ant.disable.graal.nashorn.compat to true.
  - If the magic property ant.tmpdir hasn't been set and Ant can
    control the permissions of directories it creates it will create an
    owner-owned temporary directory unaccessible to others as default
    tempdir as soon as a temporary file is created for the first time.</changelog>
  <changelog author="Pedro Monreal &lt;pmonreal@suse.com&gt;" date="1622721600">- Update to 1.10.10
  * SCP (with sftp=true) task would fail if fetching file located
    in root directory.
  * Fixed: javac task would fail if the arguments file it
    (internally) created didn't quote the # character.
  * Make sure LegacyXmlResultFormatter encodes characters illegal
    in XML the same way JUnit5's built-in formatter would.
  * LegacyXmlResultFormatter no longer double-encodes &lt;&gt;&amp; in
    system-err and system-out.
  * Fixes a bug in junitlauncher task's legacy-xml formatter,
    where the testcase representing a @Parameterized JUnit4 test
    wasn't being reported in the XML.
  * Fixes a bug where the ant-testutil-sources.jar that gets
    published to Maven central repository didn't contain any
    source files.
  * The &lt;http&gt; condition didn't follow redirects from http to https.
  * ZipOutputStream now overrides write(int) in order to make sure
    single byte writes get the same treatment as array writes.
  * Fixes a potential deadlock in junitlauncher task when using
    legacy-xml reporter.
  * javaversion condition now has a new "atmost" attribute. See
    the javaversion manual for more details
  * The "listener" nested element of the "junitlauncher" task now
    has a new "useLegacyReportingName" attribute which can be used
    to control the test identifiers names that get reported by the
    listener. See the junitlauncher manual for more details. Note that
    this change also introduces a new "setUseLegacyReportingName" method
    on the org.apache.tools.ant.taskdefs.optional.junitlauncher.TestResultFormatter
    interface. This will break backward compatibility with any of your custom
    result formatters which implemented this interface and such implementations
    are now expected to implement this new method.
  * A new attribute preserveduplicates allows &lt;resourcelist&gt; to
    return the same resource multiple times when set to true.
  * A new attribute filterbeforeconcat in &lt;concat&gt; can be used to
    decide whether the filterchain should be applied to the
    concatenated content (the default) or each nested resource
    individually before concatenating them.
  * The ssh tasks now share a new nested element additionalConfig that can
    be used to set config values for the jsch Session used by the task.
  * Added new discardOutput and discardError properties to redirector
    and the exec, apply and java tasks which can be used to completely
    discard any (error) output. This is a platform independent
    alternative to directiong output to any kind of null device.
  * junitlauncher now prints a more useful and instantaneous summary of
    tests being run, closely matching the junit task's summary.</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1639569600">- Update to 1.10.12:
  * The update includes fixes for the following CVEs:
  CVE-2021-36374, bsc#1188469
    Excessive memory allocation when reading a specially
    crafted ZIP archive or a derived formats.
  CVE-2021-36373, bsc#1188468
    Excessive memory allocation when reading a specially
    crafted TAR archive.
  * The http condition would follow redirects even when "followRedirects" attribute
  was set to "false". This has now been fixed. Bugzilla Report 65489
  * Made sure setting build.compiler to the fully qualified classname
  that corresponds to extJavac or modern has the same effect as using
  the shorter alias names. Bugzilla Report 65539
  * Prevent potential deadlocks in org.apache.tools.ant.IntrospectionHelper.
  Bugzilla Report 65424
  * The implementation of AntClassLoader#findResources() has been changed to optimize
  it for potential performance issues, as those noted at https://issues.jenkins.io/browse/JENKINS-22310?focusedCommentId=197405&amp;page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-197405
  Github Pull Request #151
  * AntClassLoader now implements the ClassLoader#findResource(String) method.
  Github Pull Request #150
  * Ant tries to avoid file name canonicalization when possible.
  Bugzilla Report 65499
  * javadoc task will now look for warning messages in the STDERR stream too
  when "failonwarning" is set to true to account for changes in JDK 17+
  * The tar task now preserves symlinks of nested tarfilesets.
  Github Pull Request #142
- Changes from 1.10.11:
  * a race condition could lead to NullPointerExceptions when running
  tasks in parallel.
  Bugzilla Report 65316
  * fixed potential OutOfMemory errors when reading broken archives
  using the tar or zip formats or formats derived from zip.
  * org.apache.tools.ant.taskdefs.optional.junitlauncher.confined.JUnitLauncherTask now
  has a new protected createExecuteWatchdog() method for allowing it to be overriden.
  Github Pull Request #147
  * Upgraded AntUnit to 1.4.1.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1645531200">- Do not build against the log4j12 packages, use the new reload4j</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1652097600">- Disable a test failing to compile with junit5 5.8.x</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1674043200">- Update ant keyring with new developer keys.
- Update to 1.10.13:
  * Breaking changes:
  - &lt;get&gt; has a new attribute authenticateOnRedirect that can be
    used to prevent Ant from sending the configured credentials
    when following a redirect. It is false by default, which means
    builds that rely on credentials being used on the redirected
    URI may break.
  * Fixed bugs:
  - the PropertyEnumerator change introduced in 1.10.9 proved to
    be not fully backwards compatible when combined with certain
    custom PropertyHelper implementations - for example when using
    AntXtras.
  - legacy-xml reporter of the junitlauncher task now escapes ]]&gt;
    when writing CDATA.
  - &lt;scp&gt; may leak connections when trying to preserve the last
    modified timestamps of files transferred recursively from a
    server.
  - tstamp task would in certain cases parse the SOURCE_DATE_EPOCH
    environment variable value to an incorrect date. This has now
    been fixed.
  - fetch.xml didn't set up non-default repositories propery and
    thus failed to download JAI.
  - When building and installing Ant distribution from source, the
    build script would change permissions on unrelated files in
    the destination directory. This is now fixed and such
    unrelated files in the destination directory will be left
    untouched.
  - parsing tar entries with multiple NUL bytes in their name
    would include garbage bytes as the name included all bytes up
    to the last NUL rather than the first.
  - loadresource might log warnings even though quiet was set to
    true
  - javac task would add paths constructs containing wildcards to
    the internally created argument file where wildcards are not
    allowed
  * Other changes:
  - added an implementation of the MIME Mail sender based on the
    repackaged Jakarta Mail package rather than javax Mail.
  - The "listener" element in the junitlauncher task now supports
    an "extension" attribute to control the filename extension
    of the generated output file from the listener.
  - &lt;ftp&gt; now supports FTPs.
  - DirectoryScanner avoids listing directory contents when it
    known it will never use the information retrieved. This may
    improve performance in some special cases.
  - &lt;manifest&gt; will now create the parent directory of the
    manifestFile attribute if it doesn't exist.
  - org.apache.tools.ant.BuildLogger now has a new method
    getMessageOutputLevel() which returns the currently set
    message output level.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1674734400">- Package and distribute the new ant-jakartamail</changelog>
  <changelog author="Frederic Crozat &lt;fcrozat@suse.com&gt;" date="1683201600">- Add _multibuild to define additional spec files as additional
  flavors.
  Eliminates the need for source package links in OBS.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1693483200">- Update to 1.10.14:
  * Changes that could break older environments:
    + Resource#compareTo now invokes getName rather than toString as
    the later may be costly (for example in the case of a
    StringResource).
    + When using Java 18 or higher, Ant will no longer use Java
    SecurityManager because it has been deprecated for removal and
    by default is disallowed to be set at runtime
    https://openjdk.org/jeps/411.
    This will mean that the "&lt;permissions&gt;" type is no longer
    functional when using Java 18 or higher.
    Furthermore, when using Java 18 or higher, if the build
    executes tasks that call "java.lang.System.exit()" and if
    those tasks aren't running in a forked VM of their own, then
    such tasks will now kill the entire Ant build process. It is
    recommended that such tasks be updated to launch in a forked
    VM so that the System.exit() call will not impact the JVM in
    which Ant process runs.
  * Fixed bugs:
    + log only the stylesheet name in the xslt task.
    + junitlauncher task's "test" and "listener" elements which take
    a "outputDir" property were incorrectly resolving the
    outputDir against the current working directory instead of the
    project's basedir.
    + regexmapper would, in some cases, incorrectly consume
    backslash characters from the "to" attribute, resulting in
    missing backslashes in the output.
    + &lt;fixcrlf&gt;, &lt;replace&gt; and &lt;replaceregexp&gt; now try to preserve
    the file permissions of the files they modify.
    + junitlauncher task would fail if a forked test timed out even
    if haltOnFailure was set to false.
    + fixes a bug in org.apache.tools.zip.ZipOutputStream where,
    even when "zip64Mode" is set to "always", ZipOutputStream may
    not create a CEN extra field data for the entry.
    + legacy-xml listener of junitlauncher task wouldn't report
    certain failures involving junit jupiter dynamic tests.
    + allow.class which was introduced in Ant 1.10.13 release, has
    been removed from this 1.10.14 release. This class was
    introduced in context of the SecurityManager changes in
    Ant 1.10.13, which have now been reverted in Ant 1.10.14,
    since they caused several regressions.
  * Other changes:
    + &lt;fork&gt; element of the junitlauncher task now has a new
    optional "java" attribute which can be used to point to a
    different Java installation for runnning the forked tests.
    + made sure &lt;echoproperties&gt; sorts the echoed properties on
    JDK9+ as well.
    + org.apache.tools.ant.taskdefs.Recorder class now introduces a
    setLogLevel(LogLevel level) method.
    + The &lt;fork&gt; element of junitlaunchertask now allows a
    "forkMode" attribute. forkMode=perTestClass can now be used to
    launch each test class in a separate forked JVM.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1694433600">- Added patch:
  * reproducible-propertyfile-task.patch
    + Debian patch to improve propertyfile task in RPM builds by
    using the date specified by the SOURCE_DATE_EPOCH variable
    in the header of the .properties file generated</changelog>
  <changelog author="Anton Shvetz &lt;shvetz.anton@gmail.com&gt;" date="1706270400">- Add forgotten univocity-parsers to
  %{_sysconfdir}/ant.d/junitlauncher (needed to run unit tests
  annotated with @CsvSource and @CsvFileSource)</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1708430400">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1714219200">- Put hamcrest on the classpath of ant-junit module</changelog>
  <changelog author="Anton Shvetz &lt;shvetz.anton@gmail.com&gt;" date="1714824000">- Add forgotten open-test-reporting/events to
  %{_sysconfdir}/ant.d/junitlauncher</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1721304000">- Added patches:
  * reproducible-jar-mtime.patch
    + make the modification times of files in a jar file
    reproducible
  * reproducible-javadoc.patch
    + make javadoc generation reproducible: don't generate
    timestamps, and normalize locale and encoding</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1723550400">- Modified patches:
  * reproducible-jar-mtime.patch
    + attempt more normalization of mtimes in jar files
  * reproducible-javadoc.patch
    + fix the patch to work with custom doclets too</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1726574400">- Modified patch:
  * reproducible-jar-mtime.patch
    + try different approach to get bit-reproducible builds</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1727611200">- Fix build after removal of the default %%{java_home} define</changelog>
  <changelog author="Gus Kenion &lt;gus.kenion@suse.com&gt;" date="1730721600">- Upgrade to version 1.10.15
  * Bug fixes:
    + Fixes an regression, introduced in Ant 1.10.13, where
    pathconvert would unintentionally trim the string output.
    Bugzilla Report 67082
    + Fixes a bug in &lt;depend&gt; task which would throw a
    ClassFormatError if it encountered constant pool entry type
    17.  Bugzilla Report 66552
    + Launching ant.bat from within a Java program using
    java.lang.Runtime.exec() could result in an unexpected
    failure. This has now been fixed.  Bugzilla Report 67417
    + Fixes an issue in bootstrap.bat when trying to detect if the
    "javac" command in the JDK supports the "--release" option.
    Github Pull Request #205
    + Fixes a bug in
    org.apache.tools.ant.taskdefs.email.EmailAddress which would
    throw a java.lang.StringIndexOutOfBoundsException if the
    email address passed to its constructor was an empty String.
    Bugzilla Report 68462
    + legacy-xml reporter of junitlauncher task was using a
    non-buffered outputstream when generating the report. This
    introduces severe performance penalties since the writes
    translate to native write system calls. This has been fixed
    to use a BufferedOutputStream.  Github Pull Request #207
  * Other changes:
    + exec task now logs the process' non-zero exit code at INFO
    level instead of the previous ERROR level. The following
    message from exec task is the one who's level has been
    changed:
    Result: 1
    Bugzilla Report 26453
    + Removes direct references to
    com.sun.net.ssl.internal.ssl.Provider class from the mail
    task, since that internal JDK class is no longer available in
    recent versions of Java.  Bugzilla Report 68460
    + &lt;replaceregexp&gt; has a new failOnError attribute which, when
    enabled, makes the task throw a BuildException for certain
    error cases that will only be logged otherwise.  Github Pull
    Request #206
    + &lt;ftp&gt; task now has a new "useSecureDataChannel" attribute
    which can be set to true, when ftps is enabled, to enable
    secure data channel.  Bugzilla Report 68773
- Unify .spec files
  * remove ant-antlr.changes
  * remove ant-antlr.spec
  * remove ant-junit.changes
  * remove ant-junit.spec
  * remove ant-junit5.changes
  * remove ant-junit5.spec</changelog>
</package>
<package pkgid="c16d6f66770b82b77dff99010b24bf0d3753bb965b43df2903d97992578915987816e4207046c08842dd0a001cad19c3aeb3cd02432132be147b4321ed74fec1" name="ant-apache-bcel" arch="noarch">
  <version epoch="0" ver="1.10.15" rel="1.1"/>
  <changelog author="Pedro Monreal &lt;pmonreal@suse.com&gt;" date="1622721600">- Update to 1.10.10
  * SCP (with sftp=true) task would fail if fetching file located
    in root directory.
  * Fixed: javac task would fail if the arguments file it
    (internally) created didn't quote the # character.
  * Make sure LegacyXmlResultFormatter encodes characters illegal
    in XML the same way JUnit5's built-in formatter would.
  * LegacyXmlResultFormatter no longer double-encodes &lt;&gt;&amp; in
    system-err and system-out.
  * Fixes a bug in junitlauncher task's legacy-xml formatter,
    where the testcase representing a @Parameterized JUnit4 test
    wasn't being reported in the XML.
  * Fixes a bug where the ant-testutil-sources.jar that gets
    published to Maven central repository didn't contain any
    source files.
  * The &lt;http&gt; condition didn't follow redirects from http to https.
  * ZipOutputStream now overrides write(int) in order to make sure
    single byte writes get the same treatment as array writes.
  * Fixes a potential deadlock in junitlauncher task when using
    legacy-xml reporter.
  * javaversion condition now has a new "atmost" attribute. See
    the javaversion manual for more details
  * The "listener" nested element of the "junitlauncher" task now
    has a new "useLegacyReportingName" attribute which can be used
    to control the test identifiers names that get reported by the
    listener. See the junitlauncher manual for more details. Note that
    this change also introduces a new "setUseLegacyReportingName" method
    on the org.apache.tools.ant.taskdefs.optional.junitlauncher.TestResultFormatter
    interface. This will break backward compatibility with any of your custom
    result formatters which implemented this interface and such implementations
    are now expected to implement this new method.
  * A new attribute preserveduplicates allows &lt;resourcelist&gt; to
    return the same resource multiple times when set to true.
  * A new attribute filterbeforeconcat in &lt;concat&gt; can be used to
    decide whether the filterchain should be applied to the
    concatenated content (the default) or each nested resource
    individually before concatenating them.
  * The ssh tasks now share a new nested element additionalConfig that can
    be used to set config values for the jsch Session used by the task.
  * Added new discardOutput and discardError properties to redirector
    and the exec, apply and java tasks which can be used to completely
    discard any (error) output. This is a platform independent
    alternative to directiong output to any kind of null device.
  * junitlauncher now prints a more useful and instantaneous summary of
    tests being run, closely matching the junit task's summary.</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1639569600">- Update to 1.10.12:
  * The update includes fixes for the following CVEs:
  CVE-2021-36374, bsc#1188469
    Excessive memory allocation when reading a specially
    crafted ZIP archive or a derived formats.
  CVE-2021-36373, bsc#1188468
    Excessive memory allocation when reading a specially
    crafted TAR archive.
  * The http condition would follow redirects even when "followRedirects" attribute
  was set to "false". This has now been fixed. Bugzilla Report 65489
  * Made sure setting build.compiler to the fully qualified classname
  that corresponds to extJavac or modern has the same effect as using
  the shorter alias names. Bugzilla Report 65539
  * Prevent potential deadlocks in org.apache.tools.ant.IntrospectionHelper.
  Bugzilla Report 65424
  * The implementation of AntClassLoader#findResources() has been changed to optimize
  it for potential performance issues, as those noted at https://issues.jenkins.io/browse/JENKINS-22310?focusedCommentId=197405&amp;page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-197405
  Github Pull Request #151
  * AntClassLoader now implements the ClassLoader#findResource(String) method.
  Github Pull Request #150
  * Ant tries to avoid file name canonicalization when possible.
  Bugzilla Report 65499
  * javadoc task will now look for warning messages in the STDERR stream too
  when "failonwarning" is set to true to account for changes in JDK 17+
  * The tar task now preserves symlinks of nested tarfilesets.
  Github Pull Request #142
- Changes from 1.10.11:
  * a race condition could lead to NullPointerExceptions when running
  tasks in parallel.
  Bugzilla Report 65316
  * fixed potential OutOfMemory errors when reading broken archives
  using the tar or zip formats or formats derived from zip.
  * org.apache.tools.ant.taskdefs.optional.junitlauncher.confined.JUnitLauncherTask now
  has a new protected createExecuteWatchdog() method for allowing it to be overriden.
  Github Pull Request #147
  * Upgraded AntUnit to 1.4.1.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1645531200">- Do not build against the log4j12 packages, use the new reload4j</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1652097600">- Disable a test failing to compile with junit5 5.8.x</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1674043200">- Update ant keyring with new developer keys.
- Update to 1.10.13:
  * Breaking changes:
  - &lt;get&gt; has a new attribute authenticateOnRedirect that can be
    used to prevent Ant from sending the configured credentials
    when following a redirect. It is false by default, which means
    builds that rely on credentials being used on the redirected
    URI may break.
  * Fixed bugs:
  - the PropertyEnumerator change introduced in 1.10.9 proved to
    be not fully backwards compatible when combined with certain
    custom PropertyHelper implementations - for example when using
    AntXtras.
  - legacy-xml reporter of the junitlauncher task now escapes ]]&gt;
    when writing CDATA.
  - &lt;scp&gt; may leak connections when trying to preserve the last
    modified timestamps of files transferred recursively from a
    server.
  - tstamp task would in certain cases parse the SOURCE_DATE_EPOCH
    environment variable value to an incorrect date. This has now
    been fixed.
  - fetch.xml didn't set up non-default repositories propery and
    thus failed to download JAI.
  - When building and installing Ant distribution from source, the
    build script would change permissions on unrelated files in
    the destination directory. This is now fixed and such
    unrelated files in the destination directory will be left
    untouched.
  - parsing tar entries with multiple NUL bytes in their name
    would include garbage bytes as the name included all bytes up
    to the last NUL rather than the first.
  - loadresource might log warnings even though quiet was set to
    true
  - javac task would add paths constructs containing wildcards to
    the internally created argument file where wildcards are not
    allowed
  * Other changes:
  - added an implementation of the MIME Mail sender based on the
    repackaged Jakarta Mail package rather than javax Mail.
  - The "listener" element in the junitlauncher task now supports
    an "extension" attribute to control the filename extension
    of the generated output file from the listener.
  - &lt;ftp&gt; now supports FTPs.
  - DirectoryScanner avoids listing directory contents when it
    known it will never use the information retrieved. This may
    improve performance in some special cases.
  - &lt;manifest&gt; will now create the parent directory of the
    manifestFile attribute if it doesn't exist.
  - org.apache.tools.ant.BuildLogger now has a new method
    getMessageOutputLevel() which returns the currently set
    message output level.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1674734400">- Package and distribute the new ant-jakartamail</changelog>
  <changelog author="Frederic Crozat &lt;fcrozat@suse.com&gt;" date="1683201600">- Add _multibuild to define additional spec files as additional
  flavors.
  Eliminates the need for source package links in OBS.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1693483200">- Update to 1.10.14:
  * Changes that could break older environments:
    + Resource#compareTo now invokes getName rather than toString as
    the later may be costly (for example in the case of a
    StringResource).
    + When using Java 18 or higher, Ant will no longer use Java
    SecurityManager because it has been deprecated for removal and
    by default is disallowed to be set at runtime
    https://openjdk.org/jeps/411.
    This will mean that the "&lt;permissions&gt;" type is no longer
    functional when using Java 18 or higher.
    Furthermore, when using Java 18 or higher, if the build
    executes tasks that call "java.lang.System.exit()" and if
    those tasks aren't running in a forked VM of their own, then
    such tasks will now kill the entire Ant build process. It is
    recommended that such tasks be updated to launch in a forked
    VM so that the System.exit() call will not impact the JVM in
    which Ant process runs.
  * Fixed bugs:
    + log only the stylesheet name in the xslt task.
    + junitlauncher task's "test" and "listener" elements which take
    a "outputDir" property were incorrectly resolving the
    outputDir against the current working directory instead of the
    project's basedir.
    + regexmapper would, in some cases, incorrectly consume
    backslash characters from the "to" attribute, resulting in
    missing backslashes in the output.
    + &lt;fixcrlf&gt;, &lt;replace&gt; and &lt;replaceregexp&gt; now try to preserve
    the file permissions of the files they modify.
    + junitlauncher task would fail if a forked test timed out even
    if haltOnFailure was set to false.
    + fixes a bug in org.apache.tools.zip.ZipOutputStream where,
    even when "zip64Mode" is set to "always", ZipOutputStream may
    not create a CEN extra field data for the entry.
    + legacy-xml listener of junitlauncher task wouldn't report
    certain failures involving junit jupiter dynamic tests.
    + allow.class which was introduced in Ant 1.10.13 release, has
    been removed from this 1.10.14 release. This class was
    introduced in context of the SecurityManager changes in
    Ant 1.10.13, which have now been reverted in Ant 1.10.14,
    since they caused several regressions.
  * Other changes:
    + &lt;fork&gt; element of the junitlauncher task now has a new
    optional "java" attribute which can be used to point to a
    different Java installation for runnning the forked tests.
    + made sure &lt;echoproperties&gt; sorts the echoed properties on
    JDK9+ as well.
    + org.apache.tools.ant.taskdefs.Recorder class now introduces a
    setLogLevel(LogLevel level) method.
    + The &lt;fork&gt; element of junitlaunchertask now allows a
    "forkMode" attribute. forkMode=perTestClass can now be used to
    launch each test class in a separate forked JVM.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1694433600">- Added patch:
  * reproducible-propertyfile-task.patch
    + Debian patch to improve propertyfile task in RPM builds by
    using the date specified by the SOURCE_DATE_EPOCH variable
    in the header of the .properties file generated</changelog>
  <changelog author="Anton Shvetz &lt;shvetz.anton@gmail.com&gt;" date="1706270400">- Add forgotten univocity-parsers to
  %{_sysconfdir}/ant.d/junitlauncher (needed to run unit tests
  annotated with @CsvSource and @CsvFileSource)</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1708430400">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1714219200">- Put hamcrest on the classpath of ant-junit module</changelog>
  <changelog author="Anton Shvetz &lt;shvetz.anton@gmail.com&gt;" date="1714824000">- Add forgotten open-test-reporting/events to
  %{_sysconfdir}/ant.d/junitlauncher</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1721304000">- Added patches:
  * reproducible-jar-mtime.patch
    + make the modification times of files in a jar file
    reproducible
  * reproducible-javadoc.patch
    + make javadoc generation reproducible: don't generate
    timestamps, and normalize locale and encoding</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1723550400">- Modified patches:
  * reproducible-jar-mtime.patch
    + attempt more normalization of mtimes in jar files
  * reproducible-javadoc.patch
    + fix the patch to work with custom doclets too</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1726574400">- Modified patch:
  * reproducible-jar-mtime.patch
    + try different approach to get bit-reproducible builds</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1727611200">- Fix build after removal of the default %%{java_home} define</changelog>
  <changelog author="Gus Kenion &lt;gus.kenion@suse.com&gt;" date="1730721600">- Upgrade to version 1.10.15
  * Bug fixes:
    + Fixes an regression, introduced in Ant 1.10.13, where
    pathconvert would unintentionally trim the string output.
    Bugzilla Report 67082
    + Fixes a bug in &lt;depend&gt; task which would throw a
    ClassFormatError if it encountered constant pool entry type
    17.  Bugzilla Report 66552
    + Launching ant.bat from within a Java program using
    java.lang.Runtime.exec() could result in an unexpected
    failure. This has now been fixed.  Bugzilla Report 67417
    + Fixes an issue in bootstrap.bat when trying to detect if the
    "javac" command in the JDK supports the "--release" option.
    Github Pull Request #205
    + Fixes a bug in
    org.apache.tools.ant.taskdefs.email.EmailAddress which would
    throw a java.lang.StringIndexOutOfBoundsException if the
    email address passed to its constructor was an empty String.
    Bugzilla Report 68462
    + legacy-xml reporter of junitlauncher task was using a
    non-buffered outputstream when generating the report. This
    introduces severe performance penalties since the writes
    translate to native write system calls. This has been fixed
    to use a BufferedOutputStream.  Github Pull Request #207
  * Other changes:
    + exec task now logs the process' non-zero exit code at INFO
    level instead of the previous ERROR level. The following
    message from exec task is the one who's level has been
    changed:
    Result: 1
    Bugzilla Report 26453
    + Removes direct references to
    com.sun.net.ssl.internal.ssl.Provider class from the mail
    task, since that internal JDK class is no longer available in
    recent versions of Java.  Bugzilla Report 68460
    + &lt;replaceregexp&gt; has a new failOnError attribute which, when
    enabled, makes the task throw a BuildException for certain
    error cases that will only be logged otherwise.  Github Pull
    Request #206
    + &lt;ftp&gt; task now has a new "useSecureDataChannel" attribute
    which can be set to true, when ftps is enabled, to enable
    secure data channel.  Bugzilla Report 68773
- Unify .spec files
  * remove ant-antlr.changes
  * remove ant-antlr.spec
  * remove ant-junit.changes
  * remove ant-junit.spec
  * remove ant-junit5.changes
  * remove ant-junit5.spec</changelog>
</package>
<package pkgid="bc6686087e4bc3247f115f2ebe192b7a8b49d833c3de07a66109501a678ec474795cc9e16676b374fcfb873c5ac380b417ad2994601409e79ad909c64608ef3e" name="ant-apache-bsf" arch="noarch">
  <version epoch="0" ver="1.10.15" rel="1.1"/>
  <changelog author="Pedro Monreal &lt;pmonreal@suse.com&gt;" date="1622721600">- Update to 1.10.10
  * SCP (with sftp=true) task would fail if fetching file located
    in root directory.
  * Fixed: javac task would fail if the arguments file it
    (internally) created didn't quote the # character.
  * Make sure LegacyXmlResultFormatter encodes characters illegal
    in XML the same way JUnit5's built-in formatter would.
  * LegacyXmlResultFormatter no longer double-encodes &lt;&gt;&amp; in
    system-err and system-out.
  * Fixes a bug in junitlauncher task's legacy-xml formatter,
    where the testcase representing a @Parameterized JUnit4 test
    wasn't being reported in the XML.
  * Fixes a bug where the ant-testutil-sources.jar that gets
    published to Maven central repository didn't contain any
    source files.
  * The &lt;http&gt; condition didn't follow redirects from http to https.
  * ZipOutputStream now overrides write(int) in order to make sure
    single byte writes get the same treatment as array writes.
  * Fixes a potential deadlock in junitlauncher task when using
    legacy-xml reporter.
  * javaversion condition now has a new "atmost" attribute. See
    the javaversion manual for more details
  * The "listener" nested element of the "junitlauncher" task now
    has a new "useLegacyReportingName" attribute which can be used
    to control the test identifiers names that get reported by the
    listener. See the junitlauncher manual for more details. Note that
    this change also introduces a new "setUseLegacyReportingName" method
    on the org.apache.tools.ant.taskdefs.optional.junitlauncher.TestResultFormatter
    interface. This will break backward compatibility with any of your custom
    result formatters which implemented this interface and such implementations
    are now expected to implement this new method.
  * A new attribute preserveduplicates allows &lt;resourcelist&gt; to
    return the same resource multiple times when set to true.
  * A new attribute filterbeforeconcat in &lt;concat&gt; can be used to
    decide whether the filterchain should be applied to the
    concatenated content (the default) or each nested resource
    individually before concatenating them.
  * The ssh tasks now share a new nested element additionalConfig that can
    be used to set config values for the jsch Session used by the task.
  * Added new discardOutput and discardError properties to redirector
    and the exec, apply and java tasks which can be used to completely
    discard any (error) output. This is a platform independent
    alternative to directiong output to any kind of null device.
  * junitlauncher now prints a more useful and instantaneous summary of
    tests being run, closely matching the junit task's summary.</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1639569600">- Update to 1.10.12:
  * The update includes fixes for the following CVEs:
  CVE-2021-36374, bsc#1188469
    Excessive memory allocation when reading a specially
    crafted ZIP archive or a derived formats.
  CVE-2021-36373, bsc#1188468
    Excessive memory allocation when reading a specially
    crafted TAR archive.
  * The http condition would follow redirects even when "followRedirects" attribute
  was set to "false". This has now been fixed. Bugzilla Report 65489
  * Made sure setting build.compiler to the fully qualified classname
  that corresponds to extJavac or modern has the same effect as using
  the shorter alias names. Bugzilla Report 65539
  * Prevent potential deadlocks in org.apache.tools.ant.IntrospectionHelper.
  Bugzilla Report 65424
  * The implementation of AntClassLoader#findResources() has been changed to optimize
  it for potential performance issues, as those noted at https://issues.jenkins.io/browse/JENKINS-22310?focusedCommentId=197405&amp;page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-197405
  Github Pull Request #151
  * AntClassLoader now implements the ClassLoader#findResource(String) method.
  Github Pull Request #150
  * Ant tries to avoid file name canonicalization when possible.
  Bugzilla Report 65499
  * javadoc task will now look for warning messages in the STDERR stream too
  when "failonwarning" is set to true to account for changes in JDK 17+
  * The tar task now preserves symlinks of nested tarfilesets.
  Github Pull Request #142
- Changes from 1.10.11:
  * a race condition could lead to NullPointerExceptions when running
  tasks in parallel.
  Bugzilla Report 65316
  * fixed potential OutOfMemory errors when reading broken archives
  using the tar or zip formats or formats derived from zip.
  * org.apache.tools.ant.taskdefs.optional.junitlauncher.confined.JUnitLauncherTask now
  has a new protected createExecuteWatchdog() method for allowing it to be overriden.
  Github Pull Request #147
  * Upgraded AntUnit to 1.4.1.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1645531200">- Do not build against the log4j12 packages, use the new reload4j</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1652097600">- Disable a test failing to compile with junit5 5.8.x</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1674043200">- Update ant keyring with new developer keys.
- Update to 1.10.13:
  * Breaking changes:
  - &lt;get&gt; has a new attribute authenticateOnRedirect that can be
    used to prevent Ant from sending the configured credentials
    when following a redirect. It is false by default, which means
    builds that rely on credentials being used on the redirected
    URI may break.
  * Fixed bugs:
  - the PropertyEnumerator change introduced in 1.10.9 proved to
    be not fully backwards compatible when combined with certain
    custom PropertyHelper implementations - for example when using
    AntXtras.
  - legacy-xml reporter of the junitlauncher task now escapes ]]&gt;
    when writing CDATA.
  - &lt;scp&gt; may leak connections when trying to preserve the last
    modified timestamps of files transferred recursively from a
    server.
  - tstamp task would in certain cases parse the SOURCE_DATE_EPOCH
    environment variable value to an incorrect date. This has now
    been fixed.
  - fetch.xml didn't set up non-default repositories propery and
    thus failed to download JAI.
  - When building and installing Ant distribution from source, the
    build script would change permissions on unrelated files in
    the destination directory. This is now fixed and such
    unrelated files in the destination directory will be left
    untouched.
  - parsing tar entries with multiple NUL bytes in their name
    would include garbage bytes as the name included all bytes up
    to the last NUL rather than the first.
  - loadresource might log warnings even though quiet was set to
    true
  - javac task would add paths constructs containing wildcards to
    the internally created argument file where wildcards are not
    allowed
  * Other changes:
  - added an implementation of the MIME Mail sender based on the
    repackaged Jakarta Mail package rather than javax Mail.
  - The "listener" element in the junitlauncher task now supports
    an "extension" attribute to control the filename extension
    of the generated output file from the listener.
  - &lt;ftp&gt; now supports FTPs.
  - DirectoryScanner avoids listing directory contents when it
    known it will never use the information retrieved. This may
    improve performance in some special cases.
  - &lt;manifest&gt; will now create the parent directory of the
    manifestFile attribute if it doesn't exist.
  - org.apache.tools.ant.BuildLogger now has a new method
    getMessageOutputLevel() which returns the currently set
    message output level.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1674734400">- Package and distribute the new ant-jakartamail</changelog>
  <changelog author="Frederic Crozat &lt;fcrozat@suse.com&gt;" date="1683201600">- Add _multibuild to define additional spec files as additional
  flavors.
  Eliminates the need for source package links in OBS.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1693483200">- Update to 1.10.14:
  * Changes that could break older environments:
    + Resource#compareTo now invokes getName rather than toString as
    the later may be costly (for example in the case of a
    StringResource).
    + When using Java 18 or higher, Ant will no longer use Java
    SecurityManager because it has been deprecated for removal and
    by default is disallowed to be set at runtime
    https://openjdk.org/jeps/411.
    This will mean that the "&lt;permissions&gt;" type is no longer
    functional when using Java 18 or higher.
    Furthermore, when using Java 18 or higher, if the build
    executes tasks that call "java.lang.System.exit()" and if
    those tasks aren't running in a forked VM of their own, then
    such tasks will now kill the entire Ant build process. It is
    recommended that such tasks be updated to launch in a forked
    VM so that the System.exit() call will not impact the JVM in
    which Ant process runs.
  * Fixed bugs:
    + log only the stylesheet name in the xslt task.
    + junitlauncher task's "test" and "listener" elements which take
    a "outputDir" property were incorrectly resolving the
    outputDir against the current working directory instead of the
    project's basedir.
    + regexmapper would, in some cases, incorrectly consume
    backslash characters from the "to" attribute, resulting in
    missing backslashes in the output.
    + &lt;fixcrlf&gt;, &lt;replace&gt; and &lt;replaceregexp&gt; now try to preserve
    the file permissions of the files they modify.
    + junitlauncher task would fail if a forked test timed out even
    if haltOnFailure was set to false.
    + fixes a bug in org.apache.tools.zip.ZipOutputStream where,
    even when "zip64Mode" is set to "always", ZipOutputStream may
    not create a CEN extra field data for the entry.
    + legacy-xml listener of junitlauncher task wouldn't report
    certain failures involving junit jupiter dynamic tests.
    + allow.class which was introduced in Ant 1.10.13 release, has
    been removed from this 1.10.14 release. This class was
    introduced in context of the SecurityManager changes in
    Ant 1.10.13, which have now been reverted in Ant 1.10.14,
    since they caused several regressions.
  * Other changes:
    + &lt;fork&gt; element of the junitlauncher task now has a new
    optional "java" attribute which can be used to point to a
    different Java installation for runnning the forked tests.
    + made sure &lt;echoproperties&gt; sorts the echoed properties on
    JDK9+ as well.
    + org.apache.tools.ant.taskdefs.Recorder class now introduces a
    setLogLevel(LogLevel level) method.
    + The &lt;fork&gt; element of junitlaunchertask now allows a
    "forkMode" attribute. forkMode=perTestClass can now be used to
    launch each test class in a separate forked JVM.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1694433600">- Added patch:
  * reproducible-propertyfile-task.patch
    + Debian patch to improve propertyfile task in RPM builds by
    using the date specified by the SOURCE_DATE_EPOCH variable
    in the header of the .properties file generated</changelog>
  <changelog author="Anton Shvetz &lt;shvetz.anton@gmail.com&gt;" date="1706270400">- Add forgotten univocity-parsers to
  %{_sysconfdir}/ant.d/junitlauncher (needed to run unit tests
  annotated with @CsvSource and @CsvFileSource)</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1708430400">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1714219200">- Put hamcrest on the classpath of ant-junit module</changelog>
  <changelog author="Anton Shvetz &lt;shvetz.anton@gmail.com&gt;" date="1714824000">- Add forgotten open-test-reporting/events to
  %{_sysconfdir}/ant.d/junitlauncher</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1721304000">- Added patches:
  * reproducible-jar-mtime.patch
    + make the modification times of files in a jar file
    reproducible
  * reproducible-javadoc.patch
    + make javadoc generation reproducible: don't generate
    timestamps, and normalize locale and encoding</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1723550400">- Modified patches:
  * reproducible-jar-mtime.patch
    + attempt more normalization of mtimes in jar files
  * reproducible-javadoc.patch
    + fix the patch to work with custom doclets too</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1726574400">- Modified patch:
  * reproducible-jar-mtime.patch
    + try different approach to get bit-reproducible builds</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1727611200">- Fix build after removal of the default %%{java_home} define</changelog>
  <changelog author="Gus Kenion &lt;gus.kenion@suse.com&gt;" date="1730721600">- Upgrade to version 1.10.15
  * Bug fixes:
    + Fixes an regression, introduced in Ant 1.10.13, where
    pathconvert would unintentionally trim the string output.
    Bugzilla Report 67082
    + Fixes a bug in &lt;depend&gt; task which would throw a
    ClassFormatError if it encountered constant pool entry type
    17.  Bugzilla Report 66552
    + Launching ant.bat from within a Java program using
    java.lang.Runtime.exec() could result in an unexpected
    failure. This has now been fixed.  Bugzilla Report 67417
    + Fixes an issue in bootstrap.bat when trying to detect if the
    "javac" command in the JDK supports the "--release" option.
    Github Pull Request #205
    + Fixes a bug in
    org.apache.tools.ant.taskdefs.email.EmailAddress which would
    throw a java.lang.StringIndexOutOfBoundsException if the
    email address passed to its constructor was an empty String.
    Bugzilla Report 68462
    + legacy-xml reporter of junitlauncher task was using a
    non-buffered outputstream when generating the report. This
    introduces severe performance penalties since the writes
    translate to native write system calls. This has been fixed
    to use a BufferedOutputStream.  Github Pull Request #207
  * Other changes:
    + exec task now logs the process' non-zero exit code at INFO
    level instead of the previous ERROR level. The following
    message from exec task is the one who's level has been
    changed:
    Result: 1
    Bugzilla Report 26453
    + Removes direct references to
    com.sun.net.ssl.internal.ssl.Provider class from the mail
    task, since that internal JDK class is no longer available in
    recent versions of Java.  Bugzilla Report 68460
    + &lt;replaceregexp&gt; has a new failOnError attribute which, when
    enabled, makes the task throw a BuildException for certain
    error cases that will only be logged otherwise.  Github Pull
    Request #206
    + &lt;ftp&gt; task now has a new "useSecureDataChannel" attribute
    which can be set to true, when ftps is enabled, to enable
    secure data channel.  Bugzilla Report 68773
- Unify .spec files
  * remove ant-antlr.changes
  * remove ant-antlr.spec
  * remove ant-junit.changes
  * remove ant-junit.spec
  * remove ant-junit5.changes
  * remove ant-junit5.spec</changelog>
</package>
<package pkgid="8e30bb63cb0911f323d2d598be271e5e72e0829b70a63e82777452f0aa15d03efcb8a9b7f4a4de67b6a75740414cb1572fb84c4f6949da00cb99dbdea5499708" name="ant-apache-log4j" arch="noarch">
  <version epoch="0" ver="1.10.15" rel="1.1"/>
  <changelog author="Pedro Monreal &lt;pmonreal@suse.com&gt;" date="1622721600">- Update to 1.10.10
  * SCP (with sftp=true) task would fail if fetching file located
    in root directory.
  * Fixed: javac task would fail if the arguments file it
    (internally) created didn't quote the # character.
  * Make sure LegacyXmlResultFormatter encodes characters illegal
    in XML the same way JUnit5's built-in formatter would.
  * LegacyXmlResultFormatter no longer double-encodes &lt;&gt;&amp; in
    system-err and system-out.
  * Fixes a bug in junitlauncher task's legacy-xml formatter,
    where the testcase representing a @Parameterized JUnit4 test
    wasn't being reported in the XML.
  * Fixes a bug where the ant-testutil-sources.jar that gets
    published to Maven central repository didn't contain any
    source files.
  * The &lt;http&gt; condition didn't follow redirects from http to https.
  * ZipOutputStream now overrides write(int) in order to make sure
    single byte writes get the same treatment as array writes.
  * Fixes a potential deadlock in junitlauncher task when using
    legacy-xml reporter.
  * javaversion condition now has a new "atmost" attribute. See
    the javaversion manual for more details
  * The "listener" nested element of the "junitlauncher" task now
    has a new "useLegacyReportingName" attribute which can be used
    to control the test identifiers names that get reported by the
    listener. See the junitlauncher manual for more details. Note that
    this change also introduces a new "setUseLegacyReportingName" method
    on the org.apache.tools.ant.taskdefs.optional.junitlauncher.TestResultFormatter
    interface. This will break backward compatibility with any of your custom
    result formatters which implemented this interface and such implementations
    are now expected to implement this new method.
  * A new attribute preserveduplicates allows &lt;resourcelist&gt; to
    return the same resource multiple times when set to true.
  * A new attribute filterbeforeconcat in &lt;concat&gt; can be used to
    decide whether the filterchain should be applied to the
    concatenated content (the default) or each nested resource
    individually before concatenating them.
  * The ssh tasks now share a new nested element additionalConfig that can
    be used to set config values for the jsch Session used by the task.
  * Added new discardOutput and discardError properties to redirector
    and the exec, apply and java tasks which can be used to completely
    discard any (error) output. This is a platform independent
    alternative to directiong output to any kind of null device.
  * junitlauncher now prints a more useful and instantaneous summary of
    tests being run, closely matching the junit task's summary.</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1639569600">- Update to 1.10.12:
  * The update includes fixes for the following CVEs:
  CVE-2021-36374, bsc#1188469
    Excessive memory allocation when reading a specially
    crafted ZIP archive or a derived formats.
  CVE-2021-36373, bsc#1188468
    Excessive memory allocation when reading a specially
    crafted TAR archive.
  * The http condition would follow redirects even when "followRedirects" attribute
  was set to "false". This has now been fixed. Bugzilla Report 65489
  * Made sure setting build.compiler to the fully qualified classname
  that corresponds to extJavac or modern has the same effect as using
  the shorter alias names. Bugzilla Report 65539
  * Prevent potential deadlocks in org.apache.tools.ant.IntrospectionHelper.
  Bugzilla Report 65424
  * The implementation of AntClassLoader#findResources() has been changed to optimize
  it for potential performance issues, as those noted at https://issues.jenkins.io/browse/JENKINS-22310?focusedCommentId=197405&amp;page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-197405
  Github Pull Request #151
  * AntClassLoader now implements the ClassLoader#findResource(String) method.
  Github Pull Request #150
  * Ant tries to avoid file name canonicalization when possible.
  Bugzilla Report 65499
  * javadoc task will now look for warning messages in the STDERR stream too
  when "failonwarning" is set to true to account for changes in JDK 17+
  * The tar task now preserves symlinks of nested tarfilesets.
  Github Pull Request #142
- Changes from 1.10.11:
  * a race condition could lead to NullPointerExceptions when running
  tasks in parallel.
  Bugzilla Report 65316
  * fixed potential OutOfMemory errors when reading broken archives
  using the tar or zip formats or formats derived from zip.
  * org.apache.tools.ant.taskdefs.optional.junitlauncher.confined.JUnitLauncherTask now
  has a new protected createExecuteWatchdog() method for allowing it to be overriden.
  Github Pull Request #147
  * Upgraded AntUnit to 1.4.1.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1645531200">- Do not build against the log4j12 packages, use the new reload4j</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1652097600">- Disable a test failing to compile with junit5 5.8.x</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1674043200">- Update ant keyring with new developer keys.
- Update to 1.10.13:
  * Breaking changes:
  - &lt;get&gt; has a new attribute authenticateOnRedirect that can be
    used to prevent Ant from sending the configured credentials
    when following a redirect. It is false by default, which means
    builds that rely on credentials being used on the redirected
    URI may break.
  * Fixed bugs:
  - the PropertyEnumerator change introduced in 1.10.9 proved to
    be not fully backwards compatible when combined with certain
    custom PropertyHelper implementations - for example when using
    AntXtras.
  - legacy-xml reporter of the junitlauncher task now escapes ]]&gt;
    when writing CDATA.
  - &lt;scp&gt; may leak connections when trying to preserve the last
    modified timestamps of files transferred recursively from a
    server.
  - tstamp task would in certain cases parse the SOURCE_DATE_EPOCH
    environment variable value to an incorrect date. This has now
    been fixed.
  - fetch.xml didn't set up non-default repositories propery and
    thus failed to download JAI.
  - When building and installing Ant distribution from source, the
    build script would change permissions on unrelated files in
    the destination directory. This is now fixed and such
    unrelated files in the destination directory will be left
    untouched.
  - parsing tar entries with multiple NUL bytes in their name
    would include garbage bytes as the name included all bytes up
    to the last NUL rather than the first.
  - loadresource might log warnings even though quiet was set to
    true
  - javac task would add paths constructs containing wildcards to
    the internally created argument file where wildcards are not
    allowed
  * Other changes:
  - added an implementation of the MIME Mail sender based on the
    repackaged Jakarta Mail package rather than javax Mail.
  - The "listener" element in the junitlauncher task now supports
    an "extension" attribute to control the filename extension
    of the generated output file from the listener.
  - &lt;ftp&gt; now supports FTPs.
  - DirectoryScanner avoids listing directory contents when it
    known it will never use the information retrieved. This may
    improve performance in some special cases.
  - &lt;manifest&gt; will now create the parent directory of the
    manifestFile attribute if it doesn't exist.
  - org.apache.tools.ant.BuildLogger now has a new method
    getMessageOutputLevel() which returns the currently set
    message output level.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1674734400">- Package and distribute the new ant-jakartamail</changelog>
  <changelog author="Frederic Crozat &lt;fcrozat@suse.com&gt;" date="1683201600">- Add _multibuild to define additional spec files as additional
  flavors.
  Eliminates the need for source package links in OBS.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1693483200">- Update to 1.10.14:
  * Changes that could break older environments:
    + Resource#compareTo now invokes getName rather than toString as
    the later may be costly (for example in the case of a
    StringResource).
    + When using Java 18 or higher, Ant will no longer use Java
    SecurityManager because it has been deprecated for removal and
    by default is disallowed to be set at runtime
    https://openjdk.org/jeps/411.
    This will mean that the "&lt;permissions&gt;" type is no longer
    functional when using Java 18 or higher.
    Furthermore, when using Java 18 or higher, if the build
    executes tasks that call "java.lang.System.exit()" and if
    those tasks aren't running in a forked VM of their own, then
    such tasks will now kill the entire Ant build process. It is
    recommended that such tasks be updated to launch in a forked
    VM so that the System.exit() call will not impact the JVM in
    which Ant process runs.
  * Fixed bugs:
    + log only the stylesheet name in the xslt task.
    + junitlauncher task's "test" and "listener" elements which take
    a "outputDir" property were incorrectly resolving the
    outputDir against the current working directory instead of the
    project's basedir.
    + regexmapper would, in some cases, incorrectly consume
    backslash characters from the "to" attribute, resulting in
    missing backslashes in the output.
    + &lt;fixcrlf&gt;, &lt;replace&gt; and &lt;replaceregexp&gt; now try to preserve
    the file permissions of the files they modify.
    + junitlauncher task would fail if a forked test timed out even
    if haltOnFailure was set to false.
    + fixes a bug in org.apache.tools.zip.ZipOutputStream where,
    even when "zip64Mode" is set to "always", ZipOutputStream may
    not create a CEN extra field data for the entry.
    + legacy-xml listener of junitlauncher task wouldn't report
    certain failures involving junit jupiter dynamic tests.
    + allow.class which was introduced in Ant 1.10.13 release, has
    been removed from this 1.10.14 release. This class was
    introduced in context of the SecurityManager changes in
    Ant 1.10.13, which have now been reverted in Ant 1.10.14,
    since they caused several regressions.
  * Other changes:
    + &lt;fork&gt; element of the junitlauncher task now has a new
    optional "java" attribute which can be used to point to a
    different Java installation for runnning the forked tests.
    + made sure &lt;echoproperties&gt; sorts the echoed properties on
    JDK9+ as well.
    + org.apache.tools.ant.taskdefs.Recorder class now introduces a
    setLogLevel(LogLevel level) method.
    + The &lt;fork&gt; element of junitlaunchertask now allows a
    "forkMode" attribute. forkMode=perTestClass can now be used to
    launch each test class in a separate forked JVM.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1694433600">- Added patch:
  * reproducible-propertyfile-task.patch
    + Debian patch to improve propertyfile task in RPM builds by
    using the date specified by the SOURCE_DATE_EPOCH variable
    in the header of the .properties file generated</changelog>
  <changelog author="Anton Shvetz &lt;shvetz.anton@gmail.com&gt;" date="1706270400">- Add forgotten univocity-parsers to
  %{_sysconfdir}/ant.d/junitlauncher (needed to run unit tests
  annotated with @CsvSource and @CsvFileSource)</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1708430400">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1714219200">- Put hamcrest on the classpath of ant-junit module</changelog>
  <changelog author="Anton Shvetz &lt;shvetz.anton@gmail.com&gt;" date="1714824000">- Add forgotten open-test-reporting/events to
  %{_sysconfdir}/ant.d/junitlauncher</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1721304000">- Added patches:
  * reproducible-jar-mtime.patch
    + make the modification times of files in a jar file
    reproducible
  * reproducible-javadoc.patch
    + make javadoc generation reproducible: don't generate
    timestamps, and normalize locale and encoding</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1723550400">- Modified patches:
  * reproducible-jar-mtime.patch
    + attempt more normalization of mtimes in jar files
  * reproducible-javadoc.patch
    + fix the patch to work with custom doclets too</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1726574400">- Modified patch:
  * reproducible-jar-mtime.patch
    + try different approach to get bit-reproducible builds</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1727611200">- Fix build after removal of the default %%{java_home} define</changelog>
  <changelog author="Gus Kenion &lt;gus.kenion@suse.com&gt;" date="1730721600">- Upgrade to version 1.10.15
  * Bug fixes:
    + Fixes an regression, introduced in Ant 1.10.13, where
    pathconvert would unintentionally trim the string output.
    Bugzilla Report 67082
    + Fixes a bug in &lt;depend&gt; task which would throw a
    ClassFormatError if it encountered constant pool entry type
    17.  Bugzilla Report 66552
    + Launching ant.bat from within a Java program using
    java.lang.Runtime.exec() could result in an unexpected
    failure. This has now been fixed.  Bugzilla Report 67417
    + Fixes an issue in bootstrap.bat when trying to detect if the
    "javac" command in the JDK supports the "--release" option.
    Github Pull Request #205
    + Fixes a bug in
    org.apache.tools.ant.taskdefs.email.EmailAddress which would
    throw a java.lang.StringIndexOutOfBoundsException if the
    email address passed to its constructor was an empty String.
    Bugzilla Report 68462
    + legacy-xml reporter of junitlauncher task was using a
    non-buffered outputstream when generating the report. This
    introduces severe performance penalties since the writes
    translate to native write system calls. This has been fixed
    to use a BufferedOutputStream.  Github Pull Request #207
  * Other changes:
    + exec task now logs the process' non-zero exit code at INFO
    level instead of the previous ERROR level. The following
    message from exec task is the one who's level has been
    changed:
    Result: 1
    Bugzilla Report 26453
    + Removes direct references to
    com.sun.net.ssl.internal.ssl.Provider class from the mail
    task, since that internal JDK class is no longer available in
    recent versions of Java.  Bugzilla Report 68460
    + &lt;replaceregexp&gt; has a new failOnError attribute which, when
    enabled, makes the task throw a BuildException for certain
    error cases that will only be logged otherwise.  Github Pull
    Request #206
    + &lt;ftp&gt; task now has a new "useSecureDataChannel" attribute
    which can be set to true, when ftps is enabled, to enable
    secure data channel.  Bugzilla Report 68773
- Unify .spec files
  * remove ant-antlr.changes
  * remove ant-antlr.spec
  * remove ant-junit.changes
  * remove ant-junit.spec
  * remove ant-junit5.changes
  * remove ant-junit5.spec</changelog>
</package>
<package pkgid="319e1f2a52e6f3890725442cd6812d44cb31b2e03fc1679cb9e5e18ebed05843da372435f00c7f5c8262c621f20055ec187c6c386185d3ec855cdab3f1540dc9" name="ant-apache-oro" arch="noarch">
  <version epoch="0" ver="1.10.15" rel="1.1"/>
  <changelog author="Pedro Monreal &lt;pmonreal@suse.com&gt;" date="1622721600">- Update to 1.10.10
  * SCP (with sftp=true) task would fail if fetching file located
    in root directory.
  * Fixed: javac task would fail if the arguments file it
    (internally) created didn't quote the # character.
  * Make sure LegacyXmlResultFormatter encodes characters illegal
    in XML the same way JUnit5's built-in formatter would.
  * LegacyXmlResultFormatter no longer double-encodes &lt;&gt;&amp; in
    system-err and system-out.
  * Fixes a bug in junitlauncher task's legacy-xml formatter,
    where the testcase representing a @Parameterized JUnit4 test
    wasn't being reported in the XML.
  * Fixes a bug where the ant-testutil-sources.jar that gets
    published to Maven central repository didn't contain any
    source files.
  * The &lt;http&gt; condition didn't follow redirects from http to https.
  * ZipOutputStream now overrides write(int) in order to make sure
    single byte writes get the same treatment as array writes.
  * Fixes a potential deadlock in junitlauncher task when using
    legacy-xml reporter.
  * javaversion condition now has a new "atmost" attribute. See
    the javaversion manual for more details
  * The "listener" nested element of the "junitlauncher" task now
    has a new "useLegacyReportingName" attribute which can be used
    to control the test identifiers names that get reported by the
    listener. See the junitlauncher manual for more details. Note that
    this change also introduces a new "setUseLegacyReportingName" method
    on the org.apache.tools.ant.taskdefs.optional.junitlauncher.TestResultFormatter
    interface. This will break backward compatibility with any of your custom
    result formatters which implemented this interface and such implementations
    are now expected to implement this new method.
  * A new attribute preserveduplicates allows &lt;resourcelist&gt; to
    return the same resource multiple times when set to true.
  * A new attribute filterbeforeconcat in &lt;concat&gt; can be used to
    decide whether the filterchain should be applied to the
    concatenated content (the default) or each nested resource
    individually before concatenating them.
  * The ssh tasks now share a new nested element additionalConfig that can
    be used to set config values for the jsch Session used by the task.
  * Added new discardOutput and discardError properties to redirector
    and the exec, apply and java tasks which can be used to completely
    discard any (error) output. This is a platform independent
    alternative to directiong output to any kind of null device.
  * junitlauncher now prints a more useful and instantaneous summary of
    tests being run, closely matching the junit task's summary.</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1639569600">- Update to 1.10.12:
  * The update includes fixes for the following CVEs:
  CVE-2021-36374, bsc#1188469
    Excessive memory allocation when reading a specially
    crafted ZIP archive or a derived formats.
  CVE-2021-36373, bsc#1188468
    Excessive memory allocation when reading a specially
    crafted TAR archive.
  * The http condition would follow redirects even when "followRedirects" attribute
  was set to "false". This has now been fixed. Bugzilla Report 65489
  * Made sure setting build.compiler to the fully qualified classname
  that corresponds to extJavac or modern has the same effect as using
  the shorter alias names. Bugzilla Report 65539
  * Prevent potential deadlocks in org.apache.tools.ant.IntrospectionHelper.
  Bugzilla Report 65424
  * The implementation of AntClassLoader#findResources() has been changed to optimize
  it for potential performance issues, as those noted at https://issues.jenkins.io/browse/JENKINS-22310?focusedCommentId=197405&amp;page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-197405
  Github Pull Request #151
  * AntClassLoader now implements the ClassLoader#findResource(String) method.
  Github Pull Request #150
  * Ant tries to avoid file name canonicalization when possible.
  Bugzilla Report 65499
  * javadoc task will now look for warning messages in the STDERR stream too
  when "failonwarning" is set to true to account for changes in JDK 17+
  * The tar task now preserves symlinks of nested tarfilesets.
  Github Pull Request #142
- Changes from 1.10.11:
  * a race condition could lead to NullPointerExceptions when running
  tasks in parallel.
  Bugzilla Report 65316
  * fixed potential OutOfMemory errors when reading broken archives
  using the tar or zip formats or formats derived from zip.
  * org.apache.tools.ant.taskdefs.optional.junitlauncher.confined.JUnitLauncherTask now
  has a new protected createExecuteWatchdog() method for allowing it to be overriden.
  Github Pull Request #147
  * Upgraded AntUnit to 1.4.1.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1645531200">- Do not build against the log4j12 packages, use the new reload4j</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1652097600">- Disable a test failing to compile with junit5 5.8.x</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1674043200">- Update ant keyring with new developer keys.
- Update to 1.10.13:
  * Breaking changes:
  - &lt;get&gt; has a new attribute authenticateOnRedirect that can be
    used to prevent Ant from sending the configured credentials
    when following a redirect. It is false by default, which means
    builds that rely on credentials being used on the redirected
    URI may break.
  * Fixed bugs:
  - the PropertyEnumerator change introduced in 1.10.9 proved to
    be not fully backwards compatible when combined with certain
    custom PropertyHelper implementations - for example when using
    AntXtras.
  - legacy-xml reporter of the junitlauncher task now escapes ]]&gt;
    when writing CDATA.
  - &lt;scp&gt; may leak connections when trying to preserve the last
    modified timestamps of files transferred recursively from a
    server.
  - tstamp task would in certain cases parse the SOURCE_DATE_EPOCH
    environment variable value to an incorrect date. This has now
    been fixed.
  - fetch.xml didn't set up non-default repositories propery and
    thus failed to download JAI.
  - When building and installing Ant distribution from source, the
    build script would change permissions on unrelated files in
    the destination directory. This is now fixed and such
    unrelated files in the destination directory will be left
    untouched.
  - parsing tar entries with multiple NUL bytes in their name
    would include garbage bytes as the name included all bytes up
    to the last NUL rather than the first.
  - loadresource might log warnings even though quiet was set to
    true
  - javac task would add paths constructs containing wildcards to
    the internally created argument file where wildcards are not
    allowed
  * Other changes:
  - added an implementation of the MIME Mail sender based on the
    repackaged Jakarta Mail package rather than javax Mail.
  - The "listener" element in the junitlauncher task now supports
    an "extension" attribute to control the filename extension
    of the generated output file from the listener.
  - &lt;ftp&gt; now supports FTPs.
  - DirectoryScanner avoids listing directory contents when it
    known it will never use the information retrieved. This may
    improve performance in some special cases.
  - &lt;manifest&gt; will now create the parent directory of the
    manifestFile attribute if it doesn't exist.
  - org.apache.tools.ant.BuildLogger now has a new method
    getMessageOutputLevel() which returns the currently set
    message output level.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1674734400">- Package and distribute the new ant-jakartamail</changelog>
  <changelog author="Frederic Crozat &lt;fcrozat@suse.com&gt;" date="1683201600">- Add _multibuild to define additional spec files as additional
  flavors.
  Eliminates the need for source package links in OBS.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1693483200">- Update to 1.10.14:
  * Changes that could break older environments:
    + Resource#compareTo now invokes getName rather than toString as
    the later may be costly (for example in the case of a
    StringResource).
    + When using Java 18 or higher, Ant will no longer use Java
    SecurityManager because it has been deprecated for removal and
    by default is disallowed to be set at runtime
    https://openjdk.org/jeps/411.
    This will mean that the "&lt;permissions&gt;" type is no longer
    functional when using Java 18 or higher.
    Furthermore, when using Java 18 or higher, if the build
    executes tasks that call "java.lang.System.exit()" and if
    those tasks aren't running in a forked VM of their own, then
    such tasks will now kill the entire Ant build process. It is
    recommended that such tasks be updated to launch in a forked
    VM so that the System.exit() call will not impact the JVM in
    which Ant process runs.
  * Fixed bugs:
    + log only the stylesheet name in the xslt task.
    + junitlauncher task's "test" and "listener" elements which take
    a "outputDir" property were incorrectly resolving the
    outputDir against the current working directory instead of the
    project's basedir.
    + regexmapper would, in some cases, incorrectly consume
    backslash characters from the "to" attribute, resulting in
    missing backslashes in the output.
    + &lt;fixcrlf&gt;, &lt;replace&gt; and &lt;replaceregexp&gt; now try to preserve
    the file permissions of the files they modify.
    + junitlauncher task would fail if a forked test timed out even
    if haltOnFailure was set to false.
    + fixes a bug in org.apache.tools.zip.ZipOutputStream where,
    even when "zip64Mode" is set to "always", ZipOutputStream may
    not create a CEN extra field data for the entry.
    + legacy-xml listener of junitlauncher task wouldn't report
    certain failures involving junit jupiter dynamic tests.
    + allow.class which was introduced in Ant 1.10.13 release, has
    been removed from this 1.10.14 release. This class was
    introduced in context of the SecurityManager changes in
    Ant 1.10.13, which have now been reverted in Ant 1.10.14,
    since they caused several regressions.
  * Other changes:
    + &lt;fork&gt; element of the junitlauncher task now has a new
    optional "java" attribute which can be used to point to a
    different Java installation for runnning the forked tests.
    + made sure &lt;echoproperties&gt; sorts the echoed properties on
    JDK9+ as well.
    + org.apache.tools.ant.taskdefs.Recorder class now introduces a
    setLogLevel(LogLevel level) method.
    + The &lt;fork&gt; element of junitlaunchertask now allows a
    "forkMode" attribute. forkMode=perTestClass can now be used to
    launch each test class in a separate forked JVM.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1694433600">- Added patch:
  * reproducible-propertyfile-task.patch
    + Debian patch to improve propertyfile task in RPM builds by
    using the date specified by the SOURCE_DATE_EPOCH variable
    in the header of the .properties file generated</changelog>
  <changelog author="Anton Shvetz &lt;shvetz.anton@gmail.com&gt;" date="1706270400">- Add forgotten univocity-parsers to
  %{_sysconfdir}/ant.d/junitlauncher (needed to run unit tests
  annotated with @CsvSource and @CsvFileSource)</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1708430400">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1714219200">- Put hamcrest on the classpath of ant-junit module</changelog>
  <changelog author="Anton Shvetz &lt;shvetz.anton@gmail.com&gt;" date="1714824000">- Add forgotten open-test-reporting/events to
  %{_sysconfdir}/ant.d/junitlauncher</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1721304000">- Added patches:
  * reproducible-jar-mtime.patch
    + make the modification times of files in a jar file
    reproducible
  * reproducible-javadoc.patch
    + make javadoc generation reproducible: don't generate
    timestamps, and normalize locale and encoding</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1723550400">- Modified patches:
  * reproducible-jar-mtime.patch
    + attempt more normalization of mtimes in jar files
  * reproducible-javadoc.patch
    + fix the patch to work with custom doclets too</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1726574400">- Modified patch:
  * reproducible-jar-mtime.patch
    + try different approach to get bit-reproducible builds</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1727611200">- Fix build after removal of the default %%{java_home} define</changelog>
  <changelog author="Gus Kenion &lt;gus.kenion@suse.com&gt;" date="1730721600">- Upgrade to version 1.10.15
  * Bug fixes:
    + Fixes an regression, introduced in Ant 1.10.13, where
    pathconvert would unintentionally trim the string output.
    Bugzilla Report 67082
    + Fixes a bug in &lt;depend&gt; task which would throw a
    ClassFormatError if it encountered constant pool entry type
    17.  Bugzilla Report 66552
    + Launching ant.bat from within a Java program using
    java.lang.Runtime.exec() could result in an unexpected
    failure. This has now been fixed.  Bugzilla Report 67417
    + Fixes an issue in bootstrap.bat when trying to detect if the
    "javac" command in the JDK supports the "--release" option.
    Github Pull Request #205
    + Fixes a bug in
    org.apache.tools.ant.taskdefs.email.EmailAddress which would
    throw a java.lang.StringIndexOutOfBoundsException if the
    email address passed to its constructor was an empty String.
    Bugzilla Report 68462
    + legacy-xml reporter of junitlauncher task was using a
    non-buffered outputstream when generating the report. This
    introduces severe performance penalties since the writes
    translate to native write system calls. This has been fixed
    to use a BufferedOutputStream.  Github Pull Request #207
  * Other changes:
    + exec task now logs the process' non-zero exit code at INFO
    level instead of the previous ERROR level. The following
    message from exec task is the one who's level has been
    changed:
    Result: 1
    Bugzilla Report 26453
    + Removes direct references to
    com.sun.net.ssl.internal.ssl.Provider class from the mail
    task, since that internal JDK class is no longer available in
    recent versions of Java.  Bugzilla Report 68460
    + &lt;replaceregexp&gt; has a new failOnError attribute which, when
    enabled, makes the task throw a BuildException for certain
    error cases that will only be logged otherwise.  Github Pull
    Request #206
    + &lt;ftp&gt; task now has a new "useSecureDataChannel" attribute
    which can be set to true, when ftps is enabled, to enable
    secure data channel.  Bugzilla Report 68773
- Unify .spec files
  * remove ant-antlr.changes
  * remove ant-antlr.spec
  * remove ant-junit.changes
  * remove ant-junit.spec
  * remove ant-junit5.changes
  * remove ant-junit5.spec</changelog>
</package>
<package pkgid="2060cfff03e7927909f4a016738b9186ce76f61d4cc6f3e364597c0c2bbaf51f7c3f7192ce58bafeda24f7120d4416efd3b3a4afe55a07dd324bfade6bdeb9fb" name="ant-apache-regexp" arch="noarch">
  <version epoch="0" ver="1.10.15" rel="1.1"/>
  <changelog author="Pedro Monreal &lt;pmonreal@suse.com&gt;" date="1622721600">- Update to 1.10.10
  * SCP (with sftp=true) task would fail if fetching file located
    in root directory.
  * Fixed: javac task would fail if the arguments file it
    (internally) created didn't quote the # character.
  * Make sure LegacyXmlResultFormatter encodes characters illegal
    in XML the same way JUnit5's built-in formatter would.
  * LegacyXmlResultFormatter no longer double-encodes &lt;&gt;&amp; in
    system-err and system-out.
  * Fixes a bug in junitlauncher task's legacy-xml formatter,
    where the testcase representing a @Parameterized JUnit4 test
    wasn't being reported in the XML.
  * Fixes a bug where the ant-testutil-sources.jar that gets
    published to Maven central repository didn't contain any
    source files.
  * The &lt;http&gt; condition didn't follow redirects from http to https.
  * ZipOutputStream now overrides write(int) in order to make sure
    single byte writes get the same treatment as array writes.
  * Fixes a potential deadlock in junitlauncher task when using
    legacy-xml reporter.
  * javaversion condition now has a new "atmost" attribute. See
    the javaversion manual for more details
  * The "listener" nested element of the "junitlauncher" task now
    has a new "useLegacyReportingName" attribute which can be used
    to control the test identifiers names that get reported by the
    listener. See the junitlauncher manual for more details. Note that
    this change also introduces a new "setUseLegacyReportingName" method
    on the org.apache.tools.ant.taskdefs.optional.junitlauncher.TestResultFormatter
    interface. This will break backward compatibility with any of your custom
    result formatters which implemented this interface and such implementations
    are now expected to implement this new method.
  * A new attribute preserveduplicates allows &lt;resourcelist&gt; to
    return the same resource multiple times when set to true.
  * A new attribute filterbeforeconcat in &lt;concat&gt; can be used to
    decide whether the filterchain should be applied to the
    concatenated content (the default) or each nested resource
    individually before concatenating them.
  * The ssh tasks now share a new nested element additionalConfig that can
    be used to set config values for the jsch Session used by the task.
  * Added new discardOutput and discardError properties to redirector
    and the exec, apply and java tasks which can be used to completely
    discard any (error) output. This is a platform independent
    alternative to directiong output to any kind of null device.
  * junitlauncher now prints a more useful and instantaneous summary of
    tests being run, closely matching the junit task's summary.</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1639569600">- Update to 1.10.12:
  * The update includes fixes for the following CVEs:
  CVE-2021-36374, bsc#1188469
    Excessive memory allocation when reading a specially
    crafted ZIP archive or a derived formats.
  CVE-2021-36373, bsc#1188468
    Excessive memory allocation when reading a specially
    crafted TAR archive.
  * The http condition would follow redirects even when "followRedirects" attribute
  was set to "false". This has now been fixed. Bugzilla Report 65489
  * Made sure setting build.compiler to the fully qualified classname
  that corresponds to extJavac or modern has the same effect as using
  the shorter alias names. Bugzilla Report 65539
  * Prevent potential deadlocks in org.apache.tools.ant.IntrospectionHelper.
  Bugzilla Report 65424
  * The implementation of AntClassLoader#findResources() has been changed to optimize
  it for potential performance issues, as those noted at https://issues.jenkins.io/browse/JENKINS-22310?focusedCommentId=197405&amp;page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-197405
  Github Pull Request #151
  * AntClassLoader now implements the ClassLoader#findResource(String) method.
  Github Pull Request #150
  * Ant tries to avoid file name canonicalization when possible.
  Bugzilla Report 65499
  * javadoc task will now look for warning messages in the STDERR stream too
  when "failonwarning" is set to true to account for changes in JDK 17+
  * The tar task now preserves symlinks of nested tarfilesets.
  Github Pull Request #142
- Changes from 1.10.11:
  * a race condition could lead to NullPointerExceptions when running
  tasks in parallel.
  Bugzilla Report 65316
  * fixed potential OutOfMemory errors when reading broken archives
  using the tar or zip formats or formats derived from zip.
  * org.apache.tools.ant.taskdefs.optional.junitlauncher.confined.JUnitLauncherTask now
  has a new protected createExecuteWatchdog() method for allowing it to be overriden.
  Github Pull Request #147
  * Upgraded AntUnit to 1.4.1.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1645531200">- Do not build against the log4j12 packages, use the new reload4j</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1652097600">- Disable a test failing to compile with junit5 5.8.x</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1674043200">- Update ant keyring with new developer keys.
- Update to 1.10.13:
  * Breaking changes:
  - &lt;get&gt; has a new attribute authenticateOnRedirect that can be
    used to prevent Ant from sending the configured credentials
    when following a redirect. It is false by default, which means
    builds that rely on credentials being used on the redirected
    URI may break.
  * Fixed bugs:
  - the PropertyEnumerator change introduced in 1.10.9 proved to
    be not fully backwards compatible when combined with certain
    custom PropertyHelper implementations - for example when using
    AntXtras.
  - legacy-xml reporter of the junitlauncher task now escapes ]]&gt;
    when writing CDATA.
  - &lt;scp&gt; may leak connections when trying to preserve the last
    modified timestamps of files transferred recursively from a
    server.
  - tstamp task would in certain cases parse the SOURCE_DATE_EPOCH
    environment variable value to an incorrect date. This has now
    been fixed.
  - fetch.xml didn't set up non-default repositories propery and
    thus failed to download JAI.
  - When building and installing Ant distribution from source, the
    build script would change permissions on unrelated files in
    the destination directory. This is now fixed and such
    unrelated files in the destination directory will be left
    untouched.
  - parsing tar entries with multiple NUL bytes in their name
    would include garbage bytes as the name included all bytes up
    to the last NUL rather than the first.
  - loadresource might log warnings even though quiet was set to
    true
  - javac task would add paths constructs containing wildcards to
    the internally created argument file where wildcards are not
    allowed
  * Other changes:
  - added an implementation of the MIME Mail sender based on the
    repackaged Jakarta Mail package rather than javax Mail.
  - The "listener" element in the junitlauncher task now supports
    an "extension" attribute to control the filename extension
    of the generated output file from the listener.
  - &lt;ftp&gt; now supports FTPs.
  - DirectoryScanner avoids listing directory contents when it
    known it will never use the information retrieved. This may
    improve performance in some special cases.
  - &lt;manifest&gt; will now create the parent directory of the
    manifestFile attribute if it doesn't exist.
  - org.apache.tools.ant.BuildLogger now has a new method
    getMessageOutputLevel() which returns the currently set
    message output level.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1674734400">- Package and distribute the new ant-jakartamail</changelog>
  <changelog author="Frederic Crozat &lt;fcrozat@suse.com&gt;" date="1683201600">- Add _multibuild to define additional spec files as additional
  flavors.
  Eliminates the need for source package links in OBS.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1693483200">- Update to 1.10.14:
  * Changes that could break older environments:
    + Resource#compareTo now invokes getName rather than toString as
    the later may be costly (for example in the case of a
    StringResource).
    + When using Java 18 or higher, Ant will no longer use Java
    SecurityManager because it has been deprecated for removal and
    by default is disallowed to be set at runtime
    https://openjdk.org/jeps/411.
    This will mean that the "&lt;permissions&gt;" type is no longer
    functional when using Java 18 or higher.
    Furthermore, when using Java 18 or higher, if the build
    executes tasks that call "java.lang.System.exit()" and if
    those tasks aren't running in a forked VM of their own, then
    such tasks will now kill the entire Ant build process. It is
    recommended that such tasks be updated to launch in a forked
    VM so that the System.exit() call will not impact the JVM in
    which Ant process runs.
  * Fixed bugs:
    + log only the stylesheet name in the xslt task.
    + junitlauncher task's "test" and "listener" elements which take
    a "outputDir" property were incorrectly resolving the
    outputDir against the current working directory instead of the
    project's basedir.
    + regexmapper would, in some cases, incorrectly consume
    backslash characters from the "to" attribute, resulting in
    missing backslashes in the output.
    + &lt;fixcrlf&gt;, &lt;replace&gt; and &lt;replaceregexp&gt; now try to preserve
    the file permissions of the files they modify.
    + junitlauncher task would fail if a forked test timed out even
    if haltOnFailure was set to false.
    + fixes a bug in org.apache.tools.zip.ZipOutputStream where,
    even when "zip64Mode" is set to "always", ZipOutputStream may
    not create a CEN extra field data for the entry.
    + legacy-xml listener of junitlauncher task wouldn't report
    certain failures involving junit jupiter dynamic tests.
    + allow.class which was introduced in Ant 1.10.13 release, has
    been removed from this 1.10.14 release. This class was
    introduced in context of the SecurityManager changes in
    Ant 1.10.13, which have now been reverted in Ant 1.10.14,
    since they caused several regressions.
  * Other changes:
    + &lt;fork&gt; element of the junitlauncher task now has a new
    optional "java" attribute which can be used to point to a
    different Java installation for runnning the forked tests.
    + made sure &lt;echoproperties&gt; sorts the echoed properties on
    JDK9+ as well.
    + org.apache.tools.ant.taskdefs.Recorder class now introduces a
    setLogLevel(LogLevel level) method.
    + The &lt;fork&gt; element of junitlaunchertask now allows a
    "forkMode" attribute. forkMode=perTestClass can now be used to
    launch each test class in a separate forked JVM.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1694433600">- Added patch:
  * reproducible-propertyfile-task.patch
    + Debian patch to improve propertyfile task in RPM builds by
    using the date specified by the SOURCE_DATE_EPOCH variable
    in the header of the .properties file generated</changelog>
  <changelog author="Anton Shvetz &lt;shvetz.anton@gmail.com&gt;" date="1706270400">- Add forgotten univocity-parsers to
  %{_sysconfdir}/ant.d/junitlauncher (needed to run unit tests
  annotated with @CsvSource and @CsvFileSource)</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1708430400">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1714219200">- Put hamcrest on the classpath of ant-junit module</changelog>
  <changelog author="Anton Shvetz &lt;shvetz.anton@gmail.com&gt;" date="1714824000">- Add forgotten open-test-reporting/events to
  %{_sysconfdir}/ant.d/junitlauncher</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1721304000">- Added patches:
  * reproducible-jar-mtime.patch
    + make the modification times of files in a jar file
    reproducible
  * reproducible-javadoc.patch
    + make javadoc generation reproducible: don't generate
    timestamps, and normalize locale and encoding</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1723550400">- Modified patches:
  * reproducible-jar-mtime.patch
    + attempt more normalization of mtimes in jar files
  * reproducible-javadoc.patch
    + fix the patch to work with custom doclets too</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1726574400">- Modified patch:
  * reproducible-jar-mtime.patch
    + try different approach to get bit-reproducible builds</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1727611200">- Fix build after removal of the default %%{java_home} define</changelog>
  <changelog author="Gus Kenion &lt;gus.kenion@suse.com&gt;" date="1730721600">- Upgrade to version 1.10.15
  * Bug fixes:
    + Fixes an regression, introduced in Ant 1.10.13, where
    pathconvert would unintentionally trim the string output.
    Bugzilla Report 67082
    + Fixes a bug in &lt;depend&gt; task which would throw a
    ClassFormatError if it encountered constant pool entry type
    17.  Bugzilla Report 66552
    + Launching ant.bat from within a Java program using
    java.lang.Runtime.exec() could result in an unexpected
    failure. This has now been fixed.  Bugzilla Report 67417
    + Fixes an issue in bootstrap.bat when trying to detect if the
    "javac" command in the JDK supports the "--release" option.
    Github Pull Request #205
    + Fixes a bug in
    org.apache.tools.ant.taskdefs.email.EmailAddress which would
    throw a java.lang.StringIndexOutOfBoundsException if the
    email address passed to its constructor was an empty String.
    Bugzilla Report 68462
    + legacy-xml reporter of junitlauncher task was using a
    non-buffered outputstream when generating the report. This
    introduces severe performance penalties since the writes
    translate to native write system calls. This has been fixed
    to use a BufferedOutputStream.  Github Pull Request #207
  * Other changes:
    + exec task now logs the process' non-zero exit code at INFO
    level instead of the previous ERROR level. The following
    message from exec task is the one who's level has been
    changed:
    Result: 1
    Bugzilla Report 26453
    + Removes direct references to
    com.sun.net.ssl.internal.ssl.Provider class from the mail
    task, since that internal JDK class is no longer available in
    recent versions of Java.  Bugzilla Report 68460
    + &lt;replaceregexp&gt; has a new failOnError attribute which, when
    enabled, makes the task throw a BuildException for certain
    error cases that will only be logged otherwise.  Github Pull
    Request #206
    + &lt;ftp&gt; task now has a new "useSecureDataChannel" attribute
    which can be set to true, when ftps is enabled, to enable
    secure data channel.  Bugzilla Report 68773
- Unify .spec files
  * remove ant-antlr.changes
  * remove ant-antlr.spec
  * remove ant-junit.changes
  * remove ant-junit.spec
  * remove ant-junit5.changes
  * remove ant-junit5.spec</changelog>
</package>
<package pkgid="6c3d41be3f18e09a33795ab0c0e8e287507e1f6c61514657d0ecab9f8bfa5444bd3056fbf7cc530112cb226a291558dc3753111dd514ce92747bd515641c1a11" name="ant-apache-resolver" arch="noarch">
  <version epoch="0" ver="1.10.15" rel="1.1"/>
  <changelog author="Pedro Monreal &lt;pmonreal@suse.com&gt;" date="1622721600">- Update to 1.10.10
  * SCP (with sftp=true) task would fail if fetching file located
    in root directory.
  * Fixed: javac task would fail if the arguments file it
    (internally) created didn't quote the # character.
  * Make sure LegacyXmlResultFormatter encodes characters illegal
    in XML the same way JUnit5's built-in formatter would.
  * LegacyXmlResultFormatter no longer double-encodes &lt;&gt;&amp; in
    system-err and system-out.
  * Fixes a bug in junitlauncher task's legacy-xml formatter,
    where the testcase representing a @Parameterized JUnit4 test
    wasn't being reported in the XML.
  * Fixes a bug where the ant-testutil-sources.jar that gets
    published to Maven central repository didn't contain any
    source files.
  * The &lt;http&gt; condition didn't follow redirects from http to https.
  * ZipOutputStream now overrides write(int) in order to make sure
    single byte writes get the same treatment as array writes.
  * Fixes a potential deadlock in junitlauncher task when using
    legacy-xml reporter.
  * javaversion condition now has a new "atmost" attribute. See
    the javaversion manual for more details
  * The "listener" nested element of the "junitlauncher" task now
    has a new "useLegacyReportingName" attribute which can be used
    to control the test identifiers names that get reported by the
    listener. See the junitlauncher manual for more details. Note that
    this change also introduces a new "setUseLegacyReportingName" method
    on the org.apache.tools.ant.taskdefs.optional.junitlauncher.TestResultFormatter
    interface. This will break backward compatibility with any of your custom
    result formatters which implemented this interface and such implementations
    are now expected to implement this new method.
  * A new attribute preserveduplicates allows &lt;resourcelist&gt; to
    return the same resource multiple times when set to true.
  * A new attribute filterbeforeconcat in &lt;concat&gt; can be used to
    decide whether the filterchain should be applied to the
    concatenated content (the default) or each nested resource
    individually before concatenating them.
  * The ssh tasks now share a new nested element additionalConfig that can
    be used to set config values for the jsch Session used by the task.
  * Added new discardOutput and discardError properties to redirector
    and the exec, apply and java tasks which can be used to completely
    discard any (error) output. This is a platform independent
    alternative to directiong output to any kind of null device.
  * junitlauncher now prints a more useful and instantaneous summary of
    tests being run, closely matching the junit task's summary.</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1639569600">- Update to 1.10.12:
  * The update includes fixes for the following CVEs:
  CVE-2021-36374, bsc#1188469
    Excessive memory allocation when reading a specially
    crafted ZIP archive or a derived formats.
  CVE-2021-36373, bsc#1188468
    Excessive memory allocation when reading a specially
    crafted TAR archive.
  * The http condition would follow redirects even when "followRedirects" attribute
  was set to "false". This has now been fixed. Bugzilla Report 65489
  * Made sure setting build.compiler to the fully qualified classname
  that corresponds to extJavac or modern has the same effect as using
  the shorter alias names. Bugzilla Report 65539
  * Prevent potential deadlocks in org.apache.tools.ant.IntrospectionHelper.
  Bugzilla Report 65424
  * The implementation of AntClassLoader#findResources() has been changed to optimize
  it for potential performance issues, as those noted at https://issues.jenkins.io/browse/JENKINS-22310?focusedCommentId=197405&amp;page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-197405
  Github Pull Request #151
  * AntClassLoader now implements the ClassLoader#findResource(String) method.
  Github Pull Request #150
  * Ant tries to avoid file name canonicalization when possible.
  Bugzilla Report 65499
  * javadoc task will now look for warning messages in the STDERR stream too
  when "failonwarning" is set to true to account for changes in JDK 17+
  * The tar task now preserves symlinks of nested tarfilesets.
  Github Pull Request #142
- Changes from 1.10.11:
  * a race condition could lead to NullPointerExceptions when running
  tasks in parallel.
  Bugzilla Report 65316
  * fixed potential OutOfMemory errors when reading broken archives
  using the tar or zip formats or formats derived from zip.
  * org.apache.tools.ant.taskdefs.optional.junitlauncher.confined.JUnitLauncherTask now
  has a new protected createExecuteWatchdog() method for allowing it to be overriden.
  Github Pull Request #147
  * Upgraded AntUnit to 1.4.1.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1645531200">- Do not build against the log4j12 packages, use the new reload4j</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1652097600">- Disable a test failing to compile with junit5 5.8.x</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1674043200">- Update ant keyring with new developer keys.
- Update to 1.10.13:
  * Breaking changes:
  - &lt;get&gt; has a new attribute authenticateOnRedirect that can be
    used to prevent Ant from sending the configured credentials
    when following a redirect. It is false by default, which means
    builds that rely on credentials being used on the redirected
    URI may break.
  * Fixed bugs:
  - the PropertyEnumerator change introduced in 1.10.9 proved to
    be not fully backwards compatible when combined with certain
    custom PropertyHelper implementations - for example when using
    AntXtras.
  - legacy-xml reporter of the junitlauncher task now escapes ]]&gt;
    when writing CDATA.
  - &lt;scp&gt; may leak connections when trying to preserve the last
    modified timestamps of files transferred recursively from a
    server.
  - tstamp task would in certain cases parse the SOURCE_DATE_EPOCH
    environment variable value to an incorrect date. This has now
    been fixed.
  - fetch.xml didn't set up non-default repositories propery and
    thus failed to download JAI.
  - When building and installing Ant distribution from source, the
    build script would change permissions on unrelated files in
    the destination directory. This is now fixed and such
    unrelated files in the destination directory will be left
    untouched.
  - parsing tar entries with multiple NUL bytes in their name
    would include garbage bytes as the name included all bytes up
    to the last NUL rather than the first.
  - loadresource might log warnings even though quiet was set to
    true
  - javac task would add paths constructs containing wildcards to
    the internally created argument file where wildcards are not
    allowed
  * Other changes:
  - added an implementation of the MIME Mail sender based on the
    repackaged Jakarta Mail package rather than javax Mail.
  - The "listener" element in the junitlauncher task now supports
    an "extension" attribute to control the filename extension
    of the generated output file from the listener.
  - &lt;ftp&gt; now supports FTPs.
  - DirectoryScanner avoids listing directory contents when it
    known it will never use the information retrieved. This may
    improve performance in some special cases.
  - &lt;manifest&gt; will now create the parent directory of the
    manifestFile attribute if it doesn't exist.
  - org.apache.tools.ant.BuildLogger now has a new method
    getMessageOutputLevel() which returns the currently set
    message output level.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1674734400">- Package and distribute the new ant-jakartamail</changelog>
  <changelog author="Frederic Crozat &lt;fcrozat@suse.com&gt;" date="1683201600">- Add _multibuild to define additional spec files as additional
  flavors.
  Eliminates the need for source package links in OBS.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1693483200">- Update to 1.10.14:
  * Changes that could break older environments:
    + Resource#compareTo now invokes getName rather than toString as
    the later may be costly (for example in the case of a
    StringResource).
    + When using Java 18 or higher, Ant will no longer use Java
    SecurityManager because it has been deprecated for removal and
    by default is disallowed to be set at runtime
    https://openjdk.org/jeps/411.
    This will mean that the "&lt;permissions&gt;" type is no longer
    functional when using Java 18 or higher.
    Furthermore, when using Java 18 or higher, if the build
    executes tasks that call "java.lang.System.exit()" and if
    those tasks aren't running in a forked VM of their own, then
    such tasks will now kill the entire Ant build process. It is
    recommended that such tasks be updated to launch in a forked
    VM so that the System.exit() call will not impact the JVM in
    which Ant process runs.
  * Fixed bugs:
    + log only the stylesheet name in the xslt task.
    + junitlauncher task's "test" and "listener" elements which take
    a "outputDir" property were incorrectly resolving the
    outputDir against the current working directory instead of the
    project's basedir.
    + regexmapper would, in some cases, incorrectly consume
    backslash characters from the "to" attribute, resulting in
    missing backslashes in the output.
    + &lt;fixcrlf&gt;, &lt;replace&gt; and &lt;replaceregexp&gt; now try to preserve
    the file permissions of the files they modify.
    + junitlauncher task would fail if a forked test timed out even
    if haltOnFailure was set to false.
    + fixes a bug in org.apache.tools.zip.ZipOutputStream where,
    even when "zip64Mode" is set to "always", ZipOutputStream may
    not create a CEN extra field data for the entry.
    + legacy-xml listener of junitlauncher task wouldn't report
    certain failures involving junit jupiter dynamic tests.
    + allow.class which was introduced in Ant 1.10.13 release, has
    been removed from this 1.10.14 release. This class was
    introduced in context of the SecurityManager changes in
    Ant 1.10.13, which have now been reverted in Ant 1.10.14,
    since they caused several regressions.
  * Other changes:
    + &lt;fork&gt; element of the junitlauncher task now has a new
    optional "java" attribute which can be used to point to a
    different Java installation for runnning the forked tests.
    + made sure &lt;echoproperties&gt; sorts the echoed properties on
    JDK9+ as well.
    + org.apache.tools.ant.taskdefs.Recorder class now introduces a
    setLogLevel(LogLevel level) method.
    + The &lt;fork&gt; element of junitlaunchertask now allows a
    "forkMode" attribute. forkMode=perTestClass can now be used to
    launch each test class in a separate forked JVM.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1694433600">- Added patch:
  * reproducible-propertyfile-task.patch
    + Debian patch to improve propertyfile task in RPM builds by
    using the date specified by the SOURCE_DATE_EPOCH variable
    in the header of the .properties file generated</changelog>
  <changelog author="Anton Shvetz &lt;shvetz.anton@gmail.com&gt;" date="1706270400">- Add forgotten univocity-parsers to
  %{_sysconfdir}/ant.d/junitlauncher (needed to run unit tests
  annotated with @CsvSource and @CsvFileSource)</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1708430400">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1714219200">- Put hamcrest on the classpath of ant-junit module</changelog>
  <changelog author="Anton Shvetz &lt;shvetz.anton@gmail.com&gt;" date="1714824000">- Add forgotten open-test-reporting/events to
  %{_sysconfdir}/ant.d/junitlauncher</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1721304000">- Added patches:
  * reproducible-jar-mtime.patch
    + make the modification times of files in a jar file
    reproducible
  * reproducible-javadoc.patch
    + make javadoc generation reproducible: don't generate
    timestamps, and normalize locale and encoding</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1723550400">- Modified patches:
  * reproducible-jar-mtime.patch
    + attempt more normalization of mtimes in jar files
  * reproducible-javadoc.patch
    + fix the patch to work with custom doclets too</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1726574400">- Modified patch:
  * reproducible-jar-mtime.patch
    + try different approach to get bit-reproducible builds</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1727611200">- Fix build after removal of the default %%{java_home} define</changelog>
  <changelog author="Gus Kenion &lt;gus.kenion@suse.com&gt;" date="1730721600">- Upgrade to version 1.10.15
  * Bug fixes:
    + Fixes an regression, introduced in Ant 1.10.13, where
    pathconvert would unintentionally trim the string output.
    Bugzilla Report 67082
    + Fixes a bug in &lt;depend&gt; task which would throw a
    ClassFormatError if it encountered constant pool entry type
    17.  Bugzilla Report 66552
    + Launching ant.bat from within a Java program using
    java.lang.Runtime.exec() could result in an unexpected
    failure. This has now been fixed.  Bugzilla Report 67417
    + Fixes an issue in bootstrap.bat when trying to detect if the
    "javac" command in the JDK supports the "--release" option.
    Github Pull Request #205
    + Fixes a bug in
    org.apache.tools.ant.taskdefs.email.EmailAddress which would
    throw a java.lang.StringIndexOutOfBoundsException if the
    email address passed to its constructor was an empty String.
    Bugzilla Report 68462
    + legacy-xml reporter of junitlauncher task was using a
    non-buffered outputstream when generating the report. This
    introduces severe performance penalties since the writes
    translate to native write system calls. This has been fixed
    to use a BufferedOutputStream.  Github Pull Request #207
  * Other changes:
    + exec task now logs the process' non-zero exit code at INFO
    level instead of the previous ERROR level. The following
    message from exec task is the one who's level has been
    changed:
    Result: 1
    Bugzilla Report 26453
    + Removes direct references to
    com.sun.net.ssl.internal.ssl.Provider class from the mail
    task, since that internal JDK class is no longer available in
    recent versions of Java.  Bugzilla Report 68460
    + &lt;replaceregexp&gt; has a new failOnError attribute which, when
    enabled, makes the task throw a BuildException for certain
    error cases that will only be logged otherwise.  Github Pull
    Request #206
    + &lt;ftp&gt; task now has a new "useSecureDataChannel" attribute
    which can be set to true, when ftps is enabled, to enable
    secure data channel.  Bugzilla Report 68773
- Unify .spec files
  * remove ant-antlr.changes
  * remove ant-antlr.spec
  * remove ant-junit.changes
  * remove ant-junit.spec
  * remove ant-junit5.changes
  * remove ant-junit5.spec</changelog>
</package>
<package pkgid="977364e6ff96b84d4eb2a9f16d5cb2376c0d0a6f0bfe5736d58644fcdd78c6627525ff2ca031d572856f183772ebe71e53d3f8b1aa47b4f9c562349fc105172d" name="ant-apache-xalan2" arch="noarch">
  <version epoch="0" ver="1.10.15" rel="1.1"/>
  <changelog author="Pedro Monreal &lt;pmonreal@suse.com&gt;" date="1622721600">- Update to 1.10.10
  * SCP (with sftp=true) task would fail if fetching file located
    in root directory.
  * Fixed: javac task would fail if the arguments file it
    (internally) created didn't quote the # character.
  * Make sure LegacyXmlResultFormatter encodes characters illegal
    in XML the same way JUnit5's built-in formatter would.
  * LegacyXmlResultFormatter no longer double-encodes &lt;&gt;&amp; in
    system-err and system-out.
  * Fixes a bug in junitlauncher task's legacy-xml formatter,
    where the testcase representing a @Parameterized JUnit4 test
    wasn't being reported in the XML.
  * Fixes a bug where the ant-testutil-sources.jar that gets
    published to Maven central repository didn't contain any
    source files.
  * The &lt;http&gt; condition didn't follow redirects from http to https.
  * ZipOutputStream now overrides write(int) in order to make sure
    single byte writes get the same treatment as array writes.
  * Fixes a potential deadlock in junitlauncher task when using
    legacy-xml reporter.
  * javaversion condition now has a new "atmost" attribute. See
    the javaversion manual for more details
  * The "listener" nested element of the "junitlauncher" task now
    has a new "useLegacyReportingName" attribute which can be used
    to control the test identifiers names that get reported by the
    listener. See the junitlauncher manual for more details. Note that
    this change also introduces a new "setUseLegacyReportingName" method
    on the org.apache.tools.ant.taskdefs.optional.junitlauncher.TestResultFormatter
    interface. This will break backward compatibility with any of your custom
    result formatters which implemented this interface and such implementations
    are now expected to implement this new method.
  * A new attribute preserveduplicates allows &lt;resourcelist&gt; to
    return the same resource multiple times when set to true.
  * A new attribute filterbeforeconcat in &lt;concat&gt; can be used to
    decide whether the filterchain should be applied to the
    concatenated content (the default) or each nested resource
    individually before concatenating them.
  * The ssh tasks now share a new nested element additionalConfig that can
    be used to set config values for the jsch Session used by the task.
  * Added new discardOutput and discardError properties to redirector
    and the exec, apply and java tasks which can be used to completely
    discard any (error) output. This is a platform independent
    alternative to directiong output to any kind of null device.
  * junitlauncher now prints a more useful and instantaneous summary of
    tests being run, closely matching the junit task's summary.</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1639569600">- Update to 1.10.12:
  * The update includes fixes for the following CVEs:
  CVE-2021-36374, bsc#1188469
    Excessive memory allocation when reading a specially
    crafted ZIP archive or a derived formats.
  CVE-2021-36373, bsc#1188468
    Excessive memory allocation when reading a specially
    crafted TAR archive.
  * The http condition would follow redirects even when "followRedirects" attribute
  was set to "false". This has now been fixed. Bugzilla Report 65489
  * Made sure setting build.compiler to the fully qualified classname
  that corresponds to extJavac or modern has the same effect as using
  the shorter alias names. Bugzilla Report 65539
  * Prevent potential deadlocks in org.apache.tools.ant.IntrospectionHelper.
  Bugzilla Report 65424
  * The implementation of AntClassLoader#findResources() has been changed to optimize
  it for potential performance issues, as those noted at https://issues.jenkins.io/browse/JENKINS-22310?focusedCommentId=197405&amp;page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-197405
  Github Pull Request #151
  * AntClassLoader now implements the ClassLoader#findResource(String) method.
  Github Pull Request #150
  * Ant tries to avoid file name canonicalization when possible.
  Bugzilla Report 65499
  * javadoc task will now look for warning messages in the STDERR stream too
  when "failonwarning" is set to true to account for changes in JDK 17+
  * The tar task now preserves symlinks of nested tarfilesets.
  Github Pull Request #142
- Changes from 1.10.11:
  * a race condition could lead to NullPointerExceptions when running
  tasks in parallel.
  Bugzilla Report 65316
  * fixed potential OutOfMemory errors when reading broken archives
  using the tar or zip formats or formats derived from zip.
  * org.apache.tools.ant.taskdefs.optional.junitlauncher.confined.JUnitLauncherTask now
  has a new protected createExecuteWatchdog() method for allowing it to be overriden.
  Github Pull Request #147
  * Upgraded AntUnit to 1.4.1.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1645531200">- Do not build against the log4j12 packages, use the new reload4j</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1652097600">- Disable a test failing to compile with junit5 5.8.x</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1674043200">- Update ant keyring with new developer keys.
- Update to 1.10.13:
  * Breaking changes:
  - &lt;get&gt; has a new attribute authenticateOnRedirect that can be
    used to prevent Ant from sending the configured credentials
    when following a redirect. It is false by default, which means
    builds that rely on credentials being used on the redirected
    URI may break.
  * Fixed bugs:
  - the PropertyEnumerator change introduced in 1.10.9 proved to
    be not fully backwards compatible when combined with certain
    custom PropertyHelper implementations - for example when using
    AntXtras.
  - legacy-xml reporter of the junitlauncher task now escapes ]]&gt;
    when writing CDATA.
  - &lt;scp&gt; may leak connections when trying to preserve the last
    modified timestamps of files transferred recursively from a
    server.
  - tstamp task would in certain cases parse the SOURCE_DATE_EPOCH
    environment variable value to an incorrect date. This has now
    been fixed.
  - fetch.xml didn't set up non-default repositories propery and
    thus failed to download JAI.
  - When building and installing Ant distribution from source, the
    build script would change permissions on unrelated files in
    the destination directory. This is now fixed and such
    unrelated files in the destination directory will be left
    untouched.
  - parsing tar entries with multiple NUL bytes in their name
    would include garbage bytes as the name included all bytes up
    to the last NUL rather than the first.
  - loadresource might log warnings even though quiet was set to
    true
  - javac task would add paths constructs containing wildcards to
    the internally created argument file where wildcards are not
    allowed
  * Other changes:
  - added an implementation of the MIME Mail sender based on the
    repackaged Jakarta Mail package rather than javax Mail.
  - The "listener" element in the junitlauncher task now supports
    an "extension" attribute to control the filename extension
    of the generated output file from the listener.
  - &lt;ftp&gt; now supports FTPs.
  - DirectoryScanner avoids listing directory contents when it
    known it will never use the information retrieved. This may
    improve performance in some special cases.
  - &lt;manifest&gt; will now create the parent directory of the
    manifestFile attribute if it doesn't exist.
  - org.apache.tools.ant.BuildLogger now has a new method
    getMessageOutputLevel() which returns the currently set
    message output level.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1674734400">- Package and distribute the new ant-jakartamail</changelog>
  <changelog author="Frederic Crozat &lt;fcrozat@suse.com&gt;" date="1683201600">- Add _multibuild to define additional spec files as additional
  flavors.
  Eliminates the need for source package links in OBS.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1693483200">- Update to 1.10.14:
  * Changes that could break older environments:
    + Resource#compareTo now invokes getName rather than toString as
    the later may be costly (for example in the case of a
    StringResource).
    + When using Java 18 or higher, Ant will no longer use Java
    SecurityManager because it has been deprecated for removal and
    by default is disallowed to be set at runtime
    https://openjdk.org/jeps/411.
    This will mean that the "&lt;permissions&gt;" type is no longer
    functional when using Java 18 or higher.
    Furthermore, when using Java 18 or higher, if the build
    executes tasks that call "java.lang.System.exit()" and if
    those tasks aren't running in a forked VM of their own, then
    such tasks will now kill the entire Ant build process. It is
    recommended that such tasks be updated to launch in a forked
    VM so that the System.exit() call will not impact the JVM in
    which Ant process runs.
  * Fixed bugs:
    + log only the stylesheet name in the xslt task.
    + junitlauncher task's "test" and "listener" elements which take
    a "outputDir" property were incorrectly resolving the
    outputDir against the current working directory instead of the
    project's basedir.
    + regexmapper would, in some cases, incorrectly consume
    backslash characters from the "to" attribute, resulting in
    missing backslashes in the output.
    + &lt;fixcrlf&gt;, &lt;replace&gt; and &lt;replaceregexp&gt; now try to preserve
    the file permissions of the files they modify.
    + junitlauncher task would fail if a forked test timed out even
    if haltOnFailure was set to false.
    + fixes a bug in org.apache.tools.zip.ZipOutputStream where,
    even when "zip64Mode" is set to "always", ZipOutputStream may
    not create a CEN extra field data for the entry.
    + legacy-xml listener of junitlauncher task wouldn't report
    certain failures involving junit jupiter dynamic tests.
    + allow.class which was introduced in Ant 1.10.13 release, has
    been removed from this 1.10.14 release. This class was
    introduced in context of the SecurityManager changes in
    Ant 1.10.13, which have now been reverted in Ant 1.10.14,
    since they caused several regressions.
  * Other changes:
    + &lt;fork&gt; element of the junitlauncher task now has a new
    optional "java" attribute which can be used to point to a
    different Java installation for runnning the forked tests.
    + made sure &lt;echoproperties&gt; sorts the echoed properties on
    JDK9+ as well.
    + org.apache.tools.ant.taskdefs.Recorder class now introduces a
    setLogLevel(LogLevel level) method.
    + The &lt;fork&gt; element of junitlaunchertask now allows a
    "forkMode" attribute. forkMode=perTestClass can now be used to
    launch each test class in a separate forked JVM.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1694433600">- Added patch:
  * reproducible-propertyfile-task.patch
    + Debian patch to improve propertyfile task in RPM builds by
    using the date specified by the SOURCE_DATE_EPOCH variable
    in the header of the .properties file generated</changelog>
  <changelog author="Anton Shvetz &lt;shvetz.anton@gmail.com&gt;" date="1706270400">- Add forgotten univocity-parsers to
  %{_sysconfdir}/ant.d/junitlauncher (needed to run unit tests
  annotated with @CsvSource and @CsvFileSource)</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1708430400">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1714219200">- Put hamcrest on the classpath of ant-junit module</changelog>
  <changelog author="Anton Shvetz &lt;shvetz.anton@gmail.com&gt;" date="1714824000">- Add forgotten open-test-reporting/events to
  %{_sysconfdir}/ant.d/junitlauncher</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1721304000">- Added patches:
  * reproducible-jar-mtime.patch
    + make the modification times of files in a jar file
    reproducible
  * reproducible-javadoc.patch
    + make javadoc generation reproducible: don't generate
    timestamps, and normalize locale and encoding</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1723550400">- Modified patches:
  * reproducible-jar-mtime.patch
    + attempt more normalization of mtimes in jar files
  * reproducible-javadoc.patch
    + fix the patch to work with custom doclets too</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1726574400">- Modified patch:
  * reproducible-jar-mtime.patch
    + try different approach to get bit-reproducible builds</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1727611200">- Fix build after removal of the default %%{java_home} define</changelog>
  <changelog author="Gus Kenion &lt;gus.kenion@suse.com&gt;" date="1730721600">- Upgrade to version 1.10.15
  * Bug fixes:
    + Fixes an regression, introduced in Ant 1.10.13, where
    pathconvert would unintentionally trim the string output.
    Bugzilla Report 67082
    + Fixes a bug in &lt;depend&gt; task which would throw a
    ClassFormatError if it encountered constant pool entry type
    17.  Bugzilla Report 66552
    + Launching ant.bat from within a Java program using
    java.lang.Runtime.exec() could result in an unexpected
    failure. This has now been fixed.  Bugzilla Report 67417
    + Fixes an issue in bootstrap.bat when trying to detect if the
    "javac" command in the JDK supports the "--release" option.
    Github Pull Request #205
    + Fixes a bug in
    org.apache.tools.ant.taskdefs.email.EmailAddress which would
    throw a java.lang.StringIndexOutOfBoundsException if the
    email address passed to its constructor was an empty String.
    Bugzilla Report 68462
    + legacy-xml reporter of junitlauncher task was using a
    non-buffered outputstream when generating the report. This
    introduces severe performance penalties since the writes
    translate to native write system calls. This has been fixed
    to use a BufferedOutputStream.  Github Pull Request #207
  * Other changes:
    + exec task now logs the process' non-zero exit code at INFO
    level instead of the previous ERROR level. The following
    message from exec task is the one who's level has been
    changed:
    Result: 1
    Bugzilla Report 26453
    + Removes direct references to
    com.sun.net.ssl.internal.ssl.Provider class from the mail
    task, since that internal JDK class is no longer available in
    recent versions of Java.  Bugzilla Report 68460
    + &lt;replaceregexp&gt; has a new failOnError attribute which, when
    enabled, makes the task throw a BuildException for certain
    error cases that will only be logged otherwise.  Github Pull
    Request #206
    + &lt;ftp&gt; task now has a new "useSecureDataChannel" attribute
    which can be set to true, when ftps is enabled, to enable
    secure data channel.  Bugzilla Report 68773
- Unify .spec files
  * remove ant-antlr.changes
  * remove ant-antlr.spec
  * remove ant-junit.changes
  * remove ant-junit.spec
  * remove ant-junit5.changes
  * remove ant-junit5.spec</changelog>
</package>
<package pkgid="f8fbf6e208ee91517b3e88fdffd86c88ae9b7b2080a90c0f4873ebae767bc627d4208adbba25baeaf59a1cc9ef978b10ff41450029e45502a3784e3a556944bb" name="ant-commons-logging" arch="noarch">
  <version epoch="0" ver="1.10.15" rel="1.1"/>
  <changelog author="Pedro Monreal &lt;pmonreal@suse.com&gt;" date="1622721600">- Update to 1.10.10
  * SCP (with sftp=true) task would fail if fetching file located
    in root directory.
  * Fixed: javac task would fail if the arguments file it
    (internally) created didn't quote the # character.
  * Make sure LegacyXmlResultFormatter encodes characters illegal
    in XML the same way JUnit5's built-in formatter would.
  * LegacyXmlResultFormatter no longer double-encodes &lt;&gt;&amp; in
    system-err and system-out.
  * Fixes a bug in junitlauncher task's legacy-xml formatter,
    where the testcase representing a @Parameterized JUnit4 test
    wasn't being reported in the XML.
  * Fixes a bug where the ant-testutil-sources.jar that gets
    published to Maven central repository didn't contain any
    source files.
  * The &lt;http&gt; condition didn't follow redirects from http to https.
  * ZipOutputStream now overrides write(int) in order to make sure
    single byte writes get the same treatment as array writes.
  * Fixes a potential deadlock in junitlauncher task when using
    legacy-xml reporter.
  * javaversion condition now has a new "atmost" attribute. See
    the javaversion manual for more details
  * The "listener" nested element of the "junitlauncher" task now
    has a new "useLegacyReportingName" attribute which can be used
    to control the test identifiers names that get reported by the
    listener. See the junitlauncher manual for more details. Note that
    this change also introduces a new "setUseLegacyReportingName" method
    on the org.apache.tools.ant.taskdefs.optional.junitlauncher.TestResultFormatter
    interface. This will break backward compatibility with any of your custom
    result formatters which implemented this interface and such implementations
    are now expected to implement this new method.
  * A new attribute preserveduplicates allows &lt;resourcelist&gt; to
    return the same resource multiple times when set to true.
  * A new attribute filterbeforeconcat in &lt;concat&gt; can be used to
    decide whether the filterchain should be applied to the
    concatenated content (the default) or each nested resource
    individually before concatenating them.
  * The ssh tasks now share a new nested element additionalConfig that can
    be used to set config values for the jsch Session used by the task.
  * Added new discardOutput and discardError properties to redirector
    and the exec, apply and java tasks which can be used to completely
    discard any (error) output. This is a platform independent
    alternative to directiong output to any kind of null device.
  * junitlauncher now prints a more useful and instantaneous summary of
    tests being run, closely matching the junit task's summary.</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1639569600">- Update to 1.10.12:
  * The update includes fixes for the following CVEs:
  CVE-2021-36374, bsc#1188469
    Excessive memory allocation when reading a specially
    crafted ZIP archive or a derived formats.
  CVE-2021-36373, bsc#1188468
    Excessive memory allocation when reading a specially
    crafted TAR archive.
  * The http condition would follow redirects even when "followRedirects" attribute
  was set to "false". This has now been fixed. Bugzilla Report 65489
  * Made sure setting build.compiler to the fully qualified classname
  that corresponds to extJavac or modern has the same effect as using
  the shorter alias names. Bugzilla Report 65539
  * Prevent potential deadlocks in org.apache.tools.ant.IntrospectionHelper.
  Bugzilla Report 65424
  * The implementation of AntClassLoader#findResources() has been changed to optimize
  it for potential performance issues, as those noted at https://issues.jenkins.io/browse/JENKINS-22310?focusedCommentId=197405&amp;page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-197405
  Github Pull Request #151
  * AntClassLoader now implements the ClassLoader#findResource(String) method.
  Github Pull Request #150
  * Ant tries to avoid file name canonicalization when possible.
  Bugzilla Report 65499
  * javadoc task will now look for warning messages in the STDERR stream too
  when "failonwarning" is set to true to account for changes in JDK 17+
  * The tar task now preserves symlinks of nested tarfilesets.
  Github Pull Request #142
- Changes from 1.10.11:
  * a race condition could lead to NullPointerExceptions when running
  tasks in parallel.
  Bugzilla Report 65316
  * fixed potential OutOfMemory errors when reading broken archives
  using the tar or zip formats or formats derived from zip.
  * org.apache.tools.ant.taskdefs.optional.junitlauncher.confined.JUnitLauncherTask now
  has a new protected createExecuteWatchdog() method for allowing it to be overriden.
  Github Pull Request #147
  * Upgraded AntUnit to 1.4.1.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1645531200">- Do not build against the log4j12 packages, use the new reload4j</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1652097600">- Disable a test failing to compile with junit5 5.8.x</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1674043200">- Update ant keyring with new developer keys.
- Update to 1.10.13:
  * Breaking changes:
  - &lt;get&gt; has a new attribute authenticateOnRedirect that can be
    used to prevent Ant from sending the configured credentials
    when following a redirect. It is false by default, which means
    builds that rely on credentials being used on the redirected
    URI may break.
  * Fixed bugs:
  - the PropertyEnumerator change introduced in 1.10.9 proved to
    be not fully backwards compatible when combined with certain
    custom PropertyHelper implementations - for example when using
    AntXtras.
  - legacy-xml reporter of the junitlauncher task now escapes ]]&gt;
    when writing CDATA.
  - &lt;scp&gt; may leak connections when trying to preserve the last
    modified timestamps of files transferred recursively from a
    server.
  - tstamp task would in certain cases parse the SOURCE_DATE_EPOCH
    environment variable value to an incorrect date. This has now
    been fixed.
  - fetch.xml didn't set up non-default repositories propery and
    thus failed to download JAI.
  - When building and installing Ant distribution from source, the
    build script would change permissions on unrelated files in
    the destination directory. This is now fixed and such
    unrelated files in the destination directory will be left
    untouched.
  - parsing tar entries with multiple NUL bytes in their name
    would include garbage bytes as the name included all bytes up
    to the last NUL rather than the first.
  - loadresource might log warnings even though quiet was set to
    true
  - javac task would add paths constructs containing wildcards to
    the internally created argument file where wildcards are not
    allowed
  * Other changes:
  - added an implementation of the MIME Mail sender based on the
    repackaged Jakarta Mail package rather than javax Mail.
  - The "listener" element in the junitlauncher task now supports
    an "extension" attribute to control the filename extension
    of the generated output file from the listener.
  - &lt;ftp&gt; now supports FTPs.
  - DirectoryScanner avoids listing directory contents when it
    known it will never use the information retrieved. This may
    improve performance in some special cases.
  - &lt;manifest&gt; will now create the parent directory of the
    manifestFile attribute if it doesn't exist.
  - org.apache.tools.ant.BuildLogger now has a new method
    getMessageOutputLevel() which returns the currently set
    message output level.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1674734400">- Package and distribute the new ant-jakartamail</changelog>
  <changelog author="Frederic Crozat &lt;fcrozat@suse.com&gt;" date="1683201600">- Add _multibuild to define additional spec files as additional
  flavors.
  Eliminates the need for source package links in OBS.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1693483200">- Update to 1.10.14:
  * Changes that could break older environments:
    + Resource#compareTo now invokes getName rather than toString as
    the later may be costly (for example in the case of a
    StringResource).
    + When using Java 18 or higher, Ant will no longer use Java
    SecurityManager because it has been deprecated for removal and
    by default is disallowed to be set at runtime
    https://openjdk.org/jeps/411.
    This will mean that the "&lt;permissions&gt;" type is no longer
    functional when using Java 18 or higher.
    Furthermore, when using Java 18 or higher, if the build
    executes tasks that call "java.lang.System.exit()" and if
    those tasks aren't running in a forked VM of their own, then
    such tasks will now kill the entire Ant build process. It is
    recommended that such tasks be updated to launch in a forked
    VM so that the System.exit() call will not impact the JVM in
    which Ant process runs.
  * Fixed bugs:
    + log only the stylesheet name in the xslt task.
    + junitlauncher task's "test" and "listener" elements which take
    a "outputDir" property were incorrectly resolving the
    outputDir against the current working directory instead of the
    project's basedir.
    + regexmapper would, in some cases, incorrectly consume
    backslash characters from the "to" attribute, resulting in
    missing backslashes in the output.
    + &lt;fixcrlf&gt;, &lt;replace&gt; and &lt;replaceregexp&gt; now try to preserve
    the file permissions of the files they modify.
    + junitlauncher task would fail if a forked test timed out even
    if haltOnFailure was set to false.
    + fixes a bug in org.apache.tools.zip.ZipOutputStream where,
    even when "zip64Mode" is set to "always", ZipOutputStream may
    not create a CEN extra field data for the entry.
    + legacy-xml listener of junitlauncher task wouldn't report
    certain failures involving junit jupiter dynamic tests.
    + allow.class which was introduced in Ant 1.10.13 release, has
    been removed from this 1.10.14 release. This class was
    introduced in context of the SecurityManager changes in
    Ant 1.10.13, which have now been reverted in Ant 1.10.14,
    since they caused several regressions.
  * Other changes:
    + &lt;fork&gt; element of the junitlauncher task now has a new
    optional "java" attribute which can be used to point to a
    different Java installation for runnning the forked tests.
    + made sure &lt;echoproperties&gt; sorts the echoed properties on
    JDK9+ as well.
    + org.apache.tools.ant.taskdefs.Recorder class now introduces a
    setLogLevel(LogLevel level) method.
    + The &lt;fork&gt; element of junitlaunchertask now allows a
    "forkMode" attribute. forkMode=perTestClass can now be used to
    launch each test class in a separate forked JVM.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1694433600">- Added patch:
  * reproducible-propertyfile-task.patch
    + Debian patch to improve propertyfile task in RPM builds by
    using the date specified by the SOURCE_DATE_EPOCH variable
    in the header of the .properties file generated</changelog>
  <changelog author="Anton Shvetz &lt;shvetz.anton@gmail.com&gt;" date="1706270400">- Add forgotten univocity-parsers to
  %{_sysconfdir}/ant.d/junitlauncher (needed to run unit tests
  annotated with @CsvSource and @CsvFileSource)</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1708430400">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1714219200">- Put hamcrest on the classpath of ant-junit module</changelog>
  <changelog author="Anton Shvetz &lt;shvetz.anton@gmail.com&gt;" date="1714824000">- Add forgotten open-test-reporting/events to
  %{_sysconfdir}/ant.d/junitlauncher</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1721304000">- Added patches:
  * reproducible-jar-mtime.patch
    + make the modification times of files in a jar file
    reproducible
  * reproducible-javadoc.patch
    + make javadoc generation reproducible: don't generate
    timestamps, and normalize locale and encoding</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1723550400">- Modified patches:
  * reproducible-jar-mtime.patch
    + attempt more normalization of mtimes in jar files
  * reproducible-javadoc.patch
    + fix the patch to work with custom doclets too</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1726574400">- Modified patch:
  * reproducible-jar-mtime.patch
    + try different approach to get bit-reproducible builds</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1727611200">- Fix build after removal of the default %%{java_home} define</changelog>
  <changelog author="Gus Kenion &lt;gus.kenion@suse.com&gt;" date="1730721600">- Upgrade to version 1.10.15
  * Bug fixes:
    + Fixes an regression, introduced in Ant 1.10.13, where
    pathconvert would unintentionally trim the string output.
    Bugzilla Report 67082
    + Fixes a bug in &lt;depend&gt; task which would throw a
    ClassFormatError if it encountered constant pool entry type
    17.  Bugzilla Report 66552
    + Launching ant.bat from within a Java program using
    java.lang.Runtime.exec() could result in an unexpected
    failure. This has now been fixed.  Bugzilla Report 67417
    + Fixes an issue in bootstrap.bat when trying to detect if the
    "javac" command in the JDK supports the "--release" option.
    Github Pull Request #205
    + Fixes a bug in
    org.apache.tools.ant.taskdefs.email.EmailAddress which would
    throw a java.lang.StringIndexOutOfBoundsException if the
    email address passed to its constructor was an empty String.
    Bugzilla Report 68462
    + legacy-xml reporter of junitlauncher task was using a
    non-buffered outputstream when generating the report. This
    introduces severe performance penalties since the writes
    translate to native write system calls. This has been fixed
    to use a BufferedOutputStream.  Github Pull Request #207
  * Other changes:
    + exec task now logs the process' non-zero exit code at INFO
    level instead of the previous ERROR level. The following
    message from exec task is the one who's level has been
    changed:
    Result: 1
    Bugzilla Report 26453
    + Removes direct references to
    com.sun.net.ssl.internal.ssl.Provider class from the mail
    task, since that internal JDK class is no longer available in
    recent versions of Java.  Bugzilla Report 68460
    + &lt;replaceregexp&gt; has a new failOnError attribute which, when
    enabled, makes the task throw a BuildException for certain
    error cases that will only be logged otherwise.  Github Pull
    Request #206
    + &lt;ftp&gt; task now has a new "useSecureDataChannel" attribute
    which can be set to true, when ftps is enabled, to enable
    secure data channel.  Bugzilla Report 68773
- Unify .spec files
  * remove ant-antlr.changes
  * remove ant-antlr.spec
  * remove ant-junit.changes
  * remove ant-junit.spec
  * remove ant-junit5.changes
  * remove ant-junit5.spec</changelog>
</package>
<package pkgid="2e9752abdbb7acd9bb70ec9f1a95bcdeeef4f0c6fe0f6293b8bfe75cd64313b0a6ed5a1213989b2e2613db6ae430fed425a760e15cf79beb2c0c487577ce2829" name="ant-commons-net" arch="noarch">
  <version epoch="0" ver="1.10.15" rel="1.1"/>
  <changelog author="Pedro Monreal &lt;pmonreal@suse.com&gt;" date="1622721600">- Update to 1.10.10
  * SCP (with sftp=true) task would fail if fetching file located
    in root directory.
  * Fixed: javac task would fail if the arguments file it
    (internally) created didn't quote the # character.
  * Make sure LegacyXmlResultFormatter encodes characters illegal
    in XML the same way JUnit5's built-in formatter would.
  * LegacyXmlResultFormatter no longer double-encodes &lt;&gt;&amp; in
    system-err and system-out.
  * Fixes a bug in junitlauncher task's legacy-xml formatter,
    where the testcase representing a @Parameterized JUnit4 test
    wasn't being reported in the XML.
  * Fixes a bug where the ant-testutil-sources.jar that gets
    published to Maven central repository didn't contain any
    source files.
  * The &lt;http&gt; condition didn't follow redirects from http to https.
  * ZipOutputStream now overrides write(int) in order to make sure
    single byte writes get the same treatment as array writes.
  * Fixes a potential deadlock in junitlauncher task when using
    legacy-xml reporter.
  * javaversion condition now has a new "atmost" attribute. See
    the javaversion manual for more details
  * The "listener" nested element of the "junitlauncher" task now
    has a new "useLegacyReportingName" attribute which can be used
    to control the test identifiers names that get reported by the
    listener. See the junitlauncher manual for more details. Note that
    this change also introduces a new "setUseLegacyReportingName" method
    on the org.apache.tools.ant.taskdefs.optional.junitlauncher.TestResultFormatter
    interface. This will break backward compatibility with any of your custom
    result formatters which implemented this interface and such implementations
    are now expected to implement this new method.
  * A new attribute preserveduplicates allows &lt;resourcelist&gt; to
    return the same resource multiple times when set to true.
  * A new attribute filterbeforeconcat in &lt;concat&gt; can be used to
    decide whether the filterchain should be applied to the
    concatenated content (the default) or each nested resource
    individually before concatenating them.
  * The ssh tasks now share a new nested element additionalConfig that can
    be used to set config values for the jsch Session used by the task.
  * Added new discardOutput and discardError properties to redirector
    and the exec, apply and java tasks which can be used to completely
    discard any (error) output. This is a platform independent
    alternative to directiong output to any kind of null device.
  * junitlauncher now prints a more useful and instantaneous summary of
    tests being run, closely matching the junit task's summary.</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1639569600">- Update to 1.10.12:
  * The update includes fixes for the following CVEs:
  CVE-2021-36374, bsc#1188469
    Excessive memory allocation when reading a specially
    crafted ZIP archive or a derived formats.
  CVE-2021-36373, bsc#1188468
    Excessive memory allocation when reading a specially
    crafted TAR archive.
  * The http condition would follow redirects even when "followRedirects" attribute
  was set to "false". This has now been fixed. Bugzilla Report 65489
  * Made sure setting build.compiler to the fully qualified classname
  that corresponds to extJavac or modern has the same effect as using
  the shorter alias names. Bugzilla Report 65539
  * Prevent potential deadlocks in org.apache.tools.ant.IntrospectionHelper.
  Bugzilla Report 65424
  * The implementation of AntClassLoader#findResources() has been changed to optimize
  it for potential performance issues, as those noted at https://issues.jenkins.io/browse/JENKINS-22310?focusedCommentId=197405&amp;page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-197405
  Github Pull Request #151
  * AntClassLoader now implements the ClassLoader#findResource(String) method.
  Github Pull Request #150
  * Ant tries to avoid file name canonicalization when possible.
  Bugzilla Report 65499
  * javadoc task will now look for warning messages in the STDERR stream too
  when "failonwarning" is set to true to account for changes in JDK 17+
  * The tar task now preserves symlinks of nested tarfilesets.
  Github Pull Request #142
- Changes from 1.10.11:
  * a race condition could lead to NullPointerExceptions when running
  tasks in parallel.
  Bugzilla Report 65316
  * fixed potential OutOfMemory errors when reading broken archives
  using the tar or zip formats or formats derived from zip.
  * org.apache.tools.ant.taskdefs.optional.junitlauncher.confined.JUnitLauncherTask now
  has a new protected createExecuteWatchdog() method for allowing it to be overriden.
  Github Pull Request #147
  * Upgraded AntUnit to 1.4.1.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1645531200">- Do not build against the log4j12 packages, use the new reload4j</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1652097600">- Disable a test failing to compile with junit5 5.8.x</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1674043200">- Update ant keyring with new developer keys.
- Update to 1.10.13:
  * Breaking changes:
  - &lt;get&gt; has a new attribute authenticateOnRedirect that can be
    used to prevent Ant from sending the configured credentials
    when following a redirect. It is false by default, which means
    builds that rely on credentials being used on the redirected
    URI may break.
  * Fixed bugs:
  - the PropertyEnumerator change introduced in 1.10.9 proved to
    be not fully backwards compatible when combined with certain
    custom PropertyHelper implementations - for example when using
    AntXtras.
  - legacy-xml reporter of the junitlauncher task now escapes ]]&gt;
    when writing CDATA.
  - &lt;scp&gt; may leak connections when trying to preserve the last
    modified timestamps of files transferred recursively from a
    server.
  - tstamp task would in certain cases parse the SOURCE_DATE_EPOCH
    environment variable value to an incorrect date. This has now
    been fixed.
  - fetch.xml didn't set up non-default repositories propery and
    thus failed to download JAI.
  - When building and installing Ant distribution from source, the
    build script would change permissions on unrelated files in
    the destination directory. This is now fixed and such
    unrelated files in the destination directory will be left
    untouched.
  - parsing tar entries with multiple NUL bytes in their name
    would include garbage bytes as the name included all bytes up
    to the last NUL rather than the first.
  - loadresource might log warnings even though quiet was set to
    true
  - javac task would add paths constructs containing wildcards to
    the internally created argument file where wildcards are not
    allowed
  * Other changes:
  - added an implementation of the MIME Mail sender based on the
    repackaged Jakarta Mail package rather than javax Mail.
  - The "listener" element in the junitlauncher task now supports
    an "extension" attribute to control the filename extension
    of the generated output file from the listener.
  - &lt;ftp&gt; now supports FTPs.
  - DirectoryScanner avoids listing directory contents when it
    known it will never use the information retrieved. This may
    improve performance in some special cases.
  - &lt;manifest&gt; will now create the parent directory of the
    manifestFile attribute if it doesn't exist.
  - org.apache.tools.ant.BuildLogger now has a new method
    getMessageOutputLevel() which returns the currently set
    message output level.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1674734400">- Package and distribute the new ant-jakartamail</changelog>
  <changelog author="Frederic Crozat &lt;fcrozat@suse.com&gt;" date="1683201600">- Add _multibuild to define additional spec files as additional
  flavors.
  Eliminates the need for source package links in OBS.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1693483200">- Update to 1.10.14:
  * Changes that could break older environments:
    + Resource#compareTo now invokes getName rather than toString as
    the later may be costly (for example in the case of a
    StringResource).
    + When using Java 18 or higher, Ant will no longer use Java
    SecurityManager because it has been deprecated for removal and
    by default is disallowed to be set at runtime
    https://openjdk.org/jeps/411.
    This will mean that the "&lt;permissions&gt;" type is no longer
    functional when using Java 18 or higher.
    Furthermore, when using Java 18 or higher, if the build
    executes tasks that call "java.lang.System.exit()" and if
    those tasks aren't running in a forked VM of their own, then
    such tasks will now kill the entire Ant build process. It is
    recommended that such tasks be updated to launch in a forked
    VM so that the System.exit() call will not impact the JVM in
    which Ant process runs.
  * Fixed bugs:
    + log only the stylesheet name in the xslt task.
    + junitlauncher task's "test" and "listener" elements which take
    a "outputDir" property were incorrectly resolving the
    outputDir against the current working directory instead of the
    project's basedir.
    + regexmapper would, in some cases, incorrectly consume
    backslash characters from the "to" attribute, resulting in
    missing backslashes in the output.
    + &lt;fixcrlf&gt;, &lt;replace&gt; and &lt;replaceregexp&gt; now try to preserve
    the file permissions of the files they modify.
    + junitlauncher task would fail if a forked test timed out even
    if haltOnFailure was set to false.
    + fixes a bug in org.apache.tools.zip.ZipOutputStream where,
    even when "zip64Mode" is set to "always", ZipOutputStream may
    not create a CEN extra field data for the entry.
    + legacy-xml listener of junitlauncher task wouldn't report
    certain failures involving junit jupiter dynamic tests.
    + allow.class which was introduced in Ant 1.10.13 release, has
    been removed from this 1.10.14 release. This class was
    introduced in context of the SecurityManager changes in
    Ant 1.10.13, which have now been reverted in Ant 1.10.14,
    since they caused several regressions.
  * Other changes:
    + &lt;fork&gt; element of the junitlauncher task now has a new
    optional "java" attribute which can be used to point to a
    different Java installation for runnning the forked tests.
    + made sure &lt;echoproperties&gt; sorts the echoed properties on
    JDK9+ as well.
    + org.apache.tools.ant.taskdefs.Recorder class now introduces a
    setLogLevel(LogLevel level) method.
    + The &lt;fork&gt; element of junitlaunchertask now allows a
    "forkMode" attribute. forkMode=perTestClass can now be used to
    launch each test class in a separate forked JVM.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1694433600">- Added patch:
  * reproducible-propertyfile-task.patch
    + Debian patch to improve propertyfile task in RPM builds by
    using the date specified by the SOURCE_DATE_EPOCH variable
    in the header of the .properties file generated</changelog>
  <changelog author="Anton Shvetz &lt;shvetz.anton@gmail.com&gt;" date="1706270400">- Add forgotten univocity-parsers to
  %{_sysconfdir}/ant.d/junitlauncher (needed to run unit tests
  annotated with @CsvSource and @CsvFileSource)</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1708430400">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1714219200">- Put hamcrest on the classpath of ant-junit module</changelog>
  <changelog author="Anton Shvetz &lt;shvetz.anton@gmail.com&gt;" date="1714824000">- Add forgotten open-test-reporting/events to
  %{_sysconfdir}/ant.d/junitlauncher</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1721304000">- Added patches:
  * reproducible-jar-mtime.patch
    + make the modification times of files in a jar file
    reproducible
  * reproducible-javadoc.patch
    + make javadoc generation reproducible: don't generate
    timestamps, and normalize locale and encoding</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1723550400">- Modified patches:
  * reproducible-jar-mtime.patch
    + attempt more normalization of mtimes in jar files
  * reproducible-javadoc.patch
    + fix the patch to work with custom doclets too</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1726574400">- Modified patch:
  * reproducible-jar-mtime.patch
    + try different approach to get bit-reproducible builds</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1727611200">- Fix build after removal of the default %%{java_home} define</changelog>
  <changelog author="Gus Kenion &lt;gus.kenion@suse.com&gt;" date="1730721600">- Upgrade to version 1.10.15
  * Bug fixes:
    + Fixes an regression, introduced in Ant 1.10.13, where
    pathconvert would unintentionally trim the string output.
    Bugzilla Report 67082
    + Fixes a bug in &lt;depend&gt; task which would throw a
    ClassFormatError if it encountered constant pool entry type
    17.  Bugzilla Report 66552
    + Launching ant.bat from within a Java program using
    java.lang.Runtime.exec() could result in an unexpected
    failure. This has now been fixed.  Bugzilla Report 67417
    + Fixes an issue in bootstrap.bat when trying to detect if the
    "javac" command in the JDK supports the "--release" option.
    Github Pull Request #205
    + Fixes a bug in
    org.apache.tools.ant.taskdefs.email.EmailAddress which would
    throw a java.lang.StringIndexOutOfBoundsException if the
    email address passed to its constructor was an empty String.
    Bugzilla Report 68462
    + legacy-xml reporter of junitlauncher task was using a
    non-buffered outputstream when generating the report. This
    introduces severe performance penalties since the writes
    translate to native write system calls. This has been fixed
    to use a BufferedOutputStream.  Github Pull Request #207
  * Other changes:
    + exec task now logs the process' non-zero exit code at INFO
    level instead of the previous ERROR level. The following
    message from exec task is the one who's level has been
    changed:
    Result: 1
    Bugzilla Report 26453
    + Removes direct references to
    com.sun.net.ssl.internal.ssl.Provider class from the mail
    task, since that internal JDK class is no longer available in
    recent versions of Java.  Bugzilla Report 68460
    + &lt;replaceregexp&gt; has a new failOnError attribute which, when
    enabled, makes the task throw a BuildException for certain
    error cases that will only be logged otherwise.  Github Pull
    Request #206
    + &lt;ftp&gt; task now has a new "useSecureDataChannel" attribute
    which can be set to true, when ftps is enabled, to enable
    secure data channel.  Bugzilla Report 68773
- Unify .spec files
  * remove ant-antlr.changes
  * remove ant-antlr.spec
  * remove ant-junit.changes
  * remove ant-junit.spec
  * remove ant-junit5.changes
  * remove ant-junit5.spec</changelog>
</package>
<package pkgid="04fb87250babdda9211d3d36160abec282bf3b802b3e8ee0568c8fe38e2e9a8201d79c3900a637eb8ae37603852c5f485f01866c41962b26947decfbd617c1c6" name="ant-imageio" arch="noarch">
  <version epoch="0" ver="1.10.15" rel="1.1"/>
  <changelog author="Pedro Monreal &lt;pmonreal@suse.com&gt;" date="1622721600">- Update to 1.10.10
  * SCP (with sftp=true) task would fail if fetching file located
    in root directory.
  * Fixed: javac task would fail if the arguments file it
    (internally) created didn't quote the # character.
  * Make sure LegacyXmlResultFormatter encodes characters illegal
    in XML the same way JUnit5's built-in formatter would.
  * LegacyXmlResultFormatter no longer double-encodes &lt;&gt;&amp; in
    system-err and system-out.
  * Fixes a bug in junitlauncher task's legacy-xml formatter,
    where the testcase representing a @Parameterized JUnit4 test
    wasn't being reported in the XML.
  * Fixes a bug where the ant-testutil-sources.jar that gets
    published to Maven central repository didn't contain any
    source files.
  * The &lt;http&gt; condition didn't follow redirects from http to https.
  * ZipOutputStream now overrides write(int) in order to make sure
    single byte writes get the same treatment as array writes.
  * Fixes a potential deadlock in junitlauncher task when using
    legacy-xml reporter.
  * javaversion condition now has a new "atmost" attribute. See
    the javaversion manual for more details
  * The "listener" nested element of the "junitlauncher" task now
    has a new "useLegacyReportingName" attribute which can be used
    to control the test identifiers names that get reported by the
    listener. See the junitlauncher manual for more details. Note that
    this change also introduces a new "setUseLegacyReportingName" method
    on the org.apache.tools.ant.taskdefs.optional.junitlauncher.TestResultFormatter
    interface. This will break backward compatibility with any of your custom
    result formatters which implemented this interface and such implementations
    are now expected to implement this new method.
  * A new attribute preserveduplicates allows &lt;resourcelist&gt; to
    return the same resource multiple times when set to true.
  * A new attribute filterbeforeconcat in &lt;concat&gt; can be used to
    decide whether the filterchain should be applied to the
    concatenated content (the default) or each nested resource
    individually before concatenating them.
  * The ssh tasks now share a new nested element additionalConfig that can
    be used to set config values for the jsch Session used by the task.
  * Added new discardOutput and discardError properties to redirector
    and the exec, apply and java tasks which can be used to completely
    discard any (error) output. This is a platform independent
    alternative to directiong output to any kind of null device.
  * junitlauncher now prints a more useful and instantaneous summary of
    tests being run, closely matching the junit task's summary.</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1639569600">- Update to 1.10.12:
  * The update includes fixes for the following CVEs:
  CVE-2021-36374, bsc#1188469
    Excessive memory allocation when reading a specially
    crafted ZIP archive or a derived formats.
  CVE-2021-36373, bsc#1188468
    Excessive memory allocation when reading a specially
    crafted TAR archive.
  * The http condition would follow redirects even when "followRedirects" attribute
  was set to "false". This has now been fixed. Bugzilla Report 65489
  * Made sure setting build.compiler to the fully qualified classname
  that corresponds to extJavac or modern has the same effect as using
  the shorter alias names. Bugzilla Report 65539
  * Prevent potential deadlocks in org.apache.tools.ant.IntrospectionHelper.
  Bugzilla Report 65424
  * The implementation of AntClassLoader#findResources() has been changed to optimize
  it for potential performance issues, as those noted at https://issues.jenkins.io/browse/JENKINS-22310?focusedCommentId=197405&amp;page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-197405
  Github Pull Request #151
  * AntClassLoader now implements the ClassLoader#findResource(String) method.
  Github Pull Request #150
  * Ant tries to avoid file name canonicalization when possible.
  Bugzilla Report 65499
  * javadoc task will now look for warning messages in the STDERR stream too
  when "failonwarning" is set to true to account for changes in JDK 17+
  * The tar task now preserves symlinks of nested tarfilesets.
  Github Pull Request #142
- Changes from 1.10.11:
  * a race condition could lead to NullPointerExceptions when running
  tasks in parallel.
  Bugzilla Report 65316
  * fixed potential OutOfMemory errors when reading broken archives
  using the tar or zip formats or formats derived from zip.
  * org.apache.tools.ant.taskdefs.optional.junitlauncher.confined.JUnitLauncherTask now
  has a new protected createExecuteWatchdog() method for allowing it to be overriden.
  Github Pull Request #147
  * Upgraded AntUnit to 1.4.1.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1645531200">- Do not build against the log4j12 packages, use the new reload4j</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1652097600">- Disable a test failing to compile with junit5 5.8.x</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1674043200">- Update ant keyring with new developer keys.
- Update to 1.10.13:
  * Breaking changes:
  - &lt;get&gt; has a new attribute authenticateOnRedirect that can be
    used to prevent Ant from sending the configured credentials
    when following a redirect. It is false by default, which means
    builds that rely on credentials being used on the redirected
    URI may break.
  * Fixed bugs:
  - the PropertyEnumerator change introduced in 1.10.9 proved to
    be not fully backwards compatible when combined with certain
    custom PropertyHelper implementations - for example when using
    AntXtras.
  - legacy-xml reporter of the junitlauncher task now escapes ]]&gt;
    when writing CDATA.
  - &lt;scp&gt; may leak connections when trying to preserve the last
    modified timestamps of files transferred recursively from a
    server.
  - tstamp task would in certain cases parse the SOURCE_DATE_EPOCH
    environment variable value to an incorrect date. This has now
    been fixed.
  - fetch.xml didn't set up non-default repositories propery and
    thus failed to download JAI.
  - When building and installing Ant distribution from source, the
    build script would change permissions on unrelated files in
    the destination directory. This is now fixed and such
    unrelated files in the destination directory will be left
    untouched.
  - parsing tar entries with multiple NUL bytes in their name
    would include garbage bytes as the name included all bytes up
    to the last NUL rather than the first.
  - loadresource might log warnings even though quiet was set to
    true
  - javac task would add paths constructs containing wildcards to
    the internally created argument file where wildcards are not
    allowed
  * Other changes:
  - added an implementation of the MIME Mail sender based on the
    repackaged Jakarta Mail package rather than javax Mail.
  - The "listener" element in the junitlauncher task now supports
    an "extension" attribute to control the filename extension
    of the generated output file from the listener.
  - &lt;ftp&gt; now supports FTPs.
  - DirectoryScanner avoids listing directory contents when it
    known it will never use the information retrieved. This may
    improve performance in some special cases.
  - &lt;manifest&gt; will now create the parent directory of the
    manifestFile attribute if it doesn't exist.
  - org.apache.tools.ant.BuildLogger now has a new method
    getMessageOutputLevel() which returns the currently set
    message output level.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1674734400">- Package and distribute the new ant-jakartamail</changelog>
  <changelog author="Frederic Crozat &lt;fcrozat@suse.com&gt;" date="1683201600">- Add _multibuild to define additional spec files as additional
  flavors.
  Eliminates the need for source package links in OBS.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1693483200">- Update to 1.10.14:
  * Changes that could break older environments:
    + Resource#compareTo now invokes getName rather than toString as
    the later may be costly (for example in the case of a
    StringResource).
    + When using Java 18 or higher, Ant will no longer use Java
    SecurityManager because it has been deprecated for removal and
    by default is disallowed to be set at runtime
    https://openjdk.org/jeps/411.
    This will mean that the "&lt;permissions&gt;" type is no longer
    functional when using Java 18 or higher.
    Furthermore, when using Java 18 or higher, if the build
    executes tasks that call "java.lang.System.exit()" and if
    those tasks aren't running in a forked VM of their own, then
    such tasks will now kill the entire Ant build process. It is
    recommended that such tasks be updated to launch in a forked
    VM so that the System.exit() call will not impact the JVM in
    which Ant process runs.
  * Fixed bugs:
    + log only the stylesheet name in the xslt task.
    + junitlauncher task's "test" and "listener" elements which take
    a "outputDir" property were incorrectly resolving the
    outputDir against the current working directory instead of the
    project's basedir.
    + regexmapper would, in some cases, incorrectly consume
    backslash characters from the "to" attribute, resulting in
    missing backslashes in the output.
    + &lt;fixcrlf&gt;, &lt;replace&gt; and &lt;replaceregexp&gt; now try to preserve
    the file permissions of the files they modify.
    + junitlauncher task would fail if a forked test timed out even
    if haltOnFailure was set to false.
    + fixes a bug in org.apache.tools.zip.ZipOutputStream where,
    even when "zip64Mode" is set to "always", ZipOutputStream may
    not create a CEN extra field data for the entry.
    + legacy-xml listener of junitlauncher task wouldn't report
    certain failures involving junit jupiter dynamic tests.
    + allow.class which was introduced in Ant 1.10.13 release, has
    been removed from this 1.10.14 release. This class was
    introduced in context of the SecurityManager changes in
    Ant 1.10.13, which have now been reverted in Ant 1.10.14,
    since they caused several regressions.
  * Other changes:
    + &lt;fork&gt; element of the junitlauncher task now has a new
    optional "java" attribute which can be used to point to a
    different Java installation for runnning the forked tests.
    + made sure &lt;echoproperties&gt; sorts the echoed properties on
    JDK9+ as well.
    + org.apache.tools.ant.taskdefs.Recorder class now introduces a
    setLogLevel(LogLevel level) method.
    + The &lt;fork&gt; element of junitlaunchertask now allows a
    "forkMode" attribute. forkMode=perTestClass can now be used to
    launch each test class in a separate forked JVM.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1694433600">- Added patch:
  * reproducible-propertyfile-task.patch
    + Debian patch to improve propertyfile task in RPM builds by
    using the date specified by the SOURCE_DATE_EPOCH variable
    in the header of the .properties file generated</changelog>
  <changelog author="Anton Shvetz &lt;shvetz.anton@gmail.com&gt;" date="1706270400">- Add forgotten univocity-parsers to
  %{_sysconfdir}/ant.d/junitlauncher (needed to run unit tests
  annotated with @CsvSource and @CsvFileSource)</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1708430400">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1714219200">- Put hamcrest on the classpath of ant-junit module</changelog>
  <changelog author="Anton Shvetz &lt;shvetz.anton@gmail.com&gt;" date="1714824000">- Add forgotten open-test-reporting/events to
  %{_sysconfdir}/ant.d/junitlauncher</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1721304000">- Added patches:
  * reproducible-jar-mtime.patch
    + make the modification times of files in a jar file
    reproducible
  * reproducible-javadoc.patch
    + make javadoc generation reproducible: don't generate
    timestamps, and normalize locale and encoding</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1723550400">- Modified patches:
  * reproducible-jar-mtime.patch
    + attempt more normalization of mtimes in jar files
  * reproducible-javadoc.patch
    + fix the patch to work with custom doclets too</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1726574400">- Modified patch:
  * reproducible-jar-mtime.patch
    + try different approach to get bit-reproducible builds</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1727611200">- Fix build after removal of the default %%{java_home} define</changelog>
  <changelog author="Gus Kenion &lt;gus.kenion@suse.com&gt;" date="1730721600">- Upgrade to version 1.10.15
  * Bug fixes:
    + Fixes an regression, introduced in Ant 1.10.13, where
    pathconvert would unintentionally trim the string output.
    Bugzilla Report 67082
    + Fixes a bug in &lt;depend&gt; task which would throw a
    ClassFormatError if it encountered constant pool entry type
    17.  Bugzilla Report 66552
    + Launching ant.bat from within a Java program using
    java.lang.Runtime.exec() could result in an unexpected
    failure. This has now been fixed.  Bugzilla Report 67417
    + Fixes an issue in bootstrap.bat when trying to detect if the
    "javac" command in the JDK supports the "--release" option.
    Github Pull Request #205
    + Fixes a bug in
    org.apache.tools.ant.taskdefs.email.EmailAddress which would
    throw a java.lang.StringIndexOutOfBoundsException if the
    email address passed to its constructor was an empty String.
    Bugzilla Report 68462
    + legacy-xml reporter of junitlauncher task was using a
    non-buffered outputstream when generating the report. This
    introduces severe performance penalties since the writes
    translate to native write system calls. This has been fixed
    to use a BufferedOutputStream.  Github Pull Request #207
  * Other changes:
    + exec task now logs the process' non-zero exit code at INFO
    level instead of the previous ERROR level. The following
    message from exec task is the one who's level has been
    changed:
    Result: 1
    Bugzilla Report 26453
    + Removes direct references to
    com.sun.net.ssl.internal.ssl.Provider class from the mail
    task, since that internal JDK class is no longer available in
    recent versions of Java.  Bugzilla Report 68460
    + &lt;replaceregexp&gt; has a new failOnError attribute which, when
    enabled, makes the task throw a BuildException for certain
    error cases that will only be logged otherwise.  Github Pull
    Request #206
    + &lt;ftp&gt; task now has a new "useSecureDataChannel" attribute
    which can be set to true, when ftps is enabled, to enable
    secure data channel.  Bugzilla Report 68773
- Unify .spec files
  * remove ant-antlr.changes
  * remove ant-antlr.spec
  * remove ant-junit.changes
  * remove ant-junit.spec
  * remove ant-junit5.changes
  * remove ant-junit5.spec</changelog>
</package>
<package pkgid="096e6b3a74cb32da76de081d78fa8d4397b4887c8c627c53a6c37915ffb635d0a594dd51b54f61c2d0b2efbfd70af50f3eb7867cfc7161710276029f65670aa5" name="ant-jakartamail" arch="noarch">
  <version epoch="0" ver="1.10.15" rel="1.1"/>
  <changelog author="Pedro Monreal &lt;pmonreal@suse.com&gt;" date="1622721600">- Update to 1.10.10
  * SCP (with sftp=true) task would fail if fetching file located
    in root directory.
  * Fixed: javac task would fail if the arguments file it
    (internally) created didn't quote the # character.
  * Make sure LegacyXmlResultFormatter encodes characters illegal
    in XML the same way JUnit5's built-in formatter would.
  * LegacyXmlResultFormatter no longer double-encodes &lt;&gt;&amp; in
    system-err and system-out.
  * Fixes a bug in junitlauncher task's legacy-xml formatter,
    where the testcase representing a @Parameterized JUnit4 test
    wasn't being reported in the XML.
  * Fixes a bug where the ant-testutil-sources.jar that gets
    published to Maven central repository didn't contain any
    source files.
  * The &lt;http&gt; condition didn't follow redirects from http to https.
  * ZipOutputStream now overrides write(int) in order to make sure
    single byte writes get the same treatment as array writes.
  * Fixes a potential deadlock in junitlauncher task when using
    legacy-xml reporter.
  * javaversion condition now has a new "atmost" attribute. See
    the javaversion manual for more details
  * The "listener" nested element of the "junitlauncher" task now
    has a new "useLegacyReportingName" attribute which can be used
    to control the test identifiers names that get reported by the
    listener. See the junitlauncher manual for more details. Note that
    this change also introduces a new "setUseLegacyReportingName" method
    on the org.apache.tools.ant.taskdefs.optional.junitlauncher.TestResultFormatter
    interface. This will break backward compatibility with any of your custom
    result formatters which implemented this interface and such implementations
    are now expected to implement this new method.
  * A new attribute preserveduplicates allows &lt;resourcelist&gt; to
    return the same resource multiple times when set to true.
  * A new attribute filterbeforeconcat in &lt;concat&gt; can be used to
    decide whether the filterchain should be applied to the
    concatenated content (the default) or each nested resource
    individually before concatenating them.
  * The ssh tasks now share a new nested element additionalConfig that can
    be used to set config values for the jsch Session used by the task.
  * Added new discardOutput and discardError properties to redirector
    and the exec, apply and java tasks which can be used to completely
    discard any (error) output. This is a platform independent
    alternative to directiong output to any kind of null device.
  * junitlauncher now prints a more useful and instantaneous summary of
    tests being run, closely matching the junit task's summary.</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1639569600">- Update to 1.10.12:
  * The update includes fixes for the following CVEs:
  CVE-2021-36374, bsc#1188469
    Excessive memory allocation when reading a specially
    crafted ZIP archive or a derived formats.
  CVE-2021-36373, bsc#1188468
    Excessive memory allocation when reading a specially
    crafted TAR archive.
  * The http condition would follow redirects even when "followRedirects" attribute
  was set to "false". This has now been fixed. Bugzilla Report 65489
  * Made sure setting build.compiler to the fully qualified classname
  that corresponds to extJavac or modern has the same effect as using
  the shorter alias names. Bugzilla Report 65539
  * Prevent potential deadlocks in org.apache.tools.ant.IntrospectionHelper.
  Bugzilla Report 65424
  * The implementation of AntClassLoader#findResources() has been changed to optimize
  it for potential performance issues, as those noted at https://issues.jenkins.io/browse/JENKINS-22310?focusedCommentId=197405&amp;page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-197405
  Github Pull Request #151
  * AntClassLoader now implements the ClassLoader#findResource(String) method.
  Github Pull Request #150
  * Ant tries to avoid file name canonicalization when possible.
  Bugzilla Report 65499
  * javadoc task will now look for warning messages in the STDERR stream too
  when "failonwarning" is set to true to account for changes in JDK 17+
  * The tar task now preserves symlinks of nested tarfilesets.
  Github Pull Request #142
- Changes from 1.10.11:
  * a race condition could lead to NullPointerExceptions when running
  tasks in parallel.
  Bugzilla Report 65316
  * fixed potential OutOfMemory errors when reading broken archives
  using the tar or zip formats or formats derived from zip.
  * org.apache.tools.ant.taskdefs.optional.junitlauncher.confined.JUnitLauncherTask now
  has a new protected createExecuteWatchdog() method for allowing it to be overriden.
  Github Pull Request #147
  * Upgraded AntUnit to 1.4.1.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1645531200">- Do not build against the log4j12 packages, use the new reload4j</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1652097600">- Disable a test failing to compile with junit5 5.8.x</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1674043200">- Update ant keyring with new developer keys.
- Update to 1.10.13:
  * Breaking changes:
  - &lt;get&gt; has a new attribute authenticateOnRedirect that can be
    used to prevent Ant from sending the configured credentials
    when following a redirect. It is false by default, which means
    builds that rely on credentials being used on the redirected
    URI may break.
  * Fixed bugs:
  - the PropertyEnumerator change introduced in 1.10.9 proved to
    be not fully backwards compatible when combined with certain
    custom PropertyHelper implementations - for example when using
    AntXtras.
  - legacy-xml reporter of the junitlauncher task now escapes ]]&gt;
    when writing CDATA.
  - &lt;scp&gt; may leak connections when trying to preserve the last
    modified timestamps of files transferred recursively from a
    server.
  - tstamp task would in certain cases parse the SOURCE_DATE_EPOCH
    environment variable value to an incorrect date. This has now
    been fixed.
  - fetch.xml didn't set up non-default repositories propery and
    thus failed to download JAI.
  - When building and installing Ant distribution from source, the
    build script would change permissions on unrelated files in
    the destination directory. This is now fixed and such
    unrelated files in the destination directory will be left
    untouched.
  - parsing tar entries with multiple NUL bytes in their name
    would include garbage bytes as the name included all bytes up
    to the last NUL rather than the first.
  - loadresource might log warnings even though quiet was set to
    true
  - javac task would add paths constructs containing wildcards to
    the internally created argument file where wildcards are not
    allowed
  * Other changes:
  - added an implementation of the MIME Mail sender based on the
    repackaged Jakarta Mail package rather than javax Mail.
  - The "listener" element in the junitlauncher task now supports
    an "extension" attribute to control the filename extension
    of the generated output file from the listener.
  - &lt;ftp&gt; now supports FTPs.
  - DirectoryScanner avoids listing directory contents when it
    known it will never use the information retrieved. This may
    improve performance in some special cases.
  - &lt;manifest&gt; will now create the parent directory of the
    manifestFile attribute if it doesn't exist.
  - org.apache.tools.ant.BuildLogger now has a new method
    getMessageOutputLevel() which returns the currently set
    message output level.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1674734400">- Package and distribute the new ant-jakartamail</changelog>
  <changelog author="Frederic Crozat &lt;fcrozat@suse.com&gt;" date="1683201600">- Add _multibuild to define additional spec files as additional
  flavors.
  Eliminates the need for source package links in OBS.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1693483200">- Update to 1.10.14:
  * Changes that could break older environments:
    + Resource#compareTo now invokes getName rather than toString as
    the later may be costly (for example in the case of a
    StringResource).
    + When using Java 18 or higher, Ant will no longer use Java
    SecurityManager because it has been deprecated for removal and
    by default is disallowed to be set at runtime
    https://openjdk.org/jeps/411.
    This will mean that the "&lt;permissions&gt;" type is no longer
    functional when using Java 18 or higher.
    Furthermore, when using Java 18 or higher, if the build
    executes tasks that call "java.lang.System.exit()" and if
    those tasks aren't running in a forked VM of their own, then
    such tasks will now kill the entire Ant build process. It is
    recommended that such tasks be updated to launch in a forked
    VM so that the System.exit() call will not impact the JVM in
    which Ant process runs.
  * Fixed bugs:
    + log only the stylesheet name in the xslt task.
    + junitlauncher task's "test" and "listener" elements which take
    a "outputDir" property were incorrectly resolving the
    outputDir against the current working directory instead of the
    project's basedir.
    + regexmapper would, in some cases, incorrectly consume
    backslash characters from the "to" attribute, resulting in
    missing backslashes in the output.
    + &lt;fixcrlf&gt;, &lt;replace&gt; and &lt;replaceregexp&gt; now try to preserve
    the file permissions of the files they modify.
    + junitlauncher task would fail if a forked test timed out even
    if haltOnFailure was set to false.
    + fixes a bug in org.apache.tools.zip.ZipOutputStream where,
    even when "zip64Mode" is set to "always", ZipOutputStream may
    not create a CEN extra field data for the entry.
    + legacy-xml listener of junitlauncher task wouldn't report
    certain failures involving junit jupiter dynamic tests.
    + allow.class which was introduced in Ant 1.10.13 release, has
    been removed from this 1.10.14 release. This class was
    introduced in context of the SecurityManager changes in
    Ant 1.10.13, which have now been reverted in Ant 1.10.14,
    since they caused several regressions.
  * Other changes:
    + &lt;fork&gt; element of the junitlauncher task now has a new
    optional "java" attribute which can be used to point to a
    different Java installation for runnning the forked tests.
    + made sure &lt;echoproperties&gt; sorts the echoed properties on
    JDK9+ as well.
    + org.apache.tools.ant.taskdefs.Recorder class now introduces a
    setLogLevel(LogLevel level) method.
    + The &lt;fork&gt; element of junitlaunchertask now allows a
    "forkMode" attribute. forkMode=perTestClass can now be used to
    launch each test class in a separate forked JVM.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1694433600">- Added patch:
  * reproducible-propertyfile-task.patch
    + Debian patch to improve propertyfile task in RPM builds by
    using the date specified by the SOURCE_DATE_EPOCH variable
    in the header of the .properties file generated</changelog>
  <changelog author="Anton Shvetz &lt;shvetz.anton@gmail.com&gt;" date="1706270400">- Add forgotten univocity-parsers to
  %{_sysconfdir}/ant.d/junitlauncher (needed to run unit tests
  annotated with @CsvSource and @CsvFileSource)</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1708430400">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1714219200">- Put hamcrest on the classpath of ant-junit module</changelog>
  <changelog author="Anton Shvetz &lt;shvetz.anton@gmail.com&gt;" date="1714824000">- Add forgotten open-test-reporting/events to
  %{_sysconfdir}/ant.d/junitlauncher</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1721304000">- Added patches:
  * reproducible-jar-mtime.patch
    + make the modification times of files in a jar file
    reproducible
  * reproducible-javadoc.patch
    + make javadoc generation reproducible: don't generate
    timestamps, and normalize locale and encoding</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1723550400">- Modified patches:
  * reproducible-jar-mtime.patch
    + attempt more normalization of mtimes in jar files
  * reproducible-javadoc.patch
    + fix the patch to work with custom doclets too</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1726574400">- Modified patch:
  * reproducible-jar-mtime.patch
    + try different approach to get bit-reproducible builds</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1727611200">- Fix build after removal of the default %%{java_home} define</changelog>
  <changelog author="Gus Kenion &lt;gus.kenion@suse.com&gt;" date="1730721600">- Upgrade to version 1.10.15
  * Bug fixes:
    + Fixes an regression, introduced in Ant 1.10.13, where
    pathconvert would unintentionally trim the string output.
    Bugzilla Report 67082
    + Fixes a bug in &lt;depend&gt; task which would throw a
    ClassFormatError if it encountered constant pool entry type
    17.  Bugzilla Report 66552
    + Launching ant.bat from within a Java program using
    java.lang.Runtime.exec() could result in an unexpected
    failure. This has now been fixed.  Bugzilla Report 67417
    + Fixes an issue in bootstrap.bat when trying to detect if the
    "javac" command in the JDK supports the "--release" option.
    Github Pull Request #205
    + Fixes a bug in
    org.apache.tools.ant.taskdefs.email.EmailAddress which would
    throw a java.lang.StringIndexOutOfBoundsException if the
    email address passed to its constructor was an empty String.
    Bugzilla Report 68462
    + legacy-xml reporter of junitlauncher task was using a
    non-buffered outputstream when generating the report. This
    introduces severe performance penalties since the writes
    translate to native write system calls. This has been fixed
    to use a BufferedOutputStream.  Github Pull Request #207
  * Other changes:
    + exec task now logs the process' non-zero exit code at INFO
    level instead of the previous ERROR level. The following
    message from exec task is the one who's level has been
    changed:
    Result: 1
    Bugzilla Report 26453
    + Removes direct references to
    com.sun.net.ssl.internal.ssl.Provider class from the mail
    task, since that internal JDK class is no longer available in
    recent versions of Java.  Bugzilla Report 68460
    + &lt;replaceregexp&gt; has a new failOnError attribute which, when
    enabled, makes the task throw a BuildException for certain
    error cases that will only be logged otherwise.  Github Pull
    Request #206
    + &lt;ftp&gt; task now has a new "useSecureDataChannel" attribute
    which can be set to true, when ftps is enabled, to enable
    secure data channel.  Bugzilla Report 68773
- Unify .spec files
  * remove ant-antlr.changes
  * remove ant-antlr.spec
  * remove ant-junit.changes
  * remove ant-junit.spec
  * remove ant-junit5.changes
  * remove ant-junit5.spec</changelog>
</package>
<package pkgid="3e8ea4bf19830c7abe3dc37eb85bf1f97c7f4a320ef13f4f5f27fab32796be974feac2c3815e23e38dd478cf2cff5598422837372cd9e6e2f79b8ed3cdc3c948" name="ant-javamail" arch="noarch">
  <version epoch="0" ver="1.10.15" rel="1.1"/>
  <changelog author="Pedro Monreal &lt;pmonreal@suse.com&gt;" date="1622721600">- Update to 1.10.10
  * SCP (with sftp=true) task would fail if fetching file located
    in root directory.
  * Fixed: javac task would fail if the arguments file it
    (internally) created didn't quote the # character.
  * Make sure LegacyXmlResultFormatter encodes characters illegal
    in XML the same way JUnit5's built-in formatter would.
  * LegacyXmlResultFormatter no longer double-encodes &lt;&gt;&amp; in
    system-err and system-out.
  * Fixes a bug in junitlauncher task's legacy-xml formatter,
    where the testcase representing a @Parameterized JUnit4 test
    wasn't being reported in the XML.
  * Fixes a bug where the ant-testutil-sources.jar that gets
    published to Maven central repository didn't contain any
    source files.
  * The &lt;http&gt; condition didn't follow redirects from http to https.
  * ZipOutputStream now overrides write(int) in order to make sure
    single byte writes get the same treatment as array writes.
  * Fixes a potential deadlock in junitlauncher task when using
    legacy-xml reporter.
  * javaversion condition now has a new "atmost" attribute. See
    the javaversion manual for more details
  * The "listener" nested element of the "junitlauncher" task now
    has a new "useLegacyReportingName" attribute which can be used
    to control the test identifiers names that get reported by the
    listener. See the junitlauncher manual for more details. Note that
    this change also introduces a new "setUseLegacyReportingName" method
    on the org.apache.tools.ant.taskdefs.optional.junitlauncher.TestResultFormatter
    interface. This will break backward compatibility with any of your custom
    result formatters which implemented this interface and such implementations
    are now expected to implement this new method.
  * A new attribute preserveduplicates allows &lt;resourcelist&gt; to
    return the same resource multiple times when set to true.
  * A new attribute filterbeforeconcat in &lt;concat&gt; can be used to
    decide whether the filterchain should be applied to the
    concatenated content (the default) or each nested resource
    individually before concatenating them.
  * The ssh tasks now share a new nested element additionalConfig that can
    be used to set config values for the jsch Session used by the task.
  * Added new discardOutput and discardError properties to redirector
    and the exec, apply and java tasks which can be used to completely
    discard any (error) output. This is a platform independent
    alternative to directiong output to any kind of null device.
  * junitlauncher now prints a more useful and instantaneous summary of
    tests being run, closely matching the junit task's summary.</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1639569600">- Update to 1.10.12:
  * The update includes fixes for the following CVEs:
  CVE-2021-36374, bsc#1188469
    Excessive memory allocation when reading a specially
    crafted ZIP archive or a derived formats.
  CVE-2021-36373, bsc#1188468
    Excessive memory allocation when reading a specially
    crafted TAR archive.
  * The http condition would follow redirects even when "followRedirects" attribute
  was set to "false". This has now been fixed. Bugzilla Report 65489
  * Made sure setting build.compiler to the fully qualified classname
  that corresponds to extJavac or modern has the same effect as using
  the shorter alias names. Bugzilla Report 65539
  * Prevent potential deadlocks in org.apache.tools.ant.IntrospectionHelper.
  Bugzilla Report 65424
  * The implementation of AntClassLoader#findResources() has been changed to optimize
  it for potential performance issues, as those noted at https://issues.jenkins.io/browse/JENKINS-22310?focusedCommentId=197405&amp;page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-197405
  Github Pull Request #151
  * AntClassLoader now implements the ClassLoader#findResource(String) method.
  Github Pull Request #150
  * Ant tries to avoid file name canonicalization when possible.
  Bugzilla Report 65499
  * javadoc task will now look for warning messages in the STDERR stream too
  when "failonwarning" is set to true to account for changes in JDK 17+
  * The tar task now preserves symlinks of nested tarfilesets.
  Github Pull Request #142
- Changes from 1.10.11:
  * a race condition could lead to NullPointerExceptions when running
  tasks in parallel.
  Bugzilla Report 65316
  * fixed potential OutOfMemory errors when reading broken archives
  using the tar or zip formats or formats derived from zip.
  * org.apache.tools.ant.taskdefs.optional.junitlauncher.confined.JUnitLauncherTask now
  has a new protected createExecuteWatchdog() method for allowing it to be overriden.
  Github Pull Request #147
  * Upgraded AntUnit to 1.4.1.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1645531200">- Do not build against the log4j12 packages, use the new reload4j</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1652097600">- Disable a test failing to compile with junit5 5.8.x</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1674043200">- Update ant keyring with new developer keys.
- Update to 1.10.13:
  * Breaking changes:
  - &lt;get&gt; has a new attribute authenticateOnRedirect that can be
    used to prevent Ant from sending the configured credentials
    when following a redirect. It is false by default, which means
    builds that rely on credentials being used on the redirected
    URI may break.
  * Fixed bugs:
  - the PropertyEnumerator change introduced in 1.10.9 proved to
    be not fully backwards compatible when combined with certain
    custom PropertyHelper implementations - for example when using
    AntXtras.
  - legacy-xml reporter of the junitlauncher task now escapes ]]&gt;
    when writing CDATA.
  - &lt;scp&gt; may leak connections when trying to preserve the last
    modified timestamps of files transferred recursively from a
    server.
  - tstamp task would in certain cases parse the SOURCE_DATE_EPOCH
    environment variable value to an incorrect date. This has now
    been fixed.
  - fetch.xml didn't set up non-default repositories propery and
    thus failed to download JAI.
  - When building and installing Ant distribution from source, the
    build script would change permissions on unrelated files in
    the destination directory. This is now fixed and such
    unrelated files in the destination directory will be left
    untouched.
  - parsing tar entries with multiple NUL bytes in their name
    would include garbage bytes as the name included all bytes up
    to the last NUL rather than the first.
  - loadresource might log warnings even though quiet was set to
    true
  - javac task would add paths constructs containing wildcards to
    the internally created argument file where wildcards are not
    allowed
  * Other changes:
  - added an implementation of the MIME Mail sender based on the
    repackaged Jakarta Mail package rather than javax Mail.
  - The "listener" element in the junitlauncher task now supports
    an "extension" attribute to control the filename extension
    of the generated output file from the listener.
  - &lt;ftp&gt; now supports FTPs.
  - DirectoryScanner avoids listing directory contents when it
    known it will never use the information retrieved. This may
    improve performance in some special cases.
  - &lt;manifest&gt; will now create the parent directory of the
    manifestFile attribute if it doesn't exist.
  - org.apache.tools.ant.BuildLogger now has a new method
    getMessageOutputLevel() which returns the currently set
    message output level.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1674734400">- Package and distribute the new ant-jakartamail</changelog>
  <changelog author="Frederic Crozat &lt;fcrozat@suse.com&gt;" date="1683201600">- Add _multibuild to define additional spec files as additional
  flavors.
  Eliminates the need for source package links in OBS.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1693483200">- Update to 1.10.14:
  * Changes that could break older environments:
    + Resource#compareTo now invokes getName rather than toString as
    the later may be costly (for example in the case of a
    StringResource).
    + When using Java 18 or higher, Ant will no longer use Java
    SecurityManager because it has been deprecated for removal and
    by default is disallowed to be set at runtime
    https://openjdk.org/jeps/411.
    This will mean that the "&lt;permissions&gt;" type is no longer
    functional when using Java 18 or higher.
    Furthermore, when using Java 18 or higher, if the build
    executes tasks that call "java.lang.System.exit()" and if
    those tasks aren't running in a forked VM of their own, then
    such tasks will now kill the entire Ant build process. It is
    recommended that such tasks be updated to launch in a forked
    VM so that the System.exit() call will not impact the JVM in
    which Ant process runs.
  * Fixed bugs:
    + log only the stylesheet name in the xslt task.
    + junitlauncher task's "test" and "listener" elements which take
    a "outputDir" property were incorrectly resolving the
    outputDir against the current working directory instead of the
    project's basedir.
    + regexmapper would, in some cases, incorrectly consume
    backslash characters from the "to" attribute, resulting in
    missing backslashes in the output.
    + &lt;fixcrlf&gt;, &lt;replace&gt; and &lt;replaceregexp&gt; now try to preserve
    the file permissions of the files they modify.
    + junitlauncher task would fail if a forked test timed out even
    if haltOnFailure was set to false.
    + fixes a bug in org.apache.tools.zip.ZipOutputStream where,
    even when "zip64Mode" is set to "always", ZipOutputStream may
    not create a CEN extra field data for the entry.
    + legacy-xml listener of junitlauncher task wouldn't report
    certain failures involving junit jupiter dynamic tests.
    + allow.class which was introduced in Ant 1.10.13 release, has
    been removed from this 1.10.14 release. This class was
    introduced in context of the SecurityManager changes in
    Ant 1.10.13, which have now been reverted in Ant 1.10.14,
    since they caused several regressions.
  * Other changes:
    + &lt;fork&gt; element of the junitlauncher task now has a new
    optional "java" attribute which can be used to point to a
    different Java installation for runnning the forked tests.
    + made sure &lt;echoproperties&gt; sorts the echoed properties on
    JDK9+ as well.
    + org.apache.tools.ant.taskdefs.Recorder class now introduces a
    setLogLevel(LogLevel level) method.
    + The &lt;fork&gt; element of junitlaunchertask now allows a
    "forkMode" attribute. forkMode=perTestClass can now be used to
    launch each test class in a separate forked JVM.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1694433600">- Added patch:
  * reproducible-propertyfile-task.patch
    + Debian patch to improve propertyfile task in RPM builds by
    using the date specified by the SOURCE_DATE_EPOCH variable
    in the header of the .properties file generated</changelog>
  <changelog author="Anton Shvetz &lt;shvetz.anton@gmail.com&gt;" date="1706270400">- Add forgotten univocity-parsers to
  %{_sysconfdir}/ant.d/junitlauncher (needed to run unit tests
  annotated with @CsvSource and @CsvFileSource)</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1708430400">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1714219200">- Put hamcrest on the classpath of ant-junit module</changelog>
  <changelog author="Anton Shvetz &lt;shvetz.anton@gmail.com&gt;" date="1714824000">- Add forgotten open-test-reporting/events to
  %{_sysconfdir}/ant.d/junitlauncher</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1721304000">- Added patches:
  * reproducible-jar-mtime.patch
    + make the modification times of files in a jar file
    reproducible
  * reproducible-javadoc.patch
    + make javadoc generation reproducible: don't generate
    timestamps, and normalize locale and encoding</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1723550400">- Modified patches:
  * reproducible-jar-mtime.patch
    + attempt more normalization of mtimes in jar files
  * reproducible-javadoc.patch
    + fix the patch to work with custom doclets too</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1726574400">- Modified patch:
  * reproducible-jar-mtime.patch
    + try different approach to get bit-reproducible builds</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1727611200">- Fix build after removal of the default %%{java_home} define</changelog>
  <changelog author="Gus Kenion &lt;gus.kenion@suse.com&gt;" date="1730721600">- Upgrade to version 1.10.15
  * Bug fixes:
    + Fixes an regression, introduced in Ant 1.10.13, where
    pathconvert would unintentionally trim the string output.
    Bugzilla Report 67082
    + Fixes a bug in &lt;depend&gt; task which would throw a
    ClassFormatError if it encountered constant pool entry type
    17.  Bugzilla Report 66552
    + Launching ant.bat from within a Java program using
    java.lang.Runtime.exec() could result in an unexpected
    failure. This has now been fixed.  Bugzilla Report 67417
    + Fixes an issue in bootstrap.bat when trying to detect if the
    "javac" command in the JDK supports the "--release" option.
    Github Pull Request #205
    + Fixes a bug in
    org.apache.tools.ant.taskdefs.email.EmailAddress which would
    throw a java.lang.StringIndexOutOfBoundsException if the
    email address passed to its constructor was an empty String.
    Bugzilla Report 68462
    + legacy-xml reporter of junitlauncher task was using a
    non-buffered outputstream when generating the report. This
    introduces severe performance penalties since the writes
    translate to native write system calls. This has been fixed
    to use a BufferedOutputStream.  Github Pull Request #207
  * Other changes:
    + exec task now logs the process' non-zero exit code at INFO
    level instead of the previous ERROR level. The following
    message from exec task is the one who's level has been
    changed:
    Result: 1
    Bugzilla Report 26453
    + Removes direct references to
    com.sun.net.ssl.internal.ssl.Provider class from the mail
    task, since that internal JDK class is no longer available in
    recent versions of Java.  Bugzilla Report 68460
    + &lt;replaceregexp&gt; has a new failOnError attribute which, when
    enabled, makes the task throw a BuildException for certain
    error cases that will only be logged otherwise.  Github Pull
    Request #206
    + &lt;ftp&gt; task now has a new "useSecureDataChannel" attribute
    which can be set to true, when ftps is enabled, to enable
    secure data channel.  Bugzilla Report 68773
- Unify .spec files
  * remove ant-antlr.changes
  * remove ant-antlr.spec
  * remove ant-junit.changes
  * remove ant-junit.spec
  * remove ant-junit5.changes
  * remove ant-junit5.spec</changelog>
</package>
<package pkgid="dc4566ce55247aff25d6d0a30954355a7e097cde5125941892112b59e99f24c9952dbdc53eb31abdadf0430a6fdf1dac55ca16854cae4508769683a28b75d053" name="ant-jdepend" arch="noarch">
  <version epoch="0" ver="1.10.15" rel="1.1"/>
  <changelog author="Pedro Monreal &lt;pmonreal@suse.com&gt;" date="1622721600">- Update to 1.10.10
  * SCP (with sftp=true) task would fail if fetching file located
    in root directory.
  * Fixed: javac task would fail if the arguments file it
    (internally) created didn't quote the # character.
  * Make sure LegacyXmlResultFormatter encodes characters illegal
    in XML the same way JUnit5's built-in formatter would.
  * LegacyXmlResultFormatter no longer double-encodes &lt;&gt;&amp; in
    system-err and system-out.
  * Fixes a bug in junitlauncher task's legacy-xml formatter,
    where the testcase representing a @Parameterized JUnit4 test
    wasn't being reported in the XML.
  * Fixes a bug where the ant-testutil-sources.jar that gets
    published to Maven central repository didn't contain any
    source files.
  * The &lt;http&gt; condition didn't follow redirects from http to https.
  * ZipOutputStream now overrides write(int) in order to make sure
    single byte writes get the same treatment as array writes.
  * Fixes a potential deadlock in junitlauncher task when using
    legacy-xml reporter.
  * javaversion condition now has a new "atmost" attribute. See
    the javaversion manual for more details
  * The "listener" nested element of the "junitlauncher" task now
    has a new "useLegacyReportingName" attribute which can be used
    to control the test identifiers names that get reported by the
    listener. See the junitlauncher manual for more details. Note that
    this change also introduces a new "setUseLegacyReportingName" method
    on the org.apache.tools.ant.taskdefs.optional.junitlauncher.TestResultFormatter
    interface. This will break backward compatibility with any of your custom
    result formatters which implemented this interface and such implementations
    are now expected to implement this new method.
  * A new attribute preserveduplicates allows &lt;resourcelist&gt; to
    return the same resource multiple times when set to true.
  * A new attribute filterbeforeconcat in &lt;concat&gt; can be used to
    decide whether the filterchain should be applied to the
    concatenated content (the default) or each nested resource
    individually before concatenating them.
  * The ssh tasks now share a new nested element additionalConfig that can
    be used to set config values for the jsch Session used by the task.
  * Added new discardOutput and discardError properties to redirector
    and the exec, apply and java tasks which can be used to completely
    discard any (error) output. This is a platform independent
    alternative to directiong output to any kind of null device.
  * junitlauncher now prints a more useful and instantaneous summary of
    tests being run, closely matching the junit task's summary.</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1639569600">- Update to 1.10.12:
  * The update includes fixes for the following CVEs:
  CVE-2021-36374, bsc#1188469
    Excessive memory allocation when reading a specially
    crafted ZIP archive or a derived formats.
  CVE-2021-36373, bsc#1188468
    Excessive memory allocation when reading a specially
    crafted TAR archive.
  * The http condition would follow redirects even when "followRedirects" attribute
  was set to "false". This has now been fixed. Bugzilla Report 65489
  * Made sure setting build.compiler to the fully qualified classname
  that corresponds to extJavac or modern has the same effect as using
  the shorter alias names. Bugzilla Report 65539
  * Prevent potential deadlocks in org.apache.tools.ant.IntrospectionHelper.
  Bugzilla Report 65424
  * The implementation of AntClassLoader#findResources() has been changed to optimize
  it for potential performance issues, as those noted at https://issues.jenkins.io/browse/JENKINS-22310?focusedCommentId=197405&amp;page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-197405
  Github Pull Request #151
  * AntClassLoader now implements the ClassLoader#findResource(String) method.
  Github Pull Request #150
  * Ant tries to avoid file name canonicalization when possible.
  Bugzilla Report 65499
  * javadoc task will now look for warning messages in the STDERR stream too
  when "failonwarning" is set to true to account for changes in JDK 17+
  * The tar task now preserves symlinks of nested tarfilesets.
  Github Pull Request #142
- Changes from 1.10.11:
  * a race condition could lead to NullPointerExceptions when running
  tasks in parallel.
  Bugzilla Report 65316
  * fixed potential OutOfMemory errors when reading broken archives
  using the tar or zip formats or formats derived from zip.
  * org.apache.tools.ant.taskdefs.optional.junitlauncher.confined.JUnitLauncherTask now
  has a new protected createExecuteWatchdog() method for allowing it to be overriden.
  Github Pull Request #147
  * Upgraded AntUnit to 1.4.1.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1645531200">- Do not build against the log4j12 packages, use the new reload4j</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1652097600">- Disable a test failing to compile with junit5 5.8.x</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1674043200">- Update ant keyring with new developer keys.
- Update to 1.10.13:
  * Breaking changes:
  - &lt;get&gt; has a new attribute authenticateOnRedirect that can be
    used to prevent Ant from sending the configured credentials
    when following a redirect. It is false by default, which means
    builds that rely on credentials being used on the redirected
    URI may break.
  * Fixed bugs:
  - the PropertyEnumerator change introduced in 1.10.9 proved to
    be not fully backwards compatible when combined with certain
    custom PropertyHelper implementations - for example when using
    AntXtras.
  - legacy-xml reporter of the junitlauncher task now escapes ]]&gt;
    when writing CDATA.
  - &lt;scp&gt; may leak connections when trying to preserve the last
    modified timestamps of files transferred recursively from a
    server.
  - tstamp task would in certain cases parse the SOURCE_DATE_EPOCH
    environment variable value to an incorrect date. This has now
    been fixed.
  - fetch.xml didn't set up non-default repositories propery and
    thus failed to download JAI.
  - When building and installing Ant distribution from source, the
    build script would change permissions on unrelated files in
    the destination directory. This is now fixed and such
    unrelated files in the destination directory will be left
    untouched.
  - parsing tar entries with multiple NUL bytes in their name
    would include garbage bytes as the name included all bytes up
    to the last NUL rather than the first.
  - loadresource might log warnings even though quiet was set to
    true
  - javac task would add paths constructs containing wildcards to
    the internally created argument file where wildcards are not
    allowed
  * Other changes:
  - added an implementation of the MIME Mail sender based on the
    repackaged Jakarta Mail package rather than javax Mail.
  - The "listener" element in the junitlauncher task now supports
    an "extension" attribute to control the filename extension
    of the generated output file from the listener.
  - &lt;ftp&gt; now supports FTPs.
  - DirectoryScanner avoids listing directory contents when it
    known it will never use the information retrieved. This may
    improve performance in some special cases.
  - &lt;manifest&gt; will now create the parent directory of the
    manifestFile attribute if it doesn't exist.
  - org.apache.tools.ant.BuildLogger now has a new method
    getMessageOutputLevel() which returns the currently set
    message output level.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1674734400">- Package and distribute the new ant-jakartamail</changelog>
  <changelog author="Frederic Crozat &lt;fcrozat@suse.com&gt;" date="1683201600">- Add _multibuild to define additional spec files as additional
  flavors.
  Eliminates the need for source package links in OBS.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1693483200">- Update to 1.10.14:
  * Changes that could break older environments:
    + Resource#compareTo now invokes getName rather than toString as
    the later may be costly (for example in the case of a
    StringResource).
    + When using Java 18 or higher, Ant will no longer use Java
    SecurityManager because it has been deprecated for removal and
    by default is disallowed to be set at runtime
    https://openjdk.org/jeps/411.
    This will mean that the "&lt;permissions&gt;" type is no longer
    functional when using Java 18 or higher.
    Furthermore, when using Java 18 or higher, if the build
    executes tasks that call "java.lang.System.exit()" and if
    those tasks aren't running in a forked VM of their own, then
    such tasks will now kill the entire Ant build process. It is
    recommended that such tasks be updated to launch in a forked
    VM so that the System.exit() call will not impact the JVM in
    which Ant process runs.
  * Fixed bugs:
    + log only the stylesheet name in the xslt task.
    + junitlauncher task's "test" and "listener" elements which take
    a "outputDir" property were incorrectly resolving the
    outputDir against the current working directory instead of the
    project's basedir.
    + regexmapper would, in some cases, incorrectly consume
    backslash characters from the "to" attribute, resulting in
    missing backslashes in the output.
    + &lt;fixcrlf&gt;, &lt;replace&gt; and &lt;replaceregexp&gt; now try to preserve
    the file permissions of the files they modify.
    + junitlauncher task would fail if a forked test timed out even
    if haltOnFailure was set to false.
    + fixes a bug in org.apache.tools.zip.ZipOutputStream where,
    even when "zip64Mode" is set to "always", ZipOutputStream may
    not create a CEN extra field data for the entry.
    + legacy-xml listener of junitlauncher task wouldn't report
    certain failures involving junit jupiter dynamic tests.
    + allow.class which was introduced in Ant 1.10.13 release, has
    been removed from this 1.10.14 release. This class was
    introduced in context of the SecurityManager changes in
    Ant 1.10.13, which have now been reverted in Ant 1.10.14,
    since they caused several regressions.
  * Other changes:
    + &lt;fork&gt; element of the junitlauncher task now has a new
    optional "java" attribute which can be used to point to a
    different Java installation for runnning the forked tests.
    + made sure &lt;echoproperties&gt; sorts the echoed properties on
    JDK9+ as well.
    + org.apache.tools.ant.taskdefs.Recorder class now introduces a
    setLogLevel(LogLevel level) method.
    + The &lt;fork&gt; element of junitlaunchertask now allows a
    "forkMode" attribute. forkMode=perTestClass can now be used to
    launch each test class in a separate forked JVM.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1694433600">- Added patch:
  * reproducible-propertyfile-task.patch
    + Debian patch to improve propertyfile task in RPM builds by
    using the date specified by the SOURCE_DATE_EPOCH variable
    in the header of the .properties file generated</changelog>
  <changelog author="Anton Shvetz &lt;shvetz.anton@gmail.com&gt;" date="1706270400">- Add forgotten univocity-parsers to
  %{_sysconfdir}/ant.d/junitlauncher (needed to run unit tests
  annotated with @CsvSource and @CsvFileSource)</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1708430400">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1714219200">- Put hamcrest on the classpath of ant-junit module</changelog>
  <changelog author="Anton Shvetz &lt;shvetz.anton@gmail.com&gt;" date="1714824000">- Add forgotten open-test-reporting/events to
  %{_sysconfdir}/ant.d/junitlauncher</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1721304000">- Added patches:
  * reproducible-jar-mtime.patch
    + make the modification times of files in a jar file
    reproducible
  * reproducible-javadoc.patch
    + make javadoc generation reproducible: don't generate
    timestamps, and normalize locale and encoding</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1723550400">- Modified patches:
  * reproducible-jar-mtime.patch
    + attempt more normalization of mtimes in jar files
  * reproducible-javadoc.patch
    + fix the patch to work with custom doclets too</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1726574400">- Modified patch:
  * reproducible-jar-mtime.patch
    + try different approach to get bit-reproducible builds</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1727611200">- Fix build after removal of the default %%{java_home} define</changelog>
  <changelog author="Gus Kenion &lt;gus.kenion@suse.com&gt;" date="1730721600">- Upgrade to version 1.10.15
  * Bug fixes:
    + Fixes an regression, introduced in Ant 1.10.13, where
    pathconvert would unintentionally trim the string output.
    Bugzilla Report 67082
    + Fixes a bug in &lt;depend&gt; task which would throw a
    ClassFormatError if it encountered constant pool entry type
    17.  Bugzilla Report 66552
    + Launching ant.bat from within a Java program using
    java.lang.Runtime.exec() could result in an unexpected
    failure. This has now been fixed.  Bugzilla Report 67417
    + Fixes an issue in bootstrap.bat when trying to detect if the
    "javac" command in the JDK supports the "--release" option.
    Github Pull Request #205
    + Fixes a bug in
    org.apache.tools.ant.taskdefs.email.EmailAddress which would
    throw a java.lang.StringIndexOutOfBoundsException if the
    email address passed to its constructor was an empty String.
    Bugzilla Report 68462
    + legacy-xml reporter of junitlauncher task was using a
    non-buffered outputstream when generating the report. This
    introduces severe performance penalties since the writes
    translate to native write system calls. This has been fixed
    to use a BufferedOutputStream.  Github Pull Request #207
  * Other changes:
    + exec task now logs the process' non-zero exit code at INFO
    level instead of the previous ERROR level. The following
    message from exec task is the one who's level has been
    changed:
    Result: 1
    Bugzilla Report 26453
    + Removes direct references to
    com.sun.net.ssl.internal.ssl.Provider class from the mail
    task, since that internal JDK class is no longer available in
    recent versions of Java.  Bugzilla Report 68460
    + &lt;replaceregexp&gt; has a new failOnError attribute which, when
    enabled, makes the task throw a BuildException for certain
    error cases that will only be logged otherwise.  Github Pull
    Request #206
    + &lt;ftp&gt; task now has a new "useSecureDataChannel" attribute
    which can be set to true, when ftps is enabled, to enable
    secure data channel.  Bugzilla Report 68773
- Unify .spec files
  * remove ant-antlr.changes
  * remove ant-antlr.spec
  * remove ant-junit.changes
  * remove ant-junit.spec
  * remove ant-junit5.changes
  * remove ant-junit5.spec</changelog>
</package>
<package pkgid="3523b09ac5f21560c78b7c1436cf547f8792d1118c2b806a0b805ead4ad5d1e9bd366bca3a1c76b8284144b96251cb4f94ac5434f614a8c11d5c8616c65b84bd" name="ant-jmf" arch="noarch">
  <version epoch="0" ver="1.10.15" rel="1.1"/>
  <changelog author="Pedro Monreal &lt;pmonreal@suse.com&gt;" date="1622721600">- Update to 1.10.10
  * SCP (with sftp=true) task would fail if fetching file located
    in root directory.
  * Fixed: javac task would fail if the arguments file it
    (internally) created didn't quote the # character.
  * Make sure LegacyXmlResultFormatter encodes characters illegal
    in XML the same way JUnit5's built-in formatter would.
  * LegacyXmlResultFormatter no longer double-encodes &lt;&gt;&amp; in
    system-err and system-out.
  * Fixes a bug in junitlauncher task's legacy-xml formatter,
    where the testcase representing a @Parameterized JUnit4 test
    wasn't being reported in the XML.
  * Fixes a bug where the ant-testutil-sources.jar that gets
    published to Maven central repository didn't contain any
    source files.
  * The &lt;http&gt; condition didn't follow redirects from http to https.
  * ZipOutputStream now overrides write(int) in order to make sure
    single byte writes get the same treatment as array writes.
  * Fixes a potential deadlock in junitlauncher task when using
    legacy-xml reporter.
  * javaversion condition now has a new "atmost" attribute. See
    the javaversion manual for more details
  * The "listener" nested element of the "junitlauncher" task now
    has a new "useLegacyReportingName" attribute which can be used
    to control the test identifiers names that get reported by the
    listener. See the junitlauncher manual for more details. Note that
    this change also introduces a new "setUseLegacyReportingName" method
    on the org.apache.tools.ant.taskdefs.optional.junitlauncher.TestResultFormatter
    interface. This will break backward compatibility with any of your custom
    result formatters which implemented this interface and such implementations
    are now expected to implement this new method.
  * A new attribute preserveduplicates allows &lt;resourcelist&gt; to
    return the same resource multiple times when set to true.
  * A new attribute filterbeforeconcat in &lt;concat&gt; can be used to
    decide whether the filterchain should be applied to the
    concatenated content (the default) or each nested resource
    individually before concatenating them.
  * The ssh tasks now share a new nested element additionalConfig that can
    be used to set config values for the jsch Session used by the task.
  * Added new discardOutput and discardError properties to redirector
    and the exec, apply and java tasks which can be used to completely
    discard any (error) output. This is a platform independent
    alternative to directiong output to any kind of null device.
  * junitlauncher now prints a more useful and instantaneous summary of
    tests being run, closely matching the junit task's summary.</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1639569600">- Update to 1.10.12:
  * The update includes fixes for the following CVEs:
  CVE-2021-36374, bsc#1188469
    Excessive memory allocation when reading a specially
    crafted ZIP archive or a derived formats.
  CVE-2021-36373, bsc#1188468
    Excessive memory allocation when reading a specially
    crafted TAR archive.
  * The http condition would follow redirects even when "followRedirects" attribute
  was set to "false". This has now been fixed. Bugzilla Report 65489
  * Made sure setting build.compiler to the fully qualified classname
  that corresponds to extJavac or modern has the same effect as using
  the shorter alias names. Bugzilla Report 65539
  * Prevent potential deadlocks in org.apache.tools.ant.IntrospectionHelper.
  Bugzilla Report 65424
  * The implementation of AntClassLoader#findResources() has been changed to optimize
  it for potential performance issues, as those noted at https://issues.jenkins.io/browse/JENKINS-22310?focusedCommentId=197405&amp;page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-197405
  Github Pull Request #151
  * AntClassLoader now implements the ClassLoader#findResource(String) method.
  Github Pull Request #150
  * Ant tries to avoid file name canonicalization when possible.
  Bugzilla Report 65499
  * javadoc task will now look for warning messages in the STDERR stream too
  when "failonwarning" is set to true to account for changes in JDK 17+
  * The tar task now preserves symlinks of nested tarfilesets.
  Github Pull Request #142
- Changes from 1.10.11:
  * a race condition could lead to NullPointerExceptions when running
  tasks in parallel.
  Bugzilla Report 65316
  * fixed potential OutOfMemory errors when reading broken archives
  using the tar or zip formats or formats derived from zip.
  * org.apache.tools.ant.taskdefs.optional.junitlauncher.confined.JUnitLauncherTask now
  has a new protected createExecuteWatchdog() method for allowing it to be overriden.
  Github Pull Request #147
  * Upgraded AntUnit to 1.4.1.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1645531200">- Do not build against the log4j12 packages, use the new reload4j</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1652097600">- Disable a test failing to compile with junit5 5.8.x</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1674043200">- Update ant keyring with new developer keys.
- Update to 1.10.13:
  * Breaking changes:
  - &lt;get&gt; has a new attribute authenticateOnRedirect that can be
    used to prevent Ant from sending the configured credentials
    when following a redirect. It is false by default, which means
    builds that rely on credentials being used on the redirected
    URI may break.
  * Fixed bugs:
  - the PropertyEnumerator change introduced in 1.10.9 proved to
    be not fully backwards compatible when combined with certain
    custom PropertyHelper implementations - for example when using
    AntXtras.
  - legacy-xml reporter of the junitlauncher task now escapes ]]&gt;
    when writing CDATA.
  - &lt;scp&gt; may leak connections when trying to preserve the last
    modified timestamps of files transferred recursively from a
    server.
  - tstamp task would in certain cases parse the SOURCE_DATE_EPOCH
    environment variable value to an incorrect date. This has now
    been fixed.
  - fetch.xml didn't set up non-default repositories propery and
    thus failed to download JAI.
  - When building and installing Ant distribution from source, the
    build script would change permissions on unrelated files in
    the destination directory. This is now fixed and such
    unrelated files in the destination directory will be left
    untouched.
  - parsing tar entries with multiple NUL bytes in their name
    would include garbage bytes as the name included all bytes up
    to the last NUL rather than the first.
  - loadresource might log warnings even though quiet was set to
    true
  - javac task would add paths constructs containing wildcards to
    the internally created argument file where wildcards are not
    allowed
  * Other changes:
  - added an implementation of the MIME Mail sender based on the
    repackaged Jakarta Mail package rather than javax Mail.
  - The "listener" element in the junitlauncher task now supports
    an "extension" attribute to control the filename extension
    of the generated output file from the listener.
  - &lt;ftp&gt; now supports FTPs.
  - DirectoryScanner avoids listing directory contents when it
    known it will never use the information retrieved. This may
    improve performance in some special cases.
  - &lt;manifest&gt; will now create the parent directory of the
    manifestFile attribute if it doesn't exist.
  - org.apache.tools.ant.BuildLogger now has a new method
    getMessageOutputLevel() which returns the currently set
    message output level.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1674734400">- Package and distribute the new ant-jakartamail</changelog>
  <changelog author="Frederic Crozat &lt;fcrozat@suse.com&gt;" date="1683201600">- Add _multibuild to define additional spec files as additional
  flavors.
  Eliminates the need for source package links in OBS.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1693483200">- Update to 1.10.14:
  * Changes that could break older environments:
    + Resource#compareTo now invokes getName rather than toString as
    the later may be costly (for example in the case of a
    StringResource).
    + When using Java 18 or higher, Ant will no longer use Java
    SecurityManager because it has been deprecated for removal and
    by default is disallowed to be set at runtime
    https://openjdk.org/jeps/411.
    This will mean that the "&lt;permissions&gt;" type is no longer
    functional when using Java 18 or higher.
    Furthermore, when using Java 18 or higher, if the build
    executes tasks that call "java.lang.System.exit()" and if
    those tasks aren't running in a forked VM of their own, then
    such tasks will now kill the entire Ant build process. It is
    recommended that such tasks be updated to launch in a forked
    VM so that the System.exit() call will not impact the JVM in
    which Ant process runs.
  * Fixed bugs:
    + log only the stylesheet name in the xslt task.
    + junitlauncher task's "test" and "listener" elements which take
    a "outputDir" property were incorrectly resolving the
    outputDir against the current working directory instead of the
    project's basedir.
    + regexmapper would, in some cases, incorrectly consume
    backslash characters from the "to" attribute, resulting in
    missing backslashes in the output.
    + &lt;fixcrlf&gt;, &lt;replace&gt; and &lt;replaceregexp&gt; now try to preserve
    the file permissions of the files they modify.
    + junitlauncher task would fail if a forked test timed out even
    if haltOnFailure was set to false.
    + fixes a bug in org.apache.tools.zip.ZipOutputStream where,
    even when "zip64Mode" is set to "always", ZipOutputStream may
    not create a CEN extra field data for the entry.
    + legacy-xml listener of junitlauncher task wouldn't report
    certain failures involving junit jupiter dynamic tests.
    + allow.class which was introduced in Ant 1.10.13 release, has
    been removed from this 1.10.14 release. This class was
    introduced in context of the SecurityManager changes in
    Ant 1.10.13, which have now been reverted in Ant 1.10.14,
    since they caused several regressions.
  * Other changes:
    + &lt;fork&gt; element of the junitlauncher task now has a new
    optional "java" attribute which can be used to point to a
    different Java installation for runnning the forked tests.
    + made sure &lt;echoproperties&gt; sorts the echoed properties on
    JDK9+ as well.
    + org.apache.tools.ant.taskdefs.Recorder class now introduces a
    setLogLevel(LogLevel level) method.
    + The &lt;fork&gt; element of junitlaunchertask now allows a
    "forkMode" attribute. forkMode=perTestClass can now be used to
    launch each test class in a separate forked JVM.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1694433600">- Added patch:
  * reproducible-propertyfile-task.patch
    + Debian patch to improve propertyfile task in RPM builds by
    using the date specified by the SOURCE_DATE_EPOCH variable
    in the header of the .properties file generated</changelog>
  <changelog author="Anton Shvetz &lt;shvetz.anton@gmail.com&gt;" date="1706270400">- Add forgotten univocity-parsers to
  %{_sysconfdir}/ant.d/junitlauncher (needed to run unit tests
  annotated with @CsvSource and @CsvFileSource)</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1708430400">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1714219200">- Put hamcrest on the classpath of ant-junit module</changelog>
  <changelog author="Anton Shvetz &lt;shvetz.anton@gmail.com&gt;" date="1714824000">- Add forgotten open-test-reporting/events to
  %{_sysconfdir}/ant.d/junitlauncher</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1721304000">- Added patches:
  * reproducible-jar-mtime.patch
    + make the modification times of files in a jar file
    reproducible
  * reproducible-javadoc.patch
    + make javadoc generation reproducible: don't generate
    timestamps, and normalize locale and encoding</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1723550400">- Modified patches:
  * reproducible-jar-mtime.patch
    + attempt more normalization of mtimes in jar files
  * reproducible-javadoc.patch
    + fix the patch to work with custom doclets too</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1726574400">- Modified patch:
  * reproducible-jar-mtime.patch
    + try different approach to get bit-reproducible builds</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1727611200">- Fix build after removal of the default %%{java_home} define</changelog>
  <changelog author="Gus Kenion &lt;gus.kenion@suse.com&gt;" date="1730721600">- Upgrade to version 1.10.15
  * Bug fixes:
    + Fixes an regression, introduced in Ant 1.10.13, where
    pathconvert would unintentionally trim the string output.
    Bugzilla Report 67082
    + Fixes a bug in &lt;depend&gt; task which would throw a
    ClassFormatError if it encountered constant pool entry type
    17.  Bugzilla Report 66552
    + Launching ant.bat from within a Java program using
    java.lang.Runtime.exec() could result in an unexpected
    failure. This has now been fixed.  Bugzilla Report 67417
    + Fixes an issue in bootstrap.bat when trying to detect if the
    "javac" command in the JDK supports the "--release" option.
    Github Pull Request #205
    + Fixes a bug in
    org.apache.tools.ant.taskdefs.email.EmailAddress which would
    throw a java.lang.StringIndexOutOfBoundsException if the
    email address passed to its constructor was an empty String.
    Bugzilla Report 68462
    + legacy-xml reporter of junitlauncher task was using a
    non-buffered outputstream when generating the report. This
    introduces severe performance penalties since the writes
    translate to native write system calls. This has been fixed
    to use a BufferedOutputStream.  Github Pull Request #207
  * Other changes:
    + exec task now logs the process' non-zero exit code at INFO
    level instead of the previous ERROR level. The following
    message from exec task is the one who's level has been
    changed:
    Result: 1
    Bugzilla Report 26453
    + Removes direct references to
    com.sun.net.ssl.internal.ssl.Provider class from the mail
    task, since that internal JDK class is no longer available in
    recent versions of Java.  Bugzilla Report 68460
    + &lt;replaceregexp&gt; has a new failOnError attribute which, when
    enabled, makes the task throw a BuildException for certain
    error cases that will only be logged otherwise.  Github Pull
    Request #206
    + &lt;ftp&gt; task now has a new "useSecureDataChannel" attribute
    which can be set to true, when ftps is enabled, to enable
    secure data channel.  Bugzilla Report 68773
- Unify .spec files
  * remove ant-antlr.changes
  * remove ant-antlr.spec
  * remove ant-junit.changes
  * remove ant-junit.spec
  * remove ant-junit5.changes
  * remove ant-junit5.spec</changelog>
</package>
<package pkgid="cd4cc0b4948b8594f6ac29ed9e55590250eee53c06498ea6f9686ce855fc76ec49b4344584460fc2d694567fae6b35ffa8cc40962bb17df81359a201b89d45bf" name="ant-jsch" arch="noarch">
  <version epoch="0" ver="1.10.15" rel="1.1"/>
  <changelog author="Pedro Monreal &lt;pmonreal@suse.com&gt;" date="1622721600">- Update to 1.10.10
  * SCP (with sftp=true) task would fail if fetching file located
    in root directory.
  * Fixed: javac task would fail if the arguments file it
    (internally) created didn't quote the # character.
  * Make sure LegacyXmlResultFormatter encodes characters illegal
    in XML the same way JUnit5's built-in formatter would.
  * LegacyXmlResultFormatter no longer double-encodes &lt;&gt;&amp; in
    system-err and system-out.
  * Fixes a bug in junitlauncher task's legacy-xml formatter,
    where the testcase representing a @Parameterized JUnit4 test
    wasn't being reported in the XML.
  * Fixes a bug where the ant-testutil-sources.jar that gets
    published to Maven central repository didn't contain any
    source files.
  * The &lt;http&gt; condition didn't follow redirects from http to https.
  * ZipOutputStream now overrides write(int) in order to make sure
    single byte writes get the same treatment as array writes.
  * Fixes a potential deadlock in junitlauncher task when using
    legacy-xml reporter.
  * javaversion condition now has a new "atmost" attribute. See
    the javaversion manual for more details
  * The "listener" nested element of the "junitlauncher" task now
    has a new "useLegacyReportingName" attribute which can be used
    to control the test identifiers names that get reported by the
    listener. See the junitlauncher manual for more details. Note that
    this change also introduces a new "setUseLegacyReportingName" method
    on the org.apache.tools.ant.taskdefs.optional.junitlauncher.TestResultFormatter
    interface. This will break backward compatibility with any of your custom
    result formatters which implemented this interface and such implementations
    are now expected to implement this new method.
  * A new attribute preserveduplicates allows &lt;resourcelist&gt; to
    return the same resource multiple times when set to true.
  * A new attribute filterbeforeconcat in &lt;concat&gt; can be used to
    decide whether the filterchain should be applied to the
    concatenated content (the default) or each nested resource
    individually before concatenating them.
  * The ssh tasks now share a new nested element additionalConfig that can
    be used to set config values for the jsch Session used by the task.
  * Added new discardOutput and discardError properties to redirector
    and the exec, apply and java tasks which can be used to completely
    discard any (error) output. This is a platform independent
    alternative to directiong output to any kind of null device.
  * junitlauncher now prints a more useful and instantaneous summary of
    tests being run, closely matching the junit task's summary.</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1639569600">- Update to 1.10.12:
  * The update includes fixes for the following CVEs:
  CVE-2021-36374, bsc#1188469
    Excessive memory allocation when reading a specially
    crafted ZIP archive or a derived formats.
  CVE-2021-36373, bsc#1188468
    Excessive memory allocation when reading a specially
    crafted TAR archive.
  * The http condition would follow redirects even when "followRedirects" attribute
  was set to "false". This has now been fixed. Bugzilla Report 65489
  * Made sure setting build.compiler to the fully qualified classname
  that corresponds to extJavac or modern has the same effect as using
  the shorter alias names. Bugzilla Report 65539
  * Prevent potential deadlocks in org.apache.tools.ant.IntrospectionHelper.
  Bugzilla Report 65424
  * The implementation of AntClassLoader#findResources() has been changed to optimize
  it for potential performance issues, as those noted at https://issues.jenkins.io/browse/JENKINS-22310?focusedCommentId=197405&amp;page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-197405
  Github Pull Request #151
  * AntClassLoader now implements the ClassLoader#findResource(String) method.
  Github Pull Request #150
  * Ant tries to avoid file name canonicalization when possible.
  Bugzilla Report 65499
  * javadoc task will now look for warning messages in the STDERR stream too
  when "failonwarning" is set to true to account for changes in JDK 17+
  * The tar task now preserves symlinks of nested tarfilesets.
  Github Pull Request #142
- Changes from 1.10.11:
  * a race condition could lead to NullPointerExceptions when running
  tasks in parallel.
  Bugzilla Report 65316
  * fixed potential OutOfMemory errors when reading broken archives
  using the tar or zip formats or formats derived from zip.
  * org.apache.tools.ant.taskdefs.optional.junitlauncher.confined.JUnitLauncherTask now
  has a new protected createExecuteWatchdog() method for allowing it to be overriden.
  Github Pull Request #147
  * Upgraded AntUnit to 1.4.1.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1645531200">- Do not build against the log4j12 packages, use the new reload4j</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1652097600">- Disable a test failing to compile with junit5 5.8.x</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1674043200">- Update ant keyring with new developer keys.
- Update to 1.10.13:
  * Breaking changes:
  - &lt;get&gt; has a new attribute authenticateOnRedirect that can be
    used to prevent Ant from sending the configured credentials
    when following a redirect. It is false by default, which means
    builds that rely on credentials being used on the redirected
    URI may break.
  * Fixed bugs:
  - the PropertyEnumerator change introduced in 1.10.9 proved to
    be not fully backwards compatible when combined with certain
    custom PropertyHelper implementations - for example when using
    AntXtras.
  - legacy-xml reporter of the junitlauncher task now escapes ]]&gt;
    when writing CDATA.
  - &lt;scp&gt; may leak connections when trying to preserve the last
    modified timestamps of files transferred recursively from a
    server.
  - tstamp task would in certain cases parse the SOURCE_DATE_EPOCH
    environment variable value to an incorrect date. This has now
    been fixed.
  - fetch.xml didn't set up non-default repositories propery and
    thus failed to download JAI.
  - When building and installing Ant distribution from source, the
    build script would change permissions on unrelated files in
    the destination directory. This is now fixed and such
    unrelated files in the destination directory will be left
    untouched.
  - parsing tar entries with multiple NUL bytes in their name
    would include garbage bytes as the name included all bytes up
    to the last NUL rather than the first.
  - loadresource might log warnings even though quiet was set to
    true
  - javac task would add paths constructs containing wildcards to
    the internally created argument file where wildcards are not
    allowed
  * Other changes:
  - added an implementation of the MIME Mail sender based on the
    repackaged Jakarta Mail package rather than javax Mail.
  - The "listener" element in the junitlauncher task now supports
    an "extension" attribute to control the filename extension
    of the generated output file from the listener.
  - &lt;ftp&gt; now supports FTPs.
  - DirectoryScanner avoids listing directory contents when it
    known it will never use the information retrieved. This may
    improve performance in some special cases.
  - &lt;manifest&gt; will now create the parent directory of the
    manifestFile attribute if it doesn't exist.
  - org.apache.tools.ant.BuildLogger now has a new method
    getMessageOutputLevel() which returns the currently set
    message output level.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1674734400">- Package and distribute the new ant-jakartamail</changelog>
  <changelog author="Frederic Crozat &lt;fcrozat@suse.com&gt;" date="1683201600">- Add _multibuild to define additional spec files as additional
  flavors.
  Eliminates the need for source package links in OBS.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1693483200">- Update to 1.10.14:
  * Changes that could break older environments:
    + Resource#compareTo now invokes getName rather than toString as
    the later may be costly (for example in the case of a
    StringResource).
    + When using Java 18 or higher, Ant will no longer use Java
    SecurityManager because it has been deprecated for removal and
    by default is disallowed to be set at runtime
    https://openjdk.org/jeps/411.
    This will mean that the "&lt;permissions&gt;" type is no longer
    functional when using Java 18 or higher.
    Furthermore, when using Java 18 or higher, if the build
    executes tasks that call "java.lang.System.exit()" and if
    those tasks aren't running in a forked VM of their own, then
    such tasks will now kill the entire Ant build process. It is
    recommended that such tasks be updated to launch in a forked
    VM so that the System.exit() call will not impact the JVM in
    which Ant process runs.
  * Fixed bugs:
    + log only the stylesheet name in the xslt task.
    + junitlauncher task's "test" and "listener" elements which take
    a "outputDir" property were incorrectly resolving the
    outputDir against the current working directory instead of the
    project's basedir.
    + regexmapper would, in some cases, incorrectly consume
    backslash characters from the "to" attribute, resulting in
    missing backslashes in the output.
    + &lt;fixcrlf&gt;, &lt;replace&gt; and &lt;replaceregexp&gt; now try to preserve
    the file permissions of the files they modify.
    + junitlauncher task would fail if a forked test timed out even
    if haltOnFailure was set to false.
    + fixes a bug in org.apache.tools.zip.ZipOutputStream where,
    even when "zip64Mode" is set to "always", ZipOutputStream may
    not create a CEN extra field data for the entry.
    + legacy-xml listener of junitlauncher task wouldn't report
    certain failures involving junit jupiter dynamic tests.
    + allow.class which was introduced in Ant 1.10.13 release, has
    been removed from this 1.10.14 release. This class was
    introduced in context of the SecurityManager changes in
    Ant 1.10.13, which have now been reverted in Ant 1.10.14,
    since they caused several regressions.
  * Other changes:
    + &lt;fork&gt; element of the junitlauncher task now has a new
    optional "java" attribute which can be used to point to a
    different Java installation for runnning the forked tests.
    + made sure &lt;echoproperties&gt; sorts the echoed properties on
    JDK9+ as well.
    + org.apache.tools.ant.taskdefs.Recorder class now introduces a
    setLogLevel(LogLevel level) method.
    + The &lt;fork&gt; element of junitlaunchertask now allows a
    "forkMode" attribute. forkMode=perTestClass can now be used to
    launch each test class in a separate forked JVM.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1694433600">- Added patch:
  * reproducible-propertyfile-task.patch
    + Debian patch to improve propertyfile task in RPM builds by
    using the date specified by the SOURCE_DATE_EPOCH variable
    in the header of the .properties file generated</changelog>
  <changelog author="Anton Shvetz &lt;shvetz.anton@gmail.com&gt;" date="1706270400">- Add forgotten univocity-parsers to
  %{_sysconfdir}/ant.d/junitlauncher (needed to run unit tests
  annotated with @CsvSource and @CsvFileSource)</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1708430400">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1714219200">- Put hamcrest on the classpath of ant-junit module</changelog>
  <changelog author="Anton Shvetz &lt;shvetz.anton@gmail.com&gt;" date="1714824000">- Add forgotten open-test-reporting/events to
  %{_sysconfdir}/ant.d/junitlauncher</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1721304000">- Added patches:
  * reproducible-jar-mtime.patch
    + make the modification times of files in a jar file
    reproducible
  * reproducible-javadoc.patch
    + make javadoc generation reproducible: don't generate
    timestamps, and normalize locale and encoding</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1723550400">- Modified patches:
  * reproducible-jar-mtime.patch
    + attempt more normalization of mtimes in jar files
  * reproducible-javadoc.patch
    + fix the patch to work with custom doclets too</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1726574400">- Modified patch:
  * reproducible-jar-mtime.patch
    + try different approach to get bit-reproducible builds</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1727611200">- Fix build after removal of the default %%{java_home} define</changelog>
  <changelog author="Gus Kenion &lt;gus.kenion@suse.com&gt;" date="1730721600">- Upgrade to version 1.10.15
  * Bug fixes:
    + Fixes an regression, introduced in Ant 1.10.13, where
    pathconvert would unintentionally trim the string output.
    Bugzilla Report 67082
    + Fixes a bug in &lt;depend&gt; task which would throw a
    ClassFormatError if it encountered constant pool entry type
    17.  Bugzilla Report 66552
    + Launching ant.bat from within a Java program using
    java.lang.Runtime.exec() could result in an unexpected
    failure. This has now been fixed.  Bugzilla Report 67417
    + Fixes an issue in bootstrap.bat when trying to detect if the
    "javac" command in the JDK supports the "--release" option.
    Github Pull Request #205
    + Fixes a bug in
    org.apache.tools.ant.taskdefs.email.EmailAddress which would
    throw a java.lang.StringIndexOutOfBoundsException if the
    email address passed to its constructor was an empty String.
    Bugzilla Report 68462
    + legacy-xml reporter of junitlauncher task was using a
    non-buffered outputstream when generating the report. This
    introduces severe performance penalties since the writes
    translate to native write system calls. This has been fixed
    to use a BufferedOutputStream.  Github Pull Request #207
  * Other changes:
    + exec task now logs the process' non-zero exit code at INFO
    level instead of the previous ERROR level. The following
    message from exec task is the one who's level has been
    changed:
    Result: 1
    Bugzilla Report 26453
    + Removes direct references to
    com.sun.net.ssl.internal.ssl.Provider class from the mail
    task, since that internal JDK class is no longer available in
    recent versions of Java.  Bugzilla Report 68460
    + &lt;replaceregexp&gt; has a new failOnError attribute which, when
    enabled, makes the task throw a BuildException for certain
    error cases that will only be logged otherwise.  Github Pull
    Request #206
    + &lt;ftp&gt; task now has a new "useSecureDataChannel" attribute
    which can be set to true, when ftps is enabled, to enable
    secure data channel.  Bugzilla Report 68773
- Unify .spec files
  * remove ant-antlr.changes
  * remove ant-antlr.spec
  * remove ant-junit.changes
  * remove ant-junit.spec
  * remove ant-junit5.changes
  * remove ant-junit5.spec</changelog>
</package>
<package pkgid="24c1666623443e13a19460fa03a40a5d7902f0fd811653051d6a353b660c0b62d3851339891a03a684d6896b205d71a6e6569e3e32c4ecdf088466377f0f39d3" name="ant-junit" arch="noarch">
  <version epoch="0" ver="1.10.15" rel="1.1"/>
  <changelog author="Pedro Monreal &lt;pmonreal@suse.com&gt;" date="1622721600">- Update to 1.10.10
  * SCP (with sftp=true) task would fail if fetching file located
    in root directory.
  * Fixed: javac task would fail if the arguments file it
    (internally) created didn't quote the # character.
  * Make sure LegacyXmlResultFormatter encodes characters illegal
    in XML the same way JUnit5's built-in formatter would.
  * LegacyXmlResultFormatter no longer double-encodes &lt;&gt;&amp; in
    system-err and system-out.
  * Fixes a bug in junitlauncher task's legacy-xml formatter,
    where the testcase representing a @Parameterized JUnit4 test
    wasn't being reported in the XML.
  * Fixes a bug where the ant-testutil-sources.jar that gets
    published to Maven central repository didn't contain any
    source files.
  * The &lt;http&gt; condition didn't follow redirects from http to https.
  * ZipOutputStream now overrides write(int) in order to make sure
    single byte writes get the same treatment as array writes.
  * Fixes a potential deadlock in junitlauncher task when using
    legacy-xml reporter.
  * javaversion condition now has a new "atmost" attribute. See
    the javaversion manual for more details
  * The "listener" nested element of the "junitlauncher" task now
    has a new "useLegacyReportingName" attribute which can be used
    to control the test identifiers names that get reported by the
    listener. See the junitlauncher manual for more details. Note that
    this change also introduces a new "setUseLegacyReportingName" method
    on the org.apache.tools.ant.taskdefs.optional.junitlauncher.TestResultFormatter
    interface. This will break backward compatibility with any of your custom
    result formatters which implemented this interface and such implementations
    are now expected to implement this new method.
  * A new attribute preserveduplicates allows &lt;resourcelist&gt; to
    return the same resource multiple times when set to true.
  * A new attribute filterbeforeconcat in &lt;concat&gt; can be used to
    decide whether the filterchain should be applied to the
    concatenated content (the default) or each nested resource
    individually before concatenating them.
  * The ssh tasks now share a new nested element additionalConfig that can
    be used to set config values for the jsch Session used by the task.
  * Added new discardOutput and discardError properties to redirector
    and the exec, apply and java tasks which can be used to completely
    discard any (error) output. This is a platform independent
    alternative to directiong output to any kind of null device.
  * junitlauncher now prints a more useful and instantaneous summary of
    tests being run, closely matching the junit task's summary.</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1639569600">- Update to 1.10.12:
  * The update includes fixes for the following CVEs:
  CVE-2021-36374, bsc#1188469
    Excessive memory allocation when reading a specially
    crafted ZIP archive or a derived formats.
  CVE-2021-36373, bsc#1188468
    Excessive memory allocation when reading a specially
    crafted TAR archive.
  * The http condition would follow redirects even when "followRedirects" attribute
  was set to "false". This has now been fixed. Bugzilla Report 65489
  * Made sure setting build.compiler to the fully qualified classname
  that corresponds to extJavac or modern has the same effect as using
  the shorter alias names. Bugzilla Report 65539
  * Prevent potential deadlocks in org.apache.tools.ant.IntrospectionHelper.
  Bugzilla Report 65424
  * The implementation of AntClassLoader#findResources() has been changed to optimize
  it for potential performance issues, as those noted at https://issues.jenkins.io/browse/JENKINS-22310?focusedCommentId=197405&amp;page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-197405
  Github Pull Request #151
  * AntClassLoader now implements the ClassLoader#findResource(String) method.
  Github Pull Request #150
  * Ant tries to avoid file name canonicalization when possible.
  Bugzilla Report 65499
  * javadoc task will now look for warning messages in the STDERR stream too
  when "failonwarning" is set to true to account for changes in JDK 17+
  * The tar task now preserves symlinks of nested tarfilesets.
  Github Pull Request #142
- Changes from 1.10.11:
  * a race condition could lead to NullPointerExceptions when running
  tasks in parallel.
  Bugzilla Report 65316
  * fixed potential OutOfMemory errors when reading broken archives
  using the tar or zip formats or formats derived from zip.
  * org.apache.tools.ant.taskdefs.optional.junitlauncher.confined.JUnitLauncherTask now
  has a new protected createExecuteWatchdog() method for allowing it to be overriden.
  Github Pull Request #147
  * Upgraded AntUnit to 1.4.1.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1645531200">- Do not build against the log4j12 packages, use the new reload4j</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1652097600">- Disable a test failing to compile with junit5 5.8.x</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1674043200">- Update ant keyring with new developer keys.
- Update to 1.10.13:
  * Breaking changes:
  - &lt;get&gt; has a new attribute authenticateOnRedirect that can be
    used to prevent Ant from sending the configured credentials
    when following a redirect. It is false by default, which means
    builds that rely on credentials being used on the redirected
    URI may break.
  * Fixed bugs:
  - the PropertyEnumerator change introduced in 1.10.9 proved to
    be not fully backwards compatible when combined with certain
    custom PropertyHelper implementations - for example when using
    AntXtras.
  - legacy-xml reporter of the junitlauncher task now escapes ]]&gt;
    when writing CDATA.
  - &lt;scp&gt; may leak connections when trying to preserve the last
    modified timestamps of files transferred recursively from a
    server.
  - tstamp task would in certain cases parse the SOURCE_DATE_EPOCH
    environment variable value to an incorrect date. This has now
    been fixed.
  - fetch.xml didn't set up non-default repositories propery and
    thus failed to download JAI.
  - When building and installing Ant distribution from source, the
    build script would change permissions on unrelated files in
    the destination directory. This is now fixed and such
    unrelated files in the destination directory will be left
    untouched.
  - parsing tar entries with multiple NUL bytes in their name
    would include garbage bytes as the name included all bytes up
    to the last NUL rather than the first.
  - loadresource might log warnings even though quiet was set to
    true
  - javac task would add paths constructs containing wildcards to
    the internally created argument file where wildcards are not
    allowed
  * Other changes:
  - added an implementation of the MIME Mail sender based on the
    repackaged Jakarta Mail package rather than javax Mail.
  - The "listener" element in the junitlauncher task now supports
    an "extension" attribute to control the filename extension
    of the generated output file from the listener.
  - &lt;ftp&gt; now supports FTPs.
  - DirectoryScanner avoids listing directory contents when it
    known it will never use the information retrieved. This may
    improve performance in some special cases.
  - &lt;manifest&gt; will now create the parent directory of the
    manifestFile attribute if it doesn't exist.
  - org.apache.tools.ant.BuildLogger now has a new method
    getMessageOutputLevel() which returns the currently set
    message output level.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1674734400">- Package and distribute the new ant-jakartamail</changelog>
  <changelog author="Frederic Crozat &lt;fcrozat@suse.com&gt;" date="1683201600">- Add _multibuild to define additional spec files as additional
  flavors.
  Eliminates the need for source package links in OBS.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1693483200">- Update to 1.10.14:
  * Changes that could break older environments:
    + Resource#compareTo now invokes getName rather than toString as
    the later may be costly (for example in the case of a
    StringResource).
    + When using Java 18 or higher, Ant will no longer use Java
    SecurityManager because it has been deprecated for removal and
    by default is disallowed to be set at runtime
    https://openjdk.org/jeps/411.
    This will mean that the "&lt;permissions&gt;" type is no longer
    functional when using Java 18 or higher.
    Furthermore, when using Java 18 or higher, if the build
    executes tasks that call "java.lang.System.exit()" and if
    those tasks aren't running in a forked VM of their own, then
    such tasks will now kill the entire Ant build process. It is
    recommended that such tasks be updated to launch in a forked
    VM so that the System.exit() call will not impact the JVM in
    which Ant process runs.
  * Fixed bugs:
    + log only the stylesheet name in the xslt task.
    + junitlauncher task's "test" and "listener" elements which take
    a "outputDir" property were incorrectly resolving the
    outputDir against the current working directory instead of the
    project's basedir.
    + regexmapper would, in some cases, incorrectly consume
    backslash characters from the "to" attribute, resulting in
    missing backslashes in the output.
    + &lt;fixcrlf&gt;, &lt;replace&gt; and &lt;replaceregexp&gt; now try to preserve
    the file permissions of the files they modify.
    + junitlauncher task would fail if a forked test timed out even
    if haltOnFailure was set to false.
    + fixes a bug in org.apache.tools.zip.ZipOutputStream where,
    even when "zip64Mode" is set to "always", ZipOutputStream may
    not create a CEN extra field data for the entry.
    + legacy-xml listener of junitlauncher task wouldn't report
    certain failures involving junit jupiter dynamic tests.
    + allow.class which was introduced in Ant 1.10.13 release, has
    been removed from this 1.10.14 release. This class was
    introduced in context of the SecurityManager changes in
    Ant 1.10.13, which have now been reverted in Ant 1.10.14,
    since they caused several regressions.
  * Other changes:
    + &lt;fork&gt; element of the junitlauncher task now has a new
    optional "java" attribute which can be used to point to a
    different Java installation for runnning the forked tests.
    + made sure &lt;echoproperties&gt; sorts the echoed properties on
    JDK9+ as well.
    + org.apache.tools.ant.taskdefs.Recorder class now introduces a
    setLogLevel(LogLevel level) method.
    + The &lt;fork&gt; element of junitlaunchertask now allows a
    "forkMode" attribute. forkMode=perTestClass can now be used to
    launch each test class in a separate forked JVM.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1694433600">- Added patch:
  * reproducible-propertyfile-task.patch
    + Debian patch to improve propertyfile task in RPM builds by
    using the date specified by the SOURCE_DATE_EPOCH variable
    in the header of the .properties file generated</changelog>
  <changelog author="Anton Shvetz &lt;shvetz.anton@gmail.com&gt;" date="1706270400">- Add forgotten univocity-parsers to
  %{_sysconfdir}/ant.d/junitlauncher (needed to run unit tests
  annotated with @CsvSource and @CsvFileSource)</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1708430400">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1714219200">- Put hamcrest on the classpath of ant-junit module</changelog>
  <changelog author="Anton Shvetz &lt;shvetz.anton@gmail.com&gt;" date="1714824000">- Add forgotten open-test-reporting/events to
  %{_sysconfdir}/ant.d/junitlauncher</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1721304000">- Added patches:
  * reproducible-jar-mtime.patch
    + make the modification times of files in a jar file
    reproducible
  * reproducible-javadoc.patch
    + make javadoc generation reproducible: don't generate
    timestamps, and normalize locale and encoding</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1723550400">- Modified patches:
  * reproducible-jar-mtime.patch
    + attempt more normalization of mtimes in jar files
  * reproducible-javadoc.patch
    + fix the patch to work with custom doclets too</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1726574400">- Modified patch:
  * reproducible-jar-mtime.patch
    + try different approach to get bit-reproducible builds</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1727611200">- Fix build after removal of the default %%{java_home} define</changelog>
  <changelog author="Gus Kenion &lt;gus.kenion@suse.com&gt;" date="1730721600">- Upgrade to version 1.10.15
  * Bug fixes:
    + Fixes an regression, introduced in Ant 1.10.13, where
    pathconvert would unintentionally trim the string output.
    Bugzilla Report 67082
    + Fixes a bug in &lt;depend&gt; task which would throw a
    ClassFormatError if it encountered constant pool entry type
    17.  Bugzilla Report 66552
    + Launching ant.bat from within a Java program using
    java.lang.Runtime.exec() could result in an unexpected
    failure. This has now been fixed.  Bugzilla Report 67417
    + Fixes an issue in bootstrap.bat when trying to detect if the
    "javac" command in the JDK supports the "--release" option.
    Github Pull Request #205
    + Fixes a bug in
    org.apache.tools.ant.taskdefs.email.EmailAddress which would
    throw a java.lang.StringIndexOutOfBoundsException if the
    email address passed to its constructor was an empty String.
    Bugzilla Report 68462
    + legacy-xml reporter of junitlauncher task was using a
    non-buffered outputstream when generating the report. This
    introduces severe performance penalties since the writes
    translate to native write system calls. This has been fixed
    to use a BufferedOutputStream.  Github Pull Request #207
  * Other changes:
    + exec task now logs the process' non-zero exit code at INFO
    level instead of the previous ERROR level. The following
    message from exec task is the one who's level has been
    changed:
    Result: 1
    Bugzilla Report 26453
    + Removes direct references to
    com.sun.net.ssl.internal.ssl.Provider class from the mail
    task, since that internal JDK class is no longer available in
    recent versions of Java.  Bugzilla Report 68460
    + &lt;replaceregexp&gt; has a new failOnError attribute which, when
    enabled, makes the task throw a BuildException for certain
    error cases that will only be logged otherwise.  Github Pull
    Request #206
    + &lt;ftp&gt; task now has a new "useSecureDataChannel" attribute
    which can be set to true, when ftps is enabled, to enable
    secure data channel.  Bugzilla Report 68773
- Unify .spec files
  * remove ant-antlr.changes
  * remove ant-antlr.spec
  * remove ant-junit.changes
  * remove ant-junit.spec
  * remove ant-junit5.changes
  * remove ant-junit5.spec</changelog>
</package>
<package pkgid="b15f86864519ef94c72138c54ffabd31955ac79ec0a62e49558c6ad7f0ae332a3687fe448390884d9df1729d523499ba4a5d7775bd21a4134a863383746ee3e5" name="ant-junit" arch="src">
  <version epoch="0" ver="1.10.15" rel="1.1"/>
  <changelog author="Pedro Monreal Gonzalez &lt;pmonrealgonzalez@suse.com&gt;" date="1589457600">- Update to 1.10.8
  * Security fix: [CVE-2020-1945, bsc#1171696]
  - A new property ant.tmpdir provides improved control over the
    location Ant uses to create temporary files
  * sshexec failed to write output to a file if the file didn't exist
  * Fixes a regression in javac task involving command line argument files.
  * sshexec, sshsession and scp now support a new sshConfig parameter.
  It specified the SSH configuration file (typically ${user.home}/.ssh/config)
  defining the username and keyfile to be used per host.
  * "legacy-xml" formatter of junitlauncher task wasn't writing out
  exceptions that happen in @BeforeAll method of a test.
  * Fixes a potential ConcurrentModificationException in XMLLogger.
  * Fixes a bug in junitlauncher task in forked mode, where if a listener element
  was used as a sibling element for either the test or testclasses element,
  then the forked mode launch would fail.
  * Fixes an issue in AntStructure where an incorrect DTD was being generated.
  * Fixes an incorrect variable name usage in junit-frames-xalan1.xsl.
  * The runant.py script should now work with Python 3.
  * rmic has been removed from Java 15. The task will now throw an
  exception if you try to use it while running Java 15 or newer.
- Remove ant-python3.patch fixed upstream</changelog>
  <changelog author="Pedro Monreal &lt;pmonreal@suse.com&gt;" date="1601553600">- Update to 1.10.9
  * Security fix: [bsc#1177180, CVE-2020-11979]
  - Insecure temporary file vulnerability
  * Fixed bugs:
  - The ftp task could throw a NullPointerException if an
    error occured.
  - Propertyset now also sees in-scope local properties.
  - Replaced ReaderInputStream with the version of Apache
    Commons IO due to problems with surrogate pairs.
  - &lt;fixcrlf&gt; will no longer remove the temporary file it
    just created before writing to it.
  - &lt;sshexec&gt; and &lt;scp&gt; didn't deal with wildcard hostnames
    in shs config files properly.
  * Other changes:
  - Ant will no longer log a warning if it doesn't find tools.jar.
  - The &lt;jar&gt; task accepts now a nested &lt;indexjarsmapper&gt;
    element that can be used to perform custom filename
    transformations for the &lt;indexjars&gt; archives.
  - Added a new PropertyEnumerator interface that extensions can
    provide if they are managing properties unknown to the Ant project.
  - Added some special code to support GraalVM JavaScript as
    javax.script scripting engine for JavaScript. In particular we
    relax some security settings of GraalVM so that scripts can access
    Ant objects.
  - Also Ant enables Nashorn compatibility mode by default, you can
    disable that by setting the magic Ant property
    ant.disable.graal.nashorn.compat to true.
  - If the magic property ant.tmpdir hasn't been set and Ant can
    control the permissions of directories it creates it will create an
    owner-owned temporary directory unaccessible to others as default
    tempdir as soon as a temporary file is created for the first time.</changelog>
  <changelog author="Pedro Monreal &lt;pmonreal@suse.com&gt;" date="1622721600">- Update to 1.10.10
  * SCP (with sftp=true) task would fail if fetching file located
    in root directory.
  * Fixed: javac task would fail if the arguments file it
    (internally) created didn't quote the # character.
  * Make sure LegacyXmlResultFormatter encodes characters illegal
    in XML the same way JUnit5's built-in formatter would.
  * LegacyXmlResultFormatter no longer double-encodes &lt;&gt;&amp; in
    system-err and system-out.
  * Fixes a bug in junitlauncher task's legacy-xml formatter,
    where the testcase representing a @Parameterized JUnit4 test
    wasn't being reported in the XML.
  * Fixes a bug where the ant-testutil-sources.jar that gets
    published to Maven central repository didn't contain any
    source files.
  * The &lt;http&gt; condition didn't follow redirects from http to https.
  * ZipOutputStream now overrides write(int) in order to make sure
    single byte writes get the same treatment as array writes.
  * Fixes a potential deadlock in junitlauncher task when using
    legacy-xml reporter.
  * javaversion condition now has a new "atmost" attribute. See
    the javaversion manual for more details
  * The "listener" nested element of the "junitlauncher" task now
    has a new "useLegacyReportingName" attribute which can be used
    to control the test identifiers names that get reported by the
    listener. See the junitlauncher manual for more details. Note that
    this change also introduces a new "setUseLegacyReportingName" method
    on the org.apache.tools.ant.taskdefs.optional.junitlauncher.TestResultFormatter
    interface. This will break backward compatibility with any of your custom
    result formatters which implemented this interface and such implementations
    are now expected to implement this new method.
  * A new attribute preserveduplicates allows &lt;resourcelist&gt; to
    return the same resource multiple times when set to true.
  * A new attribute filterbeforeconcat in &lt;concat&gt; can be used to
    decide whether the filterchain should be applied to the
    concatenated content (the default) or each nested resource
    individually before concatenating them.
  * The ssh tasks now share a new nested element additionalConfig that can
    be used to set config values for the jsch Session used by the task.
  * Added new discardOutput and discardError properties to redirector
    and the exec, apply and java tasks which can be used to completely
    discard any (error) output. This is a platform independent
    alternative to directiong output to any kind of null device.
  * junitlauncher now prints a more useful and instantaneous summary of
    tests being run, closely matching the junit task's summary.</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1639569600">- Update to 1.10.12:
  * The update includes fixes for the following CVEs:
  CVE-2021-36374, bsc#1188469
    Excessive memory allocation when reading a specially
    crafted ZIP archive or a derived formats.
  CVE-2021-36373, bsc#1188468
    Excessive memory allocation when reading a specially
    crafted TAR archive.
  * The http condition would follow redirects even when "followRedirects" attribute
  was set to "false". This has now been fixed. Bugzilla Report 65489
  * Made sure setting build.compiler to the fully qualified classname
  that corresponds to extJavac or modern has the same effect as using
  the shorter alias names. Bugzilla Report 65539
  * Prevent potential deadlocks in org.apache.tools.ant.IntrospectionHelper.
  Bugzilla Report 65424
  * The implementation of AntClassLoader#findResources() has been changed to optimize
  it for potential performance issues, as those noted at https://issues.jenkins.io/browse/JENKINS-22310?focusedCommentId=197405&amp;page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-197405
  Github Pull Request #151
  * AntClassLoader now implements the ClassLoader#findResource(String) method.
  Github Pull Request #150
  * Ant tries to avoid file name canonicalization when possible.
  Bugzilla Report 65499
  * javadoc task will now look for warning messages in the STDERR stream too
  when "failonwarning" is set to true to account for changes in JDK 17+
  * The tar task now preserves symlinks of nested tarfilesets.
  Github Pull Request #142
- Changes from 1.10.11:
  * a race condition could lead to NullPointerExceptions when running
  tasks in parallel.
  Bugzilla Report 65316
  * fixed potential OutOfMemory errors when reading broken archives
  using the tar or zip formats or formats derived from zip.
  * org.apache.tools.ant.taskdefs.optional.junitlauncher.confined.JUnitLauncherTask now
  has a new protected createExecuteWatchdog() method for allowing it to be overriden.
  Github Pull Request #147
  * Upgraded AntUnit to 1.4.1.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1645531200">- Do not build against the log4j12 packages, use the new reload4j</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1652097600">- Disable a test failing to compile with junit5 5.8.x</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1674043200">- Update ant keyring with new developer keys.
- Update to 1.10.13:
  * Breaking changes:
  - &lt;get&gt; has a new attribute authenticateOnRedirect that can be
    used to prevent Ant from sending the configured credentials
    when following a redirect. It is false by default, which means
    builds that rely on credentials being used on the redirected
    URI may break.
  * Fixed bugs:
  - the PropertyEnumerator change introduced in 1.10.9 proved to
    be not fully backwards compatible when combined with certain
    custom PropertyHelper implementations - for example when using
    AntXtras.
  - legacy-xml reporter of the junitlauncher task now escapes ]]&gt;
    when writing CDATA.
  - &lt;scp&gt; may leak connections when trying to preserve the last
    modified timestamps of files transferred recursively from a
    server.
  - tstamp task would in certain cases parse the SOURCE_DATE_EPOCH
    environment variable value to an incorrect date. This has now
    been fixed.
  - fetch.xml didn't set up non-default repositories propery and
    thus failed to download JAI.
  - When building and installing Ant distribution from source, the
    build script would change permissions on unrelated files in
    the destination directory. This is now fixed and such
    unrelated files in the destination directory will be left
    untouched.
  - parsing tar entries with multiple NUL bytes in their name
    would include garbage bytes as the name included all bytes up
    to the last NUL rather than the first.
  - loadresource might log warnings even though quiet was set to
    true
  - javac task would add paths constructs containing wildcards to
    the internally created argument file where wildcards are not
    allowed
  * Other changes:
  - added an implementation of the MIME Mail sender based on the
    repackaged Jakarta Mail package rather than javax Mail.
  - The "listener" element in the junitlauncher task now supports
    an "extension" attribute to control the filename extension
    of the generated output file from the listener.
  - &lt;ftp&gt; now supports FTPs.
  - DirectoryScanner avoids listing directory contents when it
    known it will never use the information retrieved. This may
    improve performance in some special cases.
  - &lt;manifest&gt; will now create the parent directory of the
    manifestFile attribute if it doesn't exist.
  - org.apache.tools.ant.BuildLogger now has a new method
    getMessageOutputLevel() which returns the currently set
    message output level.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1674734400">- Package and distribute the new ant-jakartamail</changelog>
  <changelog author="Frederic Crozat &lt;fcrozat@suse.com&gt;" date="1683201600">- Add _multibuild to define additional spec files as additional
  flavors.
  Eliminates the need for source package links in OBS.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1693483200">- Update to 1.10.14:
  * Changes that could break older environments:
    + Resource#compareTo now invokes getName rather than toString as
    the later may be costly (for example in the case of a
    StringResource).
    + When using Java 18 or higher, Ant will no longer use Java
    SecurityManager because it has been deprecated for removal and
    by default is disallowed to be set at runtime
    https://openjdk.org/jeps/411.
    This will mean that the "&lt;permissions&gt;" type is no longer
    functional when using Java 18 or higher.
    Furthermore, when using Java 18 or higher, if the build
    executes tasks that call "java.lang.System.exit()" and if
    those tasks aren't running in a forked VM of their own, then
    such tasks will now kill the entire Ant build process. It is
    recommended that such tasks be updated to launch in a forked
    VM so that the System.exit() call will not impact the JVM in
    which Ant process runs.
  * Fixed bugs:
    + log only the stylesheet name in the xslt task.
    + junitlauncher task's "test" and "listener" elements which take
    a "outputDir" property were incorrectly resolving the
    outputDir against the current working directory instead of the
    project's basedir.
    + regexmapper would, in some cases, incorrectly consume
    backslash characters from the "to" attribute, resulting in
    missing backslashes in the output.
    + &lt;fixcrlf&gt;, &lt;replace&gt; and &lt;replaceregexp&gt; now try to preserve
    the file permissions of the files they modify.
    + junitlauncher task would fail if a forked test timed out even
    if haltOnFailure was set to false.
    + fixes a bug in org.apache.tools.zip.ZipOutputStream where,
    even when "zip64Mode" is set to "always", ZipOutputStream may
    not create a CEN extra field data for the entry.
    + legacy-xml listener of junitlauncher task wouldn't report
    certain failures involving junit jupiter dynamic tests.
    + allow.class which was introduced in Ant 1.10.13 release, has
    been removed from this 1.10.14 release. This class was
    introduced in context of the SecurityManager changes in
    Ant 1.10.13, which have now been reverted in Ant 1.10.14,
    since they caused several regressions.
  * Other changes:
    + &lt;fork&gt; element of the junitlauncher task now has a new
    optional "java" attribute which can be used to point to a
    different Java installation for runnning the forked tests.
    + made sure &lt;echoproperties&gt; sorts the echoed properties on
    JDK9+ as well.
    + org.apache.tools.ant.taskdefs.Recorder class now introduces a
    setLogLevel(LogLevel level) method.
    + The &lt;fork&gt; element of junitlaunchertask now allows a
    "forkMode" attribute. forkMode=perTestClass can now be used to
    launch each test class in a separate forked JVM.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1694433600">- Added patch:
  * reproducible-propertyfile-task.patch
    + Debian patch to improve propertyfile task in RPM builds by
    using the date specified by the SOURCE_DATE_EPOCH variable
    in the header of the .properties file generated</changelog>
  <changelog author="Anton Shvetz &lt;shvetz.anton@gmail.com&gt;" date="1706270400">- Add forgotten univocity-parsers to
  %{_sysconfdir}/ant.d/junitlauncher (needed to run unit tests
  annotated with @CsvSource and @CsvFileSource)</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1708430400">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1714219200">- Put hamcrest on the classpath of ant-junit module</changelog>
  <changelog author="Anton Shvetz &lt;shvetz.anton@gmail.com&gt;" date="1714824000">- Add forgotten open-test-reporting/events to
  %{_sysconfdir}/ant.d/junitlauncher</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1721304000">- Added patches:
  * reproducible-jar-mtime.patch
    + make the modification times of files in a jar file
    reproducible
  * reproducible-javadoc.patch
    + make javadoc generation reproducible: don't generate
    timestamps, and normalize locale and encoding</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1723550400">- Modified patches:
  * reproducible-jar-mtime.patch
    + attempt more normalization of mtimes in jar files
  * reproducible-javadoc.patch
    + fix the patch to work with custom doclets too</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1726574400">- Modified patch:
  * reproducible-jar-mtime.patch
    + try different approach to get bit-reproducible builds</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1727611200">- Fix build after removal of the default %%{java_home} define</changelog>
  <changelog author="Gus Kenion &lt;gus.kenion@suse.com&gt;" date="1730721600">- Upgrade to version 1.10.15
  * Bug fixes:
    + Fixes an regression, introduced in Ant 1.10.13, where
    pathconvert would unintentionally trim the string output.
    Bugzilla Report 67082
    + Fixes a bug in &lt;depend&gt; task which would throw a
    ClassFormatError if it encountered constant pool entry type
    17.  Bugzilla Report 66552
    + Launching ant.bat from within a Java program using
    java.lang.Runtime.exec() could result in an unexpected
    failure. This has now been fixed.  Bugzilla Report 67417
    + Fixes an issue in bootstrap.bat when trying to detect if the
    "javac" command in the JDK supports the "--release" option.
    Github Pull Request #205
    + Fixes a bug in
    org.apache.tools.ant.taskdefs.email.EmailAddress which would
    throw a java.lang.StringIndexOutOfBoundsException if the
    email address passed to its constructor was an empty String.
    Bugzilla Report 68462
    + legacy-xml reporter of junitlauncher task was using a
    non-buffered outputstream when generating the report. This
    introduces severe performance penalties since the writes
    translate to native write system calls. This has been fixed
    to use a BufferedOutputStream.  Github Pull Request #207
  * Other changes:
    + exec task now logs the process' non-zero exit code at INFO
    level instead of the previous ERROR level. The following
    message from exec task is the one who's level has been
    changed:
    Result: 1
    Bugzilla Report 26453
    + Removes direct references to
    com.sun.net.ssl.internal.ssl.Provider class from the mail
    task, since that internal JDK class is no longer available in
    recent versions of Java.  Bugzilla Report 68460
    + &lt;replaceregexp&gt; has a new failOnError attribute which, when
    enabled, makes the task throw a BuildException for certain
    error cases that will only be logged otherwise.  Github Pull
    Request #206
    + &lt;ftp&gt; task now has a new "useSecureDataChannel" attribute
    which can be set to true, when ftps is enabled, to enable
    secure data channel.  Bugzilla Report 68773
- Unify .spec files
  * remove ant-antlr.changes
  * remove ant-antlr.spec
  * remove ant-junit.changes
  * remove ant-junit.spec
  * remove ant-junit5.changes
  * remove ant-junit5.spec</changelog>
</package>
<package pkgid="808e013ec712118b7c426bc0f425449bd4340ae14eeb1078d588b6c7ce38e14ac492636fac596ec8d753cb3b8e00f5c05143f62f4303eed8ee6b80661a018a0e" name="ant-junit5" arch="noarch">
  <version epoch="0" ver="1.10.15" rel="1.1"/>
  <changelog author="Pedro Monreal &lt;pmonreal@suse.com&gt;" date="1622721600">- Update to 1.10.10
  * SCP (with sftp=true) task would fail if fetching file located
    in root directory.
  * Fixed: javac task would fail if the arguments file it
    (internally) created didn't quote the # character.
  * Make sure LegacyXmlResultFormatter encodes characters illegal
    in XML the same way JUnit5's built-in formatter would.
  * LegacyXmlResultFormatter no longer double-encodes &lt;&gt;&amp; in
    system-err and system-out.
  * Fixes a bug in junitlauncher task's legacy-xml formatter,
    where the testcase representing a @Parameterized JUnit4 test
    wasn't being reported in the XML.
  * Fixes a bug where the ant-testutil-sources.jar that gets
    published to Maven central repository didn't contain any
    source files.
  * The &lt;http&gt; condition didn't follow redirects from http to https.
  * ZipOutputStream now overrides write(int) in order to make sure
    single byte writes get the same treatment as array writes.
  * Fixes a potential deadlock in junitlauncher task when using
    legacy-xml reporter.
  * javaversion condition now has a new "atmost" attribute. See
    the javaversion manual for more details
  * The "listener" nested element of the "junitlauncher" task now
    has a new "useLegacyReportingName" attribute which can be used
    to control the test identifiers names that get reported by the
    listener. See the junitlauncher manual for more details. Note that
    this change also introduces a new "setUseLegacyReportingName" method
    on the org.apache.tools.ant.taskdefs.optional.junitlauncher.TestResultFormatter
    interface. This will break backward compatibility with any of your custom
    result formatters which implemented this interface and such implementations
    are now expected to implement this new method.
  * A new attribute preserveduplicates allows &lt;resourcelist&gt; to
    return the same resource multiple times when set to true.
  * A new attribute filterbeforeconcat in &lt;concat&gt; can be used to
    decide whether the filterchain should be applied to the
    concatenated content (the default) or each nested resource
    individually before concatenating them.
  * The ssh tasks now share a new nested element additionalConfig that can
    be used to set config values for the jsch Session used by the task.
  * Added new discardOutput and discardError properties to redirector
    and the exec, apply and java tasks which can be used to completely
    discard any (error) output. This is a platform independent
    alternative to directiong output to any kind of null device.
  * junitlauncher now prints a more useful and instantaneous summary of
    tests being run, closely matching the junit task's summary.</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1639569600">- Update to 1.10.12:
  * The update includes fixes for the following CVEs:
  CVE-2021-36374, bsc#1188469
    Excessive memory allocation when reading a specially
    crafted ZIP archive or a derived formats.
  CVE-2021-36373, bsc#1188468
    Excessive memory allocation when reading a specially
    crafted TAR archive.
  * The http condition would follow redirects even when "followRedirects" attribute
  was set to "false". This has now been fixed. Bugzilla Report 65489
  * Made sure setting build.compiler to the fully qualified classname
  that corresponds to extJavac or modern has the same effect as using
  the shorter alias names. Bugzilla Report 65539
  * Prevent potential deadlocks in org.apache.tools.ant.IntrospectionHelper.
  Bugzilla Report 65424
  * The implementation of AntClassLoader#findResources() has been changed to optimize
  it for potential performance issues, as those noted at https://issues.jenkins.io/browse/JENKINS-22310?focusedCommentId=197405&amp;page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-197405
  Github Pull Request #151
  * AntClassLoader now implements the ClassLoader#findResource(String) method.
  Github Pull Request #150
  * Ant tries to avoid file name canonicalization when possible.
  Bugzilla Report 65499
  * javadoc task will now look for warning messages in the STDERR stream too
  when "failonwarning" is set to true to account for changes in JDK 17+
  * The tar task now preserves symlinks of nested tarfilesets.
  Github Pull Request #142
- Changes from 1.10.11:
  * a race condition could lead to NullPointerExceptions when running
  tasks in parallel.
  Bugzilla Report 65316
  * fixed potential OutOfMemory errors when reading broken archives
  using the tar or zip formats or formats derived from zip.
  * org.apache.tools.ant.taskdefs.optional.junitlauncher.confined.JUnitLauncherTask now
  has a new protected createExecuteWatchdog() method for allowing it to be overriden.
  Github Pull Request #147
  * Upgraded AntUnit to 1.4.1.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1645531200">- Do not build against the log4j12 packages, use the new reload4j</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1652097600">- Disable a test failing to compile with junit5 5.8.x</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1674043200">- Update ant keyring with new developer keys.
- Update to 1.10.13:
  * Breaking changes:
  - &lt;get&gt; has a new attribute authenticateOnRedirect that can be
    used to prevent Ant from sending the configured credentials
    when following a redirect. It is false by default, which means
    builds that rely on credentials being used on the redirected
    URI may break.
  * Fixed bugs:
  - the PropertyEnumerator change introduced in 1.10.9 proved to
    be not fully backwards compatible when combined with certain
    custom PropertyHelper implementations - for example when using
    AntXtras.
  - legacy-xml reporter of the junitlauncher task now escapes ]]&gt;
    when writing CDATA.
  - &lt;scp&gt; may leak connections when trying to preserve the last
    modified timestamps of files transferred recursively from a
    server.
  - tstamp task would in certain cases parse the SOURCE_DATE_EPOCH
    environment variable value to an incorrect date. This has now
    been fixed.
  - fetch.xml didn't set up non-default repositories propery and
    thus failed to download JAI.
  - When building and installing Ant distribution from source, the
    build script would change permissions on unrelated files in
    the destination directory. This is now fixed and such
    unrelated files in the destination directory will be left
    untouched.
  - parsing tar entries with multiple NUL bytes in their name
    would include garbage bytes as the name included all bytes up
    to the last NUL rather than the first.
  - loadresource might log warnings even though quiet was set to
    true
  - javac task would add paths constructs containing wildcards to
    the internally created argument file where wildcards are not
    allowed
  * Other changes:
  - added an implementation of the MIME Mail sender based on the
    repackaged Jakarta Mail package rather than javax Mail.
  - The "listener" element in the junitlauncher task now supports
    an "extension" attribute to control the filename extension
    of the generated output file from the listener.
  - &lt;ftp&gt; now supports FTPs.
  - DirectoryScanner avoids listing directory contents when it
    known it will never use the information retrieved. This may
    improve performance in some special cases.
  - &lt;manifest&gt; will now create the parent directory of the
    manifestFile attribute if it doesn't exist.
  - org.apache.tools.ant.BuildLogger now has a new method
    getMessageOutputLevel() which returns the currently set
    message output level.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1674734400">- Package and distribute the new ant-jakartamail</changelog>
  <changelog author="Frederic Crozat &lt;fcrozat@suse.com&gt;" date="1683201600">- Add _multibuild to define additional spec files as additional
  flavors.
  Eliminates the need for source package links in OBS.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1693483200">- Update to 1.10.14:
  * Changes that could break older environments:
    + Resource#compareTo now invokes getName rather than toString as
    the later may be costly (for example in the case of a
    StringResource).
    + When using Java 18 or higher, Ant will no longer use Java
    SecurityManager because it has been deprecated for removal and
    by default is disallowed to be set at runtime
    https://openjdk.org/jeps/411.
    This will mean that the "&lt;permissions&gt;" type is no longer
    functional when using Java 18 or higher.
    Furthermore, when using Java 18 or higher, if the build
    executes tasks that call "java.lang.System.exit()" and if
    those tasks aren't running in a forked VM of their own, then
    such tasks will now kill the entire Ant build process. It is
    recommended that such tasks be updated to launch in a forked
    VM so that the System.exit() call will not impact the JVM in
    which Ant process runs.
  * Fixed bugs:
    + log only the stylesheet name in the xslt task.
    + junitlauncher task's "test" and "listener" elements which take
    a "outputDir" property were incorrectly resolving the
    outputDir against the current working directory instead of the
    project's basedir.
    + regexmapper would, in some cases, incorrectly consume
    backslash characters from the "to" attribute, resulting in
    missing backslashes in the output.
    + &lt;fixcrlf&gt;, &lt;replace&gt; and &lt;replaceregexp&gt; now try to preserve
    the file permissions of the files they modify.
    + junitlauncher task would fail if a forked test timed out even
    if haltOnFailure was set to false.
    + fixes a bug in org.apache.tools.zip.ZipOutputStream where,
    even when "zip64Mode" is set to "always", ZipOutputStream may
    not create a CEN extra field data for the entry.
    + legacy-xml listener of junitlauncher task wouldn't report
    certain failures involving junit jupiter dynamic tests.
    + allow.class which was introduced in Ant 1.10.13 release, has
    been removed from this 1.10.14 release. This class was
    introduced in context of the SecurityManager changes in
    Ant 1.10.13, which have now been reverted in Ant 1.10.14,
    since they caused several regressions.
  * Other changes:
    + &lt;fork&gt; element of the junitlauncher task now has a new
    optional "java" attribute which can be used to point to a
    different Java installation for runnning the forked tests.
    + made sure &lt;echoproperties&gt; sorts the echoed properties on
    JDK9+ as well.
    + org.apache.tools.ant.taskdefs.Recorder class now introduces a
    setLogLevel(LogLevel level) method.
    + The &lt;fork&gt; element of junitlaunchertask now allows a
    "forkMode" attribute. forkMode=perTestClass can now be used to
    launch each test class in a separate forked JVM.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1694433600">- Added patch:
  * reproducible-propertyfile-task.patch
    + Debian patch to improve propertyfile task in RPM builds by
    using the date specified by the SOURCE_DATE_EPOCH variable
    in the header of the .properties file generated</changelog>
  <changelog author="Anton Shvetz &lt;shvetz.anton@gmail.com&gt;" date="1706270400">- Add forgotten univocity-parsers to
  %{_sysconfdir}/ant.d/junitlauncher (needed to run unit tests
  annotated with @CsvSource and @CsvFileSource)</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1708430400">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1714219200">- Put hamcrest on the classpath of ant-junit module</changelog>
  <changelog author="Anton Shvetz &lt;shvetz.anton@gmail.com&gt;" date="1714824000">- Add forgotten open-test-reporting/events to
  %{_sysconfdir}/ant.d/junitlauncher</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1721304000">- Added patches:
  * reproducible-jar-mtime.patch
    + make the modification times of files in a jar file
    reproducible
  * reproducible-javadoc.patch
    + make javadoc generation reproducible: don't generate
    timestamps, and normalize locale and encoding</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1723550400">- Modified patches:
  * reproducible-jar-mtime.patch
    + attempt more normalization of mtimes in jar files
  * reproducible-javadoc.patch
    + fix the patch to work with custom doclets too</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1726574400">- Modified patch:
  * reproducible-jar-mtime.patch
    + try different approach to get bit-reproducible builds</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1727611200">- Fix build after removal of the default %%{java_home} define</changelog>
  <changelog author="Gus Kenion &lt;gus.kenion@suse.com&gt;" date="1730721600">- Upgrade to version 1.10.15
  * Bug fixes:
    + Fixes an regression, introduced in Ant 1.10.13, where
    pathconvert would unintentionally trim the string output.
    Bugzilla Report 67082
    + Fixes a bug in &lt;depend&gt; task which would throw a
    ClassFormatError if it encountered constant pool entry type
    17.  Bugzilla Report 66552
    + Launching ant.bat from within a Java program using
    java.lang.Runtime.exec() could result in an unexpected
    failure. This has now been fixed.  Bugzilla Report 67417
    + Fixes an issue in bootstrap.bat when trying to detect if the
    "javac" command in the JDK supports the "--release" option.
    Github Pull Request #205
    + Fixes a bug in
    org.apache.tools.ant.taskdefs.email.EmailAddress which would
    throw a java.lang.StringIndexOutOfBoundsException if the
    email address passed to its constructor was an empty String.
    Bugzilla Report 68462
    + legacy-xml reporter of junitlauncher task was using a
    non-buffered outputstream when generating the report. This
    introduces severe performance penalties since the writes
    translate to native write system calls. This has been fixed
    to use a BufferedOutputStream.  Github Pull Request #207
  * Other changes:
    + exec task now logs the process' non-zero exit code at INFO
    level instead of the previous ERROR level. The following
    message from exec task is the one who's level has been
    changed:
    Result: 1
    Bugzilla Report 26453
    + Removes direct references to
    com.sun.net.ssl.internal.ssl.Provider class from the mail
    task, since that internal JDK class is no longer available in
    recent versions of Java.  Bugzilla Report 68460
    + &lt;replaceregexp&gt; has a new failOnError attribute which, when
    enabled, makes the task throw a BuildException for certain
    error cases that will only be logged otherwise.  Github Pull
    Request #206
    + &lt;ftp&gt; task now has a new "useSecureDataChannel" attribute
    which can be set to true, when ftps is enabled, to enable
    secure data channel.  Bugzilla Report 68773
- Unify .spec files
  * remove ant-antlr.changes
  * remove ant-antlr.spec
  * remove ant-junit.changes
  * remove ant-junit.spec
  * remove ant-junit5.changes
  * remove ant-junit5.spec</changelog>
</package>
<package pkgid="2270429dd6a4c5a6d9cb24589ea0cec5a6dbedc150809a7c932d1ddcd867600a00cf634139845a51a770843f76e49fa6b535138cecd89fa776926a6ff1284b77" name="ant-junit5" arch="src">
  <version epoch="0" ver="1.10.15" rel="1.1"/>
  <changelog author="Pedro Monreal Gonzalez &lt;pmonrealgonzalez@suse.com&gt;" date="1589457600">- Update to 1.10.8
  * Security fix: [CVE-2020-1945, bsc#1171696]
  - A new property ant.tmpdir provides improved control over the
    location Ant uses to create temporary files
  * sshexec failed to write output to a file if the file didn't exist
  * Fixes a regression in javac task involving command line argument files.
  * sshexec, sshsession and scp now support a new sshConfig parameter.
  It specified the SSH configuration file (typically ${user.home}/.ssh/config)
  defining the username and keyfile to be used per host.
  * "legacy-xml" formatter of junitlauncher task wasn't writing out
  exceptions that happen in @BeforeAll method of a test.
  * Fixes a potential ConcurrentModificationException in XMLLogger.
  * Fixes a bug in junitlauncher task in forked mode, where if a listener element
  was used as a sibling element for either the test or testclasses element,
  then the forked mode launch would fail.
  * Fixes an issue in AntStructure where an incorrect DTD was being generated.
  * Fixes an incorrect variable name usage in junit-frames-xalan1.xsl.
  * The runant.py script should now work with Python 3.
  * rmic has been removed from Java 15. The task will now throw an
  exception if you try to use it while running Java 15 or newer.
- Remove ant-python3.patch fixed upstream</changelog>
  <changelog author="Pedro Monreal &lt;pmonreal@suse.com&gt;" date="1601553600">- Update to 1.10.9
  * Security fix: [bsc#1177180, CVE-2020-11979]
  - Insecure temporary file vulnerability
  * Fixed bugs:
  - The ftp task could throw a NullPointerException if an
    error occured.
  - Propertyset now also sees in-scope local properties.
  - Replaced ReaderInputStream with the version of Apache
    Commons IO due to problems with surrogate pairs.
  - &lt;fixcrlf&gt; will no longer remove the temporary file it
    just created before writing to it.
  - &lt;sshexec&gt; and &lt;scp&gt; didn't deal with wildcard hostnames
    in shs config files properly.
  * Other changes:
  - Ant will no longer log a warning if it doesn't find tools.jar.
  - The &lt;jar&gt; task accepts now a nested &lt;indexjarsmapper&gt;
    element that can be used to perform custom filename
    transformations for the &lt;indexjars&gt; archives.
  - Added a new PropertyEnumerator interface that extensions can
    provide if they are managing properties unknown to the Ant project.
  - Added some special code to support GraalVM JavaScript as
    javax.script scripting engine for JavaScript. In particular we
    relax some security settings of GraalVM so that scripts can access
    Ant objects.
  - Also Ant enables Nashorn compatibility mode by default, you can
    disable that by setting the magic Ant property
    ant.disable.graal.nashorn.compat to true.
  - If the magic property ant.tmpdir hasn't been set and Ant can
    control the permissions of directories it creates it will create an
    owner-owned temporary directory unaccessible to others as default
    tempdir as soon as a temporary file is created for the first time.</changelog>
  <changelog author="Pedro Monreal &lt;pmonreal@suse.com&gt;" date="1622721600">- Update to 1.10.10
  * SCP (with sftp=true) task would fail if fetching file located
    in root directory.
  * Fixed: javac task would fail if the arguments file it
    (internally) created didn't quote the # character.
  * Make sure LegacyXmlResultFormatter encodes characters illegal
    in XML the same way JUnit5's built-in formatter would.
  * LegacyXmlResultFormatter no longer double-encodes &lt;&gt;&amp; in
    system-err and system-out.
  * Fixes a bug in junitlauncher task's legacy-xml formatter,
    where the testcase representing a @Parameterized JUnit4 test
    wasn't being reported in the XML.
  * Fixes a bug where the ant-testutil-sources.jar that gets
    published to Maven central repository didn't contain any
    source files.
  * The &lt;http&gt; condition didn't follow redirects from http to https.
  * ZipOutputStream now overrides write(int) in order to make sure
    single byte writes get the same treatment as array writes.
  * Fixes a potential deadlock in junitlauncher task when using
    legacy-xml reporter.
  * javaversion condition now has a new "atmost" attribute. See
    the javaversion manual for more details
  * The "listener" nested element of the "junitlauncher" task now
    has a new "useLegacyReportingName" attribute which can be used
    to control the test identifiers names that get reported by the
    listener. See the junitlauncher manual for more details. Note that
    this change also introduces a new "setUseLegacyReportingName" method
    on the org.apache.tools.ant.taskdefs.optional.junitlauncher.TestResultFormatter
    interface. This will break backward compatibility with any of your custom
    result formatters which implemented this interface and such implementations
    are now expected to implement this new method.
  * A new attribute preserveduplicates allows &lt;resourcelist&gt; to
    return the same resource multiple times when set to true.
  * A new attribute filterbeforeconcat in &lt;concat&gt; can be used to
    decide whether the filterchain should be applied to the
    concatenated content (the default) or each nested resource
    individually before concatenating them.
  * The ssh tasks now share a new nested element additionalConfig that can
    be used to set config values for the jsch Session used by the task.
  * Added new discardOutput and discardError properties to redirector
    and the exec, apply and java tasks which can be used to completely
    discard any (error) output. This is a platform independent
    alternative to directiong output to any kind of null device.
  * junitlauncher now prints a more useful and instantaneous summary of
    tests being run, closely matching the junit task's summary.</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1639569600">- Update to 1.10.12:
  * The update includes fixes for the following CVEs:
  CVE-2021-36374, bsc#1188469
    Excessive memory allocation when reading a specially
    crafted ZIP archive or a derived formats.
  CVE-2021-36373, bsc#1188468
    Excessive memory allocation when reading a specially
    crafted TAR archive.
  * The http condition would follow redirects even when "followRedirects" attribute
  was set to "false". This has now been fixed. Bugzilla Report 65489
  * Made sure setting build.compiler to the fully qualified classname
  that corresponds to extJavac or modern has the same effect as using
  the shorter alias names. Bugzilla Report 65539
  * Prevent potential deadlocks in org.apache.tools.ant.IntrospectionHelper.
  Bugzilla Report 65424
  * The implementation of AntClassLoader#findResources() has been changed to optimize
  it for potential performance issues, as those noted at https://issues.jenkins.io/browse/JENKINS-22310?focusedCommentId=197405&amp;page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-197405
  Github Pull Request #151
  * AntClassLoader now implements the ClassLoader#findResource(String) method.
  Github Pull Request #150
  * Ant tries to avoid file name canonicalization when possible.
  Bugzilla Report 65499
  * javadoc task will now look for warning messages in the STDERR stream too
  when "failonwarning" is set to true to account for changes in JDK 17+
  * The tar task now preserves symlinks of nested tarfilesets.
  Github Pull Request #142
- Changes from 1.10.11:
  * a race condition could lead to NullPointerExceptions when running
  tasks in parallel.
  Bugzilla Report 65316
  * fixed potential OutOfMemory errors when reading broken archives
  using the tar or zip formats or formats derived from zip.
  * org.apache.tools.ant.taskdefs.optional.junitlauncher.confined.JUnitLauncherTask now
  has a new protected createExecuteWatchdog() method for allowing it to be overriden.
  Github Pull Request #147
  * Upgraded AntUnit to 1.4.1.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1645531200">- Do not build against the log4j12 packages, use the new reload4j</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1652097600">- Disable a test failing to compile with junit5 5.8.x</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1674043200">- Update ant keyring with new developer keys.
- Update to 1.10.13:
  * Breaking changes:
  - &lt;get&gt; has a new attribute authenticateOnRedirect that can be
    used to prevent Ant from sending the configured credentials
    when following a redirect. It is false by default, which means
    builds that rely on credentials being used on the redirected
    URI may break.
  * Fixed bugs:
  - the PropertyEnumerator change introduced in 1.10.9 proved to
    be not fully backwards compatible when combined with certain
    custom PropertyHelper implementations - for example when using
    AntXtras.
  - legacy-xml reporter of the junitlauncher task now escapes ]]&gt;
    when writing CDATA.
  - &lt;scp&gt; may leak connections when trying to preserve the last
    modified timestamps of files transferred recursively from a
    server.
  - tstamp task would in certain cases parse the SOURCE_DATE_EPOCH
    environment variable value to an incorrect date. This has now
    been fixed.
  - fetch.xml didn't set up non-default repositories propery and
    thus failed to download JAI.
  - When building and installing Ant distribution from source, the
    build script would change permissions on unrelated files in
    the destination directory. This is now fixed and such
    unrelated files in the destination directory will be left
    untouched.
  - parsing tar entries with multiple NUL bytes in their name
    would include garbage bytes as the name included all bytes up
    to the last NUL rather than the first.
  - loadresource might log warnings even though quiet was set to
    true
  - javac task would add paths constructs containing wildcards to
    the internally created argument file where wildcards are not
    allowed
  * Other changes:
  - added an implementation of the MIME Mail sender based on the
    repackaged Jakarta Mail package rather than javax Mail.
  - The "listener" element in the junitlauncher task now supports
    an "extension" attribute to control the filename extension
    of the generated output file from the listener.
  - &lt;ftp&gt; now supports FTPs.
  - DirectoryScanner avoids listing directory contents when it
    known it will never use the information retrieved. This may
    improve performance in some special cases.
  - &lt;manifest&gt; will now create the parent directory of the
    manifestFile attribute if it doesn't exist.
  - org.apache.tools.ant.BuildLogger now has a new method
    getMessageOutputLevel() which returns the currently set
    message output level.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1674734400">- Package and distribute the new ant-jakartamail</changelog>
  <changelog author="Frederic Crozat &lt;fcrozat@suse.com&gt;" date="1683201600">- Add _multibuild to define additional spec files as additional
  flavors.
  Eliminates the need for source package links in OBS.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1693483200">- Update to 1.10.14:
  * Changes that could break older environments:
    + Resource#compareTo now invokes getName rather than toString as
    the later may be costly (for example in the case of a
    StringResource).
    + When using Java 18 or higher, Ant will no longer use Java
    SecurityManager because it has been deprecated for removal and
    by default is disallowed to be set at runtime
    https://openjdk.org/jeps/411.
    This will mean that the "&lt;permissions&gt;" type is no longer
    functional when using Java 18 or higher.
    Furthermore, when using Java 18 or higher, if the build
    executes tasks that call "java.lang.System.exit()" and if
    those tasks aren't running in a forked VM of their own, then
    such tasks will now kill the entire Ant build process. It is
    recommended that such tasks be updated to launch in a forked
    VM so that the System.exit() call will not impact the JVM in
    which Ant process runs.
  * Fixed bugs:
    + log only the stylesheet name in the xslt task.
    + junitlauncher task's "test" and "listener" elements which take
    a "outputDir" property were incorrectly resolving the
    outputDir against the current working directory instead of the
    project's basedir.
    + regexmapper would, in some cases, incorrectly consume
    backslash characters from the "to" attribute, resulting in
    missing backslashes in the output.
    + &lt;fixcrlf&gt;, &lt;replace&gt; and &lt;replaceregexp&gt; now try to preserve
    the file permissions of the files they modify.
    + junitlauncher task would fail if a forked test timed out even
    if haltOnFailure was set to false.
    + fixes a bug in org.apache.tools.zip.ZipOutputStream where,
    even when "zip64Mode" is set to "always", ZipOutputStream may
    not create a CEN extra field data for the entry.
    + legacy-xml listener of junitlauncher task wouldn't report
    certain failures involving junit jupiter dynamic tests.
    + allow.class which was introduced in Ant 1.10.13 release, has
    been removed from this 1.10.14 release. This class was
    introduced in context of the SecurityManager changes in
    Ant 1.10.13, which have now been reverted in Ant 1.10.14,
    since they caused several regressions.
  * Other changes:
    + &lt;fork&gt; element of the junitlauncher task now has a new
    optional "java" attribute which can be used to point to a
    different Java installation for runnning the forked tests.
    + made sure &lt;echoproperties&gt; sorts the echoed properties on
    JDK9+ as well.
    + org.apache.tools.ant.taskdefs.Recorder class now introduces a
    setLogLevel(LogLevel level) method.
    + The &lt;fork&gt; element of junitlaunchertask now allows a
    "forkMode" attribute. forkMode=perTestClass can now be used to
    launch each test class in a separate forked JVM.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1694433600">- Added patch:
  * reproducible-propertyfile-task.patch
    + Debian patch to improve propertyfile task in RPM builds by
    using the date specified by the SOURCE_DATE_EPOCH variable
    in the header of the .properties file generated</changelog>
  <changelog author="Anton Shvetz &lt;shvetz.anton@gmail.com&gt;" date="1706270400">- Add forgotten univocity-parsers to
  %{_sysconfdir}/ant.d/junitlauncher (needed to run unit tests
  annotated with @CsvSource and @CsvFileSource)</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1708430400">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1714219200">- Put hamcrest on the classpath of ant-junit module</changelog>
  <changelog author="Anton Shvetz &lt;shvetz.anton@gmail.com&gt;" date="1714824000">- Add forgotten open-test-reporting/events to
  %{_sysconfdir}/ant.d/junitlauncher</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1721304000">- Added patches:
  * reproducible-jar-mtime.patch
    + make the modification times of files in a jar file
    reproducible
  * reproducible-javadoc.patch
    + make javadoc generation reproducible: don't generate
    timestamps, and normalize locale and encoding</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1723550400">- Modified patches:
  * reproducible-jar-mtime.patch
    + attempt more normalization of mtimes in jar files
  * reproducible-javadoc.patch
    + fix the patch to work with custom doclets too</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1726574400">- Modified patch:
  * reproducible-jar-mtime.patch
    + try different approach to get bit-reproducible builds</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1727611200">- Fix build after removal of the default %%{java_home} define</changelog>
  <changelog author="Gus Kenion &lt;gus.kenion@suse.com&gt;" date="1730721600">- Upgrade to version 1.10.15
  * Bug fixes:
    + Fixes an regression, introduced in Ant 1.10.13, where
    pathconvert would unintentionally trim the string output.
    Bugzilla Report 67082
    + Fixes a bug in &lt;depend&gt; task which would throw a
    ClassFormatError if it encountered constant pool entry type
    17.  Bugzilla Report 66552
    + Launching ant.bat from within a Java program using
    java.lang.Runtime.exec() could result in an unexpected
    failure. This has now been fixed.  Bugzilla Report 67417
    + Fixes an issue in bootstrap.bat when trying to detect if the
    "javac" command in the JDK supports the "--release" option.
    Github Pull Request #205
    + Fixes a bug in
    org.apache.tools.ant.taskdefs.email.EmailAddress which would
    throw a java.lang.StringIndexOutOfBoundsException if the
    email address passed to its constructor was an empty String.
    Bugzilla Report 68462
    + legacy-xml reporter of junitlauncher task was using a
    non-buffered outputstream when generating the report. This
    introduces severe performance penalties since the writes
    translate to native write system calls. This has been fixed
    to use a BufferedOutputStream.  Github Pull Request #207
  * Other changes:
    + exec task now logs the process' non-zero exit code at INFO
    level instead of the previous ERROR level. The following
    message from exec task is the one who's level has been
    changed:
    Result: 1
    Bugzilla Report 26453
    + Removes direct references to
    com.sun.net.ssl.internal.ssl.Provider class from the mail
    task, since that internal JDK class is no longer available in
    recent versions of Java.  Bugzilla Report 68460
    + &lt;replaceregexp&gt; has a new failOnError attribute which, when
    enabled, makes the task throw a BuildException for certain
    error cases that will only be logged otherwise.  Github Pull
    Request #206
    + &lt;ftp&gt; task now has a new "useSecureDataChannel" attribute
    which can be set to true, when ftps is enabled, to enable
    secure data channel.  Bugzilla Report 68773
- Unify .spec files
  * remove ant-antlr.changes
  * remove ant-antlr.spec
  * remove ant-junit.changes
  * remove ant-junit.spec
  * remove ant-junit5.changes
  * remove ant-junit5.spec</changelog>
</package>
<package pkgid="fb938bf3f767220e4a445f106252912ef3d72063dd7ee2d056c1846ccea667512b694a35a4819f4aee1cafb838d355e99831f5aeefbb7083f359d1d00e399344" name="ant-manual" arch="noarch">
  <version epoch="0" ver="1.10.15" rel="1.1"/>
  <changelog author="Pedro Monreal &lt;pmonreal@suse.com&gt;" date="1622721600">- Update to 1.10.10
  * SCP (with sftp=true) task would fail if fetching file located
    in root directory.
  * Fixed: javac task would fail if the arguments file it
    (internally) created didn't quote the # character.
  * Make sure LegacyXmlResultFormatter encodes characters illegal
    in XML the same way JUnit5's built-in formatter would.
  * LegacyXmlResultFormatter no longer double-encodes &lt;&gt;&amp; in
    system-err and system-out.
  * Fixes a bug in junitlauncher task's legacy-xml formatter,
    where the testcase representing a @Parameterized JUnit4 test
    wasn't being reported in the XML.
  * Fixes a bug where the ant-testutil-sources.jar that gets
    published to Maven central repository didn't contain any
    source files.
  * The &lt;http&gt; condition didn't follow redirects from http to https.
  * ZipOutputStream now overrides write(int) in order to make sure
    single byte writes get the same treatment as array writes.
  * Fixes a potential deadlock in junitlauncher task when using
    legacy-xml reporter.
  * javaversion condition now has a new "atmost" attribute. See
    the javaversion manual for more details
  * The "listener" nested element of the "junitlauncher" task now
    has a new "useLegacyReportingName" attribute which can be used
    to control the test identifiers names that get reported by the
    listener. See the junitlauncher manual for more details. Note that
    this change also introduces a new "setUseLegacyReportingName" method
    on the org.apache.tools.ant.taskdefs.optional.junitlauncher.TestResultFormatter
    interface. This will break backward compatibility with any of your custom
    result formatters which implemented this interface and such implementations
    are now expected to implement this new method.
  * A new attribute preserveduplicates allows &lt;resourcelist&gt; to
    return the same resource multiple times when set to true.
  * A new attribute filterbeforeconcat in &lt;concat&gt; can be used to
    decide whether the filterchain should be applied to the
    concatenated content (the default) or each nested resource
    individually before concatenating them.
  * The ssh tasks now share a new nested element additionalConfig that can
    be used to set config values for the jsch Session used by the task.
  * Added new discardOutput and discardError properties to redirector
    and the exec, apply and java tasks which can be used to completely
    discard any (error) output. This is a platform independent
    alternative to directiong output to any kind of null device.
  * junitlauncher now prints a more useful and instantaneous summary of
    tests being run, closely matching the junit task's summary.</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1639569600">- Update to 1.10.12:
  * The update includes fixes for the following CVEs:
  CVE-2021-36374, bsc#1188469
    Excessive memory allocation when reading a specially
    crafted ZIP archive or a derived formats.
  CVE-2021-36373, bsc#1188468
    Excessive memory allocation when reading a specially
    crafted TAR archive.
  * The http condition would follow redirects even when "followRedirects" attribute
  was set to "false". This has now been fixed. Bugzilla Report 65489
  * Made sure setting build.compiler to the fully qualified classname
  that corresponds to extJavac or modern has the same effect as using
  the shorter alias names. Bugzilla Report 65539
  * Prevent potential deadlocks in org.apache.tools.ant.IntrospectionHelper.
  Bugzilla Report 65424
  * The implementation of AntClassLoader#findResources() has been changed to optimize
  it for potential performance issues, as those noted at https://issues.jenkins.io/browse/JENKINS-22310?focusedCommentId=197405&amp;page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-197405
  Github Pull Request #151
  * AntClassLoader now implements the ClassLoader#findResource(String) method.
  Github Pull Request #150
  * Ant tries to avoid file name canonicalization when possible.
  Bugzilla Report 65499
  * javadoc task will now look for warning messages in the STDERR stream too
  when "failonwarning" is set to true to account for changes in JDK 17+
  * The tar task now preserves symlinks of nested tarfilesets.
  Github Pull Request #142
- Changes from 1.10.11:
  * a race condition could lead to NullPointerExceptions when running
  tasks in parallel.
  Bugzilla Report 65316
  * fixed potential OutOfMemory errors when reading broken archives
  using the tar or zip formats or formats derived from zip.
  * org.apache.tools.ant.taskdefs.optional.junitlauncher.confined.JUnitLauncherTask now
  has a new protected createExecuteWatchdog() method for allowing it to be overriden.
  Github Pull Request #147
  * Upgraded AntUnit to 1.4.1.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1645531200">- Do not build against the log4j12 packages, use the new reload4j</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1652097600">- Disable a test failing to compile with junit5 5.8.x</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1674043200">- Update ant keyring with new developer keys.
- Update to 1.10.13:
  * Breaking changes:
  - &lt;get&gt; has a new attribute authenticateOnRedirect that can be
    used to prevent Ant from sending the configured credentials
    when following a redirect. It is false by default, which means
    builds that rely on credentials being used on the redirected
    URI may break.
  * Fixed bugs:
  - the PropertyEnumerator change introduced in 1.10.9 proved to
    be not fully backwards compatible when combined with certain
    custom PropertyHelper implementations - for example when using
    AntXtras.
  - legacy-xml reporter of the junitlauncher task now escapes ]]&gt;
    when writing CDATA.
  - &lt;scp&gt; may leak connections when trying to preserve the last
    modified timestamps of files transferred recursively from a
    server.
  - tstamp task would in certain cases parse the SOURCE_DATE_EPOCH
    environment variable value to an incorrect date. This has now
    been fixed.
  - fetch.xml didn't set up non-default repositories propery and
    thus failed to download JAI.
  - When building and installing Ant distribution from source, the
    build script would change permissions on unrelated files in
    the destination directory. This is now fixed and such
    unrelated files in the destination directory will be left
    untouched.
  - parsing tar entries with multiple NUL bytes in their name
    would include garbage bytes as the name included all bytes up
    to the last NUL rather than the first.
  - loadresource might log warnings even though quiet was set to
    true
  - javac task would add paths constructs containing wildcards to
    the internally created argument file where wildcards are not
    allowed
  * Other changes:
  - added an implementation of the MIME Mail sender based on the
    repackaged Jakarta Mail package rather than javax Mail.
  - The "listener" element in the junitlauncher task now supports
    an "extension" attribute to control the filename extension
    of the generated output file from the listener.
  - &lt;ftp&gt; now supports FTPs.
  - DirectoryScanner avoids listing directory contents when it
    known it will never use the information retrieved. This may
    improve performance in some special cases.
  - &lt;manifest&gt; will now create the parent directory of the
    manifestFile attribute if it doesn't exist.
  - org.apache.tools.ant.BuildLogger now has a new method
    getMessageOutputLevel() which returns the currently set
    message output level.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1674734400">- Package and distribute the new ant-jakartamail</changelog>
  <changelog author="Frederic Crozat &lt;fcrozat@suse.com&gt;" date="1683201600">- Add _multibuild to define additional spec files as additional
  flavors.
  Eliminates the need for source package links in OBS.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1693483200">- Update to 1.10.14:
  * Changes that could break older environments:
    + Resource#compareTo now invokes getName rather than toString as
    the later may be costly (for example in the case of a
    StringResource).
    + When using Java 18 or higher, Ant will no longer use Java
    SecurityManager because it has been deprecated for removal and
    by default is disallowed to be set at runtime
    https://openjdk.org/jeps/411.
    This will mean that the "&lt;permissions&gt;" type is no longer
    functional when using Java 18 or higher.
    Furthermore, when using Java 18 or higher, if the build
    executes tasks that call "java.lang.System.exit()" and if
    those tasks aren't running in a forked VM of their own, then
    such tasks will now kill the entire Ant build process. It is
    recommended that such tasks be updated to launch in a forked
    VM so that the System.exit() call will not impact the JVM in
    which Ant process runs.
  * Fixed bugs:
    + log only the stylesheet name in the xslt task.
    + junitlauncher task's "test" and "listener" elements which take
    a "outputDir" property were incorrectly resolving the
    outputDir against the current working directory instead of the
    project's basedir.
    + regexmapper would, in some cases, incorrectly consume
    backslash characters from the "to" attribute, resulting in
    missing backslashes in the output.
    + &lt;fixcrlf&gt;, &lt;replace&gt; and &lt;replaceregexp&gt; now try to preserve
    the file permissions of the files they modify.
    + junitlauncher task would fail if a forked test timed out even
    if haltOnFailure was set to false.
    + fixes a bug in org.apache.tools.zip.ZipOutputStream where,
    even when "zip64Mode" is set to "always", ZipOutputStream may
    not create a CEN extra field data for the entry.
    + legacy-xml listener of junitlauncher task wouldn't report
    certain failures involving junit jupiter dynamic tests.
    + allow.class which was introduced in Ant 1.10.13 release, has
    been removed from this 1.10.14 release. This class was
    introduced in context of the SecurityManager changes in
    Ant 1.10.13, which have now been reverted in Ant 1.10.14,
    since they caused several regressions.
  * Other changes:
    + &lt;fork&gt; element of the junitlauncher task now has a new
    optional "java" attribute which can be used to point to a
    different Java installation for runnning the forked tests.
    + made sure &lt;echoproperties&gt; sorts the echoed properties on
    JDK9+ as well.
    + org.apache.tools.ant.taskdefs.Recorder class now introduces a
    setLogLevel(LogLevel level) method.
    + The &lt;fork&gt; element of junitlaunchertask now allows a
    "forkMode" attribute. forkMode=perTestClass can now be used to
    launch each test class in a separate forked JVM.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1694433600">- Added patch:
  * reproducible-propertyfile-task.patch
    + Debian patch to improve propertyfile task in RPM builds by
    using the date specified by the SOURCE_DATE_EPOCH variable
    in the header of the .properties file generated</changelog>
  <changelog author="Anton Shvetz &lt;shvetz.anton@gmail.com&gt;" date="1706270400">- Add forgotten univocity-parsers to
  %{_sysconfdir}/ant.d/junitlauncher (needed to run unit tests
  annotated with @CsvSource and @CsvFileSource)</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1708430400">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1714219200">- Put hamcrest on the classpath of ant-junit module</changelog>
  <changelog author="Anton Shvetz &lt;shvetz.anton@gmail.com&gt;" date="1714824000">- Add forgotten open-test-reporting/events to
  %{_sysconfdir}/ant.d/junitlauncher</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1721304000">- Added patches:
  * reproducible-jar-mtime.patch
    + make the modification times of files in a jar file
    reproducible
  * reproducible-javadoc.patch
    + make javadoc generation reproducible: don't generate
    timestamps, and normalize locale and encoding</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1723550400">- Modified patches:
  * reproducible-jar-mtime.patch
    + attempt more normalization of mtimes in jar files
  * reproducible-javadoc.patch
    + fix the patch to work with custom doclets too</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1726574400">- Modified patch:
  * reproducible-jar-mtime.patch
    + try different approach to get bit-reproducible builds</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1727611200">- Fix build after removal of the default %%{java_home} define</changelog>
  <changelog author="Gus Kenion &lt;gus.kenion@suse.com&gt;" date="1730721600">- Upgrade to version 1.10.15
  * Bug fixes:
    + Fixes an regression, introduced in Ant 1.10.13, where
    pathconvert would unintentionally trim the string output.
    Bugzilla Report 67082
    + Fixes a bug in &lt;depend&gt; task which would throw a
    ClassFormatError if it encountered constant pool entry type
    17.  Bugzilla Report 66552
    + Launching ant.bat from within a Java program using
    java.lang.Runtime.exec() could result in an unexpected
    failure. This has now been fixed.  Bugzilla Report 67417
    + Fixes an issue in bootstrap.bat when trying to detect if the
    "javac" command in the JDK supports the "--release" option.
    Github Pull Request #205
    + Fixes a bug in
    org.apache.tools.ant.taskdefs.email.EmailAddress which would
    throw a java.lang.StringIndexOutOfBoundsException if the
    email address passed to its constructor was an empty String.
    Bugzilla Report 68462
    + legacy-xml reporter of junitlauncher task was using a
    non-buffered outputstream when generating the report. This
    introduces severe performance penalties since the writes
    translate to native write system calls. This has been fixed
    to use a BufferedOutputStream.  Github Pull Request #207
  * Other changes:
    + exec task now logs the process' non-zero exit code at INFO
    level instead of the previous ERROR level. The following
    message from exec task is the one who's level has been
    changed:
    Result: 1
    Bugzilla Report 26453
    + Removes direct references to
    com.sun.net.ssl.internal.ssl.Provider class from the mail
    task, since that internal JDK class is no longer available in
    recent versions of Java.  Bugzilla Report 68460
    + &lt;replaceregexp&gt; has a new failOnError attribute which, when
    enabled, makes the task throw a BuildException for certain
    error cases that will only be logged otherwise.  Github Pull
    Request #206
    + &lt;ftp&gt; task now has a new "useSecureDataChannel" attribute
    which can be set to true, when ftps is enabled, to enable
    secure data channel.  Bugzilla Report 68773
- Unify .spec files
  * remove ant-antlr.changes
  * remove ant-antlr.spec
  * remove ant-junit.changes
  * remove ant-junit.spec
  * remove ant-junit5.changes
  * remove ant-junit5.spec</changelog>
</package>
<package pkgid="f46e5bb2ab0a5fac95e9ce9c8ba0743c901126c0c4d9847686d6aa9d9fb191727600bb527d803b116862852d6170aaa93c1ab27ef2771d3a9bf5ec7ceef651e9" name="ant-scripts" arch="noarch">
  <version epoch="0" ver="1.10.15" rel="1.1"/>
  <changelog author="Pedro Monreal &lt;pmonreal@suse.com&gt;" date="1622721600">- Update to 1.10.10
  * SCP (with sftp=true) task would fail if fetching file located
    in root directory.
  * Fixed: javac task would fail if the arguments file it
    (internally) created didn't quote the # character.
  * Make sure LegacyXmlResultFormatter encodes characters illegal
    in XML the same way JUnit5's built-in formatter would.
  * LegacyXmlResultFormatter no longer double-encodes &lt;&gt;&amp; in
    system-err and system-out.
  * Fixes a bug in junitlauncher task's legacy-xml formatter,
    where the testcase representing a @Parameterized JUnit4 test
    wasn't being reported in the XML.
  * Fixes a bug where the ant-testutil-sources.jar that gets
    published to Maven central repository didn't contain any
    source files.
  * The &lt;http&gt; condition didn't follow redirects from http to https.
  * ZipOutputStream now overrides write(int) in order to make sure
    single byte writes get the same treatment as array writes.
  * Fixes a potential deadlock in junitlauncher task when using
    legacy-xml reporter.
  * javaversion condition now has a new "atmost" attribute. See
    the javaversion manual for more details
  * The "listener" nested element of the "junitlauncher" task now
    has a new "useLegacyReportingName" attribute which can be used
    to control the test identifiers names that get reported by the
    listener. See the junitlauncher manual for more details. Note that
    this change also introduces a new "setUseLegacyReportingName" method
    on the org.apache.tools.ant.taskdefs.optional.junitlauncher.TestResultFormatter
    interface. This will break backward compatibility with any of your custom
    result formatters which implemented this interface and such implementations
    are now expected to implement this new method.
  * A new attribute preserveduplicates allows &lt;resourcelist&gt; to
    return the same resource multiple times when set to true.
  * A new attribute filterbeforeconcat in &lt;concat&gt; can be used to
    decide whether the filterchain should be applied to the
    concatenated content (the default) or each nested resource
    individually before concatenating them.
  * The ssh tasks now share a new nested element additionalConfig that can
    be used to set config values for the jsch Session used by the task.
  * Added new discardOutput and discardError properties to redirector
    and the exec, apply and java tasks which can be used to completely
    discard any (error) output. This is a platform independent
    alternative to directiong output to any kind of null device.
  * junitlauncher now prints a more useful and instantaneous summary of
    tests being run, closely matching the junit task's summary.</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1639569600">- Update to 1.10.12:
  * The update includes fixes for the following CVEs:
  CVE-2021-36374, bsc#1188469
    Excessive memory allocation when reading a specially
    crafted ZIP archive or a derived formats.
  CVE-2021-36373, bsc#1188468
    Excessive memory allocation when reading a specially
    crafted TAR archive.
  * The http condition would follow redirects even when "followRedirects" attribute
  was set to "false". This has now been fixed. Bugzilla Report 65489
  * Made sure setting build.compiler to the fully qualified classname
  that corresponds to extJavac or modern has the same effect as using
  the shorter alias names. Bugzilla Report 65539
  * Prevent potential deadlocks in org.apache.tools.ant.IntrospectionHelper.
  Bugzilla Report 65424
  * The implementation of AntClassLoader#findResources() has been changed to optimize
  it for potential performance issues, as those noted at https://issues.jenkins.io/browse/JENKINS-22310?focusedCommentId=197405&amp;page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-197405
  Github Pull Request #151
  * AntClassLoader now implements the ClassLoader#findResource(String) method.
  Github Pull Request #150
  * Ant tries to avoid file name canonicalization when possible.
  Bugzilla Report 65499
  * javadoc task will now look for warning messages in the STDERR stream too
  when "failonwarning" is set to true to account for changes in JDK 17+
  * The tar task now preserves symlinks of nested tarfilesets.
  Github Pull Request #142
- Changes from 1.10.11:
  * a race condition could lead to NullPointerExceptions when running
  tasks in parallel.
  Bugzilla Report 65316
  * fixed potential OutOfMemory errors when reading broken archives
  using the tar or zip formats or formats derived from zip.
  * org.apache.tools.ant.taskdefs.optional.junitlauncher.confined.JUnitLauncherTask now
  has a new protected createExecuteWatchdog() method for allowing it to be overriden.
  Github Pull Request #147
  * Upgraded AntUnit to 1.4.1.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1645531200">- Do not build against the log4j12 packages, use the new reload4j</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1652097600">- Disable a test failing to compile with junit5 5.8.x</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1674043200">- Update ant keyring with new developer keys.
- Update to 1.10.13:
  * Breaking changes:
  - &lt;get&gt; has a new attribute authenticateOnRedirect that can be
    used to prevent Ant from sending the configured credentials
    when following a redirect. It is false by default, which means
    builds that rely on credentials being used on the redirected
    URI may break.
  * Fixed bugs:
  - the PropertyEnumerator change introduced in 1.10.9 proved to
    be not fully backwards compatible when combined with certain
    custom PropertyHelper implementations - for example when using
    AntXtras.
  - legacy-xml reporter of the junitlauncher task now escapes ]]&gt;
    when writing CDATA.
  - &lt;scp&gt; may leak connections when trying to preserve the last
    modified timestamps of files transferred recursively from a
    server.
  - tstamp task would in certain cases parse the SOURCE_DATE_EPOCH
    environment variable value to an incorrect date. This has now
    been fixed.
  - fetch.xml didn't set up non-default repositories propery and
    thus failed to download JAI.
  - When building and installing Ant distribution from source, the
    build script would change permissions on unrelated files in
    the destination directory. This is now fixed and such
    unrelated files in the destination directory will be left
    untouched.
  - parsing tar entries with multiple NUL bytes in their name
    would include garbage bytes as the name included all bytes up
    to the last NUL rather than the first.
  - loadresource might log warnings even though quiet was set to
    true
  - javac task would add paths constructs containing wildcards to
    the internally created argument file where wildcards are not
    allowed
  * Other changes:
  - added an implementation of the MIME Mail sender based on the
    repackaged Jakarta Mail package rather than javax Mail.
  - The "listener" element in the junitlauncher task now supports
    an "extension" attribute to control the filename extension
    of the generated output file from the listener.
  - &lt;ftp&gt; now supports FTPs.
  - DirectoryScanner avoids listing directory contents when it
    known it will never use the information retrieved. This may
    improve performance in some special cases.
  - &lt;manifest&gt; will now create the parent directory of the
    manifestFile attribute if it doesn't exist.
  - org.apache.tools.ant.BuildLogger now has a new method
    getMessageOutputLevel() which returns the currently set
    message output level.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1674734400">- Package and distribute the new ant-jakartamail</changelog>
  <changelog author="Frederic Crozat &lt;fcrozat@suse.com&gt;" date="1683201600">- Add _multibuild to define additional spec files as additional
  flavors.
  Eliminates the need for source package links in OBS.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1693483200">- Update to 1.10.14:
  * Changes that could break older environments:
    + Resource#compareTo now invokes getName rather than toString as
    the later may be costly (for example in the case of a
    StringResource).
    + When using Java 18 or higher, Ant will no longer use Java
    SecurityManager because it has been deprecated for removal and
    by default is disallowed to be set at runtime
    https://openjdk.org/jeps/411.
    This will mean that the "&lt;permissions&gt;" type is no longer
    functional when using Java 18 or higher.
    Furthermore, when using Java 18 or higher, if the build
    executes tasks that call "java.lang.System.exit()" and if
    those tasks aren't running in a forked VM of their own, then
    such tasks will now kill the entire Ant build process. It is
    recommended that such tasks be updated to launch in a forked
    VM so that the System.exit() call will not impact the JVM in
    which Ant process runs.
  * Fixed bugs:
    + log only the stylesheet name in the xslt task.
    + junitlauncher task's "test" and "listener" elements which take
    a "outputDir" property were incorrectly resolving the
    outputDir against the current working directory instead of the
    project's basedir.
    + regexmapper would, in some cases, incorrectly consume
    backslash characters from the "to" attribute, resulting in
    missing backslashes in the output.
    + &lt;fixcrlf&gt;, &lt;replace&gt; and &lt;replaceregexp&gt; now try to preserve
    the file permissions of the files they modify.
    + junitlauncher task would fail if a forked test timed out even
    if haltOnFailure was set to false.
    + fixes a bug in org.apache.tools.zip.ZipOutputStream where,
    even when "zip64Mode" is set to "always", ZipOutputStream may
    not create a CEN extra field data for the entry.
    + legacy-xml listener of junitlauncher task wouldn't report
    certain failures involving junit jupiter dynamic tests.
    + allow.class which was introduced in Ant 1.10.13 release, has
    been removed from this 1.10.14 release. This class was
    introduced in context of the SecurityManager changes in
    Ant 1.10.13, which have now been reverted in Ant 1.10.14,
    since they caused several regressions.
  * Other changes:
    + &lt;fork&gt; element of the junitlauncher task now has a new
    optional "java" attribute which can be used to point to a
    different Java installation for runnning the forked tests.
    + made sure &lt;echoproperties&gt; sorts the echoed properties on
    JDK9+ as well.
    + org.apache.tools.ant.taskdefs.Recorder class now introduces a
    setLogLevel(LogLevel level) method.
    + The &lt;fork&gt; element of junitlaunchertask now allows a
    "forkMode" attribute. forkMode=perTestClass can now be used to
    launch each test class in a separate forked JVM.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1694433600">- Added patch:
  * reproducible-propertyfile-task.patch
    + Debian patch to improve propertyfile task in RPM builds by
    using the date specified by the SOURCE_DATE_EPOCH variable
    in the header of the .properties file generated</changelog>
  <changelog author="Anton Shvetz &lt;shvetz.anton@gmail.com&gt;" date="1706270400">- Add forgotten univocity-parsers to
  %{_sysconfdir}/ant.d/junitlauncher (needed to run unit tests
  annotated with @CsvSource and @CsvFileSource)</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1708430400">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1714219200">- Put hamcrest on the classpath of ant-junit module</changelog>
  <changelog author="Anton Shvetz &lt;shvetz.anton@gmail.com&gt;" date="1714824000">- Add forgotten open-test-reporting/events to
  %{_sysconfdir}/ant.d/junitlauncher</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1721304000">- Added patches:
  * reproducible-jar-mtime.patch
    + make the modification times of files in a jar file
    reproducible
  * reproducible-javadoc.patch
    + make javadoc generation reproducible: don't generate
    timestamps, and normalize locale and encoding</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1723550400">- Modified patches:
  * reproducible-jar-mtime.patch
    + attempt more normalization of mtimes in jar files
  * reproducible-javadoc.patch
    + fix the patch to work with custom doclets too</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1726574400">- Modified patch:
  * reproducible-jar-mtime.patch
    + try different approach to get bit-reproducible builds</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1727611200">- Fix build after removal of the default %%{java_home} define</changelog>
  <changelog author="Gus Kenion &lt;gus.kenion@suse.com&gt;" date="1730721600">- Upgrade to version 1.10.15
  * Bug fixes:
    + Fixes an regression, introduced in Ant 1.10.13, where
    pathconvert would unintentionally trim the string output.
    Bugzilla Report 67082
    + Fixes a bug in &lt;depend&gt; task which would throw a
    ClassFormatError if it encountered constant pool entry type
    17.  Bugzilla Report 66552
    + Launching ant.bat from within a Java program using
    java.lang.Runtime.exec() could result in an unexpected
    failure. This has now been fixed.  Bugzilla Report 67417
    + Fixes an issue in bootstrap.bat when trying to detect if the
    "javac" command in the JDK supports the "--release" option.
    Github Pull Request #205
    + Fixes a bug in
    org.apache.tools.ant.taskdefs.email.EmailAddress which would
    throw a java.lang.StringIndexOutOfBoundsException if the
    email address passed to its constructor was an empty String.
    Bugzilla Report 68462
    + legacy-xml reporter of junitlauncher task was using a
    non-buffered outputstream when generating the report. This
    introduces severe performance penalties since the writes
    translate to native write system calls. This has been fixed
    to use a BufferedOutputStream.  Github Pull Request #207
  * Other changes:
    + exec task now logs the process' non-zero exit code at INFO
    level instead of the previous ERROR level. The following
    message from exec task is the one who's level has been
    changed:
    Result: 1
    Bugzilla Report 26453
    + Removes direct references to
    com.sun.net.ssl.internal.ssl.Provider class from the mail
    task, since that internal JDK class is no longer available in
    recent versions of Java.  Bugzilla Report 68460
    + &lt;replaceregexp&gt; has a new failOnError attribute which, when
    enabled, makes the task throw a BuildException for certain
    error cases that will only be logged otherwise.  Github Pull
    Request #206
    + &lt;ftp&gt; task now has a new "useSecureDataChannel" attribute
    which can be set to true, when ftps is enabled, to enable
    secure data channel.  Bugzilla Report 68773
- Unify .spec files
  * remove ant-antlr.changes
  * remove ant-antlr.spec
  * remove ant-junit.changes
  * remove ant-junit.spec
  * remove ant-junit5.changes
  * remove ant-junit5.spec</changelog>
</package>
<package pkgid="b2e3510baba8f145f109894718619692618e7b721127ff8c7be42ab76f1325a9d31f2a372125e1643ffed5c288c7c546c7fdb0c5683ef3a2991485343268826a" name="ant-swing" arch="noarch">
  <version epoch="0" ver="1.10.15" rel="1.1"/>
  <changelog author="Pedro Monreal &lt;pmonreal@suse.com&gt;" date="1622721600">- Update to 1.10.10
  * SCP (with sftp=true) task would fail if fetching file located
    in root directory.
  * Fixed: javac task would fail if the arguments file it
    (internally) created didn't quote the # character.
  * Make sure LegacyXmlResultFormatter encodes characters illegal
    in XML the same way JUnit5's built-in formatter would.
  * LegacyXmlResultFormatter no longer double-encodes &lt;&gt;&amp; in
    system-err and system-out.
  * Fixes a bug in junitlauncher task's legacy-xml formatter,
    where the testcase representing a @Parameterized JUnit4 test
    wasn't being reported in the XML.
  * Fixes a bug where the ant-testutil-sources.jar that gets
    published to Maven central repository didn't contain any
    source files.
  * The &lt;http&gt; condition didn't follow redirects from http to https.
  * ZipOutputStream now overrides write(int) in order to make sure
    single byte writes get the same treatment as array writes.
  * Fixes a potential deadlock in junitlauncher task when using
    legacy-xml reporter.
  * javaversion condition now has a new "atmost" attribute. See
    the javaversion manual for more details
  * The "listener" nested element of the "junitlauncher" task now
    has a new "useLegacyReportingName" attribute which can be used
    to control the test identifiers names that get reported by the
    listener. See the junitlauncher manual for more details. Note that
    this change also introduces a new "setUseLegacyReportingName" method
    on the org.apache.tools.ant.taskdefs.optional.junitlauncher.TestResultFormatter
    interface. This will break backward compatibility with any of your custom
    result formatters which implemented this interface and such implementations
    are now expected to implement this new method.
  * A new attribute preserveduplicates allows &lt;resourcelist&gt; to
    return the same resource multiple times when set to true.
  * A new attribute filterbeforeconcat in &lt;concat&gt; can be used to
    decide whether the filterchain should be applied to the
    concatenated content (the default) or each nested resource
    individually before concatenating them.
  * The ssh tasks now share a new nested element additionalConfig that can
    be used to set config values for the jsch Session used by the task.
  * Added new discardOutput and discardError properties to redirector
    and the exec, apply and java tasks which can be used to completely
    discard any (error) output. This is a platform independent
    alternative to directiong output to any kind of null device.
  * junitlauncher now prints a more useful and instantaneous summary of
    tests being run, closely matching the junit task's summary.</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1639569600">- Update to 1.10.12:
  * The update includes fixes for the following CVEs:
  CVE-2021-36374, bsc#1188469
    Excessive memory allocation when reading a specially
    crafted ZIP archive or a derived formats.
  CVE-2021-36373, bsc#1188468
    Excessive memory allocation when reading a specially
    crafted TAR archive.
  * The http condition would follow redirects even when "followRedirects" attribute
  was set to "false". This has now been fixed. Bugzilla Report 65489
  * Made sure setting build.compiler to the fully qualified classname
  that corresponds to extJavac or modern has the same effect as using
  the shorter alias names. Bugzilla Report 65539
  * Prevent potential deadlocks in org.apache.tools.ant.IntrospectionHelper.
  Bugzilla Report 65424
  * The implementation of AntClassLoader#findResources() has been changed to optimize
  it for potential performance issues, as those noted at https://issues.jenkins.io/browse/JENKINS-22310?focusedCommentId=197405&amp;page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-197405
  Github Pull Request #151
  * AntClassLoader now implements the ClassLoader#findResource(String) method.
  Github Pull Request #150
  * Ant tries to avoid file name canonicalization when possible.
  Bugzilla Report 65499
  * javadoc task will now look for warning messages in the STDERR stream too
  when "failonwarning" is set to true to account for changes in JDK 17+
  * The tar task now preserves symlinks of nested tarfilesets.
  Github Pull Request #142
- Changes from 1.10.11:
  * a race condition could lead to NullPointerExceptions when running
  tasks in parallel.
  Bugzilla Report 65316
  * fixed potential OutOfMemory errors when reading broken archives
  using the tar or zip formats or formats derived from zip.
  * org.apache.tools.ant.taskdefs.optional.junitlauncher.confined.JUnitLauncherTask now
  has a new protected createExecuteWatchdog() method for allowing it to be overriden.
  Github Pull Request #147
  * Upgraded AntUnit to 1.4.1.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1645531200">- Do not build against the log4j12 packages, use the new reload4j</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1652097600">- Disable a test failing to compile with junit5 5.8.x</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1674043200">- Update ant keyring with new developer keys.
- Update to 1.10.13:
  * Breaking changes:
  - &lt;get&gt; has a new attribute authenticateOnRedirect that can be
    used to prevent Ant from sending the configured credentials
    when following a redirect. It is false by default, which means
    builds that rely on credentials being used on the redirected
    URI may break.
  * Fixed bugs:
  - the PropertyEnumerator change introduced in 1.10.9 proved to
    be not fully backwards compatible when combined with certain
    custom PropertyHelper implementations - for example when using
    AntXtras.
  - legacy-xml reporter of the junitlauncher task now escapes ]]&gt;
    when writing CDATA.
  - &lt;scp&gt; may leak connections when trying to preserve the last
    modified timestamps of files transferred recursively from a
    server.
  - tstamp task would in certain cases parse the SOURCE_DATE_EPOCH
    environment variable value to an incorrect date. This has now
    been fixed.
  - fetch.xml didn't set up non-default repositories propery and
    thus failed to download JAI.
  - When building and installing Ant distribution from source, the
    build script would change permissions on unrelated files in
    the destination directory. This is now fixed and such
    unrelated files in the destination directory will be left
    untouched.
  - parsing tar entries with multiple NUL bytes in their name
    would include garbage bytes as the name included all bytes up
    to the last NUL rather than the first.
  - loadresource might log warnings even though quiet was set to
    true
  - javac task would add paths constructs containing wildcards to
    the internally created argument file where wildcards are not
    allowed
  * Other changes:
  - added an implementation of the MIME Mail sender based on the
    repackaged Jakarta Mail package rather than javax Mail.
  - The "listener" element in the junitlauncher task now supports
    an "extension" attribute to control the filename extension
    of the generated output file from the listener.
  - &lt;ftp&gt; now supports FTPs.
  - DirectoryScanner avoids listing directory contents when it
    known it will never use the information retrieved. This may
    improve performance in some special cases.
  - &lt;manifest&gt; will now create the parent directory of the
    manifestFile attribute if it doesn't exist.
  - org.apache.tools.ant.BuildLogger now has a new method
    getMessageOutputLevel() which returns the currently set
    message output level.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1674734400">- Package and distribute the new ant-jakartamail</changelog>
  <changelog author="Frederic Crozat &lt;fcrozat@suse.com&gt;" date="1683201600">- Add _multibuild to define additional spec files as additional
  flavors.
  Eliminates the need for source package links in OBS.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1693483200">- Update to 1.10.14:
  * Changes that could break older environments:
    + Resource#compareTo now invokes getName rather than toString as
    the later may be costly (for example in the case of a
    StringResource).
    + When using Java 18 or higher, Ant will no longer use Java
    SecurityManager because it has been deprecated for removal and
    by default is disallowed to be set at runtime
    https://openjdk.org/jeps/411.
    This will mean that the "&lt;permissions&gt;" type is no longer
    functional when using Java 18 or higher.
    Furthermore, when using Java 18 or higher, if the build
    executes tasks that call "java.lang.System.exit()" and if
    those tasks aren't running in a forked VM of their own, then
    such tasks will now kill the entire Ant build process. It is
    recommended that such tasks be updated to launch in a forked
    VM so that the System.exit() call will not impact the JVM in
    which Ant process runs.
  * Fixed bugs:
    + log only the stylesheet name in the xslt task.
    + junitlauncher task's "test" and "listener" elements which take
    a "outputDir" property were incorrectly resolving the
    outputDir against the current working directory instead of the
    project's basedir.
    + regexmapper would, in some cases, incorrectly consume
    backslash characters from the "to" attribute, resulting in
    missing backslashes in the output.
    + &lt;fixcrlf&gt;, &lt;replace&gt; and &lt;replaceregexp&gt; now try to preserve
    the file permissions of the files they modify.
    + junitlauncher task would fail if a forked test timed out even
    if haltOnFailure was set to false.
    + fixes a bug in org.apache.tools.zip.ZipOutputStream where,
    even when "zip64Mode" is set to "always", ZipOutputStream may
    not create a CEN extra field data for the entry.
    + legacy-xml listener of junitlauncher task wouldn't report
    certain failures involving junit jupiter dynamic tests.
    + allow.class which was introduced in Ant 1.10.13 release, has
    been removed from this 1.10.14 release. This class was
    introduced in context of the SecurityManager changes in
    Ant 1.10.13, which have now been reverted in Ant 1.10.14,
    since they caused several regressions.
  * Other changes:
    + &lt;fork&gt; element of the junitlauncher task now has a new
    optional "java" attribute which can be used to point to a
    different Java installation for runnning the forked tests.
    + made sure &lt;echoproperties&gt; sorts the echoed properties on
    JDK9+ as well.
    + org.apache.tools.ant.taskdefs.Recorder class now introduces a
    setLogLevel(LogLevel level) method.
    + The &lt;fork&gt; element of junitlaunchertask now allows a
    "forkMode" attribute. forkMode=perTestClass can now be used to
    launch each test class in a separate forked JVM.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1694433600">- Added patch:
  * reproducible-propertyfile-task.patch
    + Debian patch to improve propertyfile task in RPM builds by
    using the date specified by the SOURCE_DATE_EPOCH variable
    in the header of the .properties file generated</changelog>
  <changelog author="Anton Shvetz &lt;shvetz.anton@gmail.com&gt;" date="1706270400">- Add forgotten univocity-parsers to
  %{_sysconfdir}/ant.d/junitlauncher (needed to run unit tests
  annotated with @CsvSource and @CsvFileSource)</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1708430400">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1714219200">- Put hamcrest on the classpath of ant-junit module</changelog>
  <changelog author="Anton Shvetz &lt;shvetz.anton@gmail.com&gt;" date="1714824000">- Add forgotten open-test-reporting/events to
  %{_sysconfdir}/ant.d/junitlauncher</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1721304000">- Added patches:
  * reproducible-jar-mtime.patch
    + make the modification times of files in a jar file
    reproducible
  * reproducible-javadoc.patch
    + make javadoc generation reproducible: don't generate
    timestamps, and normalize locale and encoding</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1723550400">- Modified patches:
  * reproducible-jar-mtime.patch
    + attempt more normalization of mtimes in jar files
  * reproducible-javadoc.patch
    + fix the patch to work with custom doclets too</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1726574400">- Modified patch:
  * reproducible-jar-mtime.patch
    + try different approach to get bit-reproducible builds</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1727611200">- Fix build after removal of the default %%{java_home} define</changelog>
  <changelog author="Gus Kenion &lt;gus.kenion@suse.com&gt;" date="1730721600">- Upgrade to version 1.10.15
  * Bug fixes:
    + Fixes an regression, introduced in Ant 1.10.13, where
    pathconvert would unintentionally trim the string output.
    Bugzilla Report 67082
    + Fixes a bug in &lt;depend&gt; task which would throw a
    ClassFormatError if it encountered constant pool entry type
    17.  Bugzilla Report 66552
    + Launching ant.bat from within a Java program using
    java.lang.Runtime.exec() could result in an unexpected
    failure. This has now been fixed.  Bugzilla Report 67417
    + Fixes an issue in bootstrap.bat when trying to detect if the
    "javac" command in the JDK supports the "--release" option.
    Github Pull Request #205
    + Fixes a bug in
    org.apache.tools.ant.taskdefs.email.EmailAddress which would
    throw a java.lang.StringIndexOutOfBoundsException if the
    email address passed to its constructor was an empty String.
    Bugzilla Report 68462
    + legacy-xml reporter of junitlauncher task was using a
    non-buffered outputstream when generating the report. This
    introduces severe performance penalties since the writes
    translate to native write system calls. This has been fixed
    to use a BufferedOutputStream.  Github Pull Request #207
  * Other changes:
    + exec task now logs the process' non-zero exit code at INFO
    level instead of the previous ERROR level. The following
    message from exec task is the one who's level has been
    changed:
    Result: 1
    Bugzilla Report 26453
    + Removes direct references to
    com.sun.net.ssl.internal.ssl.Provider class from the mail
    task, since that internal JDK class is no longer available in
    recent versions of Java.  Bugzilla Report 68460
    + &lt;replaceregexp&gt; has a new failOnError attribute which, when
    enabled, makes the task throw a BuildException for certain
    error cases that will only be logged otherwise.  Github Pull
    Request #206
    + &lt;ftp&gt; task now has a new "useSecureDataChannel" attribute
    which can be set to true, when ftps is enabled, to enable
    secure data channel.  Bugzilla Report 68773
- Unify .spec files
  * remove ant-antlr.changes
  * remove ant-antlr.spec
  * remove ant-junit.changes
  * remove ant-junit.spec
  * remove ant-junit5.changes
  * remove ant-junit5.spec</changelog>
</package>
<package pkgid="bfcac727f0605c241f7b4453d4d9a877be05a31e6304426a8679a6a10594098d98699555969ffb0a69db24f665e78fe671e04d349f8a8c65868f8f596ab72ace" name="ant-testutil" arch="noarch">
  <version epoch="0" ver="1.10.15" rel="1.1"/>
  <changelog author="Pedro Monreal &lt;pmonreal@suse.com&gt;" date="1622721600">- Update to 1.10.10
  * SCP (with sftp=true) task would fail if fetching file located
    in root directory.
  * Fixed: javac task would fail if the arguments file it
    (internally) created didn't quote the # character.
  * Make sure LegacyXmlResultFormatter encodes characters illegal
    in XML the same way JUnit5's built-in formatter would.
  * LegacyXmlResultFormatter no longer double-encodes &lt;&gt;&amp; in
    system-err and system-out.
  * Fixes a bug in junitlauncher task's legacy-xml formatter,
    where the testcase representing a @Parameterized JUnit4 test
    wasn't being reported in the XML.
  * Fixes a bug where the ant-testutil-sources.jar that gets
    published to Maven central repository didn't contain any
    source files.
  * The &lt;http&gt; condition didn't follow redirects from http to https.
  * ZipOutputStream now overrides write(int) in order to make sure
    single byte writes get the same treatment as array writes.
  * Fixes a potential deadlock in junitlauncher task when using
    legacy-xml reporter.
  * javaversion condition now has a new "atmost" attribute. See
    the javaversion manual for more details
  * The "listener" nested element of the "junitlauncher" task now
    has a new "useLegacyReportingName" attribute which can be used
    to control the test identifiers names that get reported by the
    listener. See the junitlauncher manual for more details. Note that
    this change also introduces a new "setUseLegacyReportingName" method
    on the org.apache.tools.ant.taskdefs.optional.junitlauncher.TestResultFormatter
    interface. This will break backward compatibility with any of your custom
    result formatters which implemented this interface and such implementations
    are now expected to implement this new method.
  * A new attribute preserveduplicates allows &lt;resourcelist&gt; to
    return the same resource multiple times when set to true.
  * A new attribute filterbeforeconcat in &lt;concat&gt; can be used to
    decide whether the filterchain should be applied to the
    concatenated content (the default) or each nested resource
    individually before concatenating them.
  * The ssh tasks now share a new nested element additionalConfig that can
    be used to set config values for the jsch Session used by the task.
  * Added new discardOutput and discardError properties to redirector
    and the exec, apply and java tasks which can be used to completely
    discard any (error) output. This is a platform independent
    alternative to directiong output to any kind of null device.
  * junitlauncher now prints a more useful and instantaneous summary of
    tests being run, closely matching the junit task's summary.</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1639569600">- Update to 1.10.12:
  * The update includes fixes for the following CVEs:
  CVE-2021-36374, bsc#1188469
    Excessive memory allocation when reading a specially
    crafted ZIP archive or a derived formats.
  CVE-2021-36373, bsc#1188468
    Excessive memory allocation when reading a specially
    crafted TAR archive.
  * The http condition would follow redirects even when "followRedirects" attribute
  was set to "false". This has now been fixed. Bugzilla Report 65489
  * Made sure setting build.compiler to the fully qualified classname
  that corresponds to extJavac or modern has the same effect as using
  the shorter alias names. Bugzilla Report 65539
  * Prevent potential deadlocks in org.apache.tools.ant.IntrospectionHelper.
  Bugzilla Report 65424
  * The implementation of AntClassLoader#findResources() has been changed to optimize
  it for potential performance issues, as those noted at https://issues.jenkins.io/browse/JENKINS-22310?focusedCommentId=197405&amp;page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-197405
  Github Pull Request #151
  * AntClassLoader now implements the ClassLoader#findResource(String) method.
  Github Pull Request #150
  * Ant tries to avoid file name canonicalization when possible.
  Bugzilla Report 65499
  * javadoc task will now look for warning messages in the STDERR stream too
  when "failonwarning" is set to true to account for changes in JDK 17+
  * The tar task now preserves symlinks of nested tarfilesets.
  Github Pull Request #142
- Changes from 1.10.11:
  * a race condition could lead to NullPointerExceptions when running
  tasks in parallel.
  Bugzilla Report 65316
  * fixed potential OutOfMemory errors when reading broken archives
  using the tar or zip formats or formats derived from zip.
  * org.apache.tools.ant.taskdefs.optional.junitlauncher.confined.JUnitLauncherTask now
  has a new protected createExecuteWatchdog() method for allowing it to be overriden.
  Github Pull Request #147
  * Upgraded AntUnit to 1.4.1.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1645531200">- Do not build against the log4j12 packages, use the new reload4j</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1652097600">- Disable a test failing to compile with junit5 5.8.x</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1674043200">- Update ant keyring with new developer keys.
- Update to 1.10.13:
  * Breaking changes:
  - &lt;get&gt; has a new attribute authenticateOnRedirect that can be
    used to prevent Ant from sending the configured credentials
    when following a redirect. It is false by default, which means
    builds that rely on credentials being used on the redirected
    URI may break.
  * Fixed bugs:
  - the PropertyEnumerator change introduced in 1.10.9 proved to
    be not fully backwards compatible when combined with certain
    custom PropertyHelper implementations - for example when using
    AntXtras.
  - legacy-xml reporter of the junitlauncher task now escapes ]]&gt;
    when writing CDATA.
  - &lt;scp&gt; may leak connections when trying to preserve the last
    modified timestamps of files transferred recursively from a
    server.
  - tstamp task would in certain cases parse the SOURCE_DATE_EPOCH
    environment variable value to an incorrect date. This has now
    been fixed.
  - fetch.xml didn't set up non-default repositories propery and
    thus failed to download JAI.
  - When building and installing Ant distribution from source, the
    build script would change permissions on unrelated files in
    the destination directory. This is now fixed and such
    unrelated files in the destination directory will be left
    untouched.
  - parsing tar entries with multiple NUL bytes in their name
    would include garbage bytes as the name included all bytes up
    to the last NUL rather than the first.
  - loadresource might log warnings even though quiet was set to
    true
  - javac task would add paths constructs containing wildcards to
    the internally created argument file where wildcards are not
    allowed
  * Other changes:
  - added an implementation of the MIME Mail sender based on the
    repackaged Jakarta Mail package rather than javax Mail.
  - The "listener" element in the junitlauncher task now supports
    an "extension" attribute to control the filename extension
    of the generated output file from the listener.
  - &lt;ftp&gt; now supports FTPs.
  - DirectoryScanner avoids listing directory contents when it
    known it will never use the information retrieved. This may
    improve performance in some special cases.
  - &lt;manifest&gt; will now create the parent directory of the
    manifestFile attribute if it doesn't exist.
  - org.apache.tools.ant.BuildLogger now has a new method
    getMessageOutputLevel() which returns the currently set
    message output level.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1674734400">- Package and distribute the new ant-jakartamail</changelog>
  <changelog author="Frederic Crozat &lt;fcrozat@suse.com&gt;" date="1683201600">- Add _multibuild to define additional spec files as additional
  flavors.
  Eliminates the need for source package links in OBS.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1693483200">- Update to 1.10.14:
  * Changes that could break older environments:
    + Resource#compareTo now invokes getName rather than toString as
    the later may be costly (for example in the case of a
    StringResource).
    + When using Java 18 or higher, Ant will no longer use Java
    SecurityManager because it has been deprecated for removal and
    by default is disallowed to be set at runtime
    https://openjdk.org/jeps/411.
    This will mean that the "&lt;permissions&gt;" type is no longer
    functional when using Java 18 or higher.
    Furthermore, when using Java 18 or higher, if the build
    executes tasks that call "java.lang.System.exit()" and if
    those tasks aren't running in a forked VM of their own, then
    such tasks will now kill the entire Ant build process. It is
    recommended that such tasks be updated to launch in a forked
    VM so that the System.exit() call will not impact the JVM in
    which Ant process runs.
  * Fixed bugs:
    + log only the stylesheet name in the xslt task.
    + junitlauncher task's "test" and "listener" elements which take
    a "outputDir" property were incorrectly resolving the
    outputDir against the current working directory instead of the
    project's basedir.
    + regexmapper would, in some cases, incorrectly consume
    backslash characters from the "to" attribute, resulting in
    missing backslashes in the output.
    + &lt;fixcrlf&gt;, &lt;replace&gt; and &lt;replaceregexp&gt; now try to preserve
    the file permissions of the files they modify.
    + junitlauncher task would fail if a forked test timed out even
    if haltOnFailure was set to false.
    + fixes a bug in org.apache.tools.zip.ZipOutputStream where,
    even when "zip64Mode" is set to "always", ZipOutputStream may
    not create a CEN extra field data for the entry.
    + legacy-xml listener of junitlauncher task wouldn't report
    certain failures involving junit jupiter dynamic tests.
    + allow.class which was introduced in Ant 1.10.13 release, has
    been removed from this 1.10.14 release. This class was
    introduced in context of the SecurityManager changes in
    Ant 1.10.13, which have now been reverted in Ant 1.10.14,
    since they caused several regressions.
  * Other changes:
    + &lt;fork&gt; element of the junitlauncher task now has a new
    optional "java" attribute which can be used to point to a
    different Java installation for runnning the forked tests.
    + made sure &lt;echoproperties&gt; sorts the echoed properties on
    JDK9+ as well.
    + org.apache.tools.ant.taskdefs.Recorder class now introduces a
    setLogLevel(LogLevel level) method.
    + The &lt;fork&gt; element of junitlaunchertask now allows a
    "forkMode" attribute. forkMode=perTestClass can now be used to
    launch each test class in a separate forked JVM.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1694433600">- Added patch:
  * reproducible-propertyfile-task.patch
    + Debian patch to improve propertyfile task in RPM builds by
    using the date specified by the SOURCE_DATE_EPOCH variable
    in the header of the .properties file generated</changelog>
  <changelog author="Anton Shvetz &lt;shvetz.anton@gmail.com&gt;" date="1706270400">- Add forgotten univocity-parsers to
  %{_sysconfdir}/ant.d/junitlauncher (needed to run unit tests
  annotated with @CsvSource and @CsvFileSource)</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1708430400">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1714219200">- Put hamcrest on the classpath of ant-junit module</changelog>
  <changelog author="Anton Shvetz &lt;shvetz.anton@gmail.com&gt;" date="1714824000">- Add forgotten open-test-reporting/events to
  %{_sysconfdir}/ant.d/junitlauncher</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1721304000">- Added patches:
  * reproducible-jar-mtime.patch
    + make the modification times of files in a jar file
    reproducible
  * reproducible-javadoc.patch
    + make javadoc generation reproducible: don't generate
    timestamps, and normalize locale and encoding</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1723550400">- Modified patches:
  * reproducible-jar-mtime.patch
    + attempt more normalization of mtimes in jar files
  * reproducible-javadoc.patch
    + fix the patch to work with custom doclets too</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1726574400">- Modified patch:
  * reproducible-jar-mtime.patch
    + try different approach to get bit-reproducible builds</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1727611200">- Fix build after removal of the default %%{java_home} define</changelog>
  <changelog author="Gus Kenion &lt;gus.kenion@suse.com&gt;" date="1730721600">- Upgrade to version 1.10.15
  * Bug fixes:
    + Fixes an regression, introduced in Ant 1.10.13, where
    pathconvert would unintentionally trim the string output.
    Bugzilla Report 67082
    + Fixes a bug in &lt;depend&gt; task which would throw a
    ClassFormatError if it encountered constant pool entry type
    17.  Bugzilla Report 66552
    + Launching ant.bat from within a Java program using
    java.lang.Runtime.exec() could result in an unexpected
    failure. This has now been fixed.  Bugzilla Report 67417
    + Fixes an issue in bootstrap.bat when trying to detect if the
    "javac" command in the JDK supports the "--release" option.
    Github Pull Request #205
    + Fixes a bug in
    org.apache.tools.ant.taskdefs.email.EmailAddress which would
    throw a java.lang.StringIndexOutOfBoundsException if the
    email address passed to its constructor was an empty String.
    Bugzilla Report 68462
    + legacy-xml reporter of junitlauncher task was using a
    non-buffered outputstream when generating the report. This
    introduces severe performance penalties since the writes
    translate to native write system calls. This has been fixed
    to use a BufferedOutputStream.  Github Pull Request #207
  * Other changes:
    + exec task now logs the process' non-zero exit code at INFO
    level instead of the previous ERROR level. The following
    message from exec task is the one who's level has been
    changed:
    Result: 1
    Bugzilla Report 26453
    + Removes direct references to
    com.sun.net.ssl.internal.ssl.Provider class from the mail
    task, since that internal JDK class is no longer available in
    recent versions of Java.  Bugzilla Report 68460
    + &lt;replaceregexp&gt; has a new failOnError attribute which, when
    enabled, makes the task throw a BuildException for certain
    error cases that will only be logged otherwise.  Github Pull
    Request #206
    + &lt;ftp&gt; task now has a new "useSecureDataChannel" attribute
    which can be set to true, when ftps is enabled, to enable
    secure data channel.  Bugzilla Report 68773
- Unify .spec files
  * remove ant-antlr.changes
  * remove ant-antlr.spec
  * remove ant-junit.changes
  * remove ant-junit.spec
  * remove ant-junit5.changes
  * remove ant-junit5.spec</changelog>
</package>
<package pkgid="d4a73f8b751fa89a64f4d2221c47d2709e703d79125558d8d182adaf404c14add1ac97f3f03334bf6cb459302ff7b1c4a8d9e7e35815fcae961f9fa58b0e5482" name="ant-xz" arch="noarch">
  <version epoch="0" ver="1.10.15" rel="1.1"/>
  <changelog author="Pedro Monreal &lt;pmonreal@suse.com&gt;" date="1622721600">- Update to 1.10.10
  * SCP (with sftp=true) task would fail if fetching file located
    in root directory.
  * Fixed: javac task would fail if the arguments file it
    (internally) created didn't quote the # character.
  * Make sure LegacyXmlResultFormatter encodes characters illegal
    in XML the same way JUnit5's built-in formatter would.
  * LegacyXmlResultFormatter no longer double-encodes &lt;&gt;&amp; in
    system-err and system-out.
  * Fixes a bug in junitlauncher task's legacy-xml formatter,
    where the testcase representing a @Parameterized JUnit4 test
    wasn't being reported in the XML.
  * Fixes a bug where the ant-testutil-sources.jar that gets
    published to Maven central repository didn't contain any
    source files.
  * The &lt;http&gt; condition didn't follow redirects from http to https.
  * ZipOutputStream now overrides write(int) in order to make sure
    single byte writes get the same treatment as array writes.
  * Fixes a potential deadlock in junitlauncher task when using
    legacy-xml reporter.
  * javaversion condition now has a new "atmost" attribute. See
    the javaversion manual for more details
  * The "listener" nested element of the "junitlauncher" task now
    has a new "useLegacyReportingName" attribute which can be used
    to control the test identifiers names that get reported by the
    listener. See the junitlauncher manual for more details. Note that
    this change also introduces a new "setUseLegacyReportingName" method
    on the org.apache.tools.ant.taskdefs.optional.junitlauncher.TestResultFormatter
    interface. This will break backward compatibility with any of your custom
    result formatters which implemented this interface and such implementations
    are now expected to implement this new method.
  * A new attribute preserveduplicates allows &lt;resourcelist&gt; to
    return the same resource multiple times when set to true.
  * A new attribute filterbeforeconcat in &lt;concat&gt; can be used to
    decide whether the filterchain should be applied to the
    concatenated content (the default) or each nested resource
    individually before concatenating them.
  * The ssh tasks now share a new nested element additionalConfig that can
    be used to set config values for the jsch Session used by the task.
  * Added new discardOutput and discardError properties to redirector
    and the exec, apply and java tasks which can be used to completely
    discard any (error) output. This is a platform independent
    alternative to directiong output to any kind of null device.
  * junitlauncher now prints a more useful and instantaneous summary of
    tests being run, closely matching the junit task's summary.</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1639569600">- Update to 1.10.12:
  * The update includes fixes for the following CVEs:
  CVE-2021-36374, bsc#1188469
    Excessive memory allocation when reading a specially
    crafted ZIP archive or a derived formats.
  CVE-2021-36373, bsc#1188468
    Excessive memory allocation when reading a specially
    crafted TAR archive.
  * The http condition would follow redirects even when "followRedirects" attribute
  was set to "false". This has now been fixed. Bugzilla Report 65489
  * Made sure setting build.compiler to the fully qualified classname
  that corresponds to extJavac or modern has the same effect as using
  the shorter alias names. Bugzilla Report 65539
  * Prevent potential deadlocks in org.apache.tools.ant.IntrospectionHelper.
  Bugzilla Report 65424
  * The implementation of AntClassLoader#findResources() has been changed to optimize
  it for potential performance issues, as those noted at https://issues.jenkins.io/browse/JENKINS-22310?focusedCommentId=197405&amp;page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-197405
  Github Pull Request #151
  * AntClassLoader now implements the ClassLoader#findResource(String) method.
  Github Pull Request #150
  * Ant tries to avoid file name canonicalization when possible.
  Bugzilla Report 65499
  * javadoc task will now look for warning messages in the STDERR stream too
  when "failonwarning" is set to true to account for changes in JDK 17+
  * The tar task now preserves symlinks of nested tarfilesets.
  Github Pull Request #142
- Changes from 1.10.11:
  * a race condition could lead to NullPointerExceptions when running
  tasks in parallel.
  Bugzilla Report 65316
  * fixed potential OutOfMemory errors when reading broken archives
  using the tar or zip formats or formats derived from zip.
  * org.apache.tools.ant.taskdefs.optional.junitlauncher.confined.JUnitLauncherTask now
  has a new protected createExecuteWatchdog() method for allowing it to be overriden.
  Github Pull Request #147
  * Upgraded AntUnit to 1.4.1.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1645531200">- Do not build against the log4j12 packages, use the new reload4j</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1652097600">- Disable a test failing to compile with junit5 5.8.x</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1674043200">- Update ant keyring with new developer keys.
- Update to 1.10.13:
  * Breaking changes:
  - &lt;get&gt; has a new attribute authenticateOnRedirect that can be
    used to prevent Ant from sending the configured credentials
    when following a redirect. It is false by default, which means
    builds that rely on credentials being used on the redirected
    URI may break.
  * Fixed bugs:
  - the PropertyEnumerator change introduced in 1.10.9 proved to
    be not fully backwards compatible when combined with certain
    custom PropertyHelper implementations - for example when using
    AntXtras.
  - legacy-xml reporter of the junitlauncher task now escapes ]]&gt;
    when writing CDATA.
  - &lt;scp&gt; may leak connections when trying to preserve the last
    modified timestamps of files transferred recursively from a
    server.
  - tstamp task would in certain cases parse the SOURCE_DATE_EPOCH
    environment variable value to an incorrect date. This has now
    been fixed.
  - fetch.xml didn't set up non-default repositories propery and
    thus failed to download JAI.
  - When building and installing Ant distribution from source, the
    build script would change permissions on unrelated files in
    the destination directory. This is now fixed and such
    unrelated files in the destination directory will be left
    untouched.
  - parsing tar entries with multiple NUL bytes in their name
    would include garbage bytes as the name included all bytes up
    to the last NUL rather than the first.
  - loadresource might log warnings even though quiet was set to
    true
  - javac task would add paths constructs containing wildcards to
    the internally created argument file where wildcards are not
    allowed
  * Other changes:
  - added an implementation of the MIME Mail sender based on the
    repackaged Jakarta Mail package rather than javax Mail.
  - The "listener" element in the junitlauncher task now supports
    an "extension" attribute to control the filename extension
    of the generated output file from the listener.
  - &lt;ftp&gt; now supports FTPs.
  - DirectoryScanner avoids listing directory contents when it
    known it will never use the information retrieved. This may
    improve performance in some special cases.
  - &lt;manifest&gt; will now create the parent directory of the
    manifestFile attribute if it doesn't exist.
  - org.apache.tools.ant.BuildLogger now has a new method
    getMessageOutputLevel() which returns the currently set
    message output level.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1674734400">- Package and distribute the new ant-jakartamail</changelog>
  <changelog author="Frederic Crozat &lt;fcrozat@suse.com&gt;" date="1683201600">- Add _multibuild to define additional spec files as additional
  flavors.
  Eliminates the need for source package links in OBS.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1693483200">- Update to 1.10.14:
  * Changes that could break older environments:
    + Resource#compareTo now invokes getName rather than toString as
    the later may be costly (for example in the case of a
    StringResource).
    + When using Java 18 or higher, Ant will no longer use Java
    SecurityManager because it has been deprecated for removal and
    by default is disallowed to be set at runtime
    https://openjdk.org/jeps/411.
    This will mean that the "&lt;permissions&gt;" type is no longer
    functional when using Java 18 or higher.
    Furthermore, when using Java 18 or higher, if the build
    executes tasks that call "java.lang.System.exit()" and if
    those tasks aren't running in a forked VM of their own, then
    such tasks will now kill the entire Ant build process. It is
    recommended that such tasks be updated to launch in a forked
    VM so that the System.exit() call will not impact the JVM in
    which Ant process runs.
  * Fixed bugs:
    + log only the stylesheet name in the xslt task.
    + junitlauncher task's "test" and "listener" elements which take
    a "outputDir" property were incorrectly resolving the
    outputDir against the current working directory instead of the
    project's basedir.
    + regexmapper would, in some cases, incorrectly consume
    backslash characters from the "to" attribute, resulting in
    missing backslashes in the output.
    + &lt;fixcrlf&gt;, &lt;replace&gt; and &lt;replaceregexp&gt; now try to preserve
    the file permissions of the files they modify.
    + junitlauncher task would fail if a forked test timed out even
    if haltOnFailure was set to false.
    + fixes a bug in org.apache.tools.zip.ZipOutputStream where,
    even when "zip64Mode" is set to "always", ZipOutputStream may
    not create a CEN extra field data for the entry.
    + legacy-xml listener of junitlauncher task wouldn't report
    certain failures involving junit jupiter dynamic tests.
    + allow.class which was introduced in Ant 1.10.13 release, has
    been removed from this 1.10.14 release. This class was
    introduced in context of the SecurityManager changes in
    Ant 1.10.13, which have now been reverted in Ant 1.10.14,
    since they caused several regressions.
  * Other changes:
    + &lt;fork&gt; element of the junitlauncher task now has a new
    optional "java" attribute which can be used to point to a
    different Java installation for runnning the forked tests.
    + made sure &lt;echoproperties&gt; sorts the echoed properties on
    JDK9+ as well.
    + org.apache.tools.ant.taskdefs.Recorder class now introduces a
    setLogLevel(LogLevel level) method.
    + The &lt;fork&gt; element of junitlaunchertask now allows a
    "forkMode" attribute. forkMode=perTestClass can now be used to
    launch each test class in a separate forked JVM.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1694433600">- Added patch:
  * reproducible-propertyfile-task.patch
    + Debian patch to improve propertyfile task in RPM builds by
    using the date specified by the SOURCE_DATE_EPOCH variable
    in the header of the .properties file generated</changelog>
  <changelog author="Anton Shvetz &lt;shvetz.anton@gmail.com&gt;" date="1706270400">- Add forgotten univocity-parsers to
  %{_sysconfdir}/ant.d/junitlauncher (needed to run unit tests
  annotated with @CsvSource and @CsvFileSource)</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1708430400">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1714219200">- Put hamcrest on the classpath of ant-junit module</changelog>
  <changelog author="Anton Shvetz &lt;shvetz.anton@gmail.com&gt;" date="1714824000">- Add forgotten open-test-reporting/events to
  %{_sysconfdir}/ant.d/junitlauncher</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1721304000">- Added patches:
  * reproducible-jar-mtime.patch
    + make the modification times of files in a jar file
    reproducible
  * reproducible-javadoc.patch
    + make javadoc generation reproducible: don't generate
    timestamps, and normalize locale and encoding</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1723550400">- Modified patches:
  * reproducible-jar-mtime.patch
    + attempt more normalization of mtimes in jar files
  * reproducible-javadoc.patch
    + fix the patch to work with custom doclets too</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1726574400">- Modified patch:
  * reproducible-jar-mtime.patch
    + try different approach to get bit-reproducible builds</changelog>
  <changelog author="Fridrich Strba &lt;fstrba@suse.com&gt;" date="1727611200">- Fix build after removal of the default %%{java_home} define</changelog>
  <changelog author="Gus Kenion &lt;gus.kenion@suse.com&gt;" date="1730721600">- Upgrade to version 1.10.15
  * Bug fixes:
    + Fixes an regression, introduced in Ant 1.10.13, where
    pathconvert would unintentionally trim the string output.
    Bugzilla Report 67082
    + Fixes a bug in &lt;depend&gt; task which would throw a
    ClassFormatError if it encountered constant pool entry type
    17.  Bugzilla Report 66552
    + Launching ant.bat from within a Java program using
    java.lang.Runtime.exec() could result in an unexpected
    failure. This has now been fixed.  Bugzilla Report 67417
    + Fixes an issue in bootstrap.bat when trying to detect if the
    "javac" command in the JDK supports the "--release" option.
    Github Pull Request #205
    + Fixes a bug in
    org.apache.tools.ant.taskdefs.email.EmailAddress which would
    throw a java.lang.StringIndexOutOfBoundsException if the
    email address passed to its constructor was an empty String.
    Bugzilla Report 68462
    + legacy-xml reporter of junitlauncher task was using a
    non-buffered outputstream when generating the report. This
    introduces severe performance penalties since the writes
    translate to native write system calls. This has been fixed
    to use a BufferedOutputStream.  Github Pull Request #207
  * Other changes:
    + exec task now logs the process' non-zero exit code at INFO
    level instead of the previous ERROR level. The following
    message from exec task is the one who's level has been
    changed:
    Result: 1
    Bugzilla Report 26453
    + Removes direct references to
    com.sun.net.ssl.internal.ssl.Provider class from the mail
    task, since that internal JDK class is no longer available in
    recent versions of Java.  Bugzilla Report 68460
    + &lt;replaceregexp&gt; has a new failOnError attribute which, when
    enabled, makes the task throw a BuildException for certain
    error cases that will only be logged otherwise.  Github Pull
    Request #206
    + &lt;ftp&gt; task now has a new "useSecureDataChannel" attribute
    which can be set to true, when ftps is enabled, to enable
    secure data channel.  Bugzilla Report 68773
- Unify .spec files
  * remove ant-antlr.changes
  * remove ant-antlr.spec
  * remove ant-junit.changes
  * remove ant-junit.spec
  * remove ant-junit5.changes
  * remove ant-junit5.spec</changelog>
</package>
<package pkgid="e62d6dc8d3bb84ecdee78698e9b0dea1ca7eb84a4b1a95253423d23f5f6864ec366f1f5138f251a304eb1f2be575ef6719b4fee58325e772f4b8b4df6e231db3" name="aom-tools" arch="i586">
  <version epoch="0" ver="3.7.2" rel="1.0.2.1.sr20240803"/>
  <changelog author="daniel.molkentin@suse.com" date="1620648000">- Update to version 3.1.0 (bsc#1185843):
  https://aomedia.googlesource.com/aom/+/refs/tags/v3.1.0
  This release adds an "all intra" mode to the encoder, which significantly
  speeds up the encoding of AVIF still images at speed 6.
  - Upgrading:
    All intra mode for encoding AVIF still images and AV1 all intra videos:
    AOM_USAGE_ALL_INTRA (2) can be passed as the 'usage' argument to
    aom_codec_enc_config_default().
    New encoder control IDs added:
  - AV1E_SET_ENABLE_DIAGONAL_INTRA: Enable diagonal (D45 to D203) intra
    prediction modes (0: false, 1: true (default)). Also available as
    "enable-diagonal-intra" for the aom_codec_set_option() function.
    New aom_tune_metric enum value: AOM_TUNE_BUTTERAUGLI. The new aomenc option
  - -tune=butteraugli was added to optimize the encoder’s perceptual quality by
    optimizing the Butteraugli metric. Install libjxl (JPEG XL) and then pass
  - DCONFIG_TUNE_BUTTERAUGLI=1 to the cmake command to enable it.
- Includes 3.0
  https://aomedia.googlesource.com/aom/+/refs/tags/v3.0.0
  This release includes compression efficiency improvement, speed improvement
  for realtime mode, as well as some new APIs.
  - Upgrading:
    Support for PSNR calculation based on stream bit-depth.
    New encoder control IDs added:
  - AV1E_SET_ENABLE_RECT_TX
  - AV1E_SET_VBR_CORPUS_COMPLEXITY_LAP
  - AV1E_GET_BASELINE_GF_INTERVAL
  - AV1E_SET_ENABLE_DNL_DENOISING
    New decoder control IDs added:
  - AOMD_GET_FWD_KF_PRESENT
  - AOMD_GET_FRAME_FLAGS
  - AOMD_GET_ALTREF_PRESENT
  - AOMD_GET_TILE_INFO
  - AOMD_GET_SCREEN_CONTENT_TOOLS_INFO
  - AOMD_GET_STILL_PICTURE
  - AOMD_GET_SB_SIZE
  - AOMD_GET_SHOW_EXISTING_FRAME_FLAG
  - AOMD_GET_S_FRAME_INFO
    New aom_tune_content enum value: AOM_CONTENT_FILM
    New aom_tune_metric enum value: AOM_TUNE_VMAF_NEG_MAX_GAIN
    Coefficient and mode update can be turned off via
    AV1E_SET_{COEFF/MODE}_COST_UPD_FREQ.
    New key &amp; value API added, available with aom_codec_set_option() function.
    Scaling API expanded to include 1/4, 3/4 and 1/8.
  - Enhancements:
    Better multithreading performance with realtime mode.
    New speed 9 setting for faster realtime encoding.
    Smaller binary size with low bitdepth and realtime only build.
    Temporal denoiser and its optimizations on x86 and Neon.
    Optimizations for scaling.
    Faster encoding with speed settings 2 to 6 for good encoding mode.
    Improved documentation throughout the library, with function level
    documentation, tree view and support for the dot tool.
  - Bug fixes:
    Aside from those mentioned in v2.0.1 and v2.0.2, this release includes the
    following bug fixes:
    Issue 2940: Segfault when encoding with --use-16bit-internal and --limit &gt; 1
    Issue 2941: Decoder mismatch with --rt --bit-depth=10 and --cpu-used=8
    Issue 2895: mingw-w64 i686 gcc fails to build
    Issue 2874: Separate ssse3 functions from sse2 file.</changelog>
  <changelog author="Ferdinand Thiessen &lt;rpm@fthiessen.de&gt;" date="1625227200">- Update to version 3.1.1
  * Fix vmaf model initialization error when not set to tune=vmaf
  * Fix consistent crash on near-static screen content, keyframe
    related
  * Fix tune=butteraugli mode
- Disable NEON on arm where not available.</changelog>
  <changelog author="pgajdos@suse.com" date="1629892800">- Update to version 3.1.2:
  * Update AUTHORS,CHANGELOG,CMakeLists.txt for v3.1.2
  * Avoid chroma resampling for 420mpeg2 input
  * Check array has two elements before using index 1
  * Fix DecodeScalabilityTest failure in realtime only
  * Store temporal_id and spatial_id of decoded frame
  * exports.cmake: use APPLE and WIN32 and use def for mingw-w64</changelog>
  <changelog author="pgajdos@suse.com" date="1629892801">- security update
- added patches
  fix CVE-2021-30475 [bsc#1189497], Buffer overflow in aom_dsp/noise_model.c
  + libaom-CVE-2021-30475.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1631188800">- security update
- added patches
  fix CVE-2021-30474 [bsc#1186799], aom_dsp/grain_table.c in libaom in AOMedia before 2021-03-30 has a use-after-free.
  + libaom-CVE-2021-30474.patch</changelog>
  <changelog author="gmbr3@opensuse.org" date="1633694400">- Update to version 3.1.3:
  * Update CHANGELOG for v3.1.3-rc2
  * Detect chroma subsampling more directly
  * Detect chroma subsampling more directly
  * image2yuvconfig() should calculate uv_crop_width
  * aom/aom_encoder.h: remove configure option reference
  * aom_encoder.h: fix rc_overshoot_pct range
  * Update AUTHORS,CHANGELOG,CMakeLists.txt for v3.1.3
  * aom_install: don't exclude msvc from install
  * aom_install: use relpath for install
  * aom_install: Install lib dlls to bindir</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1634126400">- fix service data</changelog>
  <changelog author="bjorn.lie@gmail.com" date="1634299200">- Update to version 3.2.0:
  * This release includes compression efficiency and perceptual
    quality improvements, speedup and memory optimizations, as well
    as some new features.
  * New Features:
    + Introduced speeds 7, 8, and 9 for all intra mode.
    + Introduced speed 10 for real time mode.
    + Introduced an API that allows external partition decisions.
    + SVC: added support for compound prediction.
    + SVC: added support for fixed SVC modes.
  * Compression Efficiency Improvements:
    + Intra-mode search improvement.
    + Improved real time (RT) mode BDrate savings by ~5% (RT speed
    5) and ~12% (RT speed 6). The improvement was measured on the
    video conference set.
    + Improved real time mode for nonrd path (speed 7, 8, 9):
    BDrate gains of ~3-5%.
    + Rate control and RD adjustments based on ML research in VP9.
    Gains of ~0.5-1.0% for HD.
  * Perceptual Quality Improvements:
    + Added a new mode --deltaq-mode=3 to improve perceptual
    quality based on a differential contrast model for still
    images.
    + Added a new mode –deltaq-mode=4 to improve perceptual quality
    based on user rated cq_level data set for still images.
    + Weighting of some intra mode and partition size choices to
    better manage and retain texture.
  * Speedup and Memory Optimizations:
    + Further improved 2-pass good quality encoder speed:
    . Speed 2 speedup: 18%
    . Speed 3 speedup: 22%
    . Speed 4 speedup: 37%
    . Speed 5 speedup: 30%
    . Speed 6 speedup: 20%
    + Optimized the real time encoder (measured on the video
    conference set):
    . RT speed 5 speedup: 110%
    . RT speed 6 speedup: 77%
  * Bug Fixes
    + Issue 3069: Fix one-pass mode keyframe placement off-by-one
    error.
    + Issue 3156: Fix a bug in av1_quantize_lp AVX2 optimization.
- Drop libaom-CVE-2021-30474.patch: Fixed upstream.
- Drop libaom-CVE-2021-30475.patch: Fixed upstream.
- Remove changesgenerate option from _service file, use data from
  CHANGELOG to fill .changes instead as it it much nicer and human
  readable than just a list of commit messages.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1645185600">- Update to version 3.3.0:
  * This release includes compression efficiency and perceptual
    quality improvements, speedup and memory optimizations, some
    new features, and several bug fixes.
  * New Features
  - AV1 RT: Introducing CDEF search level 5
  - Changed real time speed 4 to behave the same as real time
    speed 5
  - Add --deltaq-strength
  - rtc: Allow scene-change and overshoot detection for svc
  - rtc: Intra-only frame for svc
  - AV1 RT: Option 2 for codec control AV1E_SET_ENABLE_CDEF to
    disable CDEF on non-ref frames
  - New codec controls AV1E_SET_LOOPFILTER_CONTROL and
    AOME_GET_LOOPFILTER_LEVEL
  - Improvements to three pass encoding
  * Compression Efficiency Improvements: Overall compression gains:
    0.6%
  * Perceptual Quality Improvements
  - Improves the perceptual quality of high QP encoding for
    delta-q mode 4
  - Auto select noise synthesis level for all intra
  * Speedup and Memory Optimizations
  - Added many SSE2 optimizations.
  - Good quality 2-pass encoder speedups:
    o Speed 2: 9%
    o Speed 3: 12.5%
    o Speed 4: 8%
    o Speed 5: 3%
    o Speed 6: 4%
  - Real time mode encoder speedups:
    o Speed 5: 2.6% BDRate gain, 4% speedup
    o Speed 6: 3.5% BDRate gain, 4% speedup
    o Speed 9: 1% BDRate gain, 3% speedup
    o Speed 10: 3% BDRate gain, neutral speedup
  - All intra encoding speedups (AVIF):
    o Single thread - speed 6: 8%
    o Single thread - speed 9: 15%
    o Multi thread(8) - speed 6: 14%
    o Multi thread(8) - speed 9: 34%
  * Bug Fixes
  - Issue 3163: Segmentation fault when using
  - -enable-keyframe-filtering=2
  - Issue 2436: Integer overflow in av1_warp_affine_c()
  - Issue 3226: armv7 build failure due to gcc-11
  - Issue 3195: Bug report on libaom (AddressSanitizer:
    heap-buffer-overflow)
  - Issue 3191: Bug report on libaom (AddressSanitizer: SEGV on
    unknown address)
- Drop libaom-devel Requires from libaom-devel-doc sub-package: We
  do not need the devel package to be able to read the devel
  documentation.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1662292800">- Update to version 3.4.0:
  * This release includes compression efficiency and perceptual
    quality improvements, speedup and memory optimizations, and
    some new features. There are no ABI or API breaking changes in
    this release.
  * New Features:
  - New --dist-metric flag with "qm-psnr" value to use
    quantization matrices in the distortion computation for RD
    search. The default value is "psnr".
  - New command line option "--auto-intra-tools-off=1" to make
    all-intra encoding faster for high bit rate under
    "--deltaq-mode=3" mode.
  - New rate control library aom_av1_rc for real-time hardware
    encoders. Supports CBR for both one spatial layer and SVC.
  - New image format AOM_IMG_FMT_NV12 can be used as input to the
    encoder. The presence of AOM_IMG_FMT_NV12 can be detected at
    compile time by checking if the macro AOM_HAVE_IMG_FMT_NV12
    is defined.
  - New codec controls for the encoder:
    o AV1E_SET_AUTO_INTRA_TOOLS_OFF. Only in effect if
  - -deltaq-mode=3.
    o AV1E_SET_RTC_EXTERNAL_RC
    o AV1E_SET_FP_MT. Only supported if libaom is built with
  - DCONFIG_FRAME_PARALLEL_ENCODE=1.
    o AV1E_GET_TARGET_SEQ_LEVEL_IDX
  - New key-value pairs for the key-value API:
    o --auto-intra-tools-off=0 (default) or 1. Only in effect if
  - -deltaq-mode=3.
    o --strict-level-conformance=0 (default) or 1
    o --fp-mt=0 (default) or 1. Only supported if libaom is built
    with -DCONFIG_FRAME_PARALLEL_ENCODE=1.
  - New aomenc options (not supported by the key-value API):
    o --nv12
  * Compression Efficiency Improvements:
  - Correctly calculate SSE for high bitdepth in skip mode, 0.2%
    to 0.6% coding gain.
  - RTC at speed 9/10: BD-rate gain of ~4/5%
  - RTC screen content coding: many improvements for real-time
    screen at speed 10 (quality, speedup, and rate control), up
    to high resolutions (1080p).
  - RTC-SVC: fixes to make intra-only frames work for spatial
    layers.
  - RTC-SVC: quality improvements for temporal layers.
  - AV1 RT: A new passive rate control strategy for screen
    content, an average of 7.5% coding gain, with some clips of
    20+%. The feature is turned off by default due to higher bit
    rate variation.
  * Perceptual Quality Improvements:
  - RTC: Visual quality improvements for high speeds (9/10)
  - Improvements in coding quality for all intra mode
  * Speedup and Memory Optimizations:
  - ~10% speedup in good quality mode encoding.
  - ~7% heap memory reduction in good quality encoding mode for
    speed 5 and 6.
  - Ongoing improvements to intra-frame encoding performance on
    Arm
  - Faster encoding speed for "--deltaq-mode=3" mode.
  - ~10% speedup for speed 5/6, ~15% speedup for speed 7/8, and
    ~10% speedup for speed 9/10 in real time encoding mode
  - ~20% heap memory reduction in still-picture encoding mode for
    360p-720p resolutions with multiple threads
  - ~13% speedup for speed 6 and ~12% speedup for speed 9 in
    still-picture encoding mode.
  - Optimizations to improve multi-thread efficiency for
    still-picture encoding mode.
  * Bug Fixes:
  - b/204460717: README.md: replace master with main
  - b/210677928: libaom disable_order is surprising for
    max_reference_frames=3
  - b/222461449: -DCONFIG_TUNE_BUTTERAUGLI=1 broken
  - b/227207606: write_greyscale writes incorrect chroma in
    highbd mode
  - b/229955363: Integer-overflow in linsolve_wiener
  - https://crbug.com/aomedia/2032
  - https://crbug.com/aomedia/2397
  - https://crbug.com/aomedia/2563
  - https://crbug.com/aomedia/2815
  - https://crbug.com/aomedia/3009
  - https://crbug.com/aomedia/3018
  - https://crbug.com/aomedia/3045
  - https://crbug.com/aomedia/3101
  - https://crbug.com/aomedia/3130
  - https://crbug.com/aomedia/3173
  - https://crbug.com/aomedia/3184
  - https://crbug.com/aomedia/3187
  - https://crbug.com/aomedia/3190
  - https://crbug.com/aomedia/3195
  - https://crbug.com/aomedia/3197
  - https://crbug.com/aomedia/3201
  - https://crbug.com/aomedia/3202
  - https://crbug.com/aomedia/3204
  - https://crbug.com/aomedia/3205
  - https://crbug.com/aomedia/3207
  - https://crbug.com/aomedia/3208
  - https://crbug.com/aomedia/3209
  - https://crbug.com/aomedia/3213
  - https://crbug.com/aomedia/3214
  - https://crbug.com/aomedia/3219
  - https://crbug.com/aomedia/3222
  - https://crbug.com/aomedia/3223
  - https://crbug.com/aomedia/3225
  - https://crbug.com/aomedia/3226
  - https://crbug.com/aomedia/3228
  - https://crbug.com/aomedia/3232
  - https://crbug.com/aomedia/3236
  - https://crbug.com/aomedia/3237
  - https://crbug.com/aomedia/3238
  - https://crbug.com/aomedia/3240
  - https://crbug.com/aomedia/3243
  - https://crbug.com/aomedia/3244
  - https://crbug.com/aomedia/3246
  - https://crbug.com/aomedia/3248
  - https://crbug.com/aomedia/3250
  - https://crbug.com/aomedia/3251
  - https://crbug.com/aomedia/3252
  - https://crbug.com/aomedia/3255
  - https://crbug.com/aomedia/3257
  - https://crbug.com/aomedia/3259
  - https://crbug.com/aomedia/3260
  - https://crbug.com/aomedia/3267
  - https://crbug.com/aomedia/3268
  - https://crbug.com/aomedia/3269
  - https://crbug.com/aomedia/3276
  - https://crbug.com/aomedia/3278
  - https://crbug.com/chromium/1290068
  - https://crbug.com/chromium/1303237
  - https://crbug.com/chromium/1304990
  - https://crbug.com/chromium/1321141
  - https://crbug.com/chromium/1321388
  - https://crbug.com/oss-fuzz/44846
  - https://crbug.com/oss-fuzz/44856
  - https://crbug.com/oss-fuzz/44862
  - https://crbug.com/oss-fuzz/44904
  - https://crbug.com/oss-fuzz/45056</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1663848000">- Update to version 3.5.0:
  * This release is ABI compatible with the last one, including
    speedup and memory optimizations, and new APIs and features.
  * New Features
  - Support for frame parallel encode for larger number of
    threads. --fp-mt flag is available for all build
    configurations.
  - New codec control AV1E_GET_NUM_OPERATING_POINTS
  * Speedup and Memory Optimizations
  - Speed-up multithreaded encoding for good quality mode for
    larger number of threads through frame parallel encoding:
    . 30-34% encode time reduction for 1080p, 16 threads, 1x1
    tile configuration (tile_rows x tile_columns)
    . 18-28% encode time reduction for 1080p, 16 threads, 2x4
    tile configuration
    . 18-20% encode time reduction for 2160p, 32 threads, 2x4
    tile configuration
  - 16-20% speed-up for speed=6 to 8 in still-picture encoding
    mode
  - 5-6% heap memory reduction for speed=6 to 10 in real-time
    encoding mode
  - Improvements to the speed for speed=7, 8 in real-time
    encoding mode
  - Improvements to the speed for speed=9, 10 in real-time screen
    encoding mode
  - Optimizations to improve multi-thread efficiency in real-time
    encoding mode
  - 10-15% speed up for SVC with temporal layers
  - SIMD optimizations:
    . Improve av1_quantize_fp_32x32_neon() 1.05x to 1.24x faster
    . Add aom_highbd_quantize_b{,_32x32,_64x64}_adaptive_neon()
    3.15x to 5.6x faster than "C"
    . Improve av1_quantize_fp_64x64_neon() 1.17x to 1.66x faster
    . Add aom_quantize_b_avx2() 1.4x to 1.7x faster than
    aom_quantize_b_avx()
    . Add aom_quantize_b_32x32_avx2() 1.4x to 2.3x faster than
    aom_quantize_b_32x32_avx()
    . Add aom_quantize_b_64x64_avx2() 2.0x to 2.4x faster than
    aom_quantize_b_64x64_ssse3()
    . Add aom_highbd_quantize_b_32x32_avx2() 9.0x to 10.5x faster
    than aom_highbd_quantize_b_32x32_c()
    . Add aom_highbd_quantize_b_64x64_avx2() 7.3x to 9.7x faster
    than aom_highbd_quantize_b_64x64_c()
    . Improve aom_highbd_quantize_b_avx2() 1.07x to 1.20x faster
    . Improve av1_quantize_fp_avx2() 1.13x to 1.49x faster
    . Improve av1_quantize_fp_32x32_avx2() 1.07x to 1.54x faster
    . Improve av1_quantize_fp_64x64_avx2()  1.03x to 1.25x faster
    . Improve av1_quantize_lp_avx2() 1.07x to 1.16x faster
  * Bug fixes including but not limited to
  - aomedia:3206 Assert that skip_width &gt; 0 for deconvolve
    function
  - aomedia:3278 row_mt enc: Delay top-right sync when intraBC is
    enabled
  - aomedia:3282 blend_a64_*_neon: fix bus error in armv7
  - aomedia:3283 FRAME_PARALLEL: Propagate border size to all
    cpis
  - aomedia:3283 RESIZE_MODE: Fix incorrect strides being used
    for motion search
  - aomedia:3286 rtc-svc: Fix to dynamic_enable spatial layers
  - aomedia:3289 rtc-screen: Fix to skipping inter-mode test in
    nonrd
  - aomedia:3289 rtc-screen: Fix for skip newmv on flat blocks
  - aomedia:3299 Fix build failure with CONFIG_TUNE_VMAF=1
  - aomedia:3296 Fix the conflict --enable-tx-size-search=0 with
    nonrd mode --enable-tx-size-search will be ignored in non-rd
    pick mode
  - aomedia:3304 Fix off-by-one error of max w/h in
    validate_config
  - aomedia:3306 Do not use pthread_setname_np on GNU/Hurd
  - aomedia:3325 row-multithreading produces invalid bitstream in
    some cases
  - chromium:1346938, chromium:1338114
  - compiler_flags.cmake: fix flag detection w/cmake 3.17-3.18.2
  - tools/*.py: update to python3
  - aom_configure.cmake: detect PIE and set CONFIG_PIC
  - test/simd_cmp_impl: use explicit types w/CompareSimd*
  - rtc: Fix to disable segm for aq-mode=3
  - rtc: Fix to color_sensitivity in variance partition
  - rtc-screen: Fix bsize in model rd computation for intra
    chroma
  - Fixes to ensure the correct behavior of the encoder
    algorithms (like segmentation, computation of statistics,
    etc.)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1675857600">- Update to version 3.6.0:
  * This release includes compression efficiency and perceptual
    quality improvements, speedup and memory optimizations, and
    some new features. This release is ABI compatible with the last
    release.
  * New Features:
  - New values 20-27 (corresponding to levels 7.0-7.3 and
    8.0-8.3) for the encoder control
    AV1E_SET_TARGET_SEQ_LEVEL_IDX (note that the proposal to add
    the new levels are still in draft status). The original
    special value 24 (keep level stats only for level monitoring)
    is renumbered as 32.
  - New encoder control AV1E_SET_SKIP_POSTPROC_FILTERING to skip
    the application of post-processing filters on reconstructed
    frame in all intra mode.
  - New encoder option "kf-max-pyr-height": Maximum height of
    pyramid structure used for the GOP starting with a key frame
    (-1 to 5).
  - Make SVC work for screen content.
  - Rate control improvements to reduce frame-size spikes for
    screen content coding.
  - RISC-V architecture support with gcc toolchain.
  * Compression Efficiency Improvements:
  - Peak compression efficiency in VOD setting is improved by 1%.
  - 0.7% - 2.2% RTC encoding BDrate gains for real time speed 8
    to 10.
  - 15% RTC encoding BDrate gains for screen content speed 10.
  * Perceptual Quality Improvements:
  - Resolved a visual quality issue that was reported for high
    resolution clips (2K) for speed 4 and above in VOD use case.
  - Visual quality improvements to screen content coding.
  - Quality improvements to temporal layer RTC coding.
  * Speedup and Memory Optimizations:
  - RTC single-thread encoder speedup:
    . ~6% instruction count reduction for speed 5 and 6.
    . ~15% instruction count reduction for speed 7.
    . ~10% instruction count reduction for speed 8 to 10 (&gt;=360p
    resolutions).
  - RTC multi-thread encoder speedup (beyond single-thread
    speedup):
    . 5-8% encode time reduction for speed 7 to 10.
  - RTC screen-content encoder speedup:
    . 11% instruction count reduction for speed 9 and 10 (&gt;=720p
    resolutions).
  - ~5% reduction in heap memory requirements for RTC, speed 6 to
    10.
  * AVIF:
    . 4-5% speedup for speed 9 in still-picture encoding mode.
    . 3-4% heap memory reduction in still-picture encoding mode
    for 360p-720p resolutions with multiple threads.
  * Bug Fixes:
  - Added a workaround for an AV1 specification bug which makes
    TRANSLATION type global motion models unusable.
  - Fixed AddressSanitizer global-buffer-overflow errors in
    av1/encoder/arm/neon/av1_fwd_txfm2d_neon.c.
  - Fixed AddressSanitizer heap-buffer-overflow error in
    av1_wiener_convolve_add_src_neon().
  - chromium:1393384 Avoid scene detection on spatial resize.
  - aomedia:3308 Remove color artifacts under high motion.
  - aomedia:3310 Avoid out of memory failures with Visual Studio
    2017, 2019, and 2022 for Win32 x86 builds.
  - aomedia:3346 Make SVC work properly for screen content.
  - aomedia:3348 Fix a bug where an uninitialized search_site is
    used.
  - aomedia:3365 Work around what seems like a Visual Studio 2022
    compiler optimization bug.
  - aomedia:3369 Incorrect PSNR values reported by libaom for
    12-bit encode.
- Modernize spec, use cmake_build and ldconfig_scriptlets macros.</changelog>
  <changelog author="Frederic Crozat &lt;fcrozat@suse.com&gt;" date="1681992000">- Fix license tag to BSD-2-Clause and AOMPL-1.0.</changelog>
  <changelog author="Frederic Crozat &lt;fcrozat@suse.com&gt;" date="1683028800">- Revert to BSD-2-Clause licence tag to only use SPDX valid
  license tag.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1683720000">- Update to version 3.6.1:
  * aomedia:2871: Guard the support of the 7.x and 8.x levels for
    AV1 under the CONFIG_CWG_C013 config flag, and only output the
    7.x and 8.x levels when explicitly requested.
  * aomedia:3382: Choose sb_size by ppi instead of svc.
  * aomedia:3384: Fix fullpel search limits.
  * aomedia:3388: Replace left shift of xq_active by
    multiplication.
  * aomedia:3389: Fix MV clamping in av1_mv_pred.
  * aomedia:3390: set_ld_layer_depth: cap max_layer_depth to
    MAX_ARF_LAYERS.
  * aomedia:3418: Fix MV clamping in av1_int_pro_motion_estimation.
  * aomedia:3429: Move lpf thread data init to
    lpf_pipeline_mt_init().
  * b:266719111: Fix undefined behavior in Arm Neon code.
  * b:269840681: nonrd_opt: align scan tables.
  * rtc: Fix is_key_frame setting in variance partition.
  * Build: Fix build with clang-cl and Visual Studio.</changelog>
  <changelog author="Bruno Pitrus &lt;brunopitrus@hotmail.com&gt;" date="1693569600">- New upstream release 3.7.0
  - New Features
  * New codec controls:
  * AV1E_SET_QUANTIZER_ONE_PASS: Set quantizer for each frame.
  * AV1E_ENABLE_RATE_GUIDE_DELTAQ: enable the rate distribution guided delta
    quantization in all intra mode. The "enable-rate-guide-deltaq" option is
    added for this control.
  * AV1E_SET_RATE_DISTRIBUTION_INFO: set the input file for rate
    distribution used in all intra mode. The "rate-distribution-info" option
    is added for this control.
  * AV1E_GET_LUMA_CDEF_STRENGTH
  * AV1E_SET_BITRATE_ONE_PASS_CBR
  * AOM_SCALING_MODE is extended to include 2/3 and 1/3 scaling.
  * aom_tune_metric is extended to include AOM_TUNE_VMAF_SALIENCY_MAP.
    The "tune" option is extended to include "vmaf_saliency_map".
  * SVC example encoder svc_encoder_rtc is able to use the rate control
    library.
  * Loopfilter level and CDEF filter level is supported by RTC rate control
    library.
  * New speed (--cpu-used) 11, intended for RTC screen sharing, added for
    faster encoding with ~3% bdrate loss with 16% IC (instruction count)
    speedup compared to speed 10.
  - Compression Efficiency Improvements
  * Improved VoD encoding performance
  * 0.1-0.6% BDrate gains for encoding speeds 2 to 6
  * Rate control accuracy improvement in VBR mode
  * RTC encoding improvements
  * Screen content mode: 10-19% BDrate gains for speeds 6 - 10
  * Temporal layers video mode, for speed 10:
  * 2 temporal layers on low resolutions: 13-15% BDrate gain
  * 3 temporal layers on VGA/HD: 3-4% BDrate gain
  - Perceptual Quality Improvements
  * Fixed multiple block and color artifacts for RTC screen content by
  * Incorporating color into RD cost for IDTX
  * Reducing thresholds for palette mode in non RD mode
  * Allowing more palette mode testing
  * Improved color sensitivity for altref in non-RD mode.
  * Reduced video flickering for temporal layer encoding.
  - Speedup and Memory Optimizations
  * Speed up the VoD encoder
  * 2-5% for encoding speed 2 to 4
  * 9-15% for encoding speed 5 to 6
  * ARM
  * Standard bitdepth
  * speed 5: +31%
  * speed 4: +2%
  * speed 3: +9%
  * speed 2: +157%
  * High bitdepth
  * speed 5: +85%
  * RTC speedups
  * Screen content mode
  * 15% IC speedup for speeds 6-8
  * ARM: 7% for speed 9, 3% for speed 10
  * Temporal layers video mode
  * 7% speedup for 3 temporal layers on VGA/HD, for speed 10
  * Single layer video
  * x86: 2% IC speedup for speeds 7-10
  * ARM: 2-4% speedup across speeds 5-10
  - Bug Fixes
  * aomedia:3261 Assertion failed when encoding av1 with film grain and
    '--monochrome' flag
  * aomedia:3276 ensure all allocations are checked (partial fix)
  * aomedia:3451 The libaom library calls exit()
  * aomedia:3450 enable -Wshadow for C++ sources
  * aomedia:3449 Test Seg Faults After
    b459af3e345be402db052a143fcc5383d4b74cbd
  * aomedia:3416 prune unused symbols / restrict symbol visibility
  * aomedia:3443 Jenkins failure:
    UninstantiatedParameterizedTestSuite&lt;EstimateNoiseTest&gt;
  * aomedia:3434 realtime failures with CONFIG_BITSTREAM_DEBUG=1
  * aomedia:3433 DeltaqModeTest crash w/row_mt=0
  * aomedia:3429 Encoder crash when turn on both ExternalResize and
    g_threads &gt; 2
  * aomedia:3438 Build failure with
    `-DSANITIZE=address -DBUILD_SHARED_LIBS=ON` when using clang.
  * aomedia:3435 Block artifacts when scrolling with AV1 in screen sharing
    scenarios
  * aomedia:3170 vmaf tune presets produce extreme glitches in one scene
  * aomedia:3401 Building shared libaom with MSVC results in a race condition
    with the export library
  * aomedia:3420 Floating point exception in av1_tpl_get_frame_importance()
  * aomedia:3424 heap-buffer-overflow in ScaleFilterCols_16_C() (SIGABRT)
  * aomedia:3417 examples/svc_encoder_rtc.c is using internal macros and
    functions
  * aomedia:3372 SEGV in assign_frame_buffer_p av1_common_int.h
  * aomedia:3130 'cpu-features.h' file not found on Android NDK 22
  * aomedia:3415 Encoder/decoder mismatch for svc_encoder_rtc running
    1 SL 3 TL
  * aomedia:3412 Lossless Mode Fails Loopback Bit Test
  * aomedia:3409 The use of AV1_VAR_OFFS in av1/encoder/var_based_part.c is
    incorrect for high bit depths
  * aomedia:3403 test_libaom fails with error message
    "feenableexcept() failed" on Linux arm
  * aomedia:3370 Random color block at fast motion area
  * aomedia:3393 Assertion failure in av1_convolve_2d_sr_c()
  * aomedia:3392 Strong artifacting for high bit-depth real-time
  * aomedia:3376 aomenc --threads=10 --deltaq-mode=3 crashes after
    "Allintra: multi-threading of calculating differential contrast"
  * aomedia:3380 Crashes and ASan and TSan errors in deltaq-mode=3
    multithreading code
  * chromium:1410766 heap-buffer-overflow in aom_yv12_copy_v_c
  * Cannot set level via AV1E_SET_TARGET_SEQ_LEVEL_IDX
  * Encoding failure due to the use of loop restoration with unintended use of
    lossless mode.
  * Signed integer overflow in scan_past_frames
  * Signed integer overflow in update_a_sep_sym
  * Flickering in AV1 1440p/2160p HDR transcodes
  * Fixed artifacts with screen share at encoder speed 10
  * Fixed prediction setup for IDTX
- Use system libraries instead of vendored ones
  * system-gtest.patch
  * system-yuv.patch
- Enable debuginfo also on modules written in assembly
- Enable building PowerPC-specific optimizations
- Enable Neon optimized code on ARM and fix runtime CPU detection
- Fix missing images in documentation</changelog>
  <changelog author="Bruno Pitrus &lt;brunopitrus@hotmail.com&gt;" date="1693915200">- Split docs to multibuild to avoid dependency cycle</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1701777600">- Update to version 3.7.1:
  * Bug Fixes:
  - aomedia:3349: heap overflow when increasing resolution
  - aomedia:3478: GCC 12.2.0 emits a -Wstringop-overflow warning
    on aom/av1/encoder/motion_search_facade.c
  - aomedia:3489: Detect encoder and image high bit depth
    mismatch
  - aomedia:3491: heap-buffer-overflow on frame size change
  - b/303023614:  Segfault at encoding time for high bit depth
    images
- Switch buildtime compression to zst.</changelog>
  <changelog author="Enrico Belleri &lt;kilgore.trout@idesmi.eu&gt;" date="1720267200">- Update to version 3.7.2:
  * aomedia:3520: get_cubic_kernel_dbl: Assertion `0 &lt;= x &amp;&amp; x &lt; 1'
    failed.
  * aomedia:3526: alloc_compressor_data() is called during every
    aom_codec_control() call on the encoder. Note that this partially
    reverts the fix for bug aomedia:3349.
  * b/310457427 and b/310766628: Only use rec_sse in CBR mode.</changelog>
  <changelog author="Enrico Belleri &lt;kilgore.trout@idesmi.eu&gt;" date="1724587200">- Exclude third_party from obscpio</changelog>
</package>
<package pkgid="76258a9650f69a360ebf3cf491c0aa19e3607eed32bbf3d0c22f787e6625853fab977a64773bfbfa58ee72dd659f34c9416df23f59be68ed202f5b29a78af630" name="aom-tools" arch="x86_64">
  <version epoch="0" ver="3.7.2" rel="1.0.2.1.sr20240803"/>
  <changelog author="daniel.molkentin@suse.com" date="1620648000">- Update to version 3.1.0 (bsc#1185843):
  https://aomedia.googlesource.com/aom/+/refs/tags/v3.1.0
  This release adds an "all intra" mode to the encoder, which significantly
  speeds up the encoding of AVIF still images at speed 6.
  - Upgrading:
    All intra mode for encoding AVIF still images and AV1 all intra videos:
    AOM_USAGE_ALL_INTRA (2) can be passed as the 'usage' argument to
    aom_codec_enc_config_default().
    New encoder control IDs added:
  - AV1E_SET_ENABLE_DIAGONAL_INTRA: Enable diagonal (D45 to D203) intra
    prediction modes (0: false, 1: true (default)). Also available as
    "enable-diagonal-intra" for the aom_codec_set_option() function.
    New aom_tune_metric enum value: AOM_TUNE_BUTTERAUGLI. The new aomenc option
  - -tune=butteraugli was added to optimize the encoder’s perceptual quality by
    optimizing the Butteraugli metric. Install libjxl (JPEG XL) and then pass
  - DCONFIG_TUNE_BUTTERAUGLI=1 to the cmake command to enable it.
- Includes 3.0
  https://aomedia.googlesource.com/aom/+/refs/tags/v3.0.0
  This release includes compression efficiency improvement, speed improvement
  for realtime mode, as well as some new APIs.
  - Upgrading:
    Support for PSNR calculation based on stream bit-depth.
    New encoder control IDs added:
  - AV1E_SET_ENABLE_RECT_TX
  - AV1E_SET_VBR_CORPUS_COMPLEXITY_LAP
  - AV1E_GET_BASELINE_GF_INTERVAL
  - AV1E_SET_ENABLE_DNL_DENOISING
    New decoder control IDs added:
  - AOMD_GET_FWD_KF_PRESENT
  - AOMD_GET_FRAME_FLAGS
  - AOMD_GET_ALTREF_PRESENT
  - AOMD_GET_TILE_INFO
  - AOMD_GET_SCREEN_CONTENT_TOOLS_INFO
  - AOMD_GET_STILL_PICTURE
  - AOMD_GET_SB_SIZE
  - AOMD_GET_SHOW_EXISTING_FRAME_FLAG
  - AOMD_GET_S_FRAME_INFO
    New aom_tune_content enum value: AOM_CONTENT_FILM
    New aom_tune_metric enum value: AOM_TUNE_VMAF_NEG_MAX_GAIN
    Coefficient and mode update can be turned off via
    AV1E_SET_{COEFF/MODE}_COST_UPD_FREQ.
    New key &amp; value API added, available with aom_codec_set_option() function.
    Scaling API expanded to include 1/4, 3/4 and 1/8.
  - Enhancements:
    Better multithreading performance with realtime mode.
    New speed 9 setting for faster realtime encoding.
    Smaller binary size with low bitdepth and realtime only build.
    Temporal denoiser and its optimizations on x86 and Neon.
    Optimizations for scaling.
    Faster encoding with speed settings 2 to 6 for good encoding mode.
    Improved documentation throughout the library, with function level
    documentation, tree view and support for the dot tool.
  - Bug fixes:
    Aside from those mentioned in v2.0.1 and v2.0.2, this release includes the
    following bug fixes:
    Issue 2940: Segfault when encoding with --use-16bit-internal and --limit &gt; 1
    Issue 2941: Decoder mismatch with --rt --bit-depth=10 and --cpu-used=8
    Issue 2895: mingw-w64 i686 gcc fails to build
    Issue 2874: Separate ssse3 functions from sse2 file.</changelog>
  <changelog author="Ferdinand Thiessen &lt;rpm@fthiessen.de&gt;" date="1625227200">- Update to version 3.1.1
  * Fix vmaf model initialization error when not set to tune=vmaf
  * Fix consistent crash on near-static screen content, keyframe
    related
  * Fix tune=butteraugli mode
- Disable NEON on arm where not available.</changelog>
  <changelog author="pgajdos@suse.com" date="1629892800">- Update to version 3.1.2:
  * Update AUTHORS,CHANGELOG,CMakeLists.txt for v3.1.2
  * Avoid chroma resampling for 420mpeg2 input
  * Check array has two elements before using index 1
  * Fix DecodeScalabilityTest failure in realtime only
  * Store temporal_id and spatial_id of decoded frame
  * exports.cmake: use APPLE and WIN32 and use def for mingw-w64</changelog>
  <changelog author="pgajdos@suse.com" date="1629892801">- security update
- added patches
  fix CVE-2021-30475 [bsc#1189497], Buffer overflow in aom_dsp/noise_model.c
  + libaom-CVE-2021-30475.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1631188800">- security update
- added patches
  fix CVE-2021-30474 [bsc#1186799], aom_dsp/grain_table.c in libaom in AOMedia before 2021-03-30 has a use-after-free.
  + libaom-CVE-2021-30474.patch</changelog>
  <changelog author="gmbr3@opensuse.org" date="1633694400">- Update to version 3.1.3:
  * Update CHANGELOG for v3.1.3-rc2
  * Detect chroma subsampling more directly
  * Detect chroma subsampling more directly
  * image2yuvconfig() should calculate uv_crop_width
  * aom/aom_encoder.h: remove configure option reference
  * aom_encoder.h: fix rc_overshoot_pct range
  * Update AUTHORS,CHANGELOG,CMakeLists.txt for v3.1.3
  * aom_install: don't exclude msvc from install
  * aom_install: use relpath for install
  * aom_install: Install lib dlls to bindir</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1634126400">- fix service data</changelog>
  <changelog author="bjorn.lie@gmail.com" date="1634299200">- Update to version 3.2.0:
  * This release includes compression efficiency and perceptual
    quality improvements, speedup and memory optimizations, as well
    as some new features.
  * New Features:
    + Introduced speeds 7, 8, and 9 for all intra mode.
    + Introduced speed 10 for real time mode.
    + Introduced an API that allows external partition decisions.
    + SVC: added support for compound prediction.
    + SVC: added support for fixed SVC modes.
  * Compression Efficiency Improvements:
    + Intra-mode search improvement.
    + Improved real time (RT) mode BDrate savings by ~5% (RT speed
    5) and ~12% (RT speed 6). The improvement was measured on the
    video conference set.
    + Improved real time mode for nonrd path (speed 7, 8, 9):
    BDrate gains of ~3-5%.
    + Rate control and RD adjustments based on ML research in VP9.
    Gains of ~0.5-1.0% for HD.
  * Perceptual Quality Improvements:
    + Added a new mode --deltaq-mode=3 to improve perceptual
    quality based on a differential contrast model for still
    images.
    + Added a new mode –deltaq-mode=4 to improve perceptual quality
    based on user rated cq_level data set for still images.
    + Weighting of some intra mode and partition size choices to
    better manage and retain texture.
  * Speedup and Memory Optimizations:
    + Further improved 2-pass good quality encoder speed:
    . Speed 2 speedup: 18%
    . Speed 3 speedup: 22%
    . Speed 4 speedup: 37%
    . Speed 5 speedup: 30%
    . Speed 6 speedup: 20%
    + Optimized the real time encoder (measured on the video
    conference set):
    . RT speed 5 speedup: 110%
    . RT speed 6 speedup: 77%
  * Bug Fixes
    + Issue 3069: Fix one-pass mode keyframe placement off-by-one
    error.
    + Issue 3156: Fix a bug in av1_quantize_lp AVX2 optimization.
- Drop libaom-CVE-2021-30474.patch: Fixed upstream.
- Drop libaom-CVE-2021-30475.patch: Fixed upstream.
- Remove changesgenerate option from _service file, use data from
  CHANGELOG to fill .changes instead as it it much nicer and human
  readable than just a list of commit messages.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1645185600">- Update to version 3.3.0:
  * This release includes compression efficiency and perceptual
    quality improvements, speedup and memory optimizations, some
    new features, and several bug fixes.
  * New Features
  - AV1 RT: Introducing CDEF search level 5
  - Changed real time speed 4 to behave the same as real time
    speed 5
  - Add --deltaq-strength
  - rtc: Allow scene-change and overshoot detection for svc
  - rtc: Intra-only frame for svc
  - AV1 RT: Option 2 for codec control AV1E_SET_ENABLE_CDEF to
    disable CDEF on non-ref frames
  - New codec controls AV1E_SET_LOOPFILTER_CONTROL and
    AOME_GET_LOOPFILTER_LEVEL
  - Improvements to three pass encoding
  * Compression Efficiency Improvements: Overall compression gains:
    0.6%
  * Perceptual Quality Improvements
  - Improves the perceptual quality of high QP encoding for
    delta-q mode 4
  - Auto select noise synthesis level for all intra
  * Speedup and Memory Optimizations
  - Added many SSE2 optimizations.
  - Good quality 2-pass encoder speedups:
    o Speed 2: 9%
    o Speed 3: 12.5%
    o Speed 4: 8%
    o Speed 5: 3%
    o Speed 6: 4%
  - Real time mode encoder speedups:
    o Speed 5: 2.6% BDRate gain, 4% speedup
    o Speed 6: 3.5% BDRate gain, 4% speedup
    o Speed 9: 1% BDRate gain, 3% speedup
    o Speed 10: 3% BDRate gain, neutral speedup
  - All intra encoding speedups (AVIF):
    o Single thread - speed 6: 8%
    o Single thread - speed 9: 15%
    o Multi thread(8) - speed 6: 14%
    o Multi thread(8) - speed 9: 34%
  * Bug Fixes
  - Issue 3163: Segmentation fault when using
  - -enable-keyframe-filtering=2
  - Issue 2436: Integer overflow in av1_warp_affine_c()
  - Issue 3226: armv7 build failure due to gcc-11
  - Issue 3195: Bug report on libaom (AddressSanitizer:
    heap-buffer-overflow)
  - Issue 3191: Bug report on libaom (AddressSanitizer: SEGV on
    unknown address)
- Drop libaom-devel Requires from libaom-devel-doc sub-package: We
  do not need the devel package to be able to read the devel
  documentation.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1662292800">- Update to version 3.4.0:
  * This release includes compression efficiency and perceptual
    quality improvements, speedup and memory optimizations, and
    some new features. There are no ABI or API breaking changes in
    this release.
  * New Features:
  - New --dist-metric flag with "qm-psnr" value to use
    quantization matrices in the distortion computation for RD
    search. The default value is "psnr".
  - New command line option "--auto-intra-tools-off=1" to make
    all-intra encoding faster for high bit rate under
    "--deltaq-mode=3" mode.
  - New rate control library aom_av1_rc for real-time hardware
    encoders. Supports CBR for both one spatial layer and SVC.
  - New image format AOM_IMG_FMT_NV12 can be used as input to the
    encoder. The presence of AOM_IMG_FMT_NV12 can be detected at
    compile time by checking if the macro AOM_HAVE_IMG_FMT_NV12
    is defined.
  - New codec controls for the encoder:
    o AV1E_SET_AUTO_INTRA_TOOLS_OFF. Only in effect if
  - -deltaq-mode=3.
    o AV1E_SET_RTC_EXTERNAL_RC
    o AV1E_SET_FP_MT. Only supported if libaom is built with
  - DCONFIG_FRAME_PARALLEL_ENCODE=1.
    o AV1E_GET_TARGET_SEQ_LEVEL_IDX
  - New key-value pairs for the key-value API:
    o --auto-intra-tools-off=0 (default) or 1. Only in effect if
  - -deltaq-mode=3.
    o --strict-level-conformance=0 (default) or 1
    o --fp-mt=0 (default) or 1. Only supported if libaom is built
    with -DCONFIG_FRAME_PARALLEL_ENCODE=1.
  - New aomenc options (not supported by the key-value API):
    o --nv12
  * Compression Efficiency Improvements:
  - Correctly calculate SSE for high bitdepth in skip mode, 0.2%
    to 0.6% coding gain.
  - RTC at speed 9/10: BD-rate gain of ~4/5%
  - RTC screen content coding: many improvements for real-time
    screen at speed 10 (quality, speedup, and rate control), up
    to high resolutions (1080p).
  - RTC-SVC: fixes to make intra-only frames work for spatial
    layers.
  - RTC-SVC: quality improvements for temporal layers.
  - AV1 RT: A new passive rate control strategy for screen
    content, an average of 7.5% coding gain, with some clips of
    20+%. The feature is turned off by default due to higher bit
    rate variation.
  * Perceptual Quality Improvements:
  - RTC: Visual quality improvements for high speeds (9/10)
  - Improvements in coding quality for all intra mode
  * Speedup and Memory Optimizations:
  - ~10% speedup in good quality mode encoding.
  - ~7% heap memory reduction in good quality encoding mode for
    speed 5 and 6.
  - Ongoing improvements to intra-frame encoding performance on
    Arm
  - Faster encoding speed for "--deltaq-mode=3" mode.
  - ~10% speedup for speed 5/6, ~15% speedup for speed 7/8, and
    ~10% speedup for speed 9/10 in real time encoding mode
  - ~20% heap memory reduction in still-picture encoding mode for
    360p-720p resolutions with multiple threads
  - ~13% speedup for speed 6 and ~12% speedup for speed 9 in
    still-picture encoding mode.
  - Optimizations to improve multi-thread efficiency for
    still-picture encoding mode.
  * Bug Fixes:
  - b/204460717: README.md: replace master with main
  - b/210677928: libaom disable_order is surprising for
    max_reference_frames=3
  - b/222461449: -DCONFIG_TUNE_BUTTERAUGLI=1 broken
  - b/227207606: write_greyscale writes incorrect chroma in
    highbd mode
  - b/229955363: Integer-overflow in linsolve_wiener
  - https://crbug.com/aomedia/2032
  - https://crbug.com/aomedia/2397
  - https://crbug.com/aomedia/2563
  - https://crbug.com/aomedia/2815
  - https://crbug.com/aomedia/3009
  - https://crbug.com/aomedia/3018
  - https://crbug.com/aomedia/3045
  - https://crbug.com/aomedia/3101
  - https://crbug.com/aomedia/3130
  - https://crbug.com/aomedia/3173
  - https://crbug.com/aomedia/3184
  - https://crbug.com/aomedia/3187
  - https://crbug.com/aomedia/3190
  - https://crbug.com/aomedia/3195
  - https://crbug.com/aomedia/3197
  - https://crbug.com/aomedia/3201
  - https://crbug.com/aomedia/3202
  - https://crbug.com/aomedia/3204
  - https://crbug.com/aomedia/3205
  - https://crbug.com/aomedia/3207
  - https://crbug.com/aomedia/3208
  - https://crbug.com/aomedia/3209
  - https://crbug.com/aomedia/3213
  - https://crbug.com/aomedia/3214
  - https://crbug.com/aomedia/3219
  - https://crbug.com/aomedia/3222
  - https://crbug.com/aomedia/3223
  - https://crbug.com/aomedia/3225
  - https://crbug.com/aomedia/3226
  - https://crbug.com/aomedia/3228
  - https://crbug.com/aomedia/3232
  - https://crbug.com/aomedia/3236
  - https://crbug.com/aomedia/3237
  - https://crbug.com/aomedia/3238
  - https://crbug.com/aomedia/3240
  - https://crbug.com/aomedia/3243
  - https://crbug.com/aomedia/3244
  - https://crbug.com/aomedia/3246
  - https://crbug.com/aomedia/3248
  - https://crbug.com/aomedia/3250
  - https://crbug.com/aomedia/3251
  - https://crbug.com/aomedia/3252
  - https://crbug.com/aomedia/3255
  - https://crbug.com/aomedia/3257
  - https://crbug.com/aomedia/3259
  - https://crbug.com/aomedia/3260
  - https://crbug.com/aomedia/3267
  - https://crbug.com/aomedia/3268
  - https://crbug.com/aomedia/3269
  - https://crbug.com/aomedia/3276
  - https://crbug.com/aomedia/3278
  - https://crbug.com/chromium/1290068
  - https://crbug.com/chromium/1303237
  - https://crbug.com/chromium/1304990
  - https://crbug.com/chromium/1321141
  - https://crbug.com/chromium/1321388
  - https://crbug.com/oss-fuzz/44846
  - https://crbug.com/oss-fuzz/44856
  - https://crbug.com/oss-fuzz/44862
  - https://crbug.com/oss-fuzz/44904
  - https://crbug.com/oss-fuzz/45056</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1663848000">- Update to version 3.5.0:
  * This release is ABI compatible with the last one, including
    speedup and memory optimizations, and new APIs and features.
  * New Features
  - Support for frame parallel encode for larger number of
    threads. --fp-mt flag is available for all build
    configurations.
  - New codec control AV1E_GET_NUM_OPERATING_POINTS
  * Speedup and Memory Optimizations
  - Speed-up multithreaded encoding for good quality mode for
    larger number of threads through frame parallel encoding:
    . 30-34% encode time reduction for 1080p, 16 threads, 1x1
    tile configuration (tile_rows x tile_columns)
    . 18-28% encode time reduction for 1080p, 16 threads, 2x4
    tile configuration
    . 18-20% encode time reduction for 2160p, 32 threads, 2x4
    tile configuration
  - 16-20% speed-up for speed=6 to 8 in still-picture encoding
    mode
  - 5-6% heap memory reduction for speed=6 to 10 in real-time
    encoding mode
  - Improvements to the speed for speed=7, 8 in real-time
    encoding mode
  - Improvements to the speed for speed=9, 10 in real-time screen
    encoding mode
  - Optimizations to improve multi-thread efficiency in real-time
    encoding mode
  - 10-15% speed up for SVC with temporal layers
  - SIMD optimizations:
    . Improve av1_quantize_fp_32x32_neon() 1.05x to 1.24x faster
    . Add aom_highbd_quantize_b{,_32x32,_64x64}_adaptive_neon()
    3.15x to 5.6x faster than "C"
    . Improve av1_quantize_fp_64x64_neon() 1.17x to 1.66x faster
    . Add aom_quantize_b_avx2() 1.4x to 1.7x faster than
    aom_quantize_b_avx()
    . Add aom_quantize_b_32x32_avx2() 1.4x to 2.3x faster than
    aom_quantize_b_32x32_avx()
    . Add aom_quantize_b_64x64_avx2() 2.0x to 2.4x faster than
    aom_quantize_b_64x64_ssse3()
    . Add aom_highbd_quantize_b_32x32_avx2() 9.0x to 10.5x faster
    than aom_highbd_quantize_b_32x32_c()
    . Add aom_highbd_quantize_b_64x64_avx2() 7.3x to 9.7x faster
    than aom_highbd_quantize_b_64x64_c()
    . Improve aom_highbd_quantize_b_avx2() 1.07x to 1.20x faster
    . Improve av1_quantize_fp_avx2() 1.13x to 1.49x faster
    . Improve av1_quantize_fp_32x32_avx2() 1.07x to 1.54x faster
    . Improve av1_quantize_fp_64x64_avx2()  1.03x to 1.25x faster
    . Improve av1_quantize_lp_avx2() 1.07x to 1.16x faster
  * Bug fixes including but not limited to
  - aomedia:3206 Assert that skip_width &gt; 0 for deconvolve
    function
  - aomedia:3278 row_mt enc: Delay top-right sync when intraBC is
    enabled
  - aomedia:3282 blend_a64_*_neon: fix bus error in armv7
  - aomedia:3283 FRAME_PARALLEL: Propagate border size to all
    cpis
  - aomedia:3283 RESIZE_MODE: Fix incorrect strides being used
    for motion search
  - aomedia:3286 rtc-svc: Fix to dynamic_enable spatial layers
  - aomedia:3289 rtc-screen: Fix to skipping inter-mode test in
    nonrd
  - aomedia:3289 rtc-screen: Fix for skip newmv on flat blocks
  - aomedia:3299 Fix build failure with CONFIG_TUNE_VMAF=1
  - aomedia:3296 Fix the conflict --enable-tx-size-search=0 with
    nonrd mode --enable-tx-size-search will be ignored in non-rd
    pick mode
  - aomedia:3304 Fix off-by-one error of max w/h in
    validate_config
  - aomedia:3306 Do not use pthread_setname_np on GNU/Hurd
  - aomedia:3325 row-multithreading produces invalid bitstream in
    some cases
  - chromium:1346938, chromium:1338114
  - compiler_flags.cmake: fix flag detection w/cmake 3.17-3.18.2
  - tools/*.py: update to python3
  - aom_configure.cmake: detect PIE and set CONFIG_PIC
  - test/simd_cmp_impl: use explicit types w/CompareSimd*
  - rtc: Fix to disable segm for aq-mode=3
  - rtc: Fix to color_sensitivity in variance partition
  - rtc-screen: Fix bsize in model rd computation for intra
    chroma
  - Fixes to ensure the correct behavior of the encoder
    algorithms (like segmentation, computation of statistics,
    etc.)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1675857600">- Update to version 3.6.0:
  * This release includes compression efficiency and perceptual
    quality improvements, speedup and memory optimizations, and
    some new features. This release is ABI compatible with the last
    release.
  * New Features:
  - New values 20-27 (corresponding to levels 7.0-7.3 and
    8.0-8.3) for the encoder control
    AV1E_SET_TARGET_SEQ_LEVEL_IDX (note that the proposal to add
    the new levels are still in draft status). The original
    special value 24 (keep level stats only for level monitoring)
    is renumbered as 32.
  - New encoder control AV1E_SET_SKIP_POSTPROC_FILTERING to skip
    the application of post-processing filters on reconstructed
    frame in all intra mode.
  - New encoder option "kf-max-pyr-height": Maximum height of
    pyramid structure used for the GOP starting with a key frame
    (-1 to 5).
  - Make SVC work for screen content.
  - Rate control improvements to reduce frame-size spikes for
    screen content coding.
  - RISC-V architecture support with gcc toolchain.
  * Compression Efficiency Improvements:
  - Peak compression efficiency in VOD setting is improved by 1%.
  - 0.7% - 2.2% RTC encoding BDrate gains for real time speed 8
    to 10.
  - 15% RTC encoding BDrate gains for screen content speed 10.
  * Perceptual Quality Improvements:
  - Resolved a visual quality issue that was reported for high
    resolution clips (2K) for speed 4 and above in VOD use case.
  - Visual quality improvements to screen content coding.
  - Quality improvements to temporal layer RTC coding.
  * Speedup and Memory Optimizations:
  - RTC single-thread encoder speedup:
    . ~6% instruction count reduction for speed 5 and 6.
    . ~15% instruction count reduction for speed 7.
    . ~10% instruction count reduction for speed 8 to 10 (&gt;=360p
    resolutions).
  - RTC multi-thread encoder speedup (beyond single-thread
    speedup):
    . 5-8% encode time reduction for speed 7 to 10.
  - RTC screen-content encoder speedup:
    . 11% instruction count reduction for speed 9 and 10 (&gt;=720p
    resolutions).
  - ~5% reduction in heap memory requirements for RTC, speed 6 to
    10.
  * AVIF:
    . 4-5% speedup for speed 9 in still-picture encoding mode.
    . 3-4% heap memory reduction in still-picture encoding mode
    for 360p-720p resolutions with multiple threads.
  * Bug Fixes:
  - Added a workaround for an AV1 specification bug which makes
    TRANSLATION type global motion models unusable.
  - Fixed AddressSanitizer global-buffer-overflow errors in
    av1/encoder/arm/neon/av1_fwd_txfm2d_neon.c.
  - Fixed AddressSanitizer heap-buffer-overflow error in
    av1_wiener_convolve_add_src_neon().
  - chromium:1393384 Avoid scene detection on spatial resize.
  - aomedia:3308 Remove color artifacts under high motion.
  - aomedia:3310 Avoid out of memory failures with Visual Studio
    2017, 2019, and 2022 for Win32 x86 builds.
  - aomedia:3346 Make SVC work properly for screen content.
  - aomedia:3348 Fix a bug where an uninitialized search_site is
    used.
  - aomedia:3365 Work around what seems like a Visual Studio 2022
    compiler optimization bug.
  - aomedia:3369 Incorrect PSNR values reported by libaom for
    12-bit encode.
- Modernize spec, use cmake_build and ldconfig_scriptlets macros.</changelog>
  <changelog author="Frederic Crozat &lt;fcrozat@suse.com&gt;" date="1681992000">- Fix license tag to BSD-2-Clause and AOMPL-1.0.</changelog>
  <changelog author="Frederic Crozat &lt;fcrozat@suse.com&gt;" date="1683028800">- Revert to BSD-2-Clause licence tag to only use SPDX valid
  license tag.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1683720000">- Update to version 3.6.1:
  * aomedia:2871: Guard the support of the 7.x and 8.x levels for
    AV1 under the CONFIG_CWG_C013 config flag, and only output the
    7.x and 8.x levels when explicitly requested.
  * aomedia:3382: Choose sb_size by ppi instead of svc.
  * aomedia:3384: Fix fullpel search limits.
  * aomedia:3388: Replace left shift of xq_active by
    multiplication.
  * aomedia:3389: Fix MV clamping in av1_mv_pred.
  * aomedia:3390: set_ld_layer_depth: cap max_layer_depth to
    MAX_ARF_LAYERS.
  * aomedia:3418: Fix MV clamping in av1_int_pro_motion_estimation.
  * aomedia:3429: Move lpf thread data init to
    lpf_pipeline_mt_init().
  * b:266719111: Fix undefined behavior in Arm Neon code.
  * b:269840681: nonrd_opt: align scan tables.
  * rtc: Fix is_key_frame setting in variance partition.
  * Build: Fix build with clang-cl and Visual Studio.</changelog>
  <changelog author="Bruno Pitrus &lt;brunopitrus@hotmail.com&gt;" date="1693569600">- New upstream release 3.7.0
  - New Features
  * New codec controls:
  * AV1E_SET_QUANTIZER_ONE_PASS: Set quantizer for each frame.
  * AV1E_ENABLE_RATE_GUIDE_DELTAQ: enable the rate distribution guided delta
    quantization in all intra mode. The "enable-rate-guide-deltaq" option is
    added for this control.
  * AV1E_SET_RATE_DISTRIBUTION_INFO: set the input file for rate
    distribution used in all intra mode. The "rate-distribution-info" option
    is added for this control.
  * AV1E_GET_LUMA_CDEF_STRENGTH
  * AV1E_SET_BITRATE_ONE_PASS_CBR
  * AOM_SCALING_MODE is extended to include 2/3 and 1/3 scaling.
  * aom_tune_metric is extended to include AOM_TUNE_VMAF_SALIENCY_MAP.
    The "tune" option is extended to include "vmaf_saliency_map".
  * SVC example encoder svc_encoder_rtc is able to use the rate control
    library.
  * Loopfilter level and CDEF filter level is supported by RTC rate control
    library.
  * New speed (--cpu-used) 11, intended for RTC screen sharing, added for
    faster encoding with ~3% bdrate loss with 16% IC (instruction count)
    speedup compared to speed 10.
  - Compression Efficiency Improvements
  * Improved VoD encoding performance
  * 0.1-0.6% BDrate gains for encoding speeds 2 to 6
  * Rate control accuracy improvement in VBR mode
  * RTC encoding improvements
  * Screen content mode: 10-19% BDrate gains for speeds 6 - 10
  * Temporal layers video mode, for speed 10:
  * 2 temporal layers on low resolutions: 13-15% BDrate gain
  * 3 temporal layers on VGA/HD: 3-4% BDrate gain
  - Perceptual Quality Improvements
  * Fixed multiple block and color artifacts for RTC screen content by
  * Incorporating color into RD cost for IDTX
  * Reducing thresholds for palette mode in non RD mode
  * Allowing more palette mode testing
  * Improved color sensitivity for altref in non-RD mode.
  * Reduced video flickering for temporal layer encoding.
  - Speedup and Memory Optimizations
  * Speed up the VoD encoder
  * 2-5% for encoding speed 2 to 4
  * 9-15% for encoding speed 5 to 6
  * ARM
  * Standard bitdepth
  * speed 5: +31%
  * speed 4: +2%
  * speed 3: +9%
  * speed 2: +157%
  * High bitdepth
  * speed 5: +85%
  * RTC speedups
  * Screen content mode
  * 15% IC speedup for speeds 6-8
  * ARM: 7% for speed 9, 3% for speed 10
  * Temporal layers video mode
  * 7% speedup for 3 temporal layers on VGA/HD, for speed 10
  * Single layer video
  * x86: 2% IC speedup for speeds 7-10
  * ARM: 2-4% speedup across speeds 5-10
  - Bug Fixes
  * aomedia:3261 Assertion failed when encoding av1 with film grain and
    '--monochrome' flag
  * aomedia:3276 ensure all allocations are checked (partial fix)
  * aomedia:3451 The libaom library calls exit()
  * aomedia:3450 enable -Wshadow for C++ sources
  * aomedia:3449 Test Seg Faults After
    b459af3e345be402db052a143fcc5383d4b74cbd
  * aomedia:3416 prune unused symbols / restrict symbol visibility
  * aomedia:3443 Jenkins failure:
    UninstantiatedParameterizedTestSuite&lt;EstimateNoiseTest&gt;
  * aomedia:3434 realtime failures with CONFIG_BITSTREAM_DEBUG=1
  * aomedia:3433 DeltaqModeTest crash w/row_mt=0
  * aomedia:3429 Encoder crash when turn on both ExternalResize and
    g_threads &gt; 2
  * aomedia:3438 Build failure with
    `-DSANITIZE=address -DBUILD_SHARED_LIBS=ON` when using clang.
  * aomedia:3435 Block artifacts when scrolling with AV1 in screen sharing
    scenarios
  * aomedia:3170 vmaf tune presets produce extreme glitches in one scene
  * aomedia:3401 Building shared libaom with MSVC results in a race condition
    with the export library
  * aomedia:3420 Floating point exception in av1_tpl_get_frame_importance()
  * aomedia:3424 heap-buffer-overflow in ScaleFilterCols_16_C() (SIGABRT)
  * aomedia:3417 examples/svc_encoder_rtc.c is using internal macros and
    functions
  * aomedia:3372 SEGV in assign_frame_buffer_p av1_common_int.h
  * aomedia:3130 'cpu-features.h' file not found on Android NDK 22
  * aomedia:3415 Encoder/decoder mismatch for svc_encoder_rtc running
    1 SL 3 TL
  * aomedia:3412 Lossless Mode Fails Loopback Bit Test
  * aomedia:3409 The use of AV1_VAR_OFFS in av1/encoder/var_based_part.c is
    incorrect for high bit depths
  * aomedia:3403 test_libaom fails with error message
    "feenableexcept() failed" on Linux arm
  * aomedia:3370 Random color block at fast motion area
  * aomedia:3393 Assertion failure in av1_convolve_2d_sr_c()
  * aomedia:3392 Strong artifacting for high bit-depth real-time
  * aomedia:3376 aomenc --threads=10 --deltaq-mode=3 crashes after
    "Allintra: multi-threading of calculating differential contrast"
  * aomedia:3380 Crashes and ASan and TSan errors in deltaq-mode=3
    multithreading code
  * chromium:1410766 heap-buffer-overflow in aom_yv12_copy_v_c
  * Cannot set level via AV1E_SET_TARGET_SEQ_LEVEL_IDX
  * Encoding failure due to the use of loop restoration with unintended use of
    lossless mode.
  * Signed integer overflow in scan_past_frames
  * Signed integer overflow in update_a_sep_sym
  * Flickering in AV1 1440p/2160p HDR transcodes
  * Fixed artifacts with screen share at encoder speed 10
  * Fixed prediction setup for IDTX
- Use system libraries instead of vendored ones
  * system-gtest.patch
  * system-yuv.patch
- Enable debuginfo also on modules written in assembly
- Enable building PowerPC-specific optimizations
- Enable Neon optimized code on ARM and fix runtime CPU detection
- Fix missing images in documentation</changelog>
  <changelog author="Bruno Pitrus &lt;brunopitrus@hotmail.com&gt;" date="1693915200">- Split docs to multibuild to avoid dependency cycle</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1701777600">- Update to version 3.7.1:
  * Bug Fixes:
  - aomedia:3349: heap overflow when increasing resolution
  - aomedia:3478: GCC 12.2.0 emits a -Wstringop-overflow warning
    on aom/av1/encoder/motion_search_facade.c
  - aomedia:3489: Detect encoder and image high bit depth
    mismatch
  - aomedia:3491: heap-buffer-overflow on frame size change
  - b/303023614:  Segfault at encoding time for high bit depth
    images
- Switch buildtime compression to zst.</changelog>
  <changelog author="Enrico Belleri &lt;kilgore.trout@idesmi.eu&gt;" date="1720267200">- Update to version 3.7.2:
  * aomedia:3520: get_cubic_kernel_dbl: Assertion `0 &lt;= x &amp;&amp; x &lt; 1'
    failed.
  * aomedia:3526: alloc_compressor_data() is called during every
    aom_codec_control() call on the encoder. Note that this partially
    reverts the fix for bug aomedia:3349.
  * b/310457427 and b/310766628: Only use rec_sse in CBR mode.</changelog>
  <changelog author="Enrico Belleri &lt;kilgore.trout@idesmi.eu&gt;" date="1724587200">- Exclude third_party from obscpio</changelog>
</package>
<package pkgid="5d0acdf4eab1f5edebe5d36aac6c51e2e04bd5f529b5725853ed460ac7c4624d413c22e56b513bec335cf95e89432967015842807bb6b0b3266791ad76c8b708" name="aom-tools" arch="i586">
  <version epoch="0" ver="3.7.2" rel="1.1"/>
  <changelog author="daniel.molkentin@suse.com" date="1620648000">- Update to version 3.1.0 (bsc#1185843):
  https://aomedia.googlesource.com/aom/+/refs/tags/v3.1.0
  This release adds an "all intra" mode to the encoder, which significantly
  speeds up the encoding of AVIF still images at speed 6.
  - Upgrading:
    All intra mode for encoding AVIF still images and AV1 all intra videos:
    AOM_USAGE_ALL_INTRA (2) can be passed as the 'usage' argument to
    aom_codec_enc_config_default().
    New encoder control IDs added:
  - AV1E_SET_ENABLE_DIAGONAL_INTRA: Enable diagonal (D45 to D203) intra
    prediction modes (0: false, 1: true (default)). Also available as
    "enable-diagonal-intra" for the aom_codec_set_option() function.
    New aom_tune_metric enum value: AOM_TUNE_BUTTERAUGLI. The new aomenc option
  - -tune=butteraugli was added to optimize the encoder’s perceptual quality by
    optimizing the Butteraugli metric. Install libjxl (JPEG XL) and then pass
  - DCONFIG_TUNE_BUTTERAUGLI=1 to the cmake command to enable it.
- Includes 3.0
  https://aomedia.googlesource.com/aom/+/refs/tags/v3.0.0
  This release includes compression efficiency improvement, speed improvement
  for realtime mode, as well as some new APIs.
  - Upgrading:
    Support for PSNR calculation based on stream bit-depth.
    New encoder control IDs added:
  - AV1E_SET_ENABLE_RECT_TX
  - AV1E_SET_VBR_CORPUS_COMPLEXITY_LAP
  - AV1E_GET_BASELINE_GF_INTERVAL
  - AV1E_SET_ENABLE_DNL_DENOISING
    New decoder control IDs added:
  - AOMD_GET_FWD_KF_PRESENT
  - AOMD_GET_FRAME_FLAGS
  - AOMD_GET_ALTREF_PRESENT
  - AOMD_GET_TILE_INFO
  - AOMD_GET_SCREEN_CONTENT_TOOLS_INFO
  - AOMD_GET_STILL_PICTURE
  - AOMD_GET_SB_SIZE
  - AOMD_GET_SHOW_EXISTING_FRAME_FLAG
  - AOMD_GET_S_FRAME_INFO
    New aom_tune_content enum value: AOM_CONTENT_FILM
    New aom_tune_metric enum value: AOM_TUNE_VMAF_NEG_MAX_GAIN
    Coefficient and mode update can be turned off via
    AV1E_SET_{COEFF/MODE}_COST_UPD_FREQ.
    New key &amp; value API added, available with aom_codec_set_option() function.
    Scaling API expanded to include 1/4, 3/4 and 1/8.
  - Enhancements:
    Better multithreading performance with realtime mode.
    New speed 9 setting for faster realtime encoding.
    Smaller binary size with low bitdepth and realtime only build.
    Temporal denoiser and its optimizations on x86 and Neon.
    Optimizations for scaling.
    Faster encoding with speed settings 2 to 6 for good encoding mode.
    Improved documentation throughout the library, with function level
    documentation, tree view and support for the dot tool.
  - Bug fixes:
    Aside from those mentioned in v2.0.1 and v2.0.2, this release includes the
    following bug fixes:
    Issue 2940: Segfault when encoding with --use-16bit-internal and --limit &gt; 1
    Issue 2941: Decoder mismatch with --rt --bit-depth=10 and --cpu-used=8
    Issue 2895: mingw-w64 i686 gcc fails to build
    Issue 2874: Separate ssse3 functions from sse2 file.</changelog>
  <changelog author="Ferdinand Thiessen &lt;rpm@fthiessen.de&gt;" date="1625227200">- Update to version 3.1.1
  * Fix vmaf model initialization error when not set to tune=vmaf
  * Fix consistent crash on near-static screen content, keyframe
    related
  * Fix tune=butteraugli mode
- Disable NEON on arm where not available.</changelog>
  <changelog author="pgajdos@suse.com" date="1629892800">- Update to version 3.1.2:
  * Update AUTHORS,CHANGELOG,CMakeLists.txt for v3.1.2
  * Avoid chroma resampling for 420mpeg2 input
  * Check array has two elements before using index 1
  * Fix DecodeScalabilityTest failure in realtime only
  * Store temporal_id and spatial_id of decoded frame
  * exports.cmake: use APPLE and WIN32 and use def for mingw-w64</changelog>
  <changelog author="pgajdos@suse.com" date="1629892801">- security update
- added patches
  fix CVE-2021-30475 [bsc#1189497], Buffer overflow in aom_dsp/noise_model.c
  + libaom-CVE-2021-30475.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1631188800">- security update
- added patches
  fix CVE-2021-30474 [bsc#1186799], aom_dsp/grain_table.c in libaom in AOMedia before 2021-03-30 has a use-after-free.
  + libaom-CVE-2021-30474.patch</changelog>
  <changelog author="gmbr3@opensuse.org" date="1633694400">- Update to version 3.1.3:
  * Update CHANGELOG for v3.1.3-rc2
  * Detect chroma subsampling more directly
  * Detect chroma subsampling more directly
  * image2yuvconfig() should calculate uv_crop_width
  * aom/aom_encoder.h: remove configure option reference
  * aom_encoder.h: fix rc_overshoot_pct range
  * Update AUTHORS,CHANGELOG,CMakeLists.txt for v3.1.3
  * aom_install: don't exclude msvc from install
  * aom_install: use relpath for install
  * aom_install: Install lib dlls to bindir</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1634126400">- fix service data</changelog>
  <changelog author="bjorn.lie@gmail.com" date="1634299200">- Update to version 3.2.0:
  * This release includes compression efficiency and perceptual
    quality improvements, speedup and memory optimizations, as well
    as some new features.
  * New Features:
    + Introduced speeds 7, 8, and 9 for all intra mode.
    + Introduced speed 10 for real time mode.
    + Introduced an API that allows external partition decisions.
    + SVC: added support for compound prediction.
    + SVC: added support for fixed SVC modes.
  * Compression Efficiency Improvements:
    + Intra-mode search improvement.
    + Improved real time (RT) mode BDrate savings by ~5% (RT speed
    5) and ~12% (RT speed 6). The improvement was measured on the
    video conference set.
    + Improved real time mode for nonrd path (speed 7, 8, 9):
    BDrate gains of ~3-5%.
    + Rate control and RD adjustments based on ML research in VP9.
    Gains of ~0.5-1.0% for HD.
  * Perceptual Quality Improvements:
    + Added a new mode --deltaq-mode=3 to improve perceptual
    quality based on a differential contrast model for still
    images.
    + Added a new mode –deltaq-mode=4 to improve perceptual quality
    based on user rated cq_level data set for still images.
    + Weighting of some intra mode and partition size choices to
    better manage and retain texture.
  * Speedup and Memory Optimizations:
    + Further improved 2-pass good quality encoder speed:
    . Speed 2 speedup: 18%
    . Speed 3 speedup: 22%
    . Speed 4 speedup: 37%
    . Speed 5 speedup: 30%
    . Speed 6 speedup: 20%
    + Optimized the real time encoder (measured on the video
    conference set):
    . RT speed 5 speedup: 110%
    . RT speed 6 speedup: 77%
  * Bug Fixes
    + Issue 3069: Fix one-pass mode keyframe placement off-by-one
    error.
    + Issue 3156: Fix a bug in av1_quantize_lp AVX2 optimization.
- Drop libaom-CVE-2021-30474.patch: Fixed upstream.
- Drop libaom-CVE-2021-30475.patch: Fixed upstream.
- Remove changesgenerate option from _service file, use data from
  CHANGELOG to fill .changes instead as it it much nicer and human
  readable than just a list of commit messages.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1645185600">- Update to version 3.3.0:
  * This release includes compression efficiency and perceptual
    quality improvements, speedup and memory optimizations, some
    new features, and several bug fixes.
  * New Features
  - AV1 RT: Introducing CDEF search level 5
  - Changed real time speed 4 to behave the same as real time
    speed 5
  - Add --deltaq-strength
  - rtc: Allow scene-change and overshoot detection for svc
  - rtc: Intra-only frame for svc
  - AV1 RT: Option 2 for codec control AV1E_SET_ENABLE_CDEF to
    disable CDEF on non-ref frames
  - New codec controls AV1E_SET_LOOPFILTER_CONTROL and
    AOME_GET_LOOPFILTER_LEVEL
  - Improvements to three pass encoding
  * Compression Efficiency Improvements: Overall compression gains:
    0.6%
  * Perceptual Quality Improvements
  - Improves the perceptual quality of high QP encoding for
    delta-q mode 4
  - Auto select noise synthesis level for all intra
  * Speedup and Memory Optimizations
  - Added many SSE2 optimizations.
  - Good quality 2-pass encoder speedups:
    o Speed 2: 9%
    o Speed 3: 12.5%
    o Speed 4: 8%
    o Speed 5: 3%
    o Speed 6: 4%
  - Real time mode encoder speedups:
    o Speed 5: 2.6% BDRate gain, 4% speedup
    o Speed 6: 3.5% BDRate gain, 4% speedup
    o Speed 9: 1% BDRate gain, 3% speedup
    o Speed 10: 3% BDRate gain, neutral speedup
  - All intra encoding speedups (AVIF):
    o Single thread - speed 6: 8%
    o Single thread - speed 9: 15%
    o Multi thread(8) - speed 6: 14%
    o Multi thread(8) - speed 9: 34%
  * Bug Fixes
  - Issue 3163: Segmentation fault when using
  - -enable-keyframe-filtering=2
  - Issue 2436: Integer overflow in av1_warp_affine_c()
  - Issue 3226: armv7 build failure due to gcc-11
  - Issue 3195: Bug report on libaom (AddressSanitizer:
    heap-buffer-overflow)
  - Issue 3191: Bug report on libaom (AddressSanitizer: SEGV on
    unknown address)
- Drop libaom-devel Requires from libaom-devel-doc sub-package: We
  do not need the devel package to be able to read the devel
  documentation.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1662292800">- Update to version 3.4.0:
  * This release includes compression efficiency and perceptual
    quality improvements, speedup and memory optimizations, and
    some new features. There are no ABI or API breaking changes in
    this release.
  * New Features:
  - New --dist-metric flag with "qm-psnr" value to use
    quantization matrices in the distortion computation for RD
    search. The default value is "psnr".
  - New command line option "--auto-intra-tools-off=1" to make
    all-intra encoding faster for high bit rate under
    "--deltaq-mode=3" mode.
  - New rate control library aom_av1_rc for real-time hardware
    encoders. Supports CBR for both one spatial layer and SVC.
  - New image format AOM_IMG_FMT_NV12 can be used as input to the
    encoder. The presence of AOM_IMG_FMT_NV12 can be detected at
    compile time by checking if the macro AOM_HAVE_IMG_FMT_NV12
    is defined.
  - New codec controls for the encoder:
    o AV1E_SET_AUTO_INTRA_TOOLS_OFF. Only in effect if
  - -deltaq-mode=3.
    o AV1E_SET_RTC_EXTERNAL_RC
    o AV1E_SET_FP_MT. Only supported if libaom is built with
  - DCONFIG_FRAME_PARALLEL_ENCODE=1.
    o AV1E_GET_TARGET_SEQ_LEVEL_IDX
  - New key-value pairs for the key-value API:
    o --auto-intra-tools-off=0 (default) or 1. Only in effect if
  - -deltaq-mode=3.
    o --strict-level-conformance=0 (default) or 1
    o --fp-mt=0 (default) or 1. Only supported if libaom is built
    with -DCONFIG_FRAME_PARALLEL_ENCODE=1.
  - New aomenc options (not supported by the key-value API):
    o --nv12
  * Compression Efficiency Improvements:
  - Correctly calculate SSE for high bitdepth in skip mode, 0.2%
    to 0.6% coding gain.
  - RTC at speed 9/10: BD-rate gain of ~4/5%
  - RTC screen content coding: many improvements for real-time
    screen at speed 10 (quality, speedup, and rate control), up
    to high resolutions (1080p).
  - RTC-SVC: fixes to make intra-only frames work for spatial
    layers.
  - RTC-SVC: quality improvements for temporal layers.
  - AV1 RT: A new passive rate control strategy for screen
    content, an average of 7.5% coding gain, with some clips of
    20+%. The feature is turned off by default due to higher bit
    rate variation.
  * Perceptual Quality Improvements:
  - RTC: Visual quality improvements for high speeds (9/10)
  - Improvements in coding quality for all intra mode
  * Speedup and Memory Optimizations:
  - ~10% speedup in good quality mode encoding.
  - ~7% heap memory reduction in good quality encoding mode for
    speed 5 and 6.
  - Ongoing improvements to intra-frame encoding performance on
    Arm
  - Faster encoding speed for "--deltaq-mode=3" mode.
  - ~10% speedup for speed 5/6, ~15% speedup for speed 7/8, and
    ~10% speedup for speed 9/10 in real time encoding mode
  - ~20% heap memory reduction in still-picture encoding mode for
    360p-720p resolutions with multiple threads
  - ~13% speedup for speed 6 and ~12% speedup for speed 9 in
    still-picture encoding mode.
  - Optimizations to improve multi-thread efficiency for
    still-picture encoding mode.
  * Bug Fixes:
  - b/204460717: README.md: replace master with main
  - b/210677928: libaom disable_order is surprising for
    max_reference_frames=3
  - b/222461449: -DCONFIG_TUNE_BUTTERAUGLI=1 broken
  - b/227207606: write_greyscale writes incorrect chroma in
    highbd mode
  - b/229955363: Integer-overflow in linsolve_wiener
  - https://crbug.com/aomedia/2032
  - https://crbug.com/aomedia/2397
  - https://crbug.com/aomedia/2563
  - https://crbug.com/aomedia/2815
  - https://crbug.com/aomedia/3009
  - https://crbug.com/aomedia/3018
  - https://crbug.com/aomedia/3045
  - https://crbug.com/aomedia/3101
  - https://crbug.com/aomedia/3130
  - https://crbug.com/aomedia/3173
  - https://crbug.com/aomedia/3184
  - https://crbug.com/aomedia/3187
  - https://crbug.com/aomedia/3190
  - https://crbug.com/aomedia/3195
  - https://crbug.com/aomedia/3197
  - https://crbug.com/aomedia/3201
  - https://crbug.com/aomedia/3202
  - https://crbug.com/aomedia/3204
  - https://crbug.com/aomedia/3205
  - https://crbug.com/aomedia/3207
  - https://crbug.com/aomedia/3208
  - https://crbug.com/aomedia/3209
  - https://crbug.com/aomedia/3213
  - https://crbug.com/aomedia/3214
  - https://crbug.com/aomedia/3219
  - https://crbug.com/aomedia/3222
  - https://crbug.com/aomedia/3223
  - https://crbug.com/aomedia/3225
  - https://crbug.com/aomedia/3226
  - https://crbug.com/aomedia/3228
  - https://crbug.com/aomedia/3232
  - https://crbug.com/aomedia/3236
  - https://crbug.com/aomedia/3237
  - https://crbug.com/aomedia/3238
  - https://crbug.com/aomedia/3240
  - https://crbug.com/aomedia/3243
  - https://crbug.com/aomedia/3244
  - https://crbug.com/aomedia/3246
  - https://crbug.com/aomedia/3248
  - https://crbug.com/aomedia/3250
  - https://crbug.com/aomedia/3251
  - https://crbug.com/aomedia/3252
  - https://crbug.com/aomedia/3255
  - https://crbug.com/aomedia/3257
  - https://crbug.com/aomedia/3259
  - https://crbug.com/aomedia/3260
  - https://crbug.com/aomedia/3267
  - https://crbug.com/aomedia/3268
  - https://crbug.com/aomedia/3269
  - https://crbug.com/aomedia/3276
  - https://crbug.com/aomedia/3278
  - https://crbug.com/chromium/1290068
  - https://crbug.com/chromium/1303237
  - https://crbug.com/chromium/1304990
  - https://crbug.com/chromium/1321141
  - https://crbug.com/chromium/1321388
  - https://crbug.com/oss-fuzz/44846
  - https://crbug.com/oss-fuzz/44856
  - https://crbug.com/oss-fuzz/44862
  - https://crbug.com/oss-fuzz/44904
  - https://crbug.com/oss-fuzz/45056</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1663848000">- Update to version 3.5.0:
  * This release is ABI compatible with the last one, including
    speedup and memory optimizations, and new APIs and features.
  * New Features
  - Support for frame parallel encode for larger number of
    threads. --fp-mt flag is available for all build
    configurations.
  - New codec control AV1E_GET_NUM_OPERATING_POINTS
  * Speedup and Memory Optimizations
  - Speed-up multithreaded encoding for good quality mode for
    larger number of threads through frame parallel encoding:
    . 30-34% encode time reduction for 1080p, 16 threads, 1x1
    tile configuration (tile_rows x tile_columns)
    . 18-28% encode time reduction for 1080p, 16 threads, 2x4
    tile configuration
    . 18-20% encode time reduction for 2160p, 32 threads, 2x4
    tile configuration
  - 16-20% speed-up for speed=6 to 8 in still-picture encoding
    mode
  - 5-6% heap memory reduction for speed=6 to 10 in real-time
    encoding mode
  - Improvements to the speed for speed=7, 8 in real-time
    encoding mode
  - Improvements to the speed for speed=9, 10 in real-time screen
    encoding mode
  - Optimizations to improve multi-thread efficiency in real-time
    encoding mode
  - 10-15% speed up for SVC with temporal layers
  - SIMD optimizations:
    . Improve av1_quantize_fp_32x32_neon() 1.05x to 1.24x faster
    . Add aom_highbd_quantize_b{,_32x32,_64x64}_adaptive_neon()
    3.15x to 5.6x faster than "C"
    . Improve av1_quantize_fp_64x64_neon() 1.17x to 1.66x faster
    . Add aom_quantize_b_avx2() 1.4x to 1.7x faster than
    aom_quantize_b_avx()
    . Add aom_quantize_b_32x32_avx2() 1.4x to 2.3x faster than
    aom_quantize_b_32x32_avx()
    . Add aom_quantize_b_64x64_avx2() 2.0x to 2.4x faster than
    aom_quantize_b_64x64_ssse3()
    . Add aom_highbd_quantize_b_32x32_avx2() 9.0x to 10.5x faster
    than aom_highbd_quantize_b_32x32_c()
    . Add aom_highbd_quantize_b_64x64_avx2() 7.3x to 9.7x faster
    than aom_highbd_quantize_b_64x64_c()
    . Improve aom_highbd_quantize_b_avx2() 1.07x to 1.20x faster
    . Improve av1_quantize_fp_avx2() 1.13x to 1.49x faster
    . Improve av1_quantize_fp_32x32_avx2() 1.07x to 1.54x faster
    . Improve av1_quantize_fp_64x64_avx2()  1.03x to 1.25x faster
    . Improve av1_quantize_lp_avx2() 1.07x to 1.16x faster
  * Bug fixes including but not limited to
  - aomedia:3206 Assert that skip_width &gt; 0 for deconvolve
    function
  - aomedia:3278 row_mt enc: Delay top-right sync when intraBC is
    enabled
  - aomedia:3282 blend_a64_*_neon: fix bus error in armv7
  - aomedia:3283 FRAME_PARALLEL: Propagate border size to all
    cpis
  - aomedia:3283 RESIZE_MODE: Fix incorrect strides being used
    for motion search
  - aomedia:3286 rtc-svc: Fix to dynamic_enable spatial layers
  - aomedia:3289 rtc-screen: Fix to skipping inter-mode test in
    nonrd
  - aomedia:3289 rtc-screen: Fix for skip newmv on flat blocks
  - aomedia:3299 Fix build failure with CONFIG_TUNE_VMAF=1
  - aomedia:3296 Fix the conflict --enable-tx-size-search=0 with
    nonrd mode --enable-tx-size-search will be ignored in non-rd
    pick mode
  - aomedia:3304 Fix off-by-one error of max w/h in
    validate_config
  - aomedia:3306 Do not use pthread_setname_np on GNU/Hurd
  - aomedia:3325 row-multithreading produces invalid bitstream in
    some cases
  - chromium:1346938, chromium:1338114
  - compiler_flags.cmake: fix flag detection w/cmake 3.17-3.18.2
  - tools/*.py: update to python3
  - aom_configure.cmake: detect PIE and set CONFIG_PIC
  - test/simd_cmp_impl: use explicit types w/CompareSimd*
  - rtc: Fix to disable segm for aq-mode=3
  - rtc: Fix to color_sensitivity in variance partition
  - rtc-screen: Fix bsize in model rd computation for intra
    chroma
  - Fixes to ensure the correct behavior of the encoder
    algorithms (like segmentation, computation of statistics,
    etc.)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1675857600">- Update to version 3.6.0:
  * This release includes compression efficiency and perceptual
    quality improvements, speedup and memory optimizations, and
    some new features. This release is ABI compatible with the last
    release.
  * New Features:
  - New values 20-27 (corresponding to levels 7.0-7.3 and
    8.0-8.3) for the encoder control
    AV1E_SET_TARGET_SEQ_LEVEL_IDX (note that the proposal to add
    the new levels are still in draft status). The original
    special value 24 (keep level stats only for level monitoring)
    is renumbered as 32.
  - New encoder control AV1E_SET_SKIP_POSTPROC_FILTERING to skip
    the application of post-processing filters on reconstructed
    frame in all intra mode.
  - New encoder option "kf-max-pyr-height": Maximum height of
    pyramid structure used for the GOP starting with a key frame
    (-1 to 5).
  - Make SVC work for screen content.
  - Rate control improvements to reduce frame-size spikes for
    screen content coding.
  - RISC-V architecture support with gcc toolchain.
  * Compression Efficiency Improvements:
  - Peak compression efficiency in VOD setting is improved by 1%.
  - 0.7% - 2.2% RTC encoding BDrate gains for real time speed 8
    to 10.
  - 15% RTC encoding BDrate gains for screen content speed 10.
  * Perceptual Quality Improvements:
  - Resolved a visual quality issue that was reported for high
    resolution clips (2K) for speed 4 and above in VOD use case.
  - Visual quality improvements to screen content coding.
  - Quality improvements to temporal layer RTC coding.
  * Speedup and Memory Optimizations:
  - RTC single-thread encoder speedup:
    . ~6% instruction count reduction for speed 5 and 6.
    . ~15% instruction count reduction for speed 7.
    . ~10% instruction count reduction for speed 8 to 10 (&gt;=360p
    resolutions).
  - RTC multi-thread encoder speedup (beyond single-thread
    speedup):
    . 5-8% encode time reduction for speed 7 to 10.
  - RTC screen-content encoder speedup:
    . 11% instruction count reduction for speed 9 and 10 (&gt;=720p
    resolutions).
  - ~5% reduction in heap memory requirements for RTC, speed 6 to
    10.
  * AVIF:
    . 4-5% speedup for speed 9 in still-picture encoding mode.
    . 3-4% heap memory reduction in still-picture encoding mode
    for 360p-720p resolutions with multiple threads.
  * Bug Fixes:
  - Added a workaround for an AV1 specification bug which makes
    TRANSLATION type global motion models unusable.
  - Fixed AddressSanitizer global-buffer-overflow errors in
    av1/encoder/arm/neon/av1_fwd_txfm2d_neon.c.
  - Fixed AddressSanitizer heap-buffer-overflow error in
    av1_wiener_convolve_add_src_neon().
  - chromium:1393384 Avoid scene detection on spatial resize.
  - aomedia:3308 Remove color artifacts under high motion.
  - aomedia:3310 Avoid out of memory failures with Visual Studio
    2017, 2019, and 2022 for Win32 x86 builds.
  - aomedia:3346 Make SVC work properly for screen content.
  - aomedia:3348 Fix a bug where an uninitialized search_site is
    used.
  - aomedia:3365 Work around what seems like a Visual Studio 2022
    compiler optimization bug.
  - aomedia:3369 Incorrect PSNR values reported by libaom for
    12-bit encode.
- Modernize spec, use cmake_build and ldconfig_scriptlets macros.</changelog>
  <changelog author="Frederic Crozat &lt;fcrozat@suse.com&gt;" date="1681992000">- Fix license tag to BSD-2-Clause and AOMPL-1.0.</changelog>
  <changelog author="Frederic Crozat &lt;fcrozat@suse.com&gt;" date="1683028800">- Revert to BSD-2-Clause licence tag to only use SPDX valid
  license tag.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1683720000">- Update to version 3.6.1:
  * aomedia:2871: Guard the support of the 7.x and 8.x levels for
    AV1 under the CONFIG_CWG_C013 config flag, and only output the
    7.x and 8.x levels when explicitly requested.
  * aomedia:3382: Choose sb_size by ppi instead of svc.
  * aomedia:3384: Fix fullpel search limits.
  * aomedia:3388: Replace left shift of xq_active by
    multiplication.
  * aomedia:3389: Fix MV clamping in av1_mv_pred.
  * aomedia:3390: set_ld_layer_depth: cap max_layer_depth to
    MAX_ARF_LAYERS.
  * aomedia:3418: Fix MV clamping in av1_int_pro_motion_estimation.
  * aomedia:3429: Move lpf thread data init to
    lpf_pipeline_mt_init().
  * b:266719111: Fix undefined behavior in Arm Neon code.
  * b:269840681: nonrd_opt: align scan tables.
  * rtc: Fix is_key_frame setting in variance partition.
  * Build: Fix build with clang-cl and Visual Studio.</changelog>
  <changelog author="Bruno Pitrus &lt;brunopitrus@hotmail.com&gt;" date="1693569600">- New upstream release 3.7.0
  - New Features
  * New codec controls:
  * AV1E_SET_QUANTIZER_ONE_PASS: Set quantizer for each frame.
  * AV1E_ENABLE_RATE_GUIDE_DELTAQ: enable the rate distribution guided delta
    quantization in all intra mode. The "enable-rate-guide-deltaq" option is
    added for this control.
  * AV1E_SET_RATE_DISTRIBUTION_INFO: set the input file for rate
    distribution used in all intra mode. The "rate-distribution-info" option
    is added for this control.
  * AV1E_GET_LUMA_CDEF_STRENGTH
  * AV1E_SET_BITRATE_ONE_PASS_CBR
  * AOM_SCALING_MODE is extended to include 2/3 and 1/3 scaling.
  * aom_tune_metric is extended to include AOM_TUNE_VMAF_SALIENCY_MAP.
    The "tune" option is extended to include "vmaf_saliency_map".
  * SVC example encoder svc_encoder_rtc is able to use the rate control
    library.
  * Loopfilter level and CDEF filter level is supported by RTC rate control
    library.
  * New speed (--cpu-used) 11, intended for RTC screen sharing, added for
    faster encoding with ~3% bdrate loss with 16% IC (instruction count)
    speedup compared to speed 10.
  - Compression Efficiency Improvements
  * Improved VoD encoding performance
  * 0.1-0.6% BDrate gains for encoding speeds 2 to 6
  * Rate control accuracy improvement in VBR mode
  * RTC encoding improvements
  * Screen content mode: 10-19% BDrate gains for speeds 6 - 10
  * Temporal layers video mode, for speed 10:
  * 2 temporal layers on low resolutions: 13-15% BDrate gain
  * 3 temporal layers on VGA/HD: 3-4% BDrate gain
  - Perceptual Quality Improvements
  * Fixed multiple block and color artifacts for RTC screen content by
  * Incorporating color into RD cost for IDTX
  * Reducing thresholds for palette mode in non RD mode
  * Allowing more palette mode testing
  * Improved color sensitivity for altref in non-RD mode.
  * Reduced video flickering for temporal layer encoding.
  - Speedup and Memory Optimizations
  * Speed up the VoD encoder
  * 2-5% for encoding speed 2 to 4
  * 9-15% for encoding speed 5 to 6
  * ARM
  * Standard bitdepth
  * speed 5: +31%
  * speed 4: +2%
  * speed 3: +9%
  * speed 2: +157%
  * High bitdepth
  * speed 5: +85%
  * RTC speedups
  * Screen content mode
  * 15% IC speedup for speeds 6-8
  * ARM: 7% for speed 9, 3% for speed 10
  * Temporal layers video mode
  * 7% speedup for 3 temporal layers on VGA/HD, for speed 10
  * Single layer video
  * x86: 2% IC speedup for speeds 7-10
  * ARM: 2-4% speedup across speeds 5-10
  - Bug Fixes
  * aomedia:3261 Assertion failed when encoding av1 with film grain and
    '--monochrome' flag
  * aomedia:3276 ensure all allocations are checked (partial fix)
  * aomedia:3451 The libaom library calls exit()
  * aomedia:3450 enable -Wshadow for C++ sources
  * aomedia:3449 Test Seg Faults After
    b459af3e345be402db052a143fcc5383d4b74cbd
  * aomedia:3416 prune unused symbols / restrict symbol visibility
  * aomedia:3443 Jenkins failure:
    UninstantiatedParameterizedTestSuite&lt;EstimateNoiseTest&gt;
  * aomedia:3434 realtime failures with CONFIG_BITSTREAM_DEBUG=1
  * aomedia:3433 DeltaqModeTest crash w/row_mt=0
  * aomedia:3429 Encoder crash when turn on both ExternalResize and
    g_threads &gt; 2
  * aomedia:3438 Build failure with
    `-DSANITIZE=address -DBUILD_SHARED_LIBS=ON` when using clang.
  * aomedia:3435 Block artifacts when scrolling with AV1 in screen sharing
    scenarios
  * aomedia:3170 vmaf tune presets produce extreme glitches in one scene
  * aomedia:3401 Building shared libaom with MSVC results in a race condition
    with the export library
  * aomedia:3420 Floating point exception in av1_tpl_get_frame_importance()
  * aomedia:3424 heap-buffer-overflow in ScaleFilterCols_16_C() (SIGABRT)
  * aomedia:3417 examples/svc_encoder_rtc.c is using internal macros and
    functions
  * aomedia:3372 SEGV in assign_frame_buffer_p av1_common_int.h
  * aomedia:3130 'cpu-features.h' file not found on Android NDK 22
  * aomedia:3415 Encoder/decoder mismatch for svc_encoder_rtc running
    1 SL 3 TL
  * aomedia:3412 Lossless Mode Fails Loopback Bit Test
  * aomedia:3409 The use of AV1_VAR_OFFS in av1/encoder/var_based_part.c is
    incorrect for high bit depths
  * aomedia:3403 test_libaom fails with error message
    "feenableexcept() failed" on Linux arm
  * aomedia:3370 Random color block at fast motion area
  * aomedia:3393 Assertion failure in av1_convolve_2d_sr_c()
  * aomedia:3392 Strong artifacting for high bit-depth real-time
  * aomedia:3376 aomenc --threads=10 --deltaq-mode=3 crashes after
    "Allintra: multi-threading of calculating differential contrast"
  * aomedia:3380 Crashes and ASan and TSan errors in deltaq-mode=3
    multithreading code
  * chromium:1410766 heap-buffer-overflow in aom_yv12_copy_v_c
  * Cannot set level via AV1E_SET_TARGET_SEQ_LEVEL_IDX
  * Encoding failure due to the use of loop restoration with unintended use of
    lossless mode.
  * Signed integer overflow in scan_past_frames
  * Signed integer overflow in update_a_sep_sym
  * Flickering in AV1 1440p/2160p HDR transcodes
  * Fixed artifacts with screen share at encoder speed 10
  * Fixed prediction setup for IDTX
- Use system libraries instead of vendored ones
  * system-gtest.patch
  * system-yuv.patch
- Enable debuginfo also on modules written in assembly
- Enable building PowerPC-specific optimizations
- Enable Neon optimized code on ARM and fix runtime CPU detection
- Fix missing images in documentation</changelog>
  <changelog author="Bruno Pitrus &lt;brunopitrus@hotmail.com&gt;" date="1693915200">- Split docs to multibuild to avoid dependency cycle</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1701777600">- Update to version 3.7.1:
  * Bug Fixes:
  - aomedia:3349: heap overflow when increasing resolution
  - aomedia:3478: GCC 12.2.0 emits a -Wstringop-overflow warning
    on aom/av1/encoder/motion_search_facade.c
  - aomedia:3489: Detect encoder and image high bit depth
    mismatch
  - aomedia:3491: heap-buffer-overflow on frame size change
  - b/303023614:  Segfault at encoding time for high bit depth
    images
- Switch buildtime compression to zst.</changelog>
  <changelog author="Enrico Belleri &lt;kilgore.trout@idesmi.eu&gt;" date="1720267200">- Update to version 3.7.2:
  * aomedia:3520: get_cubic_kernel_dbl: Assertion `0 &lt;= x &amp;&amp; x &lt; 1'
    failed.
  * aomedia:3526: alloc_compressor_data() is called during every
    aom_codec_control() call on the encoder. Note that this partially
    reverts the fix for bug aomedia:3349.
  * b/310457427 and b/310766628: Only use rec_sse in CBR mode.</changelog>
  <changelog author="Enrico Belleri &lt;kilgore.trout@idesmi.eu&gt;" date="1724587200">- Exclude third_party from obscpio</changelog>
</package>
<package pkgid="9837476eac49c020c9b5726e07c8e44b00ff58708b73e727ae4019e95077b239ed5d61da236405fbad8cf080d8a6c08a4c2fee58183b4b08ce45e891d64cb26e" name="aom-tools" arch="x86_64">
  <version epoch="0" ver="3.7.2" rel="1.1"/>
  <changelog author="daniel.molkentin@suse.com" date="1620648000">- Update to version 3.1.0 (bsc#1185843):
  https://aomedia.googlesource.com/aom/+/refs/tags/v3.1.0
  This release adds an "all intra" mode to the encoder, which significantly
  speeds up the encoding of AVIF still images at speed 6.
  - Upgrading:
    All intra mode for encoding AVIF still images and AV1 all intra videos:
    AOM_USAGE_ALL_INTRA (2) can be passed as the 'usage' argument to
    aom_codec_enc_config_default().
    New encoder control IDs added:
  - AV1E_SET_ENABLE_DIAGONAL_INTRA: Enable diagonal (D45 to D203) intra
    prediction modes (0: false, 1: true (default)). Also available as
    "enable-diagonal-intra" for the aom_codec_set_option() function.
    New aom_tune_metric enum value: AOM_TUNE_BUTTERAUGLI. The new aomenc option
  - -tune=butteraugli was added to optimize the encoder’s perceptual quality by
    optimizing the Butteraugli metric. Install libjxl (JPEG XL) and then pass
  - DCONFIG_TUNE_BUTTERAUGLI=1 to the cmake command to enable it.
- Includes 3.0
  https://aomedia.googlesource.com/aom/+/refs/tags/v3.0.0
  This release includes compression efficiency improvement, speed improvement
  for realtime mode, as well as some new APIs.
  - Upgrading:
    Support for PSNR calculation based on stream bit-depth.
    New encoder control IDs added:
  - AV1E_SET_ENABLE_RECT_TX
  - AV1E_SET_VBR_CORPUS_COMPLEXITY_LAP
  - AV1E_GET_BASELINE_GF_INTERVAL
  - AV1E_SET_ENABLE_DNL_DENOISING
    New decoder control IDs added:
  - AOMD_GET_FWD_KF_PRESENT
  - AOMD_GET_FRAME_FLAGS
  - AOMD_GET_ALTREF_PRESENT
  - AOMD_GET_TILE_INFO
  - AOMD_GET_SCREEN_CONTENT_TOOLS_INFO
  - AOMD_GET_STILL_PICTURE
  - AOMD_GET_SB_SIZE
  - AOMD_GET_SHOW_EXISTING_FRAME_FLAG
  - AOMD_GET_S_FRAME_INFO
    New aom_tune_content enum value: AOM_CONTENT_FILM
    New aom_tune_metric enum value: AOM_TUNE_VMAF_NEG_MAX_GAIN
    Coefficient and mode update can be turned off via
    AV1E_SET_{COEFF/MODE}_COST_UPD_FREQ.
    New key &amp; value API added, available with aom_codec_set_option() function.
    Scaling API expanded to include 1/4, 3/4 and 1/8.
  - Enhancements:
    Better multithreading performance with realtime mode.
    New speed 9 setting for faster realtime encoding.
    Smaller binary size with low bitdepth and realtime only build.
    Temporal denoiser and its optimizations on x86 and Neon.
    Optimizations for scaling.
    Faster encoding with speed settings 2 to 6 for good encoding mode.
    Improved documentation throughout the library, with function level
    documentation, tree view and support for the dot tool.
  - Bug fixes:
    Aside from those mentioned in v2.0.1 and v2.0.2, this release includes the
    following bug fixes:
    Issue 2940: Segfault when encoding with --use-16bit-internal and --limit &gt; 1
    Issue 2941: Decoder mismatch with --rt --bit-depth=10 and --cpu-used=8
    Issue 2895: mingw-w64 i686 gcc fails to build
    Issue 2874: Separate ssse3 functions from sse2 file.</changelog>
  <changelog author="Ferdinand Thiessen &lt;rpm@fthiessen.de&gt;" date="1625227200">- Update to version 3.1.1
  * Fix vmaf model initialization error when not set to tune=vmaf
  * Fix consistent crash on near-static screen content, keyframe
    related
  * Fix tune=butteraugli mode
- Disable NEON on arm where not available.</changelog>
  <changelog author="pgajdos@suse.com" date="1629892800">- Update to version 3.1.2:
  * Update AUTHORS,CHANGELOG,CMakeLists.txt for v3.1.2
  * Avoid chroma resampling for 420mpeg2 input
  * Check array has two elements before using index 1
  * Fix DecodeScalabilityTest failure in realtime only
  * Store temporal_id and spatial_id of decoded frame
  * exports.cmake: use APPLE and WIN32 and use def for mingw-w64</changelog>
  <changelog author="pgajdos@suse.com" date="1629892801">- security update
- added patches
  fix CVE-2021-30475 [bsc#1189497], Buffer overflow in aom_dsp/noise_model.c
  + libaom-CVE-2021-30475.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1631188800">- security update
- added patches
  fix CVE-2021-30474 [bsc#1186799], aom_dsp/grain_table.c in libaom in AOMedia before 2021-03-30 has a use-after-free.
  + libaom-CVE-2021-30474.patch</changelog>
  <changelog author="gmbr3@opensuse.org" date="1633694400">- Update to version 3.1.3:
  * Update CHANGELOG for v3.1.3-rc2
  * Detect chroma subsampling more directly
  * Detect chroma subsampling more directly
  * image2yuvconfig() should calculate uv_crop_width
  * aom/aom_encoder.h: remove configure option reference
  * aom_encoder.h: fix rc_overshoot_pct range
  * Update AUTHORS,CHANGELOG,CMakeLists.txt for v3.1.3
  * aom_install: don't exclude msvc from install
  * aom_install: use relpath for install
  * aom_install: Install lib dlls to bindir</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1634126400">- fix service data</changelog>
  <changelog author="bjorn.lie@gmail.com" date="1634299200">- Update to version 3.2.0:
  * This release includes compression efficiency and perceptual
    quality improvements, speedup and memory optimizations, as well
    as some new features.
  * New Features:
    + Introduced speeds 7, 8, and 9 for all intra mode.
    + Introduced speed 10 for real time mode.
    + Introduced an API that allows external partition decisions.
    + SVC: added support for compound prediction.
    + SVC: added support for fixed SVC modes.
  * Compression Efficiency Improvements:
    + Intra-mode search improvement.
    + Improved real time (RT) mode BDrate savings by ~5% (RT speed
    5) and ~12% (RT speed 6). The improvement was measured on the
    video conference set.
    + Improved real time mode for nonrd path (speed 7, 8, 9):
    BDrate gains of ~3-5%.
    + Rate control and RD adjustments based on ML research in VP9.
    Gains of ~0.5-1.0% for HD.
  * Perceptual Quality Improvements:
    + Added a new mode --deltaq-mode=3 to improve perceptual
    quality based on a differential contrast model for still
    images.
    + Added a new mode –deltaq-mode=4 to improve perceptual quality
    based on user rated cq_level data set for still images.
    + Weighting of some intra mode and partition size choices to
    better manage and retain texture.
  * Speedup and Memory Optimizations:
    + Further improved 2-pass good quality encoder speed:
    . Speed 2 speedup: 18%
    . Speed 3 speedup: 22%
    . Speed 4 speedup: 37%
    . Speed 5 speedup: 30%
    . Speed 6 speedup: 20%
    + Optimized the real time encoder (measured on the video
    conference set):
    . RT speed 5 speedup: 110%
    . RT speed 6 speedup: 77%
  * Bug Fixes
    + Issue 3069: Fix one-pass mode keyframe placement off-by-one
    error.
    + Issue 3156: Fix a bug in av1_quantize_lp AVX2 optimization.
- Drop libaom-CVE-2021-30474.patch: Fixed upstream.
- Drop libaom-CVE-2021-30475.patch: Fixed upstream.
- Remove changesgenerate option from _service file, use data from
  CHANGELOG to fill .changes instead as it it much nicer and human
  readable than just a list of commit messages.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1645185600">- Update to version 3.3.0:
  * This release includes compression efficiency and perceptual
    quality improvements, speedup and memory optimizations, some
    new features, and several bug fixes.
  * New Features
  - AV1 RT: Introducing CDEF search level 5
  - Changed real time speed 4 to behave the same as real time
    speed 5
  - Add --deltaq-strength
  - rtc: Allow scene-change and overshoot detection for svc
  - rtc: Intra-only frame for svc
  - AV1 RT: Option 2 for codec control AV1E_SET_ENABLE_CDEF to
    disable CDEF on non-ref frames
  - New codec controls AV1E_SET_LOOPFILTER_CONTROL and
    AOME_GET_LOOPFILTER_LEVEL
  - Improvements to three pass encoding
  * Compression Efficiency Improvements: Overall compression gains:
    0.6%
  * Perceptual Quality Improvements
  - Improves the perceptual quality of high QP encoding for
    delta-q mode 4
  - Auto select noise synthesis level for all intra
  * Speedup and Memory Optimizations
  - Added many SSE2 optimizations.
  - Good quality 2-pass encoder speedups:
    o Speed 2: 9%
    o Speed 3: 12.5%
    o Speed 4: 8%
    o Speed 5: 3%
    o Speed 6: 4%
  - Real time mode encoder speedups:
    o Speed 5: 2.6% BDRate gain, 4% speedup
    o Speed 6: 3.5% BDRate gain, 4% speedup
    o Speed 9: 1% BDRate gain, 3% speedup
    o Speed 10: 3% BDRate gain, neutral speedup
  - All intra encoding speedups (AVIF):
    o Single thread - speed 6: 8%
    o Single thread - speed 9: 15%
    o Multi thread(8) - speed 6: 14%
    o Multi thread(8) - speed 9: 34%
  * Bug Fixes
  - Issue 3163: Segmentation fault when using
  - -enable-keyframe-filtering=2
  - Issue 2436: Integer overflow in av1_warp_affine_c()
  - Issue 3226: armv7 build failure due to gcc-11
  - Issue 3195: Bug report on libaom (AddressSanitizer:
    heap-buffer-overflow)
  - Issue 3191: Bug report on libaom (AddressSanitizer: SEGV on
    unknown address)
- Drop libaom-devel Requires from libaom-devel-doc sub-package: We
  do not need the devel package to be able to read the devel
  documentation.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1662292800">- Update to version 3.4.0:
  * This release includes compression efficiency and perceptual
    quality improvements, speedup and memory optimizations, and
    some new features. There are no ABI or API breaking changes in
    this release.
  * New Features:
  - New --dist-metric flag with "qm-psnr" value to use
    quantization matrices in the distortion computation for RD
    search. The default value is "psnr".
  - New command line option "--auto-intra-tools-off=1" to make
    all-intra encoding faster for high bit rate under
    "--deltaq-mode=3" mode.
  - New rate control library aom_av1_rc for real-time hardware
    encoders. Supports CBR for both one spatial layer and SVC.
  - New image format AOM_IMG_FMT_NV12 can be used as input to the
    encoder. The presence of AOM_IMG_FMT_NV12 can be detected at
    compile time by checking if the macro AOM_HAVE_IMG_FMT_NV12
    is defined.
  - New codec controls for the encoder:
    o AV1E_SET_AUTO_INTRA_TOOLS_OFF. Only in effect if
  - -deltaq-mode=3.
    o AV1E_SET_RTC_EXTERNAL_RC
    o AV1E_SET_FP_MT. Only supported if libaom is built with
  - DCONFIG_FRAME_PARALLEL_ENCODE=1.
    o AV1E_GET_TARGET_SEQ_LEVEL_IDX
  - New key-value pairs for the key-value API:
    o --auto-intra-tools-off=0 (default) or 1. Only in effect if
  - -deltaq-mode=3.
    o --strict-level-conformance=0 (default) or 1
    o --fp-mt=0 (default) or 1. Only supported if libaom is built
    with -DCONFIG_FRAME_PARALLEL_ENCODE=1.
  - New aomenc options (not supported by the key-value API):
    o --nv12
  * Compression Efficiency Improvements:
  - Correctly calculate SSE for high bitdepth in skip mode, 0.2%
    to 0.6% coding gain.
  - RTC at speed 9/10: BD-rate gain of ~4/5%
  - RTC screen content coding: many improvements for real-time
    screen at speed 10 (quality, speedup, and rate control), up
    to high resolutions (1080p).
  - RTC-SVC: fixes to make intra-only frames work for spatial
    layers.
  - RTC-SVC: quality improvements for temporal layers.
  - AV1 RT: A new passive rate control strategy for screen
    content, an average of 7.5% coding gain, with some clips of
    20+%. The feature is turned off by default due to higher bit
    rate variation.
  * Perceptual Quality Improvements:
  - RTC: Visual quality improvements for high speeds (9/10)
  - Improvements in coding quality for all intra mode
  * Speedup and Memory Optimizations:
  - ~10% speedup in good quality mode encoding.
  - ~7% heap memory reduction in good quality encoding mode for
    speed 5 and 6.
  - Ongoing improvements to intra-frame encoding performance on
    Arm
  - Faster encoding speed for "--deltaq-mode=3" mode.
  - ~10% speedup for speed 5/6, ~15% speedup for speed 7/8, and
    ~10% speedup for speed 9/10 in real time encoding mode
  - ~20% heap memory reduction in still-picture encoding mode for
    360p-720p resolutions with multiple threads
  - ~13% speedup for speed 6 and ~12% speedup for speed 9 in
    still-picture encoding mode.
  - Optimizations to improve multi-thread efficiency for
    still-picture encoding mode.
  * Bug Fixes:
  - b/204460717: README.md: replace master with main
  - b/210677928: libaom disable_order is surprising for
    max_reference_frames=3
  - b/222461449: -DCONFIG_TUNE_BUTTERAUGLI=1 broken
  - b/227207606: write_greyscale writes incorrect chroma in
    highbd mode
  - b/229955363: Integer-overflow in linsolve_wiener
  - https://crbug.com/aomedia/2032
  - https://crbug.com/aomedia/2397
  - https://crbug.com/aomedia/2563
  - https://crbug.com/aomedia/2815
  - https://crbug.com/aomedia/3009
  - https://crbug.com/aomedia/3018
  - https://crbug.com/aomedia/3045
  - https://crbug.com/aomedia/3101
  - https://crbug.com/aomedia/3130
  - https://crbug.com/aomedia/3173
  - https://crbug.com/aomedia/3184
  - https://crbug.com/aomedia/3187
  - https://crbug.com/aomedia/3190
  - https://crbug.com/aomedia/3195
  - https://crbug.com/aomedia/3197
  - https://crbug.com/aomedia/3201
  - https://crbug.com/aomedia/3202
  - https://crbug.com/aomedia/3204
  - https://crbug.com/aomedia/3205
  - https://crbug.com/aomedia/3207
  - https://crbug.com/aomedia/3208
  - https://crbug.com/aomedia/3209
  - https://crbug.com/aomedia/3213
  - https://crbug.com/aomedia/3214
  - https://crbug.com/aomedia/3219
  - https://crbug.com/aomedia/3222
  - https://crbug.com/aomedia/3223
  - https://crbug.com/aomedia/3225
  - https://crbug.com/aomedia/3226
  - https://crbug.com/aomedia/3228
  - https://crbug.com/aomedia/3232
  - https://crbug.com/aomedia/3236
  - https://crbug.com/aomedia/3237
  - https://crbug.com/aomedia/3238
  - https://crbug.com/aomedia/3240
  - https://crbug.com/aomedia/3243
  - https://crbug.com/aomedia/3244
  - https://crbug.com/aomedia/3246
  - https://crbug.com/aomedia/3248
  - https://crbug.com/aomedia/3250
  - https://crbug.com/aomedia/3251
  - https://crbug.com/aomedia/3252
  - https://crbug.com/aomedia/3255
  - https://crbug.com/aomedia/3257
  - https://crbug.com/aomedia/3259
  - https://crbug.com/aomedia/3260
  - https://crbug.com/aomedia/3267
  - https://crbug.com/aomedia/3268
  - https://crbug.com/aomedia/3269
  - https://crbug.com/aomedia/3276
  - https://crbug.com/aomedia/3278
  - https://crbug.com/chromium/1290068
  - https://crbug.com/chromium/1303237
  - https://crbug.com/chromium/1304990
  - https://crbug.com/chromium/1321141
  - https://crbug.com/chromium/1321388
  - https://crbug.com/oss-fuzz/44846
  - https://crbug.com/oss-fuzz/44856
  - https://crbug.com/oss-fuzz/44862
  - https://crbug.com/oss-fuzz/44904
  - https://crbug.com/oss-fuzz/45056</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1663848000">- Update to version 3.5.0:
  * This release is ABI compatible with the last one, including
    speedup and memory optimizations, and new APIs and features.
  * New Features
  - Support for frame parallel encode for larger number of
    threads. --fp-mt flag is available for all build
    configurations.
  - New codec control AV1E_GET_NUM_OPERATING_POINTS
  * Speedup and Memory Optimizations
  - Speed-up multithreaded encoding for good quality mode for
    larger number of threads through frame parallel encoding:
    . 30-34% encode time reduction for 1080p, 16 threads, 1x1
    tile configuration (tile_rows x tile_columns)
    . 18-28% encode time reduction for 1080p, 16 threads, 2x4
    tile configuration
    . 18-20% encode time reduction for 2160p, 32 threads, 2x4
    tile configuration
  - 16-20% speed-up for speed=6 to 8 in still-picture encoding
    mode
  - 5-6% heap memory reduction for speed=6 to 10 in real-time
    encoding mode
  - Improvements to the speed for speed=7, 8 in real-time
    encoding mode
  - Improvements to the speed for speed=9, 10 in real-time screen
    encoding mode
  - Optimizations to improve multi-thread efficiency in real-time
    encoding mode
  - 10-15% speed up for SVC with temporal layers
  - SIMD optimizations:
    . Improve av1_quantize_fp_32x32_neon() 1.05x to 1.24x faster
    . Add aom_highbd_quantize_b{,_32x32,_64x64}_adaptive_neon()
    3.15x to 5.6x faster than "C"
    . Improve av1_quantize_fp_64x64_neon() 1.17x to 1.66x faster
    . Add aom_quantize_b_avx2() 1.4x to 1.7x faster than
    aom_quantize_b_avx()
    . Add aom_quantize_b_32x32_avx2() 1.4x to 2.3x faster than
    aom_quantize_b_32x32_avx()
    . Add aom_quantize_b_64x64_avx2() 2.0x to 2.4x faster than
    aom_quantize_b_64x64_ssse3()
    . Add aom_highbd_quantize_b_32x32_avx2() 9.0x to 10.5x faster
    than aom_highbd_quantize_b_32x32_c()
    . Add aom_highbd_quantize_b_64x64_avx2() 7.3x to 9.7x faster
    than aom_highbd_quantize_b_64x64_c()
    . Improve aom_highbd_quantize_b_avx2() 1.07x to 1.20x faster
    . Improve av1_quantize_fp_avx2() 1.13x to 1.49x faster
    . Improve av1_quantize_fp_32x32_avx2() 1.07x to 1.54x faster
    . Improve av1_quantize_fp_64x64_avx2()  1.03x to 1.25x faster
    . Improve av1_quantize_lp_avx2() 1.07x to 1.16x faster
  * Bug fixes including but not limited to
  - aomedia:3206 Assert that skip_width &gt; 0 for deconvolve
    function
  - aomedia:3278 row_mt enc: Delay top-right sync when intraBC is
    enabled
  - aomedia:3282 blend_a64_*_neon: fix bus error in armv7
  - aomedia:3283 FRAME_PARALLEL: Propagate border size to all
    cpis
  - aomedia:3283 RESIZE_MODE: Fix incorrect strides being used
    for motion search
  - aomedia:3286 rtc-svc: Fix to dynamic_enable spatial layers
  - aomedia:3289 rtc-screen: Fix to skipping inter-mode test in
    nonrd
  - aomedia:3289 rtc-screen: Fix for skip newmv on flat blocks
  - aomedia:3299 Fix build failure with CONFIG_TUNE_VMAF=1
  - aomedia:3296 Fix the conflict --enable-tx-size-search=0 with
    nonrd mode --enable-tx-size-search will be ignored in non-rd
    pick mode
  - aomedia:3304 Fix off-by-one error of max w/h in
    validate_config
  - aomedia:3306 Do not use pthread_setname_np on GNU/Hurd
  - aomedia:3325 row-multithreading produces invalid bitstream in
    some cases
  - chromium:1346938, chromium:1338114
  - compiler_flags.cmake: fix flag detection w/cmake 3.17-3.18.2
  - tools/*.py: update to python3
  - aom_configure.cmake: detect PIE and set CONFIG_PIC
  - test/simd_cmp_impl: use explicit types w/CompareSimd*
  - rtc: Fix to disable segm for aq-mode=3
  - rtc: Fix to color_sensitivity in variance partition
  - rtc-screen: Fix bsize in model rd computation for intra
    chroma
  - Fixes to ensure the correct behavior of the encoder
    algorithms (like segmentation, computation of statistics,
    etc.)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1675857600">- Update to version 3.6.0:
  * This release includes compression efficiency and perceptual
    quality improvements, speedup and memory optimizations, and
    some new features. This release is ABI compatible with the last
    release.
  * New Features:
  - New values 20-27 (corresponding to levels 7.0-7.3 and
    8.0-8.3) for the encoder control
    AV1E_SET_TARGET_SEQ_LEVEL_IDX (note that the proposal to add
    the new levels are still in draft status). The original
    special value 24 (keep level stats only for level monitoring)
    is renumbered as 32.
  - New encoder control AV1E_SET_SKIP_POSTPROC_FILTERING to skip
    the application of post-processing filters on reconstructed
    frame in all intra mode.
  - New encoder option "kf-max-pyr-height": Maximum height of
    pyramid structure used for the GOP starting with a key frame
    (-1 to 5).
  - Make SVC work for screen content.
  - Rate control improvements to reduce frame-size spikes for
    screen content coding.
  - RISC-V architecture support with gcc toolchain.
  * Compression Efficiency Improvements:
  - Peak compression efficiency in VOD setting is improved by 1%.
  - 0.7% - 2.2% RTC encoding BDrate gains for real time speed 8
    to 10.
  - 15% RTC encoding BDrate gains for screen content speed 10.
  * Perceptual Quality Improvements:
  - Resolved a visual quality issue that was reported for high
    resolution clips (2K) for speed 4 and above in VOD use case.
  - Visual quality improvements to screen content coding.
  - Quality improvements to temporal layer RTC coding.
  * Speedup and Memory Optimizations:
  - RTC single-thread encoder speedup:
    . ~6% instruction count reduction for speed 5 and 6.
    . ~15% instruction count reduction for speed 7.
    . ~10% instruction count reduction for speed 8 to 10 (&gt;=360p
    resolutions).
  - RTC multi-thread encoder speedup (beyond single-thread
    speedup):
    . 5-8% encode time reduction for speed 7 to 10.
  - RTC screen-content encoder speedup:
    . 11% instruction count reduction for speed 9 and 10 (&gt;=720p
    resolutions).
  - ~5% reduction in heap memory requirements for RTC, speed 6 to
    10.
  * AVIF:
    . 4-5% speedup for speed 9 in still-picture encoding mode.
    . 3-4% heap memory reduction in still-picture encoding mode
    for 360p-720p resolutions with multiple threads.
  * Bug Fixes:
  - Added a workaround for an AV1 specification bug which makes
    TRANSLATION type global motion models unusable.
  - Fixed AddressSanitizer global-buffer-overflow errors in
    av1/encoder/arm/neon/av1_fwd_txfm2d_neon.c.
  - Fixed AddressSanitizer heap-buffer-overflow error in
    av1_wiener_convolve_add_src_neon().
  - chromium:1393384 Avoid scene detection on spatial resize.
  - aomedia:3308 Remove color artifacts under high motion.
  - aomedia:3310 Avoid out of memory failures with Visual Studio
    2017, 2019, and 2022 for Win32 x86 builds.
  - aomedia:3346 Make SVC work properly for screen content.
  - aomedia:3348 Fix a bug where an uninitialized search_site is
    used.
  - aomedia:3365 Work around what seems like a Visual Studio 2022
    compiler optimization bug.
  - aomedia:3369 Incorrect PSNR values reported by libaom for
    12-bit encode.
- Modernize spec, use cmake_build and ldconfig_scriptlets macros.</changelog>
  <changelog author="Frederic Crozat &lt;fcrozat@suse.com&gt;" date="1681992000">- Fix license tag to BSD-2-Clause and AOMPL-1.0.</changelog>
  <changelog author="Frederic Crozat &lt;fcrozat@suse.com&gt;" date="1683028800">- Revert to BSD-2-Clause licence tag to only use SPDX valid
  license tag.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1683720000">- Update to version 3.6.1:
  * aomedia:2871: Guard the support of the 7.x and 8.x levels for
    AV1 under the CONFIG_CWG_C013 config flag, and only output the
    7.x and 8.x levels when explicitly requested.
  * aomedia:3382: Choose sb_size by ppi instead of svc.
  * aomedia:3384: Fix fullpel search limits.
  * aomedia:3388: Replace left shift of xq_active by
    multiplication.
  * aomedia:3389: Fix MV clamping in av1_mv_pred.
  * aomedia:3390: set_ld_layer_depth: cap max_layer_depth to
    MAX_ARF_LAYERS.
  * aomedia:3418: Fix MV clamping in av1_int_pro_motion_estimation.
  * aomedia:3429: Move lpf thread data init to
    lpf_pipeline_mt_init().
  * b:266719111: Fix undefined behavior in Arm Neon code.
  * b:269840681: nonrd_opt: align scan tables.
  * rtc: Fix is_key_frame setting in variance partition.
  * Build: Fix build with clang-cl and Visual Studio.</changelog>
  <changelog author="Bruno Pitrus &lt;brunopitrus@hotmail.com&gt;" date="1693569600">- New upstream release 3.7.0
  - New Features
  * New codec controls:
  * AV1E_SET_QUANTIZER_ONE_PASS: Set quantizer for each frame.
  * AV1E_ENABLE_RATE_GUIDE_DELTAQ: enable the rate distribution guided delta
    quantization in all intra mode. The "enable-rate-guide-deltaq" option is
    added for this control.
  * AV1E_SET_RATE_DISTRIBUTION_INFO: set the input file for rate
    distribution used in all intra mode. The "rate-distribution-info" option
    is added for this control.
  * AV1E_GET_LUMA_CDEF_STRENGTH
  * AV1E_SET_BITRATE_ONE_PASS_CBR
  * AOM_SCALING_MODE is extended to include 2/3 and 1/3 scaling.
  * aom_tune_metric is extended to include AOM_TUNE_VMAF_SALIENCY_MAP.
    The "tune" option is extended to include "vmaf_saliency_map".
  * SVC example encoder svc_encoder_rtc is able to use the rate control
    library.
  * Loopfilter level and CDEF filter level is supported by RTC rate control
    library.
  * New speed (--cpu-used) 11, intended for RTC screen sharing, added for
    faster encoding with ~3% bdrate loss with 16% IC (instruction count)
    speedup compared to speed 10.
  - Compression Efficiency Improvements
  * Improved VoD encoding performance
  * 0.1-0.6% BDrate gains for encoding speeds 2 to 6
  * Rate control accuracy improvement in VBR mode
  * RTC encoding improvements
  * Screen content mode: 10-19% BDrate gains for speeds 6 - 10
  * Temporal layers video mode, for speed 10:
  * 2 temporal layers on low resolutions: 13-15% BDrate gain
  * 3 temporal layers on VGA/HD: 3-4% BDrate gain
  - Perceptual Quality Improvements
  * Fixed multiple block and color artifacts for RTC screen content by
  * Incorporating color into RD cost for IDTX
  * Reducing thresholds for palette mode in non RD mode
  * Allowing more palette mode testing
  * Improved color sensitivity for altref in non-RD mode.
  * Reduced video flickering for temporal layer encoding.
  - Speedup and Memory Optimizations
  * Speed up the VoD encoder
  * 2-5% for encoding speed 2 to 4
  * 9-15% for encoding speed 5 to 6
  * ARM
  * Standard bitdepth
  * speed 5: +31%
  * speed 4: +2%
  * speed 3: +9%
  * speed 2: +157%
  * High bitdepth
  * speed 5: +85%
  * RTC speedups
  * Screen content mode
  * 15% IC speedup for speeds 6-8
  * ARM: 7% for speed 9, 3% for speed 10
  * Temporal layers video mode
  * 7% speedup for 3 temporal layers on VGA/HD, for speed 10
  * Single layer video
  * x86: 2% IC speedup for speeds 7-10
  * ARM: 2-4% speedup across speeds 5-10
  - Bug Fixes
  * aomedia:3261 Assertion failed when encoding av1 with film grain and
    '--monochrome' flag
  * aomedia:3276 ensure all allocations are checked (partial fix)
  * aomedia:3451 The libaom library calls exit()
  * aomedia:3450 enable -Wshadow for C++ sources
  * aomedia:3449 Test Seg Faults After
    b459af3e345be402db052a143fcc5383d4b74cbd
  * aomedia:3416 prune unused symbols / restrict symbol visibility
  * aomedia:3443 Jenkins failure:
    UninstantiatedParameterizedTestSuite&lt;EstimateNoiseTest&gt;
  * aomedia:3434 realtime failures with CONFIG_BITSTREAM_DEBUG=1
  * aomedia:3433 DeltaqModeTest crash w/row_mt=0
  * aomedia:3429 Encoder crash when turn on both ExternalResize and
    g_threads &gt; 2
  * aomedia:3438 Build failure with
    `-DSANITIZE=address -DBUILD_SHARED_LIBS=ON` when using clang.
  * aomedia:3435 Block artifacts when scrolling with AV1 in screen sharing
    scenarios
  * aomedia:3170 vmaf tune presets produce extreme glitches in one scene
  * aomedia:3401 Building shared libaom with MSVC results in a race condition
    with the export library
  * aomedia:3420 Floating point exception in av1_tpl_get_frame_importance()
  * aomedia:3424 heap-buffer-overflow in ScaleFilterCols_16_C() (SIGABRT)
  * aomedia:3417 examples/svc_encoder_rtc.c is using internal macros and
    functions
  * aomedia:3372 SEGV in assign_frame_buffer_p av1_common_int.h
  * aomedia:3130 'cpu-features.h' file not found on Android NDK 22
  * aomedia:3415 Encoder/decoder mismatch for svc_encoder_rtc running
    1 SL 3 TL
  * aomedia:3412 Lossless Mode Fails Loopback Bit Test
  * aomedia:3409 The use of AV1_VAR_OFFS in av1/encoder/var_based_part.c is
    incorrect for high bit depths
  * aomedia:3403 test_libaom fails with error message
    "feenableexcept() failed" on Linux arm
  * aomedia:3370 Random color block at fast motion area
  * aomedia:3393 Assertion failure in av1_convolve_2d_sr_c()
  * aomedia:3392 Strong artifacting for high bit-depth real-time
  * aomedia:3376 aomenc --threads=10 --deltaq-mode=3 crashes after
    "Allintra: multi-threading of calculating differential contrast"
  * aomedia:3380 Crashes and ASan and TSan errors in deltaq-mode=3
    multithreading code
  * chromium:1410766 heap-buffer-overflow in aom_yv12_copy_v_c
  * Cannot set level via AV1E_SET_TARGET_SEQ_LEVEL_IDX
  * Encoding failure due to the use of loop restoration with unintended use of
    lossless mode.
  * Signed integer overflow in scan_past_frames
  * Signed integer overflow in update_a_sep_sym
  * Flickering in AV1 1440p/2160p HDR transcodes
  * Fixed artifacts with screen share at encoder speed 10
  * Fixed prediction setup for IDTX
- Use system libraries instead of vendored ones
  * system-gtest.patch
  * system-yuv.patch
- Enable debuginfo also on modules written in assembly
- Enable building PowerPC-specific optimizations
- Enable Neon optimized code on ARM and fix runtime CPU detection
- Fix missing images in documentation</changelog>
  <changelog author="Bruno Pitrus &lt;brunopitrus@hotmail.com&gt;" date="1693915200">- Split docs to multibuild to avoid dependency cycle</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1701777600">- Update to version 3.7.1:
  * Bug Fixes:
  - aomedia:3349: heap overflow when increasing resolution
  - aomedia:3478: GCC 12.2.0 emits a -Wstringop-overflow warning
    on aom/av1/encoder/motion_search_facade.c
  - aomedia:3489: Detect encoder and image high bit depth
    mismatch
  - aomedia:3491: heap-buffer-overflow on frame size change
  - b/303023614:  Segfault at encoding time for high bit depth
    images
- Switch buildtime compression to zst.</changelog>
  <changelog author="Enrico Belleri &lt;kilgore.trout@idesmi.eu&gt;" date="1720267200">- Update to version 3.7.2:
  * aomedia:3520: get_cubic_kernel_dbl: Assertion `0 &lt;= x &amp;&amp; x &lt; 1'
    failed.
  * aomedia:3526: alloc_compressor_data() is called during every
    aom_codec_control() call on the encoder. Note that this partially
    reverts the fix for bug aomedia:3349.
  * b/310457427 and b/310766628: Only use rec_sse in CBR mode.</changelog>
  <changelog author="Enrico Belleri &lt;kilgore.trout@idesmi.eu&gt;" date="1724587200">- Exclude third_party from obscpio</changelog>
</package>
<package pkgid="3738fbd710eca03592339cd385c2c2167e9fcab9b6e2ec89b9422d077971e770d01b153504fb27b8d400591e7483bd43dadb8751dd865498d01838edbb90e479" name="aom-tools" arch="i586">
  <version epoch="0" ver="3.9.1" rel="1.1"/>
  <changelog author="Ferdinand Thiessen &lt;rpm@fthiessen.de&gt;" date="1625227200">- Update to version 3.1.1
  * Fix vmaf model initialization error when not set to tune=vmaf
  * Fix consistent crash on near-static screen content, keyframe
    related
  * Fix tune=butteraugli mode
- Disable NEON on arm where not available.</changelog>
  <changelog author="pgajdos@suse.com" date="1629892800">- Update to version 3.1.2:
  * Update AUTHORS,CHANGELOG,CMakeLists.txt for v3.1.2
  * Avoid chroma resampling for 420mpeg2 input
  * Check array has two elements before using index 1
  * Fix DecodeScalabilityTest failure in realtime only
  * Store temporal_id and spatial_id of decoded frame
  * exports.cmake: use APPLE and WIN32 and use def for mingw-w64</changelog>
  <changelog author="pgajdos@suse.com" date="1629892801">- security update
- added patches
  fix CVE-2021-30475 [bsc#1189497], Buffer overflow in aom_dsp/noise_model.c
  + libaom-CVE-2021-30475.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1631188800">- security update
- added patches
  fix CVE-2021-30474 [bsc#1186799], aom_dsp/grain_table.c in libaom in AOMedia before 2021-03-30 has a use-after-free.
  + libaom-CVE-2021-30474.patch</changelog>
  <changelog author="gmbr3@opensuse.org" date="1633694400">- Update to version 3.1.3:
  * Update CHANGELOG for v3.1.3-rc2
  * Detect chroma subsampling more directly
  * Detect chroma subsampling more directly
  * image2yuvconfig() should calculate uv_crop_width
  * aom/aom_encoder.h: remove configure option reference
  * aom_encoder.h: fix rc_overshoot_pct range
  * Update AUTHORS,CHANGELOG,CMakeLists.txt for v3.1.3
  * aom_install: don't exclude msvc from install
  * aom_install: use relpath for install
  * aom_install: Install lib dlls to bindir</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1634126400">- fix service data</changelog>
  <changelog author="bjorn.lie@gmail.com" date="1634299200">- Update to version 3.2.0:
  * This release includes compression efficiency and perceptual
    quality improvements, speedup and memory optimizations, as well
    as some new features.
  * New Features:
    + Introduced speeds 7, 8, and 9 for all intra mode.
    + Introduced speed 10 for real time mode.
    + Introduced an API that allows external partition decisions.
    + SVC: added support for compound prediction.
    + SVC: added support for fixed SVC modes.
  * Compression Efficiency Improvements:
    + Intra-mode search improvement.
    + Improved real time (RT) mode BDrate savings by ~5% (RT speed
    5) and ~12% (RT speed 6). The improvement was measured on the
    video conference set.
    + Improved real time mode for nonrd path (speed 7, 8, 9):
    BDrate gains of ~3-5%.
    + Rate control and RD adjustments based on ML research in VP9.
    Gains of ~0.5-1.0% for HD.
  * Perceptual Quality Improvements:
    + Added a new mode --deltaq-mode=3 to improve perceptual
    quality based on a differential contrast model for still
    images.
    + Added a new mode –deltaq-mode=4 to improve perceptual quality
    based on user rated cq_level data set for still images.
    + Weighting of some intra mode and partition size choices to
    better manage and retain texture.
  * Speedup and Memory Optimizations:
    + Further improved 2-pass good quality encoder speed:
    . Speed 2 speedup: 18%
    . Speed 3 speedup: 22%
    . Speed 4 speedup: 37%
    . Speed 5 speedup: 30%
    . Speed 6 speedup: 20%
    + Optimized the real time encoder (measured on the video
    conference set):
    . RT speed 5 speedup: 110%
    . RT speed 6 speedup: 77%
  * Bug Fixes
    + Issue 3069: Fix one-pass mode keyframe placement off-by-one
    error.
    + Issue 3156: Fix a bug in av1_quantize_lp AVX2 optimization.
- Drop libaom-CVE-2021-30474.patch: Fixed upstream.
- Drop libaom-CVE-2021-30475.patch: Fixed upstream.
- Remove changesgenerate option from _service file, use data from
  CHANGELOG to fill .changes instead as it it much nicer and human
  readable than just a list of commit messages.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1645185600">- Update to version 3.3.0:
  * This release includes compression efficiency and perceptual
    quality improvements, speedup and memory optimizations, some
    new features, and several bug fixes.
  * New Features
  - AV1 RT: Introducing CDEF search level 5
  - Changed real time speed 4 to behave the same as real time
    speed 5
  - Add --deltaq-strength
  - rtc: Allow scene-change and overshoot detection for svc
  - rtc: Intra-only frame for svc
  - AV1 RT: Option 2 for codec control AV1E_SET_ENABLE_CDEF to
    disable CDEF on non-ref frames
  - New codec controls AV1E_SET_LOOPFILTER_CONTROL and
    AOME_GET_LOOPFILTER_LEVEL
  - Improvements to three pass encoding
  * Compression Efficiency Improvements: Overall compression gains:
    0.6%
  * Perceptual Quality Improvements
  - Improves the perceptual quality of high QP encoding for
    delta-q mode 4
  - Auto select noise synthesis level for all intra
  * Speedup and Memory Optimizations
  - Added many SSE2 optimizations.
  - Good quality 2-pass encoder speedups:
    o Speed 2: 9%
    o Speed 3: 12.5%
    o Speed 4: 8%
    o Speed 5: 3%
    o Speed 6: 4%
  - Real time mode encoder speedups:
    o Speed 5: 2.6% BDRate gain, 4% speedup
    o Speed 6: 3.5% BDRate gain, 4% speedup
    o Speed 9: 1% BDRate gain, 3% speedup
    o Speed 10: 3% BDRate gain, neutral speedup
  - All intra encoding speedups (AVIF):
    o Single thread - speed 6: 8%
    o Single thread - speed 9: 15%
    o Multi thread(8) - speed 6: 14%
    o Multi thread(8) - speed 9: 34%
  * Bug Fixes
  - Issue 3163: Segmentation fault when using
  - -enable-keyframe-filtering=2
  - Issue 2436: Integer overflow in av1_warp_affine_c()
  - Issue 3226: armv7 build failure due to gcc-11
  - Issue 3195: Bug report on libaom (AddressSanitizer:
    heap-buffer-overflow)
  - Issue 3191: Bug report on libaom (AddressSanitizer: SEGV on
    unknown address)
- Drop libaom-devel Requires from libaom-devel-doc sub-package: We
  do not need the devel package to be able to read the devel
  documentation.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1662292800">- Update to version 3.4.0:
  * This release includes compression efficiency and perceptual
    quality improvements, speedup and memory optimizations, and
    some new features. There are no ABI or API breaking changes in
    this release.
  * New Features:
  - New --dist-metric flag with "qm-psnr" value to use
    quantization matrices in the distortion computation for RD
    search. The default value is "psnr".
  - New command line option "--auto-intra-tools-off=1" to make
    all-intra encoding faster for high bit rate under
    "--deltaq-mode=3" mode.
  - New rate control library aom_av1_rc for real-time hardware
    encoders. Supports CBR for both one spatial layer and SVC.
  - New image format AOM_IMG_FMT_NV12 can be used as input to the
    encoder. The presence of AOM_IMG_FMT_NV12 can be detected at
    compile time by checking if the macro AOM_HAVE_IMG_FMT_NV12
    is defined.
  - New codec controls for the encoder:
    o AV1E_SET_AUTO_INTRA_TOOLS_OFF. Only in effect if
  - -deltaq-mode=3.
    o AV1E_SET_RTC_EXTERNAL_RC
    o AV1E_SET_FP_MT. Only supported if libaom is built with
  - DCONFIG_FRAME_PARALLEL_ENCODE=1.
    o AV1E_GET_TARGET_SEQ_LEVEL_IDX
  - New key-value pairs for the key-value API:
    o --auto-intra-tools-off=0 (default) or 1. Only in effect if
  - -deltaq-mode=3.
    o --strict-level-conformance=0 (default) or 1
    o --fp-mt=0 (default) or 1. Only supported if libaom is built
    with -DCONFIG_FRAME_PARALLEL_ENCODE=1.
  - New aomenc options (not supported by the key-value API):
    o --nv12
  * Compression Efficiency Improvements:
  - Correctly calculate SSE for high bitdepth in skip mode, 0.2%
    to 0.6% coding gain.
  - RTC at speed 9/10: BD-rate gain of ~4/5%
  - RTC screen content coding: many improvements for real-time
    screen at speed 10 (quality, speedup, and rate control), up
    to high resolutions (1080p).
  - RTC-SVC: fixes to make intra-only frames work for spatial
    layers.
  - RTC-SVC: quality improvements for temporal layers.
  - AV1 RT: A new passive rate control strategy for screen
    content, an average of 7.5% coding gain, with some clips of
    20+%. The feature is turned off by default due to higher bit
    rate variation.
  * Perceptual Quality Improvements:
  - RTC: Visual quality improvements for high speeds (9/10)
  - Improvements in coding quality for all intra mode
  * Speedup and Memory Optimizations:
  - ~10% speedup in good quality mode encoding.
  - ~7% heap memory reduction in good quality encoding mode for
    speed 5 and 6.
  - Ongoing improvements to intra-frame encoding performance on
    Arm
  - Faster encoding speed for "--deltaq-mode=3" mode.
  - ~10% speedup for speed 5/6, ~15% speedup for speed 7/8, and
    ~10% speedup for speed 9/10 in real time encoding mode
  - ~20% heap memory reduction in still-picture encoding mode for
    360p-720p resolutions with multiple threads
  - ~13% speedup for speed 6 and ~12% speedup for speed 9 in
    still-picture encoding mode.
  - Optimizations to improve multi-thread efficiency for
    still-picture encoding mode.
  * Bug Fixes:
  - b/204460717: README.md: replace master with main
  - b/210677928: libaom disable_order is surprising for
    max_reference_frames=3
  - b/222461449: -DCONFIG_TUNE_BUTTERAUGLI=1 broken
  - b/227207606: write_greyscale writes incorrect chroma in
    highbd mode
  - b/229955363: Integer-overflow in linsolve_wiener
  - https://crbug.com/aomedia/2032
  - https://crbug.com/aomedia/2397
  - https://crbug.com/aomedia/2563
  - https://crbug.com/aomedia/2815
  - https://crbug.com/aomedia/3009
  - https://crbug.com/aomedia/3018
  - https://crbug.com/aomedia/3045
  - https://crbug.com/aomedia/3101
  - https://crbug.com/aomedia/3130
  - https://crbug.com/aomedia/3173
  - https://crbug.com/aomedia/3184
  - https://crbug.com/aomedia/3187
  - https://crbug.com/aomedia/3190
  - https://crbug.com/aomedia/3195
  - https://crbug.com/aomedia/3197
  - https://crbug.com/aomedia/3201
  - https://crbug.com/aomedia/3202
  - https://crbug.com/aomedia/3204
  - https://crbug.com/aomedia/3205
  - https://crbug.com/aomedia/3207
  - https://crbug.com/aomedia/3208
  - https://crbug.com/aomedia/3209
  - https://crbug.com/aomedia/3213
  - https://crbug.com/aomedia/3214
  - https://crbug.com/aomedia/3219
  - https://crbug.com/aomedia/3222
  - https://crbug.com/aomedia/3223
  - https://crbug.com/aomedia/3225
  - https://crbug.com/aomedia/3226
  - https://crbug.com/aomedia/3228
  - https://crbug.com/aomedia/3232
  - https://crbug.com/aomedia/3236
  - https://crbug.com/aomedia/3237
  - https://crbug.com/aomedia/3238
  - https://crbug.com/aomedia/3240
  - https://crbug.com/aomedia/3243
  - https://crbug.com/aomedia/3244
  - https://crbug.com/aomedia/3246
  - https://crbug.com/aomedia/3248
  - https://crbug.com/aomedia/3250
  - https://crbug.com/aomedia/3251
  - https://crbug.com/aomedia/3252
  - https://crbug.com/aomedia/3255
  - https://crbug.com/aomedia/3257
  - https://crbug.com/aomedia/3259
  - https://crbug.com/aomedia/3260
  - https://crbug.com/aomedia/3267
  - https://crbug.com/aomedia/3268
  - https://crbug.com/aomedia/3269
  - https://crbug.com/aomedia/3276
  - https://crbug.com/aomedia/3278
  - https://crbug.com/chromium/1290068
  - https://crbug.com/chromium/1303237
  - https://crbug.com/chromium/1304990
  - https://crbug.com/chromium/1321141
  - https://crbug.com/chromium/1321388
  - https://crbug.com/oss-fuzz/44846
  - https://crbug.com/oss-fuzz/44856
  - https://crbug.com/oss-fuzz/44862
  - https://crbug.com/oss-fuzz/44904
  - https://crbug.com/oss-fuzz/45056</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1663848000">- Update to version 3.5.0:
  * This release is ABI compatible with the last one, including
    speedup and memory optimizations, and new APIs and features.
  * New Features
  - Support for frame parallel encode for larger number of
    threads. --fp-mt flag is available for all build
    configurations.
  - New codec control AV1E_GET_NUM_OPERATING_POINTS
  * Speedup and Memory Optimizations
  - Speed-up multithreaded encoding for good quality mode for
    larger number of threads through frame parallel encoding:
    . 30-34% encode time reduction for 1080p, 16 threads, 1x1
    tile configuration (tile_rows x tile_columns)
    . 18-28% encode time reduction for 1080p, 16 threads, 2x4
    tile configuration
    . 18-20% encode time reduction for 2160p, 32 threads, 2x4
    tile configuration
  - 16-20% speed-up for speed=6 to 8 in still-picture encoding
    mode
  - 5-6% heap memory reduction for speed=6 to 10 in real-time
    encoding mode
  - Improvements to the speed for speed=7, 8 in real-time
    encoding mode
  - Improvements to the speed for speed=9, 10 in real-time screen
    encoding mode
  - Optimizations to improve multi-thread efficiency in real-time
    encoding mode
  - 10-15% speed up for SVC with temporal layers
  - SIMD optimizations:
    . Improve av1_quantize_fp_32x32_neon() 1.05x to 1.24x faster
    . Add aom_highbd_quantize_b{,_32x32,_64x64}_adaptive_neon()
    3.15x to 5.6x faster than "C"
    . Improve av1_quantize_fp_64x64_neon() 1.17x to 1.66x faster
    . Add aom_quantize_b_avx2() 1.4x to 1.7x faster than
    aom_quantize_b_avx()
    . Add aom_quantize_b_32x32_avx2() 1.4x to 2.3x faster than
    aom_quantize_b_32x32_avx()
    . Add aom_quantize_b_64x64_avx2() 2.0x to 2.4x faster than
    aom_quantize_b_64x64_ssse3()
    . Add aom_highbd_quantize_b_32x32_avx2() 9.0x to 10.5x faster
    than aom_highbd_quantize_b_32x32_c()
    . Add aom_highbd_quantize_b_64x64_avx2() 7.3x to 9.7x faster
    than aom_highbd_quantize_b_64x64_c()
    . Improve aom_highbd_quantize_b_avx2() 1.07x to 1.20x faster
    . Improve av1_quantize_fp_avx2() 1.13x to 1.49x faster
    . Improve av1_quantize_fp_32x32_avx2() 1.07x to 1.54x faster
    . Improve av1_quantize_fp_64x64_avx2()  1.03x to 1.25x faster
    . Improve av1_quantize_lp_avx2() 1.07x to 1.16x faster
  * Bug fixes including but not limited to
  - aomedia:3206 Assert that skip_width &gt; 0 for deconvolve
    function
  - aomedia:3278 row_mt enc: Delay top-right sync when intraBC is
    enabled
  - aomedia:3282 blend_a64_*_neon: fix bus error in armv7
  - aomedia:3283 FRAME_PARALLEL: Propagate border size to all
    cpis
  - aomedia:3283 RESIZE_MODE: Fix incorrect strides being used
    for motion search
  - aomedia:3286 rtc-svc: Fix to dynamic_enable spatial layers
  - aomedia:3289 rtc-screen: Fix to skipping inter-mode test in
    nonrd
  - aomedia:3289 rtc-screen: Fix for skip newmv on flat blocks
  - aomedia:3299 Fix build failure with CONFIG_TUNE_VMAF=1
  - aomedia:3296 Fix the conflict --enable-tx-size-search=0 with
    nonrd mode --enable-tx-size-search will be ignored in non-rd
    pick mode
  - aomedia:3304 Fix off-by-one error of max w/h in
    validate_config
  - aomedia:3306 Do not use pthread_setname_np on GNU/Hurd
  - aomedia:3325 row-multithreading produces invalid bitstream in
    some cases
  - chromium:1346938, chromium:1338114
  - compiler_flags.cmake: fix flag detection w/cmake 3.17-3.18.2
  - tools/*.py: update to python3
  - aom_configure.cmake: detect PIE and set CONFIG_PIC
  - test/simd_cmp_impl: use explicit types w/CompareSimd*
  - rtc: Fix to disable segm for aq-mode=3
  - rtc: Fix to color_sensitivity in variance partition
  - rtc-screen: Fix bsize in model rd computation for intra
    chroma
  - Fixes to ensure the correct behavior of the encoder
    algorithms (like segmentation, computation of statistics,
    etc.)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1675857600">- Update to version 3.6.0:
  * This release includes compression efficiency and perceptual
    quality improvements, speedup and memory optimizations, and
    some new features. This release is ABI compatible with the last
    release.
  * New Features:
  - New values 20-27 (corresponding to levels 7.0-7.3 and
    8.0-8.3) for the encoder control
    AV1E_SET_TARGET_SEQ_LEVEL_IDX (note that the proposal to add
    the new levels are still in draft status). The original
    special value 24 (keep level stats only for level monitoring)
    is renumbered as 32.
  - New encoder control AV1E_SET_SKIP_POSTPROC_FILTERING to skip
    the application of post-processing filters on reconstructed
    frame in all intra mode.
  - New encoder option "kf-max-pyr-height": Maximum height of
    pyramid structure used for the GOP starting with a key frame
    (-1 to 5).
  - Make SVC work for screen content.
  - Rate control improvements to reduce frame-size spikes for
    screen content coding.
  - RISC-V architecture support with gcc toolchain.
  * Compression Efficiency Improvements:
  - Peak compression efficiency in VOD setting is improved by 1%.
  - 0.7% - 2.2% RTC encoding BDrate gains for real time speed 8
    to 10.
  - 15% RTC encoding BDrate gains for screen content speed 10.
  * Perceptual Quality Improvements:
  - Resolved a visual quality issue that was reported for high
    resolution clips (2K) for speed 4 and above in VOD use case.
  - Visual quality improvements to screen content coding.
  - Quality improvements to temporal layer RTC coding.
  * Speedup and Memory Optimizations:
  - RTC single-thread encoder speedup:
    . ~6% instruction count reduction for speed 5 and 6.
    . ~15% instruction count reduction for speed 7.
    . ~10% instruction count reduction for speed 8 to 10 (&gt;=360p
    resolutions).
  - RTC multi-thread encoder speedup (beyond single-thread
    speedup):
    . 5-8% encode time reduction for speed 7 to 10.
  - RTC screen-content encoder speedup:
    . 11% instruction count reduction for speed 9 and 10 (&gt;=720p
    resolutions).
  - ~5% reduction in heap memory requirements for RTC, speed 6 to
    10.
  * AVIF:
    . 4-5% speedup for speed 9 in still-picture encoding mode.
    . 3-4% heap memory reduction in still-picture encoding mode
    for 360p-720p resolutions with multiple threads.
  * Bug Fixes:
  - Added a workaround for an AV1 specification bug which makes
    TRANSLATION type global motion models unusable.
  - Fixed AddressSanitizer global-buffer-overflow errors in
    av1/encoder/arm/neon/av1_fwd_txfm2d_neon.c.
  - Fixed AddressSanitizer heap-buffer-overflow error in
    av1_wiener_convolve_add_src_neon().
  - chromium:1393384 Avoid scene detection on spatial resize.
  - aomedia:3308 Remove color artifacts under high motion.
  - aomedia:3310 Avoid out of memory failures with Visual Studio
    2017, 2019, and 2022 for Win32 x86 builds.
  - aomedia:3346 Make SVC work properly for screen content.
  - aomedia:3348 Fix a bug where an uninitialized search_site is
    used.
  - aomedia:3365 Work around what seems like a Visual Studio 2022
    compiler optimization bug.
  - aomedia:3369 Incorrect PSNR values reported by libaom for
    12-bit encode.
- Modernize spec, use cmake_build and ldconfig_scriptlets macros.</changelog>
  <changelog author="Frederic Crozat &lt;fcrozat@suse.com&gt;" date="1681992000">- Fix license tag to BSD-2-Clause and AOMPL-1.0.</changelog>
  <changelog author="Frederic Crozat &lt;fcrozat@suse.com&gt;" date="1683028800">- Revert to BSD-2-Clause licence tag to only use SPDX valid
  license tag.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1683720000">- Update to version 3.6.1:
  * aomedia:2871: Guard the support of the 7.x and 8.x levels for
    AV1 under the CONFIG_CWG_C013 config flag, and only output the
    7.x and 8.x levels when explicitly requested.
  * aomedia:3382: Choose sb_size by ppi instead of svc.
  * aomedia:3384: Fix fullpel search limits.
  * aomedia:3388: Replace left shift of xq_active by
    multiplication.
  * aomedia:3389: Fix MV clamping in av1_mv_pred.
  * aomedia:3390: set_ld_layer_depth: cap max_layer_depth to
    MAX_ARF_LAYERS.
  * aomedia:3418: Fix MV clamping in av1_int_pro_motion_estimation.
  * aomedia:3429: Move lpf thread data init to
    lpf_pipeline_mt_init().
  * b:266719111: Fix undefined behavior in Arm Neon code.
  * b:269840681: nonrd_opt: align scan tables.
  * rtc: Fix is_key_frame setting in variance partition.
  * Build: Fix build with clang-cl and Visual Studio.</changelog>
  <changelog author="Bruno Pitrus &lt;brunopitrus@hotmail.com&gt;" date="1693569600">- New upstream release 3.7.0
  - New Features
  * New codec controls:
  * AV1E_SET_QUANTIZER_ONE_PASS: Set quantizer for each frame.
  * AV1E_ENABLE_RATE_GUIDE_DELTAQ: enable the rate distribution guided delta
    quantization in all intra mode. The "enable-rate-guide-deltaq" option is
    added for this control.
  * AV1E_SET_RATE_DISTRIBUTION_INFO: set the input file for rate
    distribution used in all intra mode. The "rate-distribution-info" option
    is added for this control.
  * AV1E_GET_LUMA_CDEF_STRENGTH
  * AV1E_SET_BITRATE_ONE_PASS_CBR
  * AOM_SCALING_MODE is extended to include 2/3 and 1/3 scaling.
  * aom_tune_metric is extended to include AOM_TUNE_VMAF_SALIENCY_MAP.
    The "tune" option is extended to include "vmaf_saliency_map".
  * SVC example encoder svc_encoder_rtc is able to use the rate control
    library.
  * Loopfilter level and CDEF filter level is supported by RTC rate control
    library.
  * New speed (--cpu-used) 11, intended for RTC screen sharing, added for
    faster encoding with ~3% bdrate loss with 16% IC (instruction count)
    speedup compared to speed 10.
  - Compression Efficiency Improvements
  * Improved VoD encoding performance
  * 0.1-0.6% BDrate gains for encoding speeds 2 to 6
  * Rate control accuracy improvement in VBR mode
  * RTC encoding improvements
  * Screen content mode: 10-19% BDrate gains for speeds 6 - 10
  * Temporal layers video mode, for speed 10:
  * 2 temporal layers on low resolutions: 13-15% BDrate gain
  * 3 temporal layers on VGA/HD: 3-4% BDrate gain
  - Perceptual Quality Improvements
  * Fixed multiple block and color artifacts for RTC screen content by
  * Incorporating color into RD cost for IDTX
  * Reducing thresholds for palette mode in non RD mode
  * Allowing more palette mode testing
  * Improved color sensitivity for altref in non-RD mode.
  * Reduced video flickering for temporal layer encoding.
  - Speedup and Memory Optimizations
  * Speed up the VoD encoder
  * 2-5% for encoding speed 2 to 4
  * 9-15% for encoding speed 5 to 6
  * ARM
  * Standard bitdepth
  * speed 5: +31%
  * speed 4: +2%
  * speed 3: +9%
  * speed 2: +157%
  * High bitdepth
  * speed 5: +85%
  * RTC speedups
  * Screen content mode
  * 15% IC speedup for speeds 6-8
  * ARM: 7% for speed 9, 3% for speed 10
  * Temporal layers video mode
  * 7% speedup for 3 temporal layers on VGA/HD, for speed 10
  * Single layer video
  * x86: 2% IC speedup for speeds 7-10
  * ARM: 2-4% speedup across speeds 5-10
  - Bug Fixes
  * aomedia:3261 Assertion failed when encoding av1 with film grain and
    '--monochrome' flag
  * aomedia:3276 ensure all allocations are checked (partial fix)
  * aomedia:3451 The libaom library calls exit()
  * aomedia:3450 enable -Wshadow for C++ sources
  * aomedia:3449 Test Seg Faults After
    b459af3e345be402db052a143fcc5383d4b74cbd
  * aomedia:3416 prune unused symbols / restrict symbol visibility
  * aomedia:3443 Jenkins failure:
    UninstantiatedParameterizedTestSuite&lt;EstimateNoiseTest&gt;
  * aomedia:3434 realtime failures with CONFIG_BITSTREAM_DEBUG=1
  * aomedia:3433 DeltaqModeTest crash w/row_mt=0
  * aomedia:3429 Encoder crash when turn on both ExternalResize and
    g_threads &gt; 2
  * aomedia:3438 Build failure with
    `-DSANITIZE=address -DBUILD_SHARED_LIBS=ON` when using clang.
  * aomedia:3435 Block artifacts when scrolling with AV1 in screen sharing
    scenarios
  * aomedia:3170 vmaf tune presets produce extreme glitches in one scene
  * aomedia:3401 Building shared libaom with MSVC results in a race condition
    with the export library
  * aomedia:3420 Floating point exception in av1_tpl_get_frame_importance()
  * aomedia:3424 heap-buffer-overflow in ScaleFilterCols_16_C() (SIGABRT)
  * aomedia:3417 examples/svc_encoder_rtc.c is using internal macros and
    functions
  * aomedia:3372 SEGV in assign_frame_buffer_p av1_common_int.h
  * aomedia:3130 'cpu-features.h' file not found on Android NDK 22
  * aomedia:3415 Encoder/decoder mismatch for svc_encoder_rtc running
    1 SL 3 TL
  * aomedia:3412 Lossless Mode Fails Loopback Bit Test
  * aomedia:3409 The use of AV1_VAR_OFFS in av1/encoder/var_based_part.c is
    incorrect for high bit depths
  * aomedia:3403 test_libaom fails with error message
    "feenableexcept() failed" on Linux arm
  * aomedia:3370 Random color block at fast motion area
  * aomedia:3393 Assertion failure in av1_convolve_2d_sr_c()
  * aomedia:3392 Strong artifacting for high bit-depth real-time
  * aomedia:3376 aomenc --threads=10 --deltaq-mode=3 crashes after
    "Allintra: multi-threading of calculating differential contrast"
  * aomedia:3380 Crashes and ASan and TSan errors in deltaq-mode=3
    multithreading code
  * chromium:1410766 heap-buffer-overflow in aom_yv12_copy_v_c
  * Cannot set level via AV1E_SET_TARGET_SEQ_LEVEL_IDX
  * Encoding failure due to the use of loop restoration with unintended use of
    lossless mode.
  * Signed integer overflow in scan_past_frames
  * Signed integer overflow in update_a_sep_sym
  * Flickering in AV1 1440p/2160p HDR transcodes
  * Fixed artifacts with screen share at encoder speed 10
  * Fixed prediction setup for IDTX
- Use system libraries instead of vendored ones
  * system-gtest.patch
  * system-yuv.patch
- Enable debuginfo also on modules written in assembly
- Enable building PowerPC-specific optimizations
- Enable Neon optimized code on ARM and fix runtime CPU detection
- Fix missing images in documentation</changelog>
  <changelog author="Bruno Pitrus &lt;brunopitrus@hotmail.com&gt;" date="1693915200">- Split docs to multibuild to avoid dependency cycle</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1701777600">- Update to version 3.7.1:
  * Bug Fixes:
  - aomedia:3349: heap overflow when increasing resolution
  - aomedia:3478: GCC 12.2.0 emits a -Wstringop-overflow warning
    on aom/av1/encoder/motion_search_facade.c
  - aomedia:3489: Detect encoder and image high bit depth
    mismatch
  - aomedia:3491: heap-buffer-overflow on frame size change
  - b/303023614:  Segfault at encoding time for high bit depth
    images
- Switch buildtime compression to zst.</changelog>
  <changelog author="Enrico Belleri &lt;kilgore.trout@idesmi.eu&gt;" date="1720267200">- Update to version 3.7.2:
  * aomedia:3520: get_cubic_kernel_dbl: Assertion `0 &lt;= x &amp;&amp; x &lt; 1'
    failed.
  * aomedia:3526: alloc_compressor_data() is called during every
    aom_codec_control() call on the encoder. Note that this partially
    reverts the fix for bug aomedia:3349.
  * b/310457427 and b/310766628: Only use rec_sse in CBR mode.</changelog>
  <changelog author="Enrico Belleri &lt;kilgore.trout@idesmi.eu&gt;" date="1724587200">- Exclude third_party from obscpio</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1726488000">- Update to version 3.9.1:
  * This release includes new codec interfaces, compression
    efficiency and perceptual improvements, speedup for RTC for both
    video and screen content, and many bug fixes.
- Please see https://aomedia.googlesource.com/aom/+/refs/tags/v3.9.1/CHANGELOG
  for detailed changes since version 3.7.2
- Rebase patches with quilt.</changelog>
</package>
<package pkgid="92c7d8cfef79fed7a661a7c2d20b35c43861b9df3f17e3968f941c9f355d75b0095013ba951dbf09cc40cf5eecea2b853df2040e2b27682e96a16ed2d903cf11" name="aom-tools" arch="x86_64">
  <version epoch="0" ver="3.9.1" rel="1.1"/>
  <changelog author="Ferdinand Thiessen &lt;rpm@fthiessen.de&gt;" date="1625227200">- Update to version 3.1.1
  * Fix vmaf model initialization error when not set to tune=vmaf
  * Fix consistent crash on near-static screen content, keyframe
    related
  * Fix tune=butteraugli mode
- Disable NEON on arm where not available.</changelog>
  <changelog author="pgajdos@suse.com" date="1629892800">- Update to version 3.1.2:
  * Update AUTHORS,CHANGELOG,CMakeLists.txt for v3.1.2
  * Avoid chroma resampling for 420mpeg2 input
  * Check array has two elements before using index 1
  * Fix DecodeScalabilityTest failure in realtime only
  * Store temporal_id and spatial_id of decoded frame
  * exports.cmake: use APPLE and WIN32 and use def for mingw-w64</changelog>
  <changelog author="pgajdos@suse.com" date="1629892801">- security update
- added patches
  fix CVE-2021-30475 [bsc#1189497], Buffer overflow in aom_dsp/noise_model.c
  + libaom-CVE-2021-30475.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1631188800">- security update
- added patches
  fix CVE-2021-30474 [bsc#1186799], aom_dsp/grain_table.c in libaom in AOMedia before 2021-03-30 has a use-after-free.
  + libaom-CVE-2021-30474.patch</changelog>
  <changelog author="gmbr3@opensuse.org" date="1633694400">- Update to version 3.1.3:
  * Update CHANGELOG for v3.1.3-rc2
  * Detect chroma subsampling more directly
  * Detect chroma subsampling more directly
  * image2yuvconfig() should calculate uv_crop_width
  * aom/aom_encoder.h: remove configure option reference
  * aom_encoder.h: fix rc_overshoot_pct range
  * Update AUTHORS,CHANGELOG,CMakeLists.txt for v3.1.3
  * aom_install: don't exclude msvc from install
  * aom_install: use relpath for install
  * aom_install: Install lib dlls to bindir</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1634126400">- fix service data</changelog>
  <changelog author="bjorn.lie@gmail.com" date="1634299200">- Update to version 3.2.0:
  * This release includes compression efficiency and perceptual
    quality improvements, speedup and memory optimizations, as well
    as some new features.
  * New Features:
    + Introduced speeds 7, 8, and 9 for all intra mode.
    + Introduced speed 10 for real time mode.
    + Introduced an API that allows external partition decisions.
    + SVC: added support for compound prediction.
    + SVC: added support for fixed SVC modes.
  * Compression Efficiency Improvements:
    + Intra-mode search improvement.
    + Improved real time (RT) mode BDrate savings by ~5% (RT speed
    5) and ~12% (RT speed 6). The improvement was measured on the
    video conference set.
    + Improved real time mode for nonrd path (speed 7, 8, 9):
    BDrate gains of ~3-5%.
    + Rate control and RD adjustments based on ML research in VP9.
    Gains of ~0.5-1.0% for HD.
  * Perceptual Quality Improvements:
    + Added a new mode --deltaq-mode=3 to improve perceptual
    quality based on a differential contrast model for still
    images.
    + Added a new mode –deltaq-mode=4 to improve perceptual quality
    based on user rated cq_level data set for still images.
    + Weighting of some intra mode and partition size choices to
    better manage and retain texture.
  * Speedup and Memory Optimizations:
    + Further improved 2-pass good quality encoder speed:
    . Speed 2 speedup: 18%
    . Speed 3 speedup: 22%
    . Speed 4 speedup: 37%
    . Speed 5 speedup: 30%
    . Speed 6 speedup: 20%
    + Optimized the real time encoder (measured on the video
    conference set):
    . RT speed 5 speedup: 110%
    . RT speed 6 speedup: 77%
  * Bug Fixes
    + Issue 3069: Fix one-pass mode keyframe placement off-by-one
    error.
    + Issue 3156: Fix a bug in av1_quantize_lp AVX2 optimization.
- Drop libaom-CVE-2021-30474.patch: Fixed upstream.
- Drop libaom-CVE-2021-30475.patch: Fixed upstream.
- Remove changesgenerate option from _service file, use data from
  CHANGELOG to fill .changes instead as it it much nicer and human
  readable than just a list of commit messages.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1645185600">- Update to version 3.3.0:
  * This release includes compression efficiency and perceptual
    quality improvements, speedup and memory optimizations, some
    new features, and several bug fixes.
  * New Features
  - AV1 RT: Introducing CDEF search level 5
  - Changed real time speed 4 to behave the same as real time
    speed 5
  - Add --deltaq-strength
  - rtc: Allow scene-change and overshoot detection for svc
  - rtc: Intra-only frame for svc
  - AV1 RT: Option 2 for codec control AV1E_SET_ENABLE_CDEF to
    disable CDEF on non-ref frames
  - New codec controls AV1E_SET_LOOPFILTER_CONTROL and
    AOME_GET_LOOPFILTER_LEVEL
  - Improvements to three pass encoding
  * Compression Efficiency Improvements: Overall compression gains:
    0.6%
  * Perceptual Quality Improvements
  - Improves the perceptual quality of high QP encoding for
    delta-q mode 4
  - Auto select noise synthesis level for all intra
  * Speedup and Memory Optimizations
  - Added many SSE2 optimizations.
  - Good quality 2-pass encoder speedups:
    o Speed 2: 9%
    o Speed 3: 12.5%
    o Speed 4: 8%
    o Speed 5: 3%
    o Speed 6: 4%
  - Real time mode encoder speedups:
    o Speed 5: 2.6% BDRate gain, 4% speedup
    o Speed 6: 3.5% BDRate gain, 4% speedup
    o Speed 9: 1% BDRate gain, 3% speedup
    o Speed 10: 3% BDRate gain, neutral speedup
  - All intra encoding speedups (AVIF):
    o Single thread - speed 6: 8%
    o Single thread - speed 9: 15%
    o Multi thread(8) - speed 6: 14%
    o Multi thread(8) - speed 9: 34%
  * Bug Fixes
  - Issue 3163: Segmentation fault when using
  - -enable-keyframe-filtering=2
  - Issue 2436: Integer overflow in av1_warp_affine_c()
  - Issue 3226: armv7 build failure due to gcc-11
  - Issue 3195: Bug report on libaom (AddressSanitizer:
    heap-buffer-overflow)
  - Issue 3191: Bug report on libaom (AddressSanitizer: SEGV on
    unknown address)
- Drop libaom-devel Requires from libaom-devel-doc sub-package: We
  do not need the devel package to be able to read the devel
  documentation.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1662292800">- Update to version 3.4.0:
  * This release includes compression efficiency and perceptual
    quality improvements, speedup and memory optimizations, and
    some new features. There are no ABI or API breaking changes in
    this release.
  * New Features:
  - New --dist-metric flag with "qm-psnr" value to use
    quantization matrices in the distortion computation for RD
    search. The default value is "psnr".
  - New command line option "--auto-intra-tools-off=1" to make
    all-intra encoding faster for high bit rate under
    "--deltaq-mode=3" mode.
  - New rate control library aom_av1_rc for real-time hardware
    encoders. Supports CBR for both one spatial layer and SVC.
  - New image format AOM_IMG_FMT_NV12 can be used as input to the
    encoder. The presence of AOM_IMG_FMT_NV12 can be detected at
    compile time by checking if the macro AOM_HAVE_IMG_FMT_NV12
    is defined.
  - New codec controls for the encoder:
    o AV1E_SET_AUTO_INTRA_TOOLS_OFF. Only in effect if
  - -deltaq-mode=3.
    o AV1E_SET_RTC_EXTERNAL_RC
    o AV1E_SET_FP_MT. Only supported if libaom is built with
  - DCONFIG_FRAME_PARALLEL_ENCODE=1.
    o AV1E_GET_TARGET_SEQ_LEVEL_IDX
  - New key-value pairs for the key-value API:
    o --auto-intra-tools-off=0 (default) or 1. Only in effect if
  - -deltaq-mode=3.
    o --strict-level-conformance=0 (default) or 1
    o --fp-mt=0 (default) or 1. Only supported if libaom is built
    with -DCONFIG_FRAME_PARALLEL_ENCODE=1.
  - New aomenc options (not supported by the key-value API):
    o --nv12
  * Compression Efficiency Improvements:
  - Correctly calculate SSE for high bitdepth in skip mode, 0.2%
    to 0.6% coding gain.
  - RTC at speed 9/10: BD-rate gain of ~4/5%
  - RTC screen content coding: many improvements for real-time
    screen at speed 10 (quality, speedup, and rate control), up
    to high resolutions (1080p).
  - RTC-SVC: fixes to make intra-only frames work for spatial
    layers.
  - RTC-SVC: quality improvements for temporal layers.
  - AV1 RT: A new passive rate control strategy for screen
    content, an average of 7.5% coding gain, with some clips of
    20+%. The feature is turned off by default due to higher bit
    rate variation.
  * Perceptual Quality Improvements:
  - RTC: Visual quality improvements for high speeds (9/10)
  - Improvements in coding quality for all intra mode
  * Speedup and Memory Optimizations:
  - ~10% speedup in good quality mode encoding.
  - ~7% heap memory reduction in good quality encoding mode for
    speed 5 and 6.
  - Ongoing improvements to intra-frame encoding performance on
    Arm
  - Faster encoding speed for "--deltaq-mode=3" mode.
  - ~10% speedup for speed 5/6, ~15% speedup for speed 7/8, and
    ~10% speedup for speed 9/10 in real time encoding mode
  - ~20% heap memory reduction in still-picture encoding mode for
    360p-720p resolutions with multiple threads
  - ~13% speedup for speed 6 and ~12% speedup for speed 9 in
    still-picture encoding mode.
  - Optimizations to improve multi-thread efficiency for
    still-picture encoding mode.
  * Bug Fixes:
  - b/204460717: README.md: replace master with main
  - b/210677928: libaom disable_order is surprising for
    max_reference_frames=3
  - b/222461449: -DCONFIG_TUNE_BUTTERAUGLI=1 broken
  - b/227207606: write_greyscale writes incorrect chroma in
    highbd mode
  - b/229955363: Integer-overflow in linsolve_wiener
  - https://crbug.com/aomedia/2032
  - https://crbug.com/aomedia/2397
  - https://crbug.com/aomedia/2563
  - https://crbug.com/aomedia/2815
  - https://crbug.com/aomedia/3009
  - https://crbug.com/aomedia/3018
  - https://crbug.com/aomedia/3045
  - https://crbug.com/aomedia/3101
  - https://crbug.com/aomedia/3130
  - https://crbug.com/aomedia/3173
  - https://crbug.com/aomedia/3184
  - https://crbug.com/aomedia/3187
  - https://crbug.com/aomedia/3190
  - https://crbug.com/aomedia/3195
  - https://crbug.com/aomedia/3197
  - https://crbug.com/aomedia/3201
  - https://crbug.com/aomedia/3202
  - https://crbug.com/aomedia/3204
  - https://crbug.com/aomedia/3205
  - https://crbug.com/aomedia/3207
  - https://crbug.com/aomedia/3208
  - https://crbug.com/aomedia/3209
  - https://crbug.com/aomedia/3213
  - https://crbug.com/aomedia/3214
  - https://crbug.com/aomedia/3219
  - https://crbug.com/aomedia/3222
  - https://crbug.com/aomedia/3223
  - https://crbug.com/aomedia/3225
  - https://crbug.com/aomedia/3226
  - https://crbug.com/aomedia/3228
  - https://crbug.com/aomedia/3232
  - https://crbug.com/aomedia/3236
  - https://crbug.com/aomedia/3237
  - https://crbug.com/aomedia/3238
  - https://crbug.com/aomedia/3240
  - https://crbug.com/aomedia/3243
  - https://crbug.com/aomedia/3244
  - https://crbug.com/aomedia/3246
  - https://crbug.com/aomedia/3248
  - https://crbug.com/aomedia/3250
  - https://crbug.com/aomedia/3251
  - https://crbug.com/aomedia/3252
  - https://crbug.com/aomedia/3255
  - https://crbug.com/aomedia/3257
  - https://crbug.com/aomedia/3259
  - https://crbug.com/aomedia/3260
  - https://crbug.com/aomedia/3267
  - https://crbug.com/aomedia/3268
  - https://crbug.com/aomedia/3269
  - https://crbug.com/aomedia/3276
  - https://crbug.com/aomedia/3278
  - https://crbug.com/chromium/1290068
  - https://crbug.com/chromium/1303237
  - https://crbug.com/chromium/1304990
  - https://crbug.com/chromium/1321141
  - https://crbug.com/chromium/1321388
  - https://crbug.com/oss-fuzz/44846
  - https://crbug.com/oss-fuzz/44856
  - https://crbug.com/oss-fuzz/44862
  - https://crbug.com/oss-fuzz/44904
  - https://crbug.com/oss-fuzz/45056</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1663848000">- Update to version 3.5.0:
  * This release is ABI compatible with the last one, including
    speedup and memory optimizations, and new APIs and features.
  * New Features
  - Support for frame parallel encode for larger number of
    threads. --fp-mt flag is available for all build
    configurations.
  - New codec control AV1E_GET_NUM_OPERATING_POINTS
  * Speedup and Memory Optimizations
  - Speed-up multithreaded encoding for good quality mode for
    larger number of threads through frame parallel encoding:
    . 30-34% encode time reduction for 1080p, 16 threads, 1x1
    tile configuration (tile_rows x tile_columns)
    . 18-28% encode time reduction for 1080p, 16 threads, 2x4
    tile configuration
    . 18-20% encode time reduction for 2160p, 32 threads, 2x4
    tile configuration
  - 16-20% speed-up for speed=6 to 8 in still-picture encoding
    mode
  - 5-6% heap memory reduction for speed=6 to 10 in real-time
    encoding mode
  - Improvements to the speed for speed=7, 8 in real-time
    encoding mode
  - Improvements to the speed for speed=9, 10 in real-time screen
    encoding mode
  - Optimizations to improve multi-thread efficiency in real-time
    encoding mode
  - 10-15% speed up for SVC with temporal layers
  - SIMD optimizations:
    . Improve av1_quantize_fp_32x32_neon() 1.05x to 1.24x faster
    . Add aom_highbd_quantize_b{,_32x32,_64x64}_adaptive_neon()
    3.15x to 5.6x faster than "C"
    . Improve av1_quantize_fp_64x64_neon() 1.17x to 1.66x faster
    . Add aom_quantize_b_avx2() 1.4x to 1.7x faster than
    aom_quantize_b_avx()
    . Add aom_quantize_b_32x32_avx2() 1.4x to 2.3x faster than
    aom_quantize_b_32x32_avx()
    . Add aom_quantize_b_64x64_avx2() 2.0x to 2.4x faster than
    aom_quantize_b_64x64_ssse3()
    . Add aom_highbd_quantize_b_32x32_avx2() 9.0x to 10.5x faster
    than aom_highbd_quantize_b_32x32_c()
    . Add aom_highbd_quantize_b_64x64_avx2() 7.3x to 9.7x faster
    than aom_highbd_quantize_b_64x64_c()
    . Improve aom_highbd_quantize_b_avx2() 1.07x to 1.20x faster
    . Improve av1_quantize_fp_avx2() 1.13x to 1.49x faster
    . Improve av1_quantize_fp_32x32_avx2() 1.07x to 1.54x faster
    . Improve av1_quantize_fp_64x64_avx2()  1.03x to 1.25x faster
    . Improve av1_quantize_lp_avx2() 1.07x to 1.16x faster
  * Bug fixes including but not limited to
  - aomedia:3206 Assert that skip_width &gt; 0 for deconvolve
    function
  - aomedia:3278 row_mt enc: Delay top-right sync when intraBC is
    enabled
  - aomedia:3282 blend_a64_*_neon: fix bus error in armv7
  - aomedia:3283 FRAME_PARALLEL: Propagate border size to all
    cpis
  - aomedia:3283 RESIZE_MODE: Fix incorrect strides being used
    for motion search
  - aomedia:3286 rtc-svc: Fix to dynamic_enable spatial layers
  - aomedia:3289 rtc-screen: Fix to skipping inter-mode test in
    nonrd
  - aomedia:3289 rtc-screen: Fix for skip newmv on flat blocks
  - aomedia:3299 Fix build failure with CONFIG_TUNE_VMAF=1
  - aomedia:3296 Fix the conflict --enable-tx-size-search=0 with
    nonrd mode --enable-tx-size-search will be ignored in non-rd
    pick mode
  - aomedia:3304 Fix off-by-one error of max w/h in
    validate_config
  - aomedia:3306 Do not use pthread_setname_np on GNU/Hurd
  - aomedia:3325 row-multithreading produces invalid bitstream in
    some cases
  - chromium:1346938, chromium:1338114
  - compiler_flags.cmake: fix flag detection w/cmake 3.17-3.18.2
  - tools/*.py: update to python3
  - aom_configure.cmake: detect PIE and set CONFIG_PIC
  - test/simd_cmp_impl: use explicit types w/CompareSimd*
  - rtc: Fix to disable segm for aq-mode=3
  - rtc: Fix to color_sensitivity in variance partition
  - rtc-screen: Fix bsize in model rd computation for intra
    chroma
  - Fixes to ensure the correct behavior of the encoder
    algorithms (like segmentation, computation of statistics,
    etc.)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1675857600">- Update to version 3.6.0:
  * This release includes compression efficiency and perceptual
    quality improvements, speedup and memory optimizations, and
    some new features. This release is ABI compatible with the last
    release.
  * New Features:
  - New values 20-27 (corresponding to levels 7.0-7.3 and
    8.0-8.3) for the encoder control
    AV1E_SET_TARGET_SEQ_LEVEL_IDX (note that the proposal to add
    the new levels are still in draft status). The original
    special value 24 (keep level stats only for level monitoring)
    is renumbered as 32.
  - New encoder control AV1E_SET_SKIP_POSTPROC_FILTERING to skip
    the application of post-processing filters on reconstructed
    frame in all intra mode.
  - New encoder option "kf-max-pyr-height": Maximum height of
    pyramid structure used for the GOP starting with a key frame
    (-1 to 5).
  - Make SVC work for screen content.
  - Rate control improvements to reduce frame-size spikes for
    screen content coding.
  - RISC-V architecture support with gcc toolchain.
  * Compression Efficiency Improvements:
  - Peak compression efficiency in VOD setting is improved by 1%.
  - 0.7% - 2.2% RTC encoding BDrate gains for real time speed 8
    to 10.
  - 15% RTC encoding BDrate gains for screen content speed 10.
  * Perceptual Quality Improvements:
  - Resolved a visual quality issue that was reported for high
    resolution clips (2K) for speed 4 and above in VOD use case.
  - Visual quality improvements to screen content coding.
  - Quality improvements to temporal layer RTC coding.
  * Speedup and Memory Optimizations:
  - RTC single-thread encoder speedup:
    . ~6% instruction count reduction for speed 5 and 6.
    . ~15% instruction count reduction for speed 7.
    . ~10% instruction count reduction for speed 8 to 10 (&gt;=360p
    resolutions).
  - RTC multi-thread encoder speedup (beyond single-thread
    speedup):
    . 5-8% encode time reduction for speed 7 to 10.
  - RTC screen-content encoder speedup:
    . 11% instruction count reduction for speed 9 and 10 (&gt;=720p
    resolutions).
  - ~5% reduction in heap memory requirements for RTC, speed 6 to
    10.
  * AVIF:
    . 4-5% speedup for speed 9 in still-picture encoding mode.
    . 3-4% heap memory reduction in still-picture encoding mode
    for 360p-720p resolutions with multiple threads.
  * Bug Fixes:
  - Added a workaround for an AV1 specification bug which makes
    TRANSLATION type global motion models unusable.
  - Fixed AddressSanitizer global-buffer-overflow errors in
    av1/encoder/arm/neon/av1_fwd_txfm2d_neon.c.
  - Fixed AddressSanitizer heap-buffer-overflow error in
    av1_wiener_convolve_add_src_neon().
  - chromium:1393384 Avoid scene detection on spatial resize.
  - aomedia:3308 Remove color artifacts under high motion.
  - aomedia:3310 Avoid out of memory failures with Visual Studio
    2017, 2019, and 2022 for Win32 x86 builds.
  - aomedia:3346 Make SVC work properly for screen content.
  - aomedia:3348 Fix a bug where an uninitialized search_site is
    used.
  - aomedia:3365 Work around what seems like a Visual Studio 2022
    compiler optimization bug.
  - aomedia:3369 Incorrect PSNR values reported by libaom for
    12-bit encode.
- Modernize spec, use cmake_build and ldconfig_scriptlets macros.</changelog>
  <changelog author="Frederic Crozat &lt;fcrozat@suse.com&gt;" date="1681992000">- Fix license tag to BSD-2-Clause and AOMPL-1.0.</changelog>
  <changelog author="Frederic Crozat &lt;fcrozat@suse.com&gt;" date="1683028800">- Revert to BSD-2-Clause licence tag to only use SPDX valid
  license tag.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1683720000">- Update to version 3.6.1:
  * aomedia:2871: Guard the support of the 7.x and 8.x levels for
    AV1 under the CONFIG_CWG_C013 config flag, and only output the
    7.x and 8.x levels when explicitly requested.
  * aomedia:3382: Choose sb_size by ppi instead of svc.
  * aomedia:3384: Fix fullpel search limits.
  * aomedia:3388: Replace left shift of xq_active by
    multiplication.
  * aomedia:3389: Fix MV clamping in av1_mv_pred.
  * aomedia:3390: set_ld_layer_depth: cap max_layer_depth to
    MAX_ARF_LAYERS.
  * aomedia:3418: Fix MV clamping in av1_int_pro_motion_estimation.
  * aomedia:3429: Move lpf thread data init to
    lpf_pipeline_mt_init().
  * b:266719111: Fix undefined behavior in Arm Neon code.
  * b:269840681: nonrd_opt: align scan tables.
  * rtc: Fix is_key_frame setting in variance partition.
  * Build: Fix build with clang-cl and Visual Studio.</changelog>
  <changelog author="Bruno Pitrus &lt;brunopitrus@hotmail.com&gt;" date="1693569600">- New upstream release 3.7.0
  - New Features
  * New codec controls:
  * AV1E_SET_QUANTIZER_ONE_PASS: Set quantizer for each frame.
  * AV1E_ENABLE_RATE_GUIDE_DELTAQ: enable the rate distribution guided delta
    quantization in all intra mode. The "enable-rate-guide-deltaq" option is
    added for this control.
  * AV1E_SET_RATE_DISTRIBUTION_INFO: set the input file for rate
    distribution used in all intra mode. The "rate-distribution-info" option
    is added for this control.
  * AV1E_GET_LUMA_CDEF_STRENGTH
  * AV1E_SET_BITRATE_ONE_PASS_CBR
  * AOM_SCALING_MODE is extended to include 2/3 and 1/3 scaling.
  * aom_tune_metric is extended to include AOM_TUNE_VMAF_SALIENCY_MAP.
    The "tune" option is extended to include "vmaf_saliency_map".
  * SVC example encoder svc_encoder_rtc is able to use the rate control
    library.
  * Loopfilter level and CDEF filter level is supported by RTC rate control
    library.
  * New speed (--cpu-used) 11, intended for RTC screen sharing, added for
    faster encoding with ~3% bdrate loss with 16% IC (instruction count)
    speedup compared to speed 10.
  - Compression Efficiency Improvements
  * Improved VoD encoding performance
  * 0.1-0.6% BDrate gains for encoding speeds 2 to 6
  * Rate control accuracy improvement in VBR mode
  * RTC encoding improvements
  * Screen content mode: 10-19% BDrate gains for speeds 6 - 10
  * Temporal layers video mode, for speed 10:
  * 2 temporal layers on low resolutions: 13-15% BDrate gain
  * 3 temporal layers on VGA/HD: 3-4% BDrate gain
  - Perceptual Quality Improvements
  * Fixed multiple block and color artifacts for RTC screen content by
  * Incorporating color into RD cost for IDTX
  * Reducing thresholds for palette mode in non RD mode
  * Allowing more palette mode testing
  * Improved color sensitivity for altref in non-RD mode.
  * Reduced video flickering for temporal layer encoding.
  - Speedup and Memory Optimizations
  * Speed up the VoD encoder
  * 2-5% for encoding speed 2 to 4
  * 9-15% for encoding speed 5 to 6
  * ARM
  * Standard bitdepth
  * speed 5: +31%
  * speed 4: +2%
  * speed 3: +9%
  * speed 2: +157%
  * High bitdepth
  * speed 5: +85%
  * RTC speedups
  * Screen content mode
  * 15% IC speedup for speeds 6-8
  * ARM: 7% for speed 9, 3% for speed 10
  * Temporal layers video mode
  * 7% speedup for 3 temporal layers on VGA/HD, for speed 10
  * Single layer video
  * x86: 2% IC speedup for speeds 7-10
  * ARM: 2-4% speedup across speeds 5-10
  - Bug Fixes
  * aomedia:3261 Assertion failed when encoding av1 with film grain and
    '--monochrome' flag
  * aomedia:3276 ensure all allocations are checked (partial fix)
  * aomedia:3451 The libaom library calls exit()
  * aomedia:3450 enable -Wshadow for C++ sources
  * aomedia:3449 Test Seg Faults After
    b459af3e345be402db052a143fcc5383d4b74cbd
  * aomedia:3416 prune unused symbols / restrict symbol visibility
  * aomedia:3443 Jenkins failure:
    UninstantiatedParameterizedTestSuite&lt;EstimateNoiseTest&gt;
  * aomedia:3434 realtime failures with CONFIG_BITSTREAM_DEBUG=1
  * aomedia:3433 DeltaqModeTest crash w/row_mt=0
  * aomedia:3429 Encoder crash when turn on both ExternalResize and
    g_threads &gt; 2
  * aomedia:3438 Build failure with
    `-DSANITIZE=address -DBUILD_SHARED_LIBS=ON` when using clang.
  * aomedia:3435 Block artifacts when scrolling with AV1 in screen sharing
    scenarios
  * aomedia:3170 vmaf tune presets produce extreme glitches in one scene
  * aomedia:3401 Building shared libaom with MSVC results in a race condition
    with the export library
  * aomedia:3420 Floating point exception in av1_tpl_get_frame_importance()
  * aomedia:3424 heap-buffer-overflow in ScaleFilterCols_16_C() (SIGABRT)
  * aomedia:3417 examples/svc_encoder_rtc.c is using internal macros and
    functions
  * aomedia:3372 SEGV in assign_frame_buffer_p av1_common_int.h
  * aomedia:3130 'cpu-features.h' file not found on Android NDK 22
  * aomedia:3415 Encoder/decoder mismatch for svc_encoder_rtc running
    1 SL 3 TL
  * aomedia:3412 Lossless Mode Fails Loopback Bit Test
  * aomedia:3409 The use of AV1_VAR_OFFS in av1/encoder/var_based_part.c is
    incorrect for high bit depths
  * aomedia:3403 test_libaom fails with error message
    "feenableexcept() failed" on Linux arm
  * aomedia:3370 Random color block at fast motion area
  * aomedia:3393 Assertion failure in av1_convolve_2d_sr_c()
  * aomedia:3392 Strong artifacting for high bit-depth real-time
  * aomedia:3376 aomenc --threads=10 --deltaq-mode=3 crashes after
    "Allintra: multi-threading of calculating differential contrast"
  * aomedia:3380 Crashes and ASan and TSan errors in deltaq-mode=3
    multithreading code
  * chromium:1410766 heap-buffer-overflow in aom_yv12_copy_v_c
  * Cannot set level via AV1E_SET_TARGET_SEQ_LEVEL_IDX
  * Encoding failure due to the use of loop restoration with unintended use of
    lossless mode.
  * Signed integer overflow in scan_past_frames
  * Signed integer overflow in update_a_sep_sym
  * Flickering in AV1 1440p/2160p HDR transcodes
  * Fixed artifacts with screen share at encoder speed 10
  * Fixed prediction setup for IDTX
- Use system libraries instead of vendored ones
  * system-gtest.patch
  * system-yuv.patch
- Enable debuginfo also on modules written in assembly
- Enable building PowerPC-specific optimizations
- Enable Neon optimized code on ARM and fix runtime CPU detection
- Fix missing images in documentation</changelog>
  <changelog author="Bruno Pitrus &lt;brunopitrus@hotmail.com&gt;" date="1693915200">- Split docs to multibuild to avoid dependency cycle</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1701777600">- Update to version 3.7.1:
  * Bug Fixes:
  - aomedia:3349: heap overflow when increasing resolution
  - aomedia:3478: GCC 12.2.0 emits a -Wstringop-overflow warning
    on aom/av1/encoder/motion_search_facade.c
  - aomedia:3489: Detect encoder and image high bit depth
    mismatch
  - aomedia:3491: heap-buffer-overflow on frame size change
  - b/303023614:  Segfault at encoding time for high bit depth
    images
- Switch buildtime compression to zst.</changelog>
  <changelog author="Enrico Belleri &lt;kilgore.trout@idesmi.eu&gt;" date="1720267200">- Update to version 3.7.2:
  * aomedia:3520: get_cubic_kernel_dbl: Assertion `0 &lt;= x &amp;&amp; x &lt; 1'
    failed.
  * aomedia:3526: alloc_compressor_data() is called during every
    aom_codec_control() call on the encoder. Note that this partially
    reverts the fix for bug aomedia:3349.
  * b/310457427 and b/310766628: Only use rec_sse in CBR mode.</changelog>
  <changelog author="Enrico Belleri &lt;kilgore.trout@idesmi.eu&gt;" date="1724587200">- Exclude third_party from obscpio</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1726488000">- Update to version 3.9.1:
  * This release includes new codec interfaces, compression
    efficiency and perceptual improvements, speedup for RTC for both
    video and screen content, and many bug fixes.
- Please see https://aomedia.googlesource.com/aom/+/refs/tags/v3.9.1/CHANGELOG
  for detailed changes since version 3.7.2
- Rebase patches with quilt.</changelog>
</package>
<package pkgid="51992822c3e104befa805fea5d8da3b0b6ca6df635f844fc7d2fcf490135d62cae3ad48f11711488c57c263c14a92954aee40a72e9b1dc5df2d21eb2f2be6701" name="aom-tools-debuginfo" arch="i586">
  <version epoch="0" ver="3.7.2" rel="1.0.2.1.sr20240803"/>
  <changelog author="daniel.molkentin@suse.com" date="1620648000">- Update to version 3.1.0 (bsc#1185843):
  https://aomedia.googlesource.com/aom/+/refs/tags/v3.1.0
  This release adds an "all intra" mode to the encoder, which significantly
  speeds up the encoding of AVIF still images at speed 6.
  - Upgrading:
    All intra mode for encoding AVIF still images and AV1 all intra videos:
    AOM_USAGE_ALL_INTRA (2) can be passed as the 'usage' argument to
    aom_codec_enc_config_default().
    New encoder control IDs added:
  - AV1E_SET_ENABLE_DIAGONAL_INTRA: Enable diagonal (D45 to D203) intra
    prediction modes (0: false, 1: true (default)). Also available as
    "enable-diagonal-intra" for the aom_codec_set_option() function.
    New aom_tune_metric enum value: AOM_TUNE_BUTTERAUGLI. The new aomenc option
  - -tune=butteraugli was added to optimize the encoder’s perceptual quality by
    optimizing the Butteraugli metric. Install libjxl (JPEG XL) and then pass
  - DCONFIG_TUNE_BUTTERAUGLI=1 to the cmake command to enable it.
- Includes 3.0
  https://aomedia.googlesource.com/aom/+/refs/tags/v3.0.0
  This release includes compression efficiency improvement, speed improvement
  for realtime mode, as well as some new APIs.
  - Upgrading:
    Support for PSNR calculation based on stream bit-depth.
    New encoder control IDs added:
  - AV1E_SET_ENABLE_RECT_TX
  - AV1E_SET_VBR_CORPUS_COMPLEXITY_LAP
  - AV1E_GET_BASELINE_GF_INTERVAL
  - AV1E_SET_ENABLE_DNL_DENOISING
    New decoder control IDs added:
  - AOMD_GET_FWD_KF_PRESENT
  - AOMD_GET_FRAME_FLAGS
  - AOMD_GET_ALTREF_PRESENT
  - AOMD_GET_TILE_INFO
  - AOMD_GET_SCREEN_CONTENT_TOOLS_INFO
  - AOMD_GET_STILL_PICTURE
  - AOMD_GET_SB_SIZE
  - AOMD_GET_SHOW_EXISTING_FRAME_FLAG
  - AOMD_GET_S_FRAME_INFO
    New aom_tune_content enum value: AOM_CONTENT_FILM
    New aom_tune_metric enum value: AOM_TUNE_VMAF_NEG_MAX_GAIN
    Coefficient and mode update can be turned off via
    AV1E_SET_{COEFF/MODE}_COST_UPD_FREQ.
    New key &amp; value API added, available with aom_codec_set_option() function.
    Scaling API expanded to include 1/4, 3/4 and 1/8.
  - Enhancements:
    Better multithreading performance with realtime mode.
    New speed 9 setting for faster realtime encoding.
    Smaller binary size with low bitdepth and realtime only build.
    Temporal denoiser and its optimizations on x86 and Neon.
    Optimizations for scaling.
    Faster encoding with speed settings 2 to 6 for good encoding mode.
    Improved documentation throughout the library, with function level
    documentation, tree view and support for the dot tool.
  - Bug fixes:
    Aside from those mentioned in v2.0.1 and v2.0.2, this release includes the
    following bug fixes:
    Issue 2940: Segfault when encoding with --use-16bit-internal and --limit &gt; 1
    Issue 2941: Decoder mismatch with --rt --bit-depth=10 and --cpu-used=8
    Issue 2895: mingw-w64 i686 gcc fails to build
    Issue 2874: Separate ssse3 functions from sse2 file.</changelog>
  <changelog author="Ferdinand Thiessen &lt;rpm@fthiessen.de&gt;" date="1625227200">- Update to version 3.1.1
  * Fix vmaf model initialization error when not set to tune=vmaf
  * Fix consistent crash on near-static screen content, keyframe
    related
  * Fix tune=butteraugli mode
- Disable NEON on arm where not available.</changelog>
  <changelog author="pgajdos@suse.com" date="1629892800">- Update to version 3.1.2:
  * Update AUTHORS,CHANGELOG,CMakeLists.txt for v3.1.2
  * Avoid chroma resampling for 420mpeg2 input
  * Check array has two elements before using index 1
  * Fix DecodeScalabilityTest failure in realtime only
  * Store temporal_id and spatial_id of decoded frame
  * exports.cmake: use APPLE and WIN32 and use def for mingw-w64</changelog>
  <changelog author="pgajdos@suse.com" date="1629892801">- security update
- added patches
  fix CVE-2021-30475 [bsc#1189497], Buffer overflow in aom_dsp/noise_model.c
  + libaom-CVE-2021-30475.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1631188800">- security update
- added patches
  fix CVE-2021-30474 [bsc#1186799], aom_dsp/grain_table.c in libaom in AOMedia before 2021-03-30 has a use-after-free.
  + libaom-CVE-2021-30474.patch</changelog>
  <changelog author="gmbr3@opensuse.org" date="1633694400">- Update to version 3.1.3:
  * Update CHANGELOG for v3.1.3-rc2
  * Detect chroma subsampling more directly
  * Detect chroma subsampling more directly
  * image2yuvconfig() should calculate uv_crop_width
  * aom/aom_encoder.h: remove configure option reference
  * aom_encoder.h: fix rc_overshoot_pct range
  * Update AUTHORS,CHANGELOG,CMakeLists.txt for v3.1.3
  * aom_install: don't exclude msvc from install
  * aom_install: use relpath for install
  * aom_install: Install lib dlls to bindir</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1634126400">- fix service data</changelog>
  <changelog author="bjorn.lie@gmail.com" date="1634299200">- Update to version 3.2.0:
  * This release includes compression efficiency and perceptual
    quality improvements, speedup and memory optimizations, as well
    as some new features.
  * New Features:
    + Introduced speeds 7, 8, and 9 for all intra mode.
    + Introduced speed 10 for real time mode.
    + Introduced an API that allows external partition decisions.
    + SVC: added support for compound prediction.
    + SVC: added support for fixed SVC modes.
  * Compression Efficiency Improvements:
    + Intra-mode search improvement.
    + Improved real time (RT) mode BDrate savings by ~5% (RT speed
    5) and ~12% (RT speed 6). The improvement was measured on the
    video conference set.
    + Improved real time mode for nonrd path (speed 7, 8, 9):
    BDrate gains of ~3-5%.
    + Rate control and RD adjustments based on ML research in VP9.
    Gains of ~0.5-1.0% for HD.
  * Perceptual Quality Improvements:
    + Added a new mode --deltaq-mode=3 to improve perceptual
    quality based on a differential contrast model for still
    images.
    + Added a new mode –deltaq-mode=4 to improve perceptual quality
    based on user rated cq_level data set for still images.
    + Weighting of some intra mode and partition size choices to
    better manage and retain texture.
  * Speedup and Memory Optimizations:
    + Further improved 2-pass good quality encoder speed:
    . Speed 2 speedup: 18%
    . Speed 3 speedup: 22%
    . Speed 4 speedup: 37%
    . Speed 5 speedup: 30%
    . Speed 6 speedup: 20%
    + Optimized the real time encoder (measured on the video
    conference set):
    . RT speed 5 speedup: 110%
    . RT speed 6 speedup: 77%
  * Bug Fixes
    + Issue 3069: Fix one-pass mode keyframe placement off-by-one
    error.
    + Issue 3156: Fix a bug in av1_quantize_lp AVX2 optimization.
- Drop libaom-CVE-2021-30474.patch: Fixed upstream.
- Drop libaom-CVE-2021-30475.patch: Fixed upstream.
- Remove changesgenerate option from _service file, use data from
  CHANGELOG to fill .changes instead as it it much nicer and human
  readable than just a list of commit messages.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1645185600">- Update to version 3.3.0:
  * This release includes compression efficiency and perceptual
    quality improvements, speedup and memory optimizations, some
    new features, and several bug fixes.
  * New Features
  - AV1 RT: Introducing CDEF search level 5
  - Changed real time speed 4 to behave the same as real time
    speed 5
  - Add --deltaq-strength
  - rtc: Allow scene-change and overshoot detection for svc
  - rtc: Intra-only frame for svc
  - AV1 RT: Option 2 for codec control AV1E_SET_ENABLE_CDEF to
    disable CDEF on non-ref frames
  - New codec controls AV1E_SET_LOOPFILTER_CONTROL and
    AOME_GET_LOOPFILTER_LEVEL
  - Improvements to three pass encoding
  * Compression Efficiency Improvements: Overall compression gains:
    0.6%
  * Perceptual Quality Improvements
  - Improves the perceptual quality of high QP encoding for
    delta-q mode 4
  - Auto select noise synthesis level for all intra
  * Speedup and Memory Optimizations
  - Added many SSE2 optimizations.
  - Good quality 2-pass encoder speedups:
    o Speed 2: 9%
    o Speed 3: 12.5%
    o Speed 4: 8%
    o Speed 5: 3%
    o Speed 6: 4%
  - Real time mode encoder speedups:
    o Speed 5: 2.6% BDRate gain, 4% speedup
    o Speed 6: 3.5% BDRate gain, 4% speedup
    o Speed 9: 1% BDRate gain, 3% speedup
    o Speed 10: 3% BDRate gain, neutral speedup
  - All intra encoding speedups (AVIF):
    o Single thread - speed 6: 8%
    o Single thread - speed 9: 15%
    o Multi thread(8) - speed 6: 14%
    o Multi thread(8) - speed 9: 34%
  * Bug Fixes
  - Issue 3163: Segmentation fault when using
  - -enable-keyframe-filtering=2
  - Issue 2436: Integer overflow in av1_warp_affine_c()
  - Issue 3226: armv7 build failure due to gcc-11
  - Issue 3195: Bug report on libaom (AddressSanitizer:
    heap-buffer-overflow)
  - Issue 3191: Bug report on libaom (AddressSanitizer: SEGV on
    unknown address)
- Drop libaom-devel Requires from libaom-devel-doc sub-package: We
  do not need the devel package to be able to read the devel
  documentation.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1662292800">- Update to version 3.4.0:
  * This release includes compression efficiency and perceptual
    quality improvements, speedup and memory optimizations, and
    some new features. There are no ABI or API breaking changes in
    this release.
  * New Features:
  - New --dist-metric flag with "qm-psnr" value to use
    quantization matrices in the distortion computation for RD
    search. The default value is "psnr".
  - New command line option "--auto-intra-tools-off=1" to make
    all-intra encoding faster for high bit rate under
    "--deltaq-mode=3" mode.
  - New rate control library aom_av1_rc for real-time hardware
    encoders. Supports CBR for both one spatial layer and SVC.
  - New image format AOM_IMG_FMT_NV12 can be used as input to the
    encoder. The presence of AOM_IMG_FMT_NV12 can be detected at
    compile time by checking if the macro AOM_HAVE_IMG_FMT_NV12
    is defined.
  - New codec controls for the encoder:
    o AV1E_SET_AUTO_INTRA_TOOLS_OFF. Only in effect if
  - -deltaq-mode=3.
    o AV1E_SET_RTC_EXTERNAL_RC
    o AV1E_SET_FP_MT. Only supported if libaom is built with
  - DCONFIG_FRAME_PARALLEL_ENCODE=1.
    o AV1E_GET_TARGET_SEQ_LEVEL_IDX
  - New key-value pairs for the key-value API:
    o --auto-intra-tools-off=0 (default) or 1. Only in effect if
  - -deltaq-mode=3.
    o --strict-level-conformance=0 (default) or 1
    o --fp-mt=0 (default) or 1. Only supported if libaom is built
    with -DCONFIG_FRAME_PARALLEL_ENCODE=1.
  - New aomenc options (not supported by the key-value API):
    o --nv12
  * Compression Efficiency Improvements:
  - Correctly calculate SSE for high bitdepth in skip mode, 0.2%
    to 0.6% coding gain.
  - RTC at speed 9/10: BD-rate gain of ~4/5%
  - RTC screen content coding: many improvements for real-time
    screen at speed 10 (quality, speedup, and rate control), up
    to high resolutions (1080p).
  - RTC-SVC: fixes to make intra-only frames work for spatial
    layers.
  - RTC-SVC: quality improvements for temporal layers.
  - AV1 RT: A new passive rate control strategy for screen
    content, an average of 7.5% coding gain, with some clips of
    20+%. The feature is turned off by default due to higher bit
    rate variation.
  * Perceptual Quality Improvements:
  - RTC: Visual quality improvements for high speeds (9/10)
  - Improvements in coding quality for all intra mode
  * Speedup and Memory Optimizations:
  - ~10% speedup in good quality mode encoding.
  - ~7% heap memory reduction in good quality encoding mode for
    speed 5 and 6.
  - Ongoing improvements to intra-frame encoding performance on
    Arm
  - Faster encoding speed for "--deltaq-mode=3" mode.
  - ~10% speedup for speed 5/6, ~15% speedup for speed 7/8, and
    ~10% speedup for speed 9/10 in real time encoding mode
  - ~20% heap memory reduction in still-picture encoding mode for
    360p-720p resolutions with multiple threads
  - ~13% speedup for speed 6 and ~12% speedup for speed 9 in
    still-picture encoding mode.
  - Optimizations to improve multi-thread efficiency for
    still-picture encoding mode.
  * Bug Fixes:
  - b/204460717: README.md: replace master with main
  - b/210677928: libaom disable_order is surprising for
    max_reference_frames=3
  - b/222461449: -DCONFIG_TUNE_BUTTERAUGLI=1 broken
  - b/227207606: write_greyscale writes incorrect chroma in
    highbd mode
  - b/229955363: Integer-overflow in linsolve_wiener
  - https://crbug.com/aomedia/2032
  - https://crbug.com/aomedia/2397
  - https://crbug.com/aomedia/2563
  - https://crbug.com/aomedia/2815
  - https://crbug.com/aomedia/3009
  - https://crbug.com/aomedia/3018
  - https://crbug.com/aomedia/3045
  - https://crbug.com/aomedia/3101
  - https://crbug.com/aomedia/3130
  - https://crbug.com/aomedia/3173
  - https://crbug.com/aomedia/3184
  - https://crbug.com/aomedia/3187
  - https://crbug.com/aomedia/3190
  - https://crbug.com/aomedia/3195
  - https://crbug.com/aomedia/3197
  - https://crbug.com/aomedia/3201
  - https://crbug.com/aomedia/3202
  - https://crbug.com/aomedia/3204
  - https://crbug.com/aomedia/3205
  - https://crbug.com/aomedia/3207
  - https://crbug.com/aomedia/3208
  - https://crbug.com/aomedia/3209
  - https://crbug.com/aomedia/3213
  - https://crbug.com/aomedia/3214
  - https://crbug.com/aomedia/3219
  - https://crbug.com/aomedia/3222
  - https://crbug.com/aomedia/3223
  - https://crbug.com/aomedia/3225
  - https://crbug.com/aomedia/3226
  - https://crbug.com/aomedia/3228
  - https://crbug.com/aomedia/3232
  - https://crbug.com/aomedia/3236
  - https://crbug.com/aomedia/3237
  - https://crbug.com/aomedia/3238
  - https://crbug.com/aomedia/3240
  - https://crbug.com/aomedia/3243
  - https://crbug.com/aomedia/3244
  - https://crbug.com/aomedia/3246
  - https://crbug.com/aomedia/3248
  - https://crbug.com/aomedia/3250
  - https://crbug.com/aomedia/3251
  - https://crbug.com/aomedia/3252
  - https://crbug.com/aomedia/3255
  - https://crbug.com/aomedia/3257
  - https://crbug.com/aomedia/3259
  - https://crbug.com/aomedia/3260
  - https://crbug.com/aomedia/3267
  - https://crbug.com/aomedia/3268
  - https://crbug.com/aomedia/3269
  - https://crbug.com/aomedia/3276
  - https://crbug.com/aomedia/3278
  - https://crbug.com/chromium/1290068
  - https://crbug.com/chromium/1303237
  - https://crbug.com/chromium/1304990
  - https://crbug.com/chromium/1321141
  - https://crbug.com/chromium/1321388
  - https://crbug.com/oss-fuzz/44846
  - https://crbug.com/oss-fuzz/44856
  - https://crbug.com/oss-fuzz/44862
  - https://crbug.com/oss-fuzz/44904
  - https://crbug.com/oss-fuzz/45056</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1663848000">- Update to version 3.5.0:
  * This release is ABI compatible with the last one, including
    speedup and memory optimizations, and new APIs and features.
  * New Features
  - Support for frame parallel encode for larger number of
    threads. --fp-mt flag is available for all build
    configurations.
  - New codec control AV1E_GET_NUM_OPERATING_POINTS
  * Speedup and Memory Optimizations
  - Speed-up multithreaded encoding for good quality mode for
    larger number of threads through frame parallel encoding:
    . 30-34% encode time reduction for 1080p, 16 threads, 1x1
    tile configuration (tile_rows x tile_columns)
    . 18-28% encode time reduction for 1080p, 16 threads, 2x4
    tile configuration
    . 18-20% encode time reduction for 2160p, 32 threads, 2x4
    tile configuration
  - 16-20% speed-up for speed=6 to 8 in still-picture encoding
    mode
  - 5-6% heap memory reduction for speed=6 to 10 in real-time
    encoding mode
  - Improvements to the speed for speed=7, 8 in real-time
    encoding mode
  - Improvements to the speed for speed=9, 10 in real-time screen
    encoding mode
  - Optimizations to improve multi-thread efficiency in real-time
    encoding mode
  - 10-15% speed up for SVC with temporal layers
  - SIMD optimizations:
    . Improve av1_quantize_fp_32x32_neon() 1.05x to 1.24x faster
    . Add aom_highbd_quantize_b{,_32x32,_64x64}_adaptive_neon()
    3.15x to 5.6x faster than "C"
    . Improve av1_quantize_fp_64x64_neon() 1.17x to 1.66x faster
    . Add aom_quantize_b_avx2() 1.4x to 1.7x faster than
    aom_quantize_b_avx()
    . Add aom_quantize_b_32x32_avx2() 1.4x to 2.3x faster than
    aom_quantize_b_32x32_avx()
    . Add aom_quantize_b_64x64_avx2() 2.0x to 2.4x faster than
    aom_quantize_b_64x64_ssse3()
    . Add aom_highbd_quantize_b_32x32_avx2() 9.0x to 10.5x faster
    than aom_highbd_quantize_b_32x32_c()
    . Add aom_highbd_quantize_b_64x64_avx2() 7.3x to 9.7x faster
    than aom_highbd_quantize_b_64x64_c()
    . Improve aom_highbd_quantize_b_avx2() 1.07x to 1.20x faster
    . Improve av1_quantize_fp_avx2() 1.13x to 1.49x faster
    . Improve av1_quantize_fp_32x32_avx2() 1.07x to 1.54x faster
    . Improve av1_quantize_fp_64x64_avx2()  1.03x to 1.25x faster
    . Improve av1_quantize_lp_avx2() 1.07x to 1.16x faster
  * Bug fixes including but not limited to
  - aomedia:3206 Assert that skip_width &gt; 0 for deconvolve
    function
  - aomedia:3278 row_mt enc: Delay top-right sync when intraBC is
    enabled
  - aomedia:3282 blend_a64_*_neon: fix bus error in armv7
  - aomedia:3283 FRAME_PARALLEL: Propagate border size to all
    cpis
  - aomedia:3283 RESIZE_MODE: Fix incorrect strides being used
    for motion search
  - aomedia:3286 rtc-svc: Fix to dynamic_enable spatial layers
  - aomedia:3289 rtc-screen: Fix to skipping inter-mode test in
    nonrd
  - aomedia:3289 rtc-screen: Fix for skip newmv on flat blocks
  - aomedia:3299 Fix build failure with CONFIG_TUNE_VMAF=1
  - aomedia:3296 Fix the conflict --enable-tx-size-search=0 with
    nonrd mode --enable-tx-size-search will be ignored in non-rd
    pick mode
  - aomedia:3304 Fix off-by-one error of max w/h in
    validate_config
  - aomedia:3306 Do not use pthread_setname_np on GNU/Hurd
  - aomedia:3325 row-multithreading produces invalid bitstream in
    some cases
  - chromium:1346938, chromium:1338114
  - compiler_flags.cmake: fix flag detection w/cmake 3.17-3.18.2
  - tools/*.py: update to python3
  - aom_configure.cmake: detect PIE and set CONFIG_PIC
  - test/simd_cmp_impl: use explicit types w/CompareSimd*
  - rtc: Fix to disable segm for aq-mode=3
  - rtc: Fix to color_sensitivity in variance partition
  - rtc-screen: Fix bsize in model rd computation for intra
    chroma
  - Fixes to ensure the correct behavior of the encoder
    algorithms (like segmentation, computation of statistics,
    etc.)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1675857600">- Update to version 3.6.0:
  * This release includes compression efficiency and perceptual
    quality improvements, speedup and memory optimizations, and
    some new features. This release is ABI compatible with the last
    release.
  * New Features:
  - New values 20-27 (corresponding to levels 7.0-7.3 and
    8.0-8.3) for the encoder control
    AV1E_SET_TARGET_SEQ_LEVEL_IDX (note that the proposal to add
    the new levels are still in draft status). The original
    special value 24 (keep level stats only for level monitoring)
    is renumbered as 32.
  - New encoder control AV1E_SET_SKIP_POSTPROC_FILTERING to skip
    the application of post-processing filters on reconstructed
    frame in all intra mode.
  - New encoder option "kf-max-pyr-height": Maximum height of
    pyramid structure used for the GOP starting with a key frame
    (-1 to 5).
  - Make SVC work for screen content.
  - Rate control improvements to reduce frame-size spikes for
    screen content coding.
  - RISC-V architecture support with gcc toolchain.
  * Compression Efficiency Improvements:
  - Peak compression efficiency in VOD setting is improved by 1%.
  - 0.7% - 2.2% RTC encoding BDrate gains for real time speed 8
    to 10.
  - 15% RTC encoding BDrate gains for screen content speed 10.
  * Perceptual Quality Improvements:
  - Resolved a visual quality issue that was reported for high
    resolution clips (2K) for speed 4 and above in VOD use case.
  - Visual quality improvements to screen content coding.
  - Quality improvements to temporal layer RTC coding.
  * Speedup and Memory Optimizations:
  - RTC single-thread encoder speedup:
    . ~6% instruction count reduction for speed 5 and 6.
    . ~15% instruction count reduction for speed 7.
    . ~10% instruction count reduction for speed 8 to 10 (&gt;=360p
    resolutions).
  - RTC multi-thread encoder speedup (beyond single-thread
    speedup):
    . 5-8% encode time reduction for speed 7 to 10.
  - RTC screen-content encoder speedup:
    . 11% instruction count reduction for speed 9 and 10 (&gt;=720p
    resolutions).
  - ~5% reduction in heap memory requirements for RTC, speed 6 to
    10.
  * AVIF:
    . 4-5% speedup for speed 9 in still-picture encoding mode.
    . 3-4% heap memory reduction in still-picture encoding mode
    for 360p-720p resolutions with multiple threads.
  * Bug Fixes:
  - Added a workaround for an AV1 specification bug which makes
    TRANSLATION type global motion models unusable.
  - Fixed AddressSanitizer global-buffer-overflow errors in
    av1/encoder/arm/neon/av1_fwd_txfm2d_neon.c.
  - Fixed AddressSanitizer heap-buffer-overflow error in
    av1_wiener_convolve_add_src_neon().
  - chromium:1393384 Avoid scene detection on spatial resize.
  - aomedia:3308 Remove color artifacts under high motion.
  - aomedia:3310 Avoid out of memory failures with Visual Studio
    2017, 2019, and 2022 for Win32 x86 builds.
  - aomedia:3346 Make SVC work properly for screen content.
  - aomedia:3348 Fix a bug where an uninitialized search_site is
    used.
  - aomedia:3365 Work around what seems like a Visual Studio 2022
    compiler optimization bug.
  - aomedia:3369 Incorrect PSNR values reported by libaom for
    12-bit encode.
- Modernize spec, use cmake_build and ldconfig_scriptlets macros.</changelog>
  <changelog author="Frederic Crozat &lt;fcrozat@suse.com&gt;" date="1681992000">- Fix license tag to BSD-2-Clause and AOMPL-1.0.</changelog>
  <changelog author="Frederic Crozat &lt;fcrozat@suse.com&gt;" date="1683028800">- Revert to BSD-2-Clause licence tag to only use SPDX valid
  license tag.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1683720000">- Update to version 3.6.1:
  * aomedia:2871: Guard the support of the 7.x and 8.x levels for
    AV1 under the CONFIG_CWG_C013 config flag, and only output the
    7.x and 8.x levels when explicitly requested.
  * aomedia:3382: Choose sb_size by ppi instead of svc.
  * aomedia:3384: Fix fullpel search limits.
  * aomedia:3388: Replace left shift of xq_active by
    multiplication.
  * aomedia:3389: Fix MV clamping in av1_mv_pred.
  * aomedia:3390: set_ld_layer_depth: cap max_layer_depth to
    MAX_ARF_LAYERS.
  * aomedia:3418: Fix MV clamping in av1_int_pro_motion_estimation.
  * aomedia:3429: Move lpf thread data init to
    lpf_pipeline_mt_init().
  * b:266719111: Fix undefined behavior in Arm Neon code.
  * b:269840681: nonrd_opt: align scan tables.
  * rtc: Fix is_key_frame setting in variance partition.
  * Build: Fix build with clang-cl and Visual Studio.</changelog>
  <changelog author="Bruno Pitrus &lt;brunopitrus@hotmail.com&gt;" date="1693569600">- New upstream release 3.7.0
  - New Features
  * New codec controls:
  * AV1E_SET_QUANTIZER_ONE_PASS: Set quantizer for each frame.
  * AV1E_ENABLE_RATE_GUIDE_DELTAQ: enable the rate distribution guided delta
    quantization in all intra mode. The "enable-rate-guide-deltaq" option is
    added for this control.
  * AV1E_SET_RATE_DISTRIBUTION_INFO: set the input file for rate
    distribution used in all intra mode. The "rate-distribution-info" option
    is added for this control.
  * AV1E_GET_LUMA_CDEF_STRENGTH
  * AV1E_SET_BITRATE_ONE_PASS_CBR
  * AOM_SCALING_MODE is extended to include 2/3 and 1/3 scaling.
  * aom_tune_metric is extended to include AOM_TUNE_VMAF_SALIENCY_MAP.
    The "tune" option is extended to include "vmaf_saliency_map".
  * SVC example encoder svc_encoder_rtc is able to use the rate control
    library.
  * Loopfilter level and CDEF filter level is supported by RTC rate control
    library.
  * New speed (--cpu-used) 11, intended for RTC screen sharing, added for
    faster encoding with ~3% bdrate loss with 16% IC (instruction count)
    speedup compared to speed 10.
  - Compression Efficiency Improvements
  * Improved VoD encoding performance
  * 0.1-0.6% BDrate gains for encoding speeds 2 to 6
  * Rate control accuracy improvement in VBR mode
  * RTC encoding improvements
  * Screen content mode: 10-19% BDrate gains for speeds 6 - 10
  * Temporal layers video mode, for speed 10:
  * 2 temporal layers on low resolutions: 13-15% BDrate gain
  * 3 temporal layers on VGA/HD: 3-4% BDrate gain
  - Perceptual Quality Improvements
  * Fixed multiple block and color artifacts for RTC screen content by
  * Incorporating color into RD cost for IDTX
  * Reducing thresholds for palette mode in non RD mode
  * Allowing more palette mode testing
  * Improved color sensitivity for altref in non-RD mode.
  * Reduced video flickering for temporal layer encoding.
  - Speedup and Memory Optimizations
  * Speed up the VoD encoder
  * 2-5% for encoding speed 2 to 4
  * 9-15% for encoding speed 5 to 6
  * ARM
  * Standard bitdepth
  * speed 5: +31%
  * speed 4: +2%
  * speed 3: +9%
  * speed 2: +157%
  * High bitdepth
  * speed 5: +85%
  * RTC speedups
  * Screen content mode
  * 15% IC speedup for speeds 6-8
  * ARM: 7% for speed 9, 3% for speed 10
  * Temporal layers video mode
  * 7% speedup for 3 temporal layers on VGA/HD, for speed 10
  * Single layer video
  * x86: 2% IC speedup for speeds 7-10
  * ARM: 2-4% speedup across speeds 5-10
  - Bug Fixes
  * aomedia:3261 Assertion failed when encoding av1 with film grain and
    '--monochrome' flag
  * aomedia:3276 ensure all allocations are checked (partial fix)
  * aomedia:3451 The libaom library calls exit()
  * aomedia:3450 enable -Wshadow for C++ sources
  * aomedia:3449 Test Seg Faults After
    b459af3e345be402db052a143fcc5383d4b74cbd
  * aomedia:3416 prune unused symbols / restrict symbol visibility
  * aomedia:3443 Jenkins failure:
    UninstantiatedParameterizedTestSuite&lt;EstimateNoiseTest&gt;
  * aomedia:3434 realtime failures with CONFIG_BITSTREAM_DEBUG=1
  * aomedia:3433 DeltaqModeTest crash w/row_mt=0
  * aomedia:3429 Encoder crash when turn on both ExternalResize and
    g_threads &gt; 2
  * aomedia:3438 Build failure with
    `-DSANITIZE=address -DBUILD_SHARED_LIBS=ON` when using clang.
  * aomedia:3435 Block artifacts when scrolling with AV1 in screen sharing
    scenarios
  * aomedia:3170 vmaf tune presets produce extreme glitches in one scene
  * aomedia:3401 Building shared libaom with MSVC results in a race condition
    with the export library
  * aomedia:3420 Floating point exception in av1_tpl_get_frame_importance()
  * aomedia:3424 heap-buffer-overflow in ScaleFilterCols_16_C() (SIGABRT)
  * aomedia:3417 examples/svc_encoder_rtc.c is using internal macros and
    functions
  * aomedia:3372 SEGV in assign_frame_buffer_p av1_common_int.h
  * aomedia:3130 'cpu-features.h' file not found on Android NDK 22
  * aomedia:3415 Encoder/decoder mismatch for svc_encoder_rtc running
    1 SL 3 TL
  * aomedia:3412 Lossless Mode Fails Loopback Bit Test
  * aomedia:3409 The use of AV1_VAR_OFFS in av1/encoder/var_based_part.c is
    incorrect for high bit depths
  * aomedia:3403 test_libaom fails with error message
    "feenableexcept() failed" on Linux arm
  * aomedia:3370 Random color block at fast motion area
  * aomedia:3393 Assertion failure in av1_convolve_2d_sr_c()
  * aomedia:3392 Strong artifacting for high bit-depth real-time
  * aomedia:3376 aomenc --threads=10 --deltaq-mode=3 crashes after
    "Allintra: multi-threading of calculating differential contrast"
  * aomedia:3380 Crashes and ASan and TSan errors in deltaq-mode=3
    multithreading code
  * chromium:1410766 heap-buffer-overflow in aom_yv12_copy_v_c
  * Cannot set level via AV1E_SET_TARGET_SEQ_LEVEL_IDX
  * Encoding failure due to the use of loop restoration with unintended use of
    lossless mode.
  * Signed integer overflow in scan_past_frames
  * Signed integer overflow in update_a_sep_sym
  * Flickering in AV1 1440p/2160p HDR transcodes
  * Fixed artifacts with screen share at encoder speed 10
  * Fixed prediction setup for IDTX
- Use system libraries instead of vendored ones
  * system-gtest.patch
  * system-yuv.patch
- Enable debuginfo also on modules written in assembly
- Enable building PowerPC-specific optimizations
- Enable Neon optimized code on ARM and fix runtime CPU detection
- Fix missing images in documentation</changelog>
  <changelog author="Bruno Pitrus &lt;brunopitrus@hotmail.com&gt;" date="1693915200">- Split docs to multibuild to avoid dependency cycle</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1701777600">- Update to version 3.7.1:
  * Bug Fixes:
  - aomedia:3349: heap overflow when increasing resolution
  - aomedia:3478: GCC 12.2.0 emits a -Wstringop-overflow warning
    on aom/av1/encoder/motion_search_facade.c
  - aomedia:3489: Detect encoder and image high bit depth
    mismatch
  - aomedia:3491: heap-buffer-overflow on frame size change
  - b/303023614:  Segfault at encoding time for high bit depth
    images
- Switch buildtime compression to zst.</changelog>
  <changelog author="Enrico Belleri &lt;kilgore.trout@idesmi.eu&gt;" date="1720267200">- Update to version 3.7.2:
  * aomedia:3520: get_cubic_kernel_dbl: Assertion `0 &lt;= x &amp;&amp; x &lt; 1'
    failed.
  * aomedia:3526: alloc_compressor_data() is called during every
    aom_codec_control() call on the encoder. Note that this partially
    reverts the fix for bug aomedia:3349.
  * b/310457427 and b/310766628: Only use rec_sse in CBR mode.</changelog>
  <changelog author="Enrico Belleri &lt;kilgore.trout@idesmi.eu&gt;" date="1724587200">- Exclude third_party from obscpio</changelog>
</package>
<package pkgid="f6a9ee634ee691e4a6b22651774516dbf1358a11cad485d22614039a16b9de151c5647fb73a852b6976c6e2f44c7e4b9086c07360a44726683e06727afa76f6d" name="aom-tools-debuginfo" arch="x86_64">
  <version epoch="0" ver="3.7.2" rel="1.0.2.1.sr20240803"/>
  <changelog author="daniel.molkentin@suse.com" date="1620648000">- Update to version 3.1.0 (bsc#1185843):
  https://aomedia.googlesource.com/aom/+/refs/tags/v3.1.0
  This release adds an "all intra" mode to the encoder, which significantly
  speeds up the encoding of AVIF still images at speed 6.
  - Upgrading:
    All intra mode for encoding AVIF still images and AV1 all intra videos:
    AOM_USAGE_ALL_INTRA (2) can be passed as the 'usage' argument to
    aom_codec_enc_config_default().
    New encoder control IDs added:
  - AV1E_SET_ENABLE_DIAGONAL_INTRA: Enable diagonal (D45 to D203) intra
    prediction modes (0: false, 1: true (default)). Also available as
    "enable-diagonal-intra" for the aom_codec_set_option() function.
    New aom_tune_metric enum value: AOM_TUNE_BUTTERAUGLI. The new aomenc option
  - -tune=butteraugli was added to optimize the encoder’s perceptual quality by
    optimizing the Butteraugli metric. Install libjxl (JPEG XL) and then pass
  - DCONFIG_TUNE_BUTTERAUGLI=1 to the cmake command to enable it.
- Includes 3.0
  https://aomedia.googlesource.com/aom/+/refs/tags/v3.0.0
  This release includes compression efficiency improvement, speed improvement
  for realtime mode, as well as some new APIs.
  - Upgrading:
    Support for PSNR calculation based on stream bit-depth.
    New encoder control IDs added:
  - AV1E_SET_ENABLE_RECT_TX
  - AV1E_SET_VBR_CORPUS_COMPLEXITY_LAP
  - AV1E_GET_BASELINE_GF_INTERVAL
  - AV1E_SET_ENABLE_DNL_DENOISING
    New decoder control IDs added:
  - AOMD_GET_FWD_KF_PRESENT
  - AOMD_GET_FRAME_FLAGS
  - AOMD_GET_ALTREF_PRESENT
  - AOMD_GET_TILE_INFO
  - AOMD_GET_SCREEN_CONTENT_TOOLS_INFO
  - AOMD_GET_STILL_PICTURE
  - AOMD_GET_SB_SIZE
  - AOMD_GET_SHOW_EXISTING_FRAME_FLAG
  - AOMD_GET_S_FRAME_INFO
    New aom_tune_content enum value: AOM_CONTENT_FILM
    New aom_tune_metric enum value: AOM_TUNE_VMAF_NEG_MAX_GAIN
    Coefficient and mode update can be turned off via
    AV1E_SET_{COEFF/MODE}_COST_UPD_FREQ.
    New key &amp; value API added, available with aom_codec_set_option() function.
    Scaling API expanded to include 1/4, 3/4 and 1/8.
  - Enhancements:
    Better multithreading performance with realtime mode.
    New speed 9 setting for faster realtime encoding.
    Smaller binary size with low bitdepth and realtime only build.
    Temporal denoiser and its optimizations on x86 and Neon.
    Optimizations for scaling.
    Faster encoding with speed settings 2 to 6 for good encoding mode.
    Improved documentation throughout the library, with function level
    documentation, tree view and support for the dot tool.
  - Bug fixes:
    Aside from those mentioned in v2.0.1 and v2.0.2, this release includes the
    following bug fixes:
    Issue 2940: Segfault when encoding with --use-16bit-internal and --limit &gt; 1
    Issue 2941: Decoder mismatch with --rt --bit-depth=10 and --cpu-used=8
    Issue 2895: mingw-w64 i686 gcc fails to build
    Issue 2874: Separate ssse3 functions from sse2 file.</changelog>
  <changelog author="Ferdinand Thiessen &lt;rpm@fthiessen.de&gt;" date="1625227200">- Update to version 3.1.1
  * Fix vmaf model initialization error when not set to tune=vmaf
  * Fix consistent crash on near-static screen content, keyframe
    related
  * Fix tune=butteraugli mode
- Disable NEON on arm where not available.</changelog>
  <changelog author="pgajdos@suse.com" date="1629892800">- Update to version 3.1.2:
  * Update AUTHORS,CHANGELOG,CMakeLists.txt for v3.1.2
  * Avoid chroma resampling for 420mpeg2 input
  * Check array has two elements before using index 1
  * Fix DecodeScalabilityTest failure in realtime only
  * Store temporal_id and spatial_id of decoded frame
  * exports.cmake: use APPLE and WIN32 and use def for mingw-w64</changelog>
  <changelog author="pgajdos@suse.com" date="1629892801">- security update
- added patches
  fix CVE-2021-30475 [bsc#1189497], Buffer overflow in aom_dsp/noise_model.c
  + libaom-CVE-2021-30475.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1631188800">- security update
- added patches
  fix CVE-2021-30474 [bsc#1186799], aom_dsp/grain_table.c in libaom in AOMedia before 2021-03-30 has a use-after-free.
  + libaom-CVE-2021-30474.patch</changelog>
  <changelog author="gmbr3@opensuse.org" date="1633694400">- Update to version 3.1.3:
  * Update CHANGELOG for v3.1.3-rc2
  * Detect chroma subsampling more directly
  * Detect chroma subsampling more directly
  * image2yuvconfig() should calculate uv_crop_width
  * aom/aom_encoder.h: remove configure option reference
  * aom_encoder.h: fix rc_overshoot_pct range
  * Update AUTHORS,CHANGELOG,CMakeLists.txt for v3.1.3
  * aom_install: don't exclude msvc from install
  * aom_install: use relpath for install
  * aom_install: Install lib dlls to bindir</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1634126400">- fix service data</changelog>
  <changelog author="bjorn.lie@gmail.com" date="1634299200">- Update to version 3.2.0:
  * This release includes compression efficiency and perceptual
    quality improvements, speedup and memory optimizations, as well
    as some new features.
  * New Features:
    + Introduced speeds 7, 8, and 9 for all intra mode.
    + Introduced speed 10 for real time mode.
    + Introduced an API that allows external partition decisions.
    + SVC: added support for compound prediction.
    + SVC: added support for fixed SVC modes.
  * Compression Efficiency Improvements:
    + Intra-mode search improvement.
    + Improved real time (RT) mode BDrate savings by ~5% (RT speed
    5) and ~12% (RT speed 6). The improvement was measured on the
    video conference set.
    + Improved real time mode for nonrd path (speed 7, 8, 9):
    BDrate gains of ~3-5%.
    + Rate control and RD adjustments based on ML research in VP9.
    Gains of ~0.5-1.0% for HD.
  * Perceptual Quality Improvements:
    + Added a new mode --deltaq-mode=3 to improve perceptual
    quality based on a differential contrast model for still
    images.
    + Added a new mode –deltaq-mode=4 to improve perceptual quality
    based on user rated cq_level data set for still images.
    + Weighting of some intra mode and partition size choices to
    better manage and retain texture.
  * Speedup and Memory Optimizations:
    + Further improved 2-pass good quality encoder speed:
    . Speed 2 speedup: 18%
    . Speed 3 speedup: 22%
    . Speed 4 speedup: 37%
    . Speed 5 speedup: 30%
    . Speed 6 speedup: 20%
    + Optimized the real time encoder (measured on the video
    conference set):
    . RT speed 5 speedup: 110%
    . RT speed 6 speedup: 77%
  * Bug Fixes
    + Issue 3069: Fix one-pass mode keyframe placement off-by-one
    error.
    + Issue 3156: Fix a bug in av1_quantize_lp AVX2 optimization.
- Drop libaom-CVE-2021-30474.patch: Fixed upstream.
- Drop libaom-CVE-2021-30475.patch: Fixed upstream.
- Remove changesgenerate option from _service file, use data from
  CHANGELOG to fill .changes instead as it it much nicer and human
  readable than just a list of commit messages.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1645185600">- Update to version 3.3.0:
  * This release includes compression efficiency and perceptual
    quality improvements, speedup and memory optimizations, some
    new features, and several bug fixes.
  * New Features
  - AV1 RT: Introducing CDEF search level 5
  - Changed real time speed 4 to behave the same as real time
    speed 5
  - Add --deltaq-strength
  - rtc: Allow scene-change and overshoot detection for svc
  - rtc: Intra-only frame for svc
  - AV1 RT: Option 2 for codec control AV1E_SET_ENABLE_CDEF to
    disable CDEF on non-ref frames
  - New codec controls AV1E_SET_LOOPFILTER_CONTROL and
    AOME_GET_LOOPFILTER_LEVEL
  - Improvements to three pass encoding
  * Compression Efficiency Improvements: Overall compression gains:
    0.6%
  * Perceptual Quality Improvements
  - Improves the perceptual quality of high QP encoding for
    delta-q mode 4
  - Auto select noise synthesis level for all intra
  * Speedup and Memory Optimizations
  - Added many SSE2 optimizations.
  - Good quality 2-pass encoder speedups:
    o Speed 2: 9%
    o Speed 3: 12.5%
    o Speed 4: 8%
    o Speed 5: 3%
    o Speed 6: 4%
  - Real time mode encoder speedups:
    o Speed 5: 2.6% BDRate gain, 4% speedup
    o Speed 6: 3.5% BDRate gain, 4% speedup
    o Speed 9: 1% BDRate gain, 3% speedup
    o Speed 10: 3% BDRate gain, neutral speedup
  - All intra encoding speedups (AVIF):
    o Single thread - speed 6: 8%
    o Single thread - speed 9: 15%
    o Multi thread(8) - speed 6: 14%
    o Multi thread(8) - speed 9: 34%
  * Bug Fixes
  - Issue 3163: Segmentation fault when using
  - -enable-keyframe-filtering=2
  - Issue 2436: Integer overflow in av1_warp_affine_c()
  - Issue 3226: armv7 build failure due to gcc-11
  - Issue 3195: Bug report on libaom (AddressSanitizer:
    heap-buffer-overflow)
  - Issue 3191: Bug report on libaom (AddressSanitizer: SEGV on
    unknown address)
- Drop libaom-devel Requires from libaom-devel-doc sub-package: We
  do not need the devel package to be able to read the devel
  documentation.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1662292800">- Update to version 3.4.0:
  * This release includes compression efficiency and perceptual
    quality improvements, speedup and memory optimizations, and
    some new features. There are no ABI or API breaking changes in
    this release.
  * New Features:
  - New --dist-metric flag with "qm-psnr" value to use
    quantization matrices in the distortion computation for RD
    search. The default value is "psnr".
  - New command line option "--auto-intra-tools-off=1" to make
    all-intra encoding faster for high bit rate under
    "--deltaq-mode=3" mode.
  - New rate control library aom_av1_rc for real-time hardware
    encoders. Supports CBR for both one spatial layer and SVC.
  - New image format AOM_IMG_FMT_NV12 can be used as input to the
    encoder. The presence of AOM_IMG_FMT_NV12 can be detected at
    compile time by checking if the macro AOM_HAVE_IMG_FMT_NV12
    is defined.
  - New codec controls for the encoder:
    o AV1E_SET_AUTO_INTRA_TOOLS_OFF. Only in effect if
  - -deltaq-mode=3.
    o AV1E_SET_RTC_EXTERNAL_RC
    o AV1E_SET_FP_MT. Only supported if libaom is built with
  - DCONFIG_FRAME_PARALLEL_ENCODE=1.
    o AV1E_GET_TARGET_SEQ_LEVEL_IDX
  - New key-value pairs for the key-value API:
    o --auto-intra-tools-off=0 (default) or 1. Only in effect if
  - -deltaq-mode=3.
    o --strict-level-conformance=0 (default) or 1
    o --fp-mt=0 (default) or 1. Only supported if libaom is built
    with -DCONFIG_FRAME_PARALLEL_ENCODE=1.
  - New aomenc options (not supported by the key-value API):
    o --nv12
  * Compression Efficiency Improvements:
  - Correctly calculate SSE for high bitdepth in skip mode, 0.2%
    to 0.6% coding gain.
  - RTC at speed 9/10: BD-rate gain of ~4/5%
  - RTC screen content coding: many improvements for real-time
    screen at speed 10 (quality, speedup, and rate control), up
    to high resolutions (1080p).
  - RTC-SVC: fixes to make intra-only frames work for spatial
    layers.
  - RTC-SVC: quality improvements for temporal layers.
  - AV1 RT: A new passive rate control strategy for screen
    content, an average of 7.5% coding gain, with some clips of
    20+%. The feature is turned off by default due to higher bit
    rate variation.
  * Perceptual Quality Improvements:
  - RTC: Visual quality improvements for high speeds (9/10)
  - Improvements in coding quality for all intra mode
  * Speedup and Memory Optimizations:
  - ~10% speedup in good quality mode encoding.
  - ~7% heap memory reduction in good quality encoding mode for
    speed 5 and 6.
  - Ongoing improvements to intra-frame encoding performance on
    Arm
  - Faster encoding speed for "--deltaq-mode=3" mode.
  - ~10% speedup for speed 5/6, ~15% speedup for speed 7/8, and
    ~10% speedup for speed 9/10 in real time encoding mode
  - ~20% heap memory reduction in still-picture encoding mode for
    360p-720p resolutions with multiple threads
  - ~13% speedup for speed 6 and ~12% speedup for speed 9 in
    still-picture encoding mode.
  - Optimizations to improve multi-thread efficiency for
    still-picture encoding mode.
  * Bug Fixes:
  - b/204460717: README.md: replace master with main
  - b/210677928: libaom disable_order is surprising for
    max_reference_frames=3
  - b/222461449: -DCONFIG_TUNE_BUTTERAUGLI=1 broken
  - b/227207606: write_greyscale writes incorrect chroma in
    highbd mode
  - b/229955363: Integer-overflow in linsolve_wiener
  - https://crbug.com/aomedia/2032
  - https://crbug.com/aomedia/2397
  - https://crbug.com/aomedia/2563
  - https://crbug.com/aomedia/2815
  - https://crbug.com/aomedia/3009
  - https://crbug.com/aomedia/3018
  - https://crbug.com/aomedia/3045
  - https://crbug.com/aomedia/3101
  - https://crbug.com/aomedia/3130
  - https://crbug.com/aomedia/3173
  - https://crbug.com/aomedia/3184
  - https://crbug.com/aomedia/3187
  - https://crbug.com/aomedia/3190
  - https://crbug.com/aomedia/3195
  - https://crbug.com/aomedia/3197
  - https://crbug.com/aomedia/3201
  - https://crbug.com/aomedia/3202
  - https://crbug.com/aomedia/3204
  - https://crbug.com/aomedia/3205
  - https://crbug.com/aomedia/3207
  - https://crbug.com/aomedia/3208
  - https://crbug.com/aomedia/3209
  - https://crbug.com/aomedia/3213
  - https://crbug.com/aomedia/3214
  - https://crbug.com/aomedia/3219
  - https://crbug.com/aomedia/3222
  - https://crbug.com/aomedia/3223
  - https://crbug.com/aomedia/3225
  - https://crbug.com/aomedia/3226
  - https://crbug.com/aomedia/3228
  - https://crbug.com/aomedia/3232
  - https://crbug.com/aomedia/3236
  - https://crbug.com/aomedia/3237
  - https://crbug.com/aomedia/3238
  - https://crbug.com/aomedia/3240
  - https://crbug.com/aomedia/3243
  - https://crbug.com/aomedia/3244
  - https://crbug.com/aomedia/3246
  - https://crbug.com/aomedia/3248
  - https://crbug.com/aomedia/3250
  - https://crbug.com/aomedia/3251
  - https://crbug.com/aomedia/3252
  - https://crbug.com/aomedia/3255
  - https://crbug.com/aomedia/3257
  - https://crbug.com/aomedia/3259
  - https://crbug.com/aomedia/3260
  - https://crbug.com/aomedia/3267
  - https://crbug.com/aomedia/3268
  - https://crbug.com/aomedia/3269
  - https://crbug.com/aomedia/3276
  - https://crbug.com/aomedia/3278
  - https://crbug.com/chromium/1290068
  - https://crbug.com/chromium/1303237
  - https://crbug.com/chromium/1304990
  - https://crbug.com/chromium/1321141
  - https://crbug.com/chromium/1321388
  - https://crbug.com/oss-fuzz/44846
  - https://crbug.com/oss-fuzz/44856
  - https://crbug.com/oss-fuzz/44862
  - https://crbug.com/oss-fuzz/44904
  - https://crbug.com/oss-fuzz/45056</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1663848000">- Update to version 3.5.0:
  * This release is ABI compatible with the last one, including
    speedup and memory optimizations, and new APIs and features.
  * New Features
  - Support for frame parallel encode for larger number of
    threads. --fp-mt flag is available for all build
    configurations.
  - New codec control AV1E_GET_NUM_OPERATING_POINTS
  * Speedup and Memory Optimizations
  - Speed-up multithreaded encoding for good quality mode for
    larger number of threads through frame parallel encoding:
    . 30-34% encode time reduction for 1080p, 16 threads, 1x1
    tile configuration (tile_rows x tile_columns)
    . 18-28% encode time reduction for 1080p, 16 threads, 2x4
    tile configuration
    . 18-20% encode time reduction for 2160p, 32 threads, 2x4
    tile configuration
  - 16-20% speed-up for speed=6 to 8 in still-picture encoding
    mode
  - 5-6% heap memory reduction for speed=6 to 10 in real-time
    encoding mode
  - Improvements to the speed for speed=7, 8 in real-time
    encoding mode
  - Improvements to the speed for speed=9, 10 in real-time screen
    encoding mode
  - Optimizations to improve multi-thread efficiency in real-time
    encoding mode
  - 10-15% speed up for SVC with temporal layers
  - SIMD optimizations:
    . Improve av1_quantize_fp_32x32_neon() 1.05x to 1.24x faster
    . Add aom_highbd_quantize_b{,_32x32,_64x64}_adaptive_neon()
    3.15x to 5.6x faster than "C"
    . Improve av1_quantize_fp_64x64_neon() 1.17x to 1.66x faster
    . Add aom_quantize_b_avx2() 1.4x to 1.7x faster than
    aom_quantize_b_avx()
    . Add aom_quantize_b_32x32_avx2() 1.4x to 2.3x faster than
    aom_quantize_b_32x32_avx()
    . Add aom_quantize_b_64x64_avx2() 2.0x to 2.4x faster than
    aom_quantize_b_64x64_ssse3()
    . Add aom_highbd_quantize_b_32x32_avx2() 9.0x to 10.5x faster
    than aom_highbd_quantize_b_32x32_c()
    . Add aom_highbd_quantize_b_64x64_avx2() 7.3x to 9.7x faster
    than aom_highbd_quantize_b_64x64_c()
    . Improve aom_highbd_quantize_b_avx2() 1.07x to 1.20x faster
    . Improve av1_quantize_fp_avx2() 1.13x to 1.49x faster
    . Improve av1_quantize_fp_32x32_avx2() 1.07x to 1.54x faster
    . Improve av1_quantize_fp_64x64_avx2()  1.03x to 1.25x faster
    . Improve av1_quantize_lp_avx2() 1.07x to 1.16x faster
  * Bug fixes including but not limited to
  - aomedia:3206 Assert that skip_width &gt; 0 for deconvolve
    function
  - aomedia:3278 row_mt enc: Delay top-right sync when intraBC is
    enabled
  - aomedia:3282 blend_a64_*_neon: fix bus error in armv7
  - aomedia:3283 FRAME_PARALLEL: Propagate border size to all
    cpis
  - aomedia:3283 RESIZE_MODE: Fix incorrect strides being used
    for motion search
  - aomedia:3286 rtc-svc: Fix to dynamic_enable spatial layers
  - aomedia:3289 rtc-screen: Fix to skipping inter-mode test in
    nonrd
  - aomedia:3289 rtc-screen: Fix for skip newmv on flat blocks
  - aomedia:3299 Fix build failure with CONFIG_TUNE_VMAF=1
  - aomedia:3296 Fix the conflict --enable-tx-size-search=0 with
    nonrd mode --enable-tx-size-search will be ignored in non-rd
    pick mode
  - aomedia:3304 Fix off-by-one error of max w/h in
    validate_config
  - aomedia:3306 Do not use pthread_setname_np on GNU/Hurd
  - aomedia:3325 row-multithreading produces invalid bitstream in
    some cases
  - chromium:1346938, chromium:1338114
  - compiler_flags.cmake: fix flag detection w/cmake 3.17-3.18.2
  - tools/*.py: update to python3
  - aom_configure.cmake: detect PIE and set CONFIG_PIC
  - test/simd_cmp_impl: use explicit types w/CompareSimd*
  - rtc: Fix to disable segm for aq-mode=3
  - rtc: Fix to color_sensitivity in variance partition
  - rtc-screen: Fix bsize in model rd computation for intra
    chroma
  - Fixes to ensure the correct behavior of the encoder
    algorithms (like segmentation, computation of statistics,
    etc.)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1675857600">- Update to version 3.6.0:
  * This release includes compression efficiency and perceptual
    quality improvements, speedup and memory optimizations, and
    some new features. This release is ABI compatible with the last
    release.
  * New Features:
  - New values 20-27 (corresponding to levels 7.0-7.3 and
    8.0-8.3) for the encoder control
    AV1E_SET_TARGET_SEQ_LEVEL_IDX (note that the proposal to add
    the new levels are still in draft status). The original
    special value 24 (keep level stats only for level monitoring)
    is renumbered as 32.
  - New encoder control AV1E_SET_SKIP_POSTPROC_FILTERING to skip
    the application of post-processing filters on reconstructed
    frame in all intra mode.
  - New encoder option "kf-max-pyr-height": Maximum height of
    pyramid structure used for the GOP starting with a key frame
    (-1 to 5).
  - Make SVC work for screen content.
  - Rate control improvements to reduce frame-size spikes for
    screen content coding.
  - RISC-V architecture support with gcc toolchain.
  * Compression Efficiency Improvements:
  - Peak compression efficiency in VOD setting is improved by 1%.
  - 0.7% - 2.2% RTC encoding BDrate gains for real time speed 8
    to 10.
  - 15% RTC encoding BDrate gains for screen content speed 10.
  * Perceptual Quality Improvements:
  - Resolved a visual quality issue that was reported for high
    resolution clips (2K) for speed 4 and above in VOD use case.
  - Visual quality improvements to screen content coding.
  - Quality improvements to temporal layer RTC coding.
  * Speedup and Memory Optimizations:
  - RTC single-thread encoder speedup:
    . ~6% instruction count reduction for speed 5 and 6.
    . ~15% instruction count reduction for speed 7.
    . ~10% instruction count reduction for speed 8 to 10 (&gt;=360p
    resolutions).
  - RTC multi-thread encoder speedup (beyond single-thread
    speedup):
    . 5-8% encode time reduction for speed 7 to 10.
  - RTC screen-content encoder speedup:
    . 11% instruction count reduction for speed 9 and 10 (&gt;=720p
    resolutions).
  - ~5% reduction in heap memory requirements for RTC, speed 6 to
    10.
  * AVIF:
    . 4-5% speedup for speed 9 in still-picture encoding mode.
    . 3-4% heap memory reduction in still-picture encoding mode
    for 360p-720p resolutions with multiple threads.
  * Bug Fixes:
  - Added a workaround for an AV1 specification bug which makes
    TRANSLATION type global motion models unusable.
  - Fixed AddressSanitizer global-buffer-overflow errors in
    av1/encoder/arm/neon/av1_fwd_txfm2d_neon.c.
  - Fixed AddressSanitizer heap-buffer-overflow error in
    av1_wiener_convolve_add_src_neon().
  - chromium:1393384 Avoid scene detection on spatial resize.
  - aomedia:3308 Remove color artifacts under high motion.
  - aomedia:3310 Avoid out of memory failures with Visual Studio
    2017, 2019, and 2022 for Win32 x86 builds.
  - aomedia:3346 Make SVC work properly for screen content.
  - aomedia:3348 Fix a bug where an uninitialized search_site is
    used.
  - aomedia:3365 Work around what seems like a Visual Studio 2022
    compiler optimization bug.
  - aomedia:3369 Incorrect PSNR values reported by libaom for
    12-bit encode.
- Modernize spec, use cmake_build and ldconfig_scriptlets macros.</changelog>
  <changelog author="Frederic Crozat &lt;fcrozat@suse.com&gt;" date="1681992000">- Fix license tag to BSD-2-Clause and AOMPL-1.0.</changelog>
  <changelog author="Frederic Crozat &lt;fcrozat@suse.com&gt;" date="1683028800">- Revert to BSD-2-Clause licence tag to only use SPDX valid
  license tag.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1683720000">- Update to version 3.6.1:
  * aomedia:2871: Guard the support of the 7.x and 8.x levels for
    AV1 under the CONFIG_CWG_C013 config flag, and only output the
    7.x and 8.x levels when explicitly requested.
  * aomedia:3382: Choose sb_size by ppi instead of svc.
  * aomedia:3384: Fix fullpel search limits.
  * aomedia:3388: Replace left shift of xq_active by
    multiplication.
  * aomedia:3389: Fix MV clamping in av1_mv_pred.
  * aomedia:3390: set_ld_layer_depth: cap max_layer_depth to
    MAX_ARF_LAYERS.
  * aomedia:3418: Fix MV clamping in av1_int_pro_motion_estimation.
  * aomedia:3429: Move lpf thread data init to
    lpf_pipeline_mt_init().
  * b:266719111: Fix undefined behavior in Arm Neon code.
  * b:269840681: nonrd_opt: align scan tables.
  * rtc: Fix is_key_frame setting in variance partition.
  * Build: Fix build with clang-cl and Visual Studio.</changelog>
  <changelog author="Bruno Pitrus &lt;brunopitrus@hotmail.com&gt;" date="1693569600">- New upstream release 3.7.0
  - New Features
  * New codec controls:
  * AV1E_SET_QUANTIZER_ONE_PASS: Set quantizer for each frame.
  * AV1E_ENABLE_RATE_GUIDE_DELTAQ: enable the rate distribution guided delta
    quantization in all intra mode. The "enable-rate-guide-deltaq" option is
    added for this control.
  * AV1E_SET_RATE_DISTRIBUTION_INFO: set the input file for rate
    distribution used in all intra mode. The "rate-distribution-info" option
    is added for this control.
  * AV1E_GET_LUMA_CDEF_STRENGTH
  * AV1E_SET_BITRATE_ONE_PASS_CBR
  * AOM_SCALING_MODE is extended to include 2/3 and 1/3 scaling.
  * aom_tune_metric is extended to include AOM_TUNE_VMAF_SALIENCY_MAP.
    The "tune" option is extended to include "vmaf_saliency_map".
  * SVC example encoder svc_encoder_rtc is able to use the rate control
    library.
  * Loopfilter level and CDEF filter level is supported by RTC rate control
    library.
  * New speed (--cpu-used) 11, intended for RTC screen sharing, added for
    faster encoding with ~3% bdrate loss with 16% IC (instruction count)
    speedup compared to speed 10.
  - Compression Efficiency Improvements
  * Improved VoD encoding performance
  * 0.1-0.6% BDrate gains for encoding speeds 2 to 6
  * Rate control accuracy improvement in VBR mode
  * RTC encoding improvements
  * Screen content mode: 10-19% BDrate gains for speeds 6 - 10
  * Temporal layers video mode, for speed 10:
  * 2 temporal layers on low resolutions: 13-15% BDrate gain
  * 3 temporal layers on VGA/HD: 3-4% BDrate gain
  - Perceptual Quality Improvements
  * Fixed multiple block and color artifacts for RTC screen content by
  * Incorporating color into RD cost for IDTX
  * Reducing thresholds for palette mode in non RD mode
  * Allowing more palette mode testing
  * Improved color sensitivity for altref in non-RD mode.
  * Reduced video flickering for temporal layer encoding.
  - Speedup and Memory Optimizations
  * Speed up the VoD encoder
  * 2-5% for encoding speed 2 to 4
  * 9-15% for encoding speed 5 to 6
  * ARM
  * Standard bitdepth
  * speed 5: +31%
  * speed 4: +2%
  * speed 3: +9%
  * speed 2: +157%
  * High bitdepth
  * speed 5: +85%
  * RTC speedups
  * Screen content mode
  * 15% IC speedup for speeds 6-8
  * ARM: 7% for speed 9, 3% for speed 10
  * Temporal layers video mode
  * 7% speedup for 3 temporal layers on VGA/HD, for speed 10
  * Single layer video
  * x86: 2% IC speedup for speeds 7-10
  * ARM: 2-4% speedup across speeds 5-10
  - Bug Fixes
  * aomedia:3261 Assertion failed when encoding av1 with film grain and
    '--monochrome' flag
  * aomedia:3276 ensure all allocations are checked (partial fix)
  * aomedia:3451 The libaom library calls exit()
  * aomedia:3450 enable -Wshadow for C++ sources
  * aomedia:3449 Test Seg Faults After
    b459af3e345be402db052a143fcc5383d4b74cbd
  * aomedia:3416 prune unused symbols / restrict symbol visibility
  * aomedia:3443 Jenkins failure:
    UninstantiatedParameterizedTestSuite&lt;EstimateNoiseTest&gt;
  * aomedia:3434 realtime failures with CONFIG_BITSTREAM_DEBUG=1
  * aomedia:3433 DeltaqModeTest crash w/row_mt=0
  * aomedia:3429 Encoder crash when turn on both ExternalResize and
    g_threads &gt; 2
  * aomedia:3438 Build failure with
    `-DSANITIZE=address -DBUILD_SHARED_LIBS=ON` when using clang.
  * aomedia:3435 Block artifacts when scrolling with AV1 in screen sharing
    scenarios
  * aomedia:3170 vmaf tune presets produce extreme glitches in one scene
  * aomedia:3401 Building shared libaom with MSVC results in a race condition
    with the export library
  * aomedia:3420 Floating point exception in av1_tpl_get_frame_importance()
  * aomedia:3424 heap-buffer-overflow in ScaleFilterCols_16_C() (SIGABRT)
  * aomedia:3417 examples/svc_encoder_rtc.c is using internal macros and
    functions
  * aomedia:3372 SEGV in assign_frame_buffer_p av1_common_int.h
  * aomedia:3130 'cpu-features.h' file not found on Android NDK 22
  * aomedia:3415 Encoder/decoder mismatch for svc_encoder_rtc running
    1 SL 3 TL
  * aomedia:3412 Lossless Mode Fails Loopback Bit Test
  * aomedia:3409 The use of AV1_VAR_OFFS in av1/encoder/var_based_part.c is
    incorrect for high bit depths
  * aomedia:3403 test_libaom fails with error message
    "feenableexcept() failed" on Linux arm
  * aomedia:3370 Random color block at fast motion area
  * aomedia:3393 Assertion failure in av1_convolve_2d_sr_c()
  * aomedia:3392 Strong artifacting for high bit-depth real-time
  * aomedia:3376 aomenc --threads=10 --deltaq-mode=3 crashes after
    "Allintra: multi-threading of calculating differential contrast"
  * aomedia:3380 Crashes and ASan and TSan errors in deltaq-mode=3
    multithreading code
  * chromium:1410766 heap-buffer-overflow in aom_yv12_copy_v_c
  * Cannot set level via AV1E_SET_TARGET_SEQ_LEVEL_IDX
  * Encoding failure due to the use of loop restoration with unintended use of
    lossless mode.
  * Signed integer overflow in scan_past_frames
  * Signed integer overflow in update_a_sep_sym
  * Flickering in AV1 1440p/2160p HDR transcodes
  * Fixed artifacts with screen share at encoder speed 10
  * Fixed prediction setup for IDTX
- Use system libraries instead of vendored ones
  * system-gtest.patch
  * system-yuv.patch
- Enable debuginfo also on modules written in assembly
- Enable building PowerPC-specific optimizations
- Enable Neon optimized code on ARM and fix runtime CPU detection
- Fix missing images in documentation</changelog>
  <changelog author="Bruno Pitrus &lt;brunopitrus@hotmail.com&gt;" date="1693915200">- Split docs to multibuild to avoid dependency cycle</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1701777600">- Update to version 3.7.1:
  * Bug Fixes:
  - aomedia:3349: heap overflow when increasing resolution
  - aomedia:3478: GCC 12.2.0 emits a -Wstringop-overflow warning
    on aom/av1/encoder/motion_search_facade.c
  - aomedia:3489: Detect encoder and image high bit depth
    mismatch
  - aomedia:3491: heap-buffer-overflow on frame size change
  - b/303023614:  Segfault at encoding time for high bit depth
    images
- Switch buildtime compression to zst.</changelog>
  <changelog author="Enrico Belleri &lt;kilgore.trout@idesmi.eu&gt;" date="1720267200">- Update to version 3.7.2:
  * aomedia:3520: get_cubic_kernel_dbl: Assertion `0 &lt;= x &amp;&amp; x &lt; 1'
    failed.
  * aomedia:3526: alloc_compressor_data() is called during every
    aom_codec_control() call on the encoder. Note that this partially
    reverts the fix for bug aomedia:3349.
  * b/310457427 and b/310766628: Only use rec_sse in CBR mode.</changelog>
  <changelog author="Enrico Belleri &lt;kilgore.trout@idesmi.eu&gt;" date="1724587200">- Exclude third_party from obscpio</changelog>
</package>
<package pkgid="d3ab682da212ad28b52e7a88b762e1f581ca2fb76fde5e7e698ffe7d6da987ac0a6d63bd4678af8bff089f7cb33077666c9f11589d1b03191b884afef21d4197" name="aom-tools-debuginfo" arch="i586">
  <version epoch="0" ver="3.7.2" rel="1.1"/>
  <changelog author="daniel.molkentin@suse.com" date="1620648000">- Update to version 3.1.0 (bsc#1185843):
  https://aomedia.googlesource.com/aom/+/refs/tags/v3.1.0
  This release adds an "all intra" mode to the encoder, which significantly
  speeds up the encoding of AVIF still images at speed 6.
  - Upgrading:
    All intra mode for encoding AVIF still images and AV1 all intra videos:
    AOM_USAGE_ALL_INTRA (2) can be passed as the 'usage' argument to
    aom_codec_enc_config_default().
    New encoder control IDs added:
  - AV1E_SET_ENABLE_DIAGONAL_INTRA: Enable diagonal (D45 to D203) intra
    prediction modes (0: false, 1: true (default)). Also available as
    "enable-diagonal-intra" for the aom_codec_set_option() function.
    New aom_tune_metric enum value: AOM_TUNE_BUTTERAUGLI. The new aomenc option
  - -tune=butteraugli was added to optimize the encoder’s perceptual quality by
    optimizing the Butteraugli metric. Install libjxl (JPEG XL) and then pass
  - DCONFIG_TUNE_BUTTERAUGLI=1 to the cmake command to enable it.
- Includes 3.0
  https://aomedia.googlesource.com/aom/+/refs/tags/v3.0.0
  This release includes compression efficiency improvement, speed improvement
  for realtime mode, as well as some new APIs.
  - Upgrading:
    Support for PSNR calculation based on stream bit-depth.
    New encoder control IDs added:
  - AV1E_SET_ENABLE_RECT_TX
  - AV1E_SET_VBR_CORPUS_COMPLEXITY_LAP
  - AV1E_GET_BASELINE_GF_INTERVAL
  - AV1E_SET_ENABLE_DNL_DENOISING
    New decoder control IDs added:
  - AOMD_GET_FWD_KF_PRESENT
  - AOMD_GET_FRAME_FLAGS
  - AOMD_GET_ALTREF_PRESENT
  - AOMD_GET_TILE_INFO
  - AOMD_GET_SCREEN_CONTENT_TOOLS_INFO
  - AOMD_GET_STILL_PICTURE
  - AOMD_GET_SB_SIZE
  - AOMD_GET_SHOW_EXISTING_FRAME_FLAG
  - AOMD_GET_S_FRAME_INFO
    New aom_tune_content enum value: AOM_CONTENT_FILM
    New aom_tune_metric enum value: AOM_TUNE_VMAF_NEG_MAX_GAIN
    Coefficient and mode update can be turned off via
    AV1E_SET_{COEFF/MODE}_COST_UPD_FREQ.
    New key &amp; value API added, available with aom_codec_set_option() function.
    Scaling API expanded to include 1/4, 3/4 and 1/8.
  - Enhancements:
    Better multithreading performance with realtime mode.
    New speed 9 setting for faster realtime encoding.
    Smaller binary size with low bitdepth and realtime only build.
    Temporal denoiser and its optimizations on x86 and Neon.
    Optimizations for scaling.
    Faster encoding with speed settings 2 to 6 for good encoding mode.
    Improved documentation throughout the library, with function level
    documentation, tree view and support for the dot tool.
  - Bug fixes:
    Aside from those mentioned in v2.0.1 and v2.0.2, this release includes the
    following bug fixes:
    Issue 2940: Segfault when encoding with --use-16bit-internal and --limit &gt; 1
    Issue 2941: Decoder mismatch with --rt --bit-depth=10 and --cpu-used=8
    Issue 2895: mingw-w64 i686 gcc fails to build
    Issue 2874: Separate ssse3 functions from sse2 file.</changelog>
  <changelog author="Ferdinand Thiessen &lt;rpm@fthiessen.de&gt;" date="1625227200">- Update to version 3.1.1
  * Fix vmaf model initialization error when not set to tune=vmaf
  * Fix consistent crash on near-static screen content, keyframe
    related
  * Fix tune=butteraugli mode
- Disable NEON on arm where not available.</changelog>
  <changelog author="pgajdos@suse.com" date="1629892800">- Update to version 3.1.2:
  * Update AUTHORS,CHANGELOG,CMakeLists.txt for v3.1.2
  * Avoid chroma resampling for 420mpeg2 input
  * Check array has two elements before using index 1
  * Fix DecodeScalabilityTest failure in realtime only
  * Store temporal_id and spatial_id of decoded frame
  * exports.cmake: use APPLE and WIN32 and use def for mingw-w64</changelog>
  <changelog author="pgajdos@suse.com" date="1629892801">- security update
- added patches
  fix CVE-2021-30475 [bsc#1189497], Buffer overflow in aom_dsp/noise_model.c
  + libaom-CVE-2021-30475.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1631188800">- security update
- added patches
  fix CVE-2021-30474 [bsc#1186799], aom_dsp/grain_table.c in libaom in AOMedia before 2021-03-30 has a use-after-free.
  + libaom-CVE-2021-30474.patch</changelog>
  <changelog author="gmbr3@opensuse.org" date="1633694400">- Update to version 3.1.3:
  * Update CHANGELOG for v3.1.3-rc2
  * Detect chroma subsampling more directly
  * Detect chroma subsampling more directly
  * image2yuvconfig() should calculate uv_crop_width
  * aom/aom_encoder.h: remove configure option reference
  * aom_encoder.h: fix rc_overshoot_pct range
  * Update AUTHORS,CHANGELOG,CMakeLists.txt for v3.1.3
  * aom_install: don't exclude msvc from install
  * aom_install: use relpath for install
  * aom_install: Install lib dlls to bindir</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1634126400">- fix service data</changelog>
  <changelog author="bjorn.lie@gmail.com" date="1634299200">- Update to version 3.2.0:
  * This release includes compression efficiency and perceptual
    quality improvements, speedup and memory optimizations, as well
    as some new features.
  * New Features:
    + Introduced speeds 7, 8, and 9 for all intra mode.
    + Introduced speed 10 for real time mode.
    + Introduced an API that allows external partition decisions.
    + SVC: added support for compound prediction.
    + SVC: added support for fixed SVC modes.
  * Compression Efficiency Improvements:
    + Intra-mode search improvement.
    + Improved real time (RT) mode BDrate savings by ~5% (RT speed
    5) and ~12% (RT speed 6). The improvement was measured on the
    video conference set.
    + Improved real time mode for nonrd path (speed 7, 8, 9):
    BDrate gains of ~3-5%.
    + Rate control and RD adjustments based on ML research in VP9.
    Gains of ~0.5-1.0% for HD.
  * Perceptual Quality Improvements:
    + Added a new mode --deltaq-mode=3 to improve perceptual
    quality based on a differential contrast model for still
    images.
    + Added a new mode –deltaq-mode=4 to improve perceptual quality
    based on user rated cq_level data set for still images.
    + Weighting of some intra mode and partition size choices to
    better manage and retain texture.
  * Speedup and Memory Optimizations:
    + Further improved 2-pass good quality encoder speed:
    . Speed 2 speedup: 18%
    . Speed 3 speedup: 22%
    . Speed 4 speedup: 37%
    . Speed 5 speedup: 30%
    . Speed 6 speedup: 20%
    + Optimized the real time encoder (measured on the video
    conference set):
    . RT speed 5 speedup: 110%
    . RT speed 6 speedup: 77%
  * Bug Fixes
    + Issue 3069: Fix one-pass mode keyframe placement off-by-one
    error.
    + Issue 3156: Fix a bug in av1_quantize_lp AVX2 optimization.
- Drop libaom-CVE-2021-30474.patch: Fixed upstream.
- Drop libaom-CVE-2021-30475.patch: Fixed upstream.
- Remove changesgenerate option from _service file, use data from
  CHANGELOG to fill .changes instead as it it much nicer and human
  readable than just a list of commit messages.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1645185600">- Update to version 3.3.0:
  * This release includes compression efficiency and perceptual
    quality improvements, speedup and memory optimizations, some
    new features, and several bug fixes.
  * New Features
  - AV1 RT: Introducing CDEF search level 5
  - Changed real time speed 4 to behave the same as real time
    speed 5
  - Add --deltaq-strength
  - rtc: Allow scene-change and overshoot detection for svc
  - rtc: Intra-only frame for svc
  - AV1 RT: Option 2 for codec control AV1E_SET_ENABLE_CDEF to
    disable CDEF on non-ref frames
  - New codec controls AV1E_SET_LOOPFILTER_CONTROL and
    AOME_GET_LOOPFILTER_LEVEL
  - Improvements to three pass encoding
  * Compression Efficiency Improvements: Overall compression gains:
    0.6%
  * Perceptual Quality Improvements
  - Improves the perceptual quality of high QP encoding for
    delta-q mode 4
  - Auto select noise synthesis level for all intra
  * Speedup and Memory Optimizations
  - Added many SSE2 optimizations.
  - Good quality 2-pass encoder speedups:
    o Speed 2: 9%
    o Speed 3: 12.5%
    o Speed 4: 8%
    o Speed 5: 3%
    o Speed 6: 4%
  - Real time mode encoder speedups:
    o Speed 5: 2.6% BDRate gain, 4% speedup
    o Speed 6: 3.5% BDRate gain, 4% speedup
    o Speed 9: 1% BDRate gain, 3% speedup
    o Speed 10: 3% BDRate gain, neutral speedup
  - All intra encoding speedups (AVIF):
    o Single thread - speed 6: 8%
    o Single thread - speed 9: 15%
    o Multi thread(8) - speed 6: 14%
    o Multi thread(8) - speed 9: 34%
  * Bug Fixes
  - Issue 3163: Segmentation fault when using
  - -enable-keyframe-filtering=2
  - Issue 2436: Integer overflow in av1_warp_affine_c()
  - Issue 3226: armv7 build failure due to gcc-11
  - Issue 3195: Bug report on libaom (AddressSanitizer:
    heap-buffer-overflow)
  - Issue 3191: Bug report on libaom (AddressSanitizer: SEGV on
    unknown address)
- Drop libaom-devel Requires from libaom-devel-doc sub-package: We
  do not need the devel package to be able to read the devel
  documentation.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1662292800">- Update to version 3.4.0:
  * This release includes compression efficiency and perceptual
    quality improvements, speedup and memory optimizations, and
    some new features. There are no ABI or API breaking changes in
    this release.
  * New Features:
  - New --dist-metric flag with "qm-psnr" value to use
    quantization matrices in the distortion computation for RD
    search. The default value is "psnr".
  - New command line option "--auto-intra-tools-off=1" to make
    all-intra encoding faster for high bit rate under
    "--deltaq-mode=3" mode.
  - New rate control library aom_av1_rc for real-time hardware
    encoders. Supports CBR for both one spatial layer and SVC.
  - New image format AOM_IMG_FMT_NV12 can be used as input to the
    encoder. The presence of AOM_IMG_FMT_NV12 can be detected at
    compile time by checking if the macro AOM_HAVE_IMG_FMT_NV12
    is defined.
  - New codec controls for the encoder:
    o AV1E_SET_AUTO_INTRA_TOOLS_OFF. Only in effect if
  - -deltaq-mode=3.
    o AV1E_SET_RTC_EXTERNAL_RC
    o AV1E_SET_FP_MT. Only supported if libaom is built with
  - DCONFIG_FRAME_PARALLEL_ENCODE=1.
    o AV1E_GET_TARGET_SEQ_LEVEL_IDX
  - New key-value pairs for the key-value API:
    o --auto-intra-tools-off=0 (default) or 1. Only in effect if
  - -deltaq-mode=3.
    o --strict-level-conformance=0 (default) or 1
    o --fp-mt=0 (default) or 1. Only supported if libaom is built
    with -DCONFIG_FRAME_PARALLEL_ENCODE=1.
  - New aomenc options (not supported by the key-value API):
    o --nv12
  * Compression Efficiency Improvements:
  - Correctly calculate SSE for high bitdepth in skip mode, 0.2%
    to 0.6% coding gain.
  - RTC at speed 9/10: BD-rate gain of ~4/5%
  - RTC screen content coding: many improvements for real-time
    screen at speed 10 (quality, speedup, and rate control), up
    to high resolutions (1080p).
  - RTC-SVC: fixes to make intra-only frames work for spatial
    layers.
  - RTC-SVC: quality improvements for temporal layers.
  - AV1 RT: A new passive rate control strategy for screen
    content, an average of 7.5% coding gain, with some clips of
    20+%. The feature is turned off by default due to higher bit
    rate variation.
  * Perceptual Quality Improvements:
  - RTC: Visual quality improvements for high speeds (9/10)
  - Improvements in coding quality for all intra mode
  * Speedup and Memory Optimizations:
  - ~10% speedup in good quality mode encoding.
  - ~7% heap memory reduction in good quality encoding mode for
    speed 5 and 6.
  - Ongoing improvements to intra-frame encoding performance on
    Arm
  - Faster encoding speed for "--deltaq-mode=3" mode.
  - ~10% speedup for speed 5/6, ~15% speedup for speed 7/8, and
    ~10% speedup for speed 9/10 in real time encoding mode
  - ~20% heap memory reduction in still-picture encoding mode for
    360p-720p resolutions with multiple threads
  - ~13% speedup for speed 6 and ~12% speedup for speed 9 in
    still-picture encoding mode.
  - Optimizations to improve multi-thread efficiency for
    still-picture encoding mode.
  * Bug Fixes:
  - b/204460717: README.md: replace master with main
  - b/210677928: libaom disable_order is surprising for
    max_reference_frames=3
  - b/222461449: -DCONFIG_TUNE_BUTTERAUGLI=1 broken
  - b/227207606: write_greyscale writes incorrect chroma in
    highbd mode
  - b/229955363: Integer-overflow in linsolve_wiener
  - https://crbug.com/aomedia/2032
  - https://crbug.com/aomedia/2397
  - https://crbug.com/aomedia/2563
  - https://crbug.com/aomedia/2815
  - https://crbug.com/aomedia/3009
  - https://crbug.com/aomedia/3018
  - https://crbug.com/aomedia/3045
  - https://crbug.com/aomedia/3101
  - https://crbug.com/aomedia/3130
  - https://crbug.com/aomedia/3173
  - https://crbug.com/aomedia/3184
  - https://crbug.com/aomedia/3187
  - https://crbug.com/aomedia/3190
  - https://crbug.com/aomedia/3195
  - https://crbug.com/aomedia/3197
  - https://crbug.com/aomedia/3201
  - https://crbug.com/aomedia/3202
  - https://crbug.com/aomedia/3204
  - https://crbug.com/aomedia/3205
  - https://crbug.com/aomedia/3207
  - https://crbug.com/aomedia/3208
  - https://crbug.com/aomedia/3209
  - https://crbug.com/aomedia/3213
  - https://crbug.com/aomedia/3214
  - https://crbug.com/aomedia/3219
  - https://crbug.com/aomedia/3222
  - https://crbug.com/aomedia/3223
  - https://crbug.com/aomedia/3225
  - https://crbug.com/aomedia/3226
  - https://crbug.com/aomedia/3228
  - https://crbug.com/aomedia/3232
  - https://crbug.com/aomedia/3236
  - https://crbug.com/aomedia/3237
  - https://crbug.com/aomedia/3238
  - https://crbug.com/aomedia/3240
  - https://crbug.com/aomedia/3243
  - https://crbug.com/aomedia/3244
  - https://crbug.com/aomedia/3246
  - https://crbug.com/aomedia/3248
  - https://crbug.com/aomedia/3250
  - https://crbug.com/aomedia/3251
  - https://crbug.com/aomedia/3252
  - https://crbug.com/aomedia/3255
  - https://crbug.com/aomedia/3257
  - https://crbug.com/aomedia/3259
  - https://crbug.com/aomedia/3260
  - https://crbug.com/aomedia/3267
  - https://crbug.com/aomedia/3268
  - https://crbug.com/aomedia/3269
  - https://crbug.com/aomedia/3276
  - https://crbug.com/aomedia/3278
  - https://crbug.com/chromium/1290068
  - https://crbug.com/chromium/1303237
  - https://crbug.com/chromium/1304990
  - https://crbug.com/chromium/1321141
  - https://crbug.com/chromium/1321388
  - https://crbug.com/oss-fuzz/44846
  - https://crbug.com/oss-fuzz/44856
  - https://crbug.com/oss-fuzz/44862
  - https://crbug.com/oss-fuzz/44904
  - https://crbug.com/oss-fuzz/45056</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1663848000">- Update to version 3.5.0:
  * This release is ABI compatible with the last one, including
    speedup and memory optimizations, and new APIs and features.
  * New Features
  - Support for frame parallel encode for larger number of
    threads. --fp-mt flag is available for all build
    configurations.
  - New codec control AV1E_GET_NUM_OPERATING_POINTS
  * Speedup and Memory Optimizations
  - Speed-up multithreaded encoding for good quality mode for
    larger number of threads through frame parallel encoding:
    . 30-34% encode time reduction for 1080p, 16 threads, 1x1
    tile configuration (tile_rows x tile_columns)
    . 18-28% encode time reduction for 1080p, 16 threads, 2x4
    tile configuration
    . 18-20% encode time reduction for 2160p, 32 threads, 2x4
    tile configuration
  - 16-20% speed-up for speed=6 to 8 in still-picture encoding
    mode
  - 5-6% heap memory reduction for speed=6 to 10 in real-time
    encoding mode
  - Improvements to the speed for speed=7, 8 in real-time
    encoding mode
  - Improvements to the speed for speed=9, 10 in real-time screen
    encoding mode
  - Optimizations to improve multi-thread efficiency in real-time
    encoding mode
  - 10-15% speed up for SVC with temporal layers
  - SIMD optimizations:
    . Improve av1_quantize_fp_32x32_neon() 1.05x to 1.24x faster
    . Add aom_highbd_quantize_b{,_32x32,_64x64}_adaptive_neon()
    3.15x to 5.6x faster than "C"
    . Improve av1_quantize_fp_64x64_neon() 1.17x to 1.66x faster
    . Add aom_quantize_b_avx2() 1.4x to 1.7x faster than
    aom_quantize_b_avx()
    . Add aom_quantize_b_32x32_avx2() 1.4x to 2.3x faster than
    aom_quantize_b_32x32_avx()
    . Add aom_quantize_b_64x64_avx2() 2.0x to 2.4x faster than
    aom_quantize_b_64x64_ssse3()
    . Add aom_highbd_quantize_b_32x32_avx2() 9.0x to 10.5x faster
    than aom_highbd_quantize_b_32x32_c()
    . Add aom_highbd_quantize_b_64x64_avx2() 7.3x to 9.7x faster
    than aom_highbd_quantize_b_64x64_c()
    . Improve aom_highbd_quantize_b_avx2() 1.07x to 1.20x faster
    . Improve av1_quantize_fp_avx2() 1.13x to 1.49x faster
    . Improve av1_quantize_fp_32x32_avx2() 1.07x to 1.54x faster
    . Improve av1_quantize_fp_64x64_avx2()  1.03x to 1.25x faster
    . Improve av1_quantize_lp_avx2() 1.07x to 1.16x faster
  * Bug fixes including but not limited to
  - aomedia:3206 Assert that skip_width &gt; 0 for deconvolve
    function
  - aomedia:3278 row_mt enc: Delay top-right sync when intraBC is
    enabled
  - aomedia:3282 blend_a64_*_neon: fix bus error in armv7
  - aomedia:3283 FRAME_PARALLEL: Propagate border size to all
    cpis
  - aomedia:3283 RESIZE_MODE: Fix incorrect strides being used
    for motion search
  - aomedia:3286 rtc-svc: Fix to dynamic_enable spatial layers
  - aomedia:3289 rtc-screen: Fix to skipping inter-mode test in
    nonrd
  - aomedia:3289 rtc-screen: Fix for skip newmv on flat blocks
  - aomedia:3299 Fix build failure with CONFIG_TUNE_VMAF=1
  - aomedia:3296 Fix the conflict --enable-tx-size-search=0 with
    nonrd mode --enable-tx-size-search will be ignored in non-rd
    pick mode
  - aomedia:3304 Fix off-by-one error of max w/h in
    validate_config
  - aomedia:3306 Do not use pthread_setname_np on GNU/Hurd
  - aomedia:3325 row-multithreading produces invalid bitstream in
    some cases
  - chromium:1346938, chromium:1338114
  - compiler_flags.cmake: fix flag detection w/cmake 3.17-3.18.2
  - tools/*.py: update to python3
  - aom_configure.cmake: detect PIE and set CONFIG_PIC
  - test/simd_cmp_impl: use explicit types w/CompareSimd*
  - rtc: Fix to disable segm for aq-mode=3
  - rtc: Fix to color_sensitivity in variance partition
  - rtc-screen: Fix bsize in model rd computation for intra
    chroma
  - Fixes to ensure the correct behavior of the encoder
    algorithms (like segmentation, computation of statistics,
    etc.)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1675857600">- Update to version 3.6.0:
  * This release includes compression efficiency and perceptual
    quality improvements, speedup and memory optimizations, and
    some new features. This release is ABI compatible with the last
    release.
  * New Features:
  - New values 20-27 (corresponding to levels 7.0-7.3 and
    8.0-8.3) for the encoder control
    AV1E_SET_TARGET_SEQ_LEVEL_IDX (note that the proposal to add
    the new levels are still in draft status). The original
    special value 24 (keep level stats only for level monitoring)
    is renumbered as 32.
  - New encoder control AV1E_SET_SKIP_POSTPROC_FILTERING to skip
    the application of post-processing filters on reconstructed
    frame in all intra mode.
  - New encoder option "kf-max-pyr-height": Maximum height of
    pyramid structure used for the GOP starting with a key frame
    (-1 to 5).
  - Make SVC work for screen content.
  - Rate control improvements to reduce frame-size spikes for
    screen content coding.
  - RISC-V architecture support with gcc toolchain.
  * Compression Efficiency Improvements:
  - Peak compression efficiency in VOD setting is improved by 1%.
  - 0.7% - 2.2% RTC encoding BDrate gains for real time speed 8
    to 10.
  - 15% RTC encoding BDrate gains for screen content speed 10.
  * Perceptual Quality Improvements:
  - Resolved a visual quality issue that was reported for high
    resolution clips (2K) for speed 4 and above in VOD use case.
  - Visual quality improvements to screen content coding.
  - Quality improvements to temporal layer RTC coding.
  * Speedup and Memory Optimizations:
  - RTC single-thread encoder speedup:
    . ~6% instruction count reduction for speed 5 and 6.
    . ~15% instruction count reduction for speed 7.
    . ~10% instruction count reduction for speed 8 to 10 (&gt;=360p
    resolutions).
  - RTC multi-thread encoder speedup (beyond single-thread
    speedup):
    . 5-8% encode time reduction for speed 7 to 10.
  - RTC screen-content encoder speedup:
    . 11% instruction count reduction for speed 9 and 10 (&gt;=720p
    resolutions).
  - ~5% reduction in heap memory requirements for RTC, speed 6 to
    10.
  * AVIF:
    . 4-5% speedup for speed 9 in still-picture encoding mode.
    . 3-4% heap memory reduction in still-picture encoding mode
    for 360p-720p resolutions with multiple threads.
  * Bug Fixes:
  - Added a workaround for an AV1 specification bug which makes
    TRANSLATION type global motion models unusable.
  - Fixed AddressSanitizer global-buffer-overflow errors in
    av1/encoder/arm/neon/av1_fwd_txfm2d_neon.c.
  - Fixed AddressSanitizer heap-buffer-overflow error in
    av1_wiener_convolve_add_src_neon().
  - chromium:1393384 Avoid scene detection on spatial resize.
  - aomedia:3308 Remove color artifacts under high motion.
  - aomedia:3310 Avoid out of memory failures with Visual Studio
    2017, 2019, and 2022 for Win32 x86 builds.
  - aomedia:3346 Make SVC work properly for screen content.
  - aomedia:3348 Fix a bug where an uninitialized search_site is
    used.
  - aomedia:3365 Work around what seems like a Visual Studio 2022
    compiler optimization bug.
  - aomedia:3369 Incorrect PSNR values reported by libaom for
    12-bit encode.
- Modernize spec, use cmake_build and ldconfig_scriptlets macros.</changelog>
  <changelog author="Frederic Crozat &lt;fcrozat@suse.com&gt;" date="1681992000">- Fix license tag to BSD-2-Clause and AOMPL-1.0.</changelog>
  <changelog author="Frederic Crozat &lt;fcrozat@suse.com&gt;" date="1683028800">- Revert to BSD-2-Clause licence tag to only use SPDX valid
  license tag.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1683720000">- Update to version 3.6.1:
  * aomedia:2871: Guard the support of the 7.x and 8.x levels for
    AV1 under the CONFIG_CWG_C013 config flag, and only output the
    7.x and 8.x levels when explicitly requested.
  * aomedia:3382: Choose sb_size by ppi instead of svc.
  * aomedia:3384: Fix fullpel search limits.
  * aomedia:3388: Replace left shift of xq_active by
    multiplication.
  * aomedia:3389: Fix MV clamping in av1_mv_pred.
  * aomedia:3390: set_ld_layer_depth: cap max_layer_depth to
    MAX_ARF_LAYERS.
  * aomedia:3418: Fix MV clamping in av1_int_pro_motion_estimation.
  * aomedia:3429: Move lpf thread data init to
    lpf_pipeline_mt_init().
  * b:266719111: Fix undefined behavior in Arm Neon code.
  * b:269840681: nonrd_opt: align scan tables.
  * rtc: Fix is_key_frame setting in variance partition.
  * Build: Fix build with clang-cl and Visual Studio.</changelog>
  <changelog author="Bruno Pitrus &lt;brunopitrus@hotmail.com&gt;" date="1693569600">- New upstream release 3.7.0
  - New Features
  * New codec controls:
  * AV1E_SET_QUANTIZER_ONE_PASS: Set quantizer for each frame.
  * AV1E_ENABLE_RATE_GUIDE_DELTAQ: enable the rate distribution guided delta
    quantization in all intra mode. The "enable-rate-guide-deltaq" option is
    added for this control.
  * AV1E_SET_RATE_DISTRIBUTION_INFO: set the input file for rate
    distribution used in all intra mode. The "rate-distribution-info" option
    is added for this control.
  * AV1E_GET_LUMA_CDEF_STRENGTH
  * AV1E_SET_BITRATE_ONE_PASS_CBR
  * AOM_SCALING_MODE is extended to include 2/3 and 1/3 scaling.
  * aom_tune_metric is extended to include AOM_TUNE_VMAF_SALIENCY_MAP.
    The "tune" option is extended to include "vmaf_saliency_map".
  * SVC example encoder svc_encoder_rtc is able to use the rate control
    library.
  * Loopfilter level and CDEF filter level is supported by RTC rate control
    library.
  * New speed (--cpu-used) 11, intended for RTC screen sharing, added for
    faster encoding with ~3% bdrate loss with 16% IC (instruction count)
    speedup compared to speed 10.
  - Compression Efficiency Improvements
  * Improved VoD encoding performance
  * 0.1-0.6% BDrate gains for encoding speeds 2 to 6
  * Rate control accuracy improvement in VBR mode
  * RTC encoding improvements
  * Screen content mode: 10-19% BDrate gains for speeds 6 - 10
  * Temporal layers video mode, for speed 10:
  * 2 temporal layers on low resolutions: 13-15% BDrate gain
  * 3 temporal layers on VGA/HD: 3-4% BDrate gain
  - Perceptual Quality Improvements
  * Fixed multiple block and color artifacts for RTC screen content by
  * Incorporating color into RD cost for IDTX
  * Reducing thresholds for palette mode in non RD mode
  * Allowing more palette mode testing
  * Improved color sensitivity for altref in non-RD mode.
  * Reduced video flickering for temporal layer encoding.
  - Speedup and Memory Optimizations
  * Speed up the VoD encoder
  * 2-5% for encoding speed 2 to 4
  * 9-15% for encoding speed 5 to 6
  * ARM
  * Standard bitdepth
  * speed 5: +31%
  * speed 4: +2%
  * speed 3: +9%
  * speed 2: +157%
  * High bitdepth
  * speed 5: +85%
  * RTC speedups
  * Screen content mode
  * 15% IC speedup for speeds 6-8
  * ARM: 7% for speed 9, 3% for speed 10
  * Temporal layers video mode
  * 7% speedup for 3 temporal layers on VGA/HD, for speed 10
  * Single layer video
  * x86: 2% IC speedup for speeds 7-10
  * ARM: 2-4% speedup across speeds 5-10
  - Bug Fixes
  * aomedia:3261 Assertion failed when encoding av1 with film grain and
    '--monochrome' flag
  * aomedia:3276 ensure all allocations are checked (partial fix)
  * aomedia:3451 The libaom library calls exit()
  * aomedia:3450 enable -Wshadow for C++ sources
  * aomedia:3449 Test Seg Faults After
    b459af3e345be402db052a143fcc5383d4b74cbd
  * aomedia:3416 prune unused symbols / restrict symbol visibility
  * aomedia:3443 Jenkins failure:
    UninstantiatedParameterizedTestSuite&lt;EstimateNoiseTest&gt;
  * aomedia:3434 realtime failures with CONFIG_BITSTREAM_DEBUG=1
  * aomedia:3433 DeltaqModeTest crash w/row_mt=0
  * aomedia:3429 Encoder crash when turn on both ExternalResize and
    g_threads &gt; 2
  * aomedia:3438 Build failure with
    `-DSANITIZE=address -DBUILD_SHARED_LIBS=ON` when using clang.
  * aomedia:3435 Block artifacts when scrolling with AV1 in screen sharing
    scenarios
  * aomedia:3170 vmaf tune presets produce extreme glitches in one scene
  * aomedia:3401 Building shared libaom with MSVC results in a race condition
    with the export library
  * aomedia:3420 Floating point exception in av1_tpl_get_frame_importance()
  * aomedia:3424 heap-buffer-overflow in ScaleFilterCols_16_C() (SIGABRT)
  * aomedia:3417 examples/svc_encoder_rtc.c is using internal macros and
    functions
  * aomedia:3372 SEGV in assign_frame_buffer_p av1_common_int.h
  * aomedia:3130 'cpu-features.h' file not found on Android NDK 22
  * aomedia:3415 Encoder/decoder mismatch for svc_encoder_rtc running
    1 SL 3 TL
  * aomedia:3412 Lossless Mode Fails Loopback Bit Test
  * aomedia:3409 The use of AV1_VAR_OFFS in av1/encoder/var_based_part.c is
    incorrect for high bit depths
  * aomedia:3403 test_libaom fails with error message
    "feenableexcept() failed" on Linux arm
  * aomedia:3370 Random color block at fast motion area
  * aomedia:3393 Assertion failure in av1_convolve_2d_sr_c()
  * aomedia:3392 Strong artifacting for high bit-depth real-time
  * aomedia:3376 aomenc --threads=10 --deltaq-mode=3 crashes after
    "Allintra: multi-threading of calculating differential contrast"
  * aomedia:3380 Crashes and ASan and TSan errors in deltaq-mode=3
    multithreading code
  * chromium:1410766 heap-buffer-overflow in aom_yv12_copy_v_c
  * Cannot set level via AV1E_SET_TARGET_SEQ_LEVEL_IDX
  * Encoding failure due to the use of loop restoration with unintended use of
    lossless mode.
  * Signed integer overflow in scan_past_frames
  * Signed integer overflow in update_a_sep_sym
  * Flickering in AV1 1440p/2160p HDR transcodes
  * Fixed artifacts with screen share at encoder speed 10
  * Fixed prediction setup for IDTX
- Use system libraries instead of vendored ones
  * system-gtest.patch
  * system-yuv.patch
- Enable debuginfo also on modules written in assembly
- Enable building PowerPC-specific optimizations
- Enable Neon optimized code on ARM and fix runtime CPU detection
- Fix missing images in documentation</changelog>
  <changelog author="Bruno Pitrus &lt;brunopitrus@hotmail.com&gt;" date="1693915200">- Split docs to multibuild to avoid dependency cycle</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1701777600">- Update to version 3.7.1:
  * Bug Fixes:
  - aomedia:3349: heap overflow when increasing resolution
  - aomedia:3478: GCC 12.2.0 emits a -Wstringop-overflow warning
    on aom/av1/encoder/motion_search_facade.c
  - aomedia:3489: Detect encoder and image high bit depth
    mismatch
  - aomedia:3491: heap-buffer-overflow on frame size change
  - b/303023614:  Segfault at encoding time for high bit depth
    images
- Switch buildtime compression to zst.</changelog>
  <changelog author="Enrico Belleri &lt;kilgore.trout@idesmi.eu&gt;" date="1720267200">- Update to version 3.7.2:
  * aomedia:3520: get_cubic_kernel_dbl: Assertion `0 &lt;= x &amp;&amp; x &lt; 1'
    failed.
  * aomedia:3526: alloc_compressor_data() is called during every
    aom_codec_control() call on the encoder. Note that this partially
    reverts the fix for bug aomedia:3349.
  * b/310457427 and b/310766628: Only use rec_sse in CBR mode.</changelog>
  <changelog author="Enrico Belleri &lt;kilgore.trout@idesmi.eu&gt;" date="1724587200">- Exclude third_party from obscpio</changelog>
</package>
<package pkgid="e7f228e29678da0f95835f1f26af03f8e4c7670945a7ff830b56a84a924553c66987dfb3c5fa1b8398ca94088d28fc920f09ea96640217788fd58175f802c609" name="aom-tools-debuginfo" arch="x86_64">
  <version epoch="0" ver="3.7.2" rel="1.1"/>
  <changelog author="daniel.molkentin@suse.com" date="1620648000">- Update to version 3.1.0 (bsc#1185843):
  https://aomedia.googlesource.com/aom/+/refs/tags/v3.1.0
  This release adds an "all intra" mode to the encoder, which significantly
  speeds up the encoding of AVIF still images at speed 6.
  - Upgrading:
    All intra mode for encoding AVIF still images and AV1 all intra videos:
    AOM_USAGE_ALL_INTRA (2) can be passed as the 'usage' argument to
    aom_codec_enc_config_default().
    New encoder control IDs added:
  - AV1E_SET_ENABLE_DIAGONAL_INTRA: Enable diagonal (D45 to D203) intra
    prediction modes (0: false, 1: true (default)). Also available as
    "enable-diagonal-intra" for the aom_codec_set_option() function.
    New aom_tune_metric enum value: AOM_TUNE_BUTTERAUGLI. The new aomenc option
  - -tune=butteraugli was added to optimize the encoder’s perceptual quality by
    optimizing the Butteraugli metric. Install libjxl (JPEG XL) and then pass
  - DCONFIG_TUNE_BUTTERAUGLI=1 to the cmake command to enable it.
- Includes 3.0
  https://aomedia.googlesource.com/aom/+/refs/tags/v3.0.0
  This release includes compression efficiency improvement, speed improvement
  for realtime mode, as well as some new APIs.
  - Upgrading:
    Support for PSNR calculation based on stream bit-depth.
    New encoder control IDs added:
  - AV1E_SET_ENABLE_RECT_TX
  - AV1E_SET_VBR_CORPUS_COMPLEXITY_LAP
  - AV1E_GET_BASELINE_GF_INTERVAL
  - AV1E_SET_ENABLE_DNL_DENOISING
    New decoder control IDs added:
  - AOMD_GET_FWD_KF_PRESENT
  - AOMD_GET_FRAME_FLAGS
  - AOMD_GET_ALTREF_PRESENT
  - AOMD_GET_TILE_INFO
  - AOMD_GET_SCREEN_CONTENT_TOOLS_INFO
  - AOMD_GET_STILL_PICTURE
  - AOMD_GET_SB_SIZE
  - AOMD_GET_SHOW_EXISTING_FRAME_FLAG
  - AOMD_GET_S_FRAME_INFO
    New aom_tune_content enum value: AOM_CONTENT_FILM
    New aom_tune_metric enum value: AOM_TUNE_VMAF_NEG_MAX_GAIN
    Coefficient and mode update can be turned off via
    AV1E_SET_{COEFF/MODE}_COST_UPD_FREQ.
    New key &amp; value API added, available with aom_codec_set_option() function.
    Scaling API expanded to include 1/4, 3/4 and 1/8.
  - Enhancements:
    Better multithreading performance with realtime mode.
    New speed 9 setting for faster realtime encoding.
    Smaller binary size with low bitdepth and realtime only build.
    Temporal denoiser and its optimizations on x86 and Neon.
    Optimizations for scaling.
    Faster encoding with speed settings 2 to 6 for good encoding mode.
    Improved documentation throughout the library, with function level
    documentation, tree view and support for the dot tool.
  - Bug fixes:
    Aside from those mentioned in v2.0.1 and v2.0.2, this release includes the
    following bug fixes:
    Issue 2940: Segfault when encoding with --use-16bit-internal and --limit &gt; 1
    Issue 2941: Decoder mismatch with --rt --bit-depth=10 and --cpu-used=8
    Issue 2895: mingw-w64 i686 gcc fails to build
    Issue 2874: Separate ssse3 functions from sse2 file.</changelog>
  <changelog author="Ferdinand Thiessen &lt;rpm@fthiessen.de&gt;" date="1625227200">- Update to version 3.1.1
  * Fix vmaf model initialization error when not set to tune=vmaf
  * Fix consistent crash on near-static screen content, keyframe
    related
  * Fix tune=butteraugli mode
- Disable NEON on arm where not available.</changelog>
  <changelog author="pgajdos@suse.com" date="1629892800">- Update to version 3.1.2:
  * Update AUTHORS,CHANGELOG,CMakeLists.txt for v3.1.2
  * Avoid chroma resampling for 420mpeg2 input
  * Check array has two elements before using index 1
  * Fix DecodeScalabilityTest failure in realtime only
  * Store temporal_id and spatial_id of decoded frame
  * exports.cmake: use APPLE and WIN32 and use def for mingw-w64</changelog>
  <changelog author="pgajdos@suse.com" date="1629892801">- security update
- added patches
  fix CVE-2021-30475 [bsc#1189497], Buffer overflow in aom_dsp/noise_model.c
  + libaom-CVE-2021-30475.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1631188800">- security update
- added patches
  fix CVE-2021-30474 [bsc#1186799], aom_dsp/grain_table.c in libaom in AOMedia before 2021-03-30 has a use-after-free.
  + libaom-CVE-2021-30474.patch</changelog>
  <changelog author="gmbr3@opensuse.org" date="1633694400">- Update to version 3.1.3:
  * Update CHANGELOG for v3.1.3-rc2
  * Detect chroma subsampling more directly
  * Detect chroma subsampling more directly
  * image2yuvconfig() should calculate uv_crop_width
  * aom/aom_encoder.h: remove configure option reference
  * aom_encoder.h: fix rc_overshoot_pct range
  * Update AUTHORS,CHANGELOG,CMakeLists.txt for v3.1.3
  * aom_install: don't exclude msvc from install
  * aom_install: use relpath for install
  * aom_install: Install lib dlls to bindir</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1634126400">- fix service data</changelog>
  <changelog author="bjorn.lie@gmail.com" date="1634299200">- Update to version 3.2.0:
  * This release includes compression efficiency and perceptual
    quality improvements, speedup and memory optimizations, as well
    as some new features.
  * New Features:
    + Introduced speeds 7, 8, and 9 for all intra mode.
    + Introduced speed 10 for real time mode.
    + Introduced an API that allows external partition decisions.
    + SVC: added support for compound prediction.
    + SVC: added support for fixed SVC modes.
  * Compression Efficiency Improvements:
    + Intra-mode search improvement.
    + Improved real time (RT) mode BDrate savings by ~5% (RT speed
    5) and ~12% (RT speed 6). The improvement was measured on the
    video conference set.
    + Improved real time mode for nonrd path (speed 7, 8, 9):
    BDrate gains of ~3-5%.
    + Rate control and RD adjustments based on ML research in VP9.
    Gains of ~0.5-1.0% for HD.
  * Perceptual Quality Improvements:
    + Added a new mode --deltaq-mode=3 to improve perceptual
    quality based on a differential contrast model for still
    images.
    + Added a new mode –deltaq-mode=4 to improve perceptual quality
    based on user rated cq_level data set for still images.
    + Weighting of some intra mode and partition size choices to
    better manage and retain texture.
  * Speedup and Memory Optimizations:
    + Further improved 2-pass good quality encoder speed:
    . Speed 2 speedup: 18%
    . Speed 3 speedup: 22%
    . Speed 4 speedup: 37%
    . Speed 5 speedup: 30%
    . Speed 6 speedup: 20%
    + Optimized the real time encoder (measured on the video
    conference set):
    . RT speed 5 speedup: 110%
    . RT speed 6 speedup: 77%
  * Bug Fixes
    + Issue 3069: Fix one-pass mode keyframe placement off-by-one
    error.
    + Issue 3156: Fix a bug in av1_quantize_lp AVX2 optimization.
- Drop libaom-CVE-2021-30474.patch: Fixed upstream.
- Drop libaom-CVE-2021-30475.patch: Fixed upstream.
- Remove changesgenerate option from _service file, use data from
  CHANGELOG to fill .changes instead as it it much nicer and human
  readable than just a list of commit messages.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1645185600">- Update to version 3.3.0:
  * This release includes compression efficiency and perceptual
    quality improvements, speedup and memory optimizations, some
    new features, and several bug fixes.
  * New Features
  - AV1 RT: Introducing CDEF search level 5
  - Changed real time speed 4 to behave the same as real time
    speed 5
  - Add --deltaq-strength
  - rtc: Allow scene-change and overshoot detection for svc
  - rtc: Intra-only frame for svc
  - AV1 RT: Option 2 for codec control AV1E_SET_ENABLE_CDEF to
    disable CDEF on non-ref frames
  - New codec controls AV1E_SET_LOOPFILTER_CONTROL and
    AOME_GET_LOOPFILTER_LEVEL
  - Improvements to three pass encoding
  * Compression Efficiency Improvements: Overall compression gains:
    0.6%
  * Perceptual Quality Improvements
  - Improves the perceptual quality of high QP encoding for
    delta-q mode 4
  - Auto select noise synthesis level for all intra
  * Speedup and Memory Optimizations
  - Added many SSE2 optimizations.
  - Good quality 2-pass encoder speedups:
    o Speed 2: 9%
    o Speed 3: 12.5%
    o Speed 4: 8%
    o Speed 5: 3%
    o Speed 6: 4%
  - Real time mode encoder speedups:
    o Speed 5: 2.6% BDRate gain, 4% speedup
    o Speed 6: 3.5% BDRate gain, 4% speedup
    o Speed 9: 1% BDRate gain, 3% speedup
    o Speed 10: 3% BDRate gain, neutral speedup
  - All intra encoding speedups (AVIF):
    o Single thread - speed 6: 8%
    o Single thread - speed 9: 15%
    o Multi thread(8) - speed 6: 14%
    o Multi thread(8) - speed 9: 34%
  * Bug Fixes
  - Issue 3163: Segmentation fault when using
  - -enable-keyframe-filtering=2
  - Issue 2436: Integer overflow in av1_warp_affine_c()
  - Issue 3226: armv7 build failure due to gcc-11
  - Issue 3195: Bug report on libaom (AddressSanitizer:
    heap-buffer-overflow)
  - Issue 3191: Bug report on libaom (AddressSanitizer: SEGV on
    unknown address)
- Drop libaom-devel Requires from libaom-devel-doc sub-package: We
  do not need the devel package to be able to read the devel
  documentation.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1662292800">- Update to version 3.4.0:
  * This release includes compression efficiency and perceptual
    quality improvements, speedup and memory optimizations, and
    some new features. There are no ABI or API breaking changes in
    this release.
  * New Features:
  - New --dist-metric flag with "qm-psnr" value to use
    quantization matrices in the distortion computation for RD
    search. The default value is "psnr".
  - New command line option "--auto-intra-tools-off=1" to make
    all-intra encoding faster for high bit rate under
    "--deltaq-mode=3" mode.
  - New rate control library aom_av1_rc for real-time hardware
    encoders. Supports CBR for both one spatial layer and SVC.
  - New image format AOM_IMG_FMT_NV12 can be used as input to the
    encoder. The presence of AOM_IMG_FMT_NV12 can be detected at
    compile time by checking if the macro AOM_HAVE_IMG_FMT_NV12
    is defined.
  - New codec controls for the encoder:
    o AV1E_SET_AUTO_INTRA_TOOLS_OFF. Only in effect if
  - -deltaq-mode=3.
    o AV1E_SET_RTC_EXTERNAL_RC
    o AV1E_SET_FP_MT. Only supported if libaom is built with
  - DCONFIG_FRAME_PARALLEL_ENCODE=1.
    o AV1E_GET_TARGET_SEQ_LEVEL_IDX
  - New key-value pairs for the key-value API:
    o --auto-intra-tools-off=0 (default) or 1. Only in effect if
  - -deltaq-mode=3.
    o --strict-level-conformance=0 (default) or 1
    o --fp-mt=0 (default) or 1. Only supported if libaom is built
    with -DCONFIG_FRAME_PARALLEL_ENCODE=1.
  - New aomenc options (not supported by the key-value API):
    o --nv12
  * Compression Efficiency Improvements:
  - Correctly calculate SSE for high bitdepth in skip mode, 0.2%
    to 0.6% coding gain.
  - RTC at speed 9/10: BD-rate gain of ~4/5%
  - RTC screen content coding: many improvements for real-time
    screen at speed 10 (quality, speedup, and rate control), up
    to high resolutions (1080p).
  - RTC-SVC: fixes to make intra-only frames work for spatial
    layers.
  - RTC-SVC: quality improvements for temporal layers.
  - AV1 RT: A new passive rate control strategy for screen
    content, an average of 7.5% coding gain, with some clips of
    20+%. The feature is turned off by default due to higher bit
    rate variation.
  * Perceptual Quality Improvements:
  - RTC: Visual quality improvements for high speeds (9/10)
  - Improvements in coding quality for all intra mode
  * Speedup and Memory Optimizations:
  - ~10% speedup in good quality mode encoding.
  - ~7% heap memory reduction in good quality encoding mode for
    speed 5 and 6.
  - Ongoing improvements to intra-frame encoding performance on
    Arm
  - Faster encoding speed for "--deltaq-mode=3" mode.
  - ~10% speedup for speed 5/6, ~15% speedup for speed 7/8, and
    ~10% speedup for speed 9/10 in real time encoding mode
  - ~20% heap memory reduction in still-picture encoding mode for
    360p-720p resolutions with multiple threads
  - ~13% speedup for speed 6 and ~12% speedup for speed 9 in
    still-picture encoding mode.
  - Optimizations to improve multi-thread efficiency for
    still-picture encoding mode.
  * Bug Fixes:
  - b/204460717: README.md: replace master with main
  - b/210677928: libaom disable_order is surprising for
    max_reference_frames=3
  - b/222461449: -DCONFIG_TUNE_BUTTERAUGLI=1 broken
  - b/227207606: write_greyscale writes incorrect chroma in
    highbd mode
  - b/229955363: Integer-overflow in linsolve_wiener
  - https://crbug.com/aomedia/2032
  - https://crbug.com/aomedia/2397
  - https://crbug.com/aomedia/2563
  - https://crbug.com/aomedia/2815
  - https://crbug.com/aomedia/3009
  - https://crbug.com/aomedia/3018
  - https://crbug.com/aomedia/3045
  - https://crbug.com/aomedia/3101
  - https://crbug.com/aomedia/3130
  - https://crbug.com/aomedia/3173
  - https://crbug.com/aomedia/3184
  - https://crbug.com/aomedia/3187
  - https://crbug.com/aomedia/3190
  - https://crbug.com/aomedia/3195
  - https://crbug.com/aomedia/3197
  - https://crbug.com/aomedia/3201
  - https://crbug.com/aomedia/3202
  - https://crbug.com/aomedia/3204
  - https://crbug.com/aomedia/3205
  - https://crbug.com/aomedia/3207
  - https://crbug.com/aomedia/3208
  - https://crbug.com/aomedia/3209
  - https://crbug.com/aomedia/3213
  - https://crbug.com/aomedia/3214
  - https://crbug.com/aomedia/3219
  - https://crbug.com/aomedia/3222
  - https://crbug.com/aomedia/3223
  - https://crbug.com/aomedia/3225
  - https://crbug.com/aomedia/3226
  - https://crbug.com/aomedia/3228
  - https://crbug.com/aomedia/3232
  - https://crbug.com/aomedia/3236
  - https://crbug.com/aomedia/3237
  - https://crbug.com/aomedia/3238
  - https://crbug.com/aomedia/3240
  - https://crbug.com/aomedia/3243
  - https://crbug.com/aomedia/3244
  - https://crbug.com/aomedia/3246
  - https://crbug.com/aomedia/3248
  - https://crbug.com/aomedia/3250
  - https://crbug.com/aomedia/3251
  - https://crbug.com/aomedia/3252
  - https://crbug.com/aomedia/3255
  - https://crbug.com/aomedia/3257
  - https://crbug.com/aomedia/3259
  - https://crbug.com/aomedia/3260
  - https://crbug.com/aomedia/3267
  - https://crbug.com/aomedia/3268
  - https://crbug.com/aomedia/3269
  - https://crbug.com/aomedia/3276
  - https://crbug.com/aomedia/3278
  - https://crbug.com/chromium/1290068
  - https://crbug.com/chromium/1303237
  - https://crbug.com/chromium/1304990
  - https://crbug.com/chromium/1321141
  - https://crbug.com/chromium/1321388
  - https://crbug.com/oss-fuzz/44846
  - https://crbug.com/oss-fuzz/44856
  - https://crbug.com/oss-fuzz/44862
  - https://crbug.com/oss-fuzz/44904
  - https://crbug.com/oss-fuzz/45056</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1663848000">- Update to version 3.5.0:
  * This release is ABI compatible with the last one, including
    speedup and memory optimizations, and new APIs and features.
  * New Features
  - Support for frame parallel encode for larger number of
    threads. --fp-mt flag is available for all build
    configurations.
  - New codec control AV1E_GET_NUM_OPERATING_POINTS
  * Speedup and Memory Optimizations
  - Speed-up multithreaded encoding for good quality mode for
    larger number of threads through frame parallel encoding:
    . 30-34% encode time reduction for 1080p, 16 threads, 1x1
    tile configuration (tile_rows x tile_columns)
    . 18-28% encode time reduction for 1080p, 16 threads, 2x4
    tile configuration
    . 18-20% encode time reduction for 2160p, 32 threads, 2x4
    tile configuration
  - 16-20% speed-up for speed=6 to 8 in still-picture encoding
    mode
  - 5-6% heap memory reduction for speed=6 to 10 in real-time
    encoding mode
  - Improvements to the speed for speed=7, 8 in real-time
    encoding mode
  - Improvements to the speed for speed=9, 10 in real-time screen
    encoding mode
  - Optimizations to improve multi-thread efficiency in real-time
    encoding mode
  - 10-15% speed up for SVC with temporal layers
  - SIMD optimizations:
    . Improve av1_quantize_fp_32x32_neon() 1.05x to 1.24x faster
    . Add aom_highbd_quantize_b{,_32x32,_64x64}_adaptive_neon()
    3.15x to 5.6x faster than "C"
    . Improve av1_quantize_fp_64x64_neon() 1.17x to 1.66x faster
    . Add aom_quantize_b_avx2() 1.4x to 1.7x faster than
    aom_quantize_b_avx()
    . Add aom_quantize_b_32x32_avx2() 1.4x to 2.3x faster than
    aom_quantize_b_32x32_avx()
    . Add aom_quantize_b_64x64_avx2() 2.0x to 2.4x faster than
    aom_quantize_b_64x64_ssse3()
    . Add aom_highbd_quantize_b_32x32_avx2() 9.0x to 10.5x faster
    than aom_highbd_quantize_b_32x32_c()
    . Add aom_highbd_quantize_b_64x64_avx2() 7.3x to 9.7x faster
    than aom_highbd_quantize_b_64x64_c()
    . Improve aom_highbd_quantize_b_avx2() 1.07x to 1.20x faster
    . Improve av1_quantize_fp_avx2() 1.13x to 1.49x faster
    . Improve av1_quantize_fp_32x32_avx2() 1.07x to 1.54x faster
    . Improve av1_quantize_fp_64x64_avx2()  1.03x to 1.25x faster
    . Improve av1_quantize_lp_avx2() 1.07x to 1.16x faster
  * Bug fixes including but not limited to
  - aomedia:3206 Assert that skip_width &gt; 0 for deconvolve
    function
  - aomedia:3278 row_mt enc: Delay top-right sync when intraBC is
    enabled
  - aomedia:3282 blend_a64_*_neon: fix bus error in armv7
  - aomedia:3283 FRAME_PARALLEL: Propagate border size to all
    cpis
  - aomedia:3283 RESIZE_MODE: Fix incorrect strides being used
    for motion search
  - aomedia:3286 rtc-svc: Fix to dynamic_enable spatial layers
  - aomedia:3289 rtc-screen: Fix to skipping inter-mode test in
    nonrd
  - aomedia:3289 rtc-screen: Fix for skip newmv on flat blocks
  - aomedia:3299 Fix build failure with CONFIG_TUNE_VMAF=1
  - aomedia:3296 Fix the conflict --enable-tx-size-search=0 with
    nonrd mode --enable-tx-size-search will be ignored in non-rd
    pick mode
  - aomedia:3304 Fix off-by-one error of max w/h in
    validate_config
  - aomedia:3306 Do not use pthread_setname_np on GNU/Hurd
  - aomedia:3325 row-multithreading produces invalid bitstream in
    some cases
  - chromium:1346938, chromium:1338114
  - compiler_flags.cmake: fix flag detection w/cmake 3.17-3.18.2
  - tools/*.py: update to python3
  - aom_configure.cmake: detect PIE and set CONFIG_PIC
  - test/simd_cmp_impl: use explicit types w/CompareSimd*
  - rtc: Fix to disable segm for aq-mode=3
  - rtc: Fix to color_sensitivity in variance partition
  - rtc-screen: Fix bsize in model rd computation for intra
    chroma
  - Fixes to ensure the correct behavior of the encoder
    algorithms (like segmentation, computation of statistics,
    etc.)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1675857600">- Update to version 3.6.0:
  * This release includes compression efficiency and perceptual
    quality improvements, speedup and memory optimizations, and
    some new features. This release is ABI compatible with the last
    release.
  * New Features:
  - New values 20-27 (corresponding to levels 7.0-7.3 and
    8.0-8.3) for the encoder control
    AV1E_SET_TARGET_SEQ_LEVEL_IDX (note that the proposal to add
    the new levels are still in draft status). The original
    special value 24 (keep level stats only for level monitoring)
    is renumbered as 32.
  - New encoder control AV1E_SET_SKIP_POSTPROC_FILTERING to skip
    the application of post-processing filters on reconstructed
    frame in all intra mode.
  - New encoder option "kf-max-pyr-height": Maximum height of
    pyramid structure used for the GOP starting with a key frame
    (-1 to 5).
  - Make SVC work for screen content.
  - Rate control improvements to reduce frame-size spikes for
    screen content coding.
  - RISC-V architecture support with gcc toolchain.
  * Compression Efficiency Improvements:
  - Peak compression efficiency in VOD setting is improved by 1%.
  - 0.7% - 2.2% RTC encoding BDrate gains for real time speed 8
    to 10.
  - 15% RTC encoding BDrate gains for screen content speed 10.
  * Perceptual Quality Improvements:
  - Resolved a visual quality issue that was reported for high
    resolution clips (2K) for speed 4 and above in VOD use case.
  - Visual quality improvements to screen content coding.
  - Quality improvements to temporal layer RTC coding.
  * Speedup and Memory Optimizations:
  - RTC single-thread encoder speedup:
    . ~6% instruction count reduction for speed 5 and 6.
    . ~15% instruction count reduction for speed 7.
    . ~10% instruction count reduction for speed 8 to 10 (&gt;=360p
    resolutions).
  - RTC multi-thread encoder speedup (beyond single-thread
    speedup):
    . 5-8% encode time reduction for speed 7 to 10.
  - RTC screen-content encoder speedup:
    . 11% instruction count reduction for speed 9 and 10 (&gt;=720p
    resolutions).
  - ~5% reduction in heap memory requirements for RTC, speed 6 to
    10.
  * AVIF:
    . 4-5% speedup for speed 9 in still-picture encoding mode.
    . 3-4% heap memory reduction in still-picture encoding mode
    for 360p-720p resolutions with multiple threads.
  * Bug Fixes:
  - Added a workaround for an AV1 specification bug which makes
    TRANSLATION type global motion models unusable.
  - Fixed AddressSanitizer global-buffer-overflow errors in
    av1/encoder/arm/neon/av1_fwd_txfm2d_neon.c.
  - Fixed AddressSanitizer heap-buffer-overflow error in
    av1_wiener_convolve_add_src_neon().
  - chromium:1393384 Avoid scene detection on spatial resize.
  - aomedia:3308 Remove color artifacts under high motion.
  - aomedia:3310 Avoid out of memory failures with Visual Studio
    2017, 2019, and 2022 for Win32 x86 builds.
  - aomedia:3346 Make SVC work properly for screen content.
  - aomedia:3348 Fix a bug where an uninitialized search_site is
    used.
  - aomedia:3365 Work around what seems like a Visual Studio 2022
    compiler optimization bug.
  - aomedia:3369 Incorrect PSNR values reported by libaom for
    12-bit encode.
- Modernize spec, use cmake_build and ldconfig_scriptlets macros.</changelog>
  <changelog author="Frederic Crozat &lt;fcrozat@suse.com&gt;" date="1681992000">- Fix license tag to BSD-2-Clause and AOMPL-1.0.</changelog>
  <changelog author="Frederic Crozat &lt;fcrozat@suse.com&gt;" date="1683028800">- Revert to BSD-2-Clause licence tag to only use SPDX valid
  license tag.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1683720000">- Update to version 3.6.1:
  * aomedia:2871: Guard the support of the 7.x and 8.x levels for
    AV1 under the CONFIG_CWG_C013 config flag, and only output the
    7.x and 8.x levels when explicitly requested.
  * aomedia:3382: Choose sb_size by ppi instead of svc.
  * aomedia:3384: Fix fullpel search limits.
  * aomedia:3388: Replace left shift of xq_active by
    multiplication.
  * aomedia:3389: Fix MV clamping in av1_mv_pred.
  * aomedia:3390: set_ld_layer_depth: cap max_layer_depth to
    MAX_ARF_LAYERS.
  * aomedia:3418: Fix MV clamping in av1_int_pro_motion_estimation.
  * aomedia:3429: Move lpf thread data init to
    lpf_pipeline_mt_init().
  * b:266719111: Fix undefined behavior in Arm Neon code.
  * b:269840681: nonrd_opt: align scan tables.
  * rtc: Fix is_key_frame setting in variance partition.
  * Build: Fix build with clang-cl and Visual Studio.</changelog>
  <changelog author="Bruno Pitrus &lt;brunopitrus@hotmail.com&gt;" date="1693569600">- New upstream release 3.7.0
  - New Features
  * New codec controls:
  * AV1E_SET_QUANTIZER_ONE_PASS: Set quantizer for each frame.
  * AV1E_ENABLE_RATE_GUIDE_DELTAQ: enable the rate distribution guided delta
    quantization in all intra mode. The "enable-rate-guide-deltaq" option is
    added for this control.
  * AV1E_SET_RATE_DISTRIBUTION_INFO: set the input file for rate
    distribution used in all intra mode. The "rate-distribution-info" option
    is added for this control.
  * AV1E_GET_LUMA_CDEF_STRENGTH
  * AV1E_SET_BITRATE_ONE_PASS_CBR
  * AOM_SCALING_MODE is extended to include 2/3 and 1/3 scaling.
  * aom_tune_metric is extended to include AOM_TUNE_VMAF_SALIENCY_MAP.
    The "tune" option is extended to include "vmaf_saliency_map".
  * SVC example encoder svc_encoder_rtc is able to use the rate control
    library.
  * Loopfilter level and CDEF filter level is supported by RTC rate control
    library.
  * New speed (--cpu-used) 11, intended for RTC screen sharing, added for
    faster encoding with ~3% bdrate loss with 16% IC (instruction count)
    speedup compared to speed 10.
  - Compression Efficiency Improvements
  * Improved VoD encoding performance
  * 0.1-0.6% BDrate gains for encoding speeds 2 to 6
  * Rate control accuracy improvement in VBR mode
  * RTC encoding improvements
  * Screen content mode: 10-19% BDrate gains for speeds 6 - 10
  * Temporal layers video mode, for speed 10:
  * 2 temporal layers on low resolutions: 13-15% BDrate gain
  * 3 temporal layers on VGA/HD: 3-4% BDrate gain
  - Perceptual Quality Improvements
  * Fixed multiple block and color artifacts for RTC screen content by
  * Incorporating color into RD cost for IDTX
  * Reducing thresholds for palette mode in non RD mode
  * Allowing more palette mode testing
  * Improved color sensitivity for altref in non-RD mode.
  * Reduced video flickering for temporal layer encoding.
  - Speedup and Memory Optimizations
  * Speed up the VoD encoder
  * 2-5% for encoding speed 2 to 4
  * 9-15% for encoding speed 5 to 6
  * ARM
  * Standard bitdepth
  * speed 5: +31%
  * speed 4: +2%
  * speed 3: +9%
  * speed 2: +157%
  * High bitdepth
  * speed 5: +85%
  * RTC speedups
  * Screen content mode
  * 15% IC speedup for speeds 6-8
  * ARM: 7% for speed 9, 3% for speed 10
  * Temporal layers video mode
  * 7% speedup for 3 temporal layers on VGA/HD, for speed 10
  * Single layer video
  * x86: 2% IC speedup for speeds 7-10
  * ARM: 2-4% speedup across speeds 5-10
  - Bug Fixes
  * aomedia:3261 Assertion failed when encoding av1 with film grain and
    '--monochrome' flag
  * aomedia:3276 ensure all allocations are checked (partial fix)
  * aomedia:3451 The libaom library calls exit()
  * aomedia:3450 enable -Wshadow for C++ sources
  * aomedia:3449 Test Seg Faults After
    b459af3e345be402db052a143fcc5383d4b74cbd
  * aomedia:3416 prune unused symbols / restrict symbol visibility
  * aomedia:3443 Jenkins failure:
    UninstantiatedParameterizedTestSuite&lt;EstimateNoiseTest&gt;
  * aomedia:3434 realtime failures with CONFIG_BITSTREAM_DEBUG=1
  * aomedia:3433 DeltaqModeTest crash w/row_mt=0
  * aomedia:3429 Encoder crash when turn on both ExternalResize and
    g_threads &gt; 2
  * aomedia:3438 Build failure with
    `-DSANITIZE=address -DBUILD_SHARED_LIBS=ON` when using clang.
  * aomedia:3435 Block artifacts when scrolling with AV1 in screen sharing
    scenarios
  * aomedia:3170 vmaf tune presets produce extreme glitches in one scene
  * aomedia:3401 Building shared libaom with MSVC results in a race condition
    with the export library
  * aomedia:3420 Floating point exception in av1_tpl_get_frame_importance()
  * aomedia:3424 heap-buffer-overflow in ScaleFilterCols_16_C() (SIGABRT)
  * aomedia:3417 examples/svc_encoder_rtc.c is using internal macros and
    functions
  * aomedia:3372 SEGV in assign_frame_buffer_p av1_common_int.h
  * aomedia:3130 'cpu-features.h' file not found on Android NDK 22
  * aomedia:3415 Encoder/decoder mismatch for svc_encoder_rtc running
    1 SL 3 TL
  * aomedia:3412 Lossless Mode Fails Loopback Bit Test
  * aomedia:3409 The use of AV1_VAR_OFFS in av1/encoder/var_based_part.c is
    incorrect for high bit depths
  * aomedia:3403 test_libaom fails with error message
    "feenableexcept() failed" on Linux arm
  * aomedia:3370 Random color block at fast motion area
  * aomedia:3393 Assertion failure in av1_convolve_2d_sr_c()
  * aomedia:3392 Strong artifacting for high bit-depth real-time
  * aomedia:3376 aomenc --threads=10 --deltaq-mode=3 crashes after
    "Allintra: multi-threading of calculating differential contrast"
  * aomedia:3380 Crashes and ASan and TSan errors in deltaq-mode=3
    multithreading code
  * chromium:1410766 heap-buffer-overflow in aom_yv12_copy_v_c
  * Cannot set level via AV1E_SET_TARGET_SEQ_LEVEL_IDX
  * Encoding failure due to the use of loop restoration with unintended use of
    lossless mode.
  * Signed integer overflow in scan_past_frames
  * Signed integer overflow in update_a_sep_sym
  * Flickering in AV1 1440p/2160p HDR transcodes
  * Fixed artifacts with screen share at encoder speed 10
  * Fixed prediction setup for IDTX
- Use system libraries instead of vendored ones
  * system-gtest.patch
  * system-yuv.patch
- Enable debuginfo also on modules written in assembly
- Enable building PowerPC-specific optimizations
- Enable Neon optimized code on ARM and fix runtime CPU detection
- Fix missing images in documentation</changelog>
  <changelog author="Bruno Pitrus &lt;brunopitrus@hotmail.com&gt;" date="1693915200">- Split docs to multibuild to avoid dependency cycle</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1701777600">- Update to version 3.7.1:
  * Bug Fixes:
  - aomedia:3349: heap overflow when increasing resolution
  - aomedia:3478: GCC 12.2.0 emits a -Wstringop-overflow warning
    on aom/av1/encoder/motion_search_facade.c
  - aomedia:3489: Detect encoder and image high bit depth
    mismatch
  - aomedia:3491: heap-buffer-overflow on frame size change
  - b/303023614:  Segfault at encoding time for high bit depth
    images
- Switch buildtime compression to zst.</changelog>
  <changelog author="Enrico Belleri &lt;kilgore.trout@idesmi.eu&gt;" date="1720267200">- Update to version 3.7.2:
  * aomedia:3520: get_cubic_kernel_dbl: Assertion `0 &lt;= x &amp;&amp; x &lt; 1'
    failed.
  * aomedia:3526: alloc_compressor_data() is called during every
    aom_codec_control() call on the encoder. Note that this partially
    reverts the fix for bug aomedia:3349.
  * b/310457427 and b/310766628: Only use rec_sse in CBR mode.</changelog>
  <changelog author="Enrico Belleri &lt;kilgore.trout@idesmi.eu&gt;" date="1724587200">- Exclude third_party from obscpio</changelog>
</package>
<package pkgid="a7836c6f7db4bfdef9cf3c2651426b85a456ee6a1b0ab056f7fb4bcf052d124205fe44917dc2d9d649850af16a4a95a82bf7fdf1d2752ae74ff89f3acc8a95a0" name="aom-tools-debuginfo" arch="i586">
  <version epoch="0" ver="3.9.1" rel="1.1"/>
  <changelog author="Ferdinand Thiessen &lt;rpm@fthiessen.de&gt;" date="1625227200">- Update to version 3.1.1
  * Fix vmaf model initialization error when not set to tune=vmaf
  * Fix consistent crash on near-static screen content, keyframe
    related
  * Fix tune=butteraugli mode
- Disable NEON on arm where not available.</changelog>
  <changelog author="pgajdos@suse.com" date="1629892800">- Update to version 3.1.2:
  * Update AUTHORS,CHANGELOG,CMakeLists.txt for v3.1.2
  * Avoid chroma resampling for 420mpeg2 input
  * Check array has two elements before using index 1
  * Fix DecodeScalabilityTest failure in realtime only
  * Store temporal_id and spatial_id of decoded frame
  * exports.cmake: use APPLE and WIN32 and use def for mingw-w64</changelog>
  <changelog author="pgajdos@suse.com" date="1629892801">- security update
- added patches
  fix CVE-2021-30475 [bsc#1189497], Buffer overflow in aom_dsp/noise_model.c
  + libaom-CVE-2021-30475.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1631188800">- security update
- added patches
  fix CVE-2021-30474 [bsc#1186799], aom_dsp/grain_table.c in libaom in AOMedia before 2021-03-30 has a use-after-free.
  + libaom-CVE-2021-30474.patch</changelog>
  <changelog author="gmbr3@opensuse.org" date="1633694400">- Update to version 3.1.3:
  * Update CHANGELOG for v3.1.3-rc2
  * Detect chroma subsampling more directly
  * Detect chroma subsampling more directly
  * image2yuvconfig() should calculate uv_crop_width
  * aom/aom_encoder.h: remove configure option reference
  * aom_encoder.h: fix rc_overshoot_pct range
  * Update AUTHORS,CHANGELOG,CMakeLists.txt for v3.1.3
  * aom_install: don't exclude msvc from install
  * aom_install: use relpath for install
  * aom_install: Install lib dlls to bindir</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1634126400">- fix service data</changelog>
  <changelog author="bjorn.lie@gmail.com" date="1634299200">- Update to version 3.2.0:
  * This release includes compression efficiency and perceptual
    quality improvements, speedup and memory optimizations, as well
    as some new features.
  * New Features:
    + Introduced speeds 7, 8, and 9 for all intra mode.
    + Introduced speed 10 for real time mode.
    + Introduced an API that allows external partition decisions.
    + SVC: added support for compound prediction.
    + SVC: added support for fixed SVC modes.
  * Compression Efficiency Improvements:
    + Intra-mode search improvement.
    + Improved real time (RT) mode BDrate savings by ~5% (RT speed
    5) and ~12% (RT speed 6). The improvement was measured on the
    video conference set.
    + Improved real time mode for nonrd path (speed 7, 8, 9):
    BDrate gains of ~3-5%.
    + Rate control and RD adjustments based on ML research in VP9.
    Gains of ~0.5-1.0% for HD.
  * Perceptual Quality Improvements:
    + Added a new mode --deltaq-mode=3 to improve perceptual
    quality based on a differential contrast model for still
    images.
    + Added a new mode –deltaq-mode=4 to improve perceptual quality
    based on user rated cq_level data set for still images.
    + Weighting of some intra mode and partition size choices to
    better manage and retain texture.
  * Speedup and Memory Optimizations:
    + Further improved 2-pass good quality encoder speed:
    . Speed 2 speedup: 18%
    . Speed 3 speedup: 22%
    . Speed 4 speedup: 37%
    . Speed 5 speedup: 30%
    . Speed 6 speedup: 20%
    + Optimized the real time encoder (measured on the video
    conference set):
    . RT speed 5 speedup: 110%
    . RT speed 6 speedup: 77%
  * Bug Fixes
    + Issue 3069: Fix one-pass mode keyframe placement off-by-one
    error.
    + Issue 3156: Fix a bug in av1_quantize_lp AVX2 optimization.
- Drop libaom-CVE-2021-30474.patch: Fixed upstream.
- Drop libaom-CVE-2021-30475.patch: Fixed upstream.
- Remove changesgenerate option from _service file, use data from
  CHANGELOG to fill .changes instead as it it much nicer and human
  readable than just a list of commit messages.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1645185600">- Update to version 3.3.0:
  * This release includes compression efficiency and perceptual
    quality improvements, speedup and memory optimizations, some
    new features, and several bug fixes.
  * New Features
  - AV1 RT: Introducing CDEF search level 5
  - Changed real time speed 4 to behave the same as real time
    speed 5
  - Add --deltaq-strength
  - rtc: Allow scene-change and overshoot detection for svc
  - rtc: Intra-only frame for svc
  - AV1 RT: Option 2 for codec control AV1E_SET_ENABLE_CDEF to
    disable CDEF on non-ref frames
  - New codec controls AV1E_SET_LOOPFILTER_CONTROL and
    AOME_GET_LOOPFILTER_LEVEL
  - Improvements to three pass encoding
  * Compression Efficiency Improvements: Overall compression gains:
    0.6%
  * Perceptual Quality Improvements
  - Improves the perceptual quality of high QP encoding for
    delta-q mode 4
  - Auto select noise synthesis level for all intra
  * Speedup and Memory Optimizations
  - Added many SSE2 optimizations.
  - Good quality 2-pass encoder speedups:
    o Speed 2: 9%
    o Speed 3: 12.5%
    o Speed 4: 8%
    o Speed 5: 3%
    o Speed 6: 4%
  - Real time mode encoder speedups:
    o Speed 5: 2.6% BDRate gain, 4% speedup
    o Speed 6: 3.5% BDRate gain, 4% speedup
    o Speed 9: 1% BDRate gain, 3% speedup
    o Speed 10: 3% BDRate gain, neutral speedup
  - All intra encoding speedups (AVIF):
    o Single thread - speed 6: 8%
    o Single thread - speed 9: 15%
    o Multi thread(8) - speed 6: 14%
    o Multi thread(8) - speed 9: 34%
  * Bug Fixes
  - Issue 3163: Segmentation fault when using
  - -enable-keyframe-filtering=2
  - Issue 2436: Integer overflow in av1_warp_affine_c()
  - Issue 3226: armv7 build failure due to gcc-11
  - Issue 3195: Bug report on libaom (AddressSanitizer:
    heap-buffer-overflow)
  - Issue 3191: Bug report on libaom (AddressSanitizer: SEGV on
    unknown address)
- Drop libaom-devel Requires from libaom-devel-doc sub-package: We
  do not need the devel package to be able to read the devel
  documentation.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1662292800">- Update to version 3.4.0:
  * This release includes compression efficiency and perceptual
    quality improvements, speedup and memory optimizations, and
    some new features. There are no ABI or API breaking changes in
    this release.
  * New Features:
  - New --dist-metric flag with "qm-psnr" value to use
    quantization matrices in the distortion computation for RD
    search. The default value is "psnr".
  - New command line option "--auto-intra-tools-off=1" to make
    all-intra encoding faster for high bit rate under
    "--deltaq-mode=3" mode.
  - New rate control library aom_av1_rc for real-time hardware
    encoders. Supports CBR for both one spatial layer and SVC.
  - New image format AOM_IMG_FMT_NV12 can be used as input to the
    encoder. The presence of AOM_IMG_FMT_NV12 can be detected at
    compile time by checking if the macro AOM_HAVE_IMG_FMT_NV12
    is defined.
  - New codec controls for the encoder:
    o AV1E_SET_AUTO_INTRA_TOOLS_OFF. Only in effect if
  - -deltaq-mode=3.
    o AV1E_SET_RTC_EXTERNAL_RC
    o AV1E_SET_FP_MT. Only supported if libaom is built with
  - DCONFIG_FRAME_PARALLEL_ENCODE=1.
    o AV1E_GET_TARGET_SEQ_LEVEL_IDX
  - New key-value pairs for the key-value API:
    o --auto-intra-tools-off=0 (default) or 1. Only in effect if
  - -deltaq-mode=3.
    o --strict-level-conformance=0 (default) or 1
    o --fp-mt=0 (default) or 1. Only supported if libaom is built
    with -DCONFIG_FRAME_PARALLEL_ENCODE=1.
  - New aomenc options (not supported by the key-value API):
    o --nv12
  * Compression Efficiency Improvements:
  - Correctly calculate SSE for high bitdepth in skip mode, 0.2%
    to 0.6% coding gain.
  - RTC at speed 9/10: BD-rate gain of ~4/5%
  - RTC screen content coding: many improvements for real-time
    screen at speed 10 (quality, speedup, and rate control), up
    to high resolutions (1080p).
  - RTC-SVC: fixes to make intra-only frames work for spatial
    layers.
  - RTC-SVC: quality improvements for temporal layers.
  - AV1 RT: A new passive rate control strategy for screen
    content, an average of 7.5% coding gain, with some clips of
    20+%. The feature is turned off by default due to higher bit
    rate variation.
  * Perceptual Quality Improvements:
  - RTC: Visual quality improvements for high speeds (9/10)
  - Improvements in coding quality for all intra mode
  * Speedup and Memory Optimizations:
  - ~10% speedup in good quality mode encoding.
  - ~7% heap memory reduction in good quality encoding mode for
    speed 5 and 6.
  - Ongoing improvements to intra-frame encoding performance on
    Arm
  - Faster encoding speed for "--deltaq-mode=3" mode.
  - ~10% speedup for speed 5/6, ~15% speedup for speed 7/8, and
    ~10% speedup for speed 9/10 in real time encoding mode
  - ~20% heap memory reduction in still-picture encoding mode for
    360p-720p resolutions with multiple threads
  - ~13% speedup for speed 6 and ~12% speedup for speed 9 in
    still-picture encoding mode.
  - Optimizations to improve multi-thread efficiency for
    still-picture encoding mode.
  * Bug Fixes:
  - b/204460717: README.md: replace master with main
  - b/210677928: libaom disable_order is surprising for
    max_reference_frames=3
  - b/222461449: -DCONFIG_TUNE_BUTTERAUGLI=1 broken
  - b/227207606: write_greyscale writes incorrect chroma in
    highbd mode
  - b/229955363: Integer-overflow in linsolve_wiener
  - https://crbug.com/aomedia/2032
  - https://crbug.com/aomedia/2397
  - https://crbug.com/aomedia/2563
  - https://crbug.com/aomedia/2815
  - https://crbug.com/aomedia/3009
  - https://crbug.com/aomedia/3018
  - https://crbug.com/aomedia/3045
  - https://crbug.com/aomedia/3101
  - https://crbug.com/aomedia/3130
  - https://crbug.com/aomedia/3173
  - https://crbug.com/aomedia/3184
  - https://crbug.com/aomedia/3187
  - https://crbug.com/aomedia/3190
  - https://crbug.com/aomedia/3195
  - https://crbug.com/aomedia/3197
  - https://crbug.com/aomedia/3201
  - https://crbug.com/aomedia/3202
  - https://crbug.com/aomedia/3204
  - https://crbug.com/aomedia/3205
  - https://crbug.com/aomedia/3207
  - https://crbug.com/aomedia/3208
  - https://crbug.com/aomedia/3209
  - https://crbug.com/aomedia/3213
  - https://crbug.com/aomedia/3214
  - https://crbug.com/aomedia/3219
  - https://crbug.com/aomedia/3222
  - https://crbug.com/aomedia/3223
  - https://crbug.com/aomedia/3225
  - https://crbug.com/aomedia/3226
  - https://crbug.com/aomedia/3228
  - https://crbug.com/aomedia/3232
  - https://crbug.com/aomedia/3236
  - https://crbug.com/aomedia/3237
  - https://crbug.com/aomedia/3238
  - https://crbug.com/aomedia/3240
  - https://crbug.com/aomedia/3243
  - https://crbug.com/aomedia/3244
  - https://crbug.com/aomedia/3246
  - https://crbug.com/aomedia/3248
  - https://crbug.com/aomedia/3250
  - https://crbug.com/aomedia/3251
  - https://crbug.com/aomedia/3252
  - https://crbug.com/aomedia/3255
  - https://crbug.com/aomedia/3257
  - https://crbug.com/aomedia/3259
  - https://crbug.com/aomedia/3260
  - https://crbug.com/aomedia/3267
  - https://crbug.com/aomedia/3268
  - https://crbug.com/aomedia/3269
  - https://crbug.com/aomedia/3276
  - https://crbug.com/aomedia/3278
  - https://crbug.com/chromium/1290068
  - https://crbug.com/chromium/1303237
  - https://crbug.com/chromium/1304990
  - https://crbug.com/chromium/1321141
  - https://crbug.com/chromium/1321388
  - https://crbug.com/oss-fuzz/44846
  - https://crbug.com/oss-fuzz/44856
  - https://crbug.com/oss-fuzz/44862
  - https://crbug.com/oss-fuzz/44904
  - https://crbug.com/oss-fuzz/45056</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1663848000">- Update to version 3.5.0:
  * This release is ABI compatible with the last one, including
    speedup and memory optimizations, and new APIs and features.
  * New Features
  - Support for frame parallel encode for larger number of
    threads. --fp-mt flag is available for all build
    configurations.
  - New codec control AV1E_GET_NUM_OPERATING_POINTS
  * Speedup and Memory Optimizations
  - Speed-up multithreaded encoding for good quality mode for
    larger number of threads through frame parallel encoding:
    . 30-34% encode time reduction for 1080p, 16 threads, 1x1
    tile configuration (tile_rows x tile_columns)
    . 18-28% encode time reduction for 1080p, 16 threads, 2x4
    tile configuration
    . 18-20% encode time reduction for 2160p, 32 threads, 2x4
    tile configuration
  - 16-20% speed-up for speed=6 to 8 in still-picture encoding
    mode
  - 5-6% heap memory reduction for speed=6 to 10 in real-time
    encoding mode
  - Improvements to the speed for speed=7, 8 in real-time
    encoding mode
  - Improvements to the speed for speed=9, 10 in real-time screen
    encoding mode
  - Optimizations to improve multi-thread efficiency in real-time
    encoding mode
  - 10-15% speed up for SVC with temporal layers
  - SIMD optimizations:
    . Improve av1_quantize_fp_32x32_neon() 1.05x to 1.24x faster
    . Add aom_highbd_quantize_b{,_32x32,_64x64}_adaptive_neon()
    3.15x to 5.6x faster than "C"
    . Improve av1_quantize_fp_64x64_neon() 1.17x to 1.66x faster
    . Add aom_quantize_b_avx2() 1.4x to 1.7x faster than
    aom_quantize_b_avx()
    . Add aom_quantize_b_32x32_avx2() 1.4x to 2.3x faster than
    aom_quantize_b_32x32_avx()
    . Add aom_quantize_b_64x64_avx2() 2.0x to 2.4x faster than
    aom_quantize_b_64x64_ssse3()
    . Add aom_highbd_quantize_b_32x32_avx2() 9.0x to 10.5x faster
    than aom_highbd_quantize_b_32x32_c()
    . Add aom_highbd_quantize_b_64x64_avx2() 7.3x to 9.7x faster
    than aom_highbd_quantize_b_64x64_c()
    . Improve aom_highbd_quantize_b_avx2() 1.07x to 1.20x faster
    . Improve av1_quantize_fp_avx2() 1.13x to 1.49x faster
    . Improve av1_quantize_fp_32x32_avx2() 1.07x to 1.54x faster
    . Improve av1_quantize_fp_64x64_avx2()  1.03x to 1.25x faster
    . Improve av1_quantize_lp_avx2() 1.07x to 1.16x faster
  * Bug fixes including but not limited to
  - aomedia:3206 Assert that skip_width &gt; 0 for deconvolve
    function
  - aomedia:3278 row_mt enc: Delay top-right sync when intraBC is
    enabled
  - aomedia:3282 blend_a64_*_neon: fix bus error in armv7
  - aomedia:3283 FRAME_PARALLEL: Propagate border size to all
    cpis
  - aomedia:3283 RESIZE_MODE: Fix incorrect strides being used
    for motion search
  - aomedia:3286 rtc-svc: Fix to dynamic_enable spatial layers
  - aomedia:3289 rtc-screen: Fix to skipping inter-mode test in
    nonrd
  - aomedia:3289 rtc-screen: Fix for skip newmv on flat blocks
  - aomedia:3299 Fix build failure with CONFIG_TUNE_VMAF=1
  - aomedia:3296 Fix the conflict --enable-tx-size-search=0 with
    nonrd mode --enable-tx-size-search will be ignored in non-rd
    pick mode
  - aomedia:3304 Fix off-by-one error of max w/h in
    validate_config
  - aomedia:3306 Do not use pthread_setname_np on GNU/Hurd
  - aomedia:3325 row-multithreading produces invalid bitstream in
    some cases
  - chromium:1346938, chromium:1338114
  - compiler_flags.cmake: fix flag detection w/cmake 3.17-3.18.2
  - tools/*.py: update to python3
  - aom_configure.cmake: detect PIE and set CONFIG_PIC
  - test/simd_cmp_impl: use explicit types w/CompareSimd*
  - rtc: Fix to disable segm for aq-mode=3
  - rtc: Fix to color_sensitivity in variance partition
  - rtc-screen: Fix bsize in model rd computation for intra
    chroma
  - Fixes to ensure the correct behavior of the encoder
    algorithms (like segmentation, computation of statistics,
    etc.)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1675857600">- Update to version 3.6.0:
  * This release includes compression efficiency and perceptual
    quality improvements, speedup and memory optimizations, and
    some new features. This release is ABI compatible with the last
    release.
  * New Features:
  - New values 20-27 (corresponding to levels 7.0-7.3 and
    8.0-8.3) for the encoder control
    AV1E_SET_TARGET_SEQ_LEVEL_IDX (note that the proposal to add
    the new levels are still in draft status). The original
    special value 24 (keep level stats only for level monitoring)
    is renumbered as 32.
  - New encoder control AV1E_SET_SKIP_POSTPROC_FILTERING to skip
    the application of post-processing filters on reconstructed
    frame in all intra mode.
  - New encoder option "kf-max-pyr-height": Maximum height of
    pyramid structure used for the GOP starting with a key frame
    (-1 to 5).
  - Make SVC work for screen content.
  - Rate control improvements to reduce frame-size spikes for
    screen content coding.
  - RISC-V architecture support with gcc toolchain.
  * Compression Efficiency Improvements:
  - Peak compression efficiency in VOD setting is improved by 1%.
  - 0.7% - 2.2% RTC encoding BDrate gains for real time speed 8
    to 10.
  - 15% RTC encoding BDrate gains for screen content speed 10.
  * Perceptual Quality Improvements:
  - Resolved a visual quality issue that was reported for high
    resolution clips (2K) for speed 4 and above in VOD use case.
  - Visual quality improvements to screen content coding.
  - Quality improvements to temporal layer RTC coding.
  * Speedup and Memory Optimizations:
  - RTC single-thread encoder speedup:
    . ~6% instruction count reduction for speed 5 and 6.
    . ~15% instruction count reduction for speed 7.
    . ~10% instruction count reduction for speed 8 to 10 (&gt;=360p
    resolutions).
  - RTC multi-thread encoder speedup (beyond single-thread
    speedup):
    . 5-8% encode time reduction for speed 7 to 10.
  - RTC screen-content encoder speedup:
    . 11% instruction count reduction for speed 9 and 10 (&gt;=720p
    resolutions).
  - ~5% reduction in heap memory requirements for RTC, speed 6 to
    10.
  * AVIF:
    . 4-5% speedup for speed 9 in still-picture encoding mode.
    . 3-4% heap memory reduction in still-picture encoding mode
    for 360p-720p resolutions with multiple threads.
  * Bug Fixes:
  - Added a workaround for an AV1 specification bug which makes
    TRANSLATION type global motion models unusable.
  - Fixed AddressSanitizer global-buffer-overflow errors in
    av1/encoder/arm/neon/av1_fwd_txfm2d_neon.c.
  - Fixed AddressSanitizer heap-buffer-overflow error in
    av1_wiener_convolve_add_src_neon().
  - chromium:1393384 Avoid scene detection on spatial resize.
  - aomedia:3308 Remove color artifacts under high motion.
  - aomedia:3310 Avoid out of memory failures with Visual Studio
    2017, 2019, and 2022 for Win32 x86 builds.
  - aomedia:3346 Make SVC work properly for screen content.
  - aomedia:3348 Fix a bug where an uninitialized search_site is
    used.
  - aomedia:3365 Work around what seems like a Visual Studio 2022
    compiler optimization bug.
  - aomedia:3369 Incorrect PSNR values reported by libaom for
    12-bit encode.
- Modernize spec, use cmake_build and ldconfig_scriptlets macros.</changelog>
  <changelog author="Frederic Crozat &lt;fcrozat@suse.com&gt;" date="1681992000">- Fix license tag to BSD-2-Clause and AOMPL-1.0.</changelog>
  <changelog author="Frederic Crozat &lt;fcrozat@suse.com&gt;" date="1683028800">- Revert to BSD-2-Clause licence tag to only use SPDX valid
  license tag.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1683720000">- Update to version 3.6.1:
  * aomedia:2871: Guard the support of the 7.x and 8.x levels for
    AV1 under the CONFIG_CWG_C013 config flag, and only output the
    7.x and 8.x levels when explicitly requested.
  * aomedia:3382: Choose sb_size by ppi instead of svc.
  * aomedia:3384: Fix fullpel search limits.
  * aomedia:3388: Replace left shift of xq_active by
    multiplication.
  * aomedia:3389: Fix MV clamping in av1_mv_pred.
  * aomedia:3390: set_ld_layer_depth: cap max_layer_depth to
    MAX_ARF_LAYERS.
  * aomedia:3418: Fix MV clamping in av1_int_pro_motion_estimation.
  * aomedia:3429: Move lpf thread data init to
    lpf_pipeline_mt_init().
  * b:266719111: Fix undefined behavior in Arm Neon code.
  * b:269840681: nonrd_opt: align scan tables.
  * rtc: Fix is_key_frame setting in variance partition.
  * Build: Fix build with clang-cl and Visual Studio.</changelog>
  <changelog author="Bruno Pitrus &lt;brunopitrus@hotmail.com&gt;" date="1693569600">- New upstream release 3.7.0
  - New Features
  * New codec controls:
  * AV1E_SET_QUANTIZER_ONE_PASS: Set quantizer for each frame.
  * AV1E_ENABLE_RATE_GUIDE_DELTAQ: enable the rate distribution guided delta
    quantization in all intra mode. The "enable-rate-guide-deltaq" option is
    added for this control.
  * AV1E_SET_RATE_DISTRIBUTION_INFO: set the input file for rate
    distribution used in all intra mode. The "rate-distribution-info" option
    is added for this control.
  * AV1E_GET_LUMA_CDEF_STRENGTH
  * AV1E_SET_BITRATE_ONE_PASS_CBR
  * AOM_SCALING_MODE is extended to include 2/3 and 1/3 scaling.
  * aom_tune_metric is extended to include AOM_TUNE_VMAF_SALIENCY_MAP.
    The "tune" option is extended to include "vmaf_saliency_map".
  * SVC example encoder svc_encoder_rtc is able to use the rate control
    library.
  * Loopfilter level and CDEF filter level is supported by RTC rate control
    library.
  * New speed (--cpu-used) 11, intended for RTC screen sharing, added for
    faster encoding with ~3% bdrate loss with 16% IC (instruction count)
    speedup compared to speed 10.
  - Compression Efficiency Improvements
  * Improved VoD encoding performance
  * 0.1-0.6% BDrate gains for encoding speeds 2 to 6
  * Rate control accuracy improvement in VBR mode
  * RTC encoding improvements
  * Screen content mode: 10-19% BDrate gains for speeds 6 - 10
  * Temporal layers video mode, for speed 10:
  * 2 temporal layers on low resolutions: 13-15% BDrate gain
  * 3 temporal layers on VGA/HD: 3-4% BDrate gain
  - Perceptual Quality Improvements
  * Fixed multiple block and color artifacts for RTC screen content by
  * Incorporating color into RD cost for IDTX
  * Reducing thresholds for palette mode in non RD mode
  * Allowing more palette mode testing
  * Improved color sensitivity for altref in non-RD mode.
  * Reduced video flickering for temporal layer encoding.
  - Speedup and Memory Optimizations
  * Speed up the VoD encoder
  * 2-5% for encoding speed 2 to 4
  * 9-15% for encoding speed 5 to 6
  * ARM
  * Standard bitdepth
  * speed 5: +31%
  * speed 4: +2%
  * speed 3: +9%
  * speed 2: +157%
  * High bitdepth
  * speed 5: +85%
  * RTC speedups
  * Screen content mode
  * 15% IC speedup for speeds 6-8
  * ARM: 7% for speed 9, 3% for speed 10
  * Temporal layers video mode
  * 7% speedup for 3 temporal layers on VGA/HD, for speed 10
  * Single layer video
  * x86: 2% IC speedup for speeds 7-10
  * ARM: 2-4% speedup across speeds 5-10
  - Bug Fixes
  * aomedia:3261 Assertion failed when encoding av1 with film grain and
    '--monochrome' flag
  * aomedia:3276 ensure all allocations are checked (partial fix)
  * aomedia:3451 The libaom library calls exit()
  * aomedia:3450 enable -Wshadow for C++ sources
  * aomedia:3449 Test Seg Faults After
    b459af3e345be402db052a143fcc5383d4b74cbd
  * aomedia:3416 prune unused symbols / restrict symbol visibility
  * aomedia:3443 Jenkins failure:
    UninstantiatedParameterizedTestSuite&lt;EstimateNoiseTest&gt;
  * aomedia:3434 realtime failures with CONFIG_BITSTREAM_DEBUG=1
  * aomedia:3433 DeltaqModeTest crash w/row_mt=0
  * aomedia:3429 Encoder crash when turn on both ExternalResize and
    g_threads &gt; 2
  * aomedia:3438 Build failure with
    `-DSANITIZE=address -DBUILD_SHARED_LIBS=ON` when using clang.
  * aomedia:3435 Block artifacts when scrolling with AV1 in screen sharing
    scenarios
  * aomedia:3170 vmaf tune presets produce extreme glitches in one scene
  * aomedia:3401 Building shared libaom with MSVC results in a race condition
    with the export library
  * aomedia:3420 Floating point exception in av1_tpl_get_frame_importance()
  * aomedia:3424 heap-buffer-overflow in ScaleFilterCols_16_C() (SIGABRT)
  * aomedia:3417 examples/svc_encoder_rtc.c is using internal macros and
    functions
  * aomedia:3372 SEGV in assign_frame_buffer_p av1_common_int.h
  * aomedia:3130 'cpu-features.h' file not found on Android NDK 22
  * aomedia:3415 Encoder/decoder mismatch for svc_encoder_rtc running
    1 SL 3 TL
  * aomedia:3412 Lossless Mode Fails Loopback Bit Test
  * aomedia:3409 The use of AV1_VAR_OFFS in av1/encoder/var_based_part.c is
    incorrect for high bit depths
  * aomedia:3403 test_libaom fails with error message
    "feenableexcept() failed" on Linux arm
  * aomedia:3370 Random color block at fast motion area
  * aomedia:3393 Assertion failure in av1_convolve_2d_sr_c()
  * aomedia:3392 Strong artifacting for high bit-depth real-time
  * aomedia:3376 aomenc --threads=10 --deltaq-mode=3 crashes after
    "Allintra: multi-threading of calculating differential contrast"
  * aomedia:3380 Crashes and ASan and TSan errors in deltaq-mode=3
    multithreading code
  * chromium:1410766 heap-buffer-overflow in aom_yv12_copy_v_c
  * Cannot set level via AV1E_SET_TARGET_SEQ_LEVEL_IDX
  * Encoding failure due to the use of loop restoration with unintended use of
    lossless mode.
  * Signed integer overflow in scan_past_frames
  * Signed integer overflow in update_a_sep_sym
  * Flickering in AV1 1440p/2160p HDR transcodes
  * Fixed artifacts with screen share at encoder speed 10
  * Fixed prediction setup for IDTX
- Use system libraries instead of vendored ones
  * system-gtest.patch
  * system-yuv.patch
- Enable debuginfo also on modules written in assembly
- Enable building PowerPC-specific optimizations
- Enable Neon optimized code on ARM and fix runtime CPU detection
- Fix missing images in documentation</changelog>
  <changelog author="Bruno Pitrus &lt;brunopitrus@hotmail.com&gt;" date="1693915200">- Split docs to multibuild to avoid dependency cycle</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1701777600">- Update to version 3.7.1:
  * Bug Fixes:
  - aomedia:3349: heap overflow when increasing resolution
  - aomedia:3478: GCC 12.2.0 emits a -Wstringop-overflow warning
    on aom/av1/encoder/motion_search_facade.c
  - aomedia:3489: Detect encoder and image high bit depth
    mismatch
  - aomedia:3491: heap-buffer-overflow on frame size change
  - b/303023614:  Segfault at encoding time for high bit depth
    images
- Switch buildtime compression to zst.</changelog>
  <changelog author="Enrico Belleri &lt;kilgore.trout@idesmi.eu&gt;" date="1720267200">- Update to version 3.7.2:
  * aomedia:3520: get_cubic_kernel_dbl: Assertion `0 &lt;= x &amp;&amp; x &lt; 1'
    failed.
  * aomedia:3526: alloc_compressor_data() is called during every
    aom_codec_control() call on the encoder. Note that this partially
    reverts the fix for bug aomedia:3349.
  * b/310457427 and b/310766628: Only use rec_sse in CBR mode.</changelog>
  <changelog author="Enrico Belleri &lt;kilgore.trout@idesmi.eu&gt;" date="1724587200">- Exclude third_party from obscpio</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1726488000">- Update to version 3.9.1:
  * This release includes new codec interfaces, compression
    efficiency and perceptual improvements, speedup for RTC for both
    video and screen content, and many bug fixes.
- Please see https://aomedia.googlesource.com/aom/+/refs/tags/v3.9.1/CHANGELOG
  for detailed changes since version 3.7.2
- Rebase patches with quilt.</changelog>
</package>
<package pkgid="59389a4ef808cdf8c69e07c37d16a0bf82c9795936093a3e91294741b040ecf89d2d0148fb53f99918a854aa6fc24623bcc6b8257cb46dd0adb66e8cd3807b1f" name="aom-tools-debuginfo" arch="x86_64">
  <version epoch="0" ver="3.9.1" rel="1.1"/>
  <changelog author="Ferdinand Thiessen &lt;rpm@fthiessen.de&gt;" date="1625227200">- Update to version 3.1.1
  * Fix vmaf model initialization error when not set to tune=vmaf
  * Fix consistent crash on near-static screen content, keyframe
    related
  * Fix tune=butteraugli mode
- Disable NEON on arm where not available.</changelog>
  <changelog author="pgajdos@suse.com" date="1629892800">- Update to version 3.1.2:
  * Update AUTHORS,CHANGELOG,CMakeLists.txt for v3.1.2
  * Avoid chroma resampling for 420mpeg2 input
  * Check array has two elements before using index 1
  * Fix DecodeScalabilityTest failure in realtime only
  * Store temporal_id and spatial_id of decoded frame
  * exports.cmake: use APPLE and WIN32 and use def for mingw-w64</changelog>
  <changelog author="pgajdos@suse.com" date="1629892801">- security update
- added patches
  fix CVE-2021-30475 [bsc#1189497], Buffer overflow in aom_dsp/noise_model.c
  + libaom-CVE-2021-30475.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1631188800">- security update
- added patches
  fix CVE-2021-30474 [bsc#1186799], aom_dsp/grain_table.c in libaom in AOMedia before 2021-03-30 has a use-after-free.
  + libaom-CVE-2021-30474.patch</changelog>
  <changelog author="gmbr3@opensuse.org" date="1633694400">- Update to version 3.1.3:
  * Update CHANGELOG for v3.1.3-rc2
  * Detect chroma subsampling more directly
  * Detect chroma subsampling more directly
  * image2yuvconfig() should calculate uv_crop_width
  * aom/aom_encoder.h: remove configure option reference
  * aom_encoder.h: fix rc_overshoot_pct range
  * Update AUTHORS,CHANGELOG,CMakeLists.txt for v3.1.3
  * aom_install: don't exclude msvc from install
  * aom_install: use relpath for install
  * aom_install: Install lib dlls to bindir</changelog>
  <changelog author="Callum Farmer &lt;gmbr3@opensuse.org&gt;" date="1634126400">- fix service data</changelog>
  <changelog author="bjorn.lie@gmail.com" date="1634299200">- Update to version 3.2.0:
  * This release includes compression efficiency and perceptual
    quality improvements, speedup and memory optimizations, as well
    as some new features.
  * New Features:
    + Introduced speeds 7, 8, and 9 for all intra mode.
    + Introduced speed 10 for real time mode.
    + Introduced an API that allows external partition decisions.
    + SVC: added support for compound prediction.
    + SVC: added support for fixed SVC modes.
  * Compression Efficiency Improvements:
    + Intra-mode search improvement.
    + Improved real time (RT) mode BDrate savings by ~5% (RT speed
    5) and ~12% (RT speed 6). The improvement was measured on the
    video conference set.
    + Improved real time mode for nonrd path (speed 7, 8, 9):
    BDrate gains of ~3-5%.
    + Rate control and RD adjustments based on ML research in VP9.
    Gains of ~0.5-1.0% for HD.
  * Perceptual Quality Improvements:
    + Added a new mode --deltaq-mode=3 to improve perceptual
    quality based on a differential contrast model for still
    images.
    + Added a new mode –deltaq-mode=4 to improve perceptual quality
    based on user rated cq_level data set for still images.
    + Weighting of some intra mode and partition size choices to
    better manage and retain texture.
  * Speedup and Memory Optimizations:
    + Further improved 2-pass good quality encoder speed:
    . Speed 2 speedup: 18%
    . Speed 3 speedup: 22%
    . Speed 4 speedup: 37%
    . Speed 5 speedup: 30%
    . Speed 6 speedup: 20%
    + Optimized the real time encoder (measured on the video
    conference set):
    . RT speed 5 speedup: 110%
    . RT speed 6 speedup: 77%
  * Bug Fixes
    + Issue 3069: Fix one-pass mode keyframe placement off-by-one
    error.
    + Issue 3156: Fix a bug in av1_quantize_lp AVX2 optimization.
- Drop libaom-CVE-2021-30474.patch: Fixed upstream.
- Drop libaom-CVE-2021-30475.patch: Fixed upstream.
- Remove changesgenerate option from _service file, use data from
  CHANGELOG to fill .changes instead as it it much nicer and human
  readable than just a list of commit messages.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1645185600">- Update to version 3.3.0:
  * This release includes compression efficiency and perceptual
    quality improvements, speedup and memory optimizations, some
    new features, and several bug fixes.
  * New Features
  - AV1 RT: Introducing CDEF search level 5
  - Changed real time speed 4 to behave the same as real time
    speed 5
  - Add --deltaq-strength
  - rtc: Allow scene-change and overshoot detection for svc
  - rtc: Intra-only frame for svc
  - AV1 RT: Option 2 for codec control AV1E_SET_ENABLE_CDEF to
    disable CDEF on non-ref frames
  - New codec controls AV1E_SET_LOOPFILTER_CONTROL and
    AOME_GET_LOOPFILTER_LEVEL
  - Improvements to three pass encoding
  * Compression Efficiency Improvements: Overall compression gains:
    0.6%
  * Perceptual Quality Improvements
  - Improves the perceptual quality of high QP encoding for
    delta-q mode 4
  - Auto select noise synthesis level for all intra
  * Speedup and Memory Optimizations
  - Added many SSE2 optimizations.
  - Good quality 2-pass encoder speedups:
    o Speed 2: 9%
    o Speed 3: 12.5%
    o Speed 4: 8%
    o Speed 5: 3%
    o Speed 6: 4%
  - Real time mode encoder speedups:
    o Speed 5: 2.6% BDRate gain, 4% speedup
    o Speed 6: 3.5% BDRate gain, 4% speedup
    o Speed 9: 1% BDRate gain, 3% speedup
    o Speed 10: 3% BDRate gain, neutral speedup
  - All intra encoding speedups (AVIF):
    o Single thread - speed 6: 8%
    o Single thread - speed 9: 15%
    o Multi thread(8) - speed 6: 14%
    o Multi thread(8) - speed 9: 34%
  * Bug Fixes
  - Issue 3163: Segmentation fault when using
  - -enable-keyframe-filtering=2
  - Issue 2436: Integer overflow in av1_warp_affine_c()
  - Issue 3226: armv7 build failure due to gcc-11
  - Issue 3195: Bug report on libaom (AddressSanitizer:
    heap-buffer-overflow)
  - Issue 3191: Bug report on libaom (AddressSanitizer: SEGV on
    unknown address)
- Drop libaom-devel Requires from libaom-devel-doc sub-package: We
  do not need the devel package to be able to read the devel
  documentation.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1662292800">- Update to version 3.4.0:
  * This release includes compression efficiency and perceptual
    quality improvements, speedup and memory optimizations, and
    some new features. There are no ABI or API breaking changes in
    this release.
  * New Features:
  - New --dist-metric flag with "qm-psnr" value to use
    quantization matrices in the distortion computation for RD
    search. The default value is "psnr".
  - New command line option "--auto-intra-tools-off=1" to make
    all-intra encoding faster for high bit rate under
    "--deltaq-mode=3" mode.
  - New rate control library aom_av1_rc for real-time hardware
    encoders. Supports CBR for both one spatial layer and SVC.
  - New image format AOM_IMG_FMT_NV12 can be used as input to the
    encoder. The presence of AOM_IMG_FMT_NV12 can be detected at
    compile time by checking if the macro AOM_HAVE_IMG_FMT_NV12
    is defined.
  - New codec controls for the encoder:
    o AV1E_SET_AUTO_INTRA_TOOLS_OFF. Only in effect if
  - -deltaq-mode=3.
    o AV1E_SET_RTC_EXTERNAL_RC
    o AV1E_SET_FP_MT. Only supported if libaom is built with
  - DCONFIG_FRAME_PARALLEL_ENCODE=1.
    o AV1E_GET_TARGET_SEQ_LEVEL_IDX
  - New key-value pairs for the key-value API:
    o --auto-intra-tools-off=0 (default) or 1. Only in effect if
  - -deltaq-mode=3.
    o --strict-level-conformance=0 (default) or 1
    o --fp-mt=0 (default) or 1. Only supported if libaom is built
    with -DCONFIG_FRAME_PARALLEL_ENCODE=1.
  - New aomenc options (not supported by the key-value API):
    o --nv12
  * Compression Efficiency Improvements:
  - Correctly calculate SSE for high bitdepth in skip mode, 0.2%
    to 0.6% coding gain.
  - RTC at speed 9/10: BD-rate gain of ~4/5%
  - RTC screen content coding: many improvements for real-time
    screen at speed 10 (quality, speedup, and rate control), up
    to high resolutions (1080p).
  - RTC-SVC: fixes to make intra-only frames work for spatial
    layers.
  - RTC-SVC: quality improvements for temporal layers.
  - AV1 RT: A new passive rate control strategy for screen
    content, an average of 7.5% coding gain, with some clips of
    20+%. The feature is turned off by default due to higher bit
    rate variation.
  * Perceptual Quality Improvements:
  - RTC: Visual quality improvements for high speeds (9/10)
  - Improvements in coding quality for all intra mode
  * Speedup and Memory Optimizations:
  - ~10% speedup in good quality mode encoding.
  - ~7% heap memory reduction in good quality encoding mode for
    speed 5 and 6.
  - Ongoing improvements to intra-frame encoding performance on
    Arm
  - Faster encoding speed for "--deltaq-mode=3" mode.
  - ~10% speedup for speed 5/6, ~15% speedup for speed 7/8, and
    ~10% speedup for speed 9/10 in real time encoding mode
  - ~20% heap memory reduction in still-picture encoding mode for
    360p-720p resolutions with multiple threads
  - ~13% speedup for speed 6 and ~12% speedup for speed 9 in
    still-picture encoding mode.
  - Optimizations to improve multi-thread efficiency for
    still-picture encoding mode.
  * Bug Fixes:
  - b/204460717: README.md: replace master with main
  - b/210677928: libaom disable_order is surprising for
    max_reference_frames=3
  - b/222461449: -DCONFIG_TUNE_BUTTERAUGLI=1 broken
  - b/227207606: write_greyscale writes incorrect chroma in
    highbd mode
  - b/229955363: Integer-overflow in linsolve_wiener
  - https://crbug.com/aomedia/2032
  - https://crbug.com/aomedia/2397
  - https://crbug.com/aomedia/2563
  - https://crbug.com/aomedia/2815
  - https://crbug.com/aomedia/3009
  - https://crbug.com/aomedia/3018
  - https://crbug.com/aomedia/3045
  - https://crbug.com/aomedia/3101
  - https://crbug.com/aomedia/3130
  - https://crbug.com/aomedia/3173
  - https://crbug.com/aomedia/3184
  - https://crbug.com/aomedia/3187
  - https://crbug.com/aomedia/3190
  - https://crbug.com/aomedia/3195
  - https://crbug.com/aomedia/3197
  - https://crbug.com/aomedia/3201
  - https://crbug.com/aomedia/3202
  - https://crbug.com/aomedia/3204
  - https://crbug.com/aomedia/3205
  - https://crbug.com/aomedia/3207
  - https://crbug.com/aomedia/3208
  - https://crbug.com/aomedia/3209
  - https://crbug.com/aomedia/3213
  - https://crbug.com/aomedia/3214
  - https://crbug.com/aomedia/3219
  - https://crbug.com/aomedia/3222
  - https://crbug.com/aomedia/3223
  - https://crbug.com/aomedia/3225
  - https://crbug.com/aomedia/3226
  - https://crbug.com/aomedia/3228
  - https://crbug.com/aomedia/3232
  - https://crbug.com/aomedia/3236
  - https://crbug.com/aomedia/3237
  - https://crbug.com/aomedia/3238
  - https://crbug.com/aomedia/3240
  - https://crbug.com/aomedia/3243
  - https://crbug.com/aomedia/3244
  - https://crbug.com/aomedia/3246
  - https://crbug.com/aomedia/3248
  - https://crbug.com/aomedia/3250
  - https://crbug.com/aomedia/3251
  - https://crbug.com/aomedia/3252
  - https://crbug.com/aomedia/3255
  - https://crbug.com/aomedia/3257
  - https://crbug.com/aomedia/3259
  - https://crbug.com/aomedia/3260
  - https://crbug.com/aomedia/3267
  - https://crbug.com/aomedia/3268
  - https://crbug.com/aomedia/3269
  - https://crbug.com/aomedia/3276
  - https://crbug.com/aomedia/3278
  - https://crbug.com/chromium/1290068
  - https://crbug.com/chromium/1303237
  - https://crbug.com/chromium/1304990
  - https://crbug.com/chromium/1321141
  - https://crbug.com/chromium/1321388
  - https://crbug.com/oss-fuzz/44846
  - https://crbug.com/oss-fuzz/44856
  - https://crbug.com/oss-fuzz/44862
  - https://crbug.com/oss-fuzz/44904
  - https://crbug.com/oss-fuzz/45056</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1663848000">- Update to version 3.5.0:
  * This release is ABI compatible with the last one, including
    speedup and memory optimizations, and new APIs and features.
  * New Features
  - Support for frame parallel encode for larger number of
    threads. --fp-mt flag is available for all build
    configurations.
  - New codec control AV1E_GET_NUM_OPERATING_POINTS
  * Speedup and Memory Optimizations
  - Speed-up multithreaded encoding for good quality mode for
    larger number of threads through frame parallel encoding:
    . 30-34% encode time reduction for 1080p, 16 threads, 1x1
    tile configuration (tile_rows x tile_columns)
    . 18-28% encode time reduction for 1080p, 16 threads, 2x4
    tile configuration
    . 18-20% encode time reduction for 2160p, 32 threads, 2x4
    tile configuration
  - 16-20% speed-up for speed=6 to 8 in still-picture encoding
    mode
  - 5-6% heap memory reduction for speed=6 to 10 in real-time
    encoding mode
  - Improvements to the speed for speed=7, 8 in real-time
    encoding mode
  - Improvements to the speed for speed=9, 10 in real-time screen
    encoding mode
  - Optimizations to improve multi-thread efficiency in real-time
    encoding mode
  - 10-15% speed up for SVC with temporal layers
  - SIMD optimizations:
    . Improve av1_quantize_fp_32x32_neon() 1.05x to 1.24x faster
    . Add aom_highbd_quantize_b{,_32x32,_64x64}_adaptive_neon()
    3.15x to 5.6x faster than "C"
    . Improve av1_quantize_fp_64x64_neon() 1.17x to 1.66x faster
    . Add aom_quantize_b_avx2() 1.4x to 1.7x faster than
    aom_quantize_b_avx()
    . Add aom_quantize_b_32x32_avx2() 1.4x to 2.3x faster than
    aom_quantize_b_32x32_avx()
    . Add aom_quantize_b_64x64_avx2() 2.0x to 2.4x faster than
    aom_quantize_b_64x64_ssse3()
    . Add aom_highbd_quantize_b_32x32_avx2() 9.0x to 10.5x faster
    than aom_highbd_quantize_b_32x32_c()
    . Add aom_highbd_quantize_b_64x64_avx2() 7.3x to 9.7x faster
    than aom_highbd_quantize_b_64x64_c()
    . Improve aom_highbd_quantize_b_avx2() 1.07x to 1.20x faster
    . Improve av1_quantize_fp_avx2() 1.13x to 1.49x faster
    . Improve av1_quantize_fp_32x32_avx2() 1.07x to 1.54x faster
    . Improve av1_quantize_fp_64x64_avx2()  1.03x to 1.25x faster
    . Improve av1_quantize_lp_avx2() 1.07x to 1.16x faster
  * Bug fixes including but not limited to
  - aomedia:3206 Assert that skip_width &gt; 0 for deconvolve
    function
  - aomedia:3278 row_mt enc: Delay top-right sync when intraBC is
    enabled
  - aomedia:3282 blend_a64_*_neon: fix bus error in armv7
  - aomedia:3283 FRAME_PARALLEL: Propagate border size to all
    cpis
  - aomedia:3283 RESIZE_MODE: Fix incorrect strides being used
    for motion search
  - aomedia:3286 rtc-svc: Fix to dynamic_enable spatial layers
  - aomedia:3289 rtc-screen: Fix to skipping inter-mode test in
    nonrd
  - aomedia:3289 rtc-screen: Fix for skip newmv on flat blocks
  - aomedia:3299 Fix build failure with CONFIG_TUNE_VMAF=1
  - aomedia:3296 Fix the conflict --enable-tx-size-search=0 with
    nonrd mode --enable-tx-size-search will be ignored in non-rd
    pick mode
  - aomedia:3304 Fix off-by-one error of max w/h in
    validate_config
  - aomedia:3306 Do not use pthread_setname_np on GNU/Hurd
  - aomedia:3325 row-multithreading produces invalid bitstream in
    some cases
  - chromium:1346938, chromium:1338114
  - compiler_flags.cmake: fix flag detection w/cmake 3.17-3.18.2
  - tools/*.py: update to python3
  - aom_configure.cmake: detect PIE and set CONFIG_PIC
  - test/simd_cmp_impl: use explicit types w/CompareSimd*
  - rtc: Fix to disable segm for aq-mode=3
  - rtc: Fix to color_sensitivity in variance partition
  - rtc-screen: Fix bsize in model rd computation for intra
    chroma
  - Fixes to ensure the correct behavior of the encoder
    algorithms (like segmentation, computation of statistics,
    etc.)</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1675857600">- Update to version 3.6.0:
  * This release includes compression efficiency and perceptual
    quality improvements, speedup and memory optimizations, and
    some new features. This release is ABI compatible with the last
    release.
  * New Features:
  - New values 20-27 (corresponding to levels 7.0-7.3 and
    8.0-8.3) for the encoder control
    AV1E_SET_TARGET_SEQ_LEVEL_IDX (note that the proposal to add
    the new levels are still in draft status). The original
    special value 24 (keep level stats only for level monitoring)
    is renumbered as 32.
  - New encoder control AV1E_SET_SKIP_POSTPROC_FILTERING to skip
    the application of post-processing filters on reconstructed
    frame in all intra mode.
  - New encoder option "kf-max-pyr-height": Maximum height of
    pyramid structure used for the GOP starting with a key frame
    (-1 to 5).
  - Make SVC work for screen content.
  - Rate control improvements to reduce frame-size spikes for
    screen content coding.
  - RISC-V architecture support with gcc toolchain.
  * Compression Efficiency Improvements:
  - Peak compression efficiency in VOD setting is improved by 1%.
  - 0.7% - 2.2% RTC encoding BDrate gains for real time speed 8
    to 10.
  - 15% RTC encoding BDrate gains for screen content speed 10.
  * Perceptual Quality Improvements:
  - Resolved a visual quality issue that was reported for high
    resolution clips (2K) for speed 4 and above in VOD use case.
  - Visual quality improvements to screen content coding.
  - Quality improvements to temporal layer RTC coding.
  * Speedup and Memory Optimizations:
  - RTC single-thread encoder speedup:
    . ~6% instruction count reduction for speed 5 and 6.
    . ~15% instruction count reduction for speed 7.
    . ~10% instruction count reduction for speed 8 to 10 (&gt;=360p
    resolutions).
  - RTC multi-thread encoder speedup (beyond single-thread
    speedup):
    . 5-8% encode time reduction for speed 7 to 10.
  - RTC screen-content encoder speedup:
    . 11% instruction count reduction for speed 9 and 10 (&gt;=720p
    resolutions).
  - ~5% reduction in heap memory requirements for RTC, speed 6 to
    10.
  * AVIF:
    . 4-5% speedup for speed 9 in still-picture encoding mode.
    . 3-4% heap memory reduction in still-picture encoding mode
    for 360p-720p resolutions with multiple threads.
  * Bug Fixes:
  - Added a workaround for an AV1 specification bug which makes
    TRANSLATION type global motion models unusable.
  - Fixed AddressSanitizer global-buffer-overflow errors in
    av1/encoder/arm/neon/av1_fwd_txfm2d_neon.c.
  - Fixed AddressSanitizer heap-buffer-overflow error in
    av1_wiener_convolve_add_src_neon().
  - chromium:1393384 Avoid scene detection on spatial resize.
  - aomedia:3308 Remove color artifacts under high motion.
  - aomedia:3310 Avoid out of memory failures with Visual Studio
    2017, 2019, and 2022 for Win32 x86 builds.
  - aomedia:3346 Make SVC work properly for screen content.
  - aomedia:3348 Fix a bug where an uninitialized search_site is
    used.
  - aomedia:3365 Work around what seems like a Visual Studio 2022
    compiler optimization bug.
  - aomedia:3369 Incorrect PSNR values reported by libaom for
    12-bit encode.
- Modernize spec, use cmake_build and ldconfig_scriptlets macros.</changelog>
  <changelog author="Frederic Crozat &lt;fcrozat@suse.com&gt;" date="1681992000">- Fix license tag to BSD-2-Clause and AOMPL-1.0.</changelog>
  <changelog author="Frederic Crozat &lt;fcrozat@suse.com&gt;" date="1683028800">- Revert to BSD-2-Clause licence tag to only use SPDX valid
  license tag.</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1683720000">- Update to version 3.6.1:
  * aomedia:2871: Guard the support of the 7.x and 8.x levels for
    AV1 under the CONFIG_CWG_C013 config flag, and only output the
    7.x and 8.x levels when explicitly requested.
  * aomedia:3382: Choose sb_size by ppi instead of svc.
  * aomedia:3384: Fix fullpel search limits.
  * aomedia:3388: Replace left shift of xq_active by
    multiplication.
  * aomedia:3389: Fix MV clamping in av1_mv_pred.
  * aomedia:3390: set_ld_layer_depth: cap max_layer_depth to
    MAX_ARF_LAYERS.
  * aomedia:3418: Fix MV clamping in av1_int_pro_motion_estimation.
  * aomedia:3429: Move lpf thread data init to
    lpf_pipeline_mt_init().
  * b:266719111: Fix undefined behavior in Arm Neon code.
  * b:269840681: nonrd_opt: align scan tables.
  * rtc: Fix is_key_frame setting in variance partition.
  * Build: Fix build with clang-cl and Visual Studio.</changelog>
  <changelog author="Bruno Pitrus &lt;brunopitrus@hotmail.com&gt;" date="1693569600">- New upstream release 3.7.0
  - New Features
  * New codec controls:
  * AV1E_SET_QUANTIZER_ONE_PASS: Set quantizer for each frame.
  * AV1E_ENABLE_RATE_GUIDE_DELTAQ: enable the rate distribution guided delta
    quantization in all intra mode. The "enable-rate-guide-deltaq" option is
    added for this control.
  * AV1E_SET_RATE_DISTRIBUTION_INFO: set the input file for rate
    distribution used in all intra mode. The "rate-distribution-info" option
    is added for this control.
  * AV1E_GET_LUMA_CDEF_STRENGTH
  * AV1E_SET_BITRATE_ONE_PASS_CBR
  * AOM_SCALING_MODE is extended to include 2/3 and 1/3 scaling.
  * aom_tune_metric is extended to include AOM_TUNE_VMAF_SALIENCY_MAP.
    The "tune" option is extended to include "vmaf_saliency_map".
  * SVC example encoder svc_encoder_rtc is able to use the rate control
    library.
  * Loopfilter level and CDEF filter level is supported by RTC rate control
    library.
  * New speed (--cpu-used) 11, intended for RTC screen sharing, added for
    faster encoding with ~3% bdrate loss with 16% IC (instruction count)
    speedup compared to speed 10.
  - Compression Efficiency Improvements
  * Improved VoD encoding performance
  * 0.1-0.6% BDrate gains for encoding speeds 2 to 6
  * Rate control accuracy improvement in VBR mode
  * RTC encoding improvements
  * Screen content mode: 10-19% BDrate gains for speeds 6 - 10
  * Temporal layers video mode, for speed 10:
  * 2 temporal layers on low resolutions: 13-15% BDrate gain
  * 3 temporal layers on VGA/HD: 3-4% BDrate gain
  - Perceptual Quality Improvements
  * Fixed multiple block and color artifacts for RTC screen content by
  * Incorporating color into RD cost for IDTX
  * Reducing thresholds for palette mode in non RD mode
  * Allowing more palette mode testing
  * Improved color sensitivity for altref in non-RD mode.
  * Reduced video flickering for temporal layer encoding.
  - Speedup and Memory Optimizations
  * Speed up the VoD encoder
  * 2-5% for encoding speed 2 to 4
  * 9-15% for encoding speed 5 to 6
  * ARM
  * Standard bitdepth
  * speed 5: +31%
  * speed 4: +2%
  * speed 3: +9%
  * speed 2: +157%
  * High bitdepth
  * speed 5: +85%
  * RTC speedups
  * Screen content mode
  * 15% IC speedup for speeds 6-8
  * ARM: 7% for speed 9, 3% for speed 10
  * Temporal layers video mode
  * 7% speedup for 3 temporal layers on VGA/HD, for speed 10
  * Single layer video
  * x86: 2% IC speedup for speeds 7-10
  * ARM: 2-4% speedup across speeds 5-10
  - Bug Fixes
  * aomedia:3261 Assertion failed when encoding av1 with film grain and
    '--monochrome' flag
  * aomedia:3276 ensure all allocations are checked (partial fix)
  * aomedia:3451 The libaom library calls exit()
  * aomedia:3450 enable -Wshadow for C++ sources
  * aomedia:3449 Test Seg Faults After
    b459af3e345be402db052a143fcc5383d4b74cbd
  * aomedia:3416 prune unused symbols / restrict symbol visibility
  * aomedia:3443 Jenkins failure:
    UninstantiatedParameterizedTestSuite&lt;EstimateNoiseTest&gt;
  * aomedia:3434 realtime failures with CONFIG_BITSTREAM_DEBUG=1
  * aomedia:3433 DeltaqModeTest crash w/row_mt=0
  * aomedia:3429 Encoder crash when turn on both ExternalResize and
    g_threads &gt; 2
  * aomedia:3438 Build failure with
    `-DSANITIZE=address -DBUILD_SHARED_LIBS=ON` when using clang.
  * aomedia:3435 Block artifacts when scrolling with AV1 in screen sharing
    scenarios
  * aomedia:3170 vmaf tune presets produce extreme glitches in one scene
  * aomedia:3401 Building shared libaom with MSVC results in a race condition
    with the export library
  * aomedia:3420 Floating point exception in av1_tpl_get_frame_importance()
  * aomedia:3424 heap-buffer-overflow in ScaleFilterCols_16_C() (SIGABRT)
  * aomedia:3417 examples/svc_encoder_rtc.c is using internal macros and
    functions
  * aomedia:3372 SEGV in assign_frame_buffer_p av1_common_int.h
  * aomedia:3130 'cpu-features.h' file not found on Android NDK 22
  * aomedia:3415 Encoder/decoder mismatch for svc_encoder_rtc running
    1 SL 3 TL
  * aomedia:3412 Lossless Mode Fails Loopback Bit Test
  * aomedia:3409 The use of AV1_VAR_OFFS in av1/encoder/var_based_part.c is
    incorrect for high bit depths
  * aomedia:3403 test_libaom fails with error message
    "feenableexcept() failed" on Linux arm
  * aomedia:3370 Random color block at fast motion area
  * aomedia:3393 Assertion failure in av1_convolve_2d_sr_c()
  * aomedia:3392 Strong artifacting for high bit-depth real-time
  * aomedia:3376 aomenc --threads=10 --deltaq-mode=3 crashes after
    "Allintra: multi-threading of calculating differential contrast"
  * aomedia:3380 Crashes and ASan and TSan errors in deltaq-mode=3
    multithreading code
  * chromium:1410766 heap-buffer-overflow in aom_yv12_copy_v_c
  * Cannot set level via AV1E_SET_TARGET_SEQ_LEVEL_IDX
  * Encoding failure due to the use of loop restoration with unintended use of
    lossless mode.
  * Signed integer overflow in scan_past_frames
  * Signed integer overflow in update_a_sep_sym
  * Flickering in AV1 1440p/2160p HDR transcodes
  * Fixed artifacts with screen share at encoder speed 10
  * Fixed prediction setup for IDTX
- Use system libraries instead of vendored ones
  * system-gtest.patch
  * system-yuv.patch
- Enable debuginfo also on modules written in assembly
- Enable building PowerPC-specific optimizations
- Enable Neon optimized code on ARM and fix runtime CPU detection
- Fix missing images in documentation</changelog>
  <changelog author="Bruno Pitrus &lt;brunopitrus@hotmail.com&gt;" date="1693915200">- Split docs to multibuild to avoid dependency cycle</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1701777600">- Update to version 3.7.1:
  * Bug Fixes:
  - aomedia:3349: heap overflow when increasing resolution
  - aomedia:3478: GCC 12.2.0 emits a -Wstringop-overflow warning
    on aom/av1/encoder/motion_search_facade.c
  - aomedia:3489: Detect encoder and image high bit depth
    mismatch
  - aomedia:3491: heap-buffer-overflow on frame size change
  - b/303023614:  Segfault at encoding time for high bit depth
    images
- Switch buildtime compression to zst.</changelog>
  <changelog author="Enrico Belleri &lt;kilgore.trout@idesmi.eu&gt;" date="1720267200">- Update to version 3.7.2:
  * aomedia:3520: get_cubic_kernel_dbl: Assertion `0 &lt;= x &amp;&amp; x &lt; 1'
    failed.
  * aomedia:3526: alloc_compressor_data() is called during every
    aom_codec_control() call on the encoder. Note that this partially
    reverts the fix for bug aomedia:3349.
  * b/310457427 and b/310766628: Only use rec_sse in CBR mode.</changelog>
  <changelog author="Enrico Belleri &lt;kilgore.trout@idesmi.eu&gt;" date="1724587200">- Exclude third_party from obscpio</changelog>
  <changelog author="Bj&#xF8;rn Lie &lt;bjorn.lie@gmail.com&gt;" date="1726488000">- Update to version 3.9.1:
  * This release includes new codec interfaces, compression
    efficiency and perceptual improvements, speedup for RTC for both
    video and screen content, and many bug fixes.
- Please see https://aomedia.googlesource.com/aom/+/refs/tags/v3.9.1/CHANGELOG
  for detailed changes since version 3.7.2
- Rebase patches with quilt.</changelog>
</package>
<package pkgid="b5b605a5ddda7b0e71ee9b31c2012c1b421d8ed37d1bfaa2e5ab5f8fdaece15c8c0951e5b9c0189592f434a5661b951d0708456eff8d5c483442446ac7354f1e" name="apache2" arch="i586">
  <version epoch="0" ver="2.4.62" rel="3.1"/>
  <changelog author="pgajdos@suse.com" date="1654689600">- update httpd-framework to svn revision 1898917</changelog>
  <changelog author="Stefan Schubert &lt;schubi@intern&gt;" date="1656417600">- Moved logrotate files from user specific directory /etc/logrotate.d
  to vendor specific directory /usr/etc/logrotate.d.</changelog>
  <changelog author="Stefan Schubert &lt;schubi@suse.com&gt;" date="1662033600">- Migration to /usr/etc: Saving user changed configuration files
  in /etc and restoring them while an RPM update.</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1663675200">- Remove references to README.QUICKSTART and point them to
  https://en.opensuse.org/SDB:Apache_installation (bsc#1203573)</changelog>
  <changelog author="Stephan Kulow &lt;coolo@suse.com&gt;" date="1663934400">- The 2.4.54 release brought support for PCRE2, but for that we also
  need to change buildrequires to pcre2-devel</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1670846400">- switch to pkgconfig(zlib) so that alternative providers can be
  used</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1674043200">- This update fixes the following security issues:
  * CVE-2022-37436 [bsc#1207251], mod_proxy backend HTTP response splitting
  * CVE-2022-36760 [bsc#1207250], mod_proxy_ajp Possible request smuggling
  * CVE-2006-20001 [bsc#1207247], mod_dav out of bounds read, or write of zero byte
- Update to 2.4.55:
  * ) SECURITY: CVE-2022-37436: Apache HTTP Server: mod_proxy prior to
    2.4.55 allows a backend to trigger HTTP response splitting
    (cve.mitre.org)
    Prior to Apache HTTP Server 2.4.55, a malicious backend can
    cause the response headers to be truncated early, resulting in
    some headers being incorporated into the response body. If the
    later headers have any security purpose, they will not be
    interpreted by the client.
    Credits: Dimas Fariski Setyawan Putra (@nyxsorcerer)
  * ) SECURITY: CVE-2022-36760: Apache HTTP Server: mod_proxy_ajp
    Possible request smuggling (cve.mitre.org)
    Inconsistent Interpretation of HTTP Requests ('HTTP Request
    Smuggling') vulnerability in mod_proxy_ajp of Apache HTTP Server
    allows an attacker to smuggle requests to the AJP server it
    forwards requests to.  This issue affects Apache HTTP Server
    Apache HTTP Server 2.4 version 2.4.54 and prior versions.
    Credits: ZeddYu_Lu from Qi'anxin Research Institute of Legendsec
    at Qi'anxin Group
  * ) SECURITY: CVE-2006-20001: mod_dav out of  bounds read, or write
    of zero byte (cve.mitre.org)
    A carefully crafted If: request header can cause a memory read,
    or write of a single zero byte, in a pool (heap) memory location
    beyond the header value sent. This could cause the process to
    crash.
    This issue affects Apache HTTP Server 2.4.54 and earlier.
  * ) mod_dav: Open the lock database read-only when possible.
    PR 36636 [Wilson Felipe &lt;wfelipe gmail.com&gt;, manu]
  * ) mod_proxy_http2: apply the standard httpd content type handling
    to responses from the backend, as other proxy modules do. Fixes PR 66391.
    Thanks to Jérôme Billiras for providing the patch.
    [Stefan Eissing]
  * ) mod_dav: mod_dav overrides dav_fs response on PUT failure. PR 35981
    [Basant Kumar Kukreja &lt;basant.kukreja sun.com&gt;, Alejandro Alvarez
    &lt;alejandro.alvarez.ayllon cern.ch&gt;]
  * ) mod_proxy_hcheck: Honor worker timeout settings.  [Yann Ylavic]
  * ) mod_http2: version 2.0.10 of the module, synchronizing changes
    with the gitgub version. This is a partial rewrite of how connections
    and streams are handled.
  - an APR pollset and pipes (where supported) are used to monitor
    the main connection and react to IO for request/response handling.
    This replaces the stuttered timed waits of earlier versions.
  - H2SerializeHeaders directive still exists, but has no longer an effect.
  - Clients that seemingly misbehave still get less resources allocated,
    but ongoing requests are no longer disrupted.
  - Fixed an issue since 1.15.24 that "Server" headers in proxied requests
    were overwritten instead of preserved. [PR by @daum3ns]
  - A regression in v1.15.24 was fixed that could lead to httpd child
    processes not being terminated on a graceful reload or when reaching
    MaxConnectionsPerChild. When unprocessed h2 requests were queued at
    the time, these could stall. See #212.
  - Improved information displayed in 'server-status' for H2 connections when
    Extended Status is enabled. Now one can see the last request that IO
    operations happened on and transferred IO stats are updated as well.
  - When reaching server limits, such as MaxRequestsPerChild, the HTTP/2 connection
    send a GOAWAY frame much too early on new connections, leading to invalid
    protocol state and a client failing the request. See PR65731 at
    &lt;https://bz.apache.org/bugzilla/show_bug.cgi?id=65731&gt;.
    The module now initializes the HTTP/2 protocol correctly and allows the
    client to submit one request before the shutdown via a GOAWAY frame
    is being announced.
  - :scheme pseudo-header values, not matching the
    connection scheme, are forwarded via absolute uris to the
    http protocol processing to preserve semantics of the request.
    Checks on combinations of pseudo-headers values/absence
    have been added as described in RFC 7540. Fixes #230.
  - A bug that prevented trailers (e.g. HEADER frame at the end) to be
    generated in certain cases was fixed. See #233 where it prevented
    gRPC responses to be properly generated.
  - Request and response header values are automatically stripped of leading
    and trialing space/tab characters. This is equivalent behaviour to what
    Apache httpd's http/1.1 parser does.
    The checks for this in nghttp2 v1.50.0+ are disabled.
  - Extensive testing in production done by Alessandro Bianchi (@alexskynet)
    on the v2.0.x versions for stability. Many thanks!
  * ) mod_proxy_http2: fixed #235 by no longer forwarding 'Host:' header when
    request ':authority' is known. Improved test case that did not catch that
    the previous 'fix' was incorrect.
  * ) mod_proxy_hcheck: hcmethod now allows for HTTP/1.1 requests
    using GET11, HEAD11 and/or OPTIONS11. [Jim Jagielski]
  * ) mod_proxy: The AH03408 warning for a forcibly closed backend
    connection is now logged at INFO level.  [Yann Ylavic]
  * ) mod_ssl: When dumping the configuration, the existence of
    certificate/key files is no longer tested.  [Joe Orton]
  * ) mod_authn_core: Add expression support to AuthName and AuthType.
    [Graham Leggett]
  * ) mod_ssl: when a proxy connection had handled a request using SSL, an
    error was logged when "SSLProxyEngine" was only configured in the
    location/proxy section and not the overall server. The connection
    continued to work, the error log was in error. Fixed PR66190.
    [Stefan Eissing]
  * ) mod_proxy_hcheck: Re-enable workers in standard ERROR state. PR 66302.
    [Alessandro Cavaliere &lt;alessandro.cavalier7 unibo.it&gt;]
  * ) mod_proxy_hcheck: Detect AJP/CPING support correctly. PR 66300.
    [Alessandro Cavaliere &lt;alessandro.cavalier7 unibo.it&gt;]
  * ) mod_http2: Export mod_http2.h as public header. [Stefan Eissing]
  * ) mod_md: a new directive `MDStoreLocks` can be used on cluster
    setups with a shared file system for `MDStoreDir` to order
    activation of renewed certificates when several cluster nodes are
    restarted at the same time. Store locks are not enabled by default.
    Restored curl_easy cleanup behaviour from v2.4.14 and refactored
    the use of curl_multi for OCSP requests to work with that.
    Fixes &lt;https://github.com/icing/mod_md/issues/293&gt;.
  * ) core: Avoid an overflow on large inputs in ap_is_matchexp.  PR 66033
    [Ruediger Pluem]
  * ) mod_heartmonitor: Allow "HeartbeatMaxServers 0" to use file based
    storage instead of slotmem. Needed after setting
    HeartbeatMaxServers default to the documented value 10 in 2.4.54.
    PR 66131.  [Jérôme Billiras]
  * ) mod_dav: DAVlockDiscovery option to disable WebDAV lock discovery
    This is a game changer for performances if client use PROPFIND a lot,
    PR 66313. [Emmanuel Dreyfus]</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1678276800">- This update fixes the following security issues:
  * CVE-2023-27522 [bsc#1209049]: mod_proxy_uwsgi HTTP response splitting
  * CVE-2023-25690 [bsc#1209047]: HTTP request splitting with mod_rewrite and mod_proxy
- Update to 2.4.56:
  * ) rotatelogs: Add -T flag to allow subsequent rotated logfiles to be
    truncated without the initial logfile being truncated.  [Eric Covener]
  * ) mod_ldap: LDAPConnectionPoolTTL should accept negative values in order to
    allow connections of any age to be reused. Up to now, a negative value
    was handled as an error when parsing the configuration file.  PR 66421.
    [nailyk &lt;bzapache nailyk.fr&gt;, Christophe Jaillet]
  * ) mod_proxy_ajp: Report an error if the AJP backend sends an invalid number
    of headers. [Ruediger Pluem]
  * ) mod_md:
  - Enabling ED25519 support and certificate transparency information when
    building with libressl v3.5.0 and newer. Thanks to Giovanni Bechis.
  - MDChallengeDns01 can now be configured for individual domains.
    Thanks to Jérôme Billiras (@bilhackmac) for the initial PR.
  - Fixed a bug found by Jérôme Billiras (@bilhackmac) that caused the challenge
    teardown not being invoked as it should.
    [Stefan Eissing]
  * ) mod_http2: client resets of HTTP/2 streams led to unwanted 500 errors
    reported in access logs and error documents. The processing of the
    reset was correct, only unneccesary reporting was caused.
    [Stefan Eissing]
  * ) mod_proxy_uwsgi: Stricter backend HTTP response parsing/validation.
    [Yann Ylavic]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1680868800">- Update to 2.4.57:
  * ) mod_proxy: Check before forwarding that a nocanon path has not been
    rewritten with spaces during processing.  [Yann Ylavic]
  * ) mod_proxy: In case that AllowEncodedSlashes is set to NoDecode do not
    double encode encoded slashes in the URL sent by the reverse proxy to the
    backend. [Ruediger Pluem]
  * ) mod_http2: fixed a crash during connection termination. See PR 66539.
    [Stefan Eissing]
  * ) mod_rewrite: Fix a 2.4.56 regression for substitutions ending
    in a question mark. PR66547. [Eric Covener]
  * ) mod_rewrite: Add "BCTLS" and "BNE" RewriteRule flags. Re-allow encoded
    characters on redirections without the "NE" flag.
    [Yann Ylavic, Eric Covener]
  * ) mod_proxy: Fix double encoding of the uri-path of the request forwarded
    to the origin server, when using mapping=encoded|servlet.  [Yann Ylavic]
  * ) mod_mime: Do not match the extention against possible query string
    parameters in case ProxyPass was used with the nocanon option.
    [Ruediger Pluem]</changelog>
  <changelog author="Dirk Stoecker &lt;opensuse@dstoecker.de&gt;" date="1691236800">- Enable building of mod_md</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1697716800">- Update to 2.4.58:
  * ) SECURITY: CVE-2023-45802: Apache HTTP Server: HTTP/2 stream
    memory not reclaimed right away on RST (cve.mitre.org)
    When a HTTP/2 stream was reset (RST frame) by a client, there
    was a time window were the request's memory resources were not
    reclaimed immediately. Instead, de-allocation was deferred to
    connection close. A client could send new requests and resets,
    keeping the connection busy and open and causing the memory
    footprint to keep on growing. On connection close, all resources
    were reclaimed, but the process might run out of memory before
    that.
    This was found by the reporter during testing of CVE-2023-44487
    (HTTP/2 Rapid Reset Exploit) with their own test client. During
    "normal" HTTP/2 use, the probability to hit this bug is very
    low. The kept memory would not become noticeable before the
    connection closes or times out.
    Users are recommended to upgrade to version 2.4.58, which fixes
    the issue.
    Credits: Will Dormann of Vul Labs
  * ) SECURITY: CVE-2023-43622: Apache HTTP Server: DoS in HTTP/2 with
    initial windows size 0 (cve.mitre.org)
    An attacker, opening a HTTP/2 connection with an initial window
    size of 0, was able to block handling of that connection
    indefinitely in Apache HTTP Server. This could be used to
    exhaust worker resources in the server, similar to the well
    known "slow loris" attack pattern.
    This has been fixed in version 2.4.58, so that such connection
    are terminated properly after the configured connection timeout.
    This issue affects Apache HTTP Server: from 2.4.55 through
    2.4.57.
    Users are recommended to upgrade to version 2.4.58, which fixes
    the issue.
    Credits: Prof. Sven Dietrich (City University of New York)
  * ) SECURITY: CVE-2023-31122: mod_macro buffer over-read
    (cve.mitre.org)
    Out-of-bounds Read vulnerability in mod_macro of Apache HTTP
    Server.This issue affects Apache HTTP Server: through 2.4.57.
    Credits: David Shoon (github/davidshoon)
  * ) mod_ssl: Silence info log message "SSL Library Error: error:0A000126:
    SSL routines::unexpected eof while reading" when using
    OpenSSL 3 by setting SSL_OP_IGNORE_UNEXPECTED_EOF if
    available. [Rainer Jung]
  * ) mod_http2: improved early cleanup of streams.
    [Stefan Eissing]
  * ) mod_proxy_http2: improved error handling on connection errors while
    response is already underway.
    [Stefan Eissing]
  * ) mod_http2: fixed a bug that could lead to a crash in main connection
    output handling. This occured only when the last request on a HTTP/2
    connection had been processed and the session decided to shut down.
    This could lead to an attempt to send a final GOAWAY while the previous
    write was still in progress. See PR 66646.
    [Stefan Eissing]
  * ) mod_proxy_http2: fix `X-Forward-Host` header to carry the correct value.
    Fixes PR66752.
    [Stefan Eissing]
  * ) mod_http2: added support for bootstrapping WebSockets via HTTP/2, as
    described in RFC 8441. A new directive 'H2WebSockets on|off' has been
    added. The feature is by default not enabled.
    As also discussed in the manual, this feature should work for setups
    using "ProxyPass backend-url upgrade=websocket" without further changes.
    Special server modules for WebSockets will have to be adapted,
    most likely, as the handling if IO events is different with HTTP/2.
    HTTP/2 WebSockets are supported on platforms with native pipes. This
    excludes Windows.
    [Stefan Eissing]
  * ) mod_rewrite: Fix a regression with both a trailing ? and [QSA].
    in OCSP stapling. PR 66672. [Frank Meier &lt;frank.meier ergon.ch&gt;, covener]
  * ) mod_http2: fixed a bug in flushing pending data on an already closed
    connection that could lead to a busy loop, preventing the HTTP/2 session
    to close down successfully. Fixed PR 66624.
    [Stefan Eissing]
  * ) mod_http2: v2.0.15 with the following fixes and improvements
  - New directive 'H2EarlyHint name value' to add headers to a response,
    picked up already when a "103 Early Hints" response is sent. 'name' and
    'value' must comply to the HTTP field restrictions.
    This directive can be repeated several times and header fields of the
    same names add. Sending a 'Link' header with 'preload' relation will
    also cause a HTTP/2 PUSH if enabled and supported by the client.
  - Fixed an issue where requests were not logged and accounted in a timely
    fashion when the connection returns to "keepalive" handling, e.g. when
    the request served was the last outstanding one.
    This led to late appearance in access logs with wrong duration times
    reported.
  - Accurately report the bytes sent for a request in the '%O' Log format.
    This addresses #203, a long outstanding issue where mod_h2 has reported
    numbers over-eagerly from internal buffering and not what has actually
    been placed on the connection.
    The numbers are now the same with and without H2CopyFiles enabled.
    [Stefan Eissing]
  * ) mod_proxy_http2: fix retry handling to not leak temporary errors.
    On detecting that that an existing connection was shutdown by the other
    side, a 503 response leaked even though the request was retried on a
    fresh connection.
    [Stefan Eissing]
  * ) mod_rewrite: Add server directory to include path as mod_rewrite requires
    test_char.h. PR 66571 [Valeria Petrov &lt;valeria.petrov@spinetix.com&gt;]
  * ) mod_http2: new directive `H2ProxyRequests on|off` to enable handling
    of HTTP/2 requests in a forward proxy configuration.
    General forward proxying is enabled via `ProxyRequests`. If the
    HTTP/2 protocol is also enabled for such a server/host, this new
    directive is needed in addition.
    [Stefan Eissing]
  * ) core: Updated conf/mime.types:
  - .js moved from 'application/javascript' to 'text/javascript'
  - .mjs was added as 'text/javascript'
  - add .opus ('audio/ogg')
  - add 'application/vnd.geogebra.slides'
  - add WebAssembly MIME types and extension
    [Mathias Bynens &lt;@mathiasbynens&gt; via PR 318,
    Richard de Boer &lt;richard tubul.net&gt;, Dave Hodder &lt;dmh dmh.org.uk&gt;,
    Zbynek Konecny &lt;zbynek1729 gmail.com&gt;]
  * ) mod_proxy_http2: fixed using the wrong "bucket_alloc" from the backend
    connection when sending data on the frontend one. This caused crashes
    or infinite loops in rare situations.
  * ) mod_proxy_http2: fixed a bug in retry/response handling that could lead
    to wrong status codes or HTTP messages send at the end of response bodies
    exceeding the announced content-length.
  * ) mod_proxy_http2: fix retry handling to not leak temporary errors.
    On detecting that that an existing connection was shutdown by the other
    side, a 503 response leaked even though the request was retried on a
    fresh connection.
  * ) mod_http2: fixed a bug that did cleanup of consumed and pending buckets in
    the wrong order when a bucket_beam was destroyed.
    [Stefan Eissing]
  * ) mod_http2: avoid double chunked-encoding on internal redirects.
    PR 66597 [Yann Ylavic, Stefan Eissing]
  * ) mod_http2: Fix reporting of `Total Accesses` in server-status to not count
    HTTP/2 requests twice. Fixes PR 66801.
    [Stefan Eissing]
  * ) mod_ssl: Fix handling of Certificate Revoked messages
    in OCSP stapling. PR 66626. [&lt;gmoniker gmail.com&gt;]
  * ) mod_http2: fixed a bug in handling of stream timeouts.
    [Stefan Eissing]
  * ) mod_tls: updating to rustls-ffi version 0.9.2 or higher.
    Checking in configure for proper version installed. Code
    fixes for changed clienthello member name.
    [Stefan Eissing]
  * ) mod_md:
  - New directive `MDMatchNames all|servernames` to allow more control over how
    MDomains are matched to VirtualHosts.
  - New directive `MDChallengeDns01Version`. Setting this to `2` will provide
    the command also with the challenge value on `teardown` invocation. In version
    1, the default, only the `setup` invocation gets this parameter.
    Refs #312. Thanks to @domrim for the idea.
  - For Managed Domain in "manual" mode, the checks if all used ServerName and
    ServerAlias are part of the MDomain now reports a warning instead of an error
    (AH10040) when not all names are present.
  - MDChallengeDns01 can now be configured for individual domains.
    Using PR from JÃ©rÃ´me Billiras (@bilhackmac) and adding test case and fixing proper working
  - Fixed a bug found by JÃ©rÃ´me Billiras (@bilhackmac) that caused the challenge
    teardown not being invoked as it should.
  * ) mod_ldap: Avoid performance overhead of APR-util rebind cache for
    OpenLDAP 2.2+.  PR 64414.  [Joe Orton]
  * ) mod_http2: new directive 'H2MaxDataFrameLen n' to limit the maximum
    amount of response body bytes put into a single HTTP/2 DATA frame.
    Setting this to 0 places no limit (but the max size allowed by the
    protocol is observed).
    The module, by default, tries to use the maximum size possible, which is
    somewhat around 16KB. This sets the maximum. When less response data is
    available, smaller frames will be sent.
  * ) mod_md: fixed passing of the server environment variables to programs
    started via MDMessageCmd and MDChallengeDns01 on *nix system.
    See &lt;https://github.com/icing/mod_md/issues/319&gt;.
    [Stefan Eissing]
  * ) mod_dav: Add DavBasePath directive to configure the repository root
    path.  PR 35077.  [Joe Orton]
  * ) mod_alias: Add AliasPreservePath directive to map the full
    path after the alias in a location. [Graham Leggett]
  * ) mod_alias: Add RedirectRelative to allow relative redirect targets to be
    issued as-is. [Eric Covener, Graham Leggett]
  * ) core: Add formats %{z} and %{strftime-format} to ErrorLogFormat, and make
    sure that if the format is configured early enough it applies to every log
    line.  PR 62161.  [Yann Ylavic]
  * ) mod_deflate: Add DeflateAlterETag to control how the ETag
    is modified. The 'NoChange' parameter mimics 2.2.x behavior.
    PR 45023, PR 39727. [Eric Covener]
  * ) core: Optimize send_brigade_nonblocking(). [Yann Ylavic, Christophe Jaillet]
  * ) mod_status: Remove duplicate keys "BusyWorkers" and "IdleWorkers".
    Resolve inconsistency between the previous two occurrences by
    counting workers in state SERVER_GRACEFUL no longer as busy,
    but instead in a new counter "GracefulWorkers" (or on HTML
    view as "workers gracefully restarting"). Also add the graceful
    counter as a new column to the existing HTML per process table
    for async MPMs. PR 63300. [Rainer Jung]</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1706529600">- use grep -E for egrep</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1708430400">- Use %autosetup macro. Allows to eliminate the usage of deprecated
  %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1712232000">- Update to 2.4.59:
  * ) mod_deflate: Fixes and better logging for handling various
    error and edge cases. [Eric Covener, Yann Ylavic, Joe Orton,
    Eric Norris &lt;enorris etsy.com&gt;]
  * ) Add CGIScriptTimeout to mod_cgi. [Eric Covener]
  * ) mod_xml2enc: Tolerate libxml2 2.12.0 and later.  PR 68610
    [ttachi &lt;tachihara AT hotmail.com&gt;]
  * ) mod_slotmem_shm: Use ap_os_is_path_absolute() to make it portable.
    [Jean-Frederic Clere]
  * ) mod_ssl: Use OpenSSL-standard functions to assemble CA
    name lists for SSLCACertificatePath/SSLCADNRequestPath.
    Names will now be consistently sorted. PR 61574.
    [Joe Orton]
  * ) mod_xml2enc: Update check to accept any text/ media type
    or any XML media type per RFC 7303, avoiding
    corruption of Microsoft OOXML formats.  PR 64339.
    [Joseph Heenan &lt;joseph.heenan fintechlabs.io&gt;, Joe Orton]
  * ) mod_http2: v2.0.26 with the following fixes:
  - Fixed `Date` header on requests upgraded from HTTP/1.1 (h2c). Fixes
    &lt;https://github.com/icing/mod_h2/issues/272&gt;.
  - Fixed small memory leak in h2 header bucket free. Thanks to
    Michael Kaufmann for finding this and providing the fix.
  * ) htcacheclean: In -a/-A mode, list all files per subdirectory
    rather than only one. PR 65091.
    [Artem Egorenkov &lt;aegorenkov.91 gmail.com&gt;]
  * ) mod_ssl: SSLProxyMachineCertificateFile/Path may reference files
    which include CA certificates; those CA certs are treated as if
    configured with SSLProxyMachineCertificateChainFile.  [Joe Orton]
  * ) htpasswd, htdbm, dbmmanage: Update help&amp;docs to refer to
    "hashing", rather than "encrypting" passwords.
    [Michele Preziuso &lt;mpreziuso kaosdynamics.com&gt;]
  * ) mod_ssl: Fix build with LibreSSL 2.0.7+. PR 64047.
    [Giovanni Bechis, Yann Ylavic]
  * ) htpasswd: Add support for passwords using SHA-2.  [Joe Orton,
    Yann Ylavic]
  * ) core: Allow mod_env to override system environment vars. [Joe Orton]
  * ) Allow mod_dav_fs to tolerate race conditions between PROPFIND and an
    operation which removes a directory/file between apr_dir_read() and
    apr_stat(). Current behaviour is to abort the connection which seems
    inferior to tolerating (and logging) the error. [Joe Orton]
  * ) mod_ldap: HTML-escape data in the ldap-status handler.
    [Eric Covener, Chamal De Silva]
  * ) mod_ssl: Disable the OpenSSL ENGINE API when OPENSSL_NO_ENGINE is set.
    Allow for "SSLCryptoDevice builtin" if the ENGINE API is not available,
    notably with OpenSSL &gt;= 3.  PR 68080.  [Yann Ylavic, Joe Orton]
  * ) mod_ssl: Improve compatibility with OpenSSL 3, fix build warnings about
    deprecated ENGINE_ API, honor OPENSSL_API_COMPAT setting while defaulting
    to compatibitily with version 1.1.1 (including ENGINEs / SSLCryptoDevice).
    [Yann Ylavic]
  * ) mod_ssl: release memory to the OS when needed. [Giovanni Bechis]
  * ) mod_proxy: Ignore (and warn about) enablereuse=on for ProxyPassMatch when
    some dollar substitution (backreference) happens in the hostname or port
    part of the URL.  [Yann Ylavic]
  * ) mod_proxy: Allow to set a TTL for how long DNS resolutions to backend
    systems are cached. [Yann Ylavic]
  * ) mod_proxy: Add optional third argument for ProxyRemote, which
    configures Basic authentication credentials to pass to the remote
    proxy.  PR 37355.  [Joe Orton]</changelog>
  <changelog author="pgajdos@suse.com" date="1718280000">- added patches [bsc#1226217]
  https://github.com/apache/httpd/pull/444/commits/c2fffd29b0f58bdc9caaaff4fec68e17a676f182
  + apache2-issue-444.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1720094400">- Update to 2.4.61
  * ) SECURITY: CVE-2024-39884: Apache HTTP Server: source code
    disclosure with handlers configured via AddType (cve.mitre.org)
    [boo#1227353]
    A regression in the core of Apache HTTP Server 2.4.60 ignores
    some use of the legacy content-type based configuration of
    handlers.   "AddType" and similar configuration, under some
    circumstances where files are requested indirectly, result in
    source code disclosure of local content. For example, PHP
    scripts may be served instead of interpreted.
    Users are recommended to upgrade to version 2.4.61, which fixes
    this issue.
- Update to 2.4.60
  * ) SECURITY: CVE-2024-39573: Apache HTTP Server: mod_rewrite proxy
    handler substitution (cve.mitre.org) [boo#1227271]
    Potential SSRF in mod_rewrite in Apache HTTP Server 2.4.59 and
    earlier allows an attacker to cause unsafe RewriteRules to
    unexpectedly setup URL's to be handled by mod_proxy.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38477: Apache HTTP Server: Crash resulting in
    Denial of Service in mod_proxy via a malicious request
    (cve.mitre.org) [boo#1227270]
    null pointer dereference in mod_proxy in Apache HTTP Server
    2.4.59 and earlier allows an attacker to crash the server via a
    malicious request.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38476: Apache HTTP Server may use
    exploitable/malicious backend application output to run local
    handlers via internal redirect (cve.mitre.org) [boo#1227269]
    Vulnerability in core of Apache HTTP Server 2.4.59 and earlier
    are vulnerably to information disclosure, SSRF or local script
    execution via backend applications whose response headers are
    malicious or exploitable.
    Note: Some legacy uses of the 'AddType' directive to connect a
    request to a handler must be ported to 'AddHandler' after this fix.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38475: Apache HTTP Server weakness in
    mod_rewrite when first segment of substitution matches
    filesystem path. (cve.mitre.org) [boo#1227268]
    Improper escaping of output in mod_rewrite in Apache HTTP Server
    2.4.59 and earlier allows an attacker to map URLs to filesystem
    locations that are permitted to be served by the server but are
    not intentionally/directly reachable by any URL, resulting in
    code execution or source code disclosure.
    Substitutions in server context that use a backreferences or
    variables as the first segment of the substitution are affected.
    Some unsafe RewiteRules will be broken by this change and the
    rewrite flag "UnsafePrefixStat" can be used to opt back in once
    ensuring the substitution is appropriately constrained.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38474: Apache HTTP Server weakness with
    encoded question marks in backreferences (cve.mitre.org)
    [boo#1227278]
    Substitution encoding issue in mod_rewrite in Apache HTTP Server
    2.4.59 and earlier allows attacker to execute scripts in
    directories permitted by the configuration but not directly
    reachable by any URL or source disclosure of scripts meant to
    only to be executed as CGI.
    Note: Some RewriteRules that capture and substitute unsafely will now
    fail unless rewrite flag "UnsafeAllow3F" is specified.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38473: Apache HTTP Server proxy encoding
    problem (cve.mitre.org) [boo#1227276]
    Encoding problem in mod_proxy in Apache HTTP Server 2.4.59 and
    earlier allows request URLs with incorrect encoding to be sent
    to backend services, potentially bypassing authentication via
    crafted requests.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38472: Apache HTTP Server on WIndows UNC SSRF
    (cve.mitre.org) [boo#1227267]
    SSRF in Apache HTTP Server on Windows allows to potentially leak
    NTML hashes to a malicious server via SSRF and malicious
    requests or content
    Note: Existing configurations that access UNC paths
    will have to configure new directive "UNCList" to allow access
    during request processing.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-36387: Apache HTTP Server: DoS by Null
    pointer in websocket over HTTP/2 (cve.mitre.org) [boo#1227272]
    Serving WebSocket protocol upgrades over a HTTP/2 connection
    could result in a Null Pointer dereference, leading to a crash
    of the server process, degrading performance.
    Credits: Marc Stern (&lt;marc.stern AT approach-cyber.com&gt;)
  * ) mod_proxy: Fix DNS requests and connections closed before the
    configured addressTTL.  BZ 69126.  [Yann Ylavic]
  * ) core: On Linux, log the real thread ID in error logs.  [Joe Orton]
  * ) core: Support zone/scope in IPv6 link-local addresses in Listen and
    VirtualHost directives (requires APR 1.7.x or later).  PR 59396
    [Joe Orton]
  * ) mod_ssl: Reject client-initiated renegotiation with a TLS alert
    (rather than connection closure).  [Joe Orton, Yann Ylavic]
  * ) Updated mime.types.  [Mohamed Akram &lt;mohd.akram outlook.com&gt;,
    Adam Silverstein &lt;adamsilverstein earthboundhosting.com&gt;]
  * ) mod_ssl: Fix a regression that causes the default DH parameters for a key
    no longer set and thus effectively disabling DH ciphers when no explicit
    DH parameters are set. PR 68863 [Ruediger Pluem]
  * ) mod_cgid: Optional support for file descriptor passing, fixing
    error log handling (configure --enable-cgid-fdpassing) on Unix
    platforms. PR 54221.  [Joe Orton]
  * ) mod_cgid/mod_cgi: Distinguish script stderr output clearly in
    error logs.  PR 61980.  [Hank Ibell &lt;hwibell gmail.com&gt;]
  * ) mod_tls: update version of rustls-ffi to v0.13.0.
    [Daniel McCarney (@cpu}]
  * ) mod_md:
  - Using OCSP stapling information to trigger certificate renewals. Proposed
    by @frasertweedale.
  - Added directive `MDCheckInterval` to control how often the server checks
    for detected revocations. Added proposals for configurations in the
    README.md chapter "Revocations".
  - OCSP stapling: accept OCSP responses without a `nextUpdate` entry which is
    allowed in RFC 6960. Treat those as having an update interval of 12 hours.
    Added by @frasertweedale.
  - Adapt OpenSSL usage to changes in their API. By Yann Ylavic.
- removed patches (upstreamed)
  - apache2-issue-444.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- Update to 2.4.62
  * ) SECURITY: CVE-2024-40898: Apache HTTP Server: SSRF with
    mod_rewrite in server/vhost context on Windows (cve.mitre.org)
    [boo#1228098]
    SSRF in Apache HTTP Server on Windows with mod_rewrite in
    server/vhost context, allows to potentially leak NTML hashes to
    a malicious server via SSRF and malicious requests.
    Users are recommended to upgrade to version 2.4.62 which fixes
    this issue.
    Credits: Smi1e (DBAPPSecurity Ltd.)
  * ) SECURITY: CVE-2024-40725: Apache HTTP Server: source code
    disclosure with handlers configured via AddType (cve.mitre.org)
    [boo#1228097]
    A partial fix for  CVE-2024-39884 in the core of Apache HTTP
    Server 2.4.61 ignores some use of the legacy content-type based
    configuration of handlers. "AddType" and similar configuration,
    under some circumstances where files are requested indirectly,
    result in source code disclosure of local content. For example,
    PHP scripts may be served instead of interpreted.
    Users are recommended to upgrade to version 2.4.62, which fixes
    this issue.
  * ) mod_proxy: Fix canonicalisation and FCGI env (PATH_INFO, SCRIPT_NAME) for
    "balancer:" URLs set via SetHandler, also allowing for "unix:" sockets
    with BalancerMember(s).  PR 69168.  [Yann Ylavic]
  * ) mod_proxy: Avoid AH01059 parsing error for SetHandler "unix:" URLs.
    PR 69160 [Yann Ylavic]
  * ) mod_ssl: Fix crashes in PKCS#11 ENGINE support with OpenSSL 3.2.
    [Joe Orton]
  * ) mod_ssl: Add support for loading certs/keys from pkcs11: URIs
    via OpenSSL 3.x providers.  [Ingo Franzki &lt;ifranzki linux.ibm.com&gt;]
  * ) mod_ssl: Restore SSL dumping on trace7 loglevel with OpenSSL &gt;= 3.0.
    [Ruediger Pluem, Yann Ylavic]
  * ) mpm_worker: Fix possible warning (AH00045) about children processes not
    terminating timely.  [Yann Ylavic]</changelog>
  <changelog author="Thorsten Kukuk &lt;kukuk@suse.com&gt;" date="1727697600">- Add /srv/www directories to filelist [bsc#1231027]
  (apache2 will not start since default config uses this directory)</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1730721600">- Explicitly mark start_apache2 as bash-dependent.</changelog>
  <changelog author="Martin Schreiner &lt;martin.schreiner@suse.com&gt;" date="1730808000">- Update httpd-framework to svn1921782.
- Fixes Apache's impact on bsc#1218342.</changelog>
</package>
<package pkgid="01abfa3620e120d0bdd0ecbff59894ebbd6d4f374d237ea1043de84b0df713fac2ccce1f600cd3ba41fe6d58b6181d1ec273876013bd60e0a4a9ca18f24dfac4" name="apache2" arch="src">
  <version epoch="0" ver="2.4.62" rel="3.1"/>
  <changelog author="pgajdos@suse.com" date="1654689600">- update httpd-framework to svn revision 1898917</changelog>
  <changelog author="Stefan Schubert &lt;schubi@intern&gt;" date="1656417600">- Moved logrotate files from user specific directory /etc/logrotate.d
  to vendor specific directory /usr/etc/logrotate.d.</changelog>
  <changelog author="Stefan Schubert &lt;schubi@suse.com&gt;" date="1662033600">- Migration to /usr/etc: Saving user changed configuration files
  in /etc and restoring them while an RPM update.</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1663675200">- Remove references to README.QUICKSTART and point them to
  https://en.opensuse.org/SDB:Apache_installation (bsc#1203573)</changelog>
  <changelog author="Stephan Kulow &lt;coolo@suse.com&gt;" date="1663934400">- The 2.4.54 release brought support for PCRE2, but for that we also
  need to change buildrequires to pcre2-devel</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1670846400">- switch to pkgconfig(zlib) so that alternative providers can be
  used</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1674043200">- This update fixes the following security issues:
  * CVE-2022-37436 [bsc#1207251], mod_proxy backend HTTP response splitting
  * CVE-2022-36760 [bsc#1207250], mod_proxy_ajp Possible request smuggling
  * CVE-2006-20001 [bsc#1207247], mod_dav out of bounds read, or write of zero byte
- Update to 2.4.55:
  * ) SECURITY: CVE-2022-37436: Apache HTTP Server: mod_proxy prior to
    2.4.55 allows a backend to trigger HTTP response splitting
    (cve.mitre.org)
    Prior to Apache HTTP Server 2.4.55, a malicious backend can
    cause the response headers to be truncated early, resulting in
    some headers being incorporated into the response body. If the
    later headers have any security purpose, they will not be
    interpreted by the client.
    Credits: Dimas Fariski Setyawan Putra (@nyxsorcerer)
  * ) SECURITY: CVE-2022-36760: Apache HTTP Server: mod_proxy_ajp
    Possible request smuggling (cve.mitre.org)
    Inconsistent Interpretation of HTTP Requests ('HTTP Request
    Smuggling') vulnerability in mod_proxy_ajp of Apache HTTP Server
    allows an attacker to smuggle requests to the AJP server it
    forwards requests to.  This issue affects Apache HTTP Server
    Apache HTTP Server 2.4 version 2.4.54 and prior versions.
    Credits: ZeddYu_Lu from Qi'anxin Research Institute of Legendsec
    at Qi'anxin Group
  * ) SECURITY: CVE-2006-20001: mod_dav out of  bounds read, or write
    of zero byte (cve.mitre.org)
    A carefully crafted If: request header can cause a memory read,
    or write of a single zero byte, in a pool (heap) memory location
    beyond the header value sent. This could cause the process to
    crash.
    This issue affects Apache HTTP Server 2.4.54 and earlier.
  * ) mod_dav: Open the lock database read-only when possible.
    PR 36636 [Wilson Felipe &lt;wfelipe gmail.com&gt;, manu]
  * ) mod_proxy_http2: apply the standard httpd content type handling
    to responses from the backend, as other proxy modules do. Fixes PR 66391.
    Thanks to Jérôme Billiras for providing the patch.
    [Stefan Eissing]
  * ) mod_dav: mod_dav overrides dav_fs response on PUT failure. PR 35981
    [Basant Kumar Kukreja &lt;basant.kukreja sun.com&gt;, Alejandro Alvarez
    &lt;alejandro.alvarez.ayllon cern.ch&gt;]
  * ) mod_proxy_hcheck: Honor worker timeout settings.  [Yann Ylavic]
  * ) mod_http2: version 2.0.10 of the module, synchronizing changes
    with the gitgub version. This is a partial rewrite of how connections
    and streams are handled.
  - an APR pollset and pipes (where supported) are used to monitor
    the main connection and react to IO for request/response handling.
    This replaces the stuttered timed waits of earlier versions.
  - H2SerializeHeaders directive still exists, but has no longer an effect.
  - Clients that seemingly misbehave still get less resources allocated,
    but ongoing requests are no longer disrupted.
  - Fixed an issue since 1.15.24 that "Server" headers in proxied requests
    were overwritten instead of preserved. [PR by @daum3ns]
  - A regression in v1.15.24 was fixed that could lead to httpd child
    processes not being terminated on a graceful reload or when reaching
    MaxConnectionsPerChild. When unprocessed h2 requests were queued at
    the time, these could stall. See #212.
  - Improved information displayed in 'server-status' for H2 connections when
    Extended Status is enabled. Now one can see the last request that IO
    operations happened on and transferred IO stats are updated as well.
  - When reaching server limits, such as MaxRequestsPerChild, the HTTP/2 connection
    send a GOAWAY frame much too early on new connections, leading to invalid
    protocol state and a client failing the request. See PR65731 at
    &lt;https://bz.apache.org/bugzilla/show_bug.cgi?id=65731&gt;.
    The module now initializes the HTTP/2 protocol correctly and allows the
    client to submit one request before the shutdown via a GOAWAY frame
    is being announced.
  - :scheme pseudo-header values, not matching the
    connection scheme, are forwarded via absolute uris to the
    http protocol processing to preserve semantics of the request.
    Checks on combinations of pseudo-headers values/absence
    have been added as described in RFC 7540. Fixes #230.
  - A bug that prevented trailers (e.g. HEADER frame at the end) to be
    generated in certain cases was fixed. See #233 where it prevented
    gRPC responses to be properly generated.
  - Request and response header values are automatically stripped of leading
    and trialing space/tab characters. This is equivalent behaviour to what
    Apache httpd's http/1.1 parser does.
    The checks for this in nghttp2 v1.50.0+ are disabled.
  - Extensive testing in production done by Alessandro Bianchi (@alexskynet)
    on the v2.0.x versions for stability. Many thanks!
  * ) mod_proxy_http2: fixed #235 by no longer forwarding 'Host:' header when
    request ':authority' is known. Improved test case that did not catch that
    the previous 'fix' was incorrect.
  * ) mod_proxy_hcheck: hcmethod now allows for HTTP/1.1 requests
    using GET11, HEAD11 and/or OPTIONS11. [Jim Jagielski]
  * ) mod_proxy: The AH03408 warning for a forcibly closed backend
    connection is now logged at INFO level.  [Yann Ylavic]
  * ) mod_ssl: When dumping the configuration, the existence of
    certificate/key files is no longer tested.  [Joe Orton]
  * ) mod_authn_core: Add expression support to AuthName and AuthType.
    [Graham Leggett]
  * ) mod_ssl: when a proxy connection had handled a request using SSL, an
    error was logged when "SSLProxyEngine" was only configured in the
    location/proxy section and not the overall server. The connection
    continued to work, the error log was in error. Fixed PR66190.
    [Stefan Eissing]
  * ) mod_proxy_hcheck: Re-enable workers in standard ERROR state. PR 66302.
    [Alessandro Cavaliere &lt;alessandro.cavalier7 unibo.it&gt;]
  * ) mod_proxy_hcheck: Detect AJP/CPING support correctly. PR 66300.
    [Alessandro Cavaliere &lt;alessandro.cavalier7 unibo.it&gt;]
  * ) mod_http2: Export mod_http2.h as public header. [Stefan Eissing]
  * ) mod_md: a new directive `MDStoreLocks` can be used on cluster
    setups with a shared file system for `MDStoreDir` to order
    activation of renewed certificates when several cluster nodes are
    restarted at the same time. Store locks are not enabled by default.
    Restored curl_easy cleanup behaviour from v2.4.14 and refactored
    the use of curl_multi for OCSP requests to work with that.
    Fixes &lt;https://github.com/icing/mod_md/issues/293&gt;.
  * ) core: Avoid an overflow on large inputs in ap_is_matchexp.  PR 66033
    [Ruediger Pluem]
  * ) mod_heartmonitor: Allow "HeartbeatMaxServers 0" to use file based
    storage instead of slotmem. Needed after setting
    HeartbeatMaxServers default to the documented value 10 in 2.4.54.
    PR 66131.  [Jérôme Billiras]
  * ) mod_dav: DAVlockDiscovery option to disable WebDAV lock discovery
    This is a game changer for performances if client use PROPFIND a lot,
    PR 66313. [Emmanuel Dreyfus]</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1678276800">- This update fixes the following security issues:
  * CVE-2023-27522 [bsc#1209049]: mod_proxy_uwsgi HTTP response splitting
  * CVE-2023-25690 [bsc#1209047]: HTTP request splitting with mod_rewrite and mod_proxy
- Update to 2.4.56:
  * ) rotatelogs: Add -T flag to allow subsequent rotated logfiles to be
    truncated without the initial logfile being truncated.  [Eric Covener]
  * ) mod_ldap: LDAPConnectionPoolTTL should accept negative values in order to
    allow connections of any age to be reused. Up to now, a negative value
    was handled as an error when parsing the configuration file.  PR 66421.
    [nailyk &lt;bzapache nailyk.fr&gt;, Christophe Jaillet]
  * ) mod_proxy_ajp: Report an error if the AJP backend sends an invalid number
    of headers. [Ruediger Pluem]
  * ) mod_md:
  - Enabling ED25519 support and certificate transparency information when
    building with libressl v3.5.0 and newer. Thanks to Giovanni Bechis.
  - MDChallengeDns01 can now be configured for individual domains.
    Thanks to Jérôme Billiras (@bilhackmac) for the initial PR.
  - Fixed a bug found by Jérôme Billiras (@bilhackmac) that caused the challenge
    teardown not being invoked as it should.
    [Stefan Eissing]
  * ) mod_http2: client resets of HTTP/2 streams led to unwanted 500 errors
    reported in access logs and error documents. The processing of the
    reset was correct, only unneccesary reporting was caused.
    [Stefan Eissing]
  * ) mod_proxy_uwsgi: Stricter backend HTTP response parsing/validation.
    [Yann Ylavic]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1680868800">- Update to 2.4.57:
  * ) mod_proxy: Check before forwarding that a nocanon path has not been
    rewritten with spaces during processing.  [Yann Ylavic]
  * ) mod_proxy: In case that AllowEncodedSlashes is set to NoDecode do not
    double encode encoded slashes in the URL sent by the reverse proxy to the
    backend. [Ruediger Pluem]
  * ) mod_http2: fixed a crash during connection termination. See PR 66539.
    [Stefan Eissing]
  * ) mod_rewrite: Fix a 2.4.56 regression for substitutions ending
    in a question mark. PR66547. [Eric Covener]
  * ) mod_rewrite: Add "BCTLS" and "BNE" RewriteRule flags. Re-allow encoded
    characters on redirections without the "NE" flag.
    [Yann Ylavic, Eric Covener]
  * ) mod_proxy: Fix double encoding of the uri-path of the request forwarded
    to the origin server, when using mapping=encoded|servlet.  [Yann Ylavic]
  * ) mod_mime: Do not match the extention against possible query string
    parameters in case ProxyPass was used with the nocanon option.
    [Ruediger Pluem]</changelog>
  <changelog author="Dirk Stoecker &lt;opensuse@dstoecker.de&gt;" date="1691236800">- Enable building of mod_md</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1697716800">- Update to 2.4.58:
  * ) SECURITY: CVE-2023-45802: Apache HTTP Server: HTTP/2 stream
    memory not reclaimed right away on RST (cve.mitre.org)
    When a HTTP/2 stream was reset (RST frame) by a client, there
    was a time window were the request's memory resources were not
    reclaimed immediately. Instead, de-allocation was deferred to
    connection close. A client could send new requests and resets,
    keeping the connection busy and open and causing the memory
    footprint to keep on growing. On connection close, all resources
    were reclaimed, but the process might run out of memory before
    that.
    This was found by the reporter during testing of CVE-2023-44487
    (HTTP/2 Rapid Reset Exploit) with their own test client. During
    "normal" HTTP/2 use, the probability to hit this bug is very
    low. The kept memory would not become noticeable before the
    connection closes or times out.
    Users are recommended to upgrade to version 2.4.58, which fixes
    the issue.
    Credits: Will Dormann of Vul Labs
  * ) SECURITY: CVE-2023-43622: Apache HTTP Server: DoS in HTTP/2 with
    initial windows size 0 (cve.mitre.org)
    An attacker, opening a HTTP/2 connection with an initial window
    size of 0, was able to block handling of that connection
    indefinitely in Apache HTTP Server. This could be used to
    exhaust worker resources in the server, similar to the well
    known "slow loris" attack pattern.
    This has been fixed in version 2.4.58, so that such connection
    are terminated properly after the configured connection timeout.
    This issue affects Apache HTTP Server: from 2.4.55 through
    2.4.57.
    Users are recommended to upgrade to version 2.4.58, which fixes
    the issue.
    Credits: Prof. Sven Dietrich (City University of New York)
  * ) SECURITY: CVE-2023-31122: mod_macro buffer over-read
    (cve.mitre.org)
    Out-of-bounds Read vulnerability in mod_macro of Apache HTTP
    Server.This issue affects Apache HTTP Server: through 2.4.57.
    Credits: David Shoon (github/davidshoon)
  * ) mod_ssl: Silence info log message "SSL Library Error: error:0A000126:
    SSL routines::unexpected eof while reading" when using
    OpenSSL 3 by setting SSL_OP_IGNORE_UNEXPECTED_EOF if
    available. [Rainer Jung]
  * ) mod_http2: improved early cleanup of streams.
    [Stefan Eissing]
  * ) mod_proxy_http2: improved error handling on connection errors while
    response is already underway.
    [Stefan Eissing]
  * ) mod_http2: fixed a bug that could lead to a crash in main connection
    output handling. This occured only when the last request on a HTTP/2
    connection had been processed and the session decided to shut down.
    This could lead to an attempt to send a final GOAWAY while the previous
    write was still in progress. See PR 66646.
    [Stefan Eissing]
  * ) mod_proxy_http2: fix `X-Forward-Host` header to carry the correct value.
    Fixes PR66752.
    [Stefan Eissing]
  * ) mod_http2: added support for bootstrapping WebSockets via HTTP/2, as
    described in RFC 8441. A new directive 'H2WebSockets on|off' has been
    added. The feature is by default not enabled.
    As also discussed in the manual, this feature should work for setups
    using "ProxyPass backend-url upgrade=websocket" without further changes.
    Special server modules for WebSockets will have to be adapted,
    most likely, as the handling if IO events is different with HTTP/2.
    HTTP/2 WebSockets are supported on platforms with native pipes. This
    excludes Windows.
    [Stefan Eissing]
  * ) mod_rewrite: Fix a regression with both a trailing ? and [QSA].
    in OCSP stapling. PR 66672. [Frank Meier &lt;frank.meier ergon.ch&gt;, covener]
  * ) mod_http2: fixed a bug in flushing pending data on an already closed
    connection that could lead to a busy loop, preventing the HTTP/2 session
    to close down successfully. Fixed PR 66624.
    [Stefan Eissing]
  * ) mod_http2: v2.0.15 with the following fixes and improvements
  - New directive 'H2EarlyHint name value' to add headers to a response,
    picked up already when a "103 Early Hints" response is sent. 'name' and
    'value' must comply to the HTTP field restrictions.
    This directive can be repeated several times and header fields of the
    same names add. Sending a 'Link' header with 'preload' relation will
    also cause a HTTP/2 PUSH if enabled and supported by the client.
  - Fixed an issue where requests were not logged and accounted in a timely
    fashion when the connection returns to "keepalive" handling, e.g. when
    the request served was the last outstanding one.
    This led to late appearance in access logs with wrong duration times
    reported.
  - Accurately report the bytes sent for a request in the '%O' Log format.
    This addresses #203, a long outstanding issue where mod_h2 has reported
    numbers over-eagerly from internal buffering and not what has actually
    been placed on the connection.
    The numbers are now the same with and without H2CopyFiles enabled.
    [Stefan Eissing]
  * ) mod_proxy_http2: fix retry handling to not leak temporary errors.
    On detecting that that an existing connection was shutdown by the other
    side, a 503 response leaked even though the request was retried on a
    fresh connection.
    [Stefan Eissing]
  * ) mod_rewrite: Add server directory to include path as mod_rewrite requires
    test_char.h. PR 66571 [Valeria Petrov &lt;valeria.petrov@spinetix.com&gt;]
  * ) mod_http2: new directive `H2ProxyRequests on|off` to enable handling
    of HTTP/2 requests in a forward proxy configuration.
    General forward proxying is enabled via `ProxyRequests`. If the
    HTTP/2 protocol is also enabled for such a server/host, this new
    directive is needed in addition.
    [Stefan Eissing]
  * ) core: Updated conf/mime.types:
  - .js moved from 'application/javascript' to 'text/javascript'
  - .mjs was added as 'text/javascript'
  - add .opus ('audio/ogg')
  - add 'application/vnd.geogebra.slides'
  - add WebAssembly MIME types and extension
    [Mathias Bynens &lt;@mathiasbynens&gt; via PR 318,
    Richard de Boer &lt;richard tubul.net&gt;, Dave Hodder &lt;dmh dmh.org.uk&gt;,
    Zbynek Konecny &lt;zbynek1729 gmail.com&gt;]
  * ) mod_proxy_http2: fixed using the wrong "bucket_alloc" from the backend
    connection when sending data on the frontend one. This caused crashes
    or infinite loops in rare situations.
  * ) mod_proxy_http2: fixed a bug in retry/response handling that could lead
    to wrong status codes or HTTP messages send at the end of response bodies
    exceeding the announced content-length.
  * ) mod_proxy_http2: fix retry handling to not leak temporary errors.
    On detecting that that an existing connection was shutdown by the other
    side, a 503 response leaked even though the request was retried on a
    fresh connection.
  * ) mod_http2: fixed a bug that did cleanup of consumed and pending buckets in
    the wrong order when a bucket_beam was destroyed.
    [Stefan Eissing]
  * ) mod_http2: avoid double chunked-encoding on internal redirects.
    PR 66597 [Yann Ylavic, Stefan Eissing]
  * ) mod_http2: Fix reporting of `Total Accesses` in server-status to not count
    HTTP/2 requests twice. Fixes PR 66801.
    [Stefan Eissing]
  * ) mod_ssl: Fix handling of Certificate Revoked messages
    in OCSP stapling. PR 66626. [&lt;gmoniker gmail.com&gt;]
  * ) mod_http2: fixed a bug in handling of stream timeouts.
    [Stefan Eissing]
  * ) mod_tls: updating to rustls-ffi version 0.9.2 or higher.
    Checking in configure for proper version installed. Code
    fixes for changed clienthello member name.
    [Stefan Eissing]
  * ) mod_md:
  - New directive `MDMatchNames all|servernames` to allow more control over how
    MDomains are matched to VirtualHosts.
  - New directive `MDChallengeDns01Version`. Setting this to `2` will provide
    the command also with the challenge value on `teardown` invocation. In version
    1, the default, only the `setup` invocation gets this parameter.
    Refs #312. Thanks to @domrim for the idea.
  - For Managed Domain in "manual" mode, the checks if all used ServerName and
    ServerAlias are part of the MDomain now reports a warning instead of an error
    (AH10040) when not all names are present.
  - MDChallengeDns01 can now be configured for individual domains.
    Using PR from JÃ©rÃ´me Billiras (@bilhackmac) and adding test case and fixing proper working
  - Fixed a bug found by JÃ©rÃ´me Billiras (@bilhackmac) that caused the challenge
    teardown not being invoked as it should.
  * ) mod_ldap: Avoid performance overhead of APR-util rebind cache for
    OpenLDAP 2.2+.  PR 64414.  [Joe Orton]
  * ) mod_http2: new directive 'H2MaxDataFrameLen n' to limit the maximum
    amount of response body bytes put into a single HTTP/2 DATA frame.
    Setting this to 0 places no limit (but the max size allowed by the
    protocol is observed).
    The module, by default, tries to use the maximum size possible, which is
    somewhat around 16KB. This sets the maximum. When less response data is
    available, smaller frames will be sent.
  * ) mod_md: fixed passing of the server environment variables to programs
    started via MDMessageCmd and MDChallengeDns01 on *nix system.
    See &lt;https://github.com/icing/mod_md/issues/319&gt;.
    [Stefan Eissing]
  * ) mod_dav: Add DavBasePath directive to configure the repository root
    path.  PR 35077.  [Joe Orton]
  * ) mod_alias: Add AliasPreservePath directive to map the full
    path after the alias in a location. [Graham Leggett]
  * ) mod_alias: Add RedirectRelative to allow relative redirect targets to be
    issued as-is. [Eric Covener, Graham Leggett]
  * ) core: Add formats %{z} and %{strftime-format} to ErrorLogFormat, and make
    sure that if the format is configured early enough it applies to every log
    line.  PR 62161.  [Yann Ylavic]
  * ) mod_deflate: Add DeflateAlterETag to control how the ETag
    is modified. The 'NoChange' parameter mimics 2.2.x behavior.
    PR 45023, PR 39727. [Eric Covener]
  * ) core: Optimize send_brigade_nonblocking(). [Yann Ylavic, Christophe Jaillet]
  * ) mod_status: Remove duplicate keys "BusyWorkers" and "IdleWorkers".
    Resolve inconsistency between the previous two occurrences by
    counting workers in state SERVER_GRACEFUL no longer as busy,
    but instead in a new counter "GracefulWorkers" (or on HTML
    view as "workers gracefully restarting"). Also add the graceful
    counter as a new column to the existing HTML per process table
    for async MPMs. PR 63300. [Rainer Jung]</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1706529600">- use grep -E for egrep</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1708430400">- Use %autosetup macro. Allows to eliminate the usage of deprecated
  %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1712232000">- Update to 2.4.59:
  * ) mod_deflate: Fixes and better logging for handling various
    error and edge cases. [Eric Covener, Yann Ylavic, Joe Orton,
    Eric Norris &lt;enorris etsy.com&gt;]
  * ) Add CGIScriptTimeout to mod_cgi. [Eric Covener]
  * ) mod_xml2enc: Tolerate libxml2 2.12.0 and later.  PR 68610
    [ttachi &lt;tachihara AT hotmail.com&gt;]
  * ) mod_slotmem_shm: Use ap_os_is_path_absolute() to make it portable.
    [Jean-Frederic Clere]
  * ) mod_ssl: Use OpenSSL-standard functions to assemble CA
    name lists for SSLCACertificatePath/SSLCADNRequestPath.
    Names will now be consistently sorted. PR 61574.
    [Joe Orton]
  * ) mod_xml2enc: Update check to accept any text/ media type
    or any XML media type per RFC 7303, avoiding
    corruption of Microsoft OOXML formats.  PR 64339.
    [Joseph Heenan &lt;joseph.heenan fintechlabs.io&gt;, Joe Orton]
  * ) mod_http2: v2.0.26 with the following fixes:
  - Fixed `Date` header on requests upgraded from HTTP/1.1 (h2c). Fixes
    &lt;https://github.com/icing/mod_h2/issues/272&gt;.
  - Fixed small memory leak in h2 header bucket free. Thanks to
    Michael Kaufmann for finding this and providing the fix.
  * ) htcacheclean: In -a/-A mode, list all files per subdirectory
    rather than only one. PR 65091.
    [Artem Egorenkov &lt;aegorenkov.91 gmail.com&gt;]
  * ) mod_ssl: SSLProxyMachineCertificateFile/Path may reference files
    which include CA certificates; those CA certs are treated as if
    configured with SSLProxyMachineCertificateChainFile.  [Joe Orton]
  * ) htpasswd, htdbm, dbmmanage: Update help&amp;docs to refer to
    "hashing", rather than "encrypting" passwords.
    [Michele Preziuso &lt;mpreziuso kaosdynamics.com&gt;]
  * ) mod_ssl: Fix build with LibreSSL 2.0.7+. PR 64047.
    [Giovanni Bechis, Yann Ylavic]
  * ) htpasswd: Add support for passwords using SHA-2.  [Joe Orton,
    Yann Ylavic]
  * ) core: Allow mod_env to override system environment vars. [Joe Orton]
  * ) Allow mod_dav_fs to tolerate race conditions between PROPFIND and an
    operation which removes a directory/file between apr_dir_read() and
    apr_stat(). Current behaviour is to abort the connection which seems
    inferior to tolerating (and logging) the error. [Joe Orton]
  * ) mod_ldap: HTML-escape data in the ldap-status handler.
    [Eric Covener, Chamal De Silva]
  * ) mod_ssl: Disable the OpenSSL ENGINE API when OPENSSL_NO_ENGINE is set.
    Allow for "SSLCryptoDevice builtin" if the ENGINE API is not available,
    notably with OpenSSL &gt;= 3.  PR 68080.  [Yann Ylavic, Joe Orton]
  * ) mod_ssl: Improve compatibility with OpenSSL 3, fix build warnings about
    deprecated ENGINE_ API, honor OPENSSL_API_COMPAT setting while defaulting
    to compatibitily with version 1.1.1 (including ENGINEs / SSLCryptoDevice).
    [Yann Ylavic]
  * ) mod_ssl: release memory to the OS when needed. [Giovanni Bechis]
  * ) mod_proxy: Ignore (and warn about) enablereuse=on for ProxyPassMatch when
    some dollar substitution (backreference) happens in the hostname or port
    part of the URL.  [Yann Ylavic]
  * ) mod_proxy: Allow to set a TTL for how long DNS resolutions to backend
    systems are cached. [Yann Ylavic]
  * ) mod_proxy: Add optional third argument for ProxyRemote, which
    configures Basic authentication credentials to pass to the remote
    proxy.  PR 37355.  [Joe Orton]</changelog>
  <changelog author="pgajdos@suse.com" date="1718280000">- added patches [bsc#1226217]
  https://github.com/apache/httpd/pull/444/commits/c2fffd29b0f58bdc9caaaff4fec68e17a676f182
  + apache2-issue-444.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1720094400">- Update to 2.4.61
  * ) SECURITY: CVE-2024-39884: Apache HTTP Server: source code
    disclosure with handlers configured via AddType (cve.mitre.org)
    [boo#1227353]
    A regression in the core of Apache HTTP Server 2.4.60 ignores
    some use of the legacy content-type based configuration of
    handlers.   "AddType" and similar configuration, under some
    circumstances where files are requested indirectly, result in
    source code disclosure of local content. For example, PHP
    scripts may be served instead of interpreted.
    Users are recommended to upgrade to version 2.4.61, which fixes
    this issue.
- Update to 2.4.60
  * ) SECURITY: CVE-2024-39573: Apache HTTP Server: mod_rewrite proxy
    handler substitution (cve.mitre.org) [boo#1227271]
    Potential SSRF in mod_rewrite in Apache HTTP Server 2.4.59 and
    earlier allows an attacker to cause unsafe RewriteRules to
    unexpectedly setup URL's to be handled by mod_proxy.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38477: Apache HTTP Server: Crash resulting in
    Denial of Service in mod_proxy via a malicious request
    (cve.mitre.org) [boo#1227270]
    null pointer dereference in mod_proxy in Apache HTTP Server
    2.4.59 and earlier allows an attacker to crash the server via a
    malicious request.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38476: Apache HTTP Server may use
    exploitable/malicious backend application output to run local
    handlers via internal redirect (cve.mitre.org) [boo#1227269]
    Vulnerability in core of Apache HTTP Server 2.4.59 and earlier
    are vulnerably to information disclosure, SSRF or local script
    execution via backend applications whose response headers are
    malicious or exploitable.
    Note: Some legacy uses of the 'AddType' directive to connect a
    request to a handler must be ported to 'AddHandler' after this fix.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38475: Apache HTTP Server weakness in
    mod_rewrite when first segment of substitution matches
    filesystem path. (cve.mitre.org) [boo#1227268]
    Improper escaping of output in mod_rewrite in Apache HTTP Server
    2.4.59 and earlier allows an attacker to map URLs to filesystem
    locations that are permitted to be served by the server but are
    not intentionally/directly reachable by any URL, resulting in
    code execution or source code disclosure.
    Substitutions in server context that use a backreferences or
    variables as the first segment of the substitution are affected.
    Some unsafe RewiteRules will be broken by this change and the
    rewrite flag "UnsafePrefixStat" can be used to opt back in once
    ensuring the substitution is appropriately constrained.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38474: Apache HTTP Server weakness with
    encoded question marks in backreferences (cve.mitre.org)
    [boo#1227278]
    Substitution encoding issue in mod_rewrite in Apache HTTP Server
    2.4.59 and earlier allows attacker to execute scripts in
    directories permitted by the configuration but not directly
    reachable by any URL or source disclosure of scripts meant to
    only to be executed as CGI.
    Note: Some RewriteRules that capture and substitute unsafely will now
    fail unless rewrite flag "UnsafeAllow3F" is specified.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38473: Apache HTTP Server proxy encoding
    problem (cve.mitre.org) [boo#1227276]
    Encoding problem in mod_proxy in Apache HTTP Server 2.4.59 and
    earlier allows request URLs with incorrect encoding to be sent
    to backend services, potentially bypassing authentication via
    crafted requests.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38472: Apache HTTP Server on WIndows UNC SSRF
    (cve.mitre.org) [boo#1227267]
    SSRF in Apache HTTP Server on Windows allows to potentially leak
    NTML hashes to a malicious server via SSRF and malicious
    requests or content
    Note: Existing configurations that access UNC paths
    will have to configure new directive "UNCList" to allow access
    during request processing.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-36387: Apache HTTP Server: DoS by Null
    pointer in websocket over HTTP/2 (cve.mitre.org) [boo#1227272]
    Serving WebSocket protocol upgrades over a HTTP/2 connection
    could result in a Null Pointer dereference, leading to a crash
    of the server process, degrading performance.
    Credits: Marc Stern (&lt;marc.stern AT approach-cyber.com&gt;)
  * ) mod_proxy: Fix DNS requests and connections closed before the
    configured addressTTL.  BZ 69126.  [Yann Ylavic]
  * ) core: On Linux, log the real thread ID in error logs.  [Joe Orton]
  * ) core: Support zone/scope in IPv6 link-local addresses in Listen and
    VirtualHost directives (requires APR 1.7.x or later).  PR 59396
    [Joe Orton]
  * ) mod_ssl: Reject client-initiated renegotiation with a TLS alert
    (rather than connection closure).  [Joe Orton, Yann Ylavic]
  * ) Updated mime.types.  [Mohamed Akram &lt;mohd.akram outlook.com&gt;,
    Adam Silverstein &lt;adamsilverstein earthboundhosting.com&gt;]
  * ) mod_ssl: Fix a regression that causes the default DH parameters for a key
    no longer set and thus effectively disabling DH ciphers when no explicit
    DH parameters are set. PR 68863 [Ruediger Pluem]
  * ) mod_cgid: Optional support for file descriptor passing, fixing
    error log handling (configure --enable-cgid-fdpassing) on Unix
    platforms. PR 54221.  [Joe Orton]
  * ) mod_cgid/mod_cgi: Distinguish script stderr output clearly in
    error logs.  PR 61980.  [Hank Ibell &lt;hwibell gmail.com&gt;]
  * ) mod_tls: update version of rustls-ffi to v0.13.0.
    [Daniel McCarney (@cpu}]
  * ) mod_md:
  - Using OCSP stapling information to trigger certificate renewals. Proposed
    by @frasertweedale.
  - Added directive `MDCheckInterval` to control how often the server checks
    for detected revocations. Added proposals for configurations in the
    README.md chapter "Revocations".
  - OCSP stapling: accept OCSP responses without a `nextUpdate` entry which is
    allowed in RFC 6960. Treat those as having an update interval of 12 hours.
    Added by @frasertweedale.
  - Adapt OpenSSL usage to changes in their API. By Yann Ylavic.
- removed patches (upstreamed)
  - apache2-issue-444.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- Update to 2.4.62
  * ) SECURITY: CVE-2024-40898: Apache HTTP Server: SSRF with
    mod_rewrite in server/vhost context on Windows (cve.mitre.org)
    [boo#1228098]
    SSRF in Apache HTTP Server on Windows with mod_rewrite in
    server/vhost context, allows to potentially leak NTML hashes to
    a malicious server via SSRF and malicious requests.
    Users are recommended to upgrade to version 2.4.62 which fixes
    this issue.
    Credits: Smi1e (DBAPPSecurity Ltd.)
  * ) SECURITY: CVE-2024-40725: Apache HTTP Server: source code
    disclosure with handlers configured via AddType (cve.mitre.org)
    [boo#1228097]
    A partial fix for  CVE-2024-39884 in the core of Apache HTTP
    Server 2.4.61 ignores some use of the legacy content-type based
    configuration of handlers. "AddType" and similar configuration,
    under some circumstances where files are requested indirectly,
    result in source code disclosure of local content. For example,
    PHP scripts may be served instead of interpreted.
    Users are recommended to upgrade to version 2.4.62, which fixes
    this issue.
  * ) mod_proxy: Fix canonicalisation and FCGI env (PATH_INFO, SCRIPT_NAME) for
    "balancer:" URLs set via SetHandler, also allowing for "unix:" sockets
    with BalancerMember(s).  PR 69168.  [Yann Ylavic]
  * ) mod_proxy: Avoid AH01059 parsing error for SetHandler "unix:" URLs.
    PR 69160 [Yann Ylavic]
  * ) mod_ssl: Fix crashes in PKCS#11 ENGINE support with OpenSSL 3.2.
    [Joe Orton]
  * ) mod_ssl: Add support for loading certs/keys from pkcs11: URIs
    via OpenSSL 3.x providers.  [Ingo Franzki &lt;ifranzki linux.ibm.com&gt;]
  * ) mod_ssl: Restore SSL dumping on trace7 loglevel with OpenSSL &gt;= 3.0.
    [Ruediger Pluem, Yann Ylavic]
  * ) mpm_worker: Fix possible warning (AH00045) about children processes not
    terminating timely.  [Yann Ylavic]</changelog>
  <changelog author="Thorsten Kukuk &lt;kukuk@suse.com&gt;" date="1727697600">- Add /srv/www directories to filelist [bsc#1231027]
  (apache2 will not start since default config uses this directory)</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1730721600">- Explicitly mark start_apache2 as bash-dependent.</changelog>
  <changelog author="Martin Schreiner &lt;martin.schreiner@suse.com&gt;" date="1730808000">- Update httpd-framework to svn1921782.
- Fixes Apache's impact on bsc#1218342.</changelog>
</package>
<package pkgid="8970b9e530063d93a03feeef7f8bce247f3c0afeca510d05ef1bdede8348362d6d68d1e599d9548fa8889619bf7be23abfd4775a89808bd962646bd59c3b9387" name="apache2" arch="x86_64">
  <version epoch="0" ver="2.4.62" rel="3.1"/>
  <changelog author="pgajdos@suse.com" date="1654689600">- update httpd-framework to svn revision 1898917</changelog>
  <changelog author="Stefan Schubert &lt;schubi@intern&gt;" date="1656417600">- Moved logrotate files from user specific directory /etc/logrotate.d
  to vendor specific directory /usr/etc/logrotate.d.</changelog>
  <changelog author="Stefan Schubert &lt;schubi@suse.com&gt;" date="1662033600">- Migration to /usr/etc: Saving user changed configuration files
  in /etc and restoring them while an RPM update.</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1663675200">- Remove references to README.QUICKSTART and point them to
  https://en.opensuse.org/SDB:Apache_installation (bsc#1203573)</changelog>
  <changelog author="Stephan Kulow &lt;coolo@suse.com&gt;" date="1663934400">- The 2.4.54 release brought support for PCRE2, but for that we also
  need to change buildrequires to pcre2-devel</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1670846400">- switch to pkgconfig(zlib) so that alternative providers can be
  used</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1674043200">- This update fixes the following security issues:
  * CVE-2022-37436 [bsc#1207251], mod_proxy backend HTTP response splitting
  * CVE-2022-36760 [bsc#1207250], mod_proxy_ajp Possible request smuggling
  * CVE-2006-20001 [bsc#1207247], mod_dav out of bounds read, or write of zero byte
- Update to 2.4.55:
  * ) SECURITY: CVE-2022-37436: Apache HTTP Server: mod_proxy prior to
    2.4.55 allows a backend to trigger HTTP response splitting
    (cve.mitre.org)
    Prior to Apache HTTP Server 2.4.55, a malicious backend can
    cause the response headers to be truncated early, resulting in
    some headers being incorporated into the response body. If the
    later headers have any security purpose, they will not be
    interpreted by the client.
    Credits: Dimas Fariski Setyawan Putra (@nyxsorcerer)
  * ) SECURITY: CVE-2022-36760: Apache HTTP Server: mod_proxy_ajp
    Possible request smuggling (cve.mitre.org)
    Inconsistent Interpretation of HTTP Requests ('HTTP Request
    Smuggling') vulnerability in mod_proxy_ajp of Apache HTTP Server
    allows an attacker to smuggle requests to the AJP server it
    forwards requests to.  This issue affects Apache HTTP Server
    Apache HTTP Server 2.4 version 2.4.54 and prior versions.
    Credits: ZeddYu_Lu from Qi'anxin Research Institute of Legendsec
    at Qi'anxin Group
  * ) SECURITY: CVE-2006-20001: mod_dav out of  bounds read, or write
    of zero byte (cve.mitre.org)
    A carefully crafted If: request header can cause a memory read,
    or write of a single zero byte, in a pool (heap) memory location
    beyond the header value sent. This could cause the process to
    crash.
    This issue affects Apache HTTP Server 2.4.54 and earlier.
  * ) mod_dav: Open the lock database read-only when possible.
    PR 36636 [Wilson Felipe &lt;wfelipe gmail.com&gt;, manu]
  * ) mod_proxy_http2: apply the standard httpd content type handling
    to responses from the backend, as other proxy modules do. Fixes PR 66391.
    Thanks to Jérôme Billiras for providing the patch.
    [Stefan Eissing]
  * ) mod_dav: mod_dav overrides dav_fs response on PUT failure. PR 35981
    [Basant Kumar Kukreja &lt;basant.kukreja sun.com&gt;, Alejandro Alvarez
    &lt;alejandro.alvarez.ayllon cern.ch&gt;]
  * ) mod_proxy_hcheck: Honor worker timeout settings.  [Yann Ylavic]
  * ) mod_http2: version 2.0.10 of the module, synchronizing changes
    with the gitgub version. This is a partial rewrite of how connections
    and streams are handled.
  - an APR pollset and pipes (where supported) are used to monitor
    the main connection and react to IO for request/response handling.
    This replaces the stuttered timed waits of earlier versions.
  - H2SerializeHeaders directive still exists, but has no longer an effect.
  - Clients that seemingly misbehave still get less resources allocated,
    but ongoing requests are no longer disrupted.
  - Fixed an issue since 1.15.24 that "Server" headers in proxied requests
    were overwritten instead of preserved. [PR by @daum3ns]
  - A regression in v1.15.24 was fixed that could lead to httpd child
    processes not being terminated on a graceful reload or when reaching
    MaxConnectionsPerChild. When unprocessed h2 requests were queued at
    the time, these could stall. See #212.
  - Improved information displayed in 'server-status' for H2 connections when
    Extended Status is enabled. Now one can see the last request that IO
    operations happened on and transferred IO stats are updated as well.
  - When reaching server limits, such as MaxRequestsPerChild, the HTTP/2 connection
    send a GOAWAY frame much too early on new connections, leading to invalid
    protocol state and a client failing the request. See PR65731 at
    &lt;https://bz.apache.org/bugzilla/show_bug.cgi?id=65731&gt;.
    The module now initializes the HTTP/2 protocol correctly and allows the
    client to submit one request before the shutdown via a GOAWAY frame
    is being announced.
  - :scheme pseudo-header values, not matching the
    connection scheme, are forwarded via absolute uris to the
    http protocol processing to preserve semantics of the request.
    Checks on combinations of pseudo-headers values/absence
    have been added as described in RFC 7540. Fixes #230.
  - A bug that prevented trailers (e.g. HEADER frame at the end) to be
    generated in certain cases was fixed. See #233 where it prevented
    gRPC responses to be properly generated.
  - Request and response header values are automatically stripped of leading
    and trialing space/tab characters. This is equivalent behaviour to what
    Apache httpd's http/1.1 parser does.
    The checks for this in nghttp2 v1.50.0+ are disabled.
  - Extensive testing in production done by Alessandro Bianchi (@alexskynet)
    on the v2.0.x versions for stability. Many thanks!
  * ) mod_proxy_http2: fixed #235 by no longer forwarding 'Host:' header when
    request ':authority' is known. Improved test case that did not catch that
    the previous 'fix' was incorrect.
  * ) mod_proxy_hcheck: hcmethod now allows for HTTP/1.1 requests
    using GET11, HEAD11 and/or OPTIONS11. [Jim Jagielski]
  * ) mod_proxy: The AH03408 warning for a forcibly closed backend
    connection is now logged at INFO level.  [Yann Ylavic]
  * ) mod_ssl: When dumping the configuration, the existence of
    certificate/key files is no longer tested.  [Joe Orton]
  * ) mod_authn_core: Add expression support to AuthName and AuthType.
    [Graham Leggett]
  * ) mod_ssl: when a proxy connection had handled a request using SSL, an
    error was logged when "SSLProxyEngine" was only configured in the
    location/proxy section and not the overall server. The connection
    continued to work, the error log was in error. Fixed PR66190.
    [Stefan Eissing]
  * ) mod_proxy_hcheck: Re-enable workers in standard ERROR state. PR 66302.
    [Alessandro Cavaliere &lt;alessandro.cavalier7 unibo.it&gt;]
  * ) mod_proxy_hcheck: Detect AJP/CPING support correctly. PR 66300.
    [Alessandro Cavaliere &lt;alessandro.cavalier7 unibo.it&gt;]
  * ) mod_http2: Export mod_http2.h as public header. [Stefan Eissing]
  * ) mod_md: a new directive `MDStoreLocks` can be used on cluster
    setups with a shared file system for `MDStoreDir` to order
    activation of renewed certificates when several cluster nodes are
    restarted at the same time. Store locks are not enabled by default.
    Restored curl_easy cleanup behaviour from v2.4.14 and refactored
    the use of curl_multi for OCSP requests to work with that.
    Fixes &lt;https://github.com/icing/mod_md/issues/293&gt;.
  * ) core: Avoid an overflow on large inputs in ap_is_matchexp.  PR 66033
    [Ruediger Pluem]
  * ) mod_heartmonitor: Allow "HeartbeatMaxServers 0" to use file based
    storage instead of slotmem. Needed after setting
    HeartbeatMaxServers default to the documented value 10 in 2.4.54.
    PR 66131.  [Jérôme Billiras]
  * ) mod_dav: DAVlockDiscovery option to disable WebDAV lock discovery
    This is a game changer for performances if client use PROPFIND a lot,
    PR 66313. [Emmanuel Dreyfus]</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1678276800">- This update fixes the following security issues:
  * CVE-2023-27522 [bsc#1209049]: mod_proxy_uwsgi HTTP response splitting
  * CVE-2023-25690 [bsc#1209047]: HTTP request splitting with mod_rewrite and mod_proxy
- Update to 2.4.56:
  * ) rotatelogs: Add -T flag to allow subsequent rotated logfiles to be
    truncated without the initial logfile being truncated.  [Eric Covener]
  * ) mod_ldap: LDAPConnectionPoolTTL should accept negative values in order to
    allow connections of any age to be reused. Up to now, a negative value
    was handled as an error when parsing the configuration file.  PR 66421.
    [nailyk &lt;bzapache nailyk.fr&gt;, Christophe Jaillet]
  * ) mod_proxy_ajp: Report an error if the AJP backend sends an invalid number
    of headers. [Ruediger Pluem]
  * ) mod_md:
  - Enabling ED25519 support and certificate transparency information when
    building with libressl v3.5.0 and newer. Thanks to Giovanni Bechis.
  - MDChallengeDns01 can now be configured for individual domains.
    Thanks to Jérôme Billiras (@bilhackmac) for the initial PR.
  - Fixed a bug found by Jérôme Billiras (@bilhackmac) that caused the challenge
    teardown not being invoked as it should.
    [Stefan Eissing]
  * ) mod_http2: client resets of HTTP/2 streams led to unwanted 500 errors
    reported in access logs and error documents. The processing of the
    reset was correct, only unneccesary reporting was caused.
    [Stefan Eissing]
  * ) mod_proxy_uwsgi: Stricter backend HTTP response parsing/validation.
    [Yann Ylavic]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1680868800">- Update to 2.4.57:
  * ) mod_proxy: Check before forwarding that a nocanon path has not been
    rewritten with spaces during processing.  [Yann Ylavic]
  * ) mod_proxy: In case that AllowEncodedSlashes is set to NoDecode do not
    double encode encoded slashes in the URL sent by the reverse proxy to the
    backend. [Ruediger Pluem]
  * ) mod_http2: fixed a crash during connection termination. See PR 66539.
    [Stefan Eissing]
  * ) mod_rewrite: Fix a 2.4.56 regression for substitutions ending
    in a question mark. PR66547. [Eric Covener]
  * ) mod_rewrite: Add "BCTLS" and "BNE" RewriteRule flags. Re-allow encoded
    characters on redirections without the "NE" flag.
    [Yann Ylavic, Eric Covener]
  * ) mod_proxy: Fix double encoding of the uri-path of the request forwarded
    to the origin server, when using mapping=encoded|servlet.  [Yann Ylavic]
  * ) mod_mime: Do not match the extention against possible query string
    parameters in case ProxyPass was used with the nocanon option.
    [Ruediger Pluem]</changelog>
  <changelog author="Dirk Stoecker &lt;opensuse@dstoecker.de&gt;" date="1691236800">- Enable building of mod_md</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1697716800">- Update to 2.4.58:
  * ) SECURITY: CVE-2023-45802: Apache HTTP Server: HTTP/2 stream
    memory not reclaimed right away on RST (cve.mitre.org)
    When a HTTP/2 stream was reset (RST frame) by a client, there
    was a time window were the request's memory resources were not
    reclaimed immediately. Instead, de-allocation was deferred to
    connection close. A client could send new requests and resets,
    keeping the connection busy and open and causing the memory
    footprint to keep on growing. On connection close, all resources
    were reclaimed, but the process might run out of memory before
    that.
    This was found by the reporter during testing of CVE-2023-44487
    (HTTP/2 Rapid Reset Exploit) with their own test client. During
    "normal" HTTP/2 use, the probability to hit this bug is very
    low. The kept memory would not become noticeable before the
    connection closes or times out.
    Users are recommended to upgrade to version 2.4.58, which fixes
    the issue.
    Credits: Will Dormann of Vul Labs
  * ) SECURITY: CVE-2023-43622: Apache HTTP Server: DoS in HTTP/2 with
    initial windows size 0 (cve.mitre.org)
    An attacker, opening a HTTP/2 connection with an initial window
    size of 0, was able to block handling of that connection
    indefinitely in Apache HTTP Server. This could be used to
    exhaust worker resources in the server, similar to the well
    known "slow loris" attack pattern.
    This has been fixed in version 2.4.58, so that such connection
    are terminated properly after the configured connection timeout.
    This issue affects Apache HTTP Server: from 2.4.55 through
    2.4.57.
    Users are recommended to upgrade to version 2.4.58, which fixes
    the issue.
    Credits: Prof. Sven Dietrich (City University of New York)
  * ) SECURITY: CVE-2023-31122: mod_macro buffer over-read
    (cve.mitre.org)
    Out-of-bounds Read vulnerability in mod_macro of Apache HTTP
    Server.This issue affects Apache HTTP Server: through 2.4.57.
    Credits: David Shoon (github/davidshoon)
  * ) mod_ssl: Silence info log message "SSL Library Error: error:0A000126:
    SSL routines::unexpected eof while reading" when using
    OpenSSL 3 by setting SSL_OP_IGNORE_UNEXPECTED_EOF if
    available. [Rainer Jung]
  * ) mod_http2: improved early cleanup of streams.
    [Stefan Eissing]
  * ) mod_proxy_http2: improved error handling on connection errors while
    response is already underway.
    [Stefan Eissing]
  * ) mod_http2: fixed a bug that could lead to a crash in main connection
    output handling. This occured only when the last request on a HTTP/2
    connection had been processed and the session decided to shut down.
    This could lead to an attempt to send a final GOAWAY while the previous
    write was still in progress. See PR 66646.
    [Stefan Eissing]
  * ) mod_proxy_http2: fix `X-Forward-Host` header to carry the correct value.
    Fixes PR66752.
    [Stefan Eissing]
  * ) mod_http2: added support for bootstrapping WebSockets via HTTP/2, as
    described in RFC 8441. A new directive 'H2WebSockets on|off' has been
    added. The feature is by default not enabled.
    As also discussed in the manual, this feature should work for setups
    using "ProxyPass backend-url upgrade=websocket" without further changes.
    Special server modules for WebSockets will have to be adapted,
    most likely, as the handling if IO events is different with HTTP/2.
    HTTP/2 WebSockets are supported on platforms with native pipes. This
    excludes Windows.
    [Stefan Eissing]
  * ) mod_rewrite: Fix a regression with both a trailing ? and [QSA].
    in OCSP stapling. PR 66672. [Frank Meier &lt;frank.meier ergon.ch&gt;, covener]
  * ) mod_http2: fixed a bug in flushing pending data on an already closed
    connection that could lead to a busy loop, preventing the HTTP/2 session
    to close down successfully. Fixed PR 66624.
    [Stefan Eissing]
  * ) mod_http2: v2.0.15 with the following fixes and improvements
  - New directive 'H2EarlyHint name value' to add headers to a response,
    picked up already when a "103 Early Hints" response is sent. 'name' and
    'value' must comply to the HTTP field restrictions.
    This directive can be repeated several times and header fields of the
    same names add. Sending a 'Link' header with 'preload' relation will
    also cause a HTTP/2 PUSH if enabled and supported by the client.
  - Fixed an issue where requests were not logged and accounted in a timely
    fashion when the connection returns to "keepalive" handling, e.g. when
    the request served was the last outstanding one.
    This led to late appearance in access logs with wrong duration times
    reported.
  - Accurately report the bytes sent for a request in the '%O' Log format.
    This addresses #203, a long outstanding issue where mod_h2 has reported
    numbers over-eagerly from internal buffering and not what has actually
    been placed on the connection.
    The numbers are now the same with and without H2CopyFiles enabled.
    [Stefan Eissing]
  * ) mod_proxy_http2: fix retry handling to not leak temporary errors.
    On detecting that that an existing connection was shutdown by the other
    side, a 503 response leaked even though the request was retried on a
    fresh connection.
    [Stefan Eissing]
  * ) mod_rewrite: Add server directory to include path as mod_rewrite requires
    test_char.h. PR 66571 [Valeria Petrov &lt;valeria.petrov@spinetix.com&gt;]
  * ) mod_http2: new directive `H2ProxyRequests on|off` to enable handling
    of HTTP/2 requests in a forward proxy configuration.
    General forward proxying is enabled via `ProxyRequests`. If the
    HTTP/2 protocol is also enabled for such a server/host, this new
    directive is needed in addition.
    [Stefan Eissing]
  * ) core: Updated conf/mime.types:
  - .js moved from 'application/javascript' to 'text/javascript'
  - .mjs was added as 'text/javascript'
  - add .opus ('audio/ogg')
  - add 'application/vnd.geogebra.slides'
  - add WebAssembly MIME types and extension
    [Mathias Bynens &lt;@mathiasbynens&gt; via PR 318,
    Richard de Boer &lt;richard tubul.net&gt;, Dave Hodder &lt;dmh dmh.org.uk&gt;,
    Zbynek Konecny &lt;zbynek1729 gmail.com&gt;]
  * ) mod_proxy_http2: fixed using the wrong "bucket_alloc" from the backend
    connection when sending data on the frontend one. This caused crashes
    or infinite loops in rare situations.
  * ) mod_proxy_http2: fixed a bug in retry/response handling that could lead
    to wrong status codes or HTTP messages send at the end of response bodies
    exceeding the announced content-length.
  * ) mod_proxy_http2: fix retry handling to not leak temporary errors.
    On detecting that that an existing connection was shutdown by the other
    side, a 503 response leaked even though the request was retried on a
    fresh connection.
  * ) mod_http2: fixed a bug that did cleanup of consumed and pending buckets in
    the wrong order when a bucket_beam was destroyed.
    [Stefan Eissing]
  * ) mod_http2: avoid double chunked-encoding on internal redirects.
    PR 66597 [Yann Ylavic, Stefan Eissing]
  * ) mod_http2: Fix reporting of `Total Accesses` in server-status to not count
    HTTP/2 requests twice. Fixes PR 66801.
    [Stefan Eissing]
  * ) mod_ssl: Fix handling of Certificate Revoked messages
    in OCSP stapling. PR 66626. [&lt;gmoniker gmail.com&gt;]
  * ) mod_http2: fixed a bug in handling of stream timeouts.
    [Stefan Eissing]
  * ) mod_tls: updating to rustls-ffi version 0.9.2 or higher.
    Checking in configure for proper version installed. Code
    fixes for changed clienthello member name.
    [Stefan Eissing]
  * ) mod_md:
  - New directive `MDMatchNames all|servernames` to allow more control over how
    MDomains are matched to VirtualHosts.
  - New directive `MDChallengeDns01Version`. Setting this to `2` will provide
    the command also with the challenge value on `teardown` invocation. In version
    1, the default, only the `setup` invocation gets this parameter.
    Refs #312. Thanks to @domrim for the idea.
  - For Managed Domain in "manual" mode, the checks if all used ServerName and
    ServerAlias are part of the MDomain now reports a warning instead of an error
    (AH10040) when not all names are present.
  - MDChallengeDns01 can now be configured for individual domains.
    Using PR from JÃ©rÃ´me Billiras (@bilhackmac) and adding test case and fixing proper working
  - Fixed a bug found by JÃ©rÃ´me Billiras (@bilhackmac) that caused the challenge
    teardown not being invoked as it should.
  * ) mod_ldap: Avoid performance overhead of APR-util rebind cache for
    OpenLDAP 2.2+.  PR 64414.  [Joe Orton]
  * ) mod_http2: new directive 'H2MaxDataFrameLen n' to limit the maximum
    amount of response body bytes put into a single HTTP/2 DATA frame.
    Setting this to 0 places no limit (but the max size allowed by the
    protocol is observed).
    The module, by default, tries to use the maximum size possible, which is
    somewhat around 16KB. This sets the maximum. When less response data is
    available, smaller frames will be sent.
  * ) mod_md: fixed passing of the server environment variables to programs
    started via MDMessageCmd and MDChallengeDns01 on *nix system.
    See &lt;https://github.com/icing/mod_md/issues/319&gt;.
    [Stefan Eissing]
  * ) mod_dav: Add DavBasePath directive to configure the repository root
    path.  PR 35077.  [Joe Orton]
  * ) mod_alias: Add AliasPreservePath directive to map the full
    path after the alias in a location. [Graham Leggett]
  * ) mod_alias: Add RedirectRelative to allow relative redirect targets to be
    issued as-is. [Eric Covener, Graham Leggett]
  * ) core: Add formats %{z} and %{strftime-format} to ErrorLogFormat, and make
    sure that if the format is configured early enough it applies to every log
    line.  PR 62161.  [Yann Ylavic]
  * ) mod_deflate: Add DeflateAlterETag to control how the ETag
    is modified. The 'NoChange' parameter mimics 2.2.x behavior.
    PR 45023, PR 39727. [Eric Covener]
  * ) core: Optimize send_brigade_nonblocking(). [Yann Ylavic, Christophe Jaillet]
  * ) mod_status: Remove duplicate keys "BusyWorkers" and "IdleWorkers".
    Resolve inconsistency between the previous two occurrences by
    counting workers in state SERVER_GRACEFUL no longer as busy,
    but instead in a new counter "GracefulWorkers" (or on HTML
    view as "workers gracefully restarting"). Also add the graceful
    counter as a new column to the existing HTML per process table
    for async MPMs. PR 63300. [Rainer Jung]</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1706529600">- use grep -E for egrep</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1708430400">- Use %autosetup macro. Allows to eliminate the usage of deprecated
  %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1712232000">- Update to 2.4.59:
  * ) mod_deflate: Fixes and better logging for handling various
    error and edge cases. [Eric Covener, Yann Ylavic, Joe Orton,
    Eric Norris &lt;enorris etsy.com&gt;]
  * ) Add CGIScriptTimeout to mod_cgi. [Eric Covener]
  * ) mod_xml2enc: Tolerate libxml2 2.12.0 and later.  PR 68610
    [ttachi &lt;tachihara AT hotmail.com&gt;]
  * ) mod_slotmem_shm: Use ap_os_is_path_absolute() to make it portable.
    [Jean-Frederic Clere]
  * ) mod_ssl: Use OpenSSL-standard functions to assemble CA
    name lists for SSLCACertificatePath/SSLCADNRequestPath.
    Names will now be consistently sorted. PR 61574.
    [Joe Orton]
  * ) mod_xml2enc: Update check to accept any text/ media type
    or any XML media type per RFC 7303, avoiding
    corruption of Microsoft OOXML formats.  PR 64339.
    [Joseph Heenan &lt;joseph.heenan fintechlabs.io&gt;, Joe Orton]
  * ) mod_http2: v2.0.26 with the following fixes:
  - Fixed `Date` header on requests upgraded from HTTP/1.1 (h2c). Fixes
    &lt;https://github.com/icing/mod_h2/issues/272&gt;.
  - Fixed small memory leak in h2 header bucket free. Thanks to
    Michael Kaufmann for finding this and providing the fix.
  * ) htcacheclean: In -a/-A mode, list all files per subdirectory
    rather than only one. PR 65091.
    [Artem Egorenkov &lt;aegorenkov.91 gmail.com&gt;]
  * ) mod_ssl: SSLProxyMachineCertificateFile/Path may reference files
    which include CA certificates; those CA certs are treated as if
    configured with SSLProxyMachineCertificateChainFile.  [Joe Orton]
  * ) htpasswd, htdbm, dbmmanage: Update help&amp;docs to refer to
    "hashing", rather than "encrypting" passwords.
    [Michele Preziuso &lt;mpreziuso kaosdynamics.com&gt;]
  * ) mod_ssl: Fix build with LibreSSL 2.0.7+. PR 64047.
    [Giovanni Bechis, Yann Ylavic]
  * ) htpasswd: Add support for passwords using SHA-2.  [Joe Orton,
    Yann Ylavic]
  * ) core: Allow mod_env to override system environment vars. [Joe Orton]
  * ) Allow mod_dav_fs to tolerate race conditions between PROPFIND and an
    operation which removes a directory/file between apr_dir_read() and
    apr_stat(). Current behaviour is to abort the connection which seems
    inferior to tolerating (and logging) the error. [Joe Orton]
  * ) mod_ldap: HTML-escape data in the ldap-status handler.
    [Eric Covener, Chamal De Silva]
  * ) mod_ssl: Disable the OpenSSL ENGINE API when OPENSSL_NO_ENGINE is set.
    Allow for "SSLCryptoDevice builtin" if the ENGINE API is not available,
    notably with OpenSSL &gt;= 3.  PR 68080.  [Yann Ylavic, Joe Orton]
  * ) mod_ssl: Improve compatibility with OpenSSL 3, fix build warnings about
    deprecated ENGINE_ API, honor OPENSSL_API_COMPAT setting while defaulting
    to compatibitily with version 1.1.1 (including ENGINEs / SSLCryptoDevice).
    [Yann Ylavic]
  * ) mod_ssl: release memory to the OS when needed. [Giovanni Bechis]
  * ) mod_proxy: Ignore (and warn about) enablereuse=on for ProxyPassMatch when
    some dollar substitution (backreference) happens in the hostname or port
    part of the URL.  [Yann Ylavic]
  * ) mod_proxy: Allow to set a TTL for how long DNS resolutions to backend
    systems are cached. [Yann Ylavic]
  * ) mod_proxy: Add optional third argument for ProxyRemote, which
    configures Basic authentication credentials to pass to the remote
    proxy.  PR 37355.  [Joe Orton]</changelog>
  <changelog author="pgajdos@suse.com" date="1718280000">- added patches [bsc#1226217]
  https://github.com/apache/httpd/pull/444/commits/c2fffd29b0f58bdc9caaaff4fec68e17a676f182
  + apache2-issue-444.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1720094400">- Update to 2.4.61
  * ) SECURITY: CVE-2024-39884: Apache HTTP Server: source code
    disclosure with handlers configured via AddType (cve.mitre.org)
    [boo#1227353]
    A regression in the core of Apache HTTP Server 2.4.60 ignores
    some use of the legacy content-type based configuration of
    handlers.   "AddType" and similar configuration, under some
    circumstances where files are requested indirectly, result in
    source code disclosure of local content. For example, PHP
    scripts may be served instead of interpreted.
    Users are recommended to upgrade to version 2.4.61, which fixes
    this issue.
- Update to 2.4.60
  * ) SECURITY: CVE-2024-39573: Apache HTTP Server: mod_rewrite proxy
    handler substitution (cve.mitre.org) [boo#1227271]
    Potential SSRF in mod_rewrite in Apache HTTP Server 2.4.59 and
    earlier allows an attacker to cause unsafe RewriteRules to
    unexpectedly setup URL's to be handled by mod_proxy.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38477: Apache HTTP Server: Crash resulting in
    Denial of Service in mod_proxy via a malicious request
    (cve.mitre.org) [boo#1227270]
    null pointer dereference in mod_proxy in Apache HTTP Server
    2.4.59 and earlier allows an attacker to crash the server via a
    malicious request.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38476: Apache HTTP Server may use
    exploitable/malicious backend application output to run local
    handlers via internal redirect (cve.mitre.org) [boo#1227269]
    Vulnerability in core of Apache HTTP Server 2.4.59 and earlier
    are vulnerably to information disclosure, SSRF or local script
    execution via backend applications whose response headers are
    malicious or exploitable.
    Note: Some legacy uses of the 'AddType' directive to connect a
    request to a handler must be ported to 'AddHandler' after this fix.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38475: Apache HTTP Server weakness in
    mod_rewrite when first segment of substitution matches
    filesystem path. (cve.mitre.org) [boo#1227268]
    Improper escaping of output in mod_rewrite in Apache HTTP Server
    2.4.59 and earlier allows an attacker to map URLs to filesystem
    locations that are permitted to be served by the server but are
    not intentionally/directly reachable by any URL, resulting in
    code execution or source code disclosure.
    Substitutions in server context that use a backreferences or
    variables as the first segment of the substitution are affected.
    Some unsafe RewiteRules will be broken by this change and the
    rewrite flag "UnsafePrefixStat" can be used to opt back in once
    ensuring the substitution is appropriately constrained.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38474: Apache HTTP Server weakness with
    encoded question marks in backreferences (cve.mitre.org)
    [boo#1227278]
    Substitution encoding issue in mod_rewrite in Apache HTTP Server
    2.4.59 and earlier allows attacker to execute scripts in
    directories permitted by the configuration but not directly
    reachable by any URL or source disclosure of scripts meant to
    only to be executed as CGI.
    Note: Some RewriteRules that capture and substitute unsafely will now
    fail unless rewrite flag "UnsafeAllow3F" is specified.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38473: Apache HTTP Server proxy encoding
    problem (cve.mitre.org) [boo#1227276]
    Encoding problem in mod_proxy in Apache HTTP Server 2.4.59 and
    earlier allows request URLs with incorrect encoding to be sent
    to backend services, potentially bypassing authentication via
    crafted requests.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38472: Apache HTTP Server on WIndows UNC SSRF
    (cve.mitre.org) [boo#1227267]
    SSRF in Apache HTTP Server on Windows allows to potentially leak
    NTML hashes to a malicious server via SSRF and malicious
    requests or content
    Note: Existing configurations that access UNC paths
    will have to configure new directive "UNCList" to allow access
    during request processing.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-36387: Apache HTTP Server: DoS by Null
    pointer in websocket over HTTP/2 (cve.mitre.org) [boo#1227272]
    Serving WebSocket protocol upgrades over a HTTP/2 connection
    could result in a Null Pointer dereference, leading to a crash
    of the server process, degrading performance.
    Credits: Marc Stern (&lt;marc.stern AT approach-cyber.com&gt;)
  * ) mod_proxy: Fix DNS requests and connections closed before the
    configured addressTTL.  BZ 69126.  [Yann Ylavic]
  * ) core: On Linux, log the real thread ID in error logs.  [Joe Orton]
  * ) core: Support zone/scope in IPv6 link-local addresses in Listen and
    VirtualHost directives (requires APR 1.7.x or later).  PR 59396
    [Joe Orton]
  * ) mod_ssl: Reject client-initiated renegotiation with a TLS alert
    (rather than connection closure).  [Joe Orton, Yann Ylavic]
  * ) Updated mime.types.  [Mohamed Akram &lt;mohd.akram outlook.com&gt;,
    Adam Silverstein &lt;adamsilverstein earthboundhosting.com&gt;]
  * ) mod_ssl: Fix a regression that causes the default DH parameters for a key
    no longer set and thus effectively disabling DH ciphers when no explicit
    DH parameters are set. PR 68863 [Ruediger Pluem]
  * ) mod_cgid: Optional support for file descriptor passing, fixing
    error log handling (configure --enable-cgid-fdpassing) on Unix
    platforms. PR 54221.  [Joe Orton]
  * ) mod_cgid/mod_cgi: Distinguish script stderr output clearly in
    error logs.  PR 61980.  [Hank Ibell &lt;hwibell gmail.com&gt;]
  * ) mod_tls: update version of rustls-ffi to v0.13.0.
    [Daniel McCarney (@cpu}]
  * ) mod_md:
  - Using OCSP stapling information to trigger certificate renewals. Proposed
    by @frasertweedale.
  - Added directive `MDCheckInterval` to control how often the server checks
    for detected revocations. Added proposals for configurations in the
    README.md chapter "Revocations".
  - OCSP stapling: accept OCSP responses without a `nextUpdate` entry which is
    allowed in RFC 6960. Treat those as having an update interval of 12 hours.
    Added by @frasertweedale.
  - Adapt OpenSSL usage to changes in their API. By Yann Ylavic.
- removed patches (upstreamed)
  - apache2-issue-444.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- Update to 2.4.62
  * ) SECURITY: CVE-2024-40898: Apache HTTP Server: SSRF with
    mod_rewrite in server/vhost context on Windows (cve.mitre.org)
    [boo#1228098]
    SSRF in Apache HTTP Server on Windows with mod_rewrite in
    server/vhost context, allows to potentially leak NTML hashes to
    a malicious server via SSRF and malicious requests.
    Users are recommended to upgrade to version 2.4.62 which fixes
    this issue.
    Credits: Smi1e (DBAPPSecurity Ltd.)
  * ) SECURITY: CVE-2024-40725: Apache HTTP Server: source code
    disclosure with handlers configured via AddType (cve.mitre.org)
    [boo#1228097]
    A partial fix for  CVE-2024-39884 in the core of Apache HTTP
    Server 2.4.61 ignores some use of the legacy content-type based
    configuration of handlers. "AddType" and similar configuration,
    under some circumstances where files are requested indirectly,
    result in source code disclosure of local content. For example,
    PHP scripts may be served instead of interpreted.
    Users are recommended to upgrade to version 2.4.62, which fixes
    this issue.
  * ) mod_proxy: Fix canonicalisation and FCGI env (PATH_INFO, SCRIPT_NAME) for
    "balancer:" URLs set via SetHandler, also allowing for "unix:" sockets
    with BalancerMember(s).  PR 69168.  [Yann Ylavic]
  * ) mod_proxy: Avoid AH01059 parsing error for SetHandler "unix:" URLs.
    PR 69160 [Yann Ylavic]
  * ) mod_ssl: Fix crashes in PKCS#11 ENGINE support with OpenSSL 3.2.
    [Joe Orton]
  * ) mod_ssl: Add support for loading certs/keys from pkcs11: URIs
    via OpenSSL 3.x providers.  [Ingo Franzki &lt;ifranzki linux.ibm.com&gt;]
  * ) mod_ssl: Restore SSL dumping on trace7 loglevel with OpenSSL &gt;= 3.0.
    [Ruediger Pluem, Yann Ylavic]
  * ) mpm_worker: Fix possible warning (AH00045) about children processes not
    terminating timely.  [Yann Ylavic]</changelog>
  <changelog author="Thorsten Kukuk &lt;kukuk@suse.com&gt;" date="1727697600">- Add /srv/www directories to filelist [bsc#1231027]
  (apache2 will not start since default config uses this directory)</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1730721600">- Explicitly mark start_apache2 as bash-dependent.</changelog>
  <changelog author="Martin Schreiner &lt;martin.schreiner@suse.com&gt;" date="1730808000">- Update httpd-framework to svn1921782.
- Fixes Apache's impact on bsc#1218342.</changelog>
</package>
<package pkgid="f6996eeff7d6deb897b5a6f95421b8dec979cc70e0a9792d3a8a8b21476017f93fb6949113a3dac0e489f4727f541688e196df799573c5df1e572d6e497a0b5c" name="apache2-debuginfo" arch="i586">
  <version epoch="0" ver="2.4.62" rel="3.1"/>
  <changelog author="pgajdos@suse.com" date="1654689600">- update httpd-framework to svn revision 1898917</changelog>
  <changelog author="Stefan Schubert &lt;schubi@intern&gt;" date="1656417600">- Moved logrotate files from user specific directory /etc/logrotate.d
  to vendor specific directory /usr/etc/logrotate.d.</changelog>
  <changelog author="Stefan Schubert &lt;schubi@suse.com&gt;" date="1662033600">- Migration to /usr/etc: Saving user changed configuration files
  in /etc and restoring them while an RPM update.</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1663675200">- Remove references to README.QUICKSTART and point them to
  https://en.opensuse.org/SDB:Apache_installation (bsc#1203573)</changelog>
  <changelog author="Stephan Kulow &lt;coolo@suse.com&gt;" date="1663934400">- The 2.4.54 release brought support for PCRE2, but for that we also
  need to change buildrequires to pcre2-devel</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1670846400">- switch to pkgconfig(zlib) so that alternative providers can be
  used</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1674043200">- This update fixes the following security issues:
  * CVE-2022-37436 [bsc#1207251], mod_proxy backend HTTP response splitting
  * CVE-2022-36760 [bsc#1207250], mod_proxy_ajp Possible request smuggling
  * CVE-2006-20001 [bsc#1207247], mod_dav out of bounds read, or write of zero byte
- Update to 2.4.55:
  * ) SECURITY: CVE-2022-37436: Apache HTTP Server: mod_proxy prior to
    2.4.55 allows a backend to trigger HTTP response splitting
    (cve.mitre.org)
    Prior to Apache HTTP Server 2.4.55, a malicious backend can
    cause the response headers to be truncated early, resulting in
    some headers being incorporated into the response body. If the
    later headers have any security purpose, they will not be
    interpreted by the client.
    Credits: Dimas Fariski Setyawan Putra (@nyxsorcerer)
  * ) SECURITY: CVE-2022-36760: Apache HTTP Server: mod_proxy_ajp
    Possible request smuggling (cve.mitre.org)
    Inconsistent Interpretation of HTTP Requests ('HTTP Request
    Smuggling') vulnerability in mod_proxy_ajp of Apache HTTP Server
    allows an attacker to smuggle requests to the AJP server it
    forwards requests to.  This issue affects Apache HTTP Server
    Apache HTTP Server 2.4 version 2.4.54 and prior versions.
    Credits: ZeddYu_Lu from Qi'anxin Research Institute of Legendsec
    at Qi'anxin Group
  * ) SECURITY: CVE-2006-20001: mod_dav out of  bounds read, or write
    of zero byte (cve.mitre.org)
    A carefully crafted If: request header can cause a memory read,
    or write of a single zero byte, in a pool (heap) memory location
    beyond the header value sent. This could cause the process to
    crash.
    This issue affects Apache HTTP Server 2.4.54 and earlier.
  * ) mod_dav: Open the lock database read-only when possible.
    PR 36636 [Wilson Felipe &lt;wfelipe gmail.com&gt;, manu]
  * ) mod_proxy_http2: apply the standard httpd content type handling
    to responses from the backend, as other proxy modules do. Fixes PR 66391.
    Thanks to Jérôme Billiras for providing the patch.
    [Stefan Eissing]
  * ) mod_dav: mod_dav overrides dav_fs response on PUT failure. PR 35981
    [Basant Kumar Kukreja &lt;basant.kukreja sun.com&gt;, Alejandro Alvarez
    &lt;alejandro.alvarez.ayllon cern.ch&gt;]
  * ) mod_proxy_hcheck: Honor worker timeout settings.  [Yann Ylavic]
  * ) mod_http2: version 2.0.10 of the module, synchronizing changes
    with the gitgub version. This is a partial rewrite of how connections
    and streams are handled.
  - an APR pollset and pipes (where supported) are used to monitor
    the main connection and react to IO for request/response handling.
    This replaces the stuttered timed waits of earlier versions.
  - H2SerializeHeaders directive still exists, but has no longer an effect.
  - Clients that seemingly misbehave still get less resources allocated,
    but ongoing requests are no longer disrupted.
  - Fixed an issue since 1.15.24 that "Server" headers in proxied requests
    were overwritten instead of preserved. [PR by @daum3ns]
  - A regression in v1.15.24 was fixed that could lead to httpd child
    processes not being terminated on a graceful reload or when reaching
    MaxConnectionsPerChild. When unprocessed h2 requests were queued at
    the time, these could stall. See #212.
  - Improved information displayed in 'server-status' for H2 connections when
    Extended Status is enabled. Now one can see the last request that IO
    operations happened on and transferred IO stats are updated as well.
  - When reaching server limits, such as MaxRequestsPerChild, the HTTP/2 connection
    send a GOAWAY frame much too early on new connections, leading to invalid
    protocol state and a client failing the request. See PR65731 at
    &lt;https://bz.apache.org/bugzilla/show_bug.cgi?id=65731&gt;.
    The module now initializes the HTTP/2 protocol correctly and allows the
    client to submit one request before the shutdown via a GOAWAY frame
    is being announced.
  - :scheme pseudo-header values, not matching the
    connection scheme, are forwarded via absolute uris to the
    http protocol processing to preserve semantics of the request.
    Checks on combinations of pseudo-headers values/absence
    have been added as described in RFC 7540. Fixes #230.
  - A bug that prevented trailers (e.g. HEADER frame at the end) to be
    generated in certain cases was fixed. See #233 where it prevented
    gRPC responses to be properly generated.
  - Request and response header values are automatically stripped of leading
    and trialing space/tab characters. This is equivalent behaviour to what
    Apache httpd's http/1.1 parser does.
    The checks for this in nghttp2 v1.50.0+ are disabled.
  - Extensive testing in production done by Alessandro Bianchi (@alexskynet)
    on the v2.0.x versions for stability. Many thanks!
  * ) mod_proxy_http2: fixed #235 by no longer forwarding 'Host:' header when
    request ':authority' is known. Improved test case that did not catch that
    the previous 'fix' was incorrect.
  * ) mod_proxy_hcheck: hcmethod now allows for HTTP/1.1 requests
    using GET11, HEAD11 and/or OPTIONS11. [Jim Jagielski]
  * ) mod_proxy: The AH03408 warning for a forcibly closed backend
    connection is now logged at INFO level.  [Yann Ylavic]
  * ) mod_ssl: When dumping the configuration, the existence of
    certificate/key files is no longer tested.  [Joe Orton]
  * ) mod_authn_core: Add expression support to AuthName and AuthType.
    [Graham Leggett]
  * ) mod_ssl: when a proxy connection had handled a request using SSL, an
    error was logged when "SSLProxyEngine" was only configured in the
    location/proxy section and not the overall server. The connection
    continued to work, the error log was in error. Fixed PR66190.
    [Stefan Eissing]
  * ) mod_proxy_hcheck: Re-enable workers in standard ERROR state. PR 66302.
    [Alessandro Cavaliere &lt;alessandro.cavalier7 unibo.it&gt;]
  * ) mod_proxy_hcheck: Detect AJP/CPING support correctly. PR 66300.
    [Alessandro Cavaliere &lt;alessandro.cavalier7 unibo.it&gt;]
  * ) mod_http2: Export mod_http2.h as public header. [Stefan Eissing]
  * ) mod_md: a new directive `MDStoreLocks` can be used on cluster
    setups with a shared file system for `MDStoreDir` to order
    activation of renewed certificates when several cluster nodes are
    restarted at the same time. Store locks are not enabled by default.
    Restored curl_easy cleanup behaviour from v2.4.14 and refactored
    the use of curl_multi for OCSP requests to work with that.
    Fixes &lt;https://github.com/icing/mod_md/issues/293&gt;.
  * ) core: Avoid an overflow on large inputs in ap_is_matchexp.  PR 66033
    [Ruediger Pluem]
  * ) mod_heartmonitor: Allow "HeartbeatMaxServers 0" to use file based
    storage instead of slotmem. Needed after setting
    HeartbeatMaxServers default to the documented value 10 in 2.4.54.
    PR 66131.  [Jérôme Billiras]
  * ) mod_dav: DAVlockDiscovery option to disable WebDAV lock discovery
    This is a game changer for performances if client use PROPFIND a lot,
    PR 66313. [Emmanuel Dreyfus]</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1678276800">- This update fixes the following security issues:
  * CVE-2023-27522 [bsc#1209049]: mod_proxy_uwsgi HTTP response splitting
  * CVE-2023-25690 [bsc#1209047]: HTTP request splitting with mod_rewrite and mod_proxy
- Update to 2.4.56:
  * ) rotatelogs: Add -T flag to allow subsequent rotated logfiles to be
    truncated without the initial logfile being truncated.  [Eric Covener]
  * ) mod_ldap: LDAPConnectionPoolTTL should accept negative values in order to
    allow connections of any age to be reused. Up to now, a negative value
    was handled as an error when parsing the configuration file.  PR 66421.
    [nailyk &lt;bzapache nailyk.fr&gt;, Christophe Jaillet]
  * ) mod_proxy_ajp: Report an error if the AJP backend sends an invalid number
    of headers. [Ruediger Pluem]
  * ) mod_md:
  - Enabling ED25519 support and certificate transparency information when
    building with libressl v3.5.0 and newer. Thanks to Giovanni Bechis.
  - MDChallengeDns01 can now be configured for individual domains.
    Thanks to Jérôme Billiras (@bilhackmac) for the initial PR.
  - Fixed a bug found by Jérôme Billiras (@bilhackmac) that caused the challenge
    teardown not being invoked as it should.
    [Stefan Eissing]
  * ) mod_http2: client resets of HTTP/2 streams led to unwanted 500 errors
    reported in access logs and error documents. The processing of the
    reset was correct, only unneccesary reporting was caused.
    [Stefan Eissing]
  * ) mod_proxy_uwsgi: Stricter backend HTTP response parsing/validation.
    [Yann Ylavic]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1680868800">- Update to 2.4.57:
  * ) mod_proxy: Check before forwarding that a nocanon path has not been
    rewritten with spaces during processing.  [Yann Ylavic]
  * ) mod_proxy: In case that AllowEncodedSlashes is set to NoDecode do not
    double encode encoded slashes in the URL sent by the reverse proxy to the
    backend. [Ruediger Pluem]
  * ) mod_http2: fixed a crash during connection termination. See PR 66539.
    [Stefan Eissing]
  * ) mod_rewrite: Fix a 2.4.56 regression for substitutions ending
    in a question mark. PR66547. [Eric Covener]
  * ) mod_rewrite: Add "BCTLS" and "BNE" RewriteRule flags. Re-allow encoded
    characters on redirections without the "NE" flag.
    [Yann Ylavic, Eric Covener]
  * ) mod_proxy: Fix double encoding of the uri-path of the request forwarded
    to the origin server, when using mapping=encoded|servlet.  [Yann Ylavic]
  * ) mod_mime: Do not match the extention against possible query string
    parameters in case ProxyPass was used with the nocanon option.
    [Ruediger Pluem]</changelog>
  <changelog author="Dirk Stoecker &lt;opensuse@dstoecker.de&gt;" date="1691236800">- Enable building of mod_md</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1697716800">- Update to 2.4.58:
  * ) SECURITY: CVE-2023-45802: Apache HTTP Server: HTTP/2 stream
    memory not reclaimed right away on RST (cve.mitre.org)
    When a HTTP/2 stream was reset (RST frame) by a client, there
    was a time window were the request's memory resources were not
    reclaimed immediately. Instead, de-allocation was deferred to
    connection close. A client could send new requests and resets,
    keeping the connection busy and open and causing the memory
    footprint to keep on growing. On connection close, all resources
    were reclaimed, but the process might run out of memory before
    that.
    This was found by the reporter during testing of CVE-2023-44487
    (HTTP/2 Rapid Reset Exploit) with their own test client. During
    "normal" HTTP/2 use, the probability to hit this bug is very
    low. The kept memory would not become noticeable before the
    connection closes or times out.
    Users are recommended to upgrade to version 2.4.58, which fixes
    the issue.
    Credits: Will Dormann of Vul Labs
  * ) SECURITY: CVE-2023-43622: Apache HTTP Server: DoS in HTTP/2 with
    initial windows size 0 (cve.mitre.org)
    An attacker, opening a HTTP/2 connection with an initial window
    size of 0, was able to block handling of that connection
    indefinitely in Apache HTTP Server. This could be used to
    exhaust worker resources in the server, similar to the well
    known "slow loris" attack pattern.
    This has been fixed in version 2.4.58, so that such connection
    are terminated properly after the configured connection timeout.
    This issue affects Apache HTTP Server: from 2.4.55 through
    2.4.57.
    Users are recommended to upgrade to version 2.4.58, which fixes
    the issue.
    Credits: Prof. Sven Dietrich (City University of New York)
  * ) SECURITY: CVE-2023-31122: mod_macro buffer over-read
    (cve.mitre.org)
    Out-of-bounds Read vulnerability in mod_macro of Apache HTTP
    Server.This issue affects Apache HTTP Server: through 2.4.57.
    Credits: David Shoon (github/davidshoon)
  * ) mod_ssl: Silence info log message "SSL Library Error: error:0A000126:
    SSL routines::unexpected eof while reading" when using
    OpenSSL 3 by setting SSL_OP_IGNORE_UNEXPECTED_EOF if
    available. [Rainer Jung]
  * ) mod_http2: improved early cleanup of streams.
    [Stefan Eissing]
  * ) mod_proxy_http2: improved error handling on connection errors while
    response is already underway.
    [Stefan Eissing]
  * ) mod_http2: fixed a bug that could lead to a crash in main connection
    output handling. This occured only when the last request on a HTTP/2
    connection had been processed and the session decided to shut down.
    This could lead to an attempt to send a final GOAWAY while the previous
    write was still in progress. See PR 66646.
    [Stefan Eissing]
  * ) mod_proxy_http2: fix `X-Forward-Host` header to carry the correct value.
    Fixes PR66752.
    [Stefan Eissing]
  * ) mod_http2: added support for bootstrapping WebSockets via HTTP/2, as
    described in RFC 8441. A new directive 'H2WebSockets on|off' has been
    added. The feature is by default not enabled.
    As also discussed in the manual, this feature should work for setups
    using "ProxyPass backend-url upgrade=websocket" without further changes.
    Special server modules for WebSockets will have to be adapted,
    most likely, as the handling if IO events is different with HTTP/2.
    HTTP/2 WebSockets are supported on platforms with native pipes. This
    excludes Windows.
    [Stefan Eissing]
  * ) mod_rewrite: Fix a regression with both a trailing ? and [QSA].
    in OCSP stapling. PR 66672. [Frank Meier &lt;frank.meier ergon.ch&gt;, covener]
  * ) mod_http2: fixed a bug in flushing pending data on an already closed
    connection that could lead to a busy loop, preventing the HTTP/2 session
    to close down successfully. Fixed PR 66624.
    [Stefan Eissing]
  * ) mod_http2: v2.0.15 with the following fixes and improvements
  - New directive 'H2EarlyHint name value' to add headers to a response,
    picked up already when a "103 Early Hints" response is sent. 'name' and
    'value' must comply to the HTTP field restrictions.
    This directive can be repeated several times and header fields of the
    same names add. Sending a 'Link' header with 'preload' relation will
    also cause a HTTP/2 PUSH if enabled and supported by the client.
  - Fixed an issue where requests were not logged and accounted in a timely
    fashion when the connection returns to "keepalive" handling, e.g. when
    the request served was the last outstanding one.
    This led to late appearance in access logs with wrong duration times
    reported.
  - Accurately report the bytes sent for a request in the '%O' Log format.
    This addresses #203, a long outstanding issue where mod_h2 has reported
    numbers over-eagerly from internal buffering and not what has actually
    been placed on the connection.
    The numbers are now the same with and without H2CopyFiles enabled.
    [Stefan Eissing]
  * ) mod_proxy_http2: fix retry handling to not leak temporary errors.
    On detecting that that an existing connection was shutdown by the other
    side, a 503 response leaked even though the request was retried on a
    fresh connection.
    [Stefan Eissing]
  * ) mod_rewrite: Add server directory to include path as mod_rewrite requires
    test_char.h. PR 66571 [Valeria Petrov &lt;valeria.petrov@spinetix.com&gt;]
  * ) mod_http2: new directive `H2ProxyRequests on|off` to enable handling
    of HTTP/2 requests in a forward proxy configuration.
    General forward proxying is enabled via `ProxyRequests`. If the
    HTTP/2 protocol is also enabled for such a server/host, this new
    directive is needed in addition.
    [Stefan Eissing]
  * ) core: Updated conf/mime.types:
  - .js moved from 'application/javascript' to 'text/javascript'
  - .mjs was added as 'text/javascript'
  - add .opus ('audio/ogg')
  - add 'application/vnd.geogebra.slides'
  - add WebAssembly MIME types and extension
    [Mathias Bynens &lt;@mathiasbynens&gt; via PR 318,
    Richard de Boer &lt;richard tubul.net&gt;, Dave Hodder &lt;dmh dmh.org.uk&gt;,
    Zbynek Konecny &lt;zbynek1729 gmail.com&gt;]
  * ) mod_proxy_http2: fixed using the wrong "bucket_alloc" from the backend
    connection when sending data on the frontend one. This caused crashes
    or infinite loops in rare situations.
  * ) mod_proxy_http2: fixed a bug in retry/response handling that could lead
    to wrong status codes or HTTP messages send at the end of response bodies
    exceeding the announced content-length.
  * ) mod_proxy_http2: fix retry handling to not leak temporary errors.
    On detecting that that an existing connection was shutdown by the other
    side, a 503 response leaked even though the request was retried on a
    fresh connection.
  * ) mod_http2: fixed a bug that did cleanup of consumed and pending buckets in
    the wrong order when a bucket_beam was destroyed.
    [Stefan Eissing]
  * ) mod_http2: avoid double chunked-encoding on internal redirects.
    PR 66597 [Yann Ylavic, Stefan Eissing]
  * ) mod_http2: Fix reporting of `Total Accesses` in server-status to not count
    HTTP/2 requests twice. Fixes PR 66801.
    [Stefan Eissing]
  * ) mod_ssl: Fix handling of Certificate Revoked messages
    in OCSP stapling. PR 66626. [&lt;gmoniker gmail.com&gt;]
  * ) mod_http2: fixed a bug in handling of stream timeouts.
    [Stefan Eissing]
  * ) mod_tls: updating to rustls-ffi version 0.9.2 or higher.
    Checking in configure for proper version installed. Code
    fixes for changed clienthello member name.
    [Stefan Eissing]
  * ) mod_md:
  - New directive `MDMatchNames all|servernames` to allow more control over how
    MDomains are matched to VirtualHosts.
  - New directive `MDChallengeDns01Version`. Setting this to `2` will provide
    the command also with the challenge value on `teardown` invocation. In version
    1, the default, only the `setup` invocation gets this parameter.
    Refs #312. Thanks to @domrim for the idea.
  - For Managed Domain in "manual" mode, the checks if all used ServerName and
    ServerAlias are part of the MDomain now reports a warning instead of an error
    (AH10040) when not all names are present.
  - MDChallengeDns01 can now be configured for individual domains.
    Using PR from JÃ©rÃ´me Billiras (@bilhackmac) and adding test case and fixing proper working
  - Fixed a bug found by JÃ©rÃ´me Billiras (@bilhackmac) that caused the challenge
    teardown not being invoked as it should.
  * ) mod_ldap: Avoid performance overhead of APR-util rebind cache for
    OpenLDAP 2.2+.  PR 64414.  [Joe Orton]
  * ) mod_http2: new directive 'H2MaxDataFrameLen n' to limit the maximum
    amount of response body bytes put into a single HTTP/2 DATA frame.
    Setting this to 0 places no limit (but the max size allowed by the
    protocol is observed).
    The module, by default, tries to use the maximum size possible, which is
    somewhat around 16KB. This sets the maximum. When less response data is
    available, smaller frames will be sent.
  * ) mod_md: fixed passing of the server environment variables to programs
    started via MDMessageCmd and MDChallengeDns01 on *nix system.
    See &lt;https://github.com/icing/mod_md/issues/319&gt;.
    [Stefan Eissing]
  * ) mod_dav: Add DavBasePath directive to configure the repository root
    path.  PR 35077.  [Joe Orton]
  * ) mod_alias: Add AliasPreservePath directive to map the full
    path after the alias in a location. [Graham Leggett]
  * ) mod_alias: Add RedirectRelative to allow relative redirect targets to be
    issued as-is. [Eric Covener, Graham Leggett]
  * ) core: Add formats %{z} and %{strftime-format} to ErrorLogFormat, and make
    sure that if the format is configured early enough it applies to every log
    line.  PR 62161.  [Yann Ylavic]
  * ) mod_deflate: Add DeflateAlterETag to control how the ETag
    is modified. The 'NoChange' parameter mimics 2.2.x behavior.
    PR 45023, PR 39727. [Eric Covener]
  * ) core: Optimize send_brigade_nonblocking(). [Yann Ylavic, Christophe Jaillet]
  * ) mod_status: Remove duplicate keys "BusyWorkers" and "IdleWorkers".
    Resolve inconsistency between the previous two occurrences by
    counting workers in state SERVER_GRACEFUL no longer as busy,
    but instead in a new counter "GracefulWorkers" (or on HTML
    view as "workers gracefully restarting"). Also add the graceful
    counter as a new column to the existing HTML per process table
    for async MPMs. PR 63300. [Rainer Jung]</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1706529600">- use grep -E for egrep</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1708430400">- Use %autosetup macro. Allows to eliminate the usage of deprecated
  %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1712232000">- Update to 2.4.59:
  * ) mod_deflate: Fixes and better logging for handling various
    error and edge cases. [Eric Covener, Yann Ylavic, Joe Orton,
    Eric Norris &lt;enorris etsy.com&gt;]
  * ) Add CGIScriptTimeout to mod_cgi. [Eric Covener]
  * ) mod_xml2enc: Tolerate libxml2 2.12.0 and later.  PR 68610
    [ttachi &lt;tachihara AT hotmail.com&gt;]
  * ) mod_slotmem_shm: Use ap_os_is_path_absolute() to make it portable.
    [Jean-Frederic Clere]
  * ) mod_ssl: Use OpenSSL-standard functions to assemble CA
    name lists for SSLCACertificatePath/SSLCADNRequestPath.
    Names will now be consistently sorted. PR 61574.
    [Joe Orton]
  * ) mod_xml2enc: Update check to accept any text/ media type
    or any XML media type per RFC 7303, avoiding
    corruption of Microsoft OOXML formats.  PR 64339.
    [Joseph Heenan &lt;joseph.heenan fintechlabs.io&gt;, Joe Orton]
  * ) mod_http2: v2.0.26 with the following fixes:
  - Fixed `Date` header on requests upgraded from HTTP/1.1 (h2c). Fixes
    &lt;https://github.com/icing/mod_h2/issues/272&gt;.
  - Fixed small memory leak in h2 header bucket free. Thanks to
    Michael Kaufmann for finding this and providing the fix.
  * ) htcacheclean: In -a/-A mode, list all files per subdirectory
    rather than only one. PR 65091.
    [Artem Egorenkov &lt;aegorenkov.91 gmail.com&gt;]
  * ) mod_ssl: SSLProxyMachineCertificateFile/Path may reference files
    which include CA certificates; those CA certs are treated as if
    configured with SSLProxyMachineCertificateChainFile.  [Joe Orton]
  * ) htpasswd, htdbm, dbmmanage: Update help&amp;docs to refer to
    "hashing", rather than "encrypting" passwords.
    [Michele Preziuso &lt;mpreziuso kaosdynamics.com&gt;]
  * ) mod_ssl: Fix build with LibreSSL 2.0.7+. PR 64047.
    [Giovanni Bechis, Yann Ylavic]
  * ) htpasswd: Add support for passwords using SHA-2.  [Joe Orton,
    Yann Ylavic]
  * ) core: Allow mod_env to override system environment vars. [Joe Orton]
  * ) Allow mod_dav_fs to tolerate race conditions between PROPFIND and an
    operation which removes a directory/file between apr_dir_read() and
    apr_stat(). Current behaviour is to abort the connection which seems
    inferior to tolerating (and logging) the error. [Joe Orton]
  * ) mod_ldap: HTML-escape data in the ldap-status handler.
    [Eric Covener, Chamal De Silva]
  * ) mod_ssl: Disable the OpenSSL ENGINE API when OPENSSL_NO_ENGINE is set.
    Allow for "SSLCryptoDevice builtin" if the ENGINE API is not available,
    notably with OpenSSL &gt;= 3.  PR 68080.  [Yann Ylavic, Joe Orton]
  * ) mod_ssl: Improve compatibility with OpenSSL 3, fix build warnings about
    deprecated ENGINE_ API, honor OPENSSL_API_COMPAT setting while defaulting
    to compatibitily with version 1.1.1 (including ENGINEs / SSLCryptoDevice).
    [Yann Ylavic]
  * ) mod_ssl: release memory to the OS when needed. [Giovanni Bechis]
  * ) mod_proxy: Ignore (and warn about) enablereuse=on for ProxyPassMatch when
    some dollar substitution (backreference) happens in the hostname or port
    part of the URL.  [Yann Ylavic]
  * ) mod_proxy: Allow to set a TTL for how long DNS resolutions to backend
    systems are cached. [Yann Ylavic]
  * ) mod_proxy: Add optional third argument for ProxyRemote, which
    configures Basic authentication credentials to pass to the remote
    proxy.  PR 37355.  [Joe Orton]</changelog>
  <changelog author="pgajdos@suse.com" date="1718280000">- added patches [bsc#1226217]
  https://github.com/apache/httpd/pull/444/commits/c2fffd29b0f58bdc9caaaff4fec68e17a676f182
  + apache2-issue-444.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1720094400">- Update to 2.4.61
  * ) SECURITY: CVE-2024-39884: Apache HTTP Server: source code
    disclosure with handlers configured via AddType (cve.mitre.org)
    [boo#1227353]
    A regression in the core of Apache HTTP Server 2.4.60 ignores
    some use of the legacy content-type based configuration of
    handlers.   "AddType" and similar configuration, under some
    circumstances where files are requested indirectly, result in
    source code disclosure of local content. For example, PHP
    scripts may be served instead of interpreted.
    Users are recommended to upgrade to version 2.4.61, which fixes
    this issue.
- Update to 2.4.60
  * ) SECURITY: CVE-2024-39573: Apache HTTP Server: mod_rewrite proxy
    handler substitution (cve.mitre.org) [boo#1227271]
    Potential SSRF in mod_rewrite in Apache HTTP Server 2.4.59 and
    earlier allows an attacker to cause unsafe RewriteRules to
    unexpectedly setup URL's to be handled by mod_proxy.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38477: Apache HTTP Server: Crash resulting in
    Denial of Service in mod_proxy via a malicious request
    (cve.mitre.org) [boo#1227270]
    null pointer dereference in mod_proxy in Apache HTTP Server
    2.4.59 and earlier allows an attacker to crash the server via a
    malicious request.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38476: Apache HTTP Server may use
    exploitable/malicious backend application output to run local
    handlers via internal redirect (cve.mitre.org) [boo#1227269]
    Vulnerability in core of Apache HTTP Server 2.4.59 and earlier
    are vulnerably to information disclosure, SSRF or local script
    execution via backend applications whose response headers are
    malicious or exploitable.
    Note: Some legacy uses of the 'AddType' directive to connect a
    request to a handler must be ported to 'AddHandler' after this fix.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38475: Apache HTTP Server weakness in
    mod_rewrite when first segment of substitution matches
    filesystem path. (cve.mitre.org) [boo#1227268]
    Improper escaping of output in mod_rewrite in Apache HTTP Server
    2.4.59 and earlier allows an attacker to map URLs to filesystem
    locations that are permitted to be served by the server but are
    not intentionally/directly reachable by any URL, resulting in
    code execution or source code disclosure.
    Substitutions in server context that use a backreferences or
    variables as the first segment of the substitution are affected.
    Some unsafe RewiteRules will be broken by this change and the
    rewrite flag "UnsafePrefixStat" can be used to opt back in once
    ensuring the substitution is appropriately constrained.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38474: Apache HTTP Server weakness with
    encoded question marks in backreferences (cve.mitre.org)
    [boo#1227278]
    Substitution encoding issue in mod_rewrite in Apache HTTP Server
    2.4.59 and earlier allows attacker to execute scripts in
    directories permitted by the configuration but not directly
    reachable by any URL or source disclosure of scripts meant to
    only to be executed as CGI.
    Note: Some RewriteRules that capture and substitute unsafely will now
    fail unless rewrite flag "UnsafeAllow3F" is specified.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38473: Apache HTTP Server proxy encoding
    problem (cve.mitre.org) [boo#1227276]
    Encoding problem in mod_proxy in Apache HTTP Server 2.4.59 and
    earlier allows request URLs with incorrect encoding to be sent
    to backend services, potentially bypassing authentication via
    crafted requests.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38472: Apache HTTP Server on WIndows UNC SSRF
    (cve.mitre.org) [boo#1227267]
    SSRF in Apache HTTP Server on Windows allows to potentially leak
    NTML hashes to a malicious server via SSRF and malicious
    requests or content
    Note: Existing configurations that access UNC paths
    will have to configure new directive "UNCList" to allow access
    during request processing.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-36387: Apache HTTP Server: DoS by Null
    pointer in websocket over HTTP/2 (cve.mitre.org) [boo#1227272]
    Serving WebSocket protocol upgrades over a HTTP/2 connection
    could result in a Null Pointer dereference, leading to a crash
    of the server process, degrading performance.
    Credits: Marc Stern (&lt;marc.stern AT approach-cyber.com&gt;)
  * ) mod_proxy: Fix DNS requests and connections closed before the
    configured addressTTL.  BZ 69126.  [Yann Ylavic]
  * ) core: On Linux, log the real thread ID in error logs.  [Joe Orton]
  * ) core: Support zone/scope in IPv6 link-local addresses in Listen and
    VirtualHost directives (requires APR 1.7.x or later).  PR 59396
    [Joe Orton]
  * ) mod_ssl: Reject client-initiated renegotiation with a TLS alert
    (rather than connection closure).  [Joe Orton, Yann Ylavic]
  * ) Updated mime.types.  [Mohamed Akram &lt;mohd.akram outlook.com&gt;,
    Adam Silverstein &lt;adamsilverstein earthboundhosting.com&gt;]
  * ) mod_ssl: Fix a regression that causes the default DH parameters for a key
    no longer set and thus effectively disabling DH ciphers when no explicit
    DH parameters are set. PR 68863 [Ruediger Pluem]
  * ) mod_cgid: Optional support for file descriptor passing, fixing
    error log handling (configure --enable-cgid-fdpassing) on Unix
    platforms. PR 54221.  [Joe Orton]
  * ) mod_cgid/mod_cgi: Distinguish script stderr output clearly in
    error logs.  PR 61980.  [Hank Ibell &lt;hwibell gmail.com&gt;]
  * ) mod_tls: update version of rustls-ffi to v0.13.0.
    [Daniel McCarney (@cpu}]
  * ) mod_md:
  - Using OCSP stapling information to trigger certificate renewals. Proposed
    by @frasertweedale.
  - Added directive `MDCheckInterval` to control how often the server checks
    for detected revocations. Added proposals for configurations in the
    README.md chapter "Revocations".
  - OCSP stapling: accept OCSP responses without a `nextUpdate` entry which is
    allowed in RFC 6960. Treat those as having an update interval of 12 hours.
    Added by @frasertweedale.
  - Adapt OpenSSL usage to changes in their API. By Yann Ylavic.
- removed patches (upstreamed)
  - apache2-issue-444.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- Update to 2.4.62
  * ) SECURITY: CVE-2024-40898: Apache HTTP Server: SSRF with
    mod_rewrite in server/vhost context on Windows (cve.mitre.org)
    [boo#1228098]
    SSRF in Apache HTTP Server on Windows with mod_rewrite in
    server/vhost context, allows to potentially leak NTML hashes to
    a malicious server via SSRF and malicious requests.
    Users are recommended to upgrade to version 2.4.62 which fixes
    this issue.
    Credits: Smi1e (DBAPPSecurity Ltd.)
  * ) SECURITY: CVE-2024-40725: Apache HTTP Server: source code
    disclosure with handlers configured via AddType (cve.mitre.org)
    [boo#1228097]
    A partial fix for  CVE-2024-39884 in the core of Apache HTTP
    Server 2.4.61 ignores some use of the legacy content-type based
    configuration of handlers. "AddType" and similar configuration,
    under some circumstances where files are requested indirectly,
    result in source code disclosure of local content. For example,
    PHP scripts may be served instead of interpreted.
    Users are recommended to upgrade to version 2.4.62, which fixes
    this issue.
  * ) mod_proxy: Fix canonicalisation and FCGI env (PATH_INFO, SCRIPT_NAME) for
    "balancer:" URLs set via SetHandler, also allowing for "unix:" sockets
    with BalancerMember(s).  PR 69168.  [Yann Ylavic]
  * ) mod_proxy: Avoid AH01059 parsing error for SetHandler "unix:" URLs.
    PR 69160 [Yann Ylavic]
  * ) mod_ssl: Fix crashes in PKCS#11 ENGINE support with OpenSSL 3.2.
    [Joe Orton]
  * ) mod_ssl: Add support for loading certs/keys from pkcs11: URIs
    via OpenSSL 3.x providers.  [Ingo Franzki &lt;ifranzki linux.ibm.com&gt;]
  * ) mod_ssl: Restore SSL dumping on trace7 loglevel with OpenSSL &gt;= 3.0.
    [Ruediger Pluem, Yann Ylavic]
  * ) mpm_worker: Fix possible warning (AH00045) about children processes not
    terminating timely.  [Yann Ylavic]</changelog>
  <changelog author="Thorsten Kukuk &lt;kukuk@suse.com&gt;" date="1727697600">- Add /srv/www directories to filelist [bsc#1231027]
  (apache2 will not start since default config uses this directory)</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1730721600">- Explicitly mark start_apache2 as bash-dependent.</changelog>
  <changelog author="Martin Schreiner &lt;martin.schreiner@suse.com&gt;" date="1730808000">- Update httpd-framework to svn1921782.
- Fixes Apache's impact on bsc#1218342.</changelog>
</package>
<package pkgid="17acedf6a80742e3f2d8bba2ea0a1da8f6ed67013162cad81b15d737285d5de77261fb54cfd15814e7fbb50870273247c51f710c2b86caf1290fc31cd70003cb" name="apache2-debuginfo" arch="x86_64">
  <version epoch="0" ver="2.4.62" rel="3.1"/>
  <changelog author="pgajdos@suse.com" date="1654689600">- update httpd-framework to svn revision 1898917</changelog>
  <changelog author="Stefan Schubert &lt;schubi@intern&gt;" date="1656417600">- Moved logrotate files from user specific directory /etc/logrotate.d
  to vendor specific directory /usr/etc/logrotate.d.</changelog>
  <changelog author="Stefan Schubert &lt;schubi@suse.com&gt;" date="1662033600">- Migration to /usr/etc: Saving user changed configuration files
  in /etc and restoring them while an RPM update.</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1663675200">- Remove references to README.QUICKSTART and point them to
  https://en.opensuse.org/SDB:Apache_installation (bsc#1203573)</changelog>
  <changelog author="Stephan Kulow &lt;coolo@suse.com&gt;" date="1663934400">- The 2.4.54 release brought support for PCRE2, but for that we also
  need to change buildrequires to pcre2-devel</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1670846400">- switch to pkgconfig(zlib) so that alternative providers can be
  used</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1674043200">- This update fixes the following security issues:
  * CVE-2022-37436 [bsc#1207251], mod_proxy backend HTTP response splitting
  * CVE-2022-36760 [bsc#1207250], mod_proxy_ajp Possible request smuggling
  * CVE-2006-20001 [bsc#1207247], mod_dav out of bounds read, or write of zero byte
- Update to 2.4.55:
  * ) SECURITY: CVE-2022-37436: Apache HTTP Server: mod_proxy prior to
    2.4.55 allows a backend to trigger HTTP response splitting
    (cve.mitre.org)
    Prior to Apache HTTP Server 2.4.55, a malicious backend can
    cause the response headers to be truncated early, resulting in
    some headers being incorporated into the response body. If the
    later headers have any security purpose, they will not be
    interpreted by the client.
    Credits: Dimas Fariski Setyawan Putra (@nyxsorcerer)
  * ) SECURITY: CVE-2022-36760: Apache HTTP Server: mod_proxy_ajp
    Possible request smuggling (cve.mitre.org)
    Inconsistent Interpretation of HTTP Requests ('HTTP Request
    Smuggling') vulnerability in mod_proxy_ajp of Apache HTTP Server
    allows an attacker to smuggle requests to the AJP server it
    forwards requests to.  This issue affects Apache HTTP Server
    Apache HTTP Server 2.4 version 2.4.54 and prior versions.
    Credits: ZeddYu_Lu from Qi'anxin Research Institute of Legendsec
    at Qi'anxin Group
  * ) SECURITY: CVE-2006-20001: mod_dav out of  bounds read, or write
    of zero byte (cve.mitre.org)
    A carefully crafted If: request header can cause a memory read,
    or write of a single zero byte, in a pool (heap) memory location
    beyond the header value sent. This could cause the process to
    crash.
    This issue affects Apache HTTP Server 2.4.54 and earlier.
  * ) mod_dav: Open the lock database read-only when possible.
    PR 36636 [Wilson Felipe &lt;wfelipe gmail.com&gt;, manu]
  * ) mod_proxy_http2: apply the standard httpd content type handling
    to responses from the backend, as other proxy modules do. Fixes PR 66391.
    Thanks to Jérôme Billiras for providing the patch.
    [Stefan Eissing]
  * ) mod_dav: mod_dav overrides dav_fs response on PUT failure. PR 35981
    [Basant Kumar Kukreja &lt;basant.kukreja sun.com&gt;, Alejandro Alvarez
    &lt;alejandro.alvarez.ayllon cern.ch&gt;]
  * ) mod_proxy_hcheck: Honor worker timeout settings.  [Yann Ylavic]
  * ) mod_http2: version 2.0.10 of the module, synchronizing changes
    with the gitgub version. This is a partial rewrite of how connections
    and streams are handled.
  - an APR pollset and pipes (where supported) are used to monitor
    the main connection and react to IO for request/response handling.
    This replaces the stuttered timed waits of earlier versions.
  - H2SerializeHeaders directive still exists, but has no longer an effect.
  - Clients that seemingly misbehave still get less resources allocated,
    but ongoing requests are no longer disrupted.
  - Fixed an issue since 1.15.24 that "Server" headers in proxied requests
    were overwritten instead of preserved. [PR by @daum3ns]
  - A regression in v1.15.24 was fixed that could lead to httpd child
    processes not being terminated on a graceful reload or when reaching
    MaxConnectionsPerChild. When unprocessed h2 requests were queued at
    the time, these could stall. See #212.
  - Improved information displayed in 'server-status' for H2 connections when
    Extended Status is enabled. Now one can see the last request that IO
    operations happened on and transferred IO stats are updated as well.
  - When reaching server limits, such as MaxRequestsPerChild, the HTTP/2 connection
    send a GOAWAY frame much too early on new connections, leading to invalid
    protocol state and a client failing the request. See PR65731 at
    &lt;https://bz.apache.org/bugzilla/show_bug.cgi?id=65731&gt;.
    The module now initializes the HTTP/2 protocol correctly and allows the
    client to submit one request before the shutdown via a GOAWAY frame
    is being announced.
  - :scheme pseudo-header values, not matching the
    connection scheme, are forwarded via absolute uris to the
    http protocol processing to preserve semantics of the request.
    Checks on combinations of pseudo-headers values/absence
    have been added as described in RFC 7540. Fixes #230.
  - A bug that prevented trailers (e.g. HEADER frame at the end) to be
    generated in certain cases was fixed. See #233 where it prevented
    gRPC responses to be properly generated.
  - Request and response header values are automatically stripped of leading
    and trialing space/tab characters. This is equivalent behaviour to what
    Apache httpd's http/1.1 parser does.
    The checks for this in nghttp2 v1.50.0+ are disabled.
  - Extensive testing in production done by Alessandro Bianchi (@alexskynet)
    on the v2.0.x versions for stability. Many thanks!
  * ) mod_proxy_http2: fixed #235 by no longer forwarding 'Host:' header when
    request ':authority' is known. Improved test case that did not catch that
    the previous 'fix' was incorrect.
  * ) mod_proxy_hcheck: hcmethod now allows for HTTP/1.1 requests
    using GET11, HEAD11 and/or OPTIONS11. [Jim Jagielski]
  * ) mod_proxy: The AH03408 warning for a forcibly closed backend
    connection is now logged at INFO level.  [Yann Ylavic]
  * ) mod_ssl: When dumping the configuration, the existence of
    certificate/key files is no longer tested.  [Joe Orton]
  * ) mod_authn_core: Add expression support to AuthName and AuthType.
    [Graham Leggett]
  * ) mod_ssl: when a proxy connection had handled a request using SSL, an
    error was logged when "SSLProxyEngine" was only configured in the
    location/proxy section and not the overall server. The connection
    continued to work, the error log was in error. Fixed PR66190.
    [Stefan Eissing]
  * ) mod_proxy_hcheck: Re-enable workers in standard ERROR state. PR 66302.
    [Alessandro Cavaliere &lt;alessandro.cavalier7 unibo.it&gt;]
  * ) mod_proxy_hcheck: Detect AJP/CPING support correctly. PR 66300.
    [Alessandro Cavaliere &lt;alessandro.cavalier7 unibo.it&gt;]
  * ) mod_http2: Export mod_http2.h as public header. [Stefan Eissing]
  * ) mod_md: a new directive `MDStoreLocks` can be used on cluster
    setups with a shared file system for `MDStoreDir` to order
    activation of renewed certificates when several cluster nodes are
    restarted at the same time. Store locks are not enabled by default.
    Restored curl_easy cleanup behaviour from v2.4.14 and refactored
    the use of curl_multi for OCSP requests to work with that.
    Fixes &lt;https://github.com/icing/mod_md/issues/293&gt;.
  * ) core: Avoid an overflow on large inputs in ap_is_matchexp.  PR 66033
    [Ruediger Pluem]
  * ) mod_heartmonitor: Allow "HeartbeatMaxServers 0" to use file based
    storage instead of slotmem. Needed after setting
    HeartbeatMaxServers default to the documented value 10 in 2.4.54.
    PR 66131.  [Jérôme Billiras]
  * ) mod_dav: DAVlockDiscovery option to disable WebDAV lock discovery
    This is a game changer for performances if client use PROPFIND a lot,
    PR 66313. [Emmanuel Dreyfus]</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1678276800">- This update fixes the following security issues:
  * CVE-2023-27522 [bsc#1209049]: mod_proxy_uwsgi HTTP response splitting
  * CVE-2023-25690 [bsc#1209047]: HTTP request splitting with mod_rewrite and mod_proxy
- Update to 2.4.56:
  * ) rotatelogs: Add -T flag to allow subsequent rotated logfiles to be
    truncated without the initial logfile being truncated.  [Eric Covener]
  * ) mod_ldap: LDAPConnectionPoolTTL should accept negative values in order to
    allow connections of any age to be reused. Up to now, a negative value
    was handled as an error when parsing the configuration file.  PR 66421.
    [nailyk &lt;bzapache nailyk.fr&gt;, Christophe Jaillet]
  * ) mod_proxy_ajp: Report an error if the AJP backend sends an invalid number
    of headers. [Ruediger Pluem]
  * ) mod_md:
  - Enabling ED25519 support and certificate transparency information when
    building with libressl v3.5.0 and newer. Thanks to Giovanni Bechis.
  - MDChallengeDns01 can now be configured for individual domains.
    Thanks to Jérôme Billiras (@bilhackmac) for the initial PR.
  - Fixed a bug found by Jérôme Billiras (@bilhackmac) that caused the challenge
    teardown not being invoked as it should.
    [Stefan Eissing]
  * ) mod_http2: client resets of HTTP/2 streams led to unwanted 500 errors
    reported in access logs and error documents. The processing of the
    reset was correct, only unneccesary reporting was caused.
    [Stefan Eissing]
  * ) mod_proxy_uwsgi: Stricter backend HTTP response parsing/validation.
    [Yann Ylavic]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1680868800">- Update to 2.4.57:
  * ) mod_proxy: Check before forwarding that a nocanon path has not been
    rewritten with spaces during processing.  [Yann Ylavic]
  * ) mod_proxy: In case that AllowEncodedSlashes is set to NoDecode do not
    double encode encoded slashes in the URL sent by the reverse proxy to the
    backend. [Ruediger Pluem]
  * ) mod_http2: fixed a crash during connection termination. See PR 66539.
    [Stefan Eissing]
  * ) mod_rewrite: Fix a 2.4.56 regression for substitutions ending
    in a question mark. PR66547. [Eric Covener]
  * ) mod_rewrite: Add "BCTLS" and "BNE" RewriteRule flags. Re-allow encoded
    characters on redirections without the "NE" flag.
    [Yann Ylavic, Eric Covener]
  * ) mod_proxy: Fix double encoding of the uri-path of the request forwarded
    to the origin server, when using mapping=encoded|servlet.  [Yann Ylavic]
  * ) mod_mime: Do not match the extention against possible query string
    parameters in case ProxyPass was used with the nocanon option.
    [Ruediger Pluem]</changelog>
  <changelog author="Dirk Stoecker &lt;opensuse@dstoecker.de&gt;" date="1691236800">- Enable building of mod_md</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1697716800">- Update to 2.4.58:
  * ) SECURITY: CVE-2023-45802: Apache HTTP Server: HTTP/2 stream
    memory not reclaimed right away on RST (cve.mitre.org)
    When a HTTP/2 stream was reset (RST frame) by a client, there
    was a time window were the request's memory resources were not
    reclaimed immediately. Instead, de-allocation was deferred to
    connection close. A client could send new requests and resets,
    keeping the connection busy and open and causing the memory
    footprint to keep on growing. On connection close, all resources
    were reclaimed, but the process might run out of memory before
    that.
    This was found by the reporter during testing of CVE-2023-44487
    (HTTP/2 Rapid Reset Exploit) with their own test client. During
    "normal" HTTP/2 use, the probability to hit this bug is very
    low. The kept memory would not become noticeable before the
    connection closes or times out.
    Users are recommended to upgrade to version 2.4.58, which fixes
    the issue.
    Credits: Will Dormann of Vul Labs
  * ) SECURITY: CVE-2023-43622: Apache HTTP Server: DoS in HTTP/2 with
    initial windows size 0 (cve.mitre.org)
    An attacker, opening a HTTP/2 connection with an initial window
    size of 0, was able to block handling of that connection
    indefinitely in Apache HTTP Server. This could be used to
    exhaust worker resources in the server, similar to the well
    known "slow loris" attack pattern.
    This has been fixed in version 2.4.58, so that such connection
    are terminated properly after the configured connection timeout.
    This issue affects Apache HTTP Server: from 2.4.55 through
    2.4.57.
    Users are recommended to upgrade to version 2.4.58, which fixes
    the issue.
    Credits: Prof. Sven Dietrich (City University of New York)
  * ) SECURITY: CVE-2023-31122: mod_macro buffer over-read
    (cve.mitre.org)
    Out-of-bounds Read vulnerability in mod_macro of Apache HTTP
    Server.This issue affects Apache HTTP Server: through 2.4.57.
    Credits: David Shoon (github/davidshoon)
  * ) mod_ssl: Silence info log message "SSL Library Error: error:0A000126:
    SSL routines::unexpected eof while reading" when using
    OpenSSL 3 by setting SSL_OP_IGNORE_UNEXPECTED_EOF if
    available. [Rainer Jung]
  * ) mod_http2: improved early cleanup of streams.
    [Stefan Eissing]
  * ) mod_proxy_http2: improved error handling on connection errors while
    response is already underway.
    [Stefan Eissing]
  * ) mod_http2: fixed a bug that could lead to a crash in main connection
    output handling. This occured only when the last request on a HTTP/2
    connection had been processed and the session decided to shut down.
    This could lead to an attempt to send a final GOAWAY while the previous
    write was still in progress. See PR 66646.
    [Stefan Eissing]
  * ) mod_proxy_http2: fix `X-Forward-Host` header to carry the correct value.
    Fixes PR66752.
    [Stefan Eissing]
  * ) mod_http2: added support for bootstrapping WebSockets via HTTP/2, as
    described in RFC 8441. A new directive 'H2WebSockets on|off' has been
    added. The feature is by default not enabled.
    As also discussed in the manual, this feature should work for setups
    using "ProxyPass backend-url upgrade=websocket" without further changes.
    Special server modules for WebSockets will have to be adapted,
    most likely, as the handling if IO events is different with HTTP/2.
    HTTP/2 WebSockets are supported on platforms with native pipes. This
    excludes Windows.
    [Stefan Eissing]
  * ) mod_rewrite: Fix a regression with both a trailing ? and [QSA].
    in OCSP stapling. PR 66672. [Frank Meier &lt;frank.meier ergon.ch&gt;, covener]
  * ) mod_http2: fixed a bug in flushing pending data on an already closed
    connection that could lead to a busy loop, preventing the HTTP/2 session
    to close down successfully. Fixed PR 66624.
    [Stefan Eissing]
  * ) mod_http2: v2.0.15 with the following fixes and improvements
  - New directive 'H2EarlyHint name value' to add headers to a response,
    picked up already when a "103 Early Hints" response is sent. 'name' and
    'value' must comply to the HTTP field restrictions.
    This directive can be repeated several times and header fields of the
    same names add. Sending a 'Link' header with 'preload' relation will
    also cause a HTTP/2 PUSH if enabled and supported by the client.
  - Fixed an issue where requests were not logged and accounted in a timely
    fashion when the connection returns to "keepalive" handling, e.g. when
    the request served was the last outstanding one.
    This led to late appearance in access logs with wrong duration times
    reported.
  - Accurately report the bytes sent for a request in the '%O' Log format.
    This addresses #203, a long outstanding issue where mod_h2 has reported
    numbers over-eagerly from internal buffering and not what has actually
    been placed on the connection.
    The numbers are now the same with and without H2CopyFiles enabled.
    [Stefan Eissing]
  * ) mod_proxy_http2: fix retry handling to not leak temporary errors.
    On detecting that that an existing connection was shutdown by the other
    side, a 503 response leaked even though the request was retried on a
    fresh connection.
    [Stefan Eissing]
  * ) mod_rewrite: Add server directory to include path as mod_rewrite requires
    test_char.h. PR 66571 [Valeria Petrov &lt;valeria.petrov@spinetix.com&gt;]
  * ) mod_http2: new directive `H2ProxyRequests on|off` to enable handling
    of HTTP/2 requests in a forward proxy configuration.
    General forward proxying is enabled via `ProxyRequests`. If the
    HTTP/2 protocol is also enabled for such a server/host, this new
    directive is needed in addition.
    [Stefan Eissing]
  * ) core: Updated conf/mime.types:
  - .js moved from 'application/javascript' to 'text/javascript'
  - .mjs was added as 'text/javascript'
  - add .opus ('audio/ogg')
  - add 'application/vnd.geogebra.slides'
  - add WebAssembly MIME types and extension
    [Mathias Bynens &lt;@mathiasbynens&gt; via PR 318,
    Richard de Boer &lt;richard tubul.net&gt;, Dave Hodder &lt;dmh dmh.org.uk&gt;,
    Zbynek Konecny &lt;zbynek1729 gmail.com&gt;]
  * ) mod_proxy_http2: fixed using the wrong "bucket_alloc" from the backend
    connection when sending data on the frontend one. This caused crashes
    or infinite loops in rare situations.
  * ) mod_proxy_http2: fixed a bug in retry/response handling that could lead
    to wrong status codes or HTTP messages send at the end of response bodies
    exceeding the announced content-length.
  * ) mod_proxy_http2: fix retry handling to not leak temporary errors.
    On detecting that that an existing connection was shutdown by the other
    side, a 503 response leaked even though the request was retried on a
    fresh connection.
  * ) mod_http2: fixed a bug that did cleanup of consumed and pending buckets in
    the wrong order when a bucket_beam was destroyed.
    [Stefan Eissing]
  * ) mod_http2: avoid double chunked-encoding on internal redirects.
    PR 66597 [Yann Ylavic, Stefan Eissing]
  * ) mod_http2: Fix reporting of `Total Accesses` in server-status to not count
    HTTP/2 requests twice. Fixes PR 66801.
    [Stefan Eissing]
  * ) mod_ssl: Fix handling of Certificate Revoked messages
    in OCSP stapling. PR 66626. [&lt;gmoniker gmail.com&gt;]
  * ) mod_http2: fixed a bug in handling of stream timeouts.
    [Stefan Eissing]
  * ) mod_tls: updating to rustls-ffi version 0.9.2 or higher.
    Checking in configure for proper version installed. Code
    fixes for changed clienthello member name.
    [Stefan Eissing]
  * ) mod_md:
  - New directive `MDMatchNames all|servernames` to allow more control over how
    MDomains are matched to VirtualHosts.
  - New directive `MDChallengeDns01Version`. Setting this to `2` will provide
    the command also with the challenge value on `teardown` invocation. In version
    1, the default, only the `setup` invocation gets this parameter.
    Refs #312. Thanks to @domrim for the idea.
  - For Managed Domain in "manual" mode, the checks if all used ServerName and
    ServerAlias are part of the MDomain now reports a warning instead of an error
    (AH10040) when not all names are present.
  - MDChallengeDns01 can now be configured for individual domains.
    Using PR from JÃ©rÃ´me Billiras (@bilhackmac) and adding test case and fixing proper working
  - Fixed a bug found by JÃ©rÃ´me Billiras (@bilhackmac) that caused the challenge
    teardown not being invoked as it should.
  * ) mod_ldap: Avoid performance overhead of APR-util rebind cache for
    OpenLDAP 2.2+.  PR 64414.  [Joe Orton]
  * ) mod_http2: new directive 'H2MaxDataFrameLen n' to limit the maximum
    amount of response body bytes put into a single HTTP/2 DATA frame.
    Setting this to 0 places no limit (but the max size allowed by the
    protocol is observed).
    The module, by default, tries to use the maximum size possible, which is
    somewhat around 16KB. This sets the maximum. When less response data is
    available, smaller frames will be sent.
  * ) mod_md: fixed passing of the server environment variables to programs
    started via MDMessageCmd and MDChallengeDns01 on *nix system.
    See &lt;https://github.com/icing/mod_md/issues/319&gt;.
    [Stefan Eissing]
  * ) mod_dav: Add DavBasePath directive to configure the repository root
    path.  PR 35077.  [Joe Orton]
  * ) mod_alias: Add AliasPreservePath directive to map the full
    path after the alias in a location. [Graham Leggett]
  * ) mod_alias: Add RedirectRelative to allow relative redirect targets to be
    issued as-is. [Eric Covener, Graham Leggett]
  * ) core: Add formats %{z} and %{strftime-format} to ErrorLogFormat, and make
    sure that if the format is configured early enough it applies to every log
    line.  PR 62161.  [Yann Ylavic]
  * ) mod_deflate: Add DeflateAlterETag to control how the ETag
    is modified. The 'NoChange' parameter mimics 2.2.x behavior.
    PR 45023, PR 39727. [Eric Covener]
  * ) core: Optimize send_brigade_nonblocking(). [Yann Ylavic, Christophe Jaillet]
  * ) mod_status: Remove duplicate keys "BusyWorkers" and "IdleWorkers".
    Resolve inconsistency between the previous two occurrences by
    counting workers in state SERVER_GRACEFUL no longer as busy,
    but instead in a new counter "GracefulWorkers" (or on HTML
    view as "workers gracefully restarting"). Also add the graceful
    counter as a new column to the existing HTML per process table
    for async MPMs. PR 63300. [Rainer Jung]</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1706529600">- use grep -E for egrep</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1708430400">- Use %autosetup macro. Allows to eliminate the usage of deprecated
  %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1712232000">- Update to 2.4.59:
  * ) mod_deflate: Fixes and better logging for handling various
    error and edge cases. [Eric Covener, Yann Ylavic, Joe Orton,
    Eric Norris &lt;enorris etsy.com&gt;]
  * ) Add CGIScriptTimeout to mod_cgi. [Eric Covener]
  * ) mod_xml2enc: Tolerate libxml2 2.12.0 and later.  PR 68610
    [ttachi &lt;tachihara AT hotmail.com&gt;]
  * ) mod_slotmem_shm: Use ap_os_is_path_absolute() to make it portable.
    [Jean-Frederic Clere]
  * ) mod_ssl: Use OpenSSL-standard functions to assemble CA
    name lists for SSLCACertificatePath/SSLCADNRequestPath.
    Names will now be consistently sorted. PR 61574.
    [Joe Orton]
  * ) mod_xml2enc: Update check to accept any text/ media type
    or any XML media type per RFC 7303, avoiding
    corruption of Microsoft OOXML formats.  PR 64339.
    [Joseph Heenan &lt;joseph.heenan fintechlabs.io&gt;, Joe Orton]
  * ) mod_http2: v2.0.26 with the following fixes:
  - Fixed `Date` header on requests upgraded from HTTP/1.1 (h2c). Fixes
    &lt;https://github.com/icing/mod_h2/issues/272&gt;.
  - Fixed small memory leak in h2 header bucket free. Thanks to
    Michael Kaufmann for finding this and providing the fix.
  * ) htcacheclean: In -a/-A mode, list all files per subdirectory
    rather than only one. PR 65091.
    [Artem Egorenkov &lt;aegorenkov.91 gmail.com&gt;]
  * ) mod_ssl: SSLProxyMachineCertificateFile/Path may reference files
    which include CA certificates; those CA certs are treated as if
    configured with SSLProxyMachineCertificateChainFile.  [Joe Orton]
  * ) htpasswd, htdbm, dbmmanage: Update help&amp;docs to refer to
    "hashing", rather than "encrypting" passwords.
    [Michele Preziuso &lt;mpreziuso kaosdynamics.com&gt;]
  * ) mod_ssl: Fix build with LibreSSL 2.0.7+. PR 64047.
    [Giovanni Bechis, Yann Ylavic]
  * ) htpasswd: Add support for passwords using SHA-2.  [Joe Orton,
    Yann Ylavic]
  * ) core: Allow mod_env to override system environment vars. [Joe Orton]
  * ) Allow mod_dav_fs to tolerate race conditions between PROPFIND and an
    operation which removes a directory/file between apr_dir_read() and
    apr_stat(). Current behaviour is to abort the connection which seems
    inferior to tolerating (and logging) the error. [Joe Orton]
  * ) mod_ldap: HTML-escape data in the ldap-status handler.
    [Eric Covener, Chamal De Silva]
  * ) mod_ssl: Disable the OpenSSL ENGINE API when OPENSSL_NO_ENGINE is set.
    Allow for "SSLCryptoDevice builtin" if the ENGINE API is not available,
    notably with OpenSSL &gt;= 3.  PR 68080.  [Yann Ylavic, Joe Orton]
  * ) mod_ssl: Improve compatibility with OpenSSL 3, fix build warnings about
    deprecated ENGINE_ API, honor OPENSSL_API_COMPAT setting while defaulting
    to compatibitily with version 1.1.1 (including ENGINEs / SSLCryptoDevice).
    [Yann Ylavic]
  * ) mod_ssl: release memory to the OS when needed. [Giovanni Bechis]
  * ) mod_proxy: Ignore (and warn about) enablereuse=on for ProxyPassMatch when
    some dollar substitution (backreference) happens in the hostname or port
    part of the URL.  [Yann Ylavic]
  * ) mod_proxy: Allow to set a TTL for how long DNS resolutions to backend
    systems are cached. [Yann Ylavic]
  * ) mod_proxy: Add optional third argument for ProxyRemote, which
    configures Basic authentication credentials to pass to the remote
    proxy.  PR 37355.  [Joe Orton]</changelog>
  <changelog author="pgajdos@suse.com" date="1718280000">- added patches [bsc#1226217]
  https://github.com/apache/httpd/pull/444/commits/c2fffd29b0f58bdc9caaaff4fec68e17a676f182
  + apache2-issue-444.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1720094400">- Update to 2.4.61
  * ) SECURITY: CVE-2024-39884: Apache HTTP Server: source code
    disclosure with handlers configured via AddType (cve.mitre.org)
    [boo#1227353]
    A regression in the core of Apache HTTP Server 2.4.60 ignores
    some use of the legacy content-type based configuration of
    handlers.   "AddType" and similar configuration, under some
    circumstances where files are requested indirectly, result in
    source code disclosure of local content. For example, PHP
    scripts may be served instead of interpreted.
    Users are recommended to upgrade to version 2.4.61, which fixes
    this issue.
- Update to 2.4.60
  * ) SECURITY: CVE-2024-39573: Apache HTTP Server: mod_rewrite proxy
    handler substitution (cve.mitre.org) [boo#1227271]
    Potential SSRF in mod_rewrite in Apache HTTP Server 2.4.59 and
    earlier allows an attacker to cause unsafe RewriteRules to
    unexpectedly setup URL's to be handled by mod_proxy.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38477: Apache HTTP Server: Crash resulting in
    Denial of Service in mod_proxy via a malicious request
    (cve.mitre.org) [boo#1227270]
    null pointer dereference in mod_proxy in Apache HTTP Server
    2.4.59 and earlier allows an attacker to crash the server via a
    malicious request.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38476: Apache HTTP Server may use
    exploitable/malicious backend application output to run local
    handlers via internal redirect (cve.mitre.org) [boo#1227269]
    Vulnerability in core of Apache HTTP Server 2.4.59 and earlier
    are vulnerably to information disclosure, SSRF or local script
    execution via backend applications whose response headers are
    malicious or exploitable.
    Note: Some legacy uses of the 'AddType' directive to connect a
    request to a handler must be ported to 'AddHandler' after this fix.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38475: Apache HTTP Server weakness in
    mod_rewrite when first segment of substitution matches
    filesystem path. (cve.mitre.org) [boo#1227268]
    Improper escaping of output in mod_rewrite in Apache HTTP Server
    2.4.59 and earlier allows an attacker to map URLs to filesystem
    locations that are permitted to be served by the server but are
    not intentionally/directly reachable by any URL, resulting in
    code execution or source code disclosure.
    Substitutions in server context that use a backreferences or
    variables as the first segment of the substitution are affected.
    Some unsafe RewiteRules will be broken by this change and the
    rewrite flag "UnsafePrefixStat" can be used to opt back in once
    ensuring the substitution is appropriately constrained.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38474: Apache HTTP Server weakness with
    encoded question marks in backreferences (cve.mitre.org)
    [boo#1227278]
    Substitution encoding issue in mod_rewrite in Apache HTTP Server
    2.4.59 and earlier allows attacker to execute scripts in
    directories permitted by the configuration but not directly
    reachable by any URL or source disclosure of scripts meant to
    only to be executed as CGI.
    Note: Some RewriteRules that capture and substitute unsafely will now
    fail unless rewrite flag "UnsafeAllow3F" is specified.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38473: Apache HTTP Server proxy encoding
    problem (cve.mitre.org) [boo#1227276]
    Encoding problem in mod_proxy in Apache HTTP Server 2.4.59 and
    earlier allows request URLs with incorrect encoding to be sent
    to backend services, potentially bypassing authentication via
    crafted requests.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38472: Apache HTTP Server on WIndows UNC SSRF
    (cve.mitre.org) [boo#1227267]
    SSRF in Apache HTTP Server on Windows allows to potentially leak
    NTML hashes to a malicious server via SSRF and malicious
    requests or content
    Note: Existing configurations that access UNC paths
    will have to configure new directive "UNCList" to allow access
    during request processing.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-36387: Apache HTTP Server: DoS by Null
    pointer in websocket over HTTP/2 (cve.mitre.org) [boo#1227272]
    Serving WebSocket protocol upgrades over a HTTP/2 connection
    could result in a Null Pointer dereference, leading to a crash
    of the server process, degrading performance.
    Credits: Marc Stern (&lt;marc.stern AT approach-cyber.com&gt;)
  * ) mod_proxy: Fix DNS requests and connections closed before the
    configured addressTTL.  BZ 69126.  [Yann Ylavic]
  * ) core: On Linux, log the real thread ID in error logs.  [Joe Orton]
  * ) core: Support zone/scope in IPv6 link-local addresses in Listen and
    VirtualHost directives (requires APR 1.7.x or later).  PR 59396
    [Joe Orton]
  * ) mod_ssl: Reject client-initiated renegotiation with a TLS alert
    (rather than connection closure).  [Joe Orton, Yann Ylavic]
  * ) Updated mime.types.  [Mohamed Akram &lt;mohd.akram outlook.com&gt;,
    Adam Silverstein &lt;adamsilverstein earthboundhosting.com&gt;]
  * ) mod_ssl: Fix a regression that causes the default DH parameters for a key
    no longer set and thus effectively disabling DH ciphers when no explicit
    DH parameters are set. PR 68863 [Ruediger Pluem]
  * ) mod_cgid: Optional support for file descriptor passing, fixing
    error log handling (configure --enable-cgid-fdpassing) on Unix
    platforms. PR 54221.  [Joe Orton]
  * ) mod_cgid/mod_cgi: Distinguish script stderr output clearly in
    error logs.  PR 61980.  [Hank Ibell &lt;hwibell gmail.com&gt;]
  * ) mod_tls: update version of rustls-ffi to v0.13.0.
    [Daniel McCarney (@cpu}]
  * ) mod_md:
  - Using OCSP stapling information to trigger certificate renewals. Proposed
    by @frasertweedale.
  - Added directive `MDCheckInterval` to control how often the server checks
    for detected revocations. Added proposals for configurations in the
    README.md chapter "Revocations".
  - OCSP stapling: accept OCSP responses without a `nextUpdate` entry which is
    allowed in RFC 6960. Treat those as having an update interval of 12 hours.
    Added by @frasertweedale.
  - Adapt OpenSSL usage to changes in their API. By Yann Ylavic.
- removed patches (upstreamed)
  - apache2-issue-444.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- Update to 2.4.62
  * ) SECURITY: CVE-2024-40898: Apache HTTP Server: SSRF with
    mod_rewrite in server/vhost context on Windows (cve.mitre.org)
    [boo#1228098]
    SSRF in Apache HTTP Server on Windows with mod_rewrite in
    server/vhost context, allows to potentially leak NTML hashes to
    a malicious server via SSRF and malicious requests.
    Users are recommended to upgrade to version 2.4.62 which fixes
    this issue.
    Credits: Smi1e (DBAPPSecurity Ltd.)
  * ) SECURITY: CVE-2024-40725: Apache HTTP Server: source code
    disclosure with handlers configured via AddType (cve.mitre.org)
    [boo#1228097]
    A partial fix for  CVE-2024-39884 in the core of Apache HTTP
    Server 2.4.61 ignores some use of the legacy content-type based
    configuration of handlers. "AddType" and similar configuration,
    under some circumstances where files are requested indirectly,
    result in source code disclosure of local content. For example,
    PHP scripts may be served instead of interpreted.
    Users are recommended to upgrade to version 2.4.62, which fixes
    this issue.
  * ) mod_proxy: Fix canonicalisation and FCGI env (PATH_INFO, SCRIPT_NAME) for
    "balancer:" URLs set via SetHandler, also allowing for "unix:" sockets
    with BalancerMember(s).  PR 69168.  [Yann Ylavic]
  * ) mod_proxy: Avoid AH01059 parsing error for SetHandler "unix:" URLs.
    PR 69160 [Yann Ylavic]
  * ) mod_ssl: Fix crashes in PKCS#11 ENGINE support with OpenSSL 3.2.
    [Joe Orton]
  * ) mod_ssl: Add support for loading certs/keys from pkcs11: URIs
    via OpenSSL 3.x providers.  [Ingo Franzki &lt;ifranzki linux.ibm.com&gt;]
  * ) mod_ssl: Restore SSL dumping on trace7 loglevel with OpenSSL &gt;= 3.0.
    [Ruediger Pluem, Yann Ylavic]
  * ) mpm_worker: Fix possible warning (AH00045) about children processes not
    terminating timely.  [Yann Ylavic]</changelog>
  <changelog author="Thorsten Kukuk &lt;kukuk@suse.com&gt;" date="1727697600">- Add /srv/www directories to filelist [bsc#1231027]
  (apache2 will not start since default config uses this directory)</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1730721600">- Explicitly mark start_apache2 as bash-dependent.</changelog>
  <changelog author="Martin Schreiner &lt;martin.schreiner@suse.com&gt;" date="1730808000">- Update httpd-framework to svn1921782.
- Fixes Apache's impact on bsc#1218342.</changelog>
</package>
<package pkgid="741c2957e0cbce2a38c3cb39927202c3ef21a290aa752d2ed6563ce9b5e593810ddd9c8d5a1e5d7b7d374c9e29c4092cb7dea4784b95066615865ebbb1c7955f" name="apache2-debugsource" arch="i586">
  <version epoch="0" ver="2.4.62" rel="3.1"/>
  <changelog author="pgajdos@suse.com" date="1654689600">- update httpd-framework to svn revision 1898917</changelog>
  <changelog author="Stefan Schubert &lt;schubi@intern&gt;" date="1656417600">- Moved logrotate files from user specific directory /etc/logrotate.d
  to vendor specific directory /usr/etc/logrotate.d.</changelog>
  <changelog author="Stefan Schubert &lt;schubi@suse.com&gt;" date="1662033600">- Migration to /usr/etc: Saving user changed configuration files
  in /etc and restoring them while an RPM update.</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1663675200">- Remove references to README.QUICKSTART and point them to
  https://en.opensuse.org/SDB:Apache_installation (bsc#1203573)</changelog>
  <changelog author="Stephan Kulow &lt;coolo@suse.com&gt;" date="1663934400">- The 2.4.54 release brought support for PCRE2, but for that we also
  need to change buildrequires to pcre2-devel</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1670846400">- switch to pkgconfig(zlib) so that alternative providers can be
  used</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1674043200">- This update fixes the following security issues:
  * CVE-2022-37436 [bsc#1207251], mod_proxy backend HTTP response splitting
  * CVE-2022-36760 [bsc#1207250], mod_proxy_ajp Possible request smuggling
  * CVE-2006-20001 [bsc#1207247], mod_dav out of bounds read, or write of zero byte
- Update to 2.4.55:
  * ) SECURITY: CVE-2022-37436: Apache HTTP Server: mod_proxy prior to
    2.4.55 allows a backend to trigger HTTP response splitting
    (cve.mitre.org)
    Prior to Apache HTTP Server 2.4.55, a malicious backend can
    cause the response headers to be truncated early, resulting in
    some headers being incorporated into the response body. If the
    later headers have any security purpose, they will not be
    interpreted by the client.
    Credits: Dimas Fariski Setyawan Putra (@nyxsorcerer)
  * ) SECURITY: CVE-2022-36760: Apache HTTP Server: mod_proxy_ajp
    Possible request smuggling (cve.mitre.org)
    Inconsistent Interpretation of HTTP Requests ('HTTP Request
    Smuggling') vulnerability in mod_proxy_ajp of Apache HTTP Server
    allows an attacker to smuggle requests to the AJP server it
    forwards requests to.  This issue affects Apache HTTP Server
    Apache HTTP Server 2.4 version 2.4.54 and prior versions.
    Credits: ZeddYu_Lu from Qi'anxin Research Institute of Legendsec
    at Qi'anxin Group
  * ) SECURITY: CVE-2006-20001: mod_dav out of  bounds read, or write
    of zero byte (cve.mitre.org)
    A carefully crafted If: request header can cause a memory read,
    or write of a single zero byte, in a pool (heap) memory location
    beyond the header value sent. This could cause the process to
    crash.
    This issue affects Apache HTTP Server 2.4.54 and earlier.
  * ) mod_dav: Open the lock database read-only when possible.
    PR 36636 [Wilson Felipe &lt;wfelipe gmail.com&gt;, manu]
  * ) mod_proxy_http2: apply the standard httpd content type handling
    to responses from the backend, as other proxy modules do. Fixes PR 66391.
    Thanks to Jérôme Billiras for providing the patch.
    [Stefan Eissing]
  * ) mod_dav: mod_dav overrides dav_fs response on PUT failure. PR 35981
    [Basant Kumar Kukreja &lt;basant.kukreja sun.com&gt;, Alejandro Alvarez
    &lt;alejandro.alvarez.ayllon cern.ch&gt;]
  * ) mod_proxy_hcheck: Honor worker timeout settings.  [Yann Ylavic]
  * ) mod_http2: version 2.0.10 of the module, synchronizing changes
    with the gitgub version. This is a partial rewrite of how connections
    and streams are handled.
  - an APR pollset and pipes (where supported) are used to monitor
    the main connection and react to IO for request/response handling.
    This replaces the stuttered timed waits of earlier versions.
  - H2SerializeHeaders directive still exists, but has no longer an effect.
  - Clients that seemingly misbehave still get less resources allocated,
    but ongoing requests are no longer disrupted.
  - Fixed an issue since 1.15.24 that "Server" headers in proxied requests
    were overwritten instead of preserved. [PR by @daum3ns]
  - A regression in v1.15.24 was fixed that could lead to httpd child
    processes not being terminated on a graceful reload or when reaching
    MaxConnectionsPerChild. When unprocessed h2 requests were queued at
    the time, these could stall. See #212.
  - Improved information displayed in 'server-status' for H2 connections when
    Extended Status is enabled. Now one can see the last request that IO
    operations happened on and transferred IO stats are updated as well.
  - When reaching server limits, such as MaxRequestsPerChild, the HTTP/2 connection
    send a GOAWAY frame much too early on new connections, leading to invalid
    protocol state and a client failing the request. See PR65731 at
    &lt;https://bz.apache.org/bugzilla/show_bug.cgi?id=65731&gt;.
    The module now initializes the HTTP/2 protocol correctly and allows the
    client to submit one request before the shutdown via a GOAWAY frame
    is being announced.
  - :scheme pseudo-header values, not matching the
    connection scheme, are forwarded via absolute uris to the
    http protocol processing to preserve semantics of the request.
    Checks on combinations of pseudo-headers values/absence
    have been added as described in RFC 7540. Fixes #230.
  - A bug that prevented trailers (e.g. HEADER frame at the end) to be
    generated in certain cases was fixed. See #233 where it prevented
    gRPC responses to be properly generated.
  - Request and response header values are automatically stripped of leading
    and trialing space/tab characters. This is equivalent behaviour to what
    Apache httpd's http/1.1 parser does.
    The checks for this in nghttp2 v1.50.0+ are disabled.
  - Extensive testing in production done by Alessandro Bianchi (@alexskynet)
    on the v2.0.x versions for stability. Many thanks!
  * ) mod_proxy_http2: fixed #235 by no longer forwarding 'Host:' header when
    request ':authority' is known. Improved test case that did not catch that
    the previous 'fix' was incorrect.
  * ) mod_proxy_hcheck: hcmethod now allows for HTTP/1.1 requests
    using GET11, HEAD11 and/or OPTIONS11. [Jim Jagielski]
  * ) mod_proxy: The AH03408 warning for a forcibly closed backend
    connection is now logged at INFO level.  [Yann Ylavic]
  * ) mod_ssl: When dumping the configuration, the existence of
    certificate/key files is no longer tested.  [Joe Orton]
  * ) mod_authn_core: Add expression support to AuthName and AuthType.
    [Graham Leggett]
  * ) mod_ssl: when a proxy connection had handled a request using SSL, an
    error was logged when "SSLProxyEngine" was only configured in the
    location/proxy section and not the overall server. The connection
    continued to work, the error log was in error. Fixed PR66190.
    [Stefan Eissing]
  * ) mod_proxy_hcheck: Re-enable workers in standard ERROR state. PR 66302.
    [Alessandro Cavaliere &lt;alessandro.cavalier7 unibo.it&gt;]
  * ) mod_proxy_hcheck: Detect AJP/CPING support correctly. PR 66300.
    [Alessandro Cavaliere &lt;alessandro.cavalier7 unibo.it&gt;]
  * ) mod_http2: Export mod_http2.h as public header. [Stefan Eissing]
  * ) mod_md: a new directive `MDStoreLocks` can be used on cluster
    setups with a shared file system for `MDStoreDir` to order
    activation of renewed certificates when several cluster nodes are
    restarted at the same time. Store locks are not enabled by default.
    Restored curl_easy cleanup behaviour from v2.4.14 and refactored
    the use of curl_multi for OCSP requests to work with that.
    Fixes &lt;https://github.com/icing/mod_md/issues/293&gt;.
  * ) core: Avoid an overflow on large inputs in ap_is_matchexp.  PR 66033
    [Ruediger Pluem]
  * ) mod_heartmonitor: Allow "HeartbeatMaxServers 0" to use file based
    storage instead of slotmem. Needed after setting
    HeartbeatMaxServers default to the documented value 10 in 2.4.54.
    PR 66131.  [Jérôme Billiras]
  * ) mod_dav: DAVlockDiscovery option to disable WebDAV lock discovery
    This is a game changer for performances if client use PROPFIND a lot,
    PR 66313. [Emmanuel Dreyfus]</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1678276800">- This update fixes the following security issues:
  * CVE-2023-27522 [bsc#1209049]: mod_proxy_uwsgi HTTP response splitting
  * CVE-2023-25690 [bsc#1209047]: HTTP request splitting with mod_rewrite and mod_proxy
- Update to 2.4.56:
  * ) rotatelogs: Add -T flag to allow subsequent rotated logfiles to be
    truncated without the initial logfile being truncated.  [Eric Covener]
  * ) mod_ldap: LDAPConnectionPoolTTL should accept negative values in order to
    allow connections of any age to be reused. Up to now, a negative value
    was handled as an error when parsing the configuration file.  PR 66421.
    [nailyk &lt;bzapache nailyk.fr&gt;, Christophe Jaillet]
  * ) mod_proxy_ajp: Report an error if the AJP backend sends an invalid number
    of headers. [Ruediger Pluem]
  * ) mod_md:
  - Enabling ED25519 support and certificate transparency information when
    building with libressl v3.5.0 and newer. Thanks to Giovanni Bechis.
  - MDChallengeDns01 can now be configured for individual domains.
    Thanks to Jérôme Billiras (@bilhackmac) for the initial PR.
  - Fixed a bug found by Jérôme Billiras (@bilhackmac) that caused the challenge
    teardown not being invoked as it should.
    [Stefan Eissing]
  * ) mod_http2: client resets of HTTP/2 streams led to unwanted 500 errors
    reported in access logs and error documents. The processing of the
    reset was correct, only unneccesary reporting was caused.
    [Stefan Eissing]
  * ) mod_proxy_uwsgi: Stricter backend HTTP response parsing/validation.
    [Yann Ylavic]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1680868800">- Update to 2.4.57:
  * ) mod_proxy: Check before forwarding that a nocanon path has not been
    rewritten with spaces during processing.  [Yann Ylavic]
  * ) mod_proxy: In case that AllowEncodedSlashes is set to NoDecode do not
    double encode encoded slashes in the URL sent by the reverse proxy to the
    backend. [Ruediger Pluem]
  * ) mod_http2: fixed a crash during connection termination. See PR 66539.
    [Stefan Eissing]
  * ) mod_rewrite: Fix a 2.4.56 regression for substitutions ending
    in a question mark. PR66547. [Eric Covener]
  * ) mod_rewrite: Add "BCTLS" and "BNE" RewriteRule flags. Re-allow encoded
    characters on redirections without the "NE" flag.
    [Yann Ylavic, Eric Covener]
  * ) mod_proxy: Fix double encoding of the uri-path of the request forwarded
    to the origin server, when using mapping=encoded|servlet.  [Yann Ylavic]
  * ) mod_mime: Do not match the extention against possible query string
    parameters in case ProxyPass was used with the nocanon option.
    [Ruediger Pluem]</changelog>
  <changelog author="Dirk Stoecker &lt;opensuse@dstoecker.de&gt;" date="1691236800">- Enable building of mod_md</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1697716800">- Update to 2.4.58:
  * ) SECURITY: CVE-2023-45802: Apache HTTP Server: HTTP/2 stream
    memory not reclaimed right away on RST (cve.mitre.org)
    When a HTTP/2 stream was reset (RST frame) by a client, there
    was a time window were the request's memory resources were not
    reclaimed immediately. Instead, de-allocation was deferred to
    connection close. A client could send new requests and resets,
    keeping the connection busy and open and causing the memory
    footprint to keep on growing. On connection close, all resources
    were reclaimed, but the process might run out of memory before
    that.
    This was found by the reporter during testing of CVE-2023-44487
    (HTTP/2 Rapid Reset Exploit) with their own test client. During
    "normal" HTTP/2 use, the probability to hit this bug is very
    low. The kept memory would not become noticeable before the
    connection closes or times out.
    Users are recommended to upgrade to version 2.4.58, which fixes
    the issue.
    Credits: Will Dormann of Vul Labs
  * ) SECURITY: CVE-2023-43622: Apache HTTP Server: DoS in HTTP/2 with
    initial windows size 0 (cve.mitre.org)
    An attacker, opening a HTTP/2 connection with an initial window
    size of 0, was able to block handling of that connection
    indefinitely in Apache HTTP Server. This could be used to
    exhaust worker resources in the server, similar to the well
    known "slow loris" attack pattern.
    This has been fixed in version 2.4.58, so that such connection
    are terminated properly after the configured connection timeout.
    This issue affects Apache HTTP Server: from 2.4.55 through
    2.4.57.
    Users are recommended to upgrade to version 2.4.58, which fixes
    the issue.
    Credits: Prof. Sven Dietrich (City University of New York)
  * ) SECURITY: CVE-2023-31122: mod_macro buffer over-read
    (cve.mitre.org)
    Out-of-bounds Read vulnerability in mod_macro of Apache HTTP
    Server.This issue affects Apache HTTP Server: through 2.4.57.
    Credits: David Shoon (github/davidshoon)
  * ) mod_ssl: Silence info log message "SSL Library Error: error:0A000126:
    SSL routines::unexpected eof while reading" when using
    OpenSSL 3 by setting SSL_OP_IGNORE_UNEXPECTED_EOF if
    available. [Rainer Jung]
  * ) mod_http2: improved early cleanup of streams.
    [Stefan Eissing]
  * ) mod_proxy_http2: improved error handling on connection errors while
    response is already underway.
    [Stefan Eissing]
  * ) mod_http2: fixed a bug that could lead to a crash in main connection
    output handling. This occured only when the last request on a HTTP/2
    connection had been processed and the session decided to shut down.
    This could lead to an attempt to send a final GOAWAY while the previous
    write was still in progress. See PR 66646.
    [Stefan Eissing]
  * ) mod_proxy_http2: fix `X-Forward-Host` header to carry the correct value.
    Fixes PR66752.
    [Stefan Eissing]
  * ) mod_http2: added support for bootstrapping WebSockets via HTTP/2, as
    described in RFC 8441. A new directive 'H2WebSockets on|off' has been
    added. The feature is by default not enabled.
    As also discussed in the manual, this feature should work for setups
    using "ProxyPass backend-url upgrade=websocket" without further changes.
    Special server modules for WebSockets will have to be adapted,
    most likely, as the handling if IO events is different with HTTP/2.
    HTTP/2 WebSockets are supported on platforms with native pipes. This
    excludes Windows.
    [Stefan Eissing]
  * ) mod_rewrite: Fix a regression with both a trailing ? and [QSA].
    in OCSP stapling. PR 66672. [Frank Meier &lt;frank.meier ergon.ch&gt;, covener]
  * ) mod_http2: fixed a bug in flushing pending data on an already closed
    connection that could lead to a busy loop, preventing the HTTP/2 session
    to close down successfully. Fixed PR 66624.
    [Stefan Eissing]
  * ) mod_http2: v2.0.15 with the following fixes and improvements
  - New directive 'H2EarlyHint name value' to add headers to a response,
    picked up already when a "103 Early Hints" response is sent. 'name' and
    'value' must comply to the HTTP field restrictions.
    This directive can be repeated several times and header fields of the
    same names add. Sending a 'Link' header with 'preload' relation will
    also cause a HTTP/2 PUSH if enabled and supported by the client.
  - Fixed an issue where requests were not logged and accounted in a timely
    fashion when the connection returns to "keepalive" handling, e.g. when
    the request served was the last outstanding one.
    This led to late appearance in access logs with wrong duration times
    reported.
  - Accurately report the bytes sent for a request in the '%O' Log format.
    This addresses #203, a long outstanding issue where mod_h2 has reported
    numbers over-eagerly from internal buffering and not what has actually
    been placed on the connection.
    The numbers are now the same with and without H2CopyFiles enabled.
    [Stefan Eissing]
  * ) mod_proxy_http2: fix retry handling to not leak temporary errors.
    On detecting that that an existing connection was shutdown by the other
    side, a 503 response leaked even though the request was retried on a
    fresh connection.
    [Stefan Eissing]
  * ) mod_rewrite: Add server directory to include path as mod_rewrite requires
    test_char.h. PR 66571 [Valeria Petrov &lt;valeria.petrov@spinetix.com&gt;]
  * ) mod_http2: new directive `H2ProxyRequests on|off` to enable handling
    of HTTP/2 requests in a forward proxy configuration.
    General forward proxying is enabled via `ProxyRequests`. If the
    HTTP/2 protocol is also enabled for such a server/host, this new
    directive is needed in addition.
    [Stefan Eissing]
  * ) core: Updated conf/mime.types:
  - .js moved from 'application/javascript' to 'text/javascript'
  - .mjs was added as 'text/javascript'
  - add .opus ('audio/ogg')
  - add 'application/vnd.geogebra.slides'
  - add WebAssembly MIME types and extension
    [Mathias Bynens &lt;@mathiasbynens&gt; via PR 318,
    Richard de Boer &lt;richard tubul.net&gt;, Dave Hodder &lt;dmh dmh.org.uk&gt;,
    Zbynek Konecny &lt;zbynek1729 gmail.com&gt;]
  * ) mod_proxy_http2: fixed using the wrong "bucket_alloc" from the backend
    connection when sending data on the frontend one. This caused crashes
    or infinite loops in rare situations.
  * ) mod_proxy_http2: fixed a bug in retry/response handling that could lead
    to wrong status codes or HTTP messages send at the end of response bodies
    exceeding the announced content-length.
  * ) mod_proxy_http2: fix retry handling to not leak temporary errors.
    On detecting that that an existing connection was shutdown by the other
    side, a 503 response leaked even though the request was retried on a
    fresh connection.
  * ) mod_http2: fixed a bug that did cleanup of consumed and pending buckets in
    the wrong order when a bucket_beam was destroyed.
    [Stefan Eissing]
  * ) mod_http2: avoid double chunked-encoding on internal redirects.
    PR 66597 [Yann Ylavic, Stefan Eissing]
  * ) mod_http2: Fix reporting of `Total Accesses` in server-status to not count
    HTTP/2 requests twice. Fixes PR 66801.
    [Stefan Eissing]
  * ) mod_ssl: Fix handling of Certificate Revoked messages
    in OCSP stapling. PR 66626. [&lt;gmoniker gmail.com&gt;]
  * ) mod_http2: fixed a bug in handling of stream timeouts.
    [Stefan Eissing]
  * ) mod_tls: updating to rustls-ffi version 0.9.2 or higher.
    Checking in configure for proper version installed. Code
    fixes for changed clienthello member name.
    [Stefan Eissing]
  * ) mod_md:
  - New directive `MDMatchNames all|servernames` to allow more control over how
    MDomains are matched to VirtualHosts.
  - New directive `MDChallengeDns01Version`. Setting this to `2` will provide
    the command also with the challenge value on `teardown` invocation. In version
    1, the default, only the `setup` invocation gets this parameter.
    Refs #312. Thanks to @domrim for the idea.
  - For Managed Domain in "manual" mode, the checks if all used ServerName and
    ServerAlias are part of the MDomain now reports a warning instead of an error
    (AH10040) when not all names are present.
  - MDChallengeDns01 can now be configured for individual domains.
    Using PR from JÃ©rÃ´me Billiras (@bilhackmac) and adding test case and fixing proper working
  - Fixed a bug found by JÃ©rÃ´me Billiras (@bilhackmac) that caused the challenge
    teardown not being invoked as it should.
  * ) mod_ldap: Avoid performance overhead of APR-util rebind cache for
    OpenLDAP 2.2+.  PR 64414.  [Joe Orton]
  * ) mod_http2: new directive 'H2MaxDataFrameLen n' to limit the maximum
    amount of response body bytes put into a single HTTP/2 DATA frame.
    Setting this to 0 places no limit (but the max size allowed by the
    protocol is observed).
    The module, by default, tries to use the maximum size possible, which is
    somewhat around 16KB. This sets the maximum. When less response data is
    available, smaller frames will be sent.
  * ) mod_md: fixed passing of the server environment variables to programs
    started via MDMessageCmd and MDChallengeDns01 on *nix system.
    See &lt;https://github.com/icing/mod_md/issues/319&gt;.
    [Stefan Eissing]
  * ) mod_dav: Add DavBasePath directive to configure the repository root
    path.  PR 35077.  [Joe Orton]
  * ) mod_alias: Add AliasPreservePath directive to map the full
    path after the alias in a location. [Graham Leggett]
  * ) mod_alias: Add RedirectRelative to allow relative redirect targets to be
    issued as-is. [Eric Covener, Graham Leggett]
  * ) core: Add formats %{z} and %{strftime-format} to ErrorLogFormat, and make
    sure that if the format is configured early enough it applies to every log
    line.  PR 62161.  [Yann Ylavic]
  * ) mod_deflate: Add DeflateAlterETag to control how the ETag
    is modified. The 'NoChange' parameter mimics 2.2.x behavior.
    PR 45023, PR 39727. [Eric Covener]
  * ) core: Optimize send_brigade_nonblocking(). [Yann Ylavic, Christophe Jaillet]
  * ) mod_status: Remove duplicate keys "BusyWorkers" and "IdleWorkers".
    Resolve inconsistency between the previous two occurrences by
    counting workers in state SERVER_GRACEFUL no longer as busy,
    but instead in a new counter "GracefulWorkers" (or on HTML
    view as "workers gracefully restarting"). Also add the graceful
    counter as a new column to the existing HTML per process table
    for async MPMs. PR 63300. [Rainer Jung]</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1706529600">- use grep -E for egrep</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1708430400">- Use %autosetup macro. Allows to eliminate the usage of deprecated
  %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1712232000">- Update to 2.4.59:
  * ) mod_deflate: Fixes and better logging for handling various
    error and edge cases. [Eric Covener, Yann Ylavic, Joe Orton,
    Eric Norris &lt;enorris etsy.com&gt;]
  * ) Add CGIScriptTimeout to mod_cgi. [Eric Covener]
  * ) mod_xml2enc: Tolerate libxml2 2.12.0 and later.  PR 68610
    [ttachi &lt;tachihara AT hotmail.com&gt;]
  * ) mod_slotmem_shm: Use ap_os_is_path_absolute() to make it portable.
    [Jean-Frederic Clere]
  * ) mod_ssl: Use OpenSSL-standard functions to assemble CA
    name lists for SSLCACertificatePath/SSLCADNRequestPath.
    Names will now be consistently sorted. PR 61574.
    [Joe Orton]
  * ) mod_xml2enc: Update check to accept any text/ media type
    or any XML media type per RFC 7303, avoiding
    corruption of Microsoft OOXML formats.  PR 64339.
    [Joseph Heenan &lt;joseph.heenan fintechlabs.io&gt;, Joe Orton]
  * ) mod_http2: v2.0.26 with the following fixes:
  - Fixed `Date` header on requests upgraded from HTTP/1.1 (h2c). Fixes
    &lt;https://github.com/icing/mod_h2/issues/272&gt;.
  - Fixed small memory leak in h2 header bucket free. Thanks to
    Michael Kaufmann for finding this and providing the fix.
  * ) htcacheclean: In -a/-A mode, list all files per subdirectory
    rather than only one. PR 65091.
    [Artem Egorenkov &lt;aegorenkov.91 gmail.com&gt;]
  * ) mod_ssl: SSLProxyMachineCertificateFile/Path may reference files
    which include CA certificates; those CA certs are treated as if
    configured with SSLProxyMachineCertificateChainFile.  [Joe Orton]
  * ) htpasswd, htdbm, dbmmanage: Update help&amp;docs to refer to
    "hashing", rather than "encrypting" passwords.
    [Michele Preziuso &lt;mpreziuso kaosdynamics.com&gt;]
  * ) mod_ssl: Fix build with LibreSSL 2.0.7+. PR 64047.
    [Giovanni Bechis, Yann Ylavic]
  * ) htpasswd: Add support for passwords using SHA-2.  [Joe Orton,
    Yann Ylavic]
  * ) core: Allow mod_env to override system environment vars. [Joe Orton]
  * ) Allow mod_dav_fs to tolerate race conditions between PROPFIND and an
    operation which removes a directory/file between apr_dir_read() and
    apr_stat(). Current behaviour is to abort the connection which seems
    inferior to tolerating (and logging) the error. [Joe Orton]
  * ) mod_ldap: HTML-escape data in the ldap-status handler.
    [Eric Covener, Chamal De Silva]
  * ) mod_ssl: Disable the OpenSSL ENGINE API when OPENSSL_NO_ENGINE is set.
    Allow for "SSLCryptoDevice builtin" if the ENGINE API is not available,
    notably with OpenSSL &gt;= 3.  PR 68080.  [Yann Ylavic, Joe Orton]
  * ) mod_ssl: Improve compatibility with OpenSSL 3, fix build warnings about
    deprecated ENGINE_ API, honor OPENSSL_API_COMPAT setting while defaulting
    to compatibitily with version 1.1.1 (including ENGINEs / SSLCryptoDevice).
    [Yann Ylavic]
  * ) mod_ssl: release memory to the OS when needed. [Giovanni Bechis]
  * ) mod_proxy: Ignore (and warn about) enablereuse=on for ProxyPassMatch when
    some dollar substitution (backreference) happens in the hostname or port
    part of the URL.  [Yann Ylavic]
  * ) mod_proxy: Allow to set a TTL for how long DNS resolutions to backend
    systems are cached. [Yann Ylavic]
  * ) mod_proxy: Add optional third argument for ProxyRemote, which
    configures Basic authentication credentials to pass to the remote
    proxy.  PR 37355.  [Joe Orton]</changelog>
  <changelog author="pgajdos@suse.com" date="1718280000">- added patches [bsc#1226217]
  https://github.com/apache/httpd/pull/444/commits/c2fffd29b0f58bdc9caaaff4fec68e17a676f182
  + apache2-issue-444.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1720094400">- Update to 2.4.61
  * ) SECURITY: CVE-2024-39884: Apache HTTP Server: source code
    disclosure with handlers configured via AddType (cve.mitre.org)
    [boo#1227353]
    A regression in the core of Apache HTTP Server 2.4.60 ignores
    some use of the legacy content-type based configuration of
    handlers.   "AddType" and similar configuration, under some
    circumstances where files are requested indirectly, result in
    source code disclosure of local content. For example, PHP
    scripts may be served instead of interpreted.
    Users are recommended to upgrade to version 2.4.61, which fixes
    this issue.
- Update to 2.4.60
  * ) SECURITY: CVE-2024-39573: Apache HTTP Server: mod_rewrite proxy
    handler substitution (cve.mitre.org) [boo#1227271]
    Potential SSRF in mod_rewrite in Apache HTTP Server 2.4.59 and
    earlier allows an attacker to cause unsafe RewriteRules to
    unexpectedly setup URL's to be handled by mod_proxy.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38477: Apache HTTP Server: Crash resulting in
    Denial of Service in mod_proxy via a malicious request
    (cve.mitre.org) [boo#1227270]
    null pointer dereference in mod_proxy in Apache HTTP Server
    2.4.59 and earlier allows an attacker to crash the server via a
    malicious request.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38476: Apache HTTP Server may use
    exploitable/malicious backend application output to run local
    handlers via internal redirect (cve.mitre.org) [boo#1227269]
    Vulnerability in core of Apache HTTP Server 2.4.59 and earlier
    are vulnerably to information disclosure, SSRF or local script
    execution via backend applications whose response headers are
    malicious or exploitable.
    Note: Some legacy uses of the 'AddType' directive to connect a
    request to a handler must be ported to 'AddHandler' after this fix.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38475: Apache HTTP Server weakness in
    mod_rewrite when first segment of substitution matches
    filesystem path. (cve.mitre.org) [boo#1227268]
    Improper escaping of output in mod_rewrite in Apache HTTP Server
    2.4.59 and earlier allows an attacker to map URLs to filesystem
    locations that are permitted to be served by the server but are
    not intentionally/directly reachable by any URL, resulting in
    code execution or source code disclosure.
    Substitutions in server context that use a backreferences or
    variables as the first segment of the substitution are affected.
    Some unsafe RewiteRules will be broken by this change and the
    rewrite flag "UnsafePrefixStat" can be used to opt back in once
    ensuring the substitution is appropriately constrained.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38474: Apache HTTP Server weakness with
    encoded question marks in backreferences (cve.mitre.org)
    [boo#1227278]
    Substitution encoding issue in mod_rewrite in Apache HTTP Server
    2.4.59 and earlier allows attacker to execute scripts in
    directories permitted by the configuration but not directly
    reachable by any URL or source disclosure of scripts meant to
    only to be executed as CGI.
    Note: Some RewriteRules that capture and substitute unsafely will now
    fail unless rewrite flag "UnsafeAllow3F" is specified.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38473: Apache HTTP Server proxy encoding
    problem (cve.mitre.org) [boo#1227276]
    Encoding problem in mod_proxy in Apache HTTP Server 2.4.59 and
    earlier allows request URLs with incorrect encoding to be sent
    to backend services, potentially bypassing authentication via
    crafted requests.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38472: Apache HTTP Server on WIndows UNC SSRF
    (cve.mitre.org) [boo#1227267]
    SSRF in Apache HTTP Server on Windows allows to potentially leak
    NTML hashes to a malicious server via SSRF and malicious
    requests or content
    Note: Existing configurations that access UNC paths
    will have to configure new directive "UNCList" to allow access
    during request processing.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-36387: Apache HTTP Server: DoS by Null
    pointer in websocket over HTTP/2 (cve.mitre.org) [boo#1227272]
    Serving WebSocket protocol upgrades over a HTTP/2 connection
    could result in a Null Pointer dereference, leading to a crash
    of the server process, degrading performance.
    Credits: Marc Stern (&lt;marc.stern AT approach-cyber.com&gt;)
  * ) mod_proxy: Fix DNS requests and connections closed before the
    configured addressTTL.  BZ 69126.  [Yann Ylavic]
  * ) core: On Linux, log the real thread ID in error logs.  [Joe Orton]
  * ) core: Support zone/scope in IPv6 link-local addresses in Listen and
    VirtualHost directives (requires APR 1.7.x or later).  PR 59396
    [Joe Orton]
  * ) mod_ssl: Reject client-initiated renegotiation with a TLS alert
    (rather than connection closure).  [Joe Orton, Yann Ylavic]
  * ) Updated mime.types.  [Mohamed Akram &lt;mohd.akram outlook.com&gt;,
    Adam Silverstein &lt;adamsilverstein earthboundhosting.com&gt;]
  * ) mod_ssl: Fix a regression that causes the default DH parameters for a key
    no longer set and thus effectively disabling DH ciphers when no explicit
    DH parameters are set. PR 68863 [Ruediger Pluem]
  * ) mod_cgid: Optional support for file descriptor passing, fixing
    error log handling (configure --enable-cgid-fdpassing) on Unix
    platforms. PR 54221.  [Joe Orton]
  * ) mod_cgid/mod_cgi: Distinguish script stderr output clearly in
    error logs.  PR 61980.  [Hank Ibell &lt;hwibell gmail.com&gt;]
  * ) mod_tls: update version of rustls-ffi to v0.13.0.
    [Daniel McCarney (@cpu}]
  * ) mod_md:
  - Using OCSP stapling information to trigger certificate renewals. Proposed
    by @frasertweedale.
  - Added directive `MDCheckInterval` to control how often the server checks
    for detected revocations. Added proposals for configurations in the
    README.md chapter "Revocations".
  - OCSP stapling: accept OCSP responses without a `nextUpdate` entry which is
    allowed in RFC 6960. Treat those as having an update interval of 12 hours.
    Added by @frasertweedale.
  - Adapt OpenSSL usage to changes in their API. By Yann Ylavic.
- removed patches (upstreamed)
  - apache2-issue-444.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- Update to 2.4.62
  * ) SECURITY: CVE-2024-40898: Apache HTTP Server: SSRF with
    mod_rewrite in server/vhost context on Windows (cve.mitre.org)
    [boo#1228098]
    SSRF in Apache HTTP Server on Windows with mod_rewrite in
    server/vhost context, allows to potentially leak NTML hashes to
    a malicious server via SSRF and malicious requests.
    Users are recommended to upgrade to version 2.4.62 which fixes
    this issue.
    Credits: Smi1e (DBAPPSecurity Ltd.)
  * ) SECURITY: CVE-2024-40725: Apache HTTP Server: source code
    disclosure with handlers configured via AddType (cve.mitre.org)
    [boo#1228097]
    A partial fix for  CVE-2024-39884 in the core of Apache HTTP
    Server 2.4.61 ignores some use of the legacy content-type based
    configuration of handlers. "AddType" and similar configuration,
    under some circumstances where files are requested indirectly,
    result in source code disclosure of local content. For example,
    PHP scripts may be served instead of interpreted.
    Users are recommended to upgrade to version 2.4.62, which fixes
    this issue.
  * ) mod_proxy: Fix canonicalisation and FCGI env (PATH_INFO, SCRIPT_NAME) for
    "balancer:" URLs set via SetHandler, also allowing for "unix:" sockets
    with BalancerMember(s).  PR 69168.  [Yann Ylavic]
  * ) mod_proxy: Avoid AH01059 parsing error for SetHandler "unix:" URLs.
    PR 69160 [Yann Ylavic]
  * ) mod_ssl: Fix crashes in PKCS#11 ENGINE support with OpenSSL 3.2.
    [Joe Orton]
  * ) mod_ssl: Add support for loading certs/keys from pkcs11: URIs
    via OpenSSL 3.x providers.  [Ingo Franzki &lt;ifranzki linux.ibm.com&gt;]
  * ) mod_ssl: Restore SSL dumping on trace7 loglevel with OpenSSL &gt;= 3.0.
    [Ruediger Pluem, Yann Ylavic]
  * ) mpm_worker: Fix possible warning (AH00045) about children processes not
    terminating timely.  [Yann Ylavic]</changelog>
  <changelog author="Thorsten Kukuk &lt;kukuk@suse.com&gt;" date="1727697600">- Add /srv/www directories to filelist [bsc#1231027]
  (apache2 will not start since default config uses this directory)</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1730721600">- Explicitly mark start_apache2 as bash-dependent.</changelog>
  <changelog author="Martin Schreiner &lt;martin.schreiner@suse.com&gt;" date="1730808000">- Update httpd-framework to svn1921782.
- Fixes Apache's impact on bsc#1218342.</changelog>
</package>
<package pkgid="cd0bf9887d1f57a46354c21ae7248c0fa1488cd5157236234ca1860abe9ae468bd738cfc69d3f9219f7a3b63065295ba06337530e87d8e969c82952d70330cc4" name="apache2-debugsource" arch="x86_64">
  <version epoch="0" ver="2.4.62" rel="3.1"/>
  <changelog author="pgajdos@suse.com" date="1654689600">- update httpd-framework to svn revision 1898917</changelog>
  <changelog author="Stefan Schubert &lt;schubi@intern&gt;" date="1656417600">- Moved logrotate files from user specific directory /etc/logrotate.d
  to vendor specific directory /usr/etc/logrotate.d.</changelog>
  <changelog author="Stefan Schubert &lt;schubi@suse.com&gt;" date="1662033600">- Migration to /usr/etc: Saving user changed configuration files
  in /etc and restoring them while an RPM update.</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1663675200">- Remove references to README.QUICKSTART and point them to
  https://en.opensuse.org/SDB:Apache_installation (bsc#1203573)</changelog>
  <changelog author="Stephan Kulow &lt;coolo@suse.com&gt;" date="1663934400">- The 2.4.54 release brought support for PCRE2, but for that we also
  need to change buildrequires to pcre2-devel</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1670846400">- switch to pkgconfig(zlib) so that alternative providers can be
  used</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1674043200">- This update fixes the following security issues:
  * CVE-2022-37436 [bsc#1207251], mod_proxy backend HTTP response splitting
  * CVE-2022-36760 [bsc#1207250], mod_proxy_ajp Possible request smuggling
  * CVE-2006-20001 [bsc#1207247], mod_dav out of bounds read, or write of zero byte
- Update to 2.4.55:
  * ) SECURITY: CVE-2022-37436: Apache HTTP Server: mod_proxy prior to
    2.4.55 allows a backend to trigger HTTP response splitting
    (cve.mitre.org)
    Prior to Apache HTTP Server 2.4.55, a malicious backend can
    cause the response headers to be truncated early, resulting in
    some headers being incorporated into the response body. If the
    later headers have any security purpose, they will not be
    interpreted by the client.
    Credits: Dimas Fariski Setyawan Putra (@nyxsorcerer)
  * ) SECURITY: CVE-2022-36760: Apache HTTP Server: mod_proxy_ajp
    Possible request smuggling (cve.mitre.org)
    Inconsistent Interpretation of HTTP Requests ('HTTP Request
    Smuggling') vulnerability in mod_proxy_ajp of Apache HTTP Server
    allows an attacker to smuggle requests to the AJP server it
    forwards requests to.  This issue affects Apache HTTP Server
    Apache HTTP Server 2.4 version 2.4.54 and prior versions.
    Credits: ZeddYu_Lu from Qi'anxin Research Institute of Legendsec
    at Qi'anxin Group
  * ) SECURITY: CVE-2006-20001: mod_dav out of  bounds read, or write
    of zero byte (cve.mitre.org)
    A carefully crafted If: request header can cause a memory read,
    or write of a single zero byte, in a pool (heap) memory location
    beyond the header value sent. This could cause the process to
    crash.
    This issue affects Apache HTTP Server 2.4.54 and earlier.
  * ) mod_dav: Open the lock database read-only when possible.
    PR 36636 [Wilson Felipe &lt;wfelipe gmail.com&gt;, manu]
  * ) mod_proxy_http2: apply the standard httpd content type handling
    to responses from the backend, as other proxy modules do. Fixes PR 66391.
    Thanks to Jérôme Billiras for providing the patch.
    [Stefan Eissing]
  * ) mod_dav: mod_dav overrides dav_fs response on PUT failure. PR 35981
    [Basant Kumar Kukreja &lt;basant.kukreja sun.com&gt;, Alejandro Alvarez
    &lt;alejandro.alvarez.ayllon cern.ch&gt;]
  * ) mod_proxy_hcheck: Honor worker timeout settings.  [Yann Ylavic]
  * ) mod_http2: version 2.0.10 of the module, synchronizing changes
    with the gitgub version. This is a partial rewrite of how connections
    and streams are handled.
  - an APR pollset and pipes (where supported) are used to monitor
    the main connection and react to IO for request/response handling.
    This replaces the stuttered timed waits of earlier versions.
  - H2SerializeHeaders directive still exists, but has no longer an effect.
  - Clients that seemingly misbehave still get less resources allocated,
    but ongoing requests are no longer disrupted.
  - Fixed an issue since 1.15.24 that "Server" headers in proxied requests
    were overwritten instead of preserved. [PR by @daum3ns]
  - A regression in v1.15.24 was fixed that could lead to httpd child
    processes not being terminated on a graceful reload or when reaching
    MaxConnectionsPerChild. When unprocessed h2 requests were queued at
    the time, these could stall. See #212.
  - Improved information displayed in 'server-status' for H2 connections when
    Extended Status is enabled. Now one can see the last request that IO
    operations happened on and transferred IO stats are updated as well.
  - When reaching server limits, such as MaxRequestsPerChild, the HTTP/2 connection
    send a GOAWAY frame much too early on new connections, leading to invalid
    protocol state and a client failing the request. See PR65731 at
    &lt;https://bz.apache.org/bugzilla/show_bug.cgi?id=65731&gt;.
    The module now initializes the HTTP/2 protocol correctly and allows the
    client to submit one request before the shutdown via a GOAWAY frame
    is being announced.
  - :scheme pseudo-header values, not matching the
    connection scheme, are forwarded via absolute uris to the
    http protocol processing to preserve semantics of the request.
    Checks on combinations of pseudo-headers values/absence
    have been added as described in RFC 7540. Fixes #230.
  - A bug that prevented trailers (e.g. HEADER frame at the end) to be
    generated in certain cases was fixed. See #233 where it prevented
    gRPC responses to be properly generated.
  - Request and response header values are automatically stripped of leading
    and trialing space/tab characters. This is equivalent behaviour to what
    Apache httpd's http/1.1 parser does.
    The checks for this in nghttp2 v1.50.0+ are disabled.
  - Extensive testing in production done by Alessandro Bianchi (@alexskynet)
    on the v2.0.x versions for stability. Many thanks!
  * ) mod_proxy_http2: fixed #235 by no longer forwarding 'Host:' header when
    request ':authority' is known. Improved test case that did not catch that
    the previous 'fix' was incorrect.
  * ) mod_proxy_hcheck: hcmethod now allows for HTTP/1.1 requests
    using GET11, HEAD11 and/or OPTIONS11. [Jim Jagielski]
  * ) mod_proxy: The AH03408 warning for a forcibly closed backend
    connection is now logged at INFO level.  [Yann Ylavic]
  * ) mod_ssl: When dumping the configuration, the existence of
    certificate/key files is no longer tested.  [Joe Orton]
  * ) mod_authn_core: Add expression support to AuthName and AuthType.
    [Graham Leggett]
  * ) mod_ssl: when a proxy connection had handled a request using SSL, an
    error was logged when "SSLProxyEngine" was only configured in the
    location/proxy section and not the overall server. The connection
    continued to work, the error log was in error. Fixed PR66190.
    [Stefan Eissing]
  * ) mod_proxy_hcheck: Re-enable workers in standard ERROR state. PR 66302.
    [Alessandro Cavaliere &lt;alessandro.cavalier7 unibo.it&gt;]
  * ) mod_proxy_hcheck: Detect AJP/CPING support correctly. PR 66300.
    [Alessandro Cavaliere &lt;alessandro.cavalier7 unibo.it&gt;]
  * ) mod_http2: Export mod_http2.h as public header. [Stefan Eissing]
  * ) mod_md: a new directive `MDStoreLocks` can be used on cluster
    setups with a shared file system for `MDStoreDir` to order
    activation of renewed certificates when several cluster nodes are
    restarted at the same time. Store locks are not enabled by default.
    Restored curl_easy cleanup behaviour from v2.4.14 and refactored
    the use of curl_multi for OCSP requests to work with that.
    Fixes &lt;https://github.com/icing/mod_md/issues/293&gt;.
  * ) core: Avoid an overflow on large inputs in ap_is_matchexp.  PR 66033
    [Ruediger Pluem]
  * ) mod_heartmonitor: Allow "HeartbeatMaxServers 0" to use file based
    storage instead of slotmem. Needed after setting
    HeartbeatMaxServers default to the documented value 10 in 2.4.54.
    PR 66131.  [Jérôme Billiras]
  * ) mod_dav: DAVlockDiscovery option to disable WebDAV lock discovery
    This is a game changer for performances if client use PROPFIND a lot,
    PR 66313. [Emmanuel Dreyfus]</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1678276800">- This update fixes the following security issues:
  * CVE-2023-27522 [bsc#1209049]: mod_proxy_uwsgi HTTP response splitting
  * CVE-2023-25690 [bsc#1209047]: HTTP request splitting with mod_rewrite and mod_proxy
- Update to 2.4.56:
  * ) rotatelogs: Add -T flag to allow subsequent rotated logfiles to be
    truncated without the initial logfile being truncated.  [Eric Covener]
  * ) mod_ldap: LDAPConnectionPoolTTL should accept negative values in order to
    allow connections of any age to be reused. Up to now, a negative value
    was handled as an error when parsing the configuration file.  PR 66421.
    [nailyk &lt;bzapache nailyk.fr&gt;, Christophe Jaillet]
  * ) mod_proxy_ajp: Report an error if the AJP backend sends an invalid number
    of headers. [Ruediger Pluem]
  * ) mod_md:
  - Enabling ED25519 support and certificate transparency information when
    building with libressl v3.5.0 and newer. Thanks to Giovanni Bechis.
  - MDChallengeDns01 can now be configured for individual domains.
    Thanks to Jérôme Billiras (@bilhackmac) for the initial PR.
  - Fixed a bug found by Jérôme Billiras (@bilhackmac) that caused the challenge
    teardown not being invoked as it should.
    [Stefan Eissing]
  * ) mod_http2: client resets of HTTP/2 streams led to unwanted 500 errors
    reported in access logs and error documents. The processing of the
    reset was correct, only unneccesary reporting was caused.
    [Stefan Eissing]
  * ) mod_proxy_uwsgi: Stricter backend HTTP response parsing/validation.
    [Yann Ylavic]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1680868800">- Update to 2.4.57:
  * ) mod_proxy: Check before forwarding that a nocanon path has not been
    rewritten with spaces during processing.  [Yann Ylavic]
  * ) mod_proxy: In case that AllowEncodedSlashes is set to NoDecode do not
    double encode encoded slashes in the URL sent by the reverse proxy to the
    backend. [Ruediger Pluem]
  * ) mod_http2: fixed a crash during connection termination. See PR 66539.
    [Stefan Eissing]
  * ) mod_rewrite: Fix a 2.4.56 regression for substitutions ending
    in a question mark. PR66547. [Eric Covener]
  * ) mod_rewrite: Add "BCTLS" and "BNE" RewriteRule flags. Re-allow encoded
    characters on redirections without the "NE" flag.
    [Yann Ylavic, Eric Covener]
  * ) mod_proxy: Fix double encoding of the uri-path of the request forwarded
    to the origin server, when using mapping=encoded|servlet.  [Yann Ylavic]
  * ) mod_mime: Do not match the extention against possible query string
    parameters in case ProxyPass was used with the nocanon option.
    [Ruediger Pluem]</changelog>
  <changelog author="Dirk Stoecker &lt;opensuse@dstoecker.de&gt;" date="1691236800">- Enable building of mod_md</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1697716800">- Update to 2.4.58:
  * ) SECURITY: CVE-2023-45802: Apache HTTP Server: HTTP/2 stream
    memory not reclaimed right away on RST (cve.mitre.org)
    When a HTTP/2 stream was reset (RST frame) by a client, there
    was a time window were the request's memory resources were not
    reclaimed immediately. Instead, de-allocation was deferred to
    connection close. A client could send new requests and resets,
    keeping the connection busy and open and causing the memory
    footprint to keep on growing. On connection close, all resources
    were reclaimed, but the process might run out of memory before
    that.
    This was found by the reporter during testing of CVE-2023-44487
    (HTTP/2 Rapid Reset Exploit) with their own test client. During
    "normal" HTTP/2 use, the probability to hit this bug is very
    low. The kept memory would not become noticeable before the
    connection closes or times out.
    Users are recommended to upgrade to version 2.4.58, which fixes
    the issue.
    Credits: Will Dormann of Vul Labs
  * ) SECURITY: CVE-2023-43622: Apache HTTP Server: DoS in HTTP/2 with
    initial windows size 0 (cve.mitre.org)
    An attacker, opening a HTTP/2 connection with an initial window
    size of 0, was able to block handling of that connection
    indefinitely in Apache HTTP Server. This could be used to
    exhaust worker resources in the server, similar to the well
    known "slow loris" attack pattern.
    This has been fixed in version 2.4.58, so that such connection
    are terminated properly after the configured connection timeout.
    This issue affects Apache HTTP Server: from 2.4.55 through
    2.4.57.
    Users are recommended to upgrade to version 2.4.58, which fixes
    the issue.
    Credits: Prof. Sven Dietrich (City University of New York)
  * ) SECURITY: CVE-2023-31122: mod_macro buffer over-read
    (cve.mitre.org)
    Out-of-bounds Read vulnerability in mod_macro of Apache HTTP
    Server.This issue affects Apache HTTP Server: through 2.4.57.
    Credits: David Shoon (github/davidshoon)
  * ) mod_ssl: Silence info log message "SSL Library Error: error:0A000126:
    SSL routines::unexpected eof while reading" when using
    OpenSSL 3 by setting SSL_OP_IGNORE_UNEXPECTED_EOF if
    available. [Rainer Jung]
  * ) mod_http2: improved early cleanup of streams.
    [Stefan Eissing]
  * ) mod_proxy_http2: improved error handling on connection errors while
    response is already underway.
    [Stefan Eissing]
  * ) mod_http2: fixed a bug that could lead to a crash in main connection
    output handling. This occured only when the last request on a HTTP/2
    connection had been processed and the session decided to shut down.
    This could lead to an attempt to send a final GOAWAY while the previous
    write was still in progress. See PR 66646.
    [Stefan Eissing]
  * ) mod_proxy_http2: fix `X-Forward-Host` header to carry the correct value.
    Fixes PR66752.
    [Stefan Eissing]
  * ) mod_http2: added support for bootstrapping WebSockets via HTTP/2, as
    described in RFC 8441. A new directive 'H2WebSockets on|off' has been
    added. The feature is by default not enabled.
    As also discussed in the manual, this feature should work for setups
    using "ProxyPass backend-url upgrade=websocket" without further changes.
    Special server modules for WebSockets will have to be adapted,
    most likely, as the handling if IO events is different with HTTP/2.
    HTTP/2 WebSockets are supported on platforms with native pipes. This
    excludes Windows.
    [Stefan Eissing]
  * ) mod_rewrite: Fix a regression with both a trailing ? and [QSA].
    in OCSP stapling. PR 66672. [Frank Meier &lt;frank.meier ergon.ch&gt;, covener]
  * ) mod_http2: fixed a bug in flushing pending data on an already closed
    connection that could lead to a busy loop, preventing the HTTP/2 session
    to close down successfully. Fixed PR 66624.
    [Stefan Eissing]
  * ) mod_http2: v2.0.15 with the following fixes and improvements
  - New directive 'H2EarlyHint name value' to add headers to a response,
    picked up already when a "103 Early Hints" response is sent. 'name' and
    'value' must comply to the HTTP field restrictions.
    This directive can be repeated several times and header fields of the
    same names add. Sending a 'Link' header with 'preload' relation will
    also cause a HTTP/2 PUSH if enabled and supported by the client.
  - Fixed an issue where requests were not logged and accounted in a timely
    fashion when the connection returns to "keepalive" handling, e.g. when
    the request served was the last outstanding one.
    This led to late appearance in access logs with wrong duration times
    reported.
  - Accurately report the bytes sent for a request in the '%O' Log format.
    This addresses #203, a long outstanding issue where mod_h2 has reported
    numbers over-eagerly from internal buffering and not what has actually
    been placed on the connection.
    The numbers are now the same with and without H2CopyFiles enabled.
    [Stefan Eissing]
  * ) mod_proxy_http2: fix retry handling to not leak temporary errors.
    On detecting that that an existing connection was shutdown by the other
    side, a 503 response leaked even though the request was retried on a
    fresh connection.
    [Stefan Eissing]
  * ) mod_rewrite: Add server directory to include path as mod_rewrite requires
    test_char.h. PR 66571 [Valeria Petrov &lt;valeria.petrov@spinetix.com&gt;]
  * ) mod_http2: new directive `H2ProxyRequests on|off` to enable handling
    of HTTP/2 requests in a forward proxy configuration.
    General forward proxying is enabled via `ProxyRequests`. If the
    HTTP/2 protocol is also enabled for such a server/host, this new
    directive is needed in addition.
    [Stefan Eissing]
  * ) core: Updated conf/mime.types:
  - .js moved from 'application/javascript' to 'text/javascript'
  - .mjs was added as 'text/javascript'
  - add .opus ('audio/ogg')
  - add 'application/vnd.geogebra.slides'
  - add WebAssembly MIME types and extension
    [Mathias Bynens &lt;@mathiasbynens&gt; via PR 318,
    Richard de Boer &lt;richard tubul.net&gt;, Dave Hodder &lt;dmh dmh.org.uk&gt;,
    Zbynek Konecny &lt;zbynek1729 gmail.com&gt;]
  * ) mod_proxy_http2: fixed using the wrong "bucket_alloc" from the backend
    connection when sending data on the frontend one. This caused crashes
    or infinite loops in rare situations.
  * ) mod_proxy_http2: fixed a bug in retry/response handling that could lead
    to wrong status codes or HTTP messages send at the end of response bodies
    exceeding the announced content-length.
  * ) mod_proxy_http2: fix retry handling to not leak temporary errors.
    On detecting that that an existing connection was shutdown by the other
    side, a 503 response leaked even though the request was retried on a
    fresh connection.
  * ) mod_http2: fixed a bug that did cleanup of consumed and pending buckets in
    the wrong order when a bucket_beam was destroyed.
    [Stefan Eissing]
  * ) mod_http2: avoid double chunked-encoding on internal redirects.
    PR 66597 [Yann Ylavic, Stefan Eissing]
  * ) mod_http2: Fix reporting of `Total Accesses` in server-status to not count
    HTTP/2 requests twice. Fixes PR 66801.
    [Stefan Eissing]
  * ) mod_ssl: Fix handling of Certificate Revoked messages
    in OCSP stapling. PR 66626. [&lt;gmoniker gmail.com&gt;]
  * ) mod_http2: fixed a bug in handling of stream timeouts.
    [Stefan Eissing]
  * ) mod_tls: updating to rustls-ffi version 0.9.2 or higher.
    Checking in configure for proper version installed. Code
    fixes for changed clienthello member name.
    [Stefan Eissing]
  * ) mod_md:
  - New directive `MDMatchNames all|servernames` to allow more control over how
    MDomains are matched to VirtualHosts.
  - New directive `MDChallengeDns01Version`. Setting this to `2` will provide
    the command also with the challenge value on `teardown` invocation. In version
    1, the default, only the `setup` invocation gets this parameter.
    Refs #312. Thanks to @domrim for the idea.
  - For Managed Domain in "manual" mode, the checks if all used ServerName and
    ServerAlias are part of the MDomain now reports a warning instead of an error
    (AH10040) when not all names are present.
  - MDChallengeDns01 can now be configured for individual domains.
    Using PR from JÃ©rÃ´me Billiras (@bilhackmac) and adding test case and fixing proper working
  - Fixed a bug found by JÃ©rÃ´me Billiras (@bilhackmac) that caused the challenge
    teardown not being invoked as it should.
  * ) mod_ldap: Avoid performance overhead of APR-util rebind cache for
    OpenLDAP 2.2+.  PR 64414.  [Joe Orton]
  * ) mod_http2: new directive 'H2MaxDataFrameLen n' to limit the maximum
    amount of response body bytes put into a single HTTP/2 DATA frame.
    Setting this to 0 places no limit (but the max size allowed by the
    protocol is observed).
    The module, by default, tries to use the maximum size possible, which is
    somewhat around 16KB. This sets the maximum. When less response data is
    available, smaller frames will be sent.
  * ) mod_md: fixed passing of the server environment variables to programs
    started via MDMessageCmd and MDChallengeDns01 on *nix system.
    See &lt;https://github.com/icing/mod_md/issues/319&gt;.
    [Stefan Eissing]
  * ) mod_dav: Add DavBasePath directive to configure the repository root
    path.  PR 35077.  [Joe Orton]
  * ) mod_alias: Add AliasPreservePath directive to map the full
    path after the alias in a location. [Graham Leggett]
  * ) mod_alias: Add RedirectRelative to allow relative redirect targets to be
    issued as-is. [Eric Covener, Graham Leggett]
  * ) core: Add formats %{z} and %{strftime-format} to ErrorLogFormat, and make
    sure that if the format is configured early enough it applies to every log
    line.  PR 62161.  [Yann Ylavic]
  * ) mod_deflate: Add DeflateAlterETag to control how the ETag
    is modified. The 'NoChange' parameter mimics 2.2.x behavior.
    PR 45023, PR 39727. [Eric Covener]
  * ) core: Optimize send_brigade_nonblocking(). [Yann Ylavic, Christophe Jaillet]
  * ) mod_status: Remove duplicate keys "BusyWorkers" and "IdleWorkers".
    Resolve inconsistency between the previous two occurrences by
    counting workers in state SERVER_GRACEFUL no longer as busy,
    but instead in a new counter "GracefulWorkers" (or on HTML
    view as "workers gracefully restarting"). Also add the graceful
    counter as a new column to the existing HTML per process table
    for async MPMs. PR 63300. [Rainer Jung]</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1706529600">- use grep -E for egrep</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1708430400">- Use %autosetup macro. Allows to eliminate the usage of deprecated
  %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1712232000">- Update to 2.4.59:
  * ) mod_deflate: Fixes and better logging for handling various
    error and edge cases. [Eric Covener, Yann Ylavic, Joe Orton,
    Eric Norris &lt;enorris etsy.com&gt;]
  * ) Add CGIScriptTimeout to mod_cgi. [Eric Covener]
  * ) mod_xml2enc: Tolerate libxml2 2.12.0 and later.  PR 68610
    [ttachi &lt;tachihara AT hotmail.com&gt;]
  * ) mod_slotmem_shm: Use ap_os_is_path_absolute() to make it portable.
    [Jean-Frederic Clere]
  * ) mod_ssl: Use OpenSSL-standard functions to assemble CA
    name lists for SSLCACertificatePath/SSLCADNRequestPath.
    Names will now be consistently sorted. PR 61574.
    [Joe Orton]
  * ) mod_xml2enc: Update check to accept any text/ media type
    or any XML media type per RFC 7303, avoiding
    corruption of Microsoft OOXML formats.  PR 64339.
    [Joseph Heenan &lt;joseph.heenan fintechlabs.io&gt;, Joe Orton]
  * ) mod_http2: v2.0.26 with the following fixes:
  - Fixed `Date` header on requests upgraded from HTTP/1.1 (h2c). Fixes
    &lt;https://github.com/icing/mod_h2/issues/272&gt;.
  - Fixed small memory leak in h2 header bucket free. Thanks to
    Michael Kaufmann for finding this and providing the fix.
  * ) htcacheclean: In -a/-A mode, list all files per subdirectory
    rather than only one. PR 65091.
    [Artem Egorenkov &lt;aegorenkov.91 gmail.com&gt;]
  * ) mod_ssl: SSLProxyMachineCertificateFile/Path may reference files
    which include CA certificates; those CA certs are treated as if
    configured with SSLProxyMachineCertificateChainFile.  [Joe Orton]
  * ) htpasswd, htdbm, dbmmanage: Update help&amp;docs to refer to
    "hashing", rather than "encrypting" passwords.
    [Michele Preziuso &lt;mpreziuso kaosdynamics.com&gt;]
  * ) mod_ssl: Fix build with LibreSSL 2.0.7+. PR 64047.
    [Giovanni Bechis, Yann Ylavic]
  * ) htpasswd: Add support for passwords using SHA-2.  [Joe Orton,
    Yann Ylavic]
  * ) core: Allow mod_env to override system environment vars. [Joe Orton]
  * ) Allow mod_dav_fs to tolerate race conditions between PROPFIND and an
    operation which removes a directory/file between apr_dir_read() and
    apr_stat(). Current behaviour is to abort the connection which seems
    inferior to tolerating (and logging) the error. [Joe Orton]
  * ) mod_ldap: HTML-escape data in the ldap-status handler.
    [Eric Covener, Chamal De Silva]
  * ) mod_ssl: Disable the OpenSSL ENGINE API when OPENSSL_NO_ENGINE is set.
    Allow for "SSLCryptoDevice builtin" if the ENGINE API is not available,
    notably with OpenSSL &gt;= 3.  PR 68080.  [Yann Ylavic, Joe Orton]
  * ) mod_ssl: Improve compatibility with OpenSSL 3, fix build warnings about
    deprecated ENGINE_ API, honor OPENSSL_API_COMPAT setting while defaulting
    to compatibitily with version 1.1.1 (including ENGINEs / SSLCryptoDevice).
    [Yann Ylavic]
  * ) mod_ssl: release memory to the OS when needed. [Giovanni Bechis]
  * ) mod_proxy: Ignore (and warn about) enablereuse=on for ProxyPassMatch when
    some dollar substitution (backreference) happens in the hostname or port
    part of the URL.  [Yann Ylavic]
  * ) mod_proxy: Allow to set a TTL for how long DNS resolutions to backend
    systems are cached. [Yann Ylavic]
  * ) mod_proxy: Add optional third argument for ProxyRemote, which
    configures Basic authentication credentials to pass to the remote
    proxy.  PR 37355.  [Joe Orton]</changelog>
  <changelog author="pgajdos@suse.com" date="1718280000">- added patches [bsc#1226217]
  https://github.com/apache/httpd/pull/444/commits/c2fffd29b0f58bdc9caaaff4fec68e17a676f182
  + apache2-issue-444.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1720094400">- Update to 2.4.61
  * ) SECURITY: CVE-2024-39884: Apache HTTP Server: source code
    disclosure with handlers configured via AddType (cve.mitre.org)
    [boo#1227353]
    A regression in the core of Apache HTTP Server 2.4.60 ignores
    some use of the legacy content-type based configuration of
    handlers.   "AddType" and similar configuration, under some
    circumstances where files are requested indirectly, result in
    source code disclosure of local content. For example, PHP
    scripts may be served instead of interpreted.
    Users are recommended to upgrade to version 2.4.61, which fixes
    this issue.
- Update to 2.4.60
  * ) SECURITY: CVE-2024-39573: Apache HTTP Server: mod_rewrite proxy
    handler substitution (cve.mitre.org) [boo#1227271]
    Potential SSRF in mod_rewrite in Apache HTTP Server 2.4.59 and
    earlier allows an attacker to cause unsafe RewriteRules to
    unexpectedly setup URL's to be handled by mod_proxy.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38477: Apache HTTP Server: Crash resulting in
    Denial of Service in mod_proxy via a malicious request
    (cve.mitre.org) [boo#1227270]
    null pointer dereference in mod_proxy in Apache HTTP Server
    2.4.59 and earlier allows an attacker to crash the server via a
    malicious request.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38476: Apache HTTP Server may use
    exploitable/malicious backend application output to run local
    handlers via internal redirect (cve.mitre.org) [boo#1227269]
    Vulnerability in core of Apache HTTP Server 2.4.59 and earlier
    are vulnerably to information disclosure, SSRF or local script
    execution via backend applications whose response headers are
    malicious or exploitable.
    Note: Some legacy uses of the 'AddType' directive to connect a
    request to a handler must be ported to 'AddHandler' after this fix.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38475: Apache HTTP Server weakness in
    mod_rewrite when first segment of substitution matches
    filesystem path. (cve.mitre.org) [boo#1227268]
    Improper escaping of output in mod_rewrite in Apache HTTP Server
    2.4.59 and earlier allows an attacker to map URLs to filesystem
    locations that are permitted to be served by the server but are
    not intentionally/directly reachable by any URL, resulting in
    code execution or source code disclosure.
    Substitutions in server context that use a backreferences or
    variables as the first segment of the substitution are affected.
    Some unsafe RewiteRules will be broken by this change and the
    rewrite flag "UnsafePrefixStat" can be used to opt back in once
    ensuring the substitution is appropriately constrained.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38474: Apache HTTP Server weakness with
    encoded question marks in backreferences (cve.mitre.org)
    [boo#1227278]
    Substitution encoding issue in mod_rewrite in Apache HTTP Server
    2.4.59 and earlier allows attacker to execute scripts in
    directories permitted by the configuration but not directly
    reachable by any URL or source disclosure of scripts meant to
    only to be executed as CGI.
    Note: Some RewriteRules that capture and substitute unsafely will now
    fail unless rewrite flag "UnsafeAllow3F" is specified.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38473: Apache HTTP Server proxy encoding
    problem (cve.mitre.org) [boo#1227276]
    Encoding problem in mod_proxy in Apache HTTP Server 2.4.59 and
    earlier allows request URLs with incorrect encoding to be sent
    to backend services, potentially bypassing authentication via
    crafted requests.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38472: Apache HTTP Server on WIndows UNC SSRF
    (cve.mitre.org) [boo#1227267]
    SSRF in Apache HTTP Server on Windows allows to potentially leak
    NTML hashes to a malicious server via SSRF and malicious
    requests or content
    Note: Existing configurations that access UNC paths
    will have to configure new directive "UNCList" to allow access
    during request processing.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-36387: Apache HTTP Server: DoS by Null
    pointer in websocket over HTTP/2 (cve.mitre.org) [boo#1227272]
    Serving WebSocket protocol upgrades over a HTTP/2 connection
    could result in a Null Pointer dereference, leading to a crash
    of the server process, degrading performance.
    Credits: Marc Stern (&lt;marc.stern AT approach-cyber.com&gt;)
  * ) mod_proxy: Fix DNS requests and connections closed before the
    configured addressTTL.  BZ 69126.  [Yann Ylavic]
  * ) core: On Linux, log the real thread ID in error logs.  [Joe Orton]
  * ) core: Support zone/scope in IPv6 link-local addresses in Listen and
    VirtualHost directives (requires APR 1.7.x or later).  PR 59396
    [Joe Orton]
  * ) mod_ssl: Reject client-initiated renegotiation with a TLS alert
    (rather than connection closure).  [Joe Orton, Yann Ylavic]
  * ) Updated mime.types.  [Mohamed Akram &lt;mohd.akram outlook.com&gt;,
    Adam Silverstein &lt;adamsilverstein earthboundhosting.com&gt;]
  * ) mod_ssl: Fix a regression that causes the default DH parameters for a key
    no longer set and thus effectively disabling DH ciphers when no explicit
    DH parameters are set. PR 68863 [Ruediger Pluem]
  * ) mod_cgid: Optional support for file descriptor passing, fixing
    error log handling (configure --enable-cgid-fdpassing) on Unix
    platforms. PR 54221.  [Joe Orton]
  * ) mod_cgid/mod_cgi: Distinguish script stderr output clearly in
    error logs.  PR 61980.  [Hank Ibell &lt;hwibell gmail.com&gt;]
  * ) mod_tls: update version of rustls-ffi to v0.13.0.
    [Daniel McCarney (@cpu}]
  * ) mod_md:
  - Using OCSP stapling information to trigger certificate renewals. Proposed
    by @frasertweedale.
  - Added directive `MDCheckInterval` to control how often the server checks
    for detected revocations. Added proposals for configurations in the
    README.md chapter "Revocations".
  - OCSP stapling: accept OCSP responses without a `nextUpdate` entry which is
    allowed in RFC 6960. Treat those as having an update interval of 12 hours.
    Added by @frasertweedale.
  - Adapt OpenSSL usage to changes in their API. By Yann Ylavic.
- removed patches (upstreamed)
  - apache2-issue-444.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- Update to 2.4.62
  * ) SECURITY: CVE-2024-40898: Apache HTTP Server: SSRF with
    mod_rewrite in server/vhost context on Windows (cve.mitre.org)
    [boo#1228098]
    SSRF in Apache HTTP Server on Windows with mod_rewrite in
    server/vhost context, allows to potentially leak NTML hashes to
    a malicious server via SSRF and malicious requests.
    Users are recommended to upgrade to version 2.4.62 which fixes
    this issue.
    Credits: Smi1e (DBAPPSecurity Ltd.)
  * ) SECURITY: CVE-2024-40725: Apache HTTP Server: source code
    disclosure with handlers configured via AddType (cve.mitre.org)
    [boo#1228097]
    A partial fix for  CVE-2024-39884 in the core of Apache HTTP
    Server 2.4.61 ignores some use of the legacy content-type based
    configuration of handlers. "AddType" and similar configuration,
    under some circumstances where files are requested indirectly,
    result in source code disclosure of local content. For example,
    PHP scripts may be served instead of interpreted.
    Users are recommended to upgrade to version 2.4.62, which fixes
    this issue.
  * ) mod_proxy: Fix canonicalisation and FCGI env (PATH_INFO, SCRIPT_NAME) for
    "balancer:" URLs set via SetHandler, also allowing for "unix:" sockets
    with BalancerMember(s).  PR 69168.  [Yann Ylavic]
  * ) mod_proxy: Avoid AH01059 parsing error for SetHandler "unix:" URLs.
    PR 69160 [Yann Ylavic]
  * ) mod_ssl: Fix crashes in PKCS#11 ENGINE support with OpenSSL 3.2.
    [Joe Orton]
  * ) mod_ssl: Add support for loading certs/keys from pkcs11: URIs
    via OpenSSL 3.x providers.  [Ingo Franzki &lt;ifranzki linux.ibm.com&gt;]
  * ) mod_ssl: Restore SSL dumping on trace7 loglevel with OpenSSL &gt;= 3.0.
    [Ruediger Pluem, Yann Ylavic]
  * ) mpm_worker: Fix possible warning (AH00045) about children processes not
    terminating timely.  [Yann Ylavic]</changelog>
  <changelog author="Thorsten Kukuk &lt;kukuk@suse.com&gt;" date="1727697600">- Add /srv/www directories to filelist [bsc#1231027]
  (apache2 will not start since default config uses this directory)</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1730721600">- Explicitly mark start_apache2 as bash-dependent.</changelog>
  <changelog author="Martin Schreiner &lt;martin.schreiner@suse.com&gt;" date="1730808000">- Update httpd-framework to svn1921782.
- Fixes Apache's impact on bsc#1218342.</changelog>
</package>
<package pkgid="8883e468f93c4885ee00bb5af8ccc3ac8195c68c8d791251a7783f184daacefcbe138cfedc3341b228d19328a8058a08b720a5fbfb2e6ab9c6180e4f9872ca81" name="apache2-devel" arch="i586">
  <version epoch="0" ver="2.4.62" rel="3.1"/>
  <changelog author="pgajdos@suse.com" date="1654689600">- update httpd-framework to svn revision 1898917</changelog>
  <changelog author="Stefan Schubert &lt;schubi@intern&gt;" date="1656417600">- Moved logrotate files from user specific directory /etc/logrotate.d
  to vendor specific directory /usr/etc/logrotate.d.</changelog>
  <changelog author="Stefan Schubert &lt;schubi@suse.com&gt;" date="1662033600">- Migration to /usr/etc: Saving user changed configuration files
  in /etc and restoring them while an RPM update.</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1663675200">- Remove references to README.QUICKSTART and point them to
  https://en.opensuse.org/SDB:Apache_installation (bsc#1203573)</changelog>
  <changelog author="Stephan Kulow &lt;coolo@suse.com&gt;" date="1663934400">- The 2.4.54 release brought support for PCRE2, but for that we also
  need to change buildrequires to pcre2-devel</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1670846400">- switch to pkgconfig(zlib) so that alternative providers can be
  used</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1674043200">- This update fixes the following security issues:
  * CVE-2022-37436 [bsc#1207251], mod_proxy backend HTTP response splitting
  * CVE-2022-36760 [bsc#1207250], mod_proxy_ajp Possible request smuggling
  * CVE-2006-20001 [bsc#1207247], mod_dav out of bounds read, or write of zero byte
- Update to 2.4.55:
  * ) SECURITY: CVE-2022-37436: Apache HTTP Server: mod_proxy prior to
    2.4.55 allows a backend to trigger HTTP response splitting
    (cve.mitre.org)
    Prior to Apache HTTP Server 2.4.55, a malicious backend can
    cause the response headers to be truncated early, resulting in
    some headers being incorporated into the response body. If the
    later headers have any security purpose, they will not be
    interpreted by the client.
    Credits: Dimas Fariski Setyawan Putra (@nyxsorcerer)
  * ) SECURITY: CVE-2022-36760: Apache HTTP Server: mod_proxy_ajp
    Possible request smuggling (cve.mitre.org)
    Inconsistent Interpretation of HTTP Requests ('HTTP Request
    Smuggling') vulnerability in mod_proxy_ajp of Apache HTTP Server
    allows an attacker to smuggle requests to the AJP server it
    forwards requests to.  This issue affects Apache HTTP Server
    Apache HTTP Server 2.4 version 2.4.54 and prior versions.
    Credits: ZeddYu_Lu from Qi'anxin Research Institute of Legendsec
    at Qi'anxin Group
  * ) SECURITY: CVE-2006-20001: mod_dav out of  bounds read, or write
    of zero byte (cve.mitre.org)
    A carefully crafted If: request header can cause a memory read,
    or write of a single zero byte, in a pool (heap) memory location
    beyond the header value sent. This could cause the process to
    crash.
    This issue affects Apache HTTP Server 2.4.54 and earlier.
  * ) mod_dav: Open the lock database read-only when possible.
    PR 36636 [Wilson Felipe &lt;wfelipe gmail.com&gt;, manu]
  * ) mod_proxy_http2: apply the standard httpd content type handling
    to responses from the backend, as other proxy modules do. Fixes PR 66391.
    Thanks to Jérôme Billiras for providing the patch.
    [Stefan Eissing]
  * ) mod_dav: mod_dav overrides dav_fs response on PUT failure. PR 35981
    [Basant Kumar Kukreja &lt;basant.kukreja sun.com&gt;, Alejandro Alvarez
    &lt;alejandro.alvarez.ayllon cern.ch&gt;]
  * ) mod_proxy_hcheck: Honor worker timeout settings.  [Yann Ylavic]
  * ) mod_http2: version 2.0.10 of the module, synchronizing changes
    with the gitgub version. This is a partial rewrite of how connections
    and streams are handled.
  - an APR pollset and pipes (where supported) are used to monitor
    the main connection and react to IO for request/response handling.
    This replaces the stuttered timed waits of earlier versions.
  - H2SerializeHeaders directive still exists, but has no longer an effect.
  - Clients that seemingly misbehave still get less resources allocated,
    but ongoing requests are no longer disrupted.
  - Fixed an issue since 1.15.24 that "Server" headers in proxied requests
    were overwritten instead of preserved. [PR by @daum3ns]
  - A regression in v1.15.24 was fixed that could lead to httpd child
    processes not being terminated on a graceful reload or when reaching
    MaxConnectionsPerChild. When unprocessed h2 requests were queued at
    the time, these could stall. See #212.
  - Improved information displayed in 'server-status' for H2 connections when
    Extended Status is enabled. Now one can see the last request that IO
    operations happened on and transferred IO stats are updated as well.
  - When reaching server limits, such as MaxRequestsPerChild, the HTTP/2 connection
    send a GOAWAY frame much too early on new connections, leading to invalid
    protocol state and a client failing the request. See PR65731 at
    &lt;https://bz.apache.org/bugzilla/show_bug.cgi?id=65731&gt;.
    The module now initializes the HTTP/2 protocol correctly and allows the
    client to submit one request before the shutdown via a GOAWAY frame
    is being announced.
  - :scheme pseudo-header values, not matching the
    connection scheme, are forwarded via absolute uris to the
    http protocol processing to preserve semantics of the request.
    Checks on combinations of pseudo-headers values/absence
    have been added as described in RFC 7540. Fixes #230.
  - A bug that prevented trailers (e.g. HEADER frame at the end) to be
    generated in certain cases was fixed. See #233 where it prevented
    gRPC responses to be properly generated.
  - Request and response header values are automatically stripped of leading
    and trialing space/tab characters. This is equivalent behaviour to what
    Apache httpd's http/1.1 parser does.
    The checks for this in nghttp2 v1.50.0+ are disabled.
  - Extensive testing in production done by Alessandro Bianchi (@alexskynet)
    on the v2.0.x versions for stability. Many thanks!
  * ) mod_proxy_http2: fixed #235 by no longer forwarding 'Host:' header when
    request ':authority' is known. Improved test case that did not catch that
    the previous 'fix' was incorrect.
  * ) mod_proxy_hcheck: hcmethod now allows for HTTP/1.1 requests
    using GET11, HEAD11 and/or OPTIONS11. [Jim Jagielski]
  * ) mod_proxy: The AH03408 warning for a forcibly closed backend
    connection is now logged at INFO level.  [Yann Ylavic]
  * ) mod_ssl: When dumping the configuration, the existence of
    certificate/key files is no longer tested.  [Joe Orton]
  * ) mod_authn_core: Add expression support to AuthName and AuthType.
    [Graham Leggett]
  * ) mod_ssl: when a proxy connection had handled a request using SSL, an
    error was logged when "SSLProxyEngine" was only configured in the
    location/proxy section and not the overall server. The connection
    continued to work, the error log was in error. Fixed PR66190.
    [Stefan Eissing]
  * ) mod_proxy_hcheck: Re-enable workers in standard ERROR state. PR 66302.
    [Alessandro Cavaliere &lt;alessandro.cavalier7 unibo.it&gt;]
  * ) mod_proxy_hcheck: Detect AJP/CPING support correctly. PR 66300.
    [Alessandro Cavaliere &lt;alessandro.cavalier7 unibo.it&gt;]
  * ) mod_http2: Export mod_http2.h as public header. [Stefan Eissing]
  * ) mod_md: a new directive `MDStoreLocks` can be used on cluster
    setups with a shared file system for `MDStoreDir` to order
    activation of renewed certificates when several cluster nodes are
    restarted at the same time. Store locks are not enabled by default.
    Restored curl_easy cleanup behaviour from v2.4.14 and refactored
    the use of curl_multi for OCSP requests to work with that.
    Fixes &lt;https://github.com/icing/mod_md/issues/293&gt;.
  * ) core: Avoid an overflow on large inputs in ap_is_matchexp.  PR 66033
    [Ruediger Pluem]
  * ) mod_heartmonitor: Allow "HeartbeatMaxServers 0" to use file based
    storage instead of slotmem. Needed after setting
    HeartbeatMaxServers default to the documented value 10 in 2.4.54.
    PR 66131.  [Jérôme Billiras]
  * ) mod_dav: DAVlockDiscovery option to disable WebDAV lock discovery
    This is a game changer for performances if client use PROPFIND a lot,
    PR 66313. [Emmanuel Dreyfus]</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1678276800">- This update fixes the following security issues:
  * CVE-2023-27522 [bsc#1209049]: mod_proxy_uwsgi HTTP response splitting
  * CVE-2023-25690 [bsc#1209047]: HTTP request splitting with mod_rewrite and mod_proxy
- Update to 2.4.56:
  * ) rotatelogs: Add -T flag to allow subsequent rotated logfiles to be
    truncated without the initial logfile being truncated.  [Eric Covener]
  * ) mod_ldap: LDAPConnectionPoolTTL should accept negative values in order to
    allow connections of any age to be reused. Up to now, a negative value
    was handled as an error when parsing the configuration file.  PR 66421.
    [nailyk &lt;bzapache nailyk.fr&gt;, Christophe Jaillet]
  * ) mod_proxy_ajp: Report an error if the AJP backend sends an invalid number
    of headers. [Ruediger Pluem]
  * ) mod_md:
  - Enabling ED25519 support and certificate transparency information when
    building with libressl v3.5.0 and newer. Thanks to Giovanni Bechis.
  - MDChallengeDns01 can now be configured for individual domains.
    Thanks to Jérôme Billiras (@bilhackmac) for the initial PR.
  - Fixed a bug found by Jérôme Billiras (@bilhackmac) that caused the challenge
    teardown not being invoked as it should.
    [Stefan Eissing]
  * ) mod_http2: client resets of HTTP/2 streams led to unwanted 500 errors
    reported in access logs and error documents. The processing of the
    reset was correct, only unneccesary reporting was caused.
    [Stefan Eissing]
  * ) mod_proxy_uwsgi: Stricter backend HTTP response parsing/validation.
    [Yann Ylavic]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1680868800">- Update to 2.4.57:
  * ) mod_proxy: Check before forwarding that a nocanon path has not been
    rewritten with spaces during processing.  [Yann Ylavic]
  * ) mod_proxy: In case that AllowEncodedSlashes is set to NoDecode do not
    double encode encoded slashes in the URL sent by the reverse proxy to the
    backend. [Ruediger Pluem]
  * ) mod_http2: fixed a crash during connection termination. See PR 66539.
    [Stefan Eissing]
  * ) mod_rewrite: Fix a 2.4.56 regression for substitutions ending
    in a question mark. PR66547. [Eric Covener]
  * ) mod_rewrite: Add "BCTLS" and "BNE" RewriteRule flags. Re-allow encoded
    characters on redirections without the "NE" flag.
    [Yann Ylavic, Eric Covener]
  * ) mod_proxy: Fix double encoding of the uri-path of the request forwarded
    to the origin server, when using mapping=encoded|servlet.  [Yann Ylavic]
  * ) mod_mime: Do not match the extention against possible query string
    parameters in case ProxyPass was used with the nocanon option.
    [Ruediger Pluem]</changelog>
  <changelog author="Dirk Stoecker &lt;opensuse@dstoecker.de&gt;" date="1691236800">- Enable building of mod_md</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1697716800">- Update to 2.4.58:
  * ) SECURITY: CVE-2023-45802: Apache HTTP Server: HTTP/2 stream
    memory not reclaimed right away on RST (cve.mitre.org)
    When a HTTP/2 stream was reset (RST frame) by a client, there
    was a time window were the request's memory resources were not
    reclaimed immediately. Instead, de-allocation was deferred to
    connection close. A client could send new requests and resets,
    keeping the connection busy and open and causing the memory
    footprint to keep on growing. On connection close, all resources
    were reclaimed, but the process might run out of memory before
    that.
    This was found by the reporter during testing of CVE-2023-44487
    (HTTP/2 Rapid Reset Exploit) with their own test client. During
    "normal" HTTP/2 use, the probability to hit this bug is very
    low. The kept memory would not become noticeable before the
    connection closes or times out.
    Users are recommended to upgrade to version 2.4.58, which fixes
    the issue.
    Credits: Will Dormann of Vul Labs
  * ) SECURITY: CVE-2023-43622: Apache HTTP Server: DoS in HTTP/2 with
    initial windows size 0 (cve.mitre.org)
    An attacker, opening a HTTP/2 connection with an initial window
    size of 0, was able to block handling of that connection
    indefinitely in Apache HTTP Server. This could be used to
    exhaust worker resources in the server, similar to the well
    known "slow loris" attack pattern.
    This has been fixed in version 2.4.58, so that such connection
    are terminated properly after the configured connection timeout.
    This issue affects Apache HTTP Server: from 2.4.55 through
    2.4.57.
    Users are recommended to upgrade to version 2.4.58, which fixes
    the issue.
    Credits: Prof. Sven Dietrich (City University of New York)
  * ) SECURITY: CVE-2023-31122: mod_macro buffer over-read
    (cve.mitre.org)
    Out-of-bounds Read vulnerability in mod_macro of Apache HTTP
    Server.This issue affects Apache HTTP Server: through 2.4.57.
    Credits: David Shoon (github/davidshoon)
  * ) mod_ssl: Silence info log message "SSL Library Error: error:0A000126:
    SSL routines::unexpected eof while reading" when using
    OpenSSL 3 by setting SSL_OP_IGNORE_UNEXPECTED_EOF if
    available. [Rainer Jung]
  * ) mod_http2: improved early cleanup of streams.
    [Stefan Eissing]
  * ) mod_proxy_http2: improved error handling on connection errors while
    response is already underway.
    [Stefan Eissing]
  * ) mod_http2: fixed a bug that could lead to a crash in main connection
    output handling. This occured only when the last request on a HTTP/2
    connection had been processed and the session decided to shut down.
    This could lead to an attempt to send a final GOAWAY while the previous
    write was still in progress. See PR 66646.
    [Stefan Eissing]
  * ) mod_proxy_http2: fix `X-Forward-Host` header to carry the correct value.
    Fixes PR66752.
    [Stefan Eissing]
  * ) mod_http2: added support for bootstrapping WebSockets via HTTP/2, as
    described in RFC 8441. A new directive 'H2WebSockets on|off' has been
    added. The feature is by default not enabled.
    As also discussed in the manual, this feature should work for setups
    using "ProxyPass backend-url upgrade=websocket" without further changes.
    Special server modules for WebSockets will have to be adapted,
    most likely, as the handling if IO events is different with HTTP/2.
    HTTP/2 WebSockets are supported on platforms with native pipes. This
    excludes Windows.
    [Stefan Eissing]
  * ) mod_rewrite: Fix a regression with both a trailing ? and [QSA].
    in OCSP stapling. PR 66672. [Frank Meier &lt;frank.meier ergon.ch&gt;, covener]
  * ) mod_http2: fixed a bug in flushing pending data on an already closed
    connection that could lead to a busy loop, preventing the HTTP/2 session
    to close down successfully. Fixed PR 66624.
    [Stefan Eissing]
  * ) mod_http2: v2.0.15 with the following fixes and improvements
  - New directive 'H2EarlyHint name value' to add headers to a response,
    picked up already when a "103 Early Hints" response is sent. 'name' and
    'value' must comply to the HTTP field restrictions.
    This directive can be repeated several times and header fields of the
    same names add. Sending a 'Link' header with 'preload' relation will
    also cause a HTTP/2 PUSH if enabled and supported by the client.
  - Fixed an issue where requests were not logged and accounted in a timely
    fashion when the connection returns to "keepalive" handling, e.g. when
    the request served was the last outstanding one.
    This led to late appearance in access logs with wrong duration times
    reported.
  - Accurately report the bytes sent for a request in the '%O' Log format.
    This addresses #203, a long outstanding issue where mod_h2 has reported
    numbers over-eagerly from internal buffering and not what has actually
    been placed on the connection.
    The numbers are now the same with and without H2CopyFiles enabled.
    [Stefan Eissing]
  * ) mod_proxy_http2: fix retry handling to not leak temporary errors.
    On detecting that that an existing connection was shutdown by the other
    side, a 503 response leaked even though the request was retried on a
    fresh connection.
    [Stefan Eissing]
  * ) mod_rewrite: Add server directory to include path as mod_rewrite requires
    test_char.h. PR 66571 [Valeria Petrov &lt;valeria.petrov@spinetix.com&gt;]
  * ) mod_http2: new directive `H2ProxyRequests on|off` to enable handling
    of HTTP/2 requests in a forward proxy configuration.
    General forward proxying is enabled via `ProxyRequests`. If the
    HTTP/2 protocol is also enabled for such a server/host, this new
    directive is needed in addition.
    [Stefan Eissing]
  * ) core: Updated conf/mime.types:
  - .js moved from 'application/javascript' to 'text/javascript'
  - .mjs was added as 'text/javascript'
  - add .opus ('audio/ogg')
  - add 'application/vnd.geogebra.slides'
  - add WebAssembly MIME types and extension
    [Mathias Bynens &lt;@mathiasbynens&gt; via PR 318,
    Richard de Boer &lt;richard tubul.net&gt;, Dave Hodder &lt;dmh dmh.org.uk&gt;,
    Zbynek Konecny &lt;zbynek1729 gmail.com&gt;]
  * ) mod_proxy_http2: fixed using the wrong "bucket_alloc" from the backend
    connection when sending data on the frontend one. This caused crashes
    or infinite loops in rare situations.
  * ) mod_proxy_http2: fixed a bug in retry/response handling that could lead
    to wrong status codes or HTTP messages send at the end of response bodies
    exceeding the announced content-length.
  * ) mod_proxy_http2: fix retry handling to not leak temporary errors.
    On detecting that that an existing connection was shutdown by the other
    side, a 503 response leaked even though the request was retried on a
    fresh connection.
  * ) mod_http2: fixed a bug that did cleanup of consumed and pending buckets in
    the wrong order when a bucket_beam was destroyed.
    [Stefan Eissing]
  * ) mod_http2: avoid double chunked-encoding on internal redirects.
    PR 66597 [Yann Ylavic, Stefan Eissing]
  * ) mod_http2: Fix reporting of `Total Accesses` in server-status to not count
    HTTP/2 requests twice. Fixes PR 66801.
    [Stefan Eissing]
  * ) mod_ssl: Fix handling of Certificate Revoked messages
    in OCSP stapling. PR 66626. [&lt;gmoniker gmail.com&gt;]
  * ) mod_http2: fixed a bug in handling of stream timeouts.
    [Stefan Eissing]
  * ) mod_tls: updating to rustls-ffi version 0.9.2 or higher.
    Checking in configure for proper version installed. Code
    fixes for changed clienthello member name.
    [Stefan Eissing]
  * ) mod_md:
  - New directive `MDMatchNames all|servernames` to allow more control over how
    MDomains are matched to VirtualHosts.
  - New directive `MDChallengeDns01Version`. Setting this to `2` will provide
    the command also with the challenge value on `teardown` invocation. In version
    1, the default, only the `setup` invocation gets this parameter.
    Refs #312. Thanks to @domrim for the idea.
  - For Managed Domain in "manual" mode, the checks if all used ServerName and
    ServerAlias are part of the MDomain now reports a warning instead of an error
    (AH10040) when not all names are present.
  - MDChallengeDns01 can now be configured for individual domains.
    Using PR from JÃ©rÃ´me Billiras (@bilhackmac) and adding test case and fixing proper working
  - Fixed a bug found by JÃ©rÃ´me Billiras (@bilhackmac) that caused the challenge
    teardown not being invoked as it should.
  * ) mod_ldap: Avoid performance overhead of APR-util rebind cache for
    OpenLDAP 2.2+.  PR 64414.  [Joe Orton]
  * ) mod_http2: new directive 'H2MaxDataFrameLen n' to limit the maximum
    amount of response body bytes put into a single HTTP/2 DATA frame.
    Setting this to 0 places no limit (but the max size allowed by the
    protocol is observed).
    The module, by default, tries to use the maximum size possible, which is
    somewhat around 16KB. This sets the maximum. When less response data is
    available, smaller frames will be sent.
  * ) mod_md: fixed passing of the server environment variables to programs
    started via MDMessageCmd and MDChallengeDns01 on *nix system.
    See &lt;https://github.com/icing/mod_md/issues/319&gt;.
    [Stefan Eissing]
  * ) mod_dav: Add DavBasePath directive to configure the repository root
    path.  PR 35077.  [Joe Orton]
  * ) mod_alias: Add AliasPreservePath directive to map the full
    path after the alias in a location. [Graham Leggett]
  * ) mod_alias: Add RedirectRelative to allow relative redirect targets to be
    issued as-is. [Eric Covener, Graham Leggett]
  * ) core: Add formats %{z} and %{strftime-format} to ErrorLogFormat, and make
    sure that if the format is configured early enough it applies to every log
    line.  PR 62161.  [Yann Ylavic]
  * ) mod_deflate: Add DeflateAlterETag to control how the ETag
    is modified. The 'NoChange' parameter mimics 2.2.x behavior.
    PR 45023, PR 39727. [Eric Covener]
  * ) core: Optimize send_brigade_nonblocking(). [Yann Ylavic, Christophe Jaillet]
  * ) mod_status: Remove duplicate keys "BusyWorkers" and "IdleWorkers".
    Resolve inconsistency between the previous two occurrences by
    counting workers in state SERVER_GRACEFUL no longer as busy,
    but instead in a new counter "GracefulWorkers" (or on HTML
    view as "workers gracefully restarting"). Also add the graceful
    counter as a new column to the existing HTML per process table
    for async MPMs. PR 63300. [Rainer Jung]</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1706529600">- use grep -E for egrep</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1708430400">- Use %autosetup macro. Allows to eliminate the usage of deprecated
  %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1712232000">- Update to 2.4.59:
  * ) mod_deflate: Fixes and better logging for handling various
    error and edge cases. [Eric Covener, Yann Ylavic, Joe Orton,
    Eric Norris &lt;enorris etsy.com&gt;]
  * ) Add CGIScriptTimeout to mod_cgi. [Eric Covener]
  * ) mod_xml2enc: Tolerate libxml2 2.12.0 and later.  PR 68610
    [ttachi &lt;tachihara AT hotmail.com&gt;]
  * ) mod_slotmem_shm: Use ap_os_is_path_absolute() to make it portable.
    [Jean-Frederic Clere]
  * ) mod_ssl: Use OpenSSL-standard functions to assemble CA
    name lists for SSLCACertificatePath/SSLCADNRequestPath.
    Names will now be consistently sorted. PR 61574.
    [Joe Orton]
  * ) mod_xml2enc: Update check to accept any text/ media type
    or any XML media type per RFC 7303, avoiding
    corruption of Microsoft OOXML formats.  PR 64339.
    [Joseph Heenan &lt;joseph.heenan fintechlabs.io&gt;, Joe Orton]
  * ) mod_http2: v2.0.26 with the following fixes:
  - Fixed `Date` header on requests upgraded from HTTP/1.1 (h2c). Fixes
    &lt;https://github.com/icing/mod_h2/issues/272&gt;.
  - Fixed small memory leak in h2 header bucket free. Thanks to
    Michael Kaufmann for finding this and providing the fix.
  * ) htcacheclean: In -a/-A mode, list all files per subdirectory
    rather than only one. PR 65091.
    [Artem Egorenkov &lt;aegorenkov.91 gmail.com&gt;]
  * ) mod_ssl: SSLProxyMachineCertificateFile/Path may reference files
    which include CA certificates; those CA certs are treated as if
    configured with SSLProxyMachineCertificateChainFile.  [Joe Orton]
  * ) htpasswd, htdbm, dbmmanage: Update help&amp;docs to refer to
    "hashing", rather than "encrypting" passwords.
    [Michele Preziuso &lt;mpreziuso kaosdynamics.com&gt;]
  * ) mod_ssl: Fix build with LibreSSL 2.0.7+. PR 64047.
    [Giovanni Bechis, Yann Ylavic]
  * ) htpasswd: Add support for passwords using SHA-2.  [Joe Orton,
    Yann Ylavic]
  * ) core: Allow mod_env to override system environment vars. [Joe Orton]
  * ) Allow mod_dav_fs to tolerate race conditions between PROPFIND and an
    operation which removes a directory/file between apr_dir_read() and
    apr_stat(). Current behaviour is to abort the connection which seems
    inferior to tolerating (and logging) the error. [Joe Orton]
  * ) mod_ldap: HTML-escape data in the ldap-status handler.
    [Eric Covener, Chamal De Silva]
  * ) mod_ssl: Disable the OpenSSL ENGINE API when OPENSSL_NO_ENGINE is set.
    Allow for "SSLCryptoDevice builtin" if the ENGINE API is not available,
    notably with OpenSSL &gt;= 3.  PR 68080.  [Yann Ylavic, Joe Orton]
  * ) mod_ssl: Improve compatibility with OpenSSL 3, fix build warnings about
    deprecated ENGINE_ API, honor OPENSSL_API_COMPAT setting while defaulting
    to compatibitily with version 1.1.1 (including ENGINEs / SSLCryptoDevice).
    [Yann Ylavic]
  * ) mod_ssl: release memory to the OS when needed. [Giovanni Bechis]
  * ) mod_proxy: Ignore (and warn about) enablereuse=on for ProxyPassMatch when
    some dollar substitution (backreference) happens in the hostname or port
    part of the URL.  [Yann Ylavic]
  * ) mod_proxy: Allow to set a TTL for how long DNS resolutions to backend
    systems are cached. [Yann Ylavic]
  * ) mod_proxy: Add optional third argument for ProxyRemote, which
    configures Basic authentication credentials to pass to the remote
    proxy.  PR 37355.  [Joe Orton]</changelog>
  <changelog author="pgajdos@suse.com" date="1718280000">- added patches [bsc#1226217]
  https://github.com/apache/httpd/pull/444/commits/c2fffd29b0f58bdc9caaaff4fec68e17a676f182
  + apache2-issue-444.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1720094400">- Update to 2.4.61
  * ) SECURITY: CVE-2024-39884: Apache HTTP Server: source code
    disclosure with handlers configured via AddType (cve.mitre.org)
    [boo#1227353]
    A regression in the core of Apache HTTP Server 2.4.60 ignores
    some use of the legacy content-type based configuration of
    handlers.   "AddType" and similar configuration, under some
    circumstances where files are requested indirectly, result in
    source code disclosure of local content. For example, PHP
    scripts may be served instead of interpreted.
    Users are recommended to upgrade to version 2.4.61, which fixes
    this issue.
- Update to 2.4.60
  * ) SECURITY: CVE-2024-39573: Apache HTTP Server: mod_rewrite proxy
    handler substitution (cve.mitre.org) [boo#1227271]
    Potential SSRF in mod_rewrite in Apache HTTP Server 2.4.59 and
    earlier allows an attacker to cause unsafe RewriteRules to
    unexpectedly setup URL's to be handled by mod_proxy.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38477: Apache HTTP Server: Crash resulting in
    Denial of Service in mod_proxy via a malicious request
    (cve.mitre.org) [boo#1227270]
    null pointer dereference in mod_proxy in Apache HTTP Server
    2.4.59 and earlier allows an attacker to crash the server via a
    malicious request.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38476: Apache HTTP Server may use
    exploitable/malicious backend application output to run local
    handlers via internal redirect (cve.mitre.org) [boo#1227269]
    Vulnerability in core of Apache HTTP Server 2.4.59 and earlier
    are vulnerably to information disclosure, SSRF or local script
    execution via backend applications whose response headers are
    malicious or exploitable.
    Note: Some legacy uses of the 'AddType' directive to connect a
    request to a handler must be ported to 'AddHandler' after this fix.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38475: Apache HTTP Server weakness in
    mod_rewrite when first segment of substitution matches
    filesystem path. (cve.mitre.org) [boo#1227268]
    Improper escaping of output in mod_rewrite in Apache HTTP Server
    2.4.59 and earlier allows an attacker to map URLs to filesystem
    locations that are permitted to be served by the server but are
    not intentionally/directly reachable by any URL, resulting in
    code execution or source code disclosure.
    Substitutions in server context that use a backreferences or
    variables as the first segment of the substitution are affected.
    Some unsafe RewiteRules will be broken by this change and the
    rewrite flag "UnsafePrefixStat" can be used to opt back in once
    ensuring the substitution is appropriately constrained.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38474: Apache HTTP Server weakness with
    encoded question marks in backreferences (cve.mitre.org)
    [boo#1227278]
    Substitution encoding issue in mod_rewrite in Apache HTTP Server
    2.4.59 and earlier allows attacker to execute scripts in
    directories permitted by the configuration but not directly
    reachable by any URL or source disclosure of scripts meant to
    only to be executed as CGI.
    Note: Some RewriteRules that capture and substitute unsafely will now
    fail unless rewrite flag "UnsafeAllow3F" is specified.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38473: Apache HTTP Server proxy encoding
    problem (cve.mitre.org) [boo#1227276]
    Encoding problem in mod_proxy in Apache HTTP Server 2.4.59 and
    earlier allows request URLs with incorrect encoding to be sent
    to backend services, potentially bypassing authentication via
    crafted requests.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38472: Apache HTTP Server on WIndows UNC SSRF
    (cve.mitre.org) [boo#1227267]
    SSRF in Apache HTTP Server on Windows allows to potentially leak
    NTML hashes to a malicious server via SSRF and malicious
    requests or content
    Note: Existing configurations that access UNC paths
    will have to configure new directive "UNCList" to allow access
    during request processing.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-36387: Apache HTTP Server: DoS by Null
    pointer in websocket over HTTP/2 (cve.mitre.org) [boo#1227272]
    Serving WebSocket protocol upgrades over a HTTP/2 connection
    could result in a Null Pointer dereference, leading to a crash
    of the server process, degrading performance.
    Credits: Marc Stern (&lt;marc.stern AT approach-cyber.com&gt;)
  * ) mod_proxy: Fix DNS requests and connections closed before the
    configured addressTTL.  BZ 69126.  [Yann Ylavic]
  * ) core: On Linux, log the real thread ID in error logs.  [Joe Orton]
  * ) core: Support zone/scope in IPv6 link-local addresses in Listen and
    VirtualHost directives (requires APR 1.7.x or later).  PR 59396
    [Joe Orton]
  * ) mod_ssl: Reject client-initiated renegotiation with a TLS alert
    (rather than connection closure).  [Joe Orton, Yann Ylavic]
  * ) Updated mime.types.  [Mohamed Akram &lt;mohd.akram outlook.com&gt;,
    Adam Silverstein &lt;adamsilverstein earthboundhosting.com&gt;]
  * ) mod_ssl: Fix a regression that causes the default DH parameters for a key
    no longer set and thus effectively disabling DH ciphers when no explicit
    DH parameters are set. PR 68863 [Ruediger Pluem]
  * ) mod_cgid: Optional support for file descriptor passing, fixing
    error log handling (configure --enable-cgid-fdpassing) on Unix
    platforms. PR 54221.  [Joe Orton]
  * ) mod_cgid/mod_cgi: Distinguish script stderr output clearly in
    error logs.  PR 61980.  [Hank Ibell &lt;hwibell gmail.com&gt;]
  * ) mod_tls: update version of rustls-ffi to v0.13.0.
    [Daniel McCarney (@cpu}]
  * ) mod_md:
  - Using OCSP stapling information to trigger certificate renewals. Proposed
    by @frasertweedale.
  - Added directive `MDCheckInterval` to control how often the server checks
    for detected revocations. Added proposals for configurations in the
    README.md chapter "Revocations".
  - OCSP stapling: accept OCSP responses without a `nextUpdate` entry which is
    allowed in RFC 6960. Treat those as having an update interval of 12 hours.
    Added by @frasertweedale.
  - Adapt OpenSSL usage to changes in their API. By Yann Ylavic.
- removed patches (upstreamed)
  - apache2-issue-444.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- Update to 2.4.62
  * ) SECURITY: CVE-2024-40898: Apache HTTP Server: SSRF with
    mod_rewrite in server/vhost context on Windows (cve.mitre.org)
    [boo#1228098]
    SSRF in Apache HTTP Server on Windows with mod_rewrite in
    server/vhost context, allows to potentially leak NTML hashes to
    a malicious server via SSRF and malicious requests.
    Users are recommended to upgrade to version 2.4.62 which fixes
    this issue.
    Credits: Smi1e (DBAPPSecurity Ltd.)
  * ) SECURITY: CVE-2024-40725: Apache HTTP Server: source code
    disclosure with handlers configured via AddType (cve.mitre.org)
    [boo#1228097]
    A partial fix for  CVE-2024-39884 in the core of Apache HTTP
    Server 2.4.61 ignores some use of the legacy content-type based
    configuration of handlers. "AddType" and similar configuration,
    under some circumstances where files are requested indirectly,
    result in source code disclosure of local content. For example,
    PHP scripts may be served instead of interpreted.
    Users are recommended to upgrade to version 2.4.62, which fixes
    this issue.
  * ) mod_proxy: Fix canonicalisation and FCGI env (PATH_INFO, SCRIPT_NAME) for
    "balancer:" URLs set via SetHandler, also allowing for "unix:" sockets
    with BalancerMember(s).  PR 69168.  [Yann Ylavic]
  * ) mod_proxy: Avoid AH01059 parsing error for SetHandler "unix:" URLs.
    PR 69160 [Yann Ylavic]
  * ) mod_ssl: Fix crashes in PKCS#11 ENGINE support with OpenSSL 3.2.
    [Joe Orton]
  * ) mod_ssl: Add support for loading certs/keys from pkcs11: URIs
    via OpenSSL 3.x providers.  [Ingo Franzki &lt;ifranzki linux.ibm.com&gt;]
  * ) mod_ssl: Restore SSL dumping on trace7 loglevel with OpenSSL &gt;= 3.0.
    [Ruediger Pluem, Yann Ylavic]
  * ) mpm_worker: Fix possible warning (AH00045) about children processes not
    terminating timely.  [Yann Ylavic]</changelog>
  <changelog author="Thorsten Kukuk &lt;kukuk@suse.com&gt;" date="1727697600">- Add /srv/www directories to filelist [bsc#1231027]
  (apache2 will not start since default config uses this directory)</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1730721600">- Explicitly mark start_apache2 as bash-dependent.</changelog>
  <changelog author="Martin Schreiner &lt;martin.schreiner@suse.com&gt;" date="1730808000">- Update httpd-framework to svn1921782.
- Fixes Apache's impact on bsc#1218342.</changelog>
</package>
<package pkgid="4dee864b4dd5518f4eaecf06d35c00a4299148dca19aca12aa560e7def7a19489ffde0c505a3f9565ec3159c43ed5774328927a69a661a8ab593e7eb20702824" name="apache2-devel" arch="src">
  <version epoch="0" ver="2.4.62" rel="3.1"/>
  <changelog author="pgajdos@suse.com" date="1654689600">- update httpd-framework to svn revision 1898917</changelog>
  <changelog author="Stefan Schubert &lt;schubi@intern&gt;" date="1656417600">- Moved logrotate files from user specific directory /etc/logrotate.d
  to vendor specific directory /usr/etc/logrotate.d.</changelog>
  <changelog author="Stefan Schubert &lt;schubi@suse.com&gt;" date="1662033600">- Migration to /usr/etc: Saving user changed configuration files
  in /etc and restoring them while an RPM update.</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1663675200">- Remove references to README.QUICKSTART and point them to
  https://en.opensuse.org/SDB:Apache_installation (bsc#1203573)</changelog>
  <changelog author="Stephan Kulow &lt;coolo@suse.com&gt;" date="1663934400">- The 2.4.54 release brought support for PCRE2, but for that we also
  need to change buildrequires to pcre2-devel</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1670846400">- switch to pkgconfig(zlib) so that alternative providers can be
  used</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1674043200">- This update fixes the following security issues:
  * CVE-2022-37436 [bsc#1207251], mod_proxy backend HTTP response splitting
  * CVE-2022-36760 [bsc#1207250], mod_proxy_ajp Possible request smuggling
  * CVE-2006-20001 [bsc#1207247], mod_dav out of bounds read, or write of zero byte
- Update to 2.4.55:
  * ) SECURITY: CVE-2022-37436: Apache HTTP Server: mod_proxy prior to
    2.4.55 allows a backend to trigger HTTP response splitting
    (cve.mitre.org)
    Prior to Apache HTTP Server 2.4.55, a malicious backend can
    cause the response headers to be truncated early, resulting in
    some headers being incorporated into the response body. If the
    later headers have any security purpose, they will not be
    interpreted by the client.
    Credits: Dimas Fariski Setyawan Putra (@nyxsorcerer)
  * ) SECURITY: CVE-2022-36760: Apache HTTP Server: mod_proxy_ajp
    Possible request smuggling (cve.mitre.org)
    Inconsistent Interpretation of HTTP Requests ('HTTP Request
    Smuggling') vulnerability in mod_proxy_ajp of Apache HTTP Server
    allows an attacker to smuggle requests to the AJP server it
    forwards requests to.  This issue affects Apache HTTP Server
    Apache HTTP Server 2.4 version 2.4.54 and prior versions.
    Credits: ZeddYu_Lu from Qi'anxin Research Institute of Legendsec
    at Qi'anxin Group
  * ) SECURITY: CVE-2006-20001: mod_dav out of  bounds read, or write
    of zero byte (cve.mitre.org)
    A carefully crafted If: request header can cause a memory read,
    or write of a single zero byte, in a pool (heap) memory location
    beyond the header value sent. This could cause the process to
    crash.
    This issue affects Apache HTTP Server 2.4.54 and earlier.
  * ) mod_dav: Open the lock database read-only when possible.
    PR 36636 [Wilson Felipe &lt;wfelipe gmail.com&gt;, manu]
  * ) mod_proxy_http2: apply the standard httpd content type handling
    to responses from the backend, as other proxy modules do. Fixes PR 66391.
    Thanks to Jérôme Billiras for providing the patch.
    [Stefan Eissing]
  * ) mod_dav: mod_dav overrides dav_fs response on PUT failure. PR 35981
    [Basant Kumar Kukreja &lt;basant.kukreja sun.com&gt;, Alejandro Alvarez
    &lt;alejandro.alvarez.ayllon cern.ch&gt;]
  * ) mod_proxy_hcheck: Honor worker timeout settings.  [Yann Ylavic]
  * ) mod_http2: version 2.0.10 of the module, synchronizing changes
    with the gitgub version. This is a partial rewrite of how connections
    and streams are handled.
  - an APR pollset and pipes (where supported) are used to monitor
    the main connection and react to IO for request/response handling.
    This replaces the stuttered timed waits of earlier versions.
  - H2SerializeHeaders directive still exists, but has no longer an effect.
  - Clients that seemingly misbehave still get less resources allocated,
    but ongoing requests are no longer disrupted.
  - Fixed an issue since 1.15.24 that "Server" headers in proxied requests
    were overwritten instead of preserved. [PR by @daum3ns]
  - A regression in v1.15.24 was fixed that could lead to httpd child
    processes not being terminated on a graceful reload or when reaching
    MaxConnectionsPerChild. When unprocessed h2 requests were queued at
    the time, these could stall. See #212.
  - Improved information displayed in 'server-status' for H2 connections when
    Extended Status is enabled. Now one can see the last request that IO
    operations happened on and transferred IO stats are updated as well.
  - When reaching server limits, such as MaxRequestsPerChild, the HTTP/2 connection
    send a GOAWAY frame much too early on new connections, leading to invalid
    protocol state and a client failing the request. See PR65731 at
    &lt;https://bz.apache.org/bugzilla/show_bug.cgi?id=65731&gt;.
    The module now initializes the HTTP/2 protocol correctly and allows the
    client to submit one request before the shutdown via a GOAWAY frame
    is being announced.
  - :scheme pseudo-header values, not matching the
    connection scheme, are forwarded via absolute uris to the
    http protocol processing to preserve semantics of the request.
    Checks on combinations of pseudo-headers values/absence
    have been added as described in RFC 7540. Fixes #230.
  - A bug that prevented trailers (e.g. HEADER frame at the end) to be
    generated in certain cases was fixed. See #233 where it prevented
    gRPC responses to be properly generated.
  - Request and response header values are automatically stripped of leading
    and trialing space/tab characters. This is equivalent behaviour to what
    Apache httpd's http/1.1 parser does.
    The checks for this in nghttp2 v1.50.0+ are disabled.
  - Extensive testing in production done by Alessandro Bianchi (@alexskynet)
    on the v2.0.x versions for stability. Many thanks!
  * ) mod_proxy_http2: fixed #235 by no longer forwarding 'Host:' header when
    request ':authority' is known. Improved test case that did not catch that
    the previous 'fix' was incorrect.
  * ) mod_proxy_hcheck: hcmethod now allows for HTTP/1.1 requests
    using GET11, HEAD11 and/or OPTIONS11. [Jim Jagielski]
  * ) mod_proxy: The AH03408 warning for a forcibly closed backend
    connection is now logged at INFO level.  [Yann Ylavic]
  * ) mod_ssl: When dumping the configuration, the existence of
    certificate/key files is no longer tested.  [Joe Orton]
  * ) mod_authn_core: Add expression support to AuthName and AuthType.
    [Graham Leggett]
  * ) mod_ssl: when a proxy connection had handled a request using SSL, an
    error was logged when "SSLProxyEngine" was only configured in the
    location/proxy section and not the overall server. The connection
    continued to work, the error log was in error. Fixed PR66190.
    [Stefan Eissing]
  * ) mod_proxy_hcheck: Re-enable workers in standard ERROR state. PR 66302.
    [Alessandro Cavaliere &lt;alessandro.cavalier7 unibo.it&gt;]
  * ) mod_proxy_hcheck: Detect AJP/CPING support correctly. PR 66300.
    [Alessandro Cavaliere &lt;alessandro.cavalier7 unibo.it&gt;]
  * ) mod_http2: Export mod_http2.h as public header. [Stefan Eissing]
  * ) mod_md: a new directive `MDStoreLocks` can be used on cluster
    setups with a shared file system for `MDStoreDir` to order
    activation of renewed certificates when several cluster nodes are
    restarted at the same time. Store locks are not enabled by default.
    Restored curl_easy cleanup behaviour from v2.4.14 and refactored
    the use of curl_multi for OCSP requests to work with that.
    Fixes &lt;https://github.com/icing/mod_md/issues/293&gt;.
  * ) core: Avoid an overflow on large inputs in ap_is_matchexp.  PR 66033
    [Ruediger Pluem]
  * ) mod_heartmonitor: Allow "HeartbeatMaxServers 0" to use file based
    storage instead of slotmem. Needed after setting
    HeartbeatMaxServers default to the documented value 10 in 2.4.54.
    PR 66131.  [Jérôme Billiras]
  * ) mod_dav: DAVlockDiscovery option to disable WebDAV lock discovery
    This is a game changer for performances if client use PROPFIND a lot,
    PR 66313. [Emmanuel Dreyfus]</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1678276800">- This update fixes the following security issues:
  * CVE-2023-27522 [bsc#1209049]: mod_proxy_uwsgi HTTP response splitting
  * CVE-2023-25690 [bsc#1209047]: HTTP request splitting with mod_rewrite and mod_proxy
- Update to 2.4.56:
  * ) rotatelogs: Add -T flag to allow subsequent rotated logfiles to be
    truncated without the initial logfile being truncated.  [Eric Covener]
  * ) mod_ldap: LDAPConnectionPoolTTL should accept negative values in order to
    allow connections of any age to be reused. Up to now, a negative value
    was handled as an error when parsing the configuration file.  PR 66421.
    [nailyk &lt;bzapache nailyk.fr&gt;, Christophe Jaillet]
  * ) mod_proxy_ajp: Report an error if the AJP backend sends an invalid number
    of headers. [Ruediger Pluem]
  * ) mod_md:
  - Enabling ED25519 support and certificate transparency information when
    building with libressl v3.5.0 and newer. Thanks to Giovanni Bechis.
  - MDChallengeDns01 can now be configured for individual domains.
    Thanks to Jérôme Billiras (@bilhackmac) for the initial PR.
  - Fixed a bug found by Jérôme Billiras (@bilhackmac) that caused the challenge
    teardown not being invoked as it should.
    [Stefan Eissing]
  * ) mod_http2: client resets of HTTP/2 streams led to unwanted 500 errors
    reported in access logs and error documents. The processing of the
    reset was correct, only unneccesary reporting was caused.
    [Stefan Eissing]
  * ) mod_proxy_uwsgi: Stricter backend HTTP response parsing/validation.
    [Yann Ylavic]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1680868800">- Update to 2.4.57:
  * ) mod_proxy: Check before forwarding that a nocanon path has not been
    rewritten with spaces during processing.  [Yann Ylavic]
  * ) mod_proxy: In case that AllowEncodedSlashes is set to NoDecode do not
    double encode encoded slashes in the URL sent by the reverse proxy to the
    backend. [Ruediger Pluem]
  * ) mod_http2: fixed a crash during connection termination. See PR 66539.
    [Stefan Eissing]
  * ) mod_rewrite: Fix a 2.4.56 regression for substitutions ending
    in a question mark. PR66547. [Eric Covener]
  * ) mod_rewrite: Add "BCTLS" and "BNE" RewriteRule flags. Re-allow encoded
    characters on redirections without the "NE" flag.
    [Yann Ylavic, Eric Covener]
  * ) mod_proxy: Fix double encoding of the uri-path of the request forwarded
    to the origin server, when using mapping=encoded|servlet.  [Yann Ylavic]
  * ) mod_mime: Do not match the extention against possible query string
    parameters in case ProxyPass was used with the nocanon option.
    [Ruediger Pluem]</changelog>
  <changelog author="Dirk Stoecker &lt;opensuse@dstoecker.de&gt;" date="1691236800">- Enable building of mod_md</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1697716800">- Update to 2.4.58:
  * ) SECURITY: CVE-2023-45802: Apache HTTP Server: HTTP/2 stream
    memory not reclaimed right away on RST (cve.mitre.org)
    When a HTTP/2 stream was reset (RST frame) by a client, there
    was a time window were the request's memory resources were not
    reclaimed immediately. Instead, de-allocation was deferred to
    connection close. A client could send new requests and resets,
    keeping the connection busy and open and causing the memory
    footprint to keep on growing. On connection close, all resources
    were reclaimed, but the process might run out of memory before
    that.
    This was found by the reporter during testing of CVE-2023-44487
    (HTTP/2 Rapid Reset Exploit) with their own test client. During
    "normal" HTTP/2 use, the probability to hit this bug is very
    low. The kept memory would not become noticeable before the
    connection closes or times out.
    Users are recommended to upgrade to version 2.4.58, which fixes
    the issue.
    Credits: Will Dormann of Vul Labs
  * ) SECURITY: CVE-2023-43622: Apache HTTP Server: DoS in HTTP/2 with
    initial windows size 0 (cve.mitre.org)
    An attacker, opening a HTTP/2 connection with an initial window
    size of 0, was able to block handling of that connection
    indefinitely in Apache HTTP Server. This could be used to
    exhaust worker resources in the server, similar to the well
    known "slow loris" attack pattern.
    This has been fixed in version 2.4.58, so that such connection
    are terminated properly after the configured connection timeout.
    This issue affects Apache HTTP Server: from 2.4.55 through
    2.4.57.
    Users are recommended to upgrade to version 2.4.58, which fixes
    the issue.
    Credits: Prof. Sven Dietrich (City University of New York)
  * ) SECURITY: CVE-2023-31122: mod_macro buffer over-read
    (cve.mitre.org)
    Out-of-bounds Read vulnerability in mod_macro of Apache HTTP
    Server.This issue affects Apache HTTP Server: through 2.4.57.
    Credits: David Shoon (github/davidshoon)
  * ) mod_ssl: Silence info log message "SSL Library Error: error:0A000126:
    SSL routines::unexpected eof while reading" when using
    OpenSSL 3 by setting SSL_OP_IGNORE_UNEXPECTED_EOF if
    available. [Rainer Jung]
  * ) mod_http2: improved early cleanup of streams.
    [Stefan Eissing]
  * ) mod_proxy_http2: improved error handling on connection errors while
    response is already underway.
    [Stefan Eissing]
  * ) mod_http2: fixed a bug that could lead to a crash in main connection
    output handling. This occured only when the last request on a HTTP/2
    connection had been processed and the session decided to shut down.
    This could lead to an attempt to send a final GOAWAY while the previous
    write was still in progress. See PR 66646.
    [Stefan Eissing]
  * ) mod_proxy_http2: fix `X-Forward-Host` header to carry the correct value.
    Fixes PR66752.
    [Stefan Eissing]
  * ) mod_http2: added support for bootstrapping WebSockets via HTTP/2, as
    described in RFC 8441. A new directive 'H2WebSockets on|off' has been
    added. The feature is by default not enabled.
    As also discussed in the manual, this feature should work for setups
    using "ProxyPass backend-url upgrade=websocket" without further changes.
    Special server modules for WebSockets will have to be adapted,
    most likely, as the handling if IO events is different with HTTP/2.
    HTTP/2 WebSockets are supported on platforms with native pipes. This
    excludes Windows.
    [Stefan Eissing]
  * ) mod_rewrite: Fix a regression with both a trailing ? and [QSA].
    in OCSP stapling. PR 66672. [Frank Meier &lt;frank.meier ergon.ch&gt;, covener]
  * ) mod_http2: fixed a bug in flushing pending data on an already closed
    connection that could lead to a busy loop, preventing the HTTP/2 session
    to close down successfully. Fixed PR 66624.
    [Stefan Eissing]
  * ) mod_http2: v2.0.15 with the following fixes and improvements
  - New directive 'H2EarlyHint name value' to add headers to a response,
    picked up already when a "103 Early Hints" response is sent. 'name' and
    'value' must comply to the HTTP field restrictions.
    This directive can be repeated several times and header fields of the
    same names add. Sending a 'Link' header with 'preload' relation will
    also cause a HTTP/2 PUSH if enabled and supported by the client.
  - Fixed an issue where requests were not logged and accounted in a timely
    fashion when the connection returns to "keepalive" handling, e.g. when
    the request served was the last outstanding one.
    This led to late appearance in access logs with wrong duration times
    reported.
  - Accurately report the bytes sent for a request in the '%O' Log format.
    This addresses #203, a long outstanding issue where mod_h2 has reported
    numbers over-eagerly from internal buffering and not what has actually
    been placed on the connection.
    The numbers are now the same with and without H2CopyFiles enabled.
    [Stefan Eissing]
  * ) mod_proxy_http2: fix retry handling to not leak temporary errors.
    On detecting that that an existing connection was shutdown by the other
    side, a 503 response leaked even though the request was retried on a
    fresh connection.
    [Stefan Eissing]
  * ) mod_rewrite: Add server directory to include path as mod_rewrite requires
    test_char.h. PR 66571 [Valeria Petrov &lt;valeria.petrov@spinetix.com&gt;]
  * ) mod_http2: new directive `H2ProxyRequests on|off` to enable handling
    of HTTP/2 requests in a forward proxy configuration.
    General forward proxying is enabled via `ProxyRequests`. If the
    HTTP/2 protocol is also enabled for such a server/host, this new
    directive is needed in addition.
    [Stefan Eissing]
  * ) core: Updated conf/mime.types:
  - .js moved from 'application/javascript' to 'text/javascript'
  - .mjs was added as 'text/javascript'
  - add .opus ('audio/ogg')
  - add 'application/vnd.geogebra.slides'
  - add WebAssembly MIME types and extension
    [Mathias Bynens &lt;@mathiasbynens&gt; via PR 318,
    Richard de Boer &lt;richard tubul.net&gt;, Dave Hodder &lt;dmh dmh.org.uk&gt;,
    Zbynek Konecny &lt;zbynek1729 gmail.com&gt;]
  * ) mod_proxy_http2: fixed using the wrong "bucket_alloc" from the backend
    connection when sending data on the frontend one. This caused crashes
    or infinite loops in rare situations.
  * ) mod_proxy_http2: fixed a bug in retry/response handling that could lead
    to wrong status codes or HTTP messages send at the end of response bodies
    exceeding the announced content-length.
  * ) mod_proxy_http2: fix retry handling to not leak temporary errors.
    On detecting that that an existing connection was shutdown by the other
    side, a 503 response leaked even though the request was retried on a
    fresh connection.
  * ) mod_http2: fixed a bug that did cleanup of consumed and pending buckets in
    the wrong order when a bucket_beam was destroyed.
    [Stefan Eissing]
  * ) mod_http2: avoid double chunked-encoding on internal redirects.
    PR 66597 [Yann Ylavic, Stefan Eissing]
  * ) mod_http2: Fix reporting of `Total Accesses` in server-status to not count
    HTTP/2 requests twice. Fixes PR 66801.
    [Stefan Eissing]
  * ) mod_ssl: Fix handling of Certificate Revoked messages
    in OCSP stapling. PR 66626. [&lt;gmoniker gmail.com&gt;]
  * ) mod_http2: fixed a bug in handling of stream timeouts.
    [Stefan Eissing]
  * ) mod_tls: updating to rustls-ffi version 0.9.2 or higher.
    Checking in configure for proper version installed. Code
    fixes for changed clienthello member name.
    [Stefan Eissing]
  * ) mod_md:
  - New directive `MDMatchNames all|servernames` to allow more control over how
    MDomains are matched to VirtualHosts.
  - New directive `MDChallengeDns01Version`. Setting this to `2` will provide
    the command also with the challenge value on `teardown` invocation. In version
    1, the default, only the `setup` invocation gets this parameter.
    Refs #312. Thanks to @domrim for the idea.
  - For Managed Domain in "manual" mode, the checks if all used ServerName and
    ServerAlias are part of the MDomain now reports a warning instead of an error
    (AH10040) when not all names are present.
  - MDChallengeDns01 can now be configured for individual domains.
    Using PR from JÃ©rÃ´me Billiras (@bilhackmac) and adding test case and fixing proper working
  - Fixed a bug found by JÃ©rÃ´me Billiras (@bilhackmac) that caused the challenge
    teardown not being invoked as it should.
  * ) mod_ldap: Avoid performance overhead of APR-util rebind cache for
    OpenLDAP 2.2+.  PR 64414.  [Joe Orton]
  * ) mod_http2: new directive 'H2MaxDataFrameLen n' to limit the maximum
    amount of response body bytes put into a single HTTP/2 DATA frame.
    Setting this to 0 places no limit (but the max size allowed by the
    protocol is observed).
    The module, by default, tries to use the maximum size possible, which is
    somewhat around 16KB. This sets the maximum. When less response data is
    available, smaller frames will be sent.
  * ) mod_md: fixed passing of the server environment variables to programs
    started via MDMessageCmd and MDChallengeDns01 on *nix system.
    See &lt;https://github.com/icing/mod_md/issues/319&gt;.
    [Stefan Eissing]
  * ) mod_dav: Add DavBasePath directive to configure the repository root
    path.  PR 35077.  [Joe Orton]
  * ) mod_alias: Add AliasPreservePath directive to map the full
    path after the alias in a location. [Graham Leggett]
  * ) mod_alias: Add RedirectRelative to allow relative redirect targets to be
    issued as-is. [Eric Covener, Graham Leggett]
  * ) core: Add formats %{z} and %{strftime-format} to ErrorLogFormat, and make
    sure that if the format is configured early enough it applies to every log
    line.  PR 62161.  [Yann Ylavic]
  * ) mod_deflate: Add DeflateAlterETag to control how the ETag
    is modified. The 'NoChange' parameter mimics 2.2.x behavior.
    PR 45023, PR 39727. [Eric Covener]
  * ) core: Optimize send_brigade_nonblocking(). [Yann Ylavic, Christophe Jaillet]
  * ) mod_status: Remove duplicate keys "BusyWorkers" and "IdleWorkers".
    Resolve inconsistency between the previous two occurrences by
    counting workers in state SERVER_GRACEFUL no longer as busy,
    but instead in a new counter "GracefulWorkers" (or on HTML
    view as "workers gracefully restarting"). Also add the graceful
    counter as a new column to the existing HTML per process table
    for async MPMs. PR 63300. [Rainer Jung]</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1706529600">- use grep -E for egrep</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1708430400">- Use %autosetup macro. Allows to eliminate the usage of deprecated
  %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1712232000">- Update to 2.4.59:
  * ) mod_deflate: Fixes and better logging for handling various
    error and edge cases. [Eric Covener, Yann Ylavic, Joe Orton,
    Eric Norris &lt;enorris etsy.com&gt;]
  * ) Add CGIScriptTimeout to mod_cgi. [Eric Covener]
  * ) mod_xml2enc: Tolerate libxml2 2.12.0 and later.  PR 68610
    [ttachi &lt;tachihara AT hotmail.com&gt;]
  * ) mod_slotmem_shm: Use ap_os_is_path_absolute() to make it portable.
    [Jean-Frederic Clere]
  * ) mod_ssl: Use OpenSSL-standard functions to assemble CA
    name lists for SSLCACertificatePath/SSLCADNRequestPath.
    Names will now be consistently sorted. PR 61574.
    [Joe Orton]
  * ) mod_xml2enc: Update check to accept any text/ media type
    or any XML media type per RFC 7303, avoiding
    corruption of Microsoft OOXML formats.  PR 64339.
    [Joseph Heenan &lt;joseph.heenan fintechlabs.io&gt;, Joe Orton]
  * ) mod_http2: v2.0.26 with the following fixes:
  - Fixed `Date` header on requests upgraded from HTTP/1.1 (h2c). Fixes
    &lt;https://github.com/icing/mod_h2/issues/272&gt;.
  - Fixed small memory leak in h2 header bucket free. Thanks to
    Michael Kaufmann for finding this and providing the fix.
  * ) htcacheclean: In -a/-A mode, list all files per subdirectory
    rather than only one. PR 65091.
    [Artem Egorenkov &lt;aegorenkov.91 gmail.com&gt;]
  * ) mod_ssl: SSLProxyMachineCertificateFile/Path may reference files
    which include CA certificates; those CA certs are treated as if
    configured with SSLProxyMachineCertificateChainFile.  [Joe Orton]
  * ) htpasswd, htdbm, dbmmanage: Update help&amp;docs to refer to
    "hashing", rather than "encrypting" passwords.
    [Michele Preziuso &lt;mpreziuso kaosdynamics.com&gt;]
  * ) mod_ssl: Fix build with LibreSSL 2.0.7+. PR 64047.
    [Giovanni Bechis, Yann Ylavic]
  * ) htpasswd: Add support for passwords using SHA-2.  [Joe Orton,
    Yann Ylavic]
  * ) core: Allow mod_env to override system environment vars. [Joe Orton]
  * ) Allow mod_dav_fs to tolerate race conditions between PROPFIND and an
    operation which removes a directory/file between apr_dir_read() and
    apr_stat(). Current behaviour is to abort the connection which seems
    inferior to tolerating (and logging) the error. [Joe Orton]
  * ) mod_ldap: HTML-escape data in the ldap-status handler.
    [Eric Covener, Chamal De Silva]
  * ) mod_ssl: Disable the OpenSSL ENGINE API when OPENSSL_NO_ENGINE is set.
    Allow for "SSLCryptoDevice builtin" if the ENGINE API is not available,
    notably with OpenSSL &gt;= 3.  PR 68080.  [Yann Ylavic, Joe Orton]
  * ) mod_ssl: Improve compatibility with OpenSSL 3, fix build warnings about
    deprecated ENGINE_ API, honor OPENSSL_API_COMPAT setting while defaulting
    to compatibitily with version 1.1.1 (including ENGINEs / SSLCryptoDevice).
    [Yann Ylavic]
  * ) mod_ssl: release memory to the OS when needed. [Giovanni Bechis]
  * ) mod_proxy: Ignore (and warn about) enablereuse=on for ProxyPassMatch when
    some dollar substitution (backreference) happens in the hostname or port
    part of the URL.  [Yann Ylavic]
  * ) mod_proxy: Allow to set a TTL for how long DNS resolutions to backend
    systems are cached. [Yann Ylavic]
  * ) mod_proxy: Add optional third argument for ProxyRemote, which
    configures Basic authentication credentials to pass to the remote
    proxy.  PR 37355.  [Joe Orton]</changelog>
  <changelog author="pgajdos@suse.com" date="1718280000">- added patches [bsc#1226217]
  https://github.com/apache/httpd/pull/444/commits/c2fffd29b0f58bdc9caaaff4fec68e17a676f182
  + apache2-issue-444.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1720094400">- Update to 2.4.61
  * ) SECURITY: CVE-2024-39884: Apache HTTP Server: source code
    disclosure with handlers configured via AddType (cve.mitre.org)
    [boo#1227353]
    A regression in the core of Apache HTTP Server 2.4.60 ignores
    some use of the legacy content-type based configuration of
    handlers.   "AddType" and similar configuration, under some
    circumstances where files are requested indirectly, result in
    source code disclosure of local content. For example, PHP
    scripts may be served instead of interpreted.
    Users are recommended to upgrade to version 2.4.61, which fixes
    this issue.
- Update to 2.4.60
  * ) SECURITY: CVE-2024-39573: Apache HTTP Server: mod_rewrite proxy
    handler substitution (cve.mitre.org) [boo#1227271]
    Potential SSRF in mod_rewrite in Apache HTTP Server 2.4.59 and
    earlier allows an attacker to cause unsafe RewriteRules to
    unexpectedly setup URL's to be handled by mod_proxy.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38477: Apache HTTP Server: Crash resulting in
    Denial of Service in mod_proxy via a malicious request
    (cve.mitre.org) [boo#1227270]
    null pointer dereference in mod_proxy in Apache HTTP Server
    2.4.59 and earlier allows an attacker to crash the server via a
    malicious request.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38476: Apache HTTP Server may use
    exploitable/malicious backend application output to run local
    handlers via internal redirect (cve.mitre.org) [boo#1227269]
    Vulnerability in core of Apache HTTP Server 2.4.59 and earlier
    are vulnerably to information disclosure, SSRF or local script
    execution via backend applications whose response headers are
    malicious or exploitable.
    Note: Some legacy uses of the 'AddType' directive to connect a
    request to a handler must be ported to 'AddHandler' after this fix.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38475: Apache HTTP Server weakness in
    mod_rewrite when first segment of substitution matches
    filesystem path. (cve.mitre.org) [boo#1227268]
    Improper escaping of output in mod_rewrite in Apache HTTP Server
    2.4.59 and earlier allows an attacker to map URLs to filesystem
    locations that are permitted to be served by the server but are
    not intentionally/directly reachable by any URL, resulting in
    code execution or source code disclosure.
    Substitutions in server context that use a backreferences or
    variables as the first segment of the substitution are affected.
    Some unsafe RewiteRules will be broken by this change and the
    rewrite flag "UnsafePrefixStat" can be used to opt back in once
    ensuring the substitution is appropriately constrained.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38474: Apache HTTP Server weakness with
    encoded question marks in backreferences (cve.mitre.org)
    [boo#1227278]
    Substitution encoding issue in mod_rewrite in Apache HTTP Server
    2.4.59 and earlier allows attacker to execute scripts in
    directories permitted by the configuration but not directly
    reachable by any URL or source disclosure of scripts meant to
    only to be executed as CGI.
    Note: Some RewriteRules that capture and substitute unsafely will now
    fail unless rewrite flag "UnsafeAllow3F" is specified.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38473: Apache HTTP Server proxy encoding
    problem (cve.mitre.org) [boo#1227276]
    Encoding problem in mod_proxy in Apache HTTP Server 2.4.59 and
    earlier allows request URLs with incorrect encoding to be sent
    to backend services, potentially bypassing authentication via
    crafted requests.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38472: Apache HTTP Server on WIndows UNC SSRF
    (cve.mitre.org) [boo#1227267]
    SSRF in Apache HTTP Server on Windows allows to potentially leak
    NTML hashes to a malicious server via SSRF and malicious
    requests or content
    Note: Existing configurations that access UNC paths
    will have to configure new directive "UNCList" to allow access
    during request processing.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-36387: Apache HTTP Server: DoS by Null
    pointer in websocket over HTTP/2 (cve.mitre.org) [boo#1227272]
    Serving WebSocket protocol upgrades over a HTTP/2 connection
    could result in a Null Pointer dereference, leading to a crash
    of the server process, degrading performance.
    Credits: Marc Stern (&lt;marc.stern AT approach-cyber.com&gt;)
  * ) mod_proxy: Fix DNS requests and connections closed before the
    configured addressTTL.  BZ 69126.  [Yann Ylavic]
  * ) core: On Linux, log the real thread ID in error logs.  [Joe Orton]
  * ) core: Support zone/scope in IPv6 link-local addresses in Listen and
    VirtualHost directives (requires APR 1.7.x or later).  PR 59396
    [Joe Orton]
  * ) mod_ssl: Reject client-initiated renegotiation with a TLS alert
    (rather than connection closure).  [Joe Orton, Yann Ylavic]
  * ) Updated mime.types.  [Mohamed Akram &lt;mohd.akram outlook.com&gt;,
    Adam Silverstein &lt;adamsilverstein earthboundhosting.com&gt;]
  * ) mod_ssl: Fix a regression that causes the default DH parameters for a key
    no longer set and thus effectively disabling DH ciphers when no explicit
    DH parameters are set. PR 68863 [Ruediger Pluem]
  * ) mod_cgid: Optional support for file descriptor passing, fixing
    error log handling (configure --enable-cgid-fdpassing) on Unix
    platforms. PR 54221.  [Joe Orton]
  * ) mod_cgid/mod_cgi: Distinguish script stderr output clearly in
    error logs.  PR 61980.  [Hank Ibell &lt;hwibell gmail.com&gt;]
  * ) mod_tls: update version of rustls-ffi to v0.13.0.
    [Daniel McCarney (@cpu}]
  * ) mod_md:
  - Using OCSP stapling information to trigger certificate renewals. Proposed
    by @frasertweedale.
  - Added directive `MDCheckInterval` to control how often the server checks
    for detected revocations. Added proposals for configurations in the
    README.md chapter "Revocations".
  - OCSP stapling: accept OCSP responses without a `nextUpdate` entry which is
    allowed in RFC 6960. Treat those as having an update interval of 12 hours.
    Added by @frasertweedale.
  - Adapt OpenSSL usage to changes in their API. By Yann Ylavic.
- removed patches (upstreamed)
  - apache2-issue-444.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- Update to 2.4.62
  * ) SECURITY: CVE-2024-40898: Apache HTTP Server: SSRF with
    mod_rewrite in server/vhost context on Windows (cve.mitre.org)
    [boo#1228098]
    SSRF in Apache HTTP Server on Windows with mod_rewrite in
    server/vhost context, allows to potentially leak NTML hashes to
    a malicious server via SSRF and malicious requests.
    Users are recommended to upgrade to version 2.4.62 which fixes
    this issue.
    Credits: Smi1e (DBAPPSecurity Ltd.)
  * ) SECURITY: CVE-2024-40725: Apache HTTP Server: source code
    disclosure with handlers configured via AddType (cve.mitre.org)
    [boo#1228097]
    A partial fix for  CVE-2024-39884 in the core of Apache HTTP
    Server 2.4.61 ignores some use of the legacy content-type based
    configuration of handlers. "AddType" and similar configuration,
    under some circumstances where files are requested indirectly,
    result in source code disclosure of local content. For example,
    PHP scripts may be served instead of interpreted.
    Users are recommended to upgrade to version 2.4.62, which fixes
    this issue.
  * ) mod_proxy: Fix canonicalisation and FCGI env (PATH_INFO, SCRIPT_NAME) for
    "balancer:" URLs set via SetHandler, also allowing for "unix:" sockets
    with BalancerMember(s).  PR 69168.  [Yann Ylavic]
  * ) mod_proxy: Avoid AH01059 parsing error for SetHandler "unix:" URLs.
    PR 69160 [Yann Ylavic]
  * ) mod_ssl: Fix crashes in PKCS#11 ENGINE support with OpenSSL 3.2.
    [Joe Orton]
  * ) mod_ssl: Add support for loading certs/keys from pkcs11: URIs
    via OpenSSL 3.x providers.  [Ingo Franzki &lt;ifranzki linux.ibm.com&gt;]
  * ) mod_ssl: Restore SSL dumping on trace7 loglevel with OpenSSL &gt;= 3.0.
    [Ruediger Pluem, Yann Ylavic]
  * ) mpm_worker: Fix possible warning (AH00045) about children processes not
    terminating timely.  [Yann Ylavic]</changelog>
  <changelog author="Thorsten Kukuk &lt;kukuk@suse.com&gt;" date="1727697600">- Add /srv/www directories to filelist [bsc#1231027]
  (apache2 will not start since default config uses this directory)</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1730721600">- Explicitly mark start_apache2 as bash-dependent.</changelog>
  <changelog author="Martin Schreiner &lt;martin.schreiner@suse.com&gt;" date="1730808000">- Update httpd-framework to svn1921782.
- Fixes Apache's impact on bsc#1218342.</changelog>
</package>
<package pkgid="79be20ad660173035d1da864c408612c14b13ad13762b76f9d6c38626fec55b12a6541dae4eb1e37e4929b92dca9c24972ab5ead88b155fad8ab6ed66d3391ba" name="apache2-devel" arch="x86_64">
  <version epoch="0" ver="2.4.62" rel="3.1"/>
  <changelog author="pgajdos@suse.com" date="1654689600">- update httpd-framework to svn revision 1898917</changelog>
  <changelog author="Stefan Schubert &lt;schubi@intern&gt;" date="1656417600">- Moved logrotate files from user specific directory /etc/logrotate.d
  to vendor specific directory /usr/etc/logrotate.d.</changelog>
  <changelog author="Stefan Schubert &lt;schubi@suse.com&gt;" date="1662033600">- Migration to /usr/etc: Saving user changed configuration files
  in /etc and restoring them while an RPM update.</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1663675200">- Remove references to README.QUICKSTART and point them to
  https://en.opensuse.org/SDB:Apache_installation (bsc#1203573)</changelog>
  <changelog author="Stephan Kulow &lt;coolo@suse.com&gt;" date="1663934400">- The 2.4.54 release brought support for PCRE2, but for that we also
  need to change buildrequires to pcre2-devel</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1670846400">- switch to pkgconfig(zlib) so that alternative providers can be
  used</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1674043200">- This update fixes the following security issues:
  * CVE-2022-37436 [bsc#1207251], mod_proxy backend HTTP response splitting
  * CVE-2022-36760 [bsc#1207250], mod_proxy_ajp Possible request smuggling
  * CVE-2006-20001 [bsc#1207247], mod_dav out of bounds read, or write of zero byte
- Update to 2.4.55:
  * ) SECURITY: CVE-2022-37436: Apache HTTP Server: mod_proxy prior to
    2.4.55 allows a backend to trigger HTTP response splitting
    (cve.mitre.org)
    Prior to Apache HTTP Server 2.4.55, a malicious backend can
    cause the response headers to be truncated early, resulting in
    some headers being incorporated into the response body. If the
    later headers have any security purpose, they will not be
    interpreted by the client.
    Credits: Dimas Fariski Setyawan Putra (@nyxsorcerer)
  * ) SECURITY: CVE-2022-36760: Apache HTTP Server: mod_proxy_ajp
    Possible request smuggling (cve.mitre.org)
    Inconsistent Interpretation of HTTP Requests ('HTTP Request
    Smuggling') vulnerability in mod_proxy_ajp of Apache HTTP Server
    allows an attacker to smuggle requests to the AJP server it
    forwards requests to.  This issue affects Apache HTTP Server
    Apache HTTP Server 2.4 version 2.4.54 and prior versions.
    Credits: ZeddYu_Lu from Qi'anxin Research Institute of Legendsec
    at Qi'anxin Group
  * ) SECURITY: CVE-2006-20001: mod_dav out of  bounds read, or write
    of zero byte (cve.mitre.org)
    A carefully crafted If: request header can cause a memory read,
    or write of a single zero byte, in a pool (heap) memory location
    beyond the header value sent. This could cause the process to
    crash.
    This issue affects Apache HTTP Server 2.4.54 and earlier.
  * ) mod_dav: Open the lock database read-only when possible.
    PR 36636 [Wilson Felipe &lt;wfelipe gmail.com&gt;, manu]
  * ) mod_proxy_http2: apply the standard httpd content type handling
    to responses from the backend, as other proxy modules do. Fixes PR 66391.
    Thanks to Jérôme Billiras for providing the patch.
    [Stefan Eissing]
  * ) mod_dav: mod_dav overrides dav_fs response on PUT failure. PR 35981
    [Basant Kumar Kukreja &lt;basant.kukreja sun.com&gt;, Alejandro Alvarez
    &lt;alejandro.alvarez.ayllon cern.ch&gt;]
  * ) mod_proxy_hcheck: Honor worker timeout settings.  [Yann Ylavic]
  * ) mod_http2: version 2.0.10 of the module, synchronizing changes
    with the gitgub version. This is a partial rewrite of how connections
    and streams are handled.
  - an APR pollset and pipes (where supported) are used to monitor
    the main connection and react to IO for request/response handling.
    This replaces the stuttered timed waits of earlier versions.
  - H2SerializeHeaders directive still exists, but has no longer an effect.
  - Clients that seemingly misbehave still get less resources allocated,
    but ongoing requests are no longer disrupted.
  - Fixed an issue since 1.15.24 that "Server" headers in proxied requests
    were overwritten instead of preserved. [PR by @daum3ns]
  - A regression in v1.15.24 was fixed that could lead to httpd child
    processes not being terminated on a graceful reload or when reaching
    MaxConnectionsPerChild. When unprocessed h2 requests were queued at
    the time, these could stall. See #212.
  - Improved information displayed in 'server-status' for H2 connections when
    Extended Status is enabled. Now one can see the last request that IO
    operations happened on and transferred IO stats are updated as well.
  - When reaching server limits, such as MaxRequestsPerChild, the HTTP/2 connection
    send a GOAWAY frame much too early on new connections, leading to invalid
    protocol state and a client failing the request. See PR65731 at
    &lt;https://bz.apache.org/bugzilla/show_bug.cgi?id=65731&gt;.
    The module now initializes the HTTP/2 protocol correctly and allows the
    client to submit one request before the shutdown via a GOAWAY frame
    is being announced.
  - :scheme pseudo-header values, not matching the
    connection scheme, are forwarded via absolute uris to the
    http protocol processing to preserve semantics of the request.
    Checks on combinations of pseudo-headers values/absence
    have been added as described in RFC 7540. Fixes #230.
  - A bug that prevented trailers (e.g. HEADER frame at the end) to be
    generated in certain cases was fixed. See #233 where it prevented
    gRPC responses to be properly generated.
  - Request and response header values are automatically stripped of leading
    and trialing space/tab characters. This is equivalent behaviour to what
    Apache httpd's http/1.1 parser does.
    The checks for this in nghttp2 v1.50.0+ are disabled.
  - Extensive testing in production done by Alessandro Bianchi (@alexskynet)
    on the v2.0.x versions for stability. Many thanks!
  * ) mod_proxy_http2: fixed #235 by no longer forwarding 'Host:' header when
    request ':authority' is known. Improved test case that did not catch that
    the previous 'fix' was incorrect.
  * ) mod_proxy_hcheck: hcmethod now allows for HTTP/1.1 requests
    using GET11, HEAD11 and/or OPTIONS11. [Jim Jagielski]
  * ) mod_proxy: The AH03408 warning for a forcibly closed backend
    connection is now logged at INFO level.  [Yann Ylavic]
  * ) mod_ssl: When dumping the configuration, the existence of
    certificate/key files is no longer tested.  [Joe Orton]
  * ) mod_authn_core: Add expression support to AuthName and AuthType.
    [Graham Leggett]
  * ) mod_ssl: when a proxy connection had handled a request using SSL, an
    error was logged when "SSLProxyEngine" was only configured in the
    location/proxy section and not the overall server. The connection
    continued to work, the error log was in error. Fixed PR66190.
    [Stefan Eissing]
  * ) mod_proxy_hcheck: Re-enable workers in standard ERROR state. PR 66302.
    [Alessandro Cavaliere &lt;alessandro.cavalier7 unibo.it&gt;]
  * ) mod_proxy_hcheck: Detect AJP/CPING support correctly. PR 66300.
    [Alessandro Cavaliere &lt;alessandro.cavalier7 unibo.it&gt;]
  * ) mod_http2: Export mod_http2.h as public header. [Stefan Eissing]
  * ) mod_md: a new directive `MDStoreLocks` can be used on cluster
    setups with a shared file system for `MDStoreDir` to order
    activation of renewed certificates when several cluster nodes are
    restarted at the same time. Store locks are not enabled by default.
    Restored curl_easy cleanup behaviour from v2.4.14 and refactored
    the use of curl_multi for OCSP requests to work with that.
    Fixes &lt;https://github.com/icing/mod_md/issues/293&gt;.
  * ) core: Avoid an overflow on large inputs in ap_is_matchexp.  PR 66033
    [Ruediger Pluem]
  * ) mod_heartmonitor: Allow "HeartbeatMaxServers 0" to use file based
    storage instead of slotmem. Needed after setting
    HeartbeatMaxServers default to the documented value 10 in 2.4.54.
    PR 66131.  [Jérôme Billiras]
  * ) mod_dav: DAVlockDiscovery option to disable WebDAV lock discovery
    This is a game changer for performances if client use PROPFIND a lot,
    PR 66313. [Emmanuel Dreyfus]</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1678276800">- This update fixes the following security issues:
  * CVE-2023-27522 [bsc#1209049]: mod_proxy_uwsgi HTTP response splitting
  * CVE-2023-25690 [bsc#1209047]: HTTP request splitting with mod_rewrite and mod_proxy
- Update to 2.4.56:
  * ) rotatelogs: Add -T flag to allow subsequent rotated logfiles to be
    truncated without the initial logfile being truncated.  [Eric Covener]
  * ) mod_ldap: LDAPConnectionPoolTTL should accept negative values in order to
    allow connections of any age to be reused. Up to now, a negative value
    was handled as an error when parsing the configuration file.  PR 66421.
    [nailyk &lt;bzapache nailyk.fr&gt;, Christophe Jaillet]
  * ) mod_proxy_ajp: Report an error if the AJP backend sends an invalid number
    of headers. [Ruediger Pluem]
  * ) mod_md:
  - Enabling ED25519 support and certificate transparency information when
    building with libressl v3.5.0 and newer. Thanks to Giovanni Bechis.
  - MDChallengeDns01 can now be configured for individual domains.
    Thanks to Jérôme Billiras (@bilhackmac) for the initial PR.
  - Fixed a bug found by Jérôme Billiras (@bilhackmac) that caused the challenge
    teardown not being invoked as it should.
    [Stefan Eissing]
  * ) mod_http2: client resets of HTTP/2 streams led to unwanted 500 errors
    reported in access logs and error documents. The processing of the
    reset was correct, only unneccesary reporting was caused.
    [Stefan Eissing]
  * ) mod_proxy_uwsgi: Stricter backend HTTP response parsing/validation.
    [Yann Ylavic]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1680868800">- Update to 2.4.57:
  * ) mod_proxy: Check before forwarding that a nocanon path has not been
    rewritten with spaces during processing.  [Yann Ylavic]
  * ) mod_proxy: In case that AllowEncodedSlashes is set to NoDecode do not
    double encode encoded slashes in the URL sent by the reverse proxy to the
    backend. [Ruediger Pluem]
  * ) mod_http2: fixed a crash during connection termination. See PR 66539.
    [Stefan Eissing]
  * ) mod_rewrite: Fix a 2.4.56 regression for substitutions ending
    in a question mark. PR66547. [Eric Covener]
  * ) mod_rewrite: Add "BCTLS" and "BNE" RewriteRule flags. Re-allow encoded
    characters on redirections without the "NE" flag.
    [Yann Ylavic, Eric Covener]
  * ) mod_proxy: Fix double encoding of the uri-path of the request forwarded
    to the origin server, when using mapping=encoded|servlet.  [Yann Ylavic]
  * ) mod_mime: Do not match the extention against possible query string
    parameters in case ProxyPass was used with the nocanon option.
    [Ruediger Pluem]</changelog>
  <changelog author="Dirk Stoecker &lt;opensuse@dstoecker.de&gt;" date="1691236800">- Enable building of mod_md</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1697716800">- Update to 2.4.58:
  * ) SECURITY: CVE-2023-45802: Apache HTTP Server: HTTP/2 stream
    memory not reclaimed right away on RST (cve.mitre.org)
    When a HTTP/2 stream was reset (RST frame) by a client, there
    was a time window were the request's memory resources were not
    reclaimed immediately. Instead, de-allocation was deferred to
    connection close. A client could send new requests and resets,
    keeping the connection busy and open and causing the memory
    footprint to keep on growing. On connection close, all resources
    were reclaimed, but the process might run out of memory before
    that.
    This was found by the reporter during testing of CVE-2023-44487
    (HTTP/2 Rapid Reset Exploit) with their own test client. During
    "normal" HTTP/2 use, the probability to hit this bug is very
    low. The kept memory would not become noticeable before the
    connection closes or times out.
    Users are recommended to upgrade to version 2.4.58, which fixes
    the issue.
    Credits: Will Dormann of Vul Labs
  * ) SECURITY: CVE-2023-43622: Apache HTTP Server: DoS in HTTP/2 with
    initial windows size 0 (cve.mitre.org)
    An attacker, opening a HTTP/2 connection with an initial window
    size of 0, was able to block handling of that connection
    indefinitely in Apache HTTP Server. This could be used to
    exhaust worker resources in the server, similar to the well
    known "slow loris" attack pattern.
    This has been fixed in version 2.4.58, so that such connection
    are terminated properly after the configured connection timeout.
    This issue affects Apache HTTP Server: from 2.4.55 through
    2.4.57.
    Users are recommended to upgrade to version 2.4.58, which fixes
    the issue.
    Credits: Prof. Sven Dietrich (City University of New York)
  * ) SECURITY: CVE-2023-31122: mod_macro buffer over-read
    (cve.mitre.org)
    Out-of-bounds Read vulnerability in mod_macro of Apache HTTP
    Server.This issue affects Apache HTTP Server: through 2.4.57.
    Credits: David Shoon (github/davidshoon)
  * ) mod_ssl: Silence info log message "SSL Library Error: error:0A000126:
    SSL routines::unexpected eof while reading" when using
    OpenSSL 3 by setting SSL_OP_IGNORE_UNEXPECTED_EOF if
    available. [Rainer Jung]
  * ) mod_http2: improved early cleanup of streams.
    [Stefan Eissing]
  * ) mod_proxy_http2: improved error handling on connection errors while
    response is already underway.
    [Stefan Eissing]
  * ) mod_http2: fixed a bug that could lead to a crash in main connection
    output handling. This occured only when the last request on a HTTP/2
    connection had been processed and the session decided to shut down.
    This could lead to an attempt to send a final GOAWAY while the previous
    write was still in progress. See PR 66646.
    [Stefan Eissing]
  * ) mod_proxy_http2: fix `X-Forward-Host` header to carry the correct value.
    Fixes PR66752.
    [Stefan Eissing]
  * ) mod_http2: added support for bootstrapping WebSockets via HTTP/2, as
    described in RFC 8441. A new directive 'H2WebSockets on|off' has been
    added. The feature is by default not enabled.
    As also discussed in the manual, this feature should work for setups
    using "ProxyPass backend-url upgrade=websocket" without further changes.
    Special server modules for WebSockets will have to be adapted,
    most likely, as the handling if IO events is different with HTTP/2.
    HTTP/2 WebSockets are supported on platforms with native pipes. This
    excludes Windows.
    [Stefan Eissing]
  * ) mod_rewrite: Fix a regression with both a trailing ? and [QSA].
    in OCSP stapling. PR 66672. [Frank Meier &lt;frank.meier ergon.ch&gt;, covener]
  * ) mod_http2: fixed a bug in flushing pending data on an already closed
    connection that could lead to a busy loop, preventing the HTTP/2 session
    to close down successfully. Fixed PR 66624.
    [Stefan Eissing]
  * ) mod_http2: v2.0.15 with the following fixes and improvements
  - New directive 'H2EarlyHint name value' to add headers to a response,
    picked up already when a "103 Early Hints" response is sent. 'name' and
    'value' must comply to the HTTP field restrictions.
    This directive can be repeated several times and header fields of the
    same names add. Sending a 'Link' header with 'preload' relation will
    also cause a HTTP/2 PUSH if enabled and supported by the client.
  - Fixed an issue where requests were not logged and accounted in a timely
    fashion when the connection returns to "keepalive" handling, e.g. when
    the request served was the last outstanding one.
    This led to late appearance in access logs with wrong duration times
    reported.
  - Accurately report the bytes sent for a request in the '%O' Log format.
    This addresses #203, a long outstanding issue where mod_h2 has reported
    numbers over-eagerly from internal buffering and not what has actually
    been placed on the connection.
    The numbers are now the same with and without H2CopyFiles enabled.
    [Stefan Eissing]
  * ) mod_proxy_http2: fix retry handling to not leak temporary errors.
    On detecting that that an existing connection was shutdown by the other
    side, a 503 response leaked even though the request was retried on a
    fresh connection.
    [Stefan Eissing]
  * ) mod_rewrite: Add server directory to include path as mod_rewrite requires
    test_char.h. PR 66571 [Valeria Petrov &lt;valeria.petrov@spinetix.com&gt;]
  * ) mod_http2: new directive `H2ProxyRequests on|off` to enable handling
    of HTTP/2 requests in a forward proxy configuration.
    General forward proxying is enabled via `ProxyRequests`. If the
    HTTP/2 protocol is also enabled for such a server/host, this new
    directive is needed in addition.
    [Stefan Eissing]
  * ) core: Updated conf/mime.types:
  - .js moved from 'application/javascript' to 'text/javascript'
  - .mjs was added as 'text/javascript'
  - add .opus ('audio/ogg')
  - add 'application/vnd.geogebra.slides'
  - add WebAssembly MIME types and extension
    [Mathias Bynens &lt;@mathiasbynens&gt; via PR 318,
    Richard de Boer &lt;richard tubul.net&gt;, Dave Hodder &lt;dmh dmh.org.uk&gt;,
    Zbynek Konecny &lt;zbynek1729 gmail.com&gt;]
  * ) mod_proxy_http2: fixed using the wrong "bucket_alloc" from the backend
    connection when sending data on the frontend one. This caused crashes
    or infinite loops in rare situations.
  * ) mod_proxy_http2: fixed a bug in retry/response handling that could lead
    to wrong status codes or HTTP messages send at the end of response bodies
    exceeding the announced content-length.
  * ) mod_proxy_http2: fix retry handling to not leak temporary errors.
    On detecting that that an existing connection was shutdown by the other
    side, a 503 response leaked even though the request was retried on a
    fresh connection.
  * ) mod_http2: fixed a bug that did cleanup of consumed and pending buckets in
    the wrong order when a bucket_beam was destroyed.
    [Stefan Eissing]
  * ) mod_http2: avoid double chunked-encoding on internal redirects.
    PR 66597 [Yann Ylavic, Stefan Eissing]
  * ) mod_http2: Fix reporting of `Total Accesses` in server-status to not count
    HTTP/2 requests twice. Fixes PR 66801.
    [Stefan Eissing]
  * ) mod_ssl: Fix handling of Certificate Revoked messages
    in OCSP stapling. PR 66626. [&lt;gmoniker gmail.com&gt;]
  * ) mod_http2: fixed a bug in handling of stream timeouts.
    [Stefan Eissing]
  * ) mod_tls: updating to rustls-ffi version 0.9.2 or higher.
    Checking in configure for proper version installed. Code
    fixes for changed clienthello member name.
    [Stefan Eissing]
  * ) mod_md:
  - New directive `MDMatchNames all|servernames` to allow more control over how
    MDomains are matched to VirtualHosts.
  - New directive `MDChallengeDns01Version`. Setting this to `2` will provide
    the command also with the challenge value on `teardown` invocation. In version
    1, the default, only the `setup` invocation gets this parameter.
    Refs #312. Thanks to @domrim for the idea.
  - For Managed Domain in "manual" mode, the checks if all used ServerName and
    ServerAlias are part of the MDomain now reports a warning instead of an error
    (AH10040) when not all names are present.
  - MDChallengeDns01 can now be configured for individual domains.
    Using PR from JÃ©rÃ´me Billiras (@bilhackmac) and adding test case and fixing proper working
  - Fixed a bug found by JÃ©rÃ´me Billiras (@bilhackmac) that caused the challenge
    teardown not being invoked as it should.
  * ) mod_ldap: Avoid performance overhead of APR-util rebind cache for
    OpenLDAP 2.2+.  PR 64414.  [Joe Orton]
  * ) mod_http2: new directive 'H2MaxDataFrameLen n' to limit the maximum
    amount of response body bytes put into a single HTTP/2 DATA frame.
    Setting this to 0 places no limit (but the max size allowed by the
    protocol is observed).
    The module, by default, tries to use the maximum size possible, which is
    somewhat around 16KB. This sets the maximum. When less response data is
    available, smaller frames will be sent.
  * ) mod_md: fixed passing of the server environment variables to programs
    started via MDMessageCmd and MDChallengeDns01 on *nix system.
    See &lt;https://github.com/icing/mod_md/issues/319&gt;.
    [Stefan Eissing]
  * ) mod_dav: Add DavBasePath directive to configure the repository root
    path.  PR 35077.  [Joe Orton]
  * ) mod_alias: Add AliasPreservePath directive to map the full
    path after the alias in a location. [Graham Leggett]
  * ) mod_alias: Add RedirectRelative to allow relative redirect targets to be
    issued as-is. [Eric Covener, Graham Leggett]
  * ) core: Add formats %{z} and %{strftime-format} to ErrorLogFormat, and make
    sure that if the format is configured early enough it applies to every log
    line.  PR 62161.  [Yann Ylavic]
  * ) mod_deflate: Add DeflateAlterETag to control how the ETag
    is modified. The 'NoChange' parameter mimics 2.2.x behavior.
    PR 45023, PR 39727. [Eric Covener]
  * ) core: Optimize send_brigade_nonblocking(). [Yann Ylavic, Christophe Jaillet]
  * ) mod_status: Remove duplicate keys "BusyWorkers" and "IdleWorkers".
    Resolve inconsistency between the previous two occurrences by
    counting workers in state SERVER_GRACEFUL no longer as busy,
    but instead in a new counter "GracefulWorkers" (or on HTML
    view as "workers gracefully restarting"). Also add the graceful
    counter as a new column to the existing HTML per process table
    for async MPMs. PR 63300. [Rainer Jung]</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1706529600">- use grep -E for egrep</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1708430400">- Use %autosetup macro. Allows to eliminate the usage of deprecated
  %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1712232000">- Update to 2.4.59:
  * ) mod_deflate: Fixes and better logging for handling various
    error and edge cases. [Eric Covener, Yann Ylavic, Joe Orton,
    Eric Norris &lt;enorris etsy.com&gt;]
  * ) Add CGIScriptTimeout to mod_cgi. [Eric Covener]
  * ) mod_xml2enc: Tolerate libxml2 2.12.0 and later.  PR 68610
    [ttachi &lt;tachihara AT hotmail.com&gt;]
  * ) mod_slotmem_shm: Use ap_os_is_path_absolute() to make it portable.
    [Jean-Frederic Clere]
  * ) mod_ssl: Use OpenSSL-standard functions to assemble CA
    name lists for SSLCACertificatePath/SSLCADNRequestPath.
    Names will now be consistently sorted. PR 61574.
    [Joe Orton]
  * ) mod_xml2enc: Update check to accept any text/ media type
    or any XML media type per RFC 7303, avoiding
    corruption of Microsoft OOXML formats.  PR 64339.
    [Joseph Heenan &lt;joseph.heenan fintechlabs.io&gt;, Joe Orton]
  * ) mod_http2: v2.0.26 with the following fixes:
  - Fixed `Date` header on requests upgraded from HTTP/1.1 (h2c). Fixes
    &lt;https://github.com/icing/mod_h2/issues/272&gt;.
  - Fixed small memory leak in h2 header bucket free. Thanks to
    Michael Kaufmann for finding this and providing the fix.
  * ) htcacheclean: In -a/-A mode, list all files per subdirectory
    rather than only one. PR 65091.
    [Artem Egorenkov &lt;aegorenkov.91 gmail.com&gt;]
  * ) mod_ssl: SSLProxyMachineCertificateFile/Path may reference files
    which include CA certificates; those CA certs are treated as if
    configured with SSLProxyMachineCertificateChainFile.  [Joe Orton]
  * ) htpasswd, htdbm, dbmmanage: Update help&amp;docs to refer to
    "hashing", rather than "encrypting" passwords.
    [Michele Preziuso &lt;mpreziuso kaosdynamics.com&gt;]
  * ) mod_ssl: Fix build with LibreSSL 2.0.7+. PR 64047.
    [Giovanni Bechis, Yann Ylavic]
  * ) htpasswd: Add support for passwords using SHA-2.  [Joe Orton,
    Yann Ylavic]
  * ) core: Allow mod_env to override system environment vars. [Joe Orton]
  * ) Allow mod_dav_fs to tolerate race conditions between PROPFIND and an
    operation which removes a directory/file between apr_dir_read() and
    apr_stat(). Current behaviour is to abort the connection which seems
    inferior to tolerating (and logging) the error. [Joe Orton]
  * ) mod_ldap: HTML-escape data in the ldap-status handler.
    [Eric Covener, Chamal De Silva]
  * ) mod_ssl: Disable the OpenSSL ENGINE API when OPENSSL_NO_ENGINE is set.
    Allow for "SSLCryptoDevice builtin" if the ENGINE API is not available,
    notably with OpenSSL &gt;= 3.  PR 68080.  [Yann Ylavic, Joe Orton]
  * ) mod_ssl: Improve compatibility with OpenSSL 3, fix build warnings about
    deprecated ENGINE_ API, honor OPENSSL_API_COMPAT setting while defaulting
    to compatibitily with version 1.1.1 (including ENGINEs / SSLCryptoDevice).
    [Yann Ylavic]
  * ) mod_ssl: release memory to the OS when needed. [Giovanni Bechis]
  * ) mod_proxy: Ignore (and warn about) enablereuse=on for ProxyPassMatch when
    some dollar substitution (backreference) happens in the hostname or port
    part of the URL.  [Yann Ylavic]
  * ) mod_proxy: Allow to set a TTL for how long DNS resolutions to backend
    systems are cached. [Yann Ylavic]
  * ) mod_proxy: Add optional third argument for ProxyRemote, which
    configures Basic authentication credentials to pass to the remote
    proxy.  PR 37355.  [Joe Orton]</changelog>
  <changelog author="pgajdos@suse.com" date="1718280000">- added patches [bsc#1226217]
  https://github.com/apache/httpd/pull/444/commits/c2fffd29b0f58bdc9caaaff4fec68e17a676f182
  + apache2-issue-444.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1720094400">- Update to 2.4.61
  * ) SECURITY: CVE-2024-39884: Apache HTTP Server: source code
    disclosure with handlers configured via AddType (cve.mitre.org)
    [boo#1227353]
    A regression in the core of Apache HTTP Server 2.4.60 ignores
    some use of the legacy content-type based configuration of
    handlers.   "AddType" and similar configuration, under some
    circumstances where files are requested indirectly, result in
    source code disclosure of local content. For example, PHP
    scripts may be served instead of interpreted.
    Users are recommended to upgrade to version 2.4.61, which fixes
    this issue.
- Update to 2.4.60
  * ) SECURITY: CVE-2024-39573: Apache HTTP Server: mod_rewrite proxy
    handler substitution (cve.mitre.org) [boo#1227271]
    Potential SSRF in mod_rewrite in Apache HTTP Server 2.4.59 and
    earlier allows an attacker to cause unsafe RewriteRules to
    unexpectedly setup URL's to be handled by mod_proxy.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38477: Apache HTTP Server: Crash resulting in
    Denial of Service in mod_proxy via a malicious request
    (cve.mitre.org) [boo#1227270]
    null pointer dereference in mod_proxy in Apache HTTP Server
    2.4.59 and earlier allows an attacker to crash the server via a
    malicious request.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38476: Apache HTTP Server may use
    exploitable/malicious backend application output to run local
    handlers via internal redirect (cve.mitre.org) [boo#1227269]
    Vulnerability in core of Apache HTTP Server 2.4.59 and earlier
    are vulnerably to information disclosure, SSRF or local script
    execution via backend applications whose response headers are
    malicious or exploitable.
    Note: Some legacy uses of the 'AddType' directive to connect a
    request to a handler must be ported to 'AddHandler' after this fix.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38475: Apache HTTP Server weakness in
    mod_rewrite when first segment of substitution matches
    filesystem path. (cve.mitre.org) [boo#1227268]
    Improper escaping of output in mod_rewrite in Apache HTTP Server
    2.4.59 and earlier allows an attacker to map URLs to filesystem
    locations that are permitted to be served by the server but are
    not intentionally/directly reachable by any URL, resulting in
    code execution or source code disclosure.
    Substitutions in server context that use a backreferences or
    variables as the first segment of the substitution are affected.
    Some unsafe RewiteRules will be broken by this change and the
    rewrite flag "UnsafePrefixStat" can be used to opt back in once
    ensuring the substitution is appropriately constrained.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38474: Apache HTTP Server weakness with
    encoded question marks in backreferences (cve.mitre.org)
    [boo#1227278]
    Substitution encoding issue in mod_rewrite in Apache HTTP Server
    2.4.59 and earlier allows attacker to execute scripts in
    directories permitted by the configuration but not directly
    reachable by any URL or source disclosure of scripts meant to
    only to be executed as CGI.
    Note: Some RewriteRules that capture and substitute unsafely will now
    fail unless rewrite flag "UnsafeAllow3F" is specified.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38473: Apache HTTP Server proxy encoding
    problem (cve.mitre.org) [boo#1227276]
    Encoding problem in mod_proxy in Apache HTTP Server 2.4.59 and
    earlier allows request URLs with incorrect encoding to be sent
    to backend services, potentially bypassing authentication via
    crafted requests.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38472: Apache HTTP Server on WIndows UNC SSRF
    (cve.mitre.org) [boo#1227267]
    SSRF in Apache HTTP Server on Windows allows to potentially leak
    NTML hashes to a malicious server via SSRF and malicious
    requests or content
    Note: Existing configurations that access UNC paths
    will have to configure new directive "UNCList" to allow access
    during request processing.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-36387: Apache HTTP Server: DoS by Null
    pointer in websocket over HTTP/2 (cve.mitre.org) [boo#1227272]
    Serving WebSocket protocol upgrades over a HTTP/2 connection
    could result in a Null Pointer dereference, leading to a crash
    of the server process, degrading performance.
    Credits: Marc Stern (&lt;marc.stern AT approach-cyber.com&gt;)
  * ) mod_proxy: Fix DNS requests and connections closed before the
    configured addressTTL.  BZ 69126.  [Yann Ylavic]
  * ) core: On Linux, log the real thread ID in error logs.  [Joe Orton]
  * ) core: Support zone/scope in IPv6 link-local addresses in Listen and
    VirtualHost directives (requires APR 1.7.x or later).  PR 59396
    [Joe Orton]
  * ) mod_ssl: Reject client-initiated renegotiation with a TLS alert
    (rather than connection closure).  [Joe Orton, Yann Ylavic]
  * ) Updated mime.types.  [Mohamed Akram &lt;mohd.akram outlook.com&gt;,
    Adam Silverstein &lt;adamsilverstein earthboundhosting.com&gt;]
  * ) mod_ssl: Fix a regression that causes the default DH parameters for a key
    no longer set and thus effectively disabling DH ciphers when no explicit
    DH parameters are set. PR 68863 [Ruediger Pluem]
  * ) mod_cgid: Optional support for file descriptor passing, fixing
    error log handling (configure --enable-cgid-fdpassing) on Unix
    platforms. PR 54221.  [Joe Orton]
  * ) mod_cgid/mod_cgi: Distinguish script stderr output clearly in
    error logs.  PR 61980.  [Hank Ibell &lt;hwibell gmail.com&gt;]
  * ) mod_tls: update version of rustls-ffi to v0.13.0.
    [Daniel McCarney (@cpu}]
  * ) mod_md:
  - Using OCSP stapling information to trigger certificate renewals. Proposed
    by @frasertweedale.
  - Added directive `MDCheckInterval` to control how often the server checks
    for detected revocations. Added proposals for configurations in the
    README.md chapter "Revocations".
  - OCSP stapling: accept OCSP responses without a `nextUpdate` entry which is
    allowed in RFC 6960. Treat those as having an update interval of 12 hours.
    Added by @frasertweedale.
  - Adapt OpenSSL usage to changes in their API. By Yann Ylavic.
- removed patches (upstreamed)
  - apache2-issue-444.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- Update to 2.4.62
  * ) SECURITY: CVE-2024-40898: Apache HTTP Server: SSRF with
    mod_rewrite in server/vhost context on Windows (cve.mitre.org)
    [boo#1228098]
    SSRF in Apache HTTP Server on Windows with mod_rewrite in
    server/vhost context, allows to potentially leak NTML hashes to
    a malicious server via SSRF and malicious requests.
    Users are recommended to upgrade to version 2.4.62 which fixes
    this issue.
    Credits: Smi1e (DBAPPSecurity Ltd.)
  * ) SECURITY: CVE-2024-40725: Apache HTTP Server: source code
    disclosure with handlers configured via AddType (cve.mitre.org)
    [boo#1228097]
    A partial fix for  CVE-2024-39884 in the core of Apache HTTP
    Server 2.4.61 ignores some use of the legacy content-type based
    configuration of handlers. "AddType" and similar configuration,
    under some circumstances where files are requested indirectly,
    result in source code disclosure of local content. For example,
    PHP scripts may be served instead of interpreted.
    Users are recommended to upgrade to version 2.4.62, which fixes
    this issue.
  * ) mod_proxy: Fix canonicalisation and FCGI env (PATH_INFO, SCRIPT_NAME) for
    "balancer:" URLs set via SetHandler, also allowing for "unix:" sockets
    with BalancerMember(s).  PR 69168.  [Yann Ylavic]
  * ) mod_proxy: Avoid AH01059 parsing error for SetHandler "unix:" URLs.
    PR 69160 [Yann Ylavic]
  * ) mod_ssl: Fix crashes in PKCS#11 ENGINE support with OpenSSL 3.2.
    [Joe Orton]
  * ) mod_ssl: Add support for loading certs/keys from pkcs11: URIs
    via OpenSSL 3.x providers.  [Ingo Franzki &lt;ifranzki linux.ibm.com&gt;]
  * ) mod_ssl: Restore SSL dumping on trace7 loglevel with OpenSSL &gt;= 3.0.
    [Ruediger Pluem, Yann Ylavic]
  * ) mpm_worker: Fix possible warning (AH00045) about children processes not
    terminating timely.  [Yann Ylavic]</changelog>
  <changelog author="Thorsten Kukuk &lt;kukuk@suse.com&gt;" date="1727697600">- Add /srv/www directories to filelist [bsc#1231027]
  (apache2 will not start since default config uses this directory)</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1730721600">- Explicitly mark start_apache2 as bash-dependent.</changelog>
  <changelog author="Martin Schreiner &lt;martin.schreiner@suse.com&gt;" date="1730808000">- Update httpd-framework to svn1921782.
- Fixes Apache's impact on bsc#1218342.</changelog>
</package>
<package pkgid="9375aad004db2c3a5ca67b8461ac8e5fc0efa1fa14a6351a2352a4f693b41a505a50460fef6710d538efc7f03f04ea18db9fff724a2c43eca00b01a940d784ce" name="apache2-event" arch="src">
  <version epoch="0" ver="2.4.62" rel="3.1"/>
  <changelog author="pgajdos@suse.com" date="1654689600">- update httpd-framework to svn revision 1898917</changelog>
  <changelog author="Stefan Schubert &lt;schubi@intern&gt;" date="1656417600">- Moved logrotate files from user specific directory /etc/logrotate.d
  to vendor specific directory /usr/etc/logrotate.d.</changelog>
  <changelog author="Stefan Schubert &lt;schubi@suse.com&gt;" date="1662033600">- Migration to /usr/etc: Saving user changed configuration files
  in /etc and restoring them while an RPM update.</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1663675200">- Remove references to README.QUICKSTART and point them to
  https://en.opensuse.org/SDB:Apache_installation (bsc#1203573)</changelog>
  <changelog author="Stephan Kulow &lt;coolo@suse.com&gt;" date="1663934400">- The 2.4.54 release brought support for PCRE2, but for that we also
  need to change buildrequires to pcre2-devel</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1670846400">- switch to pkgconfig(zlib) so that alternative providers can be
  used</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1674043200">- This update fixes the following security issues:
  * CVE-2022-37436 [bsc#1207251], mod_proxy backend HTTP response splitting
  * CVE-2022-36760 [bsc#1207250], mod_proxy_ajp Possible request smuggling
  * CVE-2006-20001 [bsc#1207247], mod_dav out of bounds read, or write of zero byte
- Update to 2.4.55:
  * ) SECURITY: CVE-2022-37436: Apache HTTP Server: mod_proxy prior to
    2.4.55 allows a backend to trigger HTTP response splitting
    (cve.mitre.org)
    Prior to Apache HTTP Server 2.4.55, a malicious backend can
    cause the response headers to be truncated early, resulting in
    some headers being incorporated into the response body. If the
    later headers have any security purpose, they will not be
    interpreted by the client.
    Credits: Dimas Fariski Setyawan Putra (@nyxsorcerer)
  * ) SECURITY: CVE-2022-36760: Apache HTTP Server: mod_proxy_ajp
    Possible request smuggling (cve.mitre.org)
    Inconsistent Interpretation of HTTP Requests ('HTTP Request
    Smuggling') vulnerability in mod_proxy_ajp of Apache HTTP Server
    allows an attacker to smuggle requests to the AJP server it
    forwards requests to.  This issue affects Apache HTTP Server
    Apache HTTP Server 2.4 version 2.4.54 and prior versions.
    Credits: ZeddYu_Lu from Qi'anxin Research Institute of Legendsec
    at Qi'anxin Group
  * ) SECURITY: CVE-2006-20001: mod_dav out of  bounds read, or write
    of zero byte (cve.mitre.org)
    A carefully crafted If: request header can cause a memory read,
    or write of a single zero byte, in a pool (heap) memory location
    beyond the header value sent. This could cause the process to
    crash.
    This issue affects Apache HTTP Server 2.4.54 and earlier.
  * ) mod_dav: Open the lock database read-only when possible.
    PR 36636 [Wilson Felipe &lt;wfelipe gmail.com&gt;, manu]
  * ) mod_proxy_http2: apply the standard httpd content type handling
    to responses from the backend, as other proxy modules do. Fixes PR 66391.
    Thanks to Jérôme Billiras for providing the patch.
    [Stefan Eissing]
  * ) mod_dav: mod_dav overrides dav_fs response on PUT failure. PR 35981
    [Basant Kumar Kukreja &lt;basant.kukreja sun.com&gt;, Alejandro Alvarez
    &lt;alejandro.alvarez.ayllon cern.ch&gt;]
  * ) mod_proxy_hcheck: Honor worker timeout settings.  [Yann Ylavic]
  * ) mod_http2: version 2.0.10 of the module, synchronizing changes
    with the gitgub version. This is a partial rewrite of how connections
    and streams are handled.
  - an APR pollset and pipes (where supported) are used to monitor
    the main connection and react to IO for request/response handling.
    This replaces the stuttered timed waits of earlier versions.
  - H2SerializeHeaders directive still exists, but has no longer an effect.
  - Clients that seemingly misbehave still get less resources allocated,
    but ongoing requests are no longer disrupted.
  - Fixed an issue since 1.15.24 that "Server" headers in proxied requests
    were overwritten instead of preserved. [PR by @daum3ns]
  - A regression in v1.15.24 was fixed that could lead to httpd child
    processes not being terminated on a graceful reload or when reaching
    MaxConnectionsPerChild. When unprocessed h2 requests were queued at
    the time, these could stall. See #212.
  - Improved information displayed in 'server-status' for H2 connections when
    Extended Status is enabled. Now one can see the last request that IO
    operations happened on and transferred IO stats are updated as well.
  - When reaching server limits, such as MaxRequestsPerChild, the HTTP/2 connection
    send a GOAWAY frame much too early on new connections, leading to invalid
    protocol state and a client failing the request. See PR65731 at
    &lt;https://bz.apache.org/bugzilla/show_bug.cgi?id=65731&gt;.
    The module now initializes the HTTP/2 protocol correctly and allows the
    client to submit one request before the shutdown via a GOAWAY frame
    is being announced.
  - :scheme pseudo-header values, not matching the
    connection scheme, are forwarded via absolute uris to the
    http protocol processing to preserve semantics of the request.
    Checks on combinations of pseudo-headers values/absence
    have been added as described in RFC 7540. Fixes #230.
  - A bug that prevented trailers (e.g. HEADER frame at the end) to be
    generated in certain cases was fixed. See #233 where it prevented
    gRPC responses to be properly generated.
  - Request and response header values are automatically stripped of leading
    and trialing space/tab characters. This is equivalent behaviour to what
    Apache httpd's http/1.1 parser does.
    The checks for this in nghttp2 v1.50.0+ are disabled.
  - Extensive testing in production done by Alessandro Bianchi (@alexskynet)
    on the v2.0.x versions for stability. Many thanks!
  * ) mod_proxy_http2: fixed #235 by no longer forwarding 'Host:' header when
    request ':authority' is known. Improved test case that did not catch that
    the previous 'fix' was incorrect.
  * ) mod_proxy_hcheck: hcmethod now allows for HTTP/1.1 requests
    using GET11, HEAD11 and/or OPTIONS11. [Jim Jagielski]
  * ) mod_proxy: The AH03408 warning for a forcibly closed backend
    connection is now logged at INFO level.  [Yann Ylavic]
  * ) mod_ssl: When dumping the configuration, the existence of
    certificate/key files is no longer tested.  [Joe Orton]
  * ) mod_authn_core: Add expression support to AuthName and AuthType.
    [Graham Leggett]
  * ) mod_ssl: when a proxy connection had handled a request using SSL, an
    error was logged when "SSLProxyEngine" was only configured in the
    location/proxy section and not the overall server. The connection
    continued to work, the error log was in error. Fixed PR66190.
    [Stefan Eissing]
  * ) mod_proxy_hcheck: Re-enable workers in standard ERROR state. PR 66302.
    [Alessandro Cavaliere &lt;alessandro.cavalier7 unibo.it&gt;]
  * ) mod_proxy_hcheck: Detect AJP/CPING support correctly. PR 66300.
    [Alessandro Cavaliere &lt;alessandro.cavalier7 unibo.it&gt;]
  * ) mod_http2: Export mod_http2.h as public header. [Stefan Eissing]
  * ) mod_md: a new directive `MDStoreLocks` can be used on cluster
    setups with a shared file system for `MDStoreDir` to order
    activation of renewed certificates when several cluster nodes are
    restarted at the same time. Store locks are not enabled by default.
    Restored curl_easy cleanup behaviour from v2.4.14 and refactored
    the use of curl_multi for OCSP requests to work with that.
    Fixes &lt;https://github.com/icing/mod_md/issues/293&gt;.
  * ) core: Avoid an overflow on large inputs in ap_is_matchexp.  PR 66033
    [Ruediger Pluem]
  * ) mod_heartmonitor: Allow "HeartbeatMaxServers 0" to use file based
    storage instead of slotmem. Needed after setting
    HeartbeatMaxServers default to the documented value 10 in 2.4.54.
    PR 66131.  [Jérôme Billiras]
  * ) mod_dav: DAVlockDiscovery option to disable WebDAV lock discovery
    This is a game changer for performances if client use PROPFIND a lot,
    PR 66313. [Emmanuel Dreyfus]</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1678276800">- This update fixes the following security issues:
  * CVE-2023-27522 [bsc#1209049]: mod_proxy_uwsgi HTTP response splitting
  * CVE-2023-25690 [bsc#1209047]: HTTP request splitting with mod_rewrite and mod_proxy
- Update to 2.4.56:
  * ) rotatelogs: Add -T flag to allow subsequent rotated logfiles to be
    truncated without the initial logfile being truncated.  [Eric Covener]
  * ) mod_ldap: LDAPConnectionPoolTTL should accept negative values in order to
    allow connections of any age to be reused. Up to now, a negative value
    was handled as an error when parsing the configuration file.  PR 66421.
    [nailyk &lt;bzapache nailyk.fr&gt;, Christophe Jaillet]
  * ) mod_proxy_ajp: Report an error if the AJP backend sends an invalid number
    of headers. [Ruediger Pluem]
  * ) mod_md:
  - Enabling ED25519 support and certificate transparency information when
    building with libressl v3.5.0 and newer. Thanks to Giovanni Bechis.
  - MDChallengeDns01 can now be configured for individual domains.
    Thanks to Jérôme Billiras (@bilhackmac) for the initial PR.
  - Fixed a bug found by Jérôme Billiras (@bilhackmac) that caused the challenge
    teardown not being invoked as it should.
    [Stefan Eissing]
  * ) mod_http2: client resets of HTTP/2 streams led to unwanted 500 errors
    reported in access logs and error documents. The processing of the
    reset was correct, only unneccesary reporting was caused.
    [Stefan Eissing]
  * ) mod_proxy_uwsgi: Stricter backend HTTP response parsing/validation.
    [Yann Ylavic]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1680868800">- Update to 2.4.57:
  * ) mod_proxy: Check before forwarding that a nocanon path has not been
    rewritten with spaces during processing.  [Yann Ylavic]
  * ) mod_proxy: In case that AllowEncodedSlashes is set to NoDecode do not
    double encode encoded slashes in the URL sent by the reverse proxy to the
    backend. [Ruediger Pluem]
  * ) mod_http2: fixed a crash during connection termination. See PR 66539.
    [Stefan Eissing]
  * ) mod_rewrite: Fix a 2.4.56 regression for substitutions ending
    in a question mark. PR66547. [Eric Covener]
  * ) mod_rewrite: Add "BCTLS" and "BNE" RewriteRule flags. Re-allow encoded
    characters on redirections without the "NE" flag.
    [Yann Ylavic, Eric Covener]
  * ) mod_proxy: Fix double encoding of the uri-path of the request forwarded
    to the origin server, when using mapping=encoded|servlet.  [Yann Ylavic]
  * ) mod_mime: Do not match the extention against possible query string
    parameters in case ProxyPass was used with the nocanon option.
    [Ruediger Pluem]</changelog>
  <changelog author="Dirk Stoecker &lt;opensuse@dstoecker.de&gt;" date="1691236800">- Enable building of mod_md</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1697716800">- Update to 2.4.58:
  * ) SECURITY: CVE-2023-45802: Apache HTTP Server: HTTP/2 stream
    memory not reclaimed right away on RST (cve.mitre.org)
    When a HTTP/2 stream was reset (RST frame) by a client, there
    was a time window were the request's memory resources were not
    reclaimed immediately. Instead, de-allocation was deferred to
    connection close. A client could send new requests and resets,
    keeping the connection busy and open and causing the memory
    footprint to keep on growing. On connection close, all resources
    were reclaimed, but the process might run out of memory before
    that.
    This was found by the reporter during testing of CVE-2023-44487
    (HTTP/2 Rapid Reset Exploit) with their own test client. During
    "normal" HTTP/2 use, the probability to hit this bug is very
    low. The kept memory would not become noticeable before the
    connection closes or times out.
    Users are recommended to upgrade to version 2.4.58, which fixes
    the issue.
    Credits: Will Dormann of Vul Labs
  * ) SECURITY: CVE-2023-43622: Apache HTTP Server: DoS in HTTP/2 with
    initial windows size 0 (cve.mitre.org)
    An attacker, opening a HTTP/2 connection with an initial window
    size of 0, was able to block handling of that connection
    indefinitely in Apache HTTP Server. This could be used to
    exhaust worker resources in the server, similar to the well
    known "slow loris" attack pattern.
    This has been fixed in version 2.4.58, so that such connection
    are terminated properly after the configured connection timeout.
    This issue affects Apache HTTP Server: from 2.4.55 through
    2.4.57.
    Users are recommended to upgrade to version 2.4.58, which fixes
    the issue.
    Credits: Prof. Sven Dietrich (City University of New York)
  * ) SECURITY: CVE-2023-31122: mod_macro buffer over-read
    (cve.mitre.org)
    Out-of-bounds Read vulnerability in mod_macro of Apache HTTP
    Server.This issue affects Apache HTTP Server: through 2.4.57.
    Credits: David Shoon (github/davidshoon)
  * ) mod_ssl: Silence info log message "SSL Library Error: error:0A000126:
    SSL routines::unexpected eof while reading" when using
    OpenSSL 3 by setting SSL_OP_IGNORE_UNEXPECTED_EOF if
    available. [Rainer Jung]
  * ) mod_http2: improved early cleanup of streams.
    [Stefan Eissing]
  * ) mod_proxy_http2: improved error handling on connection errors while
    response is already underway.
    [Stefan Eissing]
  * ) mod_http2: fixed a bug that could lead to a crash in main connection
    output handling. This occured only when the last request on a HTTP/2
    connection had been processed and the session decided to shut down.
    This could lead to an attempt to send a final GOAWAY while the previous
    write was still in progress. See PR 66646.
    [Stefan Eissing]
  * ) mod_proxy_http2: fix `X-Forward-Host` header to carry the correct value.
    Fixes PR66752.
    [Stefan Eissing]
  * ) mod_http2: added support for bootstrapping WebSockets via HTTP/2, as
    described in RFC 8441. A new directive 'H2WebSockets on|off' has been
    added. The feature is by default not enabled.
    As also discussed in the manual, this feature should work for setups
    using "ProxyPass backend-url upgrade=websocket" without further changes.
    Special server modules for WebSockets will have to be adapted,
    most likely, as the handling if IO events is different with HTTP/2.
    HTTP/2 WebSockets are supported on platforms with native pipes. This
    excludes Windows.
    [Stefan Eissing]
  * ) mod_rewrite: Fix a regression with both a trailing ? and [QSA].
    in OCSP stapling. PR 66672. [Frank Meier &lt;frank.meier ergon.ch&gt;, covener]
  * ) mod_http2: fixed a bug in flushing pending data on an already closed
    connection that could lead to a busy loop, preventing the HTTP/2 session
    to close down successfully. Fixed PR 66624.
    [Stefan Eissing]
  * ) mod_http2: v2.0.15 with the following fixes and improvements
  - New directive 'H2EarlyHint name value' to add headers to a response,
    picked up already when a "103 Early Hints" response is sent. 'name' and
    'value' must comply to the HTTP field restrictions.
    This directive can be repeated several times and header fields of the
    same names add. Sending a 'Link' header with 'preload' relation will
    also cause a HTTP/2 PUSH if enabled and supported by the client.
  - Fixed an issue where requests were not logged and accounted in a timely
    fashion when the connection returns to "keepalive" handling, e.g. when
    the request served was the last outstanding one.
    This led to late appearance in access logs with wrong duration times
    reported.
  - Accurately report the bytes sent for a request in the '%O' Log format.
    This addresses #203, a long outstanding issue where mod_h2 has reported
    numbers over-eagerly from internal buffering and not what has actually
    been placed on the connection.
    The numbers are now the same with and without H2CopyFiles enabled.
    [Stefan Eissing]
  * ) mod_proxy_http2: fix retry handling to not leak temporary errors.
    On detecting that that an existing connection was shutdown by the other
    side, a 503 response leaked even though the request was retried on a
    fresh connection.
    [Stefan Eissing]
  * ) mod_rewrite: Add server directory to include path as mod_rewrite requires
    test_char.h. PR 66571 [Valeria Petrov &lt;valeria.petrov@spinetix.com&gt;]
  * ) mod_http2: new directive `H2ProxyRequests on|off` to enable handling
    of HTTP/2 requests in a forward proxy configuration.
    General forward proxying is enabled via `ProxyRequests`. If the
    HTTP/2 protocol is also enabled for such a server/host, this new
    directive is needed in addition.
    [Stefan Eissing]
  * ) core: Updated conf/mime.types:
  - .js moved from 'application/javascript' to 'text/javascript'
  - .mjs was added as 'text/javascript'
  - add .opus ('audio/ogg')
  - add 'application/vnd.geogebra.slides'
  - add WebAssembly MIME types and extension
    [Mathias Bynens &lt;@mathiasbynens&gt; via PR 318,
    Richard de Boer &lt;richard tubul.net&gt;, Dave Hodder &lt;dmh dmh.org.uk&gt;,
    Zbynek Konecny &lt;zbynek1729 gmail.com&gt;]
  * ) mod_proxy_http2: fixed using the wrong "bucket_alloc" from the backend
    connection when sending data on the frontend one. This caused crashes
    or infinite loops in rare situations.
  * ) mod_proxy_http2: fixed a bug in retry/response handling that could lead
    to wrong status codes or HTTP messages send at the end of response bodies
    exceeding the announced content-length.
  * ) mod_proxy_http2: fix retry handling to not leak temporary errors.
    On detecting that that an existing connection was shutdown by the other
    side, a 503 response leaked even though the request was retried on a
    fresh connection.
  * ) mod_http2: fixed a bug that did cleanup of consumed and pending buckets in
    the wrong order when a bucket_beam was destroyed.
    [Stefan Eissing]
  * ) mod_http2: avoid double chunked-encoding on internal redirects.
    PR 66597 [Yann Ylavic, Stefan Eissing]
  * ) mod_http2: Fix reporting of `Total Accesses` in server-status to not count
    HTTP/2 requests twice. Fixes PR 66801.
    [Stefan Eissing]
  * ) mod_ssl: Fix handling of Certificate Revoked messages
    in OCSP stapling. PR 66626. [&lt;gmoniker gmail.com&gt;]
  * ) mod_http2: fixed a bug in handling of stream timeouts.
    [Stefan Eissing]
  * ) mod_tls: updating to rustls-ffi version 0.9.2 or higher.
    Checking in configure for proper version installed. Code
    fixes for changed clienthello member name.
    [Stefan Eissing]
  * ) mod_md:
  - New directive `MDMatchNames all|servernames` to allow more control over how
    MDomains are matched to VirtualHosts.
  - New directive `MDChallengeDns01Version`. Setting this to `2` will provide
    the command also with the challenge value on `teardown` invocation. In version
    1, the default, only the `setup` invocation gets this parameter.
    Refs #312. Thanks to @domrim for the idea.
  - For Managed Domain in "manual" mode, the checks if all used ServerName and
    ServerAlias are part of the MDomain now reports a warning instead of an error
    (AH10040) when not all names are present.
  - MDChallengeDns01 can now be configured for individual domains.
    Using PR from JÃ©rÃ´me Billiras (@bilhackmac) and adding test case and fixing proper working
  - Fixed a bug found by JÃ©rÃ´me Billiras (@bilhackmac) that caused the challenge
    teardown not being invoked as it should.
  * ) mod_ldap: Avoid performance overhead of APR-util rebind cache for
    OpenLDAP 2.2+.  PR 64414.  [Joe Orton]
  * ) mod_http2: new directive 'H2MaxDataFrameLen n' to limit the maximum
    amount of response body bytes put into a single HTTP/2 DATA frame.
    Setting this to 0 places no limit (but the max size allowed by the
    protocol is observed).
    The module, by default, tries to use the maximum size possible, which is
    somewhat around 16KB. This sets the maximum. When less response data is
    available, smaller frames will be sent.
  * ) mod_md: fixed passing of the server environment variables to programs
    started via MDMessageCmd and MDChallengeDns01 on *nix system.
    See &lt;https://github.com/icing/mod_md/issues/319&gt;.
    [Stefan Eissing]
  * ) mod_dav: Add DavBasePath directive to configure the repository root
    path.  PR 35077.  [Joe Orton]
  * ) mod_alias: Add AliasPreservePath directive to map the full
    path after the alias in a location. [Graham Leggett]
  * ) mod_alias: Add RedirectRelative to allow relative redirect targets to be
    issued as-is. [Eric Covener, Graham Leggett]
  * ) core: Add formats %{z} and %{strftime-format} to ErrorLogFormat, and make
    sure that if the format is configured early enough it applies to every log
    line.  PR 62161.  [Yann Ylavic]
  * ) mod_deflate: Add DeflateAlterETag to control how the ETag
    is modified. The 'NoChange' parameter mimics 2.2.x behavior.
    PR 45023, PR 39727. [Eric Covener]
  * ) core: Optimize send_brigade_nonblocking(). [Yann Ylavic, Christophe Jaillet]
  * ) mod_status: Remove duplicate keys "BusyWorkers" and "IdleWorkers".
    Resolve inconsistency between the previous two occurrences by
    counting workers in state SERVER_GRACEFUL no longer as busy,
    but instead in a new counter "GracefulWorkers" (or on HTML
    view as "workers gracefully restarting"). Also add the graceful
    counter as a new column to the existing HTML per process table
    for async MPMs. PR 63300. [Rainer Jung]</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1706529600">- use grep -E for egrep</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1708430400">- Use %autosetup macro. Allows to eliminate the usage of deprecated
  %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1712232000">- Update to 2.4.59:
  * ) mod_deflate: Fixes and better logging for handling various
    error and edge cases. [Eric Covener, Yann Ylavic, Joe Orton,
    Eric Norris &lt;enorris etsy.com&gt;]
  * ) Add CGIScriptTimeout to mod_cgi. [Eric Covener]
  * ) mod_xml2enc: Tolerate libxml2 2.12.0 and later.  PR 68610
    [ttachi &lt;tachihara AT hotmail.com&gt;]
  * ) mod_slotmem_shm: Use ap_os_is_path_absolute() to make it portable.
    [Jean-Frederic Clere]
  * ) mod_ssl: Use OpenSSL-standard functions to assemble CA
    name lists for SSLCACertificatePath/SSLCADNRequestPath.
    Names will now be consistently sorted. PR 61574.
    [Joe Orton]
  * ) mod_xml2enc: Update check to accept any text/ media type
    or any XML media type per RFC 7303, avoiding
    corruption of Microsoft OOXML formats.  PR 64339.
    [Joseph Heenan &lt;joseph.heenan fintechlabs.io&gt;, Joe Orton]
  * ) mod_http2: v2.0.26 with the following fixes:
  - Fixed `Date` header on requests upgraded from HTTP/1.1 (h2c). Fixes
    &lt;https://github.com/icing/mod_h2/issues/272&gt;.
  - Fixed small memory leak in h2 header bucket free. Thanks to
    Michael Kaufmann for finding this and providing the fix.
  * ) htcacheclean: In -a/-A mode, list all files per subdirectory
    rather than only one. PR 65091.
    [Artem Egorenkov &lt;aegorenkov.91 gmail.com&gt;]
  * ) mod_ssl: SSLProxyMachineCertificateFile/Path may reference files
    which include CA certificates; those CA certs are treated as if
    configured with SSLProxyMachineCertificateChainFile.  [Joe Orton]
  * ) htpasswd, htdbm, dbmmanage: Update help&amp;docs to refer to
    "hashing", rather than "encrypting" passwords.
    [Michele Preziuso &lt;mpreziuso kaosdynamics.com&gt;]
  * ) mod_ssl: Fix build with LibreSSL 2.0.7+. PR 64047.
    [Giovanni Bechis, Yann Ylavic]
  * ) htpasswd: Add support for passwords using SHA-2.  [Joe Orton,
    Yann Ylavic]
  * ) core: Allow mod_env to override system environment vars. [Joe Orton]
  * ) Allow mod_dav_fs to tolerate race conditions between PROPFIND and an
    operation which removes a directory/file between apr_dir_read() and
    apr_stat(). Current behaviour is to abort the connection which seems
    inferior to tolerating (and logging) the error. [Joe Orton]
  * ) mod_ldap: HTML-escape data in the ldap-status handler.
    [Eric Covener, Chamal De Silva]
  * ) mod_ssl: Disable the OpenSSL ENGINE API when OPENSSL_NO_ENGINE is set.
    Allow for "SSLCryptoDevice builtin" if the ENGINE API is not available,
    notably with OpenSSL &gt;= 3.  PR 68080.  [Yann Ylavic, Joe Orton]
  * ) mod_ssl: Improve compatibility with OpenSSL 3, fix build warnings about
    deprecated ENGINE_ API, honor OPENSSL_API_COMPAT setting while defaulting
    to compatibitily with version 1.1.1 (including ENGINEs / SSLCryptoDevice).
    [Yann Ylavic]
  * ) mod_ssl: release memory to the OS when needed. [Giovanni Bechis]
  * ) mod_proxy: Ignore (and warn about) enablereuse=on for ProxyPassMatch when
    some dollar substitution (backreference) happens in the hostname or port
    part of the URL.  [Yann Ylavic]
  * ) mod_proxy: Allow to set a TTL for how long DNS resolutions to backend
    systems are cached. [Yann Ylavic]
  * ) mod_proxy: Add optional third argument for ProxyRemote, which
    configures Basic authentication credentials to pass to the remote
    proxy.  PR 37355.  [Joe Orton]</changelog>
  <changelog author="pgajdos@suse.com" date="1718280000">- added patches [bsc#1226217]
  https://github.com/apache/httpd/pull/444/commits/c2fffd29b0f58bdc9caaaff4fec68e17a676f182
  + apache2-issue-444.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1720094400">- Update to 2.4.61
  * ) SECURITY: CVE-2024-39884: Apache HTTP Server: source code
    disclosure with handlers configured via AddType (cve.mitre.org)
    [boo#1227353]
    A regression in the core of Apache HTTP Server 2.4.60 ignores
    some use of the legacy content-type based configuration of
    handlers.   "AddType" and similar configuration, under some
    circumstances where files are requested indirectly, result in
    source code disclosure of local content. For example, PHP
    scripts may be served instead of interpreted.
    Users are recommended to upgrade to version 2.4.61, which fixes
    this issue.
- Update to 2.4.60
  * ) SECURITY: CVE-2024-39573: Apache HTTP Server: mod_rewrite proxy
    handler substitution (cve.mitre.org) [boo#1227271]
    Potential SSRF in mod_rewrite in Apache HTTP Server 2.4.59 and
    earlier allows an attacker to cause unsafe RewriteRules to
    unexpectedly setup URL's to be handled by mod_proxy.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38477: Apache HTTP Server: Crash resulting in
    Denial of Service in mod_proxy via a malicious request
    (cve.mitre.org) [boo#1227270]
    null pointer dereference in mod_proxy in Apache HTTP Server
    2.4.59 and earlier allows an attacker to crash the server via a
    malicious request.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38476: Apache HTTP Server may use
    exploitable/malicious backend application output to run local
    handlers via internal redirect (cve.mitre.org) [boo#1227269]
    Vulnerability in core of Apache HTTP Server 2.4.59 and earlier
    are vulnerably to information disclosure, SSRF or local script
    execution via backend applications whose response headers are
    malicious or exploitable.
    Note: Some legacy uses of the 'AddType' directive to connect a
    request to a handler must be ported to 'AddHandler' after this fix.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38475: Apache HTTP Server weakness in
    mod_rewrite when first segment of substitution matches
    filesystem path. (cve.mitre.org) [boo#1227268]
    Improper escaping of output in mod_rewrite in Apache HTTP Server
    2.4.59 and earlier allows an attacker to map URLs to filesystem
    locations that are permitted to be served by the server but are
    not intentionally/directly reachable by any URL, resulting in
    code execution or source code disclosure.
    Substitutions in server context that use a backreferences or
    variables as the first segment of the substitution are affected.
    Some unsafe RewiteRules will be broken by this change and the
    rewrite flag "UnsafePrefixStat" can be used to opt back in once
    ensuring the substitution is appropriately constrained.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38474: Apache HTTP Server weakness with
    encoded question marks in backreferences (cve.mitre.org)
    [boo#1227278]
    Substitution encoding issue in mod_rewrite in Apache HTTP Server
    2.4.59 and earlier allows attacker to execute scripts in
    directories permitted by the configuration but not directly
    reachable by any URL or source disclosure of scripts meant to
    only to be executed as CGI.
    Note: Some RewriteRules that capture and substitute unsafely will now
    fail unless rewrite flag "UnsafeAllow3F" is specified.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38473: Apache HTTP Server proxy encoding
    problem (cve.mitre.org) [boo#1227276]
    Encoding problem in mod_proxy in Apache HTTP Server 2.4.59 and
    earlier allows request URLs with incorrect encoding to be sent
    to backend services, potentially bypassing authentication via
    crafted requests.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38472: Apache HTTP Server on WIndows UNC SSRF
    (cve.mitre.org) [boo#1227267]
    SSRF in Apache HTTP Server on Windows allows to potentially leak
    NTML hashes to a malicious server via SSRF and malicious
    requests or content
    Note: Existing configurations that access UNC paths
    will have to configure new directive "UNCList" to allow access
    during request processing.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-36387: Apache HTTP Server: DoS by Null
    pointer in websocket over HTTP/2 (cve.mitre.org) [boo#1227272]
    Serving WebSocket protocol upgrades over a HTTP/2 connection
    could result in a Null Pointer dereference, leading to a crash
    of the server process, degrading performance.
    Credits: Marc Stern (&lt;marc.stern AT approach-cyber.com&gt;)
  * ) mod_proxy: Fix DNS requests and connections closed before the
    configured addressTTL.  BZ 69126.  [Yann Ylavic]
  * ) core: On Linux, log the real thread ID in error logs.  [Joe Orton]
  * ) core: Support zone/scope in IPv6 link-local addresses in Listen and
    VirtualHost directives (requires APR 1.7.x or later).  PR 59396
    [Joe Orton]
  * ) mod_ssl: Reject client-initiated renegotiation with a TLS alert
    (rather than connection closure).  [Joe Orton, Yann Ylavic]
  * ) Updated mime.types.  [Mohamed Akram &lt;mohd.akram outlook.com&gt;,
    Adam Silverstein &lt;adamsilverstein earthboundhosting.com&gt;]
  * ) mod_ssl: Fix a regression that causes the default DH parameters for a key
    no longer set and thus effectively disabling DH ciphers when no explicit
    DH parameters are set. PR 68863 [Ruediger Pluem]
  * ) mod_cgid: Optional support for file descriptor passing, fixing
    error log handling (configure --enable-cgid-fdpassing) on Unix
    platforms. PR 54221.  [Joe Orton]
  * ) mod_cgid/mod_cgi: Distinguish script stderr output clearly in
    error logs.  PR 61980.  [Hank Ibell &lt;hwibell gmail.com&gt;]
  * ) mod_tls: update version of rustls-ffi to v0.13.0.
    [Daniel McCarney (@cpu}]
  * ) mod_md:
  - Using OCSP stapling information to trigger certificate renewals. Proposed
    by @frasertweedale.
  - Added directive `MDCheckInterval` to control how often the server checks
    for detected revocations. Added proposals for configurations in the
    README.md chapter "Revocations".
  - OCSP stapling: accept OCSP responses without a `nextUpdate` entry which is
    allowed in RFC 6960. Treat those as having an update interval of 12 hours.
    Added by @frasertweedale.
  - Adapt OpenSSL usage to changes in their API. By Yann Ylavic.
- removed patches (upstreamed)
  - apache2-issue-444.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- Update to 2.4.62
  * ) SECURITY: CVE-2024-40898: Apache HTTP Server: SSRF with
    mod_rewrite in server/vhost context on Windows (cve.mitre.org)
    [boo#1228098]
    SSRF in Apache HTTP Server on Windows with mod_rewrite in
    server/vhost context, allows to potentially leak NTML hashes to
    a malicious server via SSRF and malicious requests.
    Users are recommended to upgrade to version 2.4.62 which fixes
    this issue.
    Credits: Smi1e (DBAPPSecurity Ltd.)
  * ) SECURITY: CVE-2024-40725: Apache HTTP Server: source code
    disclosure with handlers configured via AddType (cve.mitre.org)
    [boo#1228097]
    A partial fix for  CVE-2024-39884 in the core of Apache HTTP
    Server 2.4.61 ignores some use of the legacy content-type based
    configuration of handlers. "AddType" and similar configuration,
    under some circumstances where files are requested indirectly,
    result in source code disclosure of local content. For example,
    PHP scripts may be served instead of interpreted.
    Users are recommended to upgrade to version 2.4.62, which fixes
    this issue.
  * ) mod_proxy: Fix canonicalisation and FCGI env (PATH_INFO, SCRIPT_NAME) for
    "balancer:" URLs set via SetHandler, also allowing for "unix:" sockets
    with BalancerMember(s).  PR 69168.  [Yann Ylavic]
  * ) mod_proxy: Avoid AH01059 parsing error for SetHandler "unix:" URLs.
    PR 69160 [Yann Ylavic]
  * ) mod_ssl: Fix crashes in PKCS#11 ENGINE support with OpenSSL 3.2.
    [Joe Orton]
  * ) mod_ssl: Add support for loading certs/keys from pkcs11: URIs
    via OpenSSL 3.x providers.  [Ingo Franzki &lt;ifranzki linux.ibm.com&gt;]
  * ) mod_ssl: Restore SSL dumping on trace7 loglevel with OpenSSL &gt;= 3.0.
    [Ruediger Pluem, Yann Ylavic]
  * ) mpm_worker: Fix possible warning (AH00045) about children processes not
    terminating timely.  [Yann Ylavic]</changelog>
  <changelog author="Thorsten Kukuk &lt;kukuk@suse.com&gt;" date="1727697600">- Add /srv/www directories to filelist [bsc#1231027]
  (apache2 will not start since default config uses this directory)</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1730721600">- Explicitly mark start_apache2 as bash-dependent.</changelog>
  <changelog author="Martin Schreiner &lt;martin.schreiner@suse.com&gt;" date="1730808000">- Update httpd-framework to svn1921782.
- Fixes Apache's impact on bsc#1218342.</changelog>
</package>
<package pkgid="dcb42d386d981edce6794ce2abe7dc48b85f9a38ade134300d88c6613548f29f6a09e992a210daeb67424d65369c297489854f0b1ebbe274bffa872b8ba3af1e" name="apache2-event" arch="x86_64">
  <version epoch="0" ver="2.4.62" rel="3.1"/>
  <changelog author="pgajdos@suse.com" date="1654689600">- update httpd-framework to svn revision 1898917</changelog>
  <changelog author="Stefan Schubert &lt;schubi@intern&gt;" date="1656417600">- Moved logrotate files from user specific directory /etc/logrotate.d
  to vendor specific directory /usr/etc/logrotate.d.</changelog>
  <changelog author="Stefan Schubert &lt;schubi@suse.com&gt;" date="1662033600">- Migration to /usr/etc: Saving user changed configuration files
  in /etc and restoring them while an RPM update.</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1663675200">- Remove references to README.QUICKSTART and point them to
  https://en.opensuse.org/SDB:Apache_installation (bsc#1203573)</changelog>
  <changelog author="Stephan Kulow &lt;coolo@suse.com&gt;" date="1663934400">- The 2.4.54 release brought support for PCRE2, but for that we also
  need to change buildrequires to pcre2-devel</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1670846400">- switch to pkgconfig(zlib) so that alternative providers can be
  used</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1674043200">- This update fixes the following security issues:
  * CVE-2022-37436 [bsc#1207251], mod_proxy backend HTTP response splitting
  * CVE-2022-36760 [bsc#1207250], mod_proxy_ajp Possible request smuggling
  * CVE-2006-20001 [bsc#1207247], mod_dav out of bounds read, or write of zero byte
- Update to 2.4.55:
  * ) SECURITY: CVE-2022-37436: Apache HTTP Server: mod_proxy prior to
    2.4.55 allows a backend to trigger HTTP response splitting
    (cve.mitre.org)
    Prior to Apache HTTP Server 2.4.55, a malicious backend can
    cause the response headers to be truncated early, resulting in
    some headers being incorporated into the response body. If the
    later headers have any security purpose, they will not be
    interpreted by the client.
    Credits: Dimas Fariski Setyawan Putra (@nyxsorcerer)
  * ) SECURITY: CVE-2022-36760: Apache HTTP Server: mod_proxy_ajp
    Possible request smuggling (cve.mitre.org)
    Inconsistent Interpretation of HTTP Requests ('HTTP Request
    Smuggling') vulnerability in mod_proxy_ajp of Apache HTTP Server
    allows an attacker to smuggle requests to the AJP server it
    forwards requests to.  This issue affects Apache HTTP Server
    Apache HTTP Server 2.4 version 2.4.54 and prior versions.
    Credits: ZeddYu_Lu from Qi'anxin Research Institute of Legendsec
    at Qi'anxin Group
  * ) SECURITY: CVE-2006-20001: mod_dav out of  bounds read, or write
    of zero byte (cve.mitre.org)
    A carefully crafted If: request header can cause a memory read,
    or write of a single zero byte, in a pool (heap) memory location
    beyond the header value sent. This could cause the process to
    crash.
    This issue affects Apache HTTP Server 2.4.54 and earlier.
  * ) mod_dav: Open the lock database read-only when possible.
    PR 36636 [Wilson Felipe &lt;wfelipe gmail.com&gt;, manu]
  * ) mod_proxy_http2: apply the standard httpd content type handling
    to responses from the backend, as other proxy modules do. Fixes PR 66391.
    Thanks to Jérôme Billiras for providing the patch.
    [Stefan Eissing]
  * ) mod_dav: mod_dav overrides dav_fs response on PUT failure. PR 35981
    [Basant Kumar Kukreja &lt;basant.kukreja sun.com&gt;, Alejandro Alvarez
    &lt;alejandro.alvarez.ayllon cern.ch&gt;]
  * ) mod_proxy_hcheck: Honor worker timeout settings.  [Yann Ylavic]
  * ) mod_http2: version 2.0.10 of the module, synchronizing changes
    with the gitgub version. This is a partial rewrite of how connections
    and streams are handled.
  - an APR pollset and pipes (where supported) are used to monitor
    the main connection and react to IO for request/response handling.
    This replaces the stuttered timed waits of earlier versions.
  - H2SerializeHeaders directive still exists, but has no longer an effect.
  - Clients that seemingly misbehave still get less resources allocated,
    but ongoing requests are no longer disrupted.
  - Fixed an issue since 1.15.24 that "Server" headers in proxied requests
    were overwritten instead of preserved. [PR by @daum3ns]
  - A regression in v1.15.24 was fixed that could lead to httpd child
    processes not being terminated on a graceful reload or when reaching
    MaxConnectionsPerChild. When unprocessed h2 requests were queued at
    the time, these could stall. See #212.
  - Improved information displayed in 'server-status' for H2 connections when
    Extended Status is enabled. Now one can see the last request that IO
    operations happened on and transferred IO stats are updated as well.
  - When reaching server limits, such as MaxRequestsPerChild, the HTTP/2 connection
    send a GOAWAY frame much too early on new connections, leading to invalid
    protocol state and a client failing the request. See PR65731 at
    &lt;https://bz.apache.org/bugzilla/show_bug.cgi?id=65731&gt;.
    The module now initializes the HTTP/2 protocol correctly and allows the
    client to submit one request before the shutdown via a GOAWAY frame
    is being announced.
  - :scheme pseudo-header values, not matching the
    connection scheme, are forwarded via absolute uris to the
    http protocol processing to preserve semantics of the request.
    Checks on combinations of pseudo-headers values/absence
    have been added as described in RFC 7540. Fixes #230.
  - A bug that prevented trailers (e.g. HEADER frame at the end) to be
    generated in certain cases was fixed. See #233 where it prevented
    gRPC responses to be properly generated.
  - Request and response header values are automatically stripped of leading
    and trialing space/tab characters. This is equivalent behaviour to what
    Apache httpd's http/1.1 parser does.
    The checks for this in nghttp2 v1.50.0+ are disabled.
  - Extensive testing in production done by Alessandro Bianchi (@alexskynet)
    on the v2.0.x versions for stability. Many thanks!
  * ) mod_proxy_http2: fixed #235 by no longer forwarding 'Host:' header when
    request ':authority' is known. Improved test case that did not catch that
    the previous 'fix' was incorrect.
  * ) mod_proxy_hcheck: hcmethod now allows for HTTP/1.1 requests
    using GET11, HEAD11 and/or OPTIONS11. [Jim Jagielski]
  * ) mod_proxy: The AH03408 warning for a forcibly closed backend
    connection is now logged at INFO level.  [Yann Ylavic]
  * ) mod_ssl: When dumping the configuration, the existence of
    certificate/key files is no longer tested.  [Joe Orton]
  * ) mod_authn_core: Add expression support to AuthName and AuthType.
    [Graham Leggett]
  * ) mod_ssl: when a proxy connection had handled a request using SSL, an
    error was logged when "SSLProxyEngine" was only configured in the
    location/proxy section and not the overall server. The connection
    continued to work, the error log was in error. Fixed PR66190.
    [Stefan Eissing]
  * ) mod_proxy_hcheck: Re-enable workers in standard ERROR state. PR 66302.
    [Alessandro Cavaliere &lt;alessandro.cavalier7 unibo.it&gt;]
  * ) mod_proxy_hcheck: Detect AJP/CPING support correctly. PR 66300.
    [Alessandro Cavaliere &lt;alessandro.cavalier7 unibo.it&gt;]
  * ) mod_http2: Export mod_http2.h as public header. [Stefan Eissing]
  * ) mod_md: a new directive `MDStoreLocks` can be used on cluster
    setups with a shared file system for `MDStoreDir` to order
    activation of renewed certificates when several cluster nodes are
    restarted at the same time. Store locks are not enabled by default.
    Restored curl_easy cleanup behaviour from v2.4.14 and refactored
    the use of curl_multi for OCSP requests to work with that.
    Fixes &lt;https://github.com/icing/mod_md/issues/293&gt;.
  * ) core: Avoid an overflow on large inputs in ap_is_matchexp.  PR 66033
    [Ruediger Pluem]
  * ) mod_heartmonitor: Allow "HeartbeatMaxServers 0" to use file based
    storage instead of slotmem. Needed after setting
    HeartbeatMaxServers default to the documented value 10 in 2.4.54.
    PR 66131.  [Jérôme Billiras]
  * ) mod_dav: DAVlockDiscovery option to disable WebDAV lock discovery
    This is a game changer for performances if client use PROPFIND a lot,
    PR 66313. [Emmanuel Dreyfus]</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1678276800">- This update fixes the following security issues:
  * CVE-2023-27522 [bsc#1209049]: mod_proxy_uwsgi HTTP response splitting
  * CVE-2023-25690 [bsc#1209047]: HTTP request splitting with mod_rewrite and mod_proxy
- Update to 2.4.56:
  * ) rotatelogs: Add -T flag to allow subsequent rotated logfiles to be
    truncated without the initial logfile being truncated.  [Eric Covener]
  * ) mod_ldap: LDAPConnectionPoolTTL should accept negative values in order to
    allow connections of any age to be reused. Up to now, a negative value
    was handled as an error when parsing the configuration file.  PR 66421.
    [nailyk &lt;bzapache nailyk.fr&gt;, Christophe Jaillet]
  * ) mod_proxy_ajp: Report an error if the AJP backend sends an invalid number
    of headers. [Ruediger Pluem]
  * ) mod_md:
  - Enabling ED25519 support and certificate transparency information when
    building with libressl v3.5.0 and newer. Thanks to Giovanni Bechis.
  - MDChallengeDns01 can now be configured for individual domains.
    Thanks to Jérôme Billiras (@bilhackmac) for the initial PR.
  - Fixed a bug found by Jérôme Billiras (@bilhackmac) that caused the challenge
    teardown not being invoked as it should.
    [Stefan Eissing]
  * ) mod_http2: client resets of HTTP/2 streams led to unwanted 500 errors
    reported in access logs and error documents. The processing of the
    reset was correct, only unneccesary reporting was caused.
    [Stefan Eissing]
  * ) mod_proxy_uwsgi: Stricter backend HTTP response parsing/validation.
    [Yann Ylavic]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1680868800">- Update to 2.4.57:
  * ) mod_proxy: Check before forwarding that a nocanon path has not been
    rewritten with spaces during processing.  [Yann Ylavic]
  * ) mod_proxy: In case that AllowEncodedSlashes is set to NoDecode do not
    double encode encoded slashes in the URL sent by the reverse proxy to the
    backend. [Ruediger Pluem]
  * ) mod_http2: fixed a crash during connection termination. See PR 66539.
    [Stefan Eissing]
  * ) mod_rewrite: Fix a 2.4.56 regression for substitutions ending
    in a question mark. PR66547. [Eric Covener]
  * ) mod_rewrite: Add "BCTLS" and "BNE" RewriteRule flags. Re-allow encoded
    characters on redirections without the "NE" flag.
    [Yann Ylavic, Eric Covener]
  * ) mod_proxy: Fix double encoding of the uri-path of the request forwarded
    to the origin server, when using mapping=encoded|servlet.  [Yann Ylavic]
  * ) mod_mime: Do not match the extention against possible query string
    parameters in case ProxyPass was used with the nocanon option.
    [Ruediger Pluem]</changelog>
  <changelog author="Dirk Stoecker &lt;opensuse@dstoecker.de&gt;" date="1691236800">- Enable building of mod_md</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1697716800">- Update to 2.4.58:
  * ) SECURITY: CVE-2023-45802: Apache HTTP Server: HTTP/2 stream
    memory not reclaimed right away on RST (cve.mitre.org)
    When a HTTP/2 stream was reset (RST frame) by a client, there
    was a time window were the request's memory resources were not
    reclaimed immediately. Instead, de-allocation was deferred to
    connection close. A client could send new requests and resets,
    keeping the connection busy and open and causing the memory
    footprint to keep on growing. On connection close, all resources
    were reclaimed, but the process might run out of memory before
    that.
    This was found by the reporter during testing of CVE-2023-44487
    (HTTP/2 Rapid Reset Exploit) with their own test client. During
    "normal" HTTP/2 use, the probability to hit this bug is very
    low. The kept memory would not become noticeable before the
    connection closes or times out.
    Users are recommended to upgrade to version 2.4.58, which fixes
    the issue.
    Credits: Will Dormann of Vul Labs
  * ) SECURITY: CVE-2023-43622: Apache HTTP Server: DoS in HTTP/2 with
    initial windows size 0 (cve.mitre.org)
    An attacker, opening a HTTP/2 connection with an initial window
    size of 0, was able to block handling of that connection
    indefinitely in Apache HTTP Server. This could be used to
    exhaust worker resources in the server, similar to the well
    known "slow loris" attack pattern.
    This has been fixed in version 2.4.58, so that such connection
    are terminated properly after the configured connection timeout.
    This issue affects Apache HTTP Server: from 2.4.55 through
    2.4.57.
    Users are recommended to upgrade to version 2.4.58, which fixes
    the issue.
    Credits: Prof. Sven Dietrich (City University of New York)
  * ) SECURITY: CVE-2023-31122: mod_macro buffer over-read
    (cve.mitre.org)
    Out-of-bounds Read vulnerability in mod_macro of Apache HTTP
    Server.This issue affects Apache HTTP Server: through 2.4.57.
    Credits: David Shoon (github/davidshoon)
  * ) mod_ssl: Silence info log message "SSL Library Error: error:0A000126:
    SSL routines::unexpected eof while reading" when using
    OpenSSL 3 by setting SSL_OP_IGNORE_UNEXPECTED_EOF if
    available. [Rainer Jung]
  * ) mod_http2: improved early cleanup of streams.
    [Stefan Eissing]
  * ) mod_proxy_http2: improved error handling on connection errors while
    response is already underway.
    [Stefan Eissing]
  * ) mod_http2: fixed a bug that could lead to a crash in main connection
    output handling. This occured only when the last request on a HTTP/2
    connection had been processed and the session decided to shut down.
    This could lead to an attempt to send a final GOAWAY while the previous
    write was still in progress. See PR 66646.
    [Stefan Eissing]
  * ) mod_proxy_http2: fix `X-Forward-Host` header to carry the correct value.
    Fixes PR66752.
    [Stefan Eissing]
  * ) mod_http2: added support for bootstrapping WebSockets via HTTP/2, as
    described in RFC 8441. A new directive 'H2WebSockets on|off' has been
    added. The feature is by default not enabled.
    As also discussed in the manual, this feature should work for setups
    using "ProxyPass backend-url upgrade=websocket" without further changes.
    Special server modules for WebSockets will have to be adapted,
    most likely, as the handling if IO events is different with HTTP/2.
    HTTP/2 WebSockets are supported on platforms with native pipes. This
    excludes Windows.
    [Stefan Eissing]
  * ) mod_rewrite: Fix a regression with both a trailing ? and [QSA].
    in OCSP stapling. PR 66672. [Frank Meier &lt;frank.meier ergon.ch&gt;, covener]
  * ) mod_http2: fixed a bug in flushing pending data on an already closed
    connection that could lead to a busy loop, preventing the HTTP/2 session
    to close down successfully. Fixed PR 66624.
    [Stefan Eissing]
  * ) mod_http2: v2.0.15 with the following fixes and improvements
  - New directive 'H2EarlyHint name value' to add headers to a response,
    picked up already when a "103 Early Hints" response is sent. 'name' and
    'value' must comply to the HTTP field restrictions.
    This directive can be repeated several times and header fields of the
    same names add. Sending a 'Link' header with 'preload' relation will
    also cause a HTTP/2 PUSH if enabled and supported by the client.
  - Fixed an issue where requests were not logged and accounted in a timely
    fashion when the connection returns to "keepalive" handling, e.g. when
    the request served was the last outstanding one.
    This led to late appearance in access logs with wrong duration times
    reported.
  - Accurately report the bytes sent for a request in the '%O' Log format.
    This addresses #203, a long outstanding issue where mod_h2 has reported
    numbers over-eagerly from internal buffering and not what has actually
    been placed on the connection.
    The numbers are now the same with and without H2CopyFiles enabled.
    [Stefan Eissing]
  * ) mod_proxy_http2: fix retry handling to not leak temporary errors.
    On detecting that that an existing connection was shutdown by the other
    side, a 503 response leaked even though the request was retried on a
    fresh connection.
    [Stefan Eissing]
  * ) mod_rewrite: Add server directory to include path as mod_rewrite requires
    test_char.h. PR 66571 [Valeria Petrov &lt;valeria.petrov@spinetix.com&gt;]
  * ) mod_http2: new directive `H2ProxyRequests on|off` to enable handling
    of HTTP/2 requests in a forward proxy configuration.
    General forward proxying is enabled via `ProxyRequests`. If the
    HTTP/2 protocol is also enabled for such a server/host, this new
    directive is needed in addition.
    [Stefan Eissing]
  * ) core: Updated conf/mime.types:
  - .js moved from 'application/javascript' to 'text/javascript'
  - .mjs was added as 'text/javascript'
  - add .opus ('audio/ogg')
  - add 'application/vnd.geogebra.slides'
  - add WebAssembly MIME types and extension
    [Mathias Bynens &lt;@mathiasbynens&gt; via PR 318,
    Richard de Boer &lt;richard tubul.net&gt;, Dave Hodder &lt;dmh dmh.org.uk&gt;,
    Zbynek Konecny &lt;zbynek1729 gmail.com&gt;]
  * ) mod_proxy_http2: fixed using the wrong "bucket_alloc" from the backend
    connection when sending data on the frontend one. This caused crashes
    or infinite loops in rare situations.
  * ) mod_proxy_http2: fixed a bug in retry/response handling that could lead
    to wrong status codes or HTTP messages send at the end of response bodies
    exceeding the announced content-length.
  * ) mod_proxy_http2: fix retry handling to not leak temporary errors.
    On detecting that that an existing connection was shutdown by the other
    side, a 503 response leaked even though the request was retried on a
    fresh connection.
  * ) mod_http2: fixed a bug that did cleanup of consumed and pending buckets in
    the wrong order when a bucket_beam was destroyed.
    [Stefan Eissing]
  * ) mod_http2: avoid double chunked-encoding on internal redirects.
    PR 66597 [Yann Ylavic, Stefan Eissing]
  * ) mod_http2: Fix reporting of `Total Accesses` in server-status to not count
    HTTP/2 requests twice. Fixes PR 66801.
    [Stefan Eissing]
  * ) mod_ssl: Fix handling of Certificate Revoked messages
    in OCSP stapling. PR 66626. [&lt;gmoniker gmail.com&gt;]
  * ) mod_http2: fixed a bug in handling of stream timeouts.
    [Stefan Eissing]
  * ) mod_tls: updating to rustls-ffi version 0.9.2 or higher.
    Checking in configure for proper version installed. Code
    fixes for changed clienthello member name.
    [Stefan Eissing]
  * ) mod_md:
  - New directive `MDMatchNames all|servernames` to allow more control over how
    MDomains are matched to VirtualHosts.
  - New directive `MDChallengeDns01Version`. Setting this to `2` will provide
    the command also with the challenge value on `teardown` invocation. In version
    1, the default, only the `setup` invocation gets this parameter.
    Refs #312. Thanks to @domrim for the idea.
  - For Managed Domain in "manual" mode, the checks if all used ServerName and
    ServerAlias are part of the MDomain now reports a warning instead of an error
    (AH10040) when not all names are present.
  - MDChallengeDns01 can now be configured for individual domains.
    Using PR from JÃ©rÃ´me Billiras (@bilhackmac) and adding test case and fixing proper working
  - Fixed a bug found by JÃ©rÃ´me Billiras (@bilhackmac) that caused the challenge
    teardown not being invoked as it should.
  * ) mod_ldap: Avoid performance overhead of APR-util rebind cache for
    OpenLDAP 2.2+.  PR 64414.  [Joe Orton]
  * ) mod_http2: new directive 'H2MaxDataFrameLen n' to limit the maximum
    amount of response body bytes put into a single HTTP/2 DATA frame.
    Setting this to 0 places no limit (but the max size allowed by the
    protocol is observed).
    The module, by default, tries to use the maximum size possible, which is
    somewhat around 16KB. This sets the maximum. When less response data is
    available, smaller frames will be sent.
  * ) mod_md: fixed passing of the server environment variables to programs
    started via MDMessageCmd and MDChallengeDns01 on *nix system.
    See &lt;https://github.com/icing/mod_md/issues/319&gt;.
    [Stefan Eissing]
  * ) mod_dav: Add DavBasePath directive to configure the repository root
    path.  PR 35077.  [Joe Orton]
  * ) mod_alias: Add AliasPreservePath directive to map the full
    path after the alias in a location. [Graham Leggett]
  * ) mod_alias: Add RedirectRelative to allow relative redirect targets to be
    issued as-is. [Eric Covener, Graham Leggett]
  * ) core: Add formats %{z} and %{strftime-format} to ErrorLogFormat, and make
    sure that if the format is configured early enough it applies to every log
    line.  PR 62161.  [Yann Ylavic]
  * ) mod_deflate: Add DeflateAlterETag to control how the ETag
    is modified. The 'NoChange' parameter mimics 2.2.x behavior.
    PR 45023, PR 39727. [Eric Covener]
  * ) core: Optimize send_brigade_nonblocking(). [Yann Ylavic, Christophe Jaillet]
  * ) mod_status: Remove duplicate keys "BusyWorkers" and "IdleWorkers".
    Resolve inconsistency between the previous two occurrences by
    counting workers in state SERVER_GRACEFUL no longer as busy,
    but instead in a new counter "GracefulWorkers" (or on HTML
    view as "workers gracefully restarting"). Also add the graceful
    counter as a new column to the existing HTML per process table
    for async MPMs. PR 63300. [Rainer Jung]</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1706529600">- use grep -E for egrep</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1708430400">- Use %autosetup macro. Allows to eliminate the usage of deprecated
  %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1712232000">- Update to 2.4.59:
  * ) mod_deflate: Fixes and better logging for handling various
    error and edge cases. [Eric Covener, Yann Ylavic, Joe Orton,
    Eric Norris &lt;enorris etsy.com&gt;]
  * ) Add CGIScriptTimeout to mod_cgi. [Eric Covener]
  * ) mod_xml2enc: Tolerate libxml2 2.12.0 and later.  PR 68610
    [ttachi &lt;tachihara AT hotmail.com&gt;]
  * ) mod_slotmem_shm: Use ap_os_is_path_absolute() to make it portable.
    [Jean-Frederic Clere]
  * ) mod_ssl: Use OpenSSL-standard functions to assemble CA
    name lists for SSLCACertificatePath/SSLCADNRequestPath.
    Names will now be consistently sorted. PR 61574.
    [Joe Orton]
  * ) mod_xml2enc: Update check to accept any text/ media type
    or any XML media type per RFC 7303, avoiding
    corruption of Microsoft OOXML formats.  PR 64339.
    [Joseph Heenan &lt;joseph.heenan fintechlabs.io&gt;, Joe Orton]
  * ) mod_http2: v2.0.26 with the following fixes:
  - Fixed `Date` header on requests upgraded from HTTP/1.1 (h2c). Fixes
    &lt;https://github.com/icing/mod_h2/issues/272&gt;.
  - Fixed small memory leak in h2 header bucket free. Thanks to
    Michael Kaufmann for finding this and providing the fix.
  * ) htcacheclean: In -a/-A mode, list all files per subdirectory
    rather than only one. PR 65091.
    [Artem Egorenkov &lt;aegorenkov.91 gmail.com&gt;]
  * ) mod_ssl: SSLProxyMachineCertificateFile/Path may reference files
    which include CA certificates; those CA certs are treated as if
    configured with SSLProxyMachineCertificateChainFile.  [Joe Orton]
  * ) htpasswd, htdbm, dbmmanage: Update help&amp;docs to refer to
    "hashing", rather than "encrypting" passwords.
    [Michele Preziuso &lt;mpreziuso kaosdynamics.com&gt;]
  * ) mod_ssl: Fix build with LibreSSL 2.0.7+. PR 64047.
    [Giovanni Bechis, Yann Ylavic]
  * ) htpasswd: Add support for passwords using SHA-2.  [Joe Orton,
    Yann Ylavic]
  * ) core: Allow mod_env to override system environment vars. [Joe Orton]
  * ) Allow mod_dav_fs to tolerate race conditions between PROPFIND and an
    operation which removes a directory/file between apr_dir_read() and
    apr_stat(). Current behaviour is to abort the connection which seems
    inferior to tolerating (and logging) the error. [Joe Orton]
  * ) mod_ldap: HTML-escape data in the ldap-status handler.
    [Eric Covener, Chamal De Silva]
  * ) mod_ssl: Disable the OpenSSL ENGINE API when OPENSSL_NO_ENGINE is set.
    Allow for "SSLCryptoDevice builtin" if the ENGINE API is not available,
    notably with OpenSSL &gt;= 3.  PR 68080.  [Yann Ylavic, Joe Orton]
  * ) mod_ssl: Improve compatibility with OpenSSL 3, fix build warnings about
    deprecated ENGINE_ API, honor OPENSSL_API_COMPAT setting while defaulting
    to compatibitily with version 1.1.1 (including ENGINEs / SSLCryptoDevice).
    [Yann Ylavic]
  * ) mod_ssl: release memory to the OS when needed. [Giovanni Bechis]
  * ) mod_proxy: Ignore (and warn about) enablereuse=on for ProxyPassMatch when
    some dollar substitution (backreference) happens in the hostname or port
    part of the URL.  [Yann Ylavic]
  * ) mod_proxy: Allow to set a TTL for how long DNS resolutions to backend
    systems are cached. [Yann Ylavic]
  * ) mod_proxy: Add optional third argument for ProxyRemote, which
    configures Basic authentication credentials to pass to the remote
    proxy.  PR 37355.  [Joe Orton]</changelog>
  <changelog author="pgajdos@suse.com" date="1718280000">- added patches [bsc#1226217]
  https://github.com/apache/httpd/pull/444/commits/c2fffd29b0f58bdc9caaaff4fec68e17a676f182
  + apache2-issue-444.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1720094400">- Update to 2.4.61
  * ) SECURITY: CVE-2024-39884: Apache HTTP Server: source code
    disclosure with handlers configured via AddType (cve.mitre.org)
    [boo#1227353]
    A regression in the core of Apache HTTP Server 2.4.60 ignores
    some use of the legacy content-type based configuration of
    handlers.   "AddType" and similar configuration, under some
    circumstances where files are requested indirectly, result in
    source code disclosure of local content. For example, PHP
    scripts may be served instead of interpreted.
    Users are recommended to upgrade to version 2.4.61, which fixes
    this issue.
- Update to 2.4.60
  * ) SECURITY: CVE-2024-39573: Apache HTTP Server: mod_rewrite proxy
    handler substitution (cve.mitre.org) [boo#1227271]
    Potential SSRF in mod_rewrite in Apache HTTP Server 2.4.59 and
    earlier allows an attacker to cause unsafe RewriteRules to
    unexpectedly setup URL's to be handled by mod_proxy.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38477: Apache HTTP Server: Crash resulting in
    Denial of Service in mod_proxy via a malicious request
    (cve.mitre.org) [boo#1227270]
    null pointer dereference in mod_proxy in Apache HTTP Server
    2.4.59 and earlier allows an attacker to crash the server via a
    malicious request.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38476: Apache HTTP Server may use
    exploitable/malicious backend application output to run local
    handlers via internal redirect (cve.mitre.org) [boo#1227269]
    Vulnerability in core of Apache HTTP Server 2.4.59 and earlier
    are vulnerably to information disclosure, SSRF or local script
    execution via backend applications whose response headers are
    malicious or exploitable.
    Note: Some legacy uses of the 'AddType' directive to connect a
    request to a handler must be ported to 'AddHandler' after this fix.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38475: Apache HTTP Server weakness in
    mod_rewrite when first segment of substitution matches
    filesystem path. (cve.mitre.org) [boo#1227268]
    Improper escaping of output in mod_rewrite in Apache HTTP Server
    2.4.59 and earlier allows an attacker to map URLs to filesystem
    locations that are permitted to be served by the server but are
    not intentionally/directly reachable by any URL, resulting in
    code execution or source code disclosure.
    Substitutions in server context that use a backreferences or
    variables as the first segment of the substitution are affected.
    Some unsafe RewiteRules will be broken by this change and the
    rewrite flag "UnsafePrefixStat" can be used to opt back in once
    ensuring the substitution is appropriately constrained.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38474: Apache HTTP Server weakness with
    encoded question marks in backreferences (cve.mitre.org)
    [boo#1227278]
    Substitution encoding issue in mod_rewrite in Apache HTTP Server
    2.4.59 and earlier allows attacker to execute scripts in
    directories permitted by the configuration but not directly
    reachable by any URL or source disclosure of scripts meant to
    only to be executed as CGI.
    Note: Some RewriteRules that capture and substitute unsafely will now
    fail unless rewrite flag "UnsafeAllow3F" is specified.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38473: Apache HTTP Server proxy encoding
    problem (cve.mitre.org) [boo#1227276]
    Encoding problem in mod_proxy in Apache HTTP Server 2.4.59 and
    earlier allows request URLs with incorrect encoding to be sent
    to backend services, potentially bypassing authentication via
    crafted requests.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38472: Apache HTTP Server on WIndows UNC SSRF
    (cve.mitre.org) [boo#1227267]
    SSRF in Apache HTTP Server on Windows allows to potentially leak
    NTML hashes to a malicious server via SSRF and malicious
    requests or content
    Note: Existing configurations that access UNC paths
    will have to configure new directive "UNCList" to allow access
    during request processing.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-36387: Apache HTTP Server: DoS by Null
    pointer in websocket over HTTP/2 (cve.mitre.org) [boo#1227272]
    Serving WebSocket protocol upgrades over a HTTP/2 connection
    could result in a Null Pointer dereference, leading to a crash
    of the server process, degrading performance.
    Credits: Marc Stern (&lt;marc.stern AT approach-cyber.com&gt;)
  * ) mod_proxy: Fix DNS requests and connections closed before the
    configured addressTTL.  BZ 69126.  [Yann Ylavic]
  * ) core: On Linux, log the real thread ID in error logs.  [Joe Orton]
  * ) core: Support zone/scope in IPv6 link-local addresses in Listen and
    VirtualHost directives (requires APR 1.7.x or later).  PR 59396
    [Joe Orton]
  * ) mod_ssl: Reject client-initiated renegotiation with a TLS alert
    (rather than connection closure).  [Joe Orton, Yann Ylavic]
  * ) Updated mime.types.  [Mohamed Akram &lt;mohd.akram outlook.com&gt;,
    Adam Silverstein &lt;adamsilverstein earthboundhosting.com&gt;]
  * ) mod_ssl: Fix a regression that causes the default DH parameters for a key
    no longer set and thus effectively disabling DH ciphers when no explicit
    DH parameters are set. PR 68863 [Ruediger Pluem]
  * ) mod_cgid: Optional support for file descriptor passing, fixing
    error log handling (configure --enable-cgid-fdpassing) on Unix
    platforms. PR 54221.  [Joe Orton]
  * ) mod_cgid/mod_cgi: Distinguish script stderr output clearly in
    error logs.  PR 61980.  [Hank Ibell &lt;hwibell gmail.com&gt;]
  * ) mod_tls: update version of rustls-ffi to v0.13.0.
    [Daniel McCarney (@cpu}]
  * ) mod_md:
  - Using OCSP stapling information to trigger certificate renewals. Proposed
    by @frasertweedale.
  - Added directive `MDCheckInterval` to control how often the server checks
    for detected revocations. Added proposals for configurations in the
    README.md chapter "Revocations".
  - OCSP stapling: accept OCSP responses without a `nextUpdate` entry which is
    allowed in RFC 6960. Treat those as having an update interval of 12 hours.
    Added by @frasertweedale.
  - Adapt OpenSSL usage to changes in their API. By Yann Ylavic.
- removed patches (upstreamed)
  - apache2-issue-444.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- Update to 2.4.62
  * ) SECURITY: CVE-2024-40898: Apache HTTP Server: SSRF with
    mod_rewrite in server/vhost context on Windows (cve.mitre.org)
    [boo#1228098]
    SSRF in Apache HTTP Server on Windows with mod_rewrite in
    server/vhost context, allows to potentially leak NTML hashes to
    a malicious server via SSRF and malicious requests.
    Users are recommended to upgrade to version 2.4.62 which fixes
    this issue.
    Credits: Smi1e (DBAPPSecurity Ltd.)
  * ) SECURITY: CVE-2024-40725: Apache HTTP Server: source code
    disclosure with handlers configured via AddType (cve.mitre.org)
    [boo#1228097]
    A partial fix for  CVE-2024-39884 in the core of Apache HTTP
    Server 2.4.61 ignores some use of the legacy content-type based
    configuration of handlers. "AddType" and similar configuration,
    under some circumstances where files are requested indirectly,
    result in source code disclosure of local content. For example,
    PHP scripts may be served instead of interpreted.
    Users are recommended to upgrade to version 2.4.62, which fixes
    this issue.
  * ) mod_proxy: Fix canonicalisation and FCGI env (PATH_INFO, SCRIPT_NAME) for
    "balancer:" URLs set via SetHandler, also allowing for "unix:" sockets
    with BalancerMember(s).  PR 69168.  [Yann Ylavic]
  * ) mod_proxy: Avoid AH01059 parsing error for SetHandler "unix:" URLs.
    PR 69160 [Yann Ylavic]
  * ) mod_ssl: Fix crashes in PKCS#11 ENGINE support with OpenSSL 3.2.
    [Joe Orton]
  * ) mod_ssl: Add support for loading certs/keys from pkcs11: URIs
    via OpenSSL 3.x providers.  [Ingo Franzki &lt;ifranzki linux.ibm.com&gt;]
  * ) mod_ssl: Restore SSL dumping on trace7 loglevel with OpenSSL &gt;= 3.0.
    [Ruediger Pluem, Yann Ylavic]
  * ) mpm_worker: Fix possible warning (AH00045) about children processes not
    terminating timely.  [Yann Ylavic]</changelog>
  <changelog author="Thorsten Kukuk &lt;kukuk@suse.com&gt;" date="1727697600">- Add /srv/www directories to filelist [bsc#1231027]
  (apache2 will not start since default config uses this directory)</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1730721600">- Explicitly mark start_apache2 as bash-dependent.</changelog>
  <changelog author="Martin Schreiner &lt;martin.schreiner@suse.com&gt;" date="1730808000">- Update httpd-framework to svn1921782.
- Fixes Apache's impact on bsc#1218342.</changelog>
</package>
<package pkgid="a863f4ad6d6077b0b6ed3d72751b988142a54b5cfd2d14371ad68a6f120bc8a0fd3fa36317fdbff1616c0f5e94bc919f8cd4b17a34955c5bc074224e642df054" name="apache2-event-debuginfo" arch="x86_64">
  <version epoch="0" ver="2.4.62" rel="3.1"/>
  <changelog author="pgajdos@suse.com" date="1654689600">- update httpd-framework to svn revision 1898917</changelog>
  <changelog author="Stefan Schubert &lt;schubi@intern&gt;" date="1656417600">- Moved logrotate files from user specific directory /etc/logrotate.d
  to vendor specific directory /usr/etc/logrotate.d.</changelog>
  <changelog author="Stefan Schubert &lt;schubi@suse.com&gt;" date="1662033600">- Migration to /usr/etc: Saving user changed configuration files
  in /etc and restoring them while an RPM update.</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1663675200">- Remove references to README.QUICKSTART and point them to
  https://en.opensuse.org/SDB:Apache_installation (bsc#1203573)</changelog>
  <changelog author="Stephan Kulow &lt;coolo@suse.com&gt;" date="1663934400">- The 2.4.54 release brought support for PCRE2, but for that we also
  need to change buildrequires to pcre2-devel</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1670846400">- switch to pkgconfig(zlib) so that alternative providers can be
  used</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1674043200">- This update fixes the following security issues:
  * CVE-2022-37436 [bsc#1207251], mod_proxy backend HTTP response splitting
  * CVE-2022-36760 [bsc#1207250], mod_proxy_ajp Possible request smuggling
  * CVE-2006-20001 [bsc#1207247], mod_dav out of bounds read, or write of zero byte
- Update to 2.4.55:
  * ) SECURITY: CVE-2022-37436: Apache HTTP Server: mod_proxy prior to
    2.4.55 allows a backend to trigger HTTP response splitting
    (cve.mitre.org)
    Prior to Apache HTTP Server 2.4.55, a malicious backend can
    cause the response headers to be truncated early, resulting in
    some headers being incorporated into the response body. If the
    later headers have any security purpose, they will not be
    interpreted by the client.
    Credits: Dimas Fariski Setyawan Putra (@nyxsorcerer)
  * ) SECURITY: CVE-2022-36760: Apache HTTP Server: mod_proxy_ajp
    Possible request smuggling (cve.mitre.org)
    Inconsistent Interpretation of HTTP Requests ('HTTP Request
    Smuggling') vulnerability in mod_proxy_ajp of Apache HTTP Server
    allows an attacker to smuggle requests to the AJP server it
    forwards requests to.  This issue affects Apache HTTP Server
    Apache HTTP Server 2.4 version 2.4.54 and prior versions.
    Credits: ZeddYu_Lu from Qi'anxin Research Institute of Legendsec
    at Qi'anxin Group
  * ) SECURITY: CVE-2006-20001: mod_dav out of  bounds read, or write
    of zero byte (cve.mitre.org)
    A carefully crafted If: request header can cause a memory read,
    or write of a single zero byte, in a pool (heap) memory location
    beyond the header value sent. This could cause the process to
    crash.
    This issue affects Apache HTTP Server 2.4.54 and earlier.
  * ) mod_dav: Open the lock database read-only when possible.
    PR 36636 [Wilson Felipe &lt;wfelipe gmail.com&gt;, manu]
  * ) mod_proxy_http2: apply the standard httpd content type handling
    to responses from the backend, as other proxy modules do. Fixes PR 66391.
    Thanks to Jérôme Billiras for providing the patch.
    [Stefan Eissing]
  * ) mod_dav: mod_dav overrides dav_fs response on PUT failure. PR 35981
    [Basant Kumar Kukreja &lt;basant.kukreja sun.com&gt;, Alejandro Alvarez
    &lt;alejandro.alvarez.ayllon cern.ch&gt;]
  * ) mod_proxy_hcheck: Honor worker timeout settings.  [Yann Ylavic]
  * ) mod_http2: version 2.0.10 of the module, synchronizing changes
    with the gitgub version. This is a partial rewrite of how connections
    and streams are handled.
  - an APR pollset and pipes (where supported) are used to monitor
    the main connection and react to IO for request/response handling.
    This replaces the stuttered timed waits of earlier versions.
  - H2SerializeHeaders directive still exists, but has no longer an effect.
  - Clients that seemingly misbehave still get less resources allocated,
    but ongoing requests are no longer disrupted.
  - Fixed an issue since 1.15.24 that "Server" headers in proxied requests
    were overwritten instead of preserved. [PR by @daum3ns]
  - A regression in v1.15.24 was fixed that could lead to httpd child
    processes not being terminated on a graceful reload or when reaching
    MaxConnectionsPerChild. When unprocessed h2 requests were queued at
    the time, these could stall. See #212.
  - Improved information displayed in 'server-status' for H2 connections when
    Extended Status is enabled. Now one can see the last request that IO
    operations happened on and transferred IO stats are updated as well.
  - When reaching server limits, such as MaxRequestsPerChild, the HTTP/2 connection
    send a GOAWAY frame much too early on new connections, leading to invalid
    protocol state and a client failing the request. See PR65731 at
    &lt;https://bz.apache.org/bugzilla/show_bug.cgi?id=65731&gt;.
    The module now initializes the HTTP/2 protocol correctly and allows the
    client to submit one request before the shutdown via a GOAWAY frame
    is being announced.
  - :scheme pseudo-header values, not matching the
    connection scheme, are forwarded via absolute uris to the
    http protocol processing to preserve semantics of the request.
    Checks on combinations of pseudo-headers values/absence
    have been added as described in RFC 7540. Fixes #230.
  - A bug that prevented trailers (e.g. HEADER frame at the end) to be
    generated in certain cases was fixed. See #233 where it prevented
    gRPC responses to be properly generated.
  - Request and response header values are automatically stripped of leading
    and trialing space/tab characters. This is equivalent behaviour to what
    Apache httpd's http/1.1 parser does.
    The checks for this in nghttp2 v1.50.0+ are disabled.
  - Extensive testing in production done by Alessandro Bianchi (@alexskynet)
    on the v2.0.x versions for stability. Many thanks!
  * ) mod_proxy_http2: fixed #235 by no longer forwarding 'Host:' header when
    request ':authority' is known. Improved test case that did not catch that
    the previous 'fix' was incorrect.
  * ) mod_proxy_hcheck: hcmethod now allows for HTTP/1.1 requests
    using GET11, HEAD11 and/or OPTIONS11. [Jim Jagielski]
  * ) mod_proxy: The AH03408 warning for a forcibly closed backend
    connection is now logged at INFO level.  [Yann Ylavic]
  * ) mod_ssl: When dumping the configuration, the existence of
    certificate/key files is no longer tested.  [Joe Orton]
  * ) mod_authn_core: Add expression support to AuthName and AuthType.
    [Graham Leggett]
  * ) mod_ssl: when a proxy connection had handled a request using SSL, an
    error was logged when "SSLProxyEngine" was only configured in the
    location/proxy section and not the overall server. The connection
    continued to work, the error log was in error. Fixed PR66190.
    [Stefan Eissing]
  * ) mod_proxy_hcheck: Re-enable workers in standard ERROR state. PR 66302.
    [Alessandro Cavaliere &lt;alessandro.cavalier7 unibo.it&gt;]
  * ) mod_proxy_hcheck: Detect AJP/CPING support correctly. PR 66300.
    [Alessandro Cavaliere &lt;alessandro.cavalier7 unibo.it&gt;]
  * ) mod_http2: Export mod_http2.h as public header. [Stefan Eissing]
  * ) mod_md: a new directive `MDStoreLocks` can be used on cluster
    setups with a shared file system for `MDStoreDir` to order
    activation of renewed certificates when several cluster nodes are
    restarted at the same time. Store locks are not enabled by default.
    Restored curl_easy cleanup behaviour from v2.4.14 and refactored
    the use of curl_multi for OCSP requests to work with that.
    Fixes &lt;https://github.com/icing/mod_md/issues/293&gt;.
  * ) core: Avoid an overflow on large inputs in ap_is_matchexp.  PR 66033
    [Ruediger Pluem]
  * ) mod_heartmonitor: Allow "HeartbeatMaxServers 0" to use file based
    storage instead of slotmem. Needed after setting
    HeartbeatMaxServers default to the documented value 10 in 2.4.54.
    PR 66131.  [Jérôme Billiras]
  * ) mod_dav: DAVlockDiscovery option to disable WebDAV lock discovery
    This is a game changer for performances if client use PROPFIND a lot,
    PR 66313. [Emmanuel Dreyfus]</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1678276800">- This update fixes the following security issues:
  * CVE-2023-27522 [bsc#1209049]: mod_proxy_uwsgi HTTP response splitting
  * CVE-2023-25690 [bsc#1209047]: HTTP request splitting with mod_rewrite and mod_proxy
- Update to 2.4.56:
  * ) rotatelogs: Add -T flag to allow subsequent rotated logfiles to be
    truncated without the initial logfile being truncated.  [Eric Covener]
  * ) mod_ldap: LDAPConnectionPoolTTL should accept negative values in order to
    allow connections of any age to be reused. Up to now, a negative value
    was handled as an error when parsing the configuration file.  PR 66421.
    [nailyk &lt;bzapache nailyk.fr&gt;, Christophe Jaillet]
  * ) mod_proxy_ajp: Report an error if the AJP backend sends an invalid number
    of headers. [Ruediger Pluem]
  * ) mod_md:
  - Enabling ED25519 support and certificate transparency information when
    building with libressl v3.5.0 and newer. Thanks to Giovanni Bechis.
  - MDChallengeDns01 can now be configured for individual domains.
    Thanks to Jérôme Billiras (@bilhackmac) for the initial PR.
  - Fixed a bug found by Jérôme Billiras (@bilhackmac) that caused the challenge
    teardown not being invoked as it should.
    [Stefan Eissing]
  * ) mod_http2: client resets of HTTP/2 streams led to unwanted 500 errors
    reported in access logs and error documents. The processing of the
    reset was correct, only unneccesary reporting was caused.
    [Stefan Eissing]
  * ) mod_proxy_uwsgi: Stricter backend HTTP response parsing/validation.
    [Yann Ylavic]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1680868800">- Update to 2.4.57:
  * ) mod_proxy: Check before forwarding that a nocanon path has not been
    rewritten with spaces during processing.  [Yann Ylavic]
  * ) mod_proxy: In case that AllowEncodedSlashes is set to NoDecode do not
    double encode encoded slashes in the URL sent by the reverse proxy to the
    backend. [Ruediger Pluem]
  * ) mod_http2: fixed a crash during connection termination. See PR 66539.
    [Stefan Eissing]
  * ) mod_rewrite: Fix a 2.4.56 regression for substitutions ending
    in a question mark. PR66547. [Eric Covener]
  * ) mod_rewrite: Add "BCTLS" and "BNE" RewriteRule flags. Re-allow encoded
    characters on redirections without the "NE" flag.
    [Yann Ylavic, Eric Covener]
  * ) mod_proxy: Fix double encoding of the uri-path of the request forwarded
    to the origin server, when using mapping=encoded|servlet.  [Yann Ylavic]
  * ) mod_mime: Do not match the extention against possible query string
    parameters in case ProxyPass was used with the nocanon option.
    [Ruediger Pluem]</changelog>
  <changelog author="Dirk Stoecker &lt;opensuse@dstoecker.de&gt;" date="1691236800">- Enable building of mod_md</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1697716800">- Update to 2.4.58:
  * ) SECURITY: CVE-2023-45802: Apache HTTP Server: HTTP/2 stream
    memory not reclaimed right away on RST (cve.mitre.org)
    When a HTTP/2 stream was reset (RST frame) by a client, there
    was a time window were the request's memory resources were not
    reclaimed immediately. Instead, de-allocation was deferred to
    connection close. A client could send new requests and resets,
    keeping the connection busy and open and causing the memory
    footprint to keep on growing. On connection close, all resources
    were reclaimed, but the process might run out of memory before
    that.
    This was found by the reporter during testing of CVE-2023-44487
    (HTTP/2 Rapid Reset Exploit) with their own test client. During
    "normal" HTTP/2 use, the probability to hit this bug is very
    low. The kept memory would not become noticeable before the
    connection closes or times out.
    Users are recommended to upgrade to version 2.4.58, which fixes
    the issue.
    Credits: Will Dormann of Vul Labs
  * ) SECURITY: CVE-2023-43622: Apache HTTP Server: DoS in HTTP/2 with
    initial windows size 0 (cve.mitre.org)
    An attacker, opening a HTTP/2 connection with an initial window
    size of 0, was able to block handling of that connection
    indefinitely in Apache HTTP Server. This could be used to
    exhaust worker resources in the server, similar to the well
    known "slow loris" attack pattern.
    This has been fixed in version 2.4.58, so that such connection
    are terminated properly after the configured connection timeout.
    This issue affects Apache HTTP Server: from 2.4.55 through
    2.4.57.
    Users are recommended to upgrade to version 2.4.58, which fixes
    the issue.
    Credits: Prof. Sven Dietrich (City University of New York)
  * ) SECURITY: CVE-2023-31122: mod_macro buffer over-read
    (cve.mitre.org)
    Out-of-bounds Read vulnerability in mod_macro of Apache HTTP
    Server.This issue affects Apache HTTP Server: through 2.4.57.
    Credits: David Shoon (github/davidshoon)
  * ) mod_ssl: Silence info log message "SSL Library Error: error:0A000126:
    SSL routines::unexpected eof while reading" when using
    OpenSSL 3 by setting SSL_OP_IGNORE_UNEXPECTED_EOF if
    available. [Rainer Jung]
  * ) mod_http2: improved early cleanup of streams.
    [Stefan Eissing]
  * ) mod_proxy_http2: improved error handling on connection errors while
    response is already underway.
    [Stefan Eissing]
  * ) mod_http2: fixed a bug that could lead to a crash in main connection
    output handling. This occured only when the last request on a HTTP/2
    connection had been processed and the session decided to shut down.
    This could lead to an attempt to send a final GOAWAY while the previous
    write was still in progress. See PR 66646.
    [Stefan Eissing]
  * ) mod_proxy_http2: fix `X-Forward-Host` header to carry the correct value.
    Fixes PR66752.
    [Stefan Eissing]
  * ) mod_http2: added support for bootstrapping WebSockets via HTTP/2, as
    described in RFC 8441. A new directive 'H2WebSockets on|off' has been
    added. The feature is by default not enabled.
    As also discussed in the manual, this feature should work for setups
    using "ProxyPass backend-url upgrade=websocket" without further changes.
    Special server modules for WebSockets will have to be adapted,
    most likely, as the handling if IO events is different with HTTP/2.
    HTTP/2 WebSockets are supported on platforms with native pipes. This
    excludes Windows.
    [Stefan Eissing]
  * ) mod_rewrite: Fix a regression with both a trailing ? and [QSA].
    in OCSP stapling. PR 66672. [Frank Meier &lt;frank.meier ergon.ch&gt;, covener]
  * ) mod_http2: fixed a bug in flushing pending data on an already closed
    connection that could lead to a busy loop, preventing the HTTP/2 session
    to close down successfully. Fixed PR 66624.
    [Stefan Eissing]
  * ) mod_http2: v2.0.15 with the following fixes and improvements
  - New directive 'H2EarlyHint name value' to add headers to a response,
    picked up already when a "103 Early Hints" response is sent. 'name' and
    'value' must comply to the HTTP field restrictions.
    This directive can be repeated several times and header fields of the
    same names add. Sending a 'Link' header with 'preload' relation will
    also cause a HTTP/2 PUSH if enabled and supported by the client.
  - Fixed an issue where requests were not logged and accounted in a timely
    fashion when the connection returns to "keepalive" handling, e.g. when
    the request served was the last outstanding one.
    This led to late appearance in access logs with wrong duration times
    reported.
  - Accurately report the bytes sent for a request in the '%O' Log format.
    This addresses #203, a long outstanding issue where mod_h2 has reported
    numbers over-eagerly from internal buffering and not what has actually
    been placed on the connection.
    The numbers are now the same with and without H2CopyFiles enabled.
    [Stefan Eissing]
  * ) mod_proxy_http2: fix retry handling to not leak temporary errors.
    On detecting that that an existing connection was shutdown by the other
    side, a 503 response leaked even though the request was retried on a
    fresh connection.
    [Stefan Eissing]
  * ) mod_rewrite: Add server directory to include path as mod_rewrite requires
    test_char.h. PR 66571 [Valeria Petrov &lt;valeria.petrov@spinetix.com&gt;]
  * ) mod_http2: new directive `H2ProxyRequests on|off` to enable handling
    of HTTP/2 requests in a forward proxy configuration.
    General forward proxying is enabled via `ProxyRequests`. If the
    HTTP/2 protocol is also enabled for such a server/host, this new
    directive is needed in addition.
    [Stefan Eissing]
  * ) core: Updated conf/mime.types:
  - .js moved from 'application/javascript' to 'text/javascript'
  - .mjs was added as 'text/javascript'
  - add .opus ('audio/ogg')
  - add 'application/vnd.geogebra.slides'
  - add WebAssembly MIME types and extension
    [Mathias Bynens &lt;@mathiasbynens&gt; via PR 318,
    Richard de Boer &lt;richard tubul.net&gt;, Dave Hodder &lt;dmh dmh.org.uk&gt;,
    Zbynek Konecny &lt;zbynek1729 gmail.com&gt;]
  * ) mod_proxy_http2: fixed using the wrong "bucket_alloc" from the backend
    connection when sending data on the frontend one. This caused crashes
    or infinite loops in rare situations.
  * ) mod_proxy_http2: fixed a bug in retry/response handling that could lead
    to wrong status codes or HTTP messages send at the end of response bodies
    exceeding the announced content-length.
  * ) mod_proxy_http2: fix retry handling to not leak temporary errors.
    On detecting that that an existing connection was shutdown by the other
    side, a 503 response leaked even though the request was retried on a
    fresh connection.
  * ) mod_http2: fixed a bug that did cleanup of consumed and pending buckets in
    the wrong order when a bucket_beam was destroyed.
    [Stefan Eissing]
  * ) mod_http2: avoid double chunked-encoding on internal redirects.
    PR 66597 [Yann Ylavic, Stefan Eissing]
  * ) mod_http2: Fix reporting of `Total Accesses` in server-status to not count
    HTTP/2 requests twice. Fixes PR 66801.
    [Stefan Eissing]
  * ) mod_ssl: Fix handling of Certificate Revoked messages
    in OCSP stapling. PR 66626. [&lt;gmoniker gmail.com&gt;]
  * ) mod_http2: fixed a bug in handling of stream timeouts.
    [Stefan Eissing]
  * ) mod_tls: updating to rustls-ffi version 0.9.2 or higher.
    Checking in configure for proper version installed. Code
    fixes for changed clienthello member name.
    [Stefan Eissing]
  * ) mod_md:
  - New directive `MDMatchNames all|servernames` to allow more control over how
    MDomains are matched to VirtualHosts.
  - New directive `MDChallengeDns01Version`. Setting this to `2` will provide
    the command also with the challenge value on `teardown` invocation. In version
    1, the default, only the `setup` invocation gets this parameter.
    Refs #312. Thanks to @domrim for the idea.
  - For Managed Domain in "manual" mode, the checks if all used ServerName and
    ServerAlias are part of the MDomain now reports a warning instead of an error
    (AH10040) when not all names are present.
  - MDChallengeDns01 can now be configured for individual domains.
    Using PR from JÃ©rÃ´me Billiras (@bilhackmac) and adding test case and fixing proper working
  - Fixed a bug found by JÃ©rÃ´me Billiras (@bilhackmac) that caused the challenge
    teardown not being invoked as it should.
  * ) mod_ldap: Avoid performance overhead of APR-util rebind cache for
    OpenLDAP 2.2+.  PR 64414.  [Joe Orton]
  * ) mod_http2: new directive 'H2MaxDataFrameLen n' to limit the maximum
    amount of response body bytes put into a single HTTP/2 DATA frame.
    Setting this to 0 places no limit (but the max size allowed by the
    protocol is observed).
    The module, by default, tries to use the maximum size possible, which is
    somewhat around 16KB. This sets the maximum. When less response data is
    available, smaller frames will be sent.
  * ) mod_md: fixed passing of the server environment variables to programs
    started via MDMessageCmd and MDChallengeDns01 on *nix system.
    See &lt;https://github.com/icing/mod_md/issues/319&gt;.
    [Stefan Eissing]
  * ) mod_dav: Add DavBasePath directive to configure the repository root
    path.  PR 35077.  [Joe Orton]
  * ) mod_alias: Add AliasPreservePath directive to map the full
    path after the alias in a location. [Graham Leggett]
  * ) mod_alias: Add RedirectRelative to allow relative redirect targets to be
    issued as-is. [Eric Covener, Graham Leggett]
  * ) core: Add formats %{z} and %{strftime-format} to ErrorLogFormat, and make
    sure that if the format is configured early enough it applies to every log
    line.  PR 62161.  [Yann Ylavic]
  * ) mod_deflate: Add DeflateAlterETag to control how the ETag
    is modified. The 'NoChange' parameter mimics 2.2.x behavior.
    PR 45023, PR 39727. [Eric Covener]
  * ) core: Optimize send_brigade_nonblocking(). [Yann Ylavic, Christophe Jaillet]
  * ) mod_status: Remove duplicate keys "BusyWorkers" and "IdleWorkers".
    Resolve inconsistency between the previous two occurrences by
    counting workers in state SERVER_GRACEFUL no longer as busy,
    but instead in a new counter "GracefulWorkers" (or on HTML
    view as "workers gracefully restarting"). Also add the graceful
    counter as a new column to the existing HTML per process table
    for async MPMs. PR 63300. [Rainer Jung]</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1706529600">- use grep -E for egrep</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1708430400">- Use %autosetup macro. Allows to eliminate the usage of deprecated
  %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1712232000">- Update to 2.4.59:
  * ) mod_deflate: Fixes and better logging for handling various
    error and edge cases. [Eric Covener, Yann Ylavic, Joe Orton,
    Eric Norris &lt;enorris etsy.com&gt;]
  * ) Add CGIScriptTimeout to mod_cgi. [Eric Covener]
  * ) mod_xml2enc: Tolerate libxml2 2.12.0 and later.  PR 68610
    [ttachi &lt;tachihara AT hotmail.com&gt;]
  * ) mod_slotmem_shm: Use ap_os_is_path_absolute() to make it portable.
    [Jean-Frederic Clere]
  * ) mod_ssl: Use OpenSSL-standard functions to assemble CA
    name lists for SSLCACertificatePath/SSLCADNRequestPath.
    Names will now be consistently sorted. PR 61574.
    [Joe Orton]
  * ) mod_xml2enc: Update check to accept any text/ media type
    or any XML media type per RFC 7303, avoiding
    corruption of Microsoft OOXML formats.  PR 64339.
    [Joseph Heenan &lt;joseph.heenan fintechlabs.io&gt;, Joe Orton]
  * ) mod_http2: v2.0.26 with the following fixes:
  - Fixed `Date` header on requests upgraded from HTTP/1.1 (h2c). Fixes
    &lt;https://github.com/icing/mod_h2/issues/272&gt;.
  - Fixed small memory leak in h2 header bucket free. Thanks to
    Michael Kaufmann for finding this and providing the fix.
  * ) htcacheclean: In -a/-A mode, list all files per subdirectory
    rather than only one. PR 65091.
    [Artem Egorenkov &lt;aegorenkov.91 gmail.com&gt;]
  * ) mod_ssl: SSLProxyMachineCertificateFile/Path may reference files
    which include CA certificates; those CA certs are treated as if
    configured with SSLProxyMachineCertificateChainFile.  [Joe Orton]
  * ) htpasswd, htdbm, dbmmanage: Update help&amp;docs to refer to
    "hashing", rather than "encrypting" passwords.
    [Michele Preziuso &lt;mpreziuso kaosdynamics.com&gt;]
  * ) mod_ssl: Fix build with LibreSSL 2.0.7+. PR 64047.
    [Giovanni Bechis, Yann Ylavic]
  * ) htpasswd: Add support for passwords using SHA-2.  [Joe Orton,
    Yann Ylavic]
  * ) core: Allow mod_env to override system environment vars. [Joe Orton]
  * ) Allow mod_dav_fs to tolerate race conditions between PROPFIND and an
    operation which removes a directory/file between apr_dir_read() and
    apr_stat(). Current behaviour is to abort the connection which seems
    inferior to tolerating (and logging) the error. [Joe Orton]
  * ) mod_ldap: HTML-escape data in the ldap-status handler.
    [Eric Covener, Chamal De Silva]
  * ) mod_ssl: Disable the OpenSSL ENGINE API when OPENSSL_NO_ENGINE is set.
    Allow for "SSLCryptoDevice builtin" if the ENGINE API is not available,
    notably with OpenSSL &gt;= 3.  PR 68080.  [Yann Ylavic, Joe Orton]
  * ) mod_ssl: Improve compatibility with OpenSSL 3, fix build warnings about
    deprecated ENGINE_ API, honor OPENSSL_API_COMPAT setting while defaulting
    to compatibitily with version 1.1.1 (including ENGINEs / SSLCryptoDevice).
    [Yann Ylavic]
  * ) mod_ssl: release memory to the OS when needed. [Giovanni Bechis]
  * ) mod_proxy: Ignore (and warn about) enablereuse=on for ProxyPassMatch when
    some dollar substitution (backreference) happens in the hostname or port
    part of the URL.  [Yann Ylavic]
  * ) mod_proxy: Allow to set a TTL for how long DNS resolutions to backend
    systems are cached. [Yann Ylavic]
  * ) mod_proxy: Add optional third argument for ProxyRemote, which
    configures Basic authentication credentials to pass to the remote
    proxy.  PR 37355.  [Joe Orton]</changelog>
  <changelog author="pgajdos@suse.com" date="1718280000">- added patches [bsc#1226217]
  https://github.com/apache/httpd/pull/444/commits/c2fffd29b0f58bdc9caaaff4fec68e17a676f182
  + apache2-issue-444.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1720094400">- Update to 2.4.61
  * ) SECURITY: CVE-2024-39884: Apache HTTP Server: source code
    disclosure with handlers configured via AddType (cve.mitre.org)
    [boo#1227353]
    A regression in the core of Apache HTTP Server 2.4.60 ignores
    some use of the legacy content-type based configuration of
    handlers.   "AddType" and similar configuration, under some
    circumstances where files are requested indirectly, result in
    source code disclosure of local content. For example, PHP
    scripts may be served instead of interpreted.
    Users are recommended to upgrade to version 2.4.61, which fixes
    this issue.
- Update to 2.4.60
  * ) SECURITY: CVE-2024-39573: Apache HTTP Server: mod_rewrite proxy
    handler substitution (cve.mitre.org) [boo#1227271]
    Potential SSRF in mod_rewrite in Apache HTTP Server 2.4.59 and
    earlier allows an attacker to cause unsafe RewriteRules to
    unexpectedly setup URL's to be handled by mod_proxy.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38477: Apache HTTP Server: Crash resulting in
    Denial of Service in mod_proxy via a malicious request
    (cve.mitre.org) [boo#1227270]
    null pointer dereference in mod_proxy in Apache HTTP Server
    2.4.59 and earlier allows an attacker to crash the server via a
    malicious request.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38476: Apache HTTP Server may use
    exploitable/malicious backend application output to run local
    handlers via internal redirect (cve.mitre.org) [boo#1227269]
    Vulnerability in core of Apache HTTP Server 2.4.59 and earlier
    are vulnerably to information disclosure, SSRF or local script
    execution via backend applications whose response headers are
    malicious or exploitable.
    Note: Some legacy uses of the 'AddType' directive to connect a
    request to a handler must be ported to 'AddHandler' after this fix.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38475: Apache HTTP Server weakness in
    mod_rewrite when first segment of substitution matches
    filesystem path. (cve.mitre.org) [boo#1227268]
    Improper escaping of output in mod_rewrite in Apache HTTP Server
    2.4.59 and earlier allows an attacker to map URLs to filesystem
    locations that are permitted to be served by the server but are
    not intentionally/directly reachable by any URL, resulting in
    code execution or source code disclosure.
    Substitutions in server context that use a backreferences or
    variables as the first segment of the substitution are affected.
    Some unsafe RewiteRules will be broken by this change and the
    rewrite flag "UnsafePrefixStat" can be used to opt back in once
    ensuring the substitution is appropriately constrained.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38474: Apache HTTP Server weakness with
    encoded question marks in backreferences (cve.mitre.org)
    [boo#1227278]
    Substitution encoding issue in mod_rewrite in Apache HTTP Server
    2.4.59 and earlier allows attacker to execute scripts in
    directories permitted by the configuration but not directly
    reachable by any URL or source disclosure of scripts meant to
    only to be executed as CGI.
    Note: Some RewriteRules that capture and substitute unsafely will now
    fail unless rewrite flag "UnsafeAllow3F" is specified.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38473: Apache HTTP Server proxy encoding
    problem (cve.mitre.org) [boo#1227276]
    Encoding problem in mod_proxy in Apache HTTP Server 2.4.59 and
    earlier allows request URLs with incorrect encoding to be sent
    to backend services, potentially bypassing authentication via
    crafted requests.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38472: Apache HTTP Server on WIndows UNC SSRF
    (cve.mitre.org) [boo#1227267]
    SSRF in Apache HTTP Server on Windows allows to potentially leak
    NTML hashes to a malicious server via SSRF and malicious
    requests or content
    Note: Existing configurations that access UNC paths
    will have to configure new directive "UNCList" to allow access
    during request processing.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-36387: Apache HTTP Server: DoS by Null
    pointer in websocket over HTTP/2 (cve.mitre.org) [boo#1227272]
    Serving WebSocket protocol upgrades over a HTTP/2 connection
    could result in a Null Pointer dereference, leading to a crash
    of the server process, degrading performance.
    Credits: Marc Stern (&lt;marc.stern AT approach-cyber.com&gt;)
  * ) mod_proxy: Fix DNS requests and connections closed before the
    configured addressTTL.  BZ 69126.  [Yann Ylavic]
  * ) core: On Linux, log the real thread ID in error logs.  [Joe Orton]
  * ) core: Support zone/scope in IPv6 link-local addresses in Listen and
    VirtualHost directives (requires APR 1.7.x or later).  PR 59396
    [Joe Orton]
  * ) mod_ssl: Reject client-initiated renegotiation with a TLS alert
    (rather than connection closure).  [Joe Orton, Yann Ylavic]
  * ) Updated mime.types.  [Mohamed Akram &lt;mohd.akram outlook.com&gt;,
    Adam Silverstein &lt;adamsilverstein earthboundhosting.com&gt;]
  * ) mod_ssl: Fix a regression that causes the default DH parameters for a key
    no longer set and thus effectively disabling DH ciphers when no explicit
    DH parameters are set. PR 68863 [Ruediger Pluem]
  * ) mod_cgid: Optional support for file descriptor passing, fixing
    error log handling (configure --enable-cgid-fdpassing) on Unix
    platforms. PR 54221.  [Joe Orton]
  * ) mod_cgid/mod_cgi: Distinguish script stderr output clearly in
    error logs.  PR 61980.  [Hank Ibell &lt;hwibell gmail.com&gt;]
  * ) mod_tls: update version of rustls-ffi to v0.13.0.
    [Daniel McCarney (@cpu}]
  * ) mod_md:
  - Using OCSP stapling information to trigger certificate renewals. Proposed
    by @frasertweedale.
  - Added directive `MDCheckInterval` to control how often the server checks
    for detected revocations. Added proposals for configurations in the
    README.md chapter "Revocations".
  - OCSP stapling: accept OCSP responses without a `nextUpdate` entry which is
    allowed in RFC 6960. Treat those as having an update interval of 12 hours.
    Added by @frasertweedale.
  - Adapt OpenSSL usage to changes in their API. By Yann Ylavic.
- removed patches (upstreamed)
  - apache2-issue-444.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- Update to 2.4.62
  * ) SECURITY: CVE-2024-40898: Apache HTTP Server: SSRF with
    mod_rewrite in server/vhost context on Windows (cve.mitre.org)
    [boo#1228098]
    SSRF in Apache HTTP Server on Windows with mod_rewrite in
    server/vhost context, allows to potentially leak NTML hashes to
    a malicious server via SSRF and malicious requests.
    Users are recommended to upgrade to version 2.4.62 which fixes
    this issue.
    Credits: Smi1e (DBAPPSecurity Ltd.)
  * ) SECURITY: CVE-2024-40725: Apache HTTP Server: source code
    disclosure with handlers configured via AddType (cve.mitre.org)
    [boo#1228097]
    A partial fix for  CVE-2024-39884 in the core of Apache HTTP
    Server 2.4.61 ignores some use of the legacy content-type based
    configuration of handlers. "AddType" and similar configuration,
    under some circumstances where files are requested indirectly,
    result in source code disclosure of local content. For example,
    PHP scripts may be served instead of interpreted.
    Users are recommended to upgrade to version 2.4.62, which fixes
    this issue.
  * ) mod_proxy: Fix canonicalisation and FCGI env (PATH_INFO, SCRIPT_NAME) for
    "balancer:" URLs set via SetHandler, also allowing for "unix:" sockets
    with BalancerMember(s).  PR 69168.  [Yann Ylavic]
  * ) mod_proxy: Avoid AH01059 parsing error for SetHandler "unix:" URLs.
    PR 69160 [Yann Ylavic]
  * ) mod_ssl: Fix crashes in PKCS#11 ENGINE support with OpenSSL 3.2.
    [Joe Orton]
  * ) mod_ssl: Add support for loading certs/keys from pkcs11: URIs
    via OpenSSL 3.x providers.  [Ingo Franzki &lt;ifranzki linux.ibm.com&gt;]
  * ) mod_ssl: Restore SSL dumping on trace7 loglevel with OpenSSL &gt;= 3.0.
    [Ruediger Pluem, Yann Ylavic]
  * ) mpm_worker: Fix possible warning (AH00045) about children processes not
    terminating timely.  [Yann Ylavic]</changelog>
  <changelog author="Thorsten Kukuk &lt;kukuk@suse.com&gt;" date="1727697600">- Add /srv/www directories to filelist [bsc#1231027]
  (apache2 will not start since default config uses this directory)</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1730721600">- Explicitly mark start_apache2 as bash-dependent.</changelog>
  <changelog author="Martin Schreiner &lt;martin.schreiner@suse.com&gt;" date="1730808000">- Update httpd-framework to svn1921782.
- Fixes Apache's impact on bsc#1218342.</changelog>
</package>
<package pkgid="206cee064abc322a82c24fd91426c4146163282c170676091031cdc0fd969ce9ae8747340000d3b773afc21f58a11696f9752cedccf7aa4c0756fe6d88c44d64" name="apache2-event-debugsource" arch="x86_64">
  <version epoch="0" ver="2.4.62" rel="3.1"/>
  <changelog author="pgajdos@suse.com" date="1654689600">- update httpd-framework to svn revision 1898917</changelog>
  <changelog author="Stefan Schubert &lt;schubi@intern&gt;" date="1656417600">- Moved logrotate files from user specific directory /etc/logrotate.d
  to vendor specific directory /usr/etc/logrotate.d.</changelog>
  <changelog author="Stefan Schubert &lt;schubi@suse.com&gt;" date="1662033600">- Migration to /usr/etc: Saving user changed configuration files
  in /etc and restoring them while an RPM update.</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1663675200">- Remove references to README.QUICKSTART and point them to
  https://en.opensuse.org/SDB:Apache_installation (bsc#1203573)</changelog>
  <changelog author="Stephan Kulow &lt;coolo@suse.com&gt;" date="1663934400">- The 2.4.54 release brought support for PCRE2, but for that we also
  need to change buildrequires to pcre2-devel</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1670846400">- switch to pkgconfig(zlib) so that alternative providers can be
  used</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1674043200">- This update fixes the following security issues:
  * CVE-2022-37436 [bsc#1207251], mod_proxy backend HTTP response splitting
  * CVE-2022-36760 [bsc#1207250], mod_proxy_ajp Possible request smuggling
  * CVE-2006-20001 [bsc#1207247], mod_dav out of bounds read, or write of zero byte
- Update to 2.4.55:
  * ) SECURITY: CVE-2022-37436: Apache HTTP Server: mod_proxy prior to
    2.4.55 allows a backend to trigger HTTP response splitting
    (cve.mitre.org)
    Prior to Apache HTTP Server 2.4.55, a malicious backend can
    cause the response headers to be truncated early, resulting in
    some headers being incorporated into the response body. If the
    later headers have any security purpose, they will not be
    interpreted by the client.
    Credits: Dimas Fariski Setyawan Putra (@nyxsorcerer)
  * ) SECURITY: CVE-2022-36760: Apache HTTP Server: mod_proxy_ajp
    Possible request smuggling (cve.mitre.org)
    Inconsistent Interpretation of HTTP Requests ('HTTP Request
    Smuggling') vulnerability in mod_proxy_ajp of Apache HTTP Server
    allows an attacker to smuggle requests to the AJP server it
    forwards requests to.  This issue affects Apache HTTP Server
    Apache HTTP Server 2.4 version 2.4.54 and prior versions.
    Credits: ZeddYu_Lu from Qi'anxin Research Institute of Legendsec
    at Qi'anxin Group
  * ) SECURITY: CVE-2006-20001: mod_dav out of  bounds read, or write
    of zero byte (cve.mitre.org)
    A carefully crafted If: request header can cause a memory read,
    or write of a single zero byte, in a pool (heap) memory location
    beyond the header value sent. This could cause the process to
    crash.
    This issue affects Apache HTTP Server 2.4.54 and earlier.
  * ) mod_dav: Open the lock database read-only when possible.
    PR 36636 [Wilson Felipe &lt;wfelipe gmail.com&gt;, manu]
  * ) mod_proxy_http2: apply the standard httpd content type handling
    to responses from the backend, as other proxy modules do. Fixes PR 66391.
    Thanks to Jérôme Billiras for providing the patch.
    [Stefan Eissing]
  * ) mod_dav: mod_dav overrides dav_fs response on PUT failure. PR 35981
    [Basant Kumar Kukreja &lt;basant.kukreja sun.com&gt;, Alejandro Alvarez
    &lt;alejandro.alvarez.ayllon cern.ch&gt;]
  * ) mod_proxy_hcheck: Honor worker timeout settings.  [Yann Ylavic]
  * ) mod_http2: version 2.0.10 of the module, synchronizing changes
    with the gitgub version. This is a partial rewrite of how connections
    and streams are handled.
  - an APR pollset and pipes (where supported) are used to monitor
    the main connection and react to IO for request/response handling.
    This replaces the stuttered timed waits of earlier versions.
  - H2SerializeHeaders directive still exists, but has no longer an effect.
  - Clients that seemingly misbehave still get less resources allocated,
    but ongoing requests are no longer disrupted.
  - Fixed an issue since 1.15.24 that "Server" headers in proxied requests
    were overwritten instead of preserved. [PR by @daum3ns]
  - A regression in v1.15.24 was fixed that could lead to httpd child
    processes not being terminated on a graceful reload or when reaching
    MaxConnectionsPerChild. When unprocessed h2 requests were queued at
    the time, these could stall. See #212.
  - Improved information displayed in 'server-status' for H2 connections when
    Extended Status is enabled. Now one can see the last request that IO
    operations happened on and transferred IO stats are updated as well.
  - When reaching server limits, such as MaxRequestsPerChild, the HTTP/2 connection
    send a GOAWAY frame much too early on new connections, leading to invalid
    protocol state and a client failing the request. See PR65731 at
    &lt;https://bz.apache.org/bugzilla/show_bug.cgi?id=65731&gt;.
    The module now initializes the HTTP/2 protocol correctly and allows the
    client to submit one request before the shutdown via a GOAWAY frame
    is being announced.
  - :scheme pseudo-header values, not matching the
    connection scheme, are forwarded via absolute uris to the
    http protocol processing to preserve semantics of the request.
    Checks on combinations of pseudo-headers values/absence
    have been added as described in RFC 7540. Fixes #230.
  - A bug that prevented trailers (e.g. HEADER frame at the end) to be
    generated in certain cases was fixed. See #233 where it prevented
    gRPC responses to be properly generated.
  - Request and response header values are automatically stripped of leading
    and trialing space/tab characters. This is equivalent behaviour to what
    Apache httpd's http/1.1 parser does.
    The checks for this in nghttp2 v1.50.0+ are disabled.
  - Extensive testing in production done by Alessandro Bianchi (@alexskynet)
    on the v2.0.x versions for stability. Many thanks!
  * ) mod_proxy_http2: fixed #235 by no longer forwarding 'Host:' header when
    request ':authority' is known. Improved test case that did not catch that
    the previous 'fix' was incorrect.
  * ) mod_proxy_hcheck: hcmethod now allows for HTTP/1.1 requests
    using GET11, HEAD11 and/or OPTIONS11. [Jim Jagielski]
  * ) mod_proxy: The AH03408 warning for a forcibly closed backend
    connection is now logged at INFO level.  [Yann Ylavic]
  * ) mod_ssl: When dumping the configuration, the existence of
    certificate/key files is no longer tested.  [Joe Orton]
  * ) mod_authn_core: Add expression support to AuthName and AuthType.
    [Graham Leggett]
  * ) mod_ssl: when a proxy connection had handled a request using SSL, an
    error was logged when "SSLProxyEngine" was only configured in the
    location/proxy section and not the overall server. The connection
    continued to work, the error log was in error. Fixed PR66190.
    [Stefan Eissing]
  * ) mod_proxy_hcheck: Re-enable workers in standard ERROR state. PR 66302.
    [Alessandro Cavaliere &lt;alessandro.cavalier7 unibo.it&gt;]
  * ) mod_proxy_hcheck: Detect AJP/CPING support correctly. PR 66300.
    [Alessandro Cavaliere &lt;alessandro.cavalier7 unibo.it&gt;]
  * ) mod_http2: Export mod_http2.h as public header. [Stefan Eissing]
  * ) mod_md: a new directive `MDStoreLocks` can be used on cluster
    setups with a shared file system for `MDStoreDir` to order
    activation of renewed certificates when several cluster nodes are
    restarted at the same time. Store locks are not enabled by default.
    Restored curl_easy cleanup behaviour from v2.4.14 and refactored
    the use of curl_multi for OCSP requests to work with that.
    Fixes &lt;https://github.com/icing/mod_md/issues/293&gt;.
  * ) core: Avoid an overflow on large inputs in ap_is_matchexp.  PR 66033
    [Ruediger Pluem]
  * ) mod_heartmonitor: Allow "HeartbeatMaxServers 0" to use file based
    storage instead of slotmem. Needed after setting
    HeartbeatMaxServers default to the documented value 10 in 2.4.54.
    PR 66131.  [Jérôme Billiras]
  * ) mod_dav: DAVlockDiscovery option to disable WebDAV lock discovery
    This is a game changer for performances if client use PROPFIND a lot,
    PR 66313. [Emmanuel Dreyfus]</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1678276800">- This update fixes the following security issues:
  * CVE-2023-27522 [bsc#1209049]: mod_proxy_uwsgi HTTP response splitting
  * CVE-2023-25690 [bsc#1209047]: HTTP request splitting with mod_rewrite and mod_proxy
- Update to 2.4.56:
  * ) rotatelogs: Add -T flag to allow subsequent rotated logfiles to be
    truncated without the initial logfile being truncated.  [Eric Covener]
  * ) mod_ldap: LDAPConnectionPoolTTL should accept negative values in order to
    allow connections of any age to be reused. Up to now, a negative value
    was handled as an error when parsing the configuration file.  PR 66421.
    [nailyk &lt;bzapache nailyk.fr&gt;, Christophe Jaillet]
  * ) mod_proxy_ajp: Report an error if the AJP backend sends an invalid number
    of headers. [Ruediger Pluem]
  * ) mod_md:
  - Enabling ED25519 support and certificate transparency information when
    building with libressl v3.5.0 and newer. Thanks to Giovanni Bechis.
  - MDChallengeDns01 can now be configured for individual domains.
    Thanks to Jérôme Billiras (@bilhackmac) for the initial PR.
  - Fixed a bug found by Jérôme Billiras (@bilhackmac) that caused the challenge
    teardown not being invoked as it should.
    [Stefan Eissing]
  * ) mod_http2: client resets of HTTP/2 streams led to unwanted 500 errors
    reported in access logs and error documents. The processing of the
    reset was correct, only unneccesary reporting was caused.
    [Stefan Eissing]
  * ) mod_proxy_uwsgi: Stricter backend HTTP response parsing/validation.
    [Yann Ylavic]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1680868800">- Update to 2.4.57:
  * ) mod_proxy: Check before forwarding that a nocanon path has not been
    rewritten with spaces during processing.  [Yann Ylavic]
  * ) mod_proxy: In case that AllowEncodedSlashes is set to NoDecode do not
    double encode encoded slashes in the URL sent by the reverse proxy to the
    backend. [Ruediger Pluem]
  * ) mod_http2: fixed a crash during connection termination. See PR 66539.
    [Stefan Eissing]
  * ) mod_rewrite: Fix a 2.4.56 regression for substitutions ending
    in a question mark. PR66547. [Eric Covener]
  * ) mod_rewrite: Add "BCTLS" and "BNE" RewriteRule flags. Re-allow encoded
    characters on redirections without the "NE" flag.
    [Yann Ylavic, Eric Covener]
  * ) mod_proxy: Fix double encoding of the uri-path of the request forwarded
    to the origin server, when using mapping=encoded|servlet.  [Yann Ylavic]
  * ) mod_mime: Do not match the extention against possible query string
    parameters in case ProxyPass was used with the nocanon option.
    [Ruediger Pluem]</changelog>
  <changelog author="Dirk Stoecker &lt;opensuse@dstoecker.de&gt;" date="1691236800">- Enable building of mod_md</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1697716800">- Update to 2.4.58:
  * ) SECURITY: CVE-2023-45802: Apache HTTP Server: HTTP/2 stream
    memory not reclaimed right away on RST (cve.mitre.org)
    When a HTTP/2 stream was reset (RST frame) by a client, there
    was a time window were the request's memory resources were not
    reclaimed immediately. Instead, de-allocation was deferred to
    connection close. A client could send new requests and resets,
    keeping the connection busy and open and causing the memory
    footprint to keep on growing. On connection close, all resources
    were reclaimed, but the process might run out of memory before
    that.
    This was found by the reporter during testing of CVE-2023-44487
    (HTTP/2 Rapid Reset Exploit) with their own test client. During
    "normal" HTTP/2 use, the probability to hit this bug is very
    low. The kept memory would not become noticeable before the
    connection closes or times out.
    Users are recommended to upgrade to version 2.4.58, which fixes
    the issue.
    Credits: Will Dormann of Vul Labs
  * ) SECURITY: CVE-2023-43622: Apache HTTP Server: DoS in HTTP/2 with
    initial windows size 0 (cve.mitre.org)
    An attacker, opening a HTTP/2 connection with an initial window
    size of 0, was able to block handling of that connection
    indefinitely in Apache HTTP Server. This could be used to
    exhaust worker resources in the server, similar to the well
    known "slow loris" attack pattern.
    This has been fixed in version 2.4.58, so that such connection
    are terminated properly after the configured connection timeout.
    This issue affects Apache HTTP Server: from 2.4.55 through
    2.4.57.
    Users are recommended to upgrade to version 2.4.58, which fixes
    the issue.
    Credits: Prof. Sven Dietrich (City University of New York)
  * ) SECURITY: CVE-2023-31122: mod_macro buffer over-read
    (cve.mitre.org)
    Out-of-bounds Read vulnerability in mod_macro of Apache HTTP
    Server.This issue affects Apache HTTP Server: through 2.4.57.
    Credits: David Shoon (github/davidshoon)
  * ) mod_ssl: Silence info log message "SSL Library Error: error:0A000126:
    SSL routines::unexpected eof while reading" when using
    OpenSSL 3 by setting SSL_OP_IGNORE_UNEXPECTED_EOF if
    available. [Rainer Jung]
  * ) mod_http2: improved early cleanup of streams.
    [Stefan Eissing]
  * ) mod_proxy_http2: improved error handling on connection errors while
    response is already underway.
    [Stefan Eissing]
  * ) mod_http2: fixed a bug that could lead to a crash in main connection
    output handling. This occured only when the last request on a HTTP/2
    connection had been processed and the session decided to shut down.
    This could lead to an attempt to send a final GOAWAY while the previous
    write was still in progress. See PR 66646.
    [Stefan Eissing]
  * ) mod_proxy_http2: fix `X-Forward-Host` header to carry the correct value.
    Fixes PR66752.
    [Stefan Eissing]
  * ) mod_http2: added support for bootstrapping WebSockets via HTTP/2, as
    described in RFC 8441. A new directive 'H2WebSockets on|off' has been
    added. The feature is by default not enabled.
    As also discussed in the manual, this feature should work for setups
    using "ProxyPass backend-url upgrade=websocket" without further changes.
    Special server modules for WebSockets will have to be adapted,
    most likely, as the handling if IO events is different with HTTP/2.
    HTTP/2 WebSockets are supported on platforms with native pipes. This
    excludes Windows.
    [Stefan Eissing]
  * ) mod_rewrite: Fix a regression with both a trailing ? and [QSA].
    in OCSP stapling. PR 66672. [Frank Meier &lt;frank.meier ergon.ch&gt;, covener]
  * ) mod_http2: fixed a bug in flushing pending data on an already closed
    connection that could lead to a busy loop, preventing the HTTP/2 session
    to close down successfully. Fixed PR 66624.
    [Stefan Eissing]
  * ) mod_http2: v2.0.15 with the following fixes and improvements
  - New directive 'H2EarlyHint name value' to add headers to a response,
    picked up already when a "103 Early Hints" response is sent. 'name' and
    'value' must comply to the HTTP field restrictions.
    This directive can be repeated several times and header fields of the
    same names add. Sending a 'Link' header with 'preload' relation will
    also cause a HTTP/2 PUSH if enabled and supported by the client.
  - Fixed an issue where requests were not logged and accounted in a timely
    fashion when the connection returns to "keepalive" handling, e.g. when
    the request served was the last outstanding one.
    This led to late appearance in access logs with wrong duration times
    reported.
  - Accurately report the bytes sent for a request in the '%O' Log format.
    This addresses #203, a long outstanding issue where mod_h2 has reported
    numbers over-eagerly from internal buffering and not what has actually
    been placed on the connection.
    The numbers are now the same with and without H2CopyFiles enabled.
    [Stefan Eissing]
  * ) mod_proxy_http2: fix retry handling to not leak temporary errors.
    On detecting that that an existing connection was shutdown by the other
    side, a 503 response leaked even though the request was retried on a
    fresh connection.
    [Stefan Eissing]
  * ) mod_rewrite: Add server directory to include path as mod_rewrite requires
    test_char.h. PR 66571 [Valeria Petrov &lt;valeria.petrov@spinetix.com&gt;]
  * ) mod_http2: new directive `H2ProxyRequests on|off` to enable handling
    of HTTP/2 requests in a forward proxy configuration.
    General forward proxying is enabled via `ProxyRequests`. If the
    HTTP/2 protocol is also enabled for such a server/host, this new
    directive is needed in addition.
    [Stefan Eissing]
  * ) core: Updated conf/mime.types:
  - .js moved from 'application/javascript' to 'text/javascript'
  - .mjs was added as 'text/javascript'
  - add .opus ('audio/ogg')
  - add 'application/vnd.geogebra.slides'
  - add WebAssembly MIME types and extension
    [Mathias Bynens &lt;@mathiasbynens&gt; via PR 318,
    Richard de Boer &lt;richard tubul.net&gt;, Dave Hodder &lt;dmh dmh.org.uk&gt;,
    Zbynek Konecny &lt;zbynek1729 gmail.com&gt;]
  * ) mod_proxy_http2: fixed using the wrong "bucket_alloc" from the backend
    connection when sending data on the frontend one. This caused crashes
    or infinite loops in rare situations.
  * ) mod_proxy_http2: fixed a bug in retry/response handling that could lead
    to wrong status codes or HTTP messages send at the end of response bodies
    exceeding the announced content-length.
  * ) mod_proxy_http2: fix retry handling to not leak temporary errors.
    On detecting that that an existing connection was shutdown by the other
    side, a 503 response leaked even though the request was retried on a
    fresh connection.
  * ) mod_http2: fixed a bug that did cleanup of consumed and pending buckets in
    the wrong order when a bucket_beam was destroyed.
    [Stefan Eissing]
  * ) mod_http2: avoid double chunked-encoding on internal redirects.
    PR 66597 [Yann Ylavic, Stefan Eissing]
  * ) mod_http2: Fix reporting of `Total Accesses` in server-status to not count
    HTTP/2 requests twice. Fixes PR 66801.
    [Stefan Eissing]
  * ) mod_ssl: Fix handling of Certificate Revoked messages
    in OCSP stapling. PR 66626. [&lt;gmoniker gmail.com&gt;]
  * ) mod_http2: fixed a bug in handling of stream timeouts.
    [Stefan Eissing]
  * ) mod_tls: updating to rustls-ffi version 0.9.2 or higher.
    Checking in configure for proper version installed. Code
    fixes for changed clienthello member name.
    [Stefan Eissing]
  * ) mod_md:
  - New directive `MDMatchNames all|servernames` to allow more control over how
    MDomains are matched to VirtualHosts.
  - New directive `MDChallengeDns01Version`. Setting this to `2` will provide
    the command also with the challenge value on `teardown` invocation. In version
    1, the default, only the `setup` invocation gets this parameter.
    Refs #312. Thanks to @domrim for the idea.
  - For Managed Domain in "manual" mode, the checks if all used ServerName and
    ServerAlias are part of the MDomain now reports a warning instead of an error
    (AH10040) when not all names are present.
  - MDChallengeDns01 can now be configured for individual domains.
    Using PR from JÃ©rÃ´me Billiras (@bilhackmac) and adding test case and fixing proper working
  - Fixed a bug found by JÃ©rÃ´me Billiras (@bilhackmac) that caused the challenge
    teardown not being invoked as it should.
  * ) mod_ldap: Avoid performance overhead of APR-util rebind cache for
    OpenLDAP 2.2+.  PR 64414.  [Joe Orton]
  * ) mod_http2: new directive 'H2MaxDataFrameLen n' to limit the maximum
    amount of response body bytes put into a single HTTP/2 DATA frame.
    Setting this to 0 places no limit (but the max size allowed by the
    protocol is observed).
    The module, by default, tries to use the maximum size possible, which is
    somewhat around 16KB. This sets the maximum. When less response data is
    available, smaller frames will be sent.
  * ) mod_md: fixed passing of the server environment variables to programs
    started via MDMessageCmd and MDChallengeDns01 on *nix system.
    See &lt;https://github.com/icing/mod_md/issues/319&gt;.
    [Stefan Eissing]
  * ) mod_dav: Add DavBasePath directive to configure the repository root
    path.  PR 35077.  [Joe Orton]
  * ) mod_alias: Add AliasPreservePath directive to map the full
    path after the alias in a location. [Graham Leggett]
  * ) mod_alias: Add RedirectRelative to allow relative redirect targets to be
    issued as-is. [Eric Covener, Graham Leggett]
  * ) core: Add formats %{z} and %{strftime-format} to ErrorLogFormat, and make
    sure that if the format is configured early enough it applies to every log
    line.  PR 62161.  [Yann Ylavic]
  * ) mod_deflate: Add DeflateAlterETag to control how the ETag
    is modified. The 'NoChange' parameter mimics 2.2.x behavior.
    PR 45023, PR 39727. [Eric Covener]
  * ) core: Optimize send_brigade_nonblocking(). [Yann Ylavic, Christophe Jaillet]
  * ) mod_status: Remove duplicate keys "BusyWorkers" and "IdleWorkers".
    Resolve inconsistency between the previous two occurrences by
    counting workers in state SERVER_GRACEFUL no longer as busy,
    but instead in a new counter "GracefulWorkers" (or on HTML
    view as "workers gracefully restarting"). Also add the graceful
    counter as a new column to the existing HTML per process table
    for async MPMs. PR 63300. [Rainer Jung]</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1706529600">- use grep -E for egrep</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1708430400">- Use %autosetup macro. Allows to eliminate the usage of deprecated
  %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1712232000">- Update to 2.4.59:
  * ) mod_deflate: Fixes and better logging for handling various
    error and edge cases. [Eric Covener, Yann Ylavic, Joe Orton,
    Eric Norris &lt;enorris etsy.com&gt;]
  * ) Add CGIScriptTimeout to mod_cgi. [Eric Covener]
  * ) mod_xml2enc: Tolerate libxml2 2.12.0 and later.  PR 68610
    [ttachi &lt;tachihara AT hotmail.com&gt;]
  * ) mod_slotmem_shm: Use ap_os_is_path_absolute() to make it portable.
    [Jean-Frederic Clere]
  * ) mod_ssl: Use OpenSSL-standard functions to assemble CA
    name lists for SSLCACertificatePath/SSLCADNRequestPath.
    Names will now be consistently sorted. PR 61574.
    [Joe Orton]
  * ) mod_xml2enc: Update check to accept any text/ media type
    or any XML media type per RFC 7303, avoiding
    corruption of Microsoft OOXML formats.  PR 64339.
    [Joseph Heenan &lt;joseph.heenan fintechlabs.io&gt;, Joe Orton]
  * ) mod_http2: v2.0.26 with the following fixes:
  - Fixed `Date` header on requests upgraded from HTTP/1.1 (h2c). Fixes
    &lt;https://github.com/icing/mod_h2/issues/272&gt;.
  - Fixed small memory leak in h2 header bucket free. Thanks to
    Michael Kaufmann for finding this and providing the fix.
  * ) htcacheclean: In -a/-A mode, list all files per subdirectory
    rather than only one. PR 65091.
    [Artem Egorenkov &lt;aegorenkov.91 gmail.com&gt;]
  * ) mod_ssl: SSLProxyMachineCertificateFile/Path may reference files
    which include CA certificates; those CA certs are treated as if
    configured with SSLProxyMachineCertificateChainFile.  [Joe Orton]
  * ) htpasswd, htdbm, dbmmanage: Update help&amp;docs to refer to
    "hashing", rather than "encrypting" passwords.
    [Michele Preziuso &lt;mpreziuso kaosdynamics.com&gt;]
  * ) mod_ssl: Fix build with LibreSSL 2.0.7+. PR 64047.
    [Giovanni Bechis, Yann Ylavic]
  * ) htpasswd: Add support for passwords using SHA-2.  [Joe Orton,
    Yann Ylavic]
  * ) core: Allow mod_env to override system environment vars. [Joe Orton]
  * ) Allow mod_dav_fs to tolerate race conditions between PROPFIND and an
    operation which removes a directory/file between apr_dir_read() and
    apr_stat(). Current behaviour is to abort the connection which seems
    inferior to tolerating (and logging) the error. [Joe Orton]
  * ) mod_ldap: HTML-escape data in the ldap-status handler.
    [Eric Covener, Chamal De Silva]
  * ) mod_ssl: Disable the OpenSSL ENGINE API when OPENSSL_NO_ENGINE is set.
    Allow for "SSLCryptoDevice builtin" if the ENGINE API is not available,
    notably with OpenSSL &gt;= 3.  PR 68080.  [Yann Ylavic, Joe Orton]
  * ) mod_ssl: Improve compatibility with OpenSSL 3, fix build warnings about
    deprecated ENGINE_ API, honor OPENSSL_API_COMPAT setting while defaulting
    to compatibitily with version 1.1.1 (including ENGINEs / SSLCryptoDevice).
    [Yann Ylavic]
  * ) mod_ssl: release memory to the OS when needed. [Giovanni Bechis]
  * ) mod_proxy: Ignore (and warn about) enablereuse=on for ProxyPassMatch when
    some dollar substitution (backreference) happens in the hostname or port
    part of the URL.  [Yann Ylavic]
  * ) mod_proxy: Allow to set a TTL for how long DNS resolutions to backend
    systems are cached. [Yann Ylavic]
  * ) mod_proxy: Add optional third argument for ProxyRemote, which
    configures Basic authentication credentials to pass to the remote
    proxy.  PR 37355.  [Joe Orton]</changelog>
  <changelog author="pgajdos@suse.com" date="1718280000">- added patches [bsc#1226217]
  https://github.com/apache/httpd/pull/444/commits/c2fffd29b0f58bdc9caaaff4fec68e17a676f182
  + apache2-issue-444.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1720094400">- Update to 2.4.61
  * ) SECURITY: CVE-2024-39884: Apache HTTP Server: source code
    disclosure with handlers configured via AddType (cve.mitre.org)
    [boo#1227353]
    A regression in the core of Apache HTTP Server 2.4.60 ignores
    some use of the legacy content-type based configuration of
    handlers.   "AddType" and similar configuration, under some
    circumstances where files are requested indirectly, result in
    source code disclosure of local content. For example, PHP
    scripts may be served instead of interpreted.
    Users are recommended to upgrade to version 2.4.61, which fixes
    this issue.
- Update to 2.4.60
  * ) SECURITY: CVE-2024-39573: Apache HTTP Server: mod_rewrite proxy
    handler substitution (cve.mitre.org) [boo#1227271]
    Potential SSRF in mod_rewrite in Apache HTTP Server 2.4.59 and
    earlier allows an attacker to cause unsafe RewriteRules to
    unexpectedly setup URL's to be handled by mod_proxy.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38477: Apache HTTP Server: Crash resulting in
    Denial of Service in mod_proxy via a malicious request
    (cve.mitre.org) [boo#1227270]
    null pointer dereference in mod_proxy in Apache HTTP Server
    2.4.59 and earlier allows an attacker to crash the server via a
    malicious request.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38476: Apache HTTP Server may use
    exploitable/malicious backend application output to run local
    handlers via internal redirect (cve.mitre.org) [boo#1227269]
    Vulnerability in core of Apache HTTP Server 2.4.59 and earlier
    are vulnerably to information disclosure, SSRF or local script
    execution via backend applications whose response headers are
    malicious or exploitable.
    Note: Some legacy uses of the 'AddType' directive to connect a
    request to a handler must be ported to 'AddHandler' after this fix.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38475: Apache HTTP Server weakness in
    mod_rewrite when first segment of substitution matches
    filesystem path. (cve.mitre.org) [boo#1227268]
    Improper escaping of output in mod_rewrite in Apache HTTP Server
    2.4.59 and earlier allows an attacker to map URLs to filesystem
    locations that are permitted to be served by the server but are
    not intentionally/directly reachable by any URL, resulting in
    code execution or source code disclosure.
    Substitutions in server context that use a backreferences or
    variables as the first segment of the substitution are affected.
    Some unsafe RewiteRules will be broken by this change and the
    rewrite flag "UnsafePrefixStat" can be used to opt back in once
    ensuring the substitution is appropriately constrained.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38474: Apache HTTP Server weakness with
    encoded question marks in backreferences (cve.mitre.org)
    [boo#1227278]
    Substitution encoding issue in mod_rewrite in Apache HTTP Server
    2.4.59 and earlier allows attacker to execute scripts in
    directories permitted by the configuration but not directly
    reachable by any URL or source disclosure of scripts meant to
    only to be executed as CGI.
    Note: Some RewriteRules that capture and substitute unsafely will now
    fail unless rewrite flag "UnsafeAllow3F" is specified.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38473: Apache HTTP Server proxy encoding
    problem (cve.mitre.org) [boo#1227276]
    Encoding problem in mod_proxy in Apache HTTP Server 2.4.59 and
    earlier allows request URLs with incorrect encoding to be sent
    to backend services, potentially bypassing authentication via
    crafted requests.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38472: Apache HTTP Server on WIndows UNC SSRF
    (cve.mitre.org) [boo#1227267]
    SSRF in Apache HTTP Server on Windows allows to potentially leak
    NTML hashes to a malicious server via SSRF and malicious
    requests or content
    Note: Existing configurations that access UNC paths
    will have to configure new directive "UNCList" to allow access
    during request processing.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-36387: Apache HTTP Server: DoS by Null
    pointer in websocket over HTTP/2 (cve.mitre.org) [boo#1227272]
    Serving WebSocket protocol upgrades over a HTTP/2 connection
    could result in a Null Pointer dereference, leading to a crash
    of the server process, degrading performance.
    Credits: Marc Stern (&lt;marc.stern AT approach-cyber.com&gt;)
  * ) mod_proxy: Fix DNS requests and connections closed before the
    configured addressTTL.  BZ 69126.  [Yann Ylavic]
  * ) core: On Linux, log the real thread ID in error logs.  [Joe Orton]
  * ) core: Support zone/scope in IPv6 link-local addresses in Listen and
    VirtualHost directives (requires APR 1.7.x or later).  PR 59396
    [Joe Orton]
  * ) mod_ssl: Reject client-initiated renegotiation with a TLS alert
    (rather than connection closure).  [Joe Orton, Yann Ylavic]
  * ) Updated mime.types.  [Mohamed Akram &lt;mohd.akram outlook.com&gt;,
    Adam Silverstein &lt;adamsilverstein earthboundhosting.com&gt;]
  * ) mod_ssl: Fix a regression that causes the default DH parameters for a key
    no longer set and thus effectively disabling DH ciphers when no explicit
    DH parameters are set. PR 68863 [Ruediger Pluem]
  * ) mod_cgid: Optional support for file descriptor passing, fixing
    error log handling (configure --enable-cgid-fdpassing) on Unix
    platforms. PR 54221.  [Joe Orton]
  * ) mod_cgid/mod_cgi: Distinguish script stderr output clearly in
    error logs.  PR 61980.  [Hank Ibell &lt;hwibell gmail.com&gt;]
  * ) mod_tls: update version of rustls-ffi to v0.13.0.
    [Daniel McCarney (@cpu}]
  * ) mod_md:
  - Using OCSP stapling information to trigger certificate renewals. Proposed
    by @frasertweedale.
  - Added directive `MDCheckInterval` to control how often the server checks
    for detected revocations. Added proposals for configurations in the
    README.md chapter "Revocations".
  - OCSP stapling: accept OCSP responses without a `nextUpdate` entry which is
    allowed in RFC 6960. Treat those as having an update interval of 12 hours.
    Added by @frasertweedale.
  - Adapt OpenSSL usage to changes in their API. By Yann Ylavic.
- removed patches (upstreamed)
  - apache2-issue-444.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- Update to 2.4.62
  * ) SECURITY: CVE-2024-40898: Apache HTTP Server: SSRF with
    mod_rewrite in server/vhost context on Windows (cve.mitre.org)
    [boo#1228098]
    SSRF in Apache HTTP Server on Windows with mod_rewrite in
    server/vhost context, allows to potentially leak NTML hashes to
    a malicious server via SSRF and malicious requests.
    Users are recommended to upgrade to version 2.4.62 which fixes
    this issue.
    Credits: Smi1e (DBAPPSecurity Ltd.)
  * ) SECURITY: CVE-2024-40725: Apache HTTP Server: source code
    disclosure with handlers configured via AddType (cve.mitre.org)
    [boo#1228097]
    A partial fix for  CVE-2024-39884 in the core of Apache HTTP
    Server 2.4.61 ignores some use of the legacy content-type based
    configuration of handlers. "AddType" and similar configuration,
    under some circumstances where files are requested indirectly,
    result in source code disclosure of local content. For example,
    PHP scripts may be served instead of interpreted.
    Users are recommended to upgrade to version 2.4.62, which fixes
    this issue.
  * ) mod_proxy: Fix canonicalisation and FCGI env (PATH_INFO, SCRIPT_NAME) for
    "balancer:" URLs set via SetHandler, also allowing for "unix:" sockets
    with BalancerMember(s).  PR 69168.  [Yann Ylavic]
  * ) mod_proxy: Avoid AH01059 parsing error for SetHandler "unix:" URLs.
    PR 69160 [Yann Ylavic]
  * ) mod_ssl: Fix crashes in PKCS#11 ENGINE support with OpenSSL 3.2.
    [Joe Orton]
  * ) mod_ssl: Add support for loading certs/keys from pkcs11: URIs
    via OpenSSL 3.x providers.  [Ingo Franzki &lt;ifranzki linux.ibm.com&gt;]
  * ) mod_ssl: Restore SSL dumping on trace7 loglevel with OpenSSL &gt;= 3.0.
    [Ruediger Pluem, Yann Ylavic]
  * ) mpm_worker: Fix possible warning (AH00045) about children processes not
    terminating timely.  [Yann Ylavic]</changelog>
  <changelog author="Thorsten Kukuk &lt;kukuk@suse.com&gt;" date="1727697600">- Add /srv/www directories to filelist [bsc#1231027]
  (apache2 will not start since default config uses this directory)</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1730721600">- Explicitly mark start_apache2 as bash-dependent.</changelog>
  <changelog author="Martin Schreiner &lt;martin.schreiner@suse.com&gt;" date="1730808000">- Update httpd-framework to svn1921782.
- Fixes Apache's impact on bsc#1218342.</changelog>
</package>
<package pkgid="954bca0e3e451384faa616a2acf17a02f9ca717eeb60e50d96cd182499c8f4ab91c51670dcafa3888f5e98933a1f6fefe156e11bb8b879e5384116ef354bff7d" name="apache2-manual" arch="noarch">
  <version epoch="0" ver="2.4.62" rel="3.1"/>
  <changelog author="pgajdos@suse.com" date="1654689600">- update httpd-framework to svn revision 1898917</changelog>
  <changelog author="Stefan Schubert &lt;schubi@intern&gt;" date="1656417600">- Moved logrotate files from user specific directory /etc/logrotate.d
  to vendor specific directory /usr/etc/logrotate.d.</changelog>
  <changelog author="Stefan Schubert &lt;schubi@suse.com&gt;" date="1662033600">- Migration to /usr/etc: Saving user changed configuration files
  in /etc and restoring them while an RPM update.</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1663675200">- Remove references to README.QUICKSTART and point them to
  https://en.opensuse.org/SDB:Apache_installation (bsc#1203573)</changelog>
  <changelog author="Stephan Kulow &lt;coolo@suse.com&gt;" date="1663934400">- The 2.4.54 release brought support for PCRE2, but for that we also
  need to change buildrequires to pcre2-devel</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1670846400">- switch to pkgconfig(zlib) so that alternative providers can be
  used</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1674043200">- This update fixes the following security issues:
  * CVE-2022-37436 [bsc#1207251], mod_proxy backend HTTP response splitting
  * CVE-2022-36760 [bsc#1207250], mod_proxy_ajp Possible request smuggling
  * CVE-2006-20001 [bsc#1207247], mod_dav out of bounds read, or write of zero byte
- Update to 2.4.55:
  * ) SECURITY: CVE-2022-37436: Apache HTTP Server: mod_proxy prior to
    2.4.55 allows a backend to trigger HTTP response splitting
    (cve.mitre.org)
    Prior to Apache HTTP Server 2.4.55, a malicious backend can
    cause the response headers to be truncated early, resulting in
    some headers being incorporated into the response body. If the
    later headers have any security purpose, they will not be
    interpreted by the client.
    Credits: Dimas Fariski Setyawan Putra (@nyxsorcerer)
  * ) SECURITY: CVE-2022-36760: Apache HTTP Server: mod_proxy_ajp
    Possible request smuggling (cve.mitre.org)
    Inconsistent Interpretation of HTTP Requests ('HTTP Request
    Smuggling') vulnerability in mod_proxy_ajp of Apache HTTP Server
    allows an attacker to smuggle requests to the AJP server it
    forwards requests to.  This issue affects Apache HTTP Server
    Apache HTTP Server 2.4 version 2.4.54 and prior versions.
    Credits: ZeddYu_Lu from Qi'anxin Research Institute of Legendsec
    at Qi'anxin Group
  * ) SECURITY: CVE-2006-20001: mod_dav out of  bounds read, or write
    of zero byte (cve.mitre.org)
    A carefully crafted If: request header can cause a memory read,
    or write of a single zero byte, in a pool (heap) memory location
    beyond the header value sent. This could cause the process to
    crash.
    This issue affects Apache HTTP Server 2.4.54 and earlier.
  * ) mod_dav: Open the lock database read-only when possible.
    PR 36636 [Wilson Felipe &lt;wfelipe gmail.com&gt;, manu]
  * ) mod_proxy_http2: apply the standard httpd content type handling
    to responses from the backend, as other proxy modules do. Fixes PR 66391.
    Thanks to Jérôme Billiras for providing the patch.
    [Stefan Eissing]
  * ) mod_dav: mod_dav overrides dav_fs response on PUT failure. PR 35981
    [Basant Kumar Kukreja &lt;basant.kukreja sun.com&gt;, Alejandro Alvarez
    &lt;alejandro.alvarez.ayllon cern.ch&gt;]
  * ) mod_proxy_hcheck: Honor worker timeout settings.  [Yann Ylavic]
  * ) mod_http2: version 2.0.10 of the module, synchronizing changes
    with the gitgub version. This is a partial rewrite of how connections
    and streams are handled.
  - an APR pollset and pipes (where supported) are used to monitor
    the main connection and react to IO for request/response handling.
    This replaces the stuttered timed waits of earlier versions.
  - H2SerializeHeaders directive still exists, but has no longer an effect.
  - Clients that seemingly misbehave still get less resources allocated,
    but ongoing requests are no longer disrupted.
  - Fixed an issue since 1.15.24 that "Server" headers in proxied requests
    were overwritten instead of preserved. [PR by @daum3ns]
  - A regression in v1.15.24 was fixed that could lead to httpd child
    processes not being terminated on a graceful reload or when reaching
    MaxConnectionsPerChild. When unprocessed h2 requests were queued at
    the time, these could stall. See #212.
  - Improved information displayed in 'server-status' for H2 connections when
    Extended Status is enabled. Now one can see the last request that IO
    operations happened on and transferred IO stats are updated as well.
  - When reaching server limits, such as MaxRequestsPerChild, the HTTP/2 connection
    send a GOAWAY frame much too early on new connections, leading to invalid
    protocol state and a client failing the request. See PR65731 at
    &lt;https://bz.apache.org/bugzilla/show_bug.cgi?id=65731&gt;.
    The module now initializes the HTTP/2 protocol correctly and allows the
    client to submit one request before the shutdown via a GOAWAY frame
    is being announced.
  - :scheme pseudo-header values, not matching the
    connection scheme, are forwarded via absolute uris to the
    http protocol processing to preserve semantics of the request.
    Checks on combinations of pseudo-headers values/absence
    have been added as described in RFC 7540. Fixes #230.
  - A bug that prevented trailers (e.g. HEADER frame at the end) to be
    generated in certain cases was fixed. See #233 where it prevented
    gRPC responses to be properly generated.
  - Request and response header values are automatically stripped of leading
    and trialing space/tab characters. This is equivalent behaviour to what
    Apache httpd's http/1.1 parser does.
    The checks for this in nghttp2 v1.50.0+ are disabled.
  - Extensive testing in production done by Alessandro Bianchi (@alexskynet)
    on the v2.0.x versions for stability. Many thanks!
  * ) mod_proxy_http2: fixed #235 by no longer forwarding 'Host:' header when
    request ':authority' is known. Improved test case that did not catch that
    the previous 'fix' was incorrect.
  * ) mod_proxy_hcheck: hcmethod now allows for HTTP/1.1 requests
    using GET11, HEAD11 and/or OPTIONS11. [Jim Jagielski]
  * ) mod_proxy: The AH03408 warning for a forcibly closed backend
    connection is now logged at INFO level.  [Yann Ylavic]
  * ) mod_ssl: When dumping the configuration, the existence of
    certificate/key files is no longer tested.  [Joe Orton]
  * ) mod_authn_core: Add expression support to AuthName and AuthType.
    [Graham Leggett]
  * ) mod_ssl: when a proxy connection had handled a request using SSL, an
    error was logged when "SSLProxyEngine" was only configured in the
    location/proxy section and not the overall server. The connection
    continued to work, the error log was in error. Fixed PR66190.
    [Stefan Eissing]
  * ) mod_proxy_hcheck: Re-enable workers in standard ERROR state. PR 66302.
    [Alessandro Cavaliere &lt;alessandro.cavalier7 unibo.it&gt;]
  * ) mod_proxy_hcheck: Detect AJP/CPING support correctly. PR 66300.
    [Alessandro Cavaliere &lt;alessandro.cavalier7 unibo.it&gt;]
  * ) mod_http2: Export mod_http2.h as public header. [Stefan Eissing]
  * ) mod_md: a new directive `MDStoreLocks` can be used on cluster
    setups with a shared file system for `MDStoreDir` to order
    activation of renewed certificates when several cluster nodes are
    restarted at the same time. Store locks are not enabled by default.
    Restored curl_easy cleanup behaviour from v2.4.14 and refactored
    the use of curl_multi for OCSP requests to work with that.
    Fixes &lt;https://github.com/icing/mod_md/issues/293&gt;.
  * ) core: Avoid an overflow on large inputs in ap_is_matchexp.  PR 66033
    [Ruediger Pluem]
  * ) mod_heartmonitor: Allow "HeartbeatMaxServers 0" to use file based
    storage instead of slotmem. Needed after setting
    HeartbeatMaxServers default to the documented value 10 in 2.4.54.
    PR 66131.  [Jérôme Billiras]
  * ) mod_dav: DAVlockDiscovery option to disable WebDAV lock discovery
    This is a game changer for performances if client use PROPFIND a lot,
    PR 66313. [Emmanuel Dreyfus]</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1678276800">- This update fixes the following security issues:
  * CVE-2023-27522 [bsc#1209049]: mod_proxy_uwsgi HTTP response splitting
  * CVE-2023-25690 [bsc#1209047]: HTTP request splitting with mod_rewrite and mod_proxy
- Update to 2.4.56:
  * ) rotatelogs: Add -T flag to allow subsequent rotated logfiles to be
    truncated without the initial logfile being truncated.  [Eric Covener]
  * ) mod_ldap: LDAPConnectionPoolTTL should accept negative values in order to
    allow connections of any age to be reused. Up to now, a negative value
    was handled as an error when parsing the configuration file.  PR 66421.
    [nailyk &lt;bzapache nailyk.fr&gt;, Christophe Jaillet]
  * ) mod_proxy_ajp: Report an error if the AJP backend sends an invalid number
    of headers. [Ruediger Pluem]
  * ) mod_md:
  - Enabling ED25519 support and certificate transparency information when
    building with libressl v3.5.0 and newer. Thanks to Giovanni Bechis.
  - MDChallengeDns01 can now be configured for individual domains.
    Thanks to Jérôme Billiras (@bilhackmac) for the initial PR.
  - Fixed a bug found by Jérôme Billiras (@bilhackmac) that caused the challenge
    teardown not being invoked as it should.
    [Stefan Eissing]
  * ) mod_http2: client resets of HTTP/2 streams led to unwanted 500 errors
    reported in access logs and error documents. The processing of the
    reset was correct, only unneccesary reporting was caused.
    [Stefan Eissing]
  * ) mod_proxy_uwsgi: Stricter backend HTTP response parsing/validation.
    [Yann Ylavic]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1680868800">- Update to 2.4.57:
  * ) mod_proxy: Check before forwarding that a nocanon path has not been
    rewritten with spaces during processing.  [Yann Ylavic]
  * ) mod_proxy: In case that AllowEncodedSlashes is set to NoDecode do not
    double encode encoded slashes in the URL sent by the reverse proxy to the
    backend. [Ruediger Pluem]
  * ) mod_http2: fixed a crash during connection termination. See PR 66539.
    [Stefan Eissing]
  * ) mod_rewrite: Fix a 2.4.56 regression for substitutions ending
    in a question mark. PR66547. [Eric Covener]
  * ) mod_rewrite: Add "BCTLS" and "BNE" RewriteRule flags. Re-allow encoded
    characters on redirections without the "NE" flag.
    [Yann Ylavic, Eric Covener]
  * ) mod_proxy: Fix double encoding of the uri-path of the request forwarded
    to the origin server, when using mapping=encoded|servlet.  [Yann Ylavic]
  * ) mod_mime: Do not match the extention against possible query string
    parameters in case ProxyPass was used with the nocanon option.
    [Ruediger Pluem]</changelog>
  <changelog author="Dirk Stoecker &lt;opensuse@dstoecker.de&gt;" date="1691236800">- Enable building of mod_md</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1697716800">- Update to 2.4.58:
  * ) SECURITY: CVE-2023-45802: Apache HTTP Server: HTTP/2 stream
    memory not reclaimed right away on RST (cve.mitre.org)
    When a HTTP/2 stream was reset (RST frame) by a client, there
    was a time window were the request's memory resources were not
    reclaimed immediately. Instead, de-allocation was deferred to
    connection close. A client could send new requests and resets,
    keeping the connection busy and open and causing the memory
    footprint to keep on growing. On connection close, all resources
    were reclaimed, but the process might run out of memory before
    that.
    This was found by the reporter during testing of CVE-2023-44487
    (HTTP/2 Rapid Reset Exploit) with their own test client. During
    "normal" HTTP/2 use, the probability to hit this bug is very
    low. The kept memory would not become noticeable before the
    connection closes or times out.
    Users are recommended to upgrade to version 2.4.58, which fixes
    the issue.
    Credits: Will Dormann of Vul Labs
  * ) SECURITY: CVE-2023-43622: Apache HTTP Server: DoS in HTTP/2 with
    initial windows size 0 (cve.mitre.org)
    An attacker, opening a HTTP/2 connection with an initial window
    size of 0, was able to block handling of that connection
    indefinitely in Apache HTTP Server. This could be used to
    exhaust worker resources in the server, similar to the well
    known "slow loris" attack pattern.
    This has been fixed in version 2.4.58, so that such connection
    are terminated properly after the configured connection timeout.
    This issue affects Apache HTTP Server: from 2.4.55 through
    2.4.57.
    Users are recommended to upgrade to version 2.4.58, which fixes
    the issue.
    Credits: Prof. Sven Dietrich (City University of New York)
  * ) SECURITY: CVE-2023-31122: mod_macro buffer over-read
    (cve.mitre.org)
    Out-of-bounds Read vulnerability in mod_macro of Apache HTTP
    Server.This issue affects Apache HTTP Server: through 2.4.57.
    Credits: David Shoon (github/davidshoon)
  * ) mod_ssl: Silence info log message "SSL Library Error: error:0A000126:
    SSL routines::unexpected eof while reading" when using
    OpenSSL 3 by setting SSL_OP_IGNORE_UNEXPECTED_EOF if
    available. [Rainer Jung]
  * ) mod_http2: improved early cleanup of streams.
    [Stefan Eissing]
  * ) mod_proxy_http2: improved error handling on connection errors while
    response is already underway.
    [Stefan Eissing]
  * ) mod_http2: fixed a bug that could lead to a crash in main connection
    output handling. This occured only when the last request on a HTTP/2
    connection had been processed and the session decided to shut down.
    This could lead to an attempt to send a final GOAWAY while the previous
    write was still in progress. See PR 66646.
    [Stefan Eissing]
  * ) mod_proxy_http2: fix `X-Forward-Host` header to carry the correct value.
    Fixes PR66752.
    [Stefan Eissing]
  * ) mod_http2: added support for bootstrapping WebSockets via HTTP/2, as
    described in RFC 8441. A new directive 'H2WebSockets on|off' has been
    added. The feature is by default not enabled.
    As also discussed in the manual, this feature should work for setups
    using "ProxyPass backend-url upgrade=websocket" without further changes.
    Special server modules for WebSockets will have to be adapted,
    most likely, as the handling if IO events is different with HTTP/2.
    HTTP/2 WebSockets are supported on platforms with native pipes. This
    excludes Windows.
    [Stefan Eissing]
  * ) mod_rewrite: Fix a regression with both a trailing ? and [QSA].
    in OCSP stapling. PR 66672. [Frank Meier &lt;frank.meier ergon.ch&gt;, covener]
  * ) mod_http2: fixed a bug in flushing pending data on an already closed
    connection that could lead to a busy loop, preventing the HTTP/2 session
    to close down successfully. Fixed PR 66624.
    [Stefan Eissing]
  * ) mod_http2: v2.0.15 with the following fixes and improvements
  - New directive 'H2EarlyHint name value' to add headers to a response,
    picked up already when a "103 Early Hints" response is sent. 'name' and
    'value' must comply to the HTTP field restrictions.
    This directive can be repeated several times and header fields of the
    same names add. Sending a 'Link' header with 'preload' relation will
    also cause a HTTP/2 PUSH if enabled and supported by the client.
  - Fixed an issue where requests were not logged and accounted in a timely
    fashion when the connection returns to "keepalive" handling, e.g. when
    the request served was the last outstanding one.
    This led to late appearance in access logs with wrong duration times
    reported.
  - Accurately report the bytes sent for a request in the '%O' Log format.
    This addresses #203, a long outstanding issue where mod_h2 has reported
    numbers over-eagerly from internal buffering and not what has actually
    been placed on the connection.
    The numbers are now the same with and without H2CopyFiles enabled.
    [Stefan Eissing]
  * ) mod_proxy_http2: fix retry handling to not leak temporary errors.
    On detecting that that an existing connection was shutdown by the other
    side, a 503 response leaked even though the request was retried on a
    fresh connection.
    [Stefan Eissing]
  * ) mod_rewrite: Add server directory to include path as mod_rewrite requires
    test_char.h. PR 66571 [Valeria Petrov &lt;valeria.petrov@spinetix.com&gt;]
  * ) mod_http2: new directive `H2ProxyRequests on|off` to enable handling
    of HTTP/2 requests in a forward proxy configuration.
    General forward proxying is enabled via `ProxyRequests`. If the
    HTTP/2 protocol is also enabled for such a server/host, this new
    directive is needed in addition.
    [Stefan Eissing]
  * ) core: Updated conf/mime.types:
  - .js moved from 'application/javascript' to 'text/javascript'
  - .mjs was added as 'text/javascript'
  - add .opus ('audio/ogg')
  - add 'application/vnd.geogebra.slides'
  - add WebAssembly MIME types and extension
    [Mathias Bynens &lt;@mathiasbynens&gt; via PR 318,
    Richard de Boer &lt;richard tubul.net&gt;, Dave Hodder &lt;dmh dmh.org.uk&gt;,
    Zbynek Konecny &lt;zbynek1729 gmail.com&gt;]
  * ) mod_proxy_http2: fixed using the wrong "bucket_alloc" from the backend
    connection when sending data on the frontend one. This caused crashes
    or infinite loops in rare situations.
  * ) mod_proxy_http2: fixed a bug in retry/response handling that could lead
    to wrong status codes or HTTP messages send at the end of response bodies
    exceeding the announced content-length.
  * ) mod_proxy_http2: fix retry handling to not leak temporary errors.
    On detecting that that an existing connection was shutdown by the other
    side, a 503 response leaked even though the request was retried on a
    fresh connection.
  * ) mod_http2: fixed a bug that did cleanup of consumed and pending buckets in
    the wrong order when a bucket_beam was destroyed.
    [Stefan Eissing]
  * ) mod_http2: avoid double chunked-encoding on internal redirects.
    PR 66597 [Yann Ylavic, Stefan Eissing]
  * ) mod_http2: Fix reporting of `Total Accesses` in server-status to not count
    HTTP/2 requests twice. Fixes PR 66801.
    [Stefan Eissing]
  * ) mod_ssl: Fix handling of Certificate Revoked messages
    in OCSP stapling. PR 66626. [&lt;gmoniker gmail.com&gt;]
  * ) mod_http2: fixed a bug in handling of stream timeouts.
    [Stefan Eissing]
  * ) mod_tls: updating to rustls-ffi version 0.9.2 or higher.
    Checking in configure for proper version installed. Code
    fixes for changed clienthello member name.
    [Stefan Eissing]
  * ) mod_md:
  - New directive `MDMatchNames all|servernames` to allow more control over how
    MDomains are matched to VirtualHosts.
  - New directive `MDChallengeDns01Version`. Setting this to `2` will provide
    the command also with the challenge value on `teardown` invocation. In version
    1, the default, only the `setup` invocation gets this parameter.
    Refs #312. Thanks to @domrim for the idea.
  - For Managed Domain in "manual" mode, the checks if all used ServerName and
    ServerAlias are part of the MDomain now reports a warning instead of an error
    (AH10040) when not all names are present.
  - MDChallengeDns01 can now be configured for individual domains.
    Using PR from JÃ©rÃ´me Billiras (@bilhackmac) and adding test case and fixing proper working
  - Fixed a bug found by JÃ©rÃ´me Billiras (@bilhackmac) that caused the challenge
    teardown not being invoked as it should.
  * ) mod_ldap: Avoid performance overhead of APR-util rebind cache for
    OpenLDAP 2.2+.  PR 64414.  [Joe Orton]
  * ) mod_http2: new directive 'H2MaxDataFrameLen n' to limit the maximum
    amount of response body bytes put into a single HTTP/2 DATA frame.
    Setting this to 0 places no limit (but the max size allowed by the
    protocol is observed).
    The module, by default, tries to use the maximum size possible, which is
    somewhat around 16KB. This sets the maximum. When less response data is
    available, smaller frames will be sent.
  * ) mod_md: fixed passing of the server environment variables to programs
    started via MDMessageCmd and MDChallengeDns01 on *nix system.
    See &lt;https://github.com/icing/mod_md/issues/319&gt;.
    [Stefan Eissing]
  * ) mod_dav: Add DavBasePath directive to configure the repository root
    path.  PR 35077.  [Joe Orton]
  * ) mod_alias: Add AliasPreservePath directive to map the full
    path after the alias in a location. [Graham Leggett]
  * ) mod_alias: Add RedirectRelative to allow relative redirect targets to be
    issued as-is. [Eric Covener, Graham Leggett]
  * ) core: Add formats %{z} and %{strftime-format} to ErrorLogFormat, and make
    sure that if the format is configured early enough it applies to every log
    line.  PR 62161.  [Yann Ylavic]
  * ) mod_deflate: Add DeflateAlterETag to control how the ETag
    is modified. The 'NoChange' parameter mimics 2.2.x behavior.
    PR 45023, PR 39727. [Eric Covener]
  * ) core: Optimize send_brigade_nonblocking(). [Yann Ylavic, Christophe Jaillet]
  * ) mod_status: Remove duplicate keys "BusyWorkers" and "IdleWorkers".
    Resolve inconsistency between the previous two occurrences by
    counting workers in state SERVER_GRACEFUL no longer as busy,
    but instead in a new counter "GracefulWorkers" (or on HTML
    view as "workers gracefully restarting"). Also add the graceful
    counter as a new column to the existing HTML per process table
    for async MPMs. PR 63300. [Rainer Jung]</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1706529600">- use grep -E for egrep</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1708430400">- Use %autosetup macro. Allows to eliminate the usage of deprecated
  %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1712232000">- Update to 2.4.59:
  * ) mod_deflate: Fixes and better logging for handling various
    error and edge cases. [Eric Covener, Yann Ylavic, Joe Orton,
    Eric Norris &lt;enorris etsy.com&gt;]
  * ) Add CGIScriptTimeout to mod_cgi. [Eric Covener]
  * ) mod_xml2enc: Tolerate libxml2 2.12.0 and later.  PR 68610
    [ttachi &lt;tachihara AT hotmail.com&gt;]
  * ) mod_slotmem_shm: Use ap_os_is_path_absolute() to make it portable.
    [Jean-Frederic Clere]
  * ) mod_ssl: Use OpenSSL-standard functions to assemble CA
    name lists for SSLCACertificatePath/SSLCADNRequestPath.
    Names will now be consistently sorted. PR 61574.
    [Joe Orton]
  * ) mod_xml2enc: Update check to accept any text/ media type
    or any XML media type per RFC 7303, avoiding
    corruption of Microsoft OOXML formats.  PR 64339.
    [Joseph Heenan &lt;joseph.heenan fintechlabs.io&gt;, Joe Orton]
  * ) mod_http2: v2.0.26 with the following fixes:
  - Fixed `Date` header on requests upgraded from HTTP/1.1 (h2c). Fixes
    &lt;https://github.com/icing/mod_h2/issues/272&gt;.
  - Fixed small memory leak in h2 header bucket free. Thanks to
    Michael Kaufmann for finding this and providing the fix.
  * ) htcacheclean: In -a/-A mode, list all files per subdirectory
    rather than only one. PR 65091.
    [Artem Egorenkov &lt;aegorenkov.91 gmail.com&gt;]
  * ) mod_ssl: SSLProxyMachineCertificateFile/Path may reference files
    which include CA certificates; those CA certs are treated as if
    configured with SSLProxyMachineCertificateChainFile.  [Joe Orton]
  * ) htpasswd, htdbm, dbmmanage: Update help&amp;docs to refer to
    "hashing", rather than "encrypting" passwords.
    [Michele Preziuso &lt;mpreziuso kaosdynamics.com&gt;]
  * ) mod_ssl: Fix build with LibreSSL 2.0.7+. PR 64047.
    [Giovanni Bechis, Yann Ylavic]
  * ) htpasswd: Add support for passwords using SHA-2.  [Joe Orton,
    Yann Ylavic]
  * ) core: Allow mod_env to override system environment vars. [Joe Orton]
  * ) Allow mod_dav_fs to tolerate race conditions between PROPFIND and an
    operation which removes a directory/file between apr_dir_read() and
    apr_stat(). Current behaviour is to abort the connection which seems
    inferior to tolerating (and logging) the error. [Joe Orton]
  * ) mod_ldap: HTML-escape data in the ldap-status handler.
    [Eric Covener, Chamal De Silva]
  * ) mod_ssl: Disable the OpenSSL ENGINE API when OPENSSL_NO_ENGINE is set.
    Allow for "SSLCryptoDevice builtin" if the ENGINE API is not available,
    notably with OpenSSL &gt;= 3.  PR 68080.  [Yann Ylavic, Joe Orton]
  * ) mod_ssl: Improve compatibility with OpenSSL 3, fix build warnings about
    deprecated ENGINE_ API, honor OPENSSL_API_COMPAT setting while defaulting
    to compatibitily with version 1.1.1 (including ENGINEs / SSLCryptoDevice).
    [Yann Ylavic]
  * ) mod_ssl: release memory to the OS when needed. [Giovanni Bechis]
  * ) mod_proxy: Ignore (and warn about) enablereuse=on for ProxyPassMatch when
    some dollar substitution (backreference) happens in the hostname or port
    part of the URL.  [Yann Ylavic]
  * ) mod_proxy: Allow to set a TTL for how long DNS resolutions to backend
    systems are cached. [Yann Ylavic]
  * ) mod_proxy: Add optional third argument for ProxyRemote, which
    configures Basic authentication credentials to pass to the remote
    proxy.  PR 37355.  [Joe Orton]</changelog>
  <changelog author="pgajdos@suse.com" date="1718280000">- added patches [bsc#1226217]
  https://github.com/apache/httpd/pull/444/commits/c2fffd29b0f58bdc9caaaff4fec68e17a676f182
  + apache2-issue-444.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1720094400">- Update to 2.4.61
  * ) SECURITY: CVE-2024-39884: Apache HTTP Server: source code
    disclosure with handlers configured via AddType (cve.mitre.org)
    [boo#1227353]
    A regression in the core of Apache HTTP Server 2.4.60 ignores
    some use of the legacy content-type based configuration of
    handlers.   "AddType" and similar configuration, under some
    circumstances where files are requested indirectly, result in
    source code disclosure of local content. For example, PHP
    scripts may be served instead of interpreted.
    Users are recommended to upgrade to version 2.4.61, which fixes
    this issue.
- Update to 2.4.60
  * ) SECURITY: CVE-2024-39573: Apache HTTP Server: mod_rewrite proxy
    handler substitution (cve.mitre.org) [boo#1227271]
    Potential SSRF in mod_rewrite in Apache HTTP Server 2.4.59 and
    earlier allows an attacker to cause unsafe RewriteRules to
    unexpectedly setup URL's to be handled by mod_proxy.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38477: Apache HTTP Server: Crash resulting in
    Denial of Service in mod_proxy via a malicious request
    (cve.mitre.org) [boo#1227270]
    null pointer dereference in mod_proxy in Apache HTTP Server
    2.4.59 and earlier allows an attacker to crash the server via a
    malicious request.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38476: Apache HTTP Server may use
    exploitable/malicious backend application output to run local
    handlers via internal redirect (cve.mitre.org) [boo#1227269]
    Vulnerability in core of Apache HTTP Server 2.4.59 and earlier
    are vulnerably to information disclosure, SSRF or local script
    execution via backend applications whose response headers are
    malicious or exploitable.
    Note: Some legacy uses of the 'AddType' directive to connect a
    request to a handler must be ported to 'AddHandler' after this fix.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38475: Apache HTTP Server weakness in
    mod_rewrite when first segment of substitution matches
    filesystem path. (cve.mitre.org) [boo#1227268]
    Improper escaping of output in mod_rewrite in Apache HTTP Server
    2.4.59 and earlier allows an attacker to map URLs to filesystem
    locations that are permitted to be served by the server but are
    not intentionally/directly reachable by any URL, resulting in
    code execution or source code disclosure.
    Substitutions in server context that use a backreferences or
    variables as the first segment of the substitution are affected.
    Some unsafe RewiteRules will be broken by this change and the
    rewrite flag "UnsafePrefixStat" can be used to opt back in once
    ensuring the substitution is appropriately constrained.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38474: Apache HTTP Server weakness with
    encoded question marks in backreferences (cve.mitre.org)
    [boo#1227278]
    Substitution encoding issue in mod_rewrite in Apache HTTP Server
    2.4.59 and earlier allows attacker to execute scripts in
    directories permitted by the configuration but not directly
    reachable by any URL or source disclosure of scripts meant to
    only to be executed as CGI.
    Note: Some RewriteRules that capture and substitute unsafely will now
    fail unless rewrite flag "UnsafeAllow3F" is specified.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38473: Apache HTTP Server proxy encoding
    problem (cve.mitre.org) [boo#1227276]
    Encoding problem in mod_proxy in Apache HTTP Server 2.4.59 and
    earlier allows request URLs with incorrect encoding to be sent
    to backend services, potentially bypassing authentication via
    crafted requests.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38472: Apache HTTP Server on WIndows UNC SSRF
    (cve.mitre.org) [boo#1227267]
    SSRF in Apache HTTP Server on Windows allows to potentially leak
    NTML hashes to a malicious server via SSRF and malicious
    requests or content
    Note: Existing configurations that access UNC paths
    will have to configure new directive "UNCList" to allow access
    during request processing.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-36387: Apache HTTP Server: DoS by Null
    pointer in websocket over HTTP/2 (cve.mitre.org) [boo#1227272]
    Serving WebSocket protocol upgrades over a HTTP/2 connection
    could result in a Null Pointer dereference, leading to a crash
    of the server process, degrading performance.
    Credits: Marc Stern (&lt;marc.stern AT approach-cyber.com&gt;)
  * ) mod_proxy: Fix DNS requests and connections closed before the
    configured addressTTL.  BZ 69126.  [Yann Ylavic]
  * ) core: On Linux, log the real thread ID in error logs.  [Joe Orton]
  * ) core: Support zone/scope in IPv6 link-local addresses in Listen and
    VirtualHost directives (requires APR 1.7.x or later).  PR 59396
    [Joe Orton]
  * ) mod_ssl: Reject client-initiated renegotiation with a TLS alert
    (rather than connection closure).  [Joe Orton, Yann Ylavic]
  * ) Updated mime.types.  [Mohamed Akram &lt;mohd.akram outlook.com&gt;,
    Adam Silverstein &lt;adamsilverstein earthboundhosting.com&gt;]
  * ) mod_ssl: Fix a regression that causes the default DH parameters for a key
    no longer set and thus effectively disabling DH ciphers when no explicit
    DH parameters are set. PR 68863 [Ruediger Pluem]
  * ) mod_cgid: Optional support for file descriptor passing, fixing
    error log handling (configure --enable-cgid-fdpassing) on Unix
    platforms. PR 54221.  [Joe Orton]
  * ) mod_cgid/mod_cgi: Distinguish script stderr output clearly in
    error logs.  PR 61980.  [Hank Ibell &lt;hwibell gmail.com&gt;]
  * ) mod_tls: update version of rustls-ffi to v0.13.0.
    [Daniel McCarney (@cpu}]
  * ) mod_md:
  - Using OCSP stapling information to trigger certificate renewals. Proposed
    by @frasertweedale.
  - Added directive `MDCheckInterval` to control how often the server checks
    for detected revocations. Added proposals for configurations in the
    README.md chapter "Revocations".
  - OCSP stapling: accept OCSP responses without a `nextUpdate` entry which is
    allowed in RFC 6960. Treat those as having an update interval of 12 hours.
    Added by @frasertweedale.
  - Adapt OpenSSL usage to changes in their API. By Yann Ylavic.
- removed patches (upstreamed)
  - apache2-issue-444.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- Update to 2.4.62
  * ) SECURITY: CVE-2024-40898: Apache HTTP Server: SSRF with
    mod_rewrite in server/vhost context on Windows (cve.mitre.org)
    [boo#1228098]
    SSRF in Apache HTTP Server on Windows with mod_rewrite in
    server/vhost context, allows to potentially leak NTML hashes to
    a malicious server via SSRF and malicious requests.
    Users are recommended to upgrade to version 2.4.62 which fixes
    this issue.
    Credits: Smi1e (DBAPPSecurity Ltd.)
  * ) SECURITY: CVE-2024-40725: Apache HTTP Server: source code
    disclosure with handlers configured via AddType (cve.mitre.org)
    [boo#1228097]
    A partial fix for  CVE-2024-39884 in the core of Apache HTTP
    Server 2.4.61 ignores some use of the legacy content-type based
    configuration of handlers. "AddType" and similar configuration,
    under some circumstances where files are requested indirectly,
    result in source code disclosure of local content. For example,
    PHP scripts may be served instead of interpreted.
    Users are recommended to upgrade to version 2.4.62, which fixes
    this issue.
  * ) mod_proxy: Fix canonicalisation and FCGI env (PATH_INFO, SCRIPT_NAME) for
    "balancer:" URLs set via SetHandler, also allowing for "unix:" sockets
    with BalancerMember(s).  PR 69168.  [Yann Ylavic]
  * ) mod_proxy: Avoid AH01059 parsing error for SetHandler "unix:" URLs.
    PR 69160 [Yann Ylavic]
  * ) mod_ssl: Fix crashes in PKCS#11 ENGINE support with OpenSSL 3.2.
    [Joe Orton]
  * ) mod_ssl: Add support for loading certs/keys from pkcs11: URIs
    via OpenSSL 3.x providers.  [Ingo Franzki &lt;ifranzki linux.ibm.com&gt;]
  * ) mod_ssl: Restore SSL dumping on trace7 loglevel with OpenSSL &gt;= 3.0.
    [Ruediger Pluem, Yann Ylavic]
  * ) mpm_worker: Fix possible warning (AH00045) about children processes not
    terminating timely.  [Yann Ylavic]</changelog>
  <changelog author="Thorsten Kukuk &lt;kukuk@suse.com&gt;" date="1727697600">- Add /srv/www directories to filelist [bsc#1231027]
  (apache2 will not start since default config uses this directory)</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1730721600">- Explicitly mark start_apache2 as bash-dependent.</changelog>
  <changelog author="Martin Schreiner &lt;martin.schreiner@suse.com&gt;" date="1730808000">- Update httpd-framework to svn1921782.
- Fixes Apache's impact on bsc#1218342.</changelog>
</package>
<package pkgid="b15c4b0f40cb3135f5a666f05f81111e7c01945f39f1a4f362827be83bb25af0c0be4a49b3cf9f9df892ad4fce9d28ec8cb65f5d856a8aa8e8c2db3ba8a882f5" name="apache2-manual" arch="src">
  <version epoch="0" ver="2.4.62" rel="3.1"/>
  <changelog author="pgajdos@suse.com" date="1654689600">- update httpd-framework to svn revision 1898917</changelog>
  <changelog author="Stefan Schubert &lt;schubi@intern&gt;" date="1656417600">- Moved logrotate files from user specific directory /etc/logrotate.d
  to vendor specific directory /usr/etc/logrotate.d.</changelog>
  <changelog author="Stefan Schubert &lt;schubi@suse.com&gt;" date="1662033600">- Migration to /usr/etc: Saving user changed configuration files
  in /etc and restoring them while an RPM update.</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1663675200">- Remove references to README.QUICKSTART and point them to
  https://en.opensuse.org/SDB:Apache_installation (bsc#1203573)</changelog>
  <changelog author="Stephan Kulow &lt;coolo@suse.com&gt;" date="1663934400">- The 2.4.54 release brought support for PCRE2, but for that we also
  need to change buildrequires to pcre2-devel</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1670846400">- switch to pkgconfig(zlib) so that alternative providers can be
  used</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1674043200">- This update fixes the following security issues:
  * CVE-2022-37436 [bsc#1207251], mod_proxy backend HTTP response splitting
  * CVE-2022-36760 [bsc#1207250], mod_proxy_ajp Possible request smuggling
  * CVE-2006-20001 [bsc#1207247], mod_dav out of bounds read, or write of zero byte
- Update to 2.4.55:
  * ) SECURITY: CVE-2022-37436: Apache HTTP Server: mod_proxy prior to
    2.4.55 allows a backend to trigger HTTP response splitting
    (cve.mitre.org)
    Prior to Apache HTTP Server 2.4.55, a malicious backend can
    cause the response headers to be truncated early, resulting in
    some headers being incorporated into the response body. If the
    later headers have any security purpose, they will not be
    interpreted by the client.
    Credits: Dimas Fariski Setyawan Putra (@nyxsorcerer)
  * ) SECURITY: CVE-2022-36760: Apache HTTP Server: mod_proxy_ajp
    Possible request smuggling (cve.mitre.org)
    Inconsistent Interpretation of HTTP Requests ('HTTP Request
    Smuggling') vulnerability in mod_proxy_ajp of Apache HTTP Server
    allows an attacker to smuggle requests to the AJP server it
    forwards requests to.  This issue affects Apache HTTP Server
    Apache HTTP Server 2.4 version 2.4.54 and prior versions.
    Credits: ZeddYu_Lu from Qi'anxin Research Institute of Legendsec
    at Qi'anxin Group
  * ) SECURITY: CVE-2006-20001: mod_dav out of  bounds read, or write
    of zero byte (cve.mitre.org)
    A carefully crafted If: request header can cause a memory read,
    or write of a single zero byte, in a pool (heap) memory location
    beyond the header value sent. This could cause the process to
    crash.
    This issue affects Apache HTTP Server 2.4.54 and earlier.
  * ) mod_dav: Open the lock database read-only when possible.
    PR 36636 [Wilson Felipe &lt;wfelipe gmail.com&gt;, manu]
  * ) mod_proxy_http2: apply the standard httpd content type handling
    to responses from the backend, as other proxy modules do. Fixes PR 66391.
    Thanks to Jérôme Billiras for providing the patch.
    [Stefan Eissing]
  * ) mod_dav: mod_dav overrides dav_fs response on PUT failure. PR 35981
    [Basant Kumar Kukreja &lt;basant.kukreja sun.com&gt;, Alejandro Alvarez
    &lt;alejandro.alvarez.ayllon cern.ch&gt;]
  * ) mod_proxy_hcheck: Honor worker timeout settings.  [Yann Ylavic]
  * ) mod_http2: version 2.0.10 of the module, synchronizing changes
    with the gitgub version. This is a partial rewrite of how connections
    and streams are handled.
  - an APR pollset and pipes (where supported) are used to monitor
    the main connection and react to IO for request/response handling.
    This replaces the stuttered timed waits of earlier versions.
  - H2SerializeHeaders directive still exists, but has no longer an effect.
  - Clients that seemingly misbehave still get less resources allocated,
    but ongoing requests are no longer disrupted.
  - Fixed an issue since 1.15.24 that "Server" headers in proxied requests
    were overwritten instead of preserved. [PR by @daum3ns]
  - A regression in v1.15.24 was fixed that could lead to httpd child
    processes not being terminated on a graceful reload or when reaching
    MaxConnectionsPerChild. When unprocessed h2 requests were queued at
    the time, these could stall. See #212.
  - Improved information displayed in 'server-status' for H2 connections when
    Extended Status is enabled. Now one can see the last request that IO
    operations happened on and transferred IO stats are updated as well.
  - When reaching server limits, such as MaxRequestsPerChild, the HTTP/2 connection
    send a GOAWAY frame much too early on new connections, leading to invalid
    protocol state and a client failing the request. See PR65731 at
    &lt;https://bz.apache.org/bugzilla/show_bug.cgi?id=65731&gt;.
    The module now initializes the HTTP/2 protocol correctly and allows the
    client to submit one request before the shutdown via a GOAWAY frame
    is being announced.
  - :scheme pseudo-header values, not matching the
    connection scheme, are forwarded via absolute uris to the
    http protocol processing to preserve semantics of the request.
    Checks on combinations of pseudo-headers values/absence
    have been added as described in RFC 7540. Fixes #230.
  - A bug that prevented trailers (e.g. HEADER frame at the end) to be
    generated in certain cases was fixed. See #233 where it prevented
    gRPC responses to be properly generated.
  - Request and response header values are automatically stripped of leading
    and trialing space/tab characters. This is equivalent behaviour to what
    Apache httpd's http/1.1 parser does.
    The checks for this in nghttp2 v1.50.0+ are disabled.
  - Extensive testing in production done by Alessandro Bianchi (@alexskynet)
    on the v2.0.x versions for stability. Many thanks!
  * ) mod_proxy_http2: fixed #235 by no longer forwarding 'Host:' header when
    request ':authority' is known. Improved test case that did not catch that
    the previous 'fix' was incorrect.
  * ) mod_proxy_hcheck: hcmethod now allows for HTTP/1.1 requests
    using GET11, HEAD11 and/or OPTIONS11. [Jim Jagielski]
  * ) mod_proxy: The AH03408 warning for a forcibly closed backend
    connection is now logged at INFO level.  [Yann Ylavic]
  * ) mod_ssl: When dumping the configuration, the existence of
    certificate/key files is no longer tested.  [Joe Orton]
  * ) mod_authn_core: Add expression support to AuthName and AuthType.
    [Graham Leggett]
  * ) mod_ssl: when a proxy connection had handled a request using SSL, an
    error was logged when "SSLProxyEngine" was only configured in the
    location/proxy section and not the overall server. The connection
    continued to work, the error log was in error. Fixed PR66190.
    [Stefan Eissing]
  * ) mod_proxy_hcheck: Re-enable workers in standard ERROR state. PR 66302.
    [Alessandro Cavaliere &lt;alessandro.cavalier7 unibo.it&gt;]
  * ) mod_proxy_hcheck: Detect AJP/CPING support correctly. PR 66300.
    [Alessandro Cavaliere &lt;alessandro.cavalier7 unibo.it&gt;]
  * ) mod_http2: Export mod_http2.h as public header. [Stefan Eissing]
  * ) mod_md: a new directive `MDStoreLocks` can be used on cluster
    setups with a shared file system for `MDStoreDir` to order
    activation of renewed certificates when several cluster nodes are
    restarted at the same time. Store locks are not enabled by default.
    Restored curl_easy cleanup behaviour from v2.4.14 and refactored
    the use of curl_multi for OCSP requests to work with that.
    Fixes &lt;https://github.com/icing/mod_md/issues/293&gt;.
  * ) core: Avoid an overflow on large inputs in ap_is_matchexp.  PR 66033
    [Ruediger Pluem]
  * ) mod_heartmonitor: Allow "HeartbeatMaxServers 0" to use file based
    storage instead of slotmem. Needed after setting
    HeartbeatMaxServers default to the documented value 10 in 2.4.54.
    PR 66131.  [Jérôme Billiras]
  * ) mod_dav: DAVlockDiscovery option to disable WebDAV lock discovery
    This is a game changer for performances if client use PROPFIND a lot,
    PR 66313. [Emmanuel Dreyfus]</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1678276800">- This update fixes the following security issues:
  * CVE-2023-27522 [bsc#1209049]: mod_proxy_uwsgi HTTP response splitting
  * CVE-2023-25690 [bsc#1209047]: HTTP request splitting with mod_rewrite and mod_proxy
- Update to 2.4.56:
  * ) rotatelogs: Add -T flag to allow subsequent rotated logfiles to be
    truncated without the initial logfile being truncated.  [Eric Covener]
  * ) mod_ldap: LDAPConnectionPoolTTL should accept negative values in order to
    allow connections of any age to be reused. Up to now, a negative value
    was handled as an error when parsing the configuration file.  PR 66421.
    [nailyk &lt;bzapache nailyk.fr&gt;, Christophe Jaillet]
  * ) mod_proxy_ajp: Report an error if the AJP backend sends an invalid number
    of headers. [Ruediger Pluem]
  * ) mod_md:
  - Enabling ED25519 support and certificate transparency information when
    building with libressl v3.5.0 and newer. Thanks to Giovanni Bechis.
  - MDChallengeDns01 can now be configured for individual domains.
    Thanks to Jérôme Billiras (@bilhackmac) for the initial PR.
  - Fixed a bug found by Jérôme Billiras (@bilhackmac) that caused the challenge
    teardown not being invoked as it should.
    [Stefan Eissing]
  * ) mod_http2: client resets of HTTP/2 streams led to unwanted 500 errors
    reported in access logs and error documents. The processing of the
    reset was correct, only unneccesary reporting was caused.
    [Stefan Eissing]
  * ) mod_proxy_uwsgi: Stricter backend HTTP response parsing/validation.
    [Yann Ylavic]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1680868800">- Update to 2.4.57:
  * ) mod_proxy: Check before forwarding that a nocanon path has not been
    rewritten with spaces during processing.  [Yann Ylavic]
  * ) mod_proxy: In case that AllowEncodedSlashes is set to NoDecode do not
    double encode encoded slashes in the URL sent by the reverse proxy to the
    backend. [Ruediger Pluem]
  * ) mod_http2: fixed a crash during connection termination. See PR 66539.
    [Stefan Eissing]
  * ) mod_rewrite: Fix a 2.4.56 regression for substitutions ending
    in a question mark. PR66547. [Eric Covener]
  * ) mod_rewrite: Add "BCTLS" and "BNE" RewriteRule flags. Re-allow encoded
    characters on redirections without the "NE" flag.
    [Yann Ylavic, Eric Covener]
  * ) mod_proxy: Fix double encoding of the uri-path of the request forwarded
    to the origin server, when using mapping=encoded|servlet.  [Yann Ylavic]
  * ) mod_mime: Do not match the extention against possible query string
    parameters in case ProxyPass was used with the nocanon option.
    [Ruediger Pluem]</changelog>
  <changelog author="Dirk Stoecker &lt;opensuse@dstoecker.de&gt;" date="1691236800">- Enable building of mod_md</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1697716800">- Update to 2.4.58:
  * ) SECURITY: CVE-2023-45802: Apache HTTP Server: HTTP/2 stream
    memory not reclaimed right away on RST (cve.mitre.org)
    When a HTTP/2 stream was reset (RST frame) by a client, there
    was a time window were the request's memory resources were not
    reclaimed immediately. Instead, de-allocation was deferred to
    connection close. A client could send new requests and resets,
    keeping the connection busy and open and causing the memory
    footprint to keep on growing. On connection close, all resources
    were reclaimed, but the process might run out of memory before
    that.
    This was found by the reporter during testing of CVE-2023-44487
    (HTTP/2 Rapid Reset Exploit) with their own test client. During
    "normal" HTTP/2 use, the probability to hit this bug is very
    low. The kept memory would not become noticeable before the
    connection closes or times out.
    Users are recommended to upgrade to version 2.4.58, which fixes
    the issue.
    Credits: Will Dormann of Vul Labs
  * ) SECURITY: CVE-2023-43622: Apache HTTP Server: DoS in HTTP/2 with
    initial windows size 0 (cve.mitre.org)
    An attacker, opening a HTTP/2 connection with an initial window
    size of 0, was able to block handling of that connection
    indefinitely in Apache HTTP Server. This could be used to
    exhaust worker resources in the server, similar to the well
    known "slow loris" attack pattern.
    This has been fixed in version 2.4.58, so that such connection
    are terminated properly after the configured connection timeout.
    This issue affects Apache HTTP Server: from 2.4.55 through
    2.4.57.
    Users are recommended to upgrade to version 2.4.58, which fixes
    the issue.
    Credits: Prof. Sven Dietrich (City University of New York)
  * ) SECURITY: CVE-2023-31122: mod_macro buffer over-read
    (cve.mitre.org)
    Out-of-bounds Read vulnerability in mod_macro of Apache HTTP
    Server.This issue affects Apache HTTP Server: through 2.4.57.
    Credits: David Shoon (github/davidshoon)
  * ) mod_ssl: Silence info log message "SSL Library Error: error:0A000126:
    SSL routines::unexpected eof while reading" when using
    OpenSSL 3 by setting SSL_OP_IGNORE_UNEXPECTED_EOF if
    available. [Rainer Jung]
  * ) mod_http2: improved early cleanup of streams.
    [Stefan Eissing]
  * ) mod_proxy_http2: improved error handling on connection errors while
    response is already underway.
    [Stefan Eissing]
  * ) mod_http2: fixed a bug that could lead to a crash in main connection
    output handling. This occured only when the last request on a HTTP/2
    connection had been processed and the session decided to shut down.
    This could lead to an attempt to send a final GOAWAY while the previous
    write was still in progress. See PR 66646.
    [Stefan Eissing]
  * ) mod_proxy_http2: fix `X-Forward-Host` header to carry the correct value.
    Fixes PR66752.
    [Stefan Eissing]
  * ) mod_http2: added support for bootstrapping WebSockets via HTTP/2, as
    described in RFC 8441. A new directive 'H2WebSockets on|off' has been
    added. The feature is by default not enabled.
    As also discussed in the manual, this feature should work for setups
    using "ProxyPass backend-url upgrade=websocket" without further changes.
    Special server modules for WebSockets will have to be adapted,
    most likely, as the handling if IO events is different with HTTP/2.
    HTTP/2 WebSockets are supported on platforms with native pipes. This
    excludes Windows.
    [Stefan Eissing]
  * ) mod_rewrite: Fix a regression with both a trailing ? and [QSA].
    in OCSP stapling. PR 66672. [Frank Meier &lt;frank.meier ergon.ch&gt;, covener]
  * ) mod_http2: fixed a bug in flushing pending data on an already closed
    connection that could lead to a busy loop, preventing the HTTP/2 session
    to close down successfully. Fixed PR 66624.
    [Stefan Eissing]
  * ) mod_http2: v2.0.15 with the following fixes and improvements
  - New directive 'H2EarlyHint name value' to add headers to a response,
    picked up already when a "103 Early Hints" response is sent. 'name' and
    'value' must comply to the HTTP field restrictions.
    This directive can be repeated several times and header fields of the
    same names add. Sending a 'Link' header with 'preload' relation will
    also cause a HTTP/2 PUSH if enabled and supported by the client.
  - Fixed an issue where requests were not logged and accounted in a timely
    fashion when the connection returns to "keepalive" handling, e.g. when
    the request served was the last outstanding one.
    This led to late appearance in access logs with wrong duration times
    reported.
  - Accurately report the bytes sent for a request in the '%O' Log format.
    This addresses #203, a long outstanding issue where mod_h2 has reported
    numbers over-eagerly from internal buffering and not what has actually
    been placed on the connection.
    The numbers are now the same with and without H2CopyFiles enabled.
    [Stefan Eissing]
  * ) mod_proxy_http2: fix retry handling to not leak temporary errors.
    On detecting that that an existing connection was shutdown by the other
    side, a 503 response leaked even though the request was retried on a
    fresh connection.
    [Stefan Eissing]
  * ) mod_rewrite: Add server directory to include path as mod_rewrite requires
    test_char.h. PR 66571 [Valeria Petrov &lt;valeria.petrov@spinetix.com&gt;]
  * ) mod_http2: new directive `H2ProxyRequests on|off` to enable handling
    of HTTP/2 requests in a forward proxy configuration.
    General forward proxying is enabled via `ProxyRequests`. If the
    HTTP/2 protocol is also enabled for such a server/host, this new
    directive is needed in addition.
    [Stefan Eissing]
  * ) core: Updated conf/mime.types:
  - .js moved from 'application/javascript' to 'text/javascript'
  - .mjs was added as 'text/javascript'
  - add .opus ('audio/ogg')
  - add 'application/vnd.geogebra.slides'
  - add WebAssembly MIME types and extension
    [Mathias Bynens &lt;@mathiasbynens&gt; via PR 318,
    Richard de Boer &lt;richard tubul.net&gt;, Dave Hodder &lt;dmh dmh.org.uk&gt;,
    Zbynek Konecny &lt;zbynek1729 gmail.com&gt;]
  * ) mod_proxy_http2: fixed using the wrong "bucket_alloc" from the backend
    connection when sending data on the frontend one. This caused crashes
    or infinite loops in rare situations.
  * ) mod_proxy_http2: fixed a bug in retry/response handling that could lead
    to wrong status codes or HTTP messages send at the end of response bodies
    exceeding the announced content-length.
  * ) mod_proxy_http2: fix retry handling to not leak temporary errors.
    On detecting that that an existing connection was shutdown by the other
    side, a 503 response leaked even though the request was retried on a
    fresh connection.
  * ) mod_http2: fixed a bug that did cleanup of consumed and pending buckets in
    the wrong order when a bucket_beam was destroyed.
    [Stefan Eissing]
  * ) mod_http2: avoid double chunked-encoding on internal redirects.
    PR 66597 [Yann Ylavic, Stefan Eissing]
  * ) mod_http2: Fix reporting of `Total Accesses` in server-status to not count
    HTTP/2 requests twice. Fixes PR 66801.
    [Stefan Eissing]
  * ) mod_ssl: Fix handling of Certificate Revoked messages
    in OCSP stapling. PR 66626. [&lt;gmoniker gmail.com&gt;]
  * ) mod_http2: fixed a bug in handling of stream timeouts.
    [Stefan Eissing]
  * ) mod_tls: updating to rustls-ffi version 0.9.2 or higher.
    Checking in configure for proper version installed. Code
    fixes for changed clienthello member name.
    [Stefan Eissing]
  * ) mod_md:
  - New directive `MDMatchNames all|servernames` to allow more control over how
    MDomains are matched to VirtualHosts.
  - New directive `MDChallengeDns01Version`. Setting this to `2` will provide
    the command also with the challenge value on `teardown` invocation. In version
    1, the default, only the `setup` invocation gets this parameter.
    Refs #312. Thanks to @domrim for the idea.
  - For Managed Domain in "manual" mode, the checks if all used ServerName and
    ServerAlias are part of the MDomain now reports a warning instead of an error
    (AH10040) when not all names are present.
  - MDChallengeDns01 can now be configured for individual domains.
    Using PR from JÃ©rÃ´me Billiras (@bilhackmac) and adding test case and fixing proper working
  - Fixed a bug found by JÃ©rÃ´me Billiras (@bilhackmac) that caused the challenge
    teardown not being invoked as it should.
  * ) mod_ldap: Avoid performance overhead of APR-util rebind cache for
    OpenLDAP 2.2+.  PR 64414.  [Joe Orton]
  * ) mod_http2: new directive 'H2MaxDataFrameLen n' to limit the maximum
    amount of response body bytes put into a single HTTP/2 DATA frame.
    Setting this to 0 places no limit (but the max size allowed by the
    protocol is observed).
    The module, by default, tries to use the maximum size possible, which is
    somewhat around 16KB. This sets the maximum. When less response data is
    available, smaller frames will be sent.
  * ) mod_md: fixed passing of the server environment variables to programs
    started via MDMessageCmd and MDChallengeDns01 on *nix system.
    See &lt;https://github.com/icing/mod_md/issues/319&gt;.
    [Stefan Eissing]
  * ) mod_dav: Add DavBasePath directive to configure the repository root
    path.  PR 35077.  [Joe Orton]
  * ) mod_alias: Add AliasPreservePath directive to map the full
    path after the alias in a location. [Graham Leggett]
  * ) mod_alias: Add RedirectRelative to allow relative redirect targets to be
    issued as-is. [Eric Covener, Graham Leggett]
  * ) core: Add formats %{z} and %{strftime-format} to ErrorLogFormat, and make
    sure that if the format is configured early enough it applies to every log
    line.  PR 62161.  [Yann Ylavic]
  * ) mod_deflate: Add DeflateAlterETag to control how the ETag
    is modified. The 'NoChange' parameter mimics 2.2.x behavior.
    PR 45023, PR 39727. [Eric Covener]
  * ) core: Optimize send_brigade_nonblocking(). [Yann Ylavic, Christophe Jaillet]
  * ) mod_status: Remove duplicate keys "BusyWorkers" and "IdleWorkers".
    Resolve inconsistency between the previous two occurrences by
    counting workers in state SERVER_GRACEFUL no longer as busy,
    but instead in a new counter "GracefulWorkers" (or on HTML
    view as "workers gracefully restarting"). Also add the graceful
    counter as a new column to the existing HTML per process table
    for async MPMs. PR 63300. [Rainer Jung]</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1706529600">- use grep -E for egrep</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1708430400">- Use %autosetup macro. Allows to eliminate the usage of deprecated
  %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1712232000">- Update to 2.4.59:
  * ) mod_deflate: Fixes and better logging for handling various
    error and edge cases. [Eric Covener, Yann Ylavic, Joe Orton,
    Eric Norris &lt;enorris etsy.com&gt;]
  * ) Add CGIScriptTimeout to mod_cgi. [Eric Covener]
  * ) mod_xml2enc: Tolerate libxml2 2.12.0 and later.  PR 68610
    [ttachi &lt;tachihara AT hotmail.com&gt;]
  * ) mod_slotmem_shm: Use ap_os_is_path_absolute() to make it portable.
    [Jean-Frederic Clere]
  * ) mod_ssl: Use OpenSSL-standard functions to assemble CA
    name lists for SSLCACertificatePath/SSLCADNRequestPath.
    Names will now be consistently sorted. PR 61574.
    [Joe Orton]
  * ) mod_xml2enc: Update check to accept any text/ media type
    or any XML media type per RFC 7303, avoiding
    corruption of Microsoft OOXML formats.  PR 64339.
    [Joseph Heenan &lt;joseph.heenan fintechlabs.io&gt;, Joe Orton]
  * ) mod_http2: v2.0.26 with the following fixes:
  - Fixed `Date` header on requests upgraded from HTTP/1.1 (h2c). Fixes
    &lt;https://github.com/icing/mod_h2/issues/272&gt;.
  - Fixed small memory leak in h2 header bucket free. Thanks to
    Michael Kaufmann for finding this and providing the fix.
  * ) htcacheclean: In -a/-A mode, list all files per subdirectory
    rather than only one. PR 65091.
    [Artem Egorenkov &lt;aegorenkov.91 gmail.com&gt;]
  * ) mod_ssl: SSLProxyMachineCertificateFile/Path may reference files
    which include CA certificates; those CA certs are treated as if
    configured with SSLProxyMachineCertificateChainFile.  [Joe Orton]
  * ) htpasswd, htdbm, dbmmanage: Update help&amp;docs to refer to
    "hashing", rather than "encrypting" passwords.
    [Michele Preziuso &lt;mpreziuso kaosdynamics.com&gt;]
  * ) mod_ssl: Fix build with LibreSSL 2.0.7+. PR 64047.
    [Giovanni Bechis, Yann Ylavic]
  * ) htpasswd: Add support for passwords using SHA-2.  [Joe Orton,
    Yann Ylavic]
  * ) core: Allow mod_env to override system environment vars. [Joe Orton]
  * ) Allow mod_dav_fs to tolerate race conditions between PROPFIND and an
    operation which removes a directory/file between apr_dir_read() and
    apr_stat(). Current behaviour is to abort the connection which seems
    inferior to tolerating (and logging) the error. [Joe Orton]
  * ) mod_ldap: HTML-escape data in the ldap-status handler.
    [Eric Covener, Chamal De Silva]
  * ) mod_ssl: Disable the OpenSSL ENGINE API when OPENSSL_NO_ENGINE is set.
    Allow for "SSLCryptoDevice builtin" if the ENGINE API is not available,
    notably with OpenSSL &gt;= 3.  PR 68080.  [Yann Ylavic, Joe Orton]
  * ) mod_ssl: Improve compatibility with OpenSSL 3, fix build warnings about
    deprecated ENGINE_ API, honor OPENSSL_API_COMPAT setting while defaulting
    to compatibitily with version 1.1.1 (including ENGINEs / SSLCryptoDevice).
    [Yann Ylavic]
  * ) mod_ssl: release memory to the OS when needed. [Giovanni Bechis]
  * ) mod_proxy: Ignore (and warn about) enablereuse=on for ProxyPassMatch when
    some dollar substitution (backreference) happens in the hostname or port
    part of the URL.  [Yann Ylavic]
  * ) mod_proxy: Allow to set a TTL for how long DNS resolutions to backend
    systems are cached. [Yann Ylavic]
  * ) mod_proxy: Add optional third argument for ProxyRemote, which
    configures Basic authentication credentials to pass to the remote
    proxy.  PR 37355.  [Joe Orton]</changelog>
  <changelog author="pgajdos@suse.com" date="1718280000">- added patches [bsc#1226217]
  https://github.com/apache/httpd/pull/444/commits/c2fffd29b0f58bdc9caaaff4fec68e17a676f182
  + apache2-issue-444.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1720094400">- Update to 2.4.61
  * ) SECURITY: CVE-2024-39884: Apache HTTP Server: source code
    disclosure with handlers configured via AddType (cve.mitre.org)
    [boo#1227353]
    A regression in the core of Apache HTTP Server 2.4.60 ignores
    some use of the legacy content-type based configuration of
    handlers.   "AddType" and similar configuration, under some
    circumstances where files are requested indirectly, result in
    source code disclosure of local content. For example, PHP
    scripts may be served instead of interpreted.
    Users are recommended to upgrade to version 2.4.61, which fixes
    this issue.
- Update to 2.4.60
  * ) SECURITY: CVE-2024-39573: Apache HTTP Server: mod_rewrite proxy
    handler substitution (cve.mitre.org) [boo#1227271]
    Potential SSRF in mod_rewrite in Apache HTTP Server 2.4.59 and
    earlier allows an attacker to cause unsafe RewriteRules to
    unexpectedly setup URL's to be handled by mod_proxy.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38477: Apache HTTP Server: Crash resulting in
    Denial of Service in mod_proxy via a malicious request
    (cve.mitre.org) [boo#1227270]
    null pointer dereference in mod_proxy in Apache HTTP Server
    2.4.59 and earlier allows an attacker to crash the server via a
    malicious request.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38476: Apache HTTP Server may use
    exploitable/malicious backend application output to run local
    handlers via internal redirect (cve.mitre.org) [boo#1227269]
    Vulnerability in core of Apache HTTP Server 2.4.59 and earlier
    are vulnerably to information disclosure, SSRF or local script
    execution via backend applications whose response headers are
    malicious or exploitable.
    Note: Some legacy uses of the 'AddType' directive to connect a
    request to a handler must be ported to 'AddHandler' after this fix.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38475: Apache HTTP Server weakness in
    mod_rewrite when first segment of substitution matches
    filesystem path. (cve.mitre.org) [boo#1227268]
    Improper escaping of output in mod_rewrite in Apache HTTP Server
    2.4.59 and earlier allows an attacker to map URLs to filesystem
    locations that are permitted to be served by the server but are
    not intentionally/directly reachable by any URL, resulting in
    code execution or source code disclosure.
    Substitutions in server context that use a backreferences or
    variables as the first segment of the substitution are affected.
    Some unsafe RewiteRules will be broken by this change and the
    rewrite flag "UnsafePrefixStat" can be used to opt back in once
    ensuring the substitution is appropriately constrained.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38474: Apache HTTP Server weakness with
    encoded question marks in backreferences (cve.mitre.org)
    [boo#1227278]
    Substitution encoding issue in mod_rewrite in Apache HTTP Server
    2.4.59 and earlier allows attacker to execute scripts in
    directories permitted by the configuration but not directly
    reachable by any URL or source disclosure of scripts meant to
    only to be executed as CGI.
    Note: Some RewriteRules that capture and substitute unsafely will now
    fail unless rewrite flag "UnsafeAllow3F" is specified.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38473: Apache HTTP Server proxy encoding
    problem (cve.mitre.org) [boo#1227276]
    Encoding problem in mod_proxy in Apache HTTP Server 2.4.59 and
    earlier allows request URLs with incorrect encoding to be sent
    to backend services, potentially bypassing authentication via
    crafted requests.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38472: Apache HTTP Server on WIndows UNC SSRF
    (cve.mitre.org) [boo#1227267]
    SSRF in Apache HTTP Server on Windows allows to potentially leak
    NTML hashes to a malicious server via SSRF and malicious
    requests or content
    Note: Existing configurations that access UNC paths
    will have to configure new directive "UNCList" to allow access
    during request processing.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-36387: Apache HTTP Server: DoS by Null
    pointer in websocket over HTTP/2 (cve.mitre.org) [boo#1227272]
    Serving WebSocket protocol upgrades over a HTTP/2 connection
    could result in a Null Pointer dereference, leading to a crash
    of the server process, degrading performance.
    Credits: Marc Stern (&lt;marc.stern AT approach-cyber.com&gt;)
  * ) mod_proxy: Fix DNS requests and connections closed before the
    configured addressTTL.  BZ 69126.  [Yann Ylavic]
  * ) core: On Linux, log the real thread ID in error logs.  [Joe Orton]
  * ) core: Support zone/scope in IPv6 link-local addresses in Listen and
    VirtualHost directives (requires APR 1.7.x or later).  PR 59396
    [Joe Orton]
  * ) mod_ssl: Reject client-initiated renegotiation with a TLS alert
    (rather than connection closure).  [Joe Orton, Yann Ylavic]
  * ) Updated mime.types.  [Mohamed Akram &lt;mohd.akram outlook.com&gt;,
    Adam Silverstein &lt;adamsilverstein earthboundhosting.com&gt;]
  * ) mod_ssl: Fix a regression that causes the default DH parameters for a key
    no longer set and thus effectively disabling DH ciphers when no explicit
    DH parameters are set. PR 68863 [Ruediger Pluem]
  * ) mod_cgid: Optional support for file descriptor passing, fixing
    error log handling (configure --enable-cgid-fdpassing) on Unix
    platforms. PR 54221.  [Joe Orton]
  * ) mod_cgid/mod_cgi: Distinguish script stderr output clearly in
    error logs.  PR 61980.  [Hank Ibell &lt;hwibell gmail.com&gt;]
  * ) mod_tls: update version of rustls-ffi to v0.13.0.
    [Daniel McCarney (@cpu}]
  * ) mod_md:
  - Using OCSP stapling information to trigger certificate renewals. Proposed
    by @frasertweedale.
  - Added directive `MDCheckInterval` to control how often the server checks
    for detected revocations. Added proposals for configurations in the
    README.md chapter "Revocations".
  - OCSP stapling: accept OCSP responses without a `nextUpdate` entry which is
    allowed in RFC 6960. Treat those as having an update interval of 12 hours.
    Added by @frasertweedale.
  - Adapt OpenSSL usage to changes in their API. By Yann Ylavic.
- removed patches (upstreamed)
  - apache2-issue-444.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- Update to 2.4.62
  * ) SECURITY: CVE-2024-40898: Apache HTTP Server: SSRF with
    mod_rewrite in server/vhost context on Windows (cve.mitre.org)
    [boo#1228098]
    SSRF in Apache HTTP Server on Windows with mod_rewrite in
    server/vhost context, allows to potentially leak NTML hashes to
    a malicious server via SSRF and malicious requests.
    Users are recommended to upgrade to version 2.4.62 which fixes
    this issue.
    Credits: Smi1e (DBAPPSecurity Ltd.)
  * ) SECURITY: CVE-2024-40725: Apache HTTP Server: source code
    disclosure with handlers configured via AddType (cve.mitre.org)
    [boo#1228097]
    A partial fix for  CVE-2024-39884 in the core of Apache HTTP
    Server 2.4.61 ignores some use of the legacy content-type based
    configuration of handlers. "AddType" and similar configuration,
    under some circumstances where files are requested indirectly,
    result in source code disclosure of local content. For example,
    PHP scripts may be served instead of interpreted.
    Users are recommended to upgrade to version 2.4.62, which fixes
    this issue.
  * ) mod_proxy: Fix canonicalisation and FCGI env (PATH_INFO, SCRIPT_NAME) for
    "balancer:" URLs set via SetHandler, also allowing for "unix:" sockets
    with BalancerMember(s).  PR 69168.  [Yann Ylavic]
  * ) mod_proxy: Avoid AH01059 parsing error for SetHandler "unix:" URLs.
    PR 69160 [Yann Ylavic]
  * ) mod_ssl: Fix crashes in PKCS#11 ENGINE support with OpenSSL 3.2.
    [Joe Orton]
  * ) mod_ssl: Add support for loading certs/keys from pkcs11: URIs
    via OpenSSL 3.x providers.  [Ingo Franzki &lt;ifranzki linux.ibm.com&gt;]
  * ) mod_ssl: Restore SSL dumping on trace7 loglevel with OpenSSL &gt;= 3.0.
    [Ruediger Pluem, Yann Ylavic]
  * ) mpm_worker: Fix possible warning (AH00045) about children processes not
    terminating timely.  [Yann Ylavic]</changelog>
  <changelog author="Thorsten Kukuk &lt;kukuk@suse.com&gt;" date="1727697600">- Add /srv/www directories to filelist [bsc#1231027]
  (apache2 will not start since default config uses this directory)</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1730721600">- Explicitly mark start_apache2 as bash-dependent.</changelog>
  <changelog author="Martin Schreiner &lt;martin.schreiner@suse.com&gt;" date="1730808000">- Update httpd-framework to svn1921782.
- Fixes Apache's impact on bsc#1218342.</changelog>
</package>
<package pkgid="d5646786ddc63e858a20b12f6d742badc73dec0f35449e367e319435086ab07e634a1c937eb0ef216afe56f66b6cf04dfb6a12b2f2a17c253b0a7a7a1a05cfe2" name="apache2-mod_apparmor" arch="i586">
  <version epoch="0" ver="4.0.2" rel="2.1"/>
  <changelog author="Christian Boltz &lt;suse-beta@cboltz.de&gt;" date="1707134400">- Update to AppArmor 3.1.7
  - aa-logprof: don't skip exec events in hats
  - fix aa-cleanprof to work with named profiles
  - add permissions in various abstractions
  - see https://gitlab.com/apparmor/apparmor/-/wikis/Release_Notes_3.1.7
    for the full list of changes
- drop upstreamed apparmor-systemd-sessions.patch</changelog>
  <changelog author="David Disseldorp &lt;ddiss@suse.com&gt;" date="1707393600">- Add apparmor-abstractions-openssl-allow-version-specific-en.patch to
  allow version specific engdef &amp; engines openssl paths (boo#1219571)</changelog>
  <changelog author="David Disseldorp &lt;ddiss@suse.com&gt;" date="1708430400">- Only run utils and profiles make check if kernel LSM is enabled
  (bsc#1220084)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1708430401">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Ludwig Nussel &lt;lnussel@suse.com&gt;" date="1708948800">- Fix systemd userdb access in unix-chkpwd</changelog>
  <changelog author="Noel Power &lt;nopower@suse.com&gt;" date="1709035200">- Add smbd-unix_chkpwd.diff to allow smbd to execute
  unix_chkpwd and fix other pam related denies; (boo#1220032).</changelog>
  <changelog author="Christian Boltz &lt;suse-beta@cboltz.de&gt;" date="1709294400">- Remove workaround for boo#853019 in %postun parser -
  apparmor.service contains a more safe workaround.
  This also fixes boo#1220708 (missing daemon-reload).</changelog>
  <changelog author="Atri Bhattacharya &lt;badshah400@gmail.com&gt;" date="1712318400">- Use full URLs for source tarball and signature.</changelog>
  <changelog author="Christian Boltz &lt;suse-beta@cboltz.de&gt;" date="1714910400">- Update to AppArmor 4.0.1
  Too many changes to list them here. See
  https://gitlab.com/apparmor/apparmor/-/wikis/Release_Notes_4.0.1
  for the detailed upstream release notes
- add tools-fix-redefinition.diff: fix redefinition of _ in tools
- add test-aa-notify.diff: relax test-aa-notify to avoid a mismatch
  with argparse on Leap 15.5
- drop upstreamed patches:
  - apparmor-abstractions-openssl-allow-version-specific-en.patch
  - dovecot-unix_chkpwd.diff
  - smbd-unix_chkpwd.diff
- apparmor-lessopen-profile.patch: update lessopen profile to
  abi/4.0
- mark local/* as %ghost so that these dummy files don't get
  installed anymore (changed existing local/files will be kept,
  unchanged files will be deleted)
- switch to gitlab tarballs (without pregenerated libapparmor
  configure script and prebuilt techdoc.pdf)
  - run libapparmor autogen.sh (needs additional BuildRequires
    autoconf, autoconf-archive, automake and libtool)
  - no longer package techdoc.pdf - old documentation, not worth
    the texlive BuildRequires we would need to build it
- drop old (up to 2.12) cache location /var/lib/apparmor/ and the
  /etc/apparmor.d/cache symlink pointing to it
- drop apparmor-samba-include-permissions-for-shares.diff - no
  longer needed, update-apparmor-samba-profile in Tumbleweed works
  without a pre-existing local/usr.sbin.smbd-shares file
- drop ruby-2_0-mkmf-destdir.patch - this ancient patch doesn't
  change a single bit in the resulting build (anymore?)
- drop apparmor-lessopen-nfs-workaround.diff - no longer needed
  since Kernel 6.0 (see https://bugs.launchpad.net/bugs/1784499)
- drop ancient, unused update-trans.sh</changelog>
  <changelog author="Christian Boltz &lt;suse-beta@cboltz.de&gt;" date="1716552000">- fix bashism in %post profiles</changelog>
  <changelog author="Christian Boltz &lt;suse-beta@cboltz.de&gt;" date="1716638400">- add aa-remove-unknown-fix-unconfined.diff to fix
  aa-remove-unknown for 'unconfined' profiles (boo#1225457)
- set permissions for %ghost files (boo#1223578)</changelog>
  <changelog author="Christian Boltz &lt;suse-beta@cboltz.de&gt;" date="1716897600">- exclude runc profile until updated runc packages (including
  updated profile with "signal peer=runc") have arrived</changelog>
  <changelog author="Christian Boltz &lt;suse-beta@cboltz.de&gt;" date="1716897601">- add utils-relax-mount-rules.diff and utils-relax-mount-rules-2.diff:
  Relax handling of mount rules in utils to avoid errors when
  parsing valid profiles
- add teardown-unconfined.diff to fix aa-teardown for 'unconfined'
  profiles (boo#1225457)</changelog>
  <changelog author="Fabian Vogt &lt;fvogt@suse.com&gt;" date="1716984000">- Exclude the crun profile in addition to runc</changelog>
  <changelog author="Guillaume GARDET &lt;guillaume.gardet@opensuse.org&gt;" date="1717070400">- Also exclude podman profile - boo#1225608</changelog>
  <changelog author="Christian Boltz &lt;suse-beta@cboltz.de&gt;" date="1717502400">- add sddm-xauth.diff - sddm uses a new path for xauth (boo#1223900)
- add plasmashell.diff - fix QtWebEngineProcess path to prevent a
  crash in plasmashell (boo#1225961)</changelog>
  <changelog author="Christian Boltz &lt;suse-beta@cboltz.de&gt;" date="1718107200">- add logprof-mount-empty-source.diff: add support for mount rules
  with quoted paths and empty source (boo#1226031)</changelog>
  <changelog author="Christian Boltz &lt;suse-beta@cboltz.de&gt;" date="1719316800">- add sampa-rpcd-witness.diff: allow samba-dcerpcd to execute
  rpcd_witness (boo#1225811)</changelog>
  <changelog author="Christian Boltz &lt;suse-beta@cboltz.de&gt;" date="1721822400">- update to AppArmor 4.0.2
  - bugfix release with lots of fixes in all areas
  - add new userns profiles for balena-etcher, chromium and wike
  - see https://gitlab.com/apparmor/apparmor/-/wikis/Release_Notes_4.0.2
    for the detailed upstream changelog
- drop upstream(ed) patches:
  - aa-remove-unknown-fix-unconfined.diff
  - logprof-mount-empty-source.diff
  - plasmashell.diff
  - sampa-rpcd-witness.diff
  - sddm-xauth.diff
  - teardown-unconfined.diff
  - test-aa-notify.diff
  - tools-fix-redefinition.diff
  - utils-relax-mount-rules-2.diff
  - utils-relax-mount-rules.diff
- refresh GPG key (was expired)</changelog>
  <changelog author="pgajdos@suse.com" date="1724328000">- remove dependency on /usr/bin/python3 using
  %python3_fix_shebang macro, [bsc#1212476]</changelog>
</package>
<package pkgid="82b17761be497fc339ad2ac333635726fec5db05b175764d39df867197650fd020eb1b6c527e212698bcff671fa804ef82bea55e7d212b06c31fd13680b6230e" name="apache2-mod_apparmor" arch="x86_64">
  <version epoch="0" ver="4.0.2" rel="2.1"/>
  <changelog author="Christian Boltz &lt;suse-beta@cboltz.de&gt;" date="1707134400">- Update to AppArmor 3.1.7
  - aa-logprof: don't skip exec events in hats
  - fix aa-cleanprof to work with named profiles
  - add permissions in various abstractions
  - see https://gitlab.com/apparmor/apparmor/-/wikis/Release_Notes_3.1.7
    for the full list of changes
- drop upstreamed apparmor-systemd-sessions.patch</changelog>
  <changelog author="David Disseldorp &lt;ddiss@suse.com&gt;" date="1707393600">- Add apparmor-abstractions-openssl-allow-version-specific-en.patch to
  allow version specific engdef &amp; engines openssl paths (boo#1219571)</changelog>
  <changelog author="David Disseldorp &lt;ddiss@suse.com&gt;" date="1708430400">- Only run utils and profiles make check if kernel LSM is enabled
  (bsc#1220084)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1708430401">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Ludwig Nussel &lt;lnussel@suse.com&gt;" date="1708948800">- Fix systemd userdb access in unix-chkpwd</changelog>
  <changelog author="Noel Power &lt;nopower@suse.com&gt;" date="1709035200">- Add smbd-unix_chkpwd.diff to allow smbd to execute
  unix_chkpwd and fix other pam related denies; (boo#1220032).</changelog>
  <changelog author="Christian Boltz &lt;suse-beta@cboltz.de&gt;" date="1709294400">- Remove workaround for boo#853019 in %postun parser -
  apparmor.service contains a more safe workaround.
  This also fixes boo#1220708 (missing daemon-reload).</changelog>
  <changelog author="Atri Bhattacharya &lt;badshah400@gmail.com&gt;" date="1712318400">- Use full URLs for source tarball and signature.</changelog>
  <changelog author="Christian Boltz &lt;suse-beta@cboltz.de&gt;" date="1714910400">- Update to AppArmor 4.0.1
  Too many changes to list them here. See
  https://gitlab.com/apparmor/apparmor/-/wikis/Release_Notes_4.0.1
  for the detailed upstream release notes
- add tools-fix-redefinition.diff: fix redefinition of _ in tools
- add test-aa-notify.diff: relax test-aa-notify to avoid a mismatch
  with argparse on Leap 15.5
- drop upstreamed patches:
  - apparmor-abstractions-openssl-allow-version-specific-en.patch
  - dovecot-unix_chkpwd.diff
  - smbd-unix_chkpwd.diff
- apparmor-lessopen-profile.patch: update lessopen profile to
  abi/4.0
- mark local/* as %ghost so that these dummy files don't get
  installed anymore (changed existing local/files will be kept,
  unchanged files will be deleted)
- switch to gitlab tarballs (without pregenerated libapparmor
  configure script and prebuilt techdoc.pdf)
  - run libapparmor autogen.sh (needs additional BuildRequires
    autoconf, autoconf-archive, automake and libtool)
  - no longer package techdoc.pdf - old documentation, not worth
    the texlive BuildRequires we would need to build it
- drop old (up to 2.12) cache location /var/lib/apparmor/ and the
  /etc/apparmor.d/cache symlink pointing to it
- drop apparmor-samba-include-permissions-for-shares.diff - no
  longer needed, update-apparmor-samba-profile in Tumbleweed works
  without a pre-existing local/usr.sbin.smbd-shares file
- drop ruby-2_0-mkmf-destdir.patch - this ancient patch doesn't
  change a single bit in the resulting build (anymore?)
- drop apparmor-lessopen-nfs-workaround.diff - no longer needed
  since Kernel 6.0 (see https://bugs.launchpad.net/bugs/1784499)
- drop ancient, unused update-trans.sh</changelog>
  <changelog author="Christian Boltz &lt;suse-beta@cboltz.de&gt;" date="1716552000">- fix bashism in %post profiles</changelog>
  <changelog author="Christian Boltz &lt;suse-beta@cboltz.de&gt;" date="1716638400">- add aa-remove-unknown-fix-unconfined.diff to fix
  aa-remove-unknown for 'unconfined' profiles (boo#1225457)
- set permissions for %ghost files (boo#1223578)</changelog>
  <changelog author="Christian Boltz &lt;suse-beta@cboltz.de&gt;" date="1716897600">- exclude runc profile until updated runc packages (including
  updated profile with "signal peer=runc") have arrived</changelog>
  <changelog author="Christian Boltz &lt;suse-beta@cboltz.de&gt;" date="1716897601">- add utils-relax-mount-rules.diff and utils-relax-mount-rules-2.diff:
  Relax handling of mount rules in utils to avoid errors when
  parsing valid profiles
- add teardown-unconfined.diff to fix aa-teardown for 'unconfined'
  profiles (boo#1225457)</changelog>
  <changelog author="Fabian Vogt &lt;fvogt@suse.com&gt;" date="1716984000">- Exclude the crun profile in addition to runc</changelog>
  <changelog author="Guillaume GARDET &lt;guillaume.gardet@opensuse.org&gt;" date="1717070400">- Also exclude podman profile - boo#1225608</changelog>
  <changelog author="Christian Boltz &lt;suse-beta@cboltz.de&gt;" date="1717502400">- add sddm-xauth.diff - sddm uses a new path for xauth (boo#1223900)
- add plasmashell.diff - fix QtWebEngineProcess path to prevent a
  crash in plasmashell (boo#1225961)</changelog>
  <changelog author="Christian Boltz &lt;suse-beta@cboltz.de&gt;" date="1718107200">- add logprof-mount-empty-source.diff: add support for mount rules
  with quoted paths and empty source (boo#1226031)</changelog>
  <changelog author="Christian Boltz &lt;suse-beta@cboltz.de&gt;" date="1719316800">- add sampa-rpcd-witness.diff: allow samba-dcerpcd to execute
  rpcd_witness (boo#1225811)</changelog>
  <changelog author="Christian Boltz &lt;suse-beta@cboltz.de&gt;" date="1721822400">- update to AppArmor 4.0.2
  - bugfix release with lots of fixes in all areas
  - add new userns profiles for balena-etcher, chromium and wike
  - see https://gitlab.com/apparmor/apparmor/-/wikis/Release_Notes_4.0.2
    for the detailed upstream changelog
- drop upstream(ed) patches:
  - aa-remove-unknown-fix-unconfined.diff
  - logprof-mount-empty-source.diff
  - plasmashell.diff
  - sampa-rpcd-witness.diff
  - sddm-xauth.diff
  - teardown-unconfined.diff
  - test-aa-notify.diff
  - tools-fix-redefinition.diff
  - utils-relax-mount-rules-2.diff
  - utils-relax-mount-rules.diff
- refresh GPG key (was expired)</changelog>
  <changelog author="pgajdos@suse.com" date="1724328000">- remove dependency on /usr/bin/python3 using
  %python3_fix_shebang macro, [bsc#1212476]</changelog>
</package>
<package pkgid="f1794c3520c854b501b2bb527224de1803fdb31df533f903a75f1db139ab08b5f08b14570e35b40e6d8199f4097ae04969e690f868569c498c6609acb816b139" name="apache2-mod_apparmor" arch="i586">
  <version epoch="0" ver="4.0.3" rel="1.1"/>
  <changelog author="David Disseldorp &lt;ddiss@suse.com&gt;" date="1708430400">- Only run utils and profiles make check if kernel LSM is enabled
  (bsc#1220084)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1708430401">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Ludwig Nussel &lt;lnussel@suse.com&gt;" date="1708948800">- Fix systemd userdb access in unix-chkpwd</changelog>
  <changelog author="Noel Power &lt;nopower@suse.com&gt;" date="1709035200">- Add smbd-unix_chkpwd.diff to allow smbd to execute
  unix_chkpwd and fix other pam related denies; (boo#1220032).</changelog>
  <changelog author="Christian Boltz &lt;suse-beta@cboltz.de&gt;" date="1709294400">- Remove workaround for boo#853019 in %postun parser -
  apparmor.service contains a more safe workaround.
  This also fixes boo#1220708 (missing daemon-reload).</changelog>
  <changelog author="Atri Bhattacharya &lt;badshah400@gmail.com&gt;" date="1712318400">- Use full URLs for source tarball and signature.</changelog>
  <changelog author="Christian Boltz &lt;suse-beta@cboltz.de&gt;" date="1714910400">- Update to AppArmor 4.0.1
  Too many changes to list them here. See
  https://gitlab.com/apparmor/apparmor/-/wikis/Release_Notes_4.0.1
  for the detailed upstream release notes
- add tools-fix-redefinition.diff: fix redefinition of _ in tools
- add test-aa-notify.diff: relax test-aa-notify to avoid a mismatch
  with argparse on Leap 15.5
- drop upstreamed patches:
  - apparmor-abstractions-openssl-allow-version-specific-en.patch
  - dovecot-unix_chkpwd.diff
  - smbd-unix_chkpwd.diff
- apparmor-lessopen-profile.patch: update lessopen profile to
  abi/4.0
- mark local/* as %ghost so that these dummy files don't get
  installed anymore (changed existing local/files will be kept,
  unchanged files will be deleted)
- switch to gitlab tarballs (without pregenerated libapparmor
  configure script and prebuilt techdoc.pdf)
  - run libapparmor autogen.sh (needs additional BuildRequires
    autoconf, autoconf-archive, automake and libtool)
  - no longer package techdoc.pdf - old documentation, not worth
    the texlive BuildRequires we would need to build it
- drop old (up to 2.12) cache location /var/lib/apparmor/ and the
  /etc/apparmor.d/cache symlink pointing to it
- drop apparmor-samba-include-permissions-for-shares.diff - no
  longer needed, update-apparmor-samba-profile in Tumbleweed works
  without a pre-existing local/usr.sbin.smbd-shares file
- drop ruby-2_0-mkmf-destdir.patch - this ancient patch doesn't
  change a single bit in the resulting build (anymore?)
- drop apparmor-lessopen-nfs-workaround.diff - no longer needed
  since Kernel 6.0 (see https://bugs.launchpad.net/bugs/1784499)
- drop ancient, unused update-trans.sh</changelog>
  <changelog author="Christian Boltz &lt;suse-beta@cboltz.de&gt;" date="1716552000">- fix bashism in %post profiles</changelog>
  <changelog author="Christian Boltz &lt;suse-beta@cboltz.de&gt;" date="1716638400">- add aa-remove-unknown-fix-unconfined.diff to fix
  aa-remove-unknown for 'unconfined' profiles (boo#1225457)
- set permissions for %ghost files (boo#1223578)</changelog>
  <changelog author="Christian Boltz &lt;suse-beta@cboltz.de&gt;" date="1716897600">- exclude runc profile until updated runc packages (including
  updated profile with "signal peer=runc") have arrived</changelog>
  <changelog author="Christian Boltz &lt;suse-beta@cboltz.de&gt;" date="1716897601">- add utils-relax-mount-rules.diff and utils-relax-mount-rules-2.diff:
  Relax handling of mount rules in utils to avoid errors when
  parsing valid profiles
- add teardown-unconfined.diff to fix aa-teardown for 'unconfined'
  profiles (boo#1225457)</changelog>
  <changelog author="Fabian Vogt &lt;fvogt@suse.com&gt;" date="1716984000">- Exclude the crun profile in addition to runc</changelog>
  <changelog author="Guillaume GARDET &lt;guillaume.gardet@opensuse.org&gt;" date="1717070400">- Also exclude podman profile - boo#1225608</changelog>
  <changelog author="Christian Boltz &lt;suse-beta@cboltz.de&gt;" date="1717502400">- add sddm-xauth.diff - sddm uses a new path for xauth (boo#1223900)
- add plasmashell.diff - fix QtWebEngineProcess path to prevent a
  crash in plasmashell (boo#1225961)</changelog>
  <changelog author="Christian Boltz &lt;suse-beta@cboltz.de&gt;" date="1718107200">- add logprof-mount-empty-source.diff: add support for mount rules
  with quoted paths and empty source (boo#1226031)</changelog>
  <changelog author="Christian Boltz &lt;suse-beta@cboltz.de&gt;" date="1719316800">- add sampa-rpcd-witness.diff: allow samba-dcerpcd to execute
  rpcd_witness (boo#1225811)</changelog>
  <changelog author="Christian Boltz &lt;suse-beta@cboltz.de&gt;" date="1721822400">- update to AppArmor 4.0.2
  - bugfix release with lots of fixes in all areas
  - add new userns profiles for balena-etcher, chromium and wike
  - see https://gitlab.com/apparmor/apparmor/-/wikis/Release_Notes_4.0.2
    for the detailed upstream changelog
- drop upstream(ed) patches:
  - aa-remove-unknown-fix-unconfined.diff
  - logprof-mount-empty-source.diff
  - plasmashell.diff
  - sampa-rpcd-witness.diff
  - sddm-xauth.diff
  - teardown-unconfined.diff
  - test-aa-notify.diff
  - tools-fix-redefinition.diff
  - utils-relax-mount-rules-2.diff
  - utils-relax-mount-rules.diff
- refresh GPG key (was expired)</changelog>
  <changelog author="pgajdos@suse.com" date="1724328000">- remove dependency on /usr/bin/python3 using
  %python3_fix_shebang macro, [bsc#1212476]</changelog>
  <changelog author="Christian Boltz &lt;suse-beta@cboltz.de&gt;" date="1724414400">- update to AppArmor 4.0.3
  - several small bugfixes
  - see https://gitlab.com/apparmor/apparmor/-/wikis/Release_Notes_4.0.3
    for the full release notes</changelog>
  <changelog author="Christian Boltz &lt;suse-beta@cboltz.de&gt;" date="1727784000">- add mesa-cachedir.diff: new cachedir in Mesa 24.2.2</changelog>
</package>
<package pkgid="d8ed1e35c64de5eeaafee980cfe11826a5ca9fbf59954c5266b078d664f4dbfaf8381dca9b6c74a9e281b265cc525606ca294c84feba32f1a83c4037bffd5290" name="apache2-mod_apparmor" arch="x86_64">
  <version epoch="0" ver="4.0.3" rel="1.1"/>
  <changelog author="David Disseldorp &lt;ddiss@suse.com&gt;" date="1708430400">- Only run utils and profiles make check if kernel LSM is enabled
  (bsc#1220084)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1708430401">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Ludwig Nussel &lt;lnussel@suse.com&gt;" date="1708948800">- Fix systemd userdb access in unix-chkpwd</changelog>
  <changelog author="Noel Power &lt;nopower@suse.com&gt;" date="1709035200">- Add smbd-unix_chkpwd.diff to allow smbd to execute
  unix_chkpwd and fix other pam related denies; (boo#1220032).</changelog>
  <changelog author="Christian Boltz &lt;suse-beta@cboltz.de&gt;" date="1709294400">- Remove workaround for boo#853019 in %postun parser -
  apparmor.service contains a more safe workaround.
  This also fixes boo#1220708 (missing daemon-reload).</changelog>
  <changelog author="Atri Bhattacharya &lt;badshah400@gmail.com&gt;" date="1712318400">- Use full URLs for source tarball and signature.</changelog>
  <changelog author="Christian Boltz &lt;suse-beta@cboltz.de&gt;" date="1714910400">- Update to AppArmor 4.0.1
  Too many changes to list them here. See
  https://gitlab.com/apparmor/apparmor/-/wikis/Release_Notes_4.0.1
  for the detailed upstream release notes
- add tools-fix-redefinition.diff: fix redefinition of _ in tools
- add test-aa-notify.diff: relax test-aa-notify to avoid a mismatch
  with argparse on Leap 15.5
- drop upstreamed patches:
  - apparmor-abstractions-openssl-allow-version-specific-en.patch
  - dovecot-unix_chkpwd.diff
  - smbd-unix_chkpwd.diff
- apparmor-lessopen-profile.patch: update lessopen profile to
  abi/4.0
- mark local/* as %ghost so that these dummy files don't get
  installed anymore (changed existing local/files will be kept,
  unchanged files will be deleted)
- switch to gitlab tarballs (without pregenerated libapparmor
  configure script and prebuilt techdoc.pdf)
  - run libapparmor autogen.sh (needs additional BuildRequires
    autoconf, autoconf-archive, automake and libtool)
  - no longer package techdoc.pdf - old documentation, not worth
    the texlive BuildRequires we would need to build it
- drop old (up to 2.12) cache location /var/lib/apparmor/ and the
  /etc/apparmor.d/cache symlink pointing to it
- drop apparmor-samba-include-permissions-for-shares.diff - no
  longer needed, update-apparmor-samba-profile in Tumbleweed works
  without a pre-existing local/usr.sbin.smbd-shares file
- drop ruby-2_0-mkmf-destdir.patch - this ancient patch doesn't
  change a single bit in the resulting build (anymore?)
- drop apparmor-lessopen-nfs-workaround.diff - no longer needed
  since Kernel 6.0 (see https://bugs.launchpad.net/bugs/1784499)
- drop ancient, unused update-trans.sh</changelog>
  <changelog author="Christian Boltz &lt;suse-beta@cboltz.de&gt;" date="1716552000">- fix bashism in %post profiles</changelog>
  <changelog author="Christian Boltz &lt;suse-beta@cboltz.de&gt;" date="1716638400">- add aa-remove-unknown-fix-unconfined.diff to fix
  aa-remove-unknown for 'unconfined' profiles (boo#1225457)
- set permissions for %ghost files (boo#1223578)</changelog>
  <changelog author="Christian Boltz &lt;suse-beta@cboltz.de&gt;" date="1716897600">- exclude runc profile until updated runc packages (including
  updated profile with "signal peer=runc") have arrived</changelog>
  <changelog author="Christian Boltz &lt;suse-beta@cboltz.de&gt;" date="1716897601">- add utils-relax-mount-rules.diff and utils-relax-mount-rules-2.diff:
  Relax handling of mount rules in utils to avoid errors when
  parsing valid profiles
- add teardown-unconfined.diff to fix aa-teardown for 'unconfined'
  profiles (boo#1225457)</changelog>
  <changelog author="Fabian Vogt &lt;fvogt@suse.com&gt;" date="1716984000">- Exclude the crun profile in addition to runc</changelog>
  <changelog author="Guillaume GARDET &lt;guillaume.gardet@opensuse.org&gt;" date="1717070400">- Also exclude podman profile - boo#1225608</changelog>
  <changelog author="Christian Boltz &lt;suse-beta@cboltz.de&gt;" date="1717502400">- add sddm-xauth.diff - sddm uses a new path for xauth (boo#1223900)
- add plasmashell.diff - fix QtWebEngineProcess path to prevent a
  crash in plasmashell (boo#1225961)</changelog>
  <changelog author="Christian Boltz &lt;suse-beta@cboltz.de&gt;" date="1718107200">- add logprof-mount-empty-source.diff: add support for mount rules
  with quoted paths and empty source (boo#1226031)</changelog>
  <changelog author="Christian Boltz &lt;suse-beta@cboltz.de&gt;" date="1719316800">- add sampa-rpcd-witness.diff: allow samba-dcerpcd to execute
  rpcd_witness (boo#1225811)</changelog>
  <changelog author="Christian Boltz &lt;suse-beta@cboltz.de&gt;" date="1721822400">- update to AppArmor 4.0.2
  - bugfix release with lots of fixes in all areas
  - add new userns profiles for balena-etcher, chromium and wike
  - see https://gitlab.com/apparmor/apparmor/-/wikis/Release_Notes_4.0.2
    for the detailed upstream changelog
- drop upstream(ed) patches:
  - aa-remove-unknown-fix-unconfined.diff
  - logprof-mount-empty-source.diff
  - plasmashell.diff
  - sampa-rpcd-witness.diff
  - sddm-xauth.diff
  - teardown-unconfined.diff
  - test-aa-notify.diff
  - tools-fix-redefinition.diff
  - utils-relax-mount-rules-2.diff
  - utils-relax-mount-rules.diff
- refresh GPG key (was expired)</changelog>
  <changelog author="pgajdos@suse.com" date="1724328000">- remove dependency on /usr/bin/python3 using
  %python3_fix_shebang macro, [bsc#1212476]</changelog>
  <changelog author="Christian Boltz &lt;suse-beta@cboltz.de&gt;" date="1724414400">- update to AppArmor 4.0.3
  - several small bugfixes
  - see https://gitlab.com/apparmor/apparmor/-/wikis/Release_Notes_4.0.3
    for the full release notes</changelog>
  <changelog author="Christian Boltz &lt;suse-beta@cboltz.de&gt;" date="1727784000">- add mesa-cachedir.diff: new cachedir in Mesa 24.2.2</changelog>
</package>
<package pkgid="00e7934e0f5137e249e59f2a342847db3c5bc16a681b1b1d5cca16258228765935b4d215a3f005ff669ec0d44603eb7fe7ea864272c531e00c2d36966c7db971" name="apache2-mod_apparmor-debuginfo" arch="i586">
  <version epoch="0" ver="4.0.2" rel="2.1"/>
  <changelog author="Christian Boltz &lt;suse-beta@cboltz.de&gt;" date="1707134400">- Update to AppArmor 3.1.7
  - aa-logprof: don't skip exec events in hats
  - fix aa-cleanprof to work with named profiles
  - add permissions in various abstractions
  - see https://gitlab.com/apparmor/apparmor/-/wikis/Release_Notes_3.1.7
    for the full list of changes
- drop upstreamed apparmor-systemd-sessions.patch</changelog>
  <changelog author="David Disseldorp &lt;ddiss@suse.com&gt;" date="1707393600">- Add apparmor-abstractions-openssl-allow-version-specific-en.patch to
  allow version specific engdef &amp; engines openssl paths (boo#1219571)</changelog>
  <changelog author="David Disseldorp &lt;ddiss@suse.com&gt;" date="1708430400">- Only run utils and profiles make check if kernel LSM is enabled
  (bsc#1220084)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1708430401">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Ludwig Nussel &lt;lnussel@suse.com&gt;" date="1708948800">- Fix systemd userdb access in unix-chkpwd</changelog>
  <changelog author="Noel Power &lt;nopower@suse.com&gt;" date="1709035200">- Add smbd-unix_chkpwd.diff to allow smbd to execute
  unix_chkpwd and fix other pam related denies; (boo#1220032).</changelog>
  <changelog author="Christian Boltz &lt;suse-beta@cboltz.de&gt;" date="1709294400">- Remove workaround for boo#853019 in %postun parser -
  apparmor.service contains a more safe workaround.
  This also fixes boo#1220708 (missing daemon-reload).</changelog>
  <changelog author="Atri Bhattacharya &lt;badshah400@gmail.com&gt;" date="1712318400">- Use full URLs for source tarball and signature.</changelog>
  <changelog author="Christian Boltz &lt;suse-beta@cboltz.de&gt;" date="1714910400">- Update to AppArmor 4.0.1
  Too many changes to list them here. See
  https://gitlab.com/apparmor/apparmor/-/wikis/Release_Notes_4.0.1
  for the detailed upstream release notes
- add tools-fix-redefinition.diff: fix redefinition of _ in tools
- add test-aa-notify.diff: relax test-aa-notify to avoid a mismatch
  with argparse on Leap 15.5
- drop upstreamed patches:
  - apparmor-abstractions-openssl-allow-version-specific-en.patch
  - dovecot-unix_chkpwd.diff
  - smbd-unix_chkpwd.diff
- apparmor-lessopen-profile.patch: update lessopen profile to
  abi/4.0
- mark local/* as %ghost so that these dummy files don't get
  installed anymore (changed existing local/files will be kept,
  unchanged files will be deleted)
- switch to gitlab tarballs (without pregenerated libapparmor
  configure script and prebuilt techdoc.pdf)
  - run libapparmor autogen.sh (needs additional BuildRequires
    autoconf, autoconf-archive, automake and libtool)
  - no longer package techdoc.pdf - old documentation, not worth
    the texlive BuildRequires we would need to build it
- drop old (up to 2.12) cache location /var/lib/apparmor/ and the
  /etc/apparmor.d/cache symlink pointing to it
- drop apparmor-samba-include-permissions-for-shares.diff - no
  longer needed, update-apparmor-samba-profile in Tumbleweed works
  without a pre-existing local/usr.sbin.smbd-shares file
- drop ruby-2_0-mkmf-destdir.patch - this ancient patch doesn't
  change a single bit in the resulting build (anymore?)
- drop apparmor-lessopen-nfs-workaround.diff - no longer needed
  since Kernel 6.0 (see https://bugs.launchpad.net/bugs/1784499)
- drop ancient, unused update-trans.sh</changelog>
  <changelog author="Christian Boltz &lt;suse-beta@cboltz.de&gt;" date="1716552000">- fix bashism in %post profiles</changelog>
  <changelog author="Christian Boltz &lt;suse-beta@cboltz.de&gt;" date="1716638400">- add aa-remove-unknown-fix-unconfined.diff to fix
  aa-remove-unknown for 'unconfined' profiles (boo#1225457)
- set permissions for %ghost files (boo#1223578)</changelog>
  <changelog author="Christian Boltz &lt;suse-beta@cboltz.de&gt;" date="1716897600">- exclude runc profile until updated runc packages (including
  updated profile with "signal peer=runc") have arrived</changelog>
  <changelog author="Christian Boltz &lt;suse-beta@cboltz.de&gt;" date="1716897601">- add utils-relax-mount-rules.diff and utils-relax-mount-rules-2.diff:
  Relax handling of mount rules in utils to avoid errors when
  parsing valid profiles
- add teardown-unconfined.diff to fix aa-teardown for 'unconfined'
  profiles (boo#1225457)</changelog>
  <changelog author="Fabian Vogt &lt;fvogt@suse.com&gt;" date="1716984000">- Exclude the crun profile in addition to runc</changelog>
  <changelog author="Guillaume GARDET &lt;guillaume.gardet@opensuse.org&gt;" date="1717070400">- Also exclude podman profile - boo#1225608</changelog>
  <changelog author="Christian Boltz &lt;suse-beta@cboltz.de&gt;" date="1717502400">- add sddm-xauth.diff - sddm uses a new path for xauth (boo#1223900)
- add plasmashell.diff - fix QtWebEngineProcess path to prevent a
  crash in plasmashell (boo#1225961)</changelog>
  <changelog author="Christian Boltz &lt;suse-beta@cboltz.de&gt;" date="1718107200">- add logprof-mount-empty-source.diff: add support for mount rules
  with quoted paths and empty source (boo#1226031)</changelog>
  <changelog author="Christian Boltz &lt;suse-beta@cboltz.de&gt;" date="1719316800">- add sampa-rpcd-witness.diff: allow samba-dcerpcd to execute
  rpcd_witness (boo#1225811)</changelog>
  <changelog author="Christian Boltz &lt;suse-beta@cboltz.de&gt;" date="1721822400">- update to AppArmor 4.0.2
  - bugfix release with lots of fixes in all areas
  - add new userns profiles for balena-etcher, chromium and wike
  - see https://gitlab.com/apparmor/apparmor/-/wikis/Release_Notes_4.0.2
    for the detailed upstream changelog
- drop upstream(ed) patches:
  - aa-remove-unknown-fix-unconfined.diff
  - logprof-mount-empty-source.diff
  - plasmashell.diff
  - sampa-rpcd-witness.diff
  - sddm-xauth.diff
  - teardown-unconfined.diff
  - test-aa-notify.diff
  - tools-fix-redefinition.diff
  - utils-relax-mount-rules-2.diff
  - utils-relax-mount-rules.diff
- refresh GPG key (was expired)</changelog>
  <changelog author="pgajdos@suse.com" date="1724328000">- remove dependency on /usr/bin/python3 using
  %python3_fix_shebang macro, [bsc#1212476]</changelog>
</package>
<package pkgid="5e0d9df7b1591994c736af69a24da5df62024a7d020896336bec34a294df4e0edd4fdfd386b0574c362e37b11a14c7c37ed96fbb7321d8003b06fae915848ebc" name="apache2-mod_apparmor-debuginfo" arch="x86_64">
  <version epoch="0" ver="4.0.2" rel="2.1"/>
  <changelog author="Christian Boltz &lt;suse-beta@cboltz.de&gt;" date="1707134400">- Update to AppArmor 3.1.7
  - aa-logprof: don't skip exec events in hats
  - fix aa-cleanprof to work with named profiles
  - add permissions in various abstractions
  - see https://gitlab.com/apparmor/apparmor/-/wikis/Release_Notes_3.1.7
    for the full list of changes
- drop upstreamed apparmor-systemd-sessions.patch</changelog>
  <changelog author="David Disseldorp &lt;ddiss@suse.com&gt;" date="1707393600">- Add apparmor-abstractions-openssl-allow-version-specific-en.patch to
  allow version specific engdef &amp; engines openssl paths (boo#1219571)</changelog>
  <changelog author="David Disseldorp &lt;ddiss@suse.com&gt;" date="1708430400">- Only run utils and profiles make check if kernel LSM is enabled
  (bsc#1220084)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1708430401">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Ludwig Nussel &lt;lnussel@suse.com&gt;" date="1708948800">- Fix systemd userdb access in unix-chkpwd</changelog>
  <changelog author="Noel Power &lt;nopower@suse.com&gt;" date="1709035200">- Add smbd-unix_chkpwd.diff to allow smbd to execute
  unix_chkpwd and fix other pam related denies; (boo#1220032).</changelog>
  <changelog author="Christian Boltz &lt;suse-beta@cboltz.de&gt;" date="1709294400">- Remove workaround for boo#853019 in %postun parser -
  apparmor.service contains a more safe workaround.
  This also fixes boo#1220708 (missing daemon-reload).</changelog>
  <changelog author="Atri Bhattacharya &lt;badshah400@gmail.com&gt;" date="1712318400">- Use full URLs for source tarball and signature.</changelog>
  <changelog author="Christian Boltz &lt;suse-beta@cboltz.de&gt;" date="1714910400">- Update to AppArmor 4.0.1
  Too many changes to list them here. See
  https://gitlab.com/apparmor/apparmor/-/wikis/Release_Notes_4.0.1
  for the detailed upstream release notes
- add tools-fix-redefinition.diff: fix redefinition of _ in tools
- add test-aa-notify.diff: relax test-aa-notify to avoid a mismatch
  with argparse on Leap 15.5
- drop upstreamed patches:
  - apparmor-abstractions-openssl-allow-version-specific-en.patch
  - dovecot-unix_chkpwd.diff
  - smbd-unix_chkpwd.diff
- apparmor-lessopen-profile.patch: update lessopen profile to
  abi/4.0
- mark local/* as %ghost so that these dummy files don't get
  installed anymore (changed existing local/files will be kept,
  unchanged files will be deleted)
- switch to gitlab tarballs (without pregenerated libapparmor
  configure script and prebuilt techdoc.pdf)
  - run libapparmor autogen.sh (needs additional BuildRequires
    autoconf, autoconf-archive, automake and libtool)
  - no longer package techdoc.pdf - old documentation, not worth
    the texlive BuildRequires we would need to build it
- drop old (up to 2.12) cache location /var/lib/apparmor/ and the
  /etc/apparmor.d/cache symlink pointing to it
- drop apparmor-samba-include-permissions-for-shares.diff - no
  longer needed, update-apparmor-samba-profile in Tumbleweed works
  without a pre-existing local/usr.sbin.smbd-shares file
- drop ruby-2_0-mkmf-destdir.patch - this ancient patch doesn't
  change a single bit in the resulting build (anymore?)
- drop apparmor-lessopen-nfs-workaround.diff - no longer needed
  since Kernel 6.0 (see https://bugs.launchpad.net/bugs/1784499)
- drop ancient, unused update-trans.sh</changelog>
  <changelog author="Christian Boltz &lt;suse-beta@cboltz.de&gt;" date="1716552000">- fix bashism in %post profiles</changelog>
  <changelog author="Christian Boltz &lt;suse-beta@cboltz.de&gt;" date="1716638400">- add aa-remove-unknown-fix-unconfined.diff to fix
  aa-remove-unknown for 'unconfined' profiles (boo#1225457)
- set permissions for %ghost files (boo#1223578)</changelog>
  <changelog author="Christian Boltz &lt;suse-beta@cboltz.de&gt;" date="1716897600">- exclude runc profile until updated runc packages (including
  updated profile with "signal peer=runc") have arrived</changelog>
  <changelog author="Christian Boltz &lt;suse-beta@cboltz.de&gt;" date="1716897601">- add utils-relax-mount-rules.diff and utils-relax-mount-rules-2.diff:
  Relax handling of mount rules in utils to avoid errors when
  parsing valid profiles
- add teardown-unconfined.diff to fix aa-teardown for 'unconfined'
  profiles (boo#1225457)</changelog>
  <changelog author="Fabian Vogt &lt;fvogt@suse.com&gt;" date="1716984000">- Exclude the crun profile in addition to runc</changelog>
  <changelog author="Guillaume GARDET &lt;guillaume.gardet@opensuse.org&gt;" date="1717070400">- Also exclude podman profile - boo#1225608</changelog>
  <changelog author="Christian Boltz &lt;suse-beta@cboltz.de&gt;" date="1717502400">- add sddm-xauth.diff - sddm uses a new path for xauth (boo#1223900)
- add plasmashell.diff - fix QtWebEngineProcess path to prevent a
  crash in plasmashell (boo#1225961)</changelog>
  <changelog author="Christian Boltz &lt;suse-beta@cboltz.de&gt;" date="1718107200">- add logprof-mount-empty-source.diff: add support for mount rules
  with quoted paths and empty source (boo#1226031)</changelog>
  <changelog author="Christian Boltz &lt;suse-beta@cboltz.de&gt;" date="1719316800">- add sampa-rpcd-witness.diff: allow samba-dcerpcd to execute
  rpcd_witness (boo#1225811)</changelog>
  <changelog author="Christian Boltz &lt;suse-beta@cboltz.de&gt;" date="1721822400">- update to AppArmor 4.0.2
  - bugfix release with lots of fixes in all areas
  - add new userns profiles for balena-etcher, chromium and wike
  - see https://gitlab.com/apparmor/apparmor/-/wikis/Release_Notes_4.0.2
    for the detailed upstream changelog
- drop upstream(ed) patches:
  - aa-remove-unknown-fix-unconfined.diff
  - logprof-mount-empty-source.diff
  - plasmashell.diff
  - sampa-rpcd-witness.diff
  - sddm-xauth.diff
  - teardown-unconfined.diff
  - test-aa-notify.diff
  - tools-fix-redefinition.diff
  - utils-relax-mount-rules-2.diff
  - utils-relax-mount-rules.diff
- refresh GPG key (was expired)</changelog>
  <changelog author="pgajdos@suse.com" date="1724328000">- remove dependency on /usr/bin/python3 using
  %python3_fix_shebang macro, [bsc#1212476]</changelog>
</package>
<package pkgid="8b1e856388953fcc7e1eac70a6134f726a93d90ef2919904c1c62fc499edc718701c70f9a6df370dd68d75327e7d982672cac08d6f330c1eb54fb2e3c38f283e" name="apache2-mod_apparmor-debuginfo" arch="i586">
  <version epoch="0" ver="4.0.3" rel="1.1"/>
  <changelog author="David Disseldorp &lt;ddiss@suse.com&gt;" date="1708430400">- Only run utils and profiles make check if kernel LSM is enabled
  (bsc#1220084)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1708430401">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Ludwig Nussel &lt;lnussel@suse.com&gt;" date="1708948800">- Fix systemd userdb access in unix-chkpwd</changelog>
  <changelog author="Noel Power &lt;nopower@suse.com&gt;" date="1709035200">- Add smbd-unix_chkpwd.diff to allow smbd to execute
  unix_chkpwd and fix other pam related denies; (boo#1220032).</changelog>
  <changelog author="Christian Boltz &lt;suse-beta@cboltz.de&gt;" date="1709294400">- Remove workaround for boo#853019 in %postun parser -
  apparmor.service contains a more safe workaround.
  This also fixes boo#1220708 (missing daemon-reload).</changelog>
  <changelog author="Atri Bhattacharya &lt;badshah400@gmail.com&gt;" date="1712318400">- Use full URLs for source tarball and signature.</changelog>
  <changelog author="Christian Boltz &lt;suse-beta@cboltz.de&gt;" date="1714910400">- Update to AppArmor 4.0.1
  Too many changes to list them here. See
  https://gitlab.com/apparmor/apparmor/-/wikis/Release_Notes_4.0.1
  for the detailed upstream release notes
- add tools-fix-redefinition.diff: fix redefinition of _ in tools
- add test-aa-notify.diff: relax test-aa-notify to avoid a mismatch
  with argparse on Leap 15.5
- drop upstreamed patches:
  - apparmor-abstractions-openssl-allow-version-specific-en.patch
  - dovecot-unix_chkpwd.diff
  - smbd-unix_chkpwd.diff
- apparmor-lessopen-profile.patch: update lessopen profile to
  abi/4.0
- mark local/* as %ghost so that these dummy files don't get
  installed anymore (changed existing local/files will be kept,
  unchanged files will be deleted)
- switch to gitlab tarballs (without pregenerated libapparmor
  configure script and prebuilt techdoc.pdf)
  - run libapparmor autogen.sh (needs additional BuildRequires
    autoconf, autoconf-archive, automake and libtool)
  - no longer package techdoc.pdf - old documentation, not worth
    the texlive BuildRequires we would need to build it
- drop old (up to 2.12) cache location /var/lib/apparmor/ and the
  /etc/apparmor.d/cache symlink pointing to it
- drop apparmor-samba-include-permissions-for-shares.diff - no
  longer needed, update-apparmor-samba-profile in Tumbleweed works
  without a pre-existing local/usr.sbin.smbd-shares file
- drop ruby-2_0-mkmf-destdir.patch - this ancient patch doesn't
  change a single bit in the resulting build (anymore?)
- drop apparmor-lessopen-nfs-workaround.diff - no longer needed
  since Kernel 6.0 (see https://bugs.launchpad.net/bugs/1784499)
- drop ancient, unused update-trans.sh</changelog>
  <changelog author="Christian Boltz &lt;suse-beta@cboltz.de&gt;" date="1716552000">- fix bashism in %post profiles</changelog>
  <changelog author="Christian Boltz &lt;suse-beta@cboltz.de&gt;" date="1716638400">- add aa-remove-unknown-fix-unconfined.diff to fix
  aa-remove-unknown for 'unconfined' profiles (boo#1225457)
- set permissions for %ghost files (boo#1223578)</changelog>
  <changelog author="Christian Boltz &lt;suse-beta@cboltz.de&gt;" date="1716897600">- exclude runc profile until updated runc packages (including
  updated profile with "signal peer=runc") have arrived</changelog>
  <changelog author="Christian Boltz &lt;suse-beta@cboltz.de&gt;" date="1716897601">- add utils-relax-mount-rules.diff and utils-relax-mount-rules-2.diff:
  Relax handling of mount rules in utils to avoid errors when
  parsing valid profiles
- add teardown-unconfined.diff to fix aa-teardown for 'unconfined'
  profiles (boo#1225457)</changelog>
  <changelog author="Fabian Vogt &lt;fvogt@suse.com&gt;" date="1716984000">- Exclude the crun profile in addition to runc</changelog>
  <changelog author="Guillaume GARDET &lt;guillaume.gardet@opensuse.org&gt;" date="1717070400">- Also exclude podman profile - boo#1225608</changelog>
  <changelog author="Christian Boltz &lt;suse-beta@cboltz.de&gt;" date="1717502400">- add sddm-xauth.diff - sddm uses a new path for xauth (boo#1223900)
- add plasmashell.diff - fix QtWebEngineProcess path to prevent a
  crash in plasmashell (boo#1225961)</changelog>
  <changelog author="Christian Boltz &lt;suse-beta@cboltz.de&gt;" date="1718107200">- add logprof-mount-empty-source.diff: add support for mount rules
  with quoted paths and empty source (boo#1226031)</changelog>
  <changelog author="Christian Boltz &lt;suse-beta@cboltz.de&gt;" date="1719316800">- add sampa-rpcd-witness.diff: allow samba-dcerpcd to execute
  rpcd_witness (boo#1225811)</changelog>
  <changelog author="Christian Boltz &lt;suse-beta@cboltz.de&gt;" date="1721822400">- update to AppArmor 4.0.2
  - bugfix release with lots of fixes in all areas
  - add new userns profiles for balena-etcher, chromium and wike
  - see https://gitlab.com/apparmor/apparmor/-/wikis/Release_Notes_4.0.2
    for the detailed upstream changelog
- drop upstream(ed) patches:
  - aa-remove-unknown-fix-unconfined.diff
  - logprof-mount-empty-source.diff
  - plasmashell.diff
  - sampa-rpcd-witness.diff
  - sddm-xauth.diff
  - teardown-unconfined.diff
  - test-aa-notify.diff
  - tools-fix-redefinition.diff
  - utils-relax-mount-rules-2.diff
  - utils-relax-mount-rules.diff
- refresh GPG key (was expired)</changelog>
  <changelog author="pgajdos@suse.com" date="1724328000">- remove dependency on /usr/bin/python3 using
  %python3_fix_shebang macro, [bsc#1212476]</changelog>
  <changelog author="Christian Boltz &lt;suse-beta@cboltz.de&gt;" date="1724414400">- update to AppArmor 4.0.3
  - several small bugfixes
  - see https://gitlab.com/apparmor/apparmor/-/wikis/Release_Notes_4.0.3
    for the full release notes</changelog>
  <changelog author="Christian Boltz &lt;suse-beta@cboltz.de&gt;" date="1727784000">- add mesa-cachedir.diff: new cachedir in Mesa 24.2.2</changelog>
</package>
<package pkgid="fd271c12f53166275ee80079f38eedbfeb4fec4c86d124819e5de61e6cbd8d8dd726279ff38df744c98c41ed050a2cabe61cdc50b276b3bdc7b4e96819c97d35" name="apache2-mod_apparmor-debuginfo" arch="x86_64">
  <version epoch="0" ver="4.0.3" rel="1.1"/>
  <changelog author="David Disseldorp &lt;ddiss@suse.com&gt;" date="1708430400">- Only run utils and profiles make check if kernel LSM is enabled
  (bsc#1220084)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1708430401">- Use %patch -P N instead of deprecated %patchN.</changelog>
  <changelog author="Ludwig Nussel &lt;lnussel@suse.com&gt;" date="1708948800">- Fix systemd userdb access in unix-chkpwd</changelog>
  <changelog author="Noel Power &lt;nopower@suse.com&gt;" date="1709035200">- Add smbd-unix_chkpwd.diff to allow smbd to execute
  unix_chkpwd and fix other pam related denies; (boo#1220032).</changelog>
  <changelog author="Christian Boltz &lt;suse-beta@cboltz.de&gt;" date="1709294400">- Remove workaround for boo#853019 in %postun parser -
  apparmor.service contains a more safe workaround.
  This also fixes boo#1220708 (missing daemon-reload).</changelog>
  <changelog author="Atri Bhattacharya &lt;badshah400@gmail.com&gt;" date="1712318400">- Use full URLs for source tarball and signature.</changelog>
  <changelog author="Christian Boltz &lt;suse-beta@cboltz.de&gt;" date="1714910400">- Update to AppArmor 4.0.1
  Too many changes to list them here. See
  https://gitlab.com/apparmor/apparmor/-/wikis/Release_Notes_4.0.1
  for the detailed upstream release notes
- add tools-fix-redefinition.diff: fix redefinition of _ in tools
- add test-aa-notify.diff: relax test-aa-notify to avoid a mismatch
  with argparse on Leap 15.5
- drop upstreamed patches:
  - apparmor-abstractions-openssl-allow-version-specific-en.patch
  - dovecot-unix_chkpwd.diff
  - smbd-unix_chkpwd.diff
- apparmor-lessopen-profile.patch: update lessopen profile to
  abi/4.0
- mark local/* as %ghost so that these dummy files don't get
  installed anymore (changed existing local/files will be kept,
  unchanged files will be deleted)
- switch to gitlab tarballs (without pregenerated libapparmor
  configure script and prebuilt techdoc.pdf)
  - run libapparmor autogen.sh (needs additional BuildRequires
    autoconf, autoconf-archive, automake and libtool)
  - no longer package techdoc.pdf - old documentation, not worth
    the texlive BuildRequires we would need to build it
- drop old (up to 2.12) cache location /var/lib/apparmor/ and the
  /etc/apparmor.d/cache symlink pointing to it
- drop apparmor-samba-include-permissions-for-shares.diff - no
  longer needed, update-apparmor-samba-profile in Tumbleweed works
  without a pre-existing local/usr.sbin.smbd-shares file
- drop ruby-2_0-mkmf-destdir.patch - this ancient patch doesn't
  change a single bit in the resulting build (anymore?)
- drop apparmor-lessopen-nfs-workaround.diff - no longer needed
  since Kernel 6.0 (see https://bugs.launchpad.net/bugs/1784499)
- drop ancient, unused update-trans.sh</changelog>
  <changelog author="Christian Boltz &lt;suse-beta@cboltz.de&gt;" date="1716552000">- fix bashism in %post profiles</changelog>
  <changelog author="Christian Boltz &lt;suse-beta@cboltz.de&gt;" date="1716638400">- add aa-remove-unknown-fix-unconfined.diff to fix
  aa-remove-unknown for 'unconfined' profiles (boo#1225457)
- set permissions for %ghost files (boo#1223578)</changelog>
  <changelog author="Christian Boltz &lt;suse-beta@cboltz.de&gt;" date="1716897600">- exclude runc profile until updated runc packages (including
  updated profile with "signal peer=runc") have arrived</changelog>
  <changelog author="Christian Boltz &lt;suse-beta@cboltz.de&gt;" date="1716897601">- add utils-relax-mount-rules.diff and utils-relax-mount-rules-2.diff:
  Relax handling of mount rules in utils to avoid errors when
  parsing valid profiles
- add teardown-unconfined.diff to fix aa-teardown for 'unconfined'
  profiles (boo#1225457)</changelog>
  <changelog author="Fabian Vogt &lt;fvogt@suse.com&gt;" date="1716984000">- Exclude the crun profile in addition to runc</changelog>
  <changelog author="Guillaume GARDET &lt;guillaume.gardet@opensuse.org&gt;" date="1717070400">- Also exclude podman profile - boo#1225608</changelog>
  <changelog author="Christian Boltz &lt;suse-beta@cboltz.de&gt;" date="1717502400">- add sddm-xauth.diff - sddm uses a new path for xauth (boo#1223900)
- add plasmashell.diff - fix QtWebEngineProcess path to prevent a
  crash in plasmashell (boo#1225961)</changelog>
  <changelog author="Christian Boltz &lt;suse-beta@cboltz.de&gt;" date="1718107200">- add logprof-mount-empty-source.diff: add support for mount rules
  with quoted paths and empty source (boo#1226031)</changelog>
  <changelog author="Christian Boltz &lt;suse-beta@cboltz.de&gt;" date="1719316800">- add sampa-rpcd-witness.diff: allow samba-dcerpcd to execute
  rpcd_witness (boo#1225811)</changelog>
  <changelog author="Christian Boltz &lt;suse-beta@cboltz.de&gt;" date="1721822400">- update to AppArmor 4.0.2
  - bugfix release with lots of fixes in all areas
  - add new userns profiles for balena-etcher, chromium and wike
  - see https://gitlab.com/apparmor/apparmor/-/wikis/Release_Notes_4.0.2
    for the detailed upstream changelog
- drop upstream(ed) patches:
  - aa-remove-unknown-fix-unconfined.diff
  - logprof-mount-empty-source.diff
  - plasmashell.diff
  - sampa-rpcd-witness.diff
  - sddm-xauth.diff
  - teardown-unconfined.diff
  - test-aa-notify.diff
  - tools-fix-redefinition.diff
  - utils-relax-mount-rules-2.diff
  - utils-relax-mount-rules.diff
- refresh GPG key (was expired)</changelog>
  <changelog author="pgajdos@suse.com" date="1724328000">- remove dependency on /usr/bin/python3 using
  %python3_fix_shebang macro, [bsc#1212476]</changelog>
  <changelog author="Christian Boltz &lt;suse-beta@cboltz.de&gt;" date="1724414400">- update to AppArmor 4.0.3
  - several small bugfixes
  - see https://gitlab.com/apparmor/apparmor/-/wikis/Release_Notes_4.0.3
    for the full release notes</changelog>
  <changelog author="Christian Boltz &lt;suse-beta@cboltz.de&gt;" date="1727784000">- add mesa-cachedir.diff: new cachedir in Mesa 24.2.2</changelog>
</package>
<package pkgid="e08718af64a932093e8d161917240534c82e767bb9998ec90ea63fc0bdd8b6e5ef98a430d3fd378c16a008ba891e226c6adfd374ad48b400f536d2517ac23fa4" name="apache2-mod_perl" arch="src">
  <version epoch="0" ver="2.0.13" rel="3.1"/>
  <changelog author="vcizek@suse.com" date="1410264000">- adapt test configuration for apache24 to fix build
  * use the new access control mechanisms from apache24
  * added apache24-mod_authz_host.patch</changelog>
  <changelog author="jsegitz@suse.com" date="1410955200">- Changed access control statements in config file to use
  mod_authz_host (bnc#897005)</changelog>
  <changelog author="pgajdos@suse.com" date="1415016000">- call spec-cleaner
- use apache rpm macros</changelog>
  <changelog author="tjcw@physics.org" date="1435320000">- turn off inlining for functions which need to be real symbols because they
  are called in a DSO
  * added inline.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1437048000">- Requries: %{apache_suse_maintenance_mmn}
  This will pull this module to the update (in released distribution)
  when apache maintainer thinks it is good (due api/abi changes).</changelog>
  <changelog author="pgajdos@suse.com" date="1438084800">- updated to 2.0.9: see Changes for details
  * dropped patches:
  - lfs-perl-5.14.patch
  - apache2-mod_perl-2.0.4-tests.diff
  - apache24-mod_authz_host.patch</changelog>
  <changelog author="schwab@suse.de" date="1438689600">- Force gnu89 inline semantics
- Disable tests only in QEMU user-space builds
- inline.patch: remove</changelog>
  <changelog author="schwab@suse.de" date="1439467200">- Remove apache2 packaging bug workaround</changelog>
  <changelog author="vcizek@suse.com" date="1450267200">- fix mod_perl with perl 5.22 (boo#945195)
  * add mod_perl-add_support_for_perl_5.22.patch</changelog>
  <changelog author="tchvatal@suse.com" date="1475496000">- Remove unused icon and shorten the description a bit 1-2 migration
  is quite irelevant in these days
- Move tests to %check  phase
- Use proper group for devel subpackage</changelog>
  <changelog author="astieger@suse.com" date="1483099200">- update to 2.0.10:
  * Automatically select the appropriate c89 option when modperl is
    being built with either gcc 5 or clang
  * Fix non-threaded Perl 5.22.x build and tests
  * Add support for Perl 5.22.x
    drop upstreamed mod_perl-add_support_for_perl_5.22.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1531828800">- restore process name after sv_setpv_mg() call [bsc#1091625]
  + apache2-mod_perl-prctl-short-name.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1573905600">- Apache mod_perl 2.0.11:
  * CVE-2011-2767: Arbitrary Perl code execution in the context of
    the user account via a user-owned .htaccess (boo#1156944)</changelog>
  <changelog author="pgajdos@suse.com" date="1581595200">- define %license for older codestreams</changelog>
  <changelog author="Dirk Stoecker &lt;opensuse@dstoecker.de&gt;" date="1632744000">- fix build error with fix_perl_5.34_build.patch</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1650542400">- update to 2.0.12:
  * Add bug tracker information to README, and add CONTRIBUTING.md.
  * Fix detection of APR's threading support on RHEL 8.
  * Fix build for perl &gt;= 5.33.7.
  * Fix SIGSEGV crash due to wrong use of perl_parse().
  * Improve installation instructions for AIX.
- remove patch:
  * fix_perl_5.34_build.patch (there is a fix already upstreamed)
- refreshed patches:
  * avoid-broken-provides.diff
  * apache2-mod_perl-prctl-short-name.patch</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1691496000">- Add apache2-mod_perl-perl-5.38.patch: Fix build with Perl 5.38.
  Usptream rev 1910623.</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1699876800">- Update to 2.0.13:
  * Use get_server_banner() instead of deprecated get_server_version() in
    Apache2::Status.
  * Avoid generating APR precompiled headers.
  * Fix build for perl &gt;= 5.37.1.
- Removed apache2-mod_perl-perl-5.38.patch (fix already upstream)</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1720440000">- fix build on Tumbleweed (boo#1227485)</changelog>
  <changelog author="Thorsten Kukuk &lt;kukuk@suse.com&gt;" date="1727438400">- Add /srv/www to filelist [bsc#1231027]</changelog>
</package>
<package pkgid="57c2f2d39472d8473eaec3a5a46087f40f77c7fbb9cdf0cab2ed5496db7a9da522ffe5b0a48a580a6acf8dee9adf9f9b1d4f4a8f6dfabcce1f520aaabef83228" name="apache2-mod_perl" arch="x86_64">
  <version epoch="0" ver="2.0.13" rel="3.1"/>
  <changelog author="astieger@suse.com" date="1483099200">- update to 2.0.10:
  * Automatically select the appropriate c89 option when modperl is
    being built with either gcc 5 or clang
  * Fix non-threaded Perl 5.22.x build and tests
  * Add support for Perl 5.22.x
    drop upstreamed mod_perl-add_support_for_perl_5.22.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1531828800">- restore process name after sv_setpv_mg() call [bsc#1091625]
  + apache2-mod_perl-prctl-short-name.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1573905600">- Apache mod_perl 2.0.11:
  * CVE-2011-2767: Arbitrary Perl code execution in the context of
    the user account via a user-owned .htaccess (boo#1156944)</changelog>
  <changelog author="pgajdos@suse.com" date="1581595200">- define %license for older codestreams</changelog>
  <changelog author="Dirk Stoecker &lt;opensuse@dstoecker.de&gt;" date="1632744000">- fix build error with fix_perl_5.34_build.patch</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1650542400">- update to 2.0.12:
  * Add bug tracker information to README, and add CONTRIBUTING.md.
  * Fix detection of APR's threading support on RHEL 8.
  * Fix build for perl &gt;= 5.33.7.
  * Fix SIGSEGV crash due to wrong use of perl_parse().
  * Improve installation instructions for AIX.
- remove patch:
  * fix_perl_5.34_build.patch (there is a fix already upstreamed)
- refreshed patches:
  * avoid-broken-provides.diff
  * apache2-mod_perl-prctl-short-name.patch</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1691496000">- Add apache2-mod_perl-perl-5.38.patch: Fix build with Perl 5.38.
  Usptream rev 1910623.</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1699876800">- Update to 2.0.13:
  * Use get_server_banner() instead of deprecated get_server_version() in
    Apache2::Status.
  * Avoid generating APR precompiled headers.
  * Fix build for perl &gt;= 5.37.1.
- Removed apache2-mod_perl-perl-5.38.patch (fix already upstream)</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1720440000">- fix build on Tumbleweed (boo#1227485)</changelog>
  <changelog author="Thorsten Kukuk &lt;kukuk@suse.com&gt;" date="1727438400">- Add /srv/www to filelist [bsc#1231027]</changelog>
</package>
<package pkgid="09a8652f2f5639eef7572583ecb37060a18d7cf977f590ed9b6f9c4267f2c5354737c6b51add8c0db9ab06c32c878cb1bacf7840a40b9b4284c4d2da163be52e" name="apache2-mod_perl-debuginfo" arch="x86_64">
  <version epoch="0" ver="2.0.13" rel="3.1"/>
  <changelog author="astieger@suse.com" date="1483099200">- update to 2.0.10:
  * Automatically select the appropriate c89 option when modperl is
    being built with either gcc 5 or clang
  * Fix non-threaded Perl 5.22.x build and tests
  * Add support for Perl 5.22.x
    drop upstreamed mod_perl-add_support_for_perl_5.22.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1531828800">- restore process name after sv_setpv_mg() call [bsc#1091625]
  + apache2-mod_perl-prctl-short-name.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1573905600">- Apache mod_perl 2.0.11:
  * CVE-2011-2767: Arbitrary Perl code execution in the context of
    the user account via a user-owned .htaccess (boo#1156944)</changelog>
  <changelog author="pgajdos@suse.com" date="1581595200">- define %license for older codestreams</changelog>
  <changelog author="Dirk Stoecker &lt;opensuse@dstoecker.de&gt;" date="1632744000">- fix build error with fix_perl_5.34_build.patch</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1650542400">- update to 2.0.12:
  * Add bug tracker information to README, and add CONTRIBUTING.md.
  * Fix detection of APR's threading support on RHEL 8.
  * Fix build for perl &gt;= 5.33.7.
  * Fix SIGSEGV crash due to wrong use of perl_parse().
  * Improve installation instructions for AIX.
- remove patch:
  * fix_perl_5.34_build.patch (there is a fix already upstreamed)
- refreshed patches:
  * avoid-broken-provides.diff
  * apache2-mod_perl-prctl-short-name.patch</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1691496000">- Add apache2-mod_perl-perl-5.38.patch: Fix build with Perl 5.38.
  Usptream rev 1910623.</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1699876800">- Update to 2.0.13:
  * Use get_server_banner() instead of deprecated get_server_version() in
    Apache2::Status.
  * Avoid generating APR precompiled headers.
  * Fix build for perl &gt;= 5.37.1.
- Removed apache2-mod_perl-perl-5.38.patch (fix already upstream)</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1720440000">- fix build on Tumbleweed (boo#1227485)</changelog>
  <changelog author="Thorsten Kukuk &lt;kukuk@suse.com&gt;" date="1727438400">- Add /srv/www to filelist [bsc#1231027]</changelog>
</package>
<package pkgid="90f20f9d378d9758e30d92e9adcdfcd5e32ffe88b26f147cd110eac8de580ff2cfb10879e98c438c57482fee48e2ebcf2668c65f49052b169ed87ecfe396d62c" name="apache2-mod_perl-debugsource" arch="x86_64">
  <version epoch="0" ver="2.0.13" rel="3.1"/>
  <changelog author="astieger@suse.com" date="1483099200">- update to 2.0.10:
  * Automatically select the appropriate c89 option when modperl is
    being built with either gcc 5 or clang
  * Fix non-threaded Perl 5.22.x build and tests
  * Add support for Perl 5.22.x
    drop upstreamed mod_perl-add_support_for_perl_5.22.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1531828800">- restore process name after sv_setpv_mg() call [bsc#1091625]
  + apache2-mod_perl-prctl-short-name.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1573905600">- Apache mod_perl 2.0.11:
  * CVE-2011-2767: Arbitrary Perl code execution in the context of
    the user account via a user-owned .htaccess (boo#1156944)</changelog>
  <changelog author="pgajdos@suse.com" date="1581595200">- define %license for older codestreams</changelog>
  <changelog author="Dirk Stoecker &lt;opensuse@dstoecker.de&gt;" date="1632744000">- fix build error with fix_perl_5.34_build.patch</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1650542400">- update to 2.0.12:
  * Add bug tracker information to README, and add CONTRIBUTING.md.
  * Fix detection of APR's threading support on RHEL 8.
  * Fix build for perl &gt;= 5.33.7.
  * Fix SIGSEGV crash due to wrong use of perl_parse().
  * Improve installation instructions for AIX.
- remove patch:
  * fix_perl_5.34_build.patch (there is a fix already upstreamed)
- refreshed patches:
  * avoid-broken-provides.diff
  * apache2-mod_perl-prctl-short-name.patch</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1691496000">- Add apache2-mod_perl-perl-5.38.patch: Fix build with Perl 5.38.
  Usptream rev 1910623.</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1699876800">- Update to 2.0.13:
  * Use get_server_banner() instead of deprecated get_server_version() in
    Apache2::Status.
  * Avoid generating APR precompiled headers.
  * Fix build for perl &gt;= 5.37.1.
- Removed apache2-mod_perl-perl-5.38.patch (fix already upstream)</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1720440000">- fix build on Tumbleweed (boo#1227485)</changelog>
  <changelog author="Thorsten Kukuk &lt;kukuk@suse.com&gt;" date="1727438400">- Add /srv/www to filelist [bsc#1231027]</changelog>
</package>
<package pkgid="77d8484b3c8a7721c244b9f64fb1d1bc380901d9f375195e48933680d78b0843884b549a96e30bfe605ce3e81a09ad5257b5de1a82d226623e700be95f92bdea" name="apache2-mod_perl-devel" arch="x86_64">
  <version epoch="0" ver="2.0.13" rel="3.1"/>
  <changelog author="astieger@suse.com" date="1483099200">- update to 2.0.10:
  * Automatically select the appropriate c89 option when modperl is
    being built with either gcc 5 or clang
  * Fix non-threaded Perl 5.22.x build and tests
  * Add support for Perl 5.22.x
    drop upstreamed mod_perl-add_support_for_perl_5.22.patch</changelog>
  <changelog author="pgajdos@suse.com" date="1531828800">- restore process name after sv_setpv_mg() call [bsc#1091625]
  + apache2-mod_perl-prctl-short-name.patch</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1573905600">- Apache mod_perl 2.0.11:
  * CVE-2011-2767: Arbitrary Perl code execution in the context of
    the user account via a user-owned .htaccess (boo#1156944)</changelog>
  <changelog author="pgajdos@suse.com" date="1581595200">- define %license for older codestreams</changelog>
  <changelog author="Dirk Stoecker &lt;opensuse@dstoecker.de&gt;" date="1632744000">- fix build error with fix_perl_5.34_build.patch</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1650542400">- update to 2.0.12:
  * Add bug tracker information to README, and add CONTRIBUTING.md.
  * Fix detection of APR's threading support on RHEL 8.
  * Fix build for perl &gt;= 5.33.7.
  * Fix SIGSEGV crash due to wrong use of perl_parse().
  * Improve installation instructions for AIX.
- remove patch:
  * fix_perl_5.34_build.patch (there is a fix already upstreamed)
- refreshed patches:
  * avoid-broken-provides.diff
  * apache2-mod_perl-prctl-short-name.patch</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1691496000">- Add apache2-mod_perl-perl-5.38.patch: Fix build with Perl 5.38.
  Usptream rev 1910623.</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1699876800">- Update to 2.0.13:
  * Use get_server_banner() instead of deprecated get_server_version() in
    Apache2::Status.
  * Avoid generating APR precompiled headers.
  * Fix build for perl &gt;= 5.37.1.
- Removed apache2-mod_perl-perl-5.38.patch (fix already upstream)</changelog>
  <changelog author="Andreas Stieger &lt;andreas.stieger@gmx.de&gt;" date="1720440000">- fix build on Tumbleweed (boo#1227485)</changelog>
  <changelog author="Thorsten Kukuk &lt;kukuk@suse.com&gt;" date="1727438400">- Add /srv/www to filelist [bsc#1231027]</changelog>
</package>
<package pkgid="b3d4c74c9e91785c26c1c4e7cd7a094cd53aaa9d5c122ecd80e505c76d805446a80fcd24d3e7d3307407b1d2ef7b2983ae33496f72a416c7abb1e1de010e1e45" name="apache2-mod_php8" arch="i586">
  <version epoch="0" ver="8.3.14" rel="1.0.2.1.sr20241103"/>
  <changelog author="pgajdos@suse.com" date="1695988800">- version update to 8.2.11
  * This is a bug fix release.
  * https://www.php.net/ChangeLog-8.php#8.2.11</changelog>
  <changelog author="pgajdos@suse.com" date="1698321600">- version update to 8.2.12
  * This is a bug fix release.
    https://www.php.net/ChangeLog-8.php#8.2.12</changelog>
  <changelog author="pgajdos@suse.com" date="1700827200">- version update to 8.2.13
  * This is a bug fix release.
    https://www.php.net/ChangeLog-8.php#8.2.13</changelog>
  <changelog author="pgajdos@suse.com" date="1700827201">- version update to 8.3.0
  * https://www.php.net/releases/8.3/en.php
  * Typed class constants
  * Dynamic class constant fetch
  * New #[\Override] attribute
  * Deep-cloning of readonly properties
  * New json_validate() function
  * New Randomizer::getBytesFromString() method
  * New Randomizer::getFloat() and Randomizer::nextFloat() methods
  * New DOMElement::getAttributeNames(),
    DOMElement::insertAdjacentElement(),
    DOMElement::insertAdjacentText(),
    DOMElement::toggleAttribute(),
    DOMNode::contains(), DOMNode::getRootNode(),
    DOMNode::isEqualNode(), DOMNameSpaceNode::contains(), and
    DOMParentNode::replaceChildren() methods.
  * New IntlCalendar::setDate(),
    IntlCalendar::setDateTime(),
    IntlGregorianCalendar::createFromDate(), and
    IntlGregorianCalendar::createFromDateTime() methods.
  * New ldap_connect_wallet(), and ldap_exop_sync() functions.
  * New mb_str_pad() function.
  * New posix_sysconf(), posix_pathconf(), posix_fpathconf(),
    and posix_eaccess() functions.
  * New ReflectionMethod::createFromMethodName() method.
  * New socket_atmark() function.
  * New str_increment(), str_decrement(),
    and stream_context_set_options() functions.
  * New ZipArchive::getArchiveFlag() method.
  * Support for generation EC keys with custom EC parameters in
    OpenSSL extension.
  * New INI setting zend.max_allowed_stack_size to set the maximum
    allowed stack size.
  * php.ini now supports fallback/default value syntax.
  * Anonymous classes can now be readonly.
  * https://www.php.net/ChangeLog-8.php#PHP_8_3
- modified patches
  % php-ar-flags.patch (refreshed)
  % php-build-reproducible-phar.patch (refreshed)
  % php-ini.patch (refreshed)
- modified sources
  % php8.keyring
- deleted patches
  - php-systzdata-v23.patch
- added patches
  + php-systzdata-v24.patch</changelog>
  <changelog author="Manu Maier &lt;mmanu84@outlook.de&gt;" date="1703678400">- version update to 8.3.1
  * This is a bug fix release.
    https://www.php.net/ChangeLog-8.php#8.3.1</changelog>
  <changelog author="pgajdos@suse.com" date="1705579200">- version update to 8.3.2
  * This is a bug fix release.
- modified patches
  % php-ar-flags.patch (refreshed)
  % php-build-reproducible-phar.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1708084800">- version update to 8.3.3
  * A bugfix release.
- modified patches
  % php-build-reproducible-phar.patch (refreshed)</changelog>
  <changelog author="Pedro Monreal &lt;pmonreal@suse.com&gt;" date="1709726400">- Use the system default cipher list instead of hardcoded values
  by using crypto-policies. [bsc#1211301]
  * Use the --with-system-ciphers configure option.</changelog>
  <changelog author="pgajdos@suse.com" date="1710849600">- version update to 8.3.4
  * This is a bug fix release.</changelog>
  <changelog author="pgajdos@suse.com" date="1712923200">- version update to 8.3.6 [bsc#1222857] [bsc#1222858]
    Core:
    Fixed GH-13569 (GC buffer unnecessarily grows up to GC_MAX_BUF_SIZE when scanning WeakMaps).
    Fixed bug GH-13612 (Corrupted memory in destructor with weak references).
    Fixed bug GH-13446 (Restore exception handler after it finishes).
    Fixed bug GH-13784 (AX_GCC_FUNC_ATTRIBUTE failure).
    Fixed bug GH-13670 (GC does not scale well with a lot of objects created in destructor).
    DOM:
    Add some missing ZPP checks.
    Fix potential memory leak in XPath evaluation results.
    FPM:
    Fixed GH-11086 (FPM: config test runs twice in daemonised mode).
    Fix incorrect check in fpm_shm_free().
    GD:
    Fixed bug GH-12019 (add GDLIB_CFLAGS in feature tests).
    Gettext:
    Fixed sigabrt raised with dcgettext/dcngettext calls with gettext 0.22.5 with category set to LC_ALL.
    MySQLnd:
    Fix GH-13452 (Fixed handshake response [mysqlnd]).
    Fix incorrect charset length in check_mb_eucjpms().
    Opcache:
    Fixed GH-13508 (JITed QM_ASSIGN may be optimized out when op1 is null).
    Fixed GH-13712 (Segmentation fault for enabled observers when calling trait method of internal trait when opcache is loaded).
    Random:
    Fixed bug GH-13544 (Pre-PHP 8.2 compatibility for mt_srand with unknown modes).
    Fixed bug GH-13690 (Global Mt19937 is not properly reset in-between requests when MT_RAND_PHP is used).
    Session:
    Fixed bug GH-13680 (Segfault with session_decode and compilation error).
    SPL:
    Fixed bug GH-13685 (Unexpected null pointer in zend_string.h).
    Standard:
    Fixed bug GH-11808 (Live filesystem modified by tests).
    Fixed GH-13402 (Added validation of `\n` in $additional_headers of mail()).
    Fixed bug GH-13203 (file_put_contents fail on strings over 4GB on Windows).
    Fixed bug GHSA-pc52-254m-w9w7 (Command injection via array-ish $command parameter of proc_open). (CVE-2024-1874)
    Fixed bug GHSA-wpj3-hf5j-x4v4 (__Host-/__Secure- cookie bypass due to partial CVE-2022-31629 fix). (CVE-2024-2756)
    Fixed bug GHSA-h746-cjrr-wfmr (password_verify can erroneously return true, opening ATO risk). (CVE-2024-3096)
    Fixed bug GHSA-fjp9-9hwx-59fq (mb_encode_mimeheader runs endlessly for some inputs). (CVE-2024-2757)
    Fix bug GH-13932 (Attempt to fix mbstring on windows build) (msvc).</changelog>
  <changelog author="pgajdos@suse.com" date="1715256000">- version update to 8.3.7
    Core:
    Fixed zend_call_stack build with Linux/uclibc-ng without thread support.
    Fixed bug GH-13772 (Invalid execute_data-&gt;opline pointers in observer fcall handlers when JIT is enabled).
    Fixed bug GH-13931 (Applying zero offset to null pointer in Zend/zend_opcode.c).
    Fixed bug GH-13942 (Align the behavior of zend-max-execution-timers with other timeout implementations).
    Fixed bug GH-14003 (Broken cleanup of unfinished calls with callable convert parameters).
    Fixed bug GH-14013 (Erroneous dnl appended in configure).
    Fixed bug GH-10232 (If autoloading occurs during constant resolution filename and lineno are identified incorrectly).
    Fixed bug GH-13727 (Missing void keyword).
    Fibers:
    Fixed bug GH-13903 (ASAN false positive underflow when executing copy()).
    Fileinfo:
    Fixed bug GH-13795 (Test failing in ext/fileinfo/tests/bug78987.phpt on big-endian PPC).
    FPM:
    Fixed bug GH-13563 (Setting bool values via env in FPM config fails).
    Intl:
    Fixed build for icu 74 and onwards.
    MySQLnd:
    Fix shift out of bounds on 32-bit non-fast-path platforms.
    Opcache:
    Fixed bug GH-13433 (Segmentation Fault in zend_class_init_statics when using opcache.preload).
    Fixed incorrect assumptions across compilation units for static calls.
    OpenSSL:
    Fixed bug GH-10495 (feof on OpenSSL stream hangs indefinitely).
    PDO SQLite:
    Fix GH-13984 (Buffer size is now checked before memcmp).
    Fix GH-13998 (Manage refcount of agg_context-&gt;val correctly).
    Phar:
    Fixed bug GH-13836 (Renaming a file in a Phar to an already existing filename causes a NULL pointer dereference).
    Fixed bug GH-13833 (Applying zero offset to null pointer in zend_hash.c).
    Fix potential NULL pointer dereference before calling EVP_SignInit.
    PHPDBG:
    Fixed bug GH-13827 (Null pointer access of type 'zval' in phpdbg_frame).
    Posix:
    Fix usage of reentrant functions in ext/posix.
    Session:
    Fixed bug GH-13856 (Member access within null pointer of type 'ps_files' in ext/session/mod_files.c).
    Fixed bug GH-13891 (memleak and segfault when using ini_set with session.trans_sid_hosts).
    Fixed buffer _read/_write size limit on windows for the file mode.
    Streams:
    Fixed file_get_contents() on Windows fails with "errno=22 Invalid argument".
    Fixed bug GH-13264 (Part 1 - Memory leak on stream filter failure).
    Fixed bug GH-13860 (Incorrect PHP_STREAM_OPTION_CHECK_LIVENESS case in ext/openssl/xp_ssl.c - causing use of dead socket).
    Fixed bug GH-11678 (Build fails on musl 1.2.4 - lfs64).
    Treewide:
    Fix gcc-14 Wcalloc-transposed-args warnings.</changelog>
  <changelog author="pgajdos@suse.com" date="1717761600">- version update to 8.3.8 [bsc#1226073]
    CGI:
    Fixed buffer limit on Windows, replacing read call usage by _read.
    Fixed bug GHSA-3qgc-jrrr-25jv (Bypass of CVE-2012-1823, Argument Injection in PHP-CGI). (CVE-2024-4577)
    CLI:
    Fixed bug GH-14189 (PHP Interactive shell input state incorrectly handles quoted heredoc literals.).
    Core:
    Fixed bug GH-13970 (Incorrect validation of #[Attribute] flags type for non-compile-time expressions).
    DOM:
    Fix crashes when entity declaration is removed while still having entity references.
    Fix references not handled correctly in C14N.
    Fix crash when calling childNodes next() when iterator is exhausted.
    Fix crash in ParentNode::append() when dealing with a fragment containing text nodes.
    Filter:
    Fixed bug GHSA-w8qr-v226-r27w (Filter bypass in filter_var FILTER_VALIDATE_URL). (CVE-2024-5458)
    FPM:
    Fix bug GH-14175 (Show decimal number instead of scientific notation in systemd status).
    Hash:
    ext/hash: Swap the checking order of `__has_builtin` and `__GNUC__` (Saki Takamachi)
    Intl:
    Fixed build regression on systems without C++17 compilers.
    MySQLnd:
    Fix bug GH-14255 (mysqli_fetch_assoc reports error from nested query).
    Opcache:
    Fixed bug GH-14109 (Fix accidental persisting of internal class constant in shm).
    OpenSSL:
    The openssl_private_decrypt function in PHP and Marvin attack.
    Standard:
    Fixed bug GHSA-9fcc-425m-g385 (Bypass of CVE-2024-1874). (CVE-2024-5585)
    XML:
    Fixed bug GH-14124 (Segmentation fault with XML extension under certain memory limit).
    XMLReader:
    Fixed bug GH-14183 (XMLReader::open() can't be overridden).
- modified patches
  % php-build-reproducible-phar.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1718884800">- drop unmaintained apache-rex usage</changelog>
  <changelog author="pgajdos@suse.com" date="1720353600">- version update to 8.3.9
    Core:
    Fixed bug GH-14315 (Incompatible pointer type warnings).
    Fixed bug GH-12814 (max_execution_time reached too early on MacOS 14 when running on Apple Silicon).
    Fixed bug GH-14387 (Crash when stack walking in destructor of yielded from values during Generator-&gt;throw()).
    Fixed bug GH-14456 (Attempting to initialize class with private constructor calls destructor).
    Fixed bug GH-14510 (memleak due to missing pthread_attr_destroy()-call).
    Fixed bug GH-14549 (Incompatible function pointer type for fclose).
    BCMatch:
    Fixed bug (bcpowmod() with mod = -1 returns 1 when it must be 0).
    Curl:
    Fixed bug GH-14307 (Test curl_basic_024 fails with curl 8.8.0).
    DOM:
    Fixed bug GH-14343 (Memory leak in xml and dom).
    FPM:
    Fixed bug GH-14037 (PHP-FPM ping.path and ping.response config vars are ignored in status pool).
    GD:
    Fix parameter numbers for imagecolorset().
    Intl:
    Fix reference handling in SpoofChecker.
    MySQLnd:
    Partially fix bug GH-10599 (Apache crash on Windows when using a self-referencing anonymous function inside a class with an active mysqli connection).
    Opcache:
    Fixed bug GH-14267 (opcache.jit=off does not allow enabling JIT at runtime).
    Fixed TLS access in JIT on FreeBSD/amd64.
    Fixed bug GH-11188 (Error when building TSRM in ARM64).
    PDO ODBC:
    Fixed bug GH-14367 (incompatible SDWORD type with iODBC).
    PHPDBG:
    Fixed bug GH-13681 (segfault on watchpoint addition failure).
    Soap:
    Fixed bug #47925 (PHPClient can't decompress response).
    Fix missing error restore code.
    Fix memory leak if calling SoapServer::setObject() twice.
    Fix memory leak if calling SoapServer::setClass() twice.
    Fix reading zlib ini settings in ext-soap.
    Fix memory leaks with string function name lookups.
    Fixed bug #69280 (SoapClient classmap doesn't support fully qualified class name).
    Fixed bug #76232 (SoapClient Cookie Header Semicolon).
    Fixed memory leaks when calling SoapFault::__construct() twice.
    Sodium:
    Fix memory leaks in ext/sodium on failure of some functions.
    SPL:
    Fixed bug GH-14290 (Member access within null pointer in extension spl).
    Standard:
    Fixed bug GH-14483 (Fixed off-by-one error in checking length of abstract namespace Unix sockets).
    Streams:
    Fixed bug GH-11078 (PHP Fatal error triggers pointer being freed was not allocated and malloc: double free for ptr errors).</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1723809600">- version update to 8.3.10
    Core:
    Fixed bug GH-13922 (Fixed support for systems with sysconf(_SC_GETPW_R_SIZE_MAX) == -1).
    Fixed bug GH-14626 (Fix is_zend_ptr() for huge blocks).
    Fixed bug GH-14590 (Memory leak in FPM test gh13563-conf-bool-env.phpt.
    Fixed OSS-Fuzz #69765.
    Fixed bug GH-14741 (Segmentation fault in Zend/zend_types.h).
    Fixed bug GH-14969 (Use-after-free in property coercion with __toString()).
    Dom:
    Fixed bug GH-14702 (DOMDocument::xinclude() crash).
    Fileinfo:
    Fixed bug GH-14888 (README.REDIST.BINS refers to non-existing LICENSE).
    Gd:
    ext/gd/tests/gh10614.phpt: skip if no PNG support.
    restored warning instead of fata error.
    LibXML:
    Fixed bug GH-14563 (Build failure with libxml2 v2.13.0).
    Opcache:
    Fixed bug GH-14550 (No warning message when Zend DTrace is enabled that opcache.jit is implictly disabled).
    Output:
    Fixed bug GH-14808 (Unexpected null pointer in Zend/zend_string.h with empty output buffer).
    PDO:
    Fixed bug GH-14712 (Crash with PDORow access to null property).
    Phar:
    Fixed bug GH-14603 (null string from zip entry).
    PHPDBG:
    Fixed bug GH-14596 (crashes with ASAN and ZEND_RC_DEBUG=1).
    Fixed bug GH-14553 (echo output trimmed at NULL byte).
    Shmop:
    Fixed bug GH-14537 (shmop Windows 11 crashes the process).
    SPL:
    Fixed bug GH-14639 (Member access within null pointer in ext/spl/spl_observer.c).
    Standard:
    Fixed bug GH-14775 (range function overflow with negative step argument).
    Fix 32-bit wordwrap test failures.
    Fixed bug GH-14774 (time_sleep_until overflow).
    Streams:
    Fixed bug GH-14930 (Custom stream wrapper dir_readdir output truncated to 255 characters in PHP 8.3).
    Tidy:
    Fix memory leak in tidy_repair_file().
    Treewide:
    Fix compatibility with libxml2 2.13.2.
    XML:
    Move away from to-be-deprecated libxml fields.
    Fixed bug GH-14834 (Error installing PHP when --with-pear is used).</changelog>
  <changelog author="pgajdos@suse.com" date="1725019200">- version update to 8.3.11
    Core:
    Fixed bug GH-15020 (Memory leak in Zend/Optimizer/escape_analysis.c).
    Fixed bug GH-15023 (Memory leak in Zend/zend_ini.c).
    Fixed bug GH-13330 (Append -Wno-implicit-fallthrough flag conditionally).
    Fix uninitialized memory in network.c.
    Fixed bug GH-15108 (Segfault when destroying generator during shutdown).
    Fixed bug GH-15275 (Crash during GC of suspended generator delegate).
    Curl:
    Fixed case when curl_error returns an empty string.
    DOM:
    Fix UAF when removing doctype and using foreach iteration.
    FFI:
    Fixed bug GH-14286 (ffi enum type (when enum has no name) make memory leak).
    Hash:
    Fix crash when converting array data for array in shm in xxh3.
    Intl:
    Fixed bug GH-15087 (IntlChar::foldCase()'s $option is not optional).
    Opcache:
    Fixed bug GH-13817 (Segmentation fault for enabled observers after pass 4).
    Fixed bug GH-13775 (Memory leak possibly related to opcache SHM placement).
    Output:
    Fixed bug GH-15179 (Segmentation fault (null pointer dereference) in ext/standard/url_scanner_ex.re).
    PDO_Firebird:
    Fix bogus fallthrough path in firebird_handle_get_attribute().
    PHPDBG:
    Fixed bug GH-13199 (EOF emits redundant prompt in phpdbg local console mode with libedit/readline).
    Fixed bug GH-15268 (heap buffer overflow in phpdbg (zend_hash_num_elements() Zend/zend_hash.h)).
    Fixed bug GH-15210 use-after-free on watchpoint allocations.
    Soap:
    Fixed bug #55639 (Digest autentication dont work).
    Fix SoapFault property destruction.
    Fixed bug GH-15252 (SOAP XML broken since PHP 8.3.9 when using classmap constructor option).
    Standard:
    Fix passing non-finite timeout values in stream functions.
    Fixed GH-14780 p(f)sockopen timeout overflow.
    Streams:
    Fixed bug GH-15028 (Memory leak in ext/phar/stream.c).
    Fixed bug GH-15034 (Integer overflow on stream_notification_callback byte_max parameter with files bigger than 2GB).
    Reverted fix for GH-14930 (Custom stream wrapper dir_readdir output truncated to 255 characters).
    Tidy:
    Fix memory leaks in ext/tidy basedir restriction code.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1727352000">- version update to 8.3.12 [bsc#1231358], [bsc#1231382], [bsc#1231360]
    CGI:
    Fixed bug GHSA-p99j-rfp4-xqvq (Bypass of CVE-2024-4577, Parameter Injection Vulnerability). (CVE-2024-8926)
    Fixed bug GHSA-94p6-54jq-9mwp (cgi.force_redirect configuration is bypassable due to the environment variable collision). (CVE-2024-8927)
    Core:
    Fixed bug GH-15408 (MSan false-positve on zend_max_execution_timer).
    Fixed bug GH-15515 (Configure error grep illegal option q).
    Fixed bug GH-15514 (Configure error: genif.sh: syntax error).
    Fixed bug GH-15565 (--disable-ipv6 during compilation produces error EAI_SYSTEM not found).
    Fixed bug GH-15587 (CRC32 API build error on arm 32-bit).
    Fixed bug GH-15330 (Do not scan generator frames more than once).
    Fixed uninitialized lineno in constant AST of internal enums.
    Curl:
    Fixed bug GH-15547 (curl_multi_select overflow on timeout argument).
    DOM:
    Fixed bug GH-15551 (Segmentation fault (access null pointer) in ext/dom/xml_common.h).
    Fixed bug GH-15654 (Signed integer overflow in ext/dom/nodelist.c).
    Fileinfo:
    Fixed bug GH-15752 (Incorrect error message for finfo_file with an empty filename argument).
    FPM:
    Fixed bug GHSA-865w-9rf3-2wh5 (Logs from childrens may be altered). (CVE-2024-9026)
    MySQLnd:
    Fixed bug GH-15432 (Heap corruption when querying a vector).
    Opcache:
    Fixed bug GH-15661 (Access null pointer in Zend/Optimizer/zend_inference.c).
    Fixed bug GH-15658 (Segmentation fault in Zend/zend_vm_execute.h).
    SAPI:
    Fixed bug GHSA-9pqp-7h25-4f32 (Erroneous parsing of multipart form data). (CVE-2024-8925)
    Standard:
    Fixed bug GH-15552 (Signed integer overflow in ext/standard/scanf.c).
    Streams:
    Fixed bug GH-15628 (php_stream_memory_get_buffer() not zero-terminated).</changelog>
  <changelog author="Thorsten Kukuk &lt;kukuk@suse.com&gt;" date="1727524800">- Add /srv/www directories to filelist [bsc#1231027]</changelog>
  <changelog author="pgajdos@suse.com" date="1729771200">- version update to 8.3.13
    Calendar:
    Fixed GH-16240: jdtounix overflow on argument value.
    Fixed GH-16241: easter_days/easter_date overflow on year argument.
    Fixed GH-16263: jddayofweek overflow.
    Fixed GH-16234: jewishtojd overflow.
    CLI:
    Fixed bug GH-16137: duplicate http headers when set several times by the client.
    Core:
    Fixed bug GH-16054 (Segmentation fault when resizing hash table iterator list while adding).
    Fixed bug GH-15905 (Assertion failure for TRACK_VARS_SERVER).
    Fixed bug GH-15907 (Failed assertion when promoting Serialize deprecation to exception).
    Fixed bug GH-15851 (Segfault when printing backtrace during cleanup of nested generator frame).
    Fixed bug GH-15866 (Core dumped in Zend/zend_generators.c).
    Fixed bug GH-16188 (Assertion failure in Zend/zend_exceptions.c).
    Fixed bug GH-16233 (Observer segfault when calling user function in internal function via trampoline).
    DOM:
    Fixed bug GH-16039 (Segmentation fault (access null pointer) in ext/dom/parentnode/tree.c).
    Fixed bug GH-16149 (Null pointer dereference in DOMElement-&gt;getAttributeNames()).
    Fixed bug GH-16151 (Assertion failure in ext/dom/parentnode/tree.c).
    Fixed bug GH-16150 (Use after free in php_dom.c).
    Fixed bug GH-16152 (Memory leak in DOMProcessingInstruction/DOMDocument).
    JSON:
    Fixed bug GH-15168 (stack overflow in json_encode()).
    GD:
    Fixed bug GH-16232 (bitshift overflow on wbmp file content reading / fix backport from upstream).
    Fixed bug GH-12264 (overflow/underflow on imagerotate degrees value) (David Carlier)
    Fixed bug GH-16274 (imagescale underflow on RBG channels / fix backport from upstream).
    LDAP:
    Fixed bug GH-16032 (Various NULL pointer dereferencements in ldap_modify_batch()).
    Fixed bug GH-16101 (Segfault in ldap_list(), ldap_read(), and ldap_search() when LDAPs array is not a list).
    Fix GH-16132 (php_ldap_do_modify() attempts to free pointer not allocated by ZMM.).
    Fix GH-16136 (Memory leak in php_ldap_do_modify() when entry is not a proper dictionary).
    MBString:
    Fixed bug GH-16261 (Reference invariant broken in mb_convert_variables()).
    OpenSSL:
    Fixed stub for openssl_csr_new.
    PCRE:
    Fixed bug GH-16189 (underflow on offset argument).
    Fixed bug GH-16184 (UBSan address overflowed in ext/pcre/php_pcre.c).
    PHPDBG:
    Fixed bug GH-15901 (phpdbg: Assertion failure on i funcs).
    Fixed bug GH-16181 (phpdbg: exit in exception handler reports fatal error).
    Reflection:
    Fixed bug GH-16187 (Assertion failure in ext/reflection/php_reflection.c).
    SAPI:
    Fixed bug GH-15395 (php-fpm: zend_mm_heap corrupted with cgi-fcgi request).
    SimpleXML:
    Fixed bug GH-15837 (Segmentation fault in ext/simplexml/simplexml.c).
    Sockets:
    Fixed bug GH-16267 (socket_strerror overflow on errno argument).
    SOAP:
    Fixed bug #73182 (PHP SOAPClient does not support stream context HTTP headers in array form).
    Fixed bug #62900 (Wrong namespace on xsd import error message).
    Fixed bug GH-15711 (SoapClient can't convert BackedEnum to scalar value).
    Fixed bug GH-16237 (Segmentation fault when cloning SoapServer).
    Fix Soap leaking http_msg on error.
    Fixed bug GH-16256 (Assertion failure in ext/soap/php_encoding.c:460).
    Fixed bug GH-16259 (Soap segfault when classmap instantiation fails).
    SPL:
    Fixed bug GH-15918 (Assertion failure in ext/spl/spl_fixedarray.c).
    Standard:
    Fixed bug GH-16053 (Assertion failure in Zend/zend_hash.c).
    Fixed bug GH-15169 (stack overflow when var serialization in ext/standard/var).
    Streams:
    Fixed bugs GH-15908 and GH-15026 (leak / assertion failure in streams.c).
    Fixed bug GH-15980 (Signed integer overflow in main/streams/streams.c).
    TSRM:
    Prevent closing of unrelated handles.</changelog>
  <changelog author="pgajdos@suse.com" date="1732190400">- version update to 8.3.14
    CLI:
    Fixed bug GH-16373 (Shebang is not skipped for router script in cli-server started through shebang).
    Fixed bug GHSA-4w77-75f9-2c8w (Heap-Use-After-Free in sapi_read_post_data Processing in CLI SAPI Interface).
    COM:
    Fixed out of bound writes to SafeArray data.
    Core:
    Fixed bug GH-16168 (php 8.1 and earlier crash immediately when compiled with Xcode 16 clang on macOS 15).
    Fixed bug GH-16371 (Assertion failure in Zend/zend_weakrefs.c:646).
    Fixed bug GH-16515 (Incorrect propagation of ZEND_ACC_RETURN_REFERENCE for call trampoline).
    Fixed bug GH-16509 (Incorrect line number in function redeclaration error).
    Fixed bug GH-16508 (Incorrect line number in inheritance errors of delayed early bound classes).
    Fixed bug GH-16648 (Use-after-free during array sorting).
    Curl:
    Fixed bug GH-16302 (CurlMultiHandle holds a reference to CurlHandle if curl_multi_add_handle fails).
    Date:
    Fixed bug GH-16454 (Unhandled INF in date_sunset() with tiny $utcOffset).
    Fixed bug GH-14732 (date_sun_info() fails for non-finite values).
    DBA:
    Fixed bug GH-16390 (dba_open() can segfault for "pathless" streams).
    DOM:
    Fixed bug GH-16316 (DOMXPath breaks when not initialized properly).
    Add missing hierarchy checks to replaceChild.
    Fixed bug GH-16336 (Attribute intern document mismanagement).
    Fixed bug GH-16338 (Null-dereference in ext/dom/node.c).
    Fixed bug GH-16473 (dom_import_simplexml stub is wrong).
    Fixed bug GH-16533 (Segfault when adding attribute to parent that is not an element).
    Fixed bug GH-16535 (UAF when using document as a child).
    Fixed bug GH-16593 (Assertion failure in DOM-&gt;replaceChild).
    Fixed bug GH-16595 (Another UAF in DOM -&gt; cloneNode).
    EXIF:
    Fixed bug GH-16409 (Segfault in exif_thumbnail when not dealing with a real file).
    FFI:
    Fixed bug GH-16397 (Segmentation fault when comparing FFI object).
    Filter:
    Fixed bug GH-16523 (FILTER_FLAG_HOSTNAME accepts ending hyphen).
    FPM:
    Fixed bug GH-16628 (FPM logs are getting corrupted with this log statement).
    GD:
    Fixed bug GH-16334 (imageaffine overflow on matrix elements).
    Fixed bug GH-16427 (Unchecked libavif return values).
    Fixed bug GH-16559 (UBSan abort in ext/gd/libgd/gd_interpolation.c:1007).
    GMP:
    Fixed floating point exception bug with gmp_pow when using large exposant values. (David Carlier).
    Fixed bug GH-16411 (gmp_export() can cause overflow).
    Fixed bug GH-16501 (gmp_random_bits() can cause overflow).
    Fixed gmp_pow() overflow bug with large base/exponents.
    Fixed segfaults and other issues related to operator overloading with GMP objects.
    LDAP:
    Fixed bug GHSA-g665-fm4p-vhff (OOB access in ldap_escape). (CVE-2024-8932)
    MBstring:
    Fixed bug GH-16361 (mb_substr overflow on start/length arguments).
    MySQLnd:
    Fixed bug GHSA-h35g-vwh6-m678 (Leak partial content of the heap through heap buffer over-read). (CVE-2024-8929)
    Opcache:
    Fixed bug GH-16408 (Array to string conversion warning emitted in optimizer).
    OpenSSL:
    Fixed bug GH-16357 (openssl may modify member types of certificate arrays).
    Fixed bug GH-16433 (Large values for openssl_csr_sign() $days overflow).
    Fix various memory leaks on error conditions in openssl_x509_parse().
    PDO DBLIB:
    Fixed bug GHSA-5hqh-c84r-qjcv (Integer overflow in the dblib quoter causing OOB writes). (CVE-2024-11236)
    PDO Firebird:
    Fixed bug GHSA-5hqh-c84r-qjcv (Integer overflow in the firebird quoter causing OOB writes). (CVE-2024-11236)
    PDO ODBC:
    Fixed bug GH-16450 (PDO_ODBC can inject garbage into field values).
    Phar:
    Fixed bug GH-16406 (Assertion failure in ext/phar/phar.c:2808).
    PHPDBG:
    Fixed bug GH-16174 (Empty string is an invalid expression for ev).
    Reflection:
    Fixed bug GH-16601 (Memory leak in Reflection constructors).
    Session:
    Fixed bug GH-16385 (Unexpected null returned by session_set_cookie_params).
    Fixed bug GH-16290 (overflow on cookie_lifetime ini value).
    SOAP:
    Fixed bug GH-16318 (Recursive array segfaults soap encoding).
    Fixed bug GH-16429 (Segmentation fault access null pointer in SoapClient).
    Sockets:
    Fixed bug with overflow socket_recvfrom $length argument.
    SPL:
    Fixed bug GH-16337 (Use-after-free in SplHeap).
    Fixed bug GH-16464 (Use-after-free in SplDoublyLinkedList::offsetSet()).
    Fixed bug GH-16479 (Use-after-free in SplObjectStorage::setInfo()).
    Fixed bug GH-16478 (Use-after-free in SplFixedArray::unset()).
    Fixed bug GH-16588 (UAF in Observer-&gt;serialize).
    Fix GH-16477 (Segmentation fault when calling __debugInfo() after failed SplFileObject::__constructor).
    Fixed bug GH-16589 (UAF in SplDoublyLinked-&gt;serialize()).
    Fixed bug GH-14687 (segfault on SplObjectIterator instance).
    Fixed bug GH-16604 (Memory leaks in SPL constructors).
    Fixed bug GH-16646 (UAF in ArrayObject::unset() and ArrayObject::exchangeArray()).
    Standard:
    Fixed bug GH-16293 (Failed assertion when throwing in assert() callback with bail enabled).
    Streams:
    Fixed bug GHSA-c5f2-jwm7-mmq2 (Configuring a proxy in a stream context might allow for CRLF injection in URIs). (CVE-2024-11234)
    Fixed bug GHSA-r977-prxv-hc43 (Single byte overread with convert.quoted-printable-decode filter). (CVE-2024-11233)
    SysVMsg:
    Fixed bug GH-16592 (msg_send() crashes when a type does not properly serialized).
    SysVShm:
    Fixed bug GH-16591 (Assertion error in shm_put_var).
    XMLReader:
    Fixed bug GH-16292 (Segmentation fault in ext/xmlreader/php_xmlreader.c).
    Zlib:
    Fixed bug GH-16326 (Memory management is broken for bad dictionaries.) (cmb)</changelog>
</package>
<package pkgid="3bd58f330d42f39814a902bc84586001216e20540c20d84dc71acd1a903dde27844320b1a332dbfce278203c41d429231755d0ad4f7af385ab228cee3f246614" name="apache2-mod_php8" arch="src">
  <version epoch="0" ver="8.3.14" rel="1.0.2.1.sr20241103"/>
  <changelog author="pgajdos@suse.com" date="1695988800">- version update to 8.2.11
  * This is a bug fix release.
  * https://www.php.net/ChangeLog-8.php#8.2.11</changelog>
  <changelog author="pgajdos@suse.com" date="1698321600">- version update to 8.2.12
  * This is a bug fix release.
    https://www.php.net/ChangeLog-8.php#8.2.12</changelog>
  <changelog author="pgajdos@suse.com" date="1700827200">- version update to 8.2.13
  * This is a bug fix release.
    https://www.php.net/ChangeLog-8.php#8.2.13</changelog>
  <changelog author="pgajdos@suse.com" date="1700827201">- version update to 8.3.0
  * https://www.php.net/releases/8.3/en.php
  * Typed class constants
  * Dynamic class constant fetch
  * New #[\Override] attribute
  * Deep-cloning of readonly properties
  * New json_validate() function
  * New Randomizer::getBytesFromString() method
  * New Randomizer::getFloat() and Randomizer::nextFloat() methods
  * New DOMElement::getAttributeNames(),
    DOMElement::insertAdjacentElement(),
    DOMElement::insertAdjacentText(),
    DOMElement::toggleAttribute(),
    DOMNode::contains(), DOMNode::getRootNode(),
    DOMNode::isEqualNode(), DOMNameSpaceNode::contains(), and
    DOMParentNode::replaceChildren() methods.
  * New IntlCalendar::setDate(),
    IntlCalendar::setDateTime(),
    IntlGregorianCalendar::createFromDate(), and
    IntlGregorianCalendar::createFromDateTime() methods.
  * New ldap_connect_wallet(), and ldap_exop_sync() functions.
  * New mb_str_pad() function.
  * New posix_sysconf(), posix_pathconf(), posix_fpathconf(),
    and posix_eaccess() functions.
  * New ReflectionMethod::createFromMethodName() method.
  * New socket_atmark() function.
  * New str_increment(), str_decrement(),
    and stream_context_set_options() functions.
  * New ZipArchive::getArchiveFlag() method.
  * Support for generation EC keys with custom EC parameters in
    OpenSSL extension.
  * New INI setting zend.max_allowed_stack_size to set the maximum
    allowed stack size.
  * php.ini now supports fallback/default value syntax.
  * Anonymous classes can now be readonly.
  * https://www.php.net/ChangeLog-8.php#PHP_8_3
- modified patches
  % php-ar-flags.patch (refreshed)
  % php-build-reproducible-phar.patch (refreshed)
  % php-ini.patch (refreshed)
- modified sources
  % php8.keyring
- deleted patches
  - php-systzdata-v23.patch
- added patches
  + php-systzdata-v24.patch</changelog>
  <changelog author="Manu Maier &lt;mmanu84@outlook.de&gt;" date="1703678400">- version update to 8.3.1
  * This is a bug fix release.
    https://www.php.net/ChangeLog-8.php#8.3.1</changelog>
  <changelog author="pgajdos@suse.com" date="1705579200">- version update to 8.3.2
  * This is a bug fix release.
- modified patches
  % php-ar-flags.patch (refreshed)
  % php-build-reproducible-phar.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1708084800">- version update to 8.3.3
  * A bugfix release.
- modified patches
  % php-build-reproducible-phar.patch (refreshed)</changelog>
  <changelog author="Pedro Monreal &lt;pmonreal@suse.com&gt;" date="1709726400">- Use the system default cipher list instead of hardcoded values
  by using crypto-policies. [bsc#1211301]
  * Use the --with-system-ciphers configure option.</changelog>
  <changelog author="pgajdos@suse.com" date="1710849600">- version update to 8.3.4
  * This is a bug fix release.</changelog>
  <changelog author="pgajdos@suse.com" date="1712923200">- version update to 8.3.6 [bsc#1222857] [bsc#1222858]
    Core:
    Fixed GH-13569 (GC buffer unnecessarily grows up to GC_MAX_BUF_SIZE when scanning WeakMaps).
    Fixed bug GH-13612 (Corrupted memory in destructor with weak references).
    Fixed bug GH-13446 (Restore exception handler after it finishes).
    Fixed bug GH-13784 (AX_GCC_FUNC_ATTRIBUTE failure).
    Fixed bug GH-13670 (GC does not scale well with a lot of objects created in destructor).
    DOM:
    Add some missing ZPP checks.
    Fix potential memory leak in XPath evaluation results.
    FPM:
    Fixed GH-11086 (FPM: config test runs twice in daemonised mode).
    Fix incorrect check in fpm_shm_free().
    GD:
    Fixed bug GH-12019 (add GDLIB_CFLAGS in feature tests).
    Gettext:
    Fixed sigabrt raised with dcgettext/dcngettext calls with gettext 0.22.5 with category set to LC_ALL.
    MySQLnd:
    Fix GH-13452 (Fixed handshake response [mysqlnd]).
    Fix incorrect charset length in check_mb_eucjpms().
    Opcache:
    Fixed GH-13508 (JITed QM_ASSIGN may be optimized out when op1 is null).
    Fixed GH-13712 (Segmentation fault for enabled observers when calling trait method of internal trait when opcache is loaded).
    Random:
    Fixed bug GH-13544 (Pre-PHP 8.2 compatibility for mt_srand with unknown modes).
    Fixed bug GH-13690 (Global Mt19937 is not properly reset in-between requests when MT_RAND_PHP is used).
    Session:
    Fixed bug GH-13680 (Segfault with session_decode and compilation error).
    SPL:
    Fixed bug GH-13685 (Unexpected null pointer in zend_string.h).
    Standard:
    Fixed bug GH-11808 (Live filesystem modified by tests).
    Fixed GH-13402 (Added validation of `\n` in $additional_headers of mail()).
    Fixed bug GH-13203 (file_put_contents fail on strings over 4GB on Windows).
    Fixed bug GHSA-pc52-254m-w9w7 (Command injection via array-ish $command parameter of proc_open). (CVE-2024-1874)
    Fixed bug GHSA-wpj3-hf5j-x4v4 (__Host-/__Secure- cookie bypass due to partial CVE-2022-31629 fix). (CVE-2024-2756)
    Fixed bug GHSA-h746-cjrr-wfmr (password_verify can erroneously return true, opening ATO risk). (CVE-2024-3096)
    Fixed bug GHSA-fjp9-9hwx-59fq (mb_encode_mimeheader runs endlessly for some inputs). (CVE-2024-2757)
    Fix bug GH-13932 (Attempt to fix mbstring on windows build) (msvc).</changelog>
  <changelog author="pgajdos@suse.com" date="1715256000">- version update to 8.3.7
    Core:
    Fixed zend_call_stack build with Linux/uclibc-ng without thread support.
    Fixed bug GH-13772 (Invalid execute_data-&gt;opline pointers in observer fcall handlers when JIT is enabled).
    Fixed bug GH-13931 (Applying zero offset to null pointer in Zend/zend_opcode.c).
    Fixed bug GH-13942 (Align the behavior of zend-max-execution-timers with other timeout implementations).
    Fixed bug GH-14003 (Broken cleanup of unfinished calls with callable convert parameters).
    Fixed bug GH-14013 (Erroneous dnl appended in configure).
    Fixed bug GH-10232 (If autoloading occurs during constant resolution filename and lineno are identified incorrectly).
    Fixed bug GH-13727 (Missing void keyword).
    Fibers:
    Fixed bug GH-13903 (ASAN false positive underflow when executing copy()).
    Fileinfo:
    Fixed bug GH-13795 (Test failing in ext/fileinfo/tests/bug78987.phpt on big-endian PPC).
    FPM:
    Fixed bug GH-13563 (Setting bool values via env in FPM config fails).
    Intl:
    Fixed build for icu 74 and onwards.
    MySQLnd:
    Fix shift out of bounds on 32-bit non-fast-path platforms.
    Opcache:
    Fixed bug GH-13433 (Segmentation Fault in zend_class_init_statics when using opcache.preload).
    Fixed incorrect assumptions across compilation units for static calls.
    OpenSSL:
    Fixed bug GH-10495 (feof on OpenSSL stream hangs indefinitely).
    PDO SQLite:
    Fix GH-13984 (Buffer size is now checked before memcmp).
    Fix GH-13998 (Manage refcount of agg_context-&gt;val correctly).
    Phar:
    Fixed bug GH-13836 (Renaming a file in a Phar to an already existing filename causes a NULL pointer dereference).
    Fixed bug GH-13833 (Applying zero offset to null pointer in zend_hash.c).
    Fix potential NULL pointer dereference before calling EVP_SignInit.
    PHPDBG:
    Fixed bug GH-13827 (Null pointer access of type 'zval' in phpdbg_frame).
    Posix:
    Fix usage of reentrant functions in ext/posix.
    Session:
    Fixed bug GH-13856 (Member access within null pointer of type 'ps_files' in ext/session/mod_files.c).
    Fixed bug GH-13891 (memleak and segfault when using ini_set with session.trans_sid_hosts).
    Fixed buffer _read/_write size limit on windows for the file mode.
    Streams:
    Fixed file_get_contents() on Windows fails with "errno=22 Invalid argument".
    Fixed bug GH-13264 (Part 1 - Memory leak on stream filter failure).
    Fixed bug GH-13860 (Incorrect PHP_STREAM_OPTION_CHECK_LIVENESS case in ext/openssl/xp_ssl.c - causing use of dead socket).
    Fixed bug GH-11678 (Build fails on musl 1.2.4 - lfs64).
    Treewide:
    Fix gcc-14 Wcalloc-transposed-args warnings.</changelog>
  <changelog author="pgajdos@suse.com" date="1717761600">- version update to 8.3.8 [bsc#1226073]
    CGI:
    Fixed buffer limit on Windows, replacing read call usage by _read.
    Fixed bug GHSA-3qgc-jrrr-25jv (Bypass of CVE-2012-1823, Argument Injection in PHP-CGI). (CVE-2024-4577)
    CLI:
    Fixed bug GH-14189 (PHP Interactive shell input state incorrectly handles quoted heredoc literals.).
    Core:
    Fixed bug GH-13970 (Incorrect validation of #[Attribute] flags type for non-compile-time expressions).
    DOM:
    Fix crashes when entity declaration is removed while still having entity references.
    Fix references not handled correctly in C14N.
    Fix crash when calling childNodes next() when iterator is exhausted.
    Fix crash in ParentNode::append() when dealing with a fragment containing text nodes.
    Filter:
    Fixed bug GHSA-w8qr-v226-r27w (Filter bypass in filter_var FILTER_VALIDATE_URL). (CVE-2024-5458)
    FPM:
    Fix bug GH-14175 (Show decimal number instead of scientific notation in systemd status).
    Hash:
    ext/hash: Swap the checking order of `__has_builtin` and `__GNUC__` (Saki Takamachi)
    Intl:
    Fixed build regression on systems without C++17 compilers.
    MySQLnd:
    Fix bug GH-14255 (mysqli_fetch_assoc reports error from nested query).
    Opcache:
    Fixed bug GH-14109 (Fix accidental persisting of internal class constant in shm).
    OpenSSL:
    The openssl_private_decrypt function in PHP and Marvin attack.
    Standard:
    Fixed bug GHSA-9fcc-425m-g385 (Bypass of CVE-2024-1874). (CVE-2024-5585)
    XML:
    Fixed bug GH-14124 (Segmentation fault with XML extension under certain memory limit).
    XMLReader:
    Fixed bug GH-14183 (XMLReader::open() can't be overridden).
- modified patches
  % php-build-reproducible-phar.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1718884800">- drop unmaintained apache-rex usage</changelog>
  <changelog author="pgajdos@suse.com" date="1720353600">- version update to 8.3.9
    Core:
    Fixed bug GH-14315 (Incompatible pointer type warnings).
    Fixed bug GH-12814 (max_execution_time reached too early on MacOS 14 when running on Apple Silicon).
    Fixed bug GH-14387 (Crash when stack walking in destructor of yielded from values during Generator-&gt;throw()).
    Fixed bug GH-14456 (Attempting to initialize class with private constructor calls destructor).
    Fixed bug GH-14510 (memleak due to missing pthread_attr_destroy()-call).
    Fixed bug GH-14549 (Incompatible function pointer type for fclose).
    BCMatch:
    Fixed bug (bcpowmod() with mod = -1 returns 1 when it must be 0).
    Curl:
    Fixed bug GH-14307 (Test curl_basic_024 fails with curl 8.8.0).
    DOM:
    Fixed bug GH-14343 (Memory leak in xml and dom).
    FPM:
    Fixed bug GH-14037 (PHP-FPM ping.path and ping.response config vars are ignored in status pool).
    GD:
    Fix parameter numbers for imagecolorset().
    Intl:
    Fix reference handling in SpoofChecker.
    MySQLnd:
    Partially fix bug GH-10599 (Apache crash on Windows when using a self-referencing anonymous function inside a class with an active mysqli connection).
    Opcache:
    Fixed bug GH-14267 (opcache.jit=off does not allow enabling JIT at runtime).
    Fixed TLS access in JIT on FreeBSD/amd64.
    Fixed bug GH-11188 (Error when building TSRM in ARM64).
    PDO ODBC:
    Fixed bug GH-14367 (incompatible SDWORD type with iODBC).
    PHPDBG:
    Fixed bug GH-13681 (segfault on watchpoint addition failure).
    Soap:
    Fixed bug #47925 (PHPClient can't decompress response).
    Fix missing error restore code.
    Fix memory leak if calling SoapServer::setObject() twice.
    Fix memory leak if calling SoapServer::setClass() twice.
    Fix reading zlib ini settings in ext-soap.
    Fix memory leaks with string function name lookups.
    Fixed bug #69280 (SoapClient classmap doesn't support fully qualified class name).
    Fixed bug #76232 (SoapClient Cookie Header Semicolon).
    Fixed memory leaks when calling SoapFault::__construct() twice.
    Sodium:
    Fix memory leaks in ext/sodium on failure of some functions.
    SPL:
    Fixed bug GH-14290 (Member access within null pointer in extension spl).
    Standard:
    Fixed bug GH-14483 (Fixed off-by-one error in checking length of abstract namespace Unix sockets).
    Streams:
    Fixed bug GH-11078 (PHP Fatal error triggers pointer being freed was not allocated and malloc: double free for ptr errors).</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1723809600">- version update to 8.3.10
    Core:
    Fixed bug GH-13922 (Fixed support for systems with sysconf(_SC_GETPW_R_SIZE_MAX) == -1).
    Fixed bug GH-14626 (Fix is_zend_ptr() for huge blocks).
    Fixed bug GH-14590 (Memory leak in FPM test gh13563-conf-bool-env.phpt.
    Fixed OSS-Fuzz #69765.
    Fixed bug GH-14741 (Segmentation fault in Zend/zend_types.h).
    Fixed bug GH-14969 (Use-after-free in property coercion with __toString()).
    Dom:
    Fixed bug GH-14702 (DOMDocument::xinclude() crash).
    Fileinfo:
    Fixed bug GH-14888 (README.REDIST.BINS refers to non-existing LICENSE).
    Gd:
    ext/gd/tests/gh10614.phpt: skip if no PNG support.
    restored warning instead of fata error.
    LibXML:
    Fixed bug GH-14563 (Build failure with libxml2 v2.13.0).
    Opcache:
    Fixed bug GH-14550 (No warning message when Zend DTrace is enabled that opcache.jit is implictly disabled).
    Output:
    Fixed bug GH-14808 (Unexpected null pointer in Zend/zend_string.h with empty output buffer).
    PDO:
    Fixed bug GH-14712 (Crash with PDORow access to null property).
    Phar:
    Fixed bug GH-14603 (null string from zip entry).
    PHPDBG:
    Fixed bug GH-14596 (crashes with ASAN and ZEND_RC_DEBUG=1).
    Fixed bug GH-14553 (echo output trimmed at NULL byte).
    Shmop:
    Fixed bug GH-14537 (shmop Windows 11 crashes the process).
    SPL:
    Fixed bug GH-14639 (Member access within null pointer in ext/spl/spl_observer.c).
    Standard:
    Fixed bug GH-14775 (range function overflow with negative step argument).
    Fix 32-bit wordwrap test failures.
    Fixed bug GH-14774 (time_sleep_until overflow).
    Streams:
    Fixed bug GH-14930 (Custom stream wrapper dir_readdir output truncated to 255 characters in PHP 8.3).
    Tidy:
    Fix memory leak in tidy_repair_file().
    Treewide:
    Fix compatibility with libxml2 2.13.2.
    XML:
    Move away from to-be-deprecated libxml fields.
    Fixed bug GH-14834 (Error installing PHP when --with-pear is used).</changelog>
  <changelog author="pgajdos@suse.com" date="1725019200">- version update to 8.3.11
    Core:
    Fixed bug GH-15020 (Memory leak in Zend/Optimizer/escape_analysis.c).
    Fixed bug GH-15023 (Memory leak in Zend/zend_ini.c).
    Fixed bug GH-13330 (Append -Wno-implicit-fallthrough flag conditionally).
    Fix uninitialized memory in network.c.
    Fixed bug GH-15108 (Segfault when destroying generator during shutdown).
    Fixed bug GH-15275 (Crash during GC of suspended generator delegate).
    Curl:
    Fixed case when curl_error returns an empty string.
    DOM:
    Fix UAF when removing doctype and using foreach iteration.
    FFI:
    Fixed bug GH-14286 (ffi enum type (when enum has no name) make memory leak).
    Hash:
    Fix crash when converting array data for array in shm in xxh3.
    Intl:
    Fixed bug GH-15087 (IntlChar::foldCase()'s $option is not optional).
    Opcache:
    Fixed bug GH-13817 (Segmentation fault for enabled observers after pass 4).
    Fixed bug GH-13775 (Memory leak possibly related to opcache SHM placement).
    Output:
    Fixed bug GH-15179 (Segmentation fault (null pointer dereference) in ext/standard/url_scanner_ex.re).
    PDO_Firebird:
    Fix bogus fallthrough path in firebird_handle_get_attribute().
    PHPDBG:
    Fixed bug GH-13199 (EOF emits redundant prompt in phpdbg local console mode with libedit/readline).
    Fixed bug GH-15268 (heap buffer overflow in phpdbg (zend_hash_num_elements() Zend/zend_hash.h)).
    Fixed bug GH-15210 use-after-free on watchpoint allocations.
    Soap:
    Fixed bug #55639 (Digest autentication dont work).
    Fix SoapFault property destruction.
    Fixed bug GH-15252 (SOAP XML broken since PHP 8.3.9 when using classmap constructor option).
    Standard:
    Fix passing non-finite timeout values in stream functions.
    Fixed GH-14780 p(f)sockopen timeout overflow.
    Streams:
    Fixed bug GH-15028 (Memory leak in ext/phar/stream.c).
    Fixed bug GH-15034 (Integer overflow on stream_notification_callback byte_max parameter with files bigger than 2GB).
    Reverted fix for GH-14930 (Custom stream wrapper dir_readdir output truncated to 255 characters).
    Tidy:
    Fix memory leaks in ext/tidy basedir restriction code.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1727352000">- version update to 8.3.12 [bsc#1231358], [bsc#1231382], [bsc#1231360]
    CGI:
    Fixed bug GHSA-p99j-rfp4-xqvq (Bypass of CVE-2024-4577, Parameter Injection Vulnerability). (CVE-2024-8926)
    Fixed bug GHSA-94p6-54jq-9mwp (cgi.force_redirect configuration is bypassable due to the environment variable collision). (CVE-2024-8927)
    Core:
    Fixed bug GH-15408 (MSan false-positve on zend_max_execution_timer).
    Fixed bug GH-15515 (Configure error grep illegal option q).
    Fixed bug GH-15514 (Configure error: genif.sh: syntax error).
    Fixed bug GH-15565 (--disable-ipv6 during compilation produces error EAI_SYSTEM not found).
    Fixed bug GH-15587 (CRC32 API build error on arm 32-bit).
    Fixed bug GH-15330 (Do not scan generator frames more than once).
    Fixed uninitialized lineno in constant AST of internal enums.
    Curl:
    Fixed bug GH-15547 (curl_multi_select overflow on timeout argument).
    DOM:
    Fixed bug GH-15551 (Segmentation fault (access null pointer) in ext/dom/xml_common.h).
    Fixed bug GH-15654 (Signed integer overflow in ext/dom/nodelist.c).
    Fileinfo:
    Fixed bug GH-15752 (Incorrect error message for finfo_file with an empty filename argument).
    FPM:
    Fixed bug GHSA-865w-9rf3-2wh5 (Logs from childrens may be altered). (CVE-2024-9026)
    MySQLnd:
    Fixed bug GH-15432 (Heap corruption when querying a vector).
    Opcache:
    Fixed bug GH-15661 (Access null pointer in Zend/Optimizer/zend_inference.c).
    Fixed bug GH-15658 (Segmentation fault in Zend/zend_vm_execute.h).
    SAPI:
    Fixed bug GHSA-9pqp-7h25-4f32 (Erroneous parsing of multipart form data). (CVE-2024-8925)
    Standard:
    Fixed bug GH-15552 (Signed integer overflow in ext/standard/scanf.c).
    Streams:
    Fixed bug GH-15628 (php_stream_memory_get_buffer() not zero-terminated).</changelog>
  <changelog author="Thorsten Kukuk &lt;kukuk@suse.com&gt;" date="1727524800">- Add /srv/www directories to filelist [bsc#1231027]</changelog>
  <changelog author="pgajdos@suse.com" date="1729771200">- version update to 8.3.13
    Calendar:
    Fixed GH-16240: jdtounix overflow on argument value.
    Fixed GH-16241: easter_days/easter_date overflow on year argument.
    Fixed GH-16263: jddayofweek overflow.
    Fixed GH-16234: jewishtojd overflow.
    CLI:
    Fixed bug GH-16137: duplicate http headers when set several times by the client.
    Core:
    Fixed bug GH-16054 (Segmentation fault when resizing hash table iterator list while adding).
    Fixed bug GH-15905 (Assertion failure for TRACK_VARS_SERVER).
    Fixed bug GH-15907 (Failed assertion when promoting Serialize deprecation to exception).
    Fixed bug GH-15851 (Segfault when printing backtrace during cleanup of nested generator frame).
    Fixed bug GH-15866 (Core dumped in Zend/zend_generators.c).
    Fixed bug GH-16188 (Assertion failure in Zend/zend_exceptions.c).
    Fixed bug GH-16233 (Observer segfault when calling user function in internal function via trampoline).
    DOM:
    Fixed bug GH-16039 (Segmentation fault (access null pointer) in ext/dom/parentnode/tree.c).
    Fixed bug GH-16149 (Null pointer dereference in DOMElement-&gt;getAttributeNames()).
    Fixed bug GH-16151 (Assertion failure in ext/dom/parentnode/tree.c).
    Fixed bug GH-16150 (Use after free in php_dom.c).
    Fixed bug GH-16152 (Memory leak in DOMProcessingInstruction/DOMDocument).
    JSON:
    Fixed bug GH-15168 (stack overflow in json_encode()).
    GD:
    Fixed bug GH-16232 (bitshift overflow on wbmp file content reading / fix backport from upstream).
    Fixed bug GH-12264 (overflow/underflow on imagerotate degrees value) (David Carlier)
    Fixed bug GH-16274 (imagescale underflow on RBG channels / fix backport from upstream).
    LDAP:
    Fixed bug GH-16032 (Various NULL pointer dereferencements in ldap_modify_batch()).
    Fixed bug GH-16101 (Segfault in ldap_list(), ldap_read(), and ldap_search() when LDAPs array is not a list).
    Fix GH-16132 (php_ldap_do_modify() attempts to free pointer not allocated by ZMM.).
    Fix GH-16136 (Memory leak in php_ldap_do_modify() when entry is not a proper dictionary).
    MBString:
    Fixed bug GH-16261 (Reference invariant broken in mb_convert_variables()).
    OpenSSL:
    Fixed stub for openssl_csr_new.
    PCRE:
    Fixed bug GH-16189 (underflow on offset argument).
    Fixed bug GH-16184 (UBSan address overflowed in ext/pcre/php_pcre.c).
    PHPDBG:
    Fixed bug GH-15901 (phpdbg: Assertion failure on i funcs).
    Fixed bug GH-16181 (phpdbg: exit in exception handler reports fatal error).
    Reflection:
    Fixed bug GH-16187 (Assertion failure in ext/reflection/php_reflection.c).
    SAPI:
    Fixed bug GH-15395 (php-fpm: zend_mm_heap corrupted with cgi-fcgi request).
    SimpleXML:
    Fixed bug GH-15837 (Segmentation fault in ext/simplexml/simplexml.c).
    Sockets:
    Fixed bug GH-16267 (socket_strerror overflow on errno argument).
    SOAP:
    Fixed bug #73182 (PHP SOAPClient does not support stream context HTTP headers in array form).
    Fixed bug #62900 (Wrong namespace on xsd import error message).
    Fixed bug GH-15711 (SoapClient can't convert BackedEnum to scalar value).
    Fixed bug GH-16237 (Segmentation fault when cloning SoapServer).
    Fix Soap leaking http_msg on error.
    Fixed bug GH-16256 (Assertion failure in ext/soap/php_encoding.c:460).
    Fixed bug GH-16259 (Soap segfault when classmap instantiation fails).
    SPL:
    Fixed bug GH-15918 (Assertion failure in ext/spl/spl_fixedarray.c).
    Standard:
    Fixed bug GH-16053 (Assertion failure in Zend/zend_hash.c).
    Fixed bug GH-15169 (stack overflow when var serialization in ext/standard/var).
    Streams:
    Fixed bugs GH-15908 and GH-15026 (leak / assertion failure in streams.c).
    Fixed bug GH-15980 (Signed integer overflow in main/streams/streams.c).
    TSRM:
    Prevent closing of unrelated handles.</changelog>
  <changelog author="pgajdos@suse.com" date="1732190400">- version update to 8.3.14
    CLI:
    Fixed bug GH-16373 (Shebang is not skipped for router script in cli-server started through shebang).
    Fixed bug GHSA-4w77-75f9-2c8w (Heap-Use-After-Free in sapi_read_post_data Processing in CLI SAPI Interface).
    COM:
    Fixed out of bound writes to SafeArray data.
    Core:
    Fixed bug GH-16168 (php 8.1 and earlier crash immediately when compiled with Xcode 16 clang on macOS 15).
    Fixed bug GH-16371 (Assertion failure in Zend/zend_weakrefs.c:646).
    Fixed bug GH-16515 (Incorrect propagation of ZEND_ACC_RETURN_REFERENCE for call trampoline).
    Fixed bug GH-16509 (Incorrect line number in function redeclaration error).
    Fixed bug GH-16508 (Incorrect line number in inheritance errors of delayed early bound classes).
    Fixed bug GH-16648 (Use-after-free during array sorting).
    Curl:
    Fixed bug GH-16302 (CurlMultiHandle holds a reference to CurlHandle if curl_multi_add_handle fails).
    Date:
    Fixed bug GH-16454 (Unhandled INF in date_sunset() with tiny $utcOffset).
    Fixed bug GH-14732 (date_sun_info() fails for non-finite values).
    DBA:
    Fixed bug GH-16390 (dba_open() can segfault for "pathless" streams).
    DOM:
    Fixed bug GH-16316 (DOMXPath breaks when not initialized properly).
    Add missing hierarchy checks to replaceChild.
    Fixed bug GH-16336 (Attribute intern document mismanagement).
    Fixed bug GH-16338 (Null-dereference in ext/dom/node.c).
    Fixed bug GH-16473 (dom_import_simplexml stub is wrong).
    Fixed bug GH-16533 (Segfault when adding attribute to parent that is not an element).
    Fixed bug GH-16535 (UAF when using document as a child).
    Fixed bug GH-16593 (Assertion failure in DOM-&gt;replaceChild).
    Fixed bug GH-16595 (Another UAF in DOM -&gt; cloneNode).
    EXIF:
    Fixed bug GH-16409 (Segfault in exif_thumbnail when not dealing with a real file).
    FFI:
    Fixed bug GH-16397 (Segmentation fault when comparing FFI object).
    Filter:
    Fixed bug GH-16523 (FILTER_FLAG_HOSTNAME accepts ending hyphen).
    FPM:
    Fixed bug GH-16628 (FPM logs are getting corrupted with this log statement).
    GD:
    Fixed bug GH-16334 (imageaffine overflow on matrix elements).
    Fixed bug GH-16427 (Unchecked libavif return values).
    Fixed bug GH-16559 (UBSan abort in ext/gd/libgd/gd_interpolation.c:1007).
    GMP:
    Fixed floating point exception bug with gmp_pow when using large exposant values. (David Carlier).
    Fixed bug GH-16411 (gmp_export() can cause overflow).
    Fixed bug GH-16501 (gmp_random_bits() can cause overflow).
    Fixed gmp_pow() overflow bug with large base/exponents.
    Fixed segfaults and other issues related to operator overloading with GMP objects.
    LDAP:
    Fixed bug GHSA-g665-fm4p-vhff (OOB access in ldap_escape). (CVE-2024-8932)
    MBstring:
    Fixed bug GH-16361 (mb_substr overflow on start/length arguments).
    MySQLnd:
    Fixed bug GHSA-h35g-vwh6-m678 (Leak partial content of the heap through heap buffer over-read). (CVE-2024-8929)
    Opcache:
    Fixed bug GH-16408 (Array to string conversion warning emitted in optimizer).
    OpenSSL:
    Fixed bug GH-16357 (openssl may modify member types of certificate arrays).
    Fixed bug GH-16433 (Large values for openssl_csr_sign() $days overflow).
    Fix various memory leaks on error conditions in openssl_x509_parse().
    PDO DBLIB:
    Fixed bug GHSA-5hqh-c84r-qjcv (Integer overflow in the dblib quoter causing OOB writes). (CVE-2024-11236)
    PDO Firebird:
    Fixed bug GHSA-5hqh-c84r-qjcv (Integer overflow in the firebird quoter causing OOB writes). (CVE-2024-11236)
    PDO ODBC:
    Fixed bug GH-16450 (PDO_ODBC can inject garbage into field values).
    Phar:
    Fixed bug GH-16406 (Assertion failure in ext/phar/phar.c:2808).
    PHPDBG:
    Fixed bug GH-16174 (Empty string is an invalid expression for ev).
    Reflection:
    Fixed bug GH-16601 (Memory leak in Reflection constructors).
    Session:
    Fixed bug GH-16385 (Unexpected null returned by session_set_cookie_params).
    Fixed bug GH-16290 (overflow on cookie_lifetime ini value).
    SOAP:
    Fixed bug GH-16318 (Recursive array segfaults soap encoding).
    Fixed bug GH-16429 (Segmentation fault access null pointer in SoapClient).
    Sockets:
    Fixed bug with overflow socket_recvfrom $length argument.
    SPL:
    Fixed bug GH-16337 (Use-after-free in SplHeap).
    Fixed bug GH-16464 (Use-after-free in SplDoublyLinkedList::offsetSet()).
    Fixed bug GH-16479 (Use-after-free in SplObjectStorage::setInfo()).
    Fixed bug GH-16478 (Use-after-free in SplFixedArray::unset()).
    Fixed bug GH-16588 (UAF in Observer-&gt;serialize).
    Fix GH-16477 (Segmentation fault when calling __debugInfo() after failed SplFileObject::__constructor).
    Fixed bug GH-16589 (UAF in SplDoublyLinked-&gt;serialize()).
    Fixed bug GH-14687 (segfault on SplObjectIterator instance).
    Fixed bug GH-16604 (Memory leaks in SPL constructors).
    Fixed bug GH-16646 (UAF in ArrayObject::unset() and ArrayObject::exchangeArray()).
    Standard:
    Fixed bug GH-16293 (Failed assertion when throwing in assert() callback with bail enabled).
    Streams:
    Fixed bug GHSA-c5f2-jwm7-mmq2 (Configuring a proxy in a stream context might allow for CRLF injection in URIs). (CVE-2024-11234)
    Fixed bug GHSA-r977-prxv-hc43 (Single byte overread with convert.quoted-printable-decode filter). (CVE-2024-11233)
    SysVMsg:
    Fixed bug GH-16592 (msg_send() crashes when a type does not properly serialized).
    SysVShm:
    Fixed bug GH-16591 (Assertion error in shm_put_var).
    XMLReader:
    Fixed bug GH-16292 (Segmentation fault in ext/xmlreader/php_xmlreader.c).
    Zlib:
    Fixed bug GH-16326 (Memory management is broken for bad dictionaries.) (cmb)</changelog>
</package>
<package pkgid="c4850556d13457fa9ecefdd5a99b387ddf4fd7daeb5cf6d6b3afa531c9b362dc5fd8a8ae76b903e135119f723d6b38ea2486b021241f89a9598fe4975c4a6044" name="apache2-mod_php8" arch="x86_64">
  <version epoch="0" ver="8.3.14" rel="1.0.2.1.sr20241103"/>
  <changelog author="pgajdos@suse.com" date="1695988800">- version update to 8.2.11
  * This is a bug fix release.
  * https://www.php.net/ChangeLog-8.php#8.2.11</changelog>
  <changelog author="pgajdos@suse.com" date="1698321600">- version update to 8.2.12
  * This is a bug fix release.
    https://www.php.net/ChangeLog-8.php#8.2.12</changelog>
  <changelog author="pgajdos@suse.com" date="1700827200">- version update to 8.2.13
  * This is a bug fix release.
    https://www.php.net/ChangeLog-8.php#8.2.13</changelog>
  <changelog author="pgajdos@suse.com" date="1700827201">- version update to 8.3.0
  * https://www.php.net/releases/8.3/en.php
  * Typed class constants
  * Dynamic class constant fetch
  * New #[\Override] attribute
  * Deep-cloning of readonly properties
  * New json_validate() function
  * New Randomizer::getBytesFromString() method
  * New Randomizer::getFloat() and Randomizer::nextFloat() methods
  * New DOMElement::getAttributeNames(),
    DOMElement::insertAdjacentElement(),
    DOMElement::insertAdjacentText(),
    DOMElement::toggleAttribute(),
    DOMNode::contains(), DOMNode::getRootNode(),
    DOMNode::isEqualNode(), DOMNameSpaceNode::contains(), and
    DOMParentNode::replaceChildren() methods.
  * New IntlCalendar::setDate(),
    IntlCalendar::setDateTime(),
    IntlGregorianCalendar::createFromDate(), and
    IntlGregorianCalendar::createFromDateTime() methods.
  * New ldap_connect_wallet(), and ldap_exop_sync() functions.
  * New mb_str_pad() function.
  * New posix_sysconf(), posix_pathconf(), posix_fpathconf(),
    and posix_eaccess() functions.
  * New ReflectionMethod::createFromMethodName() method.
  * New socket_atmark() function.
  * New str_increment(), str_decrement(),
    and stream_context_set_options() functions.
  * New ZipArchive::getArchiveFlag() method.
  * Support for generation EC keys with custom EC parameters in
    OpenSSL extension.
  * New INI setting zend.max_allowed_stack_size to set the maximum
    allowed stack size.
  * php.ini now supports fallback/default value syntax.
  * Anonymous classes can now be readonly.
  * https://www.php.net/ChangeLog-8.php#PHP_8_3
- modified patches
  % php-ar-flags.patch (refreshed)
  % php-build-reproducible-phar.patch (refreshed)
  % php-ini.patch (refreshed)
- modified sources
  % php8.keyring
- deleted patches
  - php-systzdata-v23.patch
- added patches
  + php-systzdata-v24.patch</changelog>
  <changelog author="Manu Maier &lt;mmanu84@outlook.de&gt;" date="1703678400">- version update to 8.3.1
  * This is a bug fix release.
    https://www.php.net/ChangeLog-8.php#8.3.1</changelog>
  <changelog author="pgajdos@suse.com" date="1705579200">- version update to 8.3.2
  * This is a bug fix release.
- modified patches
  % php-ar-flags.patch (refreshed)
  % php-build-reproducible-phar.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1708084800">- version update to 8.3.3
  * A bugfix release.
- modified patches
  % php-build-reproducible-phar.patch (refreshed)</changelog>
  <changelog author="Pedro Monreal &lt;pmonreal@suse.com&gt;" date="1709726400">- Use the system default cipher list instead of hardcoded values
  by using crypto-policies. [bsc#1211301]
  * Use the --with-system-ciphers configure option.</changelog>
  <changelog author="pgajdos@suse.com" date="1710849600">- version update to 8.3.4
  * This is a bug fix release.</changelog>
  <changelog author="pgajdos@suse.com" date="1712923200">- version update to 8.3.6 [bsc#1222857] [bsc#1222858]
    Core:
    Fixed GH-13569 (GC buffer unnecessarily grows up to GC_MAX_BUF_SIZE when scanning WeakMaps).
    Fixed bug GH-13612 (Corrupted memory in destructor with weak references).
    Fixed bug GH-13446 (Restore exception handler after it finishes).
    Fixed bug GH-13784 (AX_GCC_FUNC_ATTRIBUTE failure).
    Fixed bug GH-13670 (GC does not scale well with a lot of objects created in destructor).
    DOM:
    Add some missing ZPP checks.
    Fix potential memory leak in XPath evaluation results.
    FPM:
    Fixed GH-11086 (FPM: config test runs twice in daemonised mode).
    Fix incorrect check in fpm_shm_free().
    GD:
    Fixed bug GH-12019 (add GDLIB_CFLAGS in feature tests).
    Gettext:
    Fixed sigabrt raised with dcgettext/dcngettext calls with gettext 0.22.5 with category set to LC_ALL.
    MySQLnd:
    Fix GH-13452 (Fixed handshake response [mysqlnd]).
    Fix incorrect charset length in check_mb_eucjpms().
    Opcache:
    Fixed GH-13508 (JITed QM_ASSIGN may be optimized out when op1 is null).
    Fixed GH-13712 (Segmentation fault for enabled observers when calling trait method of internal trait when opcache is loaded).
    Random:
    Fixed bug GH-13544 (Pre-PHP 8.2 compatibility for mt_srand with unknown modes).
    Fixed bug GH-13690 (Global Mt19937 is not properly reset in-between requests when MT_RAND_PHP is used).
    Session:
    Fixed bug GH-13680 (Segfault with session_decode and compilation error).
    SPL:
    Fixed bug GH-13685 (Unexpected null pointer in zend_string.h).
    Standard:
    Fixed bug GH-11808 (Live filesystem modified by tests).
    Fixed GH-13402 (Added validation of `\n` in $additional_headers of mail()).
    Fixed bug GH-13203 (file_put_contents fail on strings over 4GB on Windows).
    Fixed bug GHSA-pc52-254m-w9w7 (Command injection via array-ish $command parameter of proc_open). (CVE-2024-1874)
    Fixed bug GHSA-wpj3-hf5j-x4v4 (__Host-/__Secure- cookie bypass due to partial CVE-2022-31629 fix). (CVE-2024-2756)
    Fixed bug GHSA-h746-cjrr-wfmr (password_verify can erroneously return true, opening ATO risk). (CVE-2024-3096)
    Fixed bug GHSA-fjp9-9hwx-59fq (mb_encode_mimeheader runs endlessly for some inputs). (CVE-2024-2757)
    Fix bug GH-13932 (Attempt to fix mbstring on windows build) (msvc).</changelog>
  <changelog author="pgajdos@suse.com" date="1715256000">- version update to 8.3.7
    Core:
    Fixed zend_call_stack build with Linux/uclibc-ng without thread support.
    Fixed bug GH-13772 (Invalid execute_data-&gt;opline pointers in observer fcall handlers when JIT is enabled).
    Fixed bug GH-13931 (Applying zero offset to null pointer in Zend/zend_opcode.c).
    Fixed bug GH-13942 (Align the behavior of zend-max-execution-timers with other timeout implementations).
    Fixed bug GH-14003 (Broken cleanup of unfinished calls with callable convert parameters).
    Fixed bug GH-14013 (Erroneous dnl appended in configure).
    Fixed bug GH-10232 (If autoloading occurs during constant resolution filename and lineno are identified incorrectly).
    Fixed bug GH-13727 (Missing void keyword).
    Fibers:
    Fixed bug GH-13903 (ASAN false positive underflow when executing copy()).
    Fileinfo:
    Fixed bug GH-13795 (Test failing in ext/fileinfo/tests/bug78987.phpt on big-endian PPC).
    FPM:
    Fixed bug GH-13563 (Setting bool values via env in FPM config fails).
    Intl:
    Fixed build for icu 74 and onwards.
    MySQLnd:
    Fix shift out of bounds on 32-bit non-fast-path platforms.
    Opcache:
    Fixed bug GH-13433 (Segmentation Fault in zend_class_init_statics when using opcache.preload).
    Fixed incorrect assumptions across compilation units for static calls.
    OpenSSL:
    Fixed bug GH-10495 (feof on OpenSSL stream hangs indefinitely).
    PDO SQLite:
    Fix GH-13984 (Buffer size is now checked before memcmp).
    Fix GH-13998 (Manage refcount of agg_context-&gt;val correctly).
    Phar:
    Fixed bug GH-13836 (Renaming a file in a Phar to an already existing filename causes a NULL pointer dereference).
    Fixed bug GH-13833 (Applying zero offset to null pointer in zend_hash.c).
    Fix potential NULL pointer dereference before calling EVP_SignInit.
    PHPDBG:
    Fixed bug GH-13827 (Null pointer access of type 'zval' in phpdbg_frame).
    Posix:
    Fix usage of reentrant functions in ext/posix.
    Session:
    Fixed bug GH-13856 (Member access within null pointer of type 'ps_files' in ext/session/mod_files.c).
    Fixed bug GH-13891 (memleak and segfault when using ini_set with session.trans_sid_hosts).
    Fixed buffer _read/_write size limit on windows for the file mode.
    Streams:
    Fixed file_get_contents() on Windows fails with "errno=22 Invalid argument".
    Fixed bug GH-13264 (Part 1 - Memory leak on stream filter failure).
    Fixed bug GH-13860 (Incorrect PHP_STREAM_OPTION_CHECK_LIVENESS case in ext/openssl/xp_ssl.c - causing use of dead socket).
    Fixed bug GH-11678 (Build fails on musl 1.2.4 - lfs64).
    Treewide:
    Fix gcc-14 Wcalloc-transposed-args warnings.</changelog>
  <changelog author="pgajdos@suse.com" date="1717761600">- version update to 8.3.8 [bsc#1226073]
    CGI:
    Fixed buffer limit on Windows, replacing read call usage by _read.
    Fixed bug GHSA-3qgc-jrrr-25jv (Bypass of CVE-2012-1823, Argument Injection in PHP-CGI). (CVE-2024-4577)
    CLI:
    Fixed bug GH-14189 (PHP Interactive shell input state incorrectly handles quoted heredoc literals.).
    Core:
    Fixed bug GH-13970 (Incorrect validation of #[Attribute] flags type for non-compile-time expressions).
    DOM:
    Fix crashes when entity declaration is removed while still having entity references.
    Fix references not handled correctly in C14N.
    Fix crash when calling childNodes next() when iterator is exhausted.
    Fix crash in ParentNode::append() when dealing with a fragment containing text nodes.
    Filter:
    Fixed bug GHSA-w8qr-v226-r27w (Filter bypass in filter_var FILTER_VALIDATE_URL). (CVE-2024-5458)
    FPM:
    Fix bug GH-14175 (Show decimal number instead of scientific notation in systemd status).
    Hash:
    ext/hash: Swap the checking order of `__has_builtin` and `__GNUC__` (Saki Takamachi)
    Intl:
    Fixed build regression on systems without C++17 compilers.
    MySQLnd:
    Fix bug GH-14255 (mysqli_fetch_assoc reports error from nested query).
    Opcache:
    Fixed bug GH-14109 (Fix accidental persisting of internal class constant in shm).
    OpenSSL:
    The openssl_private_decrypt function in PHP and Marvin attack.
    Standard:
    Fixed bug GHSA-9fcc-425m-g385 (Bypass of CVE-2024-1874). (CVE-2024-5585)
    XML:
    Fixed bug GH-14124 (Segmentation fault with XML extension under certain memory limit).
    XMLReader:
    Fixed bug GH-14183 (XMLReader::open() can't be overridden).
- modified patches
  % php-build-reproducible-phar.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1718884800">- drop unmaintained apache-rex usage</changelog>
  <changelog author="pgajdos@suse.com" date="1720353600">- version update to 8.3.9
    Core:
    Fixed bug GH-14315 (Incompatible pointer type warnings).
    Fixed bug GH-12814 (max_execution_time reached too early on MacOS 14 when running on Apple Silicon).
    Fixed bug GH-14387 (Crash when stack walking in destructor of yielded from values during Generator-&gt;throw()).
    Fixed bug GH-14456 (Attempting to initialize class with private constructor calls destructor).
    Fixed bug GH-14510 (memleak due to missing pthread_attr_destroy()-call).
    Fixed bug GH-14549 (Incompatible function pointer type for fclose).
    BCMatch:
    Fixed bug (bcpowmod() with mod = -1 returns 1 when it must be 0).
    Curl:
    Fixed bug GH-14307 (Test curl_basic_024 fails with curl 8.8.0).
    DOM:
    Fixed bug GH-14343 (Memory leak in xml and dom).
    FPM:
    Fixed bug GH-14037 (PHP-FPM ping.path and ping.response config vars are ignored in status pool).
    GD:
    Fix parameter numbers for imagecolorset().
    Intl:
    Fix reference handling in SpoofChecker.
    MySQLnd:
    Partially fix bug GH-10599 (Apache crash on Windows when using a self-referencing anonymous function inside a class with an active mysqli connection).
    Opcache:
    Fixed bug GH-14267 (opcache.jit=off does not allow enabling JIT at runtime).
    Fixed TLS access in JIT on FreeBSD/amd64.
    Fixed bug GH-11188 (Error when building TSRM in ARM64).
    PDO ODBC:
    Fixed bug GH-14367 (incompatible SDWORD type with iODBC).
    PHPDBG:
    Fixed bug GH-13681 (segfault on watchpoint addition failure).
    Soap:
    Fixed bug #47925 (PHPClient can't decompress response).
    Fix missing error restore code.
    Fix memory leak if calling SoapServer::setObject() twice.
    Fix memory leak if calling SoapServer::setClass() twice.
    Fix reading zlib ini settings in ext-soap.
    Fix memory leaks with string function name lookups.
    Fixed bug #69280 (SoapClient classmap doesn't support fully qualified class name).
    Fixed bug #76232 (SoapClient Cookie Header Semicolon).
    Fixed memory leaks when calling SoapFault::__construct() twice.
    Sodium:
    Fix memory leaks in ext/sodium on failure of some functions.
    SPL:
    Fixed bug GH-14290 (Member access within null pointer in extension spl).
    Standard:
    Fixed bug GH-14483 (Fixed off-by-one error in checking length of abstract namespace Unix sockets).
    Streams:
    Fixed bug GH-11078 (PHP Fatal error triggers pointer being freed was not allocated and malloc: double free for ptr errors).</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1723809600">- version update to 8.3.10
    Core:
    Fixed bug GH-13922 (Fixed support for systems with sysconf(_SC_GETPW_R_SIZE_MAX) == -1).
    Fixed bug GH-14626 (Fix is_zend_ptr() for huge blocks).
    Fixed bug GH-14590 (Memory leak in FPM test gh13563-conf-bool-env.phpt.
    Fixed OSS-Fuzz #69765.
    Fixed bug GH-14741 (Segmentation fault in Zend/zend_types.h).
    Fixed bug GH-14969 (Use-after-free in property coercion with __toString()).
    Dom:
    Fixed bug GH-14702 (DOMDocument::xinclude() crash).
    Fileinfo:
    Fixed bug GH-14888 (README.REDIST.BINS refers to non-existing LICENSE).
    Gd:
    ext/gd/tests/gh10614.phpt: skip if no PNG support.
    restored warning instead of fata error.
    LibXML:
    Fixed bug GH-14563 (Build failure with libxml2 v2.13.0).
    Opcache:
    Fixed bug GH-14550 (No warning message when Zend DTrace is enabled that opcache.jit is implictly disabled).
    Output:
    Fixed bug GH-14808 (Unexpected null pointer in Zend/zend_string.h with empty output buffer).
    PDO:
    Fixed bug GH-14712 (Crash with PDORow access to null property).
    Phar:
    Fixed bug GH-14603 (null string from zip entry).
    PHPDBG:
    Fixed bug GH-14596 (crashes with ASAN and ZEND_RC_DEBUG=1).
    Fixed bug GH-14553 (echo output trimmed at NULL byte).
    Shmop:
    Fixed bug GH-14537 (shmop Windows 11 crashes the process).
    SPL:
    Fixed bug GH-14639 (Member access within null pointer in ext/spl/spl_observer.c).
    Standard:
    Fixed bug GH-14775 (range function overflow with negative step argument).
    Fix 32-bit wordwrap test failures.
    Fixed bug GH-14774 (time_sleep_until overflow).
    Streams:
    Fixed bug GH-14930 (Custom stream wrapper dir_readdir output truncated to 255 characters in PHP 8.3).
    Tidy:
    Fix memory leak in tidy_repair_file().
    Treewide:
    Fix compatibility with libxml2 2.13.2.
    XML:
    Move away from to-be-deprecated libxml fields.
    Fixed bug GH-14834 (Error installing PHP when --with-pear is used).</changelog>
  <changelog author="pgajdos@suse.com" date="1725019200">- version update to 8.3.11
    Core:
    Fixed bug GH-15020 (Memory leak in Zend/Optimizer/escape_analysis.c).
    Fixed bug GH-15023 (Memory leak in Zend/zend_ini.c).
    Fixed bug GH-13330 (Append -Wno-implicit-fallthrough flag conditionally).
    Fix uninitialized memory in network.c.
    Fixed bug GH-15108 (Segfault when destroying generator during shutdown).
    Fixed bug GH-15275 (Crash during GC of suspended generator delegate).
    Curl:
    Fixed case when curl_error returns an empty string.
    DOM:
    Fix UAF when removing doctype and using foreach iteration.
    FFI:
    Fixed bug GH-14286 (ffi enum type (when enum has no name) make memory leak).
    Hash:
    Fix crash when converting array data for array in shm in xxh3.
    Intl:
    Fixed bug GH-15087 (IntlChar::foldCase()'s $option is not optional).
    Opcache:
    Fixed bug GH-13817 (Segmentation fault for enabled observers after pass 4).
    Fixed bug GH-13775 (Memory leak possibly related to opcache SHM placement).
    Output:
    Fixed bug GH-15179 (Segmentation fault (null pointer dereference) in ext/standard/url_scanner_ex.re).
    PDO_Firebird:
    Fix bogus fallthrough path in firebird_handle_get_attribute().
    PHPDBG:
    Fixed bug GH-13199 (EOF emits redundant prompt in phpdbg local console mode with libedit/readline).
    Fixed bug GH-15268 (heap buffer overflow in phpdbg (zend_hash_num_elements() Zend/zend_hash.h)).
    Fixed bug GH-15210 use-after-free on watchpoint allocations.
    Soap:
    Fixed bug #55639 (Digest autentication dont work).
    Fix SoapFault property destruction.
    Fixed bug GH-15252 (SOAP XML broken since PHP 8.3.9 when using classmap constructor option).
    Standard:
    Fix passing non-finite timeout values in stream functions.
    Fixed GH-14780 p(f)sockopen timeout overflow.
    Streams:
    Fixed bug GH-15028 (Memory leak in ext/phar/stream.c).
    Fixed bug GH-15034 (Integer overflow on stream_notification_callback byte_max parameter with files bigger than 2GB).
    Reverted fix for GH-14930 (Custom stream wrapper dir_readdir output truncated to 255 characters).
    Tidy:
    Fix memory leaks in ext/tidy basedir restriction code.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1727352000">- version update to 8.3.12 [bsc#1231358], [bsc#1231382], [bsc#1231360]
    CGI:
    Fixed bug GHSA-p99j-rfp4-xqvq (Bypass of CVE-2024-4577, Parameter Injection Vulnerability). (CVE-2024-8926)
    Fixed bug GHSA-94p6-54jq-9mwp (cgi.force_redirect configuration is bypassable due to the environment variable collision). (CVE-2024-8927)
    Core:
    Fixed bug GH-15408 (MSan false-positve on zend_max_execution_timer).
    Fixed bug GH-15515 (Configure error grep illegal option q).
    Fixed bug GH-15514 (Configure error: genif.sh: syntax error).
    Fixed bug GH-15565 (--disable-ipv6 during compilation produces error EAI_SYSTEM not found).
    Fixed bug GH-15587 (CRC32 API build error on arm 32-bit).
    Fixed bug GH-15330 (Do not scan generator frames more than once).
    Fixed uninitialized lineno in constant AST of internal enums.
    Curl:
    Fixed bug GH-15547 (curl_multi_select overflow on timeout argument).
    DOM:
    Fixed bug GH-15551 (Segmentation fault (access null pointer) in ext/dom/xml_common.h).
    Fixed bug GH-15654 (Signed integer overflow in ext/dom/nodelist.c).
    Fileinfo:
    Fixed bug GH-15752 (Incorrect error message for finfo_file with an empty filename argument).
    FPM:
    Fixed bug GHSA-865w-9rf3-2wh5 (Logs from childrens may be altered). (CVE-2024-9026)
    MySQLnd:
    Fixed bug GH-15432 (Heap corruption when querying a vector).
    Opcache:
    Fixed bug GH-15661 (Access null pointer in Zend/Optimizer/zend_inference.c).
    Fixed bug GH-15658 (Segmentation fault in Zend/zend_vm_execute.h).
    SAPI:
    Fixed bug GHSA-9pqp-7h25-4f32 (Erroneous parsing of multipart form data). (CVE-2024-8925)
    Standard:
    Fixed bug GH-15552 (Signed integer overflow in ext/standard/scanf.c).
    Streams:
    Fixed bug GH-15628 (php_stream_memory_get_buffer() not zero-terminated).</changelog>
  <changelog author="Thorsten Kukuk &lt;kukuk@suse.com&gt;" date="1727524800">- Add /srv/www directories to filelist [bsc#1231027]</changelog>
  <changelog author="pgajdos@suse.com" date="1729771200">- version update to 8.3.13
    Calendar:
    Fixed GH-16240: jdtounix overflow on argument value.
    Fixed GH-16241: easter_days/easter_date overflow on year argument.
    Fixed GH-16263: jddayofweek overflow.
    Fixed GH-16234: jewishtojd overflow.
    CLI:
    Fixed bug GH-16137: duplicate http headers when set several times by the client.
    Core:
    Fixed bug GH-16054 (Segmentation fault when resizing hash table iterator list while adding).
    Fixed bug GH-15905 (Assertion failure for TRACK_VARS_SERVER).
    Fixed bug GH-15907 (Failed assertion when promoting Serialize deprecation to exception).
    Fixed bug GH-15851 (Segfault when printing backtrace during cleanup of nested generator frame).
    Fixed bug GH-15866 (Core dumped in Zend/zend_generators.c).
    Fixed bug GH-16188 (Assertion failure in Zend/zend_exceptions.c).
    Fixed bug GH-16233 (Observer segfault when calling user function in internal function via trampoline).
    DOM:
    Fixed bug GH-16039 (Segmentation fault (access null pointer) in ext/dom/parentnode/tree.c).
    Fixed bug GH-16149 (Null pointer dereference in DOMElement-&gt;getAttributeNames()).
    Fixed bug GH-16151 (Assertion failure in ext/dom/parentnode/tree.c).
    Fixed bug GH-16150 (Use after free in php_dom.c).
    Fixed bug GH-16152 (Memory leak in DOMProcessingInstruction/DOMDocument).
    JSON:
    Fixed bug GH-15168 (stack overflow in json_encode()).
    GD:
    Fixed bug GH-16232 (bitshift overflow on wbmp file content reading / fix backport from upstream).
    Fixed bug GH-12264 (overflow/underflow on imagerotate degrees value) (David Carlier)
    Fixed bug GH-16274 (imagescale underflow on RBG channels / fix backport from upstream).
    LDAP:
    Fixed bug GH-16032 (Various NULL pointer dereferencements in ldap_modify_batch()).
    Fixed bug GH-16101 (Segfault in ldap_list(), ldap_read(), and ldap_search() when LDAPs array is not a list).
    Fix GH-16132 (php_ldap_do_modify() attempts to free pointer not allocated by ZMM.).
    Fix GH-16136 (Memory leak in php_ldap_do_modify() when entry is not a proper dictionary).
    MBString:
    Fixed bug GH-16261 (Reference invariant broken in mb_convert_variables()).
    OpenSSL:
    Fixed stub for openssl_csr_new.
    PCRE:
    Fixed bug GH-16189 (underflow on offset argument).
    Fixed bug GH-16184 (UBSan address overflowed in ext/pcre/php_pcre.c).
    PHPDBG:
    Fixed bug GH-15901 (phpdbg: Assertion failure on i funcs).
    Fixed bug GH-16181 (phpdbg: exit in exception handler reports fatal error).
    Reflection:
    Fixed bug GH-16187 (Assertion failure in ext/reflection/php_reflection.c).
    SAPI:
    Fixed bug GH-15395 (php-fpm: zend_mm_heap corrupted with cgi-fcgi request).
    SimpleXML:
    Fixed bug GH-15837 (Segmentation fault in ext/simplexml/simplexml.c).
    Sockets:
    Fixed bug GH-16267 (socket_strerror overflow on errno argument).
    SOAP:
    Fixed bug #73182 (PHP SOAPClient does not support stream context HTTP headers in array form).
    Fixed bug #62900 (Wrong namespace on xsd import error message).
    Fixed bug GH-15711 (SoapClient can't convert BackedEnum to scalar value).
    Fixed bug GH-16237 (Segmentation fault when cloning SoapServer).
    Fix Soap leaking http_msg on error.
    Fixed bug GH-16256 (Assertion failure in ext/soap/php_encoding.c:460).
    Fixed bug GH-16259 (Soap segfault when classmap instantiation fails).
    SPL:
    Fixed bug GH-15918 (Assertion failure in ext/spl/spl_fixedarray.c).
    Standard:
    Fixed bug GH-16053 (Assertion failure in Zend/zend_hash.c).
    Fixed bug GH-15169 (stack overflow when var serialization in ext/standard/var).
    Streams:
    Fixed bugs GH-15908 and GH-15026 (leak / assertion failure in streams.c).
    Fixed bug GH-15980 (Signed integer overflow in main/streams/streams.c).
    TSRM:
    Prevent closing of unrelated handles.</changelog>
  <changelog author="pgajdos@suse.com" date="1732190400">- version update to 8.3.14
    CLI:
    Fixed bug GH-16373 (Shebang is not skipped for router script in cli-server started through shebang).
    Fixed bug GHSA-4w77-75f9-2c8w (Heap-Use-After-Free in sapi_read_post_data Processing in CLI SAPI Interface).
    COM:
    Fixed out of bound writes to SafeArray data.
    Core:
    Fixed bug GH-16168 (php 8.1 and earlier crash immediately when compiled with Xcode 16 clang on macOS 15).
    Fixed bug GH-16371 (Assertion failure in Zend/zend_weakrefs.c:646).
    Fixed bug GH-16515 (Incorrect propagation of ZEND_ACC_RETURN_REFERENCE for call trampoline).
    Fixed bug GH-16509 (Incorrect line number in function redeclaration error).
    Fixed bug GH-16508 (Incorrect line number in inheritance errors of delayed early bound classes).
    Fixed bug GH-16648 (Use-after-free during array sorting).
    Curl:
    Fixed bug GH-16302 (CurlMultiHandle holds a reference to CurlHandle if curl_multi_add_handle fails).
    Date:
    Fixed bug GH-16454 (Unhandled INF in date_sunset() with tiny $utcOffset).
    Fixed bug GH-14732 (date_sun_info() fails for non-finite values).
    DBA:
    Fixed bug GH-16390 (dba_open() can segfault for "pathless" streams).
    DOM:
    Fixed bug GH-16316 (DOMXPath breaks when not initialized properly).
    Add missing hierarchy checks to replaceChild.
    Fixed bug GH-16336 (Attribute intern document mismanagement).
    Fixed bug GH-16338 (Null-dereference in ext/dom/node.c).
    Fixed bug GH-16473 (dom_import_simplexml stub is wrong).
    Fixed bug GH-16533 (Segfault when adding attribute to parent that is not an element).
    Fixed bug GH-16535 (UAF when using document as a child).
    Fixed bug GH-16593 (Assertion failure in DOM-&gt;replaceChild).
    Fixed bug GH-16595 (Another UAF in DOM -&gt; cloneNode).
    EXIF:
    Fixed bug GH-16409 (Segfault in exif_thumbnail when not dealing with a real file).
    FFI:
    Fixed bug GH-16397 (Segmentation fault when comparing FFI object).
    Filter:
    Fixed bug GH-16523 (FILTER_FLAG_HOSTNAME accepts ending hyphen).
    FPM:
    Fixed bug GH-16628 (FPM logs are getting corrupted with this log statement).
    GD:
    Fixed bug GH-16334 (imageaffine overflow on matrix elements).
    Fixed bug GH-16427 (Unchecked libavif return values).
    Fixed bug GH-16559 (UBSan abort in ext/gd/libgd/gd_interpolation.c:1007).
    GMP:
    Fixed floating point exception bug with gmp_pow when using large exposant values. (David Carlier).
    Fixed bug GH-16411 (gmp_export() can cause overflow).
    Fixed bug GH-16501 (gmp_random_bits() can cause overflow).
    Fixed gmp_pow() overflow bug with large base/exponents.
    Fixed segfaults and other issues related to operator overloading with GMP objects.
    LDAP:
    Fixed bug GHSA-g665-fm4p-vhff (OOB access in ldap_escape). (CVE-2024-8932)
    MBstring:
    Fixed bug GH-16361 (mb_substr overflow on start/length arguments).
    MySQLnd:
    Fixed bug GHSA-h35g-vwh6-m678 (Leak partial content of the heap through heap buffer over-read). (CVE-2024-8929)
    Opcache:
    Fixed bug GH-16408 (Array to string conversion warning emitted in optimizer).
    OpenSSL:
    Fixed bug GH-16357 (openssl may modify member types of certificate arrays).
    Fixed bug GH-16433 (Large values for openssl_csr_sign() $days overflow).
    Fix various memory leaks on error conditions in openssl_x509_parse().
    PDO DBLIB:
    Fixed bug GHSA-5hqh-c84r-qjcv (Integer overflow in the dblib quoter causing OOB writes). (CVE-2024-11236)
    PDO Firebird:
    Fixed bug GHSA-5hqh-c84r-qjcv (Integer overflow in the firebird quoter causing OOB writes). (CVE-2024-11236)
    PDO ODBC:
    Fixed bug GH-16450 (PDO_ODBC can inject garbage into field values).
    Phar:
    Fixed bug GH-16406 (Assertion failure in ext/phar/phar.c:2808).
    PHPDBG:
    Fixed bug GH-16174 (Empty string is an invalid expression for ev).
    Reflection:
    Fixed bug GH-16601 (Memory leak in Reflection constructors).
    Session:
    Fixed bug GH-16385 (Unexpected null returned by session_set_cookie_params).
    Fixed bug GH-16290 (overflow on cookie_lifetime ini value).
    SOAP:
    Fixed bug GH-16318 (Recursive array segfaults soap encoding).
    Fixed bug GH-16429 (Segmentation fault access null pointer in SoapClient).
    Sockets:
    Fixed bug with overflow socket_recvfrom $length argument.
    SPL:
    Fixed bug GH-16337 (Use-after-free in SplHeap).
    Fixed bug GH-16464 (Use-after-free in SplDoublyLinkedList::offsetSet()).
    Fixed bug GH-16479 (Use-after-free in SplObjectStorage::setInfo()).
    Fixed bug GH-16478 (Use-after-free in SplFixedArray::unset()).
    Fixed bug GH-16588 (UAF in Observer-&gt;serialize).
    Fix GH-16477 (Segmentation fault when calling __debugInfo() after failed SplFileObject::__constructor).
    Fixed bug GH-16589 (UAF in SplDoublyLinked-&gt;serialize()).
    Fixed bug GH-14687 (segfault on SplObjectIterator instance).
    Fixed bug GH-16604 (Memory leaks in SPL constructors).
    Fixed bug GH-16646 (UAF in ArrayObject::unset() and ArrayObject::exchangeArray()).
    Standard:
    Fixed bug GH-16293 (Failed assertion when throwing in assert() callback with bail enabled).
    Streams:
    Fixed bug GHSA-c5f2-jwm7-mmq2 (Configuring a proxy in a stream context might allow for CRLF injection in URIs). (CVE-2024-11234)
    Fixed bug GHSA-r977-prxv-hc43 (Single byte overread with convert.quoted-printable-decode filter). (CVE-2024-11233)
    SysVMsg:
    Fixed bug GH-16592 (msg_send() crashes when a type does not properly serialized).
    SysVShm:
    Fixed bug GH-16591 (Assertion error in shm_put_var).
    XMLReader:
    Fixed bug GH-16292 (Segmentation fault in ext/xmlreader/php_xmlreader.c).
    Zlib:
    Fixed bug GH-16326 (Memory management is broken for bad dictionaries.) (cmb)</changelog>
</package>
<package pkgid="e8bb435aeff3998c1c853737eb17da91b9b45f6ba507c52797b24345dccb38b185556f435a00663f3cca005c36dd8250f79d91a78a1ed1d547817bcd42522546" name="apache2-mod_php8-debuginfo" arch="i586">
  <version epoch="0" ver="8.3.14" rel="1.0.2.1.sr20241103"/>
  <changelog author="pgajdos@suse.com" date="1695988800">- version update to 8.2.11
  * This is a bug fix release.
  * https://www.php.net/ChangeLog-8.php#8.2.11</changelog>
  <changelog author="pgajdos@suse.com" date="1698321600">- version update to 8.2.12
  * This is a bug fix release.
    https://www.php.net/ChangeLog-8.php#8.2.12</changelog>
  <changelog author="pgajdos@suse.com" date="1700827200">- version update to 8.2.13
  * This is a bug fix release.
    https://www.php.net/ChangeLog-8.php#8.2.13</changelog>
  <changelog author="pgajdos@suse.com" date="1700827201">- version update to 8.3.0
  * https://www.php.net/releases/8.3/en.php
  * Typed class constants
  * Dynamic class constant fetch
  * New #[\Override] attribute
  * Deep-cloning of readonly properties
  * New json_validate() function
  * New Randomizer::getBytesFromString() method
  * New Randomizer::getFloat() and Randomizer::nextFloat() methods
  * New DOMElement::getAttributeNames(),
    DOMElement::insertAdjacentElement(),
    DOMElement::insertAdjacentText(),
    DOMElement::toggleAttribute(),
    DOMNode::contains(), DOMNode::getRootNode(),
    DOMNode::isEqualNode(), DOMNameSpaceNode::contains(), and
    DOMParentNode::replaceChildren() methods.
  * New IntlCalendar::setDate(),
    IntlCalendar::setDateTime(),
    IntlGregorianCalendar::createFromDate(), and
    IntlGregorianCalendar::createFromDateTime() methods.
  * New ldap_connect_wallet(), and ldap_exop_sync() functions.
  * New mb_str_pad() function.
  * New posix_sysconf(), posix_pathconf(), posix_fpathconf(),
    and posix_eaccess() functions.
  * New ReflectionMethod::createFromMethodName() method.
  * New socket_atmark() function.
  * New str_increment(), str_decrement(),
    and stream_context_set_options() functions.
  * New ZipArchive::getArchiveFlag() method.
  * Support for generation EC keys with custom EC parameters in
    OpenSSL extension.
  * New INI setting zend.max_allowed_stack_size to set the maximum
    allowed stack size.
  * php.ini now supports fallback/default value syntax.
  * Anonymous classes can now be readonly.
  * https://www.php.net/ChangeLog-8.php#PHP_8_3
- modified patches
  % php-ar-flags.patch (refreshed)
  % php-build-reproducible-phar.patch (refreshed)
  % php-ini.patch (refreshed)
- modified sources
  % php8.keyring
- deleted patches
  - php-systzdata-v23.patch
- added patches
  + php-systzdata-v24.patch</changelog>
  <changelog author="Manu Maier &lt;mmanu84@outlook.de&gt;" date="1703678400">- version update to 8.3.1
  * This is a bug fix release.
    https://www.php.net/ChangeLog-8.php#8.3.1</changelog>
  <changelog author="pgajdos@suse.com" date="1705579200">- version update to 8.3.2
  * This is a bug fix release.
- modified patches
  % php-ar-flags.patch (refreshed)
  % php-build-reproducible-phar.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1708084800">- version update to 8.3.3
  * A bugfix release.
- modified patches
  % php-build-reproducible-phar.patch (refreshed)</changelog>
  <changelog author="Pedro Monreal &lt;pmonreal@suse.com&gt;" date="1709726400">- Use the system default cipher list instead of hardcoded values
  by using crypto-policies. [bsc#1211301]
  * Use the --with-system-ciphers configure option.</changelog>
  <changelog author="pgajdos@suse.com" date="1710849600">- version update to 8.3.4
  * This is a bug fix release.</changelog>
  <changelog author="pgajdos@suse.com" date="1712923200">- version update to 8.3.6 [bsc#1222857] [bsc#1222858]
    Core:
    Fixed GH-13569 (GC buffer unnecessarily grows up to GC_MAX_BUF_SIZE when scanning WeakMaps).
    Fixed bug GH-13612 (Corrupted memory in destructor with weak references).
    Fixed bug GH-13446 (Restore exception handler after it finishes).
    Fixed bug GH-13784 (AX_GCC_FUNC_ATTRIBUTE failure).
    Fixed bug GH-13670 (GC does not scale well with a lot of objects created in destructor).
    DOM:
    Add some missing ZPP checks.
    Fix potential memory leak in XPath evaluation results.
    FPM:
    Fixed GH-11086 (FPM: config test runs twice in daemonised mode).
    Fix incorrect check in fpm_shm_free().
    GD:
    Fixed bug GH-12019 (add GDLIB_CFLAGS in feature tests).
    Gettext:
    Fixed sigabrt raised with dcgettext/dcngettext calls with gettext 0.22.5 with category set to LC_ALL.
    MySQLnd:
    Fix GH-13452 (Fixed handshake response [mysqlnd]).
    Fix incorrect charset length in check_mb_eucjpms().
    Opcache:
    Fixed GH-13508 (JITed QM_ASSIGN may be optimized out when op1 is null).
    Fixed GH-13712 (Segmentation fault for enabled observers when calling trait method of internal trait when opcache is loaded).
    Random:
    Fixed bug GH-13544 (Pre-PHP 8.2 compatibility for mt_srand with unknown modes).
    Fixed bug GH-13690 (Global Mt19937 is not properly reset in-between requests when MT_RAND_PHP is used).
    Session:
    Fixed bug GH-13680 (Segfault with session_decode and compilation error).
    SPL:
    Fixed bug GH-13685 (Unexpected null pointer in zend_string.h).
    Standard:
    Fixed bug GH-11808 (Live filesystem modified by tests).
    Fixed GH-13402 (Added validation of `\n` in $additional_headers of mail()).
    Fixed bug GH-13203 (file_put_contents fail on strings over 4GB on Windows).
    Fixed bug GHSA-pc52-254m-w9w7 (Command injection via array-ish $command parameter of proc_open). (CVE-2024-1874)
    Fixed bug GHSA-wpj3-hf5j-x4v4 (__Host-/__Secure- cookie bypass due to partial CVE-2022-31629 fix). (CVE-2024-2756)
    Fixed bug GHSA-h746-cjrr-wfmr (password_verify can erroneously return true, opening ATO risk). (CVE-2024-3096)
    Fixed bug GHSA-fjp9-9hwx-59fq (mb_encode_mimeheader runs endlessly for some inputs). (CVE-2024-2757)
    Fix bug GH-13932 (Attempt to fix mbstring on windows build) (msvc).</changelog>
  <changelog author="pgajdos@suse.com" date="1715256000">- version update to 8.3.7
    Core:
    Fixed zend_call_stack build with Linux/uclibc-ng without thread support.
    Fixed bug GH-13772 (Invalid execute_data-&gt;opline pointers in observer fcall handlers when JIT is enabled).
    Fixed bug GH-13931 (Applying zero offset to null pointer in Zend/zend_opcode.c).
    Fixed bug GH-13942 (Align the behavior of zend-max-execution-timers with other timeout implementations).
    Fixed bug GH-14003 (Broken cleanup of unfinished calls with callable convert parameters).
    Fixed bug GH-14013 (Erroneous dnl appended in configure).
    Fixed bug GH-10232 (If autoloading occurs during constant resolution filename and lineno are identified incorrectly).
    Fixed bug GH-13727 (Missing void keyword).
    Fibers:
    Fixed bug GH-13903 (ASAN false positive underflow when executing copy()).
    Fileinfo:
    Fixed bug GH-13795 (Test failing in ext/fileinfo/tests/bug78987.phpt on big-endian PPC).
    FPM:
    Fixed bug GH-13563 (Setting bool values via env in FPM config fails).
    Intl:
    Fixed build for icu 74 and onwards.
    MySQLnd:
    Fix shift out of bounds on 32-bit non-fast-path platforms.
    Opcache:
    Fixed bug GH-13433 (Segmentation Fault in zend_class_init_statics when using opcache.preload).
    Fixed incorrect assumptions across compilation units for static calls.
    OpenSSL:
    Fixed bug GH-10495 (feof on OpenSSL stream hangs indefinitely).
    PDO SQLite:
    Fix GH-13984 (Buffer size is now checked before memcmp).
    Fix GH-13998 (Manage refcount of agg_context-&gt;val correctly).
    Phar:
    Fixed bug GH-13836 (Renaming a file in a Phar to an already existing filename causes a NULL pointer dereference).
    Fixed bug GH-13833 (Applying zero offset to null pointer in zend_hash.c).
    Fix potential NULL pointer dereference before calling EVP_SignInit.
    PHPDBG:
    Fixed bug GH-13827 (Null pointer access of type 'zval' in phpdbg_frame).
    Posix:
    Fix usage of reentrant functions in ext/posix.
    Session:
    Fixed bug GH-13856 (Member access within null pointer of type 'ps_files' in ext/session/mod_files.c).
    Fixed bug GH-13891 (memleak and segfault when using ini_set with session.trans_sid_hosts).
    Fixed buffer _read/_write size limit on windows for the file mode.
    Streams:
    Fixed file_get_contents() on Windows fails with "errno=22 Invalid argument".
    Fixed bug GH-13264 (Part 1 - Memory leak on stream filter failure).
    Fixed bug GH-13860 (Incorrect PHP_STREAM_OPTION_CHECK_LIVENESS case in ext/openssl/xp_ssl.c - causing use of dead socket).
    Fixed bug GH-11678 (Build fails on musl 1.2.4 - lfs64).
    Treewide:
    Fix gcc-14 Wcalloc-transposed-args warnings.</changelog>
  <changelog author="pgajdos@suse.com" date="1717761600">- version update to 8.3.8 [bsc#1226073]
    CGI:
    Fixed buffer limit on Windows, replacing read call usage by _read.
    Fixed bug GHSA-3qgc-jrrr-25jv (Bypass of CVE-2012-1823, Argument Injection in PHP-CGI). (CVE-2024-4577)
    CLI:
    Fixed bug GH-14189 (PHP Interactive shell input state incorrectly handles quoted heredoc literals.).
    Core:
    Fixed bug GH-13970 (Incorrect validation of #[Attribute] flags type for non-compile-time expressions).
    DOM:
    Fix crashes when entity declaration is removed while still having entity references.
    Fix references not handled correctly in C14N.
    Fix crash when calling childNodes next() when iterator is exhausted.
    Fix crash in ParentNode::append() when dealing with a fragment containing text nodes.
    Filter:
    Fixed bug GHSA-w8qr-v226-r27w (Filter bypass in filter_var FILTER_VALIDATE_URL). (CVE-2024-5458)
    FPM:
    Fix bug GH-14175 (Show decimal number instead of scientific notation in systemd status).
    Hash:
    ext/hash: Swap the checking order of `__has_builtin` and `__GNUC__` (Saki Takamachi)
    Intl:
    Fixed build regression on systems without C++17 compilers.
    MySQLnd:
    Fix bug GH-14255 (mysqli_fetch_assoc reports error from nested query).
    Opcache:
    Fixed bug GH-14109 (Fix accidental persisting of internal class constant in shm).
    OpenSSL:
    The openssl_private_decrypt function in PHP and Marvin attack.
    Standard:
    Fixed bug GHSA-9fcc-425m-g385 (Bypass of CVE-2024-1874). (CVE-2024-5585)
    XML:
    Fixed bug GH-14124 (Segmentation fault with XML extension under certain memory limit).
    XMLReader:
    Fixed bug GH-14183 (XMLReader::open() can't be overridden).
- modified patches
  % php-build-reproducible-phar.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1718884800">- drop unmaintained apache-rex usage</changelog>
  <changelog author="pgajdos@suse.com" date="1720353600">- version update to 8.3.9
    Core:
    Fixed bug GH-14315 (Incompatible pointer type warnings).
    Fixed bug GH-12814 (max_execution_time reached too early on MacOS 14 when running on Apple Silicon).
    Fixed bug GH-14387 (Crash when stack walking in destructor of yielded from values during Generator-&gt;throw()).
    Fixed bug GH-14456 (Attempting to initialize class with private constructor calls destructor).
    Fixed bug GH-14510 (memleak due to missing pthread_attr_destroy()-call).
    Fixed bug GH-14549 (Incompatible function pointer type for fclose).
    BCMatch:
    Fixed bug (bcpowmod() with mod = -1 returns 1 when it must be 0).
    Curl:
    Fixed bug GH-14307 (Test curl_basic_024 fails with curl 8.8.0).
    DOM:
    Fixed bug GH-14343 (Memory leak in xml and dom).
    FPM:
    Fixed bug GH-14037 (PHP-FPM ping.path and ping.response config vars are ignored in status pool).
    GD:
    Fix parameter numbers for imagecolorset().
    Intl:
    Fix reference handling in SpoofChecker.
    MySQLnd:
    Partially fix bug GH-10599 (Apache crash on Windows when using a self-referencing anonymous function inside a class with an active mysqli connection).
    Opcache:
    Fixed bug GH-14267 (opcache.jit=off does not allow enabling JIT at runtime).
    Fixed TLS access in JIT on FreeBSD/amd64.
    Fixed bug GH-11188 (Error when building TSRM in ARM64).
    PDO ODBC:
    Fixed bug GH-14367 (incompatible SDWORD type with iODBC).
    PHPDBG:
    Fixed bug GH-13681 (segfault on watchpoint addition failure).
    Soap:
    Fixed bug #47925 (PHPClient can't decompress response).
    Fix missing error restore code.
    Fix memory leak if calling SoapServer::setObject() twice.
    Fix memory leak if calling SoapServer::setClass() twice.
    Fix reading zlib ini settings in ext-soap.
    Fix memory leaks with string function name lookups.
    Fixed bug #69280 (SoapClient classmap doesn't support fully qualified class name).
    Fixed bug #76232 (SoapClient Cookie Header Semicolon).
    Fixed memory leaks when calling SoapFault::__construct() twice.
    Sodium:
    Fix memory leaks in ext/sodium on failure of some functions.
    SPL:
    Fixed bug GH-14290 (Member access within null pointer in extension spl).
    Standard:
    Fixed bug GH-14483 (Fixed off-by-one error in checking length of abstract namespace Unix sockets).
    Streams:
    Fixed bug GH-11078 (PHP Fatal error triggers pointer being freed was not allocated and malloc: double free for ptr errors).</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1723809600">- version update to 8.3.10
    Core:
    Fixed bug GH-13922 (Fixed support for systems with sysconf(_SC_GETPW_R_SIZE_MAX) == -1).
    Fixed bug GH-14626 (Fix is_zend_ptr() for huge blocks).
    Fixed bug GH-14590 (Memory leak in FPM test gh13563-conf-bool-env.phpt.
    Fixed OSS-Fuzz #69765.
    Fixed bug GH-14741 (Segmentation fault in Zend/zend_types.h).
    Fixed bug GH-14969 (Use-after-free in property coercion with __toString()).
    Dom:
    Fixed bug GH-14702 (DOMDocument::xinclude() crash).
    Fileinfo:
    Fixed bug GH-14888 (README.REDIST.BINS refers to non-existing LICENSE).
    Gd:
    ext/gd/tests/gh10614.phpt: skip if no PNG support.
    restored warning instead of fata error.
    LibXML:
    Fixed bug GH-14563 (Build failure with libxml2 v2.13.0).
    Opcache:
    Fixed bug GH-14550 (No warning message when Zend DTrace is enabled that opcache.jit is implictly disabled).
    Output:
    Fixed bug GH-14808 (Unexpected null pointer in Zend/zend_string.h with empty output buffer).
    PDO:
    Fixed bug GH-14712 (Crash with PDORow access to null property).
    Phar:
    Fixed bug GH-14603 (null string from zip entry).
    PHPDBG:
    Fixed bug GH-14596 (crashes with ASAN and ZEND_RC_DEBUG=1).
    Fixed bug GH-14553 (echo output trimmed at NULL byte).
    Shmop:
    Fixed bug GH-14537 (shmop Windows 11 crashes the process).
    SPL:
    Fixed bug GH-14639 (Member access within null pointer in ext/spl/spl_observer.c).
    Standard:
    Fixed bug GH-14775 (range function overflow with negative step argument).
    Fix 32-bit wordwrap test failures.
    Fixed bug GH-14774 (time_sleep_until overflow).
    Streams:
    Fixed bug GH-14930 (Custom stream wrapper dir_readdir output truncated to 255 characters in PHP 8.3).
    Tidy:
    Fix memory leak in tidy_repair_file().
    Treewide:
    Fix compatibility with libxml2 2.13.2.
    XML:
    Move away from to-be-deprecated libxml fields.
    Fixed bug GH-14834 (Error installing PHP when --with-pear is used).</changelog>
  <changelog author="pgajdos@suse.com" date="1725019200">- version update to 8.3.11
    Core:
    Fixed bug GH-15020 (Memory leak in Zend/Optimizer/escape_analysis.c).
    Fixed bug GH-15023 (Memory leak in Zend/zend_ini.c).
    Fixed bug GH-13330 (Append -Wno-implicit-fallthrough flag conditionally).
    Fix uninitialized memory in network.c.
    Fixed bug GH-15108 (Segfault when destroying generator during shutdown).
    Fixed bug GH-15275 (Crash during GC of suspended generator delegate).
    Curl:
    Fixed case when curl_error returns an empty string.
    DOM:
    Fix UAF when removing doctype and using foreach iteration.
    FFI:
    Fixed bug GH-14286 (ffi enum type (when enum has no name) make memory leak).
    Hash:
    Fix crash when converting array data for array in shm in xxh3.
    Intl:
    Fixed bug GH-15087 (IntlChar::foldCase()'s $option is not optional).
    Opcache:
    Fixed bug GH-13817 (Segmentation fault for enabled observers after pass 4).
    Fixed bug GH-13775 (Memory leak possibly related to opcache SHM placement).
    Output:
    Fixed bug GH-15179 (Segmentation fault (null pointer dereference) in ext/standard/url_scanner_ex.re).
    PDO_Firebird:
    Fix bogus fallthrough path in firebird_handle_get_attribute().
    PHPDBG:
    Fixed bug GH-13199 (EOF emits redundant prompt in phpdbg local console mode with libedit/readline).
    Fixed bug GH-15268 (heap buffer overflow in phpdbg (zend_hash_num_elements() Zend/zend_hash.h)).
    Fixed bug GH-15210 use-after-free on watchpoint allocations.
    Soap:
    Fixed bug #55639 (Digest autentication dont work).
    Fix SoapFault property destruction.
    Fixed bug GH-15252 (SOAP XML broken since PHP 8.3.9 when using classmap constructor option).
    Standard:
    Fix passing non-finite timeout values in stream functions.
    Fixed GH-14780 p(f)sockopen timeout overflow.
    Streams:
    Fixed bug GH-15028 (Memory leak in ext/phar/stream.c).
    Fixed bug GH-15034 (Integer overflow on stream_notification_callback byte_max parameter with files bigger than 2GB).
    Reverted fix for GH-14930 (Custom stream wrapper dir_readdir output truncated to 255 characters).
    Tidy:
    Fix memory leaks in ext/tidy basedir restriction code.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1727352000">- version update to 8.3.12 [bsc#1231358], [bsc#1231382], [bsc#1231360]
    CGI:
    Fixed bug GHSA-p99j-rfp4-xqvq (Bypass of CVE-2024-4577, Parameter Injection Vulnerability). (CVE-2024-8926)
    Fixed bug GHSA-94p6-54jq-9mwp (cgi.force_redirect configuration is bypassable due to the environment variable collision). (CVE-2024-8927)
    Core:
    Fixed bug GH-15408 (MSan false-positve on zend_max_execution_timer).
    Fixed bug GH-15515 (Configure error grep illegal option q).
    Fixed bug GH-15514 (Configure error: genif.sh: syntax error).
    Fixed bug GH-15565 (--disable-ipv6 during compilation produces error EAI_SYSTEM not found).
    Fixed bug GH-15587 (CRC32 API build error on arm 32-bit).
    Fixed bug GH-15330 (Do not scan generator frames more than once).
    Fixed uninitialized lineno in constant AST of internal enums.
    Curl:
    Fixed bug GH-15547 (curl_multi_select overflow on timeout argument).
    DOM:
    Fixed bug GH-15551 (Segmentation fault (access null pointer) in ext/dom/xml_common.h).
    Fixed bug GH-15654 (Signed integer overflow in ext/dom/nodelist.c).
    Fileinfo:
    Fixed bug GH-15752 (Incorrect error message for finfo_file with an empty filename argument).
    FPM:
    Fixed bug GHSA-865w-9rf3-2wh5 (Logs from childrens may be altered). (CVE-2024-9026)
    MySQLnd:
    Fixed bug GH-15432 (Heap corruption when querying a vector).
    Opcache:
    Fixed bug GH-15661 (Access null pointer in Zend/Optimizer/zend_inference.c).
    Fixed bug GH-15658 (Segmentation fault in Zend/zend_vm_execute.h).
    SAPI:
    Fixed bug GHSA-9pqp-7h25-4f32 (Erroneous parsing of multipart form data). (CVE-2024-8925)
    Standard:
    Fixed bug GH-15552 (Signed integer overflow in ext/standard/scanf.c).
    Streams:
    Fixed bug GH-15628 (php_stream_memory_get_buffer() not zero-terminated).</changelog>
  <changelog author="Thorsten Kukuk &lt;kukuk@suse.com&gt;" date="1727524800">- Add /srv/www directories to filelist [bsc#1231027]</changelog>
  <changelog author="pgajdos@suse.com" date="1729771200">- version update to 8.3.13
    Calendar:
    Fixed GH-16240: jdtounix overflow on argument value.
    Fixed GH-16241: easter_days/easter_date overflow on year argument.
    Fixed GH-16263: jddayofweek overflow.
    Fixed GH-16234: jewishtojd overflow.
    CLI:
    Fixed bug GH-16137: duplicate http headers when set several times by the client.
    Core:
    Fixed bug GH-16054 (Segmentation fault when resizing hash table iterator list while adding).
    Fixed bug GH-15905 (Assertion failure for TRACK_VARS_SERVER).
    Fixed bug GH-15907 (Failed assertion when promoting Serialize deprecation to exception).
    Fixed bug GH-15851 (Segfault when printing backtrace during cleanup of nested generator frame).
    Fixed bug GH-15866 (Core dumped in Zend/zend_generators.c).
    Fixed bug GH-16188 (Assertion failure in Zend/zend_exceptions.c).
    Fixed bug GH-16233 (Observer segfault when calling user function in internal function via trampoline).
    DOM:
    Fixed bug GH-16039 (Segmentation fault (access null pointer) in ext/dom/parentnode/tree.c).
    Fixed bug GH-16149 (Null pointer dereference in DOMElement-&gt;getAttributeNames()).
    Fixed bug GH-16151 (Assertion failure in ext/dom/parentnode/tree.c).
    Fixed bug GH-16150 (Use after free in php_dom.c).
    Fixed bug GH-16152 (Memory leak in DOMProcessingInstruction/DOMDocument).
    JSON:
    Fixed bug GH-15168 (stack overflow in json_encode()).
    GD:
    Fixed bug GH-16232 (bitshift overflow on wbmp file content reading / fix backport from upstream).
    Fixed bug GH-12264 (overflow/underflow on imagerotate degrees value) (David Carlier)
    Fixed bug GH-16274 (imagescale underflow on RBG channels / fix backport from upstream).
    LDAP:
    Fixed bug GH-16032 (Various NULL pointer dereferencements in ldap_modify_batch()).
    Fixed bug GH-16101 (Segfault in ldap_list(), ldap_read(), and ldap_search() when LDAPs array is not a list).
    Fix GH-16132 (php_ldap_do_modify() attempts to free pointer not allocated by ZMM.).
    Fix GH-16136 (Memory leak in php_ldap_do_modify() when entry is not a proper dictionary).
    MBString:
    Fixed bug GH-16261 (Reference invariant broken in mb_convert_variables()).
    OpenSSL:
    Fixed stub for openssl_csr_new.
    PCRE:
    Fixed bug GH-16189 (underflow on offset argument).
    Fixed bug GH-16184 (UBSan address overflowed in ext/pcre/php_pcre.c).
    PHPDBG:
    Fixed bug GH-15901 (phpdbg: Assertion failure on i funcs).
    Fixed bug GH-16181 (phpdbg: exit in exception handler reports fatal error).
    Reflection:
    Fixed bug GH-16187 (Assertion failure in ext/reflection/php_reflection.c).
    SAPI:
    Fixed bug GH-15395 (php-fpm: zend_mm_heap corrupted with cgi-fcgi request).
    SimpleXML:
    Fixed bug GH-15837 (Segmentation fault in ext/simplexml/simplexml.c).
    Sockets:
    Fixed bug GH-16267 (socket_strerror overflow on errno argument).
    SOAP:
    Fixed bug #73182 (PHP SOAPClient does not support stream context HTTP headers in array form).
    Fixed bug #62900 (Wrong namespace on xsd import error message).
    Fixed bug GH-15711 (SoapClient can't convert BackedEnum to scalar value).
    Fixed bug GH-16237 (Segmentation fault when cloning SoapServer).
    Fix Soap leaking http_msg on error.
    Fixed bug GH-16256 (Assertion failure in ext/soap/php_encoding.c:460).
    Fixed bug GH-16259 (Soap segfault when classmap instantiation fails).
    SPL:
    Fixed bug GH-15918 (Assertion failure in ext/spl/spl_fixedarray.c).
    Standard:
    Fixed bug GH-16053 (Assertion failure in Zend/zend_hash.c).
    Fixed bug GH-15169 (stack overflow when var serialization in ext/standard/var).
    Streams:
    Fixed bugs GH-15908 and GH-15026 (leak / assertion failure in streams.c).
    Fixed bug GH-15980 (Signed integer overflow in main/streams/streams.c).
    TSRM:
    Prevent closing of unrelated handles.</changelog>
  <changelog author="pgajdos@suse.com" date="1732190400">- version update to 8.3.14
    CLI:
    Fixed bug GH-16373 (Shebang is not skipped for router script in cli-server started through shebang).
    Fixed bug GHSA-4w77-75f9-2c8w (Heap-Use-After-Free in sapi_read_post_data Processing in CLI SAPI Interface).
    COM:
    Fixed out of bound writes to SafeArray data.
    Core:
    Fixed bug GH-16168 (php 8.1 and earlier crash immediately when compiled with Xcode 16 clang on macOS 15).
    Fixed bug GH-16371 (Assertion failure in Zend/zend_weakrefs.c:646).
    Fixed bug GH-16515 (Incorrect propagation of ZEND_ACC_RETURN_REFERENCE for call trampoline).
    Fixed bug GH-16509 (Incorrect line number in function redeclaration error).
    Fixed bug GH-16508 (Incorrect line number in inheritance errors of delayed early bound classes).
    Fixed bug GH-16648 (Use-after-free during array sorting).
    Curl:
    Fixed bug GH-16302 (CurlMultiHandle holds a reference to CurlHandle if curl_multi_add_handle fails).
    Date:
    Fixed bug GH-16454 (Unhandled INF in date_sunset() with tiny $utcOffset).
    Fixed bug GH-14732 (date_sun_info() fails for non-finite values).
    DBA:
    Fixed bug GH-16390 (dba_open() can segfault for "pathless" streams).
    DOM:
    Fixed bug GH-16316 (DOMXPath breaks when not initialized properly).
    Add missing hierarchy checks to replaceChild.
    Fixed bug GH-16336 (Attribute intern document mismanagement).
    Fixed bug GH-16338 (Null-dereference in ext/dom/node.c).
    Fixed bug GH-16473 (dom_import_simplexml stub is wrong).
    Fixed bug GH-16533 (Segfault when adding attribute to parent that is not an element).
    Fixed bug GH-16535 (UAF when using document as a child).
    Fixed bug GH-16593 (Assertion failure in DOM-&gt;replaceChild).
    Fixed bug GH-16595 (Another UAF in DOM -&gt; cloneNode).
    EXIF:
    Fixed bug GH-16409 (Segfault in exif_thumbnail when not dealing with a real file).
    FFI:
    Fixed bug GH-16397 (Segmentation fault when comparing FFI object).
    Filter:
    Fixed bug GH-16523 (FILTER_FLAG_HOSTNAME accepts ending hyphen).
    FPM:
    Fixed bug GH-16628 (FPM logs are getting corrupted with this log statement).
    GD:
    Fixed bug GH-16334 (imageaffine overflow on matrix elements).
    Fixed bug GH-16427 (Unchecked libavif return values).
    Fixed bug GH-16559 (UBSan abort in ext/gd/libgd/gd_interpolation.c:1007).
    GMP:
    Fixed floating point exception bug with gmp_pow when using large exposant values. (David Carlier).
    Fixed bug GH-16411 (gmp_export() can cause overflow).
    Fixed bug GH-16501 (gmp_random_bits() can cause overflow).
    Fixed gmp_pow() overflow bug with large base/exponents.
    Fixed segfaults and other issues related to operator overloading with GMP objects.
    LDAP:
    Fixed bug GHSA-g665-fm4p-vhff (OOB access in ldap_escape). (CVE-2024-8932)
    MBstring:
    Fixed bug GH-16361 (mb_substr overflow on start/length arguments).
    MySQLnd:
    Fixed bug GHSA-h35g-vwh6-m678 (Leak partial content of the heap through heap buffer over-read). (CVE-2024-8929)
    Opcache:
    Fixed bug GH-16408 (Array to string conversion warning emitted in optimizer).
    OpenSSL:
    Fixed bug GH-16357 (openssl may modify member types of certificate arrays).
    Fixed bug GH-16433 (Large values for openssl_csr_sign() $days overflow).
    Fix various memory leaks on error conditions in openssl_x509_parse().
    PDO DBLIB:
    Fixed bug GHSA-5hqh-c84r-qjcv (Integer overflow in the dblib quoter causing OOB writes). (CVE-2024-11236)
    PDO Firebird:
    Fixed bug GHSA-5hqh-c84r-qjcv (Integer overflow in the firebird quoter causing OOB writes). (CVE-2024-11236)
    PDO ODBC:
    Fixed bug GH-16450 (PDO_ODBC can inject garbage into field values).
    Phar:
    Fixed bug GH-16406 (Assertion failure in ext/phar/phar.c:2808).
    PHPDBG:
    Fixed bug GH-16174 (Empty string is an invalid expression for ev).
    Reflection:
    Fixed bug GH-16601 (Memory leak in Reflection constructors).
    Session:
    Fixed bug GH-16385 (Unexpected null returned by session_set_cookie_params).
    Fixed bug GH-16290 (overflow on cookie_lifetime ini value).
    SOAP:
    Fixed bug GH-16318 (Recursive array segfaults soap encoding).
    Fixed bug GH-16429 (Segmentation fault access null pointer in SoapClient).
    Sockets:
    Fixed bug with overflow socket_recvfrom $length argument.
    SPL:
    Fixed bug GH-16337 (Use-after-free in SplHeap).
    Fixed bug GH-16464 (Use-after-free in SplDoublyLinkedList::offsetSet()).
    Fixed bug GH-16479 (Use-after-free in SplObjectStorage::setInfo()).
    Fixed bug GH-16478 (Use-after-free in SplFixedArray::unset()).
    Fixed bug GH-16588 (UAF in Observer-&gt;serialize).
    Fix GH-16477 (Segmentation fault when calling __debugInfo() after failed SplFileObject::__constructor).
    Fixed bug GH-16589 (UAF in SplDoublyLinked-&gt;serialize()).
    Fixed bug GH-14687 (segfault on SplObjectIterator instance).
    Fixed bug GH-16604 (Memory leaks in SPL constructors).
    Fixed bug GH-16646 (UAF in ArrayObject::unset() and ArrayObject::exchangeArray()).
    Standard:
    Fixed bug GH-16293 (Failed assertion when throwing in assert() callback with bail enabled).
    Streams:
    Fixed bug GHSA-c5f2-jwm7-mmq2 (Configuring a proxy in a stream context might allow for CRLF injection in URIs). (CVE-2024-11234)
    Fixed bug GHSA-r977-prxv-hc43 (Single byte overread with convert.quoted-printable-decode filter). (CVE-2024-11233)
    SysVMsg:
    Fixed bug GH-16592 (msg_send() crashes when a type does not properly serialized).
    SysVShm:
    Fixed bug GH-16591 (Assertion error in shm_put_var).
    XMLReader:
    Fixed bug GH-16292 (Segmentation fault in ext/xmlreader/php_xmlreader.c).
    Zlib:
    Fixed bug GH-16326 (Memory management is broken for bad dictionaries.) (cmb)</changelog>
</package>
<package pkgid="f189b91868df557e32d175f9eecbb048eb8589e3abceddd673b62f75d143a169992faacf088f20555eefcc3c9b8d79db83fcf0fec9928a02436f58ab0838e491" name="apache2-mod_php8-debuginfo" arch="x86_64">
  <version epoch="0" ver="8.3.14" rel="1.0.2.1.sr20241103"/>
  <changelog author="pgajdos@suse.com" date="1695988800">- version update to 8.2.11
  * This is a bug fix release.
  * https://www.php.net/ChangeLog-8.php#8.2.11</changelog>
  <changelog author="pgajdos@suse.com" date="1698321600">- version update to 8.2.12
  * This is a bug fix release.
    https://www.php.net/ChangeLog-8.php#8.2.12</changelog>
  <changelog author="pgajdos@suse.com" date="1700827200">- version update to 8.2.13
  * This is a bug fix release.
    https://www.php.net/ChangeLog-8.php#8.2.13</changelog>
  <changelog author="pgajdos@suse.com" date="1700827201">- version update to 8.3.0
  * https://www.php.net/releases/8.3/en.php
  * Typed class constants
  * Dynamic class constant fetch
  * New #[\Override] attribute
  * Deep-cloning of readonly properties
  * New json_validate() function
  * New Randomizer::getBytesFromString() method
  * New Randomizer::getFloat() and Randomizer::nextFloat() methods
  * New DOMElement::getAttributeNames(),
    DOMElement::insertAdjacentElement(),
    DOMElement::insertAdjacentText(),
    DOMElement::toggleAttribute(),
    DOMNode::contains(), DOMNode::getRootNode(),
    DOMNode::isEqualNode(), DOMNameSpaceNode::contains(), and
    DOMParentNode::replaceChildren() methods.
  * New IntlCalendar::setDate(),
    IntlCalendar::setDateTime(),
    IntlGregorianCalendar::createFromDate(), and
    IntlGregorianCalendar::createFromDateTime() methods.
  * New ldap_connect_wallet(), and ldap_exop_sync() functions.
  * New mb_str_pad() function.
  * New posix_sysconf(), posix_pathconf(), posix_fpathconf(),
    and posix_eaccess() functions.
  * New ReflectionMethod::createFromMethodName() method.
  * New socket_atmark() function.
  * New str_increment(), str_decrement(),
    and stream_context_set_options() functions.
  * New ZipArchive::getArchiveFlag() method.
  * Support for generation EC keys with custom EC parameters in
    OpenSSL extension.
  * New INI setting zend.max_allowed_stack_size to set the maximum
    allowed stack size.
  * php.ini now supports fallback/default value syntax.
  * Anonymous classes can now be readonly.
  * https://www.php.net/ChangeLog-8.php#PHP_8_3
- modified patches
  % php-ar-flags.patch (refreshed)
  % php-build-reproducible-phar.patch (refreshed)
  % php-ini.patch (refreshed)
- modified sources
  % php8.keyring
- deleted patches
  - php-systzdata-v23.patch
- added patches
  + php-systzdata-v24.patch</changelog>
  <changelog author="Manu Maier &lt;mmanu84@outlook.de&gt;" date="1703678400">- version update to 8.3.1
  * This is a bug fix release.
    https://www.php.net/ChangeLog-8.php#8.3.1</changelog>
  <changelog author="pgajdos@suse.com" date="1705579200">- version update to 8.3.2
  * This is a bug fix release.
- modified patches
  % php-ar-flags.patch (refreshed)
  % php-build-reproducible-phar.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1708084800">- version update to 8.3.3
  * A bugfix release.
- modified patches
  % php-build-reproducible-phar.patch (refreshed)</changelog>
  <changelog author="Pedro Monreal &lt;pmonreal@suse.com&gt;" date="1709726400">- Use the system default cipher list instead of hardcoded values
  by using crypto-policies. [bsc#1211301]
  * Use the --with-system-ciphers configure option.</changelog>
  <changelog author="pgajdos@suse.com" date="1710849600">- version update to 8.3.4
  * This is a bug fix release.</changelog>
  <changelog author="pgajdos@suse.com" date="1712923200">- version update to 8.3.6 [bsc#1222857] [bsc#1222858]
    Core:
    Fixed GH-13569 (GC buffer unnecessarily grows up to GC_MAX_BUF_SIZE when scanning WeakMaps).
    Fixed bug GH-13612 (Corrupted memory in destructor with weak references).
    Fixed bug GH-13446 (Restore exception handler after it finishes).
    Fixed bug GH-13784 (AX_GCC_FUNC_ATTRIBUTE failure).
    Fixed bug GH-13670 (GC does not scale well with a lot of objects created in destructor).
    DOM:
    Add some missing ZPP checks.
    Fix potential memory leak in XPath evaluation results.
    FPM:
    Fixed GH-11086 (FPM: config test runs twice in daemonised mode).
    Fix incorrect check in fpm_shm_free().
    GD:
    Fixed bug GH-12019 (add GDLIB_CFLAGS in feature tests).
    Gettext:
    Fixed sigabrt raised with dcgettext/dcngettext calls with gettext 0.22.5 with category set to LC_ALL.
    MySQLnd:
    Fix GH-13452 (Fixed handshake response [mysqlnd]).
    Fix incorrect charset length in check_mb_eucjpms().
    Opcache:
    Fixed GH-13508 (JITed QM_ASSIGN may be optimized out when op1 is null).
    Fixed GH-13712 (Segmentation fault for enabled observers when calling trait method of internal trait when opcache is loaded).
    Random:
    Fixed bug GH-13544 (Pre-PHP 8.2 compatibility for mt_srand with unknown modes).
    Fixed bug GH-13690 (Global Mt19937 is not properly reset in-between requests when MT_RAND_PHP is used).
    Session:
    Fixed bug GH-13680 (Segfault with session_decode and compilation error).
    SPL:
    Fixed bug GH-13685 (Unexpected null pointer in zend_string.h).
    Standard:
    Fixed bug GH-11808 (Live filesystem modified by tests).
    Fixed GH-13402 (Added validation of `\n` in $additional_headers of mail()).
    Fixed bug GH-13203 (file_put_contents fail on strings over 4GB on Windows).
    Fixed bug GHSA-pc52-254m-w9w7 (Command injection via array-ish $command parameter of proc_open). (CVE-2024-1874)
    Fixed bug GHSA-wpj3-hf5j-x4v4 (__Host-/__Secure- cookie bypass due to partial CVE-2022-31629 fix). (CVE-2024-2756)
    Fixed bug GHSA-h746-cjrr-wfmr (password_verify can erroneously return true, opening ATO risk). (CVE-2024-3096)
    Fixed bug GHSA-fjp9-9hwx-59fq (mb_encode_mimeheader runs endlessly for some inputs). (CVE-2024-2757)
    Fix bug GH-13932 (Attempt to fix mbstring on windows build) (msvc).</changelog>
  <changelog author="pgajdos@suse.com" date="1715256000">- version update to 8.3.7
    Core:
    Fixed zend_call_stack build with Linux/uclibc-ng without thread support.
    Fixed bug GH-13772 (Invalid execute_data-&gt;opline pointers in observer fcall handlers when JIT is enabled).
    Fixed bug GH-13931 (Applying zero offset to null pointer in Zend/zend_opcode.c).
    Fixed bug GH-13942 (Align the behavior of zend-max-execution-timers with other timeout implementations).
    Fixed bug GH-14003 (Broken cleanup of unfinished calls with callable convert parameters).
    Fixed bug GH-14013 (Erroneous dnl appended in configure).
    Fixed bug GH-10232 (If autoloading occurs during constant resolution filename and lineno are identified incorrectly).
    Fixed bug GH-13727 (Missing void keyword).
    Fibers:
    Fixed bug GH-13903 (ASAN false positive underflow when executing copy()).
    Fileinfo:
    Fixed bug GH-13795 (Test failing in ext/fileinfo/tests/bug78987.phpt on big-endian PPC).
    FPM:
    Fixed bug GH-13563 (Setting bool values via env in FPM config fails).
    Intl:
    Fixed build for icu 74 and onwards.
    MySQLnd:
    Fix shift out of bounds on 32-bit non-fast-path platforms.
    Opcache:
    Fixed bug GH-13433 (Segmentation Fault in zend_class_init_statics when using opcache.preload).
    Fixed incorrect assumptions across compilation units for static calls.
    OpenSSL:
    Fixed bug GH-10495 (feof on OpenSSL stream hangs indefinitely).
    PDO SQLite:
    Fix GH-13984 (Buffer size is now checked before memcmp).
    Fix GH-13998 (Manage refcount of agg_context-&gt;val correctly).
    Phar:
    Fixed bug GH-13836 (Renaming a file in a Phar to an already existing filename causes a NULL pointer dereference).
    Fixed bug GH-13833 (Applying zero offset to null pointer in zend_hash.c).
    Fix potential NULL pointer dereference before calling EVP_SignInit.
    PHPDBG:
    Fixed bug GH-13827 (Null pointer access of type 'zval' in phpdbg_frame).
    Posix:
    Fix usage of reentrant functions in ext/posix.
    Session:
    Fixed bug GH-13856 (Member access within null pointer of type 'ps_files' in ext/session/mod_files.c).
    Fixed bug GH-13891 (memleak and segfault when using ini_set with session.trans_sid_hosts).
    Fixed buffer _read/_write size limit on windows for the file mode.
    Streams:
    Fixed file_get_contents() on Windows fails with "errno=22 Invalid argument".
    Fixed bug GH-13264 (Part 1 - Memory leak on stream filter failure).
    Fixed bug GH-13860 (Incorrect PHP_STREAM_OPTION_CHECK_LIVENESS case in ext/openssl/xp_ssl.c - causing use of dead socket).
    Fixed bug GH-11678 (Build fails on musl 1.2.4 - lfs64).
    Treewide:
    Fix gcc-14 Wcalloc-transposed-args warnings.</changelog>
  <changelog author="pgajdos@suse.com" date="1717761600">- version update to 8.3.8 [bsc#1226073]
    CGI:
    Fixed buffer limit on Windows, replacing read call usage by _read.
    Fixed bug GHSA-3qgc-jrrr-25jv (Bypass of CVE-2012-1823, Argument Injection in PHP-CGI). (CVE-2024-4577)
    CLI:
    Fixed bug GH-14189 (PHP Interactive shell input state incorrectly handles quoted heredoc literals.).
    Core:
    Fixed bug GH-13970 (Incorrect validation of #[Attribute] flags type for non-compile-time expressions).
    DOM:
    Fix crashes when entity declaration is removed while still having entity references.
    Fix references not handled correctly in C14N.
    Fix crash when calling childNodes next() when iterator is exhausted.
    Fix crash in ParentNode::append() when dealing with a fragment containing text nodes.
    Filter:
    Fixed bug GHSA-w8qr-v226-r27w (Filter bypass in filter_var FILTER_VALIDATE_URL). (CVE-2024-5458)
    FPM:
    Fix bug GH-14175 (Show decimal number instead of scientific notation in systemd status).
    Hash:
    ext/hash: Swap the checking order of `__has_builtin` and `__GNUC__` (Saki Takamachi)
    Intl:
    Fixed build regression on systems without C++17 compilers.
    MySQLnd:
    Fix bug GH-14255 (mysqli_fetch_assoc reports error from nested query).
    Opcache:
    Fixed bug GH-14109 (Fix accidental persisting of internal class constant in shm).
    OpenSSL:
    The openssl_private_decrypt function in PHP and Marvin attack.
    Standard:
    Fixed bug GHSA-9fcc-425m-g385 (Bypass of CVE-2024-1874). (CVE-2024-5585)
    XML:
    Fixed bug GH-14124 (Segmentation fault with XML extension under certain memory limit).
    XMLReader:
    Fixed bug GH-14183 (XMLReader::open() can't be overridden).
- modified patches
  % php-build-reproducible-phar.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1718884800">- drop unmaintained apache-rex usage</changelog>
  <changelog author="pgajdos@suse.com" date="1720353600">- version update to 8.3.9
    Core:
    Fixed bug GH-14315 (Incompatible pointer type warnings).
    Fixed bug GH-12814 (max_execution_time reached too early on MacOS 14 when running on Apple Silicon).
    Fixed bug GH-14387 (Crash when stack walking in destructor of yielded from values during Generator-&gt;throw()).
    Fixed bug GH-14456 (Attempting to initialize class with private constructor calls destructor).
    Fixed bug GH-14510 (memleak due to missing pthread_attr_destroy()-call).
    Fixed bug GH-14549 (Incompatible function pointer type for fclose).
    BCMatch:
    Fixed bug (bcpowmod() with mod = -1 returns 1 when it must be 0).
    Curl:
    Fixed bug GH-14307 (Test curl_basic_024 fails with curl 8.8.0).
    DOM:
    Fixed bug GH-14343 (Memory leak in xml and dom).
    FPM:
    Fixed bug GH-14037 (PHP-FPM ping.path and ping.response config vars are ignored in status pool).
    GD:
    Fix parameter numbers for imagecolorset().
    Intl:
    Fix reference handling in SpoofChecker.
    MySQLnd:
    Partially fix bug GH-10599 (Apache crash on Windows when using a self-referencing anonymous function inside a class with an active mysqli connection).
    Opcache:
    Fixed bug GH-14267 (opcache.jit=off does not allow enabling JIT at runtime).
    Fixed TLS access in JIT on FreeBSD/amd64.
    Fixed bug GH-11188 (Error when building TSRM in ARM64).
    PDO ODBC:
    Fixed bug GH-14367 (incompatible SDWORD type with iODBC).
    PHPDBG:
    Fixed bug GH-13681 (segfault on watchpoint addition failure).
    Soap:
    Fixed bug #47925 (PHPClient can't decompress response).
    Fix missing error restore code.
    Fix memory leak if calling SoapServer::setObject() twice.
    Fix memory leak if calling SoapServer::setClass() twice.
    Fix reading zlib ini settings in ext-soap.
    Fix memory leaks with string function name lookups.
    Fixed bug #69280 (SoapClient classmap doesn't support fully qualified class name).
    Fixed bug #76232 (SoapClient Cookie Header Semicolon).
    Fixed memory leaks when calling SoapFault::__construct() twice.
    Sodium:
    Fix memory leaks in ext/sodium on failure of some functions.
    SPL:
    Fixed bug GH-14290 (Member access within null pointer in extension spl).
    Standard:
    Fixed bug GH-14483 (Fixed off-by-one error in checking length of abstract namespace Unix sockets).
    Streams:
    Fixed bug GH-11078 (PHP Fatal error triggers pointer being freed was not allocated and malloc: double free for ptr errors).</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1723809600">- version update to 8.3.10
    Core:
    Fixed bug GH-13922 (Fixed support for systems with sysconf(_SC_GETPW_R_SIZE_MAX) == -1).
    Fixed bug GH-14626 (Fix is_zend_ptr() for huge blocks).
    Fixed bug GH-14590 (Memory leak in FPM test gh13563-conf-bool-env.phpt.
    Fixed OSS-Fuzz #69765.
    Fixed bug GH-14741 (Segmentation fault in Zend/zend_types.h).
    Fixed bug GH-14969 (Use-after-free in property coercion with __toString()).
    Dom:
    Fixed bug GH-14702 (DOMDocument::xinclude() crash).
    Fileinfo:
    Fixed bug GH-14888 (README.REDIST.BINS refers to non-existing LICENSE).
    Gd:
    ext/gd/tests/gh10614.phpt: skip if no PNG support.
    restored warning instead of fata error.
    LibXML:
    Fixed bug GH-14563 (Build failure with libxml2 v2.13.0).
    Opcache:
    Fixed bug GH-14550 (No warning message when Zend DTrace is enabled that opcache.jit is implictly disabled).
    Output:
    Fixed bug GH-14808 (Unexpected null pointer in Zend/zend_string.h with empty output buffer).
    PDO:
    Fixed bug GH-14712 (Crash with PDORow access to null property).
    Phar:
    Fixed bug GH-14603 (null string from zip entry).
    PHPDBG:
    Fixed bug GH-14596 (crashes with ASAN and ZEND_RC_DEBUG=1).
    Fixed bug GH-14553 (echo output trimmed at NULL byte).
    Shmop:
    Fixed bug GH-14537 (shmop Windows 11 crashes the process).
    SPL:
    Fixed bug GH-14639 (Member access within null pointer in ext/spl/spl_observer.c).
    Standard:
    Fixed bug GH-14775 (range function overflow with negative step argument).
    Fix 32-bit wordwrap test failures.
    Fixed bug GH-14774 (time_sleep_until overflow).
    Streams:
    Fixed bug GH-14930 (Custom stream wrapper dir_readdir output truncated to 255 characters in PHP 8.3).
    Tidy:
    Fix memory leak in tidy_repair_file().
    Treewide:
    Fix compatibility with libxml2 2.13.2.
    XML:
    Move away from to-be-deprecated libxml fields.
    Fixed bug GH-14834 (Error installing PHP when --with-pear is used).</changelog>
  <changelog author="pgajdos@suse.com" date="1725019200">- version update to 8.3.11
    Core:
    Fixed bug GH-15020 (Memory leak in Zend/Optimizer/escape_analysis.c).
    Fixed bug GH-15023 (Memory leak in Zend/zend_ini.c).
    Fixed bug GH-13330 (Append -Wno-implicit-fallthrough flag conditionally).
    Fix uninitialized memory in network.c.
    Fixed bug GH-15108 (Segfault when destroying generator during shutdown).
    Fixed bug GH-15275 (Crash during GC of suspended generator delegate).
    Curl:
    Fixed case when curl_error returns an empty string.
    DOM:
    Fix UAF when removing doctype and using foreach iteration.
    FFI:
    Fixed bug GH-14286 (ffi enum type (when enum has no name) make memory leak).
    Hash:
    Fix crash when converting array data for array in shm in xxh3.
    Intl:
    Fixed bug GH-15087 (IntlChar::foldCase()'s $option is not optional).
    Opcache:
    Fixed bug GH-13817 (Segmentation fault for enabled observers after pass 4).
    Fixed bug GH-13775 (Memory leak possibly related to opcache SHM placement).
    Output:
    Fixed bug GH-15179 (Segmentation fault (null pointer dereference) in ext/standard/url_scanner_ex.re).
    PDO_Firebird:
    Fix bogus fallthrough path in firebird_handle_get_attribute().
    PHPDBG:
    Fixed bug GH-13199 (EOF emits redundant prompt in phpdbg local console mode with libedit/readline).
    Fixed bug GH-15268 (heap buffer overflow in phpdbg (zend_hash_num_elements() Zend/zend_hash.h)).
    Fixed bug GH-15210 use-after-free on watchpoint allocations.
    Soap:
    Fixed bug #55639 (Digest autentication dont work).
    Fix SoapFault property destruction.
    Fixed bug GH-15252 (SOAP XML broken since PHP 8.3.9 when using classmap constructor option).
    Standard:
    Fix passing non-finite timeout values in stream functions.
    Fixed GH-14780 p(f)sockopen timeout overflow.
    Streams:
    Fixed bug GH-15028 (Memory leak in ext/phar/stream.c).
    Fixed bug GH-15034 (Integer overflow on stream_notification_callback byte_max parameter with files bigger than 2GB).
    Reverted fix for GH-14930 (Custom stream wrapper dir_readdir output truncated to 255 characters).
    Tidy:
    Fix memory leaks in ext/tidy basedir restriction code.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1727352000">- version update to 8.3.12 [bsc#1231358], [bsc#1231382], [bsc#1231360]
    CGI:
    Fixed bug GHSA-p99j-rfp4-xqvq (Bypass of CVE-2024-4577, Parameter Injection Vulnerability). (CVE-2024-8926)
    Fixed bug GHSA-94p6-54jq-9mwp (cgi.force_redirect configuration is bypassable due to the environment variable collision). (CVE-2024-8927)
    Core:
    Fixed bug GH-15408 (MSan false-positve on zend_max_execution_timer).
    Fixed bug GH-15515 (Configure error grep illegal option q).
    Fixed bug GH-15514 (Configure error: genif.sh: syntax error).
    Fixed bug GH-15565 (--disable-ipv6 during compilation produces error EAI_SYSTEM not found).
    Fixed bug GH-15587 (CRC32 API build error on arm 32-bit).
    Fixed bug GH-15330 (Do not scan generator frames more than once).
    Fixed uninitialized lineno in constant AST of internal enums.
    Curl:
    Fixed bug GH-15547 (curl_multi_select overflow on timeout argument).
    DOM:
    Fixed bug GH-15551 (Segmentation fault (access null pointer) in ext/dom/xml_common.h).
    Fixed bug GH-15654 (Signed integer overflow in ext/dom/nodelist.c).
    Fileinfo:
    Fixed bug GH-15752 (Incorrect error message for finfo_file with an empty filename argument).
    FPM:
    Fixed bug GHSA-865w-9rf3-2wh5 (Logs from childrens may be altered). (CVE-2024-9026)
    MySQLnd:
    Fixed bug GH-15432 (Heap corruption when querying a vector).
    Opcache:
    Fixed bug GH-15661 (Access null pointer in Zend/Optimizer/zend_inference.c).
    Fixed bug GH-15658 (Segmentation fault in Zend/zend_vm_execute.h).
    SAPI:
    Fixed bug GHSA-9pqp-7h25-4f32 (Erroneous parsing of multipart form data). (CVE-2024-8925)
    Standard:
    Fixed bug GH-15552 (Signed integer overflow in ext/standard/scanf.c).
    Streams:
    Fixed bug GH-15628 (php_stream_memory_get_buffer() not zero-terminated).</changelog>
  <changelog author="Thorsten Kukuk &lt;kukuk@suse.com&gt;" date="1727524800">- Add /srv/www directories to filelist [bsc#1231027]</changelog>
  <changelog author="pgajdos@suse.com" date="1729771200">- version update to 8.3.13
    Calendar:
    Fixed GH-16240: jdtounix overflow on argument value.
    Fixed GH-16241: easter_days/easter_date overflow on year argument.
    Fixed GH-16263: jddayofweek overflow.
    Fixed GH-16234: jewishtojd overflow.
    CLI:
    Fixed bug GH-16137: duplicate http headers when set several times by the client.
    Core:
    Fixed bug GH-16054 (Segmentation fault when resizing hash table iterator list while adding).
    Fixed bug GH-15905 (Assertion failure for TRACK_VARS_SERVER).
    Fixed bug GH-15907 (Failed assertion when promoting Serialize deprecation to exception).
    Fixed bug GH-15851 (Segfault when printing backtrace during cleanup of nested generator frame).
    Fixed bug GH-15866 (Core dumped in Zend/zend_generators.c).
    Fixed bug GH-16188 (Assertion failure in Zend/zend_exceptions.c).
    Fixed bug GH-16233 (Observer segfault when calling user function in internal function via trampoline).
    DOM:
    Fixed bug GH-16039 (Segmentation fault (access null pointer) in ext/dom/parentnode/tree.c).
    Fixed bug GH-16149 (Null pointer dereference in DOMElement-&gt;getAttributeNames()).
    Fixed bug GH-16151 (Assertion failure in ext/dom/parentnode/tree.c).
    Fixed bug GH-16150 (Use after free in php_dom.c).
    Fixed bug GH-16152 (Memory leak in DOMProcessingInstruction/DOMDocument).
    JSON:
    Fixed bug GH-15168 (stack overflow in json_encode()).
    GD:
    Fixed bug GH-16232 (bitshift overflow on wbmp file content reading / fix backport from upstream).
    Fixed bug GH-12264 (overflow/underflow on imagerotate degrees value) (David Carlier)
    Fixed bug GH-16274 (imagescale underflow on RBG channels / fix backport from upstream).
    LDAP:
    Fixed bug GH-16032 (Various NULL pointer dereferencements in ldap_modify_batch()).
    Fixed bug GH-16101 (Segfault in ldap_list(), ldap_read(), and ldap_search() when LDAPs array is not a list).
    Fix GH-16132 (php_ldap_do_modify() attempts to free pointer not allocated by ZMM.).
    Fix GH-16136 (Memory leak in php_ldap_do_modify() when entry is not a proper dictionary).
    MBString:
    Fixed bug GH-16261 (Reference invariant broken in mb_convert_variables()).
    OpenSSL:
    Fixed stub for openssl_csr_new.
    PCRE:
    Fixed bug GH-16189 (underflow on offset argument).
    Fixed bug GH-16184 (UBSan address overflowed in ext/pcre/php_pcre.c).
    PHPDBG:
    Fixed bug GH-15901 (phpdbg: Assertion failure on i funcs).
    Fixed bug GH-16181 (phpdbg: exit in exception handler reports fatal error).
    Reflection:
    Fixed bug GH-16187 (Assertion failure in ext/reflection/php_reflection.c).
    SAPI:
    Fixed bug GH-15395 (php-fpm: zend_mm_heap corrupted with cgi-fcgi request).
    SimpleXML:
    Fixed bug GH-15837 (Segmentation fault in ext/simplexml/simplexml.c).
    Sockets:
    Fixed bug GH-16267 (socket_strerror overflow on errno argument).
    SOAP:
    Fixed bug #73182 (PHP SOAPClient does not support stream context HTTP headers in array form).
    Fixed bug #62900 (Wrong namespace on xsd import error message).
    Fixed bug GH-15711 (SoapClient can't convert BackedEnum to scalar value).
    Fixed bug GH-16237 (Segmentation fault when cloning SoapServer).
    Fix Soap leaking http_msg on error.
    Fixed bug GH-16256 (Assertion failure in ext/soap/php_encoding.c:460).
    Fixed bug GH-16259 (Soap segfault when classmap instantiation fails).
    SPL:
    Fixed bug GH-15918 (Assertion failure in ext/spl/spl_fixedarray.c).
    Standard:
    Fixed bug GH-16053 (Assertion failure in Zend/zend_hash.c).
    Fixed bug GH-15169 (stack overflow when var serialization in ext/standard/var).
    Streams:
    Fixed bugs GH-15908 and GH-15026 (leak / assertion failure in streams.c).
    Fixed bug GH-15980 (Signed integer overflow in main/streams/streams.c).
    TSRM:
    Prevent closing of unrelated handles.</changelog>
  <changelog author="pgajdos@suse.com" date="1732190400">- version update to 8.3.14
    CLI:
    Fixed bug GH-16373 (Shebang is not skipped for router script in cli-server started through shebang).
    Fixed bug GHSA-4w77-75f9-2c8w (Heap-Use-After-Free in sapi_read_post_data Processing in CLI SAPI Interface).
    COM:
    Fixed out of bound writes to SafeArray data.
    Core:
    Fixed bug GH-16168 (php 8.1 and earlier crash immediately when compiled with Xcode 16 clang on macOS 15).
    Fixed bug GH-16371 (Assertion failure in Zend/zend_weakrefs.c:646).
    Fixed bug GH-16515 (Incorrect propagation of ZEND_ACC_RETURN_REFERENCE for call trampoline).
    Fixed bug GH-16509 (Incorrect line number in function redeclaration error).
    Fixed bug GH-16508 (Incorrect line number in inheritance errors of delayed early bound classes).
    Fixed bug GH-16648 (Use-after-free during array sorting).
    Curl:
    Fixed bug GH-16302 (CurlMultiHandle holds a reference to CurlHandle if curl_multi_add_handle fails).
    Date:
    Fixed bug GH-16454 (Unhandled INF in date_sunset() with tiny $utcOffset).
    Fixed bug GH-14732 (date_sun_info() fails for non-finite values).
    DBA:
    Fixed bug GH-16390 (dba_open() can segfault for "pathless" streams).
    DOM:
    Fixed bug GH-16316 (DOMXPath breaks when not initialized properly).
    Add missing hierarchy checks to replaceChild.
    Fixed bug GH-16336 (Attribute intern document mismanagement).
    Fixed bug GH-16338 (Null-dereference in ext/dom/node.c).
    Fixed bug GH-16473 (dom_import_simplexml stub is wrong).
    Fixed bug GH-16533 (Segfault when adding attribute to parent that is not an element).
    Fixed bug GH-16535 (UAF when using document as a child).
    Fixed bug GH-16593 (Assertion failure in DOM-&gt;replaceChild).
    Fixed bug GH-16595 (Another UAF in DOM -&gt; cloneNode).
    EXIF:
    Fixed bug GH-16409 (Segfault in exif_thumbnail when not dealing with a real file).
    FFI:
    Fixed bug GH-16397 (Segmentation fault when comparing FFI object).
    Filter:
    Fixed bug GH-16523 (FILTER_FLAG_HOSTNAME accepts ending hyphen).
    FPM:
    Fixed bug GH-16628 (FPM logs are getting corrupted with this log statement).
    GD:
    Fixed bug GH-16334 (imageaffine overflow on matrix elements).
    Fixed bug GH-16427 (Unchecked libavif return values).
    Fixed bug GH-16559 (UBSan abort in ext/gd/libgd/gd_interpolation.c:1007).
    GMP:
    Fixed floating point exception bug with gmp_pow when using large exposant values. (David Carlier).
    Fixed bug GH-16411 (gmp_export() can cause overflow).
    Fixed bug GH-16501 (gmp_random_bits() can cause overflow).
    Fixed gmp_pow() overflow bug with large base/exponents.
    Fixed segfaults and other issues related to operator overloading with GMP objects.
    LDAP:
    Fixed bug GHSA-g665-fm4p-vhff (OOB access in ldap_escape). (CVE-2024-8932)
    MBstring:
    Fixed bug GH-16361 (mb_substr overflow on start/length arguments).
    MySQLnd:
    Fixed bug GHSA-h35g-vwh6-m678 (Leak partial content of the heap through heap buffer over-read). (CVE-2024-8929)
    Opcache:
    Fixed bug GH-16408 (Array to string conversion warning emitted in optimizer).
    OpenSSL:
    Fixed bug GH-16357 (openssl may modify member types of certificate arrays).
    Fixed bug GH-16433 (Large values for openssl_csr_sign() $days overflow).
    Fix various memory leaks on error conditions in openssl_x509_parse().
    PDO DBLIB:
    Fixed bug GHSA-5hqh-c84r-qjcv (Integer overflow in the dblib quoter causing OOB writes). (CVE-2024-11236)
    PDO Firebird:
    Fixed bug GHSA-5hqh-c84r-qjcv (Integer overflow in the firebird quoter causing OOB writes). (CVE-2024-11236)
    PDO ODBC:
    Fixed bug GH-16450 (PDO_ODBC can inject garbage into field values).
    Phar:
    Fixed bug GH-16406 (Assertion failure in ext/phar/phar.c:2808).
    PHPDBG:
    Fixed bug GH-16174 (Empty string is an invalid expression for ev).
    Reflection:
    Fixed bug GH-16601 (Memory leak in Reflection constructors).
    Session:
    Fixed bug GH-16385 (Unexpected null returned by session_set_cookie_params).
    Fixed bug GH-16290 (overflow on cookie_lifetime ini value).
    SOAP:
    Fixed bug GH-16318 (Recursive array segfaults soap encoding).
    Fixed bug GH-16429 (Segmentation fault access null pointer in SoapClient).
    Sockets:
    Fixed bug with overflow socket_recvfrom $length argument.
    SPL:
    Fixed bug GH-16337 (Use-after-free in SplHeap).
    Fixed bug GH-16464 (Use-after-free in SplDoublyLinkedList::offsetSet()).
    Fixed bug GH-16479 (Use-after-free in SplObjectStorage::setInfo()).
    Fixed bug GH-16478 (Use-after-free in SplFixedArray::unset()).
    Fixed bug GH-16588 (UAF in Observer-&gt;serialize).
    Fix GH-16477 (Segmentation fault when calling __debugInfo() after failed SplFileObject::__constructor).
    Fixed bug GH-16589 (UAF in SplDoublyLinked-&gt;serialize()).
    Fixed bug GH-14687 (segfault on SplObjectIterator instance).
    Fixed bug GH-16604 (Memory leaks in SPL constructors).
    Fixed bug GH-16646 (UAF in ArrayObject::unset() and ArrayObject::exchangeArray()).
    Standard:
    Fixed bug GH-16293 (Failed assertion when throwing in assert() callback with bail enabled).
    Streams:
    Fixed bug GHSA-c5f2-jwm7-mmq2 (Configuring a proxy in a stream context might allow for CRLF injection in URIs). (CVE-2024-11234)
    Fixed bug GHSA-r977-prxv-hc43 (Single byte overread with convert.quoted-printable-decode filter). (CVE-2024-11233)
    SysVMsg:
    Fixed bug GH-16592 (msg_send() crashes when a type does not properly serialized).
    SysVShm:
    Fixed bug GH-16591 (Assertion error in shm_put_var).
    XMLReader:
    Fixed bug GH-16292 (Segmentation fault in ext/xmlreader/php_xmlreader.c).
    Zlib:
    Fixed bug GH-16326 (Memory management is broken for bad dictionaries.) (cmb)</changelog>
</package>
<package pkgid="31ce8d270bfa1114d080acb80a289d3ec48e4c1d475f96e3dd3f3870fd15405bf2cf2cbe2fe190529f7bb934385c1cd22fb52eb8499796bd998a07cd3799408b" name="apache2-mod_php8-debugsource" arch="i586">
  <version epoch="0" ver="8.3.14" rel="1.0.2.1.sr20241103"/>
  <changelog author="pgajdos@suse.com" date="1695988800">- version update to 8.2.11
  * This is a bug fix release.
  * https://www.php.net/ChangeLog-8.php#8.2.11</changelog>
  <changelog author="pgajdos@suse.com" date="1698321600">- version update to 8.2.12
  * This is a bug fix release.
    https://www.php.net/ChangeLog-8.php#8.2.12</changelog>
  <changelog author="pgajdos@suse.com" date="1700827200">- version update to 8.2.13
  * This is a bug fix release.
    https://www.php.net/ChangeLog-8.php#8.2.13</changelog>
  <changelog author="pgajdos@suse.com" date="1700827201">- version update to 8.3.0
  * https://www.php.net/releases/8.3/en.php
  * Typed class constants
  * Dynamic class constant fetch
  * New #[\Override] attribute
  * Deep-cloning of readonly properties
  * New json_validate() function
  * New Randomizer::getBytesFromString() method
  * New Randomizer::getFloat() and Randomizer::nextFloat() methods
  * New DOMElement::getAttributeNames(),
    DOMElement::insertAdjacentElement(),
    DOMElement::insertAdjacentText(),
    DOMElement::toggleAttribute(),
    DOMNode::contains(), DOMNode::getRootNode(),
    DOMNode::isEqualNode(), DOMNameSpaceNode::contains(), and
    DOMParentNode::replaceChildren() methods.
  * New IntlCalendar::setDate(),
    IntlCalendar::setDateTime(),
    IntlGregorianCalendar::createFromDate(), and
    IntlGregorianCalendar::createFromDateTime() methods.
  * New ldap_connect_wallet(), and ldap_exop_sync() functions.
  * New mb_str_pad() function.
  * New posix_sysconf(), posix_pathconf(), posix_fpathconf(),
    and posix_eaccess() functions.
  * New ReflectionMethod::createFromMethodName() method.
  * New socket_atmark() function.
  * New str_increment(), str_decrement(),
    and stream_context_set_options() functions.
  * New ZipArchive::getArchiveFlag() method.
  * Support for generation EC keys with custom EC parameters in
    OpenSSL extension.
  * New INI setting zend.max_allowed_stack_size to set the maximum
    allowed stack size.
  * php.ini now supports fallback/default value syntax.
  * Anonymous classes can now be readonly.
  * https://www.php.net/ChangeLog-8.php#PHP_8_3
- modified patches
  % php-ar-flags.patch (refreshed)
  % php-build-reproducible-phar.patch (refreshed)
  % php-ini.patch (refreshed)
- modified sources
  % php8.keyring
- deleted patches
  - php-systzdata-v23.patch
- added patches
  + php-systzdata-v24.patch</changelog>
  <changelog author="Manu Maier &lt;mmanu84@outlook.de&gt;" date="1703678400">- version update to 8.3.1
  * This is a bug fix release.
    https://www.php.net/ChangeLog-8.php#8.3.1</changelog>
  <changelog author="pgajdos@suse.com" date="1705579200">- version update to 8.3.2
  * This is a bug fix release.
- modified patches
  % php-ar-flags.patch (refreshed)
  % php-build-reproducible-phar.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1708084800">- version update to 8.3.3
  * A bugfix release.
- modified patches
  % php-build-reproducible-phar.patch (refreshed)</changelog>
  <changelog author="Pedro Monreal &lt;pmonreal@suse.com&gt;" date="1709726400">- Use the system default cipher list instead of hardcoded values
  by using crypto-policies. [bsc#1211301]
  * Use the --with-system-ciphers configure option.</changelog>
  <changelog author="pgajdos@suse.com" date="1710849600">- version update to 8.3.4
  * This is a bug fix release.</changelog>
  <changelog author="pgajdos@suse.com" date="1712923200">- version update to 8.3.6 [bsc#1222857] [bsc#1222858]
    Core:
    Fixed GH-13569 (GC buffer unnecessarily grows up to GC_MAX_BUF_SIZE when scanning WeakMaps).
    Fixed bug GH-13612 (Corrupted memory in destructor with weak references).
    Fixed bug GH-13446 (Restore exception handler after it finishes).
    Fixed bug GH-13784 (AX_GCC_FUNC_ATTRIBUTE failure).
    Fixed bug GH-13670 (GC does not scale well with a lot of objects created in destructor).
    DOM:
    Add some missing ZPP checks.
    Fix potential memory leak in XPath evaluation results.
    FPM:
    Fixed GH-11086 (FPM: config test runs twice in daemonised mode).
    Fix incorrect check in fpm_shm_free().
    GD:
    Fixed bug GH-12019 (add GDLIB_CFLAGS in feature tests).
    Gettext:
    Fixed sigabrt raised with dcgettext/dcngettext calls with gettext 0.22.5 with category set to LC_ALL.
    MySQLnd:
    Fix GH-13452 (Fixed handshake response [mysqlnd]).
    Fix incorrect charset length in check_mb_eucjpms().
    Opcache:
    Fixed GH-13508 (JITed QM_ASSIGN may be optimized out when op1 is null).
    Fixed GH-13712 (Segmentation fault for enabled observers when calling trait method of internal trait when opcache is loaded).
    Random:
    Fixed bug GH-13544 (Pre-PHP 8.2 compatibility for mt_srand with unknown modes).
    Fixed bug GH-13690 (Global Mt19937 is not properly reset in-between requests when MT_RAND_PHP is used).
    Session:
    Fixed bug GH-13680 (Segfault with session_decode and compilation error).
    SPL:
    Fixed bug GH-13685 (Unexpected null pointer in zend_string.h).
    Standard:
    Fixed bug GH-11808 (Live filesystem modified by tests).
    Fixed GH-13402 (Added validation of `\n` in $additional_headers of mail()).
    Fixed bug GH-13203 (file_put_contents fail on strings over 4GB on Windows).
    Fixed bug GHSA-pc52-254m-w9w7 (Command injection via array-ish $command parameter of proc_open). (CVE-2024-1874)
    Fixed bug GHSA-wpj3-hf5j-x4v4 (__Host-/__Secure- cookie bypass due to partial CVE-2022-31629 fix). (CVE-2024-2756)
    Fixed bug GHSA-h746-cjrr-wfmr (password_verify can erroneously return true, opening ATO risk). (CVE-2024-3096)
    Fixed bug GHSA-fjp9-9hwx-59fq (mb_encode_mimeheader runs endlessly for some inputs). (CVE-2024-2757)
    Fix bug GH-13932 (Attempt to fix mbstring on windows build) (msvc).</changelog>
  <changelog author="pgajdos@suse.com" date="1715256000">- version update to 8.3.7
    Core:
    Fixed zend_call_stack build with Linux/uclibc-ng without thread support.
    Fixed bug GH-13772 (Invalid execute_data-&gt;opline pointers in observer fcall handlers when JIT is enabled).
    Fixed bug GH-13931 (Applying zero offset to null pointer in Zend/zend_opcode.c).
    Fixed bug GH-13942 (Align the behavior of zend-max-execution-timers with other timeout implementations).
    Fixed bug GH-14003 (Broken cleanup of unfinished calls with callable convert parameters).
    Fixed bug GH-14013 (Erroneous dnl appended in configure).
    Fixed bug GH-10232 (If autoloading occurs during constant resolution filename and lineno are identified incorrectly).
    Fixed bug GH-13727 (Missing void keyword).
    Fibers:
    Fixed bug GH-13903 (ASAN false positive underflow when executing copy()).
    Fileinfo:
    Fixed bug GH-13795 (Test failing in ext/fileinfo/tests/bug78987.phpt on big-endian PPC).
    FPM:
    Fixed bug GH-13563 (Setting bool values via env in FPM config fails).
    Intl:
    Fixed build for icu 74 and onwards.
    MySQLnd:
    Fix shift out of bounds on 32-bit non-fast-path platforms.
    Opcache:
    Fixed bug GH-13433 (Segmentation Fault in zend_class_init_statics when using opcache.preload).
    Fixed incorrect assumptions across compilation units for static calls.
    OpenSSL:
    Fixed bug GH-10495 (feof on OpenSSL stream hangs indefinitely).
    PDO SQLite:
    Fix GH-13984 (Buffer size is now checked before memcmp).
    Fix GH-13998 (Manage refcount of agg_context-&gt;val correctly).
    Phar:
    Fixed bug GH-13836 (Renaming a file in a Phar to an already existing filename causes a NULL pointer dereference).
    Fixed bug GH-13833 (Applying zero offset to null pointer in zend_hash.c).
    Fix potential NULL pointer dereference before calling EVP_SignInit.
    PHPDBG:
    Fixed bug GH-13827 (Null pointer access of type 'zval' in phpdbg_frame).
    Posix:
    Fix usage of reentrant functions in ext/posix.
    Session:
    Fixed bug GH-13856 (Member access within null pointer of type 'ps_files' in ext/session/mod_files.c).
    Fixed bug GH-13891 (memleak and segfault when using ini_set with session.trans_sid_hosts).
    Fixed buffer _read/_write size limit on windows for the file mode.
    Streams:
    Fixed file_get_contents() on Windows fails with "errno=22 Invalid argument".
    Fixed bug GH-13264 (Part 1 - Memory leak on stream filter failure).
    Fixed bug GH-13860 (Incorrect PHP_STREAM_OPTION_CHECK_LIVENESS case in ext/openssl/xp_ssl.c - causing use of dead socket).
    Fixed bug GH-11678 (Build fails on musl 1.2.4 - lfs64).
    Treewide:
    Fix gcc-14 Wcalloc-transposed-args warnings.</changelog>
  <changelog author="pgajdos@suse.com" date="1717761600">- version update to 8.3.8 [bsc#1226073]
    CGI:
    Fixed buffer limit on Windows, replacing read call usage by _read.
    Fixed bug GHSA-3qgc-jrrr-25jv (Bypass of CVE-2012-1823, Argument Injection in PHP-CGI). (CVE-2024-4577)
    CLI:
    Fixed bug GH-14189 (PHP Interactive shell input state incorrectly handles quoted heredoc literals.).
    Core:
    Fixed bug GH-13970 (Incorrect validation of #[Attribute] flags type for non-compile-time expressions).
    DOM:
    Fix crashes when entity declaration is removed while still having entity references.
    Fix references not handled correctly in C14N.
    Fix crash when calling childNodes next() when iterator is exhausted.
    Fix crash in ParentNode::append() when dealing with a fragment containing text nodes.
    Filter:
    Fixed bug GHSA-w8qr-v226-r27w (Filter bypass in filter_var FILTER_VALIDATE_URL). (CVE-2024-5458)
    FPM:
    Fix bug GH-14175 (Show decimal number instead of scientific notation in systemd status).
    Hash:
    ext/hash: Swap the checking order of `__has_builtin` and `__GNUC__` (Saki Takamachi)
    Intl:
    Fixed build regression on systems without C++17 compilers.
    MySQLnd:
    Fix bug GH-14255 (mysqli_fetch_assoc reports error from nested query).
    Opcache:
    Fixed bug GH-14109 (Fix accidental persisting of internal class constant in shm).
    OpenSSL:
    The openssl_private_decrypt function in PHP and Marvin attack.
    Standard:
    Fixed bug GHSA-9fcc-425m-g385 (Bypass of CVE-2024-1874). (CVE-2024-5585)
    XML:
    Fixed bug GH-14124 (Segmentation fault with XML extension under certain memory limit).
    XMLReader:
    Fixed bug GH-14183 (XMLReader::open() can't be overridden).
- modified patches
  % php-build-reproducible-phar.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1718884800">- drop unmaintained apache-rex usage</changelog>
  <changelog author="pgajdos@suse.com" date="1720353600">- version update to 8.3.9
    Core:
    Fixed bug GH-14315 (Incompatible pointer type warnings).
    Fixed bug GH-12814 (max_execution_time reached too early on MacOS 14 when running on Apple Silicon).
    Fixed bug GH-14387 (Crash when stack walking in destructor of yielded from values during Generator-&gt;throw()).
    Fixed bug GH-14456 (Attempting to initialize class with private constructor calls destructor).
    Fixed bug GH-14510 (memleak due to missing pthread_attr_destroy()-call).
    Fixed bug GH-14549 (Incompatible function pointer type for fclose).
    BCMatch:
    Fixed bug (bcpowmod() with mod = -1 returns 1 when it must be 0).
    Curl:
    Fixed bug GH-14307 (Test curl_basic_024 fails with curl 8.8.0).
    DOM:
    Fixed bug GH-14343 (Memory leak in xml and dom).
    FPM:
    Fixed bug GH-14037 (PHP-FPM ping.path and ping.response config vars are ignored in status pool).
    GD:
    Fix parameter numbers for imagecolorset().
    Intl:
    Fix reference handling in SpoofChecker.
    MySQLnd:
    Partially fix bug GH-10599 (Apache crash on Windows when using a self-referencing anonymous function inside a class with an active mysqli connection).
    Opcache:
    Fixed bug GH-14267 (opcache.jit=off does not allow enabling JIT at runtime).
    Fixed TLS access in JIT on FreeBSD/amd64.
    Fixed bug GH-11188 (Error when building TSRM in ARM64).
    PDO ODBC:
    Fixed bug GH-14367 (incompatible SDWORD type with iODBC).
    PHPDBG:
    Fixed bug GH-13681 (segfault on watchpoint addition failure).
    Soap:
    Fixed bug #47925 (PHPClient can't decompress response).
    Fix missing error restore code.
    Fix memory leak if calling SoapServer::setObject() twice.
    Fix memory leak if calling SoapServer::setClass() twice.
    Fix reading zlib ini settings in ext-soap.
    Fix memory leaks with string function name lookups.
    Fixed bug #69280 (SoapClient classmap doesn't support fully qualified class name).
    Fixed bug #76232 (SoapClient Cookie Header Semicolon).
    Fixed memory leaks when calling SoapFault::__construct() twice.
    Sodium:
    Fix memory leaks in ext/sodium on failure of some functions.
    SPL:
    Fixed bug GH-14290 (Member access within null pointer in extension spl).
    Standard:
    Fixed bug GH-14483 (Fixed off-by-one error in checking length of abstract namespace Unix sockets).
    Streams:
    Fixed bug GH-11078 (PHP Fatal error triggers pointer being freed was not allocated and malloc: double free for ptr errors).</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1723809600">- version update to 8.3.10
    Core:
    Fixed bug GH-13922 (Fixed support for systems with sysconf(_SC_GETPW_R_SIZE_MAX) == -1).
    Fixed bug GH-14626 (Fix is_zend_ptr() for huge blocks).
    Fixed bug GH-14590 (Memory leak in FPM test gh13563-conf-bool-env.phpt.
    Fixed OSS-Fuzz #69765.
    Fixed bug GH-14741 (Segmentation fault in Zend/zend_types.h).
    Fixed bug GH-14969 (Use-after-free in property coercion with __toString()).
    Dom:
    Fixed bug GH-14702 (DOMDocument::xinclude() crash).
    Fileinfo:
    Fixed bug GH-14888 (README.REDIST.BINS refers to non-existing LICENSE).
    Gd:
    ext/gd/tests/gh10614.phpt: skip if no PNG support.
    restored warning instead of fata error.
    LibXML:
    Fixed bug GH-14563 (Build failure with libxml2 v2.13.0).
    Opcache:
    Fixed bug GH-14550 (No warning message when Zend DTrace is enabled that opcache.jit is implictly disabled).
    Output:
    Fixed bug GH-14808 (Unexpected null pointer in Zend/zend_string.h with empty output buffer).
    PDO:
    Fixed bug GH-14712 (Crash with PDORow access to null property).
    Phar:
    Fixed bug GH-14603 (null string from zip entry).
    PHPDBG:
    Fixed bug GH-14596 (crashes with ASAN and ZEND_RC_DEBUG=1).
    Fixed bug GH-14553 (echo output trimmed at NULL byte).
    Shmop:
    Fixed bug GH-14537 (shmop Windows 11 crashes the process).
    SPL:
    Fixed bug GH-14639 (Member access within null pointer in ext/spl/spl_observer.c).
    Standard:
    Fixed bug GH-14775 (range function overflow with negative step argument).
    Fix 32-bit wordwrap test failures.
    Fixed bug GH-14774 (time_sleep_until overflow).
    Streams:
    Fixed bug GH-14930 (Custom stream wrapper dir_readdir output truncated to 255 characters in PHP 8.3).
    Tidy:
    Fix memory leak in tidy_repair_file().
    Treewide:
    Fix compatibility with libxml2 2.13.2.
    XML:
    Move away from to-be-deprecated libxml fields.
    Fixed bug GH-14834 (Error installing PHP when --with-pear is used).</changelog>
  <changelog author="pgajdos@suse.com" date="1725019200">- version update to 8.3.11
    Core:
    Fixed bug GH-15020 (Memory leak in Zend/Optimizer/escape_analysis.c).
    Fixed bug GH-15023 (Memory leak in Zend/zend_ini.c).
    Fixed bug GH-13330 (Append -Wno-implicit-fallthrough flag conditionally).
    Fix uninitialized memory in network.c.
    Fixed bug GH-15108 (Segfault when destroying generator during shutdown).
    Fixed bug GH-15275 (Crash during GC of suspended generator delegate).
    Curl:
    Fixed case when curl_error returns an empty string.
    DOM:
    Fix UAF when removing doctype and using foreach iteration.
    FFI:
    Fixed bug GH-14286 (ffi enum type (when enum has no name) make memory leak).
    Hash:
    Fix crash when converting array data for array in shm in xxh3.
    Intl:
    Fixed bug GH-15087 (IntlChar::foldCase()'s $option is not optional).
    Opcache:
    Fixed bug GH-13817 (Segmentation fault for enabled observers after pass 4).
    Fixed bug GH-13775 (Memory leak possibly related to opcache SHM placement).
    Output:
    Fixed bug GH-15179 (Segmentation fault (null pointer dereference) in ext/standard/url_scanner_ex.re).
    PDO_Firebird:
    Fix bogus fallthrough path in firebird_handle_get_attribute().
    PHPDBG:
    Fixed bug GH-13199 (EOF emits redundant prompt in phpdbg local console mode with libedit/readline).
    Fixed bug GH-15268 (heap buffer overflow in phpdbg (zend_hash_num_elements() Zend/zend_hash.h)).
    Fixed bug GH-15210 use-after-free on watchpoint allocations.
    Soap:
    Fixed bug #55639 (Digest autentication dont work).
    Fix SoapFault property destruction.
    Fixed bug GH-15252 (SOAP XML broken since PHP 8.3.9 when using classmap constructor option).
    Standard:
    Fix passing non-finite timeout values in stream functions.
    Fixed GH-14780 p(f)sockopen timeout overflow.
    Streams:
    Fixed bug GH-15028 (Memory leak in ext/phar/stream.c).
    Fixed bug GH-15034 (Integer overflow on stream_notification_callback byte_max parameter with files bigger than 2GB).
    Reverted fix for GH-14930 (Custom stream wrapper dir_readdir output truncated to 255 characters).
    Tidy:
    Fix memory leaks in ext/tidy basedir restriction code.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1727352000">- version update to 8.3.12 [bsc#1231358], [bsc#1231382], [bsc#1231360]
    CGI:
    Fixed bug GHSA-p99j-rfp4-xqvq (Bypass of CVE-2024-4577, Parameter Injection Vulnerability). (CVE-2024-8926)
    Fixed bug GHSA-94p6-54jq-9mwp (cgi.force_redirect configuration is bypassable due to the environment variable collision). (CVE-2024-8927)
    Core:
    Fixed bug GH-15408 (MSan false-positve on zend_max_execution_timer).
    Fixed bug GH-15515 (Configure error grep illegal option q).
    Fixed bug GH-15514 (Configure error: genif.sh: syntax error).
    Fixed bug GH-15565 (--disable-ipv6 during compilation produces error EAI_SYSTEM not found).
    Fixed bug GH-15587 (CRC32 API build error on arm 32-bit).
    Fixed bug GH-15330 (Do not scan generator frames more than once).
    Fixed uninitialized lineno in constant AST of internal enums.
    Curl:
    Fixed bug GH-15547 (curl_multi_select overflow on timeout argument).
    DOM:
    Fixed bug GH-15551 (Segmentation fault (access null pointer) in ext/dom/xml_common.h).
    Fixed bug GH-15654 (Signed integer overflow in ext/dom/nodelist.c).
    Fileinfo:
    Fixed bug GH-15752 (Incorrect error message for finfo_file with an empty filename argument).
    FPM:
    Fixed bug GHSA-865w-9rf3-2wh5 (Logs from childrens may be altered). (CVE-2024-9026)
    MySQLnd:
    Fixed bug GH-15432 (Heap corruption when querying a vector).
    Opcache:
    Fixed bug GH-15661 (Access null pointer in Zend/Optimizer/zend_inference.c).
    Fixed bug GH-15658 (Segmentation fault in Zend/zend_vm_execute.h).
    SAPI:
    Fixed bug GHSA-9pqp-7h25-4f32 (Erroneous parsing of multipart form data). (CVE-2024-8925)
    Standard:
    Fixed bug GH-15552 (Signed integer overflow in ext/standard/scanf.c).
    Streams:
    Fixed bug GH-15628 (php_stream_memory_get_buffer() not zero-terminated).</changelog>
  <changelog author="Thorsten Kukuk &lt;kukuk@suse.com&gt;" date="1727524800">- Add /srv/www directories to filelist [bsc#1231027]</changelog>
  <changelog author="pgajdos@suse.com" date="1729771200">- version update to 8.3.13
    Calendar:
    Fixed GH-16240: jdtounix overflow on argument value.
    Fixed GH-16241: easter_days/easter_date overflow on year argument.
    Fixed GH-16263: jddayofweek overflow.
    Fixed GH-16234: jewishtojd overflow.
    CLI:
    Fixed bug GH-16137: duplicate http headers when set several times by the client.
    Core:
    Fixed bug GH-16054 (Segmentation fault when resizing hash table iterator list while adding).
    Fixed bug GH-15905 (Assertion failure for TRACK_VARS_SERVER).
    Fixed bug GH-15907 (Failed assertion when promoting Serialize deprecation to exception).
    Fixed bug GH-15851 (Segfault when printing backtrace during cleanup of nested generator frame).
    Fixed bug GH-15866 (Core dumped in Zend/zend_generators.c).
    Fixed bug GH-16188 (Assertion failure in Zend/zend_exceptions.c).
    Fixed bug GH-16233 (Observer segfault when calling user function in internal function via trampoline).
    DOM:
    Fixed bug GH-16039 (Segmentation fault (access null pointer) in ext/dom/parentnode/tree.c).
    Fixed bug GH-16149 (Null pointer dereference in DOMElement-&gt;getAttributeNames()).
    Fixed bug GH-16151 (Assertion failure in ext/dom/parentnode/tree.c).
    Fixed bug GH-16150 (Use after free in php_dom.c).
    Fixed bug GH-16152 (Memory leak in DOMProcessingInstruction/DOMDocument).
    JSON:
    Fixed bug GH-15168 (stack overflow in json_encode()).
    GD:
    Fixed bug GH-16232 (bitshift overflow on wbmp file content reading / fix backport from upstream).
    Fixed bug GH-12264 (overflow/underflow on imagerotate degrees value) (David Carlier)
    Fixed bug GH-16274 (imagescale underflow on RBG channels / fix backport from upstream).
    LDAP:
    Fixed bug GH-16032 (Various NULL pointer dereferencements in ldap_modify_batch()).
    Fixed bug GH-16101 (Segfault in ldap_list(), ldap_read(), and ldap_search() when LDAPs array is not a list).
    Fix GH-16132 (php_ldap_do_modify() attempts to free pointer not allocated by ZMM.).
    Fix GH-16136 (Memory leak in php_ldap_do_modify() when entry is not a proper dictionary).
    MBString:
    Fixed bug GH-16261 (Reference invariant broken in mb_convert_variables()).
    OpenSSL:
    Fixed stub for openssl_csr_new.
    PCRE:
    Fixed bug GH-16189 (underflow on offset argument).
    Fixed bug GH-16184 (UBSan address overflowed in ext/pcre/php_pcre.c).
    PHPDBG:
    Fixed bug GH-15901 (phpdbg: Assertion failure on i funcs).
    Fixed bug GH-16181 (phpdbg: exit in exception handler reports fatal error).
    Reflection:
    Fixed bug GH-16187 (Assertion failure in ext/reflection/php_reflection.c).
    SAPI:
    Fixed bug GH-15395 (php-fpm: zend_mm_heap corrupted with cgi-fcgi request).
    SimpleXML:
    Fixed bug GH-15837 (Segmentation fault in ext/simplexml/simplexml.c).
    Sockets:
    Fixed bug GH-16267 (socket_strerror overflow on errno argument).
    SOAP:
    Fixed bug #73182 (PHP SOAPClient does not support stream context HTTP headers in array form).
    Fixed bug #62900 (Wrong namespace on xsd import error message).
    Fixed bug GH-15711 (SoapClient can't convert BackedEnum to scalar value).
    Fixed bug GH-16237 (Segmentation fault when cloning SoapServer).
    Fix Soap leaking http_msg on error.
    Fixed bug GH-16256 (Assertion failure in ext/soap/php_encoding.c:460).
    Fixed bug GH-16259 (Soap segfault when classmap instantiation fails).
    SPL:
    Fixed bug GH-15918 (Assertion failure in ext/spl/spl_fixedarray.c).
    Standard:
    Fixed bug GH-16053 (Assertion failure in Zend/zend_hash.c).
    Fixed bug GH-15169 (stack overflow when var serialization in ext/standard/var).
    Streams:
    Fixed bugs GH-15908 and GH-15026 (leak / assertion failure in streams.c).
    Fixed bug GH-15980 (Signed integer overflow in main/streams/streams.c).
    TSRM:
    Prevent closing of unrelated handles.</changelog>
  <changelog author="pgajdos@suse.com" date="1732190400">- version update to 8.3.14
    CLI:
    Fixed bug GH-16373 (Shebang is not skipped for router script in cli-server started through shebang).
    Fixed bug GHSA-4w77-75f9-2c8w (Heap-Use-After-Free in sapi_read_post_data Processing in CLI SAPI Interface).
    COM:
    Fixed out of bound writes to SafeArray data.
    Core:
    Fixed bug GH-16168 (php 8.1 and earlier crash immediately when compiled with Xcode 16 clang on macOS 15).
    Fixed bug GH-16371 (Assertion failure in Zend/zend_weakrefs.c:646).
    Fixed bug GH-16515 (Incorrect propagation of ZEND_ACC_RETURN_REFERENCE for call trampoline).
    Fixed bug GH-16509 (Incorrect line number in function redeclaration error).
    Fixed bug GH-16508 (Incorrect line number in inheritance errors of delayed early bound classes).
    Fixed bug GH-16648 (Use-after-free during array sorting).
    Curl:
    Fixed bug GH-16302 (CurlMultiHandle holds a reference to CurlHandle if curl_multi_add_handle fails).
    Date:
    Fixed bug GH-16454 (Unhandled INF in date_sunset() with tiny $utcOffset).
    Fixed bug GH-14732 (date_sun_info() fails for non-finite values).
    DBA:
    Fixed bug GH-16390 (dba_open() can segfault for "pathless" streams).
    DOM:
    Fixed bug GH-16316 (DOMXPath breaks when not initialized properly).
    Add missing hierarchy checks to replaceChild.
    Fixed bug GH-16336 (Attribute intern document mismanagement).
    Fixed bug GH-16338 (Null-dereference in ext/dom/node.c).
    Fixed bug GH-16473 (dom_import_simplexml stub is wrong).
    Fixed bug GH-16533 (Segfault when adding attribute to parent that is not an element).
    Fixed bug GH-16535 (UAF when using document as a child).
    Fixed bug GH-16593 (Assertion failure in DOM-&gt;replaceChild).
    Fixed bug GH-16595 (Another UAF in DOM -&gt; cloneNode).
    EXIF:
    Fixed bug GH-16409 (Segfault in exif_thumbnail when not dealing with a real file).
    FFI:
    Fixed bug GH-16397 (Segmentation fault when comparing FFI object).
    Filter:
    Fixed bug GH-16523 (FILTER_FLAG_HOSTNAME accepts ending hyphen).
    FPM:
    Fixed bug GH-16628 (FPM logs are getting corrupted with this log statement).
    GD:
    Fixed bug GH-16334 (imageaffine overflow on matrix elements).
    Fixed bug GH-16427 (Unchecked libavif return values).
    Fixed bug GH-16559 (UBSan abort in ext/gd/libgd/gd_interpolation.c:1007).
    GMP:
    Fixed floating point exception bug with gmp_pow when using large exposant values. (David Carlier).
    Fixed bug GH-16411 (gmp_export() can cause overflow).
    Fixed bug GH-16501 (gmp_random_bits() can cause overflow).
    Fixed gmp_pow() overflow bug with large base/exponents.
    Fixed segfaults and other issues related to operator overloading with GMP objects.
    LDAP:
    Fixed bug GHSA-g665-fm4p-vhff (OOB access in ldap_escape). (CVE-2024-8932)
    MBstring:
    Fixed bug GH-16361 (mb_substr overflow on start/length arguments).
    MySQLnd:
    Fixed bug GHSA-h35g-vwh6-m678 (Leak partial content of the heap through heap buffer over-read). (CVE-2024-8929)
    Opcache:
    Fixed bug GH-16408 (Array to string conversion warning emitted in optimizer).
    OpenSSL:
    Fixed bug GH-16357 (openssl may modify member types of certificate arrays).
    Fixed bug GH-16433 (Large values for openssl_csr_sign() $days overflow).
    Fix various memory leaks on error conditions in openssl_x509_parse().
    PDO DBLIB:
    Fixed bug GHSA-5hqh-c84r-qjcv (Integer overflow in the dblib quoter causing OOB writes). (CVE-2024-11236)
    PDO Firebird:
    Fixed bug GHSA-5hqh-c84r-qjcv (Integer overflow in the firebird quoter causing OOB writes). (CVE-2024-11236)
    PDO ODBC:
    Fixed bug GH-16450 (PDO_ODBC can inject garbage into field values).
    Phar:
    Fixed bug GH-16406 (Assertion failure in ext/phar/phar.c:2808).
    PHPDBG:
    Fixed bug GH-16174 (Empty string is an invalid expression for ev).
    Reflection:
    Fixed bug GH-16601 (Memory leak in Reflection constructors).
    Session:
    Fixed bug GH-16385 (Unexpected null returned by session_set_cookie_params).
    Fixed bug GH-16290 (overflow on cookie_lifetime ini value).
    SOAP:
    Fixed bug GH-16318 (Recursive array segfaults soap encoding).
    Fixed bug GH-16429 (Segmentation fault access null pointer in SoapClient).
    Sockets:
    Fixed bug with overflow socket_recvfrom $length argument.
    SPL:
    Fixed bug GH-16337 (Use-after-free in SplHeap).
    Fixed bug GH-16464 (Use-after-free in SplDoublyLinkedList::offsetSet()).
    Fixed bug GH-16479 (Use-after-free in SplObjectStorage::setInfo()).
    Fixed bug GH-16478 (Use-after-free in SplFixedArray::unset()).
    Fixed bug GH-16588 (UAF in Observer-&gt;serialize).
    Fix GH-16477 (Segmentation fault when calling __debugInfo() after failed SplFileObject::__constructor).
    Fixed bug GH-16589 (UAF in SplDoublyLinked-&gt;serialize()).
    Fixed bug GH-14687 (segfault on SplObjectIterator instance).
    Fixed bug GH-16604 (Memory leaks in SPL constructors).
    Fixed bug GH-16646 (UAF in ArrayObject::unset() and ArrayObject::exchangeArray()).
    Standard:
    Fixed bug GH-16293 (Failed assertion when throwing in assert() callback with bail enabled).
    Streams:
    Fixed bug GHSA-c5f2-jwm7-mmq2 (Configuring a proxy in a stream context might allow for CRLF injection in URIs). (CVE-2024-11234)
    Fixed bug GHSA-r977-prxv-hc43 (Single byte overread with convert.quoted-printable-decode filter). (CVE-2024-11233)
    SysVMsg:
    Fixed bug GH-16592 (msg_send() crashes when a type does not properly serialized).
    SysVShm:
    Fixed bug GH-16591 (Assertion error in shm_put_var).
    XMLReader:
    Fixed bug GH-16292 (Segmentation fault in ext/xmlreader/php_xmlreader.c).
    Zlib:
    Fixed bug GH-16326 (Memory management is broken for bad dictionaries.) (cmb)</changelog>
</package>
<package pkgid="642b1a08090c330b2277dbc66b6c3f32e298391e4043e5961b9f48489f31b8c0911191bf3c28008221d7a9a8b54fd74a571447401d4541d6378419d42d5bc5f2" name="apache2-mod_php8-debugsource" arch="x86_64">
  <version epoch="0" ver="8.3.14" rel="1.0.2.1.sr20241103"/>
  <changelog author="pgajdos@suse.com" date="1695988800">- version update to 8.2.11
  * This is a bug fix release.
  * https://www.php.net/ChangeLog-8.php#8.2.11</changelog>
  <changelog author="pgajdos@suse.com" date="1698321600">- version update to 8.2.12
  * This is a bug fix release.
    https://www.php.net/ChangeLog-8.php#8.2.12</changelog>
  <changelog author="pgajdos@suse.com" date="1700827200">- version update to 8.2.13
  * This is a bug fix release.
    https://www.php.net/ChangeLog-8.php#8.2.13</changelog>
  <changelog author="pgajdos@suse.com" date="1700827201">- version update to 8.3.0
  * https://www.php.net/releases/8.3/en.php
  * Typed class constants
  * Dynamic class constant fetch
  * New #[\Override] attribute
  * Deep-cloning of readonly properties
  * New json_validate() function
  * New Randomizer::getBytesFromString() method
  * New Randomizer::getFloat() and Randomizer::nextFloat() methods
  * New DOMElement::getAttributeNames(),
    DOMElement::insertAdjacentElement(),
    DOMElement::insertAdjacentText(),
    DOMElement::toggleAttribute(),
    DOMNode::contains(), DOMNode::getRootNode(),
    DOMNode::isEqualNode(), DOMNameSpaceNode::contains(), and
    DOMParentNode::replaceChildren() methods.
  * New IntlCalendar::setDate(),
    IntlCalendar::setDateTime(),
    IntlGregorianCalendar::createFromDate(), and
    IntlGregorianCalendar::createFromDateTime() methods.
  * New ldap_connect_wallet(), and ldap_exop_sync() functions.
  * New mb_str_pad() function.
  * New posix_sysconf(), posix_pathconf(), posix_fpathconf(),
    and posix_eaccess() functions.
  * New ReflectionMethod::createFromMethodName() method.
  * New socket_atmark() function.
  * New str_increment(), str_decrement(),
    and stream_context_set_options() functions.
  * New ZipArchive::getArchiveFlag() method.
  * Support for generation EC keys with custom EC parameters in
    OpenSSL extension.
  * New INI setting zend.max_allowed_stack_size to set the maximum
    allowed stack size.
  * php.ini now supports fallback/default value syntax.
  * Anonymous classes can now be readonly.
  * https://www.php.net/ChangeLog-8.php#PHP_8_3
- modified patches
  % php-ar-flags.patch (refreshed)
  % php-build-reproducible-phar.patch (refreshed)
  % php-ini.patch (refreshed)
- modified sources
  % php8.keyring
- deleted patches
  - php-systzdata-v23.patch
- added patches
  + php-systzdata-v24.patch</changelog>
  <changelog author="Manu Maier &lt;mmanu84@outlook.de&gt;" date="1703678400">- version update to 8.3.1
  * This is a bug fix release.
    https://www.php.net/ChangeLog-8.php#8.3.1</changelog>
  <changelog author="pgajdos@suse.com" date="1705579200">- version update to 8.3.2
  * This is a bug fix release.
- modified patches
  % php-ar-flags.patch (refreshed)
  % php-build-reproducible-phar.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1708084800">- version update to 8.3.3
  * A bugfix release.
- modified patches
  % php-build-reproducible-phar.patch (refreshed)</changelog>
  <changelog author="Pedro Monreal &lt;pmonreal@suse.com&gt;" date="1709726400">- Use the system default cipher list instead of hardcoded values
  by using crypto-policies. [bsc#1211301]
  * Use the --with-system-ciphers configure option.</changelog>
  <changelog author="pgajdos@suse.com" date="1710849600">- version update to 8.3.4
  * This is a bug fix release.</changelog>
  <changelog author="pgajdos@suse.com" date="1712923200">- version update to 8.3.6 [bsc#1222857] [bsc#1222858]
    Core:
    Fixed GH-13569 (GC buffer unnecessarily grows up to GC_MAX_BUF_SIZE when scanning WeakMaps).
    Fixed bug GH-13612 (Corrupted memory in destructor with weak references).
    Fixed bug GH-13446 (Restore exception handler after it finishes).
    Fixed bug GH-13784 (AX_GCC_FUNC_ATTRIBUTE failure).
    Fixed bug GH-13670 (GC does not scale well with a lot of objects created in destructor).
    DOM:
    Add some missing ZPP checks.
    Fix potential memory leak in XPath evaluation results.
    FPM:
    Fixed GH-11086 (FPM: config test runs twice in daemonised mode).
    Fix incorrect check in fpm_shm_free().
    GD:
    Fixed bug GH-12019 (add GDLIB_CFLAGS in feature tests).
    Gettext:
    Fixed sigabrt raised with dcgettext/dcngettext calls with gettext 0.22.5 with category set to LC_ALL.
    MySQLnd:
    Fix GH-13452 (Fixed handshake response [mysqlnd]).
    Fix incorrect charset length in check_mb_eucjpms().
    Opcache:
    Fixed GH-13508 (JITed QM_ASSIGN may be optimized out when op1 is null).
    Fixed GH-13712 (Segmentation fault for enabled observers when calling trait method of internal trait when opcache is loaded).
    Random:
    Fixed bug GH-13544 (Pre-PHP 8.2 compatibility for mt_srand with unknown modes).
    Fixed bug GH-13690 (Global Mt19937 is not properly reset in-between requests when MT_RAND_PHP is used).
    Session:
    Fixed bug GH-13680 (Segfault with session_decode and compilation error).
    SPL:
    Fixed bug GH-13685 (Unexpected null pointer in zend_string.h).
    Standard:
    Fixed bug GH-11808 (Live filesystem modified by tests).
    Fixed GH-13402 (Added validation of `\n` in $additional_headers of mail()).
    Fixed bug GH-13203 (file_put_contents fail on strings over 4GB on Windows).
    Fixed bug GHSA-pc52-254m-w9w7 (Command injection via array-ish $command parameter of proc_open). (CVE-2024-1874)
    Fixed bug GHSA-wpj3-hf5j-x4v4 (__Host-/__Secure- cookie bypass due to partial CVE-2022-31629 fix). (CVE-2024-2756)
    Fixed bug GHSA-h746-cjrr-wfmr (password_verify can erroneously return true, opening ATO risk). (CVE-2024-3096)
    Fixed bug GHSA-fjp9-9hwx-59fq (mb_encode_mimeheader runs endlessly for some inputs). (CVE-2024-2757)
    Fix bug GH-13932 (Attempt to fix mbstring on windows build) (msvc).</changelog>
  <changelog author="pgajdos@suse.com" date="1715256000">- version update to 8.3.7
    Core:
    Fixed zend_call_stack build with Linux/uclibc-ng without thread support.
    Fixed bug GH-13772 (Invalid execute_data-&gt;opline pointers in observer fcall handlers when JIT is enabled).
    Fixed bug GH-13931 (Applying zero offset to null pointer in Zend/zend_opcode.c).
    Fixed bug GH-13942 (Align the behavior of zend-max-execution-timers with other timeout implementations).
    Fixed bug GH-14003 (Broken cleanup of unfinished calls with callable convert parameters).
    Fixed bug GH-14013 (Erroneous dnl appended in configure).
    Fixed bug GH-10232 (If autoloading occurs during constant resolution filename and lineno are identified incorrectly).
    Fixed bug GH-13727 (Missing void keyword).
    Fibers:
    Fixed bug GH-13903 (ASAN false positive underflow when executing copy()).
    Fileinfo:
    Fixed bug GH-13795 (Test failing in ext/fileinfo/tests/bug78987.phpt on big-endian PPC).
    FPM:
    Fixed bug GH-13563 (Setting bool values via env in FPM config fails).
    Intl:
    Fixed build for icu 74 and onwards.
    MySQLnd:
    Fix shift out of bounds on 32-bit non-fast-path platforms.
    Opcache:
    Fixed bug GH-13433 (Segmentation Fault in zend_class_init_statics when using opcache.preload).
    Fixed incorrect assumptions across compilation units for static calls.
    OpenSSL:
    Fixed bug GH-10495 (feof on OpenSSL stream hangs indefinitely).
    PDO SQLite:
    Fix GH-13984 (Buffer size is now checked before memcmp).
    Fix GH-13998 (Manage refcount of agg_context-&gt;val correctly).
    Phar:
    Fixed bug GH-13836 (Renaming a file in a Phar to an already existing filename causes a NULL pointer dereference).
    Fixed bug GH-13833 (Applying zero offset to null pointer in zend_hash.c).
    Fix potential NULL pointer dereference before calling EVP_SignInit.
    PHPDBG:
    Fixed bug GH-13827 (Null pointer access of type 'zval' in phpdbg_frame).
    Posix:
    Fix usage of reentrant functions in ext/posix.
    Session:
    Fixed bug GH-13856 (Member access within null pointer of type 'ps_files' in ext/session/mod_files.c).
    Fixed bug GH-13891 (memleak and segfault when using ini_set with session.trans_sid_hosts).
    Fixed buffer _read/_write size limit on windows for the file mode.
    Streams:
    Fixed file_get_contents() on Windows fails with "errno=22 Invalid argument".
    Fixed bug GH-13264 (Part 1 - Memory leak on stream filter failure).
    Fixed bug GH-13860 (Incorrect PHP_STREAM_OPTION_CHECK_LIVENESS case in ext/openssl/xp_ssl.c - causing use of dead socket).
    Fixed bug GH-11678 (Build fails on musl 1.2.4 - lfs64).
    Treewide:
    Fix gcc-14 Wcalloc-transposed-args warnings.</changelog>
  <changelog author="pgajdos@suse.com" date="1717761600">- version update to 8.3.8 [bsc#1226073]
    CGI:
    Fixed buffer limit on Windows, replacing read call usage by _read.
    Fixed bug GHSA-3qgc-jrrr-25jv (Bypass of CVE-2012-1823, Argument Injection in PHP-CGI). (CVE-2024-4577)
    CLI:
    Fixed bug GH-14189 (PHP Interactive shell input state incorrectly handles quoted heredoc literals.).
    Core:
    Fixed bug GH-13970 (Incorrect validation of #[Attribute] flags type for non-compile-time expressions).
    DOM:
    Fix crashes when entity declaration is removed while still having entity references.
    Fix references not handled correctly in C14N.
    Fix crash when calling childNodes next() when iterator is exhausted.
    Fix crash in ParentNode::append() when dealing with a fragment containing text nodes.
    Filter:
    Fixed bug GHSA-w8qr-v226-r27w (Filter bypass in filter_var FILTER_VALIDATE_URL). (CVE-2024-5458)
    FPM:
    Fix bug GH-14175 (Show decimal number instead of scientific notation in systemd status).
    Hash:
    ext/hash: Swap the checking order of `__has_builtin` and `__GNUC__` (Saki Takamachi)
    Intl:
    Fixed build regression on systems without C++17 compilers.
    MySQLnd:
    Fix bug GH-14255 (mysqli_fetch_assoc reports error from nested query).
    Opcache:
    Fixed bug GH-14109 (Fix accidental persisting of internal class constant in shm).
    OpenSSL:
    The openssl_private_decrypt function in PHP and Marvin attack.
    Standard:
    Fixed bug GHSA-9fcc-425m-g385 (Bypass of CVE-2024-1874). (CVE-2024-5585)
    XML:
    Fixed bug GH-14124 (Segmentation fault with XML extension under certain memory limit).
    XMLReader:
    Fixed bug GH-14183 (XMLReader::open() can't be overridden).
- modified patches
  % php-build-reproducible-phar.patch (refreshed)</changelog>
  <changelog author="pgajdos@suse.com" date="1718884800">- drop unmaintained apache-rex usage</changelog>
  <changelog author="pgajdos@suse.com" date="1720353600">- version update to 8.3.9
    Core:
    Fixed bug GH-14315 (Incompatible pointer type warnings).
    Fixed bug GH-12814 (max_execution_time reached too early on MacOS 14 when running on Apple Silicon).
    Fixed bug GH-14387 (Crash when stack walking in destructor of yielded from values during Generator-&gt;throw()).
    Fixed bug GH-14456 (Attempting to initialize class with private constructor calls destructor).
    Fixed bug GH-14510 (memleak due to missing pthread_attr_destroy()-call).
    Fixed bug GH-14549 (Incompatible function pointer type for fclose).
    BCMatch:
    Fixed bug (bcpowmod() with mod = -1 returns 1 when it must be 0).
    Curl:
    Fixed bug GH-14307 (Test curl_basic_024 fails with curl 8.8.0).
    DOM:
    Fixed bug GH-14343 (Memory leak in xml and dom).
    FPM:
    Fixed bug GH-14037 (PHP-FPM ping.path and ping.response config vars are ignored in status pool).
    GD:
    Fix parameter numbers for imagecolorset().
    Intl:
    Fix reference handling in SpoofChecker.
    MySQLnd:
    Partially fix bug GH-10599 (Apache crash on Windows when using a self-referencing anonymous function inside a class with an active mysqli connection).
    Opcache:
    Fixed bug GH-14267 (opcache.jit=off does not allow enabling JIT at runtime).
    Fixed TLS access in JIT on FreeBSD/amd64.
    Fixed bug GH-11188 (Error when building TSRM in ARM64).
    PDO ODBC:
    Fixed bug GH-14367 (incompatible SDWORD type with iODBC).
    PHPDBG:
    Fixed bug GH-13681 (segfault on watchpoint addition failure).
    Soap:
    Fixed bug #47925 (PHPClient can't decompress response).
    Fix missing error restore code.
    Fix memory leak if calling SoapServer::setObject() twice.
    Fix memory leak if calling SoapServer::setClass() twice.
    Fix reading zlib ini settings in ext-soap.
    Fix memory leaks with string function name lookups.
    Fixed bug #69280 (SoapClient classmap doesn't support fully qualified class name).
    Fixed bug #76232 (SoapClient Cookie Header Semicolon).
    Fixed memory leaks when calling SoapFault::__construct() twice.
    Sodium:
    Fix memory leaks in ext/sodium on failure of some functions.
    SPL:
    Fixed bug GH-14290 (Member access within null pointer in extension spl).
    Standard:
    Fixed bug GH-14483 (Fixed off-by-one error in checking length of abstract namespace Unix sockets).
    Streams:
    Fixed bug GH-11078 (PHP Fatal error triggers pointer being freed was not allocated and malloc: double free for ptr errors).</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1723809600">- version update to 8.3.10
    Core:
    Fixed bug GH-13922 (Fixed support for systems with sysconf(_SC_GETPW_R_SIZE_MAX) == -1).
    Fixed bug GH-14626 (Fix is_zend_ptr() for huge blocks).
    Fixed bug GH-14590 (Memory leak in FPM test gh13563-conf-bool-env.phpt.
    Fixed OSS-Fuzz #69765.
    Fixed bug GH-14741 (Segmentation fault in Zend/zend_types.h).
    Fixed bug GH-14969 (Use-after-free in property coercion with __toString()).
    Dom:
    Fixed bug GH-14702 (DOMDocument::xinclude() crash).
    Fileinfo:
    Fixed bug GH-14888 (README.REDIST.BINS refers to non-existing LICENSE).
    Gd:
    ext/gd/tests/gh10614.phpt: skip if no PNG support.
    restored warning instead of fata error.
    LibXML:
    Fixed bug GH-14563 (Build failure with libxml2 v2.13.0).
    Opcache:
    Fixed bug GH-14550 (No warning message when Zend DTrace is enabled that opcache.jit is implictly disabled).
    Output:
    Fixed bug GH-14808 (Unexpected null pointer in Zend/zend_string.h with empty output buffer).
    PDO:
    Fixed bug GH-14712 (Crash with PDORow access to null property).
    Phar:
    Fixed bug GH-14603 (null string from zip entry).
    PHPDBG:
    Fixed bug GH-14596 (crashes with ASAN and ZEND_RC_DEBUG=1).
    Fixed bug GH-14553 (echo output trimmed at NULL byte).
    Shmop:
    Fixed bug GH-14537 (shmop Windows 11 crashes the process).
    SPL:
    Fixed bug GH-14639 (Member access within null pointer in ext/spl/spl_observer.c).
    Standard:
    Fixed bug GH-14775 (range function overflow with negative step argument).
    Fix 32-bit wordwrap test failures.
    Fixed bug GH-14774 (time_sleep_until overflow).
    Streams:
    Fixed bug GH-14930 (Custom stream wrapper dir_readdir output truncated to 255 characters in PHP 8.3).
    Tidy:
    Fix memory leak in tidy_repair_file().
    Treewide:
    Fix compatibility with libxml2 2.13.2.
    XML:
    Move away from to-be-deprecated libxml fields.
    Fixed bug GH-14834 (Error installing PHP when --with-pear is used).</changelog>
  <changelog author="pgajdos@suse.com" date="1725019200">- version update to 8.3.11
    Core:
    Fixed bug GH-15020 (Memory leak in Zend/Optimizer/escape_analysis.c).
    Fixed bug GH-15023 (Memory leak in Zend/zend_ini.c).
    Fixed bug GH-13330 (Append -Wno-implicit-fallthrough flag conditionally).
    Fix uninitialized memory in network.c.
    Fixed bug GH-15108 (Segfault when destroying generator during shutdown).
    Fixed bug GH-15275 (Crash during GC of suspended generator delegate).
    Curl:
    Fixed case when curl_error returns an empty string.
    DOM:
    Fix UAF when removing doctype and using foreach iteration.
    FFI:
    Fixed bug GH-14286 (ffi enum type (when enum has no name) make memory leak).
    Hash:
    Fix crash when converting array data for array in shm in xxh3.
    Intl:
    Fixed bug GH-15087 (IntlChar::foldCase()'s $option is not optional).
    Opcache:
    Fixed bug GH-13817 (Segmentation fault for enabled observers after pass 4).
    Fixed bug GH-13775 (Memory leak possibly related to opcache SHM placement).
    Output:
    Fixed bug GH-15179 (Segmentation fault (null pointer dereference) in ext/standard/url_scanner_ex.re).
    PDO_Firebird:
    Fix bogus fallthrough path in firebird_handle_get_attribute().
    PHPDBG:
    Fixed bug GH-13199 (EOF emits redundant prompt in phpdbg local console mode with libedit/readline).
    Fixed bug GH-15268 (heap buffer overflow in phpdbg (zend_hash_num_elements() Zend/zend_hash.h)).
    Fixed bug GH-15210 use-after-free on watchpoint allocations.
    Soap:
    Fixed bug #55639 (Digest autentication dont work).
    Fix SoapFault property destruction.
    Fixed bug GH-15252 (SOAP XML broken since PHP 8.3.9 when using classmap constructor option).
    Standard:
    Fix passing non-finite timeout values in stream functions.
    Fixed GH-14780 p(f)sockopen timeout overflow.
    Streams:
    Fixed bug GH-15028 (Memory leak in ext/phar/stream.c).
    Fixed bug GH-15034 (Integer overflow on stream_notification_callback byte_max parameter with files bigger than 2GB).
    Reverted fix for GH-14930 (Custom stream wrapper dir_readdir output truncated to 255 characters).
    Tidy:
    Fix memory leaks in ext/tidy basedir restriction code.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1727352000">- version update to 8.3.12 [bsc#1231358], [bsc#1231382], [bsc#1231360]
    CGI:
    Fixed bug GHSA-p99j-rfp4-xqvq (Bypass of CVE-2024-4577, Parameter Injection Vulnerability). (CVE-2024-8926)
    Fixed bug GHSA-94p6-54jq-9mwp (cgi.force_redirect configuration is bypassable due to the environment variable collision). (CVE-2024-8927)
    Core:
    Fixed bug GH-15408 (MSan false-positve on zend_max_execution_timer).
    Fixed bug GH-15515 (Configure error grep illegal option q).
    Fixed bug GH-15514 (Configure error: genif.sh: syntax error).
    Fixed bug GH-15565 (--disable-ipv6 during compilation produces error EAI_SYSTEM not found).
    Fixed bug GH-15587 (CRC32 API build error on arm 32-bit).
    Fixed bug GH-15330 (Do not scan generator frames more than once).
    Fixed uninitialized lineno in constant AST of internal enums.
    Curl:
    Fixed bug GH-15547 (curl_multi_select overflow on timeout argument).
    DOM:
    Fixed bug GH-15551 (Segmentation fault (access null pointer) in ext/dom/xml_common.h).
    Fixed bug GH-15654 (Signed integer overflow in ext/dom/nodelist.c).
    Fileinfo:
    Fixed bug GH-15752 (Incorrect error message for finfo_file with an empty filename argument).
    FPM:
    Fixed bug GHSA-865w-9rf3-2wh5 (Logs from childrens may be altered). (CVE-2024-9026)
    MySQLnd:
    Fixed bug GH-15432 (Heap corruption when querying a vector).
    Opcache:
    Fixed bug GH-15661 (Access null pointer in Zend/Optimizer/zend_inference.c).
    Fixed bug GH-15658 (Segmentation fault in Zend/zend_vm_execute.h).
    SAPI:
    Fixed bug GHSA-9pqp-7h25-4f32 (Erroneous parsing of multipart form data). (CVE-2024-8925)
    Standard:
    Fixed bug GH-15552 (Signed integer overflow in ext/standard/scanf.c).
    Streams:
    Fixed bug GH-15628 (php_stream_memory_get_buffer() not zero-terminated).</changelog>
  <changelog author="Thorsten Kukuk &lt;kukuk@suse.com&gt;" date="1727524800">- Add /srv/www directories to filelist [bsc#1231027]</changelog>
  <changelog author="pgajdos@suse.com" date="1729771200">- version update to 8.3.13
    Calendar:
    Fixed GH-16240: jdtounix overflow on argument value.
    Fixed GH-16241: easter_days/easter_date overflow on year argument.
    Fixed GH-16263: jddayofweek overflow.
    Fixed GH-16234: jewishtojd overflow.
    CLI:
    Fixed bug GH-16137: duplicate http headers when set several times by the client.
    Core:
    Fixed bug GH-16054 (Segmentation fault when resizing hash table iterator list while adding).
    Fixed bug GH-15905 (Assertion failure for TRACK_VARS_SERVER).
    Fixed bug GH-15907 (Failed assertion when promoting Serialize deprecation to exception).
    Fixed bug GH-15851 (Segfault when printing backtrace during cleanup of nested generator frame).
    Fixed bug GH-15866 (Core dumped in Zend/zend_generators.c).
    Fixed bug GH-16188 (Assertion failure in Zend/zend_exceptions.c).
    Fixed bug GH-16233 (Observer segfault when calling user function in internal function via trampoline).
    DOM:
    Fixed bug GH-16039 (Segmentation fault (access null pointer) in ext/dom/parentnode/tree.c).
    Fixed bug GH-16149 (Null pointer dereference in DOMElement-&gt;getAttributeNames()).
    Fixed bug GH-16151 (Assertion failure in ext/dom/parentnode/tree.c).
    Fixed bug GH-16150 (Use after free in php_dom.c).
    Fixed bug GH-16152 (Memory leak in DOMProcessingInstruction/DOMDocument).
    JSON:
    Fixed bug GH-15168 (stack overflow in json_encode()).
    GD:
    Fixed bug GH-16232 (bitshift overflow on wbmp file content reading / fix backport from upstream).
    Fixed bug GH-12264 (overflow/underflow on imagerotate degrees value) (David Carlier)
    Fixed bug GH-16274 (imagescale underflow on RBG channels / fix backport from upstream).
    LDAP:
    Fixed bug GH-16032 (Various NULL pointer dereferencements in ldap_modify_batch()).
    Fixed bug GH-16101 (Segfault in ldap_list(), ldap_read(), and ldap_search() when LDAPs array is not a list).
    Fix GH-16132 (php_ldap_do_modify() attempts to free pointer not allocated by ZMM.).
    Fix GH-16136 (Memory leak in php_ldap_do_modify() when entry is not a proper dictionary).
    MBString:
    Fixed bug GH-16261 (Reference invariant broken in mb_convert_variables()).
    OpenSSL:
    Fixed stub for openssl_csr_new.
    PCRE:
    Fixed bug GH-16189 (underflow on offset argument).
    Fixed bug GH-16184 (UBSan address overflowed in ext/pcre/php_pcre.c).
    PHPDBG:
    Fixed bug GH-15901 (phpdbg: Assertion failure on i funcs).
    Fixed bug GH-16181 (phpdbg: exit in exception handler reports fatal error).
    Reflection:
    Fixed bug GH-16187 (Assertion failure in ext/reflection/php_reflection.c).
    SAPI:
    Fixed bug GH-15395 (php-fpm: zend_mm_heap corrupted with cgi-fcgi request).
    SimpleXML:
    Fixed bug GH-15837 (Segmentation fault in ext/simplexml/simplexml.c).
    Sockets:
    Fixed bug GH-16267 (socket_strerror overflow on errno argument).
    SOAP:
    Fixed bug #73182 (PHP SOAPClient does not support stream context HTTP headers in array form).
    Fixed bug #62900 (Wrong namespace on xsd import error message).
    Fixed bug GH-15711 (SoapClient can't convert BackedEnum to scalar value).
    Fixed bug GH-16237 (Segmentation fault when cloning SoapServer).
    Fix Soap leaking http_msg on error.
    Fixed bug GH-16256 (Assertion failure in ext/soap/php_encoding.c:460).
    Fixed bug GH-16259 (Soap segfault when classmap instantiation fails).
    SPL:
    Fixed bug GH-15918 (Assertion failure in ext/spl/spl_fixedarray.c).
    Standard:
    Fixed bug GH-16053 (Assertion failure in Zend/zend_hash.c).
    Fixed bug GH-15169 (stack overflow when var serialization in ext/standard/var).
    Streams:
    Fixed bugs GH-15908 and GH-15026 (leak / assertion failure in streams.c).
    Fixed bug GH-15980 (Signed integer overflow in main/streams/streams.c).
    TSRM:
    Prevent closing of unrelated handles.</changelog>
  <changelog author="pgajdos@suse.com" date="1732190400">- version update to 8.3.14
    CLI:
    Fixed bug GH-16373 (Shebang is not skipped for router script in cli-server started through shebang).
    Fixed bug GHSA-4w77-75f9-2c8w (Heap-Use-After-Free in sapi_read_post_data Processing in CLI SAPI Interface).
    COM:
    Fixed out of bound writes to SafeArray data.
    Core:
    Fixed bug GH-16168 (php 8.1 and earlier crash immediately when compiled with Xcode 16 clang on macOS 15).
    Fixed bug GH-16371 (Assertion failure in Zend/zend_weakrefs.c:646).
    Fixed bug GH-16515 (Incorrect propagation of ZEND_ACC_RETURN_REFERENCE for call trampoline).
    Fixed bug GH-16509 (Incorrect line number in function redeclaration error).
    Fixed bug GH-16508 (Incorrect line number in inheritance errors of delayed early bound classes).
    Fixed bug GH-16648 (Use-after-free during array sorting).
    Curl:
    Fixed bug GH-16302 (CurlMultiHandle holds a reference to CurlHandle if curl_multi_add_handle fails).
    Date:
    Fixed bug GH-16454 (Unhandled INF in date_sunset() with tiny $utcOffset).
    Fixed bug GH-14732 (date_sun_info() fails for non-finite values).
    DBA:
    Fixed bug GH-16390 (dba_open() can segfault for "pathless" streams).
    DOM:
    Fixed bug GH-16316 (DOMXPath breaks when not initialized properly).
    Add missing hierarchy checks to replaceChild.
    Fixed bug GH-16336 (Attribute intern document mismanagement).
    Fixed bug GH-16338 (Null-dereference in ext/dom/node.c).
    Fixed bug GH-16473 (dom_import_simplexml stub is wrong).
    Fixed bug GH-16533 (Segfault when adding attribute to parent that is not an element).
    Fixed bug GH-16535 (UAF when using document as a child).
    Fixed bug GH-16593 (Assertion failure in DOM-&gt;replaceChild).
    Fixed bug GH-16595 (Another UAF in DOM -&gt; cloneNode).
    EXIF:
    Fixed bug GH-16409 (Segfault in exif_thumbnail when not dealing with a real file).
    FFI:
    Fixed bug GH-16397 (Segmentation fault when comparing FFI object).
    Filter:
    Fixed bug GH-16523 (FILTER_FLAG_HOSTNAME accepts ending hyphen).
    FPM:
    Fixed bug GH-16628 (FPM logs are getting corrupted with this log statement).
    GD:
    Fixed bug GH-16334 (imageaffine overflow on matrix elements).
    Fixed bug GH-16427 (Unchecked libavif return values).
    Fixed bug GH-16559 (UBSan abort in ext/gd/libgd/gd_interpolation.c:1007).
    GMP:
    Fixed floating point exception bug with gmp_pow when using large exposant values. (David Carlier).
    Fixed bug GH-16411 (gmp_export() can cause overflow).
    Fixed bug GH-16501 (gmp_random_bits() can cause overflow).
    Fixed gmp_pow() overflow bug with large base/exponents.
    Fixed segfaults and other issues related to operator overloading with GMP objects.
    LDAP:
    Fixed bug GHSA-g665-fm4p-vhff (OOB access in ldap_escape). (CVE-2024-8932)
    MBstring:
    Fixed bug GH-16361 (mb_substr overflow on start/length arguments).
    MySQLnd:
    Fixed bug GHSA-h35g-vwh6-m678 (Leak partial content of the heap through heap buffer over-read). (CVE-2024-8929)
    Opcache:
    Fixed bug GH-16408 (Array to string conversion warning emitted in optimizer).
    OpenSSL:
    Fixed bug GH-16357 (openssl may modify member types of certificate arrays).
    Fixed bug GH-16433 (Large values for openssl_csr_sign() $days overflow).
    Fix various memory leaks on error conditions in openssl_x509_parse().
    PDO DBLIB:
    Fixed bug GHSA-5hqh-c84r-qjcv (Integer overflow in the dblib quoter causing OOB writes). (CVE-2024-11236)
    PDO Firebird:
    Fixed bug GHSA-5hqh-c84r-qjcv (Integer overflow in the firebird quoter causing OOB writes). (CVE-2024-11236)
    PDO ODBC:
    Fixed bug GH-16450 (PDO_ODBC can inject garbage into field values).
    Phar:
    Fixed bug GH-16406 (Assertion failure in ext/phar/phar.c:2808).
    PHPDBG:
    Fixed bug GH-16174 (Empty string is an invalid expression for ev).
    Reflection:
    Fixed bug GH-16601 (Memory leak in Reflection constructors).
    Session:
    Fixed bug GH-16385 (Unexpected null returned by session_set_cookie_params).
    Fixed bug GH-16290 (overflow on cookie_lifetime ini value).
    SOAP:
    Fixed bug GH-16318 (Recursive array segfaults soap encoding).
    Fixed bug GH-16429 (Segmentation fault access null pointer in SoapClient).
    Sockets:
    Fixed bug with overflow socket_recvfrom $length argument.
    SPL:
    Fixed bug GH-16337 (Use-after-free in SplHeap).
    Fixed bug GH-16464 (Use-after-free in SplDoublyLinkedList::offsetSet()).
    Fixed bug GH-16479 (Use-after-free in SplObjectStorage::setInfo()).
    Fixed bug GH-16478 (Use-after-free in SplFixedArray::unset()).
    Fixed bug GH-16588 (UAF in Observer-&gt;serialize).
    Fix GH-16477 (Segmentation fault when calling __debugInfo() after failed SplFileObject::__constructor).
    Fixed bug GH-16589 (UAF in SplDoublyLinked-&gt;serialize()).
    Fixed bug GH-14687 (segfault on SplObjectIterator instance).
    Fixed bug GH-16604 (Memory leaks in SPL constructors).
    Fixed bug GH-16646 (UAF in ArrayObject::unset() and ArrayObject::exchangeArray()).
    Standard:
    Fixed bug GH-16293 (Failed assertion when throwing in assert() callback with bail enabled).
    Streams:
    Fixed bug GHSA-c5f2-jwm7-mmq2 (Configuring a proxy in a stream context might allow for CRLF injection in URIs). (CVE-2024-11234)
    Fixed bug GHSA-r977-prxv-hc43 (Single byte overread with convert.quoted-printable-decode filter). (CVE-2024-11233)
    SysVMsg:
    Fixed bug GH-16592 (msg_send() crashes when a type does not properly serialized).
    SysVShm:
    Fixed bug GH-16591 (Assertion error in shm_put_var).
    XMLReader:
    Fixed bug GH-16292 (Segmentation fault in ext/xmlreader/php_xmlreader.c).
    Zlib:
    Fixed bug GH-16326 (Memory management is broken for bad dictionaries.) (cmb)</changelog>
</package>
<package pkgid="4c05e6d4ac959177b7492fe3a3636e675038e50fc3444fb5d1d428cfbc6ba1b08b9dd32ac084e96559d0075c27645ba6153b314fef1fc9da19a17d146046b981" name="apache2-mod_uwsgi" arch="x86_64">
  <version epoch="0" ver="2.0.28" rel="2.0.2.1.sr20241103"/>
  <changelog author="pgajdos@suse.com" date="1633003200">- do not require python2, drop python plugin [bsc#1191174]</changelog>
  <changelog author="pgajdos@suse.com" date="1633608000">- greenlet and gevent plugins require uwsgi-python3 instead of
  uwsgi-python</changelog>
  <changelog author="Michael Str&#xF6;der &lt;michael@stroeder.com&gt;" date="1638705600">- update 2.0.20:
  * Switch default python for build to python3 (Riccardo Magliocchetti)
  * Add support for PHP 8 (Riccardo Magliocchetti)
  * Drop support for PHP &lt; 7 as it is EOL since end of 2018 (Riccardo Magliocchetti)
  * Fix segfaults when using –wsgi-env-behavior=holy (Antonio Cuni)
  * Replace uwsgi.h system includes in core and proto dirs for Bazel (Serge Bazanski)
  * gevent: fix compilation with clang11 (László Károlyi)
  * Fix Python 3.9 deprecations warnings (Riccardo Magliocchetti)
  * Add trove classifier for Python 3.9 (Adrian)
  * Fix message in Log SIGINT/SIGTERM triggered kill_them_all (Delena Malan)
  * Support 7 in weekedays as an alias for sunday to match crontab behaviour (Riccardo Magliocchetti)
  * Document http-timeout default of 60 seconds (Etienne H)
  * Add option to override python sys.executable using py-executable config
  * Allow specifying an iteration to uwsgi::add_rb_timer (Luciano Rocha)
  * Allow to compile with Python versions with minor version with 2+ digits (Cyrille Pontvieux)
  * Take into account new naming for LIBPL since python 3.6 (ilrico)
  * Added missing HTTP status codes messages (James Brown)
  * Official support for Python 3.10</changelog>
  <changelog author="Martin Li&#x161;ka &lt;mliska@suse.cz&gt;" date="1652356800">- Add uwsgi-ld-noexecstack.patch in order to fix gh#unbit/uwsgi#2436.</changelog>
  <changelog author="Ben Greiner &lt;code@bnavigator.de&gt;" date="1656936000">- Build python plugins for all flavors on Tumbleweed
  * reason: so that we can pin mailman to Python 3.9</changelog>
  <changelog author="pgajdos@suse.com" date="1668513600">- php8 is supported already</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1670846400">- switch to pkgconfig(zlib) so that alternative providers can be
  used</changelog>
  <changelog author="sven@uebelacker.net" date="1670932800">- fixing uwsgi-php[78] package description
- rpmlint: removing obsolete specfile condition for python which is included in python-rpm-macros</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1673006400">- update to 2.0.21:
  * Python 3.10 support
  * Python 3.11 support
  * add tests for worker deadlocks
  * fix memory corruption in uwsgi_cache
  * Fix segfault from GEVENT_SWITCH
  * Support php 8.1
  * Use parenthesis in print() statement</changelog>
  <changelog author="pgajdos@suse.com" date="1683288000">- added patches
  fix https://github.com/unbit/uwsgi/commit/509a0fdd12870d0bf5b4c1ef7d1f7f
  + uwsgi-php82-php_module_startup-signature.patch</changelog>
  <changelog author="Andreas Schneider &lt;asn@cryptomilk.org&gt;" date="1688212800">- Use sle15_python_module_pythons</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1697630400">- Update to version 2.0.22:
  + apache2/mod_proxy_uwsgi: stricter backend HTTP response
    parsing/validation (CVE-2023-27522).
  + plugins/rack: fix compilation with ruby 3.1.
  + plugins/php: fix build with PHP &gt;= 8.2.
- Drop uwsgi-php82-php_module_startup-signature.patch: fixed
  upstream.</changelog>
  <changelog author="Ben Greiner &lt;code@bnavigator.de&gt;" date="1704542400">- Update to 2.0.23
  * Add support for Python 3.12 (Ralf Ertzinger)
  * plugins/php: ini_entries is read-only since PHP 8.3 (Remi
    Collet)
  * Silence glibc warnings against pthread robust mutex functions
    (Riccardo Magliocchetti)
  * Fixup jvm library path detection (Riccardo Magliocchetti)
  * Use sysconfig if distutils is not available (Steve Kowalik,
    Terence D. Honles, Riccardo Magliocchetti)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1708430400">- Use %autosetup macro. Allows to eliminate the usage of deprecated
  %patchN</changelog>
  <changelog author="James Oakley &lt;jfunk@funktronics.ca&gt;" date="1710504000">- Update to 2.0.24
  * properly init cache for purge_lru (Alexandre Rossi)
  * fix linking with php8 (Remi Collet)
  * remove unused variables to fix compilation (László Károlyi)
  * fix function parameter type to avoid overflow in harakiri (Shai Bentov)
  * fix socket queue stats for ipv6 (Riccardo Magliocchetti)
  * fixup -Wformat-signedness warnings (Riccardo Magliocchetti)
  * Avoid strncpy from null in pyloader (Ben Kallus)
  * add clang to compile test matrix in ci (Riccardo Magliocchetti)</changelog>
  <changelog author="pgajdos@suse.com" date="1715688000">- version update to 2.0.25.1
  * fixed build with gcc14
  2.0.25.1
  * Fix build when pcre is not found and is optional (umut)
  2.0.25
  * Update glusterfs io callback function signature for 6.0 (Ralf Ertzinger)
  * Fix default values in help for min-worker-lifetime &amp; legion-skew-tolerance (Thomas Riccardi)
  * Fix build regression with gcc &lt; 5 (Riccardo Magliocchetti)
  * Add support for building against prcre2. This changes the regexp internal data structures (Alexandre Rossi)
  * Allow the valgrind generator script to run with a different python version (Wynn Wilkes)
  * Fix a potential error with not releasing the gil in uwsgi_python_rpc (Wynn Wilkes)
  * Rework threading cancellation handling. This can fix issues with threading, missing atexit callbacks and whatnot. (Inada Naoki)
- modified patches
  % uwsgi-1.9.17-plugin_build_path.patch (refreshed)
- deleted patches
  - uwsgi-2.0.24-update-glusterfs-io-callback-signature.patch (upstreamed)</changelog>
  <changelog author="Martin Jambor &lt;mjambor@suse.com&gt;" date="1721908800">- Added a backport of uwsgi-93d07ec38b31.patch to fix a type
  incompatibility problem to enable build with GCC 14.</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1730203200">- update to 2.0.28 (bsc#1222332, CVE-2024-24795):
  * Bit more friendly log messages
  * Add more integration tests
  * Fix static library not found install error on conda
  * pyuwsgi: avoid interleaving pywsgi threadstate
  * Fix gracefully_kill_them_all with running requests
  * Fix –catch-exceptions causing a segfault in Python 3.5+
  * plugins/php: Add support for uwsgi.disconnect() function
  * plugins/python: use PyOS_*Fork stable API functions on 3.7+
  * core/uwsgi: set enable threads by default
  * plugins/python: fix compilation with Python 3.13
  * use pipe in gracefully_kill() to stop worker loop
  * port pypy plugin to python3
  * add some integrations tests
  * apache2/mod_proxy_uwsgi: let httpd handle CL/TE for
    non-http handlers CVE-2024-24795
  * remove race-condition over termination of uWSGI process
    when using need-app and lazy-apps (Hanan .T)
  * fix 32-bit compilation with GCC14 (Rosen Penev)
  * uwsgiconfig: get compiler version with -dumpfullversion
  * Fix uwsgi_regexp_match() with pcre2
- drop uwsgi-93d07ec38b31.patch (upstream)</changelog>
  <changelog author="Mark&#xE9;ta Machov&#xE1; &lt;mmachova@suse.com&gt;" date="1730808000">- add python313.patch to support the newest CPython</changelog>
</package>
<package pkgid="68d465a7efdd2afb090322cddc52b3e0015d3bb406d29cb3a04df63a99cf9f23c485224c7820eaa8af4ecb3f2bdf6def2c560b382de993cfde34b56353f79803" name="apache2-mod_uwsgi-debuginfo" arch="x86_64">
  <version epoch="0" ver="2.0.28" rel="2.0.2.1.sr20241103"/>
  <changelog author="pgajdos@suse.com" date="1633003200">- do not require python2, drop python plugin [bsc#1191174]</changelog>
  <changelog author="pgajdos@suse.com" date="1633608000">- greenlet and gevent plugins require uwsgi-python3 instead of
  uwsgi-python</changelog>
  <changelog author="Michael Str&#xF6;der &lt;michael@stroeder.com&gt;" date="1638705600">- update 2.0.20:
  * Switch default python for build to python3 (Riccardo Magliocchetti)
  * Add support for PHP 8 (Riccardo Magliocchetti)
  * Drop support for PHP &lt; 7 as it is EOL since end of 2018 (Riccardo Magliocchetti)
  * Fix segfaults when using –wsgi-env-behavior=holy (Antonio Cuni)
  * Replace uwsgi.h system includes in core and proto dirs for Bazel (Serge Bazanski)
  * gevent: fix compilation with clang11 (László Károlyi)
  * Fix Python 3.9 deprecations warnings (Riccardo Magliocchetti)
  * Add trove classifier for Python 3.9 (Adrian)
  * Fix message in Log SIGINT/SIGTERM triggered kill_them_all (Delena Malan)
  * Support 7 in weekedays as an alias for sunday to match crontab behaviour (Riccardo Magliocchetti)
  * Document http-timeout default of 60 seconds (Etienne H)
  * Add option to override python sys.executable using py-executable config
  * Allow specifying an iteration to uwsgi::add_rb_timer (Luciano Rocha)
  * Allow to compile with Python versions with minor version with 2+ digits (Cyrille Pontvieux)
  * Take into account new naming for LIBPL since python 3.6 (ilrico)
  * Added missing HTTP status codes messages (James Brown)
  * Official support for Python 3.10</changelog>
  <changelog author="Martin Li&#x161;ka &lt;mliska@suse.cz&gt;" date="1652356800">- Add uwsgi-ld-noexecstack.patch in order to fix gh#unbit/uwsgi#2436.</changelog>
  <changelog author="Ben Greiner &lt;code@bnavigator.de&gt;" date="1656936000">- Build python plugins for all flavors on Tumbleweed
  * reason: so that we can pin mailman to Python 3.9</changelog>
  <changelog author="pgajdos@suse.com" date="1668513600">- php8 is supported already</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1670846400">- switch to pkgconfig(zlib) so that alternative providers can be
  used</changelog>
  <changelog author="sven@uebelacker.net" date="1670932800">- fixing uwsgi-php[78] package description
- rpmlint: removing obsolete specfile condition for python which is included in python-rpm-macros</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1673006400">- update to 2.0.21:
  * Python 3.10 support
  * Python 3.11 support
  * add tests for worker deadlocks
  * fix memory corruption in uwsgi_cache
  * Fix segfault from GEVENT_SWITCH
  * Support php 8.1
  * Use parenthesis in print() statement</changelog>
  <changelog author="pgajdos@suse.com" date="1683288000">- added patches
  fix https://github.com/unbit/uwsgi/commit/509a0fdd12870d0bf5b4c1ef7d1f7f
  + uwsgi-php82-php_module_startup-signature.patch</changelog>
  <changelog author="Andreas Schneider &lt;asn@cryptomilk.org&gt;" date="1688212800">- Use sle15_python_module_pythons</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1697630400">- Update to version 2.0.22:
  + apache2/mod_proxy_uwsgi: stricter backend HTTP response
    parsing/validation (CVE-2023-27522).
  + plugins/rack: fix compilation with ruby 3.1.
  + plugins/php: fix build with PHP &gt;= 8.2.
- Drop uwsgi-php82-php_module_startup-signature.patch: fixed
  upstream.</changelog>
  <changelog author="Ben Greiner &lt;code@bnavigator.de&gt;" date="1704542400">- Update to 2.0.23
  * Add support for Python 3.12 (Ralf Ertzinger)
  * plugins/php: ini_entries is read-only since PHP 8.3 (Remi
    Collet)
  * Silence glibc warnings against pthread robust mutex functions
    (Riccardo Magliocchetti)
  * Fixup jvm library path detection (Riccardo Magliocchetti)
  * Use sysconfig if distutils is not available (Steve Kowalik,
    Terence D. Honles, Riccardo Magliocchetti)</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1708430400">- Use %autosetup macro. Allows to eliminate the usage of deprecated
  %patchN</changelog>
  <changelog author="James Oakley &lt;jfunk@funktronics.ca&gt;" date="1710504000">- Update to 2.0.24
  * properly init cache for purge_lru (Alexandre Rossi)
  * fix linking with php8 (Remi Collet)
  * remove unused variables to fix compilation (László Károlyi)
  * fix function parameter type to avoid overflow in harakiri (Shai Bentov)
  * fix socket queue stats for ipv6 (Riccardo Magliocchetti)
  * fixup -Wformat-signedness warnings (Riccardo Magliocchetti)
  * Avoid strncpy from null in pyloader (Ben Kallus)
  * add clang to compile test matrix in ci (Riccardo Magliocchetti)</changelog>
  <changelog author="pgajdos@suse.com" date="1715688000">- version update to 2.0.25.1
  * fixed build with gcc14
  2.0.25.1
  * Fix build when pcre is not found and is optional (umut)
  2.0.25
  * Update glusterfs io callback function signature for 6.0 (Ralf Ertzinger)
  * Fix default values in help for min-worker-lifetime &amp; legion-skew-tolerance (Thomas Riccardi)
  * Fix build regression with gcc &lt; 5 (Riccardo Magliocchetti)
  * Add support for building against prcre2. This changes the regexp internal data structures (Alexandre Rossi)
  * Allow the valgrind generator script to run with a different python version (Wynn Wilkes)
  * Fix a potential error with not releasing the gil in uwsgi_python_rpc (Wynn Wilkes)
  * Rework threading cancellation handling. This can fix issues with threading, missing atexit callbacks and whatnot. (Inada Naoki)
- modified patches
  % uwsgi-1.9.17-plugin_build_path.patch (refreshed)
- deleted patches
  - uwsgi-2.0.24-update-glusterfs-io-callback-signature.patch (upstreamed)</changelog>
  <changelog author="Martin Jambor &lt;mjambor@suse.com&gt;" date="1721908800">- Added a backport of uwsgi-93d07ec38b31.patch to fix a type
  incompatibility problem to enable build with GCC 14.</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1730203200">- update to 2.0.28 (bsc#1222332, CVE-2024-24795):
  * Bit more friendly log messages
  * Add more integration tests
  * Fix static library not found install error on conda
  * pyuwsgi: avoid interleaving pywsgi threadstate
  * Fix gracefully_kill_them_all with running requests
  * Fix –catch-exceptions causing a segfault in Python 3.5+
  * plugins/php: Add support for uwsgi.disconnect() function
  * plugins/python: use PyOS_*Fork stable API functions on 3.7+
  * core/uwsgi: set enable threads by default
  * plugins/python: fix compilation with Python 3.13
  * use pipe in gracefully_kill() to stop worker loop
  * port pypy plugin to python3
  * add some integrations tests
  * apache2/mod_proxy_uwsgi: let httpd handle CL/TE for
    non-http handlers CVE-2024-24795
  * remove race-condition over termination of uWSGI process
    when using need-app and lazy-apps (Hanan .T)
  * fix 32-bit compilation with GCC14 (Rosen Penev)
  * uwsgiconfig: get compiler version with -dumpfullversion
  * Fix uwsgi_regexp_match() with pcre2
- drop uwsgi-93d07ec38b31.patch (upstream)</changelog>
  <changelog author="Mark&#xE9;ta Machov&#xE1; &lt;mmachova@suse.com&gt;" date="1730808000">- add python313.patch to support the newest CPython</changelog>
</package>
<package pkgid="70bd766224a5da54cbad5e7e5cddbd8d12e003965986a3e36dac94e55f88cbc962e0a32433df75720f21ace40e853f8b423f3ae3be04e8bbfe04fecae15859f3" name="apache2-prefork" arch="i586">
  <version epoch="0" ver="2.4.62" rel="3.1"/>
  <changelog author="pgajdos@suse.com" date="1654689600">- update httpd-framework to svn revision 1898917</changelog>
  <changelog author="Stefan Schubert &lt;schubi@intern&gt;" date="1656417600">- Moved logrotate files from user specific directory /etc/logrotate.d
  to vendor specific directory /usr/etc/logrotate.d.</changelog>
  <changelog author="Stefan Schubert &lt;schubi@suse.com&gt;" date="1662033600">- Migration to /usr/etc: Saving user changed configuration files
  in /etc and restoring them while an RPM update.</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1663675200">- Remove references to README.QUICKSTART and point them to
  https://en.opensuse.org/SDB:Apache_installation (bsc#1203573)</changelog>
  <changelog author="Stephan Kulow &lt;coolo@suse.com&gt;" date="1663934400">- The 2.4.54 release brought support for PCRE2, but for that we also
  need to change buildrequires to pcre2-devel</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1670846400">- switch to pkgconfig(zlib) so that alternative providers can be
  used</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1674043200">- This update fixes the following security issues:
  * CVE-2022-37436 [bsc#1207251], mod_proxy backend HTTP response splitting
  * CVE-2022-36760 [bsc#1207250], mod_proxy_ajp Possible request smuggling
  * CVE-2006-20001 [bsc#1207247], mod_dav out of bounds read, or write of zero byte
- Update to 2.4.55:
  * ) SECURITY: CVE-2022-37436: Apache HTTP Server: mod_proxy prior to
    2.4.55 allows a backend to trigger HTTP response splitting
    (cve.mitre.org)
    Prior to Apache HTTP Server 2.4.55, a malicious backend can
    cause the response headers to be truncated early, resulting in
    some headers being incorporated into the response body. If the
    later headers have any security purpose, they will not be
    interpreted by the client.
    Credits: Dimas Fariski Setyawan Putra (@nyxsorcerer)
  * ) SECURITY: CVE-2022-36760: Apache HTTP Server: mod_proxy_ajp
    Possible request smuggling (cve.mitre.org)
    Inconsistent Interpretation of HTTP Requests ('HTTP Request
    Smuggling') vulnerability in mod_proxy_ajp of Apache HTTP Server
    allows an attacker to smuggle requests to the AJP server it
    forwards requests to.  This issue affects Apache HTTP Server
    Apache HTTP Server 2.4 version 2.4.54 and prior versions.
    Credits: ZeddYu_Lu from Qi'anxin Research Institute of Legendsec
    at Qi'anxin Group
  * ) SECURITY: CVE-2006-20001: mod_dav out of  bounds read, or write
    of zero byte (cve.mitre.org)
    A carefully crafted If: request header can cause a memory read,
    or write of a single zero byte, in a pool (heap) memory location
    beyond the header value sent. This could cause the process to
    crash.
    This issue affects Apache HTTP Server 2.4.54 and earlier.
  * ) mod_dav: Open the lock database read-only when possible.
    PR 36636 [Wilson Felipe &lt;wfelipe gmail.com&gt;, manu]
  * ) mod_proxy_http2: apply the standard httpd content type handling
    to responses from the backend, as other proxy modules do. Fixes PR 66391.
    Thanks to Jérôme Billiras for providing the patch.
    [Stefan Eissing]
  * ) mod_dav: mod_dav overrides dav_fs response on PUT failure. PR 35981
    [Basant Kumar Kukreja &lt;basant.kukreja sun.com&gt;, Alejandro Alvarez
    &lt;alejandro.alvarez.ayllon cern.ch&gt;]
  * ) mod_proxy_hcheck: Honor worker timeout settings.  [Yann Ylavic]
  * ) mod_http2: version 2.0.10 of the module, synchronizing changes
    with the gitgub version. This is a partial rewrite of how connections
    and streams are handled.
  - an APR pollset and pipes (where supported) are used to monitor
    the main connection and react to IO for request/response handling.
    This replaces the stuttered timed waits of earlier versions.
  - H2SerializeHeaders directive still exists, but has no longer an effect.
  - Clients that seemingly misbehave still get less resources allocated,
    but ongoing requests are no longer disrupted.
  - Fixed an issue since 1.15.24 that "Server" headers in proxied requests
    were overwritten instead of preserved. [PR by @daum3ns]
  - A regression in v1.15.24 was fixed that could lead to httpd child
    processes not being terminated on a graceful reload or when reaching
    MaxConnectionsPerChild. When unprocessed h2 requests were queued at
    the time, these could stall. See #212.
  - Improved information displayed in 'server-status' for H2 connections when
    Extended Status is enabled. Now one can see the last request that IO
    operations happened on and transferred IO stats are updated as well.
  - When reaching server limits, such as MaxRequestsPerChild, the HTTP/2 connection
    send a GOAWAY frame much too early on new connections, leading to invalid
    protocol state and a client failing the request. See PR65731 at
    &lt;https://bz.apache.org/bugzilla/show_bug.cgi?id=65731&gt;.
    The module now initializes the HTTP/2 protocol correctly and allows the
    client to submit one request before the shutdown via a GOAWAY frame
    is being announced.
  - :scheme pseudo-header values, not matching the
    connection scheme, are forwarded via absolute uris to the
    http protocol processing to preserve semantics of the request.
    Checks on combinations of pseudo-headers values/absence
    have been added as described in RFC 7540. Fixes #230.
  - A bug that prevented trailers (e.g. HEADER frame at the end) to be
    generated in certain cases was fixed. See #233 where it prevented
    gRPC responses to be properly generated.
  - Request and response header values are automatically stripped of leading
    and trialing space/tab characters. This is equivalent behaviour to what
    Apache httpd's http/1.1 parser does.
    The checks for this in nghttp2 v1.50.0+ are disabled.
  - Extensive testing in production done by Alessandro Bianchi (@alexskynet)
    on the v2.0.x versions for stability. Many thanks!
  * ) mod_proxy_http2: fixed #235 by no longer forwarding 'Host:' header when
    request ':authority' is known. Improved test case that did not catch that
    the previous 'fix' was incorrect.
  * ) mod_proxy_hcheck: hcmethod now allows for HTTP/1.1 requests
    using GET11, HEAD11 and/or OPTIONS11. [Jim Jagielski]
  * ) mod_proxy: The AH03408 warning for a forcibly closed backend
    connection is now logged at INFO level.  [Yann Ylavic]
  * ) mod_ssl: When dumping the configuration, the existence of
    certificate/key files is no longer tested.  [Joe Orton]
  * ) mod_authn_core: Add expression support to AuthName and AuthType.
    [Graham Leggett]
  * ) mod_ssl: when a proxy connection had handled a request using SSL, an
    error was logged when "SSLProxyEngine" was only configured in the
    location/proxy section and not the overall server. The connection
    continued to work, the error log was in error. Fixed PR66190.
    [Stefan Eissing]
  * ) mod_proxy_hcheck: Re-enable workers in standard ERROR state. PR 66302.
    [Alessandro Cavaliere &lt;alessandro.cavalier7 unibo.it&gt;]
  * ) mod_proxy_hcheck: Detect AJP/CPING support correctly. PR 66300.
    [Alessandro Cavaliere &lt;alessandro.cavalier7 unibo.it&gt;]
  * ) mod_http2: Export mod_http2.h as public header. [Stefan Eissing]
  * ) mod_md: a new directive `MDStoreLocks` can be used on cluster
    setups with a shared file system for `MDStoreDir` to order
    activation of renewed certificates when several cluster nodes are
    restarted at the same time. Store locks are not enabled by default.
    Restored curl_easy cleanup behaviour from v2.4.14 and refactored
    the use of curl_multi for OCSP requests to work with that.
    Fixes &lt;https://github.com/icing/mod_md/issues/293&gt;.
  * ) core: Avoid an overflow on large inputs in ap_is_matchexp.  PR 66033
    [Ruediger Pluem]
  * ) mod_heartmonitor: Allow "HeartbeatMaxServers 0" to use file based
    storage instead of slotmem. Needed after setting
    HeartbeatMaxServers default to the documented value 10 in 2.4.54.
    PR 66131.  [Jérôme Billiras]
  * ) mod_dav: DAVlockDiscovery option to disable WebDAV lock discovery
    This is a game changer for performances if client use PROPFIND a lot,
    PR 66313. [Emmanuel Dreyfus]</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1678276800">- This update fixes the following security issues:
  * CVE-2023-27522 [bsc#1209049]: mod_proxy_uwsgi HTTP response splitting
  * CVE-2023-25690 [bsc#1209047]: HTTP request splitting with mod_rewrite and mod_proxy
- Update to 2.4.56:
  * ) rotatelogs: Add -T flag to allow subsequent rotated logfiles to be
    truncated without the initial logfile being truncated.  [Eric Covener]
  * ) mod_ldap: LDAPConnectionPoolTTL should accept negative values in order to
    allow connections of any age to be reused. Up to now, a negative value
    was handled as an error when parsing the configuration file.  PR 66421.
    [nailyk &lt;bzapache nailyk.fr&gt;, Christophe Jaillet]
  * ) mod_proxy_ajp: Report an error if the AJP backend sends an invalid number
    of headers. [Ruediger Pluem]
  * ) mod_md:
  - Enabling ED25519 support and certificate transparency information when
    building with libressl v3.5.0 and newer. Thanks to Giovanni Bechis.
  - MDChallengeDns01 can now be configured for individual domains.
    Thanks to Jérôme Billiras (@bilhackmac) for the initial PR.
  - Fixed a bug found by Jérôme Billiras (@bilhackmac) that caused the challenge
    teardown not being invoked as it should.
    [Stefan Eissing]
  * ) mod_http2: client resets of HTTP/2 streams led to unwanted 500 errors
    reported in access logs and error documents. The processing of the
    reset was correct, only unneccesary reporting was caused.
    [Stefan Eissing]
  * ) mod_proxy_uwsgi: Stricter backend HTTP response parsing/validation.
    [Yann Ylavic]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1680868800">- Update to 2.4.57:
  * ) mod_proxy: Check before forwarding that a nocanon path has not been
    rewritten with spaces during processing.  [Yann Ylavic]
  * ) mod_proxy: In case that AllowEncodedSlashes is set to NoDecode do not
    double encode encoded slashes in the URL sent by the reverse proxy to the
    backend. [Ruediger Pluem]
  * ) mod_http2: fixed a crash during connection termination. See PR 66539.
    [Stefan Eissing]
  * ) mod_rewrite: Fix a 2.4.56 regression for substitutions ending
    in a question mark. PR66547. [Eric Covener]
  * ) mod_rewrite: Add "BCTLS" and "BNE" RewriteRule flags. Re-allow encoded
    characters on redirections without the "NE" flag.
    [Yann Ylavic, Eric Covener]
  * ) mod_proxy: Fix double encoding of the uri-path of the request forwarded
    to the origin server, when using mapping=encoded|servlet.  [Yann Ylavic]
  * ) mod_mime: Do not match the extention against possible query string
    parameters in case ProxyPass was used with the nocanon option.
    [Ruediger Pluem]</changelog>
  <changelog author="Dirk Stoecker &lt;opensuse@dstoecker.de&gt;" date="1691236800">- Enable building of mod_md</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1697716800">- Update to 2.4.58:
  * ) SECURITY: CVE-2023-45802: Apache HTTP Server: HTTP/2 stream
    memory not reclaimed right away on RST (cve.mitre.org)
    When a HTTP/2 stream was reset (RST frame) by a client, there
    was a time window were the request's memory resources were not
    reclaimed immediately. Instead, de-allocation was deferred to
    connection close. A client could send new requests and resets,
    keeping the connection busy and open and causing the memory
    footprint to keep on growing. On connection close, all resources
    were reclaimed, but the process might run out of memory before
    that.
    This was found by the reporter during testing of CVE-2023-44487
    (HTTP/2 Rapid Reset Exploit) with their own test client. During
    "normal" HTTP/2 use, the probability to hit this bug is very
    low. The kept memory would not become noticeable before the
    connection closes or times out.
    Users are recommended to upgrade to version 2.4.58, which fixes
    the issue.
    Credits: Will Dormann of Vul Labs
  * ) SECURITY: CVE-2023-43622: Apache HTTP Server: DoS in HTTP/2 with
    initial windows size 0 (cve.mitre.org)
    An attacker, opening a HTTP/2 connection with an initial window
    size of 0, was able to block handling of that connection
    indefinitely in Apache HTTP Server. This could be used to
    exhaust worker resources in the server, similar to the well
    known "slow loris" attack pattern.
    This has been fixed in version 2.4.58, so that such connection
    are terminated properly after the configured connection timeout.
    This issue affects Apache HTTP Server: from 2.4.55 through
    2.4.57.
    Users are recommended to upgrade to version 2.4.58, which fixes
    the issue.
    Credits: Prof. Sven Dietrich (City University of New York)
  * ) SECURITY: CVE-2023-31122: mod_macro buffer over-read
    (cve.mitre.org)
    Out-of-bounds Read vulnerability in mod_macro of Apache HTTP
    Server.This issue affects Apache HTTP Server: through 2.4.57.
    Credits: David Shoon (github/davidshoon)
  * ) mod_ssl: Silence info log message "SSL Library Error: error:0A000126:
    SSL routines::unexpected eof while reading" when using
    OpenSSL 3 by setting SSL_OP_IGNORE_UNEXPECTED_EOF if
    available. [Rainer Jung]
  * ) mod_http2: improved early cleanup of streams.
    [Stefan Eissing]
  * ) mod_proxy_http2: improved error handling on connection errors while
    response is already underway.
    [Stefan Eissing]
  * ) mod_http2: fixed a bug that could lead to a crash in main connection
    output handling. This occured only when the last request on a HTTP/2
    connection had been processed and the session decided to shut down.
    This could lead to an attempt to send a final GOAWAY while the previous
    write was still in progress. See PR 66646.
    [Stefan Eissing]
  * ) mod_proxy_http2: fix `X-Forward-Host` header to carry the correct value.
    Fixes PR66752.
    [Stefan Eissing]
  * ) mod_http2: added support for bootstrapping WebSockets via HTTP/2, as
    described in RFC 8441. A new directive 'H2WebSockets on|off' has been
    added. The feature is by default not enabled.
    As also discussed in the manual, this feature should work for setups
    using "ProxyPass backend-url upgrade=websocket" without further changes.
    Special server modules for WebSockets will have to be adapted,
    most likely, as the handling if IO events is different with HTTP/2.
    HTTP/2 WebSockets are supported on platforms with native pipes. This
    excludes Windows.
    [Stefan Eissing]
  * ) mod_rewrite: Fix a regression with both a trailing ? and [QSA].
    in OCSP stapling. PR 66672. [Frank Meier &lt;frank.meier ergon.ch&gt;, covener]
  * ) mod_http2: fixed a bug in flushing pending data on an already closed
    connection that could lead to a busy loop, preventing the HTTP/2 session
    to close down successfully. Fixed PR 66624.
    [Stefan Eissing]
  * ) mod_http2: v2.0.15 with the following fixes and improvements
  - New directive 'H2EarlyHint name value' to add headers to a response,
    picked up already when a "103 Early Hints" response is sent. 'name' and
    'value' must comply to the HTTP field restrictions.
    This directive can be repeated several times and header fields of the
    same names add. Sending a 'Link' header with 'preload' relation will
    also cause a HTTP/2 PUSH if enabled and supported by the client.
  - Fixed an issue where requests were not logged and accounted in a timely
    fashion when the connection returns to "keepalive" handling, e.g. when
    the request served was the last outstanding one.
    This led to late appearance in access logs with wrong duration times
    reported.
  - Accurately report the bytes sent for a request in the '%O' Log format.
    This addresses #203, a long outstanding issue where mod_h2 has reported
    numbers over-eagerly from internal buffering and not what has actually
    been placed on the connection.
    The numbers are now the same with and without H2CopyFiles enabled.
    [Stefan Eissing]
  * ) mod_proxy_http2: fix retry handling to not leak temporary errors.
    On detecting that that an existing connection was shutdown by the other
    side, a 503 response leaked even though the request was retried on a
    fresh connection.
    [Stefan Eissing]
  * ) mod_rewrite: Add server directory to include path as mod_rewrite requires
    test_char.h. PR 66571 [Valeria Petrov &lt;valeria.petrov@spinetix.com&gt;]
  * ) mod_http2: new directive `H2ProxyRequests on|off` to enable handling
    of HTTP/2 requests in a forward proxy configuration.
    General forward proxying is enabled via `ProxyRequests`. If the
    HTTP/2 protocol is also enabled for such a server/host, this new
    directive is needed in addition.
    [Stefan Eissing]
  * ) core: Updated conf/mime.types:
  - .js moved from 'application/javascript' to 'text/javascript'
  - .mjs was added as 'text/javascript'
  - add .opus ('audio/ogg')
  - add 'application/vnd.geogebra.slides'
  - add WebAssembly MIME types and extension
    [Mathias Bynens &lt;@mathiasbynens&gt; via PR 318,
    Richard de Boer &lt;richard tubul.net&gt;, Dave Hodder &lt;dmh dmh.org.uk&gt;,
    Zbynek Konecny &lt;zbynek1729 gmail.com&gt;]
  * ) mod_proxy_http2: fixed using the wrong "bucket_alloc" from the backend
    connection when sending data on the frontend one. This caused crashes
    or infinite loops in rare situations.
  * ) mod_proxy_http2: fixed a bug in retry/response handling that could lead
    to wrong status codes or HTTP messages send at the end of response bodies
    exceeding the announced content-length.
  * ) mod_proxy_http2: fix retry handling to not leak temporary errors.
    On detecting that that an existing connection was shutdown by the other
    side, a 503 response leaked even though the request was retried on a
    fresh connection.
  * ) mod_http2: fixed a bug that did cleanup of consumed and pending buckets in
    the wrong order when a bucket_beam was destroyed.
    [Stefan Eissing]
  * ) mod_http2: avoid double chunked-encoding on internal redirects.
    PR 66597 [Yann Ylavic, Stefan Eissing]
  * ) mod_http2: Fix reporting of `Total Accesses` in server-status to not count
    HTTP/2 requests twice. Fixes PR 66801.
    [Stefan Eissing]
  * ) mod_ssl: Fix handling of Certificate Revoked messages
    in OCSP stapling. PR 66626. [&lt;gmoniker gmail.com&gt;]
  * ) mod_http2: fixed a bug in handling of stream timeouts.
    [Stefan Eissing]
  * ) mod_tls: updating to rustls-ffi version 0.9.2 or higher.
    Checking in configure for proper version installed. Code
    fixes for changed clienthello member name.
    [Stefan Eissing]
  * ) mod_md:
  - New directive `MDMatchNames all|servernames` to allow more control over how
    MDomains are matched to VirtualHosts.
  - New directive `MDChallengeDns01Version`. Setting this to `2` will provide
    the command also with the challenge value on `teardown` invocation. In version
    1, the default, only the `setup` invocation gets this parameter.
    Refs #312. Thanks to @domrim for the idea.
  - For Managed Domain in "manual" mode, the checks if all used ServerName and
    ServerAlias are part of the MDomain now reports a warning instead of an error
    (AH10040) when not all names are present.
  - MDChallengeDns01 can now be configured for individual domains.
    Using PR from JÃ©rÃ´me Billiras (@bilhackmac) and adding test case and fixing proper working
  - Fixed a bug found by JÃ©rÃ´me Billiras (@bilhackmac) that caused the challenge
    teardown not being invoked as it should.
  * ) mod_ldap: Avoid performance overhead of APR-util rebind cache for
    OpenLDAP 2.2+.  PR 64414.  [Joe Orton]
  * ) mod_http2: new directive 'H2MaxDataFrameLen n' to limit the maximum
    amount of response body bytes put into a single HTTP/2 DATA frame.
    Setting this to 0 places no limit (but the max size allowed by the
    protocol is observed).
    The module, by default, tries to use the maximum size possible, which is
    somewhat around 16KB. This sets the maximum. When less response data is
    available, smaller frames will be sent.
  * ) mod_md: fixed passing of the server environment variables to programs
    started via MDMessageCmd and MDChallengeDns01 on *nix system.
    See &lt;https://github.com/icing/mod_md/issues/319&gt;.
    [Stefan Eissing]
  * ) mod_dav: Add DavBasePath directive to configure the repository root
    path.  PR 35077.  [Joe Orton]
  * ) mod_alias: Add AliasPreservePath directive to map the full
    path after the alias in a location. [Graham Leggett]
  * ) mod_alias: Add RedirectRelative to allow relative redirect targets to be
    issued as-is. [Eric Covener, Graham Leggett]
  * ) core: Add formats %{z} and %{strftime-format} to ErrorLogFormat, and make
    sure that if the format is configured early enough it applies to every log
    line.  PR 62161.  [Yann Ylavic]
  * ) mod_deflate: Add DeflateAlterETag to control how the ETag
    is modified. The 'NoChange' parameter mimics 2.2.x behavior.
    PR 45023, PR 39727. [Eric Covener]
  * ) core: Optimize send_brigade_nonblocking(). [Yann Ylavic, Christophe Jaillet]
  * ) mod_status: Remove duplicate keys "BusyWorkers" and "IdleWorkers".
    Resolve inconsistency between the previous two occurrences by
    counting workers in state SERVER_GRACEFUL no longer as busy,
    but instead in a new counter "GracefulWorkers" (or on HTML
    view as "workers gracefully restarting"). Also add the graceful
    counter as a new column to the existing HTML per process table
    for async MPMs. PR 63300. [Rainer Jung]</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1706529600">- use grep -E for egrep</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1708430400">- Use %autosetup macro. Allows to eliminate the usage of deprecated
  %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1712232000">- Update to 2.4.59:
  * ) mod_deflate: Fixes and better logging for handling various
    error and edge cases. [Eric Covener, Yann Ylavic, Joe Orton,
    Eric Norris &lt;enorris etsy.com&gt;]
  * ) Add CGIScriptTimeout to mod_cgi. [Eric Covener]
  * ) mod_xml2enc: Tolerate libxml2 2.12.0 and later.  PR 68610
    [ttachi &lt;tachihara AT hotmail.com&gt;]
  * ) mod_slotmem_shm: Use ap_os_is_path_absolute() to make it portable.
    [Jean-Frederic Clere]
  * ) mod_ssl: Use OpenSSL-standard functions to assemble CA
    name lists for SSLCACertificatePath/SSLCADNRequestPath.
    Names will now be consistently sorted. PR 61574.
    [Joe Orton]
  * ) mod_xml2enc: Update check to accept any text/ media type
    or any XML media type per RFC 7303, avoiding
    corruption of Microsoft OOXML formats.  PR 64339.
    [Joseph Heenan &lt;joseph.heenan fintechlabs.io&gt;, Joe Orton]
  * ) mod_http2: v2.0.26 with the following fixes:
  - Fixed `Date` header on requests upgraded from HTTP/1.1 (h2c). Fixes
    &lt;https://github.com/icing/mod_h2/issues/272&gt;.
  - Fixed small memory leak in h2 header bucket free. Thanks to
    Michael Kaufmann for finding this and providing the fix.
  * ) htcacheclean: In -a/-A mode, list all files per subdirectory
    rather than only one. PR 65091.
    [Artem Egorenkov &lt;aegorenkov.91 gmail.com&gt;]
  * ) mod_ssl: SSLProxyMachineCertificateFile/Path may reference files
    which include CA certificates; those CA certs are treated as if
    configured with SSLProxyMachineCertificateChainFile.  [Joe Orton]
  * ) htpasswd, htdbm, dbmmanage: Update help&amp;docs to refer to
    "hashing", rather than "encrypting" passwords.
    [Michele Preziuso &lt;mpreziuso kaosdynamics.com&gt;]
  * ) mod_ssl: Fix build with LibreSSL 2.0.7+. PR 64047.
    [Giovanni Bechis, Yann Ylavic]
  * ) htpasswd: Add support for passwords using SHA-2.  [Joe Orton,
    Yann Ylavic]
  * ) core: Allow mod_env to override system environment vars. [Joe Orton]
  * ) Allow mod_dav_fs to tolerate race conditions between PROPFIND and an
    operation which removes a directory/file between apr_dir_read() and
    apr_stat(). Current behaviour is to abort the connection which seems
    inferior to tolerating (and logging) the error. [Joe Orton]
  * ) mod_ldap: HTML-escape data in the ldap-status handler.
    [Eric Covener, Chamal De Silva]
  * ) mod_ssl: Disable the OpenSSL ENGINE API when OPENSSL_NO_ENGINE is set.
    Allow for "SSLCryptoDevice builtin" if the ENGINE API is not available,
    notably with OpenSSL &gt;= 3.  PR 68080.  [Yann Ylavic, Joe Orton]
  * ) mod_ssl: Improve compatibility with OpenSSL 3, fix build warnings about
    deprecated ENGINE_ API, honor OPENSSL_API_COMPAT setting while defaulting
    to compatibitily with version 1.1.1 (including ENGINEs / SSLCryptoDevice).
    [Yann Ylavic]
  * ) mod_ssl: release memory to the OS when needed. [Giovanni Bechis]
  * ) mod_proxy: Ignore (and warn about) enablereuse=on for ProxyPassMatch when
    some dollar substitution (backreference) happens in the hostname or port
    part of the URL.  [Yann Ylavic]
  * ) mod_proxy: Allow to set a TTL for how long DNS resolutions to backend
    systems are cached. [Yann Ylavic]
  * ) mod_proxy: Add optional third argument for ProxyRemote, which
    configures Basic authentication credentials to pass to the remote
    proxy.  PR 37355.  [Joe Orton]</changelog>
  <changelog author="pgajdos@suse.com" date="1718280000">- added patches [bsc#1226217]
  https://github.com/apache/httpd/pull/444/commits/c2fffd29b0f58bdc9caaaff4fec68e17a676f182
  + apache2-issue-444.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1720094400">- Update to 2.4.61
  * ) SECURITY: CVE-2024-39884: Apache HTTP Server: source code
    disclosure with handlers configured via AddType (cve.mitre.org)
    [boo#1227353]
    A regression in the core of Apache HTTP Server 2.4.60 ignores
    some use of the legacy content-type based configuration of
    handlers.   "AddType" and similar configuration, under some
    circumstances where files are requested indirectly, result in
    source code disclosure of local content. For example, PHP
    scripts may be served instead of interpreted.
    Users are recommended to upgrade to version 2.4.61, which fixes
    this issue.
- Update to 2.4.60
  * ) SECURITY: CVE-2024-39573: Apache HTTP Server: mod_rewrite proxy
    handler substitution (cve.mitre.org) [boo#1227271]
    Potential SSRF in mod_rewrite in Apache HTTP Server 2.4.59 and
    earlier allows an attacker to cause unsafe RewriteRules to
    unexpectedly setup URL's to be handled by mod_proxy.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38477: Apache HTTP Server: Crash resulting in
    Denial of Service in mod_proxy via a malicious request
    (cve.mitre.org) [boo#1227270]
    null pointer dereference in mod_proxy in Apache HTTP Server
    2.4.59 and earlier allows an attacker to crash the server via a
    malicious request.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38476: Apache HTTP Server may use
    exploitable/malicious backend application output to run local
    handlers via internal redirect (cve.mitre.org) [boo#1227269]
    Vulnerability in core of Apache HTTP Server 2.4.59 and earlier
    are vulnerably to information disclosure, SSRF or local script
    execution via backend applications whose response headers are
    malicious or exploitable.
    Note: Some legacy uses of the 'AddType' directive to connect a
    request to a handler must be ported to 'AddHandler' after this fix.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38475: Apache HTTP Server weakness in
    mod_rewrite when first segment of substitution matches
    filesystem path. (cve.mitre.org) [boo#1227268]
    Improper escaping of output in mod_rewrite in Apache HTTP Server
    2.4.59 and earlier allows an attacker to map URLs to filesystem
    locations that are permitted to be served by the server but are
    not intentionally/directly reachable by any URL, resulting in
    code execution or source code disclosure.
    Substitutions in server context that use a backreferences or
    variables as the first segment of the substitution are affected.
    Some unsafe RewiteRules will be broken by this change and the
    rewrite flag "UnsafePrefixStat" can be used to opt back in once
    ensuring the substitution is appropriately constrained.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38474: Apache HTTP Server weakness with
    encoded question marks in backreferences (cve.mitre.org)
    [boo#1227278]
    Substitution encoding issue in mod_rewrite in Apache HTTP Server
    2.4.59 and earlier allows attacker to execute scripts in
    directories permitted by the configuration but not directly
    reachable by any URL or source disclosure of scripts meant to
    only to be executed as CGI.
    Note: Some RewriteRules that capture and substitute unsafely will now
    fail unless rewrite flag "UnsafeAllow3F" is specified.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38473: Apache HTTP Server proxy encoding
    problem (cve.mitre.org) [boo#1227276]
    Encoding problem in mod_proxy in Apache HTTP Server 2.4.59 and
    earlier allows request URLs with incorrect encoding to be sent
    to backend services, potentially bypassing authentication via
    crafted requests.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38472: Apache HTTP Server on WIndows UNC SSRF
    (cve.mitre.org) [boo#1227267]
    SSRF in Apache HTTP Server on Windows allows to potentially leak
    NTML hashes to a malicious server via SSRF and malicious
    requests or content
    Note: Existing configurations that access UNC paths
    will have to configure new directive "UNCList" to allow access
    during request processing.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-36387: Apache HTTP Server: DoS by Null
    pointer in websocket over HTTP/2 (cve.mitre.org) [boo#1227272]
    Serving WebSocket protocol upgrades over a HTTP/2 connection
    could result in a Null Pointer dereference, leading to a crash
    of the server process, degrading performance.
    Credits: Marc Stern (&lt;marc.stern AT approach-cyber.com&gt;)
  * ) mod_proxy: Fix DNS requests and connections closed before the
    configured addressTTL.  BZ 69126.  [Yann Ylavic]
  * ) core: On Linux, log the real thread ID in error logs.  [Joe Orton]
  * ) core: Support zone/scope in IPv6 link-local addresses in Listen and
    VirtualHost directives (requires APR 1.7.x or later).  PR 59396
    [Joe Orton]
  * ) mod_ssl: Reject client-initiated renegotiation with a TLS alert
    (rather than connection closure).  [Joe Orton, Yann Ylavic]
  * ) Updated mime.types.  [Mohamed Akram &lt;mohd.akram outlook.com&gt;,
    Adam Silverstein &lt;adamsilverstein earthboundhosting.com&gt;]
  * ) mod_ssl: Fix a regression that causes the default DH parameters for a key
    no longer set and thus effectively disabling DH ciphers when no explicit
    DH parameters are set. PR 68863 [Ruediger Pluem]
  * ) mod_cgid: Optional support for file descriptor passing, fixing
    error log handling (configure --enable-cgid-fdpassing) on Unix
    platforms. PR 54221.  [Joe Orton]
  * ) mod_cgid/mod_cgi: Distinguish script stderr output clearly in
    error logs.  PR 61980.  [Hank Ibell &lt;hwibell gmail.com&gt;]
  * ) mod_tls: update version of rustls-ffi to v0.13.0.
    [Daniel McCarney (@cpu}]
  * ) mod_md:
  - Using OCSP stapling information to trigger certificate renewals. Proposed
    by @frasertweedale.
  - Added directive `MDCheckInterval` to control how often the server checks
    for detected revocations. Added proposals for configurations in the
    README.md chapter "Revocations".
  - OCSP stapling: accept OCSP responses without a `nextUpdate` entry which is
    allowed in RFC 6960. Treat those as having an update interval of 12 hours.
    Added by @frasertweedale.
  - Adapt OpenSSL usage to changes in their API. By Yann Ylavic.
- removed patches (upstreamed)
  - apache2-issue-444.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- Update to 2.4.62
  * ) SECURITY: CVE-2024-40898: Apache HTTP Server: SSRF with
    mod_rewrite in server/vhost context on Windows (cve.mitre.org)
    [boo#1228098]
    SSRF in Apache HTTP Server on Windows with mod_rewrite in
    server/vhost context, allows to potentially leak NTML hashes to
    a malicious server via SSRF and malicious requests.
    Users are recommended to upgrade to version 2.4.62 which fixes
    this issue.
    Credits: Smi1e (DBAPPSecurity Ltd.)
  * ) SECURITY: CVE-2024-40725: Apache HTTP Server: source code
    disclosure with handlers configured via AddType (cve.mitre.org)
    [boo#1228097]
    A partial fix for  CVE-2024-39884 in the core of Apache HTTP
    Server 2.4.61 ignores some use of the legacy content-type based
    configuration of handlers. "AddType" and similar configuration,
    under some circumstances where files are requested indirectly,
    result in source code disclosure of local content. For example,
    PHP scripts may be served instead of interpreted.
    Users are recommended to upgrade to version 2.4.62, which fixes
    this issue.
  * ) mod_proxy: Fix canonicalisation and FCGI env (PATH_INFO, SCRIPT_NAME) for
    "balancer:" URLs set via SetHandler, also allowing for "unix:" sockets
    with BalancerMember(s).  PR 69168.  [Yann Ylavic]
  * ) mod_proxy: Avoid AH01059 parsing error for SetHandler "unix:" URLs.
    PR 69160 [Yann Ylavic]
  * ) mod_ssl: Fix crashes in PKCS#11 ENGINE support with OpenSSL 3.2.
    [Joe Orton]
  * ) mod_ssl: Add support for loading certs/keys from pkcs11: URIs
    via OpenSSL 3.x providers.  [Ingo Franzki &lt;ifranzki linux.ibm.com&gt;]
  * ) mod_ssl: Restore SSL dumping on trace7 loglevel with OpenSSL &gt;= 3.0.
    [Ruediger Pluem, Yann Ylavic]
  * ) mpm_worker: Fix possible warning (AH00045) about children processes not
    terminating timely.  [Yann Ylavic]</changelog>
  <changelog author="Thorsten Kukuk &lt;kukuk@suse.com&gt;" date="1727697600">- Add /srv/www directories to filelist [bsc#1231027]
  (apache2 will not start since default config uses this directory)</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1730721600">- Explicitly mark start_apache2 as bash-dependent.</changelog>
  <changelog author="Martin Schreiner &lt;martin.schreiner@suse.com&gt;" date="1730808000">- Update httpd-framework to svn1921782.
- Fixes Apache's impact on bsc#1218342.</changelog>
</package>
<package pkgid="e3887c11b8911cf6202232021f968d26d8ab9a1823013019ca952bee6c8913e456c27abffed771d5e87a546f8b55efc2f70b7bc97e50f4a0c3f44d84370b6b87" name="apache2-prefork" arch="src">
  <version epoch="0" ver="2.4.62" rel="3.1"/>
  <changelog author="pgajdos@suse.com" date="1654689600">- update httpd-framework to svn revision 1898917</changelog>
  <changelog author="Stefan Schubert &lt;schubi@intern&gt;" date="1656417600">- Moved logrotate files from user specific directory /etc/logrotate.d
  to vendor specific directory /usr/etc/logrotate.d.</changelog>
  <changelog author="Stefan Schubert &lt;schubi@suse.com&gt;" date="1662033600">- Migration to /usr/etc: Saving user changed configuration files
  in /etc and restoring them while an RPM update.</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1663675200">- Remove references to README.QUICKSTART and point them to
  https://en.opensuse.org/SDB:Apache_installation (bsc#1203573)</changelog>
  <changelog author="Stephan Kulow &lt;coolo@suse.com&gt;" date="1663934400">- The 2.4.54 release brought support for PCRE2, but for that we also
  need to change buildrequires to pcre2-devel</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1670846400">- switch to pkgconfig(zlib) so that alternative providers can be
  used</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1674043200">- This update fixes the following security issues:
  * CVE-2022-37436 [bsc#1207251], mod_proxy backend HTTP response splitting
  * CVE-2022-36760 [bsc#1207250], mod_proxy_ajp Possible request smuggling
  * CVE-2006-20001 [bsc#1207247], mod_dav out of bounds read, or write of zero byte
- Update to 2.4.55:
  * ) SECURITY: CVE-2022-37436: Apache HTTP Server: mod_proxy prior to
    2.4.55 allows a backend to trigger HTTP response splitting
    (cve.mitre.org)
    Prior to Apache HTTP Server 2.4.55, a malicious backend can
    cause the response headers to be truncated early, resulting in
    some headers being incorporated into the response body. If the
    later headers have any security purpose, they will not be
    interpreted by the client.
    Credits: Dimas Fariski Setyawan Putra (@nyxsorcerer)
  * ) SECURITY: CVE-2022-36760: Apache HTTP Server: mod_proxy_ajp
    Possible request smuggling (cve.mitre.org)
    Inconsistent Interpretation of HTTP Requests ('HTTP Request
    Smuggling') vulnerability in mod_proxy_ajp of Apache HTTP Server
    allows an attacker to smuggle requests to the AJP server it
    forwards requests to.  This issue affects Apache HTTP Server
    Apache HTTP Server 2.4 version 2.4.54 and prior versions.
    Credits: ZeddYu_Lu from Qi'anxin Research Institute of Legendsec
    at Qi'anxin Group
  * ) SECURITY: CVE-2006-20001: mod_dav out of  bounds read, or write
    of zero byte (cve.mitre.org)
    A carefully crafted If: request header can cause a memory read,
    or write of a single zero byte, in a pool (heap) memory location
    beyond the header value sent. This could cause the process to
    crash.
    This issue affects Apache HTTP Server 2.4.54 and earlier.
  * ) mod_dav: Open the lock database read-only when possible.
    PR 36636 [Wilson Felipe &lt;wfelipe gmail.com&gt;, manu]
  * ) mod_proxy_http2: apply the standard httpd content type handling
    to responses from the backend, as other proxy modules do. Fixes PR 66391.
    Thanks to Jérôme Billiras for providing the patch.
    [Stefan Eissing]
  * ) mod_dav: mod_dav overrides dav_fs response on PUT failure. PR 35981
    [Basant Kumar Kukreja &lt;basant.kukreja sun.com&gt;, Alejandro Alvarez
    &lt;alejandro.alvarez.ayllon cern.ch&gt;]
  * ) mod_proxy_hcheck: Honor worker timeout settings.  [Yann Ylavic]
  * ) mod_http2: version 2.0.10 of the module, synchronizing changes
    with the gitgub version. This is a partial rewrite of how connections
    and streams are handled.
  - an APR pollset and pipes (where supported) are used to monitor
    the main connection and react to IO for request/response handling.
    This replaces the stuttered timed waits of earlier versions.
  - H2SerializeHeaders directive still exists, but has no longer an effect.
  - Clients that seemingly misbehave still get less resources allocated,
    but ongoing requests are no longer disrupted.
  - Fixed an issue since 1.15.24 that "Server" headers in proxied requests
    were overwritten instead of preserved. [PR by @daum3ns]
  - A regression in v1.15.24 was fixed that could lead to httpd child
    processes not being terminated on a graceful reload or when reaching
    MaxConnectionsPerChild. When unprocessed h2 requests were queued at
    the time, these could stall. See #212.
  - Improved information displayed in 'server-status' for H2 connections when
    Extended Status is enabled. Now one can see the last request that IO
    operations happened on and transferred IO stats are updated as well.
  - When reaching server limits, such as MaxRequestsPerChild, the HTTP/2 connection
    send a GOAWAY frame much too early on new connections, leading to invalid
    protocol state and a client failing the request. See PR65731 at
    &lt;https://bz.apache.org/bugzilla/show_bug.cgi?id=65731&gt;.
    The module now initializes the HTTP/2 protocol correctly and allows the
    client to submit one request before the shutdown via a GOAWAY frame
    is being announced.
  - :scheme pseudo-header values, not matching the
    connection scheme, are forwarded via absolute uris to the
    http protocol processing to preserve semantics of the request.
    Checks on combinations of pseudo-headers values/absence
    have been added as described in RFC 7540. Fixes #230.
  - A bug that prevented trailers (e.g. HEADER frame at the end) to be
    generated in certain cases was fixed. See #233 where it prevented
    gRPC responses to be properly generated.
  - Request and response header values are automatically stripped of leading
    and trialing space/tab characters. This is equivalent behaviour to what
    Apache httpd's http/1.1 parser does.
    The checks for this in nghttp2 v1.50.0+ are disabled.
  - Extensive testing in production done by Alessandro Bianchi (@alexskynet)
    on the v2.0.x versions for stability. Many thanks!
  * ) mod_proxy_http2: fixed #235 by no longer forwarding 'Host:' header when
    request ':authority' is known. Improved test case that did not catch that
    the previous 'fix' was incorrect.
  * ) mod_proxy_hcheck: hcmethod now allows for HTTP/1.1 requests
    using GET11, HEAD11 and/or OPTIONS11. [Jim Jagielski]
  * ) mod_proxy: The AH03408 warning for a forcibly closed backend
    connection is now logged at INFO level.  [Yann Ylavic]
  * ) mod_ssl: When dumping the configuration, the existence of
    certificate/key files is no longer tested.  [Joe Orton]
  * ) mod_authn_core: Add expression support to AuthName and AuthType.
    [Graham Leggett]
  * ) mod_ssl: when a proxy connection had handled a request using SSL, an
    error was logged when "SSLProxyEngine" was only configured in the
    location/proxy section and not the overall server. The connection
    continued to work, the error log was in error. Fixed PR66190.
    [Stefan Eissing]
  * ) mod_proxy_hcheck: Re-enable workers in standard ERROR state. PR 66302.
    [Alessandro Cavaliere &lt;alessandro.cavalier7 unibo.it&gt;]
  * ) mod_proxy_hcheck: Detect AJP/CPING support correctly. PR 66300.
    [Alessandro Cavaliere &lt;alessandro.cavalier7 unibo.it&gt;]
  * ) mod_http2: Export mod_http2.h as public header. [Stefan Eissing]
  * ) mod_md: a new directive `MDStoreLocks` can be used on cluster
    setups with a shared file system for `MDStoreDir` to order
    activation of renewed certificates when several cluster nodes are
    restarted at the same time. Store locks are not enabled by default.
    Restored curl_easy cleanup behaviour from v2.4.14 and refactored
    the use of curl_multi for OCSP requests to work with that.
    Fixes &lt;https://github.com/icing/mod_md/issues/293&gt;.
  * ) core: Avoid an overflow on large inputs in ap_is_matchexp.  PR 66033
    [Ruediger Pluem]
  * ) mod_heartmonitor: Allow "HeartbeatMaxServers 0" to use file based
    storage instead of slotmem. Needed after setting
    HeartbeatMaxServers default to the documented value 10 in 2.4.54.
    PR 66131.  [Jérôme Billiras]
  * ) mod_dav: DAVlockDiscovery option to disable WebDAV lock discovery
    This is a game changer for performances if client use PROPFIND a lot,
    PR 66313. [Emmanuel Dreyfus]</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1678276800">- This update fixes the following security issues:
  * CVE-2023-27522 [bsc#1209049]: mod_proxy_uwsgi HTTP response splitting
  * CVE-2023-25690 [bsc#1209047]: HTTP request splitting with mod_rewrite and mod_proxy
- Update to 2.4.56:
  * ) rotatelogs: Add -T flag to allow subsequent rotated logfiles to be
    truncated without the initial logfile being truncated.  [Eric Covener]
  * ) mod_ldap: LDAPConnectionPoolTTL should accept negative values in order to
    allow connections of any age to be reused. Up to now, a negative value
    was handled as an error when parsing the configuration file.  PR 66421.
    [nailyk &lt;bzapache nailyk.fr&gt;, Christophe Jaillet]
  * ) mod_proxy_ajp: Report an error if the AJP backend sends an invalid number
    of headers. [Ruediger Pluem]
  * ) mod_md:
  - Enabling ED25519 support and certificate transparency information when
    building with libressl v3.5.0 and newer. Thanks to Giovanni Bechis.
  - MDChallengeDns01 can now be configured for individual domains.
    Thanks to Jérôme Billiras (@bilhackmac) for the initial PR.
  - Fixed a bug found by Jérôme Billiras (@bilhackmac) that caused the challenge
    teardown not being invoked as it should.
    [Stefan Eissing]
  * ) mod_http2: client resets of HTTP/2 streams led to unwanted 500 errors
    reported in access logs and error documents. The processing of the
    reset was correct, only unneccesary reporting was caused.
    [Stefan Eissing]
  * ) mod_proxy_uwsgi: Stricter backend HTTP response parsing/validation.
    [Yann Ylavic]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1680868800">- Update to 2.4.57:
  * ) mod_proxy: Check before forwarding that a nocanon path has not been
    rewritten with spaces during processing.  [Yann Ylavic]
  * ) mod_proxy: In case that AllowEncodedSlashes is set to NoDecode do not
    double encode encoded slashes in the URL sent by the reverse proxy to the
    backend. [Ruediger Pluem]
  * ) mod_http2: fixed a crash during connection termination. See PR 66539.
    [Stefan Eissing]
  * ) mod_rewrite: Fix a 2.4.56 regression for substitutions ending
    in a question mark. PR66547. [Eric Covener]
  * ) mod_rewrite: Add "BCTLS" and "BNE" RewriteRule flags. Re-allow encoded
    characters on redirections without the "NE" flag.
    [Yann Ylavic, Eric Covener]
  * ) mod_proxy: Fix double encoding of the uri-path of the request forwarded
    to the origin server, when using mapping=encoded|servlet.  [Yann Ylavic]
  * ) mod_mime: Do not match the extention against possible query string
    parameters in case ProxyPass was used with the nocanon option.
    [Ruediger Pluem]</changelog>
  <changelog author="Dirk Stoecker &lt;opensuse@dstoecker.de&gt;" date="1691236800">- Enable building of mod_md</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1697716800">- Update to 2.4.58:
  * ) SECURITY: CVE-2023-45802: Apache HTTP Server: HTTP/2 stream
    memory not reclaimed right away on RST (cve.mitre.org)
    When a HTTP/2 stream was reset (RST frame) by a client, there
    was a time window were the request's memory resources were not
    reclaimed immediately. Instead, de-allocation was deferred to
    connection close. A client could send new requests and resets,
    keeping the connection busy and open and causing the memory
    footprint to keep on growing. On connection close, all resources
    were reclaimed, but the process might run out of memory before
    that.
    This was found by the reporter during testing of CVE-2023-44487
    (HTTP/2 Rapid Reset Exploit) with their own test client. During
    "normal" HTTP/2 use, the probability to hit this bug is very
    low. The kept memory would not become noticeable before the
    connection closes or times out.
    Users are recommended to upgrade to version 2.4.58, which fixes
    the issue.
    Credits: Will Dormann of Vul Labs
  * ) SECURITY: CVE-2023-43622: Apache HTTP Server: DoS in HTTP/2 with
    initial windows size 0 (cve.mitre.org)
    An attacker, opening a HTTP/2 connection with an initial window
    size of 0, was able to block handling of that connection
    indefinitely in Apache HTTP Server. This could be used to
    exhaust worker resources in the server, similar to the well
    known "slow loris" attack pattern.
    This has been fixed in version 2.4.58, so that such connection
    are terminated properly after the configured connection timeout.
    This issue affects Apache HTTP Server: from 2.4.55 through
    2.4.57.
    Users are recommended to upgrade to version 2.4.58, which fixes
    the issue.
    Credits: Prof. Sven Dietrich (City University of New York)
  * ) SECURITY: CVE-2023-31122: mod_macro buffer over-read
    (cve.mitre.org)
    Out-of-bounds Read vulnerability in mod_macro of Apache HTTP
    Server.This issue affects Apache HTTP Server: through 2.4.57.
    Credits: David Shoon (github/davidshoon)
  * ) mod_ssl: Silence info log message "SSL Library Error: error:0A000126:
    SSL routines::unexpected eof while reading" when using
    OpenSSL 3 by setting SSL_OP_IGNORE_UNEXPECTED_EOF if
    available. [Rainer Jung]
  * ) mod_http2: improved early cleanup of streams.
    [Stefan Eissing]
  * ) mod_proxy_http2: improved error handling on connection errors while
    response is already underway.
    [Stefan Eissing]
  * ) mod_http2: fixed a bug that could lead to a crash in main connection
    output handling. This occured only when the last request on a HTTP/2
    connection had been processed and the session decided to shut down.
    This could lead to an attempt to send a final GOAWAY while the previous
    write was still in progress. See PR 66646.
    [Stefan Eissing]
  * ) mod_proxy_http2: fix `X-Forward-Host` header to carry the correct value.
    Fixes PR66752.
    [Stefan Eissing]
  * ) mod_http2: added support for bootstrapping WebSockets via HTTP/2, as
    described in RFC 8441. A new directive 'H2WebSockets on|off' has been
    added. The feature is by default not enabled.
    As also discussed in the manual, this feature should work for setups
    using "ProxyPass backend-url upgrade=websocket" without further changes.
    Special server modules for WebSockets will have to be adapted,
    most likely, as the handling if IO events is different with HTTP/2.
    HTTP/2 WebSockets are supported on platforms with native pipes. This
    excludes Windows.
    [Stefan Eissing]
  * ) mod_rewrite: Fix a regression with both a trailing ? and [QSA].
    in OCSP stapling. PR 66672. [Frank Meier &lt;frank.meier ergon.ch&gt;, covener]
  * ) mod_http2: fixed a bug in flushing pending data on an already closed
    connection that could lead to a busy loop, preventing the HTTP/2 session
    to close down successfully. Fixed PR 66624.
    [Stefan Eissing]
  * ) mod_http2: v2.0.15 with the following fixes and improvements
  - New directive 'H2EarlyHint name value' to add headers to a response,
    picked up already when a "103 Early Hints" response is sent. 'name' and
    'value' must comply to the HTTP field restrictions.
    This directive can be repeated several times and header fields of the
    same names add. Sending a 'Link' header with 'preload' relation will
    also cause a HTTP/2 PUSH if enabled and supported by the client.
  - Fixed an issue where requests were not logged and accounted in a timely
    fashion when the connection returns to "keepalive" handling, e.g. when
    the request served was the last outstanding one.
    This led to late appearance in access logs with wrong duration times
    reported.
  - Accurately report the bytes sent for a request in the '%O' Log format.
    This addresses #203, a long outstanding issue where mod_h2 has reported
    numbers over-eagerly from internal buffering and not what has actually
    been placed on the connection.
    The numbers are now the same with and without H2CopyFiles enabled.
    [Stefan Eissing]
  * ) mod_proxy_http2: fix retry handling to not leak temporary errors.
    On detecting that that an existing connection was shutdown by the other
    side, a 503 response leaked even though the request was retried on a
    fresh connection.
    [Stefan Eissing]
  * ) mod_rewrite: Add server directory to include path as mod_rewrite requires
    test_char.h. PR 66571 [Valeria Petrov &lt;valeria.petrov@spinetix.com&gt;]
  * ) mod_http2: new directive `H2ProxyRequests on|off` to enable handling
    of HTTP/2 requests in a forward proxy configuration.
    General forward proxying is enabled via `ProxyRequests`. If the
    HTTP/2 protocol is also enabled for such a server/host, this new
    directive is needed in addition.
    [Stefan Eissing]
  * ) core: Updated conf/mime.types:
  - .js moved from 'application/javascript' to 'text/javascript'
  - .mjs was added as 'text/javascript'
  - add .opus ('audio/ogg')
  - add 'application/vnd.geogebra.slides'
  - add WebAssembly MIME types and extension
    [Mathias Bynens &lt;@mathiasbynens&gt; via PR 318,
    Richard de Boer &lt;richard tubul.net&gt;, Dave Hodder &lt;dmh dmh.org.uk&gt;,
    Zbynek Konecny &lt;zbynek1729 gmail.com&gt;]
  * ) mod_proxy_http2: fixed using the wrong "bucket_alloc" from the backend
    connection when sending data on the frontend one. This caused crashes
    or infinite loops in rare situations.
  * ) mod_proxy_http2: fixed a bug in retry/response handling that could lead
    to wrong status codes or HTTP messages send at the end of response bodies
    exceeding the announced content-length.
  * ) mod_proxy_http2: fix retry handling to not leak temporary errors.
    On detecting that that an existing connection was shutdown by the other
    side, a 503 response leaked even though the request was retried on a
    fresh connection.
  * ) mod_http2: fixed a bug that did cleanup of consumed and pending buckets in
    the wrong order when a bucket_beam was destroyed.
    [Stefan Eissing]
  * ) mod_http2: avoid double chunked-encoding on internal redirects.
    PR 66597 [Yann Ylavic, Stefan Eissing]
  * ) mod_http2: Fix reporting of `Total Accesses` in server-status to not count
    HTTP/2 requests twice. Fixes PR 66801.
    [Stefan Eissing]
  * ) mod_ssl: Fix handling of Certificate Revoked messages
    in OCSP stapling. PR 66626. [&lt;gmoniker gmail.com&gt;]
  * ) mod_http2: fixed a bug in handling of stream timeouts.
    [Stefan Eissing]
  * ) mod_tls: updating to rustls-ffi version 0.9.2 or higher.
    Checking in configure for proper version installed. Code
    fixes for changed clienthello member name.
    [Stefan Eissing]
  * ) mod_md:
  - New directive `MDMatchNames all|servernames` to allow more control over how
    MDomains are matched to VirtualHosts.
  - New directive `MDChallengeDns01Version`. Setting this to `2` will provide
    the command also with the challenge value on `teardown` invocation. In version
    1, the default, only the `setup` invocation gets this parameter.
    Refs #312. Thanks to @domrim for the idea.
  - For Managed Domain in "manual" mode, the checks if all used ServerName and
    ServerAlias are part of the MDomain now reports a warning instead of an error
    (AH10040) when not all names are present.
  - MDChallengeDns01 can now be configured for individual domains.
    Using PR from JÃ©rÃ´me Billiras (@bilhackmac) and adding test case and fixing proper working
  - Fixed a bug found by JÃ©rÃ´me Billiras (@bilhackmac) that caused the challenge
    teardown not being invoked as it should.
  * ) mod_ldap: Avoid performance overhead of APR-util rebind cache for
    OpenLDAP 2.2+.  PR 64414.  [Joe Orton]
  * ) mod_http2: new directive 'H2MaxDataFrameLen n' to limit the maximum
    amount of response body bytes put into a single HTTP/2 DATA frame.
    Setting this to 0 places no limit (but the max size allowed by the
    protocol is observed).
    The module, by default, tries to use the maximum size possible, which is
    somewhat around 16KB. This sets the maximum. When less response data is
    available, smaller frames will be sent.
  * ) mod_md: fixed passing of the server environment variables to programs
    started via MDMessageCmd and MDChallengeDns01 on *nix system.
    See &lt;https://github.com/icing/mod_md/issues/319&gt;.
    [Stefan Eissing]
  * ) mod_dav: Add DavBasePath directive to configure the repository root
    path.  PR 35077.  [Joe Orton]
  * ) mod_alias: Add AliasPreservePath directive to map the full
    path after the alias in a location. [Graham Leggett]
  * ) mod_alias: Add RedirectRelative to allow relative redirect targets to be
    issued as-is. [Eric Covener, Graham Leggett]
  * ) core: Add formats %{z} and %{strftime-format} to ErrorLogFormat, and make
    sure that if the format is configured early enough it applies to every log
    line.  PR 62161.  [Yann Ylavic]
  * ) mod_deflate: Add DeflateAlterETag to control how the ETag
    is modified. The 'NoChange' parameter mimics 2.2.x behavior.
    PR 45023, PR 39727. [Eric Covener]
  * ) core: Optimize send_brigade_nonblocking(). [Yann Ylavic, Christophe Jaillet]
  * ) mod_status: Remove duplicate keys "BusyWorkers" and "IdleWorkers".
    Resolve inconsistency between the previous two occurrences by
    counting workers in state SERVER_GRACEFUL no longer as busy,
    but instead in a new counter "GracefulWorkers" (or on HTML
    view as "workers gracefully restarting"). Also add the graceful
    counter as a new column to the existing HTML per process table
    for async MPMs. PR 63300. [Rainer Jung]</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1706529600">- use grep -E for egrep</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1708430400">- Use %autosetup macro. Allows to eliminate the usage of deprecated
  %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1712232000">- Update to 2.4.59:
  * ) mod_deflate: Fixes and better logging for handling various
    error and edge cases. [Eric Covener, Yann Ylavic, Joe Orton,
    Eric Norris &lt;enorris etsy.com&gt;]
  * ) Add CGIScriptTimeout to mod_cgi. [Eric Covener]
  * ) mod_xml2enc: Tolerate libxml2 2.12.0 and later.  PR 68610
    [ttachi &lt;tachihara AT hotmail.com&gt;]
  * ) mod_slotmem_shm: Use ap_os_is_path_absolute() to make it portable.
    [Jean-Frederic Clere]
  * ) mod_ssl: Use OpenSSL-standard functions to assemble CA
    name lists for SSLCACertificatePath/SSLCADNRequestPath.
    Names will now be consistently sorted. PR 61574.
    [Joe Orton]
  * ) mod_xml2enc: Update check to accept any text/ media type
    or any XML media type per RFC 7303, avoiding
    corruption of Microsoft OOXML formats.  PR 64339.
    [Joseph Heenan &lt;joseph.heenan fintechlabs.io&gt;, Joe Orton]
  * ) mod_http2: v2.0.26 with the following fixes:
  - Fixed `Date` header on requests upgraded from HTTP/1.1 (h2c). Fixes
    &lt;https://github.com/icing/mod_h2/issues/272&gt;.
  - Fixed small memory leak in h2 header bucket free. Thanks to
    Michael Kaufmann for finding this and providing the fix.
  * ) htcacheclean: In -a/-A mode, list all files per subdirectory
    rather than only one. PR 65091.
    [Artem Egorenkov &lt;aegorenkov.91 gmail.com&gt;]
  * ) mod_ssl: SSLProxyMachineCertificateFile/Path may reference files
    which include CA certificates; those CA certs are treated as if
    configured with SSLProxyMachineCertificateChainFile.  [Joe Orton]
  * ) htpasswd, htdbm, dbmmanage: Update help&amp;docs to refer to
    "hashing", rather than "encrypting" passwords.
    [Michele Preziuso &lt;mpreziuso kaosdynamics.com&gt;]
  * ) mod_ssl: Fix build with LibreSSL 2.0.7+. PR 64047.
    [Giovanni Bechis, Yann Ylavic]
  * ) htpasswd: Add support for passwords using SHA-2.  [Joe Orton,
    Yann Ylavic]
  * ) core: Allow mod_env to override system environment vars. [Joe Orton]
  * ) Allow mod_dav_fs to tolerate race conditions between PROPFIND and an
    operation which removes a directory/file between apr_dir_read() and
    apr_stat(). Current behaviour is to abort the connection which seems
    inferior to tolerating (and logging) the error. [Joe Orton]
  * ) mod_ldap: HTML-escape data in the ldap-status handler.
    [Eric Covener, Chamal De Silva]
  * ) mod_ssl: Disable the OpenSSL ENGINE API when OPENSSL_NO_ENGINE is set.
    Allow for "SSLCryptoDevice builtin" if the ENGINE API is not available,
    notably with OpenSSL &gt;= 3.  PR 68080.  [Yann Ylavic, Joe Orton]
  * ) mod_ssl: Improve compatibility with OpenSSL 3, fix build warnings about
    deprecated ENGINE_ API, honor OPENSSL_API_COMPAT setting while defaulting
    to compatibitily with version 1.1.1 (including ENGINEs / SSLCryptoDevice).
    [Yann Ylavic]
  * ) mod_ssl: release memory to the OS when needed. [Giovanni Bechis]
  * ) mod_proxy: Ignore (and warn about) enablereuse=on for ProxyPassMatch when
    some dollar substitution (backreference) happens in the hostname or port
    part of the URL.  [Yann Ylavic]
  * ) mod_proxy: Allow to set a TTL for how long DNS resolutions to backend
    systems are cached. [Yann Ylavic]
  * ) mod_proxy: Add optional third argument for ProxyRemote, which
    configures Basic authentication credentials to pass to the remote
    proxy.  PR 37355.  [Joe Orton]</changelog>
  <changelog author="pgajdos@suse.com" date="1718280000">- added patches [bsc#1226217]
  https://github.com/apache/httpd/pull/444/commits/c2fffd29b0f58bdc9caaaff4fec68e17a676f182
  + apache2-issue-444.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1720094400">- Update to 2.4.61
  * ) SECURITY: CVE-2024-39884: Apache HTTP Server: source code
    disclosure with handlers configured via AddType (cve.mitre.org)
    [boo#1227353]
    A regression in the core of Apache HTTP Server 2.4.60 ignores
    some use of the legacy content-type based configuration of
    handlers.   "AddType" and similar configuration, under some
    circumstances where files are requested indirectly, result in
    source code disclosure of local content. For example, PHP
    scripts may be served instead of interpreted.
    Users are recommended to upgrade to version 2.4.61, which fixes
    this issue.
- Update to 2.4.60
  * ) SECURITY: CVE-2024-39573: Apache HTTP Server: mod_rewrite proxy
    handler substitution (cve.mitre.org) [boo#1227271]
    Potential SSRF in mod_rewrite in Apache HTTP Server 2.4.59 and
    earlier allows an attacker to cause unsafe RewriteRules to
    unexpectedly setup URL's to be handled by mod_proxy.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38477: Apache HTTP Server: Crash resulting in
    Denial of Service in mod_proxy via a malicious request
    (cve.mitre.org) [boo#1227270]
    null pointer dereference in mod_proxy in Apache HTTP Server
    2.4.59 and earlier allows an attacker to crash the server via a
    malicious request.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38476: Apache HTTP Server may use
    exploitable/malicious backend application output to run local
    handlers via internal redirect (cve.mitre.org) [boo#1227269]
    Vulnerability in core of Apache HTTP Server 2.4.59 and earlier
    are vulnerably to information disclosure, SSRF or local script
    execution via backend applications whose response headers are
    malicious or exploitable.
    Note: Some legacy uses of the 'AddType' directive to connect a
    request to a handler must be ported to 'AddHandler' after this fix.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38475: Apache HTTP Server weakness in
    mod_rewrite when first segment of substitution matches
    filesystem path. (cve.mitre.org) [boo#1227268]
    Improper escaping of output in mod_rewrite in Apache HTTP Server
    2.4.59 and earlier allows an attacker to map URLs to filesystem
    locations that are permitted to be served by the server but are
    not intentionally/directly reachable by any URL, resulting in
    code execution or source code disclosure.
    Substitutions in server context that use a backreferences or
    variables as the first segment of the substitution are affected.
    Some unsafe RewiteRules will be broken by this change and the
    rewrite flag "UnsafePrefixStat" can be used to opt back in once
    ensuring the substitution is appropriately constrained.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38474: Apache HTTP Server weakness with
    encoded question marks in backreferences (cve.mitre.org)
    [boo#1227278]
    Substitution encoding issue in mod_rewrite in Apache HTTP Server
    2.4.59 and earlier allows attacker to execute scripts in
    directories permitted by the configuration but not directly
    reachable by any URL or source disclosure of scripts meant to
    only to be executed as CGI.
    Note: Some RewriteRules that capture and substitute unsafely will now
    fail unless rewrite flag "UnsafeAllow3F" is specified.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38473: Apache HTTP Server proxy encoding
    problem (cve.mitre.org) [boo#1227276]
    Encoding problem in mod_proxy in Apache HTTP Server 2.4.59 and
    earlier allows request URLs with incorrect encoding to be sent
    to backend services, potentially bypassing authentication via
    crafted requests.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38472: Apache HTTP Server on WIndows UNC SSRF
    (cve.mitre.org) [boo#1227267]
    SSRF in Apache HTTP Server on Windows allows to potentially leak
    NTML hashes to a malicious server via SSRF and malicious
    requests or content
    Note: Existing configurations that access UNC paths
    will have to configure new directive "UNCList" to allow access
    during request processing.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-36387: Apache HTTP Server: DoS by Null
    pointer in websocket over HTTP/2 (cve.mitre.org) [boo#1227272]
    Serving WebSocket protocol upgrades over a HTTP/2 connection
    could result in a Null Pointer dereference, leading to a crash
    of the server process, degrading performance.
    Credits: Marc Stern (&lt;marc.stern AT approach-cyber.com&gt;)
  * ) mod_proxy: Fix DNS requests and connections closed before the
    configured addressTTL.  BZ 69126.  [Yann Ylavic]
  * ) core: On Linux, log the real thread ID in error logs.  [Joe Orton]
  * ) core: Support zone/scope in IPv6 link-local addresses in Listen and
    VirtualHost directives (requires APR 1.7.x or later).  PR 59396
    [Joe Orton]
  * ) mod_ssl: Reject client-initiated renegotiation with a TLS alert
    (rather than connection closure).  [Joe Orton, Yann Ylavic]
  * ) Updated mime.types.  [Mohamed Akram &lt;mohd.akram outlook.com&gt;,
    Adam Silverstein &lt;adamsilverstein earthboundhosting.com&gt;]
  * ) mod_ssl: Fix a regression that causes the default DH parameters for a key
    no longer set and thus effectively disabling DH ciphers when no explicit
    DH parameters are set. PR 68863 [Ruediger Pluem]
  * ) mod_cgid: Optional support for file descriptor passing, fixing
    error log handling (configure --enable-cgid-fdpassing) on Unix
    platforms. PR 54221.  [Joe Orton]
  * ) mod_cgid/mod_cgi: Distinguish script stderr output clearly in
    error logs.  PR 61980.  [Hank Ibell &lt;hwibell gmail.com&gt;]
  * ) mod_tls: update version of rustls-ffi to v0.13.0.
    [Daniel McCarney (@cpu}]
  * ) mod_md:
  - Using OCSP stapling information to trigger certificate renewals. Proposed
    by @frasertweedale.
  - Added directive `MDCheckInterval` to control how often the server checks
    for detected revocations. Added proposals for configurations in the
    README.md chapter "Revocations".
  - OCSP stapling: accept OCSP responses without a `nextUpdate` entry which is
    allowed in RFC 6960. Treat those as having an update interval of 12 hours.
    Added by @frasertweedale.
  - Adapt OpenSSL usage to changes in their API. By Yann Ylavic.
- removed patches (upstreamed)
  - apache2-issue-444.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- Update to 2.4.62
  * ) SECURITY: CVE-2024-40898: Apache HTTP Server: SSRF with
    mod_rewrite in server/vhost context on Windows (cve.mitre.org)
    [boo#1228098]
    SSRF in Apache HTTP Server on Windows with mod_rewrite in
    server/vhost context, allows to potentially leak NTML hashes to
    a malicious server via SSRF and malicious requests.
    Users are recommended to upgrade to version 2.4.62 which fixes
    this issue.
    Credits: Smi1e (DBAPPSecurity Ltd.)
  * ) SECURITY: CVE-2024-40725: Apache HTTP Server: source code
    disclosure with handlers configured via AddType (cve.mitre.org)
    [boo#1228097]
    A partial fix for  CVE-2024-39884 in the core of Apache HTTP
    Server 2.4.61 ignores some use of the legacy content-type based
    configuration of handlers. "AddType" and similar configuration,
    under some circumstances where files are requested indirectly,
    result in source code disclosure of local content. For example,
    PHP scripts may be served instead of interpreted.
    Users are recommended to upgrade to version 2.4.62, which fixes
    this issue.
  * ) mod_proxy: Fix canonicalisation and FCGI env (PATH_INFO, SCRIPT_NAME) for
    "balancer:" URLs set via SetHandler, also allowing for "unix:" sockets
    with BalancerMember(s).  PR 69168.  [Yann Ylavic]
  * ) mod_proxy: Avoid AH01059 parsing error for SetHandler "unix:" URLs.
    PR 69160 [Yann Ylavic]
  * ) mod_ssl: Fix crashes in PKCS#11 ENGINE support with OpenSSL 3.2.
    [Joe Orton]
  * ) mod_ssl: Add support for loading certs/keys from pkcs11: URIs
    via OpenSSL 3.x providers.  [Ingo Franzki &lt;ifranzki linux.ibm.com&gt;]
  * ) mod_ssl: Restore SSL dumping on trace7 loglevel with OpenSSL &gt;= 3.0.
    [Ruediger Pluem, Yann Ylavic]
  * ) mpm_worker: Fix possible warning (AH00045) about children processes not
    terminating timely.  [Yann Ylavic]</changelog>
  <changelog author="Thorsten Kukuk &lt;kukuk@suse.com&gt;" date="1727697600">- Add /srv/www directories to filelist [bsc#1231027]
  (apache2 will not start since default config uses this directory)</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1730721600">- Explicitly mark start_apache2 as bash-dependent.</changelog>
  <changelog author="Martin Schreiner &lt;martin.schreiner@suse.com&gt;" date="1730808000">- Update httpd-framework to svn1921782.
- Fixes Apache's impact on bsc#1218342.</changelog>
</package>
<package pkgid="f9a2b311cc42240e138712bdf904bb86aa7515a1925a8abd4cf5158b8663298ccf3decd5baaaa13734ef949dabe4e5c2201b7d4446a6af918e5545e58bd0198c" name="apache2-prefork" arch="x86_64">
  <version epoch="0" ver="2.4.62" rel="3.1"/>
  <changelog author="pgajdos@suse.com" date="1654689600">- update httpd-framework to svn revision 1898917</changelog>
  <changelog author="Stefan Schubert &lt;schubi@intern&gt;" date="1656417600">- Moved logrotate files from user specific directory /etc/logrotate.d
  to vendor specific directory /usr/etc/logrotate.d.</changelog>
  <changelog author="Stefan Schubert &lt;schubi@suse.com&gt;" date="1662033600">- Migration to /usr/etc: Saving user changed configuration files
  in /etc and restoring them while an RPM update.</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1663675200">- Remove references to README.QUICKSTART and point them to
  https://en.opensuse.org/SDB:Apache_installation (bsc#1203573)</changelog>
  <changelog author="Stephan Kulow &lt;coolo@suse.com&gt;" date="1663934400">- The 2.4.54 release brought support for PCRE2, but for that we also
  need to change buildrequires to pcre2-devel</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1670846400">- switch to pkgconfig(zlib) so that alternative providers can be
  used</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1674043200">- This update fixes the following security issues:
  * CVE-2022-37436 [bsc#1207251], mod_proxy backend HTTP response splitting
  * CVE-2022-36760 [bsc#1207250], mod_proxy_ajp Possible request smuggling
  * CVE-2006-20001 [bsc#1207247], mod_dav out of bounds read, or write of zero byte
- Update to 2.4.55:
  * ) SECURITY: CVE-2022-37436: Apache HTTP Server: mod_proxy prior to
    2.4.55 allows a backend to trigger HTTP response splitting
    (cve.mitre.org)
    Prior to Apache HTTP Server 2.4.55, a malicious backend can
    cause the response headers to be truncated early, resulting in
    some headers being incorporated into the response body. If the
    later headers have any security purpose, they will not be
    interpreted by the client.
    Credits: Dimas Fariski Setyawan Putra (@nyxsorcerer)
  * ) SECURITY: CVE-2022-36760: Apache HTTP Server: mod_proxy_ajp
    Possible request smuggling (cve.mitre.org)
    Inconsistent Interpretation of HTTP Requests ('HTTP Request
    Smuggling') vulnerability in mod_proxy_ajp of Apache HTTP Server
    allows an attacker to smuggle requests to the AJP server it
    forwards requests to.  This issue affects Apache HTTP Server
    Apache HTTP Server 2.4 version 2.4.54 and prior versions.
    Credits: ZeddYu_Lu from Qi'anxin Research Institute of Legendsec
    at Qi'anxin Group
  * ) SECURITY: CVE-2006-20001: mod_dav out of  bounds read, or write
    of zero byte (cve.mitre.org)
    A carefully crafted If: request header can cause a memory read,
    or write of a single zero byte, in a pool (heap) memory location
    beyond the header value sent. This could cause the process to
    crash.
    This issue affects Apache HTTP Server 2.4.54 and earlier.
  * ) mod_dav: Open the lock database read-only when possible.
    PR 36636 [Wilson Felipe &lt;wfelipe gmail.com&gt;, manu]
  * ) mod_proxy_http2: apply the standard httpd content type handling
    to responses from the backend, as other proxy modules do. Fixes PR 66391.
    Thanks to Jérôme Billiras for providing the patch.
    [Stefan Eissing]
  * ) mod_dav: mod_dav overrides dav_fs response on PUT failure. PR 35981
    [Basant Kumar Kukreja &lt;basant.kukreja sun.com&gt;, Alejandro Alvarez
    &lt;alejandro.alvarez.ayllon cern.ch&gt;]
  * ) mod_proxy_hcheck: Honor worker timeout settings.  [Yann Ylavic]
  * ) mod_http2: version 2.0.10 of the module, synchronizing changes
    with the gitgub version. This is a partial rewrite of how connections
    and streams are handled.
  - an APR pollset and pipes (where supported) are used to monitor
    the main connection and react to IO for request/response handling.
    This replaces the stuttered timed waits of earlier versions.
  - H2SerializeHeaders directive still exists, but has no longer an effect.
  - Clients that seemingly misbehave still get less resources allocated,
    but ongoing requests are no longer disrupted.
  - Fixed an issue since 1.15.24 that "Server" headers in proxied requests
    were overwritten instead of preserved. [PR by @daum3ns]
  - A regression in v1.15.24 was fixed that could lead to httpd child
    processes not being terminated on a graceful reload or when reaching
    MaxConnectionsPerChild. When unprocessed h2 requests were queued at
    the time, these could stall. See #212.
  - Improved information displayed in 'server-status' for H2 connections when
    Extended Status is enabled. Now one can see the last request that IO
    operations happened on and transferred IO stats are updated as well.
  - When reaching server limits, such as MaxRequestsPerChild, the HTTP/2 connection
    send a GOAWAY frame much too early on new connections, leading to invalid
    protocol state and a client failing the request. See PR65731 at
    &lt;https://bz.apache.org/bugzilla/show_bug.cgi?id=65731&gt;.
    The module now initializes the HTTP/2 protocol correctly and allows the
    client to submit one request before the shutdown via a GOAWAY frame
    is being announced.
  - :scheme pseudo-header values, not matching the
    connection scheme, are forwarded via absolute uris to the
    http protocol processing to preserve semantics of the request.
    Checks on combinations of pseudo-headers values/absence
    have been added as described in RFC 7540. Fixes #230.
  - A bug that prevented trailers (e.g. HEADER frame at the end) to be
    generated in certain cases was fixed. See #233 where it prevented
    gRPC responses to be properly generated.
  - Request and response header values are automatically stripped of leading
    and trialing space/tab characters. This is equivalent behaviour to what
    Apache httpd's http/1.1 parser does.
    The checks for this in nghttp2 v1.50.0+ are disabled.
  - Extensive testing in production done by Alessandro Bianchi (@alexskynet)
    on the v2.0.x versions for stability. Many thanks!
  * ) mod_proxy_http2: fixed #235 by no longer forwarding 'Host:' header when
    request ':authority' is known. Improved test case that did not catch that
    the previous 'fix' was incorrect.
  * ) mod_proxy_hcheck: hcmethod now allows for HTTP/1.1 requests
    using GET11, HEAD11 and/or OPTIONS11. [Jim Jagielski]
  * ) mod_proxy: The AH03408 warning for a forcibly closed backend
    connection is now logged at INFO level.  [Yann Ylavic]
  * ) mod_ssl: When dumping the configuration, the existence of
    certificate/key files is no longer tested.  [Joe Orton]
  * ) mod_authn_core: Add expression support to AuthName and AuthType.
    [Graham Leggett]
  * ) mod_ssl: when a proxy connection had handled a request using SSL, an
    error was logged when "SSLProxyEngine" was only configured in the
    location/proxy section and not the overall server. The connection
    continued to work, the error log was in error. Fixed PR66190.
    [Stefan Eissing]
  * ) mod_proxy_hcheck: Re-enable workers in standard ERROR state. PR 66302.
    [Alessandro Cavaliere &lt;alessandro.cavalier7 unibo.it&gt;]
  * ) mod_proxy_hcheck: Detect AJP/CPING support correctly. PR 66300.
    [Alessandro Cavaliere &lt;alessandro.cavalier7 unibo.it&gt;]
  * ) mod_http2: Export mod_http2.h as public header. [Stefan Eissing]
  * ) mod_md: a new directive `MDStoreLocks` can be used on cluster
    setups with a shared file system for `MDStoreDir` to order
    activation of renewed certificates when several cluster nodes are
    restarted at the same time. Store locks are not enabled by default.
    Restored curl_easy cleanup behaviour from v2.4.14 and refactored
    the use of curl_multi for OCSP requests to work with that.
    Fixes &lt;https://github.com/icing/mod_md/issues/293&gt;.
  * ) core: Avoid an overflow on large inputs in ap_is_matchexp.  PR 66033
    [Ruediger Pluem]
  * ) mod_heartmonitor: Allow "HeartbeatMaxServers 0" to use file based
    storage instead of slotmem. Needed after setting
    HeartbeatMaxServers default to the documented value 10 in 2.4.54.
    PR 66131.  [Jérôme Billiras]
  * ) mod_dav: DAVlockDiscovery option to disable WebDAV lock discovery
    This is a game changer for performances if client use PROPFIND a lot,
    PR 66313. [Emmanuel Dreyfus]</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1678276800">- This update fixes the following security issues:
  * CVE-2023-27522 [bsc#1209049]: mod_proxy_uwsgi HTTP response splitting
  * CVE-2023-25690 [bsc#1209047]: HTTP request splitting with mod_rewrite and mod_proxy
- Update to 2.4.56:
  * ) rotatelogs: Add -T flag to allow subsequent rotated logfiles to be
    truncated without the initial logfile being truncated.  [Eric Covener]
  * ) mod_ldap: LDAPConnectionPoolTTL should accept negative values in order to
    allow connections of any age to be reused. Up to now, a negative value
    was handled as an error when parsing the configuration file.  PR 66421.
    [nailyk &lt;bzapache nailyk.fr&gt;, Christophe Jaillet]
  * ) mod_proxy_ajp: Report an error if the AJP backend sends an invalid number
    of headers. [Ruediger Pluem]
  * ) mod_md:
  - Enabling ED25519 support and certificate transparency information when
    building with libressl v3.5.0 and newer. Thanks to Giovanni Bechis.
  - MDChallengeDns01 can now be configured for individual domains.
    Thanks to Jérôme Billiras (@bilhackmac) for the initial PR.
  - Fixed a bug found by Jérôme Billiras (@bilhackmac) that caused the challenge
    teardown not being invoked as it should.
    [Stefan Eissing]
  * ) mod_http2: client resets of HTTP/2 streams led to unwanted 500 errors
    reported in access logs and error documents. The processing of the
    reset was correct, only unneccesary reporting was caused.
    [Stefan Eissing]
  * ) mod_proxy_uwsgi: Stricter backend HTTP response parsing/validation.
    [Yann Ylavic]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1680868800">- Update to 2.4.57:
  * ) mod_proxy: Check before forwarding that a nocanon path has not been
    rewritten with spaces during processing.  [Yann Ylavic]
  * ) mod_proxy: In case that AllowEncodedSlashes is set to NoDecode do not
    double encode encoded slashes in the URL sent by the reverse proxy to the
    backend. [Ruediger Pluem]
  * ) mod_http2: fixed a crash during connection termination. See PR 66539.
    [Stefan Eissing]
  * ) mod_rewrite: Fix a 2.4.56 regression for substitutions ending
    in a question mark. PR66547. [Eric Covener]
  * ) mod_rewrite: Add "BCTLS" and "BNE" RewriteRule flags. Re-allow encoded
    characters on redirections without the "NE" flag.
    [Yann Ylavic, Eric Covener]
  * ) mod_proxy: Fix double encoding of the uri-path of the request forwarded
    to the origin server, when using mapping=encoded|servlet.  [Yann Ylavic]
  * ) mod_mime: Do not match the extention against possible query string
    parameters in case ProxyPass was used with the nocanon option.
    [Ruediger Pluem]</changelog>
  <changelog author="Dirk Stoecker &lt;opensuse@dstoecker.de&gt;" date="1691236800">- Enable building of mod_md</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1697716800">- Update to 2.4.58:
  * ) SECURITY: CVE-2023-45802: Apache HTTP Server: HTTP/2 stream
    memory not reclaimed right away on RST (cve.mitre.org)
    When a HTTP/2 stream was reset (RST frame) by a client, there
    was a time window were the request's memory resources were not
    reclaimed immediately. Instead, de-allocation was deferred to
    connection close. A client could send new requests and resets,
    keeping the connection busy and open and causing the memory
    footprint to keep on growing. On connection close, all resources
    were reclaimed, but the process might run out of memory before
    that.
    This was found by the reporter during testing of CVE-2023-44487
    (HTTP/2 Rapid Reset Exploit) with their own test client. During
    "normal" HTTP/2 use, the probability to hit this bug is very
    low. The kept memory would not become noticeable before the
    connection closes or times out.
    Users are recommended to upgrade to version 2.4.58, which fixes
    the issue.
    Credits: Will Dormann of Vul Labs
  * ) SECURITY: CVE-2023-43622: Apache HTTP Server: DoS in HTTP/2 with
    initial windows size 0 (cve.mitre.org)
    An attacker, opening a HTTP/2 connection with an initial window
    size of 0, was able to block handling of that connection
    indefinitely in Apache HTTP Server. This could be used to
    exhaust worker resources in the server, similar to the well
    known "slow loris" attack pattern.
    This has been fixed in version 2.4.58, so that such connection
    are terminated properly after the configured connection timeout.
    This issue affects Apache HTTP Server: from 2.4.55 through
    2.4.57.
    Users are recommended to upgrade to version 2.4.58, which fixes
    the issue.
    Credits: Prof. Sven Dietrich (City University of New York)
  * ) SECURITY: CVE-2023-31122: mod_macro buffer over-read
    (cve.mitre.org)
    Out-of-bounds Read vulnerability in mod_macro of Apache HTTP
    Server.This issue affects Apache HTTP Server: through 2.4.57.
    Credits: David Shoon (github/davidshoon)
  * ) mod_ssl: Silence info log message "SSL Library Error: error:0A000126:
    SSL routines::unexpected eof while reading" when using
    OpenSSL 3 by setting SSL_OP_IGNORE_UNEXPECTED_EOF if
    available. [Rainer Jung]
  * ) mod_http2: improved early cleanup of streams.
    [Stefan Eissing]
  * ) mod_proxy_http2: improved error handling on connection errors while
    response is already underway.
    [Stefan Eissing]
  * ) mod_http2: fixed a bug that could lead to a crash in main connection
    output handling. This occured only when the last request on a HTTP/2
    connection had been processed and the session decided to shut down.
    This could lead to an attempt to send a final GOAWAY while the previous
    write was still in progress. See PR 66646.
    [Stefan Eissing]
  * ) mod_proxy_http2: fix `X-Forward-Host` header to carry the correct value.
    Fixes PR66752.
    [Stefan Eissing]
  * ) mod_http2: added support for bootstrapping WebSockets via HTTP/2, as
    described in RFC 8441. A new directive 'H2WebSockets on|off' has been
    added. The feature is by default not enabled.
    As also discussed in the manual, this feature should work for setups
    using "ProxyPass backend-url upgrade=websocket" without further changes.
    Special server modules for WebSockets will have to be adapted,
    most likely, as the handling if IO events is different with HTTP/2.
    HTTP/2 WebSockets are supported on platforms with native pipes. This
    excludes Windows.
    [Stefan Eissing]
  * ) mod_rewrite: Fix a regression with both a trailing ? and [QSA].
    in OCSP stapling. PR 66672. [Frank Meier &lt;frank.meier ergon.ch&gt;, covener]
  * ) mod_http2: fixed a bug in flushing pending data on an already closed
    connection that could lead to a busy loop, preventing the HTTP/2 session
    to close down successfully. Fixed PR 66624.
    [Stefan Eissing]
  * ) mod_http2: v2.0.15 with the following fixes and improvements
  - New directive 'H2EarlyHint name value' to add headers to a response,
    picked up already when a "103 Early Hints" response is sent. 'name' and
    'value' must comply to the HTTP field restrictions.
    This directive can be repeated several times and header fields of the
    same names add. Sending a 'Link' header with 'preload' relation will
    also cause a HTTP/2 PUSH if enabled and supported by the client.
  - Fixed an issue where requests were not logged and accounted in a timely
    fashion when the connection returns to "keepalive" handling, e.g. when
    the request served was the last outstanding one.
    This led to late appearance in access logs with wrong duration times
    reported.
  - Accurately report the bytes sent for a request in the '%O' Log format.
    This addresses #203, a long outstanding issue where mod_h2 has reported
    numbers over-eagerly from internal buffering and not what has actually
    been placed on the connection.
    The numbers are now the same with and without H2CopyFiles enabled.
    [Stefan Eissing]
  * ) mod_proxy_http2: fix retry handling to not leak temporary errors.
    On detecting that that an existing connection was shutdown by the other
    side, a 503 response leaked even though the request was retried on a
    fresh connection.
    [Stefan Eissing]
  * ) mod_rewrite: Add server directory to include path as mod_rewrite requires
    test_char.h. PR 66571 [Valeria Petrov &lt;valeria.petrov@spinetix.com&gt;]
  * ) mod_http2: new directive `H2ProxyRequests on|off` to enable handling
    of HTTP/2 requests in a forward proxy configuration.
    General forward proxying is enabled via `ProxyRequests`. If the
    HTTP/2 protocol is also enabled for such a server/host, this new
    directive is needed in addition.
    [Stefan Eissing]
  * ) core: Updated conf/mime.types:
  - .js moved from 'application/javascript' to 'text/javascript'
  - .mjs was added as 'text/javascript'
  - add .opus ('audio/ogg')
  - add 'application/vnd.geogebra.slides'
  - add WebAssembly MIME types and extension
    [Mathias Bynens &lt;@mathiasbynens&gt; via PR 318,
    Richard de Boer &lt;richard tubul.net&gt;, Dave Hodder &lt;dmh dmh.org.uk&gt;,
    Zbynek Konecny &lt;zbynek1729 gmail.com&gt;]
  * ) mod_proxy_http2: fixed using the wrong "bucket_alloc" from the backend
    connection when sending data on the frontend one. This caused crashes
    or infinite loops in rare situations.
  * ) mod_proxy_http2: fixed a bug in retry/response handling that could lead
    to wrong status codes or HTTP messages send at the end of response bodies
    exceeding the announced content-length.
  * ) mod_proxy_http2: fix retry handling to not leak temporary errors.
    On detecting that that an existing connection was shutdown by the other
    side, a 503 response leaked even though the request was retried on a
    fresh connection.
  * ) mod_http2: fixed a bug that did cleanup of consumed and pending buckets in
    the wrong order when a bucket_beam was destroyed.
    [Stefan Eissing]
  * ) mod_http2: avoid double chunked-encoding on internal redirects.
    PR 66597 [Yann Ylavic, Stefan Eissing]
  * ) mod_http2: Fix reporting of `Total Accesses` in server-status to not count
    HTTP/2 requests twice. Fixes PR 66801.
    [Stefan Eissing]
  * ) mod_ssl: Fix handling of Certificate Revoked messages
    in OCSP stapling. PR 66626. [&lt;gmoniker gmail.com&gt;]
  * ) mod_http2: fixed a bug in handling of stream timeouts.
    [Stefan Eissing]
  * ) mod_tls: updating to rustls-ffi version 0.9.2 or higher.
    Checking in configure for proper version installed. Code
    fixes for changed clienthello member name.
    [Stefan Eissing]
  * ) mod_md:
  - New directive `MDMatchNames all|servernames` to allow more control over how
    MDomains are matched to VirtualHosts.
  - New directive `MDChallengeDns01Version`. Setting this to `2` will provide
    the command also with the challenge value on `teardown` invocation. In version
    1, the default, only the `setup` invocation gets this parameter.
    Refs #312. Thanks to @domrim for the idea.
  - For Managed Domain in "manual" mode, the checks if all used ServerName and
    ServerAlias are part of the MDomain now reports a warning instead of an error
    (AH10040) when not all names are present.
  - MDChallengeDns01 can now be configured for individual domains.
    Using PR from JÃ©rÃ´me Billiras (@bilhackmac) and adding test case and fixing proper working
  - Fixed a bug found by JÃ©rÃ´me Billiras (@bilhackmac) that caused the challenge
    teardown not being invoked as it should.
  * ) mod_ldap: Avoid performance overhead of APR-util rebind cache for
    OpenLDAP 2.2+.  PR 64414.  [Joe Orton]
  * ) mod_http2: new directive 'H2MaxDataFrameLen n' to limit the maximum
    amount of response body bytes put into a single HTTP/2 DATA frame.
    Setting this to 0 places no limit (but the max size allowed by the
    protocol is observed).
    The module, by default, tries to use the maximum size possible, which is
    somewhat around 16KB. This sets the maximum. When less response data is
    available, smaller frames will be sent.
  * ) mod_md: fixed passing of the server environment variables to programs
    started via MDMessageCmd and MDChallengeDns01 on *nix system.
    See &lt;https://github.com/icing/mod_md/issues/319&gt;.
    [Stefan Eissing]
  * ) mod_dav: Add DavBasePath directive to configure the repository root
    path.  PR 35077.  [Joe Orton]
  * ) mod_alias: Add AliasPreservePath directive to map the full
    path after the alias in a location. [Graham Leggett]
  * ) mod_alias: Add RedirectRelative to allow relative redirect targets to be
    issued as-is. [Eric Covener, Graham Leggett]
  * ) core: Add formats %{z} and %{strftime-format} to ErrorLogFormat, and make
    sure that if the format is configured early enough it applies to every log
    line.  PR 62161.  [Yann Ylavic]
  * ) mod_deflate: Add DeflateAlterETag to control how the ETag
    is modified. The 'NoChange' parameter mimics 2.2.x behavior.
    PR 45023, PR 39727. [Eric Covener]
  * ) core: Optimize send_brigade_nonblocking(). [Yann Ylavic, Christophe Jaillet]
  * ) mod_status: Remove duplicate keys "BusyWorkers" and "IdleWorkers".
    Resolve inconsistency between the previous two occurrences by
    counting workers in state SERVER_GRACEFUL no longer as busy,
    but instead in a new counter "GracefulWorkers" (or on HTML
    view as "workers gracefully restarting"). Also add the graceful
    counter as a new column to the existing HTML per process table
    for async MPMs. PR 63300. [Rainer Jung]</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1706529600">- use grep -E for egrep</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1708430400">- Use %autosetup macro. Allows to eliminate the usage of deprecated
  %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1712232000">- Update to 2.4.59:
  * ) mod_deflate: Fixes and better logging for handling various
    error and edge cases. [Eric Covener, Yann Ylavic, Joe Orton,
    Eric Norris &lt;enorris etsy.com&gt;]
  * ) Add CGIScriptTimeout to mod_cgi. [Eric Covener]
  * ) mod_xml2enc: Tolerate libxml2 2.12.0 and later.  PR 68610
    [ttachi &lt;tachihara AT hotmail.com&gt;]
  * ) mod_slotmem_shm: Use ap_os_is_path_absolute() to make it portable.
    [Jean-Frederic Clere]
  * ) mod_ssl: Use OpenSSL-standard functions to assemble CA
    name lists for SSLCACertificatePath/SSLCADNRequestPath.
    Names will now be consistently sorted. PR 61574.
    [Joe Orton]
  * ) mod_xml2enc: Update check to accept any text/ media type
    or any XML media type per RFC 7303, avoiding
    corruption of Microsoft OOXML formats.  PR 64339.
    [Joseph Heenan &lt;joseph.heenan fintechlabs.io&gt;, Joe Orton]
  * ) mod_http2: v2.0.26 with the following fixes:
  - Fixed `Date` header on requests upgraded from HTTP/1.1 (h2c). Fixes
    &lt;https://github.com/icing/mod_h2/issues/272&gt;.
  - Fixed small memory leak in h2 header bucket free. Thanks to
    Michael Kaufmann for finding this and providing the fix.
  * ) htcacheclean: In -a/-A mode, list all files per subdirectory
    rather than only one. PR 65091.
    [Artem Egorenkov &lt;aegorenkov.91 gmail.com&gt;]
  * ) mod_ssl: SSLProxyMachineCertificateFile/Path may reference files
    which include CA certificates; those CA certs are treated as if
    configured with SSLProxyMachineCertificateChainFile.  [Joe Orton]
  * ) htpasswd, htdbm, dbmmanage: Update help&amp;docs to refer to
    "hashing", rather than "encrypting" passwords.
    [Michele Preziuso &lt;mpreziuso kaosdynamics.com&gt;]
  * ) mod_ssl: Fix build with LibreSSL 2.0.7+. PR 64047.
    [Giovanni Bechis, Yann Ylavic]
  * ) htpasswd: Add support for passwords using SHA-2.  [Joe Orton,
    Yann Ylavic]
  * ) core: Allow mod_env to override system environment vars. [Joe Orton]
  * ) Allow mod_dav_fs to tolerate race conditions between PROPFIND and an
    operation which removes a directory/file between apr_dir_read() and
    apr_stat(). Current behaviour is to abort the connection which seems
    inferior to tolerating (and logging) the error. [Joe Orton]
  * ) mod_ldap: HTML-escape data in the ldap-status handler.
    [Eric Covener, Chamal De Silva]
  * ) mod_ssl: Disable the OpenSSL ENGINE API when OPENSSL_NO_ENGINE is set.
    Allow for "SSLCryptoDevice builtin" if the ENGINE API is not available,
    notably with OpenSSL &gt;= 3.  PR 68080.  [Yann Ylavic, Joe Orton]
  * ) mod_ssl: Improve compatibility with OpenSSL 3, fix build warnings about
    deprecated ENGINE_ API, honor OPENSSL_API_COMPAT setting while defaulting
    to compatibitily with version 1.1.1 (including ENGINEs / SSLCryptoDevice).
    [Yann Ylavic]
  * ) mod_ssl: release memory to the OS when needed. [Giovanni Bechis]
  * ) mod_proxy: Ignore (and warn about) enablereuse=on for ProxyPassMatch when
    some dollar substitution (backreference) happens in the hostname or port
    part of the URL.  [Yann Ylavic]
  * ) mod_proxy: Allow to set a TTL for how long DNS resolutions to backend
    systems are cached. [Yann Ylavic]
  * ) mod_proxy: Add optional third argument for ProxyRemote, which
    configures Basic authentication credentials to pass to the remote
    proxy.  PR 37355.  [Joe Orton]</changelog>
  <changelog author="pgajdos@suse.com" date="1718280000">- added patches [bsc#1226217]
  https://github.com/apache/httpd/pull/444/commits/c2fffd29b0f58bdc9caaaff4fec68e17a676f182
  + apache2-issue-444.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1720094400">- Update to 2.4.61
  * ) SECURITY: CVE-2024-39884: Apache HTTP Server: source code
    disclosure with handlers configured via AddType (cve.mitre.org)
    [boo#1227353]
    A regression in the core of Apache HTTP Server 2.4.60 ignores
    some use of the legacy content-type based configuration of
    handlers.   "AddType" and similar configuration, under some
    circumstances where files are requested indirectly, result in
    source code disclosure of local content. For example, PHP
    scripts may be served instead of interpreted.
    Users are recommended to upgrade to version 2.4.61, which fixes
    this issue.
- Update to 2.4.60
  * ) SECURITY: CVE-2024-39573: Apache HTTP Server: mod_rewrite proxy
    handler substitution (cve.mitre.org) [boo#1227271]
    Potential SSRF in mod_rewrite in Apache HTTP Server 2.4.59 and
    earlier allows an attacker to cause unsafe RewriteRules to
    unexpectedly setup URL's to be handled by mod_proxy.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38477: Apache HTTP Server: Crash resulting in
    Denial of Service in mod_proxy via a malicious request
    (cve.mitre.org) [boo#1227270]
    null pointer dereference in mod_proxy in Apache HTTP Server
    2.4.59 and earlier allows an attacker to crash the server via a
    malicious request.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38476: Apache HTTP Server may use
    exploitable/malicious backend application output to run local
    handlers via internal redirect (cve.mitre.org) [boo#1227269]
    Vulnerability in core of Apache HTTP Server 2.4.59 and earlier
    are vulnerably to information disclosure, SSRF or local script
    execution via backend applications whose response headers are
    malicious or exploitable.
    Note: Some legacy uses of the 'AddType' directive to connect a
    request to a handler must be ported to 'AddHandler' after this fix.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38475: Apache HTTP Server weakness in
    mod_rewrite when first segment of substitution matches
    filesystem path. (cve.mitre.org) [boo#1227268]
    Improper escaping of output in mod_rewrite in Apache HTTP Server
    2.4.59 and earlier allows an attacker to map URLs to filesystem
    locations that are permitted to be served by the server but are
    not intentionally/directly reachable by any URL, resulting in
    code execution or source code disclosure.
    Substitutions in server context that use a backreferences or
    variables as the first segment of the substitution are affected.
    Some unsafe RewiteRules will be broken by this change and the
    rewrite flag "UnsafePrefixStat" can be used to opt back in once
    ensuring the substitution is appropriately constrained.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38474: Apache HTTP Server weakness with
    encoded question marks in backreferences (cve.mitre.org)
    [boo#1227278]
    Substitution encoding issue in mod_rewrite in Apache HTTP Server
    2.4.59 and earlier allows attacker to execute scripts in
    directories permitted by the configuration but not directly
    reachable by any URL or source disclosure of scripts meant to
    only to be executed as CGI.
    Note: Some RewriteRules that capture and substitute unsafely will now
    fail unless rewrite flag "UnsafeAllow3F" is specified.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38473: Apache HTTP Server proxy encoding
    problem (cve.mitre.org) [boo#1227276]
    Encoding problem in mod_proxy in Apache HTTP Server 2.4.59 and
    earlier allows request URLs with incorrect encoding to be sent
    to backend services, potentially bypassing authentication via
    crafted requests.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38472: Apache HTTP Server on WIndows UNC SSRF
    (cve.mitre.org) [boo#1227267]
    SSRF in Apache HTTP Server on Windows allows to potentially leak
    NTML hashes to a malicious server via SSRF and malicious
    requests or content
    Note: Existing configurations that access UNC paths
    will have to configure new directive "UNCList" to allow access
    during request processing.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-36387: Apache HTTP Server: DoS by Null
    pointer in websocket over HTTP/2 (cve.mitre.org) [boo#1227272]
    Serving WebSocket protocol upgrades over a HTTP/2 connection
    could result in a Null Pointer dereference, leading to a crash
    of the server process, degrading performance.
    Credits: Marc Stern (&lt;marc.stern AT approach-cyber.com&gt;)
  * ) mod_proxy: Fix DNS requests and connections closed before the
    configured addressTTL.  BZ 69126.  [Yann Ylavic]
  * ) core: On Linux, log the real thread ID in error logs.  [Joe Orton]
  * ) core: Support zone/scope in IPv6 link-local addresses in Listen and
    VirtualHost directives (requires APR 1.7.x or later).  PR 59396
    [Joe Orton]
  * ) mod_ssl: Reject client-initiated renegotiation with a TLS alert
    (rather than connection closure).  [Joe Orton, Yann Ylavic]
  * ) Updated mime.types.  [Mohamed Akram &lt;mohd.akram outlook.com&gt;,
    Adam Silverstein &lt;adamsilverstein earthboundhosting.com&gt;]
  * ) mod_ssl: Fix a regression that causes the default DH parameters for a key
    no longer set and thus effectively disabling DH ciphers when no explicit
    DH parameters are set. PR 68863 [Ruediger Pluem]
  * ) mod_cgid: Optional support for file descriptor passing, fixing
    error log handling (configure --enable-cgid-fdpassing) on Unix
    platforms. PR 54221.  [Joe Orton]
  * ) mod_cgid/mod_cgi: Distinguish script stderr output clearly in
    error logs.  PR 61980.  [Hank Ibell &lt;hwibell gmail.com&gt;]
  * ) mod_tls: update version of rustls-ffi to v0.13.0.
    [Daniel McCarney (@cpu}]
  * ) mod_md:
  - Using OCSP stapling information to trigger certificate renewals. Proposed
    by @frasertweedale.
  - Added directive `MDCheckInterval` to control how often the server checks
    for detected revocations. Added proposals for configurations in the
    README.md chapter "Revocations".
  - OCSP stapling: accept OCSP responses without a `nextUpdate` entry which is
    allowed in RFC 6960. Treat those as having an update interval of 12 hours.
    Added by @frasertweedale.
  - Adapt OpenSSL usage to changes in their API. By Yann Ylavic.
- removed patches (upstreamed)
  - apache2-issue-444.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- Update to 2.4.62
  * ) SECURITY: CVE-2024-40898: Apache HTTP Server: SSRF with
    mod_rewrite in server/vhost context on Windows (cve.mitre.org)
    [boo#1228098]
    SSRF in Apache HTTP Server on Windows with mod_rewrite in
    server/vhost context, allows to potentially leak NTML hashes to
    a malicious server via SSRF and malicious requests.
    Users are recommended to upgrade to version 2.4.62 which fixes
    this issue.
    Credits: Smi1e (DBAPPSecurity Ltd.)
  * ) SECURITY: CVE-2024-40725: Apache HTTP Server: source code
    disclosure with handlers configured via AddType (cve.mitre.org)
    [boo#1228097]
    A partial fix for  CVE-2024-39884 in the core of Apache HTTP
    Server 2.4.61 ignores some use of the legacy content-type based
    configuration of handlers. "AddType" and similar configuration,
    under some circumstances where files are requested indirectly,
    result in source code disclosure of local content. For example,
    PHP scripts may be served instead of interpreted.
    Users are recommended to upgrade to version 2.4.62, which fixes
    this issue.
  * ) mod_proxy: Fix canonicalisation and FCGI env (PATH_INFO, SCRIPT_NAME) for
    "balancer:" URLs set via SetHandler, also allowing for "unix:" sockets
    with BalancerMember(s).  PR 69168.  [Yann Ylavic]
  * ) mod_proxy: Avoid AH01059 parsing error for SetHandler "unix:" URLs.
    PR 69160 [Yann Ylavic]
  * ) mod_ssl: Fix crashes in PKCS#11 ENGINE support with OpenSSL 3.2.
    [Joe Orton]
  * ) mod_ssl: Add support for loading certs/keys from pkcs11: URIs
    via OpenSSL 3.x providers.  [Ingo Franzki &lt;ifranzki linux.ibm.com&gt;]
  * ) mod_ssl: Restore SSL dumping on trace7 loglevel with OpenSSL &gt;= 3.0.
    [Ruediger Pluem, Yann Ylavic]
  * ) mpm_worker: Fix possible warning (AH00045) about children processes not
    terminating timely.  [Yann Ylavic]</changelog>
  <changelog author="Thorsten Kukuk &lt;kukuk@suse.com&gt;" date="1727697600">- Add /srv/www directories to filelist [bsc#1231027]
  (apache2 will not start since default config uses this directory)</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1730721600">- Explicitly mark start_apache2 as bash-dependent.</changelog>
  <changelog author="Martin Schreiner &lt;martin.schreiner@suse.com&gt;" date="1730808000">- Update httpd-framework to svn1921782.
- Fixes Apache's impact on bsc#1218342.</changelog>
</package>
<package pkgid="83d5c584f75c7e038cedd5aaadd5f654de0e6e1e6621ac71bef5d7401285ad4446888a4e8ad64b623b1f1141857e1e61ce3e0066a961580af73fd667e15bf28e" name="apache2-prefork-debuginfo" arch="i586">
  <version epoch="0" ver="2.4.62" rel="3.1"/>
  <changelog author="pgajdos@suse.com" date="1654689600">- update httpd-framework to svn revision 1898917</changelog>
  <changelog author="Stefan Schubert &lt;schubi@intern&gt;" date="1656417600">- Moved logrotate files from user specific directory /etc/logrotate.d
  to vendor specific directory /usr/etc/logrotate.d.</changelog>
  <changelog author="Stefan Schubert &lt;schubi@suse.com&gt;" date="1662033600">- Migration to /usr/etc: Saving user changed configuration files
  in /etc and restoring them while an RPM update.</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1663675200">- Remove references to README.QUICKSTART and point them to
  https://en.opensuse.org/SDB:Apache_installation (bsc#1203573)</changelog>
  <changelog author="Stephan Kulow &lt;coolo@suse.com&gt;" date="1663934400">- The 2.4.54 release brought support for PCRE2, but for that we also
  need to change buildrequires to pcre2-devel</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1670846400">- switch to pkgconfig(zlib) so that alternative providers can be
  used</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1674043200">- This update fixes the following security issues:
  * CVE-2022-37436 [bsc#1207251], mod_proxy backend HTTP response splitting
  * CVE-2022-36760 [bsc#1207250], mod_proxy_ajp Possible request smuggling
  * CVE-2006-20001 [bsc#1207247], mod_dav out of bounds read, or write of zero byte
- Update to 2.4.55:
  * ) SECURITY: CVE-2022-37436: Apache HTTP Server: mod_proxy prior to
    2.4.55 allows a backend to trigger HTTP response splitting
    (cve.mitre.org)
    Prior to Apache HTTP Server 2.4.55, a malicious backend can
    cause the response headers to be truncated early, resulting in
    some headers being incorporated into the response body. If the
    later headers have any security purpose, they will not be
    interpreted by the client.
    Credits: Dimas Fariski Setyawan Putra (@nyxsorcerer)
  * ) SECURITY: CVE-2022-36760: Apache HTTP Server: mod_proxy_ajp
    Possible request smuggling (cve.mitre.org)
    Inconsistent Interpretation of HTTP Requests ('HTTP Request
    Smuggling') vulnerability in mod_proxy_ajp of Apache HTTP Server
    allows an attacker to smuggle requests to the AJP server it
    forwards requests to.  This issue affects Apache HTTP Server
    Apache HTTP Server 2.4 version 2.4.54 and prior versions.
    Credits: ZeddYu_Lu from Qi'anxin Research Institute of Legendsec
    at Qi'anxin Group
  * ) SECURITY: CVE-2006-20001: mod_dav out of  bounds read, or write
    of zero byte (cve.mitre.org)
    A carefully crafted If: request header can cause a memory read,
    or write of a single zero byte, in a pool (heap) memory location
    beyond the header value sent. This could cause the process to
    crash.
    This issue affects Apache HTTP Server 2.4.54 and earlier.
  * ) mod_dav: Open the lock database read-only when possible.
    PR 36636 [Wilson Felipe &lt;wfelipe gmail.com&gt;, manu]
  * ) mod_proxy_http2: apply the standard httpd content type handling
    to responses from the backend, as other proxy modules do. Fixes PR 66391.
    Thanks to Jérôme Billiras for providing the patch.
    [Stefan Eissing]
  * ) mod_dav: mod_dav overrides dav_fs response on PUT failure. PR 35981
    [Basant Kumar Kukreja &lt;basant.kukreja sun.com&gt;, Alejandro Alvarez
    &lt;alejandro.alvarez.ayllon cern.ch&gt;]
  * ) mod_proxy_hcheck: Honor worker timeout settings.  [Yann Ylavic]
  * ) mod_http2: version 2.0.10 of the module, synchronizing changes
    with the gitgub version. This is a partial rewrite of how connections
    and streams are handled.
  - an APR pollset and pipes (where supported) are used to monitor
    the main connection and react to IO for request/response handling.
    This replaces the stuttered timed waits of earlier versions.
  - H2SerializeHeaders directive still exists, but has no longer an effect.
  - Clients that seemingly misbehave still get less resources allocated,
    but ongoing requests are no longer disrupted.
  - Fixed an issue since 1.15.24 that "Server" headers in proxied requests
    were overwritten instead of preserved. [PR by @daum3ns]
  - A regression in v1.15.24 was fixed that could lead to httpd child
    processes not being terminated on a graceful reload or when reaching
    MaxConnectionsPerChild. When unprocessed h2 requests were queued at
    the time, these could stall. See #212.
  - Improved information displayed in 'server-status' for H2 connections when
    Extended Status is enabled. Now one can see the last request that IO
    operations happened on and transferred IO stats are updated as well.
  - When reaching server limits, such as MaxRequestsPerChild, the HTTP/2 connection
    send a GOAWAY frame much too early on new connections, leading to invalid
    protocol state and a client failing the request. See PR65731 at
    &lt;https://bz.apache.org/bugzilla/show_bug.cgi?id=65731&gt;.
    The module now initializes the HTTP/2 protocol correctly and allows the
    client to submit one request before the shutdown via a GOAWAY frame
    is being announced.
  - :scheme pseudo-header values, not matching the
    connection scheme, are forwarded via absolute uris to the
    http protocol processing to preserve semantics of the request.
    Checks on combinations of pseudo-headers values/absence
    have been added as described in RFC 7540. Fixes #230.
  - A bug that prevented trailers (e.g. HEADER frame at the end) to be
    generated in certain cases was fixed. See #233 where it prevented
    gRPC responses to be properly generated.
  - Request and response header values are automatically stripped of leading
    and trialing space/tab characters. This is equivalent behaviour to what
    Apache httpd's http/1.1 parser does.
    The checks for this in nghttp2 v1.50.0+ are disabled.
  - Extensive testing in production done by Alessandro Bianchi (@alexskynet)
    on the v2.0.x versions for stability. Many thanks!
  * ) mod_proxy_http2: fixed #235 by no longer forwarding 'Host:' header when
    request ':authority' is known. Improved test case that did not catch that
    the previous 'fix' was incorrect.
  * ) mod_proxy_hcheck: hcmethod now allows for HTTP/1.1 requests
    using GET11, HEAD11 and/or OPTIONS11. [Jim Jagielski]
  * ) mod_proxy: The AH03408 warning for a forcibly closed backend
    connection is now logged at INFO level.  [Yann Ylavic]
  * ) mod_ssl: When dumping the configuration, the existence of
    certificate/key files is no longer tested.  [Joe Orton]
  * ) mod_authn_core: Add expression support to AuthName and AuthType.
    [Graham Leggett]
  * ) mod_ssl: when a proxy connection had handled a request using SSL, an
    error was logged when "SSLProxyEngine" was only configured in the
    location/proxy section and not the overall server. The connection
    continued to work, the error log was in error. Fixed PR66190.
    [Stefan Eissing]
  * ) mod_proxy_hcheck: Re-enable workers in standard ERROR state. PR 66302.
    [Alessandro Cavaliere &lt;alessandro.cavalier7 unibo.it&gt;]
  * ) mod_proxy_hcheck: Detect AJP/CPING support correctly. PR 66300.
    [Alessandro Cavaliere &lt;alessandro.cavalier7 unibo.it&gt;]
  * ) mod_http2: Export mod_http2.h as public header. [Stefan Eissing]
  * ) mod_md: a new directive `MDStoreLocks` can be used on cluster
    setups with a shared file system for `MDStoreDir` to order
    activation of renewed certificates when several cluster nodes are
    restarted at the same time. Store locks are not enabled by default.
    Restored curl_easy cleanup behaviour from v2.4.14 and refactored
    the use of curl_multi for OCSP requests to work with that.
    Fixes &lt;https://github.com/icing/mod_md/issues/293&gt;.
  * ) core: Avoid an overflow on large inputs in ap_is_matchexp.  PR 66033
    [Ruediger Pluem]
  * ) mod_heartmonitor: Allow "HeartbeatMaxServers 0" to use file based
    storage instead of slotmem. Needed after setting
    HeartbeatMaxServers default to the documented value 10 in 2.4.54.
    PR 66131.  [Jérôme Billiras]
  * ) mod_dav: DAVlockDiscovery option to disable WebDAV lock discovery
    This is a game changer for performances if client use PROPFIND a lot,
    PR 66313. [Emmanuel Dreyfus]</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1678276800">- This update fixes the following security issues:
  * CVE-2023-27522 [bsc#1209049]: mod_proxy_uwsgi HTTP response splitting
  * CVE-2023-25690 [bsc#1209047]: HTTP request splitting with mod_rewrite and mod_proxy
- Update to 2.4.56:
  * ) rotatelogs: Add -T flag to allow subsequent rotated logfiles to be
    truncated without the initial logfile being truncated.  [Eric Covener]
  * ) mod_ldap: LDAPConnectionPoolTTL should accept negative values in order to
    allow connections of any age to be reused. Up to now, a negative value
    was handled as an error when parsing the configuration file.  PR 66421.
    [nailyk &lt;bzapache nailyk.fr&gt;, Christophe Jaillet]
  * ) mod_proxy_ajp: Report an error if the AJP backend sends an invalid number
    of headers. [Ruediger Pluem]
  * ) mod_md:
  - Enabling ED25519 support and certificate transparency information when
    building with libressl v3.5.0 and newer. Thanks to Giovanni Bechis.
  - MDChallengeDns01 can now be configured for individual domains.
    Thanks to Jérôme Billiras (@bilhackmac) for the initial PR.
  - Fixed a bug found by Jérôme Billiras (@bilhackmac) that caused the challenge
    teardown not being invoked as it should.
    [Stefan Eissing]
  * ) mod_http2: client resets of HTTP/2 streams led to unwanted 500 errors
    reported in access logs and error documents. The processing of the
    reset was correct, only unneccesary reporting was caused.
    [Stefan Eissing]
  * ) mod_proxy_uwsgi: Stricter backend HTTP response parsing/validation.
    [Yann Ylavic]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1680868800">- Update to 2.4.57:
  * ) mod_proxy: Check before forwarding that a nocanon path has not been
    rewritten with spaces during processing.  [Yann Ylavic]
  * ) mod_proxy: In case that AllowEncodedSlashes is set to NoDecode do not
    double encode encoded slashes in the URL sent by the reverse proxy to the
    backend. [Ruediger Pluem]
  * ) mod_http2: fixed a crash during connection termination. See PR 66539.
    [Stefan Eissing]
  * ) mod_rewrite: Fix a 2.4.56 regression for substitutions ending
    in a question mark. PR66547. [Eric Covener]
  * ) mod_rewrite: Add "BCTLS" and "BNE" RewriteRule flags. Re-allow encoded
    characters on redirections without the "NE" flag.
    [Yann Ylavic, Eric Covener]
  * ) mod_proxy: Fix double encoding of the uri-path of the request forwarded
    to the origin server, when using mapping=encoded|servlet.  [Yann Ylavic]
  * ) mod_mime: Do not match the extention against possible query string
    parameters in case ProxyPass was used with the nocanon option.
    [Ruediger Pluem]</changelog>
  <changelog author="Dirk Stoecker &lt;opensuse@dstoecker.de&gt;" date="1691236800">- Enable building of mod_md</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1697716800">- Update to 2.4.58:
  * ) SECURITY: CVE-2023-45802: Apache HTTP Server: HTTP/2 stream
    memory not reclaimed right away on RST (cve.mitre.org)
    When a HTTP/2 stream was reset (RST frame) by a client, there
    was a time window were the request's memory resources were not
    reclaimed immediately. Instead, de-allocation was deferred to
    connection close. A client could send new requests and resets,
    keeping the connection busy and open and causing the memory
    footprint to keep on growing. On connection close, all resources
    were reclaimed, but the process might run out of memory before
    that.
    This was found by the reporter during testing of CVE-2023-44487
    (HTTP/2 Rapid Reset Exploit) with their own test client. During
    "normal" HTTP/2 use, the probability to hit this bug is very
    low. The kept memory would not become noticeable before the
    connection closes or times out.
    Users are recommended to upgrade to version 2.4.58, which fixes
    the issue.
    Credits: Will Dormann of Vul Labs
  * ) SECURITY: CVE-2023-43622: Apache HTTP Server: DoS in HTTP/2 with
    initial windows size 0 (cve.mitre.org)
    An attacker, opening a HTTP/2 connection with an initial window
    size of 0, was able to block handling of that connection
    indefinitely in Apache HTTP Server. This could be used to
    exhaust worker resources in the server, similar to the well
    known "slow loris" attack pattern.
    This has been fixed in version 2.4.58, so that such connection
    are terminated properly after the configured connection timeout.
    This issue affects Apache HTTP Server: from 2.4.55 through
    2.4.57.
    Users are recommended to upgrade to version 2.4.58, which fixes
    the issue.
    Credits: Prof. Sven Dietrich (City University of New York)
  * ) SECURITY: CVE-2023-31122: mod_macro buffer over-read
    (cve.mitre.org)
    Out-of-bounds Read vulnerability in mod_macro of Apache HTTP
    Server.This issue affects Apache HTTP Server: through 2.4.57.
    Credits: David Shoon (github/davidshoon)
  * ) mod_ssl: Silence info log message "SSL Library Error: error:0A000126:
    SSL routines::unexpected eof while reading" when using
    OpenSSL 3 by setting SSL_OP_IGNORE_UNEXPECTED_EOF if
    available. [Rainer Jung]
  * ) mod_http2: improved early cleanup of streams.
    [Stefan Eissing]
  * ) mod_proxy_http2: improved error handling on connection errors while
    response is already underway.
    [Stefan Eissing]
  * ) mod_http2: fixed a bug that could lead to a crash in main connection
    output handling. This occured only when the last request on a HTTP/2
    connection had been processed and the session decided to shut down.
    This could lead to an attempt to send a final GOAWAY while the previous
    write was still in progress. See PR 66646.
    [Stefan Eissing]
  * ) mod_proxy_http2: fix `X-Forward-Host` header to carry the correct value.
    Fixes PR66752.
    [Stefan Eissing]
  * ) mod_http2: added support for bootstrapping WebSockets via HTTP/2, as
    described in RFC 8441. A new directive 'H2WebSockets on|off' has been
    added. The feature is by default not enabled.
    As also discussed in the manual, this feature should work for setups
    using "ProxyPass backend-url upgrade=websocket" without further changes.
    Special server modules for WebSockets will have to be adapted,
    most likely, as the handling if IO events is different with HTTP/2.
    HTTP/2 WebSockets are supported on platforms with native pipes. This
    excludes Windows.
    [Stefan Eissing]
  * ) mod_rewrite: Fix a regression with both a trailing ? and [QSA].
    in OCSP stapling. PR 66672. [Frank Meier &lt;frank.meier ergon.ch&gt;, covener]
  * ) mod_http2: fixed a bug in flushing pending data on an already closed
    connection that could lead to a busy loop, preventing the HTTP/2 session
    to close down successfully. Fixed PR 66624.
    [Stefan Eissing]
  * ) mod_http2: v2.0.15 with the following fixes and improvements
  - New directive 'H2EarlyHint name value' to add headers to a response,
    picked up already when a "103 Early Hints" response is sent. 'name' and
    'value' must comply to the HTTP field restrictions.
    This directive can be repeated several times and header fields of the
    same names add. Sending a 'Link' header with 'preload' relation will
    also cause a HTTP/2 PUSH if enabled and supported by the client.
  - Fixed an issue where requests were not logged and accounted in a timely
    fashion when the connection returns to "keepalive" handling, e.g. when
    the request served was the last outstanding one.
    This led to late appearance in access logs with wrong duration times
    reported.
  - Accurately report the bytes sent for a request in the '%O' Log format.
    This addresses #203, a long outstanding issue where mod_h2 has reported
    numbers over-eagerly from internal buffering and not what has actually
    been placed on the connection.
    The numbers are now the same with and without H2CopyFiles enabled.
    [Stefan Eissing]
  * ) mod_proxy_http2: fix retry handling to not leak temporary errors.
    On detecting that that an existing connection was shutdown by the other
    side, a 503 response leaked even though the request was retried on a
    fresh connection.
    [Stefan Eissing]
  * ) mod_rewrite: Add server directory to include path as mod_rewrite requires
    test_char.h. PR 66571 [Valeria Petrov &lt;valeria.petrov@spinetix.com&gt;]
  * ) mod_http2: new directive `H2ProxyRequests on|off` to enable handling
    of HTTP/2 requests in a forward proxy configuration.
    General forward proxying is enabled via `ProxyRequests`. If the
    HTTP/2 protocol is also enabled for such a server/host, this new
    directive is needed in addition.
    [Stefan Eissing]
  * ) core: Updated conf/mime.types:
  - .js moved from 'application/javascript' to 'text/javascript'
  - .mjs was added as 'text/javascript'
  - add .opus ('audio/ogg')
  - add 'application/vnd.geogebra.slides'
  - add WebAssembly MIME types and extension
    [Mathias Bynens &lt;@mathiasbynens&gt; via PR 318,
    Richard de Boer &lt;richard tubul.net&gt;, Dave Hodder &lt;dmh dmh.org.uk&gt;,
    Zbynek Konecny &lt;zbynek1729 gmail.com&gt;]
  * ) mod_proxy_http2: fixed using the wrong "bucket_alloc" from the backend
    connection when sending data on the frontend one. This caused crashes
    or infinite loops in rare situations.
  * ) mod_proxy_http2: fixed a bug in retry/response handling that could lead
    to wrong status codes or HTTP messages send at the end of response bodies
    exceeding the announced content-length.
  * ) mod_proxy_http2: fix retry handling to not leak temporary errors.
    On detecting that that an existing connection was shutdown by the other
    side, a 503 response leaked even though the request was retried on a
    fresh connection.
  * ) mod_http2: fixed a bug that did cleanup of consumed and pending buckets in
    the wrong order when a bucket_beam was destroyed.
    [Stefan Eissing]
  * ) mod_http2: avoid double chunked-encoding on internal redirects.
    PR 66597 [Yann Ylavic, Stefan Eissing]
  * ) mod_http2: Fix reporting of `Total Accesses` in server-status to not count
    HTTP/2 requests twice. Fixes PR 66801.
    [Stefan Eissing]
  * ) mod_ssl: Fix handling of Certificate Revoked messages
    in OCSP stapling. PR 66626. [&lt;gmoniker gmail.com&gt;]
  * ) mod_http2: fixed a bug in handling of stream timeouts.
    [Stefan Eissing]
  * ) mod_tls: updating to rustls-ffi version 0.9.2 or higher.
    Checking in configure for proper version installed. Code
    fixes for changed clienthello member name.
    [Stefan Eissing]
  * ) mod_md:
  - New directive `MDMatchNames all|servernames` to allow more control over how
    MDomains are matched to VirtualHosts.
  - New directive `MDChallengeDns01Version`. Setting this to `2` will provide
    the command also with the challenge value on `teardown` invocation. In version
    1, the default, only the `setup` invocation gets this parameter.
    Refs #312. Thanks to @domrim for the idea.
  - For Managed Domain in "manual" mode, the checks if all used ServerName and
    ServerAlias are part of the MDomain now reports a warning instead of an error
    (AH10040) when not all names are present.
  - MDChallengeDns01 can now be configured for individual domains.
    Using PR from JÃ©rÃ´me Billiras (@bilhackmac) and adding test case and fixing proper working
  - Fixed a bug found by JÃ©rÃ´me Billiras (@bilhackmac) that caused the challenge
    teardown not being invoked as it should.
  * ) mod_ldap: Avoid performance overhead of APR-util rebind cache for
    OpenLDAP 2.2+.  PR 64414.  [Joe Orton]
  * ) mod_http2: new directive 'H2MaxDataFrameLen n' to limit the maximum
    amount of response body bytes put into a single HTTP/2 DATA frame.
    Setting this to 0 places no limit (but the max size allowed by the
    protocol is observed).
    The module, by default, tries to use the maximum size possible, which is
    somewhat around 16KB. This sets the maximum. When less response data is
    available, smaller frames will be sent.
  * ) mod_md: fixed passing of the server environment variables to programs
    started via MDMessageCmd and MDChallengeDns01 on *nix system.
    See &lt;https://github.com/icing/mod_md/issues/319&gt;.
    [Stefan Eissing]
  * ) mod_dav: Add DavBasePath directive to configure the repository root
    path.  PR 35077.  [Joe Orton]
  * ) mod_alias: Add AliasPreservePath directive to map the full
    path after the alias in a location. [Graham Leggett]
  * ) mod_alias: Add RedirectRelative to allow relative redirect targets to be
    issued as-is. [Eric Covener, Graham Leggett]
  * ) core: Add formats %{z} and %{strftime-format} to ErrorLogFormat, and make
    sure that if the format is configured early enough it applies to every log
    line.  PR 62161.  [Yann Ylavic]
  * ) mod_deflate: Add DeflateAlterETag to control how the ETag
    is modified. The 'NoChange' parameter mimics 2.2.x behavior.
    PR 45023, PR 39727. [Eric Covener]
  * ) core: Optimize send_brigade_nonblocking(). [Yann Ylavic, Christophe Jaillet]
  * ) mod_status: Remove duplicate keys "BusyWorkers" and "IdleWorkers".
    Resolve inconsistency between the previous two occurrences by
    counting workers in state SERVER_GRACEFUL no longer as busy,
    but instead in a new counter "GracefulWorkers" (or on HTML
    view as "workers gracefully restarting"). Also add the graceful
    counter as a new column to the existing HTML per process table
    for async MPMs. PR 63300. [Rainer Jung]</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1706529600">- use grep -E for egrep</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1708430400">- Use %autosetup macro. Allows to eliminate the usage of deprecated
  %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1712232000">- Update to 2.4.59:
  * ) mod_deflate: Fixes and better logging for handling various
    error and edge cases. [Eric Covener, Yann Ylavic, Joe Orton,
    Eric Norris &lt;enorris etsy.com&gt;]
  * ) Add CGIScriptTimeout to mod_cgi. [Eric Covener]
  * ) mod_xml2enc: Tolerate libxml2 2.12.0 and later.  PR 68610
    [ttachi &lt;tachihara AT hotmail.com&gt;]
  * ) mod_slotmem_shm: Use ap_os_is_path_absolute() to make it portable.
    [Jean-Frederic Clere]
  * ) mod_ssl: Use OpenSSL-standard functions to assemble CA
    name lists for SSLCACertificatePath/SSLCADNRequestPath.
    Names will now be consistently sorted. PR 61574.
    [Joe Orton]
  * ) mod_xml2enc: Update check to accept any text/ media type
    or any XML media type per RFC 7303, avoiding
    corruption of Microsoft OOXML formats.  PR 64339.
    [Joseph Heenan &lt;joseph.heenan fintechlabs.io&gt;, Joe Orton]
  * ) mod_http2: v2.0.26 with the following fixes:
  - Fixed `Date` header on requests upgraded from HTTP/1.1 (h2c). Fixes
    &lt;https://github.com/icing/mod_h2/issues/272&gt;.
  - Fixed small memory leak in h2 header bucket free. Thanks to
    Michael Kaufmann for finding this and providing the fix.
  * ) htcacheclean: In -a/-A mode, list all files per subdirectory
    rather than only one. PR 65091.
    [Artem Egorenkov &lt;aegorenkov.91 gmail.com&gt;]
  * ) mod_ssl: SSLProxyMachineCertificateFile/Path may reference files
    which include CA certificates; those CA certs are treated as if
    configured with SSLProxyMachineCertificateChainFile.  [Joe Orton]
  * ) htpasswd, htdbm, dbmmanage: Update help&amp;docs to refer to
    "hashing", rather than "encrypting" passwords.
    [Michele Preziuso &lt;mpreziuso kaosdynamics.com&gt;]
  * ) mod_ssl: Fix build with LibreSSL 2.0.7+. PR 64047.
    [Giovanni Bechis, Yann Ylavic]
  * ) htpasswd: Add support for passwords using SHA-2.  [Joe Orton,
    Yann Ylavic]
  * ) core: Allow mod_env to override system environment vars. [Joe Orton]
  * ) Allow mod_dav_fs to tolerate race conditions between PROPFIND and an
    operation which removes a directory/file between apr_dir_read() and
    apr_stat(). Current behaviour is to abort the connection which seems
    inferior to tolerating (and logging) the error. [Joe Orton]
  * ) mod_ldap: HTML-escape data in the ldap-status handler.
    [Eric Covener, Chamal De Silva]
  * ) mod_ssl: Disable the OpenSSL ENGINE API when OPENSSL_NO_ENGINE is set.
    Allow for "SSLCryptoDevice builtin" if the ENGINE API is not available,
    notably with OpenSSL &gt;= 3.  PR 68080.  [Yann Ylavic, Joe Orton]
  * ) mod_ssl: Improve compatibility with OpenSSL 3, fix build warnings about
    deprecated ENGINE_ API, honor OPENSSL_API_COMPAT setting while defaulting
    to compatibitily with version 1.1.1 (including ENGINEs / SSLCryptoDevice).
    [Yann Ylavic]
  * ) mod_ssl: release memory to the OS when needed. [Giovanni Bechis]
  * ) mod_proxy: Ignore (and warn about) enablereuse=on for ProxyPassMatch when
    some dollar substitution (backreference) happens in the hostname or port
    part of the URL.  [Yann Ylavic]
  * ) mod_proxy: Allow to set a TTL for how long DNS resolutions to backend
    systems are cached. [Yann Ylavic]
  * ) mod_proxy: Add optional third argument for ProxyRemote, which
    configures Basic authentication credentials to pass to the remote
    proxy.  PR 37355.  [Joe Orton]</changelog>
  <changelog author="pgajdos@suse.com" date="1718280000">- added patches [bsc#1226217]
  https://github.com/apache/httpd/pull/444/commits/c2fffd29b0f58bdc9caaaff4fec68e17a676f182
  + apache2-issue-444.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1720094400">- Update to 2.4.61
  * ) SECURITY: CVE-2024-39884: Apache HTTP Server: source code
    disclosure with handlers configured via AddType (cve.mitre.org)
    [boo#1227353]
    A regression in the core of Apache HTTP Server 2.4.60 ignores
    some use of the legacy content-type based configuration of
    handlers.   "AddType" and similar configuration, under some
    circumstances where files are requested indirectly, result in
    source code disclosure of local content. For example, PHP
    scripts may be served instead of interpreted.
    Users are recommended to upgrade to version 2.4.61, which fixes
    this issue.
- Update to 2.4.60
  * ) SECURITY: CVE-2024-39573: Apache HTTP Server: mod_rewrite proxy
    handler substitution (cve.mitre.org) [boo#1227271]
    Potential SSRF in mod_rewrite in Apache HTTP Server 2.4.59 and
    earlier allows an attacker to cause unsafe RewriteRules to
    unexpectedly setup URL's to be handled by mod_proxy.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38477: Apache HTTP Server: Crash resulting in
    Denial of Service in mod_proxy via a malicious request
    (cve.mitre.org) [boo#1227270]
    null pointer dereference in mod_proxy in Apache HTTP Server
    2.4.59 and earlier allows an attacker to crash the server via a
    malicious request.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38476: Apache HTTP Server may use
    exploitable/malicious backend application output to run local
    handlers via internal redirect (cve.mitre.org) [boo#1227269]
    Vulnerability in core of Apache HTTP Server 2.4.59 and earlier
    are vulnerably to information disclosure, SSRF or local script
    execution via backend applications whose response headers are
    malicious or exploitable.
    Note: Some legacy uses of the 'AddType' directive to connect a
    request to a handler must be ported to 'AddHandler' after this fix.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38475: Apache HTTP Server weakness in
    mod_rewrite when first segment of substitution matches
    filesystem path. (cve.mitre.org) [boo#1227268]
    Improper escaping of output in mod_rewrite in Apache HTTP Server
    2.4.59 and earlier allows an attacker to map URLs to filesystem
    locations that are permitted to be served by the server but are
    not intentionally/directly reachable by any URL, resulting in
    code execution or source code disclosure.
    Substitutions in server context that use a backreferences or
    variables as the first segment of the substitution are affected.
    Some unsafe RewiteRules will be broken by this change and the
    rewrite flag "UnsafePrefixStat" can be used to opt back in once
    ensuring the substitution is appropriately constrained.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38474: Apache HTTP Server weakness with
    encoded question marks in backreferences (cve.mitre.org)
    [boo#1227278]
    Substitution encoding issue in mod_rewrite in Apache HTTP Server
    2.4.59 and earlier allows attacker to execute scripts in
    directories permitted by the configuration but not directly
    reachable by any URL or source disclosure of scripts meant to
    only to be executed as CGI.
    Note: Some RewriteRules that capture and substitute unsafely will now
    fail unless rewrite flag "UnsafeAllow3F" is specified.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38473: Apache HTTP Server proxy encoding
    problem (cve.mitre.org) [boo#1227276]
    Encoding problem in mod_proxy in Apache HTTP Server 2.4.59 and
    earlier allows request URLs with incorrect encoding to be sent
    to backend services, potentially bypassing authentication via
    crafted requests.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38472: Apache HTTP Server on WIndows UNC SSRF
    (cve.mitre.org) [boo#1227267]
    SSRF in Apache HTTP Server on Windows allows to potentially leak
    NTML hashes to a malicious server via SSRF and malicious
    requests or content
    Note: Existing configurations that access UNC paths
    will have to configure new directive "UNCList" to allow access
    during request processing.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-36387: Apache HTTP Server: DoS by Null
    pointer in websocket over HTTP/2 (cve.mitre.org) [boo#1227272]
    Serving WebSocket protocol upgrades over a HTTP/2 connection
    could result in a Null Pointer dereference, leading to a crash
    of the server process, degrading performance.
    Credits: Marc Stern (&lt;marc.stern AT approach-cyber.com&gt;)
  * ) mod_proxy: Fix DNS requests and connections closed before the
    configured addressTTL.  BZ 69126.  [Yann Ylavic]
  * ) core: On Linux, log the real thread ID in error logs.  [Joe Orton]
  * ) core: Support zone/scope in IPv6 link-local addresses in Listen and
    VirtualHost directives (requires APR 1.7.x or later).  PR 59396
    [Joe Orton]
  * ) mod_ssl: Reject client-initiated renegotiation with a TLS alert
    (rather than connection closure).  [Joe Orton, Yann Ylavic]
  * ) Updated mime.types.  [Mohamed Akram &lt;mohd.akram outlook.com&gt;,
    Adam Silverstein &lt;adamsilverstein earthboundhosting.com&gt;]
  * ) mod_ssl: Fix a regression that causes the default DH parameters for a key
    no longer set and thus effectively disabling DH ciphers when no explicit
    DH parameters are set. PR 68863 [Ruediger Pluem]
  * ) mod_cgid: Optional support for file descriptor passing, fixing
    error log handling (configure --enable-cgid-fdpassing) on Unix
    platforms. PR 54221.  [Joe Orton]
  * ) mod_cgid/mod_cgi: Distinguish script stderr output clearly in
    error logs.  PR 61980.  [Hank Ibell &lt;hwibell gmail.com&gt;]
  * ) mod_tls: update version of rustls-ffi to v0.13.0.
    [Daniel McCarney (@cpu}]
  * ) mod_md:
  - Using OCSP stapling information to trigger certificate renewals. Proposed
    by @frasertweedale.
  - Added directive `MDCheckInterval` to control how often the server checks
    for detected revocations. Added proposals for configurations in the
    README.md chapter "Revocations".
  - OCSP stapling: accept OCSP responses without a `nextUpdate` entry which is
    allowed in RFC 6960. Treat those as having an update interval of 12 hours.
    Added by @frasertweedale.
  - Adapt OpenSSL usage to changes in their API. By Yann Ylavic.
- removed patches (upstreamed)
  - apache2-issue-444.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- Update to 2.4.62
  * ) SECURITY: CVE-2024-40898: Apache HTTP Server: SSRF with
    mod_rewrite in server/vhost context on Windows (cve.mitre.org)
    [boo#1228098]
    SSRF in Apache HTTP Server on Windows with mod_rewrite in
    server/vhost context, allows to potentially leak NTML hashes to
    a malicious server via SSRF and malicious requests.
    Users are recommended to upgrade to version 2.4.62 which fixes
    this issue.
    Credits: Smi1e (DBAPPSecurity Ltd.)
  * ) SECURITY: CVE-2024-40725: Apache HTTP Server: source code
    disclosure with handlers configured via AddType (cve.mitre.org)
    [boo#1228097]
    A partial fix for  CVE-2024-39884 in the core of Apache HTTP
    Server 2.4.61 ignores some use of the legacy content-type based
    configuration of handlers. "AddType" and similar configuration,
    under some circumstances where files are requested indirectly,
    result in source code disclosure of local content. For example,
    PHP scripts may be served instead of interpreted.
    Users are recommended to upgrade to version 2.4.62, which fixes
    this issue.
  * ) mod_proxy: Fix canonicalisation and FCGI env (PATH_INFO, SCRIPT_NAME) for
    "balancer:" URLs set via SetHandler, also allowing for "unix:" sockets
    with BalancerMember(s).  PR 69168.  [Yann Ylavic]
  * ) mod_proxy: Avoid AH01059 parsing error for SetHandler "unix:" URLs.
    PR 69160 [Yann Ylavic]
  * ) mod_ssl: Fix crashes in PKCS#11 ENGINE support with OpenSSL 3.2.
    [Joe Orton]
  * ) mod_ssl: Add support for loading certs/keys from pkcs11: URIs
    via OpenSSL 3.x providers.  [Ingo Franzki &lt;ifranzki linux.ibm.com&gt;]
  * ) mod_ssl: Restore SSL dumping on trace7 loglevel with OpenSSL &gt;= 3.0.
    [Ruediger Pluem, Yann Ylavic]
  * ) mpm_worker: Fix possible warning (AH00045) about children processes not
    terminating timely.  [Yann Ylavic]</changelog>
  <changelog author="Thorsten Kukuk &lt;kukuk@suse.com&gt;" date="1727697600">- Add /srv/www directories to filelist [bsc#1231027]
  (apache2 will not start since default config uses this directory)</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1730721600">- Explicitly mark start_apache2 as bash-dependent.</changelog>
  <changelog author="Martin Schreiner &lt;martin.schreiner@suse.com&gt;" date="1730808000">- Update httpd-framework to svn1921782.
- Fixes Apache's impact on bsc#1218342.</changelog>
</package>
<package pkgid="1abc8bb52767e9ccec97099ef7ce3cb5d26dc08e448a56acc02fd10acc33230f7fdd373ba9a96a831d14cb682cdaef8fe909fbc0838c833291f3c544cdf7a619" name="apache2-prefork-debuginfo" arch="x86_64">
  <version epoch="0" ver="2.4.62" rel="3.1"/>
  <changelog author="pgajdos@suse.com" date="1654689600">- update httpd-framework to svn revision 1898917</changelog>
  <changelog author="Stefan Schubert &lt;schubi@intern&gt;" date="1656417600">- Moved logrotate files from user specific directory /etc/logrotate.d
  to vendor specific directory /usr/etc/logrotate.d.</changelog>
  <changelog author="Stefan Schubert &lt;schubi@suse.com&gt;" date="1662033600">- Migration to /usr/etc: Saving user changed configuration files
  in /etc and restoring them while an RPM update.</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1663675200">- Remove references to README.QUICKSTART and point them to
  https://en.opensuse.org/SDB:Apache_installation (bsc#1203573)</changelog>
  <changelog author="Stephan Kulow &lt;coolo@suse.com&gt;" date="1663934400">- The 2.4.54 release brought support for PCRE2, but for that we also
  need to change buildrequires to pcre2-devel</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1670846400">- switch to pkgconfig(zlib) so that alternative providers can be
  used</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1674043200">- This update fixes the following security issues:
  * CVE-2022-37436 [bsc#1207251], mod_proxy backend HTTP response splitting
  * CVE-2022-36760 [bsc#1207250], mod_proxy_ajp Possible request smuggling
  * CVE-2006-20001 [bsc#1207247], mod_dav out of bounds read, or write of zero byte
- Update to 2.4.55:
  * ) SECURITY: CVE-2022-37436: Apache HTTP Server: mod_proxy prior to
    2.4.55 allows a backend to trigger HTTP response splitting
    (cve.mitre.org)
    Prior to Apache HTTP Server 2.4.55, a malicious backend can
    cause the response headers to be truncated early, resulting in
    some headers being incorporated into the response body. If the
    later headers have any security purpose, they will not be
    interpreted by the client.
    Credits: Dimas Fariski Setyawan Putra (@nyxsorcerer)
  * ) SECURITY: CVE-2022-36760: Apache HTTP Server: mod_proxy_ajp
    Possible request smuggling (cve.mitre.org)
    Inconsistent Interpretation of HTTP Requests ('HTTP Request
    Smuggling') vulnerability in mod_proxy_ajp of Apache HTTP Server
    allows an attacker to smuggle requests to the AJP server it
    forwards requests to.  This issue affects Apache HTTP Server
    Apache HTTP Server 2.4 version 2.4.54 and prior versions.
    Credits: ZeddYu_Lu from Qi'anxin Research Institute of Legendsec
    at Qi'anxin Group
  * ) SECURITY: CVE-2006-20001: mod_dav out of  bounds read, or write
    of zero byte (cve.mitre.org)
    A carefully crafted If: request header can cause a memory read,
    or write of a single zero byte, in a pool (heap) memory location
    beyond the header value sent. This could cause the process to
    crash.
    This issue affects Apache HTTP Server 2.4.54 and earlier.
  * ) mod_dav: Open the lock database read-only when possible.
    PR 36636 [Wilson Felipe &lt;wfelipe gmail.com&gt;, manu]
  * ) mod_proxy_http2: apply the standard httpd content type handling
    to responses from the backend, as other proxy modules do. Fixes PR 66391.
    Thanks to Jérôme Billiras for providing the patch.
    [Stefan Eissing]
  * ) mod_dav: mod_dav overrides dav_fs response on PUT failure. PR 35981
    [Basant Kumar Kukreja &lt;basant.kukreja sun.com&gt;, Alejandro Alvarez
    &lt;alejandro.alvarez.ayllon cern.ch&gt;]
  * ) mod_proxy_hcheck: Honor worker timeout settings.  [Yann Ylavic]
  * ) mod_http2: version 2.0.10 of the module, synchronizing changes
    with the gitgub version. This is a partial rewrite of how connections
    and streams are handled.
  - an APR pollset and pipes (where supported) are used to monitor
    the main connection and react to IO for request/response handling.
    This replaces the stuttered timed waits of earlier versions.
  - H2SerializeHeaders directive still exists, but has no longer an effect.
  - Clients that seemingly misbehave still get less resources allocated,
    but ongoing requests are no longer disrupted.
  - Fixed an issue since 1.15.24 that "Server" headers in proxied requests
    were overwritten instead of preserved. [PR by @daum3ns]
  - A regression in v1.15.24 was fixed that could lead to httpd child
    processes not being terminated on a graceful reload or when reaching
    MaxConnectionsPerChild. When unprocessed h2 requests were queued at
    the time, these could stall. See #212.
  - Improved information displayed in 'server-status' for H2 connections when
    Extended Status is enabled. Now one can see the last request that IO
    operations happened on and transferred IO stats are updated as well.
  - When reaching server limits, such as MaxRequestsPerChild, the HTTP/2 connection
    send a GOAWAY frame much too early on new connections, leading to invalid
    protocol state and a client failing the request. See PR65731 at
    &lt;https://bz.apache.org/bugzilla/show_bug.cgi?id=65731&gt;.
    The module now initializes the HTTP/2 protocol correctly and allows the
    client to submit one request before the shutdown via a GOAWAY frame
    is being announced.
  - :scheme pseudo-header values, not matching the
    connection scheme, are forwarded via absolute uris to the
    http protocol processing to preserve semantics of the request.
    Checks on combinations of pseudo-headers values/absence
    have been added as described in RFC 7540. Fixes #230.
  - A bug that prevented trailers (e.g. HEADER frame at the end) to be
    generated in certain cases was fixed. See #233 where it prevented
    gRPC responses to be properly generated.
  - Request and response header values are automatically stripped of leading
    and trialing space/tab characters. This is equivalent behaviour to what
    Apache httpd's http/1.1 parser does.
    The checks for this in nghttp2 v1.50.0+ are disabled.
  - Extensive testing in production done by Alessandro Bianchi (@alexskynet)
    on the v2.0.x versions for stability. Many thanks!
  * ) mod_proxy_http2: fixed #235 by no longer forwarding 'Host:' header when
    request ':authority' is known. Improved test case that did not catch that
    the previous 'fix' was incorrect.
  * ) mod_proxy_hcheck: hcmethod now allows for HTTP/1.1 requests
    using GET11, HEAD11 and/or OPTIONS11. [Jim Jagielski]
  * ) mod_proxy: The AH03408 warning for a forcibly closed backend
    connection is now logged at INFO level.  [Yann Ylavic]
  * ) mod_ssl: When dumping the configuration, the existence of
    certificate/key files is no longer tested.  [Joe Orton]
  * ) mod_authn_core: Add expression support to AuthName and AuthType.
    [Graham Leggett]
  * ) mod_ssl: when a proxy connection had handled a request using SSL, an
    error was logged when "SSLProxyEngine" was only configured in the
    location/proxy section and not the overall server. The connection
    continued to work, the error log was in error. Fixed PR66190.
    [Stefan Eissing]
  * ) mod_proxy_hcheck: Re-enable workers in standard ERROR state. PR 66302.
    [Alessandro Cavaliere &lt;alessandro.cavalier7 unibo.it&gt;]
  * ) mod_proxy_hcheck: Detect AJP/CPING support correctly. PR 66300.
    [Alessandro Cavaliere &lt;alessandro.cavalier7 unibo.it&gt;]
  * ) mod_http2: Export mod_http2.h as public header. [Stefan Eissing]
  * ) mod_md: a new directive `MDStoreLocks` can be used on cluster
    setups with a shared file system for `MDStoreDir` to order
    activation of renewed certificates when several cluster nodes are
    restarted at the same time. Store locks are not enabled by default.
    Restored curl_easy cleanup behaviour from v2.4.14 and refactored
    the use of curl_multi for OCSP requests to work with that.
    Fixes &lt;https://github.com/icing/mod_md/issues/293&gt;.
  * ) core: Avoid an overflow on large inputs in ap_is_matchexp.  PR 66033
    [Ruediger Pluem]
  * ) mod_heartmonitor: Allow "HeartbeatMaxServers 0" to use file based
    storage instead of slotmem. Needed after setting
    HeartbeatMaxServers default to the documented value 10 in 2.4.54.
    PR 66131.  [Jérôme Billiras]
  * ) mod_dav: DAVlockDiscovery option to disable WebDAV lock discovery
    This is a game changer for performances if client use PROPFIND a lot,
    PR 66313. [Emmanuel Dreyfus]</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1678276800">- This update fixes the following security issues:
  * CVE-2023-27522 [bsc#1209049]: mod_proxy_uwsgi HTTP response splitting
  * CVE-2023-25690 [bsc#1209047]: HTTP request splitting with mod_rewrite and mod_proxy
- Update to 2.4.56:
  * ) rotatelogs: Add -T flag to allow subsequent rotated logfiles to be
    truncated without the initial logfile being truncated.  [Eric Covener]
  * ) mod_ldap: LDAPConnectionPoolTTL should accept negative values in order to
    allow connections of any age to be reused. Up to now, a negative value
    was handled as an error when parsing the configuration file.  PR 66421.
    [nailyk &lt;bzapache nailyk.fr&gt;, Christophe Jaillet]
  * ) mod_proxy_ajp: Report an error if the AJP backend sends an invalid number
    of headers. [Ruediger Pluem]
  * ) mod_md:
  - Enabling ED25519 support and certificate transparency information when
    building with libressl v3.5.0 and newer. Thanks to Giovanni Bechis.
  - MDChallengeDns01 can now be configured for individual domains.
    Thanks to Jérôme Billiras (@bilhackmac) for the initial PR.
  - Fixed a bug found by Jérôme Billiras (@bilhackmac) that caused the challenge
    teardown not being invoked as it should.
    [Stefan Eissing]
  * ) mod_http2: client resets of HTTP/2 streams led to unwanted 500 errors
    reported in access logs and error documents. The processing of the
    reset was correct, only unneccesary reporting was caused.
    [Stefan Eissing]
  * ) mod_proxy_uwsgi: Stricter backend HTTP response parsing/validation.
    [Yann Ylavic]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1680868800">- Update to 2.4.57:
  * ) mod_proxy: Check before forwarding that a nocanon path has not been
    rewritten with spaces during processing.  [Yann Ylavic]
  * ) mod_proxy: In case that AllowEncodedSlashes is set to NoDecode do not
    double encode encoded slashes in the URL sent by the reverse proxy to the
    backend. [Ruediger Pluem]
  * ) mod_http2: fixed a crash during connection termination. See PR 66539.
    [Stefan Eissing]
  * ) mod_rewrite: Fix a 2.4.56 regression for substitutions ending
    in a question mark. PR66547. [Eric Covener]
  * ) mod_rewrite: Add "BCTLS" and "BNE" RewriteRule flags. Re-allow encoded
    characters on redirections without the "NE" flag.
    [Yann Ylavic, Eric Covener]
  * ) mod_proxy: Fix double encoding of the uri-path of the request forwarded
    to the origin server, when using mapping=encoded|servlet.  [Yann Ylavic]
  * ) mod_mime: Do not match the extention against possible query string
    parameters in case ProxyPass was used with the nocanon option.
    [Ruediger Pluem]</changelog>
  <changelog author="Dirk Stoecker &lt;opensuse@dstoecker.de&gt;" date="1691236800">- Enable building of mod_md</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1697716800">- Update to 2.4.58:
  * ) SECURITY: CVE-2023-45802: Apache HTTP Server: HTTP/2 stream
    memory not reclaimed right away on RST (cve.mitre.org)
    When a HTTP/2 stream was reset (RST frame) by a client, there
    was a time window were the request's memory resources were not
    reclaimed immediately. Instead, de-allocation was deferred to
    connection close. A client could send new requests and resets,
    keeping the connection busy and open and causing the memory
    footprint to keep on growing. On connection close, all resources
    were reclaimed, but the process might run out of memory before
    that.
    This was found by the reporter during testing of CVE-2023-44487
    (HTTP/2 Rapid Reset Exploit) with their own test client. During
    "normal" HTTP/2 use, the probability to hit this bug is very
    low. The kept memory would not become noticeable before the
    connection closes or times out.
    Users are recommended to upgrade to version 2.4.58, which fixes
    the issue.
    Credits: Will Dormann of Vul Labs
  * ) SECURITY: CVE-2023-43622: Apache HTTP Server: DoS in HTTP/2 with
    initial windows size 0 (cve.mitre.org)
    An attacker, opening a HTTP/2 connection with an initial window
    size of 0, was able to block handling of that connection
    indefinitely in Apache HTTP Server. This could be used to
    exhaust worker resources in the server, similar to the well
    known "slow loris" attack pattern.
    This has been fixed in version 2.4.58, so that such connection
    are terminated properly after the configured connection timeout.
    This issue affects Apache HTTP Server: from 2.4.55 through
    2.4.57.
    Users are recommended to upgrade to version 2.4.58, which fixes
    the issue.
    Credits: Prof. Sven Dietrich (City University of New York)
  * ) SECURITY: CVE-2023-31122: mod_macro buffer over-read
    (cve.mitre.org)
    Out-of-bounds Read vulnerability in mod_macro of Apache HTTP
    Server.This issue affects Apache HTTP Server: through 2.4.57.
    Credits: David Shoon (github/davidshoon)
  * ) mod_ssl: Silence info log message "SSL Library Error: error:0A000126:
    SSL routines::unexpected eof while reading" when using
    OpenSSL 3 by setting SSL_OP_IGNORE_UNEXPECTED_EOF if
    available. [Rainer Jung]
  * ) mod_http2: improved early cleanup of streams.
    [Stefan Eissing]
  * ) mod_proxy_http2: improved error handling on connection errors while
    response is already underway.
    [Stefan Eissing]
  * ) mod_http2: fixed a bug that could lead to a crash in main connection
    output handling. This occured only when the last request on a HTTP/2
    connection had been processed and the session decided to shut down.
    This could lead to an attempt to send a final GOAWAY while the previous
    write was still in progress. See PR 66646.
    [Stefan Eissing]
  * ) mod_proxy_http2: fix `X-Forward-Host` header to carry the correct value.
    Fixes PR66752.
    [Stefan Eissing]
  * ) mod_http2: added support for bootstrapping WebSockets via HTTP/2, as
    described in RFC 8441. A new directive 'H2WebSockets on|off' has been
    added. The feature is by default not enabled.
    As also discussed in the manual, this feature should work for setups
    using "ProxyPass backend-url upgrade=websocket" without further changes.
    Special server modules for WebSockets will have to be adapted,
    most likely, as the handling if IO events is different with HTTP/2.
    HTTP/2 WebSockets are supported on platforms with native pipes. This
    excludes Windows.
    [Stefan Eissing]
  * ) mod_rewrite: Fix a regression with both a trailing ? and [QSA].
    in OCSP stapling. PR 66672. [Frank Meier &lt;frank.meier ergon.ch&gt;, covener]
  * ) mod_http2: fixed a bug in flushing pending data on an already closed
    connection that could lead to a busy loop, preventing the HTTP/2 session
    to close down successfully. Fixed PR 66624.
    [Stefan Eissing]
  * ) mod_http2: v2.0.15 with the following fixes and improvements
  - New directive 'H2EarlyHint name value' to add headers to a response,
    picked up already when a "103 Early Hints" response is sent. 'name' and
    'value' must comply to the HTTP field restrictions.
    This directive can be repeated several times and header fields of the
    same names add. Sending a 'Link' header with 'preload' relation will
    also cause a HTTP/2 PUSH if enabled and supported by the client.
  - Fixed an issue where requests were not logged and accounted in a timely
    fashion when the connection returns to "keepalive" handling, e.g. when
    the request served was the last outstanding one.
    This led to late appearance in access logs with wrong duration times
    reported.
  - Accurately report the bytes sent for a request in the '%O' Log format.
    This addresses #203, a long outstanding issue where mod_h2 has reported
    numbers over-eagerly from internal buffering and not what has actually
    been placed on the connection.
    The numbers are now the same with and without H2CopyFiles enabled.
    [Stefan Eissing]
  * ) mod_proxy_http2: fix retry handling to not leak temporary errors.
    On detecting that that an existing connection was shutdown by the other
    side, a 503 response leaked even though the request was retried on a
    fresh connection.
    [Stefan Eissing]
  * ) mod_rewrite: Add server directory to include path as mod_rewrite requires
    test_char.h. PR 66571 [Valeria Petrov &lt;valeria.petrov@spinetix.com&gt;]
  * ) mod_http2: new directive `H2ProxyRequests on|off` to enable handling
    of HTTP/2 requests in a forward proxy configuration.
    General forward proxying is enabled via `ProxyRequests`. If the
    HTTP/2 protocol is also enabled for such a server/host, this new
    directive is needed in addition.
    [Stefan Eissing]
  * ) core: Updated conf/mime.types:
  - .js moved from 'application/javascript' to 'text/javascript'
  - .mjs was added as 'text/javascript'
  - add .opus ('audio/ogg')
  - add 'application/vnd.geogebra.slides'
  - add WebAssembly MIME types and extension
    [Mathias Bynens &lt;@mathiasbynens&gt; via PR 318,
    Richard de Boer &lt;richard tubul.net&gt;, Dave Hodder &lt;dmh dmh.org.uk&gt;,
    Zbynek Konecny &lt;zbynek1729 gmail.com&gt;]
  * ) mod_proxy_http2: fixed using the wrong "bucket_alloc" from the backend
    connection when sending data on the frontend one. This caused crashes
    or infinite loops in rare situations.
  * ) mod_proxy_http2: fixed a bug in retry/response handling that could lead
    to wrong status codes or HTTP messages send at the end of response bodies
    exceeding the announced content-length.
  * ) mod_proxy_http2: fix retry handling to not leak temporary errors.
    On detecting that that an existing connection was shutdown by the other
    side, a 503 response leaked even though the request was retried on a
    fresh connection.
  * ) mod_http2: fixed a bug that did cleanup of consumed and pending buckets in
    the wrong order when a bucket_beam was destroyed.
    [Stefan Eissing]
  * ) mod_http2: avoid double chunked-encoding on internal redirects.
    PR 66597 [Yann Ylavic, Stefan Eissing]
  * ) mod_http2: Fix reporting of `Total Accesses` in server-status to not count
    HTTP/2 requests twice. Fixes PR 66801.
    [Stefan Eissing]
  * ) mod_ssl: Fix handling of Certificate Revoked messages
    in OCSP stapling. PR 66626. [&lt;gmoniker gmail.com&gt;]
  * ) mod_http2: fixed a bug in handling of stream timeouts.
    [Stefan Eissing]
  * ) mod_tls: updating to rustls-ffi version 0.9.2 or higher.
    Checking in configure for proper version installed. Code
    fixes for changed clienthello member name.
    [Stefan Eissing]
  * ) mod_md:
  - New directive `MDMatchNames all|servernames` to allow more control over how
    MDomains are matched to VirtualHosts.
  - New directive `MDChallengeDns01Version`. Setting this to `2` will provide
    the command also with the challenge value on `teardown` invocation. In version
    1, the default, only the `setup` invocation gets this parameter.
    Refs #312. Thanks to @domrim for the idea.
  - For Managed Domain in "manual" mode, the checks if all used ServerName and
    ServerAlias are part of the MDomain now reports a warning instead of an error
    (AH10040) when not all names are present.
  - MDChallengeDns01 can now be configured for individual domains.
    Using PR from JÃ©rÃ´me Billiras (@bilhackmac) and adding test case and fixing proper working
  - Fixed a bug found by JÃ©rÃ´me Billiras (@bilhackmac) that caused the challenge
    teardown not being invoked as it should.
  * ) mod_ldap: Avoid performance overhead of APR-util rebind cache for
    OpenLDAP 2.2+.  PR 64414.  [Joe Orton]
  * ) mod_http2: new directive 'H2MaxDataFrameLen n' to limit the maximum
    amount of response body bytes put into a single HTTP/2 DATA frame.
    Setting this to 0 places no limit (but the max size allowed by the
    protocol is observed).
    The module, by default, tries to use the maximum size possible, which is
    somewhat around 16KB. This sets the maximum. When less response data is
    available, smaller frames will be sent.
  * ) mod_md: fixed passing of the server environment variables to programs
    started via MDMessageCmd and MDChallengeDns01 on *nix system.
    See &lt;https://github.com/icing/mod_md/issues/319&gt;.
    [Stefan Eissing]
  * ) mod_dav: Add DavBasePath directive to configure the repository root
    path.  PR 35077.  [Joe Orton]
  * ) mod_alias: Add AliasPreservePath directive to map the full
    path after the alias in a location. [Graham Leggett]
  * ) mod_alias: Add RedirectRelative to allow relative redirect targets to be
    issued as-is. [Eric Covener, Graham Leggett]
  * ) core: Add formats %{z} and %{strftime-format} to ErrorLogFormat, and make
    sure that if the format is configured early enough it applies to every log
    line.  PR 62161.  [Yann Ylavic]
  * ) mod_deflate: Add DeflateAlterETag to control how the ETag
    is modified. The 'NoChange' parameter mimics 2.2.x behavior.
    PR 45023, PR 39727. [Eric Covener]
  * ) core: Optimize send_brigade_nonblocking(). [Yann Ylavic, Christophe Jaillet]
  * ) mod_status: Remove duplicate keys "BusyWorkers" and "IdleWorkers".
    Resolve inconsistency between the previous two occurrences by
    counting workers in state SERVER_GRACEFUL no longer as busy,
    but instead in a new counter "GracefulWorkers" (or on HTML
    view as "workers gracefully restarting"). Also add the graceful
    counter as a new column to the existing HTML per process table
    for async MPMs. PR 63300. [Rainer Jung]</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1706529600">- use grep -E for egrep</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1708430400">- Use %autosetup macro. Allows to eliminate the usage of deprecated
  %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1712232000">- Update to 2.4.59:
  * ) mod_deflate: Fixes and better logging for handling various
    error and edge cases. [Eric Covener, Yann Ylavic, Joe Orton,
    Eric Norris &lt;enorris etsy.com&gt;]
  * ) Add CGIScriptTimeout to mod_cgi. [Eric Covener]
  * ) mod_xml2enc: Tolerate libxml2 2.12.0 and later.  PR 68610
    [ttachi &lt;tachihara AT hotmail.com&gt;]
  * ) mod_slotmem_shm: Use ap_os_is_path_absolute() to make it portable.
    [Jean-Frederic Clere]
  * ) mod_ssl: Use OpenSSL-standard functions to assemble CA
    name lists for SSLCACertificatePath/SSLCADNRequestPath.
    Names will now be consistently sorted. PR 61574.
    [Joe Orton]
  * ) mod_xml2enc: Update check to accept any text/ media type
    or any XML media type per RFC 7303, avoiding
    corruption of Microsoft OOXML formats.  PR 64339.
    [Joseph Heenan &lt;joseph.heenan fintechlabs.io&gt;, Joe Orton]
  * ) mod_http2: v2.0.26 with the following fixes:
  - Fixed `Date` header on requests upgraded from HTTP/1.1 (h2c). Fixes
    &lt;https://github.com/icing/mod_h2/issues/272&gt;.
  - Fixed small memory leak in h2 header bucket free. Thanks to
    Michael Kaufmann for finding this and providing the fix.
  * ) htcacheclean: In -a/-A mode, list all files per subdirectory
    rather than only one. PR 65091.
    [Artem Egorenkov &lt;aegorenkov.91 gmail.com&gt;]
  * ) mod_ssl: SSLProxyMachineCertificateFile/Path may reference files
    which include CA certificates; those CA certs are treated as if
    configured with SSLProxyMachineCertificateChainFile.  [Joe Orton]
  * ) htpasswd, htdbm, dbmmanage: Update help&amp;docs to refer to
    "hashing", rather than "encrypting" passwords.
    [Michele Preziuso &lt;mpreziuso kaosdynamics.com&gt;]
  * ) mod_ssl: Fix build with LibreSSL 2.0.7+. PR 64047.
    [Giovanni Bechis, Yann Ylavic]
  * ) htpasswd: Add support for passwords using SHA-2.  [Joe Orton,
    Yann Ylavic]
  * ) core: Allow mod_env to override system environment vars. [Joe Orton]
  * ) Allow mod_dav_fs to tolerate race conditions between PROPFIND and an
    operation which removes a directory/file between apr_dir_read() and
    apr_stat(). Current behaviour is to abort the connection which seems
    inferior to tolerating (and logging) the error. [Joe Orton]
  * ) mod_ldap: HTML-escape data in the ldap-status handler.
    [Eric Covener, Chamal De Silva]
  * ) mod_ssl: Disable the OpenSSL ENGINE API when OPENSSL_NO_ENGINE is set.
    Allow for "SSLCryptoDevice builtin" if the ENGINE API is not available,
    notably with OpenSSL &gt;= 3.  PR 68080.  [Yann Ylavic, Joe Orton]
  * ) mod_ssl: Improve compatibility with OpenSSL 3, fix build warnings about
    deprecated ENGINE_ API, honor OPENSSL_API_COMPAT setting while defaulting
    to compatibitily with version 1.1.1 (including ENGINEs / SSLCryptoDevice).
    [Yann Ylavic]
  * ) mod_ssl: release memory to the OS when needed. [Giovanni Bechis]
  * ) mod_proxy: Ignore (and warn about) enablereuse=on for ProxyPassMatch when
    some dollar substitution (backreference) happens in the hostname or port
    part of the URL.  [Yann Ylavic]
  * ) mod_proxy: Allow to set a TTL for how long DNS resolutions to backend
    systems are cached. [Yann Ylavic]
  * ) mod_proxy: Add optional third argument for ProxyRemote, which
    configures Basic authentication credentials to pass to the remote
    proxy.  PR 37355.  [Joe Orton]</changelog>
  <changelog author="pgajdos@suse.com" date="1718280000">- added patches [bsc#1226217]
  https://github.com/apache/httpd/pull/444/commits/c2fffd29b0f58bdc9caaaff4fec68e17a676f182
  + apache2-issue-444.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1720094400">- Update to 2.4.61
  * ) SECURITY: CVE-2024-39884: Apache HTTP Server: source code
    disclosure with handlers configured via AddType (cve.mitre.org)
    [boo#1227353]
    A regression in the core of Apache HTTP Server 2.4.60 ignores
    some use of the legacy content-type based configuration of
    handlers.   "AddType" and similar configuration, under some
    circumstances where files are requested indirectly, result in
    source code disclosure of local content. For example, PHP
    scripts may be served instead of interpreted.
    Users are recommended to upgrade to version 2.4.61, which fixes
    this issue.
- Update to 2.4.60
  * ) SECURITY: CVE-2024-39573: Apache HTTP Server: mod_rewrite proxy
    handler substitution (cve.mitre.org) [boo#1227271]
    Potential SSRF in mod_rewrite in Apache HTTP Server 2.4.59 and
    earlier allows an attacker to cause unsafe RewriteRules to
    unexpectedly setup URL's to be handled by mod_proxy.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38477: Apache HTTP Server: Crash resulting in
    Denial of Service in mod_proxy via a malicious request
    (cve.mitre.org) [boo#1227270]
    null pointer dereference in mod_proxy in Apache HTTP Server
    2.4.59 and earlier allows an attacker to crash the server via a
    malicious request.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38476: Apache HTTP Server may use
    exploitable/malicious backend application output to run local
    handlers via internal redirect (cve.mitre.org) [boo#1227269]
    Vulnerability in core of Apache HTTP Server 2.4.59 and earlier
    are vulnerably to information disclosure, SSRF or local script
    execution via backend applications whose response headers are
    malicious or exploitable.
    Note: Some legacy uses of the 'AddType' directive to connect a
    request to a handler must be ported to 'AddHandler' after this fix.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38475: Apache HTTP Server weakness in
    mod_rewrite when first segment of substitution matches
    filesystem path. (cve.mitre.org) [boo#1227268]
    Improper escaping of output in mod_rewrite in Apache HTTP Server
    2.4.59 and earlier allows an attacker to map URLs to filesystem
    locations that are permitted to be served by the server but are
    not intentionally/directly reachable by any URL, resulting in
    code execution or source code disclosure.
    Substitutions in server context that use a backreferences or
    variables as the first segment of the substitution are affected.
    Some unsafe RewiteRules will be broken by this change and the
    rewrite flag "UnsafePrefixStat" can be used to opt back in once
    ensuring the substitution is appropriately constrained.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38474: Apache HTTP Server weakness with
    encoded question marks in backreferences (cve.mitre.org)
    [boo#1227278]
    Substitution encoding issue in mod_rewrite in Apache HTTP Server
    2.4.59 and earlier allows attacker to execute scripts in
    directories permitted by the configuration but not directly
    reachable by any URL or source disclosure of scripts meant to
    only to be executed as CGI.
    Note: Some RewriteRules that capture and substitute unsafely will now
    fail unless rewrite flag "UnsafeAllow3F" is specified.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38473: Apache HTTP Server proxy encoding
    problem (cve.mitre.org) [boo#1227276]
    Encoding problem in mod_proxy in Apache HTTP Server 2.4.59 and
    earlier allows request URLs with incorrect encoding to be sent
    to backend services, potentially bypassing authentication via
    crafted requests.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38472: Apache HTTP Server on WIndows UNC SSRF
    (cve.mitre.org) [boo#1227267]
    SSRF in Apache HTTP Server on Windows allows to potentially leak
    NTML hashes to a malicious server via SSRF and malicious
    requests or content
    Note: Existing configurations that access UNC paths
    will have to configure new directive "UNCList" to allow access
    during request processing.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-36387: Apache HTTP Server: DoS by Null
    pointer in websocket over HTTP/2 (cve.mitre.org) [boo#1227272]
    Serving WebSocket protocol upgrades over a HTTP/2 connection
    could result in a Null Pointer dereference, leading to a crash
    of the server process, degrading performance.
    Credits: Marc Stern (&lt;marc.stern AT approach-cyber.com&gt;)
  * ) mod_proxy: Fix DNS requests and connections closed before the
    configured addressTTL.  BZ 69126.  [Yann Ylavic]
  * ) core: On Linux, log the real thread ID in error logs.  [Joe Orton]
  * ) core: Support zone/scope in IPv6 link-local addresses in Listen and
    VirtualHost directives (requires APR 1.7.x or later).  PR 59396
    [Joe Orton]
  * ) mod_ssl: Reject client-initiated renegotiation with a TLS alert
    (rather than connection closure).  [Joe Orton, Yann Ylavic]
  * ) Updated mime.types.  [Mohamed Akram &lt;mohd.akram outlook.com&gt;,
    Adam Silverstein &lt;adamsilverstein earthboundhosting.com&gt;]
  * ) mod_ssl: Fix a regression that causes the default DH parameters for a key
    no longer set and thus effectively disabling DH ciphers when no explicit
    DH parameters are set. PR 68863 [Ruediger Pluem]
  * ) mod_cgid: Optional support for file descriptor passing, fixing
    error log handling (configure --enable-cgid-fdpassing) on Unix
    platforms. PR 54221.  [Joe Orton]
  * ) mod_cgid/mod_cgi: Distinguish script stderr output clearly in
    error logs.  PR 61980.  [Hank Ibell &lt;hwibell gmail.com&gt;]
  * ) mod_tls: update version of rustls-ffi to v0.13.0.
    [Daniel McCarney (@cpu}]
  * ) mod_md:
  - Using OCSP stapling information to trigger certificate renewals. Proposed
    by @frasertweedale.
  - Added directive `MDCheckInterval` to control how often the server checks
    for detected revocations. Added proposals for configurations in the
    README.md chapter "Revocations".
  - OCSP stapling: accept OCSP responses without a `nextUpdate` entry which is
    allowed in RFC 6960. Treat those as having an update interval of 12 hours.
    Added by @frasertweedale.
  - Adapt OpenSSL usage to changes in their API. By Yann Ylavic.
- removed patches (upstreamed)
  - apache2-issue-444.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- Update to 2.4.62
  * ) SECURITY: CVE-2024-40898: Apache HTTP Server: SSRF with
    mod_rewrite in server/vhost context on Windows (cve.mitre.org)
    [boo#1228098]
    SSRF in Apache HTTP Server on Windows with mod_rewrite in
    server/vhost context, allows to potentially leak NTML hashes to
    a malicious server via SSRF and malicious requests.
    Users are recommended to upgrade to version 2.4.62 which fixes
    this issue.
    Credits: Smi1e (DBAPPSecurity Ltd.)
  * ) SECURITY: CVE-2024-40725: Apache HTTP Server: source code
    disclosure with handlers configured via AddType (cve.mitre.org)
    [boo#1228097]
    A partial fix for  CVE-2024-39884 in the core of Apache HTTP
    Server 2.4.61 ignores some use of the legacy content-type based
    configuration of handlers. "AddType" and similar configuration,
    under some circumstances where files are requested indirectly,
    result in source code disclosure of local content. For example,
    PHP scripts may be served instead of interpreted.
    Users are recommended to upgrade to version 2.4.62, which fixes
    this issue.
  * ) mod_proxy: Fix canonicalisation and FCGI env (PATH_INFO, SCRIPT_NAME) for
    "balancer:" URLs set via SetHandler, also allowing for "unix:" sockets
    with BalancerMember(s).  PR 69168.  [Yann Ylavic]
  * ) mod_proxy: Avoid AH01059 parsing error for SetHandler "unix:" URLs.
    PR 69160 [Yann Ylavic]
  * ) mod_ssl: Fix crashes in PKCS#11 ENGINE support with OpenSSL 3.2.
    [Joe Orton]
  * ) mod_ssl: Add support for loading certs/keys from pkcs11: URIs
    via OpenSSL 3.x providers.  [Ingo Franzki &lt;ifranzki linux.ibm.com&gt;]
  * ) mod_ssl: Restore SSL dumping on trace7 loglevel with OpenSSL &gt;= 3.0.
    [Ruediger Pluem, Yann Ylavic]
  * ) mpm_worker: Fix possible warning (AH00045) about children processes not
    terminating timely.  [Yann Ylavic]</changelog>
  <changelog author="Thorsten Kukuk &lt;kukuk@suse.com&gt;" date="1727697600">- Add /srv/www directories to filelist [bsc#1231027]
  (apache2 will not start since default config uses this directory)</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1730721600">- Explicitly mark start_apache2 as bash-dependent.</changelog>
  <changelog author="Martin Schreiner &lt;martin.schreiner@suse.com&gt;" date="1730808000">- Update httpd-framework to svn1921782.
- Fixes Apache's impact on bsc#1218342.</changelog>
</package>
<package pkgid="00d63825aca4d94bd119421cc3b7a9b6244d26c202642669b0ffc58f38351ed9712e86995caba41c5057d7de0911d1f7caa23bac7b57c39bfdba15ec74c446a3" name="apache2-prefork-debugsource" arch="i586">
  <version epoch="0" ver="2.4.62" rel="3.1"/>
  <changelog author="pgajdos@suse.com" date="1654689600">- update httpd-framework to svn revision 1898917</changelog>
  <changelog author="Stefan Schubert &lt;schubi@intern&gt;" date="1656417600">- Moved logrotate files from user specific directory /etc/logrotate.d
  to vendor specific directory /usr/etc/logrotate.d.</changelog>
  <changelog author="Stefan Schubert &lt;schubi@suse.com&gt;" date="1662033600">- Migration to /usr/etc: Saving user changed configuration files
  in /etc and restoring them while an RPM update.</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1663675200">- Remove references to README.QUICKSTART and point them to
  https://en.opensuse.org/SDB:Apache_installation (bsc#1203573)</changelog>
  <changelog author="Stephan Kulow &lt;coolo@suse.com&gt;" date="1663934400">- The 2.4.54 release brought support for PCRE2, but for that we also
  need to change buildrequires to pcre2-devel</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1670846400">- switch to pkgconfig(zlib) so that alternative providers can be
  used</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1674043200">- This update fixes the following security issues:
  * CVE-2022-37436 [bsc#1207251], mod_proxy backend HTTP response splitting
  * CVE-2022-36760 [bsc#1207250], mod_proxy_ajp Possible request smuggling
  * CVE-2006-20001 [bsc#1207247], mod_dav out of bounds read, or write of zero byte
- Update to 2.4.55:
  * ) SECURITY: CVE-2022-37436: Apache HTTP Server: mod_proxy prior to
    2.4.55 allows a backend to trigger HTTP response splitting
    (cve.mitre.org)
    Prior to Apache HTTP Server 2.4.55, a malicious backend can
    cause the response headers to be truncated early, resulting in
    some headers being incorporated into the response body. If the
    later headers have any security purpose, they will not be
    interpreted by the client.
    Credits: Dimas Fariski Setyawan Putra (@nyxsorcerer)
  * ) SECURITY: CVE-2022-36760: Apache HTTP Server: mod_proxy_ajp
    Possible request smuggling (cve.mitre.org)
    Inconsistent Interpretation of HTTP Requests ('HTTP Request
    Smuggling') vulnerability in mod_proxy_ajp of Apache HTTP Server
    allows an attacker to smuggle requests to the AJP server it
    forwards requests to.  This issue affects Apache HTTP Server
    Apache HTTP Server 2.4 version 2.4.54 and prior versions.
    Credits: ZeddYu_Lu from Qi'anxin Research Institute of Legendsec
    at Qi'anxin Group
  * ) SECURITY: CVE-2006-20001: mod_dav out of  bounds read, or write
    of zero byte (cve.mitre.org)
    A carefully crafted If: request header can cause a memory read,
    or write of a single zero byte, in a pool (heap) memory location
    beyond the header value sent. This could cause the process to
    crash.
    This issue affects Apache HTTP Server 2.4.54 and earlier.
  * ) mod_dav: Open the lock database read-only when possible.
    PR 36636 [Wilson Felipe &lt;wfelipe gmail.com&gt;, manu]
  * ) mod_proxy_http2: apply the standard httpd content type handling
    to responses from the backend, as other proxy modules do. Fixes PR 66391.
    Thanks to Jérôme Billiras for providing the patch.
    [Stefan Eissing]
  * ) mod_dav: mod_dav overrides dav_fs response on PUT failure. PR 35981
    [Basant Kumar Kukreja &lt;basant.kukreja sun.com&gt;, Alejandro Alvarez
    &lt;alejandro.alvarez.ayllon cern.ch&gt;]
  * ) mod_proxy_hcheck: Honor worker timeout settings.  [Yann Ylavic]
  * ) mod_http2: version 2.0.10 of the module, synchronizing changes
    with the gitgub version. This is a partial rewrite of how connections
    and streams are handled.
  - an APR pollset and pipes (where supported) are used to monitor
    the main connection and react to IO for request/response handling.
    This replaces the stuttered timed waits of earlier versions.
  - H2SerializeHeaders directive still exists, but has no longer an effect.
  - Clients that seemingly misbehave still get less resources allocated,
    but ongoing requests are no longer disrupted.
  - Fixed an issue since 1.15.24 that "Server" headers in proxied requests
    were overwritten instead of preserved. [PR by @daum3ns]
  - A regression in v1.15.24 was fixed that could lead to httpd child
    processes not being terminated on a graceful reload or when reaching
    MaxConnectionsPerChild. When unprocessed h2 requests were queued at
    the time, these could stall. See #212.
  - Improved information displayed in 'server-status' for H2 connections when
    Extended Status is enabled. Now one can see the last request that IO
    operations happened on and transferred IO stats are updated as well.
  - When reaching server limits, such as MaxRequestsPerChild, the HTTP/2 connection
    send a GOAWAY frame much too early on new connections, leading to invalid
    protocol state and a client failing the request. See PR65731 at
    &lt;https://bz.apache.org/bugzilla/show_bug.cgi?id=65731&gt;.
    The module now initializes the HTTP/2 protocol correctly and allows the
    client to submit one request before the shutdown via a GOAWAY frame
    is being announced.
  - :scheme pseudo-header values, not matching the
    connection scheme, are forwarded via absolute uris to the
    http protocol processing to preserve semantics of the request.
    Checks on combinations of pseudo-headers values/absence
    have been added as described in RFC 7540. Fixes #230.
  - A bug that prevented trailers (e.g. HEADER frame at the end) to be
    generated in certain cases was fixed. See #233 where it prevented
    gRPC responses to be properly generated.
  - Request and response header values are automatically stripped of leading
    and trialing space/tab characters. This is equivalent behaviour to what
    Apache httpd's http/1.1 parser does.
    The checks for this in nghttp2 v1.50.0+ are disabled.
  - Extensive testing in production done by Alessandro Bianchi (@alexskynet)
    on the v2.0.x versions for stability. Many thanks!
  * ) mod_proxy_http2: fixed #235 by no longer forwarding 'Host:' header when
    request ':authority' is known. Improved test case that did not catch that
    the previous 'fix' was incorrect.
  * ) mod_proxy_hcheck: hcmethod now allows for HTTP/1.1 requests
    using GET11, HEAD11 and/or OPTIONS11. [Jim Jagielski]
  * ) mod_proxy: The AH03408 warning for a forcibly closed backend
    connection is now logged at INFO level.  [Yann Ylavic]
  * ) mod_ssl: When dumping the configuration, the existence of
    certificate/key files is no longer tested.  [Joe Orton]
  * ) mod_authn_core: Add expression support to AuthName and AuthType.
    [Graham Leggett]
  * ) mod_ssl: when a proxy connection had handled a request using SSL, an
    error was logged when "SSLProxyEngine" was only configured in the
    location/proxy section and not the overall server. The connection
    continued to work, the error log was in error. Fixed PR66190.
    [Stefan Eissing]
  * ) mod_proxy_hcheck: Re-enable workers in standard ERROR state. PR 66302.
    [Alessandro Cavaliere &lt;alessandro.cavalier7 unibo.it&gt;]
  * ) mod_proxy_hcheck: Detect AJP/CPING support correctly. PR 66300.
    [Alessandro Cavaliere &lt;alessandro.cavalier7 unibo.it&gt;]
  * ) mod_http2: Export mod_http2.h as public header. [Stefan Eissing]
  * ) mod_md: a new directive `MDStoreLocks` can be used on cluster
    setups with a shared file system for `MDStoreDir` to order
    activation of renewed certificates when several cluster nodes are
    restarted at the same time. Store locks are not enabled by default.
    Restored curl_easy cleanup behaviour from v2.4.14 and refactored
    the use of curl_multi for OCSP requests to work with that.
    Fixes &lt;https://github.com/icing/mod_md/issues/293&gt;.
  * ) core: Avoid an overflow on large inputs in ap_is_matchexp.  PR 66033
    [Ruediger Pluem]
  * ) mod_heartmonitor: Allow "HeartbeatMaxServers 0" to use file based
    storage instead of slotmem. Needed after setting
    HeartbeatMaxServers default to the documented value 10 in 2.4.54.
    PR 66131.  [Jérôme Billiras]
  * ) mod_dav: DAVlockDiscovery option to disable WebDAV lock discovery
    This is a game changer for performances if client use PROPFIND a lot,
    PR 66313. [Emmanuel Dreyfus]</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1678276800">- This update fixes the following security issues:
  * CVE-2023-27522 [bsc#1209049]: mod_proxy_uwsgi HTTP response splitting
  * CVE-2023-25690 [bsc#1209047]: HTTP request splitting with mod_rewrite and mod_proxy
- Update to 2.4.56:
  * ) rotatelogs: Add -T flag to allow subsequent rotated logfiles to be
    truncated without the initial logfile being truncated.  [Eric Covener]
  * ) mod_ldap: LDAPConnectionPoolTTL should accept negative values in order to
    allow connections of any age to be reused. Up to now, a negative value
    was handled as an error when parsing the configuration file.  PR 66421.
    [nailyk &lt;bzapache nailyk.fr&gt;, Christophe Jaillet]
  * ) mod_proxy_ajp: Report an error if the AJP backend sends an invalid number
    of headers. [Ruediger Pluem]
  * ) mod_md:
  - Enabling ED25519 support and certificate transparency information when
    building with libressl v3.5.0 and newer. Thanks to Giovanni Bechis.
  - MDChallengeDns01 can now be configured for individual domains.
    Thanks to Jérôme Billiras (@bilhackmac) for the initial PR.
  - Fixed a bug found by Jérôme Billiras (@bilhackmac) that caused the challenge
    teardown not being invoked as it should.
    [Stefan Eissing]
  * ) mod_http2: client resets of HTTP/2 streams led to unwanted 500 errors
    reported in access logs and error documents. The processing of the
    reset was correct, only unneccesary reporting was caused.
    [Stefan Eissing]
  * ) mod_proxy_uwsgi: Stricter backend HTTP response parsing/validation.
    [Yann Ylavic]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1680868800">- Update to 2.4.57:
  * ) mod_proxy: Check before forwarding that a nocanon path has not been
    rewritten with spaces during processing.  [Yann Ylavic]
  * ) mod_proxy: In case that AllowEncodedSlashes is set to NoDecode do not
    double encode encoded slashes in the URL sent by the reverse proxy to the
    backend. [Ruediger Pluem]
  * ) mod_http2: fixed a crash during connection termination. See PR 66539.
    [Stefan Eissing]
  * ) mod_rewrite: Fix a 2.4.56 regression for substitutions ending
    in a question mark. PR66547. [Eric Covener]
  * ) mod_rewrite: Add "BCTLS" and "BNE" RewriteRule flags. Re-allow encoded
    characters on redirections without the "NE" flag.
    [Yann Ylavic, Eric Covener]
  * ) mod_proxy: Fix double encoding of the uri-path of the request forwarded
    to the origin server, when using mapping=encoded|servlet.  [Yann Ylavic]
  * ) mod_mime: Do not match the extention against possible query string
    parameters in case ProxyPass was used with the nocanon option.
    [Ruediger Pluem]</changelog>
  <changelog author="Dirk Stoecker &lt;opensuse@dstoecker.de&gt;" date="1691236800">- Enable building of mod_md</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1697716800">- Update to 2.4.58:
  * ) SECURITY: CVE-2023-45802: Apache HTTP Server: HTTP/2 stream
    memory not reclaimed right away on RST (cve.mitre.org)
    When a HTTP/2 stream was reset (RST frame) by a client, there
    was a time window were the request's memory resources were not
    reclaimed immediately. Instead, de-allocation was deferred to
    connection close. A client could send new requests and resets,
    keeping the connection busy and open and causing the memory
    footprint to keep on growing. On connection close, all resources
    were reclaimed, but the process might run out of memory before
    that.
    This was found by the reporter during testing of CVE-2023-44487
    (HTTP/2 Rapid Reset Exploit) with their own test client. During
    "normal" HTTP/2 use, the probability to hit this bug is very
    low. The kept memory would not become noticeable before the
    connection closes or times out.
    Users are recommended to upgrade to version 2.4.58, which fixes
    the issue.
    Credits: Will Dormann of Vul Labs
  * ) SECURITY: CVE-2023-43622: Apache HTTP Server: DoS in HTTP/2 with
    initial windows size 0 (cve.mitre.org)
    An attacker, opening a HTTP/2 connection with an initial window
    size of 0, was able to block handling of that connection
    indefinitely in Apache HTTP Server. This could be used to
    exhaust worker resources in the server, similar to the well
    known "slow loris" attack pattern.
    This has been fixed in version 2.4.58, so that such connection
    are terminated properly after the configured connection timeout.
    This issue affects Apache HTTP Server: from 2.4.55 through
    2.4.57.
    Users are recommended to upgrade to version 2.4.58, which fixes
    the issue.
    Credits: Prof. Sven Dietrich (City University of New York)
  * ) SECURITY: CVE-2023-31122: mod_macro buffer over-read
    (cve.mitre.org)
    Out-of-bounds Read vulnerability in mod_macro of Apache HTTP
    Server.This issue affects Apache HTTP Server: through 2.4.57.
    Credits: David Shoon (github/davidshoon)
  * ) mod_ssl: Silence info log message "SSL Library Error: error:0A000126:
    SSL routines::unexpected eof while reading" when using
    OpenSSL 3 by setting SSL_OP_IGNORE_UNEXPECTED_EOF if
    available. [Rainer Jung]
  * ) mod_http2: improved early cleanup of streams.
    [Stefan Eissing]
  * ) mod_proxy_http2: improved error handling on connection errors while
    response is already underway.
    [Stefan Eissing]
  * ) mod_http2: fixed a bug that could lead to a crash in main connection
    output handling. This occured only when the last request on a HTTP/2
    connection had been processed and the session decided to shut down.
    This could lead to an attempt to send a final GOAWAY while the previous
    write was still in progress. See PR 66646.
    [Stefan Eissing]
  * ) mod_proxy_http2: fix `X-Forward-Host` header to carry the correct value.
    Fixes PR66752.
    [Stefan Eissing]
  * ) mod_http2: added support for bootstrapping WebSockets via HTTP/2, as
    described in RFC 8441. A new directive 'H2WebSockets on|off' has been
    added. The feature is by default not enabled.
    As also discussed in the manual, this feature should work for setups
    using "ProxyPass backend-url upgrade=websocket" without further changes.
    Special server modules for WebSockets will have to be adapted,
    most likely, as the handling if IO events is different with HTTP/2.
    HTTP/2 WebSockets are supported on platforms with native pipes. This
    excludes Windows.
    [Stefan Eissing]
  * ) mod_rewrite: Fix a regression with both a trailing ? and [QSA].
    in OCSP stapling. PR 66672. [Frank Meier &lt;frank.meier ergon.ch&gt;, covener]
  * ) mod_http2: fixed a bug in flushing pending data on an already closed
    connection that could lead to a busy loop, preventing the HTTP/2 session
    to close down successfully. Fixed PR 66624.
    [Stefan Eissing]
  * ) mod_http2: v2.0.15 with the following fixes and improvements
  - New directive 'H2EarlyHint name value' to add headers to a response,
    picked up already when a "103 Early Hints" response is sent. 'name' and
    'value' must comply to the HTTP field restrictions.
    This directive can be repeated several times and header fields of the
    same names add. Sending a 'Link' header with 'preload' relation will
    also cause a HTTP/2 PUSH if enabled and supported by the client.
  - Fixed an issue where requests were not logged and accounted in a timely
    fashion when the connection returns to "keepalive" handling, e.g. when
    the request served was the last outstanding one.
    This led to late appearance in access logs with wrong duration times
    reported.
  - Accurately report the bytes sent for a request in the '%O' Log format.
    This addresses #203, a long outstanding issue where mod_h2 has reported
    numbers over-eagerly from internal buffering and not what has actually
    been placed on the connection.
    The numbers are now the same with and without H2CopyFiles enabled.
    [Stefan Eissing]
  * ) mod_proxy_http2: fix retry handling to not leak temporary errors.
    On detecting that that an existing connection was shutdown by the other
    side, a 503 response leaked even though the request was retried on a
    fresh connection.
    [Stefan Eissing]
  * ) mod_rewrite: Add server directory to include path as mod_rewrite requires
    test_char.h. PR 66571 [Valeria Petrov &lt;valeria.petrov@spinetix.com&gt;]
  * ) mod_http2: new directive `H2ProxyRequests on|off` to enable handling
    of HTTP/2 requests in a forward proxy configuration.
    General forward proxying is enabled via `ProxyRequests`. If the
    HTTP/2 protocol is also enabled for such a server/host, this new
    directive is needed in addition.
    [Stefan Eissing]
  * ) core: Updated conf/mime.types:
  - .js moved from 'application/javascript' to 'text/javascript'
  - .mjs was added as 'text/javascript'
  - add .opus ('audio/ogg')
  - add 'application/vnd.geogebra.slides'
  - add WebAssembly MIME types and extension
    [Mathias Bynens &lt;@mathiasbynens&gt; via PR 318,
    Richard de Boer &lt;richard tubul.net&gt;, Dave Hodder &lt;dmh dmh.org.uk&gt;,
    Zbynek Konecny &lt;zbynek1729 gmail.com&gt;]
  * ) mod_proxy_http2: fixed using the wrong "bucket_alloc" from the backend
    connection when sending data on the frontend one. This caused crashes
    or infinite loops in rare situations.
  * ) mod_proxy_http2: fixed a bug in retry/response handling that could lead
    to wrong status codes or HTTP messages send at the end of response bodies
    exceeding the announced content-length.
  * ) mod_proxy_http2: fix retry handling to not leak temporary errors.
    On detecting that that an existing connection was shutdown by the other
    side, a 503 response leaked even though the request was retried on a
    fresh connection.
  * ) mod_http2: fixed a bug that did cleanup of consumed and pending buckets in
    the wrong order when a bucket_beam was destroyed.
    [Stefan Eissing]
  * ) mod_http2: avoid double chunked-encoding on internal redirects.
    PR 66597 [Yann Ylavic, Stefan Eissing]
  * ) mod_http2: Fix reporting of `Total Accesses` in server-status to not count
    HTTP/2 requests twice. Fixes PR 66801.
    [Stefan Eissing]
  * ) mod_ssl: Fix handling of Certificate Revoked messages
    in OCSP stapling. PR 66626. [&lt;gmoniker gmail.com&gt;]
  * ) mod_http2: fixed a bug in handling of stream timeouts.
    [Stefan Eissing]
  * ) mod_tls: updating to rustls-ffi version 0.9.2 or higher.
    Checking in configure for proper version installed. Code
    fixes for changed clienthello member name.
    [Stefan Eissing]
  * ) mod_md:
  - New directive `MDMatchNames all|servernames` to allow more control over how
    MDomains are matched to VirtualHosts.
  - New directive `MDChallengeDns01Version`. Setting this to `2` will provide
    the command also with the challenge value on `teardown` invocation. In version
    1, the default, only the `setup` invocation gets this parameter.
    Refs #312. Thanks to @domrim for the idea.
  - For Managed Domain in "manual" mode, the checks if all used ServerName and
    ServerAlias are part of the MDomain now reports a warning instead of an error
    (AH10040) when not all names are present.
  - MDChallengeDns01 can now be configured for individual domains.
    Using PR from JÃ©rÃ´me Billiras (@bilhackmac) and adding test case and fixing proper working
  - Fixed a bug found by JÃ©rÃ´me Billiras (@bilhackmac) that caused the challenge
    teardown not being invoked as it should.
  * ) mod_ldap: Avoid performance overhead of APR-util rebind cache for
    OpenLDAP 2.2+.  PR 64414.  [Joe Orton]
  * ) mod_http2: new directive 'H2MaxDataFrameLen n' to limit the maximum
    amount of response body bytes put into a single HTTP/2 DATA frame.
    Setting this to 0 places no limit (but the max size allowed by the
    protocol is observed).
    The module, by default, tries to use the maximum size possible, which is
    somewhat around 16KB. This sets the maximum. When less response data is
    available, smaller frames will be sent.
  * ) mod_md: fixed passing of the server environment variables to programs
    started via MDMessageCmd and MDChallengeDns01 on *nix system.
    See &lt;https://github.com/icing/mod_md/issues/319&gt;.
    [Stefan Eissing]
  * ) mod_dav: Add DavBasePath directive to configure the repository root
    path.  PR 35077.  [Joe Orton]
  * ) mod_alias: Add AliasPreservePath directive to map the full
    path after the alias in a location. [Graham Leggett]
  * ) mod_alias: Add RedirectRelative to allow relative redirect targets to be
    issued as-is. [Eric Covener, Graham Leggett]
  * ) core: Add formats %{z} and %{strftime-format} to ErrorLogFormat, and make
    sure that if the format is configured early enough it applies to every log
    line.  PR 62161.  [Yann Ylavic]
  * ) mod_deflate: Add DeflateAlterETag to control how the ETag
    is modified. The 'NoChange' parameter mimics 2.2.x behavior.
    PR 45023, PR 39727. [Eric Covener]
  * ) core: Optimize send_brigade_nonblocking(). [Yann Ylavic, Christophe Jaillet]
  * ) mod_status: Remove duplicate keys "BusyWorkers" and "IdleWorkers".
    Resolve inconsistency between the previous two occurrences by
    counting workers in state SERVER_GRACEFUL no longer as busy,
    but instead in a new counter "GracefulWorkers" (or on HTML
    view as "workers gracefully restarting"). Also add the graceful
    counter as a new column to the existing HTML per process table
    for async MPMs. PR 63300. [Rainer Jung]</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1706529600">- use grep -E for egrep</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1708430400">- Use %autosetup macro. Allows to eliminate the usage of deprecated
  %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1712232000">- Update to 2.4.59:
  * ) mod_deflate: Fixes and better logging for handling various
    error and edge cases. [Eric Covener, Yann Ylavic, Joe Orton,
    Eric Norris &lt;enorris etsy.com&gt;]
  * ) Add CGIScriptTimeout to mod_cgi. [Eric Covener]
  * ) mod_xml2enc: Tolerate libxml2 2.12.0 and later.  PR 68610
    [ttachi &lt;tachihara AT hotmail.com&gt;]
  * ) mod_slotmem_shm: Use ap_os_is_path_absolute() to make it portable.
    [Jean-Frederic Clere]
  * ) mod_ssl: Use OpenSSL-standard functions to assemble CA
    name lists for SSLCACertificatePath/SSLCADNRequestPath.
    Names will now be consistently sorted. PR 61574.
    [Joe Orton]
  * ) mod_xml2enc: Update check to accept any text/ media type
    or any XML media type per RFC 7303, avoiding
    corruption of Microsoft OOXML formats.  PR 64339.
    [Joseph Heenan &lt;joseph.heenan fintechlabs.io&gt;, Joe Orton]
  * ) mod_http2: v2.0.26 with the following fixes:
  - Fixed `Date` header on requests upgraded from HTTP/1.1 (h2c). Fixes
    &lt;https://github.com/icing/mod_h2/issues/272&gt;.
  - Fixed small memory leak in h2 header bucket free. Thanks to
    Michael Kaufmann for finding this and providing the fix.
  * ) htcacheclean: In -a/-A mode, list all files per subdirectory
    rather than only one. PR 65091.
    [Artem Egorenkov &lt;aegorenkov.91 gmail.com&gt;]
  * ) mod_ssl: SSLProxyMachineCertificateFile/Path may reference files
    which include CA certificates; those CA certs are treated as if
    configured with SSLProxyMachineCertificateChainFile.  [Joe Orton]
  * ) htpasswd, htdbm, dbmmanage: Update help&amp;docs to refer to
    "hashing", rather than "encrypting" passwords.
    [Michele Preziuso &lt;mpreziuso kaosdynamics.com&gt;]
  * ) mod_ssl: Fix build with LibreSSL 2.0.7+. PR 64047.
    [Giovanni Bechis, Yann Ylavic]
  * ) htpasswd: Add support for passwords using SHA-2.  [Joe Orton,
    Yann Ylavic]
  * ) core: Allow mod_env to override system environment vars. [Joe Orton]
  * ) Allow mod_dav_fs to tolerate race conditions between PROPFIND and an
    operation which removes a directory/file between apr_dir_read() and
    apr_stat(). Current behaviour is to abort the connection which seems
    inferior to tolerating (and logging) the error. [Joe Orton]
  * ) mod_ldap: HTML-escape data in the ldap-status handler.
    [Eric Covener, Chamal De Silva]
  * ) mod_ssl: Disable the OpenSSL ENGINE API when OPENSSL_NO_ENGINE is set.
    Allow for "SSLCryptoDevice builtin" if the ENGINE API is not available,
    notably with OpenSSL &gt;= 3.  PR 68080.  [Yann Ylavic, Joe Orton]
  * ) mod_ssl: Improve compatibility with OpenSSL 3, fix build warnings about
    deprecated ENGINE_ API, honor OPENSSL_API_COMPAT setting while defaulting
    to compatibitily with version 1.1.1 (including ENGINEs / SSLCryptoDevice).
    [Yann Ylavic]
  * ) mod_ssl: release memory to the OS when needed. [Giovanni Bechis]
  * ) mod_proxy: Ignore (and warn about) enablereuse=on for ProxyPassMatch when
    some dollar substitution (backreference) happens in the hostname or port
    part of the URL.  [Yann Ylavic]
  * ) mod_proxy: Allow to set a TTL for how long DNS resolutions to backend
    systems are cached. [Yann Ylavic]
  * ) mod_proxy: Add optional third argument for ProxyRemote, which
    configures Basic authentication credentials to pass to the remote
    proxy.  PR 37355.  [Joe Orton]</changelog>
  <changelog author="pgajdos@suse.com" date="1718280000">- added patches [bsc#1226217]
  https://github.com/apache/httpd/pull/444/commits/c2fffd29b0f58bdc9caaaff4fec68e17a676f182
  + apache2-issue-444.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1720094400">- Update to 2.4.61
  * ) SECURITY: CVE-2024-39884: Apache HTTP Server: source code
    disclosure with handlers configured via AddType (cve.mitre.org)
    [boo#1227353]
    A regression in the core of Apache HTTP Server 2.4.60 ignores
    some use of the legacy content-type based configuration of
    handlers.   "AddType" and similar configuration, under some
    circumstances where files are requested indirectly, result in
    source code disclosure of local content. For example, PHP
    scripts may be served instead of interpreted.
    Users are recommended to upgrade to version 2.4.61, which fixes
    this issue.
- Update to 2.4.60
  * ) SECURITY: CVE-2024-39573: Apache HTTP Server: mod_rewrite proxy
    handler substitution (cve.mitre.org) [boo#1227271]
    Potential SSRF in mod_rewrite in Apache HTTP Server 2.4.59 and
    earlier allows an attacker to cause unsafe RewriteRules to
    unexpectedly setup URL's to be handled by mod_proxy.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38477: Apache HTTP Server: Crash resulting in
    Denial of Service in mod_proxy via a malicious request
    (cve.mitre.org) [boo#1227270]
    null pointer dereference in mod_proxy in Apache HTTP Server
    2.4.59 and earlier allows an attacker to crash the server via a
    malicious request.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38476: Apache HTTP Server may use
    exploitable/malicious backend application output to run local
    handlers via internal redirect (cve.mitre.org) [boo#1227269]
    Vulnerability in core of Apache HTTP Server 2.4.59 and earlier
    are vulnerably to information disclosure, SSRF or local script
    execution via backend applications whose response headers are
    malicious or exploitable.
    Note: Some legacy uses of the 'AddType' directive to connect a
    request to a handler must be ported to 'AddHandler' after this fix.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38475: Apache HTTP Server weakness in
    mod_rewrite when first segment of substitution matches
    filesystem path. (cve.mitre.org) [boo#1227268]
    Improper escaping of output in mod_rewrite in Apache HTTP Server
    2.4.59 and earlier allows an attacker to map URLs to filesystem
    locations that are permitted to be served by the server but are
    not intentionally/directly reachable by any URL, resulting in
    code execution or source code disclosure.
    Substitutions in server context that use a backreferences or
    variables as the first segment of the substitution are affected.
    Some unsafe RewiteRules will be broken by this change and the
    rewrite flag "UnsafePrefixStat" can be used to opt back in once
    ensuring the substitution is appropriately constrained.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38474: Apache HTTP Server weakness with
    encoded question marks in backreferences (cve.mitre.org)
    [boo#1227278]
    Substitution encoding issue in mod_rewrite in Apache HTTP Server
    2.4.59 and earlier allows attacker to execute scripts in
    directories permitted by the configuration but not directly
    reachable by any URL or source disclosure of scripts meant to
    only to be executed as CGI.
    Note: Some RewriteRules that capture and substitute unsafely will now
    fail unless rewrite flag "UnsafeAllow3F" is specified.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38473: Apache HTTP Server proxy encoding
    problem (cve.mitre.org) [boo#1227276]
    Encoding problem in mod_proxy in Apache HTTP Server 2.4.59 and
    earlier allows request URLs with incorrect encoding to be sent
    to backend services, potentially bypassing authentication via
    crafted requests.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38472: Apache HTTP Server on WIndows UNC SSRF
    (cve.mitre.org) [boo#1227267]
    SSRF in Apache HTTP Server on Windows allows to potentially leak
    NTML hashes to a malicious server via SSRF and malicious
    requests or content
    Note: Existing configurations that access UNC paths
    will have to configure new directive "UNCList" to allow access
    during request processing.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-36387: Apache HTTP Server: DoS by Null
    pointer in websocket over HTTP/2 (cve.mitre.org) [boo#1227272]
    Serving WebSocket protocol upgrades over a HTTP/2 connection
    could result in a Null Pointer dereference, leading to a crash
    of the server process, degrading performance.
    Credits: Marc Stern (&lt;marc.stern AT approach-cyber.com&gt;)
  * ) mod_proxy: Fix DNS requests and connections closed before the
    configured addressTTL.  BZ 69126.  [Yann Ylavic]
  * ) core: On Linux, log the real thread ID in error logs.  [Joe Orton]
  * ) core: Support zone/scope in IPv6 link-local addresses in Listen and
    VirtualHost directives (requires APR 1.7.x or later).  PR 59396
    [Joe Orton]
  * ) mod_ssl: Reject client-initiated renegotiation with a TLS alert
    (rather than connection closure).  [Joe Orton, Yann Ylavic]
  * ) Updated mime.types.  [Mohamed Akram &lt;mohd.akram outlook.com&gt;,
    Adam Silverstein &lt;adamsilverstein earthboundhosting.com&gt;]
  * ) mod_ssl: Fix a regression that causes the default DH parameters for a key
    no longer set and thus effectively disabling DH ciphers when no explicit
    DH parameters are set. PR 68863 [Ruediger Pluem]
  * ) mod_cgid: Optional support for file descriptor passing, fixing
    error log handling (configure --enable-cgid-fdpassing) on Unix
    platforms. PR 54221.  [Joe Orton]
  * ) mod_cgid/mod_cgi: Distinguish script stderr output clearly in
    error logs.  PR 61980.  [Hank Ibell &lt;hwibell gmail.com&gt;]
  * ) mod_tls: update version of rustls-ffi to v0.13.0.
    [Daniel McCarney (@cpu}]
  * ) mod_md:
  - Using OCSP stapling information to trigger certificate renewals. Proposed
    by @frasertweedale.
  - Added directive `MDCheckInterval` to control how often the server checks
    for detected revocations. Added proposals for configurations in the
    README.md chapter "Revocations".
  - OCSP stapling: accept OCSP responses without a `nextUpdate` entry which is
    allowed in RFC 6960. Treat those as having an update interval of 12 hours.
    Added by @frasertweedale.
  - Adapt OpenSSL usage to changes in their API. By Yann Ylavic.
- removed patches (upstreamed)
  - apache2-issue-444.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- Update to 2.4.62
  * ) SECURITY: CVE-2024-40898: Apache HTTP Server: SSRF with
    mod_rewrite in server/vhost context on Windows (cve.mitre.org)
    [boo#1228098]
    SSRF in Apache HTTP Server on Windows with mod_rewrite in
    server/vhost context, allows to potentially leak NTML hashes to
    a malicious server via SSRF and malicious requests.
    Users are recommended to upgrade to version 2.4.62 which fixes
    this issue.
    Credits: Smi1e (DBAPPSecurity Ltd.)
  * ) SECURITY: CVE-2024-40725: Apache HTTP Server: source code
    disclosure with handlers configured via AddType (cve.mitre.org)
    [boo#1228097]
    A partial fix for  CVE-2024-39884 in the core of Apache HTTP
    Server 2.4.61 ignores some use of the legacy content-type based
    configuration of handlers. "AddType" and similar configuration,
    under some circumstances where files are requested indirectly,
    result in source code disclosure of local content. For example,
    PHP scripts may be served instead of interpreted.
    Users are recommended to upgrade to version 2.4.62, which fixes
    this issue.
  * ) mod_proxy: Fix canonicalisation and FCGI env (PATH_INFO, SCRIPT_NAME) for
    "balancer:" URLs set via SetHandler, also allowing for "unix:" sockets
    with BalancerMember(s).  PR 69168.  [Yann Ylavic]
  * ) mod_proxy: Avoid AH01059 parsing error for SetHandler "unix:" URLs.
    PR 69160 [Yann Ylavic]
  * ) mod_ssl: Fix crashes in PKCS#11 ENGINE support with OpenSSL 3.2.
    [Joe Orton]
  * ) mod_ssl: Add support for loading certs/keys from pkcs11: URIs
    via OpenSSL 3.x providers.  [Ingo Franzki &lt;ifranzki linux.ibm.com&gt;]
  * ) mod_ssl: Restore SSL dumping on trace7 loglevel with OpenSSL &gt;= 3.0.
    [Ruediger Pluem, Yann Ylavic]
  * ) mpm_worker: Fix possible warning (AH00045) about children processes not
    terminating timely.  [Yann Ylavic]</changelog>
  <changelog author="Thorsten Kukuk &lt;kukuk@suse.com&gt;" date="1727697600">- Add /srv/www directories to filelist [bsc#1231027]
  (apache2 will not start since default config uses this directory)</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1730721600">- Explicitly mark start_apache2 as bash-dependent.</changelog>
  <changelog author="Martin Schreiner &lt;martin.schreiner@suse.com&gt;" date="1730808000">- Update httpd-framework to svn1921782.
- Fixes Apache's impact on bsc#1218342.</changelog>
</package>
<package pkgid="fad3b4f15d7b538e1646694cfa7bce8388b102819992371d89c52d52f1bdd8a4337f3361a3a457fb8f1cb119d41261786aa9dc8a6bf3899541b3b963943a5c38" name="apache2-prefork-debugsource" arch="x86_64">
  <version epoch="0" ver="2.4.62" rel="3.1"/>
  <changelog author="pgajdos@suse.com" date="1654689600">- update httpd-framework to svn revision 1898917</changelog>
  <changelog author="Stefan Schubert &lt;schubi@intern&gt;" date="1656417600">- Moved logrotate files from user specific directory /etc/logrotate.d
  to vendor specific directory /usr/etc/logrotate.d.</changelog>
  <changelog author="Stefan Schubert &lt;schubi@suse.com&gt;" date="1662033600">- Migration to /usr/etc: Saving user changed configuration files
  in /etc and restoring them while an RPM update.</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1663675200">- Remove references to README.QUICKSTART and point them to
  https://en.opensuse.org/SDB:Apache_installation (bsc#1203573)</changelog>
  <changelog author="Stephan Kulow &lt;coolo@suse.com&gt;" date="1663934400">- The 2.4.54 release brought support for PCRE2, but for that we also
  need to change buildrequires to pcre2-devel</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1670846400">- switch to pkgconfig(zlib) so that alternative providers can be
  used</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1674043200">- This update fixes the following security issues:
  * CVE-2022-37436 [bsc#1207251], mod_proxy backend HTTP response splitting
  * CVE-2022-36760 [bsc#1207250], mod_proxy_ajp Possible request smuggling
  * CVE-2006-20001 [bsc#1207247], mod_dav out of bounds read, or write of zero byte
- Update to 2.4.55:
  * ) SECURITY: CVE-2022-37436: Apache HTTP Server: mod_proxy prior to
    2.4.55 allows a backend to trigger HTTP response splitting
    (cve.mitre.org)
    Prior to Apache HTTP Server 2.4.55, a malicious backend can
    cause the response headers to be truncated early, resulting in
    some headers being incorporated into the response body. If the
    later headers have any security purpose, they will not be
    interpreted by the client.
    Credits: Dimas Fariski Setyawan Putra (@nyxsorcerer)
  * ) SECURITY: CVE-2022-36760: Apache HTTP Server: mod_proxy_ajp
    Possible request smuggling (cve.mitre.org)
    Inconsistent Interpretation of HTTP Requests ('HTTP Request
    Smuggling') vulnerability in mod_proxy_ajp of Apache HTTP Server
    allows an attacker to smuggle requests to the AJP server it
    forwards requests to.  This issue affects Apache HTTP Server
    Apache HTTP Server 2.4 version 2.4.54 and prior versions.
    Credits: ZeddYu_Lu from Qi'anxin Research Institute of Legendsec
    at Qi'anxin Group
  * ) SECURITY: CVE-2006-20001: mod_dav out of  bounds read, or write
    of zero byte (cve.mitre.org)
    A carefully crafted If: request header can cause a memory read,
    or write of a single zero byte, in a pool (heap) memory location
    beyond the header value sent. This could cause the process to
    crash.
    This issue affects Apache HTTP Server 2.4.54 and earlier.
  * ) mod_dav: Open the lock database read-only when possible.
    PR 36636 [Wilson Felipe &lt;wfelipe gmail.com&gt;, manu]
  * ) mod_proxy_http2: apply the standard httpd content type handling
    to responses from the backend, as other proxy modules do. Fixes PR 66391.
    Thanks to Jérôme Billiras for providing the patch.
    [Stefan Eissing]
  * ) mod_dav: mod_dav overrides dav_fs response on PUT failure. PR 35981
    [Basant Kumar Kukreja &lt;basant.kukreja sun.com&gt;, Alejandro Alvarez
    &lt;alejandro.alvarez.ayllon cern.ch&gt;]
  * ) mod_proxy_hcheck: Honor worker timeout settings.  [Yann Ylavic]
  * ) mod_http2: version 2.0.10 of the module, synchronizing changes
    with the gitgub version. This is a partial rewrite of how connections
    and streams are handled.
  - an APR pollset and pipes (where supported) are used to monitor
    the main connection and react to IO for request/response handling.
    This replaces the stuttered timed waits of earlier versions.
  - H2SerializeHeaders directive still exists, but has no longer an effect.
  - Clients that seemingly misbehave still get less resources allocated,
    but ongoing requests are no longer disrupted.
  - Fixed an issue since 1.15.24 that "Server" headers in proxied requests
    were overwritten instead of preserved. [PR by @daum3ns]
  - A regression in v1.15.24 was fixed that could lead to httpd child
    processes not being terminated on a graceful reload or when reaching
    MaxConnectionsPerChild. When unprocessed h2 requests were queued at
    the time, these could stall. See #212.
  - Improved information displayed in 'server-status' for H2 connections when
    Extended Status is enabled. Now one can see the last request that IO
    operations happened on and transferred IO stats are updated as well.
  - When reaching server limits, such as MaxRequestsPerChild, the HTTP/2 connection
    send a GOAWAY frame much too early on new connections, leading to invalid
    protocol state and a client failing the request. See PR65731 at
    &lt;https://bz.apache.org/bugzilla/show_bug.cgi?id=65731&gt;.
    The module now initializes the HTTP/2 protocol correctly and allows the
    client to submit one request before the shutdown via a GOAWAY frame
    is being announced.
  - :scheme pseudo-header values, not matching the
    connection scheme, are forwarded via absolute uris to the
    http protocol processing to preserve semantics of the request.
    Checks on combinations of pseudo-headers values/absence
    have been added as described in RFC 7540. Fixes #230.
  - A bug that prevented trailers (e.g. HEADER frame at the end) to be
    generated in certain cases was fixed. See #233 where it prevented
    gRPC responses to be properly generated.
  - Request and response header values are automatically stripped of leading
    and trialing space/tab characters. This is equivalent behaviour to what
    Apache httpd's http/1.1 parser does.
    The checks for this in nghttp2 v1.50.0+ are disabled.
  - Extensive testing in production done by Alessandro Bianchi (@alexskynet)
    on the v2.0.x versions for stability. Many thanks!
  * ) mod_proxy_http2: fixed #235 by no longer forwarding 'Host:' header when
    request ':authority' is known. Improved test case that did not catch that
    the previous 'fix' was incorrect.
  * ) mod_proxy_hcheck: hcmethod now allows for HTTP/1.1 requests
    using GET11, HEAD11 and/or OPTIONS11. [Jim Jagielski]
  * ) mod_proxy: The AH03408 warning for a forcibly closed backend
    connection is now logged at INFO level.  [Yann Ylavic]
  * ) mod_ssl: When dumping the configuration, the existence of
    certificate/key files is no longer tested.  [Joe Orton]
  * ) mod_authn_core: Add expression support to AuthName and AuthType.
    [Graham Leggett]
  * ) mod_ssl: when a proxy connection had handled a request using SSL, an
    error was logged when "SSLProxyEngine" was only configured in the
    location/proxy section and not the overall server. The connection
    continued to work, the error log was in error. Fixed PR66190.
    [Stefan Eissing]
  * ) mod_proxy_hcheck: Re-enable workers in standard ERROR state. PR 66302.
    [Alessandro Cavaliere &lt;alessandro.cavalier7 unibo.it&gt;]
  * ) mod_proxy_hcheck: Detect AJP/CPING support correctly. PR 66300.
    [Alessandro Cavaliere &lt;alessandro.cavalier7 unibo.it&gt;]
  * ) mod_http2: Export mod_http2.h as public header. [Stefan Eissing]
  * ) mod_md: a new directive `MDStoreLocks` can be used on cluster
    setups with a shared file system for `MDStoreDir` to order
    activation of renewed certificates when several cluster nodes are
    restarted at the same time. Store locks are not enabled by default.
    Restored curl_easy cleanup behaviour from v2.4.14 and refactored
    the use of curl_multi for OCSP requests to work with that.
    Fixes &lt;https://github.com/icing/mod_md/issues/293&gt;.
  * ) core: Avoid an overflow on large inputs in ap_is_matchexp.  PR 66033
    [Ruediger Pluem]
  * ) mod_heartmonitor: Allow "HeartbeatMaxServers 0" to use file based
    storage instead of slotmem. Needed after setting
    HeartbeatMaxServers default to the documented value 10 in 2.4.54.
    PR 66131.  [Jérôme Billiras]
  * ) mod_dav: DAVlockDiscovery option to disable WebDAV lock discovery
    This is a game changer for performances if client use PROPFIND a lot,
    PR 66313. [Emmanuel Dreyfus]</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1678276800">- This update fixes the following security issues:
  * CVE-2023-27522 [bsc#1209049]: mod_proxy_uwsgi HTTP response splitting
  * CVE-2023-25690 [bsc#1209047]: HTTP request splitting with mod_rewrite and mod_proxy
- Update to 2.4.56:
  * ) rotatelogs: Add -T flag to allow subsequent rotated logfiles to be
    truncated without the initial logfile being truncated.  [Eric Covener]
  * ) mod_ldap: LDAPConnectionPoolTTL should accept negative values in order to
    allow connections of any age to be reused. Up to now, a negative value
    was handled as an error when parsing the configuration file.  PR 66421.
    [nailyk &lt;bzapache nailyk.fr&gt;, Christophe Jaillet]
  * ) mod_proxy_ajp: Report an error if the AJP backend sends an invalid number
    of headers. [Ruediger Pluem]
  * ) mod_md:
  - Enabling ED25519 support and certificate transparency information when
    building with libressl v3.5.0 and newer. Thanks to Giovanni Bechis.
  - MDChallengeDns01 can now be configured for individual domains.
    Thanks to Jérôme Billiras (@bilhackmac) for the initial PR.
  - Fixed a bug found by Jérôme Billiras (@bilhackmac) that caused the challenge
    teardown not being invoked as it should.
    [Stefan Eissing]
  * ) mod_http2: client resets of HTTP/2 streams led to unwanted 500 errors
    reported in access logs and error documents. The processing of the
    reset was correct, only unneccesary reporting was caused.
    [Stefan Eissing]
  * ) mod_proxy_uwsgi: Stricter backend HTTP response parsing/validation.
    [Yann Ylavic]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1680868800">- Update to 2.4.57:
  * ) mod_proxy: Check before forwarding that a nocanon path has not been
    rewritten with spaces during processing.  [Yann Ylavic]
  * ) mod_proxy: In case that AllowEncodedSlashes is set to NoDecode do not
    double encode encoded slashes in the URL sent by the reverse proxy to the
    backend. [Ruediger Pluem]
  * ) mod_http2: fixed a crash during connection termination. See PR 66539.
    [Stefan Eissing]
  * ) mod_rewrite: Fix a 2.4.56 regression for substitutions ending
    in a question mark. PR66547. [Eric Covener]
  * ) mod_rewrite: Add "BCTLS" and "BNE" RewriteRule flags. Re-allow encoded
    characters on redirections without the "NE" flag.
    [Yann Ylavic, Eric Covener]
  * ) mod_proxy: Fix double encoding of the uri-path of the request forwarded
    to the origin server, when using mapping=encoded|servlet.  [Yann Ylavic]
  * ) mod_mime: Do not match the extention against possible query string
    parameters in case ProxyPass was used with the nocanon option.
    [Ruediger Pluem]</changelog>
  <changelog author="Dirk Stoecker &lt;opensuse@dstoecker.de&gt;" date="1691236800">- Enable building of mod_md</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1697716800">- Update to 2.4.58:
  * ) SECURITY: CVE-2023-45802: Apache HTTP Server: HTTP/2 stream
    memory not reclaimed right away on RST (cve.mitre.org)
    When a HTTP/2 stream was reset (RST frame) by a client, there
    was a time window were the request's memory resources were not
    reclaimed immediately. Instead, de-allocation was deferred to
    connection close. A client could send new requests and resets,
    keeping the connection busy and open and causing the memory
    footprint to keep on growing. On connection close, all resources
    were reclaimed, but the process might run out of memory before
    that.
    This was found by the reporter during testing of CVE-2023-44487
    (HTTP/2 Rapid Reset Exploit) with their own test client. During
    "normal" HTTP/2 use, the probability to hit this bug is very
    low. The kept memory would not become noticeable before the
    connection closes or times out.
    Users are recommended to upgrade to version 2.4.58, which fixes
    the issue.
    Credits: Will Dormann of Vul Labs
  * ) SECURITY: CVE-2023-43622: Apache HTTP Server: DoS in HTTP/2 with
    initial windows size 0 (cve.mitre.org)
    An attacker, opening a HTTP/2 connection with an initial window
    size of 0, was able to block handling of that connection
    indefinitely in Apache HTTP Server. This could be used to
    exhaust worker resources in the server, similar to the well
    known "slow loris" attack pattern.
    This has been fixed in version 2.4.58, so that such connection
    are terminated properly after the configured connection timeout.
    This issue affects Apache HTTP Server: from 2.4.55 through
    2.4.57.
    Users are recommended to upgrade to version 2.4.58, which fixes
    the issue.
    Credits: Prof. Sven Dietrich (City University of New York)
  * ) SECURITY: CVE-2023-31122: mod_macro buffer over-read
    (cve.mitre.org)
    Out-of-bounds Read vulnerability in mod_macro of Apache HTTP
    Server.This issue affects Apache HTTP Server: through 2.4.57.
    Credits: David Shoon (github/davidshoon)
  * ) mod_ssl: Silence info log message "SSL Library Error: error:0A000126:
    SSL routines::unexpected eof while reading" when using
    OpenSSL 3 by setting SSL_OP_IGNORE_UNEXPECTED_EOF if
    available. [Rainer Jung]
  * ) mod_http2: improved early cleanup of streams.
    [Stefan Eissing]
  * ) mod_proxy_http2: improved error handling on connection errors while
    response is already underway.
    [Stefan Eissing]
  * ) mod_http2: fixed a bug that could lead to a crash in main connection
    output handling. This occured only when the last request on a HTTP/2
    connection had been processed and the session decided to shut down.
    This could lead to an attempt to send a final GOAWAY while the previous
    write was still in progress. See PR 66646.
    [Stefan Eissing]
  * ) mod_proxy_http2: fix `X-Forward-Host` header to carry the correct value.
    Fixes PR66752.
    [Stefan Eissing]
  * ) mod_http2: added support for bootstrapping WebSockets via HTTP/2, as
    described in RFC 8441. A new directive 'H2WebSockets on|off' has been
    added. The feature is by default not enabled.
    As also discussed in the manual, this feature should work for setups
    using "ProxyPass backend-url upgrade=websocket" without further changes.
    Special server modules for WebSockets will have to be adapted,
    most likely, as the handling if IO events is different with HTTP/2.
    HTTP/2 WebSockets are supported on platforms with native pipes. This
    excludes Windows.
    [Stefan Eissing]
  * ) mod_rewrite: Fix a regression with both a trailing ? and [QSA].
    in OCSP stapling. PR 66672. [Frank Meier &lt;frank.meier ergon.ch&gt;, covener]
  * ) mod_http2: fixed a bug in flushing pending data on an already closed
    connection that could lead to a busy loop, preventing the HTTP/2 session
    to close down successfully. Fixed PR 66624.
    [Stefan Eissing]
  * ) mod_http2: v2.0.15 with the following fixes and improvements
  - New directive 'H2EarlyHint name value' to add headers to a response,
    picked up already when a "103 Early Hints" response is sent. 'name' and
    'value' must comply to the HTTP field restrictions.
    This directive can be repeated several times and header fields of the
    same names add. Sending a 'Link' header with 'preload' relation will
    also cause a HTTP/2 PUSH if enabled and supported by the client.
  - Fixed an issue where requests were not logged and accounted in a timely
    fashion when the connection returns to "keepalive" handling, e.g. when
    the request served was the last outstanding one.
    This led to late appearance in access logs with wrong duration times
    reported.
  - Accurately report the bytes sent for a request in the '%O' Log format.
    This addresses #203, a long outstanding issue where mod_h2 has reported
    numbers over-eagerly from internal buffering and not what has actually
    been placed on the connection.
    The numbers are now the same with and without H2CopyFiles enabled.
    [Stefan Eissing]
  * ) mod_proxy_http2: fix retry handling to not leak temporary errors.
    On detecting that that an existing connection was shutdown by the other
    side, a 503 response leaked even though the request was retried on a
    fresh connection.
    [Stefan Eissing]
  * ) mod_rewrite: Add server directory to include path as mod_rewrite requires
    test_char.h. PR 66571 [Valeria Petrov &lt;valeria.petrov@spinetix.com&gt;]
  * ) mod_http2: new directive `H2ProxyRequests on|off` to enable handling
    of HTTP/2 requests in a forward proxy configuration.
    General forward proxying is enabled via `ProxyRequests`. If the
    HTTP/2 protocol is also enabled for such a server/host, this new
    directive is needed in addition.
    [Stefan Eissing]
  * ) core: Updated conf/mime.types:
  - .js moved from 'application/javascript' to 'text/javascript'
  - .mjs was added as 'text/javascript'
  - add .opus ('audio/ogg')
  - add 'application/vnd.geogebra.slides'
  - add WebAssembly MIME types and extension
    [Mathias Bynens &lt;@mathiasbynens&gt; via PR 318,
    Richard de Boer &lt;richard tubul.net&gt;, Dave Hodder &lt;dmh dmh.org.uk&gt;,
    Zbynek Konecny &lt;zbynek1729 gmail.com&gt;]
  * ) mod_proxy_http2: fixed using the wrong "bucket_alloc" from the backend
    connection when sending data on the frontend one. This caused crashes
    or infinite loops in rare situations.
  * ) mod_proxy_http2: fixed a bug in retry/response handling that could lead
    to wrong status codes or HTTP messages send at the end of response bodies
    exceeding the announced content-length.
  * ) mod_proxy_http2: fix retry handling to not leak temporary errors.
    On detecting that that an existing connection was shutdown by the other
    side, a 503 response leaked even though the request was retried on a
    fresh connection.
  * ) mod_http2: fixed a bug that did cleanup of consumed and pending buckets in
    the wrong order when a bucket_beam was destroyed.
    [Stefan Eissing]
  * ) mod_http2: avoid double chunked-encoding on internal redirects.
    PR 66597 [Yann Ylavic, Stefan Eissing]
  * ) mod_http2: Fix reporting of `Total Accesses` in server-status to not count
    HTTP/2 requests twice. Fixes PR 66801.
    [Stefan Eissing]
  * ) mod_ssl: Fix handling of Certificate Revoked messages
    in OCSP stapling. PR 66626. [&lt;gmoniker gmail.com&gt;]
  * ) mod_http2: fixed a bug in handling of stream timeouts.
    [Stefan Eissing]
  * ) mod_tls: updating to rustls-ffi version 0.9.2 or higher.
    Checking in configure for proper version installed. Code
    fixes for changed clienthello member name.
    [Stefan Eissing]
  * ) mod_md:
  - New directive `MDMatchNames all|servernames` to allow more control over how
    MDomains are matched to VirtualHosts.
  - New directive `MDChallengeDns01Version`. Setting this to `2` will provide
    the command also with the challenge value on `teardown` invocation. In version
    1, the default, only the `setup` invocation gets this parameter.
    Refs #312. Thanks to @domrim for the idea.
  - For Managed Domain in "manual" mode, the checks if all used ServerName and
    ServerAlias are part of the MDomain now reports a warning instead of an error
    (AH10040) when not all names are present.
  - MDChallengeDns01 can now be configured for individual domains.
    Using PR from JÃ©rÃ´me Billiras (@bilhackmac) and adding test case and fixing proper working
  - Fixed a bug found by JÃ©rÃ´me Billiras (@bilhackmac) that caused the challenge
    teardown not being invoked as it should.
  * ) mod_ldap: Avoid performance overhead of APR-util rebind cache for
    OpenLDAP 2.2+.  PR 64414.  [Joe Orton]
  * ) mod_http2: new directive 'H2MaxDataFrameLen n' to limit the maximum
    amount of response body bytes put into a single HTTP/2 DATA frame.
    Setting this to 0 places no limit (but the max size allowed by the
    protocol is observed).
    The module, by default, tries to use the maximum size possible, which is
    somewhat around 16KB. This sets the maximum. When less response data is
    available, smaller frames will be sent.
  * ) mod_md: fixed passing of the server environment variables to programs
    started via MDMessageCmd and MDChallengeDns01 on *nix system.
    See &lt;https://github.com/icing/mod_md/issues/319&gt;.
    [Stefan Eissing]
  * ) mod_dav: Add DavBasePath directive to configure the repository root
    path.  PR 35077.  [Joe Orton]
  * ) mod_alias: Add AliasPreservePath directive to map the full
    path after the alias in a location. [Graham Leggett]
  * ) mod_alias: Add RedirectRelative to allow relative redirect targets to be
    issued as-is. [Eric Covener, Graham Leggett]
  * ) core: Add formats %{z} and %{strftime-format} to ErrorLogFormat, and make
    sure that if the format is configured early enough it applies to every log
    line.  PR 62161.  [Yann Ylavic]
  * ) mod_deflate: Add DeflateAlterETag to control how the ETag
    is modified. The 'NoChange' parameter mimics 2.2.x behavior.
    PR 45023, PR 39727. [Eric Covener]
  * ) core: Optimize send_brigade_nonblocking(). [Yann Ylavic, Christophe Jaillet]
  * ) mod_status: Remove duplicate keys "BusyWorkers" and "IdleWorkers".
    Resolve inconsistency between the previous two occurrences by
    counting workers in state SERVER_GRACEFUL no longer as busy,
    but instead in a new counter "GracefulWorkers" (or on HTML
    view as "workers gracefully restarting"). Also add the graceful
    counter as a new column to the existing HTML per process table
    for async MPMs. PR 63300. [Rainer Jung]</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1706529600">- use grep -E for egrep</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1708430400">- Use %autosetup macro. Allows to eliminate the usage of deprecated
  %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1712232000">- Update to 2.4.59:
  * ) mod_deflate: Fixes and better logging for handling various
    error and edge cases. [Eric Covener, Yann Ylavic, Joe Orton,
    Eric Norris &lt;enorris etsy.com&gt;]
  * ) Add CGIScriptTimeout to mod_cgi. [Eric Covener]
  * ) mod_xml2enc: Tolerate libxml2 2.12.0 and later.  PR 68610
    [ttachi &lt;tachihara AT hotmail.com&gt;]
  * ) mod_slotmem_shm: Use ap_os_is_path_absolute() to make it portable.
    [Jean-Frederic Clere]
  * ) mod_ssl: Use OpenSSL-standard functions to assemble CA
    name lists for SSLCACertificatePath/SSLCADNRequestPath.
    Names will now be consistently sorted. PR 61574.
    [Joe Orton]
  * ) mod_xml2enc: Update check to accept any text/ media type
    or any XML media type per RFC 7303, avoiding
    corruption of Microsoft OOXML formats.  PR 64339.
    [Joseph Heenan &lt;joseph.heenan fintechlabs.io&gt;, Joe Orton]
  * ) mod_http2: v2.0.26 with the following fixes:
  - Fixed `Date` header on requests upgraded from HTTP/1.1 (h2c). Fixes
    &lt;https://github.com/icing/mod_h2/issues/272&gt;.
  - Fixed small memory leak in h2 header bucket free. Thanks to
    Michael Kaufmann for finding this and providing the fix.
  * ) htcacheclean: In -a/-A mode, list all files per subdirectory
    rather than only one. PR 65091.
    [Artem Egorenkov &lt;aegorenkov.91 gmail.com&gt;]
  * ) mod_ssl: SSLProxyMachineCertificateFile/Path may reference files
    which include CA certificates; those CA certs are treated as if
    configured with SSLProxyMachineCertificateChainFile.  [Joe Orton]
  * ) htpasswd, htdbm, dbmmanage: Update help&amp;docs to refer to
    "hashing", rather than "encrypting" passwords.
    [Michele Preziuso &lt;mpreziuso kaosdynamics.com&gt;]
  * ) mod_ssl: Fix build with LibreSSL 2.0.7+. PR 64047.
    [Giovanni Bechis, Yann Ylavic]
  * ) htpasswd: Add support for passwords using SHA-2.  [Joe Orton,
    Yann Ylavic]
  * ) core: Allow mod_env to override system environment vars. [Joe Orton]
  * ) Allow mod_dav_fs to tolerate race conditions between PROPFIND and an
    operation which removes a directory/file between apr_dir_read() and
    apr_stat(). Current behaviour is to abort the connection which seems
    inferior to tolerating (and logging) the error. [Joe Orton]
  * ) mod_ldap: HTML-escape data in the ldap-status handler.
    [Eric Covener, Chamal De Silva]
  * ) mod_ssl: Disable the OpenSSL ENGINE API when OPENSSL_NO_ENGINE is set.
    Allow for "SSLCryptoDevice builtin" if the ENGINE API is not available,
    notably with OpenSSL &gt;= 3.  PR 68080.  [Yann Ylavic, Joe Orton]
  * ) mod_ssl: Improve compatibility with OpenSSL 3, fix build warnings about
    deprecated ENGINE_ API, honor OPENSSL_API_COMPAT setting while defaulting
    to compatibitily with version 1.1.1 (including ENGINEs / SSLCryptoDevice).
    [Yann Ylavic]
  * ) mod_ssl: release memory to the OS when needed. [Giovanni Bechis]
  * ) mod_proxy: Ignore (and warn about) enablereuse=on for ProxyPassMatch when
    some dollar substitution (backreference) happens in the hostname or port
    part of the URL.  [Yann Ylavic]
  * ) mod_proxy: Allow to set a TTL for how long DNS resolutions to backend
    systems are cached. [Yann Ylavic]
  * ) mod_proxy: Add optional third argument for ProxyRemote, which
    configures Basic authentication credentials to pass to the remote
    proxy.  PR 37355.  [Joe Orton]</changelog>
  <changelog author="pgajdos@suse.com" date="1718280000">- added patches [bsc#1226217]
  https://github.com/apache/httpd/pull/444/commits/c2fffd29b0f58bdc9caaaff4fec68e17a676f182
  + apache2-issue-444.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1720094400">- Update to 2.4.61
  * ) SECURITY: CVE-2024-39884: Apache HTTP Server: source code
    disclosure with handlers configured via AddType (cve.mitre.org)
    [boo#1227353]
    A regression in the core of Apache HTTP Server 2.4.60 ignores
    some use of the legacy content-type based configuration of
    handlers.   "AddType" and similar configuration, under some
    circumstances where files are requested indirectly, result in
    source code disclosure of local content. For example, PHP
    scripts may be served instead of interpreted.
    Users are recommended to upgrade to version 2.4.61, which fixes
    this issue.
- Update to 2.4.60
  * ) SECURITY: CVE-2024-39573: Apache HTTP Server: mod_rewrite proxy
    handler substitution (cve.mitre.org) [boo#1227271]
    Potential SSRF in mod_rewrite in Apache HTTP Server 2.4.59 and
    earlier allows an attacker to cause unsafe RewriteRules to
    unexpectedly setup URL's to be handled by mod_proxy.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38477: Apache HTTP Server: Crash resulting in
    Denial of Service in mod_proxy via a malicious request
    (cve.mitre.org) [boo#1227270]
    null pointer dereference in mod_proxy in Apache HTTP Server
    2.4.59 and earlier allows an attacker to crash the server via a
    malicious request.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38476: Apache HTTP Server may use
    exploitable/malicious backend application output to run local
    handlers via internal redirect (cve.mitre.org) [boo#1227269]
    Vulnerability in core of Apache HTTP Server 2.4.59 and earlier
    are vulnerably to information disclosure, SSRF or local script
    execution via backend applications whose response headers are
    malicious or exploitable.
    Note: Some legacy uses of the 'AddType' directive to connect a
    request to a handler must be ported to 'AddHandler' after this fix.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38475: Apache HTTP Server weakness in
    mod_rewrite when first segment of substitution matches
    filesystem path. (cve.mitre.org) [boo#1227268]
    Improper escaping of output in mod_rewrite in Apache HTTP Server
    2.4.59 and earlier allows an attacker to map URLs to filesystem
    locations that are permitted to be served by the server but are
    not intentionally/directly reachable by any URL, resulting in
    code execution or source code disclosure.
    Substitutions in server context that use a backreferences or
    variables as the first segment of the substitution are affected.
    Some unsafe RewiteRules will be broken by this change and the
    rewrite flag "UnsafePrefixStat" can be used to opt back in once
    ensuring the substitution is appropriately constrained.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38474: Apache HTTP Server weakness with
    encoded question marks in backreferences (cve.mitre.org)
    [boo#1227278]
    Substitution encoding issue in mod_rewrite in Apache HTTP Server
    2.4.59 and earlier allows attacker to execute scripts in
    directories permitted by the configuration but not directly
    reachable by any URL or source disclosure of scripts meant to
    only to be executed as CGI.
    Note: Some RewriteRules that capture and substitute unsafely will now
    fail unless rewrite flag "UnsafeAllow3F" is specified.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38473: Apache HTTP Server proxy encoding
    problem (cve.mitre.org) [boo#1227276]
    Encoding problem in mod_proxy in Apache HTTP Server 2.4.59 and
    earlier allows request URLs with incorrect encoding to be sent
    to backend services, potentially bypassing authentication via
    crafted requests.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38472: Apache HTTP Server on WIndows UNC SSRF
    (cve.mitre.org) [boo#1227267]
    SSRF in Apache HTTP Server on Windows allows to potentially leak
    NTML hashes to a malicious server via SSRF and malicious
    requests or content
    Note: Existing configurations that access UNC paths
    will have to configure new directive "UNCList" to allow access
    during request processing.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-36387: Apache HTTP Server: DoS by Null
    pointer in websocket over HTTP/2 (cve.mitre.org) [boo#1227272]
    Serving WebSocket protocol upgrades over a HTTP/2 connection
    could result in a Null Pointer dereference, leading to a crash
    of the server process, degrading performance.
    Credits: Marc Stern (&lt;marc.stern AT approach-cyber.com&gt;)
  * ) mod_proxy: Fix DNS requests and connections closed before the
    configured addressTTL.  BZ 69126.  [Yann Ylavic]
  * ) core: On Linux, log the real thread ID in error logs.  [Joe Orton]
  * ) core: Support zone/scope in IPv6 link-local addresses in Listen and
    VirtualHost directives (requires APR 1.7.x or later).  PR 59396
    [Joe Orton]
  * ) mod_ssl: Reject client-initiated renegotiation with a TLS alert
    (rather than connection closure).  [Joe Orton, Yann Ylavic]
  * ) Updated mime.types.  [Mohamed Akram &lt;mohd.akram outlook.com&gt;,
    Adam Silverstein &lt;adamsilverstein earthboundhosting.com&gt;]
  * ) mod_ssl: Fix a regression that causes the default DH parameters for a key
    no longer set and thus effectively disabling DH ciphers when no explicit
    DH parameters are set. PR 68863 [Ruediger Pluem]
  * ) mod_cgid: Optional support for file descriptor passing, fixing
    error log handling (configure --enable-cgid-fdpassing) on Unix
    platforms. PR 54221.  [Joe Orton]
  * ) mod_cgid/mod_cgi: Distinguish script stderr output clearly in
    error logs.  PR 61980.  [Hank Ibell &lt;hwibell gmail.com&gt;]
  * ) mod_tls: update version of rustls-ffi to v0.13.0.
    [Daniel McCarney (@cpu}]
  * ) mod_md:
  - Using OCSP stapling information to trigger certificate renewals. Proposed
    by @frasertweedale.
  - Added directive `MDCheckInterval` to control how often the server checks
    for detected revocations. Added proposals for configurations in the
    README.md chapter "Revocations".
  - OCSP stapling: accept OCSP responses without a `nextUpdate` entry which is
    allowed in RFC 6960. Treat those as having an update interval of 12 hours.
    Added by @frasertweedale.
  - Adapt OpenSSL usage to changes in their API. By Yann Ylavic.
- removed patches (upstreamed)
  - apache2-issue-444.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- Update to 2.4.62
  * ) SECURITY: CVE-2024-40898: Apache HTTP Server: SSRF with
    mod_rewrite in server/vhost context on Windows (cve.mitre.org)
    [boo#1228098]
    SSRF in Apache HTTP Server on Windows with mod_rewrite in
    server/vhost context, allows to potentially leak NTML hashes to
    a malicious server via SSRF and malicious requests.
    Users are recommended to upgrade to version 2.4.62 which fixes
    this issue.
    Credits: Smi1e (DBAPPSecurity Ltd.)
  * ) SECURITY: CVE-2024-40725: Apache HTTP Server: source code
    disclosure with handlers configured via AddType (cve.mitre.org)
    [boo#1228097]
    A partial fix for  CVE-2024-39884 in the core of Apache HTTP
    Server 2.4.61 ignores some use of the legacy content-type based
    configuration of handlers. "AddType" and similar configuration,
    under some circumstances where files are requested indirectly,
    result in source code disclosure of local content. For example,
    PHP scripts may be served instead of interpreted.
    Users are recommended to upgrade to version 2.4.62, which fixes
    this issue.
  * ) mod_proxy: Fix canonicalisation and FCGI env (PATH_INFO, SCRIPT_NAME) for
    "balancer:" URLs set via SetHandler, also allowing for "unix:" sockets
    with BalancerMember(s).  PR 69168.  [Yann Ylavic]
  * ) mod_proxy: Avoid AH01059 parsing error for SetHandler "unix:" URLs.
    PR 69160 [Yann Ylavic]
  * ) mod_ssl: Fix crashes in PKCS#11 ENGINE support with OpenSSL 3.2.
    [Joe Orton]
  * ) mod_ssl: Add support for loading certs/keys from pkcs11: URIs
    via OpenSSL 3.x providers.  [Ingo Franzki &lt;ifranzki linux.ibm.com&gt;]
  * ) mod_ssl: Restore SSL dumping on trace7 loglevel with OpenSSL &gt;= 3.0.
    [Ruediger Pluem, Yann Ylavic]
  * ) mpm_worker: Fix possible warning (AH00045) about children processes not
    terminating timely.  [Yann Ylavic]</changelog>
  <changelog author="Thorsten Kukuk &lt;kukuk@suse.com&gt;" date="1727697600">- Add /srv/www directories to filelist [bsc#1231027]
  (apache2 will not start since default config uses this directory)</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1730721600">- Explicitly mark start_apache2 as bash-dependent.</changelog>
  <changelog author="Martin Schreiner &lt;martin.schreiner@suse.com&gt;" date="1730808000">- Update httpd-framework to svn1921782.
- Fixes Apache's impact on bsc#1218342.</changelog>
</package>
<package pkgid="261915daa1370887ff7f314bf107b8faf4f3f1a587edb07d324813f8968df10eb7dd8b5cf2da8c6a7d226745015df2673ac41566e23ffa6bebd8cf2c8b8edbc9" name="apache2-test_devel" arch="src">
  <version epoch="0" ver="2.4.62" rel="3.1"/>
  <changelog author="pgajdos@suse.com" date="1654689600">- update httpd-framework to svn revision 1898917</changelog>
  <changelog author="Stefan Schubert &lt;schubi@intern&gt;" date="1656417600">- Moved logrotate files from user specific directory /etc/logrotate.d
  to vendor specific directory /usr/etc/logrotate.d.</changelog>
  <changelog author="Stefan Schubert &lt;schubi@suse.com&gt;" date="1662033600">- Migration to /usr/etc: Saving user changed configuration files
  in /etc and restoring them while an RPM update.</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1663675200">- Remove references to README.QUICKSTART and point them to
  https://en.opensuse.org/SDB:Apache_installation (bsc#1203573)</changelog>
  <changelog author="Stephan Kulow &lt;coolo@suse.com&gt;" date="1663934400">- The 2.4.54 release brought support for PCRE2, but for that we also
  need to change buildrequires to pcre2-devel</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1670846400">- switch to pkgconfig(zlib) so that alternative providers can be
  used</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1674043200">- This update fixes the following security issues:
  * CVE-2022-37436 [bsc#1207251], mod_proxy backend HTTP response splitting
  * CVE-2022-36760 [bsc#1207250], mod_proxy_ajp Possible request smuggling
  * CVE-2006-20001 [bsc#1207247], mod_dav out of bounds read, or write of zero byte
- Update to 2.4.55:
  * ) SECURITY: CVE-2022-37436: Apache HTTP Server: mod_proxy prior to
    2.4.55 allows a backend to trigger HTTP response splitting
    (cve.mitre.org)
    Prior to Apache HTTP Server 2.4.55, a malicious backend can
    cause the response headers to be truncated early, resulting in
    some headers being incorporated into the response body. If the
    later headers have any security purpose, they will not be
    interpreted by the client.
    Credits: Dimas Fariski Setyawan Putra (@nyxsorcerer)
  * ) SECURITY: CVE-2022-36760: Apache HTTP Server: mod_proxy_ajp
    Possible request smuggling (cve.mitre.org)
    Inconsistent Interpretation of HTTP Requests ('HTTP Request
    Smuggling') vulnerability in mod_proxy_ajp of Apache HTTP Server
    allows an attacker to smuggle requests to the AJP server it
    forwards requests to.  This issue affects Apache HTTP Server
    Apache HTTP Server 2.4 version 2.4.54 and prior versions.
    Credits: ZeddYu_Lu from Qi'anxin Research Institute of Legendsec
    at Qi'anxin Group
  * ) SECURITY: CVE-2006-20001: mod_dav out of  bounds read, or write
    of zero byte (cve.mitre.org)
    A carefully crafted If: request header can cause a memory read,
    or write of a single zero byte, in a pool (heap) memory location
    beyond the header value sent. This could cause the process to
    crash.
    This issue affects Apache HTTP Server 2.4.54 and earlier.
  * ) mod_dav: Open the lock database read-only when possible.
    PR 36636 [Wilson Felipe &lt;wfelipe gmail.com&gt;, manu]
  * ) mod_proxy_http2: apply the standard httpd content type handling
    to responses from the backend, as other proxy modules do. Fixes PR 66391.
    Thanks to Jérôme Billiras for providing the patch.
    [Stefan Eissing]
  * ) mod_dav: mod_dav overrides dav_fs response on PUT failure. PR 35981
    [Basant Kumar Kukreja &lt;basant.kukreja sun.com&gt;, Alejandro Alvarez
    &lt;alejandro.alvarez.ayllon cern.ch&gt;]
  * ) mod_proxy_hcheck: Honor worker timeout settings.  [Yann Ylavic]
  * ) mod_http2: version 2.0.10 of the module, synchronizing changes
    with the gitgub version. This is a partial rewrite of how connections
    and streams are handled.
  - an APR pollset and pipes (where supported) are used to monitor
    the main connection and react to IO for request/response handling.
    This replaces the stuttered timed waits of earlier versions.
  - H2SerializeHeaders directive still exists, but has no longer an effect.
  - Clients that seemingly misbehave still get less resources allocated,
    but ongoing requests are no longer disrupted.
  - Fixed an issue since 1.15.24 that "Server" headers in proxied requests
    were overwritten instead of preserved. [PR by @daum3ns]
  - A regression in v1.15.24 was fixed that could lead to httpd child
    processes not being terminated on a graceful reload or when reaching
    MaxConnectionsPerChild. When unprocessed h2 requests were queued at
    the time, these could stall. See #212.
  - Improved information displayed in 'server-status' for H2 connections when
    Extended Status is enabled. Now one can see the last request that IO
    operations happened on and transferred IO stats are updated as well.
  - When reaching server limits, such as MaxRequestsPerChild, the HTTP/2 connection
    send a GOAWAY frame much too early on new connections, leading to invalid
    protocol state and a client failing the request. See PR65731 at
    &lt;https://bz.apache.org/bugzilla/show_bug.cgi?id=65731&gt;.
    The module now initializes the HTTP/2 protocol correctly and allows the
    client to submit one request before the shutdown via a GOAWAY frame
    is being announced.
  - :scheme pseudo-header values, not matching the
    connection scheme, are forwarded via absolute uris to the
    http protocol processing to preserve semantics of the request.
    Checks on combinations of pseudo-headers values/absence
    have been added as described in RFC 7540. Fixes #230.
  - A bug that prevented trailers (e.g. HEADER frame at the end) to be
    generated in certain cases was fixed. See #233 where it prevented
    gRPC responses to be properly generated.
  - Request and response header values are automatically stripped of leading
    and trialing space/tab characters. This is equivalent behaviour to what
    Apache httpd's http/1.1 parser does.
    The checks for this in nghttp2 v1.50.0+ are disabled.
  - Extensive testing in production done by Alessandro Bianchi (@alexskynet)
    on the v2.0.x versions for stability. Many thanks!
  * ) mod_proxy_http2: fixed #235 by no longer forwarding 'Host:' header when
    request ':authority' is known. Improved test case that did not catch that
    the previous 'fix' was incorrect.
  * ) mod_proxy_hcheck: hcmethod now allows for HTTP/1.1 requests
    using GET11, HEAD11 and/or OPTIONS11. [Jim Jagielski]
  * ) mod_proxy: The AH03408 warning for a forcibly closed backend
    connection is now logged at INFO level.  [Yann Ylavic]
  * ) mod_ssl: When dumping the configuration, the existence of
    certificate/key files is no longer tested.  [Joe Orton]
  * ) mod_authn_core: Add expression support to AuthName and AuthType.
    [Graham Leggett]
  * ) mod_ssl: when a proxy connection had handled a request using SSL, an
    error was logged when "SSLProxyEngine" was only configured in the
    location/proxy section and not the overall server. The connection
    continued to work, the error log was in error. Fixed PR66190.
    [Stefan Eissing]
  * ) mod_proxy_hcheck: Re-enable workers in standard ERROR state. PR 66302.
    [Alessandro Cavaliere &lt;alessandro.cavalier7 unibo.it&gt;]
  * ) mod_proxy_hcheck: Detect AJP/CPING support correctly. PR 66300.
    [Alessandro Cavaliere &lt;alessandro.cavalier7 unibo.it&gt;]
  * ) mod_http2: Export mod_http2.h as public header. [Stefan Eissing]
  * ) mod_md: a new directive `MDStoreLocks` can be used on cluster
    setups with a shared file system for `MDStoreDir` to order
    activation of renewed certificates when several cluster nodes are
    restarted at the same time. Store locks are not enabled by default.
    Restored curl_easy cleanup behaviour from v2.4.14 and refactored
    the use of curl_multi for OCSP requests to work with that.
    Fixes &lt;https://github.com/icing/mod_md/issues/293&gt;.
  * ) core: Avoid an overflow on large inputs in ap_is_matchexp.  PR 66033
    [Ruediger Pluem]
  * ) mod_heartmonitor: Allow "HeartbeatMaxServers 0" to use file based
    storage instead of slotmem. Needed after setting
    HeartbeatMaxServers default to the documented value 10 in 2.4.54.
    PR 66131.  [Jérôme Billiras]
  * ) mod_dav: DAVlockDiscovery option to disable WebDAV lock discovery
    This is a game changer for performances if client use PROPFIND a lot,
    PR 66313. [Emmanuel Dreyfus]</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1678276800">- This update fixes the following security issues:
  * CVE-2023-27522 [bsc#1209049]: mod_proxy_uwsgi HTTP response splitting
  * CVE-2023-25690 [bsc#1209047]: HTTP request splitting with mod_rewrite and mod_proxy
- Update to 2.4.56:
  * ) rotatelogs: Add -T flag to allow subsequent rotated logfiles to be
    truncated without the initial logfile being truncated.  [Eric Covener]
  * ) mod_ldap: LDAPConnectionPoolTTL should accept negative values in order to
    allow connections of any age to be reused. Up to now, a negative value
    was handled as an error when parsing the configuration file.  PR 66421.
    [nailyk &lt;bzapache nailyk.fr&gt;, Christophe Jaillet]
  * ) mod_proxy_ajp: Report an error if the AJP backend sends an invalid number
    of headers. [Ruediger Pluem]
  * ) mod_md:
  - Enabling ED25519 support and certificate transparency information when
    building with libressl v3.5.0 and newer. Thanks to Giovanni Bechis.
  - MDChallengeDns01 can now be configured for individual domains.
    Thanks to Jérôme Billiras (@bilhackmac) for the initial PR.
  - Fixed a bug found by Jérôme Billiras (@bilhackmac) that caused the challenge
    teardown not being invoked as it should.
    [Stefan Eissing]
  * ) mod_http2: client resets of HTTP/2 streams led to unwanted 500 errors
    reported in access logs and error documents. The processing of the
    reset was correct, only unneccesary reporting was caused.
    [Stefan Eissing]
  * ) mod_proxy_uwsgi: Stricter backend HTTP response parsing/validation.
    [Yann Ylavic]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1680868800">- Update to 2.4.57:
  * ) mod_proxy: Check before forwarding that a nocanon path has not been
    rewritten with spaces during processing.  [Yann Ylavic]
  * ) mod_proxy: In case that AllowEncodedSlashes is set to NoDecode do not
    double encode encoded slashes in the URL sent by the reverse proxy to the
    backend. [Ruediger Pluem]
  * ) mod_http2: fixed a crash during connection termination. See PR 66539.
    [Stefan Eissing]
  * ) mod_rewrite: Fix a 2.4.56 regression for substitutions ending
    in a question mark. PR66547. [Eric Covener]
  * ) mod_rewrite: Add "BCTLS" and "BNE" RewriteRule flags. Re-allow encoded
    characters on redirections without the "NE" flag.
    [Yann Ylavic, Eric Covener]
  * ) mod_proxy: Fix double encoding of the uri-path of the request forwarded
    to the origin server, when using mapping=encoded|servlet.  [Yann Ylavic]
  * ) mod_mime: Do not match the extention against possible query string
    parameters in case ProxyPass was used with the nocanon option.
    [Ruediger Pluem]</changelog>
  <changelog author="Dirk Stoecker &lt;opensuse@dstoecker.de&gt;" date="1691236800">- Enable building of mod_md</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1697716800">- Update to 2.4.58:
  * ) SECURITY: CVE-2023-45802: Apache HTTP Server: HTTP/2 stream
    memory not reclaimed right away on RST (cve.mitre.org)
    When a HTTP/2 stream was reset (RST frame) by a client, there
    was a time window were the request's memory resources were not
    reclaimed immediately. Instead, de-allocation was deferred to
    connection close. A client could send new requests and resets,
    keeping the connection busy and open and causing the memory
    footprint to keep on growing. On connection close, all resources
    were reclaimed, but the process might run out of memory before
    that.
    This was found by the reporter during testing of CVE-2023-44487
    (HTTP/2 Rapid Reset Exploit) with their own test client. During
    "normal" HTTP/2 use, the probability to hit this bug is very
    low. The kept memory would not become noticeable before the
    connection closes or times out.
    Users are recommended to upgrade to version 2.4.58, which fixes
    the issue.
    Credits: Will Dormann of Vul Labs
  * ) SECURITY: CVE-2023-43622: Apache HTTP Server: DoS in HTTP/2 with
    initial windows size 0 (cve.mitre.org)
    An attacker, opening a HTTP/2 connection with an initial window
    size of 0, was able to block handling of that connection
    indefinitely in Apache HTTP Server. This could be used to
    exhaust worker resources in the server, similar to the well
    known "slow loris" attack pattern.
    This has been fixed in version 2.4.58, so that such connection
    are terminated properly after the configured connection timeout.
    This issue affects Apache HTTP Server: from 2.4.55 through
    2.4.57.
    Users are recommended to upgrade to version 2.4.58, which fixes
    the issue.
    Credits: Prof. Sven Dietrich (City University of New York)
  * ) SECURITY: CVE-2023-31122: mod_macro buffer over-read
    (cve.mitre.org)
    Out-of-bounds Read vulnerability in mod_macro of Apache HTTP
    Server.This issue affects Apache HTTP Server: through 2.4.57.
    Credits: David Shoon (github/davidshoon)
  * ) mod_ssl: Silence info log message "SSL Library Error: error:0A000126:
    SSL routines::unexpected eof while reading" when using
    OpenSSL 3 by setting SSL_OP_IGNORE_UNEXPECTED_EOF if
    available. [Rainer Jung]
  * ) mod_http2: improved early cleanup of streams.
    [Stefan Eissing]
  * ) mod_proxy_http2: improved error handling on connection errors while
    response is already underway.
    [Stefan Eissing]
  * ) mod_http2: fixed a bug that could lead to a crash in main connection
    output handling. This occured only when the last request on a HTTP/2
    connection had been processed and the session decided to shut down.
    This could lead to an attempt to send a final GOAWAY while the previous
    write was still in progress. See PR 66646.
    [Stefan Eissing]
  * ) mod_proxy_http2: fix `X-Forward-Host` header to carry the correct value.
    Fixes PR66752.
    [Stefan Eissing]
  * ) mod_http2: added support for bootstrapping WebSockets via HTTP/2, as
    described in RFC 8441. A new directive 'H2WebSockets on|off' has been
    added. The feature is by default not enabled.
    As also discussed in the manual, this feature should work for setups
    using "ProxyPass backend-url upgrade=websocket" without further changes.
    Special server modules for WebSockets will have to be adapted,
    most likely, as the handling if IO events is different with HTTP/2.
    HTTP/2 WebSockets are supported on platforms with native pipes. This
    excludes Windows.
    [Stefan Eissing]
  * ) mod_rewrite: Fix a regression with both a trailing ? and [QSA].
    in OCSP stapling. PR 66672. [Frank Meier &lt;frank.meier ergon.ch&gt;, covener]
  * ) mod_http2: fixed a bug in flushing pending data on an already closed
    connection that could lead to a busy loop, preventing the HTTP/2 session
    to close down successfully. Fixed PR 66624.
    [Stefan Eissing]
  * ) mod_http2: v2.0.15 with the following fixes and improvements
  - New directive 'H2EarlyHint name value' to add headers to a response,
    picked up already when a "103 Early Hints" response is sent. 'name' and
    'value' must comply to the HTTP field restrictions.
    This directive can be repeated several times and header fields of the
    same names add. Sending a 'Link' header with 'preload' relation will
    also cause a HTTP/2 PUSH if enabled and supported by the client.
  - Fixed an issue where requests were not logged and accounted in a timely
    fashion when the connection returns to "keepalive" handling, e.g. when
    the request served was the last outstanding one.
    This led to late appearance in access logs with wrong duration times
    reported.
  - Accurately report the bytes sent for a request in the '%O' Log format.
    This addresses #203, a long outstanding issue where mod_h2 has reported
    numbers over-eagerly from internal buffering and not what has actually
    been placed on the connection.
    The numbers are now the same with and without H2CopyFiles enabled.
    [Stefan Eissing]
  * ) mod_proxy_http2: fix retry handling to not leak temporary errors.
    On detecting that that an existing connection was shutdown by the other
    side, a 503 response leaked even though the request was retried on a
    fresh connection.
    [Stefan Eissing]
  * ) mod_rewrite: Add server directory to include path as mod_rewrite requires
    test_char.h. PR 66571 [Valeria Petrov &lt;valeria.petrov@spinetix.com&gt;]
  * ) mod_http2: new directive `H2ProxyRequests on|off` to enable handling
    of HTTP/2 requests in a forward proxy configuration.
    General forward proxying is enabled via `ProxyRequests`. If the
    HTTP/2 protocol is also enabled for such a server/host, this new
    directive is needed in addition.
    [Stefan Eissing]
  * ) core: Updated conf/mime.types:
  - .js moved from 'application/javascript' to 'text/javascript'
  - .mjs was added as 'text/javascript'
  - add .opus ('audio/ogg')
  - add 'application/vnd.geogebra.slides'
  - add WebAssembly MIME types and extension
    [Mathias Bynens &lt;@mathiasbynens&gt; via PR 318,
    Richard de Boer &lt;richard tubul.net&gt;, Dave Hodder &lt;dmh dmh.org.uk&gt;,
    Zbynek Konecny &lt;zbynek1729 gmail.com&gt;]
  * ) mod_proxy_http2: fixed using the wrong "bucket_alloc" from the backend
    connection when sending data on the frontend one. This caused crashes
    or infinite loops in rare situations.
  * ) mod_proxy_http2: fixed a bug in retry/response handling that could lead
    to wrong status codes or HTTP messages send at the end of response bodies
    exceeding the announced content-length.
  * ) mod_proxy_http2: fix retry handling to not leak temporary errors.
    On detecting that that an existing connection was shutdown by the other
    side, a 503 response leaked even though the request was retried on a
    fresh connection.
  * ) mod_http2: fixed a bug that did cleanup of consumed and pending buckets in
    the wrong order when a bucket_beam was destroyed.
    [Stefan Eissing]
  * ) mod_http2: avoid double chunked-encoding on internal redirects.
    PR 66597 [Yann Ylavic, Stefan Eissing]
  * ) mod_http2: Fix reporting of `Total Accesses` in server-status to not count
    HTTP/2 requests twice. Fixes PR 66801.
    [Stefan Eissing]
  * ) mod_ssl: Fix handling of Certificate Revoked messages
    in OCSP stapling. PR 66626. [&lt;gmoniker gmail.com&gt;]
  * ) mod_http2: fixed a bug in handling of stream timeouts.
    [Stefan Eissing]
  * ) mod_tls: updating to rustls-ffi version 0.9.2 or higher.
    Checking in configure for proper version installed. Code
    fixes for changed clienthello member name.
    [Stefan Eissing]
  * ) mod_md:
  - New directive `MDMatchNames all|servernames` to allow more control over how
    MDomains are matched to VirtualHosts.
  - New directive `MDChallengeDns01Version`. Setting this to `2` will provide
    the command also with the challenge value on `teardown` invocation. In version
    1, the default, only the `setup` invocation gets this parameter.
    Refs #312. Thanks to @domrim for the idea.
  - For Managed Domain in "manual" mode, the checks if all used ServerName and
    ServerAlias are part of the MDomain now reports a warning instead of an error
    (AH10040) when not all names are present.
  - MDChallengeDns01 can now be configured for individual domains.
    Using PR from JÃ©rÃ´me Billiras (@bilhackmac) and adding test case and fixing proper working
  - Fixed a bug found by JÃ©rÃ´me Billiras (@bilhackmac) that caused the challenge
    teardown not being invoked as it should.
  * ) mod_ldap: Avoid performance overhead of APR-util rebind cache for
    OpenLDAP 2.2+.  PR 64414.  [Joe Orton]
  * ) mod_http2: new directive 'H2MaxDataFrameLen n' to limit the maximum
    amount of response body bytes put into a single HTTP/2 DATA frame.
    Setting this to 0 places no limit (but the max size allowed by the
    protocol is observed).
    The module, by default, tries to use the maximum size possible, which is
    somewhat around 16KB. This sets the maximum. When less response data is
    available, smaller frames will be sent.
  * ) mod_md: fixed passing of the server environment variables to programs
    started via MDMessageCmd and MDChallengeDns01 on *nix system.
    See &lt;https://github.com/icing/mod_md/issues/319&gt;.
    [Stefan Eissing]
  * ) mod_dav: Add DavBasePath directive to configure the repository root
    path.  PR 35077.  [Joe Orton]
  * ) mod_alias: Add AliasPreservePath directive to map the full
    path after the alias in a location. [Graham Leggett]
  * ) mod_alias: Add RedirectRelative to allow relative redirect targets to be
    issued as-is. [Eric Covener, Graham Leggett]
  * ) core: Add formats %{z} and %{strftime-format} to ErrorLogFormat, and make
    sure that if the format is configured early enough it applies to every log
    line.  PR 62161.  [Yann Ylavic]
  * ) mod_deflate: Add DeflateAlterETag to control how the ETag
    is modified. The 'NoChange' parameter mimics 2.2.x behavior.
    PR 45023, PR 39727. [Eric Covener]
  * ) core: Optimize send_brigade_nonblocking(). [Yann Ylavic, Christophe Jaillet]
  * ) mod_status: Remove duplicate keys "BusyWorkers" and "IdleWorkers".
    Resolve inconsistency between the previous two occurrences by
    counting workers in state SERVER_GRACEFUL no longer as busy,
    but instead in a new counter "GracefulWorkers" (or on HTML
    view as "workers gracefully restarting"). Also add the graceful
    counter as a new column to the existing HTML per process table
    for async MPMs. PR 63300. [Rainer Jung]</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1706529600">- use grep -E for egrep</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1708430400">- Use %autosetup macro. Allows to eliminate the usage of deprecated
  %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1712232000">- Update to 2.4.59:
  * ) mod_deflate: Fixes and better logging for handling various
    error and edge cases. [Eric Covener, Yann Ylavic, Joe Orton,
    Eric Norris &lt;enorris etsy.com&gt;]
  * ) Add CGIScriptTimeout to mod_cgi. [Eric Covener]
  * ) mod_xml2enc: Tolerate libxml2 2.12.0 and later.  PR 68610
    [ttachi &lt;tachihara AT hotmail.com&gt;]
  * ) mod_slotmem_shm: Use ap_os_is_path_absolute() to make it portable.
    [Jean-Frederic Clere]
  * ) mod_ssl: Use OpenSSL-standard functions to assemble CA
    name lists for SSLCACertificatePath/SSLCADNRequestPath.
    Names will now be consistently sorted. PR 61574.
    [Joe Orton]
  * ) mod_xml2enc: Update check to accept any text/ media type
    or any XML media type per RFC 7303, avoiding
    corruption of Microsoft OOXML formats.  PR 64339.
    [Joseph Heenan &lt;joseph.heenan fintechlabs.io&gt;, Joe Orton]
  * ) mod_http2: v2.0.26 with the following fixes:
  - Fixed `Date` header on requests upgraded from HTTP/1.1 (h2c). Fixes
    &lt;https://github.com/icing/mod_h2/issues/272&gt;.
  - Fixed small memory leak in h2 header bucket free. Thanks to
    Michael Kaufmann for finding this and providing the fix.
  * ) htcacheclean: In -a/-A mode, list all files per subdirectory
    rather than only one. PR 65091.
    [Artem Egorenkov &lt;aegorenkov.91 gmail.com&gt;]
  * ) mod_ssl: SSLProxyMachineCertificateFile/Path may reference files
    which include CA certificates; those CA certs are treated as if
    configured with SSLProxyMachineCertificateChainFile.  [Joe Orton]
  * ) htpasswd, htdbm, dbmmanage: Update help&amp;docs to refer to
    "hashing", rather than "encrypting" passwords.
    [Michele Preziuso &lt;mpreziuso kaosdynamics.com&gt;]
  * ) mod_ssl: Fix build with LibreSSL 2.0.7+. PR 64047.
    [Giovanni Bechis, Yann Ylavic]
  * ) htpasswd: Add support for passwords using SHA-2.  [Joe Orton,
    Yann Ylavic]
  * ) core: Allow mod_env to override system environment vars. [Joe Orton]
  * ) Allow mod_dav_fs to tolerate race conditions between PROPFIND and an
    operation which removes a directory/file between apr_dir_read() and
    apr_stat(). Current behaviour is to abort the connection which seems
    inferior to tolerating (and logging) the error. [Joe Orton]
  * ) mod_ldap: HTML-escape data in the ldap-status handler.
    [Eric Covener, Chamal De Silva]
  * ) mod_ssl: Disable the OpenSSL ENGINE API when OPENSSL_NO_ENGINE is set.
    Allow for "SSLCryptoDevice builtin" if the ENGINE API is not available,
    notably with OpenSSL &gt;= 3.  PR 68080.  [Yann Ylavic, Joe Orton]
  * ) mod_ssl: Improve compatibility with OpenSSL 3, fix build warnings about
    deprecated ENGINE_ API, honor OPENSSL_API_COMPAT setting while defaulting
    to compatibitily with version 1.1.1 (including ENGINEs / SSLCryptoDevice).
    [Yann Ylavic]
  * ) mod_ssl: release memory to the OS when needed. [Giovanni Bechis]
  * ) mod_proxy: Ignore (and warn about) enablereuse=on for ProxyPassMatch when
    some dollar substitution (backreference) happens in the hostname or port
    part of the URL.  [Yann Ylavic]
  * ) mod_proxy: Allow to set a TTL for how long DNS resolutions to backend
    systems are cached. [Yann Ylavic]
  * ) mod_proxy: Add optional third argument for ProxyRemote, which
    configures Basic authentication credentials to pass to the remote
    proxy.  PR 37355.  [Joe Orton]</changelog>
  <changelog author="pgajdos@suse.com" date="1718280000">- added patches [bsc#1226217]
  https://github.com/apache/httpd/pull/444/commits/c2fffd29b0f58bdc9caaaff4fec68e17a676f182
  + apache2-issue-444.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1720094400">- Update to 2.4.61
  * ) SECURITY: CVE-2024-39884: Apache HTTP Server: source code
    disclosure with handlers configured via AddType (cve.mitre.org)
    [boo#1227353]
    A regression in the core of Apache HTTP Server 2.4.60 ignores
    some use of the legacy content-type based configuration of
    handlers.   "AddType" and similar configuration, under some
    circumstances where files are requested indirectly, result in
    source code disclosure of local content. For example, PHP
    scripts may be served instead of interpreted.
    Users are recommended to upgrade to version 2.4.61, which fixes
    this issue.
- Update to 2.4.60
  * ) SECURITY: CVE-2024-39573: Apache HTTP Server: mod_rewrite proxy
    handler substitution (cve.mitre.org) [boo#1227271]
    Potential SSRF in mod_rewrite in Apache HTTP Server 2.4.59 and
    earlier allows an attacker to cause unsafe RewriteRules to
    unexpectedly setup URL's to be handled by mod_proxy.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38477: Apache HTTP Server: Crash resulting in
    Denial of Service in mod_proxy via a malicious request
    (cve.mitre.org) [boo#1227270]
    null pointer dereference in mod_proxy in Apache HTTP Server
    2.4.59 and earlier allows an attacker to crash the server via a
    malicious request.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38476: Apache HTTP Server may use
    exploitable/malicious backend application output to run local
    handlers via internal redirect (cve.mitre.org) [boo#1227269]
    Vulnerability in core of Apache HTTP Server 2.4.59 and earlier
    are vulnerably to information disclosure, SSRF or local script
    execution via backend applications whose response headers are
    malicious or exploitable.
    Note: Some legacy uses of the 'AddType' directive to connect a
    request to a handler must be ported to 'AddHandler' after this fix.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38475: Apache HTTP Server weakness in
    mod_rewrite when first segment of substitution matches
    filesystem path. (cve.mitre.org) [boo#1227268]
    Improper escaping of output in mod_rewrite in Apache HTTP Server
    2.4.59 and earlier allows an attacker to map URLs to filesystem
    locations that are permitted to be served by the server but are
    not intentionally/directly reachable by any URL, resulting in
    code execution or source code disclosure.
    Substitutions in server context that use a backreferences or
    variables as the first segment of the substitution are affected.
    Some unsafe RewiteRules will be broken by this change and the
    rewrite flag "UnsafePrefixStat" can be used to opt back in once
    ensuring the substitution is appropriately constrained.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38474: Apache HTTP Server weakness with
    encoded question marks in backreferences (cve.mitre.org)
    [boo#1227278]
    Substitution encoding issue in mod_rewrite in Apache HTTP Server
    2.4.59 and earlier allows attacker to execute scripts in
    directories permitted by the configuration but not directly
    reachable by any URL or source disclosure of scripts meant to
    only to be executed as CGI.
    Note: Some RewriteRules that capture and substitute unsafely will now
    fail unless rewrite flag "UnsafeAllow3F" is specified.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38473: Apache HTTP Server proxy encoding
    problem (cve.mitre.org) [boo#1227276]
    Encoding problem in mod_proxy in Apache HTTP Server 2.4.59 and
    earlier allows request URLs with incorrect encoding to be sent
    to backend services, potentially bypassing authentication via
    crafted requests.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38472: Apache HTTP Server on WIndows UNC SSRF
    (cve.mitre.org) [boo#1227267]
    SSRF in Apache HTTP Server on Windows allows to potentially leak
    NTML hashes to a malicious server via SSRF and malicious
    requests or content
    Note: Existing configurations that access UNC paths
    will have to configure new directive "UNCList" to allow access
    during request processing.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-36387: Apache HTTP Server: DoS by Null
    pointer in websocket over HTTP/2 (cve.mitre.org) [boo#1227272]
    Serving WebSocket protocol upgrades over a HTTP/2 connection
    could result in a Null Pointer dereference, leading to a crash
    of the server process, degrading performance.
    Credits: Marc Stern (&lt;marc.stern AT approach-cyber.com&gt;)
  * ) mod_proxy: Fix DNS requests and connections closed before the
    configured addressTTL.  BZ 69126.  [Yann Ylavic]
  * ) core: On Linux, log the real thread ID in error logs.  [Joe Orton]
  * ) core: Support zone/scope in IPv6 link-local addresses in Listen and
    VirtualHost directives (requires APR 1.7.x or later).  PR 59396
    [Joe Orton]
  * ) mod_ssl: Reject client-initiated renegotiation with a TLS alert
    (rather than connection closure).  [Joe Orton, Yann Ylavic]
  * ) Updated mime.types.  [Mohamed Akram &lt;mohd.akram outlook.com&gt;,
    Adam Silverstein &lt;adamsilverstein earthboundhosting.com&gt;]
  * ) mod_ssl: Fix a regression that causes the default DH parameters for a key
    no longer set and thus effectively disabling DH ciphers when no explicit
    DH parameters are set. PR 68863 [Ruediger Pluem]
  * ) mod_cgid: Optional support for file descriptor passing, fixing
    error log handling (configure --enable-cgid-fdpassing) on Unix
    platforms. PR 54221.  [Joe Orton]
  * ) mod_cgid/mod_cgi: Distinguish script stderr output clearly in
    error logs.  PR 61980.  [Hank Ibell &lt;hwibell gmail.com&gt;]
  * ) mod_tls: update version of rustls-ffi to v0.13.0.
    [Daniel McCarney (@cpu}]
  * ) mod_md:
  - Using OCSP stapling information to trigger certificate renewals. Proposed
    by @frasertweedale.
  - Added directive `MDCheckInterval` to control how often the server checks
    for detected revocations. Added proposals for configurations in the
    README.md chapter "Revocations".
  - OCSP stapling: accept OCSP responses without a `nextUpdate` entry which is
    allowed in RFC 6960. Treat those as having an update interval of 12 hours.
    Added by @frasertweedale.
  - Adapt OpenSSL usage to changes in their API. By Yann Ylavic.
- removed patches (upstreamed)
  - apache2-issue-444.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- Update to 2.4.62
  * ) SECURITY: CVE-2024-40898: Apache HTTP Server: SSRF with
    mod_rewrite in server/vhost context on Windows (cve.mitre.org)
    [boo#1228098]
    SSRF in Apache HTTP Server on Windows with mod_rewrite in
    server/vhost context, allows to potentially leak NTML hashes to
    a malicious server via SSRF and malicious requests.
    Users are recommended to upgrade to version 2.4.62 which fixes
    this issue.
    Credits: Smi1e (DBAPPSecurity Ltd.)
  * ) SECURITY: CVE-2024-40725: Apache HTTP Server: source code
    disclosure with handlers configured via AddType (cve.mitre.org)
    [boo#1228097]
    A partial fix for  CVE-2024-39884 in the core of Apache HTTP
    Server 2.4.61 ignores some use of the legacy content-type based
    configuration of handlers. "AddType" and similar configuration,
    under some circumstances where files are requested indirectly,
    result in source code disclosure of local content. For example,
    PHP scripts may be served instead of interpreted.
    Users are recommended to upgrade to version 2.4.62, which fixes
    this issue.
  * ) mod_proxy: Fix canonicalisation and FCGI env (PATH_INFO, SCRIPT_NAME) for
    "balancer:" URLs set via SetHandler, also allowing for "unix:" sockets
    with BalancerMember(s).  PR 69168.  [Yann Ylavic]
  * ) mod_proxy: Avoid AH01059 parsing error for SetHandler "unix:" URLs.
    PR 69160 [Yann Ylavic]
  * ) mod_ssl: Fix crashes in PKCS#11 ENGINE support with OpenSSL 3.2.
    [Joe Orton]
  * ) mod_ssl: Add support for loading certs/keys from pkcs11: URIs
    via OpenSSL 3.x providers.  [Ingo Franzki &lt;ifranzki linux.ibm.com&gt;]
  * ) mod_ssl: Restore SSL dumping on trace7 loglevel with OpenSSL &gt;= 3.0.
    [Ruediger Pluem, Yann Ylavic]
  * ) mpm_worker: Fix possible warning (AH00045) about children processes not
    terminating timely.  [Yann Ylavic]</changelog>
  <changelog author="Thorsten Kukuk &lt;kukuk@suse.com&gt;" date="1727697600">- Add /srv/www directories to filelist [bsc#1231027]
  (apache2 will not start since default config uses this directory)</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1730721600">- Explicitly mark start_apache2 as bash-dependent.</changelog>
  <changelog author="Martin Schreiner &lt;martin.schreiner@suse.com&gt;" date="1730808000">- Update httpd-framework to svn1921782.
- Fixes Apache's impact on bsc#1218342.</changelog>
</package>
<package pkgid="72d5d977162c16e7d291d3a20c5327f701f6e8c87231438e1588f533fc301ab81354ff717811ac00941d2fa6ee945f91665cfc3b250a237cbc1c33d724363995" name="apache2-test_event" arch="src">
  <version epoch="0" ver="2.4.62" rel="3.1"/>
  <changelog author="pgajdos@suse.com" date="1654689600">- update httpd-framework to svn revision 1898917</changelog>
  <changelog author="Stefan Schubert &lt;schubi@intern&gt;" date="1656417600">- Moved logrotate files from user specific directory /etc/logrotate.d
  to vendor specific directory /usr/etc/logrotate.d.</changelog>
  <changelog author="Stefan Schubert &lt;schubi@suse.com&gt;" date="1662033600">- Migration to /usr/etc: Saving user changed configuration files
  in /etc and restoring them while an RPM update.</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1663675200">- Remove references to README.QUICKSTART and point them to
  https://en.opensuse.org/SDB:Apache_installation (bsc#1203573)</changelog>
  <changelog author="Stephan Kulow &lt;coolo@suse.com&gt;" date="1663934400">- The 2.4.54 release brought support for PCRE2, but for that we also
  need to change buildrequires to pcre2-devel</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1670846400">- switch to pkgconfig(zlib) so that alternative providers can be
  used</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1674043200">- This update fixes the following security issues:
  * CVE-2022-37436 [bsc#1207251], mod_proxy backend HTTP response splitting
  * CVE-2022-36760 [bsc#1207250], mod_proxy_ajp Possible request smuggling
  * CVE-2006-20001 [bsc#1207247], mod_dav out of bounds read, or write of zero byte
- Update to 2.4.55:
  * ) SECURITY: CVE-2022-37436: Apache HTTP Server: mod_proxy prior to
    2.4.55 allows a backend to trigger HTTP response splitting
    (cve.mitre.org)
    Prior to Apache HTTP Server 2.4.55, a malicious backend can
    cause the response headers to be truncated early, resulting in
    some headers being incorporated into the response body. If the
    later headers have any security purpose, they will not be
    interpreted by the client.
    Credits: Dimas Fariski Setyawan Putra (@nyxsorcerer)
  * ) SECURITY: CVE-2022-36760: Apache HTTP Server: mod_proxy_ajp
    Possible request smuggling (cve.mitre.org)
    Inconsistent Interpretation of HTTP Requests ('HTTP Request
    Smuggling') vulnerability in mod_proxy_ajp of Apache HTTP Server
    allows an attacker to smuggle requests to the AJP server it
    forwards requests to.  This issue affects Apache HTTP Server
    Apache HTTP Server 2.4 version 2.4.54 and prior versions.
    Credits: ZeddYu_Lu from Qi'anxin Research Institute of Legendsec
    at Qi'anxin Group
  * ) SECURITY: CVE-2006-20001: mod_dav out of  bounds read, or write
    of zero byte (cve.mitre.org)
    A carefully crafted If: request header can cause a memory read,
    or write of a single zero byte, in a pool (heap) memory location
    beyond the header value sent. This could cause the process to
    crash.
    This issue affects Apache HTTP Server 2.4.54 and earlier.
  * ) mod_dav: Open the lock database read-only when possible.
    PR 36636 [Wilson Felipe &lt;wfelipe gmail.com&gt;, manu]
  * ) mod_proxy_http2: apply the standard httpd content type handling
    to responses from the backend, as other proxy modules do. Fixes PR 66391.
    Thanks to Jérôme Billiras for providing the patch.
    [Stefan Eissing]
  * ) mod_dav: mod_dav overrides dav_fs response on PUT failure. PR 35981
    [Basant Kumar Kukreja &lt;basant.kukreja sun.com&gt;, Alejandro Alvarez
    &lt;alejandro.alvarez.ayllon cern.ch&gt;]
  * ) mod_proxy_hcheck: Honor worker timeout settings.  [Yann Ylavic]
  * ) mod_http2: version 2.0.10 of the module, synchronizing changes
    with the gitgub version. This is a partial rewrite of how connections
    and streams are handled.
  - an APR pollset and pipes (where supported) are used to monitor
    the main connection and react to IO for request/response handling.
    This replaces the stuttered timed waits of earlier versions.
  - H2SerializeHeaders directive still exists, but has no longer an effect.
  - Clients that seemingly misbehave still get less resources allocated,
    but ongoing requests are no longer disrupted.
  - Fixed an issue since 1.15.24 that "Server" headers in proxied requests
    were overwritten instead of preserved. [PR by @daum3ns]
  - A regression in v1.15.24 was fixed that could lead to httpd child
    processes not being terminated on a graceful reload or when reaching
    MaxConnectionsPerChild. When unprocessed h2 requests were queued at
    the time, these could stall. See #212.
  - Improved information displayed in 'server-status' for H2 connections when
    Extended Status is enabled. Now one can see the last request that IO
    operations happened on and transferred IO stats are updated as well.
  - When reaching server limits, such as MaxRequestsPerChild, the HTTP/2 connection
    send a GOAWAY frame much too early on new connections, leading to invalid
    protocol state and a client failing the request. See PR65731 at
    &lt;https://bz.apache.org/bugzilla/show_bug.cgi?id=65731&gt;.
    The module now initializes the HTTP/2 protocol correctly and allows the
    client to submit one request before the shutdown via a GOAWAY frame
    is being announced.
  - :scheme pseudo-header values, not matching the
    connection scheme, are forwarded via absolute uris to the
    http protocol processing to preserve semantics of the request.
    Checks on combinations of pseudo-headers values/absence
    have been added as described in RFC 7540. Fixes #230.
  - A bug that prevented trailers (e.g. HEADER frame at the end) to be
    generated in certain cases was fixed. See #233 where it prevented
    gRPC responses to be properly generated.
  - Request and response header values are automatically stripped of leading
    and trialing space/tab characters. This is equivalent behaviour to what
    Apache httpd's http/1.1 parser does.
    The checks for this in nghttp2 v1.50.0+ are disabled.
  - Extensive testing in production done by Alessandro Bianchi (@alexskynet)
    on the v2.0.x versions for stability. Many thanks!
  * ) mod_proxy_http2: fixed #235 by no longer forwarding 'Host:' header when
    request ':authority' is known. Improved test case that did not catch that
    the previous 'fix' was incorrect.
  * ) mod_proxy_hcheck: hcmethod now allows for HTTP/1.1 requests
    using GET11, HEAD11 and/or OPTIONS11. [Jim Jagielski]
  * ) mod_proxy: The AH03408 warning for a forcibly closed backend
    connection is now logged at INFO level.  [Yann Ylavic]
  * ) mod_ssl: When dumping the configuration, the existence of
    certificate/key files is no longer tested.  [Joe Orton]
  * ) mod_authn_core: Add expression support to AuthName and AuthType.
    [Graham Leggett]
  * ) mod_ssl: when a proxy connection had handled a request using SSL, an
    error was logged when "SSLProxyEngine" was only configured in the
    location/proxy section and not the overall server. The connection
    continued to work, the error log was in error. Fixed PR66190.
    [Stefan Eissing]
  * ) mod_proxy_hcheck: Re-enable workers in standard ERROR state. PR 66302.
    [Alessandro Cavaliere &lt;alessandro.cavalier7 unibo.it&gt;]
  * ) mod_proxy_hcheck: Detect AJP/CPING support correctly. PR 66300.
    [Alessandro Cavaliere &lt;alessandro.cavalier7 unibo.it&gt;]
  * ) mod_http2: Export mod_http2.h as public header. [Stefan Eissing]
  * ) mod_md: a new directive `MDStoreLocks` can be used on cluster
    setups with a shared file system for `MDStoreDir` to order
    activation of renewed certificates when several cluster nodes are
    restarted at the same time. Store locks are not enabled by default.
    Restored curl_easy cleanup behaviour from v2.4.14 and refactored
    the use of curl_multi for OCSP requests to work with that.
    Fixes &lt;https://github.com/icing/mod_md/issues/293&gt;.
  * ) core: Avoid an overflow on large inputs in ap_is_matchexp.  PR 66033
    [Ruediger Pluem]
  * ) mod_heartmonitor: Allow "HeartbeatMaxServers 0" to use file based
    storage instead of slotmem. Needed after setting
    HeartbeatMaxServers default to the documented value 10 in 2.4.54.
    PR 66131.  [Jérôme Billiras]
  * ) mod_dav: DAVlockDiscovery option to disable WebDAV lock discovery
    This is a game changer for performances if client use PROPFIND a lot,
    PR 66313. [Emmanuel Dreyfus]</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1678276800">- This update fixes the following security issues:
  * CVE-2023-27522 [bsc#1209049]: mod_proxy_uwsgi HTTP response splitting
  * CVE-2023-25690 [bsc#1209047]: HTTP request splitting with mod_rewrite and mod_proxy
- Update to 2.4.56:
  * ) rotatelogs: Add -T flag to allow subsequent rotated logfiles to be
    truncated without the initial logfile being truncated.  [Eric Covener]
  * ) mod_ldap: LDAPConnectionPoolTTL should accept negative values in order to
    allow connections of any age to be reused. Up to now, a negative value
    was handled as an error when parsing the configuration file.  PR 66421.
    [nailyk &lt;bzapache nailyk.fr&gt;, Christophe Jaillet]
  * ) mod_proxy_ajp: Report an error if the AJP backend sends an invalid number
    of headers. [Ruediger Pluem]
  * ) mod_md:
  - Enabling ED25519 support and certificate transparency information when
    building with libressl v3.5.0 and newer. Thanks to Giovanni Bechis.
  - MDChallengeDns01 can now be configured for individual domains.
    Thanks to Jérôme Billiras (@bilhackmac) for the initial PR.
  - Fixed a bug found by Jérôme Billiras (@bilhackmac) that caused the challenge
    teardown not being invoked as it should.
    [Stefan Eissing]
  * ) mod_http2: client resets of HTTP/2 streams led to unwanted 500 errors
    reported in access logs and error documents. The processing of the
    reset was correct, only unneccesary reporting was caused.
    [Stefan Eissing]
  * ) mod_proxy_uwsgi: Stricter backend HTTP response parsing/validation.
    [Yann Ylavic]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1680868800">- Update to 2.4.57:
  * ) mod_proxy: Check before forwarding that a nocanon path has not been
    rewritten with spaces during processing.  [Yann Ylavic]
  * ) mod_proxy: In case that AllowEncodedSlashes is set to NoDecode do not
    double encode encoded slashes in the URL sent by the reverse proxy to the
    backend. [Ruediger Pluem]
  * ) mod_http2: fixed a crash during connection termination. See PR 66539.
    [Stefan Eissing]
  * ) mod_rewrite: Fix a 2.4.56 regression for substitutions ending
    in a question mark. PR66547. [Eric Covener]
  * ) mod_rewrite: Add "BCTLS" and "BNE" RewriteRule flags. Re-allow encoded
    characters on redirections without the "NE" flag.
    [Yann Ylavic, Eric Covener]
  * ) mod_proxy: Fix double encoding of the uri-path of the request forwarded
    to the origin server, when using mapping=encoded|servlet.  [Yann Ylavic]
  * ) mod_mime: Do not match the extention against possible query string
    parameters in case ProxyPass was used with the nocanon option.
    [Ruediger Pluem]</changelog>
  <changelog author="Dirk Stoecker &lt;opensuse@dstoecker.de&gt;" date="1691236800">- Enable building of mod_md</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1697716800">- Update to 2.4.58:
  * ) SECURITY: CVE-2023-45802: Apache HTTP Server: HTTP/2 stream
    memory not reclaimed right away on RST (cve.mitre.org)
    When a HTTP/2 stream was reset (RST frame) by a client, there
    was a time window were the request's memory resources were not
    reclaimed immediately. Instead, de-allocation was deferred to
    connection close. A client could send new requests and resets,
    keeping the connection busy and open and causing the memory
    footprint to keep on growing. On connection close, all resources
    were reclaimed, but the process might run out of memory before
    that.
    This was found by the reporter during testing of CVE-2023-44487
    (HTTP/2 Rapid Reset Exploit) with their own test client. During
    "normal" HTTP/2 use, the probability to hit this bug is very
    low. The kept memory would not become noticeable before the
    connection closes or times out.
    Users are recommended to upgrade to version 2.4.58, which fixes
    the issue.
    Credits: Will Dormann of Vul Labs
  * ) SECURITY: CVE-2023-43622: Apache HTTP Server: DoS in HTTP/2 with
    initial windows size 0 (cve.mitre.org)
    An attacker, opening a HTTP/2 connection with an initial window
    size of 0, was able to block handling of that connection
    indefinitely in Apache HTTP Server. This could be used to
    exhaust worker resources in the server, similar to the well
    known "slow loris" attack pattern.
    This has been fixed in version 2.4.58, so that such connection
    are terminated properly after the configured connection timeout.
    This issue affects Apache HTTP Server: from 2.4.55 through
    2.4.57.
    Users are recommended to upgrade to version 2.4.58, which fixes
    the issue.
    Credits: Prof. Sven Dietrich (City University of New York)
  * ) SECURITY: CVE-2023-31122: mod_macro buffer over-read
    (cve.mitre.org)
    Out-of-bounds Read vulnerability in mod_macro of Apache HTTP
    Server.This issue affects Apache HTTP Server: through 2.4.57.
    Credits: David Shoon (github/davidshoon)
  * ) mod_ssl: Silence info log message "SSL Library Error: error:0A000126:
    SSL routines::unexpected eof while reading" when using
    OpenSSL 3 by setting SSL_OP_IGNORE_UNEXPECTED_EOF if
    available. [Rainer Jung]
  * ) mod_http2: improved early cleanup of streams.
    [Stefan Eissing]
  * ) mod_proxy_http2: improved error handling on connection errors while
    response is already underway.
    [Stefan Eissing]
  * ) mod_http2: fixed a bug that could lead to a crash in main connection
    output handling. This occured only when the last request on a HTTP/2
    connection had been processed and the session decided to shut down.
    This could lead to an attempt to send a final GOAWAY while the previous
    write was still in progress. See PR 66646.
    [Stefan Eissing]
  * ) mod_proxy_http2: fix `X-Forward-Host` header to carry the correct value.
    Fixes PR66752.
    [Stefan Eissing]
  * ) mod_http2: added support for bootstrapping WebSockets via HTTP/2, as
    described in RFC 8441. A new directive 'H2WebSockets on|off' has been
    added. The feature is by default not enabled.
    As also discussed in the manual, this feature should work for setups
    using "ProxyPass backend-url upgrade=websocket" without further changes.
    Special server modules for WebSockets will have to be adapted,
    most likely, as the handling if IO events is different with HTTP/2.
    HTTP/2 WebSockets are supported on platforms with native pipes. This
    excludes Windows.
    [Stefan Eissing]
  * ) mod_rewrite: Fix a regression with both a trailing ? and [QSA].
    in OCSP stapling. PR 66672. [Frank Meier &lt;frank.meier ergon.ch&gt;, covener]
  * ) mod_http2: fixed a bug in flushing pending data on an already closed
    connection that could lead to a busy loop, preventing the HTTP/2 session
    to close down successfully. Fixed PR 66624.
    [Stefan Eissing]
  * ) mod_http2: v2.0.15 with the following fixes and improvements
  - New directive 'H2EarlyHint name value' to add headers to a response,
    picked up already when a "103 Early Hints" response is sent. 'name' and
    'value' must comply to the HTTP field restrictions.
    This directive can be repeated several times and header fields of the
    same names add. Sending a 'Link' header with 'preload' relation will
    also cause a HTTP/2 PUSH if enabled and supported by the client.
  - Fixed an issue where requests were not logged and accounted in a timely
    fashion when the connection returns to "keepalive" handling, e.g. when
    the request served was the last outstanding one.
    This led to late appearance in access logs with wrong duration times
    reported.
  - Accurately report the bytes sent for a request in the '%O' Log format.
    This addresses #203, a long outstanding issue where mod_h2 has reported
    numbers over-eagerly from internal buffering and not what has actually
    been placed on the connection.
    The numbers are now the same with and without H2CopyFiles enabled.
    [Stefan Eissing]
  * ) mod_proxy_http2: fix retry handling to not leak temporary errors.
    On detecting that that an existing connection was shutdown by the other
    side, a 503 response leaked even though the request was retried on a
    fresh connection.
    [Stefan Eissing]
  * ) mod_rewrite: Add server directory to include path as mod_rewrite requires
    test_char.h. PR 66571 [Valeria Petrov &lt;valeria.petrov@spinetix.com&gt;]
  * ) mod_http2: new directive `H2ProxyRequests on|off` to enable handling
    of HTTP/2 requests in a forward proxy configuration.
    General forward proxying is enabled via `ProxyRequests`. If the
    HTTP/2 protocol is also enabled for such a server/host, this new
    directive is needed in addition.
    [Stefan Eissing]
  * ) core: Updated conf/mime.types:
  - .js moved from 'application/javascript' to 'text/javascript'
  - .mjs was added as 'text/javascript'
  - add .opus ('audio/ogg')
  - add 'application/vnd.geogebra.slides'
  - add WebAssembly MIME types and extension
    [Mathias Bynens &lt;@mathiasbynens&gt; via PR 318,
    Richard de Boer &lt;richard tubul.net&gt;, Dave Hodder &lt;dmh dmh.org.uk&gt;,
    Zbynek Konecny &lt;zbynek1729 gmail.com&gt;]
  * ) mod_proxy_http2: fixed using the wrong "bucket_alloc" from the backend
    connection when sending data on the frontend one. This caused crashes
    or infinite loops in rare situations.
  * ) mod_proxy_http2: fixed a bug in retry/response handling that could lead
    to wrong status codes or HTTP messages send at the end of response bodies
    exceeding the announced content-length.
  * ) mod_proxy_http2: fix retry handling to not leak temporary errors.
    On detecting that that an existing connection was shutdown by the other
    side, a 503 response leaked even though the request was retried on a
    fresh connection.
  * ) mod_http2: fixed a bug that did cleanup of consumed and pending buckets in
    the wrong order when a bucket_beam was destroyed.
    [Stefan Eissing]
  * ) mod_http2: avoid double chunked-encoding on internal redirects.
    PR 66597 [Yann Ylavic, Stefan Eissing]
  * ) mod_http2: Fix reporting of `Total Accesses` in server-status to not count
    HTTP/2 requests twice. Fixes PR 66801.
    [Stefan Eissing]
  * ) mod_ssl: Fix handling of Certificate Revoked messages
    in OCSP stapling. PR 66626. [&lt;gmoniker gmail.com&gt;]
  * ) mod_http2: fixed a bug in handling of stream timeouts.
    [Stefan Eissing]
  * ) mod_tls: updating to rustls-ffi version 0.9.2 or higher.
    Checking in configure for proper version installed. Code
    fixes for changed clienthello member name.
    [Stefan Eissing]
  * ) mod_md:
  - New directive `MDMatchNames all|servernames` to allow more control over how
    MDomains are matched to VirtualHosts.
  - New directive `MDChallengeDns01Version`. Setting this to `2` will provide
    the command also with the challenge value on `teardown` invocation. In version
    1, the default, only the `setup` invocation gets this parameter.
    Refs #312. Thanks to @domrim for the idea.
  - For Managed Domain in "manual" mode, the checks if all used ServerName and
    ServerAlias are part of the MDomain now reports a warning instead of an error
    (AH10040) when not all names are present.
  - MDChallengeDns01 can now be configured for individual domains.
    Using PR from JÃ©rÃ´me Billiras (@bilhackmac) and adding test case and fixing proper working
  - Fixed a bug found by JÃ©rÃ´me Billiras (@bilhackmac) that caused the challenge
    teardown not being invoked as it should.
  * ) mod_ldap: Avoid performance overhead of APR-util rebind cache for
    OpenLDAP 2.2+.  PR 64414.  [Joe Orton]
  * ) mod_http2: new directive 'H2MaxDataFrameLen n' to limit the maximum
    amount of response body bytes put into a single HTTP/2 DATA frame.
    Setting this to 0 places no limit (but the max size allowed by the
    protocol is observed).
    The module, by default, tries to use the maximum size possible, which is
    somewhat around 16KB. This sets the maximum. When less response data is
    available, smaller frames will be sent.
  * ) mod_md: fixed passing of the server environment variables to programs
    started via MDMessageCmd and MDChallengeDns01 on *nix system.
    See &lt;https://github.com/icing/mod_md/issues/319&gt;.
    [Stefan Eissing]
  * ) mod_dav: Add DavBasePath directive to configure the repository root
    path.  PR 35077.  [Joe Orton]
  * ) mod_alias: Add AliasPreservePath directive to map the full
    path after the alias in a location. [Graham Leggett]
  * ) mod_alias: Add RedirectRelative to allow relative redirect targets to be
    issued as-is. [Eric Covener, Graham Leggett]
  * ) core: Add formats %{z} and %{strftime-format} to ErrorLogFormat, and make
    sure that if the format is configured early enough it applies to every log
    line.  PR 62161.  [Yann Ylavic]
  * ) mod_deflate: Add DeflateAlterETag to control how the ETag
    is modified. The 'NoChange' parameter mimics 2.2.x behavior.
    PR 45023, PR 39727. [Eric Covener]
  * ) core: Optimize send_brigade_nonblocking(). [Yann Ylavic, Christophe Jaillet]
  * ) mod_status: Remove duplicate keys "BusyWorkers" and "IdleWorkers".
    Resolve inconsistency between the previous two occurrences by
    counting workers in state SERVER_GRACEFUL no longer as busy,
    but instead in a new counter "GracefulWorkers" (or on HTML
    view as "workers gracefully restarting"). Also add the graceful
    counter as a new column to the existing HTML per process table
    for async MPMs. PR 63300. [Rainer Jung]</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1706529600">- use grep -E for egrep</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1708430400">- Use %autosetup macro. Allows to eliminate the usage of deprecated
  %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1712232000">- Update to 2.4.59:
  * ) mod_deflate: Fixes and better logging for handling various
    error and edge cases. [Eric Covener, Yann Ylavic, Joe Orton,
    Eric Norris &lt;enorris etsy.com&gt;]
  * ) Add CGIScriptTimeout to mod_cgi. [Eric Covener]
  * ) mod_xml2enc: Tolerate libxml2 2.12.0 and later.  PR 68610
    [ttachi &lt;tachihara AT hotmail.com&gt;]
  * ) mod_slotmem_shm: Use ap_os_is_path_absolute() to make it portable.
    [Jean-Frederic Clere]
  * ) mod_ssl: Use OpenSSL-standard functions to assemble CA
    name lists for SSLCACertificatePath/SSLCADNRequestPath.
    Names will now be consistently sorted. PR 61574.
    [Joe Orton]
  * ) mod_xml2enc: Update check to accept any text/ media type
    or any XML media type per RFC 7303, avoiding
    corruption of Microsoft OOXML formats.  PR 64339.
    [Joseph Heenan &lt;joseph.heenan fintechlabs.io&gt;, Joe Orton]
  * ) mod_http2: v2.0.26 with the following fixes:
  - Fixed `Date` header on requests upgraded from HTTP/1.1 (h2c). Fixes
    &lt;https://github.com/icing/mod_h2/issues/272&gt;.
  - Fixed small memory leak in h2 header bucket free. Thanks to
    Michael Kaufmann for finding this and providing the fix.
  * ) htcacheclean: In -a/-A mode, list all files per subdirectory
    rather than only one. PR 65091.
    [Artem Egorenkov &lt;aegorenkov.91 gmail.com&gt;]
  * ) mod_ssl: SSLProxyMachineCertificateFile/Path may reference files
    which include CA certificates; those CA certs are treated as if
    configured with SSLProxyMachineCertificateChainFile.  [Joe Orton]
  * ) htpasswd, htdbm, dbmmanage: Update help&amp;docs to refer to
    "hashing", rather than "encrypting" passwords.
    [Michele Preziuso &lt;mpreziuso kaosdynamics.com&gt;]
  * ) mod_ssl: Fix build with LibreSSL 2.0.7+. PR 64047.
    [Giovanni Bechis, Yann Ylavic]
  * ) htpasswd: Add support for passwords using SHA-2.  [Joe Orton,
    Yann Ylavic]
  * ) core: Allow mod_env to override system environment vars. [Joe Orton]
  * ) Allow mod_dav_fs to tolerate race conditions between PROPFIND and an
    operation which removes a directory/file between apr_dir_read() and
    apr_stat(). Current behaviour is to abort the connection which seems
    inferior to tolerating (and logging) the error. [Joe Orton]
  * ) mod_ldap: HTML-escape data in the ldap-status handler.
    [Eric Covener, Chamal De Silva]
  * ) mod_ssl: Disable the OpenSSL ENGINE API when OPENSSL_NO_ENGINE is set.
    Allow for "SSLCryptoDevice builtin" if the ENGINE API is not available,
    notably with OpenSSL &gt;= 3.  PR 68080.  [Yann Ylavic, Joe Orton]
  * ) mod_ssl: Improve compatibility with OpenSSL 3, fix build warnings about
    deprecated ENGINE_ API, honor OPENSSL_API_COMPAT setting while defaulting
    to compatibitily with version 1.1.1 (including ENGINEs / SSLCryptoDevice).
    [Yann Ylavic]
  * ) mod_ssl: release memory to the OS when needed. [Giovanni Bechis]
  * ) mod_proxy: Ignore (and warn about) enablereuse=on for ProxyPassMatch when
    some dollar substitution (backreference) happens in the hostname or port
    part of the URL.  [Yann Ylavic]
  * ) mod_proxy: Allow to set a TTL for how long DNS resolutions to backend
    systems are cached. [Yann Ylavic]
  * ) mod_proxy: Add optional third argument for ProxyRemote, which
    configures Basic authentication credentials to pass to the remote
    proxy.  PR 37355.  [Joe Orton]</changelog>
  <changelog author="pgajdos@suse.com" date="1718280000">- added patches [bsc#1226217]
  https://github.com/apache/httpd/pull/444/commits/c2fffd29b0f58bdc9caaaff4fec68e17a676f182
  + apache2-issue-444.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1720094400">- Update to 2.4.61
  * ) SECURITY: CVE-2024-39884: Apache HTTP Server: source code
    disclosure with handlers configured via AddType (cve.mitre.org)
    [boo#1227353]
    A regression in the core of Apache HTTP Server 2.4.60 ignores
    some use of the legacy content-type based configuration of
    handlers.   "AddType" and similar configuration, under some
    circumstances where files are requested indirectly, result in
    source code disclosure of local content. For example, PHP
    scripts may be served instead of interpreted.
    Users are recommended to upgrade to version 2.4.61, which fixes
    this issue.
- Update to 2.4.60
  * ) SECURITY: CVE-2024-39573: Apache HTTP Server: mod_rewrite proxy
    handler substitution (cve.mitre.org) [boo#1227271]
    Potential SSRF in mod_rewrite in Apache HTTP Server 2.4.59 and
    earlier allows an attacker to cause unsafe RewriteRules to
    unexpectedly setup URL's to be handled by mod_proxy.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38477: Apache HTTP Server: Crash resulting in
    Denial of Service in mod_proxy via a malicious request
    (cve.mitre.org) [boo#1227270]
    null pointer dereference in mod_proxy in Apache HTTP Server
    2.4.59 and earlier allows an attacker to crash the server via a
    malicious request.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38476: Apache HTTP Server may use
    exploitable/malicious backend application output to run local
    handlers via internal redirect (cve.mitre.org) [boo#1227269]
    Vulnerability in core of Apache HTTP Server 2.4.59 and earlier
    are vulnerably to information disclosure, SSRF or local script
    execution via backend applications whose response headers are
    malicious or exploitable.
    Note: Some legacy uses of the 'AddType' directive to connect a
    request to a handler must be ported to 'AddHandler' after this fix.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38475: Apache HTTP Server weakness in
    mod_rewrite when first segment of substitution matches
    filesystem path. (cve.mitre.org) [boo#1227268]
    Improper escaping of output in mod_rewrite in Apache HTTP Server
    2.4.59 and earlier allows an attacker to map URLs to filesystem
    locations that are permitted to be served by the server but are
    not intentionally/directly reachable by any URL, resulting in
    code execution or source code disclosure.
    Substitutions in server context that use a backreferences or
    variables as the first segment of the substitution are affected.
    Some unsafe RewiteRules will be broken by this change and the
    rewrite flag "UnsafePrefixStat" can be used to opt back in once
    ensuring the substitution is appropriately constrained.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38474: Apache HTTP Server weakness with
    encoded question marks in backreferences (cve.mitre.org)
    [boo#1227278]
    Substitution encoding issue in mod_rewrite in Apache HTTP Server
    2.4.59 and earlier allows attacker to execute scripts in
    directories permitted by the configuration but not directly
    reachable by any URL or source disclosure of scripts meant to
    only to be executed as CGI.
    Note: Some RewriteRules that capture and substitute unsafely will now
    fail unless rewrite flag "UnsafeAllow3F" is specified.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38473: Apache HTTP Server proxy encoding
    problem (cve.mitre.org) [boo#1227276]
    Encoding problem in mod_proxy in Apache HTTP Server 2.4.59 and
    earlier allows request URLs with incorrect encoding to be sent
    to backend services, potentially bypassing authentication via
    crafted requests.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38472: Apache HTTP Server on WIndows UNC SSRF
    (cve.mitre.org) [boo#1227267]
    SSRF in Apache HTTP Server on Windows allows to potentially leak
    NTML hashes to a malicious server via SSRF and malicious
    requests or content
    Note: Existing configurations that access UNC paths
    will have to configure new directive "UNCList" to allow access
    during request processing.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-36387: Apache HTTP Server: DoS by Null
    pointer in websocket over HTTP/2 (cve.mitre.org) [boo#1227272]
    Serving WebSocket protocol upgrades over a HTTP/2 connection
    could result in a Null Pointer dereference, leading to a crash
    of the server process, degrading performance.
    Credits: Marc Stern (&lt;marc.stern AT approach-cyber.com&gt;)
  * ) mod_proxy: Fix DNS requests and connections closed before the
    configured addressTTL.  BZ 69126.  [Yann Ylavic]
  * ) core: On Linux, log the real thread ID in error logs.  [Joe Orton]
  * ) core: Support zone/scope in IPv6 link-local addresses in Listen and
    VirtualHost directives (requires APR 1.7.x or later).  PR 59396
    [Joe Orton]
  * ) mod_ssl: Reject client-initiated renegotiation with a TLS alert
    (rather than connection closure).  [Joe Orton, Yann Ylavic]
  * ) Updated mime.types.  [Mohamed Akram &lt;mohd.akram outlook.com&gt;,
    Adam Silverstein &lt;adamsilverstein earthboundhosting.com&gt;]
  * ) mod_ssl: Fix a regression that causes the default DH parameters for a key
    no longer set and thus effectively disabling DH ciphers when no explicit
    DH parameters are set. PR 68863 [Ruediger Pluem]
  * ) mod_cgid: Optional support for file descriptor passing, fixing
    error log handling (configure --enable-cgid-fdpassing) on Unix
    platforms. PR 54221.  [Joe Orton]
  * ) mod_cgid/mod_cgi: Distinguish script stderr output clearly in
    error logs.  PR 61980.  [Hank Ibell &lt;hwibell gmail.com&gt;]
  * ) mod_tls: update version of rustls-ffi to v0.13.0.
    [Daniel McCarney (@cpu}]
  * ) mod_md:
  - Using OCSP stapling information to trigger certificate renewals. Proposed
    by @frasertweedale.
  - Added directive `MDCheckInterval` to control how often the server checks
    for detected revocations. Added proposals for configurations in the
    README.md chapter "Revocations".
  - OCSP stapling: accept OCSP responses without a `nextUpdate` entry which is
    allowed in RFC 6960. Treat those as having an update interval of 12 hours.
    Added by @frasertweedale.
  - Adapt OpenSSL usage to changes in their API. By Yann Ylavic.
- removed patches (upstreamed)
  - apache2-issue-444.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- Update to 2.4.62
  * ) SECURITY: CVE-2024-40898: Apache HTTP Server: SSRF with
    mod_rewrite in server/vhost context on Windows (cve.mitre.org)
    [boo#1228098]
    SSRF in Apache HTTP Server on Windows with mod_rewrite in
    server/vhost context, allows to potentially leak NTML hashes to
    a malicious server via SSRF and malicious requests.
    Users are recommended to upgrade to version 2.4.62 which fixes
    this issue.
    Credits: Smi1e (DBAPPSecurity Ltd.)
  * ) SECURITY: CVE-2024-40725: Apache HTTP Server: source code
    disclosure with handlers configured via AddType (cve.mitre.org)
    [boo#1228097]
    A partial fix for  CVE-2024-39884 in the core of Apache HTTP
    Server 2.4.61 ignores some use of the legacy content-type based
    configuration of handlers. "AddType" and similar configuration,
    under some circumstances where files are requested indirectly,
    result in source code disclosure of local content. For example,
    PHP scripts may be served instead of interpreted.
    Users are recommended to upgrade to version 2.4.62, which fixes
    this issue.
  * ) mod_proxy: Fix canonicalisation and FCGI env (PATH_INFO, SCRIPT_NAME) for
    "balancer:" URLs set via SetHandler, also allowing for "unix:" sockets
    with BalancerMember(s).  PR 69168.  [Yann Ylavic]
  * ) mod_proxy: Avoid AH01059 parsing error for SetHandler "unix:" URLs.
    PR 69160 [Yann Ylavic]
  * ) mod_ssl: Fix crashes in PKCS#11 ENGINE support with OpenSSL 3.2.
    [Joe Orton]
  * ) mod_ssl: Add support for loading certs/keys from pkcs11: URIs
    via OpenSSL 3.x providers.  [Ingo Franzki &lt;ifranzki linux.ibm.com&gt;]
  * ) mod_ssl: Restore SSL dumping on trace7 loglevel with OpenSSL &gt;= 3.0.
    [Ruediger Pluem, Yann Ylavic]
  * ) mpm_worker: Fix possible warning (AH00045) about children processes not
    terminating timely.  [Yann Ylavic]</changelog>
  <changelog author="Thorsten Kukuk &lt;kukuk@suse.com&gt;" date="1727697600">- Add /srv/www directories to filelist [bsc#1231027]
  (apache2 will not start since default config uses this directory)</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1730721600">- Explicitly mark start_apache2 as bash-dependent.</changelog>
  <changelog author="Martin Schreiner &lt;martin.schreiner@suse.com&gt;" date="1730808000">- Update httpd-framework to svn1921782.
- Fixes Apache's impact on bsc#1218342.</changelog>
</package>
<package pkgid="6cd45c1f40f54d07bc7ed61173f2521a708ef0a3ea3176b16a31b432586987136be57df7198b8133e0d2bb543694edaefff560137cf33ec897bfd83bef85cf27" name="apache2-test_main" arch="src">
  <version epoch="0" ver="2.4.62" rel="3.1"/>
  <changelog author="pgajdos@suse.com" date="1654689600">- update httpd-framework to svn revision 1898917</changelog>
  <changelog author="Stefan Schubert &lt;schubi@intern&gt;" date="1656417600">- Moved logrotate files from user specific directory /etc/logrotate.d
  to vendor specific directory /usr/etc/logrotate.d.</changelog>
  <changelog author="Stefan Schubert &lt;schubi@suse.com&gt;" date="1662033600">- Migration to /usr/etc: Saving user changed configuration files
  in /etc and restoring them while an RPM update.</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1663675200">- Remove references to README.QUICKSTART and point them to
  https://en.opensuse.org/SDB:Apache_installation (bsc#1203573)</changelog>
  <changelog author="Stephan Kulow &lt;coolo@suse.com&gt;" date="1663934400">- The 2.4.54 release brought support for PCRE2, but for that we also
  need to change buildrequires to pcre2-devel</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1670846400">- switch to pkgconfig(zlib) so that alternative providers can be
  used</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1674043200">- This update fixes the following security issues:
  * CVE-2022-37436 [bsc#1207251], mod_proxy backend HTTP response splitting
  * CVE-2022-36760 [bsc#1207250], mod_proxy_ajp Possible request smuggling
  * CVE-2006-20001 [bsc#1207247], mod_dav out of bounds read, or write of zero byte
- Update to 2.4.55:
  * ) SECURITY: CVE-2022-37436: Apache HTTP Server: mod_proxy prior to
    2.4.55 allows a backend to trigger HTTP response splitting
    (cve.mitre.org)
    Prior to Apache HTTP Server 2.4.55, a malicious backend can
    cause the response headers to be truncated early, resulting in
    some headers being incorporated into the response body. If the
    later headers have any security purpose, they will not be
    interpreted by the client.
    Credits: Dimas Fariski Setyawan Putra (@nyxsorcerer)
  * ) SECURITY: CVE-2022-36760: Apache HTTP Server: mod_proxy_ajp
    Possible request smuggling (cve.mitre.org)
    Inconsistent Interpretation of HTTP Requests ('HTTP Request
    Smuggling') vulnerability in mod_proxy_ajp of Apache HTTP Server
    allows an attacker to smuggle requests to the AJP server it
    forwards requests to.  This issue affects Apache HTTP Server
    Apache HTTP Server 2.4 version 2.4.54 and prior versions.
    Credits: ZeddYu_Lu from Qi'anxin Research Institute of Legendsec
    at Qi'anxin Group
  * ) SECURITY: CVE-2006-20001: mod_dav out of  bounds read, or write
    of zero byte (cve.mitre.org)
    A carefully crafted If: request header can cause a memory read,
    or write of a single zero byte, in a pool (heap) memory location
    beyond the header value sent. This could cause the process to
    crash.
    This issue affects Apache HTTP Server 2.4.54 and earlier.
  * ) mod_dav: Open the lock database read-only when possible.
    PR 36636 [Wilson Felipe &lt;wfelipe gmail.com&gt;, manu]
  * ) mod_proxy_http2: apply the standard httpd content type handling
    to responses from the backend, as other proxy modules do. Fixes PR 66391.
    Thanks to Jérôme Billiras for providing the patch.
    [Stefan Eissing]
  * ) mod_dav: mod_dav overrides dav_fs response on PUT failure. PR 35981
    [Basant Kumar Kukreja &lt;basant.kukreja sun.com&gt;, Alejandro Alvarez
    &lt;alejandro.alvarez.ayllon cern.ch&gt;]
  * ) mod_proxy_hcheck: Honor worker timeout settings.  [Yann Ylavic]
  * ) mod_http2: version 2.0.10 of the module, synchronizing changes
    with the gitgub version. This is a partial rewrite of how connections
    and streams are handled.
  - an APR pollset and pipes (where supported) are used to monitor
    the main connection and react to IO for request/response handling.
    This replaces the stuttered timed waits of earlier versions.
  - H2SerializeHeaders directive still exists, but has no longer an effect.
  - Clients that seemingly misbehave still get less resources allocated,
    but ongoing requests are no longer disrupted.
  - Fixed an issue since 1.15.24 that "Server" headers in proxied requests
    were overwritten instead of preserved. [PR by @daum3ns]
  - A regression in v1.15.24 was fixed that could lead to httpd child
    processes not being terminated on a graceful reload or when reaching
    MaxConnectionsPerChild. When unprocessed h2 requests were queued at
    the time, these could stall. See #212.
  - Improved information displayed in 'server-status' for H2 connections when
    Extended Status is enabled. Now one can see the last request that IO
    operations happened on and transferred IO stats are updated as well.
  - When reaching server limits, such as MaxRequestsPerChild, the HTTP/2 connection
    send a GOAWAY frame much too early on new connections, leading to invalid
    protocol state and a client failing the request. See PR65731 at
    &lt;https://bz.apache.org/bugzilla/show_bug.cgi?id=65731&gt;.
    The module now initializes the HTTP/2 protocol correctly and allows the
    client to submit one request before the shutdown via a GOAWAY frame
    is being announced.
  - :scheme pseudo-header values, not matching the
    connection scheme, are forwarded via absolute uris to the
    http protocol processing to preserve semantics of the request.
    Checks on combinations of pseudo-headers values/absence
    have been added as described in RFC 7540. Fixes #230.
  - A bug that prevented trailers (e.g. HEADER frame at the end) to be
    generated in certain cases was fixed. See #233 where it prevented
    gRPC responses to be properly generated.
  - Request and response header values are automatically stripped of leading
    and trialing space/tab characters. This is equivalent behaviour to what
    Apache httpd's http/1.1 parser does.
    The checks for this in nghttp2 v1.50.0+ are disabled.
  - Extensive testing in production done by Alessandro Bianchi (@alexskynet)
    on the v2.0.x versions for stability. Many thanks!
  * ) mod_proxy_http2: fixed #235 by no longer forwarding 'Host:' header when
    request ':authority' is known. Improved test case that did not catch that
    the previous 'fix' was incorrect.
  * ) mod_proxy_hcheck: hcmethod now allows for HTTP/1.1 requests
    using GET11, HEAD11 and/or OPTIONS11. [Jim Jagielski]
  * ) mod_proxy: The AH03408 warning for a forcibly closed backend
    connection is now logged at INFO level.  [Yann Ylavic]
  * ) mod_ssl: When dumping the configuration, the existence of
    certificate/key files is no longer tested.  [Joe Orton]
  * ) mod_authn_core: Add expression support to AuthName and AuthType.
    [Graham Leggett]
  * ) mod_ssl: when a proxy connection had handled a request using SSL, an
    error was logged when "SSLProxyEngine" was only configured in the
    location/proxy section and not the overall server. The connection
    continued to work, the error log was in error. Fixed PR66190.
    [Stefan Eissing]
  * ) mod_proxy_hcheck: Re-enable workers in standard ERROR state. PR 66302.
    [Alessandro Cavaliere &lt;alessandro.cavalier7 unibo.it&gt;]
  * ) mod_proxy_hcheck: Detect AJP/CPING support correctly. PR 66300.
    [Alessandro Cavaliere &lt;alessandro.cavalier7 unibo.it&gt;]
  * ) mod_http2: Export mod_http2.h as public header. [Stefan Eissing]
  * ) mod_md: a new directive `MDStoreLocks` can be used on cluster
    setups with a shared file system for `MDStoreDir` to order
    activation of renewed certificates when several cluster nodes are
    restarted at the same time. Store locks are not enabled by default.
    Restored curl_easy cleanup behaviour from v2.4.14 and refactored
    the use of curl_multi for OCSP requests to work with that.
    Fixes &lt;https://github.com/icing/mod_md/issues/293&gt;.
  * ) core: Avoid an overflow on large inputs in ap_is_matchexp.  PR 66033
    [Ruediger Pluem]
  * ) mod_heartmonitor: Allow "HeartbeatMaxServers 0" to use file based
    storage instead of slotmem. Needed after setting
    HeartbeatMaxServers default to the documented value 10 in 2.4.54.
    PR 66131.  [Jérôme Billiras]
  * ) mod_dav: DAVlockDiscovery option to disable WebDAV lock discovery
    This is a game changer for performances if client use PROPFIND a lot,
    PR 66313. [Emmanuel Dreyfus]</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1678276800">- This update fixes the following security issues:
  * CVE-2023-27522 [bsc#1209049]: mod_proxy_uwsgi HTTP response splitting
  * CVE-2023-25690 [bsc#1209047]: HTTP request splitting with mod_rewrite and mod_proxy
- Update to 2.4.56:
  * ) rotatelogs: Add -T flag to allow subsequent rotated logfiles to be
    truncated without the initial logfile being truncated.  [Eric Covener]
  * ) mod_ldap: LDAPConnectionPoolTTL should accept negative values in order to
    allow connections of any age to be reused. Up to now, a negative value
    was handled as an error when parsing the configuration file.  PR 66421.
    [nailyk &lt;bzapache nailyk.fr&gt;, Christophe Jaillet]
  * ) mod_proxy_ajp: Report an error if the AJP backend sends an invalid number
    of headers. [Ruediger Pluem]
  * ) mod_md:
  - Enabling ED25519 support and certificate transparency information when
    building with libressl v3.5.0 and newer. Thanks to Giovanni Bechis.
  - MDChallengeDns01 can now be configured for individual domains.
    Thanks to Jérôme Billiras (@bilhackmac) for the initial PR.
  - Fixed a bug found by Jérôme Billiras (@bilhackmac) that caused the challenge
    teardown not being invoked as it should.
    [Stefan Eissing]
  * ) mod_http2: client resets of HTTP/2 streams led to unwanted 500 errors
    reported in access logs and error documents. The processing of the
    reset was correct, only unneccesary reporting was caused.
    [Stefan Eissing]
  * ) mod_proxy_uwsgi: Stricter backend HTTP response parsing/validation.
    [Yann Ylavic]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1680868800">- Update to 2.4.57:
  * ) mod_proxy: Check before forwarding that a nocanon path has not been
    rewritten with spaces during processing.  [Yann Ylavic]
  * ) mod_proxy: In case that AllowEncodedSlashes is set to NoDecode do not
    double encode encoded slashes in the URL sent by the reverse proxy to the
    backend. [Ruediger Pluem]
  * ) mod_http2: fixed a crash during connection termination. See PR 66539.
    [Stefan Eissing]
  * ) mod_rewrite: Fix a 2.4.56 regression for substitutions ending
    in a question mark. PR66547. [Eric Covener]
  * ) mod_rewrite: Add "BCTLS" and "BNE" RewriteRule flags. Re-allow encoded
    characters on redirections without the "NE" flag.
    [Yann Ylavic, Eric Covener]
  * ) mod_proxy: Fix double encoding of the uri-path of the request forwarded
    to the origin server, when using mapping=encoded|servlet.  [Yann Ylavic]
  * ) mod_mime: Do not match the extention against possible query string
    parameters in case ProxyPass was used with the nocanon option.
    [Ruediger Pluem]</changelog>
  <changelog author="Dirk Stoecker &lt;opensuse@dstoecker.de&gt;" date="1691236800">- Enable building of mod_md</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1697716800">- Update to 2.4.58:
  * ) SECURITY: CVE-2023-45802: Apache HTTP Server: HTTP/2 stream
    memory not reclaimed right away on RST (cve.mitre.org)
    When a HTTP/2 stream was reset (RST frame) by a client, there
    was a time window were the request's memory resources were not
    reclaimed immediately. Instead, de-allocation was deferred to
    connection close. A client could send new requests and resets,
    keeping the connection busy and open and causing the memory
    footprint to keep on growing. On connection close, all resources
    were reclaimed, but the process might run out of memory before
    that.
    This was found by the reporter during testing of CVE-2023-44487
    (HTTP/2 Rapid Reset Exploit) with their own test client. During
    "normal" HTTP/2 use, the probability to hit this bug is very
    low. The kept memory would not become noticeable before the
    connection closes or times out.
    Users are recommended to upgrade to version 2.4.58, which fixes
    the issue.
    Credits: Will Dormann of Vul Labs
  * ) SECURITY: CVE-2023-43622: Apache HTTP Server: DoS in HTTP/2 with
    initial windows size 0 (cve.mitre.org)
    An attacker, opening a HTTP/2 connection with an initial window
    size of 0, was able to block handling of that connection
    indefinitely in Apache HTTP Server. This could be used to
    exhaust worker resources in the server, similar to the well
    known "slow loris" attack pattern.
    This has been fixed in version 2.4.58, so that such connection
    are terminated properly after the configured connection timeout.
    This issue affects Apache HTTP Server: from 2.4.55 through
    2.4.57.
    Users are recommended to upgrade to version 2.4.58, which fixes
    the issue.
    Credits: Prof. Sven Dietrich (City University of New York)
  * ) SECURITY: CVE-2023-31122: mod_macro buffer over-read
    (cve.mitre.org)
    Out-of-bounds Read vulnerability in mod_macro of Apache HTTP
    Server.This issue affects Apache HTTP Server: through 2.4.57.
    Credits: David Shoon (github/davidshoon)
  * ) mod_ssl: Silence info log message "SSL Library Error: error:0A000126:
    SSL routines::unexpected eof while reading" when using
    OpenSSL 3 by setting SSL_OP_IGNORE_UNEXPECTED_EOF if
    available. [Rainer Jung]
  * ) mod_http2: improved early cleanup of streams.
    [Stefan Eissing]
  * ) mod_proxy_http2: improved error handling on connection errors while
    response is already underway.
    [Stefan Eissing]
  * ) mod_http2: fixed a bug that could lead to a crash in main connection
    output handling. This occured only when the last request on a HTTP/2
    connection had been processed and the session decided to shut down.
    This could lead to an attempt to send a final GOAWAY while the previous
    write was still in progress. See PR 66646.
    [Stefan Eissing]
  * ) mod_proxy_http2: fix `X-Forward-Host` header to carry the correct value.
    Fixes PR66752.
    [Stefan Eissing]
  * ) mod_http2: added support for bootstrapping WebSockets via HTTP/2, as
    described in RFC 8441. A new directive 'H2WebSockets on|off' has been
    added. The feature is by default not enabled.
    As also discussed in the manual, this feature should work for setups
    using "ProxyPass backend-url upgrade=websocket" without further changes.
    Special server modules for WebSockets will have to be adapted,
    most likely, as the handling if IO events is different with HTTP/2.
    HTTP/2 WebSockets are supported on platforms with native pipes. This
    excludes Windows.
    [Stefan Eissing]
  * ) mod_rewrite: Fix a regression with both a trailing ? and [QSA].
    in OCSP stapling. PR 66672. [Frank Meier &lt;frank.meier ergon.ch&gt;, covener]
  * ) mod_http2: fixed a bug in flushing pending data on an already closed
    connection that could lead to a busy loop, preventing the HTTP/2 session
    to close down successfully. Fixed PR 66624.
    [Stefan Eissing]
  * ) mod_http2: v2.0.15 with the following fixes and improvements
  - New directive 'H2EarlyHint name value' to add headers to a response,
    picked up already when a "103 Early Hints" response is sent. 'name' and
    'value' must comply to the HTTP field restrictions.
    This directive can be repeated several times and header fields of the
    same names add. Sending a 'Link' header with 'preload' relation will
    also cause a HTTP/2 PUSH if enabled and supported by the client.
  - Fixed an issue where requests were not logged and accounted in a timely
    fashion when the connection returns to "keepalive" handling, e.g. when
    the request served was the last outstanding one.
    This led to late appearance in access logs with wrong duration times
    reported.
  - Accurately report the bytes sent for a request in the '%O' Log format.
    This addresses #203, a long outstanding issue where mod_h2 has reported
    numbers over-eagerly from internal buffering and not what has actually
    been placed on the connection.
    The numbers are now the same with and without H2CopyFiles enabled.
    [Stefan Eissing]
  * ) mod_proxy_http2: fix retry handling to not leak temporary errors.
    On detecting that that an existing connection was shutdown by the other
    side, a 503 response leaked even though the request was retried on a
    fresh connection.
    [Stefan Eissing]
  * ) mod_rewrite: Add server directory to include path as mod_rewrite requires
    test_char.h. PR 66571 [Valeria Petrov &lt;valeria.petrov@spinetix.com&gt;]
  * ) mod_http2: new directive `H2ProxyRequests on|off` to enable handling
    of HTTP/2 requests in a forward proxy configuration.
    General forward proxying is enabled via `ProxyRequests`. If the
    HTTP/2 protocol is also enabled for such a server/host, this new
    directive is needed in addition.
    [Stefan Eissing]
  * ) core: Updated conf/mime.types:
  - .js moved from 'application/javascript' to 'text/javascript'
  - .mjs was added as 'text/javascript'
  - add .opus ('audio/ogg')
  - add 'application/vnd.geogebra.slides'
  - add WebAssembly MIME types and extension
    [Mathias Bynens &lt;@mathiasbynens&gt; via PR 318,
    Richard de Boer &lt;richard tubul.net&gt;, Dave Hodder &lt;dmh dmh.org.uk&gt;,
    Zbynek Konecny &lt;zbynek1729 gmail.com&gt;]
  * ) mod_proxy_http2: fixed using the wrong "bucket_alloc" from the backend
    connection when sending data on the frontend one. This caused crashes
    or infinite loops in rare situations.
  * ) mod_proxy_http2: fixed a bug in retry/response handling that could lead
    to wrong status codes or HTTP messages send at the end of response bodies
    exceeding the announced content-length.
  * ) mod_proxy_http2: fix retry handling to not leak temporary errors.
    On detecting that that an existing connection was shutdown by the other
    side, a 503 response leaked even though the request was retried on a
    fresh connection.
  * ) mod_http2: fixed a bug that did cleanup of consumed and pending buckets in
    the wrong order when a bucket_beam was destroyed.
    [Stefan Eissing]
  * ) mod_http2: avoid double chunked-encoding on internal redirects.
    PR 66597 [Yann Ylavic, Stefan Eissing]
  * ) mod_http2: Fix reporting of `Total Accesses` in server-status to not count
    HTTP/2 requests twice. Fixes PR 66801.
    [Stefan Eissing]
  * ) mod_ssl: Fix handling of Certificate Revoked messages
    in OCSP stapling. PR 66626. [&lt;gmoniker gmail.com&gt;]
  * ) mod_http2: fixed a bug in handling of stream timeouts.
    [Stefan Eissing]
  * ) mod_tls: updating to rustls-ffi version 0.9.2 or higher.
    Checking in configure for proper version installed. Code
    fixes for changed clienthello member name.
    [Stefan Eissing]
  * ) mod_md:
  - New directive `MDMatchNames all|servernames` to allow more control over how
    MDomains are matched to VirtualHosts.
  - New directive `MDChallengeDns01Version`. Setting this to `2` will provide
    the command also with the challenge value on `teardown` invocation. In version
    1, the default, only the `setup` invocation gets this parameter.
    Refs #312. Thanks to @domrim for the idea.
  - For Managed Domain in "manual" mode, the checks if all used ServerName and
    ServerAlias are part of the MDomain now reports a warning instead of an error
    (AH10040) when not all names are present.
  - MDChallengeDns01 can now be configured for individual domains.
    Using PR from JÃ©rÃ´me Billiras (@bilhackmac) and adding test case and fixing proper working
  - Fixed a bug found by JÃ©rÃ´me Billiras (@bilhackmac) that caused the challenge
    teardown not being invoked as it should.
  * ) mod_ldap: Avoid performance overhead of APR-util rebind cache for
    OpenLDAP 2.2+.  PR 64414.  [Joe Orton]
  * ) mod_http2: new directive 'H2MaxDataFrameLen n' to limit the maximum
    amount of response body bytes put into a single HTTP/2 DATA frame.
    Setting this to 0 places no limit (but the max size allowed by the
    protocol is observed).
    The module, by default, tries to use the maximum size possible, which is
    somewhat around 16KB. This sets the maximum. When less response data is
    available, smaller frames will be sent.
  * ) mod_md: fixed passing of the server environment variables to programs
    started via MDMessageCmd and MDChallengeDns01 on *nix system.
    See &lt;https://github.com/icing/mod_md/issues/319&gt;.
    [Stefan Eissing]
  * ) mod_dav: Add DavBasePath directive to configure the repository root
    path.  PR 35077.  [Joe Orton]
  * ) mod_alias: Add AliasPreservePath directive to map the full
    path after the alias in a location. [Graham Leggett]
  * ) mod_alias: Add RedirectRelative to allow relative redirect targets to be
    issued as-is. [Eric Covener, Graham Leggett]
  * ) core: Add formats %{z} and %{strftime-format} to ErrorLogFormat, and make
    sure that if the format is configured early enough it applies to every log
    line.  PR 62161.  [Yann Ylavic]
  * ) mod_deflate: Add DeflateAlterETag to control how the ETag
    is modified. The 'NoChange' parameter mimics 2.2.x behavior.
    PR 45023, PR 39727. [Eric Covener]
  * ) core: Optimize send_brigade_nonblocking(). [Yann Ylavic, Christophe Jaillet]
  * ) mod_status: Remove duplicate keys "BusyWorkers" and "IdleWorkers".
    Resolve inconsistency between the previous two occurrences by
    counting workers in state SERVER_GRACEFUL no longer as busy,
    but instead in a new counter "GracefulWorkers" (or on HTML
    view as "workers gracefully restarting"). Also add the graceful
    counter as a new column to the existing HTML per process table
    for async MPMs. PR 63300. [Rainer Jung]</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1706529600">- use grep -E for egrep</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1708430400">- Use %autosetup macro. Allows to eliminate the usage of deprecated
  %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1712232000">- Update to 2.4.59:
  * ) mod_deflate: Fixes and better logging for handling various
    error and edge cases. [Eric Covener, Yann Ylavic, Joe Orton,
    Eric Norris &lt;enorris etsy.com&gt;]
  * ) Add CGIScriptTimeout to mod_cgi. [Eric Covener]
  * ) mod_xml2enc: Tolerate libxml2 2.12.0 and later.  PR 68610
    [ttachi &lt;tachihara AT hotmail.com&gt;]
  * ) mod_slotmem_shm: Use ap_os_is_path_absolute() to make it portable.
    [Jean-Frederic Clere]
  * ) mod_ssl: Use OpenSSL-standard functions to assemble CA
    name lists for SSLCACertificatePath/SSLCADNRequestPath.
    Names will now be consistently sorted. PR 61574.
    [Joe Orton]
  * ) mod_xml2enc: Update check to accept any text/ media type
    or any XML media type per RFC 7303, avoiding
    corruption of Microsoft OOXML formats.  PR 64339.
    [Joseph Heenan &lt;joseph.heenan fintechlabs.io&gt;, Joe Orton]
  * ) mod_http2: v2.0.26 with the following fixes:
  - Fixed `Date` header on requests upgraded from HTTP/1.1 (h2c). Fixes
    &lt;https://github.com/icing/mod_h2/issues/272&gt;.
  - Fixed small memory leak in h2 header bucket free. Thanks to
    Michael Kaufmann for finding this and providing the fix.
  * ) htcacheclean: In -a/-A mode, list all files per subdirectory
    rather than only one. PR 65091.
    [Artem Egorenkov &lt;aegorenkov.91 gmail.com&gt;]
  * ) mod_ssl: SSLProxyMachineCertificateFile/Path may reference files
    which include CA certificates; those CA certs are treated as if
    configured with SSLProxyMachineCertificateChainFile.  [Joe Orton]
  * ) htpasswd, htdbm, dbmmanage: Update help&amp;docs to refer to
    "hashing", rather than "encrypting" passwords.
    [Michele Preziuso &lt;mpreziuso kaosdynamics.com&gt;]
  * ) mod_ssl: Fix build with LibreSSL 2.0.7+. PR 64047.
    [Giovanni Bechis, Yann Ylavic]
  * ) htpasswd: Add support for passwords using SHA-2.  [Joe Orton,
    Yann Ylavic]
  * ) core: Allow mod_env to override system environment vars. [Joe Orton]
  * ) Allow mod_dav_fs to tolerate race conditions between PROPFIND and an
    operation which removes a directory/file between apr_dir_read() and
    apr_stat(). Current behaviour is to abort the connection which seems
    inferior to tolerating (and logging) the error. [Joe Orton]
  * ) mod_ldap: HTML-escape data in the ldap-status handler.
    [Eric Covener, Chamal De Silva]
  * ) mod_ssl: Disable the OpenSSL ENGINE API when OPENSSL_NO_ENGINE is set.
    Allow for "SSLCryptoDevice builtin" if the ENGINE API is not available,
    notably with OpenSSL &gt;= 3.  PR 68080.  [Yann Ylavic, Joe Orton]
  * ) mod_ssl: Improve compatibility with OpenSSL 3, fix build warnings about
    deprecated ENGINE_ API, honor OPENSSL_API_COMPAT setting while defaulting
    to compatibitily with version 1.1.1 (including ENGINEs / SSLCryptoDevice).
    [Yann Ylavic]
  * ) mod_ssl: release memory to the OS when needed. [Giovanni Bechis]
  * ) mod_proxy: Ignore (and warn about) enablereuse=on for ProxyPassMatch when
    some dollar substitution (backreference) happens in the hostname or port
    part of the URL.  [Yann Ylavic]
  * ) mod_proxy: Allow to set a TTL for how long DNS resolutions to backend
    systems are cached. [Yann Ylavic]
  * ) mod_proxy: Add optional third argument for ProxyRemote, which
    configures Basic authentication credentials to pass to the remote
    proxy.  PR 37355.  [Joe Orton]</changelog>
  <changelog author="pgajdos@suse.com" date="1718280000">- added patches [bsc#1226217]
  https://github.com/apache/httpd/pull/444/commits/c2fffd29b0f58bdc9caaaff4fec68e17a676f182
  + apache2-issue-444.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1720094400">- Update to 2.4.61
  * ) SECURITY: CVE-2024-39884: Apache HTTP Server: source code
    disclosure with handlers configured via AddType (cve.mitre.org)
    [boo#1227353]
    A regression in the core of Apache HTTP Server 2.4.60 ignores
    some use of the legacy content-type based configuration of
    handlers.   "AddType" and similar configuration, under some
    circumstances where files are requested indirectly, result in
    source code disclosure of local content. For example, PHP
    scripts may be served instead of interpreted.
    Users are recommended to upgrade to version 2.4.61, which fixes
    this issue.
- Update to 2.4.60
  * ) SECURITY: CVE-2024-39573: Apache HTTP Server: mod_rewrite proxy
    handler substitution (cve.mitre.org) [boo#1227271]
    Potential SSRF in mod_rewrite in Apache HTTP Server 2.4.59 and
    earlier allows an attacker to cause unsafe RewriteRules to
    unexpectedly setup URL's to be handled by mod_proxy.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38477: Apache HTTP Server: Crash resulting in
    Denial of Service in mod_proxy via a malicious request
    (cve.mitre.org) [boo#1227270]
    null pointer dereference in mod_proxy in Apache HTTP Server
    2.4.59 and earlier allows an attacker to crash the server via a
    malicious request.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38476: Apache HTTP Server may use
    exploitable/malicious backend application output to run local
    handlers via internal redirect (cve.mitre.org) [boo#1227269]
    Vulnerability in core of Apache HTTP Server 2.4.59 and earlier
    are vulnerably to information disclosure, SSRF or local script
    execution via backend applications whose response headers are
    malicious or exploitable.
    Note: Some legacy uses of the 'AddType' directive to connect a
    request to a handler must be ported to 'AddHandler' after this fix.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38475: Apache HTTP Server weakness in
    mod_rewrite when first segment of substitution matches
    filesystem path. (cve.mitre.org) [boo#1227268]
    Improper escaping of output in mod_rewrite in Apache HTTP Server
    2.4.59 and earlier allows an attacker to map URLs to filesystem
    locations that are permitted to be served by the server but are
    not intentionally/directly reachable by any URL, resulting in
    code execution or source code disclosure.
    Substitutions in server context that use a backreferences or
    variables as the first segment of the substitution are affected.
    Some unsafe RewiteRules will be broken by this change and the
    rewrite flag "UnsafePrefixStat" can be used to opt back in once
    ensuring the substitution is appropriately constrained.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38474: Apache HTTP Server weakness with
    encoded question marks in backreferences (cve.mitre.org)
    [boo#1227278]
    Substitution encoding issue in mod_rewrite in Apache HTTP Server
    2.4.59 and earlier allows attacker to execute scripts in
    directories permitted by the configuration but not directly
    reachable by any URL or source disclosure of scripts meant to
    only to be executed as CGI.
    Note: Some RewriteRules that capture and substitute unsafely will now
    fail unless rewrite flag "UnsafeAllow3F" is specified.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38473: Apache HTTP Server proxy encoding
    problem (cve.mitre.org) [boo#1227276]
    Encoding problem in mod_proxy in Apache HTTP Server 2.4.59 and
    earlier allows request URLs with incorrect encoding to be sent
    to backend services, potentially bypassing authentication via
    crafted requests.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38472: Apache HTTP Server on WIndows UNC SSRF
    (cve.mitre.org) [boo#1227267]
    SSRF in Apache HTTP Server on Windows allows to potentially leak
    NTML hashes to a malicious server via SSRF and malicious
    requests or content
    Note: Existing configurations that access UNC paths
    will have to configure new directive "UNCList" to allow access
    during request processing.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-36387: Apache HTTP Server: DoS by Null
    pointer in websocket over HTTP/2 (cve.mitre.org) [boo#1227272]
    Serving WebSocket protocol upgrades over a HTTP/2 connection
    could result in a Null Pointer dereference, leading to a crash
    of the server process, degrading performance.
    Credits: Marc Stern (&lt;marc.stern AT approach-cyber.com&gt;)
  * ) mod_proxy: Fix DNS requests and connections closed before the
    configured addressTTL.  BZ 69126.  [Yann Ylavic]
  * ) core: On Linux, log the real thread ID in error logs.  [Joe Orton]
  * ) core: Support zone/scope in IPv6 link-local addresses in Listen and
    VirtualHost directives (requires APR 1.7.x or later).  PR 59396
    [Joe Orton]
  * ) mod_ssl: Reject client-initiated renegotiation with a TLS alert
    (rather than connection closure).  [Joe Orton, Yann Ylavic]
  * ) Updated mime.types.  [Mohamed Akram &lt;mohd.akram outlook.com&gt;,
    Adam Silverstein &lt;adamsilverstein earthboundhosting.com&gt;]
  * ) mod_ssl: Fix a regression that causes the default DH parameters for a key
    no longer set and thus effectively disabling DH ciphers when no explicit
    DH parameters are set. PR 68863 [Ruediger Pluem]
  * ) mod_cgid: Optional support for file descriptor passing, fixing
    error log handling (configure --enable-cgid-fdpassing) on Unix
    platforms. PR 54221.  [Joe Orton]
  * ) mod_cgid/mod_cgi: Distinguish script stderr output clearly in
    error logs.  PR 61980.  [Hank Ibell &lt;hwibell gmail.com&gt;]
  * ) mod_tls: update version of rustls-ffi to v0.13.0.
    [Daniel McCarney (@cpu}]
  * ) mod_md:
  - Using OCSP stapling information to trigger certificate renewals. Proposed
    by @frasertweedale.
  - Added directive `MDCheckInterval` to control how often the server checks
    for detected revocations. Added proposals for configurations in the
    README.md chapter "Revocations".
  - OCSP stapling: accept OCSP responses without a `nextUpdate` entry which is
    allowed in RFC 6960. Treat those as having an update interval of 12 hours.
    Added by @frasertweedale.
  - Adapt OpenSSL usage to changes in their API. By Yann Ylavic.
- removed patches (upstreamed)
  - apache2-issue-444.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- Update to 2.4.62
  * ) SECURITY: CVE-2024-40898: Apache HTTP Server: SSRF with
    mod_rewrite in server/vhost context on Windows (cve.mitre.org)
    [boo#1228098]
    SSRF in Apache HTTP Server on Windows with mod_rewrite in
    server/vhost context, allows to potentially leak NTML hashes to
    a malicious server via SSRF and malicious requests.
    Users are recommended to upgrade to version 2.4.62 which fixes
    this issue.
    Credits: Smi1e (DBAPPSecurity Ltd.)
  * ) SECURITY: CVE-2024-40725: Apache HTTP Server: source code
    disclosure with handlers configured via AddType (cve.mitre.org)
    [boo#1228097]
    A partial fix for  CVE-2024-39884 in the core of Apache HTTP
    Server 2.4.61 ignores some use of the legacy content-type based
    configuration of handlers. "AddType" and similar configuration,
    under some circumstances where files are requested indirectly,
    result in source code disclosure of local content. For example,
    PHP scripts may be served instead of interpreted.
    Users are recommended to upgrade to version 2.4.62, which fixes
    this issue.
  * ) mod_proxy: Fix canonicalisation and FCGI env (PATH_INFO, SCRIPT_NAME) for
    "balancer:" URLs set via SetHandler, also allowing for "unix:" sockets
    with BalancerMember(s).  PR 69168.  [Yann Ylavic]
  * ) mod_proxy: Avoid AH01059 parsing error for SetHandler "unix:" URLs.
    PR 69160 [Yann Ylavic]
  * ) mod_ssl: Fix crashes in PKCS#11 ENGINE support with OpenSSL 3.2.
    [Joe Orton]
  * ) mod_ssl: Add support for loading certs/keys from pkcs11: URIs
    via OpenSSL 3.x providers.  [Ingo Franzki &lt;ifranzki linux.ibm.com&gt;]
  * ) mod_ssl: Restore SSL dumping on trace7 loglevel with OpenSSL &gt;= 3.0.
    [Ruediger Pluem, Yann Ylavic]
  * ) mpm_worker: Fix possible warning (AH00045) about children processes not
    terminating timely.  [Yann Ylavic]</changelog>
  <changelog author="Thorsten Kukuk &lt;kukuk@suse.com&gt;" date="1727697600">- Add /srv/www directories to filelist [bsc#1231027]
  (apache2 will not start since default config uses this directory)</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1730721600">- Explicitly mark start_apache2 as bash-dependent.</changelog>
  <changelog author="Martin Schreiner &lt;martin.schreiner@suse.com&gt;" date="1730808000">- Update httpd-framework to svn1921782.
- Fixes Apache's impact on bsc#1218342.</changelog>
</package>
<package pkgid="b2b78a1677821a1f0fd949db8dd9d6059a12700f83b4f4ad41748dc605b9b1e15632c69796d28cbf9db76f758783627fc24348996121402024a9eb101c14389f" name="apache2-test_prefork" arch="src">
  <version epoch="0" ver="2.4.62" rel="3.1"/>
  <changelog author="pgajdos@suse.com" date="1654689600">- update httpd-framework to svn revision 1898917</changelog>
  <changelog author="Stefan Schubert &lt;schubi@intern&gt;" date="1656417600">- Moved logrotate files from user specific directory /etc/logrotate.d
  to vendor specific directory /usr/etc/logrotate.d.</changelog>
  <changelog author="Stefan Schubert &lt;schubi@suse.com&gt;" date="1662033600">- Migration to /usr/etc: Saving user changed configuration files
  in /etc and restoring them while an RPM update.</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1663675200">- Remove references to README.QUICKSTART and point them to
  https://en.opensuse.org/SDB:Apache_installation (bsc#1203573)</changelog>
  <changelog author="Stephan Kulow &lt;coolo@suse.com&gt;" date="1663934400">- The 2.4.54 release brought support for PCRE2, but for that we also
  need to change buildrequires to pcre2-devel</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1670846400">- switch to pkgconfig(zlib) so that alternative providers can be
  used</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1674043200">- This update fixes the following security issues:
  * CVE-2022-37436 [bsc#1207251], mod_proxy backend HTTP response splitting
  * CVE-2022-36760 [bsc#1207250], mod_proxy_ajp Possible request smuggling
  * CVE-2006-20001 [bsc#1207247], mod_dav out of bounds read, or write of zero byte
- Update to 2.4.55:
  * ) SECURITY: CVE-2022-37436: Apache HTTP Server: mod_proxy prior to
    2.4.55 allows a backend to trigger HTTP response splitting
    (cve.mitre.org)
    Prior to Apache HTTP Server 2.4.55, a malicious backend can
    cause the response headers to be truncated early, resulting in
    some headers being incorporated into the response body. If the
    later headers have any security purpose, they will not be
    interpreted by the client.
    Credits: Dimas Fariski Setyawan Putra (@nyxsorcerer)
  * ) SECURITY: CVE-2022-36760: Apache HTTP Server: mod_proxy_ajp
    Possible request smuggling (cve.mitre.org)
    Inconsistent Interpretation of HTTP Requests ('HTTP Request
    Smuggling') vulnerability in mod_proxy_ajp of Apache HTTP Server
    allows an attacker to smuggle requests to the AJP server it
    forwards requests to.  This issue affects Apache HTTP Server
    Apache HTTP Server 2.4 version 2.4.54 and prior versions.
    Credits: ZeddYu_Lu from Qi'anxin Research Institute of Legendsec
    at Qi'anxin Group
  * ) SECURITY: CVE-2006-20001: mod_dav out of  bounds read, or write
    of zero byte (cve.mitre.org)
    A carefully crafted If: request header can cause a memory read,
    or write of a single zero byte, in a pool (heap) memory location
    beyond the header value sent. This could cause the process to
    crash.
    This issue affects Apache HTTP Server 2.4.54 and earlier.
  * ) mod_dav: Open the lock database read-only when possible.
    PR 36636 [Wilson Felipe &lt;wfelipe gmail.com&gt;, manu]
  * ) mod_proxy_http2: apply the standard httpd content type handling
    to responses from the backend, as other proxy modules do. Fixes PR 66391.
    Thanks to Jérôme Billiras for providing the patch.
    [Stefan Eissing]
  * ) mod_dav: mod_dav overrides dav_fs response on PUT failure. PR 35981
    [Basant Kumar Kukreja &lt;basant.kukreja sun.com&gt;, Alejandro Alvarez
    &lt;alejandro.alvarez.ayllon cern.ch&gt;]
  * ) mod_proxy_hcheck: Honor worker timeout settings.  [Yann Ylavic]
  * ) mod_http2: version 2.0.10 of the module, synchronizing changes
    with the gitgub version. This is a partial rewrite of how connections
    and streams are handled.
  - an APR pollset and pipes (where supported) are used to monitor
    the main connection and react to IO for request/response handling.
    This replaces the stuttered timed waits of earlier versions.
  - H2SerializeHeaders directive still exists, but has no longer an effect.
  - Clients that seemingly misbehave still get less resources allocated,
    but ongoing requests are no longer disrupted.
  - Fixed an issue since 1.15.24 that "Server" headers in proxied requests
    were overwritten instead of preserved. [PR by @daum3ns]
  - A regression in v1.15.24 was fixed that could lead to httpd child
    processes not being terminated on a graceful reload or when reaching
    MaxConnectionsPerChild. When unprocessed h2 requests were queued at
    the time, these could stall. See #212.
  - Improved information displayed in 'server-status' for H2 connections when
    Extended Status is enabled. Now one can see the last request that IO
    operations happened on and transferred IO stats are updated as well.
  - When reaching server limits, such as MaxRequestsPerChild, the HTTP/2 connection
    send a GOAWAY frame much too early on new connections, leading to invalid
    protocol state and a client failing the request. See PR65731 at
    &lt;https://bz.apache.org/bugzilla/show_bug.cgi?id=65731&gt;.
    The module now initializes the HTTP/2 protocol correctly and allows the
    client to submit one request before the shutdown via a GOAWAY frame
    is being announced.
  - :scheme pseudo-header values, not matching the
    connection scheme, are forwarded via absolute uris to the
    http protocol processing to preserve semantics of the request.
    Checks on combinations of pseudo-headers values/absence
    have been added as described in RFC 7540. Fixes #230.
  - A bug that prevented trailers (e.g. HEADER frame at the end) to be
    generated in certain cases was fixed. See #233 where it prevented
    gRPC responses to be properly generated.
  - Request and response header values are automatically stripped of leading
    and trialing space/tab characters. This is equivalent behaviour to what
    Apache httpd's http/1.1 parser does.
    The checks for this in nghttp2 v1.50.0+ are disabled.
  - Extensive testing in production done by Alessandro Bianchi (@alexskynet)
    on the v2.0.x versions for stability. Many thanks!
  * ) mod_proxy_http2: fixed #235 by no longer forwarding 'Host:' header when
    request ':authority' is known. Improved test case that did not catch that
    the previous 'fix' was incorrect.
  * ) mod_proxy_hcheck: hcmethod now allows for HTTP/1.1 requests
    using GET11, HEAD11 and/or OPTIONS11. [Jim Jagielski]
  * ) mod_proxy: The AH03408 warning for a forcibly closed backend
    connection is now logged at INFO level.  [Yann Ylavic]
  * ) mod_ssl: When dumping the configuration, the existence of
    certificate/key files is no longer tested.  [Joe Orton]
  * ) mod_authn_core: Add expression support to AuthName and AuthType.
    [Graham Leggett]
  * ) mod_ssl: when a proxy connection had handled a request using SSL, an
    error was logged when "SSLProxyEngine" was only configured in the
    location/proxy section and not the overall server. The connection
    continued to work, the error log was in error. Fixed PR66190.
    [Stefan Eissing]
  * ) mod_proxy_hcheck: Re-enable workers in standard ERROR state. PR 66302.
    [Alessandro Cavaliere &lt;alessandro.cavalier7 unibo.it&gt;]
  * ) mod_proxy_hcheck: Detect AJP/CPING support correctly. PR 66300.
    [Alessandro Cavaliere &lt;alessandro.cavalier7 unibo.it&gt;]
  * ) mod_http2: Export mod_http2.h as public header. [Stefan Eissing]
  * ) mod_md: a new directive `MDStoreLocks` can be used on cluster
    setups with a shared file system for `MDStoreDir` to order
    activation of renewed certificates when several cluster nodes are
    restarted at the same time. Store locks are not enabled by default.
    Restored curl_easy cleanup behaviour from v2.4.14 and refactored
    the use of curl_multi for OCSP requests to work with that.
    Fixes &lt;https://github.com/icing/mod_md/issues/293&gt;.
  * ) core: Avoid an overflow on large inputs in ap_is_matchexp.  PR 66033
    [Ruediger Pluem]
  * ) mod_heartmonitor: Allow "HeartbeatMaxServers 0" to use file based
    storage instead of slotmem. Needed after setting
    HeartbeatMaxServers default to the documented value 10 in 2.4.54.
    PR 66131.  [Jérôme Billiras]
  * ) mod_dav: DAVlockDiscovery option to disable WebDAV lock discovery
    This is a game changer for performances if client use PROPFIND a lot,
    PR 66313. [Emmanuel Dreyfus]</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1678276800">- This update fixes the following security issues:
  * CVE-2023-27522 [bsc#1209049]: mod_proxy_uwsgi HTTP response splitting
  * CVE-2023-25690 [bsc#1209047]: HTTP request splitting with mod_rewrite and mod_proxy
- Update to 2.4.56:
  * ) rotatelogs: Add -T flag to allow subsequent rotated logfiles to be
    truncated without the initial logfile being truncated.  [Eric Covener]
  * ) mod_ldap: LDAPConnectionPoolTTL should accept negative values in order to
    allow connections of any age to be reused. Up to now, a negative value
    was handled as an error when parsing the configuration file.  PR 66421.
    [nailyk &lt;bzapache nailyk.fr&gt;, Christophe Jaillet]
  * ) mod_proxy_ajp: Report an error if the AJP backend sends an invalid number
    of headers. [Ruediger Pluem]
  * ) mod_md:
  - Enabling ED25519 support and certificate transparency information when
    building with libressl v3.5.0 and newer. Thanks to Giovanni Bechis.
  - MDChallengeDns01 can now be configured for individual domains.
    Thanks to Jérôme Billiras (@bilhackmac) for the initial PR.
  - Fixed a bug found by Jérôme Billiras (@bilhackmac) that caused the challenge
    teardown not being invoked as it should.
    [Stefan Eissing]
  * ) mod_http2: client resets of HTTP/2 streams led to unwanted 500 errors
    reported in access logs and error documents. The processing of the
    reset was correct, only unneccesary reporting was caused.
    [Stefan Eissing]
  * ) mod_proxy_uwsgi: Stricter backend HTTP response parsing/validation.
    [Yann Ylavic]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1680868800">- Update to 2.4.57:
  * ) mod_proxy: Check before forwarding that a nocanon path has not been
    rewritten with spaces during processing.  [Yann Ylavic]
  * ) mod_proxy: In case that AllowEncodedSlashes is set to NoDecode do not
    double encode encoded slashes in the URL sent by the reverse proxy to the
    backend. [Ruediger Pluem]
  * ) mod_http2: fixed a crash during connection termination. See PR 66539.
    [Stefan Eissing]
  * ) mod_rewrite: Fix a 2.4.56 regression for substitutions ending
    in a question mark. PR66547. [Eric Covener]
  * ) mod_rewrite: Add "BCTLS" and "BNE" RewriteRule flags. Re-allow encoded
    characters on redirections without the "NE" flag.
    [Yann Ylavic, Eric Covener]
  * ) mod_proxy: Fix double encoding of the uri-path of the request forwarded
    to the origin server, when using mapping=encoded|servlet.  [Yann Ylavic]
  * ) mod_mime: Do not match the extention against possible query string
    parameters in case ProxyPass was used with the nocanon option.
    [Ruediger Pluem]</changelog>
  <changelog author="Dirk Stoecker &lt;opensuse@dstoecker.de&gt;" date="1691236800">- Enable building of mod_md</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1697716800">- Update to 2.4.58:
  * ) SECURITY: CVE-2023-45802: Apache HTTP Server: HTTP/2 stream
    memory not reclaimed right away on RST (cve.mitre.org)
    When a HTTP/2 stream was reset (RST frame) by a client, there
    was a time window were the request's memory resources were not
    reclaimed immediately. Instead, de-allocation was deferred to
    connection close. A client could send new requests and resets,
    keeping the connection busy and open and causing the memory
    footprint to keep on growing. On connection close, all resources
    were reclaimed, but the process might run out of memory before
    that.
    This was found by the reporter during testing of CVE-2023-44487
    (HTTP/2 Rapid Reset Exploit) with their own test client. During
    "normal" HTTP/2 use, the probability to hit this bug is very
    low. The kept memory would not become noticeable before the
    connection closes or times out.
    Users are recommended to upgrade to version 2.4.58, which fixes
    the issue.
    Credits: Will Dormann of Vul Labs
  * ) SECURITY: CVE-2023-43622: Apache HTTP Server: DoS in HTTP/2 with
    initial windows size 0 (cve.mitre.org)
    An attacker, opening a HTTP/2 connection with an initial window
    size of 0, was able to block handling of that connection
    indefinitely in Apache HTTP Server. This could be used to
    exhaust worker resources in the server, similar to the well
    known "slow loris" attack pattern.
    This has been fixed in version 2.4.58, so that such connection
    are terminated properly after the configured connection timeout.
    This issue affects Apache HTTP Server: from 2.4.55 through
    2.4.57.
    Users are recommended to upgrade to version 2.4.58, which fixes
    the issue.
    Credits: Prof. Sven Dietrich (City University of New York)
  * ) SECURITY: CVE-2023-31122: mod_macro buffer over-read
    (cve.mitre.org)
    Out-of-bounds Read vulnerability in mod_macro of Apache HTTP
    Server.This issue affects Apache HTTP Server: through 2.4.57.
    Credits: David Shoon (github/davidshoon)
  * ) mod_ssl: Silence info log message "SSL Library Error: error:0A000126:
    SSL routines::unexpected eof while reading" when using
    OpenSSL 3 by setting SSL_OP_IGNORE_UNEXPECTED_EOF if
    available. [Rainer Jung]
  * ) mod_http2: improved early cleanup of streams.
    [Stefan Eissing]
  * ) mod_proxy_http2: improved error handling on connection errors while
    response is already underway.
    [Stefan Eissing]
  * ) mod_http2: fixed a bug that could lead to a crash in main connection
    output handling. This occured only when the last request on a HTTP/2
    connection had been processed and the session decided to shut down.
    This could lead to an attempt to send a final GOAWAY while the previous
    write was still in progress. See PR 66646.
    [Stefan Eissing]
  * ) mod_proxy_http2: fix `X-Forward-Host` header to carry the correct value.
    Fixes PR66752.
    [Stefan Eissing]
  * ) mod_http2: added support for bootstrapping WebSockets via HTTP/2, as
    described in RFC 8441. A new directive 'H2WebSockets on|off' has been
    added. The feature is by default not enabled.
    As also discussed in the manual, this feature should work for setups
    using "ProxyPass backend-url upgrade=websocket" without further changes.
    Special server modules for WebSockets will have to be adapted,
    most likely, as the handling if IO events is different with HTTP/2.
    HTTP/2 WebSockets are supported on platforms with native pipes. This
    excludes Windows.
    [Stefan Eissing]
  * ) mod_rewrite: Fix a regression with both a trailing ? and [QSA].
    in OCSP stapling. PR 66672. [Frank Meier &lt;frank.meier ergon.ch&gt;, covener]
  * ) mod_http2: fixed a bug in flushing pending data on an already closed
    connection that could lead to a busy loop, preventing the HTTP/2 session
    to close down successfully. Fixed PR 66624.
    [Stefan Eissing]
  * ) mod_http2: v2.0.15 with the following fixes and improvements
  - New directive 'H2EarlyHint name value' to add headers to a response,
    picked up already when a "103 Early Hints" response is sent. 'name' and
    'value' must comply to the HTTP field restrictions.
    This directive can be repeated several times and header fields of the
    same names add. Sending a 'Link' header with 'preload' relation will
    also cause a HTTP/2 PUSH if enabled and supported by the client.
  - Fixed an issue where requests were not logged and accounted in a timely
    fashion when the connection returns to "keepalive" handling, e.g. when
    the request served was the last outstanding one.
    This led to late appearance in access logs with wrong duration times
    reported.
  - Accurately report the bytes sent for a request in the '%O' Log format.
    This addresses #203, a long outstanding issue where mod_h2 has reported
    numbers over-eagerly from internal buffering and not what has actually
    been placed on the connection.
    The numbers are now the same with and without H2CopyFiles enabled.
    [Stefan Eissing]
  * ) mod_proxy_http2: fix retry handling to not leak temporary errors.
    On detecting that that an existing connection was shutdown by the other
    side, a 503 response leaked even though the request was retried on a
    fresh connection.
    [Stefan Eissing]
  * ) mod_rewrite: Add server directory to include path as mod_rewrite requires
    test_char.h. PR 66571 [Valeria Petrov &lt;valeria.petrov@spinetix.com&gt;]
  * ) mod_http2: new directive `H2ProxyRequests on|off` to enable handling
    of HTTP/2 requests in a forward proxy configuration.
    General forward proxying is enabled via `ProxyRequests`. If the
    HTTP/2 protocol is also enabled for such a server/host, this new
    directive is needed in addition.
    [Stefan Eissing]
  * ) core: Updated conf/mime.types:
  - .js moved from 'application/javascript' to 'text/javascript'
  - .mjs was added as 'text/javascript'
  - add .opus ('audio/ogg')
  - add 'application/vnd.geogebra.slides'
  - add WebAssembly MIME types and extension
    [Mathias Bynens &lt;@mathiasbynens&gt; via PR 318,
    Richard de Boer &lt;richard tubul.net&gt;, Dave Hodder &lt;dmh dmh.org.uk&gt;,
    Zbynek Konecny &lt;zbynek1729 gmail.com&gt;]
  * ) mod_proxy_http2: fixed using the wrong "bucket_alloc" from the backend
    connection when sending data on the frontend one. This caused crashes
    or infinite loops in rare situations.
  * ) mod_proxy_http2: fixed a bug in retry/response handling that could lead
    to wrong status codes or HTTP messages send at the end of response bodies
    exceeding the announced content-length.
  * ) mod_proxy_http2: fix retry handling to not leak temporary errors.
    On detecting that that an existing connection was shutdown by the other
    side, a 503 response leaked even though the request was retried on a
    fresh connection.
  * ) mod_http2: fixed a bug that did cleanup of consumed and pending buckets in
    the wrong order when a bucket_beam was destroyed.
    [Stefan Eissing]
  * ) mod_http2: avoid double chunked-encoding on internal redirects.
    PR 66597 [Yann Ylavic, Stefan Eissing]
  * ) mod_http2: Fix reporting of `Total Accesses` in server-status to not count
    HTTP/2 requests twice. Fixes PR 66801.
    [Stefan Eissing]
  * ) mod_ssl: Fix handling of Certificate Revoked messages
    in OCSP stapling. PR 66626. [&lt;gmoniker gmail.com&gt;]
  * ) mod_http2: fixed a bug in handling of stream timeouts.
    [Stefan Eissing]
  * ) mod_tls: updating to rustls-ffi version 0.9.2 or higher.
    Checking in configure for proper version installed. Code
    fixes for changed clienthello member name.
    [Stefan Eissing]
  * ) mod_md:
  - New directive `MDMatchNames all|servernames` to allow more control over how
    MDomains are matched to VirtualHosts.
  - New directive `MDChallengeDns01Version`. Setting this to `2` will provide
    the command also with the challenge value on `teardown` invocation. In version
    1, the default, only the `setup` invocation gets this parameter.
    Refs #312. Thanks to @domrim for the idea.
  - For Managed Domain in "manual" mode, the checks if all used ServerName and
    ServerAlias are part of the MDomain now reports a warning instead of an error
    (AH10040) when not all names are present.
  - MDChallengeDns01 can now be configured for individual domains.
    Using PR from JÃ©rÃ´me Billiras (@bilhackmac) and adding test case and fixing proper working
  - Fixed a bug found by JÃ©rÃ´me Billiras (@bilhackmac) that caused the challenge
    teardown not being invoked as it should.
  * ) mod_ldap: Avoid performance overhead of APR-util rebind cache for
    OpenLDAP 2.2+.  PR 64414.  [Joe Orton]
  * ) mod_http2: new directive 'H2MaxDataFrameLen n' to limit the maximum
    amount of response body bytes put into a single HTTP/2 DATA frame.
    Setting this to 0 places no limit (but the max size allowed by the
    protocol is observed).
    The module, by default, tries to use the maximum size possible, which is
    somewhat around 16KB. This sets the maximum. When less response data is
    available, smaller frames will be sent.
  * ) mod_md: fixed passing of the server environment variables to programs
    started via MDMessageCmd and MDChallengeDns01 on *nix system.
    See &lt;https://github.com/icing/mod_md/issues/319&gt;.
    [Stefan Eissing]
  * ) mod_dav: Add DavBasePath directive to configure the repository root
    path.  PR 35077.  [Joe Orton]
  * ) mod_alias: Add AliasPreservePath directive to map the full
    path after the alias in a location. [Graham Leggett]
  * ) mod_alias: Add RedirectRelative to allow relative redirect targets to be
    issued as-is. [Eric Covener, Graham Leggett]
  * ) core: Add formats %{z} and %{strftime-format} to ErrorLogFormat, and make
    sure that if the format is configured early enough it applies to every log
    line.  PR 62161.  [Yann Ylavic]
  * ) mod_deflate: Add DeflateAlterETag to control how the ETag
    is modified. The 'NoChange' parameter mimics 2.2.x behavior.
    PR 45023, PR 39727. [Eric Covener]
  * ) core: Optimize send_brigade_nonblocking(). [Yann Ylavic, Christophe Jaillet]
  * ) mod_status: Remove duplicate keys "BusyWorkers" and "IdleWorkers".
    Resolve inconsistency between the previous two occurrences by
    counting workers in state SERVER_GRACEFUL no longer as busy,
    but instead in a new counter "GracefulWorkers" (or on HTML
    view as "workers gracefully restarting"). Also add the graceful
    counter as a new column to the existing HTML per process table
    for async MPMs. PR 63300. [Rainer Jung]</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1706529600">- use grep -E for egrep</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1708430400">- Use %autosetup macro. Allows to eliminate the usage of deprecated
  %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1712232000">- Update to 2.4.59:
  * ) mod_deflate: Fixes and better logging for handling various
    error and edge cases. [Eric Covener, Yann Ylavic, Joe Orton,
    Eric Norris &lt;enorris etsy.com&gt;]
  * ) Add CGIScriptTimeout to mod_cgi. [Eric Covener]
  * ) mod_xml2enc: Tolerate libxml2 2.12.0 and later.  PR 68610
    [ttachi &lt;tachihara AT hotmail.com&gt;]
  * ) mod_slotmem_shm: Use ap_os_is_path_absolute() to make it portable.
    [Jean-Frederic Clere]
  * ) mod_ssl: Use OpenSSL-standard functions to assemble CA
    name lists for SSLCACertificatePath/SSLCADNRequestPath.
    Names will now be consistently sorted. PR 61574.
    [Joe Orton]
  * ) mod_xml2enc: Update check to accept any text/ media type
    or any XML media type per RFC 7303, avoiding
    corruption of Microsoft OOXML formats.  PR 64339.
    [Joseph Heenan &lt;joseph.heenan fintechlabs.io&gt;, Joe Orton]
  * ) mod_http2: v2.0.26 with the following fixes:
  - Fixed `Date` header on requests upgraded from HTTP/1.1 (h2c). Fixes
    &lt;https://github.com/icing/mod_h2/issues/272&gt;.
  - Fixed small memory leak in h2 header bucket free. Thanks to
    Michael Kaufmann for finding this and providing the fix.
  * ) htcacheclean: In -a/-A mode, list all files per subdirectory
    rather than only one. PR 65091.
    [Artem Egorenkov &lt;aegorenkov.91 gmail.com&gt;]
  * ) mod_ssl: SSLProxyMachineCertificateFile/Path may reference files
    which include CA certificates; those CA certs are treated as if
    configured with SSLProxyMachineCertificateChainFile.  [Joe Orton]
  * ) htpasswd, htdbm, dbmmanage: Update help&amp;docs to refer to
    "hashing", rather than "encrypting" passwords.
    [Michele Preziuso &lt;mpreziuso kaosdynamics.com&gt;]
  * ) mod_ssl: Fix build with LibreSSL 2.0.7+. PR 64047.
    [Giovanni Bechis, Yann Ylavic]
  * ) htpasswd: Add support for passwords using SHA-2.  [Joe Orton,
    Yann Ylavic]
  * ) core: Allow mod_env to override system environment vars. [Joe Orton]
  * ) Allow mod_dav_fs to tolerate race conditions between PROPFIND and an
    operation which removes a directory/file between apr_dir_read() and
    apr_stat(). Current behaviour is to abort the connection which seems
    inferior to tolerating (and logging) the error. [Joe Orton]
  * ) mod_ldap: HTML-escape data in the ldap-status handler.
    [Eric Covener, Chamal De Silva]
  * ) mod_ssl: Disable the OpenSSL ENGINE API when OPENSSL_NO_ENGINE is set.
    Allow for "SSLCryptoDevice builtin" if the ENGINE API is not available,
    notably with OpenSSL &gt;= 3.  PR 68080.  [Yann Ylavic, Joe Orton]
  * ) mod_ssl: Improve compatibility with OpenSSL 3, fix build warnings about
    deprecated ENGINE_ API, honor OPENSSL_API_COMPAT setting while defaulting
    to compatibitily with version 1.1.1 (including ENGINEs / SSLCryptoDevice).
    [Yann Ylavic]
  * ) mod_ssl: release memory to the OS when needed. [Giovanni Bechis]
  * ) mod_proxy: Ignore (and warn about) enablereuse=on for ProxyPassMatch when
    some dollar substitution (backreference) happens in the hostname or port
    part of the URL.  [Yann Ylavic]
  * ) mod_proxy: Allow to set a TTL for how long DNS resolutions to backend
    systems are cached. [Yann Ylavic]
  * ) mod_proxy: Add optional third argument for ProxyRemote, which
    configures Basic authentication credentials to pass to the remote
    proxy.  PR 37355.  [Joe Orton]</changelog>
  <changelog author="pgajdos@suse.com" date="1718280000">- added patches [bsc#1226217]
  https://github.com/apache/httpd/pull/444/commits/c2fffd29b0f58bdc9caaaff4fec68e17a676f182
  + apache2-issue-444.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1720094400">- Update to 2.4.61
  * ) SECURITY: CVE-2024-39884: Apache HTTP Server: source code
    disclosure with handlers configured via AddType (cve.mitre.org)
    [boo#1227353]
    A regression in the core of Apache HTTP Server 2.4.60 ignores
    some use of the legacy content-type based configuration of
    handlers.   "AddType" and similar configuration, under some
    circumstances where files are requested indirectly, result in
    source code disclosure of local content. For example, PHP
    scripts may be served instead of interpreted.
    Users are recommended to upgrade to version 2.4.61, which fixes
    this issue.
- Update to 2.4.60
  * ) SECURITY: CVE-2024-39573: Apache HTTP Server: mod_rewrite proxy
    handler substitution (cve.mitre.org) [boo#1227271]
    Potential SSRF in mod_rewrite in Apache HTTP Server 2.4.59 and
    earlier allows an attacker to cause unsafe RewriteRules to
    unexpectedly setup URL's to be handled by mod_proxy.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38477: Apache HTTP Server: Crash resulting in
    Denial of Service in mod_proxy via a malicious request
    (cve.mitre.org) [boo#1227270]
    null pointer dereference in mod_proxy in Apache HTTP Server
    2.4.59 and earlier allows an attacker to crash the server via a
    malicious request.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38476: Apache HTTP Server may use
    exploitable/malicious backend application output to run local
    handlers via internal redirect (cve.mitre.org) [boo#1227269]
    Vulnerability in core of Apache HTTP Server 2.4.59 and earlier
    are vulnerably to information disclosure, SSRF or local script
    execution via backend applications whose response headers are
    malicious or exploitable.
    Note: Some legacy uses of the 'AddType' directive to connect a
    request to a handler must be ported to 'AddHandler' after this fix.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38475: Apache HTTP Server weakness in
    mod_rewrite when first segment of substitution matches
    filesystem path. (cve.mitre.org) [boo#1227268]
    Improper escaping of output in mod_rewrite in Apache HTTP Server
    2.4.59 and earlier allows an attacker to map URLs to filesystem
    locations that are permitted to be served by the server but are
    not intentionally/directly reachable by any URL, resulting in
    code execution or source code disclosure.
    Substitutions in server context that use a backreferences or
    variables as the first segment of the substitution are affected.
    Some unsafe RewiteRules will be broken by this change and the
    rewrite flag "UnsafePrefixStat" can be used to opt back in once
    ensuring the substitution is appropriately constrained.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38474: Apache HTTP Server weakness with
    encoded question marks in backreferences (cve.mitre.org)
    [boo#1227278]
    Substitution encoding issue in mod_rewrite in Apache HTTP Server
    2.4.59 and earlier allows attacker to execute scripts in
    directories permitted by the configuration but not directly
    reachable by any URL or source disclosure of scripts meant to
    only to be executed as CGI.
    Note: Some RewriteRules that capture and substitute unsafely will now
    fail unless rewrite flag "UnsafeAllow3F" is specified.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38473: Apache HTTP Server proxy encoding
    problem (cve.mitre.org) [boo#1227276]
    Encoding problem in mod_proxy in Apache HTTP Server 2.4.59 and
    earlier allows request URLs with incorrect encoding to be sent
    to backend services, potentially bypassing authentication via
    crafted requests.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38472: Apache HTTP Server on WIndows UNC SSRF
    (cve.mitre.org) [boo#1227267]
    SSRF in Apache HTTP Server on Windows allows to potentially leak
    NTML hashes to a malicious server via SSRF and malicious
    requests or content
    Note: Existing configurations that access UNC paths
    will have to configure new directive "UNCList" to allow access
    during request processing.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-36387: Apache HTTP Server: DoS by Null
    pointer in websocket over HTTP/2 (cve.mitre.org) [boo#1227272]
    Serving WebSocket protocol upgrades over a HTTP/2 connection
    could result in a Null Pointer dereference, leading to a crash
    of the server process, degrading performance.
    Credits: Marc Stern (&lt;marc.stern AT approach-cyber.com&gt;)
  * ) mod_proxy: Fix DNS requests and connections closed before the
    configured addressTTL.  BZ 69126.  [Yann Ylavic]
  * ) core: On Linux, log the real thread ID in error logs.  [Joe Orton]
  * ) core: Support zone/scope in IPv6 link-local addresses in Listen and
    VirtualHost directives (requires APR 1.7.x or later).  PR 59396
    [Joe Orton]
  * ) mod_ssl: Reject client-initiated renegotiation with a TLS alert
    (rather than connection closure).  [Joe Orton, Yann Ylavic]
  * ) Updated mime.types.  [Mohamed Akram &lt;mohd.akram outlook.com&gt;,
    Adam Silverstein &lt;adamsilverstein earthboundhosting.com&gt;]
  * ) mod_ssl: Fix a regression that causes the default DH parameters for a key
    no longer set and thus effectively disabling DH ciphers when no explicit
    DH parameters are set. PR 68863 [Ruediger Pluem]
  * ) mod_cgid: Optional support for file descriptor passing, fixing
    error log handling (configure --enable-cgid-fdpassing) on Unix
    platforms. PR 54221.  [Joe Orton]
  * ) mod_cgid/mod_cgi: Distinguish script stderr output clearly in
    error logs.  PR 61980.  [Hank Ibell &lt;hwibell gmail.com&gt;]
  * ) mod_tls: update version of rustls-ffi to v0.13.0.
    [Daniel McCarney (@cpu}]
  * ) mod_md:
  - Using OCSP stapling information to trigger certificate renewals. Proposed
    by @frasertweedale.
  - Added directive `MDCheckInterval` to control how often the server checks
    for detected revocations. Added proposals for configurations in the
    README.md chapter "Revocations".
  - OCSP stapling: accept OCSP responses without a `nextUpdate` entry which is
    allowed in RFC 6960. Treat those as having an update interval of 12 hours.
    Added by @frasertweedale.
  - Adapt OpenSSL usage to changes in their API. By Yann Ylavic.
- removed patches (upstreamed)
  - apache2-issue-444.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- Update to 2.4.62
  * ) SECURITY: CVE-2024-40898: Apache HTTP Server: SSRF with
    mod_rewrite in server/vhost context on Windows (cve.mitre.org)
    [boo#1228098]
    SSRF in Apache HTTP Server on Windows with mod_rewrite in
    server/vhost context, allows to potentially leak NTML hashes to
    a malicious server via SSRF and malicious requests.
    Users are recommended to upgrade to version 2.4.62 which fixes
    this issue.
    Credits: Smi1e (DBAPPSecurity Ltd.)
  * ) SECURITY: CVE-2024-40725: Apache HTTP Server: source code
    disclosure with handlers configured via AddType (cve.mitre.org)
    [boo#1228097]
    A partial fix for  CVE-2024-39884 in the core of Apache HTTP
    Server 2.4.61 ignores some use of the legacy content-type based
    configuration of handlers. "AddType" and similar configuration,
    under some circumstances where files are requested indirectly,
    result in source code disclosure of local content. For example,
    PHP scripts may be served instead of interpreted.
    Users are recommended to upgrade to version 2.4.62, which fixes
    this issue.
  * ) mod_proxy: Fix canonicalisation and FCGI env (PATH_INFO, SCRIPT_NAME) for
    "balancer:" URLs set via SetHandler, also allowing for "unix:" sockets
    with BalancerMember(s).  PR 69168.  [Yann Ylavic]
  * ) mod_proxy: Avoid AH01059 parsing error for SetHandler "unix:" URLs.
    PR 69160 [Yann Ylavic]
  * ) mod_ssl: Fix crashes in PKCS#11 ENGINE support with OpenSSL 3.2.
    [Joe Orton]
  * ) mod_ssl: Add support for loading certs/keys from pkcs11: URIs
    via OpenSSL 3.x providers.  [Ingo Franzki &lt;ifranzki linux.ibm.com&gt;]
  * ) mod_ssl: Restore SSL dumping on trace7 loglevel with OpenSSL &gt;= 3.0.
    [Ruediger Pluem, Yann Ylavic]
  * ) mpm_worker: Fix possible warning (AH00045) about children processes not
    terminating timely.  [Yann Ylavic]</changelog>
  <changelog author="Thorsten Kukuk &lt;kukuk@suse.com&gt;" date="1727697600">- Add /srv/www directories to filelist [bsc#1231027]
  (apache2 will not start since default config uses this directory)</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1730721600">- Explicitly mark start_apache2 as bash-dependent.</changelog>
  <changelog author="Martin Schreiner &lt;martin.schreiner@suse.com&gt;" date="1730808000">- Update httpd-framework to svn1921782.
- Fixes Apache's impact on bsc#1218342.</changelog>
</package>
<package pkgid="b96f3f2f1d87552b28e1256d7586f3d3d7685ac85f79514134ae3a6036407af16382a1fc1160ba32a8b37ce946c7fc08dafe4ced3ded787c42a8c9e7632b8114" name="apache2-test_worker" arch="src">
  <version epoch="0" ver="2.4.62" rel="3.1"/>
  <changelog author="pgajdos@suse.com" date="1654689600">- update httpd-framework to svn revision 1898917</changelog>
  <changelog author="Stefan Schubert &lt;schubi@intern&gt;" date="1656417600">- Moved logrotate files from user specific directory /etc/logrotate.d
  to vendor specific directory /usr/etc/logrotate.d.</changelog>
  <changelog author="Stefan Schubert &lt;schubi@suse.com&gt;" date="1662033600">- Migration to /usr/etc: Saving user changed configuration files
  in /etc and restoring them while an RPM update.</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1663675200">- Remove references to README.QUICKSTART and point them to
  https://en.opensuse.org/SDB:Apache_installation (bsc#1203573)</changelog>
  <changelog author="Stephan Kulow &lt;coolo@suse.com&gt;" date="1663934400">- The 2.4.54 release brought support for PCRE2, but for that we also
  need to change buildrequires to pcre2-devel</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1670846400">- switch to pkgconfig(zlib) so that alternative providers can be
  used</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1674043200">- This update fixes the following security issues:
  * CVE-2022-37436 [bsc#1207251], mod_proxy backend HTTP response splitting
  * CVE-2022-36760 [bsc#1207250], mod_proxy_ajp Possible request smuggling
  * CVE-2006-20001 [bsc#1207247], mod_dav out of bounds read, or write of zero byte
- Update to 2.4.55:
  * ) SECURITY: CVE-2022-37436: Apache HTTP Server: mod_proxy prior to
    2.4.55 allows a backend to trigger HTTP response splitting
    (cve.mitre.org)
    Prior to Apache HTTP Server 2.4.55, a malicious backend can
    cause the response headers to be truncated early, resulting in
    some headers being incorporated into the response body. If the
    later headers have any security purpose, they will not be
    interpreted by the client.
    Credits: Dimas Fariski Setyawan Putra (@nyxsorcerer)
  * ) SECURITY: CVE-2022-36760: Apache HTTP Server: mod_proxy_ajp
    Possible request smuggling (cve.mitre.org)
    Inconsistent Interpretation of HTTP Requests ('HTTP Request
    Smuggling') vulnerability in mod_proxy_ajp of Apache HTTP Server
    allows an attacker to smuggle requests to the AJP server it
    forwards requests to.  This issue affects Apache HTTP Server
    Apache HTTP Server 2.4 version 2.4.54 and prior versions.
    Credits: ZeddYu_Lu from Qi'anxin Research Institute of Legendsec
    at Qi'anxin Group
  * ) SECURITY: CVE-2006-20001: mod_dav out of  bounds read, or write
    of zero byte (cve.mitre.org)
    A carefully crafted If: request header can cause a memory read,
    or write of a single zero byte, in a pool (heap) memory location
    beyond the header value sent. This could cause the process to
    crash.
    This issue affects Apache HTTP Server 2.4.54 and earlier.
  * ) mod_dav: Open the lock database read-only when possible.
    PR 36636 [Wilson Felipe &lt;wfelipe gmail.com&gt;, manu]
  * ) mod_proxy_http2: apply the standard httpd content type handling
    to responses from the backend, as other proxy modules do. Fixes PR 66391.
    Thanks to Jérôme Billiras for providing the patch.
    [Stefan Eissing]
  * ) mod_dav: mod_dav overrides dav_fs response on PUT failure. PR 35981
    [Basant Kumar Kukreja &lt;basant.kukreja sun.com&gt;, Alejandro Alvarez
    &lt;alejandro.alvarez.ayllon cern.ch&gt;]
  * ) mod_proxy_hcheck: Honor worker timeout settings.  [Yann Ylavic]
  * ) mod_http2: version 2.0.10 of the module, synchronizing changes
    with the gitgub version. This is a partial rewrite of how connections
    and streams are handled.
  - an APR pollset and pipes (where supported) are used to monitor
    the main connection and react to IO for request/response handling.
    This replaces the stuttered timed waits of earlier versions.
  - H2SerializeHeaders directive still exists, but has no longer an effect.
  - Clients that seemingly misbehave still get less resources allocated,
    but ongoing requests are no longer disrupted.
  - Fixed an issue since 1.15.24 that "Server" headers in proxied requests
    were overwritten instead of preserved. [PR by @daum3ns]
  - A regression in v1.15.24 was fixed that could lead to httpd child
    processes not being terminated on a graceful reload or when reaching
    MaxConnectionsPerChild. When unprocessed h2 requests were queued at
    the time, these could stall. See #212.
  - Improved information displayed in 'server-status' for H2 connections when
    Extended Status is enabled. Now one can see the last request that IO
    operations happened on and transferred IO stats are updated as well.
  - When reaching server limits, such as MaxRequestsPerChild, the HTTP/2 connection
    send a GOAWAY frame much too early on new connections, leading to invalid
    protocol state and a client failing the request. See PR65731 at
    &lt;https://bz.apache.org/bugzilla/show_bug.cgi?id=65731&gt;.
    The module now initializes the HTTP/2 protocol correctly and allows the
    client to submit one request before the shutdown via a GOAWAY frame
    is being announced.
  - :scheme pseudo-header values, not matching the
    connection scheme, are forwarded via absolute uris to the
    http protocol processing to preserve semantics of the request.
    Checks on combinations of pseudo-headers values/absence
    have been added as described in RFC 7540. Fixes #230.
  - A bug that prevented trailers (e.g. HEADER frame at the end) to be
    generated in certain cases was fixed. See #233 where it prevented
    gRPC responses to be properly generated.
  - Request and response header values are automatically stripped of leading
    and trialing space/tab characters. This is equivalent behaviour to what
    Apache httpd's http/1.1 parser does.
    The checks for this in nghttp2 v1.50.0+ are disabled.
  - Extensive testing in production done by Alessandro Bianchi (@alexskynet)
    on the v2.0.x versions for stability. Many thanks!
  * ) mod_proxy_http2: fixed #235 by no longer forwarding 'Host:' header when
    request ':authority' is known. Improved test case that did not catch that
    the previous 'fix' was incorrect.
  * ) mod_proxy_hcheck: hcmethod now allows for HTTP/1.1 requests
    using GET11, HEAD11 and/or OPTIONS11. [Jim Jagielski]
  * ) mod_proxy: The AH03408 warning for a forcibly closed backend
    connection is now logged at INFO level.  [Yann Ylavic]
  * ) mod_ssl: When dumping the configuration, the existence of
    certificate/key files is no longer tested.  [Joe Orton]
  * ) mod_authn_core: Add expression support to AuthName and AuthType.
    [Graham Leggett]
  * ) mod_ssl: when a proxy connection had handled a request using SSL, an
    error was logged when "SSLProxyEngine" was only configured in the
    location/proxy section and not the overall server. The connection
    continued to work, the error log was in error. Fixed PR66190.
    [Stefan Eissing]
  * ) mod_proxy_hcheck: Re-enable workers in standard ERROR state. PR 66302.
    [Alessandro Cavaliere &lt;alessandro.cavalier7 unibo.it&gt;]
  * ) mod_proxy_hcheck: Detect AJP/CPING support correctly. PR 66300.
    [Alessandro Cavaliere &lt;alessandro.cavalier7 unibo.it&gt;]
  * ) mod_http2: Export mod_http2.h as public header. [Stefan Eissing]
  * ) mod_md: a new directive `MDStoreLocks` can be used on cluster
    setups with a shared file system for `MDStoreDir` to order
    activation of renewed certificates when several cluster nodes are
    restarted at the same time. Store locks are not enabled by default.
    Restored curl_easy cleanup behaviour from v2.4.14 and refactored
    the use of curl_multi for OCSP requests to work with that.
    Fixes &lt;https://github.com/icing/mod_md/issues/293&gt;.
  * ) core: Avoid an overflow on large inputs in ap_is_matchexp.  PR 66033
    [Ruediger Pluem]
  * ) mod_heartmonitor: Allow "HeartbeatMaxServers 0" to use file based
    storage instead of slotmem. Needed after setting
    HeartbeatMaxServers default to the documented value 10 in 2.4.54.
    PR 66131.  [Jérôme Billiras]
  * ) mod_dav: DAVlockDiscovery option to disable WebDAV lock discovery
    This is a game changer for performances if client use PROPFIND a lot,
    PR 66313. [Emmanuel Dreyfus]</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1678276800">- This update fixes the following security issues:
  * CVE-2023-27522 [bsc#1209049]: mod_proxy_uwsgi HTTP response splitting
  * CVE-2023-25690 [bsc#1209047]: HTTP request splitting with mod_rewrite and mod_proxy
- Update to 2.4.56:
  * ) rotatelogs: Add -T flag to allow subsequent rotated logfiles to be
    truncated without the initial logfile being truncated.  [Eric Covener]
  * ) mod_ldap: LDAPConnectionPoolTTL should accept negative values in order to
    allow connections of any age to be reused. Up to now, a negative value
    was handled as an error when parsing the configuration file.  PR 66421.
    [nailyk &lt;bzapache nailyk.fr&gt;, Christophe Jaillet]
  * ) mod_proxy_ajp: Report an error if the AJP backend sends an invalid number
    of headers. [Ruediger Pluem]
  * ) mod_md:
  - Enabling ED25519 support and certificate transparency information when
    building with libressl v3.5.0 and newer. Thanks to Giovanni Bechis.
  - MDChallengeDns01 can now be configured for individual domains.
    Thanks to Jérôme Billiras (@bilhackmac) for the initial PR.
  - Fixed a bug found by Jérôme Billiras (@bilhackmac) that caused the challenge
    teardown not being invoked as it should.
    [Stefan Eissing]
  * ) mod_http2: client resets of HTTP/2 streams led to unwanted 500 errors
    reported in access logs and error documents. The processing of the
    reset was correct, only unneccesary reporting was caused.
    [Stefan Eissing]
  * ) mod_proxy_uwsgi: Stricter backend HTTP response parsing/validation.
    [Yann Ylavic]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1680868800">- Update to 2.4.57:
  * ) mod_proxy: Check before forwarding that a nocanon path has not been
    rewritten with spaces during processing.  [Yann Ylavic]
  * ) mod_proxy: In case that AllowEncodedSlashes is set to NoDecode do not
    double encode encoded slashes in the URL sent by the reverse proxy to the
    backend. [Ruediger Pluem]
  * ) mod_http2: fixed a crash during connection termination. See PR 66539.
    [Stefan Eissing]
  * ) mod_rewrite: Fix a 2.4.56 regression for substitutions ending
    in a question mark. PR66547. [Eric Covener]
  * ) mod_rewrite: Add "BCTLS" and "BNE" RewriteRule flags. Re-allow encoded
    characters on redirections without the "NE" flag.
    [Yann Ylavic, Eric Covener]
  * ) mod_proxy: Fix double encoding of the uri-path of the request forwarded
    to the origin server, when using mapping=encoded|servlet.  [Yann Ylavic]
  * ) mod_mime: Do not match the extention against possible query string
    parameters in case ProxyPass was used with the nocanon option.
    [Ruediger Pluem]</changelog>
  <changelog author="Dirk Stoecker &lt;opensuse@dstoecker.de&gt;" date="1691236800">- Enable building of mod_md</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1697716800">- Update to 2.4.58:
  * ) SECURITY: CVE-2023-45802: Apache HTTP Server: HTTP/2 stream
    memory not reclaimed right away on RST (cve.mitre.org)
    When a HTTP/2 stream was reset (RST frame) by a client, there
    was a time window were the request's memory resources were not
    reclaimed immediately. Instead, de-allocation was deferred to
    connection close. A client could send new requests and resets,
    keeping the connection busy and open and causing the memory
    footprint to keep on growing. On connection close, all resources
    were reclaimed, but the process might run out of memory before
    that.
    This was found by the reporter during testing of CVE-2023-44487
    (HTTP/2 Rapid Reset Exploit) with their own test client. During
    "normal" HTTP/2 use, the probability to hit this bug is very
    low. The kept memory would not become noticeable before the
    connection closes or times out.
    Users are recommended to upgrade to version 2.4.58, which fixes
    the issue.
    Credits: Will Dormann of Vul Labs
  * ) SECURITY: CVE-2023-43622: Apache HTTP Server: DoS in HTTP/2 with
    initial windows size 0 (cve.mitre.org)
    An attacker, opening a HTTP/2 connection with an initial window
    size of 0, was able to block handling of that connection
    indefinitely in Apache HTTP Server. This could be used to
    exhaust worker resources in the server, similar to the well
    known "slow loris" attack pattern.
    This has been fixed in version 2.4.58, so that such connection
    are terminated properly after the configured connection timeout.
    This issue affects Apache HTTP Server: from 2.4.55 through
    2.4.57.
    Users are recommended to upgrade to version 2.4.58, which fixes
    the issue.
    Credits: Prof. Sven Dietrich (City University of New York)
  * ) SECURITY: CVE-2023-31122: mod_macro buffer over-read
    (cve.mitre.org)
    Out-of-bounds Read vulnerability in mod_macro of Apache HTTP
    Server.This issue affects Apache HTTP Server: through 2.4.57.
    Credits: David Shoon (github/davidshoon)
  * ) mod_ssl: Silence info log message "SSL Library Error: error:0A000126:
    SSL routines::unexpected eof while reading" when using
    OpenSSL 3 by setting SSL_OP_IGNORE_UNEXPECTED_EOF if
    available. [Rainer Jung]
  * ) mod_http2: improved early cleanup of streams.
    [Stefan Eissing]
  * ) mod_proxy_http2: improved error handling on connection errors while
    response is already underway.
    [Stefan Eissing]
  * ) mod_http2: fixed a bug that could lead to a crash in main connection
    output handling. This occured only when the last request on a HTTP/2
    connection had been processed and the session decided to shut down.
    This could lead to an attempt to send a final GOAWAY while the previous
    write was still in progress. See PR 66646.
    [Stefan Eissing]
  * ) mod_proxy_http2: fix `X-Forward-Host` header to carry the correct value.
    Fixes PR66752.
    [Stefan Eissing]
  * ) mod_http2: added support for bootstrapping WebSockets via HTTP/2, as
    described in RFC 8441. A new directive 'H2WebSockets on|off' has been
    added. The feature is by default not enabled.
    As also discussed in the manual, this feature should work for setups
    using "ProxyPass backend-url upgrade=websocket" without further changes.
    Special server modules for WebSockets will have to be adapted,
    most likely, as the handling if IO events is different with HTTP/2.
    HTTP/2 WebSockets are supported on platforms with native pipes. This
    excludes Windows.
    [Stefan Eissing]
  * ) mod_rewrite: Fix a regression with both a trailing ? and [QSA].
    in OCSP stapling. PR 66672. [Frank Meier &lt;frank.meier ergon.ch&gt;, covener]
  * ) mod_http2: fixed a bug in flushing pending data on an already closed
    connection that could lead to a busy loop, preventing the HTTP/2 session
    to close down successfully. Fixed PR 66624.
    [Stefan Eissing]
  * ) mod_http2: v2.0.15 with the following fixes and improvements
  - New directive 'H2EarlyHint name value' to add headers to a response,
    picked up already when a "103 Early Hints" response is sent. 'name' and
    'value' must comply to the HTTP field restrictions.
    This directive can be repeated several times and header fields of the
    same names add. Sending a 'Link' header with 'preload' relation will
    also cause a HTTP/2 PUSH if enabled and supported by the client.
  - Fixed an issue where requests were not logged and accounted in a timely
    fashion when the connection returns to "keepalive" handling, e.g. when
    the request served was the last outstanding one.
    This led to late appearance in access logs with wrong duration times
    reported.
  - Accurately report the bytes sent for a request in the '%O' Log format.
    This addresses #203, a long outstanding issue where mod_h2 has reported
    numbers over-eagerly from internal buffering and not what has actually
    been placed on the connection.
    The numbers are now the same with and without H2CopyFiles enabled.
    [Stefan Eissing]
  * ) mod_proxy_http2: fix retry handling to not leak temporary errors.
    On detecting that that an existing connection was shutdown by the other
    side, a 503 response leaked even though the request was retried on a
    fresh connection.
    [Stefan Eissing]
  * ) mod_rewrite: Add server directory to include path as mod_rewrite requires
    test_char.h. PR 66571 [Valeria Petrov &lt;valeria.petrov@spinetix.com&gt;]
  * ) mod_http2: new directive `H2ProxyRequests on|off` to enable handling
    of HTTP/2 requests in a forward proxy configuration.
    General forward proxying is enabled via `ProxyRequests`. If the
    HTTP/2 protocol is also enabled for such a server/host, this new
    directive is needed in addition.
    [Stefan Eissing]
  * ) core: Updated conf/mime.types:
  - .js moved from 'application/javascript' to 'text/javascript'
  - .mjs was added as 'text/javascript'
  - add .opus ('audio/ogg')
  - add 'application/vnd.geogebra.slides'
  - add WebAssembly MIME types and extension
    [Mathias Bynens &lt;@mathiasbynens&gt; via PR 318,
    Richard de Boer &lt;richard tubul.net&gt;, Dave Hodder &lt;dmh dmh.org.uk&gt;,
    Zbynek Konecny &lt;zbynek1729 gmail.com&gt;]
  * ) mod_proxy_http2: fixed using the wrong "bucket_alloc" from the backend
    connection when sending data on the frontend one. This caused crashes
    or infinite loops in rare situations.
  * ) mod_proxy_http2: fixed a bug in retry/response handling that could lead
    to wrong status codes or HTTP messages send at the end of response bodies
    exceeding the announced content-length.
  * ) mod_proxy_http2: fix retry handling to not leak temporary errors.
    On detecting that that an existing connection was shutdown by the other
    side, a 503 response leaked even though the request was retried on a
    fresh connection.
  * ) mod_http2: fixed a bug that did cleanup of consumed and pending buckets in
    the wrong order when a bucket_beam was destroyed.
    [Stefan Eissing]
  * ) mod_http2: avoid double chunked-encoding on internal redirects.
    PR 66597 [Yann Ylavic, Stefan Eissing]
  * ) mod_http2: Fix reporting of `Total Accesses` in server-status to not count
    HTTP/2 requests twice. Fixes PR 66801.
    [Stefan Eissing]
  * ) mod_ssl: Fix handling of Certificate Revoked messages
    in OCSP stapling. PR 66626. [&lt;gmoniker gmail.com&gt;]
  * ) mod_http2: fixed a bug in handling of stream timeouts.
    [Stefan Eissing]
  * ) mod_tls: updating to rustls-ffi version 0.9.2 or higher.
    Checking in configure for proper version installed. Code
    fixes for changed clienthello member name.
    [Stefan Eissing]
  * ) mod_md:
  - New directive `MDMatchNames all|servernames` to allow more control over how
    MDomains are matched to VirtualHosts.
  - New directive `MDChallengeDns01Version`. Setting this to `2` will provide
    the command also with the challenge value on `teardown` invocation. In version
    1, the default, only the `setup` invocation gets this parameter.
    Refs #312. Thanks to @domrim for the idea.
  - For Managed Domain in "manual" mode, the checks if all used ServerName and
    ServerAlias are part of the MDomain now reports a warning instead of an error
    (AH10040) when not all names are present.
  - MDChallengeDns01 can now be configured for individual domains.
    Using PR from JÃ©rÃ´me Billiras (@bilhackmac) and adding test case and fixing proper working
  - Fixed a bug found by JÃ©rÃ´me Billiras (@bilhackmac) that caused the challenge
    teardown not being invoked as it should.
  * ) mod_ldap: Avoid performance overhead of APR-util rebind cache for
    OpenLDAP 2.2+.  PR 64414.  [Joe Orton]
  * ) mod_http2: new directive 'H2MaxDataFrameLen n' to limit the maximum
    amount of response body bytes put into a single HTTP/2 DATA frame.
    Setting this to 0 places no limit (but the max size allowed by the
    protocol is observed).
    The module, by default, tries to use the maximum size possible, which is
    somewhat around 16KB. This sets the maximum. When less response data is
    available, smaller frames will be sent.
  * ) mod_md: fixed passing of the server environment variables to programs
    started via MDMessageCmd and MDChallengeDns01 on *nix system.
    See &lt;https://github.com/icing/mod_md/issues/319&gt;.
    [Stefan Eissing]
  * ) mod_dav: Add DavBasePath directive to configure the repository root
    path.  PR 35077.  [Joe Orton]
  * ) mod_alias: Add AliasPreservePath directive to map the full
    path after the alias in a location. [Graham Leggett]
  * ) mod_alias: Add RedirectRelative to allow relative redirect targets to be
    issued as-is. [Eric Covener, Graham Leggett]
  * ) core: Add formats %{z} and %{strftime-format} to ErrorLogFormat, and make
    sure that if the format is configured early enough it applies to every log
    line.  PR 62161.  [Yann Ylavic]
  * ) mod_deflate: Add DeflateAlterETag to control how the ETag
    is modified. The 'NoChange' parameter mimics 2.2.x behavior.
    PR 45023, PR 39727. [Eric Covener]
  * ) core: Optimize send_brigade_nonblocking(). [Yann Ylavic, Christophe Jaillet]
  * ) mod_status: Remove duplicate keys "BusyWorkers" and "IdleWorkers".
    Resolve inconsistency between the previous two occurrences by
    counting workers in state SERVER_GRACEFUL no longer as busy,
    but instead in a new counter "GracefulWorkers" (or on HTML
    view as "workers gracefully restarting"). Also add the graceful
    counter as a new column to the existing HTML per process table
    for async MPMs. PR 63300. [Rainer Jung]</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1706529600">- use grep -E for egrep</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1708430400">- Use %autosetup macro. Allows to eliminate the usage of deprecated
  %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1712232000">- Update to 2.4.59:
  * ) mod_deflate: Fixes and better logging for handling various
    error and edge cases. [Eric Covener, Yann Ylavic, Joe Orton,
    Eric Norris &lt;enorris etsy.com&gt;]
  * ) Add CGIScriptTimeout to mod_cgi. [Eric Covener]
  * ) mod_xml2enc: Tolerate libxml2 2.12.0 and later.  PR 68610
    [ttachi &lt;tachihara AT hotmail.com&gt;]
  * ) mod_slotmem_shm: Use ap_os_is_path_absolute() to make it portable.
    [Jean-Frederic Clere]
  * ) mod_ssl: Use OpenSSL-standard functions to assemble CA
    name lists for SSLCACertificatePath/SSLCADNRequestPath.
    Names will now be consistently sorted. PR 61574.
    [Joe Orton]
  * ) mod_xml2enc: Update check to accept any text/ media type
    or any XML media type per RFC 7303, avoiding
    corruption of Microsoft OOXML formats.  PR 64339.
    [Joseph Heenan &lt;joseph.heenan fintechlabs.io&gt;, Joe Orton]
  * ) mod_http2: v2.0.26 with the following fixes:
  - Fixed `Date` header on requests upgraded from HTTP/1.1 (h2c). Fixes
    &lt;https://github.com/icing/mod_h2/issues/272&gt;.
  - Fixed small memory leak in h2 header bucket free. Thanks to
    Michael Kaufmann for finding this and providing the fix.
  * ) htcacheclean: In -a/-A mode, list all files per subdirectory
    rather than only one. PR 65091.
    [Artem Egorenkov &lt;aegorenkov.91 gmail.com&gt;]
  * ) mod_ssl: SSLProxyMachineCertificateFile/Path may reference files
    which include CA certificates; those CA certs are treated as if
    configured with SSLProxyMachineCertificateChainFile.  [Joe Orton]
  * ) htpasswd, htdbm, dbmmanage: Update help&amp;docs to refer to
    "hashing", rather than "encrypting" passwords.
    [Michele Preziuso &lt;mpreziuso kaosdynamics.com&gt;]
  * ) mod_ssl: Fix build with LibreSSL 2.0.7+. PR 64047.
    [Giovanni Bechis, Yann Ylavic]
  * ) htpasswd: Add support for passwords using SHA-2.  [Joe Orton,
    Yann Ylavic]
  * ) core: Allow mod_env to override system environment vars. [Joe Orton]
  * ) Allow mod_dav_fs to tolerate race conditions between PROPFIND and an
    operation which removes a directory/file between apr_dir_read() and
    apr_stat(). Current behaviour is to abort the connection which seems
    inferior to tolerating (and logging) the error. [Joe Orton]
  * ) mod_ldap: HTML-escape data in the ldap-status handler.
    [Eric Covener, Chamal De Silva]
  * ) mod_ssl: Disable the OpenSSL ENGINE API when OPENSSL_NO_ENGINE is set.
    Allow for "SSLCryptoDevice builtin" if the ENGINE API is not available,
    notably with OpenSSL &gt;= 3.  PR 68080.  [Yann Ylavic, Joe Orton]
  * ) mod_ssl: Improve compatibility with OpenSSL 3, fix build warnings about
    deprecated ENGINE_ API, honor OPENSSL_API_COMPAT setting while defaulting
    to compatibitily with version 1.1.1 (including ENGINEs / SSLCryptoDevice).
    [Yann Ylavic]
  * ) mod_ssl: release memory to the OS when needed. [Giovanni Bechis]
  * ) mod_proxy: Ignore (and warn about) enablereuse=on for ProxyPassMatch when
    some dollar substitution (backreference) happens in the hostname or port
    part of the URL.  [Yann Ylavic]
  * ) mod_proxy: Allow to set a TTL for how long DNS resolutions to backend
    systems are cached. [Yann Ylavic]
  * ) mod_proxy: Add optional third argument for ProxyRemote, which
    configures Basic authentication credentials to pass to the remote
    proxy.  PR 37355.  [Joe Orton]</changelog>
  <changelog author="pgajdos@suse.com" date="1718280000">- added patches [bsc#1226217]
  https://github.com/apache/httpd/pull/444/commits/c2fffd29b0f58bdc9caaaff4fec68e17a676f182
  + apache2-issue-444.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1720094400">- Update to 2.4.61
  * ) SECURITY: CVE-2024-39884: Apache HTTP Server: source code
    disclosure with handlers configured via AddType (cve.mitre.org)
    [boo#1227353]
    A regression in the core of Apache HTTP Server 2.4.60 ignores
    some use of the legacy content-type based configuration of
    handlers.   "AddType" and similar configuration, under some
    circumstances where files are requested indirectly, result in
    source code disclosure of local content. For example, PHP
    scripts may be served instead of interpreted.
    Users are recommended to upgrade to version 2.4.61, which fixes
    this issue.
- Update to 2.4.60
  * ) SECURITY: CVE-2024-39573: Apache HTTP Server: mod_rewrite proxy
    handler substitution (cve.mitre.org) [boo#1227271]
    Potential SSRF in mod_rewrite in Apache HTTP Server 2.4.59 and
    earlier allows an attacker to cause unsafe RewriteRules to
    unexpectedly setup URL's to be handled by mod_proxy.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38477: Apache HTTP Server: Crash resulting in
    Denial of Service in mod_proxy via a malicious request
    (cve.mitre.org) [boo#1227270]
    null pointer dereference in mod_proxy in Apache HTTP Server
    2.4.59 and earlier allows an attacker to crash the server via a
    malicious request.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38476: Apache HTTP Server may use
    exploitable/malicious backend application output to run local
    handlers via internal redirect (cve.mitre.org) [boo#1227269]
    Vulnerability in core of Apache HTTP Server 2.4.59 and earlier
    are vulnerably to information disclosure, SSRF or local script
    execution via backend applications whose response headers are
    malicious or exploitable.
    Note: Some legacy uses of the 'AddType' directive to connect a
    request to a handler must be ported to 'AddHandler' after this fix.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38475: Apache HTTP Server weakness in
    mod_rewrite when first segment of substitution matches
    filesystem path. (cve.mitre.org) [boo#1227268]
    Improper escaping of output in mod_rewrite in Apache HTTP Server
    2.4.59 and earlier allows an attacker to map URLs to filesystem
    locations that are permitted to be served by the server but are
    not intentionally/directly reachable by any URL, resulting in
    code execution or source code disclosure.
    Substitutions in server context that use a backreferences or
    variables as the first segment of the substitution are affected.
    Some unsafe RewiteRules will be broken by this change and the
    rewrite flag "UnsafePrefixStat" can be used to opt back in once
    ensuring the substitution is appropriately constrained.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38474: Apache HTTP Server weakness with
    encoded question marks in backreferences (cve.mitre.org)
    [boo#1227278]
    Substitution encoding issue in mod_rewrite in Apache HTTP Server
    2.4.59 and earlier allows attacker to execute scripts in
    directories permitted by the configuration but not directly
    reachable by any URL or source disclosure of scripts meant to
    only to be executed as CGI.
    Note: Some RewriteRules that capture and substitute unsafely will now
    fail unless rewrite flag "UnsafeAllow3F" is specified.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38473: Apache HTTP Server proxy encoding
    problem (cve.mitre.org) [boo#1227276]
    Encoding problem in mod_proxy in Apache HTTP Server 2.4.59 and
    earlier allows request URLs with incorrect encoding to be sent
    to backend services, potentially bypassing authentication via
    crafted requests.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-38472: Apache HTTP Server on WIndows UNC SSRF
    (cve.mitre.org) [boo#1227267]
    SSRF in Apache HTTP Server on Windows allows to potentially leak
    NTML hashes to a malicious server via SSRF and malicious
    requests or content
    Note: Existing configurations that access UNC paths
    will have to configure new directive "UNCList" to allow access
    during request processing.
    Credits: Orange Tsai (@orange_8361) from DEVCORE
  * ) SECURITY: CVE-2024-36387: Apache HTTP Server: DoS by Null
    pointer in websocket over HTTP/2 (cve.mitre.org) [boo#1227272]
    Serving WebSocket protocol upgrades over a HTTP/2 connection
    could result in a Null Pointer dereference, leading to a crash
    of the server process, degrading performance.
    Credits: Marc Stern (&lt;marc.stern AT approach-cyber.com&gt;)
  * ) mod_proxy: Fix DNS requests and connections closed before the
    configured addressTTL.  BZ 69126.  [Yann Ylavic]
  * ) core: On Linux, log the real thread ID in error logs.  [Joe Orton]
  * ) core: Support zone/scope in IPv6 link-local addresses in Listen and
    VirtualHost directives (requires APR 1.7.x or later).  PR 59396
    [Joe Orton]
  * ) mod_ssl: Reject client-initiated renegotiation with a TLS alert
    (rather than connection closure).  [Joe Orton, Yann Ylavic]
  * ) Updated mime.types.  [Mohamed Akram &lt;mohd.akram outlook.com&gt;,
    Adam Silverstein &lt;adamsilverstein earthboundhosting.com&gt;]
  * ) mod_ssl: Fix a regression that causes the default DH parameters for a key
    no longer set and thus effectively disabling DH ciphers when no explicit
    DH parameters are set. PR 68863 [Ruediger Pluem]
  * ) mod_cgid: Optional support for file descriptor passing, fixing
    error log handling (configure --enable-cgid-fdpassing) on Unix
    platforms. PR 54221.  [Joe Orton]
  * ) mod_cgid/mod_cgi: Distinguish script stderr output clearly in
    error logs.  PR 61980.  [Hank Ibell &lt;hwibell gmail.com&gt;]
  * ) mod_tls: update version of rustls-ffi to v0.13.0.
    [Daniel McCarney (@cpu}]
  * ) mod_md:
  - Using OCSP stapling information to trigger certificate renewals. Proposed
    by @frasertweedale.
  - Added directive `MDCheckInterval` to control how often the server checks
    for detected revocations. Added proposals for configurations in the
    README.md chapter "Revocations".
  - OCSP stapling: accept OCSP responses without a `nextUpdate` entry which is
    allowed in RFC 6960. Treat those as having an update interval of 12 hours.
    Added by @frasertweedale.
  - Adapt OpenSSL usage to changes in their API. By Yann Ylavic.
- removed patches (upstreamed)
  - apache2-issue-444.patch</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1722686400">- Update to 2.4.62
  * ) SECURITY: CVE-2024-40898: Apache HTTP Server: SSRF with
    mod_rewrite in server/vhost context on Windows (cve.mitre.org)
    [boo#1228098]
    SSRF in Apache HTTP Server on Windows with mod_rewrite in
    server/vhost context, allows to potentially leak NTML hashes to
    a malicious server via SSRF and malicious requests.
    Users are recommended to upgrade to version 2.4.62 which fixes
    this issue.
    Credits: Smi1e (DBAPPSecurity Ltd.)
  * ) SECURITY: CVE-2024-40725: Apache HTTP Server: source code
    disclosure with handlers configured via AddType (cve.mitre.org)
    [boo#1228097]
    A partial fix for  CVE-2024-39884 in the core of Apache HTTP
    Server 2.4.61 ignores some use of the legacy content-type based
    configuration of handlers. "AddType" and similar configuration,
    under some circumstances where files are requested indirectly,
    result in source code disclosure of local content. For example,
    PHP scripts may be served instead of interpreted.
    Users are recommended to upgrade to version 2.4.62, which fixes
    this issue.
  * ) mod_proxy: Fix canonicalisation and FCGI env (PATH_INFO, SCRIPT_NAME) for
    "balancer:" URLs set via SetHandler, also allowing for "unix:" sockets
    with BalancerMember(s).  PR 69168.  [Yann Ylavic]
  * ) mod_proxy: Avoid AH01059 parsing error for SetHandler "unix:" URLs.
    PR 69160 [Yann Ylavic]
  * ) mod_ssl: Fix crashes in PKCS#11 ENGINE support with OpenSSL 3.2.
    [Joe Orton]
  * ) mod_ssl: Add support for loading certs/keys from pkcs11: URIs
    via OpenSSL 3.x providers.  [Ingo Franzki &lt;ifranzki linux.ibm.com&gt;]
  * ) mod_ssl: Restore SSL dumping on trace7 loglevel with OpenSSL &gt;= 3.0.
    [Ruediger Pluem, Yann Ylavic]
  * ) mpm_worker: Fix possible warning (AH00045) about children processes not
    terminating timely.  [Yann Ylavic]</changelog>
  <changelog author="Thorsten Kukuk &lt;kukuk@suse.com&gt;" date="1727697600">- Add /srv/www directories to filelist [bsc#1231027]
  (apache2 will not start since default config uses this directory)</changelog>
  <changelog author="Jan Engelhardt &lt;jengelh@inai.de&gt;" date="1730721600">- Explicitly mark start_apache2 as bash-dependent.</changelog>
  <changelog author="Martin Schreiner &lt;martin.schreiner@suse.com&gt;" date="1730808000">- Update httpd-framework to svn1921782.
- Fixes Apache's impact on bsc#1218342.</changelog>
</package>
<package pkgid="3966d997da3d3ed82b19793552532843ddea1adf1d0a6d84d35ad1f411a1b60ec13ad3a7ab7a3694cd500e7186a3b6fe5d08e0407579cf9f8247022834a4fcdb" name="apache2-utils" arch="src">
  <version epoch="0" ver="2.4.62" rel="3.1"/>
  <changelog author="pgajdos@suse.com" date="1654689600">- update httpd-framework to svn revision 1898917</changelog>
  <changelog author="Stefan Schubert &lt;schubi@intern&gt;" date="1656417600">- Moved logrotate files from user specific directory /etc/logrotate.d
  to vendor specific directory /usr/etc/logrotate.d.</changelog>
  <changelog author="Stefan Schubert &lt;schubi@suse.com&gt;" date="1662033600">- Migration to /usr/etc: Saving user changed configuration files
  in /etc and restoring them while an RPM update.</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1663675200">- Remove references to README.QUICKSTART and point them to
  https://en.opensuse.org/SDB:Apache_installation (bsc#1203573)</changelog>
  <changelog author="Stephan Kulow &lt;coolo@suse.com&gt;" date="1663934400">- The 2.4.54 release brought support for PCRE2, but for that we also
  need to change buildrequires to pcre2-devel</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1670846400">- switch to pkgconfig(zlib) so that alternative providers can be
  used</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1674043200">- This update fixes the following security issues:
  * CVE-2022-37436 [bsc#1207251], mod_proxy backend HTTP response splitting
  * CVE-2022-36760 [bsc#1207250], mod_proxy_ajp Possible request smuggling
  * CVE-2006-20001 [bsc#1207247], mod_dav out of bounds read, or write of zero byte
- Update to 2.4.55:
  * ) SECURITY: CVE-2022-37436: Apache HTTP Server: mod_proxy prior to
    2.4.55 allows a backend to trigger HTTP response splitting
    (cve.mitre.org)
    Prior to Apache HTTP Server 2.4.55, a malicious backend can
    cause the response headers to be truncated early, resulting in
    some headers being incorporated into the response body. If the
    later headers have any security purpose, they will not be
    interpreted by the client.
    Credits: Dimas Fariski Setyawan Putra (@nyxsorcerer)
  * ) SECURITY: CVE-2022-36760: Apache HTTP Server: mod_proxy_ajp
    Possible request smuggling (cve.mitre.org)
    Inconsistent Interpretation of HTTP Requests ('HTTP Request
    Smuggling') vulnerability in mod_proxy_ajp of Apache HTTP Server
    allows an attacker to smuggle requests to the AJP server it
    forwards requests to.  This issue affects Apache HTTP Server
    Apache HTTP Server 2.4 version 2.4.54 and prior versions.
    Credits: ZeddYu_Lu from Qi'anxin Research Institute of Legendsec
    at Qi'anxin Group
  * ) SECURITY: CVE-2006-20001: mod_dav out of  bounds read, or write
    of zero byte (cve.mitre.org)
    A carefully crafted If: request header can cause a memory read,
    or write of a single zero byte, in a pool (heap) memory location
    beyond the header value sent. This could cause the process to
    crash.
    This issue affects Apache HTTP Server 2.4.54 and earlier.
  * ) mod_dav: Open the lock database read-only when possible.
    PR 36636 [Wilson Felipe &lt;wfelipe gmail.com&gt;, manu]
  * ) mod_proxy_http2: apply the standard httpd content type handling
    to responses from the backend, as other proxy modules do. Fixes PR 66391.
    Thanks to Jérôme Billiras for providing the patch.
    [Stefan Eissing]
  * ) mod_dav: mod_dav overrides dav_fs response on PUT failure. PR 35981
    [Basant Kumar Kukreja &lt;basant.kukreja sun.com&gt;, Alejandro Alvarez
    &lt;alejandro.alvarez.ayllon cern.ch&gt;]
  * ) mod_proxy_hcheck: Honor worker timeout settings.  [Yann Ylavic]
  * ) mod_http2: version 2.0.10 of the module, synchronizing changes
    with the gitgub version. This is a partial rewrite of how connections
    and streams are handled.
  - an APR pollset and pipes (where supported) are used to monitor
    the main connection and react to IO for request/response handling.
    This replaces the stuttered timed waits of earlier versions.
  - H2SerializeHeaders directive still exists, but has no longer an effect.
  - Clients that seemingly misbehave still get less resources allocated,
    but ongoing requests are no longer disrupted.
  - Fixed an issue since 1.15.24 that "Server" headers in proxied requests
    were overwritten instead of preserved. [PR by @daum3ns]
  - A regression in v1.15.24 was fixed that could lead to httpd child
    processes not being terminated on a graceful reload or when reaching
    MaxConnectionsPerChild. When unprocessed h2 requests were queued at
    the time, these could stall. See #212.
  - Improved information displayed in 'server-status' for H2 connections when
    Extended Status is enabled. Now one can see the last request that IO
    operations happened on and transferred IO stats are updated as well.
  - When reaching server limits, such as MaxRequestsPerChild, the HTTP/2 connection
    send a GOAWAY frame much too early on new connections, leading to invalid
    protocol state and a client failing the request. See PR65731 at
    &lt;https://bz.apache.org/bugzilla/show_bug.cgi?id=65731&gt;.
    The module now initializes the HTTP/2 protocol correctly and allows the
    client to submit one request before the shutdown via a GOAWAY frame
    is being announced.
  - :scheme pseudo-header values, not matching the
    connection scheme, are forwarded via absolute uris to the
    http protocol processing to preserve semantics of the request.
    Checks on combinations of pseudo-headers values/absence
    have been added as described in RFC 7540. Fixes #230.
  - A bug that prevented trailers (e.g. HEADER frame at the end) to be
    generated in certain cases was fixed. See #233 where it prevented
    gRPC responses to be properly generated.
  - Request and response header values are automatically stripped of leading
    and trialing space/tab characters. This is equivalent behaviour to what
    Apache httpd's http/1.1 parser does.
    The checks for this in nghttp2 v1.50.0+ are disabled.
  - Extensive testing in production done by Alessandro Bianchi (@alexskynet)
    on the v2.0.x versions for stability. Many thanks!
  * ) mod_proxy_http2: fixed #235 by no longer forwarding 'Host:' header when
    request ':authority' is known. Improved test case that did not catch that
    the previous 'fix' was incorrect.
  * ) mod_proxy_hcheck: hcmethod now allows for HTTP/1.1 requests
    using GET11, HEAD11 and/or OPTIONS11. [Jim Jagielski]
  * ) mod_proxy: The AH03408 warning for a forcibly closed backend
    connection is now logged at INFO level.  [Yann Ylavic]
  * ) mod_ssl: When dumping the configuration, the existence of
    certificate/key files is no longer tested.  [Joe Orton]
  * ) mod_authn_core: Add expression support to AuthName and AuthType.
    [Graham Leggett]
  * ) mod_ssl: when a proxy connection had handled a request using SSL, an
    error was logged when "SSLProxyEngine" was only configured in the
    location/proxy section and not the overall server. The connection
    continued to work, the error log was in error. Fixed PR66190.
    [Stefan Eissing]
  * ) mod_proxy_hcheck: Re-enable workers in standard ERROR state. PR 66302.
    [Alessandro Cavaliere &lt;alessandro.cavalier7 unibo.it&gt;]
  * ) mod_proxy_hcheck: Detect AJP/CPING support correctly. PR 66300.
    [Alessandro Cavaliere &lt;alessandro.cavalier7 unibo.it&gt;]
  * ) mod_http2: Export mod_http2.h as public header. [Stefan Eissing]
  * ) mod_md: a new directive `MDStoreLocks` can be used on cluster
    setups with a shared file system for `MDStoreDir` to order
    activation of renewed certificates when several cluster nodes are
    restarted at the same time. Store locks are not enabled by default.
    Restored curl_easy cleanup behaviour from v2.4.14 and refactored
    the use of curl_multi for OCSP requests to work with that.
    Fixes &lt;https://github.com/icing/mod_md/issues/293&gt;.
  * ) core: Avoid an overflow on large inputs in ap_is_matchexp.  PR 66033
    [Ruediger Pluem]
  * ) mod_heartmonitor: Allow "HeartbeatMaxServers 0" to use file based
    storage instead of slotmem. Needed after setting
    HeartbeatMaxServers default to the documented value 10 in 2.4.54.
    PR 66131.  [Jérôme Billiras]
  * ) mod_dav: DAVlockDiscovery option to disable WebDAV lock discovery
    This is a game changer for performances if client use PROPFIND a lot,
    PR 66313. [Emmanuel Dreyfus]</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1678276800">- This update fixes the following security issues:
  * CVE-2023-27522 [bsc#1209049]: mod_proxy_uwsgi HTTP response splitting
  * CVE-2023-25690 [bsc#1209047]: HTTP request splitting with mod_rewrite and mod_proxy
- Update to 2.4.56:
  * ) rotatelogs: Add -T flag to allow subsequent rotated logfiles to be
    truncated without the initial logfile being truncated.  [Eric Covener]
  * ) mod_ldap: LDAPConnectionPoolTTL should accept negative values in order to
    allow connections of any age to be reused. Up to now, a negative value
    was handled as an error when parsing the configuration file.  PR 66421.
    [nailyk &lt;bzapache nailyk.fr&gt;, Christophe Jaillet]
  * ) mod_proxy_ajp: Report an error if the AJP backend sends an invalid number
    of headers. [Ruediger Pluem]
  * ) mod_md:
  - Enabling ED25519 support and certificate transparency information when
    building with libressl v3.5.0 and newer. Thanks to Giovanni Bechis.
  - MDChallengeDns01 can now be configured for individual domains.
    Thanks to Jérôme Billiras (@bilhackmac) for the initial PR.
  - Fixed a bug found by Jérôme Billiras (@bilhackmac) that caused the challenge
    teardown not being invoked as it should.
    [Stefan Eissing]
  * ) mod_http2: client resets of HTTP/2 streams led to unwanted 500 errors
    reported in access logs and error documents. The processing of the
    reset was correct, only unneccesary reporting was caused.
    [Stefan Eissing]
  * ) mod_proxy_uwsgi: Stricter backend HTTP response parsing/validation.
    [Yann Ylavic]</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1680868800">- Update to 2.4.57:
  * ) mod_proxy: Check before forwarding that a nocanon path has not been
    rewritten with spaces during processing.  [Yann Ylavic]
  * ) mod_proxy: In case that AllowEncodedSlashes is set to NoDecode do not
    double encode encoded slashes in the URL sent by the reverse proxy to the
    backend. [Ruediger Pluem]
  * ) mod_http2: fixed a crash during connection termination. See PR 66539.
    [Stefan Eissing]
  * ) mod_rewrite: Fix a 2.4.56 regression for substitutions ending
    in a question mark. PR66547. [Eric Covener]
  * ) mod_rewrite: Add "BCTLS" and "BNE" RewriteRule flags. Re-allow encoded
    characters on redirections without the "NE" flag.
    [Yann Ylavic, Eric Covener]
  * ) mod_proxy: Fix double encoding of the uri-path of the request forwarded
    to the origin server, when using mapping=encoded|servlet.  [Yann Ylavic]
  * ) mod_mime: Do not match the extention against possible query string
    parameters in case ProxyPass was used with the nocanon option.
    [Ruediger Pluem]</changelog>
  <changelog author="Dirk Stoecker &lt;opensuse@dstoecker.de&gt;" date="1691236800">- Enable building of mod_md</changelog>
  <changelog author="David Anes &lt;david.anes@suse.com&gt;" date="1697716800">- Update to 2.4.58:
  * ) SECURITY: CVE-2023-45802: Apache HTTP Server: HTTP/2 stream
    memory not reclaimed right away on RST (cve.mitre.org)
    When a HTTP/2 stream was reset (RST frame) by a client, there
    was a time window were the request's memory resources were not
    reclaimed immediately. Instead, de-allocation was deferred to
    connection close. A client could send new requests and resets,
    keeping the connection busy and open and causing the memory
    footprint to keep on growing. On connection close, all resources
    were reclaimed, but the process might run out of memory before
    that.
    This was found by the reporter during testing of CVE-2023-44487
    (HTTP/2 Rapid Reset Exploit) with their own test client. During
    "normal" HTTP/2 use, the probability to hit this bug is very
    low. The kept memory would not become noticeable before the
    connection closes or times out.
    Users are recommended to upgrade to version 2.4.58, which fixes
    the issue.
    Credits: Will Dormann of Vul Labs
  * ) SECURITY: CVE-2023-43622: Apache HTTP Server: DoS in HTTP/2 with
    initial windows size 0 (cve.mitre.org)
    An attacker, opening a HTTP/2 connection with an initial window
    size of 0, was able to block handling of that connection
    indefinitely in Apache HTTP Server. This could be used to
    exhaust worker resources in the server, similar to the well
    known "slow loris" attack pattern.
    This has been fixed in version 2.4.58, so that such connection
    are terminated properly after the configured connection timeout.
    This issue affects Apache HTTP Server: from 2.4.55 through
    2.4.57.
    Users are recommended to upgrade to version 2.4.58, which fixes
    the issue.
    Credits: Prof. Sven Dietrich (City University of New York)
  * ) SECURITY: CVE-2023-31122: mod_macro buffer over-read
    (cve.mitre.org)
    Out-of-bounds Read vulnerability in mod_macro of Apache HTTP
    Server.This issue affects Apache HTTP Server: through 2.4.57.
    Credits: David Shoon (github/davidshoon)
  * ) mod_ssl: Silence info log message "SSL Library Error: error:0A000126:
    SSL routines::unexpected eof while reading" when using
    OpenSSL 3 by setting SSL_OP_IGNORE_UNEXPECTED_EOF if
    available. [Rainer Jung]
  * ) mod_http2: improved early cleanup of streams.
    [Stefan Eissing]
  * ) mod_proxy_http2: improved error handling on connection errors while
    response is already underway.
    [Stefan Eissing]
  * ) mod_http2: fixed a bug that could lead to a crash in main connection
    output handling. This occured only when the last request on a HTTP/2
    connection had been processed and the session decided to shut down.
    This could lead to an attempt to send a final GOAWAY while the previous
    write was still in progress. See PR 66646.
    [Stefan Eissing]
  * ) mod_proxy_http2: fix `X-Forward-Host` header to carry the correct value.
    Fixes PR66752.
    [Stefan Eissing]
  * ) mod_http2: added support for bootstrapping WebSockets via HTTP/2, as
    described in RFC 8441. A new directive 'H2WebSockets on|off' has been
    added. The feature is by default not enabled.
    As also discussed in the manual, this feature should work for setups
    using "ProxyPass backend-url upgrade=websocket" without further changes.
    Special server modules for WebSockets will have to be adapted,
    most likely, as the handling if IO events is different with HTTP/2.
    HTTP/2 WebSockets are supported on platforms with native pipes. This
    excludes Windows.
    [Stefan Eissing]
  * ) mod_rewrite: Fix a regression with both a trailing ? and [QSA].
    in OCSP stapling. PR 66672. [Frank Meier &lt;frank.meier ergon.ch&gt;, covener]
  * ) mod_http2: fixed a bug in flushing pending data on an already closed
    connection that could lead to a busy loop, preventing the HTTP/2 session
    to close down successfully. Fixed PR 66624.
    [Stefan Eissing]
  * ) mod_http2: v2.0.15 with the following fixes and improvements
  - New directive 'H2EarlyHint name value' to add headers to a response,
    picked up already when a "103 Early Hints" response is sent. 'name' and
    'value' must comply to the HTTP field restrictions.
    This directive can be repeated several times and header fields of the
    same names add. Sending a 'Link' header with 'preload' relation will
    also cause a HTTP/2 PUSH if enabled and supported by the client.
  - Fixed an issue where requests were not logged and accounted in a timely
    fashion when the connection returns to "keepalive" handling, e.g. when
    the request served was the last outstanding one.
    This led to late appearance in access logs with wrong duration times
    reported.
  - Accurately report the bytes sent for a request in the '%O' Log format.
    This addresses #203, a long outstanding issue where mod_h2 has reported
    numbers over-eagerly from internal buffering and not what has actually
    been placed on the connection.
    The numbers are now the same with and without H2CopyFiles enabled.
    [Stefan Eissing]
  * ) mod_proxy_http2: fix retry handling to not leak temporary errors.
    On detecting that that an existing connection was shutdown by the other
    side, a 503 response leaked even though the request was retried on a
    fresh connection.
    [Stefan Eissing]
  * ) mod_rewrite: Add server directory to include path as mod_rewrite requires
    test_char.h. PR 66571 [Valeria Petrov &lt;valeria.petrov@spinetix.com&gt;]
  * ) mod_http2: new directive `H2ProxyRequests on|off` to enable handling
    of HTTP/2 requests in a forward proxy configuration.
    General forward proxying is enabled via `ProxyRequests`. If the
    HTTP/2 protocol is also enabled for such a server/host, this new
    directive is needed in addition.
    [Stefan Eissing]
  * ) core: Updated conf/mime.types:
  - .js moved from 'application/javascript' to 'text/javascript'
  - .mjs was added as 'text/javascript'
  - add .opus ('audio/ogg')
  - add 'application/vnd.geogebra.slides'
  - add WebAssembly MIME types and extension
    [Mathias Bynens &lt;@mathiasbynens&gt; via PR 318,
    Richard de Boer &lt;richard tubul.net&gt;, Dave Hodder &lt;dmh dmh.org.uk&gt;,
    Zbynek Konecny &lt;zbynek1729 gmail.com&gt;]
  * ) mod_proxy_http2: fixed using the wrong "bucket_alloc" from the backend
    connection when sending data on the frontend one. This caused crashes
    or infinite loops in rare situations.
  * ) mod_proxy_http2: fixed a bug in retry/response handling that could lead
    to wrong status codes or HTTP messages send at the end of response bodies
    exceeding the announced content-length.
  * ) mod_proxy_http2: fix retry handling to not leak temporary errors.
    On detecting that that an existing connection was shutdown by the other
    side, a 503 response leaked even though the request was retried on a
    fresh connection.
  * ) mod_http2: fixed a bug that did cleanup of consumed and pending buckets in
    the wrong order when a bucket_beam was destroyed.
    [Stefan Eissing]
  * ) mod_http2: avoid double chunked-encoding on internal redirects.
    PR 66597 [Yann Ylavic, Stefan Eissing]
  * ) mod_http2: Fix reporting of `Total Accesses` in server-status to not count
    HTTP/2 requests twice. Fixes PR 66801.
    [Stefan Eissing]
  * ) mod_ssl: Fix handling of Certificate Revoked messages
    in OCSP stapling. PR 66626. [&lt;gmoniker gmail.com&gt;]
  * ) mod_http2: fixed a bug in handling of stream timeouts.
    [Stefan Eissing]
  * ) mod_tls: updating to rustls-ffi version 0.9.2 or higher.
    Checking in configure for proper version installed. Code
    fixes for changed clienthello member name.
    [Stefan Eissing]
  * ) mod_md:
  - New directive `MDMatchNames all|servernames` to allow more control over how
    MDomains are matched to VirtualHosts.
  - New directive `MDChallengeDns01Version`. Setting this to `2` will provide
    the command also with the challenge value on `teardown` invocation. In version
    1, the default, only the `setup` invocation gets this parameter.
    Refs #312. Thanks to @domrim for the idea.
  - For Managed Domain in "manual" mode, the checks if all used ServerName and
    ServerAlias are part of the MDomain now reports a warning instead of an error
    (AH10040) when not all names are present.
  - MDChallengeDns01 can now be configured for individual domains.
    Using PR from JÃ©rÃ´me Billiras (@bilhackmac) and adding test case and fixing proper working
  - Fixed a bug found by JÃ©rÃ´me Billiras (@bilhackmac) that caused the challenge
    teardown not being invoked as it should.
  * ) mod_ldap: Avoid performance overhead of APR-util rebind cache for
    OpenLDAP 2.2+.  PR 64414.  [Joe Orton]
  * ) mod_http2: new directive 'H2MaxDataFrameLen n' to limit the maximum
    amount of response body bytes put into a single HTTP/2 DATA frame.
    Setting this to 0 places no limit (but the max size allowed by the
    protocol is observed).
    The module, by default, tries to use the maximum size possible, which is
    somewhat around 16KB. This sets the maximum. When less response data is
    available, smaller frames will be sent.
  * ) mod_md: fixed passing of the server environment variables to programs
    started via MDMessageCmd and MDChallengeDns01 on *nix system.
    See &lt;https://github.com/icing/mod_md/issues/319&gt;.
    [Stefan Eissing]
  * ) mod_dav: Add DavBasePath directive to configure the repository root
    path.  PR 35077.  [Joe Orton]
  * ) mod_alias: Add AliasPreservePath directive to map the full
    path after the alias in a location. [Graham Leggett]
  * ) mod_alias: Add RedirectRelative to allow relative redirect targets to be
    issued as-is. [Eric Covener, Graham Leggett]
  * ) core: Add formats %{z} and %{strftime-format} to ErrorLogFormat, and make
    sure that if the format is configured early enough it applies to every log
    line.  PR 62161.  [Yann Ylavic]
  * ) mod_deflate: Add DeflateAlterETag to control how the ETag
    is modified. The 'NoChange' parameter mimics 2.2.x behavior.
    PR 45023, PR 39727. [Eric Covener]
  * ) core: Optimize send_brigade_nonblocking(). [Yann Ylavic, Christophe Jaillet]
  * ) mod_status: Remove duplicate keys "BusyWorkers" and "IdleWorkers".
    Resolve inconsistency between the previous two occurrences by
    counting workers in state SERVER_GRACEFUL no longer as busy,
    but instead in a new counter "GracefulWorkers" (or on HTML
    view as "workers gracefully restarting"). Also add the graceful
    counter as a new column to the existing HTML per process table
    for async MPMs. PR 63300. [Rainer Jung]</changelog>
  <changelog author="Dirk M&#xFC;ller &lt;dmueller@suse.com&gt;" date="1706529600">- use grep -E for egrep</changelog>
  <changelog author="Dominique Leuenberger &lt;dimstar@opensuse.org&gt;" date="1708430400">- Use %autosetup macro. Allows to eliminate the usage of deprecated
  %patchN.</changelog>
  <changelog author="Arjen de Korte &lt;suse+build@de-korte.org&gt;" date="1712232000">- Update to 2.4.59:
  * ) mod_deflate: Fixes and better logging for handling various
    error and edge cases. [Eric Covener, Yann Ylavic, Joe Orton,
    Eric Norris &lt;enorris etsy.com&gt;]
  * ) Add CGIScriptTimeout to mod_cgi. [Eric Covener]
  * ) mod_xml2enc: Tolerate libxml2 2.12.0 and later.  PR 68610
    [ttachi &lt;tachihara AT hotmail.com&gt;]
  * ) mod_slotmem_shm: Use ap_os_is_path_absolute() to make it portable.
    [Jean-Frederic Clere]
  * ) mod_ssl: Use OpenSSL-standard functions to assemble CA
    name lists for SSLCACertificatePath/SSLCADNRequestPath.
    Names will now be consistently sorted. PR 61574.
    [Joe Orton]
  * ) mod_xml2enc: Update check to accept any text/ media type
    or any XML media type per RFC 7303, avoiding
    corruption of Microsoft OOXML formats.  PR 64339.
    [Joseph Heenan &lt;joseph.heenan fintechlabs.io&gt;, Joe Orton]
  * ) mod_http2: v2.0.26 with the following fixes:
  - Fixed `Date` header on requests upgraded from HTTP/1.1 (h2c). Fixes
    &lt;https://github.com/icing/mod_h2/issues/272&gt;.
  - Fixed small memory leak in h2 header bucket free. Thanks to
    Michael Kaufmann for finding this and providing the fix.
  * ) htcacheclean: In -a/-A mode, list all files per subdirectory
    rather than only one. PR 65091.
    [Artem Egorenkov &lt;aegorenkov.91 gmail.com&gt;]
  * ) mod_ssl: SSLProxyMachineCertificateFile/Path may reference files
    which include CA certificates; those CA certs are treated as if
    configured with SSLProxyMachineCertificateChainFile.  [Joe Orton]
  * ) htpasswd, htdbm, dbmmanage: Update help&amp;docs to refer to
    "hashing", rather than "encrypting" passwords.
    [Michele Preziuso &lt;mpreziuso kaosdynamics.com&gt;]
  * ) mod_ssl: Fix build with LibreSSL 2.0.7+. PR 64047.
    [Giovanni Bechis, Yann Ylavic]
  * ) htpasswd: Add support for passwords using SHA-2.  [Joe Orton,
    Yann Ylavic]
  * ) core: Allow mod_env to override system environment vars. [Joe Orton]
  * ) Allow mod_dav_fs to tolerate race conditions between PROPFIND and an
    operation which removes a directory/file between apr_dir_read() and
    apr_stat(). Current behaviour is to abort the connection which seems
    inferior to tolerating (and logging) the error. [Joe Orton]
  * ) mod_ldap: HTML-escape data in the ldap-status handler.
    [Eric Covener, Chamal De Silva]
  * ) mod_ssl: Disable the OpenSSL ENGINE API when OPENSSL_NO_ENGINE is set.
    Allow for "SSLCryptoDevice builtin" if the ENGINE API is not available,
    notably with OpenSSL &gt;= 3.  PR 68080.  [Yann Ylavic, Joe Orton]
  * ) mod_ssl: Improve compatibility with OpenSSL 3, fix build warnings about
    deprecated ENGINE_ API, honor OPENSSL_API_COMPAT setting while defaulting
    to compatibitily with version 1.1.1 (including ENGINEs / SSLCryptoDe